From 7222431edd28b31c0da004f4d17428bfdad15eaa Mon Sep 17 00:00:00 2001
From: Alexandre Dulaunoy
Date: Sun, 22 Sep 2024 12:15:56 +0200
Subject: [PATCH] new: [blog post] Improve Your Forensic Analyses with
hashlookup
---
..._Your_Forensic_Analyses_with_hashlookup.md | 273 ++++++++++++++++++
assets/hashlookup-lookup.png | Bin 0 -> 105958 bytes
assets/hashlookup-misp2.png | Bin 0 -> 58590 bytes
3 files changed, 273 insertions(+)
create mode 100644 _posts/2024-09-22-Improve_Your_Forensic_Analyses_with_hashlookup.md
create mode 100644 assets/hashlookup-lookup.png
create mode 100644 assets/hashlookup-misp2.png
diff --git a/_posts/2024-09-22-Improve_Your_Forensic_Analyses_with_hashlookup.md b/_posts/2024-09-22-Improve_Your_Forensic_Analyses_with_hashlookup.md
new file mode 100644
index 0000000..f5ef339
--- /dev/null
+++ b/_posts/2024-09-22-Improve_Your_Forensic_Analyses_with_hashlookup.md
@@ -0,0 +1,273 @@
+---
+layout: post
+title: "Improve Your Forensic Analyses with hashlookup"
+date: 2024-09-22 00:01:00
+categories: infosec
+---
+
+# Improve Your Forensic Analyses with hashlookup
+
+Alexandre Dulaunoy
+
+## Introduction
+
+For several decades, forensic analyses in cybersecurity have relied on known software hash sources. These sources are not numerous. Most investigators and security researchers use sources like the National Software Reference Library ([NSRL](https://www.nist.gov/itl/ssd/software-quality-group/national-software-reference-library-nsrl)) and its Reference Data Set (RDS) to distinguish known files from unknown ones. For several years at [CIRCL](https://www.circl.lu/), it became evident that we were finding it increasingly difficult to sort files using hash databases like NSRL during investigations on compromised systems. The reasons are multiple:
+
+- The release of new software has accelerated across multiple platforms and architectures (Windows is no longer the predominant operating system);
+- Software supply chains are numerous and even attacked by various adversaries ([supply chain attack](https://attack.mitre.org/techniques/T1195/));
+- Software publication is continuous (for example, GNU/Linux distributions continually include new software packages), making it laborious for a cybersecurity investigator or incident responder to keep up with this activity.
+
+To overcome these difficulties, [hashlookup](https://circl.lu/services/hashlookup/) was developed as a free-access service, available to the community with a series of open-source tools to facilitate investigators' work. This article covers the creation of the service, the included software catalogs, and how to use it to improve and facilitate forensic investigations on compromised systems.
+
+## From Supply Chain Attacks to Forensic Analyses
+
+Adversaries manipulate software distribution sources, as seen in several recent attacks (e.g., [SolarWinds](https://www.cfcs.dk/globalassets/cfcs/dokumenter/rapporter/en/CFCS-solarwinds-report-EN.pdf)). This attack technique, referenced in the ATT&CK model as "Supply Chain Compromise (T1195)", is accompanied by a countermeasure to detect them: verifying files against a hash database. But is this realistic? Can we easily find a file published by a software vendor in known file databases? The situation is not simple; there are a few historical databases, but they are not maintained and cover only a negligible part of all software releases.
+
+During cyber incidents, acquiring technical evidence (disks, RAM, etc.) is a crucial step. These evidences per machine can contain more than 100,000 files related to installed programs, system files, user files, or hidden files. For an analyst, all these elements are unknowns and can become evidence during a technical investigation. Contextualizing these files helps to eliminate doubts or better understand the relationships between certain files and software installations. Many adversaries increasingly use existing tools. It is not uncommon to see standard tools used during the infection of a Linux system, such as netcat, socat, sshd, but also in Windows compromises during lateral movements.
+
+## Limitations of Existing Solutions - History
+
+For over twenty years, some reference databases have existed, like the National Software Reference Library ([NSRL](https://www.nist.gov/itl/ssd/software-quality-group/national-software-reference-library-nsrl)) or KFFs ("Known File Filters") integrated into some proprietary forensic solutions. These solutions no longer meet the forensic needs of incident response teams. There are several reasons for this:
+
+- The publication cycle is slow (for example, NSRL is published quarterly on an ISO image), whereas software distribution is now continuous;
+- Coverage of distributions is partial (there are dozens of Linux distributions with daily security updates);
+- Proprietary or difficult-to-use interfaces, such as KFFs that only work on expensive proprietary forensic products;
+- Some interfaces support only outdated cryptographic methods ([nsrlsvr](https://rjhansen.github.io/nsrlsvr/) only supports MD5);
+- Difficult or non-existent integration for TIP platforms like [MISP](https://www.misp-project.org/);
+
+## CIRCL hashlookup
+
+We had this problem of known file databases, and it had become a recurring question within the CIRCL team. It seemed logical to try to solve this problem and help the community. Hashlookup consists of two parts: a collection part to build the database and a publicly accessible API interface to search by cryptographic hash. The collection is continuously performed from multiple sources such as:
+
+- The repositories and mirrors of the most used Linux distributions like Ubuntu, Debian, CentOS, SuSE for different hardware architectures;
+- Security updates of the different distributions;
+- Repositories of alternative packaging systems like SnapCraft, AppImage, Flatpak, RPM, etc.;
+- Alternative sources like CDNjs (the content of the most common JavaScript libraries);
+- GitHub releases of the most used open-source software;
+
+The import includes hashing (MD5, SHA-1, SHA-256, ssdeep, TLSH) of all files contained in each publicly distributed distribution or package. Several billion hashes are added to hashlookup per month and stored in a key/value (k/v) database using [RocksDB](https://rocksdb.org/). The database structure is built to support numerous queries with fast response times.
+
+## How to Use hashlookup
+
+The database of known hashes is accessible via a ReSTful API. The interface is documented in OpenAPI, and all API endpoints are accessible at [https://hashlookup.circl.lu](https://hashlookup.circl.lu).
+
+If you want to verify a SHA-1 hash, a simple request with curl suffices:
+
+```bash
+curl https://hashlookup.circl.lu/lookup/sha1/732458574c63c3790cad093a36eadfb990d11ee6 | jq .
+```
+
+```json
+{
+ "FileName": "snap-hashlookup-import/bin/ls",
+ "FileSize": "142144",
+ "MD5": "E7793F15C2FF7E747B4BC7079F5CD4F7",
+ "RDS:package_id": "294806",
+ "SHA-1": "732458574C63C3790CAD093A36EADFB990D11EE6",
+ "SHA-256": "1E39354A6E481DAC48375BFEBB126FD96AED4E23BAB3C53ED6ECF1C5E4D5736D",
+ "SHA-512": "233382698C722F0AF209865F7E998BC5A0A957CA8389E8A84BA4172F2413BEA1889DD79B12607D9577FD2FC17F300C8E7F223C2179F66786E5A11E28F4D68E53",
+ "SSDEEP": "1536:BgfDyKo9d0mLrTpjQ2xioEbuGMC0kDLmLUFqpfgBLO+qDutbxHFb65RRnSULS0pF:BADnGd0mxst7DLmg0OBLIupbn0pJqN",
+ "TLSH": "T178D32C07F15308BCC5D1C071865B9262BA31BC599332263F3A8CF6791F66F795B7AA20",
+ "insert-timestamp": "1712941499.8515584",
+ "mimetype": "application/x-sharedlib",
+ "source": "snap:AUhqNxroxCLKaqLTwtZGKUMbBpAe5EU4_221",
+ "hashlookup:parent-total": 69,
+ "parents": [
+ {
+ "SHA-1": "00363CBD7E44AA37137E8A6E797507704EF111AC",
+ "snap-authority": "canonical",
+ "snap-filename": "BC52ksa3GpCgET5MpLjg1WtmtpKvwI6c_11.snap",
+ "snap-id": "BC52ksa3GpCgET5MpLjg1WtmtpKvwI6c_11",
+ "snap-name": "qt5-core20",
+ "snap-publisher-id": "ccpcJpODSdWMi621YDqnMi9Q8UO6hb8L",
+ "snap-signkey": "BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul",
+ "snap-timestamp": "2022-02-17T20:28:04.914700Z",
+ "source-url": "https://api.snapcraft.io/api/v1/snaps/download/BC52ksa3GpCgET5MpLjg1WtmtpKvwI6c_11.snap"
+ },
+ {
+ "SHA-1": "059BACD854F610F6FBF9E47CF49BA7CD8308F23C",
+ "snap-authority": "canonical",
+ "snap-filename": "H7gdMTiQzGYKTPAyHd34pZS0FBlyENrO_113.snap",
+ "snap-id": "H7gdMTiQzGYKTPAyHd34pZS0FBlyENrO_113",
+ "snap-name": "auto-cpufreq",
+ "snap-publisher-id": "b3wvcwNu3SrCLcZS2ANMrEorRl9z7e6j",
+ "snap-signkey": "BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul",
+ "snap-timestamp": "2021-12-15T19:19:49.317528Z",
+ "source-url": "https://api.snapcraft.io/api/v1/snaps/download/H7gdMTiQzGYKTPAyHd34pZS0FBlyENrO_113.snap"
+ },
+ {
+ "SHA-1": "0844D3CB657F353AB2CE1DB164CE6BDFFD2BB6FD",
+ "snap-authority": "canonical",
+ "snap-filename": "8BtI009xODljWTvzy37M55T8ZQiOiVft_3.snap",
+ "snap-id": "8BtI009xODljWTvzy37M55T8ZQiOiVft_3",
+ "snap-name": "osreport",
+ "snap-publisher-id": "Yrin91Qs2D8dW9QVSQgQg9VxaGkpfQsr",
+ "snap-signkey": "BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul",
+ "snap-timestamp": "2021-05-11T18:56:58.598072Z",
+ "source-url": "https://api.snapcraft.io/api/v1/snaps/download/8BtI009xODljWTvzy37M55T8ZQiOiVft_3.snap"
+ },
+ {
+ "SHA-1": "09FD28A9B2B6C1D7AFA0F35D63CB90E19607DD73",
+ "snap-authority": "canonical",
+ "snap-filename": "DLqre5XGLbDqg9jPtiAhRRjDuPVa5X1q_1778.snap",
+ "snap-id": "DLqre5XGLbDqg9jPtiAhRRjDuPVa5X1q_1778",
+ "snap-name": "core20",
+ "snap-publisher-id": "canonical",
+ "snap-signkey": "BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul",
+ "snap-timestamp": "2019-05-29T16:03:15.848435Z",
+ "source-url": "https://api.snapcraft.io/api/v1/snaps/download/DLqre5XGLbDqg9jPtiAhRRjDuPVa5X1q_1778.snap"
+ },
+ {
+ "SHA-1": "0B1FF89DAAE9D4932E5A09A3FC6B014C43219B8C",
+ "snap-authority": "canonical",
+ "snap-filename": "3Ng7sRVkFDVIFzOMQmiHK1pdKWHbkOfW_492.snap",
+ "snap-id": "3Ng7sRVkFDVIFzOMQmiHK1pdKWHbkOfW_492",
+ "snap-name": "bashtop",
+ "snap-publisher-id": "jyL6NPmmwE6knQhm89MUOgpM4FSKEUJa",
+ "snap-signkey": "BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul",
+ "snap-timestamp": "2020-07-03T20:19:52.131066Z",
+ "source-url": "https://api.snapcraft.io/api/v1/snaps/download/3Ng7sRVkFDVIFzOMQmiHK1pdKWHbkOfW_492.snap"
+ },
+ {
+ "SHA-1": "0EE1130462493787F486BF66B8DE49F6AC1F98CF",
+ "snap-authority": "canonical",
+ "snap-filename": "DLqre5XGLbDqg9jPtiAhRRjDuPVa5X1q_2105.snap",
+ "snap-id": "DLqre5XGLbDqg9jPtiAhRRjDuPVa5X1q_2105",
+ "snap-name": "core20",
+ "snap-publisher-id": "canonical",
+ "snap-signkey": "BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul",
+ "snap-timestamp": "2019-05-29T16:03:15.848435Z",
+ "source-url": "https://api.snapcraft.io/api/v1/snaps/download/DLqre5XGLbDqg9jPtiAhRRjDuPVa5X1q_2105.snap"
+ },
+ {
+ "SHA-1": "1A092638422762239916983CBB72DE7DDA4AC55C",
+ "snap-authority": "canonical",
+ "snap-filename": "YLuShGmTbSKFis3tecfrbi8x3VhtxAQu_9.snap",
+ "snap-id": "YLuShGmTbSKFis3tecfrbi8x3VhtxAQu_9",
+ "snap-name": "xsos",
+ "snap-publisher-id": "wsytObaH0PmCvRj7IuRcloFzbtXUu6rK",
+ "snap-signkey": "BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul",
+ "snap-timestamp": "2018-05-18T10:26:21.757359Z",
+ "source-url": "https://api.snapcraft.io/api/v1/snaps/download/YLuShGmTbSKFis3tecfrbi8x3VhtxAQu_9.snap"
+ },
+ {
+ "FileSize": "1249368",
+ "MD5": "E8E201B6D1B7F39776DA07F6713E1675",
+ "PackageDescription": "GNU core utilities\n This package contains the basic file, shell and text manipulation\n utilities which are expected
+ to exist on every operating system.\n .\n Specifically, this package includes:\n arch base64 basename cat chcon chgrp chmod chown chroot cksum co
+mm cp\n csplit cut date dd df dir dircolors dirname du echo env expand expr\n factor false flock fmt fold groups head hostid id install join link
+ln\n logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup nproc numfmt\n od paste pathchk pinky pr printenv printf ptx pwd readlink realpa
+th rm\n rmdir runcon sha*sum seq shred sleep sort split stat stty sum sync tac\n tail tee test timeout touch tr true truncate tsort tty uname unex
+pand\n uniq unlink users vdir wc who whoami yes",
+ "PackageMaintainer": "Ubuntu Developers ",
+ "PackageName": "coreutils",
+ "PackageSection": "utils",
+ "PackageVersion": "8.30-3ubuntu2",
+ "SHA-1": "1D4AB60C729A361D46A90D92DEFACA518B2918D2",
+ "SHA-256": "99AA50AF84DE1737735F2F51E570D60F5842AA1D4A3129527906E7FFDA368853"
+ },
+ {
+ "SHA-1": "1E10EA9987C122605DBE27813C264D123CD7F06D",
+ "snap-authority": "canonical",
+ "snap-filename": "3Ng7sRVkFDVIFzOMQmiHK1pdKWHbkOfW_435.snap",
+ "snap-id": "3Ng7sRVkFDVIFzOMQmiHK1pdKWHbkOfW_435",
+ "snap-name": "bashtop",
+ "snap-publisher-id": "jyL6NPmmwE6knQhm89MUOgpM4FSKEUJa",
+ "snap-signkey": "BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul",
+ "snap-timestamp": "2020-07-03T20:19:52.131066Z",
+ "source-url": "https://api.snapcraft.io/api/v1/snaps/download/3Ng7sRVkFDVIFzOMQmiHK1pdKWHbkOfW_435.snap"
+ },
+ {
+ "SHA-1": "1EAE139BC814D30FD0A35EA65DE7B900D8F9B32E",
+ "snap-authority": "canonical",
+ "snap-filename": "n7gtTdzEszxnF6S3DCTG8BqIqQWflGcn_70.snap",
+ "snap-id": "n7gtTdzEszxnF6S3DCTG8BqIqQWflGcn_70",
+ "snap-name": "kdf",
+ "snap-publisher-id": "2rsYZu6kqYVFsSejExu4YENdXQEO40Xb",
+ "snap-signkey": "BWDEoaqyr25nF5SNCvEv2v7QnM9QsfCc0PBMYD_i2NGSQ32EF2d4D0hqUel3m8ul",
+ "snap-timestamp": "2019-10-17T20:16:37.917856Z",
+ "source-url": "https://api.snapcraft.io/api/v1/snaps/download/n7gtTdzEszxnF6S3DCTG8BqIqQWflGcn_70.snap"
+ }
+ ],
+ "hashlookup:trust": 100
+}
+```
+
+If the value is present in hashlookup, a JSON object is returned with the existing metadata for that hash. All known hashes are included, but for certain sources like NSRL, only the MD5 or SHA-1 value will be present. If during the hashlookup collection process new hashes are encountered, they are added to the existing metadata. In addition to the file's metadata, a list of "parents" or "children" containing the SHA-1 values of the file's parents or children is available. These are values that help determine the origin of a file, such as its package or the original archive.
+
+To perform a quick analysis of a directory, the command:
+
+```bash
+sha1sum * | cut -f1 -d" " | parallel 'curl -s https://hashlookup.circl.lu/lookup/sha1/{}' | jq .
+```
+
+can do the job if you don't have much time or simply have a list of suspicious files to sort.
+
+### ReSTful API Return Codes
+
+The API returns HTTP codes depending on the success or failure of the result.
+
+| HTTP Return Code | Description and Interpretation |
+|------------------|-------------------------------------------------------------------|
+| 200 | The searched hash is present in at least one of the databases |
+| 404 | The searched hash is not present in any of the databases |
+| 400 | The input used for the hash is in an incorrect format |
+
+## Improving Query Speed
+
+Hashlookup supports a `bulk` feature that makes a single request with a list of SHA-1 or MD5 values.
+
+```bash
+curl -X 'POST' 'https://hashlookup.circl.lu/bulk/sha1' -H "Content-Type: application/json" -d "{\"hashes\": [\"FFFFFDAC1B1B4C513896C805C2C698D9688BE69F\", \"FFFFFF4DB8282D002893A9BAF00E9E9D4BA45E65\", \"FFFFFE4C92E3F7282C7502F1734B243FA52326FB\"]}" | jq .
+```
+
+This approach is a bit better to improve performance and avoid issuing a request for each hash to test.
+
+Nevertheless, the fastest approach is to use the Bloom filter provided by Hashlookup, which can be downloaded at the following location [https://cra.circl.lu/hashlookup/hashlookup-full.bloom](https://cra.circl.lu/hashlookup/hashlookup-full.bloom).
+
+If you don't want to share the queries and prefer to avoid online queries, the Bloom filter is a file of around 1GB that can be used locally to perform lookups.
+
+The [hashlookup-analyser](https://github.com/hashlookup/hashlookup-forensic-analyser) supports the Bloom filter natively.
+
+```bash
+python3 bin/hashlookup-analyser.py --bloomfilters /home/adulau/hashlookup/hashlookup-full.bloom --include-stats -d /bin
+```
+
+## Tools and Integration of hashlookup
+
+To automate and facilitate the use of hashlookup, tools like [hashlookup-forensic-analyser](https://github.com/hashlookup/hashlookup-forensic-analyser) exist. This tool allows generating CSV files with known and unknown files. For example, during a forensic investigation on a Linux server, the command:
+
+```bash
+python3 hashlookup-analyser.py --cache -d /sbin/ --include-stats --print-unknown
+```
+
+will list the unknown files in the /sbin directory. The --cache option avoids making multiple requests for the same hash.
+
+```
+hashlookup_result,filename,sha-1,size
+stats,Analysed directory /sbin/ on maurer running Linux-5.11.0-38-generic-x86_64-with-glibc2.29 at 2021-11-15 09:17:39.486575+00:00 - Found 472 on hashlookup.circl.lu - Unknown files 0 - Excluded files 0
+```
+
+The result on /sbin allows us to conclude that the 472 discovered files are known to hashlookup. This facilitates the elimination of files to analyze and ensures that the present files come from known sources.
+
+There are several integrations with IT security tools to facilitate hash searches. For example, [MISP](https://www.misp-project.org/) has a [hashlookup expansion module](https://misp.github.io/misp-modules/expansion/#circl-hashlookup-lookup). MISP is a threat intelligence platform and can contain a significant number of IoCs (Indicators of Compromise). The hashlookup module can be used to better contextualize these indicators and verify if the origin of a file is already known.
+
+![Result of a hash query with the results from Hashlookup.](/assets/hashlookup-lookup.png)
+
+![Import of Hashlookup results into MISP with the corresponding relationships.](/assets/hashlookup-misp2.png)
+
+Florian Roth's tool [munin](https://github.com/Neo23x0/munin) also integrates hashlookup support in addition to other sources like CAPE, VirusTotal, HybridAnalysis. Munin operates in three modes:
+
+- A mode where hash extraction is done from raw files;
+- A recursive mode that computes all hashes for files discovered recursively;
+- A command-line mode to verify a given hash;
+
+This provides an overview of known files as well as potential malware.
+
+There are also several tools with hashlookup integration with [FlowIntel and misp-modules](https://github.com/flowintel/flowintel) to facilitate contextualization.
+
+# Conclusion
+
+[Hashlookup](https://hashlookup.io) is a relatively young project but helps to quickly classify file indicators or technical fingerprints in digital forensic cases. Improvements are planned, such as adding metadata on signatures and function exports, as well as the possibility of performing approximate searches based on SSDEEP.
+
+The hashlookup export format is being standardized at the IETF with the [publication of a first Internet-Draft](https://www.ietf.org/archive/id/draft-dulaunoy-hashlookup-format-00.html). Do not hesitate to propose new sources for metadata, integrate your tools with the hashlookup API, or suggest improvements to the API.
diff --git a/assets/hashlookup-lookup.png b/assets/hashlookup-lookup.png
new file mode 100644
index 0000000000000000000000000000000000000000..c378141a5773aaed949e5f0fc16d3d84d17ec87c
GIT binary patch
literal 105958
zcmdSBbzD?m*FKD(gmgCu3P_i98MK5V4bmyyHIxWQhtj2zN_R7K4W&qTgLKybzdiW9
z@8`asH~xA5de4Us!(ry^v(H{@uXU}xuWLeHDal~pr?`)VgoG_8E2)BnbngHO>COQ<
zD)`SASqbnDq`OYfI$78`
z@1j7(k&qrB$w@v_bx+-zadTHSy|~#wO-ee#Vg8Kw;K@cKvy^1^$NP1zy3TK1)HK}+
z$9=vPHE!1#wRDtqYiQgfzQ^{_&+owpMr0M_M|6Q7qSJd!R#WF_>FDUNKbX)%^v3uS
zc-KUo(l5h%I(oc!YH8cb*f8<`=dg^mp2c}8`9H_IT*;=7|2||1bN*jXSNB|z=)vI#
zVS^pGq9gvK&!ukTYM_2E+xWSg6x_(N^>YK_72i@buDCYtcS6pOSxKLF?^u*_%ejpZ
zZ*bnn#%AE*`88$OjbF*I7dL+UaUqvT#pwinJJzq9iV=n*`(p;+njk|w3JOo@>%E-Z
zTtZsf-EA(=bBa_`EfZ5yL$aXQb3OIp?1|E;&wYQ}@aS3szz%Q{Cxk>g%n~Svg(q5?82(agI*i+`K)l$Ky4
zQD1!t{rEAJ{K&4!Z6vc4yUE*=eylB%j|Vb8^Zjr?j@HFFFnxM)$Tl3|}!f|Hq<
zj+r^c&kt#FaSKz930Nh&($V;tzDX8&leTtm&1U`
zp3tqx!F!{wE>8)`$>kIjuxO&t5@3Or$+I|Wh^{WX!OY6>@$jBro^1DYcN^SXUpa4$
zLUB!j<{zIy}Fcf^gm
zH~PUbtcuO@6r`9i?lva_(;egs}yHGXfVFvvaYSmj4
z>0g#=5IjVKcg=QCuSs78)!!!x)@W*R(l_Bfi{DV#dUXmxjIN@h_qI##_q0gFon+hc
zAcb#-k84Qk<8tPgSq|8lLc;Xd=5DIP)6QEeb|+Feexj07lI{=aWRy0REbJuJn*Nu2WMMbjyMkU)OKT>z7(25f!=Jd{-L<1utDw5F
zl=?`YQn6_dXMa8NnN{o7@`m?JpD|>xPds;w#FVkHs*6f*Z@af0Qw`N)|~~Fug5kB%;F@
z(`C9|QO5Ho(Msqvhf-S-;Yljwehr5@Kcar`f`SMD6dE?ZcYpuZlR>zEBt?{EGFi~;
zmAZx;7Kqx~OJk9cP)OK&F%dbJDN6x+^wK67T=LmnmYs&RUEK*LGRLvQb0#ZU%&nGl
z(zj2m{ZvQ2Pl$CwBRAO9HU%lU*K}L=NTTaJne#O`OuefDsxq0l9(?=58OFMAwF*go
z`Yh$Ou4obQa!d
zSW(~l6R+0m*Z63-G+7lD70=eb?@sEDtuL}Oy^gV4a277bqHLk_CqvpPgwGi}jjI~n
z;Wv_2Ub1VOr
z0e&PfQn_Bpa)1ab%L=Dgr*pjK15~a%(-?kj3kJ=8ccvX-?9MyW=bs17lNtF_3P+`E
z)dD$Z9SK4p0rNwztg~X09MH>Uu=sVJG!E4J<$WXKhnHkpe})FU-<~_%zu9KWz-vXB
z=A$i4cevg+=gk|@CZR3CmvBZe%$M4E#5otZGTWBGDbbTajK<$HQ0j1!_mV8J^5d~Y
zpZOpzKRnsRY&<*R=XJI3Z4l2@P!tnX+kS}fS@W_aUh{(%G+HDu;}qQ81)HV$B}+@6JJIE7Rg?VMru
zy{~>&mjvQB%n|CwIS17->~c4YLbKXBR~9Z&<&S62QLI$ht%Fj;^3`L1+lktEv(UCA
zG$V-w*=ZDcFME1ks!f{4*$Wol3n)(R^vJf{8gED+v8pO{o;`I=6c33!nY(62OxjfW
zcZIiIM-C(9Tn)e#Z=RdW@Y<;jj(I5KINyBdTV|%m>5SX?dS;Y6e80
z;U7=km5}+rHZ(NHQghO{Y0ZE6xss?5-;`v1h5?a7(iu@lEQsZek(Ss@RiO%1RW}^;vWi}AmCxe5KunVGxY*d|o}R+&I#tVC<%4DuWv13Mb;N$h
zn`4Jyu{^3iPIHAyYaT>Htby?o%rrgbTtp2e;
z{G!Wgmse&^W3y(*?cn!4nd+$eOUuqUD47GAa@1pAe93zJF)o|CBjYKj^WP}F?0-6B
zB!C{vE`7K8sk2`MvTbK1HSGO8OpDQir0O&?EY36VV3HKCBqi^@a-A7#^7b+tOz*d;o&vfJ=NPmjhglzln;>n+rhB^(})J3Cw(T${8iHtkE~R!9?$o2hrp7`k?>cilGH
z8ZTwjYe?MMvJS$glz#T?S=^FB3O}~r>8w{2sXip8de$?{s;D-IwW#L3+pGuLaDgQs
zgZom1fctjkSj}$JWzA}`m0#JPd~#khF2mNlz>}I^ayCi=Z$iqkJODT4c36}gkhp>D
zG#n0uQXq%XH#Sd*G^?NGB&mx`9W-HY00Kj70&Ut4v&-+?I{EznkMY>
zV?9E`eQzE$BR^|cE@lw<<7x{7bq4uLI8hbi!ZtjNj)s)1X
zo*B0}>}KfAm0h~eg=Lk^ROcIIv3t!4`aV5i_*zhKMVqaP8-rjgi*XuyLSF|N1qBla
z#V@h^qQoygwgjLZ_Oce+@6A8c^W0#d@!H}B&d>orKfGfxRmEOCbBRsKADx~)0EW(9u$RL!S2<&Vy?Xk+sn#O~27FS|
zt}o95xUd3bXgrobS1ilP%Nv2D4CZ=H!0Yb-u42KGJ1Y%=jBdsJptH}`)6FbZ|`x7SDzX-+|-#!T)1O7nI$44C1
z^=9b|9HDD+a&kn#;efLuX5@IOaqUv1h<&Xtm9X>2!vT?~&!35kYF8;{-IuWM-@i}B
zWzdY#q45cWka6#)46Q>KwcFnH(l!B6mpc(v{x>UOuiRJK9Ty-T^#6R2vYg7f`JxEkfG{?8JVT_$qPSRCSs?HcH@=P{
zCMWL!UUPo2S*%s-$Z&HxcSFW+O%^3_?H;iN^V%FU|CJ>dP9+q}*>v`vm{pz2>%`i&
z@mSqETL&?s{^4ZY@9`f>&pQh)(!F+s^t`tDnr^PWczAe_ejJ?%C?3|3=6Qo`3^2Yz5>KF3
zxtYUZzrfhU*lkUvgzf9=OaJg8YwQ_PrgX$2uwsW+st(r{`p?bI7RnUp{rTr2x
zf|He2Xiq`m%c@>rFkR#DAuy17%mXnOyL*Io8xBjRwynoY{6WAPom%+#B+--bJkBcy
zRH`4lcZbDJr{CC2ZB3MugRl%75aAFYZ3w&V^nnl~FDr|V7zmK14SGK__oa)aU~<&>
zq0vI3$Mn1+7+%J6+0Q@C0U_guT0ToBE=b^CzC5snUb#XbkQy*@wOeJd$jj7p$blRp
z7Vgw6;cU5zAnbKAWrsGe?0Z3|rKKgh*Njr5%OULYr~PnHA}T5hSIp~Vxo)$_c(pGH
zant>!E?yACkWoHO=XbR<;|0Hux8L9zin1;WWKOpJ^yi1!>(e?qS!GT{fXGB!3?
z>y!S_;M;0+$+dppT{J5zYY6J=o2rzXkSSg{>$NN9x;xuXs4Tj$4Kg-3_D)Zk=;-{%
z$2GyT;RK@uxB1W5cA1r{iLw-Ls7_5P(PKXoyG8i7AD5I&=3@A-(-Kdw+v5CV>bo~N
z3j6=8k*Tlq!Nd#8fMSTah@(@V7`#>5_1I;y>L%ys%geNj8~k
z0VEX%+_BVlMp#~6p2ATW2@Z#o3EDrXo_53(^E}Gq_Lv=apjK8uOr(DfKFbosrEJ<2
zAI;M}g5ueAe&s6DT2~p1oNH?41e%VQqE`zsDF$G+rf
znVX{>e$oSjwLR%C^WGtlm)EVC=0|=WVE=jf(=Kvw6z%nO)3`EymreNuIyN>44xrT2
zDlvE#C+Ypx!LZJOgxDBW5^q6A;lz+MviT{TiYdXln3EBJikwB0>+OUk4WDyUEs}Us
z!(_9Lwx#`f*LsKg8Fx_{6&02BIVd#YAqm1PLRSor9^p|^h5?%|*w5Pwg84RXT@@N^
zNJf0Gj^%e;=kEu^=PSOS&CJaSZ`U(+V#FA;J8YkO>bBYlC@ePkr+qxCHq@lKj|1=f
zQ7pc?UHej&<+y8C!0b?Q_>qW6N=XS9h)S$R+*p~BHAtd0$euhaw7B+H6Qy@47|%oI
z_E(n%4>t60#hGHO?P8%
zZ!z3$BGDX=YATr9_ZrPf0^%=G!DkFBliZmGUt9?e)x@JNtVhHs2cP$k`v
znV%t3R$Jioad8*fSf7(h>2K0ch-mZokhP(3F4X}mGxak_nmM>{Zw^>E;Vtv|GP!%b
zr)c(f@Dx^~!#2dKg!r+jxZBPz`^+6~HaNrwx&G7)8!WhzsOa7o_is6y${&3DlP5Q_
zrdP;Qak1^tbM4!H#C&4SA0aMsBz}sfTwn1ES1^3cpc9E(Qp2PMc!G
zM6@fbf0RNje>PF~XA1uk?^NHcsaq1hu-|$4s5WOoo%!-)EBDBKat%+ee&Drag{5-7
z-=y*FvgKbB3+Y9C>aOk>&UHgS`B*y5FGN$`{$=G0>)GLm15vJrVBKnda64}La^OV9
zUfWmoqiu2wwb*$YQCoqXhfxQUt}xNM{_TBuj-=1VK$M5^>-*Vi_gC3d>#w_XFo*5O
zlABLelc%y8=4X$nB6^ly-$J$9hn1A{NkQF?(QhhY`!L*)gpDOJaB=ujG|59^cO`h(
zalAwK$%7IVeb0crqBQgYeJPdXj``IEO*4v>?{>pBctq54B{N75KfHpLxuFKh;1jDM
zYt|g{^f*%pV*Rl$bh3Uv!-IP;6HZxcyr!SXlY?6bzdsJOy<^uXlwotuzvZe^d3|oM
zz<(7Ij?>YF1ffT-xD!Nc*#9u3jIBhJh(=h}f1_D?oBOt4{_B{(vsy^&`4kC78Hh-A
z@C*zDwH;d8?1s&kavQD>ybGvAgTxp3;l{x{K9Xq9gTtBuklFEOI-I
zSvp}TTY8F$O|E$6UkI;YzL!v}KXT7Hf{U@CCc0}-%r$0OZ~9~|a9W)Ne}}r*Y5TZ*
z!uVS#qO|$v5TXMX=A3COuAk8ifWQc5gK%G86)k`DCE{5*Nbu-E!E1^4WnbRMzw=~w
zI%Rd$uxUIgyk2Foe%*k8ImrgS9EI#GP!ewoli_@VsHV5GruD3kfThN*oPy!%8aWiP4~5F9IFRb{Gm*c@pN}_?E;X2U=IHBjFwk-7n`BM4OK0bpJs8ecv9F
ziudM;Lka#auHGgpM|u#LrVjLuayA%kT38#doVepe+NbC_76&MWjS@+y?c7r-g++Q<
z=KEi;d97fplm4!1E(o#ICdP!Rz!EP!ms6^26>75HRH}>d@uL56V>X`r-JoeJr9e!V
zruo03kEBoBqpCwvvl+fLWmh%%RZ1UcipeNE4N=lan<(m%zP3jV*8((p(V_LDA3U^v
zHGJc4e0^CXy!1`zbqv!UK3R+;UomTpK25B@;s2%WQQ>$~weL?)vwUFTo5SOtW6n8B
ze_no$^3NQbJEL#O7E(epS5T{@QzKDt
zwBsyqXY|NeDit>ygPFnaL^N(Kbzw6Z;w^I$g~%%nTf3Z&m9hzV
zOs#RdeG1bK`_qpCxm*;3=&U*X-T(RP>oH4XUqaw{d5^&k26y-$ImfYunSv`%0V_%i
zTUgo0(9j=DMbE3ep9D-vy!-M%>A`;{y5uLCQIIw+M6vHst6QU6Bz)1EaUpY_3b3GC
zWeWOiXnxUu;+=QHASnkK8jztT=sIE)YF94y3(T1;bw+?ogA$AGgTnUWWE)mkJ=^Pd
z2ZhCG-%Qt~H_pZc%-quM+%)d6~BFJGh$q@yy7QNaFp^&eZ&*?j9Leep
zrb7yeSSGT&g~iLx&R}&RrF2-^2qwX~nH^0(3Y93|H$IJ2;@6uE8-dvh`mTN}J?B&`
zCqvmuv~EXXt3m1g$`%Ty3^ZXsX?IN2QN>?w+$);J*A6ubS
zurX(xa@r2M%p^Muo-#w4Sc9P_QH*qrA30B#f3b`QLvh0wI^~@zeV5EnR_feOzqu-G
zymrF+JAAqC|HcvXj~wMbEnJaJN}OzkWj85}9`Jpb_t_-&MaNyoyzzdG5D)AAX~lzW
zF=qQD-96}A6QX#YJX5?T*8slnfx4o00up+@Bq-W<)u}d%vU|p{QHI}xv8lO+HKxu8
zCyvsIk1Vp-Ct+Rh;=~^4wg;X4VioqQ{2n-6V?m2{Usv==#fn3O&}atft}%GnPxS&z
z**|R}FP(ZHvzeYQ5YTAHgtnowzlWR&l_yHDPX?}m>1x#Uv)jy?+TnoW;L4GIZ`l<>Q|cY%ETL^N9h(uR=vHA8Ra}UP^++v&MVU}?8h~0
zm=Z8DwpMBLhik12`Wzy@Z-GDEZxXD5u@6qpT**ev3iVC=0zOdI5iHoPCGl;DmcWse
zuM^c{y7lcnWOQl5Tn(F`3+sOk(WU&)6MVRA@)>81Th=c(;H0%3EOPhuntOcFb+^o3
znS*d`*YJ%revVpI@$ZUtnhj;peu0rdDR1=<6Jzw@RN&sw1p7K6wWev2Rh`uQZpi}f
zQ5eQ@@Mq-v^8FM`lkO$xemyfO`16l-S~tGo7*?Pk&^4BP)-O-%;$v)uZv7gy(S}25
zRqlW`K1OX>A8Ne~K8Te*ef*XZv7YJQiUorYvoYoFKnxAme;mvZvOTi`C
zhfiW%KBOd7R>I9Xwa5>+jqTxCr|KxHFjC4L&O(@h
zc~$vjs#!LzTa?z}pw9}wWYt5?@Htmy#Qqp!hwOJ!H!j##XJviqI}S?x)KxYZJu7S2
z(9qBY8qCsahcg(--P6QM56Tsp{`!s}t7$js*1$qhHuK%{aV@cPHXNnRe#J(5ZuTFl
zCmDGMfzCH}I{XajWt#&XA+=c~pBK#q)<>srYC1oclb38wawzP~QYCa5O~x*VdOs64
zO@QX(5+Ow=zG;o`TclV@KHW5Qd?||5P$@*{SJaQf(u7}f75%9nElg-`lFddZUZXZ-mwtNE^tz#L;enM3<_3=y>vr1}OXOv@
z5Ie?EDfJjxL?ba!{<;~?9Z
zZ*9V$H))^|d>_!K88GC#7VEyLv(7!9j7}Pgb^mAowsY*;>krB+8
zU*Dv{I>R?B0EI&q0%@pjvv_6RDm2Q-$r<(gw<_3+2!TSOu>eN@GO1MzWAas48%_(B
z>vQ<|us1{JQj$Ac#tBJ$F0QTp+{^uD@kDp5P^mPjgL**mkvB1UR9jp7PJ#hYGbTSMyYd>FviOVh7j4dl
zzv!T`)vSpM*2tn6yX4#<>)ackpA&_4m2m;IbHRCfy=wf|8B%-R6?9j#VS?dfVNqdd
zlBItB;zdty?~k*z*J=QFJ>jF>73>@HI;{C>?len2hvR2d-BWVvyHZ=ZF+Ei7(J?;4
zd{4BAC8B`<_sylu{?Jf75~NflL7dxkWFH`t%O>RoUlE+8l9uC{l*9HtbwO)X9e{o=
zYk*4m=iXO?<
zK(@Im60JUkGRz?3-66+BLKg}Q7ZF!$Ug_^pPrs*(f=GKg%GWr_@vy$RkA7J0q&9}0
zPBu#+;WgrWV{Y4R@~2v^!C8-Of5Ar~6&j4o8M5}H2){s{*fs_0hb0s3l9*ovheYhOCA-}D_yOS~pKtUlSe&LN+Ui*{Z=z*j_>sTT9u-VY~
z-HnC3Vp#U&A!`-%@Q|)(gW_3K9ukdSOfNi5Xe9EqFWFg7PO!Vb@!|Q41oU*RPXqas
zJj{IT9BI&C5PL2ubDX#4^g=pN}E6B$WNA$ofHI>Sb5b)Tyv(glRLMk@L
z^5Yy^B#@EAef5We)LWWTDM_D)efdMYzoI9~8J{a%wOVJ}Z=XT}5S^#=y}b!jYIj3b
zw#G~p^pnz<*j?lYx$n&7rsLXidH9x5
z0}?Mg^-6!1Y`ALFNkl!t?7D%QF;bwj{by~G1nrIISjK66@e$KrXaaZy2^nTNf9Xg(7|6!-2
z8n?gI!`hhH9sp;;A1?QSzmG(c?wEJk@^V?7@yz(YFFRz{H>uV!LAu7F?D62hA^M!A
zfAf$%2(5Ofq2Dh
zr-CM$)6vG-t9|{MGs9_I>mu
z)fe$!Ik`VRnLLaHUAY_ybiXoy}^%lf)fbG)qbEn!aq6+nRkb2Bo>E`i>*JE2J6
zp?vGJbe$9>=P$U!3A6^Py6C&%b}y|za_+(*AII_ZudBsUXy0H?9OT-Pk%98;WVKEf
zl!F@v+&9|3(OzgB_J)^3OX8%tU3U$n9L1fgXci4(QqXV8U=#HTISB0J8)^Fjn)viR
z#QJPp$r}GcF0IYOqT>$D+oWE@+!WmEgvy%Q935Uy8ML9wT8Z78Sj8@M30Epd$CB>;
zfEN#0XK4wS4OG_bIkt%gx$KG&iQou<0p=kgftrb&
zznse>3`OkP0yF!v93$*56hYoRrs1;aPsiTP=6E0
zBGpw_QyF<{r_&%NxHo;&8(aU5F{yQ5PA=Z0oI>fo>r+enYM?e}zRZWxIME
z+Yg?>5`Xzk_Tu$oq#?lZCIg%kh#GY;+}iuO1A;CDNS=cwZ28*3uV7^WaUy66faM!e
zql5|eUURS3+!#}hy$J{jL&Cz^Y^#mQnAFcfI5p2XfN{dW>Obc26IL3)daa&{xaF8e
zgNPX%FP66V&P`GUH?LQALP|p90cTD4o`@Verj#a
z=2}k;cKX^Dn!!!VCs=5}e*d!XXSCQ(XKnT6lpfZ^!?~45DYKF7FwslRi#dizo(j;!kz$LFo^EzMJ}-6@jWsCjU?P$}8uHAt{ZYtf=*#v@nT@p+tn!(m{;+0ra`
zFQEgHM)^|V9kQ2>Zg=Gi@rHVlOu{ElJ4U+bBsf-e68*%tH0g~pj?M3Rn
ziN@M*Zv6S`l&K=6v_9%|J(TKYCu3Nl=#T1#p9W!Dyeuh9qz)5jC?6ZaimJS$wF(=bi1cj?g97AprPu`=$Sz4nh}ls{2?Ezm~oh_(%_;&QNW3Ll-Vn5
zq;t}@9T`h633e_E`PPU<@dD!+VJS&B&!f!{CIPy=qimf=sw~S&+CDNv#gGN$C
za;o{V>D0ra7$+~nGt%1l1l*RR?$}<7?3&xURMYMMkkyW-S`8Jz<$(urz$*{xJZPA1
zu3ROew%Hhm%Z6*cvFySl%=~6_GW-ym>|H~n&;H?f0W+?3w3>pAm6zrSAXml8GlL
zKkS2PijWC%;_~)vu+ou7@ioj?GylHp5#or{iN?ktWvk{<%`|kzjtCl$fN?@)&+`
z$|@>!rTe94>dBe*W4LU}_l?)HdK8-ARP@6>1|7xsevdrMcAoQ8r+wG4&RT4K&^{~Z
z3U5DYix_k2_*5GlZiYh6XGTwmhFWITW_!SH&rrNjPc43wW>4+g@a~C?(^!e~p&_ye
zc6M%UV8#hiY_&1ANB|mF-dn608C<#nfq1$E{kwP5)Q)REya6lqzFucc(T;*1p1ppy2QApyN%yR=
zFbqxXN6sDHavb$tAK#p=&6>>o@`v63`o(7pjBbsT&lGF}pp+gUO0iT(A~!OFm@%O
z15H_vXc-?AQ7@3oWyQT$OYFOTKk97pR>*k!k%uzsYq85;!b3s*P=-d&ss~nsKB0fQ
zVLI_4D=ZIkn*-S^FiCYqVw&(Hs@($@=914weUQ$A0twfdvp=h-xb8fx@RFEBohm(-
z`kARLA|LyyN1%0`zk>JPCh1}SAipPW2vbRuTqvOyR6ObVaK|;a)kMPFN6h=<0W}qk
z!Nr6x_YC%zb|90^7`aZ_QGzyObn0DI^DX@1XX6kuz9&HoXii#si?D8f*HP-nIgfIq
z`wjcgjWzKl%(S+|UZLAOU-#@&c6kM%d>uT#<3nCno=zmwx)-TDk-CJ^U@vXC$&S)VrVWnUlOxO@&=E
z9FD))cyPU~5I!$B8DvYx+@|R4LvUUyW}zk&Wf%8q>wrOUeO+4S71uRGhu~)S;zbp0
zug5)%N06&KtP!${UPqbwr<%_xz7vNntVQW}tT`@2)iI=`Y2esR`@-kY#Cm2M7wl9YRC0Z}QX`Y`vg=D{jiI5jW*6SC(bX8y
z2hp4-m-Z9H*W;}5HI?0u?cdaJ2GZH((s=90B9X>X9ED;o?kNXu-RI1zF~#~c?ID`>
zCky7U5_E#~<0vAW$2I>$RKoUBfGR16uWvG`7T>iff*$ktcp`;8^l+|~rP!saKsZ0W
zzZE%@4V@23S=>X)=Pq^67UfEkdJ3(N5B?FE6Gr267{6!gIT7Wvajbxvnx|C^45bnh
zQR6%84o{_o$=XPL^+}VYYz1RykBNvEk0OMU9~Yz7Cw^Nj%eBo7F5zgatr(jiGTAX6
z?#+hJU!rwpsM)1?wQ)oCPs<61R|q;?PeceT@I4rCo?E|4t_#r*&9scKPs%8t{3UT9
zxFbw;9^Dx88^@Y(pjO|!jO%Ad>^wTj2Q`fFk4Pe4skO^(A(|7DcjJRmgcuFK&hL`8
zHg8dxZF7E=S$m4=jy!&BMKWi4&t7lS7;0ivW?@NhciGN;Q)e%Hrp2ZQ=e@D6;QhOr
zc?(d4a+@k6@fFtaABOZR(btdQ4eT1m#Hu(cd-6Joq@0i%Xfsg3JqRyRCVz^<6D!Kt
zgK%upw#F+mkcV5}M)yqyVooGlBBL4tp~}upNWV~Fh@HolcL>n57z@_85Lzk`=06Hx
zm&pAoDjxZu%|A++S<6zZhAnLIv;MgEcveC2^(myv8coO+&3~aE<4~Zv6;`MTv7GtJ
zHvzS#uN-f8Tq*NfA%)b7;ljM5Bdk;`y-xze|B!YUTUCA1!7m8O&2io9K$B(J=v#Nv
zj%k#LI$4Xf$a)7q7{*wL9XHa`i+`bzU_VL2>!RC*Ubj6sALoplvtc&e>5X;yhYO9p
zSs?K>{&_?BRLd7K%9g_SmerhL_ny&(qYJvyhrtQLR{N1Z9+r2@!WJdG#E9a5RNg8_
zZrutl{^Y5Y_&j>%(vZ06pw6kWK|}x+M7xr1eysS+K#IGnqzX&CnzY~gm8NMbZXsHl
z%&A)bnd6S5?#V0dQ>u=V@v@RCZ{%U?9-;{buXj?DQKZ$MTzV>vt!k8Ow
zG0H>ci-Np3xG>!i2S3};y+4gZKY47dnqfwD?QzE|1=qyrr9RvUb@*ybs$ga$9aA_E
zpE|97@?2ux>)d`)-ByGMZ_w|KsdB&t?tW{?1o;eeV!@2<&d##Vc4REOXy}dZtKMzQ
z>V1g6R5?k%yP+=8KB^z?!$pY0+C3gFGV8nCkA~>W6=f?akqyjSqe&no_GqP6)D@QG
zEi-N3+{G4_
zmrh7b95=|&f8+4K;NhPpzyLdDg~Ea84OYgbSiZQh?`~f|16DFcX>ggDnU8ko=3w}@
z$TRgCFw21=pu@I$$zIT2km~PlUPl{OcqlyT;OVbKCGWqAliSJ-AURWtoXUZHh3N%I
z(e8ZV#Q(5GBz_+n!07x3zK
z$9?$;2_@y`KXfU{%bcRYTyD@=PyyoVocEN}(hrdT|DOgef3ONFT
z=j!V5U}2B18wPs_*3zS+@vz$VT>n{g10Qxw{!v;PX-GyE-`dMc3^S6dT
z%putq`MfduNh=QcFb^~+^@@OuJcNpnh1k|
zo31rcaTcULEb(+#22MM+dl}^(>tSoP_HCKr9u^o%m|WIpcV+M?=Mpe{lRDKJAC}z7
z-b`OAgZg&TmBY`Puza2I2O}|#W|>2O8;urdLC#kafd2&HQ1`xdn~{3;3J<|@JpTO#
z!LJ({dSzR;!Ppr=sj=S#IJJkPI(DVrm#$zG$+?a0R?qo}+_`fHTs|Ons;f}GnBWJf
zqYnLiW3OJlYAzoXfBF15a#K^2Lh_Rk<~KQ1V-CJ&3ursg8y~U%#Nzo*5~QoCt9G3F95YuV8)qnsVl1ZKnp?p94*x0by#c<
zwXv;EnJ70ecU+NIdGp3{u1O3*{tH0G{&6si;Ho3o#mCaXr~|9-b{lX;^!$e+>q#SC7j0GC*g=NfEFU
z|L(DQ;rn{30ayIYAT9%He4{_(wcA*rUHPNeiwXw~Fk$n`Y&yfqfp#&b=M&SISNg)j
zLgh8iZ_+iuPjp`hB$a*nG80gdr@>{;+mpn@Pm=hoNPrrkb-~_#!Zbmx{orPzes}M2
z=#Br&b!D++z&9th>>(`9v6M$+9v}H{L&fKyCRej9w}WU4EbSF@yZ45A=!~?0CXo
zbMby{#?4$^#VpIpq7lJ`iq~q<9IFL*MND^h%FD}ZBe0+0-F=3~L+B5={o}(83qy>R
ze|2fYTa3aDVGUcYvT<3(7U8swR}=Wg?P`%1mxuk`mx-eV%K^VAjA+Ck%~tZi6;^K{
zN5W?4UB8~V!uud9=y~+`@^p9Yau?b)JDU!aS!KY0Km^c#umWRN&BOCL-B|(5WCT4w
zna@fk?-d;~GIAo9A#$cnlo?PF0nKZP{laq+4&CnG-``+hVrFWV8o~G4a7P=Q>ppXr
zxNd7dl3N_p_hn#V2}RhJlaq7S=W<(j_}<>hiP_b~F_LbrW8ghZk`lEhJI?#^#1uWRtD^(Vpf2Dfk2Q*Pb56ZMH-XxLefW@+QxEbL;`A;o_26EaO+J_*
z59MNycjtU>(!kJ~y6*xx#{TJPF5s$rOb&ucLO;bFJ$z}RWd`I9SmZo+0sEfcdb}AJ
zV7$VT5PEe&X+Dr@2q-6-Y$Vd*WY3a#O!G8~^&*X5AiU#4K}fa>cm+S#VX73QW9usls
zl7YvxO0UhnEVxh1GE`}$0mL8vpOOB6*$foPJry<}7=n4%(a{kIIO8e}?haO8P6yIN
zz+TkipFhdpeQc*|T7aK2Ygat>Y)m)nPX-s)EP*rkSpcfXY;bDlQzh^q
zh$W@2F0?cynYDp5kG=Ujv5y?K#<}ZUw?oUzd2MZN5oCYhNOy#y{?73-M&$GN575ES
zjhuD^tHx8eO`frEp4VeV1b^U+#G&sT-J|ZWc`AN4eD$%8p!*?nOfW9}{DP}=kpDp4PJ
zVwound8o$0c=H$222kdN0wt1WF{3OmrtM?^6wyWNFyim
z3he~ivu+V4CZ^5g6A*BW!R%yv+d$H9;XEd=io%_56;B385)xVyUl=
zE4>B!&~$yD^FV;cfMgCc>+UKa1vb#BfS_{E4~*(E^IJcV|9<7Yen`RhPO@095giMw
z0#(B40O%6-foFT3Z1p5^8?VnciU4;MYGQiw0rzdu^RKS!VB&IDD
zKx8pyg+)XN!8Z+L%g5zuSF)g>;Vc8iV*Bv$Ctw1tY6Roo#dnw{h2N(4a1*fcM+vF>
zQv?PptvA@;);)Pq2PBBT%;&44B!jC{pif0_>*I5If&&8)vjT`&Y`u4YITt|&c3vN%
zo4dqF>UydNBge-FqG3og@ES566Lch(KfevZC;_Oqx3};D$dLem7mdCeN5sCnbY4ag
z|4NgO6~Bh6+TWzJCJcP7kC(*AI2h09Ur|(HMp3<99$(gUEujv$Lwjder3;3gG5A
zI5^~0Vm@#|)85ZL&M!v9y)R0vCwPKzX>po?R9Lgb;10WXg#l=6-C0=o?OP{BQl6q1
zPB{V*w;hx9p|4wD_=o#7hEqVpKuyU3av<2Geh=WdN|4JK0IGkTDZLL=hzJ!P!0BY7?p*io
z6MZpk3nG7iqxBDfDPuBQ#=MPga1BfO*XN4V0#P@e=Q2vFdFyfmga^cnN;C_Qvik`F
ztc&FH%NGOGi)yvgHX`N1WLL@%PcyzkWPjtX
zNW)T-hK*xz&3L^VXLK3KC74I!<>t6vCtHR9BRpbaA|xYAw5eMg%&0Dk@wqs%)UJFd
z<&S*N-q|?|q_o<2)?yqg!KdYB{fHL8Wk8~mk)xObl;!>jvDb&omkl;C8o{6_;G(<%
zlBN&A!Nc`#b|655fQE*U(1Kp{bEko1V+*8CT2K
zyiy?eOifLF{QBG7|CuKA(VVvdY)?PCY@xr`lq+4Vg`xLNk4SzPpJ{sPv1wZ!t!ASI
z{R{JR!tbmwuU)mS&e7*XyOif=WjAt7R!_uD$6a08MP}cp5?0-
za;5Z-2Dcc167)T_h$|9v%MgfRAX^Y4iC>=?$8+irfE3L|5g{oh#cek$`fjv9uGFXl
z1aqTn__?Hv%%{(v+rcfY>BZ5;hYuef$Pq9pr8bX^B>>a{
z_J9TfZnPLL`Fbq&t}+=Fo5G~_Lj)V_A5c0}ZKtowLJVY*CLkJvp$Ff8(gUWF6T5~U
zzzLkg#ArYX+c$O~%qcRrW)s!`zE*`1e8&pCRH$Z#7m!8^+RytPBUF!|<#sUDoD^8A
zxuZXU_e-qCI5ryzKn_y|b2*Qym};gX#c>pP&DU#Za>_>>QL~2Eb4NU7!TCJO#iQkvkbbg#eWyk74TvtQABy
zc_wt>m#m28}-onfqMEz^=lV1FMnef4ibUrMe
z{l#k{;P=uA9B&ao9ti~%%b+Kg0eC;IR{VFJYL168krg>EAjfQ8=jMZ@Uz6UT-$f@Qyc5(i_F_
zeVtAA~IZREQ4qibj9AuX({vnF!j}OQ8e1$7AT0K
zfFO<1NT;-dG}0}hbfa`55=wWMG>Cw7gGhIGNq2X@XP@WZ`~Lp1J~%r&yEEsUZ=E2%
zKNAz&BL&Y8_nN@4f^W($MBuONvg+mj)NU
zCn2g$*HN_z``@nKb0kqS-)-wSk=H3wyU91X>3H#IQt-74Ly@$@rN}wnCNy^?*|U
z)e}#*FDhyx|5U?&=7E3zzoyQA@A!ZE%YVO7`Aq-qUjF}&dyYik`_FUwp9jQ0KmNx=
z^3ER8|2Z7uptEfMYghk09OBm3nD0wRt&Uai%Qau;pVn<{lHOxjQw(ByW|E?zNho{l5Os7)*-?179Z$qC2jKt=
z>YD#KpOZ2w#UFz?^j}CW=rqMiv}Cd9wQ4)phH^Mv&RB(0clF5P=-`{WIbMPbg(-qY
zv7OoQI~6LRCO^SP3k|T}=Usl$bU9i0#v`K>Ny1OOIsfMad)V)WoN>wTa$`o9`4fCm
zmZh{Vf*=3;#yqb}0ck^6g?)S+hJ+q#einDAzxM;C*s-Fo4*N@hAh_q`yf8kTsnQOj
z?SRe|z`#GAD46!(!DqhX_eAIe7@(mD-GK39a&q!&7x#-1B?pai-bK*TIoCoy6)GT4
z@Z4fFpL_{7;qiD$P_Qa=+cXht5r<=Lamu{SUO#VRd^TbHI7f<
zTnGpVuAb;&7asj_hoi0bCf|m6uC-9o)b!^e^KPA=T5fY&8%l}VTRAxlZrhF4k9)5o
z^~TFAf)Wx43u(a%yQY?`2l^PhnP
z4r%{*HR?9TRSnz~*NU3rNg8m3y({IK#@}$1uJv*F92km=15N97#hj8*1Ejt#U7s#D
ztTQ)z`Xf$|A$@D$)(8#TwbypEgR0uy!fVR4}n4h_9
zf^)xZS1kI;17s)e1LGUG^4hnAQCN|kHV)?Y8YX$Jqh*5WDEx&nLx&$L8{pG^l5NC$
zZNm7zb$PkFPE1pOA=6Fse-FHqZO0OpJw;^kk`0Ltj^{56^*EI0_pSvG^*T?6%OjKZ
zvu}w8<$qdrrEPA!6G}H0A>`FPeDj?~_Xn?wE=g9INzX%_zE0ubc+dD<
z(IcEd`itrBzO6AGCr9ki`L|h{o4p3cN7gO45*VMv-me>;#}iLh96zJxOuQpsS)-8M
zw`TgQplzaUVL2`&|Giiw_2_qW!MnB@Mtaf&tTb3-tzqjeqZO`5CYReE+K%iQbl53$
zm?c`7vsl%vk@3+W7LR0TpOC*lTFkfTyG^lB)Yn|AxRC3O>;F|P%{(&mjq8Yk52}}e
z12QSH%F}yiWs=?DDEw7nq)S}ZKbCjbw7uO@mAOf^Vq6C=)E(+n
zVg~I?k~;gJEd~enEKM;{8vZh6NE%|+CA60feaT*iGjP-rEWdUd8S1wR2VeF;l^TKzch4ji@RvD+*6bR{r3U
zSY_qt0rAgr-$gx&1V87l3k6)Nv0rqX_@jJ;l!c}btg*93Ldn*L5-
z&~YJJt-hFi;_N$-Fh)Hp{;8fzjZ<8mSPp*eedR+=o;6bTN#`Ti=cvZ-ICwNnWpc0<
z8b$x41mFfSFvuBPQ}})fU2JQ-APc!xoh@Yg5|6S;p@5kV*+G92!2@~w
zN1@+Tm0GP`kx)=M^cF_zi+`%z;pU7yUv^!LV;HgG8-BIeSEZ_Sz&$QCDI#YZvu@0^
zd#tIB|1yxb54R)!>LuokJ+_+^D@*!-v((~sDl@u^sKiiTT~T4C$XY);YR1ZW{7ivo
z%nK=u1czl7hrG(NQMvhnblQz~C@t2+FK9~KzgV30x|s`3n=>ZN7NKJ#yB?7h`nS!A
z&nKs@p4+lj`x$<#y~L?=uKD&>8KaMHq^xwA$2F~wP3I~kV`KfLhmM0`=A`}t|GC?L
zdnV5)X)m*E?-K=UmnDuU)C3KpTMxz2+?|dwWRqC}B&x$@_D!f3$?BQ1=?T}d9P}tr
zG|fo(^=^^gph;v1z(L1)@pL}*n{QweV28A{y|(yO0`NO{k6%jdf`muu{YYG{z^ITLv*o(yoTRC-PN#Uvj;F
zirsIe9Fn*&F=jQu7lyJ!=!{J_&E#*DiyITRMTWbCVaZ(Au>9J8(yE*?%3I2tS&cdy
zEcjWvpb_JY@s|7<*%PED%Y=w+^!E)KxB(g;+RxE+`#D||5VL=KV5h4vR^pNJJ$Q>E
zI9u6RMHi_=IH-R3vy%89Ls^+LU5o$>WWwlxwx@I$sK(aF@6fo|XkHaO6=RMK(d`{o
zk-HV|un`B}d>VX%$pnp0rD6&0CQRC)gDVfX24D6XPF_b3j3cp;AYC{1noFRFx?xi?
z*krVhZD;B}=N$7CQj&}0Din)hN-VslAj6eO4Q+tV)9ViTe&
zmn)ApJYRM*DLqQ3gTe=Af4WYr4PE|}nY>i8qlktaTl-}~d3CI}C
z6LWrfg~~Mkd~k~+0kGSsPE2O@;F?o+vK-mx!OrplGJ`7Ke+SGwMHsAlGjkF9XX=i
zJ9M+|z3iyqS$>6Acpfp8_+u`5wWhBb*GzVk&bLSp!cE!3jkLP!SwG&X^XAD#7egLY
zLt{s_#(N?vjN$)%gi3`BMNBEVsG#XH)BLVre*2z^Cuhi;B5ZDMUSl$UAnB0b4Pvt}
zqh@%Lb#le2*Xb@|wYueTb=?(`g`61T(F!X{NWChrtVAHFkd5Y@no0`b<{V_*XhYUa
zvC#nXXGpLCs!A9FP-EE5V%c&5t7S4BWgIkSb9HsaqLLvQxrm}w1q1*GaY)UxS`-0W
zV0oH+pKOem+|N~#fLZb6uLt@K7cQo5uXtQ^6dbf`T7z#|vlhqDk806xJbSnU^@BN11
z7y%h!`*{Hvffy$?HaAs^4Ijf>5y(|ar9y>X8KB;HCY|Q*eTJ4Uyj)zdFu{BR%nAmR
zr)a+bQ{3|y{uW*hv8c<};+
zJyNKiq9Gd(X4Nkzxk)7pc>Qd77(k&z@*RjFn0rVjfF8?-{7OWmmY%2uP+R}RsYz16
zaasy=T7DH3=|EUrHAMAPY~B40u&`>OE(-7ngZWxXKyrUzQz-;$5fP>au5JUD>F(}8KmuUGzK=t{0PMhxV)Ln3KrUfI5ET`D
z4;PMr-<1HaJz@xiTs+H74w!G=!`vtu`UWVh6^P8syJQULGfWc+B0_NB;t@1@_M2m_
zguqh(xbYI^O(3BlhYk{euF=^EJoQ9SYtC10C7CMeD?fIHQ%mRNU#*A!E)@
zb9ZjQ=SYf(zhYtvf$3hKY9``^vI-=4xx2f=^@{~C9WE(wF-7KK8t*bsA@gXg#)$*s
zpxO>%N$&lr3sJKON(~#}C-@%8L_wBXTGlb}r0b6a+QRatoFh_OC7}TKQ5h5pe8_rmiM{fq{KcOk%@`D84{T?UWgK+by
zph!JS)eNB!F|^61=F}j|2Pw;xZq&0(uQ|*g<(H)X#n)TCJd{hh>)M!z!E$P@Z^DyK
zMZ_~aw>s-Ne&Okat|J$DtF!i`k#800FKK!bf1ak0oOffT
ztCk30{R*1zvC#juXU*E`C~g<`XJPt~+C1v_p@v^{>BiH?KQg~EN0{JeNErzxf3YZ9
zyYKUuB}iU-CCYzY1y^|y2>16Q?_JD8|c66J_
ztfN+ae!XJy8J*#9bR(5Nf#t8XmfmXA$2|R&&lT(y<|vcQ3}>LEU3`<~S!>FmFSRL1H}b}Oi(gb%
z!$Jz3up{qe@~qcL7YR#Fi$my9xf9CFh-t&Gxh*QoPKnFOo3FI|YCYD{;(Qn|H;(DF
zT%AykqiI-)v`7~_;@e-1X?pAeja1VoJ!3AP&rck2;z7NA-RYpyZl!GJ(pJc!yr=1r
za#6WRgqQ!&naPI4BI4Jx)vd?FohPAF=yWU9Uw=7d`4BTW_ND#cc;W|PEzNJ($J}CP
zPndR>|I!8uxh1a`$3J=du-9$S{5fm-sbPn@dR;2#_HSM5%_~zr&W+(Hfrw3j1^a3KJ+P$G-$ceMeWZ-UshY>g^*
zz*TR_eL0<~v}w>Tc=YsXD->KAEU&Gps&@nE_wVcM&NTrU!zMosuk&Ghx&~1Llj1*PFHjIHPD_ToIfb
z93gyt{XRDB@3Apl;D3RsZ2tC`bm#D}skzx3vOE2O+v=;dF+qfVriq2Al$j@#R0HD)
z)RPy`G9icxv;vfjs_WS*u
z&GrJ~3{^-OL?_~DJ#bdKJgeHS6$~XqAoc*U0oI-hjSGZse!RYNIog`)09F#0(^5CF
zzax*=YK<5;VUf_ptJYDdX+Ufu{e?G!kN`l-0d-uo&h;`&DHk}m4$DW#6bAsQ}BZ71?j)zvAXC
z$=jO~mQ4+xO|SI_&kgTiwoURK;NzI#4;19xrIwB>w>#kIUc>86)_jby6+hp(c>abg
zS{65+S|J0^hQ{Ijxn%Ee%k6s;dFAk(5sFv5fpHvUz8EU;Vmf={3+jC)I|fVo9lqIJ
z{e$jAd*vK4uji#PdB|>-uIP93TXbe0O=#!zjc4*4`2>|)Q+(zQn*X&zNUcyvQ$pjQ
z9VHYkDfV!&ef9n%T0nhPVe+d2@xeUB*js8OWtL=LEl&>|%)Oec<1y)0-AtEGetU<$
ztpph!BCkebW;!?feg3WDaOd;O@a40kbm`+Idx+iXQrCB0zPgcV%=?thm4|dZLMXF!
z1r=*PAe5XsW@!F_bi9oN!@KFVrocizja86{&<7=2n=N=P=`H0_spMJc>Lwkp4i&v{
z$=vvRf#PN!neZo8HFuYFM!Vxg^WbdlsaP}j1-rw`{UE;A?ILFk!+gvIc3czH1#j9pr2LZY@adRZIEy)6qP(
zsf_sFPJht2oYIObj=H*8gEX3=KitMWX;S?mbsf*1_g>x(>ppi=k>f{hHQR*d7}T(s
zsT!4b|CQp;;-17-%a>B4UPI2z9q1K@y86R)O&8Nx
z`iHgt&Sm6;BAfM_^Im9<@*Z<54W1Rb-&BT@?8edc0}5_-`I=lMR*J`U(0Vw9W&c#&
zW8%F_r@J{>idEnc=3c~~QOV``{oLofoWY8PLk%Qn^}AVWgD>LbdTdK#WuEOYQfe<)JD6m%
zePn)+*OT@xXSn*hOGhopA&FxMb!#(o-yxkva&_4ISa|D?`OdQSv7G$(x3=?dZpJlR
zQ`rTFYzKbGoMi5>wKD`94SZLb|IF9F;ho^Ac0W$%rZQWD#ptSDKe!w+;#4s?Tj%ThYVUU8`i(taOPi}Qc8GQ(%|!K|6Eonp)j|!
znOmW@(my-tQ0H$fnd3u4@6EP@mLTqxA|7l9j7k&gcN^#XZSQQc94yds&FKsdeR51=
z3d8wzf(i_KwF4>Zsw>a9VIo2P%xSfRc#K1pMvSN^=;%GlT%d|X%#NU#&^9n=0b#D?
zph^U$lSc8!8w7J}z4EBc
zd`cj5V7Hrl8%Qh|`(6YQ^FyfiXlx?XNl+!FfdGnt(~@k$F;Au7IlPm=wvmk$*RQMW+TP&fDw;Oo4Bp78R70A!uw+
zsz4I0ZY~at$-rD?Y1VKdE@6e$-PYO}SiI6#s3!qBd@2}=5t
z=tJo)YXtSmOAHw^ZAI~#O
zUH2AH$}DD@ySnH)E-~-CJ}Hxv^l5BqdK`82I4OLK&jefGwnd6#(c`XnWvN0)bgwh%
zA3x`oO?G(k1FKi==ao}&?h-Oe*~$K2y-=PX1I2IgV-*?R{8{9G=}0<##?8sJ^89#%
zW}sMzjfYvi*ucY};7hb1(c=*Iq&9+f4;eZk39Q$cRsr*w0>7x=B`uk$4Wy~P4$UK4
zmWwpGSnfRei*>h0Snj)}j#}NomvK!D4s_x<%fTX}>`(bu54+kq-z#TOC&Wdy$fC|q
zx~EPmMx~ki4WA6syJJ{;-o{A^K8*_WxoZ&kscS*3tL)uC;Rgp(!Jdz2O6?KboKX#(
z4OVWJY!&y0VvDc7TG-~~cl@rvG&I}as1|2i91r@gUP;K4ZT)xNY_>wP{d$f=e(0}e
z4yMaA!`B1lM{ySzhBfc+r{);g$$s_0EE;E?X{iU9`PiPoF-j|%g+6`;{pPtVgSLUt+?^hBJ^g;&`+rwo^Uv
z^vd^G@B?iOWaQCH2^C}{DNhf}xXC(x=Wd!-9XvBzs|*|bPW>96>({juD=MW*&Cyd0
z{w%MKrMqv^OcKLWUQqdBT7Xi%i8%8Udp}yd-lcTZX^A2)L7-rqTGSZp`K>Gwh7s3bLa&kT_;z
zrO8}csPNBO&R4I%P>sYz$ooKZt3UKZ(ZM{kn7!@1%lsyFVEIWrhwR+^w+?OFid(}m
z^+vP>eT@^`IzbO?xOE2}P6)_F4ZGiZ%Pq4wh}TTu_J;Z6PF#TX)Kv5jWVfwM-OoSs
z-kjTEjB%|f=Lv~FI>mf(Y;9nCscq^!=<8U<-nSVfLiXaL<5UpA`XGyZMd4JLvp>^1
z#o3zk%M8M99A)Oio_6QGRh$d;8P8mLf5I?treo)4u_KY?MpCPH9r9Sr$fvvY`A4`)
zQ}x0bJOaH#XdAR0ql89=i!?w1=mli4u)csig9B$GkJ{EkP
zO8TG(m-5Js2lkX!>iMAq~EDSPJ?BMrOL^&IkKq&sY>Zp
zdqN#?30%8N(h?P+u4Yl?4V|YS2{i7y{_eH#W|YSN)1-4gdUkodQA3&@k0pbJb&fnn
za9>wf_2w!?6+0pMnJ^3p_}tDE(Fe|uPH*RUVm88Kr_rK
zOIBTB=X-heG!>1K-E>jlyi9JLwCoe5j*^1COSz99F)Y*(Pk%nQV>*mP{=98mJ^x$l
z@p7QmP4#}a^0uH8mo58RK8uWu%9}4LpE$>6ihuR_ww4
zieJi~3^@sB+A7?-Wg;<*$+42e87G(5_qW-8GP+}2;anM{gy?>&bcz!7c)%{cHY%^H
z%lTEOPhZPbbD?Ft!bF93O0P@gt53LYFHcP&HN#M_VnR9+5=;EYGkpC8Cwu!FjArAk
zFbj!*Sp|glsKz$U76c&0dk)fHFlm32Tm`5w9-4viQnL;y1qeY}NJz*S^2dJtg;L|8
zHNCAsk_Dfp(B1PewcOGp3ve}&kbky2-P41e71Ri?0BiqXo<VIsfw%omIgRscVu^^E*b^n(p15FE)5HCPx1<6i{@9{^!mv6go8i|2Ra
z>xiiX@x{}pq9Fa-26sS3e6pV(`VUfQqcmhJ59fd2v+G1_U?
zIO@?{L)C{%>wCBjdc8sz{LQDU#Q-FJ3UwQ1zcOK
zkS$M%sJeZI3jk6e+*-K(lK2fqmd5L#O+)N9DYckMOm+pT`DzLa!y~YOWhEwa2q}9k
z8EJ7-uCxzpH>21}d~j+y^&Y)}hZyT^Z+|19>2mRMCq*tL+St8NohNJLeEK5^=Z#Kv
zD4%urk=aZl>e>8=V@rkn=3S5Qf>N+hE3z5C@{uSg`5hiOXALjAthL2&s2_jG5buX+p_Jo`HQn0cY}TerE~_x15l*OF
z-0i(h|0L@jTYSQ@`EI$dQ*#)mIP<4n>*}*AXHmO15jaS9uUui}xUw&9ujX6US
zm+w^FN6!zjcsS>IZRBgeDu1OkCV$Yyj5YY;%~VBWO|c%nW?}iwn%pN;5pwMJ>=m$8nd{9o++`>D3x??^;oD|x#l>NOCd1qp2-g9Z6
z!x^aZw`An+WO`+aH`Rx`%|w`1vELauH-v3jJvAa|!Dw)jjMs9fNxjQ>u0mVMgS@X*
z?edD962sa2{{7pf1v2ZBK5GF+1Dm&%^5|Q?i?v~iqLH&cBQN*D`m;)iE{o%cj$`xm
z+2ibbR!L7Jk-rN|U&L>c)5q`Vk{_0k{b|7b_>o%RH3#<(w9}h2wbC8fuE!YcX=ZUs
zu5!Z#Ek3uT3Ov2ZGq!>RoK>hkb?23r|M(PepOlvAutx4_eGs`X&EK`HKVeoMsEgFy
z8+#w6ELtC?Q)Q{&m;Lo#N8j9R=OCj@oXjn|C~xGz{rm!XSH7^b1@H8R<*fn~W==w?
zMNgGEa`Jhxe1k6v!)9iLzofsBYJU1|{ctll(le(D|L8$W!RbgQ|F3(so@&?DZdkea
zTY2e5h4%QHKgDo;c3A!{Z1__zJPygeDTVRH0qfLy*vfp5rTM3g2~Wq|Re~ziN6YT~-w(8tEO=9!
zmlr3S92eH@5nqs=-+RcC89C56#c%g0Z8yV`eZDb<5sUN7jwr5>?DA-y_*{n>j)I1>?7_6sPI
z+DjD=GFertp31`^t<~}$I8XY>n!AZwZeT?#N|!@WANDQ$1(D1`CgqL(K$g`bN#$E&JRoe0F=7{8Nv{LC|EpuasGT@2MxXzA(?_y36v6X9vew
z@O-DwBY)?9gv?;t`N!6in2;o{jvu*KfvTr4+#r^Zz;BFJOOiJb&s*RQS0>8xZK~iO
zVNZ;^=>RMqDe6A6`Sb~)DEGLF4o}*sC{6v>_Ob|H43KddP+}kmXBVJaeJ%$!@VWso
zh%i^c%9XK>ueg!~sfw<)C)JAX|9BL@^^Ch(iU0&+B%fa#LSMDZ
zCXn#(5Qv42f(ZzIR0rV+o2eyKRvsZZCI!19tYJYYj8U;^TfqdQTI0x;bras%3gaP~tK+(B
z*-R-y(7B_$f@(HeY4bv((z;%knaO_V{p8e?)dmL)mAH}Ig=J-wptBxvEe9_hLQIcP
zJo69}5ha?{NxhI5=f!~@A}K5$ft;Ga1~HvF&+v4|Kq6k_gx)(U6P5sZgM5C!jWS6F
z=38KWy`?f6z%JBMxRjoYC{Av&AGB)835~Hkx$JY(Oy~bD>>Suc(8RTAVto39q9P!*
zKf$mnWlw_i&sddoF1E+{2?X-Ra{L&mxZPgdqOjfk}Px{m$c
z4!a#Gsl(pO=)ZfGxsfxX)HPY%;g@HOp6ja~(|rxR?I*U0)deruVmdAy6>
z(;DS*Vzc(%_3in)cL_|~!@Uy?oj&Ov(I;Q2GwlrGj_*gH+~eM1OFe4;-lt>I`v}M0
z|L;%zmfPP2a)*+;^n9Ib^(lUsQjg5JoDFj5qAqkuJ9E~YN`FZr4Ne-lV4HSPWvb!z
zVmrd3mM6gJFe~-PZ{|R$IjwcQEk1G{pf7DbI`(qlGG{xO5C2b8OR8m!+AU4t^A#gj
zC*s?AhbcYHj|MHV?4&N*3-?jNxkf$kDyJGJs^&bA#FRYd-ZZhZ6~z0IE7`VmNeTGM
zxubP&A$>y+XiA~VibtK#C?JU$Bw454Sbepz$e5xN#(8c;n6<=iY8rg;d<
zhJ`qzm~f=FkB?o7>CGqlV!|Gt-A#mF%hwwl4Zm5@1o_dFm=@m7%QMCjdQMM4#KA#H
zD|d%Rm$lpcWe%ylen&=znNPqot`lVn+jre`5qLs!jO7(NqKx|716Dv&J7f*~Tyzqy
z#Sk$Klvt-CYiat>$@-3+&OT=NE|%_n1w$3$%OUbfw&s1|(oGqXx_c>2*GTZKJ6@Vc*U67o&f
zBh4mR=H?Sww-$eA@^n63D~tkk^N_tTnwZZv#Ir^8`$seZ^o!o{4!K2SI;H0^DlZ;d
z-NZ2^_tAaQ%C2WPJQ~=+Ve)HdpLv7ukSXkTgBbmE5HZdeX$N!j=hS%W$v9y?@@$vo
zM>BjOiK|wQ1d8aRoEA6YaGuO{3A^C(J0UmoS^4-dy!s#_(H>x<7xSfrOOAfev~-?K
zNltE9FG@~7V0kcaj3_dxNMkUOEn9hS)rX3jGelROxsaN3(dXn1t&zizglyFuv^9Q)
z^h6c;*~w3w+;N-9LpxJs#=41KiG!V&%WpSYWXPTx<
zh^>v(+9!&`>zK1wYonp^&-=(48%e4vv?;~jWWOr?RIeDtexE;zPd8Gm;;*`Etog=U
z+bc`YpbW?Pdd=rn+5H#YtsENXewed0yELKW$o+yxro4Z`8dbV2rlj6yK2wmoj7(`v
zT0A*T3+EDd;856TgJ~=xJjgM!x
z1*fGnLIkthLaYkJSMaAx)7SQj2wpCXQW{q0@FTorpwj?r4tWDRIH-9cz8S#;fg=!B
znuXC0gzCj0b_!2To$?=bbMyR2*=#r-n>r8|mHzBWHYkIX=1ueV(aqO)(ok;I{+8H&
zTS+n`eJ72S#P?uYP()y*#v7~Osb?#3J1Cf3g612=Nw4K{qC*Pu1*#x
z33{!;&o~?F7Z!A}88kZ)d-3Ma;4g^O1}L!LQ+dc?F|7+5wO}z61E889%E1H=rYFea
zO-AyDn$~(MgTM`VE9UYeBpXPAmkcyP*wK8jfpV!QsRuYn#9W6kn?nr%{_r1rJ-iZ_
zn~cB;MMOlzRd5Q-C@kz+)u#jLjn HR$fqSB^h{NfR#jDy$izpH$Lh+H>dWFdNL0
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