From d58f2195f50621e2701eb64be0fd38e751cb0263 Mon Sep 17 00:00:00 2001 From: Esteban Date: Sat, 4 Jul 2026 20:22:16 +0200 Subject: [PATCH] BloomFeed Addons v0.22 --- README.md | 32 +++- app/Http/Controllers/NotifierController.php | 103 +++++++++++++ app/Models/Notifier.php | 55 +++++++ app/Models/User.php | 5 + app/Policies/NotifierPolicy.php | 19 +++ app/Services/FeedFetcherService.php | 6 + app/Services/NotifierDispatchService.php | 116 ++++++++++++++ ...26_07_04_092809_create_notifiers_table.php | 37 +++++ ...7_04_092810_create_feed_notifier_table.php | 30 ++++ docker/entrypoint.sh | 10 +- docs/screenshots/notifiers-light.png | Bin 0 -> 200482 bytes lang/de/app.php | 35 +++++ lang/en/app.php | 35 +++++ lang/es/app.php | 35 +++++ lang/fr/app.php | 35 +++++ public/css/app.css | 34 +++++ public/js/app.js | 12 ++ reset.sh | 83 ++++++++++ resources/views/notifiers.blade.php | 142 ++++++++++++++++++ resources/views/partials/navbar.blade.php | 1 + resources/views/self-hosting.blade.php | 6 + routes/web.php | 8 + 22 files changed, 832 insertions(+), 7 deletions(-) create mode 100644 app/Http/Controllers/NotifierController.php create mode 100644 app/Models/Notifier.php create mode 100644 app/Policies/NotifierPolicy.php create mode 100644 app/Services/NotifierDispatchService.php create mode 100644 database/migrations/2026_07_04_092809_create_notifiers_table.php create mode 100644 database/migrations/2026_07_04_092810_create_feed_notifier_table.php create mode 100644 docs/screenshots/notifiers-light.png create mode 100755 reset.sh create mode 100644 resources/views/notifiers.blade.php diff --git a/README.md b/README.md index 07349ca..0215afd 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,8 @@ comptes) ou ouvrir les inscriptions publiques depuis le menu Paramètres. - Catalogue de flux façon "market" : une sélection de flux embarquée avec l'application ([resources/data/bloomflux.json](resources/data/bloomflux.json)), à ajouter en un clic. - Multi-comptes : le propriétaire crée des comptes ou ouvre/ferme les inscriptions d'un clic. +- Notifications personnelles : chaque utilisateur configure ses propres alertes **Discord** ou + **webhook générique**, pour tous ses flux ou seulement certains. - Interface disponible en **français, anglais, espagnol et allemand** (sélecteur en haut de page, préférence mémorisée par utilisateur). - Récupération périodique des flux via une tâche planifiée. @@ -37,9 +39,13 @@ comptes) ou ouvrir les inscriptions publiques depuis le menu Paramètres. |---|---| | ![Tableau de bord](docs/screenshots/dashboard-light.png) | ![Lecteur intégré](docs/screenshots/reader-light.png) | -| Catalogue de flux | Mode sombre | +| Catalogue de flux | Notifieurs | |---|---| -| ![Catalogue de flux](docs/screenshots/catalog-light.png) | ![Mode sombre](docs/screenshots/dashboard-dark.png) | +| ![Catalogue de flux](docs/screenshots/catalog-light.png) | ![Notifieurs](docs/screenshots/notifiers-light.png) | + +| Mode sombre | +|---| +| ![Mode sombre](docs/screenshots/dashboard-dark.png) | ## Stack technique @@ -82,6 +88,16 @@ publiques se referment automatiquement après. Relancez simplement `bash scriptsite.sh` : il récupère les derniers changements et reconstruit la stack sans toucher à vos données. +### Réinitialisation + +Pour repartir d'une instance vierge (efface comptes, flux, articles et notifieurs) sans toucher +au code, au `.env` ni aux images Docker : + +```bash +bash reset.sh # confirmation interactive requise +bash reset.sh --yes # sans confirmation +``` + ### Désinstallation ```bash @@ -126,6 +142,18 @@ l'enrichir, éditez le fichier et redéployez — aucun service externe n'est n { "title": "Nom du flux", "url": "https://exemple.com/rss.xml", "category": "Tech", "lang": "fr", "description": "Courte description." } ``` +### Notifications (Discord / webhook) + +Chaque utilisateur configure ses propres notifieurs depuis le menu **Notifieurs** : + +- **Discord** : collez l'URL d'un webhook de salon Discord (Paramètres du salon → Intégrations → + Webhooks) ; BloomFeed envoie un embed (titre, lien, extrait) à chaque nouvel article. +- **Webhook générique** : n'importe quelle URL recevant un `POST` JSON + `{ "event": "article.created", "feed": "...", "article": { "title", "url", "excerpt", "published_at" } }`. + +Chaque notifieur a une **portée** : tous les flux de l'utilisateur, ou une sélection précise de +flux. Un bouton "Tester" envoie une notification factice pour valider l'URL avant de compter dessus. + ## Développement local Prérequis : PHP 8.3+ et [Composer](https://getcomposer.org). diff --git a/app/Http/Controllers/NotifierController.php b/app/Http/Controllers/NotifierController.php new file mode 100644 index 0000000..b91274f --- /dev/null +++ b/app/Http/Controllers/NotifierController.php @@ -0,0 +1,103 @@ +user()->notifiers()->with('feeds')->orderBy('created_at')->get(); + $feeds = $request->user()->feeds()->orderBy('title')->get(); + + return view('notifiers', [ + 'notifiers' => $notifiers, + 'feeds' => $feeds, + ]); + } + + public function store(Request $request): RedirectResponse + { + $validated = $this->validatePayload($request); + + $notifier = $request->user()->notifiers()->create([ + 'type' => $validated['type'], + 'name' => $validated['name'], + 'url' => $validated['url'], + 'scope' => $validated['scope'], + ]); + + if ($validated['scope'] === Notifier::SCOPE_FEEDS) { + $notifier->feeds()->sync($validated['feed_ids'] ?? []); + } + + return redirect()->route('notifiers')->with('status', __('app.notifier_created')); + } + + public function update(Request $request, Notifier $notifier): RedirectResponse + { + $this->authorize('update', $notifier); + + $validated = $this->validatePayload($request); + + $notifier->update([ + 'type' => $validated['type'], + 'name' => $validated['name'], + 'url' => $validated['url'], + 'scope' => $validated['scope'], + ]); + + $notifier->feeds()->sync($validated['scope'] === Notifier::SCOPE_FEEDS ? ($validated['feed_ids'] ?? []) : []); + + return redirect()->route('notifiers')->with('status', __('app.notifier_updated')); + } + + public function toggle(Request $request, Notifier $notifier): RedirectResponse + { + $this->authorize('update', $notifier); + + $notifier->update(['enabled' => ! $notifier->enabled]); + + return redirect()->route('notifiers'); + } + + public function test(Notifier $notifier, NotifierDispatchService $dispatcher): RedirectResponse + { + $this->authorize('update', $notifier); + + $ok = $dispatcher->sendTest($notifier); + + return redirect()->route('notifiers') + ->with('status', $ok ? __('app.notifier_test_ok') : __('app.notifier_test_failed')); + } + + public function destroy(Notifier $notifier): RedirectResponse + { + $this->authorize('delete', $notifier); + + $notifier->delete(); + + return redirect()->route('notifiers')->with('status', __('app.notifier_deleted')); + } + + private function validatePayload(Request $request): array + { + return $request->validate([ + 'type' => ['required', 'in:'.Notifier::TYPE_DISCORD.','.Notifier::TYPE_WEBHOOK], + 'name' => ['required', 'string', 'max:255'], + 'url' => ['required', 'url', 'max:2048'], + 'scope' => ['required', 'in:'.Notifier::SCOPE_ALL.','.Notifier::SCOPE_FEEDS], + 'feed_ids' => ['array'], + 'feed_ids.*' => [ + 'integer', + Rule::exists('feeds', 'id')->where('user_id', $request->user()->id), + ], + ]); + } +} diff --git a/app/Models/Notifier.php b/app/Models/Notifier.php new file mode 100644 index 0000000..eed3f9c --- /dev/null +++ b/app/Models/Notifier.php @@ -0,0 +1,55 @@ + 'boolean', + 'last_triggered_at' => 'datetime', + ]; + } + + public function user(): BelongsTo + { + return $this->belongsTo(User::class); + } + + public function feeds(): BelongsToMany + { + return $this->belongsToMany(Feed::class); + } + + public function scopeEnabled(Builder $query): Builder + { + return $query->where('enabled', true); + } + + public function scopeForFeed(Builder $query, int $feedId): Builder + { + return $query->where(function (Builder $q) use ($feedId) { + $q->where('scope', self::SCOPE_ALL) + ->orWhere(function (Builder $q2) use ($feedId) { + $q2->where('scope', self::SCOPE_FEEDS) + ->whereHas('feeds', fn (Builder $f) => $f->where('feeds.id', $feedId)); + }); + }); + } +} diff --git a/app/Models/User.php b/app/Models/User.php index 2bef9f0..234a74e 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -23,6 +23,11 @@ class User extends Authenticatable return $this->hasMany(Feed::class); } + public function notifiers(): HasMany + { + return $this->hasMany(Notifier::class); + } + /** * Get the attributes that should be cast. * diff --git a/app/Policies/NotifierPolicy.php b/app/Policies/NotifierPolicy.php new file mode 100644 index 0000000..2dfa3fa --- /dev/null +++ b/app/Policies/NotifierPolicy.php @@ -0,0 +1,19 @@ +id === $notifier->user_id; + } + + public function delete(User $user, Notifier $notifier): bool + { + return $user->id === $notifier->user_id; + } +} diff --git a/app/Services/FeedFetcherService.php b/app/Services/FeedFetcherService.php index 983aacc..a3aecf8 100644 --- a/app/Services/FeedFetcherService.php +++ b/app/Services/FeedFetcherService.php @@ -13,6 +13,10 @@ use Throwable; class FeedFetcherService { + public function __construct(private readonly NotifierDispatchService $notifier) + { + } + /** * Fetch, parse and store new articles for a single feed. * @@ -66,6 +70,8 @@ class FeedFetcherService $article->feed()->associate($feed); $article->save(); + $this->notifier->notifyNewArticle($article); + $newCount++; } diff --git a/app/Services/NotifierDispatchService.php b/app/Services/NotifierDispatchService.php new file mode 100644 index 0000000..59191ab --- /dev/null +++ b/app/Services/NotifierDispatchService.php @@ -0,0 +1,116 @@ +feed; + + $notifiers = Notifier::query() + ->where('user_id', $feed->user_id) + ->enabled() + ->forFeed($feed->id) + ->get(); + + foreach ($notifiers as $notifier) { + $this->send($notifier, $article); + } + } + + public function sendTest(Notifier $notifier): bool + { + $payload = $notifier->type === Notifier::TYPE_DISCORD + ? $this->discordTestPayload() + : $this->webhookTestPayload(); + + return $this->deliver($notifier, $payload); + } + + private function send(Notifier $notifier, Article $article): void + { + $payload = $notifier->type === Notifier::TYPE_DISCORD + ? $this->discordPayload($notifier, $article) + : $this->webhookPayload($notifier, $article); + + $this->deliver($notifier, $payload); + } + + private function deliver(Notifier $notifier, array $payload): bool + { + try { + $response = Http::timeout(6)->post($notifier->url, $payload); + + if ($response->failed()) { + $notifier->update([ + 'last_error' => Str::limit("HTTP {$response->status()}", 250, ''), + ]); + + return false; + } + + $notifier->update(['last_triggered_at' => now(), 'last_error' => null]); + + return true; + } catch (Throwable $e) { + Log::warning('Notifier delivery failed', [ + 'notifier_id' => $notifier->id, + 'error' => $e->getMessage(), + ]); + + $notifier->update(['last_error' => Str::limit($e->getMessage(), 250, '')]); + + return false; + } + } + + private function discordPayload(Notifier $notifier, Article $article): array + { + return [ + 'embeds' => [[ + 'title' => Str::limit($article->title, 250), + 'url' => $article->link, + 'description' => $article->excerpt ? Str::limit($article->excerpt, 300) : null, + 'color' => 15768330, // amber accent + 'footer' => ['text' => $article->feed->displayTitle()], + 'timestamp' => $article->published_at?->toIso8601String() ?? now()->toIso8601String(), + ]], + ]; + } + + private function webhookPayload(Notifier $notifier, Article $article): array + { + return [ + 'event' => 'article.created', + 'feed' => $article->feed->displayTitle(), + 'article' => [ + 'title' => $article->title, + 'url' => $article->link, + 'excerpt' => $article->excerpt, + 'published_at' => $article->published_at?->toIso8601String(), + ], + ]; + } + + private function discordTestPayload(): array + { + return ['content' => '🔔 BloomFeed test notification — your Discord webhook is correctly configured.']; + } + + private function webhookTestPayload(): array + { + return ['event' => 'test', 'message' => 'BloomFeed test notification — your webhook is correctly configured.']; + } +} diff --git a/database/migrations/2026_07_04_092809_create_notifiers_table.php b/database/migrations/2026_07_04_092809_create_notifiers_table.php new file mode 100644 index 0000000..fbe9f8a --- /dev/null +++ b/database/migrations/2026_07_04_092809_create_notifiers_table.php @@ -0,0 +1,37 @@ +id(); + $table->foreignId('user_id')->constrained()->cascadeOnDelete(); + $table->string('type'); // 'discord' | 'webhook' + $table->string('name'); + $table->string('url', 2048); + $table->string('scope')->default('all'); // 'all' | 'feeds' + $table->boolean('enabled')->default(true); + $table->timestamp('last_triggered_at')->nullable(); + $table->string('last_error')->nullable(); + $table->timestamps(); + + $table->index(['user_id', 'enabled']); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('notifiers'); + } +}; diff --git a/database/migrations/2026_07_04_092810_create_feed_notifier_table.php b/database/migrations/2026_07_04_092810_create_feed_notifier_table.php new file mode 100644 index 0000000..d615281 --- /dev/null +++ b/database/migrations/2026_07_04_092810_create_feed_notifier_table.php @@ -0,0 +1,30 @@ +foreignId('notifier_id')->constrained()->cascadeOnDelete(); + $table->foreignId('feed_id')->constrained()->cascadeOnDelete(); + $table->primary(['notifier_id', 'feed_id']); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('feed_notifier'); + } +}; diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index eb940d6..4ee122f 100755 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -1,18 +1,18 @@ #!/usr/bin/env bash set -euo pipefail -echo "==> Attente de la base de données (${DB_HOST:-db}:${DB_PORT:-3306})" +echo "==> Waiting for the database (${DB_HOST:-db}:${DB_PORT:-3306})" for i in $(seq 1 30); do if php -r "exit(@fsockopen(getenv('DB_HOST') ?: 'db', (int) (getenv('DB_PORT') ?: 3306)) ? 0 : 1);"; then - echo "==> Base de données disponible" + echo "==> Database available" break fi - echo "==> DB indisponible, nouvelle tentative dans 2s ($i/30)" + echo "==> Database not available yet, retrying in 2s ($i/30)" sleep 2 done -echo "==> Exécution des migrations" +echo "==> Running migrations" php artisan migrate --force -echo "==> Démarrage d'Apache" +echo "==> Starting Apache" exec apache2-foreground diff --git a/docs/screenshots/notifiers-light.png b/docs/screenshots/notifiers-light.png new file mode 100644 index 0000000000000000000000000000000000000000..e2bac6af8589ffc12bb542b58c996f4eaee5f891 GIT binary patch literal 200482 zcmeFY^h-8&BYN&Uv15o$Go$?$mwrN_iyz+rEbsN{xE7w|9gMA8mn-h7mI!E5qQt(RiN`L(N!$A z|00FkJ?P$Ri?+F@>NlBKbo#2_?#Cwc@^_UrLD#N`7*+IgjOq4)jE{NRoNYYexc~WR zIKf|XMsmCTjp<+bIEJ~SP{{Y(Cqhe68NhzyKYv6-^h=rI_y4X3+wac*&##H>EpNH~ z?^;OUrr7_klb_sR_}{g91QFT)tUt3U5Rv@P`VA$^XX5`^{|fv6PygTB@&A4Ee}nC+ zewHSvAp1ZF6K9cdOT?tJ2y$I(8(tDGOt)`%F=QX<8(7{ypFi@Hm57}Z!0`O#e~e3TARz@uuiG8nd(02WjwfP}2E@d5P>WeBuesH4x)NvW(SDawD9FxH z``?GhV3pTx=`J5OrI*FwRTGU~FBd)Sp)2j!AJ+G@moF`~L~zEKJqmI*h#fO^sEGsc zvf)M_C_n>UE23R1?Brj4Zu@`5Lh4H{ZqgprkJ}>QhiOi)?mY1ijF9;PFZn?ho@K$^*|AfY=j3BX3d&pw;HgBQB;nac%BW4FGw(?PzzBnm0^A#q#Jp^V8Aqd{Qn z1W^Wcx>HiBDb4L5zTu-Lb&+r5q7W*+>du45BDN~3BgpsTK-G<=Z8pCIguvaPjseqDO4HFaFoZ)}MR8+?GAvHM&4aZbJRKNmiq zL_xh^lPex?bGB)sO>eh%Pw2^|d`)#h$&kG#J1FW4W#XwyY1V4L3nE$FX0`jVw@qU- zv<~{_TR~&2u~m6pQmq z7IJvEoEtFQx(Lj=xXDs25onN23oUGr{>d2?2%EA+O!BNA49~(BoxmToNrK*2-w)q> zUi)26Gl(eaI;j-?YdbKrA%+UTQ_Z6qOyoGD3kgPNx{eL_fA~_3RaQKISPzQtp>u41 zwDheUB~bbroNlwyGacaxw@$P{l?m9Nn_E4>#VJ5}Qu6<)RsZ^YPJ|s?z_WO2Bzije z)kY`Ml{Rkug3pxNu!@6*?`mt(J{s=s6nzh>?9Cfq{2G|00&qPdCkuCl6S2s1a*2Hq zh!2Ae{TdXxWA%B|l6p0FId7LL{wPaQOzQ1u=hl(TV=dY6+!wOk^R-67Xw)=rc8BIGN6)= zMGPe))M>>lE_OR1_q~<+-@;B6E4gwvYGc&YjY#hOdpks(UkXY%IaNdrslr^eDX>hV zDicYH1w%I-gc^R&8xY=*T=@+eT^|RFhB4Epj~G~L-cYaHwvm6D)wWLm_{n2#VP*gs znJNdL8l~iqf{qh%mz6DAt{Nej<$y$8P0lNIk8s|XugmgV{|cUn2{oZb8$1UF|JF`9 z%y6k3R*|_B^6r1)_w#w_jkc5g8Gda2;q@=WEK&vZ)7XtD#F7ub>{3g!U14a= zDH4lpX_6YCZeZr_x2C6?VpqE7?8-k-OUow7;%wSVUl#WgUb0LmP{z(P6qb;`QIGqH z$mHQEs?_dbc;cP$*N$BQj#xHT^thaz>VJgDn?TqBxltc=Rx+DdR$4i;o6>)GYVOq+94Av3zYi@2esK}l({x=F0i`s|2Dg^O3zI!q4 zSmS$-{b^Gx(Em6{yo<)Ye)37OGFNyorhaci#AlS$A>9ZH}IgZl7)r(X;dJkC6m*(ym}>=>s)(m$sPLgdJ7117LHu zLz@wAGo5p6IbT()TVTyo#(uE96l-)AEFaUiV01cu)hcVqln#@Mu9ngp48X>qBJEjt^$PMBQM81qaoySJlNf8e>( z++tn&b{MZjQ@m|2C9gmB8Mf7=UTFY2l7Zz^ZV~5{tobdW6`&hd^&ea0=E>cIPzYo_e=EkD-EAhJQ ztmDK~AK}zOAqJ>*rC#1m^;OxEG2Aq-ct<8;hEhR!@l(-ZjpM^~-GXQ8#UoE{I_Euh z>{M=+bE%+psw{`9q#(>I6YAVO>ZTsP?HFfa{m+Fn$fWe~Y{tunK(!)niJggy-l?=O zDzz;H=(u;B-g#denkwMiRPOq@poykxPR+`aP(ow=cxczqQ_Ps%j0y~$bXhE)?Cs5a zUASW3^;AsASG>BIYPf#0sYEG?fqv13Hrxhbe;>iI#bmh68hm47#-GK;s=(<8B&rJj z=J%HlRUTh*EK1*YsUU0JgUKm@=$XXiaEwdH=p{I1HVJnq{r9a8DbEtpybwMQws(~A z36K4$VJCEYCp@Yf?q7IT$iZJR!vj~?+KqtOQ(WA9VGVGsN+yWp+*Nj2yYhnKhYunJ zpIp407kfoVOw6c$my@9Dauc#yN!&u~$+wsl$#jJ70Ag%ve5mY*Lc-_rI43PIM~&kX z1F{xL9is0}qN`LT!ui^_6F=PBb~<*n8oM)14cOOwgbJJ{({++R5su#Cs-i}jud&01 zYRvc(t9c85{>R*XUTxcU3i%`Y-1Mf@>6xTRnC;|pNP#GickRw1?Gx56_~^U8@DBdL zeXRz;dm%4`1#RS`BG@v2IJ3^z-2=OP0G+2MykoDirn4%T1;xeG>v2splS!)RQ*x2P zvcFIP;GhH1>DtCZ`tuToSpeN>T#4{$u*Y}LG9|v0!r#dVIc^6=5`iv|Ild%QXi7Z3 zfvg$cPb2XgF{T6mp(Mnox^ddjI_1k7osk6JVqo`Zjgeq0 zRHr75KinZhsFQuwHbS8MXl#o(^*YO+L85dkJdWHSpET9!jD9aQb%-nQL zX65udG5x8D1$wKT2|6g-n9Z)S|I|hz{wx~x3t=tC@P_p?`ryK>r>qNF+qDP73_}Y{ z47@dOuHFj7WY1+WIi3jb#&t_LJ87C-*qhA^o&R-#3mA=W{`ZX@9k4BY1ogaQT&&1=I(Q>6{i<^VnLyaNmr&;orSm__P4z~cHWc;n!NtQzQ<8nyglc{H%%7K5FoAa}p4 zeGyNbacBb7Z;SpJ$MYRu=hZurma#T=;hd{FGqvT_7Uarl{D`07LP0aE$a=0|IV>At%&Yjw}1 z*eN}?P{~uH`^PuAp>?OB{B;SSiwY)Z?j+Zo%l*A~PN|lTVUl5s%cfiKK;giXcZ<18 za=lekPPH>TWw&E(2smd9#45xXj%; z>rB2~?=ZFql!dZ`M>dmvzNBUsGsaLod2H}K?d;fOAX@D3LV2Y8-nLt&{_rHCxrkFU z)>=NU;_N*LX~ye7tfp!{NNp#U#buq*)tLnauh{a&B6`XgURxWrWfOV6{>g<&J+^lU%NG7l?+WGN zDvJNsQ8~kSEKGM(Op8_+-syr+?hCAYQIpgoA2RghIisW{|71#|=^&_m)@Me^t@Iq`uSIu2s zuFq}!I-+|Dcnr?5um1r%=pv}kdS*XXUSyNR)Mgi49Cr~E)70;BckF?$3fT_QVFL(k zK66^VdI>0dO0}R?yl|mdsd`Yj27LC2>IItqL2znB^}I`yhci3CIldbkEyUWjILVU| z9zX1XYRNV?uvT0S=9!{aHlT_efA*w&$EUJ`Ku?r+8}aC=k~ug)O%0 z7#)vop8`;iEo`!@Lhwh(ZMfE`{FHerD`kBO6)i#XqCq3TedE3;C2E{9js;=M3FrB;2)!w@t+5(~j5Og}WpblEa~!l5nGm;HWB4;dvIy?*)}20+%o_>Ey(t^qVOUJ=A| zG`#0qXLcD>jH-z|SlJI+{wbTYUGyR)Et{~7+qciKGO_(Xhxa(_BY0EB{c&S>b7_>c z5A^ztHY+C=3kezB#u}7oOD2UlduXj%uphr22*|=?S^`phyJ{ZODS~b12kr09zhM+I zR-DTncDgAxdPMJ=-QuzRxY89}?Tel*uc{iJgGhL6dL1%qa=@e|xvlWE$F7YB_G@KL z{Yjq|DoK~V+e8xRp+J0!dagpo^TMZEBh2fbdSwfBx}t)`V=rqS@p68a8{dR9sPhaM zWjkG~!0UAYp~(S}_3h2as^K+im|ajIuIZ#nR^`UM;5u;FjOf)Knp>O%2dbt+u}J-< zs9AVGuJsZ{G0yDRp^;8QO}Takpv!QBtcCNy`kHst>tD###sNmI1ll8ogS>}UoIKyV zisjoK-qUX|pPz71vs#6s4ydoM@S1Hl9=?$Bbm;-f-NvVadF<_-hP>H&WB#z>5RZ40 zjXpi)EmsEGLj|_IT-;pjnlg$Y4Z5F_|8m!ZB_%*)NlEqOrB`1!G)nBV)kJ^a48r9R zBQvu_zDClvxKf#~!rN@|KWj5wTs@;_LMdFiv0Y!{mZLF#g$1uLRd(|7KHXO@_aBd0 z(VF?nAx{*qjC$a#_p4qr;<_chu;~2VM;l7@h!-g}Pgig*8(iGnQr-iRTL~F{tt-s| zS2e0I%M_841AmbTy{Q5dwazZ~-KOOz^drBfI)~9pUGgDk5tC6?E`I)a4Z5J9ptCa{ z5RMp!Y5K4rtB^fZ9MNU{F;SbTUG{Yb^aQM<6SMwA#Q*fCoyJET&Od3Om~(Thyy*{P z6Z4%g6MwmoDEm)TLcwF8lUeATiYlz?^@!K*Ec|pAHA*qW?JiuPU2Of1J0KzEB7}z<#;kSlFfsBAU1_Vi$6%ZoaK#?bDK^!ONwaZs0MnHDA`=* zD`*0_|K)QDhP3FLG$!xaY({+iGe$;k#%5xCY~rOP(4)Nr<#*dn4S5tSe}C=#j3m|T zoa$a=t>fA%ImV||@a4PWkqyt_?(UDr&Rz!RB-egdCw>{yi$cdHqNU0ndCreS=?dOC zu9g_|bUfq^&UoE?@?1N2$p3Y5xRnwZoH;FhcF_|Y&A{)1c^WCDu~{K1zOjSA)E)Nw zT8bvR}a1W zpq_U>Z@qm|zrb-bl6lhQF8Gexq_t!HDUn>~zE{g5KkXvDq%8a6U}gm9@eDwK=_VNjpSHyiHHPr z#3Pi%7;JJ;K*&k0q_5RpMP(D73_DsM(z>o|^d0eOs1X$&U`XXB?=$t!Lq>;~4{tqu ztf3_%695|RZx~bEd@yg+;u|(i@#KlAj?PQrLSj6wfYH)~QGE45X>HIPSQ?G?!5_P` zX>Lqr#vU=n*qlu}+QAYHuhr>A3m5|et_)4VHRk2A%N$}iqoog{TIZFJmWY|xuXPN0 zfjJ$Lt7|J4dwnDmbEls@EGbB`@_`px@2V%NP3P()Qls=1NU@xIcQFHCej}z zYUXRE`gXhr#YIVn*Q@F6I(RBXuG$amvgxi6c2FiTMDN0!xgd%;YiDO_gnv8(wkf2t zF*25pKL-JJM8Z)zWfOR1_5#_fq!w^naC!6j?7+k>oV$z$;$iIk-r8DCtr*>eKNZaq z;785{tnG;A=4?-ZYTN^U@@M8Hn)_ariZVEdn28?dg*@|B`vV@l3DvMa3ZA@?JU@QY z%`g?m9&e}2Iz#PP$Ws1&+>p#Z{|C~9cl9>Le=+_pO7ctK;yF+!&KE8jYI5`E30zOP zQk?YkeYZrm9$a%Nf8yK2gd6$HA zxEWwojcug3%G{I0E%ke;=ciH+DD>K~tUj+R3( zMZJkSf5zsGU%gF^jdl1a0({KCz_n@nzO$9sPf$9NJz5FUPigdD4@nwQV0q&~+l zag+FFpxhtnPEXu^%+H@(o0TOrs_(7Uto3>qI$ng*-+ua(HJQPg-*i^ zpqG@G9-tLLGp9mD=9=!q2Tj3yD(lk){;(R5*!{yj8`$2r)wKqsqaN8r@?&US-Kzw> zb|&?Zo4F;`Vv>^C6|eX?ID{l5`njVaE*g1t#IeT5rMbCS-IkiYJq{p-4pGsUry`Ix zJIgZ!^naW6*(0gMK-KsB%hwB2@O=&*9u|CZI;!*jA5;M2% zkv~9N ze~#-?0VjI3*}WD)mQD;`dnA{?YsjtfBHQmqgbT&MXj`F8#h-ke<3L0 zg-C5=2TNbwsc{v2cnn)Hc(+ACPwAr57~v9|>^tZrBKzrj4ig}{RuLt&h+W6dNsbKb zcuF)SX-t&OH7Z~T-p~QCQR{3nhLEgvovNK1V#Kg9b8r-tlz3nQCi>A$CghO{*<^Ed z7ERMtjg3y;i+n?wKZNIylGDgSY1jl$SgHL)S=z>iLuRH$nxywV^74=RfoNH(l3>_b%E7yqXp2OifQigVk@g3W<`DX|^;gHLhv=_3Oi8ySqojrnCO& z%di!7wOLk~2HpIA>`;nqB?<;vxF|G)9nKZ4K*MDGV!b$FW~q%*;ZsiIv$Iaxg`CY% zgB5=bDodM4m7bCOUSBr?S5u9R`JFiN^K);^K$F%2z(%p4v7#C=HiB#>2nbj>sc|PF zI?Q2*kL|=>TPGE?G~*Qk0~NgZRZ{Za^jWB`k$qjkbElp7&uic9G8FixEf~8{D*atu z-Dfe2TC98u@~hf1-s&gyfk??zi& z1J~>)DjToD+WtgvyZ9Ujkt`V_!Zp{QGcq=zC#I4rj-V~!k z8Qbbr5Io{)kK-YQwsvL3MlNSjh4B z@Wh@M)s&PK-TGkQsf4$nP+nHf?v>#7r(blkX2*vY>O190hb8uK6+)l(XiM=~8w_e$mUA;P7 z;|Il8;Fs7m>aE-V-qUe^v6(xI(MWV@YBER$O@@vn@S7(kB)@17Ed{Osj^TuIlhJ(1 zaXcU3%>?GpHQaq`mnzMh7hf!bo#Dr*s?1{fo^w%*x$YEg?Rsez{d(?=CC_k0*L5Gd zQ%-x*K|6e;eII_Ods}iSyLw%Bgt={_ACGHX2E-~hqFIqe)+W}h#PAf)V^{_cU- zG?AMj<+77a?%|&#uX+#Xo?4DRr75dlkSRa&At;lvox_XpG8voEjc12e8P_v7%O)Qe zV&})xz)$<0&WkgueevdY>w|?`>2pzIaIdi#L3XosagUuM6i9KR4AR}brB2LOq`G#o z=WvjohLw>>3z+@JxipaULPARQ*?#)sl|tir=tj#?N8)khii}Kz`0+L&A#aM?6Rg%m zxfz$l`3b%6S&cU=3I;ovF#n`AsvM538c36I@%MC8KMc4$A-K1AhG_ZQGJBK7I){Ru z)2tc(7jNIbz1r00Zoy-V9Y*p*ZF%-R8?UChGa%>M0RibqJAeN_ya+Ti+d9_$8sc4M zsy+8|JXyGyJsn)M{^`0+Q&aY`q|^kVh8!IGI(CxQMKI-?TACoH?4hKjPiqIg0&81jBJFn3kaVA`6?D`2XnNk>5IZo{%Q!M}4X(=H-RpL1R_gfZFwra^ z-tY{wdR-GRmrR=htu5)Tq=;hlGuHZ^-O*HCy_`w1OG&Mr*R6ufnXYxb{u5pmOvcDp z!*EGLW=Jfi7Eit5K(c6z(8s5!$3yu}&j^{;9Z~(_TaY3lA|nWv!AD`I&KrSz_Q?Wx zP=;9xD82K}b886rFi`BPvh=~x_3L4s=F??$Z#lEA4)(<)h}> zxyiF4#tv-*gM&lw45#S|l{sa7g7wIFeM|}l8DO3rY`g!Jmn>naH)_K`FBcNji{}LS z-@mU(7P&l+N^4LRTX^tP#%m%f5+xs$pXSp%D)n+_3SFriEk`pGTi2w!CP(Y|(aSC^ z%^*85D$0o0+%PF}ZH@NTB`gJcwsDxU`{|v81bn>md0#$b!*xazZ7(~gXnX&^-o4`Q){;!Gv;r; zYfuW2Gv%j)`2T4uw#v7m7R9-5x0G)YQI%KN0G@0A5qEla$dXXqZFqpx!8tf^>dir!Mo$jFo~ zEw<<9Fo;!Hv;|*W_{+++q)YpGZB6T6tZMf#iG6ar41Op+HFYPj*{W0H5`Ro-LzhIk zzwv{DB7{0DBdOZ1^Mp}cT-*!wjPCJtrd&vwS%VP6nnjH<>Htfq$-Pxelq@V`E62Tw z>+=2-CJ5)5dUrbq0KiR43*j=?;DPmj*D?5ynEM^Z>oCy2n02!T>4-qLGA|4XfI-hu z=fXW861TdaT5CeR8Hdo>D!-mylV|(BPKa7{dPB&5 z7rnWxDnaVmK`+ivc(?ePHbuNOQ^w90{P?%0v1zHl!Al2Q$LNNj;4ryTl*Gg)_3;3(sXQj@kABI{@^Tsied%Fs9Wi>>FV?#W z-!YOdY+e)x@sshz<@S^}Wou%XLsI|FGRXoP*S*Wred+<2-T*~^N4b#b!|mPPoXbYK zn8jLO)Qc)b^&Rc=4gA1p!hI=5wJH4Oee!hC9hCvCXj^%wra3<{En>0pa=^!q_WM$< zPfLMSdOPdm#n+qE&z5ABH*;9^Q&B4(&rg?G ziT05V#ReS)FuYo)5_SkFxCzv$$xV|y?zY8$y6i)suSO}OVNrJJ0gKfm8s&nHL5cb4 z{@dB)nBz^K`8VCt-WV6dxNts@9@XE<<5Meg=t-eB@l%spr*x@}BlZkm>~K$6T-5Z5 zvk3|YH!e+=)+Ng^m4JX$^vxe3F7YQCNVo2)ffgyqxsA?!3L5RSZVpjV)ra#O{M?YU zdOYcYdn4%@!5|$hZD)P;7f$#SE-13)UOwH)k}{e;XM$>-s)`o-%wD~vr(=40h|BO* zU)wRvsM|@;Z~IeZq9>Z7zW9W%pTazrp!rb!j48J06SsHo6gS*P>+OdZ7`hG*;HXSZ zXWo8Y7q5<)a+!by)`{^cjI z%Pqrlx8dmoUcl*+C{vp6d3`J!kVn`RHV3vIwVNhyvX&Sny%g2-dbw0!gpY$ z&y^M5nmt1HaiuZv)$P6L0!MMoz-@FvMckLl1k(O+0(f~i>*HxV@ksUs7BWvU^ka~% z*-M}E8-aLdyjpkwp4@j0*uZE!;bs5a=2AF&{L^+|ji70|j14^5iX@l|wHfFD`>woQ z=SOi({W2=jKj_n0#7m4$s}!~x`F|<-mO|V}W`0rR!smFxmf$5dLF9v8E!wYdahjNq zC4Hn)d<$UVgmEhNcg2%>PalX(B267aWpzQXZfO=fte^6^s6B~PNYh|n?FLgSBs}cc zTzc2GaC6cAU}-=Wda{vELiUV@ld~qNZ&7b&Ym1(OLdN>#RqE6G* zXUN^=zV7a_l9JJ_tcUsb6eBO+^J0r`=LyPzVeR^z+yifpkO=niLI7N>Z1HyDhs- zcr>=XeR0v!(+9#}A!H#J`~Z1zpo%&GIi>}AZ%-e0tMZp)D&Cg72uHo3(T!u0w%u+G zB>C4s=bP|F7g<&jKJ(HWJ7~vWbiXSdE@AHcjg8H<)HIg@ih7$NL5j7G82Rk6+js8Z z)}>!@h#i&RmJOq0tmz%ym;_Rh{}ok&z? zqC9W&lN<%tZ;J23xef__nDqWZJ0g`JGn;G5Wgx|C+{AP)pO*%L+-HaAcO*PE=Db7e z?BG62D#B(b-oR#l?8k;GNT@@=$xtzNJ@T}c(f9bNj<$BQ^C6w~nRi|3=IBOwko%~F ztUyg`TZh-icyV2w+hK>kpO-Ub1|OF&@_60**2DG-5+^Um^5(#`tJC`B2hgdM#$vfn zm(AxxX&H&U;x6e9zDL_F{#}2jvuSCm8*zEuzH%j#&BVcq@|~=#F2Jfqrb_+LrmKmJ zmQ(_u2Q6ez>E`t%ah`PQ_gqU<$O3kt)0?4+e$6BGX+tji?g~wDiHRKHDvHwqm(CguA=PQ=-!pa*SF79R+7(TubAmUpY;3 zlIW8AU-wNwFBT@tfxZhiU6Yy6|%?*|gv8zTeMA?o2% z)wU}w1V|p2T1f>tCog3*KN~?Xg|ir$ZhafyXMFEdDmcIUm#tM%~b5 zIInd9aEpJu@E80r&)GrA;kEGH-~Ym-2BeG8s=Qz9j0h`Nc8qov&Xy=uYws}HYEX896wrO&ul7hHU$9J-_yWM)lV=pwAEN?JIhHgap1HUu7hNF&41~R|pZYBf1YBJ$X-F!9I*M+JMR5^_AdeB*0{)|)z~98XiO5Rb z-%_pQ+?@{%4fVGfr^h0EeCh|JaYr~z0IN9D2_Yf=gz_8b71sbmi}!#1{?*-0di`1M zJ$q}ErC3UD#x+Zrog5-&aFxt>9y%mK~3e>qjG_Iu8EULewoc zy^;X6jDsefA6qVzxiCSMY_4>h?d*oSpJ zl9eAXHA~6J$UmW>+?}n|O=E2eom)cVckyTW;u{+q*i}P4!o!=Xbq3b>juBcpvil`f zjRBET1h2&8zt=4GAt@F4GoOHrc+DD)ekeXm_wN^PZZ6xZ4nHd)scZtW5+`i4q%G#GEDay^=ll?HRy2%e`prhL?Y z-knhG00OZ#Ha6ygUOUq@7E2xUE_M6e+Wp`= z#-5le#qz7`3vt7bd2cW^?%@Rw%G^!CcK+KAYpL$&2LtJZWAk$IC0`e_csv*33z!Vm zrBA=Hf9P}4Sza6&r-%SSCN2kxg^vP*BS5i(=A%BpNOya z9_BTqpJ6AUbp;aV?pM)S__bYGLN%zEmTFIkbR50OD2a0u9eG|<-hTO|y85zorrK4E zWPrTTCDa?fc)eGFptxviz>m(pfOoS$>^e z@9?6!b~6+C&OwTN-vGzlT=}MRvU}3sc{X=knzob;sg)!PA)PMKbI`P9|6vJUURIfA zbY7?6YqI_neEhVu^=VzWZLc0uQ+BIS)ZEA88vR~?9_W8Qt~=1;>Xt{YEL{g(6ET!O z_?2nJSKk}|^|VA;7YNzEQC`iU_*{_X7*}-mGXT{GIe(~+42cxmNfS+1QJLiv*%rq@ ze2*XERQjUpI$1YatV}xd^Cg~T0+66e$s5E34zQ=Qw==uz)IXcg!t?56) z7+s7{o@_;W?c&iXn&C6=xf3tN{g)lGU>Xt)(z#r@u&g_7p>%a}&q$*_7ko?+v0A0) zmt6cVQer0Iav^^Ec0Fk1l|uHwsA^ekGB;RIYZm0U{-e{i?h3T;)t|~VkRjnb`d8pM z9@FGEp~^3n?WLI}a+#ZGw)1D!YbK30Ro3CM!E^D|Cw!@BDWH`4wK6OdNr zwDEWdJcJVDYyPA_ESQ~#eS~SI`%S^fIO66r!NZCT*gwl3!%mn(@g-IL21x$;<>8G) z(~6I%kJ|SSMwiH;r~6JD>!Gou$X%#^$5TpaKR#12&7Hb{RdqwNmD4Pw=a!6DZ=qm$ z%kV@eLa|&X>ndCRmRpiq{I%GYM-YLTKC*j|JL$ucZHda^|)6sqt{tNAk z)Txwy3BOG%a#Nu3qCGXY4aNmm$DMFl)8_MlmLx011**o&qah?09O-j5<)^9wdp$zV zXV&P}TNm~)143tB-6kF5I=3wGD~uRbP#LAg4h|bGRm5n@d_w&a>_8!CO}3S(e-FI^ z^FYoi6qQoN=4O4@beWoPmO6_XV0g3dYLm1dIo0L;`-iJnduQW)j&thEp-UHgKPWX) zUQIDRSV&jGN13@c?hIwLTsy76TSnbuC%H5-KDGXC&2E%2bb96vO>J^$BQ?<B8 zq`39(>2~;yHNtkh2>dS0dDzVF@kCzf=|?ny7GZi~tOmS^usg3ux zGQmKv`y^dkex{nHm2JfR$i~*=TALxoP`@%@%Sl$@TG3oe?Y1$}>$r^^ofyAz_wRi& zGMS}bQ-Xjv2!$|)OVgmd&<@?}CxqQ#)w2t;wBPZpU z*mM-5tNn?X33JF9^x99(nTwCF>{xiBPp{lZ<0CH{!OU@La~+H>Q=xA> z1-%SfZY1&!{<9G&6Lt8rI7tV1D`fFPGxvveBo8;8az5pXvsX&ikDaIl4Yk`RIpw8a zoR2HpoRyuIyVaB{B?Co^lI_6$1-VZcm0ZWn)o+#Q`Ey?y&O^zwKO z2<3$vnfgVYhMjho7@GF1>8*LRKl8*~lKWqsZD;+-n!fQUOVhz&C^mMCZ>#g zOT{DEO=sgX{Ed6>w6(Rw^nJicE!q8{au%(|=|vbWAde8d%%4iACMU9q->G zCDj{H4!=5E+waVnY=$5u-P&WjtX0%z54*X`Z;_Cg`wyY8!P@96j3j?EAussQl@IW8 zassMscLWEdC@G!^eA;_{EQcyWF2cA)UD4Y$5sS`XaOJ<|N9?uR&78b@_BYjix&Vsw zkDla=cRLwXRW}nw6|5VTuSc>}u!B?1Kj%F!I*~r)j(8%z@Sz+1MBDHCVC5G!y_1(N zhWXDs(muY8tUe=*F1dBd9uf$tB>-Oader2QrfRD-Fm<~Z4u9-z`nTQoXHi4R=&_09 z>!PuR2zJoAWSHU3Ri-`wE040!&@dRyWTR(zEVG{)4#MGZ_aAwhZCXtglAMS<`dw)e z$&Cs(8cPR$=W*n#zgV?nau;f|5Ycy;Y0xP3rl5|*9;|7Wx_o^*de6*%N3!F9o_?CF0g0{cA1sRD5|4*2_lR+X&|f^K<4=-Y zW3OQm651Z>O!vUi((iCrq3Hy>E1xDNCSIPc{UO+j*el8wy}lTuTi!>(%Z)zx`L^f` zNWzlW7J-uIWV3-Fjai~E*VK(`tnlN!i&4eCn)Ijg+9o-OG4PlJ_NjoTko zhC4iabjh)XB*)u=N;`x0)%h9)OO<|LR}mp0)5r!T$%=BXF9Z+i8!X1qmlGT%HkM}3 zEFn?rjMu>9B)BFC?14gi>?9%S^z&Pmv27IxeN|?koMSroX>p2Y4?V+3uPT=YwCPW# z6RX_`>0T#$>|fbFrLWA67IjaR;nmo4VlePB`6o`k47!*!O)Kg5tX;f(8OF%EGDEF|7GcSbGCX5vp7FzV4xgo zg}?_{fL5TFusN^Scifcv1J?uxnhO5;?moFUkzzmq`Y4<*FloA!GK~;DYj7+}@)|m# z1^SN7>29lgqyM?Y-hCcUjS*nL{?wn_hXKile(&CycwbLtKo9oh(2Dams)iv}6 zwWIAJ)uNRTo2@f0_1fF3g#YA=CAe20YOifn@e4+ZJiT_dzeQVh#c~7@FHM1aG(Z zm;gtndy19>ioS9%jQZ14i^o_-Mmg_1Gh%F7nA(IDtC;tVFk_CE>02#+MBOFpluvuS zZdJ9V>x^HsAEtFEiJ$(nQ(Nk4AKd)hvtDo7L#ynsj%=^=TO_n`^w29KidHxPVq7}T zs+v${THpONZ~poDq?3rS!JCT;|HUx&U@~w`aZ%k!U|k{-RBlq?wlG`oz7>JqyC@+{ zIY0S$CCH;_cw2qAqicm84X5B-++SUS@J$x_cRufS5q(; zj9@WVmRCDa9plfEQ&P61^y(ky*I7BX`^sF;9zF|LULf=U65`{Vj#pDG!R-$|@xdGD z<_;5*lh3!xTOKlq75IsEwmn5sQer+GMm9FmIa3z{5t5|swpC?jNSFTE`kfg>c!bC7 zqR(ZdD8gxK__Xo)zkJ53)6(<`NYPCx2`PLFe7{_?#R5e6z(lm1TKLklL$kWv_vqT5 zK?!UVJ+X0w-QLGex!D2j-AK#M1GEz>ET@3xa$|RinYjh^AI`52H$@xo>*^)pPKgEa zNA$y)?zq!$QI-XU@pA6-ChGc*?>J*uCE(J6aqc-(!aV7`5_pWQHp+GD zSjxl6^lR$}kBL8K)YyNsfHuab+73ltp_--!RcREeV`hxn2xA@7C!fSPHLp|&Mkw{V zXJRphddw^gS$ncB{6TZ^gmjG&q|H6${rgqd(w!I+g^ss4(PpS?R)Nw9LxX6SC%MGP zlz+_V$CJ3Kd{ek{kAy(1WYJ?p_154@oHk{SZ7;-XXTuJd>Nd>*rUdHUYurCC#-VW^ z(jF!{&B2v-*2j?1hPJx|yVzL`>+4mboih<}Js-F!R_o+dy2EQC0=b&%Ob?u$@82 zVkrGGyLeMYn(_luvzr9R?!#z>W2=9`1uu#cjMVcRBEu=6>m6Nd^o7B7pDr?gUfzkY zpJ{e~ht%k+swr7z5tJ5|K7K=BNd0E`Cxouoi>&u)mjrTHtl)aIBkMF;SM~L)9O~(E zr>hKAVmQ5M$rCC662m9&6{c^1hc{&1-iK(+$#?b98-|r?Xm7hiFJ>8kGoSk(VZ%X3 z3f6kXgo*%j`~&f$yf#0r65A*TR^?c&VL>kW7Z{4ftm`C8r**X^# z(_z5()Udoe>>?buI|LBpo%>Xfx>Lkc{je$ z^H&#LoN6WQ1?$^RiZe!GVP$Qe1n#nuX#Njx4GvBd-rpW~UQFb@^ges7xQK9VIXf5~ z=|CR3Ngd5M{R2}^zX>d9^mPB#inU!?T{VTyQQxPzDke)4TvPNuQgCzIb66Vq+tUN6 z^$0sv*VfVbICbP8dvWB5KS2*Ikjs85pVTKIe+IW3c;+1(EiQZgY6;Fw82k3G3t|lS znnDpERfE0rB4q;KnW98!(=Zu`HlqH=jDh$0Q5 z(k&ugA_CIVFiJscbT_D|^pNhZ(Gp|82m=@)&FGLEIV1;z!E<`w&;8rsAO5j}!^wAN zyyNvb!Q3|ME4fEQBYo5r@-P=v54@(o24$k=PQua5St8qaGb=mVAM3j6>PwzWQ&aWw zSuY4TU78Q_PBV_FDfib;uhnKT8l}qVv=O6M(b5!U^Jhh|<+^(t@u1QqVrP6s-U`3@ z?4Jfh=24sHZ%;YD)KxR-yRGZs*f}NA!n#f9()#+kSUaOUoQ|FDXW_p})bvJWTCCCP zn>LY|IXmu1nYuC$&Inx=mQR=xFTvfzIaf4Dd3r@+2U4b#AFvA3^pzWNadF{tTU%Sb z=L7M+*v$0IOd?3vUmP!K;y@+@Ppq>W8NCGCv@y%hHVCYzkPYQ;UCZOCYRW4wKWo9y zQCgO~A%jJINEc-mbIA!rd0AM$RgV_(d-m*Gfik5)tKrs>zbs)be|y^gMKMSS;$uUZ z1!)gJ1)#rq9$O~e@ism#-U~Nl1lnh`5c5AuM!u0Ma9n&CG)}A-eX2Kp14uvtp(@iU26y=&7ben=g%^SqdLj`DQ4Ob z!k965&{or-I=qX7Q()3i+6#bSV}LOD@t5E9--< zr)aZ=QR+Gr4eqvHI}3oil7G`K8*#!c5WWd2zZYr zg!?1frh?L1Lv!8>9ZWIsl!?)%EE?GlCwDyk$s8XWt@nw%V_{`&woJbN*Lj$gtascR zvi}BiWEho`_9y?dUxs?K_b5hMA@HA84RNE&2uxB z8jjQTsFiw@Sif-=-HK%!)FSJzl|Dp#&U2I5Hz)Z6dz|u@a4xEiHPrFa za}uSO zec8N{o68&ONAt9WdTnAbZI_n~X_9|9xrUWZTQC*=-oo!#BzcUt_j?80M_-Z1%3f5p zo>cpLqx(IVqLDLhBZtseKbB%-3KYc)3brmbdIvDoiZDiEhrxW=ta;GMNeF(PPkc`X zH&JI7G9}gHJ|I&_9vu;JzF)=mFc&s2$)nGU@=3Eq-?KULp7-q)LWXin^EnPJCRQv# zB6|i6Y+4T5kmd%b&QlG!UYF1hZ(a~KXZX@Zefg%yL}vmv`-HIlp1O}@!3h^Pk)U)x z&|+vlILtn4adGjsY=9;s=cwOwSXdV+bAWDXHWo@J?6JbzXfDu(s=t3uZ&d-$(?aWVw*E^8V_OMAyTxpWP3S zzEe}RJhCU#l0Tqqt$tfk#~#RHRXGaT>uA)|9))-rjX{@(iE*=|)y6yTzI18tTB4vQ zvlZo|89C!^!m_`r5?e5|{!_AUz7dLoM(!dT`PU~8O|f)Av4Kov zU!PhZN%NCpYV%JSOFmy|xM)3I1W6YZNJ%xewYBLA9e%>Di8nTat^n@wm7)Dg6wYsP z7d?usuC4~kMB4=p$~go@6csRX3JBm255YduBI)&_YCPL-qX8`3N`ccr_s+@r4VqCC z(vx6`gqzQ|zIpQ|qNVd+a9~;nVW6u1H%?AYZf-S_8zyC#{!F1_b$j$|CyMOS?W4yVI3D2 z7ZDM87C;=UGB+?5B(vZkvHDnHGQN znK~{$goKR5)29ck>CQpNxulqZjmcUp5kKGNvwPR#KcJ`_g^7C4Ov%*uc@vvuS0=xD z*=1g4M1MR*w#)|I3R10)sKD>qhYTf7=%0PgbY0;KBqcXSy6pl%aK`@G%#ms1)_^*L z{*2dv(9lq|_WtilHx(#UCArdb{wt-YZsQ~@RMf*S1i~&PbXZ{&gED?SwBZpOTVVk~ zz#K=M%=(rW$SC!gc3Mx=dSnco-c%nk#$Y?zfjh1@`VTeLeL|x$p2$#Gsc$Zwb=Ngf zh~AXSGf|IDMyk=dmXVUo;c?$g&O=MEZAzn%5*JQ7r?+XR;HHT8*KXf(`D9g>BhBWD zrXD~lhfk;bPWfsI*~}em&SZP-%(3BqxBQtI8R5?|Lq+*>)J$%^+{WR2&o-DC#tJtD zyE;7#fBg6nOxzx*YD*(-R=I;me^cY)OGYzxB{?fy_F_CcILqc>H#RN%a)`zd1EUao zEAPd-Z-aw>aMGutAN@q}`y<}jyvEJnh$4?US-G3^Hjl|u*SS#MPKo4b!3^E}(V6QC z!oGpm97W0$b)0{k{2WeUX$*cgn2DEeb32(&AFG;3Zk`U@0ETAz#il6O5SzAf#nKE( z5(`!~g^|eyn$^B)rI?pv?cFrKW52@?qqX>F-ueFAsM%Gg7=hx-18x>YJ*35aiMwX- z#kZO#N{B${#yP*Keq|Qg=pYaG4pituqfI6rrwkY)%<7(t+eueGtiK zRlfK7`N+v%UL8f!5jo1T^Oh9k{NlBrI*{8Bn66bnh;z>^h&MDe{5X{>Gt1{-xC0Gz zK06-4P>^ECL}yE{yA%``mrT}+IKVab@W0#z8c_nRKAmHH>C?!a!4@S=VRB(17E>}Q zDqIsbNZ3!FR^}{0Illj78)?p}l+r<%s`WlZ2pOZr`TyLy{u489g73eWd*xl|Xe`1k zw?MWzj%lr6_yWix2`LmOmcN#rz=0y{<6E17n23MZ5{eisNehHx`kA4VMgCan?j;8cV&@?xDktG^-J%32oGyV1X*|kC| zE3n9!Wmk@D1e6Bdzj}@Ilt5_O;eDZ`L`vFtKjDu1eMZJDauC-NC=(bSbQRv&F~>gG zm9wz*_4Rdfs<#>8YwBBtKG zdw1<7O)1Y9v=({@iPpEQZ3?<5C}5rmQIB>?P6&pKJr0#hkwl!|B22_Q;&pQ8w zA*F?rZ6=8prNEcOgZh-OhBgElVc%LYj_o&KbpG+0J&cTiwcr<$8N~Gm%t$&^11uB? z?*sk4t4vR-(hghlnjLU4*{0r0B-;Cf`Qw+gP&upI<}GJCgezjLsl=o67FbV=Sqo{2 zRZ#kVAqeH%zY};~SN1pDEn{Y)n-XkznQ^OA9{xWqfG6pqP``}!R;PP^o31W*1Eo~C zYf-*zLC%-KgQsZu0VAUlM5wh@L1SbIljEXf*uOsLoL?bkpE~@ydhIyT?;sDCSK->+ z`>peL8SiqpdJG9}CG6@5H0ncB2?tDPKSgD%b*wbJ6d@buziy$M?&?|0`X7`zCxAXL z%23ETup#zDDDAB#7aw0Grg*MC9O(e5^&NqByLzi~w7R<1ZX&bW?n!Fc+I}3pyLL#h z$qrsQbLWV_fyyhBR2__WW@tzdG9{AnQNXAB0%fS`=yeux{%Z4bIIVDs&Pa59EGsK1DfBaQQ&npV!LjJudB?!7VrjZ`S04AWFX7&}D{sB$2W&&$hMc2W zU*vIvqw!c_VbSv2Vwy0XkY66@eGp-i!|PYk93Hl_MUETaiFv<7Yv)f+PBkf~yrP_^ zOZ*3d9H%`A&f216v>p+LB%poVaug8piOOFci0K8?&&Qx_=>=iJ!T02D%jqTWDsk}$ z9VYx9Da?QE?esjYiT;VC@0PNMFr0>Nr6&tvm(O$l8aI<&?^s5Dy6-Ufn9D9k=-p2$ zH_$vw`7$^rt?Te-pzTitw%Fm%KmBX7s48quR?BJWWkzt&QB_fCPK(~ZRSVJ|TNBm$ zS<)yr8%s`YzEIvR*qu9(^`6F_oL?t(Er&)gkuT&$7De(zM>CY#1pS(D1;&2m=mR_y z*e-h}e2Y(tjFC>zOKA3(2e(1|wiFw@HnaJUkJ}ayl)J`x0S*F0~Prs zaX|KBhH3K;u+)l+3K4d*5Z6-aSZV*b+3)|x3H5vz!sm$H^ecQcQ*CMU=8YBzzev8+ z$&7b0wXeIl%fv)==YCewYE#84UEQ}L>GlI5TgwF7e7UWUIJrf4>6@D#7@I4u9ZRuK z+THzN0kp_DuXKWySlSJ@>tpaw{)bz1jEotX@jAM?TjDFH%(iQ2cMT_);Y32hy#X8j z7ugKX4sg?j=H`Ivpy3grnK%6XVy?l$xnU~24$q#wJ68Q~H~wkx%1R-s9+ma%U-BEW z!BdH5*N%2nAqS!Pbe66HL7+L3-3u2Xe)TI7A zR8C$IGwv65>WkVc_s}ZY+B8_=`o}f0%}YmsU8fL!Y)3h7ri*PyIPsX}DPrUC=G4O9 zEo`AZW+ju4=|SRvuHf@jnDaw+k=7&kJdn@Q%@_SRM+}8CoyK{WF~tisl&32d23ecN zbc#G+o78(F<A+E$HC25;%H7$(P2ihR=)u)f3 zN*nKqc`)?=b==%geLh-(i8LWJP#=s(kBg21T1vsK)g&tzCg#vob zj08NpxQwV(aGb%VPz>}AY3g-yooMf?N_%l}c^^K^93PV}8jj~$itb8y{#Y))->NK4 zR#>zZufYy7hHl*}qD(c0nQss%Z^skD{)KPh@4fw-E*uNC?Jt^{nfled9lyMJ6FZ#C zOK`{im=FF_E=%2>o0GRlLDm^A-gwkW+J3|0R3H7mSJx=E!M@Cgi1=L$Uz<>^Y!H8# zo9}TJPJF&~Ejv)GcR$=h&>6%7Y<5~h3X|knB#*36L^yW{q=T(t+FgqN#J3UmluxM> z6e8^2BYvX8`mCpG(VmmcOSf)N1;)jd##DEA`)@Gr{(hhE=BFa-wkz=BjC4mJIr(q2qf53c8hkO^&^oefrotwMTY*`T^`hb>{o#yaUlz%;D6m!i znJB;OE>ZN-`V#l>P&=y4*@U+a<@O3}>|=MbHjNs~F&U$-3TBWQ{?ZAan`#WQwN*iS z^?E69Lo5K4>^WeL4cR(=-#!Se(vE^e_A%1WIZplZZ}lUF$NdOESlu1pxj%VI`o+hF zTcC`SM=yOHU>1hZ1|CzYI?D$N+D1)}{5AugzLDN8db0n+f6LDPo_mRYwIMN&rz56I zBYru5uAu#VP=X%^L_cGcS6``K877M=u?QH~d+$$o;x`)01$cONZ#{r#O1)ZImXQSU zuZZ*)Cnsz;2Y*l43Komi;n~l!Y51IOv&m;BKkJ;y zk=|Cf^!&d6rUlRrr0mN@qwtfb<)Gi80Q$k3sWtC<<>IP7y7^aYuUt>Ig_)+L?R)4f@LX1_^8 z%qVd__?){mxZQqw>=3kzA@lbnJaKpKF+xn1eLnji6+4>o0S5Nm^G>bk)v@XwIyBU0{!AD1jQ3r&ax*;?o}RM7c;!sy*unaI5ao797XiI$jTX(MtrdT;O|vs9C>x@2 z0-|ei`>~s{H2rkJgnRfL;j(k8L~X4hS0)M1wm*yZX{B-ziu6(rQQ$}TE^#9Ua&q$- zIGvvo4z`3{mOfMcC-(-H?77SfMF-ug)<4g*-pHkY^jaEdezv8fUQ-$-E&eyp`P}Qvn<+E8a?%aAJg3kf@{8gN!^Y&ow2=I%t0fvKu4C z+4SFbcNP`=e?X;^csxskk)Yo-H4)y=x-WgI$`{e;`^g!}q<2YaK!yYpcw+n3x}XyQ6QzwQ zUE$RtvWXu>{mn;F@g%2~#%Y2DO~cI^=RDtP87FjV0E&a#-g7$GFp}%H?gmSGZPZwt zJQ<43@(R23T_aNxg&G+inNf#}&FM=&7w~dHv?MOQV7%OsS0XM>-e_AIb#MRzdYj@0 zMEqQ;$adVjci*ndz~5uy%%~d1N=95whL<{7N^|tzeRswD0L9y~?u;{}BaswR#`4;z zETyo=1g(lKu47t~T=Y_|LO7*b@hD@WQiRV&!&6I6&(B@GT+N&gHTeZ#7)SG6v`O2y z*OPQ5_r`PWk*y(5RT_n@vI1Ok73+Cw9Bw-lldU^w%op@c7u8a8(nnj2zg!Vt?afz(_amX+;ykCg-=PcSC3a+Gi0nc8)<9VR! z#oq9By0^EN(3B(=Avr+r7> zTM)aQ_%rP0e^6FW6Upq8OPJoj|IQ@gRZ*)pfB7d3aiKxW^8uSU2S;tJW_<|;8@E5y zi8S|rlxvDTVrpt2x!D|+ePm$fJq}t%PEYhA{MR(4-GI^?(ta=QE^>RKUW-rY?Xj4* zu9B(Fpo!~t=1%Kw-K4`*qvMjjfb?hu`W<{tKXsinncwU+0s;!(YO5-UN=O;Tb7NQ% z)ONd5kq-n!QSL}H{Ya~UN=GQqt>@X+NzFh9T>PP0NnE5f=D&f zcvf!~7#ikixmkpPdZy_YqxPCm7_T+VN~VZq5j==;7PR21+77;C2fyoZpvEWwf<<1O zJTGEgscv&ZPhH!h7GfTBGtf|Bfw8zg8`hYU zlY`FkSuJ9yEOEC*d2MI=;tGLyZ0sgd`^5U-t5AQ6p*Ca>{lOQ?81ntK51yzQb$=iW zu`{7e7#Z^F9A=9IQQeIc{p#dj4Z39MV(je&_XE#LIGBT9c(fh-5CTVf28n$To5AjOAq^^L1w2UhwQEcj+9M@?>TirR>R?m! zD@L!iopf%pYl=Jn`I1Yjt$l7Nrm0&Aw_?|jGKN-5cyCvD6%;caZ|q-)U#Y#vCT=&L zC%ZbD`eCgtRdZt9aioByHy84BrXe1fNx)wxRSaEaOHj#X2`IszXrXZt0IBwG^C`T1DH}%1`4rWM- znq_DDB;q)Q+J`e$e`*UH$HN&MY9#IN3QtkveJ-l2?Z^Amt@X`6h6y!H4OLxS5`LHO zp3INUmPNehI@po@y|2l1xd;UNPmi{#lKG**yE;~@o(2df%J~+h7!Zt8QbHf>h<=kE zTkT^|NGv?vPExNl4+iytU6mEjUx(YW&&Ym@E$5Zo4_v;CI7uAo)SN(iXE*eB|9Tm` z@W}?a5{=h8OPvv6y}6l^Uhr9>)Q=Ys@(!X>-@Ty*W{rNsnEac^wniwp1&@R+WFOZ0 z2wgo<)3jDoAT&kUN&9)8jmK*2(0ScWAG)o-`Ps&kB{c`k1;RX3tyt-A5ZZvJ*nh2b5~3wraCzSKDL4BzqTsW_A9MSAnH zSYZW!b^G}tSg>-w^NarOw0S^V8CW_vh^ncfw=r)K8qVwAqInMTSkL9PUsC6{k)G z+u0_>vE4F%FfZdm;QOwyf2x}$D*COF63Bp)sF8t&#Rz)w-S$0wef5-!Z5A1h{356-kgOR0tr(~%Bz!fpiw z{qpG_Kdww^{$2UstyaMw%lgJ_X2rtQtEwh-BmL#A$!F`R3$kB7slKPd>uKt`5CT)NiYhbXD^sa?Eh2?!)w zgQlRQbc3PR;tD^-9XcV$PPGC0s)hVc=joU{$cyuequC?itqPoa zzXxV;BAb^5V%!32@AY z_#_>4M2fq5+td%^m??q(!z=5vmNFdo={L?P-{Jg9`ccj=nDLWazrwUW~5a=I2e=^U2le5qaSgP<2yK)ik*KZ5n`b|;UN+857#sL?Wv+3f@Jr{f^CfA;>&8jM=D&NjRgK|jY zB7UBUY&sH!0N5|BQ(59xSBXuPvQfJaK_^CnDMZOGEq#a3z{} zUPAJ^x>B-Qu9u?O222O$WnVdLfV#&dYdln{TF%UGr6MtL1sF?$soeI=(w*ul!*eW< zvew#xhq7y5Vaq_wF&RyW+_zSC%@w;5k&M1&KOp1WsU_0tvd8($`%`lR!`Ju>#BC73 zON2dtE@?2$c5!|<{bj*Y{<#U6g5zWz0km?cn1Ev?e#M#t$g@XXVlgKEVJ7;EGw zT%cw@*I;b~%q1PgY?)Qv@zo)OarRn@;bE!X&Th_D@He`jt}$XzMEe?93AggJmi2E6 z8X+6Cra!%!F;ao55QvIm=XcerR&@ypsPW^p`2329=4O-KyG+1$Fh+uSsNK&2*&uUW z-2!sZVA_Nj2!{+K%`bK`T~h&v(X7R9<;%m$-?JT&7rtlJp?)4aLlsI@WmTt3l)2%wtSVTS$EA$`J^Jyf@@Bs|mdFL$5v;K2;1T-i`u@B}bs*b!wSDlFQU(O7-}V|nAU;Ta08_upV8g`aPVhZ{Jrsc;aMOzYTi70#e2qc{ygw> zG-rA;J1_v(NOQ1bzBA)jnWS{T$@wUGzNBm=TGR{_m&>``XK3mt|NL_bS5Km+hbXWh z7$f>DrfQ$XSL?@72{U}$51za~qABZA#A`5xY%c1Bup4o|O*fi5jrZ*3WoE->(2ZyK zA372>#D&Fphg033lf`PyXkDep=5kj$7HeTm+~yAPM|4tMX@ugMZ9ehfc(DX=m0nPr z72xqwe`Rm9vvg)MUOGOZ=GJ2|^4@CrjoaHRyxddq2?ecQ9PIq&)r+(EIZ2@0rw`Wn_FJFE=tvF8H`!zBUR$^2!2KuQA7iS>mfH87U<{kz;^ z#Z(*c$3cyIy4eaabGZZr%$po0dlGr1;(gUppRf(G$SPSf7AuLKot-UCx1SypIQy#x zD>>UhzuL)3BlKt+<+c9E%#reL`y*cCdMQ3>zE<`0F;`c`d@XQe>QHVg!EI9`x2Rxz!ph|orfmYZ@5!}QBggwLn`hxeDyA7;b` zeO=H3CtKfH_1hk6qkXkDFKv%cXu`RF_#>iyXf$%!$J#fV zma=S`@LSjuzFYJXs~f3!KLp?G*Bdrj9Ibs}rG3h5rNNa==Qx?b&{2L_r?X|!Y@ekc zkyYE%&T#lU#^BWxywq6@DsC>4*WTL1cN1PsnV)BB?qO@V4F0iF7Ry)FrN1i|XM4U+ z$?i(qr@Vhh+OhK&gL7aVVDTV)>r^`c@z-CJr5c*GUxaT_3QYzQ5nE7|x4 z(E$A-ir&5G*zE3&8h+mi7a`~oPiBEEaRSuxn_SFe)ONo*C1x0$>5sg-;}L04xNmse8#N=-xgMQ2ZZ zYz;qpr2I#(-TG``8a%M3!*OzAFfU8PQ7&?08vr@OL0osysG+r1)AH&0%ehv016T5G z*+2J~vo}oD%Bfu^U8bcqW9US+o-Z{B)FqvxUSG7n0M^z6Hs2$#cAW^p43W4%NiQ#x zPF?+^iyZ{V#knOet9|<~cc-lMpHZ-bmoaTiHdT5BW$#-#IVG{^+K!JQ%>sWhElgc< zeMg18=88+f_libdoS2RhA{A2hm;Sc7zpsrTjG5QlF!?qY)F2?gb^s%Z#Q3cV&wmA? zOGHSB$BQkm(<<4%EDzj4{_WbPM{^>}2&4<3Q+AS@Fy;CKObTiRzw*ub<2kT1v0v6aRs6*AYC zFKs24hIvM-^?A)j0&Ig36Y{qkARKqbSzG)Yy{bd+2dNP=Ic2<;!{m^&eoKWT#bzRw zX%bJRq!xjU9t*2gj%WAYUWL?^Ri-SM)sKNa_lF|0e>)Gvz!XFWpK&)aazOxMo# zENMUW3?Hw7tQJ;mTJuG#qym{;VD@4oB#GZt%3|W(=?-eMTnOEALg0Z8ybrma>8fbS zz)h^u#aQ+B>q|A8p<}cS4iqai6Jnk~x7rE})eFn!5|F`sRK;CmDn>QEaTd27^6C7L zB9);vOTklh3N;naOM33T89!0Efwh&;Nd9qZQ)J~}jttm2>RTs`ySeYyqZ+X#k}jro z?Rw~EbUR{w5Mkf;eU_9QkI|nvx`1jDp7+l_KnQzY;mdlPa75533=4SI^L+btG=EcY~V@vnepvZTwmONab%rqwo9R*thxeM~28 z$H&JG)Aa}t8ugEh<8OA^Na8adJqIs9dfxLKH?v1ToKeK10om;B{^>VQ=?BD5xB5++ zboKQs4XXoIdN$0R9H;8e|8h5BbS&i50?o(6l$ufxdm1>ztbeTmXj@pI^WlbGnL(9c zdLPdB7-WnTqZvyu(5l9xsTkQxr}v(F;()^S6Ayje4jOxhTeSm??(bPySskVtkkvbZ5f1KV#($*$G_V8nh$YY(Y=tZOraI_V;*^+efe=;M+ZwUDg0+1s&MQ?Di`P?CjR5CT2az)P z&~B8jZF5b17LNLVT7b6TCzHqyMkc0BW|y$fzW`~Wre^qsr-rUa8TCPzsgaSgTu`M( zRZLWr_*;)i_%wwuWga!(lShivVP9_QSSiT8$!aiP4?5RlYwbHYAX)5}_fX5&eQ8Wb zlTSmv8lFlcO85NdqY&~o-$bJPR+Rw%2`1Sy zHeyU&TcW+i1^Uo$7KU`xI!vn7oN!}%_7amr&l!szyJV* z=F|{iXBXaZn~s8lVwziD!l|7%-1iCX0h6Q`klvgdzQQZ+OsB)MVqu@ke?=vbZ~>sn zRGkw`reV8xW_&!5hiIvo7-(sEnLb&HmHd3vzq%*}8XPnf6pVD9VU+rTHrbtGKo!t> z(+WSnO&0mjO?#MVrMnR0jp0WS&tzB#02RG*Px29dx5y?SaJsIA*FE zEqS&es~AL6+k`g-5p*=7Epvn55L;o)X!NYVZ4HWWOu+D5oB*r@%xFV)YtJ6{N;T*V zrwSDmuvn6E23L>Av8!7RP7gzQ1niL($WKb%u`#%*XN;WI(!p&FpR3$$LFK@ybt!y` zxb1aHlihshF1>4iuG=9~+^kdIfXY49he-<1>qic*1?6j_r?lgn1I@V7ll@@(oNpb; zCWLm%0iRBD6&Pt_ZLyh{m9w5>QL%n?^?bmoJGg(0A{QANiDL}deqxE2vTNhs$c%56 z%?2=+elbliaB*_3P48g6c5o{FNVk=}$fBk+mE(bb$#p|t~ ze7xcUFN@3`vx)m^Zcm0qN1qa=vqu&D!O2?o zbAdY{AmEBxOA+zxDNTeGagdVHpZ(OV)Z^3mj+}Lq&nzqSkGVe|AgNR#Ol{rgw|-~< zm`eDLH=@OGOkdKQs~*ZbxzHNlKSeCZv8h^D!&$v(PmtQ zzYxicUnI;Yo0dLREKXBJrG3fFf|z{KG1BJ_ijGuely!|^eZpR^Zft(>48=82gA*6u z)@*##=L<_8kxvS+XSp?)prKW-L- zgQ;mIjCM1Wxz)TaC`6*JynG8kj}1>oW!^zX7O8JeAp8=hr$nk|5HNqy+~LHVxXGVO>;z)%H)&T-qkPWx7-?(WlQ4zIk1 z39()1+Y?}7^k>4HdG?-{!++X&ynFegy}DdD24=@*HXQykV0@9$uc3HoNgAv)+#M_| zmh_Vn%KuwpKnKl7S?tlGebdsMP3!SN-(N_CBWzhpPAwzA)kDo*_}x-icyHpSbC4~V zGa%|{_@)e6DE*XouWqFH7L#i!s-I0J_h*H-EL-U|AhM6jfMEqRW^Sh1i!ccmq2|A? zPh#%{!E#RX6F@F7yH?uG7HucotP~?eX2gH_PW!r)^NAky=`oY?D8ks#upJ|`BnvpxRb1F>7Jr z4pvQOC(D1wfX1uo<6k)xj*t#GLvH{KT&KU~b^idY6f0^TY&BfqzG2_0&e*zP z$R{HM5=J=UZK*BToR}cjA=(R0PRF|_Emz29_1onR2J02sr(2#9!B(cc#9+|};dk`Y z(#e3shZt%e83@Nd5}`?VwlAD#A=Jk+-gzLwtaa*CpQdowtT<*^PTiuh)Bm_6ShT2M z;si96e*rD9(Y;t>aXYJ^phTzGajw~jX=7(c)_$ya+|0dV*+FEbI6Js$v(g`2fH!XP zQrz@E_r*#RCh}*SygakdFU;y}SAQ|Y#m6(GMBkv)@IRWw5)N<`*Ii8fXFZt%532p) z2G;>a&sRip8uO$K{9Vwplby}i`nS*G=hSgk#1oen3Q9JNfa&wq9*+aKy;XE}kXxw! zXwmp4hla%FF8cn?Y+3S@&3cU$e#U(uO_uN&Goah?LGOF(G{rU3t62Fddrz- zLsbnm2jhMF-fwZET@Zjw-|pg>`i#`N9Z)0la(+qC-ZzQeKUIkG(`LGhhnSm=;WjDF z)Uw*r3LTj!22t>Rug5=)w=g*7OvI4d}$GvvO`U2Z`|D`Aa zGg)y+#1ECyn`095Pq_(jz-@|=BD|bF+Lj?Mj~pD-O=o?GU`|@dBC|n7k~ zw-{7q*^gJ+i(UEekfa5pw<>>+gVn)ugb#EyuMO<;WN?o$s z$tN!egN36u-(xS##JqR&=35}$T3iu<&U?5|ZNWBA^guG9kV%p$pOYHQ*z93dstk+g zCqcgf-;C{vTpdf52*QX+#q`q}yV|ui+TFOc1j9Os+89RTPy_@*u0S-Gd8_Be5<@Y^ zCD}|O4|#nll*5&_cQR+$;mdZ>#!3Q47(P+gs*Pmu*e=q=ov3naU^-(cNccqDwKawp zmlI)P6w2;HIs5mNwU(q=jq-2q6ds_)o3w^j%Uv`S14|YJBKi{?XHRSS>xvzu;?x9m z1TrLYE-tycjCa-W6m-%B=A2V8c!0<}8pgB;9E`;!dHFIH{-4j~0kePOz(Z+O%_u1_ zAOK)(Ht%x>b!NK~)-xqMAuWD~!-cA#^cV4OWXCADJ%KlP_i(YiSb%rE^k#TonaJ9k zuLz5Zj&3>I>%BPl9|HObIKOw4D<~=+Y)#s?hb@4Vfh`qf{=V&#BY^6Oh>EJ=@$x)f zAIe8bUXj1o3L1Z^DypN0w0G}XJfYgeQp6phf5C|%Nb-+uPLIDRx z=O;_vY9Fzwq2X2YVbolh{m4L(pBplmZVvs3lx3Lvt zc6x{vASI^*kV}s5$_}(~mJD|M)1Ol)TfPri@QbFZ#wZ_z#Kg>libf2hdnduOx8B(Z zDQbr_T;3{=(wq-2Y$*6zURM{0u3YNWT%T%*@z_dHV_U46TjLN;Hvtf{vI)mUHhb8( z<^DSr2kSWZ_;^^#OxRx?{knXm{o9o<`HhjiHM4WWX|Hy3414*~t(B+ehbMS2EHKI2 zq3Sg3w|xxfSARt?xmVcFk9o`VI-lLNc&4E|H?2B%!Lw^VRH66OStGE~#>6`sJ)}~d zS|QF*F+De2&_Av+mR6=#f8Faz)=A`+H*3XOVnRY%pS4lGD~Hx@k4EnJW?*2Tr^HSL z+PXG5F|nk=vr8i=C`d8?dzqnCVF?@#&&zw>2Y>UJ_6m5Bkl1Su#$%v7oSdK~fQ0bD zcv<~g+S-C&y#m9rnPznK_4!xlnZ5z}f#k{=Mvgt+D4=rcUdD1%(m&+n+CL??yb22n zUNEsHjk~X6Zg6W@+!N$vU4Hz?vfa=k@n6v1vLIM^V0p!#e(kcbia>z(Rr7kG^ve#x z7HF?r?pslhE4v)o!L1*A{BL^%)uz%t>P@A9rj)RzQU%RwZixQ5;D4TlLA4b1BGCMH zuMq+PfDSUEzN@3f(%nao@-ffRt8;k zbL}0#Xhz{5kAGhl&k3BI!V7QCjZX5$DegeDcgHK?_Am6&cb$bXJSJnb2U;Y;Az5{w zJ!)|$CiXoEW$t-hX?stN*Dq&k)_EMu=8}-mC%?%X6V1ceez-z%+vpeC_8>e0`s=Fn zdfil4SXgJ&$_|#p%ri-l{+41$Za)`LNgBK?HF_ShPtYz-Q) z%<;_7FO#49iT2&9wC3b8ww?ceKXXdLrnv!t=B~ibE(1Ti<%Qn=1!K2P>yy|$yvZ-nSD(W3t4KQ}w|ae>?4Bx1 z&E2jaTIg2_(daK5^i}%4h59$v+wGn!lyo5s-by~=VpM&Ls-6&GtHm9^;PyV(yD*B zM@#B*M%oi0)L~xzPt8o!-Ig^E#cr)yGp@_%RLtVUueyHq%7CkDa=Hs$o2#L2 zT~CCkNbX!9axTG|@^p9$y>^F>CyCQtL-J2=*w7hg<_%p-a=MtT|09wwK0Wy&oELUj zQ<&%X1a{4v4fB;tJF`Ms+)a1m%wy=MrV2)t9}~dcy$F@lfoqIH)Wla_;*Ai7)5Md@l@{~T_6Y*=hx&7S_|7V z3Uc1jcDJA?s}?J(Dd&8^sdxnz?zackO`-{JgGrC)tCK4gyfe_dSiqe5*QG8BUz~X&d$o5}BZgTZp0V#N^RlK+Yw~XGj?0SmH#d#P{HSw7_WUM=)JDX=js}A8~cX%GV2}SFXl9Pf?O8 zNVvLwAYfwcIiKQEv^84|`Sl@15<7 z{`o@#xAP!{niBhgJ69j|LW~$z8HV|J&(DH%uCpEpuHCx(f4>=6*c|O^ZUIh#?why5 z6W?)D75c`pD5-uKhkruTbzLQ2+XBj1 z_R`R%h_^=hYb1$d`AA@iGemD)PuW};eju7k>xl)*-tHLhoB504W=uKH0zXdpM z6Kv6sB0cl(m_~Fs^>X)4rq(Kz^HnJF{NHHV-!D(DiQT15;r`cAr1q*jr~R0g)DwPU%KPx`!NEx_f9C6$PccySr;>r8|cnI)`o; z7&wpneRc1B&R=kTzjr=}ALf~vyVknay4SicCb0{8Y@XbqNPMxrWP}Zz$TPt)oWy5X zgsw0s7BPFg^TdwSCvV-&c!uS(cN4@+zXbatAUzl@-i*E&LmkEr6?8UkjNYXrYXZNW%r?M5zYQC?EZ+97DU^97JV;^>#IYW%`*B<+@#`K)62hiItW-2PAJ3hb; zvvVk*8wB)0jls(l&*-@<9Td$x-|XrZWR+(==VGf28oRcGU-~(z0iWt zGt06v4$$|AJR=<^Rj1J`{?QQWKjIlAPWX5f%;CRA!V}y33&EEe z4wvmdX{ItYUgCmbi#w3(<@&&_C-85_zZIHqNhpk)-4R{(Kf?7#Y8B-U4PQ#}g28>O zfMT>Z(``z7hl-LwJjZ9GJzk4FMz#bd)`e%vioO z+SW@+s_S3CTiBBAyF=ROUw)NXNtP~ZrEkDd(5x?%$Gu`0@m`|8ei5x}-^tp=m0%HO zY8U$%@2NFk&lba7IT9oi|1^qp#iww;<&!T63w9^8P$6Mysd+_;T0C zV#X0)R%_@1Lc;IvU724CbBp&Wmhi`>>&FDfuy!|0(e!D{s{WcqEK(8f0vPX2>c&3y zS2h%eG|;kaiiKsZlL$>s=af*|zWsd|bfl=3r~{6s<^S|!xvDO@O!Qk7;ghK*Hd9+v z6XYOCVVJ~|dSOFDc6IY|LMHqPF?_hpgPR3EgFo=cvMpj2`D_h~#Vk}?Lh);-N2j8M z!~LnSj~OuTL8k_~0UBc?2~xioGwmtkX=T(=SPfguhpJy4~e+Yqo&2>_c(*&>db^Srg zEymCz5E|bgZ6(=soo0{`jz0x|_iep^#eod(=<95#k4XLsO^PGi4ucS6Z)9!@{XpN+Bu<$>mO8?_v*x`Xk$(LDn|yaGbe!7Fm?2 z3R{U>(`vIp>iA!$N0mU#YL5I4{n1+ZRSi}(N!qtbVOegr=&gGTc9~0|oZ>~V#%PZ} za_nx9O=Q%TSGK8GRB4?M>wI|iyo>gA4qWQ*F%B^F9QOEEjM-%9dO(inIh*vjS=O?Gk`=XBoQdg5gqrC+99xe+ zw%PyW^Kj&F&O^L;fAD^o>=<>!PlLe>$P|Xfz;ZI5t9p?jxD|9=A}|6Dx%oUl<7lrrH-FE@SE+@(tp*G{QG{P(c}tS zHu3Nd$)iPzNAyXLwx}9scV$QAKr?%8<3vpbeq&)2gus26Ayi@;^BP1(DM1(UH;;~YiQ@h zlqVABB52Ae6=^&bMl%hLSlLj!aX)>Gh(`*Cn?hYE+6}eW^|}oUk-}BIV@N7^V#Kr; zGJ&T`$kAQ`d#R>C%w{F>^yq8aQ8+2kx%P102o)Z_<)cXZUFR-k7(bgeU$Wlg7x`` zK31qa;B?9`=3B~_tP*M?3!CdwInreyW`ApHI_H5p_-;~j6M2L!~ zw2bfgMMtfynC|2;v2v>&iOKllgFos-a0p_epf}*=31muXSS|2C- zGkq>vJ>P&HpG4{!{VNyH&XL@j(Y!LOhhApbV##ogF5I<^X}Fvr2%%>rPtkzu*~jn@ zyfi8C_PvFZ82S$0pl*J z*kNE-A)U9=seV0dtErGsGRVA!lJyZA_mrLXvhkTSa2Q53= zx^|el#vJsdD-}Qu9c;&vBSa$)Nb|?~%F?>H9Bg?r=#X8Ni%j&W-YVd|#>1uRVzy&R zh8fOKQ}5vT3z0ye@_j&q_4ciJ5;1z#UPjh_d!B&jmX+z{QyU~slX(*OKoMdI6Dzy= z(*o1m;PG?dc%uCLaqhRIjm4b5EpE?`?!ne3NaIR8C0EoJ&r=&6QfK95cEPLe@EB2d39Nw~`{woA>5(wu;ZM87as z&)7iauznnJFsh(;tZQ;n+Ck|=VMq3vE*g=fN;U`P#P2R}4PqiAH=LjYU)~YyVE1+Q zCq1;YqXn*NUUOv8IalPh0ZRj5%3a1@44;(3VarPQqJazbf(bLH@5m^4(9QP%P=(|8(UWsvQ zk;L|ts%a#}n+)VB@_(c9TenCFgPltl0{RHVEVgL7IbZXs+@7i^ zD5jAUd{|pRrh2fDJK(J(0QFsY z+_Kn{vPir}5VXjkr+|Uug2xck}dD-p`uiy+wX*TGb9#Yu? zGGtm;%o4{4&ZkjnFiACWl2j#OG@AY$O#zS7K7b)tv&ZmUD1j)5|Gd>>N%s|baEBSz@aSx~qxly6y)TD9+w=0k$wGhc|;`tQo=yTSBpk9iZ-- zKJ(ixRsQtr*`I$oZFir2LoQ&sy!)b^@!9kao$AFa?Zy@N3^wFT;WzeZRpbL^dvTZA za+|J!T5NFsgSF7^mVXXXlK~cn7Mf>Nee=wrpDmdGEnQ@MgyPG*-N`_H@jQfl0Edhp zqgiXkeFD?R|Gg#r&-Z`8lZTAbt3nGL?dghzlg;_Z{_r=A59ZfY2!rF31tr~SpGuSt zl5zv?ZjH9=j+HonA8z3J*AJ;DJYn=)qMWl|s7)h%mtGaGJYG=}db{I98mx%bZpbe! zv?`eM+~cWzhj;EyVeJpz{5vv6N$(!~I%Ge8#L!!MKZXUe^u=Mlyo$;t_-1ff= zt0h)aYUp9y#f@sDRqv$D#d8T>>1j*D8Ikq=`^9kHr_}8-^k)_ysA0B3X1eLFcBCFN$xoG`VI2tmF zyT^Da0M@Ine=V%M+HP$Ce+G|{x+N_L5{xx9Ma`HT5xOesDcK0)!v`OlWs1G{=PA6E zxR2ir*Z-!%VJ3QdUf|3Su0D=^_A+spBv~%Ei~Ke*cXDbmFNGMo7?4Lu^ zdFDqMPaNYU zm4?(zQ>q&e0nv{4Nv>|=mKmFvvx0aY>Sf6@JlKE@n0DCr!9PC0EG^P~Zrp0H?Qww; zoU;Bc6TVA5LvXZ`k@^&p4ks&Z&~g1F*Fr2y+E^tI-ZJOkNJAi;$B(6TR<++#mRBe{b?e^A%D>H(t<3Z9qxw`P@9`5Qjy+!hWLSQP zcNWc49n(TQCeck{_P}yf=nMPU%4awrNTF)jEsaQ7ea5ndLm>9gZynNhTP;#V?(S^s z5lE)dohTGIS7X5j4E)u@akEU!xybwq-ap-Qi?A3>U^4&b5&Q5|I`4x2-LUA>{Rb1F zjS`VtvB3iItr?X}^t<6f(nW9nZAFQ?s`!cNG#I5@ALpcvB_|7Pv;zFu!}U$#$_?4u zUvE?Xd&9b}aQUshla(QceWVa z|HZ-kfH#g*Wt_0pSO?0_ELJw0cLX?1A^}phz`*0gZBjkG`F()kYyVzGNQmjjPoF-C z+-QWx#SOz8V-D~JhAgUn+p-p=zsyeJ2YfNu*1*i#z=f1o!NeAY+i~|M2aC0SB+xU5 zJ`5O)W&tjI5)eYh;N97*UQt{TZi6<-17|?u2~b&L5E0QMn+7_T2Th@P#Ka80JuE5N zlobOYdEV09X2h=JwQ5{-iA&7BQa!U9NxXQu*OV+^8mvC3Wz*=@HS`{IwBJ9WCj_vN zCwoqL(CPuC}@q()j;F2cF ze|+ap*Jn3UHe=1G&QgNVJ0^AO*|@%gLF(`T6PL75=t}@=93>ZtObp8@(y(Gmtw>wd z^j0T8d^q{~ruSXu%V70;U;g~k zd~+J0KKMq|7a-4uIWM-fq)rR@eEP%k>L6)hGq za7d4*w`~2se95!*INrGErq#QP>0#PiI%O3=c(VmpE`ST4wkgX*7irde_a^GC>DVoD zo}~iip_Bc6%|5EAL!w8jS-VN^51U-!v_`R?0C~OKr_mJZuNhf zr_Mi!0Jru5=+Z=+&h0fzF{h{%0E{xqfPTeWXJ@sYWS}xw&O%YrOfsfe=iA@u)y_vh z-Crt>g3y7Pz5O?*^a@SuDi86`5`Ta64f9`E5Yjc!?R~Mjp6q!D-kdDcV1lAycFP^u zfSMl>(I#~}HBj_cW^ca)StG&|aM=W{Ye1P2o893I!#}(Gr$tjd4~H8)A`rF|?klf? zIv%Igxx;%zp0eySc((S}y!$LsOG{TcUs`<1nc{s|7DO^$KOZc#Go~ya2&xA(GGRSE z(t|&Q+)oAft{!Hg=>5yBF2bXFqjR!yvU75x@CgB0(>y>=dHfw4|oa?9~=D9hNk67u4oq&pC!a=@9+WzY>p*uFCzwobDD191hlgQq)~d_uRLy=8k5my+fx;G-vz5K zf&M0ui-m$wWs+@?LCnOcZI&#Qrcg&QcIO?PBJcf6f&KFHpg`VAF>j0mSoJA!d!h_nN!u=h={`yMltgM|G7s0(xdAevlkCUj%N|nv8ncMR& zXF4vive~V~mg~V}XY(#GV+L`+B-=E7FQAVQ)dVIJh<9$N3*e|Vk`gZMHJ`KVpKR3p zm>1{g{_06SO&6#F=r#D|FJu0pWBBKAg9RT^FYOi8%n6^ZQ!qabsE3M)T>xFy$KNGV zr2M)~DiCh#)&|GZJ~WBmYYUX3Ki;;2K&L5k$&Yr@TI}HC_xzn0GhdFdb_0g@~MXl`c}<49@AaNU5G+lQz#F zdTIJc5MLv|e#+!z(AQ6$JQ3`$+%lwn@Pe8dF@iwAR>~0wK*VsZhquqF&x&p1x+w+S zk|eM`2eaRWxeQzk^6l>0^jJqmMZsM5Y|wm7!c9|r;JiF@WG_&W8^@7D!ene{$N}`X z6(c+=tbT;2zFqN0oog=q;M(Kf?^O%q)vPct80Rh+OT* z&O@8CzI*pZ_is%U?I3bW41x)IW5@;E+w`-eqTqq^rY<|vqCD$U>$>NI2_;enK9MOm zdl{G%q}vM{t`j;gy(xWs(A`A)Tb;@ZK~SSUjds#H0{?11ToOz>!HcnT!1pp3KOy&C zuAz^>HtA8)sWYf52`NFbzs&re>qidgxLht9N^D680u6i6lhqsw=poGDzRNrUvXbjJ z-mjobLrpU^Wl4_D`o))6VzB{*N?7hx7;4;haN)VAsBwwqG*7q5POO&&vr{3a zro?`aH|za90>BZ3#YJVw16_#)q2>YJX($gv_V9>yC^07LL>eE9)~TO%vyA;Tp6I`vM_ouHd%eTh6S@^9aMa+o=B zOP#MIsz9Akq>9_#Q(#pfBvg;91-6krD%72_gG0}KwaSlzi1}iDUC$d)>2{enN*G1)&#*FW$c1wPRF&W^)AWeiBYA4Wp%lW!l<0Vw~7=mqDA=Q;V_M zgAft4fvKtbO1*HCa0kbFU%auP^7#G%ZA$a;VSyLTkg{*Z@0sIQDFk*((CjQJ z;#f2!&}K3>?9C^j*)mzcLoKPgg3%bi8X@3CQ7ts>J{`lM~F8K(=&oh$MdvGK8qp83kopqJ}X?Oz;Ahs zhi5Fv!NAVmlNcM=)^>OGG#{KH-hE&AW@+o%%VP^;>XjWD#dV=oFOHYFw6Zb_5H4Nr z)S4iBTG zm$#NLTSG*0va$fNL&$Om#1Dsz$;~Vl;N}NJgeo92&K>C5Uki83@Mp^8L%8R0ca9h8 zxM!eer2js4qg`d?@GE~T<64K!LxhV9vrSlU3~O9%vOsi7O3FbW&W^w-1)F5vb1A8B zK)2iYxR_IVbZo2!rD1Jk9~@qE^Wozm?P!^O8Er6y2;{JBuCYFZR5&ul_L*>aXlSX? z!4IIH=kM|V#~vw$$5&Y>xL%9-#96A9u(;*9pCEyYBF9q|`%M4^|D?oV<9N zLS`oRgLpV&R8JTXL#-ZWootO?pSRWwDm;T8w%IRpe*X>!RE+K{Uo0-Z2awZ$UTn92 zGNOL~O-@aD9Ztni`QdU~hBbLz4kidlKuvUY=Mroi%AGDO0KK2&*TJO1f?g<<VrGfgVy&ls)_z!M>)C!yegK+==12d*!26jI!G z;Di~5=@3UCFg!h!!3z`^F`LSVjAr*Aud9?OjXpmV1*mJ@jE5#9Fj{^M2vKG#I=h3O zMIf+DfTh?fV7-n>PR-t^9WX5 z_X9qkiwN2qLF1mxY{1G|&H#9u0}vt^`hKV5JtF{EDs&s0B?|KNn%}gF2MweMn1&Xn zrt0r*gAa2=lyNixx`u1*dd)mVD)C^=MvE`s`+xxh0@3B(XpFn+C1LT=4t6(9t$w)K znVG~d9U%}BzQgywi=<*d{EWNxp8(t1W&Uy@Dn^gZD~wRj8*+JC1gsl-Y)V2xK~QV0 z#_XpXuPrh(FGf=R-mb}`mb9Lpo=B+e>^(qM>0sYZohctU{QwKPZj;rw?^i&cC4x4% zSI_<-%JtIow3!v#qzN^hFerHP+2E5O1+n$)ZSf0)m&?TaRtXl}W54fLrKMZIENCB= z1AOh_H8nNAV|Lk=M+`u$rE&)odlx`BqoXrZQ*t+6@<4nitJn4+JLz{WV0s$WY}+W{ zyuB>eblGEB0tm&&l%7vjwJ4y1Ik4c7}x9>_5)J)g5gT z?c}++tUh?eL9o<#Cc?SZP>}4g`z0rtyyVyUyfymhXBN6|A83W-M_o}1`&IZgaC zMA!mE@dWUi947trY4CYCd}n6QI}-9VX5n~qw1=z(FkIC~86m?r)l=h+K?uP#3;=n#k#v?-?Cb6a=~tIIx`lL@t|IWg3jH=NA`%s#{G- z;{nCr>-JX)UElY=wzJ}CnA**m@VVJmwGN=cVP${EqS6Af7Qos(1@nOB2?a2Ly+g`x_4)T&_PvjaNJ;}{boMC>2Ae3+3;G)P6)QwiPVVFk_Z}8jzEVcr z!4PG(q@-l6_l||EY-L16L`;kV8in15BwKN=v!`NWfANBWft{a!dieWr?+idrS_{Av z0I!-9(Qd#+vn(eMV4c>Z!9LgJg8f#)gLP``yvzY@k zEPgHRhj0JBP$(_!L7M(ug~tCL|2>np zO8+-?zbE5=+vfLF{J%%W>U!^HP6>F!hkRNt=GBEc>+x~!U2@$Aw`98d`!9CZSx;~6fe)Lw5rY4x(zQAs;q1c4LeE*=}12aNbBnEhWP+Gyvz9)e`Mv^w4_%Y%WGs#NIKB+{u_2Gr{3f-7u-G*6J+ zW=p$kX{pFKzLU#>n8A6(PSYg{OX=EN*ln+UCG&2aojpW(eR6u*!`;op?ULJaxEg%q z%q^xGa{bC<W25rUHC;%?IU917q;)SHq)v$KCp?gRA(7D-_eS5U2mn> z-ri;u^vWtf2l{#k$7Rw?Jq!MFMd2&Jz0wHK9EUqr_F9m9ri)n!m6xtsr+E z^2d=*Gco@OVZR(R4ZlIlg2Y%{heTE4D!IyGQkTf{^Om`tgb7xPv+V=`9k+^cZ%OndX4OJEi* znrBwNiTvz6Cok_GBYkA(cLsE<;*fC_yY-%8$V^R6b~lf!jo$?85j}nSG`C()Los!M z8{k5|+3ErWEyPjMs#ApC-9VpjwY9FHu`$=uVh%$Ccx$LBi9W9zo0ywbH13F%k@OmN zc<4Y4J*+njD3z2VaNapw^rVyj7fGf%{f7)ij2Mu?6n`jDvoUgiOXsB zaO4AG_x=sYyb&_ws!HI*{0o=CV)v?Xf{tq0qx@GP;L~$&M`_5NykBD zh@Ng|A3nPNxVxKNcfnl^jWR@e`4CaS9ilz58H*Rt6B{=R8;+*(i2@!kt~#m~kOZ?+ zfGc}V{j*%)14F)iqi>zwm87Gsm8_BLWL2x5b9Oe30_tG&fVBbdkt7x-!$|u>Q=DzY zc!R26&%Fi3DlEHQ9_Gnt2=USOCLX3G z{64^Hu5@eGnKqcbt50%oy0K<9Jo166hDNFBgt)qT%_44ya-YQFEsb|pvTeI$BmmCA zo_<{K)I2{^A0H9m*ceJ94Hx}(9AbApd;el$rqg!zoCgTo2?9)arpw+8+qg}5pvH=3 zhTsS)dP;fnG#49iLVR?&(V`RVShIRJvqhGV4_sf>d0Je*2ghBwSFF2rp)M>b9cVe7 zZhb#szS^Or_S2bOYj?N#My|c1=~boWB`PdLum~_LS9m`W-fM!@jTP+-6CFfve3j_5 z^Tu?VV~8FU#mUSJIr1e45#)b!`&!9jyqJ~`43)1BMr5)$EY(oFq-iVCtI(LU9x9F7 z)yW%(xclJNLvuuN#T9*2OHU69esirr&-egyA=tp$dbH43AS*xp9ZEt{`fCJKl$cZP znr|S9uUOoc({}1Qt!xlk_rt;EEYfssKxY?iJwiB9{Fx;dZE1Hh-30#wUnNu%@^+7C*O28D=C##TaS1WHcE_WACzm5S$~V#$4i*mKjg2~7&Ch*m zMnK9D5qMVC*2kS0_nYnIYN#$Q+<1!hq@?7r?&T}>vzC5Vcy-oA!bsN@67Vg&RU({5JnDd+N&si6b z>8G)n5|9fE_|H@-R^}Vxli@e=iD8SIt5i8nT}(wO3M;cZjh?SqxbwjQr>F$VDS@Sq zs+E;C3-}-CJ3hU$MRoKu8Od*WcwAg?S$%3&JdI6E0PEuFei6M-Z*dy>Ep>r-q`deh zdRtP~DKniO`U#RGR*ySciCWMN%>8%?#axrwKp5v^j%m<6y-g^C%yJ?a%RHC>HH z%K?IWQLO~eR5H56R$lT8%sbS{^j~4Dj0F4FKBk~p-rQuyCg-ls@?7uf>$=x$PfaUO zFTUe$L;aNZ1wXr>u&^e}Q`S9;@`u!VUE%A-y~@fFD;5!-x?G=KK3Q2Y>g;&e{VtDI zT>?kNsO_XL(24%;iUvK8jIAZ(R?7mhST^fPi<)j+p6+#Ua4<4EJM*OuAS~G4-{|dQ zB5nS~r;v}IAB5u_L=4f^=8{mYX5iv#2i9gFAiiT((005drYDk_^Xxh+BK8ppAz@Nj z^4i)OI73Zm884?89G}?eb%kHWgpFGP#K@`wZQs9_ofnMaj?h6Db8AJeBsi6juE3CN=qw7{siB8 zF_osGqUz+~JvHfuRQ#RgMAGQCHeLx@S{SYLtK!&A{+Tm}=STVOX`-KN=IESxW}8V*BbnY5Jj z@e%Iv$wSToZsXb~0W+3{#sfRq+D_Sf8Mh&JuX)!;T-GX`QcvxI;g8YP9*6~I=q@8so+1+_POqS@!WdOVq9U6;mQF!H_9^^$42 z3*;-i-{~ttPB4^yM5QY`zyKk;r4IOPLqlpR5<@TVIO>W_QRqWEK?6#<(Kz;U(y%8c zY00elu1?I+*47q9s!(S5`xie-dbJ#;h*RX0lMAI;(jh&1{y^Xt`}Jpn!7hNficQ)SdE{4c7`W{FxEvLsYC%RqFN+C$iMH}n4&}XOQ zMwXVmUv2X&2YLr@HWSXWG@TcQh5;>l(hsI8Y(NAo-@9BY(nN{=rD`3J5y$k ze!!Pg7dK)Auip#h-l>l*$H)uODl<9-faXyZSBQVM^z?4B?wws&NwarW)EHV0b$}Ol zv^g>Qlr`4<`~yv+N_Te-Q@jWov_ZrbH}CNDNEYYq zM*AoLJJi<+T~Ig_lQ4@5K}d^(YLYuP1^H#6Jx4Vd+}PEoQ+EQ}`}iHBe;-NdzF37z zWuvWC@6e=z+1uN)5I?{IB@03b@YrbAzl&+i^7UG2RfzK_l$|F(!8+ZTDw+4eB`SP} zGnTjPHx1cVa|mezjM@Eeatv%*&`iPZo&be+iNFseZBHkc<(%_epbg zK5sUALw2Nd`>bX&v!?Adv=^Tncm03?v@3{aN45~BXi_J)JwI9C9>kQeBsKyhExL>rz zW5$qGX8$l{niD2wH1MT6f>Za?|G{a+oI%OM^ z*rq!YU&d??FDog=a@e~?EVfd?)FVNq1svI)RCpy<>l|DbYAK}tw%2FXmHoKn*Ba}^ zjbm}fwMj%J&WqdKgaauIbaaaAU7yO)E-sA#6LD?eUDGjY|@9v`t!6sp@MG+Le%iiou<0{ez-Or5gE!28$CdT7p zViPHAC;F2XSMSvC0#LhaQK<0}mxtGkk8cVkmOFbd^B$SNu9zDOmqy698eG+lc8=bs zXmY%hi8~=LH|%YjF)^@Gcq~VPw$zU~oQZ6VRvVtm3fkAbkg3uiFoG;KDnQki??~5z zoctNjeiZBJvaPEl4ge`dVcZ}hy^?F@#^%^VvZ3c^#P|&ic(z1q!l#ia;~ZWOmu_xW z`T7g4{<-h=lU=m&RaQC0`%ye1Twkp?4!ZMKUTEfh1p$4aEldRaBoA-h+P4jlIa06B z@IE?P9dZOga@9N~$>LC27I|+jH)qa5$fpfUeJjVt=tZDuYEjZ8TCL*!S=lr|3^9sY z9i@d*ae1M>$$=|WesEjQiPL0uw7L3FwYH|eu$11nFelwp&1ovjahx!Qmn0-wd7tA&JVxS_ zC9pv8kd=VSl@KDC>sXd3#d19mC3TKyaL(8tGVSwatyv{+h;Oa+C%W3rJLeTRINOIY zK=^1zUN+bxKvNhxGo`wyx8|Y3rRov77R5r1oFexgV&&`R=!)tP$3=_i&3||>+Yjn) z60jJ|=46dZbm%|4aIhO01+9MNvW2IqB|XY3idH_|S-0IJ4pB8RhWNCNl)ju&c+wko zKu2~ZML5DlN#rKAjxuNkt4ArSBcY0skd8WBIr}N``T+Sv3M;middU^MF_csn zT{DmZ$I{tb-6`0LYn|<5#o3vsXC{Kd_yCj+e;zm%nJKa+&*zBJ2%CWcDF{dbVfVQ7 zE9%Q!GpMeh@sjC5nGyzliEb0yQH?Depfl1?_aF&3ax{_U)P-4H%*KiA%~!~AgQPk5 zoJNRs0C{=!(Z0O-r?6Gj%kO>k^EwZN7>SnS2@Ti}) zeV)|wKA&`zh-4?5>|x}{in7@a{5CR2vlXelP`D$V#v2aJMx&~TNho1TIEAEhj;6s1 zNms^iyg!0$R$1>eLLTB$OmdyXux4Gzjnns&%f;7(`M#p(T=A`U8kSu?9*O7iK!tST z>_H$$_soY>dS3BOgVy@aPe^n=M+^X-^=xM@z4z_NYsNUB2t`;{Hc*`*2&|<+IvS8C z%>bEkK^B_{u=2T_W**f0RpH7zEN*zqGs}%B(|YA`w@b++TUC%A0r?EK3h%I-KeJ?C zj(Xp$)*nVvj~>2})2fX4q>_v&PcFb_JrXnJ9)``|!NUvi>@Q1vL2_BfTn!6UU&Gv| z1gGffCE=9!t*orG&f^6SIF=8;$9@Y5Xb%oLNac4^Xbz-Y? z{L*5fr<*{K%FL(TbJ~jOj9lw&y-H!c3H|2bf%||Zn>9K-iP!!0b(BoD$&Neq%PoL} zZm=ot8pz}j`!#G3rrGQ!hmRUjv=pT8}`?8>+tomNuID$vg7U{)jOm_JMcBw@1JLYLIJ#T#!Eah!GM*Sp0V|gm(n;iZ&);5-HwPaQSoPaJ=i-qXd-^X1yy9$=2*T zo0}|z0V=X2(?)Xo%2(vr2!K6>g@sv9^zvf~2ND>nL}s{)V9k4v94DB#s%eACLZ_oA zWAFJ0JHUG^U2yj>g5vWXGrzyK<|SfZI&dbd&mVsFcyS^}?wWy`&wjCCKG|dQW{g2H z&kwbKq=y~+fzweQb)d|L10r&Fskw}leqPl9?5C({jgvDeP#!0G!WMw5>MRKpnP3tf z_KIN7uuOIti+H2-&PMd*F-bPg>T_nJ3R8JOuce{=GFCT#+bgawfA}FBm%pu zb(GkvRy_xNUQ7GiM0kMdbAA>$tdG{|}l0O^C(z4Ydto88?Qsoq}ig(xF zt6nSO5A<3RLyPq^C(t~|*Ojq2NI&LhW233+7N{z;Y8viJ-w6&^ek)z z39)>-g^FWiEFg^Ir4m99eNQTg9thJkS74<;l-!5BOp)| z7+K9IldIDpZS9e@VcP{dt}#*hd0&wjDXoE7B9S2IA{l!AF#zK)kGoqz6(SbL9Ka8Y zb`XzlwA+m&6@uM;+IM{t)=7iUbLvl;GBxTQDx*+5Z>sAmfi4WUo@sEuNw)Ssb@2xZ zVm4P+UJ|~Ytdil#@osk5Bwao><}Hm@5Eu#P^ehh`xd-ZC<1n8zse&8hS4x6O?Vcs7l z9vK8>QDq3))YA9^FCedn5rWPV%2z{_TE?vIQmuwuYXNDG^~&42WR?AM{@e@tYbEnQ zqDo3&T+}c{RRQd*wzh`NXiSpXXEm4KSRBECCw0JXx~5QWV(t-9E;g~#mNmoyKm|N! zbU9}@q^>^aI|#6!Fo~M2Nx4&l>+NokS#O4B9);J^#K1Uc<*{QwVis5M*!()+q>+TR+Cj{N7g#_y^IyDi->PT z&ECwNKofwjkAz^h3Y|Gu47>B?cvbi+F_(Fkw}e)?e%*G4r`9IiBNRkqakpXHpaq;o23$ zpVRrPN5ov#dCu~NOD?au&Yr68t93B9z7ErK_IF$zaifnje#_l7-|`q4^BmSe*q>4@ zdAZv4nkc!@pE2E5YXG>57)twDj1UxYD~XC%XuMW%|AvU2Y}!Pi|F99=0Td- z9U5|Pt51G8H7c<-nl-X9u9pD$NeRP=C2ok9yafr|A2;vXW(J@H#>I-Z$gZu;WiN!i z$yl>s>`z8z~aR6nUO3f8Qkg42Pf@(b=oyH~!N9!|NTrt<>f4_=fVyrH&GgnQ zf+<%vSCX)qMW&OTY9LFcHMEJZoOdRlpL{S(@dWB^JCKi~WBRoquCE2Ks#WH)GG7ug z0a_i+mlV$=ml#uj-SdVKqxkev^6{_Z3XDBooDW<_}PG01BM+tIlr`gx( ze$BEsI5xy1O}a+1Wh>IFNUK!uz|fgG`vBS+#@=SOR%)g27H_nZwhk(uPyLqo1t`WE zI)a{Ecq+~G`?`}4ZlS$-goNaD-bbuK#qLBhAJxM=f=Q1Gi5t_*>J=!s+#8J6wzmth z#i~T-;aTc69^^w@lAPw_nq<_-j+0(gcQjKh<-}J~Kc$QmxR{FT<+&8XOJ5ONt{pww zd}law(dcX-i2b0YC5(B-34|MiZ(M#zIsGOem;#}$O+*(59gvlaA$Q14N#3uvZ~OMD zI|$JHQmcIL?64zX&XJ~lkIT|e@Nm+x?mNCykF!2wRUaw3Er3}QLRWRU)tj~spRewb z;ISA1S?`8tWv(tK>!MeO%%2cMJ8VX!UQxf#vPttx{8Tn5)tWg=ggDU@SjjAKSufS% zC`xbi&T5pfo>Z>%T9}^)W73LGbU3Ja~42O%{J4BJ_(&(-> zW+n)AHokI{CenFhQuI2if_29Nb)-OwV8vDs#{{xGxdT%bj-w}*F)t;APWvqDo+`su zyWu&`%gqMer0ufdqrSneZ~e<9Qar)Xp+|hBfIC;^bXyKT0Ex{l^t}+9r*O=nn|7#o zX?|ZP&I_|3_dpTwJubEZc)ZmEv>L8L0@6E$yjF+0eWF?1MG+r%g)X~4+o+Ivo#F)J z>AET4MA{$w_Ow08Yt@PW`Z02)Z79I>cpb>L<`WuT$|J`3j2R)=iR01CJNyu3DiZvi zlaWT#`P-u6A_sk2Haw=$ao;?OVk2hy8#fp{D0=f;Zr(fWMa;BKtH$SMD0kxO@Is}F zo0JTbt5}LgKP}~kw2dehMMlw!<$`N)-9AXkevLZfMGdb*5dK|4_6tL=9F&K!t(Cb6 z9GEqtwGWX=V&!GK?qLE0rAo^v98&rmQ9?(xfxQp;J+;Qq*tT>_ZGzThLZPqszxt(& zdEF0RfA0ozfY@`$>-o|aya?EUzWHfaZr=SYpHmb|5`s7ZktA}y10u6Nn0y7qSp8_U zsrmAKtm1>$H%fJp6UF8ha~^XdT??iPEG)&ylG)<~x?r;LV?73DH;mSv2YGkU8v%M* zPphyjqwnri-7%qPg5XEV5DrSqMW?GPkl~SqMMcr8Y6|V{n3moK9pvDA^`HJhDjflVZ0TL5mi+8CZN^!s?pkn?BazvXb!&IBrJ-xCc{;!dFDj5t$9B{ zZ^GuonEMukDI{}Fv09n|MD?SDqyfHU0*8J338oGYMz5UMIjD+0b8=6Il9?0KrcNMB z%mffo806@(mwi1*>X+nf=Z~!u-+Z(eRRSCk*5Nl!zxi5wRT>n|v-d*-l<+VYm#w1M zY^xc^%kDq7ytiL3r?U2I@88J(+&ArQxtrQ@BOwB zsAK$MHPbt;?Vgo=@>fq?B@cVLYcqzE-eFLAhGmQ>nE74o zvDyVi5|qH%u7Pf3DolAl2ng6LiUNvg2#1c;7%8jcT?dqqd{N0}+c}K$i*CeY_2{n5 zz5I&wy2(+;uaMNJ)=tsUz_+v7BdjqhpX2P$WEtv$6SoF}ylwZ&3(odwEFWTA&B($H z?S~h)PqdTRwpLkF3<_Q9O1y16Fcg)*M(?$H^iS>U=H?>mI0iv7tfre{sffiSj6hsS zbGTBd&_3+>GGIb@zP#i=ry$i}2BkYape6{~dAl5sB?%I2RjFVKkq-ux6Ezs zqDFW??ceqg6pyFmwHC0_ARYyQw)PYhEn1Ckf`ux|7Hzho?*2vUx|J`5s}_)vm~9g& zMQmKuZy^4PZ_ue|PJ@snbR3&yzG57b^}a}Jl=u9?dO~bys7tx$9orBY;5g5eMn<-9 zt*uokncG&fFsTn>qUS<vNFKd1}mfzfA9PnRS z9w;KuxSKnpn71K6B%dX9ng=TM8=z6NW_42$qdftJk&<0pWo8s+BtRvnVt&;Pwd zTyvD*DW1lVlhVg5r61AGt`;yP+?23i(eqY(SeOc8P<+V1yf1;r<{bF`=~aPTkik+L zRK*SmSb~H68mu-mPQ8EbEweOQvzSf38ST)l>LGn3+XA_BZ{*#Zj?C!LP>V;?IvP)N z_)(Du+1Z&n{Pck})>0eoX)bch`7XV%kw+vBLgu_mrq$l8y!`4ovFGwD<5ub6G^C|g z)5E&HtRIQN49l{%Rkj{}sr(>U(8`bcc}|wcwIKPC8|u#bS$fy7>-AvP=scS}GlG)R z%7cTw5PEB;tS}`}F_m2P92seCGdsmMZgy^N>u?%e`0b>1qUL%(Pl0bcTdPyNESx;5 z#gwlqYx|mq+J7Tu#U?TqR5ER1YJA9hcEKt;;39_~QHGO6q# z)G$&lxHHv(AYvNGWi(Z^mz@7hJoprqKFaO50k0A3HaQn04`I;d zDnCTDOlo}zD3U)aebdpj-(dMW>!927WLDQ1Qh0DQIiU@~aDEj<8NOaXn<*(y{U+Ss zLzL#=FjXr?P>6T&HlEMd*!(v|x4Hq8Xgrov%TsAFUGl~v7<69+(nI6UxA&;^K@Y>c zb@eYF`WglJsMPCw1>pgwPxK;qyAJh~77kIEHXv?3ro0rQc;)2_t-)NxLEjx&&vr7L zxchh7dh%o z9-fkjckCWXX80Bk=nNzP=eMnW&BL(|t_k97wpbhJ-iF)5`fL8MWR#02Xn~ zb^AZMPlOOn(qZkLqQ|<_`f;9U^ z3<#njRgs{Q2$R-y`MSP`2Fr80UuTDAytcbmE~hhS*Qq4vMN}bokqQ$xH_cv8F4=BG zno$7sK&RL}yQoeNXP0(#e%hnc@2;zZdDuZQK=RH3xrLD3bf`(Ux{lqosLounb3?yo zWi!W}R=Sw)A(DPNG(DM-cRN$mVv}UYdLWmgJs9@Bw-fP>Q&+>xBtdjcZymEl_75G|RH;wMcvs3YCFscsy+5J_^i z_s(8n_V``!z5S=B$W_?J@h5B(8(NBK*Z$QQ5qC7s>;am7@|8Hob1_v=(=fkHG#V*O zluzv{S$dFIrwuTD#4rXHF<^hV9uCXpRzv9X&m?_JpYJ z(K@Izevit#W2M&5+Ai=s>|KCZCUH71w3OaZe$$_smHAn-p4OAQx{&awhw$T%MKn6O z^yLI!fS!4JXRQ2@ri#jYef=1TJ)nQ_e}8&7IXgMYV=|maS!jw&pRoV%{)5JxlW~n^ z;ke{>P>nLt*LMdI6K9xpsT`!!Z?{Zt9$Kg09d!a)&;^Ar&hRiS(yA;}Jaul2nzd7f z2o>bSY0Eko)G6xq$8+vvvhy)o^Vm>|NEP2*#a|U_iq~O*?TSZs(My_{v25spO%D7n zIyyVzt&f>oriG5M%V|ZYc3$JxZu4s4-a0-wD*xoxNFH&S{g8<Y1a~1@Z__l=Mb#IXMG50S$Vk>E z3r93NZKFA^QbxWDj^fg-JeO&*=h+ zU88IJ7r;s!uhTSSRpo?%(d^Jo#VlgZt_j37pj^_X3DeWl!|TcYA7lC&R_;GVfJFc* za%@GKgISt}Q&g=M?A-e9Rx2tGWwxNCN)CUqfH37bhjQGtoDRY|Ica|>v%WYbFo#sC zoT7$rB=I}ui48$TDjLz%Wx=fyjy9`Jn0z_<3@0^q%YbFh zD?a}Wv)DZ*G-=91OXtXl+z|p?EjC!=c=^(dN&5lvEqveBC?TN(Z zoAjwr;)p|%*0e4~WL!0OSQA)y2}kI89h{0;j77fq0tRY#4_LSGE!*7PNz8_t0^|kh zwYjo|E$vpP>t!xxAFz`?_o<+zj%=IKw5>^d`7?qEGBKaV2Z_SHVAPbB7xm5p=(0S& z!J9bg$cePK*_*x(*Lggb-Wdpg@lKz&-iTq{*g_U1XZ<6gdEtd@Ji`iyC9D^Kf|%ua z1vSq)vWS@Q4FQWWVy@VscfyK1E^?yReV<96l*WjG^7#MdJZi6|`s6PwBZM5v||U_~PZF$~y8N5m$tzYFFL3u1*mnGc$|M}vGG zQ*^(*UBE+Y`XE0px&8pj+mW&)O`STNR}toUpx!7m;_=G=CXWb^ZD{3h!+g(hSUK=l&`J13cDT$nfT zG{b%mm4^viK&mqjPS<18l^L`}Wn^sa?82bV zXqHGhWY-PnfDvNK22>JP#bm85rJdze63sxwq*k9u@sq>SHxaX)CI|i}AOJf5_#=ep z(5;&-5u}p1J?E7?=pz=R;U2isko(VFau{wk$;r=3&!eb>g!L?h&g#>>Sdd&3E;akt z;Y`=awQPJZAXN3yz+CivRit83v^llu{C*vq0fGp(Uko#ljokIbQ0#%}D;}md<;TY( zI45I=L;`0T0XgPJ!aXn2%we9I%lmh+7|xe zOAJ4hDwHwl@kE_Af{M(uaVz;(rshZIvDH-(U;;^y$2xa0Xy>`#dFZ*)8RlC$R_Tsz z+2YeM7`7vRlw*AR+kEcYX6rskxaaf(JflycgoG1Iblg-FvTKhpw z%M`6FOBOOg1aZ%TC2*w)-Bv)Is!Z}sF0tOXI^N;)>U{g*T7PsuSB+)8yzxK(z4=840>ppyARBB}V9C*MI{0ka>X_7*l0YcNJL2@R>Jh(NG& zODulLVyjd+wEhDz*`EnxvKs%X%JlfDhQcVBM1EBqT{IiXIG(psXDU#^gjN5sjJ0kK#2{ zy6u?Fe|hx3%(Cu2X;*e@8@3qFjV_`2UysUdF&H_|5Y_x`5q{LC)-fK`^EG+g8% zUh%uy8!_t0C>=+hMz^;}(=LAn%7@8(&MFjKlL%~Y3+7i0_>Sf_OT(dnYT*Ph)1?RU z&)J2A!r2q<6F4qg=yRm8`sZ5q|jtW~SZUUtv|}xp%^_0KT)kyv5H%m9r?F z7xi5l(YMfpexRc9!*qmho{a}NYB?r(K2>2+`(rhVj>ql$HhwPHqiD9qFWoEtXt!Yp z#4O_Hy?uR%3Wr>arETB#+InYEvM#`TS);z0>EZ%NY3gi+QKxfuja<2#NBf1igDQCs zaC>5DS-Iu)(~Y>RB3n#o48U4r2Ww(7?af2j6DsauN=isfZ7)A@9&ZZQ(N7z$0DX3E z<{E-PyBn#$Ctrakr$R_Se%71paM)v=+gVvZew%@i&9F@-H@9vI`iunC)(!C|20E0fIeN~%NK9Tlf0IGKOseY$ZZR9+T#Z;`j2O$;kh%}-TU_POma zpBe$1S=O0z=@nfRz(OF3QlcU9<=@Z9H`WzBB1L^|^iEIs~ zbB-qC@{!%GKJ&E&(CA!!bqVA4Xhfjn?y+F)cBZ1-Ubgf&6HwC60ty8A7LJK#{S)eC za%QsT*4BfM=gpC21YF{_L88WNmP_wcvk{6AL(d=Uou!PA<=uE$4mmaFKsdYEXqh6} zF&^=@@C&`zb*F`2n~M?#Gze%>R_{dAw)GM3>lz(hsn;|9|Ae8YhZXHJ?!+=FYLs8@5&y(?&Pvrp;&Ep2RfQq=;}D^J=86D03qpzr{qPiirjLS{kz{Da~h98R+iF zPiKXvQVr7V2W`mB*#obtwHAKmbDdu`^u0)J_tUIN9~|rolL=Mxj2W2WTF6X;=lb?^ z#KKJo{z9i}@WyB|`lz7_)(jXfG&+HiVPN-P8Qk!=`2Jq(IXgvd@UV!r^YDr8W<<@H z5o@17@_!be+FIwFk008D*9*Uq7)?&`E^0wS(D}+eqqoRAc2qem^YrXFpN1{t?7?n; zI(wXJch0&9TJWv#XpWL{Q=C-tZtwakzxcDMded?qR=Na!`0+=D+?w{E;_ePWkWCfr zJkxXi+IN_`)q&a|lD5|p;6|%1GNhGk?cMc=n&oq{%8#kI(h@!?@%i=9#o8K@8Hm*i z#pubY1HLJOj3>(j*;?q6vxjM9&4!XEBh%AA_@8s|(W^;KHt4(N-W?=oGwtQt;I>z< z-woL&9L+#979KkK-UizotJ!c3Xz)JKWM7C98!AX_bT_lhP_uX4LVN46!y`lUd;0I1F2Q_S1TAW)-zn|XeOTGhSHAI%^?^N}p`Tn$N{+1BMU zZ8^A<7@kO{lp}va&dqH%j4i~b{w!B%O`7mRgQ7A>+hh03FgLr=u-gKejB^yK;f+kqcFAA~aC_b`NL?VxahmFH$Il>Td5kvA+gPHoJBw7f>6h~-x-&OgzNO%yo ztIJtecFxuz{_8Yz42AZn2lw-KI>wd_q|wsI%EkWf33hf$ZaO+8=}qi;?fBDxEVfB; zNM?wsZ8fE@wanUIEFj0Fa2ovusJ4!6R%-kCJv8GK;Z?IhO(5QlZqihLihUpdTt)BL z-k3X-&7+njLr0Rydm&kb#9g{dFqcJ2ts>N4E!QkkBYOt*9M{sDf(|}&lfBU%^)#|J zR@?kR0_S2pDa^TFlY6^L&6qyhV7(@~8+(A<(0Q`lvWwMb76my8?=qqxj9+*q^$ zIy&Q6(Z10$sCQ^FeQOlTyN!3Rtr+`)@{C65a5uXzx~&|^x+co)FL-*7R_VUtdmZ@< zKs5Q*bqeI7U17RoiruOX4@RV=xDzdS#) zG{p^?UQB7aYVtVlPR7n7g9H$z!)?08j+2${Z{yg)IzRQ$fkvO)mqg87RpRbk`}n@9 zDu>&5^@7dXGD!LS1Mh_QP}DNM&T;wh<`c^}H9|*rIC(x^h<+CAC8F_jX(tNosM>-! zZLf-OG2`cFRIv_#@vu}>2oSeH5;o6~j7W)P(eSZ&kV|WPs1ykApQ?0kM2V@sq6@LP zE2{Idp5m5e=MCl9%ViHjT|YCi)vtt^`FLk|$NRb<>q0}$vSQq6;F&<)E1Ou5j7TP7 zlvR%EhU$KbC?AeA+Y`8$wMobvKc2sE6?_m86x7?hV;#|_>ALF3Xg^WZB7aHbOjJEn zdC}uirdGA$SerFD$&2xTq%eNGR)XQAi$Yrucq{GCnUd!Hz>-hOcL!}s^dBD>XXpU} z4%FYy7!kd7$JX;={I{m+hP%739pGTeLqVvu5a&L(I_iNsEDEmadDNA2!KK-O9&G5Bhnz*@^i|B$(g<#hw5zERKleY43{W825ne z9Ij8|0rb$uCQQvsf`o)cFOa^iwP5Q~^0PF}M13Zw4P~`J#REE_91w2$>0&I%Bx*Bc zlqS?O@OexicaO-{NS+XoD6ffTpI?Hh)*c=u51@~c@AStA3{3h3LtB(A%W zfSjFiDhyRok^NPtxxB;Bv@s`toxcTObpw=`d`E*9V&qw7V*oV-cx7ien_ns!sdD^| zBz~{U@!NU5$GFPuojCGGlXZ-Wm7bk9(ln% zg}P8EyJ!L13(>icZ$OWzn${;+wtk3_$R zVUUI~lRFFN<>_04OIt0Dk!1RQj5}>HSP-OWC7~5YJ;ilEz{flbWA!Kf*z{(&a8z`| z045jy?6&2qN5WKwbNtI_R`$K_p7vyC%^`JRn>2#P7eNBL?Tu86-tv5d@3$Ag()2id zHDXu~wADt0lX#w1y1WoVtyr}*%N*8J!xAWRRijLfK7Dcn|GFRFM2tBB|S`(_aq^ROvMg zmQ`li5*yzNy+K10G0{6lsZGz+SnJ$`BDCCm7Uyvh1{E-VZuYCBc9JEdrsk=OFj#i* z^qbd*g)tRA(fW^W{gC6`BFtf{77_93ZW}I|`0b<2Z^d*XO)a!JX3b!~?iRu_Min<( z$JF4CS`ZUZ(~9KwR?V~+cM$2*U2|~EA0pmF%1s*ZoJ@LVtg6LTFS0oT!4FF-uy_&I z-6pj3ESgsBdC7hYa#UxxMVCx(o--&-u_*jrHV6o&(}Vd8piAGp_g2CgSS?1>pz%pj z)IM)J(SzL!oXXeU87o*8ZO~>2 ztp#VjvospjrNdYl$DN796nPL~(c~62`FPsxNWzv>0V~G!?Av{^pnc?{SR0i&-Sh>B z#jldmT}6e3(_ZvT=sD%1auUC@eNuXDnv4dJeuaHXTlg3&$+#PueVIOh_{I$8cJS>V zja@IEFH%k?yi<;Ptvy>_l@xnz8zndTZAicsj6kdS1S*K4D9qilP#BqYB| zeGMruuYP#vPSLt{o2Y4QMV^b3Q~U(F2GZs11}c9)Ej8?|9e~J_36E&%9WXE0*~?Cjzq z!0xnd=AMXd=xCTJ+Sq)8d4403%q-}cA{m#;{T7LIn!3igBp*^(UT)e63u>~Bc(F%G z(b6e*u)n`kxTL*wL+O<kT_6j?Xzq9kpE>=d0$Ou}HEB`ouhMKVr02;+2TCp?0fftFVE zYk-(&AOQFd53qh&F0jdQlH%&`tgMJ~Ch|31*KaDExebb0nUA@ICo&blG?9NeoCx3s z`+?ZX5S%oW4D`01XSWp&6(aT8Vx5G9R48h830b5_Wot=lGXuoup;d=~3t)2nU>u{k zqmm5_cA>T#u?Ip0Z;}Kg`K`-F%ecdK#NBO}6M3jxgoQXb>yI&RMn3xbe#G(nlY3g_ z7WmZ{a@tMUxx7{l=ZDL?>v{<(X(X652bb`Hz?E??7+GbQjZRq>jbGX}FeIKy&s3XA zSOp;%U^{-h#ZVikmc-wEGjFb46PLBQhLQJaC5KR2n!c^En~1;6vaiRFX{S?Jff%nB z_yMD69#Mgj3bKFz!0iONJ~3}aw$emjvnBCADEXDx8?IH|@8&7?X|XOpbfQtWIZuBN zb>kC>D-y^48-Q9VYrvEOlaYI+RaL=vVCTIT(7_ zy}iBG!1oJK*Fd`Rd*;)h?h69=z&6u^(l8oGmjDfDW2Ri`qEOoLh=|1w*aRekLcp~M zr64u?cGz)WS7v#!=3QPFBS0yyTw}xAJKozQnZ9%!fcYp%JAAo(@ihU}#ib>U2fU<& zg!rU{8*|8KPZgP;=hRh)B+Ih`vOrV>-qzBrDzH{q47OXgd~xj>d5zV%qL#Gudn+vT zEVJw_ptyfQ!S#}jq6^fkUgy+#zQ?-odLIh~CqEbZpO#Bk){mE;dv*N(!AB^otGoNM z+!bCf0qj_S_+@{l3qWA?rbCtasm8ewz9x?wzJb;b4v-hTfA7mLk*nSsl9jd-b(NQr zq4s2tN>IV5JLweL0gQEG{Kr{Mfgyf2E-ksA_y4}@`?X6SiEFQ){tq*gprDQ3yWHp# z?kW^M{$pSYIFq-b`2s7BgA4RMRgL~e^7jOISKhkUzI@Pq>995Sdv4C;(f5JOGxYQ{ zJV7I2&4*iJJ?4(+0qF$H>6#-cV(EHWlb^U4vyr(ubjW?j1!0(q44~)LF$Y5mr z&zE|A)gD(#SyoFgP z0+pig)6=QI34@QGi|J+0_&6(7O;mV!x!@e&$pOfKh9>`iHMOqVWBUNUkiShAd6Umpuduf(bc51v;2$B@XK@J({ z=l?az@C$)ZV-$2VQ-nHH)n`Y8O|l_^6&SrZyPVz}&CxeESNQn}JdA;X$Ex`FNm_iD zd56~;EIuqQAui!5u(TLRay)1l8%Lbpy1C|{P4Vf|;(N9HiRTQqW#vyd2B1UrSH2Sj z*$g)A5`5ywd+u)eoLmG3-W}T|pML%W)NWIskZs&tT;js;21&6xx1GR%cvlc42l9_j z-T+*ut3x3358;Vw{d5tak3oL-MtgU*_nnP;j$IB22{R&Y9|Oq_DQ68gKfg?(uBoY` zO!4)j$u@b^zh@{@q{c_dwYwFxll$zKv#F4~RT zA2#BCK*#Rb?{Pzq+eGj$keL&0Eno9izxFvTEa4oMn1_|&WzLk1+vQA3HR70y*~V@% zIhQIzDS2^_Z>s!8KZ`a8^EXxh^}h{CQsj4R-(I_xmk{3m@EnB}VU(K%xiK&RFaY7HPammh4mhYX8n(4CXNTaN4EP>ysjztFxh1?hd^o(%78)0}-#!Te<{`7` z|0;)9SB-6mkUlJ67)8Ybz5Chj5WBAK%LC0Hf$}FCe?s zZgflf5Eoc642mAl95%|5J!Pl92?qyDgT&CLWu!>s{Wm5$R{O4g?VJHZ;P3}_qmrts zzMhV6<++|tjSX&V!=^c|kfB}WMuUx){JdZniTnP%(Xvt?^IaBcCeychPRF(uaJ$XT z%oa;HOkJtus8=q1z^@KjvCH(;i`o!8Nf0KQBOLMBkasI_v5a@MUoVe_w?8OQ;{$%B zQFYfjp!Bh}OZ$w5hS5ORQbaiTtE;On<@v?FUvs&kWZ?aW6BQQDKri22f_MVV9eSIG zOhGYH?5qy>*RpJHA*w7uA!u-#fo=y7U58{6qND5otNB9@uxBKCv{}w{)B`>3D!Ww# zEfq5;rn8}H*Fmij_!hC8`#1vTPd<#=xK*3Q(cbfLn(Q;4g~X%>8tR@q%0!JvG{zRLG<-f*SsO zQCIIujrbZ%tUg+(#b>!(b>L`Ut4xfMp%*qdk&UP)MW+Nq!(&5B-ybsAj4XV$U!7JT zjrU0iSXF2W^Zu<)_x|{;%t-F2K%W61L8W?gE7K*GgVLT1Lo$Fy#Kbu}b{&Dp8bnKA z*F3Pza*qhCM7LVLKx^{oI%23Cpjm^K8}%PG`7&fot&sB4N( zE;XbnCZV_22}g@N-c^&h+nG-cB6tBL3d{%iSPoS+n`>W9RO$i)x68aTPZ?Iq^~tXR zDBYTG+z_Thym&1yAJ(I3ZhQ~4csT(mSkkI;|q zmFoQfbvV0+GRZ(_qm<76xjJN~L{8@BZTPRxkv(X*lM;~FlC|^X1J`ro?n~WHy|1H# z!w3*1#_bOH_}s!=MpIzBpFV`;cQ@9}KYFTR+cVFgqOJ~x`|LvLjk^8pO5*T}wP7hN zibpoz>W|jB0sKLkY1>z_A$IbmY-jO+m?<(E9<3QC%pOA#) zOan|3=gxwkMEC+8|m-_(@dC?~7^YfR2|$Jf{1 zx3+36z03-Kw9Np_esM(f>k~dM5bgns<-Wcqpqjluou^s-5oHX;aS*a}WpPhU0R zDG}f=C7S*c6rV4Mml+1Ht9M@Mx3;&%ypyN1tqOGI;huo?Y4PjeD;@}N#|_56?D|T@ z{G3czybV?jEJ9ZHB<&X%m(k4S;U)g_(oR;9u8*F6u*&^>va^>Es&S8ZBGA z-eD6ZvYuDd(Mgq5ELH_jJKS_cj`C-7(M^+dqVw|=ua|sWAlN{~$2^MvLn}uOm?Vf; zSo8r}cc5}4Kn*T{k=Dvmg~jLzz#oe>xGsRLkK-mH-#R=Bj`Hpy=E`t6K(sN#`(DY* zKY>S=i7^hu^%u$wGluG}k>b%3dXlZ@$)EJ_itEevf{3H;t5@p(Hd`)(svH~PKzx47 zwiciY0Dc0`J^dY=LcwNhhn#HAR`a4C$1=a>`zi)CZ`fK$%|#?Y30p z6Q8N|oaPp?k^fL*#lMEAf)yTBTT{bkF_PupZejnH0Fo8T%bH~TDEym?tsy#qtHGbb zBI^s0*1<0&Hro*STY2C98>Rf~W7j^_3oH$$o1VHH9uK&uF870YO3d}JsyE+pYwR^D zl~TQWt$?Dtr$-SOY0$D6yy1WTy#;(728QaDliIkG5jHme&U=`VFVCRA9Qx%xqfp=x z@iS;AmQ>NB(}C~!u-}v5n1FzM3$+nWrxxAB`U5Tprx~zh0W3jEMuxk>(-&pG>Tr>w zqZ>JqSyJOIe;3?*oRz-+E>U=wuCHEs9bH}286Mat;j17rNyl&mo+)fVaSkkC4v_3N zN83>+BqT{7{sUnHBe-xHt4eYjoAp3op*$8t6?>;hE_;|YCpj!SnvfJ%6Fl4BQ|kpi z87&+_<&IyP>)#1YZEx?hA(9A@??C-YJeRbPxTa;IeGB;J&`|6>%$csAd41B|*~jI$ zbQ~p>4+iBXqVz?EV7PoeA!8_4n*Ue-2Dy5R8}m2iLUrQwmL57Q++HFf?^N_jdp`5t zLr~B|S~~bc(}dN3dhk)*Fa>#}qWOO*Hl220CR*Ri3F8M{01EB`8ey-*Bcy6z}$|AC^2FX z%p&D;fa-L1h${COZv7rhvu_7Rm&*(5v<&@;+^LF>xVg{1rw}k%7v|`OB}U?>2gT$^zD|K;MZW`Y_Zv~mJV2;gcU=b@E!?soD0 zInBmbGHH5xB$55Ea1c7D`yS#IyaHUQ_Tm}!O0yzFypL)=@Br*f;7a4agtk|I;`=*% zeRdSjD;Dt`-diZxoW)e?(E4eAp9NhFx@G|@D{^e0`bDF>??0QYGgbmZuOAi`YB0%x z7NUshJzt~Aib#Uxo#j0K`_t4Qg5x{M2TmZhE+@qTQO7kawXh4+Nqcd7yYOmuMR~dM z+h-aH)HZmbQ1h)YPhh&?%(&?7_2~V@`;Y!+THk4}7~z#Q^{$|i#T$YS<>Hv+#K_#fz#u;r4oefT zoQ0PIOU5>24`4@34w-sM(#GuNv!DzO4RiPAKcpK-T`+=dL09CEo4Y;^><#1G9P|lC z6Sd6kaDhk0rrLE@Z3p?OpxMP+kst+0G6-;Dl9vx(25v6^V>R>Yx&N@f?){t&|IWRKOA;zxhEkeHgtAw?i7?+vfPRi6Vc5f(jeTM{zJ&nyD@wc z8yg$2B*X2xR6``p?TTTa<(qw!8DOZ70SeM#VF@`v;3_p;;ZbXrC&_L)u9eF%wY5r< zEpTZ1Bcan!nz*wUexENa=25lI#vpLk=-l7-O|rAM9m+f^e3oKVFU{#;2XnbbhUgbb{^v)M~M3CHv7 zTeYrEof4HnGYG_Gi4smiAUTj>oDXnhI`AwH3r!b`NUoAQY1XoEVS;K{Iy=Uhx~Z4s6m8^k<~?z(9| z;f`nb@dm2i;-dF$icE(K2m!kVr5X;UPn=(0KV7QVhTyd9r@z|VM6Au#hA;OK&6Jyl zqc}Oa^L2>4efg_Q&%S^*OW6Fw1vfnQJNQn3gqjYNsViv+{%rEsu2B>I@r)%Sb*_`1 zx(x_>l2Q_(&s>Bis)!XEM}R{Z0S4B6Poo51-%-H127W>C;Cp6fW&ma&W}371F1cL} zRVR9AnT)HAwmJ+<28+HzI(tGQ@K#%&*lYUe&$(cm>~`2&nSXvo#0bF{59C7&4`Uk3 zFT4zjt8zibj^eJ__dhpBp>GG}5e|wniU0*L$T`?7RUi|jgxI-#K%d|N2m>-)QxtNMQr6}-#7BL6*9{zo_5Xa9Ti zT`!;iz1i-2o&R~dD`fCL=lefz|Ie-XKez5bx8mCW88-jD7yoaVanwQ}+WWJHY+C|f zz{k2lAJ@z~Mt1s%6m(`(yg%*GEi4!E* zfBI=;zJAdCT=q{OB%q|h>ql?#Hrh)RAP=%kS7$E0PyO7E0TUDS!eP3%YlC@j4-@m= zQ*s#SX;$)F`^xMeoIDSY##G(Z)KsXnH0+|ltiXI@eO>eE8Z7Sp{g<3~=D{mkOS?Mz zWWf&>nWS~ryR1{E&#i=S7PR+WacUl!WHm!r;l&Y%69 zAC~f5W-mH9Iyyc!F*5Dxxn}4G!!6_jGM#GVo(_N;Qk*UqPA?dmSF}qT+h-i#Z#=fs zWaUd_We_;Gcern3I!)=n0ZS`QPp5dec;tG)(~XjHO32Q?QPMJN=Nyxv)~Wxm%E8Tq`{-cRQy<0GA#8p^4U5`l?g8ThvgO!Y_bz@oL?X-p?RH6-*@;8jKmyGyWx zd6D<@53+JUjlGQd$({`pi@W9VNNK69;-3q(QXfNbx}1)Ln#49F>?icR`fv%v%v}~U zQ~c#kZ`za(*_4GXWctd`si(33d5;A{?zf%o+*~7JMX{c4vC)vrJE??q71Gj~;CP){ zdT2R7T@oZ~zyRQ``!{f_*;pr@%Cr%tU>f?cXHy=jP6NiD09^30{-^ZyeAFYhPck6% zf;eF^aSHWkEMHUks@TWD;Vdd7|%~<0Lui&;H)eW{!GjxM$`+?J44yy*(}* zt}faK)GQX34LUwYMzT(UlKtf|`Ei|CGZP6+R0({gFQ2dc)$=v!?C(}&!MVQq_gddU z!G!bABA}E2=To|S`9M+K_`%6x`6o+TzZX*fob7jT26Sp+(SXSxyie)g)nmuGg}AN= z9>&wwF2OTq@I^0=$&W-ViP>smtidS8tJhw+|0}+@b;9XyfO^W_+9eJ?2OQrMfla~m zfYN#YD0Jy^3A>^IoTKfg%$^z5&B(5=C;mGiCVzmRail`>oCA~p`8#?p4C=NHJ*AB5 zCo8I|l&;Qr%?blZkOol7--_`@!It3V3AwuQPwrLjR`Ob@Ok6d~0xz`^DX*#m`qs8i zWm9|bA+ooAdE5XqE)|_ud@}Im6ixc)e2%mSxEwwRlFJflA~eF$c4-e;Jw1bPjZ5c>D#zlTCc zx_YUJxn?h?-kikyD!u4yvwL|`1z@K0L-#YZ@Uba*{ zuUt{azIwrL?JxJh7dmgfVnO~r`~P#0|Ns4dQ37zBXAbUt1^Dsoga_h+t;91la3DTkVGOZfAO25I z)bDQp=BdZ*06iN<#}`LNy1dQGzs0V+$s-X>d%w|1(6jHG4%wSG1Q8`2GW;I#u{%fM zJ&lbn)#jsG*CnH3V+YdJ+dIDAInb{(@ldbY+S}fKElLr)SE-y7O(W`=m7hP6TOJLv z>||$TDgS7Zydh{BM5kI+rFr(?&$wEAM(81bZf}=wk)CM;b3&ejjpl-H{}ON9yaO6q zj@9TSo+mWAI?`#L8{SoVGUO4T@a<8tt7>n5$h8MCi=d-n-3r!YLPFd1mDx>R7i4zq z=|n~dpVO$*xWfiFC=ua4eQGwjoo!*DqcfWowDxzz19r~!%cbG>1N-A&KWc3~NO_kS zZ&8J}20Sa!s?<0tGp#0>Pa-N#e*XG($NSKf-|x}U%l(OTOfGNjR-B?yrsn2!GgPWzaZGN4=bb>jPUyAoO_e#PZ)O(D34zU>Bo`f47JKequyK#KRd+!#M^RL}1ZrH`lNo_?&jkdYdCEY_05AoQ}E{yH6R; z4hcC{M^|qfZ*C5nFK@mD{cAxV;9vj){5_#StO_6^Uvn&pq>0)bYZAIn9pvrZtO=TS zidcRnEFyU2IN9< z8MFWTr&a*F~RSziyLqfAAGK1;wkDHLbduy3;cZs#a!> zu(CzaSroonP|)-1SAa6Twu4nkv1++PdYjZ!?1hB|4VVWj(EZc1jf{>eALc>}xegBx z+d3^iYexHlKCi3&Ft^pYMTt~o1rZho2FARtX1)V4Cj>e7COGN5UM@7Wj`jHDtiH~q z>>I>anw%6A%HlFYf`UT#21;~vA3l7TiMPl@wzFg1DJE7|?dF!Bn@k=%dt91sZOv%2 zUuR!`xr<&MlZ<~xS(>!tRHNmVh5ad_GN0e$qBs7+U71l^T)c}EbEz+pSz&ausI0u) zHO2CxG$eTK*ABh6(BR;pi``ld|MGEe0O*Q(yHm^gq?Whd5vk>Ic*36E&f@^tpYy)q zx<;vvUS4`erv?#zN%pdCdP>@}55*rfHI*5^xd^9;Hk7(_N}1S!>KOrV z7Fd76Y42$An$`m%7N#1 zn&zPPz*AclCZoRJjspFU(I+HHNzH&lyP`X90xwFBJ~rv!bi^-S09`=qHdGrO6au0O zhlYl*`VLCNai2Vy3((N$*jx+tTCXR%9_wT>88ehEjU1FbwReG?gKC4Mw0Io5I8Dw4{^vhkP)XahMZ%ZR;$zNJu@8iv;(-fG%vB zwI9YyUZDBUS1$JJe^6z!nNPrr6qG&tl1-sFu{Kk6@Kc5x-k&y+lR`%}t-It$2S_g6 z)2H5dK(*_i@#s-)SL>FNk8RxKfU~RTdB$(GRg^e^6{S?s$l!L=i|c4_RO=ppOE|N$ zw>#2v#%ZG!tdq(>t^WComeXlxX}#kHmCX+&n&_F)^6rREe!_Q_REY0ib74|Qd&}s> z?q@WPdH)xC?;X`-`n8SX_!}7;*Z>g`1r?=^pmfMMNKq6-q)QViQdNY|<5)l`A|fCn zL_p~fiV%7fkluR>0qF!tq$PorvxCli)>-GA|GxJ9>PB=r#}mz;np?w@^3bNE;(pt zXIDvGCYHte`1rV2(ylb6Dcg(=>rr+@WVJaRBmFb!cAeooOyT8$O9Q1W0# z@d35t$@a~s!Gtp>u9*z1or~B*$hXb9aW~mE8I_=-|6eQb>#vo!`uX#I5urXIzKOA~ zjNQ}i=kEUig#(|}VRUqK2BLdts7yUrm$~hq9WUfvs4EnHgXmo{-m`x&V!^K{p_Z~Q zzI*zVx_y%}-_EZ@$K*wLIJEn3{Mg)Zhh0^@NS!MgX=vBpvK$b*xCK7A(Zxxs{Dgkc zzLY@h&*?;WC)*Lz>h-*d36$VHf;R5%n0Rzt+>dDiX>n}q`!`mnnICkUb>~Q-Vydc( zPbh>ww8whOoSvF*`|-HK!e+ch8Pt!Dw6F+iLhqG4|2_>{Gz?=&XHX&gJ*%L!42Otx zNLnr*si>@s?rOLnIQPwbIcdSO*~oR$rAg8A;lnOH`Z~%|wjrO#asJI^IEwTaMucE$ zp9S+i;sag=&aJXSP2}*MR>_H{4WW# zGGMOsu~g;9Pg%ULtw|9Qlq*3m;a6tbntWAMRNf40EIvzi?mq^H#TtRjfP?AaF!s$Q zW%tvfr{=njDtR9llMz1tr*;6XZ5Trg7SxWRGV3qD=A3+V$HC5Zq=Y%eS5M?J2FE(g z3J92*-wP2XR>CUFk#lbxwHsOX4IJbo(LGSYQ`s{#l#_E^?E#gPd*w7!#&hh$*O123 zqwlx_0=W3wuBDSd(bFY<{&(xs|2zr$?AEO-Z(z28*cij#h?SI(xK-i(5A%I_`9r@6 z1SvgI2nvjgLrCg+IeN|S5tQ3+Rr)@=aWQBw&hAh&B3x7d++loZz+?s%e(qb@5yInSpqoqo_5b4%?Z`4Q7xx{_XY zXXn}@*d7FqO`nbKXQrUX20CkEr7UhP?Rm`|E3u(01Vyu}@#nPo*c<+Cyj>n9K_Dno zEVS2^cYc4oaF5WBj%-C#*kRf|yzdE!QHu}*e^D76_e8gNoskz%Yvysy`&N(k&qbgH zyEOc~NH^1fB@4N=-jTFDa{vAf4<>~szhk@CXJ>-VKx^L4-XXD}2-onEw8Ja!I~*1nxlS+S>nt|ZMt+TC3U-`o+(w@O%BSs`^5 zZBFQ^Fy?b2_lC%6pE_{@&~}lt@ta}i9`%&Hb$jQA-9Ipwp1+;N`39N5cFKQn<*JQ8 zGu~sQz#QaTtsm6?T>1J8Xc&UIG%r0RTFN<%TtXbV%yalq&nF!uz8Tz6L&G1R4m8-X z=*^_;93Sd0r~F8n?^i^!9JSi+@Y!*2BPqDP1ubt*>Dy#c2%Z8+IJbCUc$lwr;n~W} zsueVYu+f=9#pFBNWz;2GAbQwYxkqI{NNDo}{J*?bw8}K!)!nYIsM-?s$1ukOX(@ zUH3^)J(T7dzg{Qn+@Fzx(;6HcoUf&sw`&(pOS-!5MO&N_`0Utu1NHXxE|rL>hfKPp z!^&z#lt$t;Md=M`b?HRzUAv6L%r@5rLw9@si)cqq{B+u7SOU$uW&`2*m9r}s;oe5F zJr+<6$EP){>gz{tNE7?AtnL)}uKm4g1;}t_a`F)0q1(AOHCp%sU-G9(99&O+7_8Qt zzj*nw3q_=t7NSw>kvEc|Z9yj~>011S{?^imbKk?}aIV7za~o^UO@gUrMNW0Hp+CzL^{SeNoG8WyndpBXDJ&W>?c;0#Xv+|$5HMcI?DMjq4sWrL&_h6g7 z$=iQNEB*Brl&5c3QScr}Mog1NO0Na*3kqI9E|K79K#kMu%gcQz{$qhD4R`8RR8=eA z?7D4hyE695#^5w7JHF6vrLNQVnDV`QR+^e+Zqpw)gXg(jY$~>ai@APfVthP9*MIeE zxyKCMjhqW-y5qr_$hnN<8_X1C87~dw8`6Tw65T$l%b9smCc1XY@x9JHY;Jn%GCZ)A zvZ2Qd+i^?1D@zLtE^AYmC{a20(aZ+O=l8t!i)RuXHs8;J%20b zS-^b1ZM)D>%4DIWS#d!TgBa<)SuA-vS5opquebd``0$Y8)2}`i4~bhdyKUP=m{|fV zrf{%a4@XFCz0owUt0400!5>}u#@5Y^p_7ajm87dy-!0kQxl}u@&KYub@PmyABlhgs zvq?#OVNrr={&@|bARzC#VY%zVo^3B8BE&tzUTcQO!^T)wDF6WkX*627mrH*u9BFR@ zF=~x3gRko^)>PxcdY&jj#RttxDj))Hk4i1NJFLt0i@s7XB;4-vIq)%JlQc9ckE;4> zmxdo1^*yGSs1g$uW&7&1v^1&qhwX;Pp0=vrpFQpANBJz*p8IwbImZ95S>6<5(^Fp% zb<`QlY%5&SlAXW*t;oiqBI3S7hq4hfIQJ?u6O(j=1FK3EsDmD~?CjU1`KJj936QEW z&7%ToonsdJ{c`*I@@P4t6#Lh|jgFGXfp z1g$m&r?fDZ0EzmC59CT@y$Y??HWZy>(~n#Dzl?LU*uH`t}R%> z6t)w5>c=yp4XW#x>j^@B%P(N_dIvm(;D=33E%TiDot9XLi<+6m)jjG1PuhmR$2bwN zk*(x0-4bgh(Ch0PW;cmMQE^&A0gg_0?|v2-C9C-@jbPnb;c}xV1jf?oV-e#J1Fo}5MAg;V?(x{~p(L-Cd|dhbJAvWzrw_ac zm9BJZmc*J)o^{4lw*Ag$5z}%jIj*Icz;pn?j_Z-(B5~^AOJx+{Y&~VkM)nKu%$L(_e(D+`M`7;e;fT zmk;?zOt}?(`8k=h=X7Ydrllow%GeS`-H)>@VN~pv+KYO(8!h9t!1?t-{*Tk~s^pG? zmA-41{@BX(QPQ{;nhTYkBk*6ZC?m{%Mep?yXF@A>V4kyl@8P`ZgL;)@Eb4tx9Wu7- z4?72kU_O3YN0cbqw@w&0#;ttIgVCzR+!*N7$vVUXdECeDB>|eFrDdS~gBQOYg*`^g z7s|Ba>k_<1FH}_DZX5DLGtfRu(J3#Pt<@gk4;T9ag3*ig)j|w?y#!$&D1WJ|&;b+4 zt(xCIy7?(){CV~$mT(O_vKCKZo}ivU(Yw*@^ckG7d8K>iDSxg_!FwGL_xmt}BXMz! z$GMajD~1cDE4&um199Z;*@66SOayIFwjEbSbn}x~9=Rrmr_aq;;_a!$u7OPkX)!yR zn}?h+E4AIyjHy-BDv7X8u-RN+lpnb_F}zelN!H1ASuqIxIHL!RsX*o0ok+{wghcn1 zzMncW$ZL}j85ueB8;7{i zHZBg6yE~!8$-$9b@*f3`u{8S^smvYhf5T-xxPNTx2l&tPI5vf|b^X->pZs;*KFucS zx2}D%aJQe=qqjfr$^KXE)kjc0-@1<5{{~$9&+FX5v44O3-?wIu#DDjI{6hBMPyMf- zut#qVjg4Ik#+7tNS)aRERqa)rTZ@N-LwrBj#BqCAI)(Pp(mt$r@8ED@_GLZA_B=nY zEyFo(58D&Vk37^O#^|ZhW=A}j{Jrt6Ra5(MN@Z)E|2*mY#V#31feroD^15-dczCg+ z>=XilFr>_O7PfZoJXjYlxOwp=rplKKGlkYvM?GqoGFfww~Q=pi+!-2J#yls1*%ZjF~{Z-a5f11h#-UcteHB`;8t)P@0PBbtQz=FKR01NSG? z>t6L^XkoDMMlj6LG1S6%x|DkGW8^40ws2}bo z`TLK0W?@K^2sg`t@rJR^q6xP%>f>fUo+cm8UtA9s47@qtVW1Zn^*cZ9OQn83OaqG< z!HS*#)4$eBnZ6Kjs%jZP`}Xs7tj{*Wiy58Amr(|8H@jK}&e8G$*P>&mTjTqy0ygXF z>TbSGL9w$tys!$qKmI$*4Uf1m zt_4vgGZXSV_BO(BJz}w4Z{FWS?yT)899jVZ43BoTBEU{n%nk9WDOsFq+3cLWlGnn` zktB6uOckR~yH~ckxq9*QT(=prgiQB%Ogd*%O)cuT6#edK8pz1Y%S%oc z&PE4JH>y&GD2??(;asPp;O9|fq(g6if6?8Htek7T-@ffG5X|^yDr`~iwYy5o!qwvE zt@6(Qv30BWBO`b(0&#uVjf)5sh@#R`+OrvSIG3xe|FD!rnbdMN*vwpaT2b4bt8f2Q zGvq#|a+2zH+m`66Ir3mw_18?v#QXu{d3AG%(hAkWDOn+~!^SAwOD~)|<4wa8?h#4? zK9Z6;U$g@w=oT6hVr1dEmOcgCc2?GA+j#*49i8ST`(Lg{Cz?HK$!6{Y8(EY^zFs~H zZ?~Hd7Y6Ru7As3kXM3<1?GA~71xZOsnNCd4eoGpxlvFN_Z7(}4{Q?SqYtA;ELeUxL zu3fvqcOmSY4hUJ&(=h^5!9h9j7#2l z-L-4s?iEZkJ3Ea51rPhdx_B4fpMx!N%6<&S$9i+25T&W9NsM8;fO8C3EAJo7^V^(5 zE{*ifg@?-zE`SG#9cpcCEM?XW%MDn=((KD#PD}J(h)Y9c5~p`WP+T(Fou+Hobe^}3yI_V&}Gn+vGcB6(~aRs=GFRCAIV z{kat%a`u(eo=tGEXdmXa~G3Kk1=wRz5Af zy@2}ib=O(W0B^s}^?8LasoEU;+chpo~Qn3TMk)w>4DUh|*lGqW7*H`aD;J*vru z|90@fU*?HKw9j-#dRuGjux)!l41FX~)$eyzREfF0y**kjD+u%R&8*|t0LDmVZEX#w zGWm#0P`QdVs@$D+E&ND?(uTaow{O4ZahEoL6q6qnYtuwb#qw=pj9P$^>h!?GuNBB+ zz;?l%Dl4l|IY=#+az;u7=ol<6{`@O>w`I12sePy6g?Tl6}KRt44BDHTUAp2gC=3vt?yuZkR*3wB7Ol4{){9 z@!hTelMDF2!^1DTQmWhnU3*71HZrGEuiJVUsIv!!Y{CDc<&rS0CVRV?sYxC?JM3Pd*YM*=(c1JjF&*LrjVhm9|{-?e9<=q`8#tBiu^jSXS?T2KKu`9w z@JgrHah#Cd&qOFAuoh{lbwTguO+9;8%x)i@dM4;QJ&gp9*A?M@k>k2aLqs)GB>W>4BE%e7yr9R&bdF=MC_3{*o%J&%Z9ip(m7zRG>mF2s50qF7? zxNgkT=kxn1MV~FJ{=zyP*&=mj$<$oc;j7Bgm1cqYtk5e)tqpnacX7PZJOC0fr59ZS z{QNKO-PG`9Lv)jn>ZG8@$;bHl8#l@_OJzkN516|I3qxB(vhc0uT=;05sSo?5zTAk8 zOR(xlGFG5ow=(A8x&$uwt~&dJe7(`K&YAYX8W;5=?%1=poZ-mZb27?wF~s+&hQdC5 z3sczK70^>F>>ldQ3nB_Ho?D*iXO2GqgLluBt6&FRk6;}3;p&2hhB6gxBF(QKVE<(aKA%OU zXT$fd3m<(4gY}(_-)b>s59~`?+g#CC?Y9?4Ag}qui8&F(u1OnJWJN^EP~YuUuMr@*77j+u6W9@Q)Gq&N0|8zAv=pj#tSA@FM%l zTR1q58(q7$cU&%#?96t1`<{fwTzmnR!~R9p*=-!R`+9l~yUD%|lw{xc_A3|uH_w^X z|KT{U`RlhPLT*tnvf+0e)}^7$%#Wp0(pTYwC*l1+28V4Kw{>ZAgLcsH^mHowuK%B= zWnhUMI@!g=>&(q1pXs=?ck%J;IfhyORJ#WPlU@%Ag_=oMP>rzV{HsghE6+g;6+7-nma;w(sT(Nj5lOKy!#Fw8weG*OdURK)_+_!a8 zj&tW=n8^nX&tZhc>|4bmEFp&$QeLldNDSC$!LdA}!hzsFS7ph zCvxdMxv;;l?^RBPYWn;<_&@N$ z_W)`OaWedI!|s)KKk(IDoI;;jJ}fnGU)r`YaI~Ju(~1f@F&8)IFdXq#)vvEcMC%v} zC91h76fWpDwr%t2w}FWIX8|`D2>KY~;7iuTQzQL|W2(OIk<4!}CYR&I`+IJ(814=# z3d>B`K|B4FtgHtxrwUB!!E(xM)yV|pkWW93x!3|3U7xC+>RPQl!JE-8no!VK7tfp? zNJ;)r<7H8Fu_o(6G8aIrA**((&OFz_7q$9Yf>9d~k2vzGOX&rnnDX`cJO#$8LG|Lr zVEXMyyc=#UCcP%w*wX0cE&oY8`3&UQ*!-YQL`YT5z?f7Ks{C}{ z{wXCY>afy^J*wt^N!QKo?%lbI2m&e20quq_%*dGI#%(U*k$8P`^Z599?BKNd9up61 zb@iGC&ZS{@0$wzbHg#Lcy`-~lafs(>f>5C2WG7Bdm}ky0$7LfdC4y;4?E^-Uv9aFH zlDjSAMlVT0F|y87cEbE65wnL!M*MpXV?pSF*mCIGp0P6gzS3q=z4Q=_HyUj>wB#&(;LVkVPoK&*D5no@i z^7WR=x81`A4*QqtDw)DbBFm)=IE1-J(!hd&r@TRDBFSOC7Y(OjB}es_wZJ4Z%wj9POCjUNh&M^fTh(n^kH6{Wi%p+|}RnY9c^t6?z0ty{ggw2>kTq zigbxWBz0Oo7a07NzIgXtp$CDSl`3C~G5g1EF^PD~e=gbvyRlJLP{1EL_dY60_I9lo zOJOBDFL0q#>llijFDD;`CMjU#W8I#f| z+Hl@lf5eUByB#jV8ys&Hyf=1nCJ|{vjOpWlsgWwbKIBJ$|8HRjvB5tAplEnVsfRsf zVbCKo0LDA{`j(QYsAfa6@PB-T^45KZrb9p zK*u|Id(O+tb4otBju?;?mlYSAhqX4CR8=Jfulk5*1a9s{i|#)e)z}w4?lv%BPt)gk z^qEc7M(E+>?|9nFplXtu52YQ*uLN|aRXiro%*X75OJISMBVq)wB2LfeY z%}Zkoj{vcnNT_-)1%<;-?7RMk#bdo6>gEwD%dwD*Lnh)yux%Iebh~_cM&zZ!@^Ulg zMXoGFg7kpdA>z|vZiF{3KmY!C;V8dsYE_k5Q8~4Zgrm5XSoqBlhqK8UvC5cIjH->i~!Vx^=j zSF7K4rnD;(K?6vT&|0SP9n@9(@pO868lqFU{OEb7TR^$JR9!F0E168*y;Lz#Y+Bfq zvTke@Kr0~}EBsJXM$9Q_5(}MEaUZP+KIT8>j#3uMrVO*bEEW%+F!?R`nD4+5=RJ;2 zPDy5V`uv9RhtAP2``U-$jHHto_EaoYG)@4%GM*t;Alg|MQK!PQ_~es zE@=~`qSddF6tvg;2_3)^?yu68lb%dJG zpQ-#`M;g+za(2OZ>%%^9PQwGqska}PAeR(RYKz(#sO`aiOW6Efyedw%xr$0(0Sl;N zY)GqF>zfV7RwW-9CQL7lRPOZ`}! zDZ8ufxJ;VM->-6QPnSNcd@Wh6wBhc<(%|M07YCp8Zy85oC;a2MApLn9_U9srOP<#G?G5AnS!m!#%U$4>6 ztj!|8!mgyXQF0IbhV5)?C1l0rBO6?tTpXRUp*xC$BPIos%B>7idn-rXy36<21g!Oe zm+vx5*+cy0!Aj5bC^g~|MUEwg0RH0Sr9zg zRt=_BIxa41IM>#s=Vr{WOw?1uw4~L!|7={G;IB+md-v}eco~@kYo05_Ov#VzQI+s0 z>h*wJzGnQnmxcv95+8>r|M)B{?2b+FsExj%Y2S6Ltwt&dS)dDgqj#qg90~bIg){sA zO{Xm;CyUypXOHr(%;>thWOK70G3KATx-yza+B1zno0)}?bx4JM_l-entzDk%W;(bC z9D}%no*efU=IXi7V{F`(cz{do&eS20LrMbF7hqE{zGubeqM{RU$7{|xJg`_BVc*&M zY(`e1v0~b(%E$z(o(w%8O?25w_Uh}%NQtEpc~Oi)c9vMPS&Tsjr1H@B#VOgG`o_qx z?GNGzoojqdT{8%y&Hgwj;y$9+1^tYTr-3*y0|{ziAAO->z0^nW;ALDH`@0BT1KWUW zy$faUd^+7O>QjJ6fn~#>^8SZI+hE-KijnTcsgbUYAsSFH)y6WA`70x2#ib*)cko~K zVH0d0av&v61=i=>h+L0xf3MMn3w@ee)%SrHS&B1-`Tomnxd=Fys_GNb-(U9aS;*r%d)YC^|yUo<&%><&oJ!wgVFrNRwewr z{&&TdJr1}3=S$G1e&cvlQn}m|O59^AvgW%qn8r8ginS=#TZ=nq>-%$Z@(TWB^EtSU zvJHsu2IVNlwf1H;@)eGx?)T{~^_UJ5LbySx4p{Wjtn4n( z`8?aann+)JuUJ?kEE`uk{pI5Bws*=D2Boeg-Z+2Bw+2d_(etK;7f|e=s25*6nzv?- zWjkE(GM-z@dGJBjxHN9n-=t!*Z5HzTxmW7kR<8@2njM&nVFv8-Oj%jk%?T)HFz22| zd5zrd?^BglAT4YzRfBDVf8hc*A!3t9$oSvWk|D;F|f*uJp|1sD|hjnB%oAblm^*ij!V;;QCs zVY`~@bbl~{IZzX-;>@Hs1q&VVsYbulNiejsV!_R6V^1hjl~nr8OcBovfQ+uwEd~Gn zkuBe*qoMH)t*0bu$bz@wCE!w1H}b5GlA(Z_f?rrzki?FhF8Y2M3YGV9it|&kRwk3B zGiaodaHNUrT2)3&9*ZZ|!hg*$_L(QU=wJ+d%lRM8^+Ex^OPXPPqoObr zjoiaG#y%O32GV-<8JpbCkFW;l z-re)tu!607TEfh9RcTM(y_?U|KFRwds~M_k@tM*kv&&#F>1xzhR&J%e+rd3)G(z`0LV zRVPN)7l&EKT7n0Q{26P;#uoSQny~l6D7(N;fEvRtN1fJ`#QUuRp8wJpdqnN_@J$AD zlO##E+|HR3o!Nh^%q?@N-#z@MsyBHE)I@|4b9MFq%O5#)#r`Rinuegv_bO*%O6ad4 z-I$r0!p^C}1Ui=J@^m#;aWR#D8Az$FZ{V?tQHlfH}nA*002;urV(I_1Dez zx90+2@}b%uACLC_9@(?BL3BU-^V=WUc#7aKfk4I9LJ8?%2d8!Jd%JXRVv#@YDH|UxobxF5(ga;cM+v= zRR5K0edZoxA3&e#1PdlzJutA`8G{4y8AK}fHP-~})?Z~hCl5HFJ-$*-{Rt5XQ!yU| zGAfncz1O|SR*8M* z5;ViQSA8?Wjs}ua<6QxSu&N^OXk_SIY;*O z{~5&lKOcGi8+29H&-4LG6+5{F1Q>c4r017roM4Y4H8<>%y>MiU_DQI_JXj7XC>RD5 zE&dzZHt`oOT)1iYruSxR zx{agD*u!9g9x^w6UFUPWw!Op5=jN6sos+LGYRW`j-EmQqeH*gS_`SbvJ4Ob2dIqjr zSr{whGV*hwUPEmXKXcc3;FQQwLjamO?8x*kGttUY(ZNY!;XohMX%u|~5B!3Fp|PDZ zk6y+7!9pjXhjSs>P`|d8T{iC{dG6(MHJ7T#iZWpTxq9qzsDHha-y}lC=wkDA9m|WC zW!SJA%7@-B?$`%jj2)@?o*7aQv@stt7$q>DxjV!UzIc~SDQZi%wuXDy>$;?8?IHri zd|&aM{lzgU)vl0ga9xAJy3f}5eK)pH zlpV33Db_n(xb-Kegd^jkqRXwtI_8^}VNBfE^GSEgnt3+-z9O0Z0@jL6t&&{4d#<%W z4)%SkY?qysTb7Y=B2xRbtj88)o;nj39Tlk^q<#=a8600W+vC3N?USGi#Ad&Lymgz> z&>g3eX&0el#x8x;W+%CQ6)JfPJ7++ireQCmJn|0qDSvJO9%NruYHHBEcx`GCJ28BI zQM38OC9oX$g*f32B(6|l-h<`8jEiC4_nda|o-3D7HotM~6Z!SqY;J7hB_sAP^F}mK zhFv4ee5c`q?3A-hU31I0^G59MoUC#6@Bo5wAKSzKy#8CIl7Le=x(w~?riktpigr!# zChW^3BM#o%q!I5)se}R(6dWEd4oy9;LGerI0BbLg_aCOyR%*&X>Z5OK>E^bXyq=)s zdCOt8!_auKu;CyHHTL!XM4f0<<3X0c|9mY^|48YI6z+Rwp2BiNjdJW8iN>>rhK76= z{-&2Nr=`495$;v+U45H|_Hk>LlqdKXUSrPyJjdBB?NI5^yP-3RmD|4x|H}pZ2*}KG zer%VWk)i0xof8^2HN}3+bbZ@0uf;MJbMxV1*QeGOjkS+yT?bxV0wqk|cV{=|wBplm z2NGp$HBG&*pbdSoZW0Mf7hEL7#CFA0Hb$jYP)0YQkqiVku3LYdqnTYiCr5RpwTme; zU4k`^!7(7aVq)=L_)l69OZuufC+3LaiW+UT`^SXnRkRu-Gb>k>{D{$Kl7b>KL4(s@ zFNEsyiyj53)>pk7pzJMKT*f;#hw<+|QtmZ(RKiczq0N7y66de=Ey7z2Cd{dG~%yu8ho#I;|XHC;#j(R%p`1Z@Eqe4~e))$~p zvvrpcY|LSUu~e0n<)a9YZYN${CF|&<1$lZGK@)MFHe>tqV}F}G&!smQ`IPcj{IGo7rm(}$nCuvp3 z-*s_mX=-v39P@@MBHEAnEHg9HQJ#LuZ?Q-Vlc@US)Jk=z^fjjM1Cy(7$v!1}Nn*s| za>j%2A3vPZ^C0G6gTMLK^qD(%e3`vYJy#>oD4VM73C3G9Y{2pttIxd=@|WqX(G#qs zhh){b!qg+^<0U=ne}s}xeBN36CN@?pfkk?XC}O^VBf>^etS1N6SSs}3Lq$(TVUaA# zk9ybqv^=y5iVW*VsGL-+19L~!VE3^`18wh8!TKk-S{e_8c2T(8(D7dH-rjz-^?`%N zRvs26oUFoswsZbRvRl@FW6mLzM4OD#BOqA~w3Qja@Ov$tuaibAWn^Sd>%M>-}}&bjKc*GYV_cq6fMdL^&K-a zGr{hM)Y3)G7`9s;aZI$CU0Y`D4@|4tTq+;+8Wto~tSprg_gDb(udXw;41j%H?(Uv` zHQ*7^bBPO_>^OySQRmQy)YMe))?Znv@aiuv3Ddn$bzueH9_}Wr7WEVU2nC;JSF^W2 zV##5&!l&O7S(9yAhz?kyRZ@mT=1r}vpmd9kjcpg3>$%&miX?SAMCSpUy#oDEtS=40 zYA_73R)L|`BAy*3j-tGvDcXdZ)WSfeoP=}Z;*yAG*pbJPNf-^>!>BK8uM zR~()upaa%v<4|?DGZAhkJtlLv%XoaP=Jsqy5tiUK?6@lgJiCaN+UmfB-hXuLF{(&z zp>O?BqKF^02CzXy@KO3oPZFFI>km~^0oTu8JBs?bkma7vJKwcPps11c)yXJU;P}Ba z5)xrb!H9BEwExB;R?EF??sSHoV+^@58#`JyF75(5g>Y7LdrxAxxS57-9NZ z)^f*_VXV7Q@l(=a=9wC9>V|;3Tgmtih;+aP!$sZ6MlXQ}Qm>(pecHt<=O3SAj`28m zuXWpa|2lhGL?TqyhY80FOchz*_^h~wk@Ug!oY*U8B_u|C(gX=U6ub>Fhk{F!|GV*y z49p0;#fq31Z?`L*x)Zz)WKkKVfBg*!A;Ox)IIWimjpXwg>^YWnxqR{f%s*1h5BfCn zVg6gjOB)PdHL<=Uc zid$P<@@e)WLGInDKR|xq?BcS}Rl1Vsw-94y{_&$h8t@@A1eP;J zo_yVS&)nQx*`|7iv9Wfo2+HCqGe~0!mHY&%%maCz!!7Ukf37`JZEQa+kK1K*^QJ#- zsy1)HW^?hzT)6gtL%)Sr+0uqUb5m2Q9{N~L)@zwN4P$bkJa^+lo0zy@8O0f^njfL4 zNi9i4F~3>A(1?nBxOA(lEI-?2`f-PP^U)JIB#*Io+pGJl`Ob=one7`plc4l)c1XYZ zH6rfQnZXCG(82Jq@S6PP)`Dk#8w3y*OGv^NQ1dFgZn(T`!bYgGnfC~X>a+Sz|9Sqm>UZS zGW7NA&mK{F*wC$~hgP`X1$Fs?@gRZhd`(u{sZ%*o;I-hQ*Z!R4Q>PM&huvylQ%J+e zwU>g*El!tjx+vfF*4N*(<_AN34=}>y5bq(0RCCxP<1442H$|1wmZ&;Y!(AVQ2@4AY zHSZpN8SepKVvtsf8xK#key0+H93W=K>)HsJeoy{HwHDO*lpdbpBIG6)EOSa?aXPl=DBT?$hk4QA0(@?;n{+iYf(u-zu_SimnoeM#rMF*a5-^vYwxd1} z3DR^EKvMUn%#7-9h8b8+No=|C`P+1SYrH(ERh}Rvjb5ugsP_y*r_(Qh&l@cxW)}}- zZb1zWgb!pd9HG}OEG!HS1$zzBuI-Mgn)@MXWVpzbiO(YCWwi6h^e|HY*eS0^X4$xlZFj>Jp~ z_gf$*T9%i4mO%b6npy)wvvy@xb)LfP2k3LYCF>X$H!*GQwp-}$j@JrvgN0f!ojO;p z_)_NAn#3`I%X1F-?Vgd^Cm{&T?3EuGtKqJDDS!x^@3}j!id$(bA9s!lmmji=-8!uh ztaOM?p74$*fu8}z5=>!NSB7m}h3q}B`TnE(By`Y$#n#0y?#Pr*AE?lWcC=R~p41qd z#J0Ytt(&K4h98qfE>-xE1bjx^BX$Z5W2M7<+uoi_0iVK)DypvjJpn4iVCD0-y1ZV8 zfu0L&PO1d(A6Y%w^D^+-4l%LFxe>V+2P9t=wA}) zeQTCJ1=aLj+|MH5$&p9pTq^tShZ|ec+SX7#QKn%%=ARQ6MQ#`vYz8=ZLcTyOuEFBH zya8Q1Ow{4%%i`npY;0~sD))W!bKiwAQE?!r$QGSl&>S1*x0JuRKI|$`9Cnn}0qM{a zyJ--8vmszLH1%G9@QCUuP0+dGHR@CET0AJ0opvog#*F)uvrfr)7DiOs|H`#%tvwkA z2IZ=L>(9Uc5yjW57#%k|D5m`*0POZ<%>B6KMbn(<7+uC!@skH$SP89V*}hbBB2}*c zfs`M97?r16xv_4c>Y}p#)=H}!l#kEb-YML@QDWhobCHNaWVhZC=r-p~y?jlWZLqfy zbMo%0&;TG8T$QLoxVu=_4<@!+!qmLWo0LRrH9%j0Teu?nuwjF4>`Nv@}e2W-tyHrrSC$E;fto#e%%P^Edgk8XAi!aXM;8H}#3@ z&~kascGT5l5D+<%;6ZrCXDQ=h??YS%FF_`lm`u)0{Vd`C8=Kbl?j4Vv4fStLR88}2 z=M?h)2p&Rbrp?^7NTZ|RMjbnJYM+FBun_Kh7r!z@bSt5LZ?1ODtF1FfbTc?ulxD>d6WW0B4q* z81G&@=aiK*1S&fMgZrtxP?bgx4Q$+Z{9A0b?_v>W+Ucx;0IUTZG6%{XQq@cq2A6pB z8{ZWj9a1^zpMp49uu2fUv|BeWe4gNfWOrrSaKw+WeVpfU%tsxn4XKPcN|xQBO;`Ch||NI5yV&p!3Z$?FG2b>Ev>GQTu%)P z00H=^J74P+8OK*^TiPm)!1=)1!%7@qLd5A(tjD{hEhm#IDk{2lRnKPDxPM0o$WLm- z^!&>ONYR%AF_r7upY{S!uj-94e@ZAqtW%@1a*EA9yVSo|^bozaA?6r|5TRdTaz5dU zEMF>fh+KpuOYq*8s&Rqe5qB7C{eHwneMo01BYvzW+^SubeppbH^z`)nNAm1H`$dW` zuU$PI#VPb~thfIb!nQ697=95r$x)ld#VopT*1vw9r0D<${ydiJObq_C+i~(QSlE=CLfz%?)JIY2&}6?l)Wn zdd0cpKq&1i@lAB=o+{<-^;nMw4^2x}UVVK+@FgySxv~?b%a<>Evp#(?sHumhnWAPvmZ`KIC4CPuZBT97xqEYqJr9Say!($@ku5h|& zun?lcg^1k4l5|zRO>N*5;$pS3l`~4QZvaa{PnMRJ{E*|5L{*fx&(E#2joj?nUP6<~ z!-SlUhd17}>@s9!AR4rf&rw1y9Su}Pv9^n(+&vr;8d~kXQF9v_|6=~E?9?m=f(A)a z12BYBS$)M$El*u`|Bqy-8+~0~D;Rm07Zz&N=>S6m1K7=?yzj$5IK}l@kotaJI$9je zCnR&{o^WJ3@CGuUKEvWmPiN>VGhA2gu#?Q#eBo5{ryF_vy(q zXH82`R1xZ$K5m|XgI#LC-wpCv`SYvAkmHW7H>($z^}V@!klz%}qV%HD{^874v<@fl z8s|J4ujtYCzO*wbk7a{XIZw|6`Uis4I3j{P_e@CkU0h1IO--NjvT?AM;#;yXsLQ#f z4+qAOFD@1nrTzsC{GLUIpzV_hd9b6iIA7!1x5vGwlqg3Je2gkMD-<;Ry^Zmh=Q=e9 zMSS{o`4IEY3?u-~ec4=sN|&M@OK5td*=CuMaaIbX?@0=gCbvS6fW^rLkX?!M@$mtg zfP@f|E1ngxD_5?BgbZ;uYXk%Y+@0$oPs0=yoJ70>&j~qP;Yb5f$0>{2`MZ1HK9}3DgN-jjZ?DyZK?9`FTKgE$J3>@d9 z=onz3fZuw(RaLzRgzC?0il?#S&BC2%p1=wIz4me(t#*Q|@?OSfob&H1q`j zlmc*V?D2rZr39R6F21$3JqQ{?ivGN*yd|AOMb9yUjYSwpMdp!PpixdAvk}vPRQtfKdS^-iW_Fb$?|KJp^ z9)F(K;LHzC_MBa(+=shkuj^L+(njBa-D?9i2EJY%yKy;;McN&EFPKPq_Ap2uI^+or zAU*x9n5^PgY!yOY3-r9WrenB*MTU4hfp_m>_td=Nm63T3eM-R^hIXdv0oT|!%xgIh z>K|jNw}B}E^`qk-E`gwDtI+*0GOAyVT}x;|E5mN9YU~f2>^LGooNiA5YVuh^p~oR5>kTPiEa&~jeey=+Cf3Wx7QB9`X+c1u!j1?7y0R&V;L@6rLAt+Kr1VnnI z$k00sy@WUlL_|bIK&jGuQF@JlfQWQLF9xLdnoyFw`++&<{nq#YZ@u68)|++KIu3#4 zdG6;fdtdvyt}TTm5MLhlK-EXw`<@v2b(lt54yKrn?ws9TT{$gDP1}w7^k_qLqbtD~ zNvWPBC*^nDDY*Hnr=p++AaU|1T(`1L=&2^}a8<9k_D@c@-oHqh0SKLL zM@%Jn9jYv|))VsOz{pxXd=CmRYh#a2(4AB9f5r)@Kv-jsr+#>k*+#myP{U1IytTWfr@{GONZO4!T=ghjE%O zl(lm+)889iPXztir+5*c1J!fz5p<6O&CDl@ug<-Vc?5;xr0d9Y9P+QdO3W;UGFj2* zoRoz4_@dJE`1JJaw!7t+s;i)VyL(Xx6l6c5!`1ztLY)b2b^|GuoVg=5_cm1LbQN-c zaDid3c9$^n@Bi!XfQ-WbAyjilJ!O05e*0T9}3mi>!SKLORqV%4QVkT%25%~=gH_XaOed!E=$&X4&SMNI@Kh3 zGt{Iu1?j0fuj@#H{4t+9j}OSL$9m6u*N;$HzVcVZE#=fCq?M3?X0lhBIya9b^UImJ znQ_9IQW=>OtwyGCdD4W`oE$eI$Azs#wo5Jml@dXQKW688BsO_?|dZT3QN*5TCwX1+{ukO3I~-ZPFty9?|0UV>g9G{pA~8 z#em_<2kW>SW-DNtkWl7L;)sz5E2#PjxER>H)Kz$5wl|D`B?M7;H3OVh)Dsl)KGVk+0Hv zso7eZn)f5u%>NJozUGFS>i@y7tIo4%2XR+t^3Xu@gtvz?Q4H>dbd0QK8axrjf^I ztFfWo9&&V}7IK5{HqD0^3lYhH70xbU3$br%b`>o~MM@L^ISh&*-!F{JCLC$OkmKnS zwg3EWq__&6*I)ql*JV|{jHXMuso)YO#kGi^}Z8T1@@-aErXa+*&rCGK+JlRJsz^uHfmpS>-+7v1JKdvdzgD%nm2E{2R5oSw)fE)ACB?$$~6P zXBx&GM}eDrMB4c^7IIv|aZ$wTWm}UV-ti~Z+jn`>Ph?)Eh*m>gB#$I_usyOD-uZ!z zfv^BxxB8KoN*kT7cUgAG_lGQ7&~>1b9l}aLS|UK`02?HjXbeI5)OFHh768mn27VRA z=LdUvx9@uen?XpGLGZ3YLUuM~V$e=OZq@L9Bze4AW+WACA1przn&vkbOM%POK?Xy~ z84*l>7b9&k#O^nyH<`I*wi|O0GW!D-t3FFmSSTmu@Ni&FiBx!2y==L7)?vqecNXf*<5KSvl|RS0H4 zM7;!N+PWSJCwA}j`5QQa@=iqxd2blF54#PQ((V=7ej4wt?pT`QVo>Gh51s*+2^=S8 zYcpclgE%hA>9G_zk&^P5JOYdM8QDXNZ4P8%{aFvO_plbX zi3xzGP)H-k&=Wu2lgFRR8-slmJNrEq(YKMwTyO5$<~JAJ24E`Np_5~Kp0_BM&r@w*kaxuxYen#ok0R-+8!xWqe&ij^^kwUP>KbR4J0d*qg% z9~0@Ff&q$=SQ{?h_X=EYQWuI8Lt+uv2Fn{Smkg-B6XJjXC*BbR>Ls{n(Bx?%HQV?3 z$)|>Qf{O=P3@`3J?k6{Q?bW1GRQQh>fqc<=sAQwfRS~sgs_x{JcN2uKlj&aMqQ}fn zw*G?!3>2bHCv%7U+u>vGa_L^Hu75<_$adI&%zHi`>x4UQyu6Vnnkf9B{w2p5cCZtD zHq}PY{~_et5kV<;FjrBn6euO{bd9mf_zu=MRD$-h$WS~POfLXLy*H1D#6&2-K2)8h z4%p#MGGb8}w5AWa+B>}-95wjD{y2obaiO+*-MbM)V}n~t!6s< zlBVC`IP%&ABTUi}ApxpRl<#ShyhZ*V^; zxRvLnQOPGGKyC`NmRsJps~Z>&yB&O$kTANqz{Ky;xHzabQbp-MYd3Vt4CQM}69Jea zD#Lkom->S+sgN{(lsUWYWZ++ikJt=>EpMeG4tBf|%;Fv5ESXXDo-k99!w4YheA3`a zmXP4|Pe33 zjCOBwp%1g=@sMt7d`$VM3{VErCDw2Hz5~J~{%HWir{?wmZ8hPUO_OcG`em$Cj%(~* ze9(bIaxe1wT;EkKJf)kB7_ru9`dK9o)V+3ZC>kOlyh3=1d^Pjsi?2MXr4}__EpvT3 z`flw?snHyK+|TH9rL9IqX9Ijt#x>|?xTNDMf71GDD35SF{iYgB;s#$yEZ6_qe&kSf zo)4tpw6)L>neDaEk7lm#L9Ns*GH_vLwM8-!`l%(Bf$!1&gIO#DgK}48gUMeSt;n`< zKzR=6pG?-9t#a(ox>--{cw{eH)W~-F!tC{0c6xRXxJD+yRHa4;eJq6lPB+hzP214VG}gbpAr+z4etz3#UKlB~DF)NnH0n=^JC7Pw!gXpq!tjsq zUh^osH&Ic{1k$jx;+juUpSfHK`{xY_L`|PVYvkdS$2=5r^XoSB9@3OH?;5bn*{Pdk zymIyG)5YbT)z+fe&!eDwqpo#^B$fe)UmGXCG?opUP?shPkXpaP0sasN1tq!Apx^md zKOg0|v4-6Bx+w6K!+L-lqFBx#vv!NT$8|r~j3ji+P<@k_`glj9ym-)s0;f23AX^mt zt7cveIEattJ+6OPjBfgXqY`MzptkN^{ z;G>1I{F3p=R${KqCRd+~Nmb#O26nFeq4%v|SWCi7mc69Hj!R~-&-WOyBV9!=@!&x9Isqs|}bPv2NnTcduT^*1w zZessCwyG6l(I&zB+UrCI$Wclt-=Z-AP?$T<4j3j|q^4O?SW?yEibx!i2x}T> z93&{-t-);fr`<~or&8z#MOWG(8mGEbMEe}4-tiux7BZh<#**77)yJyo7gkrAMt*pG zhSPt^{>E zT|*mza@pv81ZlrUV1dYAUpKPdi~GGitSihjvjb9@SPt1iXq4T_cDt#wWHsjva^Mar zG2(rus<(}>^I?}O--Ly&M+i|*CX4oiQ9>vZ5HP{-6TJSnLyr zpjPt9MCNYt^_ud^v7BuUtCzF{+JzYRYVLGi3B)=s%D!S3xB4&Z)bz$?Yd$b$c9gqE z9@mQCx(ysC`7{i%bkeBeo8MOw;)SG^EN$quys2a4$*ao>6fB3b^@X_k66Gs0?V$FU zwXfi})ib5Rh6U`z`AK?80&Fgc;l7ma5@L#^f^9kG#wHg^l`Meh0{Yoef0b(*493?= z%;rS&54n}IGodi+Rg{HN8qvUQNE#|ogg;Sn{Kc%)UqXWHZe;Z!pU$T>HE$SXN(tSx zL(j8{yhfUGN(9gaZLo!N zqpi2%RlwC@FJ@VL41Qm_R@u7BX$9))>eubi({pr8)8i7cEsWsiCn&Uak&!Ueh~3Wzb4CEwvA=FI%D%!ixNF87pMpCi*$`$<8; z%M^YIf7z0g>blp!_1W?)f~F|MCsZUou3md!*;$CJpCe4AU5RpPO{ z^Wd9(I5TpjXPp*T8StBQ)VMGh2^aGgv6Z@8Rr9ouC@xg)iAL|b80I}pO0h6A)j4(m zy?c3gMG(w)^TiS7fXS?ACZyQ#<=(rPp&J=x!k^ClMz{BVBOmG| z01sW}=eo)*%s&`;`6~ZQ_%@_warg6RLI&Qc@tZZ%?ghCls|0%ZJfM4W5n-*r&B{ue zVbDJcog(SzF3NkM%{@eZgL;6=^hvr~54AMk`A>Ff?$P0uUO&WWBqUVu!3A8A=BB&# z7T(59zPtIKx3w`E7pO-V;gdTwextjnC+}(Hp{m@x_YBI&x%aMQ(rUoIDi9g``t#ff zYn@Ja`r*Tl8fP#;{GIN#CPK2=dnx_zGSX|)|A`+ju_485rZZ<2@gpctPdjV=t(i>X zVuhqjp`o-p(8w(NnxX2v_WskegU4;#6FlWi)<=T`L)b-qgPKLzr92)KTsU+3w2!cl z9Le4Q0E4sKu4=lMj`_&%-av3LlJ37K2l{QzD%2|p{f3q)k3DdNY1nbBIo`2L9ar4kbi^Mx(O_Gi2n~~h1gj*df(>$bOf4?N zW22NgQp9QnypW6vGJrR>vlAr9%#SWOwKc&BoNx6+h1BHa7^f{>l_-(mx5YfJLkPi_ zM`hTtcD;Dmx+&Re#G{IFm~D$HxmeMYuF-IZL0k;IkCpmj_u5(6VE#Qm!z>Y2>+C7N z*>N-WhS?0%Od(v`#L3t`vT4^bIu>`+>hFeE?A>}6ce})1vPcR@flg0|n>)EXp)DTe zHb{P;YgcFpchx3_QjR~-<97yXl>xG7v~|HfFzE>jania0G)BhFMbPcJH+kr?D;4B6GWL-Oy@gcDD_;ODizOVn=+0pf_X=F_r7yOl;m7EBW6MIu9fC zWF%>2Wo4Q1lAkP8&1VJJrOoea65^>%7SAmS8D?XF84q%=n`D$tZfCvoyalcKa7Xnd zt$+8fd1y_(x?7I1^h1`y$eXrAao3pwe_-_w6x&2a=s2tU7Fu6YZ#^@fSqjq)mo4<{*wDl01w6xa`CXf>57H)w}Ef8c=g^5|Kc9?`KA%~gTA zad^QHIW0=K$!=JxxH|!Iun+l9`?AqRwmms^kn9(jg5V)q$ldU=A7e+6-M~Qw%jas} zDmGX1ZwLXDRP%;l$EdmpYp3QOxYhoNKP&1h>!jWe?o4|5eF^eGH5p*FF9{_4MX&IV zoy{Ylx?lIpuXv}(s;Zh9&JPsJ2c)|;^E(xut2}D4XZzh}yR#>7ViqlfWY*c?O7Ef2 zxD%>9UjsuExWBs8dpr6 zsL_pMMhwc%(xQ*I)~1R5e^{g&#N2kNu{z4Bt>>w??KaOQ_9Xz1Y`<`zAclYBO6aY% z80$Gv3d^}(FiOO(Y*ke<>r?$t@;FZ|3PV{JWej#GS;iB^U8Z7PIu5DHtj@vg8`}an zwJxaJ2s;EcZtms!D$LedpQV3VrD-({oD4^Xa-7E6)bQK(<$epRXzzy)9xRc^)Ph+g zivZxwIV4?;9i%d_*_Ze>n*-C+2qTb8#V?yr^@JFio0-i+I&C1~o>TsooQBZSWT?vwf#36L!RO|CL)_6L?6poR&}y=5 z_IRIF1N)4dc?hfUR$YYQ2XSZfgiE<9QDA7DHT=(6WK$_$JbujLl6oi5-EZm^ z95Arg1{lsC5fmcPU{=026;?PZq=WS=1Q4T4~26k#mlD=|@FNe?6n>?Ao$bFRU`A-e@ zL|os6vz6PUsB6S&a*i6PRUT*;DC zX$t4x7`6ddC+{u;rTs>`41`-_1-96!Lv%}Q!cH|w^c)^yGWd@+Jp%EJ5^K)|(FK=X z{C$O121;%>G4abX*d$;s;}la{Vq{C9+T_ZNY%$%JVtr;lgrK%Au1&Zt4)co^>uFL% z*AM~~EI%8OC}Ho7W1_=S)@xH>?5r9i5paAOHXgs6**57NI1YPk!3q)FyMN@1(n#Gv zi0zV2xNef^WiiW+F$MyBykZ5^ElNviovjpL&j)0G9U{hamD(8^Iyo&rV?gcL1%JJ@ zUzUer2P~>J3Pa6sk^PW$vvAKho6bvXTiBJx)Ob`og%cqtLYefm1#3+Jq_`{+6&9@@ zR>{!9V&%I{VfR@uRFhtF!{sxhK9+c+Txv%!YV-LKOWgyDN7**4#C~M#JBX&<{PLx< zRf>6orwiAzxOClLU^A~B&Q}xa(*x}fkMz_Jkp|gF-8f+&-b%WJ0v=bj**!qqui~dO zBi-Raev#LXc|I9D>w#}UF^&kzZr23J%9^=$tZ$p(&#-c|Qu3}PUd=`OA8IVAFN zA=YnRfxvYORQLqj4}aWxnO)_@SYyE+N1zfMUixE>N8BsXul?jV%cF`r%843{qm`j{ zP7sEIJ3el60i5PudsonJXS&d_~ijDN$kUSsXy?#Pfv!tv>4+G3tL(KYm znGN+okFyGx*qMuMEDZy>(|dg%g>jv$iaLQW9u$EI=qT$&GR(%}tKzR=sZR$MOKeOr zGBy8=c0x}g2bq7H5z4ad3nDk+xct{dmL6$n`%84GGsyaqOM+a!y)LXBgGlD6bcssj z&2;gBGc1yS!>Is5BG({1Uw<`X*~uhhU#rYgg=w6ywU;EbJME zf*!wUzvHvWAlN^B$uDJ%aqLA#?lI?~tZb|W(M%O+t%g0uvMs0mC>4{#+rSiy>Pczl z@SbDxnyvLbK6{A%Pu0g_#UNN278$T5e0dWy|&)a%zt9D()w1$~~lU zj6uTJDz)u%8J34Phg)41buvXxpD*r^{encIzo73J z`R#w1(XjDHoIDzhCO=T{-5vsmQx1Xl)L37U=-23SO8&^9PhPpWx*%q_$p~WEv8#t< z>Vz9wHj%mPP)TV4rO6qQPp!k=-K^E)G48|s&@av=TiAWXF2Wb)@)dl!B__GT`>)o^>U7>YlbQ(>)AtNLP@TA`A2l@`%f&ofd34^2wV zX#s;U1xv%|vv_^v#O^evdHo1*+!+0FTkJek&5uhm4d1ZYnCmgbCN8wt7ENCou&vZ; zezoN2vfRr7J&v@+;+AjM?N|0|+5T!PEHeuaT=l~ZVIN0gNlkkl?>|dtwaeGL9|ag3 z#_Sy9w1S-G4zo8{e`ap=WQOE~!?d`p3cOJC%@LPQm4ul?+TD*FV#F#>nu6^bkzt@d zZt)kdhE29{dxAVdpp*nrLx`MNZ!qjYlKR)^Ir5B}zbK07EV~NZ%@m+#^|of+lxBuP z^NKv$BHI%cd9I8Fx&8b?7?>DuKE$)!;PdcWhL>Z|KAGeAlabPT>>~a4<#ynaS@|`@ z4ssRJh{H%;Hmv+$@>Wz?!>N|ukN;#g2(=`orZRBcyq0zT9WXamBN+$3hObD*56_<0 z_lUBsP$yT&ZUWw^Te5^x()C?lKMNra{qk!LBF+U4s%o5TCw$p^g{ zl0mIH4wHGt!sZym^58INYg{*3-*3hzuI)z zxAMGUqfa|J@Pfg)9P%?~Ms?RGA1BEBj@?zu>|ccprTayNpZ!YpGkRgW{+qrZ;^Jg{ zcl;joQW*xg6V4x^XD^|Bu!v?oF5=i@CDdmO}KzcwwJyeuio7^OGZ8!A5@k z-5H27SW2T_Rg(ItJHZ#$&0HTBTA~)udNQ_0&te|UWg$mUdJg`~&LBg6VI<<11o>6D zCd1$jI77;Wegbu;a-vDjF>Ozo+X8#~EYb3ohK?`2+lUIsX+F#O?oIH1wetbAZ@o3+e=}S~xC-Ru9AJUm45&nt&y2C4E(F|<) z!?=7s*Mj5}kh9fo#+Mntb39;Q)>vP7<&KIJ>3f&Nd;~n%e`bwS+1>w;Q6b`HXLA+n zh4Eys6qDV~mJLv0ac)f|Uus;VbvL4CT0r&QbIh>K;!dj2ZIQnxGP7jacH0S%RDI)gTb zHZOxCgJfmgn?KgW`4|)wbSJ)+rdoH(#>mLbz{&hV)?}m&?Tl9>k4ofO`b*XyP?T-* z^O@Myb1thrb5^ff@2^gj1}@*Vp3$!ikPl+w*Uii8PJm;mJ0sA0>QRxc`r_;TkW2=J z%T8e!;_ebsBnkPe(}YukY^V;1;<^VvMWW$kTQwW?>x#*}$Z;Ql9XBlP{ft^EiPrK~ zLjzdSq!BEw`I`f-idGGgniOo}5A^gO>Sy+K7!@mjPLdA9o%$f^K+WpQABzR_zxD4N8Ot3#yG%nxV4sk&!l2~ zL$Y|#Ya0TpPmacSjP(B-jc9xQPPZian!LS!CJEpL*M`RDzCT!gM2icpDKubcz;kb` z@jn92kYkW*RDrmIc(TlVo3touI$sDe(@B1RkF7vBu_84-Tzr|HJLcx)ivN4c!5+f2 zq2dC&C}w_tm|*jtwsRmm`%7KDy^SREM~I_bypV6RFnuoMdU7M4gPZJ3g_|SqWh+;X z98So{*Tj}3V9Gh)azkJE^#xBACmyfzqV?PiJHr7>-d~f{rFXmssxgCp$Q|L%C#uU9E4BNFc~6irTo-VhojrzSu~aLfL!?a>UxikTElTF*S_PM5$GGNned;!5dqkZMabFND9&zepeyeWF0OLjmNISZqDb(I^Ofhkkd(3RTWY>C|OeLqa0ipI(RwoN#THA za2=O%fx)d+eEFxS+s>SL^&pZDP#92y&LKnH`p&^}|L-w=FX?V*Wo6Z@r~KEl90R*V zK`tS*zsjH-n)6i77d_IkIH!Qf{^Dh}pE1bH6rytp^lJ_tkCxvtIvIKJ$K$1B@aJ3( z@=Po~uVcLB7dzKBJplQ!grvA6+B%-u6TB+^2!W&zjJ)tPDm`Q}f7kd0LXI$j#6qIa zGbZuxh1~52D&klM5$8R8_)Dw&euU8U2?Q7C(e(`Tvu9j`{Mdf#g_d425##{Ppg#GB&PF>F`r1jnK5FrJ`04NAa@K>h>4g;G9 z!Mf!8-jHN+sIOn+fP{Rfk`y4I|DFbH5ODEGln>&Zu(SI4FNF6)`x|EhxP1&mh1Zvc zk*+M#$i&@AJCmBm3w7S5kN+rgy2`;r_Yemr>C~jiX_9|WoQLy%$)of+5!JKD%uEArjc z9ghsj9#M(9To@ukx?y%p7B}N1)uXNZ>2s<;e%@6^XRe83n>o(B9F#i{K)TpnXcGYg z6c8!`VkwB50-OgjEm}R)eVXq_UvsJSxBt|$;6f+qfDct4m9j8%(R z9~NHT=ayqQ`PrK6by+~*)wA0M611h0G}u_?9`)Yq?f!>;ZUo>+$NB~A&-k}*-=^Je zjuajM4}qFTvZVzDE&!4{Vg3`7n;`XorBIKGf7)Ep#XMsC*)z`$7&2DZkU2b4|ST>YOuei*yX2wTkWp54FD| ze|;6a6NgzG){@>5#IIOq+xh2=^Tc^=&0zJn=bT#`gdsi(&?_ldUqezhJo)vNEu5Rb%Z- zHb=ldWYK!RBCAAK9HwaIPf52qUH5OHMqEB8#_H9c&#)Ptm(HG9a;CaphI+^_5*%0b{nZDz>_DSfw8m(GGju9&pM$8iVdd^vrAImo)k+sn2WQB^FFUH zMN~Fv`$!mzH1d=#w(a{1k0Bjb2B3KJYp7a}{!Qzysq)3DMa0QtozPWeXIN46^>>A1 zSoyBXpNSr)0Y{v*(GH>thW8ddUqL8CrAk z@GD%kE@nM$LhTTywa1W@i#Kvrv3#9&R!D@yBr#TCwT&QQzeDEcA9BLY3keC;DsW=v z0R{i0_8$MrqII%bQGC0WR+dYa6 z+#8$i!sCpVmbgMx0O>)6#%pXgrpB@u4UOaL!B?p%ZyH1DyPD;*Hg#RFV(DSD%^~_z zh7g3B5O2E8^*TXv`6^siw=t)D?(|_WrSV;^ix@k90yLnCJ`|NH%hnu5o9E$<0ir{u zV}J?zVSMM7d1`QflH7E_31O*Pk!X_9zbWiH^CXvaw{{vc_lc**^^`~%WW#bzTD|w2 zoSdenTWvJFUj&QYT^`q|<)Mk`%Ml(QHEBSOMP>BBLqjC8IOKF=3=W}}zGq#zm{3{6 zl{$~|9vhQy9}ygjR&1{9cOS{f91T@N9pf|`?F5&E!x3%ni3%9%CNm35p$xAUOtYtA`36a6I z0i*SWHA=`l`to9RRdjYAov#cO71|)nZcC-aURD17TUBD(&!he4?PmzE(&oC= ziZ$ev&;Wy@%AVMAp5fjcg8_oqy4NHmy~nl-3>SzXLOxzzg91zSDO>7lH9g|trM~|9 zQ2SduK#NTpf*C5uXr;sn2pk+OiE?$%MB!w@+zoD_=B?bJ?xa3)C>NTu^MIqlrkf9% z!s$6pl8#H-j({RoZmi7{KaeAdb3RqJS<4k2y7TmD!ps}hnoCqDH!MFss%!!Y5CqFt z*ZLYlAg2I-1i|P~z|9?s=S4!KsixT*>#@Xwf&v+KmoHd{QVcZ9hLGtNl!nNT0G~5A z{C4n|J_d|2tbX3D-PDKqQW5*?_@GSe6BBXkkKQQ#1WwG_G8Bkt-c5E8a~WH}A;ZyP zD#jpP=DxjAuI@VW`CZTa=LIF%xZzCyu&@6-gMwC-=Wdwzx zk{e{?@R~!j@n%io#%iOpxkrDDuY=8DH3~mI)>XT?G^{ zCMciphO#Rpw=cY_k(k7b1mbTSkw+FW=RtVjQ4yO*g}}?t&fjntvoY)prYAXle?L3c z%@Fh1SUq7X`aiwiG04olj&yo) z&`;nOqncQi(MT1MZ+vo6EmkTSN=wn<&7uQq&uba%I(}gs~4O(bBaXEkpEgugmJ^y3^=C^aT6%gc*6{Sb@sth2NL~-t2eV$!fnn#>Yn94gH2BwQ**tc9 z{VXd|FDAP9$K}#o7otIr3vwMxI&ziFJ~S$& zrbrf}i_TvTV6#8*N;H}lAoCY8SsshuE2IJg?T}(@eYn+^h)wlMyw6j z+Mz1H zD2ESF|KCSHCz@7od&$+Gza>_P2W#wWXlPjLU2>6#juf&`yp-56+cikxT%7277k7FVK zGFGdhe-|36;SgoygFI?J=GB^z(VflZ2bYz%l+tPt|W z?S{&3)3R4i^2d+od|Yo@z3qfzHhQ}ao=t(@5!9SD`PM8o$*=wxjSNRghAB1cy1GfF z#oL$x?rij$$xWKhMAyD23Qec4(9x~mRa0|-%Kc)(oVBu-$&{MGcRe9lQR@hS7&dzi zn>$c~T~~c|LLv-2XqXm$W^FhpqP}9aI2ml0n*6*K<}>)T#$YDbnpmL&Vi=?sh$ku5 z@%i|L(`@V3C0Gd;8i>RS4n0Yh=`gY#Bp*6+<_xiowdKBFtzOm-d++L~8@g&-5GK4I2MQCy8c_<5)ON)tJ>31O zy8++7f1YY!1F^W$ubz{1=Nd<$dmm7u;POu|8-*pMn90FgX0Vl?YrJv8xyD&uPkom; z))5w_J@oEw>$kxFGOvEjO%O|y#AJ|B)1AJje7MG0+s*!8qSLLn$rh%mDJeSdBDCHy z?}{R?s(b1=mGGXlS4lE6g`X%PK9U!W%vA~J&dLWd!xw`yuey^lVgC6pFYMN5^#arF;pvIi z!>vG1OG>tY1F8{8ux=u}xw}eA{QP>F4=pd8f!}-Ve^o&Lfj0V2d&Qe}?Iay z3c%muFV^aLpsRl^Gppe8?kyUBzXzrz837}f!(}#bAMk;{0e9<`$(yjw3Z?v__&m$% zwUw2QKakHoa9L1Lui)qQ1IxDqB0z@wovuv`(F_FN?POxVaU)7wJDmAP)L&;2nd;-x zt5^B?-irzk`h5Fl-Cf{`1IArD!nk9NVDcOix)G&mCN`nQ%d39^82~;WZvP`kCUjCo zZ$uSXc1puV-$yRG9ze8gvjM{AztI6Jqfhk+o$2p(2Nf^7UclSQ#Qfvv_}r!Jnr7U) z(*_smZjHU=fLlN{KXT{i`^Kw#t+K#WeR@#-gLrekGdeY8lYr<_bw$pMC(8#-hMner zX(VFPemzys5blLM1??bN(;bDlxia;tpIRl?1>HN$9H5By(pE4JU3(eb)m3nrTV+=Q zla~GYb3%et1|LJKS+YNOUC`CuT`t`4E7o6U9+A7a?xqW{_*cV_!sKSeWnPbH_@O6tCPdQN8Y zdh+s~X)r~h0f){#YcH^$x@V2{^3q;6@Hgk>wF25-BC=w4MEnMzr6qq2*Y1+1(;Y{i z&ED%G(x`gxwYP%)?~h@t`5zn;J?r1WR5nu7VFCSYJ7+jo(L-wUYvL{igzihO39=V$ zLe)N-k@~mG&=&AB3KrXpp-??!F#=*H)HUmy3+0n7z%TNv0gX^;L+tkMtf!-cZaqNu z^hxGUcH&3~e*oUWztnJ;zqjo~X=DAfq(0IUOMi$`OV>tM$Nna9NJBTU-h=32*Gaqh zwgRjC%$&_V`W@X;CbARZ_d$0`Xg@6rVp%Hv4lnvT=$jYHR=Z0ohP~Ksp7`l8)7W6% z9LaKcG8XGJ*g43&oXXQWnY`fDlhGJHw%-_kWw3oP3|8`1Uwi8S#bB>Pr1 zeomXf-L0JIvnhls0&4kIzQqAd7_ zWOSO6nwrd#8ZO#t!V~xjdlTx`v2@r3#=6VZM&!gf{^TlhB-Y5VmykfGq%Bl=Qj4L; zY4AD@zqBKyj3&zDR$ftc;Hw0ZMyIOyata&G0Dk8sr|8BP3aMi4?W#>7ZDRH$v9Wt?kxoQ0!1Su3*ye>ecSJ&{^+pk%+3mrk18`w9eC%FJdvdM95Pk1^v7md~T2EE}21ZJ_eh1l{u*2}+1Jvxx z&=KFo(5|iwm$~%RXfZHcNRv4CcPl2u_Ve__vUhIDTtbxnj{9Ywop$;V86fp+&v7D0 zBORTl5JWR=B^4{*m60Ck9?4V3VfUGucx1~S!TckR)*Y2g82T!cQwg43B%8hrt;?b|;cOIyK*OhAHBmM@wx*yd zeYzo#C+1WH*o0m4TuFNHUc_!jk+X_ZXQ6!LpTIQ*M?mi`DV)&j7T4dsuqRqk2#cuR zte(^vA~mPxIt#4`?MtSM2->rZT0BBv6?~${eXc7V)|xPY_RU3$6%+-1D)gbG=22b= zN2DYt`yXuoOa=>vQ^3|MDV|7R!2YoQ-9#Z|X1KCJ$H+G}&2zQ62il5eM9z;9C7uF@ zV2`d%CxfuzefNLAZ7}0_ zeoN`k5`6TZdyju7y6X?RpT#L)4T#xV3u*!`FZow!$f+O@f&x#g?`soe@G@w(Fe086 zyh!irU*^-7T8YZF5kQwX68)CPY7`iSZL&VOCG1S|aQ2{A;oA=%Ug6q%gtT4f^GoxE zt-gUP={#}Qp!?keK>w+et~w0c*G1Z^FgO*_fxmcl-hcQI_U6sW2>iC2sV`OSdXV(S zAdfnVNKPDU7aMK%S8=GC_R1v9e(G6}g#A%c6ZTyzXbu?61~V55L!OUDD~%h92FyF# zJo1BkO6R+y{yj}NKgb@SBdbVky&uD2R@!ZHtImEOYX}~4Njy)X&q9HRw0zLv(Stxi zt6bmkhS?tew|~4@F2M^6+xdf*)>h8X=J<+=B8zC(;RWxxN@zD4>p0rjL)-4pvxL?= zY&pdfuU)(CI#ZhS)KIY^cGhV}+2#k6ZK6axmounN^XuM=rJc|cRdy2$T}tMQqI%Fa z-?H?CWISk<9$By8#IP+Ti2P@oyhNg{OUbFJBQC4#fu97PIw<;v-gSUpIzvu96r1cy z)dD{1-#bQ(X(en^db*~wP@@wQF0^MZdM z34n}wu;%#DWW$D!7Bk-IRFkGs+uUJYDk#)@GV6DgyN~Q0Og|MNRQ%$grR}!C?mmR= zx{kGi1>L*_k7;yxn{&t`v^l}70Ahw6$_y58%Jb?%#x-QQ&8I;El8aB3z1QZnR{4QU zB)uJdBo0F?gc;nOwOEK=gl4(s&`780$B+A(B32zPtNca2(}ZGVm;Luh40!i;wC*Hb z-jx>(-p_Y24z)w$MKSb>nc=`*gnRu#_Vt2c26Nl~1hb~8o)41lEk9U<&;^z+x)zxK zg9Y?`(nu{+hDI_XaI&wxTpO<3zG>A_K-4T$of1@Mw?;ZUw zUVN_G%zweu8qtf4fvDHXpkKmUt|$X)%gILbu&*$dGxG|m6j7;th`0ES8qD` za;@yk-#O~+gOCi_`B~Fz)+<-}f5eFw7HK{_R#f40?n*w2BF z=JLa1f{sk;1lNADRE7Hps^H+|P0@fscmrGc$LoQeY`nbb#GDsv2jQmk&iX$(hN$0^ zl&#VzZBgo{+ zEte}ESav69puH4!^UL3olFa}C;5}Uv{JiF=I1(cw&BtyYJ~PgJ;7AHiwsT^>^9CfV zFz{zCNpqDW3IBt<$7s-jK|cJ)Zf-AIUBf~Y=gL=7&;}d?uJ)eu5# zP1^kT?E-jv+2}o}@!rIq0*vX(cja1VwDsOI=%~YLJ=CKhO=pylUN<+7^YZR4uzL}2 z-!jF5#u=25NyvoWd)>VONypyn$wkBxc<=Q;|6^)HErayZH!cPUS9gE{+t_Gzit-Q& zgQQ{a#kr-17)iGoU7L1AXyyxD8^C+n69!A;bDydWt-2*pMucP;MlB$A1&5>Q*JU6DqD@jV&vno@uE?BAbM?KrIWbcY59N`xA`L z3k&l@C0?ib<&T$<>qjP9@hdCJ5L|6D=wezcH>~=T8jA)f@#gt2U;djK`eJuKzYqei z#jO0+On3GCiPHAP``|PMMA)Gem0@t5IYW_v)-xe8n{$esM~A!y=B>N&qHC3TVGl~i zyCp$?7@fu`=D1`MA|vEF^KPD+he6gCtFe*x^D;4PmrunRXvu zdwk7Gqt=@HmHiKtxX zDB;NHX0`eyoSh(8oROs+u zd$<(N=Fx`ZuZ>2j7d|}Acm<7@F@}VCG4>m0CGB>J+Udg#(kow~=R%xisik`L zu=l(K@cr1`dZ%SXsl`P8@USon$TyhVKSB|J;o zno#SoO)iGIDA?e$(%29v58lT^XRtKI3kwfAXLIphgfkHhrJ=n)t8Mgs8pmz2O0|dT zA-~ctxh-PdUZlu4`9?BLhwd(YL>udPwkBwXg+rls+rucw-D$tMzw zKrof@Ct%pM3)rZuxdZmuTRkp2Aq(7QVxwycmj_)svEU!gLhXa}=jJ^?Ht4SEmiQM; zr$pgu#Qzt2?;X`-`n3x)KgTi_(6JyQFb*mz0xBY%jFnLoL>!;47#jK@!5Qy2DsOtXoBOx)M&HP-8omM$(ZIU6NjIvgxsSW>#!H9 zJtE;q=C8;}+GynH40Qw-C zT|D3o@>5{9B(4^ep|)p~43B-O<$$K42+#W1buf(nIDpt4pb6ed$a64#r8W147#Y>j zDN5J%Tb*VP6#7!c3$2Y%8b}A2tQ@1DGuv~$+~96!P6yPo35UB_XfACWP2}_h$>V-k zR2)cAqav`NQ!bSqNHlqQXbNUEw%q}(Ki!)EjMo`ZSeFbbKSR^yroL8DdImjFKN&_w zMoy8%eCXRTsNjDU_=etHqQ0Rvy5GDBA-i>I?p;wkLf=_Kr_zuTcSBh;Y( z?*|VAq7~-E;R0y}j+LMk=Qp2VVt`us`y{4ljtV+-UbEvizU%-@G21sdQl)(V;;r^5 zZa2R-FWXPZu|sd^XSdt!)j(Fg6YJFmWja!7;L0SRZ!Ju# z0RS92J3A|jDZc%1gXXylX^RzF#p{(+;x_SyqcJZJ5AgHZx)`dA@m-kY$ab55`#XRP zL^QDp+Gw~){@Jd;WdtE*>~ae&#RMWh!; zrdjP7!*;tdeY?na!?A;=Rn5ukHLyKid~Q=BX}ib_^x67rpaIVBdJ0&kOi#M z7bpW%5u+_+yMbOhFyJb|AKJJ!G2YD^kV>aC0i@nxr?&)5I7i^8FG!j8D;2Gt8x^96 za$CLUUR?5HNV)3|4N~_yI-b^i z;FQ7Vx)!kzyNqdKoGvA$64+#6QD=_ZzrbvbAET%x$a`AYh0 zQq&5k1p(`%=>&dSUsyzJ36%4)3cIF?CJOO4E|DJ5{TG{y;x3Az>MQlKTCgric0-w-npq-aW;n~d2{@DS;ze40(FFL_M|}}DM7c#5Q?gYWr~npV4kIFRUtqeymCft) zjRw8XDd6o31=%!6g3Q8mJgS0@(%A7yY}<|vZ{OwT&?8=KiF(AGRS25ecQyZzD%3Pd zHe3p>>bu%-q>G~6i)adXmI3NQPZpRPHR|FpU~`L&MrwXDY(pp? zSsbfXD;r2JaxI$7D*|^J^0pGc;k+3)Gh+5$0P)y%pFbdGZI z>eP(~&tGc>-r%iVY2@1mSs(6v7Y4ZbA6<&(A&JD(0BtJJ%s6F~=F;UIwA0te=S4&W za1MuyOgqXn}KQ!R#YLU>-B6$ zbGm=fw2h68o?HJTyAtzY^GsO$ke|T8<)Bf96-KzhQAJ2toQ1@KRRlZek|}fZFKf58 zh%T0W0))yX-d`$zhGk)Bq@=6s0Pxrb(nWARzdZy79kekwi9aTMaoN}xEZWlgbmUKB z^PwvgNq_P2Li`vMQ)vph$AH4otGQd_UlP|kKzC6^^*j{bwZ2s|5U0|~P;bKq2kDmp zb(#(f2)o8cMn%GTYjDTzwatB z`W;8L(k=aaOMMn2`V=XG0+%x&ocUC?4S&CHWGwC}`fhJ&vQXgYqtBnO`Rk(IroHZrY0pzo01<0Q$H$ z=*0yZ*5>BsabCk8qg}E@E2U#LtDqhxt8X*WoBx_v9@vtqcHn@3KNQvCf`VL7A5SP1 z2!=AlUI?@6DmFjV*1JPLx!w+PE#bM_F2o;$xX!y!&=?Gfy&Y}cUTu^7i4yCcgz+vi z+Nb{8H)n`wkaeq=3G-aUjnsvTj&ww*5r($&5&ZK zUg7Z1`=V?KW&0qaecEx9Ig{Fc{NZ1Y?ve1>HhUPl+CZx^%&c)MB&U^Lj+(t*S*IfhEVh9 z$pB=79CM+7H@9D?J(ZuZ_nCr1lmdRXFWf}u4FrCT~e*0p;pvCzJ8cw6? zKOG?m^2L1W%|PPZ5Jyd~4P;O9kL)?en`km&6)~qA;s{6RA)w=O(E}o&pqUTRuC0*S zMkZ?I_1d&Nx?ivg@GlszXV*aJI|!h+EN@a1s)n?=G3shsh^*b-l`DBjGGPiW)*enO zcg)*4*F$cz#e40GnI&Jg7;n){U$3H8)SrA((qQ_dk^;lK2sM#eZoI*H{0mhy33|TP zP*bm}D@G=NY>}tTVL=MKw#+*vbFH8*?C+Qh^+hYF3p3fEaLaveq&m`*$Qm(afKK?M zMUdSX`<7jw){zC>J+R$4mWV$o6n*FBF}zbChhbajEr%l5#0c8&3|x>jSonTw0FtBK zgev_vY-szqSsuthbNz)rTl^p^X~5#B=(=eYlTK0we$=%BP_lU0aq}3cO8l z*pZEn&X>3GsMBydrmUi(&l{vhzIc&Z(AsIZ6X#iXI@-06XTX==2xJ70;b$@o&CE2! z$!EXU%!3FPf+q-@z<4-7Lm@dGZ#_sSP2qdP%+sve9OEP7yg|c(l{rxVM$ki6R6cN^ zv8jm*u`$t>c+=5wk|6<^rs*mC6a&28lQlET*rH z+&&W!WtXCT+1=Z_UY$m{_hpk|KpChE8OR+wh(e)K{lMP%40lMc-e9#%{JD=-djHPH z?PrP9r~RWU{mdE1)4aZ7?8k?T(&T?UmXe!4*A@_$I$CfP1?Cv`&VYp%1 zbwlE15eg3ry`l>@fM7TS0V0wTNFj!u`(V5D{nB>#?niw*n6A^offfdk!`>gR1buC| zQxJhh7YEAH7DRl2djcM^T1%j;T<+~wXRxy2dyT(3wdHXg{rgQd^Sb>Ks>78abGd}I z6i#wdyhgsialQ6F9Xt>CF#+Z83;PpPNSk5ZBOfhf13}|PRC*7B?cFyk6IkASTj@*N ztxGnt%DosWK5gT1^c*CEZmiu3>s`59a}=7<=3D{|dqB4^qg@UT%!9(5y}XV!UU;?IYA*V>dp6ZAr(Lg_{XZsWA=IM3 zZ6Nahn3Vq_7NB_Eizwdb`kHzW-}|9! zH~Va&xq0^KOxDwxet4M@*Y+GxQ?JT4zN4C2 zCi0@eX7vV8LK z2bIo$XE?s^1M<>P-q?<{!RzcJBDO7&5R}hDzTx`umT6fa9B$CugNPdbfe@n(X1Tv! z(j?rb@)AhbJC?E(5<^3Kg17l8ti9mgWpA$u0nm=s2*YU8-Ojfs&)7HB)XY49{7mK>#GF&fi$@^07LKI-Mju-Fg6Px zY;!3@Zu-d*!3u6V*SW~b+_?6l9nd~~bt0Z41K(?r6nE@)Xa9p&Z(@4hndS5Te*QN2 zXCQPng5|7C#Eqv1tki}SQB>r?1F=Q>)Dv;u#^e7^uho8dTbu*Arsr=1*tPa5I>Se6 zgW*{eN`3?PXRGUnTemcnuO3Rv@i9HyS2q2p5v}H{^Ygf{@Yk=my@x6{xV%IzblSY~ z!Z2c}uOKxi6Lzc9IJe^6-42kwy6KDPI)2|bIuGZ}xM%eKwq3^aw*tr<)}GrI6}2_U za7!IrPC_Em%GW;pL&4;cY!8HPi4ctMOq5MVOedx8Q`@h)Z+{Iy66vY?Qj+#bY5b?0 zrjZFPnUeDTATVNqX*#q+pHs-mVa@LR-;{`1y88dx+|U30B?;<~52>kr zs$64q;6TlZ!^La7mWI^i(xs-xaxrux{do7)=&0oz#NYjqB(AA>+SvbKrm+mN#mJ=l zXIBL9ZcTA_adW}_`_5gcg{e{h)$t%BiT`gbAoBO>9})c@17>nPU)5ApA0szM2zxry zIK2kD{Ycj9+qZ_Ey1@iTI-7mp{=^meyw)P0wox8d%8_jMx)ew`pCBBEY-<8c(MF_O zN2$BCtJW52L}GJ?f+FmDA?I(O?t7~ZiO{9TSbNbtE9q_V(Zsv51IVXO(HCGHoc2X{ z1y>t@U3_mHJlHZN`OLfgdz9tG?XQolHv(}Rrt6)hTbKKNH*CI^i);p`kx97) zhECA34o;Q%JfLe+-v{IeKa#6w8_JNOx%OUJr3Tp$5arU}cn6egHe6i`f8Txj?%BVN zBNQuSTlv$V90Pv@nmg=r-?zVmWnOLmgF(LgED+I=L@Tm&KTpkq1m@Dtu-gp_H@+U3 z;k$v64Fdol*KAlT@!RNmP%d85{6tLE-&b5O!kG~wG5qZ`aJ&E0-`?{P%k@VVtXx+wb8eAY}rgvY#dX)cLVu?$`X-%HbpA`0vR7a3?>G|6PB+S^<9ex0u7q`icNt zs-2627D<9Q{M2|uNfq=2L3+U7k%@?kLi^9d@*SCy znXz%`mWtVT-uI3>gCLw|VB$xl3kI{4?fm-Q=ljw0v9oqAx%*^>>!Y#X4p))3AO77` z-FNmSBqsK30i``Eh#n}c1!W&1JHTPt3t8|-=p5$9k>Wmvv4IP{7^k7k;jBAzrHC1a zr)e`&UGnG$J|z{u)obu+cnj*C5x=Swy?F6@2%Qz!-hVpyS3@gPbNM~hIHv7IV3DR4 zP3gE@7d_yy<;}0`cHu6)=xakr8rxh0>Z8j>9b#-vO+UR`)s#pSlc}-3%vf@o`mM=3 z@9(rxgb<|TY5Lr`iH3nMn?-P?$-JK7?K@CZL8CYIrUI((4f8X5|CIt-wO8rl~!ywRZm0@u^B)4l&Gdjku+2 z6wGERZ&MRpmwd6UE*drSbp?3-!D#45 z*8lR;fK{%uhR<{fWsr+JFip3a^lAar(y%^gZ)IXUO<<^Be!5xDww-o9WXvDrh2}@L zLi@q57eUqU1BhiA`3{UU+&ou%?&L0gjWi6E;?*V-#h;su2CYU;&QYh%qi#QaK~#{A zBtNSKeLS%Sr(x;sm%1a_k5nCd$hdostaj6e)XHlokzERha+)&?DBlo-Tyj)D;J%M< zxOebsW^cELn&0GH+dvf57ecJVW6bI}Lp7i3)p`7@|CarV2M36M#A60{u$Ee|5SE^V}|ljb()DaEsSbWVEw}uV}!#@%p@ynNFq`8g+hwDQGip6A;CIr9J;L zLA2PmIdZo0CP|mjnUj3}3>3Vh1idAD(m3T(bQjRm!kw<@3sT6v_PH!+F&htItgfeE z*G5ja2QA)v(b5eE0&~>)*D1?O_s-5s;PseQ7^#&!|GL?^qy@5uS!a8W2^YEgqJ;rT z{lVVp?MH4+!Zf$q00zidFkTG|UeI=%oo%AU`Pbus_^)9NeE1|ql3t$q@4L1yiugft zZnF#Q&2Qs5bD9i5py?UKi&j7bzoL;-3H^YJ7anakehPXK9UiKM)BRc{>~&B(2n58c z5|HH405&6E!7sCG3QwJ#QPxn7_nR37(YBZqH)# zWs}g_zU-pmLWTY#ps`~i9td*hba!Xh>mfigIQD1C*8sSmd~<@-^x|hBpKE(5TdXU} zzf)~T6o#x^Ck+C{!$U)$`mAm$25mJc>u07M`(_m2^r1Yolah(uiyqFxlNN*NrEcD>pdcwzuc$7!lU)@^dW zOB4-+;2LDZqwwXw!(Inf-&?jypEfG#vUV-tp-r^jV5kNa6&38{$VL}3Lt~WeE47KMA=DS$(_-?kDGCFg*(@E?F*~);KD72)>m*3{0p*BFVyH!CT(O4;Nfebx%T9DpP$|>{N=k(fIH+^Lo6zfLY%E8pN;{o~auLN0MRdT&Jo>1S|3+`yiCtSHk*O zm?~n0M5Tk7LG&AzCsySt@TabNeS;!a(<%C-bm$0F$26s6P>x7~u#O0&AV|!vH_)`3 zZLugHD1(oJHt>(CVkg@Ba+-|Knq(~I9#B{3#AMTU=*&LU>S6;&iWaMxLEm@sqKyqG z{cen6*2RL_#Vl|UPPeGvFBWyyHXIpiB6F!?FWcfSFkZE@bcc9*M1}0 zh1{_>?!qvXWF z6hp^P4FOrjTK!N%F>b2UDQ#0=PlZ}c#el{sL z$AK2VO8ipW!#wAfw5<<4%up^mURzC@?l75Apt~FfPhMq6AWptPiDXaiEN(u93+4Co9ztqp%hf%JdHFx z=jiy>2JFAnUCWTy&CP)y#;)EB(TKy1RYwEU1+*U31$+{oi`ELL zo6(pRf`aWcIZfBOpH?7Y0?d|MNQhuoHQy!f1N$r!#qi;zZ9)_E@AQ^hx$Hgv(g);B zDu-YZ>W+OaPq+<@sk=_$ps?BN*x@&4YQ0S#>UcU6fye>ejshqZk~O&TC9&K9KRRRq zX`r2ILVk<*Ds(=4U4@7|bk8uNBZqB)cQf4SgtoA`GF$hR1%$6J_>&AGx91HI&Jcyk zU}XAOpuKMA2;QASy*s~6#i|(G>euCOfhXv3mbC*+7A*A>X*C>L(MVqq%LF#xrN{Z_ z@L7PJ%(sF#m?em^x)tOnEr^Y^?zX0iUn#r;d453P&lUsfo%R-eD@0>eqDX5^6;Mx# zuYG>-tEA4+if0m!&tV1+H4dwm)z>R@bO$UW9wW5jsD73Gtl9H0^ zA&<&$ua(i8td3%U$}XiC^=v!)0yK)Rdk-n}O`%Dx)*#&r4esR$gP)##`<4sUC?-Um z5!g}l`%q%zquVunJ#%clCR;UBANy3Fo%2%il^vKGL_>Vd33RWOs{gZRP6 zSIcb_{_fJ1*W)t~(mw-ZsaibpT+9A2MkL_WQ}10T5Q^`BMRca?Vb3b#n6cP4#)h*k{M8ZKL>MqyD_|Ej!SP0i>9$BKEnwq?h|)dvnUU^*`I z0`}Bs(tS85rBFH!Q{5z#XmBKfWDVUF3VD$L5?2ikkWio%N|rl15)>ieFUmqf*?0IKFiyNpUNe#6zd~SBRi1YgbWmT2gw=%#n9*v-Bp;9zTBkirghj zOo`V(XTilyaH zT5}yrPOq7HOn+W&%OO#f?00h0jzg8I!~g0@#@PF1{5|9jAq*TuTpWH%Y>#t{}jHav}ri0~>W zigN4!&K-yXLJS`Kcm_!IfPU;mF((v1^$Bky>A=dlY+}6L?HZ~3=<`Wib8q%orDcQBY2&(9@7mn zL*RL)LpZ2+c;z?uSu$0qp$Dn5-|TSh-7<;szBAQI@82i3IPyUCh&bON4R5_mqxGud zrx9o(S65U2v^L6C#P#W4?m>HJ{iSnHL5ZL=ISDGy*fw@)`>2i-5>k*8QvG)2<%F$w zL2Cp^uTath3aohF#kH?c>6w}LYMSptH)xmewhtbOp&cFC)N6YnqEtW;Zh)Lek=J
+ @if (session('status')) +
{{ session('status') }}
+ @endif + +

{{ __('app.notifiers') }}

+

{{ __('app.notifiers_lede') }}

+ +
+

{{ __('app.new_notifier') }}

+ + @if ($errors->any()) +
{{ $errors->first() }}
+ @endif + +
+ @csrf +
+ + +
+
+ + +
+
+ + +
+
+ + +
+ + +
+
+ +

{{ __('app.your_notifiers') }}

+ + @forelse ($notifiers as $notifier) +
+
+
+ {{ $notifier->type === 'discord' ? 'Discord' : __('app.generic_webhook') }} + {{ $notifier->name }} + @unless ($notifier->enabled) + ({{ __('app.disabled') }}) + @endunless +
+
+
+ @csrf + +
+
+ @csrf + +
+
+ @csrf + @method('DELETE') + +
+
+
+ +

+ {{ $notifier->scope === 'all' ? __('app.scope_all') : __('app.scope_feeds_list', ['feeds' => $notifier->feeds->map->displayTitle()->join(', ') ?: __('app.no_feeds_selected')]) }} + @if ($notifier->last_triggered_at) + · {{ __('app.last_triggered', ['time' => $notifier->last_triggered_at->diffForHumans()]) }} + @endif + @if ($notifier->last_error) + · {{ $notifier->last_error }} + @endif +

+ +
+ {{ __('app.edit') }} +
+ @csrf + @method('PUT') +
+ + +
+
+ + +
+
+ + +
+
+ + +
+
scope !== 'feeds') hidden @endif> + + @php($subscribed = $notifier->feeds->pluck('id')->all()) + @foreach ($feeds as $feed) + + @endforeach +
+ +
+
+
+ @empty +
{{ __('app.no_notifiers_yet') }}
+ @endforelse +
+@endsection diff --git a/resources/views/partials/navbar.blade.php b/resources/views/partials/navbar.blade.php index 102e7ce..74fdb35 100644 --- a/resources/views/partials/navbar.blade.php +++ b/resources/views/partials/navbar.blade.php @@ -7,6 +7,7 @@ {{ __('app.articles') }} {{ __('app.catalog') }} {{ __('app.my_feeds') }} + {{ __('app.notifiers') }} @if (auth()->user()?->is_owner) {{ __('app.settings') }} @endif diff --git a/resources/views/self-hosting.blade.php b/resources/views/self-hosting.blade.php index 1a8c314..72f945e 100644 --- a/resources/views/self-hosting.blade.php +++ b/resources/views/self-hosting.blade.php @@ -47,6 +47,12 @@ cd bloomfeed
bash scriptsite.sh
+
+

{{ __('app.reset_title') }}

+

{{ __('app.reset_text') }}

+
bash reset.sh
+
+

{{ __('app.uninstall_title') }}

{{ __('app.uninstall_text') }}

diff --git a/routes/web.php b/routes/web.php index a63c87b..59eab71 100644 --- a/routes/web.php +++ b/routes/web.php @@ -5,6 +5,7 @@ use App\Http\Controllers\AuthController; use App\Http\Controllers\CatalogController; use App\Http\Controllers\DashboardController; use App\Http\Controllers\FeedController; +use App\Http\Controllers\NotifierController; use App\Http\Controllers\PageController; use App\Http\Controllers\SettingsController; use Illuminate\Support\Facades\Route; @@ -33,6 +34,13 @@ Route::middleware('auth')->group(function () { Route::post('/settings/sources', [SettingsController::class, 'addCatalogSource'])->name('settings.addSource'); Route::delete('/settings/sources', [SettingsController::class, 'removeCatalogSource'])->name('settings.removeSource'); + Route::get('/notifiers', [NotifierController::class, 'index'])->name('notifiers'); + Route::post('/notifiers', [NotifierController::class, 'store'])->name('notifiers.store'); + Route::put('/notifiers/{notifier}', [NotifierController::class, 'update'])->name('notifiers.update'); + Route::post('/notifiers/{notifier}/toggle', [NotifierController::class, 'toggle'])->name('notifiers.toggle'); + Route::post('/notifiers/{notifier}/test', [NotifierController::class, 'test'])->name('notifiers.test'); + Route::delete('/notifiers/{notifier}', [NotifierController::class, 'destroy'])->name('notifiers.destroy'); + Route::get('/feeds', [FeedController::class, 'index'])->name('feeds.index'); Route::post('/feeds', [FeedController::class, 'store'])->name('feeds.store'); Route::delete('/feeds/{feed}', [FeedController::class, 'destroy'])->name('feeds.destroy');

J7r#Rt3U;{AcwxNtJ*V+!^T^-)OF9xWNS2q#00M%OsW-zm6ndyENVX^$-p7u8i3cr?*YoiEi zzkK{pEzSO)S@!*3=U#e&|AWTBbkQ^~ilHYO^ia3|W(73-BPE{z$^hxo9z4yq)#~Pt zbXn$&cd(FC3Z?A`e1$gpA%ft`?F-99N((e6KFZEtbIE^~xOx~#NTv1%67|PKtK~t5 zW@uN?&MYW@%yn#Wd__0F(2Ie**AK2gg-Z!4^d8l^_Xi7sS^;duA@#JGPw{;fZDpJ= zL-~Rhb88hRU&S?;Uoh)28CESu833&!hw^=-D8#J$%h~X9PT_dEtZ=PUdV#%9+?5iL zkb&d=kTDWSRDhf>)T}r-7*Y`-U7t9Ba}Wd-Am4xer$k@r49LCZ&mAK^tJTMQQ^geg zm`ff|zW_u+ZE<(cf*yfG`7>V?NeKLs-woTAE-N2;w&%9WqCw>lEWlA!R$*;DFfpu_ zFCmCTR?b0ULIQ5+8wz9!Gqe2`~%AaZ+;g^XomDaXf^|G z=JK{%nv4jR{1aAFUvKB|wbP9U0E#jwOD>JTeX|z;nEjy$psVM%!-f?@ADcda-%+=G z>CC6+0QbHcwr#8G4js=sCBf%vYjzM=AUM+s@ebVd?iZ}$@i;_D8&Ibozo|h8HCI1T z;tdAACWHnP!az_tUO=W!5liDw6hI?OAbk*^f%kvJLf2ZBvcr`r`R_oiv8~;OYzw}d zAG@WTq_=JD$B%?y1nGx2{nT0vZ`~aDn-D7dDxmoEnZ{&o#IC+OH9!=OGmz?h+QQwP zx!}1kPp5?t^??(fLRZ8a6AD@^p~ zJb%2Q6Nu9;c3>Iws_Y-A%^YR6B%KlSdZdZVsEa@$u;{v@R}1*hvvjG3AI@v~FwVXf#=QNAO>P`&=|7{75m z@OeGbseOT6v-F`N7J;iMi62yy&tg99DGTjWKnrUwn+Qi2=f;<&h(u=g*GjVUdWq8d zeKgL3mWC6jP+6CTMdMDjhdE!(UfLGccRtvoTpl`DXy$;GXR3BO`Is|tk+<2KB-(j@ z_AcLvgv9nk%k3hO|F5uz1+;uzD@AT``B?w*M@j|e=1=M{RhExK*H-;U7G>2pm?O(a z>3x~rAOHNXlm8zwEZzHU?ls&-EmqSog?H9x#Rh2{a(uIDJpjPmFD}e zUny}vwueT<%~y-(A^@wJ&ojn&deR$l1H?GNdvpxJ_}^beCYiT8waBxDOyxWTy0gJd z7)fuT_aVr@dPdVJfJ&`X&F__EEL4(>dGwhcEOf)rU!H-b^LzhVA<xKHe;aP0al2UQ zV)m#>u3hG0r&B!p8?}V}A^NET3rpow1|~6eSqGghFut{26kZ5sD-HG{l7dg^Pd~Pn zUC4T97tQE(U)kU=k>zYTP6kKZm(D?ZvRMQRfzS8Pt10suRT%DQNN9-cu`kCyC?zi2 zxy*zku-xtiK~n)jg|eOh6ppzSrHZBq%9Z><86;r&3i+FnMR_mCx2=f5DPa+*K8WKH zZtN?DeB!dPy05E=EOTrOP1MFj@v2R>(t-j5=^PW5jv%w#m*NiT80gej4VXaDy}kz# z__S^!Ral75c5E?oYE9oCr{F&QxxBm_>ea-&yNPwty4?1gq)AI}KR*Ei$e#H~UsvkA3G(ECe~rSilpL z?K^gixn8?PU zw$04KR+tr4a>LOvS!Y=lI z*b2gias_UC)ff4Ct$|c2;vgE|O5}GjT1M|duFPZj+mqF88E9hJFPLAJ2DDV=6XN1b zI^FSEc&H%wj;YsHlE;l*7VGpp-n}?NCG^j#*B^{y04j}QKOuq$?sX=wI$mgVIR5bA z!|a(T>P!`CQPkdkb-V=Tw6Ke*H||ElPt-(U&)z)tRwbHT%+zOz1`PFzIRcd#bergwWNKF{!<8)x&n=!+k2!1VZqMC^tfu(cjK+kVo7FoWu0O%@ODQNuOB zLyYQ?Fz5BBK9Tl+(A1glz_Xyw=fXk?i@@SngtLg^)v)Uvh!YEI?Jk|iJnFbYYNLGc z69Rq!xt<1FF^`6y@+WD3;M}TyzK6(eBsa9Hnwjkb5bML)%@ z;j}bWyh2GNtVKu4+kjNfkcEw@9#mp)T`lK#aj|Q4x0sL^=j+H8Xfk8?e+TL1n{kdy z`Ce;J=F4H77YE#`1*)yt4VDv`!3F*rdSx7F#r|mIofP)v`6$yAI{xxXg3`11nv75#r z>WMVai~US692UiUWo!D!L8sAb>t3aC#p-pKhfkicTf<;L`>RJrMg(s|QdN8ILSm49 za(jYe!VhDSj<{XjQ=l=u0-z9<9*!N1UJxn>re|s$^3D~&3Koy*iv_O-(6+_)ys6rO zakYZMM)Lq8wKUQ}>if))I8|QHo*)J9s{%KW152^UP>oaY?ENbtL0w&@Hi{*Wo~}0W zn}x^@Dw>dIlDn}F{MhDg2VcI5Y0r1N*}kfxOIp=tqid122NSVYY(FSc!4R5c2Qowh zCBrz+FyN2A;MiGU~R%H;|pQ}R-AxK?rA0h{Trb(K|B%kS}??jf*U6NB^JH}_`rzYSJh+x3qR-gGRlb6i!q zNda(UI}^Xg&Hbb*1##irc$+j0@dYXdGH`X{>G?A?_2ID7#VmZ5igl~BtY8n-Mk#oF z^DlGZmMe%B-h~?!yY?)C>iT8kViOo^eYOP*&7bVS&r*boVOtv6YT}u{(Bj25wg$4# zDhQ=X`eSxn9;ZrgUYfdadufOy@|3NUz+Erk3;GmnJlT8Dyc!G0`AX`H{DahReIUaw zJ`X#$piK8Xcd65mpJ(NXmxu-jDutFO$6VAP&!0WaWuwm zGfBaBWEW8+O$wc3@Z+#0(=59qhYx>(A`K;j(fvVkz9XX56Hsp`9ZM8pbk$zQ#B}Fe zZ_=N-?zDC3k=pB*0+0eB*OpgB@)<$guWF_EodmRHr2fn%sV?xt%I6`2_CT{_bOX(A zn6V8-nBt)Q+RNpAyWP05GBP+8s$^W7=70QIets`mx)NzJ!F;GhVSQC3()ym%D^X_O zXKat(Dm4Y{dIdeU@UU0HfQXBl>R}P^%!sD!dTnlZJ&H{(f;An@5L6l~{d);G10`%i z5Gs0D9xv`rl=o`Zk349%(>39?QIt2m9mg*b^=4)YySXoK%JZX$n}~jO&3{53B;8WJU!agZXi$@3glq0Ee> zWOP8~w}{We2CJ=tph`Tx?VzQM_wKedog$7Fw!yAEyUh929lxI?ybba${v^@9DdgF+ ziEJ)CmRL5Q=h-^%zh~(+W`_J%khZ);|NjuX{#THeFV_x8{e9gsrhz!XP}qSM^e{?h zp%4_IwE`_P9C4y1F`VHGQiQLHg(OmFh$_Q{E0k(ynTQ9&xJ8UlmXQ@`fACfPIM#GK zJz~#zDDjJezTU(sb2NVP7p3Cc?(Q>Sh2*2v7fo0MhvnJzE8=V9QT3!Wdps}G&}p#1 z!TDrT#e64Zo1iaLwpGc5)>-F$AwR>&Najk!Wbtl)M)Ma1BjyWeJNJ|_{VJY< zW2UiM&a)SymhaNS9?r5U{Jwk1xyr4IQ>M>WYI??f)n^=)SnH|dL z9v?}N=SUOfr+$Xrk2EUSymYPmc1w-}W!pFFdsM!hwH~o|1xx(R!9W-SfoXL-&)IDd zv1rtvLg6+z;Abmm6uW~mJ!<;CaKK(!-`1z00+QSlRlE zZ#X5LQs_frfG$t8CT6_nLphyuRPVM!}n0=B{5IEJxqfiu4Vd!{5(!oF9pAb{4NK5WyyOnq7-#s%CLY#;ExTUJw!aJ3c&_CnS=M2ny5dADMa&f zGyH{M^Jj{TRG%0Qe~aaOHPq`@u$y}dj$PHm6sYq9d(W=mK=_45_5DJe>t<4V!P6fR zEX@n*yYDwu5rUjzX2~^3w&}~htWQL9I@`83$$o4r znR+DUzmPBrjqEmPc285d@$kr02MGQWjoq@9zxIsLwGyIb8xpo^0I-ZL~J;8Rz3=HT!r53QH zfcR?uvX1GSwx+#P^)a)i5uL6)fE8U4ItJgi1XiluRW`$`!JZNIrhy3pLH!Lh@tr)Laz}sANmeSQ>jDKwF3?E2#V)=nwO-9)-B) zCOV_#CjOo3KztL2QvC%33SGiT$Vku2(0n>aQc;92f>%HI4>kE>b2Z0iDdSvlLs~6roe^16@5S65^fWeRJib`H<@tRQngP*u1n5CP) zue*8)1}c)KOjpDb0f~t!VF{H)V-|^31K^D|E$w^+A%uouqa-Q9^ojvaONxcGNxgB| zq0l1nr_pg1j;0uO(9T8=B^EG@&!0b98wB9g^j7>tn7lSW#<#Jbz@?%WQ&#W9+V~M* zGk?_8IO&y=Aw|AL?(xQtLXfP75<I&*L5e){yO#60~x(W}j$ z8%ncKQt*u~>?y1go9PA)el+1l+hRMGJ-gD_%0Cfc(;KkCZ6?Fd>O1^-uB+vIdgJwG zNKyuay_p-b-W)WDk9+MX^mfcLcwT%@xuvFnK5BXLd92o5gc z$FOc*8rF;z^9(VSDyYaTQDOMw{6w%{>MxGq-&0El8;ydMEF(d<$d!EMAfOt2fauzB zh-X`|)dHHTP}mkxcHWjVSwq+HwH!eRM(d5&bP;2GL3C1nrg!Nw5?D#Z?s>bflU5zk zbM4MQjAUv~f0X;8FJ|Zua9Do)qR|Y%wwgD{9@|1A>CHS23$u>vxR4S%Gs${KU7X)P zw;V-wb%CL;XrgIl`-ntbD);+Isr_;B)5By){}}vu9S@h%JmjjUuf9KqwB$bIT0rsm zed3V3pp>s>S)A`f7&9R*vPndDKR-Zrz+J!t2DKeMKZ3$Hr+u6sF>F!O9epPi@7<|Z z=6tM@M3@aH`3u4;*avIn=aNtxx>}GeGmhwsVGE|qCGjKhsQuDHTlT=1lLeKFrb{o~ zOK<&WNP=XB7ts_%$C+$p2oqm9#1#;PF2Ns(Jq)Nb6RPcgcXr#zMcK2WZ@gylbrqH^Qy7O-ln z_6J+jt=o7?qIo2#HHpD;zWgQ)V_7`;)#)wJ4?fOKlU}k5@KR!6?Tdq zF!d*s5~enBcY?6Bift$ECUcUz_^`YzlnIEiI0!ZSR|1J*;d>7Ok><1G*ff?u*CiJ3 z10X5_lH{@|*b7o1arTo^%=9AFzdpOnI~T|Ku-VwhiCx^pOcC`(044y`VYJ!jT_9p$ z+FibK={CG?bSy-MKzX)1hV8i_J6Sf4Uz_Qn><|l2t|y z0h6~X92w?qd>OT?^tLovU9J+S0dkjBop2OK0?qrP|3v zlXEz<+2)18FCRWuv-RR7d9&XX;TL~gj@%I7oW#-6J96xZ4(5&zL~Q~z@+KBg2^?wF zo1*&Vt)N{7Ioa~@|Iu{0E=iBJ;@0}LJ z9u?0;g%5O}F(8~Il$#`CbQBpr9kU;5%PW;XD7D_&RqGHLsjC)kd2Oor2rfpS&U0ak z*Wvt3|0HZ`#0Cu7>L+i__$533CAQ^Y%2vY~N9%DFg1MmkRaM&Dw#L`w@7CG&BRbrU zsx&mY-8$Qf*P3HLk*wD(J}=u=Ahb-QuN9^Q*fF~d68_GSb-j)0+cx#c$NEE+gH)a0 z*Kc8m@b3gJZDE5Y)nWbF_UCp-6oqaf9?fbEt7Jy94iLLWGK-k+jJKWHCRxYOjV8O_ z`D{>b6uOf>N$D7Q-v4&1gUhq!!SKF~492H-39?O1P3nfn(7Ik7Rf*}m`Po9wbLnj< zUt7BW$Q8xzUA<*pUAENFuiS~7NlLp`<{rH!a;86TfJ zhuf#5GA8NJRv)}|Hm7rfQ*5gehw*Stn4l(`x2`vPSB^FxKLsZF%^WY3sAZs~4TMyvA`29*z*^V2yl6QQ)0IT;(z?{M zk$w3&wod-6==^&R*Ph^{L4i&gM))ic@E5LajDL0xj$P)Z?lW(9MosDN|K*aF* z-&3LznG!3WDA%1HJ44~UezHzaWptZu2adw8Q7n_(Z;Ux_Vv?93`{vW-GmnESadNE}Gp=h^{PILz z?e5g#rXBcyW+UftJ1n?ex=&t=Zn3r;qdQ{Qdv=}Cb50{CpW^>Z!#4$W%$7=0V@;_< zV*JbpE~iAbeU!J1Zws3DnsS>Nnmuc#&Js?}i&TAkR+z=6Pg?fd82k5hO8Yx;%_492 zL?tG7fa^WqI&K~^x)+x{+=@@JYvSabn6YJC!r-3w9p)U;Q|jVmWR=9roQc|Ix^vf8 z{yQD#Sp8BXeK-CLO7E)$1FRd~?}T8Cb= z=swvJ+a|4CM^C~#H6O$WYh>GF>Ry{|-eoXcXZ_p9%ZArpcqQu_K94ngEv?_o&pw(Q zpi}#I{QpWb!SsD!3%%#2s1pQNq8m0B4^iB3$V)1g~0er&DscWGJvs%t>N1 z{GGkuYxkJk@|M$)T=Bw*?&iI#`R>nd0lMiXK{tfDYEG4NeEF9C13sx&E!NGw#y$@J zIn5E5O->gd*=y;aVZj}zpE&YyW6IFdZk9wN8)DLgHZ@fpj%Vw7#glw55t?>Jk%Z?Gu05&@wrp1$WyPVQ$g0x~UW`rdc{FY`my|KUegtAIP zL`lQfw@JzGwPkkgHkEAIed^oFUnV&ro9X_nbxC1INQb#uFq$Chk5k>MBo_q&I? zO9E2ie`D&C28?2p`7^PRrpHV-4BsOET@p4C-}sHZ=Jxy|F zS17}3EF>>dlC!V-I$*w3$8B_~OrJS}(P#0@F=>2tPX_1g{F%A^6|-mbJDPB3Df6j< z;;6x<&GyUWw>&k({rOGfgXWB1{{-=6abL~>yEnRc#i@*juk<9&isaq^`@G|KZef~J zI^T4X-&#n1c7C(5UsYvS^NJO2xdu+n&vYMp4q0!pjnK%ZcgR{|x1C;7;(p}0_I;h; z-&3TyMZW7=cy#yqGp%3ANm$fJuIkwjN1yAYy?kPCe1 z(|3m+JhI2&?!W_jXq&~`mh8daMFvKAXYn>>P(NEUIl6=|a^^;oX_^JhlPUJ@w4h3T z#+VAL#TpBjQNkzqt>^2#v*XRZ6)c-bh-IQs4G$r7u z^P7m0ur|vrZfACnrdeHLO{IlCeY|=1+|EB@|8#T8(yXDMcz$|QxZdlM0C+6(jM=LF zA>V80k6{(-zC7w1%-i-Rwj`|8d3KxYF1%v>$fJ$ijUPW)pXjM?^-YlC#84 z6pes@Nhos^1VMW5A_y3oG(!vMfJh5HAP8Zk6PlC|Lj8Ae=A3!Yf6jWp^?j^0F4ru9 zJkNday{~=U*R}72rW(b$IOb#Zv?j%jRMb{F%MQE@)395Ps966oq_mTihtDRiQ`eeW z^>82Oe)sD=J1FF*5-VL5Rx9a4qKF&-8sbjHpp&?w3UW*i9Vsy*=i>!FzgQGKVxC89zUzqUb2{ybvM*JQAlqC}F_J7A z#^+O8$azx-IZ4TMcBcw~(Q`UUhG(YS9FvOX!ya|3%ye+JK+HI-tG%VphpqA4bwHKN zA4V5Do7Ui)yxFQt5y>Qs11fePbHu#BSeG8qw5F?gvM|j6l zlt2GuZe`*^gG5C-kD|qU()yLL{0|*bCytAfYT@>Z3)Zp~!u4avReipx6MsozAlV*7w7C)K#W9rA^g_gJvpK}Gj#xM-(3RgYKogXRT;us2N{lh@<>3RXlZ1g&V{uyP$q zhnGn)Q4S~pgEPd{dyB)}^MxBtDv&0o%o!2e*YcS#NsZO^&08$X$7ef0xUPyu(-R?m zqOAkrPw8J{wCMrxm*C@Cd|G1u>~G^4iElovYyQu$702>7VkLCm#pW7X#Jo1jXv14@ zAoQ=mEF1WGBf8(;_M5I*daq*})(lP7)wo~Iq^YoOPO?hD?@E2nYSLwU^jaDZ8^xJg z@N-3S`uu|^gz;!hUsyrZy+~>K`4~b}5F{I`XQLRDCaj9|XF?#R=_NewtC*ik7{xhy zf(^?Y<`a5LN2@VzH*&%bmOucTkUhwSmXypI1aQtYd!!p)Z96%*rYY95)FE2k>d3Rk zP#$FInMH|6Y`!xTr3%@ZM_3zx4D<2J)Zkm|(!%K~JeZnL6 z1LOnJrZ@lSOS8}SjY9K(FR`%{?Q^+x4SRIeve~ovj zxRrs5AXk?mY$~!HYRuA5dd2+-)~5X$5y5Ass2vjjti1gMqgB=te1YS-+RDkN#&xP$ zX8eoUrlO&+tqFV-$wE{|5jn(}P=-Ku&WCLp*S~^A^zAh9Hk@JXYeFfabP=oc&r-`i z<|hv&^^t(ol-5d$-{9u>w*#0B0;5IyG3OKdjtxTFpcGOm)fv>)da+X z9;MH8ZNz61Uz!v*A@zSyb4mK176*!_4pEZb93zW-LZNAL=!Ynr>v+kOX`-VhaqyO- zo*i|}&jghzKWg4VZsvsSwkSj;pKpm()6YFA+1=j4Sf>f|K0;vEj3{dTZQOjALe&LG zcMys!u=$5^n-D_>+W~>9sFy=74fEs+QZ(WNbubFfVR!M3RFb2Aq zv8zh`U}KA5v*cevj9czL9%|)%9yCLdY|{vO&~gyf*41WUlr^q@zVIqGEBS;|r&_>f+tD!L)Ph!Z%|-fz z&u5y?Oa?*krUPSzw~uqcuRv4D@WgT6(bHUhpK-kV4_&#yuvMI$h-(QOc* z+RH@Ye#~l88RPn7(I@nxXqJ&^HsgsggxdBn4ddSYfTy<^nK1g^En56j(LSsld}2!Z z^J=`r;7fJXmDo(&X_Ljzj2dLP`hA!)(I>RrEE>g@tBpIlT3MzI`LK3|@1bLuooAh@ zB$od(W?c=#B2|VkJM*;Gq@rNNe7uGUvJcT23Qp@>*P^I#ey$JFb~88qCyJgZG3AhD z)mf?{FV=;;8s@CH>QFiruDs07?53P1VUpzwcdSEaH2FGUc`j7BtuW#nO&}A+=oqw1 z#;#U;31NlDjGWZ`OR?R0*4M&L@L+Oa4!r0FpPw=l6bTzoWRlOt&}Ge-bm`*-%vygd zpyUeoYtgb1mCTwF{;ZBnJ!Irvqd8brA^k=&Qc<%D!I7<$>D;ZHeKk89n*4FU3x%tN ztD<9e+IMs812zgtlE(>U7oumwcp&sUh=v>&W<{A5S45-9V^#u+kdYJ$`vHDKE?}g! z$Qs_Gc`h=v-R5eHh>HW{$mFYT zjj2y~s?HjKUCE?VpFR%$K~0)p9n5;M|W)v)t2+$kZr9M86K7qRV(M-d#8L z83&jMb#!Ior4$7|=L+UVj*=m5kYui3)v6>LzMkab&~o>lhnLcxX?ZnqQ-X%E%c zo=lK-c`7h?E&!4mK*eF{oPrqX7=;yQ4FRjQTT7NbdGW9!=-@5@au7F#QGv!N*vLq9 zf{Zui^}%zcR#j&+VQrzsTvD{YtJ4XBa?c*MWP%=fnuKi|Sc6`s$YFXAQ4rtfYLdSSm%?wZXti+8vXwN{l1&8*<3ApHUT&r^ zT8($+Ikz4Ua6qH(w=UQ^hAxe1Qu+2*MESE3*L`zH3mixjlxhX^PmHIiO==LeM+LAl zfB{YhXP-G}KGRBWu3n-S&=jpT93wdQVK7AZSQINGBlKSOe0zf)B)6Y_-W(BNQ1tOe zq4h@3ewcd}14*ySsPV~8&97zeW7ERMxZKGTZ7IDmqNy!Fi^068aaz8sHp z;Q#jywna>Ux_xcjXMEH5E_f}i zr4wTU3ms8*R~V3#t#v+ZBlJ<-WPrL+S>1688Hzl`sx=0{8}tFVE6;FdX-9gYp6RRy z+?Mo;Lty66op_APNJi#Xx-R?+-9w)1YTZWCs8}Nde!h;@04O`AJ}9GohW6Kmcl(Hm zXg`(oQ3{*Y!IJlwBYE)0%qW6hv2&2~XowYH;Xq_?O}U{K$?arqvQVB&Q`)ua715BQ z)?`!YwhFF>o(r&&JKX}UoN5#)bjy+uNby0*VfkGkan)q>VG{%lI5pFZ+pkLsWvQ>L z0WhGkBeU?egP)Bd1SVdVyI(_=;Q=;DCm2v6RNc2ou%_gQ9P4#8vLrUEI<#h~(+h>( z^2w(^r%c2oLowx~`Q+nkP4@e|dO%Zg1idtUYSko{4SmyR{Go=gNPybj{?ZQbm(#zA z7%z-FyLpydk?uQi#rB@eY?Zm&cy6r~AIz(ts~(_$=A=-mkqEE4<}n_2s0U?c8V&4> zVwI-K=6F4tj5|+VBvTG7%U;v({2R11ctI@xgfE0VhB=J9QeZV3VZaGJE}J+e&-=2| z8vCj!5*DR!a7J_(xvrMleTZ+7PyZ%9;8Ix7%x81zZAX+L?Pnt(HQ1o1D91@-+h93M zF{2qxuGeSM{=H#sdCq89S49|Iw8_#!5+Q0B@Afn&^~tlCEBjCB%FJlx&fvC`yTsYE z%Yc3e78%xjd(FE}m7V66*UK~nyE&+ly7JQO&&r81oa;GCY88;s%pgSt8weT&p@&U#AVpfOu~wI*j)4|7iu%TG9% zJjhjeRE3;x*1uS|Y#C5AALdYz4&W{unUB9+n7(o-Y&HXPF;Bfh3MKe(@^K%{XTA{K ziNI0YQ(BU*?lziVYTS9)Y7w>`1wR^rjLX&6R(ch~O>!CX&)e^4HWc>(@O_8(vP%HS z9CubkTX(Kg>_UN8+Q+-MNQXVwR5T#T#H~b1 z4ljYHksx&QkDhC+N}~MzJi$H_TGbx&;m~Z@*YUZeWXP!S!5BHKSHcE`wk#Ym$8?$` z)Q*_79!`Zy5m$Xn~MctZk!c>Mt+gYlQ>1@T}XDLRs-$jArzkI(Z$b^eKBduT*_oK zh43L68XjoaMxgGs;`8?TqaJzUK7W)0y>cm%h0QNhFX23j~I@NTGShY0xoL0Im zeL)nZ8jO~6{~#Bjz@!K#dsHmVXa-mm9GOueoiSOs(>5shc*q&p@yUcq0%i^hG*C?e zk93<3C9cHcsv;HO=eF|9x!fN4$y9pv&h35p^GglmT=B43)q)1ojyn_3ADTL9!6GwP zf?nuEFnLyBj9-}D)b*-t=E`5vqyYUT)698hy@lMY0$HQD5k8ds4>B3WmVD<} z;r^4Zh}~Q4Ghn%HM}QOsts69iqu9Ex)O5{U1SLBR5@vGKg;Ddm99VwO$^0E_Wb+tS z^3EU7AcArD`fjE2@1u~N3jGl)qPU8MNP+X&`M>iSPTEx5DnB zKusb^X{Qw)iynwwRT+^K+s`)Jehjq!GwHKp?4ch_J(iwJ=)E9wos-hP(3A9(HQIBn zz=DIt$WMj($*4?Z@TFea=5W^q!@Aw)p+ZUN$8LNfX zhQ2me__}NGMRVJ2tBCZC$&`;mE7OXYgsn4I#9hc@j+W)KLiOZ_>q{~>wH?|Lj_iGK z3tjTqsGXhtS`<^f_r;WJ5sRl6`}ExRXnOkAy^chP)jkn8fgz76jw)E)ls!-LS>+z* zeL~rNwkkr366g`otqWApc_h%wHHlTxpfsAig(H6W`o(-dIbAA#8^g5V`UDVJ5;tqK zuLx$6^~Cx7kt;TrRG||mF+#UevU%QlEjf&CJ6ip=49QFQ(z3ebPwS4PHj^KrLI=UoiKsx=hy3eW`ug3Fsr@h~j|62Nld4Sit+9&97cpy;wXg|*YxNy9S^i%;%1l7Sb-XchX zC98w{sJDLf!7}bylKAHFd|fn6iC<;e-OhTWI~n1#QaxK+_kPi1W4mK{Y1?@uw@%UH zjF>fH{deD{^sm3$&su1Wb3O$M&#eyayH7E<9?&ekgOuOX8(nql&jp|cs4P#+8-hvT z7C#H%&A28uWcq|xz?#SYYy2d`=zjkp!V$MM#oG7!M_+f&u@K*@LRoW`_?JVpjv@Dk zAvJ&Ny~&N8h*K_*naa-2I!PVBw9(ay1$0eNJ^IiO?<1F)>FQTo7X=ocnkO;4Yk4~@ zcf;X>o{*hXL;$8K4-m}CvqHHv@au6J;f=O+${)`&u<1*cUdyM>soYE-1KKzcY?*P%-U~ zW7a=!zBVKJRKiet9Lk?bZ%rAZsLpLuQhC^L?d=0AuRZ>rKf7N&9kaeO>}VEr@jlfY zhtjj2ZyHvE9)Z#RGVPT9tNVriCqWwM{wm51PJC+MFwzrZnlFJu~%(J-yF{ka2bf#CuYu zh@OG{H~6OTo1CWXu!X1%!kuZ1%>yxz!c@B1&Abz#^GHg- zlX58psbv#2n<9GQ^6)4{YCfz|Z>v$ak%K zFY3*v?n6_-xA>hz&D4lc(2Gk3g}n%3-;xJ?yT*`<@Z*eJzAW$ zRC3$3Kb{7+QeBa7ywvitxs+=_*V3IjL3LSG^g2D{9}%Ux8l)npa;qcuq0-t|zEFsc zx2aUQ&7j6KM?Jx2`?q|-CEu>p$(rX3m_3FtAqMxsUi25Mbl=8t z^?Hyzhk#bu1qYtu>O1bl&Do>|Q(4yxxwI!KO}U-*KHE(dz3TJIZ*2zeGLd|A+nElz znIt^;5|>h3<%V1B<*7N$TRxE59hE6-aLl3T%SIEiciO62?kHy}b~Zlh%bN$}uVfLm ztGxcpxTM2z9U?(bf8&FzjozR)S6m!R<#n`<$=w79N@L^Um!}h4Zu~~ zy!9>#<@iwxndMIFp^bdz+-MJCgq-V|z5kWH7X-E5`7jQ@2MZ)b#|hKYv)eP4HLolQ zvoPRz<*~a~0&hJQ&un~C0sPp#`84He?d?uEglD?XZbc3E!-S|YpJHptosK;-8lg-^ zSLef(gl(muFv66k);if&Hs@-Al_Y%wKYV+8vzS+5ub4-6@4!<1Y{;Agr{7#}!tSi^ zQ!W$nzM7&&R8bOhv_CbMOL>i2VNy_}i|*c@5A=V#afroAO7cT@J6@wc@OXXcRK0(7 ziHDD!tnzAux8h_1*XVi@7wYy^%M*i+^k%M%x;etpbS^mJLx6PE|MxZ*C0auTqOe$q z$;(nCP zWz~K;(;t{iGtw&esuJ$|4Sg=YKk`Z!``PG2jJ5yvuV22*t2^G`_~>tG$&IF3FRc%- zn6r1@b$8$NwXXb9@AqhR=!mDu*5Z}T%oDuJL|*#W}c)YlGcmSfhx*ZXJ4#| z`R;rydd5|`y{&Rk-0HH&_V?Dci*3rnV1ib9*cDWdX~@;Ba`TaxCv43KFPSC^-h*SC z3AdwJ{!p;O%GX~EnnA^aJICSc*LyM`{P+>~{QODElpA;XoVu(Ka#upwc6j@KpWNGkHczpB05+5=}q%t;(MJ>$Ccd-EWF*`(dN0lS-(*{^*u#;$qsY2L($F+5vDM5JL{7RKQv*Kl3^8r zBD(?UviZ-BI*k?Ewnw>U6$qnWJS_$h{?buKS8oJVyt~WGBOx!ZVBqX?4%_QrKyVu|Ouhe1wa#lOr%WvUbm=Lc*8JDc z$F#YoKPL-7rumK5IlTQ;cf^nztQpu1J&(PW$^+O%2@7tyxtGfkKDIYKliHl^iIoGI zp5aTf^qg6R&-Qm@;!|ffiS(4cohD~)+Z?>N?|P2-uAQ&zMDtG5(fYaDK0EdPjtkGM z>s}`YRes#{h`4HVe`vkLdx<;Ad!x>SGIINv7RPgL?}^$iUO92aM}6--uByv_462?! ziDT}g7kFp*G$iafTDm=&yw4xu`)*8q82e@Hz@+Nd1Ol}=h?41}Iga0uS?aXv8AokQ zNPmdwj&fJZBCF=5KE?@3jumLi@PN82Crz7|quP>Jy6D$ejk z{8)I~EF5U0IJH|-b^*0X1iiZjw}adz<2Id2Zk#zTyOMa1m3Dg;mo%N5s&sm8bh<0a zQYZYAw_VHQHx3Q$QIg{6wVOGw72}V5ycEK7h`TI8X!~Om*FaqTM*jFz?TQ<-np)}d zv+c0GlHIxbQ%l^nQ#sqBLa0Z3%9 zZ|dUDp9t{ot#3+-UG)A3dN*rInWoFZ(doZEM-*3B&gp3DcWvIA44ory^w}4leq6z| zN=RU-|ALC=sT!SWejuYHH_}YjFrKUFK#W$RH;wi%4Qun%+a(WYlq0O`dcF2R$AMdR9*av!_FiC*0acNnodG!D=c~@j8xtiG?)m>s9aB3 z8baO8Q#_y#DHGlA$bC++&Z}X~gQsF{oTq$3tR}2*R5s4UmJ`lSZV{~lc%VSD3n6jz z=jYI`l1Ex%hQnFCZ8g=DN^iZInmG1{rs(@aK>PeYIe9`Qeu6as<5}POQp1DOfw#2M zS9PTvXE0^nw{#IQdrVB`+RAhPlIkJSG|*OdeFMxX(!Zz(el{KhfBp# z6OVm%I8s8MY|Sfe4=Y<*6jn|{=d}1_NiKJT)Y-w?IsO56*q;8;x^AxfU~ZC)#IGB>rYSOE2|-qy30m>uT%z$i>Op1W8MOtnN^)^&Ztvr}I>>nr z52IgpV*8?P7nSOJzeKAxbYdoY2wvj03W9=VtHr0pz5M7yown<0k6Nt7u0EJdeTi40 zC9OVI7Z0o79O{(m>s43~Io-ns^7FDq;gE|i*@@)4yKj^4(CEN{_p>pF}Li5i2B_#qrrPto(P`k3t}@pTi$UiEGFv(hdyPagr!t~sB!4$Pgm z*6a0q&m`r;&UoM;GsC&|*irSr|FKNWjAihgec@(C#!MsM|70@^3=$nJXl<^w)R}w!ijzm*n*I8ZB{eX;c(( zzG`>s^~?NG3w?i6z?;|R3s)c2^H0~)RuLTa^3y${_G#-C^W4d4wu?t=@^XEWgXUhp zD8)~uI21Jua-hQ1>%L}H%%=EzlAAW=Eh_AnCbJfP2ruyM#8dG4VmuG~esf=c`TVyF z9@0bV$OzDaxc$lbQij8uq9{)_N)aJ#gSJOuW&$9Q&kQ~JLG3Wbaef;KUBLfa=Mf5vM zwHgTp=Yit1aG3Lzl}ygVeDX$5kJh!aRNp5)ScJdSJxjzL%uTG2=y<)c#@b54R5oRxVDxrsyy&Xz2y&Jhbds zw>04iH^~{MzuGC%$^2yW@tJis-HB(vY_WnvTgg%=RAAIyBwsLXJ8v&`vX?K(5TLdzd4iRo&J3qpd*OT zyzyb;p~VGpY)Wd8e~LX-hrQ)}qDB<$#_voEufyeqvJ^w#Y(@9~hS_OoG#u#Qa61@w zyR5?@Z&ef{@IXr0n|%AWR6R}5H;bPyDfbYG>1Jx1ru^$;vaP>_O#J;sm;-5fcJSJh zi)j0)NrT>&XGa1TkLK&X&UrkPP}Xt4i90;zrv;)T#d$XOlC=!?W@5*x)oC8SB;ncQ z*+U}+XQ0PRZPy47fMz<@NQKaQBd$qr0pA1iFyPM7^2^`s^Pe2{iKZ0O?}`L}tTy27 zk=~Um&x{+3tdKaiX&9>cW0>=(&KTnDqIoU~{XT;jL6GjW%^6yGMQz=AHJ}qz9u#Tq zbx)C_2W{Vd$D(NTjhr>;Nn0L&xkx%|?YsI=zdmGWX1PSt)5}`lf33uuS8;a9tFTyG zfj05@sZveATH7@zT{A-yEWKybT6mATF;fJ3z6|Prk>A3&R!Np6- zZKKIk(!|02VvP-T!w=i>EW>?Jnrc#IGpk{l6S00mr{~W2gVj39(Zw0=A>Y~NusMfy zuOvjg?;Z?=XJMf>|EjszbKABdXI6SHH~td$GukvIMX>iMR$F5NPTW^ygSz4E%nI>5 zBaGOrs~P3qC~m1cxxOeEz1u!jrYCq=|<;*z0n38I*D~>kWo#+z7VWcbcr?{}nyb(HWg z%1ao2Kx~iUp|{mBsXF`RX+^K2g`r>9Ck?+Dt4T6k|82D^GB{zlK3;}59ORlo)k8Qq@T7@?gZB4?7`m2CBV z+2WSj?DcRwcH+K8LOoq_&U&j+HIySD1u=ozUW4mbTL+YWZ<2U1c8)WpI)lh!i7F2!kL zhDUFcsHC#*?^-Uf3aR|G6oc5k31OGLSq~Srr>ozub7M)z6GrADtB9TWOK!i{VtM5y6_&HCQQM6ORMA`07GBR$)kz+Cblrpd zmeU2HGVo*QBq=;^Y<+tkKSO8cTs<4d9m zSFe?ONPq;7Qoj}Pnu}C^t$FT;@Y)-{=k2!(3BYzTjl~N1jVG$8Ip!je{BR5(MD~z^ zu^H}78*PC39?8yCgf+F-kT(XHGj`J}Oste8PpqU#3IbX{a6d|jVm7&{b29<;$v@)D zct+)gb+5Jew!C{@Rgt6UffVJkU1El?7LV`OW^wUEZKYpw@H^`TFfq_?xAA-H5{%u2 zRG;l4k@zr$@d);GboZm_-?cO9hgRBFO-5JWmCVj=n{YfY9#vS~46J8dadjz@XvJ&n7qO*1gtjESafxCnpZri1!+jd9)F&XeNY;JWaqhd0sUMv?OzdOM)y-P1) zrhK3`ap)220u*+{O5H=wi41HQkS-A2)Z6_(mU)Y=hbMKEd5EWM3^}EQz|2!i4wkg9 zeU>orBKHABA);U?E=#X0{a9X(8s(@h3fh5EM@4tdZ4xAXc+WS)(etH33Xe2PO|^Ch zSS%%ks^VcYqx(OkIOh5c3H3?3WJ_~J?aDAy1G++aYPJk`OUh;I&6?r} zieGo8YUdBNwLJ^DbalNsu+y)vD6_3>*Dj%9QC?hb!M*9_X@g_la>9-lxB)|x3J}07 zVxtGP>g|>ZrUdgFsevH|{6=YyvOB&8*G!xm`?g|#MC&X46|^%GO`Ulrvzx8a@b% zSw<4J#W`v>t}s7+x>D{lzYrH;zP1+BnPD#E7SLv_%TAi=JR`px*p|NiJ3Z~(GCob_ z=!nb2j`;2Mw~k_5oFN{kW=|mRE+xU4L!RJ8vry{f1!DUi`jZ~B($|+G5%Q08Hn%L< z?fucikBd{^Om_!$X&T7-tStw5lX&z$Gw)) zOS8}|3@A1!t*j`rjN*5X71!Rkkzdkz8*FebbHuQnd{-#JaFw;}_~pH?6DQ%n5!#5Y zly8ewO+@Y3p_;vcIhtij+g**to&-fddK*vu=Pz3w!u7O3m13WaQ0?ta_fu*h7ykYCji?H-iYpuGBFX9+`r)XyEm40f6jC(D$^kj z)h@Pntd5xQu>C0HMbdldIr}leJAJ8QS|hbQk2a83Duvs*ML8petJt=ideQpzu40E_ zyN$!o6|WjyGwrPSB1C9c8nSj0wLKe?S$wHC5d~?Mm<(ROjYZ4P(q*pW@w55G8Fg+d zaF&v(m~e!cBH3qD*1uJ7~L^!gm;#k%wmAjGd!wmBpVpr1Be3u@U>G;_5?>8a!J3jJ_A_kNF0aJ~g zGf(^#6-3%fi{3M2-F~|N9D(;?Z|bLIg>h-KCxG-MQyB-p{(=oQ(D)Pl6B3GKq>^1qNaF3>By7OGU{SVIJzyVV7)5S@-AK zl8()tuD`YPsTL$LG~A-;%C(RDM$AF2rX3l8!*^U=ANG_gwiOKNXtfKC%6vl$=_Vw6 zRNXFRXwssIAPCLUNZ06*pb%VJB@4xG=sC7L&V0o@E%Q-`a_AZBs%UAsgZ5icQaSfa zp3h9S5jHsQkiSs!uzXdQo?~MY+pqe%$b5S5QYymdUF#Q2VlF7xltx*xE)FQE4mbkJ z!-~|^oUD0151V~^tso!2mTq19z)lY&FY2AK1{}-j1&e!>SP{D^+zgcnRm@Z^Wc*|pb=C_78yC}GU*Nm_85N%Upzm*4_UBZ~@T^F0c?~AFW9Mft z7q2(x#rNkQjUh+x^$8|b2aD{u-QaIj-I(x+A!vcTe*Jvk>BE|T_%WM&rCOam(**v` zA5b8TK8_1>>j~v?ylTVHj>1S9ONi5+`+S->3QOJs}vhcIu6dXw40f8EyPbFjp^4=JDRSVA9&_`Xn(n z(t+!n{szn^PVB0AwDh}0U3l#0%JX}q12LrRYoG3EuB)p@81)`nAe(Jf37~n<`eloS zn{O`et8#c^eC0XMuvf96`*HC>0vrMl(@-9eguZEV){Xt|Es&G9MhxXndsf(B1UnL- z`$nefFlFY0ET_Pf8h`y!IhMJ^?4M4|0(1yfOkp`x6AQ|!U;@b-*<pjMdxl?b(l-D9m zPf)E+hQ%#Ko_A?!xq(jNV>1IOQX@LB{5lA7`9ojg;(?=%ye`*Q6B!GD8+%4-JIO?B z#Q%c^y9rSx&bAwTf>O{gI-oMs1@iXwUnsWdhmjzeljYKb)1gi6noh(L$k21`V{gWa zfY2lpg))Uq4=$2h3$1#VFDO23hazwezCwM3^K^ESf_nOdT>wMA>8occcN+9~V|Kd1 z(zYh(EIey&AZQ|O7?#XFZ>QHuwoy8$z8FPNw*5uMnj2T%?VFvxeE}rsSZSVFl1J_3 zFul|J<=Iac*wtVECc^$ZmqBec?#p)eeB<~3X1~0+bO-;cVF^oq z8CP>;q3rY5nVDO0JW&X5TIETgalt=C-pMA{2qg7rP|9rtljTl>WDFF!)p%A;0{DpD zf?-UE;}uBdk{McOTvaNrvxtmK_C$eOef2V^=l0E*cb*x8)gY>sys}O=UOi1}5t7a? z0VNv`X6o_8zr=KKRz!)#b&8I%whc^k35g;VYhr||&hXKPYk3M^?>_81u1tNXG2~&Y zoGiT4O?3YVO$fX3|F?zM7|Rdc3K9j?$qM*PJA$+4ddtG3aik+eF5;qp8I+;U`!X|}X4Jat_25I?VenQmYm1@3k#FHo zw@GI0t^AUIC=Mo~w~|0r_=n1MFb9qDn@G0HR?RRzD4U2^x9|GOn#jtdN;#*xpbLj3Gx1>fi ze`fm4efI8m8smP1N|je_pO$Y~upV^++K!zE^y~~L=Ib9p>)aQ|n z=tfJ8X!;XbmB@8=WWE{X3;C#X>+BTG$93RbIb;;N%eQarDmqP5aY{p_q1c3Mk&>cW z3N-hlFXlyej-|khAy-a-4E7I0W*bAPl#Q?C&;+*jl5W1V$2BDE1$g+V9Q#J{O0`)H zBW_n7CAm+lkh*hP zIIUZF9)r!bpxmdp`)$O?11-j3+V{qyC_EfCkATvCg`shSDTr#zUM1`5{*4q-+_n3U5q;)U7Z&)p3SM4w-lcXAvMfM7!&8 zdai)JT=BdCFK%m|BKq1CG?zZ1c1k&rmli{gVZdFD!>5BN9k^oWr=J)~UT61nEb#O0 zuE*0T;C#Y(|in0 zK61*uJm=uPG4nzWcd4D(g|sjxK8C59AqL*`iSgn*bmi65nzlUX-tK|%lO&}^C$C6D zX2gkDFYFydvX7={yRPlWZtV?CVMzsyHl>jt%0hEKzisFriHmV>%H{8z1mAz%J}D{E zX=;pOXNwU#2+Bg$~PF8ovs`#`GXrt!BCDJ$|MrBzNr0BmIo~_ zI05-I4{CaAXkx*25nwf)LIa0+uSBb0>&cx`d>0=7hf6chYcfylmgl~mL{dji;NOZc z@$kb*yEWLHF^YWs&n+jz$jDT73XqiyujZ}MSFaqxRbiQR*Fi4A2xcho&>tJ68TY8s zqA)92H@fq3t{~%ldqx;#cs>jhZF{$4@lP2E1JVnmNK5#muQW#%^n*UljZkZG4K;1v z9-ROCe=(E9NuzH5Me6#0GzbAQ`-;yvqK9N|1R$;Ms6CHbCmiL0`c(Q-cPm*#Tz}A< ztTgJZlqFBkc94F{ifvQrw21t#ev)j}JV);p0X)AzM#?~zG$|t-GnSivR1+&U=eX>V z-+2*W{Iiy+dE;%Ph@CF@(cNGq7|%#A$o zmlS&q{11N#v10XK{u0QK|BuBtuYSHO@wXP7Pi$>&S+Nac>Og9UcR@h?u5&2;TQ^*b5HB(lT$ zj!}=u)5zeM7DohI&kr+XKfZZ#L z&Le}D`8vj6n>Pde_~tg@Ogc@}45vs>KG$Jb8sMBLnxL2N49vlP1h+&vyI)`qTW$67 zjfClK@b&Ax{aJ5`Hr*iA_=iV4k0B(Uzs7JgKKk1@6KM|#uDTd6DH zHhyi2vd|;ifi27_&4FPH<0q0ea^#bzKMz;I$bcvX22KO(iLTg6p3keW~P5;f?a*T6VC{#|0LwkN~tVBcB$7~&i=ns%8F*oDwQ0?)&oXN-6H@UL@ zaI^&OJ6hyJ>#{-@lL6K0zcLacS;1G?G|v;d|619Pp^0y#R( zpj9oIRGJvi7VX?(fi#s&YChy-rdGf2V&QLe#>c`u3=P;+`9pc}I+yJjlJ-yLzCr>7 zdq#nTe>Y|c5bfU@WqpWy4X?=8qbGA!RvbF{)`x-lbTs9hCdnz3jvADfShnBW-{r0x z`v=6c1zSgt967m1_p4i44QgUfnA`NkT?60t2Y3Rrea=x;&qxb`T;nBow50}xfwx)z zw|2Q44`Tiq&pLDlylij@v>VR!nzQd4zW5Al+zmPM1t6>t7R$)DK59r-J!v^(X2HEwG{0pClMXKzG~BMUaN}a_OHFj7ZrU zSebKu)?Rlb&H!>1fVmqh!MTZojj=u4q0SNv>G$OJ4frJ!48JxIGd&~vIJYSGqk;kk zH!{H<2kje)c-!}WuoJhX;zxb}4q3?*Ca0(B^eWpe<*W0%50?Lk>?lTLUk*7rngrSJ z>4S&bOSF|t%cWjw#)?V)5+j_Ta_F=%QGeQ*7wP%mTIc*U<9!DwiVf-AuK|!8K3geR zngbp=F^u=5I~5_L{G$8||G_4jn0lAS4tnCQEVKA+R?g#xJu4#DQGL3GcmM5^E%OixPjlz|pz2-$5h6!HFcS^F}AT?S-Ba zW`&*^v!hgwV@z&3E)2H(bb*-^X8nv?6*Ig&XY_l>K!7U8_S5^pXDg+mC<5Gc-qd$U zcJQM&ar*ox*Qng_Tf~o2|8>#=l4KtD|5~^U(lbvd3>0k)|7aC_>YLWfhab$Ex_y2kErWUl%DEUio2U(xtH0SnK`sv#CzJ~1G z`W?o2uUeZcvbzJ@4Ot$!M=|4FBV_icY7TxQpn~~JbB)2BO_K?BJB*H-W5pE&%jz-s zPc5O7HYgaNRQMp7ej~wkd;A)%gF? zZu5G_Jlje<;aFPnUyFJlV!Z3qhz`?1LeA<($(>$K?`z-gI&)2N^=WH@p}o&3fn?U4 z|1ti$@`4iM?mIGi9!4{?$XG>NE*JOaEAg%@vrhkb!*ugfQ3cIfBixoPEZ3>R?!n8V z_#!VFZV+!4Ve-*ebEtTRWX@v)Q^X`0bIqpas>z-%*f#SsO+KMk1S-8CJIEN04J>nc z4mx6_6ST|MW(%obTJ~lK%{QgXF>`M8t+n{vUOqRA>}@_p?v<&iG2$|T)H@Y5VN3D$ z~$2!_9(R;wX(fN^V8kq?SI^2E8`_B`n zhB7283^cx46$Rs_Z(WIfS$0Z6QPJ|!ArAGN=_Q2k*OUe&@l)0FPYe=Z)Om$)s3~*U zj?zj2XJy{BX!M0=EBqmA;h06fVp{!O?aLE|RbjFsk$p}?`G=(W8%xc}1fwb@bdMt( zqwrz}o-xx%>t~ncv%62>7ku&$J*|eRU!IGTVv?R_n#Gbgb@O-51UkTAv7Ai|Hs~YMm5#6{iEn@MJb91QpEzI(xi6< z0i{Yu5F&!~5PEM)Q@YZ-fOP3iYEXLb9YPHVB$NOFLdkyu-p{knIbY9O=RIq^^MSRp znZ0M`x@NBWo0-Cx3C`LR-Cj5a4)gFz9L7hU3z2Xnm02w^FhR$TtrYmi_jI+of zlC;7VU`g%+!#20IQ%Ks@EhUG+$+SxYKdX}Y&5eLiL}?hx+3nths2B@Qw!3|i*lN_~ zt=^Iv*W~P2+3*v)#qj#;)h|DeD%fW=FnlfvZdIRU3*5fw@g5w84O(Kpc(^qpAR z9tD*Qze-bw{OLs%7Lb$5FA`=S41YGbBxCNC7K6T2kBwrsx)I6+yDN72->+UgsVHau z>h5>i3_H=Y6Pn(l!a>a*yx(wx-VgLi;f+iCfK>*{7naBTj|_ort`kAB{}!bmjw8BDRig_;w< zrmZqn4q0fN36I|TYaE^rsUacyNx=m;=XhtVw-djZoRoATiBR=9@cPr|fP`;ZMn26!h0zmE4*g#Qx}nKVrzCd~iaf~ZusJnqSC z>{Wg>(d4^;I99g-3!jp2MojYfwh2dfmlob^CNlov3iG3ziUYHVF|hLkYu3xHKb zAAS2wwhy~t&!R)`3zRYN0O6@pM(MfDlW-H{CZnDqCPYfb-FZ(O3&K!z7MH-=-l5-H}?qs z>kuFn&QTuEUL=~CS<fa&IzPB&Hidw-a{JsWOEoyOe zHRo@Su);FBks^Y3X^qT-ewkzt44`L$p2ug1F5SezEV3vCM3&BW>Py@DpjbH&b9STu zzIHddK|`ZPiZ3W>*|MRuJ^LdDcnRki&w}m8=jbIxo!RT}y-p>O&V3b8jE-+R&A<_% z_!VWK%UA_WY0xjj$V`*cHdQskB)xU=+O;FdF$qOBb#O*6--Wc-*1~due4|jx)7U@J zftD`R*|bl(3H^jxvNKBHsFDVHm5VS}0)FXf5+)g^@(rol=t-LBiPxH`KUWtdul2Rf zD!=^qeQA5CXA19AEU1GtN_e|Xo|u(lXutCl5nbXt2WIyrAu}(@KTqh`qdP_lHLDWU zF-+!K@^){k4zq5b61R|_71^XSM3W_L` zK__A%$J9@fKQUnHJ;yb~nZ>Ze)=>whD67A-bP8FhsTqkBr01JubvEO1$xyi5rxY*Y z0v6QCJaXbql#{ya1Bj6Q(+uft<8`0s;S=U2!}7mt6Ga?dlArT#LP|Lw`^y=A;uQmjJiPQQNmjo!7x2_=jihgmZ61E9f-6<$3)>c`@u&TAKxr z3#?e5_!QGf^s5D3T&>GqA>w-n#-2H#Y+j+x8X!memeV&@;ttYtu+h(B{6@+ZXcz*B zr`BsTpch@n0*Ayl)K>#K^lhsxB#HuYo2PvdX_f_clk_FyeIw+M$gbpV388a$Ap_R zy)4|@k$iE|{O1VvOYe!i>iq;^B~1ym{?z=Ev`?Vw+37*VMCVxCP144M=sX(E5fpzf z9bp=NyQN@2mumf0l83d1po|FR91Gmg4$*`KsZOWF#P2IiAc>4^Wfa~lX8xwI}E%t z^_0*eDkM>mUF~W|NOqhN%-P_%Ngmvqdk3eyPnX?|CVznl>E>nzGnY8Wcv6xO7(;pgA?}+Bmsj_Qp zr+g&Otolyk-H7E>h@gYrn>Pum58#T2$oPUfyGmVSc>&wWz3^b^w13A%bn(1*ZN4;+ zpfhhvhU&2G9k`^R&LD2)grnp~-Lc#U$#DGeZUWbAXHX~htZ-&|`C?3(478(1lZt}k zI*UT=H3|wezr{|DI=*^iG8HZ5aU>3QrzF=Mi5>5G`!oDhTCG8cROi=V{#yT_VN&7~ zFXEGrpWhL$!FW#Oqq3xpjZd5NN=1Ht&oH4(GbGEqV~ zw975pX8l9^Lu18ZYshF_wb!qa75O64qOLnp!Qw0m{kwQU=j#Mx;IDU$!0Y+wO?U(7W3?Ir%<&~glTw{fDF>&p;WhV8Jy?FU@ zQzu=wT3S>wa|>r)U>1i6yFen+X!yigDcZaZCM@qAFL>M4(X;A@>0t8d)EiX%5{4i%SzYw7Cp znhyujljP^*93HHX;gSqOMDu-1FKWLn)AlE&N1zao#`JzbL{J;b9?K*OEg^|73C7S# zvD!!>z=5AF`B1coY|qpxW~#34?~HtIp%bne`{k*SY*aC^BWmEt>Di8*LksFuEG{jv z2AGWG>zcW^ypu>BHJ!k0jpXa-=%`K=sYYYb6FQHh5+NgK2V>~i4>oN{N#s^8G(OK^ zzBw3NL0hiPw!9oWRpmGxOVZ9LC@lPlL%iUpi7U7gT1;d>nI1ATGl@Op3kVE+)ZS6b zrR`ZFe2>M|T+y-{o0=NokgZ$o5c>J^P2ocB_{eH5aSkONp4hHiw_>~U8K{!8#G>8A zA4AH2IJxRiIH08&_;QxFs@~-P_|dgGl2@W7DeSnG5EoaT*7?_L20nZJ+k#wzhur$c zW%K+%rqaO8yLawTJ=QiV(~b|R!NxuE#6wfdsVQi=VaNSpVdQx&Xa_uYl_S{`3$Xn7 zy*y#3)|90LTSQFJyaIE$iK4FV6bqxLfN4Jrw3+wgM?VhfdkB_yW-`|-rlVlIugZmz zGV&kXPVY_E-LJHf9c^Sr|#`)04dZjOt5#)$htx;X^N$$8dRV9XMhc23;KsrVL8u(U-4x{S= zle>%L_)qJjAx%9Y<8G9Z=Ar!@2TPFH;*=x84EM34qkY;FpEw^Xz6i7cdEU^9dTw)w z;My_^1}_jzk)mkQt+jJzv_Wa4hHu9YE= zNZo~aD6*YW^Nqu1F#nqg6z#vZv6naPi8I#6)xtnULzA(-j~@A~;NKM|T9T2WJ)M>; zo?i3gFhaGtJMM__gO{MKQL@N!V{!izcVm0|q1VPq<-F!{9jp0To9ko7iQ3A_tPZ{% z%f~a`j-H3J)kchE6KG96k7amA^!|?LcHhAW#8Djzm1}BSu_%wXtXZqwMO@44`Pvky zB#!=GQ!{z9d11j2zy8}6zZHi5{5$oxBf`04%s+}l#|4R`I;c&H!y%U#3ue)BBC#Jwf#RVnRZ)s~j8!doxG6SLA^rf$!kV%_eAQ z%s8nJFQ{p1ieg&-!6otLYKm`;-t}l$(4!GMEd2E81^hTO+06n_+N^ro>x@6$6D=Ml z;UOJa*?>_l`<2H7FnTO}u3oQ%Fu0eD{Sf5=D%1II1PV-6iV`4jpP3%+ zsWKm9O3Jm=)dgLLJJUi$Tis0-7KKqpj9m_hsc#Py)?7>>?>H(w27c}5S{nmVEl6Bwy zl38wMrZLb|ie06t`Rt+x+u^X9&75J+?#d-m%%AXgnYEiZa~!9Fgxl{5@x#XuzbY*q z9oz0P3NUSQ*o}-~?#oR}>p!;`ipa9=%S(sQ@j6WIJ@Y2zq6zl(^(~fJLwFwV>xg3# zcg1=!Pov+s>>DS0*x=nAvjb;muci@f(a(`0Wyo=BB3XK(sKp#yplPM0~9kOlUv#x&!SiRtrnW zWzC+})?Nk?EZ5{I%gcnHI%F2?>ctb{YYbUY+&2OpPSY_^$cp)*XVbQwTrI)k%Mq4S)$7tOl5w1~kKxXeA>#T$(~llM-0+oSRcTOr0vqgKB%O-P&k+T;jKM@fz+aO~W$jdu4QH~6B zf4YWkVepidgPDB&`t^tunHDOt5KS($TeB4ktY>LyW5*#SD3j!F74Zr1^0>&T7;_u@vDb){1(eakzchhRy3~egk zXe&LN<>RflZi>`A+G}tG7QxQ^NS^K^n1mbqgtGD%;H}u8MmJl6#h#(6e0&-+5>ti? zjV@C099s*aZ%fbc>&xoT^7RRU*|@hOvNcG7uN=nhtjdIlNT8tfLiUq=K#6aU?pe18 zCo1O2lv6#9;ef5Y1KczK`fq!HWqWx-=`W*zof;!?9t`3=4^2xjedhYUc~!xShR$2T z?Xd5e#@jKfHJEUY&JV>W{{XcUoF|naQ5K3%x1tEyfzE zp{}Xt03^=Mo2ZGb=dVpadsxfZvmWB)WM!pRU#X}(cF?tS2pNS}*{>hZwj`%#WS~vz z%MTBg#P|P1gtv%cdjBEym;6u9=@qSGKkIt!ZbT0uIO;ZdoYnW%Ir+XeZ@vCOaA0O>bXDA(%)YM4u z7!RXv0X@321o1HES<9UV=4Q#1`O zJD=Nqsp_%6ztk4)5zoD}Zlp>Bgu~vf>+I}o#iWD(MM24q|4S?Y4C1!QNvJn#XL+E) z-9H2vSPx7#{oUQQ#!yRvb|wYV$|clj2t;?{-ISQ zf#Sww(~6JSR8Ot(H!s^ASG!f#Wy;N$oy}5RQp7b;;@PRH?}()KrA+>`mK@-ci(DBM<%i3i>ARV&PG@dGH zPaclwxi@`0zqNBBRKr8XabuaulaA|&nTbLkf5M)nr>Cz-*4oKH?3><4yWuuvz;YQc z)K7ea{J7QKuW2|YIyUw?RP1nO1ma$4*EYAZlA{T6Hk}$T!=1siLo7>%R$PS~SHL~c zr{xk2Ap`Icu@|oRx@ZmpRqoJ#0an-`3nkB8>7WSnqr(9*Z9rpgMQV375J9+l!MkQ- zo!_H#)Y_j>Ocu&=pE*%%wzEfUU(0nnsT$^quXU6T5_p^q#mxC$0n1PG_3Ly|8VU;c z-$Y3dl#+Ok&p{V&M0eP)vhgEadvx6ob^u#rA%(Z^-CO9Bp{1m1>qNcfi%(R{ z9JXCaz^N>~o zz~jk>;E(T0)2-PEA+LdhUMU$|{uE;Ah5q9*f4o3RNW4%BJ0wisyG=sIo22)AJ;k39 z=JMGc=v{>Y+FP+`M(6L!bF=M_3O3_8B=h$+TNp)vAvuttFqFyv-F3~KlbKH%C8t|$ zU%ixc@lXip@cpetTsr@E;q|%-nVuwEQdn46UrX`~|Btsi9w43s;#iG!AS!lrxW%FK z_@?_(h5~Kf;oKIW_$Ws$6Isjs=r{T6&YS5YzkmOBEVTyK{(M&j`VW0^_`=G_v{gx6 z3(|&7uk=r3G{os>M-#AQ-AbU;KQ%3F&2vWoKmHBpNz&%I%|rx~q#xfwZw%MGLuph^ z`|%MOMX12si@ww^{=v9e|IZ$mgB;K*p7{A5CVx_>^VFwLt;R|2&*EL*Ckw5AyaI7O z$^&7yo6SDHzVO3#S}I+;mjnL5i!K7LbH-7wM*fY1rW8qk_ak&@cD5-SnecwZKplRT zDt9PnosQFLh89*!fBkwt>Yn4CZ_?rSX9Exc48*(n+SCJWIsp8u|6A8Z znv?Bh2f96uE&_dATBso}zb(A(zP(}&3!&yJUQTQ93wGL%nY=mRb2+BmM#(PYx88XQ9{X^4$|t!XBS#urnhr#7P*FLK zAvKT1Oxt6Mx>&Rqyrx-{s%JjpUrS2v98C~o8jt%km8KyciEg{1yN+vn*jA-Cn3TK0`yFD;E2E&=uo;XLq)V3Nl<| zU>x4|-SYt}tMfvu@-6~DldNjIy)vZp@6shVyo#+N#6JsLfN^VUQw&xFYrxljc3xgy zHg#5+Ts$DCaAfyQywls z?;71O+uA-}V>;g)6EkW#<-!w>`Ij@NkdA-*3-Z#1wXcZ(W789!yMFu+GKcW*O-24C#s3#cSQJG->Z$qS<^AQ?TXN79*OO>kp>V75Nx!_l?Ig2E zzi|3*!ukhZg#TI2-(-2bQ3(w${GJcE`Ri|r`dD&6>%z0YKIl+LceqI<36$t1$Z+&N zIZ12#A1XdI2@IH+EgbooNLn$cGHJ>5#jeS8`~GEvT;!_nO$gi0L!LPF}?z40(K8 zFP`Q}o`zXhqb#F4&<-w^1h|EcaW1)R!{-QcIYTYO8gl7pL4XRVQ`EsX{jWD5lG(Ye zdAV$wX|xy8+GuE?B!NXf(qD&8`!vecWSRSwMSaDB5@BjQwBFFD-C!^j{!rV_`zmnL zdrtrl3<_6ZgJbRJvh;unwh5-FjZc3T$j!f>exW|Ua70}_8fGhG=F5_=U+mMOEopEr z9T*NzDNb-3p0gxU)+1^Q)d}{+P}0l6pDfKU2ZN2Ggfgn@pz~gRpD%iV8C)0oJ9V7q zYOs+S6X6^m0#(RShyApQ)m<9uGa7H0!|&f=9;3PW==9Y>{=uOLb#)8dYPt*hR|94F zbbg;BTw4Ar^aO;{#ZfyO8(Ws4#rH#>tIv9QCE>^Ed!w!qn7KR$9bb{ncfp^w;uU=f z1O0UZRrr;w>>{abmP4F~HLIk)mPp4CdGBv)utBw(8k#p+{l;i+F~t5+une08j@;;J z&}u)OKd0SxioN>Kf}A2*|8nrnzimaYm~}joEpPYhv-tc;k(avlWKcl_tPUdxQg03- z9#~bQq|*f1v$_9JZMX9xZ=aS%qAsr#*+`XkcroA8A2f9c6!n^t3mZK=zAM3X0ZWz z0@?_axA?CthVSOMeT=0eRWfU}lfjUPe)$pT_e)Cj{5J$(S@{aO_}aBZi~q80{c%bk zW+BL8P=ivC-ad5`06&SyMNZiDeA^S-;Q&=nIV|9PEF|*qj>yy7yhW0Ofrm5(dEmVK<1=yp%KA&_- z0^+J_U5(~VFTQqbN`w09UuX2pdroRm7Bio$TsGk5fBdWlW{=oO%2Eh(!)r<-|AA%r z7!A!emebGo61P(DGM7jtm0FLs4-vS3>ETIjVi4MRkVNEf@w~bGKN!Tp0bYRi3y^!| zLm;H&NnB^np?cL!c7gF2$bdjzfVd%)Z$pJzX%auKVFrWqG9vB(s+>E4mC+s2L{Gm; zz&;$K`NL%YZ!F+asN&x>VDkR=T?%Ba$cK5y6Huf#{Rx{tO`shF%?umfa;kWovg;dV zv5$1SDt|GP()>wpzDb<+#%7qf=d+gym?EHf4Y$4p%t{&%;3LeL%Y=`S+8l3X3W#{_ z>omOkn{Cy;zcUy-pxp78;KWm&BtNfIIG&|!Lf`oPcE=<5v`M18upw2Eq1#IHt+XYC zc;sI`18mtwXY%#?S1n}(1Vt$!m4qMRI6?!(nki2i4kmTbW5~DH0 z8Aq6Fgi>lIZSZNs?N&>A(hwoDcggDL0s*^wq&mHoPO`J^`L~+(3cuA2*m*z*@_VQA zbP&Fu4SGl@z3thyGYIwzf2(Hf6EyoaIeD5w`NVA(`Te-6Bf>Z2Qq}d{HOds zkxcR_;PS0!fmPsi2|~Gei*R{>6?xj}5m2WO|Nm+_<|#tet>3>+%FF0P+Wgd2j4o09 z#uYwh#uKZ+ENAlELd~MO@RPtb6S^|dLE_NtcLl0uxs?98*44gqH!%zs&!s6-2VF?( zds{>!(SWQ4v=AUaQBnk|XkT$|gMYU&ka|fva*Pk3l)@~M50%ID7pHb%#y#!cXunZm z86!WSl7YfZMO)N<>aOL;IzlNw2mcefR9{IM{ff>(S(i0P+Cb|&*ArQ41uz@GQT_*J zb}p&Il!IN1g+n_xFse7JHD+NW>v{OtyC<&~YJa`Gk(K$tva;n3dv%9?LH5I(ha80y z59O}#x9h|=hFG`hE-+9WFvvhT%FqgcMph&5dqxU2Qqvd}`q3=-dZzW+Qe5~j zthjkjVA66wNoB>tQYX(!XmW@WV-)o1iFC75=v}b1%neWN3@c8R8&cJd&SMX44TZVN zLJ8yVjf;Rzt3*_*=+#G|M}4r?APp47`9YV70~dY6;sHnZSE%=|m;?mB5W6l)j;_od zif2@HR7kI`>9pO4TrzO_z9b9({E_71`RI=Dj_hmS>)Q|7k2Def(&@1^ zK1+_jzD)sP=uLJaTeJzX6Nnupz2oU}d(-!(`4;|C%=a>P%6+6Sqw=f9+kYn@%ZBd% zrplViYYf1fF%n%ha3RK^Ro`D@v+sw6b>+ z*!Z=6G{*>d3qGHjNfkil2dL=p%G(=W4SmvFdM%IPL@b=(AxZysL!%pQvtSWtoXbv` zM7B~pe$U~?D6Q-j{+r0Wufc_%eh!9624&Pb-%m=rNq(>$L)?UZ$gV<%SjF{0gRc2x zks7V7$U6Ei?T)-HikrJGwVJf_=|uJT#S+k?gn<%SRqG1UE{*5N1vA@fFU>9xVN>~D zCaMUNM2_s4=gKW8YD`)dML!785jI=am9`qh(mKlz(1a|D*e}M_N+{njwoYNG)#r?v z3x5Hl+g@PeYrfyskT<$2;*U6}r2;Kz{40FGezJX?n`36}@>c-xl9Xn-#MPjOor|89mTie#4v%3^nD%dIG262B^7BkCr#I9)(di3Psus8 zC6TjH7j+q29A6iKQJC=lD@2J7bWCTPR|3v@_eJ!*fBxzIo41UYilo0g-ePyOQFrz* z?PD%#5imPbF%p_xT_us7OL@UtFeQ&O_WVcxHj5D0YIcKuuC=Bn(9&MR9|*J}ltM^l z0(S1>PVtwReo4Kso1?~$hg*Hhrwr4aCWI;{ni#CA>FCOazx8q1qx-njC)pj}`&v+^ zy?Y5eceiBB_74)~_`cGOn_y3Cco9A-FvEJ09!P92Z*Bc+;z zPMDx}FZy8S*f3(u>#3-soa&x;kaT}<^$3;5r<*;jrG@~av=d{m+k2%T@NtVz? z&?v>VkTaNa#-95an2#1e<6nJzI*{xlQ%&%hE&@2S zy7Je%wAO8j=do!&@AZ&!a3CI%eHfL(cmvWn`k@=MJk@HBet;Bi|1C zl2q}bIwL^52;^1jV}Z7N`Y27@AXWP2WaR3UZ@8`$w=Xn)Lhm8n`+yE3PU?lH&Kx70 z)IkADh>^P^yW6Yd<1c0_sT5>ZaJ1!%@bhVW{lXcWt&0_toW*^QHjjfY?1-ezX_O|9 zqcs+UEMXHPutMs`MZf8wrOdSR{&Cksd88d8j-=C+Cv*`kKC z-N__@NFeQ@ZJ+@L4$)cv&`g3XH>H`fdhc!l!56F4HVq&HS@&$NSCPW_BurRIlynr- z9wd}-j zXsH_EmRT%)qx+SHsOi<7Qim#$dj=n~LanpBKLh`csMMo8PQ{t=<~5eWX>wpc#Wwzp6yiCS_xSRYY_)fEC!WPt8FygOw6*q_{0q z$;#L&Un;=%R`fsl3ElE|Ny=uLlFqdvgR`OBc^2sR!!N3;xBPW-GiLyf(v6p!MukRp zfX$>pHg|Lu&Chc%ZdXatq-r3U-DAcx;1I|xNannrGp9Tm1TdO}9d?R>KPx;XJ?Pkc0fP6oHZQk#uQY0`W8JwZQ_`435 z$^2ATXu;HWcCMLRBNNAE^8~)c_PQ83BtSoE)tWVpmzfVXSx!~u2DfHqMMOA2C(3C> z7JAb{Z$XQ+;&f|MQ|HQc@(Z#z6Ep!V%T@cjEfE`v|R@EZW!3su!fD}B=?7dYEM`zh&@`lFI1`lg?NPWMo z^QR`^jI2~gf%|a^sV9Gn+xE+~NjysCjvUWRwGIw$E(7oU zWMz&fAB@|wb`2u37+LLz94rehuPE?XyDlY;|J2`G(4m!enXJzw8k6({o9Q(5?o)0HFSfaUp&7VHMocqa>P;vbqL^Q7J!I^7y$lq;nPZsQT|Ayn0 zEwUPLeD;;aHZ++*#(Nr|Y?${>Mr-CK{ zD-@rV#pJWrm!U57JdK7nz(iyqU{oI+EZuXTW@vQd=yAXtK5l4B+)^rfsJF~9qq*60 z#}&7N$O;95mz;-)q2vL5_mAm4dR3Y=0_4i3C4HV7bBn#)b^df`(A64L`0ebOt) z%%horTqxwQP6CeExgd^TGYYVu#F;`BZi8XroPUg%xc)4%D;q0vT{=ojt^A^mCV_vc zqM@}BmX^xPpRG7=AbGWsTiVn~52X3H3zVIhcz?FP}eCQ<@E4AxYL6r#Cir^@*DurJ~5rA{9Su-4(}8x}x3y z7z(7yaI^n@V1~kx?E&_V{ZmuZHU)mYtud)5bG%Byll81U%_WEj%xCo^}2qSk2RJLkb@}G;0*ntYhsOZSY z3F2G5voe>7>OY`Ll*Dtg9!$r6k)gA;3r(s$r=4DjKdd!uy93?yp=d5&?^Q)zhE5AOBqy06Rh6_9?sL-E6Y&nrHo`bCRvLpMsXb3~8pOHf$3 zM;h#r!3Z)qo#UTbLXhC#D#7+Ar^X42-KZF-#GHX>dTz~o zL&NgJyB4E`mVLkXD=RAj+S~{Lf+ifPMGQ?kD8*J*z_Cp+QDyHt%AwAE%6+V86@L=( z$D*~du&?{IC@zB*ndi?zc1k|+iD}!M6y|etu=s0NwKa4scSeC$QB84bs&N70p9>8A zD8AjYuV3HoKe4g3l?|w1xyPKI{ys=(F6+-9BVxhMWO2uiMFlfqF0SR)w2(gWhr3Hk zU>Ix+d^T#;4%r?$qqUO5YR<3QzWRE0G=FN439L0-PW3d)$(5$(%`jMENLAOaSe&l( zR6_Gx#X!8~C-J)Y^?qlxumj2T{P@HBO}@DrkGoO5JAe9E_}vHJ6_GN4bMuzr3dtC5 zz(;}J+Rbq}oeCp#XY1%F-@%>wB5QDS^An|y_wL+D1?M{ALSd`Bdj@1|L+1sEuMjgh z{oyLQ2)1P`_+xW&WXH1d@?yo;lPMJGSPCmByAo=!l@})!&bAaC`ES?k-m+B-60rK2 z^XQQVhvvlnz|&oPqnQK`$m^*}2kfUU+*#Q@u_eHVw~9GLnJ{yGeW})HlD;=kGMQzwiQ(jiCraaZ zifjUgYQNiGhMwz3%@29>J~p1Cj7Y}RbUBY7l1Xxm>R8`CL+anKxvd&nceH3O8@}&H zMlWV;Jk89;%SNW%hR2p-<(c9B35rXB93oqrGV76% zQ7Z??O&a?~Wz3-yfH-U)0bB+yTGV1sAMA12@1B5to%j-X9-!8U{6#La%UB{xm1!R* zAB707S7TOI8;^_KUHclyz?d477mf#a{e682$z#XqgI8*55q0>E9`P?NFQ8-$Zdnko zwA5k=dPcy`5!Pi z87helt^fJi8d~?yMfzf=zTb667wGH<6&2q4>lQChQQ6e(XN~!{M|DHorYhYT+}R$p zsnXq+zowi$-_w4yFDLg#qJ1+H__0JNIYLb1saM;Tif%SW^iQl`{+w^``^Pl7w$#Oe zlNi1&h)iZgoH0k}a?JHqXo{;#YojyY*jm)J)FA{p$?kCva_alDN01ba!3|GnfQGAN zu*%>FBCE&hQdzTKYHrc&5sdptA~(G+t691sG*cbZ3nb2AW@Q{5ulaOYMyPq5?kL%H zig5OtKmE}VHx1nc-mL=kMBw%7*LCzBad7Nn?T!~-8cma_!!}p9FgVuK z;Sbj9>W+qKQ4X#H>R`36Rn0F-U0D*}{hf<*lzVNuoF1JZ?uigr(EK8-lr*mQ^KG5m z9XOr0o`>F=_wICF2LE=3QoPOB{iTCi>gbLgu;}6>u>(u!$VbOV(^5+o9X;l_S5Rmd zfb#O}CJQop95%5dA37NBlD@t&oUg~cE^H63Yv;q)u_5$c6|!kEbOm)PUi;FAul%*L z(tbFZryhyC{23aq+OM4?k^aNZRS~<`+q>bA9m{s3ws2&O_{vsbV0oGO zV_>pO7dn@RMUSd-n#17<#k8Z4yhjBGhSuhM}d66Ey{^z)!LfW)E}ue zK)~F)?|PjZ`TjnzoiOeRafrjBiKt|@>G0XvFCIN}R-;=sC9-nmGBPb7@ejkwbeK%H znUUn>mgMQyx{c}!yDj}gqzw;bulrF`qfZ}}9H0F0 z^}MHM9^}3-bYD;h?gF1+Bm4Z1OlGcSkHAuKSXRtG*2jbx&_7pB^c#`c=uq~GJX+tcAx$%tRF5*DEm{6oNy22G&DWG9XDP|yQRA%u8tWJy=?l@h}YD5)>_$J zNLyZ7aysNDj4~J(K!aN{%fR|6yX!%vDdC!ba<9y3x;AK1Ho*D(TwojPo5Khzen@Vb zzTp3u+AeBVq}Aed-2IA>!e2V_BHtc z9&up1uecu#aXYMv+jzC}M|9(3AZ)U4cxA<6+H(i-+nHOJeR`t7f>h9Do3(|`Q+9y5 zf6NS#t!sij-A8@}hqXC3^NoOeil;P}vVaeEqN&zD!?-eQ@VfOr0QmjYM{bXdeKP(DwEO3PCAf+7&i-{Fl_BRdp z%*nTOswNdMY;4Pf+@PS%giM+6*rWPwcLJJLfnKXWv)12{-_KE%pvYElJ+)J@r#{=? z>gl_+wS}>EU*&FNCKOZ! z3RRh4?RB>y9^$3e1}g)nCC42M8%&;LXMZg2?;pz5#G-~|JUS_!J-uR;04z|j_w1o~ zO&c~8Y!i|2lJsEc?rLLy{7_z2URFVF#B&gzF4CSTHQf`~OopY*i2U#!@EjRGN^<8YK9+oYaHZh2O~Za9BDC)QmQg!A zdXUqn_U9}5x5R;*zA`4ORc1MFR+gN-`>scSb1?Jnx~AOR%Qm(aYItiWQOnIUBBh|YawsaF)J%J;Erh%fG6a(TF%sd>jCiN>^4V^9J{bzJEgV?ydsx zEq3;Uz(s&d7FT;Gql7Gs^-z^)U zLXYPHmBer}x<%`vTZ0Cbm4f4QteHvH`;;Tws3BKiAQ#kO4gqRE`{ z!aFh)g30`uo@EqG%AfHr@p}D&lG>y3d1t}b#q=~ZNpWB=SQJUF=3|eoNEwQFVdY1j zZDJm~`;mATvrvDT=Najao#VxI-5SEnBL#R}zV$`n%tkXlqj^uc2bg?H$WDHc&s=y3UG3-qvE3j+ATG&##E|8hPR1T^O zIbh{qB*%;%W-l?+UX+$;(NK$EOW;p4^)hJtIEDc$f8^UQlC38B#O-+waVI0iFGs*q zpU{hdXlU0M&Q1ecy$+e58UB@4*M7A>uY#q%2s?d5hdoPlZW34{IDl+60^3B{{rvob z=^guPcg5+bs0tXFIVz?d*Xg;9G@Cd{inZ8uIiLvdQ zc~&brfycGX-gU!^bb))y!M&7Uc2~e|8XCLSFd0VID%a4Y@cEebsP&v zwRdpDi9rK8kYAH|N?)#$zQfoq=0w)Hfx{0Q(4^HgGkfzD5C+%7Te(9k{Caxb9&52I zb$f^5{r%U=THY1O3v4Br7rYISapC{oBi}Zp*iS8=PT!z^z$BVBaMQFdp|WhPv`Sb>hPEcj60}B z`8PUwd|phlO&AZi?na_HYP4x<_8T;}JTRS3Cd5}5H`8EqFQ8T}ajO^(+L+ zIXC8R+W1wvVQizW*}t)X&3@XvDl*q<9w%f&MTD#P3ziU?spC|04N)8OoeX;$>ru@C ziFfmM9GGG(mEK)i!D;t|on@WkYh&q4UeRKR?d~g;;%*rsFR887LaUR$dJac*CYNEy z4(O3dcvot+;f48T$I3-^I1Pin)Wky7gt3zP3I&MwJP~^1k~aB?FXP=%|N9C^M)^hf zfx+zdv`rm;P+ced2{wp*WC|o8iAdQ`jN{wRzb~c-#tkAi)ZiOK6&vc6y+gIHe2!_- zU^RWcVqHS7SL(uWXkQZhLHqZ2PjG1tg( zC;$8061w}5NgUx#QnxNTmLNP7C2W4Ybk*B`Ymh;}t!izVM@$tvx2Q5Hqh(ln7W{zg(W*H6u&A^nja zydv0muuIl?MMH01ld5d}5dEp9vj8Hp@@Kx(L0WndY^&2#QJJiD?E!m#$9MOm*k6}A zbeTa%E0=Vgrgr#q(O}0??e46xKMA9n@s^rwR#sMwsOw^1i&HskkL4<4!5mf-4|ao< zb5A(_JV?6851kZn?uV_UaT_Z}vt$oZOnbb0XMnuCCgzS?7WRzaD;bVj>VkN#dgmi< z$bp@MjLzHHHIoVAEO;jD{pzXXBS(m7AV#9Kqz9fFHAXG)CoCG`z8Z5^rZxG6`*tpe z_(TIyizQug6mrSMgF`~%F`6cmLc}y^7t-0$R;(?_QH6@i7sbWN8~HcX0eO%N)V9O0 zUq(D`c9l%yxcY&J2xjgPY<)1@|8N@MRB(>Vhh)>vdX~oh1=B%-%XIdJP=y_cDocCw zvN42jZezX%-*Al*na&|Klgpjp`NX>=@A2ul9C6|Ehyf=LAL2wuhz0B91nX! z*P85c(8i(|xCOhTLU}w(juj}--51c%Y zWW+=gHxzxK1@sOYCbS#5Fr4s(mOkDC`!pII6Hh5!O*=hBQbwXL)3y zZr0b;KBP@|seU7k{h_teMY-h^_&WvY%5_aUQnou}u%E7f2c2U_-qPQXEb`hjFC4Hd z?o8baJ&MB59eC3jXn8Je)fE+VSX@fU~D^rawjaSMI#d^VZmRcoFR%QqU4p+yvv?h?fv^}I`AgO%B!xMAyjrzNy zxe$3pdvCn&4T-HqRXlkQn_sCrNc6AodTKKd8IRlUK`SdjE!S$0ebPj>Jd&aWnF~#n zR#BNcAlXzlKgWm{+sx2D+MTGwSX8BK?{ZZxekD|4*ZY)y+`fO`l^ja3|FM8OQL|Ww zedpKd{8#tDu*kGlfG9wTBbjiwle(?N%0hoUWA{~L`*tR9xH30|iFy$M_+1y0%PL|s z0|c4-q1hqD^@YwO2G+f=d3NYt+OD*xa7wDOk(E{8Jzk`aW_x5OEv?&V?o8!7KOYJj z1GjB3wO}h(a;y@?2yvTEr1BoLjvVx|QWV>9n~Bno&_Z2Wr$=tylM75J4m#8!g}CF< zn6;NAgU`~CyZ=|2wv?omZsQRO66~;~zQB|`e)r(G@pFA4?m=f-lP^Rm3QauS*x7=W zC+Su|_^^4Xtbz@^&kWi2rOb0C!7PMM;ZdeSe)=jPXTDy~VL}h^pl&b-Oo!F2)%{JE zo1PK7^CBub1{8V}MF-&ysXj*y08(-isOQ^F0Yz<3xsKrJ85p?hQ$G&|ZC|{8&t>X_ zX9x=6>Cg>!&yEJ6DFcV&cx$f=)f}D?J?|M;!HNE?kcI6ZJ~4;ub#fu`)*z-1@t(Ud zMIP)+Ghr(qd-VBZOv~a3+)&>f76{+S#m=!5D~ndvS{s5acO`;3JQh0KD{wwQ`%Yx#@ev;0yYmH6W!{V$$zP&ycCqb<8xYZR zlC(WxCS+h)$y%ZoIs-Xa;?8!X?%PMA<&o_oyw^b+|F!>B;D~!*NEKb!8;RN&>d#HB z`=fbY5=ig8bD};zM&bS(4Eh6-0(RR;d=o#`)s~$v>vvO(&uW?$Eqq?^Bp`6pte|(anJG(An=;g;r1)Jgd0b5 zP(y`Jww~>#hU7~m=;evWM3@SfLA2J~7P{_Mh3<#$L<^?%-)!q$qkxIoBg;8Nl<&R- zI(>!Bej{CurDwe;pYL>>5a?@CwpyeZ4ucb>Ri{C1b>1&=y0!crG3CgCVf@l{Bz5`KZ zt<_WXwHT&W5?WN$_jX$w$3l;8$%K|GZ;AA#B>FiQZP3xv(yry9Zc+2N$$fCL zJ`9_zvel_`z;zW((iyA*VMVm~5l^X&J3dzLTGiaREk9UQGQvdKp)4Se9E%KH)@*0M z!h0PGA=eUsczgvAGCfxME)BKh|@t(oON+I*X6_pguR!x21$U@_bVSLjt4BwWXeQ^1j#mc4eZI&rZjQw^cm%A} zFHnV2nps7{1RC z+v%TC@D_IwwHci=9hhF=yVLNQ9rx%v78Ea1@_0$pa?6&?4%ZZi8on0=cvWa#rEEXj z5wttf{jTEf5yqm44)f=RM90YzRn`I-!**Tb!&5R7@M*nM0cY5q`6uo}Vj%)GwQ60u zBRxa(hh8AJ73DPqS{v2W!F(hWURT+=nQdOgXB~95{0UoRaPz15UHUdUV*jpT zX5}B(PG`;Gf?bW762Cxqs1l02@<*=a58SEPqUFw5d}Vh7JBCM)EugToNHqZEE_1+b z!PJin$lGBU287MeWR@7o3p6WCIV$O4ns-@^p`08+jlA{G7Mp&Z zISGmP@myFHq+lFf{=Ch)C`otW0>$qb5PS|y{t3w%tDH^Dlne+PH#RbQU5*V3-ntP2 zVs!jCCkymh>5Nj8edpn4SPCs-2q-e;n*tC-+D1HV~$+**qMQ{Zn(zs zn9EZF6u;vqcgxE~^Js+3w_ErXb|qb-*`8>8$1jHTFf&t=Do=0i=RZ|PqIU12=v>Td zy>pg&WK)^= zklziI8HN=#CvnT47Rcsujw54Ln1nKLsJ*5HtTjb*CXg_!OJVv>+Qt$H@B@tb<0W27 z7wP2ZQ+CCWkxLZn1P@3xTh+<;61V%-BH4IDJmb@Q1AhsN5q{>SENHV!?3Giro$=;@Mu*KM z`iz)`-=`WA;#Sia%u{Hi6U=FTODmG?pYYA;r_q?dj_YV?z*|>Ko6Y(&QcHt9Uc{em z_ytdEm7}`SwLsXd+Ur5p#6NLQLtYO8UnUTMHeVjLwK*V);YYoJ?(kx+B4t{)K{&n+ zr5)p+K!1p@V22ZE>el|SkMHgI1)&vu*OLX|dsB(#7Q1^k2ZJ-=4E$CdT|^g5-YYwe z%Xw~WJhj)9s#?+^gG#@PmJ5c)57^)6Q1^Rus@D=&5(xPmrMydQ@{S(bg&O2D=+uz{ zI<&VN>3e0D`Syxu2>)O)q+7B=!3uWG4xqw1JBN33$G&#cjnp3;oj1O8^_mY2U1K8) zPYnU=480pNt1a8p(Q^vNZaEfiv`;Pn^xl%`lp)!e*%=6045xC&aOV~k4GL2zDBee$ z4UBSIGG@B>)N*eZg3`1==$HC@@`-3XjHHI{nmPjPnsS;c!kz6M_u4-v?@7bGPxo0% zht>w6ch3BMm4iNl_kFckK9Ry!^a=8h9*`QWZ{{QkyiR7z%FNtLK=71maZP#?2@-~X zRb&{vN841KO6L|hxVhWM%e3wAo`(uR)6yAO7%wx699SYA5?$N=GCzzv+A1%uia&~S zZDVdoB?F`z;9a1s4_lcUhWhW0-})9D++mAW6G6)t*5$#}LH zJLId}K)NRHc90Mi0h5#g!!aVtiCao{2W&n9S?Fc%zjW8L=9lF(tet$=j*l}=-DAI| z6gVu0M0|9$VrLSynE8eyFW>6!Mmo({*)i_rY6&rxI|oX3W2KU{RZB4%bvtiIJ3 z?A}`z+OTcIfZgZu@MbgNqwi;#_{l0+U+g?4jsJQ=X(#CiHMoa?4@p_=nu?T(t;k|oaO(kBo2e<(gR&2 zxdz5tf6I@vxIq!;tqYt9!m_M_x4;} zchWOw)y9C;XM%_S`NL;~?pU#fiCv85NkN(s`68w6)7|2)+vfRaDJzepW9?Bh(~%WM zRpZu`eT|BNfq`4gD(2C78lbI9DD-@*VT_=iU$a& zhfpT?o&j*I6gTX+p^wiuhZRDQ8t7d8$&tvD?1hDeeP7ForVjN>)HM?21dBhMJUDS{ z)935~W98;;0btt|+f<1fFOr?C6mvgVvJl(JWxFVBM~D(m?4ELI%h6yGE`%LN>3e~} zJY+QFXWxz6ZfgzNM0pC#b365G=oL`q|K?K?k6AByZvZ$wgav)G>)PPOy+5- z=Xc#6rsCGK@!tDkx~~^@aP1FkMp}b(pryxSoDPjs`xH^^Q{Slaji$f)YVBtULy%C5 z^Q7&RC$&GAQ%Zu1V*D*%PR-F^H-<+Y4uK`M#CzB8c?%*kTTYIe_X8bRb*LKFp9F)R90lF5tGyn}0T7uc4Ag+v zFf|3`#o$VGjE`TP8(VE_%gyJ2?E77~HgB+pmLnkmQtuTvMIm9hFkn<@bv!Gf+nif| zV|PUx)W#^-uL<~kpl^Zqu5_{6@1q*n*)Z^fOEi^bPYCW$)VF32ft{7e$)i*8s={*N zhIZ$m=<9)fk^X1G^9y#9F(W=lX1Wbxov#kq3yEg9b7FH z91|yMF+5w=KdmI;v$W%#N`u>L(@aIN!_lB`>%6nCxtwuZXe^OjMa?j?Z*2%$(i|Kx-6heb804qoB|&+klRF=DJ(oowV8L!re~&?z4Fpxjt)dlaJ8D2|fj_^vk!C z>t1xJZUA`L*B6=zoLpS;c3NC90gRs0!HA+{(Iw>m_OW)Ai>zDKI;0k;B)oOR#{1>- zl@96+stf*}%fPd`R$|1Gz%UGW6u17s`nyvf){9gv0h0v(<^t1@Qi*=8TjDm7trggG zS$3)-mBh$FtxP|dz5#^J0&g5(Z7y#Z%!CIA(~6DLsN%Aa$~VhmZSmq*!LtfSX#u*C zzR_%;v5=Y38rRsUDee+Eu3F=k1^Fo1rx3HC?^3bxw(4NqX?)vyrioDARww8o!AILP z@XV%OefJGE+dKuXUY?Qey>prdef@8S6O8ALhc9HK^7sX)PR8jPi+B8?$^JvWyA5KG^MAzW%!1q_uH3A9pfvtkC&GljuB4V0vMqJsD*|B?1P@p z=PdYwa^>aLY*87>?6>!*3-ZIhJ#~Fw>hI_AjGip~l^d%pA-|VzTz%KfxncdAR%)0= z*5*ifMKJ9a+K5_GI$a3S``BAx0ei`<%+iRWazM~P(_6A?5;QMKcB^9wx4ciV9wGqP zw7m|vhTPgmGdJ+ZhwIM@(Ym{g7AdZ4@FH=WVMr?cU~`-wAqd6AB~7?>5Ya3wzH?{2 zh%5X)d+!P@%QZaBCiYZQe2$Flt|2F#$nFwH<^`BeF1@EGr~APkWr%z+&iDCqY^Ti) zfOp#^X{I7fV8=@VS1eMTJ;+p(uCA``__3$n$RTS6-=lk_&JQ0x44@E^Kc*r~cikUo zINaeZ{N)PF2LLDeaHsU_d9i543Iw~7*nXR1hEi|ieE`AqAP>=0{{BLFKPhHDaVF#B zqckL*ytS=#>RhWtx!Mc^FV?`y!0EnS+b4Y?D<<~tAt}egMGq{`D}{6*hM5e>`_!$G z(Zkqp>0_Q#z`cw#x4T*Qm|chzb>$=^I4pi|#sV}cfgY{WR|;B-h$;W_p1St{j#>ND ze;p{B&1o0oU>20rhVw00g8!}h4+E{MK9bx;OKGH=ovV5g!_^rT>aYZl?L z?TNOa@QcF7(~k!8 zQ`3rd1jT?l?VEG)wySVTKz>Qt$EsYfZwdw|O9Fy8IF#_!k;DGmoT&Ycd zG$L#}du!`?p)CgZTaS_ocETCl%lHR1cMJt_Z(d6|3JcWlWR6$ab*_4NW=LGRj(h0L zf$Y}o=%Zp>%HO14?tkn|`V9zh~HcP}q5m#*F??VNb@CNITETZMA zTYM(KZg!^rG^hQ*K{Sio_>z_LPs_XfemqT6g&sz^>$`>7MMa@ep$hw9yRc%P`Q@vm zG*~hhSy*S8O~Hy7g?&$-dZZ0IxrAN!s#8vRwLHMS^0}{+7lKy~{n;{~XWv&`zD_?E z^)-6zs~f2@T0^MVTWELCyXtza?P>y-XN$tpvL|(TUI<6|HNxOqDa8oiabx`cusB13 zLP#rt)7nLrxVT4MP1I*(YVfsc*?~I034K-#vul3o=?aAkJ7})?O z0WF*~CDUMr&HPf%H_zFrL*fzzV(5Tivu?@esr!ALXB7#7;{aBvbFQPa6Sd!BL&Fod z?jkJrJ{WztgE(yA*DGM8KU4y5+MNitc zCs`-Q`j?AprZ-y|fz@mckUKqw{UT?t^)d=?uWYBMr~gqDArYm&O0U(=%!3ymEu=QU zk85&TLWNk}nS7p?<;n5XeXxm*jZPMuibCQ%TsPCd@}l=v_7_spl09R2Pz6(oc4WE{ zQTY0#AVzd16TAfxG^H85r~8_*Aql=klP^uVZScQUUuET&rI$R=#HXe#)zFrrEU^{s z68nW)ld6h+(*Vh=I+(^wA0Y^<)@D~Uz)AnIj$6pVyzTBVk9NhjXM&)q;QsD z-zTd#tn+%dy!}d-Qp=?{xbWsErSG<}&l2`SBJ!2=yFjCrk|!B`8*>#-q(0(X=aCBK zn)o!-LsOBuHf0POc9NfiQNgw58FE7O~=2u4>p&s_%?iRusX^N$~ zZ@t4*o-moK4|{duI|44cUn6A-Pt?BfuT$X;Z94Q*)SedNj;@<@o$Guovr{=wU6;*$ zz9KvQf3yI^z$%M=L}<%>N{EBx;vvQGH%H@~Wu}!B?nJ@W#Wb)j*EI01)7?!@_?l^w z(__+_OzgxotTO=I+m<;6MPWI=u#!ck4zzkxz-|-hExOf)29BFdF@k7ry3iI- z3Vpy{@jW2c9k=Mtv75V=g4jy;2qZ!fT{-T)=&>tyBT(OwV0B0Qgver-aC^T4Jcva+ zRcQwL`{y{vfE9N|?xb#S3y3y57<$M{L-Ii-VRjA%C{={GQZ}m)JJoRtCcY2czYBlp z_6j()_?25=QquHQdjECc=y=IQj;%NeYZhw#h?@A$yx5y}_%}_4EADUvDgg)f&H?vd zy(J|Z9UWW1XC9qgrmw4;fe)jH6Bkvp6%VG$Z$KRD^quO5=o+7Jbe#~t#DWLr6JB01 zM?G@or7uRE*_B(YBLoS{xOUT+So$h^?UU`@lDSp2@CvWu9F`TBQ4e3)+`yoG(_arb7)ssM{Uj~X-Ce5 zJIp$=Ny)Tcg=Qr&q4y1kf}6Jlr#CWa@5Y@vr8nxg>-M6B&Yq$FV~--QVWFtk9;!8L z;dH*UeXZcJeJrqP!5_}ai%NAOEHx%3aE}}0N}pXr9qs^7DJ9T3CJ!nhzDprjcGe~Z z%TdJ!uMWc)hE98ivNO`1Hb?H0zGxpJ@LVQ}uVMgH9KhSRYQpGzjdi?Q>T8@?l@1gr z4H|r`01r~?=HXlpQ$>~d{fzq}JDGExF}Zg8R{*FO8s$wox^}$V-pbU*xc}OI^gB$3 z$$6s6ZXd3AEXgp8a8GUUJw&WBFwm5mWQ0qoB>Ol32kB5sSJ#fD{|kj6x?7I^so=Txf)hSv?=Yh6-J{8ZH6taE`f zZ86_*&x!6m*^lEQ^lh3E3*A-{EOGURIqW!iufp%9-L-?erb>EIOIwbmyl@CB4LVi* zF?2j5=B8tJ-lnx-rb5*Iq)2}coU5*6u(I;k=8-10(#VLqsa!KFcQa`5@{9;F+hF6Z zqDs7tP1^R{`uj>F+0yKhVx{0Kf;D2U&uD#T6pCzeF-G)a4{Xh1W)Sy>%20gxN?l z-6Y>qIHZyh{p3|F&!mC(jK1%~N6gHd2q?UPIKAx_#R6E)N@CleefSP~=JY%%k5P4AWy z7sVVJYcyf|?aLsY#{u2C&CNWaxY$|-E93+ylh(;F5#drZ>xu7 zB=^*8==7zJ3T#e#?dX;}<>?_nqDt5*Bo(Y4$(}g%t=8B>8QhN_*sodzU$IUMIQF4% zv8jp|lWNO~IVMfQN*BV8zeryOXTrT)UfH&`&S$DWv7ZW6Zc9AwvnfKALVV+k4%gtb z!JRw>1qD&D+Y*OF7S93y$E>VYk;Sq(sjy)X5y+x8(W*6#sAqsT#&zv5%q}3p#rF>; z%9Rj>h3(zl`+vzu5{BPpH1I^{BOq86gt*vJQ+{?-OL0`Z6D3-~v` z+2{TY$Pf3r@`@MCKbioXAq5-K`RR*H!{i>eie@0FM{~vLSN`4|@ynRlrZGF($e6x} zr21L);4YA^$3{f;2N?gQRZo98)!72632RGK(JSB4y}k=3LWCuPbSA4Y)suH{$r zuFKk|8mqWCmo3WV>sA}Kk`9d!&m;v5+g8 zO!_0=5FqtVv%dl{Ol^xp%xZ%pzuqZa_dFbSV`HL@PFa*|?P!s0VlhB7*XX|q)D`TM zCEIKO<2|R&VM1xd0uuu>{2$V$_-Z#s@Ae(q^hEaTO%JJ&VJHMAvs15!#W=Br`053- z2n*MO(k=jy>+RepwlPO$>+rq(q8?=O_wRc>-b|=!=VZLve*$wPt?4DJ(G2q}Fo zi=#`pL&oE&9K5RPz@MVX;;A|&I6y|)u&~h08!QdgVZzb!v;s#@OCfFNnca`eF{px} zv0-|Ed0d7zoJ@B@!2vbHzKHa$h-{N* z&z@B}(b|j@XxwSqn(4mAi-G~eVr#45prW!wGx^|9tp-}zLk%i=MQ9SJ`HK?6#@dm} zz3+v+x`5d$bm|2<{tOGJatm(EU&rTu9SV{4{cmIQ>;h_leD@$t(n>rnVA zMFz6*t#6NHpO}tBY4CWlN63k{hVpsZbQKaMo{G!qoA8HQ!5Rx0J!z&i!UfbO32f;` zPhX6iXK*~&Z{8v3xa)i#Gv*VRWfPV7nj_#}2YVLz`9r{plKo7(-95kGg^19!qPd;n zeuuim;r@*YD5v9FEsCkMi_Cub@)sgF=wVDXqpV2|NZy%+wC>gE>d1q zzyv&xG7Roc12PB%XUNs9>(VCHI^M2~kufz%J*(Jj9q&U-jK|x`2eKJb4`a|GS&yZf zr7k#Lk+mim%e)W123#90Y>ys4%061)`GHPxN__lSD$QsrD2UyNJH|DyurROSNoY_g za&7g_;ue1_70p*IE_U{%n0bNY7P%Y6pjsZCQDSi3syTP21YMv@*bnv`Ii7jTsjU1! z;^y2}nYS*B8%!r*G$2@p!Pwv%On_aS`#L8tCpebCa)6bGnYr&IZOdu@R`ZgR8)48> z(t5Ul&T;dg(C2bI-+>(v zoIAPbQeH;f0;=X4iP+!`jrrdGd$scZ4K4l&Sj%_Ny-;GeK!0XWK(p~mlsW$%tK}w& zLke;3A#K?MyO}qlWG7CN_Emm#a{Q zadD5J#x%{%&FiLvl2AcP?Q&@bv7MP+gE-O%lMMay1}jk@cXFhgAd~S4?Y4^ciTN=< zE#oZ|v-Tc&9%3RygbHBgEq<9%e#tLoc)>9rf`_44v5_qsp3#^(H`23=K9|v3Y@j?T zd9P?+7dbcZ1DoB3g;RzEg+?RinYM0^de3G}5Q*1)+d~E_DqFdalCwsmk< zGu1v@?jI3S_b*5Dd#|N z`WbB~0HlU8JYfx~8?njGTByz!5E%TW>=J)nO3*nNDo(XuqVgoT2$G6Z7F8FlXSvG{ z@EG|EX-p8bLfZPS`d)9oo=4>Ui%{%O#CK+&$``cZP#@?`1sm6UgY7yAVKm*gzx5^h ze|Ar$i`5C$noQhcO6bz4%nj0joqzd}xFq-%_s>pjp9w1%Z4ct=RnEkIdGhMa%VgIr z9Q|z$w_E?Eo}8F|&`UYT=zpH$mr;-v?14aUEm0cSHToRz-)fHtenlMq8wwf5H*4#qKz^OV>PA{(WV13lCVkyX zOTF7}5n=qKTVwF1_0KmdHYS#K>mKeiT{6!rU-*51cuS7`-ih|Na2$blt9najiJ6#= zY>(6L=LvB&^obK=@DEU6$o5{+H}{<44gH)B)` zdXW?gUVrn|zbTQwR;A}7+aJ-fmN)lp8uYD;Nxo$(bn>^<^Oi(Zq@~`FqRRs%_#!}j z6qPa)SzP&r>ak;v>5Zr+nEP{butS|Izre%+4A}r#G4zpy&#dZBdp)8*R3H4yHn+C5 z@*+|;^_0u@YMJVOB-c7;htq|fx{iKPPo^ocf9m}HgIMC%X_`gVRq32DASC|2N6QLc z|6jP$1FJiE9`j0$bweAU5^Nn>!yG7%n)Qe%=0mY8)=rR)H6-@L8&kb+>S7-kWhYe% ze#1pvlh85s;jzR!|EGbN< zX1g%0&zJ^4Y;weevLF7Lj^}EcyR8`Tlu3CY*AVg@dLAj468E?J^vi_(+r2I^e@=gq zcWhl=RQ*wkb?&4sPpTbPA}8VM*K$3_s4MQtmbqDJh|)Axj=|#t0t3O8T_>878~bxm zV%(CE8syULDXB>4ZXzO4*@a&yN}BxMnQVO}%=|!V=J?>k7xpg0AbwqA1*7(us(^Sb zqgB`%m#C^hA~@gq*Z`Y#%H$|iH}KGwjKlitivr0758sbBg&`iF9^S$poWF7}Zt;G$k#@pi512>wAoHMY;tY;UCs zADsRn5}?KM&$(^`xIA`cjgQ|?CMba;D_bWhP(az8Igp()U^-c%`Q~e11~6Vd{vEG~ zzp+!j)L(^Zf`0!*1oYMR(;WsR^xv#K6R@$yS(rv~iiNeD1jlLfZN`JQm-6IP6=CEk zS-)$}8@pS2WtF=w5mhqCRM|Lj_Y`mUU;#2EmR*;e!{_IBuZd-nUwtk3gR0(-S0zsB zQElG)<_}uI^wv3liVgi)*=zA~7KL3Eh?loE{&FTj{8!qo+C~3=r=P>$ckh-Av=emo zRkRF}?%qjdFX4>_tVdmaGFwS;Zwm&#JW|UkhLq5s!90GIMAQ zYH+#=xGO~0!+3A{%%;)o2xC$Qwob>+e-U_vfwZqTLL4oV4-)7f##y#s=SDII+Jk?m zZ<9BdbCNze;=XpRELOKb#VEq@+@Z9Bx?>trP4fNxnNybE(}XwU<~tZHSNQldIZIQm ze`L6yTGNFsz4BE4!?+P8_$|mi*3LaP7C_l9hNwS?^C%OU!)?)(ZeE;B9R+W4_U&mh zwnF$|Uv)6b?O53NuMA7>5IF>EtQz&gldgT>6RU!w`Lba(xV$ZSg*)rfm(#P~u_QFF;{ zA7Wx!!54)$1K(a}!xNy9Dx`IuybiH{5z79LBtsZ=Q~(N*o&OTLeGb`qi#om}ATnq1an*7jLuEx+fWLIbtxBmBva28U)t+?lbdcol zQPD=5Z`~&4TzGlPN&g*ux`3y>G_rs$1nTfOdHUZ89#9k$RLUyJEMs{vPlq zjkixZo=x(7c7E|&Lzft02hB`1(|Pt^Ds#nu0GOA)*Nz8+*$Tj; zgmnHF!Vg*5MLGIRtK#ITo!{kt44aODPrn3ES2=^(Vy^uBCjja?6aawDw+Fo18J_Hj zg^e2wz7NZD5Ehl9U2$!Yat`Es(Pc=%e@~&&l1h4u{?a*5*0+w=kh%?dz}SS<;Jkr2 z2>gB9I@pTk2IA$b)35wLU;OmUuv5^bnkE%B6ky%i?~b~rP1%9j9U7>3`;=OXzcR?D zPOzSgo(pc`aVUA}r}a&R@1jlI%b)-Gf1ZW{2lnaJtJ8LEXlve0D4#PVpY!T!6-R6* z4~@Pe&!fZV@rBZnW2R+Vk{OK|cUaPIhi3osL8N3J9rpdu{TjtzS55@p!<>o&s|e*TGX znois2C6Ln(^?%p@*8?67CA@dfGN@PbI2@V&cy;y4mB*kfbB?*<=08`|^QZ4h&Gv}| zQ>hdOepW&m_=x|x>Xe0eSKR-4Nj?4ZgLik{ypdgJ_9H&qZs>|AZ;`#+evf{8??gjm zI7Q6DZD-6Iqa8x>T~YXd5tctjNBjb%%>Q17W{&_e=>IOQ`={*l|GPA#|9}7EQL~wQ zcO)2t>u+U`Ec=qr9T4f#L_J_vg&d9ozJw_%ny@vfWW86v&>ZC+c=hU*QtEX_7bnW= zSF1`(Rg}#)OI2cdlYMg)WCV8;PC-22`grO5>2LYhK@8W?;z4C^nci5X%sO0@U+eYP zt7xaG<>pjV3$uLQ_UrQAJ%-BC5)xUmiNp!UoSl{Zq?zo?s9SlDTy zo^TOAN1=R=SQS!=CM-NXYn&}mkPrsjzmjYf9k>}4@P+Xex z^Ya|Jmb!vGn4S(7S67>nJPUnZChq3f9A*Yi&Q4M9dklLK*Sda=;8zn;;i5??DZ`oC z2+Cw8_2VS;cD30A4{bnWb8lfAFY1S^P^m8FlH$@1Hk>YI71omU~qqsiOXrF%!nO+iCg5 zl9H0i=g&oVw19)?aA-2t&W3c*sKc0IZ_nRYtfzK-+s$pK7`5-HwfObd&#Df{Lq6vD z(JB3&9-jZ5KN@dOr%FkKa0>`mWRQ)M;~ z#iTx{-o7(qvc2uR?BO+%znV9&^uDILo*_)YzWx@2tAg)+8ah|3N7YxCq4qo-cEKlK zy>Jb;`viSCB_w#6#ig&N7>E;o-{1PcvAVhv!nQc^UJm7Z7(?)oCZ7T**Kd9xG2Jfc(MhD9UhV<~Z#eVg|V5vN7go1(`*=0A~ zcGL-jg_;OA{jBTPy}rn=eN3C_@XlBC^3pjdOr%t2u=e!m=xuI!+xD{4xdkmN7f(x~ zMKvflIF>1!DUxaVBZ>>PS(=&jtjqh~bnCcM%?N)B3M(luhxR`GX{~;#JUo_+$QR(W zk+**K9Eu44dK+Ce=SBbD^||ECzjyq@k9)H*6p&O=nA+!I>rh1tY^`0+C&^Y3VWC8W z8W?GMgOkQ<$18jNW1o4bExvwwBL2>*@XkH)d9#6o$kuRMY{kRpEcytmMZE3cX#3-N z&$u5C7VF1OVp6&i(6HSw*TY>~mF356!ltvCV3L$Qdp=y01fN=wU1fP)hz-BLn~<<+ z`2Jx*;s|ez(|(c$Nc-+|{jy-PAIaLoR~9stn=A7B)_AO4uYBsXGF!D;%i)fG&F=He zy|7j;SUSDg`pY`3M2lQ!l(ryPc=-NmvAi$jAVZ%$ZBB>@{dj6Y!%kRS&?x^yS{TC^ z%3|SSkR*Z^A^eh(iTr_l@z}lYc)CVaq^dw|W{iUgFa5<|;mIaTyX>ZuOf39R9TCwy zoaMdVno9pfwO~T-{(>5V>3xIyv*bF#PL7VwZWa7it}1lp+5o}pfC_rF@rfZ|$6j^7 zSnc>McZ!#JH6$auL*L$Krk1yoteIa^y~8A0rQi^IyO`_nW<0yu?4vw&%nq)iPW~fQ79&MY0bSnmiXe`^= zy7(T1dJvh&@^tLSe?KJJF^=zQz) z@j8NTSw9X2Ez-~~YCSE&Pp^2q${kObA&53Ha=o)R;^GyF^q!t;^^q89(eY&e;cW=+!Yh?u*6rL_eOeo z9=^xV&h%&5(Z$Zqn_^CE55AVOi4i>b?KZ#HIycokXN!TG!Jd8fn?lD4N>aoQ7pTk7 z_AS{C3=C*+lQDue4Y|3LfQ;i0 zh?;6jT7lPj$~lVk(ND`0P%4;Kr55cLpRw3-o+J_VX_96WO!uHU$J+X{-?mvp=FPi~ zu05^L4xMLpFK65i(lIBR-MH^Pf_BH>|3R0RKigd$C(a$+00-8}t?SmztMS=;F(Vf1 zR&C4#z~a9=SjZL~bcOHQ$+p3Jr_W=}GL$P54OUWpF?R(7%FfKT4)^dJbu{lg<4_K3 zrkgEho^7Ey`1jkSYa5$(rZzTg?ntk(iERtG#_^w<>Obc{*$u8rn<|E&z30^e4T_QF z7YoynQR#?_mT)%VS0ztd7~_Ssw~)>VJLE%*xPpPQP2cJO9NSdF){e zK?pD;ys#lHh;WIiefzyP#?-+4wS55RUNoPtmTQy&IbK9*-nnDEvySUOTw)I9bA2$o z$jE-3R=o5N3zW-^Oqg>;P`^*Jt1D6>(G{(o`w?{yX+QV55YNR8^K~+w7zvT!;o@4{ z1L1wK=WkZK3M-;2IjQ{&gzG%XKR#x2SF*@~VT0Cts_I`+6|m5&!Ye?Gt*+}ae3~Te z=rY;y^)@!fQw>`3b}m76mF3XQZcT7wtVk^N117)P<2W`8;`1=l+Yl4O%)(}+d3?|r zjuqgJZJbe}Tq3#Z$=LWpy4dDcsdh0+#{JJ# zdEbce-$^I3@_~~`n}NlJoF}^qe?p(S@9LZ`%M9s@xy#!YN@$nOF0jlA3DwmKNnD*1OLF~v@~snYADJ7GQ%>N(rerT7RlCcaJ$}(D=4oUPfSE68CNqH z^rz+x$}Ng5sAkeGCf5=_lncI%&Zh(mr-M^I>s+8s+PH;e*h)liv5)nH95iq0L$e1} zpx%UNNoW)@E|Wz~EnxjlO~_fv)Y!&PDBT~C(~n2FRN$UttkrUeVTO+WMkVG;0?<8S zA-=T~O&HSG&gk{)UzEjWck3FqsZwOgA-Fo(sLS)2M?V7y2+_fv_OChjT@RNOqY3USlBja9t z)6vOUYNDgAo3&h{rpM^#U)4_5kU<+Tq-dH_k`rW1EE}Q)MQX`}no%*j+JZa`Yek zoSMC%7{9H32aHjS+pEZs-m}?)g8Y$VC#%^Tit+fB-cJwpZO~XLO2(@AJF;x)0ssI2 z000263<(?n0HBgNeKJHbp7+tM*#A~<6a0vOK#QVlPK78Iv9+^TjFH#SOXp1M>-+k5 z?)s0~9-d`vN9~3tuvJ^NV0u)6Vhp~jZN@}LXq6GyugLFCT^@J++;3RD=-A<1>sK!-{Yrzu z5EXe%3KCb=4uw%kz`kpb5;iutaXn0a_v$@B%aBkxJG-c<15qY<66&gJ-|5l%4gAg8 z>Cvn2hjUhr8vCkpcjcN>P4hdsKAM0gE#-GyOr&-s&BgPl)DI3eW-pm?aB!MFbMf2n z&1>8w(Cn>;+jY_DY)xzY?_8q}qpDm(RN?A)daHQ}r%rrtTCX0e;$EY6W8-L)qLzo} zV^8##$AVeCyL&D9otzXeUmWGWkx?=`fu%)Iuv##C4rqxHu_n)fyOD`&+WaB2N_F~7 z=dPkywsZji0000009b}2Q~&@#B@=B7QhL{KSmGfmKE92@uUw3_G>|C)au=8Cw{PG2 zV&40$T6bvIvAdstQwfAC<)r=hdX=^}hNGkTi4Qv4qBweCVS!eo?yn#b`tU0k%r4H% zysZ`z6Jou6{3@`+_tlUQFI*45eDVA*@>BG3{BXq*$`W7L=V`FU!&euGBE8#l`rDN(uRRO92@(ClK@ z>h4O>uoOxUtGm@u?tC4jUVY1qqhrY{!KZ$s;& 'Quelle entfernt.', 'source_invalid' => 'Diese Quelle konnte nicht gelesen werden (gültige bloomflux.json-Datei erwartet).', 'no_sources' => 'Noch keine externen Quellen.', + + // Benachrichtigungen + 'notifiers' => 'Benachrichtigungen', + 'notifiers_lede' => 'Erhalte eine Discord-Benachrichtigung oder einen generischen Webhook-Aufruf, sobald ein neuer Artikel in deinen Feeds erscheint. Jeder Nutzer verwaltet seine eigenen Benachrichtigungen.', + 'new_notifier' => 'Neue Benachrichtigung', + 'notifier_type' => 'Typ', + 'generic_webhook' => 'Generischer Webhook', + 'notifier_name' => 'Name', + 'notifier_name_placeholder' => 'z. B. Discord #news', + 'notifier_url' => 'Webhook-URL', + 'notifier_scope' => 'Umfang', + 'scope_all' => 'Alle meine Feeds', + 'scope_feeds' => 'Bestimmte Feeds', + 'scope_feeds_pick' => 'Feeds auswählen', + 'scope_feeds_list' => 'Feeds: :feeds', + 'no_feeds_selected' => 'kein Feed ausgewählt', + 'add_notifier' => 'Benachrichtigung hinzufügen', + 'your_notifiers' => 'Deine Benachrichtigungen', + 'no_notifiers_yet' => 'Du hast noch keine Benachrichtigung eingerichtet.', + 'disabled' => 'deaktiviert', + 'send_test' => 'Testen', + 'enable' => 'Aktivieren', + 'disable' => 'Deaktivieren', + 'confirm_delete_notifier' => 'Diese Benachrichtigung löschen?', + 'edit' => 'Bearbeiten', + 'save' => 'Speichern', + 'last_triggered' => 'ausgelöst :time', + 'notifier_created' => 'Benachrichtigung erstellt.', + 'notifier_updated' => 'Benachrichtigung aktualisiert.', + 'notifier_deleted' => 'Benachrichtigung gelöscht.', + 'notifier_test_ok' => 'Testbenachrichtigung erfolgreich gesendet.', + 'notifier_test_failed' => 'Testbenachrichtigung konnte nicht gesendet werden — URL prüfen.', + + 'reset_title' => 'Zurücksetzen', + 'reset_text' => 'Das Skript reset.sh setzt die Instanz auf einen leeren Zustand zurück (Konten, Feeds, Artikel, Benachrichtigungen), ohne Quellcode, .env oder Docker-Images anzutasten — nützlich, um mit einer sauberen Instanz neu zu starten.', ]; diff --git a/lang/en/app.php b/lang/en/app.php index fafdec0..0dcf721 100644 --- a/lang/en/app.php +++ b/lang/en/app.php @@ -143,4 +143,39 @@ return [ 'source_removed' => 'Source removed.', 'source_invalid' => 'Could not read this source (a valid bloomflux.json file is expected).', 'no_sources' => 'No external sources yet.', + + // Notifiers + 'notifiers' => 'Notifiers', + 'notifiers_lede' => 'Get a Discord alert or a generic webhook call whenever a new article arrives on your feeds. Each user manages their own notifiers.', + 'new_notifier' => 'New notifier', + 'notifier_type' => 'Type', + 'generic_webhook' => 'Generic webhook', + 'notifier_name' => 'Name', + 'notifier_name_placeholder' => 'e.g. Discord #news', + 'notifier_url' => 'Webhook URL', + 'notifier_scope' => 'Scope', + 'scope_all' => 'All my feeds', + 'scope_feeds' => 'Specific feeds', + 'scope_feeds_pick' => 'Choose feeds', + 'scope_feeds_list' => 'Feeds: :feeds', + 'no_feeds_selected' => 'no feed selected', + 'add_notifier' => 'Add notifier', + 'your_notifiers' => 'Your notifiers', + 'no_notifiers_yet' => "You haven't configured any notifier yet.", + 'disabled' => 'disabled', + 'send_test' => 'Test', + 'enable' => 'Enable', + 'disable' => 'Disable', + 'confirm_delete_notifier' => 'Delete this notifier?', + 'edit' => 'Edit', + 'save' => 'Save', + 'last_triggered' => 'triggered :time', + 'notifier_created' => 'Notifier created.', + 'notifier_updated' => 'Notifier updated.', + 'notifier_deleted' => 'Notifier deleted.', + 'notifier_test_ok' => 'Test notification sent successfully.', + 'notifier_test_failed' => 'Failed to send the test notification — check the URL.', + + 'reset_title' => 'Reset', + 'reset_text' => 'The reset.sh script wipes the instance back to a blank state (accounts, feeds, articles, notifiers) without touching the source code, .env or Docker images — useful to start over on a clean instance.', ]; diff --git a/lang/es/app.php b/lang/es/app.php index 2cfb782..7abd201 100644 --- a/lang/es/app.php +++ b/lang/es/app.php @@ -143,4 +143,39 @@ return [ 'source_removed' => 'Fuente eliminada.', 'source_invalid' => 'No se pudo leer esta fuente (se espera un archivo bloomflux.json válido).', 'no_sources' => 'Ninguna fuente externa por ahora.', + + // Notificadores + 'notifiers' => 'Notificadores', + 'notifiers_lede' => 'Recibe una alerta de Discord o una llamada webhook genérica cuando llegue un nuevo artículo a tus fuentes. Cada usuario gestiona sus propios notificadores.', + 'new_notifier' => 'Nuevo notificador', + 'notifier_type' => 'Tipo', + 'generic_webhook' => 'Webhook genérico', + 'notifier_name' => 'Nombre', + 'notifier_name_placeholder' => 'Ej: Discord #noticias', + 'notifier_url' => 'URL del webhook', + 'notifier_scope' => 'Alcance', + 'scope_all' => 'Todas mis fuentes', + 'scope_feeds' => 'Fuentes específicas', + 'scope_feeds_pick' => 'Elegir fuentes', + 'scope_feeds_list' => 'Fuentes: :feeds', + 'no_feeds_selected' => 'ninguna fuente seleccionada', + 'add_notifier' => 'Añadir notificador', + 'your_notifiers' => 'Tus notificadores', + 'no_notifiers_yet' => 'Todavía no has configurado ningún notificador.', + 'disabled' => 'desactivado', + 'send_test' => 'Probar', + 'enable' => 'Activar', + 'disable' => 'Desactivar', + 'confirm_delete_notifier' => '¿Eliminar este notificador?', + 'edit' => 'Editar', + 'save' => 'Guardar', + 'last_triggered' => 'activado :time', + 'notifier_created' => 'Notificador creado.', + 'notifier_updated' => 'Notificador actualizado.', + 'notifier_deleted' => 'Notificador eliminado.', + 'notifier_test_ok' => 'Notificación de prueba enviada con éxito.', + 'notifier_test_failed' => 'No se pudo enviar la notificación de prueba — comprueba la URL.', + + 'reset_title' => 'Reiniciar', + 'reset_text' => 'El script reset.sh restablece la instancia a un estado en blanco (cuentas, fuentes, artículos, notificadores) sin tocar el código fuente, el .env ni las imágenes Docker — útil para empezar de cero.', ]; diff --git a/lang/fr/app.php b/lang/fr/app.php index 870aef7..843e46e 100644 --- a/lang/fr/app.php +++ b/lang/fr/app.php @@ -143,4 +143,39 @@ return [ 'source_removed' => 'Source retirée.', 'source_invalid' => 'Impossible de lire cette source (fichier bloomflux.json valide attendu).', 'no_sources' => 'Aucune source externe pour le moment.', + + // Notifieurs + 'notifiers' => 'Notifieurs', + 'notifiers_lede' => 'Recevez une alerte Discord ou un webhook générique quand un nouvel article arrive sur vos flux. Chaque utilisateur gère ses propres notifieurs.', + 'new_notifier' => 'Nouveau notifieur', + 'notifier_type' => 'Type', + 'generic_webhook' => 'Webhook générique', + 'notifier_name' => 'Nom', + 'notifier_name_placeholder' => 'Ex: Discord #actus', + 'notifier_url' => "URL du webhook", + 'notifier_scope' => 'Portée', + 'scope_all' => 'Tous mes flux', + 'scope_feeds' => 'Flux spécifiques', + 'scope_feeds_pick' => 'Choisir les flux', + 'scope_feeds_list' => 'Flux : :feeds', + 'no_feeds_selected' => 'aucun flux sélectionné', + 'add_notifier' => 'Ajouter le notifieur', + 'your_notifiers' => 'Vos notifieurs', + 'no_notifiers_yet' => "Vous n'avez pas encore configuré de notifieur.", + 'disabled' => 'désactivé', + 'send_test' => 'Tester', + 'enable' => 'Activer', + 'disable' => 'Désactiver', + 'confirm_delete_notifier' => 'Supprimer ce notifieur ?', + 'edit' => 'Modifier', + 'save' => 'Enregistrer', + 'last_triggered' => 'déclenché :time', + 'notifier_created' => 'Notifieur créé.', + 'notifier_updated' => 'Notifieur mis à jour.', + 'notifier_deleted' => 'Notifieur supprimé.', + 'notifier_test_ok' => 'Notification de test envoyée avec succès.', + 'notifier_test_failed' => "Échec de l'envoi de la notification de test — vérifiez l'URL.", + + 'reset_title' => 'Réinitialiser', + 'reset_text' => "Le script reset.sh remet l'instance à zéro (comptes, flux, articles, notifieurs) sans toucher au code, au .env ni aux images Docker — utile pour repartir sur une instance vierge.", ]; diff --git a/public/css/app.css b/public/css/app.css index 6efbc14..63d0336 100644 --- a/public/css/app.css +++ b/public/css/app.css @@ -1195,6 +1195,40 @@ h1, h2, h3 { z-index: 30; } +/* ---------- Notifiers ---------- */ + +.notifier-form .form-group { + margin-bottom: var(--space-3); +} + +.notifier-feed-picker { + background: var(--surface-alt); + border-radius: var(--radius-sm); + padding: var(--space-3); + display: flex; + flex-direction: column; + gap: 6px; + max-height: 180px; + overflow-y: auto; +} + +.notifier-feed-picker[hidden] { + display: none; +} + +.notifier-feed-checkbox { + display: flex; + align-items: center; + gap: 8px; + font-size: var(--font-sm); + font-weight: 400; + cursor: pointer; +} + +.notifier-card summary::-webkit-details-marker { + color: var(--text-muted); +} + /* ---------- Responsive ---------- */ @media (max-width: 720px) { diff --git a/public/js/app.js b/public/js/app.js index 8b8d85b..51ea710 100644 --- a/public/js/app.js +++ b/public/js/app.js @@ -83,4 +83,16 @@ applyFilters(); }); }); + + // Notifiers: show/hide the per-feed picker depending on the chosen scope + document.addEventListener('change', function (event) { + var select = event.target.closest('[data-scope-select]'); + if (!select) { + return; + } + var picker = select.closest('form').querySelector('[data-scope-feeds]'); + if (picker) { + picker.hidden = select.value !== 'feeds'; + } + }); })(); diff --git a/reset.sh b/reset.sh new file mode 100755 index 0000000..be5eab6 --- /dev/null +++ b/reset.sh @@ -0,0 +1,83 @@ +#!/usr/bin/env bash +set -euo pipefail + +# Resets a BloomFeed instance to a fresh, empty state: wipes the database and +# application storage, then restarts the stack so the first user to register +# becomes the new owner. Source code, .env and Docker images are untouched — +# use uninstall.sh instead if you want to remove those too. + +APP_DIR="/opt/bloomfeed" +PROJECT_NAME="bloomfeed" + +ASSUME_YES=false + +for arg in "$@"; do + case "$arg" in + --yes|-y) ASSUME_YES=true ;; + --help|-h) + echo "Usage: bash reset.sh [--yes]" + echo " --yes Skip the interactive confirmation" + exit 0 + ;; + *) + echo "Unknown option: $arg (use --help)" + exit 1 + ;; + esac +done + +if [[ ! -d "${APP_DIR}" ]]; then + echo "ERROR: ${APP_DIR} not found — nothing to reset." + exit 1 +fi + +cd "${APP_DIR}" + +echo "WARNING: this will PERMANENTLY delete all data on this instance:" +echo " - the MariaDB database (all accounts, feeds, articles, notifiers)" +echo " - the application storage files" +echo "The source code, .env and Docker images are kept." + +if [[ "${ASSUME_YES}" != true ]]; then + read -r -p "Type RESET to confirm: " CONFIRM + if [[ "${CONFIRM}" != "RESET" ]]; then + echo "Cancelled. Nothing was changed." + exit 0 + fi +fi + +echo "==> Stopping the stack" +sudo docker compose down --remove-orphans + +echo "==> Removing data volumes" +sudo docker volume rm \ + "${PROJECT_NAME}_db_data" \ + "${PROJECT_NAME}_app_storage" \ + "${PROJECT_NAME}_scheduler_storage" \ + 2>/dev/null || true + +echo "==> Starting a fresh stack" +sudo docker compose up -d + +echo "==> Waiting for the database to be ready" +for i in $(seq 1 30); do + if sudo docker compose exec -T db healthcheck.sh --connect --innodb_initialized >/dev/null 2>&1; then + echo "==> Database ready" + break + fi + echo "==> Database not ready yet, retrying ($i/30)" + sleep 3 +done + +echo "==> Waiting for the entrypoint migrations to finish" +for i in $(seq 1 30); do + if curl -sf -o /dev/null "http://localhost:7081/up"; then + echo "==> Application up" + break + fi + echo "==> Application not ready yet, retrying ($i/30)" + sleep 3 +done + +echo +echo "==> Reset finished. Visit the instance and create the new owner account." diff --git a/resources/views/notifiers.blade.php b/resources/views/notifiers.blade.php new file mode 100644 index 0000000..1ad0cf4 --- /dev/null +++ b/resources/views/notifiers.blade.php @@ -0,0 +1,142 @@ +@extends('layouts.app', ['title' => __('app.notifiers').' — BloomFeed']) + +@section('content') +