From 421d1b883762dc7f1f56bc210d1596693265ff7d Mon Sep 17 00:00:00 2001 From: jiangjiawei1103 Date: Sat, 14 Dec 2024 19:18:13 +0800 Subject: [PATCH 01/31] Add slurm plugin blank components Signed-off-by: jiangjiawei1103 --- plugins/flytekit-slurm/README.md | 1 + plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py | 0 plugins/flytekit-slurm/flytekitplugins/slurm/agent.py | 0 plugins/flytekit-slurm/flytekitplugins/slurm/task.py | 0 plugins/flytekit-slurm/setup.py | 0 plugins/flytekit-slurm/tests/__init__.py | 0 plugins/flytekit-slurm/tests/test_slurm.py | 0 7 files changed, 1 insertion(+) create mode 100644 plugins/flytekit-slurm/README.md create mode 100644 plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py create mode 100644 plugins/flytekit-slurm/flytekitplugins/slurm/agent.py create mode 100644 plugins/flytekit-slurm/flytekitplugins/slurm/task.py create mode 100644 plugins/flytekit-slurm/setup.py create mode 100644 plugins/flytekit-slurm/tests/__init__.py create mode 100644 plugins/flytekit-slurm/tests/test_slurm.py diff --git a/plugins/flytekit-slurm/README.md b/plugins/flytekit-slurm/README.md new file mode 100644 index 0000000000..2817a95095 --- /dev/null +++ b/plugins/flytekit-slurm/README.md @@ -0,0 +1 @@ +# Flytekit Slurm Plugin diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/plugins/flytekit-slurm/setup.py b/plugins/flytekit-slurm/setup.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/plugins/flytekit-slurm/tests/__init__.py b/plugins/flytekit-slurm/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/plugins/flytekit-slurm/tests/test_slurm.py b/plugins/flytekit-slurm/tests/test_slurm.py new file mode 100644 index 0000000000..e69de29bb2 From 1d1f80606be406c730043bc2bfd002a6e818518e Mon Sep 17 00:00:00 2001 From: jiangjiawei1103 Date: Mon, 16 Dec 2024 22:52:44 +0800 Subject: [PATCH 02/31] feat: Add naive slurm agent create and get with rest api Signed-off-by: jiangjiawei1103 --- .../flytekitplugins/slurm/__init__.py | 2 + .../flytekitplugins/slurm/agent.py | 124 ++++++++++++++++++ .../flytekitplugins/slurm/task.py | 52 ++++++++ plugins/flytekit-slurm/setup.py | 36 +++++ 4 files changed, 214 insertions(+) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py index e69de29bb2..9de6a13794 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py @@ -0,0 +1,2 @@ +from .agent import SlurmAgent +from .task import SlurmTask diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index e69de29bb2..1a492c6537 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -0,0 +1,124 @@ +""" +Slurm agent. +""" + +import subprocess +from dataclasses import dataclass +from typing import Optional + +from openapi_client import ApiClient as Client +from openapi_client import Configuration as Config +from openapi_client.api.slurm_api import SlurmApi +from openapi_client.models.slurm_v0041_post_job_submit_request import SlurmV0041PostJobSubmitRequest +from openapi_client.models.slurm_v0041_post_job_submit_request_job import SlurmV0041PostJobSubmitRequestJob + +from flytekit import lazy_module +from flytekit.extend.backend.base_agent import AgentRegistry, AsyncAgentBase, Resource, ResourceMeta +from flytekit.extend.backend.utils import convert_to_flyte_phase +from flytekit.models.literals import LiteralMap +from flytekit.models.task import TaskTemplate + +aiohttp = lazy_module("aiohttp") + + +def _gen_jwt_auth_token() -> str: + """Generate an auth token for JWT authentication. + + Returns: + auth_token: An auth token for JWT authentication. + """ + CMD = ["scontrol", "token", "lifespan=9999"] + auth_token = ( + subprocess.run(CMD, check=True, capture_output=True, text=True).stdout.strip().replace("SLURM_JWT=", "") + ) + + return auth_token + + +# Setup slurm API +api_cfg = Config( + # Run slurmrestd locally now + host="http://localhost:6820/", + access_token=_gen_jwt_auth_token(), +) +slurm = SlurmApi(Client(api_cfg)) + + +@dataclass +class SlurmJobMetadata(ResourceMeta): + job_id: str + + +class SlurmAgent(AsyncAgentBase): + """Slurm agent.""" + + name = "Slurm Agent" + + def __init__(self): + super(SlurmAgent, self).__init__(task_type_name="slurm", metadata_type=SlurmJobMetadata) + + def create( + self, + task_template: TaskTemplate, + inputs: Optional[LiteralMap] = None, + **kwargs, + ) -> SlurmJobMetadata: + """ + Return a resource meta that can be used to get the status of the task. + """ + slurm_config = task_template.custom["slurm_config"] + + # Define a simple slurm job + job = SlurmV0041PostJobSubmitRequest( + script=slurm_config["script"], # Should use a better method + job=SlurmV0041PostJobSubmitRequestJob( + account=slurm_config["account"], # flyte + partition=slurm_config["partition"], # debug + name=slurm_config["name"], # hello-slurm-agent + environment=slurm_config["environment"], # ["PATH=/bin/:/sbin/:/usr/bin/:/usr/sbin/"] + current_working_directory=slurm_config["current_working_directory"], # /tmp + ), + ) + + response = slurm.slurm_v0041_post_job_submit(job) + # async with aiohttp.ClientSession() as session: + # async with slurm.slurm_v0041_post_job_submit(job) as resp: + # response = await resp + # assert len(response.errors) == 0 and len(response.warnings) == 0, ( + # "There exist errors or warnings." + # ) + + return SlurmJobMetadata(job_id=str(response.job_id)) + + def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: + """ + Return the status of the task, and return the outputs in some cases. For example, bigquery job + can't write the structured dataset to the output location, so it returns the output literals to the propeller, + and the propeller will write the structured dataset to the blob store. + """ + # async with aiohttp.ClientSession() as session: + # async with slurm.slurm_v0041_get_job(job_id=resource_meta.job_id) as resp: + # response = await resp + response = slurm.slurm_v0041_get_job(job_id=resource_meta.job_id) + + job = response.jobs[-1] + outputs = { + "o0": { + "partition": job.partition, + "account": job.account, + "name": job.name, + "post_job_id": str(resource_meta.job_id), + "get_job_id": job.job_id, + } + } + + return Resource(phase=convert_to_flyte_phase("done"), outputs=outputs) + + async def delete(self, resource_meta: SlurmJobMetadata, **kwargs): + """ + Delete the task. This call should be idempotent. It should raise an error if fails to delete the task. + """ + pass + + +AgentRegistry.register(SlurmAgent()) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index e69de29bb2..32f94dcaf1 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -0,0 +1,52 @@ +""" +Slurm task. +""" + +from typing import Any, Dict + +from flytekit.configuration import SerializationSettings +from flytekit.core.base_task import PythonTask +from flytekit.core.interface import Interface +from flytekit.extend.backend.base_agent import AsyncAgentExecutorMixin + +# @dataclass +# class Slurm(object): +# """Refer to SparkJob. I'll get it soon.""" + +# slurm_conf: Optional[Dict[str, str]] = None + +# def __post_init__(self): +# if self.slurm_conf is None: +# self.slurm_conf= {} + + +class SlurmTask(AsyncAgentExecutorMixin, PythonTask): + """Slurm task.""" + + _TASK_TYPE = "slurm" + + def __init__(self, name: str, slurm_config: Dict[str, Any], **kwargs) -> None: + """Initialize a slurm task. + + Args: + name: Unique name of the task. + slurm_config: Slurm job configuration. + """ + task_config = {"slurm_config": slurm_config} + + # Define inputs/outputs interface? + inputs = {"dummy": str} + outputs = {"o0": float} + + super().__init__( + task_type=self._TASK_TYPE, + name=name, + task_config=task_config, + interface=Interface(inputs=inputs, outputs=outputs), + **kwargs, + ) + + def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: + return { + "slurm_config": self.task_config["slurm_config"], + } diff --git a/plugins/flytekit-slurm/setup.py b/plugins/flytekit-slurm/setup.py index e69de29bb2..287e7c4fd1 100644 --- a/plugins/flytekit-slurm/setup.py +++ b/plugins/flytekit-slurm/setup.py @@ -0,0 +1,36 @@ +from setuptools import setup + +PLUGIN_NAME = "slurm" + +microlib_name = f"flytekitplugins-{PLUGIN_NAME}" + +plugin_requires = ["flytekit>1.13.8", "aiohttp", "flyteidl>=1.11.0b1"] + +__version__ = "0.0.0+develop" + +setup( + name=microlib_name, + version=__version__, + author="flyteorg", + author_email="admin@flyte.org", + description="Tiny slurm plugin for flytekit", + namespace_packages=["flytekitplugins"], + packages=[f"flytekitplugins.{PLUGIN_NAME}"], + install_requires=plugin_requires, + license="apache2", + python_requires=">=3.9", + classifiers=[ + "Intended Audience :: Science/Research", + "Intended Audience :: Developers", + "License :: OSI Approved :: Apache Software License", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Topic :: Scientific/Engineering", + "Topic :: Scientific/Engineering :: Artificial Intelligence", + "Topic :: Software Development", + "Topic :: Software Development :: Libraries", + "Topic :: Software Development :: Libraries :: Python Modules", + ], + entry_points={"flytekit.plugins": [f"{PLUGIN_NAME}=flytekitplugins.{PLUGIN_NAME}"]}, +) From 5d97126cf705ec311f592de094c7834716ddaaa1 Mon Sep 17 00:00:00 2001 From: jiangjiawei1103 Date: Wed, 18 Dec 2024 01:14:34 +0800 Subject: [PATCH 03/31] Use asyncssh instead of REST API Signed-off-by: jiangjiawei1103 --- .../flytekitplugins/slurm/agent.py | 110 +++++++----------- 1 file changed, 40 insertions(+), 70 deletions(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index 1a492c6537..bdc810b29c 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -2,46 +2,19 @@ Slurm agent. """ -import subprocess +import os from dataclasses import dataclass from typing import Optional -from openapi_client import ApiClient as Client -from openapi_client import Configuration as Config -from openapi_client.api.slurm_api import SlurmApi -from openapi_client.models.slurm_v0041_post_job_submit_request import SlurmV0041PostJobSubmitRequest -from openapi_client.models.slurm_v0041_post_job_submit_request_job import SlurmV0041PostJobSubmitRequestJob +import asyncssh -from flytekit import lazy_module from flytekit.extend.backend.base_agent import AgentRegistry, AsyncAgentBase, Resource, ResourceMeta from flytekit.extend.backend.utils import convert_to_flyte_phase from flytekit.models.literals import LiteralMap from flytekit.models.task import TaskTemplate -aiohttp = lazy_module("aiohttp") - - -def _gen_jwt_auth_token() -> str: - """Generate an auth token for JWT authentication. - - Returns: - auth_token: An auth token for JWT authentication. - """ - CMD = ["scontrol", "token", "lifespan=9999"] - auth_token = ( - subprocess.run(CMD, check=True, capture_output=True, text=True).stdout.strip().replace("SLURM_JWT=", "") - ) - - return auth_token - - -# Setup slurm API -api_cfg = Config( - # Run slurmrestd locally now - host="http://localhost:6820/", - access_token=_gen_jwt_auth_token(), -) -slurm = SlurmApi(Client(api_cfg)) +HOST = "localhost" +PORT = 2200 @dataclass @@ -57,7 +30,7 @@ class SlurmAgent(AsyncAgentBase): def __init__(self): super(SlurmAgent, self).__init__(task_type_name="slurm", metadata_type=SlurmJobMetadata) - def create( + async def create( self, task_template: TaskTemplate, inputs: Optional[LiteralMap] = None, @@ -68,49 +41,46 @@ def create( """ slurm_config = task_template.custom["slurm_config"] - # Define a simple slurm job - job = SlurmV0041PostJobSubmitRequest( - script=slurm_config["script"], # Should use a better method - job=SlurmV0041PostJobSubmitRequestJob( - account=slurm_config["account"], # flyte - partition=slurm_config["partition"], # debug - name=slurm_config["name"], # hello-slurm-agent - environment=slurm_config["environment"], # ["PATH=/bin/:/sbin/:/usr/bin/:/usr/sbin/"] - current_working_directory=slurm_config["current_working_directory"], # /tmp - ), - ) - - response = slurm.slurm_v0041_post_job_submit(job) - # async with aiohttp.ClientSession() as session: - # async with slurm.slurm_v0041_post_job_submit(job) as resp: - # response = await resp - # assert len(response.errors) == 0 and len(response.warnings) == 0, ( - # "There exist errors or warnings." - # ) - - return SlurmJobMetadata(job_id=str(response.job_id)) - - def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: + # Construct the sbatch command + cmd = ["sbatch"] + for k, v in slurm_config.items(): + if k in ["local_path", "remote_path", "environment"]: + continue + + cmd.extend([f"--{k}", v]) + cmd = " ".join(cmd) + cmd += f" {slurm_config['remote_path']}" + + async with asyncssh.connect(host=HOST, port=PORT, password=os.environ["PASSWORD"], known_hosts=None) as conn: + async with conn.start_sftp_client() as sftp: + await sftp.put(slurm_config["local_path"], slurm_config["remote_path"]) + + # env is optional so far + res = await conn.run(cmd, check=True, env=slurm_config["environment"]) + + job_id = res.stdout.split()[-1] + + return SlurmJobMetadata(job_id=job_id) + + async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: """ Return the status of the task, and return the outputs in some cases. For example, bigquery job can't write the structured dataset to the output location, so it returns the output literals to the propeller, and the propeller will write the structured dataset to the blob store. """ - # async with aiohttp.ClientSession() as session: - # async with slurm.slurm_v0041_get_job(job_id=resource_meta.job_id) as resp: - # response = await resp - response = slurm.slurm_v0041_get_job(job_id=resource_meta.job_id) - - job = response.jobs[-1] - outputs = { - "o0": { - "partition": job.partition, - "account": job.account, - "name": job.name, - "post_job_id": str(resource_meta.job_id), - "get_job_id": job.job_id, - } - } + async with asyncssh.connect(host=HOST, port=PORT, password=os.environ["PASSWORD"], known_hosts=None) as conn: + res = await conn.run(f"scontrol show job {resource_meta.job_id}", check=True) + + output_map = {} + for o in res.stdout.split(" "): + if len(o) == 0: + continue + + o = o.split("=") + if len(o) == 2: + output_map[o[0].strip()] = o[1].strip() + assert output_map["JobState"] == "COMPLETED" + outputs = {"o0": output_map} return Resource(phase=convert_to_flyte_phase("done"), outputs=outputs) From 2e7f0f2e07c74c9d157dc5f60d5fe4a2c1e290f0 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Thu, 19 Dec 2024 00:17:13 +0800 Subject: [PATCH 04/31] Test ssh communication and run sbatch Signed-off-by: JiaWei Jiang --- .../flytekitplugins/slurm/__init__.py | 2 +- .../flytekitplugins/slurm/agent.py | 56 ++++++++++--------- .../flytekitplugins/slurm/task.py | 47 +++++++++++----- 3 files changed, 63 insertions(+), 42 deletions(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py index 9de6a13794..4ceca6e5f0 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py @@ -1,2 +1,2 @@ from .agent import SlurmAgent -from .task import SlurmTask +from .task import Slurm, SlurmTask diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index bdc810b29c..2ace573f07 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -13,8 +13,12 @@ from flytekit.models.literals import LiteralMap from flytekit.models.task import TaskTemplate -HOST = "localhost" -PORT = 2200 + +class SSHCfg: + host = os.environ["SSH_HOST"] + port = int(os.environ["SSH_PORT"]) + username = os.environ["SSH_USERNAME"] + password = os.environ["SSH_PASSWORD"] @dataclass @@ -36,39 +40,37 @@ async def create( inputs: Optional[LiteralMap] = None, **kwargs, ) -> SlurmJobMetadata: - """ - Return a resource meta that can be used to get the status of the task. - """ - slurm_config = task_template.custom["slurm_config"] - - # Construct the sbatch command - cmd = ["sbatch"] - for k, v in slurm_config.items(): - if k in ["local_path", "remote_path", "environment"]: - continue - - cmd.extend([f"--{k}", v]) - cmd = " ".join(cmd) - cmd += f" {slurm_config['remote_path']}" - - async with asyncssh.connect(host=HOST, port=PORT, password=os.environ["PASSWORD"], known_hosts=None) as conn: + """Submit a batch script to a remote Slurm cluster with `sbatch`""" + slurm_conf = task_template.custom["slurm_conf"] + assert len(slurm_conf) == 0, "Please leave slurm_conf untouched now." + + batch_script = task_template.custom["batch_script"] + with open("/tmp/test.slurm", "w") as f: + f.write(batch_script) + + local_path = task_template.custom["local_path"] + remote_path = task_template.custom["remote_path"] + # Maybe needs to add environ for python and slurm in task.py Slurm and get_custom + + print("Connecting...") + async with asyncssh.connect( + host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password, known_hosts=None + ) as conn: async with conn.start_sftp_client() as sftp: - await sftp.put(slurm_config["local_path"], slurm_config["remote_path"]) + await sftp.put(local_path, remote_path) + await sftp.put("/tmp/test.slurm", "/tmp/test.slurm") - # env is optional so far - res = await conn.run(cmd, check=True, env=slurm_config["environment"]) + res = await conn.run("sbatch /tmp/test.slurm", check=True) job_id = res.stdout.split()[-1] return SlurmJobMetadata(job_id=job_id) async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: - """ - Return the status of the task, and return the outputs in some cases. For example, bigquery job - can't write the structured dataset to the output location, so it returns the output literals to the propeller, - and the propeller will write the structured dataset to the blob store. - """ - async with asyncssh.connect(host=HOST, port=PORT, password=os.environ["PASSWORD"], known_hosts=None) as conn: + """Check the Slurm job status and return the specified outputs.""" + async with asyncssh.connect( + host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password, known_hosts=None + ) as conn: res = await conn.run(f"scontrol show job {resource_meta.job_id}", check=True) output_map = {} diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index 32f94dcaf1..603583f5eb 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -2,22 +2,33 @@ Slurm task. """ -from typing import Any, Dict +from dataclasses import dataclass +from typing import Any, Dict, Optional from flytekit.configuration import SerializationSettings from flytekit.core.base_task import PythonTask from flytekit.core.interface import Interface from flytekit.extend.backend.base_agent import AsyncAgentExecutorMixin -# @dataclass -# class Slurm(object): -# """Refer to SparkJob. I'll get it soon.""" -# slurm_conf: Optional[Dict[str, str]] = None +@dataclass +class Slurm(object): + """Configure slurm command args. -# def __post_init__(self): -# if self.slurm_conf is None: -# self.slurm_conf= {} + This configuration mainly focuses on `srun` or `sbatch`. Please refer to + https://slurm.schedmd.com/srun.html and https://slurm.schedmd.com/sbatch.html. + + Note that batch_script can be written at will, so slurm_conf is left untouched now. + """ + + slurm_conf: Optional[Dict[str, str]] = None + batch_script: Optional[str] = None + local_path: Optional[str] = None + remote_path: Optional[str] = None + + def __post_init__(self): + if self.slurm_conf is None: + self.slurm_conf = {} class SlurmTask(AsyncAgentExecutorMixin, PythonTask): @@ -25,21 +36,26 @@ class SlurmTask(AsyncAgentExecutorMixin, PythonTask): _TASK_TYPE = "slurm" - def __init__(self, name: str, slurm_config: Dict[str, Any], **kwargs) -> None: + def __init__(self, name: str, task_config: Slurm, **kwargs) -> None: """Initialize a slurm task. Args: name: Unique name of the task. slurm_config: Slurm job configuration. """ - task_config = {"slurm_config": slurm_config} + # Set the batch script to submit to Slurm + self._batch_script = task_config.batch_script + + # Set an example nested script (e.g., .py) to execute with the batch script + # We use SFTP to put the local script to remote + self._local_path = task_config.local_path + self._remote_path = task_config.remote_path - # Define inputs/outputs interface? inputs = {"dummy": str} - outputs = {"o0": float} + outputs = {"o0": Dict[str, Any]} super().__init__( - task_type=self._TASK_TYPE, + self._TASK_TYPE, name=name, task_config=task_config, interface=Interface(inputs=inputs, outputs=outputs), @@ -48,5 +64,8 @@ def __init__(self, name: str, slurm_config: Dict[str, Any], **kwargs) -> None: def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: return { - "slurm_config": self.task_config["slurm_config"], + "slurm_conf": self.task_config.slurm_conf, + "batch_script": self._batch_script, + "local_path": self._local_path, + "remote_path": self._remote_path, } From 9644b994a2fbae5c2e100afc1859817d0ab988c4 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Thu, 19 Dec 2024 22:55:15 +0800 Subject: [PATCH 05/31] Add delete method and support slurm job state Signed-off-by: JiaWei Jiang --- flytekit/extend/backend/utils.py | 4 ++-- .../flytekit-slurm/flytekitplugins/slurm/agent.py | 14 +++++++++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/flytekit/extend/backend/utils.py b/flytekit/extend/backend/utils.py index 4dcdf3174a..8aa7952134 100644 --- a/flytekit/extend/backend/utils.py +++ b/flytekit/extend/backend/utils.py @@ -20,9 +20,9 @@ def convert_to_flyte_phase(state: str) -> TaskExecution.Phase: Convert the state from the agent to the phase in flyte. """ state = state.lower() - if state in ["failed", "timeout", "timedout", "canceled", "skipped", "internal_error"]: + if state in ["failed", "timeout", "timedout", "canceled", "cancelled", "skipped", "internal_error"]: return TaskExecution.FAILED - elif state in ["done", "succeeded", "success"]: + elif state in ["done", "succeeded", "success", "completed"]: return TaskExecution.SUCCEEDED elif state in ["running", "terminating"]: return TaskExecution.RUNNING diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index 2ace573f07..5baafedae9 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -52,7 +52,6 @@ async def create( remote_path = task_template.custom["remote_path"] # Maybe needs to add environ for python and slurm in task.py Slurm and get_custom - print("Connecting...") async with asyncssh.connect( host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password, known_hosts=None ) as conn: @@ -81,16 +80,21 @@ async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: o = o.split("=") if len(o) == 2: output_map[o[0].strip()] = o[1].strip() - assert output_map["JobState"] == "COMPLETED" + + job_state = output_map["JobState"].lower() outputs = {"o0": output_map} - return Resource(phase=convert_to_flyte_phase("done"), outputs=outputs) + return Resource(phase=convert_to_flyte_phase(job_state), outputs=outputs) async def delete(self, resource_meta: SlurmJobMetadata, **kwargs): - """ + """Cancel the Slurm job. + Delete the task. This call should be idempotent. It should raise an error if fails to delete the task. """ - pass + async with asyncssh.connect( + host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password, known_hosts=None + ) as conn: + _ = await conn.run(f"scancel {resource_meta.job_id}", check=True) AgentRegistry.register(SlurmAgent()) From e41b1818c3aaf07db1564d24c3ff5df4224ca453 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Fri, 27 Dec 2024 15:29:32 +0800 Subject: [PATCH 06/31] feat: Submit and run SlurmTask on a remote Slurm cluster Successfully submit and run the user-defined task as a normal python function on a remote Slurm cluster. 1. Inherit from PythonFunctionTask instead of PythonTask 2. Transfer the task module through sftp 3. Interact with amazon s3 bucket on both localhost and Slurm cluster Signed-off-by: JiaWei Jiang --- flytekit/extend/backend/base_agent.py | 5 +- .../flytekitplugins/slurm/agent.py | 111 +++++++++++------- .../flytekitplugins/slurm/task.py | 83 ++++++------- 3 files changed, 114 insertions(+), 85 deletions(-) diff --git a/flytekit/extend/backend/base_agent.py b/flytekit/extend/backend/base_agent.py index 16235a68ec..f9d6ea4d7d 100644 --- a/flytekit/extend/backend/base_agent.py +++ b/flytekit/extend/backend/base_agent.py @@ -327,7 +327,10 @@ class AsyncAgentExecutorMixin: def execute(self: PythonTask, **kwargs) -> LiteralMap: ctx = FlyteContext.current_context() ss = ctx.serialization_settings or SerializationSettings(ImageConfig()) - output_prefix = ctx.file_access.get_random_remote_directory() + # Hardcode amazon s3 bucket uri for testing the agent locally + # Note that this is a temporary workaround for quick dev and test + # output_prefix = ctx.file_access.get_random_remote_directory() + output_prefix = "s3://flyte-slurm-agent" self.resource_meta = None from flytekit.tools.translator import get_serializable diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index 5baafedae9..faf5a6b5ce 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -1,10 +1,6 @@ -""" -Slurm agent. -""" - import os from dataclasses import dataclass -from typing import Optional +from typing import Dict, Optional import asyncssh @@ -14,6 +10,7 @@ from flytekit.models.task import TaskTemplate +# Configure ssh info class SSHCfg: host = os.environ["SSH_HOST"] port = int(os.environ["SSH_PORT"]) @@ -23,15 +20,19 @@ class SSHCfg: @dataclass class SlurmJobMetadata(ResourceMeta): + """Slurm job metadata. + + Args: + job_id: Slurm job id. + """ + job_id: str class SlurmAgent(AsyncAgentBase): - """Slurm agent.""" - name = "Slurm Agent" - def __init__(self): + def __init__(self) -> None: super(SlurmAgent, self).__init__(task_type_name="slurm", metadata_type=SlurmJobMetadata) async def create( @@ -40,61 +41,85 @@ async def create( inputs: Optional[LiteralMap] = None, **kwargs, ) -> SlurmJobMetadata: - """Submit a batch script to a remote Slurm cluster with `sbatch`""" - slurm_conf = task_template.custom["slurm_conf"] - assert len(slurm_conf) == 0, "Please leave slurm_conf untouched now." - - batch_script = task_template.custom["batch_script"] - with open("/tmp/test.slurm", "w") as f: - f.write(batch_script) + # Retrieve task config + task_module = task_template.custom["task_module"] + srun_conf = task_template.custom["srun_conf"] - local_path = task_template.custom["local_path"] - remote_path = task_template.custom["remote_path"] - # Maybe needs to add environ for python and slurm in task.py Slurm and get_custom + # Construct srun command for Slurm cluster + cmd = _get_srun_cmd(srun_conf=srun_conf, entrypoint=" ".join(task_template.container.args)) + # Run Slurm job async with asyncssh.connect( - host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password, known_hosts=None + host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password ) as conn: async with conn.start_sftp_client() as sftp: - await sftp.put(local_path, remote_path) - await sftp.put("/tmp/test.slurm", "/tmp/test.slurm") + # Transfer the task module to the working directory on Slurm cluster + await sftp.put(task_module, srun_conf["chdir"]) + res = await conn.run(cmd, check=True) - res = await conn.run("sbatch /tmp/test.slurm", check=True) - - job_id = res.stdout.split()[-1] + # Direct return for sbatch + # job_id = res.stdout.split()[-1] + # Use echo trick for srun + job_id = res.stdout.strip() return SlurmJobMetadata(job_id=job_id) async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: - """Check the Slurm job status and return the specified outputs.""" async with asyncssh.connect( - host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password, known_hosts=None + host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password ) as conn: res = await conn.run(f"scontrol show job {resource_meta.job_id}", check=True) - output_map = {} + # Determine the current flyte phase from Slurm job state + job_state = "running" for o in res.stdout.split(" "): - if len(o) == 0: - continue - - o = o.split("=") - if len(o) == 2: - output_map[o[0].strip()] = o[1].strip() - - job_state = output_map["JobState"].lower() - outputs = {"o0": output_map} + if "JobState" in o: + job_state = o.split("=")[1].strip().lower() + cur_phase = convert_to_flyte_phase(job_state) - return Resource(phase=convert_to_flyte_phase(job_state), outputs=outputs) + # outputs.pb will be loaded without setting outputs object + return Resource(phase=cur_phase) - async def delete(self, resource_meta: SlurmJobMetadata, **kwargs): - """Cancel the Slurm job. - - Delete the task. This call should be idempotent. It should raise an error if fails to delete the task. - """ + async def delete(self, resource_meta: SlurmJobMetadata, **kwargs) -> None: async with asyncssh.connect( - host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password, known_hosts=None + host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password ) as conn: _ = await conn.run(f"scancel {resource_meta.job_id}", check=True) +def _get_srun_cmd(srun_conf: Dict[str, str], entrypoint: str) -> str: + """Construct Slurm srun command. + + Flyte entrypoint, pyflyte-execute, is run within a bash shell process. + + Args: + srun_conf: Options of srun command. + entrypoint: Flyte entrypoint. + + Returns: + cmd: Slurm srun command. + """ + # Setup srun options + cmd = ["srun"] + for opt, val in srun_conf.items(): + cmd.extend([f"--{opt}", str(val)]) + + cmd.extend(["bash", "-c"]) + cmd = " ".join(cmd) + + cmd += f""" '# Setup environment variables + export PATH=$PATH:/opt/anaconda/anaconda3/bin; + export FLYTECTL_CONFIG=/home/abaowei/.flyte/config-dev.yaml; + + # Run pyflyte-execute in a pre-built conda env + source activate dev; + {entrypoint}; + + # A trick to show Slurm job id on stdout + echo $SLURM_JOB_ID;' + """ + + return cmd + + AgentRegistry.register(SlurmAgent()) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index 603583f5eb..26783bf710 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -3,69 +3,70 @@ """ from dataclasses import dataclass -from typing import Any, Dict, Optional +from typing import Any, Callable, Dict, Optional, Union +from flytekit import FlyteContextManager, PythonFunctionTask from flytekit.configuration import SerializationSettings -from flytekit.core.base_task import PythonTask -from flytekit.core.interface import Interface +from flytekit.extend import TaskPlugins from flytekit.extend.backend.base_agent import AsyncAgentExecutorMixin +from flytekit.image_spec import ImageSpec @dataclass class Slurm(object): - """Configure slurm command args. + """Configure Slurm settings. Note that we focus on srun command now. - This configuration mainly focuses on `srun` or `sbatch`. Please refer to - https://slurm.schedmd.com/srun.html and https://slurm.schedmd.com/sbatch.html. + Compared with spark, please refer to https://api-docs.databricks.com/python/pyspark/latest/api/pyspark.SparkContext.html. - Note that batch_script can be written at will, so slurm_conf is left untouched now. + Args: + task_module: Absolute file path of the user-defined flytekit code. + srun_conf: Options of srun command. """ - slurm_conf: Optional[Dict[str, str]] = None - batch_script: Optional[str] = None - local_path: Optional[str] = None - remote_path: Optional[str] = None + task_module: str + srun_conf: Optional[Dict[str, str]] = None def __post_init__(self): - if self.slurm_conf is None: - self.slurm_conf = {} + if self.srun_conf is None: + self.srun_conf = {} -class SlurmTask(AsyncAgentExecutorMixin, PythonTask): - """Slurm task.""" +class SlurmTask(AsyncAgentExecutorMixin, PythonFunctionTask[Slurm]): + """ + Actual Plugin that transforms the local python code for execution within a slurm context... + """ _TASK_TYPE = "slurm" - def __init__(self, name: str, task_config: Slurm, **kwargs) -> None: - """Initialize a slurm task. - - Args: - name: Unique name of the task. - slurm_config: Slurm job configuration. - """ - # Set the batch script to submit to Slurm - self._batch_script = task_config.batch_script - - # Set an example nested script (e.g., .py) to execute with the batch script - # We use SFTP to put the local script to remote - self._local_path = task_config.local_path - self._remote_path = task_config.remote_path - - inputs = {"dummy": str} - outputs = {"o0": Dict[str, Any]} - - super().__init__( - self._TASK_TYPE, - name=name, + def __init__( + self, + task_config: Slurm, + task_function: Callable, + container_image: Optional[Union[str, ImageSpec]] = None, + **kwargs, + ): + super(SlurmTask, self).__init__( task_config=task_config, - interface=Interface(inputs=inputs, outputs=outputs), + task_type=self._TASK_TYPE, + task_function=task_function, + container_image=container_image, **kwargs, ) def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: return { - "slurm_conf": self.task_config.slurm_conf, - "batch_script": self._batch_script, - "local_path": self._local_path, - "remote_path": self._remote_path, + "task_module": self.task_config.task_module, + "srun_conf": self.task_config.srun_conf, } + + def execute(self, **kwargs) -> Any: + ctx = FlyteContextManager.current_context() + if ctx.execution_state and ctx.execution_state.is_local_execution(): + # Mimic the propeller's behavior in local agent test + return AsyncAgentExecutorMixin.execute(self, **kwargs) + else: + # Execute the task with a direct python function call + return PythonFunctionTask.execute(self, **kwargs) + + +TaskPlugins.register_pythontask_plugin(Slurm, SlurmTask) From 6db24dcd87d40c40541dc34d3c2f0dd58a3e44c3 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Sat, 28 Dec 2024 13:09:14 +0800 Subject: [PATCH 07/31] refactor: Remove redundant task_module transfer Specifying `--raw-output-data-prefix` option handles task_module download. Signed-off-by: JiaWei Jiang --- flytekit/extend/backend/base_agent.py | 5 +---- plugins/flytekit-slurm/flytekitplugins/slurm/agent.py | 4 ---- plugins/flytekit-slurm/flytekitplugins/slurm/task.py | 3 --- 3 files changed, 1 insertion(+), 11 deletions(-) diff --git a/flytekit/extend/backend/base_agent.py b/flytekit/extend/backend/base_agent.py index f9d6ea4d7d..16235a68ec 100644 --- a/flytekit/extend/backend/base_agent.py +++ b/flytekit/extend/backend/base_agent.py @@ -327,10 +327,7 @@ class AsyncAgentExecutorMixin: def execute(self: PythonTask, **kwargs) -> LiteralMap: ctx = FlyteContext.current_context() ss = ctx.serialization_settings or SerializationSettings(ImageConfig()) - # Hardcode amazon s3 bucket uri for testing the agent locally - # Note that this is a temporary workaround for quick dev and test - # output_prefix = ctx.file_access.get_random_remote_directory() - output_prefix = "s3://flyte-slurm-agent" + output_prefix = ctx.file_access.get_random_remote_directory() self.resource_meta = None from flytekit.tools.translator import get_serializable diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index faf5a6b5ce..b4f6f5d388 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -42,7 +42,6 @@ async def create( **kwargs, ) -> SlurmJobMetadata: # Retrieve task config - task_module = task_template.custom["task_module"] srun_conf = task_template.custom["srun_conf"] # Construct srun command for Slurm cluster @@ -52,9 +51,6 @@ async def create( async with asyncssh.connect( host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password ) as conn: - async with conn.start_sftp_client() as sftp: - # Transfer the task module to the working directory on Slurm cluster - await sftp.put(task_module, srun_conf["chdir"]) res = await conn.run(cmd, check=True) # Direct return for sbatch diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index 26783bf710..3dce3ca7a9 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -19,11 +19,9 @@ class Slurm(object): Compared with spark, please refer to https://api-docs.databricks.com/python/pyspark/latest/api/pyspark.SparkContext.html. Args: - task_module: Absolute file path of the user-defined flytekit code. srun_conf: Options of srun command. """ - task_module: str srun_conf: Optional[Dict[str, str]] = None def __post_init__(self): @@ -55,7 +53,6 @@ def __init__( def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: return { - "task_module": self.task_config.task_module, "srun_conf": self.task_config.srun_conf, } From 122c7f14a239aaf0c5a9c2df109a123b8ff3dcf7 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Sat, 28 Dec 2024 13:25:21 +0800 Subject: [PATCH 08/31] refactor: Remove redundant env var Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/flytekitplugins/slurm/agent.py | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index b4f6f5d388..101e6c2c85 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -105,7 +105,6 @@ def _get_srun_cmd(srun_conf: Dict[str, str], entrypoint: str) -> str: cmd += f""" '# Setup environment variables export PATH=$PATH:/opt/anaconda/anaconda3/bin; - export FLYTECTL_CONFIG=/home/abaowei/.flyte/config-dev.yaml; # Run pyflyte-execute in a pre-built conda env source activate dev; From e9760a70b26bbab250fd69ec4443bb9b2edddbe3 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Mon, 30 Dec 2024 22:07:10 +0800 Subject: [PATCH 09/31] docs: Add env setup guide for local test Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/README.md | 4 + .../assets/tmp/flyte_client.png | Bin 0 -> 20314 bytes .../flytekit-slurm/assets/tmp/overview.png | Bin 0 -> 182003 bytes .../assets/tmp/remote_tiny_slurm_cluster.png | Bin 0 -> 131874 bytes plugins/flytekit-slurm/demo.md | 136 ++++++++++++++++++ 5 files changed, 140 insertions(+) create mode 100644 plugins/flytekit-slurm/assets/tmp/flyte_client.png create mode 100644 plugins/flytekit-slurm/assets/tmp/overview.png create mode 100644 plugins/flytekit-slurm/assets/tmp/remote_tiny_slurm_cluster.png create mode 100644 plugins/flytekit-slurm/demo.md diff --git a/plugins/flytekit-slurm/README.md b/plugins/flytekit-slurm/README.md index 2817a95095..654f7b0b77 100644 --- a/plugins/flytekit-slurm/README.md +++ b/plugins/flytekit-slurm/README.md @@ -1 +1,5 @@ # Flytekit Slurm Plugin + +The Slurm agent is designed to integrate Flyte workflows with Slurm-managed high-performance computing (HPC) clusters, enabling users to leverage Slurm's capability of compute resource allocation, scheduling, and monitoring. + +This [guide]() provides a concise overview of the design philosophy behind the Slurm agent and explains how to set up a local environment for testing the agent. diff --git a/plugins/flytekit-slurm/assets/tmp/flyte_client.png b/plugins/flytekit-slurm/assets/tmp/flyte_client.png new file mode 100644 index 0000000000000000000000000000000000000000..454769bce5c069a0f02f993752e43f2aa3ff7997 GIT binary patch literal 20314 zcmZU419+u96KJ(Hwzjrg+qSoMcWc|`scqZt);hJewr$(i?f2vRzkBa_p7*?YlguQU zOlBsNNvOQ6I07sVEC>h)f~16qA_xc=@H1@)4f*+Rl`s660jh5%EG#c6EKDSCZ)0p` zX#@g75o;CGF4ZfK)+g7XIEm;@j7XJ=mTNAPPbAymEfg$|&QCT|FB8bd7Z(DJf%Xgq z9Tx7;_dygM;(zX!Lj)aVjVOdcd(|OkRo*eM_sX$)v%Uw0AQ)JaK`5Zz6!B*@p}M7! z4nq5@2qD)blB9wRM&cev!=}bbv;z|1LM!q6{H~E8p&LGc>O3>ao&5(C;N?Wtfy%0^ zfKWMa7#{92Fmw+;+-{xxoW+!4+h9Cx;2stV;LC`s?Rhu z2xzbw2*hU!^z*^_d_X|Jt6M9BYPEL9TCVD0&+Rqxa4sODpGK}`|7*$G;XlLr93cH)CG?DR4D^5F z{siUuE0;^&%+<*9r-+%=CwV^G;A3Q9;Q3em|F7hKE&c;i{eO^boNWJu{71?E3#sB@ zWG`%E_1UB&-~VRjKfwPi{0|@x{a+*h2POVZ=6~gW(wPsIhyL$5h$@?6wkU57|p2t(tT$$x=iDwm}nD!{_7Y-Wz*sZEkg~T$wtIBq9Mm zU%!G02|z=G5)(lLbb$*AeE8f7w-7`8Uj=BOY8Ht7>G{9q*50pbTe^a%d>+GWvI|WI zF(LZ-3Br77?}e)3>AgCDy3>PDVO_1+HUoctLg_N>c6Rc&YX|$bpXjcVj}equ^0 z&gyN?KV!A!B|0B>FCUk1TgicFJ@Bi)wG6aReeulL!C1vdI^X#KyBi1h+!77w0{C>1 zm#6O>fG6sW0y?Wce9K9+JSSlyT$>nMT*{y`=>TtswjRxEtM5<>kKTh1q8W`}ouUmUR#*2EY!)LNK7LNAwp%Km7V9}<`2)~PT!}YQpBoAE1$WNb?o;jLFLp) zxW14Z%uuq6tPQW2WNr$Olufyc$+cABhfL=BK*`tG26;F<5%Z!bURSniTX)5?B7{gm zzH?Z%R;_kSdJjQ|&*mN(KCD>4w+9)N%2VK!yT64|iB@f7@j(?9(}wqKh@)QGdJ(?X z^WjhrBq}un*6{ob+J}rV2y1FO0#4f;|^fG*3fb#ds&!E1*@FGTW?O4bB)W zbzpQo?L+6VJ2sXLTZ?Z~p@P_)AS4hEWb$_T{myN-)`TB1VBONm5oaR&s*o45NGz#b8E5gwGyRkUJxiRPEn~B z-@csP2E4&Ss&&+1Ojz?oVV zWBj17wP@m!8->>nRx)xbg||S|;}?UUAtzWYdnjOp{C;ZUTGi6_K>m}5lQIOAZ0;!g zwJ1F<-W0QK36nmPsQlS@ag|guubvuxZfq1;SlsX%vS6a>K`(Q(!UzAAfwR$2yOWTm zGi?{Cwybk^&(>G2xVXs6;$W7M34X_or5}*h<>Af`^)#t96A%0yNNJHP5#JB)BT8-I zvJtfG*EwNhl0X*f_`BW)O@V|juynB+nHIPQ`sqPdxF(SrOt5P@>!1^jCtFkAB&#}W zFmLy_FA@3mmcI(PF_9juHMXt>AzkZNK;Gspicp$zmC6-6sbRAs=ewM?uU6(uTT|f| z+={pEyS;&t91zL;bYN~@>1|dL3-1Q|Rb95oZi`8B`R!qz9TX(oav2?wr`YV5IaQLZ z%_lw(Tshdv%FrZx7YDW(3mxzvo208xQmd81XNos0;{^JH3Cg2e(+QpX38DMrs+mf( z86b67*O1iOt@3-dNt3uZqocBvqt`Ec#knog`T1kLEo$gYGPBZm+9r=m@EeaU)cSJ5 z0?K=WQf@&8h8qdTR;&bYHck>K%+#rJ-1UvzH{ zCD(8-tm^|ee;(HN_%3){pI#mXxd?*$5h||f2kM!D>(*=_DDBw_(Z*}2XQ3!Y05SC!Rm3&}-M4Sz#IG|1V(cI5F=QEL!7Qvx?sCzIJy>_ zUJlkXRmQRwMgj{pYbsQllYD@0ViebbkI>&zWY#4btDB-VAA08? zw`#6C?-?3PEbot1SvsKIXIt}sa z*6aRemL;W8$3?PF*a#t|aqJ8K`wrMW$b>grpb(bhV{F9E0>KaFV0M~EoiJGL6s+Sg z(w93^r70gdLK$Hd*wByyOh|r0+wK&E)R!TGWl6cBJV7(?am|G-06%c6I9X|QU6-%v zu6`)zWQhZzinT^ZXFq9$Z<{b@fGJjp)N^W!SjSU% zJtrPBZZf9~bJ4(yF|O@OISL?w4})tJKEEbn=txDCWUKb(p4WWjbRH$#blJZc4)o+j zpWxq)w)$A_ks}$-0oyZ>ThKryNhl5l#PGY;l$c{K^dX_*EnkfkVHL#I+)s`8y4HAs z2t5pxGpR`sHr1R{ldH_kOH*W@SzMnfKcw%_m#JN?5y}Ga)7Ke2tezry%HxNW+N>47 z-1NS7Ng`96UWCbM!${L-Iw{rpk@KZ^W7mBEqi}1?u%!Dpa+N}{=IgMq_nT}(7i$@h z4k`wGis1}i^DGwY*|o7re>QNs>?bQ2$rsi`X%k=21|x7#TjH51Mn&vAiaf{4u`A;r zolZ0DB=QCic?u(Ws@W89zRFtMT_*Liaq<5m$mjEfzKB|kQiiQ))%i20QnlQ7R)?vr zUsZ9RV&t;saPzR9D+wB*;fio_|HsIDyezZk_=0jqGTdL;UwiH0@qOT-I|CXwqtawQ zcHy23K9Cuy#Xzp|B$Y5Hnimx4PSPMkUVv_e@D|x_+unvTG{=`yCf%u0X#yzV`4aQ1 zHazn<(zaP>UA8RxgsJ68X;FX$JFwKY{gFFDn>0qXB=)TK^i^LY$O=cvsqyA#ChK!6 z@!i<)ew~?IV$jGibT!nx`uKnz4yJu30LOhe`~H_`K?Czz`I7qVMXT>Fc4XJ{&ty72 z^iwz1dc@I0*$Usvjlf>{CL+fJ8?$0%{HSN$anojpaGtAdynv|%1WLH{SOl{G?+K>@ zNcS$QuUf5k12If_Nk*Y7%Pz~b`K=gGO-p1uNfxtfKZ58ecbuwnRV5E_durG#dVR&G zwbs~vTbBTZ?kNQb(Yp>2#OS)K7MC z50mk?Vq5zgXvmxa02ZEl)qUd zd=I&HEE}#VOGOYrd46o7PKwYy+w$$C^R&Eb7@E~S+uS6@r@~}Z#PTooS~JI;y*i>$ z`Z?dNG*)dZT~So0Nlb##krMVx5Hf>kXDR#icauiZ_FWNn5HT~>1}FN&oRmM5*8rco z-g91Gtl&h?-LHN~as>sCyHYUO_kpv_j(o)aV76+FZ~IBU-nYz^p-y6Ks`lSnqf@r` zkChwU{i+q2>?F~wW3JlF%)k7`(IH?RQrd~Y<4q4p(ZIHh&XD~>8-Ab7ku4H*V^m*x zlF#E3S?;mJg{_xdRjj){Iek1(>t;o0bZGzE)_Ge;Ao_xzCa|-!ykI*l`{R@cn~RLh zCZ18fxt=>IM!_RMh!Qb2n9;Wl@il+>E#4u7oc_Kle?+2oav#rBO$WaKEm76jMqNAkIV1b5j)1sQ3 zCk+_*)oS0e*Rd9LDImeN9y|k{f{~n&IiAR^&!|7H(k8qR^|F8HJEpqgdR)P-QyJRr zb(|8JFWDveqYbF!OS7ZF;+?m-7EIm0i(b- z-C!Pn;O@9EdpOCsjYUw(H?b>FK8Mok5e?5117>FYfHeK4Sk@Len-gVt`Ys_xiCx^0 zm}`JUkbdS9hq`fa2`CR4TfwlzPeH6vs;wn2|(JC_Ie zoEgi&LKji5MlH~JA9u~6fvyznRHowBE+v8=Ktrn2w%nYFG2TpEgvH(|}DzKLrRor%qoMgJUlNA$)d)NO&6Eb46 zt~PdoLGs8DY(IJMCdOKnx4-%)2xKjTTxZPFIHC&jg+hnl2Ns8eBJZxXCvN*S7FMQ& zb4{ma6p1V61wX|L$u*`eQoCerCwcQLDH^TVmzG?EK*dbqO1j@GcD<7n(v{a^7#_Av z6D~f(^|2(fy$oE{1hyk!HB8}doL>L=&ScMOrb>oRI%vx)C`P?u9FWv7e zRmtJC_9e4CbvxE=#2CwCnzd#wn7W3mKKm%B??oE(*yDQn`l_ehnNG8%wh&4yp{Y?@ z5_~v*YPqoJDA;X^ul@S4HcIKp#{cQ zFQWd2@xb6_yXwm^38x^r;&7Yv;<hx-^yNiqK!K7hndFkF#2obiZHOGL81yzhoR6U}~bT<6z;BKD7kMql^@wgP>_DM5w?WY>_ieD4xZDywF`{ewxJ~z=Nf{v$MwQ0HS}D@ zgHEno%#s~(chdnd$uoK3vQn3GzS;B>XA`fgw2a%z7oi7GYtv zN8V7S0vPWI78SPx=dz!{=B>klW@D{=uyPR9)lx|xS{~BaHETmD7hgk3rI#F(9UE6^US{Ro=30>oGV+=8KtfJI%_I;-y0hK?I>><)XfvU@51b%+FK@BZr!S0Y3CW%28V(P2&(tB z*S$ZM{KPcL4BV7l`-OdJGYhAoGOl{zgXv5a{h})RqBG?Auz|nhFCG~I$?KNxApRO} z25JvWBb2)`)A@j=p2t*p{QEyw6o=1MS$|SG1P{fl+Ua9r`-38Q%_eUO+~)n6`qnOQ zB%T%QM?7ch>9}_b1>nC`ks!U7%1`5yP@ekixL*VWu#B4L*gZmob2mu6T!LV*3Ao@5 zA5+5YzViu!CzO8R{g@1CD@|ynT^^lMW3A9jXnj;xyw*i# zc8FCSi??fQVjr?<^Z4eXjWdKmVq6oEBwg^)gi7*@=dKJKTw-Bg;nj9uEsw+UUnUd< zhjNpe&=r=%AbYD1g+?4{WV}O$m8aaQiD?Vm{Ng*_8vBWl2g~U7P8^Z#)}{HKkrL+M zTO|=0-HFS&b)lVyU)W2|2X%w}ULUJVzxlwF)5O`v3)(Y5!|xq`MjOa2*!Dm-lWWqu z#y<+C$Qu{m4#&1<&zu}~`{w$xRe71*Q{heXlZU2y$(@FZHgvSMNtt+tcEt5BDaHG9 zk8H-|ABln5>Or$i6M}>dxIsd<^AT+|_kSd|;AkvYkEah2!VqjKlE}jm8}(iXg_p@9 zjt8H)<4HT`VD2khkXFO%O-6{$rbdzAqNX`IlK4~qOx(71`8Q6tBrD`1a>2qdJR84i z?v#K)KITSD}y&MX-S(VDP;O^42$`T4CVZ^=r zNPGmJ9gz+G%h}0Oz6zpw;}Dg#OHih`yM>2%KqAJDgpsDYdojQcZmx zDseBE_fj?-;*zKqr*HalJPiJ#s{Q%*i}?vh_id)?Rn_v{wkO=6!!YD|zKYB`SybWP zMF1HNk{oPB4tF@07wdREujGuUSMBia+&()XX+jGxtol}`J*`h~JHGUgC0%=m!%k=V zT7AB_fwYwtmnXA4SkG~wVjl`k!^m9m)SS2ln{;~6BWopzG!!0)<=!w_b#QmLCh^Rs7=6aI()82$MD* z8TrWCYETmd3IBej!dX$WM%!7r5U?_Ax&$PMJLj}k9>eALG&@>4Y zmOL+T^*Elz1=HAoGdb3~pnZtn$)J5XFQEa5d+T`M5CUqbm0qnJEqT~ZtKYiZnx;7j zQdU%oL_i(QvXKF2CH&(BoGs_$uk9KO-EG202q?i&S3Yycdpy;)>exJ-yYNx8W#%r! z?9PLiUKgulV2@`ZH*gyi{z-HhbfMa7pZ?fnN7{Tz>mm<`fi;}=A4VB+8&cHj(Lxye z!hjo{!~74?A9F6XyEQ!BSM5QAXO3ZbPEFEC++s};P!9e!toG|hch}VTmc7-qN+Iw& z%V=WV03TV{iSL_in}m1nd`=+P!x-BXk#$G1Gp?alDgbC5Y3}xW{X1ml|f2DRuzD?S2f?(X}IZ z*Xl@!LAh33YH3tsiR0MAuDw_(TWEt6N2}{w@x}7Zn*A<4-4(obJ@xmy=gwazkJ(JP z`&3ifAXBA&;b#^WM~NaFC9k}rq9;E_@&q+TXmtFfDufd@!>6w#TV!5*KSJRfd_@j7mB0B%f(Ob?)@C_stw5AjMFPN8{)> z6NTF|0|B(E|30VDkZf^ZLcz2 zwvWuhR5|Ff{HN)8x(MMvR}$_k$fGj;IB2&4}BT zwpb=7HDbL2yfyM%vEp@$kfAx-J6O0g8af&FA6=B{5zBWU5dg0)dPND88{$sR>>g&U zr|wTus`9BDDR1yEj?yP-k!ECP`F=sxiPMB}ze+<|#f0QIQ$)Sf#$$wlBJ!M5GB3xzU*90Hm+c^?Zo=fHcxXU* z?|7~IN9WLE;3)a%IWi3(!#k@ywl6rL_;3!ccG({@h8BGGcrj5sy0&`YZ1)1phaDwxoNV#J|2bt3P)6;pHk%KG1cOBPQPSz}xY0Jen|(H@A0YbepPH+FCmmfbEY8|OWo|^fSLD3Mraaf8edlE(^*&y9AfzF zruCYBT~@*v@ZnWmU>_-4z=e}K34NY+M@+NPPLv5 z5W)HyJKs=mMwEhjR^Q(ZemMQEhEW+l(PK5}T^+n=^yMzFSdtsVf0lTzB7FDoQB^2N zruR$c{U(lCiN`Q*#U`I#<`}FS#utO3-&teQscyN!ZjolQQ3mvA$y*CM2*t*81Nn~) zpn|E6+#H(c{L*ZtW%d{>G*o}Ax!^F@V_!Sa0C0x(I?UDAmE7{DQ z$Fe1F6`H6X)c$ig)&5%E%#5i)0(IPIXT+7fw#FjoI=6nSy7{_Tc+D&sy`4UNw0_;; z6AAKxS=q(oz-Y4=0^G{jBW(@3k*rg8Kz?j33+u|Mb z{Ith_x^yDksKQ!Edq?rz;d2EIvg@V5k(dl6WoH!N83Nr47RIc$ zHk#!YfZMGmreZL|+>h+P2qewrfE(&PTPf2+M{KFSfQ`133HY$L*+uz_O z<6HOxB`!yy=V!v~Jda~+=<*Gd^Iap0($knqAhg|n6RqR9D2!Px7Zwi1r(7i)n^QJz zDAFJ~-LmJlMLAA$WgB6yoAh4Yk;CQlR?PP=RHM3GuMTlnBBTcUPQx5zb0b+6Sw&HuYMx`PsU4?WK{IGNY0CMrw|EYt+SjK6n3n3&Sr4&ZVX08vcGws+l>s&#!%$JD_o5#~K$A{G$G^6C;{i-DqqbDDj20)J_)* zWxR)R=CI3wU(VBSKhin-xMaBZUkEp#m}zfwNSBw2l1||lW*p2^1LhdeN>XB_=vQFb8cLDN)@ib;f5fM)sg-R(=SBPcF~IIshcZvh7*?{Rpwgc1!XD zN#WZ{0^*GlWqKPUyUUaiVf>+Q22ACRBD#mna!y&6d~s6cCQVRJSR@^o==lHK*xe}K_f$`fD;<-K80t7 z2*1GbBYg=Ey0|#hgW{t+JwPG4KmYCF-CRJ$I!*CUe9=yhD=wQKrx;rkmxG3^g+qFr z+7%rw)>Z$05HO}A#)p~9Yc-N$*XWNMENBfWj}+KIi%!v_30oL`DDxdBl?`>I4%($9 zq*B(8!np}}ERmaOy2q7WucpL}XS`t2gllqYi926oyTRAYrtvKHf!lTpp{uD8kJq66 zy>Hh=QH~X-&AWoXUZ0&GAJmY!Dukj=45}zRb{AttLod;Oot8SXAQ{Wv8YL&U$MR&V z3F@qDK(P(8O|EvnmVNBXsW6usAQ4Thq|K<*Gf~=I`t`i$m@?kr~ekEbu07^RB@yE04{% z`9k`pP9FsUT6^y7G^^Hoz198lxv1jA8z$J&x{2z@rxaqjv-*BCCNZcLILYk#Ml+EppH_cgZ*w=otgCt895$1onb*zhS zBXfS2V3~7kH`=KL@v5BMMs)dMU(VdLw@OiICh?YEqOl7(RwVy5pJv;};WMA+I*$(# z7wZN%M8)ea8r{fjI^Jaof417lUp0I+YqjB`6KQgsF*ud|!+N>5iX=O?v^p%VIQbyZ ziN(g;`t~50iEyG#x=J2l`0~x{O~%pYBwE2M>>#*E3irmRt0F-87N;ImN;M!}&p8_4 zXg|sS?(4mO74~Q?q~Usl^Z`yr_2*Im{r0ul-%WD_d``5n<|GqJds!ymRK^CMpyYk6 zcbvmu)BZ;L=ssnsYivzNUN%Cb((X(1&;|HTQhLwL`t^bA4{N9WM!aC|fT_V*Ej8Hk zFBCK{aT=LPT=uoun0IGXx28ToM-ks>kGumR36HPD> zb(7CA+SxyxuVLut$CH=1_-4}d ze;~eQ2eqM(md39(+dS@nnda)>?eL07+O+s#kjv}YN;4%7u8P8o=c#r>LbK||d4>Ge zq)UmbCjso8$F%4ANv=6XlhZdUaT>uuaOSNKp%(Hao=#1jP|gbzN)upW$lwGfk$125 zU8q*$7k2=m>nx4QyoF7%@QHZ!$-*56zB`CgaP(M0g?Zo)buI(nAKaG*s_>^zMLz&% zOUc!MJ=FlK<>1KhclqpgYN4qjNw~!I5@)a9FM6Ck>=#Nc*&cZoWbOBe=E{{pPdl9| zd$N{~;%@P0dvoKhKw!!9N|R-|>=XKBUy&&FRNK4o@#5MVelCAS&*b~XcGZ{8?brL> zN4IAl!v!dr&b#^EUg0ARwjC(ECkuAOign*6owM@Vx2l_&#kNN|h{sgb%t6KOz);^oQwp6ckiO?|bD0T1khs!tmr^atxVw zf8t7kJJM?$>_}eaBSzt%?hSg7 z_=9ofnzo%1M4jviD9{STle1PYNT0~#reHt_u?|9hA&tz4-LHc>p8Z0FW`sa6>GB?6 zb93&mLaNILcI;I5U-9uyh=*5PblS}kxjSN8*K^cM_uaLKBVL%9k~;ZZcMJ!~gtnWD zdY-rYLJ{xMq zh@6ErP8><>nYyeqR%}GjlzmT(7zCIujc?b(uczDXgDsu?p@9*dJq!fSTJRXL_8e@v zOCYv}XlNjHf9#1X+jX8-sBfO=|=^+V7O)heMd6jAf3K!sdLDkR`u3Y??_0>2tLTl zmGTsiXLlEHl1=Q=mwWdnt*yudb&1iaQK0Ytc*{WE6mT*#T;34Z7Zl+hjd=TA2sJpVUA@qc0wc-#oP$^OfxIM-`+|TcW z%T7eZ)L#@#XQAk&U3HOmL1{<&&o%!ME}mn1+7-nb+PsnGpCGqNR7ySS44;S=QE&br z4ue1Fx!{GffpxL{erGYOGDI#LTzWQjiMoGU7?y5K1ATcTEK$d1y7HT~@q8&Xy=IC^ zPG6BJPEk6SKvFVP;)kp+H})ff#e&k2_;h=co{3!iR9Zw(gY>}|`r;z?%bCdZR?vnC zZBLC;>y_+h{Ea;)pAm0iP?8797`z_s{j+Z7#Qar_5}E2$4I|L|2J(1;rAD*blhItI zA~)jIgzzG4l6S?9ZrhI*-Cp)@l08PFaM-fI-}9X`eMELPo_Al(9579Nl1(wJ#-!!I znGw4MFa9I|m`Gn~e?+;MY+xN9okkV$X21>4zVr3b$i{WPGT^Y;qRw=OLt8^%n%R(Z zYzu+r99_D8wKU2#CY^*6#n|0RyQqMY4X9bl zw129WFTI5}gE`voU~|U;=pW0_A2u+dbsVdv)oJ-XJfN-X!tR1cie&5DGZW8xHjj9w zYt;HfceF0%Rz zI7L@DXis18ksAp9+UbtecjBJAnVvcKRM2aJm$c&YNTk2Bb9qngr4nIzap0bEbFtWj z%V<}FwOF3*{slm`&BIj>-z^x%>GZvLBKr$K8<3kkJw}YshVj&&sey;CWG1|hRnqnc zS&e?j-0(X}9Lk`p3{$d{j8xyo$9XSv!OdeSLq?~g!rUEwL#b4&EQkFy$MfBx)i|J) z`|KAF{JkL|@s4L-&|K=QlldEkvm%F3J{JN-&z~>p&ekeNl9G~-PZN8GH=amFhwsg9 zT1EEu|1@(}zgC}h(+b)(dC9D6tYLZ!6vl#(<~J% zW3?MHM@Sm-Xh@u1SA=LZVG3>_iZq`oZ6a%`Vtd>Y#w1xE;z(y{jxmogHWSPZ=j={o zcR!S30Qs)e3Z`_K*-*|BXWZP0Hs|gs+U;4!wl85c{b5P$A;!w8y{kkmYR_xCIqp{^ zO+~M2;K)WrV8VQj7-N!I!g#XU`90wTMZp;XJx$PsOQ6pWhu~SFM2T%hr<{9i*d=df zyOH|_>$MS2`xX#0U6q97<6;LfQ7LSIMkP4$02Z6b!VQ|PC?i0w)l3o=v%xnGh%Uwc zI4I6Y0u=8oHo38gE;9%3C*(r2n1yZ1jr^|&r}|rb)wZ}#y=Qd^r_Wt(%{J!cTGUR4 z&lAx?>>c>Lp^)?K5k?m8gS)xfjnC|fW=m-svC`{C$p6(dpO*(#=|D5btJGWWQgVkm zlEikKh-@|qwI?IVz!zY)+zhF8p0ShNqt&h&ECa6b>XH;M8wS2|bkL7Cy5fd@WYtO! z-|-=-I#8pA%t|eEEBSDevP7ofA}Hn~>q#`*j+K71Kc;&6h(g|tyZu$msV1T(wl zw+kEXu%=>6SsP9X{}D)oku3aS+x=irDYv^L%&sj2VtU8!TvTzIctf4PWz|=(=5M;p zB7zTDLv_j2k;)Wz!;#XWZojG&rTCS=d$$+f90opjCVx`m!geo1r0Oj{ZUYFtKh;^Kue3YA`Po){?D%Z-(4D{1x<&vwobq{GxjM_;GfoP*!mfU ztE6OSu><;tW<4M!o83fm0*Soxlo27K1=osp9SD2uY;M+6R)VVlOh2nxiLpfa!B#3p zj1`|?GT+i(NQuGa_~1-aXf~5n`L1O)eT`;e=y9pRHYZv84@raunobPcBldSc{umz?1>%1OA`t`u4cJpp*WOQ<;UpRa7nfgLi$Rya zLE6;8=)cG4>@?8S+_h5Mj)Q0v6eu|>$Ubk6ADK5z2ot zn=Rb$M#XsSNC+}Fe4SJZ%)_!cGR3D3b7CtVCjZKQ;o!>d!==W0#rPNF304Ol6CS<> zzn@-wM~+JC{mvFyg{k>UgeWDKJkAJ7J%wL+c)6SQFONGTGoLva?ZA`hyYjL8cg`o* zN6E|A26~=3{QQjO!{PtD!k;0N~8>Nk$+A_mmAnm_*MG# z5BT?vcXgmAOyk*Fq8X^~Y7yr~#we!-o28%M`#ToTv%%?VlQ=Ew%BS_{`Wkx=bS6R3 zBJ{$$Nv7}r-FKrRs4c68+6mTSI=@N$dld+oNnjmabcdrivcX-yt7#J*l-*S(12Cfe zm{RMVgEeVOxH$RnK&NJ}P?4H9his~_7lp<MVX2T;x<}&^KzE+{2!QsSKs_%9==^ zZZbS!&;F$qSYpP&!_4R+eb*t@j8j&*5Bk?%VjoKEj6xm zxL&pC3c6dS#Z6@7Ew~W)^QUjSm$7%u&2>PP6UhZB*lVz$>)1yP#^ZWQcDUL~y_KL+ zvo)+)3bRzRS*ET`2=O0G9YYUe$Y=}D>4bePMb!kK;G075(s4%+e(vxmrA{{3JP@|e zOv2@Q_bxK>b9?$Fqi8lqPfst0Mysx#8Aj&6kW^oM8330|qD&!tn00nIxsMEw&p)j? zkC!PWEh!{z`MX(~idH{&C=1*pvFY(oDMK}*HD%*)B9*F;QOyF>$aT_7d$tEQVFzbO z58Z0D`HfD><-M}ya)V5u@Gje!V&^}se<31%)It4C^Gq0S4;-kd_wZ#EiyVc_=Mu%- zxTJv9qEvK_W>kFCeEV8)MO3xxVY2Vvzg-(AaP7$v!_W6*t;85tAY&3n=c3hVl(|YK z6v;&n&)GiiDx92ha%tCiBlJ(C#T82HZsoZatMO|_wn5&PI3pgF5J1*PG!CO*UMUPU zKIbIXHPE6f!}4kK0UhsP5eaxjr~~np`e_fwtkNpncQgLU2PD2UbriGZ3b>zp;l5l} zZie?A1)y}+-~r_ApPlwBLF*ZNII`_yQWX}UB6Ua6RUF|j;-^)4^T?VYl<6PsP zv+Nd=Sa|*(p^$(%GC4;}&4@74dB{v7N?Rz|h&)i^b8BnY-zF}WFCLg;@XzXFF`E(% z`FtEy4@(RA$k#%czY(>9eR($uei94Sm|nXa&NlMer|*~WNuvHOkOBm}zr`4puA7nc z=Ud;UJ;v(WB>#Rzk6n<-Qao3-o~Z@5znrk*aJxq{{xHO$>3_;M$iJG%1>dZ9Kt8yd zTKv3%H$%U96qPx356Da;ckUmAas5^R&X>s$W~{In9Gu?R&zWYIYqu7}65q{SvfM~q ze;L$?@miKPbzWGUAggg_Rs3k+(c|Aocfl8Hgb`SWIiBw*4>Ov5Nh>Cc9Zq>;LM3~CIi2i0awYxs{`vA`Iq^O%?uch1dt_aozz_pX9X>MK(n5B^D($E5>A!FP z{Yy|25u$wZ&GXB1teqJwLiM?v^~~=(b;6srdeSiT3CCxNM?0R^)g9ORz1~eXOD`{2 zqQGsNfw8o(&&Ph^C7iLFGQq+1^kG$AYMcJ-@N;L z1%gA=!ZWpkbBPB2gKs~#+CY;}P1kO6Sg8LulF$2;zHLNAkk;Dr=$U`tuKbI>4-r0C zzz6ttWtxBLmKaQk(@Mi6%tWK&I_ris^T0|g4;Q24JO0G1?B;rlDM-?pw`a9M@l-GkLlsyKfd9eKPQ6HF>T zf8?7m!L7MTX^#G-1J%j48MUzYyC-W+C#TutYyrRyP1Ue*`TFkqwXAwZyUy= z*Yos#iCvl9)x2ue%66!T)BJmgU2ETC`uxjPIwF%QGFu&qKLvgS*!q{r4yO<%cy_vH z@H34@l_giw8kum_Jh!)C<>mc8!1l@%YR$oe49BNOt?jB)O@)t*;;hgvi0lr>_fGcp zREptEW26$VO1IJD2{HqAExIqhQ~Xe_ysPRaGd6#VyxM$5XMf_;Cvj;TpS1XV zgA>4FQK)>mjj~$VBXZioIzh7S75Byx{ zrU$2U14s9+_R9ge`BxWZXTa(m=tg?2@+71En{R*9#pkOonDeJghvtybCwL~Z-9V2# zHy4;<4Hi^2%x`nAbL9<^g>CxqN$f<9@Y6C zjchdSb5U|AQ)y($QEok-9v8^_UlB$N3F&|9pSf;Vp;j)EBYniUoC)Jz{Y$;>M`T*R z|0S>SNZjwY-K4SEFbczxi443@U>_g#*K0*DuP^_6W6G0)O8iq|wo~oxLE-we!PU*G z%nR<(9@?bs2L6Ib*yS^^-dhO{$T!rDId0`O{>=I_NU4KdPQrm{CwO*a_a|}WM=>v5 z28Zz=!{f^r-RsrVkT!xqJHkli5o~V#q6Dr-dU{8$l5uN7U<7YghN@57E9!ytzzJce z|4wnw>;n-{A6*s&`5!CU3*6=G)rh0k8B_ak8b7~St}C|MKz2*t;PT|6SZ|bFr+01+ z{jO|*Ex9haA99%xS9J!Y;AX!qiMw%luIv|rC@gw^$dHcyvfmOGyG5;0tmOl$QruTm zT#NUDqM{yCmb?#>i*Jmap*;S8T;oLDTWltfPxr`YFcBp}5^N76tkEXNx`Ez6Y+Rb( zd1jWP6YokXHFjC>)Io1k&1)6^)jMW(86T%PG(Bw_mm}}ER!fM5f`WN=^p163x&A%y z)6W%xlUTlWvZTalHVzN}>IuE7xmFT6HafSYZ!BA16OYMdrEI{LsO1&q%4Fc(E6jtoaZCs29B3w?$e986A~4wG6!sK zvN8k-F(D(SYmRfC#N~{&kibV`Q_#1($sREgn@EMWo2dOc?et{ zB4t@S-zxRuX3bp#n2t|S!i*PF?Ye4?m)-5sHVn{I`;IHkNCwzIanC=b)x8^To*YiM z&WB~|reBbO!R^`!giA(Hw1fhoGHCAoh#42}BGm7Z57B&G(!)9SWh&ewgI~2Gke%^T zmAY_QVRY`^$a61@+u&aO*U$n^`yl+agRvTeJGpQUL4uCApm4_?l7uJi&oU{cn{}Ny z!RB)GF8~6!O%-!$p?&Dt&0(#7!QX$Cc|;LaQPg7(;R?<|pIWKYxY>$5KrddcxtY0? z^qkmVtmiE=jzosF??W5MGiq}W6k?xTlYCL|D(<=rA1QU6ekdU?`Fespu4IZRH2M`+myF`i0lox>07M|{!XFE|p z1fY9FK<+6C>@gcr;jSAo5+fHVmK{~ps{X2Iq-w5loVgHN;4`_xpX@QKw<}xe0#pA(dB69ZKqJ8z&FvX~N zw==sg+s=`y)kTwtkI; zr`m*?wJ$6gmg$v@xZo{L>gI{Ms~e(k(N`d4+Se^|1RY7a<3782 zQ;rOp1Lrz;b(3B+U!V)D%i0S$wJ1}bd~#A_n$GGpuTm3o@F&@{wMO|Y(x>$bsj8H; zSJu9;@uLr)wMR*A7zy-#0QaRx`6wFxY<#9w#BOJFYUjaWWUE^X=b0lS)p zcYEi(IYJKYl?>+pl?aXijL5KF5!!Wu2cpQwRbpH1#L=ydUIoo0&(k2GD8sU1Xb^IG z(!<}PffnEzzv}@JQnp_lJ#g{I-Tzfxry)QrVco=3j-6)x$g16F(s?G%`p?q><|~_N zvD;Ch2Bx&<2o2KGVy6V5l75S(DcIa6dw96%$pN>XS<*J}q9WYf^w&h}enRBXuJ7@Y zkm8$_^7$Bzwle{v-Aw!j>6aP)$$&>9#sANe$!eo*f4kR)v$#93`(K(>$^!KeUyQ3q zuJGRE&RPaVRRxa1=bjwUMMcNz*xK6SHWxcxJEfV9J?uXswD`D|Eir!0De4mDMOFen z5()1n!jr-x(=kg+fX5^}q3YL`c7XtVhQavqy^0~A6m^7Iv>J(S;;ohU$X<)E>Qh2| z2b^9X#eEA%Ee9#E`<@e^%#qb=S#z7ohMh%}XpY0Y12Fx;yQ~k!mWas+@5xBBy#{ZM zN=gSZ{SD_RKMj5Wrv4E;*G=jmd<>@6>9T$9%V8f`k?=gaO%vT5)DI#Z&$`WRQ-3$j zT-{!8CM}Rxw;ovnRLvHK=4#B_(IDjaZRr~uw`?Zy0CnxDhDd!p*B)mJ`4>HxnI4(; zqRiM>kmg~vFyJg$7gn7P1{-;##b>RLKBM492gIl}(IU$5z_hV4<%^aXi8ZCCGcOLi8yV_T)mk+Y5~)FKD+OtnM}9Jbmrhk{J(xPGhg6C3s#je^F0 zd3`lp3Sxz)J2IeSTsvLnYhT)YK=MG;A)n^wV~Dnzta`KMhM34~tF~1@I&z}ctB)Z@ zkG(yg=>dqP6l(~Fs<_|_Fb&1U^D+DaF|pzym;r4uxqD;E@1{U8T>JH506}^c6ad{x zScAg}@m_3n`-1tooqqk@J>K@D9`P-qx60$WP7*is{SzhkSJnvU1|B6s&EAR*25hj5 zl}h8WBC6BsPmz>@y~!MHU^}Ge|GwNG8NDcl{w*zS`Ivrpt2>AzY`e(TEVquDf2bCbxD*2$=u8k;rassRpAI=LH42 z4)Q%ySX0)<%49!%m(^(MPIKP~Fe&v_(a@y62>-g(bRtM)#$$-JC}A!e(|acCsHsX$ zzH4HFLwXI$UrC}rmR9U|+Rua)AOz(Q?9IK{Tain!@H`o=K4+G{{Jwi33t8AI0inWe zpA84X*p^l4B?-)1+4yp;|gNtM0Bw~ql? zfSms{+ExIg4J;;|c9jRsx!k%S!lht#3TGnVhh>ZkmUsF|*(Q8?V2|Ez@UyhT(eWU~_fFyg-tun6fo8j*Rh$5zKJB!X`~Z*#5Je_DSeqt?As z_-w()-JLh?dk4QbxgS0%GZEV8 zCNqo6E&$ib_0iWe&d`K$D0Nx&&A+nikiUE*R=LDjNRHD7p(PxWuITjBdZWx)1{aNF%PcoD$(-o;2L?;Fv;!%I0aW2t{Y_7^O?l#@VWfSfbdC zPnw0kMUChpswtfP;2zbUZ+PoXrqDHdX8NuI7+h&Q?tWdHMu!80eVZD7x zoRBss4_6oPD`-d9BVEu3G+g~1oSYDB0*b;seBjV-4TOz@3(D2=5SySZ_^jfBLOOw; zpc(vMOAq|d2>j#cv*Z`H6y*fJ%DA~XAq|n%Y7QvqE`p*wf+C=Kx0>=n4RtmFIqTH-TXb zun8)#@yUP#(6^wRtpmc|1K|ulxFA5M*6yecW{n$txr6O`o2rAFy_dR*wSt=uN<+uZ z&_Kl%+~mu?aM|RR~Hu`1z((q@bGZ;`SLV7S10u7&`)&( z1OMV8s6p?WDTP`M9c)oRa3G1}7l#H84Ffu$jC8O+gn6_8ANq(h0&_OH!SfKp*41bI z25U{5mt}n-G1KYc>I&|+Y1K9##+>BrD~EJ~#1}J>=;r{*`OmN2m=2E(?fGwR=inn| zWNag^qUDSbwe!{T5LdUCZD^4}0s~pihv_VSaF~=`rS9a5H=88cSOTa6gpIAxoq$(#8vg+zs?{{W)N6 z)*rQg=K30beyV_ntCx!{5)u)hDY8C?98gF-H-rt;TOT0cpzRRK*$I5&2fqT7cEZqqP`j%OYE!%5+81c|1V+jcx#@_=+7~#2aB{GRblYQHkYs_jqa1(`%Ang( zuF#{Q`zj)w9h@Ltl5=%-fUK4t!o?H((9nY(;D`jHM)%If%flO~=zu~wxY(nc4m;S} zugxz|VqpK)<@fV~qh$bkI1;14&{@AOh@Zt#2?>lG%EJ$I2YtDy7+Q$X+Ako2{_OKv zmxRR8ZHG3ikubUuf!1I9jeA4A{w*R7&OvL)ulFBvDPJklccoWIXnn^1Z0VKp^mDP1 zft;Aan)JGQXgK&fxbXbbWZ4O62PxzKiYW7oim$K#uZXfRM!bJ=QRYVvib$4i{G!U;sB;zAw$>Uu2h%wqLmFU)SpITBS`^2V-A0uN0=u1L=f7Ie34G z3%+NFeoGfVcSPG2V9!mq5hE;Uff9nwgcbqwBu`f_4;v)<05@8XK#29_BmcQV4U`_z`+tQRnuVXoQu7ObC1HPprN$UEj8K35 z$bYU-3w|Tix=3eN6ktc7Ro;X^Ko9}}$V~wkCQPyc;20t}z5$oc4z{*XfFtXH^mOn? zSg!>;P$cID`QEiqLRgkfSRS+>yZ{fhPB%cY+?TN#8u4rn@GwpPyckRr?c_0{#D_L3 zo6r#El+8LO_!TzT>?0uQ{4vS!M@L`+-$r2SfM@#wgJ6xYakO6ptlXQ(1P2!flmh}p z@*ocWnm+)6H|DNj2*1h~{41mD0Ah_g_$|l*incdU;%A=VYafnb2{*|o2A%)hGK#U& zo9q}Ax9FjXEmsfJAy<1>7lf0-=T_M-!>P~bsJlYE&l=Zs7>Pppq3Kb`bOFKLWEhdY z4k#mVCLa&PKS7_2p-<@FA#0YFk}fvQT~23B8Z{OKW8)6SX-dYx=4Em04RZC{|jkB zvJ4IQ|G2aQzsQ$DB#hy)HVM%NxAoKD1s#M4pPaI*KEJKIwzs;zla7h19yc1&{ylI3 zGAA2gVFNn+0$gwb0=a8`d2 zzG7tqwE3-AATqnn+X+= zF}D>)irET*3%_Jvz!AQ+FX+h6meT%4kT7UvlOPG8-P2}4!i2AXiy(d1^`Mi0e~;_o z;}QK2Le&l5!vm&vllxh7V87ygzLqxxQp^s@`g|jAA~s@3YrEekZ-0opTK7T%e4E|X zcUKLRll`uWjGxC_eRo*=Xq5PON#nX)p@|a=F8T~uk%H(zwQ|{Qr{1 zb>RJv22bA?$A5A8x3yw_nxXqH#V7K6Ipv?n(tUSa7)!qizggONAQ9_jieF*3KNgk$ zCGPM$!P*~);{`GB_aBerMbYuu-{bKxF3uRRikNJ`x9(0rV1pI-I#saA3;sut>_1E~ z{2}oFhh%{e8nAChU*A<;5p?GND^vK7c7Wd^8@}b`lS{T~n-yF<0Rrwh13++Syxj7giuo(+NOq=9D#u?!cZ3W}g z`_{kyTdlF4DgV958mc1z6E2ELx1inZEiV1G@>f@$o^_>srGa3gi(6dlk_QpF8nIGH31NuaV#{MiqZJcKdFqjs_}U z`MfWgwC^sy$e&K7{T5gV*FDU8{?Z6+CSNUOJwNB#v24(zz16?sQ zvI(+Sf;~6T7S+F!`>_+VLE3yb6=E$WECiBOKVj-k2$P^io2P$n4p-#c+&re@7}8we z5k4alOm#AJfP1}S9oh}eFXjf|*mtUz)m=gT^4iN0KJR&6zv(aRdHxp_{~@UO>kXp( zm?&#gVwfLOfw?&|jA1k}ZuRdkZ4*KB2%BsaMm*Q6;r|Qq#MCOtIeB?Pg~y+T^xr~z z$N~Jh^f^C2CI~~@(C*{ z!T%Q~V0}Lr8b_hGd;!`DgQGxo8M@kMQ`07!fjRGMye0GtcxzpxFn-J${Id2E8aF>X zCqERD8~xf2%yCc&x^W7S#I^WtZPUl56aJZK4ZS&uA0n0hBAfUJD#bT!3*Wc<5xOt&GdE6kow)QeFVB!|ze3#q7r@ zIs^Js*0f=a_YZLorkLh`9`}fT%LjY|PBy*v?l-(7Z0#MJ(Az>G!TDj(^Hrk!FH6Dv z_Y1qp5@C$hW*Tb6(US`aN>!E42Erx^I-9Y}(oU zQ>nW!<_!@T-4lk2(!bEYKSAL!TR1Tf75V0&Kex&YfAxw4L9vYi{BJ8gn%nqm5$G2H z@N>=1=a(Zu;1a5-SUdI|aJg1*@%8J$H!3lHKeG5kO7MP&ATc#9|2@$7YY>DeX3sWS zy9F>A5sW+k;|+=^CRoEfQdFEr=#K&se|J3{=GEAncp?lJxSq@4`)(QrE#H4k8b;p} z`YRlm$8O|UJi#A^0D1*68lH#1+pGon4!dq9DmP99N5EUvz#p7gdq>7M_gPEkfY$F) zqQ6)a@%bH2zx3`wK4^kAm-YNon#t`D0vh24!}?{l#76U`@ocoMufad9`sbgWPx?Ay z5D-R_ZJV$ac+15)j@cYbVeACP6#f0xK$z0ZP1?PlF4)Wh^R4FsJdh|a55O9JttVf> z?*DO;SOhXe(2z0c5%YP|;{SXZ_U~5Le@mHs=S2-pPT5$+@DE?rx}f*I2nwQ|HhO7=FfaVvw6vJj-mKP`w!cNKzq_*EM#t-w3x&6x@^t{#P7;3ax$rk`?)qklUzi{|AZ#SnIEr8wvyU{+f;Am?V!e6kq>f3*G0q z921B`SN#zwpWk6_z6zDUpvi1jHKp(*jf7gU#RPl!a`g)4zcX++u9FIfN{-?g< z@cR?+?LLa{h~xhwcp?P$bZ$nT0+<(8Y%(kuDDrc|6aH_Dl>Q6k`8zc9&jkd+Ur|us z^8o*lh5EKg=)cgxpKhVVFz->t0DjD>{NpqV)A3Ef?b}x*fWIjE+hVz&ZlT1#$`k!_ zHEQFH*`Et|(N=wPR^uPLP$FNOK8#@g1RAx*r2oQS-^H-(pa0PDWb04Z!Wti(Iy)u>N*5o!n<;wu@YJ)* zTj%bH=Tqo{uka|Ca`5-Qne=gpsC0Fa4V2$MUI)*PuaA<(+4a5e14P=&Z;4LiCtwl9 zf9E@bsso#X>3iQZD#5ZRw6rB-zSpH-*zR1nt>3#LQGBo#4wY^|=&-|g`?E`$Il^<( zFj<(oDx6KXO9chM*!cEh`Y0_)o*hr2b-uA85!2}ghLG@Zn2L%@RF!wJ%*MT6$py=* zesV)z+GsHjmsTX?U z_@OmhCX6(u;98AIX5hTB!?T-y$GZB;9Fj)wWf)RWQVQlCFpx!0aX7L8*42c zE=z2WjTtucfY~Sp32*fs0W&fSGk3^hs@7I3df`M}w$KU1PY+bL7aEt|Ef#&|d#4hQ zjg74}oQU%70^BbCf_l0&EGb>kzU|8OXM4g3$Wn@Jn%l-wEq8=3oiemYps@_NUs_|t zu(JX)K{*USw+`o1%7zZ)hzE zHP>#1XzEjoZ)z=>D*J;Lryk_0P_kZ-{Lt_DpwwQA^+p}{%kyyuD2%RmU(~rn$nvzp zS@5lvHh!T2Qx0nCiTD=LA-_GKg6X=L@;?_XbSg zKY#pg=6+Lyt7Z-zPfP9N#0hw09_DL__He^3y{Dca`;QNbg!^(8smi>5kQdEmQr40j zMRmF6BmMr0G_>s2b4W9@1=!t{!3d!=4mQqqw%oeQFn%?r!)8a9=h#2)jlDe#OW`OI z2oY|*C;FTr@+i*Z%+@51cGucvyMAw`n@q99FiKc_;D-Sp6lca9uhPr$c7WnE|sZ+Xd}T zE-Vh-4rA{j8qSe63bDfZzz`6$vM@dtLa>9+VAn*?m85I6D<%eoM$C^23{&SO9@ArA z08x8&fFNZfzzemqQ#(hpil~cU4Yu85K$IF}%vq`+|1)*h}3! z)orZ7b*f{J3@uM3vZ>LLY=b52pC~L<4+>D+Z=dOB*G1iyA>u56vt_ufxAjWR#XHCl zbU)x>z*sj7W*4boI(CYX$)I^==*~lhQSDgEz`0ZXVDZ_z4wvZx0lx1d*v^V^2+9)J z#GDTH&1cY;O5^A-VKG|+6UT0#`|YJN~F>1 zIs@7Jq%h2y43<#@!{0vClEMqkIQEdX@+=dN(p9sn&=N4^cPG`)JMB`To&fKMs>Ir3@O(q=fiFTK7yTeu`s#mO{kXv1E4nO!wQ_Zy&E; z?UY&-GJR`Z@SINgFfFs~SlcOfw>=HpBDs21@C`WIQ+ZP}Tx*QML0cGAT zWl9-iXr~@b2;4Z%#*92vWD*xQ1|AFf>HVt*z!GPBTd7$R?vz@Z2@|&{Kdf)#=P_~R z`e{bnnGYJG15_fbIS6u!*xg~D zn9d9y-Ddc5nsRQ)4kKS*IP}5y9tXW*{DPwx|WYd*@_-AyB(>&Tq8 zDt#I6ybaeynMx<;KsQ%BTAoO;O>*5>HekpZ5gfG?u7oG$j_pk`^m$gdLlw1wuZiux zq^Fd^W4`Cskq>MBrp)1Cu1#}niRZZH2=T#eX>8Ua$+r!Z?7aQKuODCI)i^Db&=^fa zZj7gTUO6#!5`{4cFcDdw2KkRr6}qxE=fNK9@Vb zRanOM!}NgTf$Of%pH*Vrel!lyh(L}yfFc?vleg_PXz_U-$RTLoA!NXLUlZtCv3YcN zImeSgTfYqjU8MkMux|qjx|t9$c@x3ND?c8*e6ZE%)F_a^E_S2j(atQ(*F9J0yEPl6 z(uEun-QR@Jo+p}??7fxm@bE$t9o`tSGt+$j&2wIb6I4>=Lz&$8T2}M3HcAf2`LdkMT-aINRBCoqCIIFIk6MhFf#qdeFDCRQlHKmI<}7#WdjKmkz2#rd&#^=3P<%g_ zJUeSC00N4;4^~8M*rc5}ZuT35j zgs3LE`G5kklw5f7&ZA2@S1X5!tHv{roYW>)yJTEy$NsVZhSx-{Yy`1@$Eb4E>&peX zp5q;MB#kH4$s}ijC!b!|TKQ1BinJ{+j7E2O_*gJ^_Qh>&ulo5327zV2_Z}e!p%Nx@ zLg|CPpI+sU0RtnRx757zs2NTg)ad;~f|qaQsh$$3Cb25Hpu~6c5INrIx-0=@iLGyhk4O%!+roN%KK@o|P%-ItPH z@%8vYcn%oNw0Mf*%&z0nJU3d5GNqS7ie+9s$Qzrkej_3?%#1J7tNiA`fZzC89DckZ zu_84~u3S=b-D6}sd9FY6FX+2aWLX=eGbM@-Z`;ALd|b6TmQj#j`wWo;mX)>Bzzu!X z6fVx^L5o++j!cy|UEz2VjX)b>X$Eq)6T9KkgHI@(QxUcGC-f?1BnIp6uB$?PIpNE9M4h>*7XF;J<35wU z%xtR3e4!*g0m^PkxBaOdbtDjhCO3WEJ891=#WL_as+#i-SHa%k)8a9)0c?Le6fbO+ zm8>T#h$1Mrax_uR_HG)#qWS{xk+@Rxa&E1h^7bX82jz~2P+&2Zq;((x!qLQ3y9W=a50}62 znc%g)8Egp9&(fgS*cmX7T|?E=H`=dP-vy}do;0&JQH5Z@a1_Vrg$x(s!;%5T@b*#Q z*@c_=Ra|P9yIStdnw8&d3EW03B2ms#?tLG`JIa>D{SSL zXe%YF*e(X8<+|W#pH|FBN81dhSfbwgC~n`AJEc~rqN$7uI;icP|0P_$M4@Z+mz)zbwUBk^xchc&|_ zIf{-2jKqkZB*1GR4L?`M&SUg$1$aoiEu?#6fHCU~zf|V~CnyS1RNfL0SN_sIE0CSf zC78Va)`w?%cLvOa?Ao;}+-Yyms8PPP#=fH~0i8QP4txq1@p<(?0az0@;Bffoq(|%g z>2Zi+S-Fi%8V`Gak2Ns=5d1^;u zCGLJuircZ}CGp4Uh4HM^`{$K1-VA!8 zE)-tYFQD5C_sZ81-IZolwGbk6rZq$KTI*sXjpZ4ZnL#nC(jEK#(>%NN36Gw?0^pnw zyLOS{?OZ7UQb$4fC^{uuNWIIXRp3->FXq$M|MM!dBwwpJK%c6-}ML$8IaLC6uZ^CdHnl{2v;$ujn{t*5U# zDsPE7CpB+lPQni(!XfA>hMQVR27Aox58qyxB$xN5cGcqQ%~{n>y@L$5i7xH8IU6Xu zgO)d&48%yOL&3Q&8gx7HsYTr=Wp&RJ8jaOmCI}4mA%rm#D#8=HT#E`UYikh1S~NzJ z+1Et--NHBtCY%c&7gs2T7U5_}FOD>6HM8{hr7+79t9xb(<=M>>Pi$SzBe+aqaRLiJ ziISRoXW;vUS3B`nUKd;wp>zY`sA6w$I)!=&Q(E0Y!o!2WGud+~Gnv$B;G5FbejJV# za2u39-@x40#+b9^DQ?IcsnsPpGX+${=Kg{{qHWGF$c6^GZ zA?;e1OQfgB508M+x^&!2;?T0X+s#GVc7}04ykBN)0qvwg^wwKFKdA5q#YW7TA1yh- z28?ycLoKXK3Zrft?w4hSbvNKCOf(k0=Nw)FFm+F}nA@Z*{*qq)X)i>vb)zQH0TKkh zqg5d@bK*<;9(JV(Si%9p4$m7XYt4_z)nU!!YWX z*j;!+GD5efmH94W9eGc4)Y7{TsTh2F9|N-@+*)qnWKqiTw|Gwo?YbyXQ#(4G+ThH1 z2D@n`m&gjJuI1*0J**`)V1=uqqIVBC5E$&%q%=+5Qo9E$VmLhHQA^Ded_u0?bOIIJ zoAvz!EXTQXt?Hloj>No>EKd&UeRx@a?*fPtW3*^jn)o$nh0=(w7!}tWRZCZf1c$+P z3Qk&tN7r*dDS8o+PQydYzJb5Hi4I{s>F!j|5@gC{I;+Xg5$NBfyUrWbGY1Qgh2oK% zEGG&*Uw;SNQP)?c?h}rqd}T$Q6;>zdHk!e_;3Bfq-B<9Z_ZVpnHwQ+tRxsZN!NHi+ z>OvepyzaEo78p~I^zPu}_zi?dZV{6a7Ut=(Bq z2u@_Ot9v&n>lEWVH;vx0*El2*a0M_-4B=SC##R-=fuB%SX$zDw?^xel{} z%~2Ku;-0e=6DLgSdihQIiRJEYt85f|JmxYE=F4+X6PH{?6m^@wfuvE97p@hwFh--- zt*5mg`RQ_skQlz&wixG}IT@w8CSmwN_yxI#M^_guNASZ}vKf`#80(w(;Yg1ccO7Cc z#fNGj;ccvRoO0n*gj>>J0MwrXY~H=nftjpOSs2af7xywU-dRP3s$f$xsw+wdtBz6a zo0Rn$XH0urcSh-<#G9KoIIVS(M0*$#@%uo>IW9fySBapU3JYo)MBp3>JxX0@!siZe zQKVF_$yTr5Lm(4+hK8g=FPb5eEA6KG1`sdS0>s&59J#47gu`FSFqNP68XO2N&%Y{F z+~M3;l1HQ$B3y7)X{rk@c7d9ca8I;X{!V6vEwI>~Qad86L(6#@s3wVXRUX&Q`)P{Y z;E4zc_VkgQlniG?F-1z}x=$n>>np;ozpQY=lQHgNeo=2oaL(I<#q-V6il@8jVfb{s zH)muAE2oyR3#cPC3EPMI3l$=$GLGcFV+K|E)%!}#~ zEbH(TpnyOS!B`(X*(KrN8jHda6!I9aXWAt&wBT+qHg0IoYHtj6#-)q#0!QYZC~3N%5gW^yGabYaeQ_9P zFRhBSd`Mc3$}N?_J$Pi)rqVLiHH9q#%J8J(CWtj-8IW@>Z28S(-K^j#3@PBrPp`$6FC@H0X(+#Yae0V0ew%D9)H~9@gL8fv9>SDzh|g@`tg^!PZURA;$@DFa zTggxIbGjGzKHbIof|!Rce~@Y_Iuk=h00KJ>XzI&i+cmZc&I_BtmBP7Xy+5*?qvvw3 zj@{egMmr_rrR-SS>Je$T5L2?Az@mLJ_5RcoiiBKnY9_HdMnXsZ^17~_ZvhP4!zO=w%U3sPCI7bS*xZ7oCzAvCrY&;mm~Cl*dy z_y!St?ws(8yXiK=NwUhfH5K5MISB#{EOBh>NtTdAB^eh2Zr1#Y41a=#P=pS#eU7<> zi#^Aj!0gz8<@b7&%QSm-R@fO7w@g#wJh$?ALR4eb(r#6HKkW$@hBFg52IlkR&|MP< z;WG6Q)=}b2=*Dy+u9G=x8704b!S+$}is&RC1;qZP(9NILZNL8xC6}ztuUmw#$Uxz1 zK1dL-%L#=O1}h_DA)~M^yt%rvsHja?jwjI5Z`5pa_A1eYUE!nq_8LGiBS_^LXvxJW z+v?nnE}WznolbsJJjHK)rdMSPRhNrzbuUr@KSu``s7z|5`tkwQq_0KskN68lb0Bn6k45dE5F>FmrEtvuCG{&DY5P(VGrBIoy#)S!px@y zx<%Dr1Dm@25!vvGTT{iE(In(kGVhVqCylBRMf*3b-zFBsI0LIEyeOdVG?}AXWw$h+ z+tpWAjiKeNJ(cr3SB(U%?~pIS$w){72t=tP@r`V(33gPrN%Lv9Q*gL1&BS@}a+wM_ zkS4^?i{e*M9@8h}G9PS3xbja5hZ1UFN0SvkcNS&X|GYp8uE#V8XyOUKN`iBm?+Jz} zdImo3xZ8DLZr1JT0QH1_BajS$g1Oc^||j;LEa z00m`R#cY3k9drP}$pOhcRUwBGE;LB_((FO`zYtn>aNA=9$2HL8ZwN3N%xsL=CCVGX zrVvUK^=x;XPexM_(!sLC<6k7NzzMLKv{M+WA|A-D7=w^VI=Vrb$s5X>oGrFe!vt)s zP%442tq>#c%1jTzz!M#gr!Zn@XhUG5#rV+|Kw5x<1J`9&Ph;Zb+JPFK2!)Q^F4*H~c7toMPZ$hn(Ipv#VMqMp9#Z6?>QouliJXV}BdOn%9 zf(ehhBV&`aF~QcyA$+o(q#_(WQh`uNZL{z0+vv6cH{jCKy$|*AqbJmj4N#|)8{-a! zu|PA9-V2_4 zhIV6;cEPbh19_c|0Y(_)!2Axob@keAtaLAP*R3NyuX?Uz6Z5Qu@Q0WESq0X_B=Xkeuwm^J^o1_pZX-4x1=A*fD5bI!WEbnC`&)YYUTlHZOr zt3ejkS!!dsm_mRo1;=KtVrl_$-Pr$s%gAq-N+1~*7)`t}*>*D^n?nts>kUE(A#;GW zqZE@OV}Oj_@vtWL4f?!cE0ES=L24%=4CxF54cleXy*4J_)&!!Vr@BgP&_X__3Jenm zK8BNrvg)8Ce~DqD(q##5##kiyaY$W4hx+fe!bQ%NEROjJ}6UIvMvn$DBNU zqp3(SQ_b|Csv~7u9At1F$b;!TUBpj`p1TIf>bgsyoO}z(>q2+1gcD;K^&iPABj$40 zCa7D`$!T(ir^13IwxYRU^@&u#QR8-1Dm~4|SS1z|Ejf^Fy&qzKecjBLaDiJHd%x^^ zdx%1teC$CA#}#J9Ro0wA&*FyqMA3ZZXJ$k>vUOJjITJ-6x7r-u<}s*zqBVopP*(e) z8$+{GG^s>wW??hkK^4-rTF0X&sP64FV~=I-YbM*Fk`Sg87B|FjZOH|BSZWHta!kqm zW%WDB>moyGPpiC_2lu(^C#t8F_fV5uGl7>a08*ByuXuWSJ@>L^{~((uO+{$+cKT%J5W8kLh0cjF zEy9wUGZgAp=d4M1#5y^-vZv23>NQ+Zw-4I?_*!JC=X0V<7JH5ao9rfMPaZ_rSk}z> zYNvnXxsoCT*Wud{XYu@HS>wg1`ebWzFamdI{TQ}TXJEur2QtvaaAO#e;BjyQG9TICf|z%(W#N40@2%As1MR~cu~r9Q#5&J5h3S7?^i4i8qT;C z>_k@0J-=dU!IGRo81^<;0p38hM%XC30?B@m!Pkx{e{xN6Q2CRVS|bt?^ttu$39T_^tYiTUXs0>_@5))~ULzjdrdxBe2`cN06&rR=pZz<&( z9Lg!$PBm$SyHV=Y6Y&&CO!i7l`9|%wxT@GO5ZvGETSa-BvGtxtD`)-g#j`5a8Yijn zGh)UIPB?Rfe1vAIrYZUg#tJDzs3@7~oxLAqdup$jBe30Jtquw~**9S++NKl*gA|AD zcU})JeS*Iz!K+5g%Z$qszieK)a4M?FN{76;k6o0!MI+Lqbha3eYd|JSRyCzoh$t8) za1z)~KhV78u5V3ONK^qcz2#keerJsdOMo7T0w&~sM_dCOK!nDh<{F65Mu5xo! ze>i#f8&vcC`^0Qc7o|rG<=r!{W!+~NP2Eww#U;d7E^4=C>Mqd<+R8a5_vRfI89>^% zD?r9S!44C+!091}(Ii&1&0QU!5K~^qLlt;iIgUku1i(fIWd}fm*L2H{YI>TJ$;;&l~H(_Aq||el~p5^ zL_CMW1l_LamFc{-8DB|`Uw*L9d4l@so@Q>IlZIC2+d^cc_G;=hzKH7GeMhk~FP@^4 zhU%#%j{Dc3`LnZxYcr2!?xjC#9Ye9Fvd~kBE?;?=^nl}0*X9E{#ZC7Zo7Lpqo2cC> zb(ribrzmWrTAQzLVx-g$6%ct(3n&x|zc*<4}huT?t0pu!ws2(lE?O%!4SvTaxQ zAJ3JpIg_|oY5wGtFRWa{yvR7EP$Ln?&$DfA+%Pq7BGGo~IeqSkf^eSpiWzzGT?|Bs zUxD1Qlub{3E78UHS*PYEnf+copU8F|;A)QBnHtXEr`1Q-$C;SM=ud1*LI|yOw)Hla zgOc}~DjVsD%IAuRnO&-33*i?fkrrP`_kZvL5EZ@W47DLk=>A*jnq!T^* zChsW@>&MfzakaCrXyZ8c$c{5*vGna=MyDB6>R4IjBD@wC?Jih1O=Y;elj@Z6h<}7 z#)?|zlx1!{o>G@g$}bn1l&gX=MNUJDz!=n#S9qKt^QtXLDb%?4V_`<)F}>j8>lPJw zq^4!s_Ztg%BB|ZRby8XB$zFSwCf{cab>f%5VmBFFUQ}P)Uf#%FZT|5owb4Q4kV+x1 z*9SrAi9)vV{CqRr#}9+|soaT8$+rrYLUuWrBjh1x?#;z92IFFWTuPy=y1_C@F!bT6LEUZk(y<0%;OLw z@WSZut46Z?w&`W1-0@|5wG}Rw3wJFl%nz*iofEpIXX0`z*WhsEgQ-Qbqee_>k2zX1 z$jVi(?^~iGWxn!M>0z$^9S;uxM1o3`Q?ZlsWG~^&b_s6@JlmNBS-`p&EKu%4LJ=7s ztOw}x+g0=$va+F)PZo$0!WkZXn0lsLWF?c%hpb5EG8Bi0HE`yLjl}k*>~a~;*$Wqx zb>2To{ZKxFgg(Nw%gk%8IBaB}`H3S z**fB#az%KOOxIbW9F3u+syz9Gn=9DH_OTh|7B!2Wc~soVN;jS_U)#N+NGscR`%bg1 z=>u%P#ddL=_Q)$9Nl0hWBJ@>pRibEKd>D+W}Rh znOnW`jD~K?OwAlFH9R`dK_<-6m9*2UPgg_E!Za<1w?N%Pqk9n4zKx*OagyolEz zYq%Ql2$c=K2Z+Q7#UiM#a|b5mS)G%8P^~3ZRcynNa7V?%VxmGf_Yi;j`)09`*-|^t zlF^Q=LtG-dv5d(hi4P-LqQ}(}K529&$t@r_kNUf8AlRQi@&eQpvVFm$}&zf1AXE zJgJ9b?<_m47Msb)!rS_e%%m}h$8&9KOGyUAxEiP$(JUU72`X2<{Twwllm{?hybkQa zp4{H4u#1V*GGk$H#_8YYJ|A($X&e%a^%2WIVb(uMx?Rkprm(-#)L+W?syM;X+IM44 zeoIYFCCG8?g@8%j5naKRniW`=3dTfO0?r? zyufRSqbiR|BE}LXR+jTtfsJbk@1q|(_O77y+QY}KnYc=$4MgTO(XFd(M@`yHSy#3i z<<{wsPY|__l~A9;>EUd-f8?WOiPvN7)^yek1~JrR@{s5Vb?dgVcR(;-$ULZN#@_58B&D$p6{)cq63OWSY@L9iS zJH>fAkBTXn^l-D%K9#a_jrZ3-k!~ceeD8I#$QaYmBDqaUTOso4Xv=*{-70lv8~2DB zIqix40V#ejvUDzIr%y!pOeT8Y+uQci!BOM+s z*xeVn206QUBEUa zVa8p1az)30$C4c?frl#UPm8+puqwqSd-A?y$_kQH&h&jB)K}?#-d*Lg>9r82=M|0J zhS!2{7aU)lWFm*vZ&kngW*T+=e44lALJa+AVQEJqsBKjB@F-#E)M*KLL+Tx^ zPY;0D5dF550KS{5@KUp~c4;nrBUAa+58rq`m`i{5*DVQ9yj z#Ybn3KD9ijY=v-5JwJu2VCx^bG{;GWdxW%p=w!gFq3J|wW(8xzYuXKjw5Q$P5a-9Z z2CZB#d|vU`D3|HB$;d6&7jzSmi`Oo@28|tEIPajy^veBt--|O*o}v)0AhAwz(%QG% zh=CQsZ+>2uJiXYrp#O-%{!5nSzFnxS>mJ9A3neJSKiKcfI5gH0YlMDU0R6OsgelW(FT1P=fL-8rPLR*CQvElx*|?b9oyvk z##BdBPvjA+ESB!gdtzr_`-q#ETFB4CE|rr+gx;`#=FK5?Lf9nmDnS8K&O_8Tw_tCH zty}x%+FB}WMO(;{4AL*x(f5cHh`!+;2`$z;@G+?2O}p*vO%3+SnJ3&wV)C|7G{iGj zlhK`<%-s80CG2t|ve#A3_ESA~6Y(B4g}Wcdg?2lJQybab-ZL@XKB0R4HQU`@n@kp& z(R~4vl~JG~)8-0tWInLO>QP6XulbXb9ICy^AE@@`biW|1T?>t&Jw|@(<==UWw>T`V z&+_oYb(m6;_hxD-#_ix9+iP&D>K%;#lKh4$8h|YBw@qb}d8?B+LQW6*8zk;Kr>mXXgA9)YB}wwo#stU5&dCH4Qmp#zSwi_&K;_`VQGo8CTH^MR zI4Pd2z_~Cpk5^-}@6WF$fNE-^l&eOp!UboAcs^0V6ORHo*NRj?J2F@j$dF1Uj<1)7pF7unx z?Dx!=9_DMNwDTNh8?b!CO_TLp)&IjZH`q;d*6F#YdI@q-6wdov$LI34g2x$Fr5y?d zC-wwUNA2#k7<~1f&>le#{ z#Pb4%+U9{u@rA(}!J)XMcQ0aieA23HO^6=c%g~jv_9NP_EJWYn@6A?~V>fX~%k29k)43lZ_HTVN>53ej}+P6Mj=GgxDB)hO$+u78! z0S1?>LhyvCd*=DwA{4ezcPPV?nYfsj_XS=l>?>)GWILoc??mLWAbu*Qv2EsgN?Tb( zM$9&1`C}^YMAF~QjYi=el7=Ex=*O8S`?+IiaY@n=6=vIfC=Iu_la?{Q+d3yXKfRM<{1NUr?PD(P zoh%6^vpGnkeey?KcwQsj*|UF`)5gqnK2mYt9+H+QNPm zV#_<9A)KnwJc$f~CR&?gop98#)rtnAi`|l}_l^3jL@z#QoXzk%pTo=*VD&02+!6n( zvzwYVME``8L5Va2kGo1Z)Yx1_(^Vzsgf4nKP*6x}!tbkgjPAZ zN1U2){7tPIF-;3AENo@N6lPYYjV9)p5+mG%^F zjUrRiLgI4AIGzfW`_uMF8ShP;zCw!DZnBwXXY zc&p8)Bj4x-(FKKE;*$~E;)Tw5O#0c!#d&hE6iX5*DZg`M9(lBbH=3??>P^p;YMFh@ zsakhegRZJATI4>?d$&)`IaB7n_FMVRTO%d=JnZfzh7=YZ2&NC`k$2y3l{xax5}>sZ z&4?|@5dysXCP=G>`}fE^Vx{GRkrA>T#>SnXskEuX!JDQsKal1G3s%h|*OwYr zJ(oR~sh7*z?){?w)mF=LGsFlxuKV!Z5mUMZT%u^t$}+P@moJ-jy&sL`K79M!79~^D zZcc7dGwnNs>_)j#bI*3!j3M&h(WMAJ<@-Rp?;#<*cYWX`z3L}T)&xWbyWRwdH%H1V z!xj9Q3|dx6j3QS<#rV8K-LPb`6(i(JBabUY+%WGOzf_rjb$1bqf6nu)7gR=fq*3?n z;ogT{ziVlgz83Vv=`k+(7Hhf&=19pyQcpa+mjzx3IV)Wh$0ng9lr8dj@K&1{4~Hy# zhr}yi*}E6r6>|_M^Nhm}Zn*nxUwpjJChB~TQVYRb*f3N7xlaKrKJi5a*UK9nebU9n z5cBv8cJ;)RZ(uzFMO`M<$T&&wKvtWveAyF0aV3^J_dTrCzXadbtsS(My~+Zt%|}?{ zLuDo^Y_7_)FM7R$AIVjV()*;%8xHI~x^ke+DC{Pv$}7Q%~)2`ZUvT$!zpabraCHS zI}~y5Gi6`h@BE}J0c2+v_dKYH>y^#g|9F`SRzPYLZuaoPX=4UCBW=gXd3!?<1?eT_ zXFg&xBsY0{hnldXNw^}(KW@XeLOjADNul;?PwVCIev%N-Wn`VbRC89#1aUbYmmF^{ zCcTPh@L9;4A#dDv5{*5%WiAIbuR5CUckAcwjC(Jp?UP3%YvoQ+E=$6{I+rjXbH5G_h>$2;RaUjA+U)^Gx5^)lM1FWUU;uV zTJRjxJ64TyZ_c&&DUv=E6Nc+EU1iGau^X2RUEI<{G-u{zp+9mU45sKN`pJFv^1<=& z6Yjjv`^-+PQu>M|$6LP`k{ZEtsq(N*dPa8EF%+AiAvPm}7JKW-tk+UH9hc2jJDjx* zo~>9{^ga9d>F5iR7m~iWhvm&{tX|<B#43%jF6Yz==g!p3{YTQIuNj)TM=*#5)Wb5DUoMLx!HyIG_a>bCSHj(I>NPv& z9egXlUCb@J(7d|GC~0Zt-L(fpCD9shx-us{2=VAod@MXu}fppt+Efl^0JplLYcaZB!HW?qfRCcN>y@yxA+ z>=H>IG8n0#eS|*!A1a-mmFc`#7S`dZofmOwtZ_sOqH=cek5&3)Q-ILEEEgpeX~55%--8Wy|RoIgZh zv0!^6iX`W0SH1Jdot-qN>#~d@>l1OVvbzyg%?+D)ynN|Cas%uHzItH9-j%O-kJDb9 zvMnwYZmC6--g15pGeVw(S1FHt*vXHrkkEY^tB1~9DviO-zN#Q_Ae)woj=^w1xhz1G zSs{Y{%t)EyZT@?>B-E9cm=Fo1#n`gAIM1z*r{AlFYwPDeUbZKgG8+{kI>=P#LwK0D z963@E*p!Gjy{A^)bT7Tnq@aN~nZO)uyZ&#TdX~qt`gx~ ztT!PrkZy_d6@u#*(UUc#(05#Oc@h^s&QbF)xXkGN9pc8V9}5g*E|qV;D&if=wq^Kc zc3`AEZn0xi4)^SMzedw#!grkI;^z$ZMh@s+FbdMUNzD2B*yt#U%dHh3f!M8~A1wMO zM@1gHk%tz*xxB3c!#iI}6e`zY8;BRN-}rR%aEbTCjuF`lPi+eb-!;U<2wYx?U3??2K~OZ&1St?R zjhnu$brx_9ovZV9$*BdNzWU|GsYY`Wn}1w}MU87|1AM<}1G%BPS@nyVHt3uGeuJ_X za>=R0^g0dB_RQn~P(GmZe0H|ZAE=>fN2U9DE0o6IcmtZk}p z`NDphRP8XMc`$fi*quN2QogKlS7@y=RKMcYJKrYQ^PP{!H9h3S?am3DLR_seZ|i5J zXm(&Mwfut-JX^%r!N8krTGu>HNF-VQYn2MC()=14SDV@FfVQsmzl4JX*k}l{P3O2+ zszlI??a>-tj4bdMpWz3zKL|u$Q4bQ5P2tYQmUfOT5-_$aGlAP%9W!qkyB+EvsodbdVdpF7#@g(JT z7DsK5ZloxtbKW+csZDQdQ8E3Q>7?(buvnbws8}<%^FFka%kK-?A*LE3ftps%QM-{h-YXc3qx@8#+ z9sv{MlfW?sdE65|h9M`3ALi6*4`CLjMDIwO;c(^`JiJ5gSxr>LrjHAU z$v|4yu$m@dZxRA3oaBW1Dt2a&JQ_mk1^NeK)O1hSUM*SIKIn<_#t|N*cKB-cC9KU2 zZAp`n*o>bvjMtlq0hNYdD_8|h8>@%XAiUJBUdWIiM}x?u^-sr8LMNIp&o~3H($1gt zivvCrFMarM+36J=0+dwxxk9vYIeGV?o4o6)4>Pdc6x9*YhR&9!; z29RN1aV`Lo5o(r}c`M{Gtgf}p$XD}D3kG`|oA|YYYiwhTgX5y%iI-owpQt(<5x0YAtL;?Lp`)y2Aek@%%~1H$oFL1wO*n`=(EV zp6jN-kwxBbgAC+^ zS~XC5&5Q&p1MVg-jz{#}1w%gh6j3%2QEYW)cloeY2w!({H-AgB&x%Xcx z;u;yWGZo?F<+1hPGcoDb{U9AduMa2;b-#4&+2%mkxrCeMzuCkZ!7N#RKHddYy#IBCy~pY z2X#Ir7i@kA@HLOJ+janQp|TE0{)_5no)%}2h2ht;ND@(I#&H&b!fts^gv1Qfii`F4 zl~tB~N(Se`@$m~ROZLu=}OlK)APw|65*LH!*_bJ*)o}Jh~9@k zN_fy!#qb*i+qpKgtD&jO7BdChp99N4Nd6BJN=(K#-KHau3omG!$~7yxWMLZ1I)gxk zpr$$lVS*>Ej>X{*XN}s(yic?N7`uc-`f`P{G(t^|kP`0vdZG+ZUF9$2Z=$!SYwXzQ zyL^0`VK1!aK9zpUnijRYpNiI`!e<+G?>?re<*uczjl8m7IBFY_Dkumq`41-BalJ_{ zZ6=*TXhJp%RLW9os?*hUXt#5U(I|ye6#TX{cB+rMTkC3xL(myk^LY6?iFTF-YKHXH zCb~I@#Ln3~>t-&vn+MPUQ(vkc(Ch5^9oFriEg zAvi-l*0fx&>)>AAhgURpZ|-Z-bPwO|9v!WCQ%YGOLX|D8m zQMr3;0b~P%d#25*RE;ZH4Lm;MVZQG>jT?-d{sLSg6-2%tDXib-AIx8)LwAAs$N7G$P>_$%Jm6~Nt0Toqs%|<+1Tev-Y?@fte2@UjF z7lTfK7FlM+&iJYYN4;hW1h?v)r-nZ(F(M2r~g(V~deKL+k&| zd%c+Ef9N-Vhgr&70>GQ z&u%lE)Tb`zRlLqzjedL;rAJtS*{I2gyMJ5q*xzV)wwJ4j$!+(yH`_< z6MmA3@6ZCUKT~SI-|)PRBWDK~EoVb3Li!}8&h?rciQ!@NYAK; z9ag@r7*sSen|=r)VySVxo_g*sMH+%cD43;!exKj>!cBD-23XeSG%m)jF}+CMIi9&A zeh)irQPnJQJ)0yx2bc&z=i_Bh90xdIs`9}<=LhOs0Tg(^E_g)fu>iifD3LL@c=PLHYYA-6_N4MWKU#!z5bkuaA&rrUV z@8Hf8`celjo0(2~^nfvyTx*s&@N}I0113Me0RE5&ax`*h;Kg&GBg_K!_-_mIj3<6X zanv=F#QjoP%EUF6FSFKJnVtShF^9H#n5)HS+#Cq)Cev*-!A&E*Zf@0YkYuP_5Q-OR zlTF|KxTQMy#flw>wEt!8{zVG0*F>=eb?eG?lEgW1GTY#oXuH;Jihul>bPY{S#{f%be?# z4*Z$~_3TNP`FexE`4dGt!e-7ghQwag(tCp8fo9!bix}?OH+hIDWKEW4J1^zuIE`z6 z(g9eu^-8<#%zsV2k`;KjjGX)CR(yDJ+8w4YI%07ELOOd{Wop;FU^%XC;WoX+cQHH7 zclh+Fqsa9ec^CLZCdGAv0r-jcyyjY;Sq*3R2;$T0{-L-ZrgJJ#F5V$qKq zy49jO%l->~#}{5-xqfH=$iJ4M0-R4mUWN1JwK$7q-fv^77xZ1K6{Y&yOSC^id*1_i zueBsFrg9;^s`J0!-{?DV0%7U%J-+}NZ2-J{J3RfL`F;A@OFMjd?Ei1g3-EjRaWLU( z7%*Y^1N5KW(~ST8%jmiyMObubkM|#E$8>!WG%B2$*Dfh3#PTuloGN**ACmj*oZWw3 zm=Ixrq*r5L^YN0px*i1)wTihObs<{clI+D;x$99bL$j8^sQ;@r=|2L6&oi&z3xONm?}6i6Ut{f+>wl^y z{<)*c*Ei(Z!JZfP`ppfp>R|w`)%w~NDo5T_75rm&!0iMC3xV4Slrk~jeF`WEa;jfn z0$)T{)|sjWAgm`lx^4#yK2*qg`Ss4>_~b`B+w|~c%zl%I>76bGRZbHEqYZAeB*d%2 zMBC6zi9b`EMZkir{x`QQ?)-2qQO5r)a<2Q#65YzD3$y~7guAH0nPU8UIcfBIl8zGxdCaf)4)2oRR8$nw!-Sbg`!lhu zlwS=SR0Tsm{T!O$1&Pl|Fp;E_yAuwS=T3V0=(R$vgxD$=HbK^5!rio2k9}c+`?fAI zB`edmh}rvuKdw3lKB`@Z(!NK8Zf>pTtB;SC`G(Dg&I1q48b221pDM)k@RHTUQx%ww zgjX2jE+4u1tG<+KIcmE9vN=|=x8F%Lv~l4g_K|4M8AXGP_g>U$odyNtgA*BVY)aHI z_JkH8186A1S-l65wXR2l4Y1LSeACVV-If5F(EipDY$RU75L=ekIc!vHx2FCy1BP5( zD%PqOkkFHu$%93_@=Ia<>aQm)6F+OCQ0f)thG3;dD+sJ$FW#o6YA|AI4e@8I+qjH3mc6UctIENA(1Z>$WmS zLcZNIBz||;C{S>k&ED^y@pK3&=Gut-X*Tm`rui6Ju5t`L-NqEa+`RmIZ+Z?%YBi5| z!u6_Q;VnzH;?XN&Tlds=G0wFN1{akH|32YKQz+_{1!d3cljptTC)Ke?g2Y; zP`$mo@u)P$FB9Mk+e@Hv9MwtJk4wRhGuI<#sD!N;=B< zGdB6?!~KoZC0m&J#L?3B5Hgbo6eQjGcnYcTWPu3c!Ie3N<}uAwo(IXDMhx<@54@tH zQR=p=!$80d$kW(QN*?xd7x0!YWLya-i1(If+_>xx#^T9-6DYeScmF5o2(y!P=@@N& zi-VH3oa1~VPkuRju0RW1O(vMm3`zNI@rmrWh)pj0FE6Va#gTr7*vJ+B)v!Cy1%&Gu z2VBjGv8{g_WR@?ZCCrlM?*--4E{-6d_W0q~Yp6j2$x#X(XZ;SD*hg-IaaKM%s&I{G ztm+I95e+|?fCK0mXAB)g+zuk5yCTbb!l;W0+4mZPw-Zf+B%0ic3`)~|caHrLzFF`T z*k}#y&cboyq5mQeR@kr8Nlzl?u3YBAE~-%uW7-$d$QU7}De2xfo~xK|u_2^;);#_G z-NxDS&DWdl2&nZ`9Zcn0ad`r3l#=2Dd&L&cFu(WVQvwmtbm*nUadlzho8sDaLHF@! zjqW>JdD4@Q#S@>R*=)-%E|&%qf-pnOmHz#f{jYz=>$mI^&(&B*Ii6pN7f$U^_P_q4 zor9A=tweChA{YeE0tSpLlUvxI1{KfJMt@ymY!0LGXWtcbqy2~SJcUt%tP}8pGXy1`=;YnYvm$GI*! z%u)way_GUBF`6g-gTHYme6RTyZLhIAOU`2AHJzC_)=O+Y~hLV@CW@nGDGM zEq9wBPxtBmnLhyRBVZ9<(^4? zaUW9%eyWkQ^s&FvOoW*4@PEw?czKk1&$jhgN{f4AJq70QZtba7^FD^e3y~P06q9|_ zvA;E6v2}IzmBm_jOPSZU{nNPpvhpu!e=PRP#L?*I{vu>+!VzO#QX`76m-Kj0a+14C zE938HgvWdJ2}ZN0pF;RWXl%^DOS)?*(EOvD%ItSY22e{Z9g_x0-|1}6)W#$3Zx>5lrZ8sT$v5_~nAv2e-G?>H6+InUJ>LUaxkvqSR zYMFwwiHy6QJ=Rop?-`QtT9DCO93m|cWa82vgC>cj--xiQ}NWv9~Si@KJNzfp+&#dnCrIe z)(ND~gl~E&QYd#FN`+vBiFM&gi&|_{;z^bw6$6NOOd}L2;D}tPhM5Sv9Ah~&d{fNJ zOoUVd*6JJKp?K(@G{bUdw_R>;egb*;v<&jA>GC3{ciKtr!{@-0Nip3P1sX{ZHq2za zz^$>ZhsK}`AEbWx=ZX z`U>eR7AN@?5*n7n7yCb965t=B_ddndIiZ!0*Z7r$10< z$5IJCf0W30rY*9fCnYBwRkN#dsmy-N>c0*HXA0|aG#l#1a-?$C*sFG{i=lzEHS-IXPeKg;6FP z^9A~NEDeT8W7wA&LrSF_vuVKu#xM2&w8$$~_4k%F?`cy@oX^)5sPw6W6Pp^TtL)b0 z)j8wH0;;L?!1&jQ+t#tP?mNK+Z)v$0xHkNToMo0VxcP#ke_l9KO#S!8WwZE2i;L6@ zYwmt{LYeQvw6NK$W(ld8cj+($`p zXk~gONzK?uPlG+l1#|ghO7lKrmJg2;OGJ`KSiZt2hT&Xm;z1G=^5rbyr8jqdfT|-9 zN6$*LHRk@~J0hme6z^=!TPD@AV48Y%auC+=MqddcRa+Tq-6g+sRu7k|QBVJb3BR7< zCE*{OImsg2skJ4%>NER^8!U-G4Z8E(?PAn^mAE>8aGnu7;%NX%nnZ5d1=1YZ7nuJt z6Q9$j(iDg1SC6ojdwur!iu^96yxB6Qct>tgN$sfv`x}cq4XLfsB#4>s9I0UU$TKus zEXQo4lGo6cF{Lx?0e}VTxX-mi^mH}TjikIRE0J>-4`r%dz^niz^v6Ygzw1SRHpZIT zEi;2hnG&$Max@=olmZoH)oYD9veC`awUNw@=M?n!Qs2+(<~5FG{WT=RGCg=^r)Sg6 z2v)y(Wb<={R!e=Pi#t)q{3@p*uKV#W)ozmdD?($HhJzrmL#lLmnj#5hB_o^^|Wg5YIhXj`uHw9?E(h1m~|yG~7!*_WO7>uzJe9e!6h%_f9S`Q#hj5F~#zf zg>cq?3UZjL)00J}pk|r$i@P^YHP?NEZv~v?y|4=$Acu9X&X8Z$2Tb!v$kgrI`ViP$ z_x5cQ(;e)HX4()&0rWM31@8$Jf0#wDv7iVIcc;F|T3nr^EuEC}1Or9i1i2^7P3E*^NH`aZ?2- zX))}1Nj^{!;^l&eqxR^!V*@gG^J)1>G)aJ;3G6L3OQ`8vgO;zbruO zU)v}!$L_+CP5Zo{g`eBF$Kt*KIM8@Fhwc>_5S6;Kf0q2C8zH%jFak0!6h3ywl~ zg0XSu%HFAay-UAkJAqC(9fqsI^WsU`@g~doZ#ac+HRy(F`eS2;n?72x`-?2!_lM08 z?=0W9?OH5JxiB9R#q@o$)lc@Lk`)dwGLTX-3C4TeAStS^u+9PaMf>A>RL7lUr?jL#qtA1Qiy**}3Zct>sYkaiR zTN%{(Ip<;_jBX};W$eczWQ(^AJh@-~wC>JBm8V}h1nxmtxzK8 zM{D6_x~oIKbdezuio|l}r)byCvUaOD^~25k8d)qsZ1>?W;}R96yuXKkEG1!2yzRM5 z%p_nv>OB7`4C1ipmYUqKoTq0(!+G;^X(vUmp3x=X*At%$BUK5nR}9TCEw7<8rxD2? zo!@lPyAE0vDpQR8>o$Yd-H|Jm-ivSbg1QIG#yimR$0A5(dYk#A ztc|u!4S7UcbEE6FEq*(Z=iXei5yRQeeGMiu|B&Jk*MZUDX=>$4 zs?PiD&AwEvXmNXCPh^lv<;IB93*@BP0m5H9pIhxN*BHWVOZpeOWr+rH+_J=S`Jk+Y z&}FMBl%xGkFW)345`2~6&_ff-t1oq#%v>0G+dgDtE08nO+f5vlyJ^kq3_S7CI2mV; zN0SQUqu;}-K6t_*<}`fcUb_LWio5lJT3H7-$K&JO0v1|GuQo^m`N8>9lm{Ej?j4U! zDlvY$mh9$zDNT@HHq>vJnYI_+N*fJ^#>Ht?3?dg$Z#lvrkBoR6GUGDgck3`^GAJH* z#Mlt98%puYzs=K??t5VNr9-RnK^{;5EKXgRrt>*{5;TdMG?U)D=me@isZ`kR%88pn zs1$)U<9o>v3Y9cv#TSS6sd_4r)<^dQ>M~M~zt0fS?0(+kC;iNmS8rrhFSs${KnzaE zWMHS()yMul{OEwwN;2#(e>|P0_p#U-d+U&}O#VEm`?IxG;ZfUbPhgU^l=t*q{JZdi zZcDVhA?A4DV*S*8w^!WIWdUU7*U@lxY1RbVs;_-q3Q3$5N9TuAe3>E(OYZ8?xT%*_ zz|!;eTlkHO!L;(z4M%8l%fjR7il(ZT+Uh_dEkWQ{H=hI%!vXNiVlUl%i(_+diw( z+N?CWq&-`C7XH);e41LleH^>@U3BqHp9F0e-3iK7HxY~e8z>*+muY+)+jO()79=*M zvJ|Q|H|;dU#61;+6|{QyiAc=E^NuXWq%ZjEn{z9jxbFhrTJBYZrZ@;G7-RzDU{hWf}Th>BB6%JPP0&bhmG`dOvv0mH8#MnqY z%r!LD@w!O0vmiUcs2pM$mVC$iO4)s5n1^C1Xf)IK>agG^vH(0V$mWuWMxKgUEmnGS zSg{e{zapyam?~o7x>@nzy;o5GdU&vpgyh_iTO`-8nXk-;XR`|A7dhy?ByEmOPGQ~V zO+EAjk-lKuS&BM}S9L%RrFnwr+h2SyJPOB!(AaTKKPSAeU6J?Bpx)jS$cEf`2COtC z#`QDGKiWzDv57%9?cNest%19o(CM78J%`5l$3O?`Qy;F@JRc8UD>Tym{Fb%pQmqu> zAzQ46nc}$g@JDtWe&`j_F>ppu*{+1wO2R~WDn<@(r|h9<{ADG2DV@Ayveq06X1-s1 z{hBi>XUt0GoqcW;>31rY+1Sjm>Kx-NAW+w^RYN`PpOXZEKI@sga($8P%7F6IKsTH< zgPPr=?_PlHAOfGOC@E@MT|H=z{AGNBcv^-db0*N<4C-%HT|Kk*x}C z#xQ8-P=CME{(Q{m9C5pQv7IAXQZ@t0g6`e)h5*T_m=D00@&<+@6pQdXV`p-QOY59m zMABT}zo6mktE8%>8YeDTs+D}TIfbLy)33Z}i%)dJLE}%@I&R+XqStV~bZ_$A5v^;0 z1Nks~@cf`ry||>mCN%JfCG+WI=nVSP@>8uW4-@Fx8TZ!N!!y6<@IboNjuXa4H3Wt| z{!uBExaExq#__vRNr&$G`HJHE72_P>Wht8S)h+Wh?#F2THNYmyto_{jxw(i^$tAb# z%cGKeNU>KWz9dXv-h4raiV6=U>Hj4PxkHoJb3bcn^x5GO)$KP2VHkVo(Fe-nAk7xZ+(5w=CC*P>s0SNIOqw* zOVZo7*nNey%{Ls%lE&|kCKPJPIbXP56?6_y_c}w~a!UwWI&ijs${U!P8Hfra?7uOS zUEWG6ygz8VplR>jsMxdQmn4Z=r7<7uh$HUr5rw3kWuq6=6Pqp5Xllt{7eCm5npsFF zW(H^UrU)jzlI?n+`nIvFUUI4xg)cb4@AE1vCejz#dOrgf*N6+AFD)wTUD2S?e-?eR ztMp9ht_8lBy|z_e-lvxC2Nj`~H`MbIe$Og>m3b-pyMo7SgXGg)UBVaC`DAxnNX?dU z!+~ion^I{G;H?(MUU8qE`nA?k-;p_+Q!&&$2D>NV)EOb$>~uO=P{$!{+dn6ovqMaU z!+0&gskUD~!;^S`LD(Vcz?UDP>j}8OwZ0=Bn81R-UD_;7?}nKcXrLK{kaby^c919g zyuP-dhkcGgW^FEOA1?`njtz2(IRoiJ*DL%zIaeaIg4}T+l)%16aUCiUm!^de^TCFdX{7SnBbHh79ch*7X_OJ2_s+H>Wn{yJ@mi)AvPP)uRBzZPgf?%Mt=%5|< z)+7FmS`m{#Qz)i<#`CZBgz}{#^kPnZyYq&H(OigwG7?whwSgSnHFh;EJ&QG!F z_=2T6Yw4pl=Gd**%cwU+wt6O{lwt&F4AZs?6{_|+9!7}Fn9hLCuv;J5oesMK=Qj$j zeuWC3JL1Mu>zWW=xGV3s+FZ-+Fg@*@ZPj;^KN4{ahFmXSLbcB{9wVye-e{uWj{wu%fwR;&V z(VLu**Z<8%%v6h}|B3IMO==CG%3ki&ayso%>t`J&mR-2Ine35MUKIa)E6SEiYVS{W z@A=uZn)iGBhk~O^jGN0dcU=liNBQ1Iq3@ahs=OL@0aYO?2Ol5+&2;A`M6GcXbaDS_ zZyc0R#dq=t`_zFJv)iKQOpQ1MJ&gEP9$;haP+H>`p?ZG%P-w;c4mA<&3j*L{(6cLB zjWRo4S|Mc57FE!>qOsl2Z}X=6?y0h)>LM-GxUZx3#ii5JZ>+wSk)Gq37hzqDRVmDiRBA{-DC;H!@T(AzybWRw>tuk!{t ze;WR{KPmrV{-?;Vu`7_+d|NTWvV zq)$dDYo|ocM%6}dkcIbf?!%(keBRfT=G~K#d-rE>FU{+>ida%I6?bFKM-c)_r zcmce(kS0{3c=z5J5^3+?SfNCMhew!mWKlC*yG?)R_oh!@uk74az$r8tUw3)|ZC!cvH^#+_DMdFZZ`D4bOEu5On?nu^x(RG4-8Jb1E*7 zt8$TPJR1#imJ3`-Bn+Gh3RK3R;pWf~Ry?f*`_SlH(xId59GDkP6X_1ary1C3J22Kq zYReer2w%kEJ0;0*%*Dza+zN#Eh02{a$YxJaUb;3d_sTgM?_K8CV%ZFKBZi$XhitvI zNxk45RzXXepcyHQaTdEzUn2Rf-CJ96I0zQd#v08IwwQrqlg(K+VYky!a7|5 zuJUCQQk3c;8l7PVyK+BNVq=5D2VJA##Yo1d*h8@w246Ms? z-;R*VsY0}hAeJW&UHsKy&S6yZbMJ6B=D*IEOvL&xVmlpj4P&w|PHNltsiJKcwTUOo z^sW{(SNw$V%WsQ*yEk4WbRR{(BGkSr@tQ%pAs@-S(|F`OE%DAkE~Hl3_`Wo=dWalU zyOH;gz@l=tpL>R-FnHoF|EuQXFvdW`{&j_sm##*|&%Z;-UmVuU@zvA+*>ESmlTUwX zMEO3OuV>QdW}pUNDLq2hd;nJ{UdM|QjmC^i6g!yVFCmckZ37CmT-yo<(h@UcPt2SQ z2dq>l!nfW1;PFtIY7Edz2Et)|fp7_G3fxgQx9`i6J&e*CDkdoQ5m#sL%A}6DGIpwY zEvK$-SLC5Ax0UIk3AK#5Ki@9^UZ@3R%#W6Msitbwyk;eAGLN=rrd)I$yyTo#708XeT(QFhB3`0?HC<#anhX5P*-=Akm+0wb8j9F)g=B6ZfVznvOuQh>(QU z^|^nq)Y911R?t;}%++BWaxHzT@2mC`@jLpFVcdC^o1$^PuR7n=hqEWNYAdvU!4QJ+LqdRa=f&BI%xemz7)~n-3ib*`3)v_bw7bTiX=}7z^-w)Abm&u z=LHKgbz56P+eyE=y023w$AM0Muwl=8gRs3`H>gOOyLBvMRo*Y1)z;MjdrVDE&4)dm zGb9||3vRb?S7f;6Z)6cqJ#Dpk9*IHd~n!v4N+9(9cx9ALQUK zFp#Sb3e3|O_=ARenG+B554J&TaGCa(o?R(gAbVqf3|r&Zdi1;lG`hItk@s@(1a9|u z1YxZ7r-qP>*R1MGmEOM3OjGTmoX>XVtJSvg48u3Mmj}#RJ7n8|ODCHkiQPgD+y_i2 z4a^xXV}V*CxqUT^+o_OgZ(1#R46Pv9lM~r##-eO%z(`yW)a{`Ff#B>wsL;)T#>@w1 z0mWCE=xybBUuE_&OcTaT>$|@LRV}YZX(s+niQ_@s#MMEm%ZaS3*C1FE>nR045UDx! z4$_7m{uDvZ#03m2$#5+pvXJ%#K}T|!2KvkirQWONmDA4I#E?=ZnEyQPwehkvoxblu z=wtEypo6BZR)HKQxvR53BGs^^FZH9HIIq_l3-O3=c&8LcLvPAA=~6n+r)+((+T23k|RCL<@S*3)VH)Y^|eOn?}JL zc(3r%&*f_3r4yyYT)Q`%HflB@>Bb>+nISj+kfHJ{$-v;2 z0GJtlD0wbRS##wLeU`n$Vph2jqf?Pomt0l9B&4$ZH|ow30Dlr?QaPz~=z zTqrn=Z##w*5|*nqzI6L>1APbc_v{^Il_N&qSki_u@uootrY|U0OXId~N34HQ_$`zN z{bk@cuN0?~XB=PDq2K9WaA{0Pq%zDF9fgLkGyXulxPm&loxLqG`Tk6$Cfzo1Ldf>F zCF>T6jW9mG(2sAi`c~;gC2LhY)Ztc4_)>-C$&U|Behac`i9QI-hnKn-mAF5aPThO) z8b3l5ko0ibj>4ouup8OUJgIFN?({0@ug?~H;j9(sxVceK?bc8fI9VARM-T!CoY#tc zH++<^DM>J${445g0As`;mURCGM|{-jv~l?;eS;&txrbTM#RPbsn8opLd$FzTaT;Ra zUb!RCHp#(%VU2x8l=2H)NyJab#UZWsEGI-+?qba2>U;)r<=HgTlG2=bc;CfW-G7Y* zCLt09Iq0B(GD6O~z0T%r>q4ny&kgw2f4^^-$l9O8kMbCmsarhGM(v>pE{y_Dr?!|# zxD>@m3Gq~mK-!cwKwqFUwRjSlZTVXTyCb`=#^eaNn4Se_+Z}dtT>X*3u23Ou49?lY zh`zgyDKUy=(%j%V;J_VnI1P)XmSAtFpm(%_=Go8N_{uq^@^=8K{cR@;DLOWRzdeiI zu$E9N>f0w#LX6eLFDYR_ry%T-+&=y%vX`O6C9cou2|o}m6I+Y`w9>Q}_ORFc&N~zA zZyjw#qG$N$?btavA-~`^1b2Ne;pQ;VQ4;uL<7(%j_JM>UX9`}dc0#Cw>yq4gJJqJ3 zkWVBz`+;u+o7acy2AAbN_-v;?h=Vn=X0*8o{4Ak#<$*|l82rSkiLC?e{%z{asAYS)up-UES51oS%#-?P9Yp(# z?A_2R2`f+PA|4-u&<`Yj^lfTw)Rc@wIe*S-p{FkxT)v|h3*^S?YX00=s~!y~;@ECD zROEsyPzrT&zjQK@=Ek z=NnCf&^Cy?A2@RXvbGR#>j|GaCBY6U<;Rdw39GdQB&cBG0w0O7Fh-Zb7s$U~Y#3ASc`R;% z!LX}yT&z7KTh)vA>=%Wjr*+CYS5N&{Wt}#}roRgW!R7XlfcOmrBR3D$lC1y>JR-N& z!kyB)c2q#K*jT+^^Xrx7t#5QD|>gb@HtilurcAMK3wk?ojpQHEX}+qqa#= zxP!{T^(y`GfUi*UG)=O#2fM|cxH(ySce0!UnvqRYSNL9Q@C??J$y5FpS z@ISIW?w>lV3-$1?gquu#aQ@#yRL zP*HXQr-T?D)Jy+(!FAcb;{+?ioCN5NfL^&-pBnXMPzRa7$6x})JCnXrw->}m5~n<5 zuAS%c6f_)d-$gYIzAU?}dw;*@E^$f=Qh{Zr~7|J|W-}MBif-J9HwXlj$`?H-t!6bmgW~1)#$;M%~ z#P#=rYd??}2LU=v5Y06X+i&VF$mT6teX}aWZGy#%AmX z!6Y9i>8w5}M^_+4aXCR6wgi!HlDR z(^VH(x1}K<)J9XzCS-qLdGd1O<__6~loq~Eh?9;t&~>=pE#rp zPY2J8&#xm`24Sb=0L;B{jrgC;q%U{0kbRs(YjRyiGw6HLs$c!DD5 zy-xFIF)5BTohao+mnyHG2KA*jj~*rQ+NP4m01};?xMgH2B@X7*x!R489Q9EnA!M0; zIQ=gR@b2RQ6(_lDeQLx+-u>3wb2n~2WBPQDN59$qpx=$ZEuTQAh|_94zUAg5v~2#> zy^wrWcio-8GA(hM0^dAGD(?`QjgiTN4$qiM-XC|8)3C-zyIt)cgB^m-dv3GzQ;q1) zxxrG;%D32kUyx|JTHKZU{iHxPcuPkfn=9tKwi1pFs6>yK^+&jzxWLNA>Txy1=Aa1N zn8%fv@V3_91K}aefyiko&8+i}SmsOpOH+@2K7_3Z2t@L6A6LdlAGW(JS?AGuSOePp z42maof#C2F3%E-lc-=HB2Wc34&n#XX7X&8F7-E8qr@^5ZBMYUs5x==>+#XcdvWR1Ki9K8JTS(u zc^>v{c?ilg@#$6Ju@teSM;clLiIq<>&U>+)+!rEyvGSd6a%SC=P{A%B{&uEOPZZ!} z1F9E|43}&*_9ak8>-vF2o81jR>lM*^(2CoU`OtuuoYAAjiM{zr*|SCa#d{yVq@Je+ zGdcO^9?p>_>!R~o{c%%ss#BTz*+t(Is#jXl`?Thgj6BmGt@_0%*{qB7IVDhV6|{{I zuMhMQy%R_f$CqyNqNU?I2yJ#5l|k+K-ak?juH-RPqzsc>{y@B*+DBU<5zD#@xq?Id zKNm_=l5gzQPK4Al$v2v%xI#-1=N3;JfZ(*9>lqID0zz2aWaHt27%&Fnga!!jB6RQHJ%YAs$h~bz8iGhgy5}?T0sk_R%<#y*4Fx26ct3Yo_pTB=lGD4cMgyJfK})&rSw5tw(yNNZ7B?-47D!jBz@d%Ou^(pE|pB8 zR%XSQl=%DC)(R!kHiF*ZFxH3#yeIPEH|Ft33FX6FLuJ2njKG2k@Fo=!!`*UBhi**q z)^nVkH$gB>W;BP5Gc9GQ_vG7hsHqi5Ig;se@Gs<9wmArH`Mon)7Wfb~&VRtPOapX< zk4CkkTDC?)@FPFDDRPz9uSSEGg@lwIYT_~BsXa%=1+4S11?bAI-I*`QRkVn%P-K5D ziH?OE|a>kU50#)|33iNKq$Wl$RECg)|w2ViVBrFxW46QV}(M#vte z79#o@n5RS}B^Fh}l9KD|ue-KgeeQYf4tH3wzm65UqV&KUR<1nr%(mR}%eB?E+^Vf| z%Na)+NZ|~Mzg~WMuW(plZMJF4t+MJ|a*pj7c#8{pw<5-P%+c*`JKv|>w89E~ zj5rYZx(hFCt8TJMulj(U>Ytl$ZWny-yKVgkJg~nG_qwaEZWkVTM7!%f@7-44VvBxD zlIJVVIlGM4pe|$EQK$P_YxPPFUdI8dSDo|wcBc(DZmVp% z>8)00K^G>*kejPP^R@5N0K#1GlON4((;@wE&d2rtKOYMDyJ`6q=AEx~)!Apa>#x10 zt-bX&@jNZc7`BW7eAwmf?`*4Wyvdx+1&D*~Xm{9P!@2FImz{QMJNAvQ>+{)o|JSu` zZz)kG4RA>FACEe!-EG%h+Z|R}Qq{;0=7U3lQQ@`v=9|ySt==;aNV)8?_M_)Nr~kae zzAx<{2xJnksOE?AG}p(CH+FeC{^Cp8*T3_f_R5#NtgUm?jqN&|WwhDm?M`>OYd>^$ zeaQdf#rUGukie8U&6==c zyw$x9%-~)I)U=fqh?4w->V(?C1U6I^lL)mGC4WxC zYEG2%sY8^L>{Sa$poLcBRPvZ)CGmszRXkl95M^W!l8iVwqV&|bvjS0Ou~SvtIt7$+ zyb7Wu5XP@nK+|Zhs<+60aW4Q5@Eds{b^;)e!-6dqdXZNEK)`hzpMm@gIWclKfC9)5 z0T=)jK+cVv7&$H$*^zspNC3bG@-`fOf&3Z$qJ8|1yacuq`6l`R*nzy}AO7JVI=H|} z4_0(wF&g<7Wy--O0=UTW@i+1ig^IY~=pP6)_Lwr6?*uyU-#0jr<|ft_;&ID^G^RM+4h^b0@-c_5B)0DZ8d z0@u;E+ItFx+(r@k2iWCeC%s^5O=II9sDmrC345}c&7!U@C8}=Q6pkOu_ zh3W?YBoG7$4;Tm#0jv8+j=^}ehiVgiS0O}_k2X-9pdTEF3bYH`Qc$Ktrb8e<^q~*+ z#25erkS8R;K*7K;{05K$V+QJlZ5?O>AO{2(0z;qzNh`kp>Q}$&OhJ+lfrQ|5>j(u6 z$Q&y!^t=q9iRg=Cz?d->2phl+RCC~i72WUbg59AL30LFs*VPG&fj0c9&>50l2Tz7hs zr%+CnAqEAcC(7jjb^wS1fCqZQXk&~@Pa>0$6Yw8E5kMe318@l2h5$BsfCJ+TK=HAU zee7H!I)!v&i~v#&{rahMZ|%Xho*QqxsXh7uTeSCm>4bh@?2cP3*}jGGzG}bMw5zYZ zp?&J(AL_J(yu(nPde$G?wKv?{Hd<@R>#kwku35ZN`@}a+>d&8c&ZX@Y`|Q+d$e^^U zn(?Gh9nUOtN)FbqIsH6a1%2FJ@SUff>` z4Uhxdx)NA4dOp$L<@tu|u4^l-8RB@7{}^rY zbQ_Q=5v!_&3Ph>4ujutE5qI4jCG4}TlUYE%< zPdx9HOjUJMwV>j5x$+gR7by`(Ta@!zs#dD1uau1Iy(2kynvQ%Vesi9Zw`!wit+Gh` z9LY${RVKFqGm}^2iU+_DU@EeQB(EZA7D4K@?O>Y`Ecu^UfbZE`#$F0S;hM z7kLwQR3M)Q=z+W#xe;G(#qC0R;47{(J^?TTfC9NQzz-A-y!gdSs$KB` zz=He)xj1r1=r(q4q}&gcDagH%t8&{DZ5i@BJj?6I^{~(l-~@dk$HuOKSG?jCyX$XEHb0o1$jAk(ID^E^I+&VF(wpLyyPV>S#}@=0|cRwG-7`hR{xQhqk;n<0+@~@ zlgt9h0OSd18j@}#@>rn<7yxhu!hxh26GD=W@*1q%;{%We=p2$y1Qn=6As9h{MEfgqz)3he+$LG=Zy z70@q)5!DtD415ScAh{=UN25exgMb2%zz4}K=!dqr{RkBo7y~O|@Rk=KivXoGiKI{i z2tuU?=!fSpR`i9kB>*Ha5O|K;N>COCqzwWMVFIv(`v5{gk<=i9j-WRH0={tw2qG#@ zz(*(ploRvD79SWC>_@}=L0=rq3UGy$AfPFbMX)at9X4O98v`WwpbLPNPki=^b5$z{W^v%`;&zAjxo`ct?YYY) z{VhHZyU&JmZvrBHe5~#`ZwnA*6!cdscT<23>F;gNk~ECKfohA;)IoA84{7WvXq+{W ztXAV@1yNFP>N3f|AYGqj+ZX3Q%SvoTt5JYB3y4xBC(8n&(9Zj6@GO-`Dx<#5tLxqJ z%lETbc%BOG=c|563xB&o;swW;l0}!X5$!!V#J!prqY?z$y_Q??4sE5?R_%xC;@lh@ zrhCT?H|q9T!J<(Dl4O4tc~0ZUc{N8qb)UWs>c^|E)t>d5*Zxg`lyulEc`)_A0x4K1 zaXL87rtGu!my)qjVmk}HH34!R@NFdvsW3?P#uHhNeHI^~I*bCj^7uPGpO%1-JT5FE405&l-6;J?iZ3@2c}@^en7p9#nKfdsxUt-idqzfC}gWAO*P@fE45l07;NHLGO^Kpa=nZ z81giLAE=x_8^{-tYhdvj3*N}3v8WGl0qp|(KyHJa7~jz@@;~HR_yCvzEs;;@hdB~= zO7Q3l@%ReWMcfO(2URwx zoB{5z)Mums009AjDuF0S%87(wq8Kcgfdn6kF1GRj#lZoz_ztGvgGr*&0L%n%fe$8$ z!)9JKwqGc;3Yr<%o{X>&;d+C6%7;teW8K_ z1^|KxUVu*k&_FX(r$7!^<)eH?zZe7L3d&D~0ic2EBM3C+1K9USOxG0RUn`z=nn+}_y^z!6+d_e^CLY$TL4(3CwNa|fH|T)yb28R46qP#gzKOS zcn4z!0EeI!X$mlm#uBt}1MG>MCh})rbWN{3!C|v_yUq`O^~VmR;DFhmpL9;=8@A-& zbJ5i+w7aabT)Wds%XOW=UP&Ox-~Qgu+9MwNfPN31IS!)5b|AD(AO-(#vB7G?tw$Ol z=s0~&41|+`b^Y*wi^eMjBOZJt5DL#T;iy(1IEM6mm2ju)qy4&5L39-$RgO39cdu6C zD0?INr$koouYzp7&iggEo~8VDYFx9N(ymU9^YtWv{mimLt8(YbN($`Rc17!@;lBr> zSDkZqJL!Fg^aFTtxackizNOu~(n|BT;8EVI?O{qM@@bT;IT%A7nM$nxa`n~i(_ow8CE{-8yz{H(hrbq@Sy*AKX?>jjPg2`tDgk z6z4^y|GJ8-e^)Z*@>coIB!eT`Ptln)S=x$4Puf+sMhB#-ZApHXb{GGvt(pb!sbUQ0 z)s&n&kdS!qexBn?Ku$HT1Qw;fsznLCSKIO!Qfa9%Lb6lJI~}*jo|Wx^9H>n5Iek6> zD~WFEgQq}2wNV%wzyoZ@M;?vJcoZ05ffnD9Yhim1jxRtCgFFh0+sJ8A>4Cfp#Rg~x z_W)!;ZjIa*xexMOpcU(uo0g42W+anK0VFYXrk0wA> z2#+cNpn|Fv<&*Lmc{-18z*(2*135ny^pU$_iwtr`-~t#23NZjsV6h*$A962%Kk$c` zFY;*okMlTDB!R_y=84ExaSe;r$nB8ZV!6C) z0L>92;A|I_RnQ%UBYe>f@QI}YQm}mil^-a9L2?fOfGhkM90UkSHUSJ$QKN+fIgTP+Q4;Gl7NS(Q~_84 zKnlD7=mkIpG6F;uAQ9StQUYKhpLsA4#)ftQNI+px1%h?~{s1r{&!K#{2Ot;diTHZGcIYQQ*LJ=4 zHvJyR^VQcaZdcy0V&CEe+M(Lzk@wrIo%;Jr`aP(0aR)=g?*T#z&echb9N|+BL@){5=hPp3{`D9|1@aOprac9EXj(>g$LcU zj$dg---G|Fz<8EQ7>p&2$G2^%EGeH!JI-&EL{)ND0b@7e_4BK&G8g!H0C-z~D3y++ zDi`N7gY{IIm6FY>#C;apQJ-c_tjHt8A^)hmSzlHV zg|P_ahdlB(lX)Ll&_zW)^Ah9}$ZwH1A@9U43*?Actk--R`6U+l0lWZw;0L)03Ksx) z;5X*Cd>IMyHRuFhLIHpQ{tzGJJOFgC0L~A<1^_)619EXJ7$X+~?{S0yfEl%UE)&Ro z00<$k#D}>ODo2nbVnMpUMB$do9OQLq69pQ`*GLnL6^GqoX8{TwNC)KI$el4Ce6V6hwE4uB_qP~d>^06>8}AkU-RBUeY^1qv0A_o2;Y0#ZP9>}A6L zsE|;EoJ7QGILH4wylufv*%mD1cn?gZnU6R2=}N0(ii{83FM^cX8Xj}n?V4NH~6$lAA%8(!gRA8WJXcGXC8gbAB%){6K@bH8FFiuo* zKp0SMf)5M~6bC>Ad4oPc4}c*+5cx(P2rp=)uO5cr0BC{W@dLr(79U)L;sYqa_#wbF zpx}WTN{k(SqkSj~Krei79sB@jg5PnD3+RTeN+?6ac`0~?1|Pr#=mMZBIZ4u!ua`z2 zkU1zSd8$r{GQcR z;pPsw07O}Fxy4<7UiRLfbTH<7$1gE-08(&oT1}_!vc2T|Qh=WVSa*(`Qx%M);G+Uj zQVA{FclxIlzFAhe7Yd^IKKTSzVT@@`RU)JOz~6~RRnS%iUdns_TUYWJ_`2PlWlS7v z1$s=isj@-<0X$0;JEM8JJXZl*3hXP{_v@5rm9r{2n5r(K|Ik3JYD;Z|^CTr}Xoof| z+1OEajR*DK_moU%QtIW?{;Vd^E+@&(=<~N1AO-V4?7=r9(k{@3xJ*~{uVjF659p@} zHRWnb|0=tXY!Ky2w(|B5eF z)kCsj?k7}-oYt;W6~J53Ako$RJm!>uiE93?$CSxgK$uzmA>)*4VJO)a*MX7$APq)< zIp?L@Ptb2AJM=-c#TCGy@kiz3T^~8#h0xDq54fi0oVcvv$ zkkBJvLLSGQ3}6XB5-bv95gTnPPmn9(gIq}SSQHxI2ms`R8lRx*9y>#@kPce{oy2%p zi2-^cU&3|dSlGFN4|YJH9gG+E@C`(01HKo}BZpN!X)FVf1Q-FHqdnmZI*<>loTCr} z{i0fjJ1?LUz#EXm0Ym~Fm^0&WS>OtMn<{NBFbw3u$mOA<7%TE=6kBjN1g@dr0DMH@ z19#BeWonqY_^{7{d48 zoOMY*Y?iMmb|B?}J1y!%#5NtYiRzwHPdlR>^1+X`HSV-r{|zA4T{c+MF28QM{+i^~ zR$B5l5o{a68-VuRYlrrMFQ3#8u*LQv>M0GsuSh4oCyiakJz1^-rm8QML3fC=uD+=* ztK4cZ;DMd?i{C~;xX#@juiFTISNnG9DJS>t{&dobJ;1`}?oZsO|BpA^Tyff|^RDAr zJact_lgN?}?nm2~pZc42*>9GdF@?`Y|Mb`;uf0Cylh1uqupDy z_mjGl;dQi)-#AWO$3OCjsI5$ z^B6zI1Nwjt^aFUq4L%q<#zURvI5}U+G{=c{(s*zU^yi1;VZVMIed_(||HD7_fJ6C0 z`h$MFJ~e*!i&s}uUe?}j`-bcI{QmGS&Gn1xoY!x^@cBM3d~h8>ZQsBE03ZNKL_t*Y z03P9fwzJ08+cfZ(?dWyT8J`pW^(}KWSnVELwXL7BIw+^pk{J%Tw z3v+GZ{x!GRw$lM^@w4-r-rO)Qj9srk{ELToUjN~%U!H3R_w9JV8@i5q`+I(A$-&>4 zleWX_dOzqhHGZ8h+GRUW-)@`sv~9PZ8$Yk>{h%@BaPCI?BUPk~k|xF*o@}t$%5OQa zTY)GVOQ21SQ9MTT_@#TS(&TSExmOx#U|%Ju6=;#-Q;&y~ zFZ$c4>cQvb@!+g6lJYCbh0=d&Tb=r1jISF1ETC;A!GKAj~Up4j|0VC9b z!^ougZ7IgJuO$lCF;C?mSKUUfBti(GakqPk9<5jmsxC& z(vp8`JjOX_EU3UrvM(Hy+a&S`i>Ig#sXnNXzz&D0>ar?6#rOfF06f4h1zqf_+SCfI zQO;8>7P1e#-DhfU+<~HfDxH(fr#`sttny&mU5txy9oo=*(d~lrGT9lP{ff5nSnB z_>OKpV2bm_eFQ})pJ!(@yUy zS*((yQNo(|qdv5XJ<@etQ{SO>lKj>*r-bWI42rRa` zpbuw0uiFK*Z=Z+qePn2qhWNV*z|!1R@su|s5QT}b_LBmbG@q1o<31iXOCSa3 zrQoynT5I$w6@n{f*1dZSz5!mt48Ht#Zc|I*797oo=3^!KK&S+z$Nck9!+S zXmeBBbC-?d)+t5hIY&==d`@2GOS)Ac3iZV0z2bEWFjS^S$()Xr?R!7CCmn`aB^TPJ z1`}#Gs?`?&DOiC=lIwDpz|QnG1gA$8#G-wtF_L!LBUBsUgM?ijIfHqv5+bU&=J}JnBqVa5?hQFZKKMe1C6&- zXy7@oBteA+c!cq=k|$N{FnHDq8QNX^hCa|2`c#`lAP95R0GZc8d$kv62lru|*YUx*T)RDPul^4ov=88epIHHq zxd(3fLtlUFzb)ju0x5ixfCha^>neez{JE`4NoAEBCI766iwD7aKZEpzytT#WsBx2y z+x@A}Nok$v<91PXGWi8H;#=~yDRGE|4kcO!Xl8tJ@Lr&G+Lx{r2zp*h6~ z)nWe}FX=XGZliHLeWZeO1UH?>I?ogbay)Jie2y4zTA<~)JPy+s5PhV@+$xE$7THI7 zqw?S~;rgI9rvjU?ogZ(Dvn(9B)`Y8a{*~cOC>05ziAgHmshlYp<|w8M zi9WAND>4LO_(1P%F(VV2)!< zfe=@8Q*vD?82VI&9-*D;ysL7z1fnE^QOQW+3C4t~k#8M+_T1JUY{fw}%JUv`&$i;50CmC)hIHpvYRoO_lb;%!8E4dzkP-X}&;5#ZS=v=jWLlb-^ z+Nku<$`Cxygq@%k5^ee%R)#=Ua2?y07)SvK18wy>+S5ed6MT$Qx8(4CR_y53Ds3Ov zIVQG`Yg+Zf`*9s00_~HJ$J_wlC?l$471> z()Ifpn_!5Zqs#!NUG3Kg&47$4@#{$=HZb z&R5Q-qKl4yR7Ik6sq!$V6=kQ237j7(=hE?~el_;5bSc>-k6mHx_@&CDHI^L3WwU@1uJfr7fb*L29d7Sbc05MYd`^KZ1#(9~M$!eh zrKF?VFdbL2snxEADPRRL1P;H&*{ur(Qcx0$LuOHlg14jqP;rM=A$=pqr^@F-sEqYQ zM}vwKP$)xHsjEH+>sRRKpP)hoA5@&+EEK-xm^8rk6VJM=9sa!&+xuVf;QroWJtO$Bpl!Bzj6mHCXl4yh?AT+9Z#wd8&^Y*^|n?J6~q0Hc)#89^PIKo5i?s zNIegmO~68uaoR4ID-V1tzd6$BDltOaEDP{FVJvdzS2} z`i@z3Jykp<5M|0&vA>jvEAKQ;;rvHc8m@P4)7b`Pm~pVr-^ZV1l=M@%u42)VpT=)Y zFh_PG*%-~C)E`imXtUi%xPG{=(b&axRr8)|F%9=5f1P5V$}TAHRR2c$oNNy5rTbZz zr;(2){m{k;MA13(nG|btER?g+);S$lvV}S}mp@&(&B#`p(`)oM(YGQyNTWqj;JL`fg`*1f}ca64aqcwYl z%9b0gIS)j+(;Zr`Mga}*)}EiAz63-85Oc=4m$%K3pQAfTHK?N?EG3O;#SQHzK+@$e*$oCZvy|0V^sk&J>EPp| zP0{w$&Mah1KS5LcN=JzxP${zK!iZK%pQk>wvwvsW=!;)@Qe!}A)`hcp^JDr8-)dntqO0&vG zCp)FrTvt^l(*oXTks#Rs_g$kLMr9}Ia}~p)&E(fpe4Tux0wQiFszr#DJ1fum_f*xF z%2=g;8b7Fy@cAXXrnX~bOI06r9w}~g{c*pA?6zjmOAVypj1)L~04WqkckY$( zb7QPXp%cNAWGd81nMjmsJe4z^V$77`oF#BkgD?tOD#M$ctR|O9aVx`_0%W~61+OV^ z(y^*6R7rDnzdOKXNjf>sD&f!--%9bS;AJ5RiQZcs!s`Ky2O*dXffTJ8!8L#&08`ev z%UbQci!X23(t~R^-gHyj<6axJP1aw#t$N25`fH9kmLHvT>8(JNM?c{1bE|C5!;$lw zwJfd*_@`vho#fO$Uh+KwdA?tqvR(y3+E?{T$5ch7&O&8~y3gNTSFvpZ=R)A0>wiiR zlddP5J4Is+m_~`N+T7%bs%z?`(0&DMjh<&43Zig4?oX2KtQ@unAr**{Xia`9U(pZ# zrHUI5BGT5S6j*y8xKNNf*%Q*vgT@s2``oMGqO$#X9v>~^C6AnT&O1Jve1Xqv77zvP z-(G+e9At+NDpHhRl%py}NP3!*lk|L5Z8-~wQYEXSI7e*(d8~Tj^LAaYfDN||N&oq* z$C6GLjSH*9LEEbMg6oU{QqWGmP9+x}6RSMvv(!hgDq*~h-zyL$(O?P~Q#)U+W^4S8 zzY|zA0!Jzux$kfqj(nxgb!0=-epfu8{a0Ge68q2xdpwcmTiIWw!7L!y$bN7<6=0iI z@)>KhU6;R6ETm)Cae3_G{zB(D1)_Lct}7gWvJ0wXDoZNQ?)OJBHw%bDyOib(zTkHS zrjuN_?HX-+!5pXTztS-I>QVfl`lE8KJ^%}C{)+G_k5u|rx$4NK`uL|R0JSajja@k` zBw1!41*I+iafQ+WB-EQqR3%A#MuoO=>@?;S7&_-FnV_=cIelgpLFc%WKv#~O%o_z4 zm4S0-LBV%tlmw4Kj+V++NOKhsv;Qh+pwd>3gGqv);o_)nQi>@f;d9miEd8dA>sA76 zuXp6UXH7_Wzk>kEr{wfVAHNUx`WY#F{)l7G?PsN+8s$!RSgvik@tXa>SX{&B!8>o- z&cEo2xhY~x5UN!kdB4rtw~s!%SEAr;J*rP?@YGm&fSy1Ur_spiS2~&Kmx98?mr8a$ zI9Hxe1&EdG(aw1?K>baQTKjeS@vvEaLrT(lwWmJzN=B1Ssm7;zO#A7)AL(Ode>@qU z)p4oaVE{oJqkUDut=m2ZyB>tN9rpmnX`T4*6*rasRP<9id;251oOFRc##fA!A9WhL zJy4rp$yjB#-RG+h^zB%Q#>$6EA1XVO>;_(2i0#Q(3_{h%ZTY#a4x7ay6@e5UHp_92 zf=0I~$;OV7K(`Yrk4{UpgAc1@@O#=GJQbX)y-zl&(v=ECp}eRJtIT>IBM@Yk#6jaz zw4LHu%u#*NRMkV3Tuk}Q zPZ_S{0Q4E~Hw7n^TFWN$LD=+c+L|N%AXqq|6T=> zI#1FEWAbrfEZ;cl%y#52&YwGM)@20%2|lNvb7{NjrW@Px%dgN@SYi3O18TA5=hCZh z?m)|*FT0|HD5zx7H}rVWSm^`$nPqRG1^{l{=+LY3&Sbn3Ag21Kyd5QPRk>{n5Gy@h zNF|EP1L@}hH-Hqrg(j`uyDe}K0sYMKh76~@1{^9^9JktP>PHG%5--^o{#V;H%a%C} z2&gOMM=H_w1d7i)h~_ps1wuOKO27Sjs#;PSIyjL4JYGv6N@edzV+C=hg1f|158OPE zb{p>esqD4}j|rGdeotcw53JRXP##l&Sn2Nn{_p>`?|kPw9jM^>BgsB3&9%QJkTSJW zT2(kHZ5WGy*Hyxzd>t*CFrdW!qeU6#%}AekukwE?mgIO-;^(oC%7n)t-jDmk0!US*w(Ps|CU3089cY8W^PMR?UPyHa}KN?{l|b%@Ir9`9x22#@NPBhWnodks!ywI_#V@U?cX{GYOHnj~kiX*{y<4J=+1D9k& zqF}r*oZmbC{5c>6hs~zBvt4y;XI*er`@ol% zoQ1OXnrpO6FTbLLD=&TGz1n8$t}<_%g#!%An-nl;vX43Vb_RFqNuFI^lJTzQihC8r z)%H`;s`N?DAn8;!J}r@S8>71F^HCX9`NP7~*$1#6Y61fo;{ zp05OtR)*b|aC|yfwZ|L}?@RX0=}*2hVOQC5ok*2!P6L(msdDBjFeLwvJo3n1k#c(g zQb4Qftv#doAkm=mGgCIo<2UDRdcNX;>H_Z}uc;T>Ub;W|gQ~v-L=Z4kAK?9{ovy%s zmHDc|#K$!PQ8eJkbJbRb%6`EAI92OnZCHvyQv6lPl;4Z*_@u;@sCJ2{)Mr~GEz@9~-XM3re?_v013Z^mMt?|Ce( zFWtc$ml{aH{-8q+Iix-2F^_4RZ@&4wtpTnqZrmKCNC~eK$OR(_g$lYVO109UO!jBh z0aoaLLf_ROR}LaMLiAsigfalEUTd6!018gE@|(t>C14{EMUyt2V{%3uy9&OpN-Bcy z$feI)d6N24hn-|_76<3(a<$4#`nvH?&Y(&>=y))0mnG*PfD`~AIBXW@q%c8I!=XmO zjTK&(j6-Qrk%Fx}qkz`+Vl*eTlN@*oVB8@)4@ZvL4Wv3~HF6#tvyUl zulF-GN0n*37MHKv#dy4b-s|?LIvgwot!$%8RJGDZ=b}!`Wp7j&=yFgwF0b}dS7B~nNGB4A;=wcNnaY`yjwF7N*N`)A?YTVwDHu1aW~xLoUH9aKc3Nefbe*dBP+#Hg zjK(wzNIqI1OFk<3eYK(LYe%b`RZQx3Ck5)X3#3~GF8H`cw8C#{180rfDAx%5@tImM zRJ$>i{LSLKD%z7q9Fy}|>73#|Ul^!#+GSH0k@%a>Q|VOMWc39euU7el&T%BCxX)h| zo@hf3#d%2V=t&hHdosNKQu^sQ`r z1fq=i=5w3{)KI@u#S<#Ct|zm^lb&CwKBGAEtm}@(Mr-DqHv4Z@=E%QUfX2UyO>BM?B&YeV=g(%+W#RutrWr z4Tu^s4X7)Is$we9`L_!ugUhOvsse0W;oQ*ky9-HD)RFM0A||Jm9KAXz@86x4-diPC zikeoXrj-Fo$(Scb&SQ?r6U0PQ=PSM^;A;v*q0v`BqcW70fuG{FJFC>E8U&?XdTUQI zGAUqj`Er@z@BCj4=V(s2uX+nh1q>y}ndG{%57oUcyCbkCAtL&@ObOfR(NT%|n_Fd=6G2oi(v-?q%6PG=H zcb!OqO_gvhq>3r|Q|;^a45UoiE|p1LyhuE(?2+3-1q`PWz>!WQK%Ta#N^ac0`~2~H zN)~)>DihV;+81R%E%GHFP>qW^U-`4jhdK|cxQ%j+`==HRNvpH~=*gJdn`-=1GNk^^ z+e`^sqDN&rJ-2XMTg_ALv)gXUfcxd-r`69ek4Sv*HdPl>oS=4}po_1NtDYqgrCM-E za;knb$r*lEIw{Xdmo)F>2Q?N!oBo`RMQy_@@d(GFmC}_S@%q#l)lZHVnfyMEo%)$7 zPm=9Zdbp3R^hf23f6oHyRl4Sjk)xck$~T;MYNtI`U`#ZsmhxE7d98A#dg%*N9?y=z zYxM^%r>CBJYWvo=zSYlJ!)KX+6s+n1NJ+tqPS%~53xyI|4Wc@#_iF5;GA4{ig=-WX%pyn&1yNieM}hCiK&$XNs+*jt&)W^f2;55i zX0o43bhT}Lb|D~2O4?I$owB#(o;@u zYi_gct-z_N=RFAaMAl`Tm1i1oIJn~WI<+}U4m4Qg_+2MPE4eC{8Zc{8=fR1~S>;44 zIU*l?ULMd?fdJc8Uqsn-z%ltd^_Lnr>cNO7+GmycRCMDU z5{QC!Qx#K+L;U&M3y^{!jfdh^@s-O4?sHvDeunpfcWO61h*sXJPJ4V)`K=_U`Yi3V z>Rgh!Do*kMyXsGEor0DLm`Xruve%XUQ@KTwKw76Qnp1~HR`HR~)8)f$7L(QlE@<3S z$x5<8XO$zB^ytS8Lzum!|U2 zited>+BdIss(_kN+YTD}_^a3f*GFf%>D)bD9LclBEzWcG|1MWmoWZ`-r%l;i|2=)j zHI4B{l_)7T{@w3>w`@QPf)IRAZpt%K7A;zIE5O1X<0zt_Y{axIi5rhI_8CdC`nPP#AX%{AO)SXI5!PqaoFtHf4ruXSAi6FggVbD z5QTJCy-7jlEY6uhRaJ>HGO*5n-^Zvjr3O`lOb5Yq8(bCOpkFnpH14?HlS6Go=aT59 z4kPI!^+ACEfGEcu^v1UPr~j+>tuj7qa63g~(otzO#e1~rK}$8KO7}_USF8++M1>JCui!;xbk_)&bz)OXI}x|8eCM{J(K@PKA5_fWGBg;+HVhx z9N6;TM=OQy_m!WX+&kT!PyAlV>Fo_j!8U4@|HS{1Y~wdgjwpKyq9|Wg2NTaItJR{# zRGB#Wsb?}M|GnL10a4VqxPGR%Ev>Ms9O*cnCoXqvE5&}ecdE)tW8YL6Q|S!-3lp;u zh?4B8C&X#|6%e5@g(lL;=eS&^xUaIEY%j%M)pi1%YgGy9cChj_YQIN(ATLry^g?59 zw}~1HX+O@tN=`kd#eJ?5nrthrD_^I!1AmWlHn;1XpZh({@lrgJd?&8a4r%q5Qx7{wdBE^9eZ0*5evyNh>?Hbj9X#{9k)fkV2UE8CxAbOUJ zX+l0zfJ}u>$&5P$cQQH-ww(e$H4f^4`L`>v_A`2x2HpegWK7x42ysk-g*!_hzXxhA zhz_E75}eA&M@HEl3dcjoTsaad3!Z0C>GYdw%aeub^{1}fBM?mGg+>b%DF9M<#)%rO zG>^H1BqDxFlj#~{w{9m$hB zXw_}inFN%n^W=QUTeV?R&RFlQKwihLzYv^}ZXCiTN>l&2K?(N0#CaBc%Zvs8(e>=60FRZ{hD)xuG=K%n+R z?ZzzN{48>YHm44=)?{wV=OlV)jN%|*vX#~S$+nFuAt?twe(%#O)-?vGVjs0d>3$t+ zl0%oTG$!Y<#~wO1jgK`3;5{jZMEg}-q&&di6^P<ynPY0%?7Y zN_z#0-R8P1yIrMR>8^;BgF2m^_pYZ7S}p`^aNSWIm=y@4y{&S|D#xqh45cIWCed2u z+2bO{X$q*#dd`~4jQT$6oZ=wpXPJPMgAYEqBQgL|d_s;Yj)>rlb3{#rF$t79K?L?7>V@*y`0-Y6RyIueBZ|^LGYAn&?;0df=qvPC;e@NjNt*^qNFg z4qWNNK#erfvNffX&SfgVNdX0A!+)a_r~r#G zHjB6K@UU2QNG``p*A!rLOuka0?YJRQW9fab@e6LWXj4^ z>AK55>8goVvgOIaD^E!$FMD?V_CTi!P!x#3GumzySXTCo*V6%!98VRPGg#1s3)iaP z&d0#^ecoZ$8^(i8IOh$D{po4vK?ArE;- zC*==+_``X6ywERrwIYBNJ0ILuEMkURlPva9mrF>CTaoLlu`0LtwMMDe-0Y2K0$=efrY%Jby=W&u&u2da#^pW}T_OP5v7v64;xUd7yr z|4y6aFDj6LJoG9j<$qc%Q(C7SU>4crTpZY^OjIoEi80NF9|Cl4 zb;wC-bD8zg|MFHU;g9Z9sgbnz#E~j**{J?ZVK`q#PtCsy3ig{_=D8+yMfe`UfZZbVM5aePdhqqqZr`A}5#X3&Zzr;g7^VOb;UqB{)wHnj(N(nnw^7YJgi6%L2jXR|J z?SvIa@Z*1DM~XaY8+({|x8F~%HZ`{{1{ZL7S4IY>#`6&>v#gO;{Ye~G#5>g0xAXu_ z>)%(5q_YL4Kcz?dS*2{3f|O(O4jNhGr;qmkVAsRVZnThkLO4~7!!mxtX7j)Fqa!u$l@?7IF~NhEb#}nVRPqzY%bFS`i@Ax!WQ#e@dcS zVM8)^%=j(3r4l9M@;C5jX|S)+dz$=-fpj|+4*Yr<%*YTsDved5cU!TRa2ui?9yn34 z;b|*gqk@$gvQq~YcAXRWs24C{(4kg!&ylYiJ|yJDTV7H)RKTqSdruuh$B*We| zL)H-O*mJ0=ZU+0IVZPgbS{icjdXh7ebF~CC)ssqB6(7(gZSEnlensMB5ablE-M#%6 z5tJ$Mi?E1v#Uvh%T3JZ})1?caP&rS~fscx@lB3x;Bhf4y)zak*V=qIgwI3|7(j3ih zTE!yuAcxov=|*f!)#zcN0MDI!2>|&0XjI7Mu$&OEXC->h%9Igl-+yLv9cA_{KP8*Iq$r@L;M(@$d6{@(dXk= zCCUpItpsmXDJr=Bs?>uZNrn1cGoN`go;PiL@1oc_2xT8=&i&&t9 z4Y0ROwM>eb#cU7LbhtQSdX){3-l+LP73GJcSw6V-78~- z6(024!-hVh^eGgwVrR-{udj;5G?Bh~C*^^!d4@}?195`%f}5%0h5$5`5lH+)Hab4m z(^Ua{z217>Wp=v)2)Cv+*u)Ri?{DBE+j_Y+UyiNg_qVpEc_<%Ki~LnluZPpPs160j!Oe1{Ol6{g3w_N z4G%30LKKa+jqr+6DTpYnZ>ta8o0r3(>Pt^Peq<)sjcJoK6}^M`w|8wwqH|O!%%j9! zJI+b4rYY@&AJi&1+={28MJBZO>~D*$RT*IH>>d#iuRb?iIps45OepC0OqY&_D%&oa z_T(SAT#{$n+*wuyH|0Dnol@XJ{34Bc+DRj1bc zr?}5mQ;RZoYstfn-uK1(suOcv^*bwwe?n*8OG2$n#ae4^+WS4~K)uWe zXCa_ia)rG4q*W)xy(ef3%=jy|%#JhjdeDB*7v|>o!s8RBPO7?cW4_9%uB}DmXGaVQ z`^iHCW&hMn4#Gj(kWEW{0+Ekb`uZi1M<%py={q)V{x5@ME)_Wcwna&sZ;|W1D0+Y( zJ#tdv-wH<*+AMT4mBiyE? zx>-*3l3;$DUspc}SgH$1Ic2*Me2|#?zRi(ghYzXSP`l$0DqSqO zlx;{LP);vEaQ6oVLw;e>TtXEN!m%x%OgT(}Prlq&OKxuqk!!1(IAxC~H&Nzh;|yd= zPDNmriA0x#rJenaP&ls};oM2z9PyV6)(mshKmOCBpfD4`oMG-FjP*^q2mB`@vaC`? z*Za*OjRb@Hyn14i0NbiJ2%zn*0qeGSs#r;vv>dTdCC;dJ48|vnmnK=DAb^1-(8xzp zSZECc_EcUrRPwfiQY!V8Lu~1Ziw-+>(FnFp_Q;QBLK)|2E@Z@{7UEP2$LnEZdf&FJ z8*Fl1APJgbJ$J;tA*f0Aqq2*jLk1Zp1aH`8^&{Gg@j2uxr4yYam@jkwl~asmmmQt?n|GVDQD6CXgck0|D`{il{a`?*w(9QJwTs3YY*YI4z& z=OTd);U|^BrQ5C*qQ3_|&CZYlQyS9mAl2r3$`X? z5&>q4ILa8%dYiy45fwBwIFe;aLAPl6vnu)gh#B3pPHJZ0{FL_ zm$W+4w5vy#EYF>(tupQl*_B8LfffZmqcZcExziRHaZP_43eGciV zb&%A7hN+%17&mqqw<6V!`b`9CvXMu=oeyB&w~lQP*rr5N9$5(h6$MhwD^GGym~cMN z?{zK&XAZg1l*0M{EZ$VYQ$v(-X2{pC(n)GGeLDY$mKpV3faZ&VBYIMW5D=(kYbiC4 zqnn1rJ!kg{sNueN^f+i+6U)yzz8Lf@NEcl>{c-OKh*MOzX1W70b2FAs-?Ur$SmoSt z$SOVO!sx#amO&p)O=PC8aj5`0CJhNbdHeeWl_VCw!|~Tx9)~XkLk-#|FU^GoziDNkOlqv`gwk{B9DW)%-7zZs zS2Z=X#k_~Ms6Ai1orgXJygt5sD+KctgxmCz5PDMQZX+(4_KYVn66cQQjt=$AR|K`j zKiO4No!ZSD8VVTXtDPn>yWrXk zZJgU$MK;r^Sv_9721oz}Uaz+1cP0%T?PDw*i8l}vBJRh(8=R0FfyJ`|X`#sg*~EnB z$rOqURA0|m9FQ{>m_4b;_n^Id!zcdJnmk0h#FdS(gzzbt#x6F_?1*!(KNWK`Ijs?LRNG5_Gpr8frGW=Q0y3TgL&&=YIIS! z(Vm_wBK54yN*Ev7t|pCV5fZQK^iU@;a^q)Jhe3_oNi01Yk|yhJR~Ju1iK7oGGonkL zcs5mB*5_uk#7-D%6wsT&@P38Pimh@`R6BbLn2PrU=Laf5q{?$#ed(T4|*- zJCDHlM9Yl3A(X!HvnC{UVr`1HNgRxm7^qgiJAx)+K6#Lo#_vI?qST4w%B|`3o1;A& za^3%f36Z~GaLeun*;FNFo1s6NyF>3*Xh2-}=s%|Mm+_aXRZiOZ%8>$tCvbcBv9sNf z${=lO!I~-67XAE2Y~j*P_7f%BQQEnx)N(vLP=C!oxZcmG%aaq*Y8ZZMD@SyFV3@eo zmH#IF#h~px#x+dAeo!5Y;kqlYSM7~`)Rgbb-%2>GX%PA*u>N@Zy>4S%b<(CP=e*{r z`MmEfVsUhq4#3XN2z5$c&aAFG5hVKXmBn%HS*6+y)0W4vunzLTC$Khx}{ri^cdu3 z{I`G#f zXj<^}88*6QsXTvq5==F91}5wnxMl4=uO^g)Ff7pfUa=s3g}U4rxg^M}G^(DQ?i{Cd z@(eGAF4++?EpsqK$4)x9!KEGEnsz(QpbEDy4Cha$dyoJR^te>klUEaNuJfcqa5`RC zXOGK(CC`jv2&o@AWrvb*xmAlX_fK0@Nb|gcW5F2&(V&;VB(@YHS z0@X>vsO!?J`T~;o6-F^4nl_3BRB+p=!)!vQll_R~Yz=cX!q_=p87Quyg$PuPbSA z9E6@nZ=Ctis)%ht|H{Y+-ySMKgcL6^T-g6yw_ciO*mmSqkT#Pew^x2x0|=w!^9R#E#1I z>!DgV&styQ5kt+fGCAJrJUZG=vm0+_EfuuA+577q%yipn#@xY7Z8k{e?B+PiQpmRI z#v_dfAPIWl-Fk<7r^3D@+$QB7(B@pZqf5=rw7@;I6~{jFK?5B?a&7$r!HJ+FF8d`p zpO7x%_tP+pT_tW}p6pzgMtn0vGF?DJNZPyV);!2+kf*f}*WHvVNOuuw1@O*k3C0X% zmP&Jug!0nWu=B7}2hZx9Ht%ET)`~a!E)>A-T`qDE+Ie}KLW6(krdY=n9FSdAn`xqd zN&0r;w9G`bXq9}rPsPRDa8~uU%~p;V?VSueEYr?m&|-6($|ZV^Ac>x`-|e6zXP~vp zxC@@#`t{_8)Vsr1(Ho(Wtp{KMf0IGUdhs=uop*PpTONKb8xn>2sXTDOrR_>1feEU= zI4fo^7_bUai4j_1;UPVm!#Mpil_Q)JL?t=lwLrfMX^jLwmfsl|bdLLy;u${Rmk?=GJ zp?4HQd3HKBmKuyLlXIT@WkiN`p!%NGP3m|nZ2@nTXI045Ed$jQ?)-yJc(d%`7f@1~ z38wxS|9cTqHo!q~;^ZadFetYrFi(55=#o5@k8Dpg^wMA4?z(JA{Q))&i}=WM_lLtJ zZRpUOvtakkq5cI;n%df9Q%9x8LGKhUD_wQB(&;}h&C3Cqbb%floaM2!F-J>*x7B|C znhH~OT@;_{w{z}O!oOSmDHia^Vf~aEuKqGhK%@x2TJxN_AE^!z(xy)f1l}n>Di3Mh zpf9|>w_uqW5#k|{>o;?2kX8w}OIg5x#bT^*S3*n!6;O=ge;f}LXLA1esm{Gp7v;gZ zy}CSJ%~H+f9`zn|k393rW>a@Httz`+HId5~qrJKzI!lQADzEpLUp(Sn4QXwz_J7MY z#C|#FtPd$Y(Cwn1Ux!Khb%{YD^*VGlB%n$?21xTQILUZz>iZC(t!H$a9Sta%P|xgM zIXHfwd~4+<%Oe)m6F!vPGB-u>R=KD=w#OQZ9PLxKM&wyTnp9kNn{B4j2{cqQ80!So zZ!63W%SAt&qzzN1y!cR}Ay#RjKF$V%t~^9)Jt|2<+pV07igVl7)HY=1sMH7kW| zy-uJuLP{O+wSZVKoyRcanGfO(g_8EM+!by$1E)17;o!?6NnMUOoM=g7;ddGDeWEr< zsWTY$5V@(*n|(`u`w|^0SuZ-Ke!&BjIJcPw!7`I&N*N+7ypBo&-}Cv%exNcc{^@Z( zl$q)f2?O!8^o!!B7&*48Fuh?S8XWHE9C}j6_ffq8DsCS~6XyPra%6nJlGEI&xJ^b+ zv$_7r`z5b1(V=Xho*2?v@J(ANHBBP`f~^sSa#WF#z6x4vT~@ z3tJYSLdQ&Z+)}m0$nPy#G)a}#Yr11xB@MPbRiK=~RmkIC7B?j_vRiA}$1IEGValje z=+zvr78&vKuG=$#x8Ib#RC<6TUk<_z%{8!0sWxkVpSWSmJC^Ds*9IImq8zw~{J;w(rNe_`_`XdS}RL||?dO$ipX(T-OF0dumR3fDMI{VyYNZxc< zja#K4 z+1hmnKP=7!uiCh$y{IS}O4zek8;es3n-Qs2JFb%ualS0{S@js>_CGD_j~`RtDZ_t{ zw_6ecmaP)d=#M+=#mmXSSJB)-^PXH(x92^i?EWLa$dDi)tzPu8QGDc8c^@;D1~&mf zr>_$w03%IE`^_?6@}`&;$DPBolr##srgu|~{)>cUt=*B-8Q8Cc8g<8S{&H9s)4HL~ z$k^v1Zb~ZqfiuS>-q6ddr35gZoM)aoTs4C(vz0SYbQQf+5{ieTY!LnpVcZMFtJ=8* z&i>`TW&Gqaz+}+P*Z;AoYJZIFpG}@ArY4x~HunyiezLfo%)ERbAAY}ikblW-*_1Xy z$2`B*tlb9(YwXbnYqDI?lrCUjEISl1QErInbXCA7uq*mZ9a4zO&p(xy0yXJcwWCt& z3@uWzM=DuqFD{9=rVEoclozg>s)~vfX6TS67eL$7Fl42X{DZP>Zu;1m-Q(9l!Mnl$ z&uCcnxd3A}U2ubC3%DB4b*PW~F+F^B zP95Sip{$c!aX^4heIR!kk{!c`a6~7}Z}2IlRt=dt5l(dMgA#%)vk82FP!-_GY0D1u zW-xLqDQA(Rm*@>U@x6AmB0^L~_P^ZM`^02ofW~{LWyQf^C+6%sfmZsJhRMrt9-~(D5{N=Q3Kxhx_Ayi}Q(OxY)LACA1@=+Qy z378X7gZ91e|7!uFPLp;yK(zFRfRuJ9=_bRu)RTAU0+V zofZxuj!}Z`w6tS82=zo%;FyD&-`7uZ#Posnha^F7l&|z2CynN#R(HHS{h6!Ys@j?c z2+hl6EE}gr0cCWvJ&$FHX|9SLkBFAN)LhR*zdH8+av`}$W7uIw)42RY{2FyG8tFY! z%$>{@Olew{EQUO1*y<+;b{9YH!kx;IXwb8h`e(tbGk5BJbA%H7#CV_;f$CxJC%A4SGv zvEq1xR?Ag0(_2g7Lok@egL5PJ9@ zx#EkzPD6z>Ns?xe`{6-D`*zOdf8e}jRD!unu4~60XuJ>61W^&Z8MU#4h?J(1Pb!{$ z8z7MCLV-VBT?SqX=N*JM8q&TMo0OrgjNrf4xZ61`Up3EEYAst8nD}~@6$|G! zSzotSX;C}MzQ_Y66a&qvCotglFOsFBV--h+uDg~J{bsli=dLSb<(C`U9vfE$f+wSI zai0Qri=)QSgixlJHzrM0g((|uNN`Co>n%oI8yWLl9NP ztDmpt3?C;XvmZpdmIVXRILG=v}Mo4)K}KevNk#$mf> zfuPJ)5i84lY0+OKe!d&tcsc<d;b# zVbi#!^3I?h8;$7)YA*$8LG^qkeVGOY?cFTB$Gzx_)eFhi`U?}IYMyRfW_wk`x|?6lFyb5py-9!HDzhN9SoBiUuC47z zU7u+N^q}8Z#$zkDr~!`JuVJGtqqYu1B@tUAKl22>7eDz$yclPBztIAva`NgUL^c+3 zHgq+*v@ZKR+-is;NrLJo%fzM>tbxt6K>9<)G4Z3WmJ=v->y(CgolEnK!Pz_XZo{oH zWX3*iaOZAG+ybPgegVa5$zNId54+NWBE7T{YlsxPv~PV4I*h+Ev-1Y%Dg)Cr&T)%A z76x59_@bz`3-6<7XaB>;z*R*m|2+#5ukkc%aZ==r$M&Xz}sY0tz zWStmS?~3 zdI8?;Qi>t|SOc59E~4g(JZZ6qM%U0Qsg**K(d;AZ+HiW`7bC-3$w7+)>1dOyX+NMx z^%Q0LDwkxaIMr&u^0-lATZM^XIm^@694XYw`a0gO$^}b*-9h&J6P@w=;Pwc1fTB@Mqx}(E zGb%L0nx54{Iq-tA7a4+(d|I;zbeFEhaoBADuB)S|k?vONo9-{Z3B$C_dFo`MJsHMO z+fO_FKxX_t^!Ev?mZmq)yg_0)xdFwU;>}(PlG?w^}rUli_?_!5L5j=<<+6@Z!qPwsW#%%7nzbb zys}TfFI|>}HHBBy!#B~8l@a3^t5c^ZWx~#_je;~o!wnrlYy5|$X(-3w{%u-d_GEY* z_AWn~P)};Z8Q7fW<^fjO;i}hQGTSnB>BTyKI0SKlH)WjL298-j*VO4k*MB%+$uygs zHFfL0jL{4%`5%7g)4%VE;@er)R30&zsC;A33^oel?U(}q$qXt;r$+Q7xY=_5xgst? z6os)ALQOAxppq8bSR5mq5x6)f4E*D$lczW9EPzQSuKDmY8 zd(F25B5R>^Pky8^i#R(NKzkn);~86eYxNPi3d3-G5S{EmrS4QfQk|ZhW?$2q+qY7RoZfFTc!>FqAc`Zz+_#7g{WzW z5XxB-S`Q@;(agwfPkSA4E=H?o!l;J@-bQqCaxH4c{J`r0R$oeyZo=PL($BH?mD1?p ze!vs>Se!`>v3cf~bjCZ89M}*KjL-w+LWGXHTGo}TVG)VTtrf{qwJ6C)ruxFu(29TP zfxiA;NE%_l^B4wsNL93e%&YIk3=B-AB!l%v1u`75<}}autBTksX(nVaUt!A+)rX=3 zU+Z9ErQ_?!F?^0pO^$qeYIR$IUvbY$uKK#UGEC&{jCh{qH^L=9HFU!|4d=JAHFr5^ zG|uM5964HaT(5iDB+ZHx0$e#(!Cg2gB}~f|@8#ScOK@QW>5-?w@;l_MQQ-xw8_(() z18%!AK(FHkI5gv~p|?JuUhXL4<<&yvu%dHa20uhzR{)yhU1W%xxV=&c(BTb5FTqjD;;jlx4S)~l=6~h9{Ya9Ngd&= zt{~>~SeVdonAGW`VaFv&?=J`a!Dq`!HLN|>QJdhwHkJUFb!I~+H}^0`Q15Wx<#S}z zHUI0HUtNDV3=sPCw1HmccZ0a@e((#kUmbe0tzqv^dU-|@ix;9-qR20t0!Q&D_PkMn zz}S5LL=6Xvoi_Pr{l9-SHd}18{_-Z-Yc7uvP13g{!<38pBHJQ#pG#|_UuZ4~S(W@k z$&T>4s@4pG1fnpJRTelPO~+6aI$+Kg8c%savn5w9MRfZEML*Akqv+ii7pYHtS+A`k zUX5LkAGY>BARF%vI|-h@+yDik=^bCl*uTVi59-25N>314s4@$AxVUJ5ldqxC3H-Nj zTuS3+Nxw!4!~WB0K-f;X{L04-LENZ4x0+Gcy3)b_loBFdM0|C|)w<-NI`4-_I1qMx z(wy8-)+kOP!R=>GYJDl{PtuN5ZB-X_Vt^GI-uOYhU`7`i`EBOg@ z*?YQIv8<-gS9|9cudo(P-k1O)!r3Q=?RlRkfCWTeYkyRT>yc4;Zx~olmXf4P!+)ge z)4P(!^;-BRHm?DK#^16eb@6CXUXk|_J~!6fs=;X~h9KBtS#;AHrH@m-UJ{QOj;FJv z2X}w`&5`Im3fMOp_?}QjbDKBl-C);D*8KzyiaGpo6dM@2I+y3;Xj>7=zR7X|VyDy` zCXricI}x{gaVHl_3DTRUPaQ^26&WvS_hhWP^O1ZIcNjy5_GIJ^42{g`wNPiCBseGL zT?UTjh5Qnvo3qB$-negh@nYwW(i|d{-9N44%ufYdh-o5{5ZVy#c>QWi^We_DbdagT zCTmmroG1p{9LmHLx{YW4k;b8bKNIma5C&o}>0&I+cRn<0kMF9tltiohab53J-(K;B zP`INR`$lq;DKpC9(95C4$OzY^L7gaM5oFgBk!&@f1a}txAgd!gRDdiG|1+lP;~oI2J#T3M*;^`j#^oA|p zO9#ut0<}F2HM3E$iSI2zQ|iJqU9Tm_P%v$miylBS3g64XNO>M`P-i%XBLC!EeMX>g zt5sHg|50fhcM3k?TaTa+s78Xn00bJ6H=Cy!4T0sst87v?BUG^%-NcXQ+3>)MwSG@j zH}Lg8YgHnyG!zYoMyp$Lm;YgBaY=mpKOD8_<27RRKkPNtEQZ!kBdcRRpWiG;MK4b) zlN-K>9{Wh4kg%Em!Izp>L#60%$D{V2EK!4kum9DWpdC>-N2a;Y{I{bIAfBG<4HK%b z--~)5Y0oeIBMk;6x^rzSAc?#DpikGmm;%gDn{aUASA77H-1;b zz3CxQkNm2!-c?bU_?m9g)^gu;S2b=(v7JsL%a+M@l@O`)C#@l~d&gc`7Lf64x zu&Zet>8N>GGcopqTkV4>_|eoVg8xnl&c!wb1H#AS>YGNLM~{(Cp0rR3-XVsv0c?7l{HD~ke!g)J3x6xBNnA+IJnSRm$_dLIi7(tXS8l@^Qm0*@c zVHyn)G$@db&COP30|0Z5T~K9XP73vzRHQEy?c4RjT#o@f4Mc?zgu?pPqhhf!-3Su@ zlT3#*HASrlU#~|QYG%NLFMn(aHu$S!S&1Y?J-gcA3S+}7;PtCWKG#FQEkj8{Lzxmq zN&<8PH;4<_Lr{=n&aCiOJZbc%#8xb6Tu}>vD_UZOM!rdZ-bfnT9OjQu8k)%O$8>;~ zKVy%_{U6T?EiJA(=4QrU7i9RpKs_PhNxu*^c((Z7jK+-3IfWN98tn~Qe2LUK*4x-% zeoMgH^OxTYkUbZ5Zgnd{p)8q}!TvW7M^@_6m+QR6P5W&XgZE)6W?W9rixbb1{u?`u*+g`>+>!6r+r{Gb08Rs5ZiQ7eO3W@T z`jRk8TuHo+f2MNLiI5xNk5E_EH>IzHObA){du}PKCF#tcYr3?iR@gq5G4Z7Ssv!#W?{=IvAA<_`%&ZgMTHp(HY^)G%r(D^)OwHAv+dK2?Vw%8YDkA0N ze_?rKhWakVca8dgYMI?IYJwIOzL>ahuFX?mvILilYj+4M!)cVa0u&8lD*w1E;- zRGf$AzKr&Y*qI{=FSuZfWQ8NQK&;>Wv@0^X=DCdfKhg(>NB@E?%s@IHX6T^R7v@}q z@>jlf%OX3HM^sXO8d|3|5Ry2Omd2)a!L8{CnN2Nh&`oFOxp0tWh2LFU)9i=zt$B^N z4^BvtA@JC&8tZCF-j2A5IK((NTXJJ{_voL=LCT!{5*p1h>NuEGtyx#6rkLNve=qUD z22qEq-0$=>vFq0#WJCz*h(k#z{ze8rGxJ07Sj7j)wVp>oMLrZ$0_3@vcDDMv> z-*Mkj+Mij13qEPkl+4{8{zk4vb5su(VRDJuA}nP? z?%&U{I0tdYkLda?Dtqx5J84WTrS$IOIvYWigR47f)9?P}v75yDkTVYUC{}Dm(qNf5 zU9sqj-Gzy|s-38Vi*K%-iru+ov4X%&_6!AALZ-3OasJJy&4Z_15q*xK?N?EwnNlD4 z#`O7e;fY%k!^TDHs;TTJ{J)-YjS~x;SMg6q;K7XI>t(JExOBlRg`(J%U@ph?O5z!& z-KDEY+}GF16xps{1->_r5)NG)N?B-gi~cLMeaJl0FF4(wyUa;E_~FzQXsG8j_Y&Kq zlsz*xbrSfV>&7U3oQ&af3qVcDk5lWjov$dO^UpHHgaMR%!{~-aIa=ZUUei9d^K5XO zMb}G1t=E=GPVmo$nd9+z8gqxQv|Z&Q3f=x0Zi@hk>P4EM?Dbbg_iKI-Qd*f491Il|}G{53wl18}vDl*z)iVDM9N zKh$ps&?iuO586Tt+rdbbTE`-qT&-xijRSJtK|YQd*>+Fy!QB*QRX zWBIV3^M?F5;@~%9v4R-j?Xdu32j~7XFLWTv2Tl4~^03srhnk1D z@5MF)480z)H{i=rhMPnWiab^*egRsIw0i;H_=BMo$@T{|ywoF};tT%${JnW2n?t6* z?HKMd%umM2#l44KWJAn>m1%H@kC5dP&+2v;_r4C;dU*BdzOv9|yHQ}F?3Px>v=_dm zxUEbvB>Krx>M<+GbXxQ^+$G2`T~NEnrX%f)ubZt#CHsU+B6ptmB$y>vzfj?2S!mx+ z5)sTYrSGqjCuZikODk1FRkcp=E#GFBtf`bsis<&3p^@?0qOlpZ3VO+~LEJ zIQRqwn7tL3`KaL4`x$Z*8)y2PgDNQ}PR-%C=S8EmckgyJr*SoL*OUo%WD|v}o=ARu zV~?HZCW6Fad5BM!+5G#NP0*|4$$MZE4#U>S0YQ7+M@F&wNZWY3X*@I@q&AM==M| z_ib1ua^L!erOC)qHoHF`?^m|;@=WV|{R`85*m%diuM; z9p`O3fdP!Pp8(Qt$8pse<#xE-{8f^dGu@QvUicZ8xudn*zj>}ak0Xs&>fR4zwk0d z#vb_Lp)pTzy8vnd*K3Twi~!PT=K%YDT?d>s%s#x1lGSuc?5x*iv8(^psZP0m)5o-a ztN&02!fv^~Naa_D@+eKk9>EG1j1nQHFdBL|iQrpgnDk}UmG3mUn&iwA?r`1kB)q63 zvmZE%H=njH;hvdP<{uYEd`2hXTV^>mJIVfPhdMVaaBkad11h1Mr>0K^g&1`wWG{aO zj}VXeTd4Xb=Zy#fH?H3_K_tAw@%fCH7cc_Jpk_-)RmJ5ux zM9_iPu+g;5=D{BlVwGE@H+(x~K`hs5Jc+w1JMpZ+ znGxn(gW}eDT-Zz>$K7x^trH_&w>;LBJbX>r4BEMCa@xPLJBL&FY$<`!Qp4yeBcgwE zOb!@Du!G}EbqaW|xFZUkC}n@gi&Z*2@-Sc}5m?gK=lSsZ82a&l;U@gtl7Wa!ro|5> z8GF?-Aj86NTDF@9xle9oaq1N0ISHhRGN=vNB%m_HIsesbQoqaXm7mynvBc-|%MD@T zI^mi5sxr7Eet5Rb()VTpPk3777oNn5PdYUfs^3i&JXsMD+P9=htFmbeOBM{f2vo|W0~aVKU{U*S6+%>T|> zGcja&R~S|A%@UwhxM{q7AG(9fXvJ38yHx5qN!iXyD;xM((%q6X$pkuJ&gwH_ePk)s zPMZ+kR&O>Y$CU7i#nOZ!wv~P>>FgD~(?Wv6yEx6(SPAui8nQ0QSdj%-XV|Imh=mM9i_*r8vt{d@Y)SJ zgY+0gB7y!VfaUO?cSb2^ zrVBfH5pRA=h2lJnhgIU<=pB>juoFGtL>8MvQ{BGUc>n@VTmT$hN$mz9ZDZH#^Y26m zib#$y-kcr*Z2Z@sTN)Kc5lBCG`?R>|*hXw!+6cp=JOz7E{&Sj}>s&3|)8eAsI|Eha zPpOO{otS!f_NlZBqgTt_oc7AIYtj)twN8w}Jo6Pz$@W~N% zq+%x>{i5q0{!%44CMY2=?T$>P(U>fVWY}CyyhH9b(MxZW24L^+E62j5E6vY(1aH^+ z-NS-``MTfcyY+m@#m?(~$k7Q1E;qoS(bf}nw^T)s3bW%b3sx{!eQ(bjN#>WHka;zj z{S{h0stR>@!?*Btoow}0cBh^CT=VR`yG38#EoEVh0Ig@)HAO7co(Ut=1mXB8 zK_`=M(En=zQVKdjQF(i|zsGkLSGT+lJ&#^|J>#WMeE#eSyW7-S_V0_e&+qIuI<1YQ zNBf*6C}siyP9I`y!hkBTYkc;eUjb`(K36`v!KO{$MfwO_p}*tP%uve`T^-$)J(JKO zWHBuS2M5-D1ZXHktte!M6CDxLingVpO@o)Klg2TlR3799co#`M=ooWcPd2W(!0JO+ z4)q(WZ65{kH3r5IuQijb>rdR7x|^vFtyfZCO0t5N+XLtB_~e_n9%j+|N@z^XLP^XH zo6j;RXM21esDq{|2TmA2s<+l#q1;K z;%=G$n0xDsdTXzJ&(2M7-7Af~8z=Pk_sL(tGi^$XQ^;Cf_{3HyUjfDDUxxEYLWr3_>1eHVGguUX&MnOa-7Y}}B z&;<5wD|o4VpjF6{-#B+~INO54MZH@p;J0EA%Od~jpqgZpv&YF=mFzXBJvjG7cp=*Q zYqzFT`X_#BDO5}F@pl*r_6uQJjh`vZ+2z@}mrUOACVuX1Xtv_Z6nf$oCc5P%zYyf3B?s2gzJ+q? zQXsP0d8a?b=E0%tl8b|S{GmLT^6}MJc)O4G@tq&aKLrLenY$zVc=AjWK~_=ktv3a} zQc9qjk8L*VF7tD-XVIyYi4$$3J%W4|yb8DzZyMgQYULH*i4aR-SiKr5CY@Xd$dk+Z zuHcBgGq$x%OQGB4*AE!Z_$iaU>3!ul&*WoiimeSQ#D&e8jcR#FQu>Gad@NauZ7R9g z4iujJXqJ=$9|FTR-({+Ho>?09(bRe|4KKz*!>8yyA++GJp_aQacFLq(o!~&)P93tL z(Ydclol{2l&|n6YP2HZ4c`YTpTd|pbL8^PO&60&nr+IOc0(~w*mePm8a>t}l5)TqN zME{mMrgj-&iyt<;F>Z`obcB9hKgpVFg+cSxBP@;ibUWnBYG5vOI*f4)?4J1K^k*;7 zDaa;J5~DOIQ2=M6G@>O?@;ZN{S8Z%}z70RHr&F5bB;@Fh;kMgP8uQ#C=~ua*G2uoS znAZEnTtdgWOr|AwC7($msI46SDL30990!N=a|JCsSX$QsRRIFb-!9zXU6YN? z{q41|_o|1xwA@3bpxA?`gUAdpVZFTk>w+D(%)}BOgn}cvgc$NRz-ML3WJkLIdXd#_ zc&?UvPrs%roejceg6~M4(9g9ub0Z#dP+oPJTxM-M&w$vV#515N&A_+KgLkhqZB%Y)vkRVmNTwBjnWd!|)b>moO0W|Ic*w60yjmbo4}PNf7`>Z_HJ|Z z%CiI4e1qIVaq`bDW=Bu5tDyS(>sH~6{8sbIsBdmfv%u~a`&LQuUKbVSPOywUp#>Lc zb<4b**B;HA>szHD&V^`R~r|VTEF>g}dhtxqP?f;{V<6hvq1U z^?7xZ?-g<{w8LI6jQz9Z|4iN&XWheXe?9MG`{efofXf>WoW@^5QpEv_A zZTL^bEqLerwtrKqjbmlzFiAC1-+DO3zaRAkb&*PpyRL|0N`9tupw|f04fyemc4e-d z!R{<(@oq!w@vnpqHg8TKP01V2#~0B*X)ubuJ&&i8`Kj1#t$iYJBFTgQbS22qld#T6 z$cj-~>|5W-SaN40r+8ao_C{1JOZJbssxNHz%WV9?yD=tj2@LI$#J|mtC2BsBO3gI( z1a9eHL3=nQ$28K|Rt!hst8KiafpV0}heSIu;ITZMk8@<+VqRN?N&ahx=>$eGF2#L4WLvGNQO#1gy%__Hi?>bRMLKf}hS zOr| zRO-pT;>QZAeHD$_0gnQZIwH0jMgADFoB_1cN9|{t?$$ydrB~?S<+4^!F8+Kscf$Uw zjt}kn^H}0k4|+77d)7z)Y*sxkTc3W8u4mh#C@p-8JzNUQLBsIRD>hbHr8T+Q`Q;f zMC1?o1ogUPj?XlIDNq`Q$^{ll;>Td_NI!V6Z-Mrv-Uw?Nhm*Qr6<77$vxIRAR{!gq zQ5)71-dHy1j4&adxFYofNE1{RqnXx2wp(>*+`-6X=>!TGn~-Gth@xFvKP#Z!y2WoU zCrms*$%GLC*p>!nR0)3bxs1WDqm-uI@+;i7d@@u_t2p$(+4H6{itiV}Z?U(iLFq{t zOFoUl7jnHj6xw2nqDx#NLlLW&C}CIG>iyY{e|bhgd7q%Oto5w0N?je327%a!#pMD3 z!}38IQma!|OKXwNYB#+Sr-X$^)wg^B`Wm=`ELlU6gaZ28@ZDt<+05ytf4Dr&e3=D| z={dt_D`KGK(tuM!8x6#Qh?4-I$F1}0ufW3$0;V;|e~8gr-|}p1z=3`x(L9--3#f{5 ze`sr)1X}ula%Fs3KoyITN!t|rb4?7b^XOHFQ<0F02My!C%AUQ`a{u_!(DQA!-4kf* z!{w_l@i4u5cGQ;>m-ITp#PxJ+8!b?W9TU1fJhidlZ%k_c_0B_+^lvvAAd>3qFMoZ%jWWxbDAg3pH2)^UhxyNzOSevz zBV!Sx=cBONODz{~l|c#-wMt`_Q9eQP-Pm0$AT!a}&PuU&4zq@#NBuqGfQv^5UfqKn z)#J_R_t6UR&X{&(vf1avr>R2Xj4`En?*jG!!OiPyhW#m)@CSu4%;$ zo>jYejuazDn&t>wm)4F%$?+D_qAi9JKCbw{GmQpf8BIPI*!#Apxu02O2z!(||I3~| z^lZ0yAULRB&Jn(BR89Ci$Yd_iE1Jw z*Zfxo>-BSac30B3+UOIoFHZ58qC9>NCTv{Is`u)D>*QIvXU=@|oj$>0j|> zd?+TCFi>&kdv$EpHI|=;p>1VHovW$|8KLZ%zZc0*!oJLOIqCcT%?|f0C2K|d=;czo54X9s`NltrqN%QQA7hh(27rHA`L9)A8;ZHvF#5%$~j zk={j(>)xfKAvUTO;!pz}ipXGS|rVY#x|tg(_&-)35IM9&u%R zG2J8u;u}9XMBRDx-%F||f^OW)84en`rc_RbeW+*m(U<3te3NA&XU4`_Pq*K+CR3s5 zG*0~jjY95|fr>|XpTy=Q>{m>QfO$c`-c{RD_11|PWgjk?`TB6BS}0jYMCWK^N%Xps zMZ@;`49kdGjpD#!igj=9JbmPZc0VR0kT}hJqOBkpjnDJ`etWL;Vx%Z#K*v#b6VTLs zNAQ6$$|c+wz}z(9_a)b>-ECy4_FiSv8-hOHlxDtdxpR5qMl3gZDA|_llaDij5>ru! zm}z%uo0lQaUuK0^hwfv>E{YjGgAA6X!gELMxlg$0>);5_l_k0=u2D&^5>8_H&g#tjAK(q6x`)%T z3<`M~_a#^J$CoC9sHygd;don`T|G_%-`?2WMGrJIR-zgD$jQOwKwe_D^VlJ}x+jFx z6>=@}OIK!zg3*>$W#H@);Y53^0sRP4O_|t{tbwFgnl|Y^PYEVWbS6KdvA;Ga(GfVE zXIU!B((6i6#ezf>3!JOO&WIaj&h4<Ihsewqs7?vUaZi}r zI(E9hXqk*BZZ1gsEp>fW>sslsSg1tnZ6}sah0>RV%a6Ty&h5pw@msA|PuMv%uhGNB z#;t*z8||p^g>fflloQed?*grxe^7j<_Hx%%;At1x9F#gasP4({gRfE0qv~U2bD?l= zDAn-=u6i*(&l{LC^mts_2c%t0@z(sZ%|U$IdN<(UW`gn zipNxPpBzMgs;oVw#fk8T#|+(=XE*1(`dvk&KO$)PS|BUtOkRd~8TXf${i`;7nDe&u zj12w7SWS{6%UKyDP%iH7Eix*2m=f^MtPnS~qGn917l5_sHWliy)?qm~S)M~rnvM!? zfskXFon(likKH1>;6j%a0OqA=Dx5XUXDZPdBKdW%Ac-Z_&K(#tv4S~Im&JHW_<5zH z1rshHE|9`&d9DA~ziT>eIL%Y%Y{TL2XOCl;C@o`qqG63f5FFKLfCxU^M&}|{iU8E3=j zSM{SRQQ!3K3?r7)0rfbR^?(DS&)8F$;a8?T_vQ!V=HS<~ax2@Dg6e_lfgCW)9VnA6 zdZJ)nmq)k3TKJrn6_XXNCc1~wE9XL!%bnu}a?!;+T2yA@)895lm&pW$?Z9nHzm$rN zXL|d+I{Yst5>DU^^`ffsW6?$)e(j4b0k(@^>SMh1|QG^`-{QE7FmuS^y>5D%#-$-PwSh3OUH1!#tc&=&=Vj4 z?}GdyBQ8IFq=N)5h^Ow4R4{p3c8ngu$)7dE{J}*LuN83%Vk}-#)6Kn(6!Gg7q1*hL zZPlfa_Qd6eSJvd_Q1POaG9b7;A-l0HKJkFTyupRh50SK%v(9c6oy-mpB*Fo>MlbPrw)^RE=Y*y007GNTTBd1WNepE+(vKc z7!{2}NF@#yV_Iz3n$M7d)v5UbXWi^)vV8O^e?MEW|LJz#a?5{yI5+%Xy)vXm@fSPc zZ`z~bn~vvbH#V76FkYQ>I;79z?Cz);wySyCT-P`<$y%g(uRQ^4 zdi(&OELM8ue7QCvrtli3AW;3dguR9gIoJ&Q!bvW&W286i!mWKJz(n7Bu0koC(8&D_ zM$j#9rPCF1dfx75!C-zMX&4p}j<;W%a3`Umg$luH76(@qwG|)}#yOsQk`grmxJ1PvNh~8!FRXk`LbhmcM zCMeaXO2fw)nfG1+!&wc>^o@D^A~rUp`(K!FPn(sQUxyUfL+LV|m~j_v<2n1r%8WY0 z>5v)pW!AFoNkbaBq&$i4c~(n(bz*wW$A4r8jK~?Urj5T@>T@eds z2$U!d>yegr!KlSa_PIu$`~^G{NY{Lo@QOxX)3Vr=YdneAlMncxf4uXualnygQ2k=y zY4_8eJRCD&!}j$CX{9nwO4d!8MBU~N~Y8V@Xw zZE~idDfcCn&g7IFC5Ctn1)D`&M^v2(Dw}!Kg)QHGsIUeN0WA&s0HjlSiBj}k26eg= z%ttQ}t3f0K@_u>G9dX#h%xX%jFNiHuEO$S2MOdRm0W_O50&!L=J-Bpnk2wQItvmhw zuVfdtaLTXFi*En65+C4pI>V$}V6D>!re%A~-d%g($v03d#X3CkU1r`A*4*a9sL@eI zDPh>xFFy+7xrpB8e&Cf}?;PDaZh-3?d!1G{;(LXueOr3}0!4&8iK&`wV%*qUR^Mtu zPSP>d--=0vVDj!E`>Gu{^PV6}+DLOi(k}X**DH%Z9C!Kb;_{7#{jc&F3wu;x zika>6qHWoHWB`>hSDmh;!w#XB@cx7O9*JM;<>=rQ?9xu^{LCyLR%K%`l6V2U;(A|e zc;-%&r1mos$e&1f2sTJhoHZOh4WFRFgT0Wo7EJ}*7p5th-xWE3Z`v)}fqBK5M$XBD zC+SxmdkOF=zfAT3v;cm!@W26cY`q4-aZ#Dc=-_U#RH3u#l@DV&LClBSx<>JVye|fY z?Mdp~JJRh;ZQd$WCsOJy&yW~dJ(ar1KRqjSBoTNGpG*`$NvJQy1X!sM^A{ zYXD67A}7$Kg9@HePW$nGl#cDX*Dhub^PM4AAiL)ZcYb?+^!+cd(LjM8CO_T|FYR%( zKp-j=i^&}22k+8?3C?OC24%mpMH{qzKm56Gx1_Jl=ZiI;0j+AyXGN2TdXcxBWvJcu z>*-;=u9JHiJf>KdYc_C$xZCj=Ia_V5rLWngME1n1jjP&S>@i4{UmOB~fz*Ligat$9 zp%2*Y-G_ZaIQLsQAT9D8aN8wokLwbiBF-liO;0R%zj@daD8?FH)A#30z_wdrkMn9) zeqZg1Nf%4ih2*#LL%4TSMg5okZP$E8depB%13BnvT0>hYkrcig;>W0(0%0Ir`r~sK zsf*XAck}I}1=D|c3kDMH-Im+Q4Vhom?e0IHUDuu`=NLW+Jm&a(p~$uNJtF%<7ILOV z`r*D`tW9~TS1w%)oh6ZuJDC3Y25iBzhnjgzo|c&6}a{Ei6A6H2Z^qt-#2v|4YmthxX?uvpW;c>Mm8Q1j_zTzTs1pKsBy> zsVaV$sjHbg8nc8iPXa%|U5%_;=(qit33S3Y{N6ebKqga;l4_!+wZ{KS|7a7=NGlmV zN+sy>8a}qsm0#AV!>nxKNt`yk^!y`%s6J$(%^2&N^Y~3r{%j)aAL-A3?OIp!(N#AmnIbz(Ips#u6vGVUk%$XxE z?FtF`=T|DR0n$^0oe@hQ07|8N%@;vrFdvgY2}#A*vxt1?A_)>eSmHCtBgZ`VkwAMK z+DuPr&G2pGQX|q%bk5J5boLU@3;4rPHMhjjW-;Ya(z_4kgLhI}8OtC9ljrIKX*bSB z$7hu%X9Z$r2yA$_VE>?wU8`z-W|LK?|!W7)w5W^)6}O5F#P1n zYoIl~{c&_tUI2u8#T!8xLC*oR_TN`EF+jg5jfr{>nu$!z-lhjsfmU+o7`~#K7GaJAQntVeL%TKJZ!cd2t z_3MHf1}p4SC6$2oJmYKz4RADaugOC&nZnC<`uY#y$s|Z`40GK-uFIj(zEOG?^_w$7 z08Jnz+xI_BIP!^ugnmuiRajpN^ien#mMj&mi?UNAWQ6an$IBXh{^ahNVN>~KjfTdN&{wCkDM-`9Ps z(P0V&Yc{=p>c)y-OQV3wejJrFYsb|F_yZ>7i4`_wfs~arK@zyD`I2l6+x}QzIk5%& z3}`y1$$UnY0`b^cpuy~FzCdw*&-2ZL2Zy_r42qb=jWrJ)jc-Hq{mxs0z@;x>|wfo`dR(MA%;;K4;2RUxVizl;f%X15Rjo>_# z9c-q(8G6XH|Ukb+(cO zj~GA0U6ak=yoNh(!~8~l$Fw-qKhdjds^OfI7h5v^ir(UQ*<;mDSVR+#+gs@V)TW&k zbs0EN=tbq{wh*$in#w!%g}vd>U2Vx`AN8WPp46^@4Kh-wpl|*FMBz9&lOiP!Tj7S$ zb7&tAcO{Qe$79yx`JI@My1e!-7_M#fu}#ddJ=&xzJZ!7Nd%NSk`ijcc_DSjU3kKOMM2zic+sVo3L5bb8d*R;g<6_5#4Gfy)N_p{*^MS;KL z@w<_}IZ67J?P5O6U0U^IHc)F1d*ook~B451I@d@`DAFDo< zbN(2_{2wcH{Gj;2IEBYC>iq52_xw3VU1+ds&HCA+WAmJ?Bkj6nrMEu)*PBPzu;K1j zn{-zvOZ>6_$lUGIUZU#8%AW(Y+gr&Rz@d`X$LoK{+AyC9GUzDkJ&+5&LlP~;U)#rW&ZyD{(u`) zMg~?@k1B2Sshamd`)=r|^gQ>X9sjr8f=rh5S|Hj$$CpV}!h*KdpLk~N03YjJ8rC6*#65IK+QJbP$Veuc#|s)-%wWs>;Pn8#3)OS@NeY=%f0yyGmSIf@e|%p zbo^Ay5N{vL7IDz~13Wozvre$2aEYS+L zXVn^W0j`v=*%7Vnwe$Uu-1d5gppThiOmv&!z@&FgLutn#g6DwCOXn7ot&;5qhl$9~ z8J>0!DOXV)2Am$K809T}FMe0_t;T)R&v*eXJ1fBUEB%YlL3AYie|%bYGJQ6( z#K+~mHtoFjW#K7H^Jegs@%_Wdt}BSyon02ZL{xTr@Cb z0o^4`u1FRpE%zC*tCKj!X)BryNC0nhXq1{RZ31taUgGe8+Woh=OiIn(wZW&sp#Fy+ z(vPKCUOO4%^F2g_Qnzc)yV-JY2B`*^nZmqCs$o@IK=z4WMw6s`F=ne13L6H=b|4R~IX;=(8G=USN)wvEd)t z!AB79VcJ&0}yDIkngSn(Yt#_Iu8t&X&IJ>A+RxGD%RcV+7Uh!EkzBOW_npMc7e^3 zk?EU-C|O-Qi>R{DTDp}-bUTFja`jCky7+3IKkE@j5xrLzq2wZ~S-DRJwqt^avLEkK z;ge^r0hZ7g`{cV6&r^#tfgT!YE&i}&8r=a`9$rMm-s#7+2$N9=Ir2pxptI5~foyYm zS+)<8c^?CoPQlGuMc87{o{J7u`PR;d&GGF?5slJEpLwoa<7ZsJFgVUt@&X?^qE97x zi;y6*rJ2savmuWvV7Ov^`hM(UB4P0xwWy+D|Gkf;KPyx#VAaKg$Z&0eT1u{yA(R*p zjHS$DLJxtBJn(i_1oP4Zm@alE%1yDbR^R{2BpPaBk4n>^e8)Pa*cCOPEv9LsVF$(RO|y?c>(34K2FgyR7mkYcrE(!$Bi)%qu?v!)3;1l)@0F4-NqjAH8-Z zR`mz(Tyh@_g@qQjX}9t!_h)~kA*B%QD{*GyzovG^G6c&-a93-P8TM4#^jd zwBS6-!#E9Qev|z2ZCMlsmc%Y~132Vdj1s7eZOni?#N9EnsL>cM*XKK* z+-M6%{Z^l@8%KZTTvdp_4Dsi)E2PWvSn-O-))P$YeQWx; zT4RhmeCi}h{<|+mkrCUEa@M{%tjr3m7K?SC-C`P%bmIBH)u)D&k!a(qBP1Y_FjHPN z=vH_!B@noTM3}W?lw)+t=x|O$j2DEU%pxMIzAi>sQ;d%v?dtRS`~Tkf+d58UiMcIz z>`KB*4>7ua*2nQ@ar`=ls2sN5w>P>OW!eaQ()m8yoiwt_NQ*1uE?HjevcJMx_~)vh z5?UbD2u6F%YzyE)OMO^xJk3_1Q6_;xt#J|5--@(_yCm{aLc`8tr%ErDIo^N&O|0oD zY-WCH^u%+3bshrm)pG-;Os82;1|Xs3JCLRY4dbV4l(^u6HwN07>t z(%Qk!65S(=EAr~4G+(fbTp!I_JYP*ZB(waaj^lQtye_^jk^I51?4|EEFo>eevsdgy zbA^1>>kL|O2q3~*Aj3-Osb+_z8p&kHekg^p}2 zG$|zLGWL`6691z_>feT?0Fx`BGX&?+lqeMSR={In+dGGk@LGG@)SqR^@}+vk&DGrB zF&g0?ZwS~7%!mGNXHpkdjJ?|I_mlK)f9_aZDQ5I_(7)RMm&$(pZ~*Kg^$NC`Z(rJ2 z+RL!PZ`hFtKKI5t?xX(d_ls+jW;H2syngRXg@5~=0$&-pjxpi9pU?ki4Hr+C$mR-l zK6N2z0;Y!Oe17P}#b%Ot6g{fx{c@)zZ8e!=wDSCPqwA2Sqia}GSIgAs|H(mh8pNJ9rJo8@ zS?t3|25v^V6fO#yFL&Jt7o#PP>Xf8n`+4dHKTFKG!V25#rKKm6=kPDVT93G0fll)C zXhK7A$n90xc3odx>4H06(>>s@laa;g59qq%Wn^}uX|GLw&L{FKnUOf$iFNQb$Kbks zetLkLw0F2-pFZS1-{sOSqCu51zT(?0o}w{C`kdCRxBqAU9sOPU-geas3%<$p1BZ#- zHq2ptd5W3|A8t)h-F7}gfq1cnQ}gPh(%ASL_H6BW;el6514NX+<+@|VQD{#r$9#Up z{!&va?|KegC*!qcHEPkM6X_8UCtbbvZ$X?UsJG2${6cO-6j87H*<54GUh%_<_tJMr z&65vLCt(8Kr0;}F&ii?aL;Qq9`ot;vwf*aV4kmX}u9%=-a|X7>hYp&eG{=qp0(zEl zzuvZ%;GOyz<)}NcDqa6@ShC2uk+OGU@O(xJf(`1<_+?E(70g&p)l_+2!0Mja5{C z{DB{Ku|^>$aV~$xDfL9CkU# z8-VWCasCoVeE{Xl-p4O#uL0(wCEsQ*6f+pB-nSdf>HSJ0{?o4N`TYYN<@X!s0&ID+ zF>+3Avi=Dy4VXo0N9ourGx2z3b=9VsqG6q;J+Ck^qxhgzh>aoh5L`q#PV?wY%+tu7h-4Ft_lO8-i?oe6NEE2N# zHHD0UAy%1PpwE#eN=#$>vEBA$z>^Ecizcc~TuX_Tq)+&@4^b$}*eDVY)E1yE&!YbU zjhms=)PWZ>|K<`A4ImEN@x?|esCYWbzzi!LK}=hlDUBQSBe#^?xP;yWC~>7?&O?SHR-w6Y`B&*><2)&6#^QW<7F| zbJHdZ#RU?y<-!M8BNDJW{NU|3CtPrz4&QUb^Wc2I~NrqGzs7f}IbKj_hj`G{?N`zdrQyn;@>gKyA48w@>?OL%+T7l433 zyGhRhL2u0Bl}Q(xc3F`zL1Uez5H8_7763~itMS_@-a59tM0$=XigmKB7iLREyL)~W zAsPYqvne~n#}WA>Eiw@pM*tYJHOT;%Dr@Mn)OZJ4|>glgdocvR*KRsAa^CX$mE@uhN)X`11>cwc?&vQiK<{^Fl*Fs5HN&Rv5r& zr)$_nAt1wm)AemGXiqDOfPeFYnL6BcuD=o4uSw(FHFkDk26K|}J5_CFmH9Ov z-Jb+=86+ZSUDkindR!*NZRtL_r0u3wN-2GfmVlaVhX`gE{W9qzV`qG9wH;EvA<|h< z6Y(1W<(6;)Wfknod;)T=z-fao)1Ue*X<|3(d;zy3X`@91 zBAj%cPMxquQR+nn_LgeAucJGEQ)+o>ZM-(#n9;rvitX^~D5bQvB78&ofV@)*IR^qk zfdrxN@`Q}>e^)(1~@zrQwx zu?Onln{#{VEfOX;8iXpwpv?%NHN^h2mrxF@WF}`M_VRZ_+00qm&-gby7(#tU>JxI( zTHZ*yjxAL>u6RpfHqoOIKVlm66lgfc7*PKbAkUAx&zQpu;2h&y!_0Y0?FafsA39m1 z$WNF*Jhy&1vKT};e1?|LEdhAS^C4{#g{KxsK}1ZLW0DYUG6SRoV_4%Q5%iThi#?aC~C7p}Uo5y}nRgb>_A6ksV@3;Jb< z`ntjtX%|y-U7lDV8Nk+)_a>n)9o{Fn{ioXBO$@1jRFVV6j|gTc;qpz);MRQ&QMN81 zm}p(enJ$@V7Ku8fHOh;tMw|camn^pV6Iaz}Bk{Z>;ct4|iyh@NMM2|%E9@$W>fYO& z5`VQoa`!fY???Fa8Lkaop(}B}uYO}~m^33^m_H)P*RtKjq#zc13v8x+R81DNS-n9o zH%!o{vAynGDuUC-6z#In@}2Jz@bYaRqJY5*E+`8ot)vD((7TWS|ap0PJilg5mga8Y-TRPD-T8}AjVDYMmGNo!g7yIo+9N1fb*HKykY+U6XO}C6FF(CB zEEnRF0-YlpIv)?6@T4ZhF;C05m|_KMmPHINd;E!l)PEz&0SQ`PLy+cn6${l2b6B}C zl(1QCCjtQo91@gg!VO0~+5Pvm#=m*5c60>jbF#ptYABPity?l|R?3Zjx{2dr9+vZs zYJ2#3$fek)StD?aQOZs4O8JbQL(4U*+QwdB%`k^0qqX4zvr2+k1OzR3y<`&yR_bKM zrt%tRf<(pe0dQkLJMq3R`WnosQET$B%?)cGVx7lM+8C*2wy@qODR*Kr6hdZ@XB_hN zs*CYu=pxW5+KeNfyemeINV3j5&v8uvsrzWvbqqrb%l6?zdIjz?8C=O_@ZX)w=XE8M zlgp(n2W-0}7+S?*gV@_p*m9+&sAMgdY*MJufPw(UP*u~dX_NcmCT!*I*0l&}gjuyo zqRFiTmKNZ1RxTcQWWE8aZd(9=Bh)IP)zqnSv9NxAu{73oLNrG4Z1B{&VnX^E@ht$| zfn^7eAMKl2BZEP&GWwAz`*QLK%g3`*fZ=SGwad{ZtsILUoo5L2Yw*%@sVs9UrL!3w&kUAIpPmle`?Rq2I_ z!vFCQDvSvkUOXHmYT4^_dkev(kZ=1GWfR&t;qwtw&RuHus=z~8+UPxe@*aNAGQasf z@@Dz70m4i3TA5@o!UHDjn)ik@2JH(AEB{a)Ls{c`A~cP~I1pU!D?J4Y#6Psvltk7{ zF;k&bjm`xYd8)tJij;{mg$ zLu`YrN`Ph5cSg(j4eY1UL12CJY%CHUW2T&N?2}%!kwOkfE6GS-%VP z{GE%)kfN+EUNiKBU@kLx<^C94=*)YE){@S0YQzi_ZRek7UpQ3UeL7WR zu49*=b{KcE%HtoPfzIIWI$KfD=pvRKB9N@fJB*hcmdhBGJ>LI)Xnnr(5x+kWS<=bx ziH&H+mM^u867kaFu~z%^fsifnia)FPhdK>r!IT4Ebj1><@t+^MvR+b6vZ8O7U$s4V z80#J^c8 zIvhh>IA?FQ_n61t?C$@N4L!IW8VbdVxPfgD^~kW_*#RDjhh9I|&Lawujju z$rSoKl+E~TZ^NgBAlMIO!-)U%(p=K)eQ0utHTd}8o-a5wYjoI3OgFd^JD_9wp&4uG zhXtJ+=e6b@w-vlwl(pcVswkf=C%_gnIM~R?t7yt3#t?=DlZ-hSlzuv^r^OiHZhnU? zw)pkexVP!~f3^7ouikcF))k?;*hE!q;(_bTmCNtA2)SROH+_bbG}1k$TM*r~)?2GH z_9w*-v}KE8J*vhs$t_jrWd;q~Mn=buudgCn5jHuRG71y=Z}Sd-7PiEcx;O&sTd;cG zdk6-;^nG7j0*rdO$W64J(*#{eBXdYJko*=Hh%U}N9Og-RqCY6N4~N(JPxVh`nRDP}aE<>O9XE*$4lYjLtqWRP;DLZB>K19>QZT5AI98 zqC(2Blg@pdPL+cw&$NRB&_p+QLK`WKwWoNPowg){r1Y$(xFI7r>{;(Vlkvx+0SSgA z=Tepx72!S>jZN_bM3+6A*251W)@m7b}N=ZN)x^N(~(vC zSY=AFS6?mK8Z1*H$p5q|P;k|T#-sn;*Jzg(mkjGw4O7PxPv~`)-P3G{rg zVzm0yF~oqPrz|pNvdzDPh!w@wn4GwB6e>24m<*xUD5|2$Nw}Uty4Wh165HbMCUE4| z@}5C!i~Z=z)52ASb%iB@z!AE9_ghR94(b5vB4xYHMi>>L<>l*)b^EMIJHHI)<60rc$q34j8moFkh?yQuu4Vl^)L(p3Cvgb(l zDICb=!U^~2#Zf$6?@=J#fbJpr)EPd)J=kj7Jkg1zKLF*-6qA~H3*Wo{J>VUzUUowt zLPEHQ&qPie7Kej1)3W(d-@0OVP8?P569N!)e-^@f52uy5dVeRI#TP|{%(gh8Rjev1 zsd~5)0q)7Wo&7=_V7DioA)+cEJktSbtWAs&o)I9&Mz(MH9PskZUusj{*5j!-#wivs z5b#l8odNEtgh7IGLHVaQhDe1AT+)!Yz58eN=LzE~?kauhpoT31 z=|fSpm1E&@IcnfN7OUiS`~!UVfe_ZLSFgl3iZpt_v9NV{`&cowfR*RTg&ew6VFac) zDx4spvu03^?*o%1>c>!&S<^N#sK{<^Ah}3*;SJ;^_UA&|A3@fA*uRz|dAn&mD3C4} z+P9pMZ(FgoVAfahQ#rYa>+c3m;mC?CfU=_ffVDSVdpzPDBj+}@yrwd-U1e=gD6M_r zazp72QLGe@lYcFP=q>2NYE}1TWy2@Qc#+{{!3ao7Bo{)?i^=QwsChFyMG8aS%XA0k zJV!LSw~du9=1?r)wJ{<|tY8fEY)Xh$U`A)pKCi4DJ@J`y0ns1XKkko|kLY$>UC0Gb>p?2%!n{u zK>oZ|n6VawIXvE^jY=UaO+ln9t^Kn(A3&@^-T#*bFm9dC*_M{RSh&wT1yMN4O0M#ALKnC_IKv{S*{=rXKXoJrm+sxME`OepAKB;XC8Y4#?@e_)WQv zZ}D@ml{}uvT}zBw8edB!xLLRLu8od0NGhp~QUN!FwwIg;Wgv6PR+BT^yK?{RG=kN+)T(u=Oop-m~qNpmyH*!gb{OVvX}q_WkMd^ zApPYYu_=kd-+scq!<~ZXSO~tvcv8}aG1?)=5m2njMFj1VQbzi9p;V%2H_k2V-S`L{ zH|uJ{GAeN;c|I2QuNveq7vz5EWKEyPRq)7!K94>@*r%i~b)Tkpf~T06Ue(eug@wdY zEu!0)cTfN$d6cwl%e-Y&Jv|CG0Ta&gZTJu4G(uQ!OA+949|GvHQ%#jJ>k@-UJ&(23(V_+b; zE9dY$$*wXdYYewr6FFQF3L$#O@mxTt;Ial`*RTbNlX6ez+VK#nTC=JI0vWIZ-HRPGB9 ziP>2N-Ro(`gT{w0318jrhqcE)euyxAW=M*B+Vkw7->Ro60n*iTwpCllR|6R~@H^5T zALKfdC*IEKT>ao-mLW~vYpyO@-{u%m$@v9w?q~d-@cD9Zbc{xjvrs_>yn#0e>y^6C z_g3G2JIMFzQ?vD=-}Y>-Xr1q75!qqApUFk|`Lu@b_pdF}NLA{j*9qPT-^864MHwfn z*qxItY!di%SG!7Q@^M1^rssTvp^;By>2-a@LlcFM%JSrdRO3<0MVv7G=kpOcoq(dY zgy()Pl)ENCQv$03WW@Mm8m&NHQV~Ky&yjylOPhXQiRApR)_>5J`3V#5bNtO-c8j!6 z+C+2t_fY*Ui77lVI;%ch9C0_v;UIqh7q_VG^!Ib+ohYK-N-JDFK^$i;D^yAkzZh+n*gqx6-PgPr$++ssKddPhZX02lP9fm zb8KQwn|QFfx665>1ZO1x`&ES7v0ESr>@j*X!5yk-cag|k4KNuroHuZvVm*(-_Wyi> zo>bo!E5NF0exjniCGDL{UZh4M$1lg%QHa^jY;pHpCJ;vHU<{l1^$%kzsJo?x2*wX% zfh7NQl~HW?Y)$n|vvhB)l_S|);02X??Ly)K|AOyYWU$gp@o+Sb1=@o~sk#q!AqRK% zl&^WXKL@PGL(sK+_r~+&$eoYD5@794e4f6MZyhnk!=a{r|(mTKf zz0l7bs|z-51*e>tMQmWIcNC{Ia7{1_JCh=QKyNUUqKj%5L;9~?D*kUTh=a~6b8{>{ zsrxrWuhzrPowa)Gzs6M{z|0Au)~G8}8jD->X8o-Dj9&i$v4-)oN^CC-l&)%?PCO2& z*P4~~UI-8^n!hERMuT1f(;16xrc9zeN*F4BVee<>) zN9Wb==K$rV!-Re8AX&!1@gV(J(HB6*FIn6@J?)a5XIyz`^+N zcW_kD!%I$VCxJmpPN2~H`|63Nc8%f%=}M4KDLz&pER$Wbs?Bw&*Ydv*=onepHA&T$ ze9#HKJoEH{zze^AF7ut3|60sn{=U7G58`d_iBGD>m2X}j;TnD4u+n0+@*J<*QJZzq ziZ`05#P}X#FYW2Db3_yQ8yEM4*d1kjcGSP?VwckA6^FNZKga4C>A0`@z>R7CU8R~- zA#OxEG~=Yt4!7fVO_ndHdk(iAI@@b@$kM&XP0HBEkdb6AJt1tU>?%s^%Zir88ee|j zYIJO-k@=OM0bZ+Kayljh2MMG=ic|m2$48!R$#e3Y;k{9^EY&I0(9P}XYQ&jdY;TV} z7E>58KHHRGI-D#aSczg}NsnP9vEUk}%Z6$}1KkMULc)%HWs*Fsa+@TB-6GQ1{{A8;PA1=!vWv8BcYIVt?&lsn8r{E67B$Kd@f1q0|0?OqvW}u58d>G~!>nf!; zXqmuBJnm*GAO)f0-UVU`60Txu&cL`|0@L5Y{P4Vc1Ni@SZx@KdJpxBEuLQ39t_J<| z9SO#lI6?#|{X|)K^_vf_ReL`Crf2s;T>uNn6|&CCvmSvo%Ik!AqAz%>@NIaehz2=_ ziy5wMc%!T^ah(dTP!;IhU;Vbc_(jjJF1@&_W00)7@#f{|qrOo7aLI+`dC%FtSKjm+ zr+>dJ^YHyO+w|8?Jh{Aluf5B6&iroq_=n$D+vWJq_kUJiwf9Rau);wfa1TD>3&)lp z{os4$++UnkK7Z8lGn~d_Yeqgyhl~%R@O*!~>K!!PlZ> zP2??{m(sMj04XS&$eVY+``yFhv*Y*rw?*FSx|U-8m+az?B~?E5Z8?y_nvm}2;kj{h zss$+f*F;Yftu5W-n`ojtcxFo%?DAyMyWr98HJ}hny^}U%xXSyq-{#C?KSTfgJ%}DD z(h+3;wEzv#L`!#gv_{T>N7*0r8QlOK9X<-Ez;CYO=|K)9h5U@vbCnQS01P(Z@j}^d zyX|V|BcVNvC1JoE5dZ;n!2ZOh%nmOjPf~5d!vH|w3+Q}!xNxxXN<}}Cy>s|;{KiHk z$-Fi%uy+Ar0C7grKlOo7N^BHB7~bs%b{(EFO1O`=3}MNHF9D>GAYVl!@Cc%+8|OxI zbcLX~a|dlZNbGmE4fHip$Ej2#d`kl{#e@}42I`_eZlX_?k^t7=fN1NO3rKd zdT}}Lm*@1#n?CC~JJ$D~d%>k;#~rpQS6_2uS!3<>%f-Jrt5zNWoCCc1)p@@tFWY^m zx`P9Ks5-_<*dwZ8qO~EgWTgp1p*)NY3W$R!s$L=x1;E7< z*;2LVwmXMHSqP76fhfKs&`Qvi(WEQz{mLUpTJ`wu)-EgWjQtUl^!@-UuJFsVYmO9h zrR;LXKfoy7>t&ARNy2$AbFBWwaG(gH@H`cBYK5FN)*SNOn)P6L=Oa8YA< z&+jfQH~i#BWvfF!GHmC_cfED5fC_iT&BAUxcL~oj@6fUm77FkkBm~gqi-T=hI1l%7 zUg13OANUIVO@Fh*-J=oQOP(3K5r`fsuDrICp3IA5VOQ-L3!s8cDgh~!T8#3swNd5D zp!06d%R_G@n^j{sdrMkcSR)XD6anBF?Yn^xLn%GH2ig%JE+f|glIV%dyWrE=W}My$ zKaV^AF*FlhfrGZ92Z{g`{wjaUSgf^$H81~4?K%x&|44s`azER6<6i!?a#F~ikbV$1 zbz7dN(JRI`RNONPn$6aVfP0L1JUv(snfK~wXpl$>(gKhy+YfS>5xJmb?<5+=R#Xyg zFW(;Ni?zcT0!pxnK`s+E_Nmf`M+kt5JW>EN*f7G2S$gK~yYF6YRu1|{sdtilBQMC6 zf=rq;Y0`-M$L2J4F@2yfZ0NWr4Pi(0i}LUsc&-rEL)a7ja_0=o#u%$VX_Og!5&T$dRNzo9)4RnLndAmylohjJMJ z81S76>GAI*5iQAOAAETE9$>;b?)6+LJfmbp|M!z$lwDuALv^>iYubZloi$deiy5Y( zgtdeeeeiwns?Wdx@nE_74;PdV9r}@S?EjorcG!B8@?VF4p&YpXo6E^3pIqtW);sPl z%dfn8x$@Fq*E|d=EBfbaZz`KUX~W8Fppjedytf>C)aT3NCQmGzZ?w|Wq}YCe3&;>g~@>lJx^PBqTrR{IaTUd-g9>iv-#HleZPFY9$PB{6LvgwmHDce1JhjPRR-d|RjG`W2HwA0E@&p*GM{+*$uxEMd%J$>u)p9daT z!5R23eCPJd|4>02KorLFq_2FX=3Tk$?0C$#0LN z%?wYc7nDCKUIJMbwHSPoU!us2W!{l4d9tWoLpOl#v__>XXwIWsxD<3(+Mok~6sor1 znGzGZF6cKarhY+p$yw)kqj0eMmB~)7MW8V9R_CQkj;PIm1^w2A@jUtyyQ7(2u`u4Z zFxtes7}`_9$c6C^Z&O|y$QD&hX@Mx>gHAgRzC~G^wc~AYf9Cq0=>yKwWoSpf?`=7M zR^>*u!Sfhf+`k|p?F%|L7=?HiEJ%4)Hej(6F;ad{bOK|Bx1k>wUwm=hY$uEd4;8{( z@Kncs-~iYlszKfxajpSjuu;e(f=36N=Fk_L_W%>{2=b!v9oXD&e)F4a6JCCv-*|=K zi34x}Fay9sBn9+7lKxSG9uNk58JWv>6LPfKW}EfoI9@XJ1uqkT7VIBVVF2u~nSj1a z$_(sLHXN~^71ldaTF-!#2;@b5)_IQjrlN63&d;&Hp*^@IVa#PO^N-9FW#5t1ZqrDC zl!aY>GAqLeLWVNSB0w3#J&PS;P(+BH9VA@8R3eY-gaJY108c7O3ED;s9HmPo82Xh7 zY!MC!y%Ms@6-^~2qk^e6;*P%0p(DgDXx&h0DLX>RcC~*{5hR4rnDho#*MBY z{^t5}*2T9~Z;DA1S8akQfCkGg^+36A&N4Lwh=aT+fC~{s;o6J`=9G87>yYw4|2PaXD;GLq|Wuu=K;8K>7g19&*WfR>s3lwO4%^0ENXF~5{g23%1% z&8#^~)l$pMg(uyW*UCLpr`OP^jn-bJyz7-iWh%uaoDKwZMZ-A@+2c8HC$^ahL*MQ4 zowR5WWZ+9QBDACC6#?keFJAqM3ZPI1nZE)-C|^8&t+i?x3khWLB;gPMQN1{(P8|qD z(RTo<2t-j^_x}HcT?f4HeN`B;L$KzgNoDtc|M&9AgAXbfU43;q=#WFo#eWz|0=n|b zE0tr9J+68$aXkOo&n~;|x@&p&{G9@fX<|k%Klhhq(`WBc6&3)IefNKRSz*N$%86h8 z@+0!1Q092vO*>uM?GXL*esUl!YCsB`2J}_(qa_OlJ&&P| z4C<<;GH6?m#(ml$6o`+m&<{k(%55$VReJ=aK-cIQ{WhvHUaQ@H(Y$~Z^aJMnu{1zi z^g^F99f)$u=z20J#**GJJOJ0=t7CBhe37J{UF=8Wa3F8l4YaK*=Wl)b< zz6roV8*)*XSr8xvpn`Ra{_Y23f{ceIbO5lax(|8@o4ZOH8|RPb*q8?_;h<6u;00bG zfD*Dvx#s1TWBGad2hY{Pw~|w2r2XUj$Qh{v=K>-+;N{p&3||JC?8h9SZ5YM+O_ES{7*%3wkTQW8;Yjgk z{1M(%8e&}I82htXi81v%f+#Kk2N9eSbTBrBnE1P0c&cq(&#pOR72%UCRX|FauyWa8 z^&zhTKfD@`lFMFv#kFOrhwd%Y9~jDOv-(O)*PRUn*p%t_m1S02zihGLD%Jbr{NG+y zp8br?>-=z?`C5C!&FU)%6B<@J`N4b3jo05$R$lALWsOyr>E&U8c5p)@N6uB(-CEXP zYhvB0V$Mib#qJyZr0)P8c$}Pf(UoP*)mJE6K4pX64lL_q+2vO%XMFD`HQb2AQG}J@ zsq(H5AJGF*_$JCR1ESE!2}{kXZOdzizVn`IZ=F_wl$UJ3LD^}Wb?P@oU_$ic*W6H! zwAclrI6&re?QKXX_5)F9%aufbuLE>y8;_LLH+x#I>ddSuQ)-!Gye~NBOds;hQJG`@ zukyh3Wmt#|!hia-9$3K`UHzM1ml-o>mI-UDSq06~lu@4ZP+9izYn2CXzpbpj;YMYZ z$3K3^`)KBj^1QwFE^pXt&+@j{y{>wd5MFcp-~Lt}m^G_{BQl!k!zGtrUN(Hnre!si zy}keb@`4xdTvl3bV)ae|5c$<_FDyImxo7$5_r6zl+U}Xd`b!(Lm!42_yJ&m`qEwHW zHP-CqcmYK5u~(=P&oagUQdB*PN_eJtYaZgd=Xa*?wA$o;r=6_&gcPzmZ*%9SN?i6{ zZ(B63es{&vW<2=OI0ukRRWICq$KoKg6vGt7YjHTV*#ZEDo`Axcc}7O%D9V<_AxDaP zr1-97X52>J>N3>VntP;Rgf418ibA!Ki?I|YIu`$2;T|iR1yCeZ8{=avyh!joWv3Fu zQ9ja#3~Y!8dk28YA*l zRn^0@hGWz~3aBRTLMneuhui@7kIWG0$WSq6J^pMogY;-V1F_O)s;rO)g##4ru{dCk zxL_&g33(wR>Kf-GV{B0Y%?#u0Ikg=T;8w}K%s_V`8Q+^RWq=gIQ(n8!z<^1!`ZBEm-zWsx;$8Iki=B*;-LU~chtD>AL^6*%G zLa8A)Ypyi6%qc^lh<_8IM0mu+wcsEM_j4cf5KA{-_t(42t}oi5yljt`Rt1fcW{mH5 zet1qUq;EK0|SU(U&ZSZYsE8`a}e&^mV zq8}-n@>m&3-mZT9pSF3Y6etu0VwW)-Q7%vx_~!?T3-=?maj^wVX&r#*C|?2?xG#oI zBC}@BoLQ9`TxzK%S7?+n6kO9=p5 zN^Zud8~|QiffUKtE|+lBpigXWQAB_>7kBXC3*@khV+oLgp@aK5Yb|=mjl~#y z8*Ut6oDAZPmw_naku5pTGaQ~DWh5YquR-x@r`MKVsBewB6Z*Fjg^zShyXKv?BA-_K zR3SO-w9_hmvWZ1#ASKG#WaA*OBK*_6^jm!+Hw2;F4#KqPw4a<{JgEkWVT_?l|Jm)Q zvLv#UFb~!iV>ZY!$eN8b$XsB1c=$_;mYf!Re&Z&Z+mw;F@mwbJIUnEa&pKGxPfv0E zB#zsH04ama!DD$3jsa}c;*Gzs4?JT4Bmr|4_Tjt|&{;gsX~xgVCXPH6AjP9`Mh&ER z)gI9IR@t)*MDcTC&Jg$F0;I5W0a}L=3FCu#fsBK=Jyr+hoRl$L?wy&CYbj$9L~%ju zMo`>M*7rJ!%X?dBv%BJX|HQB|!`P8Q5xH`tyzwPZEn9Cgd6?_7lFRB|zyp8;a+)kR zp_G{q{R8OW^&KRd001BWNklneSREuz_|T{Oc`sJp3Hz@mx`IR@$zB3*IM7FI^s<{J0_G z_5S;62+f>3Zm&EMa0Fq5lCj3*$>r~N-(BAOj<=Ujec_80M2R2{@2ORS?zp{|uSDa+ zIl^!F##^tsrkwwabISJHZd)$8>gw{U-CvS|D0rM;crl*54{sX!$N9QWFT12n*mCP( z6?)tgMe{%i&^d2;V-HBl6cs7L8IS0vIJJNl(M~^wjO&?;uxK>ng$~@rgmns&EZ_t?@WcmG*^RIR0GHEGKm8Haa0m}2q?CAQ zzKQ42Ye}Z)yTfBS_A=;r4~DFVfo0&dWM>9ecY$>RX9ZeEK+nI)`E~?Iv_>N! z)1_lX-HCTC2#|s&a5nD%5E-8)^b3BcXW+;1JufQ{h(}lpwAz)!0o@p{LgWg$Q7~A^ zApvi1(JAYqB`2UWJeFw--VCqiU@iE;W-A_D0D^c);~h`P2Wx;35coHJpkhkbn$2i8 z3v+4BXC})teL^&(O<|YO-iH<#(#02}PAVQLdsG{OU4XOJ-9KaUZh#c*dMeK@?8Dd4 z!hV;46lh5f2b%lL2FY*@Xonm$=ve^o9Ag5cAgH2%kIY(x>j)|{)$9wQZ!Aph3 zDNscH2cQ91p@g!=kMY9uu(M#*I( zh@!c=^5%QX*M9KF8rrklvxav6d>%6)))Ff6Jfe-rc)CCoXI$BRE(o)v$l0z|wo46= zk|moJkg@E5tTj`om5X0lCy5GQKen?T9G%0lFRZ8xm5&W%$_!_Tynv0%Dh!q zD_g9+R#|S{C)DRrWa)48M9Dyu>bWw%oN`qxX3nU<4$qU&*7Kj}8@L}ptMb`d57w$Z zc-bg~r+)wZgthL8LjUR0|6}h>fNs0W>%glg5SST(Ld+;(AuQ8i;z1n&MsXDi1WPeP zk+@Qwa(8ta3OC3GC)I@DAvmHTgxCS9)b6gXPCF#A+ofP4B1RJ=i~$*f!2@9)90M*v z5C{l7kkqx#d+U0=_14<^-2eZd;K#aEuik&pJ!hXie8c+I{`TGk)!2|1_rCQ-|70Oj zDBDSA6N!?*yaVGjv$U2(8SSakY!=&)Y%2OfgZ6^}O4uI@zzZ25kYxmzAaJoR9swJC zDAwBp)M8CBf+F}9q-KNsfYZlvmXrpLeYX(!A;?6qh7IXJbRg3N??NUAf3 z5~RvvMg_Cy*xU_EP%#kzk_9uZ3>2~X9o`MH2HB^m9{@Tw!$Y}PyN$Y{4Ip^&UIfvn z;)6^B9&L^~`QBe^06OY*7*6f+r9C`8-uFuJ?5kw|sB1h0>mZ0hA74x;fw;ifLoN`^ zfkc4JLH3iJKn6i>;8;=o55oD?uYUFRWITNb%D@s^%;JOmN;(4!3Yo@<7041s5P-}* z5HHBSO0tb07QrzxJn?RjIheV>_r34E1d~_>fq)r$gv}56!O~igCwLx{SRjv(jeyK7 z=oI=GItQ`^zavnFexHhu5-C2mZmaQr^|d~6h2K&}3*{=|H*eD#5{30h`&Xp$)Yq^s z`yo(V zwt~EP_`@GwF60?D8udb35v-zpAY1Srv;~vFunE|L z0Hi1C1NleYn$9-c?nKInM8R)uX*O}F;yss9?N7&~P2L@AI!+g~;Vg2UTt=2XYD<37O&vks3#+Jf%HEDT~NL<7ymS+c%MtPVJ$Q zOvcZz;a(V1q@x{{jFeM3(0eT#j5PWYYc0V%`$n)Z6v;{AeLQlG#;uWEEs$0KI|H-n zgdWO7%1WUusqw|%+-z2f0Nm@R@hIT{Vg*ZZNTi^yAUX&R^fwK_P=@}dBnrzmdJSdp9|S%Y_f=_^N-#CW`9Ml8N%!Pj5+-6G)8X#~gEs3V%SM8WUa z7?zv9vOh@B@HCwzW91HaSe7H$V|cdbr36<0R{2FWkB$e0MwXG z)eoLS`N(JiIfHu;)FMj-pdL#TuyHpC8W17;pd8GeBmEm60BZ!QAVioZ4$=X$`^coh z-WAxm5Lqfn-v*(A01~_TL)HN15u9K@s8jI)k%BP-_{WT|lL(MSTuU?UtPk!vY^U~s zbklZG{?*nsFsQN)IpGnq2<8rQj}*u>$O{k&AQ!O7Al{9jtjP(oQ2?O1BpMqfazl5Q zAC!URZ@_(T0o?*j{9aK>m?3-eenlqaXtYhX+u%AY;flz-&F_9Qxt<&*gd0 zD+H|wJWxOA0**ArMaBw1_vb(V`I9C|4oXiFe)b72%8ly{eK5u=WjxWp?vlmhuL?1s*PGM)0pFrjS$aCzY0UzKWkcY^Q!sed%AQJ`4*g$;3S784O z%00+WkbcnNU2VHBb4i$yF-SY+n00R_L=vB-i4)2;%b<*pNIl-mdf_`UQ^JvYKgvg& z8JHiG9^Y2ZsqF!d7dNVQ`DileW3Q+7KpuA{Qn88F;NMEJ~lGpv33hQk|%KijM z&vEw+dtuZ@ORt=y(4{mf(AApGNECIXzGsR*>&B19(Fq`w^M>m_wcTv?A@@JFnJ-8b zEX@HSMDhchu99HDJ=`M%_4@pmZ(cG;Ky2UxvV_?vp826f3imtVJCFf#ue%&s06g1E z5(V$p01ZUOpMClC<$l%$???G*pBHWzs|-H(V&S-<9w>_>l9DL*y7OsU;t20Xf8g_( z&)v9Wq~O#e^dB9clNL^Dw6RalPxada<_7%T0XJf9$;!C-=Is$`Bj*Ydg&WR3@*n;D zLKq;+0-Mb;lY=CNUPD_!qToau934ymfNR{Cmi>b=L89QdqsRA|fIN^yS>Ab^biv=K z|4I9=y!SnkL_s~a`;~n8#)YKW5+Ra}LW1X;_dIh82p0V{5(U?E4-}N2NEDo8bjCN2 z2@LA`hNnGwOQg^)aOTak14h6GzwvpFcLMinJ6!HmE}Xo@ZWW>*wJk-}SC{ZE%l% z5Flf=95bZ+Ake@pKfpam8_Z_ z?fCvOPC~8e``JBMb^tj*5QYzy>maBEx!2?bv-t?*FuRA(h)4l>hVe(XOVb(L0~toP z2xJlDAMOWX*<>4gnE)GsAk=Ix1lb@Aue|cgWqD8{Frkk)Jp&mq$gV+}H;AE^yyPWI zh5_}8K_>PbfjKm?dR=dKoDz%I&h_MW67%@0_?JIoKv@5(z_0 zfw94O?}te7aUa=fv;#f?#2GTDAiE$qVTZ8)2*w^+`wW`y zZ;?opL;z8kKlTD~8Ijs|`#A4fOq42P2_$WB343(6sxlQzZ0yKygPZF&4L`tN)0d$;A?&50$6 z)Ic^pr;bTy#zrZY4)hv{qP7I@p*>0In)v<34}EaMeNsTA-28{{UkD2&GO$;OUn7Zf z^8+5VoO(k70`Fti#xm|-zHuRB^n@JV%TsZNEM>XT#uix!hJsCXVUVKR6kXYHAeeBq_rT?(k%NK9h-0`93FY>{D$H_)ZImegz z=&3!tN5|7awUZ=j50nJ+PoxfglL95yFOhcupUg_xFOkCiMzF3H zvzf1Y)vFdF1u559I)J@8NK#;F0%pnaJIEIVnE>aQk;FC5fNNiaNWpW=EWvNgC;_O) zJK+NW_^}*;$0y@Ctd~bHf)6%C1~A90KQc>jG9QT)9J$C@O}-m5@F*Ju4*C$|hIX8) zQ-HWxsxGw}0d%(qB=XVUhk-~z<_vUWbZU?4Vah^Pc}L)nfC?ED2bqn6cQ6P=ok1vo zxI+dLg0&_m2-pB-kue2A4tjNjK+GxJGjkR|YlM?7L#b^#(1`hd0~ z$ZfI>B89SxQ&bR~BZCD?AfQvoA_1WYJp#$dOgGdGWDV+qY!m1fbmcwodCvx!2FN7C z(jK%C^?;qiaN@MWFH~p155FsTdO$689j}5t)yWVJu^Ve}O;1lDJ)MJBbuz zxul7WM$|d+%`v7->4eR$B#L5_HYr0=PvyFiD8xowj;8ovHrBWO{_W8Nlv5D>jFS^z z;WFU%bKj@-XhsUsgmtsF76`d=;Ja5Ipbm{Zi1p~-9z%BP)}ozhzRNMko@O~BQ83mF z%3 z;C}?}I^m#f*w+l0are(8lHK=x{tTKsg3Va^-ies}yN}?cZWSO!3%iq1N<|5yJ`2LNP zD7t^imMpo;T^7Ov%WXiC_;nHy$Ra_xXWa9iC+%sn=*#gvP)H;!d$Jr~dczD7X0v!3 z_&XbbGVr{UKE8ZudG5v=H>ZEkxl7Q-{`~yA-nlvJ+;f-WSTCO1lg7d2!$}kcM*LgH z->-4=Vz;7vH~vp+`Dv48L8Z!1%3@&J?m_t^%wmEx;RgU3OB;}q4blcP+xQ@b96=an zAOV7P(?Wn=%=#mpTR%v{#;mv>i;VUB01L>3!3Rq&FsliI1|I-$1dAkAaQq;?>jyz4 z$Q#rVr%&kzK_>!SK97AUFf04?r$60??LfYxzFeBJ$mMa;Pxo0^BU^{{)SeU!Bzwy~ zaFP?`2?Cu_+WKAx3U$MhFvu6OE|B4YJyH<-K^~HvV8dkua0oo{!Tt+)2H8*`^z=iL z1QU25`jXB-S3soj19?Yq3%P8vjr$jye8w5uY$~(?_2LKhLI8?=gh0Fi_dfTz&s~TV z=rKRcPC+p1;>+mp<-zN3zo($v`&f2gC`o`9PL|FoZ3~2V@(*ui11Pd+C7K zW=0mCZ*mIaH_1G*r9jka8OUU0ec^LJg44esa|NU&mY_lAx!(}=5BEY}cD3!4Ki~}? z&$Y)KtBko!%_htIS&mhbNB*WHN}CYky~)?OKRQ*qeOtK)*8`MO5c0%UYG+a$n|$oP zPwi<$${G?y4YXDsLW~ANd2b_9_9irGBla=Y2S`W6eq#-xd!y?D}Qq#Qf4Fyoi{%N}kPx$+@X5=mW;fih+^Zkd3nxDy7{CY1ldx0+n}VK-kB>(K=xWR9Z}i$> zCQ?-9Dc30z&jSP8%WEyG;2_2f%Xx5m4>ngtHVQ~P$nZ!`K(=7n3-%?!altB&tds8P z0$EHt1Nng7AVUDU0^)=I2IVB#=271`$q2LY)Gg>Bhqk_oEEh8W1{KkAvuEFGGnGm38;Y^qIJ4%?v-^Gs1#e7bi&6)+)K)uqpLb zNgvGuQry5}e!VXsD>$YY|I=q+TzT{_GEZ^&sIC)@wwx=$IsI3nFE|*{Y|)7Ti{5 z?*ZCLWCvndn_^PPL^?EwHjJg>JBU;~%agJ8ytD`Drp!o5fsh)_B;0-t-(hF~-uB8c z|3wxcW~7jaYK{uyGTITFV5`kqpC$`@Y*fa<CvU$k=^!GM*J?|I*`_g}U&vFf$%_^Cd zz=q21()OEgKIwREwJ&LWQ$~rlQGtCUZ}@IcH%~Us$wS{f?=P}%`F3f$0(BoR9qUnM z8tyxcr}iW;=NOBaDv>BlX4-c+zT$?j$mmLB%t6aBy1QFpP|0p{k;4CgbUUGdL|9a^MJS!DR>`Alh$`24@dy7?ccTcAqxbj z;It32_HK=1W!KjCAnt3+E*%TBSWz>f@r+NtjrL%3Qby(0?I!hr?;z%FGOqW#UhQ{j z*+KOCZDs7%18E7G$Fy2vIvfSR<8T0c4va{_CS$5B3Dh#^(iFmEgnh%T-MZ*6=G`Pv zNIrpxN{wO!yeDmg6PxoLb@FP_8ydXf&>=EoeP51m-y z*fbIazccFw88O^27G;4nK_(2Z;a={|!lgvaSb_e5Q2P8=ZrS|n*S&A^U;gZin`c~l z{&IXY`fCJmP_B|FPIe@qug;KTn(mvi!hA+$w54LU4UOOP!e3a%2dDOIo#Q7yzHB(F zpRfJNr;eQ>_LuInB@DQnMvosR3952`R%{=KQ7$_A}Y=Buus$MxQ;KLCCQ0roJ3LG=eV$c zQsCHtjz8qJ4bQ;Ep+Q%3OYVLP=4OGO;Sv#oxeqvY2i z|M>Tvd@>@56mFh*swGx8n?2R{va`?)d^r1`?qNNsgX)J9 zAIE}UretiCnv>T3 zajy_$Z;mE%-On;s)YC#a>EYQZ9*;OVr}!i7y{LFVaYVy1F6YVqV!7XbH#|P5F}SUq zc@GfNVJ{)bDtsZvKgE|SPicuHGE(pXk%BVzosj|}#b*a;EbzY?Tu;UJV2G^dL8epB zyZ7+k!Cj+~UWOgT@xi(;^to@sh~GxXisAPboN^ptyhw)4NR$>ZC*mYIdyY!m;{`+t zvQl30oWHi*s!MuM9+${aA-I{VlPC=Q8i|7aPIPlvoUlVehQ@q!%<(sFx!tnVhkXcQ z1s|5dc6$ABJuUNTd%$p+4@eXxaPD@-H=R_=y!Abw++6$nf3kV-eebpeDt4eDq^Z+N%T^8;eo=OZQpy2Y=%l z+O3Ti=+Ld$(}xL85>(0lD+JKY0HJ$qGl#@1-qmJSK6u_nR@sxWX-vpRcHq-B;>^Ze-$;KrTg>`ECP90v4ad>M^ zUxz&}l7DmCf|jOD*1r=@?MXh7I?{9yc7glQ?Gk(*CW(OzVB=8i7j$cUkRFbsWVy`a z)_7-o2gVyA7HXliiPs1hupj8iF?Y%>0bvBv-W8}D9%k<(6Fe)GQx##K4#urzpF0VClZBZ2WMVLf>18;%woLX_ujai2YaTBNR+KE8i~S88YfYfHXqN> z!PxM~=tuq!e|PiyuliR@A3f;FPu-mN6MyHV*|Y{))E;oWooK=L5xCdib|Fz5jOk1l z%W1wz<@Q^B#35|^t@ZhKTvE%~UHDS$w2v8g1?bIoC3`~PepvTNL0cQ)opi_p4&nrq zbK7Lqt)*4B&U=>SrMJ7?f}24$CL5=IJWXn{rk=&+Eub${AD#&Dmi_GIx$LU$x^KaE zWTL=EBN)0ZkiB)}tG$K6DQ5Xeq>PsPvz)YKLa_kuOC(B)9Tkf=Ji&=NEwfF)(5GmO zz-tM|=mw^KV(PbcbZ&b)dq6h^=90jMJKe`pcJy!q5Gi>6$xl9Zh{c|X6zrak9jZyB zq)N4G6m|#Ia0E|9i5cv=tZmS%~(zg?f(ca@*y*w&ILs(U(HmX?pGthCu#T*s!f zpM3R|+bUwI&)x3-fXz2Q`|0I`9@KYR=i|hJ>IOG##WEk>i@jEmdBSBvTgM)j4&ixj zK+86PfWh;(-04nBM#~MK{Ny5|%jUFqzsGVvKiu5*dMp<@a%8)SAx_@GQXT5_y&wLF zZcjX+UW3R{as?adzV+$<^Y*E!C&*U-@0Rbu^A-EED$M}aZf>D8b_5?UGjITiIg4Zrs9yGjyM?r zM+x)z;~DUCLYosinwfxWNJr;b-$tk$gywu}%AgH}4adG57)xxRh_U59D2ngWhMj6F zAsgx70Bv0gWRorD#2rab_xUW-W!kZ%`gPt5`9)yFB_+5=aqy`KW}9tPo8F}0RFUB` z`>M8B>o$9Ctu*WLzxuas4xI31iV=vpW;oBYpd9Np8%c7`v1w{6%D_LJkmfaFKGzAH zsB~L))LO~8b?8Vs<`G>Qxm2-cJo(9I2-qK@jTZFtOM9&^%~ zN;(ac!OWctFTC)iW9--_4RqMo+7BZVMGaF6UeviJ$LGYE8dA!R8?6*1B_oL?J|I#q zdGv#quEzH>?|JvllOFTH&8I%|U$=oDvO(^0$J=c__^HotjvT>y@goZf^WVO4%jUao zf7-I&%IQarEx|#S%RzsTHKXr9`N*QV`KFsUcevfL>==H|yvN;_W0!Bb`B;Vvp5^Aa zAV?@{O77rU^cgpoRT2fiz3R;$Uq}>`^|&9p-*V(JpK0rLee6@_iO+no4N4NKzPl4; zu-pP6m#rCzqI&H2>P#21Q$F(l{rXbf@BiuNE~nEl*hihd@O#%Szk%Ff-9SVjn??6Z z!4epdAlS5(AG8-49h#xW-!-If!u=vxCbpWXpaXBEjU<1#&|mu`J&mW3=XlB!Y5zU z-%$76cevj;j6_QFy_DNTqPX4FzT(lb=;u?J{d>@|_?=kZUI>|wXJ!GRe8?I;N~Gv}liyWa#Wtzm zR+(&m-DQYa%VSI2rzDEUf8IyL7D|{fMrkAp+jCoH%36uLb?(y)OuUhP?$M8a^iqK| zdF=Aq@ari#wI`jDk@itw_h|#1QN(v$5~HNSsQcG~Py+P58Y8@i%sv&K_0kQJ_9H5@ zx=|q5=0q?MRH{Q$=c)#*rMP(@jqjS?gm<_hY$>HJvnOp1>cJV`(+D^$@p;Gt?y)RW zdH=`0u=&4U^S=Fb|3WtC#|aSphHFP}!V$!$t-AMPpZ?Om>a?GSK{SCRdi(_s+?@TF z@4U@gY5<3_Lt~R1x{if{dDQ{#jp3P4Izu`NdT7+#MyM0TJt>pP4P`TkI1(BE)_g!H zsLrFUAS39+u{kRpHU8(aAv~kMeepkkVEfy$bg+;n`aJ80Q*=BN1!RxD7x&)fA?Kao zC_wli^96(n$LI_1zHT|yKvT9Q5xq-_qW<*Y+qtZ-2Ks0i-|nv5(zgV@Zss z&NL^Vmk73W->E*e=Tu~*0AsoD)! zXTzq+SJ3u48Sg?pKaMntT*Cr z^|$_>H8^5sOHoE6A^rNA_oY6EO~k~PZor);>6^Y#w$u*dZ#}hV;VkyLM+!4iu-WWr z=GTpOn^A5`q@9D#M5XaR?Ct4F-e)*YMGxj!LKoT3KQkTx{m5zbkQ|N|@^N zmbbiRc_-__cCd|nM#&l|B@7>~p{_2_GZKXk%?&yY*oZ`-z>$&ly;nTY_1Qvyhu5_o zbDWspw5AgEVxWa(K3KW}5`?6R8oQR(`ms;nxH)qAu}l$^CDBc~se zo70b+;9QYevIO;aya2;MJio&U&+Gjv%jtgB*Om9|``mdeH;@6(n9+JMi-qsvv;3}( zxsCnI`M1DS36(^mXuB8$CQ76$TlNwwQz%;@w&1SP-@Egbmk_RY*fAgME776YF z`H-?uNVu>Z+=usRdqJ8wfON;8fYQl|QPz(Fm_|yetZTLo>cx|eSReMi>uCdI7oKmp8G0d3_=GPCIP@IWEsGKchfNvofC?*p9=bu zZYMj-{$r*U`WQhdu@uTA2&Uh}Z~L8uVjmFStRWlEZ6*@z6a$qW03vts|FHwcK@nbB={|5i>OWW=d~T)C#fB& ztut)ldrP)4(=pO^kSxIOzwKEwl*9olEL6MB#1 zV#q++Lv$vuZcCWe3LXT{?o6bhz-K(;84Ccx|9)yuGM?JVl)_I1nF+cZF&bY7wJMDG zjSicg573YT9uC$)2(uF&Btz8TDJzJ20xZ%9szXXfV&)|9yn`%FD;zmFf-i!%#K`Jc zImw}pm1CQLv>HbI?sZn9<<6=p#2Mg(_lG+a)WPL|Wj4Z$WoQ7(_O3B#-nTTS z4g^uAXTdd~GO|Z&>+AB8WI2HVm0u@{8({Pq6_x>#M>AmBY~#owa6Em+#buS_@Xnum z{s~7$vo52Jf!S9nfK@x6NIcdf?`neADsID(lGh0r2F6O_~YT$s)&Zm>g1j z&)WgnoTkA)pGkll*Oa6|aIHZbC#77*ahxjLpOXA44{EQPFTp)(@7XtsHS~R{pZuC)OWNmzEzfUB20`sXy>;=n~{MWf-a6s!dno(6O+~L&8(8_sPc6j*j-l zb9~}<#wY(&9!C=}US|?1oaERuk#fZqSDdifY^qRG1ihC=JOQ^R=qj8eHrr}Xi9}J5oPtxfMV41a>rdbil4N zWNT)bk{$CtRoTIB3Le~%Hv930rybiFynUE8;&SbPm)}P+#xckLzkm4)mse^=${G?y zbw_=Gj;|9&94nVOm5=0H-Tta9sy%6dl>w9b04F6!woAv?2@|zFDvR3333Mmfb8w>l z>iweN6RG|@CiLjhquYR-^-;j=c24E3*}ye`NBeK|xBKPf584tJA8QZJGziC-V-g6T zZ}*IpOE0~2bIB!_Y=@%RPqk~bBeT;pXycg)kOJ<6ji_^uks1lCvhVi8%TU?XF?Ao4 z{08j{$c4)seo}Jn-ZrYbi<%whL_<`?EzQnOw z!$#issXcg>n0j`Ck(QTqm2F6*h08MAfPT}!KebnFK+7uTJxPy8fw%j7mv_{2M54G2 zp>B=hv(y)kW7Ox4@S(n^;U(`AzDwKYvXb_CN%n~S-tZD*L{64Efq?pB`5gDZVY?II z#`im}_Bh1*%ipQ7acYzLs-#1zv$RcGhf&O!CVAbK;QcD+AW~lQn%8V6IrdDXFe61z z?NLysN|c0Djk6mQ?i=l(lTjbL9yB}a&b-Z>;9Zmn zm){iZtE{F#(EGrN8ulT|X<)_MKMUS)Kl~Qj44;LJ11^tAfVt_Bj*n;Pq%m>8qrTl` zWdyEL*=aeL%M|)W<){Vbhm}Yf`DC?YyAYl!;M8$*(t#L5Wpx&eav5rV+x?~oYAi=(*~xRA)x~ck8|VQ-(k-7QPQH`Z zl7G}T>9ZcBYaga@Z6r#QQI7$1JQ9Z0F~RR`*}41OH1^(R4e}E?k(QaO577EH9K-s% zJS*;Ud#Q5N0$0~tx7n#}-j}#%6bSSFS-*QMqJFT|U&q4b-Sx1IC9gYq?y}JInm$bX z!RwWD-(`3fKcNiT2*@v%JoCbs{)WUTYJ_ zW40tm{lJXOV%t=gbu9dOPgvkSYdleJ&qN9eKzc0xX9d>GrgM-r=xxkd8pt(7gDQv` z9~T_{<_62_gY;K?kow7#QKS^Mb*x%%zH??2)*1=i*BEuYOP!+{ltdV*VR7(~l+m4= z_iYM3+_2-jFI{P~ntpu^iJ}JD-$mtj;6}v;k@Ad7&)+=sL1+H?5xB=YiDb%b)|7pu zeWUW=*OT&&f+R1i%~Y#AvA^A@>G)GtaLu#4To&9>u}$hI`ToY-yCdRzedfgLsQuUa zDcK{p30iIfOT547ufDsd(7Au>C$=O< zb65m3lv`~p>qOhc?`#h;VUUdiG9`f)m5UU7s0=jc&g*y{pLEPI?io2zw{0Wm%{q;O zHOiQ`*=<=0T2wa_FpyAl`Br=3gr0&D|7`?1_#3iOkUfci+*bfuDLO7Lqb|$do{@cX zTh{#T2y8VuNwz=fzuq?j>xYp@Sxcfc->tf@W8*=ukJ~8tPkt`>JLmo5Z{PQYat~4kduOD+ale(aW=0vjs9S0aND;rD{2`x5-BKXM{%GTp{P9SSN!a+3 z1@%#yt(iy^j>jy+$o;&I|H#g=Pn7&hzCQ(j&8IfoqS&C3C=EZeOvk=643})6V-0<$ z%m2vFXrHTZAK@I;&qi=-xms6$AHF*VQyo(ul5{7vjb%1@@H));pJT4^l3p9>VUlT= zIkzcZf9)gf??yoKovs&p-Q_s_Ml6NjsEeb%N*IXmY1T2F(ZG&vzo!_Ze(0&P?m0b zhcYp{fsK_g!-1tf3E)#n)G^K!4Zl;VNBxopRuzZ_*Nqh&L`!e;6iYWS$q=^w)a&YC zP^Yy2M+%F$`cDd!)%odosjTwv1Wr?%d)sc$SxgUkd3)AQ^HmFtw!uKlVGCdn$>>AcCVatIugrlfv%RHoTO$>rM1YOsnv8X1skdl={dDc9ylZb;p3lt zj9=5>kg}RGI}VCOq3)+ydH61nD$je~^R^jxY3#kP6wo&U2haEhjVTZq^=q=JD7O&^ zjSTZ(DA~TlMx-Q6!2VJ&*zR*bOncb^?gUDSYpAo15!9|aUT|NOY&m7u?UdVi4YXJe z^^ACpr;0%4soR>B!n)2#lw?EvS?@!Y+2m`~kFE&}Q9eG6gwS{J?~$)c{xP-5CymsX zId;}IImUFEbR3^-AIfhTw|rM>s}mG%%SM5!%3UJ-8isfKIP!VTCn+{iy~h113)Jy^ zv#XTvHAGN*kIEO`qqs=>SNqTXw)#OIqcyl{O?T|sYJBkggVMldbQJ#+NF1SneT-)xltZf=i zo_l+e4kX*G_PND5Z5%0wANj~fmiYg`h?L7NyX+*^Jvs9P*haw}8%sf_0&7ZAI=eg# ztaflC1R4Or&gfWU3xUGy2L4Be3e!cCVfKM?!{JKhZ5t^=`i+CDEGpZ>`(4PI0yZ$K z{n|j0j;Hr$N{7TfDJ9d}II5H0%l9`H(G8m$##jEkKiGWlgU(!z3HI4$ZyUaQ1{Ug) z6t|H;E%-z^jquWOP5nfp#QM^y&&o@{D9LG)C+{BzN2#v7=E3Hg@pt*AJde`S zqtitB)Td;ioAYD6JcvvrO4D=P%W_nwKlJPWW;sa+L<*MsAX|hd?0`_g2frx@^!KuT zDr0J!sUs*CACNRI>$?UYDT7Ymne0Gvb_xm{cqV``8n+pVlI)7UzY+CG4>ZL%ktqHy zwax7}_dD+Qc*+R;m2X(5d!;ncspF#oRFhfH6!re)_%yq)*2d%g99NZL^*1V?DX_x5 z*dz|0!>~un;~)R{rLGQsIp%A@Anl6!f(ED?9-@!)O>9+W`5xV{T(csZ-%{OC{dXNm z0X^H1PPGDlLnbkZ6y4j7vgCn6n?=<&HvgmbCIQj{RMpv}SNe{oPaKc7q=&k~I*ev$ z)iDlI2nTl0JFa?lbjw{+6)dnsSnF)B2L+ z)OxyIrM*?M!240_xnB|`1<6`JtqkH~)NykicOJ6cwk$i75I zCqI_zOg*H|r43YRN6~kqtPPei%9_)$_qHTC#i?Vu7byGJH`QfdC;3ynq+H$VRH5a z79_-|^lh(;yxvvPUIOn{hSAnLyH-^^>an zthZis5Uc=G1Nk=g9&k9buAnCAi@syz)V=*)mXbK>UiAO$ln(8m6db4?`*^y{c~Gcz zYJsPZ5A}sQt!1nMc1@?R`-K;5PoQ|@Kl=G?aOH#w2#{pE_-@rzw>vEB;@`OPgxLqT z2h`;e2y^h}PKm!KyO#8ZK*dR}*{qO)G%c4T59^Wais}!?Mcbty&YiQ`Vb!Pfi~~vS z*EQgreh}46^~r62 z3Zhh>non}sJuDe1Pk6!;md$2WKN9FC=x!T7s{FXVyB;U|M7xKvoMkj{EQu%RD^oz> z0T2N-^pf&C(kaDPI6(;e0P!eR$UX5P{-@k0JJtfA1n`p#x-KN&NSStQmh4=!S8k^? zkV$sf{a$*P_eb)NiA3SJHh<>ho$!X^V3l+FP#pv9mxO5`QCzs)+?06>$v<``2(O8Fl?c}WLTw7wttonpGRIX++&REOGdZf3&2gDDQ z9sIAjOY6|^zt>F(q!HoO>V|h}8LbXY2E5#nZoAL*417Jcc+W%%j^w-g>Z`Y@Ee-gv z;krX`QU*6T>WJK+AZ;07QD@pP>wp;t?Z5B~ zUjCcEzq#q=n>Ww-+dr^PUvvl5j)F#6X{^bEZ8UYkXIh;|P`P*gX=S+XYd@!%B)-G_pvztYtjWf(e;av9 zA|=`AlNSFUL z-?0Y!WiNZ##!v0Rv&jdgtS^r3j6~7#Xk-Wdn1bol4t;0Z^f$@0+937GO{Z0V8twq8 z0^$(lNt1EU+*`YMo7b1$T|Uiz1z)@{DZLn2XVPw~GK8d_)egJyoY?MY+bWQseFwEzGh07*na zR26M)%a(n-Ifm~0lN`79CL24lJvg-o$qCp8RAUR3Cm%2GFZc6`pID#NCftX*jgC3i z=N;3zOuKzneCqE>ZBYNI?*fLv>BW%c10zysMA~`TBXU6pKLIlaKq!MG3I-XV1JyYO00x&cC;SSoJj_Z(q=ieYi@E(#XC{aH}p7C$BCF*2-92#)IeQdYB zKfRZ_H3C>8V!zF7IXR~7KtPE!UA@+1Iq9YMaq~^uCjOnqL+@(@fP*|8e~t@ntOsE2 zojRU}l}Jf?Gg`{(wh4WZf|!OE)Q_c!3iT;EmX0UXb|m}kdZ%NRbZQOmz*1}m0*yRR zxRpB4NW&5McUg2@QQ1v_7x4}LPoyvVPBEkRt=r0mx!fkZO-lAl$2IAhm&xx=TByCo zdx zpCvgV4tEkI>0k1f7}un~+COV>oy)jm5Z1ks4YYqpYJCbp{1LZ)L64`+3t~UwessHzWXn2V->14IrRDVD1amv!sF(#qtS-Yb> z^%PeoyH6cXlRC5q+8!(q#?oL+dhD4<(NlZSX(`>44W|K^Ibs(W6?_gbX4f#w01|}; z2<0+u8Q1XpV;}q2lV)qF)CoAd!B0R}2SN>jDia1_1|HoABqO25F$p{Brv^a#T7|ng z7;Q@<2xyf2_Xd(3NULG>HoGD9dNxCo-jRX=AA@B0)%c-YEbY;Z6n6}*J?VM^Ny#8; zFfbac1kiNMXU;SAcY3#jNVdc8b?2B2nj2~@OC3^jeo5xkpsUmI{`cUaWh#xxm?mfL z2pq(?t<$!RoLmzhssTJ z{Jf|6f#%4Py-beOoj0G;po7;EDbmQ8G&U|{lnW08ykC;7azEL~5|vkdKjq*1J;}rD zT@K(zgo^_cCu&I4x}G_i zo8bi-pBWfW{xs=u!a3@fX8pw=QToLcQ6Ox}-9Z!0wzoRUCM_n6kbAQuF zZ1n?PhnC??JFlk8ZnE-Cud-`!^r{FE?!d#ZNzW>LgQeh5Aq-HG7ABr3Oi_`Mo|?i9~S+ ztGeUzr*g%1Cz(ls7@Z-0(|S74Q@w8XK#73ll(gO2o(5u@@pGL=Sq{wnI}N>)t@`dZ z6M2$BkPGT?6A42(pzKgT_+AYXlP;=l#ME9?_i6~`*`m}9+{^;5g)tiJl`+*oYLj&1yH&II_Q# zuuj2<2k2^pUB70*xX(VfzGt~j&%8Y@hyGk503b71YNeaYI<8q8Og8^Rn@t@f+2nr0 zZHW6)?eo-D)fxRg`FZsl?EjP^?>0I0x$1Aj2JZXR7r2ZjT%6jb{zL6-BMfJC(BDVc zR_pGkKJqt|l_SG5^CCP=3>8x$Zzd3$O z`h9xjb_#K#Z!~>x1qov*`LrEcjXNwtGuI|&7-ZMJowb?#yHoNDH6eUt{ zYL6N|4w!dZGWssm9wfsNaw(4rl9MFYf93kklYZ<;o8SB0-&<0cvCN03>R`DKolgS| z?o?C>I1nIFU_e3OxRO#(+6>%CsZwx;@<$|!8-NyQBnRVlosFITu8w8|o>Lm5zE{UR zIY+OPj*kZ@Ej8Q&51lbqhoz1hr}lj8(_h;B^JhK!gfw^${P;{W@M}nv5jayFVqYkz z@gQ6K%Yzq})y8zY47Ks)Sg5Y9AyE|2&%nKpf9vly_ITdk=YeZ7^bH`fJSRdlz|;4+ zemc1HF=07rjXrfL>A2ch%1n|ymk$r-n;qs@s|>mm8Ua%;m*u4+<45FalJAl8ZuVSt zon^X{Y{9?V@HWOep&tub@L^ zTV>S8$A3$9-va?{7k_iR>2}HiYO@ii;?$l~wMR-jwP$1}-8PK;Y#J-wpwRuF+b@-K zy*JrCzANdk+gZIgVK*;d%fx2Oz=4o^w`1x1C>U0Mt3E(MIx$5X6Sbj^kCG13o~!*= z|J3@HV?+IK8(FF?bh|@e*04gu@@YI&HWC@E*xZQ()phUJhI8DWH(6~q6MgJKs`u4? zGf|pfNV1bil;$V&`J`VBccs2;fvwwH+=nrA5*7EcTyKNQb{bc=T`o5$d%q-#)>~zy z`TyjblFe`(NH$^(iIQST)^mm@b&Q-K_5N1dqhkon0K9+=XLWLME$-qoN;3PTmiBvF zfuQ||`%}M+GJL$;w!Din%sQzYG>pML%<#;fmiCZH`M?K0u)(IY4ZJj`IWunj9fQft z6CQO8mW(G3KtVtIrO$5P|B9EqVp-zDBOiI(or8T3h$xsTz!(jZ8=ItrZuIajvU5qO zU9eMMB}3W*TNMmH|JwnQgWU#-RIuEbj6m5;shbmYuuemoSlN-HClF5XhOx)e9%Q7v z;yK62GLEl;5iesT%N$G8X>A$F$*gsX4dA#;rG9o}u?9rByf??9eN5oQYd)Kpzy$l) z37fV-rH)A|PiGWHn?0`?>jsKc9~)W9aY%ZYGGiRXtK&<3)PQZOPm>AlKX*!QS5ttX zLC9VVJk_WLuaGw=0xq}fU8u>+E%yL=u* z3YNjb7ji$bWQRRaZMH;huFK5G-|KI#lTFV!9(>mCbFhf9C!`bzN<& z%BkzT+FVS);e!m~gi%I*LEGB;5cg0QMkI;`kt2M=ccwPE-E+H6yP&phG-Iu8YC-wP z|F7{ME*lNA^1c*okK{K6qpg3ne-cjix~gnw9g>XV_cSrke6P#067O!8T|bk(RatGA zBk2;KbDzh)O2mP-iTcio8;>2R8|%H>gs{B`c{^~_Tv9G zL6vZaPTDGw;5bj~sw*&NB#PTEt*_eFS-jnH!o`&o3@hINa*qHTAvPL`V z{mV8Hb5i$OMsKnQ9=j*|(5`8Wpp&rr9`GRW&$zZ{BIVq3&)t0FBOf{8)E*T^Ro)gz zGzUk33GhcU1t5jH;j?TdQSNcZJ(esKIM9Fj@BW|7hu;0+?rA8NB^;%xjN1P7YYx%)hlhZphc@@0!`eW<%BhJC}KmqX&rzWT_0K z{#4-Sz{lmo>ydO@ot^*QoFwIBFC>Zrp5{;1fJ?TW0Bntu)G>8{+DH_&kt92OMp^Y+ z!NFS4lfZSVAM3&_3EwvizpMPvx9I`pGDo>}yTJE&CL!g|?U>p~^>@kM(FV9I zx(!Ws_f#$IIVd6pbw(Z2sXfWoYyWE?;&#CU9=D?k=x3)&s4U?9qvLR!d^9~%`{aRD z(s?IXFrkJIGL#d6sj|IG_Al$jewyiU)0ZUwBYjGlZZ6k+em41+f>5^w)K|xsE>B6< z)R!lmK)a4-8#d<{H~*;e(ez#W$J?Pkpk+WPR!Z42BcG;v)oj;@L`hiR+E2+ot|4HxezP)0_37d8j1`hY=vAz7=jRyDqasZ+zn$Pg>gJ4rs)NQ!$)K(Se!? zl^Un?F0W4t(y8b=$TRTbPG3oqv`h6G5+yl%DtQZTXF-AzBu&wAoqH&x*;+T)J|^lE zlLN>7%t!%|^1!pcE1p`CvX+vP?Uh6s0bK>7YS_~IlT0NinRJ$N;DId1zJa4ef@t8^ zY(g6Uc5iB{-ita?SCW%%I+5gh1OhyWb4QbcJ0BB#cZcVJa&qtvnv$dUu}gizzEV4^ zbxdHB&v%fu^q^4h_dcc^sEx%nf*2i7?bl|%T_$|I6dD1kj1xK@)a**4c%2U` zkSbIh^I*vNh*9d@7Sdg(fV@`=}wp04jp!Q=?wH~U0c z9brec32KiW<0QRyyN7!ew4~!{-eE+ zD-Avy&YAgI9rI-CQ@bmYGrRA$U2TK5DPb2} z`;}k$mCcX;_>V8I-7}Gbhq2-8C6`>X6r`0IOQ^uxMTVITczpP;5_AHaDKBf0J`-ZA_a?`tz!sGce@uabW54$@+7% zSsZ_ijFc4MB;~_3m)Ullbh_7#M|14Hlw&P$;(hKUM}|Wk?+nPglUDhlQyhVNAAi=% zWx5$Owkv`4nc+{eLMPe+Ps)I{N#$Y$?9|pJ=bb>8W)6AKkaU54PMs#`N_MB6wl;G@ z`g^lyxZVOX)Eo6m%d@=xqttl?mp;3x_O1~>Gh0FVp^j=>X_wQis>*#L-I9zo9Z`Kq zL8CtBK|`vyw~6eEL3 z-N3r)!J3Q)_W7D)juQ!xWZnIY%Ujdc7F=n6;cxu&z&zo+=6{;rB>7Vxq4vzju92f^ z^A3VUnb|R&oTA-iU(JXL9VcP|pX_4)I}WDYItFq~p;$%x5Py#{inJUrLv<$kQMElP zCkcn(ckd_l^=`+~@{N)GUyDU`EQmEn`S@S7q4! zxZ6JOU$+73@BN*4PufH~`G{mo8dhn;QjjwL7qzCK3k$u8h2)u^@$!8%%tyJyKA2kUcmR@x1fStCK-W$Te9V*>LpbKj(X&GAQT+o*2*tzj3+dy6tVBQoOp)4QaC0v8?5-bEn8Dtk(N4X zdub0+yV|olZg^g80N|O=DF5r<|EbMCz5JhU?sUeTH*lh8Jf1;Hvl};bE_Z$Q z-#j>Bz3~p7dXNlBG9JDM!zh6E-_-e}89NOk)~u&XO6|c}6DAid1q#h5JFA`gwHXP0 zp9cyf2kT?tis(+k9op;O`H9Wd@A$-akCYLxN=mBtyYm}405w1;!-ECZ6aTXxle{VT zq5s{_>L1N3^5J@3=@U9ao<NWO3^?~K9OsfvGV~#NaaQWqzFB_n8lXeBfYA4)}B>hQ!nPfhJ zAeFNeY&rOHd!X-W?{q)va!MP=(+0m?H=9LYkw`h`oO710Yb1pNUAKX>J2Tmv9nFby zbOOx#)yKo-RCOo$gCvKPA@_-FQ^H~VjhoG4kCZht@@k(OLE`qm$r_&@E&rIwf6`H2 zbG@KU@8y_dug8oWOTI#JLu!{|3bhLf*J``*_Xy{VvK>du%~aOX5!gy7?&42JgokDr zHTn0pCqKt~){rO-U!{5`U+oxD>&gd)JK+!_l+<#?oSiNyOJpA zSG;RRqPPuG`;q*=w~Kw-h^LwC6Mw55sBd;0ueL*NG3%=1hrh8u3QoL5!a~w{)=$gQ zv0}L`u1y;>s~yw$LCZ+ES7inFlAuny?PJ?wMwF2<-SpaPU;El^-|QZU|G;Akt1Cr{{E%VJYNDFh=DC4os-=%$bggghv1fHghiM%fKA6+Z3BLL=(^oaD(3 zLkq4)!HycO z`tNj3Np6}PqJ!JOL-+}{AFk5%#q z?89V(wXfJ7mO&ZuKrfZoY>ewu3L4plbea-n69FaspzbfG^=*I$_jusEW_+~X4q959 zT*g%oysk+GM%Pr<=!-C$by$}6;8aB5EVW}vX55FnuJd~$@JOO4n4b9*51blNuX@J* zM;($ZH5=o)>ORZM!groHalr)_EPbazMq2tc(nFQcSwAPcpnXXj;Bu)XqWTrLf64c@ zr7gG@&$~Tpdbn2-g?0A~8?URjJ+QN7^Uuj}%9a?qgk&|4;Q~pQTJl#mhQ2S~p?^-DtWIj44)tEpEP-HfE%otXG>T zPIfQJmHN`O{Lja&_2sT43dcVY4#|JAJ@EOI1IMfl`}w$We0|jf?I%ynO?7lz&9UNj zx7k{6wa2PMY%lxP`*^f^f%mc>lRS79w9A3^+XxTx9UxM0A9QD5L`vEtB{`{N_}r+f zaTqxsEb{?Lg3sID_O^vI`44aW51TvP{?8Tid;ZFUH}}2E{Z2ZTdA3>Us1BIfd)(t5 zx1H5PnOZ!hx$B$p+fp`T6XBORHn>&-aWJUEhs*;=4L( zEu)QrgOz4LwEmEdx4ieWn>SqdsV$MxoDr4B-|zB+`loxf4Qc=qkaTA~3Vd9qQvLlM z4Pd4|TkEtavkeHfdbzWrE;vC#aM)6FlWuuXn8q&YKkKS`sDG=xj>uAX=qY&g{_=a2 zRP*|KFhSiJrOGCK)L(5wxIZ~GC#hJjj*&WTAD^^rB(+D&O@xWRPscIY zQGyen^=V*m)Sn}wj&`F3KkOU$Es!Xfna4l2X9T!scBBCvK8Jdz48-;v>#B9qw!6(* z103-T!5!;`YXtltQm|wOOJ@%1bCAa$qfV$Jh?MisKmUX(CLf>lU1iQ~oAwX=)F`9D z{jwhtkbJRY6!=(-o#Fxd84t!a+iT|MlMMz=#8Pks1NwX;9o)`qhtIO6*_RAPNBD;2 zI`Kqb=5pU;o!47%p}L5_)1*PNZ8LwSxPbDN{Gr=xy|*ogNHXd^B>4gMDdkw@OM@{T zmxhy3R>JI~4bu~m=kn{ARDEx<^FB7(4jrTB57qY3$2J*A{f;`ZFI*)%d-SMhDz&q0{9cLS7v$+lwydRR@Yu`1%*=&&e zlGIPGTggGsNE8nm)DdePT(1a7)y}d{(wKX>3B0LXc;C^E^Em|f*IaYW@=6dXn!VF} zwu3HT0;NHpgL9H7DFdm%Qj?18ou1R{tO_w%C-3X=_2U88O{yf+G@ z8mYxH)ekiNO2oy;?~Jgn+YR?2tuJ_8+d~_dY=H(`qxul+P?dH<^Hd%v+>v^xzK`nc+I z>HWBtg8LLJHF-c?)DNd%S;xR*AN;1emX^Wm^VA*M;3OpY9ACFr$u^8+3_J+myQhp4 zCsG<9OqI}k*F2XPd2B8VLIofZSt&f3=W928ZRxv%CQ&qPO@&OAm2Ks<7M$_EBy1FH zeRc*IC@fS|ohgE#jW&-`2RH((qd)}jUrU&H9kTokjsO5407*naRNbM_5qQ7Oh%5f? zU_}kJJB6fV+#`jj_9R1<DjE}FA1IgJWAnR>S08x#y zm+Q}`y0Sej=w{tVni{w0sY2Mw=Tt z2{N-S4vt(eU58Yr`5T>9B49Z7PB7t_q-P#zC0~-pNBh`q3EQM)`!#KYkC)aV>6oT> z&j=jVE#zS(DMgpipO@lZ{p%tG*NOz(?zu{Dzj9e2>bU+9L0lBo}VW z6gRc3VYSoACb;kNzEvBTe2rt0)_N^#SQipwJ z8}IVIo%xv*RI@(GpSq1s?HJh@Z=c&#?Q_bxj^&6z8u>YtmG=5_-Q&A7uub?!Wq>l1 z2o~ZF{eOfN5(a9zkYXH_Uk~o_UiT-wzv(%jY5qo^ACV~9e)gTqFX{j}Pkrw;MzOEk zH{Lt5$J$r!r%`5#_cS|-&uBk$Y-iY3Z7AF8y0|NeqL_kh^LCB&uj#Umak5V--bpcA zl5P53?8VB@zKIlUHk$@885=bK?u1l8)X9z-tn0s13KGh6foY1M?@vOF84fHd;+`wX z(W^sfiqagqUe{-JT~`avDb#vgor50ldnZvSY{_71kdX|31J$l%>7))7RFw(VZ^j0D zy=e^8D5$cIl+=lo6!^H~Y5km(pT-#VA*j^$Cx=ht+vG-_xD!!2Zmf^XnS!V!BkGWo zo@?LI@w7mcPREU0GIWiwqElT%-nncgquY$M>#~A7C+}2;<*73Ijgan>u<4-&5dg3ynKtlun z2GIFll%sZ5<=)?|{<7I9K0`aXhJeC^1N;{4q1sFJg~?y5A9BEx0C)>F)h7Fla{^Kx z)Fi*>KF@6mZBgoH+$>^-F_xZ;R?t%1CwFn#Nt_(Z?|L zQS%=OlP4Y3cc?CEP_MRA$phA>>GWvKW|LgrR@A{sl%`KAKfWm}p5eYL4MVv8r9RSr z(EF)V?tezuE5%fea7fo(W;kBj|Bj{HHmW^$xkmlmUvLWzZZ_Ne!N^9oaZ-8HIB#Z4 z^tsdr#DERcvQJv(oXaE$6UVfSV?Xqv4=pQmu*J!~i4+hE3g*4BNtkK0(o9NoeA-AF zU_J8qjc8Ta9&9WsXQSW;lm`nzKIae5AR*ODm70V+sR=aN{%7F#CZ4=#O5UH4JNfa8#He=?xlJv^^SV@33!{|m6-;<$spfJ*Fm(g}_k{`aGcBaXg z%L{caIgZw+UN3!jGTsgJX}|Lx>b8$bvXL6RqYiG&-9EKGp^T(Jq3O1ll|YYz3;ga` zHxACW%5*$!wwRhrd+FrHS3OdsJ-L`8W;z2+AF4-If7Vi7>xkS{d zt~HyR>W)+GkhO^qeWd!B=C6}3dEm=u-L56T!`0ZKG zde))XBLz!)aB5E)^AQ+Nv$1<6QIf53o7E;h9Na3HO}fntt~CU23Q$lc0;$tZJ8e0s z%1>GxfpPuK0e&M|D64pH!n15+(kI1WssEC_XyATi!xSf|?MgP#^{fSf^q;QR?0@wS zE{m$0YO_>--Cv|E8Qe1?QMCWnf4hI+eeNS>69aCyH3QM{!f1@#Cab+~gn;&!>!^?0 z3{SY6x-D(}lCZ&Sk}Ex(ZYI;RsPYch_t4O*t^kYeRjrpmET^7;vr z2@kn0@t$ORW)uGhMx;F92~XHua>*qpZR+YBPeB<4<+ukV2pfd&=qRl3#&sGf4h9Ap z*GZi4y9=D&&lw72uQa2bgnFb@_>I3epgB?$Iu$>Tc?MqCE+;6O5p(8Hop@rFljC-RA1K0 zl(w~zmugr>Cw(MC?Sv8DhmVt4$w|13CS%xiMD&%#sYzv(p>fkKAJFMnto1N70Z!({rO^%=UCBU8PrJzskOaep+ zP~!PUWVr6QJgDP!yQy-Wh`I(4Rd+owQ6PkO`zEfVzQb?u(b!WAev+Wb190yn9k*m( zwa-U(CykBPSA7uw){GyugId-MsL%QteR^0jQn1GKpgsJvuZC#L=@XYJFfCK!Xtj4`wiE1 zwG+u7sQp3NZSt?#5cPLT(7Fw5{*3QeT}(Rf{m(v9y>=g~SfR;e!fGn3+P_Iw)qbXl zx8#pT{XCLewiW+7A?W(mbZ8`>YL~UGsqd03p)b<$u^eOftL(cLwgipoXvsN`6bN-?DjMsQfNf$b*UUFsZ-Z6^>-yFIGQ16e-o6< zf{g@pRQ}OlEsM+hJq1;6cXd44tYoq~qhNzhE!onM-s}A%XU_ZF@j5v6_b2ebt2|QH z8u6*KA*fH%<3v~_-`4^Yk_s%xf!(PfQkWqN!s;MCsN-dqUAB4H!ydLR4s9i7(091J>TjMh zzYF$pT}`^%NEF=bfr?L(xc^rfb1>cT3f|*>3PcKm04~LLKQpsg%}==e&4MF;51-fZ z@qm>&>||{62X5Eg<|GU=Tc)LDHnLdTrGc#CGPeyr*2%uR-ZcC}J3)Ked{^>OT4us> zt)Jbm;N3bwsXTpUR9sE4Ex{o;gy8N$g1ZykB?JrZ?!h4t+y-|YG{M~=!9Doku7kV3 zlkdKJ|FITx`t+%)uCD5?+M8XON_~d4{MG4Kw}|XK=>)gW{#XrLM)96qpZ4Rp8J%) zdA4+2x?}T+O3GH8I9TWe>9lE#D+2^WjWr^o$T_yy#o8nyZR3k;C5yofG>;)aj1mrK zn)7-E&cIgaymEg8y5t4awRX7Q2=L}uX;UL*oW#Mj6L~KW+!l4_L+MCOJ2FUBmx}WW z`F|l+FGzcWZO!D((_5464l>R)^_HQZVRaCv=g~}E4UPu%$X)>74ys17- zb{fF4CgYMw(Z&uozsqehl8DLL89}u*3-A? zXvmmS{b?qLrx1FP@kF{Kz@jbt5NCUwW=j4cSs^7^y<+8Mb9J}GPlbV=O-95Z)#PVP zjybAoD2{SbT)(ig3*9T!UMutG%Uq4hAGD#latB(pbph1eNX!W7+fQ~fwXQ68Ha@Q4 z2Zm5`gtTuwWAe6ZU^Lv@4|Z`&&K-`SD!xKOtbaXApA|Y~9%+pIQg&V#HeiQMhs)2L z?Y@c0+0#n7KapyWRsZM|#8!F`9G;q<&4}Le&Y01_>3ih4rmVcLH93?enx`W!J8dwi zw=Kl=CZfx0|BDzS+p?Y7Fi~b|tz%iM5~2C`VShNntcg$g0IwOe+C0jo$T>ycxuo(- z-lG(fL$fr5zafIfc*coTD}x%5M1yx?_wKBE%Prm)KjPM>T51!PkZ};J2MtR$cDMAd zGJU;KTt53}n{`{wO=C+n{huU~yTKtZgLhXn)a5}ff^sRzXpb4|e1y$&^A7cA4(>NB zs`*(AY7!r}o~y+C>?wY5q=8({F;^Tf@7|I%Gd+tU7zn(qV%qo$8BKX`QSZnLyTmtp zD$U7LsY#Ekn^(nL?%(54v}|0tSeALrFb*QQ4`u%ze2KOQzN@crCgOi= z@tbA8qL6>qyg)#A``g(TO9#t%upEu0`I_&M?0zNo$zJ)Q<52sH#|VZi#fj9*uVY(F zL9LR+G3T~!o-8IRgdNj^GjU&48CrE|>*dN*xn0W<39f}1n1SP zmN=7+rQYDjKCWFBm|O_=p}_@ib7+77b*^35jn4(6O>kna{8q|hY3qVrY?Ea0xU_)x z>x7-&utW9+%0S?WWC9xa#@n!5)cyIgQ+c8Fx^7hv714T6gQSo^`>0G{{;7OZr=hUC zkh&w?n4i9>-4V}{hSa7e7xBs=R~-%fu(QRhH(vHq-0=Ro$1#>rSMjeb-dqQZ-p1qX z=U;ttBr^T36)Y^Pt~dxgMdyFqn^csA7@aGw<@i3c{}>V7A+@K(p0@k^Xa0mfV?{>P zwj*)*{5I)4?aAu5+?C~m?eUZXn{Zl@ux--Mpg{ca);HRS5fVP|}ZkdL{I z<5|wU`c@G)!f(4n7wtmh9!Ej8>4)ph5N6q=0mHLE+?y9`<;EaR-f&jT6B3;g5J=vf zFU?fA12ZA3G?u%h$GfOI)x7-Ngw()8=5~Crb>?>UG{@!O*qNe`BhP)-v!QEt=qIx+ zlZW?QcIuHKToc2Hct5MS)|BgE!tECGf)VjPUISakm>#D;lVt{3rC-5m0o1!%T66=x z91in_@%T)ZOu9Gpv5e*xg`%~?a*ZF$Mr_!8=sI?y&^Wth0D@ryer+$-J$v?6|EpyUv%Zf_K!~Lqq{c)$1)d;?Zs)#voZs9F@o;hsjt-) zUq$;691K?~i@O&G*zUbzwT6ilOiRC2&GuAHpWJT;--MYk&^zgzZe!{@bi^<{-Vx`f zL$Pk_NY>$gkr^*f; zHW@Yfj{U{nQr%E-G*raA?wZuy_C0_hF~3Ez87_Pb`mXf(>rHK{y`_Rx{mMS$pw?b| zv?&MKsxeW0p7WR6822Il$7AWnS(&OrMGTHAdWr~7{)mLEsMHNGGH2 z9Sj>OVJx|I$PZ=o=*9u`3x+h?Zi8&hY|zA6Yw+xgs*bBuo{@tz8V%CC^6^H8y=xcu zb{5=kDYRmpHo89y6Fmt?*X04!geu_R5-p#VyB9Z`zpUa%UuE&GB8J0*eJtnH=6e&` za-6f|&}aqMAF>{nceHZ<-tY)t`z)gHu6ho6P4@gGwR%&(dc>oi?U)I1@bBK~Ic|n! zM!H|^vi>}@w0{xpea`_mPnxn3_&WkUm3w{*vT)$@WN^}z;OHV#d6WM9%e_|$j@M*w zl~nFTcv4NUq826-Q%BZ&O_muUsa%6dQ&0!MntsknOc~ncdW{yyiq!B4{B*{@AB~r_ zxYfx!WP3S_u0rESew>@{vg5s8D@fGU;JDsQb6#^i0=b`O49ohX+;?z;$fuF!qX@v4V z;17&e|?sAW^K!? z4CD4RWR-2tU$!ovo^5ep>kV-?J`Sf9+6mwn`IZzdqu=_h7>Ir;#yyzCg@P`qMK7o` z=eu66>CHA`d~K%m^r^p+7^fCr4(0H)bxC8W_j_K(Dc#g71IbGRj@?UXf*E=`w zQU(zb)1BbKv6YVt!wHQPtLd6VMUAem#2=C7%kLILdzZ^4XI)C2IJZjdZ8M7x#eSYO z!VIJPn7k!cC5`bTvP6tS3I8kSMX_x0PM?ecDJ=_re?vB zKoW3VWpURKjmQd-=I%scKJOr^KZCekIdOz@t=c!)xeGC3Df#trOh=C@j%NfFqScIH zAPc4Soz@ZRwJR)bi@6{^Og)$T45jRU;pSH;n;y%d0~+o~uP2=qyOoa9;ST6-4+M5* z=6|_7J*|wLOvqZK?76R}Jz%_|FCP+=u~?_$+SDaR(@rLLOTkGfe~EEJ>8iL}E*%pxkeI4;xp#wGg<+Mgqh%VCx=8Vi{J+AEW(`9v*qFIu3;vW+s}1n<~-|OBUR)2Jf_-R6m(|xdz7Wx{l0|7 z)oZbj-XSPRFuhB>gu)X znV!`P4~f(K>9LjjW-zF`w6ajfITZs+d!8X{?*eI+J^!i# zE=J{*HJ5~Ssfypo6Fc*yNL_EU>>>$M}|kuus!sT0_8; z`z+&nV~Y#UuYGNe7dB1gvu!MYv9P_ZYex>(6AH66vDU;gYm1U{Udgqeyr?ovP$!Ie z+g28c!FSFwOI?+{&RJfnx}8gJIxuZ9Tdg}8S*mHNvMC7yL92hP{#z#OkjdA`N^CPv zM44gnwA>i;{g5k>?{W{tu=E$bQ!fuJjIn)PuE739*T}5~2y}6g+9gEhy8Kl2cn_|U zTQdk-aikZX?7Vp>{VHI**v}1W{aR%Pw{pUP#piuxwfu2)Y3-v)?Vk08nc1FJ$-)WE zk;D5X^+`G=8Oe zE3EP!XYX6Pg8uWGLz%-ivnXPRDQ^Ih0FNAOi~dL5fe66Ne!5qzWv3>|e)x3i*sSoF z0WLbCJlDw(|8PdE^g(o)vOk{2zXUcEC!|xgj)DHGuDhtN zW~gW+bl74fGe(tAEjs(7Zlu@Lqm{}O;_i?mO?u`*oXDS-vllhR7-#Qs*PJ^3)Aq}o zMwv*q<8yH>=?-?Q()a`dqILeX8|iaDSy73_TGnGZTm zn?Pfity8f@VnPs6&tmG#J&wpz#%Gb_zjn*WPE4RZf98WlqUWU@F|K^&Fp2Zi2dkw!-lj@KbFQu&@9 z&W@RQF8qbLyU(kGBJt(w6WJ4Hl=R{1Bsn?k?qX0y0mx#4`2HN;-vdZ%$pwV> z*cy=TDA-Cov?6YA&M@%!VB7`~NE;qP*4!LVzb*s|tGr&L%=d72=;>?X^W=QE_t&`& z#f*k3yeGA8hn`}0OUA41QV#L&KntNm@+Ac7m2izXp1I}mCq1VmSd$vkoeqaKtd+21 zW_rhJ-Y~mPf0o`Kvb78iC0gEImtjmBBAkLW=247sHGhqHuz`2bi4~-rDI5Bu`!R3g zh@jT+U6z_9LzB&=KK)!Lz~v)Mi4(3RDA|?gved8qIQ+(nI#SDF?&@+djJEsF%{>9l z<8L2axuZty0cCTnTYkphkdc|sU2Eo4G0w0lsL+`>GNAC2#|t2)`%1H(Tdi`bm!yZT zOZaUvls0;uGwv`>I`HeMf(Q%tI7+m}>O4@$6y^P~cHVTi0dqyA$eV{b`6HS6Qm&i_ z_r2AP=O3Ne#AT#2VMZ~NwV$gG3vs^Tjb+Ij--_=;LJ>6l>T?rRTws+SOChgjrYjDI zUwB6ModY*bo_%7_9SLYz;8Z+BL2@Ewi*!xwg>sZ#^Uj&EQ4iKlKCE$8Q_m8y6-Tq8?j{zTJmXxh|o zd~X1bdphc|Z`I0+^Sbl^HS1PfjZ7rm6HVKgSMkjj(c!3z9QYSVLnKqS0Z*3RG9&AD zu~YukQJD(BeE}Cy^ZMQRYn7Dq^rzxZ5egble{Yj!ovfs-E`Me}eC5uwl+GD{@JH9l z?3c4gIBGfCt*tn&V>izv2;`hp_KtcPC}BZyF3EUOOAtn?LC@l?MRX@UE?u)wx7>nc zb;9Z*wxCL^H?g*#{l={o6&5>NUwGrBtDGcjbS(%3l|grE6kwxY5N2}0#y`RKN!LJ! z&7~^yv9Yu~T;+i`)qBmRq-Zy>@-N*xy+aUbiwd3AsY6Me{*eWD9mMUI%_z3d%fzYK zKSixN+wEC1eKQ`u(W0)X(E2&v@LeY#mM-bVb{!V30r=(--}jaS8vW*gUYj|=jjd3W zEAKiK#z6%S+Km)!3v*Fgi1t#pFHU7qr^aZ(R?5f7#1XkJE#-yXMzF<zv)1atG$efHpesn>+bObxA>57REY!}09u z6A-zI?6@t{V2m_)Jcikxr`T975IGPA$m5cXx7~U& zMc*^x_^BQ`xJ=lqVyG>NPz=N_H0(KRb@n?xz4Od{TvB0Blv%SnR`%iyz~GQ)X$Dn) zWK@B7NXk^>2}G3p_SIdUbUVX;O3bVn)87%NVGI9%YXM-XD^xPJWL+A8WDf;4m2{>o zXf??zuctv^9ss_kn1RE5nhR%nwx=nn8>`n{`>E)~)Dm3qm(Oc*@xc^-nU{3-MWaP^ zr9`E>;cr61UuO8Vt=7bciM0xWO@I~xy2$vsj=7avTxWU-`(y8gHe$(HqV6p|S6#rF zpoo2;LoRyZnp)ri1m&b^#u7}C(Kuk)?6-^?dgg3FzV-SK>qixvv2ZksN8>mRc@5%t z72#l;w5|0jxm4uwY2?q^PziPu4e8BZCJDVCF@()X@<~H~|E5X_bu2bn>EiGWkG
b{ZNRkSBmlbzL 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%0DH10+$45KX z7M-5MMmCCUbP=t_Hrz1q)kn=4W78{JxT#Z;R@8{6)}R=9sr~$ZQ|eO(t6y%jzZjK{ zI_J;q=vj#%N-5k18hH;J@5*vWThB(Y9Z$cSW{TaRR|qekH1<*hsLR&qOVzjJy1(w$ z_S6jBllRJ;ru%DEq9R(97n>pdryfHl8MA*7vsnjn4>YRpgHR?uCF9|Dtf>u|Bxjt; z!%gc-v7)Q`@={!5hKePI;`M4~omAUdw%A244ZXg3VLjhNqgavG$C~DA%K}6dBASuU z3%)&RHSw`?pRXMR=QeA$QEq>p<)FRnK-OL(WnG~rjD^F8lx{FoxI}F>g#M3Mwc}q^ zlq)`Z&}BuPUM8CGh8C{5-!jgE2&SD}Eq1Ntem=Bs0&(qZ)9+#7nImXZq4L8_;&Xe) zHCLu~%kM#_-#y31-hx2^0=`^KZEac=o6&}~;zp9I9+>a_ANe;)t`B9*^Y0X&a2^b8 zFH_q|SlE;fZv=18Jzc|PezK*eB5!#+)s#y<7DQzJl%xU!+@ejt{tK}QhZ~h5!`9a3 z@1Nt=i2WtN{KCXiBOlgr$VEIF_OQ<#hTR{JZK_wx$}--eU#CEw}33^6U!h zj^a(!Q<1MBUeHIak9I8-xvYzLq5j&qXK9HuN1Qb{72o7FadJE|PIgs3l1g1k5&{sU zYe;6&y7Q&C(|ANd#PDyt8BOKOPWk@tvE1@aoeYCdhK8ac!#TWHRMa2y;F#Gjqo&joC zvFT!W9b%$|l}aZ1UJ7g|UV1pB2x*wrDroMGJNXDQg=n~Sa?=N?++Oy7<>4LwL`HJw zxX6l%7|Z>HNUE$ma$>Bo@2Jo&^p>Mwz-wrDJhJ;mjN8HdM1fS*FGD%|+b`%QNX`{n zx9WOV;3~6KbmK+r=>0W)WKS0z4rTCKTk!ChU(9X4sZASc*2HH`73@!WSj>MWPQ*rm z9=*BiZ!vJPru;ch^J5Jut$%<36b@jZ}J{r5w3-!eK##6ip7pa_C z&HJ+fxISNkN*`!6u7*E-^wZ$y3^ie`A!AY^f&}b0NU$%$F<1TUE^?pq)D>$Gi#{VE zRL()&4+owdu!KUJ`DYF8Csr;koa=j6rC4uK&s zh8Phm<8fOT{ESpu`_1FVMg`fTV1AKu26%N}{c-5ne$Tl@)i^CK%py}&J81fKe&q*Av_03vGVs1>0Zmd z*MCk)$!qF|%GeE(>At4CvtJg2C|6&s9PgGxB;Zn2pG+I1Q^%OyYMuU|J*~@-!|Wtv zY{Ch^(8cB6+i8JaK4*%GD*s2*YS1vLqG6nccHC;BoD(@@`B@yb zlp3*+xa*%nrg^4SVx~6Xd}b|Dkz<@eud1kxoPrvWmu<6?EFjYzh)ob{Ggcr^#NMv- zz2!B({;b+c1$NuYAZnb>%Iv?C+;3Puae?9kTtr8N{6O_ z%23=Kb|ifHs{S9wl;103MuY+Y<=8ugGbZ52W>)vTeLp=w=kW2f#kZexS=;r&m|%ac z$A^oN>GtURNN=2+jB)lX5}CsIL7oKeehAk>3`|{{j1tT8`0x~fojqy|Uij7>dbXbG zq+D*?3b>GHoMc6!zT~f0nd&3u`diM58mWa#1-8#!gZi%RR#5f?lX+Mto;Ep!|j7%KnH zRX1gJIOjG@X*N$-=SyarN9qt?Az2&YN1Ux25w^zwNKQ{I-}RAv9~h~HY47I)+DK}8 zT8LtN^c|wSdZ7n%+ks=&4zPRl;l!>~c8Rq7BvoqOvAuMwWKHVR%!)>1^rh8%-HZ-# zZ{iNU?*YZFrmP0AD`zvW!@NQ!d?o z#VVdb$gm)q&L)xLh5}CEX`&|DUKX18Al!MV1<8G9<85L}W#_5Yw;CkOayiyM!Z9Rp zEhJ`ilpLNUMkW7h0TH-RU03i}5c0k2F%Kubc*wpARhnlbWlvf#iq9 zM~W;w3As%P2kHlb+Q#)1yVYOS!|(A(SfUkeg0G(ufs@ec8-$}=!~&59S<7qjFhKeX zoM6#jV(nt#i|5^sxx0U|EN1QQ^iv70WmJW^C@Zpeb`>$TDVxG(qZH3fVZ-Pd7adFc zA>1sn(16p!+nY)Nh)plh*IK>HC7?b4Kb!Pw`^3YXAVICsXtuEJ3B9qX^eLt<3hzW%9^IB}4@Laikz_dT zR~t5FCkMCaE7#ziyHM8Ox8<_Pp(DS^+z)o}P?ADGY>xwMX3X$oZ3`rKO`JPmjiSyr z7j(?1XrRho!4_@NkD0E73Ag;ZFu&S#=?m9J4(St3G7ERVrDR-@%3%6f(pFb8;XoOe zxh>u${95UdA*VCAuJfVu)bN8znoB_wGdx)Q&O(3giFPR&iPePBMpM}3#LvpAWwDR7 zKhYK)B+5eGy|*M$`C?47`0FE!R}{Zx43XxEqy6sqGuVt_KS@i$7b`{Fd;E^}sr0~x zM?Z4*BHA7^X`h{r6GPTgR6YhqhRLpIa|h=-rc}h?Tou&`ZV=?Z2fBf(A!6=Mq+ln2PAj)^d9NUw_W&1#nr1V z1u14~wym)Gut*zPik^c#d_XUd3UPmWUGW2fx!vU1Kmj7J{n&cahcjWaSoNtj=C2b3 z?TA?ncI6L7J^Kzre|Gs6QmS@rJDP31|deu!D0Nny8f zTnukKFI7nCwFUQ^ktJMkeJ!eYzJnIasBE%u*eUbppNlVf`Z^JqNZcUDJuNrPOIwxNVjLHKU`vW^nmurbHKe@tl+$C(l)Bf7(}rt)L1)>yrzrxbr|zo zGG2z0Ch{KGsKbT=qX-hcJ!ZdIo5O}^>y22gt~Le1n(X607-O&6H&dayVL5Y{@ck4! zq~gJw!Un>5eVY4(KL6p`V@v;F@gL%39fUnL0hcpJ&GB_ z&SbpYsr|@RKj%6qH+Wo}+5hMFJoldWex=ciZ}K6EqjkQ#>uUNnW205;{ZCU?atS{q z1hza&y_)}pmG3ZHH;AbgCWklw>iGAwausmYiBV*CQlyY_f9u3XmLk(8>%1P)xc>z{ zh4`*GiYuJ`*=0F&&}z7B_!#k~KI5!X$AR{b-a-E%4U<3i_Z(TN*AkB#sm^D;^*1-f zMC=;31SfpnEyj1cEt+^sS&zUdg=}@J$EKtEqSUUl)5~64vE9@RAK5-Gn$x__KC7D` z+}DM$mv1;WrubT4O}z`?FjlgO?_#Qtyyhw_Qtn2o>mQJL%8ji)G^VEI6R~0XDaJDjP zz7x6n=bMvaCc&f-Q$PRLfsO@%hHt1Lnpd*gd|c?)fmK{?>nZeYGL| zRf#p-B6i;GhOx?ckH9jaOogia7+OTWJ)%|Cc)_7xzBl2zeUkV!H%f}5p1`}eQ~FB8 zOL?))TkTvn~uKgL>iC|#^Pg`q0X{Trkx;4Y~d@4633kTVRAPnTls~MtrPBvv&tC1j9@nZ%j<0B5h&q0EW)&vN16au7Se^Bd#!-*4`< zKFE0W15dwlR@rqyG%(-1=UvrdKj+sh=`{GT#6bnvckK=VIjWcFAq|60fqJ6dwMXi= z+ne*v^}jydTvzp6hxYyCGhb_O#qLKPGXF9NpAxO|XiK%{nKb5; zBRrqS8*THxd>&er>d@l9WZNMyBx>^9_a-v!^?EXjMViY{J!AW^uOpO(!E49MujOLY zSrqW}*5Wjz_)-LRcO-ZX59eRy9lUE=r9A)YVkmTH=x(;qCaI!8m4@_#Lby$4D0yYc zn}mtlG@Xadtrxz`SQKPgA6-U&j4@SUQT(=59eO3rkY)aPx8AioT%&iCcet1}UhI^2Q|ZzFtbAV^f*8Gc`+6v&2YHk#HHJh|nb=s`nS#d@ ztQR~c4I-VS>%W!?&Dm8-H4?K+WjB&j&(FAPFUO>Y{OUD7^6Abt#I0divM0|b4Tl8$ zsNyV-a~ry^cRJ@qzuCO`{_v~+tnw_@%-1|T`hM_2A&1l3b4AaxwwyWe@}O%kL+D)+ zSdjRhx8~`BLl1dC^Uf++3Y+)Eaf}wdU|&3*xkWSgWq)yD21nratAaGIiOs`Zai@Oi z8<+9{>6@#=rHUTQrF(S=RwkZLFHW95Zae#Ni}J!blgf^)pgz*1kIOc(*z^ zjqg*cx#a_80zI_W6})A(F3<#yX8BL|>hKEG@$NT9L#+!ae4NhVr4OV?#t?LS3(rQGca#BKeQ^<@V2X5>c;`QIH! zS`tVRlm;(LLv2M|XdOg%K9EQKFdt6%iIZ6#UgK8j#0ZsDusbhu8SN`i|8(j!5MJ@; zT~`wC&$O}>ZehaHG>cE>`byn*k-vmkcEm{{%Aahrg)^AxaIad*)m>6fPq`^kP77OT zzhtBr@Ofa4j#lu^!g*!m*=KT3lTq6j@exiW6jB8B(KZRhgktyDjZcweDLu&Hos+=? zA#c0V$f(POy!2tcA^Tp6LP#XI1)*#1a5<1?h-g~iP^Z3xvRxGWNFu}&KlM~ ze6=`>i|XC^O=veUhsLl!O`$ewxv8$Of?0oYn^sKM=XdjBA7EV($Q=FJFTA}8VXfU~ z{ShmyA@QfgzTRE>{P^olKX|c>72IP>-%|cg=4w6Wcb!<$S)H$c*!Sg*w7npxtzEcy zZ#6EeTe-aUQKHLAcOO=wF}Ioy3snxrv;2g|F|tuoN`&I8raHre!n3M%H(iMH`7CK+ z@h)0{3kOQkD=kX?RiysQFKVkmGAUqlqLAq?em!bEY2><`Nq}Ah02wN2j&1uX4bReV zrH$N*pkDnSi@>(jzBP*U+1r^>Nv?l7-lk7kl;ucSY`DM8B*lhj;dXMZ*P%^}k6YMp z>{#gwqw}qG+p`?@hcd#cAx)2R%4_b~M}}yNj9YNlUh5Q-SK!aI-@ZF@Us&uszNb0; z{aqI&jMVu0hv`uzFO>!a^N_|tdSSg03=Jb~f(20hAG2*zy46_cdEOZX8A_c`Q;=pe zhWNfO8BGXn${LmhRHVc*%oR_QWVt3+dwfj#pMEVq(Y>)VF0F+~%M-ZGo&Jy4*AT#F%@BD{47XWYkx5_@x_q?w}#y(-T8EhKJsFX=5~g4a=^ zfaz$M$oz}AG!*atdTbN>-M3t0UJLBB_MtNuh9gzHTTr1pQheH{cN>b&X$vI8cWUBP z&s^(JEEmUytp{<7)%QLz&o{q_W{kRS{naw2?%HKZ(VxU;zIs4(6O&rrs_QHOCI1>F zeQxB_Hb3EdLAlZU?cr4>yWQ+gUE%_@16+29(%uobX*0ymVlw?w6Y*W^GA(6^NmzLW>`10Q9-@p;y8b<*9O(g*#sgQ98^nhCYzZU2l)xh*4L)`^?zadCdE&kwZo zwG9DxnTGPB7UCQ(9V`Z3C`jDIep5gHu|3^gk6U9%D0XHl`{Kp+s7xE+L$CAiHtjJ? zyO{dgq+BGIv|Vf+)}G7)EvgN&5N5yN#5rx#gYLRd)bkbM;1f+SVQ9Djltk;ucXTfT z7<{hJLe1A&E9rX|L#0ery)s!34|iQm9Q5AO6NmzPb1 zOSyUH!xjMb)OEIEQXu&>9+V+R5ys(+Xb_mv_eEjf6;H9>Sq0~xF+F!?|1zdQ z+9s=(s5f1)^7}Wc6H+-Wn$}22x^i{KVTf=T=^UxRNvdd--KSk+V)^v!83Shs-s8n+ z9?lZ3G3lG$XxgXE9zvbnLBAKHyWSggB+>ixrpyWID1174kDNaaKHmDSLcTpd9W4%8 zl_^klh?VpaYCqH5oNKJ6aU0+p^*LZ(?ZFZgp7aL%SNPFACPoul&eqA@=Z6F_Y+FSX zpJqEr_k(Tj2x?cIfnz@=uMlve$aj7h=ok@WL>J z$h5gByeD#xj5bP?#imvv*DuQnCtk7PsGDYIAGTxM>18n_5PZ$XN7O(3_%Zhv<_N(% zgKmI-FCc=M?s5uEzSx=LjM?!Mo=K5t6K-;-nzbsE&k&wJQ(QjjiTq7i)g_lTgZon^ zl9)ZxL+``9&(1BnQC%td;=4{PkkSDrbmQfRg|f7W-u}=9A+L-{13JJ1FN;d*Re!2~%)$G+|{A*wNPNLIpwxAxyXR3K8y?d7o& z{KpAk5TRg1S2(FdslygXdmb~r-YjR&OY3j=Pp&!qs8}xp#iZ`>;PX*Jy`*%70o#!pa5nH(kl_JF5 zcKRSXGM|0@?Gz3MNIqNPv+wk=*HlH-)7+DL6ZWoVaa12-0<7vx;z4Ri;H!+m>`mB5 zQL{uV@qGDdo<<^bep0x2&9$R=Y>hdnJhD30<(LcKvHd-T88a-phhnD&Q&;g4tz5=e>$ zJc{7dEgI3}q~cVfVvF<;&=OJ*42$RXdKp*h`BJ0hTtUst$c?nLdRRK#i&LFSAo z_@)Q_D3WY3B!w8bvuo zdfV)JXSC4qegRdekkpS(fUTF360_0#L>Ua#FI#H=4^VdeaD0lg=-lBQ5@xc1{gT>V zvQ!DJND{Ikw$+;5cI+6}-l4zw8zBmsL#qH>DYXbD)^cT*B@z}<{Xq*e)sXmT=fRLU zYTtM?^lxTyH28iR+gy?%TNE<2&tsDsm!KSZbq4nshexnEtXiT<|e{ zGiK26aD>K6SL^zdzBneecun!AZUrcpMWmD#@H7h+ zjE5yKs9?}Q;2gCl@}yIs^9$LRGNq_>r%Rh~=HQxi9^kOwT*A}t5_gpyRZ#TY8u0Qg z8PU4;Qg-49?8hty-|)*(=~5>CGvi^19Y)P+xrkfo zYA=>BdkId%iF~Sq-{;k|#TCr#)pdVh5Z=8LMRN~OtsDW{N;Io8q*Omv&a>!!m_r+h z*I;EV<7q-S!)K<*yLs+4Hx=0%e)+L2Z~ZF}xTyo<~Yd5kCr<@D&rh9==VySEwd}iGP)+ z$r3dq zntOymh@3VIvf3#gZu6N>(CEMN7iO`uHh~qLN0ztf-E5#yeDXJ{Oz+*QrWBBW|Kx>Z z236bD^C5}h(Y*SVwi{_Kl&fK$Mf=A+A@C62@eFo$@HoEwRHe(wW=GFU`;Rr57t5#E`Vq_Ek#RxY%g7vxJTUL?&s7@;L`^|7w*N%5?C3Zv%PwdL9wl{AboKkw zO~T29p$5qJO4|V43G&a$q-#HWVXvCVJQI+k*8FPPE_2;&+~@~+Ao@7&mH$p9nF5Rg zZV4n?{6I!23UG+ESQVb)CkY_WV1haj8X*t57Wh48Y*>>;-3qP%o+;wOqMpWfb20hJ zqKEe7fKegPd+WS6uw|e2m~|jIV$-W1AT#~^84iW(n<-_~biT8lMAI~UgT1Kqj?^Qm z@|j!~1Js&Zl<6LCwv5+^3{D@=V{y$o)Th7LTX@?2j+PT8?6d^si4swz(+DMxHARmG z1h5R)!C854Eyb=Z#^m}i@wJ}+`F}@Y3DXpgf#{?NO&X0wlQ+1Y0WsgZvLTeN{T5Gy zsoNF3&zVey@Ad1BgwC-7wKx=T?)sJ6DkyAN>T&=o1OV*>Fo7d!BQYo#0x>PuZ&R4glK9jkInAY;(iMQ5lroqQ z%+H`?r$fdk09vA?ag9GBI4yt_KSo39yfYd)EOGRft9pPR;%S2vm>y zpr`;-9FDHB46-2rTir&pj@Dz^l0qN+wFVG1{wOW=$+D*e2bCbt@U?naiW7(KRTdIx zcn_;H|ETUZtPtwZ9fEp!UkOA57J;{jp!C!P(-5^(>Fa~2(Q*^%^B(DI1|WrQK!V}` zEH|JOQ=jmx{Yoh{Cj06qQ0s=O!wQJg;&e15^?+z6UBuqmg$EvLU#F7Jy|l{9=h$_@96R+*OkZrLAA^{{3`?1Pg*G zDCfL&1O)ktD0$6XgUeqG87QgE1!c1e@YQ0=+b)z5uiEL(j>j}aSngL4U4!HT)_G~` z=}bX3?CDv%~s z1seuvH(;3INJpzwl*v9v^FN$jyqZ0L`Z)-1-O9Su zZ|W6z?elFknxToc-%<^ha0iUq*yr4Gh31h4(m57`n=G0J7bdpwdV_Z5cPEAE<12tZ z2;E?6V}2f1pmwmpC9_UJM1Nicc{{5^eNaLoa>?y-r~WJWl*2%nGe=NUMhaOLBA?D9Q7ZEg>lvTR9kuDRq5qDf zlTlNd(0`)0Al1%W`e@1#?Jo2fZ0j;VLG->V zK!{Dga=sgg0ZW1`SKzKcP{c?^cX{}ZW*Yef(guitv36w@En(B0^8nMNLn0-99h1a=T!+G)EWb|*f>-d{#@2^0IkB_;4Cn*riL zj%i)mUc3!Z(!tGSo&N& z3U*(H;IT%vZdd>%agFRgUNt@NJ`+UBk}iHwFDScU7nTSLbW4vmzjV?et9OKH8-v~H zIkDpQ<+q3Ql!dNE)Z>vd`)GHt|8wwy(fMn;hNYYq_3=)Bz<@15 zaruM#d0;A8U636uA?gsDJA|)btT4o>KRLc?!167EnL?P2F5~mlU(-iPJ4i60+{k(c z`sn-jEo8*52&H+ph6zH2V9u~=Ua++PHBa9k!USR;dj8D z)VHF|HMq5R%0_V`D@4)uWa$!f6)Ws+8u_v~CJR*b=C|*SmDIBkjAeWS;rk3*6Q!x5 zPXoe+*&au`YSzajr0BhffZz~!^s_xh=sn!~uR5MVRlTw!A(2F9 z3LP`=0!eyrg$2q&kq^f7X{9? zY)9~C8Q&hHG4k&HZxsFSQk4TG6z)LC7`2x;vDU@!+xVw&)$p3WF|tE<$EZXfyldTz z5XUCm@;v^j74zY90oA(7mS#OXm{;fDV+IZUPit9llrI5ByaWO)E-VNL2!fQPs4@u17flcl&=6=yV9M0_Q4H|G$WlZ^QA$LF zSkcMe%+kgb1cWNyHm*~qUlDy!p;37T(T@a?CJjB$O0IxdzR^!OOc6tnV!lBxghL=9 z92yh-1qwRyr}N+^@z3y}%fMV>=omXhVNCk#E^*t6uHnNsu8rHR!!HOzA+?!A-}IWJ z1~!sv+L{=^^^ir0cxI5Kl;kjz54jq5w9jIlk%*StNj{biOofO%3H)g;vr@b`rJ?*^ z&*YtHY|9IYzUPm@!(D|$91{F=+@ic>v!L2Do=P7+&P*iK|L&E7%Dkt&r^a4U7@iX$ zGK#BTvFl@}{hl76KqPxM{ z&p9P0Y$r)H#&2PfhQZ-t!DU~&&bE0gy;kuI&eOY2e|e>m^|<|LGFrr=0=cN~StL<` zKQylw7`8Vf%^#-cm~q)_v#0%LfJ`OWa@l^-cF3B09bY#^nJsN%9sQsM2JCb-Qw=FI zIXMs-U>q6*G|UnN92f%yUbw&u1OzN06a)%*M+IJ@xnKS__lssO*#E{sL;e;NQW24o z0^U`OolH&boGt8KI5`H)fU1@(ziYT?$jR~;+uJf2n%EneGI-cJ{1pM=^WXtSZB1Pa zi9Kv>?3{T#_(}gM!2^u{O=ct|{-=nGH9x6_oFcJ^y^|?12LlrW6R7|!F)=ZplZhFR zvZ(m~hy$PaNiAGl9C#QR-QC?8+*ujyoy-}Txw*L+nOGQESm=Qz=$$?7Tns(v?VQQ} zrR0D0h?+VZJ6SroSlZhW|J7?~Wbf+2PfGf?qJRJX^*>ELEdNuJo%8=R3)n!$zd4M| z3`~sw)(sTp`3+x_X9RjRe+9|*_1j*mXwLL-EV{z!Pj$C&h_@G+)k3M$ig~+Eo0n!xCf}uH zox{GTr{^fA>Dc(D;71&<{{{@_)*0f+hme|721{dR_ucv#!%Ny>TI&1tF_F{j<#>Ok zXr98s{u_}LV#E8==DO3_l&!h0G`hHkUa%=5!BNy*I-|f?vckvPS@xUj=Z7`J^QXGb zXy4!rQiz_GU;h{KDASkpB!K zqQ4&-y4VHyKC0X?gqqV``lq{$!4{Xz|08&}@QF)bs7&L9c2;0)cTHmVYs6L4s0`8J z6p>+vI*P_|hSglTJX&nslH;Cv4BGVakx4{iyCzA`r)%HFGjtPz8X$Cmc)a}fg z{;dc+1;px23Mh4`kuB4%Jx=@N?;rVr60VJ8tI#XZZ|x}1;(1i{g$gh|IzN!|LC3euk0Txdt~iCqPd?O)6Ex+2eY+N55Z{!s91yQhF* z|B&fsgV%|Syb6m@t4UQy5r5>WIg8s;u60DXHiBhb?r29mA;Z91{1&0NcZhl92+Bxp zbXm!5lK#j={h_3!$>o(^na!tP8vR6xdZzV64%>eoCM{=Wp%N6N`}$jK&HkWA&-b0p zYYqH_-74-F!rD8hx|n&(OXinuHw6N3bHZsA?#TXdY@z-7(SQDfE3jsK-1 z$-}@|nb9RGZ?{Idj#&jL*H=UD3b0E%CLS>pi&Y2#H`YzxG!HwYD=~r>%#bOGMd+uYj-?y zTCKOK_fgKRQR}r3`SCW?#Hc~GNN*dCNuSHd)yU76LSF$D!a)-kKXrkiq?W^x)= zyVkXj=Qe(I`F=0p9q*4J<4fI6e0QPWDu(N)F42FgRz~uw35fO%zF!G%I`7SBkYzDubX zoU&2mH*b4so5en1oZbw~c@G$9cAM6_*epobnZGDL5OLEH8GU0=ElfQEd^I$p*4}gG zc6$ky`JkN6iHEnGYu)(yTjD&GdC+@~%5tR)0Ic99vscR?ZDFHG*Gkd zaR$_KIXCTc(ZHY*o7wbtbwT_u(^8lBS{DpXd3+pZ)69*hcgWyeJr5OMx@%$!3@7c6 zk!ToJ-SP#ei^nq-C|iYWE|{%+sIgEGee-qAtq9hVLGL}P&7gS1S20;DrIPqcq!qgQ zlqrCKZTskTbo*fjdAW%c0L5E&Y8T$+mB30CN5_C%x^ZGxf3}&pM(|dD86jFybpo zNnN%t0^d7eC58fn4;hT5J|Fm9zTgUY(!K2RyyP`Mh`c$xl0-XKYqMObhbCE)3%xx~ z?x`wL457Usy6>4libtc0DVIoAp&hjT#4=e9=$yk_i(5~5H#XCGv}ag19T*RZIG*Hf z&Q#LcCod4I60bvgTki1I?x;Bz?xt9BxY6XhT6MTub#1UWIL=1pHKT)|A;3MXjfR76r1`D}AhuO{Ses&Tz>Nb~52` z^1f=@lquWNe7!f(Ql+r3YhJVN^~%pMqjI`bMtt{erzyAuc_cOyx-+N2V5$T4ZGb&W zCiq~G=5}lL^|bbnNFJ-{FWJ+;KWtHK`ghCcnjIT`GnLO^8Xv2VXRR|wvMXmGt zz6q^vYUo1Ago#5vQNdGp8xqiV_mTEL1ItojuDiwRLXFSep67Bx+O*2%d^z8A@+ z>jVU@EhN9M zK8yh-kkts;T*{$xxU}@%ZlZ#s0awrQHuVqvq5Q~8W?FdSWJQgYy8lWMEVlC9w*}GsKC>}+WE#m6pX11jolye()%?~k93+DgIW`~S~a*@WxB#y$3h4sTrYVC zp;|FVpLi`G%Fn+z50mi_@bOs|N$ntBCULk;_xIm;o!3+)J!xm{DcT-gCbIG*Bk1KV*xuSAMxJ7Z2KVrIUs{k8#m zvCpcem{Y4mbmYKiEWUjdI26-i^-$$aFtH8KS<{<`Dubq>XV!rY51KNdHU1NIa@CE& ziXlMU5@aZ1NaMpB_w9Qm_Ye&0pYX16bXxMoT(KjMUQ=P(WNJ0#a`nlSGH*jFdQ*O2Ay6i1JSw2Epw=_Lt5gk}8BqYw?61LwP1Vxj%F)TVY%BQtp zkxsBaMLx2oK{5Iugh`*1m@H-U>1DC7VY&0PJ3BlK?8 zsj=8%L3{EM6jnMe(mC9A)nNIZP9{N3E}Jr=CQ6coykd{KhqaI)s{f5%?wB4f!1+gx zl;;oHW(xwxyMCAlFmMruSBK~HH3TDkUN;-+2tR}Fiv~Jt73g!W9m-W`!=D2xHRsI~ z$W1Z}RIzQ_fL1cf@eZX#a(0eZ73fQLqd1?N3&7a=p>zt$_9|_NR=D}>H`%G#e2GNU zo{Vy20-WXPTFQ#`EIlHr^ET^WB25 z1Ws!^gGOy9;Zzg-!HARJ+8rZTUBkhFB3x46OU?B0o01-X&w}|Dr%?_w#u$H%L0cxS zyfqy|qXGHAUbn7!da42lz4YNEL>d}YT$`^~{eH2-$VRQM;`>zKn zfIHFvPP_m`VN8IpGNr=doE1SKb9j-9MMjj0#!%c)Ggp^bY~Rp)`D7QMe6ky0e?2Uf z)nIV1EPFXyVc?6z{XWz;0Z$p>kr>-VGotk?n z5&AHgYaoSCg+|R240^eq7aDQ$)TFaN9GY%7aTkG0$-*W9FF}z&<0;(7v5# zRgp9`4c0Tl0IApRg9k^S?M?2u?DOuRWA{C^0kd)|+Kh zL=)2Uunl5U2I9XX3wg2)vut|v1;6^vQz+OxKWBH)CX9`on*O>p^GYIJ&b3h3bv z+tdN!4v%`2@VzZQhJNKQG=UW ztpDIQ_W41cCc$O82xWIf*z(AC=S;$b~!dn%fB z--f$z^X)gj1PStS!E0)|-28+?Gj_Uw%Ax*AEGjYU$27jrqDyYmcI4Dlmi7u~Dck09 z5%~tPJNDJ8?MSGe-S|X@&XY3Ueq0UJPHpQ5l(A{JOXO2m8)Len=eGKFMu6w)?s}bg zJNZ?MQ>A*PMO>h7i@+|bI3>|XT<8jMZJ3`&XNsbls@3p(tJSA?Ol18*^?J_fW&?=& zDCoISxap+n52X7?6Zq(gUEeuby&3EEq9mb;??8_8FqOTd-Rfjp~X%oohB+?7z>Zg{rSq!J3jR zuyXB@aZd(3MWt&b=E&?52MDh90w}B+xaCDf+2)zdpF}s8*{xT7EG~W$w*g{em2!Iz zKV+@W&FQs&)Wjycx8^Xo)+H&ITR2)&ah@u(4=bd6veF7L$G~ zyrSL9x#ZZ{;TogW;TCcQPS%fUOoYDO)>_zzW}opD_Di9kaag!Jpo?YR`wQe}$&CDa zVDu;_Ta+nz}m+PLB{yZ<+};)mO<;C>*MtL3Y2MsuS+#a zs==*cjTl6H#plMN)ANg}vAuRID2w^?mr?buRP>=xcUTJ@n!F#_6HUYr*F|bS{3}bE z2rewcq++~v-RcoW))$0pqZOWxEfUqXu9fx*6bjidpz~;Vgh`Y5(JnxGgzHi`}-}PHP9gwQ^V8Qq9Z5eo{+e3YdMgIl*J9)eM z^n=VfA`@@EY<1Vn>SHquM6KP{crxKNDb($Pwtl9Ivd3k?r2)xD+_rFbTY;UhT1t(t zwL8|EILw`hn9o7EPMrHtDATuH;c>jy zUj2uHwC@}B%Y!6%qXR-@Ab`4ONBDgh5zYQ;4*pNXiu3)zv+Nlh)>tg0+**sCNI>TA z)ILX2Qqn(4(3H_{mT^rv@7pcfw7!lJSjPlc+baCNRis4OjYGQH6-RC2tu%Asj7UBo zfm4|&eg$DI(CsM6)?xo(j@~F&H<5`mwic+qDuiGpe zcIjQgiMHqy*<#=4iFBLcUMs`1V6lau3N&ad7!C| zcI@ONs?=`=Mv0+yVaVaN_Cs8&Y{Po`I@t{6+%7FC9*9VCFsK>2r!q*qbEyyNXg}q@ zjo;IGsjc_Rd=eruI*dlIiOEke29fsNirs$lzF*~=$`kOZaWbpK-6my+P;#y~*YkSz zl`DB~UU*|1@>g8!8a~mS_I0XnlwgM+J{E6^uq9Xa*N?&3XF^whFnZ-Mvclx8n(6un zL2mqGCVc`iXjsk9=;F^$?PuLq`x(o{8s@`g+I`Aqrm@IcUY-v z{=a?%?!SJ7@!r{~!TZYe+53qFL`X5=5I)2hgp;dV=?=6 z4(CzkN5hjP|Dg1iNHp*~&4)EduBPV5Hwb;MaWCl3vC{3r4WGB5QBmTeY|y`X&5OYM zl1H}={kYmX7f$fv4gKJ?gK99KGioPr9uRGa3G~`^5r4tP`Hpk`B(hOc4fPjOIEnfM zE%>nL@2j29PLp*!LBRz8aW|PM(0x`vsLT&svRw~OfA=8P%}=aZdm>w&5Q%N|UnB&0 z&4`RojTXGi`~x#*eS1C6#=B0yxKlDwpB7im3wS@fn6YDT^yGNMG1&2^hbo-u=pQ~eM*{OT| zU%>vFt7<_^b&+B_^1ppj0a&8MNgDN2{)v@q9csV&49gdTS+Z7s{WrkvU}%I|g~wT@ zrob*4VBJ*4i^3Z9>njKNQ}4C?*T$7jt9h-GX)Z0!?Jkeb%p3k(%p^lPLeaC|yJ(w< z->sBY=-H};wz?;>DY{v^t#Q; zdxMd1Ra(VYaP`5J}x}_Qw7K5g*`3MXxGq^5^r>+6x958pQhP@EVU%+e19ZVB` zzk|mp&)9{@9&HxI;_DC)V}1ETZqSQcrq)$ARHj{2e6GFANXc=by8jc;@Q33cC;hx> z0p(D(6O-LkOD9~9OZ{31wN?bm8C>isi8LefLHq33r02q@X5L|9G0FgSRyZ&U7y(EB1IGk=QC)8phKyG{qIwO zAE_K3_)j*~_}evbYm*;&dyvKvYcQC~A1QuIdZ0jtSV4tbn{oV->1nAz6 zDnnIoiA*mV2Au?Um@-8blK(mfK9c=VgX>bWFE)&ORnXRn{^N0E3r#*K!j`-Qx64T4i z0=Eiwp9_dA{<6Rv)_@YMQ;Om64WgET5c|H}0SLbhNY~55fe_}FSW8$oi*}?xsycIh z7NkXNTi#E1R76|mh<5Hz!(l2HqO|9r`lfYvP6dS5!*aN-c$Xwmo;I|x zYH*}+7&YtMir|0vi@-t);XO*uzJ)BJ)E!9-%1I7+-ILsSGk(0@h&;NTHrziDxtk~s z>p|ZJR-~QO*^N^)qoZ2Yd!;EzOW)t95*J1*1K5_pcSC%YD$(D%F_Kc5jYsapoGYcW z_t%g^!(}iV3NRefV06^JU|EGk9=t=h*v!3!%lJRJu{x5N#gXlvU8KlnbE-fTqNwcL zGNYofD3))Rg}|yl*Bz(aVlnpQ<#L5AsT@y@U5y$SVl;feRbxo7S&7qQ(fj<7eHs%_lXH5KY{Niv`IB)WiOn=QC34=+reXnJI8)O&po3$F9BdbI{ zeypQv+hvl~cGl)Pn@g+CY@*W9$z+N`d&k9nJe#0=c8`S&iB0h;t<@!a=2*X1XMqVt zq-pu7xJOFgIRf>o^6>U@&3QZLRW99~X0fTJApG*;67NuB@^ETJ@(K1)JL@+qW9m#c z(_Xrhg#!t0-^&L03_dljCGu>UALf|UkstM=|6W^n{*WU7io+P?28}!zO;=Gzj0Go{ zzbW1Hxci;=TUoQmtkc{p>2rT8$LZq8bu^8uf)LP7x?=a&9* zvsX$?z78@?#k|HjE&dViXoA*wS3h391nQlo4`um@1_S}qmoXGW4K9(6@{Q<>V{l*% z{Y!SWP1w<(asJwX&_IaGO5pguMC@1lhs@Bp5DFrGOAC8h9V&EcAtnM|>x6~ZrWCfP zCXTf!AA~41xpYc&wcm7)95n{&GiB_?d_S0Oc6vpk$9>I^hy)gx>|RO^tr=!97~dky z4!fNzcrNe36-+EJs{xlpTCB?qqP`s_+wmf}$sf-eej6H&cbp;B%z{WL44|{%O%4A1dNK5jC7_mTG$}mGJ@x49=_- z67(5*8JuidH8anx$s_&)S06!8lIJ03uaMaeOm_b=p8m0Zw#9m=O-=?1Wz@t|sCOK< zT-0Q%ppP5BkE$3b^HWLf(nbYFZkfBtrj{iZ%>=u=;0xOMKtoGJN8#t3CT}@~F)(!~ z>WzIJJs?eSP-gBlmWr1VPZnStCQWWxkhEP*+n$p8xEUnpjk!{|C1m79JdcOW(i%gf z!%836f1ihn1?Umy+jmL{q*7Mk83#@EyG{g?+bH)o&4ud5wZSn))dM9k1#D?T1Us z%~kzlnw<+^rYj-$N}j}FwJ;rYfVYDqD};EcD4B=t^w8%ys-D*Z1IKY7DAK~j3r^i& z^VY=EZ}z;#6kNShBW~B!N#E(vLQLBr5-&mx_j9Rfa*rcDuJWQOv zh`_^eXs=aX&h%=&Nj&+m#N>Og3?=G_jS4sN zC)q;66z+Cc)4#1w4?^%vVN3|1Uo5@Zsg^;GJj~1_dK+@`?C!a~uX||m^fW;ivuStpf5rDSsZK#!~TWn31$kSk5e`~Fz}alm~TbMnEg^?c9}67slf-1YE}_InA)Efc_1 zN&4oiRD2i)z`5tpd*_CdjpOi;I+z#@t7)~z6fd|HAC=q+-Jn5kZNH1=*A+jI(NOm8 z%8o&*`2c1C&3!*_$rjQ}RO=q~g+fX&>kEi8XLvIZb}7UC1{-sZcggqye{rZ+5q`yX z%k{$ph%U!hM*>n3HH6`KoTbMV-u#3kASx{r>5kT!$#u)wXl4|dC|cpB%WnpJt-_D0 zGzzuaGMep2rSXfef~ho~LCG#*+9Ubx{CmxCZ&^;5A66~|TCgExoKXPAt&QP%+fF&n1Efm11~)j=LtD7;*+mWJZq zfZO#WDk_6}G)<(tcB?JG>u3fB`D?bYF^dp8^MVC`Z{`4+&c2s7nO_Z^Ub`?NfndI+ z|AnA%>E_;?>|dhIB`15KMq@P-4&h=^9uO-0ebREqXkmnE8rFtX=HQj@|F=PVSC^K=@YM-QTMcHZA{FYulfib16DU521V5!wsZFkry6 ziF+K&$X?TQ&~-ZR-HWGAw?73Hq3<;2-McY*VaYK_kX>Tn2Idw-ZQzV~EH9v)*kTXyE(~-fD`TbL)EN^YRjp6DXsput^7fF&v<-0prn?!+fac@pNpUrAC`6Pf_hQvEspUD?MqhGtv?7mM<2pqdRwH^z@ zhW4OOYvEHz5}Tn>9{(>H0s4dVaGF4^G83jnAQUV-VrOniAS=t@LNoB6Sn?Kbw-{ zZ#}I#PxzMSr5s;SNWaaabgd+E61}eUvGgJv8u8BjX9Y$O>RB@BBq6Zm?EiNn5TVNn z`Sygl{i%81U~T;GjoUw)w`yS^0q;X~(^P%wzXi4fd;HZ#_M{qU9GoT-Z5XBbik{@s zZoKwx#BMz>PAn=HU1H9&1#Qh|Nm#O|1d(Pxi52Js7?}waT(zVSR)1|WVC>o*i-l7% zdXC+To!*ijzGt!7v*nn^q)yA*tlbLx98EE1?+_8@5NNjVhdk5eJFQliC6)wF&om2* z?Zen+H#{UsqtifYdu~fzNN?kar}0ZZxesNdh6v8qWtZ?Fm77S^0>8V^U;)QD?ENEO zJG5Q$oPc}gN_TTd@jT-_H-rpc|L*gj&f199X>^Y)A5U4_y2XlvU;k3(W;==Sam?W{ zj!qC@;m8cs%ME_Bm%VQVZcd^k5l5m^00Lx}VUNq}e@HPrY{J9=`k1z90T>%X0GRx4X}?5YLT> zbJgaMvBsA7B^072??A3h@Awu|wN2ihVwdzz+gxhu!MeTtYH+^h40}#uLPsb)Xk{)|EF& zpQgVC2*C+t9HzuDqQ9y=aX&{P?#Pkm%sx4s{mJl}Fc0%-f_+WVqnBj6^d{`KoQ@SG zDg@Fy0Er$-t4$7BH>A-|2{cJB%1hH4q~1zINA+lYV^7oh`OkuZ{?kr#|Ih&?F3rW3 z9d5vFLA#(8&?m!g#*&gj3A`k`&Zi06fBSq?evU#SsuyWr3Fe_a_`q=Q^2{ z^3mHOmswP+j{7Q$U-n0LpwC!Q{T#vbrxl#P#%36NGwn|*;xBKFVq9hm+7GzfmJOaX ze25Wvn&N0>!$uch+yn_Bb>~auDRT;R6vFw~oL9i_3BT)X}l2++26r zPR$ebwP?CM+%Jv~0LjRe<3FZJgP^t|PshxSN6eXADtz4DY2Ycst|+f@1+D7}WwMrx z1q#d}U1^b))eEIf$E3c$71x@gLgdXk$Zq>u=u_*qC%|X1iF^J?ukyQS>+f7dC|hVL z_F3=vbruS@WB|78;2LZbp)D#Q<5zMTq52fa^B9lJrFS6fT9 zioE)m0UBI*xpo!jfz~e~eY70E93g%68VdCQJwG{hgI7(+uJna=l3_K$EGBej26k@8k>HFIs-S@IV(XIlS=MNhGfG!p`4B!<>;a|NSRVr6(pB2+% zS`8mXrEE(W%${vTT>gai75*6#9*ryM~8&!sS%Q`vtWF<fjtX zfbY#v>D{=)Qj1!^=O*n@*CBvnI8r7c)6=BC@^B9ULD%%)SU%(yGfCTjBLL%hlR*eb zu!_^s_pR(Au6i(E6+BTcOo&$*D(gS{jod@p|II4RXz0gk_DPpX+a?n(Zh~nFd|L2Y z7>de}bz5_OC%saQiAAxotQU9-^fGs4BBdyn6i`KcPUyV~?H`xZ%|dNFL;u7Pv@U0L z8imTN%bf@yTXCYtt2T3`V>yBytc9)-NOgRM{~(dl5#D6;4q<4VlL`2fnOtXa?sBm% zQqf!vM-?58WF-m2o2Y3e2F%HFZ5>=!jgOFDGT!oinlOBtdZMS9ND`(I6Q`Ggk66ic ziRY?Zcc+mBf{skDy*x<-fuEgD1@!=Kf5X9{@7P%-erxk2ss(tcF`6 z`UUi$LZH=-G7`MH12T75T@MHoWV2#R=eGq-rF%fNc<58V7CUcq%SAsYaH1V>qP|}@!56As-#p7=4 z3Y(QvS|I(^Y4#vQHFKQ5X)+M5zayEFDKw69V~7w|N-mSHcGL8nc^D?fb>XS$t*cf> z=_P2oQrk0+EX{qV6gCFAWsnpFo+t6UWIf+w$1wQzn?sSs_SxF$g1sVQx7k|dSel)U zKomThSNDhADGpI13%7Z$h*mteJ@d|T4t6`$F9@jgSKX8X{ZYLFNTY=9sKaz*9r;Xd`YnrfBKJSS#8S4C z!qu$B@<>EU=E9pLuNmI{?+|P&oFoMl09h(N0v@*k4NPI}RrgVR8EP}0EoV0xhD3@1 z<)6iH3ok-rif{J<`#j;UyCyp@rY3v`BKyULD4wLo<#%%(W+JT~IDE{|e2$AXZ}Jx+ z9V^!+0|(dgm8&H#!*@b2QNkoC1LW8YXM;Zpu1|eIop%@(l02LUpzEBgM2Pae6Oc`X=lzu1=t>C^eN;LbQpqYU9&e1wnNrA_JU?hV{COqSyn)l-oYZBTNL2SxYH z67F;2yD7QuTt9!C|7nj)Fpj?&59?*wZAplHKYxLN=9foxO%j7ydkYYsKxNwg{P|+p zqQ0CHz+(C~!_&Oa({JXK9lr!3t0ng+#wF}*y?PW9bTnh=M$?6_?Xe`4Ds4%YJ!sh8 zh!@T={P=>$2G0VX`GqqUND23#8AWI*uB~@}q&@cNQ*qyLSUw!#4_bb+n#MQzpXO`Q zaIu%^DbzD3v@JDL_l;lyJ-%+3gSKR|S2hSQrrl$Q0jLsdr+ys0C#%)@5Yx&J!r!RB;axOH44U` z@ggxa-eqW~TDDP~4b-VVnFHtaK~R5gtM2$aB0gq1t9Tr`5QIz=OR}M1QlxH+$6x3( zuqQ(2>@_)#HhnHFP?)ij2OLkzuKp`%hxvS~pFrKDm`-quZ0 zoE_I@BRsGjpsNF2!b%cc-zBgUZ0D7ofipq7(#u=!7=EEjI0DbG!f}KT@ElO=;&#v1 zVxQCxFw0$wS0}pdr)ljfpC$sI6gbT1=ek-%+(nK~1c7#^{+;^pY{53K{OWP#E7mj$ zF&eeakOWFO8uO_f=how!ex7==A3ow^k^&W4Dpn0v*c9E!^cT3%(JsHyQ0Et&i}An( zSZ|y~RXAmyiRrwBD{*tKH<3-cpBj=HPUcll)vK!b#Rv~P%(~#UZueQ`w(~Y_R~j|7 zPZsVZu=jOIZC~BsmXRvhJN4Q*kvZ{NqDkns4`A9d^K(`{_Cu)^z-|QV6&p?E6>PV@S2Z_@xKxmlB3`+7OR%Va96u`RicNQc9X8{e~!x z4x=RqWZ0H%`}mx`*_jBp)2YW_GaS2`O}Oj-RHO5tt>Hk6SSzoZT<%MGe6 z*rUn8$V44@M#FKL$Qc>7j@=pLP6;Zz^!L$3_OPX#AjF9DfUsCX>8*2a)8Vbn@**m| z-)M`u$#icKhKx=yWFTd~%s{j)N@Xv*KVuy=m;c8OC(6Kt1o>Fx3i3Rg$b6Po}6)<{69! zD+rKp<3#s@2f6^ETT3?`Aelmb$k}|7kklkE`cfv~fc408qSyQYhewB!n8e4dDi7;v zA~mjsGX@GWY5E7rxcd!Gg2wYXPcX^h2{$P%VOdRON1SW081B`Izxir<7rl^A=e4<@BX=6o2bX za{wiC=np8(u0%@WU?9+ZMHzy-6zh}wAsvquvb+}(Y4z~IBi|z6Z{kAxiTCE&uS9@m z&gd#ST^>JV#Aw=SZ!HD(c1_;XF|+8Rr#}*Jxcek?A4-3!MMv-&K4ME*LXkr-I2?eU z)>kh^%&OIgci+M9q4{?1tpqW3qE4zY1;GWGG31?>=y2>0n@o?;_QcOukG3CoF{k zh6}N1d{qWL*Q^?sTvZ|Af(m1+6n`|~2v!0}?aSUe<#crF*>1e5=Dtou9%oeFFZAZw zfyhrOr*r*SIetfTvK*^fl;P~JiQZxlyfqYpsAnY#Ipq%43|OZLsA)Yc&Z)lRx^`zFbtr!~zj ztjYn^fyeZKamcGHREQufAoqvH(P-F7e3ltp*xS{5`)B|=u!}rCOqra0h}rnu6Ux`` z`!LKN-YnNH9iy70=f>$3yF5YqeohLg9zW6~;Vl{bLdvuTpTwzf{p8KHenk3KI!1Sp znP2uetE37`t?>|wo#~F$%(_2riCnAT5@sF#&Z@pW+uyf#Zw_L+{Oz9c~UQMuNs7WKE&F!NPCFj4Qh&=x3<}Rh!?yBd~O;XcK6OM zk|PGz7bI4G%0@f88kw{*ZqK*X-WtMdfpX=qu0T&#)({IyqKvOB!;#Heo4WZ4+m*RB zhnJjOW-Xv!=JArx>rHaaASVUo_En?-qxd60cZCJ0N(I2E7t2U!Co zMV9!h!n>Oqu4+ZaE7si#w>WK6bUMpk9F3-QriOLoJ2KpT!#sxtp9PiM7v zJQqkdpF5Buk<;lQ-)KLOC$y*qJd2bc29uidTGpbI1Tsz)PbM*o7FmLSGG#DIN^_ZZ zLdd##)Myre1L`0Z*r|PPtq{J3u(#Cd>3t!A`0(dckH$Hb(|ewsvzXg^7ry2fSmmEn z@e4|YAPmNvB_V@hxhZr>zfvWlv|N!aO)tY+S8AA*da&{I)_Vv;vW6@ zDt2i#f!F;lqPZ`4(Z-XYIiU5DJW^1`CyzKjq4}(!fUpCsL)Hxk2l|E)SaDYvZK05TAJRe~6 zn93pbZBG{J*v^1d5eFh&Ts$R7J8WA4xwIKafEGBc)Q8VR6hC z%#c^I1*t-#HX}Oo*%iwUOEYXQj z>lkXruAX+Xi+u>0(wUSFo05R};e4xHL&bWa_Lx*JrZhSK8RqyYf}HoJjoT0R@M1pt zeBm;u`!1v565(SYLeqUOFCmEQY4?YaxLg)-BaQ0(&16^+;)Lf_!|v}BG~I;y>K5`s zX-oQUh57)>{kify1!<-N0BflRFU0QXOVY3qViFqau18fBk{EfW<)ZJb@+$zpq#2hM@gzB|OxHYc|XqU0D)r$YUJYCOCVSUno15zQCa_ zG7!v?5uDg+qXl3z2uTF(m@{T*b7`uJpz|{RJ##E7xTU$)zEU%`Dcz3kK?WoEAxQX( ztD|PMU$77Ex2kEmISN%qeT>u3bV>7xDHW*bcxDaE- z#kFnSIyk{eaBB!2G`PFFySsaEch}(V!GgQHyLGU}-Q9V8&b_zZU#n=UD7tp{wl&ur zV|=^o^Aa!Vnz~3vFz-LH;iVv~usGu&wKU+CZl!s|y!HO`{M(8j*~Dj& zdA<)K*U?8a`)k~XkyjBunooTFh9R4q5-V=g+sykQh!q_KIi6ZcBVAyV!6j}Z=8h-o z;>)gN(lnN#z8tqjV4=Wx%L%c(XW%r!G;D5JzV7p=%q4E>5xBaC^G;!sbZR(isTAP9 z6b%g{&@dC31|8~cGFzyC72`qFmySO=?XY|_ML$V%3HdxlQseM69xKg4zM}fY~Mn9t4+A5!}&ACfknEEDb{Z6xa1wn<@BOI&|?NzS;lAobfK zXOfLv0JaCe1#HUNrIcEtK736O_Wo3%9vf>qI9VUVAp09ZC8wkVbv*u+Y$QacK&b&=k!3T$FwVL{ z&gNV?!ECLj>jNt{q@RJ7Qiu;RjQ@izx3lL)oDYBAE8K+s>iCJ4=bbEQj|2qOwqy6bjI!y%5 zPQe@eKO-Jwue9XbwY#UCw?IA=cqh?xpGW7sbCW5jXG@ z1U$Tx*ou1gN;s25k1~3B@5q)k#}{Z-fBcY^r8w(MRD-}D^Q_?mOAkkukKj6>lk?H4 zXz}5Ia7d0 ztOn5JUs><+JDPiO2Cdz5N6TB9&R<8JKc`5E$jqtbr0PVD_rEOseuLGm9I*!~y-tVg zS0dOui{uwmMJ;$imp0E8w{9+1U$w3Vap$Fv_^f;GLl=>Wi1P*z#L?1P4Z7LBBKFTS z_|od?4668ZuzgT``7GWT-+(p&mX4Qfd(;;&?_3i`{mwu8F4x`sXBk7T0*Z$%3|$d1 zYM%yr8p^a-|0UP($NC}@zYiT#B{*D5=7+M(h(}T^jf;0d-t8{s;^ySCF88o zMYBiPhjj0$F`StT{FOY;c?&rOR;RNAZ_;Ov$c)r>wJ$p4=sniJrEKzhy0 zgusvn1x)-&W2kWfmtQ-aQls|H^Ysoa>TF8B@5#-5jW@qwyq@;%(c~qAHO2){Cv-g2NW``AmRWV}gwu);IG{#DrJm_+e^PRC@EBmkonG zjz3Hvf&OQ=XeCr5vDBC}dEi4Tj6eVC(??d!y7O-GIzUl_Tqe7IVNxZoo% z*d9o|ys6DfI#Z^J4|Ex$5(5%*dR-CpbtwncvLs51uP*4^1$EC_vl}jUSjs;A(bR49 zJ}=7?n)n?;81~$SbiCga?VRa$q?gFtVrFPMqf!q%Q$%~L{P$Gjf$wl4 ziAw6bnx{17q)lc2DC4Ci(I3QrQr8kk+4pr;?>lzD*W|XX%>sR)x)GP3t%2mc9vMm> zH?dguJ+|sw`3;7kjJ6#~Uxs$7H!)~2sBS&2lkFdIyQxa#K#Vy5BAw0}amKnitvDx} zU}+G$Ks`Cs$Dk`dr*@ZJWplZG*8N*;dXtrGl?{xR@AtZu`k=Mq-=rM9Ge!Rk5j9-0 z^VhtXM2~SM`dM|Z5Y)yKrrDSEEqoldApoy#EX9>spFTk0M0^sm)}#}87#NC}6=GZ> zRN*RcUwxaJ;vVFOW!hUL)yzp+^8W1vlFcwM=8y0E7zWK#Wzn(AW8oT%$zCYyGU)z=<@UvF*|(ITIfgm4!cQVaFl;!} ztP1T});R6rG?}UEf$?t$&qMV}fn5$b`_pCm4o++Qadz@aQ+_?D1Nk(7aNlVQ0E4Rz zN;Zwhlh@(gboCcHb)PlDewE&dfM(;!BktCChJTkf(%yI1_g6u5$ch=X;LkpDSH0BB zvx&w#L$KQ_U=ak6o1tX%0 zjS+sjtjJNG#c(xWYtX3T9363e=b0F3SDT>fa3rWPYO-{-m ztqJD&$9~$Hg5p(IIZzzXQoA!2PVFEH^*{y1{h(y*9^KEw3??Gbu}n+PnKE9xXk3>h z&5?XfI{>uhj!rn+Z~7i_8u=6O_-agjxaw7V#p3*4T4=slrAwbHNsUC&H(ATPJyX}O zNYX{HJ|G#$4q_At5cnWwd7RQL)?^6I{M-mDOF|vZZdvc0YCln+yp?uOa?cNLsH1*` zGea5Qb=*F+yb{BIf4q@*91f8NOj@&lX@e}N$RP}b1T#yk|e7YgG_|| ztLayrsN?(aRvmm1PXJWd1RxBRq&_Kr%HP7nQ0O3y3=>uN56yvMDy?>++i?e(a<{FD z$`)oxYjNHPuX(#Oh3WM~7C|Fq)X&_+lbadl`291mUtW0ivN)K$>t-*4xF42$DMc1~ z(qeO{f1Aps3T_98_8rHrtv=y>h^Z=0A?H*VK!nsGl6Y0O`8{yonG zMBqD=Kp|qidJYuNRa`5o=A#aEJji-$RU&XxjVm}A$<&BumS`cAT0-=n#XBrFJAg&O z7v%A@X$snRr$xSKsrI)CbTa~%$XY4-W)iTdLIuPxf|ZI{epEGV7Lu#}t^#Ib zF1(T*Q?4qy7}I&M9%;GzU0)@5(^Vst*uyxYFsI{>O;diMHU5`APDaXAHGVhf`x{g8 z=XLvYt1Z1^*4THZA4Ys!>sod)+8o*)euU(j%w{Qx8eJ0!oS8NO^`;1$rcq(%4>K){ z>W+>9iL{PNKT&LgHTV?IG2q8GW}q!SdUE${!_-EUisPZj03`e|V_|fRIBxwYg%mXQ zY|C$2DLT6JJ3<Z=Fq#N_59eVv7Jh+@2w*!LNU1xt>g4@X*obYB z^86B$-=31?YBPIcu z-=+mF;Kl%i!RrSDOE^zPIh_-_bdaz+C}4@8Nno9uY@Wu@l-Ayt(N#j1Lub6{ojz`^ zI<6+7-Gtx+aH8JH=%1}o^eeefE536$HhZl1^DJeC)%cXHCtg$+*^x368AD+a|HZm;*gyyW zb}58V6#=D!l?fHJn8<>G;|@!s?b>(}t)h}-4pps5K>UEOG*W>5o>`cH&1kr-L>42- zO3jeda?3;#Ybm{X`kP$L2C2-eNBy1(NmL^n_$YhYZuC5Kk;1W(J}Z(9#)y*i3;NGy z1HSbQ%G~42bx?RR|;Je7{@D-K5e()Q$Cd4jW@*GSsPUm zV|+oV0g^9-IeREl6~BQf zrVY#i{-6`e3(X@!66WqhFb2oklp^9lu;QoT-SmQK*O1c=qehFoLgY=^fLcbrt85#R*Q~o z`@ePkdVCB1!fYl(t2>aCW<7P;eb~~q zMs!kF5NM?>b#h6U2Jmx_v;O0+u1v*MDxHtn`Mlj-U3wyA{5j^U78*tAr9>&pu=c~D z<=3M7WzZ3{y&Sa}{`O!jl#b4-0K{>79q2c1-Aq!HRBq%K+*EHHT5D zkqDH+d~y`zxi8Es9}Zv%=JU1bUyfyK3C-s8lLNP?p^*Oqu4QrILt}jp9t3Z7IZuNM zW)?BLLR855d}wmaeC~)sRNx4Eaw@NZ^`>VJfZ673(nD53@M53B7j8@=E2n^~cz;rMmlQ_#u_ex_y@+#;< zcp=smlY~UxTH@u_iA1>w1EfgVgE|W-kib_8{m-tlk_eRbhI zQMF3_!tq>PUke)Wgqn^w15OzpePL-FdCBiYyz%fKnl18Q=XPO8Cqz~D76@$fPWJ%Yysydc6=Sm4 z6n_(v{E(NkIuFIfWh+@W;1yIm-jOFqgw@C))7~FR+FCnl@U5suy5Rf7)|paf(EC#K zRFP_s^Lfd%J`ANW38RZcvGv2TEJmeXNHv|wp}`7zu0)DX88&8UP6`tl@nq*nc>y27 z`-Q@>%<}wN)F#%7-94`55<`a?r*}8OlV67+)8N$c1Po+3N4Hk)PS0sNiA7#!$reCX ze~X>0&F2h|!RL{aKV_}Z)Sna;S%5YATPe<+_1#+=D>j=V7wh{s!smw`>ZXcHsTPq{ z(X|>oT`WE98qGS>vC0>qXAA+^$s7CUlh)6rXKk$3VV-!`zVg9U{dK!>@T)x5tuFRM zY&eEs%#tGABGQHaZbf45I2C-pS+{%!zp#>l@y99pS8~1vdVi%K%B}+4=~`dDYSZ}D zfY=2j07Jgw=@?X`eSub9#Sc5xcAKTYLJ4!M|D)ia3Mh!Ex=~>pL3yq}H%A-*bzfmu#SFT~unl&Pq9v z>Fi!>83E(!Hhwsv75#?~C+hT-*b$)gP~pkKCwHMWuN25Yh!8&Io?Ei@`t9I_n=i*6 zAaYNMG;92C$8IYQo^WC46Z1v%xLpN+1>cyE%@@JZSE9@x?tky1iRjw!P|i5=+9&k7 zE?c#v>c0Stj$DmC628z$v4BmX1^3L%h8mGYhi+L-MW4Xk%uJ0 zzS7fscUl#Qn$Xb9^u7*edKH?x>p$O39Q@rvXyddVzI<~me3;1pO3siH%+_1?;6``c z6|8ecYXkkR310-pf*~KsWihL!B7bN$*8kU8et97R?z830+OycLAbEMWu$$&jD`gQN zaW1__7rEB_XAA$n_W0rall?|@>sojDKi#(g^{^fq(Bu1Yx!u8ka^L?L)&DiCPya)U zeQ)(KUjBzW@xQUDAKk;RG_sxGwj#KF)EiFq*}Jk6@X;Aw@Jia}o)Im^a+ES4#nU*9 zJiPW`3icgmhJJeL8pFm6rbPcJyTz5s&jPln#~i$`bEWvdkgYUU=pJ#i#u!dki)_i? z`f3>7HhP$xxwf1>k7W$}8}@OB0{4oAmNdJAoIDO3TkDwN?^8%YOSWvr`6K3R_6Lhu!85wIrnj_h z30n3E4T>}TMwccZkP|;H@XCC0_*pRjuK7$n#)UiZGNucNNyfkQ0s*vTI=|rB8d*N1 z9LmSMj9QIHv81==@+KvkPY&CXU)q|x->EZyGQ$PArOhYQH`+W{|AaX;m79&3IaFi6gRPh;R5hJDxU>89gBVSu=%Cn_ zrW5)X6u>X380&IYCoShD6uDOZiF~0k0o-#<#aIoQR9eR`V2^i~%NAx|@4YjJ*g0E6 z+$mp!d?Y3n4Occz%rBu9H zU2qlcC6*bU9$%{Z(iP%t&=r~#*U%%2^erTa!Lf995~d;rZxNY;R!6hI(9f?R;csQJJfe{N`h3qJ)CXioU~%~H{P{txlc^% zA=Ya6ZN{v>>SltIY5KI@={2tXTX^RfH132`>Z8Wr@dqK)H&9=Fbeg{OpZ+56O_)2Z z7e99$+>f>b)W<+~L+QMy-yF(6@#n<*eZe^4#t1op%VEjfleZtwl zIqMHRXuWakuOV<;^j+64tc|-i1;T#jCnXGuveWk=Cq>8Vn3KeBcF_^s4wJ5&r}eT` zK{sY#8s_5W?xSYXpx?5Z#_@e}XtwrIrUf`(z8Lv(kei~UPTBC~BCPw?!9*Hwt{9a? zUwf}_N#Ju@w^(^{Mdib|0GiPnlSC?FAQoNkO>=texg%C|Iz=h_Md};P+m>BXZAsK& z(0JNHi>x+}Iz`X@44A!WGBTi8XEEtSofu{tPATk1NV65aayYtk{3YDZ5eO)q z%0<@)zHi^bYA}?_w1WYoZoqGNkW7j1-IA<6EhXDU$i4&b+8mCzm~m#8v)b4rpRg)^o8KaqCA^#L zG{t>js>)OOm*9D5ylk}*S*E9Fva!`BcyF+c71_umQ*ndiS2NBnePjHr@i?|b1JqBHW(S&m5$60kY*dn{KAJjgtjJqvDA-!-8puM--%chPd9 zuzm_Xauop-QZXx|5~ghWA2<3<4(4WT^Gcjnx9^+~_Q0H#Je;Og+$RFf>nz** z{t|^21&1SGQRDsWlfS?q<8s*FJ?$3#Ytc4$Mgi-&o><;Ryv`@?f{Q+Pl#7iw;i|>V ztH**qJ|>TC|Kd2Ht7jmU>aKE(+(%ZXc{SSeaf1>SC@n<*xzJgfz2LwZyU=uIYD?_Hhf5v&>6DM@8_knM_|4G0cqF<^(ZN|V}dwzFp zN@%uLAH&*b+__e4oedKOh;YZFkMp&`n+!NVX2M1mXR+7FH$%zdWs8=e&zGt(1cU(8 zvlVrEgBgB+1Mq72L?FB4u#&wFo8s#1-Rv$46!DcpDIl~D@o4PM+Ue%p_A#g5MvMSmx1H?r+7 zawVK}1@}#+uoB~y0OPEq39cW1_s_Id1Y~l@&@9%Sf4VoG+579q!~r2l)UAZ6byWGL%IrcIj?#fX5>04>EFXb z6?yXZC&!v@lj#pf5vq^3L%7K=T_4t!@_1uUIs95)R3v(`X=>t)xWx@=61F%VX)BtoEjKhoO@hLVohMFEpAcd%INW^F0a=EMjpn63SiqALo zE2RHQ&Y4v`5A#Lego|?yy&iQYw62&hHC=jtG~YO2uBtTv*TaS}XA916J(c8AG5xzG z0wu^Qr$4&uZ1O(ep4+G_a~l1oh}r5ajNCbfhp?qabz!Nga$RCL0I+#(4yVKBDESM7 zn-J?Q`;A{UWYdf6km?zAnxa7r`}Qx(bNqA(XiXI_6_8H6Fqir}`M0GRAUTMJr0K%H zsk-wT`b5%j!$m}HD{e=;gTt{>lj_~jvO?!u$W_o(D|3My+rKzvPIwWIY}p@ccSc2! zvuDy+@L#GtT?e4q_0{Zx@8NwPBX?~zHD zT?P|SltNf_N52h{{eZn??ZS7FUzq(myhjq;F=qPx@XLA|U1p`|;hioAqc7k^@$e+x z7kNG6D`Rbo`PGqFm16Xv{RvP;(4L(|UtgepsYG7==Y&l-IYwPak=meru}rNJ@FY<& zb*+RU#~35v9_O$v72YqL>Wc4m5%*4z_SHO{en4oAX*2WT4K6fJEOa)Zx}?AHIl{$6 zpqb_Yz}q7j?510XbOU#-0TnizHPiCCWPXdr;mY@&yw;K9M+2kvt3N9Xg19_U68Ptc z1fC0EH#2+Mts_*rL7V#~ZpiurMUZD;BgMKKG&Aa+Kg~p!;VlM;+pX8!tjFA}ryDZ| z#*}-Bg$Wb0kYtBW0j;6yKFA`n^gBpxBZ6M!`a69 zdVt&eH(a1sI|IY0NuuPwECurc2y02%pP7_5ijnoT>*s@9@n#Ox%Ptev!a+_S z*0+sqPI+9}>8I}ZU&l++i(gLy5NNILMaNO!Y%`AXJ=x`}%F-BGNWs`WQ_x_A9?ZqLJY z^7!{(#Q_4C@a9w5y#xdyA$M%{UxJ7~ejWuP{OI6>_;JW2&{FtG&-!f@4O!d#>%oay>d5hMU$?NIFgcJ=uWhD&MME24a4x?#c`m}M3pfG0wgHZR=a_I z$js!;QVB%TO~f78l-1|s=gA1?%_!sN6qbJFJ)A6H`hBzod`!1^*LMhuHN>-d3G(%Vl&-4g#%=6K+9ooo5k zaYtI5xJJHEmMkX>NKbBOK=IlIfLQb6^<@=k|pmwNNA{Gpxl@qeF9To=i0UQ0Q z=OXQggTt83=00bZ9wm~?9qVRspgVF$3%n$>*I)|RhT&UeE!k%V}MJ9M4_wGug zgyq#wD37l~i=SsQ&Mw%UBv`cSKXL*HjZdGkgmRn%8;okEM{1 zYXFbdsLug-szQvOO3q@8JVR$Zc4g;l&Eu=6K0&v_UvO6HUnSHX97}ykN5n>jktlp$ ze>dAGNxxt%8?@BOU>(!XZ$TxpO3CH$kvGUA!7j+;a4yTNELeV%=gooA9*u2^S{=@H zcTajNa1n!e@#Cdp@IC~7%$oRX*|Kjc5)PmL$QPnTXodCd@_veRYiGo7!epJqnCfs3 z^|+AO>kb*=N^?!NM3V^W?Z;&r&oX^qc>wbgz%8K^NOn}1FDfJD+O?s0u<~hqFj}RR zo=$Pv6u~}WC<3I;3gy43C=Y6Jyq`D3xeV!a8W)5+89iQ9af+&StD>yG0QqM&f}BwlJZwT9YdC=T=Kx))r2 zEc*Fw#f;Zyce~mVbb-zX)6%xU5Qjeg%M%jbMe&y^F566rB>E~{at{4!z4mhZ2_6`U zozv{@(?B|0Iqbgo@FznE?iVx&T%Rq@mLptz@dNRXpN9jqIFp;gL~= z8TTT@U^b#HFjS1GNtAM%4UzF|`8zFtPl`#!=M9kQ}lF#k+@I0!@MwKQC_ z_Y?Qtid7*n4hy65w_y<>p}e+U%WZ0o)9$wK=B4jb`EDwXxu3zw5h-no;x?gq*EfP+ ztp?kA?yDtpEz+45lbh7?coCU4ZzSHSgGUNYVGNj4EquhuiXhIaYAU5~op-glvU+qn zej@pCOUE~jKPVuF)3KK=fbMpAxqnd!npLG!QwtBnMi1duYO=XM!h-uPvKzP^9?{&t z^RuXGo8ApIMlz%NRO&S2Wi*+q8t67ywIYZJ4)Z)(QKLwqWmWmTMFMO@aBT3|$8!DN z%V2NIluL)$+;DIFV+98XC&jDxQYUM2b?|Bf7jAg0>0i&*cE%?UIEsXNBjEV1_dWDb z{TKnw;@!FLL3U;HDE1UAYrzheW;T=O z*R!tC8M9V3pBIr4?|#y!L=hMdm((cjTYQNq`3}Lg{r0qWq?V^fo%)KtFvb*YCm_04}6gG%LQ}eabjpQ);e< z;&a1cWfMJ&6lMaLt1yPD;og!qpAD^xjrON?V?>rOM@Bk={VlMVFZjnTTNylljou{p z=*W2x3o3RLxWjt_JuS(H!Ey)`QZjle(Ot)~@*A)%Jg&;}X4P6qey?gjarA0qI%Let zv~vAcEhYr-V5z3SVJR4cx`lU$k@n}ajIg$z=RFMXSy2?$5`vZ52Cbq7_#Y*=*bxm$ z=z}SEaKu2jmI)HR|CsHidugmpEgVWO2P3?M6Wvo=owSFcHQ1cWtWprpH;hN`RrchV}?x zi`)sjOMbi}Vqbc&=vahuX|VCQP2*1jptR>^eBU7v==Y?qpG6eMl)DzK($UdON{0A| zaAf8R8_bcmm3Ipe@3mEz&36bR`pT#+ye@_i?tVrX-PjXF5F{!EW?A{%Z8a|i9ZV$K zKAzoPOmSE*Ns1X}IVvBc!aoq0|A2Ujk!o6M#25B*Sv!KuQe%B|KE2-uo{iPw7YFJf zX9=)4z%}*4ZWj?Zb6E~Itrr@)4ta|c-t2bQ6X{UN$D4`G_p{ab&IJjHP};0E`OCAn z(Qtk)^n=Wuy=R36G{P%V40G`9dmx1DyRGu+8t%AP=P>R^t%gWr?~S)jjf(Jnyj22< zw+~FWa&{?sqkFtc-d>3ie!uNz_0fUGGOdq{zcYwF?eyJedTeWFh1+VEmPHSegq*b- zN{0^7T(o>YVrofc36V~Tc* zAZQ@Gx>11*u?5tOv&`Js%6O^H0ZvfZGM=vduE#C8wh11gf6%~;Q}aHy2TOzT`M{Ta zOKYu%6J z19#8p+x$=FSR74sCGYJAQ|)`M7785Tdy3|l=z5tS(e;ldnX%S3nS}jmZmSc6#YClN z%luPD-?hgFn${F;b{tQgWX{7X!oN=*3mE8?K_bKC3oy1Qq`5o@Z#tiYc(Og*R@z;x z7kxn9?527QfCP|7d_ap%i+e8yrM|C{5*M2V^^>%3o=_4y35x#XHDjJF>ZsnO2j<~U zJPZX4wL{_$?W1&hzNJ9W% zs7%07!o`xGn-=%t`hBvuF?|G$AuhtT&}_csHS0FLNyajeCt z!H{rAI832jW1s^g> z_24)DZ#?oV`8VzSdo%jyhV;L&oerrs5@{Z|vi-lm{O7j>gmseXaPLP9WHjrra%li1 z#D_h6>-Un*>Cy||-+XJ)H1O(9(fWwQJTn#3-9;NmNA078;y;F>{g|(E^Gfr_0hbW2 za)lJHvPC=8+^bVmh#w0YV-X`zn#{bFzBPYJKl7xgUG?5_$a-^nYE)<-80oT*t(w;!k3KLC-Xxz66vA1X|T?_*VH7!~yAsmroOYIOzF0PCjjQeth8x zj7Z^2yWc6of_fc->2Qf4)@2)_(H-;AQp#oMfAm1pPewK@I_-XAVi9*oy|1WznzNT1EA`L zF~^K~Sj)cxt!8@VcW(pCLNTI!@?qT6SbgTDZKQAfxbG7ytr+OJ;vP~ zaok*P!*E4unT{jF(pe0o2o z`P)lB1A4ZonvDvg{a$I2`TRY+g|~e49?j&Xh(5IOd%2|TUCMfa8C3S8@x-CzL=aBs z(`FvqpHCkdM3+9yZtkWWCAMB}BdI^jrT%)VUY33L5%(^PW4YLn<11IvBJ^&%AzOHW z06#N|9Qx`{_@^=Pt*tINg4ZFr>48nz*xvg&JmYx7FdT~Sa>g^DMcoco=@)pxs%kjc zp8N|@4ocI@!yN~iH9`iS+Q#fXO1WRqQv&9NpmIx4?MKN(1f5m@Dl=@69jH6=BJ@C; z>iq;*gSj6O_|H>*s8#O29&y@yA~=8rXwM@2TyJ?N_%o4H&EDrX!Ifw0#^Kdj)L=#i z!<86|SXF3jaG`;)#`Vvvm>kGEpMq zP`_Z=-_j%rp^Y0)2qoFi0*~}$VH{_@^>oS)oonALfyE)a)UV~0e?Ot_E;C#9_1{P4 zs*hhv8W-KLcap1?FDM;i0(1#_!Q<1`Rux-SdWp>-v&-M-{{^fL!?fXjKnV!#PQO{nRrS(3ut6?8zmIU zB3MyxOdU0`-8Iv@a#;Za^7NKTa`~ z_@L*7xTWl5<@LDQ5Rj2BrrJ-wJuK>E@x-Rd#dBx!1gjKXgWa&zTL#%yLLYe<{EK`zOi6{9J@gU zJcIkMs4(y*6)TvxpSA=2w|=WtY8M;F_YT?1A5CW_!A2_}--=m`S|#7a2o4>ZkcHVg zt8LY5@z!Rx;Rw5I{4R?fG8^+YoH2viXc#;(ZKRnzA_XtU(4jpE&HwN*Jwa8k+=np< zU%ta$(Q>9JNhwXBI^s%44-S61J!LONJt!Z(W54byxI1`&rkaKhtIJ}y`c+oB*bP5P zb^x%dj%r=O`ud@W_H^1*>ho6RUa=6&1R3~!!gnzFIE>T&ri_nU`Phs8jQ zeP;-eAqBFT80HI0W$cjUmQwg)!po!mzK<%ln4Db}+VBHzB!|m#kx%!ZM5x+!Jk>Hf zM0MH(Fn(vLRS{n@#2iPV$s|F36O)g0tVLP>z0TZ6=UmFG)D;_h)FzGxL4MQCB7H|; zf01UnNZ0Sz)8SVz!IoC1Rix>gx0pc}WgXvlOFQ|U-IEyaa8BSKd+gBwg9hYU%o>M5 zCF-cNX88?KGzmjp(NL>)y+e1=AXBf0F?PN(nS9fK)vS`oQ@Nee|R*u zd;xPZa}Blz`9uATUd5ONn0YSqDwYiNCEdOA6je7wa0pVmjpLYMhwpGk{wTZwk<0igEP7JJ(Jy|KL zg0(ZRIhI4#8a-0cZQ-a^z6a;@=|qbyQT=4@+AtMd07IY1$tcjz)j7f;doy>ngo(A zq=5myBE@eOeAv~l+k6>3`zxQd{%~I=F5Xb_`Ol<;x~r?>On;>@m+Xa;T?Uk zOg96V6JKp#45#{dW@ng}lSANMyZilc(S#EiNFGQWIw4@WC~dYloNbdbUiLY?8o`y; zWvKupqGlzn%zkuQ;90`}UU#+d$2p!(<0g&$NYK&TI03XDxlNFN@8_NQhbXJ?>|qj) zMGHlJ9Gz!u85?1PX#s~6=I+Y|4I0Kf;w?-YR-W+BuIGs`?o3FloZPD6g$lhmraB^7 zl2TE9fbZ7@H8ovSN3~RwW_%VMI2RYkjWqCDx+-1S98&u`bew1{7LO3imHu;Yb8o(A z2~>-CiZ7yc+FtCs=UxJ43{doFzBtn7V|z481Wgneb?4pegwcZxLZ0} zA-R1p8-kTBR1Jgq6=h9IJJqZ+%pplZ;waW{ab{Bm_BYQm1&o@3qIoj9;>K6&Waf&7 zR7I%Q-K2`k1*sk%oezRI9bb@B(=3K+s7@_4f?`tF)gWjDpd9kQgj zH#-kZwp%uff4Z)9^x!-2udc6K7Vf1pp=3?;kk6-TUm#xKm72Xyhj>y5NQkvl#EXS$ z=ajfQn1+Vs671j z=>ojaLKqYTU$Q^3Tbbo{CbXm9jHn&P6*mEBb z-{UWSb~YpZSaAOmrG@b)(F^r-{$-VfR&hsg(_{~;7L2D%Lz?H0*PEX&x?;FFZFTm{ z4U8$pdEHmqdL0Y*_AZoW!I+_oV$=*3%}yc;Smio9VNC^e<08h4<<6N87+^xOp!d!fpa32hO;`@4}Y(^ngQXb1j<8wUf zt6s|TghCR}Kd16WwSQv_h7K_FVIdzNv;-z&5IJ016efF86cu{%RySv5e&`XM$V16S zLyi?}5^Xd&&QyBNcXM@$@;D1C6kf{kM0|ZAaf{88GAX2BoM1t2+F{ z;!tvO+$4B-3$fRBCM7!pikI` zl9JS&ou~seQpMZaP-}=0c;7oxvnKay+KYo{UTJkvPbDhOS*F-Vi;F50W zhl1B=HZ*9DSQSx}Oj#o7!M>ygsiR=JcX0(!%DD-*b#UbQsYFVrfH4TVzZigY$M1Uq z#Uq_RQ5M;9`f(TEahY!n8sthp#(Z=qRSWN18c<@;%~*Ci+_n`)Ypap4;=K0NLCZ)c zXya7?_hW1B(tg`As+Pbr_W1pHaBlNY`K>FtzcrcaYUz>dAqU0C?cvY60{Gs6fNi{D z04+pJkK6@GuS|KIvQN3TasBB?EStnqtxNFdn6uOVsioyoRh1n(g>06LuPE^$(EkZ( z2KYo37^&=)tiGD6EVcND$~l#8?!NQafd?>}j4f^lkAm8udKVU9a6yLWNyGKQ7UUL< z?51E+1qy;*9dJZLC}5PU78UI?V{Cjthnp@fCTsXq0>F^B@L;za7D6EjHvWJQR&Zc+<@Wn}@S*P9pPBAvG;XJIrk(UP)lK0aKV?XqqOLUx%@ z@e?~U`sTe6)sAItka}SfswEpeoPn%iq3=bLb+WfHT8xiRG)OesDS~8}er`{$)o;Z;=4jTHycv<9}8e{5r4@OMh5mqt&7)r2-keZ zqSk&#?1WgPt{JSYq9c&i#1}IMrv3u;9M;brm=^P$MoJk7@`RnmUS2P%K)HNEWJLC3 zzW|n(Ul|)5N4lrjk1a~6UQR{m;57HZ7Q)B!+xHLXy+uiFwA$@G!#|#LQZ_15sOsx1 zteeg)RY>$cxIk8@l@!#6LkuS4f7^Wp92B!5U+_L{z|vKOT0xr0)oOF(G9EcW1_aB8Uj zqSE9NIyPS?0caO=R$3 zJ!0XIp&UG9^QRxNe*H*v(UncBF^CJWGo$V^y8BqJWOS zmHM-73Eu}y1>5HN89+&0*STai7&a&$=IQqsY<4uWfzq5>R?=Dg~5jOE(QV=@ORCG?Z~3P4~av>hr>(3MNu16yN@l@!U2G z>0f1o3O^zV+>y#-@dkO25EL%&m3w;3M0M?*s55k2J=D}Q?4=VmQ{ls8_LZlWXH(eX zbkJ*|z4yIOp1EE#*f!ISzB{^icz^!|dM4RX7x+48%L-lC6}n#CO3JP8WwI;W;Pa6$ zUZo&^N+_4-^~Y8^nCJt0a>IcbW3y@1XA}3SSlqsk&9{t#Jx{^yC>FN@aP_ueBE1Xw zW1%FZIF6w38=d`3g}xou$!CFKRPJ$Fj5oi>h%XL<{ta%cAznL08eQZZm5|dOAjY`=$V-U9gDt z-cpg$6&2S^Fy#YXjpIC#gcS-O%jHF#6*B%XI5nj%+c0?=%BhjdepBK_E@%DMcqkPN z+`sACGTf3dc?4ycFy>adwC5Lqhfr`A%T@LAhl1d^&5&b4`zN>%1tKQfV@@1`1G}Yq z=tM3~GKaCa6dAOfqfV$X>5#lSXy&M9V^5zVpN%O|R#@#((!}~7j z;gDYr2^14O`jspClQGbA8yC)3{LO4KZEG47YNCY2NP5)8x9WT(jO1K4r-`cQft_oM z2U}p>E|lXx`Mow-JoWWSKa>@r3pC83dt5>{t728R$T4-7R_=LeRv=+P< z9*L4Yf`VE?@7FKJ9ExH!Kt>rD=AhTK4S$|m`Q?ggd1gk~s?Eum@D)&RuniY(LJYKb zQ?CTa{Z*J9wCS)2f=r%mk0O&{oG(R{cE?5`4wp68@V9_5twN+u=XBQll8f&c2gct! z9GMoazNCaHoEWY2wD&#U_|1gi-g55S{^hPaTETH;c{oOFZowF5)@_DqMEO3;9kxt6 zFS(g~=LEvgY-sgv!@n#U*%VrI{9Qo9)y(ysM4M*&>lP>C)v8P;Zs<8pHRLb(l}jIFm^U4Gdd=RbWqMPa)1@Am}UbaExuywyJ8+ z_Z4dP16~+ zbzr$dx$33?CRql}h$XIACK|wG#((2&k$qPJBx1AI9}G9$xWoCW5sT-k562QE8%Bq7mcAEv6}lBO z$FEgicX4BOv1+3EjgU0%KBmsP3P^djqgjB-d)17AzFucytyBu!3}>4kW2$5)^+ii1 zaM`_rnivQdLKIbMAfLrEB|vTAeTO<4gGO9E7YI4iwa#3{P|J8}K6z4vJj%bt-*I8o zQ+ivtIkm+gA#Hj9j_M4&T4G`8S=PD(Mk%8j7^{RV-g|XJncN<9aUZi@9{vNpAN*Yb zHexp=(_U6$)EHCp_!ymqD3!|o6ytUI>-5afAi%w*x@lejQ7??X*-Nby-{yBV`IWl{*1KsxuTyiNhU z5*gqB+oO>a)(%Nwo@q_I;p%_3@^13`Xae_X};9(EO&VF3j)dj9`? zn+Ep1R_yc6VcYE}@`q+6>pNkf27F-Jbbz4!d0!GsF=wLi;+@nDECU1c!}}4iY3kWg z@M>3>Pk&piRp%<5@T`NdXiivfBYNBFMhncVtY-a(!j0jLl|D`RM+UIS0lGtHA)@I& z++=XBb|^~ZQz9p-xmthjSv0P~hvvZzQ>JK{z(gxpZc?=wft?R*EMl%(Fs5ug*BqOL zOyZBJ2usaBD-1F`s2Arn_6d@Xa#<|yOH6m1lkf}M4b9TMc*!L!g*Iy#AaJ*Ryw6C` z_1uO|w-V(Wz*&`L$OTimZ$xdRvR_R!M3&-U`^k;o>WT<>1d63caK(K9lNWmtzL=Z_ zyf6qQ1=CGXg2jn&O2RoknR}Plw$pg$cxcQU6fdbiR2OjMcO4#m9@jv{JJ8W*C)1_% zfZUgnu00)MPp=m%KtQN4bEZYbtfNAnJ|D(jEmMbG=@L2{>GNJ%s5CfTqhKk>+ZpO1 z#^ZT(?IWth&2$cJ_F#)?f1m^{YZ3T3|AI!c+3GTrGH3{+T$~xYNVY9)0pc-%+55Y8 zRdf|d?EaLwllT{a26M7f)ZWf@clAsKHCg*c zisQNA)w)_zl=K&R+4W|<*5KbDumd7dm2yn?YDye}1OFcyj>GDRK8tuN0gu;GIb+tM z<0{dN`-%dTC_VMhl{=bIayg~i6l(u$VE*odFj<{)Fc*WSk@WO7-!$M$Kb`v1=GkQa zhnMCofltO(vrm|b8su#@p8)sWTF#A!zHs3O6INFeOZOHPaSET=^RzK@ZR@^C-XWa9 z+SbK26LSK1`^oX$Yt4uR05V#GU0HG99 zmSzZ+`2l7x#QS6YZsrf&g#vjpunqA_*qA#-Ms9Zp{SM)}f5t+V;0J^Vxs+3y%7IJ$ zaq^lCVXTpbKt&Sn$sO=;2k z8%42qhko6-PnNxO){6Eg0+iuvishf@8V(rLqwfA8i_P!ij0^;7IcaC?>)qbTPD z-z{FmqP0=9>GAhB-gItf(C%Al9-o3sPV{>t+AoN-tLb)qIsBNsg~)|GAwMtBkvrlv z`jlMM6WWn1-{YaGgq5+Sts{DK*Ol@0O$I{OoZ2t+!$y&z$5a7I`zcwg z?Jr|Cp5{JQCr2$@qU)t;dS@S&Y7n`L>)BdGzJScY_mc$zXEFV^7tt)B2rce@hw(Ec z=Q*U(QXi&vzleur6gSxT^G4Xf zXB85gmfQ9FY2|4&(E#oI0h_R>`qdN2FJj$o!^@>5iHvh!2-}hNJlJRy$GK1|q_o7R zzlc8ENL8!HaR@j(^1aYA?2oA^8X+nTnWB9+=AcU1-ed z5n?=)bH@hb=?cZou}EtY&PI(lQ)6`fTGiP~@Y9_`Y?IZUNszQv^gwQ+(CYkRsYA&V z<%r>6;)70$5hO2ZsoQ zF zFMs|#d7-@_GZcU4F!!DYw9xXxu&8P6!h(wMzr&CLvm(EIye zcZ|y!iG^p#D-ybc89TOn-bvX!7(Xw_sU~0XKzb*!Afr9Dd)P^|rqQe+svV5R(bSqP zoPm;sr3b6AXtDzI(5pYhMaf#8iQq`;jfv3r6Zu06`q*{H4)AK@-abmpW5wroT4M>I zC#Qg98)6v4$H$>wE}%k{_C4-{E(3I%QN^Cdovudwu14Er`&9R*lxfDJYtAFp>X3FG zT0H?7p0{<}YRC@^q++;F{)$m!8Zb^1crg4MFz>eK>0Xc9=8qd|AGIBsQOCa~8+R~* z-fJ4|mo^~BlB|muEb(Y#prP%JBhzmT7VJGK?~k=SLbaKY|ILmch)7h2uKBgzK|`nU zYE*372#&}_J|A`jdFd-ONyV?!LB=kz z^>Q7?37XBPKGpeQGiuO2h`rOs{?mpp7FCm5qOc@Rxy9A&XrqMzW|*^klFmEQ2L+3} z-m<8NfxM!%Q1lQN8o3JA9S*W$fnq)fl7=)$ez!b~UCwh@KJa>a9TF1zgGAhC4-=t@ zGvMpPz&&{nGQMV&BjT_?xv1rsV9M8MiYrEqQ{*QKP|dAPpf`p$qO)hS(F*lYmQZ3+ zFzPf!;hyIOj{T~Tn&Ke?AL`p4+zh&X+iS6D$mcG<`yNOoVUd%|wT zpd=O4(p*2Ju1?{Satz>?^d}k!G!kAIg>5NI&W-7c-?F*B`4cUqPQRv_FJOQVEUB+< zhz>*(6n4d;5gEn-*0usm_%s(34I}s;Y~vzjLV3i%H;hT&4x;7Cw+F7ek<*T>DmO3K zw*mKz*#p%(TZSkNKpB3Y_%?SRX1nfjbJq%F5ZJ6rjhHtqj63#M1`-JTRnwcpXt#aZNz?or^DkXwA3?h7<?dH<4=H^_i1)Mq7X{0zm!Y8B90VKpc?w-)E!KT8icnj zfsxX+zc<=kOF;WvNW)rAZ5eE|==h|TV8RfqV+$q$6Xkta8ZD(oqS94LI?@`9^5xfV(s4?Q_QvlJKrx&@4 z1YaQQcA>@=gTE$H%>fNN)H1ao>>q;6Fw1oztLTE7kY;G0J~r_u@Qjgii}z(-i0cZJ zJ2yc?dAwn863hrNgYr3S{&{;yqrKW$Y+JoIJ(jM?W;r67#%C-3CLPHU2=w|#H#H=> zg6OT+JZA8(l3b_0fHcOP5~UP)^1OFWU+SQ6_H*f5FV?Nm3-ZR@AeaV^<=3UjzqeOj zQ7cZ&*VZUgyHy{*+6=Qq5oI&_P?_}t$U@PryyLyg-v%DTj*>rk^xZf8dW$NStuDi7 zXeeY;ogd1{^ym=uUI}(YLpj%)#sCk>YZJ`}U|>q%Y!?gegB29zZk)Bv-3ZBm&BBl@ zoAmu1pj3T0+%%B46F7i+pak1rR!DvFn(Hfz_2bS0B;3{zX%4O9cEK9ER9@s))Ttor z4})7HlPX!BaunonrcFgLys&^6Pk_t(*R8~*j&6y>V>Z2UG$N$jph|6A9THizQ|W_w zQ+6|FD@{)r`^1|7S}~Od$X|x#+z~JS%K4eGij-3=7jy&3zVlURRP5)TD`j*<^It633kL1oC(+8Q?eO6Wd=e%5WY=e)$d*x?JKJhcgKvI zqd5F9LPdh2Ex*)DNPii261S0NB|tmDm&d-Hcqz7yzRVq`yG$NgyfEaPF_;< zFZkcbOX|qvRDUFY6y5?p^R*LZ1(-UdPOy!>Z`AtQ$I%3COkWvepudN0tkL2qW~=PK zni2LmgW^5{qEqR=3|rybwWQ(lb#yO9{)NM20)he(-}{N>x$o%t-t2M?oTz5HOhUP` z@yoi1-+FlH9=_6*kO_$A#i{S_d}4nd2)|xA+Q`m)%tW^{=j3KMOyyWftRn1*#6I30 z`oUo8F=W~SekiKLev}Sk6wd|=(@X5#bqg&aN#qf1gc_YJD>?%h}u|8d{3yC`!To!muDcNO~|)9?wN{1|5oC z=J38xtn-Da@K5o`ly6A?1&#t4XI!xz#yDt zHwuzRg=vI9WOO3E{t`Mrz7)bpsgaJ}v>PCYK+x%QlHh7EH~eiD8V2((lf0ViV7YAT zdv*_S)2gO!F`6#Q&I{h(@|Gw)o1TOG{3;PMdmC9fCe3&0H>sx3($FmAK{X#MUpxV5uV$HSIB zoNNERiprt};3Ie(l`2d{v@&iE0!3eS3vs-iNcHE}-Yi5-@K^gxTv_cSHhl3k--T@7 z;!#;?vbk;c)9KYQ|9fk0vXSys7zA$sAIL(kT;jLiD%^myc6nb8`%`(h##{9cIa?`> z+imw7PEAXf)L6j3Ib}@YA7cGibdxOYB$+{DmLwmHS10`Q4I$5RgUX`LxKLcRS6to; zMY^~$?GvaCsD`&@2RWhTcXZlv8<4}_jFggaOPrk9B&l6e)9ii%G}d>FRc6%ou~QJc3XLob(tE@2NfY6t0(4LcVd)ahBp7O8 zue+3%lKd%E_HnFc%YwJR=9eQyRdu{yGa!UPL2n^ES^s2Of`6$8D>nzY;-Cr%;X2;)2| z2@_F<|Fma7QvqE)c}qw0_a)rz z8Dhra1i9zLm28Za9Mvs&;xC7+FSZx820;}?l(Ko3vUMeTfigQn3f?oJdfCYoB6()Xm>|!o9n^SwCGysc)&=lbXcNtDsOX-! zCtfPI;BNSKdeXg!fJj`pmzyYbru#G*0Qod-Nm-z#yn~XzT4%BlLpe2Us6$vcY8|R> z{kuh_Utb;gZ5Q!u!cxwv;dagA)D0{Q_sW{v`NGaw%EcZ?C zmxm0ra|ou1o~4&oIEc$zogYAT41fX5x=zQ{4)Hw`(#zW~TuuvSIy=k)IUW3OezwzC z(gjR|SGwN=u%$P?&!QycU}G~;F~Yk44Bp9vQp|%$t>PNcf5s*CVa_IONLUc^LT~SP z9mwetG6MVbE_3rcKlBElCzPkTd;cRxCqsa3BK83LrS(zW;-pWR{vGfKE$pATJJK`F z6~=$U_W!T>f3Uz>&Kv(%#r{vp{@+HHLuVNL$DO*AY5adb`?tmq4Be&>!~b90HU$b% zW4&8T;UxK^MqDn_7Mc43(W^0E-jQy=9@-^a+(#7I)_^B_= zIqtGGy-w-*$7b@<&zDAzIff#>%Ff}UZm4!)Ot~*hkB`8DJ2rhvaacY37vpYTYF%U5 z$TIojHyul2!kn&Y!`5O`Sb%l#$Ox`fi*Cv&hQ+pM^|w@C&4yt?gZNQxwTUBV-OYfXYE2rOYT&sIUlvt8+9i0Zi%;7=opl2i;v~+ zl6`3rffHq{yfvPoq0FuIrzUxF*+_F-q$aOEx`)t5vw8mn`006OQ*QIoQ70nc7xQ}? z$#x%ROTkLAZ&-nfZg!LGRLuVP3!X1)GY5QdDE80WUs70rCbkHFSc*5+fi$sn_RlwX z!Q;`pW6hW~D_pJ|WPbJ6Nc{(%dkWXiw`?-&;No&KHFENn?lUO%=QQ>d$_5&Cce?l|}p20~xne%WuvV!}Na`Frt$zx!hXyCf1X zB2C8H7Hp1wGyZUa_?r18wlMnD3iEJh!`keX$)1#fTn~MHq4W$|4aWMiy|_?F(UDMH z<$gKXmg!u2Fd{vB-hRWJkM)%=MLtTI#lc^zho($i@)^zKj}&z8P45Lw(aI!{U?4ug z=EalA@4&lnMgZ5nNPHk3fll0h4F>MSj&NO~m?^CY*aBDOV`Q!zg>|j*$lFF_( z7&sww0#{fMk2`ZuLYwFhB-REz++*H^1h57zrTcB}&ft!!pl_8-@a)*kJ=d!?0Kd}^ zF5ilFH5SnZQHqx+?_CK!SrKFv17qD&;9SpLUfH;$WoVFuL)ANx`JM&wP>6+9+j8LL zB9GRUFBfeg1@@az?-%}Nu%j@CYWxuIfF0-)u=%@nmLW?&D~f)0)|I&d6xRMsDUU0d zkt5`_EI|E3oQ!$B*ZujI$xxrk9qah=!rdJ|F}cB}yVdBGDxpbZTPQ$n*a1+42^Ap3eX5U14PDlEHP4)9R3|;*CuBwM6S7Y-WO}QQ z%^e)=$C9I8k_q^3^789b%50_6(~yr31qOv8JoJs1b`|=8ch|)h-WAmL^X2;$@6bGl zZwM^N4qFQL)GvD}MIr%6T9pE+xH|e)rk8131V7WinU9J=;huR+{&WFX6y0ak%DZX> zzM5x+RA_=#hC*sZ-#o0IT*TjmPy*1!`@YfM2Y+MH!OVA39U)gbOyq1V5iL#Zud%#i z_h4J7rC)ToTMN4+V8Cz;7P(l7E)SOTM9_?4kx{zT%^Tq=jku&@xJ?hm00zyhfHm^3 zVsoIh7cDcOXZ%K!Ph{ihb)TGEGz+~A9_d<D-)g~%i7Wb~68krfMrf?C;7|VMX`;7JqMRfnF0iH;82t6-G zBU{Z6=i@tE$*BpnK5i`)YU`nzu$!*BU9as{M-W2a3PG(N*V*qEa5;#k;S1e_w+f|{ z-3dna!9qcF>QIY)O-~B|O}N4H6`H1zA&tS&QnmC@vUOg96+*iQV}zrW(&O)5eiXA zOf)H>jTYPgYX7Eq{u@86vf=qSU&ycFE8spcz`#2v(RmpWf+p6I3TX5Lu#uo*q@rPH z(u&le!lhoP(SR)vh2)7@9uz1mGmSPfRKn}t*H$oO!Yn=HpgW@Z4Q#?&0z!MCYvs>T zYyIn22|Ny;E*7J?^#ufM-HU9qixCba*9A&!5hFx86{J$r>P<-~cu`<-A8(2ce1_2- zcE(~LK|_N?LhCTXet?4tO-3ebu4z7KkHj}p9^d|6Us4UGGut`h;Y^`+vw$AyC$qsv zOno5=d-I_rtz*X=O@9xl8^djh!aE&z^C;4ejr&6xHBW4vUM*^TY&tb`jRu|yvww@|EPVKvjp5kSS?l{n_4=|E(6vyQRkWSFaLBMKIfrXN{q zIKP~+n|34EBGU|E^%l9~TPmymM#|NJJ$rVU(Tt96M@lU*Vvsr;B?pbEwQlNO`8=ur zz#4a+JNEX$Oe7Nb{;^RjH{BD+6Wlq*4=z56^%t2tcl%9bGbMUxpblW*iK>GgTm&3Q zA(*DVd{XY9nRp&z*_AFms1pieB+qexw2Q6_Z3th{_QF7q!>Vn72B&+arJz>N$!+=X z_~pzLh@xa*Of!DUR|(h>^N-0_UA1ETVCz)}q3d6u(lX-}WctfdE;Kl?>T2$DRoIsd zp=FW!ZC)ZYWcrw~$Ddhgx80^Z3!T$gFtD)-UIN5hyranW z8SULQyjxJ>RxwW3Iv0cemnrvfEHTGFol9pb0JZg1jTrr?nMEMt`@j%&P7|{4w zD8gAEH%h|5NeL9?Wj7yyN7SE{8kNRnDOKg|SwIzgWc`Pe(0kzp z`2|3A623Qhc~*E5Zr+BBcpq_3fpI*G2G8WScSucWy>}jPVzbhi$td9yoyS!~ToMZy z%FUS=wq3lA7|%SV^h^bShD7FdTln@J*oi!lC*zo$X%@i;ZQsSt%J3=zxOhr9r$Lw8r)w-q|B&ti2F zpxPI5VJw9jm+8goiS*kuILlQ?T}fT`UebkS+R(-@YeLw1KY666XzY2OImN_`%HU1iu~aEu5!mrGw_dAxKUZ@ad(0>0E%z8-cr9433})X z*ZG78Mflt&JW&sQ5WqFh_>yR#CZs$e4Ufhxy$F!Lz_PuE$=R09(-;#T9?>`s+H~%j z^)8r{#xBX>9^R}xoF_3@IyvCosxbi2GcrUFIH3+QwT^!ElyCIuZ^zqLxM<3T16&_dCjt{DKx{FTL!;D_yf5@GFu_MJG}Q2 zoCy|3ycUjdE|fZ0)}N~kYlTYWmuJ#-d->!W(fIO(5r3?dPdc;bv0wel>%2!iocLM~ zRTorbqoK~EuWd=cwi%{>&fk8~+o!-`5K%D3sL+OHGZ>kR&QE=5(`c){ zPV1oB#@Fxp#bfl0UfhIN8MWns2sPC#{I1M*y;ZI;WFW*UxYbJ8?m*nhpky|}{IKrQ z=pD_IjSZ3tAVoM#P>*Wq?fhR^G0YH{};}WE4u4=LZw6}a`ziXv>#1Rv}eR_d2L3W zdzf?|=^RS8q2{d10(h*x8SFlw=C0N0lSZroKL9{(9|gaN5y}%?L||<7qU}>QfGrlB zMAFAn`DR3i5%JGzTdiuxb#+6#e$3#juP%%8CJ%-gl%1T6xUfPMv7URJ;8Tegp~xrC z_j>I+zUG|r?oC!3T!r{(1+sC(V%6QTpDJc;HfMCbvIS>uG{H6R$(nhhD6tN4WvcMz z-9eL5>w&ygU=g>)pyk&K{W^ydgi|W?@{w7TN0mbte?VSgXN8z&SqK{kFx z^dvym^6X)CMLM3{Wlx)Xaxy0#oREPGF>;H+!Jk^CDwz~1+5ZH z@otV>Kr^Fc9oNMrLX7)D>zs?c?(g9Zc#{rrBs-DX3ti(pJMKo4P9%%zFsO;w)cwe? zFwnycww{Nd4FF2*vT0b!fP6@5dsUsspZ)SA>+%=dlmtDiULpZD5H?9zMDh3 z%b-t50AyTApM`= zttLz9iIT!K8SpIt^NefaGZe1bett+59ZE)Xa3Z#=s&owL_uDjks_TliCba&>de9RO z?<*Sgi6<+g8Khfr8!|yUf1&45#I@C3jkWwA*xuVv_nLU-O)JU@`^2(~jA9_NEvj%e zq@MC5M4M~#@%5-0uh~&XvbLn*3s5r762N2mNGYx>Rd9ycTZFlCzS-?9PuN!%O(@`e zRmAq@VyVsZu5PbcZeIf`sgug|6?P)1vn#JtgyJLN-3O2 z;t+1S@aky&>8!mwilz8@)u=#(!CL2ulGFaP1IZn>e8ojqPiR-BJ)cQg>z2X>c*t&X zGYr_(+Ks!DZ^Q#(_QuXPL?~;~1kOfMu|xfV{6130>VNYe*A&3l!JlQ^HJZIY+;|e82#ed4TX$meULk%Nnb8t!-E)< zzHf)`B?z)Ys$0+jV}SIg4lDlmG^->9`ym63JypbQeTGkC&tG(AXZ__OYEl$!Q|=q5L}TED-Q z5LCmQ)xz656>K71!SkBiNTS}3Rr~$H*u}0^JGwIS+jAqS%tIjdc~68~z@xiydpWI; zHVmBp)8CspwSU>5Q0S04Uo3l(tW!Gc7k$QojcjaPKjd*!q`{TVZKmUDtFe+`nzq{H zr}6v;<%bvrdFkk!w?MxF&WGmWHRx%YVekMi%&mVON*GREF@xcx!8XBq>^Mz_yb^oY z($td_#$ST<)janVsinGeaH#3fEaE? zy0wAoYvSOJr9t1sQo9Yi&6IA(bzQ9PZ=B_}sWu7g$ce!n`jDkO6Ywd?aTb7ULT}g@atxMUrAaA@tjDhB%T~;cL8M=0i*>n4Pn{A1iHY zkxfVhQk_CIi!YL92kmRe{C1=b&0|f9$ogA|?SD3La^MOepR5p4qs!;w6_k8*)NHdl-kAaIsQ1~?Noh_PYZyhE(8wmm-36Ss#7xt9(fi;ryQ*wNU1WD_^tammDlLA#ttf-^=YsK+ zp=adDUF{?i+CE``mMo@6tlR`qvT|d8OCbigZXpU6=^4%5*gFBBM!0?(-6gWFE4dC+ zsbQ<1st|?=0wDr8!VMo4)>pj@Njdw`>^+~zS&pICctX>z@c(RztW$kpHeB3aQ9p@# zs2z}$_?*|=7R}5_XHAG*kq-2`7a<>g6}q14+tfN0yxd>eRIqG9A>{>mK!DOmrEQ`Z zIM8F}gk)jYZ!aj-%pH=nZnL|m6-JyN1#xv1;(U_;{u~3Z$>kciMPqfb#c<#nC@swE zoE~R)^Zx-}1O)G7ibvUht%%6Gt2h!RvMPmN)_w9Hs9xFZU0Ku@|30~0PESM4PLC>* z7#I%Mc!uaSO`FbV-@@!&*SsY$c1>|5H7c2wK~m6s7<-nPY8W@n{z)`X2hMtcU~&q_y!G(-C6jMGM-07`1@KDkr&Yo|}Aym^b+K$@q!7kMiRBV7MAPGFvM{0^CQa zl~x?q{A=6vGmEvre(&-I^9UNd8ll?4?^gSp_`iR&+~tjZOIF>xlu1KsCVqB%U@o3> z2#DS>`?M^rV9_&P@%kC=9jyDD4YG0m%`2o z&wJ}t6zF&|;LY6c$s;3%rjZ&QqM}kCikZo~?%vYyW&0a>FtDLRc7{)18%t^VuxX@_ z+;vVBXEr5nuTmG6JbCMP02I1EK}Bk{3l9bXam-ay_xDA-&*KI%21N40lL}I6_X=&2 z&iJdyECMcO#v2!=%iT+=VE5l5ibp@!;a8?n#~2%;)xkSOp(1`gGw0G3F-tNfRE#rM zgtzMGgokuo8L2bmoLND*%mIr?P`YAn17 zwLrW_I2(sF%#gjyZ%O1K7R^Fi*a3OwHo2&vRLpCe_eM$p8I__0(~&DcS5TrDM|)X) zT}(rIfB+oKOeRPG@PnPw0P+(L1U(|J>Kk)ypLUjhkX1(}K-!s*OpVo53vACDU;JXP z8dvl=yF{6bvb}Wxc}1+Ln-|rDhFST!V4{!$Z7J>QV1KL*gOB(9xgJV*6LLDAUjH{w zXb{x3`PZZ&wY5U9Lwt(P-m{@*iFCssFod33b!WX#qDFE>&3rDjT{fxw>PB?KZV)nr z%omzBP1{siI?Ou~Xi@kVo)!yU4uuD_1aSkiFS@5d%3OG-hw-mWe(BXvg zGphMYJ`h@CcdU}`uz(o5x5HX>B^O{+!u|7h@?={fu(oZz1segmm6G_0PIQX|Z|Zu? zO?dql%0Eg$ir;hF-7w*OzqzqJ0(gvEV7pHX#WG*0agcm}Atoy`V2f(;V9B-MnudVf!t zVW{ssc9=E(Byo1D+y@1{{v4DR$N>t3HfHo7eADTeURdAAZ=bDDhIY7@4VGYD+?H{yfHt4;P|{ zSEgSyb`jJxUC!qZtVapj(%gla9JmvH_nFG|L%(q#tI$wMy-LX|5U{wWb)u?cfYf{%AuHjahjv=Lo zPcq$TFsj>+pJ2iTcRV#a-u(upooH$Cm}lJnn1{^&Dl{$ds@DF9TjTJ|zEo@3R?I^5 zlK3aHK?2V{va<^JkNrl1LeBH=!#BK-$&+fK%^OU)i{971dnOWqI9&Y&Vg{2~`bd#u zIEznT*GkP$9|nG*)|xEWZ1axsWLK(vx`7a!Qx3rK_o*I8R9zvx5;EdQ5Qq=5;Bc=d zJZwvUSdvN+Zqicg&7+B3QUz-dR^UqCU@~k8)7epWOeGH`d%k!aAkw52R+Ms}1FVBD+Yr zOpJ65c~}XSb4I{276P~~TluY_;NJz-p|GZJU<@=^q+Wu+=et}EaQiEZ&}%n4C?SF- z*hsPk{fxnv>{e=C9^LCaqOeDOn;2n$6+1s5$NiSAca5Kl2BWbODu`tsKyr12sR`7HMq!hI;+|UH4@N|5G1`yBJCAHald^?N<&68scxlG z>))?7dq8e<#S153&e-u5iY9xp6*yb_j1^`(z!RTgzrby!U)v5aC<&?HG~~>EL(REs z1z44^-Qnd>Ou{jtZ%+xPJYn*B--h+GGF;DlvBQzehsoU#w6nim{x<~rpIruQm;sOS zN7pU>N}Qw~gzOsI2edgnhm$HqiV~~{afUjV1@*Go!D>JTpIb{Kazxulb-zIQ?Bds# zuH=0I>|%e5ky)2I@eKuna-Dd3Gk3ZCNyuvG46=R(dEbw~ux0?M+oz%Xw$@#w?H(N8 z3-P5opGZKcbpUNylOMSc-c8l!h&|coot|}U>`23*m!gGB|KB*7JUj3>ze?Xco|GdEMUPHwA%=zsSyZq_oKn2IP&W!GKm5yH_?jS$NryT z36?J6)ZjftWiY}S*s50iwRT}&&(+6uK_W(9b?X?_!hvdLzj4#F8Dq3e%%s{R=hZGs<>^qc-GSJ~YLaCNCF=h1J3!L_I>dQZw^ zH-azUNXA-R9u(Wo1*??)>NZnM2qqI|^yL=W^$|n}H|it*B7Pu0U(ZlD$vVamci7=J zNC%};-w|h+fBerh4%Yk~|Hmn(qoAARMw!9iI5eIuTuG4Jm_N3RG&Wy0(=n77D~MTv zj%Su_#akn(bR$Sa-I4vi22Q%8z!ZGD-jj25TdwmI1_z@E9vL}q1CY4FWQ85WM)lb@ zoP-CzxYCVehF{|qfXX*vv!WrSjATxFpx>l`SQSE2Ss%M+6e6KtF0G{HTrgImzh^Fp z@=^>XQqR21ihYqKf-{
nu^mK}5}hteByUS839&@oc^&nkQ{AEGV>f$0}RNPxqK* z$yETf!~?U6vLU1Qo= zezU2ck$tBpDd7d(yJ8jI{9gmpe-$o`%>QDHJzwUa9Pzc|m42tBbTI2G(@zBF^IfMo?!uNr!JmMQx68D``DYKedW4f32 zvsY&C!^Fhur*Q;_RB9aGwCBizQ!9&CbituWRKbR%4IVG*T20nvm3T;uF?E}517NSS zYEi(Ns&>7}a0V}O5U;e?UVQu|ql+Y(;%lp;Pf(ViucCEosDt3;a_sXukgMZIz?rK1 z3OHIo&c^;}e`L-^!@-j+SvL?vGVmTbm3eq&(avn?1&#Ppz+8fNLP=f93SMMZDOZq* zVZI_hr{_iP4D2CD2*Y7F*&+%@!XPOlGJ#8J{rHzPZ0a$`1ANw3VT$48^*a9pj@=Yx zw{Vvko-d~c+aLD%%<5wSjgM@HD7Mrli>)CFZ!2~`;*V1W%lt`0u@-StJBM6ZAS3~ z@@)ot4-@yQ)aY-AGZTpKXloNlY#9LW%zuxCEW&Q$S3hr2coK zMg@(SmvM!>PBFCVo+fCIiNCR+4db5T%^{qES@c;VzSj4@w}AiL2H22Z8K5Le+L@9I zTMvZtqcOQ?>@JIlC6^`LR0l8U5=!FuXA0vBXky@f_C>P{<+Erpr(->AQv!tWlmPWY zkIj6Z0_S&MLRnKFb=+utg^LK9+{M0_veo5|JQ~7fO$(gQ@r8IVQvbi%K@+K0*55Zc z4u>J-{(od+|6TfLMnNIA=(#6Ob^o#f3(@{x`~OjO){0_GLyHM;$`|nwT zpa0*eAp_{Yji*mT?biRhqyK*G#QX;}xF05mz2}U zlFyV`rLVZcgt&!rUku~T5JNFTmTwS%Z|?qE7QPP~zBN1qrfg)QjjYS{2m0Sz`jgCV z!vBT!hMID4^!USgoTTJeUbKQQczMDVLg02a2Km6QKq8&Dfq5zR>lxQSIH$XH+r;G` zZr~J2!h@8~(e4B`pEP1*yc&uw#hYZS0z>ZC|{fg>UlGYlAk67d?sbhb)PDm5CqSa59yBN^~y6 z+F>=KUdnLLjL>K}a)V94_&=Q6Rp7f@nOT!@0Q4ydG}(-Kj3)UO;&Yj4v&ooi{se6} zJL@2vBOEk2i_BYiO0}Eqo;}b~-D+yJ#+!QlWqu1C2Oo@%xU6L@{PjFQ)#9;@WRd_` z&mjU6(a;{kj>mouwR8Qo&ad&cE@4q?kCQkP5juB*qMaLdDMMT>%p4wNetE4b2x<+v zfm&g1v#|c9aR#fFGFqO4K87sjaPYak%hMA-$R=LgOSrnTof(ZUK=Y zgFDvfxpj~xhv3}r1%dWkPz$a6J4=K@P%NVDfhy1Q@*sOJvNA3ZOUC*J21p?|u`q$P zAC;UksNN@*L?qPQ@xl}CEB6lXe||Iy-VP5HGGX#9#Xp6(Jm3tL2;}y}P8skBaoV!J ztL89AvG&%|AXD?!)nSy}6WUa#{@T=Iun>_)Uqpye^&3$%#PRn|6*#42YNCBWP>wy^ z1`dljBb`tDc;s6SVf|5MaIUg+J%2M%dgQ+9y^U96^M z^@s1iPgm~Oxp7u&3s`9Ttbb3ZE+W(HL;&APj=;MMz)xaiH6KfHU=zuQ?uJ^|!c;fw zz9BXoo7t^c!>az5)zFFIQo5z0kn<`JtcHdrm1^lP+O2$w1Qm>S0~GgXK@$h=KDxOQ z>5tghs~FqoBx9*}<+6P&RiH2cx=4mp1);MSM@gy+oETkn(*4W7j9e6_4rU2dUh;3W z$(i#hDvgX|>bx&!N;R$V`XPaa0Z~_96wQl$s_E%`tYB2Bw`6!3O*?0|lR>+uzZz;z z$A;S7w>(qdS>e*Yb@XBO)$bh9?X58ZWLLZ}KSu#`*AoF+^^ExhmF;d^isKEBu&iw5k&|LJrObgn4o{y>ZjxeDeQiQG&ZdRi}3(Gk#)>Xa@ zVZG(}s;PHY>Zr5mwKCCz0B4M1fTj&Gz>W-kb)lTh0Qgsf^9%qlr(NhB)-n((G8z}W zxRLp2F~Ol_aJ-tw1ugaU_16ynn(AU+d-eCO;>#RF|O)-r^B<^;h#(n))a8GaV|2=4Kf;CZ{K$+EqJGC1T165bOVLn8O z-td}uKKh8RxLL5fFZT=01GnK|jPQ`6$>_6ZhHa^`f*+h>v+K1>>5YfK;o3#o6pM`M z)pFg|wEqM@^q^j~D}QUo|LB3y;it_iwyNhIf@CU$(pv+@P<9_4fbz4 zHa1~pagm-6g*yK}!@Fr=Ym!73iTopVJHB9n!AZ{LjC|>`zYuuXc(}I>U|J+M-SU3u z|7Jcp&gXnEo_@UERTBMTmXO4xsdf;PL4C{YaVWB@DP1z1bMvDE>$Zcx710A{DfYrB zA4cV3oMv{n<7l^I3>vT1FGx%B|hpFsk&Bs!=f@SbZ%9YwSrz6BO=hUFp*c1d2 zfHFjm9QtkYp?|i}%>IZFHT+UGH+&Uo!bt?kv<>3dV0xi0d?iTWGeMNe;w=;JjpC1d zC|JD10Unlyh}Iek8xQ)&=-} z^KHNQ2Pl~;%-L;JNP-|o4ZZKm8*G}!wXTS1-}Mg(p%p17fLDgBt~^xitZ_Gr<$`=m z$n%`LP*NDzsYOfXyZjS`0?SySIKd86y^77y>bw{9X+ZnDgL`N#IJ3Ttqq5NO<***pu71;;AbT!~aidS!p zV{;)dPB}M*teSYi-;AuH2rpmx>dnO7_(yMCj|}Fx6NYDm2>uRA&#$#RM{f>(Ht&uE zG!@By6KaPvCc=ywND>wORvl!Z(3(oT+ROzAtj=~6FzGbQ^2063;5c@Jptk1OvFsea zSZXB;ouBwTZfh%bDa)ct?#6$aAD<~^KUh&!AL6Y1ijmS4wtsui+PKNrO37Et^(l6|KcRjG3*SS%IW?r*zbja-O%S4qHfp6wx_>d!!^w!pGWGm!kR zko+IE76qzSpFeblh)gF_a`V57ep{ovukbdB4_02UdK1;E(p@mNDX1}Q<~W(Jy`uEFj17xN8^3X|MS!U*g|-o)p-+G zdk-lTewRB#mzCkq-PaG4G?W<{S$B<37h>-=c6*Z328(7vh*2f0kZ^_VK@Q7w?B_vI z8%R%XNtEH_XGQy!j%;<=@G$0m+7L|eVVzXHnTDSR1zZ<>4_*KKah3s5dapll?ibwi zwls@Qn|7?9w{C%Q$OAc@eaG#;?->Fc8HrR52mYweHw%n;J=b|6)(RKlu0=lAv%Huc z2AvY6^*y^%qY$mdf5u=`1#UN*XD#gC7f8_IgtoJ!-cd%q;je$4x9n^(xGhOSd+;NE zIAQxdt*bs_<1VK1w7T6|ZD`#%o=>|CPB8lT<27gq-d_qh<=OQTPsYq}XT{UVaeG#s zG0yrb)sn-;I)+%H0{r)lJsZd6G{O4u!_24I1M8P40fCS*emn5MPvAuhwBbe6N^%kG(`jX+uV40i3(Y}Pr7?4b zva|)ov0~EMg1u?s>*PLAJ9&$gi)044u0eKvx?>GyUHLJ^ecAvh4*DfI}D%=xYJi0*q#lw&Rh#1YVO74~Fd{n?|K1jk0#o zRe8Hgwr0Mrm^^5h2s3Y z!)njn0eGqN3%Z@ZjSLmlTS@L5ae6O$at{+2p5Q@aB-!|sLGYFP}+ z6S-};#Hvi(jzX_apY+N4LfKn*24~?jBw4jLTyD!j=i$Iv^%a~j_>166M7#{Z=hxtU z@DP5by~`E$%lO+Kz)Lrt-kgQZ^vAsX@P*h@p=!Y*iAkaqitn1MhDgn2X&|VplHl88 zhj^=q29|v<4wHT$WP2NlQhfS>^Itqif6@(H18(k*C#6TDn{MRCOZPp~yP4X4s$e$K=4>{VoaWh_pwZ92QLurmd-vc*3b zFGJ*VNO!aZfe@R!jmy!LzvF@}7%tWm%cL`ZTHFuheQ&62AN)$p$ENgVT(QL$4mmVg zy~|vDHlEe=zaWc~JVcrfyn$N_dRz9V7fJ(iN>TEf|HVSIuulwL%$_YRQv?~{J?5jEhooa`hC zFD1ME&x`Ztmy!onji#ffFGKgAPp37OsRN9`YD&hsI;8Q;ti8$Vuowzy0DRu%njtTS zi?*qHw`f>9fVF^zp;(o*)MkmAw?!2>L6_#~5Kt?c&DsatLY(NTS7orP>Wkmlz`gCE zzX=Lf+&^K}`0bvsk@XjZ6jqEz%&x>j&BDx+&GK0gv3;!p-ec)Ka-@h`tsi}Kyd~uP zq&evr&0MB}RY2qmf5{sWV_e-W5%wyIU}wJ4U2pxA(U2oaQ1YCDMI`ZHX{EmqnyZY<{^i@|67U#ZDbb!ZN~b&2$*-D&x=c#iO% z=;EZo39NW?CJG8na@a@wIICjveUwY~(hI+m_fIW%>*logD{HyL3Vc z_oeZ^8dN5|FRSq-ykD0>zMMH!%Ul}0kS`dk4D^yAmwHyd9<GN8^@Op8AGlI%V(&w014;qCafLKj|jsr z&uo$M&$U=OVUZ+l^m`PaU$;8SWW7$?-mt-9@jtLXYOzeWcEX zTw55WIAQgs82K|c+{<;xC>G``c%S{C_Qdp)XP*iFO!G$sG`Uf4)f2~m6IjF9PcuW^ zmy@qX6b>JTw#w(Or@_g#GkpDX?&g>R7^Kn$ewuLF|32%GHB`7vVN_0j+iWTfEuQVJ zI1+Qb-|kfN@)=I6LbRa(*WeQK`sLR8^LC;?QLD{TpQYnQkXlpR+Li#~zygQ4kpNQ>3X(_W=e8$ct!kH4Jw5(iq*Y^etHUiV5euL3LXki5#3b^O2-WHW2E_&%ArgbHJP8nrt0gK@Ww&q$Ccm@qB%bR=6ii`v zaiR`AAHt(8DOK3VX~fC_*eh4?Y_HD|CJOP15jBOU*W)I;PECd3LtWjXtk7dllb7*8i}g?wMcW&arxXyQ#A^~1#v z8CJ-H5XRc32a8O|-|q8niLk4sY*9g?0{mFuaxml{M?^t`*s|k^eIDJcjYcXO>l>v=@>Owqy?X~~ z*0A0kfNp9pSb@FzIi0QMVe@8XnYv z)Kb<6ofgjUUl*3AqNnl2NAKS#hFsEp_>iZ~VUG!g{`PSI^+p`z z#Shwqwx|Fz>we~ZMTa^)PSYob#aKO8c)yPy8|J6{MtWMD^pOU(3qie z_@X`DFU39Y`$l7NV?P=(VsdVdM?HqmNTpHp`bTO&i$f6BZ=#S6*Bgtn7TjuZA&B@< zcbG%I_?y^M{KayWT5{0T!2_z+aJ*o;>6PtG!tqV;ku_%p^BA?pNEGdusP#?IDpH!@ zbK$k=cL&9rpX{_+r;)0+?{@P9ZkMVl&nvU@#jI28$kj9SzFsNuxr~`6(7DD}PpfVm z`p)b1=RJ4&{m{|<+prDD^!8ukwod-@jGZs2L&P5ttLUDww7W6inP$9SWoG-mm_`rV zU;3OfpGTEH6dg>jmlraVx)%!;`<93>H^vw}E(;Scj8qMeKZHJzhPl~+E$JJ%o(Tzc zgK@yr%ae@(-1Xh6kF@WqtbsQPUGAd@J-oQJ1Udyeb3fiw)no$zr~KN-59Z&0u7>#a zA952ddtF<8Ejrhyut011q*O0b>p%|Q=d-hFCC35!Ej0~aaoOK!zr}^)54&JFJAP=t zY?Nr{ab^=BFpPB3MJW|JH&M_cDe&J$0R8yO$mLhxDwR zsV_?A=+B1oTd^}B4JP0}Vv$S>aqECo4&;X1+okV}LhZW5m#t-{4dkV#@C_)TUsIFK zb8C-m#uN;6ouf-#J3WpQCa?ZXf_*tsJpBsb!$$UwQ(_6VJ4#U@uYC-@y zDZV*~K`#W^mO$H4{Ip72{fIhAV|KBG2O%Q@!T$IGY6Xm^yJHyJbZOI+tVpD|36#2$xW49;UKOIhuEUY+w659y}j% z8un`GhEwQ!kNM*f&3o;RLeIrwS#}|Jec*@ZBgV8XwN~w{wL|A=w|<%0wz_A>`k2%0 zp5yWb*<9w&&$UC&`#2mfa%a!zj-J<`eC|uQC(_eO-TXi5ht2ecZw_jw?8KVQ&W<2( zG**d53{D)CieZTaK1W<9vgE00@|;xZC)q{&Ep+BJ^)uPiUGt>XlIbgFp3SXxZ*NP& z=TQ3khhQFGj{&dQyqScrrn2dRhop@~#+a*R=X?zY3RyrDc`Xin)E1pq&lftngCcD^ z4x4Tj>(=8Re0fGs?~xXNo@C$Bd2AtOWj1}k)n8(n#|wyr7>=fSlQka7h^cnTgXJ-~ z^b(D>;=f9KB}#%efuAV-BkF(`w+4t5DTdSqZLzCIa8gliQumj8$M&=gc6~}mMsF6Z zyPU}81N=R_O`-k7=UaH@Y<5L2#DTm8*)VJA91^lp0##!e#o6;@9gjDs<;QHIDWTR4 z2&eQ9UwAV4amcBAIfEAKLZk5 z&w#~Hg#fO4GSwYbZ`u`Z545s!g+IkjX*I*FijfPtX*xL`LAOTd>>zx3qUBeC!`2K}aFb_j*5^0gg#m z$K?ksKH|!=!_7QH{+0Dns9RtmVG&BSx7A@w0r@CaUk?_<-0%hcsxL=xHgAsk3NBW! z<-^mJ82YohMQ{7mQZOMx#PS0gY_?5D{ZfbfHPO8{sp zQzn3Mb#UbwJHV}?*Wn*3`as!>(+!*_00q4vnQ{}(K8TV4W(iM8|Em^-UuX@Dmix6jv}V9+Q&BW;b*hK16u39{{$ z*c_jtJZ>q4#D3=2Y*sr@YBgE02+%B&@hu0{*WD>aWx-wm1m8NEd9>4r|v) z$RBZQX$*;*-VoJld5om`9&U);Q5)B|5^6x+Uj$vgSfQw>+ZV9pddDjJnJ>%)+;bdT zcq1S`QKy~a5YbDYxLU+U8dr0k%xVw9n%9TLzMrx&svVqX^L2i?82&t<4B5ae(ezYmHoA7v0}Kvu&p8lJcT<3oZS znM>C6Bg*oK->a$lH0=@b3(a)rZx5q2O`*_BmX;ayVrj>Xm%mJ4A|(n~if2nxwphI= zqtvO_L?}%Ob5O@F7Ki1%OI7MJ=r{cJh8ZcAw6qezv z5-BWV@M-@V}I&fmg`)RCOYHjsZSnKxvs+BZ1*9%sLw zxQG$jt}@@G7?aSbDbN{id*xh{tdaq6J)(zNfPa-_>r(Q)sq#kKo`WP9cSgraIWf{W z{KF<23vDSfRd}-^x%O^XE`6qd+=TwobZy zp?9bIGMyJs5`();yMcPu5~Yn=F8OvL4Cis-HMO%m#@3T-3Gj_PX2&9mZ2RL+f=zgA z>%Ur|2zBINaPS&>3=@`kKFlxjmx5c#+1$ZJGNmVTpSKK!k;tnyYmw4BE9U$cE55X z^7VSpaSonJURpl+VuAQdufRmRN?gFo=T)epkbbpCN%JsS;y_B-!%~k29mzWqqFTq$M zKQ{^HmIu`*le$!Mo1cKt!`+xJopS@5^QJ8J67|)qDMFnLfBmlVIC!SiuDUFQI)tNdbAk^iA%N7}HuOQU%d3*Wv!%CJb#i*o~bfJK4<{JyN_)+72G3&_G8nv&hhWR2st? zoZ)M^rY`5{eG9Xq*J*}m+$yY*7RRi+-lIxIr)S=0tnJDutZmH4?%UX!vXDF19J&YJ zexW#X25{>IKNGXvw)%<`O5{2-A(i_VPlm8q&zRd!o9FNv42&2ZK1;83*(8!_x2l`8 z3}_(}H%;l#^hCV4mjqIj>nvE}Rju-D6FKt@x`chiACUW(VHt_H6eVMI1Pv2fGb*)O|+mny*JTt`kWJfBi@3R=8P3rNPPD zXLBEh+=iZ!`3wh}b}}>iop6xbJM53?uIR=l7KB%dvmPssD730g*`vLPPG4qIguV7zi zFQS0?o@m=wfL9XNcj$|f-oc8|yvbs+v!(_?Tz0-pbcgjEh2?bpE1Q>;ZXTEzI^eim zb!z(ziSQ$g+CTvYb&b7mcVjEkNuC~Tuf%E=^$Mr!uXn?F8Dps6$XjxBo29-_-qm(F-N%B$-?T4>fdo#gO3@zCn9tm1xy?R6s};^NZ%HjugH4h7(3-EMd*I-TW- zlPpw5eOe>G!;fy1y1a5HZF#y}D6hAXVmtZjZfSEY>_FGfKc&~H^eqy=iPERaM)Yw0 zzG2%x%r+g;zum6KVuFV79Qq^r{vC3(E;{=8paDN^TAIIjmm&Lx`Hky?o$hPf$G$l1 z7wQd5Lm~nNw;qn^YVDzXb^1F&{UYE2iU(84!xbbNE|l8oBo{#rV6+WjfA*fqzvhV` zw*rA?`VLNQece#c%YGwFR&InFMHxh02IHzqA|gwGE)D!%w6quPJ{!O)Mqf)wO$E0- zsGASCvNhSBa0Pz|sgv;e&M!o3a4Vs7WPnZjH#Ft6a=S`1_Nx2k7&Knr!Ov&vzY7;N zs1Qy`&)YWeoV||I6n*)0U6PBP^zFN!q=1g^sCQ#FCGph+w-q6Hd%Mko4#`7M*7sM_+Mn5p>^@y$W4AO= zieH_XO}EocOseh6mfdKfFF95GtB~ljY#(4!OD7`GYEJV}+A*fdVr#o42_}y?x|R0i z`EQYXv~dLh=L+b%%@mTR^Jj%cw_!061NlY0LLIK{=oI^3dHZvQq*^T{B4h`UyYP0E z0vR>{5avNWfWN#Ij3u(MIbwfvD~K$&(x8*con8b6?c@}WaG|325vhB&CP-@LA-zC) zbG5c`)m9k-H%NmA-r1{?)XkNt_{dx;gquFcD=D~;(MT|-AD%!435>3WVvhZ#Y_1Pe zO*9%g-O!Koc(LVg(=>uqo`3iLnw`LUU{TZvaLJaTlNtw58FvPnZ<|=VjZTLCp2efE zMe*6PIztV=J7dkvuUbZ#K!CF(FIz7St5;z2bRe z|LV2vgJ3#P*qZjiOGce(8j;A+4{6iUV}bkpQ1LoG;tWbM+dE7$4AsS#$E*0B%$Xh4b3M11_XykS_F*+%Br7 z9>ZVEBR(ti#%xPGdzTh@R?2C02>QiNt7Wk!eE9fLjrV0ub8|G4hgyl$&zRT>+Jj5|T*L8UvCf!6}StHRR z-0cWE?73vY6mj8HcAlcgb?nf%xbDGliacTrIm_5$)$A^`-{C^1E}Dlk&W!~`Id!7bdo)&H|G?G@n1#n22Dmr*~sV44ZzHk$cR!cLU8DH>M?A&RLZ6VQMU zhcKtwp&Be{bkKjSitOn675MibcZF*W%gy>J?KXoiW9by*7wyaX)z+l*y{CrkDSq|N5!Z4jbP95KO0xA- zboxW6qU3$gY40!Wd(AZaej_rqs2lBChQ33gy}^E3g*s2ULTmq9TL*XbkjLW}6zbo+ zjuXhVmCo=($c{1vORdu-3RPsb=9)~Xu{J`XjIanl&#`i@0W?|sl>C0*n=Ur$+DbW8 zXW)hrZq9Kx_h_Tn{aESHd6=JlTX~5*Vb(p2+s9`xwViPi1xSp`eJ|?UieT@aE=S(> z)WNA|-hwKJ6j&Osb`b4+esVBy*hdf?X~QH!&5EsQoqEGOXpNL-msvN)MQ z^BZg7MLnc@={D%ZEpm*MRkTqmt*_ZJUujLHW*eeFo*4;t;-!gT^=L%mFetqZ>mpGh z2B^V|@80LT=ALR$H-<*er}VczJJ3eM#c40zGmwe{YJ}vzf5@1?cv|2l`c9I!Y`Ci_ z2^qtU+n;F(6MDW4p7(nY+jwC^G$J@VY6}lFg!w6uX)W+1My}YKA7cNqR??Lkon6*8 zc}1LvbFo9xtK(zUF*cL6snqe&AC8@UM$XTojp8IL_GNd5{t0L_skY*a>^p=*lfC3f zUu-KPet!`hWQst?GN83ta@GkC?IqIZZ@OYT6KWz0XCMnlCqlZ7OQecZDSM@7t0wB3 zv=OuEK+M*m>OT9Czhn}`bm>Ioa+Rmd~EB$q=4@B{E4n!Y$(oxL#$lZJP{=l<}z=0HppVja%&h-;$B-^!@hnvuLD)GEF>?a_WxgDpS(G zSq&;KAd`!X>(nEX>-qOEAxKf^{VXbWf6b_xTm{VJEdj?g-(v_qF_jCl|Wyl3C*B_Zz&oc-qvPwH0Pt{j1UW za*^ahx-9j^ez0y9-AB1xduzAGMZ#RCFz9ZL>a}gWihcVRw6ZOdOSX3eqFx?nj zVoRc?8*aGXA!r79;psm>hv_m$0CG`8BZ>5D;rF+a;R-IlroN4s|D-=4QJ7^-`BG3r zH_@s8iXUS#ge1869*bybff1N$B9-)puHPUWASCEF$G+QAMPGBN?pM-%jwONpFVv`m z2s|BqPH~&gSqO)L!r~15{yI>I+)KmGNic>piq9O1aHx)9ZW?+P`QtMPF6^0u+nPNJ z^v4mi?3&{eO*4JhNIlC=3B2&fO{~A>+pm~2mI{9hFv~2<0cI?U7@EXsE?xik%6?)o z6$C4^U3L!saKQO*bmBUZaRw}!=VX{*>sdR}D;xuvS8w>|{dXk;Rg}*OJjOvF2*k-+ zH!5MIx-1)8xyoW9ifFye`380BnM@tpPQnl&Wx>SKo!=?2E80Zu780QSK%tq>w zD)qacMYwUfpidfHv|nS|GGXQhQ<*f}Q-14b&%LWXtf!%m6O$uGTmx2Kt~jTeS-pKx zRNL{vcu$5#pFI1X!;0diD}8*e`kgoHvjC?R?fEBP1p_uTDZT7Gx6W$ZOu`Ne9QF&( zco@XmdAt{7qrk)pKnngoB?T!v3#rKfc}Q`ETK>+oO%|N9SrRSIn7Yq;xZcFwDbGBw z8!K$x-CP0{Yx!!?<4%o zG;7vUK`83Ln6Y{Kgu-5IvPeo72|z6)prs^#YYL>>_1TSdAeR+(XEJ0tU<_w#0yS&A zb2cJX%3y4<`tK>bK^ljhE+m@4ZEK8>vBLMzk%lmeHezg0)4V^u2?3XqFgdN8WNnbYiJYpEf2c{kr#As* zx7K6AX+8}ZcT$Au&(gHeJW76n)xcNm+j}{3rrD4cxx=-ZkpSV1tS@JdL;ZFEkQ()U z-~1nYj%RzsIx)YGY(KEHj#aJ9&Sp4P8uSx6i|GF~3spc}?Xu28xs40bB=5(f@wK8n zX%2w;HOxqb-q(+XG-W#i_ zqknEA38S-Rpy;@>^n}i0xyRTUH*sM!-yjMHKUG*UOS8q7c z5qWqDT3g=0>jUj0K@sgs zTVR339G6El`yNHhn@HvsYw(s>(pJ^=0q7X7VFBXb;OrE{K=|uZ_k6sA$wG-dPd1txsMKIclayAaQ_~XpCxY_&8gTJW z;HZ77_I1;WtIM7uarl8J(ff6 z=GGLdL(&wQx%aL+kt2%Tp7Y?=r7Ku?_~0ta*81MpvOD>%?-!c`RED#3?t|di;D`I* ze0?-v%&)_c2U~&qGZ*naR<61Y{)Pk?%-sz7%Fy}~+ zOZGF&lTHmZaRYgJP3wexHce@bMyf6^x;#TXuNfdFkBg_0+>#IKiKZ~0O*zYuj=+Ncd};XfuiZ^zrGlg+fv~t0#Q`0epY&Q*r)2tAskJw zWiISx0uBNL>&Ah6ky)~tH*r!O_{IGe;4`RCwmU29y>U^5K*M9-&8w>>Laz!9H>#=o z>=o+qQP3tJ_9<&SalY6X)Pi&0Qm;a>rWB7#!7lv6Uf24vQr^@n#Ly3v7*?hhTF<;+ z7fdg1r&ZGXwM*(WI2f4ihPvLUrE3`@$3~EyQ;U=?;PY4a@va<9N0w;;xhXH8#Ie*G zYMrFdq2&1a&EfWk(fyEo48h4iAAZ7}qIc^C4jH90bvw!&gadY#f2Qk&g3*rs!_9Bh zv#5Uaj)5XGM?$B^5yFN%=B1%RM>9bma|v{G$m!?~YcxMo(IE006m2ntfFY?vl=h-) zjfk8U#vo=gfF4H8gAvuA0LhGe#CeoeSE)DO#|?q7{%ja4sjz!wgen%POvED-D`bWc z^b<0sIl`&M7-B9<$v6{=MP9@N3J*fE8wa2kAnf2uM|rhHFV zhqIQBtlEBlKDF<%(gKI8VqPC&L4ojc`laU$4yg#w8rUV63Y$i)2Kf@4-2(|8f8sZu zcM;#^M1JwFNZnuj>A2a(ma4-h7@rR1+RR=7uIY-XQDR=VVmiz2TaNQ?qSDk82v`sD zyJl%`S=}+rj_i4IY}`-I0oG0X`mG`C+=hb@mr;t@OhbuqaPvo)Fc%&oz3`ay3gtTy zzkK7y!e-}jW8&E8S+z~BmFa8@39C>AFB4wf$(E}Yj-UZsg^tx&f){@ere-rJVCE<% z_eZ5ZAyNWo$q2}GoQr`<`ob1o&sRmHlgX2X_?O={+Oa1R7j~G&fA$n&l0!n{BAQg2+&V;@$Y(}GGTUhvjTxGzq$j&$-2S(LP9%2wCQ1$rhj z@@zr(HK1ff%3ebX^@b`?z%^y~H!Wj>M4S3X4wECt?Rh}T4rO_rZEd**jWQ5zo`W6LPtNL9p?_x#CXB zTTjhn0O~C{GOKLvQTK$!ZDbv-FE#V~Hw7j&8ThTrQoXINU9axrtOyE4BRpYFB5%S| zp{tl}-&<|e1@@}m`QAr*`9Gpfbp7{3RLH#bj_mo@UNL5_YI5S4QPc>izu0pQ_B8N( zp3ospcjn!48+4#GONvc#Kw!Ujf~RdpmMggJjd%JBWC%^@m_6HH|CR3LX_^Zs)SsUa zWS!@D2;s=Y0=ha>;h15t!^CW_&{MRKk@sZIAF>k+w^DR*v~aB?4_Weu2S?ojvQ8koLn2S2A*WtUfPgUI+w;~vuD?FD17^FJ`zPO=f9& z$FwjXW&7OX9!Tc6!Na4MU{QKPatRS4cGDmcmMa_rhqO+LNwW<2XblrI*d_mzj#*E! z9s|L8)A=$~~Hl6*G2HvIf92mjk!(;4&L5rou+Z^Nq3ZuF0V5ObysEye>=aO~ z-%;L1brGbH!&lTi?MAt54PcfaVAb4e?&Cf>nG!n1HeMpS=w>GB~|Y1i`RN_YxHiG*>dY+bG_#S<}6D~=9B;= z7}3A|#70~EPtD`K_YYj zO=*88oetW#nwam7X3cG=1StpD8Qcjb9KKsU)Tr?-6Q4Im3)Zc9Q}&`05|Pvq4pb+G zWoK!6!o_N{0xs6CGaQ?*?6t99=0Jn#qPhkPuY9X2A8mVx`Og=hj}v)Hz8KbRv>6f> z-J(#Hz#Pr-y;ccX7pL-7y1hnZ^EIS|0cWsD21uaa6L^ttiOX(1_fMvP9-hRuE1^x| z!XA4dXl%j)&ATbwhNVu*C<(6l^@KZW&NmuASXQYCYYpwV0 zH9?H!F5F7(iU)!e3u37ro9{T9w=DGCYL5|b`nTI`psyJlb~vu<^@Lo=j2c6Y<*mG3 z|H5>71f^qGcnxvOu{0#Rh6|IaFJ{;~x&2m@l!k@+wC9amjEyEhYSU-fv7|UKihIo+ z);SP&Nh3m0_m>PGEp0fHKS$p-!zaivw%mt0miHYoc#=_bCp}lT@FN zmGiRD>@x<_@L4X_QEj?oJ?BzC@u4HBIT6Y#6>XrQc;+zPLs3XfA}df{U~6E%h{vED z{(R|!&akmgtk{u!SX2Cus;2c2y7At-q#DU%q7_%@T{h3jme0QHv4BrJ^UoP{Q1a}) zDJ{1(nR&JUQg?l(k%no&P`Z$jSkVVrssGCY=tPG^V!>Hb|{2bI0Y4sUgdK6UtCY-a#`yn7kon; z#%iFcK+K}#cT;-|^zjb8bgm}PdCVyO$PUx-p&|G&T*!f99iza7HPpk&0uXe|ZH2uk zNx#KUk6+(e5=wmtBx?i{{XP}o0Z8H)Z(6D!pXYk!ysr#J&K&zK@kSm7cv&ymiSITk zk)5sb%fkhoO{etRg{8D^Ljc0}X~TqW6FN+$ZK>tIw-l?2aq1S7Pm8La3E&!21Nlhu}mxTJU zU607MZ;kSvTrt49f;qRzGN{SJA*{KU8Dl18IUp7Oh$q~H6yHU4a=Um-n&>gJuE;jv z9!o&5oRvjv+UO0L)1t5gyQZ+Y-_?HcPMPsEMK6@Ps0bkz-9l{8db>k#cXA{MHt4v^ ze{I>og;AT|QNB$WZAt7Kr=$9sF_ew_=a+-~FXYX?6UlEQ$vqwj$l2KAdjGghn?H{Q z19cpzyXTzWo_g%)j}vXTe=j(!3({PbPEMB)KV0XFHCE;;;wfivx>y2N3})%$rrJ1d z8BKpBO=CnYY-O^~M)hDh0x@4Q-vuD361HCMv98;IeaPm{6yc(O*7s#a3apgs`|?d~ zYrPVbkmka_D2bmD+yE^5zmgZ%%J#x3YwI|6%}sAoXN805f`PV;AKPtSmm+J3rU+ocNIt(X75@$`;@Km=S11;y+K6L?v2#q&U_n!I;<;?T+hYqX? zR!ilqsm>?6ZBK*@#Rj9O@d*CYRvp(Ki-}Z_AtAe3@P)_FoSNiLWLclY9fO0L%e8{A zIj|pggTjZWWeQB$&&)4|BH`ow5JldVOxp`0Dm94<@1mt$W_c@ZV8v_X&DJ*V(B4?B zlDA1|!nnM7u`SJZ>LxZG}_57~=UxR{mJRf=MX35!Qas9maTv z2+xedRb3!wnTm|BuD+FaMb0eKhNe##Y2!K*E=ADxH+vzh^sC0%3I@V8`p2Can-vjU zF}ydK|Q?4NPg~e~lb7`l5l)EY+ZX9Y}r5@W##+A-Drp<#SeOO$@ z&YIj`eA51Z_=s{g}wRh`S$8rweP~%Fqof!u6AiXl%KN($$ zkx#Eg+(lT!Y{GNOB8i+p#zKAYIF22#RAtJ6ihBEhmAuO5EylXW+nakla$0T|l}9c# z%{1Jj45Qhx(10bYE5(AcqKzA~qnzd|xXBrKhc)#>ghWKj=7K5Eu`LLsyur@F-vXm0 z`-P%14c>d5%4(g>dB{?FC8C!kPTZ{m|9p5+BBBQgU7m6%Z;O|sk+KZJSYVFRb)~S_ z`^daL@w1Qb$4Fa=Z?8@*uV+ANM^%0%4otY?@dk@v=wXvz1=j#K_vgmHXddKju3Rn0 zcnelK+z^@-_gc1BHgH+-g~W3==d*wCma~nlLXpW$YqV@ULkV25oTH}FT7k%b+UTjA zr4HE;_PCn1_S<0eo!!8U>yI=in%RKc6qVF2J~;SE{_E6oz1&H7`4^m%Q3Ug zDb6IlrTK~1ECJ4TTV_c?UOu+f+jHNpiJQ^_7j;s4bOpa#PJNGwGs+a&IhK|4!PjV8 zm5#F&?8tu3GCltuzvr`+`&J#bYz3>8tuxBi%Ci*|71)CToh6zwm%g`A7GtOLFOATq z(dN0qX7vzbr|O@4$*6%afQ;eq8cZqDS7 zFJ_y)%m2!M0Elb6(CB}>&{{(NS6}p3I3x`Cs~Bo!-u>AD(k1Z9pCQuLRaPB1Q5p-t_o8h2B3_4P)>L&9gYe5s=z zyf2tcF`L~I3p(dRbg4d_@~P%{oj4e|@0R|i9Sne;YDQ|K0au^ZG&n;O%>$;Mcl0V) zLgHB+Z#i}kI@>zOH;PL*e>H{a^%*@M7$Tr-dn_>l1MkQ*a8vEk^F~so6@uv%LyegV zfVbv$iy|@b#aK4#?1xLi*A4f;V-ucd&H^q==M$dhb~$Z;YlhEx$=~n&K?IV0Qbl20 zyW^vbx52+D>Mm+o|9SUd@kt_^ck#YL=GX>OiQG9j)2p z^Gfi$nMCxSUXMv9yS9QpkJsN6tWo-d( zB#8wTi9owf%`(Hq7o>>N;=jk2FSu-kzB|>gS8kq+i^sy)Cz0H;{+Z@wzQJr<7W;4> zdcr? zsu4?NF1qEn0@HKyj-cMBdv6pE=4cM14RK&46_A#=ZQm`Y>j;9_U?zk=DBcKF+XB)r z4#l3q3g>#4NzV!DQhT!JHJI&ebe^`0+1CObTNmr}QSL^4tp2Q9EU?bQg!ZeR+z*xL z%#8C9Q;0^>gc*^B;q}eAf&7eCtbZseWHZ*%IrKIdMx0vWq^hYmh(v-JtAMyAyXG{hgWve_t-mKQ2#`m?!~rVN?J>9=Td_c}HB^YVPX%G0}uL8V9hcADL` z&jyK0)JLz?N93gSA;)_Y@&N{tn+P`UyysBzd?JOAV~Wr>$JKTPTJJcnFWuI9D~$_u zk~!R72=gpn>I{Dj2tcI@L4X|)ZAHlp0bvm3XR=E!V{}%?uhZ(;9N76`sxyFd;=j7V z_ZZwuT`csxaDXVXA^7&-QmeJ~-97+{6dE?4(Ce7-cK-RT9(jwfd|0{c9^8;-k|5T+6Ytev9*2r@u^cy zflpvb?gDFqDh~O6Y6*cTe`OXo&Yss(vN2TjTcgdZ4NtpQxJ_0aK~jYp6SY;dqh{QD zz3Kgz-%t;4t{Wete&#m%xQRiogmKHX5FN9bY%Hc#dWia0lkpDRx_@Z-l&NuGApjT0 zeX5swr;QH`zw`9w(ubQXv)C1le_nA3Y}aIT_AYWO_5NYEZX*!O2K6qAcHmeMFzv@6 zX)4YfAdniI8{HY{L0&Dt2CiotYd`*``(VeqW9`R6On_ zkiSf}my;TN3I3>8LC{&$UzDDlol#pg-TAc#yRb>zN}(1vRTbI3KFgFz&sN)+i$}Uvc|4B%*QZ`<-=>-HX{VTzWeE0X5RpkM}%E^NqBh zw&`t%JGHV+iR#gEL+D96kU!jC>*)jsq;vUZ9!w9tu{wx?6=zHOsEu9GjCO=n1C4%P z3Hq5v54Plu?ckmPP>;lJ1dUI)kQD_}G`hHnb-Q#+@A8-2gNEj!_7+q&<@b(;#+MMk z*!SXvOQ_s1TyO&;jcZ8r@svCk!oJ$6FHtBee1N8#WDJ&Lhd7}r&>Im zWKxP8X7#()H%hRi_FM6L_@$MQeu`ve@>bID*Y=mWvU_F-f&)R1kKp5+V3y}@kxe7$ zNZ)Y`l-P_Hu?XcdS2CA`vZR}h)jQ1tek4*hpKDESf$ooL3yQO;cKyG%v`1Oyzp3@k zBE|+fUf;~K$VA66AEbL~!bi@4atKqEsP0PRxQWh-P z4i6l2GHc!wtTB~z^HpthAe|QGG-#c}8d-+M;)Qs)YAg_iO~d{qFkYM~(H^w<2bef&j;8baFpSQ-g z(A;0t8I~so4Z)hPQ9Op%pAi%Y_ycrYXR!kEfpf4UhRXTh;hxCFC}BYiBWp12g0vtH z(P$t!f#2OGZzi-|^NJWiQSxgE{oq}mfmSzBtK_M`%FX9d#7TH4mX&*4gHDFwl9Rc8 zgh7IeDxxxZJfXNO5+pART5DuJ=@CNPr?ZC*HC0i?#UKa#5Wi)Ics+$0s4kj6@n-a1 zb#%QrbS-yF{1>6!CGuj=1O>O!E7yGoQn_QCmoa_R0$dn>2XqTZdH02}_L%5UNT9Vl z`MZS_%H&PkXHYwKAKfK1@%Cq!p9$*31JDH^F$5m?@bV89H=-xU2h!WOU$jwNeLK-X z2Erp?qDupp@n+6$-Pjb74-8yDTxP=GT{xKm|U(HR>v{!W1WyJ-5#oAo1Hw z8tc?_|FVyAaMQ;qX;YO>hih zR(BS5&MjCg-`jvmSX zzms!|uM^o9!AG-(GuFk9?H0lWv)%ahkkVH{p_Fq2pG_Ti;a}y7Fs?WT&%AJ=BsA#7 z0kR*^ zB|R?+!8_F;JyU94p!G&ehoX9n7tz~L4nH8TD-w}h#D^0~klHX|e+Hf-p^<0%p&Z!n zuvH!G5gej*NEfP3gZORq1@8*dTH{3tS|m-S(3pRTmv{iz)j2jnjT*`^EZyQOK+M|l z=$I1Da^haf5D@_Z3VB#>2ch*)R}7X)k8!!pKd##!WWsWSdn_<8-Rv)pil|x8%-A{X zFfN=f_I*oXwcVm8Fm{_Y{u1_08IK+e&xfLe_UFz!>dI_s(&q;{3xp8?8OcI@0(@(^ z&c|!6&SsU)BShKTGn#%f zH-<7gSl_kSr(?!3aKra=9MfR*9GfWz#6Isn-wC0L?sme@P&MO=SzT@5@5+}RW0R9K z3LSE9I)yqD$mJ|Cw=hqUK}}qyCk4tg`F%<8l$Ifh32Yjf&N3>A$r03p_~g8!adLLd zS|p`ErcoE77|k}NMNIP5o`w^b-I2rr;N5giFOTZX2rr7YF%nP*Ic&AF-&@_Fqd)dx zC5<)94)M{HgT2UL{%Y&-X* z9VHS=i2&AcT@sziIhZ*O`gQHxBJahfakAg;;{3lqw76F{Zz~^Z)-srotU`(Ny(bdfRE?MV$`W)xDdYQo z^!jX?iz4_DAJlsz3Jdjlu4JUdbZ)y+F>WlN-w^hz&P!JYcR{)79oRIt*v%g)n%wcY?YKFq4Kp-8K4D>VcE2fVM@o)wxwWGP-5M%3-}pRyiYk2)+y2(TfuVb4|5=gNuWOqG-v}W z0X8A`4LUVz5Z>UbX1z0(J_=CWEdH%W^6nev^FxzJ2_qF$hMdW6b9LCrwd!uyZtiUA}>5Uv@97OuNO*`zoAl00eCQE*_u#1TWbQI zGUH*SLfg0VnfOpnhn7g1gmzx)MV0Echf;w zLLb&6+Vh`Yt&Q*;lfJ0Q@L3XL8;k?u%*Kv~%oBH4V61*liCOr-6ot260KFp3)=@%YKg_CEQmk;>~$RE4+Kdaw)Y|tMdXNL=e~@TnPi{FHB4Os(SU=tV%hS(jXK(GFC+g98p^+e2Frr>;|=fIDQdwj zELxJm#0ru=)~LD^UJuRf^Fak9;;xjA952yMrMg7#r}J3Hk)nZQY}Tp6?Lr8?6$4_=P-8lp&2nC>1X|y9TT;jC zwLFj1`oCz^tchVZaKJ`6LcYA?+gHSoPoPWWc#GIxG_nx^P>_iO$#WiV2~Qz5M*Q!} z{fjtVz0`=Mc;-m}gEQ+`7Lhgp4Tx$jbboq)eu5d8gKZ;}rN9n*^K0mdTUEl{KSonD^hypW`IUPK3R zP?CuX#j(ru!40>$2hMic5Pxa#!2H7BW`;VJmlS68w#{P_-g6oyH#}c@XR@vJak_Jw zrpNxy$V8b`=#`A%k21A;^+^rO1*xxvYY-*R?Q%D_Ac>nNt9T=kXIMm>lp`qG&K?*iV z3zVPpDs8Jk@-9NuEFB3)PKp>qa7D|zkKt~E+xnYO!ivd-cVe`a*5nd+$`fLJA26eN z+h8_ciNX5@IU^Y**(b|3ufvuf@$}gLatCw67p!R&cZy>sKMIyy|DJ*$5ybvpyGE~6z2%J*!K#` zs{vHWzg$yV&?-&=zALV9&dRa(p|U%2vhgHu zTG~{S-J=VS_LBkzQ_j%{9A?4R_Xi4!jTc@M~4UeoVq^D2>(Qg%q8# ziQO(;A1cU?p+)TN=#ei9c%;(We&!Ijd>QF>a$s3T1mJ|CO5{~^Tzh!h0S08+Xw zhm*zA|JrUroP0P-{ASq2hv8bguKWMe=&5r-~d30om$l%11(?o}b4`1tj z`8*Jpo?kbT#RzZLGBn*EXs7@<`2ZpPv}f4wwRY}3K~66t-HMfmF&qV} zYh*ND*9|Jdu3*r}W9Q9S>+pc+$MQwl5D&L|xbx3+DvE6RigBrXE6Z=sKD_v7p6emw zWY)FHel?k$4;K<%fTW-2SRK(RU2W&BZP!epOHn;SCu(u7k~Ip)zf;l?7`eofHd8;sI+6>COszG_4_sq|5&q@f zeq=Hx5fSK~Q$$K#zt8`(Q1Lv1Dh@sHd1DSMN~ST*<_b4d9Cq6~j`~!xFvFFdgemF| z%od&JY?|2K;5UwJn(~SLG**us7)k|t=}RWge|bqqQbvSgwzyf%M`7)^-)ZYU7}ZMC zysFM|SIF<9ujEVx=7qELI+(O0WAg>78eP4+s=El=!W8kyC#Zh~ww%CkGKPOPjk_zEg=AMEkfxSjLy-D0w%K^MNb1*5_LiE^Z5*tuY8Os* zO>W^z1(yO=r$)#S!!BZL70xG)k^QT+WDVpb;C8aK3ha7y)VUOp4RUM>%6cZn%ZqXP#mOTxuw4kqmgm*)Fbx9&QG|uFm2{ z=~vaQN(?eseV#O($olcu4td5D*RV|g+~k8p)Ov&8V^m0E zkZQ*zP}yb(XGmb^J)7iwIs~?0PknUG+V#Zh4+~=q@Uz#cb!9f7hJKqJq|1YY-zb84 zpCHuF`1H>7=EK7*fBPr{V!LViaCj}r>Lg`6>cmgkMOF@ag!3|!KS^`S2Po+N-$LmB z83K;pgoU1k6kcz1&Iqk(JHRn;k7arntdN3j+s75T_d zXS}~R{#>f4UBN3)fdV;3rQay2nOPlC=q^2XR9Llrz-V$Rp)sA}*HBQ41s%R`F}0 zr|3#h0`o@BlR7l%;W;^O)D|pZGP*IB-7rN}DNo2HRnu`n zbBy9?=fRp&UJ0DFaM&2wST;K@41^Te4d=EX8w3v000+tA97?flo`1z_c_E)$&p-y@ z3B9yRg^5P=O^fE>vGPwP&LlkwAshAmm=vUGt?aL+oiCF#pdE^*dJ|gUu z1#HN;0PaT(qKc0d7yH%&@a6{ep->KI{=v(jTV5(leBMYXrco=90Xdg8G8ny2ovMye z^97kW8J=={vy?uGUPRb{Q62Hv3rR%#b3l5&^|dgp#oC^8IB|1wxhxcYFG@;PeXicD<%l6dEr1S$5G5o8+2 zlbj=5;TudA6Mkacxw5cpl|hW_-fz#Y3&I?|kC%^*e{PHOQb|0|lC0c(_+m$Lf?wF1 z$*r?uT4OMAx!+T_#{581Se1^9a4I0jeHyz6X*N5{m>5R1vKDx=8KxPLOsWDNj|JH> z5ae$^Pff_{x94^Na!FYL~85)wuFg1A0$(C;-g#b_ZxPr0V=C?3P{iS&-i%}Cy zWhYwSrj}vwYg~BCcl5I{Nl{qrH4qYU}^*nXOr1gK7;J9tNmlQ+OAwtl~`=e*%beMpzJp9z-L^|2D?^g_AN; zzl0kc#yT`R9X_JT7jjNo>7p8;n=Kj_u$QUIJ{1&m2sqt%y)0tle90a9>iqbzmFXKe zQYfI~n#eOiJvJSY!0E8YY{3ovV)Ff3XUJl73ToL3zd_sn{V6r~%n1{hO*8-jk`KiD zdxS{IOCBee-L)*hRK)n4&%awjzi(B%t{BfEzE9d8n0qzuHR`W%gB~w%*Pc-2#3T`; zQwDq63rQ{9EPyiDVxKm^L_&Hw%|l2!9Tw^>OkG}QnhcX9#YW3%UDqp2@1SC+2C)cgP@yX@X%uNV-MPCCQl94@KJTw00t=C% zHC{se8rR}t3&Lq~E^Lp49sMv7%Ke25*#6l))$9@YO3RlS|{6Jm<6Srf#coP983@m#3^w#cp^Ak8J#tT_Ub=f+j z+V#GlOS8N62y&>;`k8^OV_dh7i~P=hf*F*2jRAVLS!@hIcQ(DiS?|^y0pnt4@V;U%`Jd-MMfFws0 z$1ET!@as_^@x6;sth`i8LC)g zzJjYFhVWS}KO0G75Tis94r$x6q|wP261&S8C^Mf}v3xdnFM~y|iJGo)CVpwl98#cd z?<~?Jp0HD*Ad35>e%$o|XH!&tJcHbXR(U~YqyJcWBz0$kdFo@Ox+($(SxYoxsR6`p zC(9Fdoo(Fvv{FwhdSeo-bPpe$lu$Y3VbbQeN`(cf`tvL4Ly1CEVFl*3=Dn0!-V?Tz zGDwd7B|&GC4c3hV^Nau68BWn#_1)Dpk;>y)_WjsGkDWswnkoA9BVDkEQbiBNu6g?tX7v|yX9y}JQ3qd?I@%;Vf+_8|e z{)kb#=>sQ0LN_H$9O2N_u_dWsmnB~%yM=G5G@E7I!8m!kAx@Lw3-%;_t`OG@)k=ux z6Pt_aojCDY)>Jy&*XuMrMI<)bv)1x1BM!f{kM$LbRusGKl3lRx#e$Kjk92B=Td^(?q#E>#%ggr7YDoIQcl6|c+jxG0jd_AV+QCE2gYkNX3| zVteV3U3sf%H7`;iwavY7QIBt<%gy~3?o4e)G_F6d+?a*eD<9h9m^OtR$9*id`z;^>a-@` z;;n2nGZ{gzI8_CFdQ>}DZ$09W;*i7aXYA`9{m7l$gK8pWkFQ1`orfj~>ksbZ;6UOx zV)OXSW?MiMbzKh@lZ^qE1fa?8-I>e;D#)SWlY^*I7pkL4r9}Y-8~R!8-nJQ9#Zb?agS@}|a`sH%`z4KDFeo~FY=K!FwQp8F{ zQ-~tNI`8RPX%msyMhK?k9}$eCgUNW3cp^vPLylXzP0kj%LoU(K)V>`N3}DC?dBhKR zPVXTTpF?J#ICKsTov#)M$BDW?7a>9UCQ=FK5@nE_%WO8E;5PcYIHcVdOHE8YclZ5y zhCl0WwagRH+?}Unb>GF5rvsIx{=&s$#5bb{lTVJ2#JCa0pj)cB0uHX}6h*!*DwlOj zn<@?kCQ*%wgi%Q zl8>O)H8=G=zkd-Mz5d7${!yQ1(haPWa3!xm!p#bV+|QxOKt$!s{FvFmz0AD^w@H)5 z*(WNV;prmjMBzLSaiqhyuC_U)XE1_HAq155k594RRE}pbImq1M zOW*KT1ilf~DABAVOCQZ-MbXA2UO+052u3(s2J1Ls+MHv@Gg<%@NHa6?9);0?kWlb? z<*f`E0s8b-6d&j8EJfZzo(25~Es_|mO%qYL?%?zp%itM@J{p$W3XOlN2L1(N-0>j% z5lHE(6=rJYwy;)<6kdL|Dr2|AV`=!>wg0~gNs@e!rZPfzlh`dt)v7Js^}e>eBU0SZ zhJyovE@d37r<~rGYQVKuWw^j99~Rw!;=CF$4m#X#>=wKK$&}L{5e~Af$2E8`+5KC# zt21xR$2 zSEQ5zDEQyg=kqvTYdvb6Yh~^ocmHPJKxd0RY|!X(qec!J-e|1*>)z+e)UnWT4{P3W z6pF|AoP$L}@6tUB3L6W7&LHXpF;}O~-FkQ4;V97KdkZ)eDntz~LE<{R%kh%fdig^j zFWQm=Rg20a=d~N+8L9p8i_e?m6;4;rNKBWGKdrGcw(O^^vqhcllz(4$5ESxfLL6j_ zc^zxk?z0mwC;f&1F^t{{v~I=mVRg81ZQpP~FY~K)! zpRO81!q<45#<(tv{Cp-Aez%dJ8!F>wjDSlWa@>r*(`S8nYVlZB--g3nxzA8h^TSQA z?K~qV6;`;9=40uoIS=1{FV;`~>fvJkm<*0eL$)=R*~8IY&=92A-LN1+H5Elo{L)SD z!@1s~%W1JuvCKgs(K*x%Y<$b@s`yk}aNKVWCt?W+h6aVDgbD`+B@KlsE-eCjOpwGY z;w$dpgFLD(#!op|S_~>S{U(bBtT$aEFe&{Vf>`$IutfzbLudyAhvU(S1Y4s?o z53G8mJg{2%6>|&)AbcnfSd`Z%AO)-;F~dNE1qX=qk{F;qqL87M ziDF;jaXHtoL1in*U!t&<_U22G{mE$h(OS17`%xz*;_Rg5)qG0h*h}{{SChXR;(NMY z-je4|6J|95FxC*?N#;ZOTDyL?JVv{2U4Jaq(!4kjU4mxo@1EFuPO~x0DN5CE!3!D40)JJ59_7i)rkDs+}c%s0vJMXKr=ha#q zOnQW_arK#5sppe0hOWn}ZJ8dHfz6kb@3%HHA}>?XyUvw5Wj{~X@JX7485%qf)TNPY z9uaTd*3IV)%D^rjD88TnsZYB8WL5NLDD8UB^!AgA!Tuf~Bl)Yl5tf zefYk$-v*(IqQwvdjU`e1pnRuuJ-sIsph3A1g8b~__`AtJE*15FuXUH1Lf@bd@I<+A zLfci46x4k{6e6PXc)E;3!iF=s;GqJ%yr=*V4OLLad0}!tz~}G{ayn{LY(@SmPRQ?3 zB&5<`B%7p;=Vq~W^b$SP-_4}iCN3TQK(Io$pglill%;p>8M{0Fo6Yaj)_(GEQov*H zj9AVW0kyX2tNB(f)uQQ9kwj8k-X~1Sr}Wt_CMjVVd0VwNK$-BqBIyeD!{?fG1Rp1xbcRy?`7fZTgf86KdZ`BRtH9urXSY z9*6`>FNr~WO`My`3-c8EqdJbT&hS{m8E$ygMYnvKF_sq6osk$i3WIlcDLs#%jewS; zYReUxh@0Q(b2sb6em1chhoEZAPE>~WUqpgh$n<~ck;*-qNjOO7UUu8ucG}@hF@II| zOgt0*qU+kfGcntk0srkiIQQ^^YEpm2-{?^z8nM=BT%qxDN{k?-2*Yy?DEs!TGnTeE zyDlNskxjb$4l_3O*1_?a=R?z<-=bz2+s&rOnjqGJKzKY0X{R@@)!@Zxs#eKiW-Vjh z=l{O--&wUOOyb0$m0Wu%g)}>;HCOCpi5u8K@xvFD`IUsHSmp|vU8#f8b5>(76sO?G z$bb76t^806`m`Q5HLbq)pTtF_HIP(avj`Dah)nzpPU5pZ7<`EjxJn(WlxDYI(=LrJ zs&>w8``dD>mq7aC3;VqLZ<)|r7K70X#5E&&-Bw%$%c}FzB#^oAemnQ@qPJJr6ZaN% zwZQSu)k`b^kiQIAqx(|XEhV-Q2`62|6wG_r#eTGQbQT=PY99P4LwcO65|qDIoh;fW zlt4gil3L1q-y(*3jNlXSY&2A-c*GT2-Wwhm>ukYxyds5!d)lP((?d6unGgn6?FAs3 zx~)>4*NFniSgd4{FGou~;zf2dWbt*Vo6fZV@8l68|GVl)pj7VQLB|p^V#%fsuoP#K z@c2C!5ri|VHTak|C4702aFm}o>#JC*9+$UiTc`l28Y#w9>BOYi>{EjjmkB385{`gB z=uqhJ?70U|;^4@qNk8zHEJE#tJwU~00TqnO{>u2x_9-TjNncMj>nKFl9#pi>Z$IWMxO03_ z8|hDAgvDdS{%OnO-Oq+BA@gZT7(uqk0v@oq(ki^!>6_ZRCJ~JlA$t`h(dp0@XRCqn z&wTqk@-9DOg^S>{0&C~;C25&2^NoHnlw01I%RJSLZ)O!MAMx&L9NoxLr!Sl1&O(j} zTa=XE869#q)-+Zu$q7C&#{mMA`4PM$>RYiinml!%nq0X)$F;1}4C?lH>K->X`Pd7D z1PFI9v|~kV<48b-y#W_@Uz$r1&zEJLOu}kt7L1^_82W~si0;)tNA1p5jX?jf7Af1I zP9-q`Rn3n~I8xiT9rowzXP#f9M_(ZLXvkUIo?&t~Zjt(cTB8;JCST6M#G=8=t7R-E z*ag4jUFe!_*9-ueF1p=MH&oGkvNZ8DD#&9h7JulV+W1+hs5W2xrff+0l|%)smk4gQ zwC;7o$|P#PY^*r%d$xL`XM>JSYNNxJx!b?Pa`vW=5Ne7TObWEkNBbxeB;U;!Kwbtn zrHNqB+TMnFWfC5RCrq`wo{eIX4ur>M%=rD^IlcLT8)&Y8N+_VsE*)qq0?*fCw{edL z-~D#)^cqrbdHvntZ4=+!#X$xv7O&7B54~?W$DZrht+*=ar6e>gL8!8u4S$28D1raQ zeRb|hmra)o{KRty6Qxa<{cD9*ffE$1;h^&a8>cF)^!Tz5$)H%AB4W~ZG*hX&d zKR>boDl;rUCwRh(+mG(aW~EbIlU1TDK|h9EYxUy(5boj3}3AjJvd^H1Tw~yJIP;WwzCNA3DCC z5@riI&#b+C-6h@r7-k8PakQ%-VDYc}fFfSt*9DUV-0?RQ0bpNxzvr zBJhR^a_V~0$>0wy3MAhSP;0Z>$Y_ch&;Llv%)csRSB5QbZt6ZtnQK3s(^D$v?u9P| z$A^BdYlwSS=Fm%T5QJvbgGwX*FWAB%znrFwmU0n9je3af0%P_54Zep@;pup8ld@Rk zUNKegJp;|tVVGN)TPHq_!&F#|HKqZ(zKj!ySCVJq%al}^-Tbwyp+w;>Wmqb_ufj$`}{Bzs_Tbc){*Z+>VPt%qya zJ1ozxcU*LO`e`BU-hErPk>GgAINd5n*W7pF%~g^8gfPbI5o6BRAe?8Ac_gt8Do6@o zMjoX-q}%XVsTbpXY7F(YkL|Y4?vha`ym(iw>~4U^pJu~gbRYZ8FmPGk=le!%+zN>NHZ(`#McNd@)d4TbcO2SqhZ z?l1r6_xg~8B#TiW0T+{iEqn9jC{ud19=m^saoS(gN^h{qmz*o~%vBEF1&NS1FX*Vc zblehcH~*~Gxu?1uZb0Znscl`onI19ch5rr$C(6lT#}#YQfX?)BJ(z+@0#bWH!vv{nZ8n`QrW>+*n!}pT@#y#s4d%s5#LMW zF`0f6Ki&_O7DGCX!Ep74%#t{_Yw3!`p zNZ$9>my;O~aG!7-?n}LgeD#XuG3za8JLlC>d&w`1ey9X~a-hE+=R|9Y9J<2kn)$_y z%l=RO3V0S~>e^EyL*)bS>3W202G>T)^I3qb%Vy%#tP(no^=tXq1RVNiYsaEpoIZ^_ zO9|3nwD!+}kSj`(7)meONm6#%gwM5$91&U;DV@cfptASPURlwi<%fVVHjnFlboD)j zEtTRX4=lVs$V42N*P?aWvxab6Pr|YevEFMnd2;l$kvg?>VX^#P$j)ZBZvtx%K`FN4 zf|_<+=GdkdkPGN>RekS}}ad+c5;628wmUu$mh?<|17__@WY&Pv~D zAT|h>7PT*)>~f`2I6*1pv194hSBEQo`~_DgY{1 zewF;Qllr^hy}!VUKf96Q+$E@vNXMkyQJ!c#QP@>-t5j=RO1Nzu9@QJo@|S%p=f{4y z{qiUthy4fNRR`TEdvDc28nh3P=WFpQ8DOH?+nDkNT9C%y#P#fmh?#~8TW+*uS`{6O zyf|gslaPrlBBrZN{cSO$;`6$0UF&ft&S?4d+%W?51I~-5{vIe9eJ{=|7Wt72*wfP2 zW)dRUT8TONlB^5fLlVk%@{))S;7iQc`_9u`YTOjslV$7qNrVa?Qu&MzvOE5HiWMg| zos^Dx^2hhVo9x?+9MLMaLxp_f4xrt=0&E=OVD#Nc6rqOWR@)mg;C#I&s=3tx49zv# zg6UK0n3KU#ib1QA$U*#pW-{D=7rq`5l0*(I&e#-GM;N>+p}aRwoRtcK^oBA*wI}EW z)88vhd8hMy*grBOh%U%s#x#QLMUX+Ry5;(+L%BW_eQ%t=l z)TRsA5IUa{xvQ|heS?YAzF4b4GiyOp*LM|^Qe{Ecf{=Ybg%(q(IF82#H%cZzn7WZB zg@|n!L2t;34ir(g#u$+RnFOFvUQU}0ip7`cDHV_Ch4mCF0%ehME404|JB!;_#xEp+ zzvX5eleR2qW<184-IWbi-MZQCn+_ekdW-!=O2_hZqu5_8+}VqxcV@F(SKN3wv#zlH z?ss_^xbv8AgR~4r4#K~O%gVklvvVoqmk+KO%~nHQEA`9%pP%2GR>UTC>NK5%nFV}a zBi1^7WjoT&ZSkj94x1<$e`5)HJSy3)j~jH{ZPt-%Z&=#UJ&QD$YQ_Afg-gjrNKNW3 zW_4(zHC@JjZE(!*ZCi|)FwI9j3!UieQbDX{tGwciz2f`1W4>h6{ojkIFG->jS{V+^ zVxE70ms(aANdAK=3Ei7LklfZYhO{g>sm+R_o&Su^pw0ff-MeF46onLa*^tPl!Ktsd zLuh^9`)Vk)NI2A}9{>I;AVjoq|3-N-9!TOCJ1b@RwKa9#|D`Q>oXQjM8W~Hg# zc>yoXqcbV75Hs$}wr_wY;yFXoYLhNN_VHXY9(;5sqjitR9{rD{)+lc9%K-k@n zlqUQM#Cb0FC-h~S4?WI5d9) zMXQ5fLLy{)ID0Agqf|EetY1X~`m$L64J1K?Gni0Mt90iAp<-Lq)y}Xg=>)a~nTo*1 zPuavntS0hy-vc-C`mi)k-jFWLF}zsEVzseRi`e)lMT z*BJTJ{~SC5u_u&xvY?UpMNLb*ttY9OJsr>m1CRcK7UWP#;#Et1?mQ;~hT5wI(c*T=F#@Wivs|Ym}dthENsBM2Jh8 z@>eX9TrUn~_7nMEej(|UHf`94J%fV;y;Aq>n~`j_wqnZyz7>wOgICWBy|KidQRf}B zf(MleFQW~REO>RU#4$OcnUb?3t^1e#p4u+s`%IfNE`%i8+tl8(aA{&G z_KV*S(R_ZYXsmt(J=poL8|nr zj3v`u!$DTi7g4k?>0yV+0HKuLpJvm^N6;c!*~mYjJ<07?GU94#{qo=c2o#bZ(+j+# zm%5QYz$p3pq_b!S%6HfZoY`Mwsj;0zAAVCL{l4xwLv=f06K69C(Z2#luS=eFz_fh$ z?bJn+S*i*bI2Na(WIFPtq)*HIkU}0lr!8_xy5f(nJS4uw$ zOXZ>n4*EDX#yU}E704O$CW9O6N~QbvBjsA~WA7)}QJ7f|f}ixNyztN9noqUGEHrly zPt(?`uV34`GX0u_rQ%k581tq-ODb4-a`mDDc zw?6)^Hnv%Z7Eo1HdU3~GF66DB?gs*iR?_n`BS^vmfZl$!KG~sLN1Ejva9i!1T4F*mj%MmG>~XJ4~tm z^!^dn8B(XsPboTTn7mC|TXveU6cmbj`mCv*GG}s`C0WNr?lM6+`f;p*i>Ed*sHQN# z)!Z9vJ=l4U39V~<`g3CX$NAN()y>OrlsH|Kh0iY|-0R?(B46o&Tf!f-of%F93j8md z0RW*K%X`=O0t>t4HfO=(8rW3nJ!S6;MMy`w|EoRnAr(H>MjS5Zg%Ag3?YuJ6STVn0 zYdc%o0V~)6Mh>!N_|0@f^MF@05?*5LXpA1W0co5CWK`}|Swg50+?ks>ILEu@QTzfN zyDw#P>KX=Kr;^c4QRiqn*(8E>-hvKC6??+Rd6xGL@q4n{HE6tUt#wt-j%yL)yi42l z`|<1O6Exc#3Sd^vAI>bQ)6I48O{XfSYVw(kg8SuaI?ue7Ng;m{k@*QUA7g~yJ$h{& z7ifGUlQ~z*FuBh~`)7{A`_CLDwBOocGD21G=4h?;+@j=<_U`YStQt{5_1ZeWqgl*a z3YIapq?J%-78e*Zfux2KD3eC2GW!@Wq^Kv@3!4~7pPBm%hW+fCizr9Ldpq1~ja8?K zt^mc)lz07)h36CPE9#0HiCgP=_fr@1QEnDaA_cbek+`LCyLdJFOarFZtEPrq;yTJA z%*jj5YvZ>n^rJ_Kyi?abDD@&Ew2dk05VQ4Fs7aw38UyWMnK6EhMf+81W3#W&Ug9DV zB#epPiL2X`a@YH-9J3u^V+X>064Y;og=GS7=sTG_6^jNL3J{O}rycg#=>QOB;y#lu zc~Dnz7qGe3XZK8ebS2tkye@>?_ie$4#jSx@e6Y9oV{CwEgP5AlMG~1d4<^>^YK|%M zzV>c{!T~H-B(}MN^LT`A6Fw^JQ>Y88fu37OeCFfn!sYWx-9*#jv;c&^8Py8NsQ+-u1v*LeXqnW)V5CT(EHseCj#g zC`L|+_^C9mKNNB(_XnYn`vS9&(iN5p;Wm0DzAs4v<X9){M9-e>QmApf@kLcvn=u2n0(#%*%xf!H@h zPsE^d{JT)%16I-20D|?ttR1?3M0Y>l=0XTXoTqh0orOa39gwkqQ%0n$i!^8pMq_y- zzk=MT4WD7P0PH)i63a_=w=#NSoNCn)M^C~g8?H zD|Otpw55{=5W|w?9+Z(Dhb1gLQd4k+%zA>-zSNT1`j4v0^)k?K9_C#Gi@|Ydd-Ax(Mhq6B}$Y z5ih037?NDYXmXo^&j~9bAFf_(#|r@E0*rd*3y!4AOQ7qqg8qu;{DR=~pdC`~(kyLb z9Ht~=`NFR;jta?8#HohSt*YWwQC?akZhy}2Za0~LGpK7*&8I^4Bwhm(F_AAbvNPs4 z1|`$EnGHEf*eBmAM8;9d_^p1py!~`~My(>{?DMe|H~^-&pbP0Pntj?QJE_%{7tB#` z5+#aq*j%Ex7vAMwlaTSLH|n*r)T<46B841=(C7HKy_fB%?RvX}hiIz=qw2|%)xyiz#O9+}2Up3)%}9|m zGzLv+$kk{2H*aQ3j?Wp#%xlU$OB_YihsZvnt$S^6j;~jb2R>~4E248UVGGZLp%uiw z@sR1Xw%BS47U=t25!m6qC15QQ)K%wN^?2W)RJMHZaXga+JnBO~toJ#$Xr=?4=&js{ z{NS`21USvfH13$AU+(v;_qw?`Jd=h6*V^=H{!!&rSIyjynG5TCVbQ__(0G*f2{GhvmVCGTd zSC-1O;EUT7f=AbdH~f}@Oo?;xQS{{2DKPlV6XdP-@{BW2x8B<@OoLb}cn60V@+EY- z%hbc&0ZFaJ4C4}p(A)NnZu@HdULc8yIg7R#+t4=Wq_0|euz(D213p=n(;p?|V2y15 z#$@+BV?7X^*-HscmVaKhTAG}$shs8hULf-#jmwus-vXdAgiK<6gjXck`nilO93P*V6k+z z-pabee|E`!_9FvDl(~PlR9)YLrVp^RN84?r2~RjEhAnlt5bd+^621Qf_znr{fFZXC zPRJUyzCwas|s9R7j@4+-X=7uew=6PI6 z=d|xg0CaH9dr6Drd`vyU!3q^^Vc#UA1Kno6w_lrCmCQCod`%OPjmZ#V>20}_WZ1Tj z-m|qSaxAkq_G0p^JH#Z$qDPnU4+HptiHv2sN6`IVd{j$$DjCtL`&V0Bu`O@09~AH> z6tR)hI1^Tw^{#i>>w_kcR6Z=U8^AT}R&2i>mQ7Af+Ut)s-L^uoRC6q0Ge36)vrU-K zxNDW2)*8C-4d=|4JN>iQ&kl{V(;_qF>=qpy72YJC6lAc<>Q&da&Nt_2tg@dOEiQ)G zN1t9GT0&DN;7<;`LMYIq>-@>odZ&Met70xVo4qaEOGrOd!09;os~8{^v(9br|NTLl zQ<-$e+M-c2xCjx%l-hM97n%Dz+LyEe&!Cnd3OM^JH!*K-1iz@}NFt24T~g*n$7HKg(hp`}=fe-IbDEc3Hp&`#-4c-XU7)j3un@lqrpsbd>WA+e z??@qyuyoC5hOmk2@q1*dFsSNrG;yOmO zwZ{NS&%0^|^wy9fxVXD+A7O_z=Bw|mF@$@*UBpPgx0DA~iUNI}?6O#ig(Vti84_RB zs?A<-cnHK>Ur)s&T)66J`MKD57BcxQ^s^{-hO3czE?m1ifTw^NH_|0p0gU64#YKds z1GctM$9)&Et<6~-aG4ikFaR)SIv)3dJ`h6F`-HwoW8@MP6=P9T6~%<%Rd$%XFp$+f zIOeaZ7jQF+6z+6qfB1@F5xa{TsmA(C9GDQNV=9t_*Y0jp0aDs(Koq5G!H=EQ+r6$IG$1QjqeZ*mDADiV*Ykj|~kkn}p?W9>meKzCog>4?Rd z@55Nn64)ZX)i?+bL0Hf2nwm5-U5W!?vRW*?NBVySD8!Nk3fP6fjWpBXUz47vCso7z) z`1_WT%*f+1AEUz`7OzW%(=5V0oN%G{-LZ8zMxkjrca`7a>c)@B*z>AH9L_`TM;FermTO>qv)S^)*e|&LJk0GK{mc2G36rU^`V=Aa z7DfYk2F?-hpHZYYo0OM^pSA`u^All5#hxv#v1giUe-Kn8F@Ik(#4xr;aT0vVi-)^_ zU+`K|lLl62NE4CW36qklFeEY+t+IB*eo{xd5pZRisnZ@!-|{K>*4e_lQ2eXgI+MRb zWMOc#(=_A8(Qy5}1~2qNruA%K8wS)^X|%N|q?K@m zxvBusS11SkVEyr}iHy(Jy~+!*al`%P8V)6NQ9q;v8h$!6GVo-wBWyi@zqeTyKfC*L zo+Y@ue5x*aHqF&8A)~1h9NJq|WHVoz=dIpWW)igE0w7H!5CS()==*014)6!~<%}bp zds8f$kAGY24?&eLtH)YIIAGz93{G0zF86d%x(>9M&N~ubl21FAxWTyhGk=@V6~g%X zygT{F@AIDx5?yfaDA~c}@-p$ub=|c(qK4}xAyzQB(`r`hrFPQG0g0ImQ(P~G^X)5y z;lhTcR2`bR?W!lg*jKLp&R>^+PfP0;2TQz!!V9fmjHyE83g>Eo2as&7u|gj>nq{5f zj0up+o#W6Dd8z7mS9#{G8bHJWm9rzE2%E#TVptg z*X;NbS`Z=Ti42pq!`$j0hL-tIAY%7SLnTW>Yf~XUAB)H5kZ|_SJcbC$DQdtg@IZzVgns|F>@#p^|+zW zQqyt~#A{}#BHIfJ8bm+g5q(Yf*rh)G^`Mr++_!uLvbS5UV&(355win!P=#22{}GxF zHGwJ@FsenAG@4{cjV!12$)UReD|#UUrSZnXo6O3fNQZ5QEX6gpws$wjbG$ zg#>`8Q<|3|6Lk$yzW&H!ITbQeTxe7cwYFOpxfo|w4s`>5`Li-5rE2Z9H^pC#>%86L z;e$PUCU{*X&w~CJ$?3=oJ(R^+N01*&7+T22Hv+w zUi{clx$*UkvcBXOkli*^frNJ6(e~RAlX_>Wl|wVlI9TRgko~cfp3<)y zgfkMz$~j*vK8r!6n|tts74E>zFpOZUVq0LN{fQ&#Rm*i*%yURT+!QbGT{NInKvXzf_#4D8;1Ku)syC^p! z2i+krC@kKEjLEuMWki^Led&tz}y%_mSaG7XFZtMvggcNEB z<4yUG6e6yNuUZcv`4Se&>@ulS|E*~n@aYkPd_Ddi;+pFc+O*l=(T`N?;2g6nVzP2S_kkoFZu~xU5f$oFTmc;Q)X*k(* z*jAbeiDcmr<0u>?_mO2_(rLn6ww-fCU?FyUB0f+W3@tZ7j>@_x6$qzQ#9-+Qu*E>8 zlsf%`fbZHju<*Ly4Dxb4(sm!eC{&uWm?lrQlm3v&qv4#3x5u}>ak8I`T{fASCmePk zq^l#JL%~}wm1QJ2xI&5A6N#iAe9f)nTw*qXpb-+6UG_db`*9S#&1Cb-))tR*2wxUHotvK_RohS@qxpRJ_ zBVX_qqc|yiw)j=QUilM129!8a2CaVK8$|#pW~r~`VxTB^RV@27VXU@vV@rQ|f@h|d z8)?i>-H>S622JO9X8o;#t@zg*lUisi5OgYlc(qvc+jH*;G8b#6pjvFU+K~JM9{e4t zOgJhy1uX~%pAS5cJGqR=R-ME3{0?$n2m_c0$Gaxb+p?;hnHK+kom9k(_v!x3q(FuS zm=ou1`>cb;0Scwn-5;C6Y-LXdx@+bG+tDMMQ^y;Uy55Sr&jpcZMlfU=&fTQ;QWt>9 zr*pm=`~6KMr}J*zUF)5M$#wax*JZfbk1Y9Jj=RDenpvE>7T|Qtv1&2$HpB;Tzg*AB zQ3{;iDUt!K$JurW?Lz3G297edmmHcrn0gPj`T|0+t`-*{(YK{ir*zcF$_2H5;~TK7J~tt@@& z^{xS>rSAdkfMmQ`wP)d^BA1R~ijKqROp}4e?c?K)}TUf2n(`#MBar!fUGAE*=v@7 zfvPAkP1E{#z~Wuk_P;~@Eedo~_Tz%}_Y3dP9N!Svs5>)QO^vJ{mF}wzrh3dmI^h@cMa)!#qLt<7ht+JRWv2-r1|v z03ol|9N(aBA^FE3+`(F5&!9v4ICqCLB}g>m9bS5)G&2-O!ajFbYtOoFx;%F=PP{6@c{?-v zT3NhB)!CyYO-#PrVp>8a2SNt10S6FZ&{=9kPddaNM}Wx&NekABhGEAHP^_yk{EeEH zizv2;{;}B@B?4|M3M4}08Qzee zwG#aDZt)39{9ezZsCz>{Ce&nX?_#6T&Trvq#S;f8Z|ymG)oS*5D*T$vE!lp}sq5o@ zc8)0BaIMCqR5<}U=0*5$%I;zyqcG*du<%X3F3G5aZdwdQrOn`dfgA&x0>qBn4_mY| z+lvlxeRI^tcz2Myg|=1Vxm$O6h4rwTp5t;p@#V9N84U5pBhHoVxxCuiWBak` zTFNAVl;1YpX>Pfb>cneHLkGj5XVeSrr8(ta>N1lSmQwde_W9=RD$gIbPo7~K4(ZY@ zNboZgW5hywF;D05x>I^{2s9xifU%o^vScpxn69ib4fjSp$V|jef6Dq!9CIapGO7+o z@DBFSKC@Qn;W5C-_*ZL3l2JQ#)?P!Mxen7EnPC1L>eopTCy%}1L$H`?eRm@uhgU-SKyIz)F*HryJ{r((MciRg4$9-oY#9cGOz%S= zLsN_8!}$9N`$evk|If$Cq;xXx;?Ca3?8aRt$?Ks+-5b%f+Q*Ri>MzUZIV4(C(rV|T z?bkSqAm^8ar$|jc^iD_OY?4(7XXr&-`ujzGFvPga+oqONpKe~P=?e{{4xM!O;zgG* zR+zDx|F&ePH++=w0&C$T0}6_$ zXYNOq0jBlUbHvYvN537J53L$tZIXbSj_IkRHg z=kw%QWW-c4dsP#irE0&L;vSaJsY&#C3>%1b>y>#Xv{-;R%%;-xlA|Bf1w%d7$x^9l zKhzLePk10KoQ>rWbM-fw4>W0$w)b{|Mo!L)kX22A@zFJIM^ct5kti>|4eCvKr|8mARG#`eXXp0cX0)bjZi5e-c7_j+Ex7Pa&;-t|Yfk zs3Z6xXWm=IVgYxtH_4;Rt5Fy3PP%~i@?W&Vk`i-RJW(!^IDb_b-2JoPVe^o}<2_+0 z{fpEWr>aFa*gr2hfNMPd{EE9M@pSkC5D_m%v9#z-uJ3cY|4@O zeSJbYHokd>sD`RxKMycNJ+zhC>**Xj0wyuHy7@P31$?*OkRQr$-_&Xl_A5WR!M)7?IZ{ENUCEV7H2xno-jNk}O{ckxiPy_v;Tw zCj%;^={1J(1{PgC?@4E!aCcm-`*E z_K(NsZ)Elxy70GRJ_t9-DC-%mZhPm}i>gzGj|i9*ua8fqS1~WBfCjau%SM0U$tXDI ze8(hx6Nu`g#(SNCc?E1pq<3wZfg*K_cgwYMxA}Dh*=c=ThfAR)h?AW(_%BfNS&wZ( zVIY?zH#}I<2f!ZU?%)*drCdSZm7n(A=M0!rhs~=~`V###NHS6U#lxZ$Gr8sn>kRp5 zI3by}_^tX{C-KpUH`9M>4^lvdti>ZlTF7oqoXtA@W(D{(nm`l+{qcGMhzmLr| zzWIdHmrDRtROGp0k5POixGYbR=Ww7H2l^fm&Ih4h28W^XY#Hgbf0C`R{CDx9@VnDM zpAJ=~AKM7ghbBjyPH}N@_mIF-boU9+KoeV(#Lf z!IqnBU^t&FFdSKjYf}(3{~8j?$4p$qnt3)(aaJ@F`<;ReJGRlSFfehmIn0&ff8g?s zTM_$njG$HVTOhj+@+;rx( zNG6pSD255xMu`ah0Qsjuy*o@b8IRK>dyN%mGsuQATNi0R&-K-S1;J@yZwEyh7X`E{ zW@T}e>Z#Y5R2|oD!I}(UDVi#U#|D@Sr#(7E4j3#0arZmLNLda(-41GBpu_- z?9s{&=0PH_EA{xJ21xzDxzF8Bfg=v~K>@SZ*Z);{h|;u5N%8#ylKr`Na-B~BW(*}(oU-0( zI4eJzG@^iAJ#W<=1p{}}n3<_W$Z2(*t)Y^O=(t2L#do4O;Y4cX1*>7Z;d%bt-Xj`E z{>&prRh`GcidLJo=Kk`v>?(P~cxX}XI0A$;K3BL3`@2x_zKR#G8&v+qC3-9M@4nD< z6SARsw6Q_%;0}|~WKFEjXO1iIaQBWhmz_vm!-8vCRzB1l)su9z={t*Sg6Bq?nP$VS zBf&}PWDw;lPU2=>hydVQ2Jt5%g2U(+j-jmDwj?o=(o83x?8dJIT8K0(`6rXQus=`% z!eahy_KhE_FZym{Fa3y8c_#dft|W_3 z0J~bi8QS$gc_+BwVKra(*5c`LrRNme8*Z@E)!4hXf^6cJ zyGQ_SL*F)iz#@05ozC{~?5CI9tuBNkzgemdynY(JLHN17CoB(^44u97(LGLLn z%(!Q?_$@uYBFodgEa%MCHkfL-Gr@zBYQ`52c2KAAe%Wo`GUpY=ehLX)oR`!jfKfob z9B?X0W{|auXy3F?4uZv|mdOTv|74v(flC>D?-V8u4sL?-aFI1P;QNEmcs`0tPaa2q8Z`Unf;}L z>s5uuwo^`5A34XohG3>?^&^x6=AnE-`R$Sv`^I`mqSts_oIxMbA48Y~#}-xeF%OdD zy8b*nN5CLEyxis<%_p{rZ6X*8N@Su%?Z6QGw%TBh;E4-MQJ!t%PvOf$aCMDVteUn^ z+V$Sw7mraz1;1?t_fHPLS`egp81mTEzDsiYNayZgP0M~-kSne&jgLF`pvY%Jr&o+< zQ_fIIlEBQSff82_Te2|LP7FR;_2h!JhYAP@#0-%p34`(CPCzL%c;G!<;!x4C>m@xJ z1B>Jvl{hVx3c{>5t!?AaE9@IZ(Rd zUgcDDUMYtLg2UIP7YvSZ$Jf1dAr5o-)Wfx(`@N9ORBopS?A z^0L3WPTGtyysLEth$qsbRoBDLliTEE_5tbZId>Wymnms*80|3h`WLRFwRx+Uwf`x2 zYSq#)M8Iom^s1G-+i#1$JxIPzM={(QZUH$K`RL*-J;4#VEeWW;?0YRXd7)^A1gr`y zl_?&2Q)qp^hg{FZ9v-FsWB9ERQ%*Tvh+oWyUKm6TZNo~9yU6&zxcWM>DewcGx1BL@ z!zc!cNSUi+RPAUK8Ea-6tQTYJSLAfmJE29g3Vt&G=DWrD&biDO43+wh$_n}vf#;@8 z&n}m*I!)XY)>Hph!7s|*hpSLT5)#2br4fdAV@qw%zu;LdX_b5E9-)wl8+)Pmr{cpt zB@ihU>0*!1V#8Mn8$1K*-z=H~K?3J{6AZuZc;w}JC4^|MZA%Sq=j}@(xw1w&pKmyy zePXVfOdh+LyHq|1S^h?5+3`f5ZaLy}>Qk8vlm*FH&1*-zxXgUKf6o398 zLi|l>?1lQ1;+OR2G(aL63W=Z7yEp8}M3Q1LRPUiz_!9U)t#Hvf$?h&#>C00SIBfKN(5Pd`j822_o;Jk{HzK7mVF= zcs)=vEvcIdp|*oRGOUig3c@^*5?CM&3uRHi=PnG;ORi?dlULItRTix}P+O$%*;QXc zlRM^A`W9qW#M0W3(Ao`OsoQQA|CYCQ_+%O-jWaG?_J_MN&)HY}oT6)9p|STE>O^`A ztP2798gbXx31*GiHbP05%R!C`V~+PI)fnu0;q(%MuRq$vtg`A4Fb~p(vhUh&bGqXB zgG@km{Xbj=SOE*}zBdF5`dZymj*ngJkC=)DmbTJ5A`ev7OtYB0e*IX6YuV`SbF4|o z%1suFJ!&B60aoSdHSzH!3H&oiA=Uk=N%P*-A@3^kyXBk~#CMb9e750Z9TUPm87^CI z-?>m;)IsL~N#eCN5J7xP3vd*Ys@?rM7ea#Cn9}_VDU(IjsY(jg0 zajrG_0~d*}ovgRa!HrT^@&ORn-y7Ge@$tX?1O@27P1BIZfIGE7drv#unQrRn=#u(v zY&R2l7SY&N#OiWhozO>DB3;&wX3*s6_1!&WV?b`OUhVg~bDobW+9b(|2*K~=)Z9_f zZHar*fV>&)H2Yq!ik&6Ph@YnlvLB0iLO;$0tI_({^aoN+h+$L4e1ID?o@xokIke$r z3Tv$s_EZuZ6#n?cCN$^RsHfzv#0>yDg}NP~5RIu{V0F1zWI*mTA)Q3;PKJAJzWgoj zW^zDJhI~9x^eH4O$@(*wm?FF1!?Qb-7cYW;Ic-3ug#TJ=QRH&?(3v+r3FlDw{w)b{ z*MFR(84K(LYkPnAHuk@}kiGP#K84B4su&OG|Mq_0Fy5`mr~OyP{a+pHBKSR<_yRWk z9FF<_ZB_Uqe!7i(-wLV?%!RVxwg~%qw2tb8OFB>~AmlZR(l$_lLV91eLZsGS*%7Y- zJZ^P)QqvfIW!-teGo|PIzW3+3@dAE%7S;Ru?1Zwvd(usU-cJ0FAk{uO|EqkK;EB8v z8~#3du@gtZAaUQ?O=?yYis{)3T-8@kPPatM!Ib~x01xL>7b;wu37ssg_zlE~VkBN( z6sf#k=zOowUs||rX~}vti#T`3U#mTF&KIH_A>m@IOBI?yHzGK+Hm^J4@Y zzyuU+_dxDoM^o|Mw%#WbcPKZq=My6mZf5Hp1{TjVMZX3zbTI}aZrZ>Y620=wbIR^Y z-)_I#&cOFgVw>LXyJ#`^Tu&()GtPYuD@l-5hhlfc@aVi4Jbt5NfGvl>)uZ;2`x@n< zUg+D*(pDBNTy`i{2~hO6v-ihxX~EMsem89)aK`2`nCVXO_VUeeSxzwguWwvTCS;o% z6v%CtgW>O~*7^+}NHw2^N_MtZPiZPSwC@}CH&a}^95+@;DrnK2d4GfXowP1E+8Nx% zMet(Yv0UJbCkEoP(f;4dlu3d=++jFCAR7t9l@${wmIgqBqU`-qm|)K($K>-OYZY*s z_Y>uknWfc1adNeZqr6`-jP|nk16P8Wr|2^DAR-(ET`2LjsNi?3>-&i+XpCq0ZT*aLs4dpNVdlt0dz2_p9;K6I88vEgo%e59kb5A*icoOF6f18jH z6~;8M&-L~<_=mm4?b1P-n=P$o#~771bi#OSJ8YF|9ql3)$@~`$Z zcdC?m#{2lZHAhIKyHkyw*F;3&>rUQ@m}izq{YVDF$0qIkar@lWQ?I07lCY*JA#4Hh zteUW-O7p#bg&&@c<8`CuH&-b`GVbx6l3;@n=qc4jl zD=~v6sIQZqY3XSbn+|iYV)FW6k^Ep?ZpOE?Cb%tO?Pn#27iw$;aLYjgXCZutV zw*S|9+Kiyu)C6a`PpbuF?T*2)PD~dZg!^9I*Pn=2@Bp)ARp=sv>gzmMjn>4Y{sPft zf?qSj?ktuSxBF^jY>3prpN~~bOI8Y2YzasAGqgiC>f3|dJO~d;Ma0@3HdjXTj1b`% z(PZ?nR#Wp&Ay3!1DENZU`#0x|l|=m4Erz4TJcuzsnam#D@ygEciWKKJkL^yLy#V5K zT&q($QFg9k9h4qrwB-(3C>0Ki1N1)`irunF5RH(ke@<892~-odHMa`J;oMNZ-xCRM zH5XjH+r}4|z`dpxT#NaTNAkLiZnDniZ=7Q~Lelk46k8=o;tvKsmR%GYZBzIhmUrKm zeJrx-N@igR#bkGS9mC0JD{hDcRUorUN=U_f%5f9Vx)P71o623)%A+o(0e&$>`E8Il++?r91KU!vr^WGee! zsg3+556^_|XxAO#1iOy#az73Y@64F*LN)vDw6tY#B+y1)BhGs`pYc;sELs4C4r0>z zSlXr0gGmTR`gqDoY=j~M%pGP+Rmoc{H=@gYJ)7FQk0Nm7sGJF*ZR@ta0yt`CXdFF}^`>x!zi_fxIs?1lR%0USG+g$q4+ugN!uE}K;oj| zUH)0s2NZZ*m4Lh=g}6P#Idk4%4-$u!B8lgQKFXhtoF8Q&HUMf!%Up@g95DP(b^EOA zyS*{7K!a$j*${LLjQg=u@3-fhW=`=Rxhu9rjE&@uCrCMw6zUDJyO8eQ@OJ&Ei&vyh z%sts!Qe`Bb+pQtDQni^v6?^Su@wwkQwW~@our`S$&Q8Kl)vLLeu~D`o)+q;LP(>!I z)%z#TScX1?A>r74&R<4>Z=t1MMoizj(pRr)KV`VC|2;v+Y_>K=PbwrbQR%KUL}j+? ztpl<7Ji|#m0XC&f2tumStRcl%jlgU-?Nh#M+y4X_WPha<7AH6Kr&SfeHYApstnTZ( zQtB{xDoADC1cGJ7Y#8<5Xci0o)Zi+Hh8%J5fx{5#&iNPGU$;`R+(;sOqytf`J(yXi zeNLYAxbeJa=n--z6H;0M-AulguA%Um|M5|C`@zNQnetsX<=k-RT*(HsqcaVd6m}wV zktwM?4Bg-Pk|TcEwlN=Csr;L@VZC#TZqz+*4KbgS#-ySs`1-taH|UQ1_S~qTE%Zy(>iaSe zvgt?|7~PeVC2>5o6fyv6JfCA32tW(3wg$7#Q9Y?lH4s8=`h(Zx;B_5yMK1wgFT7A3 zzfqPYC>Y#6cXYZ-;rmDEpuQhwJzPJ#Y^6zU6&Dfa5|T)Xi;ht-@|20K<*6_A4#t*- zp0#3`(rAY=DN*ZF(CaoOFHEkjC83G;L*P96opG>Y< zR&1BA#Nv3DYsBAeArsP}e`1L0Wx3~T^LOOSZVMvLN-H zqCm*p1-CiQY!?B2XtutA3hepK)_drBi;GBAc2&r#Hw4b;QrmMZNr z-nvaqBOU^{y8W4aC^~FOr`g8VZ*0K-7O`Xh?7Mq#>c1BFJx-X)Qq|ySI|%`;`=CHV zK(4hGuQ2Z*Tfi08OwrWkEN%Pt$YWoI=yNPvSK+uUBzK^1KWxC^RQ#jTq45Ec#3kED zi;~~K!jE7rz`DU^iUZuuJ#wD{ELkQ5xRlL3G{kdNC@O?74YZ@I7WIIUTSoaJ;9^3@ z%B^@8K*UyrhcSTxtBI|5y@{pLUT&UGo87$#o=uq0QsBy^iI!5D(FoW09S6u+M&TIo ztXKH)Xsf)kt`?!WQW1sF(t(Zc3+|Ad~#v8N9U z*WTR;H70N>wTD6i(&f!R<^_%xTVk(?CypqGU&pgEr-%-Q@2J%3m^KGEKD5Xnp$2iI zL)3Kh&Rk2eXxhzIK$W^QdWbVi@u>*DD#O?lIe_b7Bbs^R;*R2T?x&XWlhrVzQwhzR zcdOP7*~J+W!e3kQSb4ntlgNt=b=!wMYq=oA#ZCDvtm6)&;&-bhD@7`EY`K$X)TNT^ z)6MF<7TjZQ5jRlZ8uJ#n+pjIOg{5jEF}|2E4&&~H6FC~ehN1F|M`_y(`5}K8uf37^ z&Z@oV+7;mZYex&C((XY_dA?~Z`Wf&pKsaf}$VS=F22yyg?(i7yAnjcub&4*}*zhL$ zpH^;G(jPfd2Ia;@ve%h#ZzaI~UU3yu#7^kx_l-a3eLdGKLR3N`rdE2+VAbo?cM7{r z0z|H8uF}ysKxu!<%?TpCR(2Ict%gNd#z?q`r0pxaSRPFFN1(>@%A3H7H__rax0@m1 zmJL?CsWzxwvufvXz;LSX=aQ1AJ|NJq0HL_^uqbQzkQ8SA!sqL~m{RkYo7K|G{z-`m zB-f~MxcN^1IDF8vc-PzobXj(AY@Gy~+h2YsG^npttY3NjsCCjJx4F@i=<$-xA3@c7 ziKkW1foqt>tzgmGC%TBuMVN)Ua~XWO^XDR$utIuH8f{gB;H(qI*a{g-=(WOKlL$J; z8l}{m#W=?eK}J(7V6Lr+&DlrW-uTD&e!eL-U&?_k#weJ2Wnu*6kL#g#*fDRx8xni- z)Sss($dQ8K50JT{>x}crIY=E}l@DY|5OL<%gpq5{ztms^(b$&GVd`wm>>vYtvUv^^ zq{--pE`ccIq@*h)jdn*f^7fNCFDv6>B%Z@7mXSBngj+@%ytb+=N3&`Na zTZWCte6?soQf-H8IqVIf8W~S62D=1EVmmlO#mfw3cZ>PSvS4R{?Es1lnIZ8}4MYH> zkJGI;Q22vZNcxXl2f|1>Aug5vqE+8kW;gc3r!_FK5X7+e=Ac7V8qb@nAm&9uZRdlu*v@iLZJZIM zFN>wo&AW+D2yz6ZR%GHFq_OUDKa-5zlYFNx+M&k}T)>!wbHIzjV__TJ)c?|eH+jg% zm|EsXyB2H5Exf(>vL&5@fN@Sk zbM9Ebr51>ik5szyxv;DvKb^n>YuChA2kwBuElZ=jrt4JakQg1X zl;J1nX6`)y1oGSf@ZlnJ?v~@h=FYydj$R}m%X?5##;fDt06dg z7~laRcsXoDU;W!bQ7i*%+hz1-WR$5CwF3p%c=la$)os;wr}wsw<(=`%U?%p8TNKIQ ziHm!(`Q}50M(xwj9cd@fbsEO#Uroc>zQlzKkA#(vI=9Zc7W`-_hSxB+obS?9uaZ+c$PWT(uu%M`_d-U$D`uT$3huAnTLPrG4K+ju=` z|M~i9M#OeE$3gG>t&a2;5b`a$d;YE5;&Mu%9<4N$I~^xfXexG;YfCnCw?6F%MREPT? z(YatJ!?Qc7jGS>@qScCVe-xql#+Uj?Z@m(n|BtG3439JFyM5C(N!!@AohFUdsIhI^ zwryJtCuwZkwlT47Op-J0^PKmb_v_4cjc4C`um5kYWs6m|adP%Z@ihJ-pE6LsN32}jGGcC$6cIzIKx9H)@=n;7=iT)Rfr1~40seFFQL5A=85G;lNNjw4W zckxvUb~!dB661?lMY9o#@o2S@=N}z%py$_cT$NCKo|Yf)CAqRUPVVd4YCKMUh7e@o zc$W6@xUOeeb_D=E!lzqySL6efDW_0VR zO5x@c2+f7l{hLYEsvGLr8oNca3YVB(kHcWDF!odhw7kM`6)A%JGKkf+ZQxA3O8Ho& zVtBg;)<^3_BYm!zL1JJ$UiG)}QOv!}5tqDmckZ8Wkh!}>YYZp&kO;8-ZZHu(f3g~5`D;0+R} zKV3(b2^Zf7eaAk&4#NI*#Fxlo(V06^`CruuN;J#@e8y6aqu2~T1d4L$D6(_jjf=!Q zphD11+l%{mcQ(oJF^<~M3T}xA;U~;r2XzTtc01T9e<_fs zG24L5Agy`C{G-o~Yh%OM{bX)yWmLzHSAcI7XT*a7 z>u@s5S37+P-lhj=+^_fM(_*W`fE#Vo8!dL|GnTy0c|I**fMV$nG`3N2Kv7ck?`Jh| zWOe$YjOKCugVTi;s?x=GLK!DWGFQJ+%) zYJxKgk*y2AQ)d6RC|T?%`Ei2uF*~-F9lqe{D=WOIhgY=V11s;&CX&DCS|%c^CG-|b zWI8)c?d}Xxo#3dSS}g$%rLm<1YA5CI=4MOU_1D%h3F^EbsTjKt4p0q&+2U7scF51GL9aoa%S1E8qxXu`OgY~lA8IZ}m!q-X9tH5!@rb)g?{ z=blq1{QxHC9N4N#S>v*5k)nKVbJPl5OIQs5Q1V=mhgf3^TKNs!UDD) z?>`uw?Bg_X?fidT%ixhU-rP4_f4a*$4ukHCnI;K~J$gxm)?z5U^wGZ>S@%f)W~>J7 z95UEit2ly6R|vA7ufAjk!FO=Dbd5ZkO|;3A+VHE@I^`>xsjqt7$UuF1c|o|)qd5o% zhj@S3=xjc>GaSxK?jUy>`dN+Py-Z4qX;o)?9~^Rxf5Z02(#WE&`8 z)d+%4jcVRsv&mi6y9MSEje8el3wjp1R0qpgq~$_9pBGwSLFn<+3nnA4WGg%%ciLz< zq&&H5{cX&tugd@KvTAT1Kg(30Yoik!D51It^iPtI#YMVHV98jN5MIp0j0gevH{XP~ zzt$hm%RMo>>6k~oAd59~#JK9{>xS*Zobi_B@P5YkEms6s(x zZU2(DxjIenm|k~g?W1gH{1P8=28jtsJrFed2LA$|9;&jnMnl9fDs%}d)lCfQ{TZg0 zU8{;~OVxMINguJpO{eo(Z8pKDOUQ0(i!^3^CQ2>qKULEvyM!)8;JjI1PlRf^?*m@a z2(pJ@M?62Frre*D(!MOVHG}|CniWAOptlLv6>27&OiNgG>?6PKZ}eb4up=Ah4y7SN z02`y{BiI(^YAt0;)aJay8Hk?26vCz*Oj!7P__O?RM?O?(my2t^@)uhv!q@>Nev$$! zMw-eK6k)hDc5DG9ilY{6(8_81@D_1Ls zY==FK^6)rijqZCnP~|-OtA8vBi3M`R{tMK^PrdMPk!T&3XoCGT=bq{1BgFHk0~~)w zZ<1;!HUbz{tMb1A^?M!EaI4)}=|Ac`@7tsU+_d2Cymb6;+|!bKBZ>A%UgOvKfX=E8 zJ;WT1+huVibaIlGdSGs9<=!`zOC*{9XAETYXs3;9V14Xy{#1{A)1G9mAB>l!EP__M z_q>*u=+n^C6HP_hG&8yGs8{P;x1bRBA}%cH)R)}7lY9pkf85|W9s*v`&+krK+xiC% zDyQs(^t20N*ft^|POoYL=m)Ndb=jq7w9nw3!{F!pN41ASf{AGN%K2Z1VFXts3z)Xk9HIDBU_ro1O zMGifk-4u!~=}u2=N0MK&lnpyJ?F{@|J5iWZNbI;eo>;-B&Nr_wLap&ef;}wkXU~rP z?m6M{80ZOCo$3lsSThCvy%ssrVUGq`UxDx?l2c(e(X`8_yZAuYY(3u%(pN@PXxJQ5 zt&IAF{dF!=-1JKzosOox@i0+&l|{Kx)`ih^W|{z>Z)Q3O-9n~lEDLSmhzaFJPbMP# zJhj(!NMsuv@^MR)jqiEh@Dy0T^C6L*Gtjuqu|)nv5fac*#x{>g7lQ?x#lDiOScAG2 zz_N7{pR-Lgj{GRvD4)ga@$1@4S;*&xgz|HYBdB~Cx7g?WgAN96;bl&fR5r8JAD?I~ zpRtVy(9WaB+Lk(Xg;VKVL2}s_O%k#V2I42+7+{tyQk46K>#A&hDT*ROv(+i!_T7!L zXoXx9V<lTyOSB=&n*2X+5&~LBkFvh2*sLiF;8Q zi-m%n)|_5qWRGk8Fz4K!S8foq#sz%V8;SR?E#@t$)dt;WElxRl9W!u!zikvm*{v9V zXqmni(=G``P`%hGuF%`*aRgnrL(?<_Q+cnQy;^mrcbawz zO(aO7CC=fkudnk{2o$TXxP34X+5MJHWa+b2KS|>QBC0f+I3Clk)R^94`<$mV?9Ly>6DD18@n43Wy!8oB*)&9XrV+i!87U4j3=ky<>&0cF2VsknvRNtC#y4tqv4wU2Azg+NDJD+k{0%eNPQF(u+InP#D znVXr)e}XZ%65)t(Ue64G=oi)3uX9RxNEQfATQS8Jaa85x+|ojZ;WjwBNK75^!!r>C7W?yLdz{ z4QUsf7R91&!jL)3^w`Z0%@BJIdQ9ds;P>^^x`zo=vk-MBit)yCA4!BTn5z*Y3q~hF z2F!A@SQiHD8I|Stv{GKf%&=KhjAJfU10)Z*zI_+mWi9%O1DcXgiUNmK5MbHCsVIt; zL(!(7L8v*UmIowjL2u|(*?(;a>5MW1^KrqwD&?_8=PwO(ySIrdkA zE~2{ECNfjbr$7HNY0>B4>+u{ti{<%34qn#2oE#B`IBQiKo9CnYG*(rp>0>Tt-1?Vs z-1V5DsUL*Ku}x#kl`4^}hq31Zza$X>)SIsS`uw7LOPJ|S@L`RPa%uP$ys&pwo@T${ z&(e)h%s_K2KrXw^zZXR}@KNUq4#XsbP4Z@LAYC;@@~op%XP)ZGFa3Kx^$|?Q1D~r` zS!N;gaTn&(q8~KwPeaYbaEYec0xGz6+#7?lG=x^ju^|G!F709YYS}18YCIelM7*U@ zgn8N@&xXNW5j&%F9ayS*HYc!JatNJ{ZMJ zMg~+>C79Qn1@f-Ln28W)4@tG5%6gMp({Hu38nfVhnT&0X;GL)sI6aZ6?X=L_?*%J; zk1B+hG3=rH#H!Xu`?u+A{R0}#>8K@l{DW-HHu{_uNE|*-{??EW@DFzx6crRb>2z5W zy@IK?R?Q665=SCbAR{aP#e-Kr?JvnB57%$LF6lncE<$IVOxo{_L0PZHMga9S{3PXV$zCD#D8S9~NSf66{pj;!H~-Vp1D^eU?}3yH}>lov~t#cNsgiMyADm-7~on4hok6+`pC( zKU1X|Z;cu;>E5q3XR*m4N;6dU2NxP1ggW^GM(lc4$94>P1Z%`RErWy{9mb88>FomE zI`x7G%e&1&7_0<|5gIW=g;pYl^Se*(spLDei(A5LqiHN5To#-=R%(E_m&ON384q5x z$BazXPL;+9=FHVCnF=5Y9!~vrH2&5_immrV*F-xh4*aVp@<=M{C)^2VmF&YZR%#&* zL>CQsDI(|*vNGI`uo~QZw>`1t=MiRVkgy7F5)f(#LF3x(79z}QmvnczI?m}{S#cCT zDQAzJ>(5c!&R#HaoynFvN1c8~OLmEG?@tmEeJ||0syz(+1!X>SWHo2(4zF|b+qm9^ zoYGEBdoQjmUJ)v0m4X_wks+g9H@y=*aHj>{L>hLn2%hVKT&=*|D%LD(Z<@mVRirJl zkw>~0^X1X)IKM4VBHiq4+*$XYTuOPZ^#00!eq)H`;>w=5u16Oa3`P+t%DW@INs^YJ zeIAOaEMB=5gtL=2v@NGf<*cp5rY1-1B`t9!s!Hz#*Ldz>24mW^R{dN~nhl@b-`Nvm zezZ^%CHj$=(QIRw-wn2-m_awH27Q+au2nz#2X%U>oqqV7^M+$kXs2?T>XH(mhr|hm zle!K!sU2fxjNl{GM}CuouYNUX-IIm44@KdUPUVbD`!3faEC;`Kj4xuO@k{Nu1SZ%p zYlMULmPZ4>hXL*Vet1yHpR}S5n?wsg^;Z18Go2u2XS&$IUU1C|Uk}0$xzUb$JM-v* z-iJY|K_*C6U&yDGKB1U)_*ngLE|RFTnEOgRHVSXKQr@m;C8x6jy3OCnb2$4$ce16; z(+vN>6C+r+@i{-m=@^JNQ2^*Exo)k|J$2k$PXp%HF&B|+ZxkyuSiWDq3L1@eV6jWwHngS)ebl zuEv((T7BO#{<{??&)r(^b=I2A@NvmaA)mA`00%k4b^B)JD8kUN5u(QH9DBKzQuc5u ztuJK3#MVK8&ov()6|40EPO>{^?YYk`Rp^S<0(c*M5K5q3m^72p)8qBGpMTs?*2>i zJSr9$7U;LNDO8sac03PQQpPSC%_Kqry-EcNo5!4L*YV4g9J~${D^*Th4-7)yIhtd@ z#F5D<+ibK!awJyo#?s@h1+3ZE-mva58u`JVP6?ivnGEqe;O+S)R5o^BS3`TQ*z0D3 zH{P}fPv2-QeYS5cGRmH%1lAw^fLy=vl^FMfBLwg49mnYtIdt|qKPe+T_mBi_H%l~p zF1zeX5bu9Jir7LfY^Kd&7n!i+CaevPN~zqOayzRNwq?vzyxA1FSkRh_@6k&r_EFk* zNFspNcj>q5zfM;0j(th?O~T)E8@dSDs32O3&(-j*ibqNrm@j)K8nq3xqD8UA=JqDV z#Rj_y51No^oMEY6`LAqeO+QfEt%o_az#bc}Nf*3^UJLT&W#DE|^4;gl@jg#;K4unp z;60}bvCVt;0YRnmZx+k#jIz-c8zpD{_A4B~c%-CuCua1c;Tz~=n>b*yb^JxCS~lhv z#227AdsWeUFZc>AMvdF2ao!t~Sm?4*_5AXo(s`ik@;QfGsKa?Ow^C{$%;=aW(CbOg zEs1WY#?#ZBX|iEA-$r2L)F;447igGnYpAiV#5X?w0R1$XdXDA_i%CVpD&Jsd`@ybk z$moQN%VF{F3J^mGUIEYv)E!b75*KTYQ;KX^s@)EpV|staWb+ce4#4(rdTOj|E~U<_ z{M4~f{6;>RLG%Jo5E~7r@eKiWJe9RwJ%7P^Sy$u%)R0~29s{3|Ba+ann>Iyd8rwO7uLBp=bn@vG3%flD#D(Q6Rs~2Tro=o2s@ALFSdAcL6jI8&SSMIr39o{ z(yatPtOGUM?WBy*mAwTwKd;$ij{TtKE7zf}2g%8qDInYhfY_5Hmb08jZ96mNp6F)4 zIXc-uZ@w=C8B*Oa-rW?DJa9v8UI{s4c6w4NbQxO;lWxTo_xaVa1e%CO;_u?7=*8yB zbw@I1-huWU>;5mgjq(WmGgc?ma6FEtpGKe)5`PyV&R?@e)Bux=k!UiR!m*Em4qd@KXG0 z6;KGvv31zS_iS9ODQF~Fn7|YmKoDX{H=)p;Iim&XpaIWl^5 z_V^G|y$FtrZAY#$?12B}X$)*~k{HnAEQE3;i0lSR-(15mh{LOb2Xba43j5>!J12!T z-uv=yd>5_u`#oy8tI<$d>ctKQ&u1sI4H3yoo8>N~M%TMFp0DQXZnhu1r}01YB{FP! zrcczVSgPh*Lh!;_-d z`!ruXo5XxcA_<7K3{fVb;N8`d3}f*N{!B#Jkt8(Bk4%ftORVZe?&@PQh_x%M1zIf* z?3RxLS6hwzq|C1SIiblef+qT0L|Xk?>jU~>|C`hg`Q~K=FBO~icTK&HI%dq<^Lfv~ zVZGMn7i$`$X(OvfIR_Xh)ULuB>C`;cce9-+TF%f=okGpZf za%5k_3TA@md1kcF<_5~(RcHnx2w|q63jc|C-+p_I3NI0CC1X&FXfKqGCE#`aq8uwv zhowBC>$w~*Zo}?=AA_c`ADvAdl58_yuc=HMQHiAB9f!Hue!r;Hoqk8?b8^S_W8{q_ z`DQ5}AUz~VY3}CGPUNONTIf_&W~#5IB+E+$w-KKv7%wC?m&<~&2W`Dh%a#i}MRbkE z-T?pFS`@B>`EFJQ^CldH$skn304qC+u&1jr-!`j3pPJ?JYWR=~yoK89BBp|_@7X+e zWH;!r-HV6Mc2-x1P*qSb2ya(WWyAXnj-Y^^X1nX)9P8g4eRRx|;PbT8e;(DSJXr96 z#&wmy8qc7Sp%kR_A)__e_@Q_IL&=rHO5tk9z6O3T%Z~jc0SDH#;L3`QQhmHXfAS!! z-IUTswF1T5ce{49b}+pLA87h4>omHKV5evOan=iu{Anx16uE!tiu`TvjdYQ ze&M2ezt<9ziN}h*P^>D`-YUeezb&(=U4dV}oTe(;Sq5cqGTqDmYska=#}oOtFhspjQH|`o1R(92GVKdUC)g7W`bb! zsq0u?{0t;~6;NdHa)fQ-1PZDgLj|qaV<)Is*$^qqIgv`@I7d2oTJa2oXwL3!S z#{&_)U~<@9S`^>gYHB8()as^UnF_=r%o4mfjS#txX?Q&yV6F8vxNf&*DljxGoM z%hKsQTIRZodB|OI%XzR3WEu@`-**DUXi5$3neOu0Tlp zZ<0yZsW9}o2kv+kC%L$%5IqJUBkVUn8=D!8rt#ICYE%>0L1N%LdE4o>2ioU9tO>aCjk1|w6{liNw+R`Zjc4ND@t z$skp2CoPPjBlU%dz4azEWpC%{G9X>$v)7lWvlkxyCp)@zu`>RA;t7@zOBDX@?i$Rt zUqbkgt4Mf{wFG28`L^d2JuAHpMG#(p(b2N6HCpZscXaE94&aSfG}6(%?K^@7@HFl~ ze^i%>Ym6O!+eYE-DWNKO5MaE@9_z!cx!qEn7zy{CUkp!8n09-hokc1$-Ae&qFFI;= zL*5>s7Y^*iT{oMyX6k-NC0&V!#y_<|i04)f8`b5EH{7ix#KP-dr_{b1Z^G=GBp(_?lGZ(h8a}md= z?1-EvkzUKqa4(HhMvs`JW0cyO_WH~8wVAn+{~-AfZBr80-q_7fhP{sXS-9d7t(J-A#TJwK zF~bbf>V7ZDw#j05v>?Z4$mZQk1Dz8@`MIP!ps$mxrYhJO=WotZK>V|2k3a1?+Y6XQ zag2_uKVL~6O^Mm}e214y!U|Bw&hu8MpP7-*^Q0mWJ=iWB425X9^P2IUrj@1pR;L)t zet0$6Dz&^fsm_gIk<^joTX>@=wtL=!SO=Y9Bdt~n8d0`Q5qY}83>yA4VA@86S$1|! z**O7h?Dju-utPvcOVX(ti4kG6WdjCwkSG!5&h)Q4a-x~j9IzTh+vqbwq>kZ#N3tUj zJ<-nMMz7||YhehOs%Wcr-sUT#d6vs=3zfN}=p*Zth}9vQqpItqf{(r*`&g$%S(F^< z7E@F8y=Xr5Eb!`-HSn;7(Hqq{>zeZeIxwK>P0p^s{@x&=;g9BY-kO;%LVw^B{NNSZ z6VP>4AH~zYeO*|R7SilI za_R1DfOuZB@n?*b%bK0Pj(K|G&!C@Re%q)&sKUP#k*#Vol>kM%!tiEdt?~(oFEWxX zLj)TV>L$uPUJ*+yldx|79TQBD9#yzP_tm7Rv?VKAR~!emQ2YAm4oj+0LM@EhFS){C z=9_CH6@>3`s{hKp^fl5M#4Hm7&4y5ADqt%w3hL?DaH8<@=NYx8`fvv|% zIq|s|t{GFJNb^_X9%f?CKi%=uD6NnY%Fn9aT%L@1#rS$iNf<0oJnFBm16Y8#63i+6 zM;qdM4*XHMN&{wE0boIRO6Ae&V9D&xeP`&1{PIT&YKM)<&>_PYcB=;%w|H{P|5s8%z`%zBV7bdzn$oo88m|a=dm%A%kNN_sf16>;e0n|}6 z*E#i%|47QPAGb(!Y1Ot23c;@P#|9`#C zU_e*k^H_Qr#b-w9VYlF!nJWm}ab`%3)*MSVwd#*Sg@kMOyAy9MEvQ>!v#e+V9>mr* zlUa0@n3KjU2qqoeS+ARNCw10bT8^GKqOdI^SN#%>i4UD42__15aH*B+#mbn{4F??1 zF+Y(C4VGS^V=_#HJfGn`J~v1y{?p6BFH3-Mg-$KPCygwn0Y5Hc6@C;f1mC(V#z1IW zaz9TV>nJJ%YGSglb7ZDrp>Zmfkump&LI<}BbUPjjJWFH>R89zX&oph^4CTIzs654Y z^cH`iMbIoY@w3ZtQw)V~Vc@sMXv9y>x>+19KK~T7x{@ytv;mc~b%~sGyJ1&jJXUsg zuzjBornoO^9#hif-!s%Vrtwc6cIpZ>Wer^zU=ssuyB%HUox$oay_NnFesK9xa8(w* zo-?ivP*K!{L7gGw$2xog%}Mk=z0IC8M@zU~?p`y=QV+zy-Ca3CDt&fshhSQ zZw*u9f4{6vB&5(4)0faR&iuhX-;Vb~qLPKY4zSEA^Bx>YuoHQ$x@gmptnsZaEC4RY zF0UpIMHwKcFu;Q*&2@i5zIW`sGcr0WFar@%ZjNblqbbg?om&Vl1x=I>3ik+ld>iiN zJ|azl&XV@kC=jTUq{C#!s|eeEl-_Jw?d}KEY~2jmi|kTr*5Fq{!wC}GePo_`9t7MUH;(q%xUc5H zk;lfy^K+2$dAdkZ8JN+Li;^0qS;o;^Z*Olk*3bH8i@*OraZ-A!iIri{ZfYBxY+7J< z*W#W-;K<1h0pKIhsKrSR!(%E|U~o}2#DLsz2N!F0&}lrJ+KLoj*Ep{bV=Y_xTIRI= zx~Kn^$f=_;Ypb57EX9wv;W7u|5*_$Fck1{z?A#<4K92aZR`UcL5U|Y z&xfD074LG?mS>vV=o(cXEG+)8r! z^%}Pc@u%y2duQ}x)Koo@#q)T&TESj%4EkKF5UX%;uGP5p%vF66^^l4{oe8JI)tfR6hjIBb{{cK#VB zQyo0Rl{qWoQnrc&9@!q(u3g`pkP`oU;iHJZC&X#lX@`2=2DMJEKfC7Iqbk|cQ>eEZ1&lDGl<7Iba%+9}pafHOc6tkQQE6G7 z#QNR(KzW}e#TD0Y4+pVUIz!G}hOI^q@T#Wnhd*|fuu$ePfGGqiDY+<{`XPbgERPKh z)J8UYBP0j(nF>J>{O#&a=+yH8x<}N0^=4ix&Iv)KDJAcs(&gmRv7$+d$QLAKS}Jh) zJqwU$A+ynw6cR;?V-Z$i;%^6qTd}9wnPWzPC6a0w$S?ojm`O2^78Cs3mN@ z-H>a*!N&~w?~{&cJ-fqAFP6Mo1!ld7##)NnK4+c<0 z)De|LgUtxmP_p5uGfCzLAIJ#wB-)CjJSU@(wzT8((D`;4vfKL{pY4|p&K<9-CyY9; zy`fAga1SYo!ohgFa4B5`YPlwt_v)v?ezn3d8cU*{Ly{XWOGMSrWRb3(@^y*NZH^6v zI>u7LK_=zb`=H;JZkJRLMR|((+iYO3jTILBdyHmc#W$YINm$4h&Ylh{b&=q=C6Rdc zGKbRNZGXkstc+DR3rWy-5U1Vv@ZM!p{bsCSMQ93%KdwW=wRg#BU43k7Nr?I1{V^*p7Om z-3do2)Hu{K9b)G=)~8Oj>=4hLWIkOY<)z0ZZFHFUP=xr~-p_EnnDha))ofdafqblq z;}-Ey-)aal#V7(kZVp&-F*$^dnp+8aD3CUG0+N zVyy0RO=_r@cc*R?p_uHaA-1hGdG*dW2r}NSYZ&LZp?xvHJAE@bu=u~l-J4fP;D7n3 zhi|=Fdt`rWK`x4jhibm-MHbt&e)xBQqPe_=^5=?aQe{}chY!3vVnY0icVbVuiAMsK zzhtj_bq{Rbr!I6=8_o^lE^fpUjxT7dzNw;)Kmwd9v^vjQY`mx#LYW-5QyJSBq3E!m zMln({)$Bz}FR&#>If0|Q9L$9rMM#~LVN_(sF@D@aNgaqBUiW3YFJoYa^s!G)b%$CV zl7sJiF*FyRfCc`?kk)SVqgnt=t**KpxKG6bH(Vfda}!b31)0NP&Vq*a%dA0i&psZJ z;L2?kZ@2yfrs8APM_EFR$IXUWzN1x+Utdi*# zi1?>r0=5c?7jLb3b2J=KPNyrxtZiz;ufw|&wgNApH75%WOj~BiC)-W{i`>_1v#XhFyXkoQ)7!5c_Sa1Vd)Nsz{iBDQ*e(4znyP(7vl&A$fZyr9 z7}P&-MUyZRtKDzh%L2@3Pa16&>NypM&exjr6%@x?8WNn_eQqbD@u7GefvZgh5kEi; zg)!{J z!NV&K`Ik~^d%TfueapnEuo^d#!4ugb{hvsaA^itO1?!TQnLpQMGI{8nXp~a;-dpI< z#C?K~>Jj&Lj_)jD55%4-*x8I5^--AIi zd2LIws>QVPZ#CijV%iLPY+J()un}kQFn)PQWg?K5vK707GZ+>qR%8(w$ZfNbkU^%L z`)(iIo=GOlC@YhbF(RFUa+eex_lEDH@!kAod?+nga}+01qTkGNF-c6}VeC^-kaogh6k4rs&<)XS@w=*v%pH@Wr_UN+j0zg0`%n8g z)0aolMMp0>Qm_OEh6O3raZk3X5n;5+ii&T`Q(kcTGdch+ttcXa3;W|IQQHP5D zojUlqV%W>cG=vL{wjYV8svayzZDlzfqS(qMkSD=TiVz43yYxd+5Tk`dt&mRDoM`;i zpF#I;FDDnBY30b}x-Z^*fqqSYPT-%q3f1#zJ4~;-;n;L`s_-eL#OEMjMss?Jz18JI z^Ap@-u)j#CR*m5@@vj&(rYHP>mG(4&$BU^#KPROA1a=W5LUz$p8}7^%ifOFZ4+LEl zS}4xBYovO`luV^m-`IcNZTu23a}vn0k^4~0zsd92(;ws1H{bGrUWc$;53a!SLa?E` z+xxsFq0*PkL2d_;(&0uot*x?5K3Gu*N4bQAq}8DI1FHgT7UQp?@fW4uWF=jS-Id zQgdNn42q61LJqC)1`TDo&v9AC4}sq8;Zvl9DeZ4!r8(YHj7Crd-KK-z+YFB-*+gc) zPfDM2<5Y87vVPHB@(3z$VxSqDNT}KVQAo$U(RdSyk>V*GpSRgB4baOffq0H^l*B5U?V0D}h7<1g) zo|iDUvL7%}Gwc28FyN7Bf!`R%YGj_}U7N(uDU! ziR%|`6!C?fYHRt|Ma0c&JO!x8xJKcq?AZQXw{ION?wJCvYL|+(&mwJ63LS1U4}4?Fpx5 zqeS%4EusNh&fNE#L<>s7Y|}0UD7A<544l^h82oIk`(iF7l5H{!+u>bP38em4w&1JN z7P6gBhM+PkQ;UUZ{1}ZGeaLST-E9}*)|ssXv-egP@MAIb6+d9{DXiD-VRxQPUQ#y4 z+GsGgsy8op(BH?3UN*BH=HK@?2Dh4HdT5R696^>_-+#zZlQiOb4vFqTFRFT?KPFDk zNF6hsbW-Mv#D#>tbc*~{rMNRfM4&CRYQ>|=*Xg2cC*&OEn-TcplM?oaD}qk;8p$#Y zSGk*z{aRx~LlGv3_-@g&so!P5n}H|`3FvluVuk>p!<#ubyHP!G=wOF&iUz!qL}HwT zMvUn5oLSN*PPz@$DuL?SNvvA8n>X@`d=Gek&4(f5f+w#%c-+q#D_koi?-lpLMrLxQ za!p5nRElY>j)U~kt@}(EeFJ*%>&69X8iwQMxi(L(YANlSEw(tHO2%W52Ff8cR~BG+ zi1>Pj-g~-=*dLwoCd@ss83e$F2#P%kue|7f;KW@KH1-8EtT(eqPj!5?sRk>~g}8wQMG8Q7o^}DppvJ(EzO^xlQaOBpr1yCi<50Md&Tj_2W5c>)zNj zrNjPtP3@`RUZqC2AK5G-fcdD3jWaa4^qh{XWU~4Ct|O_kqtZ`d!A1B;@6hed-O=`d zONLY6oVTn}L^o1|J7kokI))$__xVulKCu^+BvGjKiXJP7-dIYUt?;YRe81|-mM~Mb z!&Fvjec*9u!mAVmDpwvdLIUu%UT8Rf&GccSB8y_Sm4tV@U&FTbMth^NSBk}%lM&}Q zOsy#{r`k7H>t#esRnNRzj8#VK0@wkKYu$-Rl>)}`?OXA`F@p zL=a}`QTlrM8%|T?i0(r^+U&)M&rw7hxW%~FIea)1pvup@6nm~SEU@>DJoK2;kZyR7KFqND_Rxu+sXTr%dhtO>)L;DMQoKy3z6B7*%qvbT*@CQdngA(X;ILI z3sYa^5%+ft!{WbiVd8ODuGC3)SS$(wJ)iEIuqk?HRq(0odW33>j|JQ=q&yfO0yL7b z?RA&YUw3e_q#UKWb1y{e`|$kgjS+FrSA<4U%BfcmD&lH!5Jp zD*xv7?bB)$PhanYQ?$s(lMF1JN0XOnw$uS_8vtC_7Csp(AgfFLsTMA!Q%6OSULj0M zY*(5@;Vm?oZQct`lXhOG&Uma`uhrPI%P~ZXKz6EKy8pt=PF1or&TZ}X#1S)f%!a)V zmlXtvOx>O$XLOii#_B6!j&euGES)33q4BFKBtoTr#-o^9 zB40&cINqnbC{M!8uaBUMh>h+H&@mN^q3&R|{PZZ(!2R;VJn!?{f0TUsZI~ zF;+hbN&(A*fsqTu8$;Hg>a=R#mznfGmwWKtLc6RBz67lE%5=3Hjm=84#T_lIqy`nu z`jb5Vj^`J-`YT)x=0&O!WK6af2aE&AIwA32*Qs1w$Pc0aPgiFd)<)a4>rzT_x69(io2HrMT$dkch}(V!7aGEh2jo7JkR^Rdw-jsImqOgWM=M}wa)8Ym$nDt zWnF^b5e!HtUrg0;Ni;A;zZQKe+XmLUH^({-ao}($@hXc{-HSO4GBy~(k7Z4(bg7 zR&u50<6l__6t29fE7S272bRr6CsEyW4G3HvZS!*?#=07;Vg8y8lK$-wC)G_T!}(Bk zN6G7a{2Lr&2br^5iH;vq>(n{*9g5*)ApS{W^+5^spQWCX2pq7`>teFN zVeZnhxUn9`G+i3|PBs~9HJCl$Pon>Y53a(nwF9N0Gwi?c)=A`8s)iEgviR zjrYXO*W8k|A?W#+=UZq|V?OSBg+6G1p1hL~flvvpw`BsZeVUt6{ieg8E>29yec}T1GcLqxKl<(y&rZQ{245nNk-^ z8Km%eQd%5myXis$d_lHM$HBMw+?jX`uMC{H4m_Lflq^ZTJP`x8$r=%Lq-LTPc^eOB#3LiQgQq!&u@~LAPj%=ElqubGV69ha~Q5M{8{hhzh ztGa757JHnWnouE>^AmZ-mHF~(PLYoP=!xFzuOFs)k=oI8-q)0y@=w0E2tH& zNB0&>22uDpse|JV06)bCV)NdI%tYF9?*h=`IVswr+2<@_X|Posu$n z#4P69eR0Vupi9|hvl+&%5jh3}AF>kC5kgCd(-|+mPyb)&<7{}Eln zl?j8FsV=bZSM45vzMa5%AUN$$g>I;M8jrrpOiDAJiAkS3{8sBwY_D^2ZFa~}f=B$> ze3w!uG+-+A$IDe=YX%knW_So8@fU)87J<~*bCD3oHMr|klasIrtD(&$D*SZM>0y>u z1RE(X>*f4E^6A`ic;$vAb{nUr*=IFZ4E1SY`4{V7EHAU{)i+nu%Jv0Lt2g7xz3rqjlu zd5y^~yTipn4D7rsO8;w99C@zNztF&H7)Gv)OJpsXfxGNVmQIwnO2DG4tEeB4u(L$H zHdICOP!x+#9WeI?q2J3z!E8fS9Ex}C#nilIbRwMp)=d?BJ=go_IpA>W! zuoW_yI5Dv9?CtjwxOhta$T!NAi*@Ql+Qfz{PLS_?Ky}4?070*4?uY`$o$tig5I!aT zCgJJ7Cdf;bowtjFtqnmxHRW3iN-ibw02+{s!{{U(zzI!t189h>9&$oqrdPc2#QexJ z_0}&1QP^yZU~9_He#vxx!edz#!JkyT*adC*@E_YHBIfu_8&!R11q0SV(Pz2w=t4bK zsJYYE`A2tU;V=W&(Xe12jm}y{BT$9*6WP0G;q)gHhWH)s3CmmZCP%0w3*07XNX%}E zbYF6P@%Mf$=kstU>ft*=ugsDb$tJMuW-k4-coyz$eO5?B~@>at+d=b;Ss{%2i58+t|UDCHPvb1Rfb2= zt-2+Yek&(k?Ix@|06b!Qa+^-bOwjtR>v-&aatfU-D}81s9QPJi78K9R;i6mo0W={L z1|PnXedmw-6g0D61wc8%d$9t>!3(O4;4PSt5u+@|ZK~~`1cX(6#?CztHZlvdk zfLTcRNEXsz;7B?@n=%*j_7_}R(WivO!QV*eY6gc!(jB)!>C@$$ucO38lWgk;!g_s>5NEc8Z64lO<)sDlZeZ>B&L zG!w{H&*OGLt^`Bd~+;K+_VYL zK%_`o_%vqJx}M&BV`mZADyjGcw{RzOQdvT-CE%xAA#_9v&+J4S{45WD8K7)tJHjc} zYl^3s(4fO1 zQM;?e!^}jesle(g=fs)AiR8Z6yn`M~R2mQU$-Qd=C{tsGdrZP6arns#eWl=lab0Fk zzfm$DBO>b>jh|0VG4YbORYOo#;d2<;^@*QUi~! zr5Mr|dcp#n>N|W74e_t*|*QeX_xD9f&P7#-xFF20wp$@@?^@LtyogVs2FUqGg}tl74*(W zE>QDO?J~hfqNhQMVM^a_}^<91@k>yxo zUh1d>;$V-p4_$~AMj$jHyDGxAt5qaHB}yrE7AtJ&qxBwI(KOck@7A7NsR|mjmY$^9 z#F}|IoN27@*fSeb{55_DEm#j}0gHA$pbdy2K+8`s`up8R2>hH15u$s%B0iy zk%b(LI@Er-_)fVlDSInzQU2xuHz-DbrYah4ur1!C60lzTb?W$FzD)z%d5d1cjX;mrVyCHk+&QiH zCJ%I;0ErFVa$-QY}+m|c>o zB}(*YMpiH+O=IFPUv1aGS){55d3<^93C-lYYz*eDOcxAd_x%lUx80-N|zg%uF z;tsXe%Nj+w^VYmu#LXjJqzne9vqSS!k;&DE8YevH~5Fub^PZ^<9{ABUDEO80Kw27@(~nVE2mT{dIi%NwaJz-=F-W=v9;R zT02$}ML~`Gy0L{AS$$d#xL(&;H?=eeJm%S4j~&>!me^j%5a1Q2W)wKy0QhD>j^R@|?F zB^jm%S~lzO)ieZjH#=j*5K4D^qcb}_v7ddkiurC^QH6wIP4O~&-AKT<^Cv+zkIrxG z*@|s{PN!RpmB!JF*lSFL%89$QHrNzio5$( z9IRXx>zqnq@$0DInf2#@IBIT2KIcujKD%NM0wq4jcxGGQ<(37i(6wt$_>M~87IUe5 zd5(Murqx{ij5~HVFR86Edt+d$(rF%SOHWfeWdkq5{Rx)PnHIxzxa(Gg+LtN}7XI)9 z_xXmoO?tF#@Pbpn%6bFTc_3>%g=ZtM%*NQ29O&q~toY`yF$lIOo5P zz^EY!OjoGI8=r(fkF95@PF#;%-Q^S+<@!TO1-6$zdd~eGmL49`Zr7uzal%GL>c;$) z=3eQyk}vilNX4}B=P(r1gZ=*I-^NbaaylxijkN*UZPk+B$~h}%-?ZT38>?6{gu=Ro{FWG8`x2FqnRq>-b#t7;y-OVh~uZjCz#YL5(wSnbS&= z{0(&VXAGfA-EyJclp~?mm*=17psIWNkh+>T=H5s_xqGZ~XrNDrb{9N|i9yg&AV)py zH4?eyp03@=A~tz?$lgk6s3;$6zR3zoqC}TzuM0K3(B8dsBnjho(bc$p%!6a(`HjqE zHQCKQ?Dn+V2B+Mu^+UIi{~9cB_}kk!=nd-8BDzh1zfJ&oENb|Ihamcu39+s3A!Bhh zagkSe;LUDD0hjH2wYH&Ma#56^>sMtulx3p z#3X8V+M?#rCLEG%Co6*iW*)`0JU*s{E~58@;~?B^-SWJ+P~cw?8=O#YRkx};!ou^~ zdw!;U_0|(s{;1WYYjeFMUgy?2J7b+Gv7YzV{ON4JOh!+Zw6!!OB1H&H`Ts=B17uvA zyj4=Fje)w=Rsm`wy4-IqhRn%bSu2C6n#jhm>ex(mD;o6bJt5 zZ}0wGAe3I2Yw(7C?of$|F^GgRYvS;4Uw#K#{U}sSrT<(Y!F&jNr9$5ww901MKha>+ z-XtDm=nnCy$C^~#RS=L1ZyB}qD{}kPb=bh>LO+wdxAj%h*J^D^>hgV#EUU=c}fSS$rxl%>JVw2!q4qSkr_)r+$m_osO82Gnw@DV>_A8Hh}+5#_pESQo* zR)U#`*hcdIftX(vOV2v*B4V$`H*ICZso%NVlcSqN{ILcH@v#52L?QTZORMt*3ntg> ziDi=8{QvEKWlE6hLc3pgu>Bf5nRkO6y^+=J|btO@MD3dhmrpwk6yRGGL5sSK~B_Zxy&(V0H#N&Ti{yRrdRa^f1#%}1*Y5UzZMLtK&e}?Y7 zlH2Y;jNf4FHJw?*a=+-Thw237HGkvw~0$yyY7qS}@n94P$@t|_y za|xV&0hoAp8vO}dJ3N@K`L|Dbtx1WEXnpeSCW<`QbqtU3W+j$Cs9vLB*Z#Gq)_zh-Hlv{GjQdv!P9%#|r`^Qve0?=F)BSbe55 z{}rC9o%F2RGJ6iQk17TAWl+iF^s?JON;e_-=|FMES+zW)erE$L_e2tYpPyzSnXG(s zZQfU5Gr!LJid!iW;|7xmu+>$vD_e*E-VCr};noHSqsQ^te(K4bWjlZu_P!jK3dCMf znV?yXZ{pYhK>V9O$Y2P!-*e}6wDa2!Puqs?tK@WH5rBr)7-hrru+@k4ne(fAu#wm=uOMn~%WO@BBL zQ2QHF7@37m#LqZnB+GoW;TI8E=0-G610%P)v|#;2Gm^pll+74B4($LlWPVzYp8sE` z9onmTE$2m8(T6Ii9+bN3DaidJs55*2^rQ3T3}O?><(KpJ4EQl6lEF5woAv#hjNp|( zKkj??+-b92H+;0H)0Gw$U$(~?eDa>JruR{G`v9GiXhJ?$X`&Q%p~Ck}NQrIAR??T~ z{pWF%@@0v%_wxDmq2g2s9DcG5&#kBug9iiAFuwK?_kiGspj&J2=UeQX3jLPgb0_Qh zO$UwyKw#09!ZvJW*$*KvF}hrit)|?9uFADF_77kIdJRhYST92Fsb%T#%zsrv{~pB8 zf(YWJu`Vchg~skKESIh@I&~IJ@bvJJx*&~UPHXe=E}vL>581OQ0zLQ4#6pa`TwD-2 zpudNuEzij9(P;&k6NKOc-tk~6^q$TGLX#2yH~~+0JwBlom^PoE1rE5{(M*#$`iBvR zZB`@hF&ji*7Ef zyZ`Q9hWYD{2F;mboo&`9pj&vGr>fsb(6S!s#9jeeWQ*009AJ8U&Oqji0H zdhAl}%8=Lu%p{$UsKP7n`lProME0`Y?iSJ&`LhORF8kRVeO>3*>t}5AB^|A@UrrUp z^$X;~=B_(kQe@H*C1`RZa{Nd3%3h*t5jkl4txPbSr`t z37OKqq6ELiekX_KQnLq0 znAmgK#p)GgMV#o^>n$^KVWNxyR!5y6`YG^r^YE&)gp|#QUg+^cLOt(iSD;@S4||QC z-%OX11&a}B2a(Y4Ba97QCf%a11D60>FSnx4VIHwz9a_>U;G#mLO)6R)!H}D|0|m&> zc#Kk^2q~dr`S$@*|KEk?c7RZPAPQeewKYkfS-XQ1x?^;_MZ zLZxDKIxj?n@(TZ5s$Y*B@yIva75{g!|2N^}4np`qbwmgIt>%9%?O&j`3+9Uf|Gj^B zT?(zfbkgcfz9|`+`oD_>OyIvktd}L@bv9&{t{4tLX%5ImvvwEizgX%sIt65TKgrV3KS<8edq@F)Yx?K5zP8zL0bS4N$#IxfVOP~ zCJ^C+KXdEhF)k0sJyDd@gr?{R%X+Im7bi5M*VR*T_?t?GD3dt zu2O=ARmHDzvCl-(eY>;kl6w?hieMN|H-S~|6{*$Q)aZn{@Cz1xpGz&|;7SE>0t}h_ zq8pq#uB0V2UUF*q(EZ}YM{T%qHgPd^+=Fc|bPdZTF{yC-7H2E!+aCX7FUqweOpD{} zm%dDrd3v~O?$7dl9Z?6SdmRS!U?!OSn-%J;_5V^wBq=*E03E~@H)9Xj%2OXwTengW z=Jh%|D^qqg6v&!Rb&sZrf*j9ur1pk?QaaSAU`Fm&1U&A9c@fg`S@esClCZS9ozpz8 zRLK%Gy*V1{o*m|75nh7X#NK<{C*Um8m15qqUE8HPC+yxN@JQJYXXC;mkkITXG)R@~ zohH)*3&6*hXsH$g9Ix6j3ojs%Pt6CRFMC`NKQsUH&O*zNtsgFZ3NFU`&@OPF^@ncNm(J+!NVx98C8!67hD1Va#(ca z7`BOw8S1`-A>XHH$jY_q7;ysR(r4&Y1D-H=eeZv5k0wiLDrQhf%^fE))oOtNXr+LT zj*ha_cIm}gJ7(zoQcNLlOH`st4fHPcw5POuI18wQY3irl)}>G&jO9*nJ^Nq4hG&g8 zJ&N{@J~+*7)m=_gDLqPU*XvhxmCg=RqARNCaOwd)3%$Fgbh@Gtou;g$;fW4x)U4fv*1AkcSr@2E3r7al-Yy`P z>TkFqS-J0`ByZ1cVDH>E3l4I;vM5Jm)9r)N)al;(d3h+AkKw6+=aZJDNlb;{mV5E5L|m4W6ZtOuhN(B}zFF0VSkhpN>Y z#(NYhD#auOAE)f4lus%z)9-GpzM1$e-q7k@$6y~_ivrtJG=i6u-tZ^>Cx10g{C2Xy zth!`CDP36(4837If^GjE8g+TIW1|&hrP`>24$l^OsoOwM@I zypz9Zgu+*D=I5{>6|b z#7&xL7-4h(pKS*KI(AQX4Y)#CYQy&@+FUl(upeGN2D&zb59s+0sHvpaW#=lYU$yS{ z4af=u#p!vW%J87mV2zLvbP|x0a^31h3iT*#M`UHeFoN(OEptAzL_QDt1Fo{DviVLv z&KP~2a=xO7eze&uh2$w60a}X4C@2~}W&g>h0{bu==(M*=bO5#2=E)`W?;NuAcBAa% z%O;C9qaKtZ@vv<*X9!J#sf0Fa6+P$^!b0u@BmBX0IO7Hv(Hi8x_$Lp z9*)~n-0Em`f4OJ}6w~7YM(&u?ObhukP)QP;>|pn-oH^`j!P>xLgha&w*KW1%(fi`5 zks5G>8y#w$DXvdLRy?!5Jh*4baa0p^=7n^t^vWNf^q#QQ>r_a86?$qOoLfADs8k7& z<2b$)|CKlb+Q!n48tgprX*gPp1_XF0Bo(P+*?u*k@9w&)k}=&;qUBah!C*DGH;wj! zCcT)r-LBJ=uOsEIM|AS60l;jRO!L|F_n}*bN}_iknH7xlQ|hhI+}#z5%5VoCA}iSR z@EWn)?}q|%JBDFzf0k+Ab1ZoMM`SIXkI-hae_@b@obUL3K-fb9K(VU$jK3~U=srqvHphvug^PbHe zrj`a|a|LrtI7WlfmU=*0GP{^gD}AwAL2Nuresq3Wpb-l1en}5LNrFcH022kRP-Wgw zRx7V?Be?Qwat*up)HvkcVRQm{CRX)!cy z?VC&WkE*g!{)Ry<3S@Uq@y~2^yVipYV(5%n#n(O&Tn$1ooUJ8G#uc^vlewA88v9f zI5GDxZ99(bw!@FcR));K2+Wc^Ix1KOpJVyHVAmnqnlV$W17+IGA96=?{^$D0`F66z zY$361JqsiKTd`U(eSAhs&0eS7IbMPIdX3KY7E^}v@eHE8lt6TYV>@PvnZqGEtoDcQ ztnOk2zTX8Blz3?((?c9Xcm8{v%KAKZ?O6RGWbfa8Ltg#m#lT&0)#!CJzEp9Uf%ts? zVCU8f4HW~jqKyeY+onBa7?KWU1U_7zKbmVJC|kw;3ay6_hFzOhQC36Hm2X-*f1%Z# zu5?7fJhr1Lwzj{l3%xh>lL>6D`6+`%74y}eRRL)ksPn^^J5d3IjI%H~-M`du>2=1! zLFE=Xx6>KZGyVYo2AD+hzud8B4lS!Ua_Szy7bX=-$e$Ot})SQ8%1n0Y`eyz9_O zC9EqyXk$q00DaV%pd0vlimS7bLw^?W%+F|>CpLg~WM?>i-$PQ@h|8dip>r=oisRJMY6KXG>z{2` z6Ds~*zJRsA;TP+E-e(+-pE1I(O0H%I6-_x4Jevv|jBC8Arif)@)I@4y-E@p&^U?g9GScd(OmKP;)gsynL##4 zUB9e4H~$#vuv3Jmm2ckV?5g~V;l|}d*$^_BEP%aU5sIEyJSt55))C)P8TzKvQq5VS zDP=gGqHx&r(IQS`Rf~NA@cl%3!#kw&qeLISL-#LYHoOX5>N&k-@l;zDUJgsZ;z^48 zuQ8&@w`Bw)mFPOE)mw?`VH7=FVJ?A2pg++(|jQDle z{6_~nO_7({@B@S?FKD~cf~{r|9R7pkSbdpJPp}E%~rm}Kt-Q0HY1rAQztJZ&2?7<}^qP4d#Yi|^p$z(fF z>Z3rX3v?hkt9?+U_jV}`9==luVM4Wb^;ZyInPn}L!2*YcNHe^22;5nP8NKjKE;FN` z-_ODqo4payT)tc$UrOe_{CW6Nrv307Q6JjN>UG)X4@DBXpKOxVIq4xD6S^w&Y@)GT zL-W6>*(Ay(*<4Dyv?+exW9a^I2qo8)Wok4DPdEOimn!}8;nsFp61BVt2~IFo&XznqiU%gu^ZZ^zHk;b`9%(M$c2%WB{GWoUG)i}Z&HyKB0ZAEN44(?xN5i9b5cA3!3COX%pII7>ZpLtsx~B!)tG^FYqg zT-CwvDD5ab7V{-bBQk@JSXC|$t{Gaa!o9d5YGk)tZ@!bbQamy(LIE)rxq(1O*_d;I zB#0y)NhGbr`)^%5(5S~1cLnyw>P8p~JJx&?jk+i_8!O^_ML=aH@1}fpi3j(9|+gAOB zDtYbYqKPqGP|vkEhP9*x?L;S7VKbXL*B8lz?dorh&v>5Ha?M7Qv(dRSTJp2RIf_<4 z3KPJLn{wusR4gLyoBJJ4*#h=z|7H)OQd7L_Gw1QgazDXp_pU_D&&S(#RR-OrpxK5v zaCv`Vw@S&kl1q;0XL$`Ta{?jYkt4+`P}Yems@@0 zwn7d~+OqWyK=q{=DBkN3b%IFa09b-7{=`wZ{Ew-CP?UOy+wd8l{~2*j)Eu-n%V8#~HTFApGJ3l44xByt)zFnc zP>a2CIOLvfShPFHyG8s`Q=-qrF`{Y^Sf7q)mUWD6Vo$_bmc4|o%2zh&~C4T<>5rjKUI?M@{-5k3Ss zlTVb+g^S&#N$Z%bv)F+~w&kuN%LYt&cAh{SzeE;n3yTAmQ}HD~yoILEaB91!q~P#y z6cQkXF>tN-c;0kFtiesv&W`L8?<(2g_wAfvgZ<`#tywh!!+_^!X??$u-QmGOW&F$* zd#8s8Z#V5q_@iPr9S*0siZSg(nGUVU_d-ejcU~TfmG+G7t+Q;$g}V1!KZ_qlmpI0W-Pk0WJn?l!Bh3exvidTpl|NKA5s@=l? literal 0 HcmV?d00001 diff --git a/plugins/flytekit-slurm/demo.md b/plugins/flytekit-slurm/demo.md new file mode 100644 index 0000000000..f699185c1e --- /dev/null +++ b/plugins/flytekit-slurm/demo.md @@ -0,0 +1,136 @@ +# Slurm Agent Demo + +In this guide, we will briefly introduce how to setup an environment to test Slurm agent locally without running the backend service (e.g., flyte agent gRPC server). + +## Table of Content +* [Overview]() +* [Setup a Local Environment]() + * []() + * []() + * []() +* [Run a Demo]() +* [Result]() + +## Overview +Slurm agent on the highest level has three core methods to interact with a Slurm cluster: +1. `create`: Use `srun` to run a Slurm job which executes Flyte entrypoints, `pyflyte-fast-execute` and `pyflyte-execute` +2. `get`: Use `scontrol show job ` to monitor the Slurm job state +3. `delete`: Use `scancel ` to cancel the Slurm job (this method is still under test) + +The following figure illustrates the interaction between a client and a remote Slurm cluster. To facilitate file access between two machines, such as flyte task input and output `.pb` files and task modules, we use an Amazon S3 bucket for data storage. + + + +## Setup a Local Environment +Without running the backend service, we can setup an environment to test the Slurm agent locally. The setup is divided into three components: a client (localhost), a remote tiny Slurm cluster, and an Amazon S3 bucket that facilitates communication between the two. + +### Flyte Client (Localhost) +1. Setup a local Flyte cluster following this [official guide](https://docs.flyte.org/en/latest/community/contribute/contribute_code.html#how-to-setup-dev-environment-for-flytekit) +2. Build a virtual environment (e.g., conda) and activate it +3. Clone Flytekit repo, checkout the Slurm agent PR, and install Flytekit +``` +git clone https://github.com/flyteorg/flytekit.git +gh pr checkout 3005 +make setup && pip install -e . +``` +4. Install Flytekit Slurm agent +``` +cd plugins/flytekit-slurm/ +pip install -e . +``` + +### Remote Tiny Slurm Cluster +To simplify the setup process, we follow this [guide](https://github.com/JiangJiaWei1103/Slurm-101) to configure a single-host Slurm cluster, covering `slurmctld` (the central management daemon) and `slurmd` (the compute node daemon). + +After building a Slurm cluster, we need to install Flytekit similar to the Flyte client. +1. Setup a local Flyte cluster following this [official guide](https://docs.flyte.org/en/latest/community/contribute/contribute_code.html#how-to-setup-dev-environment-for-flytekit) +2. Build a conda environment called `dev` and activate it +3. Clone Flytekit repo and install Flytekit +``` +git clone https://github.com/flyteorg/flytekit.git +make setup && pip install -e . +``` + +### Amazon S3 Bucket +1. Click "Create bucket" button tp create a bucket on this [page](https://us-west-2.console.aws.amazon.com/s3/get-started?region=us-west-2&bucketType=general) + * Give the cluster an unique name and leave other settings as default +2. Click the user on the top right corner and go to "Security credentials" +3. Create an access key and save it +4. Configure AWS access on both machines +``` +# ~/.aws/config +[default] +region= + +# ~/.aws/credentials +[default] +aws_access_key_id= +aws_secret_access_key= +``` + +Now, both machines have access to the Amazon S3 bucket. + +## Run a Demo +We use the following script to test the Slurm agent on the client side. + +```python +# demo_slurm.py +import os +from typing import Any, Dict + +from flytekit import kwtypes, task, workflow, ImageSpec +from flytekitplugins.slurm import Slurm, SlurmTask + + +@task( + task_config=Slurm( + srun_conf={ + "partition": "debug", + "job-name": "demo-slurm", + # Remote working directory + "chdir": "" + } + ) +) +def plus_one(x: int) -> int: + return x + 1 + + +@task +def greet(year: int) -> str: + return f"Hello {year}!!!" + + +@workflow +def wf(x: int) -> str: + """Return plus one result now. + + Return slurm job information? + """ + x = plus_one(x=x) + msg = greet(year=x) + + return msg + + +if __name__ == "__main__": + from flytekit.clis.sdk_in_container import pyflyte + from click.testing import CliRunner + + runner = CliRunner() + path = os.path.realpath(__file__) + + # Local run + print(f">>> LOCAL EXEC <<<") + result = runner.invoke(pyflyte.main, ["run", "--raw-output-data-prefix", "", path, "wf", "--x", 2024]) + print(result.output) +``` + +We expect "Hello 2025!!!" as the output on the Flyte client terminal. + +## Result +### Flyte Client + + +### Remote Tiny Slurm Cluster + From e68fda9f071833a4ea5facf350f9ee53be42ced3 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Mon, 30 Dec 2024 22:17:39 +0800 Subject: [PATCH 10/31] docs: Add links and figures Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/README.md | 2 +- plugins/flytekit-slurm/demo.md | 20 ++++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/plugins/flytekit-slurm/README.md b/plugins/flytekit-slurm/README.md index 654f7b0b77..e867c98f56 100644 --- a/plugins/flytekit-slurm/README.md +++ b/plugins/flytekit-slurm/README.md @@ -2,4 +2,4 @@ The Slurm agent is designed to integrate Flyte workflows with Slurm-managed high-performance computing (HPC) clusters, enabling users to leverage Slurm's capability of compute resource allocation, scheduling, and monitoring. -This [guide]() provides a concise overview of the design philosophy behind the Slurm agent and explains how to set up a local environment for testing the agent. +This [guide](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md) provides a concise overview of the design philosophy behind the Slurm agent and explains how to set up a local environment for testing the agent. diff --git a/plugins/flytekit-slurm/demo.md b/plugins/flytekit-slurm/demo.md index f699185c1e..d2ec2b2f42 100644 --- a/plugins/flytekit-slurm/demo.md +++ b/plugins/flytekit-slurm/demo.md @@ -3,13 +3,13 @@ In this guide, we will briefly introduce how to setup an environment to test Slurm agent locally without running the backend service (e.g., flyte agent gRPC server). ## Table of Content -* [Overview]() -* [Setup a Local Environment]() - * []() - * []() - * []() -* [Run a Demo]() -* [Result]() +* [Overview](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#overview) +* [Setup a Local Environment](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#setup-a-local-environment) + * [Flyte Client (Localhost)](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#flyte-client-localhost) + * [Remote Tiny Slurm Cluster](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#remote-tiny-slurm-cluster) + * [Amazon S3 Bucket](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#amazon-s3-bucket) +* [Run a Demo](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#run-a-demo) +* [Result](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#result) ## Overview Slurm agent on the highest level has three core methods to interact with a Slurm cluster: @@ -19,7 +19,7 @@ Slurm agent on the highest level has three core methods to interact with a Slurm The following figure illustrates the interaction between a client and a remote Slurm cluster. To facilitate file access between two machines, such as flyte task input and output `.pb` files and task modules, we use an Amazon S3 bucket for data storage. - +![](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/assets/tmp/overview.png) ## Setup a Local Environment Without running the backend service, we can setup an environment to test the Slurm agent locally. The setup is divided into three components: a client (localhost), a remote tiny Slurm cluster, and an Amazon S3 bucket that facilitates communication between the two. @@ -130,7 +130,7 @@ We expect "Hello 2025!!!" as the output on the Flyte client terminal. ## Result ### Flyte Client - +![](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/assets/tmp/flyte_client.png) ### Remote Tiny Slurm Cluster - +![](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/assets/tmp/remote_tiny_slurm_cluster.png) From 470637ca2219f3cd6fe5a635db5f168e4a27b5e6 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Mon, 30 Dec 2024 22:21:56 +0800 Subject: [PATCH 11/31] docs: Fix commit sha Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/README.md | 2 +- plugins/flytekit-slurm/demo.md | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/plugins/flytekit-slurm/README.md b/plugins/flytekit-slurm/README.md index e867c98f56..cee8a93bde 100644 --- a/plugins/flytekit-slurm/README.md +++ b/plugins/flytekit-slurm/README.md @@ -2,4 +2,4 @@ The Slurm agent is designed to integrate Flyte workflows with Slurm-managed high-performance computing (HPC) clusters, enabling users to leverage Slurm's capability of compute resource allocation, scheduling, and monitoring. -This [guide](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md) provides a concise overview of the design philosophy behind the Slurm agent and explains how to set up a local environment for testing the agent. +This [guide](https://github.com/flyteorg/flytekit/blob/e68fda9f071833a4ea5facf350f9ee53be42ced3/plugins/flytekit-slurm/demo.md) provides a concise overview of the design philosophy behind the Slurm agent and explains how to set up a local environment for testing the agent. diff --git a/plugins/flytekit-slurm/demo.md b/plugins/flytekit-slurm/demo.md index d2ec2b2f42..7f4ba723a1 100644 --- a/plugins/flytekit-slurm/demo.md +++ b/plugins/flytekit-slurm/demo.md @@ -3,13 +3,13 @@ In this guide, we will briefly introduce how to setup an environment to test Slurm agent locally without running the backend service (e.g., flyte agent gRPC server). ## Table of Content -* [Overview](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#overview) -* [Setup a Local Environment](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#setup-a-local-environment) - * [Flyte Client (Localhost)](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#flyte-client-localhost) - * [Remote Tiny Slurm Cluster](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#remote-tiny-slurm-cluster) - * [Amazon S3 Bucket](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#amazon-s3-bucket) -* [Run a Demo](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#run-a-demo) -* [Result](https://github.com/flyteorg/flytekit/blob/e9760a70b26bbab250fd69ec4443bb9b2edddbe3/plugins/flytekit-slurm/demo.md#result) +* [Overview](https://github.com/flyteorg/flytekit/blob/e68fda9f071833a4ea5facf350f9ee53be42ced3/plugins/flytekit-slurm/demo.md#overview) +* [Setup a Local Environment](https://github.com/flyteorg/flytekit/blob/e68fda9f071833a4ea5facf350f9ee53be42ced3/plugins/flytekit-slurm/demo.md#setup-a-local-environment) + * [Flyte Client (Localhost)](https://github.com/flyteorg/flytekit/blob/e68fda9f071833a4ea5facf350f9ee53be42ced3/plugins/flytekit-slurm/demo.md#flyte-client-localhost) + * [Remote Tiny Slurm Cluster](https://github.com/flyteorg/flytekit/blob/e68fda9f071833a4ea5facf350f9ee53be42ced3/plugins/flytekit-slurm/demo.md#remote-tiny-slurm-cluster) + * [Amazon S3 Bucket](https://github.com/flyteorg/flytekit/blob/e68fda9f071833a4ea5facf350f9ee53be42ced3/plugins/flytekit-slurm/demo.md#amazon-s3-bucket) +* [Run a Demo](https://github.com/flyteorg/flytekit/blob/e68fda9f071833a4ea5facf350f9ee53be42ced3/plugins/flytekit-slurm/demo.md#run-a-demo) +* [Result](https://github.com/flyteorg/flytekit/blob/e68fda9f071833a4ea5facf350f9ee53be42ced3/plugins/flytekit-slurm/demo.md#result) ## Overview Slurm agent on the highest level has three core methods to interact with a Slurm cluster: From 1579ab44e769bdd2f19e2e7b1e63d99bf3374bc6 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Mon, 30 Dec 2024 22:25:30 +0800 Subject: [PATCH 12/31] docs: Fix commit sha for demo guide Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/flytekit-slurm/README.md b/plugins/flytekit-slurm/README.md index cee8a93bde..2f3876e135 100644 --- a/plugins/flytekit-slurm/README.md +++ b/plugins/flytekit-slurm/README.md @@ -2,4 +2,4 @@ The Slurm agent is designed to integrate Flyte workflows with Slurm-managed high-performance computing (HPC) clusters, enabling users to leverage Slurm's capability of compute resource allocation, scheduling, and monitoring. -This [guide](https://github.com/flyteorg/flytekit/blob/e68fda9f071833a4ea5facf350f9ee53be42ced3/plugins/flytekit-slurm/demo.md) provides a concise overview of the design philosophy behind the Slurm agent and explains how to set up a local environment for testing the agent. +This [guide](https://github.com/flyteorg/flytekit/blob/470637ca2219f3cd6fe5a635db5f168e4a27b5e6/plugins/flytekit-slurm/demo.md) provides a concise overview of the design philosophy behind the Slurm agent and explains how to set up a local environment for testing the agent. From 0e538f078050ae7cfcfe1f1f76247fe5899dc3d6 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Mon, 30 Dec 2024 22:52:45 +0800 Subject: [PATCH 13/31] docs: Fix links Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/README.md | 2 +- .../assets/{tmp => }/flyte_client.png | Bin plugins/flytekit-slurm/assets/overview_v2.png | Bin 0 -> 183805 bytes .../{tmp => }/remote_tiny_slurm_cluster.png | Bin .../flytekit-slurm/assets/tmp/overview.png | Bin 182003 -> 0 bytes plugins/flytekit-slurm/demo.md | 20 +++++++++--------- 6 files changed, 11 insertions(+), 11 deletions(-) rename plugins/flytekit-slurm/assets/{tmp => }/flyte_client.png (100%) create mode 100644 plugins/flytekit-slurm/assets/overview_v2.png rename plugins/flytekit-slurm/assets/{tmp => }/remote_tiny_slurm_cluster.png (100%) delete mode 100644 plugins/flytekit-slurm/assets/tmp/overview.png diff --git a/plugins/flytekit-slurm/README.md b/plugins/flytekit-slurm/README.md index 2f3876e135..af6596cf28 100644 --- a/plugins/flytekit-slurm/README.md +++ b/plugins/flytekit-slurm/README.md @@ -2,4 +2,4 @@ The Slurm agent is designed to integrate Flyte workflows with Slurm-managed high-performance computing (HPC) clusters, enabling users to leverage Slurm's capability of compute resource allocation, scheduling, and monitoring. -This [guide](https://github.com/flyteorg/flytekit/blob/470637ca2219f3cd6fe5a635db5f168e4a27b5e6/plugins/flytekit-slurm/demo.md) provides a concise overview of the design philosophy behind the Slurm agent and explains how to set up a local environment for testing the agent. +This [guide](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md) provides a concise overview of the design philosophy behind the Slurm agent and explains how to set up a local environment for testing the agent. diff --git a/plugins/flytekit-slurm/assets/tmp/flyte_client.png b/plugins/flytekit-slurm/assets/flyte_client.png similarity index 100% rename from plugins/flytekit-slurm/assets/tmp/flyte_client.png rename to plugins/flytekit-slurm/assets/flyte_client.png diff --git a/plugins/flytekit-slurm/assets/overview_v2.png b/plugins/flytekit-slurm/assets/overview_v2.png new file mode 100644 index 0000000000000000000000000000000000000000..c47caa13044cc4242b7332da8735176fe975fc7d GIT binary patch literal 183805 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

x*+Ae8XuKYL?O)6M;3;HcW>W4!uNFcA7kcKHs~` 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ÏiO7gu5-l#0xaiWT24p*xyzG;rjnq3y?yVp6?f< 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 heE9#pkWjQ++Uj7rpEx9 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


    b{ZNRkSBmlbzL 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%0DH10+$45KX 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 Date: Tue, 31 Dec 2024 21:56:56 +0800 Subject: [PATCH 14/31] feat: Support SSH config in task config Add `ssh_conf` filed to let users specify connection secret Note that reconnection is done in both `get` and `delete`. This is just a temporary workaround. Signed-off-by: JiaWei Jiang --- .../flytekitplugins/slurm/agent.py | 46 ++++++++++--------- .../flytekitplugins/slurm/task.py | 9 ++-- 2 files changed, 30 insertions(+), 25 deletions(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index 101e6c2c85..a666dbf71e 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -1,8 +1,8 @@ -import os from dataclasses import dataclass from typing import Dict, Optional import asyncssh +from asyncssh import SSHClientConnection from flytekit.extend.backend.base_agent import AgentRegistry, AsyncAgentBase, Resource, ResourceMeta from flytekit.extend.backend.utils import convert_to_flyte_phase @@ -10,14 +10,6 @@ from flytekit.models.task import TaskTemplate -# Configure ssh info -class SSHCfg: - host = os.environ["SSH_HOST"] - port = int(os.environ["SSH_PORT"]) - username = os.environ["SSH_USERNAME"] - password = os.environ["SSH_PASSWORD"] - - @dataclass class SlurmJobMetadata(ResourceMeta): """Slurm job metadata. @@ -27,11 +19,16 @@ class SlurmJobMetadata(ResourceMeta): """ job_id: str + ssh_conf: Dict[str, str] class SlurmAgent(AsyncAgentBase): name = "Slurm Agent" + # SSH connection pool for multi-host environment + # _ssh_clients: Dict[str, SSHClientConnection] + _conn: Optional[SSHClientConnection] = None + def __init__(self) -> None: super(SlurmAgent, self).__init__(task_type_name="slurm", metadata_type=SlurmJobMetadata) @@ -42,29 +39,27 @@ async def create( **kwargs, ) -> SlurmJobMetadata: # Retrieve task config + ssh_conf = task_template.custom["ssh_conf"] srun_conf = task_template.custom["srun_conf"] # Construct srun command for Slurm cluster cmd = _get_srun_cmd(srun_conf=srun_conf, entrypoint=" ".join(task_template.container.args)) # Run Slurm job - async with asyncssh.connect( - host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password - ) as conn: - res = await conn.run(cmd, check=True) + if self._conn is None: + await self._connect(ssh_conf) + res = await self._conn.run(cmd, check=True) # Direct return for sbatch # job_id = res.stdout.split()[-1] # Use echo trick for srun job_id = res.stdout.strip() - return SlurmJobMetadata(job_id=job_id) + return SlurmJobMetadata(job_id=job_id, ssh_conf=ssh_conf) async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: - async with asyncssh.connect( - host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password - ) as conn: - res = await conn.run(f"scontrol show job {resource_meta.job_id}", check=True) + await self._connect(resource_meta.ssh_conf) + res = await self._conn.run(f"scontrol show job {resource_meta.job_id}", check=True) # Determine the current flyte phase from Slurm job state job_state = "running" @@ -77,10 +72,17 @@ async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: return Resource(phase=cur_phase) async def delete(self, resource_meta: SlurmJobMetadata, **kwargs) -> None: - async with asyncssh.connect( - host=SSHCfg.host, port=SSHCfg.port, username=SSHCfg.username, password=SSHCfg.password - ) as conn: - _ = await conn.run(f"scancel {resource_meta.job_id}", check=True) + await self._connect(resource_meta.ssh_conf) + _ = await self._conn.run(f"scancel {resource_meta.job_id}", check=True) + + async def _connect(self, ssh_conf: Dict[str, str]) -> None: + """Make an SSH client connection.""" + self._conn = await asyncssh.connect( + host=ssh_conf["host"], + port=int(ssh_conf["port"]), + username=ssh_conf["username"], + password=ssh_conf["password"], + ) def _get_srun_cmd(srun_conf: Dict[str, str], entrypoint: str) -> str: diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index 3dce3ca7a9..4a372b3e3f 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -19,12 +19,17 @@ class Slurm(object): Compared with spark, please refer to https://api-docs.databricks.com/python/pyspark/latest/api/pyspark.SparkContext.html. Args: + ssh_conf: Options of ssh connection. The keys should match what asyncssh.connect method expects: + https://asyncssh.readthedocs.io/en/latest/api.html#asyncssh.connect srun_conf: Options of srun command. """ + ssh_conf: Optional[Dict[str, str]] = None srun_conf: Optional[Dict[str, str]] = None def __post_init__(self): + if self.ssh_conf is None: + self.ssh_conf = {} if self.srun_conf is None: self.srun_conf = {} @@ -52,9 +57,7 @@ def __init__( ) def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: - return { - "srun_conf": self.task_config.srun_conf, - } + return {"ssh_conf": self.task_config.ssh_conf, "srun_conf": self.task_config.srun_conf} def execute(self, **kwargs) -> Any: ctx = FlyteContextManager.current_context() From 9e6d8a686ad0e959464e95af1d28cfd7e9b977d9 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Tue, 31 Dec 2024 22:02:59 +0800 Subject: [PATCH 15/31] docs: Include ssh config in demo example Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/demo.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/plugins/flytekit-slurm/demo.md b/plugins/flytekit-slurm/demo.md index e5ce90e5d3..03d2bba33f 100644 --- a/plugins/flytekit-slurm/demo.md +++ b/plugins/flytekit-slurm/demo.md @@ -84,6 +84,12 @@ from flytekitplugins.slurm import Slurm, SlurmTask @task( task_config=Slurm( + ssh_conf={ + "host": "", + "port": "", + "username": "", + "password": "", + }, srun_conf={ "partition": "debug", "job-name": "demo-slurm", From e07b09a9ded62362564785aa215d85e05ca1d8b5 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Tue, 7 Jan 2025 21:18:07 +0800 Subject: [PATCH 16/31] refactor: Reduce ssh_conf option to slurm_host only For data scientists and MLEs developing flyte wf with Slurm agent, they don't actually need to know ssh connection details. We assume they only need to specify which Slurm cluster to use by hostname. Signed-off-by: JiaWei Jiang --- .../flytekitplugins/slurm/agent.py | 21 +++++++------------ .../flytekitplugins/slurm/task.py | 9 +++----- 2 files changed, 11 insertions(+), 19 deletions(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index a666dbf71e..c147f8e63f 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -19,7 +19,7 @@ class SlurmJobMetadata(ResourceMeta): """ job_id: str - ssh_conf: Dict[str, str] + slurm_host: str class SlurmAgent(AsyncAgentBase): @@ -39,7 +39,7 @@ async def create( **kwargs, ) -> SlurmJobMetadata: # Retrieve task config - ssh_conf = task_template.custom["ssh_conf"] + slurm_host = task_template.custom["slurm_host"] srun_conf = task_template.custom["srun_conf"] # Construct srun command for Slurm cluster @@ -47,7 +47,7 @@ async def create( # Run Slurm job if self._conn is None: - await self._connect(ssh_conf) + await self._connect(slurm_host) res = await self._conn.run(cmd, check=True) # Direct return for sbatch @@ -55,10 +55,10 @@ async def create( # Use echo trick for srun job_id = res.stdout.strip() - return SlurmJobMetadata(job_id=job_id, ssh_conf=ssh_conf) + return SlurmJobMetadata(job_id=job_id, slurm_host=slurm_host) async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: - await self._connect(resource_meta.ssh_conf) + await self._connect(resource_meta.slurm_host) res = await self._conn.run(f"scontrol show job {resource_meta.job_id}", check=True) # Determine the current flyte phase from Slurm job state @@ -72,17 +72,12 @@ async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: return Resource(phase=cur_phase) async def delete(self, resource_meta: SlurmJobMetadata, **kwargs) -> None: - await self._connect(resource_meta.ssh_conf) + await self._connect(resource_meta.slurm_host) _ = await self._conn.run(f"scancel {resource_meta.job_id}", check=True) - async def _connect(self, ssh_conf: Dict[str, str]) -> None: + async def _connect(self, slurm_host: str) -> None: """Make an SSH client connection.""" - self._conn = await asyncssh.connect( - host=ssh_conf["host"], - port=int(ssh_conf["port"]), - username=ssh_conf["username"], - password=ssh_conf["password"], - ) + self._conn = await asyncssh.connect(host=slurm_host) def _get_srun_cmd(srun_conf: Dict[str, str], entrypoint: str) -> str: diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index 4a372b3e3f..e781bedba5 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -19,17 +19,14 @@ class Slurm(object): Compared with spark, please refer to https://api-docs.databricks.com/python/pyspark/latest/api/pyspark.SparkContext.html. Args: - ssh_conf: Options of ssh connection. The keys should match what asyncssh.connect method expects: - https://asyncssh.readthedocs.io/en/latest/api.html#asyncssh.connect + slurm_host: Slurm host name. We assume there's no default Slurm host now. srun_conf: Options of srun command. """ - ssh_conf: Optional[Dict[str, str]] = None + slurm_host: str srun_conf: Optional[Dict[str, str]] = None def __post_init__(self): - if self.ssh_conf is None: - self.ssh_conf = {} if self.srun_conf is None: self.srun_conf = {} @@ -57,7 +54,7 @@ def __init__( ) def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: - return {"ssh_conf": self.task_config.ssh_conf, "srun_conf": self.task_config.srun_conf} + return {"slurm_host": self.task_config.slurm_host, "srun_conf": self.task_config.srun_conf} def execute(self, **kwargs) -> Any: ctx = FlyteContextManager.current_context() From 3a7eb6d5e31a58ea8afa38964a9ef6c3f6ae0f50 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Wed, 8 Jan 2025 00:04:02 +0800 Subject: [PATCH 17/31] feat: Support Slurm agent with ShellTask 1. Write user-defined batch script to a tmp file 2. Transfer the batch script through sftp 3. Construct sbatch command to run on Slurm cluster Signed-off-by: JiaWei Jiang --- flytekit/extras/tasks/shell.py | 29 +++++++--- .../flytekitplugins/slurm/agent.py | 55 +++++++++---------- .../flytekitplugins/slurm/task.py | 43 +++++++-------- 3 files changed, 66 insertions(+), 61 deletions(-) diff --git a/flytekit/extras/tasks/shell.py b/flytekit/extras/tasks/shell.py index 32ae33fcc7..817795fadc 100644 --- a/flytekit/extras/tasks/shell.py +++ b/flytekit/extras/tasks/shell.py @@ -250,7 +250,7 @@ def __init__( if task_config is not None: fully_qualified_class_name = task_config.__module__ + "." + task_config.__class__.__name__ - if not fully_qualified_class_name == "flytekitplugins.pod.task.Pod": + if fully_qualified_class_name not in ["flytekitplugins.pod.task.Pod", "flytekitplugins.slurm.task.Slurm"]: raise ValueError("TaskConfig can either be empty - indicating simple container task or a PodConfig.") # Each instance of NotebookTask instantiates an underlying task with a dummy function that will only be used @@ -259,11 +259,14 @@ def __init__( # errors. # This seem like a hack. We should use a plugin_class that doesn't require a fake-function to make work. plugin_class = TaskPlugins.find_pythontask_plugin(type(task_config)) - self._config_task_instance = plugin_class(task_config=task_config, task_function=_dummy_task_func) - # Rename the internal task so that there are no conflicts at serialization time. Technically these internal - # tasks should not be serialized at all, but we don't currently have a mechanism for skipping Flyte entities - # at serialization time. - self._config_task_instance._name = f"_bash.{name}" + if plugin_class.__name__ == "SlurmTask": + self._config_task_instance = None + else: + self._config_task_instance = plugin_class(task_config=task_config, task_function=_dummy_task_func) + # Rename the internal task so that there are no conflicts at serialization time. Technically these internal + # tasks should not be serialized at all, but we don't currently have a mechanism for skipping Flyte entities + # at serialization time. + self._config_task_instance._name = f"_bash.{name}" self._script = script self._script_file = script_file self._debug = debug @@ -275,7 +278,9 @@ def __init__( super().__init__( name, task_config, - task_type=self._config_task_instance.task_type, + task_type=kwargs.pop("task_type") + if self._config_task_instance is None + else self._config_task_instance.task_type, interface=Interface(inputs=inputs, outputs=outputs), **kwargs, ) @@ -309,7 +314,10 @@ def script_file(self) -> typing.Optional[os.PathLike]: return self._script_file def pre_execute(self, user_params: ExecutionParameters) -> ExecutionParameters: - return self._config_task_instance.pre_execute(user_params) + if self._config_task_instance is None: + return user_params + else: + return self._config_task_instance.pre_execute(user_params) def execute(self, **kwargs) -> typing.Any: """ @@ -367,7 +375,10 @@ def execute(self, **kwargs) -> typing.Any: return None def post_execute(self, user_params: ExecutionParameters, rval: typing.Any) -> typing.Any: - return self._config_task_instance.post_execute(user_params, rval) + if self._config_task_instance is None: + return rval + else: + return self._config_task_instance.post_execute(user_params, rval) class RawShellTask(ShellTask): diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index c147f8e63f..e8a7acd7c5 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -1,3 +1,4 @@ +import tempfile from dataclasses import dataclass from typing import Dict, Optional @@ -29,6 +30,9 @@ class SlurmAgent(AsyncAgentBase): # _ssh_clients: Dict[str, SSHClientConnection] _conn: Optional[SSHClientConnection] = None + # Remote path of the batch script + REMOTE_PATH = "/tmp/demo.slurm" + def __init__(self) -> None: super(SlurmAgent, self).__init__(task_type_name="slurm", metadata_type=SlurmJobMetadata) @@ -39,21 +43,25 @@ async def create( **kwargs, ) -> SlurmJobMetadata: # Retrieve task config + script = task_template.custom["script"] slurm_host = task_template.custom["slurm_host"] - srun_conf = task_template.custom["srun_conf"] + sbatch_conf = task_template.custom["sbatch_conf"] - # Construct srun command for Slurm cluster - cmd = _get_srun_cmd(srun_conf=srun_conf, entrypoint=" ".join(task_template.container.args)) + # Construct sbatch command for Slurm cluster + cmd = _get_sbatch_cmd(sbatch_conf=sbatch_conf, batch_script_path=self.REMOTE_PATH) # Run Slurm job if self._conn is None: await self._connect(slurm_host) + with tempfile.NamedTemporaryFile("w") as f: + f.write(script) + f.flush() + async with self._conn.start_sftp_client() as sftp: + await sftp.put(f.name, self.REMOTE_PATH) res = await self._conn.run(cmd, check=True) - # Direct return for sbatch - # job_id = res.stdout.split()[-1] - # Use echo trick for srun - job_id = res.stdout.strip() + # Retrieve Slurm job id + job_id = res.stdout.split()[-1] return SlurmJobMetadata(job_id=job_id, slurm_host=slurm_host) @@ -68,7 +76,6 @@ async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: job_state = o.split("=")[1].strip().lower() cur_phase = convert_to_flyte_phase(job_state) - # outputs.pb will be loaded without setting outputs object return Resource(phase=cur_phase) async def delete(self, resource_meta: SlurmJobMetadata, **kwargs) -> None: @@ -80,37 +87,27 @@ async def _connect(self, slurm_host: str) -> None: self._conn = await asyncssh.connect(host=slurm_host) -def _get_srun_cmd(srun_conf: Dict[str, str], entrypoint: str) -> str: - """Construct Slurm srun command. +def _get_sbatch_cmd(sbatch_conf: Dict[str, str], batch_script_path: str) -> str: + """Construct Slurm sbatch command. - Flyte entrypoint, pyflyte-execute, is run within a bash shell process. + We assume all main scripts and dependencies are on Slurm cluster. Args: - srun_conf: Options of srun command. - entrypoint: Flyte entrypoint. + sbatch_conf: Options of srun command. + batch_script_path: Absolute path of the batch script. Returns: - cmd: Slurm srun command. + cmd: Slurm sbatch command. """ - # Setup srun options - cmd = ["srun"] - for opt, val in srun_conf.items(): + # Setup sbatch options + cmd = ["sbatch"] + for opt, val in sbatch_conf.items(): cmd.extend([f"--{opt}", str(val)]) - cmd.extend(["bash", "-c"]) + # Assign the batch script to run + cmd.append(batch_script_path) cmd = " ".join(cmd) - cmd += f""" '# Setup environment variables - export PATH=$PATH:/opt/anaconda/anaconda3/bin; - - # Run pyflyte-execute in a pre-built conda env - source activate dev; - {entrypoint}; - - # A trick to show Slurm job id on stdout - echo $SLURM_JOB_ID;' - """ - return cmd diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index e781bedba5..18fbcfafcf 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -3,35 +3,35 @@ """ from dataclasses import dataclass -from typing import Any, Callable, Dict, Optional, Union +from typing import Any, Dict, Optional -from flytekit import FlyteContextManager, PythonFunctionTask from flytekit.configuration import SerializationSettings from flytekit.extend import TaskPlugins from flytekit.extend.backend.base_agent import AsyncAgentExecutorMixin -from flytekit.image_spec import ImageSpec +from flytekit.extras.tasks.shell import ShellTask @dataclass class Slurm(object): - """Configure Slurm settings. Note that we focus on srun command now. + """Configure Slurm settings. Note that we focus on sbatch command now. Compared with spark, please refer to https://api-docs.databricks.com/python/pyspark/latest/api/pyspark.SparkContext.html. Args: slurm_host: Slurm host name. We assume there's no default Slurm host now. - srun_conf: Options of srun command. + sbatch_conf: Options of sbatch command. For available options, please refer to + https://slurm.schedmd.com/sbatch.html. """ slurm_host: str - srun_conf: Optional[Dict[str, str]] = None + sbatch_conf: Optional[Dict[str, str]] = None def __post_init__(self): - if self.srun_conf is None: - self.srun_conf = {} + if self.sbatch_conf is None: + self.sbatch_conf = {} -class SlurmTask(AsyncAgentExecutorMixin, PythonFunctionTask[Slurm]): +class SlurmTask(AsyncAgentExecutorMixin, ShellTask[Slurm]): """ Actual Plugin that transforms the local python code for execution within a slurm context... """ @@ -40,30 +40,27 @@ class SlurmTask(AsyncAgentExecutorMixin, PythonFunctionTask[Slurm]): def __init__( self, + name: str, task_config: Slurm, - task_function: Callable, - container_image: Optional[Union[str, ImageSpec]] = None, + script: Optional[str] = None, + # Support reading a script file in the future + # script_file: Optional[str] = None, **kwargs, ): super(SlurmTask, self).__init__( + name, task_config=task_config, task_type=self._TASK_TYPE, - task_function=task_function, - container_image=container_image, + script=script, **kwargs, ) def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: - return {"slurm_host": self.task_config.slurm_host, "srun_conf": self.task_config.srun_conf} - - def execute(self, **kwargs) -> Any: - ctx = FlyteContextManager.current_context() - if ctx.execution_state and ctx.execution_state.is_local_execution(): - # Mimic the propeller's behavior in local agent test - return AsyncAgentExecutorMixin.execute(self, **kwargs) - else: - # Execute the task with a direct python function call - return PythonFunctionTask.execute(self, **kwargs) + return { + "script": self._script, + "slurm_host": self.task_config.slurm_host, + "sbatch_conf": self.task_config.sbatch_conf, + } TaskPlugins.register_pythontask_plugin(Slurm, SlurmTask) From a815fd9dbe6f885788b101705a292ac71a00291e Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Thu, 9 Jan 2025 23:22:22 +0800 Subject: [PATCH 18/31] feat: Simplify Slurm job submission logic 1. Remove SFTP for batch script transfer * Assume Slurm batch script is present on Slurm cluster 2. Support directly specifying a remote batch script path Signed-off-by: JiaWei Jiang --- .../flytekit-slurm/flytekitplugins/slurm/agent.py | 15 +++------------ .../flytekit-slurm/flytekitplugins/slurm/task.py | 10 +++++----- 2 files changed, 8 insertions(+), 17 deletions(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index e8a7acd7c5..5c0083a615 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -1,4 +1,3 @@ -import tempfile from dataclasses import dataclass from typing import Dict, Optional @@ -30,9 +29,6 @@ class SlurmAgent(AsyncAgentBase): # _ssh_clients: Dict[str, SSHClientConnection] _conn: Optional[SSHClientConnection] = None - # Remote path of the batch script - REMOTE_PATH = "/tmp/demo.slurm" - def __init__(self) -> None: super(SlurmAgent, self).__init__(task_type_name="slurm", metadata_type=SlurmJobMetadata) @@ -43,21 +39,16 @@ async def create( **kwargs, ) -> SlurmJobMetadata: # Retrieve task config - script = task_template.custom["script"] slurm_host = task_template.custom["slurm_host"] + batch_script_path = task_template.custom["batch_script_path"] sbatch_conf = task_template.custom["sbatch_conf"] # Construct sbatch command for Slurm cluster - cmd = _get_sbatch_cmd(sbatch_conf=sbatch_conf, batch_script_path=self.REMOTE_PATH) + cmd = _get_sbatch_cmd(sbatch_conf=sbatch_conf, batch_script_path=batch_script_path) # Run Slurm job if self._conn is None: await self._connect(slurm_host) - with tempfile.NamedTemporaryFile("w") as f: - f.write(script) - f.flush() - async with self._conn.start_sftp_client() as sftp: - await sftp.put(f.name, self.REMOTE_PATH) res = await self._conn.run(cmd, check=True) # Retrieve Slurm job id @@ -94,7 +85,7 @@ def _get_sbatch_cmd(sbatch_conf: Dict[str, str], batch_script_path: str) -> str: Args: sbatch_conf: Options of srun command. - batch_script_path: Absolute path of the batch script. + batch_script_path: Absolute path of the batch script on Slurm cluster. Returns: cmd: Slurm sbatch command. diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index 18fbcfafcf..1f6ac3c374 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -19,11 +19,13 @@ class Slurm(object): Args: slurm_host: Slurm host name. We assume there's no default Slurm host now. + batch_script_path: Absolute path of the batch script on Slurm cluster. sbatch_conf: Options of sbatch command. For available options, please refer to https://slurm.schedmd.com/sbatch.html. """ slurm_host: str + batch_script_path: str sbatch_conf: Optional[Dict[str, str]] = None def __post_init__(self): @@ -42,23 +44,21 @@ def __init__( self, name: str, task_config: Slurm, - script: Optional[str] = None, - # Support reading a script file in the future - # script_file: Optional[str] = None, **kwargs, ): super(SlurmTask, self).__init__( name, task_config=task_config, task_type=self._TASK_TYPE, - script=script, + # Dummy script as a tmp workaround + script="#!/bin/bash", **kwargs, ) def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: return { - "script": self._script, "slurm_host": self.task_config.slurm_host, + "batch_script_path": self.task_config.batch_script_path, "sbatch_conf": self.task_config.sbatch_conf, } From a3ea014241d9e2888b9d3146016269beb408aa87 Mon Sep 17 00:00:00 2001 From: pryce-turner Date: Thu, 9 Jan 2025 16:02:43 -0800 Subject: [PATCH 19/31] Added script args to agent and task Signed-off-by: pryce-turner --- .../flytekit-slurm/flytekitplugins/slurm/agent.py | 15 +++++++++++---- .../flytekit-slurm/flytekitplugins/slurm/task.py | 5 ++++- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index 5c0083a615..0996f566d2 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -1,5 +1,5 @@ from dataclasses import dataclass -from typing import Dict, Optional +from typing import Dict, List, Optional import asyncssh from asyncssh import SSHClientConnection @@ -41,10 +41,11 @@ async def create( # Retrieve task config slurm_host = task_template.custom["slurm_host"] batch_script_path = task_template.custom["batch_script_path"] + batch_script_args = task_template.custom["batch_script_args"] sbatch_conf = task_template.custom["sbatch_conf"] # Construct sbatch command for Slurm cluster - cmd = _get_sbatch_cmd(sbatch_conf=sbatch_conf, batch_script_path=batch_script_path) + cmd = _get_sbatch_cmd(sbatch_conf=sbatch_conf, batch_script_path=batch_script_path, batch_script_args=batch_script_args) # Run Slurm job if self._conn is None: @@ -78,7 +79,7 @@ async def _connect(self, slurm_host: str) -> None: self._conn = await asyncssh.connect(host=slurm_host) -def _get_sbatch_cmd(sbatch_conf: Dict[str, str], batch_script_path: str) -> str: +def _get_sbatch_cmd(sbatch_conf: Dict[str, str], batch_script_path: str, batch_script_args: List[str] = None) -> str: """Construct Slurm sbatch command. We assume all main scripts and dependencies are on Slurm cluster. @@ -86,6 +87,7 @@ def _get_sbatch_cmd(sbatch_conf: Dict[str, str], batch_script_path: str) -> str: Args: sbatch_conf: Options of srun command. batch_script_path: Absolute path of the batch script on Slurm cluster. + batch_script_args: Additional args for the batch script on Slurm cluster. Returns: cmd: Slurm sbatch command. @@ -97,8 +99,13 @@ def _get_sbatch_cmd(sbatch_conf: Dict[str, str], batch_script_path: str) -> str: # Assign the batch script to run cmd.append(batch_script_path) - cmd = " ".join(cmd) + # Add args if present + if batch_script_args: + for arg in batch_script_args: + cmd.append(arg) + + cmd = " ".join(cmd) return cmd diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index 1f6ac3c374..0b521b2128 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -3,7 +3,7 @@ """ from dataclasses import dataclass -from typing import Any, Dict, Optional +from typing import Any, Dict, List, Optional from flytekit.configuration import SerializationSettings from flytekit.extend import TaskPlugins @@ -21,11 +21,13 @@ class Slurm(object): slurm_host: Slurm host name. We assume there's no default Slurm host now. batch_script_path: Absolute path of the batch script on Slurm cluster. sbatch_conf: Options of sbatch command. For available options, please refer to + batch_script_args: Additional args for the batch script on Slurm cluster. https://slurm.schedmd.com/sbatch.html. """ slurm_host: str batch_script_path: str + batch_script_args: Optional[List[str]] = None sbatch_conf: Optional[Dict[str, str]] = None def __post_init__(self): @@ -59,6 +61,7 @@ def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: return { "slurm_host": self.task_config.slurm_host, "batch_script_path": self.task_config.batch_script_path, + "batch_script_args": self.task_config.batch_script_args, "sbatch_conf": self.task_config.sbatch_conf, } From a109bd8a26a189406e2596b3cdbec836f59e0086 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Sat, 11 Jan 2025 21:23:06 +0800 Subject: [PATCH 20/31] Add asyncssh to dependencies Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/flytekit-slurm/setup.py b/plugins/flytekit-slurm/setup.py index 287e7c4fd1..c9e997f4b3 100644 --- a/plugins/flytekit-slurm/setup.py +++ b/plugins/flytekit-slurm/setup.py @@ -4,7 +4,7 @@ microlib_name = f"flytekitplugins-{PLUGIN_NAME}" -plugin_requires = ["flytekit>1.13.8", "aiohttp", "flyteidl>=1.11.0b1"] +plugin_requires = ["flytekit>1.13.8", "flyteidl>=1.11.0b1", "asyncssh"] __version__ = "0.0.0+develop" From e5da6657b6846827bb33a502bf02fbffc6c25acb Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Sat, 11 Jan 2025 23:22:40 +0800 Subject: [PATCH 21/31] docs: Update setup and demo for a basic use case Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/assets/basic.png | Bin 0 -> 125907 bytes .../assets/slurm_basic_result.png | Bin 0 -> 42898 bytes plugins/flytekit-slurm/demo.md | 113 +++++++----------- 3 files changed, 42 insertions(+), 71 deletions(-) create mode 100644 plugins/flytekit-slurm/assets/basic.png create mode 100644 plugins/flytekit-slurm/assets/slurm_basic_result.png diff --git a/plugins/flytekit-slurm/assets/basic.png b/plugins/flytekit-slurm/assets/basic.png new file mode 100644 index 0000000000000000000000000000000000000000..b1ee5d4771d8ca533e94e93d0fa96cb883e08867 GIT binary patch literal 125907 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 z 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 literal 0 HcmV?d00001 diff --git a/plugins/flytekit-slurm/assets/slurm_basic_result.png b/plugins/flytekit-slurm/assets/slurm_basic_result.png new file mode 100644 index 0000000000000000000000000000000000000000..4b15aeea51ef763537939bb71bb713254731b25f GIT binary patch literal 42898 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 U>=1}a`FWru2mVkb^U?2r0jQ030RR91 literal 0 HcmV?d00001 diff --git a/plugins/flytekit-slurm/demo.md b/plugins/flytekit-slurm/demo.md index 03d2bba33f..6e2e94aece 100644 --- a/plugins/flytekit-slurm/demo.md +++ b/plugins/flytekit-slurm/demo.md @@ -1,28 +1,27 @@ # Slurm Agent Demo -In this guide, we will briefly introduce how to setup an environment to test Slurm agent locally without running the backend service (e.g., flyte agent gRPC server). +In this guide, we will briefly introduce how to setup an environment to test Slurm agent locally without running the backend service (e.g., flyte agent gRPC server). It covers both basic and advanced use cases. ## Table of Content * [Overview](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#overview) * [Setup a Local Environment](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#setup-a-local-environment) * [Flyte Client (Localhost)](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#flyte-client-localhost) * [Remote Tiny Slurm Cluster](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#remote-tiny-slurm-cluster) - * [Amazon S3 Bucket](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#amazon-s3-bucket) + * [SSH COnfiguration](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#ssh-configuration) * [Run a Demo](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#run-a-demo) -* [Result](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#result) ## Overview Slurm agent on the highest level has three core methods to interact with a Slurm cluster: -1. `create`: Use `srun` to run a Slurm job which executes Flyte entrypoints, `pyflyte-fast-execute` and `pyflyte-execute` +1. `create`: Use `srun` or `sbatch` to run a job on a Slurm cluster 2. `get`: Use `scontrol show job ` to monitor the Slurm job state 3. `delete`: Use `scancel ` to cancel the Slurm job (this method is still under test) -The following figure illustrates the interaction between a client and a remote Slurm cluster. To facilitate file access between two machines, such as flyte task input and output `.pb` files and task modules, we use an Amazon S3 bucket for data storage. +In the simplest form, Slurm agent supports directly running a batch script using `sbatch` on a Slurm cluster as shown below: -![](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/assets/overview_v2.png) +![](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/assets/basic_arch.png) -## Setup a Local Environment -Without running the backend service, we can setup an environment to test the Slurm agent locally. The setup is divided into three components: a client (localhost), a remote tiny Slurm cluster, and an Amazon S3 bucket that facilitates communication between the two. +## Setup a Local Test Environment +Without running the backend service, we can setup an environment to test Slurm agent locally. The setup consists of two main components: a client (localhost) and a remote tiny Slurm cluster. Then, we need to configure SSH connection to facilitate communication between the two, which relies on `asyncssh`. ### Flyte Client (Localhost) 1. Setup a local Flyte cluster following this [official guide](https://docs.flyte.org/en/latest/community/contribute/contribute_code.html#how-to-setup-dev-environment-for-flytekit) @@ -42,81 +41,59 @@ pip install -e . ### Remote Tiny Slurm Cluster To simplify the setup process, we follow this [guide](https://github.com/JiangJiaWei1103/Slurm-101) to configure a single-host Slurm cluster, covering `slurmctld` (the central management daemon) and `slurmd` (the compute node daemon). -After building a Slurm cluster, we need to install Flytekit similar to the Flyte client. -1. Setup a local Flyte cluster following this [official guide](https://docs.flyte.org/en/latest/community/contribute/contribute_code.html#how-to-setup-dev-environment-for-flytekit) -2. Build a conda environment called `dev` and activate it -3. Clone Flytekit repo and install Flytekit +### SSH Configuration +To facilitate communication between the Flyte client and the remote Slurm cluster, we setup SSH on the Flyte client side as follows: +1. Create a new authentication key pair ``` -git clone https://github.com/flyteorg/flytekit.git -make setup && pip install -e . +ssh-keygen -t rsa -b 4096 ``` - -### Amazon S3 Bucket -1. Click "Create bucket" button tp create a bucket on this [page](https://us-west-2.console.aws.amazon.com/s3/get-started?region=us-west-2&bucketType=general) - * Give the cluster an unique name and leave other settings as default -2. Click the user on the top right corner and go to "Security credentials" -3. Create an access key and save it -4. Configure AWS access on both machines +2. Copy the public key into the remote Slurm cluster ``` -# ~/.aws/config -[default] -region= - -# ~/.aws/credentials -[default] -aws_access_key_id= -aws_secret_access_key= +ssh-copy-id @ +``` +3. Enable key-based authentication +``` +# ~/.ssh/config +Host + HostName + Port + User + IdentityFile ``` - -Now, both machines have access to the Amazon S3 bucket. ## Run a Demo -We use the following script to test the Slurm agent on the client side. +Suppose we have a batch script to run on Slurm cluster: +``` +#!/bin/bash + +echo "Working!" >> ./remote_touch.txt +``` + +We use the following python script to test Slurm agent on the client side. A crucial part of the task configuration is specifying the target Slurm cluster and designating the batch script's path within the cluster. ```python -# demo_slurm.py import os -from typing import Any, Dict -from flytekit import kwtypes, task, workflow, ImageSpec +from flytekit import workflow from flytekitplugins.slurm import Slurm, SlurmTask -@task( +echo_job = SlurmTask( + name="echo-job-name", task_config=Slurm( - ssh_conf={ - "host": "", - "port": "", - "username": "", - "password": "", - }, - srun_conf={ + slurm_host="", + batch_script_path="", + sbatch_conf={ "partition": "debug", - "job-name": "demo-slurm", - # Remote working directory - "chdir": "" + "job-name": "tiny-slurm", } ) ) -def plus_one(x: int) -> int: - return x + 1 - - -@task -def greet(year: int) -> str: - return f"Hello {year}!!!" @workflow -def wf(x: int) -> str: - """Return plus one result now. - - Return slurm job information? - """ - x = plus_one(x=x) - msg = greet(year=x) - - return msg +def wf() -> None: + echo_job() if __name__ == "__main__": @@ -126,17 +103,11 @@ if __name__ == "__main__": runner = CliRunner() path = os.path.realpath(__file__) - # Local run print(f">>> LOCAL EXEC <<<") - result = runner.invoke(pyflyte.main, ["run", "--raw-output-data-prefix", "", path, "wf", "--x", 2024]) + result = runner.invoke(pyflyte.main, ["run", path, "wf"]) print(result.output) ``` -We expect "Hello 2025!!!" as the output on the Flyte client terminal. +After the Slurm job is completed, we can find the following result on Slurm cluster: -## Result -### Flyte Client -![](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/assets/flyte_client.png) - -### Remote Tiny Slurm Cluster -![](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/assets/remote_tiny_slurm_cluster.png) +![](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/assets/slurm_basic_result.png) From 0a3d9f17dc6819a1a63c4c9052a0852b240d4ccc Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Sat, 11 Jan 2025 23:23:47 +0800 Subject: [PATCH 22/31] docs: Update basic arch figure path Signed-off-by: JiaWei Jiang --- .../assets/{basic.png => basic_arch.png} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename plugins/flytekit-slurm/assets/{basic.png => basic_arch.png} (100%) diff --git a/plugins/flytekit-slurm/assets/basic.png b/plugins/flytekit-slurm/assets/basic_arch.png similarity index 100% rename from plugins/flytekit-slurm/assets/basic.png rename to plugins/flytekit-slurm/assets/basic_arch.png From 1b0f6df31b022c27e36d68521422522108fc8c98 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Sat, 11 Jan 2025 23:27:59 +0800 Subject: [PATCH 23/31] docs: Fix typo and hyperlink Signed-off-by: JiaWei Jiang --- plugins/flytekit-slurm/demo.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/flytekit-slurm/demo.md b/plugins/flytekit-slurm/demo.md index 6e2e94aece..a41d94926e 100644 --- a/plugins/flytekit-slurm/demo.md +++ b/plugins/flytekit-slurm/demo.md @@ -4,10 +4,10 @@ In this guide, we will briefly introduce how to setup an environment to test Slu ## Table of Content * [Overview](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#overview) -* [Setup a Local Environment](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#setup-a-local-environment) +* [Setup a Local Test Environment](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#setup-a-local-test-environment) * [Flyte Client (Localhost)](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#flyte-client-localhost) * [Remote Tiny Slurm Cluster](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#remote-tiny-slurm-cluster) - * [SSH COnfiguration](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#ssh-configuration) + * [SSH Configuration](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#ssh-configuration) * [Run a Demo](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#run-a-demo) ## Overview From 26cc20160f91f4544e5a5d0acfdb16e7dfa76869 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Sat, 11 Jan 2025 23:39:56 +0800 Subject: [PATCH 24/31] fix: A tmp workaround to test agent locally without container_image Signed-off-by: JiaWei Jiang --- flytekit/extend/backend/base_agent.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flytekit/extend/backend/base_agent.py b/flytekit/extend/backend/base_agent.py index 16235a68ec..d08685f06d 100644 --- a/flytekit/extend/backend/base_agent.py +++ b/flytekit/extend/backend/base_agent.py @@ -326,7 +326,7 @@ class AsyncAgentExecutorMixin: def execute(self: PythonTask, **kwargs) -> LiteralMap: ctx = FlyteContext.current_context() - ss = ctx.serialization_settings or SerializationSettings(ImageConfig()) + ss = ctx.serialization_settings or SerializationSettings(ImageConfig.auto_default_image()) output_prefix = ctx.file_access.get_random_remote_directory() self.resource_meta = None From 16d953e63842517d6db23991ed1bfeb1b2276a55 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Wed, 15 Jan 2025 00:54:35 +0800 Subject: [PATCH 25/31] feat: Support user-defined batch script content with SlurmShellTask `SlurmTask` and `SlurmShellTask` now share the same agent. Signed-off-by: JiaWei Jiang --- flytekit/extras/tasks/shell.py | 8 +++- .../flytekitplugins/slurm/__init__.py | 2 +- .../flytekitplugins/slurm/agent.py | 28 ++++++++++++- .../flytekitplugins/slurm/task.py | 41 +++++++++++++++++++ 4 files changed, 74 insertions(+), 5 deletions(-) diff --git a/flytekit/extras/tasks/shell.py b/flytekit/extras/tasks/shell.py index 817795fadc..313feb5980 100644 --- a/flytekit/extras/tasks/shell.py +++ b/flytekit/extras/tasks/shell.py @@ -250,7 +250,11 @@ def __init__( if task_config is not None: fully_qualified_class_name = task_config.__module__ + "." + task_config.__class__.__name__ - if fully_qualified_class_name not in ["flytekitplugins.pod.task.Pod", "flytekitplugins.slurm.task.Slurm"]: + if fully_qualified_class_name not in [ + "flytekitplugins.pod.task.Pod", + "flytekitplugins.slurm.task.Slurm", + "flytekitplugins.slurm.task.SlurmShell", + ]: raise ValueError("TaskConfig can either be empty - indicating simple container task or a PodConfig.") # Each instance of NotebookTask instantiates an underlying task with a dummy function that will only be used @@ -259,7 +263,7 @@ def __init__( # errors. # This seem like a hack. We should use a plugin_class that doesn't require a fake-function to make work. plugin_class = TaskPlugins.find_pythontask_plugin(type(task_config)) - if plugin_class.__name__ == "SlurmTask": + if plugin_class.__name__ in ["SlurmTask", "SlurmShellTask"]: self._config_task_instance = None else: self._config_task_instance = plugin_class(task_config=task_config, task_function=_dummy_task_func) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py index 4ceca6e5f0..8789f95992 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py @@ -1,2 +1,2 @@ from .agent import SlurmAgent -from .task import Slurm, SlurmTask +from .task import Slurm, SlurmShell, SlurmShellTask, SlurmTask diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py index 0996f566d2..f74b76046f 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py @@ -1,3 +1,4 @@ +import tempfile from dataclasses import dataclass from typing import Dict, List, Optional @@ -29,6 +30,12 @@ class SlurmAgent(AsyncAgentBase): # _ssh_clients: Dict[str, SSHClientConnection] _conn: Optional[SSHClientConnection] = None + # Tmp remote path of the batch script + REMOTE_PATH = "/tmp/echo_shell.slurm" + + # Dummy script content + DUMMY_SCRIPT = "#!/bin/bash" + def __init__(self) -> None: super(SlurmAgent, self).__init__(task_type_name="slurm", metadata_type=SlurmJobMetadata) @@ -40,16 +47,33 @@ async def create( ) -> SlurmJobMetadata: # Retrieve task config slurm_host = task_template.custom["slurm_host"] - batch_script_path = task_template.custom["batch_script_path"] batch_script_args = task_template.custom["batch_script_args"] sbatch_conf = task_template.custom["sbatch_conf"] # Construct sbatch command for Slurm cluster - cmd = _get_sbatch_cmd(sbatch_conf=sbatch_conf, batch_script_path=batch_script_path, batch_script_args=batch_script_args) + upload_script = False + if "script" in task_template.custom: + script = task_template.custom["script"] + assert script != self.DUMMY_SCRIPT, "Please write the user-defined batch script content." + + batch_script_path = self.REMOTE_PATH + upload_script = True + else: + # Assume the batch script is already on Slurm + batch_script_path = task_template.custom["batch_script_path"] + cmd = _get_sbatch_cmd( + sbatch_conf=sbatch_conf, batch_script_path=batch_script_path, batch_script_args=batch_script_args + ) # Run Slurm job if self._conn is None: await self._connect(slurm_host) + if upload_script: + with tempfile.NamedTemporaryFile("w") as f: + f.write(script) + f.flush() + async with self._conn.start_sftp_client() as sftp: + await sftp.put(f.name, self.REMOTE_PATH) res = await self._conn.run(cmd, check=True) # Retrieve Slurm job id diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index 0b521b2128..772e8bc797 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -35,6 +35,19 @@ def __post_init__(self): self.sbatch_conf = {} +@dataclass +class SlurmShell(object): + """Encounter collision if Slurm is shared btw SlurmTask and SlurmShellTask.""" + + slurm_host: str + batch_script_args: Optional[List[str]] = None + sbatch_conf: Optional[Dict[str, str]] = None + + def __post_init__(self): + if self.sbatch_conf is None: + self.sbatch_conf = {} + + class SlurmTask(AsyncAgentExecutorMixin, ShellTask[Slurm]): """ Actual Plugin that transforms the local python code for execution within a slurm context... @@ -66,4 +79,32 @@ def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: } +class SlurmShellTask(AsyncAgentExecutorMixin, ShellTask[Slurm]): + _TASK_TYPE = "slurm" + + def __init__( + self, + name: str, + task_config: SlurmShell, + script: Optional[str] = None, + **kwargs, + ): + super(SlurmShellTask, self).__init__( + name, + task_config=task_config, + task_type=self._TASK_TYPE, + script=script, + **kwargs, + ) + + def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: + return { + "slurm_host": self.task_config.slurm_host, + "batch_script_args": self.task_config.batch_script_args, + "sbatch_conf": self.task_config.sbatch_conf, + "script": self._script, + } + + TaskPlugins.register_pythontask_plugin(Slurm, SlurmTask) +TaskPlugins.register_pythontask_plugin(SlurmShell, SlurmShellTask) From c743917e50e0e1e35a827b5ef3c53666200550c9 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Wed, 15 Jan 2025 22:40:05 +0800 Subject: [PATCH 26/31] feat: Fall back to PythonTask for naive use cases 1. Inherited from `PythonTask` for cases in which the batch script is already on the Slurm cluster 2. Use a dummy `Interface` as a tmp workaround Signed-off-by: JiaWei Jiang --- .../flytekit-slurm/flytekitplugins/slurm/task.py | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index 772e8bc797..d8993d83b0 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -6,6 +6,8 @@ from typing import Any, Dict, List, Optional from flytekit.configuration import SerializationSettings +from flytekit.core.base_task import PythonTask +from flytekit.core.interface import Interface from flytekit.extend import TaskPlugins from flytekit.extend.backend.base_agent import AsyncAgentExecutorMixin from flytekit.extras.tasks.shell import ShellTask @@ -48,11 +50,7 @@ def __post_init__(self): self.sbatch_conf = {} -class SlurmTask(AsyncAgentExecutorMixin, ShellTask[Slurm]): - """ - Actual Plugin that transforms the local python code for execution within a slurm context... - """ - +class SlurmTask(AsyncAgentExecutorMixin, PythonTask[Slurm]): _TASK_TYPE = "slurm" def __init__( @@ -62,11 +60,11 @@ def __init__( **kwargs, ): super(SlurmTask, self).__init__( - name, - task_config=task_config, task_type=self._TASK_TYPE, - # Dummy script as a tmp workaround - script="#!/bin/bash", + name=name, + task_config=task_config, + # Dummy interface, will support this after discussion + interface=Interface(None, None), **kwargs, ) From e365deeded7e1551542b7d577d96f9b430457725 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Wed, 15 Jan 2025 23:30:35 +0800 Subject: [PATCH 27/31] refactor: Define Slurm as a base task config and extend for remote script Signed-off-by: JiaWei Jiang --- .../flytekitplugins/slurm/__init__.py | 2 +- .../flytekitplugins/slurm/task.py | 30 ++++++++----------- 2 files changed, 13 insertions(+), 19 deletions(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py index 8789f95992..345855380c 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py @@ -1,2 +1,2 @@ from .agent import SlurmAgent -from .task import Slurm, SlurmShell, SlurmShellTask, SlurmTask +from .task import Slurm, SlurmRemoteScript, SlurmShellTask, SlurmTask diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py index d8993d83b0..0892dfd900 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/task.py @@ -21,42 +21,35 @@ class Slurm(object): Args: slurm_host: Slurm host name. We assume there's no default Slurm host now. - batch_script_path: Absolute path of the batch script on Slurm cluster. sbatch_conf: Options of sbatch command. For available options, please refer to - batch_script_args: Additional args for the batch script on Slurm cluster. https://slurm.schedmd.com/sbatch.html. + batch_script_args: Additional args for the batch script on Slurm cluster. """ slurm_host: str - batch_script_path: str - batch_script_args: Optional[List[str]] = None sbatch_conf: Optional[Dict[str, str]] = None + batch_script_args: Optional[List[str]] = None def __post_init__(self): if self.sbatch_conf is None: self.sbatch_conf = {} -@dataclass -class SlurmShell(object): +# See https://stackoverflow.com/questions/51575931/class-inheritance-in-python-3-7-dataclasses +@dataclass(kw_only=True) +class SlurmRemoteScript(Slurm): """Encounter collision if Slurm is shared btw SlurmTask and SlurmShellTask.""" - slurm_host: str - batch_script_args: Optional[List[str]] = None - sbatch_conf: Optional[Dict[str, str]] = None - - def __post_init__(self): - if self.sbatch_conf is None: - self.sbatch_conf = {} + batch_script_path: str -class SlurmTask(AsyncAgentExecutorMixin, PythonTask[Slurm]): +class SlurmTask(AsyncAgentExecutorMixin, PythonTask[SlurmRemoteScript]): _TASK_TYPE = "slurm" def __init__( self, name: str, - task_config: Slurm, + task_config: SlurmRemoteScript, **kwargs, ): super(SlurmTask, self).__init__( @@ -83,7 +76,7 @@ class SlurmShellTask(AsyncAgentExecutorMixin, ShellTask[Slurm]): def __init__( self, name: str, - task_config: SlurmShell, + task_config: Slurm, script: Optional[str] = None, **kwargs, ): @@ -100,9 +93,10 @@ def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: "slurm_host": self.task_config.slurm_host, "batch_script_args": self.task_config.batch_script_args, "sbatch_conf": self.task_config.sbatch_conf, + # User-defined script content "script": self._script, } -TaskPlugins.register_pythontask_plugin(Slurm, SlurmTask) -TaskPlugins.register_pythontask_plugin(SlurmShell, SlurmShellTask) +TaskPlugins.register_pythontask_plugin(SlurmRemoteScript, SlurmTask) +TaskPlugins.register_pythontask_plugin(Slurm, SlurmShellTask) From c1064d48608dd1bb7a82ff95457670d34caa7e76 Mon Sep 17 00:00:00 2001 From: JiaWei Jiang Date: Thu, 16 Jan 2025 20:55:45 +0800 Subject: [PATCH 28/31] feat: Support PythonFunctionTask and reorganize agent structure 1. Add back `PythonFunctionTask` to support running user-defined functions on Slurm 2. Categorize task types into `script/` and `function/` Signed-off-by: JiaWei Jiang --- flytekit/extras/tasks/shell.py | 5 +- .../flytekitplugins/slurm/__init__.py | 6 +- .../flytekitplugins/slurm/function/agent.py | 115 ++++++++++++++++++ .../flytekitplugins/slurm/function/task.py | 72 +++++++++++ .../slurm/{ => script}/agent.py | 8 +- .../slurm/{ => script}/task.py | 0 plugins/flytekit-slurm/setup.py | 8 +- 7 files changed, 203 insertions(+), 11 deletions(-) create mode 100644 plugins/flytekit-slurm/flytekitplugins/slurm/function/agent.py create mode 100644 plugins/flytekit-slurm/flytekitplugins/slurm/function/task.py rename plugins/flytekit-slurm/flytekitplugins/slurm/{ => script}/agent.py (95%) rename plugins/flytekit-slurm/flytekitplugins/slurm/{ => script}/task.py (100%) diff --git a/flytekit/extras/tasks/shell.py b/flytekit/extras/tasks/shell.py index 313feb5980..296666c85e 100644 --- a/flytekit/extras/tasks/shell.py +++ b/flytekit/extras/tasks/shell.py @@ -252,8 +252,7 @@ def __init__( fully_qualified_class_name = task_config.__module__ + "." + task_config.__class__.__name__ if fully_qualified_class_name not in [ "flytekitplugins.pod.task.Pod", - "flytekitplugins.slurm.task.Slurm", - "flytekitplugins.slurm.task.SlurmShell", + "flytekitplugins.slurm.script.task.Slurm", ]: raise ValueError("TaskConfig can either be empty - indicating simple container task or a PodConfig.") @@ -263,7 +262,7 @@ def __init__( # errors. # This seem like a hack. We should use a plugin_class that doesn't require a fake-function to make work. plugin_class = TaskPlugins.find_pythontask_plugin(type(task_config)) - if plugin_class.__name__ in ["SlurmTask", "SlurmShellTask"]: + if plugin_class.__name__ in ["SlurmShellTask"]: self._config_task_instance = None else: self._config_task_instance = plugin_class(task_config=task_config, task_function=_dummy_task_func) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py index 345855380c..75dc5ea9ff 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/__init__.py @@ -1,2 +1,4 @@ -from .agent import SlurmAgent -from .task import Slurm, SlurmRemoteScript, SlurmShellTask, SlurmTask +from .function.agent import SlurmFunctionAgent +from .function.task import SlurmFunction, SlurmFunctionTask +from .script.agent import SlurmScriptAgent +from .script.task import Slurm, SlurmRemoteScript, SlurmShellTask, SlurmTask diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/function/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/function/agent.py new file mode 100644 index 0000000000..fa86d788a1 --- /dev/null +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/function/agent.py @@ -0,0 +1,115 @@ +from dataclasses import dataclass +from typing import Dict, Optional + +import asyncssh +from asyncssh import SSHClientConnection + +from flytekit.extend.backend.base_agent import AgentRegistry, AsyncAgentBase, Resource, ResourceMeta +from flytekit.extend.backend.utils import convert_to_flyte_phase +from flytekit.models.literals import LiteralMap +from flytekit.models.task import TaskTemplate + + +@dataclass +class SlurmJobMetadata(ResourceMeta): + """Slurm job metadata. + + Args: + job_id: Slurm job id. + """ + + job_id: str + slurm_host: str + + +class SlurmFunctionAgent(AsyncAgentBase): + name = "Slurm Function Agent" + + # SSH connection pool for multi-host environment + _conn: Optional[SSHClientConnection] = None + + def __init__(self) -> None: + super(SlurmFunctionAgent, self).__init__(task_type_name="slurm_fn", metadata_type=SlurmJobMetadata) + + async def create( + self, + task_template: TaskTemplate, + inputs: Optional[LiteralMap] = None, + **kwargs, + ) -> SlurmJobMetadata: + # Retrieve task config + slurm_host = task_template.custom["slurm_host"] + srun_conf = task_template.custom["srun_conf"] + + # Construct srun command for Slurm cluster + cmd = _get_srun_cmd(srun_conf=srun_conf, entrypoint=" ".join(task_template.container.args)) + + # Run Slurm job + if self._conn is None: + await self._connect(slurm_host) + res = await self._conn.run(cmd, check=True) + + # Direct return for sbatch + # job_id = res.stdout.split()[-1] + # Use echo trick for srun + job_id = res.stdout.strip() + + return SlurmJobMetadata(job_id=job_id, slurm_host=slurm_host) + + async def get(self, resource_meta: SlurmJobMetadata, **kwargs) -> Resource: + await self._connect(resource_meta.slurm_host) + res = await self._conn.run(f"scontrol show job {resource_meta.job_id}", check=True) + + # Determine the current flyte phase from Slurm job state + job_state = "running" + for o in res.stdout.split(" "): + if "JobState" in o: + job_state = o.split("=")[1].strip().lower() + cur_phase = convert_to_flyte_phase(job_state) + + return Resource(phase=cur_phase) + + async def delete(self, resource_meta: SlurmJobMetadata, **kwargs) -> None: + await self._connect(resource_meta.slurm_host) + _ = await self._conn.run(f"scancel {resource_meta.job_id}", check=True) + + async def _connect(self, slurm_host: str) -> None: + """Make an SSH client connection.""" + self._conn = await asyncssh.connect(host=slurm_host) + + +def _get_srun_cmd(srun_conf: Dict[str, str], entrypoint: str) -> str: + """Construct Slurm srun command. + + Flyte entrypoint, pyflyte-execute, is run within a bash shell process. + + Args: + srun_conf: Options of srun command. + entrypoint: Flyte entrypoint. + + Returns: + cmd: Slurm srun command. + """ + # Setup srun options + cmd = ["srun"] + for opt, val in srun_conf.items(): + cmd.extend([f"--{opt}", str(val)]) + + cmd.extend(["bash", "-c"]) + cmd = " ".join(cmd) + + cmd += f""" '# Setup environment variables + export PATH=$PATH:/opt/anaconda/anaconda3/bin; + + # Run pyflyte-execute in a pre-built conda env + source activate dev; + {entrypoint}; + + # A trick to show Slurm job id on stdout + echo $SLURM_JOB_ID;' + """ + + return cmd + + +AgentRegistry.register(SlurmFunctionAgent()) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/function/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/function/task.py new file mode 100644 index 0000000000..ac55109d75 --- /dev/null +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/function/task.py @@ -0,0 +1,72 @@ +""" +Slurm task. +""" + +from dataclasses import dataclass +from typing import Any, Callable, Dict, Optional, Union + +from flytekit import FlyteContextManager, PythonFunctionTask +from flytekit.configuration import SerializationSettings +from flytekit.extend import TaskPlugins +from flytekit.extend.backend.base_agent import AsyncAgentExecutorMixin +from flytekit.image_spec import ImageSpec + + +@dataclass +class SlurmFunction(object): + """Configure Slurm settings. Note that we focus on srun command now. + + Compared with spark, please refer to https://api-docs.databricks.com/python/pyspark/latest/api/pyspark.SparkContext.html. + + Args: + slurm_host: Slurm host name. We assume there's no default Slurm host now. + srun_conf: Options of srun command. + """ + + slurm_host: str + srun_conf: Optional[Dict[str, str]] = None + + def __post_init__(self): + if self.srun_conf is None: + self.srun_conf = {} + + +class SlurmFunctionTask(AsyncAgentExecutorMixin, PythonFunctionTask[SlurmFunction]): + """ + Actual Plugin that transforms the local python code for execution within a slurm context... + """ + + _TASK_TYPE = "slurm_fn" + + def __init__( + self, + task_config: SlurmFunction, + task_function: Callable, + container_image: Optional[Union[str, ImageSpec]] = None, + **kwargs, + ): + super(SlurmFunctionTask, self).__init__( + task_config=task_config, + task_type=self._TASK_TYPE, + task_function=task_function, + container_image=container_image, + **kwargs, + ) + + def get_custom(self, settings: SerializationSettings) -> Dict[str, Any]: + return { + "slurm_host": self.task_config.slurm_host, + "srun_conf": self.task_config.srun_conf, + } + + def execute(self, **kwargs) -> Any: + ctx = FlyteContextManager.current_context() + if ctx.execution_state and ctx.execution_state.is_local_execution(): + # Mimic the propeller's behavior in local agent test + return AsyncAgentExecutorMixin.execute(self, **kwargs) + else: + # Execute the task with a direct python function call + return PythonFunctionTask.execute(self, **kwargs) + + +TaskPlugins.register_pythontask_plugin(SlurmFunction, SlurmFunctionTask) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/script/agent.py similarity index 95% rename from plugins/flytekit-slurm/flytekitplugins/slurm/agent.py rename to plugins/flytekit-slurm/flytekitplugins/slurm/script/agent.py index f74b76046f..7591cc6b5a 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/script/agent.py @@ -23,8 +23,8 @@ class SlurmJobMetadata(ResourceMeta): slurm_host: str -class SlurmAgent(AsyncAgentBase): - name = "Slurm Agent" +class SlurmScriptAgent(AsyncAgentBase): + name = "Slurm Script Agent" # SSH connection pool for multi-host environment # _ssh_clients: Dict[str, SSHClientConnection] @@ -37,7 +37,7 @@ class SlurmAgent(AsyncAgentBase): DUMMY_SCRIPT = "#!/bin/bash" def __init__(self) -> None: - super(SlurmAgent, self).__init__(task_type_name="slurm", metadata_type=SlurmJobMetadata) + super(SlurmScriptAgent, self).__init__(task_type_name="slurm", metadata_type=SlurmJobMetadata) async def create( self, @@ -133,4 +133,4 @@ def _get_sbatch_cmd(sbatch_conf: Dict[str, str], batch_script_path: str, batch_s return cmd -AgentRegistry.register(SlurmAgent()) +AgentRegistry.register(SlurmScriptAgent()) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/task.py b/plugins/flytekit-slurm/flytekitplugins/slurm/script/task.py similarity index 100% rename from plugins/flytekit-slurm/flytekitplugins/slurm/task.py rename to plugins/flytekit-slurm/flytekitplugins/slurm/script/task.py diff --git a/plugins/flytekit-slurm/setup.py b/plugins/flytekit-slurm/setup.py index c9e997f4b3..2c338db47e 100644 --- a/plugins/flytekit-slurm/setup.py +++ b/plugins/flytekit-slurm/setup.py @@ -13,9 +13,13 @@ version=__version__, author="flyteorg", author_email="admin@flyte.org", - description="Tiny slurm plugin for flytekit", + description="This package holds the Slurm plugins for flytekit", namespace_packages=["flytekitplugins"], - packages=[f"flytekitplugins.{PLUGIN_NAME}"], + packages=[ + f"flytekitplugins.{PLUGIN_NAME}", + f"flytekitplugins.{PLUGIN_NAME}.script", + f"flytekitplugins.{PLUGIN_NAME}.function", + ], install_requires=plugin_requires, license="apache2", python_requires=">=3.9", From 361fbd1e0a91a438c06271aafc12f59eda5683b0 Mon Sep 17 00:00:00 2001 From: JiangJiaWei1103 Date: Thu, 23 Jan 2025 00:22:42 +0800 Subject: [PATCH 29/31] Use poetry virtual env to avoid contamination Signed-off-by: JiangJiaWei1103 --- .../flytekitplugins/slurm/function/agent.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/flytekit-slurm/flytekitplugins/slurm/function/agent.py b/plugins/flytekit-slurm/flytekitplugins/slurm/function/agent.py index fa86d788a1..0f9f0119c2 100644 --- a/plugins/flytekit-slurm/flytekitplugins/slurm/function/agent.py +++ b/plugins/flytekit-slurm/flytekitplugins/slurm/function/agent.py @@ -98,11 +98,11 @@ def _get_srun_cmd(srun_conf: Dict[str, str], entrypoint: str) -> str: cmd.extend(["bash", "-c"]) cmd = " ".join(cmd) - cmd += f""" '# Setup environment variables - export PATH=$PATH:/opt/anaconda/anaconda3/bin; + cmd += f""" '# Activate the pre-built virtual env + . /home/ubuntu/.cache/pypoetry/virtualenvs/demo-poetry-RLi6T71_-py3.12/bin/activate; - # Run pyflyte-execute in a pre-built conda env - source activate dev; + # Run entrypoints in a subshell with virtual env activated, + # including pyflyte-fast-execute and pyflyte-execute {entrypoint}; # A trick to show Slurm job id on stdout From fc3e34e348f55e6188c737dfa9d9604bc755ee88 Mon Sep 17 00:00:00 2001 From: JiangJiaWei1103 Date: Thu, 23 Jan 2025 22:04:59 +0800 Subject: [PATCH 30/31] docs: Complete local test env setup process Signed-off-by: JiangJiaWei1103 --- plugins/flytekit-slurm/demo.md | 61 +++++++++++++++++++++++++++++++--- 1 file changed, 57 insertions(+), 4 deletions(-) diff --git a/plugins/flytekit-slurm/demo.md b/plugins/flytekit-slurm/demo.md index a41d94926e..7e938c3c74 100644 --- a/plugins/flytekit-slurm/demo.md +++ b/plugins/flytekit-slurm/demo.md @@ -1,6 +1,8 @@ # Slurm Agent Demo -In this guide, we will briefly introduce how to setup an environment to test Slurm agent locally without running the backend service (e.g., flyte agent gRPC server). It covers both basic and advanced use cases. +> Note: This document is still a work in progress, focusing on demonstrating the initial implementation. It will be updated and refined frequently until a stable version is ready. + +In this guide, we will briefly introduce how to setup an environment to test Slurm agent locally without running the backend service (e.g., flyte agent gRPC server). It covers both basic and advanced use cases: the basic use case involves executing a shell script directly, while the advanced use case enables running user-defined functions on a Slurm cluster. ## Table of Content * [Overview](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#overview) @@ -8,6 +10,7 @@ In this guide, we will briefly introduce how to setup an environment to test Slu * [Flyte Client (Localhost)](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#flyte-client-localhost) * [Remote Tiny Slurm Cluster](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#remote-tiny-slurm-cluster) * [SSH Configuration](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#ssh-configuration) + * [(Optional) Setup Amazon S3 Bucket](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#optional-setup-amazon-s3-bucket) * [Run a Demo](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#run-a-demo) ## Overview @@ -21,12 +24,13 @@ In the simplest form, Slurm agent supports directly running a batch script using ![](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/assets/basic_arch.png) ## Setup a Local Test Environment -Without running the backend service, we can setup an environment to test Slurm agent locally. The setup consists of two main components: a client (localhost) and a remote tiny Slurm cluster. Then, we need to configure SSH connection to facilitate communication between the two, which relies on `asyncssh`. +Without running the backend service, we can setup an environment to test Slurm agent locally. The setup consists of two main components: a client (localhost) and a remote tiny Slurm cluster. Then, we need to configure SSH connection to facilitate communication between the two, which relies on `asyncssh`. Additionally, an S3-compatible object storage is needed for advanced use cases and we choose [Amazon S3](https://us-west-2.console.aws.amazon.com/s3/get-started?region=us-west-2&bucketType=general) for demonstration here. +> Note: A persistence layer (such as S3-compatible object storage) becomes essential as scenarios grow more complex, especially when integrating heterogeneous task types into a workflow in the future. ### Flyte Client (Localhost) 1. Setup a local Flyte cluster following this [official guide](https://docs.flyte.org/en/latest/community/contribute/contribute_code.html#how-to-setup-dev-environment-for-flytekit) -2. Build a virtual environment (e.g., conda) and activate it -3. Clone Flytekit repo, checkout the Slurm agent PR, and install Flytekit +2. Build a virtual environment (e.g., [poetry](https://python-poetry.org/), [conda](https://docs.conda.io/en/latest/)) and activate it +3. Clone Flytekit [repo](https://github.com/flyteorg/flytekit), checkout the Slurm agent [PR](https://github.com/flyteorg/flytekit/pull/3005/), and install Flytekit ``` git clone https://github.com/flyteorg/flytekit.git gh pr checkout 3005 @@ -41,6 +45,29 @@ pip install -e . ### Remote Tiny Slurm Cluster To simplify the setup process, we follow this [guide](https://github.com/JiangJiaWei1103/Slurm-101) to configure a single-host Slurm cluster, covering `slurmctld` (the central management daemon) and `slurmd` (the compute node daemon). +After building a Slurm cluster, we need to install Flytekit and Slurm agent, just as what we did in the previous [section](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#flyte-client-localhost). +1. Build a virtual environment and activate it (we take `poetry` as an example): +``` +poetry new demo-env + +# For running a subshell with the virtual environment activated +poetry self add poetry-plugin-shell + +# Activate the virtual environment +poetry shell +``` +2. Clone Flytekit [repo](https://github.com/flyteorg/flytekit), checkout the Slurm agent [PR](https://github.com/flyteorg/flytekit/pull/3005/), and install Flytekit +``` +git clone https://github.com/flyteorg/flytekit.git +gh pr checkout 3005 +make setup && pip install -e . +``` +3. Install Flytekit Slurm agent +``` +cd plugins/flytekit-slurm/ +pip install -e . +``` + ### SSH Configuration To facilitate communication between the Flyte client and the remote Slurm cluster, we setup SSH on the Flyte client side as follows: 1. Create a new authentication key pair @@ -60,6 +87,32 @@ Host User IdentityFile ``` +Then, run a sanity check to make sure we can connect to the Slurm cluster: +``` +ssh +``` +Simple and elegant! + +### (Optional) Setup Amazon S3 Bucket +For those interested in advanced use cases, in which user-defined functions are sent and executed on the Slurm cluster, an S3-compitable object storage becomes a necessary component. Following summarizes the setup process: +1. Click "Create bucket" button (marked in yellow) to create a bucket on this [page](https://us-west-2.console.aws.amazon.com/s3/get-started?region=us-west-2&bucketType=general) + * Give the cluster an unique name and leave other settings as default +2. Click the user on the top right corner and go to "Security credentials" +3. Create an access key and save it +4. Configure AWS access on **both** machines +``` +# ~/.aws/config +[default] +region= + +# ~/.aws/credentials +[default] +aws_access_key_id= +aws_secret_access_key= +``` + +Now, both machines have access to the Amazon S3 bucket. Perfect! + ## Run a Demo Suppose we have a batch script to run on Slurm cluster: From 5cd58ecf65346ad9860e89b1078f1006bb910ee6 Mon Sep 17 00:00:00 2001 From: JiangJiaWei1103 Date: Fri, 24 Jan 2025 00:21:53 +0800 Subject: [PATCH 31/31] docs: Add use cases ranging from basic to advanced Signed-off-by: JiangJiaWei1103 --- plugins/flytekit-slurm/demo.md | 124 +++++++++++++++++++++++++++++---- 1 file changed, 111 insertions(+), 13 deletions(-) diff --git a/plugins/flytekit-slurm/demo.md b/plugins/flytekit-slurm/demo.md index 7e938c3c74..170632b19b 100644 --- a/plugins/flytekit-slurm/demo.md +++ b/plugins/flytekit-slurm/demo.md @@ -11,7 +11,10 @@ In this guide, we will briefly introduce how to setup an environment to test Slu * [Remote Tiny Slurm Cluster](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#remote-tiny-slurm-cluster) * [SSH Configuration](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#ssh-configuration) * [(Optional) Setup Amazon S3 Bucket](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#optional-setup-amazon-s3-bucket) -* [Run a Demo](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#run-a-demo) +* [Rich Use Cases](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#rich-use-cases) + * [`SlurmTask`](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#slurmtask) + * [`SlurmShellTask`](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#slurmshelltask) + * [`SlurmFunctionTask`](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#slurmfunctiontask) ## Overview Slurm agent on the highest level has three core methods to interact with a Slurm cluster: @@ -114,28 +117,32 @@ aws_secret_access_key= Now, both machines have access to the Amazon S3 bucket. Perfect! -## Run a Demo -Suppose we have a batch script to run on Slurm cluster: +## Rich Use Cases +In this section, we will demonstrate three supported use cases, ranging from basic to advanced. + +### `SlurmTask` +In the simplest use case, we specify the path to the batch script that is already available on the cluster. + +Suppose we have a batch script as follows: ``` #!/bin/bash -echo "Working!" >> ./remote_touch.txt +echo "Hello AWS slurm, run a Flyte SlurmTask!" >> ./echo_aws.txt ``` -We use the following python script to test Slurm agent on the client side. A crucial part of the task configuration is specifying the target Slurm cluster and designating the batch script's path within the cluster. - +We use the following python script to test Slurm agent on the [client](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/demo.md#flyte-client-localhost): ```python import os from flytekit import workflow -from flytekitplugins.slurm import Slurm, SlurmTask +from flytekitplugins.slurm import SlurmRemoteScript, SlurmTask echo_job = SlurmTask( - name="echo-job-name", - task_config=Slurm( - slurm_host="", - batch_script_path="", + name="", + task_config=SlurmRemoteScript( + slurm_host="", + batch_script_path="", sbatch_conf={ "partition": "debug", "job-name": "tiny-slurm", @@ -161,6 +168,97 @@ if __name__ == "__main__": print(result.output) ``` -After the Slurm job is completed, we can find the following result on Slurm cluster: +### `SlurmShellTask` +`SlurmShellTask` offers users the flexibility to define the content of shell scripts. Below is an example of creating a task that executes a Python script already present on the Slurm cluster: +```python +import os + +from flytekit import workflow +from flytekitplugins.slurm import Slurm, SlurmShellTask + + +shell_task = SlurmShellTask( + name="test-shell", + script="""#!/bin/bash +# We can define sbatch options here, but using sbatch_conf can be more neat +echo "Run a Flyte SlurmShellTask...\n" + +# Run a python script on Slurm +# Activate the virtual env first if any +python3 +""", + task_config=Slurm( + slurm_host="", + sbatch_conf={ + "partition": "debug", + "job-name": "tiny-slurm", + } + ), +) + + +@workflow +def wf() -> None: + shell_task() + + +if __name__ == "__main__": + from flytekit.clis.sdk_in_container import pyflyte + from click.testing import CliRunner + + runner = CliRunner() + path = os.path.realpath(__file__) + + print(f">>> LOCAL EXEC <<<") + result = runner.invoke(pyflyte.main, ["run", path, "wf"]) + print(result.output) +``` + +### `SlurmFunctionTask` +In the most advanced use case, `SlurmFunctionTask` allows users to define custom Python functions that are sent to and executed on the Slurm cluster. Following figure demonstrates the process of running a `SlurmFunctionTask`: + +![](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/assets/overview_v2.png) + +```python +import os + +from flytekit import task, workflow +from flytekitplugins.slurm import SlurmFunction + + +@task( + task_config=SlurmFunction( + slurm_host="", + sbatch_conf={ + "partition": "debug", + "job-name": "tiny-slurm", + } + ) +) +def plus_one(x: int) -> int: + return x + 1 + + +@task +def greet(year: int) -> str: + return f"Hello {year}!!!" + + +@workflow +def wf(x: int) -> str: + x = plus_one(x=x) + msg = greet(year=x) + return msg + + +if __name__ == "__main__": + from flytekit.clis.sdk_in_container import pyflyte + from click.testing import CliRunner + + runner = CliRunner() + path = os.path.realpath(__file__) -![](https://github.com/JiangJiaWei1103/flytekit/blob/slurm-agent-dev/plugins/flytekit-slurm/assets/slurm_basic_result.png) + print(f">>> LOCAL EXEC <<<") + result = runner.invoke(pyflyte.main, ["run", "--raw-output-data-prefix", "", path, "wf", "--x", 2024]) + print(result.output) +```