From bdf472e82a39c6ba403cee6a7bba556f13de3705 Mon Sep 17 00:00:00 2001 From: Moritz Raabe Date: Thu, 16 Jul 2020 15:02:12 +0200 Subject: [PATCH 01/18] doc: add license --- LICENSE.txt | 202 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 202 insertions(+) create mode 100644 LICENSE.txt diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 00000000..d6456956 --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. From 862d74029227825a6a3f12e631c330d6880830b6 Mon Sep 17 00:00:00 2001 From: Willi Ballenthin Date: Thu, 16 Jul 2020 08:14:36 -0600 Subject: [PATCH 02/18] readme: comment out links to nightlies until those are setup --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index f20d7b3a..918afbf0 100644 --- a/README.md +++ b/README.md @@ -58,10 +58,12 @@ $ capa.exe suspicious.exe Download stable releases of the standalone capa binaries [here](/releases). You can run the standalone binaries without installation. + To use capa as a library or integrate with another tool, see [doc/installation.md](doc/installation.md) for further setup instructions. From 0a0de53fe42b8001969486d39834230eb7a1b1f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ana=20Mar=C3=ADa=20Mart=C3=ADnez=20G=C3=B3mez?= Date: Thu, 16 Jul 2020 16:23:42 +0200 Subject: [PATCH 03/18] Add license badge to README Use https://shields.io/category/license --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 918afbf0..ba9d86b5 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ ![capa](.github/logo.png) [![Number of rules](https://img.shields.io/badge/rules-261-blue.svg)](https://github.com/fireeye/capa-rules) +[![License](https://img.shields.io/badge/license-Apache--2.0-green.svg)](LICENSE.txt) capa detects capabilities in executable files. You run it against a PE file or shellcode and it tells you what it thinks the program can do. From a02ed5c3679aaa23ffb32bf4a828ee53f9ec497f Mon Sep 17 00:00:00 2001 From: Moritz Date: Thu, 16 Jul 2020 18:19:41 +0200 Subject: [PATCH 04/18] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index ba9d86b5..e1ef1cc4 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,8 @@ capa detects capabilities in executable files. You run it against a PE file or shellcode and it tells you what it thinks the program can do. For example, it might suggest that the file is a backdoor, is capable of installing services, or relies on HTTP to communicate. +Check out the overview in our first [capa blog post](https://www.fireeye.com/blog/threat-research/2020/07/capa-automatically-identify-malware-capabilities.html). + ``` $ capa.exe suspicious.exe From 07764fb31f63ec33d2fa3e068a48391a31d5aa0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ana=20Mar=C3=ADa=20Mart=C3=ADnez=20G=C3=B3mez?= Date: Thu, 16 Jul 2020 18:59:28 +0200 Subject: [PATCH 05/18] Use isort 5 Run `isort --profile black --length-sort --line-width 120 .` Update documentation as well. --- capa/features/extractors/viv/__init__.py | 4 ++-- capa/features/freeze.py | 1 + capa/main.py | 2 +- capa/render/__init__.py | 2 +- doc/installation.md | 2 +- scripts/capafmt.py | 1 - scripts/lint.py | 3 +-- scripts/migrate-rules.py | 3 +-- scripts/show-capabilities-by-function.py | 2 +- scripts/show-features.py | 1 - tests/test_freeze.py | 3 ++- tests/test_main.py | 3 ++- tests/test_viv_features.py | 2 +- 13 files changed, 14 insertions(+), 15 deletions(-) diff --git a/capa/features/extractors/viv/__init__.py b/capa/features/extractors/viv/__init__.py index a73c0e9b..4f47b05d 100644 --- a/capa/features/extractors/viv/__init__.py +++ b/capa/features/extractors/viv/__init__.py @@ -2,12 +2,12 @@ import types -import viv_utils - import file import insn import function +import viv_utils import basicblock + import capa.features.extractors import capa.features.extractors.viv.file import capa.features.extractors.viv.insn diff --git a/capa/features/freeze.py b/capa/features/freeze.py index 0225c86d..39bb9398 100644 --- a/capa/features/freeze.py +++ b/capa/features/freeze.py @@ -205,6 +205,7 @@ def load(buf): def main(argv=None): import sys import argparse + import capa.main if argv is None: diff --git a/capa/main.py b/capa/main.py index a6aebba8..073f2d6d 100644 --- a/capa/main.py +++ b/capa/main.py @@ -9,12 +9,12 @@ import sys import hashlib import logging import os.path +import argparse import datetime import textwrap import collections import tqdm -import argparse import colorama import capa.rules diff --git a/capa/render/__init__.py b/capa/render/__init__.py index 0bc9e437..b4d3f053 100644 --- a/capa/render/__init__.py +++ b/capa/render/__init__.py @@ -245,8 +245,8 @@ def render_verbose(meta, rules, capabilities): def render_default(meta, rules, capabilities): # break import loop - import capa.render.verbose import capa.render.default + import capa.render.verbose doc = convert_capabilities_to_result_document(meta, rules, capabilities) return capa.render.default.render_default(doc) diff --git a/doc/installation.md b/doc/installation.md index b7a1d753..dd478148 100644 --- a/doc/installation.md +++ b/doc/installation.md @@ -59,7 +59,7 @@ You'll find that the `capa.exe` (Windows) or `capa` (Linux) executables in your We use the following tools to ensure consistent code style and formatting: - [black](https://github.com/psf/black) code formatter, with `-l 120` - - [isort](https://pypi.org/project/isort/) code formatter, with `--length-sort --line-width 120` + - [isort 5](https://pypi.org/project/isort/) code formatter, with `--profile black --length-sort --line-width 120` - [dos2unix](https://linux.die.net/man/1/dos2unix) for UNIX-style LF newlines - [capafmt](https://github.com/fireeye/capa/blob/master/scripts/capafmt.py) rule formatter diff --git a/scripts/capafmt.py b/scripts/capafmt.py index f95e3113..a787444d 100644 --- a/scripts/capafmt.py +++ b/scripts/capafmt.py @@ -10,7 +10,6 @@ Copyright (C) 2020 FireEye, Inc. All Rights Reserved. """ import sys import logging - import argparse import capa.rules diff --git a/scripts/lint.py b/scripts/lint.py index f0e532bc..3a017d0f 100644 --- a/scripts/lint.py +++ b/scripts/lint.py @@ -13,11 +13,10 @@ import string import hashlib import logging import os.path +import argparse import itertools import posixpath -import argparse - import capa.main import capa.engine import capa.features diff --git a/scripts/migrate-rules.py b/scripts/migrate-rules.py index 5510752a..e32937c7 100644 --- a/scripts/migrate-rules.py +++ b/scripts/migrate-rules.py @@ -13,9 +13,8 @@ import csv import sys import logging import os.path -import collections - import argparse +import collections import capa.rules diff --git a/scripts/show-capabilities-by-function.py b/scripts/show-capabilities-by-function.py index 1a35dd22..e2568be8 100644 --- a/scripts/show-capabilities-by-function.py +++ b/scripts/show-capabilities-by-function.py @@ -45,9 +45,9 @@ Copyright (C) 2020 FireEye, Inc. All Rights Reserved. import os import sys import logging +import argparse import collections -import argparse import colorama import capa.main diff --git a/scripts/show-features.py b/scripts/show-features.py index a0638950..2339d5b8 100644 --- a/scripts/show-features.py +++ b/scripts/show-features.py @@ -60,7 +60,6 @@ Copyright (C) 2020 FireEye, Inc. All Rights Reserved. """ import sys import logging - import argparse import capa.main diff --git a/tests/test_freeze.py b/tests/test_freeze.py index 7b4b5e7b..9a1204e3 100644 --- a/tests/test_freeze.py +++ b/tests/test_freeze.py @@ -2,13 +2,14 @@ import textwrap +from fixtures import * + import capa.main import capa.helpers import capa.features import capa.features.insn import capa.features.freeze import capa.features.extractors -from fixtures import * EXTRACTOR = capa.features.extractors.NullFeatureExtractor( { diff --git a/tests/test_main.py b/tests/test_main.py index f9357ff3..dbd365dc 100644 --- a/tests/test_main.py +++ b/tests/test_main.py @@ -2,12 +2,13 @@ import textwrap +from fixtures import * + import capa.main import capa.rules import capa.engine import capa.features import capa.features.extractors.viv -from fixtures import * from capa.engine import * diff --git a/tests/test_viv_features.py b/tests/test_viv_features.py index 8610bbc9..564a2f12 100644 --- a/tests/test_viv_features.py +++ b/tests/test_viv_features.py @@ -1,6 +1,7 @@ # Copyright (C) 2020 FireEye, Inc. All Rights Reserved. import viv_utils +from fixtures import * import capa.features import capa.features.file @@ -10,7 +11,6 @@ import capa.features.extractors.viv.file import capa.features.extractors.viv.insn import capa.features.extractors.viv.function import capa.features.extractors.viv.basicblock -from fixtures import * def extract_file_features(vw, path): From 4ab97ec910f7b9bc9adac59de83a652f9bad8e3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ana=20Mar=C3=ADa=20Mart=C3=ADnez=20G=C3=B3mez?= Date: Wed, 15 Jul 2020 10:46:19 +0200 Subject: [PATCH 06/18] ci: Add GitHub action for style checkers Run isort and black for every pull request or push. --- .github/workflows/tests.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/tests.yml diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 00000000..3427cc0a --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,25 @@ +name: CI + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + code_style: + runs-on: ubuntu-latest + steps: + - name: Checkout capa + uses: actions/checkout@v2 + - name: Set up Python 3.8 + uses: actions/setup-python@v2 + with: + python-version: 3.8 + - name: Install dependencies + run: pip install 'isort==5.*' black + - name: Lint with isort + run: isort --profile black --length-sort --line-width 120 -c . + - name: Lint with black + run: black -l 120 --check . + From cc2929ca8a64c90599db92953809dbd4cae0db1e Mon Sep 17 00:00:00 2001 From: Willi Ballenthin Date: Thu, 16 Jul 2020 14:43:35 -0600 Subject: [PATCH 07/18] readme: fix url --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e1ef1cc4..eff8c080 100644 --- a/README.md +++ b/README.md @@ -59,7 +59,7 @@ $ capa.exe suspicious.exe # download and usage -Download stable releases of the standalone capa binaries [here](/releases). You can run the standalone binaries without installation. +Download stable releases of the standalone capa binaries [here](https://github.com/fireeye/capa/releases). You can run the standalone binaries without installation. eGhMvI|-lxB+Pv~B(AvSihw?U;uy%n}KC}n`oediwD zjO#Y=shZ^Z(IS!=%M1(Z()bk3@6X_&~KA|wk&Q~L1?}vOvTDNW#gqnfEk%98u8udXd%j6wW z+WWU82Yq@j;=8lz0(cH*G?meijVhj4wN0O2uH-{&AoLL3&q1(2mcE$_ChfgEKFN0* z!hOwMA>4GsjYU|rG56>Q*S4QR+>pB{H}ma5DE7bG108$xV?V3>zG=d)&|)s>6(MGm zegKkDF_9k4{brO`1of%Ey+wr1qJl_B+1bGObura!L!Dk(q}N70@U1nyeohpM^GCKR zu^8$dpHJFVi`zr(C^*768NCft3$uP1-MCG)F3nE0Tx@E3)d`Q8nW%_+mbE-46E$A{ z$;OJUDgH|UpBC_9^w9?n;l65Ij3C)aXK28lNmiiN#%G@0P2!)N;l{zHuKRWK_ha^< zy{Kv??K3upp(!Q-42{&hKK<|@FJhUHnE2gqK@@KZ2bo^tVZTgN_{4qX&EN3-ts}=f zmA5@lGc+Uo47!4y7rQa4x7?SMZXv48s<@&Lj16n;xEyM@N6Np3*pOx4imXz}FDFE+ zBT}U;dG{oKywUw~zVb8iel_ypqlfJvv;!t!*Wns?oK6qDmogxi!<$f_u8(_vq%Gkt zv9A7QT}|V9o{krN5NSBSlITRzH{A`&lPJlbO{cOiY(&pUyxAiOhN^jN!Sz5K^j)R% zi6IIuRUZI$+Is zri%pK!2ZqwQ$R_~q@&bB6j41Si2-`;sPLxer?h27_`@I(A+JZ7k5VKxU(vH8d2ig! zN`=CJ6x)NAp2};@Y^l)Gj2N=pt94<4&`YUM15%x8Qi|s3J<9Mh5`EUp?@;E7=*WNNqKpvsF6*?GQJ1X_sr%yZ{bx$tlK-nNGiISIuRYo8h9q4oIc(J$DVi zBu+x;8Z)MDsSiQ51Io4Q^n22?DL3O-h2;}K7@LHs23^ImK6B*Ug}YqxXY}k znfJqQh47QEpYOSQ&r^R5|7M|}mm=FibzAv; z{I4gM(*u0WF!+nwN^1Duz>?TD96(!`dhyfVi0zXSy0^^xf5krF$~%g=w+biDxw`*<||efr6A zGeTn$H{|;AW40<}%;_5!2tMwePu6mHfFvqm3!r#9NWC1=+m2r_7AAs^ql~J?mxru-)bz=OYG-wNi4ko5x&vj-Z1%f^!onGfS`x;>m5*w zv~0lT{Ne>V7;9pwN28=WQc)neSbX6NLrb5`#4rV#$v7Z#op@LREjW&sH1tLI(gVvBpq z-}0#Q684VW7t{ zlVPEPBrTY`2{nw$hSlWRrWEO8rbiO#T2~?;_j@3Qy6L(5M5XGUIQ|4g=o`1v-A68V z#`3Sf2ZUa7hA7Xl6`|&;}E^gdo`AYI*wai@g)x&;Pdwq{+ zJgi^Ccqa6`?aK&*89eCE6(JYVOBhLQ(40<-D8jyi}X6VJ}8ZPVupH0^G3^#rqE z@}EcD^>VhZEP9+tx7j6LM!Ntlo%!xyoR-rZ2nd(TO9CPZQxom%lgE$X5(~m?x;Lj> zaT^H2m$|w7d@S29<=R)hpZIIQA1$_P%5K*}v)XGHcKcZ>#3E%mtGPheHE;vGB-bu- zRwL8OWe?nEquE&ATU%k8!odmGu3b)mzoq)Q+LAWsHoZnQ_soCtvdx3SKgh}dkv)0ow9?3iXqxigWt+)WxGU`;D@0#8Z7Yl$Sv&&e&49}@? zC_E47D3ZH}jeCsN^FLo0_vanFA3lTUUx#!{V5W`6cxb7`yCjNhrNIJjlJnShmt5A+ zt*VAO?Az`Zj^=??eW;@2YIM~__V~y1qz6B}Z6r&gIW~XOjChgo(p5-nk7270oB{K4 z>2}2FlLrW2Wmls=WlgWVY00Dx7^9T|I_#V0$)q6B4mB>!4(KR9he_SNWmS0+-T)Vy z94~k1+$`s2L+qTWnclew0pznd!J7o8qRryn)idE_Uh7iKvSujs@K=nCogX6lX@>E* z2cv@5^mt9pDGU*j5v7*bnSmq~1v5*1two0s6jjK27oA>K^ZGE zKLt#0O;G%l{W@cs6W-hm*6K&LhIuYjqQZHPTJ$=M<|I-!+u7X_^c+*Po(iAZq^( zR4wLe#^z&TP9rEj!|e~A%pB=rjia`wN2|4PPDX?A@h=%3A2#x?+0fXCEwh%EF&9Da z{eNP4g>Z`X7pqr!5Z~Z-)n`Q629Y?~1QFZ)*usQZhLYL8@>n6`SzX4@qfCepvH7wl zqN9=FZy3GxJ7*+X7f@{%%K=ILikNPuZr(1`9l#|#eD8TCz@-T2wZG`Y>`UBi$PV8{ zqJ+3+&4;{oI7faEBRr?@0$-eSMld6bah3QzW)|lK7|Evn)Eo;DX}l?Dec~4*56`4Q*rD;6v49#=CqpUTEf$LtcKgTe)|>!mq6u>Yp}xOGjeS!)jlHVRoIUlCYzfWO1yqAU=o_xC)K(Z zT({D6Bvz0ny`S!MuK<~CHqB|a>>qgEiC9)vTKCT#-KSgCU8&?t#ieJ0*Nt`MKyPbX zJI3Qt^Fze5@G%cG;I>sX9od7hix9CwWT!c1{p{XcF*`Dms_lpt=s2f2@?(JCg45S2 z*9wbDcWp&aHm-3!`tva{c=wqyo?S8xfGF0n*6jjU1yHz$$X>zg_P!G5iG}zdQ>VX& zKrt(sHgHi(n>p8ZxZA*<@3>b|mk!{g4HpC-PcWBsk8_XY@aRl?3+t#>bP?oAjcm^2&Od6>n>@CiA5*bssY1Kd9 zQ1$A4(g7LHDaT({EuTLHAHa+funKF{@ec`2M0y zb?~Uni|Pi*$)7_BAhxsB10Paum4QZKkbCZ9L4Nuv6#C3ejO3+T2K!e~hM&Q}k$)E5 z_AC#9y`jWUFc6K!vTngiN51vx@vbF17iGWg>A@O8W|?Ps4hca-ahc8-?@<3XI|AK# zcxqXqqnrAynJHQes6KZXkLOcB6Z%(rKs?95KGO>V=O?puufRh@W<19}gl1uZb6#ivr~r3i{S2G0 zh+Xjlf0+j=2ygMefpIRy`7q`P`@n#_juGaFc33l|v$#w-GD3;^hEEZ65%hy1k|IKc zW|JVZjH%mI;8|$D+e-23-8LlUdb&S*s0tW83pbqC^RU$otpt6bk2Ot!G+bi~VzvNA zw8INdovV;~!WWWj1OtNo$Prv<48&p>O{!c_&o!c^+pQmuTmT2?ewzH~2W7-Dihvz+ zzTV5Rpdq>;br4HGfY{4#MEzBAtP8+E=K)NmwC$1MOIGofL|%1r5I|kE798cXT<8AE zyk;VJmz1A_K2!#()$8s=>BUZD>LrVEhD&71tF~;-1iJVjcvLFjTarF@L1Rwrq;id_ z8%h*H3~6{g4dzuTkdK!8A!lxozv052m6%2gVN=mnAMOM%8~F?S8?@(gt8mJ1E@Lu; z;6NC>y2Q~SmEt=Fah?G3|J=k^Ud`344~1&On?4Po4R_MVZKp8ZlF8DK7QMEfU1++^>x;pid7_)AUo$E zOmjC+23LFoLFZX4<_`q-=x3A{1${?4>~BweIVztc=1RrVU96^#4i8OW4jNk%tCqGE zBPF(V(q-yR;si;7FhD`Sa7@x?B%P8#YkX^5z2u3@(+{iME9xS)Q*o|g>UfNDu>=sn ze^h^j8RzR7V3Nqin+r;(H#pW>sV4E4Z)Cofhu&29^}Gut}*$&7{U4(Mh$R$!l@%Q>_DlZF|VGBilO!d_zcI`GC*4(D*hrfp(`Dxo2n> zxI1%|01+Wf3=bvo43`WIZ&Tx%WvU{vV-;f!v<8=NI3vDK27C>vfwB5W6H$%EisfsB zeelVksE`jjfndpIe|i5IY?BnPSTI)B>ZgTR5p^NBZidF~Y%e2J(r>nBB0uwpi++4d zIm2FepZk;TP@rh^lM4b-v6DYti9F4PnC156d&M@@>!^sUyRP>^?*<_)`+*olyKhl+ zl8=RVRukXQ#eflkU-T%^brcI0mG~&V#X^62TDfI3Oa>BW7E;&0z~sSwWg~L4LM21Q z{DDa?3e$-2Mt*n3?2l7s|0#ALq7ImT76Vp*I>fC=#v4n6i;Bw-!IJgoO(3T}E;5>6 ztp2(_=W5~+$=aSU%_n(q?ZFhRw&n6tlHD^if=4A*AP3V7!6*uIUajG^W~@gn-q=*Un4g361?aSr`FtCHV@y~k-4660e{#rqqWaRCl z(wObr;a4l=PRWhF&E&nz4S_FHi- zZd~@yN~e?Ed#a_y&P1sleADG{%CI$plO60JOqsg`lA0s0tEOO2VNFoNO5#hp@SuaU zFBa#Kr$$4|a`)=Y`P$V19v+U%(yctFt^!eUWX@zR5zOnc`35Xnu{!DUj$s4`?oLIm z7bVs=^s_@;MxtbWAhChRP~t6-j=bmJ^Ke_kbj?I3QDezqG6tpWK~E^q?7wzaxVQ6l zo^>||W%V9@z<2~-fY^pmLE@mlLxy~Y^u6WN!h{b4Eud?=m(dM~B7QxH5#L%Ms8k?E zda>U^-{k`kbgwB95RpKC#lH6a6~l7^@p9R$HuT87!|dZ4vlSQo6~JHd&o;S$^4vpG zc6N*?Z{~8*uN3wGelX%j*&Y#L!XdCI_MK1XbL*2|Gu+C+z5v0*HH( z4B2LNa6bY&pq|clv6fwTu=0_}dViN!<@eD+HC1G81AqMvJi)-1ec$Bhxlg-8lM@`; z9v?gw_U*{Ydf^4^%26;m^m-#5W-p)i7hY%P_NgyDIXle zX3t7A$656z#%5xm(EIH3G7JGOsi8Ut z?!g~NX5Xle<*V@x_o(McxqaWrNX7~UnoO;I;zemCN!3Q;1OsXAi_cdGB_rb$@udU# z7&I2pjTTH4w_#kxY69@(S9@HL?S|Bj3gb?HmpHdaJNje*Z%L+Zmm*pMBK(Yc|hIscj&9um2*k<2qGW3(3Fzr|9xw%f?SC?_VuJ z$RK*Ocw84~mAc&#({-X{j)x2L_zTq#(co&sEofcU^rgXQWAL=*K@Jo zURA*K>B8YuT~LU`k+ZI+X+PfdM0Q%n|BTrhZ@Ah?xw14_hO}rmskBl+*Agl3PkA+BT%J-a_NZlE4v$u9g$+d)*w0L*(+RyYUJR1EadIximY4yqec2 zRBh@|G^)rhgSlGEhZf8ti}ji(EuxyGyL!XOJ$>_yU+bx)ap4^U$L+f5P(i1$#wmd~ z#XEUUi-}Mk4o#0+v-~Sd$Shu-N(_kRH0AV^G2pV)Bi0(lXd?KEt6I@+aB6GOX86ng zg{-lr^EcHo>Ur2K-J1B4P;F3ZQ)S`uO$mqmsTt%j4!($SqKZLGYoczz&vw4_e96fj z)9}NC5yV~n2)`Pq(&p_V>z;+Jw4~nV0=(wX)07A`@cWhzcQ@xr;A6;5M6d zs*S1AJEtnVNl9eN&)n727o}w@zw+l}-C0am{m$)4 z$Qtw`qYBKWBcUzx>ZX>n0QKPw0bN)ynX3l(q*HF0^)iS<njl7#( z5FM)8ahX|NU`6U8Q2Kz6Zn*FWHI@j7N+F!_h-P!|3i+VzH)51k-n!SXbh)mRXA-I{ z-{abr#$I{-eOz|!Fl5|LU{6#8kLSeU`tcdfemS*IKTCa-2E&K;*(l<#Ro=MCIu6Gf zWXf1}v2;ne8mj%2=U2o9Q^#r*(V_`Lf6nYF%JAowg~%26A8&bIZawVT*D!>H+ten= zxfSkvg~E^8eO=DimfO873mrWS+&_%Ra2=22pq9QL#<0iz5W+?&Hg{~v1f$pKL@KkS z<24$Vy7lTFc1M}g@*F;1SUOwa_kLWTcr@WYHCUZ<7;h+{j1^`XkB@~Wtk6KFW@{`g zKXVhzTTGyGci&W~K1?5bF5P)9kh4l1x<&`y)@*zm3Ka}c(#$TsA{>E$vhY zFt1w7O+HW!rCL}lEL(}8ip;ZCdCpy?msngV$#64Y@|kCZxgUtDe^D@9gI%4>n~QIh z3+}<0Tu7mCB8+mDs2e$q%beS$#-XCrJobF@jXV(2nlNcI^&Zb@T!BWWj_}8Pz-(6i zxN|kc6wQbFb$pYLE{wZ~u zDzYSagGn8Y5t@O^RYDt@`B;2EG|>^M30S-e&8v|KUp8)pB8THc@br@w5niZ~NWxcMQA{Wg~ER~%yAIoRmX@y_rK4gR9PFJ3i0xZ!P za6Q-AT(@9^8Iw41m#YB{#OP~74A{mm*5Sx`VuD!d2CzWQR7ys5tVu~Fa-TA3qFi!+ zwv3dF>ou4x4-HR0SNmcuHQJ9qAcQhs_QbjDl<>@c38BR?zWIP=X+kIPLum6l1wTtY zweD1Eqq6wdltz>(@3kC9vK}##C{Z`qRTA|Ym$YjkzH4Dubna|T`I?&@qqeK^;@Rvx z7ugO}q~$lx4ej8(!{uoqU$0{)=ptNdjDvf`y2KucmsCPcE8*yxF(+w4m1Pe6VZ1Vi zHR&1++(YGxizq=v`6In67urzmgRI0NoT?2qx#V2R1(l{vYWPLwBPGkGPDuWRqq)-$Q!RX3uQbq;0P~cU}G(! zhBQ+jhp`^k%^DBTN&`>y(;~M&fm{b?dRhZ!RDJQCF|z7AbeJE){n34C;12#K>K=IR zdcT=+pFL|UsJS2+uJ^W`>#;E#6RKk)8K+MXJ2I`eD+aO}L`#siM$XGJdvO`H(nHzN zJvWck^wCBq>(V*S8Wzsae8PHaBrhBm4YwK*g9?_eTZ6{@)T?yaK?J7gV6>N2`>lP8 z%Q~#)_uaXA%D1o*`^xc5o>o1;IDXVDpcxOwm2^kH)h-REoI=v+emJI|xdO z$y%XX;Pj3-%8cWQld!>q)^bFNt&MeQ2`bf!-`8WO^}6?xlP8&cGOD*Jb@Tjf3h({n zI1vI)DHd$K_Toy`RY}Rr9K{&;&Eit|GiqNI5-CdeWjZL3#`cKwozQq+Jovu6435?*gs{i3GvWmu{WdQ|D65lY+ffmd!u>a~Za-d)zkkh9;@KY+eMYonc*(NfH*Reb*jZAIykDG^-g% zB-4X&;3>)h+o*^}Cma?N)3E*7eeadUo19piQcti9BKF{PE!K6T0!o~!$s(DzUhZLf1A4~Wcw$s!h2iBj*GWh%AJL@z^**tLol(<$^O5d*K3 zhSNBEKmT&|C~w&E_?zZOy#F6h?;X{|_l0|_D2P&2KsuX@4({uFKVk=~1Sms9*eX zH@8%?+-Bgjy!IHCO#CFK4*X2r3`7_w3U>S6J3gG<4KJ6D>xWn<14px_iPpcwuXPLFIk~XuXu~+@9f?=u=^mxUUo*7y#h%j z5_aW`wvG*HzhX2mPE*gnke;Rvq|Wo5o9}4Agbp$WN!Rzd3mCKj>(CWN)$=03O!SxP zCE_fOyW|@o}t#zm5adtJYtl-(&B8q zT6!S;;y&Nk^bo1{w$`7yn1)8|Ht&%7?w((|@~%Ug!N5CC^CEE1_|(r8lFAQ0JdBg- zDX3*SUz_8h(r*GwyLmq88F1lAquB}5z}4OKIe+aPIq1BF)qgC&L5PeC;NSU3#`FJc z18C;|eg=fEL_4bI9R9yA{{7KzY77huQ~ddJH_iil$p80QV(V35+L`(#{O_v_m}XdU z?Fq3D&B-k|ASG10Rql?rtJw{H+WzmVE=Fks6E^!H&|0kU--G+)>UBcpUHZ;(iRL(o zoS+9th8)_GV~=Fp=w@altGsvT|95e^K>zaT)^S)q{ws3(ugavxP8NpgUjfe#(*Eg} z2e|x?*eLc8GX?gF*2P-FJY2nwmxaOge(l&h!;K&gqZZHL$tjgswq%^@`ZPyALGzuk z!T&n#$G>)eJg6`5GrM4DA+VCThz^WTSJaPR_%3{q!P$g0i9SP#GOWrkkUqC2}200-?nP+(q|5v^5nPz*RgUoKIje9gvLn`p*B^X zx%tI?_HsU86h3lTz4*)FdDA^Lzsvs#PYsvHsG;(LrrykT&RBZ8Wb8CJ<;0G3KA0)w z<*9kJG@GK^E`M9>a$-!J`tDa9*PHTHqkGPIKGT~78Q~3{A$7-*s(hwcWKs>;4kfcu zD#OLud^9e!rXog7RxRD4?DnDTTf&w}4~&}&xvx@KJ}}$NT$T8DpRV5m?(og<_u&l} zP3%N&z#IKXNIDRefJ3U7F<0PLcKPeF?_z_RFT*O~0kjQNraC2qP%ytgJ^1o7?a}us z4|s!6+-vX?RvI>Vft9%YQLb8mny|F&SZ zxcwvZi$eYKA`!RGR9u(-E)~Io8k!N)erqC7D3^>^YuP%QkHc-X1Sk?3I8bvYfZtO% zYs}-h{|!FvJHQF&j}MsM1%c*q@(kUb{dSQ=(!fX{t8LH^_us9mBBIZ(i(RtD#Z*lv zNFqZfM?tsu>Am6r$6jxZ3;sc2D*io5{3nZ3A@R$|$+(ES;7eCr%wfK9+GkLCiHJCxzY3^oMX)B@z3=O*P2bo-!1~QW-Y07CQmtJx+oFL4pT;*aVn0V!inD%J1a> zq9?^L0YLmWfE<{DMJZzTM>((5Tg+ln~8W|Yq{$!4K2}x-$~6ly-uoz8WWzj zZiu=J`x$b$zYO6PfG!mg=IbjyvjxdWzJ=gFIhPI-qwAAQMyi`!pSLZmZLMMkq)y3F zm58j6#ZC8tKA&vbv)mtTh#d`D&ned|ZNL72F&6F5K?|cO@oYf6nTP7ydy__Rb zqRkR`5=BU~!7Qjk15phjgzdt1iS9G2aUVl=iq=K>=;qxCDAmE{bM$h4^A+{6yoQ`GQyVOC=A5^CF^l%HNG>IOs z)sV~f(T2(QkK~4GoVi*1IVz9;D-R3EUDlCw2`a0)5VE<(a3;C+!*DIDb2r zK*{8$3``G@0k2rt$yu}T!R$#k;`hhvnK7Z`HL-%!pMt!0G;${E>74y>0wI!yIc+RC z#OQxPgXrI^`DRoA^%93;D;&r;&j^NjJ0RZ|*!7IhFLQmqmS{)8kX1gbPB1ms-wX-# zc8~3}4P!nN+m7?*ixoURHbnVLPOBdGSqHMh8=)8yxpG$4OT~$+!aer<45{M!@=&W7 zo99wZeM_eS?%TctZc5+&XqfPjHS{-W3Vt#*vqH;hqvQ}GPq$8Ia2AChbnB)hat;)Z zO6^LZ=DEt(Cwys(2lbKEdK8cquRr3usIoPsdWBn0Th<(zK5;m?W4TO8iCy+2-kb3a zA=>e~QOv{qR9(r_LzkrRlFPYBJ>}_)eboevIql@dZqLb!c|~SWfbihvL{g_=URbGP z_Of^*CDZG;cy*=Oj*6XN0jN3fR_elrTt;8xeU?|@B8|P)CnY;*YpWhFHCK(P#h(@$ z_abaAda<9I`c!M`G50+a)o#XPpaRY;kKCxAb`iJn?S~Oul4l;Mp1KP&K^l({1PS=m zs0G)3V0pHnuM8YkanIX^(3T*9ciuiF|4fFK@iH5S4yVQf^C6@)e|D_MO!RVECt$Wy zF7`RChjk@G7f5s(B)XZGlT#Lt z!v|i>0QNa*v)l(NPLtE}$<%!~kj88+9<*=ZSqOc!ku33yEVJ^@tVgYF#8?ArZgkK` z{b39((J`ezC@_zh(>(xoLXc8fFFD5bstY$!fGyemT)_sH>Gvn5)et%B&5V=^`>ptFGdm6@d(;CD-@^~zSDX>ak)E_v1ELK7q4dV*jlwOg zEJVsg#KuIdu=@7uO{b#FYQP(o<6|2unr0f6pd4FZ5ehX=o*)1&5UbQM1<<(n)pPN<=pQ&u=#FA@Zk)ct?7eEaM$u;J}y7PeLk@1*P*znX*lmsr|9N%e#LfMEvCQ_ zwl+UAlGQuZT*_&`P5=XQWc>-7(aWuby1;UH`(GgAgTKd{_$!b6*>6JI*VMH;Bf?z3 zNud&R)kvLeao%puH8%ocGh+>qwi2k-6kwHt5c6J$Uy9i8_O zb!Mk3PR;8O0ihz0E>BjHp}S5f4XWFz*I`p7wTbZNvg8WR=@l)<>UlJ?Q*`HHx;-Tw zC3V~>#iX(OSmS;RWe~Etda?toQE~OH8{iY0qpk2Bl`t&*W$RDKMQdbX&=GQRnIV$I z5O;cHf4WBcuA}C0n1`q2sXspf*r>K9zuOSKO&xV|%GlYDUJD;9TsBU3;WRV*I}|eT zpdrX4hYXOYZKu>3`zfyb8e}02+3=}MsO9M~E|LnNmSvsoyV1J^r;S7^hi?EQj#L6d zdNlmAVN-YYu|MqOWWjIq<7LA8GQ)N8)iHnCs6nURhi#_^r~7AzG~JdmnI60otuI%n zZ^u(x@oO$eJ*S6)toGX+_A)I1=D2wv`p}h9I?%Rf-8Pnf5%;$DRLg!>OHB}GA|i$k z{a(TT{s4K_Y7JNP`Y+H~<5Zvr8HCG249xtmdE46wJ z?OE>~8-#=(q69bnt_N*AYa;=8a%6Cqn4L^GG1fT1VqW>`(X91^~VfDVd3YSby=OtXQjEJ_^KOl1~qlw}chwtntNC!?1{bx5&T-Qs?D3 zeOw*wm3XQT`RBd9=Pm;{q~6_t@=ezdtVg=@D8R>$IJVt!5222clM=*KBVP{$^JpB3 zC99v(2_9;)7BjVN^S1q=8f(WM1KL?=$;W-l-f~K;QPfYGOtI8Y5oDO|mk$Z3JVWj& zY>_0y1KT^kFT3jrnSNk1?5c)Q^6&TQ6P&$o6N=MCSqdXMT(|VIYp%(*6DOIUDBIKJ zopq+}Z$S6shaV~3_u+lQES>f#6*qA3uUCUEkXcVjtZ@}2#KQ#;uxGTWk?|Qz{FE~! znwEPO-;PRo$m7~>zmq+|bh;vVlCS9}ix6+N?XU&V#`f%QV-BQF#GXRfiy9UsV^uM0#@P?3kM&9^#}|7bo;osffVClZWl z3&s{9DN~xsLW^$%FMuc_j0+0>lC4sQZ=_aA73p;;=2`Z~bDXT82ojp$iCpq*+TP)e z+~!1SaoUciyUB$nup|bXp+zOxS#VY&x9RP?vyuA_W3LH*dt;!3hj}lCE}F!#KSJLr zo{l{3iJZn1I{AQ#5&b3?MP3olLFfyV#fuFck{AjxTTdJ$z$cwFj=H7{Zr78^T*rIK2ZDRVS+~6~~hCoev zBV{$X0`e>G_4(zvl!v;7Wmf!OoS)t*ZGEN!GZ)y{pUEswW4Mf26+HPP$b5PNESfa0 zW0Rcq?-5l@e-x10A6gA*z-fA5K-MT@CEpi`gL4nJ%aQTNSZSeO%{PW=&27}?S!8L; zHIHy{_^euCc>J*u#!s{0@(Jl=gZ)O8fao*Go@_ha3}X3r%?~|MZ6~<48PMHc zRA02s80Yh=BXOQMY#h*Va%ju$Oy<6CY{xEfKje5`P~&(NPIH%n^kLZs;a4Wl0B;|> zUhBQPNWEyH7Fee?24?veIDqxW5@HDt1hFzLy9AZE%J6+(u-I@p>fm^AiLfL1>IIdj zmm)Vp&xO7iGoNFBG>GcA+pi|@0@Igz=6KyrqggDK{#N|Asr&k?^ls4!Q)1Cqw3cer z*J_Tw=>1tP=(m&?3|bkI(DxtO=<(KPoY6H7*MmPqe>sNY51?u-QKM%7;3nZ7oM^E(dD$I^5xp{ctv`g%XIn3OBI&QypX1!yiEUA?P<#tPQmEBC=@Z$ z0&LH=9LxVxUFl#YqL12+Gf%6F)s`lO1QrAr3qJmJTKas|#o`Z|*~Re4sfb-T!uf#8 z;#^!XS+w8Ipk5`$j6LgSf(PE%X;j`XyKVA(G$GivQYpYX{;MYiOHX*I&$!r?()rcU z-uJ zY-#9-h3Ww?b)r0DVKNo11D~Rgt^UZFS02p(Gmj{ z?Iz|Q-J=(e;ZlIUH>az{#p}A#`=|w(vtrLEZ2F@eR>Ud?Cml?HjPOPX>Ql>+oIAQl z?y=-a`mX4qStIuuCsh0SbB(HT=#s?T{QKNNFvr9_!$b!9=;OT+U}i9t9b2v5QgG75 zr8D$Qc05&2)R_OMd(F|%AUN`otru41$=~Yyy(#>jEq)AVSUAGg4@`#}=Pg39%(o1F zT|6uGntx(ovebL#flb6>9%@HYIpnaea!ST#_nlMD+^{P&VhusiWmR;VoT5*y%T2;2 z7IkPAL-r@uS-L(CyDnwQ30Z{M3?5~l$h>pu3}?XB4myz$fO@>4%mUU}73b zJG08O8=jxMJLsdA^X5OJ<%NtQA>q6pwN2lX+_tE9a|Pm^+%LVPs%j12p8!I5Q~jFi zbYJo<<+M}Gnb4hpY!l9{{IoxkB4yhlBVzVU)SCTPxX8=TGFL>HGuzy{NbSEgpNMio z2I9Wm7WCtO9hSA#lD}nJ{M(wm9E5Z8=1tNd9IAiB&6&Gw#;Cs4NRyHK!9MV`tnB)f zhvvgyo&)S`dM-1mZ72O{*-zK2#6fZ~bB+Zzxod3J&}X)d8B3FmJ!2`~P*ZwghpzKvei ztLas44_}gqhPz3VsvNr`CTin$+Jp5jR3S`eVvObDT^b0=f%2N%vaFiZ>PyWe5o2wz z25LEpnwVDPF9Vr;M;KG*QSeaVqSA{=6PoDe!pG!eRcrX^1vnm)UVJ2=*W`oN>`PDD z?`fMZBb%g&mXkB$)V1JW+P<#Ky;Z?yND2*5HZzjPv@vhS&UQ0T`P6=T^mSapBNCyX zV%8M=B-5!t?yZA3^m=>jQ<=<>7n!A8mm zW1oe;1Aj#`rP-b2!s+$8-%99P2r@lSyC=8G&WNKQNbG++*<*Xy;4Nnwh#pu4yZ3u7OPHGYZp<$lBGG9l1 z(g1@PO9MasR0Hf;^-kIGaIXtBYKwQILUb!j@0tAzY0~GT9g%=dcN{{Sh&H&C;DBR;q$6C5PJ8>1$Vbx(;sCmji>p)5DCMYNWLM zJoI{PB<_XkWp=rcQ1xFOc6N!}ltd1URn+J#I4I{%^uE1zOiO`_OVmTi;(tfZrkDjc zap+3+30!b%PRU;6=ufo4nv5z+_WA&T%T}#W@gY9aqr0=yYyy>baysq$-o8Csa~bP&edqeW#`ej ztd<{)(U$YkwDyH}5fp#y0S z3uSYAniRHkysz7lf53DX*{&wJo>Mk{tj{ZAt<$vk*$}10s_b-#wm%#obtKQKx2#rM z$3a2{iwGgCs$U^mR{Y7iuj)gKy?3(&>27poetHo*u3v<>`#G=rPS>nyjcy{HoE^JM zbez$&{N3oxD0`iuRZ_shTy{$Se_SiAyRH_!H~u=&C;CTh2v=?_)62xaJ=^!Rq2s;m zix3>lj&3{n##P;5so^P{zHdQ;^(><9U8j@9%wNfh-2$^{#jb8Uh@7=67q@mAr^^FR zxAy#or%Ot7U+;tKehOQL7^$xQQrABk(Ks2gW&C-r!_opoFUIV85gbGwdM#l{Z%6ks zD2zk?K=j@0@)g)82VMA_Dc!Q(+vrn$*W<{)43S^Nbl4T7FeNB#({RrCY{3}a-LY3T z^PnVEgpJQorT3PSPv_WxQ`;ZfOZ(xug=HuUUE7ooE?=76xLIc2OYB^XZrJg`DGh%x zAlsxW=99$xD`0-SQqNPc5rr+Q^S{ugJ4EF>&BeBkw``Q4(HWRA<*G4=H`uh-P*tz(Ee8ca{gRh10{(rOtN79}c2?ww^v^kwA~{v>QA6(wb>>oH{W7{49a*4PMuz6sR#BT zRbVQjBl-21c%G_-Jg!#o)HD9k;Efk$A55;HO?_Y^t}IINUqa`m>#NPk%GgWu>TVe2 zBG=2{xEq&a?A3g+x#@g*6|IwYpIuc=3b^FeKl@ntNXyTAUH|L{hJ;G#i23*Zrjt7A z$)C6W6nJ0g3pX?8{Zc}Igg1sn-RQv~Hyby8cr1no;y8l5#Fjv(3)073V>z*xjjb&| zG_-PngLdG{Y5an6bv4)@!9>gebSym#K@T{44(7Lq(ziNzE>T+iF}xLRgrkZTtV$&q z6gDEzJyfT>EAC*8dE;iuhk+p~41>odVLM(=f3<$8+^Ry$XLR^KRC0OyG3)EgYaQaX zoEhoxYajBH!(o4j;YY_UOHy_i-a&Y(VS*(OQ_8an&Jvi?vnnSFV z!Q!e~D!To!3fwD>L?~^Ps=5tV`I+un$UddjP59+tiK*3VW&^p&R6Z%CFcvjWyNU?H z1kz_Rg0`O?QQTLub0w2pG0QFL>~EZtb*EleU~yrKcXLT;?~ASU@79`_WXPbLj2X1U z_;|s1H&BINa5oZWY#-bH_jg>@_igo0P3iJNS3MJfYOtHFk_q*pU1K1O$8z@_Xk3IP zuiW*I<=t;WTzXHgG}JQ=Y^^Tq%YKkUR_rM2b%od_V>|=$HnE$tEdJu*8bv*s7{n` zq~}NkLZGIO`;tm5@4?XFQ?w#~-C3O;h{*!eN7p%~OLmvaEOq1GB+Y8B!X7>nU{B#8 zErO!C3dbPQPw+P+l4?c8JJUzT3*0$S36*IQHNWYv5f*PU%`YV3wpOCY-HYLfr$zEF z`>db4fBF-`yr5?1^yp6sw2ut(u1L%NG}X$}GR+1*R;Sl@f5x4b(?*&<9QFZ6BEfX* z7q*$Jx^zGP6k_Niz0tA%-I#RJy-a4y*s1>J_6p#ZOX&hB=6u!f%_yIybY^_#J#%9! zL(6yc5{}V}X1?5Kv7e6S?N`agUQgiXto(j}#LM=5=E*=|UW>3Rzx5w0B#JZv;fuwb zY&!;%5&PBto^P18Q*q0~2D&zfSdEjneROiOX;uLxL!+&` zr4{-JwA=WOP~tMexkND_*BV9-yQZhj)OVY?Y`Qe?1E}ug#m4uUOIw!Lk5Rc+j1&=sYfI*!}r!=#W2b1jlOG!XfBCzi0gCP>Vnq!2>pCZ8AAx8(+@(LawbCKcog0NJ0H@;xp5D`>6-FZnU1Lhw_4-GC1#*D0fe-CoUjx%aYr{L(^wh zRLhXT8}~M!rQ1}Q^<~Xg820aNHM%54GRb!+C4WeibLix^HRx|ndj#o&-~EjSn`TJ+ zT-lj-rTJoRe={PWBTT30O8W5a2A+$B{l;z~WKrRRV_Ohy{{B5U&vOdn^1GZ*8?Y8Zz4uo3`CwPc~-GG_A^nH7EswKP~pVZ?EbwRTHE6pXWYDhYX^l5 z!`p8sphyXWt`R3xARL7`1{-+lO(25w)UrD3w(fH6uh;Y}#}{n=tU?xrreKzTseAM2a72Y3fT=G50)>M4W^AMxn2I4t`}<{`ld4# zLM&0OfeAYH$QsU9fCSbTEH^xky)1B<8lW=%o|FH6=5?XAEG}+69@5hf9oe0kf19#Y zrp_RQ$ynA_3~07%TI;jLke(wrboWpAmrbFbW0|{o`fjS~9|z^Uo_2bC9lKlFH>*@N z>|t&Vx5YFb7Y8V1l#@&Q-uO1p3cC+Ia&Wpb8M!dcC94&m|MB(1-|?NgJsYc~7wmoi zNPtN`K`su>D%a>Na$+r;|>J783hqVg^#`!&~Br+p~fwo>8o}6^K`il zD#G!Is&u5kcj$&){}0wDC*j)2&3@c|;ZfjCy2zL<;SEd!)19zIP{h3KGcFx#mVrpc zN@}`yq0AQc1g4$(gFVfcXXLP^vspnbmuge!mXSpk@tUz_{J91E%pxX-6VdtMM9ipA z5eW;DT%Ux9KQ?xQ?39Oh(}sE`(zg`73N`jh*HD4G@9K0Mf;@?>jrE@8$kuV`T>Na! zX}7%xCwO~<050wm#+C|L-1xj1KjF2Hxbv}dLUKv1q;s^P^xFf>F(@d=xpO|Pee^cargwY z#??@sh`H9^E;#N9ThM;aHZ;5xjTEgc8U3kdV;ufOP9WRSM@LQ)Bht1M@F?f`>12-r zGd$pHrBWSw9Kl{r8JNwRh(Et`YSiEMGAFM{L29|K)6nJ16^~-qY_%E}@d5p?@JQe; z5|;8R|1S?y{*Q;TbRTS1a8Y0h`X0jP(Ly&EmW}j0`C0BZJNOjO#K@+*wl^}b+Os^O z+8qHTgFXPnElT^x``$l{Y3j0ByVj{jU6yjc9ZC0Ve$80tg)ti(xWZar^DZPuO=d9D zM??6@kBSOutBEu8R}bE?h7y80}9m3wdvq}NLWjUevxFqKXi5gq-#=znF} z`mB*Uml3Vx94vBe|F=NFNrU~c4mn1Cm7h7@X`0OTTS4y1X!DNpthE!0%x1)>a0?(O zd4F2m8i~E_W6wl?patV)MymZn7LAeHqNap5eXfvh5r+u-If9DE3#9_md|`>4mi@P$ ztDG2aT)t$a(hA*~6bfQK(3rWr!?apAFWwAEjB%+Xob(q%Drk*K)VN;ri{hNXQTol{ zqJ|g6`On64<#z;1m$KL-#&(rvy}@WsBESV;(8vT#!Y`?1Cu3v^|?Q&3jQA$#0%k6O38>x5cifOOD z_O7F<>_OPu%u-jcaWQTBgT0Gg8UU=Qc5csFFai)Wm8#ScqnVwXEhjs9V^ai4iI<~X zZUaOfx98qPNi*(CNKB}jljdahA4{qAtBJS20o>;FWEw1khMZ6L_=~X*_B=RKV zE9oCOa(W$g2r5W^^R4)u4&y)QRaZ-pvFm;?m5~3>o`rRKZE!bh?CLTgL&2M*wDh?# z`s6v|6?Msf;9@*L9Y$E~RP zMylJt2t_&GO$yZp0yljs+1_>dR0bWEF_)LejUlwKzy1vk{l=Dnu>aBx;yeSQ{31`O_{ge)(jD71p~R}Wch-4<9Me#$ zp2jhOl@*YS*#lr4g;!DprZ<9z?F>zAKC6Edu-z&p|3ha^dT<_^$oc|RD;(oeMB^bK zqOlm0k`2Jt}8vpc{N>dr)@=rdRQXBTMo^fK8E!78dClfI1wz}`B zh;)n8n?tN|sZ1gNG-iN+E_4krv7H|BBTr8?*i!q9_XDNVJNC-!BZ@Lx6)}3tFIzYT zbezfs`CXDad|r+2Ts76>mk@gGH^)n0*7JnEy&52;hES|jL4g>v6$YRK&$na zA8yzuU8?ua_IKv*@mCLUI{jg9Ydk*)yh)sO=!S=8XI4-b?N?QjM)=^#D2INoKSo@i zI4TD@_V@iAHWoISxTDH4SEF?wP>29- zvsb@qQHN#OhQcT|^TNcjFr+6hXq~fOXPWAE0GpxuX8ZYnXcj6gnKetwd5k59CTXwW3o>d@(B+Z%Iaa1OChP>Ya_#Fehz~qh>Q`N3&BF?mHwdZb8C{O=< zxK;)(RH-|n20ds`n}0=wy*lK`v0N0SGTMWS@%9}J@LqV}$E7a+c2O@FdNbRL|oE%;hC zBLALF?qDAWI%1<_;9BZ!-z#{7=4F%MnPb7W`}}HcO~MgMA>SicGo}|aodB4=;~#_1 zfDxBTI&+TxVl;WXM-a~tv^<;eFM&VIU_h7faMa;t^QVVelR9cd)03_T(PMx#RGTtR zoCZibDX8v#W!=EBimw6&OgMffgJkHs6IIiz5C7$u6sOU`+Wp{T>T0xLOLcj8_%~K0 zIr5i~z#n_;l0u-xqeHWIBG&<=&H|(j2pnarbAEzOy1;DEi4ZJ#Rm@~i<|uJ)3X%-6hK_iFTq zYI?s;Ysm7u=|fMkdA}V{#OmR9sY@kIkpSf}4Sx)N$eWu1=bH?s|M|2Mdsd019@SHW zfSA8p*|4#%ZtjzSwA5)BS*kJwHy0Z+?qn#mxdab5368AsB=0#dO6AIyJf47Yo}|#) z>yQbNO3(=)P1%f26DK3k53l>G={E-{pduj!m-1n~C0qWIP)y+=QCm^3O_`@&H}wIo z9+rvHf|GENZ$W=ZQSJP_`F{lQY@`hFUsr9;QhH$o+L42Y6N+e!~VRbJuS_=_ z^Ds+W2mtIF_RoGG_@PCM<>|f+YRiWdCk;P-FZ zy^32z&G_zQP1A1{t8KVP1L?C?U-zfkl68EJG&@mPgVLvF8!fl^_LC-y zW8Y2V#qx(Uf4#meL0o!zC}R^gttA&3og9kKhzO78w&YPS&RcQqJ^YiVv6yT?eEqG@ zv|aRi+ASB~g^7CUx(0H4a_4QynCQfY{vI7Qy_~1FrR2H`M?VEvsC2v#2wP2$x7ve* zy_c6=gbrjlHJQH7Z`!{KzXbwEcWMiOeb;_khv7yu3bn3&8!$5xt=w_G=fVmy$}@AQ z;|DjSwQWw(dU;jCM*#sCceaJx#b4L6t3LVfPLV?EkL4d991Fqsa>Dm+Vn_d# zzBpQkW%O;(Py+i^0`}an!vYSvMxvWq$ii1ipAjQ9r_CvWg%ygUP00A39L@@f{j^+6 zeBKt78T4%QLug8*b@627%v>MW*u>w>sVeN3vQ2;TLb078dd013Vs;Ve;qFC1M08WH zZC{*!?~%MJj56RB7;R#0agZpm(GPIeM;j?(XCI+Qds=CZ*ym`i}$A>;TvX@;Df)?WI*{W~i1v#|66vTEXc3 z-v_bl&*+4_3!;k!I)H$@lpdap`}H{$6|>ax2d7Z;ANk<(`zdTaWG@y!E$@ z7zuoIlOytaScE$E-77I>9rA||F*X-IIlelr*fTvh) zRx+U~?WcPfSARi;=+8NKF>K9lycXvqymfC`#MXN{iHmQRBYUwxEAW!gZ0oF5#J?56 zhI?`>&@DX&E`O)3e->(4sXmyMPXjBjG_A>Z=O^c6N6e(;l~Y1Q9PV zkb!~JC8&`(BD<^%ggNR_Ub@+syXrd9XQMxMeE9Y}KKH|I>x{rcL#eOpw7Uh_bYQTDZ|YL|qtt-GuZla;ev!VW*|m1lGrKw@fC^)zBW%JIgIE(fMn{_LoR&o z$~h;&Oqttk@%L~kT<|$ASs(ru-UKSW&7o~OFGZ_W``8EFj{o3kM44{O@vO(P$*j-T zHAAjuk0pt?$ju{uN#8D&9!h7{!NgH3l)!#go0qJ?PnuU)wNiDVn0p%Y?Q*fEKiQ3} z&6h&_0&lVqSiQ;4itPSu*D~$B$wg-pHs9I6of9cRE_ z>YSw{&{-X}p-f_%U`Uv?;AiIPX*V8wy^C2~dg+x>IjFaOrh4w8ug&Svf`ROka+$8T z(mNjLe3fbMH*WBoudYm76QibzUUn5KluA72>*DXpN;jI}74*#m%AzjMM{lK_+=ql= zW1zo;4z`gk+kvc+M!4UBzq&>YWV$Orjdebs8{GC1-*jOZ)+NS@Q z=sUoPg zly_%tB2g{UCAHY^NhZ@=!`90DY$|N`mv>e0EI8|0oZ}ax!eU#85<&91-1S;IXd0rQ zYsaA1EcECgL)TbG;OM4mZ&cQ+)*Tb5S>0Jb4zumIpmp0p>5ToNK#4@-e<~E}=NJ$y zO;X`QkN(cy^tq9@$K%L!5metg0w^#tGqtmtpH4zTd4T=- zC1jK#7d>59tYA#{8Q1orkK3u;licr^4CZ(mm`LaYGhulx&xcWde;)TaF z^L>u)=CH7QudMX0%tvL&I^&H9i!hO_Ub#iZR>>@h3!)5n$yK08Y*OgSF5?t5-Zitn z?gIH~k($bWn%Tv^vLw~$xe9ad5V2&52g|Apx!(6bKDLqD8zEbdb!s(t4A&UFe`OcY zXoa|7l$LCB#IRw2ME@t6nYmwT)b~}g&V|NqBQ+8xnKq*XP4%_ocUYP#O_uG$d3@Qw zZM-opw`55UUyIz;e-K5W)bXc^kHNSuCff9DiyyOJZfvz4l$*n)0x z1Ex7i7_D(?!G!un*pGujX7lo6e-mb;J+>!f|iVsT$eRml@_wY0pERo?owrDOZ!E=n}rU#5{>$XCSi+E?z_M6`6x9?uM_W z0E6&dKHnTjE!omyTCe{n@d;mxh&Iu_adEKCrjE@W<7ABZWScecF4Y}vo%3;MAA#2V zkyg2z4u1qllsNw_Sk3h!;+SOOZZ6vJIDeB)!bO+6I%k^)u705Gp2xv2i5X*1Wr44z zx4|*_+zd{_tr9(D;d#JF`!-GfSY-Kf!>`q^6hepzo20N>pIAs)KQEAx(4f>BZ(#QC zYk#^=`lvnD^L+fVl2q1c)_u{>XmQBil9n}#oZr3Xb2V`%}O6i_F#P27H^{yUL^r{UPg-e5?fi&-Rm! z70hMv4@fMUkrf*4mZHI({)dbG%LBQb?mF4{hV=3 zSdM4cl*wlRkZ(U*9xjH1m#8;Y0o;|2OcXT#Z`9+@-Q4yQA^e5JmWrNb7vzMR&H*tr zbTc$OdEey!isLwVdCOgFwmTZmv^xZ>fab=^qo=XT+$UfD>El?q3cT|2JzzRp1EIf0 z*BPal*J`PtH$Te#ok`O596$4;2UVAwO9yjJ7d$jg+SChGm3StZZ_yhGuBQ1*Znhk9 zR3vrk!p~{3!1J21$j!l^|HIyQMm4o{(JCS!1W*(qR1r~ni}WU-K|nyHgY@2eZz2Mg z(4<3X(xms^MOtXmYv{d74WYgh@6~(nct75F|GzOZ92o~W?Ci6%_gZtVHK(n@U>VEI zXKRlwQ31lhJ6P6ERBcx964?3oTYA&$;R;?|$b2{zj@ zxX*A5=OR^V;6(+pNj{DTQpYlrTWjT>^D-?#x7+GH?sn=rXHYG8B$2wpbrtM(XxH{z zWG4n%hwR}fe$htv&31DFsc0r!)Uo~9BBX$TVXVdt}L;3jJCA;bE z;I6T2)U&j#T$L2x?uAT_VVB(sTs^23!p=sOxs+ueUK7H!_%OkG+mlz8 zUiqHoq0y^~hw7K-0WRv!i&FzhwYO!rk6!aO*ESw6QdgD_zu$UFxdeCe*ZQpmAm$te zxC`RnD>^19e-L)Dtf#0g(UB_v2yj(C(PgH^D5!A6Rvzuqg zMHyr1H4OpE?D6~nbr(sBZ-I0v`@DAQY@A9;iD==g0f+tQKKw5ASrAp}R387JXF(Q9 zb#Q`Dbf1Ub|So0@#4;f$IX6!(&7S+crgT{7cUlVoHd@G&M z!N@AAg?;PJp>;+c61PcIV@#&WiU!RkC@aEeZQe=PxQd+8>{>kTO5h{ z(b*atM5~elKAqhT$=HA@MZVc9iBklU&PYtv!4#UzxCLpU+Uu#MB*>LUrlAX#OD;R( z-3#b8KxtWzgry53?GIa@Gq#8QAV$^`jUq}7I9wh?gu0}Q09+k6$@4CqHcjof+^u+H zV^L<;%{E6=V%z)x@d(OyZ+w=4uIsIjNw$-_1GQ0sRly2+BjonFhmt3fJIZd!trqR9 z|E7BEn|#)WAKy;-U*Bm62&dt>p{%>= z{o&eqNk|%wJbsNb(6Yp;;+)Be(UQ4|g)94Jz|>@{BAT24SC#`vrnFKATn6q&#{tu0 zT!4)Hr8Ock`v&jj5u*=}q1Tge5=QJJlJ~`7nMIqJTX_=FrY;Hn5En{3xTV>AOX#<( z%)KGfPu8!|FBd4 z{LR~)+%>PkcZGa#Q_jfeIxp``ufQO^Ung^=8pi~9Nzyrb$D%HWs>p*hcD(8zA9H-Z z@Ic!dT^dNX`5W6+RYiet6E3046ypFYg?Y_RKPW;^ceA<&Gznux3g!~Pu*L9~S=JfP z21BE;Y3JVE8mX?zAV>H+xB-S5zr+MCUjwQ(=d~kfYm2!qOncIK?wyR{y-z7ij(Sq= zKC6gDQ-JNsglF)cVqsskzxqcEA)M)XT^X z!zSJvfA~xB=9iWV2vC2Fy~m9_+Qr|ULy^x#8Sh*6mZD}y#6OZK*2A|XJz=#u-ghAEMd z>n0@ALvy}Y-JEGWeQBz(CqWek*KiMBn(qr^q2HP#_I2aPDr1K4J2>0sI}t}u0)NgW zZyzyJyxsFzpNf6u@8@Y(hT(b3D&G*QUc8#GSr+{q{Hn5?DLvT=fx-xy5GuHRyRB+^ zAj?I2eFu@k4;0=}(j3g<64ttGua_bL*A=wgxN*!cjfE3}!O*eXu~$FA^dTm#i4dLF zj(d7uZr}tz34v{&o{pO%JmX-7UT=%mFJ~R}F9H?-JEV5hfho|jLe&NFY4#i~FxlLc zlf{}pjfCGp-InLqAFH>Vxy$O~^Pvp(mAUYEz)_ncfp!wcn)&u;t!v>KMS)#ZyKpte zT*Br_r=&+at?${-*mmK}E@mQdI+w}o5?SBPwyCyVcrN8GqFU;RIpMV4Cte&ii!0{F zU?ns&h`66rHcZMVmpjvq+3f#%sQ{G+s)~z7^tV!mqCTsyxbg)2bT0JN_SKy;SMbzS zlW3P&U_~LC`%VYDO)b#y)vd|dQWP{^oXpVytl`gX*T&i`)Q=$1GM1WhX7O(rbo=SlwY`CGN7md<)(?p1NvpJNMt<3hRwEczbg2RWB(( zLEUY>n})QMG^bWy8&PK<&+n9tT{4Rt}Ve|V|XfsParkGJ17)2QrX~KgwX4Xbu^9~1-wGI>rnMO z+A1R%xi1p5bn@>7SRAT5i-oM{bPjG*Mm;<4NN9<)4=6urSkKAzXdu&Zo3le^6>Jy} z+>Ip70-RJl`2o&KZNFRkZyBw3O&8c9Npi!dF+ysT@GH;4xJS!63hpWC)Z6}SCiby& zJ1R{UfjbRI%h63$+b}W4h)(t1oj!W-aW}tmYGOypg9XG8TY^5w602vag5e{|*hB!= zi1r}Bqsg^u^~Rab8rfDu+fLMFvlPy2%>A_Y zIpk48IpuI#6MkWt2VL0{Mt3S~%ZPy)tM|0x(7GBT_xx>P4xw~U1k~gmUfVTa*Y3>f zhLDrrz&zI4`4QxZ1#C+1TXmnTZOP_=4N7yy8Q&yxAQPng%_|vm&N9%rM>1 z=)7m0%RvP$GEnE5wfo91@{2pdY*tV3oPf1EaFdtHui#2$+=kf2f*6g?~s*Xu0i1>ho76Oy6PTZ67_q zy$b0xh)(=wK|qu-9&UhWyrUZ!6e$_EFZSEz$weg&$~X457DO60gEgtlm%` z=9n|`Yv0~0#1)ow`CnxqWFaQkwAXvA_%lOgPc4qB)vz13pizFWk*p`95HwKA{KX0+ zWE}R8&xF42q)_lx1)z3f9Az0ACidsBI=$5qoqle&Xh456Wk|7usi@F<%d&RQrY)A+ zA~2cd*}=Q zzG`9(#?@X~D5CrnF6?zIJtzR~U8p>a7w_H ze9Dgo%0|L`T3N=K&Ijy*S*G{4sZbO$pvKRsS;)QS7w1(RtZK#^WIz`CdmHBi9{YCS z13q4?s|ebKrp-M|o&ETNA@6=NZ^h)@%zN8ecm;Hv#$j)t`(-#yASA*cw+OqOF(n>V zPfi#*Hyy>@RuC+1WRw;6!BF6Y{z3_tS~GjmDog4#8Qmz2!_3H64jTy(%(Nf5O&?A% zOETqUV7mq+NK8)azO>m<8j~^bXJ<~j*P1RHh?YT^;u?ut1k{hz4=kK!)GLZGwTY&lDV)0rzlla zK%)l(hktKBF9Y|cZlE_btuE5p_fmsoQRnxj@ucEG2BFn+tUChubAW-&lx{`&qiNN< z_$xWDgcQw8N#DJ-+^G+pk#!rbogR*IF5Sv78Z=}2fuWl{$Ui<@@SES3Byz`>RIJa; zm*8ZUnY%Ncb2aTPiBHe)sMFF^#Y203DMbF(W3|d-*j@86&mCiJ_sHB5*<=_(*eB?T zdM?TK`0_%1VEitbnlSBTa^#G_wN~a}6k*5eGrhGDmz3=Jx*6wBx}$qX;4Wj?Fkyb5 zy$2DT+n;jJRBtn)KtzF9X|Q7P-dYwE3p5Z#Onw_giKCq14M>v}+H8H((5PGZW*6pD zAHiv25%7UkCAwHQafSTPb9V)TlPaNzsp?R?m+Z35F7k7a4L4DDt6m+++;Co$0q>A` zUXFQ4bmoycATuLvfTk5&NKRFxTQ+|ZK+B&$)3jgo-gaL(A|+g#?AzH;&uAVis`TCb zo{{cxD+aEUnQ;$-pU3(#9f^|13W%P&&&JLD4iWWAw)kN#n>6gI*4Mh7Ch3*Bpd`M! zo%)>(XvpJZh{-Wig7?`Ss~MkzDgxTkD9gaNb)ENNF+pJHc0_S(N1CJg9HM%8xs!o? zDT!*Dpb0@R3QGUTqKop99RQ5DdXtiiR?6~q$wT*JMiC#o5wc50q@jvgFw+XBd=m6s zW}E=m7m;e{x<)-AaN4^F4)AwJ9TpK}>G|9WpdR(tKKQQ53X6qe)T+_lHOszj)LBQ$ zoF5Pubr1gG+}B@Ulay3TGgF$DIzQyy&L+n+Ib~w)T7QtiQ4h#{y0zve3{;mhJvdUs z^X&-vCVnGzwG|1$?ygHX%(RMOc}8-X4QY{AL=iO)DN3j!TiC_({Q_!N=Zx4d zIu2?&1zq?0A9gBRE5!>XaMx$m`-;;PWQ`*3!Dlr1O*jaA5ZY@s1r9NF3mb=v-=-?K zO7Mi_wLH$El6|e|H1i+D?KmshkSfHJDtJ_An)88}o!gSdzf4Wb(h;mQJobXeP{!nM zFa5Q0it4aovJVq1U|K2Zo)c~**}<*<7sg@X=|{Fi#l#WfyxriraJr<1YP)dW?zqu4 zd=4nAg@z99Ym9F9I0Lcqr-w8sUI5$3=LKECpH}(M>%;>95 z*}o~iJboPuNZ11Vmrf0-E!$=B%;Ph^MZRD$xwNx(bCr5XgO^CIZBofZ$~mTCtdAy2 zoI8Y1G&x4$S0&Ql3Ze;T1n+K+J;#=bOW1}aKT7*aYN``ErE7x)1D5c#xn4Wh4J3=9 zezk1!03e@=S>H_}7&t3*i5K z!;8TD4)oqldVTsK38TN_Ty-ecX#=wnST=_H@4Nmz96Z*iz%NN0lL-9IFMlOy(FvF= zzF;QuS7qtnN!vf#m{h;_q+hvWmmF{lhf!M@0L}lCJl@12xCNBX-fY0Ass0YOfj3JJ zf!f&W4Ze)ODt~|fBmkrRiKl!2&%^rl$sK@%rD*Cf;rCShJs}d9{P-P5I7T(}&r7cw zNO#q@PvqAAxd!}Dj}AC3?|zHv`1jE0il#8Pa6Qj-`tRkNK*mcjC%gFX5#Lm|0d5gp z>!Vcj-^-Xr^?;uY4!?JyU!!B?18&i!-N>Z<-^>4-=6`0o=zr7v_rZnvs{U^^|8LXy z-=^`e-Qj~1Lr$x(csoL?n(;Iy9Xrj)2->wa8x;gw|JHIZX zPZ$Ucmcy%Kb|56e25Ln z4qRq+9^KSl)sbqj33LZS?WZ^XjPTbRDGp2%kS#K6@t>gsKPX}cE^pkIdGpU70|F_2 z4-DY%u_4Mp{GX7^850VHDN*;POpeQq`XRFWN? zByuU{iMndmu88#Y%AcREwX%|JBe$|D%D%zC11kl2*n*53hi?n{0k5-!4%YDho z7p3Mr8fAbf0x&;gZ*P3pAA3vbYn|Jx5zA+*M#T0NW(4823y`ySZV9IqY3vD-va{_<<&M1G{vy@Ye(x>X7`fVb|ie+^BD3({P;nZeO8}(o5xPu_!{~}X0H;j`k=dXdFkWA zSI-z?UJrOLLz2yLmI3ST@%pnR4%@b@I6NqvjXq|OZm7CH?qk1UN&9tlE7y>9P@qBQ zSGRUj+s2TU-h|qC(G0bnk+Qf*iW`M>X&(Fv(SmXA)qoGLX8nej^=QWQB0)YpNq0@u zG*jC#bGeO~ z5+o?Hg+7*zVc#MTBju+J>AL6SwN*Z$kU(-S?I+=a6H?)O^=DrYcSa{{I zJJkc`>tfdK!=kP2pzzRHDiO;|jH_wxCr6>pBFRcX7rUH)i;hiaCE3>}L4cV$CnF+C%m0})9>BA8yAZ2+xvxda5}CkD>cJ+1~AQC_H;#sE&qwjvg%;q-0lel8KbZR{Tt_Dfgc-$HVwcZ)3o4wAl z3V1~jJNu$seMbk*wq`D@wHhRsZ#;tk5ZTb^Tc5tXK=FBp2=8@lmlt|ky8`m0m1hS& zK#$+(IYyoG(F`CvtLvJT>~j(+sVJykVR&O8jrMSL8z2EpQGg6y_36oI<21%YR!+AR zzce3(`DRua;r5NzZ#yHkW==-7pK*974x%_N<~eGV6hz9`5OHxK`xu!_9$ZOEI}%Lc zQN=hN@liTDour_WG zOMU(Uv=Thu=icjB^X$`Io|dh~i;cz!ZVH^$F9DxwIDFAvNDb4(VI$5H@-Bd*GPwuB8sXmEkIFk+XWq2z0c73#Vugep7Z5RZ1``f$Pb%S ztzcXxdVaKnv_i<)MagqVE4&kn-8v*`2I|*U3fCKc25>kbe3n>r$Kkw0ex`suS7erx zE?^Q+gW;%<$ZeNOlf}U~KDEotU5cfYdgfKJgQ4j{uU3`>8UUqasR;slT-k1j2&2BO zc^;(EBB{boXD%=DyImVkwUM%o!^lMFU zxVyJOlKS_E3H6LIUB}cxfoUl^RdvAJSveaIykC3k7j;{nvqnpE9cIRLk7Xi21TR_nZEkr_j0_pI3 zvT+A~$>*DO|yR?tPANnQ|}Gzj;H0f zjG@^K44@0{kPK5Vhgba6mw$5P!Z2MNy>!*J2USg@hTdX?uq5Sjj zoeL`WBK^dBN+MJ9*&+5vdSzbGT-mo5s4ROUYCc<rR6kN#Z#%xt=5s4i9SbnK2 zoHi+?J*-q~j=LwIlSZ|U#uZde!F7L|ufga?|GjfS=dGy(`K4TPgRpGp0T)D4MR%p+ zC2dHQp?y+JQ6a0i)~rhVmJz0T?ypxK7bfU{S#-&D%o@B0EAmcUcs8OumC`0a!i6&c zisx9NDe%S0x7NDS5=yZUnc7KS*)X$u7WJuc(`6^vEs(}=fAI2f&E=v(3R#hFsFn%7 z3T0i0)bCW(JK(|*+4xzvB2vf}rGMs#EqbvV%6F}l3O|sQetNYQ48jp@_p`ThX`&3~ zzv{$kz{Z9o&rS;F#Okv<6!!Pf!sTGoUTwxJ_gX_-#C`D2(W$38yi+*+D9LR;Z{1oM zezhQPK)T)wdMzslQG07ehqkL2n|{ya5i2@8sKpqkz4R{hRO~QYfd_qTU>0=c#cL#%XHPxYegJSsw8ZomkX{UGl&@SkXG}23QAF1~BNArzqb`)V3e7 zm!1~QJe?u5eCcWQM@|~B(P$n8U3A~7h}1%gKamCT^@O-09c5ZAY+_B=WGxdEu=i@CbiZ)i_;Kn#n%{UA4rbhw+>Nk$HvXA>*#o$)WF z={WpRgzJq07O{zyOs*(M`$S!S!A}E+lYWAPtQQM6sJQ!>qh)BMqryXjLU%`BE3*Wbtrm^*7-hc_WF_T4NagohbKBM8igvxMl{X`iaqZQ-+8_{ z8oRiw_ zZejHv>AlS+`*!Nl3C+3{$nRxvDA;-b5n)W{|mC4Tb*JVeaHJqp zjvaLP^c;D5v>5o(In>G-$mTJ2@5lyt7?GwxSV@-8QexB3FMAw70 zn7%S3st|@BvX=XztugdOMhuZoRc(-tl;PM*FXUxHj{}vBzy@j+hdo6PTCc{_%C zw6z|dyd`@o-Ytd71}==72TaDD2FT2>{@6;YnXiDji@XtvQvgqSl?$h z5r4;nZ?6ttU23jB)rCB)AZ;u-WN&DFTW27&__(<4BL02>%)~mSU@=_VVc4^s+GW#a z+I*?>c8l9-S2Pd;gyX0ep9Rv6+ ze_4Xswq8!RkJsdf{EEV#SV{9H5G&m+s#r`nb_+J-#cOW~d%WpQd>MEq#WhkwX z9Cx-+*;S%k$<>K6`HJFfILLF7>!29&WK>963u%w8v@ozHR}%yo3-CF?pf6IHE*cY&Q> zq92e?Z@h50tK9y+-1o-6aU#g=j+-0Zu+R5@V`0CLrV4ccDybODRA~J#(qsZ$HZh63 z^Y1&*6}1BCMo}xTH}ijyCg9eReGrJu$KW?jtGPT#=5s@yLM;V zy0nKES?A7DyHR4?RkKl0TTpwp*HxQa*idtOXEf2&fdbL5jypWUxMAUOAchK?@lvO^ zlD_jBzAOsIeDHAI?&us<0RljTL(vi21?fD>B&E;aqUWN&lIUt9?_cH#M5$%+{&mq@ z8WUxy{toLw3#@U7l59db;k`f8%liO$pp>6&j0$35H;eqzz9uSgf-mQ`@cBQtns^;rl zgpXc``de26FICjEhofn?fTXQwwn6br_-&ArIh)4kO6U;_825WM2J|=u>i&Lc+b@w? zXX=+5OXiY9EJ2v^q|Y$LvWa%zZuIz7FMgJ-Nj_VAgcMkT4=%>LV~PqVi_i7VN<2lR zT3#m4H8?@mAj~Z7|11(tN~}2jSi@=pshacjW=q%65O%?JF&kGfuqK}L$}We zdUra=aqMNIS>Fx7Q+CUbrb+>#b@7wFB^@;+mc)|C7J|3^EYGwO{ z7Jw&UR`TC4J|WS}(x%WisXnC%$ULFhH`n4*McH-W#AwphzN$y1MxS(x^u*g0i@iQB z*zLBG@g)LvptR1FHN*LuQ(#kgf1>AhHCy4?!IX6+GQLh1=y>VL{%KcfchE28I{MmC z4h0|qbpjFxNZ-rzT7M!zGahf5LaRS3MnX^f#*`c3_ZpcO7dK-WuC{Tscso`1#=nn{ znx=@eb@!mx`T4SJ1#jIQH{@zd-CK<-I3k8;K*zg#`M9&iq3R){=;SLuRil( z^GaYjdPq)}P|F6av&o!pmMTCNH>{;WR)H7a0tkRi0a*dKyq(toC{Aq;_Sb=r8)|}B z5%akdi+1YdhtShPK+I@+F+yRx0WjvMG?p3AkXI%OUy`N@#;9vVRqr&MR_u|nX$}qi zh`aVg0fJ}3TruNw%1il0{`5f5;o)jG-5h7+{wqOa%HQ8+U@`bViGGkz{4u;(2ajBl z@0G5s=Lqzx@ZL!G)rGj`o}U#*GXwV_*N@nCcH16w`7DkD__3B^G+UgxUaVHz19`nE zf)=;5i+S)l>1J1#eo)W{G6d))|bYlpfi7EGs&J1r))=Q)SJ+rv4Kv-={0r05Ejr_kq& z=O%=Rdtw`Tr4yg;2i7=^zAoKEUkR)>B)Xnf4=3&e;VsN}-ihq$3>$%65rE^$!dG94 zajMlsS@j8ZECAz35KplUpu;V_V?^sRroW|e!(Mcc;m;8RSm53ZW00nNYhl#;@k-h_ z-sLkVJT?BKvr9Lux=y)C%`tjqFyQn(HDO~1{!0(fQ-$=IMULlu`Qao$iy zBY*V9nGIra93h>QB03%T-Cgf&a1cVgCs66k;W?d?p)oM{X?otOb51$D`386H6J6ue z2mgAKCl7&x*86sFo%8*sRpSoFD|Hh?tZypGxjus1vFHgHYQ;0=g+>M%bZK2EeS$pJHDC0{CGAVffvs4pKwmIAD)3_IYosHc&1-5I z=$g=r8T`(FPeUkX8l+-xmHXgvz6bw^CI=t#5j0hq3KM|bpbi)d=dk2eyy@i&!HR$DHmd z6mc6bQb5Liv}KAXD)Ly((RhTWc+6W9cQgaN+1x4kWE8fYb}f~32L6hQZNq5ql`vm=({7vq}%)F*nQWu{N!F^OOZgC!TO(s=+_&{_fJg7d2f!r*KWiX zekTl~bZFC8mp}T~o-T`t*JO9DQo5hlQ-5%rm3wyBEm6<);kM!m@1Die`hSha2*XYp zCD`n%*6Bp8SKdA2r_4$<0b9&a!s?!757o*fY3Yfor< ztY!3o$AFZ7GFN#+PTJ>ijJQG@5I@>-rT89tI#!C$$)$k@Ivbhvw_PAR1aKy+IO#jjc91v|b$&6{s^-z-0V zUJJO9%56Lj+o+^uwVwEq>O(If5dFfMy(@F#h5RMH=4DVb8b4P+*12S+qE1rE;$|g# zt%^&Ome{shx75ODW?p$uZR$Gz5V}&at*Gud>2(FmUG~*UGxXV;IadJrbOsJp)6-Z1 z#+LjUeRp2(#M^3Xi%e*YLaihzk3{#j zIAli5>j|ntgRL`6uz-noFg#ZOx~6@_x(`qv?3|V4vHtxijxgb~cdx*TQx@Do=C(N5 z`79vLB<%`N(q)c-W}^cNXv+7<&`C?`efPF=+0E{0IbC&x#Bdb73~}R&hK9-7156O5 z*%&XMEbX!E^&3Vb@ROVQtPwNuXb1W%1t#0LSl3SD2?CXGBsey`+?!)mwqwl~1`R42 z=7YNa6RYKd>loTA7K!@^QKJto4h9u$+aN7be(i3?Lx?Us5lnn$AN(%n?4c*jaLy}W zuECM5?_R?|u+5_k7WasGsjjNU0oi!**XSI$G`c*Xia|Eo3DZ3?4@JgD4=U@)x!)}%{7`qUY)$-H0>okL+FN8?5R*&YRKrZ`#tunjC>Zrm~xXsP;GnOGp2=I-!U zO=A)IR>$Y`ovHKKBYmT z$>1~LT%dXKJWzh3%S3kV@t03p6Wl4}9!KC0h>AY+R|YmnE6XRY)_;OW2WER9MAvEm zpx0zmiFC1UYle`EN<_&?twhSHM%gabgsfE_j%e{|N0}QXPfL0y{Ai}#HHx6O?fjf> z6eGI$!_*?gi0Nf0guh+m-s#=Ss%KghEqDft+)Y4(|K`!% zhilzUT5p03kXlWWJ4a?p;@C zqu273W1scOj}J+JqqJ58s!R8x1Z)G12}lbStuZ7wY*J6>SXl$`O-(sk^C;g5^DI}g zgAiqKg3(URWI@l(GqkjrZJ!_Kw@!lxj%}+PJB2=nx!Fs?R5XW5efnQrPIp6nrw)#$ zZnS@J%(CXEpyFAIFyF{mi^dNg)D_Ju3wN5h@~9>e)7!KxV46HQall(yEvLo(E|~We zVA@BNg?7K+o`kTiTV&sfJ`OV~murt) zK**|5vhw_BvJ#L3PQA(!S~s8&Alj(MR)d=kmIXZy@w2{OdIhH3cHCp@vv1NQJ$SHc z-P-RK=+ruxd!QT`RO}1beexzobrl)KGKY#oadFBt@XXm14UV~%Lj>2q^4@OdT)xvm zFXpeKlXkq`t}#{|V;>|mm0F8oKVVSf{uoiwJ?=Xkjb|m>MJ+@dHom8msHN??J&m`d z-e;;Tgsxpx-v^~UHqMLngdL;FhYs$C(p030yC2+%X44%3DVAQ@;~MI^)gqn1rOd^6 z4*r@UCNSXGVdGjm$&(h7#;}8-N0+-dD=&R|J}_=m5wo_c)dUcb@e&!&3Kk;y2`9$e zMGdtZ63=+lRX^EK2dO=@-;KOGlOw35j z0%Jo+;SA7t!L7lKj;iP&y7s2DYjL75(L)1rNG3Q_Xs1r8OUXGVM8CI)!Jh~=%S|4& zL8VPb?e%l$RZ7nOPz9>1!$A0AIcKIU&R>#9AU*0+26tqkDAk?buzkt%EH{)#E=#*i z^_aTE(?`xKI3Y*C$t!5eBDZ@p%L`iIaEhAZ^^WpOKta*pero~nwo%RmrK}(4(MySIOjMlQs~%vM)J#LCp#!b8Jid;;I1hY5RZd4U zTzFTvx@xy^d7ZNI>N)nF0H=xd0ktzp8D;zPL;=sqog#0`n1=T9_jla`cHl^YDJJ zHka!-yL-kgld0=cq3gJylZJa?Y9?#0og_oD)Sazlvf|W%zRIPUI+7o*l~#bKNZt+x{yCi(kNn;5bS*$u4E4*qs8Qy z@!Waj@1dWAXQSs9RpOut;MW7%gB*i5$#X&k?!a=nQ-bs4KR!}=$^J-EvnIU7z3BS~ zA|vKPCzf%TygOA)>g%*_IlD`#Bz%xk2^)QmDdG3rQ)Rt6lr8RjUYLrkCpjY8L5?im z$9p=za@-?NCj(`{O}^Zdse``q_#sHin$cT8U@tHHBKL-_a|%qw??o~lnPS!PivX3e zbi*qI(JpHQ#^i&yU0K1Kdun1o*yX0*h_!z;%2pHbgO_~H4mqG4g-(2km`~GBS8|v!OhyT><*~6f?ujfcstZ2Dtr z^ROibI1#M_Yw7Oh6Y!^K4S0W{vFYoC06ld_Zfu9lPqrUU#6WCCmk zm)Xuq%rw;vEb->|REy!7$;$SKB+6ad+3zQCCAP6NWi46|E%mNtvbu-*NnXFV{ z<5g3*n7aUYVxZxKNtT+6d=$!mZ01_C>JKNHw6}szMtgxWH~0&SI{Pth)Zv_ZI1jo21+#|j+w7lbL=`e+JixxH}?Up!5 zOM`P^xlyO*FC=Wso_ku0O<2~uf`#V6%SN2v$=}07Xani}e>mK3hlxR>_{cgN?dHBk zXM&p6=4Bt5cOKs4mJIXqQ*<7i3*r&s#{!9XxJUHelA`K|lNoDOJYaKA^4E*(&w$@6 zSw;Nhao9rRo#4Z?fhqOgOjvs<)kY&ADY_@1wnh!X>Qp16ZwHx`3ij&HQc**%fsJkq zXg0h$;d-%TsH~7BhHG5but;b;xpJmqa=7pFAwDi*z&+NbT(C#We2jV05r-f0ZE3;H zeMF)<`ntPWd|FFK+ed#UKt!zEtp7_}8wqvE&@Ddukn&qDd=_a9Vz$obs=--4U;2JX z&ctS09}>f((&`@_QtlosA2@jMLt@Ry&Oe4MoV+Z*dhU&FzLvq!A9GDwv|TH?NNiCA z!TdMknt{oy!+8+I>oLK5y5F&-5Chn_FQ%MrE6{_R|Eg$f8 zE@8T;L%o2KgR>-`GFufwO=b(?(15zqT+ zpv7P>Shju*_fcE$J8q|RK7<8!Vrt)$=#kZ;x_NLGsC0PV^V-e{SKx#5MbookhnqO@ zju`~?TQPpC>cT;7)%l*|`yPh*1CugJhbqv{Fe%;iLJ#5%oi%u=Q(*tf0vmLChC?r9 z^Ru?G;3IzBkh^KB!tSIqB>5+$Ue7pkljFj&4wTrDt6yyn>$8vTPeMm3*Hw%WwRyhF zZ|Ji{({>lul?BJ~4@icxo$T{K-k}Ba*eA;4Ti#1i~Yc)JpM{Bi^r{@`JuvfjR#ltesJy{{8r;Q+Ke*pTTYs zy~%h4?O;n|Y>ALJt|BitISY2Yn{L<<&d2`V5SuHdBcj)=iZgx%x|<6tuy;7GA{}=k zi9ef;-R@a+c~L>23?MSl#KedOn4tZ_`b%z^8T}L0jvO(SP?;6C>8U7a#RFqIwIq{! zuN+Ca*VY~=$3?IgNLELUScTILSS}TCZwHmg6sBIJ9jegOcYLkeKhf|{>W-9eIqnxE zT#AA@;82YUl&sNRzHH-cd`!wbQ$*BKHoqncE37N0&Mb5sT%t4cGZlM8edXujJ}(XJZV%2peLj05KeI1;Cq>8$qXtAS7>hj! zX8(&6q2$A`J+7x#yAx4#ws9StobQ-z+nwvHQuKcag{xF`h~dk z_&2Sqjx8%@4H-ZlG>MPB)c;)ia;fKz?iv8K2M0WX2Lxv@e3AM^Ez@ADHV_%_f0ebk z^$*I889`AJfE}s#J)!?^XCdz+49Au=@AWDEdN|Co5Cq+ZJxeC6f&GY(DT6Y zp#Y^)U5)aojr`$+Iyu?ond-N;f%{s~G+G9ir66;_gU*UD|DyDUvo>6AnlRkdaM09y zxOhU!)4cLsa1aLXOR5-K<jIrsS_x&8-q#9Wy-X})(Sdpv<$OBMd=(U|(l_0+z1*8Pc@mS2l0LUE9QKtR zmGwlkmu*P;o+q#?$4|(|995E5G8~C*EyeU{p9YNktdylanYJ>1e05{3uPw9BBWL7} z)>a16VMjyPXjEI?gnT4%?k-*P^}Pwp!Y!Z(GP#W7CsP)DAkp^%4RE9T6U7{d=^RH+ z_Oo(iV%k&jZy)(zOj?!7xdJ)4Gf?}8YF}p#E}Orcxjgkn@-^=EY)@_2M~-l>9Ddpfj79;$H;7(ad_k5)$e(~Qz7Ukfe@&ZXvw(ohk610V zML~q6w*L=%?-|wPw*UJsMM0&BE`?A<6brp~P|*O=R1`!?K)OKaoq&LX3WVO9i1gke zKGY*1U!{WJ$LtHU;t_t2_YF`~(4D(rv8R$at4~NyVFefN`!Ww~0#( zCqW{JVk0Kuc`t<+<=l0#;7XzNghyU)XH?qP<&)P3NVUGL`%CWth2&9)bCToPG|sCM zKwQr1zt)(tc zEpNpVoRxNOz&o}A(A@u~d)bb@efl_aXhf02sC;32k@;+g?c9!Z*@*y20)RI%9nYJ{ zwUB+;X8x_JCG?O{BAf?G?5Y}adkO9TsurVbuXK3a?~P32l=r6lU3kRjIZw&8K9lD|7Wmep{fHI!mCyL0 zTZyBmD$AAk`^$^EPEg(i)D|#9v@KDowO!40){^`0ZrFG;Prihhlt~kO+~MoZ_Z4bi zm29dHDaC&$6k>|stWcxKN`919<)pw;ez2{Hsm(^)E~(=uu}hlM;F7+rZGUKy=5cOc zjJ~^t%gAd5Cq5Wfd9uf0G^J=UL=H)vJRvr)+o|p~1f`6sj~%sZE!?cwRnP2yWs224 z_O~mY=F@)nz4C^!gCUoyhV4v^G;9J9@sP z!Br7eqp15+f!tbeqE8g|f~tBiXcBT!z)z zQP(0sw+*jl-_i0c6e9DO4f8@OObcJcC*!t|Gz*lWGhD@<64pI@}c)EVFpLg zUk@DT(Lv;OhR#mvGDHoX&QMK;aG!K?Ad!JAc zkb&7TyRU{RgJ5{T)1(f`{Q>zJdO*pZR9U&o6x2+~hp;WT|J~ZjxM36`Q&Dr=YcsPy zB)eI|uj;LpA*uLa)p9g|g?2)3ynAr$BsoMJe*&=G?KqN_(ot1JO#I^Mrh}okOqONn z{^H4OiN2VmW(ta;*pa&qC+M{sLXIiJRawU4K-CMd{#@wdQc&0QtM=Gye@O-WX!S>6 zB)do7(I{wBw{;VFx}^cT8bGSrx1P$o5Zau^$ZFrk%)6*bZsrqjF)Ir(=Ja6qvptQg zoDFiO!X;{>BOcU+INpa;r?n3agmDY5Avy9LhO{R7t}bEK$+K>V!bnFFg6Pywk?pT8 z7hE)4N!ggt*l7IwoCW_?(}Om#+SJo&fSe|J_gwvaUwzZR*2(5ljT=LlTLT&Efb73K z9COyU5<|=YgNb!^r##!qz*YxG$cFwY0#y;11FWgFysx0oog8v`SoDf!w%f!UQ;v=v z#3P~lP|0Z6!}V_*@YR_KDJmC0;DGL^-f!9#bRJTA;B*KGlWRzhlFc@RLH*@kyCYzS znBx6ntmz*&H1?w0(XrT+-xE-BZt5SD#5kRk(y_Nl7tKc7B-!4syF)`($sxw>+$2R_o=BbSZXIOd_A zRUbYT1JZa$k^}@n;_6wGcM13%4Tg9*3SHY6Ch(o_^3^m$o!(pe4ZS8lkexv{@ zcEEsbBT+CCELC11JbE4)ApIMA&$?Wy?MPBnPE4cpx#LKof9XxC46&enE!`XlPzih) zK%KUz@2-1D($tSakXpdsoEB(j9wq>Lzt>^^`B}e)f8s7rT+_8-u{x}3?|`MopB%Ru zBX63L2f{Il4r)f{-o*ZM3y$Xf@(q*YlI8pm+sB%ga%xX)LgVf?FMe0|{KyqEe*&10 zGSbuANl#>qJ||^3%;;p1jZozQT%63fV*C4aMCI9Ll}o>+S^r{Nc&P<@At$|2)Qlhj z+VD>A^P{5;szs~7(wi3Q>st;fr)39nX^=jj(taSL#=}S(CX0%!h3@!}A(I z8Z(;&IB=5ILx{!);}0eEspOVvPg6u~^~8(olVyQSidEp(T*@j&k?4~o0{)i#p)bjc zqdL2wwLEOMAHVVey>x(*f$hu!mOLG)DpNqqj7xS^eHh1NKUr`LyMS}+_c*~VTB4m) zPpRbfJQ6h^XSp-v3F7^x)_P36_LRt6KG#M{G*YhMD)ZpAg4d=sU&BqjC1GpH@_p<2 zhX`lAQPz_XOJNz{L{d|UlhpS02-Y?}3@0(lHpkuk%m8xa;z+Rvk&Q6O=A?CiVnywf zMD80~Kqi~B)Ml9mQ&0q^OhesT=%^s`7WXD0!22j5`_we4-+B1nfXXFqmd>#7&*tl#Yc&hzt+bXQn*p~kl zNH%DwWj6pj3)=9utwD~I!Id;nGx!t&V(b8B`l70g;d>}@(OzTwk=aV}zbZgJx zw9|S;H~@Mm(j4tDXPU}QzZv3vwz%mx3LJQGTjO3W;f75=VKaNlD7Va`(^DqO17<<7 zPvmh-Q!&W>bW!wbTbgGdlYEz|Z|O=KA(_~07iNPEPq#L0RMnA@U=Com?}#jYo_VWV z%Tek;>}sj7**^JC$BLkFjZ-H7#nL{>+|kj8c_pAfsXWP<$kdOAWDX_zt>JKCDv(ns zeZ;)#8;{|B&AOnUh^rQpFLPB}hQG46yz)4#nH{Bq0}F#)uf+%_)pfCTL+||ipCV@r z+gaipb7&!U$G3W23p}Y-NXOUw!lB{Ar^lqy3S+;z=kCqv0Kg6Coc0cNya#1y8M{Pt)Wk~f$!$`;udoF-Jl3(R6Afqn%x5GkDfw~3NeD6d-dn1 z^}*B>uaYDVgzzpVuH;{YwvmVRg`HlclrmE%Puw|hkS>O)kIKtA*V#^wj3uVl0fC2k zYH5W2L)G(URkn|-I)3$lskI!}X?`v=@KnqmFvb+6yCf=-vGjGPrHGsPH zTz1mSwTxenCZ;Ei_%T~IS8)c)7vn|6_7~S`nB0}k8e!dsYq2xi&OF2P`5{v^Eiu1^H8Cmr+*`)dAO-X$)hC@def+i(C-G%bK<-npLsNwe@?mq{$qu znXr~{NNn~HV{Nv4t{f_t!0a=M(G!!vr)}H#edd!~jA>lE`*DApRAsL55l|5)3sR$h z*+!qHDoL-EwgO#%gIZZfaws29Prv`G;w(S*wIeI=^^-KvE+X!oK5ZDnFwFZv!pvpT zs!lbc)m4P?1%;UR4!Dbf5^7JSl@=XjLcfdHhL@yeGG#GoO*4SVp)_go*%3qbic2o@ zj?D&tWaA2Iw$P6DbnoQE%v6FM83&D|L4yKoJw?9?6RycmQn$9>;OBT+Couy3IJRl@ zu^KK;Z;ciI0FGsdf|9Q_{agxSfY}>epJKKZ`tY!~940d@&i|`4OmickcKSYd7mkgGMjwIFP6-VuC4{?LdpX)O|Dya3~GZgI=KH(-t^` zfy&F9<8Lz@*A6=rWJ)GsmD7`l zYvVHl#&3fw*oQ^c~s_{(6zmcdWlg%P^;cGHiG$$3#vjN?+gP$PTdn2&*7A z9UE-FFTqGDQIy`LqA7J=%7N_c$W&5oyLe$-K6tq6`wbgJei(3O9u7Cj2qfd_tr8tl z;MCLTx%0#5y2wf$E2=O@EFfO(B=l#$QF_WrfrS}34C#}OQv-cMHj`6z6g<)7v1pk- z1cb(GsOGZh%nl7Je=AVf;z^AIm0&4!?RN+z)l+a49n`9GOf*pvHtYf~z0)tA1U{Vw zR0_jrRfw}3>8}ZXSGNWwUD0RFt>h7WZAv5avg&ISKTy;ovBku(lzo$rLU$1$6?pW+V z26>RKgYLSxyzhD^>LiYPbIl!_JTH}P6Iin^2CSo&sujueJTZGu6I+#9_<(l2uJKaBju8 z`VXVl;O-JCa@DU&^xVr~>*Q9#D}SyEN4fyE>FxAfCK@8Pc8newkTR!y7D!VtjK%yMt`p8@ihog7NvRmgseK_Dx|7VI4LSx@P8U7s@5#ncZ8 zzF{zn?G!^pBy74~Y5C`cFx4ca?wwS7t@VPzPw=$hxP(GM@kfa|7?xZyg_kpf2EVl> z?a(jc97nxnw0!GdgJE`Mgw?*P99*pAX>wQqpTus2vWqU*Pq;b6RdOJp78P99X~!o~ z5R621JjhIb+60P7-tnoCjL>cLwnM+lc0L$wj z$3^iK*!scR@H)ohPQKTi`>P8&C>lbiQ=5Z0vl*;|@P|XA({2($CBow;=(3*=x$IQE zI90*U#Q=pw*#$2QqfMytKqZgDC~EYD44x@&75#1wO+%vVz;b(rWd`7mivG3^%b9bSJhYmh;etz!3kC$c;cxqlo}3}s@rIr#)X zpV9D(LQ~$gi*I!VLx2?LEj^sORz$O+*zT4oZ!n$pr0G;1+J&x=A}*MlarB+2-$3xl zYPC}>^rNrC0%y9(w};JHcR1`BUaI3u<*-%a3E}OldW0dyG@rHeECtz|9f4nuXgvIH z*Xf>3TTSIjNV*Dot@eGN`!cUXg*Dd>jJqOqAzGY@x_-#0jK)>4;Q*M%qPu<9_XSQg zm2XW&_KEKWZ3z(KZS6y<+XXfoX9W4Do`8IS3ok1j{g&!7s!QHt%Gk#PO4D|W+~Usi zH5zh8zX*w1-lwMYgRV`C$%i1`?6G)Tg;bOvWY{PRSykbP~ptL|o4>cZ&s4 zh&>OA!mQ*&9FoOV_up_%Pd}IVn3jsJtGK0}?0&>wP(E#bI+&z3bb`EkUjaF9C&h5g z5xj3w8~RieTcFoo{{8-oK1!-9Fj_AE@A+PDN^%w9as-%GOTr5cIO35*VqSRTLzap` z71W=!zdjZgc4x93nNz^@ne{;6AQ762nFE5qZ=T{panW&n@cgoZo6%~wxF#2raoM=m z$BX(bu>HWnC&`$5oW(2$F3bBbD(wSbNTDcsnv+Yj)J*I4FXLOZb^35lp|rC~l3`jY zL!-sgz{S{_cMuFkYn`os@%Ao{Ud67DcDJ~4K)BqLAQFZOK$QhZAF*rLFWmw=F?StV zZ!D%l$;o=kR{7pr29OxJ*8anF+06K%?=#4ozUw8HDR&ARzODSeX8K5Of1VaEB&k&% z2O*$TG7g+@H(rLI)rQ&|5-}}hddrqlxkPh5cP#yujVVof`R_rzsx8Z6tu{?%mJ7e` zV(*h0IYpz-FDDa}1U+!Xj5_gx{hL!Z`HV*-WW|s)V85`zD4#n62P1Bu(EwVpiBHdW zW;uO`(Zjsgd2Ok#bl=mx0@CO6z;+|NPbCYGq9T!EP8BP}kMg|5^=FXA##g=dF z2-Mkic6<`6CpPumVOnt-w4V<{T^@fikO}<|bP@2&Ep(2jrHPzB!)_WXikZ5p)*(;z za8UBEk95IRPSrt=Y4bo~!pkooDBG&cJ~l&?EnQ1bu^x>f8do;Ru4-qQU2dmh#Ddb+ z_*gk;P)N!H>$ZTv>id^w7QRT;@lY4jcxKLo3AukFZ#0*aA69Kp31YfnG*`b15Q&_qFvMt#Ci{#vrG0mxNfl21Jdk z1O%73(~9+3*w!6odh%Ep(oGAQhf%?^Lbtlo*6n~Pqd zn(Ti=-FIhE!~OU%KVv}q3AOgEvV0@*6x=Ul5Utt?E&K#uC5o*V?`1cBtFvZs`}0nJ z@zCv{hbE^F#?3rey~nndEhmC7&ifGm5rH~+(a7}rH8$iT+N@kOem?$}-e|u|lOMwL zuy0l21q^cOBsfVc+e*o5J}fEc#Ku|LQ{#lhssXBMm3~ z!H>%c5Otson_LpRAC~9NTLaCOzMORssb{W2^2fhs==yU1z z*UPG?b6vUH8#O=iH^Cn-<7<}|l-G)^CFuKT{SejAD%LDzz2Sp#hvkG$swo30s-fU6 zP@7E_;gfP27Tif)P({noQ?wL159L>4VC*?M_PSQU5zXap+A7mt{;gPFxkop5=ETOv z8uq+KaI8FdqW1%Qb?!dacSp`_t*ny$(q7W!jC633_@RHcJK&6L0ho!nKND5CQtZ8YH~d@`pfEx2s(kWAFOi`-LSiFyAv? zcdB>vPs#r{?yD{qbI9m#{v#`p!5R7i9GW+5+`<2o;RiFBm|kB9Wjzx;hq3CAVC~EP zPbouj0`JqFY;c`WW#U-4)NPFnZDlr6Y1ePF)Mf>%RP!5E5@;qXEeyfw+14f>AXa)6 z6h^^b)jxH*>q$momns5Fyn{l)iO!74v^W{HP|-?yWa`M9)Ha z|NgRdSLh%(QJU8G6v=r1EqGm{PJa=-wB1Z&v-|;<#}jgXwlfWo2GBw`*LVx(JUFv% zlKJVvZ?!Y=+1x@yCpSOTI*X0-M}C#iUW58ujf02vG|Dm&$4H^AeY)94LRZkw>gOI> zn!!_G;3%(57EiX`7463^a~CL_=^^%Zi*s(*-6mZoZW+JR!73lXw1P8E7~INLnkDRf zJrgaSdTSjx67*zKMhob2mt2Y8q*3pfC5*)XQt}I>;Coi)474P%h4M)Zi?{p<{Sy7R zM@6z7*-$`UfO@|rtk2~p*;Dt~q{(To3)j!905a#^6G+_&$ z$!N`C3iYEazJng9KVfeh>{ao{ALKl|RlI|pcz!BeKGWUnywOoWoM+^x+M;|$T|4oK zOeoj)wA|yKS+m>h>%*{cp5O}lsd_5LXd=Mcuo}9gsXvb@xRwU^U&$)=`wagQc_p`&^ZYzh7XIgexGZsfr`mo&$ zGahrH&TkaAE5M)igmv#E3azb^HyjB{wwXIwIVv%>Rf#l@eKlHZ(@mS=jpemZb4!oI zuFU)L)(6%Ea!&gWaRG!T@}-@6b|l?hx7%L!^NqP&grYi^fimc3)cdUiM#?BCIvHJpoB=a^AQlujc=1*I}O z(XD3k9(CFL?h`OIp2xj+7wptj$6U4m%iFa*xuZ3aE(emAY1KMadJxK|YRBrr4K4F@ zmkgnn>4-udD_Oq@YE=&OA!gNIUHY@o`PX?Gn*nE?XvEk~(N=^p^}3ptTT+6fYWBKs z*?VnHi7Ajni?Ym1vjOPG|q zDwo7No8ytvHC_8LXXOWKKT(pj)Y!PCfq;Th7k}*NGU7g}oZd!JLlRyR*)F03%Y{%c z2aOeWF=v{!st&auK0&6+cKwQ=EqMQM*dEev9DDT@J?86UqxZ7aX(kA>b)$0WVstcB zX`ZR_r$-Otj`FNuZS|`Y-6}Dx9-=HL(Q_57fL(t!qCe6r{%HO5#CmkSrp)`!*&yLg z=hZrD$;!&7AR6BB3f_DFuf$C~&l~7_WBQ`)c*LC>?fbrVer?bCvd8;ama%KYWDo2Vhq+eOxYB#*B%w)wWcW;1>w%vrADVNtlmxbDOyyk zBb(rB&OYFRb$yOZ&1b_h)}DG5H-FZ}GgkQB zk0nhdo87i3u~z$0C%x$$YA`5Bp8|}3=RYS68Vae&2=0nfsJo2Ui5WPYD<(Kf#_i|r zDhy`_#;K;dq6;O*=~p*v=A<;*cQqMSoS+E7%s`IPt^72>0LeHz5lU9*t&`Zxw!wV62&@OhM z8BZ2v%g$$Ya?{0omfEk&%25*Qa>%7W{=9Lz_HmC z)A5L`7|vxK1w1(nc)3FZY>*C$DKw^CZ0pQ%OtS+Di@k4W%#-8bxf{Sy{av+juw}&P z0&oa*kDfwD%L3#L(1dT21d#CLr-J@l^k; z9j#ys^|B@!t%+7bP%om4>-Smv01Qgp?y!X}dZ>JDxBx;(aee?=iu(b1H;|Q=%B%zq zQNZhHz`)&uYz$lEHnr(pZ=R7EEiMHoGs&>#-(<;^hKFH9*EV0Jxhbp*ZB^}>^8qRM zi@VEH{v`Wgv(U`lmsyl;Rb4cT8#Rw`$o4Jkx+)6=!&uXYMnlJj@%XxWQIi5y^u(Hk z257joUldw_fOm@}(U6>sk=4kdg5X3E9`6dlfL(<{u`ennJ@;Gyg5?4jpOT#ipxi>M zqN1n8MNS#?*T=I!>TrkKoF?%F`VqT9QgRWA<%1T9o*2`|MsJXDeKrrPBf3P^pxHrY zL1P&kN)`bat;x(M-XTo>hG*Nggu$x8#ke7@GyYlI`UT5K@A;;$N$OwiEEM{KS-YjS z68G?DzA(c#h^XSlb4}K6Uj;MeHcZFF>}^0mSI;x_$V}woSUQtQjuov7`9d}92hLS5ovX&6u;(P@`f ze_KeE5}dfCeNNKccxNP}Kd1j3KUSuPn)_JJ$zhO2FGA0eMq~PDtx0U8wff8dGGa2^ zDAH}qm90zfgxx*-!JZUsR6lXK&e{O`R_3tS&ipnHfGr92;^(4U z`N(iOd|eX>4c#*+YxBsKiP-+~Ksq(OFwo8#@WVcSduFb?9M(qm&Wpa$Qmn44w^*yl zT`w~rrxrP6dABaU&vI(b?R&Vu;{+8uS=J!Dtb0kFSMjc*5LKT;Y>=mG${88!_Gi)j z8cq{nXV}tmOHa#pY4=D<6ZtulwJ>Flcr5|fiTAo>k$6*7!)qtKS$sm`FQHz7mzeL;>0zXl?lL2<-OlWwa>_2)FJATetpq%3o&`5E%M)uC zYRd4N9&C2EBeU>Mh*P+iZD2D$<4c8--}uK8Hs0bHsNQ1N$sD7o<-|K)42fF(gPzf* zA_cI8LOgEhfb(ZKpB#(@6na`nJ<~1uxl2(oBFbLC#evO#oYB;c^*?w~){CLuvcBk3w880Sg^hc-w~8F40eMrQ zqdotKPby#1vNB1vH_2E3VdgCkt%ZEmR>79&fwkkahF@m^Lb^f<9q+pPdFrwduCQOjJ>7*MBi4Y_EVKWR9{5Q&h>9GiH?Q*l%0HxM zm{a#a4yzIDk@^DQXm5ydLwB1hRD@ zr3}V%*a12|BufM#$V@t|*Hjwl3yw&t=7A=`L;ccwJt*LU#e5zU-5fLr<006hRJr0R$b0%6FqXklu{ocR8~;r zeQL>0p|bWbT_h1rr%A#|QL|MDaT$UDlKWCmNnBQ{gWSSuga@ErsQJJm5JuFj^HGPi z$+S21JUd?x>8-x2RksBc+SQAX0ifvV7KPl=(@G~fou8~jb4vl6XN(UrpVn>fCXxsE z$s1%WkyIt|x-{Q+Nv*0h(L{fITW`n|>ofnwjq_`SW+|sD=ieX$p@0vZJ$OU?p22=~ zbPIn|J)l1jQLDwR#pv-`K!yS( zuSp3#6v9)Prmc8g7!hQue`W=l`*I|XOQdtvu?M00gn9^X>&&QnSO>INyW`-SF>eHZ zsskc`Enb&uWu|OM(X4MYJgj#+nNbgC#=XQ5D8ya}X%+6WDbs(|UfM5NGm4^}d&?3$ z=J00K=wL}GAtW|pQ%2n*7#np*C+=^AC4P8At=$6$-b-zC z<~EygrSC`*v`WaQ1Ld&j$D=~ms9gOImt!C^B_0ugJFu;m&Z=LW|I1~!O(7zPpr6M1 zw${3rvFsZ$q^yt2&tZO1>66ZGp{}P1Nd?z8^z$z`t4D_vF`!+RV&tBYE9yFy;aUjSdAkvrQypd!P}JyLgjsiTQ6O-UL_ zr0#b=+xVSQewJp%9q|T&e3#^9-@NY#svpa48vJ-c8VP^O|ia$s$FTP9I}ZW?8&}I~S62X63pH zc3A3u(5I4QfNEMv5v4A@({dnn(+0QB^|1d9x7v3Ma}J!Ol-6MZ9Wk@o*t-J}m6J2~ zmh;t3ul9VN+DksvKEa3lORhJvbKfQc8g1ETqE>lLLmMVp(y`(9|FWc3?rv ztwX+yFY;>kiI5kg3B=s`090fg91i5oUwex3gr@@Qb%nT#uoNW4UhgXEM7kn5T}R?|xx4 zn_F6_y*S_gzWd0B0^_CG-8&X=Kt3cI_ypeY=rw$?9uTiu6{^(rv(02m?MDYVhq(0^ zp@%q~_!n@XKWyw7^A~@}p5yDt99rlU$}nuTjUC_Q6q@rsn{o8;Q|-A`_)gUwOyx@O z51s6Y+5`$p8Ft>Nlg`_$rY+@+ewm#>ku1TrK@b%8mgLVmob#hi9+uNZ zoB;y2g)q`aK06#T)rV6ErnXR)TW`2hdONuoao_)gQGY|r=SKI|TUx?K|jA?W&zr9ncD|4nx$N2raTyBq>vSFxc!iFTQ(o(G3JuDtd8*4o*s7Yl7= z+UX)ZDS<(-nV(MeF8C@{uoAe&C~eT>r(g~!2l;scG`66nTR+5}C4PLV-Pcjpsn&Be z{Ei*-SKwUN1F=X4b)^OF%1E(`^O`jZ)b)hAM*rMr9aCoX2?}2hR_WsM`%t@xU3+iw z(ivMLYL!FP53$u;P3y6jz1+fOWZjjTTZ9*_D@C2HMYSLQ=U{RDB5=G^ zlzVS<(PY1?;f|BEaNC1cEqAvsh6ua%H+FxbZSL+zJQGT1YtsTznKjxaKpSUA$0env6_rGmb15W?Q@-Gx z{0|9+9e5RzXPkgoUZg@{n^bm&SM&mI84pJRwkUC!=}S3{Gx4~-d<&!!_Dr_LcFa(( zJ1$ZV^B?9+g%zN%t=KqF-xM>vXnOmL5=|?oZh6*!SbjxxBuX`%2>9()pK|u=3WnC^ z_y5DHYOuQMn)~W+>*K%913~wJ6Bc)LBGtbs{r}n+01&v-dCp%- z&;R)`aF*Er=PzIJ`3}69sXUMP_Me{r>p$XDShD}J=KkXB+yv}RvEMl9{>R653_}$E za5mk!#7RP>15@dLe7wN_oA$p)o4;DBLOL}9UcLYEG4R0I{P!)=f0cY_#gJH>jCVrzc`HlZI!`Y;3?l6y!TH|<1^BL{%ain^Y8yZ z1DcMI6#F*|;QtQp|DCOW_Y?l_H(USDnW4=e4tz)vHargZ{uv=;g&^Hyy_mGS?Wvjf zez3waOhoBFYd)~9K%ZSSY3_{^df+_up+cV7zxmf2~~xi<}0ghNqjA zHWj)XmF1SX0I{|`x0lzJk>p`KKnZ&MBR^>B(xslqM=jd#J&pkQVe-UVg>J_&?z#KQ z|82z7^GgfdJv5%lhOsP_OV|FfKk)bhODWHmSY2xde1Z z=eba3_&<8XF9o#Ew4JB=zuN`rW+?Cu(3wEsnjo@`9Rqww!;T9Ct2>ssXJQ zeN|&iwqn)#dKCd&TvXIRJBOgTMAyEl>bi)cUxzFOxRt}xN#Jc(%&adF>gEkKS&P2! z{m*`;k@`s{OlD>P#Zl?HOowmn=6Vfp)&c}sU&6sg#k9L+1XbPQfKzvL;VLgc_}vQU zD%fxyH(iGYY*wyEw_1$OvDZkCk)YcEK!nFczL|)DDudmZn zUgYyV4*lzW((8%P9h-u+iV4$%t-S(BC_(>25W(wRE;%L~v-J?BsG=cbHp zpL?_a{@@e70J8!AZJK0K1|of&TukbzupK%xziPI_yK5Hf4}t+qF)#M^Mzu%fBF&_W zmae_s;qXnhjf!}wdXEMeZhHFT{Do;OCK09Q)w%$UNpk7h{f!^zr2G4fDT0#L0H*p; z`vlPYVox`hMiVW^%4)pf^l^;t7;J41vPL6g@YE%x=3Fg7d%Ly?k1AY^J}9NF7hfLP zg0UUD9%5)~y2LGmV4N0g2u(whhp<6}rwAkop?t@7WuO48}-uE8BmgMfDrPdk-OZ;a6bUy1bqBaiS2 zt~Y!-wN(0kJcdvZAc_HT4bL~L!S=ZLx zXSGkDXN#A+FE~lu;Wche&rry{Fb1H$^*xM2sjf&AnPaQUFnPLvCdxdx>N14TK`73|1yjR`w-t9C6 z9%a0lo-@SZG|5GT4>m{{-)!M6mw1~#LDWXp6cZDYO~-!`+;D~A0tdhBMM-+hrC~m5 zIIS_H|ExIX!hk?FZhgkI{h80@Mk3*K@A5>I_>=ZwMu0{5iFm_gq`bAXmgxc?17Zi8 zzkD-?f|k{ahB@9wG_#O>6ZR3}u%pqZbMiKaGmGK+#MznWUQailCG>m<6)$hWUhB4A zadvf##f$sVGm{xo0}L(&HN3qp9?43O31?;FbkkEasI!l~R@Ht9q`UI~HQz3kd~fGw zOj-7umX+_0J_ijxWW5KQlL*ZO}d z-*lNbrkcCl99bbrLB=(HEPa()-%Hj>;{ze%>Q%k`4oumm)b0bVkRCo^g_RKDfcWE; zGU`c7-e}NYt@;d%k^&j^1_KN5Xzd*l#A6fKG96${ZFU|$TPuIAJ(aN3K7SPUc;B(j) zMq>_rQ~BP=Z#bs=M)8F7SgUbishL*j3k|lZ^sEO%Z{O^lyKgSr8V~VLRwpu%M=;#f z?*3q;Xp<-UzaE{zr7wSc=j`MN{0ew!xTds2zhb%R6d%1NZg&GkhG;gnyPXhZ&2Z^* z8Fe*(x1Jx#$>%1ukbM?t-4o)=BE2aMc(tv~W4<<%z}i-GNfd>D3aO<5^RxM(dHHxr zDO8P5+D6G6VyNN%+uQ-MSP`dVWYJh8lK(q|SteY1oswL$##{_K5$`FMt`HtRTM>-4 zk+4$ZvY&xv9hW<{d?Y(1X~Q4|Dxlp53p0sUoG4f9=X=rehi{ zA{%hWbj#(kuLYN~=zd392rtj=Z`qqqtgeN`@2p0wq4l|MJffA^f8_vN&7XAs4r(($ zcWvZn)aS~Z04Z&;DW|-ehV{$zipiZ-iK*tU(S;McrmN^j>7@oyf#l(clny5~sBe@n6SU+kOG|&N>tX06KtrL7 zFp2h}oQz+=@=2hrq}?4Hj)%oW18BEwwul`y@zh%Nr4pF%?u6s!fN1BFsH7}qadGi) zRV*>I17+rOgewI_s|}-#;7h8%nrZGF!-cX{7HU35T1+?JHBaVyI1;rdRM7^ni(POtD*z_nbZAiS9%;eK3lQ^?t34JdijVe%g^#49z z9KdSDdNhUah0A*+@SL)mi^?6pFWqct?(I9KNDzX5nLQJGL-0wT?K__CwFqGQq$XEe zGqKyUWx9AXL@a^TyKDl1+gZ_p)Tg?gHJ%Pb{M2ZPqo(O_L(3*#FRU`8i=x-MaweMg zF()|0RidsS>yk&Df!q>*C%@ZT*%v8oya0vE2j5-JRy9&ouZz@V`x$7 zbk~NcSki4@pm~qjK{O?<5?4B!eD>9vJ>65-_3*PTnD!xC3d%*pNx^k2?e}{W&9lVK zSy57LA%SE`?ac%r6Dt5w!o^`dzmoTUJYaV_pWK+N=VKFQ7T=lcTzo0G_0zT}yHAS- z0H#-@e|c-q66$yn)OiG;hf$tO9BiG0U+PoWT4J~^mwnCSz8AY%R>ZE!U0t_t5~wij z5Clv-`slYESTe7p7%zq)R=(QT0~&mbKLf=(qIaf%XuV!Jd(sLMAZ!y7o`M&6XoU|Gxe{dZiOytNk4~%quTy*m6 z{7a?d54y^T4F@aqmC4s$Ll#zy9wP~2r1ib$;)NBS6=qhGd1l3-PAwPFuMWX0_x5!| zjo^z4sroZ@4>EXb=ezYNJx6bQZF}lnk>Rr{y<$kCa*h$4qeyXtjPX36vbM7WE1Z6c zaA0;gapwt2sn5PnY4p<*XgeuhaZgMc^Uzp#N*b_v8)*HxaNQ<2P%YhZDwx=N8upv` z{vD5mLC9}1LPujWb~x*iw(9JOs*wDsXkC2DQlJvO=sg8xtky?*!tEjJ$}&@PIIB_! z?Xn6FHX8H!EtZ%0IVrOtp&z#8&|64A7m5IYU&G|0_g_oR=f0*W^Hv*gQ>faf#IKO- zvoW04+ge&0pEuoW^I%Z%jPKYz4APi2X}5lcHg0P4Z(8cmx~jMa0X*#{-X9l~xo-~sGz&^8rFZ6~bx0q`Mf;h)8OC<)784=4 zmpjh^f^p@s{ys(u*Lspb@N)7ZCU<7q5ON(Og)2=z%SX9gzsL2(bs`B0PrR4FK~h zWCMZyfEO3@yno^eWQSO9De)a^G+d}1077Q;j_JhPuJ$*5rSC8JI2gN~s&>9@GPH6a zKmc+o^~2N?6I)33XkI?>d&S!QbiUsHpC$Z@=@qoFRe3kNwu_sjjJ{H}#jd0sxxXg( zBaVi4C7R4VGD`ArryEw`uX*FQDVoJyrhvdO36OW2LrNImU4e5fbHglIL$ZTV;H5s8 z?kkSl^y-TG5^@fP{tlP>=P>==8P0?3W(6%FU&#@B{c>`Ax3|yxfTM&orqp##x_$4o zC+2X>>yIeS z8u_dAz%rYCQ)DVh&yqC}3O7}y+$!W_kp5+%gz#P;AhZp}Io&2*dlY0W*lcXBw4?ZE z+!MvyNS|0H7beNwP7O&aE2~oH93FaNY~YrJPo$blayKDwfK=$;mF97GObJ!kb{WhfpuhF+<^AE;$a}KvwfXx=7 ze^2_by1!S;m<0BaRPX6`A1mFJqL+?tbuD^;y=PIkg;=*2Z=+HJz}*yrVD2&oHdl)q z3$2f)l?;5EFZC^T|56m+siNN`4)GD*5Xl6Z^kHquxk{)yJfimJX)}OTNE`r8$LIE5 zZ-d?^3Nt*2E&YG0`|^J%`|tm= zF%SmT%2uj7Gj9SN)}rZYO)B%DmI1y#60h~#lab`zY9%`(0=?ra``vdEtlr`*_U&}p z)&wa;0yG%-7%Tz~`jfv(eHBL#u{~K->#@>UbJfW1jqOP5h_=DLjH(&)h!%0c=zEm9 zi@j>P^9+OkAWX|_q?%w=8!T7P-o-wk(V_8L<0YXt#;;he8I(XBH=6hG`Cb0H)d$ti zwYXgjwt>C+cLy9ntqJxjkNTBe-+vHl1! zlAJPedQB2)CDnG-x!8XweoftQPrP^ejZAfVtHMQUZv4?rga~R=B0c4b-k6msS(A##Xi_UPVS=mK&SlD%itSly{ZTP zb^X!j^4>ltY9w4Y)6PhUanF*4z+FAkBxxxsEnhkX1K@kVM@S>;-Et_N(`iqayOs)N zG*6d9!qxc>FN4)2-jzqr6Pf@mDdSfkpwzwzy?C5{Z-u1iUg*|vcuc*i`Fm)@ek?5y z*II3D?aJ@D#~#U!55EEalLpAWsC`o#M!{kJ`e_<8Dre}l{TMAC;X&@TnfNjB;{xK- zmtfIf9@J!JbW|xfwh{LrvOlfsj^w2S}nQg$b|EuQH{0CaluoS|i_~?|^zWzW@AVaYG|eHx}JC}2lcgZ8Wmm$2W~(d=7iu z5hA9{zfhpN&`pDqeIrbll9K`>M@4h3EWuwN{Y@e|K`Ma(q5s-ggYPK10osmM4K4WP zzmbrwO`C`xr84@p)14NM3a3nK5^fcqfeSeWcf7h9`!c2g-;oWW@^^N!m9Gnt2e8jD zanW+nip6poEu{PUZ{r2d*r{Y5e^m`sNvmagl8*Qk+%$@fcy1r(Ey^m?_NqX^NNVHF zskzJ+4Jtbs9v52mTGRaG=EjkW3WdtH?C|vOk-Xx9o(T)BuR#W@G@vwN?$^@1OAHsu6;^a6A^VxEVE6F_;OFu zx~2XP<(3gzx~GJ6u}IkJdqOk)0ZfgI@95lPOUxQ9*g&YsxsYHq9kIIrv9|M zeXPOTr*0&KAMJwgC#4oBjN=&c7zi5}?pXzVHS#66sdlK=K>fh*9Bj(J4-r(Git;p% zXj9&MK>vb)w=Cwy3Ub9W&78s9#zv}Vv>htB(S}f8Tt4k0ttcM>I{SXW8eG1H;RrPlTV#8b;V1kZjntwwR;=t+f2Rv?NudYTfd8EC3I0*$@QZwgN=5*QDc-52OnK)9bHdte_ zWFI`)M&hhuS}QlCKHuQCh`>&tob!qN-Sc*IwxF%^UvaafT%6W)?7V7Ma%v(% zExR~jb|19Jrt8WBaJ=bLzL~Qn!VdJrJJKyvLi6KTO`Z z?2F?!9<=mfHEhTk+xjto@fwd||Mpa(Z%pPf821&O6@Auj4#sCuW3|D@=;K83h|Wts z174v(z`nAc|BBqomq))cQKT#)C!LDGp}m3jfz&xKrQuX3&j~NqB{=&KYVNL57vhz2 z?kWZS)mrs|P+(Ul0_rx@d}r3W8vzwaP4B(l60*mML?a{5QaFcw#RKPjejyP-9lp>f zTEBdO(K|afL=-~3w*AvR{D;y_)rj>@twF!FTvb}mFA*|2HZ-!G>*37h)8G86Oq z&wOGpF5eu#B;PVr-pp&AxA<`ep){V-=w#$^Qrw?3{*^`(9g-3-+BxX3c4;n#W{ZX1 zVs2CAfQ9~Xhy|?r^{73VzGsI5o zk`~~;hUh{c$v}sC>iO>250>n9-WO->m-TJ`%+#w_lv_|hM;zB3UAlY)5 zrFjjxV$;5;&F7}F(CTD_`_&Sp^+}ifhs^n+%n+^roOA`ToyJMS>qf4pU0M1B;NOf* zhvp!QRYvJ?OXO&v)T0(?yIkb?-S$_&MP18DOB<^`>xdtGE{$7Lb6V%Qbyc(6fm*C| zOKAkBrk`m^eI*u9g8!vkK6o4^9wS$nmyLpJ3-qlKB4lvwre1oTn2dA>DFEWxX6TX9 z)h>705|62PK)=gSCY{#GLVBVxzcPl1B)x{jHz=lhT&6em6^xK%Z4m6PeGxFiDzgF| z;z$|J&*Gwg@hoE19x6t$_*cOC;oLLa?c%ZjUS-dv7iLW7%DqYe@2JJT+iyeVtrJS zHBhnXZ~m5vOOoGvdc(14$Adr#Tz2#P)TTrcGs3D=Q_suyzib- zXBMJtWna(7W$< z_q<~lawED`fY0NakW0f^O4{d~q|m43D<~PO&ZXXXU@>l7`n$yGxXhWJ2h1-_)~MD2 z-5W!CrI%NbVw{y>&+AUpy1e;GfB&3$BQ;f0wx}vCDwsbOgk;#H2e|KQNwS|e$jC}A z3}1awWl-Z3%mUjTB0VaX#ecr}P0H<4Sm-@a!_ttqReA>h8;nO+3utP7((3Y~hYzto zE_W3xlARH|y2*8YW}xG-YMtb9vue1t?@a%uYY5bxeqP%1E?_+J;c~r~+5fbKDP2zh`|Br7@r1JBHt zteWzM2nZ87^lrdtAatNo``Y2N+@&;ewDAPbKtV%)x6~{CrX(#BO1Dnt=Yx5C8um8; zD+a831*cbXY%mGQY<5mGRo~m8yN!@6{}-^!uVEnTxTT zDc{!$PU2FZo!)?r&)1Kq0=~JwK)T38())9pGv5-J;OM3@-(Jkbn@bE+yWZ{-^%!&L zVscsyp|lqLG{!a6iK1b&IOy5X&9KSrQD-%Y^B}QiOWYsPtoPo+#T9c7=au}B`nlyw z=;<+bxrT#9mM!};j~coSO!$57hyO8Z@Y(r1Me?WIZVpiHlFw7=#~#B}ePegG;sCnk zX~+8Lbi?IhgQ;wm#MDG8eEiG7Enr}v$Ki&n{ffmle#Py?k!E-UZJMA_!_;#7CMO9- zmcylE%tmQ;o7r5VC4q8#d4cV691yx9n+0x7yXyWzu?`3DUX#kT(Q@xLpm9D1keZEA z%-ko;CVk)KZNe>t7^^N9y1T0mIIC_}*JW8#<10(A14CTvy{W}O0ZkS5*qj5$-vo~NQleRMzb^&r9{ z;mY*tSOHwTR6xp&9#zq5EC}LtDo(y_@-6P`vLf-}I+tI(ZkKgX9;NZNTXC$#A?-+L z#TF>r1OKJE`E1LTKn0y-N$Spn@~VtuwxI{PKrSv{Zi##w3`$J^FuH_+%4YHHjwzb% zR!WplmB002V3^yTf^AtF+_fBqMvQ?&%sF;3n(^*N3k%h{L`|-)AH~iHeVxp&Ye~BN zg`kh6-%6q2VPv9|+@gK|Yz^|MVllTU-CBD-`hM7$Bqa|yY{+zfu)c#qC8i@rf2}3^ zI+Y=dzVO{wdHLznF$&gzvwUS4&m32(Th`QJHK$cB;)gmwj#Edhjc`>z!-QpLC?BeOreZ+NIBB|s*KkRU*uV|QWm+NzFB&7!$-U{FR-KKl@Bjiv-)9m9z6m&w@N4HK z63-(yr({y1bRAM<>HhxP6$~hbiSYiTv8jI4eSWp@l_Pp?Km36<{qfg)T~Vp&-4veE{g$GGQ2Iz*JQOor>&k! zb*^L#p6yf}GA|+gs2Uy?qU?guaCC7Iu=KwVwV!o|qv~m-ruv~q5)a=V>g5Zj`s>cB z`%@dakIH>6kO+4zA;U#Xxwno?<$=WS9H=H6F%C@RRM38(PINhdNj8et2sg_1^$*P% z^w73gm#iVmQHmvwXND zze%EJ_O$QOM86z!e0gel6vV9l&1L?xRiFq*Oj+}8|D)`!Xl>)RcM&15%@Y52M^Ays z=|bcQDsX>8?^%$XPCX$n42O%l^y+_adjhX>zO7YNW^wYA_83^o|V(x z!fmCDE#B0*ON+;A!k`bt@lfn{q`z`mz|;*JlpRAs`+(=E1rz`Iu0JTr61WjH4gFEA zRo@R9_;lKmz9r=H#lJsv1XAz4Okasmh^GjBmV!_^Cj$E1*iBvaob>vh)`)o5(#f+~ z>pSTk0IZf_2|&`;G-t!RouYk++V|Y?xqCHB`TPsNQp0LK3Ge)D~yrlgntnvv#8kEUBOp3 zR39%yJ`^<@GeE^ZZ;^EuZJf<$UTJV}!UcJu?pD@q5*muB`;ZLPuYVp49aamx$=CT6 za3-L%pz!1cDPh3XB?Zyn&nu)(V$8jLejD}5D?xV1ebtF68Ie}-%TLsIY{-7Lj9~=Y zc1%50k&wYpM>(h12Cj;&5`Xurg0^A$-Y?F0!7vx!qVr`on!@xY?FUdnIrPD%s%Bna|Z*XI@IJ~s;(lMjwQN`ZhdGp^n(32M)pl}Wu?4-PG_$i;6 zc_ir7L7)m1?rnPcgST}_g$2htTlLmOBZGdeBS{k_tG%*!N?);b3K#p@A8JWz99quV zw_8_w+KLL(4vYHeYuRLdadrCdUWt|~h15hmFo1cXAyv{zSsYeicinWzz`)_%XmzJe zXpPp~Z7`BFONw>kp`F9S$jcMf_IHJ-@@;{TKZV1;x77Tp4=deSdEWkBJz}O0j^FNdR_mO{ZN{GD_Byue1VK7Om zXoB^pk(f*vw-6d|v|7%1U(HXcHmiDKV|nogg4SLmg4O2J(FhwR^MfFD4A7NRQ$B_| zviTe*V&e29OU)^|cK83eMg2=i{I)(PMwjH{S5gT>?exC#}qCQ2Zinw^>6TxKNPliA{8I5^5 zA64l{()Ix(G4)1>-Gm*^>K14*4T+q$XQbOYi6pxD4Q^nX?-x$Lg#KEx{QcwBJmSjT$zd18K~ zMVDBX4#A#n=3%J-gW`bx8~2+gbS$Tv0|Td;zdrshUh!-=jcZ)VnT}44zBY;J|1|!$ z`i$PZQ_bGZ{)zo-$8%xwNY!Uc!tVqUxpz$+#?kjnI$1gLfXBS5FqT5E>^QIE%&f(c zF@Y&ItyBBv4w>B^Hj0wxpEp3PQoh?|gxy|&(Ehjld<<%qr+-r?|5b#Ro-5I27^w8o zLdZP(SN0$5FS?v&UMP(@NKD-{KuL6u>d#x-4>|IoQYN0_V2@G@}JB-1|@ZeYPptEC=cy-*jkmR6h{>s z*E3a93CNQ&ZA^(AXNxq0>>7T^Zk)`Jr$(}&QR|tQ_f-6dUPpZj5>LF7Xy3v^X+lTv z*=@qej+2N#h3pku!l~ziA(>yN6u*x{v!Kx2Iib0APv~dW%fCOHW^H4-XbVAJFJxSdgd5UxwI*crYfV z&qx$>FOgf~$awgw&t0Q(!Fpq5x(z(R%3*%zd+E(PgnG8|5#e+)WrDDw1Hfy$vTjNH z&AOO{NWNMHRzqLd;BTn*cPwe?ef0t}?>^U~p1L06y|aqfBIs3_z&XPSp$Kl*{<{tC z7s5afdFgM~PlTcM5!FReRKVLaof1;JyjI>?0KUPcSRXC@bB=pY>7+k-*doM z8=avL|H$HK*ylR0Ma0+CYWUB?tvSV!&mmBIM}O7op09r23`|SeWe&XL>k2ZYm+L8} z1#!#uw@^~-{UNT}{KpD27%d*p&llV)mk<%`>ejVmJmgY_@fd%fzGdCV7n*gvFQhg+ z$uEEH_$qmIHChi%Fbgf|B1N;s_d}@X5 z1q!Stg~}F(^6zQp-o3gVvI;j;Lz6YsC~QRbGk)A4uzij@k+Y?jsn@4xWl0 zLj1F1xZYlq0tobFf*byCmo5R=kdZiEEppGvrxm;g!n5%s*4qPw5hXi4YPIXg_a}Fr zPpbFTl)h8pk{;`U(yJFLOXECu$4?6HM|Ni$d5sQ%*=>Q6&fJd5(iopf+bj}@7w8g- z?2XN~4!E%>U$Zk*$wHWejmn>IEZ*HeD{x=f^*>19w_l_s4J!6mmf#p<`nWXVBqh@8 z)L_Grld7xK7{@g#?2X)*)|u$am^v5qM!wlpSk{~30EUB|T1WD9B+NNGbJCsh3u?fb z1+(2Z?CBaR3jYXK zPn`3f%n5mu2iXxrSSFqTp_RRL&enlTG7(+Z#jc@?HWeKT;<`^tn~X2M=_2*zWy!v9 z{bzg-|My0a3f?rlw+rTQjJ5;duhm zx<|WQmO3+fB|AvloWPT3n|W zdt&^(oZst%@&{=Zx{VmDMMc4l>54Ua0|S~fo13$-&bgj%(d@zr2^9~b%UQ{da18Qs(`SaJP{aDoaS=>eCOpO0DyXPTEMv6Saq7P88#$?z-}_+?j`m-S1ZL=B+p ztwzY0E1!^!t?;Ij0k+stTdIOA2TX#DP32G7Hf*0Q#U(jsm>dfVhv)dlSZk)<0~}4? zSj#Bu(b~x>-bYL9{Wk`_pnk+kt^F;lsoOtnu8>a$=+%?6k*UL#4q~DwEsu$);y{V^ zsY_3(13ho`c0PN$4BYJES$JIjy@rB}=>u#*cM5d#xS$;tP_CC^j1{bN-`1h0CxSKL zl^bmwV?lVqK6SIT3ADSvZD0--xU-7-L$>?}ih(&vtijoE-t=`nY!SEg_DTE!NF0&i znW;0?)o)ngjFuop^4T^{s0uP2!2AcRIGy$^F@%@DbLqNcmH?^q(-T}DIL>YRJ|x^5 z8)+SP?!1XhCELVnmAzX}w(bRkKJVI&xak%UNwxiqp{;sbc7Gi>y z*g@Kx-{G!0wFcyX4|JSuC|C@wPaSZqv`!dO;-J-~{9cze+6|chrl$j~ms%eO?*@#5 zgrDhFeIYH^xlP`Y_8V?LH4}8XGlA{!K3$^siZN>7e(-O74w6RP0EyM>8sa+ZoYfQ8 zGp(+abUrb`LMmc3s$gDA_hYb>Ov^BT2l})6BZiXx;t$E5twMZ3IUX>Oj?p4VNY~g~ z<4;TNbXVS>SkBj-Ot7gZ*;O`{Sv|Lu&quY&M&hAyjrsT+A7dLY`l~2I-NS7FJfe_YebM^ ztqH}nvI1}#iB^DejMOgXiF%VEHq{>X6Q)E_9}bUQQ63*EO7S+A+0_ z6=3Mnv|01qpS)Aix>o8tio5e_ZMvqNjs(6V+kn$LiwAq1=*M>MSjo47clnG@$&X9N zy6uc9H~wtJ{add~S*i1vm2G8aoin9&j|!+F8$5H&58(FZg%hX!psYyG%vH4joeEK^ z$)96YQWe-=*%V}CqN*aZ-OUx$uOYs#oHxEA9(4!)}j?_54Uq&Xp~;g)^YEKP<$POODKigc9W!Qth! zdonwjqgqmgAgCOW0XeT$uXYwAdKgLg!c1>_yk|VuL~qT=LPx3evP}7U$om#mWAOBW z!XWQ4MOMI4T)q*D*$!$`*vsFBc1sPhAD`;oru+3`>Jjyj1gyRkcS0CHU!j-uZl^kZ1 z>TiGm0RftPbt-<;$*U;KLTCX<{jr2vgbA+4$4dOj2&RyD5r8oS#b23l=P8UUd6K0W zSu&%L=zHAd*E?QCcQrFd)1+HjQDPm|;LO(P9VY^BA|x`zsZrq~#0&<8AB~vpBLt&G zeRVebg25;0}!E@~$9ahBJI~|K%;-X)Fn67_Z#;RP#0CAZ?F=uMN z=bJF|I+gk(UFFB;uOB;?z0hPNPke)a&+0%Bg6~>pLkZsr<#Jw`6$4JC^F=Fnc$8Ew zQ~tg?dKY74EikJxTFFm0;q9z0VqLK__GFp&ej?6*g-N{v?S9cM3lVt{B7;(q&645v z2Pm7xEk+L9^+hMY-i$b7bc1JR&f{IkKLr2Pc>!@LWylcO3gq|=RH|8w+NwjO zM0dyHcdPuc4H36z9Tsk++p7)l@x}gbOBPc&`c~*5mSl zD(mH@r{#igZokLfEZNOQRB8U+i5Ye%{Ns&( z1^v8YR`Jr$2`5la#LnGV^Tn+XSc&6-6tE<9QRfCmG1XUx>_&-Sq*9`@x=93EGB==0 z-7*V9jg8E&iqW%fv}2oTsXLoz$ot%PF{@w>yt1$QvOh%?VYDA9#jTK>Py2fzl=8!3 z3*;>W=1I0l{|b5V8ZW>Yee}J8cGR@tX?Z@qV4vH9fgoZ{F~{{I(4e>`M#*AFjS)~Z zQQ5m)6u)XYZf188lU)xo#TN);0E&(71p+4T*$lB7606z%jBHhq^$9}<`BdHU8=@hB zSr)rV8g((N6|rMgzGAgDnd>#{kctvQ<-osi9CSdqrZVe$I`hajg*(=@mU=nl-`{9q zT7gk2&gp7$0+gp3!#9W~F?jvWG2L^Q*|5PxYDY6`70aI)wFB;}GZudBdekz-rAyZ=R281+^Aem?dx1q(yNwPI(MbmzR|PsOEr;>F zO={poNwe*IR8evgb`p_bS{7?ke^oqD!0Od*Qw9`k*40X-S)^hQ35@v|ldXKeDK3i_ z<*a_J|InXt&g;VJg_nsIR~`%Jy%EPO>2#Iq({HiG!sv_EGBp}-dX3p*zg>-<4&UTE zF_Q^&M>Q-vCRjhh3GO6fp4HIh(>oIHH|eA=Qd!^!;NQyE%X|z_I4Gp_>a}HiV-66( z^)xHl8jYJ={F1*hr#uX4bj~KZtljrsVTYhz)_qFuqxoo&9YW4cSXGGwV8@HhhDb@o zPb*dNv#ZN@_^U>MwKmm4MZ<#%3@jnZ$}G!S%n?^?i?H*rdyWDBVXc_xqVE~(Oq zeMH}B`0q$5N!0Gnwcl6y(qKQ_|2?`612p7%>zsk-FhVlKBeS<}9l!NAr1R^=IcEjf z1iU4*f!a)x>bp1mLjU(#wDFPa?fIL83|y_Luz+O=meZfB{)uk*B2||1`bx*kT4qZu zxN4MhcNN;$rOwHOWG~R^J(>RG9IfLBCrfH=)|ppkg(SF_X=?GZp zd$+HbqeORe0w-Ga96`i`Wxtf_^BrQ90sr<^ywnU_CQ;HcTy^W21lWC6>K6exUZr2= z(1PUbKe34I4Y((<(NW1C07N)s)o~Nk3*tC7ptNV|O@-aQtNLmP0-m{uTOwLKZ*s>j zmlqonV)!Z)(qKPQlU=h;}Gw{1Vl$GTc3Zoa#998Q(pziZEy zYQOeCL*Puovyx`A%KM~89Wbd#`eHq^rxT?#o5XjbV77zYAFZ;pTqi)E65a0?10vXy z1V^)21;6o8@Bq0XR-Y6Rpjhjxb71B*s%y~|6TpnvPkn7!v{X@)+O$ictepJgE=R9t z5^4UvUVyDC52{+jEscI^xR4=4w5(o<>#e?5(L1UPSyG1-R?i&7C@1%HA8p6!%0x#A zVCOqL#b{@$s!saU>y6P;8TkVDGxX{Cmq(52n#x7&_JLhmcuBshgNyJXjoMy4<7dSC zeg2IO22S1sLgokjfO@-YYDSovP;#tlbfPY8P=^b5GU-lO19 zvzU@f`h!Xa=WXc#Tjoy}keA!Nd)obxC+t1#&bWOHN=bu*HZ?cOxU$AEOY;*ac79^j zlsz8?tLkNRe!uYnTem9n0W7QB+@lU$6GB#qT|mqPMi@!*iep>{cwEjk7Oq5aSz;{Z zx-x}-(dD6~a2k>GqLnIV#9kZ|S*wm!I&{b7K4L5YL6?@K>u|Mtkt%1$T^$?SpA}|( zO5xAUF1i&i631H2fzGbAf>XtQhMrl^X|+$b^f1RAj@Z=o5dsdacg}J#IIdKat;ew_ z8hzxqwPkssZeoH4JdqeBAiL?Zou9Z*))O{w%>KuJTn{o?0`;}l(d@jA-Bic|`@iSi zn2s+m|Laq3k!G(GJky2qv?3O#BQZ1Sjg11SAx*wJ>ER~vR(fy8iVLxaEV z&fOR2>J~?~Qqx+^M49-5D!6iekMd7li>WfgLp|;)m{C3xnzxq}3lO9ETs-7mIiJI3 z_g-+L?6WSRs_9(6nW@$L?R}B+7Jxs|U~p-a=NSN;F&0%s)M2 zFq&UB8lSX*WK_>o_l9>;jpuxK9G18s{*=utl>Iq4%pM2 zL~(V8mvLa%_>9I7sFGc~>g*7jjh82mDe8yXJe0dXf*zxso>=xxmV6Na|k?EPQisR4y zGPLGZN6YjkZ`)J&Mn$!YPXe6WR_21>_7$x7-QP9U8d=sqnvj-8I$IAIEE`EOvii7X z?R(ssolb|JcI|}2lKxeFGG-y^Qtj*Bc`BN96lq;Ap>n&38GZFTHP7C}=diJ= zBJj_}O_JFC`Xa%L6!n6ytkv9{19LMCTGcuNFZl*G(``@!91dUOMglv%rcGDVM4Qz87z;c2(Dp8Iz|$zOX`R>jZ$iv(Z*28o0vd+W+<`7WY8`_jh2 z`FV4V@59VcJC1PSgVskG7c?)TWh``V@)iCid?xEy;mDArwPq%tU#!ROsaU2=;}g_z=s@{S7nUiy~^KdOpgg Date: Sun, 19 Jul 2020 21:56:31 +0000 Subject: [PATCH 16/18] Sync capa rules submodule --- README.md | 2 +- rules | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 91566f51..62969e31 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ ![capa](.github/logo.png) [![Code style checkers status](https://github.com/fireeye/capa/workflows/CI/badge.svg)](https://github.com/fireeye/capa/actions?query=workflow%3A%22CI%22) -[![Number of rules](https://img.shields.io/badge/rules-261-blue.svg)](https://github.com/fireeye/capa-rules) +[![Number of rules](https://img.shields.io/badge/rules-262-blue.svg)](https://github.com/fireeye/capa-rules) [![License](https://img.shields.io/badge/license-Apache--2.0-green.svg)](LICENSE.txt) capa detects capabilities in executable files. diff --git a/rules b/rules index 8fd670b1..d497b447 160000 --- a/rules +++ b/rules @@ -1 +1 @@ -Subproject commit 8fd670b16a6ada5d6db6053ea1486391d99c0938 +Subproject commit d497b4472cbfa5edd5dc102f9949caa0522d46f3 From 9b873aeba75945464769f3c01a5c7168605aee04 Mon Sep 17 00:00:00 2001 From: Moritz Date: Wed, 22 Jul 2020 09:18:33 +0200 Subject: [PATCH 17/18] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 62969e31..ad334d5b 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ $ capa.exe suspicious.exe # download and usage -Download stable releases of the standalone capa binaries [here](https://github.com/fireeye/capa/releases). You can run the standalone binaries without installation. +Download stable releases of the standalone capa binaries [here](https://github.com/fireeye/capa/releases). You can run the standalone binaries without installation. capa is a command line tool that should be run from the terminal.