From 5a92221cad108b814378165a43ff1ac9ec20ae7b Mon Sep 17 00:00:00 2001
From: Ezerous <ezerous@gmail.com>
Date: Tue, 11 Jan 2022 16:15:12 +0200
Subject: [PATCH] refactor: debloat section 4.3

---
 .../4.2.2.ui-technologies.tex                 |   2 -
 .../4.3.implementation-architecture.tex       | 274 +-----------------
 .../4.3.1.software-units.tex                  |   9 +
 .../4.3.1.concordia-contracts-unit.tex        |   5 +
 .../4.3.1.concordia-shared-unit.tex           |   6 +
 .../4.3.1.eth-breeze-unit.tex                 |   7 +
 .../4.3.1.eth-drizzle-unit.tex                |   7 +
 .../4.3.1.eth-identity-provider-unit.tex      |   5 +
 .../4.3.2.concordia-application-service.tex   |  43 +++
 .../4.3.3.concordia-contracts-migrator.tex    |  16 +
 .../4.3.4.concordia-pinner-service.tex        |  22 ++
 ...5.concordia-contracts-provider-service.tex |  18 ++
 .../4.3.6.ganache-service.tex                 |   9 +
 .../4.3.7.rendezvous-server-service.tex       |   9 +
 .../4.3.8.service-communication.tex           |  26 ++
 .../4.3.9.data-flow.tex                       |  28 ++
 thesis.pdf                                    | Bin 9132276 -> 9132398 bytes
 17 files changed, 221 insertions(+), 265 deletions(-)
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-contracts-unit.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-shared-unit.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-breeze-unit.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-drizzle-unit.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-identity-provider-unit.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.2.concordia-application-service.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.3.concordia-contracts-migrator.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.4.concordia-pinner-service.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.5.concordia-contracts-provider-service.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.6.ganache-service.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.7.rendezvous-server-service.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.8.service-communication.tex
 create mode 100644 chapters/4.application-implementation/4.3.implementation-architecture/4.3.9.data-flow.tex

diff --git a/chapters/4.application-implementation/4.2.implementation-technology-stack/4.2.2.ui-technologies.tex b/chapters/4.application-implementation/4.2.implementation-technology-stack/4.2.2.ui-technologies.tex
index 4bbea95..c5f6070 100644
--- a/chapters/4.application-implementation/4.2.implementation-technology-stack/4.2.2.ui-technologies.tex
+++ b/chapters/4.application-implementation/4.2.implementation-technology-stack/4.2.2.ui-technologies.tex
@@ -2,8 +2,6 @@
 
 Στην παρούσα υποενότητα περιγράφονται όσες τεχνολογίες σχετίζονται με τη διεπαφή του χρήστη (UI), δηλαδή με το Presentation tier.
 
-% TODO: add technologies like redux, sagas
-
 \input{chapters/4.application-implementation/4.2.implementation-technology-stack/4.2.2.ui-technologies/4.2.2.1.react}
 \input{chapters/4.application-implementation/4.2.implementation-technology-stack/4.2.2.ui-technologies/4.2.2.2.redux}
 \input{chapters/4.application-implementation/4.2.implementation-technology-stack/4.2.2.ui-technologies/4.2.2.3.redux-saga}
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture.tex b/chapters/4.application-implementation/4.3.implementation-architecture.tex
index 854eff3..34fef3a 100644
--- a/chapters/4.application-implementation/4.3.implementation-architecture.tex
+++ b/chapters/4.application-implementation/4.3.implementation-architecture.tex
@@ -1,7 +1,7 @@
 \section{Αρχιτεκτονική υλοποίησης} \label{section:4-3-implementation-architecture}
 
-Το σύστημα υλοποιήθηκε χρησιμοποιώντας το μοντέλο αρχιτεκτονικής των μικροϋπηρεσιών. Το μοντέλο των μικροϋπηρεσιών βασίζεται στην αποδόμηση του συστήματος σε μικρές μονάδες, οι οποίες συνεργάζονται ώστε να προσφέρουν ένα ενιαίο αποτέλεσμα. Η προσέγγιση αυτή έχει πολλά πλεονεκτήματα σε σύγκριση με την ανάπτυξη μονολιθικών εφαρμογών % todo: add reference
-. Ο βασικός λόγος για τον οποίο επιλέχθηκε η αρχιτεκτονική μικροϋπηρεσιών είναι η ευκολία που προσφέρει στη γρήγορη ανάπτυξη καινούριων χαρακτηριστικών, ταυτόχρονα από διαφορετικά μέλη μίας ομάδας, ασύγχρονα και χωρίς την ανάγκη συνεχής επικοινωνίας και συνεννόησης μεταξύ τους. Αυτό συμβαίνει επειδή κάθε μέρος του συστήματος (υπηρεσία) είναι αυτόνομο και η ανάπτυξή του είναι διαχωρισμένη από το υπόλοιπο σύστημα με το οποίο είναι αδύναμα συνδεδεμένο (loosely coupled).
+Το σύστημα υλοποιήθηκε χρησιμοποιώντας το μοντέλο αρχιτεκτονικής των μικροϋπηρεσιών. Το μοντέλο των μικροϋπηρεσιών βασίζεται στην αποδόμηση του συστήματος σε μικρές μονάδες, οι οποίες συνεργάζονται ώστε να προσφέρουν ένα ενιαίο αποτέλεσμα. Η προσέγγιση αυτή έχει πολλά πλεονεκτήματα σε σύγκριση με την ανάπτυξη μονολιθικών εφαρμογών. % todo: add reference
+Ο βασικός λόγος για τον οποίο επιλέχθηκε η αρχιτεκτονική μικροϋπηρεσιών είναι η ευκολία που προσφέρει στη γρήγορη ανάπτυξη καινούριων χαρακτηριστικών, ταυτόχρονα από διαφορετικά μέλη μίας ομάδας, ασύγχρονα και χωρίς την ανάγκη συνεχούς επικοινωνίας και συνεννόησης μεταξύ τους. Αυτό συμβαίνει επειδή κάθε μέρος του συστήματος (υπηρεσία) είναι αυτόνομο και η ανάπτυξή του είναι διαχωρισμένη από το υπόλοιπο σύστημα με το οποίο είναι αδύναμα συνδεδεμένο (loosely coupled).
 
 Το σύστημα συντίθεται από διάφορες μικροϋπηρεσίες, κάποιες από τις οποίες αναπτύχθηκαν στα πλαίσια αυτής της εργασίας ενώ άλλες αποτελούν δωρεάν λογισμικό ανοιχτού κώδικα. Οι μικροϋπηρεσίες αυτές συνοψίζονται στον παρακάτω πίνακα (πίνακας \ref{table:4-3-microservice-summary}).
 
@@ -53,264 +53,12 @@
     \label{figure:4-3-architecture-overview}
 \end{figure}
 
-% ===== =====
-% Common software units
-% ===== =====
-\subsection{Αρθρώματα} \label{subsection:4-3-software-units}
-
-Στο κεφάλαιο αυτό θα περιγραφούν με μεγαλύτερη λεπτομέρεια τα αρθρώματα που αναπτύχθηκαν.
-
-\vspace{0.5cm}
-\textbf{Άρθρωμα concordia-shared}
-
-Το άρθρωμα concordia-shared αποτελεί μία βιβλιοθήκη χρήσιμων εργαλείων και σταθερών. Εδώ περιέχεται όλο το λογισμικό το οποίο πρέπει ή είναι επιθυμητό να συμπεριφέρεται με τον ίδιο τρόπο συνολικά στο σύστημα, όπως για παράδειγμα μέθοδοι παραμετροποίησης των υπηρεσιών και μέθοδοι καταγραφής (logging). Το άρθρωμα αυτό χρησιμοποιείται από το άρθρωμα concordia-contracts καθώς και από τις υπηρεσίες Concordia Application, Concordia Pinner και Concordia Contracts Provider.
-
-% make more sense
-Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή τοπικής βιβλιοθήκης με τη χρήση της βιβλιοθήκης διαχείρισης μοναδικού αποθετηρίου κώδικα (monorepo) lerna.
-
-\vspace{0.5cm}
-\textbf{Άρθρωμα concordia-contracts}
-
-Το άρθρωμα αυτό επιτελεί δύο ενέργειες. Αρχικά, είναι το άρθρωμα στο οποίο αναπτύσσονται τα contracts που χρησιμοποιούνται από την εφαρμογή. Το άρθρωμα αυτό αναλαμβάνει τη μεταγλώττιση των contracts από κώδικα γλώσσας Solidity, στην κατάλληλη τελική μορφή JSON. Παρέχονται επίσης σενάρια ενεργειών (scripts) ώστε τα contracts να μεταφορτωθούν σε blockchain καθώς και στην υπηρεσία Concordia Contracts Provider. Αποτελεί επίσης βιβλιοθήκη η οποία μετά τη μεταγλώττιση και μεταφόρτωση των contracts σε blockchain παρέχει τα contract artifacts. Χρησιμοποιείται από τις υπηρεσίες Concordia Application και Concordia Pinner.
-
-Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή τοπικής βιβλιοθήκης με τη χρήση της βιβλιοθήκης διαχείρισης monorepo lerna.
-
-\vspace{0.5cm}
-\textbf{Άρθρωμα eth-identity-provider}
-
-Η λειτουργία της βάση OrbitDB απαιτεί τη δημιουργία ενός μοναδικού αναγνωριστικού χρήστη (identity). Για την εύκολη εξαγωγή ενός αναγνωριστικού χρήστη το οποίο να είναι μεν μοναδικό αλλά να είναι δυνατός ο επανυπολογισμός, χρησιμοποιήθηκε ο συνδυασμός της διεύθυνσης του χρήστη στο δίκτυο Ethereum με τη διεύθυνση του βασικού contract που χρησιμοποιεί η εφαρμογή. Ο υπολογισμός του συνδυασμού αυτού υλοποιείται από αυτό το άρθρωμα.
-
-Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή βιβλιοθήκης μέσω του αποθετηρίου λογισμικού npm.
-
-\vspace{0.5cm}
-\textbf{Άρθρωμα drizzle}
-
-Το άρθρωμα drizzle που χρησιμοποιείται στην υπηρεσία Concordia Application είναι μία τροποποιημένη έκδοση της Javascript βιβλιοθήκης Drizzle που προσφέρεται από τη σουίτα εργαλείων Truffle. Η τροποποιημένη βιβλιοθήκη αναπτύχθηκε στα πλαίσια της διπλωματικής με στόχο τη διευκόλυνση της χρήσης του Drizle και την επιδιόρθωση προβληματικών σημείων της πρωτότυπης βιβλιοθήκης.
-
-Το άρθρωμα drizzle υλοποιεί τις προγραμματιστικές διεπαφές μέσω των οποίων πραγματοποιείται η επικοινωνία της εφαρμογής με το blockchain. Για την επίτευξη της επικοινωνίας αυτής, η βιβλιοθήκη χρησιμοποιεί τη συλλογή βιβλιοθηκών web3.js η οποία αποτελεί τον πιο διαδεδομένο τρόπο διεπαφής με το blockchain σε αποκεντρωτικές εφαρμογές.
-
-Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή βιβλιοθήκης μέσω του αποθετηρίου λογισμικού npm.
-
-\vspace{0.5cm}
-\textbf{Άρθρωμα breeze}
-
-Το άρθρωμα αυτό αποτελεί μία βιβλιοθήκη περίβλημα (wrapper) της βιβλιοθήκης OrbitDB. Η OrbitDB είναι μία βιβλιοθήκη η οποία προσφέρει τις απαραίτητες προγραμματιστικές διεπαφές για τη χρήση της βάσης δεδομένων με το ίδιο όνομα. Μέσα από τη χρήση των βιβλιοθηκών που προσφέρονται από το IPFS για την αποθήκευση δεδομένων, η OrbitDB καταφέρνει να υλοποιήσει μία αποκεντρωμένη βάση δεδομένων.
-
-Το άρθρωμα breeze κάνει χρήση της βιβλιοθήκης OrbitDB, προσφέρει ωστόσο συγκεκριμένες προγραμματιστικές διεπαφές που διευκολύνουν τόσο την παραμετροποίηση της βάσης όσο και τη χρήση της, ενώ όπως και στο άρθρωμα drizzle το άρθρωμα breeze αναλαμβάνει να διορθώσει ορισμένα προβλήματα της πρωτότυπης βιβλιοθήκης.
-
-Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή βιβλιοθήκης μέσω του αποθετηρίου λογισμικού npm.
-
-% ===== =====
-% concordia-app microservice
-% ===== =====
-\subsection{Concordia Application} \label{subsection:4-3-concordia-application-service}
-
-\vspace{0.5cm}
-\textbf{Περιγραφή - Στόχοι υπηρεσίας}
-
-Η εφαρμογή Concordia (Concordia Application) εκθέτει τις γραφικές διεπαφές μέσω των οποίων αλληλεπιδρούν οι χρήστες με το σύστημα. Αποτελεί τον δίαυλο επικοινωνίας του τελικού χρήστη με το blockchain και με τη βάση OrbitDB. Η αρχιτεκτονική της υπηρεσίας φαίνεται στο σχήμα \ref{figure:4-3-concordia-application-architecture}. Μέσω της εφαρμογής Concordia οι χρήστες μπορούν να:
-
-\begin{itemize}
-    \item περιηγηθούν και διαβάσουν το περιεχόμενο της πλατφόρμας
-
-    \item δημιουργήσουν λογαριασμό χρήστη
-
-    \item δημοσιεύσουν και τροποποιήσουν προσωπικές τους πληροφορίες όπως η τοποθεσία και η εικόνα προφίλ
-
-    \item δημιουργήσουν θέματα (topics)
-
-    \item δημιουργήσουν ψηφοφορίες (polls), καθώς και να ψηφίσουν σε αυτές
-
-    \item δημιουργήσουν και τροποποιήσουν μηνύματα (posts)
-
-    \item υπερψηφίσουν (up-vote) ή καταψηφίσουν (down-vote) μηνύματα άλλων χρηστών
-\end{itemize}
-
-Η υπηρεσία αποτελείται από κώδικα γραμμένο σε Javascript ο οποίος γίνεται διαθέσιμος στους τελικούς χρήστες με τη μορφή εφαρμογής διαδικτύου (web application) μέσω ενός διακομιστή (server). Παρόλο που η υπηρεσία προσφέρει τη γραφική διεπαφή χρήστη μόνο στην αγγλική γλώσσα, έχει παραμετροποιηθεί ώστε να είναι δυνατή η εύκολη μεταγλώττιση της χωρίς την ανάγκη πραγματοποίησης μεγάλων αλλαγών στον κώδικα.
-
-Χρησιμοποιείται η βιβλιοθήκη React για την οργάνωση και ανάπτυξη των συνθετικών τμημάτων (components) του γραφικού περιβάλλοντος. Για το γραφικό περιβάλλον γίνεται χρήση του framework της Semantic UI. Χρησιμοποιείται η βιβλιοθήκη Redux για τη διαχείριση κατάστασης της εφαρμογής (state management), % todo: find a better greek translation
-καθώς και η βιβλιοθήκη Redux-Saga για τη διαχείριση ασύγχρονων παράπλευρων ενεργειών (side-effects) σε ένα σύστημα βασισμένο σε συμβάντα (event-based). Άλλες βιβλιοθήκες χρησιμοποιούνται για διάφορα μέρη της υπηρεσίας, ενώ χρησιμοποιούνται επίσης τα αρθρώματα που περιγράφηκαν προηγουμένως για την επίτευξη διαφορετικών στόχων. Ο πλήρης κατάλογος των βιβλιοθηκών και αρθρωμάτων μπορεί να βρεθεί στον κώδικα της υπηρεσίας στο παράρτημα. % todo: add reference to the appendix containing the code or a link to it in the repo
-
-\begin{figure}[H]
-    \centering
-    \includegraphics[width=.7\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.2.concordia-application-architecture.png}
-    \caption{Αρχιτεκτονική υπηρεσίας Concordia Application}
-    \label{figure:4-3-concordia-application-architecture}
-\end{figure}
-
-Για τη λειτουργία της υπηρεσία Concordia Application είναι απαραίτητα τα αντικείμενα (artifacts) που προκύπτουν από τη μεταγλώττιση των contracts και τη μεταφόρτωση/δημοσίευσή τους στο blockchain. Για την εισαγωγή των artifacts στην υπηρεσία έχουν αναπτυχθεί δύο μέθοδοι.
-
-Η πρώτη μέθοδος είναι η μεταγλώττιση και μεταφόρτωση των contracts πριν την παραγωγή του πακέτου λογισμικού της υπηρεσίας για τελική χρήση (production build). Με αυτό τον τρόπο η υπηρεσία θα έχει πρόσβαση στα artifacts μέσω της βιβλιοθήκης που παράγεται από το άρθρωμα concordia-contracts. Αυτή η μέθοδος έχει το μειονέκτημα ότι το τελικό πακέτο λογισμικού (production build) ``δένεται'' με όποια συγκεκριμένη έκδοση των contracts είναι διαθέσιμη κατά τη δημιουργία του πακέτου. Αυτό σημαίνει ότι σε ενδεχόμενη ενημέρωση των contracts πρέπει αναγκαστικά να δημιουργηθεί και νέα έκδοση του πακέτου λογισμικού της υπηρεσίας Concordia Application.
-
-Για την αποφυγή του παραπάνω προβλήματος αναπτύχθηκε η δεύτερη μέθοδος προσκόμισης των contract artifacts, η οποία είναι η λήψη τους (download) από μία άλλη τοποθεσία στο διαδίκτυο. Σε αυτή τη μέθοδο, η εφαρμογή κατά την εκκίνησή της πραγματοποιεί ένα HTTP αίτημα (HTTP request) σε διεύθυνση η οποία δίνεται ως μεταβλητή περιβάλλοντος (environment variable). Η απάντηση του αιτήματος αναμένεται να περιέχει τα artifacts ώστε η εφαρμογή να τα χρησιμοποιήσει.
-
-\vspace{0.5cm}
-\textbf{Διανομή}
-
-Η υπηρεσία Concordia Application πακετάρεται μαζί με τον διακομιστή nginx και γίνεται διαθέσιμη για χρήση ως εικόνα docker (docker image) μέσω του αποθετηρίου εικόνων dockerhub. Κατά την εκτέλεση της εικόνας οι χρήστες μπορούν μέσω μεταβλητών περιβάλλοντος να ορίσουν παραμέτρους της εκτέλεσης όπως η διεύθυνση του εξυπηρετητή (host location) της εφαρμογής και οι τοποθεσίες των υπηρεσιών Rendezvous Server και Contracts Provider.
-
-% ===== =====
-% concordia-contracts-migrator microservice
-% ===== =====
-\subsection{Concordia Contracts Migrator} \label{subsection:4-3-concordia-contracts-migrator}
-
-\vspace{0.5cm}
-\textbf{Περιγραφή - Στόχοι υπηρεσίας}
-
-Η υπηρεσία αυτή αποτελείται από ένα εκτελέσιμο πρόγραμμα γραμμής εντολών βασισμένο στο άρθρωμα concordia-contracts που αναλύθηκε σε προηγούμενη υποενότητα (\ref{subsection:4-3-software-units}). Το πρόγραμμα, κατά την εκτέλεσή του, μεταγλωττίζει τα contracts και έπειτα τα μεταφορτώνει στο blockchain το οποίο είναι ορισμένο με χρήση μεταβλητών περιβάλλοντος. Τέλος, αν οι κατάλληλες μεταβλητές περιβάλλοντος είναι ορισμένες, το πρόγραμμα μεταφορτώνει τα τελικά artifacts σε αποθετήριο Concordia Contracts Provider. Η αρχιτεκτονική της υπηρεσίας φαίνεται στο παρακάτω σχήμα (σχήμα \ref{figure:4-3-concordia-contracts-migrator-architecture}).
-
-\begin{figure}[H]
-    \centering
-    \includegraphics[width=.6\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.3.concordia-contracts-migrator-architecture.png}
-    \caption{Αρχιτεκτονική υπηρεσίας Concordia Contracts Migrator}
-    \label{figure:4-3-concordia-contracts-migrator-architecture}
-\end{figure}
-
-\vspace{0.5cm}
-\textbf{Διανομή}
-
-Η υπηρεσία αυτή γίνεται διαθέσιμη για χρήση ως docker image μέσω του αποθετηρίου εικόνων dockerhub. Οι χρήστες μπορούν χρησιμοποιώντας μεταβλητές περιβάλλοντος να αλλάξουν τη διεύθυνση του blockchain και την τοποθεσία της υπηρεσίας Contracts Provider στην οποία το πρόγραμμα θα μεταφορτώσει τα contracts και τα artifacts.
-
-% ===== =====
-% concordia-pinner microservice
-% ===== =====
-\subsection{Concordia Pinner} \label{subsection:4-3-concordia-pinner-service}
-
-\vspace{0.5cm}
-\textbf{Περιγραφή - Στόχοι υπηρεσίας}
-
-Η υπηρεσία καρφιτσώματος περιεχομένου (Concordia Pinner) αποτελεί μία εφαρμογή τερματικού (temrinal application/cmd application) η οποία στοχεύει στο καρφίτσωμα (pinning) του περιεχομένου που αποθηκεύεται στο IPFS μέσω της βάσης OrbitDB. Η υπηρεσία είναι γραμμένη στη γλώσσα προγραμματισμού Javascript. Η αρχιτεκτονική της υπηρεσίας φαίνεται το σχήμα \ref{figure:4-3-concordia-pinner-architecture}.
-
-\begin{figure}[H]
-    \centering
-    \includegraphics[width=.6\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.4.concordia-pinner-architecture.png}
-    \caption{Αρχιτεκτονική υπηρεσίας Concordia Pinner}
-    \label{figure:4-3-concordia-pinner-architecture}
-\end{figure}
-
-Η υπηρεσία αυτή υλοποιήθηκε για να εγγυηθεί η διαθεσιμότητα του περιεχομένου του συστήματος που αποθηκεύεται στο IPFS (τίτλοι θεμάτων, περιεχόμενο μηνυμάτων και άλλα). Λόγω του τρόπου λειτουργίας % todo: insert reference
-του IPFS, το περιεχόμενο που αναρτούν οι χρήστες πρέπει να καρφιτσώνεται από άλλους χρήστες ή αυτόνομες εφαρμογές, όπως η υπηρεσία Concordia Pinner, ώστε να είναι διαθέσιμο. Αν το περιεχόμενο δεν καρφιτσωθεί, τότε θα είναι διαθέσιμο στους υπόλοιπους χρήστες μόνο από %todo: fix gender stuff
-τον/τη δημιουργό, έτσι αν αυτός/αυτή δεν είναι ενεργός/ενεργή στο δίκτυο, το περιεχόμενο θα είναι αδύνατο να βρεθεί.
-
-Η υπηρεσία συνδέεται στο blockchain από όπου παρακολουθεί την κατάσταση του συστήματος και ``ακούει'' για νέους χρήστες, θέματα και μηνύματα. Η υπηρεσία συνδέεται επίσης στο IPFS, έτσι όταν δημιουργηθεί νέο περιεχόμενο στο σύστημα το καρφιτσώνει αυτόματα. Με αυτό τον τρόπο, διατηρώντας την υπηρεσία πάντα διαθέσιμη, για παράδειγμα εκτελώντας τη σε περιβάλλον διακομιστή (server), διαβεβαιώνεται η διαθεσιμότητα του περιεχομένου.
-
-\vspace{0.5cm}
-\textbf{Διανομή}
-
-Η υπηρεσία αυτή γίνεται διαθέσιμη για χρήση ως docker image μέσω του αποθετηρίου εικόνων dockerhub. Κατά την εκτέλεση της εικόνας οι χρήστες μπορούν μέσω μεταβλητών περιβάλλοντος να ορίσουν παραμέτρους της υπηρεσίας όπως τη διεύθυνση του εξυπηρετητή (host location), τη διεύθυνση του blockchain, τις διαδρομές αποθήκευσης των δεδομένων στο σύστημα και τις τοποθεσίες των υπηρεσιών Rendezvous Server και Contracts Provider.
-
-% ===== =====
-% concordia-contracts-provider microservice
-% ===== =====
-\subsection{Concordia Contracts Provider} \label{subsection:4-3-concordia-contracts-provider-service}
-
-\vspace{0.5cm}
-\textbf{Περιγραφή - Στόχοι υπηρεσίας}
-
-Η υπηρεσία Contracts Provider αποτελεί μία βοηθητική υπηρεσία η οποία υλοποιεί ένα απλό αποθετήριο για τα contract artifacts. Είναι γραμμένη σε Javascript και διαθέτει δύο HTTP \textenglish{endpoints}, ένα για τη μεταφόρτωση (upload) των artifacts προς την υπηρεσία και ένα για τη λήψη (download) από την υπηρεσία. Η υπηρεσία υποστηρίζει επίσης την επισύναψη ετικετών στα artifacts, όπως η έκδοση (version) ή το κλαδί ανάπτυξης (branch, για παράδειγμα \textenglish{master/develop}). Η αρχιτεκτονική της υπηρεσίας φαίνεται το σχήμα \ref{figure:4-3-concordia-contracts-provider-architecture}.
-
-\begin{figure}[H]
-    \centering
-    \includegraphics[width=.6\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.5.concordia-contracts-provider-architecture.png}
-    \caption{Αρχιτεκτονική υπηρεσίας Concordia Contracts Provider}
-    \label{figure:4-3-concordia-contracts-provider-architecture}
-\end{figure}
-
-Η υπηρεσία χρησιμοποιείται σε μία προσπάθεια αποσύνδεσης της βασικής εφαρμογής που υλοποιεί η υπηρεσία Concordia Application από μία συγκεκριμένη έκδοση των contracts. Οι λόγοι που αυτό είναι επιθυμητό αναπτύχθηκαν στην περιγραφή της υπηρεσίας Concordia \textenglish{Application} (υποενότητα \ref{subsection:4-3-concordia-application-service}). Ωστόσο, η υπηρεσία Contracts Provider αποτελεί σημείο κεντροποίησης του συστήματος, για το λόγο αυτό θεωρείται προσωρινή λύση η οποία θα μπορούσε να αντικατασταθεί από αποκεντρωτικές λύσεις όπως η μεταφόρτωση των artifacts στο IPFS και ο διαμοιρασμός τους από εκεί.
-
-\vspace{0.5cm}
-\textbf{Διανομή}
-
-Η υπηρεσία αυτή γίνεται διαθέσιμη για χρήση ως docker image μέσω του αποθετηρίου εικόνων dockerhub. Οι χρήστες μπορούν χρησιμοποιώντας μεταβλητές περιβάλλοντος να αλλάξουν παραμέτρους της εκτέλεσης όπως η διαδρομή αποθήκευσης των μεταφορτωμένων contract artifacts.
-
-% ===== =====
-% rendezvous-ganache microservice
-% ===== =====
-\subsection{Ganache} \label{subsection:4-3-ganache-service}
-
-\vspace{0.5cm}
-\textbf{Περιγραφή - Στόχοι υπηρεσίας}
-
-Η υπηρεσία Ganache αποτελεί μία εφαρμογή τερματικού η οποία είναι μέρος της δωρεάν σουίτας ανοιχτού λογισμικού Truffle. Η εφαρμογή δημιουργεί ένα τοπικό, ιδιωτικό blockchain το οποίο ακολουθεί το πρότυπο του Ethereum. Επίσης, η εφαρμογή δρα ως miner στο δίκτυο, διεκπεραιώνοντας όλες τις συναλλαγές.
-
-\vspace{0.5cm}
-\textbf{Διανομή}
-
-Για τη χρήση της υπηρεσίας αυτής αναπτύχθηκε μία νέα εικόνα docker που βασίζεται στην επίσημη εικόνα που διατίθεται από τη σουίτα και προσθέτει μερικές χρήσιμες λειτουργικότητες όπως η δυνατότητα αποκάλυψης των κλειδιών που δημιουργούνται κατά την εκτέλεση. Η υπηρεσία γίνεται διαθέσιμη για χρήση ως docker image μέσω του αποθετηρίου εικόνων dockerhub. Η εικόνα παρέχει τη δυνατότητα τροποποίησης των παραμέτρων εκτέλεσης με χρήση μεταβλητών περιβάλλοντος. Με αυτό τον τρόπο οι χρήστες μπορούν να αλλάξουν τον αριθμό των λογαριασμών που θα δημιουργηθούν, το ποσό του Ether που θα λάβει κάθε λογαριασμός καθώς και άλλες μεταβλητές.
-
-% ===== =====
-% rendezvous-server microservice
-% ===== =====
-\subsection{Rendezvous Server} \label{subsection:4-3-rendezvous-server-service}
-
-\vspace{0.5cm}
-\textbf{Περιγραφή - Στόχοι υπηρεσίας}
-
-Η υπηρεσία Rendezvous Server αποτελεί δωρεάν λογισμικό ανοιχτού κώδικα το οποίο χρησιμοποιήθηκε (αλλά δεν αναπτύχθηκε) στα πλαίσια της διπλωματικής και υλοποιεί το πρωτόκολλο rendezvous για την εύρεση ομότιμων χρηστών (peers). Η υπηρεσία είναι απαραίτητη για τη λειτουργία του IPFS, ώστε οι ομότιμοι χρήστες (peers) να μπορούν να ανακαλύψουν τις διευθύνσεις των υπόλοιπων χρηστών του δικτύου.
-
-\vspace{0.5cm}
-\textbf{Διανομή}
-
-Η υπηρεσία αυτή είναι διαθέσιμη για χρήση από τους δημιουργούς της τόσο ως εφαρμογή μέσω του αποθετηρίου λογισμικού npm αλλά και ως docker image μέσω του αποθετηρίου εικόνων dockerhub.
-
-% ===== =====
-% microservice communication
-% ===== =====
-\subsection{Διασύνδεση υπηρεσιών} \label{subsection:4-3-service-communication}
-
-Στο μοντέλο των μικροϋπηρεσιών, βασικό χαρακτηριστικό είναι η επικοινωνία των ξεχωριστών υπηρεσιών και η ανταλλαγή μηνυμάτων για την επίτευξη των λειτουργικοτήτων του συστήματος. Σε αυτήν την υποενότητα θα αναλυθεί ο τρόπος με τον οποίο οι μικροϋπηρεσίες επικοινωνούν μεταξύ τους καθώς και η φύση και το περιεχόμενο των μηνυμάτων που ανταλλάσουν.
-
-Στο παρακάτω σχήμα (σχήμα \ref{figure:4-3-communications-graph}) φαίνεται ο γράφος που οπτικοποιεί τα κανάλια επικοινωνίας μεταξύ των μικροϋπηρεσιών, καθώς και τα κανάλια επικοινωνίας των μικροϋπηρεσιών με το blockchain.
-
-\begin{figure}[H]
-    \centering
-    \includegraphics[width=.9\textwidth]{assets/figures/chapter-4/4.3.communications-diagram.png}
-    \caption{Γράφος οπτικοποίησης των καναλιών επικοινωνίας των μικροϋπηρεσιών}
-    \label{figure:4-3-communications-graph}
-\end{figure}
-
-Εδώ αναλύεται η επικοινωνία κάθε μικροϋπηρεσίας:
-
-\begin{itemize}
-    \item \textbf{Contracts Migrator}: η υπηρεσία εκτελεί αίτημα HTTP κατά την μεταφόρτωση των \textenglish{contracts} στο Ethereum blockchain, επίσης εκτελεί αίτημα HTTP για την μεταφόρτωση των contract artifacts στην υπηρεσία Contracts Provider
-
-    \item \textbf{Concordia Application}: η υπηρεσία εκτελεί αίτημα HTTP για την λήψη των contract \textenglish{artifacts} από την υπηρεσία Contracts Provider, εκτελεί αιτήματα HTTP για την διενέργεια συναλλαγών στο Ethereum blockchain και τέλος δημιουργεί κανάλι UDP επικοινωνίας με την υπηρεσία Rendezvous Server για την ανακάλυψη ομότιμων χρηστών (peers) στο δίκτυο IPFS
-
-    \item \textbf{Pinner}: η υπηρεσία εκτελεί αίτημα HTTP για την λήψη των contract artifacts από την υπηρεσία Contracts Provider, εκτελεί αιτήματα HTTP για την ανανέωση και παρατήρηση της κατάστασης του contract στο Ethereum blockchain και τέλος δημιουργεί κανάλι UDP επικοινωνίας με την υπηρεσία Rendezvous Server για την ανακάλυψη peers στο δίκτυο IPFS
-
-    \item \textbf{Rendezvous Server}: η υπηρεσία διατηρεί ανοιχτά κανάλια UDP επικοινωνίας με τους ομότιμους χρήστες μέσω των οποίων ενημερώνει την λίστα των διαθέσιμων, ενεργών χρηστών
-
-    \item \textbf{Contracts Provider}: η υπηρεσία δεν υποκινεί καμία επικοινωνία παρά μόνο απαντά σε αιτήματα επικοινωνία από άλλες υπηρεσίες
-\end{itemize}
-
-% ===== =====
-% data flow
-% ===== =====
-\subsection{Ροή πληροφορίας} \label{subsection:4-3-data-flow}
-
-Στην παρούσα υποενότητα θα αναλυθεί η ροή της πληροφορίας στο σύστημα. Λόγω των πολλαπλών υπηρεσιών, της κατάτμησης την πληροφορίας και των διαφορετικών σημείων αποθήκευσης της, η ροή της πληροφορίας στο σύστημα ακολουθεί ένα σχετικά περίπλοκο μονοπάτι (σε σχέση με κλασσικές, μονολιθικές, κεντροποιημένες εφαρμογές).
-
-Αρχικά θα γίνει αναφορά στη διαδικασία αποθήκευσης των νέων πληροφοριών. Η μοναδική πηγή παραγωγής δεδομένων στο σύστημα είναι οι χρήστες και κατ' επέκταση η υπηρεσία Concordia Application, εφόσον είναι η μοναδική υπηρεσία με την οποία αυτοί αλληλεπιδρούν. Τα δεδομένα που δημιουργούν οι χρήστες (πληροφορίες χρηστών, τίτλοι θεμάτων και περιεχόμενο μηνυμάτων) κατατμήζονται πριν αποθηκευτούν. Η πληροφορία που εισάγεται στο σύστημα κατατμήζεται σε δύο μέρη. Στο blockchain αποθηκεύεται ένας δείκτης προς τα δεδομένα, ενώ τα πραγματικά δεδομένα αποθηκεύονται στη βάση OrbitDB. Ο δείκτης εκτός από την άμεση χρησιμότητα στην εύρεση των δεδομένων, παρέχει και την έμμεση λειτουργικότητα της δημιουργίας απαραίτητων μεταδομένων όπως ο αριθμός των θεμάτων στο σύστημα ή των μηνυμάτων σε ένα θέμα.
-
-Από την πλευρά της εύρεση των πληροφοριών στο σύστημα, η ροή είναι ως εξής. Αρχικά, είναι απαραίτητη η αναζήτηση στο blockchain για την εύρεση του δείκτη προς τα δεδομένα. Έπειτα, τα δεδομένα μπορούν να ανακτηθούν μέσω του IPFS από τον εκάστοτε χρήστη ή από κάποιον Pinner.
-
-Τέλος, παρακάτω δίνεται ένα παράδειγμα εισαγωγής πληροφορίας στο σύστημα και έπειτα ανάκτησης της ίδιας πληροφορίας.
-
-Έστω, χρήστης που δημιουργεί νέο θέμα. Τα δεδομένα που παράγονται είναι ο τίτλος του θέματος και το περιεχόμενο του πρώτου μηνύματος. Μεταδεδομένα της δημιουργίας είναι η διεύθυνση του/της δημιουργού του θέματος. Για την αποθήκευση του θέματος στο σύστημα δημιουργείται πρώτα συναλλαγή στο blockchain ώστε να δημιουργηθεί μία νέα εγγραφή στον πίνακα των θεμάτων. Η εγγραφή αυτή δεν περιέχει τίποτα παρά μόνο τη διεύθυνση του/της δημιουργού χρήστη. Αν η συναλλαγή είναι επιτυχής, θα επιστραφεί ο αύξων αριθμός του νέου θέματος. Έπειτα, στην προσωπική βάση OrbitDB του/της χρήστη και στον πίνακα των θεμάτων θα προστεθεί εγγραφή με αναγνωριστικό τον αύξων αριθμό του θέματος όπου θα αποθηκευτούν τα δεδομένα του τίτλου και πρώτου μηνύματος. Στο σχήμα \ref{figure:4-3-data-flow-insert} παρουσιάζεται γραφικά η διαδικασία.
-
-% todo: UML diagrams might be wrong, should the ethereum and orbitDb blocks be continuous?
-\begin{figure}[H]
-    \centering
-    \includegraphics[width=.7\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.9.data-flow-insert.png}
-    \caption{Διάγραμμα ακολουθίας δημιουργίας θέματος}
-    \label{figure:4-3-data-flow-insert}
-\end{figure}
-
-Έστω, χρήστης που επιθυμεί να διαβάσει το προηγούμενο μήνυμα. Αρχικά, πρέπει να διαβαστεί ο πίνακας θεμάτων από το blockchain. Η πληροφορία αυτή εμπλουτίζεται από τα δεδομένα του κάθε θέματος, τα οποία ανακτώνται από τις προσωπικές βάσεις Orbit κάθε χρήστη. Έπειτα, εφόσον το θέμα βρεθεί και ο αύξων αριθμός του είναι γνωστός, πρέπει να διαβαστούν από το blockchain τα μεταδομένα των μηνυμάτων του θέματος και συγκεκριμένα η διευθύνσεις των δημιουργών τους. Τέλος, μέσω του IPFS πρέπει να γίνει αντιγραφή των προσωπικών βάσεων των δημιουργών του κάθε μηνύματος και να αναζητηθούν σε αυτές τα εκάστοτε μηνύματα. Στο σχήμα \ref{figure:4-3-data-flow-read} φαίνεται το διάγραμμα ροής της πληροφορίας κατά την ανάκτηση πληροφοριών από το σύστημα.
-
-\begin{figure}[H]
-    \centering
-    \includegraphics[width=.7\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.9.data-flow-read.png}
-    \caption{Διάγραμμα ακολουθίας εύρεσης και ανάκτησης θέματος}
-    \label{figure:4-3-data-flow-read}
-\end{figure}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.2.concordia-application-service}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.3.concordia-contracts-migrator}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.4.concordia-pinner-service}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.5.concordia-contracts-provider-service}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.6.ganache-service}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.7.rendezvous-server-service}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.8.service-communication}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.9.data-flow}
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units.tex
new file mode 100644
index 0000000..7ca553b
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units.tex
@@ -0,0 +1,9 @@
+\subsection{Αρθρώματα} \label{subsection:4-3-1-software-units}
+
+Σε αυτό το κεφάλαιο θα περιγραφούν με μεγαλύτερη λεπτομέρεια τα αρθρώματα που αναπτύχθηκαν.
+
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-shared-unit}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-contracts-unit}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-identity-provider-unit}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-drizzle-unit}
+\input{chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-breeze-unit}
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-contracts-unit.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-contracts-unit.tex
new file mode 100644
index 0000000..b1b8266
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-contracts-unit.tex
@@ -0,0 +1,5 @@
+\subsubsection{Άρθρωμα concordia-contracts} \label{subsubsection:4-3-1-concordia-contracts-unit}
+
+Το άρθρωμα αυτό επιτελεί δύο ενέργειες. Αρχικά, είναι το άρθρωμα στο οποίο αναπτύσσονται τα contracts που χρησιμοποιούνται από την εφαρμογή. Το άρθρωμα αυτό αναλαμβάνει τη μεταγλώττιση των contracts από κώδικα γλώσσας Solidity, στην κατάλληλη τελική μορφή JSON. Παρέχονται επίσης σενάρια ενεργειών (scripts) ώστε τα contracts να μεταφορτωθούν σε blockchain καθώς και στην υπηρεσία Concordia Contracts Provider. Αποτελεί επίσης βιβλιοθήκη η οποία μετά τη μεταγλώττιση και μεταφόρτωση των contracts σε blockchain παρέχει τα contract artifacts. Χρησιμοποιείται από τις υπηρεσίες Concordia Application και Concordia Pinner.
+
+Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή τοπικής βιβλιοθήκης με τη χρήση της βιβλιοθήκης διαχείρισης monorepo lerna.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-shared-unit.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-shared-unit.tex
new file mode 100644
index 0000000..33bed8e
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.concordia-shared-unit.tex
@@ -0,0 +1,6 @@
+\subsubsection{Άρθρωμα concordia-shared} \label{subsubsection:4-3-1-concordia-shared-unit}
+
+Το άρθρωμα concordia-shared αποτελεί μία βιβλιοθήκη χρήσιμων εργαλείων και σταθερών. Εδώ περιέχεται όλο το λογισμικό το οποίο πρέπει ή είναι επιθυμητό να συμπεριφέρεται με τον ίδιο τρόπο συνολικά στο σύστημα, όπως για παράδειγμα μέθοδοι παραμετροποίησης των υπηρεσιών και μέθοδοι καταγραφής (logging). Το άρθρωμα αυτό χρησιμοποιείται από το άρθρωμα concordia-contracts καθώς και από τις υπηρεσίες Concordia Application, Concordia Pinner και Concordia Contracts Provider.
+
+% make more sense
+Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή τοπικής βιβλιοθήκης με τη χρήση της βιβλιοθήκης διαχείρισης μοναδικού αποθετηρίου κώδικα (monorepo) lerna.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-breeze-unit.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-breeze-unit.tex
new file mode 100644
index 0000000..aefdf84
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-breeze-unit.tex
@@ -0,0 +1,7 @@
+\subsubsection{Άρθρωμα breeze} \label{subsubsection:4-3-1-eth-breeze-unit}
+
+Το άρθρωμα αυτό αποτελεί μία βιβλιοθήκη περίβλημα (wrapper) της βιβλιοθήκης OrbitDB. Η OrbitDB είναι μία βιβλιοθήκη η οποία προσφέρει τις απαραίτητες προγραμματιστικές διεπαφές για τη χρήση της βάσης δεδομένων με το ίδιο όνομα. Μέσα από τη χρήση των βιβλιοθηκών που προσφέρονται από το IPFS για την αποθήκευση δεδομένων, η OrbitDB καταφέρνει να υλοποιήσει μία αποκεντρωμένη βάση δεδομένων.
+
+Το άρθρωμα breeze κάνει χρήση της βιβλιοθήκης OrbitDB, προσφέρει ωστόσο συγκεκριμένες προγραμματιστικές διεπαφές που διευκολύνουν τόσο την παραμετροποίηση της βάσης όσο και τη χρήση της, ενώ όπως και στο άρθρωμα drizzle το άρθρωμα breeze αναλαμβάνει να διορθώσει ορισμένα προβλήματα της πρωτότυπης βιβλιοθήκης.
+
+Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή βιβλιοθήκης μέσω του αποθετηρίου λογισμικού npm.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-drizzle-unit.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-drizzle-unit.tex
new file mode 100644
index 0000000..a8b55e6
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-drizzle-unit.tex
@@ -0,0 +1,7 @@
+\subsubsection{Άρθρωμα drizzle} \label{subsubsection:4-3-1-eth-drizzle-unit}
+
+Το άρθρωμα drizzle που χρησιμοποιείται στην υπηρεσία Concordia Application είναι μία τροποποιημένη έκδοση της Javascript βιβλιοθήκης Drizzle που προσφέρεται από τη σουίτα εργαλείων Truffle. Η τροποποιημένη βιβλιοθήκη αναπτύχθηκε στα πλαίσια της διπλωματικής με στόχο τη διευκόλυνση της χρήσης του Drizle και την επιδιόρθωση προβληματικών σημείων της πρωτότυπης βιβλιοθήκης.
+
+Το άρθρωμα drizzle υλοποιεί τις προγραμματιστικές διεπαφές μέσω των οποίων πραγματοποιείται η επικοινωνία της εφαρμογής με το blockchain. Για την επίτευξη της επικοινωνίας αυτής, η βιβλιοθήκη χρησιμοποιεί τη συλλογή βιβλιοθηκών web3.js η οποία αποτελεί τον πιο διαδεδομένο τρόπο διεπαφής με το blockchain σε αποκεντρωτικές εφαρμογές.
+
+Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή βιβλιοθήκης μέσω του αποθετηρίου λογισμικού npm.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-identity-provider-unit.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-identity-provider-unit.tex
new file mode 100644
index 0000000..693f9a5
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.1.software-units/4.3.1.eth-identity-provider-unit.tex
@@ -0,0 +1,5 @@
+\subsubsection{Άρθρωμα eth-identity-provider} \label{subsubsection:4-3-1-eth-identity-provider-unit}
+
+Η λειτουργία της βάση OrbitDB απαιτεί τη δημιουργία ενός μοναδικού αναγνωριστικού χρήστη (identity). Για την εύκολη εξαγωγή ενός αναγνωριστικού χρήστη το οποίο να είναι μεν μοναδικό αλλά να είναι δυνατός ο επανυπολογισμός, χρησιμοποιήθηκε ο συνδυασμός της διεύθυνσης του χρήστη στο δίκτυο Ethereum με τη διεύθυνση του βασικού contract που χρησιμοποιεί η εφαρμογή. Ο υπολογισμός του συνδυασμού αυτού υλοποιείται από αυτό το άρθρωμα.
+
+Το άρθρωμα αυτό γίνεται διαθέσιμο για χρήση με τη μορφή βιβλιοθήκης μέσω του αποθετηρίου λογισμικού npm.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.2.concordia-application-service.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.2.concordia-application-service.tex
new file mode 100644
index 0000000..aaa1630
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.2.concordia-application-service.tex
@@ -0,0 +1,43 @@
+\subsection{Concordia Application} \label{subsection:4-3-2-concordia-application-service}
+
+\subsubsection{Περιγραφή - Στόχοι υπηρεσίας}
+
+Η εφαρμογή Concordia (Concordia Application) εκθέτει τις γραφικές διεπαφές μέσω των οποίων αλληλεπιδρούν οι χρήστες με το σύστημα. Αποτελεί τον δίαυλο επικοινωνίας του τελικού χρήστη με το blockchain και με τη βάση OrbitDB. Η αρχιτεκτονική της υπηρεσίας φαίνεται στο σχήμα \ref{figure:4-3-concordia-application-architecture}. Μέσω της εφαρμογής Concordia οι χρήστες μπορούν να:
+
+\begin{itemize}
+    \item περιηγηθούν και διαβάσουν το περιεχόμενο της πλατφόρμας
+
+    \item δημιουργήσουν λογαριασμό χρήστη
+
+    \item δημοσιεύσουν και τροποποιήσουν προσωπικές τους πληροφορίες όπως η τοποθεσία και η εικόνα προφίλ
+
+    \item δημιουργήσουν θέματα (topics)
+
+    \item δημιουργήσουν ψηφοφορίες (polls), καθώς και να ψηφίσουν σε αυτές
+
+    \item δημιουργήσουν και τροποποιήσουν μηνύματα (posts)
+
+    \item υπερψηφίσουν (up-vote) ή καταψηφίσουν (down-vote) μηνύματα άλλων χρηστών
+\end{itemize}
+
+Η υπηρεσία αποτελείται από κώδικα γραμμένο σε Javascript ο οποίος γίνεται διαθέσιμος στους τελικούς χρήστες με τη μορφή εφαρμογής διαδικτύου (web application) μέσω ενός διακομιστή (server). Παρόλο που η υπηρεσία προσφέρει τη γραφική διεπαφή χρήστη μόνο στην αγγλική γλώσσα, έχει παραμετροποιηθεί ώστε να είναι δυνατή η εύκολη μεταγλώττιση της χωρίς την ανάγκη πραγματοποίησης μεγάλων αλλαγών στον κώδικα.
+
+Χρησιμοποιείται η βιβλιοθήκη React για την οργάνωση και ανάπτυξη των συνθετικών τμημάτων (components) του γραφικού περιβάλλοντος. Για το γραφικό περιβάλλον γίνεται χρήση του framework της Semantic UI. Χρησιμοποιείται η βιβλιοθήκη Redux για τη διαχείριση κατάστασης της εφαρμογής (state management), % todo: find a better greek translation
+καθώς και η βιβλιοθήκη Redux-Saga για τη διαχείριση ασύγχρονων παράπλευρων ενεργειών (side-effects) σε ένα σύστημα βασισμένο σε συμβάντα (event-based). Άλλες βιβλιοθήκες χρησιμοποιούνται για διάφορα μέρη της υπηρεσίας, ενώ χρησιμοποιούνται επίσης τα αρθρώματα που περιγράφηκαν προηγουμένως για την επίτευξη διαφορετικών στόχων. Ο πλήρης κατάλογος των βιβλιοθηκών και αρθρωμάτων μπορεί να βρεθεί στον κώδικα της υπηρεσίας στο παράρτημα. % todo: add reference to the appendix containing the code or a link to it in the repo
+
+\begin{figure}[H]
+    \centering
+    \includegraphics[width=.7\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.2.concordia-application-architecture.png}
+    \caption{Αρχιτεκτονική υπηρεσίας Concordia Application}
+    \label{figure:4-3-concordia-application-architecture}
+\end{figure}
+
+Για τη λειτουργία της υπηρεσία Concordia Application είναι απαραίτητα τα αντικείμενα (artifacts) που προκύπτουν από τη μεταγλώττιση των contracts και τη μεταφόρτωση/δημοσίευσή τους στο blockchain. Για την εισαγωγή των artifacts στην υπηρεσία έχουν αναπτυχθεί δύο μέθοδοι.
+
+Η πρώτη μέθοδος είναι η μεταγλώττιση και μεταφόρτωση των contracts πριν την παραγωγή του πακέτου λογισμικού της υπηρεσίας για τελική χρήση (production build). Με αυτό τον τρόπο η υπηρεσία θα έχει πρόσβαση στα artifacts μέσω της βιβλιοθήκης που παράγεται από το άρθρωμα concordia-contracts. Αυτή η μέθοδος έχει το μειονέκτημα ότι το τελικό πακέτο λογισμικού (production build) ``δένεται'' με όποια συγκεκριμένη έκδοση των contracts είναι διαθέσιμη κατά τη δημιουργία του πακέτου. Αυτό σημαίνει ότι σε ενδεχόμενη ενημέρωση των contracts πρέπει αναγκαστικά να δημιουργηθεί και νέα έκδοση του πακέτου λογισμικού της υπηρεσίας Concordia Application.
+
+Για την αποφυγή του παραπάνω προβλήματος αναπτύχθηκε η δεύτερη μέθοδος προσκόμισης των contract artifacts, η οποία είναι η λήψη τους (download) από μία άλλη τοποθεσία στο διαδίκτυο. Σε αυτή τη μέθοδο, η εφαρμογή κατά την εκκίνησή της πραγματοποιεί ένα HTTP αίτημα (HTTP request) σε διεύθυνση η οποία δίνεται ως μεταβλητή περιβάλλοντος (environment variable). Η απάντηση του αιτήματος αναμένεται να περιέχει τα artifacts ώστε η εφαρμογή να τα χρησιμοποιήσει.
+
+\subsubsection{Διανομή}
+
+Η υπηρεσία Concordia Application πακετάρεται μαζί με τον διακομιστή nginx και γίνεται διαθέσιμη για χρήση ως εικόνα docker (docker image) μέσω του αποθετηρίου εικόνων dockerhub. Κατά την εκτέλεση της εικόνας οι χρήστες μπορούν μέσω μεταβλητών περιβάλλοντος να ορίσουν παραμέτρους της εκτέλεσης όπως η διεύθυνση του εξυπηρετητή (host location) της εφαρμογής και οι τοποθεσίες των υπηρεσιών Rendezvous Server και Contracts Provider.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.3.concordia-contracts-migrator.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.3.concordia-contracts-migrator.tex
new file mode 100644
index 0000000..0025d84
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.3.concordia-contracts-migrator.tex
@@ -0,0 +1,16 @@
+\subsection{Concordia Contracts Migrator} \label{subsection:4-3-3-concordia-contracts-migrator}
+
+\subsubsection{Περιγραφή - Στόχοι υπηρεσίας}
+
+Η υπηρεσία αυτή αποτελείται από ένα εκτελέσιμο πρόγραμμα γραμμής εντολών βασισμένο στο άρθρωμα concordia-contracts που αναλύθηκε σε προηγούμενη υποενότητα (\ref{subsection:4-3-1-software-units}). Το πρόγραμμα, κατά την εκτέλεσή του, μεταγλωττίζει τα contracts και έπειτα τα μεταφορτώνει στο blockchain το οποίο είναι ορισμένο με χρήση μεταβλητών περιβάλλοντος. Τέλος, αν οι κατάλληλες μεταβλητές περιβάλλοντος είναι ορισμένες, το πρόγραμμα μεταφορτώνει τα τελικά artifacts σε αποθετήριο Concordia Contracts Provider. Η αρχιτεκτονική της υπηρεσίας φαίνεται στο παρακάτω σχήμα (σχήμα \ref{figure:4-3-concordia-contracts-migrator-architecture}).
+
+\begin{figure}[H]
+    \centering
+    \includegraphics[width=.6\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.3.concordia-contracts-migrator-architecture.png}
+    \caption{Αρχιτεκτονική υπηρεσίας Concordia Contracts Migrator}
+    \label{figure:4-3-concordia-contracts-migrator-architecture}
+\end{figure}
+
+\subsubsection{Διανομή}
+
+Η υπηρεσία αυτή γίνεται διαθέσιμη για χρήση ως docker image μέσω του αποθετηρίου εικόνων dockerhub. Οι χρήστες μπορούν χρησιμοποιώντας μεταβλητές περιβάλλοντος να αλλάξουν τη διεύθυνση του blockchain και την τοποθεσία της υπηρεσίας Contracts Provider στην οποία το πρόγραμμα θα μεταφορτώσει τα contracts και τα artifacts.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.4.concordia-pinner-service.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.4.concordia-pinner-service.tex
new file mode 100644
index 0000000..6c9386c
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.4.concordia-pinner-service.tex
@@ -0,0 +1,22 @@
+\subsection{Concordia Pinner} \label{subsection:4-3-4-concordia-pinner-service}
+
+\subsubsection{Περιγραφή - Στόχοι υπηρεσίας}
+
+Η υπηρεσία καρφιτσώματος περιεχομένου (Concordia Pinner) αποτελεί μία εφαρμογή τερματικού (temrinal application/cmd application) η οποία στοχεύει στο καρφίτσωμα (pinning) του περιεχομένου που αποθηκεύεται στο IPFS μέσω της βάσης OrbitDB. Η υπηρεσία είναι γραμμένη στη γλώσσα προγραμματισμού Javascript. Η αρχιτεκτονική της υπηρεσίας φαίνεται το σχήμα \ref{figure:4-3-concordia-pinner-architecture}.
+
+\begin{figure}[H]
+    \centering
+    \includegraphics[width=.6\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.4.concordia-pinner-architecture.png}
+    \caption{Αρχιτεκτονική υπηρεσίας Concordia Pinner}
+    \label{figure:4-3-concordia-pinner-architecture}
+\end{figure}
+
+Η υπηρεσία αυτή υλοποιήθηκε για να εγγυηθεί η διαθεσιμότητα του περιεχομένου του συστήματος που αποθηκεύεται στο IPFS (τίτλοι θεμάτων, περιεχόμενο μηνυμάτων και άλλα). Λόγω του τρόπου λειτουργίας % todo: insert reference
+του IPFS, το περιεχόμενο που αναρτούν οι χρήστες πρέπει να καρφιτσώνεται από άλλους χρήστες ή αυτόνομες εφαρμογές, όπως η υπηρεσία Concordia Pinner, ώστε να είναι διαθέσιμο. Αν το περιεχόμενο δεν καρφιτσωθεί, τότε θα είναι διαθέσιμο στους υπόλοιπους χρήστες μόνο από %todo: fix gender stuff
+τον/τη δημιουργό, έτσι αν αυτός/αυτή δεν είναι ενεργός/ενεργή στο δίκτυο, το περιεχόμενο θα είναι αδύνατο να βρεθεί.
+
+Η υπηρεσία συνδέεται στο blockchain από όπου παρακολουθεί την κατάσταση του συστήματος και ``ακούει'' για νέους χρήστες, θέματα και μηνύματα. Η υπηρεσία συνδέεται επίσης στο IPFS, έτσι όταν δημιουργηθεί νέο περιεχόμενο στο σύστημα το καρφιτσώνει αυτόματα. Με αυτό τον τρόπο, διατηρώντας την υπηρεσία πάντα διαθέσιμη, για παράδειγμα εκτελώντας τη σε περιβάλλον διακομιστή (server), διαβεβαιώνεται η διαθεσιμότητα του περιεχομένου.
+
+\subsubsection{Διανομή}
+
+Η υπηρεσία αυτή γίνεται διαθέσιμη για χρήση ως docker image μέσω του αποθετηρίου εικόνων dockerhub. Κατά την εκτέλεση της εικόνας οι χρήστες μπορούν μέσω μεταβλητών περιβάλλοντος να ορίσουν παραμέτρους της υπηρεσίας όπως τη διεύθυνση του εξυπηρετητή (host location), τη διεύθυνση του blockchain, τις διαδρομές αποθήκευσης των δεδομένων στο σύστημα και τις τοποθεσίες των υπηρεσιών Rendezvous Server και Contracts Provider.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.5.concordia-contracts-provider-service.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.5.concordia-contracts-provider-service.tex
new file mode 100644
index 0000000..f99d1b9
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.5.concordia-contracts-provider-service.tex
@@ -0,0 +1,18 @@
+\subsection{Concordia Contracts Provider} \label{subsection:4-3-5-concordia-contracts-provider-service}
+
+\subsubsection{Περιγραφή - Στόχοι υπηρεσίας}
+
+Η υπηρεσία Contracts Provider αποτελεί μία βοηθητική υπηρεσία η οποία υλοποιεί ένα απλό αποθετήριο για τα contract artifacts. Είναι γραμμένη σε Javascript και διαθέτει δύο HTTP \textenglish{endpoints}, ένα για τη μεταφόρτωση (upload) των artifacts προς την υπηρεσία και ένα για τη λήψη (download) από την υπηρεσία. Η υπηρεσία υποστηρίζει επίσης την επισύναψη ετικετών στα artifacts, όπως η έκδοση (version) ή το κλαδί ανάπτυξης (branch, για παράδειγμα \textenglish{master/develop}). Η αρχιτεκτονική της υπηρεσίας φαίνεται το σχήμα \ref{figure:4-3-concordia-contracts-provider-architecture}.
+
+\begin{figure}[H]
+    \centering
+    \includegraphics[width=.6\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.5.concordia-contracts-provider-architecture}
+    \caption{Αρχιτεκτονική υπηρεσίας Concordia Contracts Provider}
+    \label{figure:4-3-concordia-contracts-provider-architecture}
+\end{figure}
+
+Η υπηρεσία χρησιμοποιείται σε μία προσπάθεια αποσύνδεσης της βασικής εφαρμογής που υλοποιεί η υπηρεσία Concordia Application από μία συγκεκριμένη έκδοση των contracts. Οι λόγοι που αυτό είναι επιθυμητό αναπτύχθηκαν στην περιγραφή της υπηρεσίας Concordia \textenglish{Application} (υποενότητα \ref{subsection:4-3-2-concordia-application-service}). Ωστόσο, η υπηρεσία Contracts Provider αποτελεί σημείο κεντροποίησης του συστήματος, για το λόγο αυτό θεωρείται προσωρινή λύση η οποία θα μπορούσε να αντικατασταθεί από αποκεντρωτικές λύσεις όπως η μεταφόρτωση των artifacts στο IPFS και ο διαμοιρασμός τους από εκεί.
+
+\subsubsection{Διανομή}
+
+Η υπηρεσία αυτή γίνεται διαθέσιμη για χρήση ως docker image μέσω του αποθετηρίου εικόνων dockerhub. Οι χρήστες μπορούν χρησιμοποιώντας μεταβλητές περιβάλλοντος να αλλάξουν παραμέτρους της εκτέλεσης όπως η διαδρομή αποθήκευσης των μεταφορτωμένων contract artifacts.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.6.ganache-service.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.6.ganache-service.tex
new file mode 100644
index 0000000..9f28f48
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.6.ganache-service.tex
@@ -0,0 +1,9 @@
+\subsection{Ganache} \label{subsection:4-3-6-ganache-service}
+
+\subsubsection{Περιγραφή - Στόχοι υπηρεσίας}
+
+Η υπηρεσία Ganache αποτελεί μία εφαρμογή τερματικού η οποία είναι μέρος της δωρεάν σουίτας ανοιχτού λογισμικού Truffle. Η εφαρμογή δημιουργεί ένα τοπικό, ιδιωτικό blockchain το οποίο ακολουθεί το πρότυπο του Ethereum. Επίσης, η εφαρμογή δρα ως miner στο δίκτυο, διεκπεραιώνοντας όλες τις συναλλαγές.
+
+\subsubsection{Διανομή}
+
+Για τη χρήση της υπηρεσίας αυτής αναπτύχθηκε μία νέα εικόνα docker που βασίζεται στην επίσημη εικόνα που διατίθεται από τη σουίτα και προσθέτει μερικές χρήσιμες λειτουργικότητες όπως η δυνατότητα αποκάλυψης των κλειδιών που δημιουργούνται κατά την εκτέλεση. Η υπηρεσία γίνεται διαθέσιμη για χρήση ως docker image μέσω του αποθετηρίου εικόνων dockerhub. Η εικόνα παρέχει τη δυνατότητα τροποποίησης των παραμέτρων εκτέλεσης με χρήση μεταβλητών περιβάλλοντος. Με αυτό τον τρόπο οι χρήστες μπορούν να αλλάξουν τον αριθμό των λογαριασμών που θα δημιουργηθούν, το ποσό του Ether που θα λάβει κάθε λογαριασμός καθώς και άλλες μεταβλητές.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.7.rendezvous-server-service.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.7.rendezvous-server-service.tex
new file mode 100644
index 0000000..5d6c638
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.7.rendezvous-server-service.tex
@@ -0,0 +1,9 @@
+\subsection{Rendezvous Server} \label{subsection:4-3-7-rendezvous-server-service}
+
+\subsubsection{Περιγραφή - Στόχοι υπηρεσίας}
+
+Η υπηρεσία Rendezvous Server αποτελεί δωρεάν λογισμικό ανοιχτού κώδικα το οποίο χρησιμοποιήθηκε (αλλά δεν αναπτύχθηκε) στα πλαίσια της διπλωματικής και υλοποιεί το πρωτόκολλο rendezvous για την εύρεση ομότιμων χρηστών (peers). Η υπηρεσία είναι απαραίτητη για τη λειτουργία του IPFS, ώστε οι ομότιμοι χρήστες (peers) να μπορούν να ανακαλύψουν τις διευθύνσεις των υπόλοιπων χρηστών του δικτύου.
+
+\subsubsection{Διανομή}
+
+Η υπηρεσία αυτή είναι διαθέσιμη για χρήση από τους δημιουργούς της τόσο ως εφαρμογή μέσω του αποθετηρίου λογισμικού npm αλλά και ως docker image μέσω του αποθετηρίου εικόνων dockerhub.
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.8.service-communication.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.8.service-communication.tex
new file mode 100644
index 0000000..41f99c7
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.8.service-communication.tex
@@ -0,0 +1,26 @@
+\subsection{Διασύνδεση υπηρεσιών} \label{subsection:4-3-8-service-communication}
+
+Στο μοντέλο των μικροϋπηρεσιών, βασικό χαρακτηριστικό είναι η επικοινωνία των ξεχωριστών υπηρεσιών και η ανταλλαγή μηνυμάτων για την επίτευξη των λειτουργικοτήτων του συστήματος. Σε αυτήν την υποενότητα θα αναλυθεί ο τρόπος με τον οποίο οι μικροϋπηρεσίες επικοινωνούν μεταξύ τους καθώς και η φύση και το περιεχόμενο των μηνυμάτων που ανταλλάσουν.
+
+Στο παρακάτω σχήμα (σχήμα \ref{figure:4-3-communications-graph}) φαίνεται ο γράφος που οπτικοποιεί τα κανάλια επικοινωνίας μεταξύ των μικροϋπηρεσιών, καθώς και τα κανάλια επικοινωνίας των μικροϋπηρεσιών με το blockchain.
+
+\begin{figure}[H]
+    \centering
+    \includegraphics[width=.9\textwidth]{assets/figures/chapter-4/4.3.communications-diagram.png}
+    \caption{Γράφος οπτικοποίησης των καναλιών επικοινωνίας των μικροϋπηρεσιών}
+    \label{figure:4-3-communications-graph}
+\end{figure}
+
+Εδώ αναλύεται η επικοινωνία κάθε μικροϋπηρεσίας:
+
+\begin{itemize}
+    \item \textbf{Contracts Migrator}: η υπηρεσία εκτελεί αίτημα HTTP κατά την μεταφόρτωση των \textenglish{contracts} στο Ethereum blockchain, επίσης εκτελεί αίτημα HTTP για την μεταφόρτωση των contract artifacts στην υπηρεσία Contracts Provider
+
+    \item \textbf{Concordia Application}: η υπηρεσία εκτελεί αίτημα HTTP για την λήψη των contract \textenglish{artifacts} από την υπηρεσία Contracts Provider, εκτελεί αιτήματα HTTP για την διενέργεια συναλλαγών στο Ethereum blockchain και τέλος δημιουργεί κανάλι UDP επικοινωνίας με την υπηρεσία Rendezvous Server για την ανακάλυψη ομότιμων χρηστών (peers) στο δίκτυο IPFS
+
+    \item \textbf{Pinner}: η υπηρεσία εκτελεί αίτημα HTTP για την λήψη των contract artifacts από την υπηρεσία Contracts Provider, εκτελεί αιτήματα HTTP για την ανανέωση και παρατήρηση της κατάστασης του contract στο Ethereum blockchain και τέλος δημιουργεί κανάλι UDP επικοινωνίας με την υπηρεσία Rendezvous Server για την ανακάλυψη peers στο δίκτυο IPFS
+
+    \item \textbf{Rendezvous Server}: η υπηρεσία διατηρεί ανοιχτά κανάλια UDP επικοινωνίας με τους ομότιμους χρήστες μέσω των οποίων ενημερώνει την λίστα των διαθέσιμων, ενεργών χρηστών
+
+    \item \textbf{Contracts Provider}: η υπηρεσία δεν υποκινεί καμία επικοινωνία παρά μόνο απαντά σε αιτήματα επικοινωνία από άλλες υπηρεσίες
+\end{itemize}
\ No newline at end of file
diff --git a/chapters/4.application-implementation/4.3.implementation-architecture/4.3.9.data-flow.tex b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.9.data-flow.tex
new file mode 100644
index 0000000..dc7b133
--- /dev/null
+++ b/chapters/4.application-implementation/4.3.implementation-architecture/4.3.9.data-flow.tex
@@ -0,0 +1,28 @@
+\subsection{Ροή πληροφορίας} \label{subsection:4-3-9-data-flow}
+
+Στην παρούσα υποενότητα θα αναλυθεί η ροή της πληροφορίας στο σύστημα. Λόγω των πολλαπλών υπηρεσιών, της κατάτμησης την πληροφορίας και των διαφορετικών σημείων αποθήκευσης της, η ροή της πληροφορίας στο σύστημα ακολουθεί ένα σχετικά περίπλοκο μονοπάτι (σε σχέση με κλασσικές, μονολιθικές, κεντροποιημένες εφαρμογές).
+
+Αρχικά θα γίνει αναφορά στη διαδικασία αποθήκευσης των νέων πληροφοριών. Η μοναδική πηγή παραγωγής δεδομένων στο σύστημα είναι οι χρήστες και κατ' επέκταση η υπηρεσία Concordia Application, εφόσον είναι η μοναδική υπηρεσία με την οποία αυτοί αλληλεπιδρούν. Τα δεδομένα που δημιουργούν οι χρήστες (πληροφορίες χρηστών, τίτλοι θεμάτων και περιεχόμενο μηνυμάτων) κατατέμνονται πριν αποθηκευτούν. Η πληροφορία που εισάγεται στο σύστημα διαχωρίζεται σε δύο μέρη. Στο blockchain αποθηκεύεται ένας δείκτης προς τα δεδομένα, ενώ τα πραγματικά δεδομένα αποθηκεύονται στη βάση OrbitDB. Ο δείκτης εκτός από την άμεση χρησιμότητα στην εύρεση των δεδομένων, παρέχει και την έμμεση λειτουργικότητα της δημιουργίας απαραίτητων μεταδομένων όπως ο αριθμός των θεμάτων στο σύστημα ή των μηνυμάτων σε ένα θέμα.
+
+Από την πλευρά της εύρεση των πληροφοριών στο σύστημα, η ροή είναι ως εξής. Αρχικά, είναι απαραίτητη η αναζήτηση στο blockchain για την εύρεση του δείκτη προς τα δεδομένα. Έπειτα, τα δεδομένα μπορούν να ανακτηθούν μέσω του IPFS από τον εκάστοτε χρήστη ή από κάποιον Pinner.
+
+Τέλος, παρακάτω δίνεται ένα παράδειγμα εισαγωγής πληροφορίας στο σύστημα και έπειτα ανάκτησης της ίδιας πληροφορίας.
+
+Έστω, χρήστης που δημιουργεί νέο θέμα. Τα δεδομένα που παράγονται είναι ο τίτλος του θέματος και το περιεχόμενο του πρώτου μηνύματος. Μεταδεδομένα της δημιουργίας είναι η διεύθυνση του/της δημιουργού του θέματος. Για την αποθήκευση του θέματος στο σύστημα δημιουργείται πρώτα συναλλαγή στο blockchain ώστε να δημιουργηθεί μία νέα εγγραφή στον πίνακα των θεμάτων. Η εγγραφή αυτή δεν περιέχει τίποτα παρά μόνο τη διεύθυνση του/της δημιουργού χρήστη. Αν η συναλλαγή είναι επιτυχής, θα επιστραφεί ο αύξων αριθμός του νέου θέματος. Έπειτα, στην προσωπική βάση OrbitDB του/της χρήστη και στον πίνακα των θεμάτων θα προστεθεί εγγραφή με αναγνωριστικό τον αύξων αριθμό του θέματος όπου θα αποθηκευτούν τα δεδομένα του τίτλου και πρώτου μηνύματος. Στο σχήμα \ref{figure:4-3-data-flow-insert} παρουσιάζεται γραφικά η διαδικασία.
+
+% todo: UML diagrams might be wrong, should the ethereum and orbitDb blocks be continuous?
+\begin{figure}[H]
+    \centering
+    \includegraphics[width=.7\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.9.data-flow-insert.png}
+    \caption{Διάγραμμα ακολουθίας δημιουργίας θέματος}
+    \label{figure:4-3-data-flow-insert}
+\end{figure}
+
+Έστω, χρήστης που επιθυμεί να διαβάσει το προηγούμενο μήνυμα. Αρχικά, πρέπει να διαβαστεί ο πίνακας θεμάτων από το blockchain. Η πληροφορία αυτή εμπλουτίζεται από τα δεδομένα του κάθε θέματος, τα οποία ανακτώνται από τις προσωπικές βάσεις Orbit κάθε χρήστη. Έπειτα, εφόσον το θέμα βρεθεί και ο αύξων αριθμός του είναι γνωστός, πρέπει να διαβαστούν από το blockchain τα μεταδομένα των μηνυμάτων του θέματος και συγκεκριμένα η διευθύνσεις των δημιουργών τους. Τέλος, μέσω του IPFS πρέπει να γίνει αντιγραφή των προσωπικών βάσεων των δημιουργών του κάθε μηνύματος και να αναζητηθούν σε αυτές τα εκάστοτε μηνύματα. Στο σχήμα \ref{figure:4-3-data-flow-read} φαίνεται το διάγραμμα ροής της πληροφορίας κατά την ανάκτηση πληροφοριών από το σύστημα.
+
+\begin{figure}[H]
+    \centering
+    \includegraphics[width=.7\textwidth]{assets/figures/chapter-4/4.3.architecture-4.3.9.data-flow-read.png}
+    \caption{Διάγραμμα ακολουθίας εύρεσης και ανάκτησης θέματος}
+    \label{figure:4-3-data-flow-read}
+\end{figure}
\ No newline at end of file
diff --git a/thesis.pdf b/thesis.pdf
index e293b20702aba1346c1f9564896deb8848662feb..adcd9ba843a16c0ece1caba0a65845b9abdb2366 100644
GIT binary patch
delta 61613
zcmY(|Lv)}`urT1*wry)Bwr$(C`GynQw(W^+XOc-Wv2E+ipYz|%y^Ckjy=qj|={o(;
zSPOC0R0|Op3K|L)3LXj(3K<F&3LOd)3L6R+3LlCPiWrI%iX4g(iW-U*iXMs)iW!O(
ziXDm*iW`bog1-U!BOP=DUkPZu5<i~xto@_bh0=-Tf=w0><w5FRC~+!s8ocS4>vhcw
z`=YB#jcN#Acl(1{594F_pY(arPH9B`34DNiBggj0(ufWl6VGx5NF?#C{#~vGpBT0d
zg(t124k!kW^?j=>Vtv7Vj3zkV;XLKUKXc(^I{i3(83B*qsZBcqopgX7vcCGq<Vh9i
zw%)?herF+V0@N9|&6SLhYPZ_FdQ~g^Nfn5roN!&REr<O-o`Sgbmk~|S`WtnGwjIeJ
zw@0tm(K@K^y;g9WQj;X7YK{@ZjXNQ%ilu&djz}VG$at1H5Pftg-P`0_6jcrS8!OQE
zK*#9cVG}klco?=}nh-#UjThw|RWDUy-48w$2I{|6m`22W1`b5@*2K(ySl+z1g?9mm
z=v__JnVN&tVVaY^cIs@`KMag<NWB7tI19hT&=PNwUpemnyg<~7G<kXnhCqPP(rEz{
z4NCa$BEGjz5G)iZOf(b`82?H5M&dBl-AX@YJDMG?pGZgbK;r-=pRko{&A_~31gV9<
z0H^fFFAY{Kfq^boXDXo<uc-j|cF=b5gI^V?inq#h-e5f@h&9YDn$kgvH<5JRqmpZJ
z<nt-3ag1=58f!%oLYnVJjNpGUiIpU!29Y(RYE=$=oN|*~^oH>_3&V#MN8h0LGT_Fk
zDBhj?8?<kBVHyGb8&Zm=Jj#3Bz0{tN|AZJmG`z%rU$A4(Qd_cXijd<Tjy@iC;XvgD
zONheeSk^g5j?#=Xr|di0<*y=z;x@3D;oIpp9^3hq8pFF%7b<p>=X}wbk>`}+u`-c{
zsY5=A;8jI_{8CeaKS|W1T8dJJvo8E8K)Ds$Lapa-N6-)KoV9Dc)S|KPP~~K&3EK`X
zJBIys8qpb%gZqoU3YH|cH{_0S_fv5a3Kh*UM!n%^5B)?YWq)c|o4d+Habc44DQtO6
zYZa@Rmc;v^fWVMKSDql1DnOK;f&Pt5a^zs2^RFHk>&s|c?BxqnklR5hP7gKuQ3m-j
zoNc7HRreV1%;wy@fZax8r`-4k=J3nAe=B`3@lAwjcER-#f<6{^S1$Nzfptuo+c45!
zy=^=+XnBm`R(k(W6d`474~L7tV>3jVltH+*h^`FeG}=vU-aX2IEZOgn3Kao}w($b^
zkXp!d^v1Ug=4l6ni_$gUOm=8F@)cUxf8vdqqFq)T_oZ5yQo^ZdqxiH{XfSx&fx=ax
zq(8F@Fk$GYvAOMrx3CkSAaH3!nmA-wXUo8RD8z+!(m%KH`9V9<d3W#`fyVOAK*!y;
zb--=6>zZgjr{aBk{iA9j_lVhIyPjDy14-Iz#neB_-}-grqI~)G&1@j9vwAN2x;Ojt
z!J$hlmk;<M*rVn4gzxG6<(U0=+dT60df_N2kono^)t<}GpWSEhG5_`2`*n|T{om9|
zUsCw-9q5c;BFa<tS98q)FwpwiM%`C?(9Z9@o%(V8<@YKWz0a5^7-ApZ3kYL(QC_69
z6Kzpnlr6lMWODeFw-`&DK7jj@2beihB*8AdW!F0U?;lCG`&z#o8t_`a+(C2B63HO%
z1YTSF&*^(sKaRcR|32ukPWgO#9j{w+U>aNFXbJ3Hm|2nK92f`y5<k{XspjWjCAbWk
zcUQZL^7Eanx&ZQ=aE7gG$4|)n>XVZId*YJ52`i<pisJd5f=8t3Kg|hUt9AW++Vuz?
zCrcH;6NQHlqqiX9f%{73pT+IpP<LO&wu}20bJfc}yuKc<E>qQgOq!0uF4@T=WzU)2
z8K34)Zcjt^^XP{_{sgmyU_GEe7w|E3oBjIg(fC>n{{=VSXY`n7>C7sd?(cduj6A_w
z0?t@_!17b81OBIazwt*uHMUB+&gf-h;V9@51Pcdw6g^sJO15ofEW8KTh!JR=HikH%
z1&_5G?Q&v)0Yi*&M+0=b4>e+P6y>r_BhHu<*ewic9Fi6vRG`1p)*#5*511j0r9(Xl
zXo737zghYwVx%UcxaeW(%xDtOHQ@c?dP=TuyinRLCY-4pJUbj9IYN^U>G^y3_`sb4
zo)aP>$dH$zDm4l}9zTtq1W`Rgdy<dyq>|3)-ik@Yi<Sg5->OU_mgQ}qRznz#fDi;@
z43bwvstIViNd#^TPl;6ognThLkzHv<mgx>WZ>325=;&l^ERsh<Vo|UpD-E2=J*<v=
zRlyAx&(45GRDtm*w<uV<Lxz=IEpR4DUOScU+wcs->&1f9FlptIFRXSA(h2^)qmd2O
zjW7_BSIUMIy@1XqCJyh7cjF9VK*B<Y4lm<s6QseC5_x10J}<l>Ck=~v$ELfwI$)3s
z<%bs>eql7KK(j?T>O#t|Qdykr*CBf+f*4_qQ1Ii>0Ge!GSTc<W{8ACDA7F_u5<ixg
zy;%~LByuE>L8dWeVy6WKGRHu6gGz}AuY|lp;fSypkY_N<FpZkk3BPANAjacFd`90a
zrsC-f?r%Yn%_IXa8sriKgLJN90te4u@ZlPeZx%stRWb?4FyAvzWiZ{C{sa==EehF3
zc;n4KXLgCYkxZ6>3LcaKEhLQ6R3egR=wl6U`;PTNCrC??8M+j!D`}X}*=*$tpvYpJ
z<5|*XtLD=~AtyA2@~rFO2R|Rl%zr7kY^jjuro0^Tl3m5vN)1D%LHt1}7Q+8Es&7=B
zZXNNGAfklv7wK^p!M(w}Ah}<8kYneuzY2?5ZZyhk_CVL}kcWsC*oG2Zf{_VqaZu{?
zUJFEY%84qu2k~*hq@%IoF->;8+1aZdw(d_SeSsV4Qn&gKg(%@~2WEkC8K`0Sj_`?$
zD7>uUa>K1V*`TfHNu+>{9WM*}5$kbGpL3Bt_6LdpOzvwAtM6(T?u$@=+k*Cs5atYt
zvxTmzdgZiFyb&i4&|9Sf9Von^b*B(J2T79T)E8F+em;K<$C6pcJ?&|}ECjg_e>px6
zJ}ZTTo0fy$_zY%?gmFOh9g=Pmi^o%X>#Mw!krB`64Qf4yT%A-G5J8Jt`-KS}wII0%
zWhj<DQ@(ECgm+@vp^F8Xzid`R3%)Nx<_|{yFxh>G^^OIART6k|&ao4|s3yD-$%I)y
zFBcR$&&|s-LFgoE3SL3!*wueWP@qbseeV^xmx71>XM$g=(-<6`Q32dv${FshP0i1)
zi)_acg`&00x*wTVp^{}_FD#OnKDxZ$+$0<74Kx`2SL2cw;!`IZ!U9#+Tj5jLQhLVz
zcCe{<oJa{!LfftFGlkRXd>Ay{8nGrCxoj&0UAFeUqBGr+!QqQ0n3=E<cf@Wgc`+~1
zN5<e;bXsOpRFIzF6*-Ql!Y8as#>P9aPE%Rf@tuIb3*4LY+Q@Ko3=n7)S1r0|Px=+#
zdD(eh$<*io^Cs7dhOQYc$GUx5@Q0vHpjsa%J{Z8lgmfh*AFF?c^1tj4)r({xDuPoT
zKctfiu#=SJ+39Z)@@_Cn@cGLZ^tH6Gi{!>x*fh*Dm^Fh(O+>0t&|4DHnJuJySBcw5
zDZ$$~<5K&5yiqEJZNvZSj&hgPS>x*25MRI>Q7dE_JRz(sM~pMV7Vo|{*Tm5xAWgmq
z3kcU!4NDVb{{4b6|Gl+oJ`jAO4`QpTQET$&2cc|OMt(lC2KAI@=*F)r+lFKjo??bX
z0hWDtzxh4rkh1HH<%`DO7(SXFH^lBVS1LVq`q5uv(yD-WtAXQ!PvaaOoE)OLc~_-Y
zAxmhQ^CrnJq9&CzFfUCI2GBoWzD_PJ{y;MqkM6YQ)be@pV|8)z$gN51=Coq^7cVvF
z_D-pe@!oJ9%W?UNZ*tV`p({RdJtWFH1Jhib0`~n3QY=UaG6H&Mf)1>2*uY3<z^Wj!
zlfqnH1A-p0=cT7#<}b`@eRit?p%1px@bzVa@X8p$i9SZo^{Lm>g|)lKqbC<=NTA$G
zqyIW7wHZ3SX1ez>Z0@?zzMh?fxHo7l`;;G5%o7s1C;|>Lya{CJKo}h^WMu^weWIwm
z417H@QlMsFmc!=vUu!wjBOxkng}5=z3aqh%T@sQyq4%|TtI>@TiK~fqxT>~)j@Mbo
zh6x5`b*0mA84TP>joNwF0~PvrYk*z4NdONOc*%sy1enI^Y+0b*TxC4!dL(86Yo&1$
z1w_;6Y6heX|1YPB%GiM**YF8~K2jx1OJM^KKEtp9Z*wF<F|AJ4%-)ZUL;r9|Ba5D`
zVK~|p+zwoB4X=J86&xQvs(m~*46zjwu(IH8a$Q=bkV}MI0U_yPp^MdARscLDeEE+N
z3vL2^4BNAIz7S=S={R;N`BoM8Z}kcxw#Z_kzGX)DexGs>6KXYToOi~PX@PlPp)UrX
zCFmC1!bvYb7uM~C6qZ5zt<KRu$r;%WW63P3rgl51JP${gr+Zdi+6*2|L^=7?I@)-6
zGao9x3)Kicf8QBE6!mQa27yCj0B)A^{INQ^c%<w8&#Ox-*IKRAp4;lJIukT6%LGAH
z5Ttz8^$)@zi+9QL{RJxF_}Rk`tJc;3{Cm9NlWjPkrWa%W(PwzTU|e+QbWYQZhNzGU
zMo9AbbZijSr~5wP%Tcx#Z#SqjFc9ePXYw;Dx5x+fpT4~?ik%Z7$pMgU`;lmNTxD30
z7QoF7sgAQ@a!;MFZ_X2sQ#3(}dE0zq<@8f;<=hL4JbTjLtHzPb{;L1zd(`h}PSv5K
zTp;XXp@k{4SoqwkBljE4D>deyR#Q?v>w^0F24?PGUrn0FOu?Q~AH4snNw^*~;-@`b
z5+C&SF|$#h?@u+4*Z{s`aZq|hjnqN6&O|xTx%B@A46jCW@0Hl!urSwX6Q1ChVEP5A
z{4ct)A=4~RRL1=w(JM-W!JD+~y5Y(;|87{{!ih#889?$=Rak5k!FdmzHS+1GZz0_=
znN+d_d9|3^O{-znXtfa_nybjwpsVbTtob$b^BDXI_w4Rjtpz}19f{b};aGM^txXzz
z%MQY6(Wo4-LmF=SXRFPU6rj$ZQ9fJbGfVCZK-#Y9YkY6M9;Z|T{=2d0;_rKDU%Rkt
z%*~%+-s(K``8gg<SGPJ5X0rveVSlYTvgK$(U@_*E9R3(Kma5RT`Xf3gO60NvrLj<J
zlg!?AD)hnmP6R-~5}BXzNd2G=0`93PzWm8J%QOjfu+Lq{<A=@g!W0wKQqXt`W0qv#
z+dXJ2Q_tw!NQj~`aF!L_FA$v?1@!Y6+P}DR>kYadj~<<{g+7*g;|8dSLeFJvOigcn
zI{aN<7YXa<Ecy!55gSkYE@76ch9-Xqph6^1ik)=p5CDkBA<`6l`mb=HGL=}@MmJrn
zgRzt!9bN<FR<aC+m5ozwxJ`MX-sX7|O$CcTNtujh*GDY2g-nJ8@5Zf=4-*a6%QSRn
zAs23x_l<zRg4OaL#tM4R1ip*SgVU7`X}sz<&VgbOlK<7X+Akm(vMP?O1@+CCPYA*C
zO~&_L90FF}|DBn{A9deru%|J&rnE-#f&KFf5H1f=@NN(#^=|!PMC&l`;~p23TQ?0e
zAnNhyn-lCYZ~sO>u=CkDe|YNgYSY7=?Z{k#y!M#=I+9I@92zif19K#-Rl%%dR8jGp
zO8~nUTA-0i7aOZQ!z<26l{8DWTY#qdjhw>eumj-9?CULfx9Jk-<O*mu$iHHd$;mbu
zV2jTMSAhJKe!oY#yM_se;$3*@T^b_MCR#51v@+L*7AXu0AfYLR%kGh$3+FPJnf^s*
zm@H_8J!w>C0H=SucFXccvy9<bCO^C|>xu(Kn7aHp-+(@Xz}4mbufRa%>)C!V%61@5
zi3!NM>4(dD=HnJ+{K0+vAkB??y^X^{S;glvIm<L6oxu>~Op)>GLB*fqmxnN?lR<Ne
ziu~(sx{x&wX?w4|xTCiwY85<eW;*QVV-B;1_Q*jcx#k0zG~xAiig?N6zdN_xxB)2n
zs+1laQCEYPdb5gYHs|c)*dMOK<5uc)p8dcIzj)zu&~~7uy9_*e2+->1-?0|5{lpi)
zxc*0l;ENO%xuz&>=59=7EJ;wYJ(?ZCRZ<~PgFNQP?Tc(JWO3;aLgV3B4XSz38DD4U
zZQ?<9$W#S!tT8zd^)siMRh}6L1GadiITBf7Y%gL~A|hw>%fpK%DQv$S^?z$|Ws^Xu
z2V$qL{hz=s*}ws^rkGo}pUb%N$%9*}MJdaSmv}!F1@1jZKmT-H&ds&mUxH=n_r)R4
z5PDCiZplg_JP5+|?8zZfv>yPogZ#Nr4+aMqI%xiinhB>ckg1!&pQ*D?gij3C{dtay
zU3IJXzfbk~i{-%6Qd=`q`Yh(SCClY*L6bir*&F@nFK9lfo#tVZ{sC$(AD+%i{)1Mj
zdY%Q>r=$X0&F?-t87k#Z`Dde{0qOHk8?gqyKW%<=)}&s5J3s=mhEh*JkokBzsFVPD
zc+fTeH-c}3--x~ue<S%u`i<-x`8SGhl;5bnQGcWPM*EHK8~rziZ;aoVzA=Ae`NsN<
z?Hl_yj&DD{{rtxHjq4ltH=b|2-}t`qe-rp7_)X}W@HdffqTj^6iGP#$CizY3oAfuC
zZ?fOyzR7=6_@?+x>6`L5m2axw)V`^I)A*+OP3xQXH=S>~-}Juee>3=I_|52>@i&ui
zrr*rInSZnRX8FzPoAo!FZ?@m;zS)0s_~!V{sXgf0*-{^jle_&)&SeV{5Eji?G#C#n
zCUZ<d9G$ue`^j6;%La>&3O-m;F<iZ$bh1o~syl--)@aShF)mk1*;0?a%oLm@rZ%fJ
z{*d+q--5C1u}=&0ym?SxqiuL;oym2$1ReLc8ye~t?*5uFqw>009R2&k9ECajNeLL|
z`C9C*`&|fuWk&{~O1Q!uu+qK}a&hd5v+~dYw%JGF&w&An#2tCcH3#!i#@3}=VEHR(
zxqQVhcM>(z{`w%It($z(Bb%UZFJ?D<k!<$!Z8Ry#sQ7ov=t1OjpE7jQo<<bcWJSR|
z6>AFp`iv7BlkBQITQ!{Q9!d0M@-y03>$n@$*@Mes*z1%y>F$R(;7wH=Eh8sypGK5d
zUe89&+VeZLVo)Lt&<9v_-Bn9GODv>!EXUF@;#X9ymoag%VYR9q*`@OcjCHu2F|XO6
z3QxUR3W^DCy0t=94-SSycmaeb3@)`Jq{L`p$MdFN>P4R_h0<A6K@t55$eQ!1>2d*-
z61mD*%Y#=JT2R|SOs$h5W2Tz<#6%OSsZTJ$KKPV`CBB=3iv@NRhsi3NXS(7E{t$fg
zpZ%}~(Qpi+%T{3FjnRh{C#w*j_3D>=m_a6aWdAm0XgbefE~sItnX6T!zQvre0B^He
zMK|3vZjTAh^0~4Q%hKYISSkL>ot*tdW3dXsN;awUkqZqFmyb&@3IFm#*?Lzs6?8wL
zvX24upPGS^rZ7aRD?iQYsv33M^DBe!s!axeC}u@HB${p9LaZREvW2l+<;uw271f%$
zd&V0@abc<(?n`eQ-B^Sy?e(KL7K5<|L9kn~%}p5T9Tlz-ed_UFxdS_iQayer){sq|
z+MM6f9~1XLvCWjM3HH4LRf?K(iEX^l+j4o)k^Zmx<3{Zgd3fKE0AZn;YE*SJ-ISDt
z-brUSd;l(zLRxg(X&XnIu-H$Q$9-LBb!1jBYfW|A2f9!bmjY#VE?kswYA1=d0%-z;
zHp<}vFA|F2q9B4%xM15Cff9AtL3-i6X^8-tQ7Rsgg*9hF>ZDdJ)@{1KUuwkT-j3gW
zb`1YT9X8Zg!gDICRU;p6h&)rrwEX6Nk{{kj7?3u2)ER=@SK{_!CE>{$8TIRmDOI|K
zsV!3_frv)DQ^b5?-Zn>RCA5hmg=Rv2RSR2l9jnU-w_+pDx1(88a9tG?d<uHcHI#W5
z5n2yGUm6u6TviQgc}IU@P_ljeuYyID71IgVU_`mFwS%=ky34wuPQ|}X8r>=#(}lBX
zG%K3Smc?5-HY2KruVmcjdHn2SFS9z158nf3ZR%BZ_le%Ek^sKMb@MY4p6^+DHHPdY
z&MyAw)*6OdUKoi^ZAi&|x9vaUT<eq$xvGDFi=n7?BgqQtv5p4(<8KRQXBuDW?oE9e
z!Oie6db3B}1GRo3fs;q$<1`<?#EJP5o6Bo93=tfg4U^n2$}mv{<SR-eIGew0buudd
zYPc}Hc=O~{oU?Pvg;dGssW4^u1>BI2MDzZ|$`qA3<Pr~YrHs?}&>NRiz5Md_z7+@n
z!o7`9N?HTb174pG4e&h<CUv52#3CfM7yoSq_(UE6<Xu7)r(oh#cFOwv4FbK2^ooVo
z%9OBlB&@bMBei)9NIvVU08<j!p&BQVM?P_m*Sf(a&xQ&T^4K#X<*>?UT?9WjfH8}6
z5a|@kli*SsLdkPEnc3nn+61+Ev(yf7P2wd_q$=r)VKPzkIASVH%!G@58bEyL^HhY*
z`%d;<$p|oc(U%gaqhX05=WiRn_6k5T!Je&?@&ubvPGO4=Oi}3hGD@ZN&k2)vMdy>1
z<LsGaoog`Vg?C01Gf}^bqURi-dFW>ci6L+^md+HfPoO{yeUeAevXWd;QM&-D(6F7q
zA})79#=@l<X;6`_S%cu~&h7J_;8j@S!@~mGY2(fPV{_v05(njy>4Xoq_M;D?_w<z{
zgX8>frHH8B+}UaQ;1!7twiU`4I@rSY5>S7o;~H-q_}|KU=YJW<O!=<&Fj94SrF_*}
zW;>=i{!=vLsCbgBOmVrk`2h>84?4}s_HM4$8Y^E+Kwi}wAafR6#$7>(vrTG^!kSIa
zVYEuvxMdgBmXZ=UCWIUZT<Q$qIV$wnvag82bX7&pOL^s9dyE(6n;*SjLKKgTR{xwk
z9>O}=VYkh(Jx<@0aI8=5Q;B%R6Uh&XU4PR6n#yv|Yz&{=-A(POCMJNA<$vj4db}{a
zKeTG-0~2d@<zdNMuJtl&RL4BpH>4eGt`^)c@jD47XS*r;DGa5zV`_XcKi`@**hTH@
zh{iT;vnMV%%wV5--n^Lg><4?zwydCQ0`wI8mA{a8*mgD!XLu<al&DQh;56&SPQQv0
zmdWze^zN5v8Cj1z5)SS2F`LfNKKNYw;+Bh;4Q169G$$E3Yf${x^wKIMe!a=)*!;4Q
zf$zj}v=5;x>}Y*C5TwV!taQdv`G<Df=L71|d8A{g=Q=`gv=%D~vD$b0!h`2J`|#D0
zsBfKE_n{eIB%8|jc`W#W4^@U9k&Y^8h8`}i<I*m!<9g8nu(JOU5P)-ab1^rzhx7WE
zs@XBS&V_RIO#1@%ckUeo0&~D2SRT7yzaflqsxp}5dix>=jq+WQ00%<e<?7W!Dl>l+
z7hcdZij%Uv@FzPE9;?XGJMpqq`+Tp6o<y7#U6_!Ov1lYqGc)}2_t`XU8B2?j^2vJN
zwkaF%#bT%d{D*9L|HPW{v*n_hdpq{t8b$!j@HS*_CdbiG65phWloLNGtg#>F&jdBE
z&biUlmhlq{T}*XOs8Sh@k%H!qWF80i#vJIYc-&-^{eeCorF?%X`!wX}^jC8>!NTS%
z!Sg~9fx3tUZ}fCWyCx;dBXB%-lz%VEL5nx>n=3Q};QzJ1^b28tm(nsk15VQPp1bP$
z&&0s?!rP$$H}o$qB{(w<UzX({S*$PKoQc5p_*pK_mK3Q}`h;>Lg)L+ztBqvrYdW}@
z9r;L>{_J4qx_|?91GlioDXC<NU)V=e?vi1wP3LD!d>&E72|fxMjYU}Ca8KBBBQY^4
zlhs+rzzXL5Pgd+@a%9{IIy9og<??8j&1H0~&<@H&WrQYPfOEZe9y4!B9-)!HRFxU~
zuHix?%QCC>;IJeUgkU&>65WQFJDD<=t9^D2_qO0fg~OiKU_tF{CrRo_RzSppr!Y}~
z-mc{@*$!eM_Vqd-)E0Kuatk(8jNSlk*?5ZwRMC^!QWXll@jL}4C&j#(CdzD$blTJ;
z7WLZhs*P^rX^)IgOGHUTo#_`)qo@p*h_|pAq|GAL-P7HRFU+NtXRAqTFlHz|Kr2RJ
zpH;tb*0bUE=GY5*uM6i~o^p@B5#eKc-jCzqWCj<ll6s2HyW*&jOW<q?>G_s>C7W;n
z9$89&Xb$EjTy&HcuN3^g4^=>uSk$CC*`JahdYX}i=@QOqIm#MoTWV4F-I+5U3;c~8
z6bmVX7<l}ovvf2uCYo2BWU8~l&`I*Fn*YWEm76c{W=-e+Dy%@qh;pcQUXUuA0Vi(`
zRfAF;y>*{bic5pqWM10E@|s)jk~l<w*6|fZJ>$F%f{o3785*fh&Yev#t(usmg|uoZ
zJcXP5swZUr-^Fam@v}R!An_s>6lvog2jj9Ha+4+!rs_(0)AGlWIC{Lhf89S2r5774
z)PnrbLDvN6=j{w{PJ`UTrjlioeWKos>_gIn$FMw;CA7`;N~{L~-$E*oD1vricfJKN
z`OL6w*DjwQLkg{(`-%LTcQXyNH_vuuaZuE+gw``@DEf)NGDWb1-Dff7;O@RD-nM35
zB|eie$5TesdhX8P-vYDGHU_QH-a#&+3$GojovEbtC%r?Y&G{{w8y^au8{VM{h7G0!
z<>xV7@VU}2a`eXDgC|t)v~o?Lb;N@tfK&CMLbyvzu89vbF-?QM!|TPw&xiRb9#eD3
zu_}}{PMxf)x62R7Gf2rw7yHy&085owwu}CnkMGBw3_WMed{}t1_=l9Ax`&&rCv98p
zA<VU`Vj<xeGlRFu*RE+)UQgEwWgxzQOg1;B;jZrTxh6&cqkvzu|LZv<;87-k`2UMi
zIuWiL4Zz9yzsu1jen%Wb2jjEm1M;+1yIOw%IQSFTEP|W`*U6tm@Grn5l8jcSw5~2o
z-;@vsIreHnSh*Xy=TD#FTgjcEf7B7i&|PNQpG!mUo%D}a>VN=LVC7oSKmWfMZ2!eK
z*W0a}-u&|TL-tj-xA`-6T>rOT;OkR%%_<d<6ga;Rzom<Z$Q6X`V}5y06jas*=C-G7
z!bjBU;*T<S?k2m*tD4`dR2L%T9cYVJz@BP$pKBc~gr?R&cEAosc_*VRMau|=PO5#(
zerd(U#Bnk{MtJ21YW|j~6sLVwnmo?G((dcwALBc`YZNdg>^*Df+-Xe(y7p^ovvVez
z=k5i2zkJ^AJxlxY7q$;c@##Ki$a7j}f1kv3KOMe*C_5P4mAaL+_}n<x?Mn9To_q}H
z-@Hin&HCz@I(2_sf{X}rxlK#0{RwBy|Hni_kO@(DxBFq-!%V&+b1w3AM~LpCl8Oo1
zfsx35J6Vk6ot|Kc6b3H_gcV>zjo{~wz28Oj1#zicvvTDrL2=9z8gu#oJ>*Sd(fDPn
z-l%ytTV9ya^gx*fihvvb?8&sa`Q(+Nm!zH|D@-hK8|l^w8Z#|mGy}~l+NF5RXI*uQ
z356uqB5&3bEjM=4DvNX`Bi2Hz0Ev|a2F;htG@H)*UT;AX=&Cvlywqv(Bt87xz=<4`
zj=w90dN=BS07<7GX2|pqo)}I<WZH!dF>6yk8iVYsU;e<%V1ZtQ>Q)|4onM=q*0Ue4
z;1&i`4Z=DHAJef$vc{e+kwK`wRM^^$3~p(7t{rJMa^#stFe#}Ds^iic+>LvJyhO+W
zxZfYbCLwOLAi*|)As9W7Ch=f{8}t+1#UMn{s=U!{-hToK9YhvX2+Bt~%5xa1N0DsF
za3J+rZbAI8_;8TC<2FI;$wUm=DpE~~E3=zH^OTGTI8r0SfuQLQUPe!%JBVyR;tG~^
zUF7viAPD~v;e4#*1YAi^l3KlLYTy?h1+H3hh2kAv>E1o?>eNN+m{YrVaL<aG=*szF
zfYL~2lWECQDjX=(e4Pr;GvfSn;e;j%Q-uOKbOB6nw!mHEw@hYba%~XEyEb2i?nhJ`
zX3a7J)iz;o(L5at*(?!RBDMa|>5+&96FTgJh?uj7CIjaWJ8?$$7<NOA3d}zw6#vN-
zo1v}PK4pjj8$VpyOxRE-y)MI=!pY_7V=h!+Hgq8~p9m8-qb^-d90@k5VbwQ7*7OSH
z^pB)}?t9^K1frC`JGH@y6rZ(w{&tT#D7C%_c6KTO$;F-U9w?jSZgi>tw`{bD!x5pw
zMIAm&LS0Hn%_59j0=rAV-D2fr&K#g*`3D>N^G}65@M|8A;asCYMKdM{E)Ea1t}~DN
zx5$BU!ESrv02<b7B@Y^HWG6f(T3+DF+Opnt@?obW{983M^|~4IQRX#k=1w0{>Ckn~
z!_^ckU>{)Z5=`79m}dmFln;q6y_+{q)e6#3ce~u!AwSl}x#`C0>KasWN=8OO--KS^
zh-h94TpKL)t3!ma^1-{|hK-|G*{u7^y=rZhXFaCj(*M@i8W?QHNeT-D%kn6aO(f-N
z_;nZ51T&Zj8zY=yO&Q^g9-)-)jfE$MC6msnta@ptsy5pR)7Gg3rg?SBu$5SJSfOc6
z8n%OCm;?*7)C`D~?dM*_cPJK>B$C80Nu2ZnaUKy5Mm{`uPWm9oIZKdEzXlz9pR}_3
zqxDYNy4&!K_txnWbY)Q!D!9_Z*p1{SNuqR<`X!lfAq9TV78Uoka@0q<QLMC&8>NoV
zf`YNCAH3TM)kD;mWn&(jF2gqLpo-fHQ<FLE*92V&d#aElxg~G?6+1<iG9n-H9m$*p
z1htgC_GDrnb??+I#V;pT12aJCu?~I}Ya13386PePG{e*VlZ9Vfhno)O+Z!=oTXoog
z>8?SuL!U(Sfz0TQ42S)DPdVX%T|eJ~ugf{TY~|<=H@J`GOO)*VPcW$#sTWn5Dqm9+
zV{J}sl7g7<H4f^d+DAtgoG8bo8^PlkFm}xdof$3heB{?^94wD>_#QCu4jn;76Jo_o
z4_fHSo|$4*3fMcqWIG>85!h73i{Ok6dm-ML?s<S8%AdZPdzy<D82)sr5;@01yoR-^
z)yyaD*axk}#%!_uTq=08Bt*Gs%iavMYL6Gk37M%15p2}%;UdpzM8m&~yTb-9HnY+8
z_rSfq#7+J=@8UoyuPLm9c%q8MKGAc;2C7EQLN*X{E)lVXOF$*+OW<JsP28o@Qprp=
z<A&icY6q=C##aeufu6&{BA~znDd+z&Ms>tkrG76iZHkfhSF<Rz6c&>h)_R&QigaIy
zl`}jMf<ie#r%CkOSiM#Q(w!E7HS4vpo{DT!m;liYIic>33jo$sJ<2TzI~u;zft#IU
zoz7;Je^13OiQWhHe(`$8U>9F}bYYUpYw=OtJ9i;ii7a9NY$IOX^x;TMBG4-)C<jD%
zpepOF*TLgK$eQed;l@L!>>LS7yUE6i>W_XA$CR{0q0KxVRul_)`w5V{xtfXB=#%2W
zn-On)@nY8-jB5s6{1KwF^dAo0*KJ$!<<={c<1<8jx6)F`xzs+GI6^BUajI1p62a*o
z#};?Qq69Oh_V?u~QnBFbCw)yE+~oV8>&A+$U~s0y*L1P(gLby)ZTdC(612w<m5?Bu
zB1&A&yf!xAk5rzC)vSOE<~*EgF3%F=04FYpDZ|r)7g%H$z3;+Zl-d?-#8C7*A=$Ew
z>RM(bL6J&W)<#-J@g*p-s^%91;Yd$gh*>C<fdrFFwI6ub*^CdnCjNf{&XffW+M?Gq
zU%ejJh<LD6_QKVh36^ri?=8{JrOCU39icp}C2X4H^ChNiSYE)mABNp#DlEUojpV-b
zbq(vG^ZCV-k|N48K5Q*&)#NDISxTEHZt>^P$9b;Fc3el~SNXp_%__qGI92Sg7t8en
z=6Rbopy>)l3ZnKN$JRV93mt#Tn&$kFHQg`{{^uL~R76VDa9%WY4e>{#kg_f`oPT~(
zwl+@N)l!&2HZ}=pvYp0_+oATbbL+ZkgzcY+T#?P(u*<-GZ_+moAI_6_qOwf;K>RQ3
z1>f{CF6X!LpC07~3#&(Ex3OJG6l1CNTYQPe(X(geizQ^4dn?uSJ;wT&QvGA+sVZ3+
z_N8_2Lt|aA7PlENT=u_xf!b-CJhdHBRL8~DaL1S=$(*|Y2}VA}6s`xi*ZnW|H{qPn
zuFlSBjb2X7acpL!+s)+Pxp7HpJi_W{D)~hjV3P}3|8a-onb_*Fdr@foh-q9eMsAJ1
zUyZG9u-^7?<Y!8zF3fFEZT_G#lwoYb*S5anfi`dJ3us!;EFpJZty(=un;-{A)$1kS
z+4}AcUN${|urlslF3&-CR7~Gr<uhKR512|E^qOW!U1ayOn47p)NVaiYrG-c45e5=v
zG7?T0^!inlx=H16mzR88@AC3}>#F@Mv+{HU)wNn9=LS;4X>i_)nfSs4(tjm7mi{Ve
z3?XiI^TG3AhLX9loZElU1F9=^EO;`(y39ARKkKJ~zAMV#GT93nz3?6PJaQQ1Be0v*
zK5-6jn%BrW?U}sR_hrKtW)?9ocA_oUk6Tu*7hl}-sg7Xwy91CsyfK#t(m86}BNlEd
zMUd=dkJ9emUWPwD9apqmw;tZU{^Ax3sOu>ZFO<xQ<HzJQtE&BrU;lav{{oQ^gb#!>
zcQA8J#}YI{O2?vbqXsyB{-4ggR%arPf)lA{PV)d+P3s*D<BlcJ-pB!bX(mHdoJrty
z=c_M9ED@tLV!U+I%1km%B!z}4KKkzASvp_swOnx_$7Eb~vV6+WeCPS@6<x3|x^Mk{
z+pyd);16|e`b7`7|E8if>sr1*i%!x)dHp#tkU#0;>rurwbopT{S4Cdkq@0?#n#Y=Y
zZO%ZGg?d&&Ppm6IAD<=SOFt+3y0gy1Ucy7Zg6mGPYo)!Jp1H8IO6Lv3G3h%x|NB<6
z1eUK|h36l*2jTYS4MDHUJ$@|j(lKX1AE}{ve8M?Tm<;=~?J*bC(G=KrT>vB%863?9
z@E*(%cPFwr`}O{&xFDj})OvV|bqr<$uHc2Q>DKVdiEzdc3T~p6_~`djKGysrSZ#7M
z^{$i8(R`ct;{9Bc9RZ-j*TwE<5x7IM<MDqn(Ix$1kn)sT!AB@?*^v=P*F~fH>ukNV
zcj$U6?fNkKorzeL>xShI2U1`(eXqMaAb~ryW?!1w<<K^)&lauH=xlj)SkMV0v|_oS
zs@>-&2&mmwvspy_UY4<|zz?98OY;;zE<0%_7&?<JEpIQY(`u<Ftke6CDM!cMy83MN
z=s>eX#uUq*y=rmfK72+!y1+l)p?GykJAIkP_$Wwk?$#B<KD*|QoA^%&VywR`KzP`9
zEpvDavV(lkj5UTf6LGS(teY^J!;Z(1vz~9v(VA+6IRi$f=XCP(pmx7z;_GcTP$?bS
z0Wu)sKdnu8SOK|)gWByE*cS>76;tF{&|dMBtK>}#6r{8)<tPeB8nhfS`WN_xkpI~1
z!OIXryLWoIrcMKJ{z5ceIR2TO0mk2y8Ta7HxCY^FsgQFMpZ;Qcl1@a5a}fK34GNs#
z7{h)n)evvR%uf-*Hg{IRt0dfD!!N$tytHMuYl6Vc3^Tt>&uk1lTzBI+3xQ6(8Y6#o
ztQneCaF}4+Kqkx=v12;2J(?<qHK>e0=|Qp<=3x?ydwAlj)8riUxP<Ch0WKt%MHl@q
z(<Sv1(GhMaP0vfiGDaL>iGirihcIZP&?#=ltO_fX`+G^*#d6A#vtvsG%v+_Icw%rl
zzo#&A@c|VfmOFwNX{lFtp-~*hc@QX~BH?`t%w9fGxol_a|LQf9W}E{w(ReXMM}*o-
zLU9d#haIO#FpesQ#x_pY0fVljWVn8#k=s<EvE=q_f~Q;%I4+S3!%x4RXx3BpFb>`D
z({LUGBr#NQ*!_wv@vUZWJ7Zi8<R%44Or=*L(8Y*WAXShyRCvgnwtkHkcaLtMMD};{
zx>e^fiHru=<?p)V;+Uo<{CQ`?fsw@B5R=~V;mScQJ;Z6QHHU*d0AzDQx5IpiqR~&z
z^`68-NUwWm^yT7QSBtTQ@$^upUa!sqyBxIO21uy5;TkEQaoSb2S$f%LXfiev@F~bl
zhM|kK7J`|6n>07Rd%>+<zay%`S_Bog%ZsD^N8mZYkk+%cC#+kVpgRv$vcfO=gv7SD
zf}As$G=yw)BlMz*1Q3wx6apq;`XHT$@+fb08L~kjlgE?4$ZKnU!keA&!9ie?UIeiN
zz8Gi-R3--UpU@AZ>5nE;TDzD2JqV$KV<?`K56C-H%GqFCT}D;{KV1tCtMpmkIcGL>
z`i5V?NsUM@tgDCIUc`s2j$vlhWrOPc`0f*Jg0XZ6*Twcd0r~W#tq}gt**r@^7H|ek
zsEhOl3kQZ0Q7nT+q!LNBM3>rsd{hr|G!GT}`tkHe3GSdtzgG#&IS0qeF-3Ay%aH!I
zjT2=1l8ehTJ3)jYOs`ccLh^>$7n9WVESBdW;YuO|j-+Zg+M?c`qLf$OROutl)oi@A
zH)4W7FSU#n14LAdf|tf@M1(Cb(+-P9wg3K3sT%W5`zh&aRg2&L`>$wkS;uuATf7SU
zym)kk1aaM!qG4ic9t8yKi7;O$oNh@4_u0Y6ubg+}nBYys56P*?Jwf{TIn@B7kQWwb
z_@LpnjDE_<12k%|X_^`wCGPZ%u;{2qMT6m1M(xwq5g5=K(=JBQu@!~z`CRf||KJWO
zHONBq@7nsgyPW@UQP=&Sa^KbDIZ=xPL%TYh+{5T->=r_9{Zs+5;+wKoFy1K@%+=q3
zC(gv5oE1)apo1{_I8vV27WF>X9kJu4`~>3Hh~4x^0uxiJXMg^40kft7ZCFB#t?MHl
z673|>1ObSXq2A@$SEneWqzAMXT7S4~7J9U8Ec0D$DHE+l+ZT!?HVJP#iT}J)3f>4?
zn!&)d>_-~DDNEd24W$iqxpDJ$co@_m6GH4bD)Z%`uzLrMt=IA}-VS#iGG>?@`e|2S
z@4axCAzBNYX-86(?%0^1pdB4y%c9|9Ai32(5(~hAkCBYnL(N3OwS}!k4LZ2sFWNzQ
zwhUIaRr95uoc@VG6(D6^S}aM0zl3mH!LHjN@vGS{)8NfKRz|=1>vD8Mn-vV|xaM=U
zQE?pbd-(}=Fb>;`3n+gr9s6jw7<lA)m0iMdHcCV@%BE8quuti<i(L<o392Hk_sy>i
zxC5XwQ$5}}ySuE|H`&F;$;m7N$|@(qn#b8*e9$he{}9XlU~R-15Bld;+C~s+nTiWF
z#2pi8SPfjQB!2Sr9InLD-`IAa-Dshh8_2$SsN9i}&u|k!iUasdQ+0&*3b$$)01jSE
zMLmU8xV)!8_j2yDx6GiBW(qY_7HKQ&96-^+pqGx1FDz(d_o8ohU(<C%M0GB@*($Th
zGtj#GSSm17Fn1%A-yFp!c}@5ud#;XsoK@~w(VKEv*+-!OX1CHRM&Tn1f+lBt5mn)B
z4!?nVBEw*XIQh!4I~Z18<M37AT+@7_fKjO9a?GFNCE8Ywa{GF_{|>jc!Qz%20no0$
zx*S2ZGjHLm5n?JL2Duqcq-k*wy%<5qy+OPtsKlUReK7zyu3M%1Io$utGVC+?4L+j4
zxrcglYrcRGke&Y_=4}nJp#8uwf<X5f5&lLtJHDvp@534eGmlkvcH4<;D|ookRw_1*
z)1H%Hzy60s9AITwRBWzWM@mBU2Fl|uLR5D~#p3kRzyKV!b*!-=FVz0AV_xb726Q6f
z6<jIir40$QvdFO%vPMEd7TJwQTv(q)4I;{@d0-Fg-(;AAIevXwHS0h<gw8!QDB@tk
zd|%m!hsb^gGH&7_>vF>Nn`NJZ=;j51Iez9~-a^S|3ASgRV@YL`{U@t~@V4Xu+A)Di
zCPUo2B2+*@H&5?B|5Hxn`>i`2t<ahZ55VWXyV~AHlrLYPNLu#quYgS@vi2>Gk+1jq
zFK`9}Sif{oL{Ic~fYGhs6^!jiIw`d~Ht^TU5M(HvBw5%6e!iUqdP-Iy#OOZ&RvTWu
zh(b5FfONb_Yvdp2<BjQj2p!-PVG%(ZPmA1sZN979@n6|_wwJ*cfbjQVfy$AwfR#I*
z2|xW;!RW=H6B~Ez-;t<?DaY-pN#-vEfa4`!@E3F6Khk*a3>H5==-R;yc{~M;aDa7~
z!*An@kN&*7iIo0ay@TkmDLwi2tR{s?_DuV#Os_)^y{GZ7ehc%n5v&K@v(i<g9_I()
z!^l$4f05Vcotls#Q<zN`2xT>9!z!erg~R7E!mpPZaQi7$p}$2Ui?_o@wG1#9Q@hfp
zP;|_vA+I12^{y0n^)}W2!hoR~{0F?f_`ke0qVY#4AnU}h`Kp?yOC<Xz=E$1f$h%;1
zBUI{zv1gyD)+|8>z^zQeUj=c-M^|T0s;EIYDBbW!xvbci7I`gJiKIA#md8g=N?<G-
zvy%F7VIbAu)rpmimXh6JBucg|;WP%z-7Xn9wq(uc{gXzQMpl4u&vhekbp|4nJ&Ngn
zB3CKV8M>u{pg3AW=?(u#kkGzAtgA~;R=Aa;Xcjpjy9s2b<Gz)cst}rk>rl_2c!@`^
zZ@@f(_^aSYa$Ip|gL@liJMF7ZE5aI=@sd-;PK|+Zv6|N-p^PdeFz0htDTA*jZpbZk
z^=emA@zP7?hz#+J0(CN8a1PuPwv?p3X=eto+JTQ68lRYJv!+T$KWUkYQ{-*NUS+=Y
z6d^1n7gRBm^&LcyTJ1`y2mh{rEi#rTAsEL!wVVunh-_*f9VzFi!?NsiHQ7+#H$#AT
zCWT|nDaFm941$8I+~Klsr(E~vc%nra+LA=wF;&$!*3d-Nz;xYgJp{Zdzc@Ayxa^je
z=YJ|vKG;EdP`995fK6HEM6h_q2_<pcy~S7#5g>6DryxYD>J0xA=%VQ~&OfI)Y45Hv
zS`s!2<?~-(#o(6bmr{`!cit<I>!`B19IY_VW8>-h;k<=ALTmKW2}v#4qC^Jb8Ty&X
z^42vk7e?QhkA`c}i3f0kne!1_xR3im(U30o$I+YjzrD#QLrS@DR*5B;iO*WFF2Xly
zyTLC6vdS~g*zxEvVzlrk?KbX2-BpIcNlxHA^Borpt7J)W`sJmQMl}+`IZDyLv+r0P
zGgV=gh$U0C&YyvIRQQCd^@VC#nDHpQK&WMv!9%d0lOZQ-(E{xW{qrN9Lk1KRluaLG
z__?CT=Uu7lBfb<21!15j=MN)m_ja1gJGY1j)*p{#erE)n2%wsoo_;p1YDrHr8O;&m
zvCc|o!$I!&=l`skQR=898qfnWD&|IV5lcU*pW|&-KF`;aNNrq(M-L>lt&N=yd&+Vt
zv;xqOuFd$-bb;3W2=yvgZ4<b&$%N2eM~owow8y2EIboJF0e*3R4t~(1nFIWeKp~`Y
z>xt9M$ydKji-EZEPo4%abN4H_$%i&>kpcmLv`kYvj*Q3d;uCSt%VKl-iJ3w~z`W_|
zBS-_GQqVOXLg@fIp{=Yg8Mb;;7(#tHmDsy<+fS>{3xK19P_##IZovgL_qXP0#ak=U
z=fI)l;Jez;X}LRyxBcm6P7hk|gH3IUNq}bH1z~b}5vtV3^y{QV5la+?@(=N%X9*5i
z6VlHs6=StK|DtF>b=0#NVb@kzYjfjNbL(@X(CPePOI+7n)|K?+Q`NCL;kd#sP{laQ
zRMwX84seilLuXXp(OM_5_%dbgnaPZSf8>_wIWy1@lO#_vYR0YO`dN<6_y986;`02k
zwRz6u>h_=Wv1;I$*?5X}E#t-&l0OVp3x7!o4&`iZUY~-Wk=7rTmcg3b@t5o2Qq)&3
zR+HesTpi7h0?g@C8BNKtX=3Oc@$=jV7o5g*Ou+SL3q;N_6#?E^mbKk-?{T-0>k4mR
zalegh_|I#6JURr=rJguf4||<#N%^UaFw2t5X*ox%t=JdBR~alBWc#M(f-H`+6gLnB
z{M_~@NK{4Iz!;4)8Xlocz3`OdtR^Pv>s`r?7L2m(e1nJ7n%lIqVeANF<gtywA0?b>
zqyW?d!5r3Ut=z}WQcTDo>;qcLmM+~hV-v}A+R6{RCXmEhq})6y&@KBJiQoHhg9j-0
zuDC}P{JOtqLtF-GquaNnt`RX}$jotlr7aUjiA<umYc~9Iz_C1)_&%!(YO%)@Xz%LP
zpBkD|O;(X~r7M0!M4C6HYl!4)l=TP{TmlyFGse23{^7q4oWLC#CivJ4#kQ`<v|5)l
zpG6lyA=woFF8}3_zNIG4=~J?~=nPyN>Ikz|#cR(X3Ha=Hq&EoA<vwIx<;V%XEv}V)
zbh~Gm?<7#uv8j$$J`<^6GL|+rUGUG}ZLyiIu*WKvw!KT-jhe`R@iSSp6wC)fZ33Rm
z=!=4eeR7OD?gBC6Z<B76`lM^z_o)jUGOM^i`Hs-iV$1Qs*pTJQy<4tadF$!NP9d7{
z3!k7<B;TZKau2-{s!n4;NqVH4&K%g|enwgi)I3t_`7j8wKqzq*okpjqu5QAj`6g6T
zA?e5FIA};vIR2!zDVAz%UJm}PDFnP<%x=dSG{<bKlPv6NVtA|wG<KekRQINgchFP9
z2`I~m<rV5#wujJ`==h)J>^?2EuZ};86&JE6Xw1)%BwHE$Ht1ulxT4OMAs(;$K>$zi
zMLu-IAeZ`T_ivlgYx>PKaZZ<ig`>S^58sl0?z5^J{;ihDyBzILy+&?79feX^LA-{v
zadkMt4A&L!?S{vpLV>}4Ng?|r#(ali@JcmutgiiiYNer!MKOXUWaJmE))%wz1VM3>
zH<x(wXbtTyt-eTj9RCZk;3s^#nXdi+yfGG;-E#r~PVWExb-JwG5qIztW#$v}E$D9&
z0}<N%Nq<96Lo*~5JHf-LmGQ+FbzO4Nl1jV<Hc|}e0-8Dl*16xvX|H>)>&tN$T4&N&
z08ZDrX3k5@z9V6Nw&&~TYwi0(_I3C5Sc=H=(+QGkzVQjt)}!dn=KAGaaflx<;4Ju>
zm=_Y_=Bo5@ib6IQ^ER@Jb9V8G5q~KLnl*eoza31z$H&@z&dw^YP&pOYyuyR-Za-?t
zSvw=8?toYd?!;8YaT`QF;o7-FQy!e}JW81rMVA#)A?C#M;#QOL^La0aNo-dtyHxDq
zg}_P7KVF?-ZbJ;>b-;Dlm7D^|LA!N}|6}L~xb^i$2B{pIBD2mRV5ky<M+D_i!zzIg
zUt%K%$HTuC2{gw@KO<3X|Cb!vRYyogS7x*&yOy6zpDtkTUUwt3?%PsazCEooc>D(x
z69VZN%qO^O_3xF#e}Qu-d~vAIZ^3<wKJR!D<UV2XlepW;GESPiXW}CO{PlAwF=(eK
zOi#FSk06!_9J5}+<_a$6E3|SFd^!G%#66z7KN94gd)l^{>ydUUaxD#ZwzQ^;>w0tt
zTDtRWVg&;WhfD0f=z&BW-W2s*;h|f5G|~}qsEHnF1+37j1ZuU!OGm6!*-aHz^h$x>
zg^*|4=)gn#e?+DlpXiN1gM>#2HNT!(NzpMbUPri74xj(kBihpP?L_ubNw&k>dekdd
zZL0NRru@T>ro6p2LvryXMR=W~1^iTUW-8%^vi?Dpq{`-z9li#2H)mE~MN|`a6767Y
zvr~>YZ%iF>qf%3R52wE%b#lWDnNLg#DWmppc4}63>>MFkkz#4USuD<~%^!hCc6RXv
zA1PvP*4R#%04p=I_{zjkj`kp`Ke8|u$D_{`eQes9PQ&JGO~WP`uTFSIz-k6e9$LB`
z&(5?N-mzioTx~~u4V7E#A^fs&N1z8bJZze>GQP5tLIdABYz)K0jF^)%CYs_VR(7rM
zBxp|^kmN@Q!|eouh>aI3ds~$PF@O3m#Ap@USgl}`|2Fv%O=4W}|EM~r;7p@!Ysa>2
z+jhFsv2EM-7u&XN+qUg=>~!p$oPXC}wa>+K``)ZowZ=Q<oMTef;97MYSD}-oB<(L`
z=;D*KW|S{g+=zi`3ay7>W@~^!?^EDoF!mD_6tCP|UR2xeo8ro1NzOhVo=&f{k0fY8
z%(wfi5npq0t;U7Fc_HdzSEVWUb{Q>jS%_mSNy?LN>Hy|d<-T;8*g9Eaowb*4{HIw6
z$ghHc{(%1?ik}je&nfVlmTeXhuW+E%$6kuYm5O6ATo3Y$ENB($(s&Y&iQQM-XGkm0
z32@2G{Iy(waY0*CBK2ElsuY9W?nBq84%;Ll{oLKbzagmNHzvtH(ThpGv;^#N?a3(H
zX-OOBfGj}DC0jl<MD4-(>h$@!j>wiAc*h~ZY$M&AIRn7Ao^ME?v`M>WSR++~_N7|1
zZw~Yq)q+G!z8h1}8oc}4-%e1tc0>k6z1OqnTB;SsZ)d&ZYBFad!Q(g!H%&dUs*5l<
zl(fjvA_~>Pr6)@V8oZEKg%VU3lQ`j3-Jy@ukOTnLSaa85?nB%Sn_RJkR%=1@1(mir
zxytDwIq^x`3YY|(!8O0_(EJObvrHxZn<XZ?!6m4s)Mgpc6)GpEnN6seZMMMDX;4?`
zJhVymeEj+?$zc!(+Y<VKAUj?A5qXkIL$W4AQ&eA9Pknw)UU>7ph;T_;Wj(~3rdzi(
zOEQ4w5e`L@d~IUBgzGoQVu5!SQ>JMg2G}eP(Il6)(iOu{aB3;)?eA4wWUhKi#S#@H
zLQ8O8Ez1QI){8k6=ZCZjqbsQzF=9STP}UnBtHGq0D|#6vPY=p(WUjw^ko!=C-A{9O
z$0aUP2P=jEo-5002$vq_76$xMggSL6Q(FK}2|8!N5h2Lp!0{Q2WmKeV>Gt(-b!Mi5
zW_fZte{l-cGr6$983U6+DYO-(rzPH2i_f{qe5n0jWfpCnUQl)z&qmy=mZQWE!e`Zp
zXxwG+RyX3~9<QMw6)^9u^Up;$ZL);uVJ(+KpVa{BcL9nQ!EM-pT_?t{PWnvFr+ff4
zYk;R0c<_Bwu%Yc?ciGt6*AfinG!q@kHfZ!F{Xm@`M}z5Li~ws`m11|-T2*K-Upc8P
zQg>T3fMpG#nWa5iBz^N+DeXK&>_EGXDkdS%K0JdC$S->>MgrM*J9H>5RroBu{BO|K
z>2{NZ!oV(+V$sdM5KVGTXk{=TKP7<oB1+_dq`jOk#UDdC`5+Nf_IVb>eM34;Mo&tu
z?j%3iOLtS%j-+QY7&IvPLd}mINVQgn(q#&Xsy3q>yo@2Z@x_ZM`&YJ)SOCzZB(*b)
zV9^q%9v6OnV0mKvJSe=p@dzHahv-&dm%+Wj?}vH^13>lam=-1?gn3`FkrSZS;*`n!
za$@!D?k(Gq2fR?{N}Vads9TQ>tI1no{qK<R+g$<cLh|Lb#cDBOo914&nJSvE*KLeq
zk5hA=^0~p=lmAHXS0UY7a}S}*!RM2uwswkDF7DTfi#l$x38TU3A42O*{}IR6)Z8y{
z+V5z?|5vg3Pv_)M?Islw-VMApr`07i55Ug$-%oL|W@`-SAC&1w^bddhW=^2~J$oME
z2{3EdHb2#PqSNohN`^(-4DFgAaOOb+mv)Bx4pT$`{)2FTuD~y+Fk(Au!WuwdVDA1s
zFTnS@Cw8?Lfg*ic(~Pu%dBl30=L&J$hT(iLl-Uzj1G7Z%>n>CZ5DNJAc&V=WUOm|#
z{azE@ab()RedRL8Z#e|1a<Wt!!4t6i=BN3O34rc>eOphNH}<EPjZYD=P4mV4MSBmk
zRzKQ>@@gN4uC}|6y^nq1MDkfUS33U@@vWQhIl^NTNsh2X8=h}^sJsdxFM9PiY?~XM
zoc~A#)qxQ1PaH;`Sx~N!&(X{+b3x1U$6<f2-_ZB_$K&nd$;|XA1^mo<!*j_CwGD;W
zts)z)I0mDC4~14+Bm$dPT(kl@{l4XxTmD+APQ4Ve37zZqA$1M^;K>Z%H6@vBa2Z#y
zPU^Zln!2_!70>bNex?!5AP9()<L`1w^z&?V-)M#iIKWz&J8|>8(5BRYU6G^pIe%Jk
zMa$l5pXuF7;mmU);R*w`Sc7Oe@AZ0Uj8+Rq4bl@*PZOcI@wyG>Q!9DA0w`^AY+!7B
zuVfed!{DVuUdP=si%x)wrVGemb~>$7i8?DeOctL?I(jGTXZz-H1!gCH_TY64bav5_
z&7AMmI-uc?c}ryu`UMyI<YF5dF-EZW!t2_4_yu$F><6&TQac*3!nh9Azk}ceUaXFh
zAg|(M9h_&iRT)MGQCtF85VWhYJ%7-SfFsF)dDjaSZ<1Dv%&}fjZtwfu=N8-k-bFo$
zh=zQWR5eGzNh{%g-~9kZkq)uUi!0iNxW6>#jsRqt<N#Vwz=bOo`oA>5Uo|wx%5V-l
zUG-y;T;X~)uq38mGOaqADP1fv8e4}owb?`gIXYV0(4b}?$C>fs4ks!hS?KI1=w}1|
zY76<}qafjKdaCZ(z4M6?V`lv0sk=PG5GTsR=5nc8hw7D9t-ojJBKSP>Y47%=B&~{E
z-vEaaNqptSF>OALDBSckTn3iAQKL(ojIIa`h32POqI9G;&}XlRAH;Z_B7#B8)ca(2
zr4zbR{&rR==>Jp*jD3<Yw*L5h7Rz;RT_w!X&@V$|cB6EHZl>idEugxz!FJ*X=Lc4C
zNq{L@T=X{oDrTdlx$K{1Ah=t+s_0#MD+G|GSLVnph_8AM%HT0QT+!wGDYh#e<S3Rs
z@*a;8jEp^RrpLV#kz>$So?-sp7`9p!68pF6pJ)qiDV_nT*#IUBWnAb{IyH<C9dA6@
zZFUVaKa;~CmlPNn*qOZG{?^w4WwN02njz(rR6)fTf<#&4l_Ye2AX@%fLCf%*kpW1E
z1jUJAcK{hBslTvFG?_Ba$WDVaP#3f!t2wVbvqI_wt6`|FO9%Z<CfZJ?2}37g-eOmZ
zF@yN)e$<^gsp+keTm({TRGAsLao#?`%hjPp%TFbt|93mpUqbl?tOPYk{)L!~b4m@-
z+ng5@+zXm8TBZ`l;=bNWL6Q33nHIpr-NCuhVT;G$d78#}F)O#IGGC^=H!P&02K#h(
zFtM2^QE8z-fvymUdONwZQ-`P@^ADWPeq`(<E5uFKEGkwRrOt9vEw^64P-(mFOREq`
z4J_Y>xwaY)9k2va^kUYmfZP!x`I@V_$oZtum1Zw2U(n0MhGluYg0yA+^Ce(z?oZK9
zHZ0X#Z8PJO!09BXnFMVS%cg=5xVngk8Z+A%BO(d0ooC4;e~z}DltxB(Ua@kNKW`G!
zc~kz*XZ9I%O_o>4B*4j25%)tbm#ydS^W~h>uD@h36xLKpY_TT|vaHO%9Haz?LljgL
z9yp(>vIIHJnbwHI#wir9F9^VCxLdId6_uNT@G0Fxajj=2HY?Q-kTVrsH9uj1XtD=w
z6DrA-6PIH@p3N*t)2mvZTB0PK{N2{6n!a2%9t{qOKhM}OnlY>=6zV<kiFdpq<5mE$
zAU0qmgb^6bD!kKD)o>F~A(Nyk`#^CGqn2g|H+tAI0VOG3s~$XGSOF9lLpQ@A8*p-n
zUg;9#$ZMKE=8!bvb}}tmJa@SGuvxZ*Hl|gG9@R^2l(HuIz*j+b0zZ;(7rq<EOozZ|
z;g|}kn2$#VFyb>Qc(tWYby1#OH1-K`Bg*l_s5ot^G|&e32sPv2Td)IBWWt<Xg)8b<
z47bRGrL^4UPr{3}6ac>VKF|4D1>@30B%vAavo?5^^s_uSxte*%s6MM%=VihFwQaz&
zSw}wM07W~}h;Xr_dbDN|IV7uAN+ce?@H`gBJ7y(ju2MOrvvfNB%E6y&Ui|HoT<5~-
zqLP%u2mJ~Gad?&3tjyzJf6^YMOLN@kP8+N31G-#@+AB)A@CHx|K`<IdNl~wbkHzAb
zB5roZ=MrJsCwIJj;V?LS6X*wT)#!ud*S=-8-r<%_csrl{haS+81)e*@Uz&e%UA?VU
z(w17{9q#Tet0k_ABqz)R{<sDGn&c4QW3)gF!-6r7Xq9&!27X=b-(W-ZyAMP}68$TE
z0J%Vv_ZV)spA1l06ID&HJD|kV>$LZ~;%A5>$?iAA+(<dkLn$bCz<E}&)zgN2=ph9D
zMkL#~k~gh4DzP1QSaRa9iwFNgmwVs_Tg)f|JLi+(Svvtmu6`wD8N9)t&_#!gCf@8~
z%`E$nlvsM172Z*+GUWA@DDA9gwK&b=)u&Es!@nL3s#5?2WVq2VBFoi4{0L4=RsZ3?
z$dmOA#hjL^91M|a-kxR6+iZD?zp-WFtWS4MmVjwx33m=;pbyUbYTjz%G0OgYqJ4T_
zd(*Sx{<8H^X1cq0t`Y5+jWh6A4l?6g&X5%C^4|ec5}aE&^B|m@ZXX?nuODrF>K)BR
z-#*8-;LHNNJqB?yv@Z1Smvgz(+*)Z#Bh!IT%Fv8H&mmB@>4mqt?o(gfv!RACCKi7j
zvilBq5liw7_tcyIaUn#O=I?pM*lGH^-u5s3T11bM;PXN74!cG13H+xiM%w_|#j<-V
zuysPZe2bWFuLnVa#-+@JgHxZX+^_P&7xYVF)b$H6w7}A5gB(gvI`nnKC-4XPB*e9T
zCUmXa`njO2YrdU*mej;eyiNz&m+f@B>RL2=xQpACRDp%-_EL$tONh#{zjT})<*V5I
zwpY7KS8PA7D|-%IE<#bw^!~beZ!V6P3m?MoV+J~o>eb}Ek$Q&dD#0#<&E~s?wXYqR
z4jYq=<LG{$)EJi2Go)xZ_IUVikJDV>{w~Bn_xl9XuT$oC9G=WZ0|yDVWYWz2-LCJ8
zAjw!lszV_jYU{p%E3_iu|H!v$&B++jR)p;n+H=T`f@e@BPlx!eJyT45S78j-=Imvn
zv2Qzu;nX6>_A9Xf|NZlXUkYR{?&7m|&xV+w-<Jv72}(LrIxRQ1e=%P^#&h*TdQWb8
zG1a!teQtw?UOH409d#wuMO!8_A5EsY+42RyZUA0olX3w1-m|xFZ!O=CT0MOQM~hci
ztqQ$t_&U1dWgPd%fA8ZjNYQf3FXnqr!La~<(|lG`{q4lo-sa$F|H%Mp-ePC;Z8qPJ
zdUFf7fy<4~N%V2EvF)07_acNBhia}4N+0jf{27>=0L%Eb$>w)Lq}iq~twiQW;h!r!
z3V;*M>wq?U;lkjRiK&;dF6^rNtTyacVa`MMHAz`1qQLt+*sPtL-M!`uOlgj6wu+u-
zUrbqEhDxD#VgF5^Y0#LoM-9m}AAJeZ*>|?L8Q-ncC^2D!5z`ZjDi;J@-dBqKJONU3
zWBx3{vhlW6wQQV1Q5yYsfJkxk&Lfus3eenkr~QQVMppMAusOEE#>@F_d+8+rSz-0q
z<m(;CLN`87+MM>9X38cJZ-&kN&^fH`aB%6as07AF?|C+T-0X?CYtJcSjF`7QoA^3l
zEP!-6zH@a(uJ-y8oL4lC<Tt-S>3wUS*B8Z?8T1dP*`p^+GZC}f9Xr{@SnfgF2Ve&g
zNVGt;pBYLZ)qt^kJH1GCO5xYqUcG$?wtv=aDNcMb7+n}Y<7j*0_m7rmqAv0<foxPZ
zWh}&Hc>5Jg*ONn<m#tzgN@<{651g+^8$5$?hYoGWoC%^b8;-TA_ur{lDhi{R$bCXh
zNOYiA9x2!1yVe%_1FX(z+3}Ep34m(nAT$EoP6k>|)FJKFk&9!HAmpIliQta~upq7y
zBz~>+C4Bd`T;M60kS9=<OEfz@60I%#%zaOWM}TqOC<-0lAHpY+sdUkX@^hmzUy(<=
z3TwCwL0FKzMI|uvM%_s^^O95+_zP}-dQdu$v^;c+vAD>1y87Be7zo_lRX`L_SmW@n
z-OBnh2=Ds#INM-HE6l~Gh$nAB99HW-TZM_SFsg9K69;RCR7g75B-h_yB0&czoM=cO
zArvwv_9c|mD<@K^-6H|b`Px%4wFFLHRtP4(hOnZ|8CCq4AQ)^N2kb7IOgnys`wW@d
z34HO4YuSlh{IJ6)7}1hVP=F}KyN}qo0}MOQr|?pq!$({LCj>qUw`QmXXtbgJZF*zR
zGN06@(`Ch5yj{r|wD=-QP4<G~NYmlz4m4k|w>_j29`oD8LKN@fw6l$9HYc(7e4>E3
zj$y`(8d(h5Uwrue@v6ApGm2=?#MC$oCDqk1+c*vq1HAa#>KbUvU;wAxf+mX-ksByF
zowhNkuvxzehPJ72L3>^ie+EmmqiwLK5m7_l9qihv%$km3m(0ToyavxD1Epjx+(hxv
zP{1OUlrY$?@d{LU0q%(;*k6LM_G-BCgq@a{ey&`Svx#`+jk0UcGoGV@JGVCTErc=j
zY;R6HQCGbp>teW5K7gZUG|#a+X2^(58#=YGr^rjqE&Oc1QI=B3FUjhnXsVByjD$#@
zaX^qo(VsU*?nFU|Fjmy{U1D$y)Du}ov}EyG&>fTZ9&RairZicnB->Vr$3p1z)nPgH
z%TedTc_>wjyfeQ%;-YYm5MbOV<v14PLBA|Du6||jb<wTjM}S1`2roxNAZ(%nF5&>@
zBF~_F&*n2i_7!PRs`>o7s0T~6ucD*0Y}kNmZb=~N2V5nh#lS4ki^hQ{1C0I}l*}Y?
zFlXDon*;j%Uuq#pH8rJdAZO5Hhy^te%T1I;^c%*2mV2m`tyU&A3HaMf{2-3YbN^_R
zI!bI884~wt2tW!PAh2S`It#{DZofC`mhh7HmT;?E11g9H)WV)|PCLg1n|w311FWJP
zC}sWMd^|s~artG<Hga`ge4vQaoC|K=oNNYEd`Y|Ss4^qgODu721v+>{{5lH1n-MT?
zT^t+GRtf5C<GkV-U-0x`k(WAnr{YK-Y|0dO&V2rgJphAv9gAkA_ne0Ic+Rq9D$ZOT
zopT6+VIe0Z9{wm#^I9q=>F=Nf&mL3SdNrAffbFd^-Y&UfxXCD%6YmtH=0ch`nmm`{
zkcB8$gI&Q^v;Qb)WhPi^enxymr`kcoBR+Tk20OF3>XCr^$k5^51j8_Xy`c9&nbMkB
zVFHE(BH%4z(W0b?fK-u3MpUQ9a5p|D89(`^VXn%h4g~!<cfmD(r4^WFYD!G`m7f(_
z#qr8RUo5N(MQIS%V%df@zt4;k?wH+?P)A$I;hUuW*?Y9;0+-kFOb_zVGmA3RrPj6D
z{z{wT@=p%u!J!&R=S^$@f%=5qL3&fG&upGW0>DF&ux?MsDB(wr4@P?qy_1B}bF{(=
z62I+#{gpsJ^!D8s62LFJxQ_uhZ5MbIGReK!nD>A~)DxJLs~GI5Qk^c@C3ZX+ab{Z=
zDnArDAN36qtk7s$i`zUa?k?Jf`R3YWl4B|j^re928~WsbFKN)#(70noF&A{SO`W*(
z0Yrv8#A`yh%nW|Qn#c`FNN2}ZL*E)@G)JN?d?au2Ed*oJ%m<b&_ZXowDzTEuWO(ad
z%Fjnw{lnx4Sc~C_wQL&HwPlmzLEW~S<w4a^4OP5H;+u}U(-kJT&tqlo+nr0tVwumD
z>Rn0S`yCrEW&{uL`!u}YACns+R`Q9l12DBz))gK?i6Nqp>JN+Pbp;UJI&TT(mTmQ@
z)bK{=xUW+B_-$WePWUXu0?9t}TL#1rwPWq>BER-K?`kQ8l^x|isJ_gsK=c_Lbm>ga
zBYHMJ^qHKq_n^1X(xn!QPm^YPZ}e6iX?#bRisMv2_8|YHM3ukFyGi61t~Wdc14d2o
zz(R{$Xg1bHOux$AE;%E2w~)c@59H8hju_DlMEZEv7VXS!>14AO&Es=57#ijY5;q14
z1AaZcX+JvR@EJmG2t`73zJ1%s1M4-FINxmJr;i(7KsxWmJO_DhY^RnxyH_uBW5C3I
zOGP-DvbQtXttU5YQeM%G;XZZgL4R!`enX;JoD=`2zVy=Nn#%)VWnubnSF8D_A^DI4
z<)<O}6jBj?OM>VpRAd`|c3Nl~!bzN()rSS*>pOB>y-j?g7>AV#N>MUOpJ`=OUj`s!
z8SqhBl2^L7h_~4Em9F<Owo2&zdFs3PnVY-VdSk2T%CT~Bb}x{<a4C}|3v*ny{NVBV
zj13Ut25LL$Jo5S&0|mOHGy<xcRr9sM=kFxf+aElh4W3I@dpanxp#e*QOdmMV{&Uy)
z?fqr-_Sgtha(uW&ls4~lN0!>N+eejM>-hW{aQEQ=W5yJ>Yms;(m9w54zBeMLarhx~
zM0+%8n$bKrsiwoFdvB8N^i|CYUNxk$tpJ#?+f`xAg>ho}$<ySgO%xY05;e$3wGlBr
zzImN644Ilb*(GLmP0xoUc$CgGsFZ14Ea6>^zmx5BXF$C@^k~pGcLd~j(rW%Q*%kmm
z*N3N4a`+~L@4ak>4xG@n#Wn%;&Na#r4rfu&4OY=AuCt=LW8^_Cs8br^){ucUE&`~~
zpm+-^2X;0R<U?C4ES8vL&gRdDH7V=mo?NWf{mp^nF%`H~9dwYX;^w_+G+()nhB5Ud
zyLw=CY^n9=tdJi&Q#eajLACPf$g0Rr$N2BNp>j!Z7_ez_d1oP;4r%z5aRw1eXrjv!
zEduE<+?|WsCndutTp@(RNo&)!UjU9}R1Rbr%5=*^3=GMo7)E_7a1fs%r7O!lspqbg
zf$J2VP43UaVM8)uL^3X_%BZKZGUg=mW-%i!QPMXTtGLwkblD3Ss>hn`2)=4pp|af*
zAPu{IN@@8GhmMS}v?Q4Csc^KYsSo{AdPT7<aNdosErpB;z<y`Lp+iQuz5w$qT>wu<
zh2SfBIM~6aaw`>znTt8Iu#EG34kzd<`6;YE!m2+CuJ%RLDg%*qwg#Sjn*hs_t-d~c
zhd*O5(4Fs~yh=p#D!eRZIR@FH0|`IQE@h~|CBtPr@UYuo(2KnOFcLz|>87z?14NE>
zZkv)bCX8vv^B*DEHD!qhbpVKuZd~g{tLGD8+{S|+aYH;FJsmE|)ddDVk-=R|R40Ur
z*JtRnf0u&<<6Uk)+6v=_mY6@9`B(YzN|^5sQ-d|mVylB%tS1I<fDxa|j#HIJy1XBH
z=H2htcMOT&&BU|9Qj2m_je7Vy&maqS49|3N+RlhCoaKxQw>dWQZ@|jtfus&ZWP*r7
zAuQzA;RnQ(zE5-Zko^8Y$SHf*SyI2UdXV;v`V$3;jWBTUHkxuqW5uX}t3$D;LkV@A
z?UeyuPj^!KUGjWcbW&>C_qP^rizV<?$E9RDDsOcr-JP+{YfhP_R^S_V*yHESuZxeo
z#lmWdgzE7)2pHd0On@w8g@LDuUjEmBFk|rD)#1K#sJ}Fiowm;rTfOV)$dC-g^(jxc
zlyE!V37NB|bel3?c(odylc&)TPc5OpKbhff@xvPW1pLN{Mob+f{lF^acyT=}G>z>`
z#hWaoHG#$P#N-ob172b%*HJ$S4V_m9uN4fvIYvxgeWg^<4PcIL>jcERgp86DQ#haR
zTSTkIpxQT7pWhmpE_xrm%{DSrySCdIvTIk=t`p6??dt(<yJv{7z-Riy<$(240tP_N
z#pNKhza!OOvjWp0tJPdaFreSkSaoR<=p}s0Oei8K_joK7sNm8lT4?)u**1ShoL6yx
zp$qD)`8P=Z1R%J!w4wplj}xXh3wNywd`+zBEyx5ZBsFYsRsj_^sSqB8h&0wi0WtD&
z?l268XQsW07l;BZwB*QDRFMse<7DPwu-0QpqOoDw<}_b#ZbILK-9z`_qogpH$hV&|
z+G)&hj*`f?JSjS~q(+==32HEQf66Oki5(Vy_C9vV2v~dOdfC9dsu%D~b6RG!=|sqH
zt+1JR4B{)|W;B+H$z)7eYVM}fta=vJj^#(BnPb<sU#|(aC@q{(mvD1fSL<cg)hZL0
zqF<JUQr_uytJ%`;biU0I<BuLzJvE%dSs(dV695AQz$tS$`D^nrTZm|SM>S>f-U+W>
zRBjo$55R9mF0D0;)Mfo1Y$hx;l>M?Py|P0m#KiOF?;A_`ar!@Duh?+}QV_oM5~uSG
z5~oj55rO(<Cp4@mOpeo*oE!RQ=gS=NZm(Je@uhn|+}?cnfSHss5?6bIveX(?*K4gE
z8}G!P24miX@T{7s{dK5Lq~5MZ+*?F+Yr5-s0O+&<u3r)J!IYI9$<&8FJ)Mrp*JTG@
zg~wNwos&@_H!v)1_n#B_2z)3OI{I83QxQ7>wbug~;7p7ZJu0d$Znaq67Ac#zRkm?v
zMl=0%qBK#BvbH?j_@*Y1jYJvM4K~7)3W~qdefV$Pk$B*^mR_;aS#2tbgQ6>l1cBxK
z0DifeEtcG6aP2i<xsUsomvrTWyC1~+b1Vx?R-6m|ElXS@S6v6y<t0c%yXw#r5GuP|
zSVp+Pq<J~IHefOi5MdfvHQum|f4^9|mba=^B}XB-_zV}9k{4vE&9dD_O31Jd1n%zs
z<zL#-x}=&SYpO|%`f}qbqx>?uTuPAA0wDUd-V1qHmpW5hR#oMf@wY%d7I>y9?f5;h
zK_r$EBEZ+J%0v26-|JePRP9=v*^pkQC#QY+C&zt-C#QLuLykndsE07Bm;Tegz$2RN
zSN5`65-DltzgD-|?=w{fdK9yUw8M`d=&X+*om2qX6wt!5^Cx%OygyzI9}!JE0LYPL
z<k%wVCPly^C7;oG3kl9GX$)QeP43-Dv7fN}3A#*~IEIyo)u0q#ng2)c^2hyb_I4?E
zKUi>ZCfDF(cA>D(R21v*h8g$#vN&^OM}{`eROc#jMwC+4VAUE?Yy51Q7C%+NE+zN2
zM(RKiLcd4yD;a!K@^7H2bmCn-IUrohZXELMRIV6FYA@Yt)ulCgv~flO(O%Q3`kgXh
zCHh>eo?xdELHsTF{I-je>&f#d4S$C}@GRovb{6G*I}S=$z=HaUz}M5xd5tQ8A!WUp
zcv?$-q^$NcGjjgsBNJ9e;6Z{As*T&OdM)|gE5XqHwlWZqaX8%H>(4ox$e6C<v_4o}
zWMDI4QGUglc!2zNah@_M&0y!ziRqk`xS+_`&?IRy4)`A31^$*O`(NpVmZ}HrMh;+Q
z;$r!4>6DGj9Yfp6{7mf(JifIK27!uIC%8A&XB+}rE$F!SPD!Bw8)@y@%I1z#bjE-Y
z+05u&`knnCaRhino2CwN)>t_E+Wpvz{rH*V0)+Lx-}HWFeZ3+6L>eS?ahB$;N>oNh
z>^slwM$VV!j`sE{1KdMyzCS+hAD(l4^HX7?JFs?Zf7Tcr)x6#h$jMJ^Mp&(_Y)HW!
zQPs)s_ROw?GXC!f?fg-%?vcb-wnONL8{5R2*;h48(sw{9@ewBmKyQCj5W6sd9i8L=
zhEp?lmnQM9R^9x0_auP%n+kG&*<-XW3>|(p+u$zeD}Hwf5c36xi3wbqHF+uDhjRmK
zb!Qhi%P)%Uu0%w`S{O7zNGYevg=UAk0kb$ecHHQSc>==p9#=n-Hjt)c=nv;dr#P#~
zApHQ-Ly~Z<0qH$4y9~N|839j>#?&K(b{w!~|GRkMIs&mC>fbVY_REm$^V8K0QQJTw
ziL5&2LaVGaK+U6~H!c?DwG5|O!Kaham^qL7PQH*VE=B#6e)QC}yv^1RNLFUd96a(v
z!z~hF9?ufTdL#^X@k((GTmA+Gwx)nq@P3rvLG1`;;1BvsI)}5{hise1BUqT{v|vfk
zZRf=Ix`Rl@1<8zhx)mC9YLe-256uK_K?(c?Ehr5OAW@uXQyr|~#O;v{b}#A${uqQz
zOY4lf6aAve^x;Pvjuoz3%3@&Y;!|PIRb!!NV2u@Y09Q_ej1KTveGkVyREa#sSO@ma
zpe(p?^EuSrWq)XGuUMh^<k>xFMT3g;+Ji=x{$8xb^OzyapF-!0q|S0&bZ3J%9@kB3
z$%SMAwA;!-*v9$GIwbkO8ID~+rF{%<to;_s#)$IcDdv0t-=~NEIe=w4Q2ToG{-_Ew
z_(P*xG~Q!UjwFg-WFIq@_RN~_AIt5H2$#@#%#p(W6It=0sHGi5JIG4Ri(zmTz8g(g
zU`P-W6$*J>IulC#V9r5af7^4@3~#k$wA*0;jK})BFMTHnc&K{`D`6M4VarWrtNNkc
zKPyGn$|%K%-mSpIHgpO}c$MSQfk$D`o<7e1YLM^sdyHs>lvnrA5r2^kC&BJcNI4?R
z-J!H*rcTkZ>P9t++E#FJF54ZI(4qao)^A0qW?~1mkf_9=|3`sbxx0qTh;|my%bdLo
zs6v{?|77p0Y$-8pcGOW}3N3+>#w|EgKzQC<#7YhMz?82a?BGZY;p{{K6<_+ZAnI1n
zpd8FqDpe;Xuvx$$!MhMy5Uc^+Ja}W}@JVB5s_Q|TJ+301Hd8t~X#>&nrU7ai;%8^H
zxqCFnlUOuy{!y*R3cvg>!P>Ni8Pf(8z_OXiT-3=dOg|HZ7f2FTk~mF0lo>{@DuQ`J
z@|6G$Y6^`Wkc6EFaucll0x5`0U6=PlL#9&p^in<2HCcTJ=j(`R*LF?YKth%3(!<1e
zfq0yF`jrA=;PpqVISXsoikmqWO|Drqj*{JUU17kIH1;?jSyL6#biD$Bj({Exuq+%}
zIDZT6wc06igc^!vERBPT>|dX=@bt9(A`%=HmB5lh0w3`zJr79k_~Xn1-RcY~s$6R~
zW_hF_x}Ulv?@clcG?!b4WIrZZ$)9dXbyHBpTZB^HF+4xDXWkssfeOPBSeF2F_z0#f
zcK~+8xC3j5h68yM7@iD;Sr^s}a7d?kpm7)?%8fd7Xh7j2+al9WK5a(t%UUDTmTIuJ
z`g2DW9*s*&oI|z`Y?D|WwI+p%exC^fPvlSrcj!#cEoSXiT~lUnd9IT6wE~RZFo9J4
zC;zsJbpfCE+*KJl;u2*S>d$sLjge)<n3b_C_Znk(z#?p^7cD>ApNq>i09l~UZ%8q|
zZT5E6g*a3nWC;eA2n9xETC!u`Z5WgCbM&5!@0zX}xq~9aBvI&>_Fy7vY-kqdrs^7E
z8^hicHTsMv<4FggpI&)CZw`40N$EVVVk8FaY(eXJ$bwt<vFS?Iwn&KFgeMstUA`G#
z3VQtTTxFo8(*iN{M`@W6KyMOdiL(;Bx8z_&kIS0LZ*vh<{(h2ZF2ncgGZ}yNmb5PU
z&lvR;oL1Ee6OU5z&M`^sI=6fui9|;<)rKr8C_ZL$Iz08-={72-<Djjlc2dn%Iv_J_
z^)<SmqZXP4jsT52)faoWeUBwUjUR~&&RK=*^wbS2n?I{=V^F&Sq>hxy$A91<64!tR
zUyk87oN^SY%}>)I$4tz34pW8(ZMQfTXPN^g5hyIy`q`RGN<nME@sky1CG8-i?m-}L
z<4W6j&?QAkc1VpHgeP(-h9@`-)u6G|N}pci-W`xdufX$!8FNL^K+sB&DpCtb;B2v3
z_a2m#g2cBw^}T`u6wX#RaTuH`MC%9~hIpIryDyFEBUDxU4R>9>KSyPJ0AywFQP#WU
z6-&3z0~%vr_P8$YE129=dmq~K<xe^Y8AXo;z!-#}CFS0_EG>xHQOuPqH*EqYJNvm|
z1o(u>1d1F(rJG}6xipn^GN#Ns9_D*Ek#F*=JYUVU(CjgQ8_TGrgK$eZvFK<ScSV~s
ziV3|Ez+X95x96WeC?)?MkJHdJam8BK@{rF$!pM!&UCHIK>DcWQOZR;8zhQPq!`rJ-
zvQGuA*x7i+sV<}12&2EInaq;#VYggQ57slwoG3jsSNX^`;{#t})>p#nhAMhe2}J{s
zL(W^`r0SFbl>>~+p=nf2Vv8;O#7|T>gCp6`O@G2Yg3Dfa*3=UI>_&Gx657ADFurkS
zl04VEHY+*6EXo|HK)MeoB$F_&#8C_@Br2}4wl<v;Kfdgi-%k{%xRDPRe(eTwS_O^O
z$ZgOS_)!;GhC2m8qPw5U(P~rgeVPL6ovoGgQ*LSjaCe$$%-h6lyF=<#F5>k!brky8
zeRv-iEd;MOWir)PO|7@);dwh({X)~kD13PjA>Hw4$GN5ukDH^rTa+`i8E6t!BDchf
zIR^wqwl!aFBI!c(Urg9@G5Mkwn+MTQb7H(zCOy{}S_|KQJ2I~hK%I14fXD#K<_rm@
zC+dU%b{FzO@PXOoN~mh6x}Q~H7x31jHaZgbM@y_`r#~^Qj3x5d=B8H!4xX@E9IBJB
zh>ON+Q94>yYN9;(Qjt^q>1YZ?m##TgUrjFE9Yg<Q^H>)<1u|qi8uIxmscMOf=5<^a
z`FRD(A>)6e_j=@lzwbA+fib*bI)j@wZVK4|<cwC2O4yI@apl6GH;eQ6HA20;NpaZ>
zC;2%|wkVnlQ*d&&WTkv3pTATc;5qg|tGvh)T)MwE6moLlr%9I;f6FwXF>c?ciQ%`X
zt@tFdIn=uYpDfz~rhtthxX80Anm1N^<P?v#J)KM_?fYVtd`R3<h^U7L*~mL_kj|a~
zKhYKy4mFUE=NxehmV5zUGL`lb+4VN(GHP^MOZXjH8%VCj*IuacHOjuZM7k?7nA7{t
z|K`@Mr6$6FtKm$>r<Ju`usbepU~bE@AgITy9baQR73;KCk4(<56AIk2ZLlb+!zuE%
z^vw=`3@%~_B_+@vqDxNM&12Ybl3!*3-OH+yW>?NXfq0gULBnzKu<<+ui|1)ODQOCz
zEdtAyT_;5gTQ)IQaVhei%q@F#nsT+Y7R@d?<;A7>q*ln&P2rj8heKAJq>68P>e88e
zYO@DRt|34OC9<?mkEa@>c%91}75ohpt?0JVi-X0q9pPGL{}8#+Q%R4<c}R}|hivK;
zqW;ZSsUpODzs6@p54tg;GutiI*Bx`8MDX8l<zV>^N<V+~o=f2JZCc^sy=&NEe02_(
z+NG@E4-4J6($H>svJY)L3+!C+5^B=&a_-<aPx-+p7R5VgwUAP}Y*(|a-S!!HP}UxL
z39ihRJffPIjX$I&=ebCpsy@~N+;BU#IkL{5{Nj|XOpjEDAiMsx%uM*W@z1`;o|s2%
zUB{L`HAu6L12zZ8!J2@pYSZzHrlD?aH?;HL^VQs-&*tGzPf5((ZWe;<9p<xUgoh(r
z9lD?`CvE1kk0u@eQ6Nl)(q?$~N7`~P|Fz@*VRJX>T>V;sMNSPy;+V^4LaceZ?Z!$>
ziA3;~=Fk)tx^{ksXk$Ktap%b{)L@XnHPn*bX~ItZzF_=@<Z72g5B>Rd_`&@Lj~_gL
z@cO~~2cI8&e*pa8_k;fr0Y3!(5cEUv4<SE<{t(s*3?D8X4q*E~zU`HcjUDcvgs+}n
zLxF4hJX19{wO%}oew(gL9YTb*-&w=>`iG$8(bnV*RPxG~TeZC>7Cp`4+%0F=3Qx8`
z!J@O$YHr<XZYuMTo9i=>tKr7pZ!@o9a#vjt-X#oVv9nvhCr>0(wFmgmSZ*qBU~Uco
znn8$Vu7B~w=9VPzMWiTQqNuXXk+olB6ZZDQS{p{~nOzl0^hXxBGjCNBW+eKx#tp<2
z?fuKaXJ{=>(7rE~&b1HysNEQ}_!4bSU`|pUHX)=*ji87hqJ;U)(vl~SShL8FFIX`M
zxb^$5hJayvkqF71`yE4mcM_%5GS<TaY6L)+z+|fq8K`ogvG{+%VO4>yDEc(R4#O~r
zl&<UxS7t{T!r}6|Jf?3^14HQlQn_XNV)Nvqt64;YUU$pzk0yfQSu#_^90nya#m0vm
zQYJ~o&AKW8!R?p8Bvr-9x-f+CI}*Wk0;7|sN{Mo?$1MV)lV;#XRL5eA|JC0KU;rm#
zd6_F7WA~63G*GVUluAbh?JXJz_ZJod<|}NOH1^A@nI!X---1CVBC%a|U<%B_vmIVK
zic$cr%N-XtPBIKP$}8cbWANKD84s<eb;(lhK=H2zay%gKib+nI;x_s$jx*0ISMTox
zPDGJHfJrM|15!nF7pZat&Z}Gl{EEWpiDzDy@2hXow+H_X{{0VTiWZ?#c}_Wqu9PT0
z%rLwtLtNTjwt^^LS0tVaORgTqK?I|ZjtD=dXcRZ*ZxInD1cb8-*1ErQ+W-|p7<uGg
z#nK5=M5|B|h|^#E9Mw5VK9k?w@>_J@@HcNk>9nU5d+$PD0dSg-JB4|W0O+m(+&$wi
zU=m3vZv;RaWE6Fd-%<jwzb7=BD-$KyTEHK)CUkV9pgU5a@Dr+AcX+4#A*-PdG&D>Z
z?^KrBbUXReesDjj@>q~~HGKrNbTuq)Px6C%?ivWtJsLx>;33dyB<(Qp8p*wF#b)Te
z0Ez@WeHwGh@Phn3ID6qdz=!@J8Z>-`kRk;KQ$i8SE8fnuF&}xVF{H4PcjCl=<W3o%
zG&xne8wr_)V*{G_6ph&&m8O6iQ>%Ck)j;PSIJLY%+kjK>Ic)+W3>wI<R5wyK^dKxX
z=nuL0WJRid_eqWO`qTW+Dj{KD?zTHLFF6wl=otT5>RUX}8?mYofDun-e<!l`g|&YS
zksbFf>mJQx<w0j(Gb-W)=z1GWpZt(`%;9<2Ojgkw#0V%)nKp_Gs|-lnrm&vT@4kde
z7+#R?JsBEeD(@2zH0&m%8Y;UYk{7{y2C<M82yJs<$m9t(=A70cba?+!G#*Lx5K>tS
zR6ZBWDlvZ+G$nR*Ko;!F@M};#2|QR5kJyM7f@S(FFvJ6OE+`z8NDL&FzgXD4zs-JC
zA9)+(6*lXx_>j}F6SjLny?+^qA{cp=;{NXsZs}mPG=EQdngI^3;u8OaVf1!(kqm#3
zkMCGO*2nFIjNt3y<D)gRhl5+kUh8*9*O$lLm9_8Atlk0{U@|tbS0+a;ryI??UQqTc
zXjNDGi|5^d<MsX~_eb)GE%f@_PanR2S^q-`V#EH6AjZzdH%BsJu%VCzJmCA&lDZ2I
zzT8f~WGs{asww=)kr^?AoOk@$Tw={4k-dcWhuB5TMqT)GvU6BZkFF%Lhm>~X`hC1{
zecAf!uc_w>z%Bo4(5>+TJm&*Jm5Bb^Kg84HH|qo~(C53i>r;VVSJubp?5>RO=`KCR
z?5?!l<7^7yE`wkWV$<62!$Sq9*<$AK(d9;4g9dvNUym3LDrn$uz2TvX>tV9mLciw*
zV8mRoA_Ux9VEyc|zCA_;z3pk-7gs4~t*B)23#$}Qz%aI_7?X(5Wa*-J?t+#87sIp<
zsh%d0T6)OLoLRshed`*r@imeIzh|wK#-e`^Joc6qw5(JQItiilKWUN+3*~c?KbEhk
z5*0IUT03Lru@rbu?ULcYl0Hfu+FRqq@asxNOWjsHieb7!wotjcv`}D!DfOkkjo2YW
z2T;NsK!?9t-|4Kf9pXln@ksohHz!o24^2%k0t#o2#IlBSJeVSED^w52r|O+s#DUOm
z1iA|bi66T?SF9KrJe*HzZ;Kdid?U4p9hz#yCJ=B1?Sj-$)5mIF{{*FFU453Y`*+Cv
z<_31qv+V*g%7=3>&6=1UMIcj=XqXjNy*r@{K&&cVpQbzN04u1PHB22|9HOLva|;_x
zJP;|Gmkk2>l54NkHa=9@K~5i3w|ji+XQ$>zjB;qT9vYge=y?vNw;==WX_$-FWFH|x
z(&80C={pdW2dS<uY0euRqWk2XT+sX=L7^8FvaLil_BOBZ%ezYZZ(-a_=!}6`Is4c)
zfXmSyf`b-~N32SxL*FRG*`5`V7krLx`eJ_n&4ij|RSEl+l@vw{VB5qD>zA|f=>u1p
z_v^D=zEA~u5x~Y2Zp2`^BEPAPvfIGEiiZ>dE4d$64V-MogjUbk-E6Q8u0~6RK)dM4
z5=$E%QFBD!o_m5|UywYol8pw<KO~hN5ZZ2dezqP4R}&o?<UTr5?fq(uoH!hh-SsaH
zOD=E?7h;xala$$g&8!(O%FUy&znM&l%}1qbrHUu8g^v%8;@?;)+Ta1<k*Xxjfsmc6
z{a)C=E))11WLMzgQ1ISKi~4`Vz_mH`Ah1NK><o9#%Sz*L6J{NwX27!4a?7jU01Q9a
z+z^$be>qBNhFd~MD`NbugaoHOPft*#PHUDo`rrgwFBwnUE*E|)jp*g0TVi+=mawYR
zpjPY>e-?JGYT~tWs;l}%Gg+PV)o(jlmXWrdUj0rIHF7c?U&BwnM>bzfP(Lr(F}7x9
zP>n#g(=8z9vbKix+fcpv2{^eY01m0|$ok*Uy>fs7p4;1d&MBrlE1`>5YqNU7dqIvj
zw>Ab_9g5~XPt(KGb7RDa=yf7uv4csovW$8K1RJQqXX2#TaC7bJ``4oa&L_cu_(ZkT
z$W^yeN=&uJRxN8OHt7c^`^j|9Liq<i4+s0nZ2TcLoPUQ0!fsXMFsKJ?zXZS`?6M5k
zX2z!2ViA9az+P;oB&8sfU+~C&mDurvREknVh#xa+d=e*pUm0>}?OpARsb)io;Fm-}
zJi63s?xmG<ZKe9=h7$r-8}D~MoI6d})~t?Ki2t%q#ls^%Wu4X9TUA95GImQ~+at(Y
z=;9xy;5@TzbEG2;_|vAc?*Y8OvjDw-ZuPCLuXp2yC97lWCsPr$4`(gG46LlXkt#CB
z0H*XsCcE^|nd`j4qus1&M;KEM0Q<T$aDF=NhHxpwkDmn3x(WbOaNr3;=;ij;Yv8^C
ztb@iNmW)P_JdB)2o{Y}b?e_Rs)!6Ome-@2gqmf|kG7oCOqeeESDgUjb#Av(V!8CE1
zP7?MQV^~_ucth%8(w~YotsvktZRh0133WGy$H_Q^8uH#E{Dq~Dx|l31P@))O{%i3z
zuNhc|eLzMujE0-liMYXk+>V<N>(aN1q#X!c&a5$)^4{08C2eamIN)O?n=V=T88>ZT
zrj}hCM=hsMRWNX4l6#vqbtx}g005_?{y^zMLb;fk35jmAd_5)RD%4xJz}Sx%8+qU9
zcFaE(HqNA{0mGTg&kh)Wb<%zfB^ixfY^<tUJ6#v2e4c-}bPX^X)g~;Ir|I9zSehN-
z^v9G$@wd@f1+p>J5CO*|AH7xID9WDK%q%iVIMGZO+6Eto41raV@f|W9LOPJY1l_Rd
z{G?RxtiuzDs!q+%561;KSDpJAch;{z9J;<)ZfM&cqvPYXYPuV%vmfSNc?4mm**G^z
zFjt6I2|(=_gS|@*PY%$U%2;{-BKE}65Lrh^B3f~H9Zk8!H|`HK)LDoKni#6rL~td7
z7VKL%%Bk!-goos-6BqBo!SG}*C6C5IWjJ=j#8msd!Y4U;OsxiVL=L}XXd=?gH#QYh
z;6O*2GQ<w?c_nI|=_^nf*s72Xc98gEKn;#s_nt|H6;edt>WK_c`7(TzeObCL&Q52p
zf9vS#$Xpn|T_gg!(z0e}Y$?ANb7jAr-X?$Y3_k8m{i$^y?!Vrua+P@>N_us-WErk&
zX4}@ELc4!Mx#<FmVD!jztqkY)ESpT4QtqGPBl>!6J1QzilFv>&$NVRd2ykYl7dJ$W
zJkH`tXDOBykQ`Pr{^UigGy(TOU62qHeAT0kRGvLPT)OmDE`#@D(8fqeM*K0QpQt}R
z%$IVaR|C&A+g2Ac<G%<Z_!E950~6n1^7|4->Ab;!|DhjH<{4&V``&2cpS9j$gO!_{
zp59qShIC!uhLNjycgoT$GWc%T&^$)SOaWU3HA@>_E8yotBfM}lJ$!Xox{2z$Gx=F;
z0zufW4ew0P3h6^Wd2svG{aRJscuw<4YV6KL$NLPKBIK*D2jCFw*3Qc1pe&M)lzufu
zmn!oChqD6Arhn%s;>4D_VuufZxlW5aw+$-DadD>cc(}N&69C;ZiLBQaY3j@#a#9R~
zcl_n)0=B9!(P&6hj6TRJ(!}noi`i+xUks{7s{i1#a1X^ru<rZI1g^TpjId`ACMvHr
zK$;%Wt-(D#!nz!QfWzyOrfm7yU4H1n?eTTF-nt0b{K{%)Jgg@qgms|QFS-~$`n#H#
z`Fe@zoz9uLsMr{)mf@ojMh|KA6p8?Kedg3M701u)Q=4K|8}0bZ0}Q^BKrsJ%=McBZ
zWaPQRFkBb-T^vrUehI3uQ|(aWs3)Z+)ib8Qg=h&@(fOA}R|j9W11FpHWMyLO=b5*I
zt79i1ZN?3MvP|Ci5*&nlc)Db$?PAU8zOK8uBZhp{;zEC93a0AM0uG^nr{^BQn(NS#
zE2%z>^uN=^d-COpS9BZBHQuBa!Woh&8H{`(;(Ey#O0~-m<?Vf<kDvJxMwwvHp=`q$
zcpKMS!%iqyY!GLwqc!Vpfx2-Qw?0wCI(9igys6V3s~o}3fmXBRdzywsaXCyr=g^3h
zew?~gVSko$r^W;NUx&nF!GC@JI@J+f&wcyi)RuB&%MFL!Es*h}KkKR5b_=ZY57*a8
z@r>$oB`uzI@8q~<AD^zByZ<1=NqZ{c1lp&V1iwsKBSI-nbZ4fKG{%hPcdt<}Gmswu
ztW=_c;cK@?;X1v4w`kSdRzU}KXR~z}l$(P7Zi%3S|Jm+lWyxIX15!Z6u}$03JTbw9
zWjAz(^n11@ESy>i5(bh?<8LY{UUcP5;fkgA0E-cw*C0cPyzFhnqmVPvt?TvVcz7yB
zZo)WON;EI1_8%Qr1p}v{K9CK%K&=xDfSsj(>m3==0*00GplN;q->9=StCi*EAN3j{
zJ^%C+3iz5nX<m$29;Hr$6|9aYA^R0V3OE{Tl=mQ|w#^9df6ZEQ2HcdJVgvg1kLACU
z%qGKxfAzX=&%SqZCT^}TAHDuus1gEOkB+*HcW4y&%^BbGomu_}rfyR2fJM(K0GHwV
zgBfj16@~)GJezg&xafhgM-MdVF$DPfApr!JbX3!d(7q5AZx{k}Q@y<3LYtlSuYrRs
zbo=90DgGU7?_rr}`nKx23tH6G_1N`_f0w^BpHYpo$UAj#SQ`^0E=2(Bjp%enp~9(K
zO+eI^Yn&NpSeMe>J3PpzAiV0=fPc1vO6Ak!>xSx9$c;aluxacL0J>kCZwz9IVSmxx
zM^P8q*j~100xvJAFS+oFG}ARp5`1hrPa&*e>l;rgCbNcXtf8m3)lKg#;YCv(c?K0b
z#wG9Kb_bpo`N&gD1_fOuFsYmg@3<mYyeK^`3%em^x9yMN5Mg~=1CtQ(0NwVxlaY1o
zzE{OVrn&}M=%c2?KobazQfpIV4wuV2eP0D#E!)?^e2KwL&d@RKON5w0hXF)%!=j1E
zf*{=%gxx<uUmplRUn_)@Q|32juZOn(42PJozDAkl9!)3^b4pf+?OfUOAh^Do+jHxT
zs-w4=X@6oTqgB#tXf+A|cxifLo6VcZ>5UAWJ8z##z35QDQH=h)kza2gciV(}+ezIA
z7(=9rPOIsO!#Q9^E*nS;ER4K_#!qdv`EpmUu~ha|Vz?8a+g;!jAt|={d7TKRUe1b0
zM`sY;P)+ECRqbbqID<4wERBkZy?g<i<t=%2pl+BJ?&%n17z)XN41=3B-_?|jo})Uv
z+-FglYC)^@ZsZzrejtj)+fl_mjSlS*nDc{AI)aV{IJ5Qk5#jj8>6TKX>>j^qw<F-&
zMOsk3$wamta=AvfI<cCx%X2wke{}V%Lu9=+f3Jua9hq>Ta#ej+zk}K1I?OwL@U?gO
z@dec_)8>mZi?wBd?c)lEV*tJQWgpDv6pE^8<bA5iTDHWm*m)VlI-h(u!QAXs9pW}O
zSI1s_RKVCDef$?G#bA|bO<W5u{GPF%e?n{9^!ILYNcG$tqAJ(0;=?Vpu^t@)?Oom7
z7j~2a7rLIxhL22?kOXuwIbW8L-`~K7^HuWye|k5yd?6gRwY5B)j2DE9HPHba55UdE
z@!#e8X>F}o+|hKO+1kBAEWhavJq&+jtr&cxMvXyNjCJ%N@Zo$iN!CNZ!T6)kM=x2I
zcsf-zr;#VBr$M;N3(uZ=o%70Titad6=6?gyMX)bTsOaPZ+e6~fvrP43GF@n>C-(I7
z7<2;5WHi3#;b<xN04DzjWN_YiO#_-U$^~__q%`qK33MJW|79jc2>%%vp8}KUOeza?
zDAZzh-qCQD|Doy~qcaP-b?w-;ZQHhO+qR!L9dvBlwv&$0v2EK<zTWTI`+R5rxkimu
z^{dvHweD3@+lt*7s7FkTw(QE=yl7-XIw8TiRu#aaS<uU7NjX+U4du_M_Mji_k<S&1
z>8JeyS|d<X&<8_Qz_$_#G0$}6kqu&2e}}lHf^&hukC~0g05V1#9wy?Icc@h=gz?4v
z7-3`>_Ee{l?xDaoc1T*VPWEJj%ktS|g3AioF!5-3+@PTr`*b?&uPz)$<PkWMtv%W8
zLPL6D@$JQ+Q7f>&$w~K`6l1bg6hPcgD`JJjAyAe31Ai3&%YqpzgMx!Wr-EX^;jF`l
z1NsU3#hsK)0D)eAfE9uE<G;DB40#rJ8H3BDZ%t6F#ekKH5V69fNvlAWWQc=^`yt4F
zc~XIA!k2;QP*WL&o=FFVF|`EKLqm!8mZ;^994oQJbIe;LVv9>fs}Mn?r^n=yH`72%
zu_0BU9mi=&(ttu2fr6Nm%L?V=UGVAhlS6B1B1^)h1GHiP;zSa3=c9qkBA4G%8W+7X
zo^q}WO`;)-<EkS6u+^Z7R~LyU{?@1?g@Yi=4?z~V14jNW6Cg%y1XTg${JWq$cx9xN
z9FMoXIkd<VT+x9#3LP!Yg1YAL5(I;&1}0L?gDF)`Qg4u@Lu?48UY<cX$PS7Ow-v_n
z=n_q50H7vKZ|+VrKZ;HowwIX*!Yye=1R>6Y7G>qqle$ZTk`RQy3L7p%uR`R=e?m@i
zgU8Fo_NQ9=f_*ULzy^4QNu^dI$Y}Ty_9HQ98@}X#(C&98>Lrpf36+VET0JsagV-Wo
zDHRf&SQ8bt*Dh-Ac^t+97y}l55l%3iOr-L<0>CX&A~?=qz6z`L^m*I$`7!UA#<U+N
zH=pziG6hV8-FqMcp8Fj|7D_1>0yBwv9$Q&%8;BI#jR^)>yATj0kWBKWSp>FF0@@TR
z0PGN~BB#(#Ec3?`TgBM*QQAYUG>}}W_zVI<r{HWOFdF3>azxMAs0SFX$m~=kcnTsJ
z3?N|wEGx<iNqXFnF-8{xJjf!4)(-lwfB^W29WZWCk!yXlHI%qfAfix&%DqfNRDyA^
zX|PObP83-#UA~lRsku;1jB#cPv$oNB=BBz4_o>eOa<bVRnXNjVid;D;gb?cPaZur2
zWhVIy(-@Dqyts#2=3QJ()ZSm0viW!(F~IWzTsHF(ckC^lFmyt*vB|ku83_=?jJ4c7
zDGO*Fk(3NEJ-YSkLU5&#)=9afC=#1QsClZ<?jI*%JD?=NFYE8LxR1KN9meOXX4hZi
zo)0G*7gyIG8^bPP{9))npEH^_8k77y0N0R6yxYR}rkP_yd(P@Fn5=9W{yq@fWx%-J
zh`?G}J@=a)WT?*Z-p+OF<c;PB=7VG3r_J}^`2oQL<92oK3!&j7;ZFDGWs{&$0%1U>
z{*>U3UF*l&%S+vJ_xpy=L%{d2hiA)r&#uh<(P!O*<ME846Y!nOH+Q(d;E&J8pvU)7
zQ(y14!wXi=d2)`)-3`$kthqR(4WL1DVmcoEf|up2=d@Zwv9Fnz;kR8`(=6xWth7YN
zF7KbAVNWQkJ|lB9@433qxSQU+ou;;rudA)TsgsS3rQ@ls(v9owzi~*xr}0q6T{rE}
zq&yzTz33tlJ(Qqcq3(DwyPj1JfPKBnScD+G`X*~#NYGU7oXhODu<R9DM!<@e+UJ^w
zjYpR*K#LBLY0ufT^nGR1*4f8x3|-qqJ*TeU2M-i%Nwa~Co%buO>qFC1%dTh3t$$%W
zX%BXTSy7_>l#Zk|c#T@j*o@B!>diWJrR)ekW*dESa7XNueNr$#@@xOVqp2r|#$d*y
zYQs03O=;>npmU?n;X2AIAHW+@!!g3ZqQ|pP0=1#-n7dB?vax01+;Wu~-PHz~=hkcL
zH&VLE+*`yEek&#b-5E#xj`?vi1Efrsv-eqx>B|C6s3!ovwe<Aq)3R!>kg2imF(&Su
z9gVNbG^l8IituE>&z_#Ow1lISx{>vk_hZ{*s8_cGaPBj_TF&A&0!%w-L{IrVgkL+i
z=+tt2;QM?U-jKmI#GI#i!X8Z_`!C)i;pv48Q%<+m#!-&#AQ^w%;P?FNIxkg_jf9`%
zd-<e4L_8r4`QqzxU)OqJ28Oat7n--T$41#Lqz%QMj|L44+Ia1B3dRz`eBUNqO!q9C
zf{YDDOyDShT)0&F0dW2b@Q0OWL}4?S`Y~<s1@ye{d^xnx;6ZkA-qeek(MUzYqhe-P
zI5FKg{rU`TZQJ~E>)M$fvJ1%phaU=;59spu=hXG@?lGw5tg6cB>STeT6!vdvZgGM4
zKx^-0QgV<=4lgUaw?@J(;JF<ARo1ZJbQcnr{tJGoUC}yW3=na$Q|ZWyM_?YIS~o|z
zvNWbf5-S8zJMp15LLBE2U;;D)_Eg6_$ynPq`7+sNR97#9N9=^Lf)FdKN1)49trjBi
z2JMt%&ye*N=UA}2F??m?If9lv%A1KFH=)rL`*Pd-JE!efm9$gGUrYaBv!N@*A<gq)
z9X<YdH)i;Q6rhARt)~+#bQQp=CGBh^OY{=*jc{C>awYPb47^H1eO%|*iD(0_%CYAr
zCWJGAt0c9;vwbu_hLkV1JrX`H=$-G|)*~t5<G-?1m$r3&9?<LW$!X|Vt3lYc(bgu!
zWqA2~ar9*KZQS$jY(T<azPO7<42?u{R70jjQ}Tlk3|N9_oe2pjeat^n6gzu=e$sE-
z&W({9!1TV5Nn~a*M>1o-@nnX6RCF|#tu_o%Lb2KBH+Mv0!6rhIS<n_8Et3fBvFN+H
zPIYYCxETC)ZSi7-gPbSoAtHqX?f$X_K0m|u#)<>RJv&Qk$)S=H+mDIjzpnu9=`b{`
zx$fk=0DNtHXj;!0kOH<0w#r-|KA)bRM~O8-ki4T2y~O|zI_}fyJ7}4$V<Yol+L2!j
zxmF9ksKnp4&qsZZbsAe;`+RXlUCPENer5k^%}IIT<{4OxR8aPfxB9kh8}^W7Ck>K<
z-D^W5Jf8J(un6n{LmBT%P1Nyh=WhA)6I=nB0HTh@bQ!VVuHge!7gtqp@QI~wD?hKt
zlYMTSnk~k@U_p;$GY34k(o`xK#sEqpbcBv=WORhCXRE#K!OH4SvIg8W*aQ+E!u#|!
zhpzTc?ak?jsbP|8S}{<8-Z04fxff(YKBbRa>A3j$sU7zlhq}~NEhjkC0#p;HrhaBI
zfK$`b*e9H$%U(allOxn$5`kHKXS>T+wmUCEq9KLVS6hd6{xHq$UT^;{-v^i+%#Sad
zwhTbWd%Zzz@5g(zYJ{NRPj?fQz>nX&HeG+^5s5lIW?AJ)-ehkQ-*bY0T45pTXl1~6
zUybAPM;GQy?<Rw#kx^S72Iq1~W^eWnz~8xv=VDiwRE+*Zz6aGkC;dG)sWFjXUB5!9
zLi_C=PjyZ_?+*;6mZg7p)6*tIN^NbkDv!7NnG*K7jNnnoPbG_74`$lk2uj_&e7EyN
z&X=Eq(w@6MBt=gJ?VsYh5_LQS+32M=zIPNobD8$iFbw@yw607Xv2dL`n12BLhgv|e
zE%jOy=@6@>{wQaCb#>PUxAIsq(u@O-c?Cak&xO0K+4QZ4rJ*eqO8x69REF}1mt@PA
zLTAbxO#V%VTm5nOmIc9^{g6A^6@8)NVyb#gTNo?#A>YUjy$}m?m@7uy;mT+ngG%f$
zyznAu3tW1W`|Aff=qtv63C%2p7339gJN6@57*Z;urw$`pEUP_T>N0DxT2bdIZ&T-*
zGQW#`H+v`j{t*!2%81Lu(2}<Hav#`e>yk$n_4j0-e@<G<xfY>aWsLKXCNS-C#UM#-
z7&roRVy2^L)2egOxEA>W;__e!cpUWt{{P^&x!Qk5L4eFO2RLvjz0K`f4$X@=KxoGZ
z3@lqdOi+IW4H^`WTY+GG0qiD`=u7>K=580ED4RH;&g%WuKE?+F-X+v&H>Bb7?q&xm
zjq=fSl~D5YiTbWg!~@N3k*W4@MNGRHJ$a{@d%=vtysh_{>Wgz6;}QG`H=O3eV2Da_
z!|2Ik6X3D=ob087bBCVVSp>^;+J-2a`ydR5EhBZVB-q+sRQv}r_YrScDJNsAa%0V+
z<;S_pH|{zND=sg#j!)y4V72GR$MDmo#g|1IueP#>3Yx9Adz(-QpW|#(Lf4IIZ_d(n
zCV?+l)l3%T{N3?2m1|`aE1rGohWmItZ-e0`H=x#<X7qllgcZw*XA2y0Ij;=^c9+N%
z0P27k6ZS9JCc5iUDUM`#&cKs%_0)2bzNKYzM?M6#$RBnuI4Mo*o^_j&SH&!U+>gU<
zHjx)nv!b-FY{-ty-PF0yI@LjJ>K#}4)ONDBG^y!3hUY*YgRSeqf_>wV7yr*&=NS-h
zJK&b8O%Sssj;wSh{<YKL{c_>{apZdV($-I=*Jjf(C?Y?(%#LDm(A(n7VexV8;wkH6
zt5R14rdKl<bz4YqQ29?@$LeYq_n(W-4N%6|&}<(>C3(^5K3uO5$E(ngSPQCZy2c!d
zpIOS*L5j-+ZhpeQT=3kIgv~_tCvyI?p@0&X-fbbQ;DAssDMUzj%wkgx?DZIyhRff!
zv!PowCnxT(VYW%)YwLQ#%~S-$I(Sm0TkU3J;wDM57P;JYb-M9~L#2Dn_R;d0>G8u9
zvOt)HKkN$WLl>YCGZm6!2HS*|^Ryp`C}j~t+RQR|K9X~6`bBf|&3XrO^JE(eMF1-o
zcrfMkh(EggKsSd}Ub4UB?X@COOQ+TY|G`CS!3@8Dl0vc{qr^{(t_;HDO}S#0dx9bw
z;eMiYn1_im3*#c6ZtZYP_^ELmIf8Fsz8g;pU7|$fq&$<%N2(+<{1{&69}4J}4#!0M
zD#wv=FB$LioSgoy=9Mh8nZ5&NzRhr!NS_Od!cpTS*&bsnt;>SsIN;d>rMC{b`UTvQ
zOoe{w@PqiL3v}ssOLO8&GKZLK9TJq5W*uV_$2eqK9-8%dKVR&#pr!3fw%wQasuRp&
zz!B=001_uxZd(N+CsuZu@}}NxSB(TRo>q)l@+J{r#SSE#Ut>haaUcQNf0OTpHvKft
z>x8uhFrH9%8v}ovx;BH`{Uxjk$VSfnm#eTvxW9ne{yr1%5;+B`EU1NVQE{d|bOxiB
zzks2m_75hezOk)HxTq485-a?(6}CKcDEi}&r*2_5=>G-aNpzi|SVDbZ+y}{%QKQq4
z*L6*%SrmQZ*byE;?<~oE#3?Mh&958S)iK~gMkCXpQ^}=#L;-8H-=O;+Dg^%~*pVa(
zz(Mc)fj5LcmHJ0Mna3b&i2t10R|-;;*1eV}=7Cx&3DSyJmcrj5IU-W{q-(?liQ*)|
zw$!HYh7Lf$NkM~KLUcltTh7W;NryNLSb?!XZmsHYT15gH>VZMGh6W(&?daqJD^%&|
zRzx@(0)M}m;=v0&6ZOKQ!%-+UAdQNAYOMygsP>NOsBvka_19R6NAlI1sG)OM&?&5F
zkw9XIl$5~e6M-M#wu*<Di31aAC!rPg$B8@1p&_n|gDl|M{{^m}Irwl)eFo>Y`JBc(
zu7H++g}?x0x|ykARJx(5rkW%vYfs2a99a>$KuY*em6H}V=7+FWiDc!*RQ~?}>7y*N
zVZ(U?MHSF6;>%D9)5?`A7s>e#1or6flA!frgrJ|w4G^v|<-jSXRHe|RLK&J-{s+5|
zD9XnaK_KV1`M*OC768qUC5PLs@5RkOA}$Ou66lA{9ZIfvQq~!(U@AHm96`yc74k&r
z<_@S*6%D4*gfaBX$)(2N_zB6W<ML!B<{qfh)*0JkDmoNg3CZir4hem5Pm;Z^g7kGT
zkbD=U;(6oAE!O_JD-=kzwd76Q5!5!)j?-q-OvQD`hGO`zi-2i1;iS1wvmZ5DY8eHW
zC>@t9)ttgqkWL*tX|Gxo-eKw!hKx<_O}l>o<qZILFXLmR?$7WmEF95g4nwy+Qap(1
zbdf>|SYA@af|JWWZK=xPJ-RaWv6nwIR`B#0NhL%*TB@J8QIuFOOBNcNpE*0V!s~=p
zqT##D>LHP^9zX;(jhev()ZV31=`J3RR_z%@TA}<exe9Cn3I~dPdFXF5B0VJ^%D3Gw
zw>=0eRYW<L5m1_OQ8ab(qo~HpVm)Q`lw{iT%0w6O2PxDktERaRQHj~I!7oJK$1p3#
zBb=$VL*o6cq7ytzSIkv4@~leSPNnl8>1jFml*lP9bwIE@wV1lK7Il@(q>MYVmT>m9
z9BldlS!w24)BWE?CcVaa^^~ZT-by)=&`Op_Ct{4EN$OVjQd}Ot^MrtsT|bK`B6W3X
z<l<TyP}-R=c4-FdDwzp#M(Qm$wxWf!pg(4Bay^$6C2&iRWTGRLi31g`QyZZQ<CTf0
zE-qYwfdGuJ{00Q)7Xc#iZT@1k2oZ%obJmq=3l&S(i=petq|UlzZulA<DeY;=DvbM7
z)P+j&1k4MJoTsW`^GlwJ&+d_wx*E9m(!46GYKcqkf*K21F1aRgxrG}Cw#<2v+NDH{
zd&EfbiStY@5)H+=*qSA&I^-G*AH!+4DvZv2Wk3zadx3Q#+S+|!K}HaA7Fwi^%9DQy
z8z_Q2VPMH!4MwA_NL3hK2AAC#Xfb*XMy=`5jC)>)+8Vq2_CfJ<S0dY6HOWTC+nbyZ
zQyZaiHRA4aGg-moa;uIN@p8+5q3s_y_+t3wBKo?R!gE@WGIjFpxw-AmLaK4KDgjfi
z2X0kiJnp4SBG1`9bSd(wk9K`t?)rS7_K>n!H4J?i&H@sNTc0?NOClbw>jo|HMcG}N
zP*{;JAcFnjsi`^YUyDMOB-{V?U<dPG91w!5g<(s4WcIcuz1ct;m&$+83{6OQ#1CK5
zX!$Jp_Zze8Jy_7LXi9YOO%9;5?3%{e2<gvUW+PQNZZ06DMt{iCthM~OHfy4t)UZo1
zLSS<_5^GYn6qbqsSHsXux1_Ya+NdV#Z91s}Pfym$#gfc<4q3udn>vxnT=8#3D;HZb
zXDi*(?77LLihW|+aDx1OD;G%XW0D!7w0VNTP1~eGOyq#?Uzz4#2Y?=Pa-ET3-(i{N
z7~0}g4CZd)l6&bw$WYlIF2V8Frh_n12b>3CC1`J|(1^rc8wU4Hxwu~6>?$~<x19J-
zF>*YG{D`i_bGM|Au&bBWH^H9|0L7W469w_t>(KG{`}+~0ftPvg6v74sKu!@4$DU9m
zs)5-*jhC}4x6h=S1F$+el9e(rzqgv(H^v(L_X$Fup|;aYM{l{G-C|{Qsi(YwR5M60
zCQcIVyxu%EHV%Y?Yg!kG{hE!(AekPpbH<h_Xlu0T)z$jx{_Ae(&E1E8+ph5JGa)OR
z7V~Oa*!f(fYroFsciYBpmzN!9*rPY!Dzc>CTIJ*&jP+FkH-Oh<?$ZA>89#5^Dqz9K
z&10|*i%?T@etBVXmD}66`%n?)cN{0d6{Xia{Ho?blI_W>sCmTrRsPn*Ky^eC?RV^$
zG?#uGsrkkJ++_-{HpVA(G0y=^nc4_^ds+_H*~m)gT<4IZn*6_p<EYQU);v@vWO)SX
z;ZT$dvo85Q#sJtY1boRgC9f7$&^swdEJsfXw@xQM?*xJq2x8@jjf6M?LJ|7jVXqyS
zsEGIr*ik~QILu17zd=u0LnWwPp!e$WW7nf8p0Ng;F=cL>dtToHA)RP#WU=^?XD#ZO
zCo9)M9*hK5gj|@<p{N4r5X+c)dvEaX?$-W;cVkUXECgJwlI{sRe&+;^FZcfftuZ%#
zM+z?R%&h+q5?z?&Ce4ANg0e8Pr0qyXW2Ma;M#6$}v2rBcLE!<InEqFuU5d7B>IDZv
zjwQMdaMmm8##nimYhy_E-^L%kG4)ouIklbyZ4lsn*E?cbUVHz^>8x9cO?%g^UwW;N
z@56+AHpaN#b>eo(9~wL9=+&JK+yQqlSg-KEXcA0O59~u7S<w1SRb4)hOL<z2{TG7#
z7Xh54BaHT?@sf?$UWsn5V^TCJHhGQ&EsU-G8Nl`;cF{=HclNuSs3#K~V9h)W4SgpZ
zD9y;ajX{JgHO~j0hu^<>Fhxy(f2*EPGStG2yd{K&iM%OCL(zF)3b8#S(;5RagtM6T
zJI{M!$5Vmm7God?KBH9N9|wjt`)$j%4*=#WUS%h*dhqOSeQAny-+C--Zu$2}?_K!Z
zB((fsL)-|v+-3{m)bI#lF7nyHn-xZ=L3`z2b0JR0xy<@ghXiOi$wfp;v{(>iR};A+
zc<r!%33>+YK>>>(4&vWY<WugkglA|$VXUTW6vu4+Yq+aGpyg#>E1r6|sYOGe0SmB`
zOCMK37Jk$!a3t}o)=&yH3ky+&GAdfvE2jnB6KQ2px*eVr`h#o$fy3czq&xw6o6%1s
z0_I`WuMAvZLc6K715Af*RDq5_IGZlX-2yZ)o`Pa@!V<z`cf83Q{3^o;@Bn}BQilO<
znumo2i-S?d4~K$HNkjIjh7k+(f&qYDLPx-m8l0sFE3xlcARkIXm_etr63KvM6%?L2
zpor1P)jCB=*oO;Uv|#(fJ(CC19e?-NYh73FW=+<@pe)g<77HBJ@*>1GrqX7awqfYq
zk0E=>O6)-k48i~xf&^bu3#rS{NH+wN@V3WmXc0@bX!?RzR0`F(NkY#Wya5mzRmk~@
zt-Klc_)5x|j1XVe@wC)LfUhRL|21TtpfpQ>>5m^nM(;NTQl*h93zV*mNmi87*rmT!
zN5=z>uOxN?zF0(R1J<@tGVUjNqS0c4I)gqfYAhGM16F5Ksw*F?z)2}iLBRoU<+1O#
zUo4`*%TI8>7CLR5t^rAL*8?nNgfg~(AZVI+3IzU=S%v+DFRA;2f=F?pEe_r*)<fqG
z0!!--fziJwgn*0Uh^wxeK&d5!CiEMe4A@62P=5j^-9lxVNTXCOOHzH8hrSX+QXJKY
z-B$|~S|comXqArU+X<^ub$Ewp`DFka55yK7kPQ5=$?YU|i6Kl?`2m;?TG%&6E)R(Y
z4GO>U918S2yav78fK@3NnwOzHEJ4SrXPhOsdeJd4=cSQ!kKGR>?1tg$4bn+36UkFu
z#I9fSMl^lGVVHytaABDAeZr@ntl$Dm{ZU@3aP0dz>HGN*^kAn(lnJQ;{5-4}0=}Ok
z@~gWS=CE-G-ozsi|2Zz4*ba9vxAtODbJ~UL7=0dD`w(rA8Q--9XRQ4FN@4f>0Oy?3
zCz3JYBwyky{#ss5iY;@hedjl_0lf)~&BeZglaLNNy{Eqp5((A)#1WUH{dmSSJLU{m
zPBa;L-|{L7VEq>Kmp{wBD8JBNlV;qWxAPY{{q-(EdvkBAB>+$I1U=5?DQ)qX{@G`x
z^m*qCf4U+0n|@RBFlS^dNGjWXFV^}@MfS8UVt(N0`2nq{eF*oBA=>qrgeY52F$7qo
zg{wSI<=URAwFqDf>hQ6q9qi-s$LGxS{;_kS!eg-A;kJk-_pc7}rqdf2hgx}d>Ctn7
zJ(*1h9<4Y%wFcN9!lmzws$SHswr}6&&3HyiaEKqr?3np~BWDWkOH$g4sah$#KFxcI
zeDwp0wpz~f&p*&sS&!nzz7ky8m)X3DyXt;71te+t*AOn~2o}j6TRVmbEI14Dl6|*O
zD?M7&mD<`mDZCD6Jyc)IT_v%%pHI{mZ~XqLldtK2+6TORM}I~g@~mRo2E@AGZ;*Sx
zyuMYlDI6hwh`&krSn2u=y~ON{R6KM47G2<<@7ouw4wFyxOw|tny~f>GK5RKTKldh}
z?73rY>_}xuD;2YoA2}K7UwS0^uCe`lsF=B~yS32bdhUMCM&Cd<irvF4IDMUvJ6h?7
z%@q?Db^`Fx^;-GivCli}D0aQ)VZNvM?Ae(;3J(a`veopZ{dBy|8ej#)_E86%p1fw3
z9-CM8+mBs7G|T^;a+~vFVtlYIzqkl`((!^0>zbtNDiej34`+Fpd1$3!NP6}rve2`5
z@4lJYU8`FOnhP!U|Egk`++!I@>!odH>}DuRngrmTzdv|&R8%`I8O!ulAOsBFTwHcl
z&PYcj7&xp~ZvHKHVRfC5-|($65S%v*G{{q+M|30NHfU>UtNr#nKYhz^NS}CR)fPoW
z{n54e>unygWO1lOTbOuLihXc;4XbW1E%Pg79qP*ss&y+o7~=AVfO<67;R7XNb=%e|
zMFo73yD~YO%i+$%<T=2cObu0WhP_>3TS%+~h_2wi|MsU4bj;TD(i?vVIZhcvi_k<m
zyC~R`@$|-(VR)2*Gnfr42~*5^fBa<K>S`UEahu~4Xpj#FaU*}{V<TG18rtWGD!6}A
zF-hBmfh%GB(aXaE{cajYC97h88Mc3r|8clLB?sk=NXwi=Er|(er<V(d_@hLfXBey?
zT2#~Ee>D14;-0g;Orgl_sF*I;W#9WD=@p!Jod^3dE<h;Q2S5E9v3+ZpxB8^C@l<MW
zz#Dzv@T|L%hqx5Cz3b8+x7D4hm$%A|_%rZ|=~19$@ZUm!_5TV1IAE@{y$xJ^06Y8t
z(gDN&9Qemv$o?mqugLLZuPVLLRS8J6UO>cPA3!n31%0xEQdJpCZj3tL{OTUu4N0rg
zGi>!Liuc29sz;To=DgbEDX1z`B|=#A$!Z2%`L<|tk@+b~JiF+VcuTIr<>hxl$U30>
zzeIE^p+z9+)C>S7iYSCy#&qsyJxsu2K#V|=gOI{NTAh&~^=i_1BNIZLI$H5=rlC)Z
zI3MnbNY<3u1;;qVood`rjH*Xeej<*=w_t|e<bK5y62ysMu)>tkd?Lco$pgeDD1UU3
zmBIY>#s0DsJD0aocyXwg5sOydNE=rO4*`f;@&O=GSM>lTTARRmYIrdGJX6VXvgkND
z6gDGxQ<5$0?uUODa?&nfiwNn9Xc53^WCio->-$K{O0XeM)v}4E=(rVOe^km;VXH6c
zT7a@8Fe|`~%oUrcfk&TGb&w<!L8UWO@)N1F$hGEy_Fx}Xk$cOfKtmZptOGNL>HLs%
zD$QguZkz!5KvuZ(qRXioi8w|#I>anDXxp!9gjLqb8%1O~N!c*&b?i}B_-oq5=c^S3
zkt1d6T$xsJoC%r6X@N~=;~2o=_p3D!p~ue4E$Y(XTI1`*AdOmRRQc1*q~2r#D+pnT
z<$PC((mJ6h&Xpi0O9E?TnL*E1+Q29Bkk(RGow9&m%3VCOVg*sRu@q5w;*yzE=*ls_
z_QB6NMizm-LSk@k@V3_$f%L^q6bVu+(75xO-6SE($Hf=$tQILcwK@kO!jo&2r9dgR
z#NGH<V1DCcVUEE$kH|~WD=AVWh933`Z3lX41l}E<|AM6J08)T@FO{E})hEs1RS2zT
z>pBJSsH~ce;o$!bmYtdPOzN0JTQ4U34Pj$?4xVzA*k`rKyiQ3hw8RsCmVrEdz9@^v
z;N3zYh?sa@@a7{e5Vk<qEh9DO*F(HAh>f|OsTOCUSE|D32PMEu1e1IHYc$cosS}h;
z?N!mqY!630rdddf?k-rSgvcayibUKi>v{~JXjYqEPFq?=EU)g9nVs1!yWsd47cRGG
zdQb0BQ(bHkk4Ja5tPGm*%JHw-6T(=&QomY|nUq3x<d>V=0P04@kY=XexR45#_1G#I
zdqVjgbOvQ<WMrz<dP0mfTV6XwrJOQMBh9!-zb%OPHas)wU@J#MQmI2V@%JKd^lS^D
z+|Y#Q0(~p7)V_F+oqDw*-UPbU9gXmI8JVAa&8l?vN{Wa@fYG&YNS0?!;4UsAG=?oO
zH<w0?q!ujV7SbB^%>qR<depYjUXpV)wv-PmTcWTB2pU{G5@;2&1zuo{NZuMsOfz!?
zdb}<&Y<6c3<4jvlRTK^vo=hW6ERqe7BG!uh%W7`nj^kgEkEWPZuoCZRh0=&{2Wc}|
z&&XK#4r{o`kp=xsIT%=Gl@5tSp@aT}ZEZC5D8atBi=FS-Y4(C>aBPajiBZD7pYN}k
z?VyT@r(~1REF}|$HjB+|l11Yms|))dDQwhCg+9Ft=wp}PU~8$qSEak}SMp2%R2+;n
z)Q6U%@?~j+TjCUjKa5u^M^+)I3Yu;FI!|U_wE^ut8M71Zn?=}lx5RVqxVnMR_65ls
z?%a)E&4%5ao~KuX_fAYN#Icj4c*!5e9ikCfX<g18IB|~6xYIQY_hDBF`!*YE$+!n)
zTrYJ?>o4&$6#O%U;aBVeph?*P`@CPaOMTI(G(8&x-WK<++~AunS7Fc=4@E{DG?F_?
z=)LmX@40&G8}I?-lqc_3z>I$${XtoqpfSE2Z-w2GLiIoXzNgd<^j#6EhL2xnI))=k
z$$y#1=HkB}8O3MV_2H=&*gWIhj19_mrw{XNdEXdYAgX5H8UMm><AnSI3<~>VHHElB
zenGk_30QDqj$R%ewF7iAYL5{Qi!p9mjmHQ!Tn-PU8IGpoHhf<OTx7RdB{2e9o^&6l
z6P}VhKT3Kw#v(5BzZ@RNuH5;1YYQdgQA-9@)W7Fe5t}f5JXdl1nqQK_^gs6h3M>5E
z^P-yY9SqfNCSOdoO=SsyXA)tuWV+ueCgkE&cFLkQ_DgJ#f5t|ROVQapqvRSqT`T`H
ze;q<&Yt31O^!c#cNRapBN7XT;H*ieWM#$V(eFyYGc_%&O1lN>`z%*3bQTl<RGqzx+
z@#5w?`5SwAzz2uTK={kXciWNCrr8V1H~yr(3q$Og!}v+x+wl~j?WOF5QpdE!c)Pd6
za>w86`}=$9;OkB~6OwvrSjJV|E3S_b^HY?i7oxM*|G~EUCylf3<8iBubLac>eI|l1
z_a+a(U18Ym|8cB{n0G^%_wfE(==1J-!F79Y6;~Rhc7Qn|i9pkU;1=-)pI^4mm-MVB
z;rsFJyRN%RB@P$xOddmq|5c!dnL^$p*1d0X4MWGCazOyWI<Siicc(SU_8fMnSLX$o
z>SN>_XdAfwJmVRkyDcCPupHA}!d(aIctB^IQxiqWh79%6hyQZx69BwEI;&Kz9kX@A
zRUn2hdXJ^#lvrAGoW74CIbfqq!7O#%(~<iw>U;Sh5?lZxDjEXWA&uZKP8!%zGf6Tl
zX<<cypxH9jzv(*!pbMK&`8U07)YbbKL$RR?aEW(?pp1Su`BU!p0+oZ^PTs)Q*RzCB
zPI2x=Cu~ND^h-f4Kp7*38cmJt;{~-$X3DXNYYrk*e^&*sB^b>@9V39b(xQ?A*V?^A
z_gLN{Ua|rhKovw-6)A-s^!pvayo!A@pj})2!qdY^%U}Ex|Ki<kAm-)eV%B{O4lWcX
za`wGFk_Nw}T&QT<J+4NQL@LtI$Z7~QQ9eN2hGJw!rwH?@CDqa3SJfD!ttjR$EVLLb
zn4%)N@gap6iw^^zjfggGVbWB~lSEo&xEtMts3`)>UB?CH!m3}0FdwW$q7ooM&?Z8|
z`WTr)3Rs{yWA0N)zrlZMAG=_uWBS=8OcsH;%KM$;rEywdP2)+YKMk<<bns#>_|yt?
z2)XhM7K}&(tqaTMAVIX2^DS!lkNv2v6KaE8%YOl07>Ia57R97Y5r8_>DU|P=a`g1o
zE(8FGakfr^1{i)0N1~;X=p(s9$^OzhDu3x|!{w$yY3J%eZhWDs$V*LQd=O3NOi;mM
zcq3PtSjNtndAz@Qg-j%*GR-z$lccmHF|;JpE*qsaA+3x;OQq-Jxgtx``3-7FL9j{d
zNx>}H`b`ti$<k=d#5Lzdc2@N9UshqbuFV0~vYSo%kamr{u4qhrgW_>*ZtiBc`d$Ht
zZ={BlI|z6o`*<Ol+0fX`Cwk-<%)F)bI5HBO<CtzqjG+>a4a-?KN3d5sU_Q<hmxr*N
z(<PZL4wOML+`0V8pM_~;ndlM1u!@BJw3B377!lOTwJuvUhEq;ciJ*MROA+THi@pFP
z?Yvnq5GKgLDNKsf@UW)pl~Ee4*Mfj4D8B<SAjn-~^kEqg>$Ku*_Do@4gZ6FO-#7Ny
zYTafOTDoGWr2RQVT8#N?P0P8jI9g8x%Y|DMrGbKxo7H-;R~^orhR(9u_1iCvRTwqc
z1^h+Y)91%-JB&>Nj$vyyfBbMxKpFuST+2kPddo(}Tnp^y6!5`LM5#5YD8pL&e{8J8
z>0Ku@u$NmH3-P_pY_INsx;N(C)(Q%b?y@yKs=Es>7a=<)FV`$A{oM$?q6ycwc{IZ;
z#7&l@xu0mqDloZm326x&TLYd^xSw*f`MO#o9W?Ti*SmukOEb6jJ61aUrzHT39Jj>{
z4p+VS&S!&He+BfbuvzEjP$g=(E3m!5r-VwdTOO4)dcwMndqNqL2_)t@omU5>&#q{t
z91Z6fYB#?%uEx5BL_LZN!WV1!D~MlUa9q$0`x{O5TX!eftu5_o4J(j2=cQ1ot9dJs
ze_(L#QY1iDoYkowW#@gUeZK(YKQ43~y5{gU)zE_TVo8?T02S0dbT;H^>wViRqL^aG
zXBay!YJWfQvx6vJlYa$4(%6NLn9bS!44+|T!E!N0SI(Vi3C!CZqDbl4KPI2Sz0n1H
zayDfGh!<Q$yd$e4ZPC;6+qw;o3|xvcSt(dm0&%GGv%ooZg|e}n3mpMjHE`rz<1S4n
z*Rjtmeko_P28yHR6`YWtqf5v)Uw?7BY0C)BKjbkkV;gtttF2F57f=H{D>!iH9Twj4
zmKkI-71%cL!1VWR!d|p$)NK9GOW#5*PU@-hP(4$yAY|~SeWmX|d?~f7&%2!j7HB@0
zUcPk^xXW_Vs-}Pqa;E_%!v$T$D@;ijHPFkxjEq}CJnW<RUv+I}dP%iBT!GyJzI?0I
z8+IgW4=Z>AJ2Xw*8Wj+Ki|O!hJ(>@Gdker99)NgOaa<HA=GSvqyUCv)ZA!mA{TKw;
zTF>~>Wo;+bylN!ra066S9{SQA%^{I%ApS~$%KID*NW=I42!jF!n|^DUU`hK~r1pum
z))nO+pANF)hSYMi1j8$%|H))8j)pX;jTMqvSDLn}z2Hn)lsdX_MOYCFs8cYR+hElm
zeHq^kLTs6&1zS3^D(oG5Lg$sG`-*9};J>U^-?_B*_E$l95RpbuET~GOD9<rG_oDiW
zEny?2&ibNuRFDBcGbSZ&a`q+n1D>(iW0W|9)(52*pZi!j$@FP_4+HV4fc%L{@TJ#Y
zTiPf~=qOin=e98yxqrnVcOVy12;W|lkq8vG`bf)JeDT#!6Szucx!a^VX(ncq>c1o3
zQ|$TzP`p>KLG<FDm)|}=R5XxE_z3dM|5!-ZCl*4l3uFV53oj#Y*Ub%H$IoYVpPuVR
zs+>gdB!A6Vz1w2c8Djcnna4U}T=YWsHsJc{rg6da);BF)^^jDjz7(GHKx_9jdI+K+
zKBsbmd!bf@@Buk!YKvYWw@ht5C-uT!_Cb4;@HcLxO`F<Bc%(#TC;loe{6-S0nU>Tb
zgrsvE)g%D8)gK7i&oAC9+;uNFT_|ML)UdEc-^|kWsyn(wcu0v5R()JNBW4~rC@4ik
zH9nB2bpd93nNfY-(yqFJ{!X(1%$#a2YqQqw;q2rpq&Y$GgyujsjXk}z04hp7j%s~2
zJPW%eTPg<rF1N!~VqI&XQ1E%+o+=tWP5J><tzCedu6z95Y4^`#@}UMkA4LL=%GqMz
zKY7X1)dp}XOSq=&=GA9Gzn#BZ%Li{qBcx34o3dKIWzH$=q4tUwXFC@Y(2hQGENDG?
zrgXY2><qPRQD^~l%rRsFtW8UQyok?f2?dg|H~G<S79^Td5vOzn9+&S6h_8(x`VId&
ze)s}5(pHc<k^FJ1bP6MM%(h71JyzJ=dNT$y=F?UKCf)XClqQ^2xkWNnZwmuQ&*OKO
zbq=$^n(_~QS1!(B<6FoDK5qxV4z30j`?8a5ns%7p59=ma&Jk6ou`qw5*{F|FX#Z|Z
z!f38^0M)+q1H)mj`sW06N%TCgN|a&ud8`1K)RdE;0{&>5RjT5bxGV|o<OzJezWD%9
zJ`uJ&f4=u(O+OEM;n1SD{QX8C6>sjlEN@ouZ`U?65cUHgkL@7e_|xqnYd3=Q-Hl`+
zZ|)mP$1EdB2vH*aC`cP=BeNYNyV;Pv6_pR+4HG<t#kY0Pypf6SCnOK2h!Q+C#kK(f
zNZwP7_aHil=;dRRJP9jOB$inulpZ8y<s=)KW64A;n7{r;l0cFrXzQ5SpskUJahNAq
z{`gnbTTRo@{p3Y%_q{!h#^udp&NNJ$$$U_@GW2A0?f}~P@7k_O@*4VXnrl$B!qe6*
z8XhLgNczAz2IU^o9mPk;?|&4<hN=Nk>FPm`!<r6^?1u1$L3OEhv30q1L3NvX``>6U
zW$l8)U)0x%&VZ;7)&G9fA*g?N@Xhv8)*(3cWqqya3gAKOIjq|IhI_GW7aaV;zGeh0
zHL@V2^j)pCAnfQwOb`|>9xIcJtEbJL{A#~;p@{T^!Qy0cSRID_b_1N$57-v-Sx*Nr
zOPgzLz44_LG@i5K))L>t`dO-F+INR*4Zx<}b!)eRPI?%vA*3&$C1sjus5-=fC0{fI
zj(;l$x%j|O{LN3tL`N+$u~5svSqbs+4w!8xK<hPXq}zxMLH=m>e~ui!gGmyiBH)N9
z`~jk=)&KhMoQ||p!f1F9X67{ECulNI_J4y7j3{hCN%G%6*yzE#|2j`Qw6S$PuAh>j
z<D^7(jP=z8)J0l@k<Mh@a78$#*gx2Bz}Y=5xGzm3T+TMP{QHdT(@Z`;uQun#S36W1
zQ@qzGnBUYiwl)4J=hEqt59{82y{xR1`rAJ*!^_+5^!W#%4b-m_7`-`P(I>GwK5RYl
ztuC|z_}%P!p0RYla6t1QJ<S=Vx2~?zq<uYG+~s}E81vR*lebE4e%6!hAxC<+N}WJT
z)b;IW{I#_;TO}`Q-d>07^kWn+*IEPKclvDs<=@G%)l*he9gED$KrCW5qQ$NxNhsvh
z%0M#08R=3^!rUjP-}EagI${ciLaFh7<Zmv3u(+879pS%9L1c4jM8zC!W>9r`JW0Uh
zN!Dy{H0TP&BA_xt#8lu@soYe)m*Rpig?<Vay`_p`=Cpasiq^o)M9Q+i%88Vb5>y?D
zEXZ(%;FN^l0U`GtqDhKtWSD4khs0x$M?~l2c3f1T&`Jm_Vk*HXNHwa5re!hMoZ0&T
z2`h_Y@eIXCEOdBq1D|H*=79ugWXXSPKBuxnXnunXabk}_+6&>R1r9_sAse@O=L>O>
zxbk!7b){3y9d9qlLt~H!qcF%okbB<-cV@?)<;oB43E);nyB^q=K#RB<bv7ROwIgQq
zUQjan`~bJjlTQ6ll8>=HjCtA>VKh|QR!|fLfQ^~;|4s1GSDjM`5km4ip}kf%g>!;!
zmd8PX;rLU|u0iNmTwg=>Or-ff+lT2<zm$lVhHY_TVeGuXHz~hG{j$Vyl*!vtBX9mT
zi)TM>GuXAx)vKYd??IaA+rg+aDxVkqT(a8aLZ~@YHS>90!J+sRZm)?8FgSW4ypa`D
zL3bqf7i_71{Pkex&*RoTGu5j6&{359vCK=z<Ez3cy=3?5v8&N)qMMb|`6jh8P#tIg
zG3CpVbD#aMH4EX|MCrb$Zn7P0ld0wPlV<ht<aZQ4$I{XRkb0K=o4S_rj8DtSnKd01
za3*x2no>KE575Mrr`xXpz!$@)CCLM(lT3+*Em3?BB8tqtu!uC6OVnU<Jn)1l6=`zB
zW0u1zg-=Wv(R-yLjF@~RCM-<QsUzc_JEK_87*e=}3xhI*3p7hmK{uX=h)gl2h)5I}
zF})H&f#3dkD#Q0MLY;}^xKRPWp}-hhdj5)$meH*LDr<t@K*sYeePUriiP2*i_L}U%
z;4iok|J;jvD|<mJmM@lp!RDtX|8L>-Qv6D@FCgl~1J$%W!e}&L=CnH-JaPcr|1M^v
zpCs>C#Do-n^9e(!t4@211to=yLMSY<vE{~jRl*69gl26TFN*N?VryZw9(bsAljJ$V
zy6gN<S?<OO^D_K6g&^sC>SlYpX($(B5;v;Aiz2qceo%ed#=R7BaNKvk=jku9r*Ss3
zKl6Onu`sg*AedUU-t7JH@})PY(&4Lrdg93s)Ycrn_93`aI}>GGwv~i>shjd6m{R8}
zw(lDqjkK4KE?tnkyG_0Mb;&Szi>O#GxyLOnaz?hY{79c0(J8EYLCRx0BM_;T_AHIJ
zc(o76D|(JNF5)<ht=V`Wl94K@Hc@FLDsj;uuYx}U<gkL}z4gZK#LHV`SLAB}#ilgB
zCFZNZX*Pok&01RaPsir~^MX!y1b2W4sM6~M$J@m#qt-)HmK4UTjnl;Tau%e@_lNt0
zsWj-i*bOn6r?b#urNT{i%^N9a-upF{RE4VbpVwjmv||bpZ8(kE_E*!5r<p9JZVZ4q
zGnCh)U`WCrHPmvq)Z4oe3o=y#DbJFBnbNn=nxX)ZJ6V;nnV?Tn05=w$K?|FkBc&Z!
zrZ>#+nDS$88CR#9$Bw5F)KSZT7x3?p|9Pp-bGZM^k?Vh1V?48C2oqA6=T8)_sycdl
zWe$>xh{&)It}u%m+p{no`UZ=|?hYpI#O$Bc>n+cd6U?Kd4z+n<x0X!K)BGeEExac)
zZjtC7wNMHoGEZG}2LUG0!fun}BzUN~(T3iDl^JjK6gKaU9hi3nkS_F&DF6iV+WGzF
z-=e_+wVZG^av<d%JG`8nJtwrzVahsx?I4Xx0)&@tXc<=QhY(O2Napdz`q<jsb__0@
zkvWznQt1P(kY*~DV42SgdsO>T!oLh=4e@ujcNnYkTN!=sl!*Eu-i5dw&!3<IQT)&X
z+Fe?3-eEJoc`ADZ6>}qsVc-w2$wfYC%C#V<X|@AV2x+UNQPgP)1W~vE#1iV*d7^|T
z1M&?b*4f~MhCeK3Q78$}BQaC*H@ha2Iyy2(_Y_vh*4!oYI`wG9N9=)@VfDXEGv%`#
z15Kyxh+mDFvn&W#QCbmahDXmBm?__KvVY#3zJEle%~+ttl_xeY2VSCKcgDtNcB*9c
zHCcWSeHGhIeJA!yh0-Sj>eXq;LZKU2rUv=eT*DsGBSWKny>lkY-6uGslDip1FbL@*
z^UIyQ)#UtwPd=e+n@`sixp94C*fUmDrmal5WmEoG)y`VCSdZ)2+r+M^*s|j-Y@`n*
zl1Zc`B=r84Ub10Lw?nmLPp(Io6R=%yrC6pwkSHC~GugFkkuxa;Y+E#Srz8$M__5el
z%5dn$^&~a_-h=1hR~=J#Ubd-CUbC;QXa3Me9qk@V{VY66mrp(5n4UPylI6AyOAm}f
z6P%ObrlMSu2qM#?DIjB!MqDCNm*SrXfJeB<`_NDogH==z-W|O$6@d9J(n1nC5;vHT
z$JcDsnb+D}_cMk71b5CEa5xP?-0TlKcRX?M+*q5r@uobguDsBRNdNAXYBsnaNru3_
zW&SB>i2hh!A0bWAe#5rfVQ|;6DAh+i<qvQO510L_I%qQ7=@JOQo`peD=Yd~tmHBrC
z!*jqBnLMEGLiKA04yNIgonYp6Zl=PwCzA7Wry>{Hb)fMbung&{1FtL!AzdR!RPkfK
zdT95|#oG^y&!9QV&(~1VWc7TI6{x1@1hO4t&J`Ih{bBYrT-qCc{r({JboqVwXs;z<
zM!8l}>saBr+z)MKSM}uP1A0Z=4uqM#RU`F;Mtc{)j@R6sqp5LFbIFBJ-kJZ!I$7P7
zMi34>lds7KaBgVa02+46|8|<1yT7cC^8j5R-_k1n1Nq$)1ism14Kn&2eneZCSN0Mz
zENNBZl$sn78rD^6<Yp*nfTu(cEmN(=TgR2wF8QfG_`(aEP|h!=Y5fwM^$gtX`6}vp
zT=xkEwIH0BC^gu-ute`CAHcl^WwChKnzsPf&pF2qV1Mnh>@<a`VCaGb^kYwIom`y}
z0CT#ucwgaAW&>MREmX{~ACWAngarK*^U3?Y)|T$BKQr5$j|hqaw%`W?jN>wguvDe+
z;-Q8%8NC9J5N{Fi%7P>>tKAFjN{yg<#e2RRtf#mhbMUGjTHx5;fx|!w2yotUHs4(%
zcol^J`1ze=UMb;-5io)~(VaGnNg2SXhXr)0rz*11;XjN01DdZuu|Fzo!g(+z3seF2
z$?q1-aEhh|_@`k6Kh)(V<FU5|qnwsMKx{bMxJbiEg;r3M%4V)8a|!i^J72y54wVZB
zx6QK%POUlCN7d%?6haYEy;{idEr=hb@r^uGWQT4Z?#8lI*?3o*`3aNrAyH6uBG)Qn
z&y$!WA3ZSO0ay=$gx9+s|8txskT6pKSpT=UQR4rv<8<qb)<I5PokQ$AG#-b93?dPR
z62BAsLnt-M9-H;{CK^ApU@+(Upr^}Mvg&vf3qLTxhn5=xt67=Avdb%S_MjYo+(k(z
zoL|;JVE|dDWk7!@R7kP=!=cZhs&(?d?W1OTTX^qQXj3Bs5P#$CdVGQBWb@akfC>ue
zsx`><mKIMS`Ra~*xz?ay#UgaDXTM?q^CZAY1T`?BQSP8|RC=B!J171$3_AfWCPit{
zU3#`0(33OwFJcv|VARhw#@^ZN^NEDJ(l07G`eoz&F^Y_CJ0D)4@2EPu+N_UF%whlk
zO1-pm!f03!X703U(kL;2p_HmK8szPcW0wPGR_Zbp&B@Ilqtw4ugLcd)IcCYInJ7o1
z&ByM#9a|0hZPsEoC{0P=Yl3V!^v%k_YKdTL<@F#XbdBQ4Qja7Wb$wNB5gdjBxBQ4F
zeuxrqAxtCM>QAi_7js(}RW-$I{8X-!nwtK!`q=XxWLNzvxgzrb>JoZ60ud{2%Bwnf
zYfR44tqc+4zv6HscDBBVquB6xnl{LO_5p1R<S0Ew@yY3ON8-iF2Xe*pgCAQ6U1?fZ
zh0!mo!)jK<Pr-vz(e`4F9+8EPhR)7ZXe_Jzz#+Sy*Nk)|#BHY}90L6xA%3XbL|)=5
zmM^zvHBH9y(YtqmmZ<JLtuTu18}SN7E^rZUDolHk7!c#3d<V9WDHSqZ9?Y0pyXgH$
zvMX7d5{P$gSXj(H-lQ@NI#1j^C^g@#7nqhDjd<kCP7QX0uXYoL_`p1-lwXQX2ZlaB
z{cN;($tNwAyR$~=`>}2Dp>emM$B^5b-aq?)RK36!_LbHE_PFT<5C|gTlK8l(=q<*W
z^%WmTX}Lp`Md>iEGCU21OC!53Qkb{+jtoG{Rk452x^awu;45<y9whXmHQCoca7RW`
zjn!0<9F=iN+eRK1Yz5|)$TN{gXVOm3z)RF*r`9#pi@!ufPu8v(aJ>RkYAWYeyD}1d
zn|~#)K)+7vtFXVQTbQ>>7<$;D)WXF*3U(6`pt$MJf+om{5*i3(fqO73>t`eS;?UYh
z9HF{6*$NGuU+&hMos|vz?ln%a>#K;hoUV;CSh2EzWYg}HE9I-ymh7|tMod$G_&+Kp
z?fm86F9i!5=l>EhN(~PGu{w0l(n=aR9b$;k#Y7TjvKkQWM(mIL|6_G8!yNxa%!%iT
zui^}2MW$*|ame9@&30jkFpaVEa`X`tf2>NvBb10sn`gm&BzB^jr3HhXh*amt(f8e(
zUQXTHWKGoq92kOgfi3`k!1*RiwQCxoOadM!Dj0}tMc&cFBW$p1mS5m)Ee+kO1ZU5w
zYMsd%(=@<Y<R~z)5zfWhZK$PxjVU&@0$Ezv8d_XG4J_sL<rxF}UvyA9`Eb=vv0E2M
zwnVm1ws^L8wq!PBPtIA2KS&(VtI5?d{SaEf6}(JX9NBM<Ty%(OLS|jp{{NgqX$G%R
zXlb*QQ6vCP?*DgF@Z$h-G0u3SeTtq-nhJ}2(Q^mm^-i_4u)|RfVe*kWbXD0tohPv$
zdp?`$%{o7)e$_Egrco+qY{W3y3irA=Z}g-jO@AGl=3d4JkEgdcY<+*80(z*)(nzBU
z(aticGoT}7*~fJ?y?vV%DnI>g8v&b|*&#z6|6gHm8I(t`bqfb~cXxMpcemi~A-Fpe
zJh;0%1Wj;v4?MU_aOXjS6S$oB+^@cSf8DD2HG67ms=N2D-D_5_m5P5##mUJbO&X2v
z2Iu=^-H`#d^=Y4hDsb+XSJlv?7p~M{)2&+6AZ#of`>}itNtEB285bL+Uu9LYaEkAh
zm(+Ob-b~A@&vccm!Q?YR$~%=?eH2E?8-T(FpT6=PzH_r~ju7dyO*O02&*bJ0p~1}w
z92Xs;j8T9#O9e8gn8&R~SN|Y<#G&aNi=QdSVS2BIHjF+i+aOrS7dlj(9Z{k&sUEF3
zkvOd+azS;1MF%=sHOHN^Pr)-G>5wB!Pcna=U4!?FPwK6}{bxb>{>0{*p&BKZutDAx
zz4l7)yJk-|BxgysSW@qH*Q47B4*a2Ha+Eng`5!>*Kju!Ty%{*EtENMp`GlQQ9ey~e
z;keT^4?Uza3LHwM`3A=z%_xWlTN1&cMiN~j2F+(3SyDCFS;zQ6TpL{{*<j3u{$7;l
z9VenUt&0LvjUQG%p{Cvk^nd>bgg6a{pl+G!Ype@^{ELlqF9IH#&$vDBgsKQLFd_m9
z&G&)h7$mecW4;c!LX0|X?%UP)P(S*?k;C0|EZeWFTc93NhN+Z+QvEs7s&HuM$LYV4
zrpBPOI;A7lK{{p0fnG&USty~#FlFU0CpdW!5z|nrMWffytQOwylYFsAYY+MRIX4tU
zE&j=t%NJ9-F>Y_Yjm>JXKB<?9ovZ{;@^8Rg>w12h89rb*SC1H@sy8AYl-IMkU{>uW
z{5!>_)DV*#MM+e;B}(0@!+#$S3hH_Cg(&(AjU@hZRC9>m@hd$))X{aH`f}rr96=Pa
z!}zo^&(5P&$ArWyCeg&{<crs!4KZFP6)odizdx+WW)GhSF5FtS^pvYbo#@g&ogIn&
zs}Q7#nkT6Sy~#3DIS0f|T3j@PmBpdh#*vQIf0O0vD=}>b89_8UkfLNCDvllg@D{CK
zp8989K|E}Tx_0J66s*axM3;%WMEN)6dyn8zvJ6Z(=ta=I&9Y*ZR_lWNTx~N=0HxST
zyX<6b(?elbTBVwK8B5y`Rr%1+Bzo)DeBf*^9v<fXJze0xAm5;Mu+U=r^lMD^di%`n
zp81h%aWUa|q`%q#U^&hE^iObxM$40KcLj5RbaL&i5Ny%%qXSDs<z3W6rb9a}lVpD5
zb=)}+C`YQ2;MYmc^kQ8|GnQHIp;y5BLBZrTLWgnf6o47?`Ht<9O~dQQ<hG>RiIZTt
zkm^1ymTx?TGt3Rft+;(6nq(d*OK1pEss|2H;&_)$9P=kU&?Fwq<r@O+s<r@A;{dgb
zpoC5fJ%b7TokOOO2mZDgd+4_92)2m_yQ7c<UZf045-)+Ph$~D9!$XnQ17SxWdNCPc
zLRc9;!NS7D1)I$*59S)O#Q@#eZ=ezW2aWuVM;nu`;A^UIUX&WNH%*iLBZI4GJ15gn
zCnw9i2Lh=#abcI8NL^_=gUxD1w*!s{tJe0NR+{hor=c%v{{Nk;K=>Hij1}By48Yia
zogH5m{Ex|Fl|#{CGT8t=nA?tg{a1XM^^DM{4yTkQ(eMYbSWtUA7ej!_-%@&Xyg2I6
zZ0x*lquyv*RDB<$K3ZNI+Uv2b?(2C~QLggKXi<d+e)#>==ziRxndznAV6}R+^<nct
z3~UOVdl|1=KmBtCI)YMn-Yz^-0DbKjsyI{UZr%1PukK!BSYWGVRCVeoO0)5&p*z8V
z$|lR%<)2<<u!-b_)O`NJ=K5E%?eqG;_Z?6V$>(flT-P?_&L7qP%Gj95ChqrBd<8|3
zc(!9fl-G{`w!IB!E?jEf(#^l-i^NUMH;v&Y=_E0y+6E{U5l>L4C{YlN10oWr22x7T
zcHf1Wr1MQA&*b+e<w1X$3Q_)%v)I56{6;h{CnGni2`7D|Wg(*=&=Mx0&X>$Qv6VNH
zr`N2>a-^_HNX$gQL2o2EuvGf0qb|V|R#Ao-?t>Uru^&}|e#d;p+|VMqptWbwz{-oh
zqyuk1#mc@g-++Yd?jq@P2vFk-yC0g3O;#1sfPR`X`$ia>jk`-ye>ss$<36*k(u}X5
z*=z_(_n?zbYl>A!Ybw>E8DwqvJdR-QNFAKUTPl<lny9yTQp$RcKz9^uAS6t3c4@^k
z?<0Odtt#i)VIk_Ac}h6o^Jh;4yFU43fv@(x>&J6lf#2}9*iI$s)Bh|7NKT#%jln1y
zNCCbK7q)18z=0vT_tF3!A`TX^IZd``xsAY4oX<QCt~W3xFf<aD@|E*;3prsHH0f!#
zCh;h=ei9Aq`c=j9WNEXO*0t2#zKb1Gr5cX*p}O7^{PfgvDR#z$(EF%Q;<dOw>b0K5
zifnVBZfYPRbRMG~9ie)>DdvZX;oe?H+8SI}Cg4d4sEAO!f@hz3S0a7%c{h_xDx6JQ
zDAuzZeFXN?UNkpf-XwK7L*cua-MuK%=Z&RWdzP&1-D%lSM(D8YI7GAL%Aa%-Xskw4
z-fAxvNb5%K$>j%rYh22Q6vH>eW0#CT=fz6Q3@gpRc0hkF#KIobnwCJMmN>5xuQB9T
zgp`{F2!~j~g#w4Q;+Q<;F!XTO&|dnXyzz&biP(kcJmo`4h~ihVg())(`;<SkBv~;#
zrCpL{rjmx*y3VW&C?%H6L75^yD<o~Ak0`i?Zxge2MUt`xJi=444~K(=kbAzJNS99r
zk+$?03Xx_D0p0`i&CL<{?};C9Z<_!6C)Tf!vupo*UidP02BHO9^*Ex#)gd@Dl87;A
zGN3}D%^|rs{u2>uEeeVLEtY{9@=<zI2BMWAxp-PX?j!I(aAkaKp=dJDAEQ+vxdi_E
zn(W8uJ+zEY#Tev_m=8W-Mj3p}hsHbCe}i}kF+sRcT<pC6KMNI-lRM+u9i159Vdwcj
z+n+o`!-ReLw4egh9X^||^!Ukk=^AuQp)aOpxM6yBWz=K_^Ds@&#wC}eX7B%kOdnUW
z4x0Q`rYhHx%wIN~T?djx)a)jlQl3%`^WAV>X$ll~6Bf!XaJ<<$E)Ti22dRuJP6N1)
z6g+~A3=WtAHMsy(k6&|-@_D)6J}us6&Q$F@4cNP?t}H;bW9N0ysDARm44G^zfcWvb
z?>BGxb85`WP_L1^3QK^3ctrA8mZn*<D^~`C{Z1oEy&<J*c*#;f$toPhu)r}j+UI?n
zT*6$Y3fRd#+AG>ZCe?E5K1k<pC<r@wMgo0gZ+jxb!v**N&ef+I#ZhraxHh^zJ*>Ve
z3^kQh@BYujg(-foj7|hvvZYqFI=jhHYxE*<74Y>M>Exxf6eEZvNvw#-oMcylkZ0lu
zynS?4NA-xs2$1#Y(9*^-^qSN5kRrL7G;$%Mv4#EqJVdlwUyuvs1g?sZRur_pBEf3=
z)4GYy+VP_UrKQ~E$R)6dHOk3Y6oRl)X2mJLsU?3(2I_pn4e9?}AWgo3IFExdpt<q+
zIOH@^0hRIF7%WZ$&9#I~zcF|Z<~Pp~(x;^lT27H-WGoZ2jMiaJVotfL;B9FGi|SKp
zxXYI_Yj|8{1{nr+>sl`6SgT_s3yqCo_@#1Ke`rg50NL!1QC=T8a5n*Q$>S#;?$L~5
zAF*RkhlO6_rHRU+SFH6}FaBVtD!!kb(95~~w%npl{g2P+Y3xrGTJ+wld~tfnW7@%c
zil7{oS(kZo^PRmV2BuG*bm}hFaSP&ZOIXb?zJ_3KbpBpCcun(6(NQdEMB6a+h;PZG
zw}QUmfHlLFP))GbcPw{g2uxjiZ3@KYBIe_9ly`a$L@Xk8A=w6B82_z_Z-|e1ZzkPl
z+?3b>bxEYhb;>B-^fu7>!jj=;&|+GTPNCaoGaUH&(3;ta7#q&n<33!mgq}P2;`Fd}
z*(gQmAqkl<am~EvL=m3`LxRlKYSCgv%onQ2fGj`4*uSwD>V&(9r2;PA(nGRU;^p0a
zgUGDwlP(fnn<tyG*xjgmk+B_pk0`hhLPd-c#><?U9<dQ-5S{BYyjxA?`XrgT_mF2N
z9+Aq9e^J-DMy^w3p-VkWkrjv_$_BnO&5%Wu=HeC{8)ohYLRiWUQ$#1wxze39sAOAf
z0+3}G11BF=#U_N%2oBVAn)}=}(rWm2R6L5Z_&qxbO_jeF`ubGmhR}(Hs61&E2(F=}
z2+O&c{&?@C#0`oz+-i_uBqYnaxgNp`r{!UgE{`Mz+mq=%mXuC-E2t|3=*q*o5h<`)
z;$lugF0yZbMwLUh3?Y%g(JV<M7%A;r1cKgf`Fep5KK<S(xImNwh5_>iy#2ZZ06u=V
zovpy37+Ha6K>jTQIN;@Vhl^I!n6rimYuWU5w>pEo?>7egcE~Xt`8oIZa&Ph_Jkgyf
zvTI4-!uMtHHpaC$yJEc0OR|6dQ6a>%qx`9x0eb@!q|fan8d<&=kUfd7{97JaL%m9l
zmsx7<dx7;)MRLK04TV~fH?qdd%9GKtS-MO*5Wla7@3c=$=`Ce6+-7b3gr^;DAbD4U
z9~-sk$7-EEkiHmD*<{39b67if7)9WdLqIQ3=Z~v7!NIvo&V)ARA)~{b=wpQUVaB+G
zz1$%uy*MxZc@@+AD3$0J(J2EUkZSn1JeII@nY<hJ1hZ6WOk=>rIs<2Rej)`<Cm^i?
zn&a1*uivq6;~Y3i*vG^)>5EJ8jxV9&=WUraHLArH34=MNRB9xF`s==5{3e+*dPu|4
zFBVs|-k-o@<JPF<xh8@7c!>u#a=3F%efFJmO;UF0wRtO{+-EA;-sIf?ama>W(l)33
z^`_667wHP`7OqIeg<HKN8sDv-oIzW0BvZ?#&+2{?{W@<Lj$yaC>NZ;6I)%$N<O9o9
zOLc{Sbphn+{J7vwIK82C>k>#nHBU>r%aI|rBMjoj;*!gESuP^p(K;umlk^+EN2GxJ
zM(CGL@~@1x5({ice{aNrcjio&m+UzR2tOTUo?7i=8pg0Q+?Ai=H@GXjq6@$9JyS)s
zpeq?pL+ucvlLjiriVZ2<gjA%r2!UF<(7wFyXGRAq8l-R4=|Yib+B+o_*jTMTc=gIV
zoLbWJEN2JmS)N$$18SH0rf0=2Sqzf>xC$b__uPMV$o-ny^JKvVB)7FTS?W$*UGKi_
z7q$Jk$i<YRZNx0W4WRf-UkCZ;b4l9|4WmW+AE!<l+6P^nq|rY*mV|hse=tf&FUS&E
z`QhhV6UiM4o}*^%<9x8A&*P_bH)Rfwl2&o`eZ$>~D}NZ6?3il^*OhZEHdiKlXti8U
zEXE%g@YSq^8d;~=1F5=;R(Rv)jF_90tLZEj{wE!zx?dB>*T=gkz0(+Tvbf}eu*_@7
zsz*h(?_&0PMnmNT&+y!0$ddk4gJG-oroT6_Bs(T1=iD~`DGh%!c$C3r@@#$mF?z5J
zbrX4`q{b>}LQmz#+<dV7INEikuVTr)ZMi#HP5~DaPou=*3%Ge6rCqL?Jeyb>y_hSM
z=1jCr%baxoT~d{d3s;Lvm%pGWDI;HVL>qVYKgM`ka`L$Ij=E2jX3c2#$fjO0Np`^V
z6^b#M3*D?aF+3EsN~SNNo}eH1zodVfA@NMHqjBEU_!qGNr4Vyg<I5nSjLrUQeI{w|
zW1EVBhC(8e1zg@uOVhykYDkiH)p|Q``zyyt7P6fh6WVr!Ko#K<M_PGRGYHg`H#rMz
z6Xw?bldtNusExE}R$*ZFWYS^skCOQ+hIZp%G28jo;48jjw`aRmoqEfL47@N^NBe2p
zky9%Xh1+p3tzly85M2k}nDnHbSqF-h*Ds=LNe|2q8uT=45jf6ZVh-=u%r|DczWY`(
z>4dW8JA>|&^b5tw__Ag@_U|I{_N}%Qher}?3Wg}tHc58U7@agcQM+=&7NL=v!ji!L
z*N-u2f=_f@9x)VQ*}XU03)E#CU5u(=8561<7SvA9#Cy`F>{U$Y6RQ|jI8vVIz9Z@3
zUTl>90<7H}(0R+6R5CL1+11~m7%%PP_HU$Tk3YOH`gPsySx^39nX}t>nDW0iO5oEE
z&=Ncwq>ZUxjFOFC8k;2)FrbpNPjwcoFfbCSyEggkNl1bemss1WAb;jtOqQHjfE*f>
zvCflyoDJS5RPv7dhaOkfsn~#Dq-E{gU%gwA1~9C{)YnfLEQ*sF;&*g*EbT2eI~S*m
z*3@-xCc=!)5-jS4eD!!-d?;=pZQUbFeBnj(2f}|9*A}gr>||u8Tgylr)+%AT1B*cl
zpQG$;j0eXQ9~{(r<Tdubx}vPdsC<f}ug5rO4o7G*))m;o{*tq+NX84ZwkEc?sa-`n
z3jAxi8;sPpOX>bx+?@}*Iynx#etAc9=HU2Z%69CE^)6xdkCpJe?%%o3#j*#IgJE>*
zCT}c>_i`&a%eXx>cD24x=T0xT>|tx5g8l6FjCE_nR?pohYoz$qau%?)$K+^BLlkj(
zD?xXy`Q$G!q?nOsQx8nfrrz-x<G5GnA>g&a1AKa$;Q`axCnffycMgk2q#3@<POxtC
z6ySc{Y$1CgM0aQ%bs819H)-u7drT*~>K>_55JfQ}rC-*C=eftKSz{9JpTpd@v~#x3
zI&NLtDweRZ=wv2?U2!r@Z-r>7&%@5aOG%MwHcLuk{;D3c)n$i{MJApZks~Vv0w{y^
zu|MHX3dT&=uGVR+{M2yp%dkO{{mHA!a%vSLxXS!JYN=SJdc~sI3L}d7=7)?)^H?>m
z?;>Tr!M^tTrctYoD%UKpwz9{kcVO?#yBaA)W~n8oqUOnN{!1%vGRw${)Yt3H+>0PS
z+sN%H8Q>Ik{JyjOiymsJl42B09&jh}exC}WyiIKxJ7tpIz;*k}^Twj2-|B)x;7s8?
zwqBC^_sjgVQ_d3FdeiJ-x9w(YO}(Q*0&neTGN?r5?C1JL5{)pp7E}0z0)r^##=(#>
zpkD7f`9q5MC^}7sQVM}oMHlo!CgoFA0b}UY+$Og-L1pF7tSgdUO**Na037@nbz7ve
z^!YGmAq^iT9I(upu_Rjg&&6^wOLnWL<+qYKnmuQ!a+1U&?8PDC<q`P6C9rJC;$V^C
zES3^ecaN@Ug_2OS^AY|PaaLz%FBE6gTAl}jna-fq!2M;S)$3=F=c5s5LTl3QzL>81
z_IzT0PQ>Ct7JU9I$Q5YCUbNoC(F>NPe!V=|d})2Zegz=`mex01nO{?08<(J7TgeKx
zf`Z;2@0_>Zc20nDpzHlL<Akm6@p^B*pvU*NGXVq+dVM?DTi)(|=W%*p@9gb;-`Om9
zy9b>lm}Y!-`?c`?IK{^m`v4*fy1T!fU+#T=7+`zidXvJ)0nRI`Ua89p0=P<EF3{A-
zf}TXkdVaG$7J$V};rzEndj0)ww+r%vUiOZ9d)_}ey`NodKgQkPbb~oTS?zB4lI`Q3
z@Tcpo1>0|TPayXqq4=>_D9Q~F@t@xRPAT`yrXM?h8K#s}aleZtT(e!ShLeG*Bu!r)
ze?$Z49zSkA1Nwwy_OVPMQJMMAd%EebRI!hpOMZ6pJj#4V0*(8Y)0W<{KEF%iv{?4O
z;I#@VV82+_-Y0S7!I@B-@+2&Bo9-CI$>1Y()cIoDoRhg6=q}dju<luu7*2~awZ^W<
z@0&<Xot)wnL-^C@KW<XzguR;0Ymhb+4Lia6`#IG80`&XS)JQ5)IYEMPeN+MIaKX_=
z?l&=t-G`b-_Vv<%!)`mt{v9opm9W^l@W#Gd5qqc=Q_DJ&;YZMTPv|`;7=o8O1Y;4L
z^p;z4+8tvN;hf-~@>WvuQ`m^M@KF6JA?Cr6iu-F#raohdFq{WSxyv@3hu8v%Q(7m!
z8%MktKtT~j5^uEAp-3FBu=jpM>?3RPh)+J;lvPlKF>G98Y-tAjNI<gd@CJ_%k0Na8
zRphObE;6(6O3e@%fX|)9aWzC9$f9RzS>;5Gp8??ijZp8OXH;0jAzfW*9U`Z@Dkr8F
z3)?Gn)j|$UZct@7-@lHGwfVU}K&D;_CCt1FXd?aTH)1>I`1w+i%wBXd_se8QA~4{m
z4i~lwn{Y9YD#7lAvv7N)#~~WXv^rL>fYqG6kt5=}UAGZYL;2BYJ!Fs!Ths56MoAk>
zee!NJusW$)%53lfXG+A3R<CBEc7)ayWQDjn^BF;pD6jF8Ore>b_{!^JMuGor`#_2v
zAlwzM7&<-J0Ey$$n_U2ZbtXen0X4}F8tNtxjQboKT#?3<4^1R%?12BqzCR#k1L=Zz
zR7fR$Ptwca3Jp0zNvIV3llvx8U^mH?lWppuXxKb;kJ$c^|A)5|l-qJGs?4K9sbg+N
z?#Yz!BfNocW->>@(O*X5#eV}&{Xb4Kfyt{T^BkI^={pwKt6QgrQUi%<I@GnYot;%i
zPPL?gAnO3k0k(exBCthtZ(lGHF_f<iZUf98k4vT`${NqL@`Lvoc6LiPh~RV#vn?qk
ziO`aNvD-YFVMlyQnzDi6NPgsh;Qih2=oOS-L>!5C``DnA^d!exNH9~RM50S71=yek
zK#ytKp*9to%P8|9zfecRp&`wqO%)lT3|KOUb*5x7Z35=eZ=+@SnF9fqzdJe6V;{AB
zgBo^Qr+>0*#vJ^iep&1`YRfeH?oydpAq^*F1!Hnv8{3Yt?#X}C#zwF3_?utjH@1X1
z$5zpdwemhJ)2h{;lW?To#58Fu1MtM`o^=DwfSEGCPY`hWidvsLxh4=LpJveMVRp%W
z9I|^jH)O{S^AKZ_1UDixD#OS&kN=!0v7vAC*?CaZY3;(b(V9Q#+2`Vv%cG#^1^L&(
z6XmUSdCA$o7bscP+jRkvjU4cioA1;5;n6KJXGRu0C(`c);ti;Aj)+@Oi^5iL)W&A}
zd#56BjY;$KHg(q7rpf`_ga>}1puNP9Eb9ET9=E^>rPYdO=5An;`p9D1=l)=l-;V-u
zh;D`oF~YT6|As~;jfL=ESc&@s?(-s|&FCSE;e+J<-xw1IdCVRJ1W$(RgBMMPAY}|Q
zBoF6*k)dMB7(Mj=L_R1^8Kv+s=ouVbF|<(J+yegt6(Ms9u*urFxqFav^6+J7G<XsN
zoC5!s?s#{mq5B#?_UQHt!`~I<h~~?TEM=Q-VG)jBekG>kM!?a1iL&jpY3Ovkp9d#R
z4Z}*gYVvZ$mQv{pKA#=A@1sxi419O#N5}Y%CEYL1pY~lVnqOA)>kz?Q=C>?!tJE{e
zFwOW4b=nP|ksa3&blvX&Jqik{n3Pcl`ge<d3>tQUw7D#5W+*I8Nemo89tLTg;qRR6
z1j(%B7=s3(QRE}|%2W&%MjCuV3)FmOA)=0EqEMG+SD&6gez|4!k+Gs+UJ>Js+#x`+
zmeYnnmm{L25o5-h7Z}9Jf+Ieoz~I0KQH?BXPxETG*C7fkBPHPgv@H8Jm8n_7H7wEP
zxM?CqbIr1Z^)EaiW<eI^`>t^V=y~h*d;2>m!xnyuNscf!rFP~FclG4-k`F(Xt-;9+
zzgl|buC0gBA)f3Dre!aZ75m4ZD*k7+s%Pau5K&lbe~B@*#24_!%$8E_ioVdRP{??P
z7v|9T?m=K6vB(<01$N?Si6PJJa!zo}gdU$HsNpP7yFku{H#I3|GF^SN!}y)@C5a<a
zW4ZHmaNMjO%p5;;d0^eYKE-7s66DrsHz;E3c}I9KcNT1Fn#gG~U$DJmc9R=d_0Dwy
zx3^EAYFe(vLpTdEk26!*5%{Kw3G)X7eaxQjjoar(WJ(nvvtqCEPa$?=h)oM=dgH|$
zdmTxcT^#x^{BM^_uv>e#+S~8+$s<3*{slqWV98eJib@ru_0)5}Kv_9rRmU>li;+&$
zf?|%`(2PcFgSbE!i1P1|S4)E-RA7o{Vp#T#5Uem_w_@T{F|eTb_L_|8S_L`Gzzi+}
zI?tA5^oA0E$R(gj9o9}5T9_76jKbumN#&ssJy0)MX4EIl6pO7N{LNdKscc?1B0Q~6
zvU+f?4(NJ5t2_Svhq~d4L~q~Fi~<^5CUaot8dW($9#PhWA3IrsXvIT$e_M=trCDbl
zjQ4Xm=0~5>$=@{JS(>ibWCKm&0upmZxAV2tI)i?IQZ*YSn#+0Z^iSK^!RxAMtNVRP
z#Mw*G@xjTdgks1Xop+R($IzVORuBCPw$!J0s9PEaO^1PgSR|itiq*b6B&h){$jUJ?
z{PE<%b%fj%e^9}6K_GaRwukT9mTQ}6onhfZ7`0qOewvpZ``$ppu(_;uYcBmPu7y%g
zu4EY?@#yLE+tjo>0H@<RS7(EESlPAOHVE3-F28<_&VIAUOTr6ZQVNn5fVd?RG!cuA
zdDd`~7i*sdn_t<@w0TXQU_LEW?S~raQWh9-R9)2trC!dmp$7SVoZ7;1U;mMgUf0X(
z{7g3OER;td3tuO3{4RQjN2h?`mxft6tqBQ?%9TNvd9c!`cSv#q^By0vlMqLyfe%j*
zV6m=ybZB_mU&2(Cc~%Y2SS#l$urGg^N};rr;c`FA!};S@W}|=c(q*!No-lFUB=!)!
zhhqYc8G?5_;PBsQ&4xtH+890!&Lh!DAZn6+vJ9eQfB8EJm9ly7*7u$9Vd@5k5sC_!
z{I;_gd}4B!{qM|OxBk7smAkRHxuIn#ro8`=dgVM|_J*qWOWK%>8>5b{TK3Thih;W&
z_M|Hm9+8hSgn?{7zwh}&&CAQ8+=Mv}(v?Ht3ZfB2e(2<9*|E~L*dNz(&ufnX+w0I>
z%7a?pD95}4FwOx5d7G@nrWd#^RY^rU=SF4B!N1RpN+vk=_wrd4GBYd&J}?FoNA=NB
z^l{wPi4SCD(++a~t;Rh38QqF8_>$%V0+s@NoO}WT99C8W)?DU%e7sy7mYiJXT;@D{
zJlvwf|F0)9@RVZ6A$bHc1e9Xvfd7k&%Clzcf@7OLaxIF7V2u%m`H(EF3YjD!i77yb
z#iHB*O$moUlROTouuonLktD;JNgVbGBVrY;anB&Z-u7#;h~b&BbDW3}DQHPKuJr|o
z?|D64xXr)xUu=E3=mDqg@lPj+J?H*8RAmvp6_DVWt`G%AAAX;(#?Ozr2E=3S^6$Pc
zV(E_hT1I`RBC5TQ+B>uLglc_DS(Mo2eq1{>a}DWf>L}vx?`;v3&W$kDBVkk>3#uL*
zLSShXG|Fu-*OB{<mG9(PYWQyEnaYm=v<MpHj@j$*VbYx@zf700&MSpf=aK(4hlh;;
ztN(kk`;7s#Ns-1E?N+~T$>y;8=>}+9C}<`7?^f5fP)F=Tcyh%K^T&=tD-RtWkA7<D
zOJ6}Wv?Nj<XjwsBw}d<Yp4Y(T)nB)Q(rL+g-<O{m(%ry!-`}&_+1~fo5%lV*R{65`
ziTHacJI=fdd$}d7%`Q4|^q>oWd|whjqTC)nam*gzBCOgM#g9O@haG@cvCEws&*efp
zJ@CMRWV;8)4|lXHe7)IeKWZ*Ix>NP|^$Zk-rjV~;Yl(WK27L#4-A&?{hjbDkkrxv)
z^zih)a%>@cR+;ff(<oxn6{c=TyUpO^h~Y1h{hyJ`3r}sZNDb-%+o&zmly!b`0YIGx
zN_GISetTj;#A5TA`uG5z5AB~tmHo=YovtZDi73L0e_l=`@DOJ&y-yB;v#qsd5$VUg
zcF4_<%lm6WbGoI=+kv{Q^mn<Fc~u<vE)C?Id-0mgZ{NhtQ8$226OIu|w!(5;W4P^Z
zk<L~X)l#`naQ80h4(9?UTd$*}&8h6}U!H+~&K27#J+8LGQH~gPPpDDGo6AaHU(-`}
zRilU!9miQ)93_n-4)lUMUD4|CL)Y4McO#sBikw@b3F@AYLiwPh?U)OPq+#+MaIN3d
zub*zXAtxwpyz&!?^jA*v(p{$xvAml;utggd*olzs*+u!2SdSC5eC_XylL~a!_R#@$
zgWmF5Bexf~k){;}?w<YoeOnwE5YQ_0+=8WT8)A~L+F}ke#ym+oV|5!0Fi#CSU(_B~
zxxqat+F$<Zo-DUtW<R>y>Ida@g+9j68n}g)a)E_0_J(_(!s529nqnTkm&t<F<U68!
ze@!PFQg05Mra6y0V&<`k;k@5H>-GXtbzDcrU6BtOU`Vv<q(`!rhFa1_ZPUv}LA0~j
zXKeeScjh6%g4rrAM;1}McQv8aV<cJ6%fKkl-S;O(qQK$G=|MrFuKre0x$@4@mYQVW
zzFL^T-S>GNCBg<rK~Hp8OR4L3_6a}9<MC3|VRqyU@le?%ED4aysXT)8dp~ePf0MK@
zyCM%c#k=ywQdUl((7J|3MSet+Zy4W!Hn`Mq2}=p&bIKo^A%25Rq+;el=}E~eCkERP
z4h<XR^pEAFKygzMQtAhbvx;b52MVpZp+n>a4f|Wg(suA$)&j{-EUyvP6>Uf^Qv-nS
zdAs5=etZSWUy=Mp=}fuEofq(AJC6%&V7niD!_<4Ob>#V0d#HgnB$3G&Tnref5sHv$
zqNVpOm8Vyv*eaPN__L+-J(1L1@J%<&BFo}w+A6-xVWp!{fYR>$fxWxsw@&*TwISI^
z&W=pKOzPfFvnQ7u>*UuMv-<Z|f05p&JbT5tpfdsq5aMZ4^4vxE0Z=lgtEedET&_57
zx}UvflNT3n!>y(%RO;h9!U5WOH!rbN2Q|4?+AcsV81HS8Xretds)}UL?pP_<XIMO8
z-xsjijazQMH3?j1QJs{Wf%YHpSrY%+>2|#)RIn^_ITD_(@<?&Ac7TYI3EuNQ?8CW{
z?vTfme@DhRc<}nO0_neXsaT%AS=Czgh#Xzo%3G%&RY?-%g}T#JfO_>f6W;EU=X-0{
zvl_t}=^!}~GB<XjyG9dofr>6LJQD2h>)&5&4G(rH7eL+!ti#s7TqZ5fjHb_msF9d9
z{G*v)_4z=ciuGf}agpRNcZ^0+)f{NI)~@5EXZnL%ypy|AK*Huf<{sC@8%X9<ZD*>D
z08fxpI-bH-N4m}#7f9z6(`b@}`kSC-&EQ>f>qV4fv&7B4|HFq08JjQ&uzr#qC&P4X
z7HvH*{YZ5UQ+p(*QO7nYCD)4m1i<NK_9%|?lye+JX!YU#*1iw&thX39{Q%F&59Nqz
z%{*GMsW*T|E531)QxVOXmY}V5r5-iJj%6Qz{6Bf!;Uq6>m7>+e#ajt*r46G(^%Y>R
zGXeVW)>ANZ<gplKI9kxb-2!jZYXkPw58z1dSb$Mx_1Z~I<I-u8sqA>#w07wz7i(d(
zw6eT$S>N#VNh<A*xZ()=4uQez&E`qrW?qw+X9T!li+_ncs3?70)T$OMKgz}KH3Z)U
z<Xb=42~*L$3yvf=dYBZ}4Y>P|^7MYsxZ*VF|JoJ3d?mQmm!o+jlieLHnsQ9)wBz`S
z4gT|=Jidky9g=&*FZiQXlaws>e6IcXWH&nXbvV!>wOOQ#?r9F(+oEBNHRJt4Y`Tk7
z1EkE6S=4A1aMvlFh}G-g5N`i5WT-w|k9%p_6ZH(Z+YZ2TzWitGM0q?2tLf!k=m|Sp
zVvo_kf-c35J;-h}aq6|A^W5bsHz6AHlR9}nKj$@r=K1{kn;;>PC6z;n3J0v^Pl6G1
zVOleHWofaNzE3SfIxDb-mWIj$UMnUOZ@`o-SiOLNRKt59eubdZ0*~P(u;Z>1ge;-f
zE!1N#y!{rjCr_-RhIY!qk2|{Kllu+p<Xk}{s+&gLHpO{VlX(!Ed33W4@1fC=@|5Ew
zyj#J*jL9L?Q6oW$OjuI$KV|!JIPmZB_6N!16WT6?u(BG>J(WP@(KV#WkdjXpF#X2=
zZ68r*PrGa6Sc7;h31Pqtxt~3@@Q5FEK+A`)`U=uyK#d)TtReEjg>br0KX%ES5OqZN
z@jnCgTv9n-6?yeWqyeH4Q@+9Q<gxi<>Gn?<ZFW1$N@$uEBrPK5ooKtO{w$PuX3Gs7
zxy$ay?HliX4ed*P=W<HFV1El(p5CuO+!^3YY$Dus@P{5<QJ&fgV%{}&CZJs-hz=7H
zhx>I4TY^v#dFAqaN7N(D`DM*M5tU3+TUO;*AoC9D#Y*MTjA%Uc2WLi~WCjcR$BrUU
zm#A-pd={9z5k;`7wg;(=B4GG&JVj?~J1o(ZCAw`sx&lEuEwlk{;#go_UF=}T<J5mf
zcNt_)9WN`wxpzG4T?{1k*aoJZWX8lCFX-yWD!DMQj^eZ>t8RMX)Qu3dA@J?t3flfr
z&XwuGX)Vg%DQio~f2i^{Czu{8@gY{5$&v}gR4d8{Ra_(Im$~zL;+(#b6`CaY@t$hm
zLQGTmM%7=T=oW<fi2->^o8M;9Dm_00qJMf`7=T@GD|5`5M~b#o{<0Q&cRZb|Jk&g-
zVxNb1YaCsnapaV;ou0Y^#NVJ!#?1>l$^{83{(R1je?DO@oGw}dS>WmXAr=0HbWLtD
zO5}s(d>buS>F$c5Ktnos=7V)7APws9e+=`+jGC=%tlp~6PzSvKzy7II3$(>r`EYG@
z9@X7ImN)4laO!IkOVftCyyNGmqv_li_Xuy_fNMHawJcB4BikJcZ&N(IQ(YCg1HT}k
zl>j2a4160O3`qW1-YM$fyXH37yS(G48gD_7X+M}LidlVo(xC6Fl}8}R1yFaQAlj`f
z%GV$$;4a@V%#Yf+D4)ptiuKf3D&baYp)=zC><%aFx%5YYjMSSZ5B4Aj#$Edt63<VD
z7WNJ?7aCyi=PW03g0QO0h)|Ba{I~^zM^T#{hXr5pgd@2Hzl*cQisf?-;V3~N$AMcP
zn7gR4NQz21H?GsJ4xCnnRk1Ep+=<Y)c^kTJAlkX)jW9VTMje3A5BDQs8MbaC*8QWn
zU|DQi{&rtvyGh6_E;1di7dEUHV(%(KDlHP>7r?v2yAf;X!sIj>_@8P^cR9exJc_sx
z=kLOH`Oy?1+?|}^la5g7Maf+gla6BfV5;qm`VfNt=+}IF4hGvFl&;w2>;FkQAfn)p
z%EICe;olVDfk+=RPf_34X1!352H1#AqgP2*UZ%Qt{XyC|W(gd+^HFtv3Y@lfmE*^C
zL=cBYRh|uASK52zv43-Hz@aslbBOHLShn#u=e(CT9y|{XZ6G@}uxC7FJT_ZMn;Yjx
z_Egba<{JG&O&p2k0yiyTER!1naH%gp+nD3B4!389-nv4t_RCcELe)tc#~8+iSDx8D
z6J@<gR`mX>9gJ&3;oHFth=yyx_C!%!uD{<SUBF2T^+86nq&fW&|3+KJB+#K#(!2M0
z$9iEqpSAc6_H*3w6~bx9gz>_*$KTe>mq+!9J<IMaM%R`KvB5@}j=V?^P}X%I%Vx)v
z-j(R)yr?@N6kt8B!~jm+r!j8z^#a|UyAHlR6b64dF#MbrWY`v5xQTH3H+`e4`F6uK
zIau1|)OJu`_UfF%?0mZ9nckZeJtL+^%7kN{mEM~co%-G=EWzkE^=mCD8e{9-?ekxT
wmLc#GxCYnTBYrUnKQ68e(ZcB0-m4f98aq<PgkB6eA|DSsA`Oj<nk?e~0^T$;5&!@I

delta 61466
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
HOC$V0<+#Qg