From 5ccbfec92db2a2cbf1785b81fa79201f3acd6c29 Mon Sep 17 00:00:00 2001 From: Tobi G Date: Thu, 3 Sep 2026 15:00:38 +0200 Subject: [PATCH] Fahrt beenden auf Knopfdruck, Schieberegler, Zuendungspause (2026.9.3.5-.7) Vier Themen aus einer Sitzung. 1. Die Fahrt endet wieder bei uns statt im Dongle (Abschnitt BW). Der Ignition-OFF-Timeout des FMM003 (900 s) und sein Schlaf-Timeout (ebenfalls 900 s) starten beide beim Zuendungs-Aus und fallen in derselben Sekunde - am 02.09. zweimal beobachtet, einmal ging das Trip-Ende verloren, einmal kam es eine Sekunde vor dem Schlaf an. Ausloeser ist jetzt die Zuendung, die Wartezeit laeuft in Home Assistant. ZUENDUNG_NACHLAUF_S = 180 wird in beiden Wegen abgezogen (ueber das Trip-Signal 1080 s, weil dessen Ende selbst an der verzoegerten Zuendung haengt). 2. Schieberegler, neu in beiden Codebasen. Schrittweite 5 Minuten; der Daumen war im Tagmodus weiss auf weiss und traegt jetzt einen Ring aus --line-strong - ein Token, das genau dort sichtbar ist, wo es gebraucht wird. 3. Knopf "Fahrt beenden" in der Zuletzt-Kachel (Abschnitt BX). Schliesst auf das letzte Lebenszeichen, nicht auf "jetzt", und kennzeichnet das Ende als vorlaeufig. Ein spaet eintreffendes Zuendungs-Aus zieht es nach - innerhalb von sechs Stunden, nur nach vorn, und nur bei einer vorlaeufigen Fahrt. ts_end wandert bewusst NICHT in edited_fields, sonst blockierte der Schutz fuer Handeingaben genau diese Korrektur. 4. Das OTA-Buendel kann auf dem Mac gar nicht entstehen (Abschnitt BV): npm run ota ist eine Windows-PowerShell-Datei, ios-signieren.sh baut ein frisches dist/ und fasst das Buendel nie an. Ausgeliefert war deshalb eine Oberflaeche ohne den Versionshinweis unter richtiger Nummer. Verifiziert: Backend 27/27 (5 Signalwechsel, 14 Zuendungspause, 8 Fahrtende), companion-app tsc sauber und 179/179, Panel als Modul geparst, audi_ha_test auf 2026.9.3.7 sauber gestartet. Live am laufenden Panel und ohne Rueckstand belegt: Wartezeit samt Abbruch, die 180-s-Rechnung, der Regler im Tagmodus und der Knopf von der laufenden Fahrt bis zum verworfenen Kurzvorgang - Fahrten vorher 16, nachher 16. Co-Authored-By: Claude Opus 5 --- AGENTS.md | 182 +++++++++- companion-app/src/api/index.ts | 9 + companion-app/src/api/types.ts | 3 + companion-app/src/daten/profilAdapter.ts | 11 + companion-app/src/daten/service.test.ts | 1 + companion-app/src/screens/Einstellungen.tsx | 21 +- companion-app/src/screens/Standort.tsx | 6 +- companion-app/src/screens/Uebersicht.tsx | 63 +++- companion-app/src/screens/bausteine.tsx | 18 +- companion-app/src/stile/screens.css | 27 ++ custom_components/audi_dashboard/const.py | 1 + custom_components/audi_dashboard/dienste.py | 3 + .../audi_dashboard/fahrterkennung.py | 322 ++++++++++++++++-- .../audi_dashboard/frontend/app/bundle.json | 2 +- .../audi_dashboard/frontend/app/bundle.zip | Bin 267146 -> 268073 bytes .../frontend/audi-dashboard-app.js | 54 ++- .../frontend/audi-dashboard.css | 69 ++++ .../audi_dashboard/koordinator.py | 4 +- .../audi_dashboard/manifest.json | 2 +- .../audi_dashboard/services.yaml | 3 + .../audi_dashboard/veroeffentlichung.py | 8 + .../src/components/Slider/Slider.css | 99 ++++++ .../src/components/Slider/Slider.tsx | 74 ++++ design-system/src/components/Slider/index.ts | 2 + design-system/src/index.ts | 3 + design-system/src/styles.css | 1 + tests/fahrterkennung/test_fahrtende_knopf.py | 244 +++++++++++++ tests/fahrterkennung/test_signalwechsel.py | 14 + tests/fahrterkennung/test_zuendungspause.py | 249 ++++++++++++++ 29 files changed, 1444 insertions(+), 51 deletions(-) create mode 100644 design-system/src/components/Slider/Slider.css create mode 100644 design-system/src/components/Slider/Slider.tsx create mode 100644 design-system/src/components/Slider/index.ts create mode 100644 tests/fahrterkennung/test_fahrtende_knopf.py create mode 100644 tests/fahrterkennung/test_zuendungspause.py diff --git a/AGENTS.md b/AGENTS.md index de5c7b9..a86eae8 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,6 +1,10 @@ # AGENTS.md — Project state, review findings, open items, and working rules -**Last updated: 2026-09-03** (Das OTA-Buendel kann auf dem Mac gar nicht entstehen - ausgeliefert war eine +**Last updated: 2026-09-03** („Fahrt beenden“ auf Knopfdruck mit vorlaeufigem Ende, Schieberegler in +5-Minuten-Schritten und im Tagmodus sichtbar, `2026.9.3.7`, Abschnitt BX. +Davor: Die Fahrt endet wieder bei uns statt im Dongle - Zuendung als Ausloeser, +eigene Wartezeit, Nachlauf des Geraets abgezogen, Schieberegler, `2026.9.3.5`, Abschnitt BW. +Davor: Das OTA-Buendel kann auf dem Mac gar nicht entstehen - ausgeliefert war eine Oberflaeche ohne den Versionshinweis unter richtiger Nummer, repariert mit `2026.9.3.4`, Abschnitt BV. Davor: Zwei Signalwechsel in derselben Sekunde kosteten eine Fahrt - Sperre plus Regressionstest, Bildformat-Pruefung, `2026.9.3.3`, Abschnitt BU. Davor: Rueckblick loest Orte @@ -8762,3 +8766,179 @@ braucht es nicht: die Zip-Einträge schreibt die PowerShell-Fassung ohnehin von ihrem Kopf), `zlib.deflateRawSync` reicht. Dazu ein Wächter, der in der **Git-Historie** den letzten Commit an `bundle.zip` gegen den letzten an `companion-app/src` und `design-system/src` hält — über Git und nicht über Dateidaten, weil ein frischer Klon alle Zeitstempel plattmacht. + +--- + +## BW. Die Fahrt endet wieder bei uns, nicht im Dongle (2026.9.3.5) + +### Der Befund: zwei Uhren, dieselbe Sekunde + +Der FMM003 beendet den Trip erst nach seinem `Ignition OFF Timeout` (`11804`) von 900 s — und sein +Schlaf-Timeout (`103`) stand auf denselben 900 s. Beide starten beim Zuendungs-Aus. Am 02.09.2026 +ist das zweimal beobachtet worden, mit **entgegengesetztem Ausgang**: + +| | Zuendung aus | Trip-Ende erwartet | tatsaechlich | +|---|---|---|---| +| Fahrt A | 16:54:21 | 17:09:21 | **nichts** — naechster Datensatz erst 18:42:04 | +| Fahrt B | 21:43:15 | 21:58:15 | 21:58:16 (+901,2 s) | + +Ein Wettlauf, gemessen, nicht vermutet. Die Doku entkraeftet dabei die naheliegende Erklaerung: im +Deep Sleep **sendet** das Geraet sehr wohl, High-priority-Datensaetze sogar sofort ("device can save +periodical or eventual records and send data to server based on the selected AVL packet priority"). +Die Prioritaet regelt die Zustellung, nicht die Entstehung — und im Deep Sleep sind `Speed`, +`Trip Odometer` und `Total Odometer` aus den Datensaetzen ausgeschlossen, also genau die Groessen, aus +denen das Trip-Szenario lebt. + +Der Zielkonflikt ist unaufloesbar, solange das Geraet die Uhr fuehrt: der Eigentuemer will, dass der +Dongle frueh einschlaeft (Strom), und dass das Ende ankommt. Beides zugleich geht nicht. + +### Die Loesung: die Wartezeit laeuft, wo nichts schlaeft + +Ausloeser ist jetzt die **Zuendung** (`50000:2` High, `50001:5` On Change seit 01.09.2026 — sie wird +im Moment des Wechsels gesendet), die Wartezeit laeuft in Home Assistant. Der Dongle darf danach +frueher schlafen als vorher, nicht spaeter. + +**`ZUENDUNG_NACHLAUF_S = 180`** (Geraeteparameter `400`, "Ignition OFF Delay"). Abgezogen wird in +**beiden** Wegen: ueber die Zuendung 180 s, ueber das Trip-Signal 1080 s — denn das Trip-Ende haengt +selbst an der bereits verzoegerten Zuendung (Fahrt B oben belegt es auf die Sekunde). Der Wert stand +bis 31.08. auf 0 und seit **01.09. 09:38** auf 180; **Fahrten aus dieser Zeit enden 180 s zu spaet**, +korrigiert wird ab jetzt. `_nachlauf_gegenpruefen()` musste mit — ohne Anpassung haette sie ab sofort +bei jeder Fahrt 180 s Abweichung gemeldet. + +**Die Wartezeit laeuft ausserhalb der Fahrtsperre.** Haette die Hintergrundaufgabe die Sperre, stuende +ein zurueckkehrendes "on" eine Viertelstunde davor, statt die Fahrt fortzusetzen — das Gegenteil des +Zwecks. Das Schliessen selbst ist mit `asyncio.shield()` gegen den Abbruch abgeschirmt: ein Wechsel +genau im Schreibmoment duerfte keine halbe Zeile in `fahrten.jsonl` hinterlassen. + +**Die Wartezeit entscheidet nur, OB geschlossen wird, nicht WANN die Fahrt endete.** Das Ende steht +beim Zuendungs-Aus fest. + +**Keine doppelte Wartezeit:** `_pausenzeit_s()` liefert 0, solange `TRIP_SENSOR` zugeordnet ist — +dann wartet das Geraet bereits. Genau daran war die Pausenregel am 31.08.2026 entfallen. + +**Spaetes Aus** wird ueber die **Geraetezeit** entschieden, nicht ueber die Reihenfolge des +Eintreffens: faellt es in die schon geschlossene Fahrt, wird es verworfen und protokolliert; passt es +zu keiner, gibt es eine Warnung — dann ist ein Fahrtbeginn entgangen. + +### Was die Daten ueber die Drehzahlquelle sagen + +Aus 21 Geraetekonfigurationen rekonstruiert: `101` ist eine Bitmaske (2 = ACC, 4 = Power Voltage, +8 = RPM). Aussetzer der Zuendung gibt es — aber sie sind **kurz (1–2 s) und liegen am Fahrtanfang**, +in den ersten 25 Sekunden; fuer einen Ausfall ueber Minuten waehrend der Fahrt gibt es keinen Beleg. +Die Stichprobe der aktuellen Konfiguration ist zwei Fahrten gross, das gehoert dazugesagt. Dazu +kommt **Start-Stopp**: der RS4 stellt an der Ampel den Motor ab, aus einer Drehzahlquelle ist das +nicht vom Abstellen zu unterscheiden. Die abbrechbare Wartezeit verschluckt beides — ein Argument +fuer einen grosszuegigen Standardwert, nicht gegen den Ansatz. + +### Der Schieberegler + +`Slider` / `.ads-schieber` im Design-System, `.schieber` im Panel — es gab bisher **nirgends** einen. +Ein echtes `input[type=range]` (Tastatur und Vorlesefunktion ohne Zutun), selbst gemalt, weil er +sonst im Panel wie Chrome und in der App wie WebKit aussaehe. Der gefuellte Teil kommt aus +`--fuell` / `--ads-fuell`, weil ein Range-Feld seinen Wert nicht ans Stylesheet weitergibt und +`accent-color` entfaellt, sobald man die Spur selbst gestaltet. Farben wie beim Balken: `--fg` auf +`--ios-fill` — Markenrot bleibt den Stellen vorbehalten, die Aufmerksamkeit verlangen. + +Im Panel zieht der `input`-Zweig nur Fuellung und Anzeige nach und ruft **kein** `render()`; +gespeichert wird im `change`-Zweig beim Loslassen. Ein Re-Render mitten in der Geste erzeugt den +Regler neu und der Daumen springt aus der Hand — dieselbe Trennung wie beim Suchfeld im Setup. + +Erklaerender Text als **Fusszeile der Gruppe**, nicht als Info-Knopf: das ist Apples eigenes Muster +fuer Einstellungen. + +### Verifiziert + +Backend **19/19** (5 alte, 14 neue in `tests/fahrterkennung/test_zuendungspause.py`), companion-app +`tsc` sauber und **179/179**, Panel als Modul geparst, `audi_ha_test` auf `2026.9.3.5` sauber +gestartet. Live im Panel gemessen: Regler 28 px hoch, Fuellung 25 % bei 15 von 60, Ziehen aktualisiert +Anzeige und Fuellung **ohne** dass das Element ersetzt wird (`isConnected` bleibt true), Loslassen +schreibt — `fahrten_pausenzeit_min = 25` stand danach in `fahrzeugprofil.json`. + +**Ehrliche Luecke:** die Kette "Zuendung aus → Wartezeit → Fahrt geschlossen" ist durch die +Regressionstests belegt, nicht durch eine echte Fahrt im Container. Alle drei Koordinator-Eigenschaften, +die sie anfasst (`warte_ende_ab`, `ablage`, `zuordnung`), werden in demselben Modul bereits am echten +Objekt benutzt. + +--- + +## BX. „Fahrt beenden" auf Knopfdruck, mit vorläufigem Ende (2026.9.3.6/.7) + +### Wofür der Knopf da ist + +Wunsch des Eigentümers: das Fahrzeug steht in einer Tiefgarage ohne Empfang, das Gerät kann sein +Zündungs-Aus nicht melden, und die Fahrt bliebe offen, bis irgendwann gepufferte Datensätze +eintreffen. Der Knopf schliesst sie sofort. + +**Geschlossen wird auf das letzte Lebenszeichen, nicht auf „jetzt".** Das Fahrzeug stand still, als +es still stand, nicht als jemand gedrückt hat — und im Anwendungsfall liegen die beiden weit +auseinander. `_letztes_lebenszeichen()` gab es dafür schon (`nach_neustart_fortsetzen`). + +**Genau deshalb ist dieses Ende vorläufig.** Der Eigentümer hat den wunden Punkt selbst benannt: +fährt das Fahrzeug nach dem Knopfdruck noch aus der Garage heraus, kommt der Rest gepuffert nach, +und dann gehört das Ende **nachgezogen** statt verworfen. Neues Feld `ende_vorlaeufig` an der Fahrt; +`_vorlaeufiges_ende_korrigieren()` zieht `ts_end` und `duration_s` nach und stösst das Screening neu +an. + +Drei Bedingungen dafür, jede aus einem eigenen Grund: nur eine als vorläufig gekennzeichnete Fahrt +(eine regulär geschlossene ist bereits richtig), nur ein **späteres** Ende (früher wäre kein +Nachtrag, sondern eine Verkürzung), und nur innerhalb von `KORREKTUR_FENSTER_S = 6 h` — jenseits +davon gehört das Aus wahrscheinlich zu einer ganz anderen Fahrt. + +**Die Falle, die dabei fast zugeschnappt wäre:** `ts_end` darf **nicht** in `edited_fields` landen. +Der Schutz für Handeingaben würde sonst genau die Korrektur blockieren, für die das Feld gebaut ist. +Ein Test hält das fest. + +### „vorläufig" hängt am Wert, nicht an der Fahrt + +Entscheidung des Eigentümers zwischen zwei gerenderten Mustern: die Strecke steht mit Tilde da +(`~ 14,2 km`), darunter `vorläufig` — und der **Verbrauch erscheint gar nicht**, bis er feststeht. +Die Alternative (beide Werte mit Tilde, „vorläufig" links an der Fahrt) ist verworfen. + +Solange die Fahrt **läuft**, steht rechts **nichts** — keine Strecke, kein Verbrauch, auch kein +Strich. Ein Strich behauptet „hier fehlt ein Wert"; richtig ist „hier gibt es ihn noch nicht". +Dafür hat `Blattzeile` in der App ein optionales `aktion` bekommen und `wert` ist optional geworden. + +### Woran die Oberflächen erkennen, dass eine Fahrt läuft + +Neues Feld `faehrt_seit` im Fahrzeugstatus — der eigene Zwischenstand der Fahrterkennung +(`fahrt_start_ts`), nicht der Rohwert einer Entität. Die Zündung allein taugt nicht: beim +Trip-Signal steht sie nach dem Abstellen noch 900 s auf „an", und bei laufendem Motor im Stand +ebenfalls. + +### Der Knopf + +`.zeilenknopf` / `.dm-zeilenknopf`, Pillenform im Umriss — vom Eigentümer aus zwei gerenderten +Fassungen gewählt. 36 px sichtbar, 44 px Trefferhöhe über ein Pseudoelement, damit die Zeile nicht +höher wird als ihre Nachbarin. Der Dienst `fahrt_jetzt_beenden` läuft in der App **nicht** über die +Warteschlange: im Funkloch abgesetzt und Stunden später nachgeholt schlösse er eine Fahrt, die +längst regulär zu Ende ist — dieselbe Begründung wie bei `historieImportieren()`. + +### Verifiziert + +Backend **27/27** (5 Signalwechsel, 14 Zündungspause, 8 neu in +`tests/fahrterkennung/test_fahrtende_knopf.py`), companion-app `tsc` sauber und **179/179**, Panel +als Modul geparst, `audi_ha_test` auf `2026.9.3.7` sauber gestartet. + +**Live am laufenden Panel, ohne Rückstand:** Meldezeit frisch gesetzt, Zündung an → Zeile zeigt +„Aktuelle Fahrt / läuft", Knopf 36 px in einer 66 px hohen Zeile, **keine Wertespalte und kein +Chevron**. Knopf gedrückt → `Fahrt seit … von Hand beendet, vorlaeufiges Ende …`, danach +`Zündung war nur 0 s an - keine Fahrt angelegt (Grenze 60 s)`. Fahrten vorher 16, nachher 16. Der +Trick für die Rückstandsfreiheit ist derselbe wie bei der Wartezeit: liegt der Beginn nahe am +letzten Lebenszeichen, verwirft `MINDESTDAUER_S` den Vorgang. + +Beim anschliessenden Zurücksetzen der Zündung hat auch der zweite Zweig gefeuert und richtig +gemeldet: `Zuendungs-Aus … ohne laufende Fahrt, und es gehoert zu keiner geschlossenen — ein +Fahrtbeginn ist uns entgangen`. Korrekt, denn die Testfahrt war ja verworfen worden. + +**Ehrliche Lücke:** die Korrektur eines vorläufigen Endes durch ein spät eintreffendes Zündungs-Aus +ist durch 8 Regressionstests belegt, nicht durch eine echte Tiefgaragenfahrt. + +### Der Regler, im selben Zug + +Schrittweite von 1 auf **5 Minuten** — Apples eigene Seite mahnt für weite Wertebereiche einen +Weg zur genauen Eingabe an, und bei 0–60 in Einerschritten sind das 3,8 px je Minute. 13 Rastpunkte +treffen sich bequem, und minutengenau ist hier ohnehin Scheingenauigkeit. + +Der Daumen war im **Tagmodus** kaum zu sehen: weiss auf weisser Kachel, nur ein Schatten. Er hat +jetzt `border: 1px solid var(--line-strong)` — ein Token, zwei Themen: im Tagmodus zeichnet es ihn +ab, im Nachtmodus ist es auf Weiss unsichtbar, wo es nicht gebraucht wird. diff --git a/companion-app/src/api/index.ts b/companion-app/src/api/index.ts index 9354c14..b094adb 100644 --- a/companion-app/src/api/index.ts +++ b/companion-app/src/api/index.ts @@ -332,6 +332,15 @@ export class DataMetricApi { /** Startet den Import. Kehrt zurück, sobald das Backend den Auftrag angenommen hat — nicht, wenn er fertig ist; dafür importStatusLesen(). */ + /** Beendet die laufende Fahrt sofort, mit vorlaeufigem Ende. + + Wie historieImportieren() bewusst NICHT ueber die Warteschlange: im + Funkloch abgesetzt und Stunden spaeter nachgeholt wuerde sie eine Fahrt + schliessen, die laengst regulaer zu Ende ist. */ + fahrtJetztBeenden(): Promise { + return this.rest.dienstAufrufen(DIENST_DOMAIN, "fahrt_jetzt_beenden", {}); + } + historieImportieren(start: string, ende: string): Promise { return this.rest.dienstAufrufen(DIENST_DOMAIN, "historie_importieren", { start, diff --git a/companion-app/src/api/types.ts b/companion-app/src/api/types.ts index 8ae3cc9..222868c 100644 --- a/companion-app/src/api/types.ts +++ b/companion-app/src/api/types.ts @@ -68,6 +68,9 @@ export interface Fahrt { * vom Fahrzeug selbst für diese eine Fahrt gemeldeter Wert - siehe * verbrauch_aus_literstaenden() im Backend. */ verbrauch_l_100km?: number | null; + /** Das Ende steht nur vorlaeufig fest (Knopf "Fahrt beenden", das Geraet + hat sein Zuendungs-Aus noch nicht gemeldet). */ + ende_vorlaeufig?: boolean; pausen?: unknown[]; } diff --git a/companion-app/src/daten/profilAdapter.ts b/companion-app/src/daten/profilAdapter.ts index 3f94bdd..b9897da 100644 --- a/companion-app/src/daten/profilAdapter.ts +++ b/companion-app/src/daten/profilAdapter.ts @@ -23,6 +23,9 @@ export interface Einstellungen { backupIntervall: string letztesBackup: string | null ausfuehrung: string + /** Minuten nach dem Zuendungs-Aus, bis die Fahrt automatisch endet. + 0 heisst: sofort. Siehe fahrterkennung._pausenzeit_s im Backend. */ + pausenzeitMin: number } export interface Reifensatz { @@ -69,6 +72,8 @@ export interface Fahrzeug { zugeordnet", also unbekannt — nicht „steht". */ zuendung: boolean | null geparktSeit: string | null + /** Beginn der laufenden Fahrt, sonst null - siehe faehrt_seit im Backend. */ + faehrtSeit: string | null standortLat: number | null standortLon: number | null standortZeit: string | null @@ -142,6 +147,10 @@ export function profilZuEinstellungen(profil: Profil): Einstellungen { backupIntervall: text(einst, "backup_intervall", "aus"), letztesBackup: text(einst, "letztes_backup") || null, ausfuehrung: text(fahrzeug, "ausfuehrung"), + // Der Wert hat die Zeit ueberlebt, in der die Einstellung nicht angeboten + // wurde (31.08. bis 03.09.2026) - deshalb steht er in vielen Profilen + // schon, und der Standard greift nur bei neuen. + pausenzeitMin: zahl(einst, "fahrten_pausenzeit_min") ?? 15, } } @@ -173,6 +182,7 @@ export function profilZuFahrzeug(profil: Profil, status: Fahrzeugstatus): Fahrze sicherheitscheck: status.sicherheitscheck ?? [], zuendung: status.zuendung ?? null, geparktSeit: (status.geparkt_seit as string | null) ?? null, + faehrtSeit: (status.faehrt_seit as string | null) ?? null, standortLat: status.standort_lat ?? null, standortLon: status.standort_lon ?? null, standortZeit: status.standort_zeit ?? null, @@ -240,6 +250,7 @@ export function zusammenfuehren( e["backup_intervall"] = einstellungen.backupIntervall e["nacht_von"] = einstellungen.nachtVon e["nacht_bis"] = einstellungen.nachtBis + e["fahrten_pausenzeit_min"] = einstellungen.pausenzeitMin e["smartdeal"] = { aktiv: fahrzeug.smartdeal.aktiv, laeuft_ab: fahrzeug.smartdeal.laeuftAb } e["oelwechsel_intervall"] = { modus: fahrzeug.oel.modus, diff --git a/companion-app/src/daten/service.test.ts b/companion-app/src/daten/service.test.ts index 194d209..25ccc6b 100644 --- a/companion-app/src/daten/service.test.ts +++ b/companion-app/src/daten/service.test.ts @@ -28,6 +28,7 @@ function fahrzeug(odo: number, modus = "hersteller"): Fahrzeug { sicherheitscheck: [], zuendung: null, geparktSeit: null, + faehrtSeit: null, standortLat: null, standortLon: null, standortZeit: null, diff --git a/companion-app/src/screens/Einstellungen.tsx b/companion-app/src/screens/Einstellungen.tsx index 7653263..4e7741d 100644 --- a/companion-app/src/screens/Einstellungen.tsx +++ b/companion-app/src/screens/Einstellungen.tsx @@ -6,7 +6,7 @@ import { useEffect, useRef, useState } from "react" -import { ActionButton, Feld, Seg, Sheet, Switch, Tile } from "@audi-dash/ui" +import { ActionButton, Feld, Seg, Sheet, Slider, Switch, Tile } from "@audi-dash/ui" import { ApiFehler, DIENST_DOMAIN, zugangLesen, zugangVerwerfen } from "../api" import type { Profil } from "../api" @@ -348,6 +348,25 @@ export function Einstellungen({ + + Fahrt beenden + aendern({ pausenzeitMin: min })} + anzeige={werte.pausenzeitMin === 0 ? "sofort" : werte.pausenzeitMin + " Min."} + aria-label="Minuten bis zum automatischen Fahrtende" + /> + {/* Fusszeile statt Info-Knopf: Apples eigenes Muster fuer erklaerenden + Text unter einer Einstellung ist der Footer der Gruppe. */} + + Hier können Sie einstellen, wie viele Minuten nach Ausschalten der Zündung die + Fahrt automatisch beendet werden soll. + + + Darstellung > = { export function Uebersicht({ geheZu }: { geheZu: (name: SeitenName, id?: string) => void }) { - const { fahrzeug, einstellungen, fahrten, tankvorgaenge } = useDaten() + const { fahrzeug, einstellungen, fahrten, tankvorgaenge, api, neuLaden } = useDaten() + const [beendenLaeuft, setzeBeendenLaeuft] = useState(false) if (!fahrzeug || !einstellungen) return null + const fahrtBeenden = async () => { + setzeBeendenLaeuft(true) + try { + await api.fahrtJetztBeenden() + await neuLaden() + } finally { + setzeBeendenLaeuft(false) + } + } + const winterraeder = fahrzeug.reifen.aktiv === "Winter" /* Der gespeicherte Wert ist der NAME der Ansicht, nicht der Dateiname - siehe die Begruendung in Einstellungen.tsx. Der Vergleich gegen datei @@ -233,22 +246,50 @@ export function Uebersicht({ geheZu }: { geheZu: (name: SeitenName, id?: string) Tankvorgang". Fehlen beide Datensätze, lässt das Panel die Kachel ganz weg; die Leerzustände hier bleiben als eigene Konvention der App erhalten (siehe Kapitel 1 des Paritätsaudits). */} - {letzteFahrt || letzteTankung ? ( + {fahrzeug.faehrtSeit || letzteFahrt || letzteTankung ? ( Zuletzt - {letzteFahrt && ( + {fahrzeug.faehrtSeit ? ( + /* Waehrend der Fahrt gibt es weder Strecke noch Verbrauch - also + steht rechts nichts, auch kein Strich. Ein Strich behauptete, + ein Wert fehle; richtig ist, dass es ihn noch nicht gibt. */ läuft} + aktion={ + } - beiKlick={() => geheZu("trip", letzteFahrt.trip_id)} letzte={!letzteTankung} /> + ) : ( + letzteFahrt && ( + vorläufig + ) : letzteFahrt.verbrauch_l_100km != null ? ( + `${de(letzteFahrt.verbrauch_l_100km, 1)} l/100 km` + ) : ( + "—" + ) + } + beiKlick={() => geheZu("trip", letzteFahrt.trip_id)} + letzte={!letzteTankung} + /> + ) )} {letzteTankung && ( , wie im Panel. */ beiKlick?: () => void /** Unterste Zeile einer Kachel — dort entfällt die Trennlinie. */ @@ -219,10 +224,13 @@ export function Blattzeile({ {label} {labelZusatz !== undefined && {labelZusatz}} - - {wert} - {wertZusatz !== undefined && {wertZusatz}} - + {wert !== undefined && ( + + {wert} + {wertZusatz !== undefined && {wertZusatz}} + + )} + {aktion} {beiKlick && ( q# zen=E)Mad^fh8y|`9kGAA!?0j=AL4)iD_B45bt*M8;6*u<%gPcw)DQ7q79p4nK?)@< z4`2NNU#0+h!-P;UKnD)Sd}J3!G`lAZBt_{xgQn@Vorr{=+&!oZ)0Hy!puM|0g46&S zXjmAOhz`h?8{|U`V%0xCok>CUoobJ4BArOF&h9@SB-uG6FU@~P=E8hXpuadnc#rf( z{lR3wU=sdQ7CgD9I>JK*wBw!aka}`R_vFdEc+>ajNc1E%|`0$nlqmMgw5TA z`rbV=m(O#2ET5k!!t0Bq2?-+gV5Ev}s~hWkYzcX@36a3u&8T~kk~_DO#R?j<+t7l$ zG{ZTRF6R)98}EN_P&-O1sgw|tZu6EV7Pe{P0ui2EgS_V_xLoAIy$GQF891LehP{=d zG%VxNForCc2wj+X+pR#<`)_Yu#PF53a1p}-HRg~-2iRRd+9X>r5-Hf(_>GY%EY)*- zmS@EA-b4So>(frA%Ad0go0%1SMF#vR8bF$K6<4NU!CZf6(oeR){CSs{DYo$wk_D%k zn@UpdF(AfFD1A8aCqK`}(ur?vdhYJ&8eKU{>bKfP#9~3*dxaX3KqtaXLOhCKn+Gp> z7n#;Bl1ME!BW+AZ)97_|Pxy`Ac*<3dA?~TjVPucNL4JHhjO|KO#0YwN2`7X56p68h zZc7Z0Js1z(FYIn_fDF?AV9nfo^L&>{904$YGo^*F4Ghb&86r$kNsAn+r^E=fWfc3B zla)B-Tyqs|LWs+Jiy=e=Z^O$=IR)Li37FO^dLIovr?Jzks#)@xvH@?}a5pA{MJgU5 zRWPnaL-aS}b7$cT)e4a%e8^^>3<&|~xj7Jf8;xrvtB{xcZ8BKIX<+t_IJ-fIbLts? zA|p5Fc=>BP~bfr1Vbf?Aq4^{E&*C&Kq=T(m!7`o zH#HyLO!9atW;ZEoxU0|44Ui2aJgIR&kTZ@YJzT@pNd+OP1d{^=R(l8Jy_l8lxhM`E3aVyxgt?f(+7pG8x z%}22-NSJ@=j)9Ge1+YLIKjsZ{NlhJNAt0Bl2A~K41bVM?T?yFoCFJ zicS10su;Q>?lLO)_hGr}Dip5}@)7g*z9p!ejQ~zj<=$aujJ-UUoHyY*enw~rZ-PiG zA4$m`QxN5ccNgnIvEU9rEIIfc*$bOXq!WdwaAQjW>~mQHb39)G=Iq*9SSqgR+~ZF|gr5gGd9&;=lrC<+|dm6eFhP;6c5;>4D|Wirtn0>K~w z*3MU3!9y%8IXlNW)FX$_w^y7TU?5Hq4i-)lb{W*TyBS-^$* zfc?FCQDz)dn5EqF5P<0_j&HnTl6JKuZL8e}@8H^Fd_pLNOCYL3qWW)_?;Zgfe{v!t zIxQk?yQ2Y#02Z2VdMQu3@RH4eBPKG$&rg6tdn49mi}$b3^3Vqh&Zih5ptKdf9~}S- z6-8xOFmyvYbg~X0TFA?r`11nEdK4&2_iryV_*Z;E@D(w<(UXthfSn^Hl{yP6aB7KB zq@a}|5RFJlLlROaDDxZj?_&!iElVlU6(%+D*!47C*WPqQ21Z~&!N-7tFOx-VSpS)f zA0sA`$(mwh`xtE^gO8WB9|1srPcw47O3fteAW78gUTB06dcBbbRp*Ym0H+8?nBXKS zcvg?_E#Cyxo(CFDgy190CzUZbH-aME>}L`30tiDGo0^~M8GyQ;3Cac>za)XduNA-1 zw(XeaVOl{^2Jrs0v;^94_rWoIj|uGVZ*6mj!GiR#>UYo}?7>C06uqc_{eqvwOgcyg z(hz(@j|e9y3?Y)+Bvm9^HIeW{Zlw^$UX@-*Su5vs0BGb!k!j~V`5o*rMS$0o#a|GG zu~Bi1098$AX)D1tKR;DrOL)0tW29?$#W>8Kb4P#k%<>8GXA#?sE|A9={ zAt7unz5tPPIf)v=vFlg0&^0bJg(dc5y9 z;Ig^e0^NM{g+oO8_PUIqwY-^6K$p~qJQ|(qw+IVf$R9@{Qh~aFuGb9>2F8A4_;N+%MQc;`H7a1w%^&i@Kj!*h}5PX?(W{B zN6zWzaD1^ulFUYYi5-L|z9atp)2<_=%`kdTJIP{GcncqYG)E+K0${y_ws+rh5ek~} z6XFJnmdJ&_?o3Mxa@=q=LD=!=8#Da%_{YgO;kw1#Y(ew^ioabs1bITV!nE%eLkU)2 z{33K^H#fxH(S03+nK@snvUS1r?RO@X4<;2~%E0w1q|%S)t#8mCQn2}w#URG8aj6Pb zi|$oGK5!v_r1Zq<7_|=0H+bda9D;SrlEi6m$t!Lz2sq(hA->mhfQtM-;VK*ReKT>X`tQRDjsV zk-qDm5mzn4RGTRjfoyYQAV5QI{4qX7ILiHpYRxcz-f5e=FjS6c5Jk~IU?2+5fT%{b z(}as6UX@}Bk>Sig>eJ_#CW*`J{oCv!SwVfg|AyiMjuiQ&c?ygo0GAUa0WE(hewd2W zv_E^!w|`JKmZAIlbG};oS@_(%x;{jczSw$4=gFC|5h zbyGGe5&3vS`yfz;WpMl64e)Z7 zG6&;D7=gcB0}ONCx-ue=DvY>&%uvfj5GkhA9*Zf=d+ar$8|v>J(Q!MU({GIdi91k( zO@+fp;f%4*fWZ`O-TKXFY!?}$jXG|8*QLPlfpA$39qq@_xZh0by=s3b`uVz>fDOpooCZLXCU-Cn~yE=4=VQsevR9tV+FxDc?n=%P(sR#nV3mbiM=yS5vn zjeamM9yi0$5AksF3=DsWs2D|rq(i6@4~1(H>9E-Kcyu@yzd`LTb9k=D^>s=0cO0=D z*Fxl@FncBm{p$Tf3g zkSmxllokXU%jx2CUQK zJ6v4IACe{Q*+G9MgP>VQBt>cW-Jsx@oO@I*`%**bV4@!`-h3}KOQU&47qRl_H|aH> zNGBY3j4c?N3{8y`eEv^d-@>Tj_4AL%G)DNl8yx^*LR)Fu$J2{nG>~~@HSeYfr75eu zN%&5*W5G9o__bqwCUfLm)1&Mc!9c>h2Y<#>B?!iRCGUS{R!q!3jpHKgVNRpLJ4(E! zAMdYANSWovX8V%^Fkrqp1y16@L3KjKccWG>Uw|Q&zvT(0ihv7py{aL~#QVTSqZqJ2@g$q3m(WVpioJ4wVK=q}lFRHFj+gxrPxr+XlJ>vIfe*yLP{Yh|=iH0pFG_Y74 zm)+wcj7mr;adRrFE9rH8eoQ}x=>O%YyjwIX7ei7bISi>mpBIRqGYu)2#Cj{x(iZ-P zGK6e9o)gGZi%0#NGxW<!%NP#4C>Moq8)ah!;fvNxQ%q6w z_*~HI2hL)CT`y-Y8yFo^knfEP*2Q*>D3~kh21O(uNQ5#q;RyyQDuNpYk{oU*MKC9v z{%>(9!z+cn(CASop;~}l6bxIMN!~?Mk^Skub_`yKf51f7*a+)3c-- z8{&2;L>U|RMd? zcr8L$G*5C&ICU;+bKJdYTN}xeF#3Idg{aHbt2(4)3Gh~OSz}|sw80x-x6R>dgp{DN zOI7Mx5S!+=--yV)B(VF;`Ec*_(?*s178w~4e;Eh%Bk{;+ZGcN0FV ze;t&?0DJ%8Ea%xJ&l>09%UjdN2-`UKp{Ju(aXsZ>7<$8T6pwHKo^LXasWYv?Xv9bF z(-F`8ajO_yydO-c%>Lf{cV4|d#<64A?NPlxY>fT6-%3R<8fsMRRyP)`v{_!B6&dI7 zIrqD2-fIIGi=6sVcsuWkiK?BqqNLy#e_2#q*Xz)I9SW@!pPfUO&Uu#c>|+{7Ly^~w z3afdr)G$l){6iL9LbrB6FD0W=f?!Hk#{Mz!klPbvkeHsfHE!4p-V;H90s_-E&?H$B=CdV`3wJe?Ipc ze)n>a)!q%lTYg2*7u?S0>@tVhWZx^XKRC|uqksJ4KWhJ|{U^)@PjX)S%m>2)V>0|` zO*2?u>Q`$LC9NMhBw^}SI=zOjkBeGk=+|}zLw=T~KUr-r8MbPJWK@fayf!#LkKzdS zP2Q5lj>b`5%hNI&^4bu9s|G>YfAXkSCL^BJiZQPp>>a7-+Id=HbqOY575jTz+wTvz zYfv?p(X}j1VOFAyw#+pGaA7rskcJ(2gmZH>GVr$BZqQ6$jpRJne(>(qDD2QI=HcP> ztC5qaXldUYDw~hPf|#_T#^(I zZmuEehf0bHo(*7~%sN~*`u?q4fj;b{q>SUcJH%43lKmCfKW9H+X}umM1dV?9qh9Zy z{5ZY4>z{c4`Jbvn@06)Bf3O=>?Ov}RU^#z|i@F`&M)?7NRKZ7qh44k|E1fyx2_WE- z@1y`a$I}r&uboe)f9BH|p#HG9FT)`(78B>}Ec`%&X$|r`x=7f2+=O~2UN!n`i+%HN z5q@z=r+L_C6p#xTZiyhQR35$;-z9Z33%}jnZO>m}u_DEpXhk_~f9I`qGEEbJJwyX` zdM^7I>OMmAv?UfNzh1ZE^yI=qtk8P-#W+i6we2j!l~)xvTCJ8J)QZ7R4(K4MiMnuu z=9pZAC5Z-SF(ejgO$?)!X0<_0&&X^X4aYUHJP%jV^8Btn9j(ejG%%6j{Oay`zB?c1 zX3?!Fk*iUu)&dY!f3s(mhpNr8zQMJBV;TyrMoq4r|M}u0h<^xotd@{8c+>sRqLU*l z5kZDK?5y#@9=Ojw0IYm0GhTrgIC8Mc*Ws%y8(c#k`eh##5SytR5AqMQ%9 z9NrE~IA@cBHs73m3U7b%Ydrg*^Z3*6=R8(lgs71kFthQ8f0_-##hgv?xMDv!K^uE7 zev$Ipk^qP(C#NG}3nyqL3@_7YRBHnr0J$m7XIm}kg`ETydfpmEL#qF=H5>rRwZ(Go z*Xt{vD&uNUbYsd-a()_a;a_p&_IWtSE{N30TQN^Aig9xtd)G&*spG>85dj1<5`OFQ z7(062=)CB2f1ijntYeFdX@)XB<3-r+@&Yoz-?cS=i=Xh~)HDL2we{1kUGEm3V}r0I zTO)oxDB}XVom&$FopI9`G$jXP&54ZZb1^=#`EFNN1p)|iLbE}i;e!6;w4m={fw010 z%2_|1B|Hm0w#h+LMEk=0jgIf2(rOet4I%lc1SK78&7;Q zkS}8Ue=yoPVn_h$s*NtfJrcV>a-ByBA9;6oA_mB~m=6*U!Mrav76CYHp_L8+v^=1F zjA;u{&Sw#lqCcUb;Q(laoI2zM6iCX+8IUD`$bSYz!Ot!w$N(`w&c9Ixvb0$eQA;hS z^0i2moFj0*=ZaE;xIW^9DaT0G4|D3i*YjH5+7(8!wtpYM=wAak`@P0DNMrJ>f}wp2 z%>t&Jd8_qDp1%@z>?*p9cx}b`wL<@j!vGljK#tQ6ASfIPR z_q<+zPv6i#5!v&+0GCjN{ChgG*7p%#P0M_Y_4|ybAI1&r6Ss#8qg(?3g^@xDg-l?p zx4V7*qJJ;35qtv{0UR9mPx}0{D-jM9g~@_V42Yonp09;pFo2`qBEXp|R0VmFOj8sV z1T89nTI~Y@64(>6QS&PZW&KtHCs)JwTO&AAx;{kx6aXrr zM$#Kwp#*+tQ_>#dXaZUx@msaM^V)S<)+Vrz3M6a*2_k1R z0G204wjTE<%%MWutOh(Mk~Rax{(z_Rf)7SW&S+RS`+CCFxhVD`ZAC>p3%-SiC#SeI z+JCA%;sV$S0M9l^<8D=WO03&Az`Rfp)?w~L0n_ML#ERHntB*uinZtxNI|@-kY{qjq zQo38=Rs&%cc(SBn<3p!p8|ZeoBE&U1ro(iF;Wr@A{?&Tc-FkfHW_I$nt-M?QyfV~| zo?w+p9im+Ug*u*4{WY%=Kda$wkqweO!hdndxV`XJ5L+VWn<$?S01d*)cFmcc@*1PJ z(&Rk42v(hx58|A)h^Friq#i9o95NFPj*K>L1}T-|#8DgOzIIjuEanK6)BphAT(iWj zEk$A6P6pFp!WnG$?ZI#y*lYuWBmt+z?`*XO(`kGy=wnT~z?$N^4v`BBY%*JblYa)= zh1%BEU=_FKtVoGYa>_0(V-DA?xqo+eayn;e61xRqtyhR}a5)$;4Qk{qELP)JQ`o&Q zceJO6Ji3H!Tgw6c#8PlllL7*yy zp~d@Lcdgf_ECFQ^MCI0fT*sE+I`VtC4rubWuec2ebQRU0xQ;E!b@Z2W9d^BaKL0f} zKNVcUPsJtVnoEGQjdq3*uzzn!K6lB^?uVvB-3Ue zrF4vtFN0=s7?2G0<cJ*evF`9(c_?xSya7Y-x`zJQGb}I zodF3d!$suxN9!y~Mh(#kjXk!6$i9!rPgnAppNAH9l#AdTJd|6?_J5r0{Y4h+f(bGu zkfEIgg0)kt4fCf!C(Z%sdvlJy!5quSmpxCe?e5%%X zrMS%@AVZ+(f-Sv0ggkIdR0WM?#gRT`m(1;I%N)X8JAfj%BD=orH-LeP64iy2}L{4XLd!t1dt(4juHB9!&6lJ+^u)ZB6qnIxoL(6NZ zl#-csrEo-MSjq2?q*BBg(*6Jrtm60UvhzC?9oz@}l?pJQQ-AO?2eJ+6gx{GQnYl72 z%dx>i(Q^w9s*>V+3JF=ORqQ$$ZeJBVgMD=fSnoI2bfH*f0LymzJyn^k63{MrmSaJ$ z^Q^Ve>Ua<*2zTplXq;NrjqdIm*CXIez7JaR3N6ITBj1XcKYWwc{E=TZGdPT*3IE@B zt2VP{?vuP#n}6wBwadIaGq-9uvrDhf%;nlI@6UcEem)QLe}NuuEihMX^moP9 zvMX`sT(Tc1w7wQH>un*jzOsqUYos-=fV8brp_DKcMCi0i%5H}gCFwR|<@})_GpFnl zsmxK8%EZ{lkCV&Oa0-8XBoZ&`^@~MGv8XO|Q`pp}vVT?|th%a4b|jAM3nKllY38;i z;rBz)edk6xtf9o_hadzyCLGI;oW5w6{56}kH1_h#qi%aWWYT31iL1FOWohke1+kWjhCt*d}RV^w!iwTdDmK{BqMv`=k?i&a8cc0Pr=Xvbo= z_ChSga17IQ+Mo^e9rh%Q4HLreawK91ZS1_Pj(>d%w{Se&{)=y2b)6Ni|D(}g>-az$ z17W|47cI!u=6tP#{ORh+PcBCO@*D-q-+lilf3a1sWB5IZMSBgJ3l;BS?=% zbANNa45$g_Y%)lOJY2kJwo+S3I&%ch)b=Q}vUGDppJVPts$hh*00}@cZK_}#zJXoF zF2b=$`gI*LWAkE8m}H8g)+_vT2|M72!1LGP2H^UY4m-m?@A1zob@P(*;s_`JAP5~5 z1rsg!&o?UnFy@17SqVEql-aS`*qcoF2!Aoi3$LWwbp++@%ACpIGP*$33Cvcn>tIVF zvM9N*j-6%6z$We`)3W#oyyM@_EqUD~87-x-54bzk&e{tHjVr&qC$Gi2v~Tz5S5~jX!+$2THpU z$i)5p_wbq+Se&L0fK>q!u_xUhx}nBO<40wjFZcYryH%hS{)8h^Bi|o-GP{-V{Dm}6+*CH<;TO`9TkneBPAg3&B2Sod<~E3oQkoaCj)vWPH{&b3Ic?htH(zmo zehOFFXP{0#<3_}Zu%;Ono`3e%AK|NpRnzLi0s+SekY>g1jbi>$0z0g=ouY88PVU&r z`{_(4Y}yI$@dS%?+J>Db?gRiM3K+9ej&q*9j?>{!NYrK5?Hofq7UMYe0#eaxvsSnW+`Vi~lXCn}se?zKNNOmpQ3$N$uOt=pB2s0=`*phDo z9-BL@PX{Q$Tejv-wv7K(^1S#si0n(EYNj&z8Wm#=mS#}6=j5^TY>J=9fjhX> zaKjqhsy(>9hX$t@vn88>?Ex7q55EN@E4wOj-FKTv{Vox7uYd79{0_`=Jh%q#z{)B0 zUVzws@x9ky`yTZD05}$A#w|`sI4X=%3{1mTxc=DIlYvRt3Ontm8&5Yo&(=5Wlubl9c(d8F9prcoPB@U z2mZq%qP_#wbbkdyV+hruI$l@l(7r;^!~0&tP%goH#2<9{esA`DAGsE*vMnOPpt1#Q zoiM5SK zELF-P^u|Ro&4WjeXwH7*tu(uMG)jm0BRY1PBaY+DTH|68_o9TfhykN{Yn&y}Q1YUB zvD!`6*8E~E^y-k3pPXXW1nW5dyr=K!8|J1o(SkAWAWEY12xd}Veq#q}{}+^B^SZUm z2+p~hw|`cwd3dJLyq&}DsY$vB^`TKe2;-A9X--sSBYs)q$z_xw2?b{)7N&w!e@?4C z7>!8qJ&0>#9#0{;HXCFKoSS*eBS;+*op#6zcJ64Rj~bj6{_U8482qexTZ1VKhkFoV z2q}?)CjR_{pN0iP#UuWrP}7F$L_;(uY7{5x-hcWcTv0f61}tDYdkJ)-*7z4uEoD0N zP?~$iiaF7G;aAe(tMJkPa}vC2e(w*OH~%c#?X7kbf8IQyzt1SJLxCL%tnci=-;Jk~ zZR6=1`nv;x&JL!mLk&&(d4qo`+j{32rfjt-u(J(;jdr^Ofj3XF%+7O4*?F^tfj2u8 z*nio1bNc_)j{URQYB!%_)32XmGi}l46KZB-hnm@JpZ;U@5xYdu=?@2-t{X<%Y$_zx zKN$CWEA2oAFDcjwu3CVX3dr93f$#(w8kgdOt#mBF+eW}+2@~2LiDu~%W!|P_cq^UC zF@#FNz0sf;G=VUn03x2I=j+p3TcVhuo;gD;sunVGhnNZR^$;L? zY^K4QCtps9m@P?>Y^cTyMP4Y?WM~q~OKL<$M)~`}`$pl5=qJ@^p!Q!Db3Gb8n1A=G zn=EA|n@DSi$}EQ1;yR2Fem2CTI;nh69B~|nca|?_73ilDBdt3wDP7Dq^WGmqd_m7!N{0my8TxfT|yjwH#r4PPk)#8PMq8P zq&H|$KyI<@9*;Dv?< zWs!d7c#Vt=ad}PsnG3=u|BU0zfYrpQ7?!#05H1}W#lDKC(Jhl>9U0AFyd z35jSVFDCC((g{K~eH@KO&^U0HOkhf)DXq+;EPp5}C#!4t{Efwd z*4m5v#~Ugl$pbni5oX%Iu55GZW&{9_bEqjxXZVu?LL#_^XUlrY<|y@sC>>>N=iIRb6vJGD*=Kb7EZphAxPv zZJt3oLC+u?oJGSX0)JsmMK<$sbY9e8##O;#98H_kK`|Cz8NwvYA&~oMC!S5ycpz^4 z7UP=0w?HtLY0}tMhJw{6 zq5Rf)V52tA2a_n4-?-A|t2r3`K>b+}0bCOt+$wM#%Z!qN5r2W1n2wA1dOB_`at)XZI&j&%lHbB&9fHvWxD#t?VqU-mHu3nSAa(&h z?fo`ZuL2d^d~`L4UX50)>Vl9P#CUa-~=B2Ob|CrQSbzvK$aB1IL&#pQ=6u= zmQ6q?z#Q;0^rmRqUneVPtb%pj^IbdSUtkvEE)k&qxN5OkPOGjCgL|Tv4Ri~ zVKYMF+1<%BQDy{X5+MuQJc~w=4rEBeV5rEOQ=HXF?SHa4z(ebd15`j@3^}ls%Vsp< z=|wh}jwyZuTaUvZ0-a0Z`kR~--)aa^1V`86Q-hHmx~|P&Wi<%RvWOrEjpA!plNhM$ zEA)j?yOJCJm*<0|DYS*v8@A&wqb{mvEHx7VvtHs^CPUc}PE!@KK4GzE^0SBv9gXzl zzpsNtKz{{~9?fR6)@*~M8J*|PpFg6uJR8BoLHkb$kiNE%&+E=xJ>AD zo((axC^HazB2l)JS0eB~>pnEo_UFzux90K4Tz@otRn_1s{2s1{xWI3uiUm!HaX}@E z09eA6#<~{001H+CHH}PWidq%&`vXc-;0(s^gyO~bd$RdFYhW)@=m!K6!7DPTIF(#y z4?99hGR!4s^h)tykRFh00V{@i-df`OL0V0zWfXH)uUXTR9{H89q z$A98#3;`f}xPOf_6tzRXRPdPivstfWxs^6rXkwQcmbZuU{;(0_IxQI@jL#S1t=IpO z_96TDpiboHha8T4dRSrdk6$_*N%+GaM~3&LE0-gGKIn2JT~^xlIdZiui{*6W%LB>% zn0y%F_42)*Nxt6indEv|F+9JCzk&>__kX)C*|Q1Ts$hmMxGv%0YQ4@+R!{Hl_;S}J zj$Lh!TdqsKS3HOGO)s{v7t%Ic=->EwgJBzL`Sam`1U?GYC#du={MiC9m^A#>gi;^< zGilWR(HImpzvn;lyZx{b2;%O}^Q186zy9OD*7|EgV;WT@Og8|(kuVrd>iFH=H-9O4 z^1SXhrKysH)ExjFj>a5^*oC7EHf;BvcsU-rkwM{?PZBWe+QuCulXE1@+70eB!eHdX z(<$&%x3GVMdn=l2rIgS79JxaK?oUP;ry5Wi`nM1bSmESU&HRCw`8Yh7FJ|PB5#{Qn ztU_xiq@q?~EGP}Et>M^3mMpg_hkql|F))P(^?Ixo?G6MezzC(`zPU(ALzyTE8CZOu zm0`RXIRT6+P0%`Q7M42D?YsylcnccN>h<(wf`?6cGCS@1vu2Ytn5`V$Nwdiy9+%n5 zOMRX|pmTRO!ykW?q7sVC&Dt+#fWhtjbPE?EtYWk#YrGo3HlELLnB%9h(0}BuQIw;= z0?&|o{jen+edP`Bh4$?AlFrD(@X%CfCo-oJ-)D#O*%&Zr!wk?Dm$mb`zCgr1#O{Os zL~c5iD)*e)0fV%V-hy+=?;!$!4=)5dgHjt+BT zCgmrWc#^wz^U9OVG8F7D0}nO#cXvyQsy(C%s@n%8W&fnQrnKEXF{aNd{-Ze6MQp-# zv^tGN!XGN$SOv?JD_uk{mq_?hji;5GyWLm*6*TNrymI^*D2Q}t#DCjT$Nie84IyR2 zLv9Kwi^&H{D@#jRI^}`kP7o6GmJOXgFsKKXwo-E;SIUFk8Pbi5*YkF?O=N?vVSOO? zOq{3TY{JbINM*c4#}|qUFM^*64uS0U&}2*Y{%e3ml~pA6p+zQ;wvGXog`-U(?OUyK zO}bg;=7igf8u^Y|vVXzX)vb-U1@)MFO&}$9g~+iC_*$ zKBtNXHcIb2by54KM)3xp6w5H_J^QnQNsC2HS}fldefy|Wh)iDb>f2k#6ValNBI5^1 zL!|4YNXI^KylgG*Pjh&;5?E!T3V;D{MFQx3CPKA%pe*TjS6ot@rB|M~`t-8FC;}$N zG{pJ8+h00uIr?ge;{DM7Ay}5J)~)^VOsrWD|VW`AbevqD!SmglEoK zI=Ys}vCc$srZ>BZV0YDA$YE;3C-hwcaN}O~%YHG(=Y)*Av;(rXAnCyjl0GBAA{ke= zkbH;+v8-`!E$C6^cFArmyq}$W* z*6nH#GZ`U$Z7_L99aB@rFSS8`I#S@kUZtyn(-muR4&+P}W^hQY2^}F6wwjyZ!c{DK zB}>X0B&eHF`!r#M-i1O9u@dAATOKeyl8&|!(O-(0hpmA?rMiktq)H>nXrR+5Tus(S z7k|`BUY?;p>AO1$p;7@5V7H5MPI(Y04tHKuvAD|6`$Ui|1)_ein9+t8WP$AhG&6Pv z;CuC)E3K?59BJoyypj;EtW@*bN?*AUlM6+t`^JM{^Y93iD8{VgN+Vt|b6c-dNX#u( zr&dQXkkT(twm0$9)#y>h%vs-f#j)Oy=|*_Y-GQ% zf0rx4E%6jRXgu%ue)Y(74#H(8rGHYl3w{A>_Sv|VyJsUcLMU8W+R=BRU0boDa)PqN z@-J2_AI-W?rs4erR*&*^G{{x6Za~%~Owbk`mKpx(Nv8b`U76o^o=Ue@2qM-R{NWHJ z?uoUCrMrnn!US*$;RlJ1tP=>Ka0wxSr(0zoFWJN}2`pYj_IiiMHdEtVM1P}PL8?J^ z1;)I8nE@Y5)MkOIL97*ZJ!vzOZzL6B?v~^p#WVlGN_sFzyn^k}-;(ef9On1E5HpG{ zVGn;xtis+4XyB!{CU@nB^M-GnH~VYei$|0WXa|a&lLaASqAs@szJH?gDA=&mggcmS zQOS;bCK-wBb{g`#<{-T>^QAF}(=Z}OaXpT1;AAYS+oNFPNM6+Yw<0VF7u}<&IU;|A^oL2x(J02;jj;mu0f8@Ha}w|2G2<4YY%nKK9mLW^KRrJ>eyG}zM|HY zh`ZW}`IYs#3#ZdmhJQa~BfN^yQNuJYC#EAJnB(WUtmItOFjLLjU^MxSaBX*L}X#Pk${v%~0y#yN{d>3@tOZ-mt#ex>Pznv3H2 zgQiR7tn5=@PcZa4zdA(vi1PR3Y3!(G0lEltS3&KWtG{ zU`Pt|c_699f#@0gOK1}^Da^Kv15z#3O^`mfA0Qe;_G?2GKv;i<5UUsldJYKN?H0sC z@ffxn8^AP}Bqmh_3I~EdQV0G@dOYi)?>2Nz#sRlvA?(ut`fa(w|C|cjX0+m}*$-0mc$?0W#h9g84}jucj9HrX zcv=lF&9;pe3tj+Iu@Y;ci%%L15=bGXA>L#uiz3A%o|~&e84%JK6+$8#Pdv}ZOO=(l zD}A_WoPm$HAmZg!)tAKF(>=7|HaY-2Dx;CxBm|jdB%g@6Anikp`k0{vZuzC!$A64@ z==L2bV~?)T?CUSAtBn_O(%^eA8f~L-2VPclI8_=RS_yj$D*2e{T+&AK{*3ZQhk9xW z9>%UsDx0xG0o(^t?r1%khJ1#&Hq^HMY{Tygoju_yB4Gzg|L(1{Z%q?1hi`r9I4Z+k zcaRHY@hZpAP$J4=9NxPAnW37Mem?S_gu~c)9lr z_Bo?;{1NkXkawLng`cJhx$^uOz|5;0fE-8M#t|Rbc;&q<0b+nz2&uLPF&S7E+?Ncl zl(zdtsK1FXN0xJxQek9u@}fX>8h<*@Q_??6PTjbmyD0y_@Y}vWqEXlp19`Am(f-M6n_bBlbP<$Omt@^MEDcj7pj;Z(~SBg z5@9MJgG!u*Gu<&G=^l$&7eevb!*b>oma1TKNJ-dVl3m|EGrZ>ziaF;c_g^NG>d6eOE`;-af+ z?0>5LLbY_o4S>5%yTlmF*|PU3J<6Mg(ftmo*moz{b=}6|u~XJKJz|lQVms$zueqI+ z0Fgg%GT-CgjEy2Y*Md_!_SNa>GBSp#{oAqB>4oJLkL@}&+m80wjy%bBiVE{k zj^&!}6q_D}y3DlR-juoEc$V3ob)KtyPd1*( zj2r7upU9j~9zWiYSvwn@_EVX8{mFV~Q@M*<-&}w8Of|Oo?D5kls=en=JCAjrc^#*2 zeX}ixFXmBpW8>MgCv8>9lc!Igu77uAEgKt;A8&4M$cCRh?X)55rm3{E(QdDAK)p%_ zb921|#r16J2)PPRo^5VC-h8YlS4T*_)Qu<4p0=NB%}*1d^mC<8INb#kQ;`xlzOnam zmwTHEZ@l}1gy)KZ(+;rPl66B-9hVkYBR-TkNJxi_@uzcT<=J^f9dc8I?vh|k?Z;ISoQHUr^F`&-JU z5&JV`f2E9}lyg*L7{phq9X@8;3KrkHh0ZMn1#oRRO=!Hhz z$xs-p&K5Jv>9n$|7%cEQYYFvzwB8l*dn4a2e~}h?t!#mDoaPG&t4nLM_S2Wl7U?aq zQAe#9(s{@2jb^g|=HcxbvT}U%AqfgLN+*;kUO{Ap2M(`c1t&Ym4+Q|uriP$o;(`g4 zJb?e?S$`hDR-ZFlc@Xb+3g3#FMriiN@YxcHXsibA(7m6&xH9#!RF^OGgG0OLIE_q-0`x zb=C0&fCSs5Q8K6pzAy0Gm-dLJQd8>^u#z=7)qev5GWD)LSnm?Aj!9_*irYy;Et)GQ zk;wf$>PR@wD22e0L_;KSM5!u8t)`>|tMl=e22ec5pi%wsg#A+RpIB_}8}%dgW&sLy zQDA%uX8Pr(pg-Y65jM_!e((N zAb&5RZWYz+Ug3qOy>;2*&SK~bhB+9(cdqVkh32_VmBauZP>F3cCjE!vRbw2%c1>g# z$;1yuBviVAE@UF>T0rZw06s_-@BwpXjKLffEpqkNP!jqTi+;>XMZ(c^;_52QXzl;2 zF@S|QkqhH17D^Okj8Q00H;I#&P-3DIGk+&Bqr^-l!d6tOKp9Zvt4`38TFR?adyJtZ zz+E^20s`oE>~otvAUSN@FKN3P`?k>kElG#WSqeB(9ShK_6!9g!we>-{y!LM){zFc% zV%`WA?y)~Oez7G9_5s~qcVlO0WC~Up8XiLoKT#Pj}fl4R@1*t3jFA-y<)SptrVpIx{C>^y!J|A zA`C6Fq^km3>KX(KA#aeslLhJWzB6wl0X!OOEm9^-%SxLvq}Egn8-?RM!VlCE3D)>OB6c_>``SvR2N5=#KV zBPqQvOP6E_G&tA#V47pmG1F`HSt^|_#fT|BL$YHQ+W{<<6%yW9RXCm6%*+zjhJr#B zM15bP?_C*^oS6v`e`bQ^)PLq^tgMpHR16Fnh8JgXsaVCqIZTfg78&dXwi5A~2jLyU=_o;m{C^$~^0AXRO{cVt zoS`}aIT+`vh(ObUS(kO@S5aXFB`2-JRn~c8)Tj(Ay_D0I0Am%fndy7@?HoOH8eq7% z&3TtA8`S8-p{%H7+W zT!@>~arMq^H(k64s()Pbbe_x?V}yRFBr30^lF@PX_=roP*m#^P416qPfN-dU*Abed zsRvEb9#PubMo=*6#fdZlhY!opgO%DRSl8%5qN*8s$%Jzden=a#E5zAJQ(V5sKw-w@ zF{?O9nz6`Q!bdm8%({C}yLegwMRjqn(~OnXzeV)swx$bUzJD!LQ>w?0=N%fZs6bB|rlO)}(cCd< zx%Ks`5okuC9H3Z3SqZ%|`I+DWNwwIcL_cTuP2M~5W`E++iS`&C>}sW4Zz0C+tT^ZNj*_Hy)}fQ{?(mUc`SvecfG}XL^P{ZH>3hy*Q3%^G$$a)M3&|ci z$=K~>#D8Z2nj!=78ACRo{TySycaZOA#C}BVd&a)!qQE;SAWr8$p^W(YhP{u`!TO*2 z3*%tA_@DBZ@)TM8j$dOrA^k=LFdg#DNet!o}#-LK)oZ*=}p<(_8wSe;>ts*^ zc1uY$YbO$?VVhcf4=rw4E#fp#hfV zMc}>4vUG-@9y^}O;PKRBpUDbQgz4L3sDG|6V@Q{uz2R}-y&>_R$G%38_~FoF2f(TY z%2yo*Joaij%_~udL_7wb_}x$O-I#;)=3@qg9-XqV7x>+vd$BzA2&99J{9dlV-SE!Ud0#-ncaBq zPU~jdnbb|F4G0W4{NekFncohMai@bH(372Y{D5xkY~Tl!+1bPoD6sPwKcE9UPw)ep z-g$~2(Cp4LoGNH<=Q)0Ku);QeQGeA~_d3?y!OAzG^7rLL%tr@%WiQqGIwT(ef`nx` zfMtQ{3_O83JtikQ@Fadkm;m7PBtnJ7$3+P|g>*ej!Tyz{E4^^AYGFkcA@>%e8g$JS z9*oiOr?;|#RIuybDl&HMuf}v3zOnEH5U@1KVmpYlN=%My98?1WUr{XG=J!ZgqvAXOlH{mXLq4PB3$NQ`kb9RIy8 z{Ov{n>+TRzegjzdqjfgv`+vTGjI@g}{EEjk@GQYL%Z#Wi6dfe!VdJ9}8O21u;4e}u z#SE!BC?_gKD?p;B0B24H*)<{ml92yL=*DLYmW8Ayr-tzOJJMkxv>2I)C9Ay@DwZrb zG`~l)@EMx_U>!~Nivz!LqQ0g|K0qa__A$@nVz8915h>~nmHC9s;eU;l)Z{HI4nc#m zE+s`oic{q`yUK4%s&q0eN!KlYC)yT14g~c0>U@> z?rj;t7GXlHUfPm=l?I-eO}WQ7kX*J316>E%wDSx*n~(;)9aA&tShZ4ry}t4_W5W{D z8!P?j?(Qp4h|gZ&-+xZ$W%w0n@=+P$33*;RwvyxJ+9OgNs>BNB7NAfY3YC7O&Y+R3 zYSb??L7w&X=Q@)uaIFeijTl!uRD9t1$4OaHyAy1P{bGRjOiyo1YA8VhOdB9%nKK#h zmg)2A9Hb+fuSJ z0pvHXXi0R0=KBI!;g`f#JCEQ@8R_!7fMV*4iZ3=v}VnNVlI8+?Mk1ppQ`5cy9B{+uxqv; z^s6NZMOiFeV(w?Cf2C~%j8d-IWzr+37>uSJv7XCP+xt?zH<1;19|2ZM#AI4{pDYaD zMoi2XDwk89IIw;o-6L z{JFb({$lyTWaj4@1-QE?o!HF?9V<;2=%J!5)T+)(9~VikmsQEE)Kt9l9&M-9P; z+NaD{%XV_w1&Ax4HpUtGcL35PZS0Qmr*b=Mg?+%*CxT@=^lww+jVw(zKnNifD-I>DYkV8pfIK z>wh-6_HiF-UVJo248wK#W2fqCd#x-c#J{%ZB69v`M@UUCiIT`z)j4;h%2^z?yRq?> z87n29G)zun;T2py++DB~=4b_nbdsJj)c4i{>nu^&`dKP{{Vw5T$6J}}b8HbY{U~iU zajL3IYTWYDA|{1!8ldZ!jLd}insYy;?tim5SwO@uL*?N57Rv(KmF}gACZ9tq@tg;u z-=+`)kdqRyNXp`0(wG2VDZfuInv&Z+;71INSC1xbLp9>FEPldcai?QCVG6QI$f z8!76r8uSBCYE9%?swczZsWzk#Ah&Yw`cYB~a0E8)O+*jyohRs>+m&D-UQ}zrLx0H- z6yX`_-4wM5FU*r6fq4rZ1MTf(fbk^O?}}HHP+t7CPk+Oy(_n`XVCkhB2Ck&L1 z6IS#R`8jq76U$-*bihs5l8!i|lPk)Hu`3RSS?2kyC=KWVwK zaIjfX+sR1S+fE|%TPCll6|&PhPCO*lW2g7Vt)p+buKp77ndLC)f=hS0(0`WjiDt(% z1RINP50+q@()3J?J@vb>7{0lLDFZ7TP7ErGqxlWgHLBOkm$9&DB%}S3d<=(xArn@r zD|HIRemAYxCj^N^VUuq|@tPKIi3erh3l26V;5N}82m?}rK!%t^up$dgbODOh`6n_z zY1f8|z9V32phH|3Qd+0 zyeyYI#+FnX`6k2rt`DldR>4+|{=_CBpACtwGH}l1=jdF;-FDsm=ePKur22Sf?|rOfgciz^DPd#_Xkj7opw#h1@?-hW7Wmc74(c0OyD6TozD z83BMkGg{56Q%5=m@|ys4YtD`$m??Hs;(Vb1^X3;ku<(Uw56_i`0w~B=VPatCtO+s! zwj_g|m4~y@B$%M@45-=>Q{I^rD`Z*neNwhBM-g6!NzkDHF&A-WMRV!ok0Mzj9Q8ls zaukp%Cf}4!#ealK4O2m4iZXqHb4WBMU&bDrva{gnbe33>~76N^RD8P=?;% zEEPtYTfzuZ7-hoG$9Qn9eviaU^U6>Xb&r*uBwke;drDNXq(9rzc9X8@#Mf0M()UqA zk-k1$%Ctjc;W;X$+ht*m$tTky;-eZ*hS~MBpsx}BMSm|nwTl$!f4b?B9_^&1r&K*g z>(4jR9Q30y2R)wF@ZCH5!%1O4e&Pk}NCicY(9p5cz(jfF6JO|bPkeoVcEtydY9bu% zNdr^TRIZ_pGX24)6X<>cGNucgwQp-B$LzVorq0vTRD6?=_*>DsoZ3X9IvZ zXijLgF14H;NZ-9jBvPYqHp2I5(FvvE*bX8fKn|i82kP}!2q?z?RTLhSCkN3f%i7_q zsDjXQj5}$cR$LuJKB1x6@w?E2tc^#Nx0bj4Ie!G-ml#|?+>LEF-bK%iEjLvmVn{Jc z_N?L&QY0%$7^d!!uCx`Ol2|cKUZa{d#qU!?6%5YC4cCJsJ29%v%u-`MwX@PD{AE@N z`?_9BjH|&YaKl!);%Vbs@S~ivD{JD<2DGD7(mkGrWn)2`RKw7-X2iVDbxp83_oAnEcal`kOBU_l!l+D-y8qyt#J00xP1jabg zj8AtW-$(kbzOa8oN5})>t6cgt&mFyb|JUo!-YzP`&~27Mp+eCUSwWP5!atyKvKIJ18FFEXE5YO#LGd zJz-=Z{O95>StA(~oPwitV!v3j@x+&h`?>}4f0-vGPyWbH@l7iDA!o0PPbEN~=uNUJ zuE+khX@m)k5C(u&;J6FKCvFHd?^jkGj#L5P7jvZwg}Fq*zTm@Fs!vegLgUz!>mPr7 z$GYZ~Is!TBLueOVLeh6Vw!C@NHiI;rsTg&eo`#pvJPFg*8SqRE#en0;Qn~(YrHr7X zI4hRq^EWE} zoto@N7I(C{7v%9KHp>>xGxSag5x3BFHT z0#;Yvb%9$(ENR_h&0{^{`Rmkvm`V79F4uF_|8YUj&|=fa8n8sM z46lsXfQP)Qi{t3ryhXe~KK~RpUT*U$w7S9_dtVxZT4+XEOftxH7%gNX1ue`)mY0i} z9DEx#XTSi~-2s0*Y%;vmQnzYQ>Du+)Z(ivbF+*nuWz|X2y@tyFx(VoV zGiRJCXN7*xuGbp5ZRZQM?Kyb(eJSiIx8?6viFt0EJo^;)+UbR|C542aPJ%QYh4?Q{ z{8B4$twR=WkN;I)Pk-Oc`tMoITDIBH&$1*+V8jh6$yRx|GQz7*y0U*16T|ky5$_!< zf6K>fo_^+l^vI6k(8HatNXDD+fE{&j3|2Y{ZwO=WhDYuL5=Y8AbG^Q6oJSpnyKLVC zcf*~mal`g~wyU0x8A&lV&mm!#9r^GdbX}tBoA5^AtM-c#H!|{LBD6BzI0nq4bg{&-lV&yXWDmMFmT(6TSanw@+ z9F(|rRd;uZZFYrc3E=ku2Wn}+PhJH~{G)9M)fdKk?-} z;MwH|FrrY_6#@yKVcCIvIc9{|jO~UM*~@-dk=xwJ1@Ks-I{Ql&4ci~#?hrM*l9&B( zL3(qei+c!!VW!^SJ`P|*WH8_(=&>D#lOSMm#2dTpX3Z0*6ht!&taA8v?e>nK zTQngs(QgqV4@7@|Wp(>loj}|K@??E3zZOaX@Rrg_x$p`Hk9^Vvv{@9qpH5HZ#p5d!dwuBm@sRyQBnu0mv>n;B^QST^3V zW1R01CvM7u)YVEhn4p2khtJ@u&418?-X8d7lZ3~X=E(6qnj@Ice#<4ZRN1hU()^$Y zsC>kkV;+7QYZZoR**Ny`Cgig8A>}WTatoi|#)M)oc=*SdhTU+w1VEit`r;_A94~v4 z{kZZZJMMoBXzI@~k#u7&f@9=z4*&z-Uf^_%1<+}os0+w;fmx1`g|4a?HZHK2&U>#u z=5Lwj;_Z2nFWk|yv zaeq1a2&s@u-lH#gmJ}!VK0VUpP!d%SGcIkXX)=Ghhi849U^Bbj<*rPS@{|Pg1LU%< zOKAAg@zIZf?RvmYKvG`BVDWI7+_USDxmAtyg+eHZy|;*Rqq0y+ia<4pK?bR4Cw$Ij zJ+cKLuWd`4l&Y?3UQjVZns$U_+Oe#hynX1-5bRN>K5=#G(L-DYEG31Pl6;Jf(6WjGMstH|=PuLq{9 zZ&gpLB7et6&b>o;YmMLl2JqJOZT<$Kz3_kSSHgMjKDv3U1c!l{ilAVQ1Tjb~VbQm| z>i4@aq%n($8FnQEX~@Y_iXnniLjfB%V~v!Qyy)#UbR?$8-WdJ=k&`*J9@Nw}+)H1VRt`6#nAyKPrr)b&wXGo{rFN@S=nXg946$%PA1>$Sbo7X7GcD#L%m za&N*WI8VmyACbacCB#WcqHCU0LXob+K^*FWD9uo>49(1}9$3H%I6Un&4spUzaSkQG zB57hzEVRjHFlRw}cegyVnq8F>)wz^okNL#tTeoqR?$fuK%mwC++To*rX8%ljk1p5% zzsolKclXb7XJ_ZlqYEQ%{cIVBH7tLNFsT^Z;6jcl(QXOl`Zl2Oc}su7>Z)(Gm}!3P7Ntf6x{wIVXS5>8Wdx z(lgQ0VG&E)s>l$X1}rONC#Yh3r7HFjxWOprP6-*OGMBoIze-;6g9sS;VvzrI%D73& z9n4;dueqD&+KoNp9(w4>)A*8;INNU(V~*)9@&4TqsN>*6WLAGj%Ex8`Y{{X#J+aa8 zYsW1-?3Az#s7JpjW~5wXavh=cyLOAHF3MkyV8`&nQiUPpKJ=HS4iqvqI;I8p54k$wT;?Wq32t67WU!V+I&f87T(($ zWZ`dIT(OTu==H_HL(f31dTWD>6}gVZTfkhzzBYNa4`z|F8tD|e_>cugZ5^$yLS)Lh zNqGw$jJb$6`()dG3h{sBV{s}jVD*bM_Ol|E%CfXfDZ&J$Krp#jR2Zv-g>_^~jH%yz zwT@aRMLuNnK^WRNR|<*fmj<7%%x0`9&`X)yzvZtN(yPCgfiqSM2LX_a#C#@-jn9aq~Qx zg)46*(HPi|F}*?u8n^A2Wrk0`>eueRL?>l-%EXU2NXx9*wEA)+uaV1aZB6CV<&C<4 zv{)OWf-WnH5IQtO>XE)s#<7)z!^FbRm8X5_(NoEg;3U>V4;|_v4EkKv?IzI8HS`MB`SNCTG>-Q z!D&AP{dam-+@F83Q)Gu>7HU{j%=d>@UYb%SPXWtBCx+t?K%)fW3w{dw^mtv`6k4Gc z8lZnzCC)le@KMDhtN>YoBdn0#e%9}qE-0utt4M|$3%!4pG(n6PdG@%Shl4d%znxhh+*Pw(Fg3ta^+ z(t#M=Q9ntL@p}ESN2`T&fe@n%>DaaCIHogyRcTK2;0v7JEUT8;6oyq{!J^aBVZ zwl7^xd?`YhW}qNEGtEa*DR-2eoC6v^4I!WY&SR{TV}+Js;#&#O`r~&xB{9ge)%$-u(Sz(aMUken9A-FXy`7+i73~&pzTDS(n_+< z@3&-#$<5ok>N*go4vsIHj}B|w$Mn0%(ANOLIe!o=Fq1H`&E`2Asx-r=dbO6tcXi=? zpr~LLVN#pTA3%@L?8?H>)1~oWmd6W`sszp}`TGX_eX_0Uv!?GHJLj9C@mLDD@DIRz zqHMm1)b`$N?{6P%zwwy$C<$3ZifIcuJ)}bh8Yr;U4&TwJPREAA(Cl2iy@S@ha=Y6n z#((#U4;>_>q#o4cz$O}uQw?LFEKCj)_r?L`3in)$NRK4?fe`GjJ-$msdU)U__}sU) z8}~_TX+?Ti*3WAe=9x7j>XD^D&dBcG#_u*s3t>0Y*$9@8_}OBW34oOf+(x4Sb}(Kt zp2z7dI4^rT3{a8gHsU!r}NB#ockd}5+*>i zFB{_n{)xU@&jL2kN9KsvJL;)S?mnJt9gtrmNtwUVjLuadxE#gq(?KaAjA`&q1B4!Z>rlDTEnTJ}|HY)VVg3{vyQdrs8=a z@iKS4zG8(R`|_E3@}CUAjdG4LAB>a|;#oSnhVK;=?1@YUbZMjEllD}{)ski0MGJIy zP6_!IU0)(WCO5dfwy1m|#-f-x{eM11W#6EXTkSPOc6tv9=;oDG-RL~URSonaS*^0a zE9g+NB_Y+g6`0Bu^yurV;vUh`iX~(MWF@5^Ruyx(Q{^*P5V|aS)Q(Xtv|F^Fr?Lsw zUDtO5>_xPIUhJ_&`eh9o)TMovSryU--_mEzmLMXx3=v5LMf?6Yam;y`*?(ebp>}f4 z%*L^Nr&xy7iyl>^+m1eIyhtgA3d+jW1NEIMV6>n63Z+;$biS09-+YR6x1_c3wP6&( z>l4wEDZ?VhQ2q`a$?J$uqJa|Rr7fPcct zoE3I`CEkL$K4_$jy)v@(XMdaG&E*w6i}*bq0i z&UvD1Ug6Hgo6v{Rk~q-=hT3hp6w5A^vBjc3Vy%=#s#VPm&X+=y`(z?WQBWpOL2`?D zPh=P9fe1-Z$~d~ zaH{3hu4Ctq;HYL)a~fhTZ;Oq6+X0W&WT=@BQ=xD7ekOX)c69|e+VtQ?2`+n$ zoAAS+aRjq~loDiSN-;6Sc?uvsZQvxh@s^h$(~Q&wI&vuPG4}LR@2$v2zQuBVL57Nv zUWd&z=6^`z-B54*USn4bMD)OC zyM)*PlZ!Q`upHhl40|^`iW_1iqKm4eAYILLJy?%rXY(7Yv5BAeXy8NgksIS?jwVwv zX=EWpx!ovS>DRxr(t2_3?oLkcUG}$XJZ#J#7}8S$u*7N>^Z#8Kd#5&{ITUWp#cREe zz~h-a)*Ey0>VNB=0hGhBccc1IX{_tktU*kHrDid2G@MC3^P^(4ju2u5v@waTmOu=& zdt@MnQf@?)?8=c~;64Ys=dfz`c3ZsK69~=a8~4z_S=)sk>4O7GQ|+ufxy|z?@W#tkbs)F9!-Uy^2{6`*{gTtu7BRq;_B&*E|^z=*CVHXL}^b9r=U3S;P%6PCWj~ejPWbM< z6Ruj=m4EX|13n5Us2V+_Mn#M6D*R6AgKBB9M=p4{>uwS~X%`$SG%GabYKeAfiFW;a zr{}G1%dFB3F7eV;8gR2$6n`_8`r{Y!_Y(FGo53F-Pd-V_U`wTK#$OyMN%TyJqPd_s zUe16rffAP->!98Q6x0+FIgI2XLM3E6I+^iPxqpeawPqDmXQ&JK{=_9?I0q8s68>%T zC3HwZRU$oBLS5{J^!zSVdJo39&4UZw69{4IHudxqaW15NcvNvboXBe5K)Xj6z-q^I zYjJ6MER4*m^8y(V393;#YJu3z%cb4Cbh>#--Gm+}h^cf$xU1k{Ec&_FiBG7Yj!j_+ z(|?ywR$rjTPu7&`giEeo5B|h$V4v|oM2Ok`v~(DsoMC*TVSF;fpru?if}LqyLt-ap z_;Pi1?yWl&zJT}~O(V&h&9x@NY+eQU#-h=c8QIYTk}-Zt5;jr~BT`!nP6r zCgO6>TJ)7|^s|_7S{OUi-`zp8MC~A`k$;q4bBapw$;BhqTD7*-FUTACQkDmw@Y@WBtkkLum(TuHT1g5aHIIh`E)4yqd*LeLTz_y) zBvDv1giLUPDwB|tKJ{;L0?dr!)TfZXz$!ZA=svWoM3wrD-wXb4WgIVr`1n^H6#bI) z{6&>Qw>v88(O7_92$oSWk*0;YSy9D3RoQ0EOdUyZbz1y4v9J4~p0M4>OR&sTz_C~-OMf@8!oc8Vu^0t6?%}9wU>o%RfJTix-<}D zNtfmiG0;%s;#_Hd;KJ|&a&KSU%Md8cZ4ruyt!*yBI(Dlp!QW%BP+UcPlo7wE6?@Wa zET7dS(3U8%-~FN_%*b$NfM0SL$yMR{Zjyz6l&C<#zLoUV@mU(9TA1KPOMj`*FjWr? zR28}Zz~`zU7Ba}ZmKB8MKRJz+hD`SrZ>03RL0`s*7cVXShCj8p5~Uw&n@XS>jXquI z-b&tD;@xLnFX%G4=S1G2*04FDVmApU=bl7a*^(k8j83E?tz|-Cy$d0g=t|Vz5HlpM zbm_8POV{xhEkoJxD5G_ZNZIfg<~Q@P*e(2g#yt(w~;&7I7C-w13RA&Dy_ws>Sr; z0y#_=G(w()WkgCpES1UV6V<8*^1nrwdiDam6+ZTE5Z;~v<`qwF zRqtMDtzQpv>FrS5xqrrk#khPt$oMF@mHHVX(wbsbl0azA`1v_LST4G0S)WMd6da}1 zLs%`lzx0?xqqu(z`g@`Oa?_cZ>R@oWopd=cAT{Vi_Z%oE@nu^(yen+e7-1enkCJg3 zI;wpPF6gybI>f}JAQN{s82%I?vt_M&+N7$AXbru)=t!rgWPgXKyD9tKxZ(A6LP2UP z#Y&lGVH=67`mhM(rF~`l6sXoH%K`w?PD%9XgcVy0&&=jj)#B!ig`4mDYPUD1X~C%E z#*UFw;R1`Op!vI7Zlq~?0p+Quy51q zJ}uS8jH??n)*F+#Xii~FG;65ta?P$TOm>Lw;U(Nwi+|a4&nT`QRqieocv$FWrVA@N zfw)SSPzyi|P482bmguFgrb?M7d90eTgYb}g-93~?9zvDYCn&>%U?LI@Aofta*yn)k zTLZ6e!?zB+&LCXvEaaY$F{W(c?ZP}B1T)oQwRm{w6ER=v!C`;ip_?@Y5#34HW^Y3n zmKe$`EPs_9*)h8RLjXtbQwH{lx{T|`$e14cx0UfwPpnOo$-UC1Z8CGV$!u|(%$98v zUwO$w2Uu(by-{AUjze;$k_ew27uxR}bP@8R-y7M0#RQ$dD@FDAAg5S+wN5whRPwUSS8i$JNYcA)i2S^ zdVo;hp3lv68HqftnX6=Y7e3j9+EcZIu_cK_R8)8}I}MHnr8onq5v~FFvZXx!A1oz+ znmV-(!nf!ys;Qe$8wGdvW)g^#7N;H`|IE+ZF}i?^i&i2S++y zj(?1xaig#@2DY(r0=APdPUq%OSVRbrt%eLqgfYY!_e<*Oenb7h`IGvRnscsxNdaW; zeQwpLv3Ht~wEAZD4QD*y*utv=UiZMbr7k204_ND6p9`3aCiECoO$)JbtjxGP;fOUr z4thX%^8Os6-r^{aH))XEH-TJf-{a^rFNie+Q>^e5ghaL4j$ z7PkrKpY_SJrQlZv*a@D&qb$+GX`fuS$`a_CQvOQhFC*rx$_E2MnU>d|OHr~+edr%FKss_+$tngkAT6GtltZ8}d~PPt>% zK6jHzOZt)DV1lB2!AySFZT_1pIr3ErIrJcAjxyqEH^FAa^jy-)v{nl ztPyd$$o&|%wrA|@X)29}1z$g?v~+~>AZSZiVL)wP3Ze%M1`+5OZ4b*NLyZRd6e2^~ zoEneI9VHQ~loVL?`wT4=Ez4ivH80~ReLtPVn9N1SdL)Bm!!Uf=aQZddwSPQOuf?;J zaN&^DX7I)Z{uED3s4Y@!^NFZxVUIdGPaRv@R|#Af zxX|$waN1%!TlOjk^60Hl<$rC9zrTyW8F`3B6wkN-;L9$0p^?@wuaxV)5(BOF%|o9= zD)C`6WuYCWTBk~NLRO<8B&8V4F~wkRq!?^5WsV{pVuaP)$siAFoFSYV2UE}-ZE1jb zC6Em}R|3pXCuDRHj==X!N_$ zfF)UD9k*QxoL@M)AOz|MW^PHYm=BO zEUq$>^r{dyaj^uG0*$%RYKQ@wa+~J1+N-7LDh&+kK4YEc?9&k;M%VRPa4sB276upgPlj^R&*vJ>%nX5nZ@QO{a|vcFk+|H&@37N z9m8aAJk_FL$$$BXw*TcL8jKXfH3J@hhh<^v2Wla90Q5`Y`Zhz}VSBy@Q!qqNIwTbS zs(sxeG!=+;W(;sp>Y@;g!Y{NkE^@)LnvcrF6F(j!W}i|~V=g>gOa>}87^oN-s9N$* zdR{fnt8U|{VqZ$lTwMdQQv6CDIzxxSO$7CDWJpf`yML~v?u`}tGP1gjhSfJHZ%VJ= zg31M;b&9>3W%4L8jFN6F4#sLP`~hrg{TDX1wzg4Ai;bPG{npK`1!z31S!%56bc|86 zG=XRdhTozznARGYXUv5eA|aGIyHyYqUz57h9&N$IG!V*gxIT%zXl&#lKtc)l70d<2 zC|biPkAE)8^MW#7-`vzUH@|D@;dclABlW-17rs-{FQT{pl#NU88B5%L3S=uqL@L@u z_GS^DTSt#81aWIz=zepPjy)i?k=BtEhT-9&xO~HhdF|;sB1vOPz)JF%iTNC;qPLEs zNGlrVwNMt4dj>9Dj!Lg<`CRW|2UtD@{UqtcAc8x3EIV zfw?09QHn8UUtX!lmaa2W(^qzAMrbXojv0z-Z0d=Pen_!RBQRn!R4U6c(c-Ai;E9(N z32q>7qh(US^!*z_zm4gJxj;5HVQZ;(Uj;9@Mj>R(cxp&E zyOX%Aro~l&vfzs{Flpg`@p0DWLrK_)bFIIaXS=05rdj3s9hOVtTYO8M9xxiEp$$QR zDAoW$pS^0j+(kocLdWKOMts6P!q3D)G-6&EsG&q>Woi zXl8V-r0v)t8(qqrz%^hav7v^I3b4z-fuZ$8>7$;eF@79Tjai+g;mN(`TU+)Cr(=sA zhlPB)_N@1K<1u^6VoPK;iL8>aCIsExV&`MG*g9Kv%498N)}1mJV=XLbVG>lxu78m7 zNTUb189|WSF3kmFW$Ls=1s$sq?Red7o7Xf^_Qer|EV=KQ84AE3R zpGFq4zqF7&ov$jaoby#FD#<=WVo>_*ROTrH#^SJlmF(d#@n9ws9X*VA1#&{%954HYFKFk9+(4ScRPtdi1BThQ^phiVVc!r<`(MWhh#!0vg+31r zb1TEffCJ6~Pt#^4(v1~98*x%DH7z2(x0h&@0XYpWM`5tIoa3Ca%$M1um#&ooB!4*6 zxS6bVGtJ%nX3>^FilGJdJdWcZ_u-$PH5Hlv5P*##xNy^MKy zQ29D9<0%f^D!dzA6?J93!Z2~-r+=hg<!rMqHc)Xk~7$_{d!G({byHoBiFF001%y&(K=$=^`?qv0tszvMbsl`lxO9 z7gm*ompTb{Ng-D-8LTFnXSX8hxp}hOmEsr2Za-hv?E`$mpqKiV0Ve_amm-$|J%1LQ z6coqPvWaM5LX;@f#ZK6*9tLQFTj=>JJQqnO{-PX-GH?2GmtD#QCwDD`M9dN$DScBR z4o}U1k+NiIDKJ`EmUg>549n&Xd00Ld0JE`gxJIyRZ{lt;fisnyCh_#cG(Jtf%a!9- z`v6r6pU^(iOIIkkqmK9J+rb(iqJQeT6LcO{4?FvvhZwNAC?7s#z2|7kP(2Jg+wj(^ z0z-I+Rb*uDiyo9$jZEF*58;D4W3H%XemhE--HsA2#|we_Bx(ifXX7?NdOmJ|9_`kOZQz+lg@kER@>>@fn=VxK{&z-Trh#0dr0198T<4tFZD{20{IE)}iJWl9>aHp~zaZ;&4drv5Q~ z9E2pEn7nbye*+sQ$GFe)#Qe*~iKb$G_TM+&*99DOVdQU9y^98$^MAo=X~PaOwy7_& zFs-sm4Y1GytkeK$B+UV0luc<$qxfgD=bIEPnXqf8Y~+5Hy=$ zqGMKa`mXz=yi=$$N2=mcA8#jjxL#w*dosKh zK~#joLVwDgx%Gu|(^jO1F~s8(uE#Ou-uM`Wu%TksbC&Cs*t%sDDtix+11(^IHr|LX zmD-+V(yN}2RZpqORi$2m!)l#|9Q9mkWi$Yn+_W1dxwh`cOA_7LcjMNsR1zB-CV3Z1 zr2xN>q5vA*JFL!=^2iS^@@_Plc=#lOJ7*l{j(@)m@MUvI@~p9I^=U-MHS3p$-S zh9)vL?4?6t#oY_IaxbItx$UieZGEEQe(lNo%f~)QDR?iLObHV}GVsFi%7w{zsTxez zKoa;o0wj&f(t_rW{8RYBk`r>SsuGF+m}StkODZ5?xM~HO=YA?8vb>G{c!+tyIBN$L z@qaGh3Ry`pn*lgP7Ev{&KA#@gdR1Ka-UQ>IMa`fL5( zlU4b=5 zP>OXemJ>=r`YDG4>!U%M3rf1#((oZsImP~qheRs>-j;(eVnL}lW1wrT1%ep z6s7Enhyv0|?!wuW&J>^=!#jhRJ7B;fz@|pfxJfm1;xoAM9OPoJ_BPh!BCLe}S+IZb znH8u3#b{so%E~q>L}eXVNG4`anoBWzV^W*eq)an>p)}6z{3fmR*z(&5P$y7{mVfla zxNtcEi)gCtNAvcgL*ZZ5-@x;MQL1Y8YAlGolutCq*i(F1ObC|A&jp#00@)#qI92hO z`G)(H+<5LhEi;ob6>_Ga>mUu7YTLC-1{V<1V5AolhdcOn%5pD*vx2fA3TMx|m)BP9 zk`nId-H9<`I2tS6Ic~jYuNr%{Y=7@r+#Edcwsp%0;R{_B=*CJGlft?iD?=(`o!x|h zfE}S{Abg9({P;Z;4Y0-nTpBJ*#$kNzpaOeP+zVBPD64OGQX$kqX98XM&XdU`1`N(! z@eJtayTVEev9K$&ZDYhVABrLstg@0+N<+eru{WEtE4Xl1)lHZyUluQ4(SNCFct=X; zp~V4R)z=N0dB|0(j8HbAZlT$-*qIj4NWyKIdT~JQ8L((sxw#n;szkC1!rJn_ZuD0*XkG0+ zd(z)nHT`YPV=e9?aL2jB9e*n_51Hc%MK}^&>>=@5FGmc4K}z68prh3u+<_msLxAI8vP?&3IcPYnWP-~-K;9pz zj*Kj(+;U7be*k|*H#a)1^laBSm2X*B6GZx){BH#aBzFwLOz12)3l z8G3gu++vAMb`Oco;(wC%1lmeyIn6C2bDOzEPGdB8mpr9%Tg$O&K(RJo@3z% z?zgy@X!Ffa%804U8ScTIpZ#;AKoPyLm9T+?2$$9b7I2L#84FN88v*V9IT84Qi%vu3jZX!cA% zvqyj?iecC{H*old-u4|!$QS)Si`Oi<5Z*L*vH@_Eo{R>2JKSk+ZgEN3>H_%F)|_#B zjav6OqGr{84}U1^MIfVX`7pAO!yv7!99S=Dn{lE4!ubCAPG~0gfTB^{21cXUfTJUH zS^odgqHv%t$mZ`hiEJnVoIn_Y>=&}jMhq67m>MYROfqN1%E~7a2Qf4l6x4E!E>I>S z8TE9!dFj5c?r$r2Cb6=)7Q&B82#^fRQA04GDE@3HgMY(>wsZCgBam`P;n#P!MuZ3}XYZBY~L6;WMcP%_ty z)GHOY+t};(ErLx-(a7E;USV)Fs~eA*Aplf!#7SL6R-ReG(;BH}@x@eSo9!7^4YNoa z!Tcpg+283|j+u@i%P7|WW;H7%5sl_LBZ z34cyT3)fihl{7#0GPUG7NLInOj<=rL>z~@|KVp@Uk5U|p6y>f3Qb7O;>l3{7uPF>< zVLh(&*B?La^&SHbnkm5+Rz;|a#t-jNdYc*BsBN4s*)YUjXY%zrw~R>b-LYzpS!e5G?G&yw36hw9|AluNk9 zeqSc|K5pM|pscNHPw^du$C2N@h+HdYhIunKTRUuf<`FoIj|_>|W8a8QU~EZi2%rM6>0IQ7sneC=i{0=weS;C9S(6qZbtPSO8^&F*lS_ ztAzliO<2LHlL>IzGclq!vGV#?kvFrIN12GJxgHeZstAtBqia5fH&4wskJm-q&DE#; z2OK{BW23(+J^{NRzV+5csrBA7QS52|nJkB~Quxoc)hBpXt)c>Gz;0 zuEd(P6fml%PkPT_lCVaPpRTWMtZzJa0*Mx3Z(f8z+j)r4O3Fnc(jfri$K4qAf`V{8 z98&y4C!2qhwq%a1p2C6$kuS*YH6{CFbfuASen0Yj_m=maTdqRZn9((do^_=g_dVRV zY%S1cjGKz?2BSy5q^~+ zp1^;05I#x^2+ai`HDR(>K-CMDC=G$Yzge|#j}B32a4v2@*Em3Dk5~n1wX>EPRzU3> z)yfJT67-MLDlZjk)^Gc0$BUH|qoyk4y|UuPl8{>kBj;I%S|i3PE<|&J>V%IL(~ECMl{^Utir+j}fUiG{1}6UMtA zF*h5a1S?sX@4k@NM|83l5Pv1>3bYhiD+%bP9p_L0JdJZ!`hF{eqmG+POb?a3FlcQo z4%KOAhG~@8(tvXdEfuX9KI1cV4?Pj{O`J!By_~f|&;xT?6a%)gVur-2a0!J%5CXNz z?jWM3ahU4P0QO9TKQ}KWC&?xKz80vnETdd2Q!{zY)#8z4_+ZRN5r5krvz_taV6085 z2~O!C-V)j87KE18up1anUSvB2v>#pI%_ILN&&WPz#1z89%aqJAcfdn#WA~iybrZWA z$eH8zycM_SE^g0F+%8-sxPdF7_S{A7@{0*x=5tsw)A)Q2>u0T;?Y7h~QN%-GdUlbr z#ZE#XOl@f<0{G;D9)C#ki@NFn8}ugUtV_y&5vPB6WTLY&PEiXFWyw#rV8Zi)qcV#3 zOCQq42e%~zF%djsTL-c1mwws(D!eFtU5fl=nqY>P79DUZzc&0|ihNA(|19C$Cfsq8 zv|9t2HxM>`51ow*iXoq(Mf>|1hSk4_r`45*raVRK%fr1R;eTle7575Q?|GHR!s}rc zVgYJC!{%rH%xxt@r9e)B#;(!A|1diWI~`#Qh89(wNtB<()1ofZt5ICN%>j^af85&@ z23H+Poy+I4zPP|#0L10x)z%~-SMA@UY0mSGTBWuL;KE8d-=n%JUKiuK#1%YkPJLLz zka4F-xKvXrSAQ-J+~XkG*Nd9Uuv95722Wfw?80x>y3lCkF~bPe%i@~N#0tAhj4g4n zA{KYKWp!_EM$ly2`<7MLJ2moK>a48HpdgxEz@O%};ajnB_(iP{YBt2mps{{9;-HJB zvS@RM7@&JN>K-4TS6M2q5}Spy;mmnAlAgyXX&+JKF@JkIM!p|VU+Sa`rESf!k&f1Q zC(_W;`0chjorfc6?O$@vT91{drb9z6^3ix&q$xHRd!3R$pp2vDit&+L7T7el&Ex)2cN}oT0TMcOU?>C}E#XjwvGsPE{?WB315*MCNji#k$Kbj*4fh0c^SW5j5~L%esJ zkVujYJHqB!b1h0LEdFi;BJ-Qf^F)822zjoQLI+kdsC7wXPRZX)lc9b2!DM%;)bp8J zQqifl!3m~u!fZ)3PnuN0pOQqdj(G*o-YiUj+>edYf}XZ?{qo339e;vM*-(RpV4-0^ zH-9N#DW*q*64Vb7%k0|pu$M*9-uuVjJCsYtBUFlu)={>P7X8W}wuE{k(gY|(O~qocX| za!Sh0%qE=0nNANsR7a?zI;_g0um*0>)_+SeNheQ|C@s!90b-$Xl#gS;LU0V|F)g3~ z(v${VO-`p#7I)~7OZ!#+5Cd+V@P^O})~$G%OyWWmjp|8Ka8XwQ5UhCqc`DN#6%QZ! z(8TBIVR7WN!2O_k59G|;7+ZEGI!LnUOb!x&$2X@ETQtZ?jKI6(#jE1%ENw0TXMZd{ zPCc@=!h%T-d_mG^O!5_J_joo%Zcjuty`Dwo9#H?uMH&ao%XK#s5A)kv)4avYvbAf@ z0o1+}c}kQ(WM7R$W!8F@|YaINn~V5pUfh@`Raup;8>e?mv6>?C0-D!}A0MyXZab-+!a@FemP3 zJWVdD4tgMGT^{paBvAAKOkH*mHYbvi2s_Vt`Cp#@$Is$dM`U=hq~Ea&aM+ohMbghQZF{X`;3p6Zxu{7!&o@#A`dh56HX(Me?L&En$eGtKLcJ1 z8cn|&Q5;8Vjz&l-w^lyUrX63&F z=3{^0w9*3VTgG`ma37oCzS&AE$ZzRPfqjzY6iS+8LE+fC$@22LlM@#_z8x>523{x@ zNuX}&-9i{*&{7oDUQOE$q#T(P=pIuLCaJk30!0%pysTAt?%82|M1LA)!HW(*<06gF z;PEeu1Qfsgv7|OcBTZi4xXF~@Q%{_`t93f)OCknhR8lyGzHtFSeJ=q(eTM*`zFW{# z`$ILs`c{EJpvt|cfN&!;++2)zV!}IUO1j)%jCW$fJME`6yMAUkDQ<|;Xek-dthgsyvDqqVXqEEwo?qcLh`W-vSy4~}50mu0` z;E^hutj`WdD~|LXDNo7Q7@=acMD2b|4)I?$PsZ9g9HB^Quvw7Iw`lhTSvA_-MZVE1(36VhJU>Pcrw?nQ6j()he?A+?rJvu4v;d63(*mM`do zk8r+lX((`&SPOF>(nXukwUn4+8TFY>>-#%Q`x~AEO=TueF^f^aD)XdTR*;sb0_n`( z)E-w0>vR0<>3_!K9{DyX9atUG5itnX7Hz5%s06w3Mt0f$Q+^^FIrX4FBSwMi{?XD9 zM&Pdb4)9&1Ni-(N*Pt1-z_1G&@V&wb^OkNAf-rKY=TmcRZpln>C<15+8+q3;1WoN^ zu7-;2-Q|kX(s~QGTYGr$UFCX5F#|N9Y#6*65+u*kEPvBDc4DzO@MFyn&~}i_tPTF8 zl{Ya&KfW{wkkLbM{iTFRhjI9G>Mb@FXh@R!J=xqJiRV}iw3L2wZy_Gnp^N+1cKU2% z0i!xsy*FHZve2-dW6}e_C*Av`^ayh*@V$ep*)tBqDr+6GEFMKm38L>wCF z(;!U|odGz(eq^Z@`}n#UMWwcFiDVB7Pz$>bYiOA%8<(TZgvF5@t0>eqT-%+cG5*ZK zr41hs_e@%|vNyHnuJM@=t5Oa(JzaP9I^-9sL4U4!+6oy4h_mLxw@z~E{Bdq;Uc}vK zTC3cwY7aistdJXxs`K|E_WWPIO)WoRIJp!$P#s?hAce8EPOz{{mn+7bkoiV7S`zoV z&E-z`m3+}9$gNAjN73`8-K(r*SikDHMd+id&pSN5ikskrW0ci@$GJahv$mxL!Qp8a zxdFeI_p$*r0WX&LtaU+p^-!j$$jo%TT-v zC{m{|2G>4vmj|=~9e>B%M?jjr*eNo#Q=E#~%Ufw}fhPHnu@!^zWltGVd`Q9vu&3b( zGDKSmx*g(cAzpyO1im_yF@n$Sy2LjDN@mO=4B(ylax0(AIU^MZ*Ez77=(b|T{WO3?wha#p^2 ze|n0(X5_es@)0VM$|wGnGDB+47+|^lDH8SNhP}s9Jm(P|(2VF&pN;UJJ$TxN|8{`b zI}ipZB#0giw87>y9_--hxVaH-P&=w0cwQq9`s^Vv3s|bYxk(q48bK-G&~{8#ehtO_ z55pZT6cD0sV1E^-F}ybv6NC*T@6yr zi{RxA)0keB-Y5J{$se1sUCbZFF=3z(Nw^OolanVf3~vnu{#lvNNB(Cm8rgK z6mW!eLb@r?ndHnJ(XS(!T*GuE97?|-C|xPvYxc(Hb{Lw9)O)7Sk}OR}io4U`ah2B5 zG6H2B{$tDt?6b)5qdqNNnN#ZSgn0c74oX=@!R36-N9GZ;9(`h z${Kv$7(5~&F8>_lYV1HaBDgV!h)BLNhj<*BhIN7zaQiny*tCd@Hv-IvXP+i`GjGex zJ%2=f}Eu&?3I^gDXT_$m|t=OJ7^Keibe=^wZu0*h;?Ve~{z#7h+l zFqwL&O5@={VmwTG#=~jvhz4a#GjxO!HB46k61PcI8o8+WODkB1oTuBND|XSV{bp<= zh>W%Ch5Wguf3E9VzfrB&A`$NE35h+5cYnU+3TAjil8o&>9+87scztXj^T2;T)<64C za*Z-m-2_&A?c6<1GJ(Z0JRu$+-Nm$|-klu}|O7QgS>U z<_5jdO(>}yM>_;og1qIO=QQDAmSf!t<#o2|!hd8g zuA7@mssopmAiFX(gxWOd7 zuKqAY@Eqa9m ziM^GT7d!(v+n(Yj3*ZqOT{MdIK&=|CQND<#q|?)DTTrt#m-t>+L^uMsvVY>%{EL(m zNJD8-MUz-QX8$n>EJ03@x=jG)`-_U;?ZCp#A+S zKqW5Q9C~Gi$?eL@N9V&<34f|S0vI2{Z?q{XH1*!VT7Os+m_u(@28r*I6@wpUK$Kb=!*VMa+^cwp@5%Zr1*k+aOJGOWSgc5R zp8<2X##DYVbmt;TrlM8h&0JL6Fe~0#VQv95cPJbERh@NVWre_;bSZW?{+5Z{T3bdq zTUlFwZOf2|6ZwHR4LwtDodC%?*C{ZFNo^If1UCht$SgMS|Oj|SVeb!WkL{9yZ5>&}mVrBO7WpHEe7Lw|omtzYG~`y;fQ2wB2IC%#s)+91RyS#JKsMTo#(P zj4ch+4O7OTt&p-bKRgOL9qiMe7u?t9-WT!l0jaTdr?ziWVPG<6UceKsoG2q}lexA`!XckXo>u+u_31Q)+69Alu^v**23ihL?MO z1ALQi`I>y#+egUE^Q5PY?#RpAB>ggfO(hW=p=gzDD~Hl;O^@K$oe;inTQYnBIu1g* zgW-YLl7o9;M?huk>;MY4pqzdH2*vy+lmrI`7SWo;D88EtzfQvg;I?FobV)Gc8Pw&J zxoi3wiPdYUnHTitIp-Xs3cL4f!<|;+v>deC0bW-VZ^zeBM&?r;uyd+JV+SaI9G{{@ z6id&y!)-<6a1wKyAB>$amTE33siUWDWz4x9?r<;??iiqEZ%EgR@Q_LhjE3scz}}M0 zT3^tYsJuv{s}AeruypVzfi;{~QC@ZY0N^kG9P+Pz;LWVANATpB2Gc0AP#NksA}pvb z{ozQq&qd-hUR!lKtBmoXq5rLa0CO&-ICAwK+pC8QXN=u|#CyX|CvYZmdtb6E-WTlo z>ME*2#qYJ7n;l1-E1?rtU}9N2hRu#Gl0?ntPD>0MQ~xOxqdTo~*&SCdYrN16;M(i} z%-I%{J$5QMiN+^aUMovdB^Bnzj+fMevzp+z@93zkN(R68-U<)E>3#%%HY=-~c#i`k z_>kN#C;HHvvC7DmN_ECkJU7Dmv@lJQ6iY3(Pb%^?kJi>?j2;rO z4@g>wSsDfwt`|s`tMSu?Jm5^ULQ+#AWN%mX^|h*R1H$B`-jx1>e#zV~F}O{m$~9M8$lN2rp?H~*&|DJQ&NIRw>6F|l|R%Ax*p*HH4(=jD) zhQA>_xxAyrE}6@+8rbX-ozFJXfM1(E*WPAt+5Eg6?l}>EjFG^xitGS&sjV!zNf)gu zaDY2VCD|BSnu$nM>>4vlBiOsmNbr)%og*pKF`9`AjC0@`mmCNwA-8Uj=8N2ZM1(3) zQ99N9bU04K>LhQmI?*7kx*LSGjzPjO329A{^4}Rpe#bZvLf#7&>NKs2Ujop$&eT$m z#8MMhzX!B`Y$#0HvI+VMJ{tYDLQ`iHm_=l+z?f0lJRP!d?F@NCfwDU)X4H%GvNEWf z+qQXTZ?j74ay@I?=2_b|lPy>;+>5I7?l?|THcFk`>#u-~!O_K2wiUJJWk0T**DtXA z%OXEb&e#tO2mVHgK0k@SpYi2Yg{GdRecgyvCqdCn@~%GD24=@%mH* zeBZ^F-=<;z=N|iAygMfA#*qKMu;;<6>zv z^)XY!>#SLbPB(hb0r_*VXfKU~kxw^#fAD@vk;*Z$6rW3|{L$XTzVH@&g91|h86Hm3 z8w|fj-hx2Yd`G3;XB^Ra#UmKxTgys}j+ zW06FJfJAn#GsUIhTeR5Y!-T~TdcL&4==oZp_K(6NZG+j4l&Q&gAErq$O{%Lmata~N#)fOop@OBJlvfT6n10P}I&Ou~qna_`4kt`7ykDRko+9$ip{?gsU_?)0m~83{c;2#XRbze4 zP<=cz5+amWJxTLvEk2qBp$?y0Bwz@IUla7JO_fb!jWD?YSgb5O!(QOMF+p<` z?!+AREX#n5i!s(}jI|tNt;cxpK`IsPX_6=9 zc|7^On0|w4>lfVpGsSaj5kG#eS>ude&T zApoWu;c0k8PH_F+a}jxg4lqA|m%=MRETf$^hIz$G>XV_$HDWrn)CBrLCY5QFUs0(B zx>b_JMO|%2`2=W)_lfs5x6B~;WE87AUogXUXNKs9xVlc;ni@f_QB+2l4L$xa6Ud|f zp!Zyoo>{oofAkI`Zw>0O|NMD|whyS`%zi28lx8Tk3;(kwjW5ax=o&qL!klbgf3^2Z zI)s0N^{4m?{tfy)`iXyn{xeEeE8XiCJ5Hh5|Baux=b(2h75CA3E?ku#IjvBNLlur4H69@8Ye|Aq9Lg za&)3O;chBi`j`3btU{Q7)G66?Dzy75;&#${D6h!!`?Qjt$M7o-PAiI$i$;*?m3LZM zgbl!hSj+7yrIJv7ADA3U%Xl0agW=%IP3Vd#oI1rh-P0O}1c8QQ#{ezFxVBkHl9snB z4?V;RX`#E^7siU}aW45t>3wV4qu?~O2G!Rr9l*6*2Yk`uaxRj8t6HV)l`CzpOli9q zQg2XcmZ5UR>59iNZD8iIs*%Unh_he8)qEK-{BuHv;dW{(A`uL*1jUHJ<*1h8wh&YR zfKUzOmU4hVc69&{U?mRoBP1ZO6Ej$ENenF_^4p0DBpwF*C<)lg#fDDeHWO87Q!{bs zxd{kYt^g*&Rb7>TLVUte1L2H@6eQ4YbOGVC$*BK}F=^Grq&Z>IHk6~Tv4z3fFszHy zDrSHo=FC;E>1zvc2ok4HXI}P=yf3s30O{)b2l~w`n!lCCH#Y18aaL#ghMvj%3s~DA zfsGwgL*OGit_&^<4#=*$kJcB#UdEWHSsBoKdfdBcwd&M=zcuedbho@W$i4Fgu;LjN9z+cEUO*E%BC(*lJVTao4Q&02G#2t795`g4SMpDaOJ z92n-cDnrT)F8(O2I0N$;I4()_P~J(VO;C+Ug(3#0enMx7!_i86m={wmz9^{Ve8|{Wyk?EW@Ps6dqiP&sJ7mqSfynqa*@TR9Nmw%bf-V z7ugC4Vah#`wC=1$&pT}y875R3@k8` z+Dz^mjp%`~77z4Vz;81GnB3t9u|-G2518u?ixAMhwxaE+?71{Hq@^BJGPIFQcexwB!?hVv9z*=K ztHvY+_l3+zmW*u2ST^jPtH?fS6_q zs()E%Wo0=%hk-ZBMiXr@G?|!w#Vlr5c-|aOT-)E4DYm)5hJsH>qB^)xcUBmk#RG-g z9eu9W8tEX3gzN--B=Y4)k9>%(Fv5%iaCnXfQsE>aYaYJqaW^PaJ1LL?w)=#c^%9+q z(T{Ch8@qwjTnB5;6T{JctWdigjc|RJ3V++m9J9PRbNn5~;uxtS12Y8ThOu{Vm1iVB z%Dd9Hi z7ZxvK8b36WXWoaEA$m;b{BxA^PjDpnR>g24Ef*jBM_gGD9sRmg1`n$TUaAO{iMwZ#;X}6Ui5y zPW7jon;Ni?!?-rj49^pX{45@x0oMu(Si0UIe<@s14vfnft{!?V^}PMWr&uk^9}>2o zgdY;M#IhpWMb?oe=Nxd(@bqQQP#kJb_87Hr(SINoQ!3aP^{<6b{sjV9iAafJl`ofS z%K;#NUP<062i~d(tHT`lDo;q`*tMbzfT9?G3&@y%{EbbLv$(9_k^h*}WjU5ufh(Eg z@MEMj&9Q(I-n&$VPBkPxbOstT_G%dj4$tFWG`uJuJ`6mme+7t5KT(k22wJc`1fTjg z3xxk`0V6;v**-D(-J*`izr?67j&YAfn;dX|iTJ%dD(_ittI-z&khQ)qGx_}BmcINj zrm?>24O5ajB-`s+TTyzcig5baFwdKXwe2sdtsW$=IfDHkJ)g<_A4w7IUN}1(@oa}M zmc7Opw$YqLP{G@`nzEdh-cz=XF;=AEk{Y%&Tk@6J@;1(VXF<>+>Qgdp5)A>~KGt3zRvX;B}!jnl;wQFyortx=vqHSf`n?$Uf(81~VpYj@UU@ z9iwMs=A2g%saWVPC}rzP|kE-wV678aPkat9n{Nc ze6FRHJaRn-QljXn;k|U|IcJ%X?))6DlcP0Rk_K z;!Goi;`-B#Co&rEb`5unO!5;r^51=J;V#p%+etYkOri9LGie>*X7%J0qZf`Vt~Hk{ueS~ZXFgVpA|FJaj>O-VPQ(*^ds2M>4wZDJ{) zB(&QW|Ey{X$;W7|f)0O=7+#zbrUaNWqETP?6|0fyXVJ5G!95RS3Ta%3?xx}Q)XFDP zz$e>X12r5O#t2La^aBX{ZY(5>trkJIXnH-`_!>5uqCrQMEL!lo!bkyrD%-)-_C+!B znl0LEOw!doPVxjs5EdT%zKE_c(HDiEMt_!+p#?V%=tYmR?S+54u$q+LOA#tncxj!8 zydi}K&^Nxd1Qyx5y~sKg*))paI7ASA-ze>PF+FT1@8_~)P0~)dg(FE3>qQu6{&)bqMqX6ny zbkF{*`JtGkbS8hfn$90c`}u~`2&Siyb!$6Z0I>kq;$x69^J4%vZH$;a0P-6DGBL&x zq3SYzQPlY)nkI1xB^G{Tn&QK9#?#!s^W76zHh!V&#ucw+(f~@NdtD%Dqt!@jDCfY- z^F#<@j0z`J!k zS5|&cxIxgOdr*hU3f4iq9J*%GuM@BWdz;Yp7-m!<(B5qHp|-NJudVv*0}ubh#0)ZH znWXoXRIz_M114%+5;daC3+bBbgnh3f&q^WXX2@w=N2U5v$r`5SP6oz;+r#bu(|~2K z30PDH9?`ASo;!x8w-(oX)foHg->ujakWbE8S&_7zCO76oCe8maBSn#-^Q53;$ba8= zUtr=4gBV0xK~X>BR=%|wDc%_Mu(GmjkcF-HNMC>bTA3E=BdlF&fyUC_yN1Y3$AYz` zZdz!k`93yccL#Tn3%N@h+*$TTU%Z;ry9%6rsj`N|{Mi4lER70%7ItMS(^hI`>& zw>*!g@nj&q4W$)~jG{0caa)&B;E7+`++=23yockdtW8Gqxl;C`p@*55$OB-DO zBk2s&4(8s>o=nDPk!cASAGRf=ZIRMx!2^^WWY*T>7%Mz7wg|HhRn8fG{IAuC%=8p% zQ7Ka|=TKSVh{C?c3y_6MrBO&I=7LDwjOKqfMwLgvG{rv#SFspcuD3u-0)%#FzIZK) z_-wNYB>M`%y&4PXMWq|S(oJjjcLBAe)FqE2c$e7VU1Cz}i1j%h6Y&N$1#3a+Hnl6MU=q zOA)le$QW)WS~a!&(=+%ZOiG+nLLJ zeIj9;D5(Oj3brsD!Xev@C&x zSif-$tJ8PF-F}95&+JzPm2(2=X7qC1e)&7TdyLlJriRSHcWXTaPMk%R39w^Zl!VKZ z$Z-10j^Zjd+c99+wTvPd zEcfST5ARjTe6#(>NJ9{MS}?E|ZZ%q)b(w$z&bwy!<(uH}NWkMtCr8XJDeASwQwMH9 zD*;_!$_8nONp`_kfZUa!j{Rb8?!tqf1_%a$B4`4uGfA~r)>WLGkh&^Cz6eVklhlwS zG;n`>!%>7+Hf^q~76j|228Is?#n7Aw~m7Wt<3Y%Qo7nY&QL;%GXc zL!F}&lJu_c^Cv|slPL|DB*uO_jC3so3C`;O1a9u2rqLqYphY=M4W4_pjTK8 z>3pzrC_-@#^-U4@py69)H=tT27;9FhvWciK7b4dQ23frz|oQnK}pA?lvaY- zpmM=5I^DwfYfMG~AGy{{U)Fez5(}-fq(h(D8NJn{Q(=x$@Z1)Lj-Nut6tI83a9PJG z|LwyJ4BPfp+y=wOk1Y!vYncWs>Z%#2O*@-A(b}Apqm2T_wY<>bLz;}j9r;|1_?z4$ zU|{^Fpv&mO`@9;$Mi^aw627mZYepR_1`KF+@j=%(=xHNi0)*J}*+iyHoyHi)wqZjv zG~Nf=ioi$Wq%2aPxabbXrd)sIfEaATKF5i;?_>-W&tIpS+m=f2gQ)q=?1{ssW^*!* zM~nP%z4r`&n!FDZ`S^2Y^Yz6NQ^P{e;LnhG!C|6#j$r#hV^hkTn ztw!>iVrlAGZW~e>E|!VS)Tw>EPR8>y=egfEj{b-ApKOb~n~gV5WeXx6f7n?f?DmMx z&ZCP0_T`aW|D}#;o^*eS?o#@3+akg-c#0`oN}GO~b(juP_jK-suQ0#-fMXMHPsEVR z!fYaJE_(cAE%)*NoesO47!LX^3C+Tc#dP{I1zG=`dbcE*3ScikpjBi>`RXXVKPE;Z z)IRX-1XG1SxOI}Vg_9ilgPA?aQAk8<4=1MS%==GtBqlogYZHI9Z*Rp$T*~OPkztCK znwu+qMOp?yUen55+E|;SZEXrzTxV@Y;sA)X!SH@Gs*I5{n$V$ab4MvoLC961it|4T z3n;W$x^Y7{D>oz$AA5I{7K!EFVpau{-|+_m!FgGNGX0yrFq-6k7iN3|D`0~N$Ywj| z+nd5kd9oes^RRzf7RoKSb>Su%^sqiI66_seRe&6Gc9ArIq@*p^B(&s>udT24pFCN8 z>bGSHm7S2Ws4R*41>TdY3q5`=?(UJo{Q<}nCXsfSO+I7UW6nedaX~3S4}V(6Mr{8s zkZW;m83@Y33nva$5TyWiTngY#Sd>_mk&Tipgq@282D^Vb^@RCXPB~_zOxQ?1Q%PYt z4;6vATlL)=__>w3aUjzG{#nPH|ucP*y)&PCTp|Aynj2nkkz1R0m&usV{bC`M~b=s6=lGW?;^1En7KbXzVQisTt`S-Vp- zBZEaq>AZg#=hx0kqbRA9A8W zc6#A;T_PEuCYTgChrRuPhzgCAwop`328VgciYbdz_Mu?=1$!MG&DmKQUc;VG$X5Nu z)pk(=7Y8sPAIHH~&Q59+;vlFDdh9ZumdLbr`cHqmYu$c_ae6MEegI-WI*Z@Iegqwk zDs6qPZHde-*{N~cKsd^~|9QJ!b>+y)#{N31%sk$GZ z1`B`Vt>RXjd;H>xHr^us6*qiPc(FEp;;f#T{FN;_IAj{Q<_4-hKHlHjeEISC)z+tv@89o^j^BUmzJIZ~d%XSr{m$|6^G+@B_uDkQy(qzt zw<%)Kq(lO8va$k?WqpC1SV<%1z9eOc#d6doc>n03Lkhf*J|t4KkyYK}{O+dQimi*h3Nx#*GG_JySjf z0PE5a$igB#n<#VbWi6P{OcP*>aka-o*pXNhDpQ6=R|dOmB=1Di2lqSHY078KS}3S# zmY|rCMBDal+BU~Wk{)r&wfYN`D@uQG4=5xwE+t;GSMT>o{OS@Pi#)8&%&jV1mEv+; zIi%px`BcTeNPSX^)%#Ef07elqjN(11%1~2M!pOQ`0b_X`*6~%S;8pa-_lppGHj4j6#RL`G=0makA-&`L?kmo|LYZN1HQ6}Bve|#OQ@q~W z@MTnC71uYHO-;Cfzr4BO2n7#%jR!r$gPs_nfW7>-LtfA!&u=~C$iy@cd49(s$2dj{ z4mokDVwvEe3pr?k$DD+WZO0sgSyEzj42b+Zl_XmXBwHS)hw%}t0q|M?=>;^$yty#< z9eH4G(S&oOkA;W0HMCElVFJnXW^>>e1Umi0d%TiV>n^oIQ zUncQLaNfn-|qGF65puXCZ23GXoT#5M?5ggOo_snqT>{ zjkpO30G>j3U@xVJJ&x1O+ZR)VJ(Tab9xM(N)BXq6Ht?x5)CC>gmLOmnW0fXa7Xrx9jdCBGbkt4qVIilPnZ!g+~wI6?b^>S;ukq-Kv z6}?gh9!gxfapEgF1t!4s?7}~L)-(5KHkKyt^9lb@OY=S*{FsPv6lI7@H&9q3|6Ft|x@nv)m~Wg69| zi>f)rpdRomXIs;=_#{sjc1DGcV^ONZcxJrOtpns`j^+5Giwl26d$(7B636070rU78 zxOcliN1u>foDgx!dENp%_~O8HPT(4s@w7vxW0{Q(8K=)<*A&n~J z@rPYc>JK|(S*#<&T!{KraRE3_JOJB%Dr+RCQ()>kR@7bf(izWuoJM82RG(h|#8vKl z(Z%2=Ob}s+V?=)+X)%t{5sU=Tjnz2U@yw$V=$oZ9hSij}uUd+@G6S0=Dm;=`h`%Q9 zYADU|uqgwI@XOmO&hX+|y|vYpy#re|je%={5wJ*TE}&?MMd1ZcVkrkS#P_@l_@}kLxL1^$Yc~D!##;9`Nz1mbNg0m&@S+E&)uJ`r!da0i%~e;sGRo zLZ5=4e|~VC%)j91r}0G^jbjhWK78;qW$e}g>}Y{_t6v^mm%1=@@pHmDvl1%&99<+o z&*GC3bz{{RaZ7)zmH?vz4N`K7;F`m-K|L+Wg`d`9TBBSNPc$3**TBigi2AsJ4i`~w zUL>#M^Av7BQwHC48Akj`G!~BMXSf!BWwn`SaXN_s(*OyS=~HUf4a4Y5}@32u5r-t2}+v!GcwfSnT`D%SG?pV|h`y27vfG_bW2ZZFF zX0E1!0bwEl4jo2ss&0qDifb=$IXITgf7EADel~(7vVd2Zh#}|v zY=qZyd3#R902M%E6M|WrCx9@K#GMu?92a&T0=)dl?dd$v4}Y0-BP;?H#@!!rQl&|j zRD0!c81;R27FtCH<8GOp0d+fn#8{*x1m1gWGbd zpv0Um8@ujyyAk891{2XdJC7q+tTMRXtgG{4n*89lOEm zVhI)ny1fv`Z*Khlh?dq%K=&;18OisO0Q@f2;G&B{drf72ACj8kBAS-5_g!Q;;B@Z= z?l>hoT1tdO6DX43s^LYjV5B)ee!%a-j}st5Jsgbxg_pkM0UCdEGt_9OU&p8Xcv>eo z_c{dnI_x@&VfQ9M=grnfpuQ3b{eRRr=*cdpG7!f*4Sb;nNd8g+P>%C4+?|8{w~8}G z4E@DzKa%Yu->dUqgpew7*`gB^K#`@Z^(?x@ZJD-ei z8Fu@J$ePcG_oIK0Kt&gmtH4o3jeYD|!o7Es@US1Ru~qmF;2-P9>ufDvKN5hj=qo_@ zQx$dqFaz_OSDnF6Iq*F{VVL%xgkASfQ;ekcQ>4NX|5T`-2++lXIbi&!NeBVQ?U4QqZ(<%)%pah&F`A;iy9a3sdU}!54AUX@p2pMFiLR3Hd!f84+3I0X38ul%JrRc_U+_ zvaQL*K%qn}xFZ7u86lrK4u2u~?UXt@4Gj=EqD$b7@p?wS%}>Z2(x+y=(g<+J@ihLk zMlkYelKp}bYm_u4wneZLa_vT#Ro5(-+#CLxg)oSjy9swFu zhwiK*cfv42EsJq*v>b&5LZAU@W&L1ke&+lX#JN zN8!G2PN&fo5cu>LV41OjkqsVj26G8_HGK1YLMj06t7#OU#V$sP`RDvcbe=Z8iCsWs zu}Om7He69^TyY4*p{ROfB8<{R7^$ZjVzWX!swg?C;DkEz@y35DYOZ)|!W`Hj`48V% z2)luJw*}(NaQL`F<&AaC2WF9za7076?_IP9nzRV!Z>LZM2zUAU<{wc{9w_8Q-(|q z%HC@9z39yyK8Js+HzsiO4ZdY6@l*sf>yTHc@iga%x48le!^s{_6Etx4 zqVSifn@kALyS<5)&F=6%ENon6WxU4pCX?i>;zledX#%`%9yq5^zyQ<)54cpK$MG6P zJhaOG(i^zqw)n7jB*+I2sR{q;k>O?TI`nDO75f9gkAHu{AGkkidAj9!a*F(3f}qJ= z56*y$X%)sc_p!1vb{KatuBdBnHMI(}s(!%Yb0I}&wM24{;kYZ1ejpJ$0&KIPU&6XC zA-W#5Ghl^PB!i=tygzrhD!FB=3|slh9fIH`En0vbZAyYar1cq0ci0`p<9ZqkX{(SL zG@Af|QC)ux-Xn=k?ci?eOS$k1=ie;tcp{ieE*3$gffz%GG8f54Tp6$e_19!e7DRJP z)WBu9*XXtc45yq)BqS^?Lf@(@n_eXFwU4IZZyu1->9sAO$a#$frA|*EaCa$B^q6MpA{kS@dv(`4^ z8X9;5Wi<^SRQvCeDJJB?|nyg+ylc(H?gV;Y}r7ueH8k_-1A3fIV;%j!6i z$>}l1hj52qZ&eL!V3`2=|BLI(JB-W*pgTBn7r3_x$xl_s|MkC+s#e|po%Q7X z84IeqQoYD!>=;)(Kl>YtY1EcWs+aPk{%9?z+2!9~Rl4`5o*tZO!QfDVgiwyY5 zDTzLpz7^AHa>fT{PxYTTaMq+7N6tKLYE=<`>{B%yu5t3rA^n|gx5r{^x;S@>MqnI( zugF2z%h85^mu>zB`=*M{{1v08EJil-v*<+84BBYHb2%(aR{*$QH(_ZFhMYubqkFk= z1CRJ4wI=tQ3a@i~!7ITm_zN;~Pt(7$D59mrs0q!T!=Y44B)AqMA=tjV%??(LWYrGt zI7!7NV)zv|;e`@o-)D#%FYw(H0&qAmKv6;^Ab691_$^ugEVvnqT9uWB?T`WnI9Rw5 z*bT80{Ct>3Nb+ph(y+w`!>lVw{cBMuNVqw%kd-8D2M0Bid=%sIvN6{?7=N59RC8v@ z=a}T@QCi_F1vfJOdvoEfA?deh_(Fzx(GNRWfvy!7(-^(|JM65l%_~c$Aqg3n@9)yP zE|9=~r*rmlf(o{6!|hnmv7{IXrD+I^yGSo%u40K+Rw5-y;U&*?{Y!18ZP=AucC+Zh z`x^e@w)oYjq^I6h_=|TfE#^+^6o~RPhPiMa^lI)itHd-$({n5^g_{AiJCs1TL$T;* z;iMRoPXltyTOwM^i>r^(8M+^Noixe6b$oVzq03orYN#ctqC;Q~E&yy^h2!$#QC{TZ z_y{U}4=;vYdb+uRU(ms(+##<+?>qkBG(7hrn)D^IcBk;?tnXdI(z45?Bwuxvj2rl{z1_Rzi{txG`H$MHc0}(?UKJ7fq;pUtUr|y=t5>M;BsT}BBl5q{nLwE1>-^TqB~XYPCN zrf|^SP0`rL7Yd+XBgcyDPO~u~Yz-3`t_zcBiKv?BlrWaC`?4RFu$njxXh=(}x_}<0 zMKXCYO(tjYup=Hj!LsK?p_hbEWEP)%ODbRG#z}Nk7ybtjpBRYnuPb$b;YeG|BQQS^ z{Uk-%2|CbnXU@L!u}OqnYN_i>z+XisZEuBFOJtU~xdEgCh);@V^)LEzN|sKEjJ%eR zon3H=;yE^LrcyeS3yEg?eeqfeD4ggP6VaNq+9^~uh6g7-NDAjegKWLPrfeuQbbB> zDGcQ(xv=Qh8^__Vhk1OYkJ>nHoHf`plm|mCl@(Vt@Y${Zxl#SItUb_%cE3j67jb~Z zaZ1W1JTnG}T*BaT*C+EY?A_D`p6ILoKKxbKiR98i6Mu&80cHAGpKREOSDv8ca5cs2 zPvL7^vtMZ~KFM8!OZ17?*Una97E7x*mWiwsEwku8xc+tS`JKNw3)RuDxbJ|dC631Y zVue&o=u41Oh>IdtdepJrUV=|wU>wGV!;qG)mkt%aT0)S2v;<=jE|P#+lbl@0k(`9n zz&dz10e@X{`u0~gnL^b7vX!)8oSRv;440OU~ebE_n7L>VSz%EPQs1Hg~CICjed{4 zYd*N(^W5+PZCUVZ3kG%$Fc!j+F;`gM8PLN;U4Je88;$Va@C2Zdbv#B7%Wg+1D?fWQ zusQopj_v!E2RP>%0WU3!41tkL+a(zguoFmfm7+crs1A_t2sB>LePIh^?1BtJ_HMWz zyx^am9g!tIxN*zg;~2<9Rvxp%uSel;>^mvpzOrk=i(eVR@ZdM5&|DylPspUg^uoRJ zk$+`;H$-TBcyxq@Ilrkx93i^8gai0GN#oIU43v)h3bEQ()D6RGNdzCB!t*(i5Ih9g z1w6YRIN^j|a8!;vf&N`hQZZe3lj`QTh?+FLd=E>PHzq7rlY#6aEM+ zT{OMsKLe{dqp1K62K%E54{~R+f`U9Nu3MCesW=}ca^ONbK+chzjo6e<`RX$t#ja6p zZe9_RT#yG1S}56F941Gw+l_bO;SrE&%f0`Hy*Jx#8%Y*Le+9;NtH>?@#>_zlbAQRQ zTpnawmTXs*)jBeWfrJDOO_0>cwf4hZ_XF-dk9Xbk((8P}IWPTm>reViZbW1PNRZS} zRb6{`?^btNM9!I!kuhXOMi%FiWfC(P@k>*ebzOjbn;~%fP%EVperyRn`=OE<%})ZJ zh~|3xe6YnhUyLS98%gp;`z3+k@P8546}zCcwAYYtE98WyU+gxqh^;g&dcSTW1T&)q zg`jn#t_z)68siN>s&C#jfxyI)_@e9**C+CO1}oD-+J4L|M%ZkZFA}W59hxAR`4DCr zWb1rVZ$mdki~NO*MT{ zS%PPIDQy|3{*iZ8A{}x~mSd;jS&70Vo-)Q)`rOkqrBeG=4|u7p;TEDp>#&;(vP*D;p?@wlt?o!Wq$oT^!4&pFPRDrXOf;iZ9u)2G-rW z_yuhk^~GI;t7=tt^O{6cTW0hq-JTQ8wD=0V5oZ&`*?M8rx*H-(TyyUstC!d3{!lXy zE!%x|bnWb1yZUuwyZ)r7gwb*#p~zvaegt`<48&ZJ9zTYR^A_o~KYtwlDcn+D99@}< z`nOMd$-3$|M?5o%Jr!V%46D)c&uDa-M4507Q0^E~lHwzc&UcXrO{X<^Q?6H_gv5~} z>378&r>O8A#!7euxL@?yd!onyQ$Vc0+gp3b+wb4Md9?%8@EXOq&Di@G*5W$9~Q45c+Lil`q)n9CWPo~xof^~6IJ?_ZmkMfrTy`V^3~fc zXR>19`|0C$p*U_52%mfvyfCaERZ<-l$T8J{35QJ8Vc)0X#ZQRy#r_^E3d-qO)NM0; z_zae8ain!>cpTMPQn7zgj-05}I!OUT#bTef*){`hG^AZw2U`psk z=&7f7;(THtd}tiCV^Hp}8rpC3V(+OB3sb=={BSEnPcC%6g?i74;nlLr_FGbMSd^76 zC@QgZW&<_jt;b!w!5{68&Z5b-kJmVGlEWFyF|fu^>7!B@9|C_#0aAU~KRQyNGkA!q z9AM*0f}%Ch$PRA-@CSX}GeXR&K?C!=gNIP#kr&g>Tu&M2-K!e;_v@Y77*9L;1<5;y z3VL4BSwr&A>+N%8{4K7e5EpN6vGEmPGvk0&d#m3{S z@#5=(upY0}OecRegI%grx_sm!;Qbu%c!u2@*7Cb|8Q;1Cih{Qai<_ufeuEV6F#>r! z0hKO~svpV$zl4hFn0$ofNO1MWx7f?~Z+s2!_IWJ6cqj)^El6h}%tqxF>$!S%cBZ06 zs{$otFac>VXGrXxFW}fggyt4|{=^?-CAB#0E4?G=#PWZ9Q`@-pU9X3v+xPM6F7H_= zZX~ViA9Ek+Po__(UsxBCDORg!>6S7qsX(e4U?9$5eneIqzS+;Ogj6RRcP4lquTQYLaU$tD za=q}QQ=oqZf8GbL%J9xCS$*aMD0WR2TxL05BeUR*H|E@+K=rNxWH7-k>=$?ud*^&Q z@sZ;n7{sO#VbEnme>6+O9k%8sDMKX0^`P@LXTu#_YG2zF04^`y?v8=b0#grjXwb33 z60B%p01(l@85VTLop^fW&s1JO;n8U)X@fk~zZHLm04XTMzKJ%CmGj(de=ooOhqS3X zi(}mGqL^+v>dNi>K6a>KxP}MrEaKDv+9Y0zqx#$9B0q+!*XD8-%p0IlwDTRcvLL(o zogc6X;$jJ`0>@933p!gkyg2esfG(n$oZlW7glMjCdxMZ4Z7MJo5Wv}46jJN5tyYc{ zRib~lL;{JlRWDW7bNy~S%Kjde(#>X}*4f{s(odB-mt>1yUF+7z?UzEm#f7lnTJiIp z-JOp+RC86xc{!bqmn58HlyJzKdANL}{M?_Mdh+wF{Wo}kyqom;Q%~M~_5I6_7=F%> z5Hjq%*!r}K0II#kZI`zpJ4nV#w^k};7C(Q_{D~(QpIF^Hf1dPc1yWiih*fW4)mx!> zMt!-4HlZ6@G@{72xx`I~>J|i<9^h$Ry;NbghRML^F5-T1@jhOK`^CljN%+e;OEY?K z0ebKNK(j2cUX}vu^U%YrTVrv`U$RpQW_?wYHS`~&K7Y5JZ0&AMf&KuuIXvQ?vQU3e z@p0MnGcGRpW*SuaL)1maSQu*@PYN46+0;!}YiX9&kV|WhcSgl3E9qP@vo$oFNIG&a z#XAP*U88$Ow+)6NdEaVhN=8mj+R38Li^#KKH#+t4&g^oQvb`uGiA*nAd^a0(qe(66 zbo6>5<#G{34kPvX4*HWw00U-&7ZZP2T=!h`OcL^V{XpnkeKsSgIti8>}u3F+NQnlodMr2Vf6zO+Cps0U`aonN~jh@@k z8{nK#GVDjmv@H+h++r+Ps!OjwG4z~u6g37=qpo*~x&quFD{4E1>e@w`SYLmADOU-N zA5xke`EURJf6Jv1K`<)sccJdBVZG=J#n*UMC>xX&oeY;|nFF&!Rks-u2-EN-s$gMO zs3f=r3X0XYwFHKHeXZ9OT`2Y<6laerp*x?TrIE`Qy)^Rq4iq@OU1o`AQF=TbP5tyZ znoTh4lO*TU%mc=&;WX7yPsV?n+bEg((-I*=|Dr9MYKRCYD+7>q`a<{u1oE~#1PNi1 z1VAN~^LtbYLfAyCGa1gNQ5hkw>TSf)D-lP@&T0KU#Y~j2vGGn;Uh*v`wm|ZC{yPv3 zd+f$KXqn7|m@v8BNQ64|r2unhJ|ai=KC<^V&30LEI=ZFc`7H&%Pj7!I2>2*Ax=;Wu z#mW}ar~c&Ya+Up=p{;3%U}9mRO#H;O0W=@|UL=4fN@~pC0S@d|7?q$Y27WmjM(^Vowch$4-N+Ul z?9zG=K&1LhH{gqX3PYqp+iRxkM%^~j7an{Z-q@q!_A+|rASxnv z{C4%d$h``srs2u?T}srXc~pd?DoWGYkgn$B_UC!dDbV$_4P!|ZnZBWDo_0B-i#IHh z1%%WYdgm33ml1!E>ogh;FPV75lZ6;ar#l098xT`{D2)E?GIT(EYFgxlBJ8T zQ)S&{Sq7jJK$r1gk!3oa`0+HGj^fxKb`!jSguU$JHMoDeg0?fWF?lSW`)SIHuvqp~ z7)C<@e}%Y3}Ag_jqUz87d20B{;ceo8St zh#5ucSrmWtGY}IBh*08~R|jp($i(S9w9OAxmXQ!!dHOR>@;Q$a>J=Wl zrTHZD5X9rvvCA21Rvf61T8YCWl^IXy`?K+sa2q`-K;m)i11J*AGzv%UL^~aTu!G;v z7z3fG!d8+8*r7OK@m_#g@M}C7T}Hzx7RO*&UPylwDyqiv8p%b)87`JKo@eHPW9${% zvgOwXvoTbT14buP)hM2`7iDz)8GBHC^E4Jhxill^(s&DJDXP-}h3aw^(Uo^d&p(UW z$FQWPxUQ*w3LR$<}}@D)DBpzCP4Cyzr3dn!kpDCfXB;|NSgP0rysms!WmuO331!O9u886Xt zL8piY2_}yQ;Rd4D3j!XVR0vW7WGv`~#}|fQMzJNLlss2V%V`H7z*+|Habn_Qsz%>* zk(+|2gPeBc$rw;7WP&G&)I?b!5G$D&J;Bptkx0Nih(Yw&N;JbG*SS1UkdA*mLgNuk zAj3NOQuO@%OUcQr&yk%4Y4@!-UB*mRvLR#_5+EN3W0}q)iu;fKLfooaHIAiGd?;s} zaOE`Zh_B@<0OvWH5YHDy)raGw%^v(A7~ludBg&KC3=8-+&a2QnME|HZ{A;3*RCJVT zMYaNZ-;pwiy;FYkZ<{?=&0c@wE;m^YBEduXsRkIBXB@;#)64`X!t6Gk47r|@a~6O0 z^Zx*G!%w>spuhAT#cpv?{3&|VJ&T5-7f?y?C;!o?UHRjrot4kOC%MDtLthDwSbykA zIsS+^vnCRv(F~Z5fY;<5E9aGHw8uQ0D<`Xw7s^g0@{s|NUFF@nTDO0c=ap!|g`#r! zLV3Sh`!i*4T}AuKhjr0tFux`qFq`7`qnJ-&P`vW(`5Xs-Ec3t+Hh(NKn+bdB08PmkPQt)NnW99-NtSj$0$aZRv^!zwtn-3<_Zg7!MST)zSJD7*b zY<1-WhPx;=qx8VyfZakQF5@11&xp63r$5rU1<>QdIrF31<7IDikF^yy@}OTnDkiPI zvGJ~2ig}iMyzE)-F?!fC77OJt0|3(e?!++~8qvh!`SD|X0PBC1;51(P!VSH%$U}pf ztH;;Z3_>Fy2-nvT%%Z2>tFW*-we);VNZA;2 zkE1Gf=MDku%1_>kr!vti==+l7GN9#NotYodtH?QdhZ27md6XD(4c1a6K-%1z>6KR! zJN6#rDo=U?f-cf3m@lap5z0w_`}hAY9pwJQxD)xo&;P5J!k1RKy#3;Vc>PLwyeuli zU;rME1(_N;{|Y*fRO(B9`zfc0rFXP1bp#WQ?1vl4ZC-et8yKZriB!`Fowr`#L-gqU za@xL7aCm<)`JQZdmC|Q@drPTcMEeD|rZ}LZ%YOcXY{rf<-x)PLIaQw3ncmG$GV?cw zo++cL|BR8o_P!#}JN}&NYo!9Q_IXt7M7BQ{?>&u|UUZr(lTn{9EMH*)z%ZKa;*7ON zk+KSr_74h&aXy#rL3vSdqMc;tAgyRH`SS#@KfizBcM(+ti&F4-YcOko!ZP90G)Xh< z;9}^HvuMpFHqjf)YHCn=%ddqB+L;xII~K2K=NGbJWgrrd%WD}|J<(Ue%5`KqtH2Za z7|&?F7KT!b(gtsQ7#~$$B&$~WmTWWFK}1mz`NUY)me9gF0ik^I0UE6VN$S_mbDP(5 zZ1{g1Uk|U*HM@lf_pRRocf9#M2}g5Z8y8@#)czc5#~TAzD~?Tpc`ds!rIuHmn^G*@ zmtRg1o^E`UbpU}_hI*T4Z~xtBI~~o!q8rEW-XCx8zW+q-9X>{AvO&H4xbt@JJ@pe%U^oKM z4@ad%&SV7$pFX~5dh%=tJiNAN zRCo0K>8Oj_HOyH16Oh#=cP5@+&DzWz%fz0(8Go0@Z^qw#TMzK=gRcdBv^Ni-3z>qVfh^0sEqZ%uuh|#r!?De0Om58c?mcx`P*1#-lMx`OGD%hFDQ5KnA;! zM`ow7s4}GGn<>Sl^vJ*f@@184oB*qIR8MLGs?FolPue&xGo#!*VO6j#6OFh0l4ajxPqrexTboe2qDs7i*OKix z&;AAmN;b>W{uYjMp9YzGVb=5Mzx_eP;nESBuf5#ni(uSFvWg_4ts1$x*S`3Y!d~G`W*-Po^}fZvMs<{y~*R;~! zuZ(6*js-f%sqHEI`3TpKEGtH~{Dc9obB|ZKzo?fFDRK`xx6~^_<=<%pvfd3jXx9}DDCd#f*{gpQlG~~evFGpKZZos~ zU07u3@NQ4JLT6^=-D|-N@^M4u9RJMAw~@+xZv(PvIi09db? z)0Q0pFIIptx{dXpE+*Y_1Nw!5*}rzM)%M+nHx&lRNE3| zw&%B_9!H0Qdl#%4$<+sMKZlT?ONSsApffV;{X5X6(MO=Sf($U&b+dn>tYj>mrS2;q0Q0U2EO^(^(9u#p zkqS%CrQr)$!+075>sndY(#`d5-CeKF>b;Q>6{w&*M_hPcK%=%gzIVzy{({(+kY4HP z7DtT&7uPR+(9d z#;ulTc;)GtaGUD!FB!<*&b#NY-hEGf=ie;hIb_*=zeS1IQz6VUyn1)=acg%M)3I}9 zu#&v<+_TG6axw~uFJQQk;y?=fWYODO@3wa^!9BuFGZv_J2NDfK=nkX<3?3s49t(dk z_`C)N@88hy-@jRE%vfoRch6kvUUjx{&}*idqIP%R|G-Bsgmb{Wcz^u%)xiNm&LP;8 z5jdF7IGE3&xObMYy|d+oc-Icv_V&e(`dKu)?+)5>{ma+4y28WqYxj1Rw}Kw?hl#LY zz1$p0M%+=$)_9B#5H1Q=4BRTa+>n2H|8c7=RWsA8)jf80LQj(5ooh-SwEt~jUv9ZrqPkyuIli$J!{|Om; zX0yTdc=GdKWB3?E*W^~8KFbH;J71ssnZ)KnI`s$AY&ajKX*R{T5t5$d4>f-YbBytB zXEd2A(pfYdN=wf%pZ)w7&?twY6h@gu2R9k8ycvHucB)AS=%X!^AoVPX@EwZu=fBKi zsBJh3`uG^hz)z+8Av9=`Kj+-8^lmf+C5-QptG^BHH?wga}s=oRP*jF9|s)UNPWv(MCeUZg}9C7;c9j#2pzA8s&Kh6Feh1E;C1 z0eVghpDogo@Wz57q|asm)EvZ$lqS*7|3gBHEXnTzXxI$!<6{JUyo!IC@iJ=0b(|mQ zS!DvAClNuq5AcPC{UJU;ok1H1WFjUY(NG%v{MRf4J?1Rh;i- z3gk(AG}QKFenVYWXvuLuWTW9WXmqFTK*5Z=FtW5A7w^l5-l6P=nL19=R4%T3(DPtt zqsb{f154s+7VJrnza?cZ>)`x+3Ro&9FYY>0mb_DhR()$XA2LE<$+%3Djp4|2Uy#hi$HYyZG8T#|QD3C?^n!beVXkjLVb6d>z! zkg>XCaz)wCpE`dn3?buAKCf*#Oy=?uEP8zMg>3xZMA>A24HgKqes~i^zGCk}yu8kS zRrT>zw)o1IPCp6Jo{0AGlpAM87~%0T`MkJC!_`97sZjj;&ShRfCRE_lTq2pti_UvD zm+XyXWu8Q5&qn8MS(kLll?+{88Gl(luXH?0FVbX){*iyj0QqUwmJP*_9L13gr6nu) zI7l1cbbuV$bTT@HcDY5)_9(??5LoOFNr;z(4b9DCcA-{KoZ2$oFco8Qit}iEexZW0 zv#3Jeb0kO#LhlQNz90_)dv!ea)=`!fG-mhdOM>MyALYrwpIpcVW(!$WHBZIcd>;0I z8RFxv^7?-QVvf2Zu9x*BF}`CJB;sJ#Q*@s=BZv@?hag99nO7-#Ld8pJgk*KiIwzC3 z5FVNG!o-(AJjugAhSz`9LBP<_BLm7YU6UIkQj@=xVZmBP1q~#Gz5YIg8^Rf8N*cNTvr%v0gWAe zT!Mc)o!H6ei#cMKhcs>I9a1w*_{ezN$(*98ZV60XwE(QL}Pw>-5R6353lWda!u zmuB@1%<71ozGfsnV*it})3=KZS=6hDIq|ZXvkd8Ytr$j*??UhC{beKSCv#fD`*D0M zFwmSxkga7c%-vmPkc`xpY!&|f3KnhWT(^A#)~;0^Vi9HV3I?H+u!c&>g$dz-g6Dq+ zcSw|Rl!kyQag~W;tg2%1CEi)cntmtf+%CxtlBvqww}^tAzsw@?lz@T6UskCEfo@s2 zUxwSQ43Oz>LWLO`dRJ)EPoR>Gqe*~w8_~Z|kIV#7Wbcp8cJV>a@D2hso{V}E(8yJ^ zETSX33YALm>T>y>Ts{>^;gM#noCALe8Gn1u=!BxzudfXS!QCke8h3$VEzvu?0oSP8 zWCvA3n&>0%OU{+(aYN!6aT=Ys$E<@-`gGmDN5UjT28i&Tjtumy2Bf7|mlq4=oHpls z#oAok1$r+vytNnEDpDM-cJI#qpi@vnh9llJ#DScCF8evjg#q&SQ$@gg0{(w?xTmMM z<++?$7|t0{4RTBhoOwa-rIi?aoYk(FG70!P8=#1c{9;U0fOC@f7{ZqlfY#!7AuOfQ z90*7V5>(NCU%>8OaVc#1Mi;*9C+O%XJay2S;DzY#w(C7Q*_>ZrpW|zDaYut6Jd)2f z0JPk#C;=g`5_4l?ry|SqTtI(|=BX(Y67dYZo5ic0oALiX+$nEb1!|vjrwh&=qH{n% zv`uNB+?QXW^Ne+}?(L#7wSRnkDpz!k`|nQh^7EC=iJK&)lTJ~tD-~a=O1lX~Sg5Yg z77p$aehNL+)|D@Yr#5Y6w8mcX2ijv_GF2Rn>NuVZh@xn*_`R{Dfj)mHTSU~O=!5Mc zqNz3ofxVt3V^YgT!vp#(FnkT?Te-D}$IN3dD6ttIy$tZu#?mE{=YZN{d~NMH!)H9F zg{6V_O-`1w;xd@C>x}a?cf)EUW^Z}I?JY-zz2yl~%EOc5uFu8N?L$~V*o}+ghT(H9 zNE7(@5p5Qpvoqr|l^uW2R*ei^lx5T+=jMy=K82kcOcV5Jj_0XLSqs(Ce(_ZO1fl>9 zYoWYjOTC(Dp=^~3>^M@-CjMAh;2RrTRULfI+TFU1cinI4vbIBx9Hss)?(E#O3eG!1 z64tw+w$8x8IeaZF=t#VnmWq5nw*R(n+S#097kybN42?sH#`EWBh)YUR1Xs zRy7E}%S4!!J!K&os6&5<+beOA8W*4)`Zo);9Adpm65<_(lX3!raHnzE37jW0pLV5Ew}3rrug1}OqP>{-q=c*ydDjY* z)QE}$8wh`-Z*eod9Sf_HZ3TvjpN@LD#4;F#ehSNDI+;cH-;c*$fTBG~;&@r~VKqUI zYX0?gQ0GfxP0z%dPVrPvR3gij1giD0C#nQ~b<=*WmU$ET7u#gdn^!j&j#%lQfMcik z$1%1wogs=5C1-+6=*e5%?j#~_a5qTeRXiN8;NgEc;^DZ&!}B$GIL}3Ia+8#Gf#?e8 z2!i#z5Ul_6&~g4-(D5cD5=V?!IUA2Fh3|!l)k^;E2-&|~JFd3Q9S~MzaV2K@GIR8P zUxDdF6V6FGYnn<&Xqgk0Tb;#D^NE&!7BhRI@vpLHC;84N@U0`hrObS|{UVvJ+9|(W zFKcVWyRcZN=S)3$ZFrSk!OG^JX~TcA!qjZpbn$Htbb8Ld@4G3;_5iE9ei*kuLmbA} zMMq&MD`8t6n3iTak^z5I)09k8)f(_0ewgOvTSKz?MniMv#!GWMvP z^OuaPgI`o^&wj#_@kxMkYKry(Y%|kW`XK27sYHgzCji_7i3wULscma9XR5v?sPhOLq?W=NQ;)I_v;0fMFQM|Dzdw_ z>CV@xI*;bX(ntn~ts<00Lo)jz*>ubv|C!%Gw@|pgL{1h>?#;i2GArV2-08eF?%KVm zRIn`35#kauhx{wcHbb zjpQBl*(3Ex08Y2i=F`8{q}s2Du1wo4*dSX z)Vax>_l=?H-$0n&AHp}Mzxnj>h1&e4^9L(}+)xmI5|hyTW;RPgRX6>v6`PUT(p^Wj zb+@Z_E#FjIZrrk)abQGtgtb8%!_51pKb?--PoA8eooQ#5Hk$OFn1B-48_dMnfcK3K z0sLp1P528~^9^epZ8LhKA;dA$4Ct(#=QVUob9Ia5FXHg8ut*c|D+-Z#W4 z{$N^vv7C*)@-!2mTftT;RJ@IHCu|V0MpQQ*Hl`X(`p%t(bOzM zZzv|v=e}wHT@HY}w_3L9YB&s_{dUu_Rmcu8j%`}_*;j3#^nq&ViVlCYmSZ}Kskuf& zHQ>i;HkAf&1r>Oc*-&77whQ07?NT)Sv0TG{r0+ge1ce%{hKt<;mg3qi#ewb_7Iv@U zI<8_GSe>I8y4z9=ThlE=Z36SLc#36fre)hKl=lwCWLiz=p{Z+4(=}8BYHhYu;EFBV zZKwbWr%ywM&N)WIRBX*~n=XvmG8|}J*Br&wj7F1vv%acCks0b*LMhDqNA5CPIS6*_iE=MYwnmS&hO7yAzN!N@I` z6BxN+>IgZU6P9Gb#5QyuqAq?}ha_>l4nqvr0Vp;BLHcS#PgRoz8#=)yZ9)GnOEulT z1ATIgW&m=4-GIIVT$*Of28h|ZZNQIzX*6Njj@E)Iv2Y9iH-~YybiEPiFm-0bG!a`G znr=8vh-l#GEDeyXfweVk6F_O{dJBQAJC36^pmG;*6yy)rws86km}O|pZGrFs(NK8{ zg%As14YLiM1q1|)Hp}prx3HL?0N|AErY?>GfZOalFl{gz-EnbM0Gc_F1A7C1?PD&- zQCh4*S`U^&>!AVt2HdcrfMdDPC5xdX3-(p4^%sEO#+OcPfQtq2!R{DV19}I`#%-W< zRbl}CEkgx{L#GVaM%01TU^j5xSdP)c_29aIl(ej2Hek*SSlF-%Y=9~(DI3S?G#ZF& zh`RYV!|?(xFcWqQ=mzwt;Wl7@n8m_{CDSr(3mSy^!#S{vMK4eQ=qNxWh4hAHxX=)* z-_=Z<5FJ1a-8G^526RoK#bGH;R(-=XaIPC>3)VNJxDHRDh1O8m8ggs|1dP6A0sVl% z5pDqGv<#$SxOi1syo|V^EZYFQ1rlHw&@B_G3=#r`Qw0k2sa8TxBp`}^*+BZ#!liBj zJwsvx2xjn=4)g#UG+m%;mTlnt*)DPw5T)6oZ8m}Q0r4@3xHOFx5<;VCnJSV(m<&KQ zSQ9WZ7m({N1VXk0U$PPneizwSS7F6DY6}>e>NbtgHS{pD z^xwqRoCmh{z}6mAz6X`>M(`J;sM~5rUB?a7s0-bO)fTJG$cjPWj*V{6jD6QMzsb3# zj^rL1bXqCm4bTPEw)-k9n+EWjCg4D;0SvB%sEMQ*cvB1Md&6iz+WiJhQ-vepBxfuL zLs5z^;+w5TBQ0ZyHo&s`^44mZi0LNufd=dXBBZXZwOm)Vj6PrytqjXhAoqQ>m*MY2 zmp>r_6@Ng7(IYqTL-&EqKalx27hEXp%l_(-Bl35EK`L6G#v44w#m+B2{~ax z8?Ipkge(Aq*>GV_OaqV=I*bdBpUyha^A=4IupWd_%WbkGm9JoxuT1PZ_MqvsY&u5< zK;x;lNyo=lvw?@;I@FTFS}=fQqh=LLABmDmI)^c>1-KK&(mI^POnOnc<%p5zT8~oVZx$W2-Mr1Utri#bc6zSr) zSk%3>q2%{rm66{CJZ<2HV+dFo#g^J^`mj2!(01a$^>ydB9A7`M$_G~Ypbh;CYC{jq z?}7Q3DJy=t{S!i-HnhUHRzULPCYn%K@%aMuEi(vJhy4XC*6HO!+?emwk#dj zDdulde&7VUS%z(xzNX$n0UddCNynV~swAV|NhL9(py`CBY6O6Iw&~ky*AKg@8wN&B z(+RA|a9R(<`aur8mmK;)mH$Pl^3CKImaE-tg#e2nu(`EWt7)jA6Pr;SMh)N6|5M5D zGM%0MK6KXYMy?gxfH|=b`j@OE0vLbjEa7JBVg3J$t^a$=?G{en!~L;``(wZEwsi12 zS+fRl({;MUt$;WimIG0yuUf5GkNl?FvZDBbI6n~Qe@^23K!qQu@UOeY8~#ofLqT9h zt`XyXF4PG?yY+ooEJoKgnr_exx=!=Iz@Ebcx&4{g5JLD^Q*#6{scx&gfdWN$P$nQq)hrc>&hsj|L_ zr-bZ~uqhrAHu)i;y|lMhoDhFn!Un4KQmo8x7wDuKv%k!yW%#+@{;mLjw&}tq7JqOuTOg zEj5l?M(CPGBi4VDed+_ZdEhqx`NI8wEL(ZtAOE=g<7P(Da6`L=n;U-)ps{K@P8VHP zSZWC5(T;!|0N413+Kcbs$PpNgzZc179=w4LGm=W~fMIzwTbyEtQJnF1%g^!)eOK?5 zSIEgeGmrZ;Ob|}9ESemQ{UCZj{FFuCtgH=A=ljs+XZ@vq$#XoREbOyrWw|3g-kge= zp{Yq)14iK2u^Yu3Gv0qU1AjV6&T9r|A^1eb--8`X*~t)Ce@(xbfjmlBgOzmG@Mr69iYH1ywcKYAi5yw zhBdgF7ncD30`}O1e5lN~%J!H0188Nn@09kEU9nqA_LTg9Iopaa!KIY{4bp;rZyxD3>% z+oed<#AER?>@a^M4t{5-+9Fil|1hXF1*qD;9;l5b@Q4xw1gv6RR2ReAkNZJj+jTkQ z8w7bQLDT8dycEG=%KmO}DA#zomT_3(+GZbbn})`O7hvHQ&@~&oMmT|coe;|k+sIUl zAau+%b2%JlnCJ~itOi-uBX37kUCB*#t5kEIOaff9Sp&!xlr0289Ad&X#2|t^h)13wOX#T*YkUTLr$GptvFaHgK&wZj%wAJXaa|6?L`# zBkF=>;4s)YRGV$#hoiIFG0|Y)rUY8M?3X%`OA@RbG#xO_xYoo*wp%)AZFZi_NHng9!W}0zY*4K?Hsff&ZCB z;JZZL@`1MT0G~6SPA>8%jnh%!rw7x~1Vmx27fpX(O(V>*2=H;TE8&&XMfoIaZ@?Za z#%e0%v%EZ{@*0FIk`5TL~%69)BxYNRPkBRLDZH~R5a>x@z`C5+HUjiQ19x><4V8%ZWmt_ zoh0#ehHs@}9sq{y&oUP1$UeQv4PoKU$Z3C)zuqTh{OP`nVX$*PjV41j$x-cDs`0r{ z;FG4P_^2xhE4J;YY1a=M{Gq)Y-qHSM5KaBVp+ATK_y`#W zCi&=_`li3J;bSXXQ_xqsGr$J9d_2CKx{myB`Zf>`8;1UGFHHDk@xg z=YzXJ@wf!V;~W%^Zv(~S^`Kx)^M{59-uvzej9BxtEa?qvSF)x(f$wOVJ@IE@@&wUq zn9&=J(d5Y_v(#bK^YM9E4PRev|JhLPE;1fvNm(Qs+*!n4YGrz#BGp!gcNcM%TAAFZ zNVS#h?jr6|E9rfTR9i{zF49!miY7XNW%LRskRai z#J6crM#zL1!YAI7|MsWskG1`SKV_Xm%XZwx(KUX5XwZ*U|5Nu#qDALXP%B^8Ogh@3 zan!jw1rl)?rR@Yl+9VpMeh}53{3-kPNl%f1WKKuBqqAtT?PpP~uCQmF+nIlsr3vIq z4)r4~jfTBxA979-Sn`WDvAUwC$8qgyFai#fwlm;CQ9o)Yo@o|Of@_;fzbV0K6&3+dDu3jhi$X` z&E-TP^OyEj5$5kQ`?KjtUMy+qOXGhN)~?vFGtbnEVJB?Zl?QmmRuf^c{Xu&$pkByZ zFrwo5=WMAf*>YDnMZ6ezhjM>}j9B)m0vYCN42(<$N(%%YxN4NjN6KaFU13T)PiJpN zQz}RXlR3#7v>`Xn30X<1s>^ z%z!Ne_Zm%#tSR6o|6V9xLhlMc+w#xtoWjh&oV4YS{_qr&Irv}UPcr@aFH>nY45g1z&>v#v%7i?FKr~4re9U-A zvW+k~Z=);&=u9JFz7KMc2w>X+4C^ylh{0_q86x~kyx9NwFCo6?%x3sA8)`Ix2A>?z z)Cd#)jD1M{aEvQ=C`|rm_OWLEKYy>xI7fv8`t8CH<8tEnXYp`07=Y|iqQ;x}QqB9q z&>ltsgds+#=g7~Zx*$XKs(65Na~aKg2oVIt5=MOd`L7V9d3eL(M9etgUpaQrL`&(< zf0@P80{3?C2M8y?3`#Fb>OUju&q>F{Kud-}It!x=wT>dw8R;pgCnR1*GJiXM`<}k( zf9Gua-+o(12_LFT>N&YhIIRu5%NQtBg%&de-b}n;Ax4z#9e||On~VT~h}7B2d<5`I zyhny|3X(bi++P%(t~_?ns8&{zHEz$?mhr82(}w@}Y$ToP1NI=okA{e=)5+*G!ek0B zKXcELe_+HB6vsSfHyK8O4}bH{UP~8Z@!9htTJ|T2ulAD=mY0mQaTZnI3NL|hIuL-c zJlun!QYPj=$zMiCKosW&*a&>4`0BT6X$?!kJyoMFWuPiXHBftvdUaS3Wv{-Sj`}Rr z8^Xf2C8OcDq?Uv*H6)`c>2mo-x{%SZAZO};dhG}qf@Bh;5k7tn(|=-EF#ZepZNPd* zh*~mx>AoVdduKTT_E7X;6mNm}^$wo*OTXIogIonubgq;J;)R`P_WKRtqsh zYr_0kxM)q7(}rZ`XaQ(Q3)Drt030^wFsqjXnrz;0#72%%mv3<)NQlQxTooFk4*qaz z@H>GQnt#%oCZRhgMELJU07LcWdH_SeP0SBV1b$lPO+eNelywGX10W>Pz}EoUaDE?1 z57283bh8hO$%huO72YHdVVf>ChQK$8Ov3_4ih##wFg#qr7R?UOTi>xI$1eKPYT(#x z>`RJkR?Ry?05$kOWC@OM16cGNuuhX^#(%Q#KNe?dMCP3>7nUCW;}EhDc-Upj zW`A;?42?+5F9R4M<>2iS7;-4U%(r~Uk{qkR6x`C*94o*AO$T`kfR>1?0|{=1U4vW} z`)#31AiS@NaZS8EkpJt$bhYpI zFn`fV#BFLAAndMm6S2g6i{5wugt$)60q9Aa|Ml6i^`0puRNzIqm=SJVW9GEyI zD0?(62PzIvn3aWI?qG5b? zV7Y@F1=1o(h5T#-2##~H>w7=V5foCN?;+E$l0`SMoy;A zRuvN9hL%%9pvDs3WdX^`z<)V|*=kf}lT%a2O4V38r%f#*1 zqRk!C-XiV|lza|T0n#pza3H-6^c9D+9hjtz@+opfD@6%TCoV|@zZD=~M}ILK={-?x zDDl!X=CBO_VRb>#UT< zYwZGSlhCO{z!a8-M(>&!Qh(n5XY&gYZNNzsV=N#I1`NdoQbJk~+Oh%fc6p*n{Y83( zf2bi8Nl-39K|`}hAZw63W&drH_uH~AvrQ7 z{>MS#$7Ky+lhm7lSUKo?=y5^f9c6>~Z0gX8iGX(~4m;o@IPhQ2(tlA4} z2Zt+D(z=5P21wZ2HSpFkNK4CevGY5PA1NlzKk^A27K|R5It=kM;FH$aHIUX@ zz#2fgg0%o7ofNeeQ`CP@!y;v+)kJZFbOf#;O1N)i+Mt%;j!vV+6zm3RWoSyIVi|mV zN}@kp7nDrnbIuSxL&LbOBN@9Su|X%@wCsZo#Ad_b1bz8I+~=p>-tx&cWf zj6gFg3;l73cG%EY_yKjvL3&_0&@iwLY8S?>;{XXGAk+kU@4SD6a=R#SHBcp>Jv3N0 z5Hxp9(y>gGMM1cgjL)DS81u%mq^0r@tjE;^{72eg^#ZadOsssSo$#)Zh8oNy? zm(x)0F#;rPq@$@kjqQGd>;ohVY6Ct+l{ql1mWB!}QfadZA_9rXpNW-GuUGKy_aSTp zv@*o`&|TV(gNc73%^jGUX%Xjzxd)li#K|&{%b`OdP}^M;{bABbRKT48TBjCz8UP>w z(?#BdbIUdl95QdE-MyBxiz)>Gposz^LSv5ipqnX76InE(X8_y=1YMl(|5;QO^g)HL z_y%nbBbsV0=n2RUxP@&a7TPMPIjry;HyC_C#avh>S;c<$H}2o9}NEf`7{#Ll;orY7wI2L_37!{EMgzBBaTPu({>n8l^u>L@{wc!D<3pz6AcI zxmzx#xp{vEBr&Gc=;N?cT)}J^Q@vl_5*dZjt`q_&jC(RAz_{$U-a zFO1(MnGXm%7WJ2V37|b9$O8BWKKM?JCb7l}Z*QTQx znh?bX!Ar1(gbS$@#)9G^>r=GTk@{X+eMmkQGEXd&``$ITwY&T z>D_DSk9VaheXo7Hye-xc58`X6Bx z)USkyr-r_*q^1-8VvZ{6Xs*? z1)Yw*S*=|WYBdx-vC90Z_ja(ckw6{!B=>*Ov~>sT-$j##VKk}91d43x<9T~exk4iY zJavDh12*57e=tImqOp+OxGj5xC&lNtWC;9WfOa(J%wHbvNhYJ-j_r z*{_@PlwDiE5QCENytre%>2>8WRQi>;M@C)gEv-PnXc}{`m_(0e6;~Rpie7c9gQtJq z?x0ia*B(LrFt=Kq4E;2{V2id-EyU3FqF!&~FCowgB!$=41)4y$#j@^bSuh!;>BrF+ zFsuGlue5oh@Ji-X2`q-?Zt}(T$iS6Sw2)g(EcG5MQy^=;5>M13Lyn^tPjUI&)IC^< zotm(2TDo%aM_7PRt6py}1B*9TE`WaZ zch~yexjj?aue;apnAUI7xw@S7+JTb#Q8;bG`t*lk3PQovXt;+?bfU@g(b<2njmZA! zL`$;0Niy&!7uVM(+L)z(yckDhqK~!9*VpH@6Jg4WYTiPBen~a+_0@bDx5s5@n+DS! zFBWYYht9_VWWN|laoONQ=pA02Mi+&xo!>>fIMKE)ft+02JRK-k$X{6rW_8F*2)1`Z zfs;xBZWPH&6t;On{)0+>W?X;CvkSI+LV<3j05i1Y1q$0fq52W!J}L#GJ&+71quCTi zzh2ajzRcQ*GWEO9gv$$UU+E{qvna^`Cz!PwnV+>|w7}asozDC;$r7|)17sQCkI*EIC!H)4|BEsLN%xKiV%&d;a=x+gsMo=z zl+@1a?fEDPB^{Sc*L#8Ky$*|lK0)N6@@|RqY_1SGAZx4-cu|A!p-SJLd;H1>Ua~<{ zoBJu1d{=wnJ$>;l^v#H@T#ms6o*(2~e^QiqP8S~7(DR!&TV5`4_amR|93^Sm8;EuFO0*mO05O0UPYZ~$Ed}1QbVxid1ooxnsN4`9q8VfeKoV#+A%4!qs#l-L7C7~4s5db~(*8m!k zb(luTdX~HS(w~igr$BNew2xhxjGJaosPOn0SjXvVQE@EI)mf|}Rdf+`C!;f=68X75 z_1{K7xC6`8nYyWb2(^Jfu08jj=DoXfnx1Pwp8+Aqoz;$yXT#H}v_4u@>5|y`#2koR zDwD-l#(ob71E-1AS*KjWoF6{dkVV{t;LkOhBpkZJiWX3Ryn9mOS(YsyDBlNOkMZu4X$CM|pvpaCYpc(+Zjfiop9oPVU?ST)@uh>0~yD?hn(O z>Gk0%!8Y8R#|sqp{D_ZIAn7%E;3uo3jwvKKJ;|^SLoUBm7zJH(5CsKRar>7-ZtF%^ zcQq3F2ye!J(}~1>R251B)ot@=dFcX7QOa@0=W_e&W6(=Lgj|fzzb=+2H6;Lof+F^a z7rUK@*f)c=Xtp9tNq_tI|H<2V>N##l-W_ErU2l*sX9KB{7ddnSL~dP@fRy)~EWCsf zw@(yJ)4Cd$nK`6(xJH}HR)S&4*TS&m$J*no9RON?{i{N8338@<$F4H(yjvd(WrL5TD~{GEI84ugb4xDSk!N zl!3N?tn7SHJ>Pq~ z>iSudeVU~0Fs>zaWr}6nc>{}026Vh<9>=wRd0m5kbwNr7D!K=EU>L5snyECg>My+j|#HFV{B)i4qCvI3F2* z{Nz(IM8OXlBVniOPc-RZnhZdaDsteRpS{s!s?Zl!6#AL;eKf&~S;;_}U=0aOgoMpw z=f<^4_jV?e(WEoi22dT$cKZN;KkNb20MXf27~2I~ESByMt|Pnv25OM5dabaXJ4zfM zpZb&O8oBJ(i(ok^>l?Q>ysS^iKO|{?dOAW#i-#0hyks&0iX@c3`8+J(4>!eGYygkep*?YxM6_vOKXZ1UbEsfXaKKq^1EFUOdhOf zY%Yt^ZZ_5AQsVgY>RHV+Qm*n11nQ5K}Oo{gHDM%Fmyc_fQM&Hve7cpUpbzx>g}ds zTCxKA@hoa5CE=fYPklT!@h81#s!=i-&?zh9tAGx7L9!{Dh5o`}GU*Ao{LV&`@b5Cr zf^O!+3o65l*9{L@c8@ErcOq$j9Q9M&G5{`)%Lu+job4@c71*nbbvTN~@hWo60L-E! zN!C1wCN>iOE{H2GCc~$W}c{c1ur~VLh zw_>j>@W@RF)-xlBDY2LEO>re;ci8>z87a!cP-a&wH#TA}iiX@b3hzfWm4&o5x8nOy zIY0=&RqJ_Adm5q=b`v*$j-Tpv-f)FWtReaV$=Q6ur1Dc$VQr+zknd3yGs+M(zxcXL zv$hB8G?HvpZaxe;%(V#O%rOF)m_MqE?}*8kQGg8pUFwox!{~%Gp8WjR7-gBZ{GN4^ z@?eomAmP&-12O<3O#MUxf$|b!`HV#p?SVpZcH{(LeyVq5iH9+NfN(cDs3%6!&;JJ= zs{>j{gcMUkDB5L4c?{w;Qa9p7nG@Qkyu;PJUs)r4XymK(_^Q7E0RdUU0Fe8IFoVN9 zXSlIZ3$CxBSM{=wuuh+&XhIAPrHr5df`|YtCZhp!L8gS9FX|P1xc?iD z>RJ!#hkgj|kDe8OM}i!wm|L6@rSV*;^T=o?5bu|(>oE%8cX>_v7~k$T>2u+GX|29~{R`(GgR&%G|lys&fuy*S(u z47f#p5!Za>c!Gfob~Xx2zm{xlzz`EW-h4zyk~>wk0ie!*PDQ!?AV}_AK^-Eh(ydSX zAc~Qw-ksFsHz=_1#Y3Vok!s*tpbfC1XV|B%mMZ|cu--+jqPr@eb_@9wWV}rJG!9|p z(&>m+7n72yOqv41LG2L;>8N`sTy|X&UQb8BqwwndoHjj1Ks_!L+9z(y@1j{G@yU{4 z-jE-I=q)RMA<*YZGA0G}r1Q0054pGnOYiX&!g--cv_UzQpgX-O#3l<6-9ey3dLZFp z5r}t_=oE-5^cOhP5IqCn61<~YVXZ;cs7~_AS+N&DWsz{8R)T3htZeBWIWNg*afUt& zXCe(|S;hoRXb0NHMqv4klPJxBr;yOe0i6t~Wy}qKv-85 zA(@1bGxfuKZ$f^JB(X{ssyj|3C+t+@gvC+&@JL}Nj=NO%Nk={ygK85^n5aNY3~MSy zn9eT~ghbhgxl_q0)aRjhcr~QL2edVa+Y_`A&)jtZw@2Ph{wXBN0XPECO3<^1kY78C zx?_2Nq42t1OhzDfU*~C%dz7JC)%xDO1gZ44ieA!z z53i?RW?rghdla0Gla(r74MB04__KjjWZ+c=EWA|B0g!nV1ST=_;UU&lP0Il7z_5a@3U{Q}5~~JR|1)1D#+`$o0u^J?5!rl!uR_>{B;W6g&Z)q zZuyGT_z4LNPrA7msBF=hdyk==#aH3h;z)2=w_0IVR+ufwxzus!XZ`NTpM=LK4JSd~ zK-LF!QcXv_5&4(mfc;_MnUSS@Kk&4Frc;ji!$5H7g6ta9o+B?9|cIR|mH&u}Fm6o67i*nL?N_ zfl9YB+^zYvzl)w^a+>>k;63?o&N- zv9wDZnWg_5L1Xeg7@iiuXr~eL6Uc@uh*E)9ZgLh=0b*Y{6+N1YR|u2Mo;V9(tp|#K z1<3sx=A}O3-fS9j*(i-N6k+Orm_M69o1iJh9<%!L&tYbUKy)U4O8#AxBKVSyI!MHe zb7T#@!dT2uei%H7LB=YbK(ev!q!ET{GO+Hsk4`K58gsc%Wy#geQlozi(QJ^r>0g(N z^@U{v5q=vTMxH|xW+=nb0a|-TAgTq54*%!v6;+~x$5lXs8r#>Vqi5-Vs9WnPGJ9Zv zQJL=tAQE$-G+<)~MN|VVYsev65k6;wUUY_{NFhIgWKr&*A{tDh`RG(Y1HX>j=^%wC zT9#Z!-(~bux<^9FLnte#`-G*Swi9;dYYxO*Z9E#+>etu8F2QCgk^gy6V`60{VbAdd z#-B1#6s5XnkPkPV^O3NBaSWx}`Cjkse6L7*@4lBtSi=ud zcTZyes@Oi|a0GHE-^Uab%=#ih)>j3iPG zXc(Y+2$-1w>!NSwRH-Wa|70jvz!}00^SB30Yk{01fH3ab1$jh&zjM_GF4K-THnI-- zN5jEG%;k*l&{0P8l$UTbD!(9Oml<%i&*~m}GnDrIAi@1``CvAN;9iOw87v?R=2fqw z+7<0X10WE!p;~6AvEs|>hOP88s>ri9+QjgztGnLWZToG!NOg}pff9bP^~hS{$D{*) z(o2RPN8@&LaoZMup$}p~@&-QzH&>eI5SQ<9mMF6o|3;L#^2bR#R8CMOsoJFV7v2H- zo?KC~N%KBe=4&+XH8yCBJ?sDtpL6B8syG7|W*@*fcIvrK9BRnXUyg7W5GV-9Xx+Mk zA_}PB*nVFyUA+wvu$EJV=o)Oemz7Xa0jNo-ACaAnsH%;BXhbR?JPl z&|)rR@>v4e7>zE4&EI?*o}Dzaj)T~Yd+R|Eji+r+x&J6D?8qJW@{4Wror05gy`6mb z9E)ci4R1|!H#RP6-MYqT{X0-ZYwuP!Al{W55XA&Zs6+PHt}Q$2tSdW}{drGD*O+L2 zc;mWS(L>LFi-8xr6un}Xfm+lI3HKP#KUIIqT8V znm);DSK^{4Bw}=7%?;jrVezHk2h}cIvLDNeu_ViX7>q_d#b$D2$;rs1#vzq4YX60K zr%ljPge%#}#4#+8?k-W|vXmW(M3k75B^&cDCd%XT77Px!97g1ovnuU@gVC`CPfAy|w|s ztoa0g=eu%a+m#Icu1nhaDjcO3bkv|+v6o)kvY{A~qd1bGwB#i_#_-;zvAqJfgd?tT zX`;DItb3JQC9)+^iEM;kN$w0;Ft5I!P=LiRqaM;-=ps2fHgWD~u32^8@JrmVmP@wc z)znU#Qj_knrYd~h-TvA(xmO>CbW_tagiEJG6WL&r^Up$*;!H8|p^Sx_mLQCr zc%rn{t6U=MUSBUazj_(jIEfioFzFDPaBWJCu-$qq;|Iv2JX{weUO0@x;V`U7X6j zygr-4dnpHJ382rfRSc-`@o~!0Q^xB*uYh=;1B=kxsPXl7F6XOUbOnvOtI1=KjeyL5CYNI`bzED!Ar!}diU z;5WxE@&Ru9V*owZHegBYtlT<(1l1s$j>dbF(b&iL1V(7RNDvXh;V<#WPibY-vRHOH z?gC|_K~zh;r-?Q?&99Gk@NYZQpz+CtkO&$ZCpqs%o?$5y(>pvwFLjE3q#OcOZ7K%; zYAGgtnTo}JHAAuam#H}X%T`?eS=y{wBZdC6YZ){#I0 zARzIAMUb>8i4!L}PRs|)bex%oiRhR0aw7U+p7y-#r}m%pmrQ0>6;Qa4l5FqYeY*FO zi9(?&D=RB2D=RO(p%(Ce6cA+tXuqU*V=jGo4sPs-`a5)%to9@62qTQeu z07ta-x?L+9+2WR7Zxs}Kdfls)rR+1mIcYP6Q%Qe`yyiLOt|;M8{h6&Bsn->HUBTCt zg4b1gUB%Z`dM)+4?MYV%JdY8nM!RrccAaBfD{>m6diJFj>utq<53af8R{Mdaf&8AR zqCE@F%+LtZFvww(6FlPr_V^SE_T$~%wFED^1&OByGahIvlYR{K?{{~XSC$%hT1Gi4 zeoI0Xz206e(`yjV#LGUqnf?7zdAqW*uHpeQ@f-KpWfn!87a&A0EEG!WwiTEN0X_rq z!ZS=36&V33a}6zj!qi@?`l5yv*l(TJUl;YMCN3nZ4)s{|b@p4YVK?ydV$f~^7qVfZ zrw0C8;r~`)O-pw_QI%gUMK2Hf1(sHUHK@`h&DlZrHcF>mRctK zeo~Lc;gNHD@;xxzjFhX<;Km&&UnnERs5=t? zMFR=JF_r(Vs_gfBXphnR_UB>H*7K0rmh8$OEH3HKKEqiQxGcYCzP4Uoo5L3tgZH_O z{4(?MrIj6=jd4!s<-m1Dz)-cZafv1y&o9lfQPvlKuZ7j2Zvm0$B?ovXNSOXh3u718 zRam_>dZ@qyJ3Ohx48o)i?7hvPqm+~@G(53Kp7-sKPA6!i1|9uL$(RUl8;(YPoKVD+ z+TC+$TB87cnH^{-;3!3BpaEK#HeTZl(#L&8Q&cQ|C*p%ucNuypRXP)zz^* z(2xV_DjnSz0!1-Ch!==bQ4YVMm_K;!C0$CN(T7t8_u!6FI`KfLzk%%+oEc6%!^xg6 zklgd$(ReRBqf!3 zxVBiYfV&B<^(XvGQBJ3Sew3Ld6VQLrGjl=E?Me>>0;*1Q(dfavy zm*fqax?M4^gk!!k(fKUuqsL0WX?Gl2IRnX_4y{NH zc*?1t@Fw6N?F0dJ*jMS1i!av}N=R^jboJ*V?0gvMWIFsA;sB}t(m9X=S^~|Abu7)=6brEH*&72?tF&N`BblhvzxEw{pz?-~c=@DzFENZ!> zraS!VBHh@)AA4`f8%}MxXc8kk%{|(Eh9f?4dHK*WZqwe^f>O8&PCnkDW2wl0?v!^F zKbI}F*Hiwlno~7yiTn~jzgeE0S9ZtF#xG!v9LOE4%yGt*_m8y4p{B<124*|{Je)wb zgh-M=@E&+cIuP8P6`%!)56&Kcu(q2K8E`7v@!>07WxDRRyg7Xz1h+QikTo4EDz zhCY!wT)I20>&DygC$rB=wG$RR>yrt4Dtz0c)~A%oSA;2px!AFPDl4T+qiLO3FXNs6 zgzxu6m_6Fk^>UblRgpwz0uZy5T27C?@Ij&@=I#;lh#Os*d#wc*9n+g(JaIqdHS*RG?XQvT`fAwx*2 z_(B&#)mFdXacy{uHz=B_z~28p4RM-ix@5tYlTG9K?Ygr_!vMMgP=r?h6Exxt0ZaO# zgxeTxPc1~{^NIUxn-=t2t89F+DvRY!IPmrdJ2oCI&W%@p30eMTC2=RUbG`Ib-~8>x z7g*t6tlx~c)+^*nzIJZCJO{YnGL*dq3?0#MVQkl8py(z9kn-4MZyh6s8Wvzu31}Ev zstT=4*EK$!S!m6i)FC^PNYl?Y$H^^=)5qWpwNo4*5!0E`MFmO?Chz$teX(kgfaBKU z@pRqNC;je!t}>mvoyb*kFyJ-LLpq4ZA$lldNU;wB0Z)>KeLIpd0G&S>XTlk7J_KKz zdBT?_`I8kliqrv%ogl~c75^@iVkBEFWpcxp%}dH$5OHZ^{s2}=eHyS7VwFPX1Aot9HH!mgZ*o@+Vc z_;u=>#TEfB@aei>qcLOcx#CR4j%c6R5v}hcJSR!L6P64bQ_bKrH#b)ux3s;3*Rgm) zs+OF8pp7mhT{s>2((}Z%2gxIdARwDuyVjQA+At28gJ0|;*DGh4o`wuGRjBMez1+f8g@F3=zVGf>N2qIbdt zcd4cP&#A-RMSOM_+K_L5X~Gfw>8%*olr#l@H$ zoo6SDOTga_W$8vBqA=DrH)#SaT=ftMpAZEtV3UZ0PqDEAg9|HX^18z4v-lJ1QY9R0PMm_-UJ zi))uRIvRAezZWyB=R$eMcFH+RuB`%pqmRs7%r;6%rQ)4oykXoULvhIDkmV#(Va#$N zNErjVnC`muWpky5cc}z4oImNk@tK^Lc$M3G22mk3&D-Nc&aQPl1pfPf`#<5BoUT~ORg{!4_ZuQ0Fg8CrbxSw>em9PPM47fy zW(S_+bom9UDmN@VCAW`dx{;onF=C&Eu_4I1!yrtB7IW(u{EPNBHUm>s4FKzP<2?*d z4%t1-?~exZCKmKCw5qgiO_g8$!9`7O*yL4tc7+Pg_P zyM?O@9Tqdzdw~ucch&}8dtE_if^8CD(BPkb>~S4ap|Ml~m{-;0>yJoWe`LdQ%{YCd zH4F2_f*ta~Hy$B6!=-OLLcJblZ#=kLe)fLFF-{{?Kg`tVQ@rK}UVsFDiR!;2efCqX zKZ5VM{$Rk*yZne_kN_IPWHIR6)C28E(BsI}{uAAS$oCh_H3Wda<&n#>RI>KV|Aiqh)7UG&jVjMfwvWQ; zq)_3-=Ek%1lhQZm=RU@NcKyCjb0L9IQOmg^=_2Rq6H`s~+-8a@!&&?>EM$)=Y zh5NgtC`9=#qx!3g=mm~U@}yDw^y=k7U+i9!zI+q#8pF2R!~P(B+ksY>TvSLUm+Ubu zB=fvzxIDBBx=F-v+g2(77CQ9gjJAch4%@zwA!b9Sp=tw?x(U5p81bjg zzB4glvjB2>g@ma&(6aD8f?q7r0Q@X+k@bYhVu;3ys>hjsa7dB5V8V9O1!o4ULy_|1 znE6;bHwrMP@Rek+*sd}}8?gTidb6_7B;KgW zEc|kOcwk0EOMy3m86kPAnoJ8I1~5U!po^DLpKcia!U=KEo@U;JwAqCCMmw3142&jq zfyToe{Y5x`_vK)p@jwxg`Yljgg5Xp2?Kb+cvh)+`4)6>3=c)^T8dSm}Spbr4qH4!_ zdFr60V0a!lF!RIcoKjb?pFkf-N&$1bJHP5;3;`%%71*`YnVy4p%$S2pvnCUTq zXkH~^U{hiQihRBo5W`jf{h$7I5lQJ?pX3{O1b|zAGQiNN0GLApEu5oEBL}gAO+~2( z^n*jT1?PpK-8pwh1HNy-rjdQKC_Vzhs8Jh*Uk1b6msnlG38LVuOv8YIZRGRmY5C+1 zu5c8??5I6y)U-eFAzgK4;IFzIO6ZAK_$pcyA5g0@+^mGdn{Y6fn{LipQkikCl#bgTE-ct)IEs9YZPm#O*rqAs5r4eU4S1J00T+BIy@ZeDNBVf= zVgitm#bL{Roq7wOlS)lI!}m6qQ0sQ;1SO=>_P4)uSp3#6C@J(rC?-5f2MTVEJ;FtT z)Nxh2rF&J_W4nE46xA>gOK{xsL3Txn6rDzY;jq&(27RBQwB{LnS=SsRwTf!KA(K?C zjZLvgiLco-)Iu!UWr2;aV^5T^aanYNnixAp#m!8{4OZMpZY43e`nKetQjn5E+m>^I z(VqSIa&N@9g}dyaH@>^G@fz`vM@!o>-cyDiZA&+Q zGVRc<(-8&xIO2}q@9BD4#3rU2lkM!K$YtCLg^*=44RiPHUs&X@IHX4^x-#|x&27!u znm$;xA(45!c0}hR234qi(2YDGJK8O}Lu|405TJdFQo^KeBR=qfwQ%2m+YS3b2k1!; zby*J&YW4%^1GPBf#s|F^H3x;`qgZTzbMaJz6VHddQ}>6&sXMmFfVH*DT(YMajSU{z zs3_`T+Tr^kPnO4>FS%@XZY$uyT@W8RE_HKEBZ0W)+B zrQP;SrRmy(CI*oj3OZoQ2(&t+sCJ}B_-AImON^94XeE>Lc00w_mELH;LN><{nkl6~ z&)`9oF+>WyrI4=}Ll$?Fp&e0wh(kP=Rhf?X6u83~224sJaDKRqN;MlVBg)0p1&MSE zy`>Ew^Y$f^`ras9AF4zWG-t1l$u?(dY-JNE%m?SRIK*#5(DCWkSv?W%MI65|cVSD~ z83UACb#?FCAI^})2ZZhN{q*VW4DcEC0`M9@uJcDY3l)ZlI0AMoLu4I)O^bp?6nB-A z$dj{EVRVV3_|oQsbyN^t;wT#r!uYVTaL8C5U4?96RL(i^Ap+t)F0|3?r6L?pxTTZP zoEKe!FJ?vh&1}Zg7Gce-5oDeYR_BLtnK#`k6A#o}B$uJ=!DLGYICf%hQ;L7z^n30h zUA1ZYvsHIFbBPc;iJ=#NSYU~^g!%or4@@+=8AMPkkR6P!tFphE z*20AcM9&1g7Tv10D15J1bEX#th@*iPnOvYc7jkC3Ugl>~>1?V$S7Sj`jfL3c<9VXx zj9LH>i#>{w-v>U0$GpHxD^dGqbdHWEaceTL{2d&czWs%1Ho2RBisYLj#vrOtB9Y=s zy4){|ybKa6JWGR-yH8hJSVmnf5$)L_ipdt0Wo&n?g9H z^#|0pP~V;pVarc7nRPHdMLK>GGI7(pyL;m6AjDxZJR#GnSG!HS(f$;Uj#^h-esURbCy&zC70T6ULM_* zVkal!Y$|*m2vkEBYdnseEFcx$gu7OGbN5B13V+d!Fg`oT@$|N=ml0#C{m~HiILvSe z2a6oA*xn(H`p^>NX8Rn|8LOcg34!X)4vXf~KkOse^d^<47`4!H>lQ=HGlQ4ZNRB&WC5W%fkocbW4t#nvx zwK0l_Y=sLB2DMEmOfV&>Vfz6Y{vIXMz*alKqu`T&NpAmqfRK|Cj_l_7SKy`RG>`R* z2A(8hZzG&RRHWeLUN>>Tw41P(zwT(6ul1>^d?M@%;{n)Wzao6uWD>NRBBhI-uIRXQ zA>ShQl8#td@O&}~a(xuIr&h-7`tUyCY`0YL&U9?uK2SU}6_7MJJTfd^HG zT)L7nj>zXvVj@h*h_oJHLJLxdP)L4GfCjr_2ZBziBNfu(Do#HPF_5WPdOuEp@lA3= zJ{N}4eP>-wHas3NUfKauxnO32P@W6IL1DjtYNOd4xMU&{JDwzx)>n|UvI&kcox||P z{g^2x9c!b>_lv}o<<^x`Kh|1?IC0L^xh9&~wwx^@G;lv?59oNxLi5+IGwCJ9hLl(4 zk_5tu!5TXbU8V-8?G(knY#Kdxv`0GK17Qf$Ft*REVSqn(jl;YMi298J5%9?PP*nVX z3-pk0qvaZ(^QC>)xGt!SR(JW*PsYT}r_3Y6?rhaB#(5EFuZ-XFbtBgZ3wpb9je~;X zbJuv~7PajTjnBiP7kdMv*~>Tdx@UYG6x81zWc`5}1D^F`;%OmI@v#$S(*NnVZz*2q zc`lEK=VlXmc<%RP@(2yj&86~yrf$!F;cs3bh05QV&EqZ4=3#v3NrU{2hWE;q#>YUL zm?LUBn=SA_lYxW}?}ajOLCF2~7Y`4kDLCy>M2Y`=8O~V2`x}GTIG4c<-TUBu8xQ`6 zfPM^WV~|6a!~FYDg85($%$PVk7GVzD5gmCF`JKSUlaiawiU`2MM<@LODKJQX(JO+E zY(8LoS=mV*Bi`^89BPaMKDxrF1(#MTo7Td@6`be!7slx&oIjtm;E3oIL~QxhwT|lb zmhmdGw(51y#LOf&qYg{QV*JvxesxWP2BV`EWm@n|*yAzB6ow8(^{C47JE)J$z(5%# zFj9+ay#!?O#13-rdcA&vt|5kh+q1CN2Mxnv|LRgGUKh66y$l06(rDnZ4)#e#X9HdhEGk&2JARxG?%GXG@e% zkxBAA?|Z#F<&u`0ILq9ThogZQG15QkB?uKu7Qb<~JDHF1B`?{GQcJQbXqymu0Ac zYMiNXm}fZQFue=ha~m6zEzUQw(VL#^_zFak0q`~!^k$2LEQ6sGnIfb4o(jVv1E?x7 zKl0qUhDJbcMV3Z@4C8ZeuC3AM9y2!j3W7~fvi|}G1^kAmUoEkJJ11D`rKi9q07|ky zy1-B786bTf<^mZ$GN#5O0vg12y&^Xhi}J7=M>>As!5EXBb~=wf8?%EaaA(0O$%<7n zjRYP7tMfMXx`rG>I+;#qoRi-r_p;v)*j3U<9xUnQLxI|n_kc%(mCBX6zrXkk{GR~! zRg?zsy_NxK21Jd2QAF|^!SkJJg&18R4tgV(8q1?gdN~(e*^~3Nn~t}i*W#fVn$ac6 zUTX7KL+&K4R?6YE97smpLvCUe zHoKd*)2c^#D4VCZHRsWa_FbV!mEo{JK6z*k(0Mpg+4-}qT!RtVED9+&6A<&eLr7`NS^ zS1TJ``?|JTHc0<49M)D?KoFq65U@x_<-`4;V8Nzd*GSs4@v-gZK1Pp;x*GL8pfNS~ z_PMISUo+!>K&tMO6BA5D5WysM70i9ywJCldlyU-c+#jONzhe(LvU9@kJwAr!eeGp!1m!=LjY0cRJ=zobGLVAY|wS zGw;x?DHORK7=ux1;ix>_jCw#%Q$xHR+U@w=NBBK|J>!h2k*0)glvxWktCB`b7#i+l zzDJOiDcsWx_Gpva0baK{vSELap^p2SpC9$*v2=k~8I+xujCpWkk0;$`zr#3I8|`-7 z;a4~#zxnoOA9xlpkDoZFlp+cTNXdBFDX(z%5xEv;?K}|>Z!5p`z+(Jr`yFZPi4S<` z$xe=c8<{O|!UI5kF8sR>{&FzX?1*mPK9 z^bVB9FJM11YA4W44w=P0$YDh4F|;w%vKHUVN~}GW;F%a~t$P^gsrW41s7w?AoNMZFXoU zPc!=X!u%waXQ}H-iIx&vW^T;4pg+8SDux}UGi32;Y0cF0#^xrp*E=++z_hoW-Ot^u?ZStH(-fLRD2iN)RLWO95>~E4u$z5 zbDnU~t3{a47WDFY$TfVdANl6)fj$+mK$s7j*&MZe)N|#XEPm_VGlHL_2jOUbxO8=i7RxsDB%oSo~I3}^sqL|N9KvGnDo2DBTKc22*LawV9#TCoXcj$PaUH`V^BK}bnY{WJ9& z|9H&Y36%6QFk(Xsoc%N*wcRdGzTGtyp4vW9m@8;B!HD5qAIKwn^q`;YH9Ny0Vg0cu>^7v!_&N+ZI9exPt`rv zGQVl4DXQ_hqh)){=vs0%Aot!tkZnSWo>;@mWd_m3>O45Nn;gPfdu#NFa}@*XEv{oI zD^Sj6D&$prd097eY*OuiQKY7it`d1?D-Ug#6ld}mAGtDZ&Sziyw22P0pMLuG=cIi0 z=UvP^ko|T)E=&h)mFNAYm!C-YS~l&OK`i@&T)N6cOxYVGt?mu#6it}h4e>sLZb2U@ zN0I$OVKUL&T}hGO$E>5ZJiV1Ni-cx#0vu$qQm!uR zQ{~;(g{&uds1(8+icr^c2rSg=VB8v)i~*2?3v&PwYaYtYN3i@TK;gk2Q_^ZwC^X&S zfP_Zc{IOML=bbly?7UB#P`GK&VWB&bycV7&-#q0jf!lqs1;HNz$*P1M1;0Fo{=Q7* zIM)xHk+9A(j}yMp>Xz?im|Psqm8Lq{$Y#P4wcP=ZfsA1p?4>PK(7GK=s{w3Q7$yEJ zi9%57%%J8ni6_Q6Lr&UbI3Xkvy#;-feM%`NfzsQ=bWi<%nc5nuU1>E(ZX6bTR^X*s zX+aC4)qt4W>rupng4~q%M7ohFBPV6ZR+|!TT^{!dN$%=@$+2Xvt_1TzW|R!=x^7D5 zSP$U7(Sw)XsUT~R(yn9XtESAqO2oAQB)s*YD_LO}3`>=6N>GaJDhKX};7?*N+>Va)0|5V67#EN!y49L=8k@k_A!;+SnTU+0s*Hg7FH8 zQ%N$(Y=1s?A0r{1<5}+segm9{yMnNcuyj9Uh+bh;bY~{UQu;`FPg07e)oOtScgtdVUZG+f77&91qQj*yM=VSbi*3Yz z*-kT8BbehnfQzjzQvf-2E40z84VY(%ZHn6rnGf~VU}kQkvF{Nu#F;?dMVOI6Fw` z=m{gYF)BSHH+6=^;}@W|pWiE|;aQ#1Sg(Q(h@E5xFoG3SqquaBgo0k9y=@Hxd!j#5 z1~PtvL1FYJhE6P>S>VAc`VR$;!Y9sv?R6Z~VwE+!n~voeZFVXpVW+ zEgj=sgMgDW76xasUmaI1)gKPSsJ6I>5kQ9^_L_L14kCr?4!d?}!r5T)_GY?xdkz0h zre=teV-vpnxBsaeLI6=fuD{J=s=0563VQnw0@zyngGe=g=~(LD@2-?rme$l{Gdr)! z$-G)D`^x*bij@=efM;p;GeY(1$nGbUrc}$hdo!J)H85 zE%H9tC}VCb^=li_xS`G>ub=dJP!$1VX+Px2lB?Obb}zyZXthC~d^w-q-lQ=m zXJ~QUwywT>5sgt1;|zUEtt_dE?*?su$bR$uE|!Y^|EcE z>oH(}zA<6Pv(3?AC$vs6jh+n>wAtzR&M0?R+hplf_Bj>E z6^vU<2Q-Rmt450@-XW?rzS5$pRVlR!Ps#K5<#L&&tr6LHaE|dT`;jH~(0DxK1T19I zA!BK$0d*Ttw>Zc&e^Bz<98kY>iU5Mrxxk>Lrshy|ZP^%SD#>7F*TT)VDRSXx*Rbnn zI|UNwYqMr<7>*tJlzF0-X^H72YwEIsX^s*kq^m6~Xt0;G4F~oTgChqe1lZt0QL9pS zOfO(*{30zhZbN7cq>tKZb=jycqwdMUtZyg4&$JNzQ7g+RfBn#6@G%IKQ;(yAPcfPk zZe3>?MG#)&wlW9sE1Qxy%*t}5zQgxq1;nD1$q^rVsiR};Zx@j(W_@S1a=@a!FmdkwNOf3x+X>KM$&R8FL9DWieoVgwd` z+u3$m7LK8mEu?9M^*W1zejt01?pjS$V@LUVbD}M8@Pc&+}Bj6Y0K4E5AAhG`;tk&MaRzE6g}S2il1NajU|+`5ag&G3Z;+c z!nT-FLDuWcSeqNRV^I7dJEj-b1$1G0Z#u(6ZT@Irrp?+)^#S3I)XGW`h?oH;33-HA ze`Tq#E*flRxp&*BEBxP#c)p+B=DCWb#Y!|`7gF5VhkbFcxx;s7k>}|r2=y!tTasBq zBw`!((}kE;On?cB|$Jrh_?hgvV{PusNVQkCCba6o&*w!%a-yXNmqtJC7 zSayD<@6O76pETpp zC;a=So&-3V@IXpw$t%y=XWZqIQ4j2n!;HnkR)09`cT+|S-|apxt%@JL!3~ltai_fJ%*U^f8zlL5$qUm zcihy4)%8z{NVy}M2S{^!nKutOmP`WV`;Wb2R1#0hi z0M%#4$9w9Y8T(c17Aw@$U#J?@;->bnzhGTp{Ol9>g1Pz|yayyn))gG!L_$)*~iURj$MJGzveVS>1jCOv+!lYYTc z4CPa>vXc@iv#)^H8`L%Yi^&(LlwwJ;qZFK>!j3(P0_0;)fMNx%?NiY*-lTZaZj3;1 z1y?dWkbFr%j%kQpe<=9|h!~rWbhOrdOLI=0q;2`rdcCZd;B`4yYJ`^hPDtV0LyNg@ zrHmsn|DN>)WkH7F3Tm`s>|;ZE4IubJ`5h$i=PiLrvIJgO9&a#}N{@k;jUUWGv2zd@ z{)_U$0)SCYRL=g(a=pFiKLg2}&C%Gpjzf@NzqFR%?+XhUf6S#7BFlIXE*2L27gl*w zriyX>I;IStQ%0L8!{cNTrbr?I;>q~#?ozgSN#*T`(Mf4GXPir5(5)=yUIOxL#8Y6< zrP)#teAvSZi%Y9zu~MPV4y%(8jlpvK zN$=9h3aL(vkJ=GMdY_7{&IC5!7d=XKY2t$k2f`3>?~B>Hv|c^|zI&OZj|4pFs78Ky znHv*Ot@Pa`DpE803e;eK!5fpJ?*(1bCh8$u+lBf42My#(kQuJJm(hR%8GpeO53X#- zMFjBHa<5Xoz;9+bql`@r&c{%4CwQJ5Ec^y$K z(ruUG_m{4S`UN5*W;sArQ;qLL(qcXI(t8uq{k|Q-I*KxT5zD@l2p@3BDcp+!&C^qR zQL<`0Ts5t9#@6JU+*OYwUw`$8Y!q=qawkI=ZB_#E+R)dK@4}YvPfPKB-hN&w+QgYP z1LZox9IV%OciMG~1siY5G~c+^*{%h=mnw$(CNMp1Y~7-Z#0aAjV3cqoSf9&$ZNsHI z2{?V$PS2*sHMJEQV^}p~Gk(Wz@jQLXi2fAs^DuNKCZ*BzvlQ}i|9>laXc58FoMCdA z%dBI&b`3xI1!5?YFmy3EXCs`UZU1BX0U0~SHbH2g@wTM?FbVwIaBfWLa+NZ zt*9~h>j*1a`mNXNet(@d3pk@#!eUQF`4AqUTC5~^(t>@>tMel*r8qhq3?rMJ&}v@2 zg}SBIRQdP+{r^y&-g?uEnpbP_wv)vr8UHE~z=c_$8$%G{&0+u7Fmwm6>wyNFo%f={o*~pU)&C>Xw3dXSxQR4RDpqPj%54y8)B!A(to?PH$)bh!V2YC-% zB`K(q`#IsR!lS{s1G<$ol!)DDP%N_kkR=xso-e_`F%=B(;@E!B!@Mj}#Iq?}x{inx zM>$e#a=Gy+l7uM-w#nT$buz~54$Jv1LTa5yG?-4Tbn$76fDL-oMUR*H`teU4jdsg; zjTp3Kvf@Up4u65|7E`NA9|*>+ibP-eca-c*g#$5W*M_fo;6$|JtKmyz56Sp^w$5D| zW?LR+#~s6*Re6M+r&X;@Lp20vh=10bU76g*NhjC+N^Rs~o) zeE^GYGZDLP?Ltg(SD}l5P`*cq??Nw75h^Z06V-y9xqlrEliSgh*V)ZL=xMevTt5rp z_a*j{&UQ;T5U`{}lb$b_&KYo&!iWKdK}Di zhNqZ^3xDp3FKNBun?#!@bckX_XLaCD`AIr!%z<)y1)1s|>dIU!YrSJOLh?j4w*5(*wa=LDtQuxyWXAqr$8W$5nNv4M#4I+Y>sJrnKhQLTheQ z0Q}qQ@6(!lvew+zshvk^%`Y=r^MGs3dmXH(6@O^SvsN`ZExA{$CHIlIqF775gV65e zwd6ZlE%}b5CBJ;2mi!Ug?E~hm%Pg1vCK_iu(e>`Y2^h6J{{b3jF9n4&2Z}`F?8_SG zHdF||TjLylug3WSE~}GNwp=Mw)I)U8F$ejzs>!k$g=ve7bcoNHoCFg)puuSb>pLiL zkALzkvKNFC5&etzQWUJ~O0UO1Yb=Pnko%J=AOL2+wv)hK*n;#3hm=^S!bQF}!23lX zo*~!G8V|MDp6~!8f}a#HZFbCv2b(a6*zvTD2kB7ocX!;LB!2^)id)XVl_HG8m-pQ6 z@4h|YAEIuoH>WEm7$cA0L)Xis$H;Wtp?@88qB$RDBEIwQQn^4dOk}1gju4q|FcsIH z4_t~wKL?aA88Fmsma4piJ}&&`{ft6nl3<9*wYgyUW7OiC?ZF6+S@pWg@(5y3TI6`e zAxA)d4@p5or&WH$#=SchQTYl?)yzQJ^GoDD@OHWWx~$e!l7a4VO9O_<^4 z>>o&^rg2WVE91mq#8A^FIkJF_@N@@HH#?`5vojcZkb%; zw07!;w0I6v(RTFX$0Hx2)0ur;8!%#m=E-nv$p!}|KhwDC_$zXX|7R2 z7z_80UbO3(HOnlgbDMN_2k|w!>7wx-7!4?C(0C7Mya!^u$Yu|uAseUc6xZMcq^iVu zrT(ACcGnp4>}G_ai1>zNBnt>mnnwF?usqY7v^L4@$upMdMLdY7w|@uEE7ObAdgYD$ z?bj<`mJeE!;XP}TZ=|p$b2yRLt-ZlBC!~dmx_`jCJDdi6TaqjMvSo&_(?F`9X{KQZ4ThYND z&45^xXLLY_D5=2=vwxkuLlm2lFC((?U>+ict|gcj+0A;EeEjy8LCH{dF;0LxD6vFR za2V@Hb9_y>92J42gw7_CvsBCawWGy0KiAgFYd$ADtLFeUiJhUU<2Boys>2Z)-kx7| zY)mGC)t!0OJqG@{W4C;j{MF}F?oh55d^9ju zVo$nuJxN>_@Ea+LE6wFTRC_b^tO#iJ2nVU+&`USy%Oif2NIEXPiRujO zkw=MF%&%@URMQzw)b04S%F>(2B^l?S3@8b)MmET|1s*}y5wL(OQut+fkEG2@>~(WD zinHQRB|T>^@qgypI!oWp*s(akt$X6UWg9v_$F(Lk*NVyLL=ZeX7R02}l1N8d6jCNc zPI$??l<&^N_O1MgWwwV`MzqM{H8u+&-j5>0ixGm{#_cV>V_nK9@x)8wK%xS9b|5dJ z>mXi%vIL158O@p+joS|Z5T1cTcoc^kMR8cgAPxqFSAVFftE$1mJ>W^QI2vG1tBz3? zplhe5?pKsbXIWV;!GFxry~aX17%XB#P36%A$p2iFeqvo$%;l`B){oJ%^P|(}#M8%j ziN$TaACe}|iC@v|(d+coiPtoD^j=KdPaCKIqvQ1BaqiLTlLqLEGRj}Wz4may?un#U zQfVAWE`Kc{d`VeC;==8F3R$Q0oc>_AXAfa->XFG4w^|Y9%oNiu_@>`0{-)onNglZ% zhqyiqaW--(Vjzt4N!iHwP1WM|GcQtoWIrOM{G0wc?;#+;O%EDm{-1zJKR$SfsdQRz4No*GSS@R3NPd7R_aB z@@+EwJ}7YT4{6A<4t6ocCqA*4J@N!d)zjlhRg1u(n0M>yk6)Q=1(8p#^UTXQz6OZr zH)Yo#m2)@0i`lmezv7AFtJ{v0C~@fXJ!phYyDr@m{0zj3GX(+@n1Y&f&gaRi*^b_E zQ-5G}E03Q2~a{(RomT?MAn?k=DD5CpJ=@@&3V_sKG zW5o@pFh`Dn*~q$Z8nNd%~o9ZgUDK6U3OOz|COf&2Bac(M>c#T8g<%|QD;4> zX=Gx_j5ck_e)D;t8}_WI9A!D8*Iqwm6MrJxn{!UlVg|@6Oa85*72yyBc8$vQg@qR8 z0vvVmN9?4)O($E12Z9raz+?4vlkUgeSN(2i4_qzw7h!L8{j_|RwFErzBuhYoc=6kx zJ9mAzvlvKYd0ov_!%Ro+6(z-xYyRpb#_AMT>++y1oUMANWJa>12iQJXN2Y-2z z4W()8cXwz)U%>Mm3%`7Bi_mQtH>_+pCF%%|Qcv0HgiegY2%XhsVyJ%7{4LeSFqX3> z*1#M!@6b8rs{4M>|7f@2r!yL~e6(lo1VFozH%e$}UZD-Ln5l%;77rrh+9KFXI4*=N z1jz30u5<9U1r+`~D9Qqgv30!|8h@9Tzc@A~mgKn<_x}9y*+Dcj$V?fX2HGzsn<*f6 z>TS$xmIGv*1!PCs+dlSZI$y!i-Hw5Qt|-A89*cdE(g!xpmYF=gL%Y6O93c*uMZI2G zEF0NMP=?3!2Q*1;bZ(~EE-%bBy`PlFOoRv?mJ#p;j{+bigWk^%TK)*uQGbwGN5+zi z!H`m|yvaJ^362(X6tbg59oQ&(0z+lu?81VdcM@WPgiz%aM!m&wx6TL%fZy}_&$XPr zs8L3pNsKTu4d+IyF_lS{y|TGH#b1<`hKCD4;L>?%RqCxprg1MWYtG`yu?NwSGmX6kV0O`A zh33V746sfL(zfjGmMm{)(Z6Sbht`uP9{L5g)2lqJd%$ioy@yHX$?SZP+>>Ad0M$sd zluQKhc>C_oOV5flf>37W6531la}PatBG?Aw7&=^>qdnd!wUSv6^M5?^dnPDMSSU;o zE(DsOv4HzpOwjf02?|pabeT+0TbiJ7aeU7NO<;nq(U zvK71+wJ^BK@bRnL@*}siYXi#*+8-mMpcDjW*{xtrWL&_}J?47DLcV|d9|B2gy!cG^!(fEKftu=@ZYOd@4l;{oody}g^1i3ZFx_M* znvDJN_GJ+LG>C8G9V~9oPq*h6gGdyY?0+(C)0 zr`^W%*LY#cQGO`&Hrsen!MjxJ+uE*P+m7+zS%=2qltpQK5+L6$VAnnf;R83o94?gU z7uWtLx_wjY@qe4IR8WhbqdwZ7zy@*BIc@#JNrx}HGhpvp+8{JY8-xZKgHSydQrHFN z_H%8w;JOjzlri3CW%KD?;+hMLF|yZv{%glN&99Ge&~NuJ0rVx;9b9taBDH~mA$kxp zRK4L{j$(7akW0=JrWcGHe54jYL;)v6W5>c5+~m>dp??8=(YJ|OBfvXffG*iLi)!m! z*TEdk^6Mua?4*7%YhaTZ11ng@Y+wa1vI8qv>~jWIP`hYg1?w{&UkY-6!~g|Wkb;XE zJ2RTrWnZ(?R=B!x0CKWqT+0(R7!B*RSvOheFXI5XN&G}UAYX-J9Sow?898pG9i(6A z^@EzKo_`6+eyiW_xOPuBF{rYpDj2qxdV0+L-Ggpu+GyV%xTTo#VnoScq5nBIfo+riP2c~uP5F`C0H(|GA@GU^5RQ6RcojGQq6CH^*+0zE z(d`0PYt>a78&IdlHiKM$M5sc#9?hxu=id&pPk$)Db^eCo+(VZkv;wSUh|=);uy52V z>+|u%n`cxhwco5aa+Vq5UE@9r`Yb3wsm9#q(kj!3t4HmOWw&Gq$uBBXCLm|UGZilZ z-yIM7B9W_n9~l7E3=8fd|3e%C62tu99>e@?W_>Tr+28gs&^!fg0Q^uIX|kNaoXD8P zwtx544I)$+J zKP#l-N3bO>$o>#xI_7N@k^TTC#eWKE zN6b|A{59CQ^5Ls#gC<=vF{ zAd(AMd^9oPr_^1lw6LGJ&JB+igMa7C%Wr@91IjL6kKxGIEDX4djt>bd1t4Y&`tGi* zKhHvlg&fKsUBK)h{6jQz^z9Glr;v$A#)%&20m%yqf>LMu>43VtD8lR>u>DTj3GlL~ z`Q}wuf37MN%sT(kCw9mfV(fo$Sx;v$p*LXf#ZfcHc@kprbJhB7sHw-kJ%2!+`_*j{ zhI8pp;6-Wc`uM~Chh}JE+LPItP9k=B5t-EJC%1`W{_m`xcW}5s41Z)0>xsU`4O5|1 z%ofPzNUOgdyxo7lx3j-<@Ns8b3Z3$$BiD~p3oicYPm66s{S*A3swbtJtZ-8Hx0T$6N;gB#>H2<-B3vAKPt~oR*KZGMC$AcNI|tj1BiNx&c8-qU z9v;-HChphoj}EurZr4hSi_nX`4@)>`Ev=T}aR=VQXUF(y?e)>l>wm+ew+)c3MUy)x zFkPx~@hg1pbm5y42K0eHvHD?%)2&bc3s5GkQQq=}ak2gJ_+w-LeT_oy@W-Q%nbr+wnT3L=ybV{<;TD7?>CNqgGZtejHzC~*gJgH_=p3e(iSRRV2bSe#rDqe ztE0E?lXo_MCq~lPYkwT=!{f)Jx36FC9MwwitK0C{ctxLVzde4x*Z2)anrn!^%-<6&}W7=LK4k`ERdk7h-?lrS|r=R^r@{l z`6!Rn(PoAyz^dE2KJ;NfRoYY5gM`NT8;SRAb^1;1RDZ(RnK(J2MrW}_+k!pVL~@PX zp*0$MrFGo$9P8JkJ+n1%fzPoh2=J_V$O@f)3r}i8{&uJ1;*+M@u&wwejK#AY!#AD& z*IuV@I~Jcj@l~_$OiVI3c3$D$j#&kLvxP#2hQCCLBm)5$xa0nn1b`z4-wlhxLr{2` zoO|-zXn$TgpJgh{dL2^~ng@nyr@A{vv#9QY(a0Ciw2$1jqLe6O>?Q?V$}kSCoqBzj z2^*BncuR6&=HiAG;sn2id1~Wkw3)sp`m8T3e12J8Sm1%%Gj7h2!Fps5ynDm$-Hh5% zw~w=0`#eQgFrVCVI&GJ#32MY@>{FOxH0WO!JGInkbQ6 zwqfC_N7QVr89p>FxBy2cwM;fiGtxwAngFbYg}(dJD(kmiE^H7R z!+*Q(F-C~#X`kinlYRFY%=#i;+X~x^mjA7OR4>O0_7{K9R%+d;c&h;=g zdM>BK&qm)huH9rgoLHZce!lYiz9@6w7k{Pi`!*j#yQiPesNlpn?Yn2SYnSMDYP4J{ zHTRDJ0ANqo=LFA=H8I)qN8_Zpvh5@_;kVIst?l$Q!B?NZH~#@NdDRcSQu?s>kWU_z z012}gpbpP>ZHMWp62C%sp4$T+LcO4knm~rr8J-UxI>v3*H5^)2GGU+5a}73>w0}eD z?L^qB0(-b39*nU_wNKW|Pl!`ylJQy3g;Uz;8n^91ALGQ;DywuuL@jVVq3f~+#l7C# zlQs!V6N17E`vmtJX#g8C))zUX7xt*H1aJsqgxOLC|KI>qY|#+TBcB+d~Ou zg;q++SMDJ$f@`8hw}XlBy2>%|HRa~pA3lgoirr*J;HMG8oFVvV!-xOD{~j{%ftm7Xm6r@niW!P2GU7E4wL2=ERe!v6Msj*coS#e zRx0}7yhvX&T$@EMo0$no?(=XGs-V)0LEL|Ta3Qtw^tS8PRYh*M#P3os@_x@Bv?8{f z2qndc!aNw%bb=LRMVaI>w9_?*S&#XmEwjKQ`#QM9DxzKvC!(2W%Ts5E3Mxy&S zi5cBvshmf;JRyokc?&O+Nq?@L8JDEr+v-|MK`?gn7h9(RblBiXI5*_Tk4LhSKQ|zXM44Y7UH%4CHaY1MrPn zS7;2?Qx@3`d{6M}radU&BXb9#P;;J(W+b`c;Hz`&seq{^UP#+)nreJVTGdMYXh zvg;lI`%v7)FmjLQO1bdzt}ZsP-&#&siELL^Iz{8;69Is6#+qegKevi+bv%4cDZ5{1Ss3m@OEeFpw) zVz~ITOmKrJ)PLei4-A`53hQjxbSlh-O~;9W=26*yGd#DuEOIS>z!X(6$KiSmgT&}s zB#GhNd^3{8U68jhcrKUKP(-9pxPU21FIX!h0?Beh{8|z>;=K-DruIw>XBA4iW+zq@ z3g;)LKBepY0tIW4Ix(BA6cd$7=<+k@%KGPy_4=5ZXMZ!i`3!G&cdU$I&gYoprHDJc zFBytjh&`XMCu&Ie^JV;{-g6B4DGc%&2@d@PhwL3L8&a7H1**eUwAbm7`KY4ZMqNlx zv4!RpbtFu?j%wc|fdr~;ow;h;IEe(JIM;VtZqa%yS3*7`#kI_$xq)$VMA)kY2~VRt@~SP4|x&t3z#}`6AS|QQ~_$bh{C&Siy)HapSpzUc9}e)=X-r8Dj=$)Ry~(w139N(^&^!p|BI76l9&+BgGARjmLgW zCEW_TNnCzp7Kx}Kfe6ceoRT?a!MUF?eSa84qIY5#g#a*?@<15APooh7!2wDaolJKgoZ{s1*-Au8G};yxF{n` z-ydR|`rVeSF`weeB$((oJADQ20~AImm49mElnd#Gkj&?};mz~GL6$ADVW3btvu4aS z62sdlEuFGY$0;|BZ3XaBV6A1NDYh}lTvB;war zXyTf;RuwIdL>hCZSs?FNRmASCs)Cq**kSa6%@}>3*z?dDV zK>BVxr{lZ3F>j9tCY=e$I19-5VStP?2%1_Z;tBHK4-sl%MTLc9LQQ@C&TYvuSIrNjcXw0tF z$jsQTMZpxLV0Rc&fnFV2PoC^%gRAVy$+-V^_iQX;yyJ4)Q}@2hHFinBVzxijG;i20 zw#+;5k~^hp68AKJ@hrt4VM2WS?k=3KTbjiB{$hw=8rhL5=_Ro;5ijT4xeeQ2(@7Ao zq5kDP{R$^d>9b2Yuz%>Bo|O1ksnl^(7Zxf;EXBk{sOMLLuJXwqpbr`z)*cee`Df1R zjy$X7IkPGSTVW9H+}$-FqA~m%PU!*E-+ug*ZvQ8r(g)7yteMM4lcDp`Vf`_v6=7!n z`glr?{dSl*Sr;TvxI(X=PN{Tb`#rL1{sGR)rNM;YE+f2lKz}QSz@xxTDo>!4+}CGQ zN5g=xC=`TxPq-H$d!C=8WGqMcH?e?SZ+&;pwoIlO&*VZkZ`LzmiN$Ng&Npo{NgRU= z*skBq{dc{^ z0tsyy@8dv1QvP-fF+i8Fat`+`GbVF-N7|Py$pJ~q(SOc_&n=S$UPU4E=`B1_JOm-1 zvO@-(kj0DGr5+7!vr8<(vz%)1i|Y4!oSywXMmtK9vKtrJ6N{Z!dV2eQdZ8D@0zW`Y zD;7PRIMTO2+OCKO-WWxcx?9Gc0`ec`J9LLEyI~m8zq{Z5Kmip4eZvW%rzAV2p(L^p z>Fjc>*nd>elZf`cgeyj@{nrEdq+_>T#ryV`fpY1B-1naEUS?XmIzKg2f;hG3j${XZ zRrHxn0+lvPunXPoGTE53XY;(noh%s^xZZImxvcZud?z^!KV5jHA4@M{4Zws&&>X{2 z0;3T*ES(lbGPhcKU68RGXsD%e>h;OJJ~5A2iGSQ-Yz$Ns^hm2xXuk8QkMmuyvAZ3& zmA`I)0e`jq_zJU?Tpz&TJgu2Fm6A5eRItEQFukGxbg=)yw&$v6#50<4;IV$lzPS~d z=n|1(YBcp3mrkDq6JdhSgG`ln(ih0S)N)pJdmD0U`rv685~7}t@l~%&A+Bn`e_Ft6 zc7Kd(nL)#o*o<|Pxdt{V0bAZNu=yQ+fwIlsJ@!yW`!Uu~?abQk7p~o`ldLc=vaP6I zyqbh`?>s&N?w-e=3^ATs zYdRGMK$2r0o*qJMHnvFdxi!p=bwC+`8GpR2Q`TXFT&>Yv{m8Xp>NXo@pSeC0lnG?p zRwp*;Y@k+Y)EVmfCPg^an6oR3`GYjaG^XqUL797;^sy_lX8@j z>bInBWe*faNEc48+d7PHJ5Sl$5@o}VG=60doIGK7&@hPky5i7mrxAUGO;kGoB7bjM zn5fX$wg6}Oq?!%3=(oS`p1E~;a7Ift=6Jiv@eVmg4-I%<+s#~;5<~i#TwRqwchzUx-`(&XvD>TyJYWN?gfS@0Y(?@Qk= z3vxrb{*s#`d*mx>w_0upf)!qDkZ8C#Zb4HRfe?eL@i0k@`VL|z--dM{$c{oy)XmfK z*=A#5VMlA|#zBfCEs%8O@Iba_J$7q8azlFnq6-j!dW?+(Z8uWSl1M+JP=C7(9N_!> zZY9Xyt=PFep~d$E&msjjijIb3dG%6-n?7o=Gn6WLX=2y&vQ}a4_BcBLiCDRi#aG=L zG}U+da9}Xvg9e@jh?V=N&KYh-(>ZzF(*d8c1n;@<%XH>XdCkXSFym+9ax2Nl$rHmX z2L*}YTN&SQJGJ}R@$Q3&fqy+_I?bhqH{^|tHF~Le^;0tZXrGZWQj+i$=EAANZUu** zK#Hn|yHwJOWUwipU`k@3lC|c-f+qU(<4n0pa#<(SPt4OP9ql&fwcEsN8`Hm?HoVP` zr+h>?RbgHg!E7s|u(YJBxy%0~^_PoT4tTDR#Ke%&eJz($rb&-h&40{*;Iu8BpH(~& zt42G0&i;x11384rCVL3RY->&#&Xg<;>jL&Hhkbo8L*~y$8~qvfo4rxj9Rw{Q5wyAK zdWt6lWY`JkS!w1w>wMBkDL>;0f6xg`P^Qe-GVs{g{K3qV*%RAKqHK%iaHZ1kcvsIH zz363Tfxy^okJ!h-tbY^Rfvi8r^w($i9NE6pDlkLQS(GH&(=1|UP!nm31Qq@JKmF@> zdmj~<1JCrxi|LHIFQhdNSZ0@p9aLq(Anqr`$8(m-ayGv>L7{jgtiumDkfKfr<4(E} zoi8JibMq(a8n-c}3v8blMS18djl^C`j0{C68_o#1>F6ULoJf}=J@`lWZ6<#q@wk-dg5P>p7fJdE_v>Bv(jthkCMFShW?6XAEy z%?z%uZn;5MIRUcANJL!e7rDwFrejvRu8$!m1~7(BL{oQ!sz*#p`0xMipDAbfjT^LK ztPa2dV-G!y8-LDlkrHknn7Vy3BXxUP^hROo(T0{gvzpFIBdRP1|K71w3S?-u-F^%2 zdVtbGI&UAlL+w-rnfEFn`IrAXhpB0~(zA=r_o%2Dv?i^Nd!BsM?GO8dY$2L^oHP0q zB2NTAy%7oG7%Htz9Stckxq2o=)7~)|1~dYksko5vFsPf@u7*ZvzJJMEASGOAfvh;_+YZQwejm<0=get# zo)zJ>1tLT%7*6VSOzHErhyRX)4&E#Dv)z$^(2; zGj(`KG^VUg4C^_uF6*b4a9W#Vnpisx=U2G9ql|!P%}$r5%$8BCq{+epED+n6=*A?q zhJO@h@tC2qZYZaa)*>0=nHGhd)ZsM?Nr(ZwhkYD9BI59C@BIL%WiXtWun0N;OrT5A zEl-0p0jxxzeQHUqdn{o~Vr?r?s`I^+8oB7ImnBq8wPsZoW?WGQxSSqApoori@*@YN zR42Y+)Z^vmoR-gkoVgK|6#dROVev3`(|@q|b)R->eKYHC*@mvNWg#ACTNb6uZd1DK z5H^$onh-o8WY(T7zUj33mMV}7>)FJ>V+FXqy_qiFUc-NrsTtzN;lX$R_CJ+FsCi5^ z_w7(YGv`6j905m!O(YDHrg3WluwjDQ0U#2in$gv9W6*m2_IMF@p+&L%EPm<_I)Bdj z+b&GNV6q4eAJf;12pfZBLeRjWF(fE;SZkS;HM3$a;h&XdrQE?cSal5^p(cHbHCJt@px}R)YoJo9 zn5#;;YpyJnmdy3#f@YSWl`4KuKYx~NbA^9fF0m^3O2Jn*T`0j;N*m_ta%t5pZz$r| zdb(SMy6xaw1>ctVuS%pP=BLx0)K2?iG#la#idoKzJc(=AN~Qh-z`C{S7l|%+<&OTpDGLs ziUFn#8~(wcyzZ*GzM%m6%d1M&Tmp!dWpjDCR5jPI(Y4B61<(((_oiAN!|+>W#jLKI z)heRVT=AN5O;h^PXR%E}57^Tz5J3TL+7 zNRvw$zGJ8PibfTLn}jSuCvqt^s8$i1TGY`jSF(QeKCjC4{U3 zT>`qR)jg}e^l{ZC|l(^Cf zFoG38H4;T(Eo$!#)&e~HMb%1iwQjjou{ZF=hIm^+-nBu0;Nx;-T!C4Kf3wv}akVkN zhS7~@*P}mg1Vs5tN?hp#2L}jbdZ9)K{j*?MDb+WGnsN0_^?wAOZ9qT#kAF?`wg#)o z+z=&8KxjZ7K+8A#8_Lp~wUeq}z3Bp9gyGElZC1y)T6`c)yP^ng0&KSo%eD+O2OJRS z7MAl0a?dOr0LBSU_02wTLBCQRSE_GTZ@SRZxKj2j<&(9WePDbvjx{I;fX7uN4Jxlx z@C6`JdV^2+YJX+st1AA0cL2K#Pnp9Lqos^!0j$8-DzGLhxD?HmH#jTUXerkM)JV4g z1+0Y1cp!~X@2Ec-y119(W`&D;b%p+zu=3Vm z1+T9vv`r?z=*=F~uLAkK*)UgLts|RS$Ny(PHgEzfFn{Inqk&7X8uKeCQPz;WFnIYf z+ryEct-~^1U!gzHI<}8&1m?2B*X`OK0Js9X%F=3wfpD`A+q}OFRJl5?RQyWiWCJ;D zxq7nxrm{Y+EWKI5F|u_c0y-NK*s#wu*`3jN_L zX~QhT7(j+15ekHa)fUJXxE7F@muQ#9KO4&+0WIO`DX;GVodFV;P;jYiJX)fv;5uib z<0F@0vjP);WgW$siix5gE--+2wSyuLZaYL-U-oect)l>4A^2A}kWDS&PQ5fa^yx;tie_2YRxaLWs6Y)R1iu5DQ$m%0g??%w78(f4g9Z)0$>&R zKm|s!1UnmaM2(n0c2y)&+&hf7sH5E5@pq=hO~hgXGxS51 z<+3GNvL(wJg$xoP35f*I1W1vRxYv8VJFz&vP1TV4$?FfaD7COIR3;U*J9l&W*ItmtnkBw)m7y%rEQj zUH}Kz*1I_NZ!0*7PhoFXQXv(!mM)H_dT`%5xNP*61cq^IKrEASpge4&)=R_y1QS>wO}lurc|6SWMBUsY7Se zXU+&-r|H*d)X{j2%^KC%gi~*AUDpWTrKY3VU)Q>>*XhRMSKI6LYPuizuC7U?IBTpD zf9I=TvBD95hzGB2Ar6?XIoLup)mLBrx(eTY^(FPfylERz?dglufE~T6Jzcl#npa3AcJyqh(OEab6GE1~BD#koOva%)fNKhi)% z%0NU98;CzuUaUQTy3WU-MPo33oZ9I)fBm`&)XSqaQannn8l^%X?5VU9(!flpJr5TXwZ&Z?QvKPNVu4Z1eS2(_8F}qq5DW|h6QxUjaBY|? zk%=EMF@9Wn!drdue7%eqD$3PA)790d&+%4Uy@eN7pO+IKsr{;qeS;fEm1pS=zfv4QQK^G*lvnYQ>&0m*xN=#l`d8hv z_n^N@TDWJj5DyO>BT?yQ==#pk@6>9wr7|Dj+qUg?2Nb8040Uy>VnxvUhlr(|^AE!1 zX@X~A^NcBZ*llz5xw~GKTwzJ;6{&TZ5Ne-)%T7MjVvR2^w_eq*!zmxFf6K7e4b#y& z;#&zlWWGJ}I(8fk&^eEOUwlG%%{)W@?cfL_W~f|?X;DbxG;yRAzFfLSAC0J*ZL|=0 zk_X&J2KjSZu*HIbL%Yt4hmK4Bo%Cwpcjz*e+@aT7qNHW3bkI0_w|j(@7B99Nd%KP8 zI?}kZGXOS)80Z*49qUz-reB@EUm8MhjSv-J0Oc#jpZ`VO*^|gRKQS!|M30JKyQ&E-m$e?kY_@a#%7Xo2d| zUEeu)e^tT~rmS3Pr}nB->dmQV+F`JxUHEoeeA}sYD3Gmf-P$qptHG#kp^q)-;etn( zyY$l;*c}Ykpv~2Si@lSs>-IjwQ*=8R!o*Ufin!Da#^TQ_chU^(frEd?!LZfkH!!N6 zoPy+5Gg^T{Otl^0e`=s-E5A%l^xc0549Bz_jE6XebJIBU^yZSSMu*o)NYE zrj$ygE?G-mtLG1_`7U1N8R1kbMFb&5nW`yA{8CI18f>ct<3l5sa(PjgaQnr7{;!1gzB!tR782ZYJ zyaqzoz0ytd?(Uc8f{#jq)>a8lA=qiJNsL}Or7C?}e?Z=WAggveDOa~J*9Cr@S`?p( zA%)Oo5CC?j37u(2PM4RB(-K7}mM}7oowZypH?c6^Rx$vmwd6~%<1?di3XC~&1!v|A z%dI8Utelo6WniMULs*1+Ztb+Bl2_-ZE$H-CL8o3yd6`bzYac%6@Nmhy! z_KI>+BtJi`itLyflE79*64;U@fYWa{`eB4#f5EKIJN)qxJpFNzCEx8Nvl6-Kf{R=d z3APp!2{4@}X(n{B^lZ}RgAa9>G?*~TLOrgBZhF2SqkL)|qdW@d`7^UB-+YD+S*ubm ztv@@rp5@L`cy!)bdWvUhE6sCD>gBf7H4Cc=&d`}tn~bG(T1(!1xwHl24P$O3!?L`5 zf670>1}3>-N<$acx1_NPLv`#rVbR!~n$@ib5BMpj9>G!b>ET_&6>PBnVSHFS?VzFd zu$}g>tqdtlauUu*oBR=?*$YK9dtp6&krB;)v7SE1xNYL3LON5H6O+awR~nR;ux5Y` zopK&^S||IsD&-!8E-s1VI%}$qZGDGfe{^OJqmvG!lNrX*Lc<7T4YEV{L&h*Ap3%9{ z=LczYagRM$NB4#G0>$2xo^*&uG%h1`h^?DlhFprLaCN0pE=z-s!#QHZIa**iTk>Ia zyu3VGUfwFTy?7I?HIZ?qPO?G|5EQ~!QI9!$zHU8VKTr1tRt>ezmX?mKrKM3Ze+4*Y z$L8%emz{W-aAe|J5);1+4T%EIhEL)3C7>6ChHdOJ=RxpZxp*}#MUtv0htBrh8ua+M zJ_?Ny>?3C5IKi`OgqE9eX!PL()L?wt?!b?~R44VizR_e=SFgQ+qamU~4B~Cf(}8ts z;?|Bix*;Qd9mYZvzk#B4#P)*+f1luYHtO|>dyklH?bgU1WPQe#MWp8S^|g%cgIGVX z+6Jq2JM?OmWlVga2waN$CQ2|sok$Saf)}-9Dn6^?!d4BzDO7BVDdztPE#(XDxzvb2 zfgt8>=7K0|zh%K0TKzl~a23qzl1zH~7O;wtwA<4406s~%`kymzWvhqXf2RpCP3oZ< z)D?mrrRvk%lykyI0v%^aDTj;K_mtC7#s-LTAXIRrFr*xON3VvemKfIcBOA3TOa(%T zk&=pTh65}^}3Tg;5&EcOZ2 zO-GOt0<6+73Ef?|LrDa#wYK)a9?||8nYVj5gn8t3_LRG-|57t9%D-d3j#$|b}$u;e`3){ zYqxJuXNJi;2&k^mc5v-i->1LdfiP5klm7k~R$FfRa|_ebdR56F zf@aRlD)Z>#|LK;f*zp`hPqM$TztI6%WyTUK0-f>-s8igLfBfnRe;pm`?8;lucUyK? z)yY4XCk6eRK#Nn=-#ycw^(Z9mT?PKcF!yKreI-$HLsX3Qy14J&_HK#!#}>k^%_sWiJ`fK5tGEEHGcoLb{`xm^ zylDd6bdl;Hf1;Vi7$y(e1%*dGY_gQ>mJ)v;-?>93U#I?Fc!oI!1vcYv%sZ&zRS>Nw zp&_0i**f9>h)NCe(E&W{*jN@cZBr@6vCz`RoaX`v+#|W7>GNqGgd=&L>bXLbR|l;a ztEBx|Kc77;RI;(vy~d<(1u|W}!ST`c!{kb~hY#qVe@#F>1WJgs4kBCU{y&$wPm$X_c0C{@g zx)lNSC|uym)#;Z~((YmI9~zPLOt_G$kB$ot+6Pg~V(=4E33$NQlgh4&hvqsmIK*hg z@KHT(^rn~c4mEDW!9HVe|TOC<1Re{!eXtg!iz-nPvO4|6*z8> z;a5@VS^)x>^2$Yo6l@U2RBF?{pMr~vUUmX3#5GU{^G0>2QXN_gj}OA2cM%%I%XnAi z;xjq8v4|%>gPdJnUiPG4v+>7@k%hsp>;u%)i#C^w#uHo8H&1^mi8GKm4(10&4CTtJ+;Z; zWJ)B7CLu|?YZwq@*(D!AS&jo={JH5x=vj7ZuRg5N+;?lQ&KwGFTRZEXpFapB>^e$@ zWt+*AL=lrdu<$yuSU9pOUO@*<+5|VRf=K)cjHe^weFW3AGk_C znbsW@A3wY5pX+?zwGHSawR-8|u)%=!&zy6t&zd5}NUaH?H5i5a+Te6r4pp%Y5dY-v zj()^;N3U0^WmB#FcP&$mD;VUIcesG18I(s0O;dy1fc3KD#qf-h;X-ik`2)s3fBhDl z*UozPc9iHS9)?F>GD|L8Lyad~v)!9g?woP?2B;e1doeH;{i6Tzxt zt0E7~YNcG(()Fb0)HsRoy{~_C$xf+Vx@>b=_?Ms(hK0ALc7{k$JCjfe#3*W@)T0kJ zGs5iQ=HtD=-GFFMugY~%0f+^Mf3`q4?)=_g6%YIfgqUWPYVxJM{j=6|JzyoB>~f%& znM9mh2B$siHgahrN7XZal=4@se1&6%`%^1vg4jyFk*8@Z)OV>J{swPp zzHD$GxK^fy!I{oJR?~Eu`RQ8Ii_%NL1mV)h?jQr+C(YXiN)50{IQPDPf94oG)dG{p zkhg%r=jKl|@vtcrZ_S>?^o!CYs2`K&6SS6*J%2(E=n<(g@lJM1A76V@oSO1zrTmc* z&!0)zQ^EU;GWlJ0C4KjtSBz9dk3A)%yB-mi4l;N<3_&0#uhMGhw1Mxh{%Z;Tc(Ur1 zVmFFG$Y3Bix^7}zL(*bHe`*ooLnB0DJ!eq&d!bpU=;SG_eC=qUfiU6vPQ<{TZ+X=3 zR#-cY4Smz?xt-6~9szTK7KQLH657?<3{sOF2TgRIwFsc=BWR8<7$A(zB_NZkM55=h zT`RwA|0=G(Z2$C=**a^VW5fw4SzCeQZp21Akr4#IwsF=v2Wf+Ae>vG9f^p5D{Cq&c z4g|7~J_TnZHrYYXjxo;1FwI+}#3P&?k0I<^L0~golxKh+4g!K!n#q} zoP+J1qP_L6S#MV zYC@SEXqyP!hlL@%W?VEZ3|SY>L?CJY7*U8(L^BidnJIEzA}N2jX-W&4dRWj@sEw0d51enMX|buVF<2& z)rVO3bcy`}i67?Vo$GjZy=3SHw94eE^qF&}qE!L$@W=ijp!r`BZ+nR!@0OWai&X+=N+$b=GegU$os20RIY(PfB4q5M=o`sLsN}cL42G2YEs3a zS%ZVKf#AmW2Z{xC2XzMAZoX{R$41kvItC0{q+Qzsc~{}4Vf(2+gd-K9I`PIR7~lqE zMG*?DVeufq2nNYdfN!Bz4h&Me@!YP0nVRz|&}Kypcwe4FCS|r4s1h)MGY)u5k4n5L z@@`eGf2hvvPE}?PUR-5Y;q+UDaQYd(W-+E$fT`a|oZ>J^1(^DcESA32TwcZ*OMM|% zfpv>!Z(uFB%7X|kI;`$jRJ}~QJIRP=8=;Yu+DH;|&fwJ|UX!hkBH3mX;U|)vkJjDcsloHwjXk(gJVvxlFg&@h@=<;lB&n$7E8uM%`$(m?ccId$> ze`mQ84hW!hs*iwck^||&Lvu@1e3Fp$&rxl9(vW`;AN6xp1^9S#!AW4?x??ZG(iAa& z907n!+OdZN!-9th0hwxV4{X9hX0W+bts_YqqD8U+NC(X_cn0p zmf?tg6Xrjm-onzuu6EU)9)uQ+Yt_LMe|iVV_Btu+P3Rfd9A@5$5ET;JyNH9>?p?UU z0e81$FRzL>Lwpyv)OX< zACd0lKO*|4ldBwAA*)O13uAmC8L4$M`99kV1gU!y!TDB9y=-AkjhE7#|Dj3A3ib%f<$gs}X9$ssJIh+`G=)GBfrA0f%xK=Mjs05lAIFCt$ze+`BhbI}Pt z7Da<8pWJ*J1^eRg%lUPg<8Z7PtX%0KTTY2YYq^XlTB)_BYv(Zi5BXWJ>r|8T!y>Vs zX>O>iw_GobFHmk{HYk4b&Vs3*k0&20rJah-xNOekj*{q~ruNe*u4eE{h1~@tfSTe?1mAHwuP=*>r4K6yCUshj!14$STGI$&jDj#!PB}aU9Wbt)U-C^kUSnVu3V1a8cFL&#K%ThqGr&4EqI%hTR=sSI z5T(K@=uKeNKwj1au^Gg1&{qr*53jTIN3zbg#dluqSD);c@tl*>AVznn(mh^uv?VG3aV4Ec>W43LA5Po7i74I% zALF0MRQqa4fsid1v)gBtK+CEbi5mI6$GU8l%c83jwX2Oq$CxPzMot|ul>%XZPs*Dr z<$J}HzY%(gM0}BA@Qxb$U57;fL~rs)NlN@)MJDD2i*Ix3v#4ZhVaD)S zMthi`rJ4z1jamvm_S0IT^%$v?ijLElOOxg0^ub>nFHK(66vd~5LD2Ui7wZv9;0JqF zWep=)f0SC@LOjEADCnGV{kP~YGkS4}hN*$o)M2-fOgj-Yqei#9yr)=jS*2AgH1W`e7viN4#z z)DLKbz0az;2mL+^q!iL_QVVNxcV`GX3uq!re^}`kt!u+zCNZKw3~0^Q0VwEkNlOW) z(>ERj@r~p5HF%E;LNS$)L-GEIk{Rq&=8ehNZ)p)T>O)hGjkW2JU|6>X_d-m#7h-JL zR&<`Nk~?9`DCFyILN4>A0zdik^3sIj4?viH8(d>r9IOnpgh44MUfeZw7LZ`x7LUkg zf5xdT{BNmKOdjZNMy+V@1-2W);z@J?T3N4QYba6VTBsdid#ZU&`nYzSBm3raC zQ}a(VCR^2W8CRVW4$Dj{6FIk}BH(v-e^Pxwr>?(6Pe&J5I18V_sI<;+66asZahoDAT-X*w>8X~Hm#L#mARvQ-NFUSK;izt9exx+inUy=V(Xpo?}bP^Y7 z!}B#+wWL*O4?$f8o(9@1*)p&Ue`mr#(G|diCCs&R+$h1Dh%jx=>kz{h{0oh?THp48 z>5>fF6>JEW`2S=fI{4$5f4)PWK^DzFf;oPT-(WHSB38dT!#CE$BBRna4M}YnC9CJ$$8j*rD8Blh5mi%MC?4y(^{MuOZY+JPSvC`{$&eDJFL zx)&QoeO8T!*mF!OM8Ui$rdZBGENYF}F{!pV<|=DFjBow=?^yO*x8R)}M}Egd_Z@v~ zwMU;DC*d`dpeXJl@2zOne;Le;&yACBgHDjObFc?`bVm_}4=MNg`808O;DIt()Zy`e z{`>y`Z6r1>r2(S^C>Dc*weqUCnL{iMnDk{->IXgwkGLQwLXE}s)pJL%N!Kj4&NksL ztuZ*D>5aelT6=o`T3cX!O{5jk00sB4>r4Oo@5zdp%w93s@y7Ije=)+!uuE;QY^{dX zOb@rcS|jn}XG!Mf^6cf+#!NrH(SXITm@z32g`;=1uJ> z&+ZBT<|=y-y7GG>e+9t=BesBUNmMfja~Q<2?Lqo`_-6(>|y8ruwI zy#3UbhB;;xlT?Hj$eDPJA2LAJ%60?x1uSSpTtEnDB`D|#e@H!PcMD>J7WJx;Qzz?B zEA)~T`o3nly9(V|h3=_B*Av(4v(6^60c2fG{Mk2_pGTQIYq{2^+||H+s7M#M%gaVb zgykMHcY$>lxQTo>c4vCKj=A=D!nDVI-pa{5?eSzW?Q!2&NL5UsvfPZSIB{!v3x=_4 zeNI{AMOI0;e<)BAwuF*!kthkLwJlXi*fma3N!a2_!YL{VTQH0lijwg8aZ18PMoBoq zSgjeV@5Hs(_=?GUk~RO3wMVk_JSnvF>?)R?-Mpn|_hFWv-FgXFNf*=CVL&bf54`mR z7u_wqFZn5= z)idy4IZnaM+pAz#WlU1(_L7WKH^af#zqPIq531*Yyr>Hk%EZN;IVo^FPI8XNiR^gv zU1l?}fBLS(Gxik+`DCuo_{kiXaiN2Jf)4TtbCBq1{WAC6Tkcid6m0L-#Uv8smz1_VgA@q zp>$kG>Dc|}bt0dj4|$>Cm0if+;yPxlFWo*9g_y>I+h=A(%p<+q_eRF3(8IY9f)k7& zC?b95(SGlpq~nqU$<2C@KB*og6s*{#e`C}YX8LhHseYU{cXylVm*33x+8oaG+9bAb zz0f96Y=iM#60iiT_Cx{u+Iz%Fe1e(fAKck zsjos~qC0vs2)%~8NWT7Uu)@3&zq8L$14%}h8)*(S5)aWG!hnY&FPr4`jj{*Qz+sPm zPvJ%H3Ga|Y3mG<*okOL{!F$buHgjTGlCVp}QDj6wXQl~Swl%k00%^4_VJ^J(1dCR< zEagbHLBCieDDn%Al@oyI$^Knge|d6iv$zLVH1HaZ2fd1y>KLz3)tk11`L;8JCgoiT zE|N8HGlWMOye`?BEj|PSXp61nk74ch>;LL;0PN~s+uHSEs}L4qwb7QUZoZyh1uYB3 zWeL!(RtB`IO)g8v^4%dik^O2{*!Hr~F(R4IySvN4d5I*pG`=NFG%qIIe>((_8oxnf z?WXIZ$pIZNbgyfqVt2?j)=|wvU`ZIQ#Pp?~czo(>$39aF4r{Lt$?^iX?GmMSBD%U+ zuOItpwV%{p_l-+yWLk~dWnkDUN-MB$cnie4_R#Gj22lyr07SdqtDQCKC6*F`X|hYn zuZ#uF^IN^4<3^xQDmTn}f3vFV=Yj=o25`{WzFE2qJl{Z6VezF6=w{>&MqbM;HQ{JM z7!qr{_GZoStPQIL$5^e!tqW!;!pbqmq4gdM<_V?peJPGEsOM72#g*jtVbN_9$7a9Q zzQ5&}ZDw2Bq?8ZFgJZH&vMrOjTB*|>sw?bpv2R)yj)|@P=9QY!^xGH|l$dpqAA( z_wGXh&XR(@;knJ7e=8}SiyxnM2_3^XB(eB+cOVWVzXV_l@g@vuP?X@070Nh=6$x?> z^T!@Qv+igRi1dBgxs}Q=dM@{L?g~McJ|nYs#(d)&_o91V`i3Xt`%3aY<;XrS-(zP; zzH)I9w&bH!Pqjbu^hS9w5ppYZ2Pgqle~ap&Rmx>6ZNpr6n)8Xn z%rPB>D^C^Iv;=Id=Td{!<<59|eoD3lF35stw5%Pz`LnBq-PCg!v=6aKefwRcOchLF_j*M zKG{4}Kn%e2OO*yufm)x}vEt+Bdo8qCx`f;S;c5sFe+aLyo!ErQii(1-?#6lj_*UTM ztOX?Lg9M3;DWZb25nF@b0(vmRK-bC%+_A?Y_c7G??r!JqZofW@yTmR?nS*cX#pfY~ zP3W2L*0Zr6I;Qy%`t{FMPRGlBnNCI!#rywI5 z$o--yqW!s1MEmnF8nQPN1ch1gMfr1eni1yTF! zA6;NXGExu)xuV0hC#~9&B1bhtOIQwsB*7~K=-HH;-xn#h&Wr*D1_8tYfCa{+TGWGD zf1q#2E_n?>&&4Y0O+xVP)azx!6^h(mGm7bMmwpn{rXALS-+mCcZJ1U39oEidbk*eV zHTeg~Z|4ue&@RBnK?!bU<;L#%1G}hh+rqPcERBS=q8+um6tTP)fMnFx*49^lP8Y;w zgyCl#T?!RS{cza!hy6Z!%)kDDae97!f9?9zlrGm1vGb%cL@$Jty9UPJ<4l#RVtm0R z_~bT?1X%soXtiSj|C-7OxcaW&!w~BK{3|G2-Scn#T<5;eZ49IId!6(7qW66>c0aJO z^ksw&b|bz>HM>cu#U0=!vDevX)`4qDKlvGdK4%s;MN59jLi=)a$iJnV_nK#Ce`zT> zc?3aXWfvC{ZJ#UkW*(09yq>{&wo5SLJy4D!wqJFeF4$$=uYdGnjRKs}M29|bP-B4! zP;fVe;A-;LV2@}9jx_rl`8#XUlm=JAUTU#O+_5zhRTJ`XHpSb13=HVT8keGW;)b7V zAZmitb$eg=3_gWXNMRip7m-q8e+oaw28S<(2>S;E1UKN1q)dv8cY|bdHYt$hQ=q6e z3Yp3yt8Ik4w#sI;jGFY+!s4OW(|Ub0{bDY#v??!(kh2K$x*J@-#kdy->qaLC*vb?b zeB}w6?(RzE3QsBs&qn7knG%DZGSBz7?CFPbVcK7FHYtBZ21Lkh(-CjRe=J&$3#=ps zrV38I9uQ!+1ss@-2G8W;-5ocDW2@31-4t zmj%1(%MqQ_Fu$;qy$&8}u*QIGQ-dS6}z3Uwhzs7*hSva+0j^_c};OV2-2&SLG8gmuHKA|TH!h+mqwvsi5&Z0Xx^`hIWUtQ@gk&)ID0 zQ^or&`t}XB$wN~lhHB4bsDx8}iE=d>PV~C&^)-|NbS#XMU&q3%f1&NbF$WvrDy_7F z)@iJ3+hJk?|6!__d*`_<_md+3w-pWoSjdSFUMvZVY6a!O)U#3f!gE*TJMY#aRY>pD zx{{Edi`ys6GumZMId%^Jp;IztczjXi4v z9^CuMNTM>?l$m#TfAD5mgk*X~I!s7RWXYYOOI?e)Qw=SCGFO{cLK^TYjMi`{!%}!5 zTigrTs2NR*5i&Nm6C>nKZJP#QpAP_Ny$rSgHVe69s{H= zRq$x)Dzm7o%%<*4ptC5$BQ8obiAzBJFurLHJh!c%vjZDeYjRkp{cOt8KLu*x0$lqZ zv2LQnd(h#8f2F2<-oQTZSz@hQ8@Ya4P4n?)@T?N@1IF2_I$O|$k@6x2p?rj5jzDjQ zH$2387UjS&2g`SvR~d`?^tFWDD!I$PJ0x5Pd7o(P&}5PQAJCFR8O;hQE5Fl``olfg z;{rfH2D}x)Qe?<^94N~I@n93#jA~2X&j+Ej{Pv*pf6J~#b>;Y}*KenJlyFrb=GcMR z?D|Ch<@dAkD?-fWx3efOI1Ywvf-<=fjM-#x?~F%@@38mzuYLM;jtAhSHOV!YoEVbf zi!=1I9nQo+OeIdS!`TM^jY8#F!)oS_cQ}z2KHj&bL$^tX?ndU&-KiN8alF&})+W5M z`RiJpe-1c{sH$F`ZJrY%YIXks=dW$alUHq7e3~%mh$f`kvDm0r$NZ??p+k8?Ih30Z z1pxWRvofbC#`C@mmFJ=|SN5=Uw3OWh}VG#xM z0k;>Qy_|lE^EhUU8#Z*oDfuPA{eN=1|5F8Ye_875J{*FX=Ayp8t^ zmf-20&nl$9ShxE2nEhSBs7xh7defy)6d(I2pusRCD;es|gbf|kHkA>7IbtDnG%D|{ zH!v!1pu79^vjgirawB9z)%T`cF#CbDKbL6#B~LmN3k21bZ>0J?a#Uoc2U)5Y_cE^Z ze|T!Vh+v@Aq34!Il5hV-JxL89d{bB*j05WsE*>rcd8TYT`1-%O@@L`ou~G~5I|T*s zpyj-wMu}CL70PYE2E}4JJ0O?BNa*M1GWkEHMKYkZn<1~L^BuQuv1Iqll&d=>83RBrWhf-`*v2c_63f4JTXS!gP{e-rn-@pzP8B>$pf!A?0L{!&cg>g_Hcfjy` zN;X^ZCOHY$We@QC1gcDe*aA_)mFx(3XH>xSZ!iSv|Lm;O1hlzf5X|K ziKJ|PQ>>Y!uWIjtCa|OU>mT_#9`nP14s73dE$yR^j$liJRS4Y8?!uqw>87%Ic&8wV zaq*>|DI22iamOoaiEoqfPM2h308_)iiYt;kL)w;;R`LE8ZrJAeD@CSIqg`TtCP{ej zTAc!ueV3UfL3&5yd>4)L9p()>f2S+SSKx+&H2F8+yPNzy zzi?aHR^l-HrgILtXv3$JB@aO`F;b5+Q;f$*S8+iW+c1j!KtU&CwUU@+e?wZRhGO)yxCJrPx%f@vTI@%D+}NNL5L)Vt4xpYXn-b7Qys_($-hFou5WIZn_Sr zIqaZHHPey;Pj>qEf3Yb`;f00fWGURRI32PWDtwkWbeYYMv_^?3_5sFJPIa|qar&wb zSxZNXwKV+x_$37)h(+oy3l4lF)JN?03JjzZG>}dfF<0_X!AEP_IVv25if$nl<9|wb z&gJZ=_y@RiK7Cs_0y$M^Dc5<33U0=!SsbJ=yMSoXehQ`ie?A*$)TkOHE$`%lR^Lz#27B|FT6IOkuKT8gPv4|XQ#da;=TkASw%krKteDYAt1 z+`^o%S&v>^kgTRiv@biXUQYypETWguwTBpRHUsFqZP}5l zcZ0sGR~4k?*J(~n3+ceeq-<>U;osNt4>MdD0V|_Ee;lIb#v2u>HtHi6(j)fJ@iMnh z3%-a(f0%4DAJ@`mu&fgrbnIa}^HfmK8a~aG81>n<)S^f@R-f<+h7M*Iq5R`4eStg@ z2zZgXKZN@pavsmIvTZUrkjx7MsX>&Lvolpdo5-+GpFB|;DtO|z{1Zu7u=?ctqQ%7Q z=jwxRq$YXtPG;Vfl|zz*`oJgY0nEnBlCoK}e^fDhPkpShHhbKuy1DxJenAH*aZY_~ zd(Ld)>c~8PBlV?+6>T#!B&|dOx5?bUUc>Ubk7E=d_$7SX?FfnYEIO~n9*VV|WveLD z;b7?EY6OXcU4Q5H1Cn+TCZ%7o&d!s-%^du5V}Mwoh`!EHS=(5CW_g*(tXpkVVGTHI zf7m$zhYa*~z>N?TG6!wX&UHpvbPxnFWn2wG_Jtz=5ftqe_#*PXNIFA23`7-uNzUSh z*m%Q3!|A&K%~hOzThyFHt!Qz#Z{4<2D0SNqeKW;N{I_`FL&YM<@mBT(k2@4!pUxd` zFEd2yNgQ_!^`*q|mYdjHf@)zW1jb*Hf6-usP(2RQaJua2EzlX7cI(P8I#!5tY8xSz z3_$UrTxYFxrd9rj1-l@`DC3|t#PKTq1$Oe}h=gOrr7pn$dp-z~Fe0EQwFW`2_aQKD zV-RD?e8y+4CWn%EJs*39LrLfR1xjfQjSL1gGO!K#L99k)<(hg@G5GSz-NFiIf1R|# z8P~luxe^Mm5>+uq=F86A-O}aV9fF)+!k`(9i-3gsa@#@Zptm+mPWR)WCw9UJO*Xm zSY6M@bUD7V_kosleyYl3UE3fuqZfx{Z>OaEW;P-iu!s|={GR4@qQ8WT^}2|2wyo?& z5=b|U{Mm$%-O3#tvuikx@^34M?ad+TI6b(P{@~bX$ci*9i7<{4wH`LXe^$^B1K>b0 z;p@1yTPBV&aO0PRo!mmu>1}raM~OqbduI^z84`R_Jwd$YO{Xo<;)k=E9LU2f13x!ixhE zU>HEAwUYWrdSy+uhUcb7;6~4kp1Ov88(fzVt{4v>;6GU4z>p)Tf1q2MfbB#Liart! zf-owHho;jm@MF#kKecPg=>f~S(R1<7&B?A~==_*x`sJs#8FvT4wI$HofBC;qO9KQH0000805x~F3+)0?s(&?iBVA5GIh6+i005E! z000&M003cgb7gdMFLz~PEkbxxQB6@|a4u?djZjTbgFq0y_g75u0tp38JQ#=?doyXH zwK4TN(4nk>U9umAX1o901+@oHUS{Uyy?HZvtnGxoahn;X(l8 zlNbuWrbq@+{_{Te$Ta-153Odpp^TEL$J)m*0^edI8%96+>Y~^>=V+J`!u(HNk}Mw1wbpR#Q)yK z3*Qt;cCPtik;L0#_u1WN0kc&lq~87>5EZ<|nfdvIZ<@Ijt1v!iyr7?+UH|>NH}duO zb^Jkvvw6*P%>)lt(Hd=Y!IchZx{g&C zeX%N3dKZ$S2ys}|8vYivq?(5Ju3I72ycDGPk(D$hYQu9d#PjU~k%7e8@0X>YB8q9e zrrD2F=gXT);w%ZJS3$o^sn9FQ~qyqyUw;6-0XBr7HjycnSTMwq2R7Q3!3I zSN%+HDhf8*q!p2hzT!GM($OI$M7v#h5#q}WGy{Z1vzf=|wh){qbNoQcnkH4__mjsG zCIgvZD|3{=%g0&apj9C(f6mhC%42Z1YX#2IEvPDS3d=T{szhKf#%tR**)%h29xgPS zZ(cJ6Z6I+Jwh9e#1`x8-)mCxu7}wwbASKyE!fB`k4Vf*tUh_cAg8~_Kz{C7`Sckh^ zRL2T*Fvlgrm*y%a?N zCJ5N7Dyi{7T0kIbf1IB%&h$%w@)k_*T&~DEIgpP6ZG-iPD73MV7B8>iDOkgsSR-^y zfM4NDkU^WGGAIO9{LkQ7b!CEW@T!}si#Wz)Zz1L~MI*a4aAaqEopuYyqM|$+hK>EG zf@V4vysj1!yo6I)&>~$xpm^uLVAHDVJO>n}ky)eNW2(V6f2uAurcwKd8rz>rDWvTU zAw9Nl$Tom&@{h1U)Cwy~h%-b&G%m8hw}Q$6Yf2N%@}Lt0;&Hb<8fyrXv|V+k*388u zQ5L^}<3K=%&ICfvMPh$0lY-6(bWK2t>;u5?7XTvtnXIUajV}_$!QBj6Oaoa!5CNRU zE_%M{N9^^1e@*28vlCtL_9NZAHBJ#4p9mY|M_7wSVYYcc2dSxqSnVHR`wntNc1!7hp+uiR4{MZ`%%{;Om^6c^|G{CpbVPc;JFE`~7<(_6#wCpsq9BGC?ORpKgzrocQ z8^eGKvs5L?X>|UtyYu_Ao%!?a`2vR_O2W`44VH$T9%wgoI*r&_3hd^L0$VavD(pXj zRLol?e=jL9++~;wT1BFhIvQByq_+GDe!VuJ_n|;K+jpwya}0Jl$k4TcbiGG~Feb!c z1)Iwaqx6y7h36ZiW+#n}#WpX{Pmr18E&^|D-qEqoM1ron*}D^m zq%u}@1_U;Oj2#2H)vvtQ8CGnUJS7#mN4?5B$0D8U!X)_8&a$*V-1gZ(AHOc>X|TfT zBS`7#$7aAhhU)E^1&0LFm>kWf(@6x{g}DjO4OcQO2x31#Lif_(5Is+UZM4K6-tR8& ze-n)-4)p38vdmw<`$bDI4^$cGgkFtNjb06+fL?+IGCMf%=;@U#(wC4ZfEBJIgp1T| zPGXlP5`ry13!!v^G^5ymY4X`djKsFVQ#}msxT3&6SN>(4X*`r~+sDVuG|0YXjqJ(N z*t75ZPM8QYQ6l>?jOfDHvabzUvqbiNNp{Mb5MnG5imVCQAKlOWf9|`U^Ud+OUR=M= z@!~vx*YEgVFU|(FQkQAC+b75R)JFbIDwxPXVkfxnlGLj}JO3(sd4lCaVOaato~=D6 z@alP8Xg7^NN4EZM#Uf2yU?v+>1^|CLoCF;&-HX`g3_LyGc1)g1La8L|N-#WGvCJ;x z`thcGQ2T?WOYpPUphUg%_JVL^i`}6}FR`SD-A63Bx&un?rIl-Z56`-GVcHcg4kqpN zauVs9t;+AJg|m~QF;6j~StGS|D_O%k07PCAEx2fh+L4^vXdvblCZG?=r$fv^Ex@$~uf#maoVrAfySqPciG(pLFg$u7kkeYc) zeYuw}{~2x9=G#XDhwV7wAk>6ioEm+Wx`;KE2_oZs_ryO4-Q0YPR*2)Wf(0c4vfNPj z%AsY1@J*I(s}#za%f77LJdZZ}P}tU@0x{M}Z=VV70(SlMgiu~T>1FtkP2d%lpm&zl zl2gTItUNBUSQ979VN@A<$~r@asV`E4GtFh%B;G%jsi!qvWb0+iTtxS#u;qUJ9jyjn-g=crWq+xd_-y zXC0=@H1l(x(YeuGQ;e{|Q29XLC3iC~mNmD-$kZja_(ZjcU;6xX!%X7qyvuH?O2XX9 zV~J?36{mI*?zhS>gt9LNDDjWJY}ORydST2qd-y9F8>HWET`l`{TIqEN{P5ii0WC@& zGi^L%^dyxP{C?!P(<&HKD&C?Vz<4#OIs{qCVY=j%o0E?&-S{YPD#_=?a=R!lS{jRl ztP;AC`BN`r6WC=o1Usg=lA!zZTKj~* zwrnL_4EVwx19rC?d^n4N*6M)`bT!?$-|!^8*KKtLt6tmGmMXjLha1jA#btqoP9=o( z<0|;I1n0f>dcWIvMe>l8=-04jOm>tbjgf5A!&7{KB7Q{54gbA54s1r~`U)BjFHFAS z817Ue&3|VzPCn6%{izhNNlyKPdr09dA*hU2dRc6C6CWJ`YEEE-pR7yuV5~M zvjj0TDIgj&!<@*nT{(kyPjO|r5C(!S+}m6TJCOK#CER$jL%@ZcGpP)0pfmZX`ATq3o}dK8v!@N&CYZ~_56l!Sf&rDQXmew{!b zlYaxL@ojQx^zJg-m9b-IA6urY%e9Yrlz`YU@=p#9ET!t%m(I&#lG}}&P_GK?Uoiw< z_qWY+#nNrx+E+HM3{PXhP_L?-!d?oTd^m!yP}s{MS_9U^7cG>$^=cyK>BUOu zSC{UoD@>h#L!<)B@OUHUB096SvC^~v&nIVvicc+8e)1ZdR*p8~Cs&_87%o5GK?8Lb zNqQ$rjK&8;=b%4h`D1>9%+yOD(82y^FlYp~+`&v2@MU&~ z>*5x+wDH2gwZH_?gW(k#?lCvFPF1i$#jpZ!u4HxkkPuki7JH_gt{7`JZD{LF>&W~r z$6IqHM=XisvPxoa=;uV9c-4jU>?aJZtgRhwHsM`GznDqGyXI9ow^#G-&%mh?ePKKF z&L(2R2DbWj^qzTDQz@A6I4d=!_sOKH(J+*G_!*6epSSZ?dtx(EZ010m2B3fVc z&)i5AMa-b47c9_YQcm$HNUlj{{)+2TW8!)8l}N%e;<|>xBeS3HvbpNDgWz9#z#OY( z%^uZ0hjr6}DVJr#u0k(8NXpfc`iyKJtCZZj>=w=x{NPmvy`{Exa$B<+owPsAE_SAZ?;E;UajZCgNW;9LNGdh*64}({$Pb*zdZ44 zz}Se)H`k_2`EWV@?O}K02b1p|Um1JZ=LHr+=lQtDsZK{!e7rTxkAQbx;l^?EEX6XP zm_6E_`3RMkE^eq>;Sf_cu|$~A86u;+>xrs{lTLY*21^}qr)4^gF?~!=P%ZY2UOc}! zp+>KOdvlM(p;06k-@d!F+K7hn#}bi9y~3RSaxt{?*T8ybh=HlxDPrWduV$-7<)aPC zIxA6Gba(Aw`2i_S2jF~?QLIR*J?K#Qh{p?7MLas%Xgv~wNmDc9qjL%-X#)$3*A!`J z$O#841vD!##e^)M;3b3FRuZ{8ww(`eQbVj6_H3S|npb=qfT`r6<|<%v;%kiAH67_! zT;X*F1DfSGdJ;I)nff_Rr8vg1RkfY9K6HqUd**Yj<#jh3fTbwMi~CoBE{mB6jw7%6 z%@>GgqxDK+Ny+NP=X_yyrqGV3abZhQio|NL&!Kd4_gzK%W6W!o$DJ^yW#*xSNr}~k zG7WkS$jO8wqCP+WpPsJE>#R^c_C@T9Pscty&(Cb$yDk0jtm8&3#fc8M99vGWKDYJN za%`7Mut~Wbh+*?ypmXV*#_Oj~SI~XWYL4?CS^b#gQkSrLzuITL0*;4{nRRrOH@;Z> z(Agm9u{Bf7+O&!uZvVn5*Oq=-PhwW`Dm=6RlZ!PYOLWRMI=u56WIaiW{1^LY}Q#q4J}L~OG+ z+>$r4=7zq}H^NZ(zUD{CLP!GZDNf#pFPT@$4km`w{9NH| z;_h+y)Su{GgDn{@^%iR%uhA{N&Ahu8-FWs;fac&j*F=Tt+q66CXg6SYU?|)`a?j&F z3|u#ZIzgSs9`|xW%}*Gw`vj!DjE5h@yb`LM1!7<8W$5tz@|gXarb)}XwJ?2JOoi{- z8h`nSIp1*%Y2NXZwSK}X)E?01g&mFp{<3vqT@v=}3ryt+`EBdKAFN7MU&TR5SIO(b z*9%On9^v7%0b3P@we-x?g;=?0Xam<25>kOpsmE3ksUgn0 zNAwSWuZzFw?6yYE`=OU?xfsYsv2Jvo#fdCEZKnme(&?i~@Xs7$B} ze5AX7*iw^_aCmHNuF?n-H)?gO9|-tBA7;7u-*y^>H70k$UNM3%*)$pYbzQFCRdUS z%=zoCU(tM=EZ&)U3iNYjBqpg<@HboqiTI=I-~_Z52RT4-DD{;V+NDVHzH3Wxn`i--=Ck-aaX&S(e>E-dT|%d8I9~ zk4AgPP3*cv;)zNW3jTSHKj{mFmWHoukS-c*eU@JW3-mp|D-)>?N*o5TtTeJ@k67|2 z88r}ZEAn+&@YG3qrl=mIC~1H!SC8g0k!#E87ZN+$$#_e3FlE`oGb`bwv2mB3FWZS z6cID_Q1uhC_4G8!0y?1ls$ksUg|NAL;cWP_L7h@ENcI~alBm*XyU<|jO zatS0rAS9tca?N-Db+=Nt)B-$rpA9oe>UjF}>681>&@}5Sl`7EPF~K=s=7PExOwbxrW*IgE-Z-N%mNVfem(AWMftE~7^lgR@W+Qh zAxiU&q{8OeJX_-6sw_0s0`n8*U`%yM*-Mr@7w!|!hAb%e2~$wblqnhV;@5vf!4gu| zO4>?)Tf*{xzpy2#ap2#)za#-1yao7CtyRH)j7Wgzz!1^@c?j(s9oj@84Aczz#|JfE z=F1u02X(HLE9Ds<)R}TVTf{+KtP!B*OFR<-HR#g$?}5qO0Ay$QAs{oE~S2Hs3h?ShA%^STAV9hI&aoFf8Z?t?x>bmn-X$ec&P! z()N<%LTyWrs&+60-5H4@%p~Rie7>fx8SYw| z)(IfIYzc}yk95Q^S!wH3ft2#gYf4rT7#50jd;%4hY6{F|Yd+2;71V#ihR;1@DHA}D z49!5*)bQXr3VwK43_fXwC>f88`vcHxQMOIDm_yp{o^(MJVV7VO36|B5!DPUHUeb)s z7v3W{Excw^;rDpOjjHJj1U>+X6+m(;I_0@-n4ke&lMzT#2WhsEt&{-PNdR+3%MK$+sp?Jg7TP6gXRP@;QbD;P^zO)1g>^bcEdH?t*Jw&^2(N*snP1>J27 zvMYBkYOoAg@GWT7omU2-M+gCMbnzCO1qBmK0uoBJkx`G2aBNTb8R6{@67ufcypMT9A(X4&PrmFd=%!EyqAI{&1P{Je10x97u|9gwm}k#!%na*?FoYEkpVM6 zPhk{~cKt;nz0<7-PDBrXj-d{t+luJXuMZFSD3)uRJFEme^rL0qTf7ut1)_z(%R3T8 zaJ5Kefq$e#*^uUF2>>kYts1I?A4w3lRNVJUn|Nt9Qkr**3#h*@;(Wrg2VO-fs z%ngUk@0>9Z`GcJR$vwV>3IV=Zn(k1(5XrnultykGA8f;I^v7bc@WvXj z3Fbkz=BqDVb1})2k@ZJ^*$Yj_p8D>71T-Z9s>ou(`3$FdcaaZ_+i(T*$sKJ<+Jl4A zjKJ3&?c+=Wm@a*J4AviiJVnQkju&(!!tDqCc4p7<7?^qTfJI9iJuI;C;zXceMwjSu zzJl_an52N1cCgSmT>reev0)Dy0R=$60RBlo*`j`=wdSEZZJYsrd2lOAOY)3@+zaEA zT#kexooajFEc$pYEfX$Rjm}~gBkvbkUheMNS;SvIi(Iabb|87v0y_|Cl*sYtBgaR0 zI^N^wr$*ruVmM~d%Ms}dfLO{T;En>5@U#*c#*_IE=9jm<{a57DghdY|)TU;Vb&!Dk zi*uqgAfLjm8sSBM{i75P!9Q$g8kpRczS;e;JSu`|rRFPH0o)H!FBoq^B={FT!jW)y zSXt4ZFuuZ>DAR*8zUTnK8%da8wUrQaa}!&nNW$VOH-8!E7kK?kygd!c!_2+ER2<^} z(O*bt2yytgtRaTIXwoz+haWyaH<#BhP;y*jXx--A)wy|pJw8A8*Dxr84c{Eo{ySp= zlzAT`=|rS;irfK70-aFAoubY+Z}ENH%KB2NyU-Zc1zmxGfRo`XjCz6I07C?)d`S86 zd%FO~`fp-+Si=!!vEoMTuy$8?YWVQ^>5kbuiXyy{Qwj*QQ8oi|7f3~E`0A9W-$#ap z1W4y^QgoVsZXt6QA`-XLb2t?60#I~1Er;I|5fv##9(Cr)CRj(j$ABAB;PP3lWyGi4 z2hZTN0^9Wx&yVBPcX@^!CPNln^<>QMgJvlTfx)M>6^IcZAK>Q zy#AuAwJ>ECoccrSxbU%FjQbz2y;qJ*Un6GI`u8_kZ$b@G}8^s^;H+ ztt?A_Os5Zr!^44p(2Ql81I!03{8wTxONWwn{QEBk9W&s+zy9Q_puR3xtAzOXUv2Io zo5(z56(0QU{+|N>|CNAi^Y>qHQT|FmQ_M#C`>#Ja-mzYJuN-Lo{TKU?@n1pQm<#&f zf1#;=5U%|;sp`-I`i-iGXS=n&KqYOGeOx%>X%ClbFt*d5uq=T!I04l zZ#^N0cwql{BAHQKE{Pq3*RVmJSDxbS$^^ouIk-hQZ;OFOBSXD95=B}{sz}kMLWACa zBm5)6ievgYYoJQ=RO*CEi1>ZEvxQ*VOG6gJEI?4~ z^E0I4#Xp4wBn&zkPozdrDN?M6?6>Too;q%xTKz+|l5FmZt>jzslq33v7|$Cxrwh7d zY|5VH z(t-LCy-%gW78d^_7!J}*D|?0e!tG-mhbhx zkCXR6%^OUSaTJ=z1SqIFg~H~4HIf_^h~tgbgdPeE740P|4Rj!YEIQaTD8B+zO%U}% zs(W}7ik!JJk&+&-4OIDs$!AZJ}vWbqjTRwt~sV87uQq>^lB?@zJiq~wxh{Uh&gw#mC*d@O&LHMjc*DZ z|94Ns&_Yxk8)*RFFk~@*h_a4>k8$;GP_gA`r!Ldf`vhUL4of(YwL<>F@Qe$Tq6xTT z63}%B{zYeFNkOr`JZ>&^ za+c6@arEBYTyaTAU6819a0-h{_?D9*(213b1*m!*#vH?1{9#;ro zkh9&@9dqL$|IRL^xpW7PlE1(1ktL^zNHG(+3HG|C+d7zy1!@@IWp2Y* zjx~Al7`fsJW=8e)jOaL>k&{~g94Oso!@KZyG599;CLbLjTbhYMfnc1Z+aw+HXJ9wa zv?E1FflW&=bpVr|{}zA2hT9{w*&6n>kb$TRTO^tRYb>jt?mUmF8PRWIm^79)urzqh zp|$ynsNG#i0!W-8p9Qu<%xM2n6A?T~^S8LwMVz61tx1?NMyyWJP2{QNvDsb~!ecc1 zL=zEVJ6^pN`ULN0ak8Mf{pQpaB_YpZ|U&ouEAIF|WR9*KTY z207(wbW!!#V7VU$+c<*>V~zcK5Vxu5YZ7U~eBM=edXL9Al<(N<%a~+tN1Eq)v;y)j~ z8C?}hoM))daj<{QQ4CNQ!j)Ah8d7XbkB?rLe#>8;Roz_&=9lAW;{pg7qx*;vVup!*+xg>&haA_)hy!-ms{l8qVUGPI#K)T{fHYw3I91-V%VYlZ0 zFK=OhAXrsQ^&4B}*RTI^hdh^v!9UxgoEV;T>B%(a$RmH`AuWJ+DGR(y0sKmpORtJj z*sLE8V12o}1Uvu*>*pWn@sDVr6c(}Q?q2l9!)fy%=vN1m7|SAkL|~bu6c2_~Ii}=h zr>x#GEdHMwR`qB>b(%;Wn&f^&P;-JcQ)MyV8MHY5H-P7cdqzj;I?k!OQJ5K?Eldw|aVvu2%k+pFZ7eTzMTknr3 z;QzRf324S)=CntNOQsw!@nNo)1yDXLMDnD`{IU)?-fH#h0eYH(;weD1q9~uNHB&BGl#F|#{eOcKJoLsnu7ZD;XHDC}6Eb*%oW)WA9r4!CBgHi6 zDr2FIi3#TB59cew6aMamzdVv|oA90EEQb~n9d?no(PDUg(GZrQ^*~7n9-SI8DZ!&9 z)WP`x2(4e<6c&OZCy4rA4(tqw%La;C^^QK>lD7a`5M&G>Mqh3R1E9-y<`_J<(RuP3 z_c2c_r5Q5fZ4%g8+yL5;Z91}w!QkL>f|3Z85PKLX%^) z#RjsbKU{6+kN0-#j_M{D4UQx+7>Gs`wGX!F;jm0sTI>n%tr-65c)16V)dS+`sEH}; z1EEc%27zMjeTBFTWQh54?ZCgnodr<~J`V$Ul`n^XVTl3)Fe!rNs?NbT1MCB973wPy zQ_FSF#)cX#8HouehZ|eL)7TSr;4our_=dTwqbCenWQ_%&Gbt#WCdi!-xEYY_M<{ay zXC@#X3Wh^;E*H7@_2Q8HeHAlEHbfR3VH*(8ORUoqI!S0BsEiia(lMPJV4|A&N>Gj2l2I8!~`0_sl(bdk-^{g@7MCU$0AdIJ;2e;><{PAF>tE@3aXA z9Dev^==nNa!GTIR_=OKxM0{L3Nm#G$m023X%=_q#7QXWo@o1#@3-}u&Hil*bDlg-F zrS~dvX&`1BnTtL^bDcMsEjZ7gD4?5x z+7a;KFTLmQh%{HESx+`jz&NHjQTprRd4!GOGK8=JTrNlqidqyWHCLKNjf7|Lo%1^Y z1Ma~liegwD%;Lue&KSEszzmZw2n7m%>Y6g3%2@=5oFpcG@P$PHL}{+M`eV!j2`3O5X@sIUhz13$<&p?n4&v#u z%%2G|b6GSFFGkUT`gFo}??W%0a7YS&;4<*va1#sJ2zw|1h6`~-*s@@b(GKquzhtp4 z4{>d}U&GBl(flQdo&t*MdpU%H`D0+SDp!&y)p`Vo@o=epuyiX`+K$0eR%0%@(> z0%Pt1jJc~F+yrv&GRV0wQGz&(D37d0ksEygWX(w@2*f+bNvdVfWl>0!H5F_wNa?<< zslr^l-)gFcf?u3H1?3ktLYGR)|NoJ|=|mU7pU+{Bm21_2%yr!yF> zs-q?NRYK1~`S}h0U3ts&YvAv<{RRPI0)L$GCClvV^YAcN_toOE-?!U6PB+Ba_(eNx z+1C<#N}dnxcD1u<=d;;)lRNb))^0UyvM#U=;ySRY)snuMXr9H=-P5I;QL$`ZhyAt zs!|(n2KL*wT)w0DV)HpdO#s*>RfrO#f1V^%5Gi0Bl2F>u#SVO1H8(Cv7`HORlh|14 z(^qz*kGsl}Iq=huUarEKTFH9JaBHcNn{MBR_4D&l9?k|$bJALOi}h76Iqq)f_G&J_ ztK0hf+q|jj`ATg+m}`eAV1LAP@_#+Oct5wr_K;f^%lqQe{&?A^^ZKM~e5|-pvfuCX z;y^4m`^Vg@QJbfw&92_yip_FPZ)T^}6?+07>RW(#S)EPrL|t$abA z*3Ef z=3u;juNAH8dZgHPKGPU|?3b2hzc=dD{Ny;;2$NNFDs1y7xn1n-3tV%uP>QN<9jC&v z-K=INgPwIt?rThP!r6LJt zWiL)DcjixQC8rjah2eB{Je_5|)#<6vBi-!E_E_F7vz%@k!|6orjwhYUux*b^V}Y@n zvy8Fav7`MKP&8puolTX)h%dLA+q7_+tn1@!dX+zpTPj#!b}#9b&3|c;7pwWUHO#j9 z87Y67=yhYW>W=j4!Zb^*9jEtJ&pT}}ejRN#`D$gi*}mrbM!9<4Ro1IcW!$MIKL+jn zrrEEImFaL>9y1EltG~VUr<1J3whH`a$V_;J8#JsHRjp+;ywX*8F4ma^TC)cE2N?gx>hD?iYIf-Rm3M zt30PgeV^3S;$Wp6v)s6*9+}rkK~w9($!MOpg}j_y6^}26w6)ksduIJ&zRBmEbRNB~ zH!Qa*wO^Z=&8)n8>AiP8Z1Hq5Kui0VL$l&+s`|=I zkA}t;hcE9lZhx_8Osi(2TPRi=)yn?0-80VHQul5C`j#{d?Ih(ofQlY>{miIPecqgz zaw}&KUb@@d>swhIulMV|Jm|5do}iTbgRJ~Ek*kgU(Jlcr9xu-Wt^Qn@zqjp9zG3fn zL+Lc??Ko~%leabNSUHtS&FZ0ZvU0^)-ng% zBx9|cb+#?`kKJtN$c!uPRoPlra^2VER8rQ>UGsHb)V0FeHaGp^M~9iP%9P)Z*R4Jv zI9+z#uYa^fW}#2Y+`GD8mj>0^GJhylJ9DOAtk;wobKKY1g-Eb2HU^YN=cBByeN5r`eeAdg)6UfLtZ!#^&YSxw` zmvE zD`WM;;Q9QTS9@itknPM*`f^Yc?PXaXXD3?ax!o5U?Ok8a39q|sm7nY?Z(V-(d|1Da zjY^?2-=+H{{j?Da+H^EaZ-l08X@`Qr3cX^Z!Hl=9*H*)9p7!h^z1ba#~yZ!+w!TS2pR^LQl&X^?x}0u)5k?2K4{D&L4DnF0;=?$q=7AT(_Rf91Gn+ zuej!G7C*}iS0gREFHQ$V4qa&^Bx$^{sb2 zwR@x2jq#CwW$dxKs0q!N0sGeLTT`>!vkbmtjv4#3%5^&B?q!#Ee3 z@6+l|VR_3q9&9OXSLD6OFMl@U{%nv-H=em!qmr>V%t)`Xox-lA%u33KnW;+odTY3N zXV=-xb8p|RsDnj!T-sT$@B8(#^?I&lCt`Jzl@9&Qi}K3IJYUrSftcs(!)$I{$)|Ip z7@T&>Ft(vt7T@NOZ5tvZp)TTeSem>^2OSO&s5g! zgYj<6hxS1kX0wwvs9RF|MlIhy`Om%^ldvk-gDK$Z~>%(y0+WZ+x1b> z9#<;)^D>*+p0jDLG=EU#vs@gqm1XAb?V~l+UOMH?EN9Kw&M5izth^X(GATV*jPpuO z+l4o7GF`pBE7NSU{M@y6i`i-`jLHL6I(KUCTTb3qX1#4sU1ks4b8>lDCAE5GE-})` zddqcRDveX0u}7seo?_96YJ8R5IJY_5{%}6%SA18xuyIU!&hKo$u0Ag8tpnWWQt@-LB*<=iR zAoUJ>Ybw1mYrEH+P0q$@Q)gr?U*b1xF0+zf_QGM+eQmck##`(3u1}W*qh1^5tDIf$ zwhDzpqtsJ6Q-8MBJDb*^+0GR+i?NaGAN2ja`I=*rOugJ_4NK=~tJV>%=W|ogR%a>4 z3=6x``LxPT?d~!wy=#>_vJ==uNMxh z;cziMH}ZW&)DPC++)4ue>aY=~+_2OgbIV4pQ0SG0=YL9isZ0IpbGte_s?E93tas{$ zeqPJW@~u3`t;9`Lnpnk3EzRwE^J=-!Z*ztEVQcWF*g35%hMAq7ZHwFROM5ZySWBy0 z?bcpKhxy02Q<;gKnZ7K&9IN}+P4~?_%KPS#=Vk4{ydScI+~9p^=nnb&p6IHpU(VZ9(P-k%50FZt!Gp^lHu%6ybR7Cv&-`TV@v@>*^p&-Z5Q zW4u`LQU%>2%imR%;fuOo=N3sks1T^~_sVI~Hu&s^u0t(`a^$ z!cIMOX8rR%w;HG~*+Vax%arr0qN4N6>a}CN0x7`~H#58U%of#Vet723{j@w=KKEy< zS%2nPSqb}jNt$hk^?6O<7W+w69W&aocx)eEOM}A9Y9?Rh>TFj$KWF;Z>g}Vl>IuxS zIIK#!;&N>3hk4E}jr7&d{#XKGzh*Sn2dVxx$fR}AZcEu}e*|{ESUm0v(|)l~K5hn? z8mIErkujRGOm)&ZSe7Br?66m>qYx&a=YAgfD3gLU6J=RZR0)bB{R*-tWJ$g+6qS3ihlKD& zGg)1!6Sg7I3pqBWaPv0w*@Z(4`oOBe?77QO!Z*yN6Z8r#jf!h@^O9^woIas5x_@_j zO)i%!;>;k`smB2<;o6hE!F!0T=31SoJTbO#m_gR%GxPa8&VeGMA-Reyo(~?epeW^j zBt_Wwoev|Ji5ASYbFfZF3A+3c%*nan0W(?MVK%FnnPN6NJQrSyYJ$1cmGdSrXWfzZ ztWft?1yJh#yC|&277H1(!=84(-+yEXf!sUr93LS<_?|1W{^*HpFhDQl!9_{99Ix!!grR z{b$0RE1D^JIoavy$nl&=L6~`T-?%;{nC^=65`Ci3#xz3ep|H}n!u>mtbOn|0p>Zdb z&%%G{o+a0UXKtG(?Kr=o7Jr^X`$x6_{|zstqeX&uB6(O%dOvB3D2KgDBh&<<6tvaj zZl=_V!9GBM_E;<@mm+M%jRN>XH?*ZJK2|;&P#ZJ!(DI=zLkB=@VLh}3a0ncKwpsRX z<{{7IStge++$Y*BM?Q1x-zoA1Uf}Kz?6eL*YI6NKZ?a7ra+VTDOwu5=p9Hu05=y2E1>LCOg~EV=%F?pb=(M&-u&P= zj>>L*FIo;F;q?$Y3dxVZ!6piq4;cX+e_pFZSv%_V(Q4)V)xyYK3>AC|uCIzt%?)0_ zj^mJR!iNA}CPgiD1rz}kzrt*QbL_|U?A7u!?~#mHiVgXH1;~A6j81?D$%}AdW+WH! z{JPXWiut%cD<_l$FGnqQJNCfAhxw{&O?sg$WTG(woX7?4(tL?QxWT!^^zqgVe=JlD zHRoh8NazMkwh^YmzI#6U>{Lq$BFts-C>_Ceev13>%gN24!&DxWyH;*Vq7u%k5l!=V zErmE6WK*JLrGxQGFfp8y@-gG4gS>DzwmXPa%7%TJl57R4kBc3!o=GfnJ%roj=cff4 zQ>eGnPrrkRpjLBkxFK)de`fPub`MJkXVs5SZI7dQNY07L(*nEDEzHn$G2Pww zQs@+@m+pjzgvF0IgMdLt;k$X9QKnL&A%OxgdN0UC2vZ_}*OHoGyX-W>vY)!52A^~8(7;yzY#X*T-`odpoUC3BLZD-Z$ny+-%_R~#H{Ht}e|J2EVqe1J z^8ARy7g`f!Cb|YVelOuA2utZ8&sP>UtIG|$fH?|%jBhrLdvW(K?{hjLk2f`|Gc-pe8clOaf<#O2|u zAK=RrKyR233I^!F$(WDq!iZ+~gn^_ey=Txgy|xpP@RPd-bz!I}kxir%Dc0Hj=Yu3WhvX%AWG=vie=_=u5W;(;H|kF& z116L3pR(Y|J=GB&Dxe+jY=_j7L%JtV<|XdsMp?<}YGC|c2x>M`U)P-R^e1fYCe-)t znYnzP<8%4^L=j$JBuz*VsRtufbX(n6-(yS2n@xxW=GYzPv6S4ol`K}!pxuTR+@%@L zp>#QiXxw~%gW6GAe@Uf;m~@-BG_kNv6Bmf^?a#pZyfN&p6s2Jq zmxeK9!9?i7#M^EKqTYXd>mr7)yoHMx7N{|YEc$@m^`imVf{{qU&c<(yOkt^>FfAi;EVy4)}Pe>M=W^O7; zxyOK*Goke1z`yxd8UF+GyZsH2LHb{;8DHLo%0vO|$hkY0@N<_l9RVr^mmW9HSPhU=#9!xt0gW-`61>VC!FjS%#QXr7x5}-8( zl!9$_>FIlZQ}f|LlE+gqyGdEYU44FTfNUV)NsR-7oN+Aa;To<^DhNp}Pynouc@R?% z47?xEGhH+O9UGM9!8ZK5!k*mY{An0yssLdxxDd_VQeE-h}J; z8KL2L6GU41NJ{pYf+#<{yI2>B1$X#i$-(c)Uf5hBohUqo8(RuspUV<}@q7iCvu`(x zL`n~xcw)*i)p5;Z$f)D5i}#g`USY1a?J-AW=#N8P7l2TrC~#s|Rw4qS*t*oki7kB# zFwq?X!6X6J&R1K(Lo6&gJI6WHBZtG=D^5-@5GM!+3nvM?3~JnR8>UwlyD{XtvyE#8 zb#KKi;6i=C{$9N(Gma_DQto*OhL^z~0XKgVkP)30k+$8@fJ6os0yn*sCtY~S=D-mX znd0XsK%u=6>$1iB*JpX?g9YbPj1W-T3g3?o1`8EMWmqtDLppS_4o0+)mpAd}1(NkB zP?qlBUS{yG_=4aoVtAt`AHe}TM@lMn7FOWY5~D~#D@7n0k&=caq)t%gH|pQV7Dg?W zQlcwNYT~i$X}qpIa6~3XU_imgfPycRMQm9Aos1tNCX&gTVr2UmZ6brum!u#8K!1Z7 zIbNk^l68UA$PLI}OyNQ0_#$6SC@gd#RyrwMvf+&oQiem(*YC20>3AXw9sR~=d%Ox8l zUAqw177Hn?*7Fxb29#-Of;j=0etw#Z=yi0IooQNvwTY6f?@f_*E6qjzhJR|ob4TLb zr%39jZ#`H@R1euR<9bPu*LEOf7g6>Yl&E+a|Mrz*{$oIo1JvhK>m8$&|o{7e1=nXp4b*jjvHM9$?TY6!=!U)4g_xX=`) zrM7*FhhVi?&Y(-@*nB(zTbe$=4uOc^U)VRBGR|lWdyC|&3pp7 zq(0=)=v2Q&Snx`QE`g=lO+v~;xB6Z)kZteE$xEVx$H`mE0KIO!`+o>Sd@ia2y`w11 znXIod_jV7~dCF18((jcD)CF|CZfG(v_CwXoZvrESDG2{>h%MoRhWGUOsn4zOF&-If zhz@(>RfWCmF#MmNXc=kyoxKZ#@(M+yHtleC_Z~fRPCtj^izSj|HsVX{AUyFM@#mj* z9U*Oo(RE#_tmqCcSc+m%BjPl#5S_T6GA!Rm`&gs$x7hPXSruY)i%=POmVF1Wt^ z4p8|3sQ6L_u2&(Iemrk|gZ7Yu&6g|&F@}vxRj68YuLAOc3x6S{CsxO(b#T7HGe?lk zIp?H%r+pwhXCoUsqzVdfH0500eizsH1I=jjV1MBy0_)u?uwa8bmoQcNK-ygD6B+A^J!=oY7Z zvfgb1c^sW&xmyn(f;>`v`W(|Fahbh;n_VO;2(fF)EgI5LP$zup@WZSxVKBwpX~OMa zQAkq<<+&9&ZaJh-8B+lg48rbQL6S&X#mxM>-%18HupSx?nVk2R3VlYu>aiQAxD2Xd@=rgl{SN zMgS>Xh)`%^_#zedfe#;iL)ZaUz<90r$-x>oFcc2EF3LhVZGsZpx22-$g>o=pZU1W?l z>bUV;mjc5F!eupdv>!*~elw}}s(+#A=j(2gSM<;hukKxkep&O0;D;jdzA5>J8F>ye z@`MRD8tdUW_4+w|f)G4R;-UwTg~?is*_ckJMQOf~RPjDR&~DFMrbx@%Tq`fSy@q*Q zigt>n#`n=Z4kEE|p~2pwi#ByxRWa9C;_6lJ+HQm-D4phJ>+35fq&~Eg*iywrp@ws7|%xrS4R1n=>qcOyYh#x){9;!4k<5G zG#Qe-qKW)Ik-lk{WIVzt7&GL`og)0SLuKhfu9+KyTmisPS`cWE|4kPs?0^f&I(QGa zDnbyoUP*$8f@v_@856bRrW^;NkV!hSJ)&9~uuhBbaB(4jNS3r`2Y;Cif@U3&6s6sF zgMwpn?oqkyOAVoeiGH|v@Lp(^M)Qm=V&&0q(rZ4EPB`uuTQD^lni?ti{NK2~g;B%n z=O2%0jPQ3iIsn9kw$iqbrx(9yAoIv--c1ooQ&xLG_)fHA!8d^TwPSrIb0ngo>_C>fILr}zTKY=2TG9)cDD;tzSR8Ri@a z$~0b~$dDbwOIgU;$WtS37hlKJ>(nhO^zwI4{!&!e!gP#%LD!r8C#wC<=li4^{vzHG&m65K<^ zOhBy`yh%1r3Jl7BF@Hu+55PwHJ{QGbgtX|CV1ojTBQd&Jp+dXJi4vpe-J)eE(T;&S zJi{;%$Xwjc0j0PUCK;wvq0s0^?m<{UbwUWB>=#|fGhDhB_=sF6d~bLoz_?q3fH^;U zh3GLsFqIk1Ej|;w_`$QAB zV4q^cP^c+fV!#!>SzelX(?QcKT%MN!DgiZrK$6ONIq$udEn>$DN}Y*9p#mtNUy!qy z{6t$2?xIA>?I%2)ySqEwdgQl~c;E_VVs6jmIp8(UfRp|Cz;X8vIrjd6&)u_82&Y^h ze(FG&X!*}izy>WAXAQf+#LHI@ugajbaAQy-ehF_t?a6>qVwtGQO+pkQ(~8qQ|FO}3 z0>(y>CDV+Ja7FVbgA;kor-Q%j)A8Rrb40S7Q0(X2mH0Gr!blGhiYAJQ79=Z%gGcf) zHgmET00ekGU$?B$oPEir1kr#CbtBsG%5kQ(%Pf%rLKNWmo5TY;9g@HdnpWZUtaK%QDW>ffB9 zU#@~I8yiJ%xK5fUxp!ny9R9*qgpf|mO^OnXnM!Uk{>P1-4UQ|CAnnpXBF@%-OD^ME z-N+nww`ENXD&k(XZ1I8fZJxf2;fxpMqVR2_Y^)%B(VA(BDQX^{3wr&)SY?1*sc);b0yuNh{OYlP^Kn4!5~FNaHBwy!wscq%n7IeTU^TUN+B;adelj% z7GM_z!Md?cr8mqXH$4NQ%x>vbKJdYTN}xeF#3Idg{aHbt2!jI1b8dCtic$6FmABjEOy%* zu0}`+D!WuA*MitIzx_r;?j?cUXU>Ovr=K>e+_%Wch{%Y@#zmP7iYQGQ{@ox=@}d@n z!*o!Nc~Ue78SfW-JLVW_cyW~c@cd@RU{ z;gAnMq(h$jqh`^+{Lmj$nf<*Fe|Yu!2*-|Lw@3B*pfU1ielrz+y=bUWu{+&Zu+(CC zd0u3k!{^NJsClpTVJvd$hvD6v18 z%lR_tI4ZoL5}Ct)jIO3s+GE3+o&{XdJ6NZSCZA|nf$wms)lrj!Gu64^#b5;4MldEe z^k*}_;die3S?!O0c*m~^`hvUJj9un1o9tU9_B+Qpe)5lh{73B{wf}_K;7QJFhrB;1 zFebx~<|KplrG7QXQPTXLLlUNLrIQ=z`lzTi27Ya)Kj7zoY5IfJ_L4!f)=!4DsK{&m zi;F0ZVBh3TS?qWe<+VI5vjMLS0Jv%plr0ZyWisShtr+pz!QQcou3e-hR+nG`RMjXZkSh2vun@jzeW^WT zJOKn;@|_ew=VUSj=(Y3d^g}+00qT#6hcX=TVm@)k&cly1m}WoEqsxSC<0jNIanR_o zE%x4jzeD)NC7tA9k5ND_V7MiMuu^%rExt?YW){A`zyB~hz+y#;GtrE4+Rj_)c#B)tKSfcgvi&2(NYuj0dE3YbUG@DI7s1^Mm9MC~h z6LsMR%`v$KOA__ZV@NF0nixhc&1(Ico{{N)C>o4vVtF2~qUre^dpeqxg=k+s+?N zIytfu5oGv@oj3ll2kx^!09HPg8Lz+#964C!n{YGB`Zth=e%X!!Vl#E4e*STqe1cAY z^Q^dGpToOB3FmB5(B_*ln9;i*{00wy=so`QdO45P7h!572h4Q*siuRFF=rDzuh~hk!Wmi$!>cqJ)>=RaKyHfj*;W&JVJAU_p0`5Lkm~O=2YsNq zwph;ndVQ&=j;ulPjR`-^`B}Jyf5oAH+v8zByCh;KZ^k^iEJmwq*u5UoO>H0Mh)5uq zlkk0q$Jo=0M*CHd`$VQ;9a~&XG?ek#Pad{9KRIN8zbh;L7C-$7P3lGAvFqL9 zGi(qxWpl_c`ej^Tw{vS|pfhe7gQnzQtVxkEJub#4w%^_IvOobrPKY+>FEI37~Z5ViNs`!dE&|-vlUg!m0*zy?sz{i@WXi{(4Tfv^u8PIrg8U|-i zE}2Fd?{y!xPT!x+#L<)T@X0@apR7E&G$4NMOvW!eOpuF#?$?Hg9YB~3wwgtH1k^)v z*;s$(n}K{3`-joi5kmr4S8a3<@R8gFqU$0`_|Ut*7coG{#k`+*2ZN&w(%rME-Li3x0GcL5?zikfqI%h+1kn zm9Isj?>62;8k46L4DEer z7BJ<^TdqIx{1p%Wu#ZrHrVa||HT}u;I{oA`-v>C?bwL#qi539iV(IrQjV0Kbut0#8 zdA&PE};m2`44ntrRO8Unw0qn>-QN=Ka3j~C~glIM!5n23L}LQ3Yqi} zfAj!ZRCs<`thiFGYp^hh1f5WTf&t7;}Wc?(Ma2zu3FuW7wmdN=w$|rq5gK)ClaAv2x z!RW0txri=01NoM~f7P%tVDFtBspM%B48*)P}vUotFTMIYK2h0KhlX zOmTBdQ5bjQ{v;T4e+JuqyFVBOHsgRGNx*4wJX_8FWD?&93R#mbu%@`K1LVU3o6r{E zq``Kswv`oF#Vw#FQ=*fcvJ1C>^#KNVf233(>|^MYWbwlb3IRQC zvVX#;Ba#vvq(dGKC@i`1aDt&;?`V7LaQnEo_u+W^@WbZ*QSa@?-iMFJy_2Ku-p9k< z*N-Q?FMIp@y*JyvoxQ{Dx8Wg{gKmf4@M91|TT;jwR+rYoHVfv-E-Jac;}J}bT=Lqu z%!}GN*C<#{e-i_^D+pIkfFXv71+r$v!)cRWh|QDlQ+JGLa-(Ob-R*!A}K z?APS{M6d}z6q}H1HUSPd+8RQ}z9m`R1zWopng&L!Cl~ND5)#0RIN>#n05FAPbc?V| zi+z#;GQz$Ln#o~6GSri6C+ZSWmvMUDk5TR|@pZ4Ms<8Sogmy)bgC1s4^@crbOlnL0 zX`*)ee|`j}lXf46&0a|(Ct07~JC?B=f501hfjV7uPj zIq9;A5=b+YHuW^l1j=m-vY+<{KNb!HhyjIa?7Wm^rYd+C<}0N|Mo3ph-}3YFlEBu6 z1d~d)9m7h7hpKn7Ta9dAT)?sSJHrz>ox$x5=V7!`YH!#u*~b$U=fcVQuAdBJK6ef+ zf3BfYN@muT!Wo%iCBHwCN)cyB`+YdEir=rx&hJ!o@DT7IksjZ?5TFvC04z?eqt#GFc^{UGXf( zf?oSYbG_O2AWl&3*7eXRwW=H5-#2cCf54i2>o?^sT8Q^Yz7;Wh{4#Czdw#u|!C@4Q z`TxF)wW&38f69xsslHgd%sW$av4%6d@CMD?ul@20?N<`$i!lEe2;$}(cg2Q(S8zRQ zT(Swf7H7^C`;KDk8!5FGLhEar+Ppzx^BQQ|Dj7-%6G4Se<|Nu7MM=7icsYL{f9T8! zyFxN^Sfw&Cw(MWeVA0LUt%Xm~bRNa{8iO`on^?_bszaf8Z|tfxGk%vrGS^U1}nzhAhN# z?1uowk1?*%m&yhCnC{DVE3tp}e;>Uz&w+tQjfm`j-wyw7&H7hs*1zMdf5%xj5}(|^ z(|M!D9y=7f;Tuq3QX07@p4xOErMZ|vzVs#Z~EBuK`+)7F`-bFoJVf6LCNP#5i3 z?ABq3g&2-ul1>`5fxf|>gt1{l_)U&P455Xcm({WN;TDdk(|h&4qb{_C}-pQ`^JP%F@XVeU7>3se&Qa0we$lwW)$p_!f2< zy9`Gn>DP70jH{P3!Xy)vwO-?&E7$?w1)jeN*8$frwb?oT*~UKyf9mQb=fyEl06-8r zS_&pw@Sks0{z1(9*`gA5f++LJYGZFa=0n6Fue_3K*AbMrBXcJGtLPH7Coo&Ru7gd9 z$fD%ZI(8N%1Dm*)Ov>UD@Q!~wx8!vfWVH0c{=nU-cGh9oZ(RGGLwPUOp?!NuCm-=( zQbaYtObX%;C2I(CfAuQdqcmp0X?TcdLzI#J9A;t>9HNK5wFx?+Sqr_qktl-}7kkK- z&QZOt-fq|0-O7&GW&(`h$fefaHvaV4pD6A| zAQM;g-@+SWU~!uM0IUj-h&}0i*9|q68s979e0}KO-|qpffAAHKNR52I>&fg`njr4p zGkFxie}@AvN>LSWpI>o-F}K3rT$`@|U&3s<+pJ-(l^hVan%N4z!`kAQP|0utCpwH$ zTuu#Wpp=G~MGcw6bMMs^rNX*2{W*8%Kj+p0z~n)xwnBREwLm~`?r*fY#s2?{D^f_U z1Y8uB@bD=Ee{{Cmw$4kVW7Mb)eRaTJCEU8XO}QYS3)M@pGJA8A)`3>`E!|pXy7&PpjN)$-Fr(s-kYq38$i+$~g7Ctpn=&RmZvcv(;^Zq5@8ugQe z$B0WrpFffUikr&DJp4$?a%&y&+is@GSmX&)&fEr(e_2ZNLe|l+d+%mE!0XeNt#|VU z_b7~bk9`IbakZy57W65?UK?G%M*b#mKI z-cP4GVZ%=NfX7&@)7I@YaWepDQNWp%a+34xO`HyXK%y?YX6G2-*%;3YsbFsQ+-*E_ zilxA*e z-sIvQ!7Ze8#%i$k5z2LdV8siBV#;|^YZ0Lg)vy{CgQ3?huw*SmlDRel@|x)3eu9~5 z7n6MM`pfeJ*r+Y&$3edsH80{6I??9qPxk!af2lK?ORgBgPd0{IBy^~j+ljKgP&1F( z)C&p`+Oo?fjwlf3OsYrRNUeyr(27_SKkI?m|Lan*Lh@|EVR$oB2g6NxNXS7^!ebPrU-l8>kvSs{d$@Ah(cQ+k@EdTmD#67A5r!NT+KU8bhcK)fu}-C-*hVAGW&?7d3=9N6v}qo=$#!53b@2b}L-+pde-nHj zSuFEk7R!8uEb|ev%)3TV@s$J>yT2_?9H!&{eL{wFYsP*`G2*!vBaVyC`J5OLC)PG1 zu@owc&>I!SBoCfEp*j1WH`DC$$uJ${Pw3cL9daCJ)*Kb%xEm#;O$->#Tj4B$hLTs+ z+tp68vf>vjp;w2L{PYa7CRoSGf8n0Kt#6p?(nL$gyn`r-E+Uvoc?FIgsQq71e#Pt5 zt|B<+YTin*;^CP_^L7EdrzQy_)Qd(fA&gJbWOb}68}h3fPp+a2X(%`&u`m^+`g21!YywdTKwYAO?= z$I{$;R?LZ348IZ)Ux!crpVMG-^;@sMdi&3^)!J&U;?LV>^!Eh?b||nzfwi3-_`Cj` zvaLUVOMiDD(B8q6HK<{ge}3NLU&^-Det{`lEeh;xLtwqtYD3`db1bv-l2UfwZeif< z4h430-k$w`wPXKWZMIflV$*M)V>2z$<}+$$eTSOaXr29I`3bv1`RR8DoNgLM=WHUx z)!!NSyGyM=2CpdC4z8PkmkP+<{f_Vi85&pOgDtf!!25uJ#}X!Ve?Ah;*Coo#O$qXr z+LdFxkh-dx(-GRLIo&&Wfh^S$s;WvWRz}xi?4xR}yOcEhg8`ou`5Tch4;nn=%_0SA zpJ!W8L&I<8h%*~4_S9#{*?Gf$(O(6^fC7kkRy|*z-r6F?4E5X@YEiY6kvqgph_8nL z*<&*e);#%gO2lkQe~M&XHC`z4LMbRilTcn#BQi3|KlDE|3SUG&t40I0|GJpz(dfZ! zt8TKCm251n9xAgKVvB1qLikx1KO4gApTlG^%V z!nBbEhN%)R;s|UC@tyY*z?-*#+xNp#*5BuE;~Rt_moadZP-sP zd6t%Wd;>^z5BT2f-SNSG%~mu~fvpiA{2+xql?%C)4DdeP_b0_RU~eR6z6hMHli%G8 z1#zYmikp~w&3qC^MZ>Fkep4#y8Rixi`2hD3qI+Be+)fM*J7g>23-^}KPES3t62P)& zIWIgW!>a=se{sf6y+Pd1bDTOzrf-VHlXNG|JTixoF~wy2XBk~V9Dc8I3Y?uS?43Bb z`DyE{b8uRyjuxy<9X)NIRr~4<+*yKFU|KFO<##^eaZFPT0n$457B}on%Nn)jZs56w z`(=?Ha=c5%hPb?|KIDS1$q#Xy8L*l-6@xOD9m1tUf8*HAcrxn$eqSoBdw?v{=?=sl z!QlrG*UxW~K@GdKgN@PGC*VeEI6YY!=L+2L7YMmwL>(Hck5AD6kM+GoeyI3E0QiDq zO-Mu|c`^Qwl420D>7!^kgvNn;o&Z^LK-R$Uq0?c10j7t-`Cbx72}jy>_z`s}GdVl( zK{Gh4f8_(n4L`g;jsd!XM&;upjQe{Kz5Y8(HxPRcmSYT45>04j#$`cKIay!B=Wi?y zwAPy6Ki)tQNgmKCi7?mxb!8h1HzNReoI_1nI>nzH5E8*P97n%V=d;CiLS;u-15||k z-tW}(^p_J$g!$X>$>~2=gR{mdP%me`ZSeBRe>(ngD??o;lZmQpMo1xlEHrw=yKu;}FpT?*)9H-7}uxW?98Oa+wiN1O?;O6iy-Ftwn%3f|91; ze=1cdzjYqisH+$KaTLpMTxs*Q+8=&LEm{!)ToWAJDsU6ajFN#7fvK2|%lKw8T1`+s zCO(1PhglWl9YNq0G6QQcpLm5TPy^%|Fc);-YV}%v3(Iu~Mq}Vktf`540TZ~2$1er3 z3-BRFJnm;dAQf_}&vB$b2@-2?yk@kne?s(!0&x`sC-C4$g1BLVf+y$%vZMgUY0g*M zwMj~Axe5pcSg)Gy6D=`JN_)#%dk1#lmh5*#40=U{w1|wt>fAJfc zSV0Jguo)ro?CxZmC^LdGiI9a|J&%Tw4rEBeV5rDfCpfF)+SO_w53O?!PyvAv ziOYme=h*-=i!yz|ClX~l-V}lVS@)rtmOpdux;2kSMx)_DRgJ6gySN_W7Qc}y7BnTs z1vM=KU$nx{NfxSqf9}q|cugIX{ zRC1kN>S2xfhc&BfMaK&_&6Yhh3E1EGmWvI5Aj|VeerdCWkgE7A> zJzwm@#4)e!a?6Lww~7mqp6SIF_ClIy3oRTUuP|(TEq^xXlf*~i`UF)U20xkr2IGd` z98>C(eWO9y#b-O{H zMjDKacsc=w>JBz=@L)wVt(tPkFOV&?FaKne@vZ@-Q3<0Oe+_8i^i0kCrkMFS+?>s4 z!h+mYbV5_R$(kC?X0cg*hLmBwc{)Ao_|w%@(qp!AbjGWz z4B~N_t-RFde=!8w_xDr$@rNm@p~&2<^?C{@+|Ezea3R7fMr*pps{w4|0S%`)ei}nf z-W*0bN-XdYsn?I1(&Ja&@Lp*bU$5zqJPMCYg?1uyD)D`GG@Fh9gEq_neQ{emo9P?G z_oU?Y0Q4tv)1g?o>(mYyq=^I<98`W65deG`G3$gQe@c*2UXGsJq>xw3Z?`ZS0Z0gN z+s{mbw@-*sCahZtM;al^#Fq;ag=;yHq2=7}w{`2N@G3h%6c?BEwHIV)3ckk4x3HcT zrn`c4m=iN8Ke)t`+%=z99%UAxV1E&KsJXwtUrmqu+M8d~vJT2AC?Z5J~pn<32o#ShuK+>HOZ%du` zE1tH8lnoEKDWnW1A1SR2E@kPI2ZldEP|$lebo#)c9$4E-&4pYl54LAWcP?Jn+tH?x z4Z4W+f#5T7o(8lrH;`hM(%eV6uU*WR;%XKmfJHC5wBO@PX3*B-zFYi+%&NoZa{+f^K(QMQW&WL;17 zfHD%o9FT-g6%A~h-hS@l_6?2W4L&Irq0$HTX9blO^Qg2~ye)e6S*H-0yyVsQw~j}m zd0$1wACiVh*H@8_edK)En%|%1^lm1wf67D_00-a-1<(skgxc{yTGIWlxTZKyuRU@3 z>1F+41YC@1>ZjEdHQUu!8-cv-0^U{t^?49kqhAY(F%>9 z7G#UEH0Qbig#gNwK$sAy5VjUNt^##R?xrYF2NeOLk}_!5H4Eu@6q2B;*o)}0f6P$u zj^=omE*&o`NF}K}iqP+fL+g)`D2CyUS!pt{F%kWbw96C3jnrz=Gyy1d2VD?81m^n@ zQ{$CX-2+H0(g|)hROGdb!zn@QNNGG13cy1i^McoKT~O=HD4C(gM70Rw$4VsxHWnCd zWs)LV;zmzE0kBh)z@RXy1%jC)f7lXc;{s&#$qbMjOUOi*5d@lD4?qnO-bEjH7B7(A zpy03#V^WPsx^U8{*@B`-(gn8mz)_+pI7I&vvXnXynY^e#AQ@rJSd)5?P4QXhFF8Yr zu9PMbo;l~~@J1fTIupfN-jNc)@2a_w!_@Xq=)(ly#=Y*B{bG*m2^n`~e+Oi3LDGd8 zB#lOZMY6GOBKZ*YV_D?ULP!q*OdFaN}X&bl;_;IUP1xWn&%m`vI#&UDdfo z#}imdx2NHq+tnauGD5oCVDgqarlyRCYJ>iCq`-mQN>>A?E7sy1%b6(5;E-AqT0$sp zHFv>7o)-i1mH@e% zXrR+5Tus(?7t~5#o}*{!`+EwZS^*GXck_}?c@QWTcUDxfxXRGoB}kScQ9qc^Xu}Kg zz;*$e89M_ozIx7;URD*3v=cpENeGvgs(G!o+0KQaT&O}lG#&(-f5%6lWHDwPmm2Ys zncI4uLSk;QI<-2=$j!vi>MM`k1s$7FZ#~yzSD4_=NiSp(or}!bu!Ujy0ATs7M7IUe_G^}3PO0kh8W}P97vwp z)!QbEywJj5*uRU_;1>9d?l)exeZP8SItSsRlTs<%1;2nb`)u6G-LsJzAr!96?dZGE z9Bcj;s?1p>P2qfu~z#A1~O%FbOQ4NA`M$$JPS% zoU3S*D@aAij=-1?FEij{iP|hsHHg)sk8)css=U@-T`C4|!Ts=BtJQjfSp-9fN)C_Y zri*YiEu%jN`(Bk{eCPri^(Sp+@<37{=5k5yQ9Sb>f32hogTzbN#ToT*V6HF+;2R!Y zCLiTJ)#FtM^4ce1$9d@7d@B}R+Jzo%P9}mcq|YY5=7WNGpO*W3Pb=iYSB?7!YBC}$IvPp8Pr~ zV8c!mUST>#B|Gk!WGJ%RX~^%IgY?$Sm&PDY!-yQk1vz?yld-69kAjV3c~$S8sxX8~Vq0;4JW+vnI!WrK(We?jnoUN1F+D~9{3yDmaZaOQI;F^4VK<0h zX*#CnqB#C&Y9eh&D~u8mCx|+5ZzuC?9tCQi$=?L^<5zaxC|kFY_xqgLUB$A ze>wV$x3=W8P$an#9=oO=mfv(G!Kb+YQKx#$qQd91q8*4 zH@UWM6~9UxfmAjrpK97VA)7yc5mT0EW(#p4fCAt>Z*|o}u_r)J2%`i_3us~>f8jgy zq7nc^pJbsxmJITIhl0LR#xWHG&JU274pZTi;pasN1SFu}5>?1)f$#cqd!b4k{bq7Y z;}3_4pjslDneW)9ju@#^1x-`((7NwL&)=6(5i~wv^yYSX^N4dFKsNBtZ z{Uk}H4)isWI~3`tgv&Uovptv#ucGE)HLlE}xj6D(RLn&qr6ME8QI0OAe^*IATN|de ztEOTt0sL_!9OD@OTalxigja;wB`4V?^ifMXg-IpDtAH#6A}J*YJtw)MWRQ>!A529l zgnjCTYN>94^tt^MQ9rWZ9jXAr+6#nO#W2vr zK-g}lARdaxu-#Z6rokjJf2k`_I1u!SI`CK0{fYkz4`tjBprf!)1L(Kq68|t2*2#ZK zO)4J#g^c3Q1a}UUP@|+lK|6>c7udu?vM`7>HSeV^#ow?Qmyg)2cu*vAl&;>SmP9O# ze48xxJD9oU*t4tbTK|OVV=x{q2KcGX1YsVrVTOaYyZY7*|{ zV&X-4k}$>#C$1g_QI?uO6asPgLv9NhQs&4i@@-n4$K1_m#Z|K(r0DoIohI`!3$q>o z#XTRhFzd;r8eW)f8*LW60H$Io)~ie;;!}#LKI?FNwLQdu+q4w*h!mMkBXL2r|n^J{5CG>W3J$lc5A| z@uk{M#yoWY4wSJ+S7`S27uMCn3pr`>-5(CO(YymMt2vx14G-;vJqDHRWIC6$(tJ3h zywRbaTC%H=Yn95T>_`Cjrj$EckEbD@A+8OzwLe?;J3?tse>jUs*rrmzJCPQyX(HzE z#24uLQ--^4GZ)C>Aji-^BFbVE-pTxdO>APB7M9^N%eFdM*m<{pKGJS1948ie?_Rji7!W%bC^qcUQs>Z5l7;$y;7wXHHcyHHJm?f2r+{{pCW%8BR*Y5`=WK*y)&i zemUKEP^nsl?;64$sL5}4qzo;&Eb94-;wVm(@o->tl)tK((5u9{1(ge>OYtStS+RZ! zc1qzrkm^@c3=^25)|ZTr-T0zYLS=b$j=s2Ni)I%0itHeCFIG^NgegoyX{1It(lKt6 zsqW5He{^RmMEGOe7pj;Z)0Fxo5@9MJgG!u+Q{6FKy|EbWR1JP{^(EHwQ1vCY|6uji z(Z58>fQGME4`-m7?`2EP5^S6$6cs%JP>G=^l(%5)ewPP@f#H+XA#e$#_0H;| zeOKMRPmvlHpU;fKrXbnmOBWqgV@K^5s-+`te*oNV+9AeR&X&DT>4C;Hj2?DL#lAVo zuJbk)kDRi`?GcNd6x%%)d&BLd1c>~;llcJ$XKWbRx#ry3u`f*0>2 zPA@FKcx>0H*><(ZcH~L6Q&gCTawOMur_dzKPSHd`;&>btJJC7MP-D;0Ji^0zQKrUD zf6h3QcT5fAOJ1BL?X?%kQ{s0_OS(|OdV94&?CF!?=)UFOw*>8whtD?HVIFR@Uv8|oHY{_L%)Z{J zuX62dOg7L~ZpLJIt>WrqqoS_(qN>x_e|{#lA$1k&vW{m;0dVbwR1AFjOuBJvD;>es zn#{D;+K{>6c$V2-v|p-x&(>eajO%O9pUIrho<3cdS=;OF)^nM8?b%v;Lph9F+gN+? zLN&JW;_35es=b%b+fQ|$c^#*2ZKEZJFXmBpWBtX8XDwC9v**vBueD_@>+4USe{O87 z%Z8slZ?_=phN-l@-fFF_L%m7|b7QRy#r16J2)PQ+UTmyC-FT`eS4T*_)b(dCp0{3V z%}*1d^mCmwTHCr@Z_9gy)KZ(|)j9l66B-9hW9oLq4R;ti;k# zRE5W3Qdfg`+L1OJEz#069M}Ilf9*`kD|8$Js80Q$QP#sTDd zJ5l=!WjPIdq?Po|G@g|zh<4a(24yb8gogpew@Cij7D3;c%q635hf9&lK1xhH= zu>I;4kTv%q3NtYeOq13gG_JO!udRwXf$Klf`0QChH-d6At39lC?*H%hYq9c_um2nO z>T0{XLn|Ayvi}xux7DgFZq;_%G`4)BX*r3zed5aY!5!whUX)wR-k_~lr6fhh5{63P ze-Vbp>?lNQr_K>cKD&*^f3%+XLg){lu>fk^1CS{Mc$%UdEI4`oz%C7l>_toO_2nY)B_Dl{$&;m)UT$GSKR zQX)HRJeo4D04cy^qS-t#;snhE0VdN%~1kjnC=?-SBabI(FEuyf4~ExvcKMdxxEJN@FWDstRzKzlkX%ZI3;CPK-;bH_l--}O zH|8@-u*~Hs^w6%5qbs2reU+11k(PszU=PGM`c$D0;YOuje_jtz;8`1<$Kpe}N0DV@ zi0YKzP%C=Q!iw-$)HBS|Ney3KlMX~M)e4GCKllw*1i$2&3_qYYl2DRQ5_0+v0nEd@b7bZC@M97bY?zKIQ9Opo z2oD_HzzU9ckRJ*Fj7<$e$;1T{DtQ3^$+J9wtv+M6fAS#S?-afjHHpydjp6Gh646)< z+@pg(eQ{;#WvMP-=nKEpm#_OubdS;;OW<{7NjQzMP!)XCBqbqE9}HO+Vag+<1wZOI zq1?s7+!p*Oc>v{37Up&UNXf+X>T1)N46nf(C4+k4`x3u>X^&_sHMK4PD_N6MJs==c z@0&;Ke_i0$F)58eaXV?KMRVmO61jgs9SO%Br4TrhXov)kC{?AX<&>0Qbw1wI0E*`r zG^*d9uwM-R3yaNsqkg2GEkL0z>MYHPms}ZaGs=z8qT6a>WW#nX3OM(Yi&Xe%QEkth z(vCdpO|IopI*Th)!ka!#*v#()pxd#}E%u1yu<@{@?RwwS*gU}isN>x4pW)&`Vq zn_We^0)5%PkFIguLN*aT{hzhD@vpRL6+u+EoU5jN*ocy>sBhGPdwq2|($oYhp%4_LuJpe|jFnPc^-k0K;oR~A2f8&{4Sk>rj6K)}Rd6vjy{O=vNbCL^qp`9|K2tF;f5@=u?^4eJ zn(ww zw(A6hHVuG>6RR0nz1%JvJRfbkU`3V_bd4QT4>ICFqoU0-NO$TOO)|p>Ng%y;Xv<_EU=dn?vGOYAM zPFn(uRlsJZAKVw-gHM4EuZhh^x&O6?S^WAq?V)eQY) z!Z`>(qz%~-;_PHqT)xLZVaDV#t2j+oW0AFlk4}u4b@!ll@wftt>f&yDHC9&t)}4QD zYq|jD+d?%(X^e#$fBG0EL!Yj^^cPX$5>^;Vwb$uLffEqTstQVKw^STkUweh_2q<>F z%WdKIAGvt}(29;q6Kyfkmqmp@ufCJeBj<$lY=L~rpeOjPJ-|fj(E~D=mro;DES!4D zKokhaA|%h_V-YDJLelxunlyi^DD+Q-=`TN>o>3j}8z$WZe`uh9e6MLSJJydUyL?TW zm{2|p8>M++TE3hbeQ3%_x$b9xL3xz#$#_p~nJ`KMWb9im z3cP~?;&lEC%80M8*!vh=tpBCIFb<}R|0RDZPm#rc@Ea_Le53g6$MOU1PsA7O)`N72 zPeBQD*x)>3LQR+^3_ozfGMFtGnAqNn=gG;U9f)>$^CC;fQq7-?{*2W?7abVM@4(3z zRO*{Ce>`)?H0=4-J)I~JFmIaNw zmJe1f_$I=6+Ruit8~Td|>ts*^c1uY$YbO$?VVhd~04;7=E#fp#hfgjTud{Vecm9^2;^Mc{2_Svti}kDW|p@MPk#L$X2?VfywMs_V-b(&cAw ze|a2uZ%O>;u`dxMemwHn0kCR;@>Pcck8MsSc_r$Ih{wPazxye^9CMJ~e#(H*LzIIX z&pSz?A?z{B2-v>T$I35NY}Fz z><=tm>A8bd3oEJ!xjP@#plhyhbA*OJ-K8a@f*to(=aI2%KN!(r_}0P~K)gEpmM#t; zQgv=0D#kE+m&RXp_u>NWoHsp#e_OSf07+pYoS7tQCHw}$Se-EbmL!x>Ru(vQ5Zh0h zwI&W2|L(EuAC^Lo(oVO~eJ#TWC;+9!=|B)RzkeQPe8T&MEKB6Uq7zaP_YY7EbJIX` zfK-9(^)JgkG;}>~A~8nMVD$I8@V6TQth+-<`7L1GPuAI_@B0EW(k@2ue=DBTz_SF~ zEHk36P;`)>hmB8GWE2zqg1<~nmHC9s;jNXl%9~ake}V>OT}XGYn23IC#!j4``Hn-P+l=Uf8@h5#1rzObZjL@ zi?v6jI8=!h%q>8nHWVuTNS#3=S=FdtW`aCxYcF*sTi{w1vKle2cBuHs1CZmgqIM_P z5c|mh?V6rmm();#1ei8JNHS+K{#d9_Iw!@H%|aifFI#JDdIkuip;5=0eCPlt9zd#; zMJx%b9!5dkqXTAGf7a_4r8FR_inJwB1i8Be!Edo^wjlJ2B?#?j(u8R%L;WjlBVd$r%`TH3ImKW!?TGbU zmD=8y>b;Guz=sI1QX(eP!uw=l_#qN`uFLRI_eq`Wf6{$sN7u+aX-f$63oS`Z2-#%@ z+uCP#8-*VtaX)xVCd$z9+XxSjh3C)x{mWO24<<7|Hz>gUg3^gE8KGmP=>k1ew1ryL zY3bu4$@Q`-nUk!X90lTDfh#o}ZP>j&XbiYAZ!~tLkA*sNpP;!hHJ)u|7}mDPt~fm64Yc zkiT6hkdvnEr zod4MoQqxPKBr;ZY&K;?87Kg1)Y`kU0O35b;lhasu1(#2E7c7N2TEZcnre_TGz4gG_ z3lz3~luBQ}Lpa&-R_6K~n@3FFOIuBxs_Kv$x4g87Ng+)t_dEKU{> zfAQ;3Ik>*VvVeA_d#PfT&!Clf#skrB(*{&_Bn&=LXU>UG&KG7FZ@i*FP>5J()PKi; z<5B5?B*0vk;1XX-*9Vw(wzAX?(CE>P6m?h)`hh34CUPy+lVR~#8&U|6Te)}rB&h{B z0vit|q6hf)GxW~wN-z*Fs+-~gtEl0!AzfMIc zFaFx6zv0yBu?(Aa7j%vj1q6>121>^XD|(6i96N*w=Bm7kP3h=$-9mgt%Zv>de~gi* zKSc0+h)Y3sNg9(MA`aDRy!AT%@A?C-*8%1#ae8v)+A`@4HP-4*FvBvg5bsH4c(EEc zfk-8$KzUkjkZWXfvXIw01mwg|nrAi95 z=v%I-F+=EG!zyXul*M!y#bEgq7+_okFqSN$d47K_XGu{X z4Ballma3q!xQfH(_q|`)@y1TM@FGqEEzb#)jQ2EOt}oP?IRxO2JLF@|n&XDbKPGf0xkCXYFzVm>w)60MKVft66pGSjRwq6QFL**l`3i#coTSFBD+j z{(=V%M zgx6sbbSOZ~MV?vFTsrxqNR|jk{g1gE1*D3}x201tp;E(Ce~_4>4525UJ#nz8+m+bJ z0+6jrS}p-$U&K2@hv?%{n{{rMq1Qi8g^}i#FoG0Dneg)|?%$~2WAWC!GL%H!V`V3a zSJlRz5>+he&$hJPq-#3ybsdTHebi8-ua8$U?Z{Yo4om5FSy*H8@uZ0Ou*Q=?b~7pH zYlwf*OHb`Ge+BxVZhE9gJ89`DRgcm7^Q|-o{iMu6PbM{d_m2K>QW%h*cmX?9LD3^L zbgVQmR$lqU7dqV&Umu}e@qwcn3rBm>z?3wVYpA14fABH+iK^B%f_-Zl!BWlg8|zk| zSiAhj`m^+sMuz&!a?XU+s?b@k32kNi!DazC@NFAuf74o%7Th%yVxEvXurS@-vg~=c zl|8SR6QQy!n-b@HO=z}?T-5JrA0Q5z6I!hcEoWotyZ4wxYV^&9_&_Z>p;R2(W&{Mt zX7p-PJ>Loe#rPjY;bwWd8J)4L6&^$tgq~yEY3r=w>KO6~4b3)Cw@D*w;ZfzS&F{BtJdsguXDUy{W3{!VVSK5kCNvxPAZ&1ye;`gbc z3I=DRhU>wRof=hUW~nis*;#25{xYkCeO<4m@yr};=Sl%x`(p)$3q;Nm!^nB5sdmHLzRczk%SRSx-H&=V}9kl8eP|D_P2mW343vA*xAPf%v#TMwq{hFy03r?nq zJfZNnkSCNnJ_f&YdwZTX?lr9EC2x9FTc ze*)a-sZ*H_UUj(9Ddr$xyFAKW2K}P(6-Z=Db*RD^2_eq?z0#&#C4$@Q@Twj*%SH{P z&7~_cRK!`Js%<&sE!AshjY7I9vg|eIUNlnOLC!Kop#$kMq4+^l{v94ji#PcKJ9#fR zE(~Myz<29aIL3#&m7k~hbbQ8+!f8{9fBV=b1f1@7$m!rzH^+|913|r>E>t3J_`Y&v z3p1LsDceLtx+8I?gMAvq7{{9N>5S$3NWaw=_HXD2c|bhKrB6d14x)-rS4)Jw$(?tI zPM4!I@_VlZUNTa_qpv)%ta!bi(1rFo3DUfRGv2`~ATJJe+XOT zA3MGeH+;5(;vvpryg;ItUGmTqMh3!vF7A>Ql0m^KI84X(izVyNe0jL9Ss?$Hc~bK9 zeSU^-Qo#>7d!2tO0s2I5l2vg%_OC@FOkjjC0JH+fT_8SjL!f!Tvg&Z83i!U5D^)1W zB?|ThAGT6`g8Jqf$EIBW;5*hef3MUL$Wb3cyWkR%zMGNd&7-yvq~TP>sN3{3yozQ? zm^ROWXKE-097mSQ^=C_E1Rcd$vCP-x14qV+Nk#~Q4@Q)d8h!v}K$^eYO_wYU?m4H) z*w&r&0->(n@nMp5hW7vqv*Qz-zftM$)MP)hxTB3#(I1CEG~|dH@K;;;dMfH`@_$qN zeB}XMz;xt=j&uLjQJAUdUy}1Vybrm*$Da+2n;xHYoG2B;VH`qYvMTGqR= zg$-XIAm#J5Gj>gekHWF)P~%AS=!lBJ05R=>{;(s_nWIW)j;ftegC9d((&q$C(bRN< zdb*u7ral{2rVNr~2dTlQqI1vieSg{#u)6ZD3*0hdN$VDC7V8nu-lX=!Ou`>@$xhJl zIPuv#ytkI8$#Mw%2YMC}>Icgjutc#8uZ&oqhrFtb4mZ-g@hkYf;1h4_|H!KLMw2sLl$n2{#9R3f8Wgd?^(@Sw%O3nvLs4i z$PFpUmU*}|#H&xbvJ?};_J6}6?=CBU%gZaCe&&Gm$d=*I!=0~4#@ld{9d~XGRyq!E z31jbu$L<3X$I3f%y}oOlM;(W|Y~KWT!?#)EmhJm&S3Msylw$0kn6S%^efST$F46UE zc&qSL>(!7O8Tm31S{ZLF1LjdWSSNtD9HIEKB@_qrC!Joy6g?N1=zk6{9AdQ4SSisI zOH~wm))A9fxs1Mw&Au*Prs^^^byC9Yl7{e5DaUEx^*_`T18TI%!DH^rGDRI!&C z@EprNjrGLb&75>k0*Y~8ckM2_7az+K?TdSKX#)gf=swUdZ5oE-+(c~N=Uve|f((c; z%LtJ5fs#b*GRFZ(7k}Zf{`&iwFXsWzE}8B_QQ(Y z=2k9%#~RhyU$AJ{{t$PEsM(dg?1yvGn_FGnLm&(@_5Sv9(9fXzK0AgU+i^Gv0v3n7 zvCD2(Jb_AKbOIok)jiBIhi}(z?-;s869N-`f)KeW`YWs3$A9Vs;wB)+>W0dn6cip- z?Es;PUD)5$^JZ4af8;1M$_XZP)80(D) z0r*A7R4=QW4S#J{Au`a(3^aZ!8}HaM&i9ZLH)TQUay1*riNt*P46fSzn_XDQP2X&i zaM{uvS$;rs1oPQ%xn!0q8#u=5Lzk;_Z2nFWk|yJ2lpIov&ewQuy@BW|V&d$!;CzsZfAC_@g!?FmIihr?P z9(djg_n{w?xIf^HsKx&4KmN;v`z_|#%AtSd)_a0Qc!+XNMvW|yetc4Sw`XJRsV!{& znX7jSKS{~=VfA6ky=YGF-cezt6FmhkGn$Z+yH*62ZItk;hK8 ztKkQ7G{pm`0uX5EAGJkF&dGCn>VI0KbWOB$Sj5tnDl$N)0gDRR398s$sfv99ZZOKZ zQ$oh6%%yJQXUR)`5CJ1!^z$E188=C}gV`(bHFxt|yRk>yLk~T98eee|XZy`!#4)`o z-oG0FbsT(*%<2zF`PfW=Ejg68CpJ2M?8B9n*@Di@y|)!*;cr}Au}?+l^~AwL&p<7ED^bRHu4C~QFc-0J zOkVASS)?pSI)yGiWPxEzN2{w4nQ~!L-a!XrF5=BT*|wiTJpELhiGK@N{UVM1tcazu zEG<)tFhMC0OfD7`#wuZ99hnki>Nj7lqt;2057~SahBnTXLL&O5!KWj$8EXpkQs(w= z@#}^3>aS(sjMc(HfFoc_T)xpJ1VUOKWIoY5oBCeYuMq0Jrm2|6-h8tk4|a~X^>zDn z4FE1oK&3;7Ce|M zCT%QWXeI54vPOm>>1m0|o~2gyR8Mf)4?+K(-W3n$pYIgeVVH#)6czLRft8o0l*v=T z+7U4vhX5KS5MS_9*r&&v(x%V~wa}=yP$kaV&+t*jW2^vKfn%(Y-hS4vM9e9uIIBp8 z8*{ytG(n6Pd6(dR0Tq9xMk+LVt7B-rU>|UkkjEI|gbukEwY21pLpYq)j}bWAG;~+q zM{M!XT5@3LoVC2aFB9A%W}catPOhf2)G72df^qcz_|z`Vy^#6rB@8M-M+I_KwqTz= zycg!W3S6WEF}kCEAmjD=(^ag{A!1pKGNcpNqT__l{AHy%(S?66bXK&i-%_%kUm}7I zYiThmWGuLNelD2)KC!;{6KtGI1pOJGCp}RZbA1gTONxCstKxe2-wk}K z2^iLuuq_|s6&VVDg)}49Tdzv>=vca%{@+hKWe7MPi;aJw4x6|Fnks(%Ivlff75?C; zU%fJw-6zn{eT)-Pu5dxyi9Ds1WS!sd$Pkm8w{_KZAWj_|Uo;#pO12CT`n=c}@y|>%@+sE5)J!U;hLe`LC+Cokb>5zd2 z3T(B*cQmTgv7sQxmNhzrZ^)#@F2IEx27$^&q!^FLDK)J#L z7bDUmiGCmiyK9f{3XvYnBrsHkWjF4V*3y#nu&jTd*DTC4Yedu|OM#q`-M#hSZITwk zZl=8+EFSTT`6?3tD;2nlh5_tgykxwH(`j&0%)~Wmvh$KvaW?wYMNBk3gvz`TPppVQUuea4xncRIm*E%4-M3ORp zs~LZt>q2ljiruG!QbHVMrKYM9s5TNg1O%=@zC?Ui1u8tsTDq{Y@C}7Pbu3gJT-|8B ze15+sHzZDhFCGqhyxm_{Gqa}Zi}rnB2~UmWd;z1gZZkTO!|uuubYbJg~ZF;_4F@@= zmr$@LG8xdNjfPL!Qytd}mT?y?(A_yDwPSX!u^Trjh7EZ-@XVfDO673sF4M;b3uilKtCa`ixcy9yYs zm%c(N77m>)q~$lBBi$`&EqrYlh46p+M6_heFpTOTDAKhMr>JI6h`kRnH7vUn831f) z3F=r~kffNDca*YcS6XIHfg=v^PdJ{j!mh8xTQJuLjg+xhMz;21L%g}Xq-U{`;ib^d zo|hx`V`-xxb>yW}8ts~0(~#1wjKK=)ZJ{A>DppZC-8u8Ra#?FYi;U2kC9i+oc`L57 zo96d4N*W%kdH#ww^8#)YihtU^!kWD(iHt{AfcoB~e}iTpR*Cmz#YO)NyVg z4MEj8)@0VcO=jJmv3;A&Iu;w^*48;sbj?fLxp))$Fj^8PdcaV-Etg{1g)+8S)JLq9 zvPiY6xyAWXXmX!S1Sty21S)?>ZV?}7Y~Qq$ik4JDcrAtkL#7IlB~qoOHvv<&#H{St zl$K?V8SgfZZ8aZutf{Hv@L2Zk_|+{=wVc{D?EEnt^-hc(mTyi&tmSR7v2Q!zv6>7u z^I^F{K7LZbc%uFdJhB!|Fq^ExkoCG)C@)Bg4 zk-9*~4#j;zE`xaYMC2pqV!6H{L(NF?8XVjjZtB)yC&KW8>+7=%$G_x-!MPW_xx6eg zL5VN*I_#zkjzr!qb;s{EcEw0U4}7*um<>?5SY!&z@$JI6cf;ejA%-Hls7eaj)y&tU z^;m{Bzp)$}`1ybeJ|ur1yD@I&Xgm>XoJf68^y)_rFzU~=-Ih=d9svnicI&RGx#1vR+ z9`jbinPfC~6sL8J5F?1Y}A^f$bC$So#epOoP3#7gH(qwrK3#f_f(o_gC&&=_$ zy?V#)>K)Iop5Ew!dlje+Rudbn)T&qRxVm!353d|{kq}MSpfk~BcP*@pn~O4j2@KXd z7K_2e)Ld|A-zk363EzEi!c_~qaz1Im#{mUZqes-JXwhAT-zmLWEiLxQ zB@cJqO`<35l0$`Ng)X>SqFq{|UH`%9IniyIRl3C`UbufseQx%OVsI{`0{NxdqVQuhQxn7U0p z-6htA)DM4;E1riFS?ybB_ZS0M?FC(1T$vsVE3@jnpspWo7&%HuFA%$VwXmC4PB*Wp zo6rLVF_n%8e-%88ML*{|v5Ok&*c6s9ec8480yXYhQ>qiLxOzT#m)pQT<$;J0v%R}; z7`x6ec4-*9W*D@T^H#7oTG^2Ji5q;nx;pm;n1_FS4)G&4vrxo^!v}-pDWQ`TR-L3R@cKq*drAIqt z?Wuo<`c=VH3%1pEbz5y)+v;B$(gWM-OUv0-5PWP~EnC~_7vv3mDbs@jtFy*Kc4}3Q z%V+;8u_VQin#)597sh_uxpY-=F1eLKnnoa1iY%q}Y% z&U3e7jc(l~dX$;9*M)9Ygk-3?HV|V;m}Zah&`{(2Txpiz(qak3_P%_OCs4@Sq7{D; zVcU#?b@EoZg1^UOp~#9@DIpe<3NzlX(1n33Vk0L$d?lFP#V-6#v+ zm#9R+zLxaW_E{REYM5Y0OR3Z_mX1IFtSWQA$0w^G7Ba}ZmL-JcLphC=mQ3e>H&S}y zpeJL*tCyCJ!(ZBCiPDj^%_UHkMjwALbay3hF7f^|uNQQo+;t-FQFGWFQn8x^lk-5L ztZYFM5=bXfnbtC+FoT##MY}pKsU^|un2zz>db;t zrFOqjy(qyuJjlxde4L?%cQlNk#q4ee>NJ5O}m~JK&u=`1%wW%n-E_~tD z(q=NRpY)gIyhYr{6ixGVv-UBcYEiwoL=F=MjgU8C8IjTtOJy?pMYZaI{O{1Mp1lC? zgrB`TxqJXO9d%7;0GNDPnzesUbYAky%@*7fqhDedww)T8Q(FaWD^)6rRbrp@u646z zUJe>2j&d093zZyUiT5WO41{;*fO*BUTh;qlTI)CcTzWhd_pWh&J}w{iGd>LNq>hG& zw5C{|bz{+{c<+;o2?raBm0ZYNz1 z3}_Ad&^-szNqpHB4}TQ4d5ka-qKC;i4INcK`j_-#EFEHEQjm{3?+<>6klC`?sw~fSgeOLtY;=Zzd3RG>BWdVR`rzHAx z!iuehXJ&J%YH@SM!qtEGL$%wR)3jie6Jy8Fsc?bCY#~fi<4@`v?Ux&C8!a&jYAy@0 zXHk<*YZ%d%W63?f#4VBmLyRNQ2}`4V;Hq2OotQi5>{AM6$j+OPotu851EHV{)e_BG4mbVZg5`zbqJRs!t0NJEebG!xTLW1!Y)@wHh<^ zZicd#Q9W~u6sAZa&I^j|B=)|IAKABQb)S}MW5(5u8S9P7Tr{UJCYm->ce&ECGyjD%wW_U!s z?i|S@k0?Pk$})f448|g16Jn33*ogzOCk9?m!V?Exrx31o7IKftAXBz*GB=N#!Bn+a zEgl~EM9i0ZaM+)B=xR+tL}whf*hvV(5<{7WrLrYkMi+nx;OK$Mz&=rzaeWy%(`Emz zG9K!QwP`ZBS6Z}9rp`8*&To_HqHW?UPg&>$iw&VS$`gOqa!3wU65+SwQv05RE<#@P zeIpx?{6^og1@!OUg?%aSgMPka%SQ7EQyg>q+IrAedTo8J*!Jw{)Ai@~?X?#oPiwyA z<#1u!-AcnyIb;>9q?&yvp9Z!1C7M|a5b9gAnVBvll&3Xw6%FshXB$v^s&+88B$0@U z3QwnJ!Lom#6sG_+giK&+7cAxS|6nNr)YPf98J?ial%w#SA85#di1B^6tXyHz`8Bl( z?D^em(gouIU<*;pqU^G@OaEW)-fSywY+Dq3zh427432cX92r4lV}+G5u#FRE;wA}W zZzqSsB0_*{HDpL4j3LgrUs6x^8|nwnpVXJsoO6HmOA5fb_qkQ0#@=Z{((0SpH!dUy zS6J&^p9`3aX7tdb95IEa+XYroU!HKp8XyNfr`?VYSfz(;;&5&L4-`0>@5AH^e(4H< zzJ(<}D&8xxEwvtzYL#PC81YL$uNf26HT|+JW_JxlTa7IPvPzu~^-Hj4rsEsh`&Bx0 zYGr?hPOW(8RJrlEe8sY{d-@Y^7`S73HH+Ki^H2KZ-BR!?1MCFP;xR4J%W0q7wx*@e z%2NJHAAnGa+^;rqmQhre zp6~!`{eFO9Xv0PhARmdsD2pjm`oaFI;Pro$hrsM~d?!vO50JGrH1k*?<%^b&Mhik4 z7;{@y3LH>{uQA*taDcCIv~tj<1J&7-J6G*dH0BLqwsRy zaQVqae_U)i5J{3eXU%fc>MSSzsZ=csX2cp1w~c%kw z3)|`ryAhX5e0w4llxdkma%Pb5I>zprmxd9I*gCH$FpMk^%Z8e zpb*#};%N!BMS5*M5mhbhagko?*wem9;JUztj;Dar7Temg7dene`$C&{ApZU-{$}JQ zmQYON2!JoU=!HgV!@N@N`$`P7);AA*5~<{e&9sGfsA`=q)d^dT#*ma|Fvov1gSnAr zu*IA?igcI}R&z&#JgjksaB3V(L36aF0pgWFHtbvpFhiY`(M31{-(U5DSq~FRc^KjZ zR?WYzdE5dRgt3Nen@_{KAw5H#YyBYX_YQ$>X9bRAOF%n z4c1b6f~pPJcQ*z;#lfHWSI8G(u140viu)-Z80Hu>z{Bj+FsSCG>(96m1| zQy|8oQtM&Af0C~u#=n)GCu&Hpn*weFmSl}}Ja8p&dQA^Z!IoZI@tS|LW`D_7e{soz zCTM?Tf#+&dj5AVNkzb^}yTvP@%sMc5;yN;t6;_lZt>Pn-UKXvZgO`Z2+WRPe2C{KK zp48)bs{A1jVxr&lylYI;sk!9ZB<2c>tIQ<5D#T4(EWxBeV{Wt>V$i1Crn#;5YAL!( zLqm8m;CB2Ozlnlh-PV8nDsZs`nTSDsk*`w7#{*x-Jp%e&aP8NECyi)5gY7Q=!Oo*{ zCpr_+_29Mj%wqGCelR&z7_n1pXci5Cq++r+o^DaFKl|drB`r4=bjQKD_B!p6Dw+dq7Yf@L* zqb-=220|GQ*C&w|jg346NGJing885rMQj-5(M5S)P}b|4oBHPFPfb1i>A-)a{#X0L ze@gmB^ftCwU3yPg;`UP@TPdPa(I&Ewi}2hAdR-xiTjzg5_nVt^>;b8bw2ssk7+x-l z%QyU(*S9thNg7iER+7g}%;!KA?K_Ght!zM0RaQGB9}qgKssKV<;6uA2k(K;ADkD*G z7|Iulu^O610;R4r3FWaC0$1F~3MB{TjsQd{#+ZS5wH{l#&PYvPnW7otwX8ZutzvBI ziH&|pu}yy?Fyb>*D$_C1;;7Ex$(I!gZXj=?Wm3TO{ef1kysjv5NuND5GeeAxIBu{ucvtriA1`WQjtmcqm`5ntO|;fHLi3JqdOg4E1_PM?S$WY#?jx8 z>4v#LHa4I@UFzLe0Zgt@2pKb;9um&(BrdCIaTR}{Ecl`fOj`I~e4KUpP!e|HTxt4w zJxzaO{5YZ-GdoMelY7m#w(Jv5#}+*f3%Rxar1xm^5!+(1B{G{tR!LYBg6?jy^RZiO zgRMDbvX(L%PMM3b78bNH2`X$?NV%lZ3*3w%$ZePAg0V7n+Mp^LGV;|GRlDxXgy3)z2PTF9QxR~1&y`KlC^WS=21D1CM+^ArJN zao9idhv{MO2u)e+gK-Gm9x)SzeEZ)u6uuXC59rESeWV4}c#0r2@={=)R6rW&FZY=; zl5%7{0Kour0Zv8oE)V}GU>ur+&WVK1nbjB)fF?}nnTxa+5B6d_5~zpT_$43a0UTs# z(y8!eN+Tl&?!bD&G{A^kV=}#i)i%Qp0nD+=nul_BPw05rv+X|4a*=x{7kpSM`7oCO z!;D+{$&tCRuZX7oFJlBmzKTSjhlaV8VPn7nXMv~bbtO`c6+RnrQZ6+uBEGeksFnda z4K_z%u(+J#oUzQ88Ksx*mH{MxSk$lKEI6F((?^(voE#V>JN z==Y2Gq(0+TpYp|N3fO3#3SFBd#H$AQBQ)aTEI=!BbHzvIil2^KSKRFHz61b} zQFw;dds~ahfX05cPRnX4hv=iW-CtN$5?<;g*d_TjvKXu;nrF8n>A88b+?C=N$8JAg z*6jm)!oZh1m;omN{Fh^x0X=`(Ps%=u<7wGML@*&r6zXCp^i~gpG{G(Od=;XLBojX< zN22VT{@i7ka>2=63n3A+L`O>BREWb>I8T z?Aph;n@r$LC8tR|eK(CylW%h6_|-l@mBI(KkMz=23h=07KKgdR#s`0>y6yy>2i1el ze&+!OZH~$Z4_NOhnle-m!p<(dwW`1n9$*z2o%^B($aUn6kda+Rm!_6uB&#o3&VZ{NAE|KHoW@jZ8L{4d%$ zrBWU?0DthecXj;#=B{d^kG)DsX(;oHFy7)J|E?=;(OLPz<4J$h<{lXEIrh<%BQ)|~ z(=!@*XwpH)l-IJR$dHpag8t=X4?*@>x!iz&4+xXzG-LwIX8V6ENvJ`Sh}g;BfU-}@ z*F~LUAi*X^roe%A+~(3BzQGb`Swxp3&Ix;r0JYd>P%1E*O$c#9!Sz6#F|NbkE3*6; z)Y2{$t;}Uw8m~6Y5D{;X9|)%ZF?}3_B%YYOams%K8z;xO&vV86%f^YOVtw}CH{O>8 z9CTsiZ&SUC2AhBL!D?y4@5tDuzR1M1#ws;m z33z)mLc9)BFSQL&Pi2kBnxnKH?@E14lV^H!#W&QUX8+vaEw8s zhtKoC2)CZvO_mHJPlqDijz6S)1%)5fbXqX5UBxpqHOLIUsz&TZ`7Brx@glGcuBPEP zjKph(%&puLgfY7R$@~Jv59Jqt*%^TFyP+^t)077X*G}x|$0SVwl*fQhMfhVo#N@() zbP#ld2XB8y+b?&H@7?ZQ(g$E##1P9z&T1p^mI#~B@Mzu-Rj0OUoE zwFb7}@iNiCntU4t`EMWPThDMIi^{WHx1MEPjE-&X`wNGJ-2>b4BA&uJ@pmt$MMf*e zjIo%yP=OL_ggOh_HTH2)>t>_Md%ZCA!aNIK69j)5rQ0^0@MUX+)}niR!J8Yek_qzI zEp_bmXe;6Q?CvqT%`7bFaiA|ow(#5*ayJBXM}A&8M;dqSlQD@G$)sg?+VMq5i;R15 zDSXhi_P&ED2+1lYe-K^(a^NN*!W~#-QjmdbbCEouMw6q@|ATnxr8CT81Vnj$wge*w zGJb#Q^Me`&UzX8X{NVHdz$f}3Xg0w_$E@V^XT^B6f=!aMxNJD8UPMj;MyI~eTayHJ zNOCIKP{kij&0VDD4>zwY(zqLwM4*znVfhU6+f$O|b0O0GqEe`RjH9owqYDcIi+2Hr zR#jtoqfljzRK>$S-cIgtz0Q>PWOyy2s0e?Bg_JvU>kH+ktw;}Jh{q{hk7LTe@jeP+ zL&dD;EY~ZsbIT}H1|K2^TEGHryb)k3wLQzES3MuAo>G&mO1%Py)jAD1>bca)XaFv` zX*W`GZQYIMB)YTj#;skcL^d`|@-n4TfL};a0FCY)R_951x z1tbhttzh%qPenwRx6vODGcOot?Vx`m-UVDCD=B6(0Efs#s(grB0|LG`i0@|R0-;*Q zP(VZNRk*pi{wUDEw!gN;l&M>Pz2AGhCZAWshns6#y-g;=D)i|jx{=3*{B!>?#_;BM zvQKMB3or9#N^AhVQX&41xxwSl5Dykm@5hr21QmZ;twKBaA~-nTCI6Joked z+ou{8yTV@256-!d6BTljEp1zC$y1)9lwA=~Kw8ONxR}zJ0+eHTXApA-3|Iu%)QB55 zsfJE`1~;CATp=DJ*j)$l(H_9vfNff`T@_?54&?xI3e)`5j&V)mrD6tg!b_1c=0 zX@)P9#<`v2q?I09eiZ@g1S)^gl71K$E+=3SO||`K-d=Pl{Hyw#cs?*pRn1wc`!)3`hj4vHjU=NCW zp~?_t_3ch7ggWR^n_miKkDzotR!TJOo@{^pv=g_y@$+(qDybBBLBR%9MB#}$fjB)Z5O z=py~^L>K8|bdk5Ci+vaL(DdY7mwSU8^I1rbcAk_+POdV9O9Ecac%}??Ox9Hh1+&PL z%`>uskp@>bUdlqFH8u+!PuxK!Bq1{q<0F&u2)0d7ydmw_Hl-cXJ7&0zQjTp{t?jmb zL_Z~*+qR&O51@bPg_4Y2$xj`$3KFvWh#dyIM)|v>O|9~WY_agm5kp{*61WlQXtfP@ z;5+UR;5e8p)6rR08V)O&;PO|H_eZKDBa11w923p2z@O30jZQ6jb2G_@UfWV}u@4@O z13V~=CVl43!byH}bHWeP3_4$7Bix;#ch|x#me^$Xkl24LE@@Aot%R1-+%ht^nOo#E zMss(`Qz}=Uf>Eaac4g+=!LZ>u7LMS4i;Iai-~6PEn7W+dHr)ByKQ{^#(F9KF)WwuF^6$8SIYzQOwV`M@Y>AyG}A%q#hlt--) zX2c=PNI-uW42!c6#0r&7Euj z9Hl3t!QKvc+M8QkQntDP{(>VBxX(N~)V#I%q^!9g2JKn{L4nSUtwVYu#BQZ0aK$Kd~ zLX&}Qjo7l>54=LgHf6J+hg_S%Gxpb>kce$T;1?-qLK!+qX@MPohsUVztFVwN11qtX z4fM&(BnqLKs8l=t4;?YhP|8O7L2SlnQt!6{RYD6)xX{4MOtBFj{Zkpju13LwkQ{&3 zQtkrFe2s4cDK%oUa*)lLmx>`7I&n1R(Gr^;+WVNYw9F6ca63f_A(K|GF^1hIvl;QC z))GHM_*bi7PO-Y?wfyC5Fr3J|dC{*T6r_JeiYDXfP>QBefZh;{#Aj@X3ZN{MgIXlItK@1>ZW}dTOtKYOnu@ zRYp!qaVS!hyB0_V0Vu3b@YcViFp!1yxZ2-%wAJf90vt3`f-S6yP!)|I-lFt2GqzFZ zOEk7LHGj%2RT~*%%)Ht}0Wk7>691M*~+{OlGelo^h8<($>dfysZEb(*b+ z^Z(ft%)$9e=SrR>w>u8i$z>^*aEtxEOz?f&zTrSwTi2fAI|z>>zkLz8R?ZCbW^A^0 z*!IjLa2OvM60b+T5uL!;lGeyshHCAr?I~R06<;{X3ghe2osbYf1z^+p$PH7cE5jGN z;cNOUMucWfT7cA*bk%KCVkA8|Q3|!S_W7ByqI#~~9_m1Rn^IW?^g8qmk>loL*zk+U zQw|JkYpB>0^FbvEBK|gbiH?!4;nTV;m z5ftH?2#(34Yd(TETjrZb8zS!J+7|x-hmZf*?5~MWz%Gbyy$w-nqxVD<+v-1&Q_dO8|8z8zQX_Tn4wZ66Ws3+?@ zdi?nDT3=LJU*Fu^*jN{}9zE{&peU}yy0sKAs;$SpCooA^qeojC>zf;!kDNfFMcA7c zA<%XnBD9inQHXR1fcSAYhP|L5Tn~p7|Io?iq<<}$Bde#d;6daIa(hk5{uo_pB%I%m zJm0&7o&q>BfBz_bposv>D^3qWd_su#!Lk(ThQ+GoEhVI^#aO#31A^ z$jA73)xZ;9tHUqVg9k_9hl;7+2gdKcoP9v1Cz-GV{99bc)6=w=vAvv|LldA)4cMv~ zV}CesmKXhs5v<2bkYNYDw{o-S=jV;f+b2rAn+z3VE-rc(Ekp zR>8=5)}hvjv5E`PoS=H48!+sVVmDf>I<#ajE~3Szt6?92&zas zLNwF**=_X#i5AGV_gIP&3s>7GjCbE-ZZ<#(R zIctTW2j;XW25e)+42e_W5(3e`331_WO8nFxDp31gCTmZ;9-43qnh4*iDQkFR~p1+K(>q=8=Ds zXJj8UVhUm5WlCn5JK!O=v3pMUx{2KldK)+Ob? zh|@njGSOKXr>KR8vg9XQFyVQ@Q5nVir4MQ2gWD22EwLqqqA{AG2~OUXn#Ayu=*GAw7T-p zl&5HYdANNfe>@GL;&w>+J+IPOcsx#NsZutnSUt2%2nr-?Hj@r$&BDoz>MD6hyNN z_|x1rd@D8%zo->L&4ySRG}aGC9CXoC7H#ej19T5Z-Q(l)Doe#xVzY2IoH_4C((@Q4 z?IVgje`asT$oB*4OP!RVw5?e-($O04L>gKezui`+^I!z6{Y%bS>#_3GbZE#$J{nJp zG{xp(uT$~|lyTHtF+P%u+;R>v<5%8T5OI1CzrR&kKLhhFa(K00d+ZtD3KN>pUY1JAf&d}Pb zcY@YeoCL$f6)87csC+p!rD8L<#9Zc^DsKvdieu@`BJCFcbZWmVv@D@8)OU2{vHO3j ze`}-1MIEUqI%YkLLTAdEF=DjgA>O-9NF+&y--XSy=310gSp3}#MCLb{=ZXG47V=yv zg$}G_P#coSoRYtpCPVx3gURkxspm7dq@q)8gA+{SgxQj6o;0a~KP8D^9rFsFy;+z5 zxgQ&)1wC!)`sI<6I{pNivY`eG!9v4;e{NE~P)v^oC8!@Fmf5xGVb6^q5-%d}IZR53 zX;G3q5{`@R3IQ7#d6jhAb<$Sx*jU_Lvl0FPS5lzgUDI}iNlSln3%JwRU&#WOQ;}Gy zVbtz${Er^#G%|WRTo&h~*rMe|M@Mt_<&>10nN2v0Go2p3tBz1dbr_dNVGZ1%f325d zl1`o^QCggJ0>nb&C?Cgwh2R*_V_HA~q$v%!nw(CfEbh=Dm-egtAqLz!;SHe|tXuIi znZ$)C8r74e;G(VqAXxGA(^RHADjq!Wp@~n^!{W$kf%`%89>|%wF}CbXbdY4xnH(el zkFQQ8wrG%(7=d@mi&w?jS=w9xf6iF!O+B)T5>vBK z5mUpoi^C92ktD-4~kyy>0X-2({H!f44)R)Ba_B zVq4H{gIXhcSW;`*Ez}yUc{|tn4~#a)c4(i_lCFIpd8y;vYd<#phFuW17qqgC^#aB) zwHU)REF5pI)QGok5qZK)zECL+Ve(IgMF9LMI?}!nX$={7qN}Ql;OC!bvsrhx-YuqQ zKlh(JdGhl&q~Upjf<5$}fA;TDdYBXUGoB_FRR=wgvo4SMFA^wv0H!WG2%8hhNQ9lI zy!b*E@#&XCPPljIjI*L-+jhM%(n_% z=P?$Jy2!&!{e;s<fuf536na-SPR8dxUA z#JN&`9+q4Ra4UF^E$~j)BK?~nzFGP2fce-TIIXmR`j&Ct58THlxNo-73i4YzQ(&KD zIfarYSx`8(ZnC_*?&QP;k8j5dseu=YMG~l6dbbdU7_<~cwO7-&11U!)1-i!+gh^^H zi9peW3omOGo_ls!e;<*CS@5F6Pq;`UGDInYk4L29#otW?rnvyQ} z7vr6n@J{<_O}R>BS+SsHTy0md!Y6eFBcqRmJda~fl=WK?e^_h)LE|)&E}jPlsYNj9 zzwlVvWpMaGDx(5?Fh|rZZI?4J?jkwst&&t{ZDHCKu8XAiH>KIC?YFXebC^Yr ztn#%SBKkDU=PpLBq~EcFtlK@07jT@90v@Td$@=`x(TXE|N6J(3HAbiyEm6B4lSBNM z&6BZq4o9fbe{3el8InMVWbudOi8vD6BRdW+D{U@r%A~X+l1M^T6WBc+_=L1qwtCW8 zl6%pcw=_PlTS%=X)U4UGRvzRwt>p{);60o#Tp9{oCDy{+hjh{Ab1mg-RFnCvsjR%q zw7=mw&{Ssf6tfrwtTIokWd&(@Dv-|n*V^N1VSSFDe{5|&>XC1Q(t*_>9T9_IZPBJW zfl81YZ)BJ4Z}Ah^$f*bY88Hf6_m7r_FameYcYyCAO`n|llI*h|Vrru&>frcch z-;>RKN<7DEpr!QVdkgWn4qe>8w$o=D3mDb8>b>FOlZA%u9FraZKIz`arAL@kf$v>h z&7K*_qN%pO%}^~1$&QF+>Z+Ym5IMt8LG}s2egSNv33bk|Arc19w z^4F1u*{h)tO+TU~(Kb-ZDWd6!BjV6Vp9X1)=nTLK_9IKR*vHq+C@QsWOC);o9yjjqzs=E^YXDxM$LumA$Doca6`4Se0_P>FK(&*CD@9 ze+_cY(^kkZK%6xfzIBpQ=Z|w+^CIp>(^}^E?0~EBT^JkXx64kD}*GyH{DsuzuBXi_k|^ zpLckA5jVjH$0%$6j&pz5W^GFgg2U4;0&+i>HM9XV0ne9ev;i9dJC}yE0UsOnQKLOS zaFNrRLZZgIP4nH{HCTKkG-ZZa}hy{4AD-4Zio0zRfv*l_jNo&-F7Zu( zk{PoI19)e?+{u3@bIwS`!F3L-Cc3RyyrmI$@k0{NZf<5tJ}G7@$t8wykgZ`^^O+|s zB8F^=g1zTF5)zt$=D?yy`S`q;Qgi^WoRzQMo}Qww89DBue1wXm@`-3k8Je8(76@4DSuagraa)!d)2g zR5)UA3Vat$K7@k>1(C%F8L%4<9-tvnK~CC0mf+hO-yVb|2z-T2I*n{=4M2H1^vd)-HZ;}Xf9JA(Ur(?8AX8}0A4_$zZK|N z1!zk9Nq9}$98XZ+fw8USaoWc-glWlFN`wP&yQ@K}c@ez4VHz`S6Yn|buHO^<(y!Q7Kboj zvEFf9vS$g#zK45@f~$B|uqp~(h45}TiH)#T6F>ngu|L>zvo5s8*!ey;Cb3Q?_3y)l zO!eTsc>(&v_of0i>~sR_`;*nx_uYwrL_+(8uT1q_qkto%6VgqA&Ln5@n(P-@$AzCZ{}^8xreAz35*2W##lZsNCj&M`x^dC zAJIF;SD^qn58?9pvCYUx|G-TVSX@I5qbF)2UaC-l$<#w!8V@Up@i6Hb52w8&8k8-~ z&=E?1)G%EENZck-Y2>2fFRfr5a-MF7uGmGd_OD|jL1e65FXYd4{c}Ut`h#l47Kw0Q zPe|-hyz?zrFvA;?WNi2Gh#bVi>thp{2mbSs{@LG>gAn#~u9==OJ72njpkwAjcTj|Q z%ep-^17p#Rv-~}>p%--~@n^00aj&=yF1bNFl&uPNL zEXTSP%Ij>^$tegNNm)!so7m@)CE-V26oj7$g~?o8H#e132QDi?c4cY^wTn*5-E%y( znuZbzw_Giky~T?5X#H+5)_-%g+t$=xg?rE7%^fpn{Z0h=Z!)a39ew{?B~TNdt_?YV z?{Cr<%W@}D4XDp}4_;Qv!2c!g(eon9lImr05>F5E%#9FAyxxLx-pdlby+k5#sROpq zL0R40e8co$l`j>md|!S;OXc^~Ku%fBk^P1O>-U)F>Ni6K|Gq*ar{7{eK_hjRb;e`! znwVr!?g#D*KlsggWq6d?K7Cukj}PU48O9tit{aWOB=%NUpYaUf>|lzQEPzLBbkQg_ z0<~(mM)@L|l1@*rZ9&b}T;h8}5#b2j%8Fa_FH%k*4W&sHO=9_&{l_G*1UW_O21!!Y zB#t~I1&PWh;?*L406KB33Z{W5EDYI@`K+D7QnMVmyaS(uID4odX=chxo!Fj#EvKK3 ze=3uLxe9g>I5Ky=SzFsxl8zbC&^WExf(fkkgZB4p0F}6GbLf>7CbugqADs_dC8+uc zV0;L_(Wa!()O!PKeX=Mphu*FX65k~&22Day;(hW_u_%)m*bIuA2!L%Tg0)eeHHut+ zWhakGeIRQw$xKRaTa;u5_4_CNjX>yl7cp!(7 zAErl&r*+39LGX;yKOm}7hLb!x8;{P6r zZWCz$qSV?LmRrH#cEvk8uN@s|4nxOR>Z8w@l>L+A_k~>iU0LTZTlO$alPH=$U%!1W4Ao zL4iR`YO9bgob9Pr;9?o-F6&cJ!;Ryq$JnR|m71`K$>T|29OZMu8jZAs91nM<5t`iM zn>@;t#oT+I$&{6eHv{w|`~&H!7QUeXE3&5}2`jP(p;)g2^8RGI_~$|YXmDU#cNT2d z4-Rg%?tFh=8l|-P=66x~cldL_cJUHPSYsPCZu7yn+cN%q(r&iZa&<}f9I;g4im_%JGdFK}GluThDxuo1Boqkxe<@)BPXz>9x-nF&|l*3*` znr&Y!5|KL&sRhe<5H4IjrKYwBvTaU~9WXg#c)9I2z&GiZugQnKeT2+BPkPGej=X$8 z(l3A0R1(1vidNZyawt8}^ay_44dMHNCBqk>V1XQ-cR-kYT%IODy zP|R;aNw8vI5v^H_;=8Hv>oi;eZcDaEmjol8L0wLnyQZ&^SiOdtc|mWUbIviUuzSBY z-Dx#W%SyW);B__ec6}XXWIojaJEuxCwt|1c@hM6~vGn{PJWxaqCovEB!PpIBspgWB zI(j-##+(P?E(aswt^sPchjhIN52>WUXs9j?>@C@>^#y&2%8N9*>ab1@O9y`vSi@-* zFpVM$m7#tk!h-73AC6@ETqHi@wN%LZ5;}1OCYH5h z*zDRONz{Dqw#2Y8^`Am9y4xz3-F4-%#tYp5uFWpMoC87GW2b_XXnbaJvk5kNPArS9$0{eK8JS;nU0~O>AMpBm zAL;qJVIsh zmI+x?m9DMUX-T*e+D1caH#jmf!JV=}Hx}F4iVQ9v|}1F0c4D0MP}q4YNKvB9aHjV_#4ub%R5@^lDRBvfz2+_`D`N% z__f(~?QOP~&CdtnwiAEB7zrG!$SzQq+RBofbkV8;2e^w=l8vFInTSNit}&xDg1y^} z1TU%FIg&yhqnW6{I4iDk$%>E?a_a_ZzR2xIM5q!KrBlsMhvPJ?PVyG36Ai+uyFpm% z7$gjnkk%9_|DAEre;^ZOfB_DEHz>Edq987hQg#Ro1m}YqtS0G zG<8OSSw!Xvj2V^9(;*Aj&X6}1D7&L#M!h&MD}%bZZJTHIHmkHQ*R!^5p0#Z=*@E@L z*HLxe9mh$^MyZo~{ROZwIJ$VscB0n2?8lY!`WcpgUgW3A8T*dmz&{Gn=Lhlk6TZBv z@SkZ|zK1Vo)3E&9*4FlcJUBb5yaY17E;d5QZn-_jvV@2-6ySez1c|#fSajP6|Is zR-^C9S*{IMG|5ON>iqy4l4Q&$^5q(SidP?gii50YByN9E1kUqRxYxmtKMG9$`J6|{ z-{V&4sF8#nB{Sb{e941(AV3!R*87iwvi7)G8clu7)bKiM7NXP5-qWlUQbBuZB#hkJ z^!>rBDMc#B$WnYRq4G!j82iFo@FNOH^=EiENpCRx8hHx>Rdb0-y-zrza}mKH=UV6Q z(w)#v6a#;|jLZCBv)5x&zy;$R~%e?E()8T{#_tMq%o-_+cq4oINMKX3}59}K0%}x`NmkUoE3QGj| zgQDd6@?i5#f-_O_K?8ul6oFRg#*&zu<&uAhdE|?)%Hfs7@qEArL(G?+pZDeM9g1djFcy2A?CvcsC5R`Jl zGDGI_we^j)4PQ6}z;q)#4G+l)uHSnqA}`PZ=I2s)1&DuT zwA02guUJieGE})nOox`5KtIT&GL7=9D%C)@O0u}9tKBG{01fdr@m}SY83dnHfUQ@Bgi$1$_TTe#~)?_dDtKHo=Va)3)lM(-(cjeK^^v=KF!ef0X3Z2 zF9n^_45fDAf7Yb&ML7XoqlcK2&Fg=!^?pf*@NclOg}>n6px>jP_$TN;;RWDNupY0& zPxv?3Sf{u62TDBZ{rmf#m;Q{ud~6qXf^1Ljxk~9BtF+m2K-!s@^|dD`Ad?2`#?f`a zEL``Y1D^xi==ODFV$<_d2kVq~@z&^&0zMfzI?T8w`;99N&zG!hd7s*wv()NGKm9|%=v|S9TH>fnrP`ToC#bcN@FmqW|@6V+XXTO50 z`8;Cy=Y$Ny?bKF8A{bx^iV=a!Q7y%7A*cWVp&H07Hr|XN*v}#NI+mGX0YCp z7+OT+w-XgeJPi0z60ntv4V}boCaTb;X5!Fu6A-Rk0ZfFex+aDAgrk23!Wj)INTA*5 z0>WvNQU4cX(yEC`bHb!;C`Vmm3xl;`SQn>N%m72onX6vYmlogdqB~1iH5gA z8k%|zX|ur5+sP;s*^xAXU^sKq&h*y3qB=Y>bOHcJ8E(%GQ^!SHEOV= zA5ls40eNdov!gbUYZif4zQS~Lmh9qr6rQ9ZNiYCsNzui&mceo224L#bZG}cEKqGX6 zxAT`s$N@6}+n0RE0UdwacT?D<_JPAG{6*NuH3-jGf5x_-3uSQG^~FZ~ZAkybqS3Ee;IxT9qMX1{Z%6R-A$P1RR$ndMNKC z(a7Gcm?WdQT)mf zDw{@#E0zKMfg{s*>_y-^j~24R|N4Q`8ZE2a2(9Q`nA`1*y^IjyR9l}+wSE?J%f27O zN0wnydkPOO#b>Ll&(Z34n^6*hDJm?trR7e8f{Sd0gfQhE#TC%aWRg8{0#t>Qn43dH z^1D*2ODalZ`)hwal6?iTpyWuWR9$=I8wM5_No^)~jqi)G7Atx!;I|n8Oz!YXY|+uM zL@UM;{hD}}Q*Q*Ez8=cF4o9JQ%P3;h1`p7+=A#Hz5Yq7Lus#aTOP+3m^s*VcMF?nL zThaDZ_FNhp(ozpA8QMsuyW9)k;M$BRk0JirQ)7|>{8@iEqN3kJZsW?{hqW!u_hdLI zGw>R}C*P5xei2WTOL4wlPK%6I-Ml+DH}Bm`_udloKSwIti5Qt_fUul#8~*n`dW_s> z-oJ)BINO<;_pjDoNF}up#VAlbFVNFRNNi4HbX-3r97FK{3_b+mP^b;4l{F2AOG?0_ z!86K|=%jzep_cbZ;%{WZW);!tG7Ss>k4O93IyUlK!sw{4j0!D9%?li!bw4 znY(sVOMRVpH#b1Dek9SaVTqBp(2Q$B9Cw#k%oT;bc12-@5QP<{C`{rhqCbrVNe#Nl zrk~f)`a~|FB_rE4mJNI7DzXn+MHWq92aWl@Xcm83U0qJkVc?Cj(L`GeO(v#aF^kz1 zo;Sx6*Y>w%ift~iq2L3Os17dFofSrB@j&5rN1v;;Mmk6$Av*ydiG2CqBOjtGj4-1B z9G>HWR5(e#%>@r*TI_e#Bg*UDby}UBV6C5 z!nS`h$1HEo9Dj$gI7X_-zzl)7Y3$uAv(xxZ0`|KZMxO(Wd)bsWepJKHvzf0JD6242+63dEg4_QZ+oO8fA!_${JL#Z1% z*<;kgMgNXiOsQaF)V~%!`4NuG3twB+#}H@2V5e4FOSN5k=ttY#QbZh^V{;wYQHOwOvtNo6t;T4Nbg-vZV^59Bu&~)v^@y}3Y{(+OS|TBBKGjSMrc*{$pJC53gGDU0k= z?q)D!(&mVra@8?PT8GLm-)^CP60cYNY4Qrf4+0_400XR^JsjorIkE#JqA*u=&0enbm%!} znUU`N6tCt!XZ1Osy&?H*{?XF+!}IE9ulEb7uJ@v$&;SL`BQmQJr$SF)EabD5pr{-> zv?}alFrEF9?UzrV08(bNw!Y}Yej{dq)#H|>hZ@B-3Oqg4T10elwl6ZX> zRB9O>ZrTP)MR#R|7tkh_0!l)=ZSl{lrjUG$)+*@me~975DPc;0DI*&7g zRLP$ft$YMfxA+E0qii{f49y3aih)k0JagW%rKxK zTM$iPeG4TvZhqdDY#DH`W%ul_njeZuN@tR*f9d>zw4ZM{jbM5TS+};s1rQ5xEj|XQ z2-F_~xM^d=jtEtk@w1}NC($&CODM7M8`BgYmNTB__MPvZz_RfRT{o_H zEt3XNBHil(NgJ(3T1PntUaq%tA9CetDRfgZ$ZCiPyvR8}!Sxl0itUMQL}?(6&Ij<v*oNeoVMQ(4u=#hsp}pLA)HgX40<{umXFP(DfK*R3Xsb zZ1kbFva+wQ`RpAJ|HH%#GGm#f_mxz!e>(#vYF!dFqRcbtn(BmouOiP%A?0SsXKvhT<=w5>}!9wVoyLmIcH@>(sr8M zm=BpW|HF(FMT*Xof|4Qsecye7i8Bmh5N!oT{ft}r)@r19W7Nay>asx=w%#LsfAwo+ zTBwh(cBus#OMCAcA~zii)|R?yp`Dh$&8#diDj*kUKu0Q>IT<0-q!hn73V*M>hkcf> zK7^eZ(T6qR++4dFf9+zp9d38a^Jp4R2GZM5TEWOD3d0e%br}Vo_;tWdW)8%AIG)Pd zWHg^EWiJ|fn0bk;@M5xz&;F69e>G&p=g-tf!E}y7-m$h3P!sR@S*W5vN!MKhGBTZ$ zTVqS)by9t13vluVieoc9nOSHgonhL++?&~x$@nZXEdk@hwuH1TQaUYofRcmE+Ik#g zg-6B~Vb-C_IirvNwK|cRo?0@@zCv&>#sYd#=?1WL)0+KVKrJbC$>Rv#B{q1M znAAFAeU8UOyg^ODS`d5SFcz^MpxT2EHdb3xVEU!}a7*SI?X!0(1RtXE?}Z~6d26Ue ztMjC!X~7%(`8B>mTXg)Xm(SDzfdR9ZQPlw`e{D!OvZhDyEng7fQOX~rFms5;5fztL zQKnWnbs|g`kbBnIiOnbYR`Hi2XoHb4+)T7;YzG=~8=FHxx1FQrHY!g-?wV5M&bjba zVI?l&$@?~#sd1MPzqqzDm-+fc!Z=Y<1zgJ;wk$Rg^Sx`BlC*M zfBhkBD>BCK{=WbOX zEc-OmF{TXleI51NC@He~0v)j_H9%5EDkLOTEMe>0+{-nNE6Add!{0xGEZkznO}J%B zL-SZODsYJVYe*VEsWp^*TVM~*9^dSme+h}nH>dJCuk2R+)>8GYUGqtM&9}{pSE|qL z)KfE*(p!7slq^t5VU=uILI<&c;}}+_@5H&XMAFUZ<%a$8Bffit=H8}? z%t3hTJ%mo2N0k|{V_TMl%ah5~vGIDWMQD{;rpmyKc>`S2YCp!f#w4s$31F%m7tFOVs7rjN>4)sgF+ERfz_EL zTP*V`PESZ>m7rgQDUL~N$PpSyf4<=frpQW)$fH=NMMB>yHTK)iyV7@h7vi0IvFKiW^HOD=Z&XME5jk5-y zz^Sd0(mUvRw5Hie~{_-$hZwi zRHSLcpr-koF2Uv)jgvX*WJzqMo z#fC|~sXki|sz&NAl(9If4(L!P=|q8$S;qv#%R=cSnphJCA1b!$OX}${;Eg-ed@oNJ?$^b-i05u;# zh65;k%_-n$Nr<4tV^T~j!E8{uU>Ln_Vf-~_qkxZGZKf}4JV%j*R$9`bPwkZ6YSO8& zM=5x63q#3IF=Gl?e_yz)hKlDe zQ_XHmt@lCHd}sE=VN|_TFs4J+Xr9- zH*U^X8A~HaXy-e8mzyzlV5D5JZVnbM*Wt73h+}ADd0(dYTi!Y^3H2YBfGa0;8Y{$a zEiX<&F7jUmf0^7|pQOe3Ydm=?sLBfPTwI~GuAs2sC=PV=ShRee<_c9-{LEJH?l3>< z$~t5dJ%DoMMVgE;?@N!=*W7F*uPKedFlAOaIBX z$i3Nkvn5*)0r|tu5@EN8baozI6tFK3<@zsmO#7rufAp8qkGmETj?q(0;ZoXk)U3mF zkh-UHJA8o&<_8>`c-ta~Toz^%VRX^sCu_Nn|L=6z<;3vNZ^>vDW-O-Dmnq2lkEwS{ zmZ<>t@*SE*W|Xjw;`?J}Btq>2-_9^q_=8&~Ia@f%kw2K(lN^OawDxdfn$EocL`Pzx zqaT~7e|>u^HsWGNpN$M#wA9>O=`7MR2y&ZN{?f+U6m4r$z~VYl}rm%^$<81O7 z%N}zkQiuym0ebk$IyPea_kdiBYs*4V4qkY1sDda3ume*7Z^EL)s*G%uWFhQiET}x4 ze|p0HE2ktgQYdU>pQ)s@oX3j5Na?&8f9KauOQTJ|?6fqvY+N&6$#@rk;YnCt&UJ#9 z3NyOEzPu{Jml1nggzs{qL4NOr*L8_xe41cZ~UQrbaLNf{hgC5xskPT9MH z?HBB2bOcwS46k9&CuFSt>}t0tfr|qekdNbFCub)$3ULrr20eBePfKK4JN>Qhe|opy zVVs_er|*E+kIv#ZupdE({3(7?#n*McLI)syTQoezrDvQFdEitD-zAs98$H z2}Oa)G?~P^Me%i{%^Mr9Uyy0-yQn%}P+&jCgVroySoK)17Bxs8-Nwq8liyrgHdQaB zfWv+-XgwYho4*^oK~?wT(_mr1e^uOSbB~{0(Z*ZEzv6}u3NO~SPn^{=v%j)M2j_wW zYi*xyZVq~lL6k2G9Q8CV&+U1(zXaT>mPwSbRtczCF>yXOdO3}OL?0(m=!1QVAEE)p z!_)ry`qt@IZ>#rkt+%$(+gN+lnH#A3_;`P3`}zCh7ds!`zkRzmI{tO+*bbm5;*~*hT@ssFgttK01ST@^se~LGHo4yPytOEPyvZ)Cd@Rv6?9HHPrukoN~c+e9g7OV@R*a3vF(^+G)u~ijuDZcrjlfffn>|W z^e{exH2_`cr&s&%WLe6LWxHy->B}S@X`D9ycD{M&+5DCqffxo1!uZ(EdGn%L#)aH7CM`s* zY-WJs6QWE+c90UOTJtMkwh^}>0l-t}4(z2A!N+mBdHZ5&u!r&;*M-G_V%h=0+6LYg z0%*Pmf^H4(f21X#Fv&BHCq`KKQ|@_xti;(LBh)h@9WXeaghp=kl9yb*A35?1kR!@J z^7f)#So`tU7teQ=8~LE`SCO&rDa<(%)i%;@oVP{n6I2NTkjHkvM-8w*C=2(s| zy0}oZe|LKYC~+*V6flpkfP1$Kbo2?y#R(CooF^{8gD(zD=LD{C8BaT8Th7xOJdZA- zaZ(l2A&}p10CZo*@6xD39)H;Nr2eoomc=?U&V{I76&HZ>!~?MHr?N(JIt8Y#V};#S zFP-ts$7xiSOZDmXPh92xI=UGAgc%|Xag69Ae=WvQI)ae^y0IGPI-Yq{0)4ZT#;}_5 z_Ek#}S7u<7M1@E43h~$EUJa!=9yVn_5q^19#Ti~)tGBkAvUgz1rZI3WFaj0{%>@)K zu_(OYSuEv%hWMU$0pAoeBj!=W$m7veWHZ9=HEFcN1rxk{E`Cl}XI4UmpQDT9=UIGGqHe7EENNIpg~Gb5nOXvHmIj1`S8?7*QWL(BUG=?Th4Pe4fJXXUgKcF2jgFiN?b5{0!Hkf2_9iEKVmeU>YES zGJQ(Tx?#A{>jRQ^UaiYE-o(}SI~t%{EQ)_9rgeOR;2kz<;?%I4b35Jatuz@fuPkP_iO|LDNBfxHR)T;jzf7?{YY*8ms( zsJzabWPA==ixyl{fBYF&!O|$60`7UZJ(BN06EWnRpN;T(E^p7N7@z`ZY(g+=`vedslDN|%h2z4`Lx7j>xjmid z`Qa~ zurm%=`KT_$s7_-f=is)SDkw3h%f_y|-EPEqtHDGx&(7lr7OM=dx9jS>m?q!3ZPVvx zaWsWR#C8axKm#2zGs&xmC}ija9gMr5jH&$3UrIpx414H`7KcNG>3j<>y2V#}7eDV7 zS-iAe!U!=(fA13fH-kw5zF2}qfo?Cv@tYgJ-=nGZ63{(Md`9xUBmlpOHMr=a&|XuS z--e`SxQM1@?0pky4mjO=fjf@lx>!ntL=z~IKdRwHuwbM)KYqaP!jBUmLOmRe|C#ew z7g`H5PGJe<{-5Kf%N^zTZ_%boJOKw9lQYz4s9(pYmn7x^5`Wj7_dtCm68e9yanO@J zPGumDcN+Li4Uqh$1fU$}W4Jp9`>zydiWvH{+kPb5N4_s_wC))fq%i`&3pDIBIjNz? zF4dQ9B|ukJ+x6+RK8^LYW2cJ-4R<~n-!km>50N#WcW+1Ufr>6BSAnC78vEF_gnMr$ z;bA{sXKU~uz+*qwk2lzQym2G|VbNEB@TV&50AL2@H?KN_pK{=Pe!@8IKMA|;pQac} z?Wah^BmSvSKM|md1#`goPnCl9a4c%{SZI_$W!7Tl2mf{c()9f!XV{dP*7orVU89ML84#&|s=-{vP|66sSjVQB=o<9HhX zRil}8Cy0PkfK%sOsB5ecP+8z7$8dAYV@?_;0>${2Zj~A>zIFmWA!ULsSBxKXpDpMu znTU${g9m?%cU{&ec+4TKu1@%l=zDXn?@i>Nd*ZtcYc=;ZD?)RI?A?2dX zl3Y|P*_(-wC_n7`N5dfiVbMhSAndD~>5yLX!UNQb6inZlNY-$MKnD1nG$IjB-48bf zU>_4;KRiOPj$k{de@g|if!?fIX(>9aLSO$ zLD^f4z8Af@!{>1I#srSO!M98$o{E5mJppb6XT~OS9rEflp5`3!HdjDlIN8H#f(C!i zUKIWkb(0CBu#+V%>(BY3K)Qz-~pFP^f+Fl zkcU>;UwQ*q+!i19js*F@AvNJ&JuGCxkC`Vq(uv`qfJThyR<%o=?=T2cwA3oA#D{> zgJu&zFsiG;dnB=`9o{F|j6PXtrR#Uh9_5Mu~Y<|5gMD+5-b{+fSm$%1HZ zi5j>J_Zr=nfZ>!giG+luMd({~Wz&lUzV$vlVgym#FBb+?Uq`_z>UWFx~Uno zwrjLto|JQOQc!h(1c{dOtHgN&Dcr%0`b)0mdZ3xxN87dyx|rt#Tsfjvzmxp05~p>U1dxvY*O znVcSDkhn)1i0`4h1jWyQ@_`B(53g}4kAd76&x7mvoPBB3|Mh=SvCra2 zZ|ATgKh_=9JIAa(_RSj%lnE?9#!S&@GMrH%h z9UQp}+}niYr>f)s`d>&@t8V|!dh-5^1yx{f)&mYRe_nOZi@Zv=-Ft z^6xLJ*>z)a#l=yJYYs&(vC+ieS!iFxQd_fMvUXC`rZ1X?ZH&t}zuNXaLF|wVXMJI}8 z&_)ZM%VAl%0>J&c2}^4*mju-u~lNIO*aWRe2Ilsfs`q~<@WcuQhJ^20} zz3T$SdOCk+&nKu4J21S21=&e*{7_nQz_<%w?YTxIT3wBl;DeVu*Yz*8RkdLTa@ozI z3-3$#i`(KCpOTb%SK%+-wKQ-$ty7?(f${GMmho!tGpocjMoV!lFolB*q&Ad5FF~>B zXW^t6lM4bexH}@a%CoEY(HVLRd7U)Lzjl0fq04_+US+7%sG>ul|*!+$%3{Y3%(6|msvaa?td{w?T`LEG~3 znCE}1g00vI&y+NKu=7jU8|*xMC@Z-T=<>uyf7n={Q4x|m7 ziYK~YwLar=9#VsymFvrS=V;~nYW~@`MbamFvAI#E*cZ7QIII&I#h0Nuir}KpV1V!~ zDq(nIAUIJKassUsW%(9yagNsSCwxkm?Aw3p>IsS+8r#CY`Am%gjS3JSz+!VpH41K~ApXz3sSbYr_vIxegA10VMVFGue8EUi+0RQ4mtMbmzqFT((G_m#-+v}M;psq| zrkDP8**(ZrRGoMdb`IXWdi`#1=k~RKCh(ljtBU{0|^LF%aPnSL(u%HgJDOV16R{ zNs6))bfD$VoPFbClL)!gLel4ezluzn$_gix$SiSl14soBpOmKRU-ada43iQWC@mqg zxZo0{X>3B@PPs@9N5am-FKQfD;Wv_4eo+RJ%ih(ndm+YBQZ^r`?BCp+K_P$6&Zsu7 z@RdxYccq52%k7Hvx?D9D@rpqFro1=dFK@W@UKoCXW-qW=ice-3xPL+1AZ&QqW$1kY zxD5wMjsA@uJ;rO2utqilBzf+AR*SfFL1SD3i27xhXz~Fdf1iE!24!^Lt`q=| za0G}eUW*SeLZXFm<-O(C06h^yT@7E$crjOpCr6fS`n4cx@Pp?EuS5J1$Q@l>#YSlN zupNx=qgujq+ujs@;cekBA7Czf7kYoNJod#7j$`%-S8hiF!y*oMhFxxW!+lJ>Z*llb zj=S_Nrv0L&f7XFl3!prtD*S@O_s$UOL{OS6zy;9%0{v=L8*FUs2hccs>+7=5MPQ?r z!cY!7{zLTZjpOi-!#qCHM{OK8&Km3)if^Ho%3`Y;_~h3A)TsVR)*fiPxZfi0vp7KF zI3?v0o*4r~E@3RV>y!Cs_I+vtPjoH+J^VwMb>z~Xe-ei70cHA0pKREO7oMQxa5cs2 zx8XZnvp;Ap-pXBrOZ1l4*S=9<7E2>GmWeD9EwkvZT>mlm{LT-~LUr^9?mHlAiK8(e zSRu6t`V!<6k)nu|+HBXpFr=mHr9*|UmJsA0Ex}lXMx0veBVSz%EPQs1Hg~CICjed*0 zYd*N()7)^{Y+3MY3kG%$Fm%C^F;`gM8PLN;e_bv88;$Va@C2YubUa3f$ZkjK7C(73 zusN&L;J#gXfOM`A^3uAC#!;C-jn|)@?;%p*CA$DEB3# zK3av*Vq`2nqJ`bQn5>%T%VPTfu=i%$Z6n#D;IF_amy@gnV9XqpFqf<$?Xn~fvXz-u z>B=Am5)wERK~j<>u5})I^#^p{$6kG3YV{}FemPH_e{#O0_udfz0wgtLX63n6r&N^| z5p%?jJw?Qh9c)FC=EkLSo+%|zA$ddS~>=Iv7=bexCWaUWg)b%~gf0Ufy{7W6eCa zZ1?5Kjk9y(>Nkz8`tzO=M$3hSBFDA*3FL_~P<26r{1`IHTcp?ie|Y?ta8unqxi%N| zZ=d&)b=7f+cwrR#Dj*ygR-><;(dayhGT|(s+%=>m#YY~U?<5hLPHXapT(3Y0nIlKi z?}~RxanXAmE8z*?e$i*|xgu|EzB}D|`}WQ29jJ!aD8_BX-p8;O*ZH+XCB$G@1pVU} z876$>Mp5}VDmGYve-nGaNl;G%Imo`}?3u3EOSn(*tn+0<;-B8r>ms`7u$(8#bhYtI zTb6OxB+fPT~>Bv7>*OOW@zplJwX z0ku(<7f-L_#fC&JJiQL#^XYYevGIjlA^I!l0BldNR+@G(f9$UUYE6>_u!XlF?faMN zW-s#eU(g2KwkUC`oQoB_5-_&{528-X?&(oVFn>WqmRGgudGB(=B@O6d6Kg{ODo zd}1JcY@D=XSm0qbwCCo<-U}ZHQ^6|ya5F>aD|E(%3!gK?t7VlfxTNA^C@Z~2RATAe z25QEOihFqJKH3{yM3XHaZ(iUehclRC5RIYI$8}+Re+(=ISoLxL%~$M|OA%fIsM-o-txp4cdg~9Xy5_PrR6R=X%OG?_Sj|zhCdv#(3hxyci_oZ7(_v`JxG8PJdsVfi&7SEnu zj~8DSg!Om}W`8=V8SEaU(&Zx;0q^I4$7AQ-u$Et!%lP&ka1^`^>@=Kq1^$^(O z87%4YsQR%S@Oz`U9FtFw9SPpq_%?g_W{t1mbv%#77mwQ@ss-sRgxRQEJiSyeE-qAD z(W<}+8B9Ri%LNjv4JAdL2vXWaI_m$oWbbn%bzNu~8{;tmT#@=uf84sb5$ZvME-pXrB#=$N*`e+S@!9fpkY1mQ)~B4KNUAFh3@%jqxsN zy?lUAI0C8=5WnSBlbQ4O4!Kz1VF&q6e66_aTi@vCw>YYkjXM)OkJl$y-8zwU zgScL}zJDpug1^Xvw_A8;mJBuX0TjC?3$C-AuF+ZWk{a_zP@sC(05+K5Huf&wo!+^e zPJER3hX#phL>Tn4&>zjxaEH;{BxQ(%xE^%ARi$-es!&zAGcl!^%i%yerv_s zJ9|4Hcc|v7lJjah9WQA(r>NnO1M+bBSb5u@oO|;2=7%?Uh`g8d`cqHdd;R^Zj~L!& zNC+8rb~iumA%JR|xb3nTvcqJobbqB%W`Fhb(w}&8@rl(P`17Pk6i8{6AXdGPRqu!5 zIrY~yya_$Wq9H}T%_VL^RJS0=`~Xkv>g5tB+&KSW&=jD^9*>7=m2lTF=pwU%aSwp?0t92gbLtfX_zOxMtOBI(Gz z6t4xKLyYbPT@V_>?tjFmO16_;GR@kFGVm|g#V( zQj~Xv4hge-kMIeL2Ay{odO>_(?e!~mHxi$HswICiB8zIFNWTl}MEyIA<2H3@rQH52 z?tMndupcGUwmgt?ld)i_D!u;P&~v#_R2V>oy57mF3UG6*sO%hSYv)N~ZGZKpOeH9O zNNHl^|M<86Q!e!f0#JDy3zyv*R*RlXe2rIyYC&1i`EY55IV3w&b(`j2n1VM^1^=>Q zF@l?)u%!C7mcUqVZuGjM3&nOraptHJx}XW`GxE=(mnJ^n!O~4{ms#Rjl%7sUQ$Ib8 zW)sZ%Jjo?Ab64?tI88NNA%EjFYt%{oX^D%Wf7O;vHAGyKl>ulueIa}Ws(4!-f^INL z0^pCzFcWoaY`l||H*(8)EfD;`KLE9` z$F7&d`jWZ(66UrWiBPA$6kzVmN92{>N5S5v$u0{{M|Tvwyrbav>3bcbXfT{9I~2eHAjmc83CRtGHJ`4pIJmGuBGgeA1l$69%J zTNP*ZIWi(1%HH-TYFSoHAXiY#6{$e z->yFH_^!gKX?Sve@e$Y1JSsv~6{YEHNcU)R>+?M46!?1DhOs1yOy5v6Py0HfTQV$> z1%%WYy3!SkmwyqE>pU6`zcR&!CkruK>;0P#B%jW#};^!&q6759!V-z6J@A zP=Z~TN^y1AKATW~%a~J=PjbD}ahl2ymVMKs(U4b7!P7bV8k0@4tpj&pSzabtB}*6m zoXWb(vJ7A~0A0o-MV9G&;>Xi$I*Ma|*iG=Z5caZ?h| zoMLedmgR*+p`vOmuaVqCTp;eZ@nA9!oMNxo-hV5HI3X79ED%bd&42xj_B$1-Pn>=?JbxH-x@V;1u zkS(um!Cw18j6&>T3_*+{8G!tujrV=W3V(+P4q}WL0aNH=3_MeaIvwIz_;f>!{EK*3MpfWeAbn6AYY5`l2gR|g zlh_^lKw4QS+`AwjEf1mSf(C}kIgjTdl+m*ccO0h(p-dA(on^(Nl3H&=V zW{>j-A5%5@rpwP1JRjsNAy3ADQlWmHBr*wQh3;1}F*bq6xgzZYc*P)kIVD!$k-J$Q zC^$kMq45Z&7h#>8!aP6!QgW{8a~x(t+W#t!cQI3y8wlBj1jxt1Sf=xc;(roizfhB^ zW`$#E6d%hO=SMlKI^iUG4dA>)Bi{LsbNcO?e%9$LLek zhJQ`;D~irVt;kkj`E{ZUV(*+^zuRI@JhK<9%e{`nNbu@?uFbL{;~-`WzD#hu%dWJ^ zkZYS9n)tJy{|BfEe%h4)tAC~MD0Y);#4peT?L{;cJ!eXS5B85n?b;tF?W}wKjSh=i3qe0~HTsd2fyiyJ-kxvYW>?%9!YTZ}1 zE75}6LFM?J@@BR6m&)$CijF`Otcyph^)>N;+7$O8iuoJ{#nafH&wr8dr!o(WVdJMF zLw+e}#A_)ovy?{pg|W=>YvqITSvkGMhkeCqkdkRte?aI!evPLe<(AvfOWt`-U{tl& zut=zVKq*>R&T608M_4;u@%xKZQCE79g3r;OvU~GkUD@FvJE%R;^8cvX8dc+KTga zSm-?|X0870*-o_-^T+mj*&o|$^h;$d7Rqr35Tps-iDR_&p_#=a+}HSQ)Ca-Uy7Zab zT4#}mHY?Y!Z*CZfM!*toZXlRNFTB@bVf~(mYMJISA8%rz8 z9w(}f4^O?dPOLJ#O0*3>P(E6AX7w2zRw-LT$=o+_?Hb>!nqHxwlq|w$(CE>Ts6CFz zB8B{iM^$s!^T-=VEBKV3acBIhh*WsJY6rFRd~$^oYN>Q^)xM-0fT~OB)hA%iZppRu z=u1f170TUZO9}Hzm_$K+An0Gw+$#uhEm|hiA_!E{Z?Yl~c&D z1^@m`6GyhEFDW*Btr1Kqw|$?*YlC~=WTi6PfuEn5Pl z%?*k^cqO+Zsq|r0D!l;>7MT^ym(+_0<)r`kxBo63=6_zdxa;-7&;PTR!k1P!iv8?? z-uyv%y{rSnU;rMk1!WmJ{{cFWZ0d7<2`OiZrBAWXbp#WQ?1x+VZC-et^Ax3|M5<|o zE>ExU`F3;}Ic;AlIJ}rVHnzJ;>FK?_uT(Ii{f-+n9Mb7wKYw>MW2cD+Mhy=ym6vt4 zpyr2(`F~42FO|{Mf5}*1`$!S^9e;%My;6Z#`!XuF1lwU$*9i>%U75R zFpOq{Odzg}?%3c_pI`6so! z;(rp9V(HrYa*FWa;ghTb2*fhf+dL!hn~-h4$Wy1s#)hL6BNJ}mlzH;@+pSONwBV4; zOVDyn-roGU$&63B6Mu4r<|i*dY<~C&(vg1cP`mmcAmWRBYOx|jOBh! z%f!>ek8eM0eqSldt1Pk6(D^2xZCvP*)(oqMVp6PuU~tzp9M)m?i)Vt8ZIRpE><|f3Mafm zzHS+jtq0m2XJi_3pUKD8htG$0)YyHf$wyf;xBS>H-;CQeJQ;1spzI_GELU$oe}7KS z8HMM{-Wk=scz-(T;yw(sm;MB7waHy@=eMIaa{n%|r*FjHuF0LT_uw0gOt?J?0A*e&aBfMVk3w2nV%KGNvOicQm_3)d)khrq4>l?T##% z0qE>FdyUO(E#n7#2`G$pX1+L%{eLh&+qnISv!buBi@qKWSMH(`s9*u8}L*Me5 zg#0*_%i|H5mJ<-K(Nv#Y<@))dMZ9Ee++h)InZN&5D<2!FUUL2(R>b7vS|ZPzZ8{H4 zxJCl#)kRCNxK5A2EGjRz6|gTl$ZX}RUCduW%eVbjZ{pO7+cS7)WIP(9mVeJ2iE4-y z<;_ZiU5X>i&sbbCq~%K^#iaD;q#yESm7A0Rt8`RPY67awe}7tuJpe_rPVH5I^#EI~`&AkV?qgRqo~hue=@>d=Bz2Pp_vD-5|pw?FEH0 z;??ZC?`QqRmvtOj>3qQB?oQ4qAlY*k~_P#LV;WL=(YWJ ze~TH|?*Xl$`?+1^8eNN#udM|$jmLeJOZ+o09~L@em_R!Z)qjnLUC*zf&yJ8e*E^~+ zFw!VFc+kSBex1kB{q3W=vdbvI)0H64pU0J|I*<5Hzq#R`FT85yXxpDxRZUS1Y=mNt zc@9`lct=#A8tome=>%>KT#3l>WPEdTSsgu0K!}8osnbZfrnx%J2&awr0!TWw_Y4>u zVcwVhZXb1Ouz%LUVGpAhMGB6!no%LIIv&)}7Bi~GU6t3~Lol~Z8sc`Ba%*N~%|QCh z4+((mJ#(aTAYjJ|hzLP8Zb6E(Vw-YNaEg4MVZo74f3;|bN4J;fTcPP#-x$8;fYg#t zy?#>d=6fN9rZab4v~h`|40#zBl=&q|wwIkpa+jSsg?~-akaAF?o8cSGIVA0| z?Taeh_J7^T$MK;M=7r=&wgnh*l!M66rmy)500?>-;oVIxrGdWMxd>;3vI{JaryVUb zodTiyd6_&fZnC}SQSW)w0=7VW*>^ z3#5E96`mp2kgtH0@r($_TUpoE9X0Pipk|%be1EH4DlkIXMwEC{K%}-h#vNsczs9vM zq*pq-&oQJx$+gc*ijAUss$GUfxQDe1`ae{DhEERF%AKRJx2udhwRbf<#$ieA+8g*n zmwk(kTZdO}#?U6?WWDMO!k9aXI}%h3P%LUkfPfv1nS_;YNRC!Ks2yn$b1SsLwaoXR z9e;F3ux9gza_2tP+k3CPti8t}-Ioz4^d+7|;Q_|W8XD~^Xg}!X^8KLWO#5{3=HTrQ z2cCX{&MN6!Rw&`!_U6Z((}TAkPYV~8o`Jd6Bvgu&+08Qh`mC=HPTzfa`~8QV!$Z$1 zGYiqU1@jVbBfS(ZIz9a*19`V|u>Jbrdw=RX|7Ho>kY(@fCM9A|g)qzT`rz>6=H4Er zW9Q0XC3$Dtv&&TS0Sbw`FkDD+AccLh=&j9ztsP8oPjEAh1*+YFM8goe1L**RrwD_m z0t}AUz~Jp08vffiON|*Tjq&c8OWmu^HV%5tG*i^x-rFDe$c1nYnBBLh`>ziV5r1+H z!KRGB!5raWjzV!yEn$0V%cOYU&e~7!-^82t)##x+Ys>X7->f-hl40GZlK^BNHucuVV3X&6BL7 z@iP|MPlG|TeYL)CIxc)BohL>+%YXCWOK1Eoq3&eK^K99~QN;*8TRjoZmQREWEBWVS zzM0JiH{;3A{~p7~Ai5zZ_4HXjuip8x?Pn632kG1&NVDO5l&0AfUm8eyl0VcW%rVAm zm(gUZNEgv?C@np1eDU+&V4*n-r7+4QI?%~L>dp8wtW!-oME7Z-1gRHEgnzF(q(A>{ z7DH{rQP9VyJqCU%<9wAGUQE`Wy306$hn(8sH&884$|T*vu= zo>eAbJBbL=eSj}C><{rd=M367B;zpwiH6eP=YP*KKn|ImtDMK)2!B+Hl51RzYS+cN zU#38w#7EO>Pv)1$WrawNy9gT%w_tU5-VPMZxCbLk+i~$)d*~g@eweA_Bu(YwP6j=; zbupTp)1#`Sm)QgVG*mE_-u7AtzxIFaC7WFo-8STN*Vffmb!~!MTd7sv<^EN~yEd|yrq&NZa z%K8E{P+Nst0zs9JqX1tCnV_!xmZ4{2U$FgK4t)O%h|kW1Gi5eJ3vwk(zDCsn6n&3* z-{YhQeTL4)d1njfh~+_F=Q& z%TXNz7Zc7HZ=2k_`=_TkTDbz16A>_um9blYdS>3DM4oHujWTXGR#|=_$FRctFF|Le;5I{D;nEUO^^Q;L}_po5_pL zd$*VDjbvq>L>Dhdmu*>>bjg(rU0xY~Sv{|GJW8+9WQgvI#{l_h)|L&$kQ~L445cM2 z_;yDdpIm?(*>o~GhjzK8&ekZ!R|;6{4@ro(cn!_XV}JIbR#-T-Wx4_?#^My`(fB$- z1!ZSZg}vuUkQ9vG7Z`oP9s>4;ckHd>EGuZt?z)!@%V#dclYu|Ek_*fhvZ`vHir4Kt z>;bd9$8F~I1;iY6MWmPYEHS=^3KDU!>p8klk`Yu0$U~5$m%*zXJ)zw$#6WI7W|*O*&SWV$^?}2w#*yk-7Cf*bi5c&50)jho(9@N z4^&Q`x6a3*+)ZZG3ef4q56)MKV+j*q0rMP@=gy4u43sZP*^j%0OBVGi0x@0|h{zys zlMChalJ~OEd+~57O8sP>CwM$34AQ9}!=r8+qZ z|0=D-f2df%?wp=-FHUj=3QBS}TW3XoHBGkn7S4yxZ`|}?h!|62$&LA*)7JZDi&YjvV~UScY@B{GJlXv zRqlvG6#4!#Gs#l|1`>Z+`4&X~vKqJyw>w!S)AWT3Gc*;h@TQ+Yc^^lU0I$8Flb9YE znxS&nA6@L>LyF-&3~D?X^(L@(Q_(hsPJekSTq?n9tL4LB`BWr@bCI!f2`ps%?Iq(A zieA6DF%$%MrzmLL2Zpsw@Awv6qi&NWO$lk@kGwCrprKdlP_e#_)9A82W*vOqr<>b7 zQad0rK!opfWZ-8tU@g76yjUogw2j*&&R%4zNO8Q{y?gtEo*fApPJejU z5C?Mpx$LrH0DwfJ7joTFMZgCF{%*LZ=eRkxoLLyo1#u1XF8RkVXu4Su9o?*U&6XX2 zud@LvQz$RS#09t{d5a-*cMrT4zqzE1l{A_I0|`B&Y`-sHcdxiuw0tWFpJ)?SbIO@F z@1RGxE756b*L!ldF~7OF#An0ej(-L}c#fOvifH>;Q5QoHCFZkd2NkW4=K@|dPfeMS zh-c`PD$_D(4{pc*he)TqX%)DAE}gEpc!(|m0nx0XefCg!g?A76d zN*}(C<>luq%h=mArL#^^t}7K^s!Hq5A}mzbXM}^hNuNSbwRPo<;i*kq8Go&@c>7Gd zu}j8oqfs5llL1o{ZQgz`mewlUWX*;eH+`_(CN%b?Ac)tCWK0VDXn07U1%|JYd@DEK z@KAE>1tm7)>xBWD{V!cZ*ap-dbdm0vW!~f z+<5ohr?69lX@Wk@@#IY@YoR*Y?_Q{%Koy{2EtDNb>eWmOWxrhNj3f18;*SLafA(y@ zx>{R9yZd*^u7{B>Ydhq~QLgmFJ%HP&;IboB!F5cjhzaHPYO>5XoPVxi{WHw)hy`l- zLIKdMqaSNeuiqGp@n!uBUo9-4Pwz%#Qnfw07`6|}@IJoA(JjND#_gRlv_%gWLX5}~ zDhkZ^Ksw1Z8sO53nQOg?uByu`+*^D*Os}d7*3}h+-(@Py%I>3(4BVkV#D#cVq{ank zhyLwKEr(cdl7wglpMTO_+jKU7HQ|>@G>-f!KrQ16&q9%mcvAneSYE;POTFM;%;=-z z-Esj3{g?Q!z~UezFRkVJ+!y@=*Cu}V^b{d1@<|ON0Og(p_wZ~g&DB()I9ocxL@TT_ z6$Ri-Gz8A@`I@R7F5cu|_T{&|7I%O}D=A`Hb=aYlM3Z#g5k~ zLm`sy(uNUxC^ey-+H#pC3JnEMV*T_Z?TVnpyXJr>)|bn?y;EJ?U^ro=djgJ~KOD!{CVyszC`O!|DKeoaZ+5$rh`k`c zUK6k4;dliPFA)#NB_3X`!NYm3dXop8tP4z6Ku1ul=Y?YZzYZPezXcs{Ln3j+h?TSP zxKj8*m{_gk?~aiDyI056*10daiY~6iY`x69bw5;LI@5$5_0F26(h=HlMCDdzv3Y!^ z<)6jOo_}fltL)iXzViuk3&$B2{=0sWPFL-eU((AO^)4*v^pY)4-Wy(JSFp1AXWH`bI-@=Ef^?Zn&?EuLIMN3`1)=M+SD^m>Z2(mmVDgF@N5-rKaZiriNJ@ zfCw}v;cpoOaVq@oyAW#lhKAi|IWf(W${6~;YT^7P&hN zW-qwR@8MghTz^GL7EK;3zlAa@>TKNUyf^OKy{J^MtkDubeCR$#r6xoUp`susbiRA{ z3NWPxlc+LcmJD6jVcjL%D*egGJ@=5RC}Iu0pSXGlx)KE(c7Gc5_al%=;m=6Bh&CH#!9HpKUhbFJR3#tZ_WW?~R5K#}4tK zvv!`>&@Ii?EtbEC!@riRS*=DM#R_0^wC44`AxZH^(|?K`-LV=Q-#q7SfgFKMFwlLo z(b8JB6kje7=Hl^0BdRl3(K)u05NFC2EnO=WW@xC zX|)O%`nE1edf0{kJUDbo&nU$uXJ%=mB;E`U-Gqnk^e3X6v>A zKYymtgkd{c3#!DzE%@IY#@W*KMxevgnGMrKY-wn^;WQzlfuplDK(Yqb*04^m@RFdE%)ktzVq9LRyafq(Wfm*XfcRw2=Yr4T(dpx=NSHWY9y7rJCI zlw`rainaa%@Z0!Yg$;1A06y3q!)ie9fNb0bYF8x&;NLP-U^sNjaBV~#pa#2vbYnS2 z3+cgi0V#>BVK!jS3?OWv0vn(TBxU1Rokjz34N*7$W;kBJ1!lr-0pEZgHQWXavwt95 zAeokFThJiPAI^bY5WTbla<3<4p zL(4_-^1Ch7x4VHF$AKHRf|ebb{-bPsl#TzKvhg2W2pa!Ygy5sJdz5w$lYe&0Vl5i{ zK4L8hY%7YosvlUs3KZw4Ef8p`+cZMg(8I{mf0I~q9>vF>klo6Sb-SY1=~O#rJM7{1yy^@iGwU=5>3Zs3RRBb$F@^Z%S|{vVv5 z{})}o6wJj8fHSuuOKrF==#Z|htE~u_px$u9(CKyqztQ;TW!%dgdieWr=x(A zwffCwbq7anm}1azkYu2fjGRr}6lx)<*ew$&8T#1Nb$kg(Ygw)d=;S&$IVO^c?HDci z1mtVbD1Q$!;WY#NET_pR1u|MVy{2IxrI^6o)YdYYSS{==1RF3UwT0t;uqJ;$`F-R> zqZ!(U9rhSD-d+qpR8`FsG*Fz*4}78eKE;_1JIx1{QC*k1YO?#Xl|u9+v`ln_*eF zC1ab4)u7%ij|;btkup_IrYe6UQwPvhw~K>mhaF6Vyf6@5%@#-%LJF7=oi=lD@<3`p zb`we=U)Eg(5zI1G7(l}j&t{wKY?hD{CbZ!iHbBS%FqjP&=EO7rS)s#7aQt-Efu6T$ zf4yTOq(A2yAX` z)oL1Q=)`6ehf%|~^#7&ocbU(Qejh&Tb|cq{ZNQw^hxM27CIT3L_$=XO>yiHd#pwUR zdb@>__jrHo@&4GayDdHYovc}dxam4wl2*W+4a`B;thT$i=iMeBiD%WJ{PVDV0G*JKrBYrHJWbF47yJ9zrdcuBfI^VWVa99 zq0F(-Yyewo&@$J5hTb&k%LGmUUuHG3<-#;uPO-{`8G<=!=Hb@!>DvhyYg@JWjifdsgVivW0BDg=pPEl(Abax(8)jO%sX2b#w!I z2gu%Na5mkzi%qB0H&bPO6Hf`*Az@QIBy93SLVIa%tvDfnw1gAF6pc!$x6oX(LHm4` z2|@#V+przl2E=1d=o`@Ruh`+XqplG*yC5baGY0L|?y4;lMh!4)G#d@y1*!heu)`hx zUec!9&_e?aRjmlf9wy$mgO(b{EhBVIqY>-B$v*W_+B`~||MklKf38@0lpp`N^5b?v z(Qre%g_|3H4xq7WJ5Co}R#<8X?9q;Z9e~vMhuVveZ=^8lU<0z7P8 zHyZWT-ocs@GZ`QY3>$I1Nz=s6FdH<3P`rsO%QbP9fjeNVi@ctKc9Uw*c{=hl*AZg? zBN|RC?+$R_7G7y-H4t5pbps8q=0y^~U%(!lkPjF0t+M^){s3B8t-KMdi8zKspt3y3 zerRxiklSX-Y9*2X4Adr!j~sC3Ww6d~8EkWDu=ed^EhY)G(lnvdcN!YY zs$xc!rii!~Z<1t<>*k@dt15Mrx`bUNf!ZjhkY^;dprv9TO_fatYe#GoyJna8<5uw} z2k1a`Q4i9$TIf~5Bq;;+>2|3SHSt)y3_A>eiG$x6s^} znh|qAhr>!$R;4Ot88E_l?C|f`VT++ggF*o!XUj5~Q~;&2g*)J=u3|RwtpeXoShykn zHjvgGx5=1Lo~sP~in?0=8Fc{}I1Dxp)n;4x;pnV(Of(p{DS>F0{Zc1#O@eiUrURxK zX-#ZotEI!L&CZh<>qaZ=Cb0p^hxoyNn8Gipm@oy#39|?~%pXbU!W^hYssNF^%jWM< za{)yH5C@pq%0o`BdQm7Tfk_r76!AZrxC-jWL3e^h}VRp3Vz_)!J^gh%RDmB=;D2Tn_&$}le4uSGz~_voldJqm<8&1G>EU!V0aaM*Mbp=R(+IOH z0(_k8T6pDjQ9j8!9iI4)w0CJgxNG?{@K3(Mb|dXZThs<^f>H{w!mGj_lK$+z=MtjGQKa`RjdB#-HxH z8U{O;(`YhelN{AvrW&6M1wLttijTUIuwq+&ns)u*yykl^Fp;LE=GXBFyIY^?%OBdi z% zVb_HJH)ML%`lQaDwk~mhwKupQ6i-V~Jk3Gz^e#|5T@MP@G=JW5;Jxjh!H6|K%aY!( zb}eh#bNG&?*>isuCeIPQh8exl7)_o}GD{ssJs+Q!)$sMz_K${gf06MhOUfdDy}yXP z)JimXK#^)I)BB4!ORWqaQl#3-`%21hkwaB$CmB5jguSve&3)U ztNxen^F)g-qo7v4u9PzE)6V|TTurtrpi(w~h z*p&x(#a0txu<@YXA5bskO&C$}{ByR{m29~yoFiTiykogPLP0G1RDle0H3mT@1E&QB z4^lNs|J9@J5OhCMpG(i29r6=d7D=;iINx;1s+O5kQ8~K>rbciXp;J~Sd2>X zN!GS3q{<2s8c!8@qGSp>P+P`GN?H@lLXejWF9IEZjw6R2^HD+m?kwmF;V1#nwK>?b z1Z30%z+A*kq4H>Wp8Df4LZQrnErawLO^U23;3ofGD4#>`8b90e&;M5!EyqX$K>)Pn zeP~l+GfePr%e#JmGQ~HyWDfq<_>)Y3{@YZV4MXW; z6!eFGn7J|`FCh?3k_aC&9+GY&OwN9kWdNONB+U0=4iW)un}A_`rVBB+?Ic5le~A|# ze*RmC?>Vy>K4L?SCeYyXLz)_4!e6ov$sdl9a)-j?AF+=$^MAB5;~W(Z>9-3*jLV7t zFpGz?!2ooR5;fk$U)8)X4DDeQz!+kLdXD^mEUF7SRIiE$I5%ITSq~wCfLOwak3auA z1Zf`Lus9Jj4*6G(9W>EW`t#pr@wC9b9sB{t2{41wi<0}#i2HNaaXHYEVUW(kD8p4p zk?D%oDY#BZyo_{q{PsP4!~f3N@W1`Gjv78xmDF=~n{Zwmcwb}SP!(Rx5O^c;f`u4= zQMPvmnpSTz0t6yfXDjm&z%TKh7|JHu(mQFOZU*gfM~S;^M8J!4zOx7tk`{^PTe zbgB>7g9<+yBCbv+qw@%pDZKp5Jxl(9F-KT9<}rK8FbaH_clKJk5R1>A7tyjmNqn`R zgg{<0^2S+IeJi{K!o@%U!t!v>hDw=#m;)t$865#poEu;x@R{PP->RiGECu&ejk=V< zQZcH*ve&3rhXqmg>f7nKo`rftAZ%MQ8h%S^NeELzGMbVumv5vC84U|^rVcEx9U()I zOoBAR$IoF}3=7781-}iTcZ8@Vvq#PaNSr?$5`-vE^a?~OU2-(rmCz>5Z|YKiQ_qKB zX*!G|g^_EzsTsCrZaR(x|FLw_&|tipnL?Tb|K?5240K6rTB_zYB-%jG9Q^I8rq4fF zS(PUq8EAlKtD0`lHOIcS^k$_r{%dItdSIZ&(Tjm!>6zAQs`$2h@G}F=0O;9lwi@iG+1hfjnI<%1L4)uO zVSuk8Iea=1F1m&Pd|*XJGoKWQvK^R`1|pH|8_=emr(vAc*rdvT3R*L8AX^5+AkNY7 zV03-W*aZBS%p#wg57=rUW@t^A9}9`rggI?UW{wtshD4w);sxNaIfq&OI-tqs{YGr$ zDD`z82|+?UZX#7^h&uSgxxw!QUT8{dnuPA05#hgE0Swif>j4b?HZebt2>i6n+kmVy zDC-Q&20%!nfv*97wBh_dkRG7d8t7&ph{=Z*uod1U4`G`wHip1AiA@86BS*mFGZ-FH zutl>2{ML7D$+3&Rv>G@z8~cKi2K$mC&8m4v2%rZ4ha$o8Z2*g&1J-HM%vcuw$Kp(l z*u1mp0_ovD4j~(Xhh4U8_9vIg(1_IhJb)2W4&E+-A%_Bg%zVptEXlD7Ou;Q}&9MS3 z&~#9?0BDKHI*{OI*fq#yvELTD1j75O7}vzx1Npx`Ojir1$0a>t-fiZBJh=sSQvBn z@2Or%%~#e@qi=p4m^dYQ|P_*BFS|9CD^wN}^{{6Z)0Nw>m0+|jV z0>B3_%f)LE6jbS&MZ-99fZRck0y1j=GS|{uyk|>NM7B#G`Ish z4ZK!=0)$*5XVbnNIoWcyx-eo30~q77utX`Ef;Fdz=7yM4f#SMDky{t*7E z6<>A91#1J~ffD_H32nN+7H#gC_7+KR;N)|d3ea|eg#+ttpszUO?I0v=)K5_=S}AI9 zI!Q@l_^kltI;!Ew?}=+eiC3mE2QuiZR3T~W7SrGxq+(E}6etHxS5WK0t8h$OwVDBc zsr9I_LxmPLMO`>TMykOo1?w!Auat~+?vV!F(i*9Xixl0E@)}!0Zq#pB509X-J{zzB z^N)^xu}LS-u?Kwytg})YueArFO+u#*0b8&%Gkn;AA%+JKM0Vh$7v4AxgFccS9 z39W+AmJMXL%M(rNFY+t=Lk*!yf_e#mDjJ$a3R#2nF&iW~=sPY7RV;;;ig zf&>5MA{|#@Je69q@;^>aSWSbv0pMVLZ6MTe9fXadX_iIY1BQK<~DvJ@3I)e!17URYV#-1(Jkat_R z`(W{`P52nts)b6E3-zlwcF;J1UNZc^r4RmJWdW6aAgZd?5}kj&OJe>8ItSJQt9-NX z9P&3d<7iO)tY;Mz^SCxD-fZ5 z3%8Oa6SYdfKWpyvTlmM&K(%3HOam8Qm&_=-eUyF*l3NW@-(*l3AzukET|3S6jkQHuv!`}V3A9kO;8a? zMLr@?M!jCfyMy0{u?^755a&a8X+I7ohF0z%)J%&cFU&pYj3!Q&fl>|~3c<47Mb#fB zjZ_8P2_QPP(9-~a00D$9$|js!wt3)?c`NPiwVXX%QUCy&s30OV=6DafnZh)YMI(9! zz->TSi}U?Ii>iV?sL&PPpv_@KQ>_I(0o?(&ux-RbTZLr~D?G;y1|Lu{SC&avF+gIO zq)*@m1Z_6v}N_jf75zh#c03%K5D5u)Qn09Qb$zdMBF{EN5@BBaTf zu(|0VjnW^cqL{d!U^M|PUxED6+)WqL+&lxa7*lHWao8zRFe78C_wzonQ5fw?A%HUO zS-t{hks54o%W@b`f5*<@AJ$>|!uUPX`GB!wQGdCY@JS5(h!!lGyA0l)-*l>U*Qt;} z`@n4Z2Hd*!^_DXsfTIo^{Pq(eGd~g1EIJc{1$Hi}*PX?2`JJB{v17-rf#SC}O=WZ78Ma;?eC`i&`$uL)5h(Eqw=J9EiWp5V>PpC>e?CMpi@3*LuJ2_U?<1Xf z_HS;UB>dEqABgt6IWvfyYtzvTO$fQw%M;Hts#(vxBG0jYvT>#bX#zF>_+oExb5jfR zmb~lBc9EuB72iJrG?Xzlm)93odUtknbAKnUDxFXcysNw^^-Q}|x<&XW2w!2n2j6-6 z&CNbcx#oAXf7(I)yW+cB{}WI_{aT24Vd&4E34;;AyzqJ`SEeOQ4Q?lKW`dx`Xxa zp-ICqn$%i0`33)AWiFZJ%0*q3uPz-o{@-pfgAc zZ*B@Se}QTXvhHYEFd3!k$I%!ttNuc-w0WlRO6F7v5W{jeIdMHPkWz{ka;u4@-eYA7 zWX&n@Of53xIC}L0$>+B20VQ^70^PK9a=9z7 z3)#C%+y!7@JbQLo>k1qt=Nl-9x`uOZ0ndenuS!OZ0nd zcA}H<9T{>W8FTtQyPtlqu)6!`_u%eKWxwvH-!ai|(z*UR>$L+V^`mgw2Kw}eVG2sY z^=SAGo#;f9?a{@sjmZAwOiQwNlVspeu5ND5v@uKncr}j5L?3IHZ*D-#5T?ASW*_?V ze@m*Fudn9QxIHdITQr#Vc(G{HICMS^VEe^DipvJ?L+|+dJi01u?ffp<#fi3c3FPGJ z=EXp{M)}H0FsnmeLa@CP3Y=F8aHB|GqOi>q@}E`mGvi90U9jB~3LI7nFhfgTps?)| za*rtYNvRO+f@U}w&8DdO^`d_CdDc#pf2rSnDO_G?`$|6%1 zkaZt;pvIjkm(QL(>2;8llGhbn*D_V|?%ykvu@HuqC1xl?=Ry?FO6^v#H@T#vy7o*(pFe^Qj#rV9^j==sf? zeJ|Iz`;kv}kJmv8eCGf%wdWl<9H{4`aV+s)Rh?mNS(HrCT8+mFJ6FdHI$YK6&Zg7R z5RZX?pxQ;SY$31V^z`d&GK+%q9eihua0y!YJe&Od?-)HAZly_Z-p=8^d|LEFSgw~P zKmsCv4s(bC17lxaK8eqs-PJhRRIWDry)X{LDpxIN^(wB3c8pqFr)3DXJnt-JTQkmH z)B_P0T`=ylZUYiv_RA;EKc{O=OY>GW0bQCsne0U6l{tI^V`nDkMq|MSmrGZUQdw=H z?N0n2UJ_baAOfI={u)3dvJTS-MbC0KU-`3t@f28Yg!Zv3lX2V32^F56g6KG3Eh>(s zxjKtgq>8Sh?qqZ!R3dNtQ-41K#vNF$&X$|X`%oMBkunqV2@dAgvJmI4hSb9w!_{l1(V+#_To@CgEA(vk& zjDoH?h>8NMxcy5Zw|^_FyBaBdgg4`V=|o~bstP56>$Z8cymSGkDCM~0OS%2!DXdFC zg3W0obvBSH zc~L?qz~t5?2}t?C$-+w*ar;csG_9*~otZ=GfUjtC-AXVl`BE5`{8)Q>eE>jztA9}_ zELHj*mpv1ZAq|Ck@rdRDJ{*n{~ zrIpJThNO5|;dDfu-SD%kVIUPs?^ax^UqhOI;U`n+U{VvdO7}303%k=%8UJp;%2Y3B zeE{`2jwaKjNBgS$YL?<28GdmmUow*Hgzl`bomC&DF2R zHTh*SokmiaMA9Ze7*ItDfw@JQgjaAtU6dkr%O)CXac
>K*VuJx4@0rJcacy4LpkH0k zl7Wl91KlT%KyOx9p3H!B{*6y2XR{q)(hIV>Tko5MkrhS7L3 z0&Ey`U^Ls&gb!cp`%@Yg8;;-YMQPL@PBrO=*(8i4$bq(G+4SeX4a1~|o1jV4otzObUu z&!q3830}-f2GRs;NMIr)Y#uu|u2s6XGntGgow+uE>R`6phXDLx51~pG?>2Wxrkp%UN09xVz!y^@RL?Lz1TFBZRbgNO4ak z(dD$#8KkZ8Sn7{JrX~GJBtiFJBIdvhh}H&xHZU^~#qdCrKH|+ZNE-NQg*0))0Oyxz ziWOc%aT+v$*EspzE(sKqO_Y$HM!I{eq24Pi6Z4X-$0=LsJ!`AGrwdwo=w+5 zqX*?>g_8G2Awl(voYvMTYXql;tmX5 z4+h}j8Ix?ZO!QZdr>lCqX_%I*!1{O=wUd(Z&%GBuo|^cRUNqGxnGEQZmGM)@m?Aiog{ix5RD91# z=*u_T1@n&h)k!Iw0ppWi!8%{s%s}t}3(WcMfBf73{cbXflT`YT|NZ}v4vVXo6x;*w zr%@MZ6=`mNlEiUFl1c`GLsH~)jXFgag~cq+>6_E_H!C;RUV}1FN;AAojjS&V`YBCy zqVSgZ+NT@Xdw|&ObMZAml^djh}USj5iiP|&^F~AuIBy18tFqL zU!rL2AKjfEB&KK6SNx0gx-} zU0hXkSM}3wp`U_|mr0+-A&gu)9}#siEt$%sDIgrw9)XgMYY&C%u1m`6`3PhbUY(!Q zrpE}l$CX0+#BKQ?nneC+*`Cg`GI= zQQc=9`EU$Nn`pvR1tKx5sZ?P)zf2Jlbsy$VCFf92hu-n^kP08t)*x2tX@A&mKa4?IP-bj^%~I>)M@+K<&T^e*Rl;ZCy(_c%3oEqMNaaANAJN zc~|!+L$#{)y?X^(>0K4Qq5~gZPruB(RL#~XI3Fh~RlFX;!e!#m22zoMR~4}EQZSXVVI2fPruTvsyv8r|L@o}AZ%p`{A8AzyquWKgJ%x`>N^ypFKQ&ni-e zv&kXpF=$P2q8z2((_yYrW!{S?nO5YeD?g^*^=)`Y!utn0!Jd%oli_;IQ!gkFA4e%y zKXH$Mxl}E7(5ra<>{-&eX7&D$fgh3rBJm|M4eL2mq<6o%*B+zV8;=*+#R(9YtEa0g=~xU5^PFe@v} z7UW#&H1xB6cjQmPQ`Cl&Aa5Y+!*WthN4*jGm*Rl^Jn+oOQhpeJcv{mbNBsRjaOZ;J z8kRkSB#UY_)Uyf;o`AeN?j~vUfzFsW0&O%*M}FwB!vVfa6ljwuo2ApbmW|V7T7%iC zqo=P9ZdqcH2&Ffb@gXyXFku3fZf3Y!^XbDLdXmX`?)!oF{J)W-_rE-^osFa3&3M?m z!D+tfCGkynFuw7B=Sf_D`aDto40->eVXn>{*~+2+Bn~~(aP{7KKhR*=HLbB=z5VAR zOlK?$5+Kr#11Y)$3=K1;j$AL6c8UKg_`eZWOuh%h(*hXnG-7@N*>D9_D)7op&SEM+ z?JK9EM^o_{VY1N^XCbWhVBuc@a=(UosgJlfn}%FBN}~*aRhT;F&nD0&tdwGpS$+AJ zFf&77Iuk!7|1L@qd__kcq~gUnvW8w^EM_R52hU^Bu}UY9Y^*zJgrS-YqI>S6)5^Za zT<%j@a&@!R=$}F~8{}^K*X3e;Vc9^1-$I9xm(YY6%0N26YcB{ywLsC~|Gd4TN_6nJ z3TRly_ORkBkPKmmdE5h`wLnP` zKp1y_?Sed_-?{FClxfG$o@E{MkA{PXn6ERwLq{3WQ(nT&sQiMBon|1_j?{PP%~1N_ z2MO+n%ZIZu1mC5&k--A8U|#h;s$J7QGynoo8>(e?8Y{l6ZrMstql!Lzt4$2gy1MI~ z-L>Dwi&Xcx6DZ*qTaTC%t6&aWrm!Hy3wp5&EDOByaFjaC4=J4srP&XNfZV z@oz+#Yk!=yL*)#YBvqTV{=z#%-;*ngY+89=D)Tif?=?1POgtO_51;eJb9LbiQkZ>! z;5ew~YvNEtiT-MYyMVw!Ku7D=6;x4R36Aae1=H2L5CLmBM~JS$h6h;*6&1iTDfJ_N zva=DFYGc|LSen#fqTDkpjLM3+$q6myN+zEr(2ddPQrP^>x8d1IGwV30&A7K71krff z=A8RavcitsaWB8vHa{pNY1cc*ch9kS*3t0RMEBXVt6I0NFITG4xdBm3 zkc4Z<9^18LN1b)$pt3*j$>7=w&hRVwa*<>{4*(12VAP3cpx?=c{kV zr_kOHT^Cp9?X0u{4=@t96e`8ipZ_PWpoX;BF`dllc%4JDsO6e<;0*}EN}-NifA);w z@ZKn*C}7LzmU~E+k2OMNKw^}vCrdPap4F~Jq9-I`d|}NE-UngvSHBNSyKu>Wek?1- zk}P8|8u1jH$&IBe)6hQ#sf=;^&&)e*f}Sd;Fc0{{D8Bdk_0;OUxZJ=^7^A-E*NW{GfUHt%n&?Ua>u+~Z6)Mi;o-ks4 z_AIW2-$9P&CT`b%R4(B4*%Ur#6>yON`uy4z02MwxO*wkXc+clGFz-tc5qeuSmN?gw zpsFD<%t9Ny>RR!RB`I$)w<_hU$lFXtFIP-P!-Az3WhBjLW>Vy5kz81mj$la&sBwsw z=IHc~g6wix9@-g(?W;V%uZUgc1Kje*0D8Wx0FpRZxn2l=Yk+Jz8o!&2#y&nAFhVm$ zf`|wXe@Q-mN-MjQ1=;Di-II+5Q7!RaB--dazbD$kzwJze#wS-oA}q}~%Q+Z%hNTQm z@Aw$q(JA_gatvIxsTlmLrI_?(Di-_I48`VOrsD7~TXFf9qcr%Jt2FsnLuv6ZtXDq~ zb~JwU#fKw*GH%vcJp3U4LB>}f6yF>Buv~dPoYoTl)`PA9?i((?)Uc9fDmF`tSJR-Y zl$Jl$axfcoqluPeyU8#Cj_B7rep^?Tql0=USQ8!BJ8@eVo|*Y6tlA?S3mcWlYrdsN zDpdTe|H-c_m1KjG4NNxHB%73MVzNoeLc80sa8|&7A1tCh&;cxrqwo-EMSQQQvz%Bf zHfZw?zD3K;^AoQI+IzX@9DA@hhDs2JK@Yn+!o@5=k56HtFyGt+IWM{fji(JWp44Qf z{V4Juc6V*Z+Qels>QO~1DOHrb?dp^a>RFyR!uw=@u=H)iY09`#EH%iOom!D=`Me9+ zcOEK#B^}@U|Ji%D<;ImHLGZo50*TI66DL84r0!Hg9NqGAbV;359;q@_8VMu-0unDc z1W1XJI5yTcHXpFtHoFgN)-UH}%=%%UYG3N9^H1ta*4-ll2wX@>nOW66w%c7tNdy8B z9v&VZ9v*)24TJ!nfq3B=CX0%6pR~4mDa0IqUd!5i2`jMQ8n3@9>QhZzNK_r_vFfYr zw^qk);N|6@-2^UV!9-7V{I|;gt-+d>E_ntueuorp9QF%Ls(iCoquZX>CQ=U44X;$8 z;tePk7G344{2rECCeD6Rj|JS91O@-hI_Kg6{CrhC=ZypZf}UerFNq%AS0%6PYCi#g z7FvJ;8~(=1Tj)9&VOW#d)`q!OX{g7JH&EKc2n6R1a|H_C^50AF`vA4c9eP~Ax-IX< zf_XDA819D3 z^>A?K43saFdScj}3V>1q3Bfj$|58&9`aLwf=zaZD49s)xxjr1$D&3JWXjP!~&e=E#?3q2Ev zL@V3CJ3+$qHcSjs+)!cl*6E=N5A5)y5;F*rI}i=(KD@Lq10-di@O0lyvj$L0RM;=_z0T-0YCSnDWu` zy3CGm#~DUcD0f7=K8;bdZ+g{M5JQ)_8GPtXDm{NZG zLeC9szu?Sp=IVC#e1YVicZ0?Y;D|2Vd;3o4^h%w`XmZ@}G%#ERI5szbTBXgwz#792 zOaGR}T4P*4JJ*ErmECGGYqT@}97tA69ie}5bbdvGwm;Z5U*T4BFm%aCi!HnYM~ki<@f{!tG^eK%g{5V*8AUfP zR@zJ{9>7i3RBEEd_O_OPSg(M)F|PF&{DeRcuT9uf5CBh-7N;U?k0@Hoxx+B^2G@AGxvjIzB19vEbOCeO227!Y+5-3$#4$MMRny4G1qgV z*y;?2D{w$YaPY%O1`j;t%u9F^@Q-$afClWV^vK1RTN5QDIJ$a&GZA(Xg&G-&z}wP& zRL8qfwEQR~Z$aky0**ospeli^KiEqm<9sNG-W-Ta% ztKj709eR+8G){SckMO2!lD(R8bS<@N`aO|f;?OtEh4b3#SlK`YtdTppgQXc>xAOjx zc5R&6BT(?Qe*dW}_Gswn^PSk+Zl z6lXzQy<1+riqfq_EpQ@U!GK{KF7U0uAuqP06gT(E4 z3V40k7*jl6_SuN>C}HNU69P2oXA(*XdRHc?P@w6`VDiM@2sI#@h#ma+1u7B?@mqAbXR3Nv;GR|Xd3FByKb*%2`(BZutZT{+k32#$v> zZJp&crqFquwYOg58+3r6^BC~9SJno8!HeKiiyU;JT;zc5*UailMZf8pixvG{$E;TL zA?kYdJ@{QqPA@Hx#Tf6CZzB3N-O4IxbK2d7T2b(SGhTU`4{*{bY;y-zfcs-6R^gQJ zT^~#thGQlewj_qfORv-{lRRlF?hbyHeMQ_ux~b&q_-lSct4s12$Cnwnwc`C||D#Mh0_n zXjYeh%2#^R{9tax+x`c>?Kc`9P=XzH<^6xx6i1^Cv(`9kl7dImo9P3gc3wZL=pdgQ znC(VmSKmpD>ZJror*3Q z+?76*ue5nI84-43<-Jb1>-<#m%flM{hM{kN0puv`~4$(5s|GrW9xe}u?1 zqW&BI*0D>dk$-u=#}JY#zSM+7wbk!;91Gs!^+`!pVB>$2hB!?$U9wZl38wMU?D#PP_fVu7&4{3w=9( zA`xt_ueue`iVmjBm zs6DB}hsPuD4*Y7Y;8)yc%^gpQJf0q=00(m^~9(L)6TheeLSz>B11 z&kAJ}K<_U`nW%;9PeIsvp7NzxJ~iV;kvw3v6X>|W;@=fgYo*7$k)Zv({&6bSfnrV# zHdL9&V!XaDe}r?uMFQHwva^(|%Uy(H7m)~L_yuZin-Ww=o265OFiT|Ib=HG_5^Pmx z+vN+G#O+t`_gvqFQ!maMr_%Rk{7r%+`1Gf-_*(Aby)L2T)qB?3ME`{*EEzCt+YT|l zWWMr*T1gQJyKvHbj%jldEj+W&V|xGx76)O8L@3(|;E$}(P@%B~r?x>V(08eP`%OwEzoU5z^mnb?exlZvwVOD@XdF9n7vjvLBn8i4_{*|7$12bPU=4>f!n$GQfe;GJhiYO8MTkzcW*RH~0HT5>au+JO1DvcS{owJ zla3;SUeg!OXJ?Uc1%GGs#RfKA!!&%d9>MUc{qM26%+3_ z7zP}qC`5SU(CIi(7}cIUICKe=jCh%SG&t&5?6+jHt&x=aCWWXDey1<^?!$Ba=KzQS5Z>IJZ^@7 zz%c7pw641A_q%a_z{#{RGCT1k$ICBJRk>qPD7hId(~R_-jIH`Kj71>qMt+crAm%hM z#ux2vYz8K%8UWVo#CsSX9kP3v*B=h#P0a6M1XXFUFse7WFaA$oivToyw)@@wTy3JL@9ogvy7cEggX_UWzz=f;)+yA}IK02Q!`=d%E zYm~p+&l)r_;}P8G(9})J%Prhl=%|=6-19ZqwX=5arPC@p4D68ff=2!HW1p*+3hks4 z!0cK{zWE5n%||x$)|9h18nQ5dE7%^NeAyA8!&~~YBhVT__OgS!-e<2?Z2c@m<-=5E zKE-5y;@yXTpJ@F%(q}*9=EMJ%n-2#3tb30*&Iq6}NLGTztvt|#1igx!(tn`q5BchX zxqkrg_dGgTmP&S6Y_-@-J`fAv&XK;X#`S1R3V1Nl(r#bBmlxTk7@jf$21v{*h4@v8C}e<)rk@#f67|@ms&`(_Gl!-%0^ziKK{}sZ30@ z)N`6Cq70^R$Doios<7LoFBBf{k>U*Hdkh=fRnZHamgFg;_UYBeVP9-qBJ zTTy?IzUDx4OD-kIobXGJX&{+z#iql9$Dkub47X*bLR_KCPR?3e_~Wph8`+_}Z(BTa zRhYPc;JD~A?4~1Ev8MH~p|%~2Mc%`{D`jF+8P(~_z z4-O?;GXoAmx~j!?9dQ-D+UC#H^*{E`=b8JjuQe{!mvp<$zMog;+xkDM>OX1|^|J0K z5PCJ)mHzUN!#BHc-n_g&3;ABTuF^<-TDdKMbE8E++?tlW*Us7R%RdhO?oyL|#DB9= zDKWTLHo2>wLC5&!TucMo8500Rw ztJ?-_(9G?aywMHl4-j$%dANe-Zp*sRZC>krS*dY!$m`rKq}p zoCOCIiwh>~O}gM*XLTqRejF7aOCuh^o%X_152!KT901A4k4+k&G)WOXi_;ec-&zm>8t=EXNa7j>!&@&&sJYxW++5*+IL~plN&HBf9QNuwQpMkkAo-e`2(2iJqDLryoN`+Fpzkq! z)?J;i=(??^7Es;OWpb*wu_+b?@hzK!dVoc5Sk&U%*!yIpUlkpl#`O7!DKsdveI++nIRhJ^A2}~yEglm5^Kblgh%XzH+p!m z@b++zheF%Z-%$FU(w3%wXWF65rW1AiVw?X8s_fn zzp$`ialDRH=w$2#n%kPOD@Be;n-ST>mrm$p#J~zl5r|uPP!3D?=mfFFjzWO=Ez0%0p$=$CKKP9MS}q;*c6pP>i45!a-7hw6&SYs>6AQ0+nU_ zwj(ET+>XsLV2Qn9Zr2lxxCW1GWE9yj?bQ9v?IyuL;xW$6@!6kb9e8epr*{~8dLMBQ zZy(XYV{51ll>$wohp33Rq1L6c>{&a`!kBkEABJJCpK`9u^mOcW{p)@Qtw=i|87lYg zSlmSl@qtFKc!Ugpl`j?yxyPc4=!$J&a4K6&7u4>1!0LYO-Z*XKZ=XBhK`PzSLH^b~%+8lg>Knaqji?ey(41`_lWopK-^!*-m<`TZ zaUkCVLC0rX=Z!?b7t#7g+j2nxyB#i zJX9D6;sp4AvJ8=VGARlTQQTEdDo@T&g)t;f;wu|qh$jU>Bu=tnAAse}&Fyj4N0%X6 z7=Cj`APApWkOQqWd#O;yV{YuEH)n;B;OkkDelwf#v`ttuYXq4mh2`1tT4v3-%0vY< z7qTUiJ(w)X2FFTFZp!iRyME94KzD5=?WbjDF>{T75Ic#X7npB~wuJfps1JNJxrgwj z9u_J;kxvOsMbi(VmM=RPjcT<B(I=59pp`y%t@owkS-mTel~dI*6ryDKxljbs+@K zMx(+{rqT&jd!@z_sTvEj$;UH<%qf)s92Q~}1H2DBih_BGmsXq1{OtXN-GhlZK1)vh+xl8HJN&Y-?n3CgIFy`#ZJCl!!tta zRwbs!TS?SUi}*f?_?9G^w_?#e>$ri88yBB{0jmOpWY|fHU&C^M*MWYUcPoFEwBLM0 zj&J7V_~tX^cp*XGa*tX`ir-~YeDLsqS$g4!kqT)1B49G7`|$9>(?F=_*-J>jK{5?$ zIFy^OzoR^p&U)f*nCugbK1|gpgf3-Uurbg(wSm!oQ(sE3^3*3xnzjrNM9n@>f-F*h zySgXhARjSMn>kA=nv$#1QC=cFl0qaW5^X9<9Y|CW3n?B4NEVO^U&14^vVQcsT7$pn zL>M0;`4Lj`AsT@k~Yg`@Wq+Db>SRyT(sk*#pR!PvFwya9f<8rW!m$9N!o zG0ttDPY`iZqLJ0SxB*^zLG#$S+{B|q>}!NGh$?s}_QhJn=zI=#$PBIikWCV-@H;cJ6a(X>fN2*3 zGx`CN_Gnf##R6JZx41m#3|y!hap_7*EFvF3iHR_EBhtE$c`HaKLXr150qX3Q9SAz5 zm{dratJwV@z<8x%>3u%|#+S(l^1(2WE zfkRdzvFAx5X^lbB%H}b~tPRnf^C?qI+Sbh`-!BqtmU~Ce@K|r@;>bBu`+{e2e_TcI%tkkzAETFF*Gq^YW-_O`t zOp!fDtonn21Q^Dd<&23kCo*B4XSf7O*2U~Oy@n!gh(rQ5k$p{wPX>mk<)_(B6_y*O zY1OR~>JWZ^=Ia(YURo?+9m{BJT;=QA* zP5S(T-JW8QYcwIw8?atHxh{HyWtRNh{o@e37cez5_yn7cjqm zWI5Q{ee!!+Gf54NlU$ai0;+MQf+){&f+)QYJaRP~lP%6SG19x9?ELES``84)`&ibS zE)lX^g;HpWjOu$L42*Q3D#;kknQ3qYP1_nL#z45z!#F?iE>}SeS<+e$spL*%;HB zb~?{K9<#Hj!xjh4G1{^wM^WS<7roMb>UAAChIBZcOgSp=C3mym4%l_lNFFTdS`mq3K|XB4LrCRLtkL_MUZi7wtoRy%(834Tw`Ii((?iE{^qm_luv zq~#E1Xa|_;4}>QQ05oO2SY(fmS8%p}Z1L@^qx`AWUyRUzO(}xSx^aJOVvIF4&DGw_X{0rHUNV7MM6@^X*cFG(t zg5`5#c^!!t#WH_-vJ?3;!-Ljy@;pBo#0}Mh2vcw*Ao28S*er*RQK%|NkRL*Sk}r6{ z1a$^1A)EGnvz%pBn<(a6ET@qY`DlTzDbJQV@T{5Qj(jG_3llX~EaEGfVAiVk{EDnGN-DcQnIx)kll(eB>B za-%TnyKecTg%{gJl$&wbDGq3VRuHjFZ(Biqxgc&C`KVJmCd`UQIhBA^S%57@RH+GI zFEHU9a&VH~8NCCg@k_Z+jM@n_gF|L=uVNUHdJJtuJC4;+=p2q_QhXV@Mu_ihc*oA@ zvp8P9a(V%hIz+o4J0-bh$8v^lwAo~7^18I=i+jbxQuZ(%f5)Dab|^i6)TsWVI-#YS zX1Lh_($dR;+sHAcx9o_iG-utuWFxH=4z5`|Xia!e%?cXzT!z1k4p4)h9}q?Wr|(5*9iwHl1C6zV7v%z%57wA`3*ZIFwwNyf{rqaX+1#D{)NBBuh?*60A>t|@){lIf^F)h#SRl+f$!HFLTOKMt@+SB{_Z}I+ z4>}lg-0CbZH&-_3&;X{*rZpcsy%@7jFO;lMng9id=k(&6 z(>u(2$W3Qc2@Ml})8l_B~zEXg4P9+<`M?Up{rUViU|px3~dr zzxzYOQj+5GM;>_p@tE0|E9qsR$CvLo`)NXIJ6)W7t7|Act9hb9Rq!I65yM^|$Rn$Z zwwk)4?%pOh-t(#ZZ+1_QuHjCP&c8@H)Uxu{fgU3kBoZlqlv69$QyTvWH~|u2NyI{i zr&zW1{X6WLy3bnXs^_|*>Tf%xY>%14cg`;0QI#~^SEuNSHLP4^5M8X_iTW@poJgkZ zt>H7yRSc;2xQ?N$KwFookk|F(W!=oNNwtQdnm)QpeY!8xFw+9W1 zFUxI7cprYZppTUIz^6fB9?6{YyvP|~+R<8a2MD6MxlbV}*fS)-GeVyBo|6*tw8vN| zvjO-KjC3;y%IwY<5wtm&n+u*|DW5k|Ca=Xiy_foEj zz-W$vgUnYewMA{B>}_4jdV;4)A_TV=Mtd1JrFvVmK$5{;-a^}d zr-O+WfXxa+wI3x>2uhtA=2|B4#9kxfq&k=m73 zbLhmOqNl~+t_2{WohjYX31d-Ms^r&zQfyZ_ zbcO_f;+FqN9R24qwBOJmB1Z=n%U{wA>B#-{Ux2li6((&X8W~FC)r82zj1xl#_n*Ii z-cA-H6PA4=UhcO>+X>M0EV{6|jZ1v^`e!#{M&_xP+T@Z)PW`?u4yTP-2(y{Pjp;3% zPA%HIm?E2{J&{;MNEc}XBYV|Go-DRSb6#jq^+Ptw?>@ce6<0Y@YW7m3RJ{4kI-k5v zH?TVZe1MdP()Zb;G9|KWlzHoaw>fnblICsWQX;hMZl7KsxiwJ-k(gwGRLU;4 zhJLj4l$l_>LgG}COfuV_FP!H{NEdk4dx75oCt`2s=3Z>We<75;xPDe+x4eZPCnzxc zxis;|>q$!WUa+PP1}Ti4#8&4@1O>hLHoP@!h`><$ofI#7>xA4)oz3w{qO2%?)N1p} z;x_s*^%jA?pAwa&@Wa0}RAD491m&;)jqBJ^8z>CuCE|Nh)>O3aBZ^GpF}8b5p%Iv? z%v5+Btecui(KC?CjV#L00goTB1oj)>>F}R@yU%i%vft>ENMU=3r{Cd{N}^j`OWDS# z@sNTp#Vv>I0{OzS0l1LGITBreg@)6!Q*Yv)Lj!)Y2v0l~kO-=lywGI$SUI#;R2^-C z<-T2c`MP}RxPmVZJ8|fCsd3B#$mWP^uiMcYK1vN zv5hzZW(Knt{RFjuNe;rp16?p6dU*wo>Gb;;fpwqZhfuER98;nc(W=FNDDz{?+{te3 zAKf_d2y<#Vr3ZhKske7X@|N?kXIvP}EQ z$~lJT7|a$08028OI^wOB1@m!LoLF-5o=GLsRb%W{AiQzXHzG-CS~(_-o+h-PN5S(f zC_Ux3I{uoXLK5RWnsDih{5{Kaa5?BanLyyio_4!f~R1t`!(?IGDe`o6O(e z!hhq55uoUJ4B!3R|5QFe&10&0UfgUvsw^$6sL5v5tjQ^! zS}Y~U(fj%8YDITVIRSGE<2Fkfms`5WYQrI=di9 zdEN&bWz21*el1-ZH`JNu^^-pDY9f>+BZuGr~U@hJi)J7-_ou${dj=znkvDPI9P!EJ}%u7Ug8v?)<`1Mbj`) zraNDT$!Ursa+1V`BA;1k4-id z%Hxg0L5#*l+D}*dp{P+6HL7uqD%IFEFJFWBs?bTyOfu2e2YvGIdwGA6#+aP8!*<%5 zy74+3p(e(EjyzMXE~tv<_-!v@zj@LRQ^lkoRs5eSy6U6)qtm~skNnUFc^4YOYzu&I z^mmOstOU)FY0#cyE=YAxh&4A3wm|ooC7Nr(UN1Vj2|i_Sr4RHYdp z^?vG?d`)k^GQCNF6rC)n?SAQ=NoXNSb9G+_Jb+v!N4U@ATjL9NO4>EoY^5@2xpEv0 zn;E8mc;<_$Xy(@*ea$YrN~$s6aV!_=mcv1-ykdEaZ;pPsh7CdGG3ndpM%zGlRKNgz zW5AAQ8N)#*sX!KMqF)Zc&Q1aUxP(OEy0D{t)z@Vh2=1_EN0B}H$zgif4C`oH%)r0l6ArhpNZeiEY zb_yiUf7fQ+SkrAQ^e7`iJ<}3XOxD#!1ykQ7NJv+kn=8Ry($;O*OLUGLln`Kp3q-AI z!!}%>C3g!;fqoxAV<3Ih&uWW$Z4s4EHl_kQ0e)5r&_}Vlh|&)&1`i_x*^M}E^aMlv z;MR4X(FEZ=ZYy&FzqTm2|FqOc>K?u)Gaweae@YGm&`TX1V-Kv5ob%%2-=TFVhZNJ2 zkmO=JkKbm)n2Cj37@EwQ5#%g^@vv6HTu7nLvwFvexO-u7CgQ&qc>cTG-QT9f(y-AU znHxtUUNfAH!-4=&KNh0P)?*Q8pDC@D3ns3 zt~=Wf%gzuH}5@N9^KYw9?2K|uu^gWX^_zULf zTF=od^BDe!RnmS^G0|E@DNp1iC(2Pj^y%h^MahaYyocm>5e*|Oe@sp$I(Fu!==q*j{QUZ8fSH_$Aglg!B$PfS2e!qO z3bN5)*4o^%9RsFE?3i9y7tn<{pXm$_wfUot=@;uuwI{^DQL9TuAYyKiBn}Q@m8D3! z++;J$_B>_Sg(>4Ur((We-sicBq{T`!VV6=U(Wia!sJ+8CCl=?42?+Hpe>Yc>b3kP0 ziu&n7%(W%%ZLf-Qa+BDVYZJB8nHE`*+}^mTy{ztwTDEhlbBgsT6+_e4-Al}G*YXsW zK)a~*wCYM~JJGUBEi;gx((VpMuj37RE|Tz&-R)h3g_+FpT4-Pm(L|5~F%l&gor`Lv z66^3eIJwu9U8ge-zZrnce|DU0prihv5X!IrCz{2!Jj@~Hw}EFxarf4!eGvwZW5b&B z(p{%sQMcFKdGCo`zC)AAFltZfb_B_jW6kq8| zALoSD!*pzu5wA;;U2N@sB%*(AIlxqVN%&8^PiSVtf5sBKt-Vf81}%-+nGzC|H=K(J zI?lxcEfCSdL_`y4t4sZ+j|w_NTwQ`PQvn2uBREMTh52zTj3z?g%m>0~#&IzC_f0K{ zb}{C0b<#pto~uu}f5#<*9@rS8jJ3j6KZ^R@l)=I`IkH6QRq?&Iw|;Vcd^O!IsmPle z=l+MrP;4c)T}>3zn@@>&z*6@7Kq%}K6y6LdKDs);b!^MGjsfO@c!DtmJHcBWCv{hK z`@

9?GTx(%fFu-4gVc*q zkV5x(DIrBfe`kpwT_Ewi0l?f`+_{@g=HQZJn_cO@;krdf2IDv$BOU6UEOO zVO`Q6=`JQt$SbNtW4njC-8-Zn$fLN;OYDLv1^>n=h$`)H#^D<6}v|%;e4by*k za9>+>{53ZRzY=)gWUiay?3!b9W1Jdyl3+7Lm2zpUe;;a6to||LLYnmW#bNpd%RQ6N z%E=B%q{qGnUawQv@Gpkqr&0Fd%B&ds*pOBS2%tuo0)N&L7$-~MwdwK(Q~A{xc-eTe926@Df$qJo z%*_E9l|C8 zi`8erKv+U>QMFXi4Sw-cz7K6)TBaYR9E3UMWt;aCy2#`=mvD50{YShVo5W(TbQk5` z1I!GGzt`=vt8?=nFbc4Zb=a_*Ir<1A(qzgt;*%a$m|s|~h?NR;4q2UqXmpnPO?sD3 ze_=;;Vtmw(DDwA2B>E+=`M&5<{zC&F3^)!3h~M zpjzp>E7YN8R28Va-owk1qVEM=(kAL6TYCfZ`x)d)kQuJKxILpx!w^SL9BN*~uqD5s z0*)!UoRvVE%()Yft!&3d1n|~!uTs6_f8NSnf5y;L#K)`97jM&>=b zM+`9{0Y;4`g7vt}*VY}nj)2o={p@_A-%?wFK7v&@Q zcAi2$?tf($jUjm6D@-;bMLaame@JmnM*-<$*l9J&Si~I* z?Sk0Nb^HSJDJ2xNmAkb&hH-|5W5Y_YFI?a0*dYrkX_>YJEQMz!UZOTK7O-inSHbGN zxjEnPtPu0^*c0*gQfqkiQc+{@*A@n}^jm8*yasI+a7HnOv7Uyq1D|+3sp<4iSn2K{=X?N@7>8|-L1EH+lg#1+5IXZz=f%SHzN?@ zji~=?5IBQv3zMk73S+4RjcJp`Su5T1d&V$#&&ZR|Ow;(F3dS}+pv3LLK`{|ko^)Mf zOTuF#xw}c9>!iyL@*KEMe^L@9S98Kug-3#M26Q2*Dcm3b1zj02W#Qywo5Zp1#X6Lb-SDcqG&mLsqJ9fA(9RK0xysVgi`wweHj>>7pE<>&3aKSDL@#Ul zefo;nWmm)n%I;Pp4(vF^NzBFd_QI2t-tbML%o8d^v7oamfAFnTuJ^=@1I6|#^3;7) zl{r|(7cl@--r0r4)X0!A+Q8-(Ps`n5Mz^LT; zcThOHDJbk2P$UXxPgXd$p+fM@3g_Tk70yraRvo9Zr%H)~o}z+|Imk(^B#UMgp)J(Y z(LJYf5{&YXrlujRZ@<7X$~DPS5DrB2FJ4PgoUUuFe-Zzzvw+@0>`$tI{FnXON@99p z3({jf$?8mTx#C0*QQ6qyf^H zMkCh~K-(xy{|(TPtmSE_2>bXeK}9eX32%UfEi1n;7MZ#cz#q4054TUK- zQ;7~tm2A4sI8agMnY<5*|JP%n*hWC0uD*&!Zo4$rFR=P>djlL>MS z$TZ22T1Pd_Si8oK0AfJHYMmNC1TU4P;C0^ ze{u7Ing4Ooso$YFB+Q$Kk^InFG85pk*})uq6qM3Wtq4P5TZ67hERVur3dXN1Deg** z;Le094EV4I$7kp}a6vXkJts!MikNwFA`_72s30eXh^@rA0J{PF0mvTDWQGMqUTW&Q zG3QGp%qG%3`91E!IWzf=A2aEqu3F$#e_R-M!|61`s5~uJ$8$VlCCh|^C}%S_Gt0!#e85dkD@pF2~-s-XLan&g*ZGAxxfW z`$9Md)!gD+h zP?Ok+R1I(0W>k%aXm@*Y-LWu_2v)aeRd*Tq7q->%RPt1xQMp5DUXW{(Zy>{aqz5Km zRxnpNj?CC1ywkyO`Dk9Qf5bj??M9Ns%;y(U6jGYYeW>RA!X>KU$4#Zi~;(2Ga> zD3^gwC|E>B-_`R)P7~E0SVNa`t{68?Gf>mXP1K$EwaPM^$R!!KpbRJpv4$4Nw*|gH zqYzlYH7WcuyhqaJCFZ)h3&m-nr;?ttcX%^Rou%)l>{uM&)*~U_f3gi-T;N)hnrp>m zbRr0z9SdU8X-T9bEea_s9w)ryUCL|cY5P`w#4_8%DHL;ZsYXk z_gI%QN?h@hIFP77ejUh*=sJj3paempMn(3J_qs`kbbENgUtC;wQ$1#1vQ}(#i960VL8TXA!T061vB9j49(T$MQ17T zUU^wyJ}QECWaBoXNv9>5bT-0zi3}{6$)+V)Z@%(1-I^ATqaug$+V7`KLS$=m&L~>U z{8(jqf1p*gA&fv?FHyNRH`l@}fWt2Sh+P!8;bcp9L2lv@xU8OL(Dk^p-R}n0z$wMv zBJ8cEomI}Wc7P|YWCutP&wu?>=b`U(=6z`_r?p%)%yHygQ#uT}=C5vIs!jpLUQjg3 zEw+2%U2=oL^YGvs$Xr=qkQdn)nwIwPfClshe=N^7@yl11h}nh#!z#L6rjGC=^^&bl z=tM6J%~@L{e(EL7-&1XjUpZ}Jb<9q)hps8t-J?POlhuZw_HfYh(3-j91MNz_D1ljW z3oVevOeM57e;DewCc$3DaUo;@K=$x(n}e?{pzvlvQ4vs#%-i`uzcRh~kv=vhzooeM ze^*yO9fnh*%T&;1p#6Hho&w^q(Z-BsIY35PKn|s??NfiM>lF;$>F5~Yic+iLsW{F% z4|`_INS^l4s;?f0hQnpiXjJDbdbSdj;VJzIO_CFxlWDfg3$slhB;_#^A%cfx1bo4z z$VbVbH}iv*KZ14SXV#Iv;9wM_R4ebYe{Oh!qs1JBtY}dMHVj|DP?XX- zMr+=#rzFe-|6I zb4#){WAWtJgXqYf#J&PByXdY$^Wr@RSUUx2TXuF!mbX3cJ+i<9^Ti7ny#m|mRUR~4 zU^kiGgQW9hcHTPY75A@|Eap8Zc07n|yO*T)@^`=6J(my?^~50!eDT_zd<#XN16knrQ1z zCv-&iF_UJU1{uKeex%7D-DDt|jJ@$TWe~kIi0|VaEN;(Bx91guNEDase==?4N};X7 z!4!1<$Y3N^85-VD^7;0Le{*v$QilR*scM;y-&w;TBI}88*z(APOxi~DN0|>=l}*rd zE2N0Jf?$50eRq?w-kj=V6S}z5?wA|*F5XvilhW{fNAnZde;`geXRUuY>F{ND z4(z>@wg>go_Mm>o9#o5k6n1~P^Qv@IaNCG-$_THsvYB+RaLxJp2-)i<|8;1d<=00r z=(l^A`uU2f4z4(Dk=8)R_&f+0D&FuWN3pn5$Q5S^lS@Vo9uf=Sp@0#hsbk>_Zt$r0 z(0sn=+eE41|Ae}SN)Qew!qc&T@aEb!&;u6K|e6hnhk>m{L*)U zmBdfv|8XOH>R=G9&d_$k(r)^N*4VA9>bVf>xBC5#WA!uxe?uvkR0V_eQcushyL-~@ zOdD<6eWx6gy?i-imw=6wc3xGrWW{Qk*r|t@QZb|)u+aaETfnwK|EBN$+J^kdZvWC{ z`M`I@0|)XrL`KWg$<|^eTPA=JtIINU5(~c`?GHb*(Vg% zI)A%x;i9_`e_8<6GeoI-eb_YW)z#T};>|Ovl-h4L4suo*;@!bx*7I3VfKv6D&879F zPuGoF8LMu|2$Ek?rp!Oii)Sic0-iG(^hN$w`7Y82s)-8jApc#Q0TQEp{}H479cFni zOxfS}FuXj)YXJOE_Gq%2z*NYXyta4a_#tYGo@k=)f2Zy7pXPzE`?%MEY)lphSG=9X znqa4Q`GZyL+@j(KOintaNsOpO;VCX0P&3Id8j`ELB5Ytd6u=<~cnLbN3FzVasD{0*3d0lEp{ZY zdvyzHeG}@CCZfD)W#{*-R?*qg`!TtNwZrXWt zb?793Z8{3;YE`c)OZt*h)z`%B`FSA)KZ7N43HG~~(lKwNi0lt(N8HJKQp{WrI~0R@ z#}KkroTzQKNWxvrXI+ptDMUy+WG1o~7ojW1e_)O~6qscTWyc_~4!t#Z43gs-_dNb8 zf2N4YI)SZy&vam_&+nQG${mU}06@L-$B}~}RllDd$*soBXe1RH9Iv>L{HRp?64ugR z{^?)&m1vx|*zYP7eXh^}%e^b}K_nNi_-J5`PpP|9X<R1`n23Uw`)olu*7A zf5VZlSr}p$9Uc-s3P4O5^ut3%dzFO{3pteEyMWmV_`7K48wnb%l_D7g#cR8RmUyvs*H8zil;(5sREs0{=--=e;KRD zva0F0v9oghoV90!LB~g=tEd5erG8O$+w9Pdn1}zyZ6(*B(v{FFy0@R90T;*JGj(hC z?fb*}$@b>{?%~enN7$iHc0V4!|8Q8Z8Mt2`ef+TVey3iZpNC$o16aa-Yhk$pkGt>| zK0C%w>u*2qzWwm={U*rOqRHJ8f0!;+zx)+Gx4ZC78RPiCpIG(a1Q=#`@}Gb*VU6;Z zFZIivPsg7&502^-X@@_4{Iq_ux&P~~xwH9cw~j5*8vr_8?qT`yuLlR4A3wt*Q3ys+ zZ(Qzw*xvkv1EbOw>RVuntj6We?(z1=_eaS)i@y^i+1%g!cmR)|KE8kZe|Gm{y?j*L zfyd2l`ef(*@zMU~XBcU&A?jKM7?U>Wfun{!#HgR5q`3U!;O{Oa0wb*5qn6W`vU6GR z+j<>}v|-k(SDJ77KP^;Wu{cEAu#`3z}Z! zpDz0|mJQQo{|(DF(`Ekyf6G3k%labozb@Nz=lluA7OD2T5w;?>HWE5p8VGk_EL8<1>E_h*B-j<51dxiAB^k0zOjw@6LhBs3=H$|4En~epWduaf3$Vh>gSpfB3~@= z7(^i&kvd`h%mo(epF>+#r{Dg>-T|A=fcs01#rSUNq(}O73_X6-u_8RDmNe}?@e}<+ z&0t7KqIi($5i}K&u|YR(F$*m5$XpeQT^g_X&y>h9_X z`QoW|kvnFX5@qzGq<~8q`kr~%XdE$NgYp+|Nv_LW+%N;2;P)_3ZQP93)AvK4wYj;^ z80uL2y<(VJHE}#gz0NHYaajkwkPM zlTFKvG?AJn0Bdfp?`)VA?cU9W3u0r~>mFldm|p3#f1Gc!@B9R_K9Bcx!WErGnVO75 zeyGTiKrCuKj11dHoAb?~J3xcS(tAhe2Z9TZTs#5L`R8+bH<;x5)qjz?gOOqmCh{F+ z#{}nvXh$dTkksN zPI{W)tIyw>_W+u_?gwr;ecF4CHT8!x%3v&?sF#Yt#AlJatPkWg^@@s?#&z9k}Ac zD@{;Pzsw$(4_uu}7_An0#eHCxVIPF*0R!lLjb;ecXwH`7-3P(pd2m9lcfJ;OyzO*G}UG4)+nIR>_-+1yMA9KuHQg<L1Dqpl^7Pw;n zGHsgpeXPudR*OC5@=@Vx`Ajwv;lE1^=$=dFJjCS*ku(Zic#BMe?bLuI{oYn*e>gy* zr}6e+Ds+|KK2Kc)GPojE+4q7<&3p^2y#FTw`*!g4PhbD#`B4b-hz-MU!fO~l5z?Ix zpS~MPyB~c6knq(E7(*Gz<9-L=8@8^|4yvcjv+MVsVAxG-P{2rL4nm>kTnBAPa>Kz_ z7uZt)P181CJf7sUf^kiA2Uq7Me?Q*u1esyw`7jG?=765b%t@pnXgKEq_66OJVLq5R z(CiPO`x#la7>kTKSN8iIQbZ_J!Kri;BA-rdK zlf=y=)0p)fuggMrYG`^o{h-G~8pqA;GTfs6EELiPk?6=uVwxrpP={mna!CItE%qA(t{G<}PybQXsj=3YP zF=D3K3~wI8+rtAZe`A>QIOcdM;tuaiB2f#m=MnZq4GDjqjK9=-jzKSlL0%)lp_ky0 zy~AZg8dIS^wYi4&HXSM-HMBdZ3+XAAP`sj!glX4N>zm|_K&`DkQ)?UNjzARW`c8{2 zrHJK7$S0z>m02|3_Tn@np@Bd>U2U4lLn2mxR(^Cl&aJBBf8QOtf5aFaY74Cwp|*tr z-}}hvhOA;4bKdA}E2uBzMATdtEsR}LS4Y;MR4%)14SEq`O?65B{JKXARMW{qMV6z( zu7$@)iIt%dED|g_KcHH!B(Hd}CndJYPl&jYiiRIIo;&Bo+e>QAq;{GSCVoa`xu;8O zY&4m6?iC6cXr$Hoo zCx%f70AndngyGv18Zi(oKyM)wjEOxBjBil@2pE7P76O3$@@c()tD+>CiZGlq6TqUM z2E+c)jS}sGQ>;~ZCSsBepcp~YcJW*wXX!q^1xnW5e+)4Bt~DLb|6tmI!+zx7{bne#gj-d(QkU%3fu=Meo!jK#u*pV zbs?G0e{jK@<$r@LTV%mNp>%4^m}?}4w_#d3WuKCtN0<>y`77Wsm$7j+eU&I+q0bjD zB$;0v2qh5MY82qcHMz;{_a9=jsT8*4Q2M+V`S1pFKE*t?H{bU4%fGvntzQ2~wyA(x$FdgQuPdxKpNcp2K&cj|Fr2JDG6zSNl4?|;kRaB;F`Go;Ff?jkXg&^>q<7==m@F_YuVe_7I&R& zanrdRF%L7Zdi#nca3HtsH;3xn+>4ghGGP*~n2)|9UVixa7T>y>OK;QdXX<|1-N(AN ze`Xi8w0p4mp5A+!SM+{!=OeytCz*@o-U!{dA-QRfF@FB|tad(Qo$5`jw}kZ;X4PA7 zn`m$b)t0AL(`ntaV11PJ0uh1(#laBB%(f5>2g%y0!~?K(oDh~NDr;cQtm_DOUUq*@ zd3u#H1?xqpJgRPtT5cH)r2R&m-t3+Xe*jvIhO1llfOL{=9Zex^*ou5O5=((TI>GGN z0U|%A^+*KhR*}oRD-~M9sP9?Bu+g}mu=o`i8bbG&FMSJRaGkiNmd13%dSDhhxWC|W zVP?3t!%;eDoXzxof1cyJ{#+k?{Aeoq%mZQ6Z3csg%0Zp6jEqf8>YjF(ht-ONf795* z?57rM9@pjEoZTP@iX*8^b;y_6&qFaiK7sVvXhy#e4AHj%Do#2$EF-~s))F%TZ7D-XXGv1M2%2WAsl zPUE0o+-wmP7&wK0zGHgRXV6Qgf8tD6yH;cO11wDYQ;qVXcCk&~p_^PM)sj%B`738B?g*3L+Yb-HY_-xj zR`nM{1k=b)Q%Nt0eTjHE+r%wu-=y;%-a`GWNBR~1nbK!haxl>uJt^_8e{#9wr0yzI zj8clZicrO`_+91H8ld|bp3|NZzWGPa>aIMil^L@tg;-$_9zHxYpQ0@M8&2si)Zcmj zlyt*3s80{hE*YC<|$hTI?XvM6cX zauyu;mS>{$zZnkvHtG{7_!FHCBrpb%%@Sx)@N%=IH3StqehKw6cB3(V)EVX( z3z55ujev^$e;(;m3JrHo`#9eP`?}L{TKS6x81Rkd#g~_@I|thz?0SxRPAsDtha2k$?3;U$doGa}CVEqwa@}+)cnFhwo@AtSn7%spq?WTv z+xvi1(=TobgF!UXk-ZuXDX>)?_)iOX&7poP^JjPxe|xcJFsHyKrCiIq1UA3HBT%;1 zd&Ck-Z$HNls-0Q8R^i&sy2lE`BFhXL#p@}zn(;=;nmpBcmI{lVXRlb%N5_3+t&b&h z6pz&M0VVKF?0t4k=9b4t!2R<0lP<&BnGU9=C%zGw(MxQx76O;*LJ7yRga~_~hY1oN0ZJmOemYAC>i}r&w$8@Fa z0VDmeSAsb2h5j@yO6nkS-{a;+Ka+A4k{b7EVvtX75Ny^EU8SoSMhU|3ix~>H|4*mI3f=G3HZC) z@3A7BBMeqSvaG5jvEM$24ctD$H=Kdn@3b>{a5y`NjK|bUvL)^8OSM_|$z%EI)s}K& ze|^(^@|D38fHmS+0?FVQ<+89jWZ0L!Sr+7mV*M32M0UwZ)M~Yy00b+%(jd`re$;}d zFzz6RQ{w@W81?PO-n|Frt{^)KGSM*3D(CA5b90BK15Mvek)#Qdt{fQ1a?R&%%^#h> z8i42m1fU*cBYxWn)$=6APd_N#`!?`>e}1dt=WkW4+@8?ldxC3{`Wi(?-8S7uxyp?m zORzJPt9V^vHS)4nVYc=-ApnV3xhTcg-8wYYxBGBl(BpFko&|`NduR4JZbp+CncUMc zp0NaPxbVw#u1|T*$6_$!XX08b$-v1|!7IB3so+}~r*JE^`&jYrgNT7WW-`eoe}mWM zjg2*WRdO3=Wb)BICo`lZ#VgE(-GJQ+4nMvWPY-vgq!r0jQ$E3z#Xu!H&AGXf=+ldH z<0k23?My#0Pp1U5JDk_<5U)L${Oy$CZGJlCBg$zC^O^`|RT&251x?Le`zOi1ek-;4 ziB+;Kr2Jlsm6T1=vlTN_061$)f2U^^55%h8PM@-WpyNOeU$U(pf-&8UQ-(7oio>#i zEz4$K?@kfcQ-V36)TXHH)9GP6ElY?e#hV|UttZCBQwe`CJu^G8l> z-)Ih)q3A4165VMQF;l3CltqGy{_;=%`ps@fMRvebJ@H~X;~DP@XpIAw+2mmZRap>- z#|iQIoTa*$O(;%KC@#tB@B_}Hs8Yg!lTJv-%TOfQ{DGRr9Zcc^yC;TDjvQq(F_aP` zLkY@)BSLOEdd!Rq8Vu_ze`)-mTA^|?9M}$Q%v}qh)|DHl1G^WTv@yajy~DJ&5v)Y^ z8ood+nl*GW#6zbePn|H|Dw@35v@1`9-#j-{xW2mO_+8}$$R0xwah+f2DEpXyS?M|+ z#+Des7&;+M-AB|sVj9A~{MUb`B;j|C--fZ;00)dca4}do!$nHAe|=)E_VJWl?PJPGoXzOvo=u=2MA^dcQB!^>+v^I4VQ8aS(TneMP(=Tb# zc|SBMx6Uzi0>@`Ge-=QWkkW6RBuz`>=i?8D28Dnsg&Lm6=`hZ12jMYM;jQ?lyNRHNl)al zNP}GPbsf}!#Me2!eiu`R`dtIBdoaVQ6Tud0^at&E00{k58Z08cc@_41quN{tegc@2 zxlX?aKm5tuUBBNotE+RCP3L^(-5i?LOa0y>MNwG4S2yWwS>6W*Gz6TfxRCHHs2SL9 z39ZjOgSS9Bf4IN|S#i*}Y>*GVJ{)~6n78aK^TAsaM2MCjjT;S2;&ao(e@A`?FBX_` zlV|-HVdEI48t<+2+gWX1nZv;FtPpeK0lul320SDRQ`RQN^BkL3jk7B_tj(}Vte*w5 zD?B_<4nQ-wi2b<-%6>W zgFbp$LdE22W_51L1*MP6=@|ry=t!qKvO!9<qw*5A!n( zieL9>f2Y>gvyPT+=qg(l;AysHQhw|<<;M9qQ$Dv%57*}#Bf z1-QMxo6O(e!hhq55#Yw*!gv4nKa~$q^O$NLSb>7}%>%zV1da%sNH<8D#;pawh6!r> zfJlsHMi}4ArexjTNQ3W-OLhjkT5XlCivOEG?Fe)g=WAmK7*iX&KcOqiQVR zpQS~m(!n=abp;-wCVh%Emo2EE;D4B8pjxgP%SxqdEG?85jMc@0W)`588h%ed7A#|l ze}7vkvnu#X!B=-(D8W|BYsT_odD*C}DdN{^x?6?1?ciGl-&KMNwA|s>+J7YC+v)h5isM_!Iy0jK$3*14p{TUsM;M{#x|}{#d*c2Y(5Q z%ga!G4dI7B`~z&iTZUTO6=lI#tHGZde+&zX0j4zz{=uKT?y|AErU3dY%Sz2y0Em@E zV{x%uGgh$CmFj*K&=0fsu2vbr@LLtdsI3~c8lury@@f)36=MkyI4VQ;9T@o<{by8Q zrYpN5b?~!l%UD@~AAsz&1ps)#e^|tx zJ4S8MsMHJqtR^*E1^Cz20Q$9s{Th4&qZvVU1bB6!41|QUSLUg&C>=?$%(sf0o{@Ao;;WuL6n@k<|t0uZn%H-F26Y#TA^@r51d) z45&u3SXcpE1Im^V=Zk>!1%>9MvI;-T2w4@n1a#MG`%tT@tU~8C=p2WPNP{7+bPygO z`_&e#aDc~HfvJNfRmC>o{qk=H^atx4<{Bruy4HcYgLdG|)drpfD*}1~e`uDfC(DSu z>Iwd~R*l7Fh5j(AS;6VWKkuN{sQRv`k`h-s0Yf4lx`pMugxoU=2Y_*cQ+;;;T+pl5M%CK8 z<-0DlG^$p-YUO0*?f@7cjbjDM0pL*$NrTF(ReS-6l-}SIzFM04f2xK*;2pp&!&Bk# z#AvA?S^z6BwkoWNDlSE1=^f4rHd@ZL05#GrKmlu^j7^lOjm5Q-TJ2qRjpmjhT2r84 zg`Ndw3m!-#)ce>UMh@0gFM6{N^=m+W@79c^?Nww` ztN8!y#~Myx6{Z}1e{A9sti}8aN|Y5OFN|7#%=U2PXREMGSC{Ayw2ti~8-cm3@^!ni z4*)K~uClP)VIbTcz&7tK0#z=Ls#ULAJy}BzTdAF_zN@Z|stfOyaE$C63{+e}Ff!oK zuXi;dYv7_*>Rp*Xy{p_E;LqwdG43kcqgU9+fO!vi_EHPje@{K8CpfL}?;3)= zv|Re=l0gzzE{yv;#A3F!%B4y38&)Tk=BrpmbMDj+VcuEm8b$c|T6 zS}5$*P?SQs1SGS?CH89tWQOg96~spc7Egt6%J9B;T&?hO{J{_pOAKigAYGvb6l}oC z_Nic>e;EK_Q)Jy#51=jBZsE`B<}z&Z3jN_LY0ap>7(j+15ekHaV4p?@4tT z+XbEte*jne3sqWbaI640768`$1)A^WC5x?PCS+9cbV96Z8H8Z=hrg*{!@z{9IM-5j zB+~sV9UiK%j{vdbzUP7DQUiPuLI@2DcpO<+M1c(15g@Qei@J(ZBgxNY9Mr-pEDac# ze}!`7T1~9MW$0?fE3agWQ36yDN&zWte}Dm!4a>B+pv5)(uZ99(4fsG6MzR1q8+1gC z7(jM4Bw0Y?8c4XXR8g=5HVnjzix}T7;5h&}hX<#WsPPhRWt08=jk|-7<^IdHTUQe6M zDxT|byRBM4Sc|LD76e#MF{TA%K*++83F1)_XA*b4+CoQWgtbIS5WH|1MKTK(cFa-% z2ec*@QeDuQX#o#@8DQ{iRolk4aadK_w1LB~R24q@E{+c7zsev$rno}$w!)a=e~JZ% zh}Bh2-u&dTwy3~{v?$J{H9UgAqS^#9T~O!`2Mm@8cG9W9sK#8sZ(40(iKitI0eJ1+sAg7S5HTW z>N1KrHF}BDybo*^B*mq8Lq7I9|34+N(Z@0h!^!`L#T0dtT5@uvk8qTYgEJCPwxY5W8a z=>9IfPTsAHaoYY!q1#Q93=6qwQ#tT^0C5fpFYm1h{gDt6rVtT64-tP~U9BxIEOH#Q z2nVzA@V4f$V?y;04Yj#_x9^ug|W?PV24!tl}hycXmCn?JTKm#%~XUI_!d(qnJLe|}(e);G)_f86+q zF0{kgpx1tEn?I&keB}zh$)BP3=LwEw^ZvTHfP#^=dZ`>aG%P`UJayinNV{+t|e-UdpxANv#-SZ zqJ{^~#HcdrI{h#le;Nj6NmqjK+A!B*6F*{N^tkkdzy9*YvnpbzC|CbPSJ$7uz*`;l z7G7L`QB7T>&g&|64OZBvZiT}1wWGwvzdAE*-w!HZ>^6I( zI9_i^VJhiR+bcCIhSopDEZ>}e5H8PB91Dl%OUc9TnCmaRXSU=COIxo=t;>W^`}|u@ z`k^*!e08<`x;~9&e6+5jdMC<8>yqyzbdUwk*zY)9LL(=@akJAYl?({|r;h9?wu??@Z` zXfftVnxCQON)WfNP()ogOx`<*m`eF-$g}OlwxT9>IvuZ_7*dI_PTdh9)GTiH?rx#$A8wbZk>d=)nL@N(8U(^alxabi5Ulk^-r_z zHY$EFcKSY63BvEfA_WdU7B%`2$P6i&uF%IF(2dF-UQ) zSjrK97JuX6j$uu-{JxuJ+%A`OpMGu}4&!#u8DVm8$Hq)3#8X=4&3sBcVk~LMkB{()!xEX7x?knqWDw{DTF?Q1aL4*3C())ZgtgoSD^^S3P#4U z!+(~`L8rG$ zI;~qu1%*9{llh)wK5v7_`?b z&{g1ySfQ}6Y$qP&V-}D1xa4@ZKGY{(gM_76;jbtt#q#qrTO`NK5e2q#qQI6c0=)Z% zvmZw2HO%Uw(;pwf;~y7U`rU3iE3ua?xY#3^U~4&<0JC}0W+D%3&ZccX_*92UgMSI5 zB-9U$$jc7+4=A8oA5b8L1O2&a%Qv5+L)NNQE6<*vTh9xJDLlI9Fnx!IX*)}EOAF<; z)in#N2@cV@Q=5*Z^{$@2`D$eg#v8`mNQY&0^&S5N8<_NlDGgoJ*pkL>5UFDqMP+06 z&a}54JmBvz^9atG&kye!u3&@p4}assI#~w|wTGRohaF`|VUp8uKHB7ukj-8yve`@P z>C2pK_Gjzq3yj+)PAbGRWjQf%EcT>9c?D|*=+G(UQKxmXhpSTVLFD0*_|RZYHL$Jk zFpTcpVRW-$baTTvUTPSDtYLl#f5;i8#4|cK`ure`F7B}x>gc|-UZUKa(SMT-@tDSC ztPZhtv&$e$@ffz(YSpSV=s28XHk{)nhO;dnMjuvJ$E&Mbm5!fmqO~SA&eTa(=mCNv z_$n$gXD^;vFP@!edjqS5T4yUOAFP#?aXAGzWgpDjZ7w|V`rydKwgNs-Han+04JaZ z;?GIfI0TmLEZxfyktXosB{((UoGRmL9P-y%o(DMv&{ot`( z{K|f#G4<||vaQ29nS-oTY*)l-USD6!xIT#U18Z%#-f$wnUR%Yq2Y-scrKoQr1jEyb z1c57fQBNo0R23Gs>WECC0#nQ|`%fq-UvS4|HUtU-F>iAhL^b;@3r9%b6o!hCbWMgkRQLm-UpB zQ6>fmav)N0oiL&Ve1BKBBUMR^8v2og$`mF7p}a^bMK_}%)|_xKn~JE>(t_8hR!TSc zv-u{n=PegAj)vhV?oW@rWH$)B;jf?e-`lqr7sTo|17ka>h~Qmo)0AUf3V7rIH1Kf+{v{t;NjL+_Qd@r9(nv}^dPUSk*!Z!SKj-9*LEUXC-+>D6m)L_Ev~KaKi8i3DI#sZ27h9d z`*Z!iQhz9gAu0!YUE;+Y8f9KMS%_(=w&eQw`$lT)WSKJbY9lFHPTI)sLte)$%~349 zeOO`sv86z3i+R3<4@9HjDk(wgObxrIU;jpqH%&mBE>jgmG_xGXJQ{Qcf`c&%-;*oFvp-kX8eVD2Q|D3qV*&)#D5bcT&D*BLQ;c(bN~;#4weJW+Ej{g zEVXno<+%j^_DHT|`eIhZ;7FgxGOp0#)j>PK;%I-;&*zT{RcdVat}*3XMoX8kb7*w^ zFujuR-vfH*5QtBSt068xlPb1i;5?pIxU#lJ>D(zE>1m@u`PS9@&`TMU6e-!dy>iOa z)_+fV1NLpi4yqkIAY#Gw!pOlyQoB+D@bth{E28O9w!n3((=Vlv-NT$eG$PrFa3R$k zos=B252BU@;HRV#>Oi2U^;{MI%rrJQylBjzQGImIz&VoGjujyIpWT+gaD}J03`Fl< zkg^91Qo_!J{ITvTM`#Z{uPa@%WOdHthJVy9J8^D20?c|edPIC5#sb=FL>E~65FGIo zK&0-&duW|QX9fV|Gf)wSf&M&wwuml-4d#H?*%xS&qi7uca}U9)Vx6QB|=;;>Bn1?;{0?+h^ESRIpY60A{>$84(2=gfW%cbnd6%;(wx_ zp8yL%4b;KBP@Sn%eb&O$gW%^q#0BwlzE!#8OaW>v=9$kRWmi{Med*VH?6GoGVge#V zxjDWW(KH7FnD{7cIenKPK?pWDAR`w3i<;OcAf5)0S)UYsE{oGhF7^8Hk5R!ZGVDS&X$JVv8{(Ze9D$2)dZ|HPjwSv~ph|td9>-P>k z0}q!+MjjZ1Fu?I2iD_L-+vv1WkU1oT?*7D=*5->iv z^jmM3L+g{~>x?kzRdykJ^_*9QR0NG1C3?FN z6KoE$bSH{H{3aLDdgOM1)35(~1^#%l?pG2oPC%q!csIIkVhBUpVpD1nfkI=%Ts>!? z_BWB)ph)Byt$FQesDbF<1#Zk>oo{)B?@m>zre738++Cq3gX# zj7};M2qcR1N3>1VjPHH#{mUmBMjL=-$^i}$1u%Xq{Jsk9iM^e zK*w>6e+_{yLw|r#Wt9()hQ<%%EIb{NX_YxWK;BZvNLz#bpTLo)Q>8g`fAm{P*|0DST{sDWq{U-I z(L^!LOw4Dd%uk7={N1K0D_ZJf(Nd|Ns!y9VW?QOVf88$IucQb#S$+vem8U!bcpGk& zE^cWK7A*7GKX}z-+~pJQC>5~k8ipaf{#hSkZPOL@3*>v4lYP(iokqpb4Q@5EwRVWn zktS6;g?}f!IBWWI$G9bj45(TNBHL;W5g6IWA4C+Ycj?5$8VbOQd5ScgDKZIx_R9ah4*{!Y0Z!4O7i4wG^=y$FNb(?SHd#8PZq%j`EJ=KINF{Gc1y_65ZW( z7F)?zB5ukkF?@ajC7c%cnmY`mC%3(Zt|^z+)?8;e0y$-2vxzvy&L;}{^o9)v(QdwKH6}*Ov|R%R zEq~UoouRy|aMQ5;G#J5=im04;V;l}~1G4f5CAP0*7-G1BSE0fKvzsoD=DsX{kc=jeT z(xMt^^355%TE=Vgbx}ubi}Y`huWKf7r2x86@RUI zR*j52TpFH$u);NAdP=tfeGHCW1aQTAMjEebp;0X@P=7s4k$|U|ppa2QI{+<8i)sn7 zpq~gNxf@-ct^K*h3{=ydW2G4qZOe&#Smi7)!UX}8PW3TxP4X69_-J5>%TE%r^|`7A zPa5)1;-f*KegGeDE;tFeTW{jWSbu~f;g2KMZ$&%yabQ@a5P=<2eeIz`u*VD`m+Eq) z2|~0;R$%e0AlSc5g#_*oORG~!vU~4Ck8T;R=r^JJ6TmGjJ?v^v?djXdqH(odJfYtL z*?u=;y(vADy31@jF#YH=s9gKpB&e@VzL&Cn?FrA(>Lmjs}eT&({= zS1+!VBG$?c;g^-2vBeJ*Y=5}vH`rvhy}~!78^v#k-s$8NM@Go%4+g^UUP?t~&`dwi zb^>ANUc_*^l@l-9R5OF6G~++%TEG00vekFae*8jp7xOpM`io>^68!}otZ!*(=h6A_)dW6(hqRJ`mcZG?_!e%c{O zL?RO=PsBnmAccIFY+ZkVLRvg*+czO5&h@e849E~h#@|*&8|9=5L2zFgNJv=Ou>6zMwihA4gqvQgGHfDh0$L>5h`o*~Mky62_ z?10NBM{X+_{aFq_9pP%KzEr+lU>^v`162L_U5xW%DFBA~;|uSZtjzN=@o7724#;%j z?$HNc<;|?b&>zpJQfy92<6Dqk=sb<3^E4A-aKL22Mby&FD}TP&Rb;LuB1>GtKsimy zErjPTN#Bf1cw_py%pKY5`9#mSz}rgFK4Z?p^3AiWyybjSXk5<5(wB35j5U(aB8_tl zMClsalkCNO7HOQ{e)!O)^|nk!I0nJ5V2}7%FETWOhQQ>-%m(q6=W1{Zh{qu&jA>eL zS-0RnSVGeJEPrmciZ@AW&EsRYJ&*|7-p}=_2_MoonW@P4sCb6tI0OZN*f40Ffv8w1 zLaxi&{S3{1&b12MoVgEM9*MohmJ%;5rNw$1roHWz^mdZojY{r*5I6Tr#)6r299a^6 zbCryoz8{lOj0cS&N4rg8yOZI6baI>8#$9L8I>nG)=6`myKU-Jn8E=m*zEbQ1hEtDa z&GI7_dgkhCuMv7IO@zyqg~ulNSk##C$10V|$HuKE4wk~>AK>Zz#s`KcPZb_Px))X~ z_#{kE=oQO6hF)sR;{6P=-jW!6+ysrcw*+?@4(}rF^HH@{d9_k%%wT4gOJ7@2gaAFFD?_ z8uG{jYYItJ3zw60ppvv#PSWN>&D<$@oA(-6lv1_j3KFRz1mjS49vm+&Rh!dK4!G>U z>wl8;pQ=ti=}D>ItIWi_WSMO)fR+_UElm!d$iNO$v{W-mtXa>1#(vsJ6(1v$Q_*qy zYGt~*nmzb)^Oec#m!kZ1FboHN>|yCa3FlzPs%>Bpi&C{)$Y)sj1f4Tp@E+Y|Mn9?0 zFzsO7bl5E<)lLP?@b}K@>W*T;Wi?f;$bZ-x$Zy-cPR|gX3d0GX%hplk7*vz278~?Zx06p7B(s5-L&l0^zP0O zbe7OWl&~rp7*L$AL(tKaik1;fr*AS0lN;9?Xz(5vgc7P2hXVc)rGG9s znb4b%vER~SX4HqKTnEe0A;GY24eo`QaxcWha;*3~Uk`W6mQlpl-IQGBDy834Nc_SlFEJG z-ASbY-G=@iJsmw<>BL4SVlUCs7JHCx`QjECV13yP=hsrf;%v-;Z{g?>%f*~<)VtCs5?eIO~eM(*3EdvtF z2enIOzt#A5)l*h_=x_wEBY$83I}on@-60q zi!nCCDL0QSwO=AB*1oZ9ko^_;FNFpPnoBozk?#0`CaadT3Y`(CtH9GhnIPUh zGG-61d8m|ioydM(Fni@#YE>FeQLc=ADg7XHPf&x>Z0hbXg3(1O~9>_ z@564Gw{oxt`gBJTg%2sq`Nb^tc;Im|UDo6AfB(n-1YIOCE`O!rqGTr)frCZyY~0Eb z)&NZVGOi5507XY!j#Ht;;_B*qW7wh_7F%T>;4ZB&IG*W^zxPUedjCpWVs%ZW1?ydd@=l2P?DM;a!R)lAY3+8|=$HGaMTS!>%n zuqj|UBd`J@JuC4*n;`IH-7N_VTGppVE}gtLt<*iL@I>?(C;l{%+N9Zy`P&%2sP z{VzD0_zDEc8;@ZsN`Lb$#HP;|bFo z_joHOi!{fR4!?@uz7UuxSoWXoQXg5rWb+_c?QKJlk5?ZsR+;TLkJFABmF_|4#ayq z(tmpcdM9=MiAT1xN78$Yg47+cx_W8IzwvH@fqDl1E5|9AMPn6gtDHS5+h3Ap>Si?j z`nUEKB0u$A5Epe}Kbd;CHK!$R$7#XsIF;Rw0e3rE15aWady0R2y3k|1yTD;w>K~t? ze|*aP<9pxHKfVji?&ey(-#`8~$Da-txPSYt(}()MgFeQs8~6FU(>u8v+y_2Qec-$0 zKJe*$ANZlUy4q?Srmk&7FP`t)J|*AwY3kd?H%?Ypj~lll?&!*!+Q${?7Y{;`h( zIZy07wto(B(Hs_c&tZP^97=oV?UEk*2YA|>2)-yAMRdu_HOKQ$Y@N;-;iD;-4NDMy zHa6~o+=wGTkdSQhU?6j|DUkS9W>r+}_7e%zcE{V z+4h+##59-OK6Ari9_iY?H!Ma487{;RoM8As8R-X)c6uMA9hbaEUfzB5S#=+wV8t$d zKxJXB6X&z)#QAu4x0!wU<9wIR@m!ZpYWUVmtrF#y2r>u_Je3%UlFh|l`F}Z`OIxj# zx2k{W1s)fCW2rgCzVW22K8u7I6qf*GWAU+=nnOGXG;Fo6F!K!-s^QdMJC*Km6fwMj zWQ5_07XnN(waxoQ|3@J!?37{t#iV(qu4X55RA@|eM^^@6)o}mF*S`(dm`h@heU=(X z)4{x0bD@!BguW1lF%;fUT7+abplG8ihS06{kyjI9jUtJZ;Q*F>;d6DQz2)EC=bKotzTi4G8L)Z*~ z?K^>4xeWclKrmnNrAz2$3|cxU^OY7bdPD@VruB~-hHqV3ZPRMj+g#T-D>2q5h>MS6xiC;xB*4#yq(+w_{K3&z6odjFktp#T?vhyy zu@EpX*YjJjkl>>H(+XG=hkWfJS&Rr#*aA)DYH9dur1|0kkBbMsGAG;WqJy@47slAm zZ6d1|0!y%KFMscW`DM+sT_n4<8{<@L%IkjP`@nbeq@bU6VRPq7cIEPinNvY8?G4Ef z!QCAk&gn0KokF|`qYD(3^tT!%f5VEjcerzOADZ>X!%$?>%g&}uqRnA9RpbrvIJV1*kkzVHD{I4CdX|eRyv#`)M{7?NH?agLtQV4W)z!{edT~ak0-<9` z6j;^{-~0K+!fxsX?AM1Fh`#;-$9}?X#n759+hPcAeLh7O7knkdu9Gp@Uud;zxt*s7 zqaOCBRDZeEV(`TvZq=-s_S|}|)vP~Lkc=f4=Gm?vM`u$Ea67jS>iOk5B{#+1V1F;i9Y2ia_Z5*L@Q+e(c5%olbw=Q_p@pmo~Ug%7BWvZDjmP1%*l3UBzub0NDmOT z|Um8!BmzeyLD=6_LGB`pAfLYxOL z9%=nB?tJ~D2WwwOiJ<^T^tbh;Ra8+;E9dj50DtnAA*)#f{TJO!`j-7(+h@9S%I#lXZ=_j32jX~YWFBwwHd-$+<(zF zo~{2|wji!zj6dSYLa4#$hoep~8Vt~3`t=VC(+Y}fH=w3;xn6`*B#ogtA)MH?1=g;H1K;RwIaatOap1xCCN;&{yVtB%tJyR7&1kA9+2cq`h3 z&;<&56EFda?4<}yP2L*p5zWAnW`84pXHA;Y;7YhVZ5D_*vBm-)zldg1zJKi}z<_S7 zNhR*2Uf6{ei58suxAzrF;8Pe!KNujm0e_?gF=V(CB$KmA zfh3-R1a&~JQJz@uAjq**HSH>@ZZiuWqK-BivM1wU3T$>skvn4lMdvbe;3$929KY#o>L(eCN%@t0Z zm!f&&*C+MYxK+$~R@-$=&!DnyMj%uI3CgQ)`pLq#XI~Zr`(*PR^D1nza<6amYqDsy z$Kr-J)1{M1Sjfo=^3@&-yp^7Rq?pCpCjsk*!{8&!EQwxOw6jsjH)}_% z*9$gV_Eh1c{$IbNMMj6knoPjjFod&_TIHAwb6pD8+Rw6lv`(oN}-c zuCkIEXbr{srClZ^@E@j%w{~7ga6T>bep=BmgoT`XV8xQKs3=S!N;w~uEf5&XJg2>S ztjg%!dQXzk3vt_octyLcg`B=psesC7mc(-RBsqzoex?#cPk);^o{6$76s%RpC_{Gy zlAy6;?ZbmRKN)FE9-A`r?hf9pihw-d$c71ti7mM^bg5@ickIaG2eaL>Qqq7|p|9Sh zf1B`dwc-)U;tQ%?*aEA|6FgqG7l=zDDD|q31RKv ztaX02b6(%UMSsTQWg7Ei4()yGV0M2Es|W1Kg7{e)&hzzeI5r^d77T=^fpyC`JVirz zxEpbpFUx~P%DKGuD;#Q32lv;*S?9&u5kNn8TzN6AfV=zn`1{hS@xuv*i@I_qak7XB$r z2N&SR_lR^79o~Tsrz|z=^FH=@#}aGZ+As9mYMGBWyykU~A27;VRoTK8jFcZU^xPv9 za|CcNyx}9vuc-TkIXHpGyqH+VWuT?(R!Lh8yb(bH$ooWNhbD{b{)C1cN@i6^S=*x{ z^@n?4r+-E6xQulwLS@K~^EfjY8#F(`prucYipMmOkFMr9-zxhwgsv&^@Rd5^=oK zd)6krvH9~xgAO>0sIo85HqQwU)82c)`RiEn)E8ali@oK(m{%Ad8Rf|+=qeOM zWq%Yb##&x}_6qtb&f|nFZrIQzr{tFu^8Lx}-cL2qWvQ=wa8ypxbkbbE=a$N(udmJX zZ{0Ikf~WfdD}?>>8CIZYf7dW3Pl=D+^eFTpz&;98C=3Bghk7$*LvQPw%80)j8^`t6 z$81y*&-w_%@)7#G*Eo9%I}!O2G9o*{oPVP1U~w-Qd-+Qd)a z76@O;$xoBE*5~Qbx>^rCzev)Y>o4kgY5?t0<6G6v0PShh?Z0^-z+i$#qG!&_RM3k_3(Usov16ITQnZqQxvYqk zb~)vT^8?~Y<@}})CrNA7_QMviqvY!!#X=5?!%q&JAn+{hw*bAtmIkX3xSP|1KhfPy zb<^-pNg~_wOFdUNLT_^KE9#2x)A7!hU0GYH*YKOpIe+A$I{~Gw_=tjt5n`N~Vo*l5ic2z?MsXa33Op4nmc#5D z(n3Yl6Rc2#g{?uQ!gYh74i)6AtPD}$4+e>aIh}o97&G1kafB&PX=y-u5pJ}AR0f~`b&EBA&Oemy_wW0;G)y3|>66)KxXZj#Sa{zyOHqZQ zvPxNQRAjm61F@#(R)6!MVF+Vu`iS_0$AlkD)$oGLnKf=Snw8juo3}^!+g`O5za9)Lj-K_(-^i#Os%sNvCKgoi1avIZOa_W5kwx9%ZtSSND8D{}MML}eGV{g{8T z=k!~pFRM4yxH9j)c%gYw7Fh^UgJmjY5f{0^;Lm|HG;e<111l7jYOz2aNb7U?qeFsSb)^hRm`_=VJ$K2|l&&5*Pb3E(7mf4YGsRv*VGK=4cX_V200 zdlsM96CcIed^LMGJVqX_Mvyqz^?h#;l7F;|;2eXRb#^|#uzhoA@Cx<}nX`lSM^;yv z%(~S<71n^WhMf~|$Utw0+z3H|bI|tu99xt{hhdmd+SLeTUpN8~MbBA-FCyQIr8C6G za8%Kk^ekSAjqmtqINcA?T*cY9Ma@aniWUzC)@>&P)OHNfH&eXCe~TAB)hq&@Zhz-b zaIZ^I_SxL=_Hsj{p2S|)P+v+NZ-t4yC4dliLSPgY84bDvs(ViwPLDmk1v*2^XB8i(x>j#uS(*vZo)5{?m^xB>(02Ovnoh=88d z9)|t?r_i`fK#ZyK8K1kFTuS8i1Apup4kexM7bvAML@F56*uXaA2eBNHRcPu-&EU(c za0^RZb+ZyzT=&xCQW$Lg?$(U4`Ko(&w{m%Rhe+3#FlYwjA|Ro@+IA7J=Dh=x)BA1M z7dv5$Q9qixfCjhMjQl*Eun^6 zxx{2#^&z%OteziW&KzIayFg1eKejSi*A58H=*1z~+pQ?SnT-erEan6%zh_0A=r7T7 zy)NUN9V@?)xa@e$$e&LL*?+CP;W4|0<0${O!o=Aep^nqX8usZAj*o?`NK3jJ$e{>b z4x3;r97G{-poCCey!tH@M;XBFE5grhBk=IHH-w|arQQ8@7!DX5c#5GfUh`+OwrFwN zcee;U7ONZ4>JIx}#bY?)^!_j8x3US_h(NS4*hhOyO|bytLysrwLVp{Tv}K^8ePzyu zbkj(2{F9!~3M6}#rS*U;)aqA{3XtfvYIWQzf}?TJw57_#&Q~3Fl4~cXXlhstzSlvy zebiB`;!7$Iyiw6+!A4IuVDzZbj zGy&a+8Wepb8ir9^5f9B~J>bWj7yhMFPfrh6);oO<|JPqUS4phCjEmsV$)N+ys`1`cx~;s>8$W6Fs$(ZXBX&7iUD-RRM9Y9FS@FWA7WybVD(Pb6;r}!vtJg^|EngqpLPp8EY+# zbE14obiTf)%qEK{x&kG7nbQ`#j`8yS?e%V;Y`v*>+vktZ+Ql5U*e$*QP)h>@6aWAK z2mk|DBV9YMGfuAy000*v000&M003cgb7gdMFLz~PEkjaTQ#55aMweln0~de2Qp0#I zu``po%U#B~+|AT=Q;>utBox2`pk-C&fA8XjZ;B*4*L<-^;%%|}?C!IG*{Tv!Z+{Pn z3f|(({M_TKW-i4lj87Ra=>4-FUoPI=|NY&Y_@fGE^P1~u9jmHj zItoui6wg_ysf={`Tu;(8j6;8fWqNZvlT_D|2Q;1wc}4Q2>9N(R=@N(2sfy!>&TM5^&A~gchJ1RF(#4tzca|V*?8-9zLyd+8mi-6v1$_r4O(}S0GodXwtFJFB4 z?dtm7>tB9O&$}-_|M2E24KJC>L-*~&S~5*vt_qdjgrq1!99Ff4zXdI+rs1vYR){q( z1u0&!lBPs$cn*emzP%$dkXZZuvh+Tpn8s_Gy`nl_UfpX+5auaa6Q+Z?`4-W*mL+Cr z2Ga*>#^%w4#+4KcNtHs%_vLYaR*Eb_Gg>Mdm`?m6&P1_+9-OX&7tm_kJSy^(+va#d z^))30sKl)x(lakz0kFVJ=(n`(%5;rFXal|KXL?gnu+b*1h*b17*U^EF4k;mecnHrz ze13*zfUsyb^Z48rg41Ms%TAQNn5jxu=pG%FmmDul&WG@uD}05 zO0tQB(@+T-GFx!H=7E?81v2V@hxzlc4j&$(I#!^AIW7?{Ptv&;70r5ML^pMu)$=)( zw|HwtC$N({!HVFlL5;(I`nDnY?u!c9WM(B_LzrvRwgEmEFPzb8{pTV>0$^_fsbvIKN zag52{Ld<1~Ms{o9$j z4k%0`vqrneRD*4QR9$LJqxKOswm+3pNZT7idTig2Z2;TkpJ0Kg6;_lGXNZJoTx5Z7 z1(gHVlqQ{r<8FI2)(|FXyXs7>nTtuHEPeyWfq)L3351-p#QvNo1)US20i4Aydj8Un*y#g*o5}%ZN4ntcC%SoSoFX(n z5jMz=uojKNZ1Z6bQd0@B+CRYd9psAan*OJzN;~AXyWa`;u{HKD^T>M0v-6A40N*x; ziG3El+=R0sL|ZV&dI|7g>GKhoI95HFM9N}_|6CE9D5IOv_8_mIp+Kdp6*4?)0>X1U@A5{q7QHa8%SBS|y#}vYjDa6SJ zrn-?$L&B4+YZMzEee?W3bCXhOP~y>pd!jF(C#k*j#QHrH|w;JYN|#J85hzwt0cxLuQV< z2)wm*p)hM$k!-gW~Z7}@Iw?11* z?ls0SU4(!zR7yWSv+P1uD_Gc8C&G?X@7 z7j$CZVb_UHyRRo26Z2*~qiJi+9iQWWdwg!}TEx4S8oJgaKGl*OOE$mQjUEA?9D?sD z$qnWkPdK7pBf<(R{7{xZ(hU@-H?J>Wz|%G13*g~Euz-Hu0u6B50jun;ZYODhMOT%! zuC#wE{uIOR#%s&@z?U(BVb)}iMHik%GF}l=Se*Xz^mKt99&T>i{XCL%83amy@{|z7 z!8Ye(#k_P7cU3}gE#P?&o26F7Xe*s!>03L72 z&Sa}vd6>94_D->FJ%_d0Wjk^1U?eLZjbyrMPeJlwY81O}%DkKQdUL*d=AAV6PMRNg zP0@i(u7+T1SL?;q10h+HQUK3?2#(N>9)S$^JnfLPI(OOYu8!DEjwCU^)*yqKImifD zEwLL2X>ilqXSCtQA<-P%LJ8eFxrw@uI(mo(M^(8ws`3+|uIT*tw_Dkqe!I^elo$(zx_oX!^uI8xf zq#wLB@JW;pMuzOPw*)8W$b|`FG2v@E}`Jt@nI=K}Tiu(}g^Q*(*y157yq+tlA2A%(i-9 zTRpU`9@$n8Y^z7L4dg&r$*60vn-96DHW9^>v(~@e2eciX1Gl}-`zT;_@Rmw&2y;rQ zqISr(si{^%nK7m}Fs=k6dOU()>39~sz6AybgU_}f;C%R$^zOR0+j@EP)^xx@pO z+ebWQI@sFb;bFqZCVC+tmuL|XUIb>KV+g>_D=F?+VNP;q`r!ePp!)POLYu-I;e0n& zGM8Hb7`Z=Kw@8L;4WF+gg7e*%PNoAG0sWU}rUM~pkhlAlX+B2&mISAGaW^SkL?&0?DY78EPm+qc1s&R?u{V8g- zYxEl7>}bTOAjV|QYts^E&STR#KE~iONWgfL7H-&um++h4H(4EUT1PTJw`Zo zyW4BK*(7b9XH-+m-o`^nLW{HnM2c_-BE5wws2~TWcL70~NDVasL0SZXBSC4R0Rg2W zf(X(HNQsaLN;4FR2uP7$rMHXcyl469y|dSv|C%qqHM91fJxBQGx`s4i3in&{x7te7{+p9otQXn4D{mb$wm(h%;hoZ(g zk5$4nUoct(A7ArUU+}2{j~F}(+TuH)7H{Xu!Qu-?kzw+`}cA`y< zZ&)hH9^06FvrccS3~R$TakouDn(B-U+^})nThX2zU6Z%kVIsj)~Syy z+96PvDlt8oTs8j8t#u8um3ewtHV_QvXP3&b$x#n7opjPB9ra#pH1rpQw5C4~I2XeA z^^e3JnveVeTGzt8XV;(xL3`b4YLlxmi>ot&i;jgWeJWz`fiK>l?j&4Rpf@Bsv5LSB zNAM?J(ehx|pG2uSd@qQz>sDS)NX>319o5(bWGUc|Z$KC~Pj@TUB|b{TmI~%5*vGus zHS;pF23H|)bJ67%GxSJ=^;L!^6Z-tD*L*3>QAR<#^ZS7@)nzs-Ol{?G46v_3EcqN%}K15;noEovgSdEYrh1SgTzga0A8jqbcFaWTB zY*K$SqSs9HTr}iw`y9W)Mk_BLsv_&*7yE1vbw}Egc_3|!*b0u~9+746xW6;fiwk)9 z9Mx0QbRv$gdjmUa@~Tpj%BTpHanK81s{4yXz)rlA_>d>P~gRu9fNq_f0Z3%jp#qZm%VE@iJS)EIy_jF)OMB@~)QkbLh5kQPiSqIA5_ zAny2STV`()%^rzIaiMxT5o>`;ufFzONrH7fOcSs33{2sngnN2_B_J^cbQWdu*onj& zR5`Sq&m)`tdcn@0r)&f;kpdGG{e0bdE;y$hG+so!sxoS64NoU+? zPq^{pv5@?{xgP%W{x*UB`J?%&Sa|UMwDFggFJ-H!ov~J&*cTtl)mV;$d`+_6q~Sde ztt6qydKaGPAVHQGM}+jnC(Iq4EP1q(29crYfF2E(2vv#du7pcMI^_u;PvMrdO-U(XkDNaGt_ z*0#uO!TU~$*M>z7X4kjRvLcZQ!TuB&g3G*SFSl3Qs;emswvGDZ8as59 z(>{r7<@58ShUSJKjc0>g+$WR{&^>0kPghk?4el!tv%QjgllA7jqBrug)lBmdrWd&M z#PurD=9n_xNYmV`?h_$rI` zt;-kd4#+288lIoE;7PL+zCt==uP~B9!7~8)3#=Kf zZV^-H_r)YMhj<~kTo`m-f|p;<&Z%`?pf#`vV4Yhh>m`e4fQG=n_2)R}A^jq^Rkc4q zD2Fp3gM4Rp$MOUrc39ujS>FW+XP+EB#n?G-#)f%TtzNRRByT3kZjK5Zwy8+-bf7}F zs8fWNz|aE6JL@r%Ofz+m@%%YD3PeZc?KAjzE)O{V^{0>TGQy+9S*z0;sF!DXImaF? zDr+EZk;{!WOHzFyh%?BA`xcHaDA#yfk1HN&Q!rk6C$sm7g;;ZvGuvF>w7d9_-*!ry zXG10tIKL*9MBMlEAKY`QEu~MOjC1x|5Q%5COt0gL)P~jqBe)XHk`VK9i=CE7JU(!AhF@7t4&=YmAGtg&@;JV|85UZVo`J53Anmhs z=I<4v^^x4j&k?N_BQ3<~g-^wnqhM=m4kCxJf?;OOvx^UWmFx~T*GaQGTjDC)IU{51 z3;e$x#Ob;+7&s6BxB~(J7y$q*z}@?%bC8sqznAAD^Oob|7~04(bFpmL?@?o^dO3~X z9cNYO5RMN`HF(UG9w%{%JyZT*SJtpk*;ZP?;a>1$NQ$;j1?r^aa&XjR)r(ERO4Nig z12?fLV+NoMs<*b6ouH}cVDnH8oe!~_?PlyK+HwGbK04+rMo}*aTb#uXwKsD`5zdgj zrhGLyHctmee1i01Q~km8}xNUaeR2acfa z+~EsUfx|9&E5?=a@^u(C8ucYh*V>))&h|oyfhlINjH3zDa zFhl}V_An1&AVZ%VUIuK`cpNKT`G!Z4g&eyuazKjh;!FS^jx=&U#=_V0-wUqAH zi%#>x6#5D>7OY4TC*|;P-V1ZjMxRVg;HNZKm5O&t)ZE_ND>{Gn^=8{KU9D3vd)IcU zi|wEz`a@0~7QxZ+&DGK3N{y=IP%ni1ZsT+xY&R@eW7^W``fVtDX}oTSu4b{E_M{__ z))EhafsB4sOBl%hN3Df{%$a}0)>AlV4Kq~$Kx72Z4F?I@Uvj_c?5>ZIa>8JY^=N=_ zz`s#9!j@hgaMhxP24K(*25=oG+&>#eoaW!W`|poZQcu&>EJ(%7;8wzIZ0IbK4?eXv9B+GFJ F_zx8|U&a6c diff --git a/custom_components/audi_dashboard/frontend/audi-dashboard-app.js b/custom_components/audi_dashboard/frontend/audi-dashboard-app.js index 1cf2624..d634dc1 100644 --- a/custom_components/audi_dashboard/frontend/audi-dashboard-app.js +++ b/custom_components/audi_dashboard/frontend/audi-dashboard-app.js @@ -200,6 +200,11 @@ function profilZuConfig(p) { backupIntervall: p.einstellungen.backup_intervall || "aus", letztesBackup: p.einstellungen.letztes_backup || null, ausfuehrung: p.fahrzeug.ausfuehrung || "", + // Der Wert hat die Zeit ueberlebt, in der die Einstellung nicht + // angeboten wurde (31.08. bis 03.09.2026); der Standard greift nur bei + // neuen Profilen. Siehe fahrterkennung._pausenzeit_s im Backend. + pausenzeit: Number.isFinite(p.einstellungen.fahrten_pausenzeit_min) + ? p.einstellungen.fahrten_pausenzeit_min : 15, }; } @@ -227,6 +232,7 @@ function profilZuCar(p, status) { sicherheitscheck: status.sicherheitscheck || [], zuendung: status.zuendung ?? null, geparktSeit: status.geparkt_seit ?? null, + faehrtSeit: status.faehrt_seit ?? null, standortLat: status.standort_lat, standortLon: status.standort_lon, standortGenauigkeitM: status.standort_genauigkeit_m, @@ -284,6 +290,7 @@ function configCarZuProfil(vorherigesProfil) { p.fahrzeug.ausfuehrung = CONFIG.ausfuehrung; p.einstellungen.uebersichtsbild = CONFIG.startbild; p.einstellungen.backup_intervall = CONFIG.backupIntervall; + p.einstellungen.fahrten_pausenzeit_min = CONFIG.pausenzeit; p.einstellungen.smartdeal = { aktiv: CAR.smartdeal.aktiv, laeuft_ab: CAR.smartdeal.laeuftAb }; p.einstellungen.oelwechsel_intervall = { modus: CAR.oel.modus, km: CAR.oel.km, monate: CAR.oel.monate, @@ -959,9 +966,9 @@ function standortZustand() { }; } /* Ab wann aus "steht gerade" ein "Parkplatz" wird. Hing bis 2026-08-31 an - der Einstellung fahrten_pausenzeit_min - die ist mit der Pausenregel - entfallen (der FMM003 bringt sie selbst mit), der Schwellwert hier hat - damit aber nichts zu tun und bleibt als eigene Zahl stehen. */ + der Einstellung fahrten_pausenzeit_min. Die gibt es seit dem 03.09.2026 + wieder ("Fahrt beenden"), aber der Schwellwert hier hat nach wie vor nichts + damit zu tun und bleibt als eigene Zahl stehen. */ const PARKPLATZ_AB_MIN = 15; function dauerSeitText(ts) { if (ts == null) return "unbekannt"; @@ -1608,9 +1615,15 @@ function teaser() { : null; const t = juengster(TRIPS, "ts_start"), f = juengster(FILLS, "ts"); return `

Zuletzt - ${t ? `
` + : t ? `` : ""} ${f ? ` +
Fahrt beenden +
+ + ${CONFIG.pausenzeit === 0 ? "sofort" : CONFIG.pausenzeit + " Min."} +
+ + Hier können Sie einstellen, wie viele Minuten nach Ausschalten der Zündung die + Fahrt automatisch beendet werden soll. +
Darstellung
@@ -5946,11 +5971,29 @@ function ereignisseVerdrahten() { // Einzelbeleg: zurück auf die Tankstelle (manipuliert MAP direkt, kein // render() - das würde die Karte neu aufbauen und den Ausschnitt verlieren). if (e.target.closest("#belegZentrieren")) { belegAufTankstelleZentrieren(); return; } + // Vor [data-go]: der Knopf sitzt in der Zuletzt-Kachel, deren Zeile sonst + // in die Einzelfahrt navigiert. Die Zeile ist waehrend der Fahrt zwar ein + // div ohne data-go, aber die Reihenfolge haelt das auch dann, wenn die + // Kachel spaeter einmal anders gebaut wird. + if (e.target.closest("[data-fahrtbeenden]")) { serviceRufen("fahrt_jetzt_beenden", {}); return; } const g = e.target.closest("[data-go]"); if (g) { const [n, i] = g.dataset.go.split(":"); go(n, i); } }); ROOT.addEventListener("input", (e) => { + if (e.target.dataset.pausenzeit !== undefined) { + // Beim Ziehen nur die Anzeige und die Fuellung nachziehen, NICHT + // render() und nicht speichern: ein Re-Render mitten in der Geste + // erzeugt den Regler neu und der Daumen springt aus der Hand. + // Gespeichert wird beim Loslassen (change-Zweig weiter unten) - + // dieselbe Trennung wie beim Suchfeld direkt darunter. + const minuten = parseInt(e.target.value, 10); + CONFIG.pausenzeit = minuten; + e.target.style.setProperty("--fuell", (minuten / 60) * 100 + "%"); + const feld = e.target.parentElement.querySelector("output"); + if (feld) feld.textContent = minuten === 0 ? "sofort" : minuten + " Min."; + return; + } const sucheFeld = e.target.dataset.setupSuche; if (sucheFeld) { // Nur die Kandidatenliste patchen, nicht render() - ein voller @@ -6150,6 +6193,7 @@ function ereignisseVerdrahten() { if (e.target.dataset.oelm !== undefined) { CAR.oel.monate = parseInt(e.target.value, 10); profilSpeichern(); return; } if (e.target.dataset.setupNurpassend !== undefined) { setupNurPassend = e.target.checked; render(); return; } if (e.target.dataset.startbild !== undefined) { CONFIG.startbild = e.target.value; profilSpeichern(); render(); return; } + if (e.target.dataset.pausenzeit !== undefined) { CONFIG.pausenzeit = parseInt(e.target.value, 10); profilSpeichern(); return; } if (e.target.dataset.svsel !== undefined) { svAuswahl = parseInt(e.target.value, 10); render(); return; } }); } diff --git a/custom_components/audi_dashboard/frontend/audi-dashboard.css b/custom_components/audi_dashboard/frontend/audi-dashboard.css index 8d08978..3889fd8 100644 --- a/custom_components/audi_dashboard/frontend/audi-dashboard.css +++ b/custom_components/audi_dashboard/frontend/audi-dashboard.css @@ -798,6 +798,75 @@ img.carfix.klein { aspect-ratio: auto; height: auto; } .switch input:checked + .track { background: var(--fg); border-color: var(--fg); } .switch input:checked + .track::before { transform: translateX(19px); background: var(--canvas); } +/* Schieberegler - Zwilling von .ads-schieber im Design-System. + + Ein echtes input[type=range], damit Tastatur und Vorlesefunktion ohne + Zutun stimmen; gemalt wird selbst, sonst saehe er im Panel wie Chrome und + in der App wie WebKit aus. Der gefuellte Teil kommt aus --fuell, weil ein + Range-Feld seinen Wert nicht ans Stylesheet weitergibt und accent-color + entfaellt, sobald man die Spur selbst gestaltet (gesetzt beim Rendern und + im input-Zweig der Ereignisse). + + Die beiden Spur-Regeln lassen sich NICHT zusammenfassen: einen unbekannten + Selektor verwirft der Browser samt der ganzen Regel. */ +.schieber { display: flex; align-items: center; gap: 16px; min-width: 0; } +/* 28 px hoch bei 4 px Spur: das ist die Trefferflaeche des Daumens. */ +.schieber input[type=range] { + -webkit-appearance: none; appearance: none; + flex: 1 1 auto; min-width: 0; height: 28px; + margin: 0; padding: 0; background: transparent; cursor: pointer; +} +.schieber input[type=range]::-webkit-slider-runnable-track { + height: 4px; border-radius: var(--r-pill); + background: linear-gradient(to right, var(--fg) var(--fuell, 0%), var(--ios-fill) var(--fuell, 0%)); +} +.schieber input[type=range]::-moz-range-track { + height: 4px; border-radius: var(--r-pill); + background: linear-gradient(to right, var(--fg) var(--fuell, 0%), var(--ios-fill) var(--fuell, 0%)); +} +/* margin-top zentriert den Daumen auf der Spur: (4 - 28) / 2 = -12. */ +.schieber input[type=range]::-webkit-slider-thumb { + -webkit-appearance: none; appearance: none; box-sizing: border-box; + width: 28px; height: 28px; margin-top: -12px; border-radius: 50%; + /* Der Ring ist der Trick fuer den Tagmodus: --line-strong ist dort + rgba(0,0,0,.22) und zeichnet den weissen Daumen gegen die helle Kachel + ab, im Nachtmodus rgba(255,255,255,.20) - auf Weiss also unsichtbar, wo + er nicht gebraucht wird. Ein Token, zwei Themen. */ + border: 1px solid var(--line-strong); + background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.22), 0 4px 10px rgba(0,0,0,.16); +} +.schieber input[type=range]::-moz-range-thumb { + box-sizing: border-box; width: 28px; height: 28px; border-radius: 50%; + border: 1px solid var(--line-strong); + background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.22), 0 4px 10px rgba(0,0,0,.16); +} +.schieber input[type=range]:focus-visible { outline: none; } +.schieber input[type=range]:focus-visible::-webkit-slider-thumb { + box-shadow: 0 0 0 3px var(--line-strong), 0 3px 8px rgba(0,0,0,.16); +} +/* Feste Mindestbreite und Ziffern gleicher Laufweite: sonst ruckelt der + Regler seitlich, sobald der Wert von 9 auf 10 springt. */ +/* Knopf in einer Listenzeile - heute nur "Fahrt beenden" in der + Zuletzt-Kachel. 36 px sichtbar, 44 px Trefferhoehe ueber das + Pseudoelement, damit die Zeile nicht hoeher wird als ihre Nachbarin. */ +.zeilenknopf { + position: relative; flex: 0 0 auto; + font-family: inherit; font-size: 13px; letter-spacing: .01em; + color: var(--fg); background: none; border: 1px solid var(--line-strong); + border-radius: var(--r-pill); padding: 8px 15px; min-height: 36px; cursor: pointer; +} +.zeilenknopf:hover { background: var(--shade); } +.zeilenknopf:active { opacity: .55; } +.zeilenknopf::before { content: ""; position: absolute; inset: -4px 0; } +/* Gruen wie der Sicherheits-Haken: es laeuft gerade etwas. */ +.leaf .k small.laeuft { color: var(--ok); } +.leaf .v small.vorlaeufig { color: var(--fg3); } + +.schieber output { + flex: 0 0 auto; min-width: 62px; text-align: right; + font-size: 13px; font-variant-numeric: tabular-nums; color: var(--fg2); +} + /* C3: gemischt geschrieben, 15 px, 48 px hoch. .primaer ist gefüllt, .aktion allein bleibt die Umriss-Sekundäraktion. */ .aktion { diff --git a/custom_components/audi_dashboard/koordinator.py b/custom_components/audi_dashboard/koordinator.py index 000229d..49a43bb 100644 --- a/custom_components/audi_dashboard/koordinator.py +++ b/custom_components/audi_dashboard/koordinator.py @@ -544,7 +544,9 @@ class Koordinator: self.setzen(E_ZUORDNUNG, "aktuell", self.zuordnung.aktueller_stand()) async def fahrzeugstatus_veroeffentlichen(self) -> None: - self.setzen(E_FAHRZEUGSTATUS, "aktuell", fahrzeugstatus(self.hass, self.zuordnung.werte, self.geparkt_seit_ts)) + self.setzen(E_FAHRZEUGSTATUS, "aktuell", fahrzeugstatus( + self.hass, self.zuordnung.werte, self.geparkt_seit_ts, self.fahrt_start_ts + )) async def beleg_ergebnis_veroeffentlichen(self, daten: dict) -> None: self.setzen(E_BELEG_ERGEBNIS, "aktuell", daten) diff --git a/custom_components/audi_dashboard/manifest.json b/custom_components/audi_dashboard/manifest.json index 9026196..8497d0d 100644 --- a/custom_components/audi_dashboard/manifest.json +++ b/custom_components/audi_dashboard/manifest.json @@ -1,7 +1,7 @@ { "domain": "audi_dashboard", "name": "Audi Dashboard", - "version": "2026.9.3.4", + "version": "2026.9.3.7", "documentation": "https://gitea.nothaft.cloud/paul/audi-app/src/branch/main/README.md", "issue_tracker": "https://gitea.nothaft.cloud/paul/audi-app/issues", "codeowners": ["@paul"], diff --git a/custom_components/audi_dashboard/services.yaml b/custom_components/audi_dashboard/services.yaml index e87f696..2e074b6 100644 --- a/custom_components/audi_dashboard/services.yaml +++ b/custom_components/audi_dashboard/services.yaml @@ -330,3 +330,6 @@ csv_importieren: selector: text: multiline: true + +fahrt_jetzt_beenden: + fields: {} diff --git a/custom_components/audi_dashboard/veroeffentlichung.py b/custom_components/audi_dashboard/veroeffentlichung.py index b042a08..943760c 100644 --- a/custom_components/audi_dashboard/veroeffentlichung.py +++ b/custom_components/audi_dashboard/veroeffentlichung.py @@ -194,6 +194,7 @@ def fahrzeugstatus( hass: HomeAssistant, werte: Sensorzuordnung, geparkt_seit: datetime.datetime | None = None, + faehrt_seit: datetime.datetime | None = None, ) -> dict: """Bündelt die live aus Home Assistant gelesenen Fahrzeugwerte frontend-freundlich, damit die Oberfläche keine Entity-IDs kennen muss.""" @@ -253,6 +254,13 @@ def fahrzeugstatus( # nach einer Antwort aus, war aber eine über die Fahrterkennung und # nicht über das Parken (siehe koordinator._zuendung_angezeigt). "geparkt_seit": geparkt_seit.isoformat() if geparkt_seit else None, + # Seit wann die laufende Fahrt laeuft - der eigene Zwischenstand der + # Fahrterkennung, nicht der Rohwert einer Entitaet. Nur daran koennen + # die Oberflaechen den Knopf "Fahrt beenden" zeigen: die Zuendung + # allein sagt es nicht, sie steht beim Trip-Signal noch 900 s nach dem + # Abstellen auf "an" und bei laufendem Motor im Stand ohne Fahrt + # ebenfalls. None heisst: es laeuft keine Fahrt. + "faehrt_seit": faehrt_seit.isoformat() if faehrt_seit else None, "standort_lat": standort["lat"], "standort_lon": standort["lon"], "standort_genauigkeit_m": standort["genauigkeit_m"], diff --git a/design-system/src/components/Slider/Slider.css b/design-system/src/components/Slider/Slider.css new file mode 100644 index 0000000..ed70832 --- /dev/null +++ b/design-system/src/components/Slider/Slider.css @@ -0,0 +1,99 @@ +.ads-schieber { + display: flex; + align-items: center; + gap: var(--sp-4); + min-width: 0; +} + +/* 28px hoch, obwohl die Spur nur 4px misst: das ist die Trefferfläche des + Daumens. Ein 4px hohes Element wäre auf dem Telefon nicht zu greifen. */ +.ads-schieber input[type="range"] { + -webkit-appearance: none; + appearance: none; + flex: 1 1 auto; + min-width: 0; + height: 28px; + margin: 0; + padding: 0; + background: transparent; + cursor: pointer; +} + +.ads-schieber input[type="range"]:disabled { + opacity: .4; + cursor: default; +} + +/* Die beiden Spur-Regeln lassen sich NICHT zusammenfassen: trifft ein Browser + auf einen Selektor, den er nicht kennt, verwirft er die ganze Regel. */ +.ads-schieber input[type="range"]::-webkit-slider-runnable-track { + height: 4px; + border-radius: var(--r-pill); + background: linear-gradient( + to right, + var(--fg) var(--ads-fuell, 0%), + var(--ios-fill) var(--ads-fuell, 0%) + ); +} + +.ads-schieber input[type="range"]::-moz-range-track { + height: 4px; + border-radius: var(--r-pill); + background: linear-gradient( + to right, + var(--fg) var(--ads-fuell, 0%), + var(--ios-fill) var(--ads-fuell, 0%) + ); +} + +/* margin-top zentriert den Daumen auf der 4px-Spur: (4 - 28) / 2 = -12. */ +.ads-schieber input[type="range"]::-webkit-slider-thumb { + -webkit-appearance: none; + appearance: none; + box-sizing: border-box; + width: 28px; + height: 28px; + margin-top: -12px; + /* Der Ring ist der Trick fuer den Tagmodus: --line-strong ist dort + rgba(0,0,0,.22) und zeichnet den weissen Daumen sauber gegen die helle + Kachel ab, im Nachtmodus dagegen rgba(255,255,255,.20) - also auf Weiss + unsichtbar, wo er nicht gebraucht wird. Ein Token, zwei Themen. + Dazu ein kraeftigerer Schatten: der allein trug im Tagmodus nicht. */ + border: 1px solid var(--line-strong); + border-radius: 50%; + background: #fff; + box-shadow: 0 1px 3px rgba(0, 0, 0, .22), 0 4px 10px rgba(0, 0, 0, .16); +} + +.ads-schieber input[type="range"]::-moz-range-thumb { + box-sizing: border-box; + width: 28px; + height: 28px; + border: 1px solid var(--line-strong); + border-radius: 50%; + background: #fff; + box-shadow: 0 1px 3px rgba(0, 0, 0, .22), 0 4px 10px rgba(0, 0, 0, .16); +} + +.ads-schieber input[type="range"]:focus-visible { + outline: none; +} + +.ads-schieber input[type="range"]:focus-visible::-webkit-slider-thumb { + box-shadow: 0 0 0 3px var(--line-strong), 0 3px 8px rgba(0, 0, 0, .16); +} + +.ads-schieber input[type="range"]:focus-visible::-moz-range-thumb { + box-shadow: 0 0 0 3px var(--line-strong), 0 3px 8px rgba(0, 0, 0, .16); +} + +/* Feste Mindestbreite und Ziffern gleicher Laufweite: sonst ruckelt der Regler + seitlich, sobald der Wert von 9 auf 10 springt. */ +.ads-schieber__wert { + flex: 0 0 auto; + min-width: 62px; + text-align: right; + font-size: 13px; + font-variant-numeric: tabular-nums; + color: var(--fg2); +} diff --git a/design-system/src/components/Slider/Slider.tsx b/design-system/src/components/Slider/Slider.tsx new file mode 100644 index 0000000..74fea8d --- /dev/null +++ b/design-system/src/components/Slider/Slider.tsx @@ -0,0 +1,74 @@ +import * as React from "react"; + +/** + * Schieberegler für einen Zahlenwert - das iOS-Muster für "irgendwo zwischen + * wenig und viel", wo die genaue Ziffer zweitrangig ist. + * + * Bewusst ein echtes `input[type=range]` und kein nachgebauter Regler aus + * divs: das bringt Tastaturbedienung, VoiceOver und die Wischgeste des Systems + * mit, ohne dass wir sie nachbauen (und dabei die Hälfte vergessen). Gemalt + * wird trotzdem selbst, denn sonst sähe der Regler im Panel wie Chrome und in + * der App wie WebKit aus - zwei Codebasen, ein Look. + * + * Der gefüllte Teil der Spur kommt aus der CSS-Variablen `--ads-fuell`, weil + * ein `input[type=range]` seinen Wert nicht an das Stylesheet weiterreicht. + * Sobald man `::-webkit-slider-runnable-track` selbst gestaltet, entfällt auch + * die automatische Füllung von `accent-color` - der Anteil muss also von hier + * kommen. + * + * Farben wie beim Balken (ProgressBar): `--fg` auf `--ios-fill`. Der + * Markenrot-Ton bleibt den Stellen vorbehalten, die wirklich Aufmerksamkeit + * verlangen; eine Einstellung gehört nicht dazu. + */ +export interface SliderProps { + wert: number; + min?: number; + max?: number; + schritt?: number; + onChange: (wert: number) => void; + /** Wird rechts neben dem Regler gezeigt, z. B. "15 Min." */ + anzeige?: React.ReactNode; + disabled?: boolean; + id?: string; + "aria-label"?: string; + "aria-describedby"?: string; + className?: string; +} + +export function Slider({ + wert, + min = 0, + max = 100, + schritt = 1, + onChange, + anzeige, + disabled, + id, + className, + ...rest +}: SliderProps) { + const spanne = max - min; + // Geklemmt, damit ein Wert außerhalb der Grenzen die Spur nicht überfüllt - + // gespeicherte Werte können älter sein als die heutigen Grenzen. + const anteil = spanne > 0 ? Math.min(100, Math.max(0, ((wert - min) / spanne) * 100)) : 0; + const classes = ["ads-schieber"]; + if (className) classes.push(className); + + return ( +
+ onChange(Number(e.target.value))} + style={{ "--ads-fuell": `${anteil}%` } as React.CSSProperties} + {...rest} + /> + {anzeige !== undefined && {anzeige}} +
+ ); +} diff --git a/design-system/src/components/Slider/index.ts b/design-system/src/components/Slider/index.ts new file mode 100644 index 0000000..5d185a6 --- /dev/null +++ b/design-system/src/components/Slider/index.ts @@ -0,0 +1,2 @@ +export { Slider } from "./Slider"; +export type { SliderProps } from "./Slider"; diff --git a/design-system/src/index.ts b/design-system/src/index.ts index 54e41a6..9b14478 100644 --- a/design-system/src/index.ts +++ b/design-system/src/index.ts @@ -16,6 +16,9 @@ export type { ActionButtonProps } from "./components/ActionButton"; export { Switch } from "./components/Switch"; export type { SwitchProps } from "./components/Switch"; +export { Slider } from "./components/Slider"; +export type { SliderProps } from "./components/Slider"; + export { Seg } from "./components/Seg"; export type { SegProps, SegOption } from "./components/Seg"; diff --git a/design-system/src/styles.css b/design-system/src/styles.css index d1f10bf..a47b3ab 100644 --- a/design-system/src/styles.css +++ b/design-system/src/styles.css @@ -7,6 +7,7 @@ @import "./components/StatusRow/StatusRow.css"; @import "./components/ActionButton/ActionButton.css"; @import "./components/Switch/Switch.css"; +@import "./components/Slider/Slider.css"; @import "./components/Seg/Seg.css"; @import "./components/RowList/RowList.css"; @import "./components/Accordion/LeafRow.css"; diff --git a/tests/fahrterkennung/test_fahrtende_knopf.py b/tests/fahrterkennung/test_fahrtende_knopf.py new file mode 100644 index 0000000..8a4452a --- /dev/null +++ b/tests/fahrterkennung/test_fahrtende_knopf.py @@ -0,0 +1,244 @@ +#!/usr/bin/env python3 +"""Der Knopf "Fahrt beenden" und das Nachziehen des vorlaeufigen Endes. + +Der Fall, fuer den es den Knopf gibt: das Fahrzeug steht in einer Tiefgarage +ohne Empfang. Das Geraet kann sein Zuendungs-Aus nicht melden, die Fahrt bliebe +offen, bis irgendwann gepufferte Datensaetze eintreffen. Der Knopf schliesst +sie auf das letzte Lebenszeichen - mehr weiss in dem Moment niemand. + +Genau deshalb ist dieses Ende VORLAEUFIG: faehrt das Fahrzeug danach noch aus +der Garage heraus, kommt der Rest nach, und dann gehoert das Ende nachgezogen +statt verworfen. Geprueft wird beides - dass der Knopf das Richtige schliesst, +und dass die spaete Meldung die Fahrt korrigiert statt eine neue anzulegen. + +Aufruf: python3 tests/fahrterkennung/test_fahrtende_knopf.py +(braucht das homeassistant-Paket, weil die Integration es importiert - also +z. B. im Test-Container) +""" + +import asyncio +import datetime +import os +import sys +import unittest + +_HIER = os.path.dirname(os.path.abspath(__file__)) +sys.path.insert(0, os.path.dirname(os.path.dirname(_HIER))) + +from custom_components.audi_dashboard import fahrterkennung as f # noqa: E402 + +T0 = datetime.datetime(2026, 9, 3, 8, 0, 0, tzinfo=datetime.UTC) +LEBENSZEICHEN = datetime.datetime(2026, 9, 3, 8, 20, 0, tzinfo=datetime.UTC) + + +class FakeWerte: + TRIP_SENSOR = "" + ZUENDUNG_SENSOR = "binary_sensor.zuendung" + + +class FakeZuordnung: + werte = FakeWerte() + + +class FakeAblage: + def __init__(self, fahrten=None): + self.fahrten = fahrten or [] + self.aktualisiert = [] + + async def profil_lesen(self): + return {"einstellungen": {"fahrten_pausenzeit_min": 15}} + + async def fahrten_lesen(self): + return self.fahrten + + async def fahrt_anhaengen(self, fahrt): + self.fahrten.append(fahrt) + + async def fahrt_aktualisieren(self, trip_id, aenderungen): + self.aktualisiert.append((trip_id, aenderungen)) + for fahrt in self.fahrten: + if fahrt.get("trip_id") == trip_id: + fahrt.update(aenderungen) + return True + return False + + +class FakeKoordinator: + def __init__(self, start_ts=T0, fahrten=None): + self.fahrt_start_ts = start_ts + self.fahrt_sperre = asyncio.Lock() + self.zuordnung = FakeZuordnung() + self.ablage = FakeAblage(fahrten) + self.hass = object() + self.veroeffentlicht = 0 + self.abgebrochen = 0 + + def warte_ende_ab_abbrechen(self): + self.abgebrochen += 1 + + async def fahrt_start_setzen(self, ts): + self.fahrt_start_ts = ts + + async def fahrzeugstatus_veroeffentlichen(self): + pass + + async def fahrten_veroeffentlichen(self): + self.veroeffentlicht += 1 + + +def fahrt(trip_id, start, ende, vorlaeufig): + return { + "trip_id": trip_id, + "ts_start": start.isoformat(), + "ts_end": ende.isoformat(), + "duration_s": int((ende - start).total_seconds()), + "ende_vorlaeufig": vorlaeufig, + } + + +class Basis(unittest.IsolatedAsyncioTestCase): + async def asyncSetUp(self): + self._echt = ( + f._letztes_lebenszeichen, + f._geraetezeit, + f.screening.durchfuehren, + f.reifen.aktiver_satz, + ) + + async def lebenszeichen(k, sensor, seit): + return LEBENSZEICHEN + + async def geraetezeit(k, ereigniszeit, standard): + return ereigniszeit or standard + + async def durchfuehren(k): + return None + + def aktiver_satz(profil): + return "sommer" + + f._letztes_lebenszeichen = lebenszeichen + f._geraetezeit = geraetezeit + f.screening.durchfuehren = durchfuehren + f.reifen.aktiver_satz = aktiver_satz + + async def asyncTearDown(self): + ( + f._letztes_lebenszeichen, + f._geraetezeit, + f.screening.durchfuehren, + f.reifen.aktiver_satz, + ) = self._echt + + +class Knopf(Basis): + async def test_schliesst_auf_das_letzte_lebenszeichen(self): + """Nicht auf 'jetzt': das Fahrzeug stand still, als es still stand - + und genau dann liegen die beiden weit auseinander.""" + k = FakeKoordinator() + self.assertTrue(await f.jetzt_beenden(k)) + self.assertEqual(len(k.ablage.fahrten), 1) + gespeichert = k.ablage.fahrten[0] + self.assertEqual(gespeichert["ts_end"], LEBENSZEICHEN.isoformat()) + self.assertTrue(gespeichert["ende_vorlaeufig"]) + self.assertIsNone(k.fahrt_start_ts) + + async def test_ohne_laufende_fahrt_passiert_nichts(self): + k = FakeKoordinator(start_ts=None) + self.assertFalse(await f.jetzt_beenden(k)) + self.assertEqual(k.ablage.fahrten, []) + + async def test_bricht_eine_wartende_ende_aufgabe_ab(self): + """Sonst schloesse die Wartezeit die Fahrt ein zweites Mal.""" + k = FakeKoordinator() + await f.jetzt_beenden(k) + self.assertEqual(k.abgebrochen, 1) + + +class Nachziehen(Basis): + async def _spaetes_aus(self, k, gemeldet): + await f._spaetes_aus(k, gemeldet, gemeldet) + + async def test_spaeteres_aus_zieht_das_vorlaeufige_ende_nach(self): + """Der eigentliche Zweck: nach der Tiefgarage kommt der Rest gepuffert + nach, und die Fahrt endet dort, wo sie wirklich endete.""" + k = FakeKoordinator( + start_ts=None, + fahrten=[fahrt("t-1", T0, LEBENSZEICHEN, True)], + ) + # Gemeldet wird das verzoegerte Zuendungs-Aus; echt ist es + # ZUENDUNG_NACHLAUF_S frueher. + echt = LEBENSZEICHEN + datetime.timedelta(minutes=12) + gemeldet = echt + datetime.timedelta(seconds=f.ZUENDUNG_NACHLAUF_S) + await self._spaetes_aus(k, gemeldet) + + self.assertEqual(len(k.ablage.aktualisiert), 1) + _, aenderungen = k.ablage.aktualisiert[0] + self.assertEqual(aenderungen["ts_end"], echt.isoformat()) + self.assertEqual(aenderungen["duration_s"], int((echt - T0).total_seconds())) + self.assertFalse(aenderungen["ende_vorlaeufig"]) + self.assertNotIn( + "edited_fields", + aenderungen, + "ts_end darf nicht als Handeingabe gelten - das blockierte die " + "naechste Korrektur", + ) + + async def test_regulaer_geschlossene_fahrt_wird_nicht_angefasst(self): + k = FakeKoordinator( + start_ts=None, + fahrten=[fahrt("t-1", T0, LEBENSZEICHEN, False)], + ) + echt = LEBENSZEICHEN + datetime.timedelta(minutes=12) + await self._spaetes_aus( + k, echt + datetime.timedelta(seconds=f.ZUENDUNG_NACHLAUF_S) + ) + self.assertEqual(k.ablage.aktualisiert, []) + + async def test_frueheres_aus_verkuerzt_die_fahrt_nicht(self): + k = FakeKoordinator( + start_ts=None, + fahrten=[fahrt("t-1", T0, LEBENSZEICHEN, True)], + ) + echt = LEBENSZEICHEN - datetime.timedelta(minutes=5) + await self._spaetes_aus( + k, echt + datetime.timedelta(seconds=f.ZUENDUNG_NACHLAUF_S) + ) + self.assertEqual(k.ablage.aktualisiert, []) + + async def test_zu_weit_danach_wird_nicht_korrigiert(self): + """Jenseits des Korrekturfensters gehoert das Aus wahrscheinlich zu + einer ganz anderen Fahrt.""" + k = FakeKoordinator( + start_ts=None, + fahrten=[fahrt("t-1", T0, LEBENSZEICHEN, True)], + ) + echt = LEBENSZEICHEN + datetime.timedelta(seconds=f.KORREKTUR_FENSTER_S + 60) + with self.assertLogs(f._LOGGER, level="WARNING"): + await self._spaetes_aus( + k, echt + datetime.timedelta(seconds=f.ZUENDUNG_NACHLAUF_S) + ) + self.assertEqual(k.ablage.aktualisiert, []) + + async def test_nur_die_juengste_fahrt_wird_korrigiert(self): + """Eine aeltere vorlaeufige Fahrt darf ein spaetes Aus nicht an sich + ziehen - sonst wanderte ihr Ende ueber die naechste Fahrt hinweg.""" + alt_start = T0 - datetime.timedelta(hours=3) + k = FakeKoordinator( + start_ts=None, + fahrten=[ + fahrt("t-alt", alt_start, alt_start + datetime.timedelta(minutes=10), True), + fahrt("t-neu", T0, LEBENSZEICHEN, False), + ], + ) + echt = LEBENSZEICHEN + datetime.timedelta(minutes=5) + await self._spaetes_aus( + k, echt + datetime.timedelta(seconds=f.ZUENDUNG_NACHLAUF_S) + ) + self.assertEqual( + k.ablage.aktualisiert, [], "die juengste Fahrt ist regulaer geschlossen" + ) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/tests/fahrterkennung/test_signalwechsel.py b/tests/fahrterkennung/test_signalwechsel.py index 5775e92..26fd473 100644 --- a/tests/fahrterkennung/test_signalwechsel.py +++ b/tests/fahrterkennung/test_signalwechsel.py @@ -33,6 +33,15 @@ T0 = datetime.datetime(2026, 9, 2, 16, 32, 18, tzinfo=datetime.UTC) T_WECHSEL = datetime.datetime(2026, 9, 2, 21, 22, 12, tzinfo=datetime.UTC) +class FakeWerte: + TRIP_SENSOR = "binary_sensor.trip" + ZUENDUNG_SENSOR = "binary_sensor.zuendung" + + +class FakeZuordnung: + werte = FakeWerte() + + class FakeKoordinator: """Nur das, was der Signalpfad anfasst.""" @@ -41,6 +50,11 @@ class FakeKoordinator: self.fahrt_sperre = asyncio.Lock() self.beendet = [] self.veroeffentlicht = 0 + # Dieser Test beschreibt die Welt MIT Trip-Signal: dort bringt das + # Geraet seine Pausentoleranz mit, _pausenzeit_s() gibt 0 zurueck und + # es wird sofort geschlossen. Gegenstand ist hier die Sperre, nicht + # die Wartezeit - die hat test_zuendungspause.py. + self.zuordnung = FakeZuordnung() def warte_ende_ab_abbrechen(self): pass diff --git a/tests/fahrterkennung/test_zuendungspause.py b/tests/fahrterkennung/test_zuendungspause.py new file mode 100644 index 0000000..3c61aa8 --- /dev/null +++ b/tests/fahrterkennung/test_zuendungspause.py @@ -0,0 +1,249 @@ +#!/usr/bin/env python3 +"""Die Wartezeit nach dem Zuendungs-Aus, und die beiden Nachlaeufe des Geraets. + +Warum es das gibt (03.09.2026): das Trip-Signal des FMM003 endet erst nach +seinem "Ignition OFF Timeout" von 900 s - und der Schlaf-Timeout des Geraets +stand auf denselben 900 s. Beide Uhren starten beim Zuendungs-Aus und fallen in +derselben Sekunde. Am 02.09.2026 ist das zweimal beobachtet worden, mit +entgegengesetztem Ausgang: die Fahrt um 16:54 verlor ihr Trip-Ende (danach +1 h 48 min ohne einen einzigen Datensatz), die um 21:43 bekam es um 21:58:16, +genau 901 s spaeter. Ein Wettlauf, den unsere Seite nicht gewinnen kann. + +Deshalb loest jetzt die Zuendung aus, und die Wartezeit laeuft bei uns - auf +einer Maschine, die nicht schlaeft. Geprueft wird genau das: dass eine +zurueckkehrende Zuendung die Fahrt fortsetzt statt sie zu teilen, dass die +Nachlaeufe des Geraets abgezogen werden, und dass ein spaet eintreffendes Aus +keine Phantomfahrt erzeugt. + +Aufruf: python3 tests/fahrterkennung/test_zuendungspause.py +(braucht das homeassistant-Paket, weil die Integration es importiert - also +z. B. im Test-Container) +""" + +import asyncio +import datetime +import os +import sys +import unittest + +_HIER = os.path.dirname(os.path.abspath(__file__)) +sys.path.insert(0, os.path.dirname(os.path.dirname(_HIER))) + +from custom_components.audi_dashboard import fahrterkennung as f # noqa: E402 + +T0 = datetime.datetime(2026, 9, 2, 16, 32, 18, tzinfo=datetime.UTC) +AUS = datetime.datetime(2026, 9, 2, 16, 54, 21, tzinfo=datetime.UTC) +# So kurz, dass der Test schnell bleibt - die Laenge ist hier nicht der Punkt, +# sondern ob sie abgebrochen wird. +PAUSE = 0.15 + + +class FakeWerte: + def __init__(self, trip=""): + self.TRIP_SENSOR = trip + self.ZUENDUNG_SENSOR = "binary_sensor.zuendung" + + +class FakeZuordnung: + def __init__(self, trip=""): + self.werte = FakeWerte(trip) + + +class FakeAblage: + def __init__(self, minuten=15, fahrten=None): + self.profil = {"einstellungen": {"fahrten_pausenzeit_min": minuten}} + self.fahrten = fahrten or [] + + async def profil_lesen(self): + return self.profil + + async def fahrten_lesen(self): + return self.fahrten + + +class FakeKoordinator: + def __init__(self, start_ts=T0, trip="", minuten=15, fahrten=None): + self.fahrt_start_ts = start_ts + self.fahrt_sperre = asyncio.Lock() + self.zuordnung = FakeZuordnung(trip) + self.ablage = FakeAblage(minuten, fahrten) + self.beendet = [] + self._aufgabe = None + + def warte_ende_ab(self, koroutine): + self.warte_ende_ab_abbrechen() + self._aufgabe = asyncio.ensure_future(koroutine) + + def warte_ende_ab_abbrechen(self): + if self._aufgabe is not None and not self._aufgabe.done(): + self._aufgabe.cancel() + self._aufgabe = None + + async def fahrt_start_setzen(self, ts): + self.fahrt_start_ts = ts + + async def fahrzeugstatus_veroeffentlichen(self): + pass + + async def ausklingen(self): + """Der wartenden Aufgabe Zeit geben, fertig zu werden.""" + if self._aufgabe is None: + return + try: + await asyncio.wait_for(asyncio.shield(self._aufgabe), timeout=2) + except (asyncio.CancelledError, asyncio.TimeoutError): + pass + + +class Basis(unittest.IsolatedAsyncioTestCase): + def _pause_kurz(self): + async def pausenzeit(k): + return 0 if k.zuordnung.werte.TRIP_SENSOR else PAUSE + + return pausenzeit + + async def asyncSetUp(self): + self._echt = ( + f._geraetezeit, f.fahrt_beenden, f._pausenzeit_s, f._nachlauf_gegenpruefen, + ) + + async def geraetezeit(k, ereigniszeit, standard): + return ereigniszeit or standard + + async def beenden(k, start_ts, ende_ts): + k.beendet.append((start_ts, ende_ts)) + await k.fahrt_start_setzen(None) + + async def gegenpruefen(k, start_ts, signal_ende, gerechnet): + # Liest den Verlauf und aendert nichts an der Rechnung (siehe dort); + # ohne echtes hass-Objekt ist sie hier nur im Weg. + return None + + f._geraetezeit = geraetezeit + f.fahrt_beenden = beenden + f._pausenzeit_s = self._pause_kurz() + f._nachlauf_gegenpruefen = gegenpruefen + + async def asyncTearDown(self): + ( + f._geraetezeit, f.fahrt_beenden, f._pausenzeit_s, f._nachlauf_gegenpruefen, + ) = self._echt + + +class Wartezeit(Basis): + async def test_aus_schliesst_nicht_sofort(self): + k = FakeKoordinator() + await f.zuendung_geaendert(k, "off", "on", AUS) + self.assertEqual( + k.beendet, [], "waehrend der Wartezeit darf nichts geschrieben sein" + ) + self.assertIsNotNone(k.fahrt_start_ts) + await k.ausklingen() + self.assertEqual(len(k.beendet), 1, "nach der Wartezeit muss die Fahrt enden") + + async def test_zuendung_kommt_zurueck_und_die_fahrt_laeuft_weiter(self): + """Der eigentliche Zweck der Wartezeit.""" + k = FakeKoordinator() + await f.zuendung_geaendert(k, "off", "on", AUS) + await asyncio.sleep(PAUSE / 3) + await f.zuendung_geaendert(k, "on", "off", AUS + datetime.timedelta(seconds=20)) + await asyncio.sleep(PAUSE * 2) + self.assertEqual(k.beendet, [], "eine zurueckgekehrte Zuendung beendet nichts") + self.assertEqual(k.fahrt_start_ts, T0, "es bleibt dieselbe Fahrt") + + async def test_start_stopp_zerlegt_die_fahrt_nicht(self): + """Der RS4 stellt an der Ampel den Motor ab - aus einer Drehzahlquelle + ist das nicht vom Abstellen zu unterscheiden.""" + k = FakeKoordinator() + t = AUS + for _ in range(4): + await f.zuendung_geaendert(k, "off", "on", t) + await asyncio.sleep(PAUSE / 5) + t += datetime.timedelta(seconds=45) + await f.zuendung_geaendert(k, "on", "off", t) + t += datetime.timedelta(seconds=200) + self.assertEqual(k.beendet, []) + self.assertEqual(k.fahrt_start_ts, T0) + + async def test_ohne_wartezeit_bleibt_es_wie_bisher(self): + """Mit zugeordnetem Trip-Signal wartet das Geraet - wir nicht.""" + k = FakeKoordinator(trip="binary_sensor.trip") + await f.zuendung_geaendert(k, "off", "on", AUS) + self.assertEqual(len(k.beendet), 1, "ohne Pause wird sofort geschlossen") + + +class Nachlauf(Basis): + async def test_zuendungsweg_zieht_180_s_ab(self): + k = FakeKoordinator() + await f.zuendung_geaendert(k, "off", "on", AUS) + await k.ausklingen() + _, ende = k.beendet[0] + self.assertEqual(ende, AUS - datetime.timedelta(seconds=180)) + + async def test_tripweg_zieht_beide_nachlaeufe_ab(self): + """900 s Trip-Nachlauf plus 180 s des Zuendungselements: das Trip-Ende + haengt selbst an der bereits verzoegerten Zuendung.""" + k = FakeKoordinator(trip="binary_sensor.trip") + await f.zuendung_geaendert(k, "off", "on", AUS) + _, ende = k.beendet[0] + self.assertEqual(ende, AUS - datetime.timedelta(seconds=1080)) + + async def test_zu_kurz_wird_auf_den_beginn_geklemmt(self): + k = FakeKoordinator(start_ts=AUS - datetime.timedelta(seconds=60)) + await f.zuendung_geaendert(k, "off", "on", AUS) + await k.ausklingen() + start, ende = k.beendet[0] + self.assertEqual(ende, start, "kuerzer als der Nachlauf heisst: nicht gefahren") + + +class SpaetesAus(Basis): + async def test_aus_zur_geschlossenen_fahrt_wird_verworfen(self): + """Gepuffert eintreffendes Aus, dessen Geraetezeit in die schon + geschlossene Fahrt faellt - es darf nichts ausloesen.""" + ende = AUS - datetime.timedelta(seconds=180) + k = FakeKoordinator( + start_ts=None, + fahrten=[{"ts_start": T0.isoformat(), "ts_end": ende.isoformat()}], + ) + await f.zuendung_geaendert(k, "off", "on", AUS) + self.assertEqual(k.beendet, []) + self.assertIsNone(k.fahrt_start_ts, "es darf keine Fahrt entstehen") + + async def test_aus_ohne_jede_fahrt_meldet_sich(self): + k = FakeKoordinator(start_ts=None, fahrten=[]) + with self.assertLogs(f._LOGGER, level="WARNING") as protokoll: + await f.zuendung_geaendert(k, "off", "on", AUS) + self.assertTrue( + any("entgangen" in z for z in protokoll.output), + "ein Aus ohne passende Fahrt gehoert ins Protokoll", + ) + + +class Einstellung(unittest.IsolatedAsyncioTestCase): + """_pausenzeit_s selbst - hier ungepatcht.""" + + async def test_wert_aus_dem_profil(self): + k = FakeKoordinator(minuten=25) + self.assertEqual(await f._pausenzeit_s(k), 25 * 60) + + async def test_trip_signal_schlaegt_die_einstellung(self): + k = FakeKoordinator(minuten=25, trip="binary_sensor.trip") + self.assertEqual(await f._pausenzeit_s(k), 0) + + async def test_unsinn_faellt_auf_den_standard_zurueck(self): + k = FakeKoordinator() + k.ablage.profil = {"einstellungen": {"fahrten_pausenzeit_min": "viel"}} + self.assertEqual(await f._pausenzeit_s(k), f.STANDARD_PAUSENZEIT_MIN * 60) + + async def test_obergrenze_greift(self): + k = FakeKoordinator(minuten=9999) + self.assertEqual(await f._pausenzeit_s(k), f.PAUSENZEIT_MAX_MIN * 60) + + async def test_null_ist_erlaubt(self): + """Wer keine Pause will, bekommt keine - dann endet die Fahrt sofort.""" + k = FakeKoordinator(minuten=0) + self.assertEqual(await f._pausenzeit_s(k), 0) + + +if __name__ == "__main__": + unittest.main(verbosity=2)