From 7ed4c30946a239c430c97e9722f842110d9c11f6 Mon Sep 17 00:00:00 2001 From: Alexander Barannikov <32936723+japdubengsub@users.noreply.github.com> Date: Tue, 17 Sep 2024 11:07:33 +0100 Subject: [PATCH 01/19] [OPIK-89] opik configure (#247) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * draft * add config file saving/loading * add more supported python versions * change checking of api key and workspace name * fix config save * use account-details endpoint to check key and get default workspace * remove force parameter * fix using configured api key * use configured workspace name if possible * Draft code fix * Draft fix * Fix lint errors * Fix lint errors * Rename login to configure, skip configure unit tests * Fix lint errors * Update implementation so that config is not updated if all values have been already provided * Update config updating logic * Jacques/add cli command (#259) * Added support for CLI command and force parameter * Updated documentation * Update linters * Fix tests * Fix tests * Fix tests * Fix tests * Fix tests * Small change to run CI (#260) * Small change to run CI * Small change to run CI * Small change to run CI * Update _logging.py --------- Co-authored-by: Aliaksandr Kuzmik <98702584+alexkuzmik@users.noreply.github.com> Co-authored-by: Aliaksandr Kuzmik * Fix configure branch when running local opik is not found * Revert accidental file updating logic for provided workspace * Fix lint errors --------- Co-authored-by: Aliaksandr Kuzmik Co-authored-by: Jacques VerrΓ© Co-authored-by: Aliaksandr Kuzmik <98702584+alexkuzmik@users.noreply.github.com> --- README.md | 26 +- .../evaluate_hallucination_metric.ipynb | 25 +- .../cookbook/evaluate_hallucination_metric.md | 16 +- .../cookbook/evaluate_moderation_metric.ipynb | 25 +- .../cookbook/evaluate_moderation_metric.md | 16 +- .../docs/cookbook/langchain.ipynb | 25 +- .../documentation/docs/cookbook/langchain.md | 16 +- .../docs/cookbook/llama-index.ipynb | 25 +- .../docs/cookbook/llama-index.md | 16 +- .../documentation/docs/cookbook/openai.ipynb | 25 +- .../documentation/docs/cookbook/openai.md | 16 +- .../documentation/docs/cookbook/ragas.ipynb | 25 +- .../documentation/docs/cookbook/ragas.md | 16 +- .../docs/{quickstart.md => quickstart.mdx} | 28 +- .../docs/self-host/local_deployment.md | 12 +- .../python-sdk-docs/requirements.txt | 3 +- .../python-sdk-docs/source/cli.rst | 6 + .../python-sdk-docs/source/conf.py | 1 + .../python-sdk-docs/source/configure.rst | 4 + .../python-sdk-docs/source/index.rst | 23 +- sdks/python/setup.py | 9 +- sdks/python/src/opik/__init__.py | 2 + sdks/python/src/opik/_logging.py | 5 +- sdks/python/src/opik/cli.py | 28 ++ sdks/python/src/opik/config.py | 84 +++- sdks/python/src/opik/exceptions.py | 4 + sdks/python/src/opik/opik_configure.py | 434 ++++++++++++++++++ sdks/python/tests/unit/test_opik_configure.py | 97 ++++ 28 files changed, 751 insertions(+), 261 deletions(-) rename apps/opik-documentation/documentation/docs/{quickstart.md => quickstart.mdx} (68%) create mode 100644 apps/opik-documentation/python-sdk-docs/source/cli.rst create mode 100644 apps/opik-documentation/python-sdk-docs/source/configure.rst create mode 100644 sdks/python/src/opik/opik_configure.py create mode 100644 sdks/python/tests/unit/test_opik_configure.py diff --git a/README.md b/README.md index 56c79ca103..3df1bfcd5d 100644 --- a/README.md +++ b/README.md @@ -64,12 +64,17 @@ The easiest way to get started with Opik is by creating a free Comet account at -If you'd like to self-host Opik, you create a simple local version of Opik using:: +If you'd like to self-host Opik, you can do so by cloning the repository and starting the platform using Docker Compose: ```bash -pip install opik-installer +# Clone the Opik repository +git clone https://github.com/comet-ml/opik.git -opik-server install +# Navigate to the opik/deployment/docker-compose directory +cd opik/deployment/docker-compose + +# Start the Opik platform +docker compose up --detach ``` For more information about the different deployment options, please see our deployment guides: @@ -82,19 +87,24 @@ For more information about the different deployment options, please see our depl ## 🏁 Get Started -If you are logging traces to the Cloud Opik platform, you will need to get your API key from the user menu and set it as the `OPIK_API_KEY` environment variable: +To get started, you will need to first install the Python SDK: ```bash -export OPIK_API_KEY= -export OPIK_WORKSPACE= +pip install opik ``` -If you are using a local Opik instance, you don't need to set the `OPIK_API_KEY` or `OPIK_WORKSPACE` environment variable and isntead set the environment variable `OPIK_BASE_URL` to point to your local Opik instance: +Once the SDK is installed, you can configure it by running the `opik configure` command: ```bash -export OPIK_BASE_URL=http://localhost:5173 +opik configure ``` +This will ensure that your API key is correctly set if you are using the Opik Cloud platform or that the Opik URL is correctly set if you are self-hosting the platform. + +> [!TIP] +> You can also call the `opik.configure(use_local=False)` method from your Python code to configure the SDK. + + You are now ready to start logging traces using the [Python SDK](https://www.comet.com/docs/opik/python-sdk-reference/?utm_source=opik&utm_medium=github&utm_content=sdk_link2). ### πŸ“ Logging Traces diff --git a/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.ipynb b/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.ipynb index 89903f3dd4..9acbde112c 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.ipynb @@ -26,30 +26,9 @@ "metadata": {}, "outputs": [], "source": [ - "import os\n", - "import getpass\n", + "import opik\n", "\n", - "if \"OPIK_API_KEY\" not in os.environ:\n", - " os.environ[\"OPIK_API_KEY\"] = getpass.getpass(\"Opik API Key: \")\n", - "if \"OPIK_WORKSPACE\" not in os.environ:\n", - " os.environ[\"OPIK_WORKSPACE\"] = input(\"Comet workspace (often the same as your username): \")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If you are running the Opik platform locally, simply set:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# import os\n", - "# os.environ[\"OPIK_URL_OVERRIDE\"] = \"http://localhost:5173/api\"" + "opik.configure(use_local=False)" ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.md b/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.md index d6e63d3359..8eedcd58ec 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.md +++ b/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.md @@ -10,21 +10,9 @@ For this guide we will be evaluating the Hallucination metric included in the LL ```python -import os -import getpass - -if "OPIK_API_KEY" not in os.environ: - os.environ["OPIK_API_KEY"] = getpass.getpass("Opik API Key: ") -if "OPIK_WORKSPACE" not in os.environ: - os.environ["OPIK_WORKSPACE"] = input("Comet workspace (often the same as your username): ") -``` - -If you are running the Opik platform locally, simply set: - +import opik -```python -# import os -# os.environ["OPIK_URL_OVERRIDE"] = "http://localhost:5173/api" +opik.configure(use_local=False) ``` ## Preparing our environment diff --git a/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.ipynb b/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.ipynb index 4c63f1de9b..bf3ad3214d 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.ipynb @@ -26,30 +26,9 @@ "metadata": {}, "outputs": [], "source": [ - "import os\n", - "import getpass\n", + "import opik\n", "\n", - "if \"OPIK_API_KEY\" not in os.environ:\n", - " os.environ[\"OPIK_API_KEY\"] = getpass.getpass(\"Opik API Key: \")\n", - "if \"OPIK_WORKSPACE\" not in os.environ:\n", - " os.environ[\"OPIK_WORKSPACE\"] = input(\"Comet workspace (often the same as your username): \")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If you are running the Opik platform locally, simply set:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "#import os\n", - "# os.environ[\"OPIK_URL_OVERRIDE\"] = \"http://localhost:5173/api\"" + "opik.configure(use_local=False)" ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.md b/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.md index 495b79e1f6..d1d62eac31 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.md +++ b/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.md @@ -10,21 +10,9 @@ For this guide we will be evaluating the Moderation metric included in the LLM E ```python -import os -import getpass - -if "OPIK_API_KEY" not in os.environ: - os.environ["OPIK_API_KEY"] = getpass.getpass("Opik API Key: ") -if "OPIK_WORKSPACE" not in os.environ: - os.environ["OPIK_WORKSPACE"] = input("Comet workspace (often the same as your username): ") -``` - -If you are running the Opik platform locally, simply set: - +import opik -```python -#import os -# os.environ["OPIK_URL_OVERRIDE"] = "http://localhost:5173/api" +opik.configure(use_local=False) ``` ## Preparing our environment diff --git a/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb b/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb index 18690d106b..284d679ef4 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb @@ -32,30 +32,9 @@ "metadata": {}, "outputs": [], "source": [ - "import os\n", - "import getpass\n", + "import opik\n", "\n", - "if \"OPIK_API_KEY\" not in os.environ:\n", - " os.environ[\"OPIK_API_KEY\"] = getpass.getpass(\"Opik API Key: \")\n", - "if \"OPIK_WORKSPACE\" not in os.environ:\n", - " os.environ[\"OPIK_WORKSPACE\"] = input(\"Comet workspace (often the same as your username): \")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If you are running the Opik platform locally, simply set:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# import os\n", - "# os.environ[\"OPIK_URL_OVERRIDE\"] = \"http://localhost:5173/api\"" + "opik.configure(use_local=False)" ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/langchain.md b/apps/opik-documentation/documentation/docs/cookbook/langchain.md index 30af79ac90..dd94cf9531 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/langchain.md +++ b/apps/opik-documentation/documentation/docs/cookbook/langchain.md @@ -16,21 +16,9 @@ We will highlight three different parts of the workflow: ```python -import os -import getpass - -if "OPIK_API_KEY" not in os.environ: - os.environ["OPIK_API_KEY"] = getpass.getpass("Opik API Key: ") -if "OPIK_WORKSPACE" not in os.environ: - os.environ["OPIK_WORKSPACE"] = input("Comet workspace (often the same as your username): ") -``` - -If you are running the Opik platform locally, simply set: - +import opik -```python -# import os -# os.environ["OPIK_URL_OVERRIDE"] = "http://localhost:5173/api" +opik.configure(use_local=False) ``` ## Preparing our environment diff --git a/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb b/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb index 5beba6faa7..6b924eaa22 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb @@ -34,30 +34,9 @@ "metadata": {}, "outputs": [], "source": [ - "import os\n", - "import getpass\n", + "import opik\n", "\n", - "if \"OPIK_API_KEY\" not in os.environ:\n", - " os.environ[\"OPIK_API_KEY\"] = getpass.getpass(\"Opik API Key: \")\n", - "if \"OPIK_WORKSPACE\" not in os.environ:\n", - " os.environ[\"OPIK_WORKSPACE\"] = input(\"Comet workspace (often the same as your username): \")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If you are running the Opik platform locally, simply set:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# import os\n", - "# os.environ[\"OPIK_URL_OVERRIDE\"] = \"http://localhost:5173/api\"" + "opik.configure(use_local=False)" ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/llama-index.md b/apps/opik-documentation/documentation/docs/cookbook/llama-index.md index df20f7cb7b..7728a1792e 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/llama-index.md +++ b/apps/opik-documentation/documentation/docs/cookbook/llama-index.md @@ -18,21 +18,9 @@ For this guide we will be downloading the essays from Paul Graham and use them a ```python -import os -import getpass - -if "OPIK_API_KEY" not in os.environ: - os.environ["OPIK_API_KEY"] = getpass.getpass("Opik API Key: ") -if "OPIK_WORKSPACE" not in os.environ: - os.environ["OPIK_WORKSPACE"] = input("Comet workspace (often the same as your username): ") -``` +import opik -If you are running the Opik platform locally, simply set: - - -```python -# import os -# os.environ["OPIK_URL_OVERRIDE"] = "http://localhost:5173/api" +opik.configure(use_local=False) ``` ## Preparing our environment diff --git a/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb b/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb index 0abc5d1c39..531fd2ef8e 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb @@ -26,30 +26,9 @@ "metadata": {}, "outputs": [], "source": [ - "import os\n", - "import getpass\n", + "import opik\n", "\n", - "if \"OPIK_API_KEY\" not in os.environ:\n", - " os.environ[\"OPIK_API_KEY\"] = getpass.getpass(\"Opik API Key: \")\n", - "if \"OPIK_WORKSPACE\" not in os.environ:\n", - " os.environ[\"OPIK_WORKSPACE\"] = input(\"Comet workspace (often the same as your username): \")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If you are running the Opik platform locally, simply set:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# import os\n", - "# os.environ[\"OPIK_URL_OVERRIDE\"] = \"http://localhost:5173/api\"" + "opik.configure(use_local=False)" ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/openai.md b/apps/opik-documentation/documentation/docs/cookbook/openai.md index b9264db5e3..6eece284a1 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/openai.md +++ b/apps/opik-documentation/documentation/docs/cookbook/openai.md @@ -11,21 +11,9 @@ Opik integrates with OpenAI to provide a simple way to log traces for all OpenAI ```python -import os -import getpass - -if "OPIK_API_KEY" not in os.environ: - os.environ["OPIK_API_KEY"] = getpass.getpass("Opik API Key: ") -if "OPIK_WORKSPACE" not in os.environ: - os.environ["OPIK_WORKSPACE"] = input("Comet workspace (often the same as your username): ") -``` +import opik -If you are running the Opik platform locally, simply set: - - -```python -# import os -# os.environ["OPIK_URL_OVERRIDE"] = "http://localhost:5173/api" +opik.configure(use_local=False) ``` ## Preparing our environment diff --git a/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb b/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb index 8a135e32d6..ba9b9bff2e 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb @@ -31,30 +31,9 @@ "metadata": {}, "outputs": [], "source": [ - "import os\n", - "import getpass\n", + "import opik\n", "\n", - "if \"OPIK_API_KEY\" not in os.environ:\n", - " os.environ[\"OPIK_API_KEY\"] = getpass.getpass(\"Opik API Key: \")\n", - "if \"OPIK_WORKSPACE\" not in os.environ:\n", - " os.environ[\"OPIK_WORKSPACE\"] = input(\"Comet workspace (often the same as your username): \")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If you are running the Opik platform locally, simply set:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# import os\n", - "# os.environ[\"OPIK_URL_OVERRIDE\"] = \"http://localhost:5173/api\"" + "opik.configure(use_local=False)" ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/ragas.md b/apps/opik-documentation/documentation/docs/cookbook/ragas.md index 748fd850af..1bf9af55ea 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/ragas.md +++ b/apps/opik-documentation/documentation/docs/cookbook/ragas.md @@ -15,21 +15,9 @@ There are two main ways to use Opik with Ragas: ```python -import os -import getpass - -if "OPIK_API_KEY" not in os.environ: - os.environ["OPIK_API_KEY"] = getpass.getpass("Opik API Key: ") -if "OPIK_WORKSPACE" not in os.environ: - os.environ["OPIK_WORKSPACE"] = input("Comet workspace (often the same as your username): ") -``` +import opik -If you are running the Opik platform locally, simply set: - - -```python -# import os -# os.environ["OPIK_URL_OVERRIDE"] = "http://localhost:5173/api" +opik.configure(use_local=False) ``` ## Preparing our environment diff --git a/apps/opik-documentation/documentation/docs/quickstart.md b/apps/opik-documentation/documentation/docs/quickstart.mdx similarity index 68% rename from apps/opik-documentation/documentation/docs/quickstart.md rename to apps/opik-documentation/documentation/docs/quickstart.mdx index 6cc3cb5f89..42a971a4d2 100644 --- a/apps/opik-documentation/documentation/docs/quickstart.md +++ b/apps/opik-documentation/documentation/docs/quickstart.mdx @@ -3,6 +3,9 @@ sidebar_position: 2 sidebar_label: Quickstart --- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + # Quickstart This guide helps you integrate the Opik platform with your existing LLM application. @@ -19,21 +22,26 @@ pip install opik and configuring the SDK with: + + ```python -import os +import opik -os.environ["OPIK_API_KEY"] = "" -os.environ["OPIK_WORKSPACE"] = "" +opik.configure(use_local=False) ``` - -You can find your Opik API key in the user menu of the [Opik UI](https://www.comet.com/opik/), the workspace name is the first item of the breadcrumbs and often the same as your username. - - :::tip -If you are self-hosting the platform, you don't need to set the `OPIK_API_KEY` and `OPIK_WORKSPACE` environment variables. Instead simply set: - - export OPIK_URL_OVERRIDE="http://localhost:5173/api" +If you are self-hosting the platform, simply set the `use_local` flag to True in the `opik.configure` method. +::: + + +```bash +opik configure +``` +:::tip +If you are self-hosting the platform, simply use the `opik configure --use_local` command. ::: + + ## Integrating with your LLM application diff --git a/apps/opik-documentation/documentation/docs/self-host/local_deployment.md b/apps/opik-documentation/documentation/docs/self-host/local_deployment.md index 73b678ef47..8197596c3f 100644 --- a/apps/opik-documentation/documentation/docs/self-host/local_deployment.md +++ b/apps/opik-documentation/documentation/docs/self-host/local_deployment.md @@ -34,19 +34,23 @@ docker compose up --detach Opik will now be available at `http://localhost:5173`. :::tip -You will need to make sure that the Opik Python SDK is configured to point to the Opik server you just started. For this, make sure you set the environment variable `OPIK_BASE_URL` to the URL of the Opik server: +In order to use the Opik Python SDK with your local Opik instance, you will need to run: ```bash -export OPIK_BASE_URL=http://localhost:5173/api +pip install opik + +opik configure --use_local ``` or in python: ```python -import os +import opik -os.environ["OPIK_BASE_URL"] = "http://localhost:5173/api" +opik.configure(use_local=True) ``` + +This will create a `~/.opik.config` file that will store the URL of your local Opik instance. ::: All the data logged to the Opik platform will be stored in the `~/opik` directory, which means that you can start and stop the Opik platform without losing any data. diff --git a/apps/opik-documentation/python-sdk-docs/requirements.txt b/apps/opik-documentation/python-sdk-docs/requirements.txt index ca1e0e7ee0..cfe4c10d43 100644 --- a/apps/opik-documentation/python-sdk-docs/requirements.txt +++ b/apps/opik-documentation/python-sdk-docs/requirements.txt @@ -1,3 +1,4 @@ sphinx-autobuild sphinx -furo \ No newline at end of file +furo +sphinx-click diff --git a/apps/opik-documentation/python-sdk-docs/source/cli.rst b/apps/opik-documentation/python-sdk-docs/source/cli.rst new file mode 100644 index 0000000000..4c50ac62db --- /dev/null +++ b/apps/opik-documentation/python-sdk-docs/source/cli.rst @@ -0,0 +1,6 @@ +CLI Reference +============= + +.. click:: opik.cli:cli + :prog: opik + :nested: full diff --git a/apps/opik-documentation/python-sdk-docs/source/conf.py b/apps/opik-documentation/python-sdk-docs/source/conf.py index f25f1564a4..125a8d3c85 100644 --- a/apps/opik-documentation/python-sdk-docs/source/conf.py +++ b/apps/opik-documentation/python-sdk-docs/source/conf.py @@ -24,6 +24,7 @@ "sphinx.ext.intersphinx", "sphinx.ext.mathjax", "sphinx.ext.todo", + "sphinx_click.ext", ] # -- Options for Autodoc -------------------------------------------------------------- diff --git a/apps/opik-documentation/python-sdk-docs/source/configure.rst b/apps/opik-documentation/python-sdk-docs/source/configure.rst new file mode 100644 index 0000000000..68525f5345 --- /dev/null +++ b/apps/opik-documentation/python-sdk-docs/source/configure.rst @@ -0,0 +1,4 @@ +configure +========= + +.. autofunction:: opik.configure diff --git a/apps/opik-documentation/python-sdk-docs/source/index.rst b/apps/opik-documentation/python-sdk-docs/source/index.rst index 694a405dc5..188eb52803 100644 --- a/apps/opik-documentation/python-sdk-docs/source/index.rst +++ b/apps/opik-documentation/python-sdk-docs/source/index.rst @@ -23,15 +23,19 @@ To get start with the package, you can install it using pip:: pip install opik -To finish configuring the Opik Python SDK, you will need to set the environment variables: +To finish configuring the Opik Python SDK, we recommend running the `opik configure` command from the command line: -- If you are using the Comet managed Opik platform: +.. code-block:: bash - - `OPIK_API_KEY`: The API key to the Opik platform. - - `OPIK_WORKSPACE`: The workspace to log traces to, this is often the same as your Opik username. -- If you are using a self-hosted Opik platform: + opik configure - - `OPIK_BASE_URL`: The base URL of the Opik platform. +You can also call the configure function from the Python SDK: + +.. code-block:: python + + import opik + + opik.configure(use_local=False) ============= Using the SDK @@ -139,6 +143,7 @@ You can learn more about the `opik` python SDK in the following sections: Opik track + configure opik_context/index .. toctree:: @@ -176,6 +181,12 @@ You can learn more about the `opik` python SDK in the following sections: Objects/UsageDict.rst +.. toctree:: + :maxdepth: 1 + :caption: Command Line Interface + + cli + .. toctree:: :caption: Documentation Guides :maxdepth: 1 diff --git a/sdks/python/setup.py b/sdks/python/setup.py index 1fbbcc6a40..906d051cf6 100644 --- a/sdks/python/setup.py +++ b/sdks/python/setup.py @@ -27,6 +27,8 @@ "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", ], description="Comet tool for logging and evaluating LLM traces", long_description=open( @@ -34,20 +36,21 @@ ).read(), long_description_content_type="text/markdown", install_requires=[ + "click", "httpx<1.0.0", "langchain_community<1.0.0", "langchain_openai<1.0.0", "levenshtein~=0.25.1", "openai<2.0.0", + "opik-installer", "pandas>=2.0.0,<3.0.0", "pydantic-settings>=2.0.0,<3.0.0", "pydantic>=2.0.0,<3.0.0", "pytest", + "rich", "tqdm", + "questionary", "uuid7<1.0.0", - "rich", - "click", - "opik-installer", ], entry_points={ "pytest11": [ diff --git a/sdks/python/src/opik/__init__.py b/sdks/python/src/opik/__init__.py index 9845bcc657..6bf87f4256 100644 --- a/sdks/python/src/opik/__init__.py +++ b/sdks/python/src/opik/__init__.py @@ -5,6 +5,7 @@ from .api_objects.dataset.dataset_item import DatasetItem from .api_objects.dataset import Dataset from . import _logging +from .opik_configure import configure from . import package_version from .plugins.pytest.decorator import llm_unit from .evaluation import evaluate @@ -23,4 +24,5 @@ "DatasetItem", "Dataset", "llm_unit", + "configure", ] diff --git a/sdks/python/src/opik/_logging.py b/sdks/python/src/opik/_logging.py index a49c638a59..97870b272d 100644 --- a/sdks/python/src/opik/_logging.py +++ b/sdks/python/src/opik/_logging.py @@ -2,7 +2,6 @@ import functools import logging -import sys from . import config @@ -13,9 +12,11 @@ def setup() -> None: opik_root_logger = logging.getLogger("opik") + opik_root_logger.propagate = False + config_ = config.OpikConfig() - console_handler = logging.StreamHandler(sys.stdout) + console_handler = logging.StreamHandler() console_level = config_.console_logging_level console_handler.setLevel(console_level) console_handler.setFormatter(logging.Formatter(CONSOLE_MSG_FORMAT)) diff --git a/sdks/python/src/opik/cli.py b/sdks/python/src/opik/cli.py index b51509c4b6..95b20cbe66 100644 --- a/sdks/python/src/opik/cli.py +++ b/sdks/python/src/opik/cli.py @@ -3,6 +3,9 @@ from importlib import metadata import click +import questionary + +from . import opik_configure __version__: str = "0.0.0+dev" if __package__: @@ -17,5 +20,30 @@ def cli() -> None: """CLI tool for Opik.""" +@cli.command(context_settings={"ignore_unknown_options": True}) +@click.option( + "--use_local", + is_flag=True, + default=False, + help="Flag to configure the Opik Python SDK for local Opik deployments.", +) +def configure(use_local: bool) -> None: + """ + Create a configuration file for the Opik Python SDK, if a configuration file already exists, it will be overwritten. This is also available as a function in the Python SDK. + """ + if use_local: + opik_configure.configure(use_local=True, force=True) + else: + deployment_type_choice = questionary.select( + "Which Opik deployment do you want to log your traces to?", + choices=["Opik Cloud", "Local deployment"], + ).unsafe_ask() + + if deployment_type_choice == "Opik Cloud": + opik_configure.configure(use_local=False, force=True) + else: + opik_configure.configure(use_local=True, force=True) + + if __name__ == "__main__": cli() diff --git a/sdks/python/src/opik/config.py b/sdks/python/src/opik/config.py index 6549e7c736..dc82c1f108 100644 --- a/sdks/python/src/opik/config.py +++ b/sdks/python/src/opik/config.py @@ -1,11 +1,58 @@ -from typing import Tuple, Any, Type, Dict, Literal, Optional +import configparser +import logging +import pathlib +from typing import Any, Dict, Final, List, Literal, Optional, Tuple, Type, Union import pydantic_settings +from pydantic_settings import BaseSettings, InitSettingsSource +from pydantic_settings.sources import ConfigFileSourceMixin from . import dict_utils +PathType = Union[ + pathlib.Path, + str, + List[Union[pathlib.Path, str]], + Tuple[Union[pathlib.Path, str], ...], +] + _SESSION_CACHE_DICT: Dict[str, Any] = {} +OPIK_BASE_URL_CLOUD: Final[str] = "https://www.comet.com/opik/api" +OPIK_BASE_URL_LOCAL: Final[str] = "http://localhost:5173/api" + +OPIK_PROJECT_DEFAULT_NAME: Final[str] = "Default Project" +OPIK_WORKSPACE_DEFAULT_NAME: Final[str] = "default" + +CONFIG_FILE_PATH_DEFAULT: Final[str] = "~/.opik.config" + +LOGGER = logging.getLogger(__name__) + + +class IniConfigSettingsSource(InitSettingsSource, ConfigFileSourceMixin): + """ + A source class that loads variables from a INI file + """ + + def __init__( + self, + settings_cls: Type[BaseSettings], + ): + self.ini_data = self._read_files(CONFIG_FILE_PATH_DEFAULT) + super().__init__(settings_cls, self.ini_data) + + def _read_file(self, file_path: pathlib.Path) -> Dict[str, Any]: + config = configparser.ConfigParser() + config.read(file_path) + config_values = { + section: dict(config.items(section)) for section in config.sections() + } + + if "opik" in config_values: + return config_values["opik"] + + return {} + class OpikConfig(pydantic_settings.BaseSettings): """ @@ -14,7 +61,8 @@ class OpikConfig(pydantic_settings.BaseSettings): 1. User passed values 2. Session config dict (can be populated by calling `update_session_config(...)`) 3. Environment variables (they must start with "OPIK_" prefix) - 4. Default values + 4. Load from file + 5. Default values """ model_config = pydantic_settings.SettingsConfigDict(env_prefix="opik_") @@ -34,17 +82,18 @@ def settings_customise_sources( pydantic_settings.BaseSettings, _SESSION_CACHE_DICT ), env_settings, + IniConfigSettingsSource(settings_cls=cls), ) # Below are Opik configurations - url_override: str = "https://www.comet.com/opik/api" + url_override: str = OPIK_BASE_URL_CLOUD """Opik backend base URL""" - project_name: str = "Default Project" + project_name: str = OPIK_PROJECT_DEFAULT_NAME """Opik project name""" - workspace: str = "default" + workspace: str = OPIK_WORKSPACE_DEFAULT_NAME """Opik workspace""" api_key: Optional[str] = None @@ -91,6 +140,31 @@ def settings_customise_sources( If enabled, tests decorated with `llm_unit` will log data to Opik experiments """ + @property + def config_file_fullpath(self) -> pathlib.Path: + return pathlib.Path(CONFIG_FILE_PATH_DEFAULT).expanduser() + + def save_to_file(self) -> None: + """ + Save configuration to a file + """ + config_file_content = configparser.ConfigParser() + + config_file_content["opik"] = { + "url_override": self.url_override, + "workspace": self.workspace, + } + + if self.api_key is not None: + config_file_content["opik"]["api_key"] = self.api_key + + with open( + self.config_file_fullpath, mode="w+", encoding="utf-8" + ) as config_file: + config_file_content.write(config_file) + + LOGGER.info(f"Saved configuration to a file: {self.config_file_fullpath}") + def update_session_config(key: str, value: Any) -> None: _SESSION_CACHE_DICT[key] = value diff --git a/sdks/python/src/opik/exceptions.py b/sdks/python/src/opik/exceptions.py index c1a2b61a88..a47c6ab667 100644 --- a/sdks/python/src/opik/exceptions.py +++ b/sdks/python/src/opik/exceptions.py @@ -8,3 +8,7 @@ class DatasetItemUpdateOperationRequiresItemId(OpikException): class ContextExtractorNotSet(OpikException): pass + + +class ConfigurationError(OpikException): + pass diff --git a/sdks/python/src/opik/opik_configure.py b/sdks/python/src/opik/opik_configure.py new file mode 100644 index 0000000000..0920922d03 --- /dev/null +++ b/sdks/python/src/opik/opik_configure.py @@ -0,0 +1,434 @@ +import logging +from typing import cast +import getpass +from typing import Final, Optional + +import httpx + +import opik.config +from opik import httpx_client +from opik.config import ( + OPIK_BASE_URL_LOCAL, + OPIK_BASE_URL_CLOUD, + OPIK_WORKSPACE_DEFAULT_NAME, +) +from opik.exceptions import ConfigurationError + +LOGGER = logging.getLogger(__name__) + +HEALTH_CHECK_URL_POSTFIX: Final[str] = "/is-alive/ping" +HEALTH_CHECK_TIMEOUT: Final[float] = 1.0 + + +def is_interactive() -> bool: + """ + Returns True if in interactive mode + """ + # return bool(getattr(sys, "ps1", sys.flags.interactive)) + return True + + +def is_instance_active(url: str) -> bool: + """ + Returns True if given Opik URL responds to an HTTP GET request. + """ + http_client = httpx_client.get( + workspace=OPIK_WORKSPACE_DEFAULT_NAME, + api_key=None, + ) + + try: + http_client.timeout = HEALTH_CHECK_TIMEOUT + response = http_client.get(url=url + HEALTH_CHECK_URL_POSTFIX) + + if response.status_code == 200: + return True + except Exception: + return False + + return False + + +def is_workspace_name_correct(api_key: str, workspace: str) -> bool: + """ + Returns True if given cloud Opik workspace are correct. + + Raises: + ConnectionError: + + """ + + url = "https://www.comet.com/api/rest/v2/workspaces" + + client = httpx.Client() + client.headers.update( + { + "Authorization": f"{api_key}", + } + ) + + try: + response = client.get(url=url) + except Exception as e: + raise ConnectionError(f"Error while checking workspace status: {str(e)}") + + if response.status_code != 200: + raise ConnectionError(f"Error while checking workspace status: {response.text}") + + workspaces = response.json()["workspaceNames"] + + if workspace in workspaces: + return True + else: + return False + + +def is_api_key_correct(api_key: str) -> bool: + """ + Returns True if given cloud Opik API is correct. + + Raises: + ConnectionError: + """ + url = "https://www.comet.com/api/rest/v2/account-details" + + client = httpx.Client() + client.headers.update( + { + "Authorization": f"{api_key}", + } + ) + + try: + response = client.get(url=url) + + if response.status_code == 200: + return True + elif response.status_code in [401, 403]: + return False + + raise ConnectionError(f"Error while checking API key: {response.text}") + + except Exception as e: + raise ConnectionError(f"Error while checking API key: {str(e)}") + + +def get_default_workspace(api_key: str) -> str: + """ + Returns default Opik workspace name. + + Raises: + ConnectionError: + """ + url = "https://www.comet.com/api/rest/v2/account-details" + + client = httpx.Client() + client.headers.update( + { + "Authorization": f"{api_key}", + } + ) + + try: + response = client.get(url=url) + except Exception as e: + raise ConnectionError(f"Error while getting default workspace name: {str(e)}") + + if response.status_code != 200: + raise ConnectionError( + f"Error while getting default workspace name: {response.text}" + ) + + return response.json()["defaultWorkspaceName"] + + +def _update_config( + api_key: Optional[str], + url: str, + workspace: str, +) -> None: + """ + Save changes to config file and update current session config + + Args: + api_key + url + workspace + Raises: + ConfigurationError + """ + try: + new_config = opik.config.OpikConfig( + api_key=api_key, + url_override=url, + workspace=workspace, + ) + new_config.save_to_file() + + # update session config + opik.config.update_session_config("api_key", api_key) + opik.config.update_session_config("url_override", url) + opik.config.update_session_config("workspace", workspace) + + return + + except Exception as e: + raise ConfigurationError(str(e)) + + +def _ask_for_url() -> str: + """ + Ask user for Opik instance URL and check if it is accessible. + """ + retries = 2 + + while retries > 0: + user_input_opik_url = input("Please enter your Opik instance URL:") + + # Validate it is accessible using health + if is_instance_active(user_input_opik_url): + # If yes β†’ Save + return user_input_opik_url + else: + # If no β†’ Retry up to 2 times - ? Add message to docs ? + LOGGER.error( + f"Opik is not accessible at {user_input_opik_url}. Please try again, the URL should follow a format similar to {OPIK_BASE_URL_LOCAL}" + ) + retries -= 1 + + raise ConfigurationError( + "Can't use URL provided by user. Opik instance is not active or not found." + ) + + +def _ask_for_api_key() -> str: + """ + Ask user for cloud Opik instance API key and check if is it correct. + """ + retries = 3 + LOGGER.info( + "Your Opik cloud API key is available at https://www.comet.com/api/my/settings/." + ) + + while retries > 0: + user_input_api_key = getpass.getpass("Please enter your Opik Cloud API key:") + + if is_api_key_correct(user_input_api_key): + return user_input_api_key + else: + LOGGER.error( + f"The API key provided is not valid on {OPIK_BASE_URL_CLOUD}. Please try again." + ) + retries -= 1 + + raise ConfigurationError("API key is incorrect.") + + +def _ask_for_workspace(api_key: str) -> str: + """ + Ask user for cloud Opik instance workspace name. + """ + retries = 3 + + while retries > 0: + user_input_workspace = input( + "Please enter your cloud Opik instance workspace name: " + ) + + if is_workspace_name_correct(api_key, user_input_workspace): + return user_input_workspace + else: + LOGGER.error( + "This workspace does not exist, please enter a workspace that you have access to." + ) + retries -= 1 + + raise ConfigurationError("User does not have access to the workspaces provided.") + + +def ask_user_for_approval(message: str) -> bool: + while True: + users_choice = input(message) + users_choice = users_choice.upper() + + if users_choice in ("Y", "YES", ""): + return True + + if users_choice in ("N", "NO"): + return False + + LOGGER.error("Wrong choice. Please try again.") + + +def configure( + api_key: Optional[str] = None, + workspace: Optional[str] = None, + url: Optional[str] = None, + use_local: bool = False, + force: bool = False, +) -> None: + """ + Create a local configuration file for the Python SDK. If a configuration file already exists, it will not be overwritten unless the `force` parameter is set to True. + + Args: + api_key: The API key if using a Opik Cloud. + workspace: The workspace name if using a Opik Cloud. + url: The URL of the Opik instance if you are using a local deployment. + use_local: Whether to use a local deployment. + force: If true, the configuration file will be recreated and existing settings will be overwritten. + + Raises: + ConfigurationError + """ + + # OPIK CLOUD + if use_local is False: + _configure_cloud( + api_key=api_key, + workspace=workspace, + force=force, + ) + return + + # LOCAL OPIK DEPLOYMENT + _configure_local(url=url, force=force) + return + + +def _configure_cloud( + api_key: Optional[str], + workspace: Optional[str], + force: bool = False, +) -> None: + """ + Login to cloud Opik instance + + Args: + api_key: The API key if using a Opik Cloud. + workspace: The workspace name if using a Opik Cloud. + force: If true, the configuration file will be recreated and existing settings will be overwritten. + """ + current_config = opik.config.OpikConfig() + config_file_needs_updating = False + + # TODO: Update the is_interactive() check, today always returns True so commented the code below + # # first check parameters. + # if is_interactive() is False and api_key is None and current_config.api_key is None: + # raise ConfigurationError("No API key provided for cloud Opik instance.") + + # if ( + # is_interactive() is False + # and workspace is None + # and current_config.workspace is None + # ): + # raise ConfigurationError("No workspace name provided for cloud Opik instance.") + + # Ask for API key + if force and api_key is None: + api_key = _ask_for_api_key() + config_file_needs_updating = True + elif api_key is None and current_config.api_key is None: + api_key = _ask_for_api_key() + config_file_needs_updating = True + elif api_key is None and current_config.api_key is not None: + api_key = current_config.api_key + + api_key = cast(str, api_key) # by that moment we must be sure it's not None. + + # Check passed workspace (if it was passed) + if workspace is not None: + if is_workspace_name_correct(api_key, workspace): + config_file_needs_updating = True + else: + raise ConfigurationError( + "Workspace `%s` is incorrect for the given API key.", workspace + ) + else: + # Workspace was not passed, we check if there is already configured value + # if workspace already configured - will use this value + if ( + "workspace" in current_config.model_fields_set + and current_config.workspace != OPIK_WORKSPACE_DEFAULT_NAME + and not force + ): + workspace = current_config.workspace + + # Check what their default workspace is, and we ask them if they want to use the default workspace + if workspace is None: + default_workspace = get_default_workspace(api_key) + use_default_workspace = ask_user_for_approval( + f'Do you want to use "{default_workspace}" workspace? (Y/n)' + ) + + if use_default_workspace: + workspace = default_workspace + else: + workspace = _ask_for_workspace(api_key=api_key) + + config_file_needs_updating = True + + if config_file_needs_updating: + _update_config( + api_key=api_key, + url=OPIK_BASE_URL_CLOUD, + workspace=workspace, + ) + else: + LOGGER.info( + "Opik is already configured, you can check the settings by viewing the config file at %s", + opik.config.OpikConfig().config_file_fullpath, + ) + + +def _configure_local(url: Optional[str], force: bool = False) -> None: + """ + Login to local Opik deployment + + Args: + url: The URL of the local Opik instance. + force: Whether to force the configuration even if local settings exist. + + Raises: + ConfigurationError + """ + # TODO: this needs to be refactored - _login_local might only need url from the outside. + # But we still have to init api_key and workspace because they are required in order to update config + api_key = None + workspace = OPIK_WORKSPACE_DEFAULT_NAME + current_config = opik.config.OpikConfig() + + if url is not None and is_instance_active(url): + _update_config( + api_key=api_key, + url=url, + workspace=workspace, + ) + return + + if is_instance_active(OPIK_BASE_URL_LOCAL): + if not force and current_config.url_override == OPIK_BASE_URL_LOCAL: + # Local Opik url is configured and local + # instance is running, everything is ready. + LOGGER.info( + f"Opik is already configured to local to the running instance at {OPIK_BASE_URL_LOCAL}." + ) + return + + use_url = ask_user_for_approval( + f"Found local Opik instance on: {OPIK_BASE_URL_LOCAL}, do you want to use it? (Y/n)" + ) + + if use_url: + _update_config( + api_key=api_key, + url=OPIK_BASE_URL_LOCAL, + workspace=workspace, + ) + return + + user_input_url = _ask_for_url() + _update_config( + api_key=api_key, + url=user_input_url, + workspace=workspace, + ) diff --git a/sdks/python/tests/unit/test_opik_configure.py b/sdks/python/tests/unit/test_opik_configure.py new file mode 100644 index 0000000000..71c5998f1f --- /dev/null +++ b/sdks/python/tests/unit/test_opik_configure.py @@ -0,0 +1,97 @@ +from opik import configure +import pytest + +from opik.exceptions import ConfigurationError + + +@pytest.mark.skip +@pytest.mark.parametrize( + "api_key, url, workspace, local, should_raise", + [ + ( + None, + "http://example.com", + "workspace1", + True, + False, + ), # Missing api_key, local=True + ( + None, + "http://example.com", + "workspace1", + False, + True, + ), # Missing api_key, local=False + ("apikey123", None, "workspace1", True, True), # Missing url, local=True + ("apikey123", None, "workspace1", False, True), # Missing url, local=False + ( + "apikey123", + "http://example.com", + None, + True, + True, + ), # Missing workspace, local=True + ( + "apikey123", + "http://example.com", + None, + False, + True, + ), # Missing workspace, local=False + (None, None, "workspace1", True, True), # Missing api_key and url, local=True + (None, None, "workspace1", False, True), # Missing api_key and url, local=False + ( + None, + "http://example.com", + None, + True, + True, + ), # Missing api_key and workspace, local=True + ( + None, + "http://example.com", + None, + False, + True, + ), # Missing api_key and workspace, local=False + ("apikey123", None, None, True, True), # Missing url and workspace, local=True + ( + "apikey123", + None, + None, + False, + True, + ), # Missing url and workspace, local=False + (None, None, None, True, True), # All missing, local=True + (None, None, None, False, True), # All missing, local=False + ( + "apikey123", + "http://example.com", + "workspace1", + True, + False, + ), # All present, local=True + ( + "apikey123", + "http://example.com", + "workspace1", + False, + False, + ), # All present, local=False + ], +) +def test_login__force_new_settings__fail(api_key, url, workspace, local, should_raise): + if should_raise: + with pytest.raises(ConfigurationError): + configure( + api_key=api_key, + url=url, + workspace=workspace, + force=True, + use_local=local, + ) + else: + # No exception should be raised + configure( + api_key=api_key, url=url, workspace=workspace, force=True, use_local=local + ) From 6abef693062977149edb6c723c4f17a980216e15 Mon Sep 17 00:00:00 2001 From: github-actions Date: Tue, 17 Sep 2024 10:59:29 +0000 Subject: [PATCH 02/19] Update base version to 0.1.14 --- version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.txt b/version.txt index 7ac4e5e38f..71d6a66eda 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -0.1.13 +0.1.14 From 42a9d8543916df1f0d8dfb15556fcace3d88b275 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jacques=20Verr=C3=A9?= Date: Tue, 17 Sep 2024 12:45:52 +0100 Subject: [PATCH 03/19] Add opik.configure to log_traces guide (#262) --- .../tracing/{log_traces.md => log_traces.mdx} | 33 +++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) rename apps/opik-documentation/documentation/docs/tracing/{log_traces.md => log_traces.mdx} (85%) diff --git a/apps/opik-documentation/documentation/docs/tracing/log_traces.md b/apps/opik-documentation/documentation/docs/tracing/log_traces.mdx similarity index 85% rename from apps/opik-documentation/documentation/docs/tracing/log_traces.md rename to apps/opik-documentation/documentation/docs/tracing/log_traces.mdx index cec2c5a786..2aa29e6ccd 100644 --- a/apps/opik-documentation/documentation/docs/tracing/log_traces.md +++ b/apps/opik-documentation/documentation/docs/tracing/log_traces.mdx @@ -3,6 +3,9 @@ sidebar_position: 1 sidebar_label: Log Traces --- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + # Log Traces You can log traces to the Comet LLM Evaluation plaform using either the REST API or the `opik` Python SDK. @@ -15,14 +18,40 @@ To log traces to the Comet LLM Evaluation platform using the Python SDK, you wil pip install opik ``` -Once the SDK is installed, you can log traces to using one our Comet's integration, function decorators or manually. +To finish setting up the SDK, you will need to configure the SDK with your Opik API key or the path to your local deployment using the `opik configure`. This command will walk you through the setup process: + + + + +```python +import opik +opik.configure(use_local=False) +``` :::tip -Opik has a number of integrations for popular LLM frameworks like LangChain or OpenAI, checkout a full list of integrations in the [integrations](/tracing/integrations/overview.md) section. +If you are self-hosting the platform, simply set the `use_local` flag to True in the `opik.configure` method. ::: + + +```bash +opik configure +``` +:::tip +If you are self-hosting the platform, simply use the `opik configure --use_local` command. +::: + + + + +Once the SDK is installed, you can log traces to using one our Comet's integration, function decorators or manually. + + ## Log using function decorators +Using Opik's function decorators is the easiest way to add Opik logging to your existing LLM application. We recommend using this method in conjuntion with one of our [integrations](/tracing/integrations/overview.md) for the most seamless experience. + + ### Logging traces and spans If you are manually defining your LLM chains and not using LangChain for example, you can use the `track` function decorators to track LLM calls: From 596767a755bf972fa05e41f9666112c92e163a12 Mon Sep 17 00:00:00 2001 From: Gideon Mendels Date: Tue, 17 Sep 2024 08:51:03 -0400 Subject: [PATCH 04/19] Update README.md (#263) --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 3df1bfcd5d..70f3d7e7c2 100644 --- a/README.md +++ b/README.md @@ -59,11 +59,9 @@ You can use Opik for:
## πŸ› οΈ Installation - +Opik is available as a fully open source local installation or using Comet.com as a hosted solution. The easiest way to get started with Opik is by creating a free Comet account at [comet.com](https://www.comet.com/signup?from=llm?utm_source=opik&utm_medium=github&utm_content=install). - - If you'd like to self-host Opik, you can do so by cloning the repository and starting the platform using Docker Compose: ```bash @@ -98,11 +96,11 @@ Once the SDK is installed, you can configure it by running the `opik configure` ```bash opik configure ``` +This will allow you to configure Opik locally by setting the correct local server address or if you're using the Cloud platform by setting the API Key -This will ensure that your API key is correctly set if you are using the Opik Cloud platform or that the Opik URL is correctly set if you are self-hosting the platform. > [!TIP] -> You can also call the `opik.configure(use_local=False)` method from your Python code to configure the SDK. +> You can also call the `opik.configure(use_local=True)` method from your Python code to configure the SDK to run on the local installation. You are now ready to start logging traces using the [Python SDK](https://www.comet.com/docs/opik/python-sdk-reference/?utm_source=opik&utm_medium=github&utm_content=sdk_link2). @@ -123,9 +121,11 @@ The easiest way to get started is to use one of our integrations. Opik supports: If you are not using any of the frameworks above, you can also using the `track` function decorator to [log traces](https://www.comet.com/docs/opik/tracing/log_traces/?utm_source=opik&utm_medium=github&utm_content=traces_link): ```python -from opik import track +import opik + +opik.configure(use_local=True) # Run locally -@track +@opik.track def my_llm_function(user_question: str) -> str: # Your LLM code here From ac84e17ece48289c671ee007344d98f3ec364c3d Mon Sep 17 00:00:00 2001 From: Gideon Mendels Date: Tue, 17 Sep 2024 08:58:55 -0400 Subject: [PATCH 05/19] Update README.md (#265) --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 70f3d7e7c2..a404878a3b 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,8 @@ cd opik/deployment/docker-compose # Start the Opik platform docker compose up --detach + +# You can now visit http://localhost:5173 on your browser! ``` For more information about the different deployment options, please see our deployment guides: From 21e075da6dfcdc7624351c29d3cd361076769b12 Mon Sep 17 00:00:00 2001 From: Aliaksandr Kuzmik <98702584+alexkuzmik@users.noreply.github.com> Date: Tue, 17 Sep 2024 15:09:13 +0200 Subject: [PATCH 06/19] Fix config creation in Opik (#264) --- sdks/python/src/opik/api_objects/opik_client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdks/python/src/opik/api_objects/opik_client.py b/sdks/python/src/opik/api_objects/opik_client.py index 47900b7334..f505b7e936 100644 --- a/sdks/python/src/opik/api_objects/opik_client.py +++ b/sdks/python/src/opik/api_objects/opik_client.py @@ -41,7 +41,7 @@ def __init__( None """ config_ = config.get_from_user_inputs( - project_name=project_name, workspace=workspace, host=host + project_name=project_name, workspace=workspace, url_override=host ) self._workspace: str = config_.workspace self._project_name: str = config_.project_name From 848b9828da2667c77c07c2c7fccf718c305827a8 Mon Sep 17 00:00:00 2001 From: github-actions Date: Tue, 17 Sep 2024 14:18:34 +0000 Subject: [PATCH 07/19] Update base version to 0.1.15 --- version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.txt b/version.txt index 71d6a66eda..c34958a471 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -0.1.14 +0.1.15 From 4553b5c3d7fd475dfd40e9c1aac073ee18a385df Mon Sep 17 00:00:00 2001 From: BorisTkachenko <35521895+BorisTkachenko@users.noreply.github.com> Date: Tue, 17 Sep 2024 17:13:39 +0200 Subject: [PATCH 08/19] CM-11314 Endpoint for traces count usage (#223) --- .../main/java/com/comet/opik/api/Project.java | 5 +- .../comet/opik/api/TraceCountResponse.java | 26 +++ .../resources/v1/internal/UsageResource.java | 40 ++++ .../java/com/comet/opik/domain/TraceDAO.java | 23 +++ .../com/comet/opik/domain/TraceService.java | 14 ++ .../v1/internal/UsageResourceTest.java | 193 ++++++++++++++++++ .../resources/v1/priv/TracesResourceTest.java | 33 +-- 7 files changed, 318 insertions(+), 16 deletions(-) create mode 100644 apps/opik-backend/src/main/java/com/comet/opik/api/TraceCountResponse.java create mode 100644 apps/opik-backend/src/main/java/com/comet/opik/api/resources/v1/internal/UsageResource.java create mode 100644 apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/internal/UsageResourceTest.java diff --git a/apps/opik-backend/src/main/java/com/comet/opik/api/Project.java b/apps/opik-backend/src/main/java/com/comet/opik/api/Project.java index 60e62580be..a0479bcad6 100644 --- a/apps/opik-backend/src/main/java/com/comet/opik/api/Project.java +++ b/apps/opik-backend/src/main/java/com/comet/opik/api/Project.java @@ -39,8 +39,9 @@ public static class Public { } } - public record ProjectPage(@JsonView( { - Project.View.Public.class}) int page, + public record ProjectPage( + @JsonView( { + Project.View.Public.class}) int page, @JsonView({Project.View.Public.class}) int size, @JsonView({Project.View.Public.class}) long total, @JsonView({Project.View.Public.class}) List content) diff --git a/apps/opik-backend/src/main/java/com/comet/opik/api/TraceCountResponse.java b/apps/opik-backend/src/main/java/com/comet/opik/api/TraceCountResponse.java new file mode 100644 index 0000000000..e3e97aea69 --- /dev/null +++ b/apps/opik-backend/src/main/java/com/comet/opik/api/TraceCountResponse.java @@ -0,0 +1,26 @@ +package com.comet.opik.api; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; +import com.fasterxml.jackson.databind.annotation.JsonNaming; +import lombok.Builder; + +import java.util.List; + +@Builder(toBuilder = true) +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) +public record TraceCountResponse( + List workspacesTracesCount) { + public static TraceCountResponse empty() { + return new TraceCountResponse(List.of()); + } + + @Builder(toBuilder = true) + @JsonIgnoreProperties(ignoreUnknown = true) + @JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) + public record WorkspaceTraceCount( + String workspace, + int traceCount) { + } +} diff --git a/apps/opik-backend/src/main/java/com/comet/opik/api/resources/v1/internal/UsageResource.java b/apps/opik-backend/src/main/java/com/comet/opik/api/resources/v1/internal/UsageResource.java new file mode 100644 index 0000000000..c2fbbb59bf --- /dev/null +++ b/apps/opik-backend/src/main/java/com/comet/opik/api/resources/v1/internal/UsageResource.java @@ -0,0 +1,40 @@ +package com.comet.opik.api.resources.v1.internal; + +import com.codahale.metrics.annotation.Timed; +import com.comet.opik.api.TraceCountResponse; +import com.comet.opik.domain.TraceService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.media.Content; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.responses.ApiResponse; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.ws.rs.Consumes; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; +import jakarta.ws.rs.core.Response; +import lombok.NonNull; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; + +@Path("/v1/internal/usage") +@Produces(MediaType.APPLICATION_JSON) +@Consumes(MediaType.APPLICATION_JSON) +@Timed +@Slf4j +@RequiredArgsConstructor(onConstructor_ = @jakarta.inject.Inject) +@Tag(name = "System usage", description = "System usage related resource") +public class UsageResource { + private final @NonNull TraceService traceService; + + @GET + @Path("/workspace-trace-counts") + @Operation(operationId = "getTracesCountForWorkspaces", summary = "Get traces count on previous day for all available workspaces", description = "Get traces count on previous day for all available workspaces", responses = { + @ApiResponse(responseCode = "200", description = "TraceCountResponse resource", content = @Content(schema = @Schema(implementation = TraceCountResponse.class)))}) + public Response getTracesCountForWorkspaces() { + return traceService.countTracesPerWorkspace() + .map(tracesCountResponse -> Response.ok(tracesCountResponse).build()) + .block(); + } +} diff --git a/apps/opik-backend/src/main/java/com/comet/opik/domain/TraceDAO.java b/apps/opik-backend/src/main/java/com/comet/opik/domain/TraceDAO.java index e31135a3c7..bf967efb43 100644 --- a/apps/opik-backend/src/main/java/com/comet/opik/domain/TraceDAO.java +++ b/apps/opik-backend/src/main/java/com/comet/opik/domain/TraceDAO.java @@ -1,6 +1,7 @@ package com.comet.opik.domain; import com.comet.opik.api.Trace; +import com.comet.opik.api.TraceCountResponse; import com.comet.opik.api.TraceSearchCriteria; import com.comet.opik.api.TraceUpdate; import com.comet.opik.domain.filter.FilterQueryBuilder; @@ -64,6 +65,8 @@ interface TraceDAO { Mono> getTraceWorkspace(Set traceIds, Connection connection); Mono batchInsert(List traces, Connection connection); + + Flux countTracesPerWorkspace(Connection connection); } @Slf4j @@ -274,6 +277,16 @@ AND id in ( ; """; + private static final String TRACE_COUNT_BY_WORKSPACE_ID = """ + SELECT + workspace_id, + COUNT(DISTINCT id) as trace_count + FROM traces + WHERE created_at BETWEEN toStartOfDay(yesterday()) AND toStartOfDay(today()) + GROUP BY workspace_id + ; + """; + private static final String COUNT_BY_PROJECT_ID = """ SELECT count(id) as count @@ -797,4 +810,14 @@ private String getOrDefault(JsonNode value) { return value != null ? value.toString() : ""; } + @com.newrelic.api.agent.Trace(dispatcher = true) + public Flux countTracesPerWorkspace(Connection connection) { + + var statement = connection.createStatement(TRACE_COUNT_BY_WORKSPACE_ID); + + return Mono.from(statement.execute()) + .flatMapMany(result -> result.map((row, rowMetadata) -> TraceCountResponse.WorkspaceTraceCount.builder() + .workspace(row.get("workspace_id", String.class)) + .traceCount(row.get("trace_count", Integer.class)).build())); + } } diff --git a/apps/opik-backend/src/main/java/com/comet/opik/domain/TraceService.java b/apps/opik-backend/src/main/java/com/comet/opik/domain/TraceService.java index 956b01eb36..b1be4a9710 100644 --- a/apps/opik-backend/src/main/java/com/comet/opik/domain/TraceService.java +++ b/apps/opik-backend/src/main/java/com/comet/opik/domain/TraceService.java @@ -4,6 +4,7 @@ import com.comet.opik.api.Project; import com.comet.opik.api.Trace; import com.comet.opik.api.TraceBatch; +import com.comet.opik.api.TraceCountResponse; import com.comet.opik.api.TraceSearchCriteria; import com.comet.opik.api.TraceUpdate; import com.comet.opik.api.error.EntityAlreadyExistsException; @@ -57,6 +58,8 @@ public interface TraceService { Mono validateTraceWorkspace(String workspaceId, Set traceIds); + Mono countTracesPerWorkspace(); + } @Slf4j @@ -323,4 +326,15 @@ public Mono validateTraceWorkspace(@NonNull String workspaceId, @NonNul .allMatch(trace -> workspaceId.equals(trace.workspaceId())))); } + @Override + public Mono countTracesPerWorkspace() { + return template.stream(dao::countTracesPerWorkspace) + .collectList() + .flatMap(items -> Mono.just( + TraceCountResponse.builder() + .workspacesTracesCount(items) + .build())) + .switchIfEmpty(Mono.just(TraceCountResponse.empty())); + } + } diff --git a/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/internal/UsageResourceTest.java b/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/internal/UsageResourceTest.java new file mode 100644 index 0000000000..78e22c95ec --- /dev/null +++ b/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/internal/UsageResourceTest.java @@ -0,0 +1,193 @@ +package com.comet.opik.api.resources.v1.internal; + +import com.comet.opik.api.Trace; +import com.comet.opik.api.TraceCountResponse; +import com.comet.opik.api.resources.utils.AuthTestUtils; +import com.comet.opik.api.resources.utils.ClickHouseContainerUtils; +import com.comet.opik.api.resources.utils.ClientSupportUtils; +import com.comet.opik.api.resources.utils.MigrationUtils; +import com.comet.opik.api.resources.utils.MySQLContainerUtils; +import com.comet.opik.api.resources.utils.RedisContainerUtils; +import com.comet.opik.api.resources.utils.TestDropwizardAppExtensionUtils; +import com.comet.opik.api.resources.utils.TestUtils; +import com.comet.opik.api.resources.utils.WireMockUtils; +import com.comet.opik.infrastructure.db.TransactionTemplate; +import com.comet.opik.podam.PodamFactoryUtils; +import com.redis.testcontainers.RedisContainer; +import jakarta.ws.rs.client.Entity; +import jakarta.ws.rs.core.HttpHeaders; +import jakarta.ws.rs.core.MediaType; +import org.jdbi.v3.core.Jdbi; +import org.junit.jupiter.api.AfterAll; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.DisplayName; +import org.junit.jupiter.api.Nested; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestInstance; +import org.junit.jupiter.api.extension.RegisterExtension; +import org.testcontainers.containers.ClickHouseContainer; +import org.testcontainers.containers.MySQLContainer; +import org.testcontainers.junit.jupiter.Testcontainers; +import reactor.core.publisher.Mono; +import ru.vyarus.dropwizard.guice.test.ClientSupport; +import ru.vyarus.dropwizard.guice.test.jupiter.ext.TestDropwizardAppExtension; +import uk.co.jemos.podam.api.PodamFactory; + +import java.sql.SQLException; +import java.util.UUID; + +import static com.comet.opik.api.resources.utils.ClickHouseContainerUtils.DATABASE_NAME; +import static com.comet.opik.api.resources.utils.MigrationUtils.CLICKHOUSE_CHANGELOG_FILE; +import static com.comet.opik.domain.ProjectService.DEFAULT_PROJECT; +import static com.comet.opik.infrastructure.auth.RequestContext.WORKSPACE_HEADER; +import static org.assertj.core.api.Assertions.assertThat; + +@Testcontainers(parallel = true) +@DisplayName("Usage Resource Test") +@TestInstance(TestInstance.Lifecycle.PER_CLASS) +public class UsageResourceTest { + public static final String USAGE_RESOURCE_URL_TEMPLATE = "%s/v1/internal/usage"; + public static final String TRACE_RESOURCE_URL_TEMPLATE = "%s/v1/private/traces"; + + private static final String USER = UUID.randomUUID().toString(); + + private static final RedisContainer REDIS = RedisContainerUtils.newRedisContainer(); + + private static final MySQLContainer MYSQL_CONTAINER = MySQLContainerUtils.newMySQLContainer(); + + private static final ClickHouseContainer CLICK_HOUSE_CONTAINER = ClickHouseContainerUtils.newClickHouseContainer(); + + @RegisterExtension + private static final TestDropwizardAppExtension app; + + private static final WireMockUtils.WireMockRuntime wireMock; + + static { + MYSQL_CONTAINER.start(); + CLICK_HOUSE_CONTAINER.start(); + REDIS.start(); + + wireMock = WireMockUtils.startWireMock(); + + var databaseAnalyticsFactory = ClickHouseContainerUtils.newDatabaseAnalyticsFactory( + CLICK_HOUSE_CONTAINER, DATABASE_NAME); + + app = TestDropwizardAppExtensionUtils.newTestDropwizardAppExtension( + MYSQL_CONTAINER.getJdbcUrl(), databaseAnalyticsFactory, wireMock.runtimeInfo(), REDIS.getRedisURI()); + } + + private final PodamFactory factory = PodamFactoryUtils.newPodamFactory(); + + private String baseURI; + private ClientSupport client; + private TransactionTemplate template; + + @BeforeAll + void setUpAll(ClientSupport client, Jdbi jdbi, TransactionTemplate template) throws SQLException { + + MigrationUtils.runDbMigration(jdbi, MySQLContainerUtils.migrationParameters()); + + try (var connection = CLICK_HOUSE_CONTAINER.createConnection("")) { + MigrationUtils.runDbMigration(connection, CLICKHOUSE_CHANGELOG_FILE, + ClickHouseContainerUtils.migrationParameters()); + } + + this.baseURI = "http://localhost:%d".formatted(client.getPort()); + this.client = client; + this.template = template; + + ClientSupportUtils.config(client); + } + + @AfterAll + void tearDownAll() { + wireMock.server().stop(); + } + + private static void mockTargetWorkspace(String apiKey, String workspaceName, String workspaceId) { + AuthTestUtils.mockTargetWorkspace(wireMock.server(), apiKey, workspaceName, workspaceId, USER); + } + + @Nested + @DisplayName("Opik usage:") + @TestInstance(TestInstance.Lifecycle.PER_CLASS) + class Usage { + + private final String okApikey = UUID.randomUUID().toString(); + + @Test + @DisplayName("Get traces count on previous day for all workspaces, no Auth") + void tracesCountForWorkspace() { + // Setup mock workspace with traces + var workspaceName = UUID.randomUUID().toString(); + var workspaceId = UUID.randomUUID().toString(); + int tracesCount = setupTracesForWorkspace(workspaceName, workspaceId, okApikey); + + // Change created_at to the previous day in order to capture those traces in count query, since for Stripe we need to count it daily for yesterday + String updateCreatedAt = "ALTER TABLE traces UPDATE created_at = subtractDays(created_at, 1) WHERE workspace_id=:workspace_id;"; + template.nonTransaction(connection -> { + var statement = connection.createStatement(updateCreatedAt) + .bind("workspace_id", workspaceId); + return Mono.from(statement.execute()); + }).block(); + + // Setup second workspace with traces, but leave created_at date set to today, so traces do not end up in the pool + var workspaceNameForToday = UUID.randomUUID().toString(); + var workspaceIdForToday = UUID.randomUUID().toString(); + setupTracesForWorkspace(workspaceNameForToday, workspaceIdForToday, okApikey); + + try (var actualResponse = client.target(USAGE_RESOURCE_URL_TEMPLATE.formatted(baseURI)) + .path("/workspace-trace-counts") + .request() + .header(HttpHeaders.AUTHORIZATION, okApikey) + .header(WORKSPACE_HEADER, workspaceName) + .get()) { + + assertThat(actualResponse.getStatusInfo().getStatusCode()).isEqualTo(200); + assertThat(actualResponse.hasEntity()).isTrue(); + + var response = actualResponse.readEntity(TraceCountResponse.class); + assertThat(response.workspacesTracesCount().size()).isEqualTo(1); + assertThat(response.workspacesTracesCount().get(0)) + .isEqualTo(new TraceCountResponse.WorkspaceTraceCount(workspaceId, tracesCount)); + } + } + } + + private int setupTracesForWorkspace(String workspaceName, String workspaceId, String okApikey) { + mockTargetWorkspace(okApikey, workspaceName, workspaceId); + + var traces = PodamFactoryUtils.manufacturePojoList(factory, Trace.class) + .stream() + .map(t -> t.toBuilder() + .projectId(null) + .projectName(DEFAULT_PROJECT) + .feedbackScores(null) + .build()) + .toList(); + + traces.forEach(trace -> createTrace(trace, okApikey, workspaceName)); + + return traces.size(); + } + + private UUID createTrace(Trace trace, String apiKey, String workspaceName) { + try (var actualResponse = client.target(TRACE_RESOURCE_URL_TEMPLATE.formatted(baseURI)) + .request() + .accept(MediaType.APPLICATION_JSON_TYPE) + .header(HttpHeaders.AUTHORIZATION, apiKey) + .header(WORKSPACE_HEADER, workspaceName) + .post(Entity.json(trace))) { + + assertThat(actualResponse.getStatusInfo().getStatusCode()).isEqualTo(201); + assertThat(actualResponse.hasEntity()).isFalse(); + + var actualId = TestUtils.getIdFromLocation(actualResponse.getLocation()); + + if (trace.id() != null) { + assertThat(actualId).isEqualTo(trace.id()); + } + return actualId; + } + } +} diff --git a/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/priv/TracesResourceTest.java b/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/priv/TracesResourceTest.java index 8bdf9fb926..4f822c9c9a 100644 --- a/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/priv/TracesResourceTest.java +++ b/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/priv/TracesResourceTest.java @@ -338,18 +338,7 @@ void get__whenApiKeyIsPresent__thenReturnProperResponse(String apiKey, boolean e var workspaceName = UUID.randomUUID().toString(); var workspaceId = UUID.randomUUID().toString(); - mockTargetWorkspace(okApikey, workspaceName, workspaceId); - - var traces = PodamFactoryUtils.manufacturePojoList(factory, Trace.class) - .stream() - .map(t -> t.toBuilder() - .projectId(null) - .projectName(DEFAULT_PROJECT) - .feedbackScores(null) - .build()) - .toList(); - - traces.forEach(trace -> create(trace, okApikey, workspaceName)); + int tracesCount = setupTracesForWorkspace(workspaceName, workspaceId, okApikey); try (var actualResponse = client.target(URL_TEMPLATE.formatted(baseURI)) .queryParam("project_name", DEFAULT_PROJECT) @@ -363,7 +352,7 @@ void get__whenApiKeyIsPresent__thenReturnProperResponse(String apiKey, boolean e assertThat(actualResponse.hasEntity()).isTrue(); var response = actualResponse.readEntity(Trace.TracePage.class); - assertThat(response.content()).hasSize(traces.size()); + assertThat(response.content()).hasSize(tracesCount); } else { assertThat(actualResponse.getStatusInfo().getStatusCode()).isEqualTo(401); assertThat(actualResponse.readEntity(io.dropwizard.jersey.errors.ErrorMessage.class)) @@ -482,7 +471,6 @@ void feedbackBatch__whenApiKeyIsPresent__thenReturnProperResponse(String apiKey, } } - } @Nested @@ -4695,4 +4683,21 @@ private void assertEqualsForScores(List expected, List actual) { .ignoringCollectionOrder() .isEqualTo(expected); } + + private int setupTracesForWorkspace(String workspaceName, String workspaceId, String okApikey) { + mockTargetWorkspace(okApikey, workspaceName, workspaceId); + + var traces = PodamFactoryUtils.manufacturePojoList(factory, Trace.class) + .stream() + .map(t -> t.toBuilder() + .projectId(null) + .projectName(DEFAULT_PROJECT) + .feedbackScores(null) + .build()) + .toList(); + + traces.forEach(trace -> TracesResourceTest.this.create(trace, okApikey, workspaceName)); + + return traces.size(); + } } From 929a19916c1032cf60560ff22af3379acf21a57d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jacques=20Verr=C3=A9?= Date: Tue, 17 Sep 2024 16:39:01 +0100 Subject: [PATCH 09/19] Predibase documentation (#266) * Predibase documentation * Added Predibase integration to Github repo Readme * Updated Predibase integration --- README.md | 1 + .../docs/cookbook/predibase.ipynb | 254 ++++++++++++++++++ .../documentation/docs/cookbook/predibase.md | 160 +++++++++++ .../docs/tracing/integrations/langchain.md | 6 +- .../docs/tracing/integrations/overview.md | 1 + .../docs/tracing/integrations/predibase.md | 78 ++++++ .../documentation/sidebars.ts | 7 +- .../img/tracing/predibase_opik_trace.png | Bin 0 -> 720007 bytes 8 files changed, 500 insertions(+), 7 deletions(-) create mode 100644 apps/opik-documentation/documentation/docs/cookbook/predibase.ipynb create mode 100644 apps/opik-documentation/documentation/docs/cookbook/predibase.md create mode 100644 apps/opik-documentation/documentation/docs/tracing/integrations/predibase.md create mode 100644 apps/opik-documentation/documentation/static/img/tracing/predibase_opik_trace.png diff --git a/README.md b/README.md index a404878a3b..f22da8a610 100644 --- a/README.md +++ b/README.md @@ -116,6 +116,7 @@ The easiest way to get started is to use one of our integrations. Opik supports: | OpenAI | Log traces for all OpenAI LLM calls | [Documentation](https://www.comet.com//docs/opik/tracing/integrations/openai/?utm_source=opik&utm_medium=github&utm_content=openai_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb) | | LangChain | Log traces for all LangChain LLM calls | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/langchain/?utm_source=opik&utm_medium=github&utm_content=langchain_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb) | | LlamaIndex | Log traces for all LlamaIndex LLM calls | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/llama_index?utm_source=opik&utm_medium=github&utm_content=llama_index_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb) | +| Predibase | Fine-tune and serve open-source Large Language Models | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/predibase?utm_source=opik&utm_medium=github&utm_content=predibase_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/predibase.ipynb) | > [!TIP] > If the framework you are using is not listed above, feel free to [open an issue](https://github.com/comet-ml/opik/issues) or submit a PR with the integration. diff --git a/apps/opik-documentation/documentation/docs/cookbook/predibase.ipynb b/apps/opik-documentation/documentation/docs/cookbook/predibase.ipynb new file mode 100644 index 0000000000..9236226ba0 --- /dev/null +++ b/apps/opik-documentation/documentation/docs/cookbook/predibase.ipynb @@ -0,0 +1,254 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Using Opik with Predibase\n", + "\n", + "This notebook demonstrates how to use Predibase as an LLM provider with LangChain, and how to integrate Comet for tracking and logging.\n", + "\n", + "## Setup\n", + "\n", + "First, let's install the necessary packages and set up our environment variables." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%pip install --upgrade --quiet predibase opik" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We will now configure Opik and Predibase:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Configure Opik\n", + "import opik\n", + "import os\n", + "\n", + "opik.configure(use_local=False)\n", + "\n", + "# Configure predibase\n", + "import getpass\n", + "os.environ[\"PREDIBASE_API_TOKEN\"] = getpass.getpass(\"Enter your Predibase API token\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Creating the Opik Tracer\n", + "\n", + "In order to log traces to Opik, we will be using the OpikTracer from the LangChain integration." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Import Comet tracer\n", + "from opik.integrations.langchain import OpikTracer\n", + "\n", + "# Initialize Comet tracer\n", + "opik_tracer = OpikTracer(\n", + " tags=[\"predibase\", \"langchain\"],\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Initial Call\n", + "\n", + "Let's set up our Predibase model and make an initial call." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from langchain_community.llms import Predibase\n", + "import os\n", + "\n", + "model = Predibase(\n", + " model=\"mistral-7b\",\n", + " predibase_api_key=os.environ.get(\"PREDIBASE_API_TOKEN\"),\n", + ")\n", + "\n", + "# Test the model with Comet tracing\n", + "response = model.invoke(\n", + " \"Can you recommend me a nice dry wine?\",\n", + " config={\n", + " \"temperature\": 0.5,\n", + " \"max_new_tokens\": 1024,\n", + " \"callbacks\": [opik_tracer]\n", + " }\n", + ")\n", + "print(response)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In addition to passing the OpikTracer to the invoke method, you can also define it during the creation of the `Predibase` object:\n", + "\n", + "```python\n", + "model = Predibase(\n", + " model=\"mistral-7b\",\n", + " predibase_api_key=os.environ.get(\"PREDIBASE_API_TOKEN\"),\n", + ").with_config({\"callbacks\": [opik_tracer]})\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## SequentialChain\n", + "\n", + "Now, let's create a more complex chain and run it with Comet tracing." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from langchain.chains import LLMChain, SimpleSequentialChain\n", + "from langchain_core.prompts import PromptTemplate\n", + "\n", + "# Synopsis chain\n", + "template = \"\"\"You are a playwright. Given the title of play, it is your job to write a synopsis for that title.\n", + "\n", + "Title: {title}\n", + "Playwright: This is a synopsis for the above play:\"\"\"\n", + "prompt_template = PromptTemplate(input_variables=[\"title\"], template=template)\n", + "synopsis_chain = LLMChain(llm=model, prompt=prompt_template)\n", + "\n", + "# Review chain\n", + "template = \"\"\"You are a play critic from the New York Times. Given the synopsis of play, it is your job to write a review for that play.\n", + "\n", + "Play Synopsis:\n", + "{synopsis}\n", + "Review from a New York Times play critic of the above play:\"\"\"\n", + "prompt_template = PromptTemplate(input_variables=[\"synopsis\"], template=template)\n", + "review_chain = LLMChain(llm=model, prompt=prompt_template)\n", + "\n", + "# Overall chain\n", + "overall_chain = SimpleSequentialChain(\n", + " chains=[synopsis_chain, review_chain], verbose=True\n", + ")\n", + "\n", + "# Run the chain with Comet tracing\n", + "review = overall_chain.run(\"Tragedy at sunset on the beach\", callbacks=[opik_tracer])\n", + "print(review)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Accessing Logged Traces\n", + "\n", + "We can access the trace IDs collected by the Comet tracer." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "traces = opik_tracer.created_traces()\n", + "print(\"Collected trace IDs:\", [trace.id for trace in traces])\n", + "\n", + "# Flush traces to ensure all data is logged\n", + "opik_tracer.flush()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Fine-tuned LLM Example\n", + "\n", + "Finally, let's use a fine-tuned model with Comet tracing.\n", + "\n", + "**Note:** In order to use a fine-tuned model, you will need to have access to the model and the correct model ID. The code below will return a `NotFoundError` unless the `model` and `adapter_id` are updated." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "fine_tuned_model = Predibase(\n", + " model=\"my-base-LLM\",\n", + " predibase_api_key=os.environ.get(\"PREDIBASE_API_TOKEN\"),\n", + " predibase_sdk_version=None,\n", + " adapter_id=\"my-finetuned-adapter-id\",\n", + " adapter_version=1,\n", + " **{\n", + " \"api_token\": os.environ.get(\"HUGGING_FACE_HUB_TOKEN\"),\n", + " \"max_new_tokens\": 5,\n", + " },\n", + ")\n", + "\n", + "# Configure the Comet tracer\n", + "fine_tuned_model = fine_tuned_model.with_config({\"callbacks\": [opik_tracer]})\n", + "\n", + "# Invode the fine-tuned model\n", + "response = fine_tuned_model.invoke(\n", + " \"Can you help categorize the following emails into positive, negative, and neutral?\",\n", + " **{\"temperature\": 0.5, \"max_new_tokens\": 1024}\n", + ")\n", + "print(response)\n", + "\n", + "# Final flush to ensure all traces are logged\n", + "opik_tracer.flush()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "py312_llm_eval", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.4" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/apps/opik-documentation/documentation/docs/cookbook/predibase.md b/apps/opik-documentation/documentation/docs/cookbook/predibase.md new file mode 100644 index 0000000000..c06b117765 --- /dev/null +++ b/apps/opik-documentation/documentation/docs/cookbook/predibase.md @@ -0,0 +1,160 @@ +# Using Opik with Predibase + +This notebook demonstrates how to use Predibase as an LLM provider with LangChain, and how to integrate Comet for tracking and logging. + +## Setup + +First, let's install the necessary packages and set up our environment variables. + + +```python +%pip install --upgrade --quiet predibase opik +``` + +We will now configure Opik and Predibase: + + +```python +# Configure Opik +import opik +import os + +opik.configure(use_local=False) + +# Configure predibase +import getpass +os.environ["PREDIBASE_API_TOKEN"] = getpass.getpass("Enter your Predibase API token") +``` + +## Creating the Opik Tracer + +In order to log traces to Opik, we will be using the OpikTracer from the LangChain integration. + + +```python +# Import Comet tracer +from opik.integrations.langchain import OpikTracer + +# Initialize Comet tracer +opik_tracer = OpikTracer( + tags=["predibase", "langchain"], +) +``` + +## Initial Call + +Let's set up our Predibase model and make an initial call. + + +```python +from langchain_community.llms import Predibase +import os + +model = Predibase( + model="mistral-7b", + predibase_api_key=os.environ.get("PREDIBASE_API_TOKEN"), +) + +# Test the model with Comet tracing +response = model.invoke( + "Can you recommend me a nice dry wine?", + config={ + "temperature": 0.5, + "max_new_tokens": 1024, + "callbacks": [opik_tracer] + } +) +print(response) +``` + +In addition to passing the OpikTracer to the invoke method, you can also define it during the creation of the `Predibase` object: + +```python +model = Predibase( + model="mistral-7b", + predibase_api_key=os.environ.get("PREDIBASE_API_TOKEN"), +).with_config({"callbacks": [opik_tracer]}) +``` + +## SequentialChain + +Now, let's create a more complex chain and run it with Comet tracing. + + +```python +from langchain.chains import LLMChain, SimpleSequentialChain +from langchain_core.prompts import PromptTemplate + +# Synopsis chain +template = """You are a playwright. Given the title of play, it is your job to write a synopsis for that title. + +Title: {title} +Playwright: This is a synopsis for the above play:""" +prompt_template = PromptTemplate(input_variables=["title"], template=template) +synopsis_chain = LLMChain(llm=model, prompt=prompt_template) + +# Review chain +template = """You are a play critic from the New York Times. Given the synopsis of play, it is your job to write a review for that play. + +Play Synopsis: +{synopsis} +Review from a New York Times play critic of the above play:""" +prompt_template = PromptTemplate(input_variables=["synopsis"], template=template) +review_chain = LLMChain(llm=model, prompt=prompt_template) + +# Overall chain +overall_chain = SimpleSequentialChain( + chains=[synopsis_chain, review_chain], verbose=True +) + +# Run the chain with Comet tracing +review = overall_chain.run("Tragedy at sunset on the beach", callbacks=[opik_tracer]) +print(review) +``` + +## Accessing Logged Traces + +We can access the trace IDs collected by the Comet tracer. + + +```python +traces = opik_tracer.created_traces() +print("Collected trace IDs:", [trace.id for trace in traces]) + +# Flush traces to ensure all data is logged +opik_tracer.flush() +``` + +## Fine-tuned LLM Example + +Finally, let's use a fine-tuned model with Comet tracing. + +**Note:** In order to use a fine-tuned model, you will need to have access to the model and the correct model ID. The code below will return a `NotFoundError` unless the `model` and `adapter_id` are updated. + + +```python +fine_tuned_model = Predibase( + model="my-base-LLM", + predibase_api_key=os.environ.get("PREDIBASE_API_TOKEN"), + predibase_sdk_version=None, + adapter_id="my-finetuned-adapter-id", + adapter_version=1, + **{ + "api_token": os.environ.get("HUGGING_FACE_HUB_TOKEN"), + "max_new_tokens": 5, + }, +) + +# Configure the Comet tracer +fine_tuned_model = fine_tuned_model.with_config({"callbacks": [opik_tracer]}) + +# Invode the fine-tuned model +response = fine_tuned_model.invoke( + "Can you help categorize the following emails into positive, negative, and neutral?", + **{"temperature": 0.5, "max_new_tokens": 1024} +) +print(response) + +# Final flush to ensure all traces are logged +opik_tracer.flush() +``` diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/langchain.md b/apps/opik-documentation/documentation/docs/tracing/integrations/langchain.md index d69550394c..75322ff3f4 100644 --- a/apps/opik-documentation/documentation/docs/tracing/integrations/langchain.md +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/langchain.md @@ -69,7 +69,7 @@ opik_tracer = OpikTracer( ## Accessing logged traces -You can use the `collected_traces` method to access the trace IDs collected by the `CometTracer` callback: +You can use the `created_traces` method to access the trace IDs collected by the `CometTracer` callback: ```python from opik.integrations.langchain import OpikTracer @@ -78,8 +78,8 @@ opik_tracer = OpikTracer() # Calling Langchain object -traces = opik_tracer.collected_traces() -print(traces) +traces = opik_tracer.created_traces() +print([trace.id for trace in traces]) ``` This can be especially useful if you would like to update or log feedback scores for traces logged using the CometTracer. diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/overview.md b/apps/opik-documentation/documentation/docs/tracing/integrations/overview.md index 354e70656c..657ebb335a 100644 --- a/apps/opik-documentation/documentation/docs/tracing/integrations/overview.md +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/overview.md @@ -13,5 +13,6 @@ Opik aims to make it as easy as possible to log, view and evaluate your LLM trac | OpenAI | Log traces for all OpenAI LLM calls | [Documentation](/tracing/integrations/openai.md) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb) | | LangChain | Log traces for all LangChain LLM calls | [Documentation](/tracing/integrations/langchain.md) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb) | | LlamaIndex | Log traces for all LlamaIndex LLM calls | [Documentation](/tracing/integrations/llama_index.md) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb) | +| Predibase | Fine-tune and serve open-source LLMs | [Documentation](/tracing/integrations/predibase.md) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/predibase.ipynb) | If you would like to see more integrations, please open an issue on our [GitHub repository](https://github.com/comet-ml/opik). diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/predibase.md b/apps/opik-documentation/documentation/docs/tracing/integrations/predibase.md new file mode 100644 index 0000000000..157c47b353 --- /dev/null +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/predibase.md @@ -0,0 +1,78 @@ +--- +sidebar_position: 4 +sidebar_label: Predibase +--- + +# Using Opik with Predibase + +Predibase is a platform for fine-tuning and serving open-source Large Language Models (LLMs). It's built on top of open-source [LoRAX](https://loraexchange.ai/). + +
+ You can check out the Colab Notebook if you'd like to jump straight to the code: + + Open In Colab + +
+ +## Tracking your LLM calls + +Predibase can be used to serve open-source LLMs and is available as a model provider in LangChain. We will leverage the Opik integration with LangChain to track the LLM calls made using Predibase models. + +### Getting started + +To use the Opik integration with Predibase, you'll need to have both the `opik`, `predibase` and `langchain` packages installed. You can install them using pip: + +```bash +pip install --upgrade --quiet opik predibase langchain +``` + +You can then configure Opik using the `opik configure` command which will prompt you for the correct local server address or if you are using the Cloud platfrom your API key: + +```bash +opik configure +``` + +You will also need to set the `PREDIBASE_API_TOKEN` environment variable to your Predibase API token: + +```bash +export PREDIBASE_API_TOKEN= +``` + +### Tracing your Predibase LLM calls + +In order to use Predibase through the LangChain interface, we will start by creating a Predibase model. We will then invoke the model with the Opik tracing callback: + +```python +import os +from langchain_community.llms import Predibase +from opik.integrations.langchain import OpikTracer + +model = Predibase( + model="mistral-7b", + predibase_api_key=os.environ.get("PREDIBASE_API_TOKEN"), +) + +# Test the model with Comet tracing +response = model.invoke( + "Can you recommend me a nice dry wine?", + config={ + "temperature": 0.5, + "max_new_tokens": 1024, + "callbacks": [OpikTracer(tags=["predibase", "mistral-7b"])] + } +) +print(response) +``` + +:::tip +You can learn more about the Opik integration with LangChain in our [LangChain integration guide](/docs/tracing/integrations/langchain.md) or in the [Predibase cookbook](/docs/cookbook/predibase.md). +::: + +The trace will now be available in the Opik UI for further analysis. + + +![predibase](/img/tracing/predibase_opik_trace.png) + +## Tracking your fine-tuning training runs + +If you are using Predibase to fine-tune an LLM, we recommend using Predibase's integration with Comet's Experiment Management functionality. You can learn more about how to set this up in the [Comet integration guide](https://docs.predibase.com/user-guide/integrations/comet) in the Predibase documentation. If you are already using an Experiment Tracking platform, worth checking if it has an integration with Predibase. diff --git a/apps/opik-documentation/documentation/sidebars.ts b/apps/opik-documentation/documentation/sidebars.ts index 42c6a743e0..8b4e8dec5b 100644 --- a/apps/opik-documentation/documentation/sidebars.ts +++ b/apps/opik-documentation/documentation/sidebars.ts @@ -28,7 +28,7 @@ const sidebars: SidebarsConfig = { type: 'category', label: 'Integrations', items: ['tracing/integrations/overview', 'tracing/integrations/langchain', 'tracing/integrations/openai', - 'tracing/integrations/llama_index', 'tracing/integrations/ragas'] + 'tracing/integrations/llama_index', 'tracing/integrations/predibase', 'tracing/integrations/ragas'] }], }, { @@ -53,9 +53,8 @@ const sidebars: SidebarsConfig = { type: 'category', label: 'Cookbooks', collapsed: false, - items: ['cookbook/openai', 'cookbook/langchain', 'cookbook/llama-index', - 'cookbook/evaluate_hallucination_metric', 'cookbook/evaluate_moderation_metric', - 'cookbook/ragas'] + items: ['cookbook/openai', 'cookbook/langchain', 'cookbook/llama-index', 'cookbook/predibase', + 'cookbook/ragas', 'cookbook/evaluate_hallucination_metric', 'cookbook/evaluate_moderation_metric'] }, ], }; diff --git a/apps/opik-documentation/documentation/static/img/tracing/predibase_opik_trace.png b/apps/opik-documentation/documentation/static/img/tracing/predibase_opik_trace.png new file mode 100644 index 0000000000000000000000000000000000000000..a63424a651ebd23549c1146b4e62105164b27b2f GIT binary patch literal 720007 zcmc$`Wn5Hi+de!)3nCyTT~bog9ZD%kO1GeNcQbTJC?HA-h{Vv{1Cr7W(jnaqL%j># z`}wo)`+4?n?@#Y1*2J~ebsc9P=Q)Hb%1dLS6QhGbAk62_B$PoQEZ`E&77YdX6W!2d z5Bvc;C`&&D74(v>fk2d?=Mqm;T=h1mQ9WO(Hlyrj#c*`7dhBTaD2dI4l*B_Iln4kV z5;)j+cuGVFetwkb40Q~$@6sTa64-BcgtZwQ6<4hrcBZ&0KlRAD$8ddjn4LX&?$9TE zl61}gJmyg3C9=c_$GFz6-|ge17+DRc*!K@5zp_~(by2p4x3 zrWgBWUjFgUtq=eH5^|1y`WUp?;NSk?*ILN=o!teG6B5pfkG~)Md-*nVV;|+Vkh`Ve zUmpDT_Xf5Ne8II8gxEME1mFC{2zFL8&#EpME$D{R*ScOq4^JQ{Tulngu5V* zgVoZV-!C1(dY(Iu_9@Y~@zG-e@X-^#*cAHL_*4}G_*e_MS_=GHT9pc7YjAHOEeG&%J=!fj`1km<0r=GJ z%@wcx#>X3>?sVp|?JdjK+X5E65wKts`Q&dY{hO!E+z6OAO62_aQhCC;))RU9l{yhjU|bEsslZe=VJ3y-~2PXT{04?_?_qUfeBQ1tT_Y z^F~^-|7){T6uUWx+aEUezn_B^Vc8E>Q@{z@q>X`0-*#C4467(yKmdzDv1I8t-}lV} z6xmjdoU9_^w(HoYk5)QWKMVpJoRGZytJl4K-kTtB%OTvlq(piES{C}_b3P>q*nr;f zK;`z@T?4R1lfLd45$JgCd1Jw!G3C}h{{9joePbd6&0W2}mWrtX=i-A#piPS3_SPr3 zio{p=!hmL7w#EO&`v1?Z|MjtGU=#>H)*q*oztQE;aUuNM#}-m-`~V1D1hJ8v@6I^w zZ4dTmEd1*&|Kr_Vbl?&7h97@C|FyK^5ujNnaqkQSZ$mq$hfsmyBe~PU?m{l~K|qV+ z;ds43_o(u}4Xq&LIvqe5Y^k74kza@4QwLtIxF1;lMK(xak7ii<4xsVh?ix_s-pJn` zCpjokg!Y%yRFC8tkFMy%f?#d&ba44yX&8)0I=QFx{;0Z>JPhLOKk&zCl)BK z@c+fldn1?!_(&EKft+E*CVz>L{|GDy!c#y5y@S11@4Sn{`-@--<-r79s9S&BryWu3xGq%Me)nDxui{Basc;+@xYz)8$K>rT(CCGx%~0-D^zHLi1eAOB$> z|HlI%E*P%rAU;~;9HruCp&=47<1`P+`6IrB^S-k`;!)lXpyFmFAeMU{BH27fPw08D z>}!*DftIaA4(?Nt6dM`bWr;>@kVOB+ChfeF!oMl}YuDqn04}!^8|}JzHzjX8?8}h)J7PPEoIC6w<)a`K8UhId zi_BHwujfBdLy0jBu_31yZu8oC4Cqd-_h?Za4Y9`&Q}H(M-|SHOM$Mn;j{e13PVg0( zE-ZAS=usgtFO_$>MDE-PWqc+hFKKR`+r;akX~z>{L*nJ-g)_GkZt3gYfrAI~5ryTA ztEf)=#7y;Vt&^31E-52}&Xq%KdL3WR%Z}yMa_#9gx3YrjBdTwvS7W$%Fpj@2ME_f| z|GU#^6hxld+qpl(ue`~Ptiu)^cU93h#yZxAs$dFUDWiW&eQppgrj~F}Q8uZp*@p?r z`a*fuM%H3A5s}5@BWeHoV~^fiP_CM!YL0x1U^$?k#f=BU@1kR*tWI> zmgGc8$3OcTsZSF>#@=P85PpUGNh3cICRB2PrhzRi!7wj z_`_#%#Ug&CCoON3rgtrmhuShK135`}Wn?o-8U+$#Gu5_;48?|BvY8rEbm-M^d$%Hv zs=W%?AE0a_e71{2s2GOm`KA9xJA4SJ3@9J#gH^O2-$B;qQE|}GAp8ZlYc_;l|6(&u zyv_P{kZer*<#rGy9}G+_n}O%(?LtG|hQ`1qyFLkH|0q49>7T{&_AbzD8Xmp#{{8!~ zmY;Ynv=7A(r7af`1tve?}Uc#3*Fs42!_GfJUzYUH)y0dH*9hi zzJd*p7JjNc%zW5&@L1b`^5T-L_7Qh#yQYtKQQ+UY2L+tn0GO<6r$!M4o-Hp}{mLq} zP7a8c~y4oc&SB}W;00t;LRT841cZUzZW2_4NRJ|9X zAGztAoQnEONgyt0t_!VwGwk-8w6~3Rm{5`Cf@!@Yn_S@zD7@z8v?m6=Q2=tXWhDPi!S=7lj4zYS4SL_-2+z#5GKR~pAP)DwS z1)>KW5i_-#C+5n#dHw06L9Zs}hIwY?$AlM`7sCnGtkCut5ybGgip2%oFK(-$z;_-F z1VUPcy2)cP8yXsNyD3DXRA0TO{cmyK28988_XA9p;j;k_x?&?3Ard|*qF+n;SR+sQ z9cZPDnvP(f5-i>0CVju!38aCG8zH^Z5cP#d+V|%}PI=-rKW2)MuDBLh%U6o~qjRBH z*z?dQVGL>7KX|!WR+$1JnCb`wP5OI23wF(M5HCgd7K`l1dzjLZgd4w8E?&ajFX5@v zo(zA@fvQv}OTh-yd!y@n0r(IKDbd!U(}zF1$rrj2aGT$~|n`mf7R8i6w}yVO$t8Ul#t$;?Kcoe1^S(@7t^p8yQcwso<9?(=Sd4I~Cm$F+(=6 zd!(e7^awDKBG&c1^TBtEtu?<>(jH`?wFMJi3Ur>-+cwLJTSPEXKKl4_F@I!f8*G46 zRY!=!^bU{dBZ;^7dY+Vd&$#OOOJ!v{-i2aEcsh9zdQp}q3c)OyXoNy^8?E#)1Pmr#J2jN>7)6ZgC+t zarJ4meJ8!h7-~`FHa$5M)KO3hyyr3gV+N>pYOV{_%5_-RSby z#^%}(QtbCiNwC0wkXL_fHy&LBV^hl_X>X5cg#LKi<5VKI1YiZqb4!0-eWc$DiIm$7 z8}V^M{9N1o8i=wTF`Nvtk>P_hMKe|4&mU^fOx_4`c{_>wy#gHtWi_JFi#^0389~usn zHlHxB!-AMFK^vXb9-z}FKXF^==`svvNIOzk8s8YLbmO+uKBS^vXY@n3RASJVH%ZYt za<~Dd>J;hAm#@?w6=J7nZtdm;jEsySvd;oi3)xCg-*gR6%^i%_r?!70_9TCCyA=3O zm~2ZRyjQy4zPAXGAu~kNeO|t?rdG2!d?dcC(r*k!n7w$44uHZ;TjPU9TO?@A*ZCf% z@S%VCn(0JKrEg`gZdtPgIiiTc_j(6W5eh(IH1pNxUxk9X7|p2kIhnxWwnffw47SW+ zhPa~P*O@X)UePegm&1A@T?0mK@ZZK1fh@EH7!x@HPx4=lslyU9KD9SW?r;Lyokoqy zoO@I3S3SQ%-+*{{!9q)m??OW^+tg(kXkY6TEWE_IJCwDz;QYShoiJL%!nq0CxH31f zP(*kzn`bnQ^s-vf(l1E#9#8*}{7)GEbS^hV8ztE0qBZ~(lcM%1xbnW@fz7$+mOV7> zWW3E@-ea@B#E1ZCIO!l#$~h5KM8}T9e(;rQJ_^%}&OJ>Z$S`=`wH)Dp*J*4&gfW7? zy?puZJ;8FEU)?@{0KWbfI?V8mfm`cr8NP41=tdw!@=D{{Y`G*53h6-(Z+9L zi%Pvkrert+`Cq&$?oT#V>9jIb$vXFH)-q)8Wu`Q@(xI|1=k|1W4tTt{*M{hHV5y z>vz0ui!$NHpG#WK+vNe5FV|&EPtk!$D@~XTSLB1}*hP9CS`q0Xrj;ocN!6nJM@69| zl*K_>eJC6@TCXVF8VF@22TsHbLhH*0iTRd47PNi2d?3ob8`(>kM9z z93>}s?rr4JA*iU*J7_=F+e1cF0$a^;<^f18V>X2Y%hF>6wXS@&LZJ9>iES}Cu(xR8 zSGo;0ReUy-)COkUPb%|F*_jy!D1xjwQwd9TdTCGucIaeDA@^X7x;%C)%ztCvG zDb+$f^~6So_L(}87xzSa>-E^S>}(7B9x*04ZTROx4I)XOa{Vo%i4h;KOv)k^>9FjV zNWQIL;G5oN?_S|t$U&viK^BncUNR-KHjiD*-M-DK`8|2;Q{yvtQUQBqk(UM#QK@@g z$mQlLj^BQ`p#wQVBJ$J{rXOz<&L5QWA8uC~U<55wbN>g42cX`m&h{G=yzmc3y(iaO z_Ww4Xa3h~y)+Hq5g(Lhrw?(AZk%k4^$;-wBh?av=zI$GI{5fN^CfMZ@R8tg`loYVa zzeBlK$P#3fE_?cw-cPRmMIzn@j#{kyFW*t;&oOm;4MoxlnXGYl?>I}0k?LjLg1{Iwo@w|Mg4J(KU(o>uqq(w{bOoM`_kR8;n`D5~tf?F;2chA}PZ4QBH*W!Ob!?uB^h z1W}2acQj61Cpux&*m=5V>V()R_G9Rhacstv+0W2Y?^r*444>8vi45g7We2z$E{NqL z_|4VikPG== z*vTRPvp&H-=Sf*W}_A>4ca^C zP3g)o!1PZmvF1oZsJ+h9U9Z)n^A)K?Fs5DrJQgp>W1e^f@`rP*HrPTTNxHXFL5M7J zY=A2Zx8nC=B4o(RmoIV1iRe}P@FBVan3f{dS)R^^vEBdy4l3$VFa)J=TyL!jM%})_ zUqpMuN><50X8USoQdTk{F6h5ae1;!=vpfO8yhpNpU8&RtQ2b@2sW%12YarVT--r-h z4pu8&{dd>+vd3_lnS})@3JQv?Fc@_|(`A=qxa|HD$2tZ!HPEqd2a1IwSf4@^DJWLb zV1T1TFAco}pDDBvA@JS%Xvi07EF71mM}};APi0;|RK9;7d@Xjm+!2@*m;3oyd~b(p zJ+TQa@rJAUir8*k8_}4tsv#jMTD;q7Sxxe8U?Q&i0C|Oj;i2_*G%p|hK8f%)52ZV% zQ#>!)wrLm7?S2s@6FS44y#$NO_ltS?S4_v8pd@^gz#|?Yg^*TQLq%-73)1!(P57`I zduF3B>vs2cwfCRIZKEne@0It}&m0G3b%i7$8ke(ipDd-5PsDUca`3b7JlFbJI zseBLnxAt%hwa(kfNz8u>+?~gJH@~o){~Oq1CsMV`DtQ5k3s#<)mL20O)(X|(gRWZh zf{90oZx9<3PU%BF@jm!YcrWvW(F$x}7N^g6X7RPQhSYYVA-GuNnG8XizAi|E1{vZo zVioGAi$dk`-F~-E9VFs?WxS;vbN?MFE~1?Beb0-_`FI-oixQJQ18zg@V91g#z%dpv z4ZF$PU}HmNw*(x~2@8YyztqNc;yr=3anEl+>xlvct+)44n#inv7~eLL*W6%QDm_`N z3g^7c%LTh>5fn)2#9PG~a)q>(9Wif}%GU7N6jCC?lBHFK4Sp)$>t!abRgzTr-kgDNla*$YJ)jUUiR;mr&7y zHCHuCSsv#?x9oLh`T|YRu{5k<8b9t0RUe`4u}--_Ndgk&WPG;xto=r!-0SB$JTk?NMr=EzwXUl0I_+FnoHFliO}s}R73|2ESKWOB0whTJ zF4*3`f4Qp@%sMMKBH z_$Z#gZbv<_v$SXhozJ1bSc)A0c+vYB-451WG|o$rTBZt#kX@yP7#VtD$5Z;js6m_l zNon~?uXj;92$bJ5of;dDx;7RAjgdym5)4iGIVDHtQA-hqa;U+TP_}kGvu8_q`8O6J zYV_;mde%7auUbR_c->4CjI5TT&dbEqqcLH_z{i4}ytW_BG?~go+57Z~n z9PygfZ{KTfOCIb{DO4fIKy^8oQ`(;?usXG(=dqa$_c)=DK}+L))b#*-b;Y1T`5+L3 zKrGOnRxwMB`;`CeWMTqya(DWgC-H9o+vhY&yk%M+h^pkYuUqDQ$of|@)I3Zrw7o0@-ro-us7=KlPp&%=Lpa zovp*Qp~kBI1>uVC$6Ion3`@)GA2&M}B(MvyA#>1w9=%C&#wQZrs>v;Fyw6WaQPTTE z4USgqqz=@~_-R*O6ZPTPF6;EX)f&AE%6dq(9`m7Js0tw>YK9m_Od)n{vY4{5HD>CG zjlUM$^6(uVN{PA$Ic-~appR`+w=4glhMljmgv3MZshZ%Sl>*9(D{&#u2N6J3i}a=| z=shiZhSbPDgL=h7^q*M0MJzyRhgN%yO)sz8IAY;qySOZz<7sPa9m}Ro%AKnw7PwFQ zPS`^+=x7Sl1F}fZMkzo?KpTcHl}{XpokUM4ap|%x(zy4M(02cjRzj+k@{6rEm-U0N zeyzB7Oj+}iuk7shs_Z!L`j83xGL3Ch^79i>1!7Q^8NV6MRT?n&IV2%UjSlg6g=M?_ zja#S29(VqP;>q|@=O;wfNAd68%6wq(OX6qN|7gq#(kZaKgU4jZC)#5EfhEO)@+g@E zC@PB^M-u19D|V_>R$GnBmC_t>5<3c}?zSJ7El%=aNuDWFp|tBa-~`Q{q(+llj0xc_ zy*-|Ebw;MuP8_atwg2ul}vZ-_{4p>-03gwmX+n-Z9w)Maki9=|`9!ZXyqSgT^L zL@$D_d`y2*uE+rG?prG*SnMB&39F$N!EkiTq1D?uD|u;cTkJLVq+5GG<41+nm7T9+ zX+&O0&&OK4bF6E6?kxG9N2jkl8DhTb*4QHgMEKw$0R5AhxhWpr>*HzLyX2g5dv=%` z!;Ql(K?1^6R#S~C5hz<85szJ67sIO6M17dHv%`>gf~MOuI!trgJl*_DRYJ5{t!wfg zSpdNXv(#Bf>bzCt@)Br)TAp%x8Quyu9x22BFx248_VJp}C~ZfgUEU+^$7p+^uYJz+ z^qHYH5I8)uIn`-&N;Xjg0!5?yrt|E)$}9(lN3AuOeYP(oFUq{b%S25gDc@3@f7Nw@ zsz&M3y9_)jR!A|}zOecHJbd8o10E1E2H%O61fkP3ivskw{rG(ZCIHkG)X>1~t*!H^ z*YXR4tx!IXD~`xiq40D`j11?9N7*_#2I$$(6NS;iu+c9}t!Wz~8%=== zrlEgA^#%z`ZuclNjD&`iJNJ6~sn>c%) zo}Z^n6l2#-74WYQ7Z~zP*kP(rjp7v&_AqVFaUGlG5!+LEG-E zlck0Jq2{J`&V9*&EE7Q$2K7NpA_uU6til)KkxrwF?5j_1DSH~|u7QwpP$4&xMZ5N- zP5xD0$t+M-FzkhSUm(SZ=!Sjy@*0mZmV%<;QtJao7vmagm!cSp@5k}12cnluIW>>) zWsIhx$<0-hUkOudoJ~evDt~e>hsyA3*ew~8f=01ezJC2eEor0rbU?n?XZ_<9+S&CO zj=FVLuYOZ}7q5(*>(vj%!?nSQxE^*7YxSPuZn4+pXJ)b>jj^3U+OTKfF@&>y^jS8e9*ea*vshZE z=YtLG{A$XfhH#JOeD8{~YIYv-$0h^lo8#w|jw+Y^>!+sgUr~;?t&^(hT=Tz+n_PPg zLRGh9>9ANk9E~h3(?8)uY`jOVL9e>Qm`Wy`NpTm%39{^aIs0-MChWDs{XOVN_tvK)z4a#7`mQ$nFLD}ms_hL|M!B6wl7G09i$=C4*S;F8MnphRY|t^QotW?T zCzlX<8eCBLJxiz5JgwC>qkan=qc$pg^}(8Laih)vbx=6Z4{aMYq22)pvHUSopr#Q( zX`9!_2^yY`7Q3EJ7coJhjhOT~7$vJaxq6{f@66d;5J7T@;_m3B*-5`t3n?|N`{G$yN;N?^J8u>WX-SLy3pp3{2AGjp9fM^*Sq-lrXt zj@{mtsLac_M<1F={NW#m@ssFXzS``+nu2(|nqM6}z-(@@aU(>>g7y`uX#SmjLUniCR&?#^ytwleooOPu0~ADH_A|*ilE09{R2`^zL>w|5)Zb$ z346kl3~NfmMtCJ99QA{6jYx!T=DAMW?~Vocz#FI#LD)Fb*3rytsMw%?uu_%x z2Km*=26>B!+oN*rJfw@W^X4ztHTL1*3enc)(ey6z>O9R0)w=xc9Ek7Zmb2_YuHUi` z*}7U+-kx7yBg2aqP0FEe8&=5sOHKQ1qJA3q<4TiV^|MdyWx`avpv#!My&Z=Y{Od`_ zqZ_#(+rnP9&p?i%T-w^xXg!VD{OLg5_U9~TN%HtuiJ5Sn;G@fMZIAO$KNeYaYVPf6 zR>)+Q(CM?9R9Kfsnt(J|o)5X_1-h~%Yks$@K!UWA)=}WIB^SI7@tA2E9ug5}Om<2c zwE3evW%Alyk3aZlNuIfnXdwlNz)P7Ejo$BtxYUd2oCeLqPwQzk4vV`7L9>rd^x$D1 zYdDx-$@IwS!{ZzzQzPY6rAM3N)r2p<_PxvPdV#HpiJR%fM+3Szn<^}NHRPQ0oJ`L= z;ybPsqgBdeoWmjM@7gx@Zglk+IZo~{GL0leIe_v=KXur1>*b)7((>**qX(Sc34;sD z5W59Io9E$!t2`(W{DbevBfoeQi;sJC<@F|=QHtj$#el2QmCaHh3ntVOEv%d8`QRu8 z8VB^9$N7h)UHM8bu@#59^e6_9WzO$~`97=OuYKj=1O<_tJoP!!ulEYw6A2016;Ju< zg~MS==XpWulICoTLQhMJJbQf#9TCf~c2LPzCctg`qL1gj)kfBRZeHFLRxdL__pLHn z-`w|@jfY#KdO!y>-Z!S6JLtN^vv?3cO!)mRX$9WzPqYZTRxhC zs{Q74Zpol$aTZHKlF@OQy2}f-gjD#e_V=w%iyUWAjcc7R+sNLgTvXTj37tDb_d70q~|*iD=eo2 zLxSJgfBKF)^E5bqqC=Dul=oWd!3U*Z)Ixz%3La>CCXRCUSrK%> zPff+MDlG35dxu2y_$v>&P=B@^#k@aNyu|Eyr&K8 z2u{QRZ8(P=tYG#6C9lJ?w20uS7wV@ypEzr$*px(E3P?MW1?k_%#O&=V;k}P}DL0{2 zZcp@<=;~3)8(Az%pnDR$#tD0J>Mw2YrlgnE9o$TyNW7_b`8qZ6fdt}1?MW|6gFZxMtrDG^Imzg4NwY>(c2(EW3 zo>c2erfxIUyyb!OK5I4ValYc$096GK^pKIoD?zV2?R`2@t`ZLckg=5+C^|np3R=dr zV1(s)G+)HiD7d+WxcqFxM@oe7HRHqQ-(SuJLm3y%o(|fRkLGk1Xo+l|f{KZ>+ zFuUVHOd;0?5!8YEX>tedgRbj5cHN@wYyj`%@oeNvx=f(5>sKk{;k*(ZsJ@&<|(Hlwi_ znB9hT)!`55i|>XE`d^V!ER-pLLjB_|vvxW8yMd_8c9$(d>K#Jx=t_bqY>rVom#@a< z#kI1s`m?f~xp#|IZs+9NQ?*e^{PxcrR?p~;_Fin|?j8+Hvvlp2!B;FNOYWGf$@**! z1B&*FO{)Uv;Gx1#HVyi{Wx)o;xhG?@m#+sY_8=M~8gQFZlF(Y+4t6i)GAjm+PB5|?3UA2^vh-5>K0W z7om>VIEWU^)&-yAU@27@fB_l=0VuE~MmjsU^DL%%g{mFW9QV>qHDD;~fuoN#eKl6n zM0XC`a}2AMSEm{>)9nnYUV<&CX5Myl2&kAH=P8z3pszMYmN@2{&g(A832|0aVxC4sIc0v7j0a()*H9} zJStW}6rMlEe%)o0nc9k84YRpw`U&UrXrnJ}(w*k#)Q-w%PCXvi5CrDtEuL0vx%^M6 zu^uv3p~YQ3Ru$Hx1JbDMtI8X6c>Q(CX3}|K@e{_+M3ov)yq~0AqTr^qVdA#%j^QgQ~LWHV_lCnUy*iwwf2~!n|?cbjB(Vzq%}` zi7RAMWe(;=IeMoC8}+ef$nBS*TEvGC`takXl|vIrX$yL;t(UYs&o8fkdM&sdT&uA> zZ9+I3F%5e{b{Ay9Ps*;YO2Pb&X5{s9t^{fs1MLEOO5Xb2o|wsH3qp0u4gGe@3x^3M zJNB#HeD(){=Y5W1Oe0YH=EBF<;N7-Mu48dl`-tp~&V)VV}i9 z8hXVv9mcn$aCG~nVLeZ$^+Vcj{kn;VD%!=KjCB)GGIT;#%D@amAj#kH_32J29dS4s zC_L%1*XBS6Rhp_{0eQI^`cYVTa}>E?1ZLtj7s)z4zFLk7v6n|fz}%dUGGrYdQG4or zWE?XRCh3JcOCDkZa*1Hr-CjODR0li;GDPdkqeG!^}yN8pN zzcU+G90eyKX!}>AvZDrSnZvuGfs0H^^ZDUtCO;U7i)k~9?gZCkG_bbd%!GIQq0FV$ z^bLWY5+40CamP&bAwG)^Xs8W~i{J8k9`|&1d3rE{nb~SF=rH!%rw=?hWr?My^x@FH zl@9U%JDWqXocmP9&}YwHeEYV;LyW|EgfR+LC33P*Z+ou_lfi;blw$%u#!7K4+Qr0V zT%q`7*}*|!nN5{sNR>kTDBTv0@j-lk`&k!ncg0BG7-79&xkRZ{xtyOs4Wcs{Ur;%0 zyJD5LcN%Jhq1q5Il>BoqChH@Q3$h_O$&Bi=O8v6)5o@b2(O)ySqUxoKt-JKX&za)c z0@-aGgR{F_C(ABD6<2N=?yk>LR>^>*_~KStM4SN8n_9hka(HE9;{T{Cb{x zBu_ajCEHtMpo3x9iPbDNw$^vIr^(|wGlM&iuf6U=N3UNM%iDFY!~|VkwLsW74>qSV zNlp#d`jow>6=xQgR^)=DB36pfhS=cVF?hxmWuc1ou9!GGv#rK`qz>*~(u3Hdw*_N(r#9&xxkdgD+}K__dDDT1^1 zCRB@9tnfQOw0!HM>#U^^dfW0X(_;4owyeJ*@x;z31Yoy=5sbfe!dFNKVN5j*mhkg+ zrPo~WyKqXD) z>uFGqB!Vl}`iw5U!|^|iS;NVAt%JWWC32y)#_k0bGD63!T02v{OUKphN*URCsvVZN z7&Ao2)`#=_6u!RY(C#~d^3MAtGGE_w+x{W&;L4qCEnHG|GD_5@DL1w9^>}X-Jq)>c zy?n4*Jztr>`_i@Ux9{|TnU^{zy&v(Bw24IV@G5X2oe58 z(Kp9|=ZbcN8SWdp)8LrYUFDA0NcZ}8UlsG0wwrL>i`=Z_Y)f6aHGA{lmsJ^%iP=7q zLWtYKPab{={cw`8*Ju6E z?V`#!V>o4dbC}3e|~?7cZU%P=cC1sbjE#@mEwuZArrQ_!6j&w;~BB_Y(uazZFri_kHKus zj7N{u7%YxXch9kk9OA2*uB-xrMa7;yql#rxCw3CIklA`X!@-G~$0Jn;(JJIOA2E`h zJnAyW165S^c9WhQ4aR8{nr1vsGSSdlm*&jY#LjrOi2XOR^VP-??^v`Aj6e2}Lw}9k zI7EaY+c&ERC7Ebo-eo#zk%LTPF0+V#h<0}rZZ*BVC@f(|Cl}u81 z<*w@uJWH|^7K9xTSKAHK zw%+lkD>l|!pUb;K1RY;R6m6@cI(Ips(;YmwTk2Z!717f^PD-qmXO|`23oKjjgYsSd zglg#uhm!V*#asrM%gpBU;WZ}Zl^v!1kxqD0dFgQ&_m0;t?YD23&AGJU!E^PMsMJ}3 z_@LIXsf> zH?oB7sJNJHZwX);9}3~EUog|jWw*vluPHpQ7mZ`igbbf43>Rk9CqD7?L=Z`>L;#eB zoxy}uZFKgm>x1xk)sM#yRBMeT-xAHJd(Rt!G0=3KK)x5wby7v z%icEFSD0wK@!pk^nfV_XI>Q9$A~!AWBM?xOiKM{LE4R&eHor`^pdZ7*3dQ@z5) zk$||jU8vF-eE_%lH?M8UtNHe@F5&AKaDSfKno2;jxpBWAxAY`(;PIDg7FAf!GxwsEi z+_0gD^uTNl!;2*sush}$wS?nRGvre^6M|KXL-A9j>t}j$%e9bo$ZkSY9z_j4)ox|* zaV*gxVxuAHp;c=i^8Rwup$p3QB~HOUfU@R1Cnbo`Jv-RpvptM$vJI~$B{~|PE0@m` z6Y>-@sa^iaq{kH7tFPXtppDp=uAi(&hPel)tk};CHyX(Mjxvo8vk*zBM+%NiDeLTS zaKe2{JgClUVgb_d+$I)+i<@zKSZJpqxD~th;>Gm&rw{`_W4T!6KGps7#&))Mb!H8@ zbhK>;QG#j_v|B-T&hE2DY|+i2n~p}%?b-LUONACZ$Ktcu8Xt)Aq3_RGfUYwAP2;jq zl6>aG>$D$<9t>6{6^$TIZVQgEtoqp!o|6Zl3Z6$qJCy`K%N@%G@x3FWcts+?29s@U z(4ar!fp|V;o>eJszt4_Jp|fhhXr847{-;NUYA`Z>EJvTWrSwUK*B34=$lQ^eE?-eT zpxz#2`LACM32BIJ?W{x~Ho~C@VKDBHt#O|7=H!BA*?e|4zq7=ojR~3pea)&5BHYe(Lu$MiHB~o~oBNHEA0o?&p?|Xx zB5L)`FR+V+d=`4%^+2d73U74O>bMuI-LCqJS#;RC|eas|-DGg=U&8Tg#C<}`WSi)fehYa+1ws5J)A zSs3-I@Kya9pXX1}oO7bUxhM+Jh*uedg!1gi=Dwv1`%!v- zOMAyNs67f(J$K{69>bBR)czCSSgS1WmpFUe2({OE&>gh`4Jq@;OwjH)j+aucF>Or2 zEM{%ga|%`tw~I`|#B^!GA=Q$W#N)jfSoF7haP9Wvo`G^BrnNLwoOh>=+b-Bl=j%59 zaHppSbWYv-*9Wsi%sTrqO${ZP;q%kQg;XAjJZp9+5Kc}9H)iB+jMsSm7 zPer|Mz4ktPxgDu7@G=jZ>1kzpgmhGDGjaW8`sWOUMtEAsXG`A)qlGk&;@BATkrP3qh-zrnpH=M^%?~A`f+hU$>sH!y0JHPWk=Jul4Z!nou@23}?|QZs8LrR>XYnZBv9Vf}EA!|b=6xr=Lq`{1F#RpB zaHv^sOPgC_2!&hevA&*=7jYEsO2J$(rr^)&!Gbs9j%JBhV6|Z=!1IfSv*ST8!x}JZ zdj#)&x9UG~>1W#NXV?m&#-ho{bhBO9#5b$tyE>X-BkB+N{B{*;?PSc}r?)kT0!$Mv zPfi!1`T%31}xe{F^q?Usjw_VUM4eJ0D~yn>|EVFn$K&SO>>B&|_wR!+ z)TmE%@oPi*ELuDk*}^8rmix)b>IIkh0LK#FHIkG0Q%Y)RqU#e}2>_*l3 ze9Io|PtTdpT>-*ymN{3Ihl0lt=H*qH#fXL;KfnHr5P^;J8=-hhP4MZePZs-|ugBaP zmhj#M69?b1ASd(BdZyezF?wmdp6HZnNv@5Z@)sRmwX>UVYWVu7y!Wa(vY+=>nS>gHxxG#fvlT!dsu_5sY~zDE)n zf*N!-G65A%*n&o({j{;I@4R~ke|&0O0N`r7X+HezKbCM!ys1+J1wL=A!jIbZ^Fq$s zb`KMwg&I8STIDD0+$6h8W3ye7*HaCnbHrkc{14UWrivIZ;rI>?FOY^>)~gLm@jz-& za)*^l`its=zDs*k{*09fw3j_sj_3%8R{Cx)zw;k%NeI401V(93WnefcO;2RE@Lz52 z8O_GJOcH}c_WSJK67#AKbak{-H29CQU>07!kQ*^*Br)m^Vu@hdx;A&YOEEb6Q%BHw zyES&rA+O>|Ko%_FI+PT>)a0IqaOkH$N8r4$+h3Q1c6S7i=lr7v3x{xhj|XV)P;9VpfAjLvc#)ZrdIsLXK8S)gmuy95Y)V^iG- zi;Qety)z*=xoWd0eIy=Xj&CV2X3;G2m{HX58P;&&%VtaA%IyH7<)kI$T`3V-LtBO>u(F~4%9wAQI$)@Y@Gw^era!6 z@8DeVMtzkD3&n>(Rphb6SC47wvkX_ZVRlOiJc?f@J7Zac?iis^dK^=(QK3Mr67-l~ zfF%(=Ak@fwgDoJ9A~cL1Gnv08VEB0x8x-H*fe4sr$Y^vF+k`%U?s~FFtNctOKp_iu zE`YwIfCXI*o}1t*M8yH|%2VL}pr53;HvaU|l9%J<@jEXuet-3S#S&5?aT+eg>ZE=R{f?7ae znH?qa0;I55o?73XPt8njGwD#J)AxnFFvD%JhOVskn7l2;zkPQ$=O9}*mQjgim#{tUop}vfZ3C7y=joi9xbC~veh5-{K8tLUXzti0a zj0M=2!}720UtO*3kN}RuDCk&nQcdnf0@dAGOjm7kHYJ1BZ)<3bmZzE9!=J)!f5HxH zv%PnF6@|266*~G-V1q@65PWY~%7KVqiJ6TCEf3CDa?v;Udi92{yzwW$s_J*V=`KI0 zMIKTtdq(9iLWDXT&vuI48ukT-I$&e+YtCj6jaIywg9uFnV_!>Pc*0KRCSku0b6^MM zdDa-0-*UyO0yI5=K2GfdoJe`UN`kkkwK7i|k4ZBeHxIk`OJ>@q8=kU3Gd3uVv zyQ5e}kP}rwlz{E3%|)4Yc#{gi<^mpB)&ah^r~%AX_~lQ!yjt78{@%)SRi*;3Ty=Ri ze`vuRNiOJH*(U$4E7VpmUVcll5D0bExIxn%_YBV?>-Vpm*(w@iLo+a~32e5`@QLsP z$-QQ{&?v$n)39g_(#&O07t?i^UD9Lg2Ptk}zp8A1%k26nU=>*h)A^ySQE!+AZf=!TAGkhZ-#0>p zJ4sIxrby@9Z?)SS#5WVUDt1V%yN*wVNj`f9uX@lI(-yIwE}K;WOzsI;&(wq`*B-wb zS{D7eNM9#>S685XtYWr}-@xjEc}xA*&qp@5q}4D$(vp(@A7k$w&*uM!jYeCvv~;Pe zqD!@AOHsS6mZGXuVz1gG)E*&Lb=iBb+B5b}(pK$NBVxx^Gl(RJ#B+bg?|Ghc&hI(r z{2_mMc_ksY>vO%Y@xF6lnPvEw?2$1E5&(XzW&9{>Es^2E)Ix6@5EinaXlz*dP+rlszzm(f3m))08) z@fnuu(){&iBcB5cO(ZWrefsnr7%M+%Rn}oYNth{qIJ{L#&6>X%HtG z4j0`t0%DHZ%jXd*CvjH=22Sq4N=$H$r^~=x8X2;I4S}uS+60z%mmyyDS3n-i_7yws z*WX!^uk>-|*i@cRYktq6Ks_q?fv=0l^(*FmT@$>z-q~o^<2s-}{+II|&Z>Ac_w=Qo z1+Dx6`~}0UitfjEHeft-;-7v>Dx2NGO@#bf$b1&NcS?R6OOnD7I>#-=eXCb0t!AsJ zfV>mi!TPL?DGzF=17QJKUw&RE339j;;bpGhcy@+E?g@=|08~*HB&b2R{?`$K-jMw| zX*O|QwRM8+4Z_O1I$rOuNx}&kqL=fbx#j7bZ}FNyGiYc2=w^eJHO$%u&}s#KJB^2bNJFkxU%q|gS(xUSU}J1!s)?QP0SmKV z;0RF>OYBmZZ2F0KEYB+?-kN=(M3jLc7nyjX!V4p^Pmc2lY26Z0h-6Q}iosfR&B&wE zjD`A@kAOBorzN-S*Y-t?T9c$N;K&yhI{s+5<>AU2rjlM?T%8pKs5vH%R6%K!>9sNa zJ*tv-2yPJJsYvX$RG%p3xk&X{)(t+`?qf~e8R%jjde~l4zNX{0j}z0Sp`k;HBDHoO zUW?@WCw1EaQoqu|?Dtt683At}tKwHmbhB}Bmu<@pk=~4{bv$vI3-eO^5aej4Kfw7f zM5IcF;zu`|!vK>?ej~u=|z2M0LisTq#JhzUC zJIoohIXSi>Y}|^NBwzjD-`3q(ou7wBoL?eRp!Yurb*D@Db2w?JqhX7mpUMqpm#vD1nHhwydmPav<{H45~s28FYeR);ft6IzfiFH7zAL2ADP#q0mI ztoi*CJ#Zq;4AL1XV-cJSzkWTh!OK2j876LxU&v8rN$?0oi+TDjo%3!pzEG7$XrIv_jug4X9a_j@fxZ;k9>!T)(zlT(RwNu&MX-)9P zE~YFoYriih68O#vJV&i{Ykt|j@7BA<&e=eO>GpSdhEGWb&N@I9GA=I6#Gk@-t3vSE z_qTV$+tr{393wY_2FfP$M6OntZn-@wv~EaBrLFb6v%~=DvgAibAA0H>abM7pM|>gW zVLG?2FkY?q#MT|(w4QJWzeCe-%g-M}H(5hKx_{-Be`qdb7kOJxLy2GrWg~5^VrdC(f+;H{zDbv2yHw$-I_UW-tx~U4$7yT~M@iyI9qFMgJ zb28-G=zJx1;Vw$alz!BBbI2cH_p?Y7*x3{ycH;Z3m!ertjKSc~93Y4}Lp2N2RiK(z z>Y((uD2}WY2ML}KCEvc47w~#N_~ms47zZ%D#%d7zR#thQ|9a8BFa+rZ#PE)99IKw7 zw?h(|%bor!6%OH~*Dl!@0n>d@&yNm~M5pgXgb6m%^$Q^5e}!Rfe@a65dHreM^Tr#; zi)zr$-Ui%!c#ZBuy;2WBi3=W%+V#>YqllX!A$=j=_sV8`oysrQ_1ka)q7C5j-C@6A zW^qCF%4AJF<2Rd^ba_WwjplqJrd_P5dH$i`FE}8xGQZ=`B@>JvwF|C2_pHS9edb=X zH2|o%Yh(1{B`Jrij9vwiJRfd_5CDlZ$6LU8eamlk2VoT%+; z>hUj3m!zRd%^tP8S9kOe8LfEdUZsM-_Z+Ts144<|Wx}jE+qezPdj9^}tpG zSqrUgi%WI#YZK%k*C|k(lM0m3<>X6+VSB$XEdK2i&UaG6*1vm^zA++ug~bXEf# zZL+$1%Xodd%fX$qe&c5h+xn89g7Cp9`dwRmkX?)VfyIRgZfyAp!y6{tM-7W_8(;oS zn_p#a-}N2Bo4tFVa$jutczdV+GtGu*c-s~&wAtGk4!lrxcbzC8`IK?xJOY&p6qp!K z3C=!s3mW+nb5oBjQxz7MPUTQNW{nEJHu9rod{qFsK4E+PhHQ%lEYU$+(wc10SGSH` zx=(#0aN53a+;CsACZ7~3!m(KmK_DrZwR*ATz!+0Rj3`MzS*D+Z3aLi^)#CntI;{UG zK+m2z@ppXocly8SbnsmOOzk)3(2-`nGQ*2?BF5Wio+;XQD)`sW`|Iv*+8wO)aiWy7 zgFa$szeE{^vctM8ecYgt^&Po5L8E#_!vRs#?W;hh{H;&tW3LjRNXPI@WuNe~t>@~4 z$5bT(&ufm*I;eh$(MCu@D8=Rzy9+ z*8s=#ceT?YQL87h_i1f0+ma&Mr1nZ^V!lYr_AskSwsz6Quf1V9=p%39yEs8JpJ1wT zw5AQN2yM8M63?tz_sXYGtLyrkksHh*{}jL%tk!~J{^?q-nmt=^0RqhK2!n+3qRy~_ zoyvOrRO^Z>>Swh7Yu!>vOM4g)rZ;w=rgh1Rv&`r-b<+TQ_X@nsXjZZGe2X*mFi5?9 zfF73Nd3W=w)M-DT6m+>!=`Iq6HyN@OqTg#niJ)mL3gzSX;$hkDuCFpv;9PL4b|BRY z^b(g3=g$G81uu+b=n2%JrYe2LRc}fYV@*~Rl4P&Ev-DX|H&h%Y*VZrMI%4_4o_|U- zjtT{o1AxtLABGz|SZCfmVfXIEy2+@JBt^#h_y>BY{}+b~<#>V;+J%1tTSnbpDVE!; zbbFP+3{sfZV=a1kY&E8QJaqfQn?vv~E(g|J*&vNKU<;=z7H6564|flpR&_Id2W~3E z01@Gwf8m*={P8XrOo@=^;L(R_--friMZ}% zJqAofugBSw4+&3KulMxYhv*Xq^ySJ^{*sA_ionttoC!Qh#M9|d!)k-GOs~GDI>}$u z`wmbfvf6GK0=;*8B?vzz+^E|ai`-_66qT*7rw`l|#y^;q zz2HomdQtRR`Ba#Dc)G*_vjfElCX{))hl)C247OiKOgDU)p(=Izi5c6z*?1rY%{w zuVOFg*=wwmkV_S#C4Nn&ixq)ZtmDX)8+Tt*U(HzG2hjV*2@DV^nEMfYdJ4%N(W*>q z4OCQKTIi!!fC700{?M?mKanuj_X@X8)H_c9;Ati;4CU?FoBx}t>sgWaUA)>JrooyK z%Jt420|ZB2EOjqwRs<}SM(#BD*3O#m|2*O%eF{&xlj%Cz+hsGFn|)Lr15DZ*q7#U} z3wKxRYc&ZGLyDt6n}BN!bJm2v7VSG=i~k^h!||4C)=e+P_^pYDk7gu}nz;NorugI> z97CXab?yK3f6U8y?E0VP4P1c9wK#A$)NHnvfPMgo3BIbJBoBj0PkiiHm+fo|Ql z!^vTj*WY@}Wag5jtfeyKG3B=kCqJ@me6{8rO@Pb#kwmRTbS*0sZhU8rZAV7{CSEFZ z)V}qsPU6K7rL(Jnhwel8^SS<6NC6P*8um=zrmncUry~$6?d4C%4uGEEpm&S^5Ku<% zTeewWR$DHx`Im%yT8|lY?7e-JMh+!0-*z?l@-5^&W#*)JA{?~8280mZqDhV}qmYPN z?c;=W|G7j37S(2x)sYiIsUx*x2{fcWA8c(r;Ircn`cD?%=Ni~*YI`!zDtyg2 za&s#EK7rjY2cZj84x4UIWx;h`Hbc}~JcOt;_Aa4&g0<&5+-+~y+BfNZY^FZN@(A=a zF;$bVrrozr*lmU#2L_97*kY$)BU4^SGpT!ZO1D6UQ`k2QDrJT;X1SEe45ilO?6jOx z%iCOMw;c+cK>PbSh5`v}PVoYHHUgG)w&Ty4VTm;y=Rm3A1FFoR)Sc_3Qu9Tsq+0Nv z^i5W$d#Wn7Hk!@E8)Y=!1?FSUrNA1pz5IJ$(7J)g^baj|{~1&g263M8^*I9sTL) z;WitP*L+R=;(~}Ff@h?08Ew4F=!q9PdX|qo$bhG4EUS;=@9F4+#t7H5d(&NE8F$Dt zt4;S+?`;ZhUOyF}$U$drc?QJk%9N*l2d8+zaOxyI>^9r2FblLIN93Cx{X8BkdNZ|M z<|U%$JxfI{5!|j7Q6`3P&(AacY&pO1{_YMULNiAZeJ9YjE=)XM# z>aste;0YN5dp_{dESk}TT}qx*v9xu|Lk-B$EYe2*v7>D1L^h;+(;WqS%2L}j^XGyh zAa`?IWV-A~we0iZct6m3=uEIukGASNAriDr`^3}JuwpXWeaH~dSKQHQD1MQ)XLvAN zUxr#q62to?KRzG^Q2EQ`4h{~6auQ)gj4}`R9rkpb!0b)V;|W2@DN$V<`#n%;5GoT+ ziWl5pRP%H1jOjO-0c|(oXmODWR4w`AcgftQ!mEa;YzZP4Q*FvBR!!%W?DM|1P~i>U zm2|(4kDQjN={f_>4@F1YEVodEyN$GK*mER|l?BTOEwqzfb-9!kW?@o3XRh6b6$B%x zl^q@}6q{J=B=)rY+$s)R;V)XV#?3-iuw_nYisqJoCl&eq3Ek|jEIzDGv24Re%KxIpV{Mj785;L-OLB(NInTeKkQ>724_9H?g*Ji*)Wm8(!LEOk})MiTi*70bw z(t-FU;4{aB_OD;iisiYs6SFaqKIh&$F4x@Su48h(BBK`V7{y-D&&D>hJH^d4YNB8N z9_jVl7d#@1}`Z-G;u=2kqm_WGpuB=mh9MiFVky;U>@Mgg#&&aJg~W*DFyR z@+5HASYlrM&RGzCI*~Ur%nuA}frPJ#dhBoB^mH2kDlWQ?Y@2W{@L0bkY3%Lz#l3|_ z;@hPb6DMd@3<1YuHDKc;QXQm&gO5uHYrITb=OS$s#aJT_( zB=>R=_QcT`Aj~hu!2e2D0Zd-QA0HrUNJzPOtDg1*iNk zrKKg^TXmoI%wpzEC+>R20+_+D;c-g)7-T_%e`llyatl6&xpSQl30-1 z(CY}`6pl7;{@~HdW2u!Ob>)lwi+d*x2MJ;$po&BDxmwQ#{CV%T7uH=+$tHwG@TbUF z1xe`O=@F(14SCL{7>WjyJB(AIYvAxM4 z1fqhV6`*aXq~Tp1L*F`+R8M?YRO%Mo(EsQ_ldMueDkElQ`pkj#>fY6o2$em#e$vbeVvevYY z-Q`JU;@XuKan0rnN?FjO5xw2<7<{b}szfpI3JAWQ{z4S^@`*R+CX$)mP$N z0P^~PORggM(jo0D69|@3@3mxt@gX`vKoSxWgO_Pwp}KCEa>-t6=?#ahaoq&0vZYk} znAnfzI6Z2_p6s@tJdDJzHD@9q7uh4~`IzCqVcg%}3;cTV0mb#p6FO5Is%U`6x4vB2 zJx1K#2&bYwsZnBda2od;vEn=jya$FGiX4gcR;W8=`Vzye2WA)%(LeHJvWmQq=f{x} zPOl3e2Cn!E-OliRDl;mnZ4Z%CI(&EMNNTgTzUE2YL{Qnc#_d=Ui@l^Thehb)<<^Vn zh1GF++<8)xW^3*WN5QF$pCo_J?s)7}HlA<}bi6-&t#M_hLv;hi1i({MHT%*T5L$}D zl`Pr^dnz?>NdO^aaE#$$swvLv?(Kzn2KFXNAx1!z_~PM=g?AREp*>S>t?@1^(5;o+ zXsPq6RFq|3({d6x(uqz`c;ub++rN*b#NG`{Scr5NI^VS0 zff3z@AGgT_pF`pMWijc%HX=m=ON-9_&A5{qigv!XmGTP zCOfF#KtYR%=H~wci?~$xNJVN#PNf)6+kHQX0>_XErYdp={_oVvZz`jZPp?z1sHm=V z#f;qD`yO@Sado$>yic*iG^(dWn(YpU{2oN5#2ABrYjNe9j^L=dSH^@fR#}Pw9rD{yrJsH;L@lDbiB8tAIx_KY4U2z}1yd1O6;Y zMfR1H*@YA^GECpAwQtn9zt^T^_Gx27Q7cEuU4?Y;lk{7;qi5zUKEBC^^w`+3iS(}e zV}j55&oXqk>5K->zbBWME$s`JxfPgpFi!Fa%vSE6`0?2q*rpv4ijIxE;$HyHfgEr6 zZ-%_99&afIn|)~J@zWfc{yMVE0qPgI7uU>_oRyd0YNBUPpjPlsaw$y#G z|Lnn?r!1ef&u7(GJ(mVKjLHfKfgIXhb^Dye2QVIUdVH#QR}G=)%G~u74p+hJSf(7p z<7>;-g>axp;L6BlUvuCY_TlYWN-fj=|aWD3yo%K2!T!lp6~RG~+_x*8R|y>djp((QUF ze-$G{*+pJ-x}reDNG^rzmE)fmXKnr@;~os1b$*=Yvde)aR^|CQE^$VYfQGRpSDdQ| zs((F=-DFHHLar(F5p?3^wGjkgt=;JP0nFu|YakNz)3pvY5h-P9PdgDnr%Yrxx2B@% z@)c{Bm)CcO?G$Y@GW;9lvT-v>Qg1hWJ)e>>S@JeBS~z{eo)t-$IpGZtvcGw=w#ZMZ z&d1$O&BwV;M>f72tLT2qug6~Ko)YU<4( zpk}DNnSHUU@rKOa)JC(|sSzBNvcIGJ@sBI2<{`qcCOO(xF#n=okOaSPZbfy}lt$3{mnLwF|VdSu=_qr&}T;M;ZQ z>od3NiiKV{sA$C<+S#VlJMxu6Qj0pMX7QYc-oto(r zUzv8fWxbx$rfT$1M~95#P0&Q`GJW9Ff@Qm{{?QMyZEY9Y{h6y5le(gBR^(Npmy=Sb zwe`?wQcde!jKkPoqz4Lp?2NO`YuF&_nA|}6cwi&LKLP~f#Cm~=FCT$sAorWVuH7ur zmy0`x%**KLhP6?!<&*b#{86t+8`B~{&^Mvk5k1kf)OO$1f;gdo4o~Owx-`A=SHp_sw(m?bX_M+i~4+%`Ecpp<8=-ezpb4>I-OBJ$2HmUigEW= zCLCzHy>D`Hyr^8}mw2I$0XLegR5`f`zq`hIJ=3>VOTXSm5UT%Zm)~{&WrV{%tl43z z#i(D7`XNA)$s50rx4Vi}upt(U>KJH_ zvTdjl>MFIecPST4P|}xTTjV|hSf%R==$aQe5})60w?DS(@@M-36dOg;QSGSfBfg6U zCieYt7rni_b>d2L!S&mIuuQfJ1P6t+v)F_-0&yl8Wsi%cjn}=nGgVVYoL8@1-q+wexK@m8-IcRoJY23*kUsX} zwQOCi{Grma?h8YKv#&J1Bpld20vYOR-w{E{8eH*TKy?A@1l29)b;;*qwb6dTRRiHI zI?|pt3(8gQl-J2<)5`0Z$}+dr-}*!A2RP~@UC=%jC)xe`!UD0$`jzi9lXG?ZPd~NZ zOq}*YpmrUzK--@y-&!mUls9*emKiC|B*{+TS^YC!7aMw?{7ywQYnN{r?ecH)_GN$7 zrQ3fp`g9dG`2eZHHCY$8lG%d8Tiq6bl*RL9ciGIRE{=!0_7AOA%Ls&;E zFSkL9Vp*2#Dn{xXBy4M_GQ7s7c&4Pu@$>v-KM;!QVb1w6y4a&F#oqBZ-2f9U#-Z#d@oP)#xQh(R?Kga4Ysm@$BV`N_X*Pgddq_+Aj` z#OWIW|Lx()$mt|%;|FU{!{e+HZUN(I&s~8n{1XPnH-RR##O5v{vMQ&^E$Ru8v4k&< z%8^W2{MO@0l3q-aPmI%To2pkBA{Pa$e*J_n;$MIgb<#WeJ)=aSxN&DN_8OLEIx%iZNVX zIqZ<0zupz=*jPFMJuElHcJ~?7b&E?*l_jEQTQYX{-;>FQBj3KUn{3ghX&Xt(i#2bj z^q%BEfmgWRWxpL7o3FOB&RSb_)G}Vqne*I^dBsq?niU|jkaSlIMC?@Nr%*9i$YW-) z8rt1ElI#X$TQNRI7Ah~xmn7a_Rvo0(YBl&}JZ7QZuS=QcE!xR@SF+V)s!XZ#>)_@f zOxe5azjW+W2b;`riS2T4GJogae*kUw)vKLAN`vpQNxVb|v7SYB*}s^!ISne2UtD4D zHqR;O+&YFV5jGN;HjAU&QYHFoK8cBvdWtbMLPLudFfSs;CgCR05-eS()D~BVXx}6d1KpU|>otc9lKeo%A^k zC~1i*iKH!XU3gfL69=0Im%LRI?LBVBx;wd`fp%K2WmDn(8ztG}rYjAQ$t-xH+6qaC zNEO4;v{432OesZdaUCpZBW493$6+gxDDd%gl486!{MQo^+{;q|WDD*n<&H**&t{%= z7Y85D0_HW_Z@AUk@t*17fwf0sPrr=1NY3)GTqLTH3gkQP#VWC~G)TMawci?hIC!yK zd-E*mh;=k^o@$pjv105&zcR4p++yfH$id5P*Zwa@9;=TK-ZbczqY9H#&5H;8q2qIF zWZRA|FnjaydrON5@UPliV@XQGM|)>wM$7e#@-@7k*`pSY5ySklNGBW}v<*jAF#d*% zd$OrfGr2@m$vJ}9_Vx56%Ga}CPSzJsg_?86LHbhv2r{x*^!(;)@2TTzuImQ9xvbN;B_5Dbr@2^FmT3-UOl&@Ik6cQG>yPDEJG8IBW$UUy z+Os&=NhJD+Ic>N`8)7Kesaxg84hK363cF$QTg9`Su^DlDK3iaRHD*xBE^D}tCR}d? zbsrNYQyxp`mwusOZDtl7=I@>0+c@HG&RUDy9|;~R52rA2pf+3Pikb5U@>bS1r(!EL zwm2jpCOdja1|QF5=9r{Es54#rMb(SdyydBWg^dS4O3xTm!Xwz0f)I-aF`AE0d|$Hy zwWSvOJ3%r?=CN*(sjF?jvqA`R+BF~jG20)ianaY||40uiB>vNe85md(%vWVov;@Z{ z$2#%}v&Q@=dWOFV7riC2^8dl-DZclzAA==+Lnc-(XOEa%!I9=HfF&oolYc_B0O%GJZT_V@jtiTNFXcigo>EO-;CdTdZCb{z*D^KG+H}i-#p%mi@YK*kjv2 znc10$JJQWRw0^~rjR3{P`@J+ylh&clw8-T)jWD$;GEUzqGZ5eL$-V~koH5Da{?K@p z;bj%bXm->g#BjgGm`@ESFztD@yHoatxrvw2h<`8?*r6F`t;~7`5=K4!3;DlJ4~82M z;~Q6Z1c81bz8opKOHVdx^vUq8aoZfzXJTTuB#atWxh?46cAP0+Bc6pXJ z=M@3PspSb(G^Q9l2)QcEl2Gi2dMZU6%Lt?H{t-j0c9hK8*5^#x3yjdJp#`Oe)KAyD zc2H-O0dA>be;lV{CGvZ{NT)eJ&C7uiYB@>dq(%GJZSLLzG&Or@m+Xz(CQ0|{=|lAO zYAz2!}f-Y>aI-6@@Y-abfey+-!zld2Dn?#iNh1%ia}AV74xhr|%Hu zPH3;~0LKl++m}+jY*66Q_k!r{)DG9%$EYIeOF}P?WkJ}*vJW~5Dx99?tFzjh*aPqA_^9%Wd?I%*ph2OKI(X{cq z!8~xKk>Ve1sZHF)oNQdOZo2S&ZzLA=l!{1T?%y%VmeU34V*DnfqJ5%tsZ*OtuZODi zZjU$P13Yf$mIlw@69KtKl2-d-%iAkW2MgvIF4h@5*^CkfEG}62qtdmvlJho6#>&Fd z^`Fv)2^P2av^42v)6xt%9`D^BUv<93Z#hy27CZ1<;Z|7DY~6};?C>^O38oJK&l;wi zlV|*zLPVwW)nrs&zmADlC?oikx$T}&?pjbpD!e>1@*14XWH`C$fe5JdIT~FT#su|d zOa=|0qPq}{j&)fQm;s2;HG6{HHW!xj8Xr^Rsj$+~b$hmrBvVT0z`8*MsG?GD_26lf z^tXM-X_PYiakhyZcNg39vfY_Me(D1tZsp*iq;bFc5E}1&ey#JDJzCNIo9zFI{DV$d zF(pyS2k#l(T8)l{>T!JN<4Tp=kihB489$=|?o%$f`r`n@-;>DqU6#m!cr!9CkKNCe zBqM4$AxK?u^&v(vew@0ADbX3`etWYZFqmghrwRNQ$w~!lR5UJd^845?s|^+B+0Q*3 z*er6sWclNp$lfRJt1iuZsC`-L-3^0!s=!Icb7Uq9AuqCfkpb4Pdfya!u$1U7YWn*< zGKp#Xb;fqwBZpZg{$e)g4tW_p)V^J#4mbml&Cl=3xEd$i4d+~20-LVSFemp~&M(*xlUTouLL?^3xqhp0Tt)pr4N9GNI8vQ(8Wry-_3@qLhpBDg6s3>1NyvXIG~@_ zI!*kYqSqZ!%J^8OCmMhehb6~jm@4b1rC#~d;_HgN3SB2l8*LzRffG*4*Uxsi{;Kao z(ar7*$Ou^(a7mMejtbMkciwhWYKIHhy~gKT z99|_lZ{S^6Tz6|^Gg{zq`*(9LxoykP2sp98&bj430FTt=07#vn%`x~qY`(leUrM9v zWj#H{rD(qP?&3^C=B6T19{=r+I$2U9jmC!ZX|A=UP$oCS5rzOi&h=h}8!upJ41}=` zBmd&!y4xk^#hy70gU@0L!w9FkYwW5^+)iKaKqQ9+1l^0+98HpUB1-k@pE5B|m(;|0 zRQ-CMng(0$0*?5Zo7S~WBO}=5o=ndAt9JI&(&CHx>mt$pbdZ*pfj|C}1vq^~9q1Ev zJbH!j(bo0ar`D?ythU&{X3!s=yM8~zHz{_Qyjr!2hZ<9SGCb0z z+@^WqOW+#^;Zn?ZZj1G7v)g0RJ%`pYF=pf$L2-Mp0eUd5#Hoenk#;GB1Ag#=JneJ# zht}!9$CvLpJ&_#S`9bPn@-A(8@?c(1AEe8r;Mf1`07y!xma3NR6+^NFjQu3v0D}g{ z-2q>dQ5wy&NS&#M-)VP_n4XoAO- z?Gmk$l4yuJHa8UZj2@zv1NGIFAh&s4M8yX5RvsYs*r)^^d<)&re{kwdIo< z=sn2ql^yEI@`TYo&Uo8@aQ*d*;iI$Sps5y>lN?eGS=jFKz{7)eJg4QK&pS^u=LP#>N-ChXK|BvXi$HfwQ zOUNAXp&8`-=olNXk7_c;siZgfjq+V%3Rm%^r3?Q(2LTB058i&?Ko5M9$>Quk1fp5O ze&sxcgc%oep2i&i?bJYp?ccFgM>6DjD>eDl0!9VQJ3ha1&RMn(V7|w+24R=|_YpeV zHT%B;fe!_9$ziJya{|$_%z}7Vkl`D2`O1~>52?eepM0!=l9Pr%N7}cz7zz z*^D0zNF2bbVU^P0WPEq$j|t6|sE&DF6=`V#eU2b4?0lb*c zSsqtYvsUHa<8kn=tKK-!5d7e`^>n5XO(>!euDFFNM{1_==AW5O8x>X6ge4p;i!lrw*drpR!QCT)~j(&MeKG!(BYO`KVmc?pSRhGwxEvda;iEBQFCW z78ACTKIm~-@~DKj$8!I(^-;MIbh2h-d2hu;kT@afza=o#pc!2C+8nXan-U8Atqb1* zZ2i5gvhU;uCrCp2&0i)(bAC}2MTTCA+w7?OC z_WQtIR8<$P7-M-|(Bl~FtdK!nPnjnR(Wl>2t~mJmbZzW)S+AFW#Z9m%J|475|JD-v ze59tqfXiH3iKVTEO2@BPpvTtZd0KHhji1GIekI&efhw!KLoV=Iuj(i=Sy~d!^Z}Z zZ(jN0GRiTX3+bx~AVP7K%JP(X8NJ3e9nGf>xIU|D6`VkSv}?cgeFt-mw$r*VX7Ods zOR;%qn`tR>P5Drh9yO}zir{RsZIAGQ!}ztbegf>ekWgyVmKU47!QY^K4Y2ao_V;`6 zmOtk4)Ds9h;)DSuLqr5gL)CpPod75zX2I@78>_q?up0V!9Kl_yHIuiJCRpI1P(0E+ z1f6P8UxshTJK!3zCHBCr&Jv$eg%i%a9nQlJXazV6jb%8JyS95l zJTZgU-A*TQ&OF~fGShvn(uK%t&0ui^>tPYP*RslkHR_YCm#!VkHNg>1el!j3DTwDWVWiZdwg*&b>mOt7s827v}iICegkc>4rOk4LfkDd=&I~Si) zf)_q)w@0y{SA3wpKWmG?ko5vibgF5?MD`lhca=XGy=}jFIWf~eB@J5*OMYFynz^~# z8+UBmkpVkA%r#(p> zl!9ntzdnIR8%BZ6_$QD!Ftr$${O4yWH zTuLU?nu7xlmR5L}bqD5oaXp_h;X?d{1}#M%EDZ9fzVlphIJ<_hAih6=b?R`|bk- z|1g0tQBqgfIDR!FBOd%(Jsy>qep|=T#p4UQTKm9svxRurQ}Ylk*~wIMe}z52H^$xn zXsH&qRr64*T4|O%^mJ#w;;$o2M9sG2YS{q!t^-i=5IZRS&-B1)FE&yNH?ZXXAPwJ{ zz`seq7x~{zgTKEQkbJ`G*iSx<&Ip5lKYHB0QE$0cGcJwq)iH@8Z3c-5?zZXlEDrKz zU?K@d?nJVJM5i1%e4BaMJ7NLQeqvYnT8iZ^1Hn3O$&w6HLWie2ZXSSOYVo5&JWY5v zu+*V(q1?}U=ghGd+qrHofbcG~h${IS3PG+c+d@p;>gJSfs@J*HGEtvu0Vz?9lY z=n?lxH?Pkr0aig?GJZPseq@AiyU0D`p%#C~4Rbj5@&E1tS3BYT_r8R|9PNJFO3g>Z zmX2J5{n>?WUL3PM_+R!w>(2EZsB0meDG}znZA4w1XGXH0C6?)w)yVs7JV(S2DSE?C z0g7bPE$?#>1hZo!H8ATfvA9Ph3dT4+S3BYSJ6QGp`Tj=z437hDPCq(R<-p4hsUjf; zR$q~tCMu5JIhVQiRa_F%{$M-|CiG&4%mNlm8~C%7pV@I1xlKH)1QSe>`(8b%Uf0T= z#GsFa*Wna3QPO5&P|z)*-*Is^iPE+9FFQy=OG!C0FYQ!ae!ndN|4tA#;pLQo#s_~g z%$|>1d~Q4b?Ms@+?n5oahc|)NZEHc>>xb%9_MRUfImQV?4J6swN`-6%gwd{8<08$R zlp4FiJAb^jPm{?Ch638|n?n*d-e6%qJ{?H8J|B>*$E5At~7iF?vplBR2F8wzDOK@N(cS&O}}{0qB0aJb62u6Lm6 zDIFsM-gm5aBAe+)nD1=DMb^n!?(XJ=E zRZ9N`5R!tRo8z+eFO2`mhXdAA?0sdI-5Ts^cl*2$3$s1hjHMA*XFN)#uF! zpvy;!z&Wqbj7-d-7EbN*e@VsKWf%9AG^}deHQM2uNDH6oiJR1!d-%q_$Hqo)wO>le zP@+f~Vn}1IzUCU}ud(}8yXaJNuE{*4EOjhPt7m0-$rcemLeNKY+e|c=buMJj@Zrah zI#t!IYI!3TP~%)M!Yb*B-=8Xbr~JoUEJX$d3EHaa4}AscjRbZ+HUXudyHgTEuoipeJj-;Dl?cX$8);oXc_7U#W}dNXwcKK7_r@Fn%K6x-O2E=?opxO!FU zzP(eEfk|WC(_o+7ttp*zA(kv$@`A{Iv=UAy$~T*HZLXJpMs#S;z8{@B*d-mkfP;(U zPdlM#{8FpG7J9^$KC$vd>$&3Mlbuit;7BGMplIKa%C~2iqHYKf{hS6eZmFkAkocQ7 zCgVl78t=mevPiPjI~*>a{>k#L<$}6#PL>IAl#q^msZ%)Ov;y zj=rRgM2g5OA5MD#lz0AEj>OKVjzyH%)y^q@q^Cug1A%J)qed00K5xlcegfA-eFBVO zMzDk1PrE`*`6Z=QN=MP|Wz*#N{mKApU5%^8l#jXj;aMpjhrT1 zP-%X4*outXY4IK1%%^TM*s=9i#;(}Bz; z!?}!O@Ns`IUy;V8wdv%c2`oCvn3E+A-XW6$_4_iPPB zFC`%*sdRS=(j5Xy2+}Pr-JOD@(w!1YcS~IbL|T;YZlt8^Js14y{nqdIJZru0TJImv zKX;vb&Y77#dw+J!o;fo~O3I6ofQytd_a*#PxJ?4=n<#a-*%`V1d?@GH#c5#c^K>*N zuM3wI>&|}0$kT(3z)4f%8dIBhMx+9CGMX9UDGr%EFxinNIu1Pr9ko+)NZi2866bnR zSN`rqwMXgZR0{d?=RBrNHb@;mOAkMQZ* z#~;RL^+ZUfN{%nc6qClq%45hVE=NQ+?3vgtTYWh*DfCRGa`DpMyYf^4*3X(pOqlC2 z#mT2rBg+i+{>Wyz{s;sE=HTOL_qI2h7Lxi)pMJjj$D_Js4-MFWWdLGqVQ?CV#)lqZ z##`GZxRd?Dl?~d?)6YMkhmBvr`(`_vncaoGb7!>1FhVx{#BY;-R`dDgC4Wi0b8)i7 z;$$j3415vg8{ONbKoU{t%)H+7VyfT0gQRZb;hNKF$nYASATpf@h{qGVm0>$m47cJ@ zOYv8X$`@sseg2^=HmWVf_c6qXBV4y!^5kQs{&jsMSk}+>+-uq)PPf0NfNjUF!!aIM z%l(z~5bahWZop8D$(H+8i*T_nEu*)sPwtyzusQ}w5^vz(OA#jIo27(${QZP?6RW#i zdBobwIhR#!3U8$6=5eXZ(!Z@xxn6#nTIPQBkyov^D(pR|4CNTlq$oCvcss1=@Okv; zF;;O)-}!}7-36tcQ8Au}JFASW@Z&aJnYJ~|j?9)E+ZEb*fhtkUYI!`5v=|AZ`sm6Z zM0U$pg~S<=lM)OE$Fi0~6Dey_I@gK@1Ak~t91W)t)P66k@3KgI{LX`KjoSrrWE6m& zNHb@2h!+VlgaURV;A@%C)v{Dl%PL_hg*f7mI4)*Fsh4&d1frliCUYWx-v{uzsh1_d znmLW_SMT?Sj-y;2n?I^}z$eWLtSU8tg^Xoh!;v2F&)iJ8S5pq7%PX_P4&Z?fwGk3= zeHl&UV~>hdUAOa4i>?K;l!hNAG=1Z-*Gc~e#-XI8zmRPE756d%>UMnY1w&m9Y}=BK zVx551tU5d_C-wuuS8hFxaz(H6;?UgA$R~HmtZ-aTNx@6XGHyML!!#^dP!cPe zFobGUmXC7iW&swaHe`k}b~xrpNS7hQ`@&y0$7Y*jspn}p+Vlw>iztXE6fx)>Ii`u9 z;=)Yi7XOjCsp8yBCfwPh?ssUdo~i`^5E)U9Z~09woPn>br~hrNpovkCUvNYO^dt}uX29wk?2l_gnamF(S4e1P9ukefr2bkCZ#pW)*Y zer{kW9@3HagF>J3J0Ryp>FGdVx#@1os8WH9(!`~K0)N*8Sc3||r#CVSj*#kYHyf~4 ziCXf^JNA4g9kX05e$g2tv}qW5{LiW$LI3MvsK^sPAXi1hW1cTqgp_nN3qZ zqWHap5VHjq7Z-Ghdd%Pj>|>eYuj;mK7U!La8}Pb1$^56~Z29k&6XsIL<{ga_5L2+h zTraG^E^6A8B1`nWHh?dx6E2Wq)yPzr%?A;EZ`U+3y9w*j&NJ;1U~8pyzuoKPki;sy zJgR$2gm{J35#>W&{yl`ECKhbC`WaX1kl>D1^k{+89T{ncZFPsAlc0eJ2Eg*NIdnzL z>#uOGfBbmxfwaw81MFm?_$Jcba=212R_-5 zlDW)KIDQ>eZ0;f>=oHR_!E|Tk(2n8(@cD9O2Q_(piR!SMQ4G$-McL=5>gX@4qUGFm zs%@&Br6f|rrhslx)r{8$7w@qz5xa!n_^CI_5Ul{SK}pP4#1^I!4*YO~(F#EySX|e^ zjQ2?WkEsbRyybLL!v6(y!80qpgE@c)N21ZcPOV?d3Lg8$WR@LPkoxVRv~_8}J_Xs% z>2XlI$O*UXmc2cQ9yAOLU8tR==p%{>kdQIke>eKAbf62bq~Vd#mFI|^xn4KDfsJd5 zp5V(3f)Jc7%zPmcEG^jsQWq(C@T{#HEmFrd-`jE_pbYLG$Q*%+4g+ZPIm zf}I`7sV>&~G|S;QcW9+;sr0}z8R_RNeT^+`(|(vQ^2xjkgs?9{QazEz*1aO==1m5FaMuRIoe#AwG?LG>YCb@~LndxL_1 zW(H*RA&`4oI|K)wa4`+x2vlQ37Yc(-c(P55EstF3P(+W+|oY+sWngwdqwX zkr}WoE_&x2yP{IH%Vl0Dm!xWzpzjNWZ>`wX-^%d+_gTu|G7$l9mOIZ3k})b09(|)_M3F%wPqwaaF+4fGn=?a*a&z&9M;%D2zMzJwVPp{hUVGA6gr>VB7DF{=IkkmzU)F_El~u6xhZzG4 zPDLOvlo>cw1k8Z6*icOSv{@|A{$*^I-~x5#`kFzh+v|k-%2i+K%a-WK@rP6&RC32d zog;=WEfjp{CJiMnuJMkCRo0b|!OThJi0~Vbe)n%<0$)a_&B0Y-tUMad6v$Vi*DzNp zH9D?SXQ^Z5mqK4ze5^Tyldt>Mld)8_%3oy~ZUrCbk+-NH)fhH4wfu`!;44O@C(3l4 zGBVMrvFauHZT~NFCLS4tzvU{Is?`x3ERIDWOm_GQ?g78lVZ!{VXG!ShBQdLk<4TG? zPdhwgnHNp(q{Xsutcj^AuBh*55zA~=jC41ebPyJ_#QJXzHIdL}XxyhqjT&*3S3_jfG zN8W=b(X@i-y91hiToTJr6A+-Dsv9`5Y0I}HEniaDl230?8Mo~Q zphigbHJ88#y5N7ED-pSiFu&yx!ltD302V2hLjUj@HP*Py;M9`UJG19ecx)a3YAztW zDdBxg1sqqUX8%-Xvsv;im&2wK=fa^%a<;083m5PTr;NFBqxdRMZC6l25`Ged{JsLRrNOpsRi4B zK^n#;#J=8c{DVvjfg)J##?w-iH@WYqf;g9{ahKgJQ7Ge}SpS#!$k!Lf&-GOMBM4Cv zh>%cW=Z-BiEY$Aa3S~e8>?PV$#V-`FbBX(NIpwmTIqQR_Epem32Jk{XsP9~*W#g%?ZUbXRtmi~d> zlJ(mo@cK!7OiFHVYwV(t%%iI1f)a$6lFXo@bi&d(Rzh#1u<#zX!cJe#-M zx>vBug_VAQ{6=w*Mj+rZa1c_@9O`+__=>^{Ns>$(SpLoxpgDXWI9!}4IxDSmD7wX< z&?lRUY8cfl6Sh&(=ipA~RbRC*xuj*U5RTS({dh!QmX}i18eddnfBW#dX}QYUx=I9x zOE!*GlftH4hqRda%9AGg8_T=`t9rWUkcvS)1(gN?GrqD2pi~EQk9u#}s8PfF3i`LS zFBMh5maX^CrFts5=qjh+ii6vI)KxDERhpt}#>;WJ3Y!pFn3$p`&poZoitfU)pkEbS zzNMjkoYhHgn%<%6s`?EPN(4}Ng)EaX5C^YkJZ}3$_vI0M5iRET{=<4_4Vyj*kBG!? z143d|{g!^V{ce>LTG|;-u;5!SQ|ntE54>}b46Rv{q8cQmJiLWb@9m5ix-g4nw_J2b zD{X@6L;CX5O7T?5F^$@ z=*e;??0eNc7)B)JMTjaCvH53}V)U%75@KuO==z1G?wcGjeFt{NM7JY46(yQD4a2dH z4d9Ci5%h`-E`C2&GYCW~fMk6$d{tV`d!9gz<1iy&AHp`Iv%HPtR!XqB7u1@mRvP53 zlDFNW@*)in6;z0hkB9r55r(wW>1B$cS7B;$PVsq)S#5{A+Wfj;nfqn_knfOZ)yH?s z8JY(pCSg4V;{p-IY!<6<|1QaLa{cOlY6I~!RSJDUKWU$u{_1Xb2fA_hw$$*NJDGxW zc)>qXxhsY3?t-{tB7h+!Bo0B6^99+O>Bd4!E*arffV1F)0%&w{K$+AzAJbOXI|>Jf zPXgh7nA$C_BiZGlcdF_tFx@#4DLGUVk{8d$LV-}E+|?DMXj$i3lz3=pXxrM8a*uP=m>Vszkh?+A>4DMgmN+;~rr3S=2b;dE1r{u45i=5x!)7Y0z(wl#uaW)n%p`2OlQ z{?$faKM)y2!32emXJ$UTu1gh%3}o4^_*UU}&ASXhx>r{!-5W~g|ARI#y@AMKj(ZvP zrlwU`c;BR-*VnyJm+}RbIem&w|2NM3rU3d1_&ga%Vp~a=VO+!UEdmlq%iVR2=og1Y zQjwL7KfZ3P{fX#b_$ZO--=i zo?lf0Pydfv2si$};jMul+2E{=UBqMlKIyb{<3V6kZ2;ACwyR)yyGKBx=FlPLN7ZOh zE+Vv+{CE9qivr9A4}s;gz(^hPy<`K3o7*d<&xtYI`qbXf3G+=}b}4lnb7 zcH5r6dLVeMZ^5ttEEU<1IAMOH#?KxFSa&(P7Te=r1k&!CTekh*wZI?&wD7XbK?zdK z&lMNY%u-5)mfxCLL51Oo+V(?kBiVb?JIj0inQ2ycD2#~)$5U+(L-dGlAROi+6DKTyRY3M6{P0c|FhvBEjK>0ki2S)6j^8!gL4pW*#B}TbWe_0>^zu&I zvhqz$m>?5$sCF^W0QwDmP}iWX*6%j|^=g16vdn1&#$m9RgOW@x>>DI<1E{2`(h{C;AiLnTplWHk2#%w^y;CXxt^AZ6GKe&^=>X z-*8IY&R9jgC@KYQ>N1bc*jJ^-QcxoLZ_556Ms-=>jrLoy->>gWK=g2xgjDlpRCV2V-#Y-?9>&t$OwmHK zV}J(e_xQtr!@txC_4mnp5RASF(oM(j0Av!0TFSrtU5Q8{;Ix8}mn63;y-995NC}_`Hz!%@pcw zC|?UWZgo6>*6wVniEF|PKrUOW2El2q`QvZPE9Y9fuV2tGbe)I4zSH2-Y zeR6F%3^#py0l)>Frp+6wr&$ob{D`>2e8V_s;(Q=HM1gwuPh0^y_ZTQ@`5M3YCVsL5 zUS}8b<-E?+{;cN?IjD#8uN(&$3K4!-_QMpYZvOeLc@3a$fe0b5>%3HO9RS7P7zZ&Z zVr20Fob%D+{te9{@BoaYKuJ%3gX6DP`dI)HvDx!)MhbrV0F(TY%b^JOTLo$-x-gWu z{Wl810K?cS|1Ro3nBzB!1r*g2t4FI0j}L;?xKf%Zp%U!WnwgCKD} zZ@>hqn}2%C&lQ5i{%nPr>$)i*9(aB+6>7>G<{MB)iu|LOf72997(hOEM3!;>_T&#Z zAteF>s8I>of}1HvvP6LC`eK_9Fg7 zCZuzIcOm>;fRo;b;xFbMAXicQH!jf3vz0B7l70BY6@2_T(36Xn^bk*PWPxo9-ad08CHBJcA-U7?MU9 z5Pnz%Er=Uh&jHFf7@-*ftzp2D6lO^09_Uu#U90~mNJoxAUp=9EDiHvT-Tzz)((V5< zE&pd){?D{rYt8>}P0Q@nXu}4WCOQypR-vg*+%C6{pNJ(0XQXwCcXOw8YDx#gWkg(e zvYMx=4nMzkhP$)6mn+5S8_jdEjEfa7)}*wwlda8os2mlXiK=(03p$q@Dakfl= zESfeWm7gSw0|XFa&7VQ{pv)U!Zt)dS`Ag`#KhHHX1E}dy{EuyvF$3kTHayF#ugmK% zK=^o!Y_tz82aqp}K04fA$pad(R0N)A30PQiApHBeC2b}^6NdX^rZYFPnFpHCN=-$~ z0sSuI+X--!ie|%F{lKZC_mY(+`f?qqzPvEJ~$;P1c4U;hNPs%;zHm2`CK0cQoy%I z{146gJCK1c%0fs%X4k;IArl-4G#VIiECfw;ksiR%4Phxua_GB1#XJsB;Gp~;+pv5L zl%L?!vt+(5KUxR0!Q~A*<_XPv5TMzuP+j|VsfD8t8pZ1;n2`Ms8d9#|3nW}T564_? z|HU1}K zqAmgyxJ|Z?30>fC>Vgd+MNC#z@ftn&Jf}HlSDv(HnaVWJd`J3Jc!+Hul&RX?HYdJ?uH5x zOTgvuaAkNMrd`W}3DQJ+r<({gb`v2SjESlECu71y1{6SubVGtJ@K<&5MMf|H4&KIs zg}?QZg6A{(2l7lLv%Y`=ICJ<8+)rc=IYS{Y3%4Isf7=GAswk za;>s=K@o~c;2#hZG#&fkpG*+MCH30$Q2w>Qe*&j0z5Xu9Rz#of{9JYnVfZIrf|Gp< z8D}?*@T=3Z>wxnn6$2Kmf6)oFUq%7cUA$^kMh|`WrDTYOU4f$6hINX;XFRcYvdnydvpv2{m|Lg7WJh%)t71Alja)LuURnqSH4e%x>_cG zvT~S$OcmDIu0|UPIOEHLci$2bnx|O+LTm@O>S&>F{w&E(3q0!?+yDFzG(&jAmf(wY z8QPeRbY-6{Vu_1Mt{;VQit7)?yA5(!ni+LJDVu?mEYbrR%nRau|%>fxO<5=NpqvJm1FdvjPMPE$k70vV#tgu*>?{ z@Sn`gO)I{fD%rduWumv z_!lqSo|a!^ek6gEIzB)kBHqO0E^#~S1eLjYY20{_pA|BZ1LlW1)(!O^8k1#)m?lXL z(tiOT6C-%Yhk2tnd#o8;T82_K1_z#L4x)%X(VHOM+JppAe(GfUrifI*{kXn{AM#D` zp}jaJBzDbi??{8b`I8gDkoeCKDLv>dl&qmHeM8{S;l$>)ZL+%5(GU#$e8X^3teELyZuRyVpdtKxkGL@|UwD6`j%&6l^=mTg&NcIkZS2(>JNy6V9zuzhn zV6KS;zu)+&zX{4O5&!rE8wtfkm36rvUQ3@5HXPkKm~cc@lW|5Kh%C>}%MWg_U;uPR z4z+6?8c9310atr|J6+j1yY416ws{SR_6KfccH50uTD;A2?#%VMO$m z+!>jn#eorKvLJBgTygb%EXIG!&oD4U>L2A;{t&!E_^qXU*{Cv`2Aj=A{<9IX$*zby9>P#OmQFv(Ae`@3%`lABdS1D#zVz1*hVaNS{-SK_a0tK1r* zDzcia5d53aukGL+Nchb81ndgquoCdfCd$qOuwSY8kFP@#Fe{7xci~M`kdzmQ9Yo~B z|6S&{@zmFZKw;x~UJV!Vd;N=3=D<+NwTo6n=Qm32dy3-;{LnqQvB8!AfvBLflYo!g zg-!uJt)KiYDERAWjF3i$OE7Bw0k<$Hqb~p!)Y!(4KD4;z>g0tnu*U0S(M^P9`3OAe zGkOmcergNYxpn8snBM>dS3v@U;cri@{ytW{anr`IEx-;}$*PyHJ#W=vl~u5JD*ZE) zJ|X{PiU?97Kdq6qF%VTS_nclUJNO-Z&qYug%xoS8B47ioI|QL@fGi_mb)E~N4FR86 z{WbQy2Hq2z9YzFSe}A#vt!k&@bHWoQDrqZ3M5zfaWF8)#yQY2Vt?^b3kt{mqoK};V zNgT$?T%Xl}@IP1uwo$Jw{M*HHuNH6+&uwn&X|W4;l05BlSZ(c8L#dUq$I!r5hm7A< zU6n?u3h^P>oCE=^(MmkH$sfoeC!S%PmEr)#X4(H4IDWFXb>*ga(W}Wt_LJsoVq8P+N;jDVi(p|Ak z8mRX;az+|v%E;j&`PJmRor9&ap$y>7Wm_Z|py2X^9v(*607+@?S=s`OUCcNm6LGZx zg{RBLFfoyUJ&s!GRNMXv>(22mhl(+;gNf9s<8#FCyvA>3Y;oEE5$qV!NT>Q2UOiDQ1vW2cRqk?=IPf8J+> zMIyEq?s9Vs&2GL;QCmtD_k4Z9--w<=23@b%oO*Mt9vK}SoqdSu&sMoy6BsV4d!3G* z(4hc`!f7|5p9apJZdYcy8HkjNLU8T#7F5Q*Ft-N5x<|}E$>-+>` zD3sA*Vgpd`2zY;Kh)#6QZPJs>O7FP5C<<_X@|2((@9&CeAU&&w44U}3-tsJWG_?>! zDr8S2cy{@cHX@yYK+&M0YK((6TRQUvU-#MRDTQcsmF9M>%?Q?Gygo(8RK2DrA@}2K zm%0vitl!Bc-0CNt3g5L(F%)QX%^d|5;+4HSlXNWYK1)wme{cD~q+ciJv$popQ<`wm z>|0K_FZHD&(t^tuav!Z9dOKrSTj%2tv(nry)~?1&dk?H34e+RCCHJT)VjtrqN%^JC zpHU_ooiG5De~7bCJWEy0d7`V*1RRKx#fDI%3Sh5L@PTC_?rn&6elGz6(_ax77xj$= zdmID@4Emki%F3Zs{0gGiUgCa0c7dPP^3Gqqk9r2U6bl6GZUvlm`eXwx{(023xvJuL zu61#KKJZq`rbw@a`q4o+2`{`jB8G2TnsbAv*F_|m3_-Cwzl(VgfY}32AAh=@y@e z72Rpq!%c+r7FQTGd^KQ?=)kJ{sV8|)MC;x^+@ASpGt=De)gQFueS%V|+oD?i!0^)# z=?oTPd!znP9=myo6A1)(_}S$x{++|Uz=R`4c=%gnTJb%fpt z1*i0dcHHoLk(3RmJc?7Yytmrw_V*6aZ9<7RpA;yE>|9;$E!{5BX$ipx4mv;W)uMVF zkMsQ7JJI~;_9!a5c{(Ri0kGTB`U3%vOIT7NPl+eCm=z{?hGdKtMx8nK6>T;82lB_K z2y}ePxp>u4Y|X~wZ}UW%B!2s45g10CV-;BN%uEp3=YAAF~%4V{+T>YJW->sn>*}WI2BK zNR7;}rqOlnf}zomV$%I!p1ujKCjLxPx#Y3k1u7{!-Z#^}utS-8&r2Yg-ua$O3mxQh zevF*|)g;ET_<77N^%fJ2swwr~sYtfBzVxjv&$cx0``q7K={D{%sbE1#lmHXJfg27H zo~;~;$Xu;Iuoauq45wM+V9XS8yoRjx8S0kJKFn-xzxeKM%y$hz$#+zG)+elAZKlxt zT3W2LjAXVVd9$CJ&T%@5{mdb@75Ua*m2rTW1X~o*KnjThXd^b0@ydrF{#rZbKVd|3(%Od3z2m^1tr*;sB z;sy%~U%3W*?+NV$unsi3rYY)SH2soKYS{oAOq9-ilR)TiYL@!8!U={7GY#79^OVa4h&JVpFeMyc)v^AvSzjQzmxI@@S8w@7kO=zC zSa8QWZf@qc7J$t9g%S0;htr~ueh8jBFK_aql5nA{^y_^^j^nX2__6VgnEBGI0HuPU zQm4-GURXR+$9Q$hk6~fYRZx}n5Rps_m7;bNQgq2g*}bQxJyD+Vq1vJ&EW~W<+aILU z1(N39zovIRI7JH%nm^p)FLJ5nDo!z6&#{wER(2r;=0im&^)4#yyxj z*x*j&bfQ^iRWGRZ9IK!%*Z+>X*cbOyu}P602lH-ldaDWJw9_OQT{=no#8pk3{ZFZv zS$r&rMhKOPVPX}Xx1|c$;vU&FirALj;qO%5o}KkgMY#V)?DfY`4C`$Wm8{|WnP%Vw zKR=SDTc1ftiB2T&%8K8a zvRaGbd{+t^hech)F2m>Gg(5ORa(5fn!Ut_D)23ls%s5b4^(1SSy$e4Z^kGUaO_R*964FS9p|MkghkBbWwp0V{seQ{nDp3=N5+ZoH=-y-O|8| z5itGtxy$4beYq{sKSqgvy$8DpzHeIH;VZ;~q!l~6qM$#{9rz#n{u2diH3MC^%r16AwJ~erMAf;wZfhk}q?Neoaf*4IDZ}fv5 zgGeYeB<7urSnnyrosJY9Z>sUC)7I6Yhzuc*a79C!yGt6CCJ%Zt_~D*UPQLn1=<+k^ z28`a~v4A9_($}sC!*I|}-xeX8!65u(BYm2ubk!pk(E0hv?H{C^MEow_RiQ1(Rfcto1 zgOJl=4Bg|9h;6iF(#?MU%k)+OZr*`aP&kn|bHt}x8{e4Ne7ef($I8pQc9rhE>3b-hETQpbEKk0I?U%{}{q`pJ)1wBRw|DRC3q8xVTAoR<-5nK- zNpGKzbI9BteHXeRn>x)2GfOJ$Ltz--sEMr+(*J3qwn&mUX@=4N#fvgvzdKIz@rQ*? zLj|fIF9o%5kNgpaU?I3|4PW>`R8Zc~mj~>VDcLi+u{XF@nWsD?UUOm~)?}SF(K;m< zwCJ@vwbbdOVECg>hR0#KakzP&e}UtQL;`T*)zg&+0NztgYy5x3ajV#?9QrtYdW{7P z_Lqa-&7Q?EsYzA)IKF5bFbDha`<$%%`v)l$;K{n5_S_~F_7XjH%#UKWpjqsR!hKMn zCN^1TCu^6dmlaOjaJaB+rJ$ns-q}1vnf|HtDfM(liz{=p&y}AxZzcKDPr;qzI;m-q z49503(osZi`*n|}D<2YBpn#;%uR_7w7l`C@g)l2UTfU+fY0RHoe@L*g=!7J~f9dT- z-_qpM*gO`9Jb(n}M&HvXEJ5l;=lmwGG7K`torng?N=~z;Y8Wv+ToCD}UD}Y;O5ls0 zFmmG5ZQOg|YPS_h52vP}`uURqFujTk8C&tgfxpIBt%G*9hYD9wuR|LZf;ug@34;x3iDorL{lE#$ySeXk;kC#7YtG=e&>QDQXqw%eW%xTt^ z?H;61f|y7~qi$dzjglpo^D4WKZCf zdhZ)e9*xh}>LdpU{ztPtX#ER+nAcRR7MqVYyEXN_`CjjUzoXTj=XDF4d=@x(l5i2R>A`QdSH{%&t>c_Y<*12Kk(v;v$5`Mx`Oy9rgJ<**`LOua>}c zUELX|C`7cGsv z1e-5fqUXoEUkbIf21_*BnXtK}iVxUpM^<+^>}J0ptH2ExC;MA!+?OH9K55QW#rvFb zn|Pc{YBvi34fl1_Q86`$3IEcmza$;WX72}RvZWAxzC_zP>COAkl}_7Bh{7{ZI^B}^ z+HpH$+M7MKo?z~*%Ct#@j#Z4d4#;j~pL)XSHmQ=~e4^_SuT|WDM+Ygd% zV5gkjxUK!3;1&PT3%eC(B-nFbS&hvojs(F+ICdiAobgvd@i*}rvBf)7Py+o^EYp7T z{)z%OiF(K+4Vh-`#w%j}Ly0pn^#*tPWX}6U?r13J4{J$$40^|XvYce!lIst2SPP!% zPra8L;7i}(FS9|MZy&f4-8_F8MyHo=QWZ|^JY8$bSfE^hx#bQWl~w~;l6QEoy}g!^ zK;6}k&I!*ujxs(caq#!03gGA(%`dK16b^^(85pE!^E!Y#IuP+$_2P8OtAP+9`jmpy z;~@E9^-FyMQ*4kF+M=^d2gXbWkJG6SpZMoeT~`X@oO{-iFK3#4q=0>@jY(ax8DZki ziaF=oLj0v7GW6%NmMW}VZMPXJjN&g{O*S>W&JLNsnhfe9YY2Q6c%!GVcw!T0)Q^b4 z{(O(Acqm)~>@>o))vpfd-Dj&p#U>Q{CHo-PS=7o^jPMnDDxc)3Dc!)9+wo8 zP1)X~f|l4TtGoUi(y?Ev3b)hweBd@}NEM0Sg-A&%pA-j|w}vi3CnH4sq+!c}(;>~i z%AYr!y=OR|u+ip-c@=c8^-A%jZ}$j&aEbp0eZeQXm1x7O|ntv$_M1If9&YsjLzB6}}yC%ie)(RlajUKEX- z`4Hf9f+lLe&#oV&xE`;v-#6~@P33iXqx90=)_EA+5D^|euh|C@b6Zc=y##|ra^zBO zwTI$}?aoW03H4a!31-P{&-j3+JdW)4hlzvxTY+?y)F;_{PuP5fMkg3OxR~C<=-X^3 zFkrB5Cjg=D10@=Ta3bCcN{jd&={SbB^Umt#0;>etdd;4S8t!f_AG_5`XEzs7kBG*A zqXqDcq%-6#8tDjfu5htdmOm9wxE}uC)pd1i?eE9novO?>i~1;?z+&a9@^SBFg4(gq z#Kc(Pr$>tpCqo^GF5f5PILUJx_@iltNWJlAaHpCWbwmYBXNi;b_JLQmwwNP*m8Si3`&)!c4fW(+ z@2lu^3aGTT7iooqJ$qvd^DYRl^0CjTttCNS0Wq}(=7Za2Cg zXgbL&6z$*dt$Ja{G5qy76=D9Q;#KQp{0J`eGFa zjOkr$8%MhBqRjkwfF^DMai}5Zja|90LRZ39ao0DB`YEa z6|tT(5`ElroxjpzfaFi$V`%an0+Umu1Zg>U*q-hUDbWg|bhsVRz_$iUy1pV_2nA9u zG5vQKSxfcs-!szH6tNGGLZ6m8u0iDB#wS~;5$q`o7Mo$C0iQ;4ysU%7FIIi@0J z`oEAq95ns79@xI8SUh)|TjU8cEToXX)a=L_1sRyTH@^=$^G1XW;bJhr_#%?6cj?;gH(z{DVVINb*KLc;;) zi@Q!hU;=9rBA{=rGuRl0!~&i;PV3Kw2L-G*ZBZ`^GgJk|gI<4%U8}6ty_!j)q|;R< zs5}3$#*utJaEn$UJt`JobWV_;`<^GJ+RSH-dUIwzr;Ddb5~IN8u=0%Rr*o}RIP@C2 z8~aJFWQqcVdG%{R4AM_TIKrH8H#8^=$VtCB5UI|qv|rlesj>-Dkn(!lUHczvxfe;5hC##XoIdfYXYH+-2q+2hjVvS-f@j;J#o)@k7Pmt5 z(Po{d7pkLN&*$k-S0^TNxP!J3<>zKY!V35rs!PJe+$cZ2m%;dR5Os>G_b0P~a%8H9rXikU`M!osIXq;O-YQAE*?6XF%E93+l*ZF};wd3;xLM5ul z0or36S+eDxwsy|k7_X2@Ukv(9*fQ(Q9U7FT^2JFzm={Zi>7`3w6jHovqa%wDXg zt>0xPRBi3g@aFM8WFQgnLRK_gM$M1n&~jgN>VI*(`{U{hjnK$U-PzrK-NsKbE2ZQ# zxQ{bvsPE^Y1{oPY)Ici6NhdDZS{6`!vP$-cL@R#y1@ zVt2yMeMT;}I1WQF@PV@OYap!4{v_L0hy0YfW3tS;J_|XtUH*#Sg(SD{T%p1z%tS6y z$cwMj!ahTsbh_mo?jhE*3LI+k_%nA6VY!#^*;W^If&T8|^GZkgN!sRxdxG{z@13nnAJimT^v%a=YF0O!K&p?sL%UscPnsq?-4JlR`G^snUQ~@@(Nwf<-ur6mV(C`IXa$Vrl<0xE(%AHbym&*< z=q+Hgjf?MO@fR01w^0YtyWh&$M9hgB2*Ec#*TO{qj-gy#^;pd`mdV7+FKs{JMY(H~ zyNTZ?xwI#h$;Ow75(gAZ-Z;m&2-7}Kf_!{D!|F2X-P_ZF zmLqr|asPFakFeJz;G^T$P|;X5*$B7BtG;Ng_y&!#_XTg<*Q*Na`ecZNYSjPhC`N#NGSQG?5N6u%Gh z&|OT7DOEZ(y!D|hN+Fw+d6sh5DQoTe6A_i6886L3vApF`U=F0*{u_+;dvcvI^?h|K zf~)ZR?R)0L&HLcz1tXJ{CL-1Ll4be_Ebu{jv>Ahwsi{N*wNDL=x^c=MMJ=DrBQD7` zD9kSMZmA@;cC|;~<5Qm1Jj@DMFRNYV@;=lQ@HxRlKRmp9X!`h7Mw5IEaRJ|HwP+Un zok|Uh;r){^3=@{AQ0{HvPNlF5kJ{1**|niUH#?{)+%iGHo%=l(=bD{kwmBCpW&UdX z^@?|4DeUO(gduLlqP)Lf%uvf!I}rN-$F{E?tcY}i3Hj<;819;M$vuCg@ZIBOePu4V zvs1>|fVr0|beo=Jvgrkt43^TjA${Pff=;PJFDIK zY=sNc*S>GEe(o(**;rai>V7#!S~z0Kxk~k^zgaNFZgW(o5b*Frfm*;=)9VbKa8pVh zW>?4H%Dd?!t!vB#`(7P3W3PM?&#kxJY8*Tv^?3@hdQApVM#jsDNT9IoAMcO8M>M!N z`e0z!Um1M$6+d$!v!ggc9+z-?JMuPn1#U6Q&3k^K!Bi0?y~cdx9wE1N9H+*24_%$3 zA#WeF_H;o+)NouoX5!H%m1>5vW~=tD2X}dlVzbV4)CDPe7*(T3s!`m5i8JBmX3@&{ zEu5o$NIp^JP5tkgUPFY~TfR2a?}L2$Q(JQtPVrX;oX&G(u(LhKls;#$CX~x@s_OBw^#f)Viux|NtfpQkImEwg@j0KRX?tzqRcKAHSr>vLK?^Dx3y6$-QZ!YD za66&swvSuyp2p`W9X{mbkYwVw<_7mcma@lcj(tjnSGN#gblyubnQ3I#P@-?XMuLmD zI~Uq>&v0Zu3KjI2l@&0aS&r<4<=DW4EGCGAYZ77X{zOp5@Ed*bnK9jWw?O@U;dQdY zQTs)Ea3oCM!&L8m9AJ3~4rEDE?peL`K9TyfVpI@gfB`#7qN4sLm5+d1p7-7R7U+nM z+nWJ7GJ{ud_ArpzLm&9nxym=C*2TmS@_sSRDF6 zQNZFmEGmJ3SYc|S#>wpTmL^8H1zswL&z;NAA8ggGE#^a^qYVyWeTE~?zu*L+6UTU6 zO^z+lX|uI#dKe(23!kBVtS~M#n((+9#^vcQqRH8C&5Bs*Clc?%p*MbB}Q;%;r2S(^+!3VEU>;m8nN`_h@Z5GCrcjVYV$OaHu)Sqzz#<(}kM z-*xz9be|S8t?PIYFK0V-FT30EIc>d+D;zHD;4O7l<+%$7hN#1qVmGRco{n6=x9X&PsHji&@^{UhY@(?jC#8| z^eUCFk`;FH64?eWeDY>F!!8XyqkueA}`N^VK9G?SzSO#&ySFloG3Qq&s%f0+6T zzbLz{?V*tdB_yR&5Ronc0RbtcYe?ztMvyK6>5}g58j$Xip}V^odiZY7bDr)J(d{^fry;9=5t+|6`kQt7jCgm|B|~Fk-C;Rw1fNhDb?Ch zr{7}~pvr5J5T+1{jHK{%XZH-zU-fQcbN~p+djL;$D%UH;Rg7qPO{U&8ssK0G?B7uM z)Vuw-AFnJnZ~mn>OY!7*ZKTo(0L&@Vg$s`De~lFYbJ1**bHM0{PP|^CL)^CW;W%md zwj3jaiokf!bzC&19OL3p`Vd9YXPNe=n3jq#N4J}P`@CRrph>KByq8M9&QEWF{Zjt2 z=jtWPI>Vd%0jPcJB0|2uKj+CS%flMIFFXQDs#wc^p!|F8A>4?vh#dz!HeIcOCGv)o zHQHpgR?Fjb&Vj0vrX3&C+TG-@GSe4$rSI$SGN0jX1x2U$=k!6tA0wz9iCNSimqR$ReQpQ3)S)v_1fLTFNn)m zj~}Jop5U~TxiW!>w+=btO_N&flHn_5iDh@vPzH5kVqj&P&dv^{@^(kobGOUQ64&D*$2Wl(e1$~N7q{&a(gCYS z6#nB%uUu_BH%GVp7LQ?->KzxS_UNMz93&Os;LbiqWSQ7mT4xJEm75XedJ5dk@2k6K zuUap0dgLlXo(+G=tC#5gw2#D7e)4^Dp!WWBQxlyXjNLnwnB{iOj%>d^Pi-RW`ICLm z&#UPO|JE|R5*}pY+vyjc_&L}&E&XsjE3&m^r|aqNis6MQB>0uJmZx#Qe)Q)aiXSvh zdtLL}qtBQrOO@FG9Sb(9ANSZ*SqpU%r|>#Momm#EPMW;vcn%+=)PWZO8_sJhm8(9k zj-g z=~Wc^<6tDU!Tz{YlAPazTskUEiICsRF3~toze!G|bU5{06D(qgM&rKwBL7hJ=<%Ge zdiw|N&GAYLVLYqaxF;_7JZ@pt>MrqZTwe z9XZ%pqck^pt*jX>iq;?W^JEDU!IsRmC#<*99;E-*^3w0jb zBn!96JY@No6jb|bb0JKRcuFw@7G|T5*yuELvZbesShAyHCn%)-cciV@bmO&I6pta; zqOS;rQkH`SavUXtDm!hLTYCz|GF4d@1^D`X^KB-YX?d)d*^8de0?0hn6Y&FkB$C;TDx=lyh7wM<3SgRrGmhmZT~ zXg(kQ?X5uSBTAE%;l1Y*CDO!g@~4Fh$Y?k+j4B?t4;j-)Ar2d#R9d|c1l*>I z4aS)TaPDA7Tn>~zcg5`zVPt*W4^NiIw0bAg&FqUc`+E2?E1Zx!uRid`)Ne=p2a54L zbGP@ruioI@N9%ULH+ED{3O*$uZ=lL_tpIO8rP1ba0)C|MAg%ZQ&*Fnkcn+~f%MrSW z_t~=wqr(mu!I!Z{8=L9oQ~0$7nCjNyYrK;jpe9*n ziWNoEdRG{B^AzaBv2xlSd*#`Ay$3B9Ip2z%wm+NKWm{+jt1?*jzT2HIR=Ba~5?S#z z+`DT#^?DG$^68lj9B2nq72dmuK8tNX>Ag9quisud$ z!pX_w5cKicKc$NVTYb^4vj|i6#pS+9)*CntQvhky_?+FgNJX*~qj|X=E;5pJ60SI! zl_RH!`s)2;)O<~t(l#)?>M)`I%5YQ2b!@^R^lwl3x?_w zW^B^1boFwra0T6`sbcBbTH6K0y*~v3(b3WS7cDy4m-3BYi_Tt=`X0b^U$C&W@Bh@` z=65YmL&tg63$O@PCMB>Blk2VUlPUakR#ssB4E~WI?8g4|p>iP1mUG(SV{4WV1@(oum)5js{E+Z+?~iVJ@*KWD;Vw9!=(+v?G9NB$Z^(nIi4nCRg)@Rr)ODcyP%qS zXiJG*F#0*v&o5bCYBd-8F_!L`LZ(Q8QsU8XmSrjs4 z6F+AJ1YlGx*OWgfe1l=u(p!V`W2GN>LFDm1l#4Ccs>Lc1)x56%x<6jIV31(^xrhqy>}^{#`rVH4F{Nw-DS_l{W6yLLBmC+E99>! z3k|j_6K!K}guHH4>Yvu#9P^{aj&;t*UL>*=z|%hGct}o_sS+XuMfF{u;K$JhtELEP z5)3E3{apRI{Dy6&RMl0;_w2K(6?F1t{~o(2b!xjW$O3BnT<;pLYx(1yjA75t@YG-7 zfKRqVH0=kfjM&WHXlIMVv2j>anV6O(r?mqwSq71!RfpjNqs|3k@`=`gb zRgAhO-wL4sWu|ic-t-?_AIN@3Wq(DQ5Jf~w!<4hs^1QR1RMX`A*!r+0iJxU6^j@WK zGvo#HVWr8JUse<}bPHuU$CB@R*0a9kqpfBYc#(a`lMLhkB~5H9^X9sHPrp=?uxhq& z@pmwevly%te{Ul?Q@qN;TE8)CQRLb4IfG4fVmf*9n8%63igHdWcS5r&t&8tPaJM@q znly5EaI}X);g>Fak7=YgcLaaA&t24)O@H;FlpvxV&%f~ejct&hSb)wCF6nMbrmtjt zu43L@7W4fw&Na;r+{lR)$QvW6cq*lv=+P?_bwMLJ1=M`r3?v-jqPR<$xH(#H4^I{L z3Q-x~D=Bn#ozGMiHrCR)_Hmg}@4al@)@0w5>*4|`jD0fWUMyID3KYjgj-N$qkBbhu zI2olpL}2;5_#*P+;^7ba5@8njwjW>lkJVZ=lZRN4<4aAKaC_un3Hm~?gSQQ6eA zU|ui$`=Z59&y1KRbE_n_hha==vk1&z-dI_03J3Qv`^6t1+V6kA6XA3V!Cb5vSYa$* z!ukzM-}gOy!LbdBCY`@#akNYMN2XBo6_6pxnO^1}b%KA+xP?UOP1u(Z2qSabDT}HvVwbLxr1&ZWK zFK*bh#XL=@+fPm|%X>>ICKAhaB#Yjv8i$8K-|V|hy`RVqjA2w)$Wb#%zyz^kpLvM5 zg$Ui|Wg1l*4@ICgR4~D!k4f;*Vm;rV&aN#nffeAt7b<(PN%*j8w%LBxUd`ob11w+J zCD-9t=EtA!(ycPPk&1oaS?8wYGJ_#PA5-W;*CEotiY)5Jp;ucQt=4fX%FSkaIk@io zi_WDBSvWGDD$FR+7AADgAuenyjf&jm7tN+p6NtyL*W5@QXB#~|-PGx;>ul+5u&V`J z5`JOBx^1{_iY(%gVc<$lqRqx)d<&B%AF+k{>oRC`Ndu++#CK%X?tiraT33gY+^mW3 z+x91uTYx`!tjYBYywj^Sa|Sossk|81Om`jz*CFv9i>S4UR(f(757ALPU-7*&{9T;h zA4|=Ru{9D^nw-1QZ{`Iop8fx-4Ln*v=_{Qn3>5q9t0A>gshQ)+XWj2SRRP)uurz=G zJ$)egTn$;;`%elV04NB&>N2>=c~fKBa5@kPdAj+wM%z1xiX}4x%(a?~G9hUjLH0sMp$3q+AHDHjy2`(UXe^23X>sWlFk) z$I!)YcRbeWe1#(h_s8S5dnWa&{Di&kXS8SPqDOBof#s8H2@3brj`*?5P1bF>C!Kq< zRdF|M^~b99A`s7@56_;<&eL5#j`v=%jyDU6pFqk@&u|WLr3im^+vC&!TDc{wvg#l06|_*9^50uFcfdXm@#;@~)Vp ziCt2|Z7L}=iO)S~b2hueww0>i=c(|rxpZ&hqa}1HaqNUvwfN`66H-xUYL3Pr>up?5Eg=X2eMN(+7?Ue;gz0o#FRB3+VZN&!0(pO(0a=@*bWR`t6-7(K(Rgc0 zMf_s8z;i%%1nA0J?z~h@mz=EIJX(I)A((roeAA$JRw>&4P9$IF_|`CQl^+w)?y>mz z)K;T~rozSwke?w(_E-#LitL_L@ae77!AL}VQ4GMAF98PoF@>80#9KjjtUl)uC7_NQ zHE3dToTj8QZ#*o51$sh6SS=GosQUO8A8LkTBB`(9DV ztao4LPdjhPX2dRD$F(Ch?DdK_X@A;Pylwtmtkt(3Wo_K&O7vCt+4;@{gx}|uG;EFb z@oXdYVMJ^ZPr%hdoZWSaS1r@FV}V9u+?LYnM^66<<(yuX_|YOSsS#}T%uI3O5@-vP%a@$ z5qw0I4XErRmIQfdJb7-DTS||=cA)+bQxyhEnfA)*8)=ZnfP`NReK)S<6WkNE1$Nxm zBd1s6aRMZKDUeT4)R&LV^q8Yu66* zv^CnceiRpKhvkyYwU-sM=cRrHH7fQ=^{3Ou9hSG?X7()S?5Lc?v&K-pCL?Vqj+iNN zB@vW+952@}(Lna%<{bgq?GV)|*ZRSn&)|R5u~Kv42D;zB-@C??8`l{xQR+bUiagrI zi~MhLAYQM)Mc70CJ7^4z0zip1Am+)nne(fRyFG4C)gU!h2cb3@{?^H?OrM)pHm5NAt#c%u*(A_iD?W&Be);lA)WbB+-{UeZXTSz5rV?mN#Spv=6fKY5cV5LSBnWYa~KS z_gZ+^#4{30s3UdaNdc&rzi;emYws9{fv$AzCPo;*?W5J)@evEZR1{e_n~#)vwB))Y2OD#-nGw_@{>g%eaG!4K!Y3bpdq`-R*vDWJO9Db>WLg z7>|&U^)7@IdhLwjcZE`IIs)XEAVFE1%xxT2`qq^o^Ow!prLsRd9DSfx8NB5nQkk-{!*Y2N*JC`Et9M2+I2_f@{rQ5{$U{@G6q1n zpvXL~$HEaFVFs%P8H8cT|G(O+>B>9SGRNFQgNdI zpHw+MmEQzeHlEEwC2<5Fq*w2Nlu-5{4UJkBUf76cxMPfcTl{;1$qMkC*9H5cY_yvO zR9Q%Nhc)C#x6lBvT8O@7qRswc*z7s6)B6>@X7xoV7AQD9!-6~Q2XBM$hiRJ?_^Sbn z*5sNwqi#Inf#jb7E@<+wOiB;D+*xiasfM-I0f>SA4s@c<74$lUKs^Hdh@C=p|=^ zITnkO1z(()jI8;61*RaLItmeQRF~tJ?R^0k2dU)P{nCtnnD-ODKY;Lc5kGrT5lvO$ zVsBR|!4etBJ7bH{InjmBN)t{PG4#{rL&}s({Q*Fjj_H$Lyr9=~@N+QGiWn?q#}SyU3%%IA>nVn|m| z%PZ}#OMNp~OFS0q-?gAyNF9a)4)_+>3m-n#i%T-rT2LzMIfhlPn7q{eT7wUw|lMm#BQ0x+OOnh(D|3~ zgC(|XsSRlB54ZYWa3*X@MwxsOsiyO&*wf3T&`J6p-HlmlNftpj;W&0KkyQ@j%>nbd zvn*q*DlC*z<<)}*rOUmI0*jQJ;NPcWqs6}ZI;{kVwkJwna034q14lnt3y{vYtAlm1 z*bpuL!3w4Gi;y~eM3=jCO8UZ9kAkDA){Y)Ab~tppVH7PU>Q98iQ-mOw&_o^BC(}{^~uLrA;amV-DyVH%oQkOvbkrUuI=t2Fp{i+WeLTwE*a(Gt67;bzS=h( zfYhl5NS*4YY@`0N*oUjQ2IKgQ%CKQh)DKGzxacCVR`z@S+OGu>K*TbYZ^39%q(N67 zivxaOcYxc)_9s>0_tvJp9QNHvB@S1<@N?`O)AC+L@Rh5)N%)q;K`)fB0sO-29{wDj z(M;n-#rek>AhDI{d~q7{K7FkOrvO5a9M65Pq~(h$;(U(fTmgmrOB<5;lDuV?FsRE4 z z7l}?h=YNQ843Fx&){bP8*`E1SXpjS#-d{4D(5&&_5(dmKvylJ1K*4`sAYnY*8Fr0Y zEbn_<&SHtbYKavQVPo|=Xem=O!s?73?hl&4hm&kfVh)K4Q8d~4GE3+{rMThM9H0!6 zf!&_MmD=YjK^ik*$ti+E^0L#v#3-zmD`kf?WB^ko>QEYOyD_&aetC=iZN&aX zZMl5fLW(o#+H93Cz2v3$j^XjyD@ciEqghj~F!5OC`!)ah5;9AoSj_iBWf|J-_Lzrr zj_*JFj!~v_THev6E3CKp*Hg3@0<5W)i6PB@j4#H{iRIPvfQ`EpT=VIKWf3q*enDAm zH~S<|&ib91IEZj%$mwWNtl$rzj!>>OMj5!Lv19dba7YE-mXtnEcqisqhOqRlgUJ=3 zx5puiWd38yO6n2*y01O7_j-^Q-+<(m+TMi+U_8}0m z7j5($`*J0$^zFg@>Tb~cWbbLCO%0D0IKV>KMc)jso&Ch4K1A6Uq?zsv16S}kCpLQ0{{HZ(SPtTLBr3wwaYLVk* zUn~czfFV}%t*M^|Gv9eTv=t1I%GuWKyw+|qCUw{v#)q#+z%xRgKNT~6$`Ev93nPs2 z$$tP4gJREGr8W-nPBfRYz__@F?7(LIVSJE?`yDxIaK()dRaX2_&H*Hwcjur60~YwAlXS65iSK{>a6Y4P<;+12PJ5)x&FgbizM`Kz6KLW zJIKtw_7d(*O4aWDho;E(!4bEjx!^JJXC>z@#($aS z<9jPt?c?~hPYf|K69#U3_Pf#mACQ0dJu7*-eDb%48@@SS!4C3NK*Ks@d}L!FLO2xd z=MV}fcJDDz9-DanTccfpqBFq}ze4(0z36S!?xKhxzM`@eau^!+8Ri&qKA>H)&&j1e zDAbbxs1?aNUD@lJIZ);9YSJ?RJkucUor0eI4$xiA(50BX^dj+>iK9WS5-A-~W(w57sZ^RrTF%hJCa@r3YtJVKR04_)%=OO5Xc9KCw<} z{V3Dt4urFHgcH&4>xZ}chx7RMaWR-u2Y~z{+-EQX1eF)FddanrBhPATJg8rQaqHfW z0jMDm)_A*AijLkGM3fjaAaPoDZoWitvs2WSp4@aXgHCD^zIegQRpoTwTZWHdI}y## zwNZG7SD)VgBBCdJiZ|gO`4vnQOT_n?WIKGHEFT??^Du;x%vIb5WU*9vf|YIt2M4~) z8SEpQ)Z~(Kp=u-`wr6+L5NDAHYk31kiQNz@&BH1e`CrBk{*^xA2cF$;i0Nd_=3Z3( z*Ss(Xm>0sSIy2msBVc*7h!utmd%@9^8}LW8MxP5JK!_g6sF+*Ru`l>T2Xq5qxgU@7 zAHV68_TR&{B;wE#d%7M5z6?|d(M6dLGc*iV6>cmINozsT+ktUrA4}Tu_=jMFAd7mj zpP^*DL5MrN2@!HQm{(WuSI&+Ws~yQ~h#z)MB_NRBJnJr>BICu4Z)q`?y-%@f5{js_UtUiOiv*~a6^pv; zV+rY~tORKzndihDNr5;=dAP)uM7#4jxCyVpv~xR9OvT)Y%kk=R&}rL3;tyeMwKm45 zqlJc#sho*wFPlIqvA@NZxq8Z0N2pCJD4kRIb;DL3;o)^eojL;@j*m!oz6$g>XStD zJD(26H>2ydSUrYNAX|tX|20!MM_B`Y{cgEU26ylZw?z@Ca#GM)^E?U6bcsMYEBi_M|bFZCI(7q0d1 zO7n`Z1?nw>qK;^M+C?wg!%5y~Jbnt4E@L6#DQw7%YD0@MToGN#7V@a^&>Qdl0TTcLgJm-GleJ}algjF?$J=Pt7?6*fl z`*G{7Pa@7uHhmRmus{bG8OyED{gb(9_EX=^sn&t?W{LPgt!^Rx7mm6W1qzG%3Mxlg`jEYfa;oFEQ*%6Z{6Qm33f6$kY6@Qj>~Af(|Wm$li#WeN&asH=6-xZyn%#z!RjrY0)7be}J4 z9!#p5j;HR^`K~5|EDu3{B)IRj*{t0lnjydBA9PvH59Yz#BKE*ta1)9v_U&&u75M)e5FJ^$~|*k&{xpA1Yv z8XoLr%%H=qM}h^H!_GAKa5^qdX_HH!7x$EsnQ`t9n#UL2i!a=Q7s@TV3L<<`UH+EOqri^7%|^iu^w7;D?h3Npca7&Q;So zLEcfoVQWZaFoE9$+*CB1_Pd)`nzBcs@%|4YG7-Z-vcxyGmq58na;rS)4*hbo(uB$9 zb6%^aFMR$=v&{it>zysZR@HMT1rlPwxZ`Z;=@PNRKI1(%u6HNOAyu3d1Rx8j*}6L=j7N^7 z>Tm9b2Le#<&u$OY-KMNrnAJ0SFfDoFj^8bB9qx4j(E)|s3V`?g=t8bL^x;%Dmn)9e7GKEy z1?QZ5f>rX_DvWUMg7^!9KBsaP5O<>2?h%k!0p3^^R0G#{*K2dnxm%G-tT5~w_13y>c``a- z??`RF6ZP{wczvvp)w9G)Qi;$NjB{PZx#-=sL=kjvM}^co&Pk$0E^8mWt|0vMB(u!W z)W*9fpPFlaKXTDJc2UlMo#rUI!;m-dn32ghO$6*P%Gg;-P5cpg9XWeiY&`Sdj^jHc z-U?F32E$12sP26oW{u62&dug&)D=zL$t*E^#%V>&W~q`y^KI&~ex6CoaijMRr2gob zqT~ldUDo&yd(h4JGB(2#&RM$)1)vz1fhq4DR44Jl)F1i3e-Fxbd91%V6}zS|p7IfJ zruvRa{AlD1uSW-g+wIA$eJ8Dvm$J=;FZU@QSFWn`_y{Rx1wiEB&USx`ndLWD%Vy|9 zIAq%hD``PkS{fwdMF*xIcGpej#S>_QSypBY$wB3pWvugcKh+8d`@+{#kkDRswkU_Y zkpeMrVy)(JKf~ooqg5-i$VjI-ji)2J>S@sUT=Vz*<3*j{rD;!vH7B6@(Q>qnD`95{ zp&({jo<2w-KRnXf-L5}@5JC(ypZCe`{3-e(6vHEb z_yp_-SNPZ?$Ezm4?hN8nGd*5KOT`5F;!Li>bg|3tf)7f@!~QVqO`^0l%ZOI;;DA`; zaiWd+E^YbL%EnRjE{L6e|MD56@(Sl|Uw#ZYJ!@mHC9Xqm1l(VXDAcEdWu6n)M}zu?`n`lk`htCxj&-b@ z0rW6dWml?^pBmuiNXjegZi;}`9>FJ!!I$QD#sTXe2pvJ5Z*Y}f)){rX77M^kq^Y!* z2!T^+u2YG`^}5UQ@K$bx&fO9J^}s_Ne}Yb@Ue<6L@0yk9YRMw3*6eU(>)f(ba~fLU z0hnkc@sfRl(9<@Q*3F&iY2$vs4peKo!aSeaEg#A2*!$t(;fv?8lGT8JR@2*(TtH3|LoHvBo9q!H`4VT65;d#otpaS-j=x0g9vK1n=dF#ic0CPC#}5 z8*UGq!dJztP%*z~UEzGePFIFi$^dG$x@B=X%x)2zC5_H%$LZ)_Yu8v*wWLtwJf(%cOPa9f z^?>-WY`phE?MaC90Z&OvO^Q^DtBur^#iS?Zl#Z*ccjCjk<$xi6fT%W^Cb{HxrkJMzm0sRUjJUrAm2NNjTmKuQ@P;Vl1YtE$&ZqBOm8`CyR(}-v1&12b zG^S3S3#RufY&Ofg}s~0NEm%0N?Hs2=%DCCdoUW%mo_4~5?fKR5ZqohM%}+Dfo4;JHk}av)dDoG zCc^W1>&XP(l0;MPLWZK}r(;2v)G9v;QTUpXcS}`vJp2;>XGOEItpq zPl75#YR83YJx-Dfw{qfk`;F}V_Zy1Gg*Wk8Wq{#76aL%nLhHJB($^2I^^=vj-ID>b z8v9J%RXCBWSSDoEVQe8z|7|BTKE$fU)z&h1=4U%7R!SY+L?p$?2t^ zMRZ1*tFciCQaYy74Q88`D#?OxwnQD0g4qgv?`@EKBXOsL{p3~Y8v>)te5(L~pKe`J z5V&N*R@aTYHdpXm$z@0M!(C%Rk1#ey^uK*{1cyP4a)ukd8zl5nVP7F)4jYd_IVC}V)Y zSM5RB^pM!v=e&Em!oCFM<%47!k~|Q%y)f8G{@XmcY_kdRkL&cAiY4_F#_`{NvP8_9 zzf{G|nJ{~^o4A%F;+U~Xg5N6Q;a0I}D$DB@hI#@P4N5G+WqO+FDu!B~ZHxuUmaX^6 zlk#>nuO!O!R&H^>LUs5K;P#0fnY@A)r$)&Y;Ni3*Ru2}V_ zbEO(K0ChmyLSgL-?~0?sz(n!sC8s1Jstpr%p6dD-kW;{6?t8em7By$&p=DGw_kXgn{n7zN4w_%&n9{=|n+R1BuP=VW z>nGi_&3J!XivWu=YS3c7JQo|7t&GxYpGB#7-NSB0!An<})KB$!_lp%VTry5}81dqh z$L{o%>2Qh&v)W_NrUzc;Yj5o~z0zK85x#v?Lp0pSfc-jB**hwsO5ENk%6yAYd8^hs zDxh+eI-V#>;Vg?$3sUC524}u81J{^uUgMwS?OHk*x4R5JEdj{_G;Xf)`Fe_EYarKhl2%@S$q2 zAZUIKRttg5TtpT#6{a&VvpJo+hR>gf)U55)FNICv4yBq6@`A&YfnSsh-|Id8hMZ-iUl;NF0;MXE4IEBCG-DY|#hHt10WB>3%EDu7R06W|!h90(ApMplfz`xO zcZyBcl%;2VE6f{30OA=PiHA?3ED5CGfD}`R{4Ld;Zy|-yNGK{W%7u3nPEe!YS&7_` z?U4bC=g-`WbXh0LznB6sY(@ebh4mcTJKv{9Y4eYO>e4qy88~30Z{8JI38ZAj?Y= zAfRZmA*hQX9aYcQ&@tY6TlHco6snG3e?5kV7kSq9X#yeREr^##d#Jp;?j+NEpv3~9 zoTYqhQ%rv8Uy|s=aVHia^h2~_&#Bcu^s>;_Ya95r<@MyC+<*fL>Bl1PHCp>I%Q@Y! zO8^>VtpSc7lrD%R*3-`~*a8X+Yg|1zFK1F7e)*M0T-h_lO8VOe+DcC_2~QbsYk9UB zK5x)$6C;*3@4-9~^RYifDivXtV0gM6h_p>8*V91*PE#9@?%XA}<#v~kLm_1mI!)d& zU4nuR9;U$!4ZMp>OQ#3p%1JyDdhT+}Ao80-{#NhY7K!k0m_)Ikdq6?(K12|5HnP_g&*FFbVf0E17a;C072;iN2sEP}qh(buZU zEfZCbf={FYB5lpd6gf+Z>6Kqc7`#($+aFQGx5uX8y3cQCTbq*W%;Ii3CI z@bZ#ox(EKm@K}@nWY;A?x!4IVD3Ffez?xVI2*$MsG7&=tIT#hvd;K77N?Bg~ao)>K zp1AJki9dumItysNTRglW1VtTxoh(p9QU)|int>7jxSqb=QCoRqhkPq_5BN11>9|hb z&G4C+U9Y!@%jc&0leyE${6uaWdhgvfYmhW9mE62elO5vi`AZ0T)EUaz6Pe<&FG)yM zjk;w^h!*Ee;|eV!`|5SseXXc$A_ILdE_^QA0Nm;maL_=xzIUN+rcsl93BOv6Dl`m6o>C zE*LMB7u`KqVz_26cMPn_fIHP=sg$-+mwLUnb{teOL==}UZTFGM1B=@$%hsZt=rxG! zKRLetB!SNA{@p|p*H-{smAPa1f$fy#s|r}ji+s6{2>N-Et)FyJ+U{^VTUUtWGDIBA zcp)t6YUf@*pmb_b={in0m!3rqh#kA za2-1gm@hOVR@NbP$U;N^mNCmCCWO_oOwk;Z1)SL?$LL~SLwusAo3*&ZnkJwJi}#1e zF-A(Q=uOIlROKiArKTUe6q!L@C(GVmkJi?6JI?v}OvU#1%vS4wKMy5*F#q3F55BaH zeeP6F+pJ^HJHRfSEzfG6H?6#pZ#1U2bZyNT^?+Y;D~)Ps2`&7NFLBpfT+tt3yVxAS zbL46M#MS((?94CQY;UyeqJ6npBA>^L#ecX|8^)Y4Yl408$EvnO( z@uAk5w@f$WaPI9vaHtUY49PM6`-!OA_x!SEvuIY`VgMNY@nk&%F#_L!TZ*h}O#4`J z71A+Av|N9;-AC7oF0`9c#L~-?(tZIBla_{NyiiiQZLK~sJcj>EFUiQrJlY%$hp7M{cEWGeyu{1h^F4er1IZj1C)(pYu&SvVa;?-pW3~9dygyZ&X$H|9pfp)Gz+8- zZ!}byV))m=_3v-Njh(y&TyMXE-sU>?2E8_zZBS1<3N;70ZO-a1w&VzM#0(uQNiTUz z@z)5_y1$iE(`YIKIYp7u?JIUP{AJeMVMmFm6BFIg?d21RG!MF{dbCm8j) z(O44w@un1}jLMS}ueG+Ec9E!&3QETvM)6yCx|}0GwAQZ3Rk*RPUyJ0f#>IEhtL^yk zY|Ttc8PKmSrL~ZJD_f8_JIy$EW>}uRyFUAy1Eo$=PZEHp^a=r;oS!IaYsl$@iutpE z!L-w#3L|9{w_%bc&$>xb0;?W_12B+KE~n1Uj?`hWw$`s*`F()n{nyc?kZt+YSI)&h z88~?55IeFA3_d2jjWYyKs7^)>Tu~B`hHVyM`T9x2@V{In4ga3v?1TgPm3+Qy1h6Af zKh+ZF7Nca3+0MR{oi50~Bfv+mzm;$~rB4-zwC6*X$$1b2FQ&O%_tM89%p;-U=13i# zn1ldDaKh{kh;ZXGYbXVPNpkZ65n2UBI2q0R#P0v|10COJcbs$ zSa0=O;{(!X8TmiS<2lZqtM1O`HEi-#nd>Y}pX1f1xFTn!@t5gksf=9xy1WffI+-3B zB+SbZOawB8vK;a%u10>|Rj3pp!k+Suzdkr6dzoY^YSbW}j_P`jS1Pj(m@}*Hs1|<^ z^4z8~9!lUAAn4f{`pFVHoSb(}RM>R`r_FI9-=%dM*evk$f)X-8V zfBstBeV0B>I2_>>LAv+s|^& zb1a;BYc0O^Ul%h$XyZ!Av zhpBn2*R4S}lTh?enfdJ9tbQzN4n5Jy!Ct8icG8i>L2q0CcAK_A07s30 zd%Y`BV{=SuJZhE{ZcpWC>PgLz>Zw5hiqdINw|#foPV}t=j?Z^M%+73`!QH~u8*%D4 zh!~Qfhhe4o4Vm6>1@R+5U5Bco%r?<+jIqX9%&WXMgCLjXZwQe_(?pc3ic2O(Otae>5gN@mg8E~7Dyx)$@bZK*jYy#39vT%}ywR*sI3jsn zcJsEzq3*=)a`)N5S$6YCBWIV1s&@GuSR#O-%$T>1Iq-+PDu@Uvlx$V4Ov5h)TGDyz zyOPlAcJ^6&$!+`aw%QTM_kNkck?^!QJ>$o1i>Fcy60+%h0pyp6IY4MWwYgjo9Lay{ z#kCg>3;USLW19#sOI|>m;W%*lUO&AN-5$L*_Sko|WHOM1BZ;}~-%^6fjdXL2d zq#?w-{kilP$A_N9xSfY9Xh4r6jXs-yZ*Me`^kd~(w8T7B6Q5v?L0MRT27Lg}gV!Sr ziJaeFnF>y54a}TGkL=p*WQ?PF(9y0xT@=~b_TLtl@zz!`)os^epR6B+NT-;h=T}n7 z$F0jO{T=~`_TN@cNF}KN{Z4%uV&|v;d(Bel0Bq5+66DM4bbcs~kZ5ZiW($pZVQk!ksz>w5a%KXOv(|E7xVAW={nR~` z+#KmvtXAY#MeCet{lWWi$(4k*_tOl#@sODQjpII(%<~PZ-^ft}o0 z*z-Dv(q$(DHAkAPvpT-rS#lwvIl^GG3uv4RM!y@uy_OiZ)|DH+kwGe0akt8Ko`-dz zVbAp!S`u@EguEIVy&OJXAi)vvlZ570`3(FS-zaXJK`tt zs=LO#23ySP(y)kck|`%wv+v&39Ct;m5CyMZKGU659jRJs_Wb1(nuKC!RL!(b;)&)r zV}sEJX?NOcY%kdf>%GdeHSXQvG}l5e*M;6n)^QSp;3gV)86wkdtG*QL--I9usc-=y z5=F{A7K#tvj-M?l;y{)5D+X&F?N5P5P>e3J;>pys`P)hg6oR<-N|mU(&7|-(Iu`fv zuw~ikIMdFmRo^GOfxUwWdKN`AWrgQ+_H96dJ%xZBDAkItPl-FB@3Bjc{raC93^G{j_Y{8dHEU{->qD=MqtqQ zie5I6Eeo41oGdVsYRTiO4~Wz^e#{VlnLt6Q!^Z7SK{-kda+l{)uR&O=0G)83MZ6~jQn4!|y+KsWJ z7-4N9ue-~aJ7eJPjJA8i1r(ht33l*aWG3)5$E1g}S5!Y$&FOXNbUeon89yBh5 zlg*9)x6}jDWhGl8TXXK5en-p6Mg)w_u@c>d)COCl5z?jO31uovH4d>FhV#K`i|J*Z z)Iw_gyn0UTr!dHeH@@qwb&dC{MRP^@vdQG$zBc}!UQT|TmqhiGlw35HX|uaHrj2{t z9NLQ1qagha?WxSlH+xw7WBMth0SB-VzjZG~r;>(Qmw--(W^6gXZd?36-rh2*%I%9A z-E=73ji7*}h|(!7-5@E5AdPf`sFbvnGziiS(w)-Xozfv)cWvVw&i|bE{c!IX_uC%N ze)ifcW~~{&={9Vr6yA}@gH&0TosWicaHAbB<~4{1A*Npy;d3zaH5XI}P-^zveo3I9 ze2aY09KrS0%Z7T%%2=gEdI%%C_*GeDNy=vn@1C&Z~7U3-emxUz7x`oRh0~L!!fymu5^55As_cToE)7Xl7 zC4bq}yDPaoebt689m)||RU{mk$(x{tsGWbq5Tf3l9r{<4$jTN5q}^cD*+jA0WX;cB z0FN@`lalyKjMilambswU$T4?ivwq@>;>=(yC!|k4{Ic@_YB0jK`XHbxOA` zkB4~H$NRV}1dB;|`N13(vlYQzF>HFBm7@I?h=$u|#bOZ72fJMMTjRl^ows9`hjNb4 z#L$a--s_AwU#f$SIi$PhyEP>19!AKYxJ^#fIGMGH{8Pnm&yTVi@P;x4oGz$OyCBUk zx@f1%yimu#Sh=5>vjJQ_A@XR>hbWP_d7IO1aH6-kOodCSLR=Q4Iq_K@y_it^Y}?rN zDj}>7WS$fM*fww9cAXtVvon?SZl(}`nRX$hhj3Va4!d>1fgq^|Y0C*yirB8<|;< zSGM^qpaU0H(F#exo;;{Jb$GR&pr#4KIrkEtMz#+j3&eyT*oA%3x0|jyeoXlI+b-hn zB(I#K6S0mN;N@6{xB8kTZ&eG%{U z*(!R~W3pcXwZ?Y0bC)Cum`=Fvb=A;Zx{v~RF*)Sc_}I!(*;xDSjQ!Fd>Ee4ffr!zZ zOz@+ZcGvP5s!eE2vGjFD>Y8o9JFEetUa46teKE#7A=Npw zw;-qlGe<3cEnG@Gz_LP(gzD;gD^oH3gZ&gy@#^zk7U~yUFQpSb^WtxNybVBv1}mP~ z5qC_mn<(p6g@64-U*DS`APyRF$d}8zD`zTW8P?JTVz>BH2|J&nkAa|Vy`R#TQjVnn zz4`|4YvVS4n|%u0`=pn7S^!p|xd3Z_u6aEopfsZGYxnymKlPA&$HC{Ls4AiM-M+c1v|X z#KR4Ga)S-i`cE9l^xzU98A!x|0#HPY+V2)w2jB-5y6#yPk)#+5#WV`JN97q@hq6tC zmG7sa5OMha^*=w?OA#<7^XKo7b2@rtr&`J?5osboaIsyUBdQ)@2v zTR$AJ6pzFNU^!=+bMefS>PM2FMuwvJAM|Hj_>u<46-DqV&&8#UB&|K4l#iyEAc zFq+3zGqGi6Z8hh|rFRY&S^}sHQI|=Up#EsM78;yRF&mebh%ZsYc!8R&VrcCmrLd(@xz`@u+f&x55sq3>a$B{mXWy39J0}vjC#MnMRIt2hM8;3;LdN6gEa6Z94U#% zo}JUL?E6FRh8Ci=nPFjyXmZ|15)|cl=BW7AUJmv~)y`yI3{liSlE1faXx#^y6G!M| zFWZUz%f?@GQuE#>*ntz%%xaLf8bK2eT+J{ZJWwYbb&tE#!v3Z+H7mbl@g zalqHj8WVo6tpK*bf4#vk8MXj<@^G8rt%IfA{nJKK?Y{gdTO^OdfO=1%hBNlGZ{OBH2sP|l}v zW36+}Z3ub(ej2@57O4f5WaeY9u77<_Ol5&h=mPWFq_9qA(rglCwR3XuNv$8rx)=(I z#|h*%A?fE?h54@)I=c_GeJ8?3?@lUGHr$%>NNVs6eLrfQKSNHZBSM^{Tg{7mP4@U= z(PWAf<3-1d#E_a_nF%$`iw_~L%UN}1qlTfv0GQ@b@ zR!D){q#>m#iYdmYELW3`JQY}eUth)?b@mg_W}d@Z_a??FAu70eNR_^Y&X&J zx*aK=E2rOn6-uRnUA&Qpn}LRc)>MNew|Aco8RTDywElP{jrcm%p4q~}jr0UNf2LY^ z9k(O&zQMEds&OMF-o*;!jVQ~Rg_ceSD?2-}vMwU^z0nkhd+dMkj6Gq47(&Ki>u=Fm zvdr7=+wfm8XU3`PWycB%mpiLR?*tdkC#B8xBg z(JH$UL?ZI~+x_T(rZyt`o}!hVQlkjbxzH-fA50>WjpJnE5m1_6&3e4i!LNqnHE>wR z!r_Ebzs2KVn26GN0KT zTaaDXJ?s|=zm$!8NG9yl!GZBr45EJfY$HS=n%6wi%oS@&r^2kZqZ?gRWmCX@TWk))s;ZG;pq0fRy+iav$Ow&Xg=7LI8#Nc7&q9dGBx;bB`nIak_eb$h{KAqPP+QlYG=)el1N zMaABO(R+MpZ#+x7HOU?@{Bp>o)lZVd6cI$=K4)Kjs!O^>JY>^ybdBd$Z9g2sOU63} zce>wvb&wk!mp#C`$}FaL#HdXp&0G7^C9zE6EY5edH;8P5tuGhEUjg z{q4~_alL`NO|B7)BJZZKnt12qwJXl{65Qs;%4g*7a~5GN@+Mlh_6!l9F4>O|z$k+| z@M3z`ZQ%SB^IN{QW4Dh(Dk3)Yx`3m4;8b*afbE0N^8HPM_B7rt=hmfXMRu}uG&V&` zgovI*kP%&$-h_bWn&h}LI+!a%E;UCZn>W{`$Z`Bcd9(KftM$au4?Ms4{E%tX0_SJD zVg|p`%~mac3-`59C{^Xty559W1vW;6Gu0#SJX%QlH;HtLo;J4*CyG|(jK?eF#oc=N z(yH|m32W@oD1(15@qPdf&4+>thDz&vx@Go;F8T6OKp1`bp|tg<-~VTbwL2+aJ>@w<9D9m|9(# zmAj|HJlF5m<{2WK{N-v_@$H1{21MnD4D;kK82DvTV{z8HJm|N6zh0X4dR?*!0TwZZv3nwD>of=nR_u?T$BtHdtp;HW*#)n>ToYr!7Y=;H!AgKYLyMyI3ng z1dX|<63kS>(jjBB#~v{od-1wBDKoq+#ilJWsb7TBX+0;*qS>a#MT}y*#$ktFHBTp? z-+(rjmjmk|IsXgH_0e23j<0KVOTL?Qj~?Nkqmwo^wsaPlj?U7Y=gTL90Nz^4q4jIU zD{LXWYCo}*fo@-{#R8)p_wZ@oSl!7Iv-be8`SJJw;&g9!rXL6mo*@$TeeZYtBmkfSII<%geSGf3))&PV=OW;sf%b3Hk) z`__CkXWCO%+oe;wWflDjv<&o%x^Pi073yjWPOP8&8j@oDcxzQ)V`2HP9z?Z0cEjW0956_0j5jJ64^v?TFf zk7hyh5^F3+j)?b}9p0)r;KdPhk9OFO1-F-%JDu_cp0)-OduL|TM@Hd^J`W+A(bw*a zIe!eD0)XTO7R!c?hSt=-_@%&o5nZc%jYaqbAX{Jbm7zS%x~M(s3%xEdTSf#u>%<4t zie56)pXIFuRRpHg_pUaM1Z7oIk- zh%OR0mW>(z{zFqKeCO|Q>Dn%cAd0Ger(=a_N+C6ixBcp<2C>G4WZziW$C)xJ_zo$b zgAnqC?8fVdDPh~5Gv5-$kJe4;=Ee&`N!Eu|kFcJPqs2b4-U(thGP-CF??vd2tpq76 z->u5%@XwCDtjxwq=`(@hp2EO=p;w+Lp}Z2$#{m#!*Lwu^LqXCBx83WuCLdzA5KbFa zqYo5J`Q<>p7P#Bc1(CAj!s1@qu5Shv8GeqWnyR*z%HUTv<4w<4n@SHPd5T|bu{Jfr zb*D7nC%Vi45)Gr*QECHC@cqD=_?duZZVz~~s46as0swqY(3l4usi}L^4yE2ytRwZ- zz&Ko*6n&lEH9ujHooUzc9i1Q4K2_9)sHZZ%gR5`n2Asb4z;az(%Q!5_PshrOz&~(y zEm(+s0V;}NE~htDV;-fm*piFGh~r?Ylo<8gYRKK#C*%LHI`Ol%qIgE&Xo&N7m=!Af z3!)_fpfaV!4>jkDzPx)T!#P1_8pVwaegp{uEm)wfp3bcOY^Ic5-IOV zaEE(y;Ltl%JdvW$9acLte47&o9Lze^W<{5U)Bq<>8Kq@aba?*L?BnJ_gMF44)WA{t z1<4$yQec=)OMu;px-_i>$3ECFyHJIXn0lSNx{V?~BO3tG(t%lbJW^^Ho@ zAJ-9dz{}IF3evDyiM=gh`+cA7rEF==nOe!MX2d@?U3tn#kPp*_{Q!#;v_QAfs#p&O z6~NS@`%Alr-I-{i&#+qqgCyUA?pk%hZE^`urs#;U$b&X##zUE;@IT8XGLJN9S)(tA z4bysgA)}){*`Em!I0JO`^I>(39Q>f(g{8!h*zPoPy=Mpg57)m z`XIaRYU)jv3IjvYGwkN65<{M6C1?Fh`@SL1SEOUChG%D&D#^J@Gz%MxYx0m-Pf0i| zlLhA=()0=|=Q1f&({0aG7`+z$Dv2YWth+<*@3uK!g<-eBP?z59Fm`&d+OHa{XtNcI z3SoG6*I>VrRZXK*d*uLmhqrJ zR`3ZO<}Ao&XkD1??A5J)d!oam@(mZnyV2s}nPxLIL2Gf)Vhn(iqApwqnAFBRO!tY6 zJ#{$@gsU(965KB_yvo&Xx9&=!ewIqTAg6j#eM~Mw$qU>5u>s|kB9Dfam)g>vPVE3C9pMCT zqT#mgNEoYd$lcX+5P-3zITC9E4l{Wzf z_hxEaQ=y$^hM5CoFK+B!im(gE=f`{RvAK?$#G4AtO`|_6W;n{e^~oN#5}tmRCqX~! ztK@RBN{KdNf!x$jJrIu&$;7%jLut=_V(P)kZi(8jh8skxS)KfmZtKI5`P2)Q5QBp^ zONF=+X0Se2Xl>~-$!GD3RJ{T++_aBOmfq*rhU|ROH>K9R)(2&`m2a%c0CIo>1+n{V z<9bvCC{88Z?3s3H*Uk8-(i+cgNa}36^`a~vP;!b@VUa44obBr^|3v#^tF*QnB#cmw zx=MOe6B=9UIo|4GL#4rwe}ztxJg1@F1Cqx`DS|l&L-3vke8@Z!B|yZ`PNc2+{gveE z<;V~s4_m)OF5bSq_~0vD3ifX4t>ZiNF|8}}3kz>9TB=pluJ8=}T+|g`6zY@$kR+W{ zlkT&Z92lxLL7kC3!jr1sX2Y}4ezf>Ntg=;QthO)ih2!x=25;PXy$gzfQ>=^aS-CM30)H&^!=0^nK8^q7 z1!Yp4uFLqKMd_hqHde0kx(lStmc&Mjx`~L0B)#gSC~!MZ%xY6F)xR@wMS00Q0{|el zsvL|bQpnIrAJh<)S2T>~=)8F;QyY9}XEfynu62bdT0vUxy3fp>)nTKN5N1I+mDBy= zF1>1A+Jw#{+|lk~hRUpsPz-R}6HQFvwhmv}np<_4NvR;>*d9(TKH?L;2zqc>076wC zxQ@SyzGN_9=$7gLRV9SFh`b?x7}SySfzj1NP!^!gGbp*}-mmHy*s+-C5p2+hsjU$E z3l(uNmcQk*hd8eo$Tp94@<;0-dGy^ARG&Uko|!H+zsHeOhB@>Mgwr;Iw4aaFK30xh z#12M0)OxP9HwuJ?j_HF}CJz$$B2@hXEzXD@ay^&#z%Y;gh=JN1;R#r#j2}dB$R0t= zHr}ZXUV|(pc>YmJI*GgAMV)7fB&Fd^sLwU4?%zHK)dE51KMn=^pRCk1gG3v+y*dC> zugy(q;B3UHxm)9d{GHz=d9p*0w;9owXppN(#jruXu-NnD9xi@f|2E^?a^}S?(ap%+ zlR}FRj2dwv54k+{GAiDWy@xeH;CFj-bSdU~dav>NX++iV5#FSI*;Na)ZOFR?P*j@S zpQJV`q+Vhi(-IYwpO4{gJc$hg7vW?ipqz}<>hKw4eaKS3Xg~K8ip(cY;u;rQl|kI7 zd@a$Mo!B-LUhAIhNEVTpfqUISPA7>T{UwGj;dpOVWC-i`43HFx92H8t{}P!1hDZj4 z!K)N(C{dfAfxK>YoFX_jzz+xee}`6ZeJx>8Ko977C-}xU3qG~kv>}W&2po+WoJ?3} zqEjncHCS`2CdF8;^L%d z30_D-I0tMGCk~CTQ!97uT3A!CH>bvx`bw;YImK)mS}xKANpR%E)>VIpajTcLnhQ2zQE*1TJxq)_0*fM5wo2-Mf1a((c6$T46< znp7=Q5kdOX1LCx&B6UKQx!_Cw4Gs&TjWU7k%I%fz82{1yS-rL0!my*;kn9Bm>OWzX zh0OXEsjIay^AHuII^&tUxJ-)mS#I3=MkBy}?;c-a(()?Za4?oD6+T~C>#I$pPAC)Z z?f3+v=fkfc8w9J0TVN;K?ysb>Nk4<=xidAW_rv%wab+}f)nDvzx&&F%{_R4qz~>0v zZXpbcZIndP+pbv^gyO$~f!`Wzm8e_Uag#h#QGT0^c)=UMY?J}H6wb#azGL%HSboneE3_xF|38h_k3=&v-i2?%o8Te#=G zIfmzQOkS|Y+3&cP57+nAQts~IzM|bGz#0JsC0I~LV%AY>V3zVJBHI_aC$+p4O#G2Z zf9G3no?BC;@kkChHXrHYc8VgHF;Shk}#B|E`oY1SY^v0I)`nY7yBSk+ZCEv(}nF}Le&8rg(9 zPFLgMniAAm@PvF_2w^Q+9z+jO1MpeYNWW+d?%b)Zx+;?XZp;z^Jc;wW^QmX{wH0nw zmqofIZPQiP5Ytif<`SX<>AWapM-kWA$0GRp76ac3r zHDy-&@=~np+`LeKcyxxZDoOmfr+q%2?09=xJkNE&YBe%2TfR;w-njRB*SL*3=t#N3 zqHa=@TfUQI7|^;llZL~~$Jcd4G`NxXB#oHUdZDD&5{tbS8tf{}Lx7))N=_}bStZw~ z+NsO;2{ct(^T<28q}ulcUV)_9`aAv`3=_Vi^-~&3@?Y#_;&`2i@#u#?cFm84*6l45 z?2o>ZcKg6XaBS&|xiv&&BW;nxyh7V*IbD=#AJmWVgZe!2!K+Vp>(Q#}r%#5}6KLMvJnagUB=CV}0Ki zHOVF#rb3tF*|5dtD1$G-6lLZ4?QrO1{BKag(-#w|-?NxTaL4l5Je;`hL)^BoP_KH9 zGjTm8IBskC^-9-!sySMw_E!s?pB0)sgce(8n>w2=2s~G~ zxj}j1xM!g7&x%%-RKUSxm+WibLCWW~wk2q%w=$S5viP(`ATLL<7<> zIVd?B*g2kv@Sw2&twHF4)urmyOoMBM3G(X6UfkhC`*Q$4{T-lK9Ll`B(%#2%3*rz? zrITq1v(^4go_bJ+WFoZ_!cg& z6v{cUp5*}%37rM^zxjA35>TdPv^*ZYEvxM7w!3>Lfgf$if^chP`@NY)QGFW+tzxl2p;6CgZe`Q&(UBz{*YnV_qO8kAN8eqip12uRr@&_qgQLsPP*55ILGzf! zRx}Y24cq9@LL%E3niCcTX~`5an88KgaK2xE_o zGOYXQw;w)dR3u8DlZvUD(z3CT*_Tud%?Hx0^_O+=)RK^|?SG~}HgPZQTDP_*vtrO> z5=P2Ek9|k5us${z3udR^-X>-2Iw}8sK($iZ{$jx zVzPaSgi)fK!smPz z9}%N96ZE_q_$;*2MWm2pjCB`ySCOnr7i%3)Q9;+#)&l|-0OD`DRq@Wp6a;XHw+P;e zHmlQT-^wNn-}>WuE%;P>-{nt_jbFLP3;BXiKyfDC$q#ziI}~It zOjF^ok^|~HReWvyljVu=pCDFKy4Ii(^&@e&&i}L*_?@~OB99;z7zZJiZ5++@BnVQ3yC zoy~1jb#d@%gR_X>=GXF+&ynwb2F0}*ux7#QbtsG9N_sS)3c2lM=oYAncvZ@&_K)|$ zk_sXLwB<@o)HMxpxC(& z-eYL)fFUp z1;9$ohg|lqcu>Q0g!wjP@>%rd&zrMgHTJJ_TO3}l?@;_r+t9xfRDjYf;Xlsm*T~J{ zUT=vZ_@-Fo=|a0aXixZCyT6swBJe75Hnc>53B5#sfP;R@zujsG;oRQjdU$hL(CuuF z2WMt&)El~(|MPwq`5ZDf(zu!U^UApZ?tD5540w{;i?@ni?fP z>fI%X)snL>rPUfOC8N5xuRJBy6g$K6CM;(aOdh$cl@u(Zhk28kLOuX%Z;qfOW`o30 zMuyVR9p|FD`wA8f-NVt6Fl zHKnBvh59U5a&k`}9tKFPsM~Qu6{`ASmVwdFv(Qrl9B%%tv*#xJgiu09$Lwqm|M$t= z3|l}J!Ug|} zizuL?rT3ZjUj@QYPVr@cK7E?7c$2JuZzm=R_|71;&EUWPm~M^`Hcmhp z{2<1;m34R)7V(7S$_iFUPLE&i&)uO61s9z-3H(oAB!6=!ltsMM!Bf&(yyQ=BJpBDp zFbCFdQ z6$wPoVY))Jn*)<-f|<1GQ1txq`re$UAvg#p!{77zLvnveg>oJl-p3e|G|sBW$LI-+ zDT<>bgnS!?`hr2)j2yBO>sQLmcl0Y1U4~!K#^MC%ug3qkB>6p98NihrJ8C8M`WN8~ z!fXIeHgi)tlDIjezxN9&I`7Su53P;?77n4m7CW2Zg^*&wxSq75)(1HX*~tE+drG`t zbXleX1X)?_X8g^6I>H2hPyUV6`{u)+KNEy8h5o&{!jbs@>F)_J$N3acI3ImDttr<< z>!HkppVEq_^oO0`#=#|6H97#bPMN)lr!?3E0iCQrNm;PQ^TcpxIjz=B8mMqmB`y$p z`g=hzZ2-}9%zESv+rQKlkoYw~EU)K|h5g4&p+oG+2*P`bB6IR~q0D0u8%HArSxU8^ zKBELevYeBrp+yBQ6zQpN!>j~)6}+bg!q}VaV40tDqLhW-RJc@&BLq^vsG9WS&GA+7 zz=X2mHb2~a_5Dyc*ej|7#>YQ5ZS7 z`swZtf4)!K{=i@Mzy|ZiMxc%<1EP%GFS5D$@DF=H`y~eIjsJxw_IpDAc(q;()*d9R zogzUA)GU?l`PW}>c@ZN2q|zglYya=85K?c^g*!KYZ}k9BJeipgC)q!S`z4r^!IE?Q z{R01Ep?`S76BeCXZxo!osVb~}bm^)H^xeD8FfPE0*9-t(`gQH$|9%%&0s=L_JVlr8 z|C`6KlfjAmS@k=8yE(xdKZbt9%tzP+Ezq7}VfCrPqN5EqoASyg{M_S(FP^d4I3mls zMn>noi7q zE5~S@M(Rg>4=~JXA`Inz&Nzv{>NTuZ9O!VB<%N9RD!R+@`XSUvxT(klFQCAZSNV5( zf6M;A^$XC;Kv&9s$nLTEJN@ooTj6!Wi1`I(?&Nk`#qVf?K1f`*k{)ureRJ}p(Bh=F zXBa)d3Gl|>2*TKbL&&z#XZVku_-oOgsX%RP(lInR{oEtL6d*Y`6&Ts%ZZIUJ7Z4e7 z^#svh{=wEihm}Zzo^;>4vcUmNxJOM)<^&;>{6^ZZ({Cmz%YhNY^yNn3)XU@fF=x9aEr zLkata0@7sFUljVk{fieT6wkV6jqAbBgSZRrl!>#Lbr5%BK^C;oqp5DB<4CgZ%42pt>Be7AbVpo@e{gKfjg-mca9K04QFIURAh_;7xi_hd#^>FA~1_@DDpdQNjMQhyKm!Kc`*~ zwV*Yz!nJ?XM+$WJxbN`G-8{H9sJh%6^<}%sL%)|L$PE5vU&Z=hTX@Qa(07$(c5ZN0 z&ph?64!J}kJKpOToxW3C#e1)B-2ZMK_^(l#{lI}(H}(kq(hY@Rd*am95>{pYo<&Fq z)Mk{(?y&jyh60xeq9>Z^<=S_f3zvN=*@VNkwqBu^EN|}WB+zLVLFnBza5dP{|OGm)V74Gg}Q(!WnyzFyy}nG{mH=7D1qWjPw_S714vrJHP9=$b{^tA$+Ob9pWK zrha;oL$DvVLWPVXR;*XIrlnN?or;cAc~<7&EF$!=5=fa7bvy+%^e zW-4hIlG^JFczL&7SZ(h!ZF!#B7`8d6bdFnE1&RFUDS-oP2WPM%`um<(kP1%CzIjFd z294krKqVFX8^hn~{~rU5DN`1L=p?K!~?Dh7rlh zw^g;PlIAdTrhX7yFzcvos@;b`kxr$ftMHSPpZE9NQww5TyR^Y^EUyxsWH<3XrVw~O zFlFa>q-aDuohmhXMyJ3jXWM;J?G4qRl(!mQ{U7AtoCl!i1I6EjItJBzJo+|tH(6jz z0z4#XDAK(7@b_?L^dZ24-EbhSZ!lOb$pb#v&i5)Z#3X8{L3u?x6XxfK5uSCRjYs#o zTH(Zm8#-!hh@{ls{35MeqJ>3Xm|i}pLz^pq=Xh{ba}~X=8`T<>hDs&#ZK?eD0cM@$ zv=2f4%zC0F0E;nExo^5xt!8#{>pH$7M}XPpeTlJ79cp#)%X**S#CZo+$mB8kpg-&DRFF*M*JU6HXTaFrT<^Z7{QZ*&n-w{P|ZY!%}6=`%gw{HI6Pd^ z0H7#gVG)1$R0t~vt7~#j(*KpL=;c$(h(njl6+Xm3-He@V*BGh{P~0XatDAhSF$CG& zIuB;G-hOs@V3!>!JiR{fv@IoTcQ>>1@XoyQ{cwZ*5Lx_gjnw|64Hh;`a;#)NW}_o% z!lB%Iz|gyQNy@w8bI61K-Gluq3SAP)N-I^$@*eJ-|ZTd1+>ZPwtkcG_@0=^ zp284DD?=6A3lxX`aRbg-BFm?#*%U61lOIHIV!fjjgUKpnAL+x?M%vDU6ZJ-sSPX}+#;f;WdsmsK>)&N_l)Awq`A`{DDo?oAGHXin zd|4w;DJoX~Lh_ZucvLCJ@~k8?L_p2{Ba=4rw#B!DlONyNMz%OJc51c5KY8L<{a6y! zscZ=B{^tjco7V)gcaUJmBjG3**U(>!K1MON_E_c3!A%u1{ z@Y7&#|BcswQ)&Yt@B?Trb&R|0zio`@r-1d9Bwv%>Wc|BwK)9nA^-|wd%)d=)y=pKVEz5*&C`O8-;N0qkp$?Xy_G6>B{7MhY1CcvqC(oV< zcljSth42}4u)7{(^l@FEJ^r@-h#;Pv-z~6Z<9L0OWkkQL9=$#EajF=}VQC^)CBaJW z1cI)BM_`$LoL^JrT82hwJI=eOxheV0C5VC3r$> z!QBXNQMp&xz;UKyZ3oK$|x)CC}f=Ny|?{-I+q#etk| z!(#OLUspEJt(39|VIW+<)iwFq9^p}@=6x|ufb=getJ4}fsFqeJj$uq; zbxq7TSx#|GUiVSQZ@o19z1{HFY@scCa^652HH%I+5#z@-QpDb^VLwMekYn-#$lB+Im6 zT;g&*16Le%oyW$Qy{2bm6mY+(>J?{ZehugB+6r}R40{%j*1%`g7%6!xD&3ZVu?U2_=FR*qc%vd4hc*%z_6?ec@|tGGjxPO<-?)jujW$V@qY!wrceH2(@O*K;lJiDQe!L$^;l|Cuy2c6M^ay#M`;mU?P8dgHB32ek zh|`!m9lqspZ9`zhG8@*mIg(CJf2pkO&UDtRbHp>_cEMPuR_CmN%kq(=BW!%}YEg~T zbshD|lP77HRFBRl-?}RvzG%TGCVsCQW!~oEAa`1mg77+7tK&_39`+69vQK^c9T$+piw-cO)-KL5PjeS`I?;!whZg??3*Vi+z{kw%Tk zpfS#l-ks|6WQIM$QcnWb%*<@zMmtwTl1*`C#OKRzlRe%>R@+ZMYWOe7X6PhyqONv& zVQeRq@AhirvGl8H0y!U}TVogX9{*r%B8wSyr4xPLZsUq=lhct#)zq@@U1RJ2;Rq#Q z0d>=QiLTuL>6aE+hWo(RJJptC`rbFfGOlvU*tQ zBk#Z2Hs8qpFu%MNuxB&UDYUF83LuxFUcQc1(L~RBo9yCX{I=-ct*j5$Kv8XS+seAj z)r1wCO#~F|4~6p0ePYilvX~2|1lGk&vzuVHP<7|H>qF7t~v2b{vFF8X*xwpf~=1WFZ(8nS^srK|1Hmx z=<6X5@{xZXf*>#SvJ*VUi+l6+1z;Y|alTnD_>Z$~&JON3&& z5e=8|4Q6iTkY37-WQ3k#>(g5w@ub-?1jX3>G}L6H^Y_+8?+Z~NNC-Z9BVpzzOQ$jk zlOYLAX;$g?%j$Zryy4oeM+l$3eg4h>Wd7df?~3>7Ez~~{s?eRJc`RS$e>EHtkv){< z^E`sK`1z_r1&Ab(YV3A;9_?EwTpk}*$qkq)#5ioft+gunI>;Gypk^T{v;^x^M6H|0 z`1)`L0Cn7sFHuHEBIroO5q1`R_Zkn*Z@ojm*5AM{t5PZ*BT{&9-87$ES@pv~TjHwq z`hv%R6l?1Mk?>MQ7E)GKNsc%Da)4=E=PHX%G^eHag}XG2o&uJW-tkHSATr0m@&9tV z|J>j{IiPJX7s}J_dbW1({Mx?3xBz6WB%y%}LYk_EYD&lHGLqKTTw z0{uef${dqCjpJ? zrvn~})QQAV-X!YZLq3BCiq&y6nT^xsH1hKUkA2AJr}LjjA6svBJR~>JH_1j1A10RHkxu z3d_X^*&jW+4cE%@a82F6wbKYK95!d&pu|KO?J(=|MPKxBVs+yH+W8Vc(C(rm(%(yi z_SVKp7@r;cR9h~DFt63nalg1=!q1ydEw1Biqc;plS&$PYLS$d_e{OI?G~fJa47_F0YQLS>l;j9u zPavF+7-0q82xH=6`-k))i@f!rrXmk?x^c_&iblwRsB368^^BmR+m}hav_#S**|WH? zoW~MW&%kSJ^xCzeY`o3SD@MpAseM^elYfB z&~?i))_<5<63VcW07-de0Bw_>R71h;#jJgMB2TuEX)+UX4io&vQVS2Gda)*PmG&TU zhDt?=P+R}k!ejs`SJUU;jby#ECv}P`dTZ%T2Dz!ZdG5~hK#SvP0Zg1#^AO?s%y=dJ znYXow!46w1aGPAOVSs+IJ;J*)oLuv)VPr(i#2xV z96Xn(9>SCZtw{4J7F~`BkPy5GF27?JZPp;WbBIee>thG&OFi-O^yT9)L~Twp>6=RQ z#z{SfnoW{_S)KJ^06^?yg8=hweNu=c?($9hQ~KWAnx4-`S@b=8cz~`SqQ~%7Y(=Tt z1mq6pLL(9EFDv+3>J=z6B_PC29u?yAx5F5p z8WSHsXs+)8JmR}Xfd}f`EDCU(D&Jm6Y$si=uqeg5N@U=@p~iR>Ndi~@vcfFx(Z3`a zWyh_%X^;Z-&3UEBCV^d~hm~nfC82x^FD}0@j=?(w=Ucs&e%~^P*wVq;oOFih*>bE( z;y~6U@Rhv7rXz-l+Wq@1c^M7zwSUsOz*p+Fva+Ja-uO@L5e~z0I$WeoN8O~;x4vr+ zG*8emGD>sTb-M(08u*zMAJ85~>4M9kRvy1rnF!2}?Xj`BMfzYYZOo&9C=OT;cxov` zHDAm^eH_rhw|MkhzUJc`f9K&&llZpUR06Ao#=3p}WzRg&Kb;_dy5Z>Z%hFyO+B&?o zc7|nR*>$<-{v^0E4xbCSU*T^!kiW}MtgDt%P#K>?(7VyG@}I;nhz*1j0qn0G0>X)r z6>`D%fUx#TC@cl}iksF!Z;gXI|33L|9Sqb-^b^6iUTzoOOO#ewOXw2w##)bqqE~RR z_212fL_fQ?eF-er?Zf%a|Ik8x%ppUdlM;G-!+7V{yC3-DKP5@;UC`7#x~e*WH}w#p z3e+f8lq|7S?fksRfRSzqaom`}DYv~$n0hQFruKns2Tw5l?P=UDcNU}@^6zr z@58%Xr@0ARBuTEBjl`>D_~b$N>&zQh^L6%XRf>H!w7pK2V}lh{#*Ol4s4aUKjpd8u zT3JOR7D*fupYBYmYZ?s4VZA27La*JQb^Bf#AJ6nM_>zd~ZceS=W84U5(Z0u)d5jYC zOLQCxUoX-;c$T_jR17|xX4^}t__dJIM=|+>8(zD)Sno49O9}xeavRzoDqQc!ejBvH z(SA(gBew|!%8Pm5gOj8B%?92k24Pjv83W>xf^{3gVK3RQ0~~zan!Vi)240s# znB?T-wb9a;R>Fld9D9HB{oTCwFjlv?OEW9I8zSrGNA*f*yr8y`_g5?xi1$c*2!4cz z+l9MC>nlYXVN_Zlk>&1=-vSPLK7=&8e3ZyK*XORQq(~8--8K99PXGo*QyxRve*`-z ztRLUw)R5~9nj0^YJ@LF9;L$VNsK@SYhI)6ZjJfyc$lmuhB8Vz$C7xAO{#9!}Jr z!Fxu)_39Vg&U?k`E@5=nrtezFW5FdqjpS&tVNgx6t~Ne4$?7U@e~RDj>V3xnM^;y< zO((bFt_l`DeuSl(Ip13j3f?9A_o`vqrOT8Se2&b=iJYHr6&YHG>mtF!>#wKezAi5_ z_R=DpDo(4u9@cc|(z&X-;5J`Zj^@o_h>HvB*r{>bxl^hDZ+WoP{-Ga^J7Y7k!Z!Be znX(hPKzX=Ui@N%y-4QW*LOJ7Cs0(9Vm5I8J|MD1ZlM5R!nmL4)=giiE(Z|#6;-b)X z(H$>)hKxAHtmDZ(ArOiI4K&wfSc$xK9g8FR3h05RQBjTa3tHR!&R%%27+E>FXa5gl zUmX=?yS+U$qLg$aC?FsRf^uGJ9uZ|RbX2*vZSx1j||s5;EaT#D59NsR^Q{!f|@J{=gP zA^pk6x?AM)0Le$Vm1=JNm<;<4lxF63_>;c~TwrdStnGWn*=vhv9Z*z?H;CqRvWt7P-rw#FH(M(Kx@a9J2 z0wFk9il#k$!fJ0=&!#S%Ed$<*9&}yr2)O!#7x}H|Np-dEM&}OwqSdVPT>@xzo-L!i z9><y+vVh&GWm&r`HO zJIXbdvmYr6#RRc%boUHr)LKB9NVqC^mvCA@9Jv!uBZ)p^AoB%!^r;lc!if%FEttwE zL2OY%^cxducS&5$gz&pdnWsIQaMO*I0U{2nJ)up7__~^e8>Spbh#lPq2zwa*- zfY0M%k^VYGfe96TD-yClWpx_gV5VKDxai+bP&vv%q=s{3aCH%eV>msJV$G!&vj``_ zHT3^pJQf=1a={8obooE{H{QPKgb)lgwD!;klY8eOv53RzGN8w$@WPwz(W8jOno#Pj zLJ9Z5+Vtl16sRKlJ z5ZtEEDBl?|4qbcJm)f$o;OM@;)HZ3-pCMIpbylrl5N1}L2|$%!GN(7$Ww_Q4E==qN zrbGdh!kbe;v$O)c!-C8HVy8>&=+8wJaH6X2x~KTh-zA>j{px~U3iq!o`xgLD{rRAO zM>D~$s|UdC3+i=p!SwBw-HTf!B)!l$;)wjeBXXZ0q?VSJ{r!++HZwOIML3Lz;>3-{ zmN#&^I65|@|AlVm>w^6pkb&Uxw9ge4;jL!t@be4u@7Q5tMl=-)8!vS=rXH@rZU5|H zwzFjJt1wf9Ce+L9aHq;@;C4nydlgtys$7p<*RYA^q@FKTwzjsiI4{f8xot8bnO!8urLWF*p(f2`xgR;UGTxr+A0FF#ht^PI=ZE;$=K z4hIOS{mj(?ron5wy&U9p)d;N)q0TC5nWR0qlv##dFlz%9aG;C{aS9Dlv0mI;&!fll z#v{v(VF;jcq;KI;LQ670416>9J*b=0eLYjm=IKYjdR%@h#oE^+Sfv*evP1*uU^|(S zZZ=LvlsI)HA6%NRh7EF4U?0qQo+SpD`tpts6xkbGxvmg@J-+{Rf95T}C0qOX%5n%g zPlTzWJU+StPnJlzUEB9!AYXV~IzRx=^Iu4nFg!|m3r0|RLy(;H3$*Vu>pp~=+x2bU zJI2&Mo;_=PHxi*uJ$LD%Inl7cHN!do-`W7fUn1ez<=f zz9bV~TwXq4ZsjZRdTxH*-w?ye#$MX|V9wY?m5`UWvAJWE!ZcB#rI#H&zg+Pu%<7Bw zOvBm6cF5eETvfVb%#Cp;;Q~){(G36D$}$QzvTPDPlI9>+>xh^DHA^MvM7ek!2UHd{ zvJIEzC{Sss8y7U|)Xy0VJVy+v_qftEu=LCSIJj9q(iMnHqf_Uxf1D6ecJh(6s-1q1 zEM!RUU!45k2asw$xcl*I%XnFSRs_#OLGUmHb35ax+@?$$yALOxn5Z9G8f10q+PqIcPjul(uN95`av~;r%8skUC0IVr)#6R>q?5uWD3|QW;)PZ~pA8 zO*Z%SyL*-gs$qCoCjM{V{(meH&_H8_$H6IKI?yb-a8t{Wr{g7f6V&%#bM4B)e3l zhXe#e^|=5zi7AcY#rb;)_wz9bz63Qnr&+mx$HCWG=u}&ILIf7p8TCXrWwin82L>f9 zr7k>JdG%ub{e1QRvBhAgr6BxI9@y=s)}MnZ!NI%5A0Wlqh_p|UeWFH=yG#E-sg&!t z;x-N$5SreNh8NBiSDX&d4$*xk#l~j;^wM>C@2$=GGjvQ$anzQxalZBIwS&;VeX-vw zN*%PKN4)fSy|2lwXWW|(^Elw){nEu`!ZB>5V~NL0tL_1KTbKH`_4n`J-lEbift#y6 zC4ceRd51qz52P_g3_b`k5hP$%CTt7Fmx@H1`%MTky%k3<`0l$IfEq_=duM;X9ZD}m zspIo#xVg?_eF&#lp$57Ce;Iaf!=Pu^@166<%KJy73@t9!rwtLbId1n1}Vw02K77vfJI7(7G+W>F8BQT`eu28lH(ChGvoz2-|m4C~G4 z4f^-bd7lpU>DEEWj^J!-<6KVz}H1;nL|9)>tUBg$#^C zEU1t7SjmSfr9T3&khI~*e+eXD5BF+>ADgv&`!?W!@`GhCzgiL-j8mqnzogg)D$^G@-PoeaCO5o^ z#(S*SgEck=+6f*m5NTiYQR}&{IU$4Lbo_+Eu4XFKsSE{k$wmwpub)p0 zOBOy8P44TEgClvs|NQnHH#J}Zcf?q_7aO&Po1jR(qvAq7-3@O?H}5drtMC}k9OUha zc^IB?+c>+&^yutkmCJg~(afyzNh?qioIpsMb$vlHx52>R@yo_?hLz8%1JCFUL@EQ2 zDMHEqVEE6bPdYBlK5;ge?_NI!$}(TV8{S>?!0?+%z2KET)@@Wd3XBV z3_IDu^0%P&u#L~aS==p5&nip`@ALDuLqHNvQSkv`aDNnH`_#I*{XiNcUPyq@R8ni@ zeTCW*Iv!%XGW9CjS935!DB#Ze{zb3*dM(>>fqe%);g2HmEeuj=YoMU-5NdGzn|NObQ&tJkDkwExu_LzILswC9&V|q6XjymCJw5mRNii14t ztid<~u_N)26?7?XFDXCigmP5xBu)Z_C#K%}`bYzL?kFD~DLgAWX@7cfbQN4QTbI65 zZNFSRmir*}eb10FbH<^AlT1)3(NyRI0|7ME^rmk^t1PY;&yrSY$fb&P`wZ7t#YbtZ z+;pm)ZdY74=olvu57X;ze0^sFZcaLJ1thw=#Qy(#`R&wbeevLP+6i)#(+RAQ9>`R} zG3+8dp6;D=rr5hIyykRR`ruK_LVcMcS{hKoQx!e~&XZetFHl}V#?li>|H*rQY!4P# zuLm5L=l^#^#mLRKgR4sl87 z<%$eb#|Cy+W!5Hg(DMrl(D@Rzw^a%zgC9*&G2Gvsskl2{YCMpaT+M!Pd@MZOo|JCN zk*|Xg)q%-TsW9j95X%@omHT`ODQ|hdZB}}@JLW4brtFmWo`{!#N}q*lg9{C4;}$qF zZE|ckT}am|P7rh^lTh$`wItO>ESxI`uZL=pgaY~S;K097cbaGZb&X3 ze|}3W0r<>|t1g&`iv?nF<>-ES;(0{Es!cvOYMLfrD)uS~fj*F5G_AD5xfL8`XSdeY zzCnt=y^!Xo1o)SB+2%U5 z{2zUNoiXfB%oK~>)>YeY@XGFMX_=T19<25T)s*M8UPqx6UfUyJQV0ZQt*RJyEd?xy z-cE5F4hDNCVqg;(;JI8KAp!04J-#&t=qEf~(T{?T3Yl0=yf2QB`n2kTop%K! z8i&MB`U8lE8SaT5WCxP8b4G?EH#av|+3eGQYH;xfrjQbwADVmd9!TN}4R99MKc5Kfw$}}U6_*RS2Y;`F|MP@ydXL1&1j)B7>56@n;fP-D?^(_+WdWzV%oPwQ zt~(hnP;9pCbiQ3cf={h8qe;_fMFe@u^$;c9N9~ryY&B-LisieNsakROBaqQyaKq2< zl|6d@%WEfa6qOjAYlc0I%Ifd-#Ta@Tg%H~ukxPGkL}xY>k4(++>WJ^27%q9kv=&B#;+ zcfT-UI2k(xET$NWn^$YmHYZaL7&U7!bQ;{&w`%lyJ#d-gWDNumngYy9`TqH4zQNwi z!N$S=J-Y-og@eQ51zzfKr7^Si{Mom|vy)yD@1(ai`(G3S zJ8e=m+z84nhegtKEb`L6UZgHVaNp9x**@8QmzI^0R-nO-DSDgWyW0|+aQpnqHp*aw zLWdL8tKe*UfrZsCV)agg{I&>t$(J0G0+SOJ4mj(r@r!Mh*T!nK)%+{KmJ2)A}4Be8M{%FEF$ zER}@I06-$-aw5K|wUs58y(*0FY1V#VLO(NE=5+6i(YI_{O#?7h-`LA8d13=FGI4nX;*G5+VEqvfg1w1LRMvk09aVA6djIuG|Da9bJR=51fZi*RUApZql$R0ZkJg@*I#Twq+{-3x`@Cx-e zBHU~Pfl;H|G28C2b1$d#;#96Z4D~H!Cv;qLDXq`yeJ(24=Tj_)#DcmBQOpilo>fa5#=6pP{Rmi^S?ltVg7k z)%l=}xiyKW#a*sU1UiHU-V$RG|5#SVA~3LHtK|Ai^!Y~_@wdeWyN15OEgIekNoH*XX8=Fys($pJX8q*zeu!g zZaJ?an^E}Vpy>QA1)a(vE|2JEr{TeI;$Z>Nv&zeUYQ>9KW{tbae2ojsd6fs3c-^t> zEv^b|F_Yjnt~nyjynBP^YcQZweGuegeRv^STv-~`Ugdhpq+B>2Ae+pehZupk`jJQF zY3SvvVvo8pWpS1^$1WDS$T7r*%gZz;Ka9b$FUH-W)05N;ISdtKwV1l=!P0}>?^-WD zOLw<(%g!fzTfY$UDq**hyN%O$=zJmLev2aGIq5>*2w}% z^CKu1D`VbRC_1Fk?GPWtZ8hhV#y&Qk!op>YlwC|5v7YcfPH=j$Ypq?0g>n!hb2 zU3qX>ZmP=I-+?g9;&K|w$vRj}YVz|aDB`J=TQO8vgya|IZw52~*WXm}WcdSI(WatT zrO3r4CGTbq0R$3irCsQq#2nll?lwvj*>9oGE7tEdvbgkYJev7@GyOeRl$w)9lBWJ< zZO3=MQ7ZbfNRt~ULjpJIG9;I>{xaIQ2?hjb5pXR)>fR}iKF)?K@#*7|jr<^-|$k)ai{70CywP#GeGqQ4O)tkBYeB|QKOhKQZASd^&3FDE#yuncl zkfoT+83f8#KhE)g>iLUpV26c=uj~Kn6zJOieAzF5zHEol9O2t{c4mctzU%>72&2^+ z5AZ#eNjfKiRb4H$8us; zn{1)^G>r5CArfLS#UEi!JA7c0yLH}+qSJUjCocEc!ZLq;D-m9ewaQE}K*EIMZyl_- z1Xu@)CI+$>Wjs%#2CpTgecXJw8ip1e?0E-5(jj2J^OBUyO?{)ze$sBK=TmQ$?+3Tz zwI}cq0ZHa5Aqfx9ZS-RxW)LWr<@4FR`G)Xl;)XFIfyKbh!D{wd z?ok4lLV$^PmU^id&r{23>SHqgbdIhM^o2um`&x--4Rien8v5m4sr1Ehr^fw7XGh-< zRG`%lQNFe{jWUrd6D0#{M%&US|15^}z$;IHz77z1)67hTD?s%O8y7o3P9zTcV*gH$ zdK12~P4O2YRtAmqvM>HgN`~)H6|Cpy1)rNBwmkDKw%OOp%ZX^(r_-(TiN@14Kpz`} zcdAg9a|=k{2ZSObV*CIfihHPN7{bp@I6>KfbEN}kYnh`9 z>%BrSw5ao5ZRBc_OjEKb;ei!Px_BS1&g&3kyY|ixu70Pa%WgckSmsYbtQo2FSM6*K zcC#T_r!6xx+UBt^OmdoplJ2>2Ps9_xsU#=-?hu!a08)?q+r4y_M0^HuRRDwqZrM;5YoqU$G!wt2aa{P*0zP)8zSt$|B^TGfcEL zwB={#Fa70HZ9cuBS^TT|@litq)sMM881C=wCUObUsH0r(Fqx0EVDu7?cXb#-#yGu} zKd*1RDwR)l(OX1*xuI06hmxb8KgN{IgJn6avAnzPHCuP5+Wu9nc(61?6;Z87yU`bi zwtsP!#CiGLgr|B9h!3v&wg4z|BzF7|Fnr?kXc?`!s{?=7Ve?0BX#6lknqm+Yu~=8L zg)sj8n&K~owy=a$1!Lxgo@xd=LJbuSQ0}UsSNze#|5e_;hY6WiY8R-^F4=iey|C}C zxZh25eUJ6r^i`n42nNk<_>ehkIXT0#SQ4ZjQNcGpWTYaGN7$a=H|r$t3cWlVC4Gtw z?<6zdL|M$mh`;(T%L}7>x)pG92q@4N0J!ciJwrOwTZ})aLE0U6#wF)>qYpD>0!SI6 z4Vqjm4szB>H0_FbEI`XMJxj5(le`ZM8|z%5a9J`s9~km~Ip z&-t*8tfq?b(N_BNO5X>WOzs29aKjim{px`DB z_PdmJv=8;-NC+cZge=oHfwSmTp?tSV{;I+x?1$^`s{vNHurB#3bYZ@qEH>gtBj}-x zFtmV-b#!1-cgS>HqsW$hk^~0)^Gi!~-hud95Kilv#IXv!AepG|-ybU$5}DGpPuKGu z@F*>BpKM=_HEcqdw9ZvFIbU_-cKmojt&~e48^=mu+^6-_<FceTCJ>j_p)Q zz4S56VGN^IotIz&@#4efpLIQ~rtnP%I`U%I!Uk)X$Gj~Fz4ix*j_>hoN}WXL&A0tY zjzn)^1T{raTvQnGpxx*9HT(u~=aHu#J?jN@1?>i3yNubT@Dm${V*mOAbPJL3d68m& ze}8IDwmZH;DOiVi37ng3Ii&Yiy2Jia8UHM2e8+CZSwd8+pB25<)t&8ZQj3*&=gT6@ z!Lri+sMdD-LOQz8T%|{}Bozsrj7fPrEC=Fo-8f0es{h4d%J;e^RZ?6ja7-C*fCEAb zZdd?&7M4EVt~xsvI6DCO;Qkem;>t=)wFvAUv!DPt`%Rdj(a+s3U)gQNM3e-UpIH_jDl{&Lla_d;X%Bv z`^ZR~$o)EEv%NK@GzULF_f70fY{vVR^#0!c`?$%CF7w~IPhAcc3eW@tjo9VWUglH@ z4cPxsv7QFhWb-^{%2R0iH|}^M4of0RD{yW-)FXvIwn-*Tm7J#@JOu@bKynB zIBS-8Li_NdVf?;r=$On^U+XI8we!;IP<*sRs^PmjdSP-tPdx8W4Z+2GHt9|>xAvc; zjBRaO%)ft%2i*L`QtHNmdir8aCh+>_5}^!&4FZ22d>IL~l!Or!0Wb1YKS!d+bA;vg znRgCupdFBN-_2#cS;NldsQCI6QfK7(*uw)#z#slL()vtDM3GYMm~ftumF)oebG}ty zK%#!C+2vLngTp$DV!VQsp2~7iBXlktFONggdbv9ahp(nQ7RU`pHEy&{dUR?dd8?!P z?8#Z&;z=K08*~sG_P&?5GPi)ZEc|fg^gMabD|1?CDVJ(;512CETGtwCo|z$sPS=G9 zwbDpf!lJ>h2b5U6E_V4TXr(1| z^DfN&gvUl$!32-eM;)UcNE)eXY&s839>x|8R9|AbPQ849mL^nB3}6Vs)RboA#JF0# z?5vQ1&FT(y4jDp|+am;$fA$q#zzky!HO{Q(h0cik5Yx{KNR1g02i0hW)y+}T9>0D~ zo!-?rMW?$1pL)00uik4mFgH1`2#T3=P&6hIIl@&foOH4>(Anjw%E=oNh#Ckb)6&LmT9 zG>v6Deuxtw$1`vE-Z4aFa*!t|3KXG=jit57ft#{_Ma$TFE> z)_obe*MunHIxYM5P!ad7t&h`>%bd;ApYIUv+DloWY&~&nV9N+yAJUu1Cbwm+KjRd$ zp!Hg~a@^u^k|)k|t(P!S&3oMy2{dg3sI{BinUdPSG&DS*dq8B9QJRjB@%c@M-T7 zf2){ubNOav`e?%FBN5*#SBG#FP+)jKcbK;Y+&wB4KdO`v;Xv?bla+F@mDVzJ8!EJbYqh%yqQX|Q~>chI3s45Qg=tiqhh9)cd9zc~N~Qw6e(^OY65YuCFg0#47tNajJv8hMp+-JZnsA)5<%;fS}x< zwiHQLc1L^XeP9S+DsVvQ9PYmwJa!+e;n*mB1}*GOMaM``XX3mMl3;gRhg5bI1N!FT zm2=g%KztrNeA=g}q@HH-MPx@2F%AL+*|z-lkO&(q4^rxiwE$$FXolw@xlI!l#CVda zK*~WpA2ik%{p-MQI)L#d*a5jSnfG=_BA0vyb?7a)JQUaH*2V>T!YA!;=Z9j-GfFeC zDUz`W7iv6}sGY@Rm8!XkvhABc8Vqp5jSQ2uP+5?up**2eYxJrokz0LpNhXmy;^7l2 zZ;nSg75DM`lQReVfB^B57PHLcvXm`6JGa(m2DhN&6PNp~o2$*xGUiN3ap7!9o3pvF zxO9xScQU^#;>JiJ6Gi{fAp<$TR{-Wt^7jVECk4^2(F~Lf-UO#--|QWru5Z|s$64D- z)+%#Ai(`P3fF%$h(9eQ5b)Ct~u_I4w3PW9QtLQ_U7YBFH%~#TFgnCiN=~OuJw_#su zHI(lk)e&4b%-hCeg!4Ytoubx;g#I^N3TPtKk*zdHTls8_9D^gGSF63dH|pdb&-Kva zss)3Wl;zwjQu>~tq2F%JVxG+q_lY++Q?b<##wyPCPHcXFWKr(nZL!kbwf^rxQ(O7-J(Ew%8z4nbKHlaror0`9FP+ni1)q=ihg$4naUO{Dcma}?EU~Z=Yfk)s}6kKQKVV-=sY+=}cJesfI6(YdmYn z*!^5m1)U3W;HN^o+B{-8%W<$(RSTL7q~aLZ*<~1Iu|IiPZD#G~#{T$Ki%s-0Zu2Nj zfm`RUbOIav@rDSJL0fpl4!OxV6Kgg@#rTtsRI%Y;`b9!;lw%&`O;$y*3D}Z%U|9Lq z*VlJd8TV_ooIN~TI@JdsJ|HjlCiw1y;Ox-S&4^ajI*a~s^exmS%#MFv3S7gpAd`wkImwH zAI4BWXS~QNhMb9tczVC$f3hm|@bkmS!7dCUi^QYUTXztjJp=#pc1T!{L=zCRK`+hN z+g-hnZwWRE&8GTmGxwwKO|&AlJQc%+=dSe@DDZ1bSk&`+hwv4?$Gt0?l&u zZRNS|?-T~_Ju#As09>Kw;RgjX3LppqOS{31p_GUx@tH;Z+D}hd-s$L zHj0sD=0|ASodSBd)J_z4!*6TB-&$*lJTESx7bG41*VM<>@{O#-KNzi#R0AAHFE`aa z4o{+Mj&{Cdy^_QqoVZSiWp3{a&woZ!aUOL+t<<%~U{1n{X>U$KF+T+>fu;>`AjqKLc>7*tG##!$LWGOh|}5AexX}qeMhEy5HRm3Y1jJmm@Y+ z$O`B%mes8Fx@|q<73odi=64Xo93N!(jg-ynCA8ia#V=6YUtW}b1~fiiSb{&$xS3XQ z*c!=Tzkp6D8QcN(4f>H_ezVXyFf{1mdblEz{E2M-Jrg?6jJ(#U+|>gOW%`am&=BQj zGgTycB}vc`@mV*q)&@zXa5}Psh`Wk_yUa9`bteOCQnM|o^ZGtAjn9T9RD-QG02;h* zl=&3Z+BiY~;P#=mr}#H>Dtb7TLPdO}gXMtaWC59^>bHwospJ7=uG7zOJCntC8`<09 zE7u8+uLWnd$>cK~ZoPSfyf}V13Wz-ES7d(ra>zc%E3f`(!bW)usKqVFL;5xvS4w0O zGxXpu6yc1Hby}syC$12Wa^L}xy~aBzACmm-!2=76{N7!WXd_UlW3=&!5do{r{L%MO zf6=ji%?Etn;5@$z22n1(AgVe$!2PIbNVV2B%OiLKJ`e1MFWaZ}a*E2ISX}RK{3y&6 z;;|f|x^i4dJi0mQm3&95f)V``gb%m%Uw3rkse)b6#i1RnJ0ITLy_8E8?E4{)?ANqQ zR0)(WT>@vXwit7AvOmK@1j9amiHM-!cBHsJ8&_qz?GgRi_B(WzQmsH{DQ=;?oBEQ& zT#+eA+7Z{FQ2ZoCP#;^h#OMi(J#|AgS)<1S`m#?<+*X;io2!ECmslz+HA6#*Qrq{y z_zh0DqZ{wd*WP*n4LQ~bgQ`nlV*t%Rz4xdQo!b4Pfh-EryTL4_ zBTWL7a=Gxl#vT-D9jxhTREG2yjLGb{Cr(b>wJ;%ztWHDh$?4`GBGF*h&;(3u*Qe7E zcDkc8x4eiFTh`YZ|B%m%{v8Eiz_)Yq?SBtrfX;N}RqoiFUIhSRce-R0n*ZUdp#Mw% zxwSZ{O~Tapec-z@uWKFHSFo`F9Bir_p+r_Q?#KdAK?iFM3Z#Q<{`(>x_}G?K0xlR4 z%-UGdU#B&PD2*$mvegR--*aUv^C*z2@+DrLhY<8>*7#OZ@C)a^@|{w9$Ly?(+n0<} z@$@Onr_u`KjgGy&s{rT@Z}Z_O#RHX5hd#PE4j!042DkCD^jK28hk_dep#Q@Jx_w-4 zizBiP$#6-}(@%gVZH?FZSO`d7ltXKGP6hUNlR6ISIxu%EK9KSJgsp;uSdWKSN52w6 z@ENj6;hE$*kqyMmpqi--6Ty_bb^gsRSC3hBNfgdh%Jd+dCjuM`DHdt8JuPV+{RX5` ziU~=NjUErCzbGi(4pLZUdDY%x(qX3Bh)feshGuTwOH%N2B6qEfM!`Uyo@EJ7W#fLa z^}tlc0d9^pBZR8Fv~)^&QZ*Ir;0=qgu6f=?wVH=A(9eZm3G!)SA>CejN6*9ny(u)w zyYWmeWP$NDWysXqtE@KAV+yBy$Z9dxw_^D;jK+Azx@W1u)_Tms^CvF(NiBT=GwM22 z-TH~fZ(4b2y479+X@JAXx5yFo!+V}x(|)h1v2fE@eJsS_p5WTpKuEU=Qj@9yAV2fK z{PK3AF&IZl5f1c2eH6cy&xYs+bbovJUy3+b)Dqc`AXxCc&xeOfit(l{s#OjKbK=gJ zVI*Xt>{CPv;vfvNSHd?lo8InbH;<4hr#LDGTRk71wB%v{D*Ea`)zBHF&kvh4(k(iRKvL?nh_i1ci z8=Lt{l;y4uZ^{eMb5(LE*}<&tgUjWuRbM*YXTC|^q%H4Xkt|`i^&6)=i&v_N##GDD z2UaY~s;}_%^z>dfo%T&fI5u445z(xBBnv1+s#x zO|KvRV2EomEjTXKtuR57xQB3>VL~;f><=!$NLHaHlFO0LNoN$bWPV4esn3l80hJVQ z;TaVAD4Dm8;ftXZg+i>!DexG>3zX3w8P61JyK6FD951G;G%&ww?pzGaS>C*Pvq5Sg zl3YP7q&?sQ{4!h)n-PF?iEy}xY^5;N4J&ADwo+2z0~7JFvtP0|B=gY}JP?o-blhEZ zuu>978_TusnxCo}_G*a{2sbCA_TI4|9I3^#2t|csph$B}%T=vjj;vGeLMbgRZQDzp z%vS8iySKGpIx5-w)s^uhi>h(e<#_k$ndLE4jwSGgQRRH)Gc)RwgU|#A=S%q1(cj|= zNdcMil^t#UYHPsHQ#`WlCkO*3fNf^Z~!%UH+`LqSwKz z4=Cl^PVE3CMS*K(EU2-oc|y_{)8vgcU!zBBs1CvWg}1ZfMbM%QDF@=Zmge`;-RGvW zX9EZWWww0LPF?ehqK(pR@#u{Pn40;2Hv2Ztvh1&O>En z22gzX>aX^xIdPeClIGSvU(O$_AmaW~!T^_r+oNm)P(EFm)wchltXP1#_mT~Qjh^4% zM%iKy9>oxm2aBi@wmea#c@Y>zD66h=UR=sFgki8R(~P04Jky$VAr=XHKQBMDe!xe(#!3>9mn&WBCfdRnJHF8AQ>bIrN3HvW6s!&t211|*>pSGqU0?TG#3bjtC zr9LbgZFk{saP*0deQ{(Q<+12^&25%^a@v7n=VJ6$r+19O7Kr38{yQ5ZW_{@&KlctbaHvBI}1dPI} z8V8&Fm3%IG=7}AQdKkxO`~r>-$wJRRu_7nca{H7I9=q=7828l^dt9tau1qQH>(fyR zzU%Z$T-NIJH(_DrT%R)A6I)waGM*tUe0ncc7^8sLLWLjr@AwNa0|XObU(Z^Qs69f1 zH2Yh$L2M6r<#ftrpI>xDm=>=$GPRT}u9iK;NvX&CLJWeY5sd>WY8us<~ zFRsD`S@-Dub_HCdZfcdQLshnsjL?M4FEwpdzLDD8+~zR0P>uT(vH-*(Nv5 z)Y2FgUj7oVq>s*r4)qbd1JyYmGFuKwQ|RUnz|ga~6z`wW9jFml@>&ou`%xs1k0(JO z<`&E57I6yPhokpZ7HOhBXnO5{+D(`3D&oop1{J39mLqPNAA#xHg#-m)|n zz7wtmwkyvfPS7J;zRAZ6+dQX>$)5}{E}E4rGFN#RRv~Sc-6PAjNAH9S+^`;zC<(>f zDWu0-#=`7YEwf_&RQLAIMQysHSl|k~{9|j3v57HCAk+qZ7$2CO%E|30q^L{D)zmRi zZs;>9brS^EClwr7U#H;2+Fo5bR$sq2^@CNx*0KX~*Mvw1hT;h{!;$O;ZtH{##8VZ! zxDBqC5{sF#wDj_)ANr3s!ce}r{&t)q?!W}SrMV!pm0G__L;wi%moi-^ z3+fi*pL1sp^?u=|=jt$KSUfOo(pPdnLi<3#QG;b;*fytIy&cB_7`Q5p2{zykP!|xe z^{fDP5Grp6ndy{g|YDDE$1P~a@Jm{z({2N2R{Sswzw>xabzE)$^{yZ_5N3q zDWKO|g0T@iS2Tt@ud}~uPJo%Py0H;gUZN!WArNQyrmn6&qsyhRaJ@{K96#mb>F)IY z@FoeUogXP(0sh^S&X=L{H|tLtTwSRhb3b$@a;5drcT6DTUyH__brUd;O{i1*X}Fm( z1z60?@S|SsBYaCrbWrAl@v4MZS}SmY$O`-J)xj}|hsRYUm4B3CN@wJT$jXWyAdx>y zcJ@H>u@-O%kJiAD$eL_4fAWFx{pkIyLR8Nf1~sgDZZ_6$aV+Smqzj5x2~^cM61aU~ zz>Z1qW=bus;E3IJ2ifCh*6)$XnaUfz;mRn2o3@!Wg7ivQFOO^SvQt__bY_!-Vqv2< zu(;w&d#9JB(zDvs6gxp~cOwod!U@r3tS&fR>>IMFQvVUIS=TdChNt3%Nn=Lg>tRRh zY*2LV22%lGm+-J$zUXrvX`kizXS9t`x-8oUDy&DZ2lPn>vL2x=1$oE?HY6Odd{yru zKYc>Fr6f>PZzTYJY^4-i39Ph+ETIL1vo#@YWM^gmSylq_g*j$l$QQ3SY- z2(e6Rh;1QwF|*1=bM8RLV>+8ui{<3-C#^lkTkN}pUktap*PoCu#=Izq7P$RTI zdJkWan!Hw2_YlP=@W{-c>fGLp%8aF>C%mfc zxa&>YcAHAmFIemzwlIiq#l#X#XDW1Jk(6-@4zn*Lyg+yMNT?&g;4_ zQ&cX;i&&voaNt%R5h4ZzUjFnQQg;B=i#9-Mj`S`_>DBGdwMhIvit{(J$#-j^xUSGBDEqrSUH>D8~vsC0_yW{nx81)-En?^CzvVSVFJbDx7BMq8mVK zG~-DCB`_BlDG~qWh+{entd$}M9wntn$-S{pB8}49FB4M#=~8ribm!fPQjr`ynZ}ya zz*8SPh|9M!AsYv&%wx`l%t$12C&^1Y!(N|#Kc4Pw?YbMEY6fSCq9;|EZAUt8U6&si z=tBgL57dO&Tc%l>zlwrLO=S!u#?tJrsK^XlWWPV-?%s z%~juiy?>@>$UbfK$O0V$8tet$!vIA(C$}ZgE274<{-=sn*Eby>!tb;KbBQth5&X1B zh3FO@Jb-1{4-9CZV1b#@9T4{r3e)BR&dp&+D9Ybw^*_11AvljOA;tQlB3P=5hr>$W zRFb0=3Q2qBium;{e#O@WpaEI4-kPoSG=Bqd3Zi7Oxzc|V;C~MWLdPpD^JSN(mJ`NY z*Yeq9z)(=`%kvpfuqVL5!^7Jy?kFTSI-%_Hd&LBH0aumwJ6m*({Pyd}P89scdnsi} zX{gFNb#CHllnnGpo5Y+oki9OQz*bhmDk1~AUBW3g+ z>iKE+oYh|TI_b&yyB?k_sM^KoFhLbJY1cg;2t4YK$8gT|-p5&x;*zfjJAIE;Y7AB> z`PjN{{Av9Wnu_Wdt|W!KCdha0KsZbo9k+>1cE5ZVYI60Lfix@(3i^wV3wI|%G)Feh zX0O+utkQFEs94IFr|?)6TzNB`Cqt;kAaICSf`9%(S0pHn22r88O4wCbx~B`@v^+ij z;gkRlzUk)6%g~`HctoFD5O+K8fv51Ol(5hD`xn7u-0Y`tbE(}1h_A!CQIS@4#5m9L zceH{F?$cf?_xJYZ!+wYku8oRMYVPVv0i>9vpMU@=+jvtloe2C-owH5TswAYL`>QiQ z3L9mrJXhvXaIwjib55qzT!;HfjxTti#_VdG&o90af z&^bDRN?_dOFelAI2#nBJW*~<2VeZD@u!326>6XL*hFN-GZ4Adn`wa!DI_XV zHVXRdS^fN-;5a-xJ4EvnrS-s^jq65CJ$zv_C1fjJL7Fi-DXL)B3#!F6KF*!zj_L1z z-ZxvLrG^RLR7mGqA@x!s+)FbdUkv@3WBa;18XDT3MPQk>ln>-F$S}nJowQin=6F)bF{0gQ-J4EG+QQoNZ@ILk!2mxSF@SPz`%R$*l0PzASuAU znLLyivU4@MjAzxYfJeZ1t}0+XX7tp1@;ElvJK1Wbf3|4)bK7pgV{fa`+>cfltNu*r z_X@Si`~$~j3nt5VBgwsY9_4BKjn!<-X64D4kE^!#i=jTHq!h#<_g32vdSO%@jO-IA z{V7Y~qnZ(ktSm`tXD4cGyGB(c2SSrrBQr1mOCewHq*N8dG87Dop;r6Z$H|tsDzcan z)!iu~FD2sJdt915n7HX*%1V>vpW)E5&zGq5tlpUwC$FiULKZ`EM)3)w{JxjdueN!( zw^sWjTc{o_EKK6(BO2EEg)sQyCdThwW16xTm(uVXOnpw&!JY&{cGc*-Bnu`4QyY`Qd;S?DbFA{NQxA%qv2A-Yn9GV2}K zy;x+@9DhWfo+|c3_|HB4Yj=OX4>s`@`tMah2U`UMfm>w^K-V4y*Yl}Sk>`Yzt;6mT zJ$8L+Myp%ehVdqy+|wy&@QKVvN7{%gtzHHjVslrXoAXmk^~*`4(h0Tci9G9w*F!Ez z<;VNM6vz9qdA%C3$+H@xTIU>xtJ0HBn;%tXpLkmheF-8bwv%)XOl`?RJ>41+I-RnM zh7Up14wLKp{-U3bXYxk85v+wQzVjLkvT~@cP0weN;X=nlyNJ79P)S)*IVB0%_a#ClV<&qh`@Zi>3T3T? z?E7v|_H{@oYnHJyB-@OA8;mjEdsOFiI^W;-^?QB(IgRH$^UU?!*LA(G^}cRN>+gws zMx!=$75kzaYl`?vWx8#&ip`O9|C%EWK)W@W_mP;{2Pi~tW-IHMR;sFP}>gJzfLBj#K}_Kmt(F=G>i%ZvzJ?Z{@d97Yh z5R;5Y4L>U)@$=OygQmBLKfWvpj!xbZ&90DdwCweyj*#vZ`WuCRAWPVpix54Qn8dp* z1b|kL@~a^}qrrc$?^DMF;oLj6?P*hgudc?`A-0hW-{rPPX>2mAl!3!Go1)_suvL0+ z9#TP@@l5xkI$Hsn^E8E3eSzeTU49a*~HoD*BG2G)9Bg#_grx0sYsi! zx$E>0PR1uTqj|Y4C+mk79%$h|+*O#sOY4tR^k&X&sm5!PA}=p4L5gW^2olfA7U{(+ z_9c6b>%_$4?Nd4JPR-(GA|$tZzeRMQ2K5}meMU=VuvARE%#z~PIhR=|2GYbl+Y*T; zCCeB4ODH6ZtBcH1>cytBZxGhY&zIt-5J&*nMHU^Ci}(eZKTVn+oT5KtRnZu1z}C^y zAS28iuj}=?1hLAwvAd$mf!&cgJ@4;>SyiVi)*T|#FU?K zyvQOa(5DeIP;yij$N<`CbCMm*hw|0S=AK>xQQC$0i~}4Q#MAWHSBii05JEgd2bk!? zYw?2^hQ|OGY(CL;GI521) zfLV+CI4?NBaMmHamC&VgiVXHOmsyzLJ?`jmZx4$`QIqp5*Th`+lmmhS;v(9~-(+Q( z&iA-0oJoH7WJ|jTVz>V?GH!Kckc5LCtuZRdw}cEXe1iQOqPN(;751nsH38P)~vPU;z|eZ8GLrcO5Lms}4@ zKI*~>oITewT}!R!Bua4hGPXVD9C2sR=m-19y?1e3doEiZXanp(C%?znFxm@rv@`_N zvk3I7nSh^yl&{bcH}Fq8H{CeA{F}eCssT`OJ4zb>8sMnz#+ymj!C z+ftCqN#2_iG}&~&yI2Im_6_|Y#rUF2yocDl%0l37o=2Mo4MbqJ_VG-&2j(=Ec{+^! zI*&AHwo{8a3F|La@!qi4bO{f?lJIpq5!+e3Sm+&;=-|#vQoA^9yV;C^KbXD=C0_P6 zk>|HmHxw3#-@YK0hZI~=_h@0u?;xFX8tfc2_rq!=2^HNQthev&CSq zSFQP|4NR}5G0$;E*4t^x7zb-T7Qr~UnSGWPHGMy^rwaDL(V^56NmF9uW5y3xmIW3X zhZL|Gq_ExZMipsK3vDg*Xj48$zhj-IPt{?$VW}6!@X2Ctp6KKT3>>b&?bkP2F>pRn zDUzm5VEZfB)C#jd-?)J;ymphLx+=Q1;^QOAP;Apm)vd(QioDhKaxtPw9c~qrosMG( zmu`|GYouzF9gi&dhjGugx42%8s#c{(C7fuToa#;R4}-4x)1X(75lvcPRUbY6k3kQB z0LmJ#wRMa33a;l z7V8>6*P<{4&RvBi;=X%ZU%2=&1-);jZzo`qU=uhPw@$gxz+eW6vh50uVlb4hNj z9*Nr9URo#d(;t55i|*?@5pyhxhe~TC^#lQxq&lhX2C-Vcln{n|F&n*iBBd1l1*|2d z&W?put3`FE3{ok9pi5h+OaI|7b}QKg!&{-TxP;Fq~GPOi)2HCo7n%HCQnxR1BK^8)QX1qFl_(mP+@6LXDC zSet329Lx|{LgdQGgAE%|)$JRt@6FL?nM6Ep_o(!s#_FGSE%(X4cQ)E;9yDC|`dY?> zp{^TcT&~?)X1a0#w!6#9B;j%UCF?0fijNGx_1FV%&n?x+7R3Zj$Fq>a4zD+F-rOH- zl0RvQPkjcwYfU}e1Lp;&Y7du{!dKL-k=h%_jQfYnz2kRR0oe$Af+JH4wy~9&P58 ze@VmM{!-lbD_lq|g<)&BDLP~YYKDAzpGiCp7Dy@6Uu|6J;S{2Y6)^U7FX2$y+rp^B zbYe1|9V>Zj8CjilA=Ag(BG(#i7exy(_^|ly%^Sy#OZs*;OwP;H=9Jyqkew&MoIZ%m z;P5qhhvPSA%= z%P82gu(xL+1+vTsm(@nzi^|-+TO|T>erN77aGu*jSu&%8+iExWS5%ix(()%t!1II^I(LC^o zaBE#uV@**X!wT#xDp^ptl;+f_0`{&I7&{j#zoFp+{)O;z59vVt4fLmnT1RzvzFSUj zK1%QWIH*PuZH^AFgU0iO8a+-sqsuBcUQ^m9EM8-WDq^31dyBA)#Ux`}2Z-b&4M*i# zySBL?xhTl$*GK0?q8=G0g>X^!h7BGYW&S>+ZE4b8Lc4EO!lt|Z)nOyhD+;(vG=h8oOMaG_daZQ170X$=w0pVVs7ciPO=C*9|U^9qLHD9ZSDJ)Q{G3B?h%|d zJ8vFiD2|zkg0eGqxl-Y@sYF5P3GA2l0IunS{-CSZ#m07HmY0C-?KA0i5(&?FaYymI zIMlWdAMS%J?Xhy1WO7{yR^VhGi0F*YH#JBovem*Ve*-}w#pp| zQjY2m*KDfv;3Q4l0He>{8p%Z^MGh_?iqQL1;k0EL7k)VA6K4)>AO*yB)TS?pdFH`W zWZJBTGjVZ~(E9q5#B28}U$tV~Rz`&MmzGLy!;`aks;(Vm+>=OyN}^Xh2Wc@>mUXoJ-Qa8d@f%URIn z&(ulQ&53uAjdeuzY@G;W=GI9~CCy$vn-tOG*OOgx)6r*Ijv-Pmf?sKy!;8avg{cnL z=xH3@Xy!Xm8ic4dcMSS4a~x7()1z905vD4i6%=v&c*c3b%OiH$UW>?(0>VIq?ERS8 zQftHzIA6BAL`yqUDM$g*C_KBVBVPGHxVY-YbG0K@*ul}fF?TxS5m`fDnqsvD#s#fv zPA-4BQ5N>mDEB@@$ah(GPNQ^Vx4Xj8!(okGA$)%6$~G4h*AkEar;XWi74+F~Lx|m` zTls;b?i$x^*MWg1UY&&mgYfLv4EQG!bGt|O_9H)i2uxwX_eo(U268$amaj`eKoC~5 zeQN1vg!ao3>t_T`JijR{mW{wHKPoa{7*r5yYnc!`S&n+cnp+`A_MIau9YM?7M{@PZ z)a4#-BztadvaiG`mRgM{pJuLw@pP)t9VP*uUZ?xX>A9wuGbC3bdNaC_M1TAsaEeGt z0AnGYcWIS^{PIO02}wy=myG0fp6alKikLNwn<(>v6BBA&Rt6$B=Cm=oeAZc}rs4}1 zHTZ5?j`2yqk1?=&P0w$2ZCV{kYJ07S_XCDje7~uougZ<@s2h;l#U@PI_i?<=Qi8n)oqj)F%-IU5!U|3J`T<{8lq^_K zu`FrVjjP_-r+~Fy>6+W8K;)>fWN*0dy>3NRYgp!oF^RgG_4mIVFk(sZL@v4JX@o@2 z(w)Xv`_v`5?~=uMijQn>0^-LI6sB!NK+PvEYy376#MJP)&G= zWxn>b^32G(lZ%q)wXH$QTzXNL7!7=f0ry_3##Vo-V#YReN52-kl0|bi=`F-1Dn5i{ zQLyv8ZO>>cBlMij$o2bLhUfEv^JI=ZxDVUed+wth|4ljj1JT3u_i~+0n-TC)tgziR zHN&F&y>Tl`hI`g}93#)sGww@_#O)wf8!Ub#%Gf4$vp9F8{G^skxnjOAv}cT!>H($* z>*`He-`<14DV^fOS3T1_KVACGz_cYt6ZX)0=xrXIp?HC}s8TG3GGs8xcI9SZ^9my( zZ7^JCE37Z78?7a;$Pi%BzU@?peN zFXj0u+ER*ujKz8c<_TG49ylGE_0-muD{`Sia=>!B9Ohv&knotb=dAc8w}o~J+VeE# zM0AuL+Y1wFMi&?hUrqY^YK_*o76mFYS|ZL1+ZA_-V#LsE%i=ZsUcEwS`wD0xzxV!M zL2CYyZ{F~kZQ2E0T*JAZ_!O)WyE zimqY-RkcJ9O_2?ffeY*|VHpRduLAb~o|!#&Y+EW~eQkTL4yZ%&DkKLbGYv8Z}vMiewY#bFZj&3hP}+OmmuP z-a2!^q=L)CW0g{{*?clFj0we>J&T&SaFO9>j$5#?2q8{hoUAc9gRMz;6O@d9=n&526**FFG3zptcIlz(mKuU+@}sicO@W&?bKZ@oHU;sS-EaKz-Z86N zy+*(q<^VXYbU!h5dnwrW{Knf>lX;9HL#Kz9p-0tnmA4;4u1C$&&~w(kxn+P$AUfFx zryU`-^?b{#2eP_On`{pJSzU}_!bT~*;PnI7sc}!teEv$k%G@>+qEL~cxtTww->a~C zM|IqFZXAlyzgvhb*oP`{y|YE^PKH%5?zf+Y2tXB*#9X}IA5>V4=GpUR>2$-l7rmMX zoW-mMmbjwf^qb9)Re#bYXPuDM$7%*xh2X2uF>7&2Zx4knw3?lRIUpsQ+1Z|qW=?D0 z(KPTV)v!%j$tvQc#Y8{%j`i4mvDYwPWNq_xEjK+l?sXQok&6!I>V2zJ3hW@8z${Da z2PgEBE^LmS0peqKTTS0vd#z5zsh|tG+R6N!=Kjf(E+=FeFcR47DoPS6cI2yb?KL6^ zlh}r#M9p`@LIFeCFDf&bJof`8J`zs5OG^61PgwN#=nzen|^Vz5nExQDj!G zV=HuEEaa#k(tRuJarQWUfT6ols)WIsuSuOx9oAy8*k5^VY_}UVs_80SGcwB*!n|7DMd#asKlyr#Jt?V3>& z6@`40mP8My{~C`#ijFUQMY@D& zyDKy@U%7g`&Nwm2GC|sN(JeZhv3+1|$7*RTGIfTTRfmja%8Nw<3&Nt|}xrsk}Od|kV| z5A2@RmyO9FbR-Mx-{hJ86cmdz2+?F*C9326VR@&G1SH{dJ{;dia1%}D84&GZXrD&j zW%Drq(kk-$ZQh=!iQTAlmAcS54}NA3MmdKR6JD>D9GedW*6$1m_lo z2fygo<>GRxPDDPazP-YMAF9>jgNWI;s9TSjNOo?1JD{6?iai#+^QLlUf@t6zkSK~| z9AwfZTc!6ON7aS*N>5HxEuvfnd*`KU?<}~F#M~6-~ zdsuz-n4gj)@4arZWidvJhH;M-0jA+(b9w{(iV$UW{^a+0;DT*%<)+_F*Ade1zS17P zu%#98wrW6@V$9u@Wqgkd%hn%)6wZ?^V&eDZbox6IA<1gF8+>}tJ<3}wQ(qQ)588?F!&b1dU1~Ki8(_NZ zv=HFzyyos49FQ6mfy@kpXGSB8-(!`;5pv@q@=-Mg?(6^^tU?!BHPBC<7b#Q=SWjdP z(sA*E0SlvWClAwB{u_E+H>FUn(3N#4BGpULlS-BC#`VJr*Kf|b@@;&f_{v z5H(*CT?&TSX%sieMeR* z6}0pmVl|#@W~`0Wo5t+!jI7f3PJ zsT*rvV;ox=g_mE59s2M|5bd^%J*Lc~&sw@T(-VWT%TzIiq>baA%wvV)ql;+G zB+C{Sn3GGl&P=Xq>W2w(NDP1FkAfC6cZm4f&|h0CT2+3w+Bn1~%thl^JLVs(_(x;4 zKtNn`T~_$Vm9dM2Iy6I|YVK7KP6bD_{bGb4@>h-a&1uMXJgi&lkNg64PBdts@S4u0 zw(D`B>$tEK?Oh_y`h{cZ?Z6%Lrvpg*Pzqa#i4G!688t(vm$AJxlCSdYs0B4$_Sdh< z`o428&GSkmex{&vToYH@wU}-cUmnL__wateTr>#f;#X?gJ@V#{Hw26>fIwT(+f2I3 zdz=Phus0#zHHh7)p1R98qEtSQZy3(TK%We0;I3t^9BA44?$lSk1hxD0Dqz*1OCl%ZQJ=n?u6CT4LJI@d(bbhbSn=I^iD>O5 zEn?&OF!{E7pCKNkHg@E*v}b^MrQ_7jpu(@HZPe44_-tfq(NaGU6N`xyGS7Hp z7Mw?VLcE#_QDa>Hc7n-Lv=$=!aG3z!vERcyf-$t zF*Bfc9A2Ym`I^uNH0VN}`CFCqu*!Ii`XZ#m=J2CbLkRIQxw4!6XJ`#zF@jwR|F`0~ z{xpH!b%e?^viCogX)+nP5wH9^brv3(V#QT!!Fm> z3{J1@a|!H{>@vYBqR^IGfgurJH8(mvHM=Ur3c*D zJxaJGYEfRHHraQ&-L`(9q^SOh#G-14Ho(y}_|aN3$jxgDlk zAX0}#^mg2Zsn2IVoba4$n$}r;+-R8!w6m`}v{#K+NljU~(Xwk_f6q8ADbBHhzWaqr zrxW7JR!6IVZW3qRhl|g}9zCYeA40BCkc2uYiFryTb19XMTw{bl71|ND3~FW8t!zsZ zj`xg$_|;(NS|i<0pDJ;l<{-VA-on>MOE=tFyf^nmF{!lG0$XJ|nrBq=`SI+rlcuQ1 z?$e+imLXCWrv3~L)pNlYI$9kHg3=22$R7byjt^+!%SXoXupDAA^V!3myzD!W$~-N< zgTG;RNEdS!=|?5RPF;a(C-<`G$ftG(;F3l;(;&HSIf2z-Z6F?1b%&| z`%JHk)n44Gw8U^KdN>94^7O*OWxX+F}~e0(gZu@WHC_0D%C-BYC_FC%qO{*DyVujG=sI7AAlqMLQS z&xp@p8tp~P%)R5B@kv+)banpY&PZp__pv9b%I~ts8N{tA0I}jTA<3}CX(a#@H%{2E zG1jdPq(n}A?e;~YGKM@zv+1eM*U5|ujQC3Gc^Hd_`J}`iwDH7u(^68$cYF6Yi(ILk zUudV()6qIDFW@@A5n`)kF)&S^k=Ue!VGv}ytm^@t;TAeL}t#1NAPz*^F;F7XJOZ9@nlikw7s$Ihz+zLTr zbMr*J9CRp`NtdTUfS#YKPuo6UM$p+1xVm!kZP=@_~UT#tlw< zFOc9KdC$^BUUQanG8|&(<0&WUxt*Z;vBxTidyG3J)uyIrjb!FmQgEi)DMGWTB+dCc zuM)$-9cMD0IlAkN5P_t4@fAN!FC9B+JF6z@E%BP@(2^Iv2Uie{`LgkLb=zK^LH0}I zzV~E;R-7KRpVYsMC{uW=s_Iy_9{*R6CsmkbszMi+kLr7@>qVl;SxV57`~N$!$nifI zX^>tg<(#1;@?_t)3@rxfL1E!xkG+7oE!+qKxWpdG!!qaryu~<19kjzdYzNbNxlN;G z+yvo9Ec>F)i$Zm^^Ul^tBT1aouX>%pc4CdI`SYp9E$0&oBFcqyl4dHaGYST}#v%@58SfXz~4ksj5wJXe?xgtj&2pTeL6(ob^ zg|If(NJl=WerV8SUP+@X>TG5ZYpMFUNMkcNB}csigUMyCh8tx=Ta2eozFps!6U4_BK5AlAVs{aUWiNV(SiPml1ZCsIv|N`bg#zu< z3ty5}`Ns+V@##KTRx6SppKJeV$o${<6V6!}=vR0CfM0Gt46+)RJh1TIG>Pw4DD@H{ z`fT`8G7QRoD`?+j4z9DcbqgbCr*XufMZ?#p19jSJ7c^V9nF<8jEF|HRZ}6Om4-t}l z%=A-(Jya)LtKGxY90qagk>y~Q|ITv~5RhwSms!D*#65C=S4J;x?iCBt?o*(mFh3q4 z(T_6pxjxWMirYi)<>OOlJLBkTv|jISqQ|w2g2L>~*u}*axoWrbGz)iorreDvLnA{* z%gxgpjpTGN6Q15L{h!Gcv=(vr=;N{byc=uHIIgcpFjP)vrl04h2yVje*ypFuoF}U0 zXyX+uEP@YsS1+JWM-sVpHJTnFA0j$~s(Hf9j9Gu4by>1r*7j1ZDyT$W-aBjGF|! zk`FV_V&}Au^ga8l7a-4c9RJf#^s*wcH1th9u^}{|0#FP5|#(8>A*4hxViX3Zay%(fz*!)qbmr z_Awu%8zz9iz_KX^8A1%cSXbwF4V;6ROv1=Jq&mqG|sC` zm*{&d*PG$e(DP5H+k~Q0=jY9un+LQWJa{+QVp%eSnw*lkr>LlAHSUpTD5?4M=`8~^ zJWpi38Q`;&faqwJIF>gmK0e#SS^A8Y)dsrzoa_pgFp=N zojSjyEA*zl^y6^-NyP1%8e48vo(B7!uy4|xKKfM-4(p|O z<*YYqj%Vl?@&dPH?okTG^k>=oufI;$CMUaDD@{wQQ9l?$b4Mcj6|A&W4-tG)HBv5# zpS`mMBp+JN&B04QGomK3D|W`h>>7cXi&5Xwd48GQ9|4jSC7}`-TwvHJ_=r02~B&1OuJH4x2UJ@u3}hZ1uU4$?CHC#d=B4)t|W<>OAy-XDeJKY zAVps>@MvyX-vhPlei&1X9ma+{ZS0n^tTP0vB)INrDFNIq%b)wm!~Q2Ci(Qj~3_Yvl z`w{O-sT{Ut>O}t!*(2asEr_OPP_GU(3g%kpn;490lK4^N80zjM3knIdk>mMmC z<=YMVM8SE1;*7~@Vs|?k)~Pl$>dyWah^scZ;ps2t+T-5cbC!V&b;(02RYza^oo)GB z-<9uzwJ|+3vXw8M!t zSV8w6YH?xM6;#AGgjtZoVWA}d&iXVMg8zkWzsC(FEcjE4OUj_9QvOumlak^744+Vc zf8zY+k(bl`NVbw8ztz_U z?+_`43pA^sJ7b;e)K*^++w6XI;sqE0V)W~(-fP5H05h&aI`WVF`<)<9*8vMSi_Xpb zpd#nFl=E>2>tEUIyzE+A=-byX-^e(1SzY$;{a0@h+R^ z$lG|`+^b%BJVXzZbxt0A_BSJbrJFgykGRm}1&7c;I6aB1%JoQ(9*xp}bxPvOBn9{m z@uQpkswoAK)u-uqdFqwQ+?!CeZ}}&lk=(J+?3~qL5#)~iV}sXfHIS*I$i7PiodreT z98RLi{?Hp&vW>4_zpTDxA>04`it+NVKtZaE_Rjq-WgWR_3)uiRk;|p38y#IIl{H;5 z<5qLQ_6Tna;d6&gqW>bilAuPiIoCPMMOn3lP4+`5o}yT&3m|1D3pG&BRaHTiZJYPr? zsJ?ehwavd|=I;6PQI_ci61DDNg0^7U0>vLZCL$TT0$xS`O_KGTvQ1p?x`Wv0aTv>_ z@zWf?hy2Hbua^yOZi>x(_i%sc6a<=o{hwug{@jb#blATg2Q{9_@kzWR`#iwS-YE%v zorPC-jkS;V0)0VcbteA8>ew~2!*a#n6oR+F(}Eg2+_Lrap-k;7r&N>pQSO~)%YL%Y zBAyMwPRTv_{5NaP6Ypl@>6tlm8BQ;sE$Zm-v)Gsd&}cJ!itoP>ngOA@Z@fzG5@Xh` z?!Tl?YNI1U{qRH>2YWMDS7HB3n zf5FGAEzRFV1Uqyi6UN?ODE$vN;Gh(|9TW99;gCRtbczV6UznO-MDiVtq$h#WX)FqO zBmJ@mQvdL=AM&(+^ZrJ=L1;wEr>dzBre- zmu4v~kIXa?54%^5M8>034O@=*$^)Ia22Aw$8Ez$un8$RwFsGQh0?H-I zDy6M$WBuVCJpipMi%!A+Nbt{3QG{gbT`4Y2$v5$ZZ)>f%w(n?>xj`>py?8s!|FS;n zB8yC0*Cmq0Q)dJA?_K;$NQ#E0kW%;(oBl%fhx}%?1|SAtj`Owha!dFzJ+-tm|F*`U zF;gB`qfXGndHBNCQsOeIr{p;g2^+G`-m9V;=t~*bb6NRz z%A<$REl8tR+OL*;*lvg!kAcQhUs;dzU~Oe{I6}Qhda~=n6T>m^hGgs z^X))3p&Tz}>D>7aYj;%_O+N<*_7Q0W0tl1y_GajRgo&2mFWT4S<;4;dJ?yV18oPbA zGbE3XG-+_%ERYU+Vluzw|NdGdn;+qhjpYgBvqPCgvUiANfCDU3*-Dj6HI^NPw3 z3%j?K3>QQ`#d)lq6Z<8X%3&m-5pg6WN3R1}esrmkoQiTyXSL#5It@uz=W*pi#Sg<7 zwPMI1khH>Dej@ur9Kim)N?^k9W3&k*i^*usK6(Auk-i~u_NVL=k+KJp_~3+nU8jMT zyA7;wcniA6&)u4QQT#CA=&{}V=Z45|CNtjw6t|Ke(EA4EwSR#hz+c7^{i5t=Q9_9T zWiO2%QXjq+zii4?5>-;M~aol4I9z z@ZFKyiJ7$R9Km;-{e?q63lJ@E0EEtwo}u(hC+DXTHy}b(^Rq#mk?%$ae9j za^o!`a?0bHZf3G1^vFsdn$QV2ECHl&+LuResAS$XtUFy{tvwg#yGiNT59*wCW zZTpRSf{eM{1Egj@G5^sN{hv1>tZO$xIz!oEKZu)D2b~uTzXwTpf?Ojl%}9LvdU>N> zN2y&o{gRAQQ~k-iK>z})f};FNRp;dxhp}49x09sPj*t<1CMR9^m&81M43=Z~%x_Zh zhqUg*5Y%3WOYX2yXL1hQj`JcqFY%k|z5#q*5%~PML-n3TmUFMI`t6*{AN^_R8Na`m zDx?wW`r#k+@_e{2#uChMnknl=v2w)Y*$f5kyBC%|&a}u_Dm1?4q|3he+cN<{e#ZbL zctWDC{)^y$E!1iXAdc!=FW--E$^wZiVf_t0R(%O5TNNm`Bfu}-$5>0V4`Z6CQ*+yB z4!voos*^=a5*~hnxAoggcF|^`-NDlwTD6_8%-H_Q`nHw($2bXPVeqJ^jr9L)%K2yM zCI}ILwf)}VT!5S&f}Cxx^ZuL)0jPRvaTy3Q{%o(%uAngD!U2roG$)IjZd44-ZHd_OHpjG55`Xbp;T1{{RC_)bXE=k6#MbfFxuAMuWKx4zIuo^bEGQ zPX4xlHwj8PD0dS&t|%0nCB}RlKZ~9T@;mZZ^T110W#tszht|Tqxzjf0ZAM|wTkk$? zykMCW_}ljhigb@q<{tP*rT+ZX04I4j3T<=LL`<<;I+%}@eb?e;ue@Th5 zJzxuMMfx8t-~Rv=gjnMeun*V!7fusIC#401`-SfnxOI@kvh|45f`(3aAsQ3=3Q1YH?@nR?7F)6vBKHTc+mf%GqG5$vmIbs zrl)x|;8233%IGFZCN1Ef?*G?D{)Cy7xZ~>JFrVyXUs$rwfj-zFqW?mTmuODj^qF7IRI|h!71>$V~m60HQ?~d-UvhANkjHlvqOd7R|Udl$jR{RHwU5N z)}g?W`R+b+Jn&@~*i;3_Htu3F&*ORNK41cvXwTB<U32u&4St=y9!;7#rg`nBuapT7*b}jRX{lS9j5)k9d__5l! zP4tQhmo1l1Bg-Wd7Bk$Jby}U$C)&9s3yA3xluTYRX=&`PAIgHhhXb%BQ|gqEq(WwqqA_YU2+b+{qW%lmc9$Bt>H@v<%vnrg>-Z` zdh^QQZ%14=vcmW$yW;y{=mluIyHQb$fYg5$bdn37*zxfW0cBH`>}X17sY37jcRLL z9^JXR@cy?k0WcHb)a8&&Fpj zqHB=kvNVx@nl-Y()6{t->va=|WC||sB*eYRqcO^gn-Os}%g$Ak!_F*}C7qNtF*UY4 z2%*@*L}Wx}v@ zRXdxq)90Ho3~OBH-nNy_+rrLS=+i8EL$wbyEZg^PcgW9)EYhUMUJawae)+PVsOt)c zKvIw#l}b_4c!>DQLftZXD66>sLNd=Uo*`I+&vhxU{{_v}Q`%{^TG|w8e(7)e1 zSfbx(t*`T(Ul8u=NDhif%Hl`+@cSB+tf!+Y3;8{u+QY*mtF33t%*Umj(F3_XXYT{x z^il%yy8=7T@>{wkr50G6c6KoO5I6IzbK)dK68{;yH`Pap^3@QeOma)qJ!^K*f!V^X zQ;J~PZ0LEulnIQ3;|RB_VqlTJVGq-3&RLCa^H~~HRaNaR%pv(qmqP{|kJw-<3ae47 zK~)Sh(4;%6RyYqE?%ZHGF{a@Cz4#S=FeYiB{{o{!#oiV=9fX|dDkf1E^9jcyol8p7 ze@zCpNGQ`X^5-dm+T77QkG~y96zaDx5n(&~kQ4%ZWi3GZW_G#vW-2|5*4 zQ!MF5=g4;84VFb*h=XVHZTznsdMM{{((>XTdZZQzPPAzdK{329LBve=bw>_bZz=jLpX9gH z*fWP6!!QkoUJ7y2nQNgJMN7^G=Hx-_ow#@6(SG)R?MP1{cOt*@qlyr$Su_3>lW_9jP=^3aC;Of@6fB(L7 z+ICeHXv5m>Z)gY2*Z4+dxe`MQzl>d(IWwQ3P3bqn5!yw+J= zcu-=cLF$JAmQclL>DB~qjmtpBOBMyjnzfmyO5(UTJW7eG58NtSLg^Qkw>v8)qExc% zr{$`@f7?iyu#pZZUKy>(9;vWo0Xt8^;w#MO!o}O# zx-_TdDErgpwVaoFwTW5;rA4arC}mBaB=n;ACC#zn<03vc40=HAzb7qL#Mvqvh);}} zTazN@0VcYh+wf9q>Xm5y?Pd9qa_b;>{Dh~iR@2d~#AwC)clz6y2T_wxW$xV(NuE7qNR1IOr8Sfn1{x(C*# z*Y=icG-m1a=`E4(jdaT_`$qJVKYBA@t%g0BV~uvrcIgJ*74D+jcfiT947U40(lSjQ zo-N0_j-6!u&^y1Q3Mdf;~FvChiPm~N%bW0RgR{D#pI~AGEeK(tFL(IZo zCJWiCT91^fVz;gPtBgF+&!^t(wRg4kjyS{Hc0POrBih;6*}=ZC!M=q=(Hzt6<=_`~ z2Uh|z-Oobb7+JL_s2>loiEywsx zjkrJKtACv86dgi_AQDo%MpV#SxLU02UAf2)2BT|)glWg#4UON-sn@TP+cH9}*H!x)HUA>^FIcQ+5r}L17M31X5I<7pFw_QsEvh(@15xt0)zwps%^&Yz9 zMpCfGQ1C5J7N0$Rk6nnj9ccWa|uS{6L)8yTA8tR_m|yXURedmrP&e%Ted zkgQw~YQMhv_Di~Y{%7+_xuL-wSH)?1CnS?d)a%rM5Tw1xVi(hh`R05hsDhK%oPr!U zVxgU0o965fv`Zr$yO%RZZLt+7(0EmV7de;yV0*Gag|JvGG-0l$Xi0^7~p8&9V5#blavnr5fK~D_5mhBNmhSZli(ETI( za;B1N2?IFVGY0E>8{||K$1Ereqhb{f4n$VQ>QUo0HA!wL((Dc4l`#o=v3X9*2!aE2 zkh)Fnb9XRJE9pIPvGG#Gc+EBn5nyYM-cGzy?z-Zq>ojakcechbZbnHGm!+*FVLKpP zgVCnvcX*|MogH_T{4lUwUt^2Nj7hLXu#3g8nkpjRnwKOlF96@gqGdBky~c$j+q+N) z7kQS`LzfkLHA*N;-ZWHDW>>bTSB%0_?BFv=-FvrKV0f2HBeZ#0^AzI;IAfLn_QZ1v z4sqXj?ymR$cd(ZiLI^a;AYgW1(n!)kUiG4IQOC5KR~iZd)1RWkx*NZ`u>2fS9Q4$@ zUj1p$w8?yshGeYqRV6p&|3lkbhE=(3@57635a|vTkVd*uq?MAcMM$@FgEUA6jXR@YHoV z-iEpw)mK~2n~xE^IIy3!??W3EO$1q0sY+5ki0avrtGqV6!|s+&Dld1D?<6A9Ek8dmkO zNpyjeone-O%LrC_-q9xRRO6bX$nM|=roVRj;Y^CnyoE*JwFT3$?da#T z0j8Fl;_hU}u|@lYF@`Feb1naM#)cJF;IwN|XFSW@?N6@TIwPx}h_0kOA4X^`9U*l; z@Als$12@UqGhVt3B9`GLhb`*(%pA+Kv9DQm>f>$gLDhUY25zw$S`Hgz^%zLWIILh< zzv)A)SVxGFnkJKw_(sU#nl23X)Az1bInLZ@*TZLbO&!>q{;Bg;5(U(9F}!_sltA|V zNKX`9K4s1@`joD-(XwJPDj`zuju;<%<)EICFBU-Prmmtr0?)ZS+lCzXBK*7YP%JDb zk8-GFQZ&sl2&wM~b1Z?oYOllk6IJLB_Dn#v2m5HthRZ0LC@tCjXJm1yRBwqIR+a{R z?QdP>)tjY8hDbJh`>QXH74Ug~(Ise@h{#9^9n}$Awp#p2V-?P>I@bDkymfx`yg&a< z>HlSotvLV-1)OZkL;I#ZLk)x|x0p%=0k3}b>h0odvAF0@k+t(4>o~rC*sdzJ--gdm zW>A8^U!SAaN&r(9ygJ*Po<7UkC@nWQkkT?PdMI1!kVlYI;*WeI4jApQKOSp!)6UWXR!nZhmTBoArUF z7GBlf^1;Sj&4&09M*1C?;`v(NOBAJ^m)-VYcQ1Qz)kr%lt~e?ZdRs2byHzW*29Exr zQXP`K;S&7iBiNg!_Zyz#lErrsw=!vZx7<@ibffgO3U%b(X=tX{$d*Xvpz~E zLmAZg944P<%nl&V85(i&pOqaQVT-kzD3m|pgiwVN`2mA0P3#H?XmQ#m?{1q#4t0IA zOxn_495mmGmENW_O|5?c#@RhzOK(0O@!p-U;Wbexpoc5%oZ6YP1DSHwIJadpcbqJ z-^Lcqn2I6*|4lNcaS=oMwl5TLlBuXWqfak#7{Ps2N;Nv2ZY7Gwu`%(L--m1wtJfHX(a$+kEi zBC{GWhI_YOxzB%Ij>H}0uh@N7yyu>P>)*xlXJR-uQk2D(7p?g)1cvwX@%eiZS+m!_ zrk4Gh2?g9){?A!v*r}cpz$}4*RHy|P3{su_yC=i_OFJ8$7T_B1tgNhoew(u!{X}jD zi77C-2PvE7u&hOe&G}0{=Oa|~GkbX56OXn(O%D%4yE(fTDdGsZZmwT+Gws-3YgikFfh@B89|$5LXX;lOfN2yZ}W;7i{RS#ou+2%;F&Y1_b}hpUCGhD=MqAmxKY zr)O163e18**v|u|*z@rVU#D{q43MaGut%bVLL6}KXQUplGez*$Q1?2#?xu6N*pbr{F$?31yebwa-zk?V zo(8+#3y&>}f=Vg?1xacqZzAS&PF0vywn=#5#%RC8L$j+^y@BT#OP`HbGVdu@>v-vB zyVJTCVr4xBA&r<@Apl8R(sdm^yf$7)*%LS_VWa%?Jh)%-W0U06)2Ce^t5>hO!h#1E zVi>@5%J`#Z3?GAVdSgX>kMwQx9lG`vjX{oEnQ}BsS+`D;ox#e?r?Is^R;Qwm7Zw&$ z?E+_A&~-bv-VQgjJc0O^>o=_~AHuYT5RQoM@7Hg=xjBhDzOXyfb%J!Uqv+@nDZ@>u zv>p$d^Ojlnfrsn-^0xpAS|dNdU~cS2KpFjY{yE9bIX*6vW(F&VoJ6hU>JbgNnGG3_ zHue12=u{%!OBVC4NUP|xvd0F6*h2tqg<1%!!$2$pYPyM&F+6`#Nkebthr5w%N%lajt;K9}@LrRjWWQM01``}KyLVBRByQ)C2xLVhb4Z^we~B>3feB#AXGMgomguK(RuTQZ+bz)*=<@5IU<<#d1S) zM;29b@?@$0tZvc#%QDDTRf6NKn&M`feUS;zsN~44DZD3Swt*ltbP62*wuG(?WaX^M z9h&f48^6P$H83nAC#9hc8*Ijbd%!Mop=|U5WEStTHB%=wann67kE7t0klT7`w_Z&{ z$V8KGQNRWw7QCPt@HigByLHEZZucx75=vBX#rMvp!TlDuOD6gGZV;L1Co+&$jWg8F z?#{`8u#eiHRxLdV(e*NU)N@UF3q$&FF6{-Qx_Zl-h0-R_M0g2LAR7N zjmAIii>!(a$kHh-YZ$?4YE_avDbJgaUHrA?3j_pdw>6>lL@_uVVNeNQC>4k2Z@Qms zczmfb^0iIQy}8=uOgcF`+)EO4J`FBVFx>(HyB;NcF#(7}f#Q5*^Y{z57|z|^bO90J zNJ$p^`U=qb#Q3qx%jr0FaU+m*IJu6Mn!>QS7TK{2x^?R^@LG3LcXVIq182Vrzk90I zY)#5O@5x?C{kVxzfsYqtJ1Ms>=+PzTJbHM(#dbkqAsc8WTOZ4I>mqB;w4h@s9im9L zwsmtYo(_LgcIY3Fo0(`ZW`o}E5`Y2)`;s^dnCb0g^9^bfm^ixJJF5PHEd8-nw><;1{*|k7 zN^PjWn9`)stkqs&V6H}4;Q*5ofK=eot|jOy>8?u4s@nQuEi0!iXKP{W*qdpdp_>3v zEkNEa^kTAYPK!=~eoU`(iJ&Kevu0$!vroCq>YG}l^QmZ`By3ivQm(evCqi81Jnd<4 z!(m@xZ9YYMOVDalmUiVDA;t!Tfv3u}vqlaX9|xc7ggQ~6AfNW`CosSJNVVx{Ae_HX zs!n9+aNUxF-EqB$#1=I}^2u{p&x~}vLkh~rixF}GpMpfp-k|FKT++3A^HA90>7IzN z&-7Vsljnr28%@7jJ|VfA5UntN^X3y@<-`O&7Z(?melEdYBHyHDBs;a+OYl2ikIq(L zlGfPKM&ixJ5LRM~6`bLK)(8>&UH)5}%JF0F*v}xVz;vxITsl4j?Cjpze);Dney$C+ zH;;?dI3lix_^3YiMpB2o2q?E%cP~_{5#gE3P)A@hetfr z#mf+nG+_v7$6gaevH<~Y!?Ty3EUj| z?dO`fxrpK@I*A(5j>i5CO}H>U^96kTJ$3s=J933|cApI;qyvPN)M>|Hlr zu$F1&XvxbU-D(ALq|+WGaJnD3tcP)0-ja`AD-@?XhziQ2 z1f#?jOLlVkqmkz>&QaS%8>NU2fdd`S$<&{K~3 zfjS&yPg%81CY*i_Us&H^xK(-oWML^A z#+w)!4c#6q4w{>{dwJLBl$mobcy@<{hEu9^>8W=3@7aQknC|nPwGh zjBPPR4Vmv;?DsvBXHS)_B_!wb+@wW;k&_FSvPN9(?N8n%#En0k>+Pv}KQoN3M3qOz z0;GZ}$$CJil_KDRsYn;wod`xlcpfe72c?}QA81Jpoeuz>uDM(PRmt-7*!_A3;M&9S z@hw>i(1ffV_#M2bprr!d{ON|SRe3BExMRh*MWVaKY!sV>w=!ay5cz4d^CjUeLWne* z_H{MGf#Ni7&;SYwS_d#B-TGwWIrk45=|ZJCXg}0Fy7M&ECS|#9GNKS7e#ERM#nI69 zesE|8wX~Gr;Dr-CGIoz)DP6y37BJ^F`%5r>ZJCPVB8{Y{5(HAKCd~`aH~Oz6+};4V_@I^{^ap&LzURKB@x@H*RMs> z#ZuBfWX(ENP^W!zu&#vEr)Vgioj+^Y;^%Y+sra}YuYJq13ke87JlWuVv*)pZ!4Kq< zwM;&~K0fI$Bhinz6UG@|H@oIbR>e<$&8t{#HM=PV-+&Ifs*dHz!CKy=k}$1+Zaa1e zma}Awow2|RyHhr)d@1ft&7$Ls;LY!K_QHx^G!#U&>TF}itmV9vN#b$3@$NX_(9zM= z%mI@8N7J}=9dwyWtRznFS8nrLgo<^>SgqjJW3UJPI1=x?%K;+TK^f>)*Q|Kq9!H2b zf^!`O>j`dl4jJ2Rj=aiM&LMOkd#Cz-d``I5`WT%yhAzZJk#6IA=Lm3nnN$lj418GU zX_nJuA#R7Gko~PaA1&eh%H*E=K~5E0}O(BLeSPl0u5$*7V*?v;WYtqMqekCT8>In3jbB4ff^AH&#@F zw5!HvEb2FR(aA1rJ8<8>REb*@6Ex1&?1Smm>s}fwe`vrIZWhauT+JM3HDqYdtH8@l zSs#oGBIYh9*s+|u(dTkr`eZvZ0;T=#yT~Ux23SurLHD2(s_)^nr(4rO*tDKC?)xhy zy@5!e!7p{P#hJYNOElOF@-#!+WDwYQu%2Ng*BCZ<#mrnWAF`wthex-Mtl>Q)o6Q;w z1il8Vw@K`K8vaQshXaHLmIjPCGPMZ_-VXblO3j2(jt^VFifugo3McE%Ej|f#J3eE&O$AF8zX5|b1YZa z2&oc%#lyg%REMb*vQ_(dsD)mfKJC3i2~i0k!uzA%po6O}U*(j54H%;6ZWuMWNV23h zl>+uSwXqqsnkkZ8jt=bebc>y@&F?;#&7@yZE|!b5v^KnFX>js)#ds4? zs|*rRAKL8_3NxtiCb`E5N}I*zuuc~sFAnSsJD}dKzRHgQrpPJLZ|)+X5{KZGXi1UK z$3ala>kT7#rGSIOy*RzP7o~Ub)J`isNZ-MYl01w873Q<$c{5|OH1Z0s0Blk_W3l&U zIi)P0h=-fEjor)t9UHf>jgK#f5*&-8>O+z_jyS2p5;X(ES#aFz(IDQqi zhF(ocNw#z4^W!@6UQdPx^+eHLPrk@Pbw(o*APq|qhz+F%f~fu$F*jnp#VGW|bU~L6 zfR5bdc|pV^Bq5eA=usUl7IB(G>8ek#88seF^36m{_A6eY-h>rFgk0?zs=vZ|p6?5O z%Ay;STCciGXW^l9h44AtJq{)2f0m@&poF84r$N!?!haW{oeOPsBkKwv#$3%DLgbY` z7>D!1o~UmkSB-ApCsM4h=V0>GfmG%${+Z*#;w6Y!?S`$*-s}&G5#NSJyIK)x3yS-B z#T*hE2DM<@qqDmGZ0siGSnEbyCZ*D>Z9taPV;t7bDbQ9Pbi$P zMLWjLYsSu=L&oi)Q!J^fs2FugHVEf%_f_l1`WowPG7^k(mdtZiL;PB^+?7PBc#@Kx zj4hR#HYTj#0}&*BE4=*6{=ja*Y6oD=bNoDME;Y45?N{){Y@kNRJ%uQSg6mG^e$f6I zL*GK&lZF9(ztBV#MMPn zK*7B&``!ZLQY(vVu%>iQ`6dO3*a?Qqx=V!F=tP6Wl7n*%a(K0Fa-aM%^_To+)<>gbPW zd%ZWq9b%ua8fg2A(!$}KuLPF0*ry+CNSN3?Wv6~{K5#pHc<0uTVUa}mL0uSX0hk76 zyF++>xg3KgrDGgd+tLAUcGWCiQfp4+q*YWHn377e`J(Er^9BYfsQ9(r74Lk?NCh+L zLW|WnP&$KfIVMUB!p}+=0Mb;9!`qx)xCFu8(kHkga>Ty(q;8^2N^zBfWqQ#qVR2!B zJSm+3v^QTvRBwATY@`f8mfu9yV;(nv%bO`R7UOQswH?rx#OwZi`EzwG9@ux5u|vc{ zoanGQ@4q*j_M1rXCO3#r|thhlp`dzMxO;)NVoYphUQ8aQ2C8M)07z@C@^DM}TqC#E6u0p+LPj|-$oN4o6 zttWKeKqiI^Hm@Y(5X*4ks-Jf_tqrmrvNcL8A!zCskwi?)>@a}st>_2gwL=HyfXmCO zvxYmb@44qqqCb8=^&J8k!5%ULL1}pV;1h=f!Sk8BRIm{o_|BdZ8{KixG z&)ZVd1i!ffQROWQ-cT7Z!#KU=;^nB%URWd~sdJ}JD$8J&r=}ARoZCJXuYN;rs|y4v zvi<|N&Ci|8x)&gC3~HQR_Kr#25WIneY`Ydf%Y_66p%7-!X(PDN(HF|Qy9X5&wC&a> zJ|ZoLbTKyM;OHiZJruzb$P*j#{C6zRqtMpZ3*7M~k!zHWu?1f$?{;wDbb_fYeKg~jB~h1m>(%-I&3rXkv|e?ik` zdq@+!s(?F-*@?_g>y3kNujkX^-7;%HR-;o4kNM{T5=aLiQjVOS6M%5>+<-y=P{M=p z*p*d84{Qm{|IX@88UoOrPn|9JD3(!9h?tS_nC8Q&;-j`&+9)VCco)R(xu&fQT{z3{ ziD!{ROrUJT(NEZ*GmIopP(Qxk)swDpyYDL^;d zxoEWx{Rn#N4#Imkeq^vT22bSE#S0}x;|bx`dSF4HmQ=50_JLex-}obesACZbWj+UStQ_mMr3ro zG+lmszJr(yAxZ%Is)QsH7ZP#g07YM`1KKWn1}< zJ?~TY{rkG7D$PDtgE{<*ijtJbfLYfQrH4#AGd4nVEoMU{K&2Y1M74ncvLjEzq(DyA z6-I)LAT|m^F`9r#3E@)0Il@`iEWc2mn9eK4@u2@xm@r9#Y^|D}kY(;-34(|p6MwYe zhft?*UXLTGQ2}?3To|`AIi8jERvP63x+#g|#T)Vmpnkm9Hk?fkg$u_la)TeR?}gi( z(&8{XhTAI|Snn69H4!wNb@A`8mO(9CD0+6@Uc0sI^+ZcGnA9L{?N58)Z*$x|FOizp zn*EXL&d_;YZy;P{&QkK~3!ib6>&B0k?lPlIlTEu4Qq2R^jC!?Oe?K4Ht;%^T0Gc=n z!nCTrb_LD?{i?tT@!)8KxRMx&{onqJ_5VA$OeqxdLjlnh-4$pZR;s~Gj6f|^5moE9 zEwQU{I-lm_9BfxwmsXD4y-2K&FaU9-nY6_#T85EaVO4YFlTQ@ZNtNnvGj6UAJ-N#G zlpNG><$nEPec)LbT@xIT$m~B?X3=a|;+&YIA`Yr3tMW1o-FYD*iQqYkhkktk?{;`3~$BM}OAV<-e7m~mjWr*7{89hTpPJ@)F2JJxLLuMBqpeK~v zZ2-gmP77d!=#UYs0w970V;aMgb(+d)R=$b*+!OJH2-^GA!NuXbL@sO5;&{5LPq)^O zdZQTg*wZSpLAWqBeLF!@>;e)Q#3k>PDF?baAjyZAZgkty&x zw_0nKkVb0;r8w@z;wCFu;rv0)jzZllRa7!uWfs-M3{`8@M%-vm)6v3@8r(MGX)`%8 zZdPkE&l(+1)kqDy?TZfd6V}wmA}}Mq2M~hM!!G6}epKO-o-U z{(%T;Zi&1ONIwnpq5E~QyoTf13&>5Cfa?yO5C9}FtY$Mr1tk4DL@XwcN%@>9&!2qk zU#d{U48lo?xI$l#d)@sy!@fVi^zOo`DeYPq z*45>dgm$n>>9jXjxdeV^clYq-5(Rj$DtdAO%VQ!C?s_MfwX8&AQ~rQ9k*wO@-tlyc zT{@{bwaTJDfvuf$cFMHK%Q50dQ?WpsEQrfps8M(t_u!1ttEWet&*=yi0m5I5bAx-! z0xGOPo%!38fvu5?gpttyzsA&iKGbhY<-I98Y;!+y*b{g&oL+C(|1oJ=`Prt%yOj66 zpo7^4j2~6&l@h49ziDk0^$` z8#sG!19MIW!I{oMcL5Y`KkD^=zJ8Zg11dFOU#X(=@K#QP4otQ&f%9C(P?*3VVux#X zzZ*{b!|MkoW61P;fnEysasx^@2%R}^@crOVE9tE96Y6r`2-vqXak-vEjTCBoHL6@p zW4|BRiDzjO7@*C7_4Mwbe1!jaV5^1T%3^ip!9Ig}AD3_D0H6@32>1~&m=Hw_QunF% zG+5`y3VJVmoKV4}9>?NNOO0HPi0TQ!q@-L*XmU{evk7s9M9n&9R&-*X7;SY-XA)ND zM~wnXRik_q0OugGa0pPoj@#RYRs#GD4zHF6x3`I9Xt19P45~Kk@}H4#>5fRkeh>?} zAuD$>QjWk`C*yL&2FjSRsZ~ZlN*p*xI1ilURE+SuWUdtHTnkEm(nj~{{qWoeE?6>1 z0OkznZQGB+(43m5*OxjP&9;a^BGI?+k$q)`N4&+42KmbuR@T;^uLH}F+(pfI?zrr(_zVVA&1^MAXl{0V`{WZcVLdyYfJo9YvT0-2 zK6%AB10;gBdm~EwFbG)nq~nwy%jvj zET2L9^}ffU-@!XeFPbi<4WQLd&nWVRZ<_Q{6#CPRB0j2_532(qF8d3&VIJFhb5nh) zdaS+kesGQDt<}{ITpsO*WWG9W9ZcoGNg#}Og=}fxOi=JFBcda<0XdxY^%=kGP+`Q} z!m3~YG>b!<)5$4s!;595Rdo4y|a@v_DCYU#}kfN3Y7C&h!4L-z25|-DuP>UNSV0V~HY=|2kK|IZj~ma)5nXPVAI z9*_!*@sjyrqz}%uh9YH@zV~}EjaFm8kjvujwb0G&An8qo)G0y48r9Why^VU_i_)^) zmUru=#>ZeaMSqcN9`=HC!!X8)Qe&dCoonT-S70DEd)!_z+|5+O#1_wlzx5Fb#!ZnT z-R3llE!ZvwH$Aequjlv{7ktl8JIH-=-slND;vde>+Vke$pQ*z*bZRmXSr%xjPuIDf z8g@dOC0n|I3s%}v3A!!@r&wC;PBGk@cy<|K*4L#IS^r=(7EJDMXz%Uzlnw7R&_rDh$LXe4hvydPVt8F} zR8{{nDPHm5bbPnW=#W;U)>d(fL=a?VhAPQ#Freo1&X7s`)>5Mak)xVJbl-tA^FI#t z?H-!cedJ4d7{4DH&^}t8=GdiD;((Whlno`m#)6=zt1_p}M?87h3HHi&3R~IE{_p}PA=_r?Z{3L^D4>YdI zC&Z7^Esh)K%ce~Lj(BmJP-8S%?a$}#HX7L(yVLb4tiYA$z(0B8KoRAV7~n`nE*hjW zs^wGmRA)=|rfEse=atP{%W?9V^fytEf=?5;^l{HfxoE3Y`SuN?7~Tyh)(BinQ$wdu z^*P-7EnkK34hLYVlQ_41R#a(lPp~b{C2n3j=k76HL2=vk5gB4;l>}XkHarR-ugPf$ zPIs!ne3+cP_zV;kdX-tLU|KD2K0ZPrm$6q~^_KRHS=tX;8nT)!r`q3FNn?t}a6g;q z=W^MIIl{uOESyQ@f`4mLlA4tt2vkJ2P=W^;<{D4EQ%cB)cXlIKV{_(OvzNTGg*q;v zwC!qHfmRiuAH~}@>)FigY&g5AQqthXXCA&of~=AhLFgM8ZGC+t2Mh-QF;nCkPu=_-n%zqsO2zgx zxL3(n_vtvF;)BK-!@pqY>Mq1jvP+D8OA20+ATq`WlHRtqw$id{>0!Q)-X9l_kE&L} z`NcSzFhbcnxkSj8NY9VY{V(Wwf)nU8G(MjTd>OI6yt-QKCjxIaQRWz;b8*qOKt4Oa zO&0qPPL>x2I-o{m*V+H%ga2)szq3RMydK~<4X_=|pYPEs!i#_Bu-b4;6mXH_dB&h{ zPw8Mb#|u8-bqDh(n(DLKw{qa{m{E%3x@I$-K+MczW2IV0B#)1rC0PqL`H7& z67F8{%;Rb{nWV?2Q&ZXF1i*J^D?43A&^Q3Pgf5Tfc{+7-+r4k~ z;X~BA88E4LqtGq3+3{#ZY^!D!FGMy=ms>?mJ(z}ti!F?d#Kr8^<)G3=Fc+OuHkZMK! zoE1Ul%I;*~;elsz_0~2vM#A9Cd5^}jgZ7B1s1XIo;LoC|144u3+&?GBD2>I?C{d*> z^|qv=pwP8asFyP)q)BsNg9c{!u%sMT=F`{o=(R;E|~(f$Lx_1BNg zaez0GJulH}@YR|R3)jl>rELYMqO5`@x4svSYdwtY7)VGWv6cu6s{s4tn?fBb1T-O5 z)(3&}>{o}ua*Zk)h%)zex{-XklPw~dHfSdn%d@BN`q54O zTOxfF8%5!B4K;)*!OgllSXK_VQ=WZe_j3yeXat(?Wd@lEsGmK6?BRE?K)Z&AX&2_Z ze<1e<>c>uP&0z?qfNuQ;q@>Mo!}2%_f$t1W6~`4nBm~ixr++Azz-3VP9yP6z6y(fR zhIvPo+unazL(+h*-FxCRY$4Za^K;6#w6ru_3jkYTWK(`m#AI}@3Ojiy=I;A+0K{Zv z&7qaHGUqL((sYJFd~@zIzy;)Yp%gIAY2p#Dc)Isyn!+rA8OqlPC)=UYKj6`<~!xh}zv*67WcFQ42fUVb@f}D@dNAM@~D%kvN?E2O* zji%Je?|y`;R5Bg3&AGR6GE`~Jf3iPKqB^6X7{|`}Y#Do348lg@kDd}G&2PUUGcjf4 z5upgne!eI8F|LJSRIMh&bS*>ZuJPzu$$X>tCM(|k?xeQ-sBInq*t)If^ILYz^^f?z z=)e_gG>|NnFFkOc&8+m-wfaqz`lm3&hd}p z9q%G2wU(&c&N`)I0hu-9=z=C(t9Ro5-p|Qzfm9{&ZtT;O?Eh^051;v)XOdC(gwhT< zl`&QHe0Mzt^s`l$m5IK2L!Zol+(rZzd|n$5U{7M=$LFiSN%}{PPRqdy3);2y2Cs?} zlOMSmuJn)ZleoIgQ&7Hm44~6Y=Ax`D{UGW4PS17$SI@|dColAeA-la8WbKQ`OE^Hu zIh;XV>HV=)EX?9_9u=)m&;%+#q(^P6O(gt#^K7Ml0?6YiOL`Y%WowJ-3iB!xYTees zD_XJFois8$3V$ADo;)wk#UST>7!wup#Q{fJL3YUU8L6j!*PS@C+z+6b7DOi(0<_iw z7sWm>_4iiytz;L_HqQT&#NWXud=d7=Yf!DpF79x<>wE)U^WF@HYH+41+{HuPy8Q4x{^pr}|JJMWS$Gl4{^i{heKJ}`^Id?M+nYjQGf7qov{$H>136UA}ecJnP8~t|> z3U9s_{$Gtq602|J-cDq~Ncs+_Kyl&xaFRflCGWUT6&GW_VEqkeu`ghOz^2sP18}AE zqC~i)UabpO#tX(2u!ZQ5pu_hcs=a}|{DT4{nRo%B@o@IE>$=9(G>; zdLew!+S@-R#s8MyZz~Z8LlaPf=zByERm|`hHD%6_U8jrqfi@`_d%?{n7{I}=kw4sE zrwXav(s2HR4SXE!sfS5IrQ7|yMV0$&d)Fj%%-C}ebFKUJ z{v$qC0^hbq@)z^FIiyL|9Lh;gtl0ml;G>#@dG;k164nR+afR6;(~rqEWLMV8Vu?!{}0a zela5F;7McsY(LYET#5~ugjPb=KHxO|#P_Gu{4X2zR0WKm1BH$^>;L(-f0p;0HkEm8S`I?2EM`u_}I)s=S=3Gmif=H z#9Ra{Ap7*a<)8o00EBQ1pY}l3LRWYIX1*kR0l0M#!$WZUTQ+OB+MtP<_MQJT+tyYC zUjOa(x4A#E6}`7Zw1=SB>xAikTV#I^;By@He|yb$2H@j5-$}v$7SuzLv{v4G-B@JP zpVLI2fa3jkBA0+6QriQOcpBepu!!2_&lZIb z5Ds5B5g)$UpKT=^c$U)t!`PT>0I{#(8bJQ7wg(UX3B10Un#`H#Zw)fjwt|=~A3gX3 zsHn$f%Gf_pWq36p9i?W0|GD|U z+lO}|yLpKWiMPR`&{j5dvC;bI_5c87Lfs343Hong{I3L1_i_%-kCKm4t-dxggMrx0 zT-)3nDfm4)HLj3?0%|)YCFWy7icbx>nFp>d-Urwu9hd}oHTAM*|9GQ& z2Wp+UH(B*Bw+|Nb(4>F6>l-@2`i=P~iGKfoYc60u&po_z=^$#Vs_p%qP#j}11_ZC) zE1=$Zw?85wfl-3yKw)_hGmS;>&0ebQe{J?$`j+86xkf(Vbf@?^QhQFM1!rmn+|e!ZD^K!IMG_1l_KC*LU~7 zhk*any+V4D=rsvQdXwD3M3YnB&WZh35M+*R?W?)t`fx=B?Jc}2^?qQ*=c7~k6GMB> z+B%+&wmDHA+%t;Dcl+LlOI3oT0xlt*t&c7f-wcH2s#n4C@y~o`S2#1(^;-CWQR{x5 zSJ|a?$**G^As@!fa`;-nYws86{@+KjGkA%jKkHx}7$xO%2|*br?ZGrj zdzHW1%Y{MHSdlvo(x3qu>5MNb3vB57o|QYc z=f}Eecb9HwjBo&ExaWJt616;3{`C_+?)yE3^nV^kqncjI(*-1`jlWgZ+${(U@+E73 z@|FYEffFzCG+I_{y_mnXa~q>7o;_bxEx*#(Oubswr&2eQ%874wsM4a&hq3cl`u7Pr zptl7=%*RyoT#k#=M2Qw2Wkbme#~e-Z45#fY*1E;=+U@!WFax0yo9VNK(gVbsDoCQz zsIFTiPPDl?dp@i>k!ezgJ5(ED%&QL1$ViwOR^FUI-mdk2-q#|cQhMLEVvq(x?E^`b z72eRhYF+iNuO59zHkFbpa@T4+><$&S-nKL}4Y6!4jNLFj^oarxp-LU=|DV#Dtu45` zLRcJZ%6aR2X{M?b9J@g^@s##cV6L(h!l% z$HvBtj-B*t^*;=o)SE*H8c$K8&h)?Sd@PAqc$-^*&E0Hv{IZVLvhMMvT-_(-^b#V- zV6RdL?UROv0wqC8+4>LLn6E`eC9b9L`hrbXgQ%|5_$c)6GuXZF|9|X0BgjkHV|MS9 zIQL8jwXSr|BZ8@#8k>^P>Z|fhhXv5=vY9~iQ@8`MFlhNMM8q(_zFE!(><9t`URZb* z%U!dE!>%H$^J>vSM2QUsSqnb2*QA0DQpKI6xg|gpQvI}ZRI{gn2>%i0qyip8t zpvf6cOu{QDjFhG>EHc5@ue%h39Bk}fHDr%gbsgm)c*2R=n$eT;yPzo>iUFI;`=csd z|LkAH^RxfkN)p|#=j)h|l}kjWu#DzL;IpLEvgf~9tvuL1|LeyW;Q$aIFk<1x`4tew zuK_TTvqPAr^oX;nIHA0LO1a_s;+cReBIo3z@`i>@1yMHD^+TQ)K(9&viK3B0$^ZbW zm3(gH7k*+no(mv)>?kS94<>#?+KpHAhNDM)1sq7Be-)%|pY%#dJ78p9`E3DZa6$05 zaB$OU_dLR2-)$iB9s`l0pMK+Fu=X}t!(GR9s%)Kk?3mrcdrP_&1JK0#zV=Xgp?mbv z^Uqjn3kNV}R*O?4GxgW7gIbMk*Qwfh5e31lM=Rg`mPC%yK03&8@$iI){RQ9Qpi|^Q zTnldW26wpU3+%oY6rWm; zV_zLTT$C zC2$~XYQ3c{IS^n*y|i&jHQ{Eubes558|1PoZB>-qbkwm*6qb1o2`{Zh&<_vBx3Uz#6D_r{+aMGm*gbazN6EnfugcnxYQOr}%Fa6K zDmW01QNzV^z2s(r3?JG>ooJ;u0`6JUk@)^0lDUkltM&36D=eHpCEp9l{5Og0QdChV zy=XOIdeXUJpPUl`ccAP0M>rHx*B(!Ulr8X)os*a%DC;8M(l6!a)F)&8B5ie&f75pGYIs04{>GS#bFNT+bJ?83dI7O4?<(Q;Y)T#M8#x3=R_OH1L7>G!8vi!G_Jm|9r z5W6$3t;c_iH)P@b$jD(JW>!&Zq&Nx-~D(W0~} zi+L>I@N2|b2mw0?s6W2><%Q^E+<|h-*+hw^>AWjQ*y1qIE#K7w%sqBT2_-tN*jb!z ztVA*rIP?VWrpg4rt<%-_bOUpN+76r!B~RDGL(qU0fY>iT`-iLlDptCj1dttwRESbF zNvkDRNKp3-{DTzoLIubQD?hNVboj5}G<;tUf8Icthx7Gq(ROyBMOU5L4RR|xEq2E@ zl$uqf7`h0u=u_Ci$H*WtQIX||$prb-??0&8TSH8u#*j9y5a6Y7ct_Qjc~-3sRus9v z6i$NsgF0m^Wf^w_oe3z3vn>l2G!b#6aM-v)J93JJef-hPxo222boz&_K9u%xp$x{! zlA|FN&N#zjMnuRXR=QRAw3H@KfJ(n?t!Y9e6g|z&&3-hQYex19xPxkyI+th`qj}|S zO`B7;cv&JVp76NK2@6Ce-h0y8X@2x^`>MLkqce))#{ptvZ*rBZGRLkzPT}fZj@RVD5(BA z%aBfr?#AXIQRzTsR=Uzytt1h6rom7?Bzo59addtES6biPfs98&P@?IWD#$9BZ_ZyTTDVPXct(Lug? zQ!|}tb+b0`!k?R9_`h}!{jj)YUN}=Zy)a>_#29kMK-5mTYpC{lWiaxWEs)=1nt=(R z(Kc;;l9dE#!D@#bm#%AL$1o}03d$aSR{C-ixz~cg?}+U^q}PE-pmVcGAMfy?W6 zgb>ij^T}gy-gIFtW^zN})vH%SsS*fD9DzuWsJkSOZx!cZ5FY=G&6|qn1tsFHo6+)~ z3IBupb0q{e4iCcZ@2bD}H6cO(x^n5`QC5Ad&9j@08tvy&22Oz76$=X&UT=RPhR34F zL+>{wkF4+>%fvzk?Q=U5$bcK)K9W3{Z*+&trPB<;T0-zFDk{oCZoT5Lc8|D8u00lq z#7d8@j}$0Ln&5fxI-EiQ*79Y6YuBu3sOqhz%8`0Dl3E!Q+~X&y1Zxc7a&p>e#;Ao& z2_%r|U2%<(3T85C{#O0B*||oPuV+9F&H`xO7;4mld*2r?VLcv*2BKcSRYa9Mc23`N zv8}YP3OacNoCz9uy$1w3Z#qo0>;R|#V8`#ni1A`pbmO>m)6i&&jmb5PAs^9CVsH!a;^9iKHD%8#>OolAX`D$~O3iWrOn30g3T%;unx`~EmI z6xZ>R2mbm@WbxaR-9h!!Q^Q^`JwUwX#Z_Mgk%5xg-RRBC%tO$JS;aV32C}aA(~M0G zuEaW!TQ_y0xkQoiahb6}q`&LACQ%lUwkP}Fsk4X09w_9@P{2O( zmIn%c8B{AZz))KCGP;_;S-;z^e_oJaU5qOTnrSlUZ#;7eoAqbvjkL9~69tfRB^7Xc zz|F-a(GIV>hy@dLV-+o~FymmM{Qt+*SB6#Dbz5&r5CoKN5EYO{q@+uflp8i8r8zzi6qyXEA3E%mIqQ%aV2}wd0CfyGRd>0@cda z_%LFOW6eFSwb-$=p*vxWwAdZt;YPk}3P$t#*3`jM1K5fz>>8KN#{lrq+0!f_x5EU5 z)aBrt`HB~HH=+0$MfuT8KBJ;1uj~j#yF^iJ=Fjy}#&dqrN%t>D5O$!g$IvFusu17H zC3)%u;X0Z$At?j{9&4t`hfsLY*p&0knEa82bESRLg`?h6VjHVk}_TC1XoV0#0v-p{$ zdv>&pDozK<=f;Zmm2g=X6!?TvH1CmDJyYx`d(^b=9cy`GeX_vn78v-ONGzAqxnknF zxhLQ0^0cx+M!_3@++)7HW+^v}sc6onU|cM+Zav~cA4y-7L+X)nJ7ARj{+oJ-+|(KQ z;;i8+dP4W6p2Wn&sL{hP^6&0%04S+E?`m(?>FCsyW7By?LN-$!sW(`Ek)pRBR450N z9F)FXo@HV&zk4Ur)lT67;iREKO!v^DtSpqxefzG;BF8?76eiOxxbj%omBJKHS#(vU zY{OEc{#M|+eptr0?uD%Z{#C78lat?DsgF&P5W2t@Xj32 z{_{y4kdiI>Y3%=^a>L&}VDeDzV)4I6H{~xuTYvZ;Ku~l(?jy{w7Psm zJ(Ib15}e8XnJf&FU9-~FVdn;?RVGL6d^u}C_o+XmYuv2)F%>Pi&?9~8IJeKAk@J$W zoweP4lYE^+i#R(o^~-g(?syq!<&a&~?M!6RCX}qTUFK_6fz5oCmU|oR(qh^j_3l6s zj$O9pB7tegI7HAEW5sDRrn1ttUKxXV**@)?}5I`JMgl-d#9i4TeI%R^Tzk?OJ4 zm}XDPIYW#Y732VFbFkO`%$`{0P89tQWH!1u#(t)SazHPj%d$xk7lEPOt|YECL4)|fEkPH}`2F}58bJektT`XeP@%@R8yg5G%SBd$yb1J_ctiWS^d6eEsUD-^Ne9#wVgvCy_t%ZMplYIhc_( zegEI>XLB}V$rsL%N1C>!K3KkLY+AbeqidRdw5|l`6d>SI5tZ#K;@wR}T zA)LD!iO*CgL{GGW+#+pXR$)rB>5Wj6K=mMd_evIVockfoBVcI?neIg;7*;-WE^}d& zN$y;lUadiGNUo)q%?aO*PvV}UNT|0+xghVQBMPhc8m?BJypTyxWBhM;K`|7KxMM)0upu3OT(8%Txy<4&C#Q z3pM+QaC>t$(jEA%CD&6IOeU1hF_UywLwFE=zj9A|DuKMbuthf)(M4PJ^#5<)Q0(c4nnsI4~l-FYsYkwC_n z6YgMGnkZ_jc;<1*69=BQ(fHlR{D`L=g6Nx)`NXD30?TchvyF*rmGu;+@Q%JnwX&7#1d`%ly9K8^<4U~xuyH!^3w9E)6L~;ttK}F ze0;;T-t}+W(S7N5TR(sy>pt1`pykExyr;-EUxJuYh2<>#3fVjNb1dnkcVRg>G?K~8 z@IYmTnW$*l)2RG{lG19c7oErHk^o4{I$;;yG%CzYz*Qa~zTVf|_QF(1{_bTM5X?zL z(?2NHx-s%&hkkf0o|zB1Yo(cYEgU}|um$)M>T!aHj7i$Hnmu%MeWw0-Xy4lh=_FN1 z)w1ybVa0u8=4@64YF$6^2`CsD8u1p@x8}=(2bragJf4w}dAD^*uk?;5JcJ|Ok^#Z9 zkPEaYz5{)){xo_axSidl9rF@+HyX9>?%+mY>*bqFz=mbJ<@iPn12c+lCxl3mZkvaO zl5O+m;~k~d=zlRVUega61Y!p6f5m2hz>p}h%u)0|Fo)Q&@-mgmHgvVGQ*n78PZ_QQ z=b^MKAs-5XB6O?WwMG$r8NgxPf2SWlsRB{4)sST=Etxn8bI4{|?1)ykR`hapFrrcR z0unVwW*W|@|xf5aVF8^>i{>d`N|K2+Map!l(E&r`{JW-$g2qD!AI4p`gibaC=Ju zt*GK7r{?E z1usE{;f1nw(*~^i$DxTDI;8rp0JZGPKt`o>eV9gjd925A6WJc|_6=di7JchJ&Kt8;;|NNd(*Ukt^H%yVwlumB{EANIeI_+=DQJARay zv?e{To1xXgIZd3*J$^?Bl9%6N8#P~C<>&I#`|>f5T?8>PgpZ`?yRpUYN541O@}iht zAFu%y<8TTYkRmZ;q35dewC^PFut|O4^fy1i)IF52L$;OJd&>5Ctgt{o7;zoXdxt#L z?m9g8Gnk{qVTUitR8>_iO+Vj1N3AsKV`q!>Kh55Q)`BEfZT{Z!Z4AAVpMq$Py^bgM zcj9}&qObY2Gb@+7TNo~M3l95u{+POXUfUOov&%CfMkL&6q~eMfigk&&?=edKk_yi^ zn~#L6SUpO`T5jrem(!`!SuUz;boNrz6)=%T5`$Cg?Rs%saZX0}Y{#mA1@$8?Uy<58 zQQIREWP6TVLO*`?F26|hGwl01;rH&%tH^oGWtq4o#!2Z)Mo!lSD2cpxA*faV(E@PrwmrqkIX0giR6;cgmKxJs{N@*|rhENTG3DBAvp>vhXso8B!hn45 z-Bg-8@%$%ko5_#1gZ>jA8?(0V=c%q(nL&Q}@%qjm)+I4tgglMXC;k|_AwV-phDZvv zwt)d%K<7;dU8(g6zf0Fhl|42%f~fkPL*b!2XdP7+i}I*pK~i5=ldl@uT$Z zyRq^7z)=V|e0O&iOi_G%g+GVkN_eml&`da*A365%-_Q5~`79BM_WX<@i`xhOBuL>k z;RoGA>LSGcu!7F>7#3VcNxs0u~bw!A;#~*JG zgifQ7&3{t>oV9HZ#$$`MR=cdntar}ceNU3#=n@e99&@)+JoelfbHoG*80>{atF0ZT zHoq$617ZkECg&M4CV5HoY z`n6I1g28~M4}-cRp&y^SB+R`R=Kz025YE>>B%oM(4&id#_vwM-iJ?rZOr!x3Iz&w5 zyiSH`D`z^aIyf_}yk8NA&MMqY#|Can@hyq>2*h=2NiFo0G0+oqjaA4*fkT9MQtP(EGN=)X#%ZiHtw;pCbAjQ*^wbNI#%zf?ab7k&&(I*{Gy<^x=*P+ zNOIkLnZ-&!UCC;X*5UP zBa(5T$K5YpA-IJ(?wb*Qs{Ot%e3!*oSIh<}@RXSxgq>z`*EnqEo)$W7yVd*m_8zR9 zxpy(HZb?WXxwJt}H{9=AyOia*w9KOW;xHaN!Q5KU?n7S8d^?l;IadR(>gItB_$&{5 z07WhTBiHi&N^iBY`^9X=nLre6O(+1bazIW6I0}JFYu2xiV?XudJZ+B3j17{Oyzfsm zh`L%j_eF}%{;|1S`M&wibL}Ft7>v@I#d})_)u5`c%w0+Zld_VXrMkBDcil@4!-?;s z2Z`X1eOlP6#7RZ96?$Pjq^~J)Z0VJ`5TdM)#GXfX&91+FxV;j;&r}=LXNyhB;Ae<%_DyBem zTlw3d&?Se+X(%N>gEq=Pf$e%2^HF@l_W-eXTuY{}Aq9&Q8lD?Iz6T4Q0%J<^>sIEU zIVt0KepxD~Q>|=<{Itc>?K^M8Gw+MK#*n9a5>Q^gzYHINp+@$mrM6zxpr%J8;TFi!@F{gYzjYG(bSzs~r;iiz7Njq^)F5izKb+ z#z1O>&B1Nmv!WNkEZZ`1Z;$1Xg0OCFs=)Z@8DbRc+(>+||~}6VVZxXL>uX5k&DI6PToGiHTYW>IxVky_aSZ-j`HX$1CP@H89C{4Dtv1 zwwta;*TTk=NR70ME3VHF*%i?_DQE~x9gLD&wJ0176ljtsH=+c!eXQ?$i03>m;Sbzz za8|jvUkUA8N8^lt8Gq!ZZ{vv@ISlp0?@2)V(lo}4G=tMSNdT!TFBi_v8vmY^53Id1 z=a#c2KV%cS;hXavNmz;JLU(;~)ta8#xMWpdv7ND@gD3v_K{nI)Ke8FDvgQ>wZtJrN zgbGtNgbvh%duLH8$mQtxtV)wL6Y6H4w{+q5`(UwHIqETiFdfA7IDo_SVG6UR}X7EFl7u{1KKJSyx(g|YPn zA7APh4Fv^CdNz}=&M^Mxp0!Z#c{LTHc-TK$TR5OXHhTvt(7gVhe4e8@_UtF?%<|x^ zRe>gU0SZz=o`-23mifpE#$~D=WlinOa(^u|$vc9ea2?I13Rg@+g)1$N*tka$zD*)a z^R7!*!B&z9Suj`4MUTPm?cB$e&NZ{IX%B-Y+pQVYw(cHPnSDdkkf+VZ<}ksdApYEE z9JYmxo$r!;9dIJ@V4HH{%|8Ejo!&yhJ46c>Mw6q%NzhElxK6>XkK| zT&?k7$FQ<1yrQR_$n+@2B6`?2nZ-sdr z_3_?y7TtawBq-Z;jonpVnn^xNHk-KuG04^t6A++~PUbUJh!~RtRsQ3%H#ezzgf(?p z;e&>KRlGqbXWJ}$QuM$P99RGBG$Jc0 zygE*@e_6G-$-1b2_4i+neaEmauzZ0lo~jt^-yO+~ywKnr&?Y9M)3Q=&lM+e&L^Lz# z%lg5h3sksX`u2-NDOt$&q{x-ctL6ANNQ24sUyaN0diH<}eJ>%FmXV(7#3yqo$ z+$q+Y-=>jmVAg7ILf8GJ&0Bjt6wP8|WGVVob@AhD#Gh=Xki72b7sNh3zOq#c)~^*z zLQL&vLwSQvh*&CO73MibkJoBkZt*r4RlHp<$Ue&VBoAPl#tgBjKYu5Vh9^U`gX|@G zw$q7j3S#5<42oGxS0AF`Ms0KE4EDsC3T8_XVCUo!TCBJb_J-^zI(d?_?K?`%MVXYw z_7>r;qs=1EH9q8v10NTA(+`WVtE;yA6T{tG*wYyLNk3ypGcC$Jd_kuRJLAmaLTl(# z_tRYtczi~!$juiU>bKeA-SOktlSPZI6Qr(3hY=ggoihW6$pCR_R_whMSYV>nyEvGB z#${t5{NV$NbV{w)QDno~EknYja2TWc>RRGz&wBsZzl!jGHIz+40Q*2&MVF)g!SQ#X zbt9=aB~})kt0CfWuwNZAih*w?=eySLTku@R#!IbSBvNQC8whxYhsW5MJpBUQL}8S7 zoa5!&CkYpcp>HqgTGdxD$z~X;5Sm@XZUYRN7Db((pXF1CUFnbkJtx8AK$F^gtvb3! zt$cCo&vwd6uqqJ)S`;%{#G91?MBFDn$A#!grdl8%I(mDZr6i1MO)^6j=v4z07Rq`H0lW?|9=GL z0z!BMTwfl$@m=fgHe-BPk7=d%i-#N{r^pbnnZKTsqw1<@Ax-ZfN`f37qt{z+#cyoZ zOEZ|HTX}1Y5W&u7F9`TuqgSSIdVZv7mdAJhWQdeanW@F=O+ZLer$ZPjUT6>&Si=82 zkeE!~A39-jNbw*=IFbPqiW9h{0+h@pL&NpYUbM2f)iActWEEnYC@b?VwJ}39 z>NF^yY^Uejy)H`2=V)ay_+CUF_WeALLjpe|#JEJkHIvVi(0jq%&U-2&b=WDH}Xzt7c)N@dt`diK(AguG3Ptzn2Th)TsdVJ2=+^(G|6gd)#<1qEPX}r9>*RH=1{wgnu;kaH!WC`wLAqEhI>dc{`! zQ$O=*jst4}mU@W*8GSs5>d}e6Q_e_p>gxK_k{p!={V};(OnH#GScKBQQ0J~~VOUgF zl-W1OtWfK?X_8?h?;n>vq~-;dW31MvA!UZ!dArpGbZl#L>lLWVi=~?V#0t_y?}~ft zz)Y)5%T)O+1ukc?B3)xdwc&iSYW+hjdq`T?$FU8)%_0PYV)QnMRcRU$v;8Q_ONsd3 zfz3pdu3=4W>%R=jsqBaAU6DID!%}#J7X|e*p1P;PJAYb@&3lSzy_xlF81n%H=IFW) zS159D4Qr)pe9Rp!zhifv;o&NvYn=!CmYNS%4Z4@D+8`y%m9J=TTm}fTbLdF`u>-;t zX!p6hFw7JyMxfC6y2U^)wN(#muz0A2%xH|M*0=nKw{<9&LWE&!U1r}ByN2}tF}H#&JxO=636fH3+5nu{#F6|#~YCS zrL2qtBPH35cqL5q*-FOmcTrFH3<@i@tCqq~%a&P%8rc_+BNoXQBJw=R^G|_ZLt-tA@*XA3 zkQWN3I}N*Pdz#H>yZ#ayxlzr8r<{e;pX!mJenZP)B6bvC=;X zN>ysy78*h+8r+JUDGG9}iaj7xBRv>&v31Q9k(8v|ma-_JB%^*3_)KA2Kx>r0xjSg-ppERGKQa z9kw)P7*N(IHCoWs!tefBc7G1?l$&3 zZG>Bx9ZP&b+<_(Ob@xdL=&f-LL6)D{8@F1cEwuubMpZKX#ldkaRupJZ5@iNmo_i1! z>5t{gW?6~}TkM|8g;|(Eh#e-;Oqn~rLH~pT8t!b&8CnFF{G)W+I@g2e=eyj2lzzuA zw3{@74l8vbP8a9V1k82?Y2rB^za~a!i1#@P!c8o0rOt>+uzZN@)%!NJtIxv--j!tc zybfG)7|md$0l8&1o4t(4^r9+9)fl&H`X1!d_|O|8x7%;Swqr5#YvOHZp0`N8*Y=TN ztWO|J>TfllDNL|ebe=I@Z%>%!XxyrPm6h_NPp`v!oZF}iQPFS&RIk_M4epz^!NR^Z z)cO>D=>sm1l^J z+thjGf_Ec%P^@PKU;?t2BNa zk>o!o+de-s?#aG%66yEyY&OiV13$aq z@=dnJYh&@r1ZvECHppDAI>iDM+jAb#A6@4AifGim|Klf!YIj-rAY!u=JDyEJNr3$V z@9{O3H(sIL^70JyU7FNM@e9aYSv2VOSxz*(;{pzN3SpK zd>3xnm514yZ)4j3cAo>ta-XUp>@4LZQzp z4qsDKj+Pj{2ToU@Nq42`O(4i?d@lbUvz))2un1Ps1DYBQW45+l^C!N68$wenUXSG) zN=%0Yx27~|%XA0IxNP|SrKvH@1Jcuv8vBSQ^9bygN7+=On9r2XID6%M&uu|f2-I3RduRb`vmr*dmrClI%XekMG(ny(Pj0F z*m7&Z{$Lr~?A|toWDb9ol)na7TDmR(ziWc4>!dF+`~PR8JfQXVR3I*~4jfATr#W5* z9$*07?#UMnrv%dce7X9tA}+^7 z)7KN_1BtFc>SIR}wShmEW3l^7GfCN_I~%PF*NRb*b)4zz#fyEn8c^7iY{rEc=>0k@ zt@{T{;RvTCzgz1S-9yUZL4*OQyXeyzL)UraQT|J})*NGr<(M~Io#^`n3`&)_UQC+xA?w8F z;`$jjQr^0a>Mu&m_Yty2i00Y_uUCH;DB+FgM=4g+x!%97+T#rZd&3Axlh|xs?2OOo ze!N=sT`Z_1+YJEdtGSx~AC3~mDd<;ruK5Ic3#YTBCZxu|T&%)06Rmdp;-Zrqe!gx8 zzO>PWdo|!V{;FLRGIgPkIOF(xz;K=j|D^-_9l|Hy&N_%y3*|RvgPJnZTwtJ}(LYr6zZ!2qp3f z+$qU)`7g<>6}e62;(3wmec|8e8IySm-zX2`xdu(#HJWS?G+i*F#il9@_`p#1vyB$F z!+u8;AzG$8Xfx;QE8gdC)TMZza-Vu!z*X*4M`*{hIKS+TrOPFdM|8hm@Fb`|CvDAF zwtQg^pyb6i2i7K|Mnvd0`alxZZ2uOewkl5xt)SDbF;VB+Q_QI{cMgMoEweJrW%a9o zvYb2HR}T?ABb|pc(={8Ip9g+$iQB5y>k@A;sC;o?IOA4_8Y4H{4J!n)X*jlt_aI+b zFmqv=Y8<5L^YeSYHJ#Ti`e4SX($v6}$#!3AB3e^h_rB-l^SA6Efo_x6Xv&FeiIJAh zQmtNKm{zyYEYnM$&_Rml z91yjA*vKD!jHE@{zSlr?aIw!B(r5~%t4^l5{$RK@XtZoeb(fm0OI7;lx613y<|pxVLvg35q0qsDm% zDtD$`%9bblC|6FcSg3LNR#KrB3lqCLXU~{`;hH{x!X8@aahWY)n*IpYZCY6WAm?m0TT7L zhJD|)NQp)Lyv+Z(0Foc<(6bP$bSi11nPxkIkptG@tU^Y~*}pU;mLuHK3+h&8%Oa{j z@oWLS29j@X9S7J+;g>Hyp1@jPe%vcD@C(j!>{{>?DmBa9a17Mj;cq5f7vH*BeFNdq zb<vKxTm|^qXkm&zb%3wIl7P<^K6eAd-ao&Q3I*%Uyc_TvJQZMXH=oU#B-8*qq@gV z>zl;mj&Xut*x4o)A0YN~M&y_M)UV`Y6@SyJ%^}4PNxhfeMG*t~M`iXZO(v1QMfeYm zx8vqv7%GT|fb-Ekc9vX8&qRAxL^OK>73pF5RgHrL^H>{N_0?dmh9z z|K6li;)jk8Gvy6zvIR|6gLG_wF7|cc+_YUPOTL{+YGe*bIu#ZwHG#2wy+3G+oGAiz z99dekqb=KVEkYBE`+2%6EnihA8b@ee73rwGT7LT?eg1+^6doJD5|(b!iit2YEC z%DYa5D8){2$I_5GeE;&XO9{XiH&q3<^kyAPSBHEI*T!-Yt?O{PE~v&AnLAzKCw zo{Pj^6wQA5w|PReVsHxdyTAcoU0zeUK}|DjxwWFU^|EvV>33GpR`8kq{{2{LC*jV~ zXVOOpXfKSZtG-BREX9x7rCeL0+}?HU(8azIv}rVy-$n*0&vwlV?9 zXn*;P_(06WH(US~-sxjOnrtulJa&d<$c%m;@^vS^_U-VFtf>)Dz`_H=%^LSjz8SmU z1NzHzAAz*YtH+sMvlKKaW>M#=s1OcQ4dh1GIE;k_kg8TVa~9JTcfh7qWCJ@&C-*3t z7h>_)iy!|~VD#L{#o(*hwcUsH4b)p&s6X6N>I>@S?o!W8zFsf~Ezb@s{bMrK%nZzX zU4*PzUD5f~Ygzvi<>_$Z&iRB|4uMfWo&kp$i#HUvcQ8cX*4?qo==YAXQ+mXc%F$*yr zA7)@?eyUtFAJv)wI-l_T8k5;?rgmLfuRd6$2k5ANS=O(`wuRFbzur}?7WBL&Z2S1a?xq+qG7%gE%x0S+E*Ex(haZrwq2t9jWJ%x$ z45|*el%W3~eDUW2Uy!nq{cD#9%mR(a$k*T&-5J_u%7WFHIi%2UlKcZ)kAy!21RWNK zY5&5BkqjL7#0D{U1!sE!OxC-*=pC;>ojboeC7iuTVIy=IBa3_EjOBJZ#=FJK2-YPq zru_hJ(`+2DS?~b)nL_@Bt#QVOto@#S7I&E=C)Ag3;hts8*Bw0JyE5HJn?O8;@bXoWq4B!!t}#PSL-rq&<;Qe{!fKKK|yH`|Av+suyMLGhd5pS`8!@$8#NO%i2n{u zc|nD_*u!b9i3wj z#Q49*rCmWRa}SPF?bEm4Z+gJ)^!wF|a@prr;f-9=ZEZ>mb23O;?( zyH_kWpT}<5^#WiD~kc)8CJpL3F)7S1YG3_cf{Kv>dORd zYWNzAnvBmL{d~-2x_P~(igZ?C44i#vZF|LRVdYB+qJjeh`{2M+73|I*UcJA!Z$A*@cnYQWj_`eqe2(!INtV5 zVZx|*Pj0#3lx~rJe#`@8RiSm2p6ri*kw=vS5TH~6*>IJ5GdHRne<{z8uy&sN=|+t6^UjN~=3f*b z0v&AVGGs%A5QqZdp|$F<+ZI7ps7upQ-B_yz%co8 zu68Vs`PwMbJnli1r0DVIo^UFA+K!Sg=|tJnV(26PlO0x_w}Xi=8JB5hirjw+!H?Pe zNy`$aX_wtuPZ5iEt}{kpYwX-;>SF_FEu;i8jOn6Gql~pRKh~`nqy9EOAX(F1_X0dN zVlp?u&)e(|ZX3CkB~ov5EKGpIy+*q~uJNgQ)j{+DKFqPu&)4?|f%A#*uKxk|ZSQKd zCrvQR3s_sv(gm?U`^aO6`f4H|ADhpUQlo#WRyNq-)GU5c$5{Fy@C&;db)W{j)scth4Z?kR&NGbCm z$Vgjx-S0OMMKZhl$+r3E36t&yNNs`CL8IneU}3)Q4pZ(+S9evRXG)7JIe+ap!_JDF zyT-CKNr6wy4x~Jo+Ku7GoB|3J^zlq|JggZlgT9;Vd@~$HK_VFO{Grz#*WaaFrTbtW zx1~69V;KsPJtfCwxz5D?(cB!cku~FQN1;je-zFED-orY`%}&<)zuI)zv@I}Z9T1ro zk-*XfZm^l%w1dT)am6=6Y-;2Xv1O8>49a)7a`t)AUSet-32EO@n;glTzSi7tDTm?u z2Dvt%JP#HxRb|~uW;W+cy=c1Qv^ox2fqR@L6=|NJa z)kGaaeWyN}n@fdL2)%_Zl4>;GD!6=9*fSq%cJcuAsAYB2GLyY0vhJ625-Qcuau1qi zVw0URM&=G^h_#xW$kuucYW0MoyqZ!wL5+IwIF0{LxDG`s+AfzJ5ey?qaH4-}q}WzI zlAJQEpN5BrgcaYsebum7w$X&}cYzw?OvVPV`!uC6>kgVAx{us2mUx7ahrg0{iCnFD z=^*5PT9@Lf)o|RIQEQq}wJw48zTBnGb4=z~4Qw%6{0Ku`>+w&ai}rUV;&8kC6R=ZF zt}`Sk<;PGeMKJp8wY*X9<`oS2LyK`~ZPo|>PzIA1wwcdJcX8Gklsm5Xa znce{bW(;cYQawn=aD5k>f}6v2wGT%)G%Way!db;*KgI7ZkO$%R*?IpFMbikUsp{p`s9nEW>Pl?ATQLZ@g{D*3CVH454bJXZ zhcZ^37t?V-++|rfa}m>)@vx+GN)|!#(NLAyB02>;(#d8-Yu@oVz>f8 zVPyQGg-*Ejg=oKZQcB z*-iDpYu3Bw&?MNp10boY-fbdUm!7=*+jIXXEY6$r!73^}#YOWMIlWW>)pONiy)xR% zoXhvC($!>4%u(*a@F7Zr`)06LGsTu~T&_l>d!?Y7Y{!XjF+V&!AP-x}0LUmI@DG(S z?XXR4o}@Uu^y4@upH$Sc2UCy^v@c@PGGpX49Es&9d0^!5$tB#&0d@tL%lHwuKNEPH z477>Ri!)!}MugF9smI{zAIIqrAtl0NOcHhyLDYz(_Kr+H3g}r`xg)|M@d-OJkaqZpLiU6(>Lj zaC$Ws=G)I@2I=!Q2HyX5A3TLVpc!|tOjROVTKc=0>RU|rvlHYE#!H{zO*TwAJaxYV z>{Lt4FU^iq2ijJfSw&K@MT3{6Wd==rP0tAU*U`xMhy6@CcEGf^EvR-tjWbnOb9J%s zu9h0dRLQutS~QqjXH92yxZsYvg_(fv{F{~8NoQzxbQ@V(TnYi~u$0+sfrL^S4{t9h z)~>n4yYqI@^=asHVSC-#e$_n|lN?sL+Ue&!PdKfqo@m)N(JX{#0b)Qg!td6f?PGZN zQq*EYh(I-2op@`SJj=pCThem89Co+s85Mk+7_Dy~uPax&9MTu7X`&sw<3+3f_)PAL zo=7Z-(77mh7BFC*v4vn~^+$7?Pt;(zIGAF(HiG{0m0BBWydObJ2$XpFXIr zH_hLBj9~|#(w1u8mrt~&iHzoVTYR9eE-og{M?>)yOF-AiHq{EIR1 zb>3X)Pi6_SG$7h~-da2J^e~pGC63Saxx*e8P4)C&%6O!}Z;DFtNNyKja0{Toi2Ucl zCAQUCZ5fbKhuKPVq|vN#US?iexTQF)eE*gMweftt_TdFogSLycb18}NmKP?=yWJCe z>WlcQK&7A_P=sK8+ezACY%sL(?JWPTpz|Ic_(H|A$t;go8z1$N(`_=3kB?GQb>%vi z?TH<_iwiZk{1T_jdlyrs z;aci+cpO7ozszP?n--#rv^2>3=wYM09PyC{>2GNLidNI+fiQ3pho)fy^@v&0Nwo*5 z?cIObYnmrPy4~SqJ$oYI-|EsX{7_vSWJPOOC}e0_NnNl7VM!77C) zPe`coB2V&PEQgilm4oPZ+Ak%#uJ{abFnOAkaBhAn<_)0+mMMItx8U=`t3P3}mTrfK z)5M~O$_jIZ3RKVmx_hdA#T8X*JMg>4wc-AErvpLqsy^V;*)KB(-${++Eb2GEtNP|W zFoO4>f#WKPicy~_8JfIDOraUCz_PN-JtJ{VVG@nn@d^6=Rc$dkH^$2EtNgrc_9qbN z{o%9K&4M4-g(vdPHww8GX(?c5i`lI06OR4BfOl7YFcB3_v5D_SpH7f7r1lJKcFSWe zbXEt2{MUc- zpyrFXLH4G0xYiwfV$|F(rJr27k18&X^LGLs;CxFt2Y0dFb?W2upMtkZ%RfJ|W_biw z3R6=n6dTmV7vHIHUwqX&yBBIRVRD#MaERk=L+Xk4W6f+67WR%YhsV{`J#rCOb`?F- zxh<7M@u;VxS{zNJ{jZG~Ww<1FhaagC#TOlx@6QC{smmL#PtU5xwJ<@4FjGY-K$G`7x!y|j zXadLGOcVOFsOa_jq^RFgFF%`71*}j}I79L$yi5vDSIdj+rGsME<^m%lU@$1=b-lwf z=RQ-ez_kS{*EtuU7cC$M9aq0Vl?A!h=5wTWIgT0Ilf$4xhXXRw-wQ5>z~l1PY(jNJ zOX2xo3J3N6f@em~TUw%l_;;vZ`l3EnT*O140O5l|gHqOS#}5a|c+@f}$_3dd_Q9xQ z*9j&2tU47WYQMESGbQjk(z}KZ4@cxhU7rQfD^--Nut`W?hZI^DN++{pdhTC~?JFs; z7pXM8+|>zS-MovWlL&rPYxAWo{!4Fj<~CALHaY{6mz1Bvzj{j=5qcyq1O$YU@6{;kG*uM(!b&j`R}^>yjVm;L8@aOv8^`~b=qdLrO0Cj407L@_VJxh z)}j_9ve?@ohrpzB)Ri`FGbZ;c=$Bp3K?avrlZ&u5(Om%H=b&W|RW{duv@&D&A zx0gQ5Ya1XW|DMYj@Zn?AM(3)3Uf}%)H84OavC#&TW1lZr2_MPE@ckBL?WI+a(bf?K zs>(x-Y*|DV64(s#Z)G&>+GUy^j1?eC2W4wQ9&@ zy*0y|yInjbqElm^uHCd4?;2xB32IgE-9TyUw*KlWzpZz;fD@6ZJs>) zmXx%V%pSds+S_pc_h?ZpKS-~^aA7?!l+)p@NS=lJ9fuRf? z`JdE1F+}y*3j5aM%)0QBT*%>IW2#D{9N|km_lkq1uSEQ>eh6hr#Upi(CEN#~&5hBv zb#H8VTx$>*NGdC>vrV#l3L-xtU!zBg8!*Qt570jxrYP6S?0eM;yLeXPDTZJ|3n9Tl z1lwK%y@q-r#V9hC8atGvh6Ioz#ja=d_oyt~#bA_?K|4sc-^n&v=Z39H^b9L_cys!{<)XD9z zaj1+KXs$(EdgLHAGD8?Db$Y@Xw?9#%f|@uiXMvOI?P^^4VSgfAEaPIh1DM$bPg*Y4 zhOv{vR2!a1`I#~xse|f>G5>e3jm>>zC#K-~L7ys#%&ZQ$b`ImAt$MJcB(=0J<&UhM zX7-=4m+r4p4R$UfhlhQ=;4zm{Y@5HBGywxj+Boo`sD9<7(t|QlcULE!MTFd6 zF|RUms?_;0&!{OaxB9Bb^96~>?EBQ5KyxR}w?L4ENyZm(zzu+r<-x@tULCuPNrOsS zT&u&wkF}-`*Hp5tP~EjcTad;cIHkonoaGGm&jxZarLw^k>2 zXmhToL@m!Z_`_db!7`WMH?EnArqof4%Rnj8v^0+P zWqpyPmSi}$@r8}Sjv}R- zV@1RbMwFOYynj zLd?7Ln?_IIcgXqF$w^V<;JzYX-zFxlH}xm?_%$hig_LZP@?LEaw9st6ig<_P)>y$$ z8PR-a;_mUD8i(L$M%DqG9*ODc(e4!;y>{gY&36qTyZuhKpq!UDo4NUEs{-772^G7v z$R7vI@)NRrt7Zv$qrNIom}Zo?tJL9K>clzVN-S=`*5(xztx4cSp#a zTwFhs{81Q-rb}=^+8m3Ce1;WYh4FNE&UHyuDiL*?w7yGWkgXQbFS1)qf3X`(qqK?^ zUmr=8lCP-|*@KdrEEX@?0Ag(%EY#@;Ol=I27K8Sdp%jGPyNAmruwWbXTzu2^xPgO) z?OOg=pNCWaDzI(9-o9@f3v&JjIr~kBb~x0s8Z;?N zj&SWDbjMRWT$5QedIUxg%YSliIE2lTPpaJ*Z1?}`lr~SkegKoTjET7afJyoP$J$qi zRlRLpZ%RN)luiMqQ$R{W=>|#ZP(kVL5&;1zkx)tr>FzE`>F)0Cj&E(nbMV~vzV|-Q z`<*||!-0L+?B7~zt~tjXa|~!Qxm>qX@H5W4!{*-IY8^$KAmy75b-P>T-0e)=JUom^ z^P%*vNgCFc*eVW6{?sjC697^z)pHx@S^bM7D_5g>_wLpI8$GtHz$mRmhRt6R*P{-95R|P*1@W6NAxVCmAq=c0minDUD|i@$C=jiE`i` zBo=!bNnpQHtweS~hn$^L1V6YRJjC_7>2>+`IUWq=kaTz(`YQ#a6V*yGcpf`L*XlFD zd7-8LerNOc4?#!C!|I#nG?DbM`LCW1*M52TEs1gNoV;Z1oDbHQh|MJx8H3Q4{8&lN?1Xjr2N6jr5t3){iWLiDbtq z9YO1vRCj4#R`0t8$-26lf1LOsU!MKe$7l8&Q5zlsp_cu{&3m%3ZF6%O7S&x<5klH6 zp;V$bg7)McNqv2N`C|FpV5(&=z?-o5BuVQ(oHLf;de}MaNY@^FwX3dDoVUR1#{5Y& zto^SF=TCjC;D>TiqMV*S@92 zH>gOp@sq63aQQkP3^!&bv}*nF&VM9gLo(o3j1K1+{A#GXhk!(^g8KUFx7NWtdxk5t z5BwMD>-w)y2R}A;nKq+=5bfQEWl%$CMM_tue4IzETv1r{W!>pHC_@^FJpOFl|E-Xp z69Yvu^Ivpc9Zd>w1|8&o-<43=^Qlp&tH3$bRbb+OQi?8uW`ienlTfa`i-3D$O$WNU zMQ&Bo;1C5|jrMGsxy&D@{_nT`;tsVM=$FVP{(1c6YHorhP=^W8y#DTY0|B(6Tn+iN z>ig>fxo1L=m#VE|9Psa&!Aa;_UJ_V%|J%28fPOxkt9Q_o2ka!(?+bF*U!DV9gB9KX z@Vu9`YLB+ao~#@Vj`+%@m3ZzW>ISjgK02a-Rd{*hhs)mj^4o&cb-g|+jDK%?bW0t& z=fc^Vt^yDQcoRfG^`rk<->PA5k>=lA02k=ff*J^1PrCo2OY0bcADjFq(|`eNuvle( znFicSh3+?jYwt+?U+p)e|KL@T19kNn_{*!pLkz6a0>U-t0Ray)sJp{H)ZO7))c(iW zQvXlx4mQx$&-%;VK?rKQ!1Rahf-_WSH(gus&m``z^{yEJKOR;451RfNP)&cEzcl^t zK80=~kL%m?zd9rX|H*no6a3!HzpXby0E?;(%Py|-+8IvNw*4jUg$(|L zskh|^kF5SWCjuTvP%EF4!vE`=PFjN$+btq{|cx5_XYCDe6SBiI`rCUrk# zps4&kF|eX{=JIwEuVM5vP!GWs+>igqHFWNUnc{S@`L_KO@8vFsiw_=hzC67 zR&5h*1e12tx)TQGZKC(6_&u{twAj-tpPzmJ9>5+*dyCBr$Q&Fh>8nCQLQ@0lr(z%O zvE;pMAzHtH4zQBO1yKj{a{yECgmDZEsUfgzRBQW-!`EytzGHyT)t?Qb?f)qj9leCB zA*UZoJ=GBxR8JjLV^hhRsA;&&`Y}Dz;3nm}Pg?`!j-9Hsqcw=gEW#&53Sm}#=w2x{PMqo}HtW8+j$$01HgHRL|pq(!{^NR{wLv@UX{( zY)q80s}&j=D&e2ITWG+$H%Uc$xts>2@FhQQ`7kpzftEJvW`efLzU;1&JyBOrL2PTR zmKHhjEz?amJYt~`JZceuoL3hur^j}F(Vew8o8wA7|Czf-itXnPnBsjZ1#;=z+rs;0 znE_=#WBe(U&3bVB$N z=*l#vv8yKyKFs_SME~poet_Hlh_v+zpO9mv;OMuduA)+<#mFx1J4zkNZK~99MI}vP zH2cI_)!U8xgk>v>!}$(+6KmUINp_XatI9wYc9pLA_}XEV19^k$xl#=V&fhb}*FGdj zk&dj&{);FI%x$*MKEu`+sW_4u9Ape=9%pB806_=0$9fcyM|QP0!A!XzcWKKV@A#(; zc`s%AfD}NYrR1ypv@%!Mi>H&~A4>4rA4@}2iLmhS-Z9mZnM;2nKft9Y2{2UMcYqGe zZd+jw4G)VO&}4bJdNxf#4VDjoG3^I3cSs_lK{k}c*K|E$a<_qI;G50=KRz4Cgv)S0 zCryBq;okG}^IS|wEUOs}sD~v#p9Qu{PK8X2pHS&}kpK~kOlGWdNRDm&!#4FCi9BW% z>El^Z{xgkoufA_$)6S}FW)c;-`Vh_u`unoiuIIZjKU4MX<66CccRRbu6#rM(CTr|A z4aE6y1CEI6f+?2Q4cYCovpJldHP2vIXkKDIg#Oi2e-%YlRXnH$!EQv>RD=KE(^D|= zKyJ6Oc2wp3N(ozCc)rimM|P^Qz1;qI1?>Z+^c%fNY@z;E?2y)WY5b&LOwe1X;u;!pSu2Jd;2h|KfBqdFh4i({!dmTm#Wdh=y zB4J=O9s8@8Z`8f0u;0E}TT9j)-2zu?wI~2kis=uWxh;G*&eC~+L^;=Gx8>es)>lcBqVhBhf_YA&}#1-|`^J>rfaqbfY+>c)^pX}_P zBiS7m^qg)q(N2mwy1XLRxXqIwIJy8O;7wi<)q-Z^*2XyE+>Zzp5Z)dGwTzHQ&*nDA zySkV)%AC;-H~H(<%Q0?YVcn}V%Qt9$e-m3Gs!}AuCRcd-%kLSnl=~>(;^jOlD4muD zjHnqktH{=Qa_l@CtO94)W-_<{k}uNfaV^21)?tTU&k8%94gcjDi!-8@3}b3a{&&;Obr-YTU*M}cUyYUPA=$;gr4rsxBEhQqS{*0Iz4^1 z%R5S_1P{e;k`kJ}dRnf#(ASOkNRM2r(h&tC$a*OERcie3)fEICp3k+LBs+7NifqaK z%%0^*qB;5*?Y=+r9%^<&iRFIy@Uh=+>ZK7{{^|MIS$Afq`B?d3bH*wFz2s8$o+X?E zHpEGoe8UO-Cw`#3qlV5-h>oRTW#V=<)6=eIZ8}NR9yI_oheF3*ej6k=o+zX0;ZXuK z0cdhiD*c@CWVKpv+Zt$nJwf*(K+m&mk(z4{?KLz$=fk;V!S_O$j~FrZTwI{!xq`?> zT&~nEPRc|FC%f{V!6noSF*~okKR&V=Q@(vtfp)#4G5eINZ0LeB6n@g95Jik>@ zH>q=Q4^?xB>s}t^ut11Nl|vT)t`n()yPyfX8^YHArzN+q{m`#k_%eM4)oQ-=C6-1E z=gV7Zidj1Mw&x|8Ptb`nk<|TavJyfQum<`ki%eDDO5q2j*ZO_Y27^{uCZHXhn}27b z@-RdT*X4CJ7?9`yNrUW#3b6_i-JAE`({tKJmv4a!HC{|mP&N|*`(_%FqTj`%p5%IP zUa+%e33yb~f{ja%LoWmyso#XnI9onHWV?wSbm{UXzBO}6(xgjiue8R9+;YARXWp)Y zy{+L(vP_)lCD|<2tbfg6=I9}IHv6w>?hx(KoEKE+#C$X^ZlKX2tS(=vY&;pki_oftQ(C<#}=Xq{7UF@2GY2j>Q*Me*~@2V9wn9cvAV} zQu$p*5tC3#85=y+vl1(DMKI|yiN(fYrtl^@O?XM!PQ5Q70Xc(D6Wc9yy=Equ^%Ow)8H}>w`W} zAsP_v@|c;#e&g?t0#Za^UQfmBl$B+>5w z;f!<0r=$+V?bmFQ{_N>;%8nf-OsdIK@TB(5@jVsH3XO7IL?FUNUA{4vhbkUQ8FI>k zYdyX_$S3tF3x)G@`g5b@bu)%ta9_j&(VQJ~@_SlkiY&_-Z{Ac*oi+Tx<5XPC?=m9y z!(lLFtK`}Z*Q;NsP8@_1aD(OUI& zEZV^53fQaPi5h4V4X1B~QOeQclob2+N*k zBv$_-olY6fn9ezztu0>mD~)uBZmY-fd;l>8+Ro4eIXJwWa_eK-vVGvT zNJbmb5y$%Y=IDwU42*~2XlfkM7CY*AET;<&oR8s?c=G2JHs?=(3Y6mBG-xlX6)mTh z!RBzxL8169C0tv&o+HcYmH@Mo%YhX(T1Ls0XtcYeS{lj;|W$La4Q~5-Ua(yKD}t zJn{HjBu(?Jr`fRDvQs}2_P47oj60%*(eX#6-^%1SlOMKQe)CGCx6l>{C5V1Y8<=p~ z0`ndR;f=#)*q$G=!j8WdKVWdE^1J+h=t+V7V2 zK1A@eW@197TZEr}BHK=s%~Vc3*KMWk7)o~PF-ni@?YV!WmILZIpqmweis zU3c08;{MeKY3rTQDlKIR>&E9=8eTa@USI`lfpSZK%c71;zdl_qzWK?(>fW!%7t-$td<7R0ECQ4Ud=nGY-6yVZ{*5d)j_Eq zZc98=Ui-Y6<3T61wbd`rksX5}E30{5_1rI!!e?KkT|4db+6riM*`LjoK3`Z{ON2IZ z_#D@;L;_>Til4EW-S)#`{PMCzx+vGX6r`Jdrd`S_{141>tB=ii=UU6XJznKbjzIN6 z3BOAEC{uP;YK5ZP@2_NHJ><_Zs8mc)RMR+Jc}nHT#kztV)UlsJ&h$|XPM0qoY>B)l42;Z+XFw(VV6()otkvKAI! zboZC9N-7H$?5F@hYiu_hX89W^0AqDf%jEq&^NZG?dA30? z+sp#sdd>y!wSNcsZ;ON9#+rW2fas3Ppy`jD&LL?qP^^OZky`ot8vAIxwCt<6l)O@> zCfd@Nlr<+HqPl$g!v7nX4bN|ZwpTp9Qcy~su3Vm=+}K~GEH>(|;@B8>y61AaxR4|k z#}@-$RBi9&-Oep}3gSFZk&)kl$>%8EI2gf3=)gkHg_5KJx$H*t%TaGHug7m`CV}D_ zhgqe?>;N%H%0x}8Up5c{gQoVxmY+1adfwJU*mL*A$dGep$1$nWAfRR-pJ6yneVFRz z&feAu>YoWX*N8Igeruj6I0}O(c5ejVu)6S zF>!eI$UUz2#Qn1JA*1Gx7lFnapwx*m$wsjeVgHB-j{*nQ$u3KTmO~|Bl?>3)p)A}= zt$2H~wy31kyv*^v`sSHJJzU zse$zSe14|_8Gn1m!XQwr>9@)^*k*GYA08g9WwjDH*AM$*Ji7o{$V zlO(Yf3ih}68@lzAEvCAVK?Ot6qX0B!R-+=*Y||UX`KMkDT})M>iG{PJel~3@>W3SK0Dw49Zu2s}CFih-FbDR1PoYy%m0U@4i?--1-X7vpDRK*0Gn zXtlJxc9n*iDx|B7#~L8ybM$N3ic3OKsh&xBsAIT{cYaQ;QSxdX_V~UDY0HQE4Yieo zVc zUG)}j{@7igG3l#dz+#^A?X_7p$$D2s?zhj`Lm6Pc_WT`fEfBzO{FYfhM?29mMst}Lm4)hD#j$^;qV z?pNm=)k>uQ!7qG9=5EzlbQW(=N$6bjAJ6a_iUq#h%0zl@D|?(N)j#(LA6!Jvla>(s zU!|NVcmA}e)0cOj{8GJ>V`&sbhDJxlnFft|9%p?oeR)j8$-|{q(M23XG#xUbX_`DK z`n=!7h2OP~sZd>_2@G={ZuTMrFyaAE#CGTc(7qJxxe(r^{3UKlQi(tls7T;24ZaNn1Is6iR)&)z_oP36kN4GuJ9ke;lEPRT z{V4|-wZC*isP@q4*1T&WqH6tFbGHH>w}e8=aq{cQ1i`3pX$zqbH3>@Y$z&Kt$$?6C zlM58Y@@Ycy`7c*F*4+n5=@QQqME8XE<7j`FWMV@GNY4Q9QsS_R{+)My6Rrsx=16ON zB;G+mdVjrSq{Je#W4+vIo|pd`(A>{&-V5(s2JN;@*2b_a+xKhD zp5I^QaDY%|Voe^7zGOO9fdU*3gKdjJWe)T*n$viQ`5hQ9IIX2V_YU2xX;m`!L0btF zL0iGAJg9E9;%k%sz6FC>PMi0 zS{?U+Djgx1-w4~-1myyk)$`B`mrbBmx8A3HQk=3^Zr%ZJZ*On-p4H_*4>&A{tyZ04 z9Mlf)sw6s{93*s#a!sYClw=T7G8Z+QlI=MFWp%N-3=imPI+qWe9%}qzZeMR+{@rzz6NnOsPlwRIsWlof<2Wt=JQ4aJi-Wmr${>R^ z$TxWR%@aO>Q%1NX8UVosma;a9_nY)H$z$7HdI(Z40TJX_2c?m>e0mvWIe;4ZA9(iZk$_2F`t^k zT-MS6_P8`3^jEzbnj^_#8dY(bv_&^B5NJboj}s5rq}A^!`Korf+nH(=$!CO|rgDz6@0R8Td%WAc zZjJB=mqFcMTKzy`{W}Rq)~DpB(!*VgO+*XR)6*$W6H+U}W7NaRO+K@!MQk1Bx`mLx zxQWHEmc%X>a|^CUorCd7>{uz=fz#p!uk{iEp`uE5pY!H~V8Qw$0atI1%x7N;pA^JR zS``@Xve&q-WfRjXg-U~=F@vMweB2V7Ly|E~&27#7R)W)8*mmgy?|HQ?Vz`S`RyPp^ z<4TW;`~w5Mk;XRp%~fsHbM3tcDm^jRe{%s2ZJif$23>s_Aja7p8n}Pw6%Yh^np=17 z+{vD{+3zKwR*n*^46r_}e%LDAu*lGWedi7uM$q$~prR8x?=wA%3KDGF_&=j8*e$9; z?s2^gb*+#8br)R=&p3C)6oC^&TIIs+)&5L|k+U6kdV?&BS%M~T!63mDt@e-tbTj+_Iyty`+%<5{YtZljrodvs0@|j=}a<@+GL@kxp0KTMh>M6&&i%hrr-Ol0o#Pn@m zU$T~28{ZE)9onP;B_zXn215m18xG^MfJ~k$@5+AAYFyLE7Dsew+t$AkuiXBcmU5Hd z87KpJZm;yKFYnL$e~Y)zt+OQ5gprj;F1!rRwQQJ!McC1qpTRe`v-4k-moGJA+yy6D zZ+Bowz!F5nT*Hlf0Rrik^Di;g_;L&~B_fsfq^ZF}nIs;GwaLYG0R!|18$~hIRf_}z zr!e(C-}%h^=pKFJfU^kJMq`w znQ&H%{NDRLF*k&-t4p|riI0Xk5vX0DaY!^HyU)eV4K*1x&5{vY*nl-)aHHSk*k0L8mtK0+(`&{uO72`UvbC!U^Tud2S zI9x6{n>xtmu=d(~n6%%RA1#TWIUK!RD>R)a!rE)ip0NW0X?yrv>{w^LL6ZrJsqxKW ztUN%z864-snT~P9r=*xuqt#Z0B4UbMVzeW^X(dXuD#5h7vD{XeZp2)v50c5iE_w|A z+-NYx52&!sjs%Pz?RHr>Wa}|F*=0NdZG-t-;hJLC&;v_C`H&LR7y=-!*>tDcfb+QX zS@hXqMXOpL7}5JyCf;x}XQ*Yj-Tl11bS6kEZg=lMo z2!L?et7`NF8A5uwi0U2mnKo1VktfjI7FtoHkt+}*E4`gx1s>YrK@2~)E%7~m{npN< z_R%WNqf`0gSfq)L*abMy>GzDonD@p``+j4+5WzkyUEIHtElZnF7zOux6O*?2_KXsE zw25c$(Fn)j0#+^!_gG)P_Q~Wq)W4|f-(gOY!169GPM*-cRLPB&h@9wSAIfvnLxC7b zMAU^xM@L=93m#%J+d)+2TT~oaSF8-r-s6=@o&ip@HOeNL_?eag*|W zWsOn0bH7p)J#9kv3=B$H?G!s+x`;M`ZgK?n5h5Pfn-q;QgQLZ2VK)I#mC+}n4x}?( zm$od9q@ok-h~(MrCfc^eVz`qe%1dY~CQ58@H62mIPQO!qd4+D3>;C17&K?P~8oI;k zNDh(>;MBu2GIkJ1-H5tzBm_!P`+P$$%Z4)#nU~K^+mf7d z8u#*>ia>rgn`$n7Ezn~z%K*fnzVfI+PbvLNu(|UQ5&2-1^v3i}3=V@5Zl2nfmTq%Z z3N;a7VTwl&Zj$MS+}ib*RJGy*vl}$sM}q-!w}ceyAkGAYmSCbi*w7eCy`& zPN6Kxt@AK^xxb{{CZa!7Lz5BFghVJFeUj44{oSEE}umZIKg(i1X-vkenjg-gr$gnl)fN z6o?jO`>Krswwa$J-N(_!&E3=Us4ROwdjd{GeA7-p>nmJ&f<--dqjl~mbbqaPo9q6u zzf{5g@=UE^!f`7+A;O|ny1Thc*yHC< zmzd#&dLpC4PSCj_x6Z4UwUr z)|PyfsSWG7b&$yq3kMg%ZA1IKGhE52LD|L1zcv2iVw0>c37<7Fv@RMXW-64(p#A+r z#SEAq;3i5(;SA@$c$ijwGBR;o-Qw`t@IOYzbPf#k3x89#&D$A7$}hfI8r&t9C=vG5QH1vqo8WZ#*mIBu!%nyb$131b zQO&i62|8A9U6yz$X##Gj>w$9F1FR`_m8l~VjK&sb~>)|V2}wq-WsDp$$_ zeW9-~z_Y$vei%diJ9QO!3S|;+^)BN2do-s|R~%pny^ne8hMk;@1j7Sq{y>Hh-M%Nf zPOcZfb&s}d%jf$IhH4857+l2DV+z-Ycc(sH|8!pjZevd^?%i|T8hiNnTl`C^dr#Fv z2ov)1h@+OzO@kA>(BmEz;DvwSu{6DggWtu3GA56{f@dXAldJ>pBXYOYCtcBGFqTn1 zOjVIeW?|#aUTWy47q7At-fZ8etfSX|_B!|@I%D(9^VoB>*8xOV8s)z`w(j@gkGRHf zrxAr-zdZl=`@x^8!{q@_2vH6ON^OV@emHs2w?wbFF_D0{ti!5jNqzmH4~ap;^mOP6 zuD|g9q{>BZzj^)(F=Q$#(faL-t_QTV1Wf1EVyrLN1+k~z%AKp!w$j!p+t+X+{PBEr z>|n*ut;)uUk#PSs5dO!xc_(Q&B(|j=TP(ivUJGw8aYjyIc>+ zkiJfbGzU}SKN`~jrbK!_f^(3L+)%yC(^(&UlQ!*XV@h~)3+v9S9y|-1s?}A0^(s5_ z-3}8hnmGn`rZpubgvyGUl{8EKQcu=Au1`hU36#(EudfUE9JY6Z`@rQ^i)oJh&qe;d zC4O$r1Zd{&=O1vD@_Yk59OKWVPS?p^H6+m2oMC+c%dA~>`X*(`@cED6+cGkN-u2IN zUnnZFX`Q$Mc?F8R7gDc!+JY$fDQ>e+27FD=N4hYbEGCRF)94*ZG}#R|d|Lgr){3Vd z#vxh(e{6yPt=bv+dqR_}e2R{1Nm-eizC_1knDm=~A_}r;CunlrlPGS|UwUWu`JUAK z*sDkg>K-u>f?J2 zx>hfXHoru1QXxXPq%;=Kn`OQEi9`y<&R6-2hjNuRdSgTB<8P7xg)O<%;uU%gl|>qLq{ax#6e?sRmt&FY6u zhtzrI5KJX&3WcTOch!yceXXZ}-{#&j{|zRs%5d8f^No9Rt)JSB%PXDdxn<6*lnJsO zdQX~T8T==5wJV$hs)Nq`p`{)GJ>L3wQpWkL~tz&2WI z{!20odZEeOO$7|Ha=7U?|Jd|@K6(ql7ibf`Vy5XpJ>@drwWnVHUv$X8H_?2g!2yt= zKIItXX266fqhI>DoB4Z7%XR&boF`K>)t9=jV|Bw_@QGlqal;KFetbfKKAS>AWm3SZ z>P5mK;jtjt#mV|m-X6=RY@j-{W%p%YT_&~&vdE+rMmbSw;wAi~ZN_dZyZYRVeYJRX zT&MKG{jO?R1L*wD$t`j7M({#1Ha64_U_(u5Cxhmpl0EswX%lm2HHN1^sIrW`oziBi zxH{+c_`_EfsiEHWl-bL^MZ&YTwFCrYj6o4q@T)xX-am}RbKY-g;he@WtP zw`C@J_xre)-(enHkxDxw1jd$# zLFZf3^`ggG!%rJnp37mBl$N$;yC9=JiG$HkwDm%9(3>eCL(X%|OcD&i#0*g_v1gY# zbCQ`C^T%O)_mL*FzH`${LsyxtIhqBo@f7vR0R1Pl%Z7&V?b}QI&7zJN?+o02GzzOV zMRL24b!e54E0xBwytoI_i(A>H1vU@vLFj2sg5uaz=J7H0Uvz#(AR#fe-)ffCUka%| z`QkkMfgoG`v_C7cf5bRsSt!@u?xn`B-sL?V zu*2?bORKx&N>(A1(yucmtF7m`DWzhm#(#wJP%X5Rn62TgS5<;tB`7NOX7gP1L;ce9 zxm=NyMJ6S9azdvaaPv-p(k;;Xk!EdziHxbM3zCy`fTsenUySt}DtJ-MR*AF{M9O;$ zkUP7|h%g)D*zNFT;wtZr<6?gUz5BGDfu7E?q-ajYzfuY4p_BMuD>-T%VrXERZF_e0 zfS@1O`PTKPb^S)T(|XZfD5DP8OP6I}T++DkHDsuBlM9q-bd@wfeCoZ0{*7g4&v$au zZCsL=1Ozwi>^M+Kci1`UxlKSDAtXe;Ih=v@b$`aU2Z1wM8ydq<Z8;29ZdXz%0{ z@BHb*)0(}N{-_em^>8*B|Cjsothf37U*`iOudt2&)bp4Qc9Qc`?ME&Luz`W-hU00z z9V?~VnXwnm`9nNZR!LB0koZkmVnl< zRx+2e0<}&dZ2*fbsugUI9Y!s&;x+g=uJVoooULG!?bc(m+Nb4Vk_LAb8c{7t_YHW- z$zg$(VQr-o#`ZcRhannbUxB0iGP>y|7%=jK4DZ+t8xQcb2FW^eBt&`!8eP_IK4Tl{ArY+~2DV4AfoK9eSU((k_*G8Z0iZ0Hh{Ga_ zC_^!B&MmCdP>@S%77SkQW%;c*yXr!VFRaafplv3RR-Lj>##I42&+Oo@rVkk-O#bljL z^`fr85`%T)40mkcp?PsfW>QYUNmA#|*fCw?1O2akNqSyAz^ORmac4UK-CGR?6O0J^ zF20tH$sRw8<9B)_5*VAc|EVLE9p#%8K_FYI!mAhs_-UYm>y1Imx1!P8Mw5`poO_bA zdH!vU#cBjEL%mw_rjk+lOIcF?v*Rk3=C{ApeZWN~b_Ba{au%_5zXa~@mHyX|FHi@D z(>Zmc@2LC&%YB8wB`IVXJa*%+NclzJ!_T^RRu&{<4_{oylP@OGaj=*TaC+7VJ6RMS zC#61K4WNO&s+_n>q}3$pyO`pS7!0xf~|=^F`C8EoMZQ2 z$slK5nVWmQ#|5spj%XH7qBU%fNv6lOw6%{hIW^05ea=3scvJvq`$7q3`HF}7D~4hF zG>Gmf4)ZF=I(`m)a9J~j&w88c+8K)S(r5hWAZH+9M#X!i^@3L~!`(fIAiMn&7dn6> zX=mvWb%lfTRSpjh=)rSzJY-v&lNxR4YYL2&%0z+M9h)2%a2}na1?pzW3a^gX7QU1Q5cs(NJ1VgigdPzDho8N)e(u?lY~3H#E$dXoIe9Cn`H$P{LSrjR4PITHmf6v1>Vw(llIU|ELJP3Mzi)>!K*oEcg8NCC;s!F@?XSUS&xG=aHKU|)ISKhCc=p@#k zJb7YqzChfjouh`%eKA%6qxR73OCGn;vGcj^pjs_t z25%Od4&$|dK1+O1mAxqlIC#%orBw^gN@0L2hp!YqE1vQB(zXIB-VVD4zqO9tNBU<% zJ2z2Kn);23=lpW@x>{y^zKZEGg>3`g8`R`eBHMS$_)?2_dVQTn2?Zz2 zGb!jkY|X-u|IDxgeUaOyOo~Qo1y&7?0YzP*5y!^I!#w@n2LW4lmyh}E*AAr|`HGD- z68Gu%cu89ig^()EHf6x5PX41n%bH@t={J#Vt|_fVC$Kd@R6jI*l2+y3!y}LG9yy1~ znFCq=ff^h=K?vpYgdKtNDBM^@k2A_%w z3F!fGyracFhg8`p<$&&j+?CT>kgY8-Ng?iUQmTA$-QFowq|v~HA2@JjZ4gzTOdZ6~ zogTllKoUNCRj_AJb|vd5y{A_G@p|{!YjUs=^ZQP&rEdSc<9ZU4}GdX;U`^a^)5YLO;)QVIP%>_?^~7vi>ot0>;Zpf!lXL~`KDv)4Ti8$DN@$Q zvlmCp3UjTsBO9wD)umwk?ry1dg9sOD+M_rm+HeL1BH$Q1m@<)C#V80@!%7+SCPIZT zYy+1`v;O-fZLS~T=tD;D6!J7@VorO!^a0Z_tsVS+(j*C-P_uMIccXJTG~V)}{x3XM z3*_J0waBZhtX3^c%1WB~S5fY547osn=1SPeN?O|L;vta>VnA3EXd>hiy;H2PKWav% zS1Z!eH;MnSRg5i>VBMleEq51#h?v-h@1)g34)Y>YF*jOdG{NoC6G3u7B0F70`r>H& z&WH`k-NR4ZuQ)4E9Mj&DU8u9XIC&CXZLj1yej6I)$Z?X1ARFVA#IFZZ(xzFg4sJuM z*u9grW&IEUOVFA~p+U5(EeH)dH9Y_xA34P;WMuEU^iJF|X_|LbB~5Xz9~ZJQqMt$( zO25DPn+p&;S#2b(QGFY&Ec+}&B~yb0?!*QtFMCR8W5VKA6MpZ{HL+q#(N?b_B_Rm} z@p)$NlYb9i!9E5$`r{u(m5F@wtsiSrrd^a8IoN;-{cw7CXP-S2@3xbltEZml)<`1< zQeBNm{Ek@!Yi_lh{nai4hRm&I>Xb(kHPCx7xHH5k`F{#vzeCl%d(d*Q=aog~&+mZr z3OL(ui8iBMM=k`?O7P<(4fq*mQ;YkL@LA-n6{>LW5Hm0_aB~xQ=;j)=e>yfw>O9Ke zt#X0lU+uYWE->0wZ`~S(KkLWn5$S_@C~t!gbl1A+@GG8fu@c~ zP!w5Z28oCw2E=T#0Bd8zRBe#U2CQnOxo{bW>z=?zYIz~kWTxPu{7$jbvTR3lRfqV( z)nffg55XSEkvHFFY%sAV3T%QTN|YT?4KYppzc-S>od zPR&eI;w}>AZ>F|xfGoGM!Ye(IF@DD=LMF4|zzr0r+}6a@ldN`-AtEPCe+9smObd2e z*+XcH%vT(d+}v1~&lkZC2A4iSOlhz34nq(qR1sNZFGc|j*tLiI*`JscG)Ae zI_76yfakXB?L|QLG6CmId$zN7nqZteX4G9_lcd3b^WbW}e<(~K>Agd4zN108T4=66 z3n&Nm7hgDC4;a^1{uc#l28z9(jSXE*?A~GmduFzw@ecu!96In#G=B63gS+)k_d3GA z-N-3KaB0WBz@Aw+fh}Qy(Q%oc1c<^=l^KU0){aQ%37QQb);F+6z5uj_4(9}15z*D= z2;htj5Zo~BE+7F_i{6L6%_1tmDk!iObG zlce^Z55oE6IG)=syG8_NZYjhNSgLFOytkkhr>4a^2kiZ1Jp@7m2@g*I%A2YpkP{gwHh8^6UcP1yAV@t?bh%C zA8JRjw;2#+r#m3yYJ`g2RNy;ZZJilVSeaKW4~6^&`=Hy)7Ao&B zEm{jP&j?EecDvq|Qz~c92WKx70n=pnWdQ4$fOP@eAZ`sBpkldi=J@I-^?#&QBU%Y_ z3)?hGUr9$o(yqcJRAVjL$$nD{veOqYG39vOrfDyZcFjsZWRy&1S{e0$+PT#iB-aB< zpqKAwo)_f`v*&0npExU=QM4vV!Te6B8PZsiO)g8CbWADZN{CXBjjF4;db+cNv%?uNU5F4nmp81snY z+-alDqB&~O=$4X;)VzDr)!JuQ8OY|w0T`Lte93-UR1(3RALPZX229g&Zk^KuF;0#_ zO_7kTFJEW3r$XY`Vyjkq8y{hu)D^eRQXAVKxC6b105_SK`sH3+MORTnbxCKq8U-pe zAG^o0nWG9>OD2F;P~>a5NdS08EEssdjDFn5q3y6@(R#0c&*B7`!fj~R(f7cxl;!8C z&k+R&cYRy2gz|b2zyn7<$3m;f*d$BG$oWub;~1MvCzr&^%dJ5bAYNZV#@bqW%F&?w zL8u)@VMBjmsMPkGQgEn_;NrM#QQ7zaS zX~O=;QQDtZoYywTDxr?g5{HCmig$=di$9L8+!W^fdBwfQNKX$kTXNc7E0v7ow#psT z;IcnGjdRmKPLuXVzh6wqRe%8!Oq%mYE(3bed`{vghk3#ZA?%VbV`kemb6^4D5VjG; z12GP)6k8lBNGRabgt4;d?17mAKhf)p#DAKkWfB3cwpK5-vc4HhLF`A`ge~un1LAbu z54!5^#q5b%B0wsK9Rp08hWX2E)y$IHmXMO+TqVx^jgXcNqAP-?j**81{;rTaC4zs{9()W5rYQK7}94(-FA_PsDSBZ2Hy&a(HPf>1vtoCc_Lj?RiM^z!d7 z;F3-C-1lEXGbCWd8tu_oWxEH-AX*Ect4Jq-Ri21If-g24f(LD{_v2Y(6Q5yp8WMR= z-+%X4$xb3wVT$uYUG8mJ&5eMVd*$6{(NiUj$#Nq-#f4hJZWNpJ!%GtkhCv^{pF}g1 z=rzg^%ir+DN-~5Tzb8@Vg`E1nNcwBohYl5L_5-c-V!@)kSx5cu5;p-`P$` zz~<_`_iB1$gR&4CMh~+Jd$6P%PCicvGe&=pbk4KMwKMT_8w~=5yV2j6juya^Y;3$7 z^~Y--fTA5{y;X5U7t%n9jG+G%2I1zM@HZ*^;D^$$fhM0WfZm46^s5W(^kHkR@D7Rd z&unLyCh8olOKqK+C2#bbWW`O=0Xzok%D~-cDx|6^2vbz9on2WU`9cCk#7t zEdfA#h0G@Hqq#W{Y?N0pZ#wkoV?B>UQ*^~FZu zEsj9LVTbR~)x!VLBfNHc@}WwoI3nm*^&vCV!L>em$nSbMJb+p=^2Pso&JJs_14vp+s=Q*8c>Msi`U5M^4)k1bJF91kIl)q9%A# zmC1<_n6jNMotyvwu{B>7W@Wvh52k5{@-JnVT`wnMTZ7+FWCvEB8Mbxh3 zD4!*#G8gn9zH=}phPdt>(cD1w&Ai1xdmc#2gGWM=OJ*={1gwWRt&iUBePDr^0+?!7 z?&@8Klq;0cBKGtuRQ8#IdG#&&V3iI1*9cRdZX^wUO1Yf|U=H|$ElR-QTh3E-O~e+Z zpgWcj)itY?eL+=wj)SwmlH+)RxHn3`mn-vaiFFt|IH}rie5P(($F~1vO_8C{5WJx=Ry-gXPY~z9l>mt&k+lTF+OlGwp zwG+GNMV>69{VpF@53T}C?g@s}jihs&p76bO6M$4y@`gN=CU96AwcF7B9{H-L6Zjd_ z&LD&)-ApaZ>gHpG;v~xlT^{4|sd`+?ldZaQ09?s=-i;Nb3ZK;#f(*KLnDP{rZaxYMHxjW|NgZm)`kY)lqBpO$BHb z9l<)o{l6};uO?W&@2+)Yq(7HsMoWenfuVBX2`gwWkB1wX#dPR9yA)k zc@0Q~7%%a?H!%o=Y=Kw`ybK53C#GP=B{a${MAcqq5e?_)YzT$f z9$-Pj-{hiDQ2-v&gY=_uj;n&yQCjhJ49mU|vr@%3CM<`II_%WylJ7^o-`)#lMWl+Y}^eSGwRG)5=X$2K`8g~f1nzG(427;K z-ax=9ZO?6g1+DB5|Le|Y$0Z(WYCNc)+9-WAk9flz0G080ZMnhVAx*J7I>aAWdfXqc zo(SXxHT!-Iy&+syA_2vTS&M>Pa~j8^5AYr=8Odp(lE+p8)MvV8Q@gWo2uRFf>ujGL ztdApuLP+UZGSbTB_M&{oB$4{`GmXmfV$pU2CB>0X1Q0+3y@$h~P8BeGg&emY0a=qs zW(UTNBfem5SyULE0G~HZzbh9V8)$1Z|D=wK?D`7+a}V70g|_#EFk(l4wf9D$VVlsd zAAv7cnI4Whx(eEWb{9C?b}lX~#xts~UY&B71X+O&Xl-wkl)z)A zb!`1vA|X*YaMl~TT5CnO^Ff6M=H`Lq6S8)dbFF^$BB#Ynh6cMz0Y1OuU5Ss>@p%uN z!0@(Ll62IK{&Yow$Jwy<+cWoNE}Te$&SP7Q29yigvgGCfa;^u4K6~)U{~uv*9TxT4 zeGiX-Vk1%_f`o{)bO{(BAl=>F4bmtA3ewWuF$_J_P=bJhfOIoRchAu9-s3svIiB-; zf6x1m7b0HF%xB;CUVH7e*Ty+Hb&ZxA87IgG8^`){SxfY1ZASB-k4D~MD+~*YaA-BQ zf1!j`w9~lrHG<|EHBILB-m+topzB490OI(xuM9tdCqI{6MnvSnL)pYI#$g+Y;^3z) z*+IrYV{&165zvICUc(n^WEXET%NN^7N3(S&H@>CkFu?Abx&5Z^T$v>dK#8BA@e1U$ z8uQ;p$xx7z*VaFNY-8Hi6k<4utPyrz05V0XS{L86vu30kk^9=Fo&lY_U+&d z(eXa$qX@i!=;zuR6SMB{F4Y-gEFE0>#h6_;`^Zzg4I7)+XEU_jDUH;)Jw!L#F8PWI zqc{kPqZ#B00XBGpfL_yS@D2o@KtYnGU#dlh;c*OuX|XNq$_=7Q|GFK+vAJR&rl*3G zQ=lmV#%M3&R;fuHGN7)hj!cNGpj*|=`Pu?c2dHCZJuL1 z*n?+wOI7p5e!)aH5GTmny9|!OKn@g1>b#XcY;TC$T>exiq!JA};cvw7GrV@Ybr-#B zUCu6o3{q?_3`&55(;CmghbQ(+aXO6nU&#f_gxO6y()wifgq;p}V~R%Zz8qUle-u-E1O~6yAdJP~p|EQ>_-k#bFKkzoH z8%-uvqF)WJM7{S#K%v3+>P#UcX;p$`f7LO!0)1 z1X&AyzvuHe?|`qNT{GW{Kb{Ghy8s6gV)nQYu>2_Vt0(8W<7BD^SOE(fJ>!;GCIXJDhGA9@$6YLfn1U{hgE}ElpKuph%f~%Kr&Uh~d7lSKE}Aj~<}E z?yi5~T_58V%?_I13$ zZg^ivrD!VScEO+QDg!)Z_3+jy36lm?pFRa4RL>7yuz*^Ej0M!P zcZHP^neI7WoEC zTER_p{tBfBI=>_}bV&?Hy1!RXDRTv2V6b@?oagh~ETl`R5L z2toF(oA0Y^Pq(|zL91&bg2qDy_D0&n{Sg>!39>V_v%3sF=u5a_l!ixpU&E=$@7?>- zZ*WBWwh5@Aw|~xx@$&Q0C)0WRlPo@HTqwQ@nYj zJ3TWKWTnpWxuvCL+CC#Qb9+M@assBdOj9_-xcS6u3GrE=P<$2|Lb0C5?(%j zYR$G!4`JK(bEYD%B1~IY=3h0f2#Qcvi?%#`v@~x#qW7}WApm=aHi2lg}Uk(sH7*i*^cDpnbqx`Q#*Gj0F8Tc(hScJpZY&! z?kqg!yPYH$pT2XKdU~#gKCU z(d(BOf+)83;Kh%SzkDND?`wy&J2r$?)*+t6IeX>){C&l--UZKPl{Fn99 zcMU~76b&Qyw&?GCPRDmqzo;gE$`g;c)|V?|665DZPV|wL4c~;cQ^7CG$?h33-R|13 zf@KA|8Z+9^#_W-0ey*DT1n_F+>$DHX4nxmQ@rtw%wCly1vE0Da-YsL2k>^i;Vhldk zJI6wA@r|BES3m!a|M;&jeNQo|S=jV*^sl&jdK;)OMqC0eQeUqMe98DA@{-$LoXiMb{d3~2k9Lh$QJfm01$BzNu^ z+hd%cKjr)8GRmTX^gJmkIg7P6(E&UPu@42!KO+=GS?z0T`KhF@;wc6g>;CrM1u$y% zZai^wH}p>H0+`TxZ-JO83%pfAeZn{t#S$H;lsu9&ytrgn_aSt$xL!M+Trj+&x9%8T zCFmgdTL@vkbh&d1@Nsr`(x5)FP3~YDFv2 z9oQ_ySIIP0Bg%hE0(qE(Y?pGyEdIBerw=Aj*=!L=K=iXCl5toQ~Z3`sm#| z(T>l$xbh!Hu%dkiQ?Gjz;C%0Byt3%k8U4@K7ei1|)$=W8oc^ydkN@j(1g6seWQM|@ zVxo8B8GXU|Lr2$VK}JLQJA`0-XZpuwl?#;{@{Zj92^BqM%v-gZd*UU-0y`HNx` zg)m*aBjeg{2le-R{EvL|2SWK^xbW~-B52b2^>QU}Jg)}ixfqA6GzKNp7eEB~_^7>B zjD{v3oBnormS7%{iavMe1N2F&2|f-n)pW_$BN368H2nM;Mc1ujy0C9Wdy|us|D0L7 z%%e*8eybS%wsFPd*0X6=wus9iA4Jro2&uao#z#n#e?oY0>8b^IX|nw|{2CYBKZB zzWMSHGq(2R_10zoYb0+I6DB*kdHJ*D{XH5}%reCW20uCHT_3$kx)zAXy|z8;M)(GRv){ zl_U?i5<(_5$kau_pUd$*OQ>?cc^r%)lo*DPB*>CYB^Kaj4J;2n#0nMwbH2xT6c=vZ zydzZ2b1yl`$>!w~Vc_-gxi^z;dVh~^L)a6`m51lG+d@>zV&h|0B$D!bZ z?VMOxiXIYFOdIuqfMy_KHx>^&IowIx08{Hm-wZBUtDUgi&l>w0*!f!Y3ig8}OaqR_+Us!UTj4LnX%nM<@=LIB}WIUTs&CKGQSS^Q`mVU5Q zhE-Dtqg#NJ?~N42-V)XQo8rk2;oaVT0Y}p_*{fe8X=y5Lb<%rf+`DZj+F;|Z_VX*! z%Z(CX?%-7;UHvt;jMv-Lpi%MIT|1*?45e9W({j^%<1SM98Bie1a)mn3l}?o}vivM= zY2TjyNr2;d;5$*{kQT1$&1s=V0^C!A_wRvaUC(oi{IbsA7Am6sZK&@%$oC~Bb|>4z z@<{@&qz(HNuX=*jY=LkUP_^V)ui~52xP;wy2vuz-nnPBr>=#aqm(R&D%IRkRIyqp? zSPg(YXK3ZiW4x0OnpGPXo14?VPUiiThHZO~6bpDA7Q6EuDNy!6)*YY#7QodN;cW`* zjdq~kfB3LIv$pn;%Fo?vy|_A^GsFF>+N|l9ue0>X;18iOVi+l)p4wU#AIGYsx zE9wc}4$}lejXqcDcwQ{f)#^86cSIYUppWqnQHDP2ePntSC~xO3UDWZ*J{a(R&_{pV zCRR5w6MwYuT{qxGpzIQPqt`gG*>J7;Tc?W4N&dKAM|(AdzD_PK&!_5;X5U?aZb>SE zU)I}ezE9oc$~66@dt4@0&jh`m9c?eA3OEG>pPr=XH_!3eH>g6-im_^)Y%)2V%$7Wf zO=LM+g14rEl*vkr$AywTZkw`Oe1X&tW)^GJgr50%IfYU+FB-nwG{>V8MmufugB>2q;8TG>aeMv9nNG!?{E$rAOkhInVzB7)ZrVn z4|s9ltMJGTF54plchpi=9}7Rj)!>+-&l~lPs}*JwCEQ1QYgT)k;__~<=i>5rs%sof z+S{CirQC`A-oAZ2W?D-)HstKQ+IJV`ZDX+aL_Q*7sn?YkP!b(p@Z{`L>|i7?g6O^00E!b)B0j$@fQ7-t@#v*SaY&=%Sd+w2cr+TK! zc$&kcgfKz1aiAUlJUNxiE9tZ4Sp7Z^lUCiOCZ8*MkoKFKhhwQ=P?#&?_}Efe_WxH#{D9dy^W}BH#2=;I2&PRwBzRZz;vd(wvMIrZQhdXlJe(#G z&RCRBX(_wyoQG8B&s0!RI;f zAbQILTpMy_YWgDWU&M*-M7O9NHA}T^gsh{kIj!(N%))U?s1CsaPbYoZ7f4};n(%ES? zE2Qv*Nj8}ii>UGRD3F$#hMLW=+u+{OYW0)k%ggS-2+d>v{_Ju&$<8WQWAR&jV6ypb zl&>gTV&4zT??;Z|{b*!)&Lv+O>Si|20i)=1l^6zfrGi%;i``z)DD-MSX$aX6ml-VR zCH3oCy6c)704sd958Xgj*4eyq8Zs3W@hoqY@ETlCo5FNr)% zFVR+GFIGCP5nVWUAwNEIjRDo1*ZYSq(|13BD0aM;Q z00pt#ZC)drKh!X5Vi;VK;tzXUU70XkTdQkIKvj~e=^FLoX$JMwSN+p)Aus-#h|5yz zqdvDl!#!G8v()HPUES3@CQYTv8(@B7Wgy=QP9C)g2a8Vld>=5lfgO;~TjiD9pExf7 zE4@Uj&1~D^P_w@3ly4rhkfVz;pt&%W!C>BW9HvmxGoh;WMoT^$A-cM;Q$bxZlHJdm zrpGuW z!9D1`l^fTtiKSkkQD*1}5?(8D*IwIv4dN=@baB-KX#8$QCj=vH$9Y)&f`g$$8-N6C z&gnvAd*GsN2TbbsJtD|Zt~cyex=7hBP##GG*Cv( zZ1qO<*-;lhu@Dh962E`!A+5xrQ|H8d^UPjpvm8Cs%2;7Bt~eEV*(XlM&e8IhS4z;Tw5#oYI@&RqSYj?|r3ZC}K3wX{hr?p5OWl}BA;jqg z{HVr+_3@gQrd(efNm%rkwj}z5X35&h?e;^S zkpnA%pRYy=)t&nSm$$FcVhCrO5EbUcyb7=)#50%Ae#h$G;jylHQ_AF6y6A4eT|clA zTfX2nBMW^U!hr(l5awMn+)MI?7>gW?CH49a@b3~yiH_LMe5yG(KA_J}zN|G=gi7uX z@jTeV2VNH88;q(Z=X=W>D?B!I^(=2|K{s5i!P8A{w|%5zWBW9j!(h)SNyxD`4gSGm zEW-d^RYe!Wl2lX{`0Rz(oT(R(YCTdesBWX^(XIYS)k62GI5=q6z{g(Obz|bi{!~kr ziGfaIZcp~DQhH$QDx6Vj^jV3JMN7_*zEicR9eh@UF^N2aON|NwAfQ$I#$?14r{7x+X>++I#3X<>KuXBLS=oLJ^tgJa{W9#;nGZyQX3p|to3G>{vv zjgo09mwJvWJW?-<8}a}E>P0X06!2mq1ue%bRhttpz$6@KhVz}MtqSmYGBI2`^E$bY zG3~KM9!c&JF|LF#L^GP*c*NMFi}E3o&kLs$;pza|l$p>?Y_MREMhsneQ0Zy@iAnzY z&Ct?lzCl(XJKsFPw%c2hc(UzrX?wF!on11$;p)63jR)FFquu*t1aDoSUF8Acv!eKZ zPbZDwG-UOM@>{p>Ud3~DmAXShrqS=xYRcR(`wk~?dUN(14ALLJMjhRVq>~J|4VE># zM+Yf9bwj=prYw*P>gZ*wKpL!Zz&D(-`2HND)Uc>Wg;8iHT@G~@{ zwNAb|oaE|U50pLNva#(%oua$-D*AM%K8E@3$-XVFli9GsO@p9Ybt8eVW4sGAC0E@= zD7R7-O}D2%)0m%u-AG2=pYUmeNM2^!c7CRb4;=D7!m8=`%#E)$Ugr|gy;W_n13Y+nV+^-9(S2zzui#DJXGfEX#z@R3qwsgau?>#s5kFlC# zN_wZltxZ9_Pv1b}bh2jCx3@12$Z%WdKG48Z0`sP|8YMgq`3|jn0(hZ3_l51R3K1Ce zRJFNA%cpyiV!-&(=qJcl4zob11B%%Eo)^&qt5)^L&*%PyjZl>mSYM;#BM%n8?sJb0JUZll;EhR;lQH&7@MZMs{0HBJT zWkoT`b7aQq)tfhC&R+*!ZV%Q&gVC0(gHc2u%sM$(#)t>dK_V_`6aO`h6!#!}M2M~@0YUieb2@OrYb|+JFIA@hKQ)KG zf*2`7SZ*`dFRJWm#;=`&VwQiFLL0-QH}CUN;RbmZDwBhmp^#w(k?Atao^%D|hW29=F^l6t(%5)}o_Bo;O!`=IFS%$uc&B~7T-Me>s zpJ%u<+8@bJkP&zWNW4)&b%sN>&aiz9y6fiolSR^`l_1WJj>_gV&%1zg`zIZO3pLuB zs%@l@;MK=72;$aiz;>;rmsII(Tj1b${@`0E6YbCTtpy{D4x>TNJ1LjYV89Gz(T*|` z-#^~FPnDcpJ%F9tvHQUz=yBFjQwIM^vs+ZeOW5Y83vx!Fn{RfD?`>J8s0r;_IezVw30dS^%MWjQd4AVU;T?l+bF+p z)K89qujRHOY;#_&8mOh^(>3IiT?V!q4$@7WlW%r>9`fI%OIO1mEGa+02A%{F;5vC@ z%lN66KNJYxG>P<4GUKjmEs^u9*|C^;iqLhmNz0>!?@FqJo}>Uny;lkCY&6+C8SwHui&@}l@YqbgJJHu6bpTF36PhmN!U9Rdj0 zJHo@HR-tj%LhjrquXqok;Fd&BAf`7LH)8RH`m*p89r|3iLR%~}=v+2|b#i62p4|I< zHgB(8_)9CKM25S3O594zdWl$J~%pc@cVaR_&3;k1Oe6@xqtEpe_C^#o>Tpn5M4IUUN|kE!3&Vz%?;&b zWNDvhuX2LHoVO|&Z?mgK%p{e_lpDUByf}mMKGGq1BQNSJ-&^E0zM!D2GB4@ojS|XW zFV0xW%m{mJJsKH*H=2L;>gyCf5BwG}X_a_QrPMu?SKf}sYyiBsSe7Sx_*0A0%*$b! z#_7d{8$ajP?iJ7S7&99@$Ddl6wEfgEK|M!X5X*p7NR6{LGxHHRPOF2L!mw&HR;Fpp zoY6Pq7g(xHOf-A|p0zZyUalvaI*VzDfu)p0K410J>eCDNjN2<)y`_u!Crm-6iuPT} zY!n+5rTS7{J?*H(svo(!R5gE+X2l5=yw3cP~XHMYfRs(PK3Wx(Q&5mUY{JxERQYm0cd2?L6o+Ywz|_ zt7GC;8!MJI<+M>#UF>Gns(bsn<)Qfg;Q931nbF((XGdO$?#J2HAdtikJ%iX2l0vjY9Op}ii|IY3Lvs1&?Ez2F?|ta45i9LHt);Y5tmN%Hb~~c{F$}%NGtNb6Z|YeHq=2%`P2e>@Fxa z?y6;0Yho~O{5LctyJpBLxF3SD z*_+VkdRBKB*BmWFSh>$WKbTQbJgcv=JZ3NwPnB79Il6g={@my5P>AGXr!Nnlcu*Xl zvjLG23MX#S+W<5*+?05){=v@v&3HXfe)9#*$CrQ6cid?u5XcT`M1$sdcaDd$j_x=j z|KE`x`3XQjiIwUa^+RQ|RC7)jEl}N1MKM_8C>zH7NBPRj{e@^YLSk6mvEkto8fY7B?Hna+gK8v>7mX3ozK5+6K$ z{(O`A{VV+N4BxjwX;=*6QBxk9qP2Td9=OZm`1F1Fx8x5pww}p76QNhge)0Ud#KEbF zVGOheG3QV-{$!ukQ9xjx&GCxI#;OV0p#CP&Etn=Ep-z2=tE**{rol^IzcI$Tc2(bs z=$6%J-J7{@yBQCnj2zGtZt;y~{-d?xdE~xTR+F@|54-yUipGE+WZ+y+tl06T69Lza zjv;G=@y6TvF*hP5?HZ$)QJabw$KnpDdmL&y-%?e_CzUS#cqpArgV?|KV?}P&cICnD zttxkIx4fp(TJP01BJSMgsiVs`ZbUz1u3bw14&bx+F}E}=?*ldH;`XcWdd9u5H(XYM2w=vig2BUE_R<{UW5r#XMAOD_ux@QS%sN~?&hwnFnP4jL;Vwa zf`AUoVxkY0jsf*H8z;17JDoSi4hD)cY#UJllcg!b=V6sH1KTgZ8L)dxIr$Dco#vmX za9LLnGVBF)xfkiwJai_5_xFsBJyT6SS)4I8AK>KQD{#>%R-cVhTci}aFr8A5+u0)) zYKg*I8WN{bfF4WFCtuJ+rJ1biKQJG(%oN*iAWJ zeJ+XT4sR%S>OB^VlwhM$mP7GRH{Q!f84p(-!*|Ma!eX9Zv@VwPFjNuv>Vrb5tXCX) zK+iU6-K%dyDEK|!u8r>d4Si{LBcSc+WL@rxA1ZfiVLx<04VM`Vy06!bjaJFPEL5}+ zc0V)DQj~RB*sXUS<&T$yXd#GCMG0_xwUfK5qj|>sy6hFF8E|ergxn2G@A-y zyFh{Ax>l`{y|wDJ({kU~dJf}->Ged_S8@fE<+TgUS`QgjUgFy8_`ph}?g|fBRVkp3 znm!xO9b=#8Mjx8AuuCK#sp}1~<7mKMi7xlT>Xm)=eSGAE?z7AIOgij;8^LPQ_P8Ey z*mzQ;ZD~oTfjX*OM|Q+*b5yWfkc^J@wupHiRdC_i-+&|rC}+B! zCujTbuaoCcEp1GWiK7_qBkGtIST$HWRYf-M=u}G4lX7Q;P4c^Jj zPeP+~hR84I^-tE2ujg3aEwCLZ$*Hi}UUSuz${pB@RI&D0((Tqe66hTTyOU3g8rGhZ z3nJiAcvFm-VTXO$jANV6op}kGbhcWrs#kg@t9YNp^}v0u@p{}lTh8-DBV#Y;QSR)t zay(EjQ0mqxigo0MSdFFB9*nPBb`52i3nmV+MkMmsN`S`%cNrMdhC5Y0C?C0T7)%S@ z(@wfNP`u{!*kpYkk z(^+giA8%t$N0TJZWr&9h^=-!YiE8WaD#NvKy0Fx*M$93S9xq+!D?X@4lx3*8r%l8$1_vOs}r~uX3t7Sbu6WBTQH5Jeku%i4x zc!$%d&~yKk%DTcLckp{WM;rf69FmRUR*iQTb^ThaWNemxlCbk|Wfw+~*t4&gAwZePc5Zs}acOxa5) z4e`n6d{V95_AY~NnO(tLcXDTTw832~6%y|n&q|}7lr9r;3*7BX(gJ3P8{=bw6Xf7v z9#)`^d&?9}&yF-TDnEGRje4-M>ei@$iaS5rd@!Q{KtZwMHW0wIlsn%D*7?sNyN@fE zH=`1`7$iWC(-4I$aZ8j+VV7m(nA=U+(W!AwN?`5OUJ<*#PGdYpKR*DE@dv)wP*zu7 z5A@p;?;X5&?%mPj<^GlX62sjKjf~9LP3C=BF*mi3R&>4Dt^4fg6|%yoPNL|-vNd1} zV@LAsL(-ja2!{Zq-TdyXb3`wNRVc|N5}JQr#}C{tWKPnx6GIx%o6hRHgFItNjjCv7 zH@KcRpW8~s+SqQrR<)hFLiW{21JSD;P=B2WPdDAN8g8joIc1Kn^uM$Ky010!o(jQ2 zGtZBey@gS^d8~7t@f?Uc<$^3iAK3c?bx#QssqFU9QwHSyk7ovL8sK9dd{$S0{U8<4T}I?a_|3mMY_3oRiG# zRG8x;>9RcX9Hh7R+E5c%t@$F8UsR5xZtf6WU#XX5qI02km4wOnP#xj^hhgCv51+B3 z5)i~r?PlK1?Yxj^r)ZEiYd4eBx6}5{T`CTy`geu=MB9# zw*{rf$4guyvU2+tZP3Qr-UA36!2GQ8nn8Z*?*oUC#6${q-IDuRy z9p0`D4}k@dlvqc}pilHx8$XIVM#i`_z0zB7?~9(NoR(mwvvQ#?rmAs#efZ82otA~< zpqi(^Sji|xd3vDiXB?}Z+?xqzUDm2GXa34ijg2jSlQ{^zcEP(zNvX!A>D{x*tP@=0 zu8vw7h*d3i$-Ku{nPFqnfp)DESz5hTqYan&a8A5>#5EF@SF;Pr@L{l|lj_=n47elC+@8-blsy7y-HG{ zE{1%QX@opmV*NOQFofe=yl8$NmS)jKT*@-2t*P>AWq?Y;nvX;0H&pg_Ub^+Tx~Yt4 z)o5WNd+d=wr8PBZO0plkx5f(tZp2A0mwv&va5W4lV@y?hHu1$`xV*L-j^0~V@=h~*Ru@~S&lJkOSh{opDFOrPEV>uiIX?FN7^xb$Utnl|V}<_4_tK+Ax62TL(@JN}XP9W` zzQgeRU(p_kiFOxmNRprjG2kq8t-D`5e@nZ#J32p?&tYPzw^t$r@?BMz4#y1$3A4ge zZ$57Y;q$)WnuVD-OQ;5oM~!F5e!3g| z&CU1z@6y88R~|>IrIF3>RRNVAC^FOsKVtuaUv$6VSHgeb7iwr@s-BL3u4ky_ajMF> zc%9%f;29B5Lw6!Q%yIaChEFtok-bzpE9X zh$KEoYlgZ?al+Krr)qXOQDt`94C}_7(=dUf+Z;0RYl}l6j0WVYQsOM&GWQD%iS20>NAJqz^XSBa3uPr2#4421yJjbKWq5t$C>tk-)92u;ag&26;|_O5VBQjNS9^V^K5M1 zqH3)5S`P2T>F}QG=5&w8*W>vPUbxdBiTsx}ND)iP$;_qBSJV_jpK_S_SE&ZTRI^0r zy;0bh11Mx2tGpdfzR<&L!~~uuZsd$-YHH@I%+u7%j#v6Hg8h6yyo*$_GxnB<$q9J` zC-5Pmm&3yGgg;CvPsJn8Cp~UNW}XYAN9%IhM%JC|1iLIUF>y-O?%m1TG%0Q<(fj`O zjS1q80M}1qeLt~G!y{)5JQ4uL=(|O48x`qp zMuS~WL8-dzS8iO3vL`U@1Wh)$ak|S^GN21aZ?oNiv?nd~mDYGFZ3})27fJ@LzRsR= z0T$qe8UePj!^BsKQCY_2mrPJ!=pa@a^0P78^F6{n7KWqsTu0{@?Eiyg{uSFV2}+30 zLP!l2u3sR4aF1Ozee&xEbeNw)M#}r6{<@>>ExVi+pLRaZ@y^)r2BquT z1WhK`57J#_Jt=;70Gb~QCxM)8AnqIeD7m6hv$NSqBb_+lc$H0Z;p6Q)cb1gYJD=wW zNERJCyurAEGR}lHyd7AYV-R0u64`Vcj@+RtjaOxf zS+su8LzDPY`dxST0w7yRpVX)Y7-H3nRiz?LiAh&xXTeRP%;?(#^ZuOPX2Tr)XQ0k0 zQ0PzFi<8IB-b-vvcF-twNItPYVue{jV?rv@Oum1<*(8I{&s1@K?6-3mZm&_36JjZO zEf}{&it+K}g-YknOMQ9ItOHTw4AYOQ@0N2E!}bg7FKJ(aK;_(HH%?L0&~p8$dB)+6 z6MsfHOQB}{Q+Cs!vt;7&bQfux(W2Z2?E0~v^_IEZDu}~`q3y01a(3^&d#Bm1Qw-+i zA3zywq@3fFKeHn-k4Nq-DJ<-@faS$w0wQ~STv~Pg>{!R&)F*JDyDlDxx>o$meFne9 z*`t;xTP;YIMlMaSZTcv;=Q?YA?MkeIuef-YzrymfIv4af*opwsw&!@)plnhUJe))1 z5y_(5H#WT4e9G$f6l_dcxfo4Boxd1g-dC$F3oAS#;{qJaXsvbC$3$L9517X=w~4+r zR+Ifq*s$nJj}kteJ6a$ANwtK}VThQuSCH4OGs`G#ug7AK8L_z*l0sr+^x{FLL zjSO4R(0Iq#6|M*HTaPd3(UIV_{sA}a0wEXlTp#i4ib>t#aSXV{h8+KK$gjnGs3cN^ zygJCz8A-~a6%8pf8Q_(9ts1mr@PnpY5;kwAbeZ2YXs_j*X z>GwFDp<;C-*L#kOtP#<=Hb1(-;zLmemDjSYmaG6HIvQIExVBYZZa6w3IJ!fx_P9}HirkBBa?l?1bR$`jo!rL`J9Fmd!}(z@-70Z* zOIugUOp$nFhsDE8k=IH4H3u`>CbC3H)}6tJwJehzBVfRP9IyjIJV1KfXlG!FJY#j> zNCdoc7H@BFlNWO7-x8cPSM>Q+0f?tkBq~hga{h?(0PlVD(nc~u0dB%k|GgUq?Q)rU z09jkR8eBhtTII=BsaMgUf-5eO?BOKL=(F-wv{r6;=V2M@PUa>+)u|%F~>4kfzh2<@kD#fFe?7TQ_ znM8!w5&S&s$9rR9Q*ODRx;nd)5tP!JE`#0bXB*u2#|cQe9Wu`LUv+H`d}vuO(lomV#$OG^F0=Ph>P>3S=}i!JnnYgcXxlo zwV0TUEc5N%h)M>~;x%oUC!1|#SAHs|by1;um8d|K#prdnZGSCyzD~&2RI=rRuideg zXmZ|H=yl;NZ2{}P$8MP-Z1ogaO%jLN?IZYq#rQu^bd&l8&7a7&8K1TZC7Q!>O66~O<%R)Z>c}>(Oi+%NKr?z z%KVnoNScm9<=VK*F}m{uGF!6h!kC-w)CDzE&y>u^DgZVEx&)S~3Rz=&V%A2>mkldP z0BUHz7?>3qEomabFL0qA018SfU|yW})LU>m`>xvIyehlvnFEYjjH-MK_vem$^drDE0 zAIdST`1U`J0m_{UOV5~5Pt7P0%v(9Fg;s!AG@ZY5G84dwPgqE3m^+Eo5pCE?<;9Hrt@ zragrII<-XV=cC|TQm#JUnMQ1+!X_m;fk*5&;n>zjMp^x*T_ z$Zv{tp(TeN!%popXzK)Vu$Z9mDECMRsLn9N?RwHt)#vZ#nY4;8+Ytf+!D}BNTWE3* zqwfc#8nI)bH~>2m4r~QKMSIt0zWBk0dqL0CwA*X`BU-Qg*eLJH?4(m^ZjOYTLFPspq3h@i^0)~Z?#=G-l((J}Z zSnHlWHn41TuJT?P;8*;k1T3Net9;_rl~BA9yN@jH+h zdSqr#O9F47ZIxzSm13dFS8&hT{(*}(|Llw5l~?gv3b-CQ(qY$`VqPjO8ShmuYg{3k zAQh?(>zdRXlqtc!6xNIVK1M*&z5iyD1rtLS!eCoU0xSg=I?9!oHJ+aCb(n5Xtr)&a z{GF~mH&J*^pLIIFqbI&fO$9cUrww({Pk!Q^hl7ioxSX&N2R$nBMm@iBvN=A-dg3T? zmuEFA_Wp?*o?G#nfC^PN8INtpQfZIN{R%kL%=6fQ^d&iGNucMJ4rzI59_8+|KEd9w z)jH&)Usf!8*hjzR3F~5vdDKgByRRGs{m$tOW!E84KG6ILq}YMVuhT4#)r3TUt1agK zwx_OZ=H&);xQ&HujWrt3vt>6R^MY)^#MXt_qc;~FdsK>E&+D;)40K!QgXC=0P8 zRMtDjT&FMddCz=0t7W{P=Nw^PqIg>Pyq-Cct7Oc07rDw~^tpN7{XjMP)Zom>Z8>|w z#0%hZHP|w%st?S+4|whB54H_54jav{pl;)D%K?*6Ca~d>YqbTy6u?L8c7~8uWxJzZ zDOA`!V|3Jg{n;td1l6F+X&O0tRC>L<(n>`)fs-3qv)`B9*_ZaM-1p#Z4FSBw1LUZf z6-gWn4_Xfd)vj~97X)FirCfQDW%lv!-tkr?)|X$HP7S*Us*ym8_1d!I&Cf4{C6O0s z;HwWq$(U$^gvSM29ByHnA-U&veCW>2v3yMBZus&h*iSM>zM7!`4;YJmmS@kTd5`?; zV<#KHW9n5x?t%Cy(MvResD7VK=&+QlwTiIj#@U)xVvbMoFH&`FZDMuFE5CsX!mB(P>bia=^YUX#hO6~%fN|tQI7)+E+ty;8HHo8lO_D2#T+?d)2|ncJ zwQErwgBjQ>Iqek^E!pA`&rOO!DrzsRRS5*ugNyavr%QbG0JmiT zJD)3R?hO?onFw;f4|lf`LyDAV4VMQePlDN{8J{>Eymwk9Ivq9L1y`aq)Ku3%91`bB z{r_s9={7~{6*C%#7|1|I9&vo*{gnkhpZh{eOmmmFqr_{xShXw%2oR9=wKM3LWa>ll zNDs4N{hk7iDwq8Y!F*&^eFIGqgZ$wv-UHpUSX#%nj}C`B%7?q(ktX`hA4&T=C*o&m z9T!XmPTasY!H^fI-IlAy^MlVX&NT~@81GjhSDz_5PYubyN-z4}7xsQ|DtweRjz+vv;B9w^-YKw4}5RVi6czm(@y-NPQiSm^<+6V$%? zXsJizsOQMl&YDct94dps*fQf+-vn$MsQ{G9Xm$rJhjIlua3O_5Vn(M+#9XhBjFsLhDg>HSFL#Nqmdlr@eB+ixRnUsN>>=(6u!LK+lBA z85}UvZk2?9M6{!Ep3E%`6|Nd3~3%Mg+lC7 zy<6sg{LIu)WFQo_9V&0CcJJb>&K>G0Fm|j!5jn;sK)0sboOQ*4b<6GJ;f&68=u_k2 z6zndnsjh^9=tZy}TC-~7Yb22+YQMrg3`4b=#PvDJDA5g&FxQL6!5N(N-JdS8;^>UkXbYEo` zBc?aTjmUi4or*`1=_BvQkahMjTOx{o$SwbHnJ$tq$`a9C%Lws2J(4ybD+m^9w}1`j zD=RAm;&hHWk{Hd$_PEego?v0C5+{~l&=cE~9L$*~xtfP`n@6%{dL1@LWH!c~o^1{^ z)BwMZ!2+n|uyrJ9Ir!!?arnimzPfgqCaO&a&Tnlp2*VK^0qsP`qTI!AV zfm7t`u0wsJk>BTBWB4T?BfTGM&g(Fztnn5X^*`DF2eg@bwJ4 zHwN(2D+z|}GUCH2erut*+KFvt`u#4jn;z+3b{Eeh(Aq}{7gMd3M;fFF@>Qz>`T=J; zeRM<92)G=MN&e~@5F_|CHiGUs!px_6D^YBg-PG#!-2BsKt8$2sIpPsoc`s*FZ^5q%|yUI2$1I|k8`>_;k*mj7ONZ7}xz8;-?9CxZSTH_2KWhshz zGu)-i>U?LLHTKXCkvi<2w zi`7ti^B$Pr8VdS@v?#Bq34paFUx6fU9ISV2G#1py!86|G06Mo^K+<9#iN`qX>PF1m zc&91;>ICp#woVp0jjgajG7gyx7VQ$W->f9_b{Q}QWJBmwEZaH;+qOw35m}ZyTX+Ft z4_-1Bt*t#!qbXee1CeS47k*>jGTL z>19K2Re_s0`Sv;OA9T$@_|p+TyTij+;kl~*#kuBepZV_kV~x%JYzgKX2cwARhYpe- zG7f2ZmBaBuf{Ol#aLr_4v6h#`P8&pEN zq-#J4MY_AYyI~{+1XM)2OS&6|_soFG^W2~7z3Z;K-oM_z9GUOToU_l~pB-n%QeuNN z$pCvurB$rE?h76Q%Of0tTR*IOI_VnCEKs$%q;(dP`in*C zl=9C@#Pt{OFQsU|>ov-a4~NbYQF*uS-g{#l3dRNHI#$dWDwo(N_1NJB8jq%CbikwV zM=A{S7W+!1o%t<>GJO$tS$$q@qOx9VAlHwOTcfqiZwj)g;W4%_G*v)rn-40`?T zeFmEeAqphC_L~F%jiMY~#*R1PnNY2wRIBMXJ8dGLbCV0)kKy|Z*^HWdAswqpSeI?) zzN>)XR%=^B#8wK^!0GL7m2>m=0GZt$HwCMs?LoQ-ZcEpGhj^Q=%Q6)*XgS$QTLtNBx-2FjMPqHOOGP~tWz6+W%TMP~6HNw`)^m%UM=9cp+U?uJ3RNgs z*m8o!V$<(ss%B_#adBUiUDg})zFCx0F<7+%1w##<88&>UOZ^JM%AfKBg4q0gm!d>t zRC+$|Z?vzCCXdc06>k`{49!R`G*yn&93^8-n+_GLgD&1CJ@R& zEA#3CR&a<}uoW{$@1%?}GHoq<_eWe~ChuCW?64R$QZ7YLuZTRcp0|0h=QnTAB=^*6 zd$T|xEPPpu-%-TWu1rGzNsqy7-f0pQyy|6DD!Wj~J-iHN(R3xcO43|n>{-cRUS`!} zXRjRJa7g|@hx$?*@u-lGPO10H9E3|$+j=7s99#L%4FETrVmb~y0 z-@)tz)zVf?m4vmnOD0@L-#J~qND?P2ZaSm!`aQlKHhQr-iKX`>`*$m2qm{e4S>+l+ z?tu&`k0>(qx5&VpAR{W6mqVtyO&pj`yWqkQp)oTXCP81PDV8Z$3}^f#KlTMl zQ-$3@thIhbpnHl$MxsIwP&92gp3<*AP6@zkX~B4VJ55IotQm&~ZPm(;WGJPV4Z2nK zK*zgJu5r#G0$m!xE=)%Z8L}ASuGJOEW^jU(M_&~uR8jb>=wyoQ^2Tt^~kOZ^mv?}#2M{wHyNrH684MBIN}AneWr5Y9DSDqWhfw~G&+woL_cb1r|3e!Cczw&1+JTL7x^<-wQ~ikmFD{3nRdPH?L>*Ji(*OpSiTKRtn^d6Q23$R+ zUE zEF^c|m{r&u*HYq$FwLn>CVU zQ2U(_=OWhYCp}WV3D!CCn58hm!KKWSjC!N({S>z}P@7=BS2Ot<<61(zy%`vdGib3h zqK+ww#~8t)^Wpv%<2>)S<+hM4+(7QW=VnSh3ALMA?WLwA^R>gZ&66uc4wFwcZSPu0 zyoOniWSa*HxQsjs$LqSE@nf^@c;tFXlzHWAeJY{-O>3cI%pL|{$hBMdtnhB_NRZ60 zI7f2A;Zo^ql#gmcpR4H&<~xA2Ej>(iCOx3{)X{;GIB`3kj)5Bf^`?2_^&NKxl@)J- zPMRj~sUQMNov=-PS;M^HS_e(UkiaLtaiJ76Qigdo!38ySzpDsp()L&Mzj= zj-jq#u%|HPz1SPVX?6IAj}Zm3NCieVcL5RG2tv^+5lfXKrZ){OhP(BFIZ+}p9!p!R z%lkbWCC40BEr|uzs*30O6b}mQKq5w|JVn-Ho9#oijM4HSxV;gImi(trI7L)3Hk1_q zVD~>PP8IJ4TkEgksO@z)V7vm^-oBaWf@EtCTrx;>dH0^u(vO4Hcf9tvbO8Zf*23P> zd51?wl#iix=Tk5GPocoqGTs|rQ-*0kI0LG5ykntX zqokm_3r&|M4VWX?japYCKu2R|G3!;rg4d{i(7}J_N;J7T;oL}Ns5rTnl|ZrntY4v3 z7kQSo5gN3mQ;p6grY<|=PVmZOyBaf%CGisY&VoLd^SbHM)}k^?+ZT1p8_6(W?jq&&WCYB!R*u(Yax6C#zCIMxDA*#{B)Y zl&fBpg7z0uY4SWfAPy_DP0E>Fvu%)YSg5sa%esG%@LVQA#_6a;zFqf|H}ljtms+6Z zU;pG5g!4N*aOqHhl*{g*tZxKdQ;Epy{T#N~AM5@>dFkYL{=;2b^K~+a(PujyIph-> z00<#wGZ)PVW4guDXj-iplmm&(7tevLJ~M1L&{MHrh81-gw;bfavYCu1XDt`qTAB`O z!yA^js$R&D%SphOU^+=yi(Sk0!@6>M*I}P}8F4Xw^S;UhBtnv{op1iEl(2M|^{~X4 zP~odvNovav(wLOjCXt=Q6+)4=C#bo$(`^ga;D`U@ zqgyvX;c^*IT`vV|pQE_Zyj3_KgN5Q3Qz8ZqL2U1vOv=Qdln)s-L@iOoSzl$ALNwxbMezzx zt1e`B_1HNKEvwXE%a^oI>Ral)W4A^OoZHER{x=8q(0c^@Elg`>@^R)zLx(*-2Ycd> z>hl~s@0;JuGAv!WWtE}QS3zsN4lcqwzJLCT(!O4Ww-ro2h|Maq{5C3P$Lt}9<$$910S{-@h{fz z{xox^s${_!4T=b2fUA3f#^86lY$ z2kk_Sta(7WZ{^tM3UL;bAM|S*;?&nLto+C1emqcaf6uI0Lq5x_9`vmVdoFDe4cZl5 z1+qKL6=bNT$w}*uQ{_o1C@4~#>RJaD=sz8Nb@-t(!9q%8L+pR&c*&Xfr8bA?^MZ!a zj}&#S1X*Ru@=GhTX-hJP)~$+@-xzz5(tiVVPTXk)0jgt8C*jD_`Gk%aVV65n9@G%B z>%Bhm$YC-0M!Yms9q}?*WZccZA}CEte1rX~ChxZlC)vGZ8MK@Cts@r&%=)r(QS+t( ztaFIkqo`gUuls?@=~e=9#rBUvPc}(hKz2)t`5Qu+JZq~6R+o(0hLzeFLqrCPe4O;5 zy%@D*lwN7nD#+|g1{OQITEWGC#o_H_$uKyqFvYv#N5HYzAU1?2b8#we zR%iXNM5Q42j-gn>Av1SnpI`uWV1Hp8Q)x5X^%W6f04DDyrLvHW zEGh?p05`^#nWS{V57%~1@F)JSXzJK=@Zc?UzbBTweZ)AtOee}6_6D^m)Ckl9#00Qk z5(vP3tXVKv$O@v>E?iU_3XT*_SknQQC9_)eubYG9f?<~fA7wI|<&iMC2d*sR8{4>7 z##Ss2GGp6&O~h;)g}A`<$;I7eJY6bKIJ(c zdr-bfTJ`i6xEEWF?oW1^6=vFT$3_a)2O5}Dp`oP#Gh|Wa&VPw8|KT07WdNO%CM_W+ zVqVS&q*#ZANkkCr6w^z*=T!Q&UV;DDvexkSE%I1CmPW?I0!sx)pKVNm2`(&^nue|6 z{5k3u^-y6PrlTRwNweY}ul2Phj@ixKe8eHPBkLXO8*2i^+XEaK)Oj_L98$)b71l!N z(rO?A4)oQx(&u=s2j4anteQ7VUVRKpd09lLJBtu?oZGjjnxgxgMn|{qT12D69wS$z zaR;%zZXrnDeP*%$e1`=1r(6>RwhtsTuAbarRe`N46OT}WEk^0SsXf*7P-aXZGco-W zzy^w7uz!!>JJ2+9U@M098MqMY48MiQC?ueu21AL2_*#Poxi4lhfd<5Z)=o6NlII7_maD)(0;Z?cVJXDw_@b&~rSDg-Yovqr`c zaat!FI&73~52TTX1t9cth74L$g%i`sEmtXIr!}_&%t7d_ru}O*%$PGclVy$+;S;lR z5s1F7xor@*ATy1;wC{$L9|&qKV!JlF-awx9a(~hxSXuBJz8O2DdTUUq@OcZ$r7Xc% zf@HC#Zwe2zq%oj7N4o;b72~Qo(#&O5Kr#l<~j9CKJKV`VXHMK3alYmXGgn(n$oX_s^Uu?efR#?r(epv2RVM&z+9grd{33N6(-&m}Fw#$jeLbWlKRjr$u zS*rSGy6M>J&*bxAZj@RozjGOKxWSyJJ@VePm|f06$euk27ECwsUDt>pqEt3#Vo;{S zQNL&+ty9hae$-A|6GLxKrrkY7>$&gM9?6%brnjA+kt0Y8UBNVqTO5d1ueFc_EwNJ7 z<;LHz$jmHpsAoaHo$Tk7?M{#9H|rZ}EZ7{8Inj@AP3| zK#D~k*7i3YwXBMp*AWks>0_sp81+b%8WTF-rg~pHaa~yAiV_|>NGW@(4iJkm2HDO~@&KOThUy+Qv+%NseKE z^%TfavzX7r282W7a@Y%^dc7`M+`cqtGW}*JQs^jAz<~zAC|Mt!@ZgC~|406V z5RfkR@2^>IAfGTrWYaIP1{d!?fpF?~a3uZmk9NRg)^R!ydmG<$VBV29I-yJXld-Bd zE!s`JRVlXPj^9endu-*oZThLXEGCNCvY%Ta)fRq}VY;o3qhucpj9@}R zft#<7-9|2R@`72MQFMhiHhkF{+GPEzw{Q(;)C#ME*eQGdEa!O; zLI0-rU2SRhTOL91%oe@!R{!g=@l)e6HKgM8R;6Rjk^`6Ja^Y)3d0C6u&nDJO%_JDw z?PZ?Dy{VU065T_%kVhDZ03cBZ_)R_pQ~!fiPyY)T9iV0nS5gb|0e*zu@TBR2s)Gc@ z-!>s2%vB(^x1L*zQvl6@FHC>p+rTK05v?d2(qM$M&rdS%9TyiTz9jtkaciG))}y6P z)f7kl44F0Kuw0HiMxbc3zDkJtPNKCtd!u1}2(u1km-O1+ zILgQPX8DtGsjfRk^3D>GVhBNO7d=irXSp`bF{=giV$X)KU&`VnK~)$ZwPRp!|9Z`(O}wH|eAL!MeF+U3mODs}aXHS+02;xP z9P-RbbwQ_WV~q z{UyhxRqv2P!;aQ{`TClO*j63ucVFU$a_7Mp^C&Q}RT zI5DNTg??QqlwAN~jh*y_e*B}Z-`(yDC+uW$t=#%3R3f%c3cEg2-LU6!6*9m8XPsqw zhxIWt#)UOmoMKqDH!wSbwJ}SY1VbXA#V=08-A4SClNVR0ONs3E@u+#)JZLdJTJH1& zU0Nx-M|CoZWq_$JwI!*=Pp2cb#^Uh1a)sqit+SZB`^J>B)V!RNW}&u(UeVHN}|u)Av6ye>^tOwD(Q~VeA2d!5dTQ zJOKib;6D4U#`5V9dKVx4jDA8n|KhydgY!R+XamB99Vz9AR~4Q>>a+)!nkxyR`*I)bspq9nMC`VVEeYB-nO z`TaqcO%biO>%byLe^!NVd9pAqdYBW-0?Mhj{13o93L;I5svD0@k;a^(8c?Tx((xZF zrNJz=Yi(wypMbpt`{ENOS@E#V=NfqnY-7X`3MOJ2jqJTK>bDe0OpI+Fz!0d@mf1U! zK{&wgekc;296wC)e7W>?NJL`XUqA$W*CPZiss1OlG{St#cOfj!WlzYN$4QDwZC`PD zs45RnJdCsfh4**5~%Lh z0%K~jtAN=Dbp2xPz<2tktxOTLlPtRGplO@mZ!`1$)KB`&ER@v%KQT=uu>ZdCa-j0_ zdG2RmpPUc|AhYuA|Bh|?`$x$9SHXU0s_)%7#pM5h(_>Ny8}WNG)5(^JfjH{E`|sF@ zf4)nw9@{J~dbPRu&kz6m6_f|ucUQ>q5Oa5PB%JKc4yY zxiN9@vrc-Y|NmeBLH>6R#{c?qP#j2D0hhMxtIv{oopGr^&&_qVaee*2;tNa&l^$b! zc9y2~+##h7mWwD}xEku=5#RU9*(h?zqMfA*(iRe_2d5RZI^{6_1ry>hp8SRCR5n*J z0ps%DlT@Jzsz;c+L?`C%Z+I0XD?t0;7?3aVy#Vds3Vd%XJBe!X*I*22or zKG??*Jt_ayt(yhh za{RZQBFUb`T_u_W@tWj*ZAK&)YcK=dv5-b9YUK|~>mp6ikt+sLXM&Ib;m_xD+tP8^ zY3>sB{LA&dAqVr?Y2B&6T^!@mlW=QZj3_$rOWuQC=7xV&Tm3fCjWE;it`6sW+Fwyx zIv-8V`Q@(CdFUn9kc;OL+lCP!E(q!wsbctXAyV9y9U@3&0p6$q)Ei!i@GrT!_HpLz zW}?ZzHvJMCT%;&3&6_P~l(Xy4$zq6!fQGiQg2Kqw4gUrZ#DQojl5Ktzs&Eo`$P@Qb zkOx$(=zcxf-v3R4SP zxV}Y%R`2FwKFbOKZpH=D`O`OkF|LRTs&Iw0Le;TG#nnv75z7b}@47n8Z;>J=lJJLO ze_nyZU||ts8ZFO@=`w+;Lop#mr+MwG@c?#lUUUZwfz@1oNBjFTeF)y8K>lv~F)x!X>Xk zeCx>XpIQmUU;$|vv_Db60&WSWVxIoO-DISCQAk3>s3!gm7qBR_4;FEbN7mtwc{Hff4~x6NsNdSQo(g{b6?R-&yPtX6BTd3ba9m;`yW14?&qNHkF?vaJA(4W5X>-z%Zq0g3sd{}%b%g^6r`HM)7-9t%o1e@)9 zDemEMa=2H>A)o307K{pg#^1O_V*X!%r~@H?>}{OYb~#@-{z27W%K?bmi}qn%nFZ8@ zXujJdMS^b{0(`%}zFAuYAX%X4;+500!39RD8R|!B!4l!UD;y}V(vgiq{(Kc^gbU8K zpLSBjP28XSUn=4^^>1Cf+osnF*rina)rFI9wub0lvJC^Lwi1bB|K^lYYAFzo%uE|C z>BRou9`^7}VVHwn!HLR6#;#H-;IxUdReKaZ-0bfL+E#&~qbW z+b0`!VNh`Q35EF8+FP40a+$uj6;%;1K`0?j7 ze3FsX@r>tD8^$MBC0YRYxE{N5cvx2SwM{_%di>=MGyq4m>Dr#jI?M|!k zO;3(IynT;95c!W+yOq#q{NmJ*#RY}{IC3q!!3fGmGI9Sh&=AKjiKOh^|82?wDNIZC z?mQEg&_cM7D~uQax49P(Dq}A3Ec5=>?f=Ud06aB=%Abs9IGG)&(u2EeN zGPfS_hI;zlo?Z*01(Rh1(@acgBfNI^_C(jg<$XlGrVJW&7{tYeqijOW$}d(}>}NL( zE`0M{`muAO`V9OkhL^~DZ8&Z)qu|3pv{%O+|I8?`^*+%8mra!kHj(xIe^B(-s}Ia( zhmE3p)4Qe?Q!aJQ`uRFT01S)^$)Y& zKm-+5BvOHPuu3b(f{$EsN_Tg;Hu;nsVdU`PpI3N3s`?CP8s6P_({x_DmFkVAm>cX} zLEo!?_#WBkfdvE5DF4yFblGovQ~CmEtSzP6sXiZ?%3W$a!Ah=mqQCBlhl!m$WhMpI zVks4T#vcHt5inmi7Q=Ts0PIwX^D-U=4Am0kt~d}82S0R^K^J)saar5hu~cN$-2zF4 ztw}Tip!n)t`gTu(HM$h25s^EWoar|eCTW?!dMgLMm;SMZ(eWIAIO_2fenOdtVp z*;)-5fIkH_M7VJ~G{S5M2O$%-$-d%4*xp~P;qsnXBdM39BD4}T9crFEAFFzfvqhFa zfXOLo7C+h9lJIt5YbO;Sz785SX(x-WXMk&|`JKZM6FH(Wb3Q9_ZMwIq>*^=vI z@pJXK7%%XSp|1X5W`JzgbQi0h&h-2x`+kk#0WmW(`Yc1x?1PGRmhr1*-m@(sI+^nL z26o0gY$-fizRJ>TAdYuA&xbDGeB&~g^`TA8;S;>})+j1X)++eVg2_U=_Oby(MD2?h zKJ)zRqwD{2G=5p|D_4I0F!Unkc9dKAoNyF1(UT#wqR^A;C+*LvL1MP{LfR>G@kN;$ z6DUFgcg-iC`qxD?lCrkm0A5WaFk6lgc;NfQpsq3KlSqXBd9AC7 zL8j_~s?)<3zguKFBhIWpFu^>y;L@1=w!FHdgb+}6Cp6bxl+03tYa> z7H2*P+d%>+F~Vxv^%|`{5JUjySp4+?ld6%|>FV!#mK#sJ${#%BO(}Vb6r`Vy()=bZ zGFoy)V;C#6H*C6W`F`jV{)0?H7Z8SI(4u_&YxyTYsuP9UHPmRxkn1RyVaap01LO=a=gL!kvI+=zX0g}ol(W2O(uc-rzcc!C&HiA`&E-NB z#NmMQtH2+rJbw{sUP}8;eocDvt^BbfNNNi#y&cJ(OSPoRQBc8cGF(d$lF7%zVe}Ly zL#Z~pqtNBZNrRBx`|@J#<_ji7N3x|ljLkVpd3wbUR$Kj8kSuI#V|A(wAvcoTp<6Yc zZGN7<;US<+puf+5Mv`5G9~%Ht!S|#2$GQF6z2*wKM#6+<=6>A)4xv#go^-sQ3FW5$fo!fsM3i`1&+AoD<^(G6){7}#V z3E=-Yx<7<}iN#3-;RkKl9BszpL2?p@)RmjyR;zF&IP|tVcH`Xs+wxD{aa1&oH{@b~ zAc%$9p9n%eIWY8e&S>?shMqZIoimTb?OS{S5_2-5AV=Ihhx$Ptw#%-P$&ekHD;+AO zrF~1)^`;*Y;sMXs$L500FRf$24AeDaAZqmpgjES$??Ms!mtbm&6KIgFexqEyVCUE1yirPFgsJK77|H7fnpcACLD z*lEq&ojMG?t)IEXOIT8S?dc(oO9NJ|k@qd5XK&Z`wp2Vn$s9R@2uS+{_5>{&6T%Ft zO+JSgHQu3E{GOWuden8_v1%&AP2%MN*LAfFt_vr$G-hW`*Nq?e4)|t7U|2OV+z0>E+gIc7%D{i|Qamo5kTs z^+fvcMUhAl_g0E-&%9I_30dn@6O>IVEG_;X8Y1z4MmpxlLzKC1Dfef{ZsPqG4X7d} zfFQ1W&E~V6>KQ%pF^EC}OKw|1o4wtJo#JDK<5JUs%&0@BZMSX919qQe{UmPdS%k9s zme4NvyOOWaaK~nSFaO4 z!DgF{b&>SDtZBC_%9swr4}B*Fm1O^R9@lgd5ofMje4X#7+nX6g7UfMPxc@0ar~Dv@ zip2>eziSv##IQpaLFp}P8XL)5#A-UD6ee)&Et_}FsuFzY_C{xT-&DIk*lu8fd8&VD)@nwA==25RI zbso$Bfcd+O6_r5{*y$~KCcv=7FlnPG zaO`Nokt=7N$9m~F6KXm@z8B>?z)sSd?J?Sea862-F`^KI9 z*6x|s+9S_RU2l9QvIcaQnb#ZuzNxTlZSnK1*?ci@>UCxonWtbM<6at5^lo&CX5n92 z^aucBe5gHL_)~ke!0bGDbyiR=vnkY1i-Fn2Q+RrrM zxwV2vV{o6fdFwfwtak&LyP$e0=;OJ{mMkV4wP>X{s;Z=wR4b6XP)56TVxe3?*rK6l z9fMlLEsf307vMA@+pY7ypI<@U6%|2Euz8ehlYx3$l1%JsfQHbDj8I;J5ESx_M}*l; zF2Gm#J@mq1y3C{V$vgNDMe7fSs#Y#nwT6mX7Z&wL?_pTabl!=JFtXlh?Kd@Qnrz=M ziA?)}GL}BBsoLWtIf#x!L~@7HXpXSb5TcZAHIlvd>F@z{Raver{}TR{bh(fBW3}#l zV$6K(L&$Sq<$y6l0Gem|Lao-~&OkU~=7(OKGp=#n2#VIdgtd>X=2KnArX9UhUSAY7$i#k z@ctB;$A@s*!Cj7ApV;A1#f2lPDG2HliNKcm-XpAY`_-f^#j?Od0&MoRM3&(q3D;Ez z7e3l3AUvep$B!_4wN_WPD!P=xIu#^PYwqc1HPtlnpIzIT zffZvWV500fWmf$Ssw4YhqKl9PsxEWnq%g7vSYRd?88Z)ol8M=b3+`*CmvrUW+hHs&&yfOTT|)Pf1W-D#;)&DY;(UFDEA#EedA4V{1FO^ zf3?Jj25o3)_-Z^V%vw7WA<>z!yH8;#C^;i8TzAnVrFtAl#6ypud!u>ms@~}{ z2a}l<>)6gl#z*KrA3qAYv{7S&NrX7`6g_rAUtsr_;MdmHeyuFJ4uNm% z(ry0alPJ9-UwA=R^1e&nR(Ds`U6TnTyK2>0g;)LA)Wab8;cp_f@*>$Ihn_CJ z{mT@26ENET?m3u=ql2aX>F9(dFgf(cNHE{o(ZH~NKvW)8-tEb`BaDv)aTTD4PuP~> zed(NYuzNLFNp3CUjS;e$=NgvPP&gw@WwMpHhfUJ0M(XkU3K%E}OHv@Kene%@fv;Ma zv-@WMna}~5!#3z(km}`iK_ZqL$J3WMti}5}J+vSRJ-oy!1Y#z!!djYkX7DhS0#&8v z*h2fVN_5r^w?>`wo79}jiR~qaHVY4o?fTxHy8Mc23>?z&D0^dVqL+9hkKW-%#IRZ) zzCNs;B&aYQN=MnP&wE(Re+LcPbP&&dX>j~wLrdXNrMzXp9Yg%-q0l9ViIuwJ5I>GQ z)wekOpVEN@er`~Jg^g?8ahB=B`1cr!)6<2ZLvKQ6x=?<-eea4EgcDuKNbC6Owi{=U_z610SXreo+2|5WJRpqp~ z4MaUJ`Wkq4dr9@}BF_i$F!;x$7HNMDX{o99Fd}z>&OEsrrR-x-Wv1p+pUe*(wt(YP z=?&%ylR53brd6XA;6K>Bw!2SVU^_pexjk7&R5m_0=ZfD!7><_e(}GJQ`au`uY1lSd zJKGBom^+@CxYm31%luK;2!n;Y6*0fX#Ttwcq1Vx{r#|j%P&agUcTT!-NMfTAHU&^@kgdufpEaf@}w)G_ms z6I#x|PT+Cg(`8wSSgrKy*?MSNlZlLIPE7@}Xn?Nc(QcpGT`n7XH3qsXNJWIL?gf9t<(Yx4^Gyn?_F~D=?R$JMuJIn zmF=b&{l0C%fPvfE)`{L zZq%pVKjEX8QeW{X0DM?^!5e>Wc`@&XBj=yA_)L2!pc=G*J4SR8RVSQtUN;M?U@bg7 zm6y(zb{~h>(A>G7fB(vZB#hgjP4+gYZS+|nKps|bZvN#pG(mXI#TC0u`3$eG4F~-? z_j2kD%hrxL`YNAef=Uv-A44jTUHFk_dQW_gQ53Ho%i=(#jPuto*>>Xj7A53zy!wu0 z{LIG@hjk3+p-sGr9#Bbw_SL)r9`~icz`7P<5;;0_ujs)k)deqt!R)>$_)-4=p2q-< ztiNKve6Eta3Pi_%s}PQt^<#4PxbwxpR6u4Z*?@PB&W1$0oEJ%A)c+%G%nLV4|G%;G@`BT|8^ahO*n* zhS}E{Gp`ERZ4WViVc7P;A-p(BITPY|%zPOmSS-mc$@L~ltE zbi2ALI_3UNzbMHn_FH;HiHMsr2LS+?K78aMcIM{$hND9z2U{BRq`Q1y4aJA{)BQk& zt@Cx~uU+W3Q7VmNeaZM9kM8Y!iON`$_tTqLBegnQj@32O=8BjQ?+PU>6xKtcARc#P zq-y;$Zs(U4(^3{ZlrI*^7hQG_a~#9(%hH!s<8R|nGm%aVsHT-n`eu*rj=MyBqgwQU`ix%B zOwCED;AWBThQA;J?eJFK!^N)CrM@;Kyikg_nA4s3j`vA4&x^4u@?oDz&cPVMIvYWJ zE8n@>TAz&m;77)hJewcr=ar<|C0J3X1?LUF!gfBU@*-^b0B5Q;9c7HXfqD!m{Pn)f z6xM0d9G=Pu57Wn*quAYz=MfM2+c3)t^j=Nk{Eg8P|d0D z!Z(>dSLZW#?(4N&kB1t&-a?~)ZuWIvI}rdG3=2j$at^eXWmYL9^bS2F)AMK0W8a+X zZ=E-iisd%^VZBwTtZNKv{*F2AQTYyT)_!iUGdJFqXY!L$$7pK-Gjp2DNK|N@DrA7! z(#CfF^J<<42SXL&yU&e-;8+)h34+AWj0qOWM>RmL3N-@{!tW%>=YQX04V@_H_>~LLtNZ9lZyt4DR;o`; z4=1V6V0|P4N!}BeisC?@qg^E1TUVAl5u2UD%r@+}aa-_3VuD@F<(#n#|pz!dnw|0PsZXQ zMerVUC>ZwkMuU%gAX?M26rL_$WMIT)dkbwsPEZcMWNRxK?fbD4NY4Q(cKd!2ZoU(B zX*_fg`_&d)+>};P>4^j?40JF{@6IQ=#p}p8=d5&(h^tVqr0vGdy~~#lc@V}-VaNJP z8oB0(nwWzs7=}{N7)H~Rqkaht2@RahRpr9yFLX-YoHPI#LXDtNwVy-;%TK4Me`w${ z${4HM2da;!RY2P<2D=EUg6jZEY~@|m6F~}{2_;Z(MCuYu?te4_*+*bd6T2|gFdRO} zk5y609#w!TdavfKeti*}7zgkr$-~81ei_fWEB2T{MX-Xnp%M_HC+D{x zzLS10ys-1J;mNCGV}Xj}jrEkTc{Z~*eC{}dZqGeJx%UwkrN(oO5^-aQQpe#Vk#Za8 z7S@Y<5xYfUrZ2ul8`Ehi#y5~Mn61JEtOpB#Eq0|06^~`AnY(V=oacfAup`wp1haND z?U}#h{kR$gS#1r{`^u%|rQIIIL8IU(FwB%NM>sl%ACR=xBUy-b=f+!FWZ&3E=bmn@mX1#qa(--K(8 z4p3*Jj@Ilza7cOUYYuSCCZ?2$;gfH_IkxXN>852Ofhyo3+Fk4K&_0Xsm=;Jr^@qjA zNAaJw3v7vQN?pTxDyWBID$N{yV4vSvG`4!(>ln2)Xuo;kF;WiBpUA<-(T?WSJ5`jb zE6~fYz<3+=`eT!!he^5~%;dNsjy6WhD5j>&dwm*^-OdFSoe$@HZjKPhXUVY; zaZsa-y?Bg0G3jP!+{t5=8T@KEv0%6aaqj;WyW#<&jd24aS9O-;vtL7psvi@Ydmvq% zF=51?zcx+DocSDXHkcB(Hv5egVpOi+iw=EEn(C^#w)^SpHCoxqxBVP$&D)({z^MQ< zcnq@{3m>OFj2DG7GBS9ay)prUkS}!Jp z###KapaDPb`xv(8H`b?H>2?OOAUh;?vBL7yf|i`sSV{RuMha?%gEx%aO(l6a6i7=! zg%G%~yL<@8xJY9tOZ?ZQTuyw^gxq9 zG&D6qU|7y#R2TFzi{@PJnN=urY*_k@2E)PZX_?u}ayM2!T(@20y{bn90Qo z@4}_xR*I*ouSNG<98k2r>cadB`dn7iS)@KKTdhh4HX03upNIBHa5`18?b>y-+?VY4 z_=6t*v>D83TZJ-L{nqR{dqzu4hvk-@}Y&F9*5B8iZjD%kC`R1(XE=`kt9xhE4%ft};1=V8P zOQj~G6#bPpCU+Pl`RvxO=kRQX9uzullIu#4oWsGv+3Qn)^s%w=-g|Wc45ye}y%vBE z@KvlOlv)mqS%~Je6XpWJfQB$1l15qAX7bU=u_Kp>xkWBxta3j=_lp$;oq06}j9v^t zv%R2-?>Wd*x|BOE3XHC-Ubs+q=z1|07s{t-+`ksuH7KcFZBKhO zolFfeB3vvX81W%QWsj-3aGoP$5Q4To>sRuo3Im#V=s*I(e8K$9^A!%;%Pqhwn6B+4 zQEd|lVSR{nS{UQg>shw^O+NM?-8BKYh4#Iif_Jxey|3RHihBKv8Upeor5Qa)D%-hVlpC?1jVJum(21`AM2QSC7$Hae zQ+UFv@lY$kt9Ca3z+e5LO-LvUTZ z&_~Uen#;EUb1w2|U1!p)pbo3n{&*b#^_8^F=rBJ;##mnv=B6zM)WIR;6RwhS3Ms{& zm3q{Cac&6=?pdSpA${*?XGu59NeICY$;W3@p*qOgvXU=0>^>h0ybnvd?(t$-u5VYvqfODDCBz`oL zEf-#{A>rcx8)6E&g38*LJ%kOT&F3*LJxJ+lZ^Y6Wb)~p*gHtMYaHx*S{ObO5Ynn*$zO)6u!ja&Yw=MOxO;i$ME4RuS&1s3X zoq3!YQ$?|a`w+4lrit^SIl3t@1DM821@=jYbs#MA6YtB{4_#nv16%Z6ef-PE<_}|K zvqc`9zdZl0@tsq)hMT&Bb3-(6Ox7fBetQXz)>01WE$1SH#1?6BSuepQtvU47$kwOZ zNsO7msFnx4(47aC=uncqcjFbyWMuRx%vFxppOC6IM0uInDB<=BqJ-g}@wKuK7rrUJ z4@!bsq7~a8PY)?SA?;BAkx)j_@^^MJ+y89$dY=8M>niM^F30O#Cr`C(By%{)hs4KN z%~PA4`U^~PRICtUnlcQYloL)=!q)<*jehn(ChCx?h;aUh+~gst=2A>zh%B%n?`41< zo+S5-!>*vhm>V?e>vVQru{}saPc%z7)I9*DgGmY~opBrlsFh_cPn21rwyxoCWARwS z-E^|pX%DJwOx|S5(?^zAvO%i#R-8XamdS1Rr^t#s%6D{SAA^wNUG7)(paDttq8@}Z zRe;J!`j52|UxJ7j7so0}99V`~HNGA``{uuNFB#K$h1?OS@;h_oUe(>=Op(n zim%y#WKl$S(DSjU-|XcI_IVHXLiQ{om8XM0GTA?8ln`G5IllY51}oQdqQ9Sqf=Rkw zt}i{>GmMohek@=2!FvNns0h0r&bZ1~(G2QeAwU@$xSur;qcANt?a!lVouXb8I(!wx z#`t|Z_GI-KVWtOupEgeAFTCS9JTauNc0*AoF1?w@bo;!my?ta!5dkm&k2&`Rz*vRu z#cI&voXm72T4Z9~ERM5Hxw? zHx8CvEw|s|wq6&Y5fqOKj;InU@F-QN@MpK^YLf znV4e3w%X<&DMW;q6nu`p##^grb+ZAl>zspePi{}Kx*E{(pOZ9KI(Mrb^;0tRA)M^9 zp!J6)e3pLyGI7r9;Zhxn?>Vv*15XW5VH3$41n}nY_&Hs2O~Z{`)huq6l2=|J{`%N( z;uS>cb-C>vq0ye5pL{9ezQWIs175QoXVd`6kL3Aad}gN;GDwPWJ-P1$DDpi!BGUBH`-P5}y^B}WDYgT>$2e0wp4OpMYvL0f zo1&GMj$3WLfewJH&48%Hu&75W4}$39@~l>E@f_?~R~-9G@`u}`q2geIBy}K-G`?|v z&A#u`hxw=RrlgX&ftMFdMrtW`o?L1ZHa?tqOzS-8azns)*r#fTG@L|gChB^Mz#R{2 z9|H=@83_gEkGo?Loa?j4Q)@nk1S%IXyhmzQU+kK(0boVbR3$ zYA_R1w?p~8fb@;!l=Owd`<~&Qc}f9pH~13k@XM$V5ccq?q?)}%+)2zyPBATf84UPa zycAeKEzDwFJO$3lIrjwVTWJ>j#C`mp&X5C` zc)sQ7hlV#kowKWvnV(oPc~k3n(*uO~C)Kr+FXE>GTRM!2-*)u^Xt(ktkn-KyxaZA) z?;IIS8z3?2%r^6>;&%?@a&mpEvV|CMwuSz{*}o7Aiux7pM4IeuPJ_qMw7@R9Rv_t7 zdCV!NaD=DYru}X_s*z~q9qvb=L-&evgH<-LL9YvMYwW%C67qDU6A8^c*uG|waNWHq zeTwV|^TF&MAeZ{0TVJ^E2+02;?{K=)1QQ>{GTDvazJ1$#;iDzx`evi& zO&LzM7MF%Nay1=@(nW0*OwM`O?JGmcCg-kyiW^PfQs(K$zV)dUViw(3_z%#03af;U ztjLyBvIG5|!`p}R`>fB<uEtRXGo0*(uY0;=z|7uJ6+H`IiIlMz;N-I^wG$Ftnt&-9Qbc{3xZo}-{l zotcmDZH==xhO~ykx{eqJ#lyArnDO?w?%dGP!1g1WEWoo za&O0sn|QIcwm#am{321`da0O)lJuT~_{JN#)@u|xg_M^&)}Bon@_ulfeoETO%@w1E zo4h5lm_5#U`Oh~ZrH>BDkW6p>=M0H*BkMR-BJ@T^AkVhvlz|?6vx$Kh+o^*dX7I7k z_cy3D3L)43xcfjzt)>OX&kMGM;lWI|f7c0%Qfz8YhJg9@ZQQb3ykVAY(fnN1xLn&* zVx}XH$5h@vugR^|kq##2zvY|L+td4L@6@_G#g1GW5!<{<&*xB_Fu?y=0Lod z#*nto=c=faWsN-oYl`u@G`8I^djZGqwb+*CWZMUMDB!pNE_JL~rtqXQzs30&@K@Sh zLl!Tj+|&v>?ru_P)Y>lu%0qp6T!N_Age&Dl?^n#&+}4=bt164!#8Zq(UR`a*cvq}! zs@4&3boMp@in>fUh6Mz~-zv=N)$@;kyK+VV1FR5QvOICb4;+q3w3Q zAy}_@7I|INpI85dr$h<&UQ>Io?crgFgF4Q+mBk6j(YK! zFU>wWBMq+S$&kCyvi_g%0#c)qKX*UZ(uyncitYX;7n6FeTcSJmZSxnTiAcl}cMUOQ zAN#RXwR_i+x_H%ejKz?5^?;P~u*KZg-j*z0)nRvc)viy6NeVUm0wQE`d*Nt6ZDq|z zk)Cbw(xVdff{KS1`fkAS{tsVY9T(-+wM~d(03y;Us3=GaNFyN%0@B^xCCvbefHX=; ziy$#{gQOs!bPe4|cML<%w+HY!@qEvF{+r(!b?$qwz2aKeTG!5t_+Axd`T=`)qJzuM zbT})HrA!eSEb?yVRoW^VbPNA<$Q60s+10X+ia)gmrZX|S{&$WojJ|S_0aUkLl)y5# zL7O#T2;6m?BY-A;60nJdZFxWl=tRGj{ETJfJ8Ns+e=$>1X~u@?Ty1Vn6QoJUlL>q) zQTkR5Szun~Tz^2FAscf!egJ|85U9ERIO_5#pe|i>_!=-F?n*{J4_Yd~1IE#T1!}rL zocOZoh9Bwr_;ABzRoFCW70qerErb>(tF>!K5^_xCrLxXmkftq0ZJ3!`o zxOQ4;kHa`So%H%Mjn=&R7r!fep)W2V$-`a-;;@WTU- zQqYgGN^}!3=e4!jL-70ODZU`{rzH1m+Gnp+_k%8r2_!3(4jj zaU|^@!pSX13yDDwzr{BwW@{Nv?x9J8C+Q(i0$=e60ab1$nP|4>Bb@ZPl}I4NOuIXm zjijEZ`(P z#=#Sd`zu1SP-1*Ma!?b23l*N_4ceTaR}+#c0$l zvp&*4Yc;gnIh{K5&5uvpc^zYwuShM#UNRHVO2sI)cyCMek6_|mjHS5*fznwx$2dOG zuXp&L_zEzCvOhlJ^*?MR2PRLfX-=;+FLfp!FL1>{J(#Cy0? z;0_6oF_gUqP!m7-W?jBP8gz0ctabK^=ddXe?tr^AMKVYn1kmw&7Zp-Ql1D z>l3c*SuQA&(+$2zGRtCmGs^!64_E%MBZ=wyKwbj*EIc;pCfVUFO#jQ%Lt7lmM@s{h zgz8)tB(rw!#Qm91>`ohu<}{@S+0!Y5CXoVeIE_C3VYx}X2Cb%%%t~X%gX(YttD8(Z z8HxuZldIaqgLm&M6<)b~Sr7SLC^Ad=u=+-G80jNwP%HQGy@I&c2>pP$19}y$%hA3X z$;1f~9skmv^ePs0zL*`+WulZx?rD5%cgnm=UQL56X#qa1b#j9inU@}k)Hf4m*EyG1 zExmb}^g{JOMMH7#+21@W`n4Y-^{|PIX8o(%x1H4_EC;)G{y)L&Ph6|7JwNw?6N`>N z#?t|+u7O~AB?-40-98IVr3ZH156lamy=x1O&%9(xc8y~_`E>k&8qO0zOVF3?N)nJL z9vC;;%o5uY`NZRxqxL=+K%lmcJQCL`LhHZW%Putih1dEHXczlo95~F*=kh&qJghE4 zO4V(X2vjFGbuVZ2Eo@pji+<{^Abb=qQ6}KN{$=Tt5*nY^+_*6W<#S`EuXW%?o1Jb=nqmu1usb+e>d(RwAwR(QI$dipK;v3U{U($-q19dL`sXpwt^mIjJ0Qu{Dc*TSLkCg1D4VLB>#N3i~+=#MJjj!u({mVZ`{vUAL@gnLh=W%OX zBr1>bL6Jl743@YEe=D7Dr_^XV*8NyjVJ_$z37@_9FgEQ2_k-5Dp$b>}y;HYWJZ1Jv zH-7($5}h43olGo6Dq)&sd@phf$aJ^mHfs!*pcKi&@XxhXNa1f zzOzh+@#Pwjzj|vzJ(vIarY@auj(19_hF7 zDT`4Vh~b=S->Z$4L7VQ%7MkL~qRBEFKR`f>h5!~yc8&D{i>An^%!#1`e$H5hH9lYk zFeM4v^jv$Sb(+dwX0gJMCK)ASR_?xGLn7!F=#c>UAMHt8mk)O41WgpSjg>4Z3@1#L;4dd!IikHf7~ zGe3gSGa?|ox;%#d*3sR!*hpT+eR9V&TI}N)ttSl=zM{uMnq1xA*bA;yqmk~x;hQ4% zcr2H_N>4r*+x#;^_+aE63v%9lfPD_iPbcQa?BBRfGr2Ob1Gmo)y2ZvIfhytwLJCvNMgxqe1lqr+F-q*@TANGSd20c5NLW!=BWN_7AS9s`aC+6#TmxtBn(5Vpw~ONNtH}k%L0h^}EHKmv%|h75fOM+hwJQ zg36ldB*Icv>g4RbfKW+KZHS&#SsBpfOgSm{^DZJmESHkAi>*FKQ&p7Dn@mf6cDwBR zA1;9W3+L&CfCusw!X;+yNp-gwm8~NGbVF99i8m%{M3LVO2o>yf-Y-|{JKO~w302}j zow1-Sg$(xiuF>-8#apbZS^QRJ{J==A03*3Ag+4_FV>H+gpWw>CN444G9UIn05hQ43 z&fjOIDkkzf;8a4m&xh~*!ySM_{9%CZ?3%pHyz;)K{8q-_8n*vB;QF}>$Uy5Zs}~>zJoOf)0qO4^i2c&LJeU#7w?X8O>$AVeaPlc}r@@d!PsuA3}Ie1_Z1VJk1Ih zQlw_3-|kW$t<8kyKGghP+Ka@Ib$)TU3|kk#DrXMi8k<{N&*t&izj##kJ~()RU!}y~ zG$NCHay{m>_AR4I-mK3{(r`X!+}n(rHxIVw%J^ziJDslRVqUxZ3Vn;>w@OWbW=*E@ z(N6Q%=O6DDisKk?YTL1z6FT-8>=*}&Zq4{I?b)3i;ykwQQKDj0rNN7S#H!d@T5{qv z#d;YlG{%3vog@fguB}LN%=#~_n^ULbAJ~nqy{E~hL!Sakt(br3i4l@k@tfH=Vsnp( z^LDBY9+hANH+zhz%_~YU&-D5>tx3Wx``9r}7*PS%9#`3T}dLGmmL|UEdBsDi>g(7&u*g(HWdt&TykI_eWhsB9ZH;0I z_+XIU+7f!nJ0@4tzw)|rtEbzQ*TNBgrA*oxLZL~*U7mDvg$z21^+O*p+ege`VNKtq zoy_69;(4q;6-&7pd#bE$02N^bOhOEVgQ*!-4&U0iwd2?u!e&1o1Dt#9NzXXqRlT^4o?)(2Ig+ ziph^Q5Vgx2DU)1`gpUUEkXHem{*jX9lK}eD?;KIOAwz?;(h9FF5w#+zi;NFkK>qOf zo#_{AS{lww9Tkry6?7^pDxy))Y$e0=3y#rC%8bYUEFJp<1Jge=g764Pb-b6hz}exj zHew(Xkp;Y)#^8s3tqIK?kI{~2mk&rtNYXB~dfVQSH zjp84V^SgQgexI=pzb=^@&TtKG?Te49s}k?fvj;5G`8Q6!IWT>^4=)|st1{c!oNZp) z9E7}DT*1C_(SBNKvHvL#VPAd=A;4x59}7? zMaY{ClhxwAX)okz$1;eH0CP(NN=pGxg9%wS1oKG!UU$lk|EzE{FG;TjMJ9@Iajb2zsQvbV~!%)OSTxnLC^Gu<^yuLL%`gJM)1RCPe8 zv1oax1#2fRq>odVRVIO-9&u8l$A)76+fk+0?J)U9moB$V^u1TkSNQRyIhn(*OYwoq zHIOuXY(%WUu7Wmm32)TYui^sN6)IPcv?%*S z^?sbxXL2f%VeQkt7i9PG?w(vTSE4^1x-Nbw4tp59 zPMnJVgk7a8%ALjPCn_betS{a@bZ*-lU^pJBI&G0jc!tpSW7s_nu}C#R;3~@=Y&2Uv zHaEsL4m!xy=90Rc6QcJ@0;3)bFnx?#Zz_8|eH&oOEzA5w9(C7(VsfKe{4ZGaBTh4s zJRn!i;1_)T3a$3w+cl^4t8#>B>l1u8L8SVy5ICtrYiW5*iz5fGZ6J=W``OrQ_>xf} zUxSl)xXAcJM+vYmN1~Qew?x`Qc5R0(KIfruZPNj0Rl?hfD+7;`t+uX9XutFOvOMU= z!it~ISewj!)sd_;CJg8`I$%-Sq@KGp&2WML@@RZlE830}oz?vL#x*pr|2t;?^>vkt zq|2$4FKFjHnJ)+Z)uGB5m3(4Lw~!UhaYSm7&5eQ3PrO1}(V;ztn-~pGv(gP`hbX5W%yux$@`8mpc_y#wtRIB4 zl;@N%jwvGxNHxmWl;$5c$eHz}DL3H0%Q^9NCG8;1^h*S$oZE zKj_~K@5JagK|}0YBbu+w>})5iCDtzOSjF}x>yG@ElN<%J4-7iq1-6}HsD%vrLggD{ z;x)~bQ3lZri-A6a$f|(mj;fzd5H}~W*~_JtMc^rL7ddW70JWWyFp2?k9i>w36K?ix zN+`r2Q&+Q4#Ox&n;*{s*nj^8!vz~9FEOV81^Zji5C5CK489`faaPqwNu99371!rLq z#KHIz-1oe9fIOaeo>foI(h*Ib*(hN2Pmiwq%;nu`x~?}+LIWDJP+YY5&KH-Iy+#Ve zl32<>B%R3~VVXn2E+tEZ9^mpJRwLGkI}_j2`rbf%RX)kAoL8@r!8ahyuXG71^5}V7 zvfM3oP^t0Q=GHaBc48~ZQK!`=Afh{WDzkQMG`GqdGV-ehkV`7xhL-mnl~zv7@-hFU z`Zo*!(z~%a2(&7vF>#$K?{DPE|5S( zn5FOd5uNM)J916Q8*(b5cncn5C63j5?|S+JDbCyht(38h?S=8t(Y9a_MK~o1$vc2} zF&s4!V@4k27(On_9o?gOFmzL06Oeni=L59w4eh1@s+)8pbjEeBMQLX)hDUYurPsoZ z#XeH_iYMi4o4}tcwQIy7wXkp8-K%l4=kkI&XEu%P=V_@&Khnj~hKBqXH@a=&qdw<; z6+f}tz2vq>{t&O!42GS^NAk8JJ$_$n6nb*RQn9bsWcmANk`kAk2D<8TCN-53MQ&fz$h_&<_Fj##S@mjJ6q_ zTg9rkO~GS$!VBxElN~fwxCP4vlVcAMz)#`@K&n;IRXcq93PR3G5FJrTC-HwrRBM`x zh-z&sWq0-eh^WdJ5!J|sO(ys}qRO2`RHeTnsxhM~U4t>`ls3+J<>~iDCq8-oyTV?- zUpU7Mt-?KKz;t@De&(YmpDl?GMoXJP83Rq=rez3ku3=RxVViEl&>cxHkmE(RR?W8H zzSU{6cWSY}i#C=jMgAC(Z(|o66vLeA=r6dfdR`Q!k!ZF4A;$6Oc+L4wi@Gr`OnPl% zgK1GYDv8`p3kw>i1cQ>BT*g!v^+z_SaHBs`? z>i1f~;2_3vRxDZg3k9?s07z{y5$V6H-#oR@W zr)2S4TiF-lpgC_)zBg#;`e`kJx8Y;1#4xIfOiy;AaoN@!HtyI~`x#585xh>(r(68Q zZg#{M)$Ry_ybs(CiF5n_^J7wq7zE06)k)EwEnZ?t6ncrmn`e<3-p~Oo~-ZQnc0GKMe zz_gg%gY5LrENvna#l1V>C;q@cS~Xx%VGH zv11tI+LsGDMt8$ozFeMDFWbmc93QW?#uwbDNo^8*$#@$?j3ge%8-h$`u1U0pN)!1> z?5EQZjj8ErJx6I45mCFNJ%O<*1lpkW*pH-|BNS{rd%V8Ee35` zA++@a1*e1iMfO|_Y%sDcY;XRfPf znTrl9AK%E==4uP>ED_1s^3GI@8)}ir5+;L5_$*uEq9#$^-43 zS0zhvm%WMGlf1u(3zk*f?GsjhIY3cl!Q=sf%sothlPy|j<(H9>(UkYHu@V&3R=&Ya z^;UdvIgx7jvizrkzkfv@h&`)qT;lN3L$DkbAnU1JHa81lMgX-8@-ykw5^iC}e3V4T zK5~Zaz&BvC>#}`*|itp9xb#oTJ~=!tTbi>0()-LP@)oJ*|G5UO6ga zn3#z)PT;`a1%9S{w76%*$nUa`Z83;^G`f1~N+_THQg7fif5$6zyxdPWZh zv~@C85_*}Wi170Iw{t$(J!zM3QGOAYG4dyX{il4~t<| zx&dUBLy5QsXwk;f#EIvm$oAG%eSZI%5JE~Mj;+_!>FqB*w09nqVd?<{*@#KP4~r9w zueK6|EcgQnIgwh~AdZz3d3?ukEiineCpb`cHNseLXJCALvzm1FRke%WfmiOKoCBsQ z%7+*|MDv(m#d^JLyuTgN;Ja-AaJ6mZjAyP|en<`tQ(3syO8DIu`aru}^Kr=N;#uF8 zbKcPT-$CYP7eKdAxei^@q)fv9W{U#Guk&CEO~CeIF3rY-Pa0H@pGZa zsiSTx_jig3ft>e??i-KRJ0RkCd~m_Qy7jq!=Bq`4ZsD}+16y6^eyCap^sO0|s)f+T z%X}#cNB$ltlIU8T9Jo$*!ADyHN2eRU{3gx;DRcYx7NPna(i6W%T9y7Z@y;} z`YQJUm5zX3Hr1m3)o^~MG9#396e`I)k|^j-mH3V9ZM1>Jo*WvP-Yu)Lv*H`w| zg54ZzmFIVNLTgC)JpDX0>(*6Bx-%?F4$Se--{bbl6;hGIj<^9O2Cm5}XKGYU zcEkwLzC7DP0_Cl9M|7^+e<{Nc3psijCjRUh10>)CFS#x%tk_u6$oYn|<>&Ldt;M31 z^KS%>Gbbaw`p1s;R6d&glacWcoAVa9V4AtB#I;;BUdg~rQqG<9z`Wfvw4CAjOj>|h zL3%4OA*)l`oO$uyWfgL?Bz6PAf!xXaRRnsK`pOJg5|kUMVMPyML+jj#hiL9PAG_S&`IT?SG0CA3?oI$ZTFqZ(!7yM4HqWRtQJ5O5XG%vXB~zuTj5 zNc%D*KmhI#Q7prF^ChA{CEs?d!6-q%3;&9z5cFN=4>tVYBm0dQUvFg+b?)WygaP81 z@Xu3G68_h3(@Y1yUF9vcv5smg!LW>xVe0-SKC6m9ay^fXaYx;4qL@n;(0OUYhd@te zj_0}6C+Fc-$4^zdUlSSzaKLU?QQoQ*Vjb^pD1_zfHH$_!&h8A81yh)ZG~Y;(BXP5A zT<$7VHKnAF`Tm6#|no8-ZqCnj3@jZejT~58Ttv?*D(X3*k5W zk5HLx$jbY!!M6_oJHQB|FJS*b%#ebRvLHD9;KDE-f(Yhd^A3=1MEd2A9vCpVxI8hj zl&fBAuF1IB2#FMi=9m%Y$bq5H+?S-K7+*%RE!97CD?dSiaZS`b*>EmEjoBKHzL-Zz z5@jHM|589fy!=F^aWhkTv-m|D1^ir|yTV{Jk~%kR)Or1j_H3wqT@9LTe?*r~#k*4< zpGez*3OUS8UmdLBm)A{72YuEagok6Tk9&EK;EcR@tI1QWH}^4CxiPCzLbiFm=E!LD ztP8vK<(k${o4VQc6aVck6(z;5S|7^}); z+9!?oQQM!i5kz6!)~W;$j9Mi~UWK)f|CP4AQ)%;5lX6_5F31rV1?O^!;@kFgJ#{&z z+G-sEn87ov{XV}YKwPO=-jS}Op?zZdK1bie>3nikty*vg52$Ny;uq-ddC&UY66 zkDf{;DytZb|HA{DDFwvD&Ki$$YC#DXm%Hp=rEo#NUxxHp+U3%^pa(h&i>#qcOv6Ki zWr6p~-^ohRr>+yTq)N94+7F{ZxzP;#o@xRj?|b(O=I{H-;**60^C1=07wVrn*|LuKFW z({=;YM)LsiEg`Rzp@7?Z;+ZHC@x3<_rdX%*jqExxlICdBMw48iN&@d=U~3gvhSLCw zn^q@{0k5!^q#U2vD0$o{Y7Rp_9s%*<&>|zrEPX|Cv{3bv!QG%MmN>hs!w!l^&95jc z9ozgCdwXt{m6QQD6__XBKZV+BA4X$JU9QdM!?&^&c-w8O4EVmMZ-b>cJztcsP}gyWHOS!0O)u#gr^836-FKe#!FsP<-p;3T7VlLmF zyoeUg3QQP4z0>$#+jsDUPT!ev5Wh&eHYeEh`>LOLgnrfOq%;r-7I(GG64}VVbA`?D zhuGH;fI#=WxJdJg+lCS z6uOYHdxgJ<_3UR|DPN0Ev06ztZaX@|h4%z$sy%uX!8#BPGdhtkjLP{fV_1xHwV*oI z-?bI>b?CF&JN~L#*m~1*ycmK5^yJe6<*d*ENg)DzkwbHjG-A1~j{1-QawX)$f;c2E znD;vfjor@m4?uTEhKd1frm2l*#Rwoc%2Wr_{LQSHsx4r#BrJ(2cf6nUI+)Myvaj3M z4+350P3i4Z#~?G9anF5oxJfCd&FI1P=HPhdcv)<+;MU}rQkP};3U`5i$Fpk44iQrv z_xrsn36Jm302M8&+pTIqx;w>+qqr5uhj^#^`%{)AvdT-_H}YXe9f^3h=W4D__TWQ( z3JvtBh>Xq@srqo!zTsjB=SO;XqyrfEt6@w(u{$Fbd8~;K)BPJ!{sD;ZuF0VB?ooT4 z$N8^__HU@B6Cb3%KSI!_wpE&xM$6a+JYjhaN5NF}y^Wul1ArHmw;HF_CO5m1w; z;5bwX?UCp^GpR?$wulKx39^hDH5pES7ej%tHRjnHkIJoM*9UvYMLJhY182czw5M;5 zUEA*qIjrBxQ7?Wmyr7cxh(Y-Q9p=kAYC*qocSL+CAlE$NC3yN9pfhsh7YD(O&Wz9EdVjq5!bp(dqB~+wbu(Xt5tcVPsxZ zO$mG@R)LSy*k`v==~b&e61R(!1hvR=w7D47KglO>=>Ak)6>?Ejvv)wc{fyxA=XV}V zf}o%>I#<&L1uStNlEyVlL-+T*=~FRNdd2w_}2pJ+DB3Mg;TXbE5p*Zg9N# zW;0t;8%EM+!UDFY2>mLnTh|Oqd%@)O%MY6u)a#w?DasuT&!bxTJ;lNclP4@i0Qsp@BHheUctPY z2w@DWD3rlYvv0Y4U_FmYYvgmK*NLfrV?)EuC;DG**%!U8^@*{3kb0W^egV++bhv;ZEoE9d=KbRAWr-+uTo$>w@ zEY)b*awIR)Uk(;;RU`uah6d^d?szgVWV^12%70MIR120?s(%wlX#}sM+E-wrU`Oj` z<^Nbugo5ot0lV;iCrEqOi9;_Mt>GXgT5+Ho^P&h;v1yo_dKhuf&*qkm3%%qea<$t^ z1P}zS3pxIq0u`IBN4ur`^kC45J?%yMvWK(T>ocl_UZ%B5uB3P{)dY*O)REn+vIn@SgtNd!Fn8Ywb6D(>5^+c3?Oa#H#G6)PvS4aHY)`_r ztZ&;FZ7-uyZ)?zodLfX#P~&-WISLBJVb@UYiGO8%cpRS#JA-LxsvGs&Sd11{0fXwqRzUV@a~vS7RHe z67YN*=cv)9Mf zXdE4tDviM&p7;hKMloUI9-D>FHNM>3-BpCtj`)4}u(3Jm#l5w^MUeJ97K7Tj6I(~e z5fO|HAFr?@$D_#Hy*`Q}pJ!t*5lhwN#xc=@V|1;lzo8s!@_uG_zzd>Y^Kq1YD_2E1g!aeb1y3wRQaU_SXYd8XZmC4EIUemrR}+0p`tS@);r{kIfW)O-mCh_90ui z8&mOj1EAKxjoL1(LxzkX4_&HD5&?p*%c99)m z92&#{gN)|lf4}5?2OooIbmLBZ_yc^e$!3xd^rp<8?-y8@y}InpS$Ersum5besQmhm z%m4nJ;h#~RQt%X4m&@k#|LqO`YM1_yJj=?_o+!s8(_cVG`t zavHv(Vs9=eD9Eg2#Jvh*oEqo5yS@E3th}6Y+fL@{tFr<4p7Rr*?TVUt`R~_JPl~#F zunOF}(sMVs##>z6k%0-KewLN5ldseNb>jcF6q;IWe%F0P8BUAz{S(wU?ABc9EdSYG zUeAQ$AqKVm6u$uaQGfQX?b$>a&SwNQ*NTAWaix61!}C{MUnIQP#!A8Gh`+$B)dY`6 zZ2lg07-n^Bz5O%#9vu+ed?VkqO{XTWbL$U&2bA|f6~>O1GoxR8_0Ku|+X#f;Tw(@C ziBX4Maj_^+*b;RbL1#8=|h2GbGb|wmG zyF4b;dMeXlk)l|5Tv%&J%&gNAiM7(+3APUmBwPd`{Rb!j5dcTiz9ttA>;GHcqpsN{ zm!3+)i?dAyznzca=g!|R+h^2Pg+m?8QjYF(fFYM)^uj%8it9GyC>3qn1kk$Pd0U2B zv!O70+J=9yzrxb?X)P=`_{Uo%4ZE54$)a1EpVvDKs?&JdxMqJ>wry9-K}KmD(sw1P z@u-Bphi?V_o?TUAzf)k+MuK3G0dtP^-k%R#@DF=eJy0X+zaq}wF%8k5c&q7=^k0;^ z|6Ha2+LzZY0_=?G_Md%v=dN@YEE!eRL4FF(JHOj6bB4ec6qK9#TwXsgUT3f}(O9&- zQJ;6((@>}HnRxkSbe|?`p-#zC;7!}j1kR#cwz&*Oa@p#xFe$e^{@W+b?NMtMDop-1 z(C8qi^=Pdtg&e;#$As)uP12r6D>@>Z{m9GK8uK7tt^U$09&f12jv0_PjA)Ov-6y^s zp*p!uiSA+Hf>sQMC#-b#h9_u%{>hevDSPHQ-@IcwKU0|@1e?m=c1--s*9nJ!<1&vN z`p=#r4wTJ`{;^rqw`u;`$ug9K*xy=^v`asG?(l9b5gosjjYXdK!5;qTS|=aqC5VFV zf|V;X@7h#s^k)({LCR6@+*m~m{F+h;pXUi?yc3l$t*mT2*`U;EHr#2Y6EirWNYP1S zHmGaUZh~Up`c(a32<*aiU6g9qtj1SCRuNe7(moi^b<|3G`QhbCR*}$|@qyv`Gw7gz zd@>E}V)^@(`o|N70B1OW{c-%_fo^>Sk9&2=+#&Zrrw_Q548YeMR~ES;^@=BETap=@ zV$XcAun6&x^Zs3BtC66O;@i`s(WSZeL)X!Q2p019ueNk)itM;4y~?t*Qz{8kMh2(S zvrIL{S_( z-m6H>8Y2$0N1aQ2Zp_;6Y9q%3cI-{sg6r}p9Yl9O8rrsuJiulfBf#v4OBdFjtM46 zKX(d?EFcv<9rWh-6Qa-j{JAe!tloj2#TVzK#}XF{GM?OLH5oQe;CCiXjPvr5Z@Q+s z_EH*ce<qX*MSmmXX@8-Q^m4C-E;O?ht8v4N7(uZEFRj{^DTvhj~{tmiA+2d;yUo;aC*#J5miwn0fyFfP{ZDf!lkep08%`S4}G4wzYgZBfQ!w_Or^a4#b*Q@q&Ctpu`cEy9E4t>S@<7gXD; z8Fo5W7*{Im_hk$53L|^7v>e4Ex1}#Wmgnnt{#!1!L7+mI^)CVf4(Eep9S{3oXgSWV zG3aCkPO_w>EmF>ZGJ=Y^@;iBW1m>|E#>^gPyT|kfaX?+ibZC-Y9v>z+t%a)iT*e|K zB_(_HwH7(i!t1gBew4G+ZBtMwPqSxj@B0Mn5JvsOhYN&|yXtIgh0sZw6`^;xS69fM z@9;UTzQbJ=`W#pKB~r-iRG6V-TixEhX5^uwMTWXS%}wwE8CqQbE?J`M45S8}be=As zDa#1gV}OrDpE>USZF9aL5zy5!=;mMTT)q;YOC^M7wnTO=Jd=EF*YgmI6px_G)4D)J zv>4Yc4a>WD6wY<;o_I~Nr(8+o8`+Mt4qWk-g$N;d?&a|!^(0>j88hX4jMNO zU6!2Z5sv1HJ>l9`UBmL!yEn6HA)4#=sRNx81)w1mVJyn#IaV{%8xS2 z5M!q66z%8g7~b3%-|dr^^TEK=QlFc1=i??SX&lQ5dmTPb3%d|*si~gIS|9*=@5SKY zzSJ*&d1Qyf&gb4Z)=H=Z{L=OdsThjBiYp43eKxt-`QIGrFrj1UCw}I$ejV0>k6l|; zwcOMc%15ubH|kzT>qWhQ+EB}9*P%oh z9+!rICsl7R=lM|x654X39XCOBN=%!)Ito`{IZ$_NtE@PfrfA{BW$&Zcl{(Vo{q3xE zgOeKRoL*Lns-~I7(qw7j;o%fG!CG!6HBn?UYZIr;T0J>QvkBm>HuEPz^lEX%TX;L! zoM`eCQj6laGQUcZ!{iOoozhzE@J-Lu)TU@}K0;)jVxw)07fL7Ba!6d=GNJTy!bKyG z*w-Is6A;o*ZdDHHu6U@VnC+zNYXI4r{bp#F(_B7b=0x}&eQK^v*>rHdCN!%#S-Kk_ zN1rAK^Ar?t$YIWU6+3yOilyd8I^CDVslOAUC7t#@V$wSPTFG_EJGV}(?r2X!nnVKa zNp{rFHMn`ktK39$_%1!rLe8*H_=kS96ETp@Mi8cXp1;aRH^E1AUQyb=gde92fME+> z?r2=kIrAPn;n8{LVk?_j^?d{j5BBz7NV}!`OGZ72wwfGuTI>55C1f#MHg3#Ehs~d9 zLf*o|)*`bQ`@%t~$VER1Y}IZp`}Ee!F1v{j&cA09l`2JsEssKF zpZ7=1nzZdts>2w}Oq2aJM;30QagovAy}#7Q;@OQ?m*cqlDq$c1Uu=DBo~zVyqCS_W z_d9+N%o}Qv92Ma;%QNQQQE5w%N3)aB~rTYS+Sc&$4>GCOh}QK1PB! zQ^91=i$nW{MRYviEOdqtSvfEQRXle#jQYx&FBsVZ=u`FTc+jVRcc)0;arcrr=`Lg~ z9s^_aF@6|}{hym(FOD)s!5|yBPls}tO>)#1dDQED6Qor?bZ>BosobQc%26%io3&jU z)|-&#PV}kCLF?WGU#Si)kC1VXai05~9uif1RPxgzSn!!e!PulCi;bt!36Uzv=5z4<&iwWHuPQ89P>-ulZ3u5*tDWIATa_NU-6rS3<@#YVLr)8<3fzNgwd zIy>%Qp*Lb(x<6_BDygyd7ehfTUdK-dge)*}QlcFa+Sq?YdciXKk!fgI+eFdy9bH zac@;^F6?Lit$Tsl_ED1N{X_7uA3s{?O&jaTOKm3669ply$FtlAbhL_J&F^tq_P;V} zjchI3tEh0Xnk>@-L85oMQKDTaK_TrqzEY;DHmA8*mS!cpS`wh{Xj_eziB>tUadojd zJF31RR%x z4|a4Zl(LnSetm4x@_WpWqcWSRQkQq_cE#pSba;5?$_v=+3Cx2O2te<<)ysN#+v!@T$a6|iB+$+f4@+IYQBJFtH|Z5b8-Zmd3fe%Ao4pi z(oErAUIPn3wXCBz$i`IW7%L`BNM+sSs9ghm_iBzbuL9x}U+ z(`#OH7{>^M!fQq<4Pw5ehC%h4uFZG(Zt=tnF9bTMROZ4Wy25t9CJREIX_Q;`rHJ}F zZcg3tefKWYcDiAH!Lmc0Q_Ish5wqT)C9Hd*=IHg|u36MWt!Ln;W;rFQ&ztc5U9tw7 z21sIq`)(y3i+6tCJ%P(yy<+J1H#r}gFpzL9uod7{mGgRA!1o2y(iqSE>$c+5Q8IF% zp{rJT=UFLiW!k-lY^AiEcqPoMEOQo2~ihol}vr`32323PV+Aa zZ%B3RDSUq$dqt&JM)MFRt9}fVwGK%hSllDm$b?Z2&bxHxds+2YBcfy1tgBA#1zZN< zJV~OM=l}AJH@cOw9c`4}&X&WU?`?Dq&JB)b&Z|sjexmc=?aXHRL>x|uSx@J`*3-J6 zfLYinu_F;^F_5r|{QL_JAAIPkAs;Qo&yD*icbbkd>v<1r3|C{)SgsNaWyf~4#bIP` zCR>zJ&ZiYuFQntM8g)zdF7mpZbnD8mpQNZa9=#uEU(e#>@G2-xfu698RoUo#p$a~1 z$)(w^;&hYnehUgyjuz}?xm8hby{p)b3Zu#yh5ta6+DaMpS zmao4Uk;FL5Q0n!-rnxeTmx9zN_4Duzmes}oK?n%k_5E}UQoKCEl*i`!x zN36_IQCqxO?{BtHL;_}gY+`qToB$5_mSL#Z%?1U7PSL-I#Y;K2K=Kg9KYN}$=%Vrl zE^U6v^ZfYin^Rt>JkH^v>WOYKY|0+aB)W?Yx8HA2%=22^2uZLwTh8ITIjOeXCsCJcD?$nN@1ikJExqLfKM>WwX78S`- zsEVRu)U|nwXWskerSVEoF*zKU-KR0k!IW>P-4DfgI1L7;xDaEDABgGCLcXR4Ds_&F z0m+0))0>(qOG>mPR_o;Gjv64dDHy3Qv$bt~Z+Ck&)6xq&54s)GJ3^dEnrF{R`})u& zP=6q8y}^P45yFt6N5@dPyVFll1s@OYN3$Kem%=bfBcBm=Z)HDuE7ZxCOw4o(53W@4 z)AwdU2KtoG6#}?!5Zrju44xj6==qkLUs0YQ!?1Q|@$JFJ@*36#pN!dLVd*!45gu8g z2ljxkx!1sWs6TuyCXPWRFVj9I5*Ev0H*Z~pDE}q}IfC2!Cpyyn;R2Wyo6QozH;&!` zPyc0`kVQ^R?46V4=tH{Q1gDn}ySH&%R=@2hSn7`RJ~TFKtClzTDrPH325UX0xEt^A6IhJ-Ju3mp7-UQAA>IFi1G$-MJEL?F*8S7C6w_Gm+~4!s6a zl$TUN#z!KX_>rvJ33r{;LDFk?Wm18Aa^|EC9&(hUJ$_VGL8e!?J;%~hXwXt>H%n9; zy?aO72BW_7jU?S`tJQS(!+z2jvJt^uZ@1mmWp*oB3r^k_)XJOv z@YVY=(=4jEhSnI2Ld#iI*rX{X%qNjZajtFXp=j6wq~WRgdE7G zb#BEmu5Camcq22vpE#Kv%_ta;IuW#4Y!YO79shX3kAuc%@kos#dn?yDj-{qFuXcIB zaRaY`WUcRtH{WaX)Vy)3J&Mr~jv65R>49{NVo;LQ(<45`mbSMKyfs6hSP;Ha9r5vF zRQS#Oh9!}79WQw9ec3o;W%E^A9%~Wv_XAIY!#7gL51%x+HCvaIPuc~|PF9VUt#=#L zP;rm`Klc7Js;TXJ1BC;kASl=nrK+eX2q;JmO^`0VNev2ubTEV-iXKH!Kt-CAsPr0o z3sqE*DmCV5UN#^qY^F9_EbYH^>)sCK5w>- z8A&E)=+R_42*<^Xsdj{Bi@J8ILe*%A9$8{Cs_XvZ(}Q@Man}-rSyZm=w}5oGWiyn) zXQ}C~gVLAf{!GK7bT#x13nnu?z=-8BMnZCL9s3HW()9D5D9^TloqZSm`dFYYRxBx;M%Z$zU-B7Xhw#G9=+G57j1m+ein%r&Gg*ja6+ zPSkSnmQG0hX2^awjCyP9wTZ7h0*ls04WV(Kx^iyq!p{j_A7`CtQLd71?f2xn^50t9 z8<%JH2ul`WZ45F$3kbPvDm?Zd<8SEBK_)*D-^wtHz^gHEYrlLi%Y4COeQmgjx!qbI zD|VP2r5*qIaO1RUjIh;o%+?Al71Jm=_Z>3eve6`w+S%R`q9&=Ip$Chy>@uaO-B_G@ z$AvEYFls3zh>x6qJf@|=p*IGZwFKmQbLGqyb8^L16Cmj2C!z4&@b)L6^YaC6jaj|n z#i+G}k4mMH#B2Nmpj^mbwJ=eW9gBlf4BE8Kb_gF-HAvBC>1 zwJR;+?O@xr69}70kbB@zjcsi|ZW5Z)=b$S;H4!F|;A&VTQ)^Ez$4)YKVCPif8`|Vm zaj+zizhR2!jr6&RUhKCyIp5}5&^ez*Gt3R%`pri?&!;%?==Xim#Pn4=MLYqk*1|L#+fLu%@T_ikAX?=`h}5>$+nAl?4Xyo8-MMjwK!t_wZQ;t9eRM> zaijS|$E=-6*PG5U|2hBD(-rXrW@!ryWl4cy^%w!f7{qa%=q*glaGh>5p>wsG(M4VV z>#T5!$ul5rK%0IuXjjuHA|Yf$5W^$&d$JEz`vA1FzSVaQ+(~m)$W9)5wsSp53XwoS&dE5mU zF@YYpji(xX^7zS{f_&RSuqTq^!2a4**WpM8T$^8wyiT$l{o(P>uBl-`yS{jaF|YfD zsMTApVLZd7`?BZO0|3ch-)JbX>a&mVruiQ7H4|%`gt50*T*cZsG49yGDH2~&f^;ts zdi2PK3Vcu+EnI?8j}IB&R>|yp{oq8HF{JzcVpp{M^>jUJx7AMA#E&**t(r((O5Y&H z=Pb@e4!Cy{o#|X+Vgivd5&o6?sy3$(4iteL~^}924Am( zf^H+n%h=~1K8EX5c!@9sW&j32)_him^2ZzJVY&EFHlN#>3@D$T$(aIo{uA^%Do##w zr8CnVK58Vk&DX5rW6l8CCbSfI%m;L^Joi5|E?n&7);%X~I5JjgIYow0-H|mDctaI)||c<4idm@2%K( zyb(Tjw0Ukl{(;Z04CNWX7uIr+eX2{-QS1H;tmC~JENrSRZuc^icLIaLsP78P`rD5uk~PY;pq?D8dngOC1xC|QGPhdF1uDXqU|*p zzsvSi?=)>lP33qxIM4j`x8{o}Mm?|iq^o*Zl1G};9IF*(F2*(W$X#7?T)Y+=q?XCS zTU(!}_;r^jNd4vs9I*YqD>G`^=@Z1r$BS->xuq+Y2$wjMA+x-dFg!}zHP71x_3A#PB513v z)}E9+{nlgEF<-R6r(?4eYc|kP+O%bl4cC%UGm714w0p~!?2+ra>&2-ZCGmqo-9{(jl`i*;^-8)hFI8PA{Z@XJ-_<1r)H zcPfA?B|lba_xFsYc|dy*I^z;+tS-Qz=a9uV(%)}_?&TCQ6zN8_(940_4xr0Xu1>Z(adR&3!(TV}4WiF&sw6x??z>CMOSPyBX87;xg>JDfEIW5lm2_}cQX^7 zjaZ59UiHp2d~H3UjI`hZ!zZT6)Mq9zDyU9+yj*e!|B>+*ZV+CH$-|8jV7lDtZ8 zB*LVUuEJ^9;lD5&Z#AlUX7b7f^x643+fm8d+ zjGH7zYBa};qhq<+zo{?^SUDE1m7ZfZ%~E7>=(**mJCnyYx8)t~x%IJuMtXz1-hl2) zSM20R7A1WKOFiI+N0&XCvbwsvN35}>@FzA^By_>wi-`s&p^v{BeIqfY1CJc%PfqcE zR63uet0pNa0n69sZHYANnya5=(80K<6eY)LL5k&zyn735Le@mC+DlK^PcZLUdcf?j zQXPTNKG89!-Tn2dJ|I)5>eIBlrLrAXBL=W1hBC#yBk^Z-C#Q{jSIfMQlTrtj=z)wS zLl>)-ZFW)b`PU*YbMIxf6YuH^q!_D22&BeKyBBX{;Vw2v{k+AEUmBAG>Tc1Jnnro} zj=IA5^t8>y?=qL`GctvMJXn1Fk=n*90}-YBX4jW2J2QI@ED)+`($WTG5{)Ms>>zI2 zKu6?3LkJJi0Kn}X13|kkg%FpS_Y)eOCsybF>-@<7>gDdWR=0J!9!PwZHZw1w}>WSb7lxeJ(#b zi$5opD`2u=$dXJs}B%TRl#%V&A_ zRh48G0E#B+HT(4W0FpzMHIzGSPCg-!fj9hJ5FE0)>oJ@3zVmD)bQ++&S(@D3t&_|S z{SeY-60!|<8mP!~jEh&vrtr<9_VWaMeM%YtN*wVs)L^yQAAi*fx6C@kS&B=~no)(yasTQwKg}h@>;FoNUFgVVeu%%K#Z%uRq(wmXBlJ*kv6w z(J(d;Hg2SCnt5-1O_*oAp72l^IZfePxjylaTz^56n8W7~M8|tsYuq#|DYaj2Q94qMpiMu|xAGxr!ViAP$-i`}AarwI@8lK%G0xA2}fL_{s-7z#9FD^=W zx14F*+yFcYg5a_=E^w(~A@_rlq6oUrzM{pekIJdpV=D2`odHt0v7`odIv$4IJZq-c zCxow@=)RZl*}`MJ^7RobT4(*ZI07+k*=*x55l<(<4>Ks-G?V=vGOLfAb~ZPfN!LY= zb)PM{6Yudx5ScroJ*Mt5);zT|%RXgXx&$hOc2zOfEDMw8w^sa7P55WwWxVXSM@O34O}wmLF$&nf=;P_Po-rbDJUf|ozx5o?Sgf$OW~L#64~D^)hBIzW@&~VE z9)gT5dn_f8fS~_jOOl350V7H!gwCz)kU5il?^uFR0f^snELSANdkaGJYo}cMGXN(m z7Dtd**=w~P`D5>76c29!kMM%~Qu{9VtzrXCWb0kysXfT?JrmI5vZbYaGrE%9wo9uO z`M>fXq@ITz{n()SnKM9t;-RzaOj1+hoP4E@tSnFcP$QE&d4-p}sy6rnA?qTcG4^rL zNP4`APX7JKHN@R-?#70zY6}E%ftmtqW3$l)*LPyB2D!Q^YOo_6dwpnP3FhNdT=**xWZT>3Z&>n9nS*u#59N}X-U1!Uzs5s_4 zW|!HB4nhSyo~ax^_Iw5O2->yjcb0BG3-g#;i)gZtyZYeki|vxZDfb-@M^wxU+1}?t z7~GgyEGbxn7n_$Pfeh{>roCpWBhf}a!YRfT$142e+5obJC3r>rVCTB^v66BV@zl;} zk~@hq&TNKmnfQPd+cmx=#LuW!Uy1Kc?|&moW?B?^|DT;$=jT5+ zE`drd6+_tN-9qdOEYOh!gUIc@fw?CLm)spD(~s^JuaTn)l6zE$1Qyk2NmY7x7RX=; zBEHR=2w$8%i!2gD_&1lTyh*>4$JK~de$APFEKzA=^n*g+;GJNtq`;NoD#hc=Hm#8| z7CzX;%ZbaeN`NF>-P-Q6(#bgSj>+K)J~9+&*I_o!Bzce5I*Cea1#tPYI3JhFl6^T& z&dAjF9xEjuKRJHS7B^V)%3m`Wq5ah1YU-|&a_SwwrDpz6Cj0u`Z$}r(=?Vq43(~S~ z=#DJ?U{@@~w29^g9eu#MBKLZtGejFS!w5PA3b~%1?&V%kpM}y4VhtB?h>rFgEkp4( zZUjSfnds(GhzqS1kqtc2)suJ7!)(wCS@DAg9@q?pFyVMj79U$QM^5n} z%`6A_lUs_*@XQdw!P{FSEgmk5=jEg2OI@@V8s0=fV=pErT)KEs*N0f5Th#9n%Bjma zbKmlxY>Zfc!(4d|!S-1?kKWw3Pv*DF7r!;Eub_hP(-qH7Rz{5Ho|43DtsiO)Z%T#U zV5&`QioQSJ;Ur-!=U~)My*4_AyZ*q<+IVRKtAX*g=^9AAZLpP(@(nhQqpj!0 z8k(>MCdkL4F1E>h_msGJrZd8?tVyH1%euX0GK*kZj{_OH+CpcOTSJly;y|2L>p|;G z5p}p_nWZ;UK=$U%NbF>mF$NT36~((n5y|6=^0t#swZW~Q1(p}H&!!#K(V06KfNvg> z5BWT?O*y^nA%5(5Xh$Z&49~`NHCS+p^=lBZqJYkhdN)z+f<{JbVXH!bH!oV_VI6LQin{1^In#@+j6Be;0$psz@Yja~W zK7>>bc@b;Atk^z>O8t8cVLImKWU(U0lc)NMxFjTQxc0lJ$Fq=`I%FMb-i^P0;vtmO z9JVl_0o~GQd}EN+=W*bL6-tA4I;Fy~dkhdk)mv=!{4Tr|bCOw@gPxe|!D3KXdHp)WAL(eVC^^7a%QLKt`nOc z_oxaX-=aV_j~?aNF8J;C>-Y|U!gC*Te=6Iq|D&Oxf*ATXzu2>atG5BW4!NVQ1y#jByP5-->H){`PlecEK{6BScc-r$~eI) zRX~_+sqaKP(@cl9!bO>xo^rK)>vRJ9+~rp7dzD*KJ+wQ;wiMMA6gmc6^95^v%qvhL zCN|XzN6P2tZ44I2`SP0da0%086U|3K^B>KihZ-R5q7C@YG@aHMtR?69^No)aVgx=3E-T&P@{?6U^`#jTdor8iK^3PJnsm|=1D7(w$N5MyuI z&n)&u_5)c_?Ut4vajmUQMg1wsai?F88a*E{g%(sE$=LGxLdkjiQX5N}QNdhS=c&f- zCAW#!5sk4y?QF(uQwg*zefYGbMn>XB%K_x-a5COLDT<|l(4p;5Yv;UFz|D^&eyy(Y z7+yQQzJd1PLsnYl$$40;s)t?C@1NV2u`7+NwqPH!qbQFJ(c(}`@7!W(jPO`-@3<## z;$R~ny);v{6{m|_GESavP>w3`V<>IN$9 z0WuN=-2CO*mun5aTO5K-Lt?09>3^tC)_VsB1Ss~FSv|AHrY3H#vG;Rz$Yp*TId1+>vud2!g%Q^nfa|)|())GF z+zvkW_aC*si1N<8jjniA8ah!X1k>nDV{i#k#l1XQC+;@;;@e0I=Q%OyPk{_tId^5@ zhcp?<#%26zxwdV~sBfNBfBE5Y6TF?=PM@Bcg(aSLs`QP+hBd>$q$B9x%4m4WF5iT> zY+U+UDU2s^)=|jkcE6EGd~U{WBsMZN4ru1&W zYN4N7V4sxe2P!O{!^KiN`&#JYr{m?#oF~3tj)l6aKBlJE?s;&J)Q;PK>?`Zu=->#I z65w?=N-}Oy@BG@Yj2`3%iYgX^|L{X!NdSHuGCe|OyWIvGaxYDO2L`){_fU2>IHX*r zA7_S`gho2KVym*^CSvv%I`pOHj@G9syp-m-YFK37{`D+-)4;1BGr;4?FWOrCqh0$v z?yV&8woTXaG^Inzt*EvuSN=+S?E-R@Ea0fC=Zu__p6@)FZxP_A<@De82D%xf7R)Wi zVne@OMaHP+|J_${q*$2Z;iyCyNVme!AeZKee4u4q#1mpQGq{zeR~cLqZ|+v%IEC|( z0s**-Gyl)-6nJ}POJ6XX(5L>OWq=;*TSb-3TasNx7z1%PbW3f#%wE_xJaN(OS1-V? z=*bi0WeRIWH7@MF7}*6tx8H_8y1Pe;vkJhQ$lHd;nC~X;4vIe7t$gjiK6qz}45{q? zWU!ZQw{qi^=in94A(&1QSJ{|xzto41#pLVN`m<@?zyB07uwG{D<@Ip7Bv0ju_pdta znw#^}Ka2YN%9IT#z_LCU=PtiFV+t0VvQbn0PZK7DoE5O0<;dn44uhR`lMR*_vVQ>t zxxr5bSiG0iBJr%XlF-Zvt2iRgUv}4&K^dV>eX4TbK#^-@7aEtckCK-2B0loNhY!w* zC48KQSs6U#`Ke0boOeo0rKKN&Znk&8cSIGu=Jg3MFmf*eZFjcrb|-!dVh_5Rg2>g> zX6rP|u1*`0kZv?r94lEo9h<9r$Y@sXMesQ^2iJHdVW20SPYI#D9Iq_L1GP<#w^bseON$`Y&w+385k& zHcvEL=g))?so0?0eR`*b=%-{*K$OduE#q7)cJvXITs5b0ZY4=`pd$Nrb=lO1q-!u4i@m}nGu<%Sx66^2^)LTa!{6&O>rc}9X{eX<*x~Gl zpEj#4)=nw5LK_+DwF7d?PE!AQslTr#&zVyA%AD8Xw4A|R@Q+zp43NcSoIvb8#}O%@ z6#MR9yR?6gfavy%Z6OSF$4c5^>w=$Gtk5Er5wBi-iwv9dXiPo7uu(5aya0MHF6@@3 z)dqxj)9}B);f(NpfGtZ>iqW|Eeg`gFA)pq5HT@BmfZGQT%wfDP1(y-Rr z=1UTDF-r6Y>CEj>oi0DVp3Ot2TylXdpXOxQOLBi>fUne7np2g>d5^qQyQg#_cgg4= zq|amR(vGL7vL_i(;oXki>gdkjNXe1bv4nH?L8kIFwFCcr7wKw=x% zt!&NSgwtL#^HtgZ92daA6$6u{q0b&aq}c!tZzqh#yX{y2h7?%!1#0l_vFOtzYCe{h z{qF{xU%~+XinI_$4{~W)#Z@5PYz&A0)362UuX=NsR5;%mrJ>3Df9vMs5(4;}G3RQw z-dSv&@~36td-gOiFt_3q=ie&&M;mOOcf;X0pWWejM@>XZ!E<_Zip?1 zr}dubvr3O#f(}CP`rOuxsc?}nW?Gmc7C70z0m}M=u(@_ZRxW9qJnuot-HJCAV4s&= zF?HV6_?KIiild=uN2cY_INp_(j*H&^0Rn8|4t)yQZ>{@ngrw)5ya=ALXBtCf!~=bB z8QonH-%QeC{L+=5f1pL`;ozb8cMr#JqhFOd(><*<^6lG>HG=^Z82NwN@s;BM?@o*F z+d(R$=j32SqvE#fQOqf{F@Bc`kObv;qiT$7$QiR`VG-+nYh)uI8-s%nkgb;8RlN{3 zV4Oj8DcTXk*x1Q`zn!I@DF&ce<5JMyD*XFt&m5Tq7Vrr9IEsy=gi=yKC23Pe-=5lq z=$%y*I|f>pk49hM(BE;8h7X(H{?f*u-%7@H#Fhm9`<6B1ukQKFKT1Hl+D*fsANc7E zf&nhOzP|tH&yz`+0zjpmTyo0VorJ>uZx4Xq=zxFuBI+c1!)Z=&`>pw*|GJ|e-N=uGxea#e*} zx@{#V62ahEnWW?C|MEyuRlMY9UrEcz(8uv=ud#nH|HtRiwbke+ijZ#J2>M66PxAs8 zP$bu0{oDZ0QrN<{OG|!t!T!-(;N1I@*JYxv{VnFb(wL0}uZYucJHCrBBEau8zkGUN z&+<`}f%Ld9?3}#c|KX(|U_MFR;y>j~M&ZQ)T)Aub;%?$qDj4V#{QP^eJ-9{&oW1Z+ zM4iUl|052o0<(Ru|67a@G90Or6MI4YXDT-yJUes1?ikgsN=sFd7I5{#gA@1vo~qen z89r2ws0q4zpZ^Q60Bv#wFMzaERNEEQcTxsf{v6}(Lhan>$SnB8KJNhL{r}(c{8707 zf0l=OTdC!OvXi2w*S!0M3n)D$rNKs#>)Op?y<7$Okfd(#-h}Fn%4i=CF!bI0k{rW0!>T)4tdNVaq1vw{GO=iXESbNU&T*O zts5~2KPDXOW>WhtWAJM zYF^wi$0KzlRdq+C9NuFCD;p+tZ;yksJ~A&Xx>2n|WYa(f6g)h)oT{7QJDbng8!Q0gqD zeO6<*#oS2>W+NQD?;Zv=hR4kEMCtsWxlAwP$^$s*q&US_4Jzf5x=`>+XJM z04N;M^<&)mJ03>xS`1B^{2ITl!SBpYFZHM2z0~{F60cb{bMcIONvWlnx;<5*r#|?D z@$#Mq1~Q6yIbV=8cS_Xz{WW_QZTENcN}%Rx@}=!3Ym5Ri#^>(AvZ`&c-cxx`e&KoQ zP)Y|ahM1(7N8{*d1aBn&^NoJ})Q+e(hSz%cq|5$LgPp6tg3zIJ$In2#UUCb!|6y!9 zIhJL8-Cu-A+fmzt&qVYn>h7~IC%BHJz29%E!6~~(@qK;iNP2YkqVfNsN0dOE-clA+ zyRX~^Ru#^@M;CWvEq$52H~rq|e&Kv<(I@kHfBzKQcSj66lwRIN5(?6iT=i7e2 z@~R9_mERu7j|jXCUi1GJtuyhIeJYVS;y_XZW7qXcdxOd+jM&U! z0Wc}7opV10yJghKa{fYW`)3tH?ZgMN^t>jMcauz~|2(ANF@S4w&ty~o{OaFV3g;k= z_jVuHmknUd#?k0^do;I>9SF{yBARkw*DsBcT{gC0&t55Z9fz?mLT75|4f0&H3Y(G8 zLAwfENoS@>ru^u)ii41rxQ)VQ(CTZ&z4oC747WIiace0>2sqruyqzq@S*KZo7f8C9K*s!Vdjj^C+Y~d0^OKD zJl5A2O#v1@?EKdMlKt-QhDZsUZ6}Kpy9-YO3nQvMGU$epjJfOUZ)0W-^EeJ+z3QU- zWXR#!MTD_w8|5Rw&4kXHf?^9)tY6Kt`EyCZQ@Vn3wW+?rG2K3?``0Z8rMWjAgz49p z=_RM#iqgbmDd|{rXS`d4l_m!Z%BM>RCu>)f!?QZd)@Gt{YK+AE32Y_{Rr|XGd#sX~ z2)j4>;M3PV>hZS=0RO>6N{v;Y(>S-ot!Kecv~dOI7yrBu$xWGVWR!Q38SRW)?3YiB z1AE}sRLcD*^6cyDD7Fu}rE$`$RI`$ZX*zmRu(#z@XDxeG85P(cS))HO+^ja(GNlPL zaNjV6GV6oJtzHh5xKx<;hVti_KQ|3QSO0_H(+B;_){UFVcd0Y2bn4`h7Uz&z%Lc*haT{7`ToKewhCHn^i=@l zR`GK0{|#ddBnH4R)yD7im*D;g2tpQ3%GZs5&=A~VAmXG@56uWw{%W-c0oT=RbNphe7j%U!p zHgaL>L$&nvwLj%$8UG1WJK)?FFM zdiwO~t-hP`wf86gvFgp6kxH7OW9`<87IMJm^6Ev+w0I)Y>R(?Ty-yH}P#Z+Wd#%lj z48lS8=;>>>ab86RIHIdc(nvpijC-OtF;m&MyJUC*^j`G~;jmzaEiZ=95l{mfDe=QI zc73i^n{fVIvC4bTlsl9480fhT&bM!uBV0BfCj9BS^@WkJn1=sn^!Z25f3Al3fqqKF zC+tj&kWoAUbS5V6DEA(3L*)!U;a4HeFp>8wUj-1XRuD1?>Y`_1;|23uZNRQqSBOC{*GCE?kH3~Mh~>W2%Al6Xb`c85xI z=jxc|Sd2@@^RzTOs0*gdWo(M5fu4@#Ta6QTSK8tDWNHVl9$OtJ0f zh`2rQ4=(!x_P7TsiekXzA+R&a^Ls!d6+|fVctER1QR|Zp`eC}K#spuj?(u_(StG3A(PBj?JzlT~J!Bq>ZmZ<9lWvJIMGqYq*;|D$RnM{$iPoQf!4Z3~<;%7wN-1yJJZveL$#_~^_KsYKNOO8v;5BnA>=}U=84{VC&O6 z`&jIb9Y4O*2bzD9Q9eSC+8!NP)>cq>s?6r(WZ78($K6s1VqhD;)_wGh$zm(vbhD5P zl}Y}pvVi?=z>38Gs(LMj$EkgK=VV_B_*Ui zmszgj9t_&80wJ_1^N&TLaY!&5KX>2%R!ayN7S0l%Nj1p_8J1qsZsXb0RBZvL7dg>lRoWD1y0&6sZyK1haV826;;dF&TH?5ysr`8lGG} z&u8Vv$I}|!E+PckZ{Y>MNuY~4TvdPRpx-m)w>KUu1Qlc2J_%S^fa1bwfVQLW|7HJs zeylPfF|Gm=?VUn|DIBPzAWW)$Pv9?gj6}E&0KXL@Sb_Y=)2zf5!G#YEz%W6U&5H(O zsBaPS9BMJ0fYXZz2;o|uvG@+0E*^_#L10;gO0ENlEpl+JWVMDnBpGilfq^`i&Fc%| zW(>osQ-=3MzW+03@xyUZV_{1qFA2=iwBfN1yqmY#e3l=tEq$#ncW%<*&Yi4rr!-dE zSM`%jM~t2t;ZVgo_+$y-e4OgUB-m=k|LBlsp;C(4JIj>2w^-$zOK zivQ%@BU?;po7CuScqV|Kq&o8bxy-c;&C^CS`UPORCdkAzu5YGXTuDiSE%K8FJvqZm zDYx5CEegLe@r8XSE==$=$zOvmsAP8^WO+dMGDJrey2%mRctL4*nRFQ29aG(1>fB7Q(ygoM@t7to@S*cs(?afHA$!g^vN zod?^=&8tV+hNX1zG2Fh(zp$G3>)MhX$lCivMZG%=Y^u-n<)zk>B=Vbc>qNkxeEPqx zq`r~@kT;3u=XOZ73u#cxU+2Bt9{bHDH5s6|K289doRHGNKt4SUDf{WXnIAN9@Oxd$ zHxLu9nyj5*(Ruh8^Q#xYcc!FWpr7gF$uw|Se40@YpLJV)1#m2l&K1)Kd@EPynaTxc zVvV8?d*)Ue7_~NvIm|Dhe=C(_63z z%3~gBZwVjIe2j{mfnu$^P+CV;+LD46$A~k5F)j&o5GFKA+*23DZSpP*Mtn<(hYV_~ zDh3u&OlYUFF`6+W-eVjT1y!qw8~NK+J#XXKLuG&(9Ok@f{c#{{Qk_%aoUars$b!W9 z7d!uFkpz4Mh^~2`cInL>hJS_&s8yE<(?P{AfzQ;my}pTDKq1Q+irz?4Z2$1Ew?k6J$wYE`57uuIqB&O-1)7lc1({8t(qds`BwY`SJdIWDLvQC=T$4(=` zp;!K0TY1$-AF48$*8g)SO)EKREt5B9z~B_4@pbY_Tgk-nbXw!<3-{hrQKVH>Mf0?V z2?SDDyLUW>kb8q9M~~XqLwgE8|58-n5TMi>RIluJ4ck#3(0Ztndpo{6HBXc!B2p-p zh{k@{&#wJm!8|Vb#@MeI5kmfRTf_cLU&`o#u=laN6c2W?13S+7r?)maJo9C`^0TkY zA&5hNzK&W*q`8MN;vQUl=_byo4>>>1$L%JBs2!O6P$FkqsDoh*-WER$!MP9)PqgR3 z!x76qUjHmlLQN}(6OD>#>JkX~Z}(tXZ87dNP3WN5FpPMc>brMY@9ah@<&8aQohB!v zqaiL}rzMl^A7Q>U{4^4*31>_6drgGk*IF8>uqrQLI zPE&fy@HK76d;UlVye z9kq{|mi5z3Q#wF|j|+B9ho>8g$5kv$SC&jQ1d|PYOgLX)g=<*kJfW|iXA+n4?Ngw| zMA3ROOee+k23)VNu8urd5JWodp*0+Da1mTu2JJBB_`161K8=LF8C^nR1k5#N%nH(- zvM@S6qLXVrcL>1Sgy~_m44Z0I((&kL9K}S49$(x ze{}5MSH+h>0$SzLo84^Y5DkEa3iU=~HY+F*-@x!5Y+`!(9PIYAsAC@DTZ#Fn7~y#M zSo5=3-+`O)r+;xwQ&NM?vc52@ZDEVSei>2-ig<=!|?mq*Gn@kS79ckJTsOeA_y^lWM5q+RA?VOD}MngWWwVt%EWw7`#QH%uMwo z|4s~%p9kr|2oV&uYDZY$$Vn&aXDRaEQX~!dkxF;?&U^Md|3}6F#9FER z>c#5}_MGIV8x3KcF_y!)eErjBhia~+j)ZaR-(IU(xM({Gla>3^38z46Dw4ob&=BNDmmP#KvFM-;^s&Z$AgX+g1!>;Jfe;(!VHkUYnCtQhdQRuFbukkE^j8dQS@#yl zy?XVkzy`~jxw%d`)#F-~C^rVlp2MZxP!qG6CbwliJki-Dpa*-GG7$zgox1@zTjlyp zOC_`!wf*6gPP#$QTsdzH9I5eu{FfH_g02VP$;Lh&`V++e`^s01lr(-F+PsUcbtV8? zeb6uR2YjBLtViE{OtX4#_IUCLV*VC62C^X=ed9N|vH_rMI5PbuMXY-=fN{)?bI2az zR@JQ!63U_LE@g(XV52Kq&;#kxv~d-o*9TJI&Sh~G;rT9~*R1@L&)&rVEq1R3z07s3 zS_O8s)3y=mAVabA@$F!J1TXA~%S;6^N?BbPxzEgX_+k)&5GvcyR0K9*Ss`paHRHf# z1jdRDpYF^IWi)k>7>p#wNx;^1!r>Vp{FlA?4^+CMnap(LJbR;<*W!0(UMu$V$dyA(#e8bpCA~hKRJG0-nXr?=}S}pim@|;4lpvTZQ^g&D;*oknd=l!Tb z{&@l6DX-T6H;q~CN&Bdt>+{wnE~cNXC{oyCFH7#{pg@#n}jNp~s_I-(|ptPlKW{4G_*0px}Jpun+<3B@GC z7w3Q#^t!J8(@Z4th= z9Ob<{a?GGPmER#2K7m^KQ>ffz2X5Xc=Jejay*=EVBup5o|KWE5W#|cbVWAgZ-5=BZ zPh~J-{hgghld1xaC+FYmqXiLti&d+sl<0d67tM23Z(T>!uM`Zk;*!0k? zEjHWg_Z6NVSVU?cJ?ceE+4#+f;xVb|ggE;jX>u|i^0xR<$6}{Rt6IotjN!uk-ecU6)5S!ka|wR|Lbw@kSH&Q66NVv z$`2H?%9h!hrY9RG;eua`yH}7v4t`Wrvl1fYx3B*xL+**CcPLTSK>%0K>T_53?})Gk z6yTZjY*-BGu6^t(zLvgWkq-_St$*J0%#Idy^^TWfv}l-lL!7L{`s_Z%$TK%=RRlCg zR8i&X)BPp9;HaDzAWA-k>|b3;S_S8^RjP)HCT764f@H%|!fXWVOW+KMrExN(sC-JU zX2QjKuxY{2Npc1rlUE3WP(xIn&zDXcq4UPQ9j~C4f~mR%4^MC#Rb|*piJiB91>&%{U#<)`T`oYTE8=gRo?;x? z-lEK%sX{%#H@dGa{7@`$8VNtayX<#@b2jb-=VHb8#<YWV z)lu%=-Kx+LS-{~mD4q|E=PVtOu?=Fn!RjwS+?c1g`ueeDdi!D!%asd(3?nE`aq+1e~$8#Ln!lG4y|PYC(kAiZpqih;b?!1RBkWE$_fh?q66lRN>!~N0(W0aqQY0LG&wre;VDDQ+z4@19!f$%d0A2K&{9perrRq zM@{MWVz~qH?CI;a55>HhO($EzxT3FYSp?24`N_y9z*nk|%E2%Xg3Cg$J?dPDlR$Eg za(1@YGInI1HQqGP&!;(b==EiOe8WURv|X@avM&92Zz|#+$+tIjSf@K%a6g2U@y~Ou zdorkCsI`M+WNHa5Qa&QitHn*;qJ=h`DvVvU@ECqeUWJy5n$hK0Pr<&!;P|67aKLZk zngLWls>m9rtcp5FThLQ#+1L`)jL;kro)=JB<2-z28eYJ9H1+9#r7w|a!azZ}ufa>x zNbc~Ar6b6auX0;C|FA+g#jCxFn>y;Ydh2_2o}&_^uU+F%zG7UJ;j5A^Oa4#3)G~XL zjYHeyWoj-&0X+2|$o)-jc5${JY*v%)naQEI6Ppfw2Y$)S#qTcR?2~RrAqxcV`AI&b z_z(Azrg|0_PTo1)zJ2-llL_mptn41JACK3n0;AwU``L7G%KMjmMfNMw<`llhcMwtR zN^(80aRtKj!00@zKM`RE6v#Pw*b0JxSJ=a=;f>=5<+o<4}9&a}~qZb884h4>-D0 zzp+Rj+ohS@6`huYPr>*Ma3Cq4=Q{G}=D$6!^5*8Yu-nIPD^4@hQwd!RI+F&+J()61 ziWD!ZMp?G@8{F^jI0H=l`V)3o{6B{v=~yTemgk6r!;E8qcG%>b0>f=I3)zrkHFJMe zyGb-OGGzMPrCCn(@1NPRU^-M`g4=22<}A6@U)}mVyj2_K5in_Jya1#8x2qSfWo*Aj|8X=|%5fA~~6ia9J<-;DC%59T(!uJgd6 zh0(CR&=Z`rXWHqPX5=~5!7SC?aogvc=~Gm$<0|_XxF2T_sWxAVc`Rl8ssPmxT-<^cxrUI#^J;M&_luBY_NT>c-*1a5zWT^#Htz^vGudf#HGsb@b49%d-n^)x znJp!ONfNoY?xkO{?)j`x<1oabx6F96_LfkVXMYOWy!~MRy3LZO#n$IcKJR%Wv&JBs z%9o4dZ3c}u_J>xcwAU9W^;U!>nqly-uHKQ39|-JZGM`x7{~7D)ZD84sa6k;Z(v)OaG$g#MqK7!j7D{mKnK#htth6nD^BpYb6ZdtTaM-`nZe&{%Nm#yv; zk?fdcMabh!>QHZSuZMGY4n10TeVK;xv1liP-J>;2EVPhiI?vWgo_mY9!Y1~*C0(eC zh<;dVCP(|iNF-Nje7<0*qV9k%C};3gPKl>%P&wGAk#BseMAvPs&DU+}k6g)m2Vc1% zCtytfbu(L`S{++VthzJa3r`uut*5WI<+{%nJT8b8L#i4S9;UsN?!;?ck+iQ!;~*qm zslH&MK#-HVC0ayxz7i$WaowU(|2){;A$dh8#ZabnwIKI?o-6Lg_#nsXwmL!5-3xqG z|C4pKSDAeex!C&{xy1Zm)WRygxxpdWSG!b$Dv4FZaf>_qedBFn8^^}#u$Q{XtAJw< ztKPyqRy=uP(ZE{BmR-oce;o!TuR2;@`@VM&*tdM=vxRt`A!;4p)NQ6EL=xp5t2NT` zUHOt#`k;~Ne<4T@Kk?%8YA4#je@cLoccQ}6P*e3y!6*BPG2 zBCD&>pO=sboq8Gnkov(b|IxNE8_hg}{i!AecT*a~T&H<^3M^4Z<;x+ockea4QS=`H zQ@)oKk8#jOjE=V_=Pr!FM!%=R=UalJUkN*%yS!PwF|S{uc3!9c#4%lnTUXhI_Ya$* zaPEfIx@hxjx&WISB6vr!IN}T72HO<|m#Kkzv zXieVB>zm?}qBg}ZAF>y?^c5gSl_??p#QNFE82CPk0fHzr;f2 zi$~-;Mf%C^`}+D*r=V_-{5Qznc5crOoKt*prb6eimVgQ3syRJk!7ML1__g%o!J^*U zFfMF@{Rr)PH^v=a|DmKh>_Mj8PbhEmw@_s{`egM9}kL2U|E4h@t_PRuaJB*CW%!`rqp#pSj>~G>Jp8fgvIHju;4d zuTMt3PQQ)iq3rxI+Mw5#p`*tlD!5j(Kwub!WUmikv*11hmUXyic!or8N-vZ604J1f zUw-4avF(a2fAfJSnd@Lh9omS5 zoKp8s^NFJ)$7IdxW);^7B-F`KJv%m;g1wXmYxkl#>83Z0^SKm(Hp14}^%URKOj589 zC4i%}+p@G~8THo6GHlnb3Huu3L%;D^yGf3S(I?P4(DcY5?RqV}uUxuR_Z|lgF_}Q~ zCl-mf%zkzm9RYaNABL@u#c!{EvME_Pzd1wbF2=tO_68%Z zk}d;8L_lKbQcAj{TLn}~8l+Tu=#TLwtZ{hX zC-$@Bw|{#-Wz_Gmx?QzvV%U(p4f6{q!?gT0^sLB&{+AE3fJnhq;xe87+1ngI0Jx3w zF!^<_!`qt$wZ7PX=ZM9q)xa%Bp^V#!bIZd+#6B3IsXZ<%L5Zz!j!1s(Jj~k>)trW! zO;ei*n~G-icVHDjpL4#tbCX3JZFX;Kfg(19fks24hur*ly`F7$$Tb+#++$E4Vlvj7 znb1}hP-3X*d1Y4T5H`9SQ81QZG;_=ZZ2OaF0yX>gya;qRcv?7>^MxJauh}28uab7D z(?f3?Swp+5nKepOrkIrsth(h#?Q4UtalQTq?)41(O!cZpsi%NTlk2ZN!poSC-IT4TG`Cxe78W;l(|5a*c`? zA1CT#XsSoBF5|m0SXC&0ZX^Ct$I^vvlx)7ueOa;oo!oT%v!Rc&pPeFD>+E(`0=i%$ zwMDU9W=f3U(%5VU2np%@4a*!q2j4GyoX-9!`;$R| zaT1ab?B>RR0c<9&qA%}%Qhx1#$Z1JyIA@%YxG8FZlC5L3Hx~SctvX(twiMY;c|Ai0 z_lEFpTBwjR+RMV@tm=#YKrEm;TfoDwrGS|Pc~*3!S(xWP%ukss^$yF(FIrG5&S}_P zcU4^==FKZ~Qpu3N9iv?*EgtFT%(RtiasAsiTP;_t7-&dK|H%kOL}+=X^E~j0nQ@!E zFi}`kf#=YsV$9a|MRZL9sC{1NsaM&W(6uN|Yx(5H&m$(il-jfx&@V_XiC&%#!=Y_c zAsB$2CxlM-maq`wqbOce$~G*25`B$?aj`w$w<`tOGSzj=v*X&4PzT?$%WsTrsB%&F zDM-Yke#-CCm#r{Xho!#R(^d4*jAMM?b+(!=kU^~AsW$AB`KC&Xb*aBMemnVF>>j)j z$jT~?e!R8UaEaq)uFYmnA6M!zj4Q4#W^}L>%N_&!;@!CX*>6Ka#kqP-zz8`udiO!=wBohOp+Wy=PPi$NzrF zC>D!MCS64YhlXL#(PLLoU>L(+#bzR~m|v{jHS=8twN?I7cw?oX3KWoS{xQr|`Dk{r z3;pwT3rNcDPeevQ8iZEU>AZ?3cpbJkBDBI2E+BjUHr+y7VY}tUwM%fdB0F&+?&UP; zqck<~Rr3D2nR)?8nhlKA>{x@8M$FH642LD=`=rUKhYH`9Cot;$6a#!zwd>rbB*nJJ z6$e@NN!PSw-3K@s^pxf6p!f1`Xpi8LgFSjP$1bv zW4{((3zxC>OLq*kxMoh{PH2VK&@nkOOXp9_c~^*TH=t!U^0se=YL6y`oEr>n45C9X?@{(z!qs+BWa6X(MhOKc68tSi&VZW)2I6J3fGc+Sgj z?#S!P+^tx}EcHX~+cWv{X?SX1i%xx@$k=CF8Krxy@AcA4h=hrgB#D^G@#tP`zU0(^ z$GrC4jVQDRY~cg_mv+xo*JFWqapDUvmQ2t}$29I<#@C(bovmH=mL+$+JuZfYVSSXR zd|7w5aq}}V0O}zW5OI-v^0h}`@g)*%hYR>x+qG#E(lv#h)673Ru{-Bfg3J2&86hMA z);VZD5jNSi(;*d3D^VFiIW=OnuJ0e@v^<5$>D!`e+xWJX95{o?O&AyLC}W`+$5Ukq95fQ4w)gXixhw;XcP+w( zM_{7P2HliJsImPnL;GGEbMu+UnrLS5jBqA8S?a=>aX_Z;D6*%Gd#opau8Mvzl2`7b zH=DdxhVH(`!xx!GNeZ%+t;9i&+e=MLf{wa%(v^++laCw1DxeS4r_aC~2iN)!G4?+) z)grC~|Hb@ilheS#xU}V3monYnJrp{bvbWSv!k?1cysdoC6RI2mQ?Fh^Q1i&e|(ktFww)PF_)`={<-CQA^8%__^tYkCRp#Uc9~i&92iMOT$uz&N4LB zO@fX`vdVcnzCvw1Z4c#=fa@6gwdPfHsv;B1xxMqQZ$0`+K;x#(&wB%W3=8Lp2jx`TFu;F5fl2%`JeB zWGKr;a(3`@LN{C2@uLsk6L`Z$ zH`X_~(A>D4j^ljDgyn3Zsd_ZC-Q^FGU7))2z^u$2riQhJ?yQc>pzt)8ayei+^c$_u z$iyp(T}-A}2@0cZL)C0*s)Ap?G4WR8!S-jDkZ<1OG?&Kg#J||xU*UELpT+%0WkOKG za7UeUnwUv(eiKCgRGHW-PeJrbRK=x zSM|V6V%OmEeJo;H&nw?PqPrdTa|hL4t;ll_|K-@%Rm0qpt8)Qj-M!ct%FG-mw!yu( zPR`MtT*hxGqDiN?H*Q|{{xPITZhxvH`5sfMc9fv)y^r~G8UE$5EdI^0oXqzn>}S`Y zDI@W5LSh~z7q*x6qK-!vOJ&Oytj6a*;JVZh)n9A9R)S4LHToI#@PcokdgVf=;_+b# zS|GE@M^>8mVVFlB-0q~vHDb-<6PrNIbERr*YT>{?>lCJvOMLQq8#J_eR4e(BhTrw5 z<;!t|oY*69z1e+VUh{gTAqD40)j*m0G>#YC!taA*X%?bb&a7ArEoOZkN_f7T^GxG- zZ@I8Bd^PuFWQatfL_t~v)ywH{^vLdaBk3P$&Ga9cjIml`;$#!W8>r6 zxh-S5sk%Lbx_fq|J-+ewK@Ja9#m>7?NbBl~Lz&6Em|=pk#} zVrHc17+JePP;5b8n}rO9ChHUR#siA*M#I%Zkpv~e%V;6G=AdtU;&6LS=?*s*WB?;R z1!t;R^VVh1G<+IHUoCnWKabZqZYp{s`@_BBTTG<{P+RV_7#6egkXA!-c*e+w{;U0S z+Q3nfj=ZBL#Q5Af#@*drHYX~R?WjVN>wQ>QSc{PZ2{r|Y@&iFHoTf=5xNcpmpyggO z+R#z1CCzu&7v$q=xMQ%9_}2h+R9}`uDd^9K)$8j@yo2SC(E2UXNBWr;Y`c6SMU7!( z?Q#t?9>P;gcbe>&4P^3OyqgM>RY|;W0)zl7Q%PXxRcqP(v{^Tp0?|laUGjaRj{Y*s z)Y;xtMR(b`&e2$jo5D&}Ju0HNAWjqYmki*%J2iw|ZN2#nQ*VgxEb*JiFAV2u9t#W{ z)nKe{6&$X!PpEB^^DqL&4yTPYf#9RZE(f1m2HFm4C_ORfm_z85JcCGqTFOLR8Myt- zg@J_ELAKu-BV%GX**){6;Rt2(R$QHA*ffhqqlb5x&xm~@jy&hMOF5rtecQ{7U36)k zhA5d(Cl1lEI#(P#KSK!5m-!obui`Y~lG*NGaO+;~Z6AlCEk`?GAb=wJ5FyUQIG81i za)FfVqHuf|aG7tQj4JItTL!4N_PYq=W_$>(p(X;*66TzzPjHYl%%AddTF$0$s$(cF zAPgKu!CNE?$3*#)2)CC=*znU0`f!%6mo4Y2tn__CQFljj9mJ>H)84ABXPBf?KdXMT zcVoS(8$_Pp1_lNU6{mh8+^8B1!c=$FyjjyXcDBaKbmBqOTvIpz`0*nZrWtVE6Wu!4 z^BSzMYMava0=Tbdopek<&!VHMpcwSwQJS$h9W*EWnYQ7~#p$jzpL3vVazW*?;BCP@%)&mgx&ld%U?|NoT*NAA z*&+{>0Eh)se=MJ~Mup+PgXLU2r~Dp!9n>mPzU?4k|ER8^tK@?Z=!02srcAViYVo@n z9*=0a*o<)9bj916>3=xa1=CwUcY4jP+<`SmK$48yD)(aIbx`oq)!aAcLxS>-}j~UO+5hsX;U^E&U z+B;1+N^MC?gwSIQysU$0GSIL|1Ws4R%a70+b>Kd01VEdpy@GC5hETe|13a!=%a|Kb zQ}kCD02@Ga@6`@iZq=+8d`pNF$h!d3zr5~2k*c8)T4A6_yGD|_yk=9d#L9QJaSxxp z@5|8({Nk}bUwO}SlbeTIS&#X@dlvWt%)GSyxh35Ry4DJKH9UIo+ejY!%^J?Db3Iw% z@1>o{)!n&`LYrlae(ZCl^7j)%$W}H9b`9Xm*D3~?h{GPig6THwze}LE$)E)ST}Y^> znOG$aJk}mmo2l0}OG1w@N%&y45p8m4A84f`X^kodo?H7hLec!>IiKV!UxuU}(%&i4 z=_BgPGAM0vsr4nISe|MzA+dd9^#=bP4))4jcQkK>#zC~N!d@3PR)glC4E^$~nGmD- zef4Ok$vNx3JY6pmeixMt&0|G&Jtv9brbr1VBZbiB2=@28Z6rp}y0COL+D?6@o^_>4 zhZr3@2InFMoOZ}cteBs;SL-?JO4$1}m>!7&)Utc2_g!a4;sf(u%WoevWRE(ftE0mV zSK!~9p2IF?R+zTuW#pN3_f8eJ#R!I7XyKbPoHtZG&9FU4-U0@vaC4qY%s;xv*-H_{ z;Vgg~Dv6iDrM^C0}0JgC8rg zyhM7xG?S2$+-g+`t z>&?KMtMB^+pUpw)ZWRs)e#r$B_ae>LCPK+c2;+jD{ddC

u<_lKQ?{XxfdIOHv!D_|H&Eo906vwqinOWyfC0pb_=^&y@>8&F{EH2LPUxa;fJK14mHv4!&moDkPNetR=DT+wWE$WJrOENpo zVK*5+n@~yc(b*q9*ZNt&ox6noD4K9Qd=AVgQ_H0N{Ko<<;^ z`@k7P=z3LyE?`J3r)N-$fV2;jf)hz8qNQ)V+%DSw0Fx3oWtEEk@z?1tI_{>ojj(nx zyguC>qZrg?ZHBFv^X&EenFTWJE~8+qNZ5P`E{}Oq^1)Aq(*F4lS`ZR$juwS`_;&jp zn}4eW7S>olTHc{`e26J}9}%0V!c{pdNB_GPu?^nAA1y#lUAlsU!t?MeN_PK68Tzm= zru}OyO1{Sb+Vk}lKUS_H%P{BEacAG+e&dcQN!9EW2*403B zQk$3lLawJr}FU3;z>(@ImZyNr1ip~`^6nL8!sVPblRDgZ<;Qq7{nVsJ@6eD zphOPCemE-%t!~_(Z6~C=-D~B25PDhrXdp|jY4^N+fF#7!TF~wih`L8eB%CF@F6`YWci>rxFiiMh=O=C@Jk3Cif2Y3X0Tj9WI zx2{*jse2W@7O6fa2+-6Nihs(BSV|C(ab-2;Sm)mjgg!8XgU#H|;Sf9V;?56wx{-cf z?F-{8l*u{%{Skex5;1-83d3HJ?fb;z`8NvTuuq^D%HtVKfEt|OA&A&^#EiJF!k)^()T%Zp#JmO12#VAeEVMCfcSQ@FFU zvlFxdn0=8KL#Z1oqa-^D$PeVBxr94yb{f`8O87Ptcs()XSAx6gc0t$SXMRD$G&&<| zF`~jt;0QWXe^^n+?48913rKI}!LRRTb-S=#KEL0GMx!Xrd=@_6b>C<4yMOOzE~6Uq z&t-A$eB%4e%o0%i5l@p23$ z(kxO+p8j-d)`4=W6pvNph@^d6ry6$pnZkL}rCWEjYBQgB_t)f9(-Fv|g}u-TK-9fH zX~?lT5H`m&3$f=VzRw$=)Ib>d4#VzN2>>tiUm%5#wHMwCNsOnF0Az-iy z;s_0Ok62uiX12$YvG`$*#DmHU{XyRd)iJ6YI8yvM>nyU^UE{n`CL`}M&pTQ1d*v`L z1OYMNtG@QaW4hf~93ct=0;OGjySl#0dnL^_*Xb)ABZSw72nI&k7B}V*2FzpMKsbE% z#ytAsKAzl|#|$lq#AYoIleTYTKrBuG3=x<4Y47|SUi|%Eo?a8%q)=O+L{V=`T_vQ| zaHKFWK3>h&;W11-^V|ZA1eiSZq(RpI6@yiSsn7WnDlCZ==?vP#gc84^9oYI*da+gb zZj+rH`Dvwx7?WLKz8;5jGKg&gxdWZ-t&?{+LQ?uOBzvoDHr>@rMSiH_)-k;nUixl? zLTgsaPeWsi5=t!l$vJaCIYh6OHz&W}uzG0d7}U3eNAvi+R4?r@(Mn$Zv{U-~yBcqE zWR>isPPbitKIY?{EVnC@#xOZjqjjMs5R4FaBn)^?t1az9Dv_PvoLLi0K=Z7Ek&qi2 z07CKlFE8JzZ6zZ~pR@<@mSQnk2UQ*;BE<(h>j@wYxs*N2w%#ocbN<4os^9+e_JK^$qih zH`^tf(=9y1IIF)Q?c>ICq&+J_6AC<-gI2GAm6#MO-6|!VG%tokB=ys8uj2~Oa^08b zRx9L25)7k#22>T^j3@o&0+rh>Xi%ngld&19>-wd%G8WI#USKfVek$EK;=+kClCNXl zU+EE$s8ua*>Y-#>NjWo5g~+P~&YV@eSY9G`Q0T>4Oo*5<>ca*3`QyTDZ_lvecn=KhfP#V+MQ!d4yEG%&p zTArKfs=bI!cb-_GM>kkyZdia8!Ix(7)XnG{#lQ`Ku$uEzWhyVFI9QNjxdwR;T#4>?r3|c=!qV87sJv|rJ|z~mzOl-r+8_C4R4S2^QngP!A;Y1n zpDJ(i#4{LIR;e7G^zGlQ@+w?IT$84K@K06=`E8Z2OpGyKy+JP_=kv$dTg_`DW_&%( z`53ZF96jcnIVJy7ufs^t#*#x}jL`uI5LTAZUuLc!7#QdeCdUap*-Kf9y9KA^7N887ZB9${CWv3y6X!oe(fCmV_hU$Fe@%&QRhuNy{_+UKp zt#q|64xa|{d}l-vzju0tNf)zV2yx)V{+30#MOQp6uBms6Qlc$R6padzzSUrJbpM@? zAC`x=X_zmgS%Uy>;5>6&?v>H+5hXfU?agradX%{kbXu%PKe$q3dHlRYcZ>_4hNwQW z%=9jWeDV_`a)np!JB#fU&ayxU93`@_VKG-rN*DbAn?m{(m3v35W{5PEp@np^Vs3p9 zzpK$ocS;`0T~Vr*ftfpvyrRjNRhKA6V>Lzu1ecdBgF8Z$jA3xD^SDW1x_wW*^MoO< zkx2EtF4WdSP8IPh-O79uFwAprUoM`^@cgvp0kHIlqmCGee63lH&<`|OcT)Pse7tFp zlWVElgcUd{0?e)ZQ(hMcPY>>0-HYsP?;s6M2zg$2P|hm7VZsBc1@AeF)PMx!W}o4= z(^8U3i{uvW98PEeMXtEN%k<61yHe@_E948#_HUm?LXyrYrDV=MGerXV7jV>ZW|oj? zOO<9v8X0FQZijWE%Ja7%m1Yedppq2(vV{#IDX#soy+X@o=BU>WpVQw@W}5-Q%Ud2= zRVfYpv{39f4W46X%6T5djiV=Alo*s(iE&&O2>*IH`C`%*6xk|k&TecLO#MOj+aXWm zlcGGyy)lUPSJ$@ zrJ)61V>d?{W!7n08#JfrCwQ!<)K;Xz{d0W1shdL)Lr9fsbNLO{C;G6)3^7-Wvsc$J z!v{KW6c<>SsQ#R8SEf}1t&XOXCKMiqjPGR{d6v;vn*(mSzpjAIcR5?jDAAcR1A^F zBFOkH15dP5bbLeUJyvBvK_HOm`(0lY($Q19N~ceDjL8?DyXB-1ZL0Ldgh>@r9S!|4 z^}(37*bBVG%Qh+{nEK5rm#=_wL=gMM1^3;zA2aipFHl*$jCXi6HZx_zh{@`x98nCo zhBiu~{3xRtBh9kcf2qtZISs2ab?SGHR zC!}YGc?bgiVX2hfL)!QJCO$k_Ac!iES-%RRge>?qHBo?6=40zex=OPe7D;bG56iBzOl{!Tr!(KICY!ijk4v@=MilKm%+MJ2cE`rpi(Q?sn#P{n% zjFH|R-4OcPptj_J_{qU=DDmCxL(I$zh@Z^Ti+ZI0f%@Nic`bg5g#Klg$Ht^F&B{`WVW42ge)jA=^3q7t3DJPoR>!{oHSO-d2 ziGyr~rgH#OrIHpZm--iQA-gp?(@4@a{*snj#4)C@FBNdiktp~!j3%?$=UbxOb0^Dr z#Nt?!JoXI)Gwh^{rl8!U%VbecPO_+oxjZcAW@CM^SRI8y|MhSf_v%(#p{4hp5zLxR zFyG1qQ?Q9`axp^KRi4|QpU_RzI>aw@sFCu3z&smK=46{C<7dq&qQs?}M)DL(sS$6A zkjq;VDSRUT{QbFQDQ5dMTA4h>z(TEa{D&bg&WFC?^;caIx0*OunTYB2r6#1O>oPkn z#5CM5rnO$&sG+q?ri`L2f?Jy913BYVK%k0ue~JwH+AkiF0Dv!=(tQN@pg3%2!rJo% zp|(((`vig^;;iklmG``KCY~X=j&Oix+=8uAN8L$$VxPR!u%AVaX%cTquii;`Q6|yd zGy?quP75U11?|k|6H!PUKW%o#6v-oRwcaCV4iO;LOrK9FU;>!hEcC2LO-{#Yyp{o zj2F8bY{{S%w&c)HqmGA1M*CdO7pt_oTpY5*Li2T(9)+51+!=kziCa2Imb(Wk&tKv5 zBbU18MiRvdo$osgJ3nWXMn4W;{GiIl?0sqXh|z9^wZPOZ@7+fS$$>W1WJmpGbVb8h zW~W+|nlC@xMAw~oiZ|z4YnJy{87vPc?|_BJw>mU1Id}|z9Me2&*~e=|BGB8kx2C{| z$!IC;YZFQ1G?QeKugsWoX}GvBf0guAsuGZ420HT*Vm{N7G_xJE3caM!{_?j*f)T_C z^7pfqivj_@#Xp`c{G#_TFi!CbjIZU9Z_PFG9?ftOR$3eL9PiF2S}ynYfXPKm(~U%y z2WLE)@(D3BBa(Rf1)fPI#XAL_h!7H~RFoQ*Lw}%s;T>?6JgFG9`b77lV`7NfGd)L& z-E-?~Ed4FT>&@|6r|{G+Rq~u~@IxV>?kdTnlUZN@VQI|W8=XuTX*#gjv{fGmW7g+K z@P(75C(0JVp~XS8|GINRP_s`r&=u)ky5Z4sXok*7)#b$Id3EGkE7NP@9YV32CW&8E z?~$_xA)Gr&Pv22oWRZIS;Ppp;OpaLRv1%dpne_In^bHD0a39BIOen7Q4qKz{6b5D~ zC?r6h#JS@jzMbgaRCNd@-lfYpxR~XM=CsW`COWp-yx;@gQL0fyR2I2BHO3< zoE(;hbkWW>>0SY?I5ri_X>}0jUl{4^l?3BE=g9dD3oIL<^w`$ z9c!aaFAq>tlfG|JvYGF%n?%;Ob)zV8Km00s?P}c^g{~AOWBa;{w-qJ#uM{O8nV*RK zqoRcST2UeeVFgndaQF)?D@aeM#$cfGb9I2zJ)R6TU`Q9MC$4n43>-0@<1b6dT4b49 z4hL0_axdY~7KE{d?93NmDJ=pd1!cZ8R68_2G1S%D~EzAT+bxF?onmjbYec&md-9ACL&)5V zvZt4G;*$bXW;_vyAf6xcQ+m$|YiiVTg$MYuGTo0Lqo`=;2h{z*IiX7|Qm8}^QYAlH z?u!&QzhdOp3>5d8o^|k~EZkwt9MsPxw)l~n0_qq9MVxdfEQCR3;M;&A%iQ7oY+;3C z^~EpUES`t+a`+Ng2q*Hcql*2bV&=)a2%B7}WRA?5Tsi5@SYctk#*>vk0E$HmQ`5h4 zZF4#FD^JtHOc<2SvG9trp9lHHGe-#E5gS{_SR!#-PrAV<-5rdgfx>$IlMo3YG9)GO zqj3KD86Ht*x~t#6-Q%9|O>Nz~UgKl=G^<*RP{{Bk9kGw#mE`_&jfmUyM`q_-xyGfi z=_=2R>YvD0z=iro+0ZeA*D$*}I$uN#=90}nTbs{Zu$yDW$g%DpCXrpIYu*pYuhXsX zHbcuY1{BM&%_?z=lZ!m)9Q>jJZ7VQ|d2nPHTKT7u)3NYhJ@x#5wl>a}deMlIPh? zh>*L5)&Jl+$MRSQlviQsRAIs2F8l)^1>hQSokWt`xaRlQk3C_pi-aDyPSv@H;o#s{ zg2Bzfs?+Q1BA{zo!c4P|fj@Qn;QF`$OsrGzm&eHwyvxe|)s6Wc1HY2TsiQu$pZ|hJBDM4<95}pX{r*1rI;-2&(86sJ! z-sWZNXCK3IhSjZi*-QjCSEm9qrAbY~iX6Gt!c)9^_FCQaRr(ej!6Ay=V{S58nbp#` zFBVNJXkTjEw_h0gf_qLzN-p7pT}Fxtmw>HC5tKIa&iCaCxbVI~qq=C+=^br@DYfUs zpGbCQMB|wGz<9sJqQwikOn0Y`c;=xbIX-iSD>D~QnY15*)9~ApH6VL4w7_hXXp)`X z!?EbnwM4xlG!mGuHJXX4;?$@CvKM}4JLyK}_Ew1?-$Q1|XL5&e zXSjhUi~J!fCV{{9m^?;}Q<~nl`*2Yw2W#A*!T#&9M|A94TRj?}urCORxHL+Y(Re5T z**!Pj=y~7tlfFgQL!UvSd+>oU6N51IIV?wg?mluD&lQf>$I6OrN0=3BjEfWk**Ng} zQhk#_#aQ%QeV`@78PFIDM;chh9}7Qvp6&HqKQGVh1XSlqwFC_m6Ro)lu#9}y_FI*l z^(aAwwsTSe4enBZJ%b~*oE0sal|7_10<|@`y-s#>wJA7Kpi)BFyBZ|!b4m-5!IIy1QFKy1Nbt(%lW;I_iCYzVEo>`{RyrxO%z!?7j9{&z#Sk z^BL{NC&%$t2};SyLhWBEb-4MazQtlr9VEj%!TBM-aL16b?-TlR=K8VU#W{mNnAsVh zTs}4f^h%yU%55>%;Db%CVPsphVpI_BWpw$Yo=Mh@CQwzmtIywQ-(Y75L#-AsYx(3` zq=8u|ikdbbG2>KfkLOWL*HVCkFCKp70Ldv-)G1!*=2AFT%Z~)*Zo1Q?l6i&SU>M;7 z5USPb*cAQzovt8n8)6H=yr$>D`QX+z@R}wRNcGp4_dLL+)09BM-bh2e&wO3bvFLptUPgYK;S)A=EC2TN?$FwdulsA z5=d~6kZzsGbzcmJryiHJK&v;{gY9+KQtzG8Y#xF&{`U?kf(b@SNx4Q0@xBR%l zw5VY7H;&&s#sa!=8)%<0ix>9$-da`@K2$mGh-|t}(Li*t#VCR|dBMY@zx$ka*PN*s zNT;^AX^PdHkxNVqH=LgGw$prZ!to~%F`P1X`;J;@M$Wodg0i>xlw#;NI6_E*SNKPg zkpghgKKy@yAZstMv($SLr@{Z*&Vut>kMYp^g!dc1sERQ@5s@U#Bgtei1xO+>*4^D* zeV1*Q4#p9_1=wv|507yhf&WD|Tk;Lm@Y^0J5&UFq%7{Wy68MF9+|L7+I*!tSp>0+J z$BL=ZWecUz^F%1%S(#CK5g_fqxcL87ojpSVMYCDbJ%F$C>P%-P0aIJxv8St5+@gu7~ z_iChwd0ksYHAo1g;@D`(#Xq;C7)~X{!eh-ThH1tEG?aMMVgEJ^ug4SZekDt;Tmt4T-bDY! zv`|ySQfK;4US4STS2UX8D_K9Lfk|adul51}k|d38XJL`#Vxj={k`h~4C7NR`&(B|h z3RyP9>6IbiXGGD-=jGpkB0M{sm{&TCK*b`jlMut?hpCjCiuL*Wf!w3;fDGSH9wS`2adPpM|B!?-`Ak?-S{p-<~Lk7YG`k$4mK(Fv;Thx!O(`%>cxnIEUKAAVy) zCF0Erzw^i#WXh;EY0M|4t^|OjeEZ&9XLn;GZPg_DQF5WjQkVT{(VG*ymijYd3cc_4 zY=eaEFreHGr?^}ZE9Eszp_DzB9?5t|I86{`FnvUHcf9vgXWfZ^?HP>==Ny>O#+w=oel*Qq(`G3t*Xs-xv~*@u$9N`G1_o7 z$H;P8ZIn5-Mf(KXH@aWHMAPFj-#=P_KP=`NdI`25WSABIk@wbk?(RC3G|_LqQxpzJ z`?JArIt$)t{lwf~o}?deF%>_<`s5=0hX_x((sGnk*=PeT!#d zK!U;%X3vuFyF&VJKMau&6fL}g5s&6}vP3mu~o%_ltf5}-E?ZF1fO~^>~>!wtbNawoBkzB7(1HO-i&idI(SH!r*w*Oa~;NMO= z>$yX<3hZB(*U|xaTStor4K8QzHJd!eiWi!)QTO;pyzu%1g#`{UoMj>f9#W`83Pf}0 zxQCLHa{mp1xWSj2B6NMo_Ai_-4C2#YSq^A0{4fNGDV9#?FsZLxV!0gfwSDO*tYL2U zHR7jyF{}R87qq_xU!${C^8GvLtz0C9;};VD;zh5KiKpO|0ix`p!mF!;Y2H*m(@y?l z89Zqc0`W7yo}e{U8%yXnviqSmU2`}%&T41CND3iUKaj%VFymDJjq2a4hy6KNY50zK z;s}3n*#E33v}eG8bRU-CeoN_w4KMJ>-Vjx3eICouA?*3Yt6|P0Rkm{L<6mKSrdj8< zM{?o(GQB{BNv7k`3WY*mbm@rZQ~19g4O%_ozUtvZuM(x__4!z)9(6W84iWkrFjXAq z#9iyuj7p^}XLL*8&&gGVetv#H=HlWq9s4x*HF!9$euhxm4O3mQF%d-0qw6v`X4t|%YA51?AIM|Zu#4R`9~V^e}54V_P21^j3@N!&)K{9 z8oCzIvO)zn$nIW>uXX&=X?fk@VtrJh7E@(O=5p#6V=3KM;dU*xa0dG~)hWH>D*I`ht+EVrq0>)K|d3-tTF>Osl_*x9P$j)%SEoL^=| z^S;x~IPAhH-f%g_7k~{zpUL^_O4RwmcbK#mF8r4o2L^8D7konWCV`naeg2I7uebDn zZqRG>XTPt50H*=V;{LDYAHWK2-b@$O+_3~fn(v;H4SSu?jtav{ergG3%9J1~M;5a9 z`~S)aWDbi@zlDhY?|S&PFbKqd?`Dr-OMHltF(3Tfefxa_7vKL`-#kN{!_R-+toKt; zvgPwmA~!181|Mlp0tq?D*v}MhXs6T_tolYABrTkFA=x0=fl8Kx54@?I z*-xS$!O=ZO!^IVhD^gEi5=4?&Y7bO5ewc>6&G2kV zKKCsrHWA_7+GCA6`8V8G*jPUnsl0|JBPf3aiN+aXaYcavYxk}kps75Gw23!sV;e^mTW5S5-$Q5ZH+qmk z)I`L7JV?SA0+YwHbOj%&R`jP_5=?Y)NDl!<%@~Nm>(2KS>O9tX4Mb9757+tySjqHU8sn)PE(vT_H}m>LyGzlOkx+?suJKnm`2uB<^5x~I>_Ox2 z+a0o;knYG&UT2a&R}8jauHJ6}nN%5aMgw97@`dUtqFyJp$Mv=DRfs{zqx*Z8gFnxB zJ+E_e_DsgO58SFkR#RWrdy_H#+qUFA3+jYsonPXEH57#wy8|Z z`sQgueskYhWk=zNR_vF>cVx-Bs~~F1crIfaYEthwgeq(RgYGC6CJDRt^Q{%6fuH7s z)F+1b@7~Xc&FcX6LBBgl@aTmK*7s>W+kc!bu{X_D4AgYcEF)xG#^KF!)gS&=K&gan zDCl1`VI+mWWUGn|dN%c+W9iuGqgQxw*>d7K)`x$al6?Bo^bamdzBQU-WBjR>p7r44 zKYhK@d?h4v3i_JHfLT9Y60A6OX>zYM-uRF^vIiDjhUG2)_AbPMdQBQcHHfb++my6Q zg?2Rl_GCB)*@M3Omt5e$14GsOC!l`6&Ed+%dA;YtM7tPh6fucpZrG}TFrMFuG71Ru ze0PHYKT^7E)E7JY+ho*__pyXJmaNQTYnZl=1{1qVtz)qrd)iyOZ|YydTR&u zh=m+)dUN-NQqe_d*5KvyniV%%5Bw?G97ux$J3N9!d9DP_ObR2pv_J)0gR{H&=2rH( z^KM9~e1o!1dPUa#dT@&~6He49Qy$#y?&Rv+B*=Oq0_Dkz=fC@+|0&OYf3SW6Y7czu z`z@f_*g$_%`uBnGKc9)f3GhoP%vY;*uQNqrG)ZYRXK zXjYf!&Z9Ww(5}rLdT{g4)?#S30`RoT0=Myw#iNngcP-TxPQ&zb#BNoEEIl^>rLmfA zyu9?kGMo7+@qUw(yd$I&RSB)9HY~@IH z|6@_^!PrlbfD-XaZgb+JBE~viq%3`m)%C{*4olMc5!ti`hpQMEw*B zW5&)_dMpDE6;}+!Dj@Y(oPOA~Y!xKBq$rMT`~{T?oNts{<8it^BIG>`mmv&8gDD@<@M`otQXF=? zP1+kwWDR5T$ijq8d;&9>s}K)&Y0p|V8vQBm>Y4VCvY;xW_l_;u^M5@wt(pFB9bL%0 z`7b@^|E{Cgf7a2xBy@>CtB@E9SuNO70tHYv4O;=UYR-|9HCd}P3w>( zbpL40^yb6)k{vebZRr_(0%lq0;s%kuv^b)Zd4UuHG6_r-&S&a; zngiCU!Z&+mB)J`SiUW>&9&q=ml)R0$cnUi;(NzD(vhsZGz@jbTBAPBuMasCFLg(!tM6k&k{3Qpeb>ZVPTsJJmdYl+5h$7zBc~zhDLp zeJScmbJ>h>Dj2Yh;DBu;Zibe4(xne^z9tzk&eY?zHuG>jpGg{95mJnRIP7I*F7))y zl%p0+V9AZP>_}LkaK3!Iapuun%-%cs;%S+H-)(lYL5~urs_X24$8)vXaMQ_xUv}>4 z3Xl-^I~OskK=11=Xu+@djN`ND4d`xsxyPHMzp{iIbdO2=p?B?<`B_C-kmm)DEeE%# zc_TFRt*sMl;~7lVWa6j)&foh}leWbFUjf&*cHiJ{Tj$>x7<_g{_=Bnj_k}CqejSG` z62OQ?P)@j#2cMX~8LCp3Y8oZ1^HU`1$S9PZnj(?a>LIOWous}Z*}jbe{!Z>Bkb?a3 zLe6A&bkHs zj>}NMJK(YDrYknlo8)=~kqBWhlKf3mGmG@|k1$gMUfT$rm8hDXgE7OD2iPpaj434@(k(N`TyX zonJfU$yBCI`}z6{OILEywtKkfp9XZT$yX}c9dIH!_z0n90JHVTS&Thznq%L_yw~#^ zhy5IhDjODyFlCJjkUq87Rcv|dL#~zj#{emVk4nrb$>X~9z3bE>L3&oPzrb-F^kQ-> zgp*&#Z#9C_53SS`9R{B$jnQhAgG#aDO9U{Zl$9JNcD6@vc<6oO`tJPISZ+R@ zYh}X8H?S*GG8iXxSy8~mCYo_n*x$rr^3J|S2F?ipFfWq6nE#C^|L61IA7HnQdmEtm2Vg$@1u)aqE4A$u8X3jT z)PP?P+l;s^agJRfUWBc*nnE>Wk+-$-Mz1i!?f%5V& zc+MtPcyE6kNY-(R|-ImTx( zCjgS}1mN0!t0%PStB^&AZnLp)p~iz#>P>k;Kr4$7B#7B4^qkVu9bl79j_hgNV|%D)?TA{tnjVg2HPD3R;zJ| z>z)Xv$>OB!eYdtt5V|1D?f7wc`si*X>g8aL^jG({&s9J?V0u@)AvXgGWN|GU6p5Kl z(`7mlq@=k7fxLM1URCBY3_#;0S4Z2-&h5++L!&bGydQii>Gaj+AUAho{w{Tm40X9l za94BgS{Rom`W9u51>eor6yU(vMgQ>T^@P&%y3OOHFow-0leys(se&C}&9I@~C-E7e zsAA4jDUPY>jPO^hzP4w8^HKy!f1o*O#+qtaQ~YL4(kM`J&0Vd zBTvS9X6m$TFU+7ibR_`o% z`nZng_DyDr$CBanI3Aht_v4MT&fZl)&dIjv@fhrrL^Od|QT{Yh7Fx+4)RV(nXP-8I zvMNVNBLo087#)^j_PJ5Z(i||hL?%$-z$g`~zOULr#5fZVoB<|fK;Wgv+rlzL^RuWrJih>wcOu{g zI1IV_{z312<5hZ2pPwJ+suYqUKUy#9!NgXt+Wit-unr>k-cnFCcfL(9o3tFUN_4^< zAFZ&l*o0&zqot$ZWrZN-N~z}yk#8>42S*IaYd#RZbi3HZl0ZqZDx=kkrg@t#j3AvC zO&PK~3(PX}HK89~Z2Asm(P3Axn#nFuxV{Wdz-QT^C@Xnwxm@?r5Wc+1@q?<`@d^|| zUZOlD3*7m6QWhHZ9XT^lZfz)c6vsD!#lA8!w@^m^L|qJ%UcfHv0WNDe{2;LRMk@C* zzy@nxo!!PzDN+a@D92FO|McL?@nRQyG%i@P&9U%n#=FSR zG(LjCKrR!NGR@~$fKBQoheJG7;@HM!W42dR8OadeQSRosAjO)e5Gn9O6~2Ywt12<8 z<9bVq{7&{GL(VSv>^~ZHijhND^u2|qbp7tgVIZ?+QVCOsF{cVD(aHJ~{dQg>(ffVu z>kfV7kh0kQ#g5*Ip@Lcv{0SsE82(tF>k&|p(-zuL0%m)0B+_5i+D+XQ`2H5upj{xG z9s${X9z~C~&Dn=fSkPvH=|m0+G(oq6D}^sS?NWkEfD~*(%ewJF_fuKcgnCKKqk(Y1Vs+MWpblaTuk^WJsF94c>bYE?ay{hGk%L+>L}& zOu=jR$MFn&=?@T0GsT{H@h(Z^$(vF{4xKb# z`@35*5HZbJw!4(Mg;{0Y{v8B)QS;*SG|)qNmgy#=2&UN{oa&G1jQFRa>KUE7wUE0l zsapCntIcAQC?OFUH`YF9`NkS2rEM1WTi_e54jTEKikZ1yzt%Jc3E`QyDtJsWhb!F%@-Kt& z%|M>O2vj>0a6zk~dcWlmas2vmkqX!l) zi6^O^6%*neHy}84tVqtv1cg;$VPs{?_@?;k~9L<*{Oj!NT`Zd3$D zEZC{&VMa=rSm8v&ubfB&CtxAZ)d`aIBvFz9+%S64eTRZOoE?MYEtT|&U!!j8I@hwW z=lEnYlLBDG18%UIYbl@ndleS{f2;XArzYbZ%(|5MaQ-mEhh0PWK2@j;+_h7xmt-<) z9SeLT=bRxSI?d=UUc6?rUG*CE0t*Ox9a6w+LHz2b%vk%C0mjDr& zqR!a`ie|Zsu5EWXck6ASoT0sK9KBHdf}r%o`Xj0~;n!`O+r<5DIin2#gwaJ>F^UbS zCr5+V~CJFdAyD0y7JaY1K zl2O;%3Se_$kXw}sRPM&T6FiY$LOY)ll2^Wx(|k%q$e=;XzjoT6v%&6AcsPUsV@G_Emqboe z9Y=mdt4TTE`16{h5Wyi|c6MSR$KdwIIsI7UnKf%-{HW0AOJXcrcD2-CJ~N1{YN=^@ z&Sbmyn`6PiLHjL=V2og_8)AvXX!w zPG*qv?j(fK!{9?sw&d-)AcU~i>~|#g*V$2|H$V7Yxn7O6>PcSYVWWQ6ilq_7_^v7t zCsY&=FgeyBfjVB&7LuE8&mP3lOw{O~w-VLn`W6Pn0^n2<4767r))%Q|$BxzfQ1d|x z+q~PJw&QZTB@Inxkn=E#qq(J&z+-QxOW3AOvMSQzi32j6wD<<|3h&O9_|fkH{4a+! zUdYT@>7l0a7*&PF)dt z|L>%Y8f-stT<(JqPX2Es+}lixji_;NW3K6QRu2UP@mpTCHo+r^ zCjk|(Q!sufiseD~3o3liIO?flC*eGW#z?8Li_6eN`Ra%cWw&Nc!W_lWYPYN5+7Ihd zmr|XHM_eo7Qt>0?#(e>v!?oRC%y~sY9^D|XGH*7kW9#Eb^Hu)57w7zso^pCezLZ*> z7XOqm_+&qZ6@+YfR0XE#{=O%}5kQv(@t~4n)d|jXZxoy4Vy}`PcUpYPZPh>!#7-gR zeoKjUwe6*tCN_JBhYqthTRSljwZ47PYjPnP{6P7(C6UpfBBomQw()MUwBl}&5#8{t zYFv@nyNYyZhLu`Y>rT>9d73L}X*}F&#x>RcIS2@|fVr_<3K5a(#h|@wa_A(&BSfQU zEy0-v*?Fol?;A@clbD20JSi7`y2epxMvG!zwGVI?SP0J1_I^$0lTN+GE@eW}^idkj zl+Tq_HE4s_Bv!2F1*wwp!(1P4FjL9peofe$!78UT8ZdVpwD_rvZM1{YTx~M_X{N%R zdalajG(UFWOM{E8YUTk*`_7xpX;h6PyL!9*ioTu>;Kj`5OZAeG zddHnm;-sqkzLW#zU}u^W#>oD+6y zCavV#c8rXri{Xn#kk)Ekn@!$jdHQ^RBxAem$C{(|vbVnNbjeAve8MX9b%6?Fu$siIq{8I&1k1hJTa~BQ10akzu1Yf@AAcz{#g7+wJPoKZH8u4x{5;fH`1e~zjp#D`e}uymJDPq?^7nz6T6uv% z2@4uF5wbbP(K*~lT z-5!oR^=0YJ>*&Vo=@-wD0`FyqWTd5H%J{55^xlIsN{w$;VE!=Yahl1Zck>;4l3;tz zFYNi{B3KD2yj)cY#N+3J-kJQm&j-h99+_Ci<$E7lX`A4L&ay|euqSCcZ}}JG?%rTq z)kc7oI_mTjJ&LcLdc4Hhrow{%u-xe=?UZx`@L4h^T!jLPE4`lY$ox+of1Q%r zA}~AL`;9r1vB<%c{FnA9TR9DS%EmRU`tf+N9}`dToTTrH6wB%Xz3^5JvWZ z%*PPXmTAzGOeZ}}iN_jF&&MAHZ>5GSN?NMttpujgPiZeIt*Yp@%igrZFDuNHPIOzI z>jm$-S`AUQ*1z0$Lo1%FN#~IMy23Mu0jIs4)pI)^Qk@qz^*ea0_RMtL%YZ}km@8~jwh zs$!I4_s69~EQ!$Ge-e&;A5+S+32^-&kOCRcaC&f(sjJ`&&HT*qgU_lAFl?uHFdylY zVAH8cAjK7+zeCxa{FtXeS^Q#fFOUzU++%=i944@0>aGor@R#?D6ZJ(@YHWU?G%Q&m>D-2ttO_j`w-x1;}n=u_JS5 zr^^f@u_ruoc1D^;_K)AgaJW{zpOU4r8r*4Y3`55P5oMzt7vXp_!96iIRI=j_et>ikVQi9Er#t#!#SpaGWrmi7`Ws(Z=mONTAfn`wpsBaYm70IYoTaKRb zU8g+~VHJ$0#jAd6kxJaDOC z@8a)LPjHCvCALJJF5H|lx+6G0uD^n+Xs$X2AGjE@d_6tu@b${p6v{@Ep`~kK!HjR}p)MgJ5b@5{am^h{~A_`hXUZ8WmROzuumIxWhDG@8a!W>IiFn z$7hhlT!rSsu2y_F?E(MLM+gHdZ{wM>vUwZ1W^liT_Fa0H3kW z0NJ{++&bL>JN_9^negO4&sU-@9{BnUrbr*tsp2txD(BW@{yotA;8cwrt&%pp(htc= zO8jX5=cStJ_y4$ViN1e2$4fQAI0vWCba*Y8Z#?f;2*60%*ktoP&_J5f7cCMD-nAp2 zG<`2E-tz1H5_0>euS*Y2CI~J`w{Bgf#t@WxMT_03USt39l$b-*Y{EY;HlK5c{OG03 zH>XOT{TbJNhvz7YJsa;}OPB|P$^r@u$}h)2oHJHj3XF4Skq3+Jv3#4dkvO4Xs%HVc zX$*$GRla{XLH6RO9s7e3g%fPA?TMlbNAxiag9t%05TZ3wsoL9``y`Y0ZEF`;M{qo3 z)@M8F`E)QfBTXDTC*UYOtbiv??0NzNMgS!{dO3YM-Q_ktd0e@C)WG;*;7`D*d{)9vi9WZ3~%$uq2(h7y~#>RyIU`}?RY&NUrnyjo!m zSzF|NX}5Gd2)Tn6kUkhH^>vT@MS#ru62E~oXE0Q4WJ*B}ydv)v;Vm+70ja(pq=THY zoW$)Ekx*IsRDnX}S}x%!gYq>#k++6r0wUtSfUswa25?Pf{_s%QZp5^MZtu70F8zRt zeyCiQfL$w4A^#1&&hrN6(r}X=U!5jd+I-iiSi9%XeMNHQf30i0hv8H+*XI zdjty)F>FVbHBFJ0W=*>S43;B-33DVwfwxWc9%j4`r(GRE2Fs4<>}DD6@R*$_)+dM2 zq6m`{)16E~O9dKA!#+c1`kUrQ@oNZPD>f6fOl5hTTdv4(Lv@)Vk%e@4h%DUj|-<;!k|BOjga;Ie{v#EV4la z3LXMGqxL7A{F3cPyN?h}6RU2@C_7&2CMOGjmj1WqN}*v`qI~eEdSQ8?VBi zu2Q)bgwnxjtFUA%kU+M1T(^x*V)H>bNUq1N0x~P)R%4426uf@%(?a03S@@E^?-27b zzSR{Y#v3a}QplIpWY?L#XZ{N;BKEpd*zd-%E%$JNg+{9NB4>XZ_G3`BHkXh^om<|$|>3@m}q{A(0NhYO9&eQ0=JN@1R z30dw4UPH^f-X;7~{KpZs0{5B70n7lpIWqgyi^HW3G1IYz^36aV4r3zdI3YTEDMasC zrw!qkQa2B6NGNY_OHJn z%GMhSZf-4f(>dD%H3_@Z1rQ88%#@0Yebkhg3KR+HYJ%Xzny)|0RV57WG+3(iNp5zIZ*3!%86cRZ zu-YX!mVED?(73l<8;p6o&NyG^kO%~El&vf|YB8cS&Q>8f^e7(k8J}i(KBKN{Hrw>l zCCgLFN#DBHYKY$bXtTcDh?8p<`mo36EE4$SMaIwWD48trjg91M7YbmOq03wredZbK zmD2bchhFmqQL^gSdKjfS<3 zty@>6sWyKQcB#PSc1tSQ;3~)o9%E!GPUZvD)^&ekFZ2`@I}i$@6?>foLV1egA6K6- zdnJL{MMWbg%~rCjA-EJuMdrspuJ$&*GqwqPqT26p3OxTN6a!MF%wv+$&jvsPeZ81( za5VKA1<4CoJ6F@L!33^T^HVo9+q7%oO2gM~YY%!b=z^p)vcU|J{z^#fXQ7smG~`*$ z>sJHG%>rvcoeF?%;2BCacqE6$Rd(@UB-vhs)`$Cw??9_0%5uJm|KU!CP_xGsokrtrbxo(A|8z_F%NdyFw(vXq4>dQCdg2!&YZodB z6}c2%kXK8M9am932988Jr;X;m2KpaasbNw$EYUO?ZGDJ%T;Af2W~aMf*vfr#I^_09 zT>v6D&%0$BjT-B~+f1*IPCq`tAGz6kb`+cwI)Q<5OExz@y!337YHYxbC5V2hgktl( zZQ5aLf-p~|ITUf?7gsi43i8_;24Z+y2iK4Hj08CePRNW-WOhMSc+v38%U`|LHhBsi zZV(qj*|MDMsHHGsZ6v;C)M`iW=y|xbA|@J1fo{wkT)Aa)KuUD)GQ+ROf$eJE`NDuA0$)MzilwV79>&(Yb z)-wB17`cMEH4+kd6HoN+f^mukQkNFaaa}K&Myp@RAQ%+c9~>&w*F4=yb%r_cIeX)~2!ifhYUcApY#I{#`sOHLMGy@5r%< z*ZGdHpXKw`N2IvGg@fyXxa0_T7%avvAgq)Qa{2|rOTcNer$^dL5M^3@P|O9W|f@ntXuRm^sGz_OZZugcX0uj zavCD^kNZLsYTUumX}eeAq*MPHpFT`6fBvm+6_$_COIYh%`rzT3;d>5dl^$zOU~CSH zO|zZ9;aG)@25UhI%;%2R_x!?ee)PoMM9x$guRmeE%^AP^>_}d=tzz5j*8!b;g5D2K z&w^+h*RTe~Lt&2&Q*6|3D1C;bqefpQ2e&p{w`f7?fh~0?lt`^qWv-%Nl`{MWrq5q0 zp<+D?`zD=qPcHLOW=EC*FhEi$^nfPo%V2m7EEpuVNNLxea}xRMBPoq<0zlZE&3CI- zu`yMZJM~NnR2Ld=*I9;|e1uI}7Hvq?^H-5`G`6hlm%E6xxvR|H_9u=xB{V6*7_};N zFc&MPj`t1)z(3GFg4niPX073bju-HpKh!7Izw@U zxUZZ8ept4pU1d`Wknnl&*Fdti(;9t#EeGKEhu%R0(?xgS4PZtcT7EH*A@Q|dU`AE5 zOQT<&2wxq`*=}b0rrJ3-!IZ7xYvGEZ(rW8_EKi>+r|KiN!sjo7XOnS%4CNUC?vcgt z`ms%K46+1|B4Afg__Rg5P22Sy7mcZ|e_Y7}ygyu}jM-o@%5(zr@P12Cm5}e>Ib#12 z`R=p9YHpQ&xX& zcm63wzEs`hB&DG!cO2rf;6I5{iL#pr4#m#WWj-W5zaVd+fqK=LGALom4f~a}$v#tS zW_P&eNhe!hMy?$NhrYjtyfDJ+m6rTTU+Kkd@;Vj3i|{{PI36Q+!yFNfnq1&^GB{k{Ax*v(4d)p;znKO(|y^DiotOmCjC> z|8W7i5gz`L&KF5!XK+^|RB6isMlH{C;bOsXQ_=6S0-}yzE~EVlB!Co8Y!i$AP{u6P z9k#Dd45tyXjaBZj)f(O>X%t`(K2W4X9>X%fzU|~R9fw5vxo3(c&J;DdKl7NVV08R| zz)QgEc}R1)(vDki&oNN)=2o(!a$qxWZqf~P>iZ;fPrv`(1JIVktBhGb@D$s^4&81q zCitFcp}p6{&tg0!5ckO#SIiUb^pj9nyeNRorf~@PLqxB>)Fb1LeH5o7>Hy$rx)_3OlEOArWk@LnnV+Qdsn%I46JU&Ljvg($V=xTryn+az1`D;3#! z{m@6={e4?MIouJnTa|;qIbCqs|9r5?tQ~T0GW8{8X)cO8js|8z%ztpY!g5$zZqC?I z+(>76yH-r0ja=2`XinEGprfRT+aq$BE7517KryAx(KOQprlaqv?rMC=8w$ap8p946 zYMT@bSLW3ck`pwNTd1&L!-X(=Yv5^GQs_uNy;rmS&e+V?&(jpt%pSeQL{&d(@4^YV z73_BNd{>*Fkr*&@gbC=C1iN7NtewRoPVCJvos*%B9YN0j7?;yDR$P6Yd}F(+0htN4VpKbm(XhbPq-n zy>8KC*PKhc2M1?JYt&zWk-HSKJ7|< zH<0!Ydx+X!Aq3IeAcB%OK$*cUO)h`k{GeL*B+HcfRSEZ$=`bKz2OHd{sl1@%udX|T z{z@cn-O|`svX{d}JP!nwv7hx2At+lrU+sDT>AFaUXeJLrH^iE|;>J&v#X?&Fy-HHO zN|x*(apDbKqbfc+OfUYuBG1Dr<{4>N5|q916GG0DI~%~xZ>UldXgAA~PtT>&hg93q0v<#e`TLUfsr#3) z(P8BRnmjvY7jtVx<5|Wz73bNjGLlELZj5hWuGI=Y47C zEnOd{Du0%F@a6ouRg60{1ziedu%8_@!4p4@<9QNKOMON@%fCdUuWx1bQu3y#sMK_4 zoYi7pLqp0CrKe*hwirMN*{+$7mQHHCPn$3J(!-NJM;c8Ri;b-R@F2`;z8g9l^OE+) z^E+FdqNc)+TDdoOO^gJ8dA70S$Qg4#npGDfY+zNhP3wdhCJh@ zo~o`t8{U_Z8`qwbJTJp4rq|+#0aIShV&*n0NiaFK3ON!k_A|F}_M7X$I0TTZR2K9y z_&$fE-?0gBnyD#%pkX_HWt(HLCs*4?WLRyWEf2H3;B-Hk>*i(Sl_Zg96c_6O1ago{ z1F5^vMc*&j&=aixL{F>3yEj>4v#to@$8=ut+;5Kl`PUhb6#)H-O*>-a(D8-mPP|kUZ z7>i6^Gm2o|p*sh8G%X!oBr?O-7hh=ox$(^UEc=c!D}^|;DS7BZX13F2k}rl;KazEC~R z>05~Yu-qdOiFWW!ZL?8-LLeA$;XH1!{bRaUi; zRf!f@#6G-{j`lKD+=Nh6b`DIQv1^~O-+-yE$H18m4-;&GKgnAq>h zTzjNp9GgGQnZs@8R&KyrANFlc+U*4YopAU~fnon%9q31?^*62!64AeMp^mGE)23yl z_o@Z~)JePkJeWt<-VrxB_PI|?Q)~$@gbj*zf?%94`#xe;SOzN)PP;YiD|@ZdAB3{& z2Jk6RoK3v`%xy<*)fCrX6+eYH_=`vlE2MpT@|#Nycmi!y;9T`zg@ZsoFABXG{hv5| zDN0OUCzr_cO?SRao#A5fqc6@xQ)H3@Y3^6voR`ri((DHg5P8?mxu!gwu2Z_P;>shA z3=)*eECPGI3PESE_meJ9X0H~*Q`gruUg9W*|1-OZi!>oJ_e_W zv!S76Gq9`+j&mBX+~VW+5Y&tz3%B+`Rq$(CxIIR!FALU%9mU^P@1!v<(_;5nz_*yo z6bY(<6ub48A5B2iaKaL=rna8g_r0d5R0!p#PO6Y>AWp(=41Lvj%Ba(0K2x)yCKC?a zd&5`oNK-a7t~-9lZaoG9Fnv2;HJ4E~zq6<{n~#=7%o`R*vK`^^&`DQ%W>qSqz?Q5* znm~TH49@Negr^E0zY1iJeeVym;N+R49h_Q#(e9>X*;0l*kL15@@TPR{7``w5}|Q`c6Ht@w>jqV#TCYz zr#>8SLdm?3yMC(os%QLk0@-4D+7jjPrUy$*E=tHD$>1wwjWN?U)Npg5DmF0&|FG4q zH0>_kB#LHGq*k@+NC}lE6rb5!)Z?Jm5O@1KLMYo8C1=eHb4b<8MwgrKIydHpK8J9O zTIJc{!&q6J!0_LUV>V_%4oQC%c7)KK_eCPj5=fuQ4w*nmZ?6Un?7wCKGyonR1*BJ) zOTxIHZo`{SWMvyWGz@g5F{lmiOxxk)zP@cx^rPYdUWqf-)>fjCPZ3r;G-1#I$d_rK zXUO_u6(F6UpdLX+^%4gKr8In`D}to~$$&R+a;{M2Bh8Imq4v}=^u=0c zxEzrmXN5go4j$J(A3|Bcbc40ESgy*G+ZWaGlJgI8-Lm~pE$vNcAu8W~`ar0$rLuwU zE0|*Yn-L@ptHQP4@PK`faNyx%Y2+=SlTXbXFAX4brgfUh_+b_L{O*+d;tW4Cmes!P z3H6{?kVuQ-vw^e`&wHIYSLW~Kgk*=Mf^rlX+&<68zK>x0QenayO^=VYYBXlF_*9{y z%o(Cjq8&pIR0M8a8zY&et~mRy9Ci~JxSVc|u4iZNP5}t0)y^L@D(w+g`lCiyGW2zt zK}-FU1Cs9p{o1BE-sSJ1{0;1#t$C3he3|c-{Q_+Fc}1!<`Q_i^;Kvlo=7vm38N4{c zE=*gY_7POR+qL-k%~DEJD1|RBTaeq!fjER`O|ej2GCBse;0&Kdah^Sa#gZY0Mw3Og z0@g)pE}kJ4=@pd4tmP7jP7cL8cd~lDPW@>@> z;f#dPWhuJDXJFIBu_1~$N2W-I)z3OUGa{Y1+><)VgtDn21R)W{ z+ii&J-~WGny>(cWTNgJxASjARNVgze(j7`8A>AR3baxm?gGhG^(%q%fjf6Bv_s|{R z9^stlobNsFdtLm2Gcxym@7a6pz1I4LBWI{O+)gsl^EZNCxL07LNQxRaOk@dUQaqF- z7$)SJ64M#^>60zhPr8%WSb=K&Rindc?v79HCXSz#nuX(+Zi`DpxSivB9C<4)F0!op zo0t{(9(~!Cd2R9IxWH(W%y`++&b`8@-Hg^mSBrgpJ2=imb~z$UF!QZv-Tk6Tk0j9h zayud}?CUoyD&G!Xn{1qZnbD^4P}S5mP-P}fLuYa640kQU&3*tB;DFiHotZvuPR1yr%^(v+fys8+ zdl;1ET+rY9>M7pJ!WWZq5SNL}*9T4CNhVx{E0gxCSve9ejakmYUP9B(%6pIf{E22&juN2&?Rmrmj-PK5N(gP$&uVI5|jDdMQJ`$W=3{mxKixzP%*6z4#h;$2asgR z7Fs&?(;@EaQ|^7oLFT(7cJ%Auu6Z5v8}sK3JgyL9j~AJBZ$d{XIlSkNNcdogCq|^Q zR<=qBMqM{}xku!hJd3C+af;%T>JOs|FzoSOa54h1CHk%7^^pywrcTWu-weOwG?uKF z69HV%8F!(KHd$rVXQt`}4t4Y#`olm$PQIp8SG`2<$$sfD_=xRv>BVP-sJnGw^+>}hSToUS`PHznd?i_EGDrI zC&X_{A?RA&Jb3O#MtSBI)5I}U}GJft^!GDKZ5R54gAI*A%3Ztr(2G@4|wXio|&o}JBH-YcgyCAUo|(##8- zhQncMd@$W5bu`d(>D4-KHZSzfZah%Ef_`;UgQ=pzrJsP%LPW3cB8p6%0r~KvZu7Ut z@e!$C!Y{ilP@5vTUPA!l1+?k-yI1aut6{@=*VO3!M|vR)9+guwc~B%+A;C6?^BrXv zfpOKVtx@3!4&-WLbJafPq^aTN({c`%JpcZW58J|sG8>OiImgXeuPrw&U1v{N1szI-q=~4tp!rcy$WT&9 z#^J&s?>1`%J5r4EpMFlizQ1q{ChCJdYoHPHQvvPYhJ3f3b5dG>IC)J4T;Rbsk&&xG zoOv)|Xb6U!2|JX-d|KGhyl&gFGCwHh?%+l1b21qQ`F9@FD*a=bgYV0d*Sp0;;P;3_ zl3z>8MRi9xL>FjfZwsz&h1YxzC2U(yJ^sAr^ga9A52~EIaz^Ao%2t?EMdLNhhwHs~ z^;TWNqY9{>%Xxfztxi2qZsd#}_Ul(nPf9xWug%v^nv`M_KIF+%vWZ_FP2UY9txwT9 z+F;6m*Zoe-WL_krzgONR!!LWOTnj6(!+lFibE?)e?3qW;uW-*N^E+pW02)6Ys7H5a zv~)F3J5OvlSCl+&z258cW24z?^he#vg8Z!=9s7c3mtik@`eLGA&jIe3LWmo-wT*^R zNG^w-NcH2RohQnXh@2!HYo{XU#0EE!hfxZrb0ZM6xs>pZUo2ZJw(++}9Q2AL@NC^Ih< z?=YCCmm{1Pj{fN26_FfDIxfvy+B4)TgV&oZk;P`JupIfMQRPCHtNbCz!^&Vfmpihp zZ6~0o$N#ybIH4h2v8B3hy^EwHL4~4dA+NBiSzu%^QhFl)WAS|+*JKOct0`|ZG37TL zIGt5*W_%_pDsf$$S3V;)10Bp%4fgy7Mi^r0N!N0o&Q{laJ+3YY-KEY_1+GWH>BtP) zNItLiJ9#S_`lz5=BE^C2-ZWZi2&HTiRcSFl-FyIZOUJ%^*La?|X0B>o{IgH#E~3^$ zpNZtv&OR$R^FtF0`!+1PjSV0Et`4p4viHSP6d%kc!QpuKT}e&Oo3-;Yyh#qbH_5`N zBMA9xq9Vwe9%(Q~*sYY~9y>eK{1uT`^BLWar{mstnc=(Mi)F|o>|f=%>po&+UFTsr zUaZFMl$Oa&VMAPiJVSYv$l`^Bb$y|@3yUg5+=O;5KRR66XRRrkDsjz!Tc;Z#e;GeS zH`xs7i>klWaZ>S`@_u;>hsgW?!6C-atXl|b_vZpSh6!|hu%Jzex*yp(sb9lGU5Jht zmCvWfc=V^mwv^573DZGsRB0#4d&e=)SR_34Ts~%zjLAvKSV!e+9<4K7P?5fEDiKwbCSw=8G+Tk z&UR7i`9nH@GH0=TG@a$F5wj9OjuC6A!0^xCb8&yaTK_^IQlv9|i4#f`5k&xfxFzKdY z<;}Q}SF-D+Mn=qL9X^E~T<~hXVEQD8dP;GSfsDgAwB6u0eEf7aMbMlO>&*H>{wK`a z6|qk%U*&poAS#m9=z*$D&T9{K2tCtNIxJ%Dmf1eYU4-V3@ekqulVjr&?o&kQ^bRrx zY+(dadwUDtWU=TIshbz5Sw)9~+@YbwM*S{ou|M4@i>8VW$&B|-?AU^4nO&tZ^vzgi zgc=>gxuYZi4Hs$SX52I3AMp(#M0+${83gNdmoC>jZ4bPY@;t1GvIXJ&B^?p=98e;9 zwfR0vG9e!D++;lO2BSX*A=}VoU_@Fyk?0_rf1^VO7eE-$#Xh?-8Jet0(e+nWS_U0s z-pN)IiS*#cxWD5$ZvJI+Z44IU89|IEj5#*_{{8#fc+g5Dt>^={%Vm;Wl{#OfpJkc^ zZ(dc^Dyzs-T(P;iXfT%Ny+CJxE4C=taJ9N^HKbo#pr})pg3dCX%vC=!RS@aV?3d=h z9I_D^GYbH}bk>L|#CW2bx8K`n;BGv3yMopDLR#XN`hGVX=-oX2;hZ;j#6IxCPzDo@ z+f2DFGqHIpjOKpoUN~LnI?R#~3vhOSjr+T6H{I?bvx18AWX-r2O-ko@m3b0R#v6I3`)#c!K2Sj&q6u?J|(X+(QUSb}FB z-w*^;!@d-`8j_ny)e;sB~|K9i$ z{)MZ5#O>uHmS5z0a=K#Y(SsL8_a2h_ohhD{9y#umL&lOy#y2@5#-T4V_@Z{U zd!8@x^#*qvclYcD=NoifM)rq1A~3Yv`7ji*LZ!{akxd!04y0h8!VV}WIi2e@uZgL~ zUVRe>7)VX30RwA?!o{uQQeI2S%GSd_R0#vkZc)#h{5d@mR#9&+a)Ap4&UaZdagi7E z;-Sq5zk1cZ@+r9CSGWvfgy|Ep!dk zk873JhRXOyzACqFHGFpJj zL}oEoE}WT0CAA1djEK(F@26B?Y)+IQdJg4Ojxc}?s%XMRRD~rRu|0G`d~Q<|mSAf? zqGvIDlA`a~8w`nkj5=PQ)Fzj_p>V!7T}Gr#ud2bCPleE2fnP3v9yj{@q0z1yP4nC7 zZz?)kmWV}eqq0dV9QX)&1`og;ls|Us7BvtHT9zKJc-k|nD;}0$MKvEiH241D<{_zS z-=3d~UZsda4HvHDakFcZpP!CC{7zir7aE)6CIH$(lg$U6ce*YC9?<@*D@~1I!Oysh)_v1%wCRA)1)rO1gC3Rq7zD9pegSL} zYB9ekkM+^qr+gW(qJhLHqpuNp3a`^v#vwr^&(w+*pLOZ>Oy*0xOPr4J=hiczE&CCwrp*%n<y!!Zt1g7nmt=V z@S?S`a%Q9f7@H{-eH_`!!SKfC=VQQ`P)_sb1*qsCI!ni2qssAj-L(Vqu-ZEINdWf@ zi>zDUfm>TW^_vd8yt-rTrV8yF$L%nOB=F$U3@0YTn zkS_)FVgcpLuYkcNVsn-CY!?0@{fbL@*W&h{XwxQoa>-_OAQazZip8K)sUoAlFoD>T zZsGLwM+~2C^uDd5j)^7*xdBqUBU{z=`Lbp1bZSAzi*CJ8bVfTh=djXz}XDXH4z*|>eRb2u*ik8J)w||^ucHe61SbNR!#Q4rU-P||Crq5pDHe=8`y$z z+M0dvHKI1g=3z+he9=Af@(v;I+krj9C zHb8nO%z;-cids6I9_ z9S$&RhIp1JukjD68te;(Gq!=Ax)}T!cani~%4lCX3Bi z>u4q#vZ0w@Op9afa6rr@Hf0i4W0A!`sarqZwPi6{zvMJxs?@~8Zl#t0jtC3IffkaX zsP2SZCk;{Juf3`wsgFv~noas5VTfOd-U_28}^KIbbd7x zlY-O6)Mqe6Sp;$dI|~Z)*N7S=E<8*9F_RLQj%7k6hHt1##q^se<6gLdyUSpT1vzUdw^j#~=;XkKBR58&-8uTR+f7k{E7 ziDgmXblvs*!)e^@PZSe$JVSl+>uUXE#1p3Gk-T4Dy&`1i zi=uni70)?jHq(hOuf+GDCc8+3#X9Uj<uR_Kshu{Pj2NjkX5&@-i0O?*sxGF*8s* zwaI4}ReK2@VVon8LEcT*TrV!-_zk2~QAwAA-`v$-Pu0!Obivt-jma6Mz&i8A&6c3R3F-QdG7GVP?EpQx_2WO znC6a5O_mp=R3S7c7M0%1@^@b3NL~3Ix6tXX1z_dr)wTMs$Az54#R2qX?{-C^M>&i zrkD|@elXFFO=y;#?}6))!yDtF)eV!!W0OuB&`y-u5B zW#k>dam~M=5OSZ9GpLvJ_3gq#MZ*Y2QtTExmW!pt+R!MTu%=^|Y4M}?N5Jb9aIadM zTxEiDMXlEGAEKvs_e?2oOxbCv$Cu6~cg7m*P4?@@B>Wtp*eb0xIe$*39$!69 z8ed7r{qdXIdSGu{sX-Pw5Bf=me?nnfi~H+K)S#TJxfztj7}B@ePJ_=O^i3Ow)%Z(` zR!b=G4-zBu*7~X7B6O+rYhX=p=&+C zKsM`0j>>aZbKg8Z5>TipO~a&s8)ufW8Q|-RW-n8ocn}k~)R+$F(RhWW;k&Yu7XWCh zQNi)y53B?DMaZ<^nH$M8bNGz^foFV#Ynw-EETwz|XG3q*lEZVO4RZ{vRyIACr9uO# z<~rz~mp=816PJFvQb6)H{o zB`Uhk=rtUd^+$drWB^Y7sW?iHH-c)=YM-5aPp^ire$e6iIWE{y`~hRwIJc9}YcFzp zszw}GxTQq`Trm)-+~T82kQx(uI^%)_+CBF#Fp$!c204Btt65)pCSXv=KF#-|l8J8- z+Ah4e)Y|U%`}e`zbFS7996uH#3AupB?#KLXI_B3|-mR>^%oDCJ_Qk5S==nT}b|-9R zZIeD93zxctHPqM4X=C@3S^tr5ni$;#me@jY=azL?+`dMj+5rlH_K1>B$p^KiUT&>hvqIP=+8KC zkcQ9)3Eq2nA5F)_sNdes6TqsHD&TaknRE{cMpA83lDEDNtG2c#!$XJmUoWU^G5CGW z$b+~n{S<Yzc-7r1IWQDzgy}CC;{-^)fL!0jAqs z!+GNOdfVr=wK_X$6R0NOehyIGP?IyFZfit7II#F8I)<;_5bPq{uTzgP<1<@-a0DoAJ&8=s~*Ie>C42M>exfEEQQ2{z5; z$O`7OH$Hjtf2MKFe^sVf!JFzB50- zq3er`mFddLpwGQz_cZqamI#*8`UP^=CsX&S&qkq+J6p~6d_DQ0?p8RX$~Wk_x9i7d zzmBV#q3*jN++?x2pPl0UxT!yuClKT`#b3)8K{Rq2jNN5zl^dc8OYIl9Oi_*(B)s;m zJtk)K+K;|B7m?kEGzh0V4J_>1P|O3oyDjxhR%xZ;SZb8j$Isp!6a7>hdopL zNf6NI!aXKcP`)|_wbhQ;IX(=3Y_rnPvu4BF;Brd4)EV_7<1YFEE#5e&Yq83Mx>k4t z?>=*eWk2Yzwypz0k#miN)3?O?Fha(J(UX2_9%oa^dc1Y*Q@EFpmr;D(~Z8^!k&BM#oYjVMI-uPqb3uOuE;%q4!uw&H}DTX z>bkoMJm!8Zv*)8#~o4(n7(Fe`PQxu!zrr!O#q{RwXJmZ{(9t|>1kWcc6EgugBXbKJb;6bhsiA0e}sdx zSu7Fl0t%Jzd*64O8>{-F5m{IE8fC0$)Iy%|aiL&~EN z3Ix93WY1PEw9$ij-mr$Y8B-*q7ZSDuSfG~RU-g>@#RZgAujX9 z+L;6`3y-CkSNW@2oA2iuoR)A%EdS3@v*Et4LIEpc6jGYYMOfXQqCfl&elkR6FFS%# zA=(Q$uPbnt^sjvN2MuVA{?u*W?kQxsk=5vo4@TPRkV*!unlJsj<$>5tnsh%G1%Tk7 zvs4Nr$}Z>kA}YC|vHPqd+OC`9W&9FV@nUC&hWC}V@q~l2F8>>e2vp2EeIPW#2fN<<+uhNQ7+Q7=t<-t8$z0t~{CJsaf zAi*hLsrx~8Uz1$7h>Q%FXMc0p8zz~*3ZxjK@z&`+b^$=)vvg_8U2Csv>qj~khtv2V zqPf=FFA=6?xJFwj3H1v_0pMT3%KF-IDb<9mh2)PL>>mRI_TjA?2sUiZVu!)`Lf~Wo z3{YI>2auoK8zVD9+rfmZ+&T4B=Jk!5QQB1yTxcxuCr|NX5{ zCg5RnDeRKj{!`}fuixKFko~VJ`lHtKUMRYL4%qDcSqvq_J3mvVX;wjhb}9l$l$=0I z4UpAPrknbs2EieJ(e}L>Bx^y}`)Lc0sl2n%4ZZ}rgYQ2xa7il9Hp!Ju@sVKkjV6>x zh)HF>2X47p-ZqS_9ggi@W;Rn^h(=F!@RGXaF%F}48c?L;Cn$I+5ZUSXE6DpQ z0Lf_qItijk*l>jboi<$I_%@w8a=ymbhss4N$)71DUu4T(%f_)9r|PG8=2Q0G+pH-B z>L8-PtQ9l;1K>UmR1k2Q0aJ(Em6zx!yp=%!3D|W`p5o3iIRBzVYE3-& zk&KLNweF6%=?V2q0{@4o%~PWj6;{%KGxnv}?{~S^g33f4)W4%&CAix!ihym6`U9Q^ zD7RxPQ}0t;?n9e^`;ga2g#L05p6ON>x61jWKnb4(P!W1B<*oh>BwbSUv_$MqwOs~R z`L;@{KaPi+#?6fj&akabJy3{-g^@l#rj(WdLbs{dmY1zijeF1~Kh|4J*hR}sByhkK zmP_H!o(1hB7L%@=O1RSjRzIV+u%>}xsD(Pi)A{mrsd;5do+#&6 zDdVfEZgr1Ir#_Rwdp4Z}c8;$rXSdK2D%1ZNCMF7B>K}tB#gH(P4RbRtYD)eB*w48% zbl(ZNuX8XUK&&{??U;li@H=!xXL?d$qTFnCcOlzhy^2+3EAfX-3K2&ane^`!AUuKt zNT&daJ#o2~SnC6=AfZt+Ur z@slZjU`+RE@Z}E)0==}JO6z0!kldx!_s6qYz+hV8!o_wCxUT}Cv4(Zt&bZ>AAT-ic z@j{pWFs|pT=Ec44Rag(T;Hgw?y9+}+Zh49teK7FnNS6_{sbh@eGY&E)k-|o&bO^d~e>zeUm!qFh9$)M% z6amr6XYAbLLSdEwVz*(jfJX%Fv19KNxexu?X!P{D%!KJx83%tsy3OPwROfUr5)wPa z#tVbAfeMOPBXWpMIf}W{Bid{O2P>$oD>xL6G8bxJYu0Z>1||9KaBlx7w$Z5fDA?KQ zjfrMXl2lxIWz+G<_PYDC=vUF9yOGQWJZ?vu+?G@2+DUa|_+bk>4{%J{XbE>eZFJr( z3B)>&)e#pN7&H)64{^Sbd6i*BcUJ3QOMAGq63K3FER{rw<;(9Pp;|bd`c}9-&yxbw z*LE4^S3Q@yI4zXwWB3Q1^o8+niZm9c1v%t@PBB8|Pe8rB+!d1=326+b<-3QE2viE% zv1x9y91#?tzLfEi*Y1A~U4ML;ZY>7F{%(xBOjfxUhy=S8m|4xK(JCz7$(!6<%2M{z zaoC=s@Cz9LU0LTYx2t(0KyoUlg^bWX3lbC_WgIT(z9qeHUk;$Wr1m^3-*%Kp7%RGtdwu8vNZnVkwucl6TmWzz^}QBIUyjPK?chOZI41cZ|0`Ko>2<8i>w|hIIN-$c zM~vkE>XK5Th?xX<$T~k1=?-E<%Z<+DrjID=W+qcEv)?k<^me%X`l(A1n)!@XatD?6 ziCVs6aR{VpZ3jC`;fqy^wc?TqB9I#`xonr)JM&Ttwrd<}=54WiUrm);d}E7gxd!e2 zjN^2LdscZsRt#T( z<&Gvz_b?@8Y{&*hhuGsUa`?|BBPa)Z?d?}(AH;IK+!sK8_tINkYYH?|LQ&w@&BkSj z{9FiU(b#6m?d7sCN+D`R^HYLqiPv7=;8mVa;SH(hbbO>F?7asHk|76@WiOQFf}e;H z?A~I>&@FF~=5Ols(~`&{XX*?>ejKfL)%R6eh_$1YX@#)Je|OKd#_PQXd|ft=9wor| z1v(V4t~8NGFpR46GD4dHT_WW;Cn`eIzu9)c&7)p(*cRp)kC`v$igT^Adj^YTlf6&ksH zR*nmkd-_((M>da}Ue$nxy!cJ8$`tsX&6(~~zd}PRCU1_`T47Xs;>D!8jC_{fVv@S} z1b)bb0dq8F=&A{kVaev5-)AwF+bkZ90(OwW*zEYXpX4oAuvzABiqo88)1@rkdyb!g z5zDTr@XdK&e*eqi@Q=@xZL`v!D;to zV3ou>nF@%oC;SijBSCaac|Ce+;$82Gb2a?m?$&>h**HfG6 zz`O}{*rXY^&TyjQjYxq88%ERqw>_YGHdwjk?kMU&kGp&)zw(~rG|eo`lW4q4PlJFk z*L@&{-=Qy-BhYT8=eMj1S)s>3!cfIwtxEk^`*(tzWVG|6tvcX4Zova|J@QI-%AgCg zZ&{2btX0LtfyRfc19a*$Oe{;CQ-}4@qj9l)?82XmKhk3SA}#LZEwsbcf~LmMa|q6T;jw#m#+_|BW~ zxL&-{hE9Z~@MVFv-qwdz`kX`#v+C7|(m`u}CfP)0_wZys%f=mA^Nrn$6z{7nOJ1j; zu2i&<_xW0C*l@DAtOE;B2rC)fkyMXP)B92NCf!s1ktR74-tanwupEm!^vn2I&tzQY zDjIlhNYPbiap$Aa1$96gI7`Lzm?Nc6p;IuP|q1#8AWb0`J0uVJ~mOMvT zmkRx)er0?34gJImO|&NHs~z^_1rCPt1>xK|pRtjJO#0NN+>eO{>A$d+dEM&s54$%Sy_3ezC9ZhQ;-FW$JBfmR#@%)1pySWpj}_Ccf)COLY!Po4(rr$dmuQT zV-)8V9*~|kk}DAwmsR5LoA~lgjMUA+GJ|);5eO4hgL5u6d}-bBcWU8Uwn$bJr;(ug zQNr()9)(AeMvs~=J%Q$@N@ww>xRC1|BlEFVMNo|}DO;%%W^*|a8H82=Z7!G~+@NX^ zN?Nn}OaGN8c`;@|`;pCsJsag+Murb^^Xn#zR}kY&L)q#%wppv z6BzO^`g?fpB6qaQB^w;ebQ;Kk79dQQCcbsv)~@G7X!@A7-&Oq4mcg-?3gP{l1-RJu zI?x6msu#^83U#ihEH*sVm?(q#FLUxVwG(jWNTRGOSFut)rLr(A#KeLcIZw)11VC?y zuF=>*Za4O&BFM00C#c=$#lIBIeKbK7aY7~``%l!G2>NY7pBt|D=cZbR`?VJ?zuN)e zM+LpSk3pFVQ&Cx0I@4KNr0h-xpsEH&uRsE(M-+0=!7yLKw?f zEdV+@t@}8UEXogLz7?w&sngqS91*#lZN{OUP{_qcf+rFScueIK*PG{$G`Ow9=S`E$ zUj-*_c?3j5Ft2vdcfT!)1U$a~T&xSTlg4$=ka1;g%ZI*JuU~%ZBg{$}k2TXi4!!Ce zm>0YPLLD^1wdLT%=B5poQ+GJ;JTU7$`^DcMN$T@c<}AsGz|Ryi>sF=2Vf~kTZ6OJm zyJsjyJ+X`$(Swygr>v}JYuc@PeLo3mPn1WJKKJmmP)qEF@*TbFB2Lk6NCtAssM~(% zg8hJps%W=6BZY6aB}RkOls)bO*YqBIdvfZfhL{Tlqe}t1p+k;Q=1L(??54HB)TE-U zv?sTm1H?*9Y;0L3-G+4kUqv*)W;v45QOb{)tzzPH9ta23#xvb~I+wfc>TbtL7mQ)u zg-4UC7@_Tl?#Iv}a7dNU95z!3TESq_;S0l($A$o!^b6p2L4_?|TFjzZ+4FIK-kF$y zWbUYaA5Gk>nztx||2g11N(6U?+m__)^-Z5+9z9FM0J$kokW#i7AX$##hA^ob*(xVcFx#g+{p1Cj+nWJ(Wh9GMEN4Q_<_`rfVNCs|N+IuU_r~>u#_V@QM3FdZP6A z+{cqDagr9!y5hNjWNA%Qn#IkQEdb0m^-|n3bI|@#{S%@Gnjbdw9;-Pl|9JH;ThkNB z|2k?Urd>HN=t=e52Y9__rowg1#dW@u@!K2zO>Rb`yU(?+LP(UhqjQQ1APdBvV*c~6 zwAyiNjD-h##3oKns8>vHZ?Q|#cA-svq3p!@=pqZ&hB_&@5#^Qnu|^J$=jG~8v&yg&fd?svIWjgcJtw|3~&UmY$Jbk`yz&uJ=3_O_*`At{Dy`Ynn{I(7P zYzuJ<{u24SIg;oLz+4ZmSVd57k0}3qo0Q`grvU7f3C^u8^6ZreLC=A!vVvt8=Z{Ae z1R*_HNE+BIbJ@m67tIKPCRx@Gac@lGzEdgSwOOEr0bJ&@g56??slS2bC1*CZBwYt_ zZzT=r;)2;6wiff)CY9UhE`_d^DpWcmHr2)%{SD~BgAl78I%)9|= zJqipeKyBr|^@#0!JyyB6QC!F}5f(TicKh#u2Odnh(QP5ToWz&9QEQtM24VCl%`YJL zpV75N1H|0+3GuMN|A?+a!MFH1@R(xGBA7E2@bb0;K>9F-7zO_AUlYLP6YQbE&YNu9 zulrhgzbB4$;2_`!jd-X9@l%WnNd~Rbc%T=Wq3Mr0}qkvXH00&TGK z0icbvR+_6_(hmh2rkI?AcDn4}&*XcTtcUkskXvPpB0 z-_>4yQGy1HiAg`A->85asQnPOy@9ssbHJwX(Z2B7zo?= zUoYSi)#xws!hek94kO%+wqD)V-I|;4zr_wVfA;SBtp9WVoFIU^@SJB($GFV|{&m5P zTapmCpkopa*8k&z&u$eaIWAVw;cnMh4{*{QSj=#aOoFh}Ioy{E4p{l|Sn z;K&g?mWl!31}H9=9U~$Cmwe&PEu!&)(SXgllCsP6(VM%M7XhD54IgIluOV%I4_i;9 z(og?sHvac>&avMnH$c^S)a(=be+16kWhfL(aTA={$0+^Z-Hc+32y9eavOlu?b5wnN z*uk(4lKn?;f*|OV-GpJFzQ|m1o!0Xo1OL~}&D>tly=t12^UrX-Rg(pes5S$6<@wLy zOCbeXPjY->N;e*O|BQy{PY=kl!q^J9ppUmj4D?xVr^o*}IQmpKvzE)L zQg;~t&wnEggk48;E}Y?C-;2v95JiYT1Z4i79|B&f7yB!U6#wEuVfjx_)SKz(UxILx zMdMB)$lKhEa4c{@pNl;ier5d65k@Pfgup%1K={{f{53J8pWf8zVV+e-f{}Rt*C!Ne zuDiLQ9<-8R@$R4TLF)!fp0Jw$lKW46k-5jPNgL4aFZIt&;I9kjgKZK9mj)Lcb<|P9 z{eN8W*=;1)$q+}leV}K+(q3 zuRZkU8*quax!~rs)BCBL;R1Li5YJuj2p#@&hI_mN6IEarSN{ILCe!WgbNt^0Yx{y8 z{40d~`+~S&e}|1Jf!BfmU*oV0p3owhNdG1$`)g`AzzV1it{Bw!{&P^#Z=&7Y7!}0p zbPtO{detPerjCe%cF&=1K*A?k&|B8Mkyjc?wet$ zK20+Q)YsN7PP-$Sg*9?@D&Fx*icVH%dtV2^*g>!|<8hy5x+S-P`L`W`umZUmmj>^X zUDdP0MYB48U<;T5dQcmbE3E?%NZe9`gF^?6Bn&;`d=WVJtS)|?UE6Lr zhoN3bycKei(cziR9=*xb0Xu>i5})f?+uLbsfnPA`e6eZEBk@H8HEm?x;cOfy zMO;5BYh*2xbmBbL`sLp6dZokOYlWL-$i823GVjq~8#OKy&Bb~JfhpmbvIeiA5GMj# z&Q?jZdqja4sY)J^zjzpN#+#)FNW{D?67s|e&Oggt$0|LGfUY^Ju4{hMZf|k5n(#b< zfv!39Ks~6K+oDRjELZuf|9ykIla||6=iV*;sb(Bdds&zFtvGFq{;4!4PS?*frJ^v- zoqW$G(Dd9NqWLqO^W5=|WhX}C0?M5lRZu`KH&zn#BkA`?A@q0@fYLRw!R2&;DHfIz z3UciX@07kA?To;q7qRaV*uWXxc^(sDzUe|q1&2Wj`yof5hH$(HbCvW#kofzjnHA|3 zWE1aFi0*%{{r#p7LOJ+ef5>7&+DYJGmQMqX-9oK{;waGfJnVUI>^(xha$1dt0{20h z8jeD3B=2i2{Fl4ai)0G@AVaq~wnC6#rVd98m81a*n^r z%xGAeyNo|fuw7WTj7gZNm%MYb(nmAoo(DPUjL5FGJH%(nlnVpr=-MeKYe`%jbALT@ zfv2`Wt^t!VmZbAD#UZv<`QzrJB=_Bwa87g|XXrRn4M4V$@Oxpro@`XXCFXX6=d=>( zr^19Z*)n7p{CwP|B8}|h>8W#68PKMBoH{d#YHP;Sp2=~>%m5i>p zg8lG-0nNXIU-k)d|9?L|e(0%?u^&7imjCzKKi;nvfo-Ys5JGQ+W*jCz@?uB1)~5C_ zVxRR90jJK{LrRSKlsTIH$jt=d7#PvWEoi^SV|~@XgyKyu!2q^1RFn%#@BY}#)7(Q! z%@D5AD#Ci`uqRq*3fGpM;z}Q(-|-9$`H*`C5kfjuTucS!P6YlQwQ{ z)EA(JjCC`AP0|5lS`jSyx}l2C&y?zt(vMTXFBl~maY$T+#Yj4=sPaQ|e}6yHN8IiW zn)5JR^VDze8qE4P{tO+*YI%?B?a*n!hRzpz=<`2@=97;J1{gZlb6=J4f4=zxrDvanr^d3+Nof)5_o2x>JLxx2<_A6%tgP`r2vUSUq<~}>7vP+Q zuV<2W!IOmO`!7W9lpybR>D@|M!5wmE0Wr?p;^p9FzH3h1D*CnXLkj8oI7jvT(&Z zsCojocQ^3d2VRe8AlCOE;mQYrFBpQ@Og#F8&F^0?-$t)y3fKl50IzomKbPH~{CjLy z5m?RP6AQR~@C!>OHT(RuBZdm6E7A)&j@86r^(9cQ{tn>hq>rk_MZ})4&^}<&X?ziA z*!hY3B_$@E0vgCRD`|!6xw;UaNWmFC+2HeXqO9T7Ultl!$esxv7PZNPG&BV68YWX zRv5Kjh%DZD3MB8B`;&O70x`S7*vu5_*xIxuGu!V;Z#`aOQg6g=mrIOR?oD8y$(6dE z;{L?`(pXj6Hdc(Vy2)+pi}X<5EcNMi)=Mnm>?4N!y$0p_;_qq_<*xcMve@m zR(viH_tMpVzw3w}De?T?56lYR2jTp%1;Sf~{qcyd`^zsnF~1S8qM26{>x-1v#S9+DFgP!%xn~1gnAOGO>Wi2Y~x0(~f8Bh?ymU zUKB+tdSf{T**aW(r_gHfdR%2SE4pVW8O~w(29x#^iRgnBPP!jYA&g4YBpU3f&A+BFe=vbz6;AGtz2^%t*yPgPUPg>@uEK zE!1gWV_kV7LJTUx;=kXW%4bTzJ(Y{@p>5b%QOxe|oJC&jfB$f8C@w1?*v+SGg|TaP zhE~4C7_X${qZ&SA+kAkciOq2zzX-p_2PK-%-8Ec5^O;(sI`zPL=ZFGN*|qoGzg2BFj`%OmFLX0ylJLnqXZWtD zwWtMw*YrGxE)puv7H^QhzXYGl2@)_3h_QE0d*>?uWmt1(f8SnBRm3p!0Mu2;(ecnJ zF8M*R9XJAEUDz)*PhQg*4e2l!h9+?_{Hn{zx!19ff{eI#nj!J~ot1gQS5oI5M~xQm z^}8*V5H)1gAwtqkhC>zRgv+Pk!{i4S6e`+sC#gq)<79Fx036vIuA_ikZvH7h~O{jXhw=5PgFG{#wBytX9z^PZH zORRe$neXf^9k!1$Isa}(_4`DtEVVg_wT|5svgJBXBo@TIumcq*Ju(NIUI!WC!%u$CD)9-J9wxMv?BS-LAijn&gD?&0H_-B{p8o<=cKXjk9YqVlqzTzn~cP#&LQU>JT57_j_KiO61J)c{DLSM@gER{7ob79Rx- z^D>#chV8EI8YJ>zT}r1m67t*U4B;KBGDuHXTo3H^fOzR{MoylwbDkn@d)}vABaQ=& zYMJ2!)%v}L&lxLH3|_=IP`{~f?SHn3%}3UHcsGZWr*mX*4}7!{S`Bai{pZN?bnY8C z8y?N|rJ4Qf<(oH!;GO-(YHrjXsFv4G5Xclzd(+=JQE3&toirIc zJyYq43gl{v{O?#SVUabn(=Ah1NxviLE*HM*BrbHR!I7sbZc3|LNN+5QQW|H~6^w{9 zSt&jVj$G0tZ zIPbH5W;Oxu#~RZq>nv^U<}o*UDX1?pz!sBB!kkI9K62WURUV4*wNXs#9pQS0sxmhZU zua(d%oorO6!a4b-%%@(jA10vJ{-&$5+#G2j(zwf^u$}N|X0m&LD;3+#b9As^UMz;E zS(2;)UQe_2!S30I)NdSurKBP>nvGMw;E+6Co}&wuHT{`Ws3;$tXIaVFG|}a~dT-y$ z>uMem44WVOMx_P?knBRH3?ZQP^gQVf@IOf0aPAk>3*K_vrfV z{fOm>DbNn&IM^ERT)W3vUOwKTWs=(ttl%_i3Q?xtodyZS$XE;)Q{Fwk?s=Gp=ErG? zb(x@c40LD=kKpd?&PsT5AMh^Is|9rb{pO z5ta0!nb&p-t^QaRFVB7c2jT)%-*;3&qRL4D=LbFp?mD9^p%z(}hgD6_yyh+Z+|RWq zRWvGYf1!MYPaF$TiJBiOy0CtR@|DOo+s|-j_bPaJ%18qNt}hjM}+vFg&d^J)WA(adI}nIfhf+k zUp0QBNm_?N6jsBr>+tQ+I!isg*4GW*=#3OxD8JobAI^{?g!FEr`5&aoH3;pJ!eS!whx8+yj`1|Y z%NT1+nf5pLwT|aHK@6_0bgc5*AA}S_`(8&sHeP%I04m!n&1Zod@Q3hjf+!72^?>}c zclQ8zcPKV!l9w-E_)pnDhX)Zd;v=n>I5DQy)HA;fexwk^!nc#ApHN`8`5?I- zo8j64{a`x8^4;PQ6icsNt>&8r|I3nB*B+DRTMcjpI={eQUg(^D$Q)@56b(8mZR9D{ z7XuuFUGt{uK^WX@A8@s5$_YT9)^3$n@lend5tuvu*0s?y3=wbv{ZD)v&V^NcZe-?-YoHvHB|#3f8ng zpf6S4e>VBSZXLdDR67?&9|`KfJ~Vdp=wrT2(1X{bLdsCAYL`2>Zv-H8v+QI;a=sL` z18RiK=uS@HM@fbyrabq0bc}T{xyu_sZE$^e73eG*5gJRsv)(>}>l-J&h{n<&45hU~ z<;7>zCUWB0^4y5h|Lm2W!JxPBi<&t#Wr3Ln643fYVBo3V$y+y52XY5o6YS1nci!;2 z#sTSL=>!;MqCd1r&bP2aC6YW%KEsRb3XIB5z0%2FZrMI+-v{Hl_x$(WRpF^UUOftR zo6IZm8z-*yQ}gRGR7w=QAofPbWLjEV?UW|2r93kK`Ndo8s(knA_!5^(=X47%jBHj6 z_!HY{{pF<`A1TYiKlqzfB33!G`Io=`n9{xhF;e^gsyj?v;2dbd5 zFX5y8`1s0DK9jPxiNnHCnV@W)_5`X?&L2#Yd1mPmfoV0^p(6t9vQC90IEZxlgsZLp>eH1{HYjdXM+~TJY9FNf4Xy5h_)i zEue(pYBg?DGZXgHe{f#;Vj2;)U0%<=HvMRWpD{`N_-H}`VqBxX4Pnha?Ko`tR{uhV zf>)>1`H!3 z$E{9&(HQia844$=60uL4ngS)D_b^p$da`*$!Wc3l7)1nh#U{caqF4`Eo6~U3OosE3 zLB|b7t{!?cC*N}FR}@7HW$<}gKo5h9d@8&eg9x26xjh?UFy}rJ`bd<4bQyY<4k$$J zE;EWds(`PEo0o3mMu7qz!GlxcfpngOE!(>~dtEcM`eU3*S0A8BwnyS>KZqQ`D!kjR zOCPj5N`1sUb>$bXl^eAlz^*+ZHo|=KU9bRPx%r|(C9!#BN#*d6%P2RKsUDy{f4z#7 zfZaLM5LY3cEGHWwzc>F0XAwKc`jjWSbE_NX5tUrH9i2{B}*puy6F4hd%7s_T z_G2`ziHHz?8$w<$A$??cvUJmSZuymuY~`sPHuqsb@G0&GaZG$x@mYzDalA+F3G$WF zT_`m~IgZU@6jG-4F+JT91ztuM`JQS`r-OaQ>uAyUyKhMU1i}_U)LPdU2!{(-<>L2H zHRb>bKg4b<8kA_%_-hohUUI-xFPC!E z%B-nR3vJE!fo2p%!)7^~OY_rt;pK*LS`rx{LdB>*i!frMc#hr-Ez+sxpwaS<-;ZL3 z38?pEO4r`@ULc1ikqWwPcx)R+?z@C@)sE=Ve#mb~)=^K+R9PHQDxtv^m-lFbMzW;( z$Bc4OS*N-)lgc`v%RCfnubvv(-!8hx%XE8TR5vjzGFI8dZkLp1_o|0_anKnX4BO+Xqb_Fd+ zWBDk(Wn(4ckn|Y5+M&mWBP=>uER?qFJSW*-x*QKop8P24=X@|aX$foU$Q%29Ekr3s zqxP|BLQ-__Ho5K6{nsbO@goUOVMq69`S?Q6zZZii>Bj3w_&C5~`L{C3;Et+cXz%Ac z7&_9$-NOgBoT}u$z2iR4!i5A9jG;V9lmBEdy6#Y9yHAk#1Lz%SZLQ67Cl_zEHLt(| z<8-pV^{a2M<+mhQoyP4(Gk4R-J0;P!>WGCg(!N+K0-Ogo6^^{9^F3eCo)}nr8x&7*v%eL2>{2PJ--$D;!tv@Cyl9=OEwnmm= z6SA&;++|BwOcC%eF!trTS{2`-*M1@h)CIrIH@-4Y<)PxRSHftjQ15HGT@XGP4T`5c z_c!Wlk)-HRDtf1U$*z==eSL4&(*y7+w9@FitAk%}(Db5wH6iZ9{k0If3~SOKgwJ`{D+w0R0Q=`A20P86SEp=et)^ z2ZZV0yD9ycT!wbYfPyu;i^p7Zj1T)YG7g>U+(xhWwT>O11-;5 zcc~-kAhr}1#K;bfDc8fxQoujbCUjARNxtT=(A{ZQH=jsH=s5QTys`_&<(SyrP2 zlULpn;q}7~d;i}vy3o;gcmH4k{<4MsWOoOOAqwT=u)Q@*C^Y^fqcop(OE^ihTxRvb zqe4;jgPB7Uxp;J-W_xS6cPjXJ+*n`(^pcAb$d4boGbF;aqD<-YWnLu?O;L7JL_rmY3TyGh~mlgm3VGM_BeX#R)M)7efn6w6^ibWx&RlMVe=R2 zgb?SJm@*A7C0Vdt=djk#>r!v|afycx<*#%Y=gU<`RjDc+&1H69QJ`gBr`d^Q@# zqxT`+hv-BCYr*>)HZoVWx62>R&R~LS)yyU~Qg)D?BH(l+$+mA##b6k*rl@zrui(NR zg!;H__DX_w3?r_5Szdff@0KYj(T6NJoA*^N>iFn zg(XD__RfI4hiZ-?cWA~DUu3z#G1l)k9TMrDsH;^wF^E$r$w`GIm!z3L9{)RU=-as! zN1ecJ#jrm8?o@B(QXs8pyUTXSWc`ayF>HaKPH0xgrlP(hSH5d8YXy?7V@4`(w7C;K zP6eXtz{Spt=#j(lG55i#H$Cl=I(3NC<{19JT7f$YmK}_TN{OQimxB2S?fctN3Keg@ zst|;v^Bl2XoX*CxQoN*fRdIKJk0%Ik2`&@JE)|XgrwKm~Ppi96HJ9P8{PyI&&&+u3 zR%55MTCcnWpu_CBWItj+vn`czh{Mftr;85I6uc$A1Q!7;rIf;Wow z+R`DSJ;iU&6AFD`Y{o-Ldx`XA^v7>6@?{T>VTVfJ#G~qFW;sC*-%5*H{*hLpI)hk* zr7EJgDc*tPMY!&UMnSgH=xJv7>PkZju+Ee6nQ;cqD_s%=#quUadkw#YWfKG|4c7yT z04qxM#|J0ZdK%1Ug7!7f4<5w!J+I)5Wydb@&Q}sZe&EDQa)jgRaV@Ikz1QvjVrk;n zX-9F*orS9F^S_LDwXY9Sh>!_-ewFDoD{%7z zJ%EwPIiaC69W?X8tj%xSDR1KS&XzJPOM7upBrrp0xB1rtV3f(7bXl@uw%a1UcJ)0@ z&$cvPqgxuwQ;&2ocMk7Gc~uUyN>>qaoF-h@9y6nN^`0DEL;zN8d@R4e8VFwMPdWTw zj9zav6uQ0O4zo&a=6*F@mB}D)0zBs%S) zbVL6oAt<-z7{*ESvf)Hz7pewulkQ zf9di?;5LDUK%@yEW%D3qV>qD^aiTesa7^~7mn%XXc%iR^4sgOS$R%PJRZdKN?msvg zE8@ZiwW$2&pI`;s`SN8mut@Z63qg(^KvRZ<3Z65OL0I8ee*GwBpICUY?yjU?^tSOf z_9HnF%~dYO26$C^!h5Vj3;bNYX81cg4zURdD(FT4(PNy$ABUp2TAbQuHGM$!GhS== zxmdom{f?r~qn_z{IX83R<#!Yixj=bkO@4ltJG$1%kYd5%m|}A#BE!u37hm}1Rx*V- zO)m0^Z_>uJ`=N%?!<@!1(OFXDtCNUlczgnI(_;F2kl$;)CiILw}xp5@poWu^mga_s_DXhYUR#o&AQ!bXXpp@2V zt?UgukH8oTa+W9td&_lDF6tE&cfk&ZIAw-z3vE+&OS9!)nYki|D`a=ZNouY{PoA=b|C0z zyBbm$qv0NHm|3`^15UHTU7~oKJ51XN?BYEsc6$3v`0JPvCQ48= z^aq`5W`^kcS~7;M8`0k>I4xx99vx20`;bPf- zbp@4O&aX_j{)L->+_b$1Vh8SYeton{moH!xF5+hxuWMBYSF3;qX|-FUWnxyjOd&<7 zje+ln{Y|LFlzYc>I!g0nZ(sg40Rgdr3_V0nxCCoz?3?IkPJu6g_fqXy7=2UF4QaV-tG-cYuH~r4 zD+8XQs!7L!mg4(`Be$_|ti%%C@%r`2w|h?>$E6mt*-WCQpK3-)?DmF+G<*W;UJUah z5F$)WZ>7_R1A%796F`~Z>+|V=Pg-xf5A;WKbNG{hW~}wzByt$n?^CQ)LHZpx(`#kP`&9voDe16B7lBdB6RSIOfK+ah@SGzhUM zAV4!xuQ(bu$Jy*7xhU1!goE+a+N;^x0JET2B}I_W#$2^>UA!f_va8AMV`8^-dWxMk zU%|_!kc!|6>+jd9l-G@ll&?yc^BWhZzORb+s>24ZnbS2lvP8TdER`B zPAUg4*N`xWI6UG_V`0u^<||i&85EJ9zzaTYekTZ|(&I+m^{FGGor6XveflHRg))f0x6jT(r zd(%njtL8fk{AGf^h}dlHiN4#XQ%dPB6ShA(TvDe~%uzexdbjQHyLoZdyu~X;7xcUh zGr(<+as!0L0m-agMtHGzUiRYRvGt<)10PF+4rK~v_?38eE0z?}9TTBX6rx+<@zjCT z&~S{*_E;SHu>u>8yS*p+!jN*iMKp=nir2Vh+9wpj3_6wVPw>sE`n(!MdQwS=Tb1Z} zx{cDjhIT|paW^LH0D1>A_gzwm)q|foI#=Hm*s6GOyUkbkinsr?SJv^ZZoy-4CwEqJ zuAVZIHx695Q3b!Dl(|<(%W5Q=fUC|GrQC~o3TpaSfjm@RDjXD_JIYS=_scLsoCsbD zpJd?n3}T^kMJ@V)R7E;jA-j)N;^~BiPgScLh21vMwDGZdkNU6i-K9g4=?{9%+5mD< z{b^q&|6NXN{sq*_E{lIycfKnpQLz+(n}97p+m8aV)}MTfj#Js;t#1+$zs$LaaNcNV z=F!PFA0)Juy=kPO{IG>SZYo`ayJB1{ohckZBwRFBohUjpc1T)kW$JGooj`u%CQilLuK

jxSH6ULE5o2h_XD-0YVD!f?g?CN2vwkub>S1=`F74P>bnUFzsAPN|E6xdx(O zo{bjAaq04(f;qzlY;y4~BrV|z@t*G8Pn3@X&EemX-;jMseaZ3cVDDis&o9s-8XQBm z&JUsYd>X!ka<7Ummp2bp7b$oL&}Si3QTX%<{I;HYt2k+qajZZVEWUVzh zt~&YL7W!LLiRN?)<*2-*2mE8>M5R{&0N7^8RPUzWfeV$h>bzWwa=w^c0j$;-n<02y zvA|<>m-rq{zknsQb1*if-|(f+__xiT!^JGHSl7d$lp5DkQdqtZwL#yC7rE!(g_ zC?t*>7jQMDU#>u;DrTZ52BM&voUPY=K-m!8{3N!=a&7EW)SF(=s|R23^^I=awwoT6 z&hNB;hL>t8LFks`d^axeqIIt=)0-RtDw;;lJ4V@^QKM^518tFnLzia9ard*tW4$_s z^3#>m;H`G`@@H92g!*_Q{xSUXfsHy^h9LN7Kd4zh^4bLkcO60&XI$fl%_kZIgq6 zPz7f%qw&i}d;5dB>0zHaV}nZCa-Fsh^7Ias!gzVIPkb3$RPRB30d|0Ne}nyG%`3*5 zaFPHd;r*|aiD`Vg7pB?b)6fiOChSRLI23dIzKi+36`ml!izbJxsAtm2`9N~U0ACpa z0E=Z^^()(j#vfL>2Udo|rQ5BvgtvwL;UO)N*q?zIc4S!ec2L4$z-)tXAZdb9#yt8B zg_Xx!|0IeXt&2)I$XUY}FiFf=>^fH(Ri~L9a%wSBzboM4H-nq-|DGpAcr- z4sz~y59^3cfb{Bb%hS+~#K`^^!Y`&pAn8tH`3|9dT>tDU&WwKbQKo_XC0+qXSZsvf z09-%dwe!e}id~zqv*OeLdhYioD9EK5%F@J3S4UEPd_>yyP1IelJw{{lQ#(#h+(SVK zZd(TKGjD$1nWm81X1qshn{ngPX+pBU8)AA5Z#xv7KD><{X}D9CsNXtPRYHpC4a)Z9 zSw7W6qh*E90VKzKRgD6~+ELi$;a4?<&=OJ;BE3s%;#A1$a>_@5{1u3MGGm>1{ND3F z6uB$-I}6E?lU%Frw(Z^;QveCqd!S1jKXRy}8u?j8lEvBLMqg%N08MxH*uxvfLl}*p z9@ZWoVzTcwucoMO`lHX|KzwuOTGTTIGVdNU#FL@Ew}kgl10-8zF+dkO9Uk8RDXJyh z^~j;Vs-*4CbPGp{7oYC+XO2FbuQL&=ksuR66psO|`PIjTf?f(0tZUx-={P*LC;&zE z{1b(D;;Pl+liL8kQO%5;EmCPb14~!fcGq(62nhmiDv1b+fyPfe@N_bk%3QUv{DJ2ue7TcWRnEki~v$tQ++uyM7qdYR$C$#N%YeL zA%U7J_?=H}+Lq)n``$fif_{dX;%N46kd~9nsFXQ18)lZh-R4Aep$}$sFh>ujQ6vh& zlvXH#xndWE*Ufi4@6?2KKXL4X8lw%aNVye?GwCr3 zI20Q5HD3&2?vzZL%KJVN)Znva=wmxo;Yc_<8M?z_vK?_WtcvL(7@fhj6=dmKTr<>J zXr;BU;rmVWlUULRe~iTItOjq2{o^6zh$8p)0r_kTXF=-J`sZYJ>m^dp#b{Ut_NKuq z39)ugp~EvXSATPy&WXa+k%wt&h2}H>A^-Y>zD65}h|APChVt!}?XD!)Es`{`V|4x= zE;RiBL}Tv*ETAnwBmb(-YAX23Km4rBC^1dzRjbhA04FFI-{aK$^a_#RUK_JFBR7fc zVcwV=wclMEUKO4p;X8hQYkP=}+1Dvc;e`8}R2Z&Q40r8sgImAr(Q5X_iWXZ-zZH?v zZ`Sser}wMngpKTPJF%oF6Ptxl5fJyX#F1vIm3gbGJEyhGO>tO-ysimN|HPsxR@N`4NnA+dTkp1E;aTgfosH#SgE;NYwEH7RD!@E#9)1?FVJ%r$*;Bi?K zQjzO(mOYh(qz9bn7##kd&`8;uM3Ixkl74t4()x9LB@Rt6dhDa9j+GyN^;^qj&lB<3|jGYlau|S71SG(=o_dA7H%07O^ ziI~XbWGauO)3XOnDhf%schF0>?!kMk0i*_V#tL+#*;|+!Cz>@QdU@;0p_P2sJhyFD zruO>A6NLiU=Z()8=+>)5^j(49X<4sU{jydjrOh^$xxg6}v02rxIEFJCWRAWqGP@as zY}Q>sY5Xv$RY{Yr0^@y4EH@IMmOmD^oPpo*n(r#)G5`AF9#Ec=@5dlhVewWc{#l5_ zAs_8DQlmJqz3mhw=+$6`K-BD7I~~*4Nqw2lH^Xa>o-a&!uWo#Rnm1RG^HXhR1qnQnACmHy$3ezYzk%2`_<7; zy?L(GH|XB5FaouK7Ll=YazOLATZ)-vg9?S{7X?wv`F`FGn+}EK(ao8{gkq3eZp))U>O=29axlo_i6<*LCBk`0SWb2#?)f+M2Zl`{MtH_mr_+3{K34Z?!r zF*S}Ua(;5podOtMyp5VQ*f>mKJ%$}avudJCysYV}-&pFsDhV`k#O~OJMYniG#Y)jb+=L9|11WO zsS{Tllc5A$j={UA!$u9&!huW{O)8YAY1Gl|ew_9P_b4}}#~jB21rC2>C-Nf))$9AQ zia~~x@$?!6B6KyZeA*PymL$>71RR#y)sH++o;ASzbLoVk1YulLr&t8*NHVH?#hgxE z#`s9>8=!dv&QPIYYA;>#g7fJn6=>X{LHQJyhmlPGE0)z>Uj~ozom!Nmo5fpGhyJ`WE>=7_e;?W2R?nt4xIG`q4KV=iEu!O3=?ghh}zF zCjf2imWBs=HXQ><&B`bvsso^vakFb{d;sOPs?;&*UMQlY+>Wv)SmT=~# zrv6hN7_y8m-K+SLNM;|ZK2@#)p#=jQWr| zaT@2b%ecuZla_W2uR_N&xyLn@4>IJA^=V}M@_rtdO?@^DX-OS)p1AMf9|Lthcl-Cs zj6E=X)Ax>UIaJKKv<8X{9IUxCyAO-#zsr1#V}MWGx>c5E_dI>^il=`O7WXanST@TK zy*%P($_3_61iQ-ZA3>Ey%HE=ZOopcH_8(un%xg!r()3Oq3*S)zY+08Q)G3fOGj5|1 zTm|$w)~G}q^<*962pXP^-J31yatDLhi6_DyuFrh(tFkY)=W_u?!4k^{vPNg!qGJCYyUD~ zakN{nozdnes+-BMmd!G}JAoXCO~#GHGHbp6G}iYxuA<_TwDR^!n54%d{^z7}&8+df zRS}&G93xmmSHz07GuhfvJwwKd2F&&UhPtBO$CT0TN z%ZA@(Y4@o6^Y!PQq27Asa*~xw-x6D|9Q3US57k&IEr$9p|ByHLjIG}}B+K|B06XUm z#f<5ZTx7I5L_u*RdLrEa5<%#x7lJp`gU@oAPIPeqSLyu28+!9O&x?P!$ZS-wr`og1 z`IO8G{#qo0`5JwPlcu#C^Z~d+v`__KtDOB|!zag5|lOHpbs|5q42m$H3 z>g3e$iJClDw{?lNGl2Z?IvR17fD(5xZ_D!XJ5Tf*OzVIjnTYO96&Jy*D=<~#J@S53 z7k|opvA~GUoEIvF8Y&PC2q%wyHK*H}t|ct?n@!gG;)w)7Ie<2;C(y4c%|lh}+nj3$ z=znejz+AFeDQQ&wg9V5ecuP0i5F;xSyO{HY8IH6v>RVNff*!E;WH@?z* z167}3`lTOso2)>B=)o}ARoB5holfl{+;Bd9^Nrv5*z~V%h<;YO)t4VU^WDH*WM-wp z-pkMH(}Se;k0jvO^=C?YfX27vz;Q$q^VI1>@b_0uH~I~_ldQc&y};m=Al&1IK-|6k z{Sr4>ui~1g3F3Y)sx_bT*sk61#yTLg=&At_+&kdh4@_FZ(!S$e^OOWk#!}Clh<2)xO$TaipK-`EJ{ALKadE(WK#FeS(qn>2pupo%<6FO zfVaoM#FXCK-M1{a-GB8K)AHLub@5w##Z}GWc0qdwD|Ewm6?gY*N2nMo-EMy5l%?5c zBDd->mp}R$!XjjXV>N$P49+^Ojg7!tr9KjVaWxWIcOsl_N4u0 zBLW~s);aa%c$JRAWLLWr-c#mrbTF(w|Mb%JNP>FOEy@u?!ScHgY8%;!F^(Xw6AAL8+qs}7P7W5~6<%e>BhEb}tRy;H?J z3^Q%nerH^R-^-`s2`^~S?uKWcp4j{UZcI4kH(E(Is0d}d^XFNYvexG47llp>q-^`A zK8g1z&6jGZv8h$6mOhrV+m`9AA^{pIr7vD5RPTj94@-;hC6j>I`&D^2zi>NaRvxdj z$z=}RC(rZong)p601J(DJsEHHzMIdD7SSAaPVsP8zPCHFb!Ggd@LEzgM}tBK-A5 zbzv^`YB0TbO9XSHNcLQt`ln7NN%@AZ1uD7x>_;pSCVwz;|BOcL!U$LEhXaQbd z;tt9Cr*?1m9m=LHuK+Hz-;XQxUloFo*-zT>0e$Jk&m7~<*THnsJrCE`xILuaX_Xth zofV$h)k+@`N}l}?40*()wNPnV%!sCk{cG6nGu$jzg&1Ql_sb2_En=Ut9w+_KBSG5Z z9kJiz!>zBdSApGLd~k`TaQ>F<_YtBRRFEV<<`oKNq7@KGQ9BkIq!$qICg@1MMI)d3 zCLKEa-*;U2b@}>vYCw{av|TuB8Y(H6x<dyV->5$>v zobwm9kaR(wC|*J8le$#)uLI-|<1b|5|FtR*1MlT{ak2pljq_Hv&_7G&zyB};vL^^O z`wnY+LdE$vs)28OleNM_aQPcQfwT18)&G71xMFrD)^aw@g!QB*|2?1oyrq{a@>vad zVqlxF?;L@S(GGqJQ9H3q>%aH=+D(vxKNMig#k@3c=R=IKdVv$Ah6LEShTZwUd|?Mr zQ97edmn=rSzgW^+cL8mhmur^d(u$QL0~+149FZ=I5I{40sH4;eKxRrWJe;tOi zi|_YD&%cp~_c$!${LQ?`!H=oOw3QRTG>4`X;2Q}wa;g6IwD$^Uf;5OhW$(LwhZcJ2 zWiQ>argT22Z?deO6P)wvC;SoXyG|{k_0sUYc>$&tcJ;4Sb+-Rm^#0R^AK$4D`2J^-3nSYte>T|xST*Uf#Fm%Omt??*ACQ54u>OxHod2s&_QxD4_>MoO z|JyK}|LSK)U_~RoF(CG&S?>JJYB0f%nZEHfjq=h=upw9${)~#)e|y@q^oyd941~zY z)dT0RY6j=;W=nrQsM-Cc_b*PqH6a98S}Utl_tNk&f|G@j`@_HN^PeP=NEP7)YZGkf zx^>~GOR^vTeCq5EO~CX(0FT(Mk39;`->b$Fu}m#d-faH+KA^XAt%|49-}rCKriSYu zOEWz>q2v1R8~?+yvfRCpCs~2%{@GawE8N!}z;WreDj7tkjGFs7*MB_W{NMaD)g*** zPOn{!2>shIod44MP8WhG^-`xgY3E-tg@_0&uEz9UUN(dXs+~|cozLH%cE9g`tWCl5 zYS8Q8Z=X85SPoQ^5Q92kr25h0eA(ENgJn~Z)35*d(gFzwHYl9r4^`*VCIx#JA=q}U z3QYd=-hb@iKg<98jvPSuLs&PWGNk!x3&`G2yc6Thdc5Cz1{{gKj%H)>e=S6p zEU*p-`t8G)|0J*fZED6Z&h-Fw$aRg|Ye@5cO@?*{5IqgT~G=>sjMTk;zLn zd-1>+=cWRNmjTk+=Z8`jGw>(cBC#Z(4&`TY;_4|?1(>~|+X%%Y05cQ(<#to6T+K!n z9D-#cxql&qn1Oz5XTFKG)VJgFWuzvE@J-+h1eZ@zRi<}kfByt5U_{TPn zA(`j8IbQ)fEu2v|yE+ap40+-V_+6T;Ilk9<1vCt)A7hv8(8cPIxc}f<6`R?ZP<2xD zH_7Vj+s|BKPgsVNpHvS_C=OKURknmuYrz}}C_&usq~zj{mE zbw)C)aG_vQRfI4&!^h2i|DL=WbcFp4bke20WDn2HP1U(}8>$O6q>zmjj6R*QQmG~} ztLfl-blP%Hkk2Bs+xY#1)jyk?;?3u05~wa_BjxTcNzpnLIe>PEJhYI9I}KEm=Eut( z^Q5o+kl%iKtxBy|mF2%J=>6*#yIiY7RDtDUwJ3mdE}ZAG!5WhSv$49$U-&nRI7NOQ zr~#|8Q)i}f%Vm1H{1@wIm-`b&$ZyP6Wr0Gc{~l6%55ZU2DTdVAR+xXOS6H zP=$wjz6U)rGYzIvyK2z&t+45ExAU&;$y8$RYKf(;aG|l{mp)3Yr;aoh% z#m~Xk3Yk)?fVs=)wN3wW7w@V=K__jrKPh?p)iwvpTrsn~F+;0T0=qNUrdpG@X4DYO z6up%Jbap4#%$z5;1~)|_S@6f4vuLg!cRqohR68@9BoT>ha5R|`k8ao=#3%|lS&?-$E9bW0;wcLqupegtFvNo#xk z<0rrNyz__yJ_C`6GTDZV`o6~Q+3Dux@qy*~u0$V=-yJ-Nq^&GLCn`@YmECT~D3YkrC{wNGs)x74IBogOQgYm)fB_c)_CJGEM+(D^>Q=Xf5w{ z|0OhWDZ8+^qs#boe~cLsh-Jc8{y!|P`O+6bIz5MQcz zD1k2E;N$%K+Mor~aew`iz1Ey+h^R`oo(nsPGSnKxVj-QHcOwMDQX zehhj47@-w4QesIOR-HAOMo$|=Y5AZi8wb-DbgIk!F7}4 zr=bgik;}?*G@V~+%|iLi$*Q)+=k*?hlZ;dn52>Tzs9-{U9<&n1GNF zHLH)9+nrmp5&|HV8_Y>x+Zj)vI7Z`>Z_qt);2*VjI4|000tf)63;Z%Vg$g-znUbv%i17Wu}6%x=)Q3RiypITDkTWY|OjgLaHxn^9?v zv(Y_9?JqDD_*~3QEKQBK}0C8(Z5qN|F~Bj!WYVgHpmmHA++~x zmoNZ{7AS?0RlDMlt&K!Xr$c|kH~ZL1B&46Eohx8+(Y>IDtRSkN`Nr`#p7d&RV9va2 zJfhas$vDFzC6JS{8N4RsF0*-gHJk4q`@0$nyVV4rRSkGe5bJU=C|MA&E>o-;;6Q8^ zN3i?}dj(U2XQ6WdJ3H)0km_mlx`#jCxL;=BQD<9WMif-0?zWf(-)-0o-0FAh=iyWz zAe5EX&RGPJudk2PP=&Lc612IDZ+iBEMwu$t$jNSRZ*IyAJsRTHx6OuH ztCeV9_rat6HZl&dMoH~zG^e8p%7po*odZBVAx!9%T*0pPfMKsSw9qV0tlW><(6}8+LlpaUU*x?p_YnF>Dl4UOKe2p=kCfjg!>`Jb6XUF*^KW&&w{ zwLd~40ZC;XvbYs)KcoAs3a0B1Ao9)u+S9OT+ zf{z^=aQ|WwpE+CvA3H=y+4qF?+SLUXcN~9z#6m9om^drV<{$8+0(s(sv#mXF#@W_K zaJB`a95;Sbr}h{>kaSEo7Hx@U8k2y~IK^^Wk|7j_Bmmr#^P6PUP^y8@)hcq2EdfA# zyH`8IcnU;GbKa~QMhJO1qiikDh92;!mtlf)D@4cLM8yNZ{+cT3uT@P|7;baYe^V&l z)m!e2w}X&8we^yM7X~jp^e6n#6hhNb2`n3wd=B;fY8`-U0223O@2pK0(c!6%zg$&0|MF6YAVfud}0MEP7U3<92y<)1$eGtu42P3&kcclT)Fp8n&#gD)t!rAhJZ6#^dd~Dq5{^!A4}Wm-=D+svPVQSj-(yPmoERYBFh&^ zju;S}#IPIpP%NFE;4K8hZ)6Wu^l*9t8oS|Sl+rg__!dY0;)uE&&s%-7*9Uu7X!&ddNLErr+$bYMG_oqo+fEX!iMFX;2Tv~+%sdnMB9mp@@qXP&)sKI#!RbjsYl35hvNR3YsoLoM2HzB?}= zB)Z6SRIu5);`eH3XXq#y1XtRg92&p&dr;<^_~+}O|B6tB(6Y88z*6z$)otTM0i`?P zH;XY%mF~8M&yOSJ;&oKBRU5w5%7GqOPj*WSQZ;{P>uXdNOMEcKJl;*CCzC_ALv@+c z05p$JAsPBV;VEU!xRQb(mLNM=PB853j5j)`qol)>mz9&4$gwgM3ILJYiL4t)=UgqZ z)M0C01U#Ys6Zi-5$2Tt-@$*ep?0=DxGGX}n;bQw$A#y~~k2O&*&CJ?6Fk$vE^v*wG zoPVb3{8P$*ChQ>~JGqSJJ2AbTYnm*4KK}w~jqMQa%~tXJjatJvcuWNf2FuuXLv3F2 zwKxEj%@~?rKz?(#8DU&neK;ZyM9S}u0y!Duq1-DErK0nqY-T>;Q>mqYEYFgMIGkrs z;JJ<_%4|YF^g4J8>{2Lf#e;qr=Xn`D`N0<4tLnj>7E^kqLW0<=LE{}|03sy&`kcO8 zx$ySU5mxaCiTqu7PHzxIp~q+==$wz6fGv~SixwOd)eKM~5i+jn65k*LIS>Wn5XBpg z?h|ZBO;1=%232!k``Y)K$5z_D4@`BUaen2STYtU%*9!OH%qq&RCz-}CH(kdm5eOYt zoqJ^|ykFvv{O`Y0Tq_ruW9wx3Y`Tl_HRl6ya_Nmrvt!E(=AfbyeeiGF!z=J&u zaaA4>0bBqZ;q|2XY|ulc=7(yW?ykgC<;BsPHkoIzXl+O3Qw@RKhlmP1f87#ZA#w7< za8Lr_gPQQSL?cg-qMxJ+q=Mt7-x<@RzznURubexh)rQ+7 zLy>$rdUT~NPM^C6N9!~i(pt{llOm*8g7TpInV?HW)&vKE3OKA{kOC70HN= zP;%9GZo;NU)CtpA43X9*PDVRYG)z2a=5bQt?!)P_HY#Y9;DpJ$Z(RL0%(vv-K5Asq z3R$;aQ#c9Gd3qMnMfnkGhx*j<02}&YqbI^Qqj<;%Vw@W%ziX|JKXAj);=8DVBj|?3 zqCX-XiZ_tYqf}(P)X@h--^gW~g2f29RS*JTh+|6HwDw7gy8P>d;-`R$=L@<9PXSi! ze20}wxtN%i*$WTj-44*OOm>7^*HPc9tva`9rDn10k8DXstu0X@9 zMg2jLTOt8{vXSBaZ{cNd{qe$CuHesv4~< zf0=L$nTtb-X@-pMPvP1a5k8sze}qqfLcMlE>Qt8<^f_^{J?aU`YAC(Q*^Jxo5WXKj zWq;6oxKPH3AU1)`g&nkoP>OPv%eU@`=`rQ+eaJpeU zDude_XY%;n!a!I0z&`}D$4J@K2^eM!=!$_I{_2gfoM)Od>4Gr~Rv&1BFqNZk%9;Rr zg>2L;%6d`8jVUHj0Q2$^$hdBzLLv{1P_=iY3253h1lNY3GIwnb;}I*MKAY#jrB$&SSsEgqLwg zWx93+H-Jupk?o$Wc2h7W5DM#u*GXJ1J)ci`4k*E%6+38GfZE_i>Le0mM7AzhrPmMz z343SK+-rYZDx@F?(s&5yUN>C=Pb~>R-}X^R-MtN9A2rA9 zlUZilh*tY1d(UmpErj`P%WgLj8hav}A`dxQt!!U6*la7df5eB2QwrnRn0XTTaY-zp zN3-uD)aGnS5>A2p5btyukC)&fhzG-b=Imy(>=aTfD#gidMYdxU_{Z{&CCU)GCX&Za z*ME#1R;24*B-EQF`>SQ?Qwu1^tbrQIs_$J2kvH8x&N)N+li4Ipc^Q2E18|8HLn#Q+ zPOqs%#1E0kyB%MzU*A5w?c`)OLZ`ns7jbkK_0;#bP#gKQBmaR2=x%j0;OO9UAe?egzWG z8)gMnY#&pO-HHGVJsgb)y-mC=L_$(0cITfg$MhuJn}tc`2B#5EmR`UV=lk zq!l=c|7a^2Z_{gb$jM!~`=EY_@N^^VqxE6sH18Mh&NdQ1c+K|hqS1m}znitu0-e~! zOQ#+vK6-Gf#(S2jC|fD*bmOK_>l{aPiX4hoE@E;$s>Wiz!c?%WLaJ&!VQeZ|HY7=q z2J~#}ZE8&tl7B_yQJ1RT1GJgZ#EhI)0(1Fb$`6L{yHeB@ZoC?v2V?I5P5C{h#6V!) z0-}+y(=;rS;#I4GT$rnV%52;i85zm6`(RGeje${epWj&p%AwsO%Txap?@<;uv!qt3 z1(ORU8S~CMRU}!r-i9iL6MY65g-*#Cm3NB^b@e6YT{=$F-<6i9n&<#YFKVhyY+|xS zzz)!*EG>;1uT7E(TlBrxwQopbC`(aDQoAoEHZi5|6>Uh9Zf>kwfRmp!^)*;~S*ng_ z+XkwZM_Xd<$!NB#9BBRF`Q_`oqM#OvslU+ZRsK#USMKBw%kB(3iW)`6B+w`PA-b*v z>eG?0DKS@5w*blhln08}-+%%c$*@nSODGhteBKCy_gZ}`ofDZBfb{O9RIbjEs!2Fd zwok*0utvXspX$g~CD~gWtCOBc{gGZmYo8XhyxPyTWzwnU@s_-&IU-xrLZ7BJXlS=m zN#MsDw{(ZTDxDf80O-=`@)wt$HAGNDc6X|4Qq&LfsqSE$%R5jl1v{e_>Zt=HtJC~o z)R{H&X|dZ*9%X~t9r>P?4UxBzIu&+uCM~-3B8W|&RsQot%`7sL3brQZe7IPrE{a0_`NQWL(XB=yTkP7~ zm9iPvk3N^d!miCed*XXl`reTIjkcRKCx40g?hSUlYZFcKr@Rx+L*U#sZf(M(x1Q>x zG>K$E@^d0U-69jRvWB3rVulRiFr9VB+)CgMALyi%sq+49kB$R&?M&jxtc%QAenHND zC`G#hvns2#y|Z@dd}RBWsiqL6XSA&8v#fSURZG|m$vB-=fr6_`H8XqnlME0akEN) zsfSZ!Z}+yU{pS%8)yTC0<=XygesYMKhmy~M71Do3Gmba{(gWir}^xKf!-lr z8Cp;swQZ|@%3JkUg?PfGT75i?8?h#W(?Y^%?UqwXw^RvweO0QCPO~tD_@Rok>(4G1 zp8B*;$fC61@U9;{@{35fj*{L-d~WNHQ)KAfA$>$>#{(a+4&;Una>#wluHn_gJg*C% z61inbPptdlP7U5Ph;;jT%6q6l>nYCR2KgM2+%T*TIY*&HK=w z;7om4#3z(?UG9d|l^y91&zF)lY0_!DA=qbcVE%CSgz=xq_LYw2bR{BLWKT#E zP?mOm-x}-~82dipcduu>N2bmWq!v$E4_C1{lDWU%bE?ssOSMXfBc5mxgHGO4UAZ3+ zdOaFcSvMAprPBm4Sdw{>-gyU)WV_OnSQ3EO1iBdNO|ofGyw9UKvk_^xP?aj;1w75I z&CVXw2-Y5dea3qi(?mc2#!0pTxLbvV1itMoM0G2;t?&R*J*^kVN7F=!oIOtwPwB&J z)tJpEGm$=2qb;OAS2(y^v`t+9VXV@!zOB%1P28itXE8X7ySL0#AXBU2gXdH9dXiD+ z5OWHw$+A7$XS^+XV6xJ7(wobJLd2!i0#zjjwK_;#puRIO)0AijvObE4K6x_U zyPuX2A2*6$ueR#CWy3V*A_ZXM-e(O}O~0CYhG;R6*9_4|q_u=Tio*LQPbs1?QlLfD zx7W15Y4FWCXEu(gXq9{VsR+AXW%k?!D-_?5gXgr;L*vOv#qHd>Nh||LisxQA<{gVq zrWYrsexlLPlJgQFl+jBOQx7zpW~yM8aWa6uke!&GYrN*VvgV5JO~qp-{52#c9m)8! zV=e1bd(OZ{M_v67v9BTg%9Q`;iz5MyxqPfNO73Tn9Q`K?_9<_nGS+8Q{@;=h62Cmf z4QE&*@~WY|jXD!`LjLrCCYhS@ru-vzzopQ73|oAw@Cw%GuhZUgEK}`c^>)0B8ut?g zFNuhVEXgFws+8Z>6I|o^_J&XyqH&ru;LPf4a$f7Eh}R6^U_@`jYvF{k!1kA1D*5ZE z6445Bcm4D2nM1;zU`&9pu&{g=@fwqsTd%dGq~wbpJunZL76dA49@*XNn@e6=PZ#?; z)59A@QjMD8G=J8IdWbOQ^xPW-)@b?5`K6_o98AjFQriw@me@=rs{0>(B~X3gW@!3M zKrK)Trdug`nQ_$DQ7y;Qe%_b z#$AVd3Q8rw(5KCTkD(>HUfnbg3m=5j+TNGCCQ_}jRR#^<-<*k({1r%Yd6`y)QqVIi z0S?2FpGsmb?0;xhmtADZmS6iKZe(uQf=w5-q#w%|TLP9Br+rpHY0>O{3 z>D3BCEG$ip>u_#~{`*0(PCd@_R-Au%1rm~aKFI1OMk!uX212t-14>t&Q3?0IFOf@fbc}NK$-9mevbP+tz4N-)6~y$vAw2VgoSgqzmj&XZXBkEkObcNi)H@msyn`(~kA)q`g|UXE$R_r&1&?^GJ^;Jb z$X;vJo_6W?C2F}ahkr~S{(E`;JjX>LtYr88mtc8uYR^Y!zd5*npVq1Mx)R)E;uqV4 zR`5KhF3{(X)$5M~62N5g8uaefb0bwggu z;JcX1{%)!^?0`GCx%j-zvs1$1Ou?ku5JqAXvU`74?6)gJa{fq;hNvL0 zC8ZSp-|zIFFW&fiI>=7pEyN~>gNW?tx1%MP2gvn@^DZ>8Txy6DPW>D>l~}5eyjqI1(M^R{b`&m-(+l=@|$do`PvQjS>7W=jE}xgUS3Frhu;m$yUMZd4|P)$w8YUBG+PNIz#^b>b}L zh0~XQAIRSauonJD-rUywB&YuR!r=+6Wy2P)V33FOu{HULA1RHqSHM{xjvCD*v`94X zMONl%Bb=uT@0bnu&rhbyU!w+9FP2U&3MAPB8NtMfcvQCr_Q$M9dF--=k*Vj?BtK%i ztkvugT&HvM6nM9X+(-{5{$ZdH`f~je=DcMr4y&(3H@s3U^(~AV_LA_&pCOtK8N)pg zW(M7K3i(9Wd{5V%*(el{bqD=B%tjpFsf~aZJSjij7Bsr{>i2y)oj)77to|z4cdvG@ zF#7UgdV2(yfbtD!O@BA2+OS2iA&xGhd*%N9`zcB#;-~_8e33U+2?H9DZc9J?KtHNS zJ(hjuMMEH*l-^*sq}ca4Q?g={gq6JJYH!p=4OMTob#|X*5cJ$lS|z`uML@Y-Zz7a{ z@?vj^?+GnV0Mn$T7WQc-yn zWpvT)6fn9@?1F1PEy{D1>Kl&GA2_wlIwr1QoMkkd?JYF;^_N3 zmhGD7HKSM+HB96wj4x5sKxXlaWT-B^5W>b-BR`qy9)U;!br_SzjZn~7L@eaGP^QR% zVd^sHV@YfH`)(SEP#Huk4(l1!3qZ?~Nzy=zpZ+c){K`x|zx7X?4HuIq)KnYVY@MTc27O7#v_ zrZ|k6pOY3^?x080@urEtB}vF9@o_}6>vuM(6*&_3Lt+x&e!A9RtzW87F z=IrMe-irJ9fsk8Rqt_}#Gp_!zg#X&<3v@@WBYp`h=>^O+L@hA!?J((b7cP%N30iNc zHzyX?o5gD}x700hOYF2UXq~_a0wi{X=f0dsvEB5AhIoPW^h!%7L@9P{7IsOU(f1(( zwiKfMdyqb>$9U8ir%to)yJ^O`@4GUr8Tz_OmNXL4=~X$$1*81RHfq~ly*p9zRUr72 z9`d(zlqu1+8A+sAtp(Mn8^-g`h?eKxBxsQm-O?*?c8&bltERsm8Ij)l(j`Ov^qm2x z={zB8*W#TInV=1p)(#hl?T60^yUYX?Zx@!S>FmXP{_1%C3$NjQcsh9O`)}Cw^C$)i zjH6Oyr_-YcD$pdPoR43vm*IJ|Ch{oZ#mp6Nw-qRNBrn(u*$-zIC{<|~A}TYVy@mF8 zm@4vAVvVwCJ2n1VDq6KwxK4fpkRN;Z)fTwoc@A!XXt8%-u*xtDP@r2s5HiQ?O8N3^ z#{kQ46Qn&NX{Ew{O{nGVsF^ftWgj4?(ycAFQJ-v71wMYg5!K zJxQNVBJXn5tuXT6+}!NrR!F-)i8Z>IBoH|l1@A3!%x;XOizAPoq4ODi(Buj`fttyk+Pw$)W|9GHjEoQFuLox?If zykvSI`j+Gx=i~6%!4ig!-mfDYdvwU{(5^;}^J45;m0HBC1OxZVEn<0%cYk@GMZ{#) zj(rb{SbH=v>N7N+JVS+Ajs)C=cZBX5%9daY= zO|%}UEO2k#8jLoSMEpzwNvFs*51n?O;=82cbDuiOP+{C8P-R*dc7F ziO!Qw&{9oVmr$j-u+kj6Qs~x3g<|()ei6lD%ENYDJ@c`PR3fWpB^k%F!)jb&Q6jY;DPV~ zmkuy@w3a8D*t+3W9Q&C{5Bn8L+|p;JCg8oGE&=@$9sdYSpXHcniV9P*CJweEQQ$63 zu9yE7TSPMc$*(CK4A*RkU`W5pp(MFH)po^rr`<865DV|dMTyg0&_}7}!Nu+HA@iD% za+S*r@}e4v1+ zEqKf!2)br298^CQW?Z9uvo=5@7p-`yCT>Y;lE~BO%T~xtVQN2{b z2kX0C`ffP2SxPH~G9Z}_ zQBJ=4Sr-WZx53i6ab&P`^RH!KAAQ9QzySj+6LEHl+qILKFx})yXSR@2-rZK76D-JK z;I?y&yb28s?fHemA8F_!JzsL5b~6cp+>NPCy{iNs?S%!!mV2%N;;PYjXJYT){o$7T z%wf;XDUy%{$+GnGOA&v54Ixz&sIi{8cYEbNvp0|Nr$^JgPlHaK84j0??Py9XG2G)4 zYE;|Q*l7cnzbS~xP=F(j5@_u;_>@$Qce|?%tGlT`;XG4!mP#>7g1gn2rKe%{3)DhB z1W&LnQMl3M^(Kfbj5jkfdD;#N9j}Xi3H0dD&eUk=_!u zMqXxC@7Z6WM@SD}oXt&IZ4h&W3Lqi>KYJoD0+QZ#X@8-VqE}$zzts$+h4dE35 zdg48;pK2jv`4UJ}%7_372A6$S6)=&Md7=qvTtc}5$uH4;UYAt7jh5pagVUip!8Dw3 zj+#wb*~#{PEa(14M^4jy>73yLnr$-?Jwx=RTMkvb#XC-Oi(m>7ox=Qe0)0lAHy&&& z#5p~!=YRF`eIkTr*lc{DgHQCmA7PU5enuxCNJMd>|sbJU}3*dSdOPFhs=EEQSl z#e_f8UD&@Saa(1U*s;Cw2|i_D(JJ=b-mX21O2WxC}OO@*9FwpFy(m+kZ8pbt@@bHCQy^i8axRFe|I4`gXymH-a|Xkp|URd0UJ@GDhvqxGtZZI=Naj_9s^ z#RVnn;nzZQG4WZDwGS>4v@V54#Cu5hiMTtv*}m&?t$T zKUnH-D2W|l_cexxkl+WIXXgKry5oP=)*c(|+Q7*7hXLGYVGJ^va7DqxU_}Kn-|aCJ zM}swLPqH6n!iF$s@Y2Yv3ZfiV$omEaD^bO8*vErkDp9b4`jls>#Sl|+eOpJXs$upe zUpE=h@tpSFv(3xy3yJPEj?t6`O7GtTEu}FV0)J-SqV3cv_K0~f4QAh*#8LL*bHw=r zz3_?^^>5ZY`yD$Z36OjPcdnwyz6$wwjPYE#2=Wc&z^e+Cx{E+aDzcv@I`Vcn4sX$=(-WS z!NCoEx<*JoD3+yOfZSOC^9xeUbMh&ISgN$e>4RMM$V?Wh;8e*^+tU#HsJr$vk}hx+ zTX;Hry>f%{!$w)TgMrWZ&S-nhwt zNw3#`?1JI2-?F$31-i28x4Z4>w0oM_ttC|Ny6#@s6MBT4+L-IVcRm?jl5+otn1o!r zQ`USh!nbR$++TO^7RR_G#QA&vIp9r=6nCn#CbDlWR}*}V2bn^*OuTO!zXa~Hz=g$R zDMe`SkAS%9X40L_`-B4r<(4I^8pYB*9xF(-H<0|g&W3Y;p@yT_SjoHO#8?0?XD`40 z+n)Yc8D3yNjuERLky0MUh_jgV!tmDOKQUrIIm8oWMOH~~DG@5J{X&V8bsuOP$|I~f z;h=l-ECMU*Qz+E|169w{-R&wOeW{S^nlu-@KF4H&Alzzh3rq-+iC2?b<8<5DWAfMz z?b%oRIDikIk_PD_wwZF^_}_u{KO~%gzzcLI5(BqA74v&r{p-5~;hf__hd3Fpv*qRM z?h2m$MGBs~W_j)!)4E&5^AeZ7x{Qt*PNTS3ov#X~m{P97SN8=tG3mZ3>!JOK>ms&V z(lwg0!%W%$O_BN#W$OpjAT3aXa@bE8S|eMuJ-aHecN65Bn|6b7R!@z)b4NfnzdgXb zTDuI-DGM!R_~{h!Rp#P84uj&^tvT=gDm<xdeJTN2*2m6F%hImPsP%M@TMVpfVhTUSBYrY01gTg=fPz+_zVz=Z7P-<* z4_5@ING@&TQpwim=^)wnu)jY2@hdGDE!i8Q|6m#|E0CqMR$(yvJQihD872e>VmIZ; zyRT3sIV-Nyxnlt@5X=|~pGWHB&Uo#(M10}DQ$v{+M8#?y<*97mWtNK@$(x(N0UBK8 zKh;Bu#KUHD_u6qe^R0PfIiDnEADF<^Kpgu2vD`f*hNu}9fm~!m#mYe=Kue8B_Qkee z{=g{!iCCg_vz~EfxY+hFFau*Pq`0W+TnZxY5<4Q6$SB+7Gc#+k3;cJFco900mJb;q zgQ;RNTiH@VaLc#C_VQZA)0q@3V9Y)1Tdwx^nY$YuL}r6k5wH+EM|{#gF_DAy1cVYo zPiAjnQD9fR=QZ%z$jP_@>RR)j(C?DM<0{o%D`GgxA4)*|+=>BR{%S7U87HDMl|JUqaoP^Uw06HLQOV zwcR>a%0FcRDYp-W@HzjY%0Yp#Ptt%0MMH6rw&3}CDPr=eaStmdgfww_IuV1**Zq>b zm;H5fEURyP8eVtEGJYKF`~AcoScDUhs5?nL!%sdD&H_XmHNQ5a2>RAd4<-BRLcdf! z0^O5S6xs;Fd7b3rr?NKYL2$OTwpP;AbLWi2fTF`8y(`PJ%*ns*nt?yfXOUj&%U+?dAVKCFY`Mf+j#~bdD@<9RXhG$>k#_b(>B`f^J zmh?%yP=oee5cwNVnP+Z7|2)#CCRTg=Bdi z*Dz1!hnGfej}G4zh_L%+Oz{HQ`q+gTZdl!ni{hE!9YQjin%Vw5Wa8YeXNef%lmEzs z<8t{&rRqU#p6H~l(1#bO29>i^3obAK)|Evy&f>n%$U|4A>%w+AD5rA+Y+FV2j;S&M zYGH4vfM+M@LCieGz6-CJij{waAO-QtmzyHm!F&U)&zbZafFp|T&f1s>w5yKNv{FYMV&1M#WGm=j-1(<#1CAfc12uh>`tha=1{NHspEdNwn_*=w*=d^en-69MYJSoi=?-M`hDS7^GBgdy=v=GWnR ztA6wfNdkWIww92@T+puJm*r)vEzZi|%y&Sw#8Nd?eRM;lCD6>Ze6pM zCie<32U7KtOHoSznr_U_Os0w4^BB?ZfFDT4J35$eR1BW0WP$R!=SB5z?J)zeqV2=( z%Lvm{M}!{AzUNt953>_JWUv4Y+1gpO&8Z9%bCrr}T#%@|&^)l20#ltHNiP~|qThuY z=FRI%`?{7`Bp&p>r|C$oH<)vd?f7DhO1X6DQ(^8|2(Nk1y@N1+U6Jgt@dmw`{eXqR zR^6I!uP-SVrwe%Y3w{bI3NvIx2-WN{`T8S=jrHa(4izt-!FI@pij}M3lA1KYI z$rnsY`xi|9+cP&f_RI~=NBlSp1wUIIdgfIBc;;H05Ss{p!3%`8fEYam$ODJ_t)78aSAfcvJ+gjBQaLXni zUy0)M=ABIJZ=ELWuR$2EIhSn52Fy_@d77&Rzze5TpW19Su3=zu9(3$oo?2>+2|UvP zhL=|^zVO8kjLr?)3arx$_<)+|a>v!s?nPuxEk{8MjR!*QR+A#^z?ge5BR#oF@m5k- zjD z#N97MW z^H68%Oy$&YQ0yz&z#Ay(zdCK9X2}BC1r%JP+IO}n7m!nV{oeP}vlVk>?AMLGwA66= zlA3ivECUIX(89m8#>FduX2Q$r1YGdFw%S_J3fNp6Ad~`KzY^w;PyY4u)rXo>!Q{Nf zoE7#{A%(1`|58jx!sS!WdQ99|W;U5Uyp0tm`=V#}k2uA-K+2bK7aB7Rdz|8fv%J>N zc&j>_4Eg71IWn`V4}O*Z_+y|cjytg0?a7e1<*I?YkpTNJ;y^U3m*D(M;LTJye7uUW z%W~K&6fZY+SA#d{Wiz6NR)+{VJv*-N36==_KrB=NcfmAz)vQw*H0PzGrG3Dx3QdW6 z$$Bv(BtX!GI$a?l;t7L7)9?u4ulHPzvZp`tcnax{oa-WLRczs_za%PZ1X7r;-uaG! z;>!~xN&QB*N3crkqFYiPa!pkm5UbjB7jxy6^a^Pw9Ks>;mLsV(`(#GeF;2fRqVw9- zn$*)BsW0u$Wm1W5?gq{;|7w4dW3gAsonl(HehIe1o%eL*4FxCcr^Q|--ol##RBPf0 z!2?F+{e-d<`8jjN^(GaAnV_w0t7gSHh>+D!*1dr1ldaci=%lX}AShOzO(F;e$QNO0 zH?`-$L}d-;-lrc_Gd;gOZu*+aBlgX_Y(~pb8|6+FlBExTyC@k`$>Bl1Wd1KRw%S+* zCG#R#14{b(GZGK2hR%hjB?ZjM=L|=;h>%=@z+NRq{I$Qeen%2=+8d+2YIc_cXZs53 z9ur@tmt{;A54QW!+^0{3Ww4XO`0{_}U~IK(88<$kgVfJCHvc+QMuV&vXlYd4dN^90 zI-J`>`Xx!5kY$Z4o!wfGM@i;eqn6hlLcy-(L_jQCoYEX%xSv~vumQuu>rTbDPZjkF ziD4Y5wVp;G6M}Y<92jH`&gHl;?2)-|Yd@#4N%0c*0woK=Yfnso2lhZDQ>DQDIsb7W zZQdq91R?NRZcsK&Y4dIewn{_bj)}AW*1HY_$_w$SzfLA%^3o!n51@X3t4}KJ+0KG7 zf(%w#i_OgIOA$uEsnhDuGYJY0r+YR1WDrm(?N(r~*PYgw7i6+jdPaPko$4${*1633 z1!r+j$r7&EOq$BgNJkUo%-Vq&g1g72CP&ZB=|I(Zz~L87eMnNz+pdt0ibBuk&p@YQ zV9Pm*IpG&(Mz|Xj{MEgXQYP*tv{^Gbl-3#tG}HYh2}4s^F600cRI8Rs4o%fg=TU3J z$M<08p1ITOn}%@8j>6>Vj8*Rn(vD}YmyxCC<>j>qug;4oVN$a&_aB2VmBxdyVH>?f zbD*E7VqDowT8U<9b3CVIhfVxkjq}p|M)fQ>)xlalKA`^075L>brU4io=@O{c*fD`F zNvjW;;ZV=hi|)6tgPAAt*k)AerlkzCVb{Vqxbdie14O@djp&6#irxHK2>jg~#-n3o zoUMktf^NG~GhLZ<9^0!*HJ*Fd;!?lC=^(S0U}O*fm%V~uaUAFJ^vXAXaUL?uHV$)n zgQw33MNYNpOZ(qx_`-Y7z3k5Z?AG}T(pAaJw2NV~X1jwOY3by)PLR#6Y5R^sO9jh5 zV?aE~yb_>^Z=d=7HR?-&fseb=4KJ%e&dDF_M3Lk?<TX4Vu2hk_A_r+v1IL-#XJ&^ya3_r$_A}3KF3b0K zz;2_+Ap|u$d0T{p4|=});u59;Txcjv`%WGQ1gZNhJud3SS3H};{9L;URg1SdX9MnjI*{}i z`UXS-=oD2l?uFHZ6@A6l#F~^GffB@08Ja}1%IONE)U=23Zw}jS5HfKHd~twmeyqdg zgf(j@3P9izVbl*(lv1U`xuHEVZz&No^biY@D}H}zvt!Y^eORl&YH}2g4Kf0K6x>IB zdH2=>%DoL)C0ZF;rU(X@%-9B%P#A7#lJs&)_0NS3S5x7#JM-_w2Pq()Tgy?!PX}}f z9lP_i#atb&IhH7*_wi=>d_B(z>OpQY(i za{9M*Dz9$TTLJrQ(2YrB$6Eca+f%6yR%|_n{G+0Yw>{QGb~**laYl_X_oyT`Z$S|p zanf+&V79L=6Xqamu+4v?%Ke8*Ly}0Sp16mi<(C4C50h6Ro)dE4l?a${t_}y^z-cL0J6Zar@OPf#a{ZFqOq*aa)$R|6} z$zF#l(*F>FoOUPMzHc?;k-|L_qU$Y(ILKP>NS9}SdAZWG*Ki|C+@fU&%b?pgzRaqL zWX=_h7|W{dLQFJCf<^-4KkDk2#}wRFAHkVxj(wzuQ>Lw&)bJjQjwB39sPto~@aNbS z1x)Q0pfA*aa0j`vEKZ^axf(wxq{ibP?cZH2vlyt>wx)5H)TG!noU$SnHqTNM_rpdw zZQTc9H$4XNWRQRRMit77{-Li5icjwTvdVW~l{$|M21!$?iZU5#{|nROeGOd8=tPn6 zZ|xDTdjh4|#eJFIiCPo&l8QsUdCz80G<92*q@fkpD&*i_K`Nd8T(z45F^7J-J{owt z-AyJ^udZHlid_(}iNs)#!sBgmT~SpocIH#_n@j3^u-#%$B*&(C)p#RmDKuv*8Q_F= z)63jU80tto_pp_)8%QPH>MwnwkED7cu^J&w)HKljb+!MzaSLjpxKPAep9QpvKM2Do za+nu+8ssN77s@OH3OJFhU-zc#!`XGo5ZjLdtr4;aI+>-I1+s5nhi}BwzAtfF^(owuh%-r!`OXTDeEN5{>;kQ+_4&N^^|zMNk=r|I{MP%kwo2K* z$cdlmA?LMYZ$k_A2iMtH=u{i8Zja=ePmPX9q}p%Xb44;g(EWidqmx+AUY?nd;j>?V zwwu4A?jbk>5cO!#ovh(KpPf2HWACYCZT?GQkAZSn^~2Zt6ts}p@2iT}{sNUAi`Fvg z!(KH&7PnTWjQ4l9;yi&rntBhXiOMP1$ILcE8oQRj_J92FP+k7aKPI-<1;)HTj4sPD zbz3_vatH{6mZBR9>Oy<ny)bz7rF%DDS=k+lVNMl=gbNpW~WrkpTD8@B^iFPktbuUJAGXQU|H}k-6-64HFNoFN&ZSHF^17vr~rzTZBN1P(U|c1f+ij{oel9_kv)v1F|tlfoJ| zfTiS$uo2iSz*LJt1y7V?d=4Z*?pL|eUEcob_gwH?6tJ7-QFNe!YH$(O5`?&ha1WnvX(OdNKhaF3@Z% z`u<3>?1ungO#6PxeL3^Il|oChQ+zE2ns-kN!V6&9eopJgVyQYdl;X!B{q@;i*!)n5 zW$c-<|#<^|a!)jv8->YQe<0{CD;r_H31+>7+|eM?onmAN2cGA<`aH^rb9s9vfnNwlvN+es)T%9*=5Q}@8aErL>LBIuDQ{~El-kTc0Ay_}gsC_( zQEhWkIj0IQi~a4B3i7P=N)(Og!9CxC?^rDsq^v6#mm~%r=)GYVIs<*LQ(|u?T9d2R z^stOVIkgPb@^GVh8rr?&rv=2~L!y{;b)>5`ACU2G(l*)-+$X(ll7+Dx0#znktZ;*_h>$R&~n`@|#EwQ`S8tVE>9SkkP`hUsr-5L3%=B;HTI-#CYl zk4OSzI4Bi;wAYdgnUqpqTl5!7#c~?cdhPF0YSV%05^;sP-+{@$!_`saV?eBlm~!Ya z1X;uYVu|r0o$|G}`+diyJid%@NXhct8{#>I@ti@6oiK?|N~y+3CR&+ESqwP}fmHdn z?m8;x0yx8)J3BIOnn^#`*VoUl%&~0(kQ5xhIAAlb)Liup=Tml-3jbWqoqXRzJ@1V4 zqeb1N4TaR;cEIp-i|=X79J-gMTXPeWgaz$@!d9m{qy=%q7uy|S8AVscZxEc%SWHA2 zukG&zgbTVTNk#MI(Aqr4btCdeQaX!amcZCX!xr=u76V!H)P{vUvt+TnNxgW*WY67}|=5y!Am5>zkcYzF}UXFE5j7B?i`b%^vGZMc#tp zs$QqMX?g^A5@8Yj%+^A4Sw=5QFVxUHksx@%EvEiMp9otmbi~Q})!N7J8aNUXk5y_h zFGO$=64Gw=-tM2bIR4v<`-jFh6S5e^qHffatr_=W8><)0T9KJ-jxDLl)30F%wG`cc zU`!7O5CFTKIKUo<*^xc?Kcd{@I%>U2$TZJkly{0?bkqYm~aFMW# z!P$X@heA~Yxy5pIie3`S=4w?u1MC@rp4GsR&z4|WY~A)r538_F%K9+#VF0B9+58qp zQ|P*8Zt1FBX2o_I?`nR`448TYP*j=XspZKQ7R!NB#~mdAOSuuHe-~V3Y=#rzU$D$)ca$^WnGInuM z9<0$YpY%J7s<)-%QT&cGl3-7%WmkeoxyDf? zP}Is;eW=q8=l{DUJAB-j^A{l|LjPF|P=v*MSSk+=Pqo)UHMp&KJnEC*`KGBPFG|BW zppV!HDFqF14XmpmzqtNd%)`rlW;#j|T~B|*=6j^+iUEsOp$#&3!V$RW0oI|NH|5M< zD`8XPtyn#KRT-2Ax0#NA3tQe?da|^%6y}42`zk3ZNmvnJLs6h^)ZA;TDOv$lY&Hg( z(&8GFMReZy-w)(`TuQm#aaywM@Yq*jN-3RM$&rWKbQDU}>UcwLp|MWv)X|ewDIOod z{J74&osFh6x%lE~xoGx;J7ygZIE@==nRgM+OOMZ;JJ%jk0_~Nzn`)g~HwJ#p-1wdU z7N;Fco*p>cIL{gYRfjg|IvE)=mr3($ zaJu^6{`~MTP`b#ZMX(T5pSV3w5I=FH6W6Fcf1K+jVHd7EWL=FSF=xYR{ukeg)uYD< z>FK|==2%GSLBc>UNyLktoX6tz!QO(`rL-+yLXp>5s#(%i&P)G)JOV%r(<)T&84#7@ z|$;t|lzU19IA^$q%f8<<`_IT-^wzsPuEj=cWuxJ16>cxZ24c`^yvfjte6dcGB)!;;ZR%n6WxGV^ko_w{G&T; zCA~ojW1NNmtN%Qzx6i4g9tYGQDZ=x;(Fju=`Je9`{?i+MyqW0UGu%hOr~#1dTY*On z7>-1F;eWi};S;|I{8IvKyR>cG{J(E98gmq`!7PTEf)DR1S_~viA}}=KgoM2y0z&lU z%boA%{*oD+N0{@2A&B;UOjY=s%zX4LzDK(AE&;oq|B+bo0TE0rN;f`nK^;19tW?9h z{`S-656=XK-Vd8{6x04cUM1mJK@0R!9i99|C2$ixep?6f6UUwle8&2JDd?A=N(d;w z{r^k(m8&0RBM?qQ-^nlsO7uEd|LgT6kUEJ!7Wvk5pby1lX?*`HIX7C5%f&%DqarXG z>x8~MApqWW$M5kYbL!O5^1Q`tautQ?33U9THrS^6H?i-i{#uPuQ1Dbe`v4LH$)`al z{++cuyw^qE<5J>5otmIS16C^rHd*MDLeYr}mOlcT^!)A2!|InmFNk@sLHa*6-KBy4 z{wGe?iMOtW9!qd9`#t`{BRd+5QAf5t|61TT;4{rjCvJOm9>8}Gn=t@V-mvptyXgs0 zIdMCiykiMosC>_j`HBxHZiCzn;ehyu{y9|!XTh%f$B3W#Z*jWl+bbA#dssPQPr`w7 z!eX3!-GJlws8en`CJ){PweEc`0<9+;u^Xjlft$z1bx-8P;~lL=?WI4Z)e=2I#wU)} ziPgGc1&njzU98da3QtmQjC6SiV6^?&M3WOgu)$QElRQ=;I-$>xmabgx&r!4_!N>nU z*g(BUH!;Z5edci3YNwVQlnuCzW&dk|S;1#T)PKJRIpC3C`m=ydT-r`<`)kh*Woz_z znf$P$*irerEwH{e*YzP6sQ#S9+KXV<@oxuTI4)lJv%5Zb8Geh_^(l6}Gk=qZ5AR9< zO6I|083d#!UO9SB8%$e|71-MonM6?wP;!4=+vJ(&Unf1y$_^|{c{TQpLh8EmNxN!j^Y428QK4~Cs=vEy>`T@ z>AQ#f&WrKdziR$#fi=KqCJ+C9k0X~3QxWerwkDBuLR3!3RxR>asUXq*J%`KnvmAmo zdbb*KP56%>dEW%$M*f(L^wgh^j!%%S{BO~^%cF~_QEUW6=x|KT&yy1;ZGNCqkm+Wd z%W?Ct)@fw?XKK@O>p<#6j?x$8*HO)<8MH5wMBUwgy2vF>Gh!>Ai_woDYK)G${N=oa zBVPRwNPaJHQ;#RNm;7e$G zuaQ}Px|ZX;fw(r|m|=I+$l-gj@(}{+^9$_jf6%OpjT@e3*>yN(8tHb{}_vq%H)gXu56EHc+JwIW{x==EX_RD{Wk%j_6?Y&_igbbGR45B zO0V6T|D~u3_OPp*I5#`Z^@FKCCQ?qja6$J?4Oc+e=7xJ1JU4s@y)ay<=R)|hr`TFw&?C|c)d|X7lq7elOsI8 zupdFi!$IOjxR>CL4rbI~RL^K1x8Lx! zVI>4MQa`ntKoc-~NjdW+W}i7KT7wog4N*{^a1m=Oske8-0?oO_xy^BZfqAkowl@O6 zWDQWW#Mhy2T}4k+jUwHc%o(tolFtXNVsELn1r#Nqj}rzk*X8jBBS0_3bOAAi7on^A z=4XP@-2=m7*IoAVp^9G&ZaS@Tv-_3FC-Tz(CRbOAj>nN+gYRgpUH3nFQ&rr=S zJC1))ZyRXP^ekmjhQ1fax}kb6fEF~G+Vbq=444VZ%BO+eVAqXMtRS5(r-9ZcjHxY* zb((S%Bczg?mr~rKIq2>^%Wty)d;SFN-Y0ZP@#^?qt7>>Iy#A07fv}Q$bmeG=6oF<4 z34d|&(0+CWDyhKp)vp^TKRr|)8UU9C0R}U~eP`V=_KsQj5H#IsVHhMY_z_Kr5AS$! zy~~b^B}l6+h8}>fsz33FqkC+}zOrql7?S6-Vu7lP1XMS5P7)+vW-D1Yme;=wL%8oY z=Zyd{By=oqL&_0wx}OxYJ=Q)gGB?bECB|Srq*daOHr|jxQ|j2ByqBq3<~Mi_?@c3B z6-%=J+S*h759Whm)vjaQnO{ZBX0G?=PvZuE$`G(4pb}E`>?_bFPsY>s*l4+|C}MLt zBJ||8yl5zSsxUM^126M0o4tKOe-fyljuaQuz3F52o`7=H(A45qofUH#kwxeG(CY%8 zT2SkW4pI!I7dZz2h4IEHbht>Ru2h*^WdOOI1AciC;+U*I`zS(WZ?S|{ z=8cL#J$WzGB9SnFo;v(f)kuYOhvV9jG3w1ZXMUvQZ%Bg;P`s>o!i(_H06xRr9)(L3 zC!B`k|7XD%BV}1Y-Xo|*_v98;z*K5~g2;S($=e$u6-Mo+-5Uosrlsar&i6qg9y^C; zzZog%fO(_RwlaadU6tC^CI6Ibk~K`0v_mRMkAhY`qz{Rc&BcWT1*n`)uVEQz!{+hg z__&;YwArTQ0d*rEvm9ly3q$ZYB%kqaORQmxNNbJKF7pMA>q?jPw#sx11gUdqN)fJT z*R`~bixPSwkKONyw|gVDXM%s^{AzC5eF!%i;vH#n1IfgZ#5p<)@iUXX(SB?95?z?~ z`HY0oCe_^s(4uvTD7tt0z1OTq!20&)He5^c*7)w748&enZ6kJ)Lyr!W|8>TzCbffZ z5fVFy$9{$3VA50|dx`Z<1+DZrTxcp7&CSymz%rG%A)sz9Uc-Kh~ghx;M0ym}}mHGbfW;YjK{#H~O#BCuI0^3N0R7y)XEiFAKaX)IZib=R46+z(?YIO2(=}lbAGV3HGOd>{Mkr?Oo(z&|K8lc zADc8KsgGQX3!1y9s@|N;F!N$A7o26G+tID1)8EhmMV93=f=+AQF#a?l?Lf90qK&I?oMIoQVHn}N$CdZhO36S>R72sl3)o8>btbVf*`F7%Rp`}jJf zTpWrvxD#QpFxS#)b>NipvLj5#YN?Ax7_E^6umqJj7IDdPY8@Ya)H*-<2q>D!+`tpG z-dZh(f}v74fupzYu{Szxig=$YWJ-~o>@EeAhxXgL0v##9Ii6CT6)Nw6<|d zpsmonJ&GkBkRk{<8^Z|Sd_ynE7C zhpI(WVH@f!k_~m7U@Oe*10lIU#=-E8NSjSQ*rXPI_2J zi;?xtz$;GcrMDG#B6B~|or}N$%rxU?&Lxu+$JU=7u199faP%Iox|#FSdAof+Eken&J_ z7!M=#3N#M9^kxCrTROY}(G7dhI$?D>#L1aCtq2av#nDQl!DY>sGGbVzTRRZfSA%I3Z?(cB+=ZhSWxLK7e_Y zNkVnz;c)kMw+QU&>p#L!trA&|vw6w$g9wXdySt~sEw(o?eKeYE&s>MS#uX3+xL6&>1?8sNnhz^{UEsxhUa@qexG3BUSN2 z6pZ!}^RA+v$QsYdjHIe?@ZR*rnbr364gY0qS#U`hz$CO$-gPx+0!}BbBp=?; zH&mM7&M{5)M28=&FLh5?U4Cw~Iyk*u?YJKDNIXGIA!~n-xAyMWWKH+vpq^!P`$mTN z(9v(bDIpCE+$={xyYI)9A6-FBU5RYUd;8UIER8NSTf$kL46r%=SOMG|F)C+Lx;f7p z#IBN`9Sl!hxi7C6oUIgC%U-(skrms5PlOb4sK(f{LpC;?Y@3I_mDU*Z7J=5O?A`=i zsH9aKU={?f7PZ{N&=wwKMdEa8;x9_RPTITxzaXECIec;JU>f)I+~<*Wg4#f)EUgdf zLR13h$5px_hepLC#*kz#GJA8R_6y(8M~(xJ#;+t_cgLxtF7@WuZ+{>vdSknP@Z}p& zbbCM9&PuXXv95E=AomQa62>)nbpLoY9{fPXKd{lm!};e|zhah~fY&Z2@u|#nmh#_N z08B^{^Q(Z#I!8rK673qBa8M9%dI@zffmHnhf}H$<_ye{He!GkF_(y=6#?DmTh)v3s z=SLR8EkX;noR^=IpRhlhM#Js1wbPTTt@~zu33@+PTL8{_q(>SMgSCbbJQNO8n^|=L zpgI_NE6>;q9Y88-yFDoaiX+Cdl^ZnkLF>P|4m2*-BwMzloF~!>rQ<8xkK3)G%j^Xo z3^1kqJCqCk83;9NO@o$Z=`|nzY%14auc+A?iZKH)R(gOzCz`dnXHJCQH)tHT4S0*0 z0k>@a@&}qc&Fr}S^Lym-`&2WX^_=6_1&3SZ(r$~`*(NDIMrHzbU?yNe!*Jo zaxfbIvQ<^m^bUu8(Z)w7^|4TdSUw_Nmq&omA|`moJoJrJ{YWrgzidY&!wbu<5&V*o zW55|&{wyY&sONAv$%HvY*C6*oUO8XTx^-ARJ=tzM$|DtflWR&Nc^IAi)_rCffRzx= zNf+Kb-4*Vnz=Urw8L^07Wx+LCbO+SO=U*qZ45#{jy5nuwb<6l4vd{zpR)zt0JMg zB4IU~i?YTwc;lk_rT=GUhv!Ggsgr=9W6fIcX!;9uHm5fd49+TfqKg>OaAFq^c*mR8 z!klf)$Utkj)i?ClIlW@>?As;nnxHj&pinX%na@qXGgEi_j>6GAzPwBfsuGx;!aq{r zdV%-!TpVyVM*?`#U{c6032vR;Fpx9QiAhHYP4i$GeW{eJEiFBgqayz9=DwdfZaVa4 zSFyMWp*-IRv$3JBcnm}Euv^X9)po*(DRH7L(Xf`t;gx;QzA_2-o(68>sHY)glcCCY zQ^;8V!5Vl-!N4t-r)amM5Cc^KbJzni8xqB=eP%l$cWSk!U8JEjYhpn*EWk%clg>MD zZ+KQcoxM^wll$hPO1x~*m$251*?lCV$YvFzBGAcZW_#!aY-3N+4cR1vpSf_J>Hx!^ zX;zTr1ks4KVvonanTT63h@?kEM;OL2-(e3tSDwlG`~x)nhYoKTl{{24A{8V8YVV@8 zkUvAgVSU#39fPjQdBqz_aC|z+((_(eYiyr zPZC`hrjxFw9zx*%=f~f}qmsbR3JN&})l^pdBK}FW961tHR8*_@N{2K^Y&!eRiaR)6 zS+aQI$x#>Ro7`_=Z{EhE+@k-$_W{hZGXA{3IZ-*3=PFy{u$pI+jIOcV@xcqsJrbk5 z;*tan98ipSR`qdzDKR_Oep$vzF9ZT)rFJnrftQPakVk$6HTaH$`H=$2wK%U0fElO1C@mu>}lVN zw$V$uCWuT{3;ZjOpFP&KlGmAk$7b~Gt38GAn~d%(`dYE0v1#-`ToUs}rd^`5FBQ^~ z)XI603S1#I-%`XyBR;CpCD5rW)V$fr8@jxCkSA|=MWj#zIC7A~UzQ=`T!j3YHr+RPnJFez0JxDT=%Kb(x~4w_)!^DJfum!kR5R z=bQJvwXkSClwp@B_^9!9twhvunE6b-f!=mN%b;``cc*I;W-1pOixkqgVmX+&JK9k1m7{V1$<4#2lvV7r-}X71>@ihmiSM$d z(@1815&MI3K2zA^OImSj_e`k4d@PmH<6=K4hoh|$j0xt06o!IaP~rY>EaI@#03s?aPXmMy;Ic=N~#{Jry;lCo-GUI)TZx^PEE6TG=f~L#K&4C*{ZrmLN2UYf=7Im1UCS5-xdbUNQ+XpW1mbSV8CNm9=^73xZr zwAUJpF9sLY*!QYFo~Sx3ZKVFH53zE`E6qnpXeR=2bZkEodFLY+Y#fz&S`J9Q+;a}# z?3eeV?dLEcwG$C?e8?UUWRGWQq!73_X=~=JI0(-mzkiw}QJz6IG6@4;dxH1;&yPn8 z_K)ZoH1+88e|yG5kAhpmRK-i$aro7DR1ayj>E4WEF9aBQl^i27Bx9!;3aph&etzSOF$ z;SZ0b$U(kZs zGqpHO$3*}S4z9BO_V_!H+0oOxiN;W@Rm(4odQZ-4#yp9Kk1!>b>{h?BDt)3jV0J5u z=e63x(x~Rr$av9jCRY4#cV~wrB#6~HS}0oHeADS>`B1MNePwxR+ptx-hwCv z`|enf^KSE_4mL`)I@W+CMs^_sv+*i+MEmuJCmvc&YPouxaZl`WhV5uq-KV%kUwBHG zMuoPU^B3lHS4xx5PRKGf_I;nl7T!D$_jL@%mZIzT%Kw}t-cBjf6`jV(jn%qK(9b|6 zgyn2)^SuU|?{Bx8dhRLMDnaZM`_zp}xj;@PPc#rB$^h9KKhZQEsA9;JG&$`@)v<8x z=6y+GK#J@3#5jALO-Lsht0+NsGgfJ0TTO7zz%2U6_x*`r=a|C!4P!I5rFq-8d^i!T zMhdx9AvzQ8Kkk!EW16(qQP15VYwe7K95;Q^&2?Y7AMSnRZ%x*wS-@lEc^}PP)cYW+ z`4UhlW)iu6Zcg&`snO(M$QsI>L9-g(4WDp2UhW=naXZ>_#ph%f7#9UM@-3JBye_Kpv%YY?2zy_KG(a$D=Vd!jH+3W5baH5g#+(K#x*$?nv9yu^(0(IK0P^GM%0JT zJVRIQ?bJ9-aq8-naN!SS%H3C&^mnZopgDl6PTu~8M_yQnPRx^)N=6~(M#M><(BWe2 za5&#d*lTZmbf|HzwYit5p?MIy9(n3P6q5PTWYqC2?`nCvZ*8 zgBwhD-LYiTA!E0g635QE&pXye9H_y?C*WkCvB+~X#$dAShp5YE0cZKvAUrAF@1J@z z#otqqB;TbjNR#_Gy>osl{ESTgPVvM8mEL;??Tpjer&*Gsc+AHdg|gJDP<;in##-*= z$~tUc$k{Pkwg+PXdbF`AIwP;Tz2Mk^R()7b4Ii#DR3)35ECu$TXBz9mvS631ZOJHa4@%ypYH?+zoSasb({P0HE>C$6eBaHSV=d-)(0|% zISPGH(Km$m4tZorK!|=au|0p`8MEkFzVgiXy?4kaEKVjg4Z^ zn+7{ZbrEZ{M(3N^DuEhKLI!B`4SYFEcB(jB+!*;W7R_VSVq8Koi#}|m$q(fVm1u}5 zjkk{aW*jea92#kS?3!+CsyYgz%$!X?U*;^ujTX?MURb zkmM)A+HVEPaU_>S#fZn=7;ao)Q2|4$ucK0n^a@=5n8d}etNZsOB$A<#V+OQ^3dCSK z!0s~X9=dw<{7=K#c`5iGg0dG{J+`OHQKE<$!K8rP<>E&+njq%-}=km&z1k`QDEYB&qd zjRgs~AD|g`rE=!h=M0ePROn9=o?0VJqJTsPCjGL{heorbbuC%IH zq+UhAW(-Vk?5p$)&H;I}ogUrQR2ygb=jWvD&Tlxf z)Q1Dce`4NgwL=-zl#mWuDA^W0l;S3x?Omk7E!yt6fbD)M%s++XPs53CJv9!-NzK$; zAmOu+C`=~vnLLd;UJxv#cwZ+)6hBp4k=~)}Dg*kWKdM(~xqPXxa@wPPJ;UEV0-9gt zX5XIB4^UyY7@6m^!bgs+8A^4aCv}d(*Mn2f!%AK2$O*p7+4i`xlPs`vorv=_&E}+; z-`xiHZ4qjPSRA;Jd@#~;6oV6qT#GX~jw!dImou5nU3vpJn-#5f5=-dx`kliSaid3| z0vZtPD%7j+wBloV#M42Wv{1I-lN!-uhZRQMuh;x#{Gm8A7_r)!CW!_=hqz7H;E$6hV^yqDz-TjiS!j#%c8N)Of!|&ZXBK` zjC!I*JqXCdAIX>TI&GX$t-ThCz~p?_21WgR9qU8|;=V82<&mi|kg@2-wH9Tw2T}V- z#o1AL?3l{Kd6>_>`0khHsBCF|ni^NgZ?X`=r{89J(nyQgq&4H$uV^?L%7->_qAi?# zNWVI$KrD$FOt_=+IjU2Eg@W)~SeX0KPnVJMC8L+wwH?qA1s0%qU4a$(4-4=R6Uzhg z1k;Wy?$-YXgWyv-&zdyva92w}y0$$&fBw7z8m=Nqg;DX@j3b4WL{)2jvQa$jH!l4} zfE!wfYZRXm^2SonMc$vyKjRbL9j+IyHHcwKJTgYll|l~qMC zuom`@AVhrB?;B=Ly>h0h@E03{eZ>e#0Z&EV?8PA6`10X3|=4lR~O` z)Jqbg3&)=887xXH=E{3%C{@@{w}ih-m~AnNBoK@4C9G(!w+b)Of!_sn^8T<{?3J(m zS8=TQ;^`WsaW;VUj4rPBtj(3xrJO{ej%5_IJmj7mWYWK>*C^45KWe>nP_A(F(RF#xy;`42pZoCMw=3?#tLiDjW9PxB70CueGu-C zw+|$>Gt(9alR{M|Z<3#(+jn&uAEk(3Xe_@Xe|GSvMt`%g-0E1M&|<}ExgnRUVb3#@ z`)$JHo4cW7gQD@@S6Hnfy8S|#5f&9?@D=IQ@^?3EQsli4bY8S=bU6s1QD*XUJDIl> z6m<4)gx0l%m01fTJTKY?Y!X8TO=2~Udm%$lFR7FVE!O1fxrPbd$|X@$^${i7GRApj zkx%Lt6Q3Y7p?r#ee&bj8LjntbR*hNj{&AO^0%74#OJZQwe}zA|*WnKqM7P??=XEc; z&}(|l3OY6;JwL9wp3XspCP7iD3?9A<(lBKz3mS)cLspS+?IzXa!K(gL979H}I)P4= zqHN;B4UUswpLnu&hp7SgI##C%CD1bg(O+*unYW6tFd8@d<^)}H)UF?Q4{Os?rxF&& zjZFCtWw$qWpJPAm563J@2ZT=7c~M9)2^p}2E}3q7IGAn-<_$MJ6tT>NsBOg{>8A+` zB~D+w)AZxrWD3%$^f?$YdM&Jn&nQFS4o$mSd<;Kt`A=%GHg&7QQT+-v_k)S^R>noCV`}aF22IEX>aKhVa%V z%{;!;1fk$_6o}stXt3t0FZ2%a4tG!Hku~G?@!KG&=Ta=QSW~~7DFiVM%IWa=%9oLz zK_YQTtW}i1{0izU$9aQ(?;}>UQ;>LOuZF}%S(HjH`jg$gXfvs!m*nam{%>Mf0szG0sT!BBz7H44!|tbcpwev20t1aRHmp5)x5%vC#F#PtgKV@9<~A4 z0=yQEly~6X2>hTJyUxFb86rP}BpBA<-$sPPfc*aXp$A+SXUpX@qd&d)U$4KnAk;0E zMC2nhX;zq~f=1;y))jDrDyM1ZKHkT6%ToG}v!VrvnP+!6Qw( zz%L`MCS6}ImB^bE#IiHf7kmeh4%bCM3Gt(50zTOMu^dNA%x^yFXEMo82h0h@-(#G- z>dMJfSJ~t0JOEr@Ls|M3@~vT>JUL+YHN~Q19Hh!s4mpw6I_dnPOn!gdCyib)t2^@` z-p;R4eKMZ;l|*eFOUBW?&$C}dL*&841EF!tSud&-1;juX2}Ce;ry+%j3~9Vjcm0#I z{_Jv(Zd&poVa7px#UN~g2iIs(tn|t5DlL38v6xP^&CPoZhR!m<-|WK#e5ElCyZr78 zFLp$J{BF5FMm)swGS>4V$Mde-37U2rG8(7b)pl|@#}dSB`ZQgs!mp$14b4f07|GVf z-95D1M7;95p6`=g3`axCjRw>b*CSE8ZOjTje+C|ln4IJHzTzSGFp}|FEl2^bs*iNU zds@sqk*-+Lb#_x+$D=JRK`<(@G{|s&eoPldJ~+Tqt=y8R-?72JN82X zVl-il#p2W6R1kLjl?{ASi!iLBC5%ME2;;MaJ=v=^_^H0bpu0k|t(PO_dpc-i+3+Y<_V0kfLPEcKGl06dX&EfTN z9q`Bvf%K&%Wr@10@kQYUPi3eqYDB1N&f>h-ed~U z00HnJagocNev=|aE_5n9+?{at2E-;OOXUeW@{3P<8W$E^etBF_3;x9M%JQ7U)j4=CFut}b@IJQJlS5pAp?ind>>qL3XJB*hbrw=^H-wY zKvg`-_I$_P?Cq~brlgh!<-qG_R_hTB%&*Ve64C$5uaAWJ_2Z?6IRE9>bN=+}Y2e;C zI6P@-X^{`OOKrHn(vO3*JvGaa^av7-1_5MpGMpbDG|TL+pSN_rH#FV~DpkrGYO^c- zcns!jBpVII8j)(ZW3?FRWbi-A86^)*8n2gp;QJO83je*Y#PaUm-isF%^q*pN%&e3` z$cg|$DBEeK9JfV{+h!d|<(Myeu8OPR(2MFmyDwR0ARpvn>8`WzghqXiOmwVyTeV0l zd#Ug?=0Qi~rT1$QZ_TcIJ*XbRdhiUCR(bpwM(YFX-|I_Vcv-vQTXJmQtz?3_dP>M9 z9l9zvVv7iAb)WUmWKxD%>+YBFiaSn>YISiq^lZp9F^q8{AQ>{Gmo!yJr-H}w;wItQ zg>1O_(ojF}g~WG`e&+VFdFQsbv?u&>q>LHJFD&xU0S&Gqz;@YSI({?p0?{oB4H)2k zFqfCbC`8<_R1RQyg;Kel_fZJ$J>m^C<}RTm=*UQ{4MyR~SBb2rXt+TRY}7 zK`-pI0`=$Ebh~l*?}oR-mlZz`>&$$6@LLWFNHkXPcWFNGl?TypM$?oX3`FJM9ph3{ z>O7lH37LtD#W-4^R?a7++WLkKvA(+_8B?qf%KJj$E+Fkb$X&K4ls?3zdr~A0G42(MR_aW{ycPV7a69M4o6$nWU^Rxb%$Bpp9>MuMQk#QB<7|IOF(+4r^=o96Px! zkv*n1#dC;%`a2KhF@e`EZ_9y?_J`O0Jrm&}7&Kl}ieP%)H<2g}>u;XUvZH{Z;luTv}2bo%A(B0sMXavN!SfUdn~aY%}kzgj+8 zJR{dq{J_5e4upO4BEIAFB83o#^+RIAE^je;yLv8V>T-8T*iu8xH2si^dz1OHV=sKkKRJ0h4GZy2)HoeIU`RX5kc^48GgGJbPN-mj zB5i;0biB*2Pbizjo0$i_HJ5RWfqmh)8-&5XOU@T-Rv3JBdG>yd)tHvhYWnhmxg()n zR)U7FtGlj3l(7ttfAR%o2iDlU^^ZP_A^SeVa191EJ_y8`(7XYv(&6xwfoO;tV^JQym{5Kidw&i3e$on$_$7d50lp^t-ZG{{^YaM-Sm>z+@Q=-A>9%{)fOD?Y}7 z6zgD11I9Yc;oJl5^unHkZV($(8@B>yc-iIf{2mB|KW^_`OAAkdvR*z&S4$7&2|>Cl zX6lbT-a4bF(yChcWg*xiXWZGmWm3L_&*X%?4x$8I#u;f-$!L)d6e}2ir1y2=?gbvDMx&ED5ButGECA7B`(|-YBFw=mxpuG& z9zJ1Vw}3MSGY01jU!Z;A?JBV?Hy3UjBn)|N4NV1n|H7`KjN1rtkz!(tk<_j6fx zXlk9KH7y=jz+h`7B=+`zSN`0)3r4Sj%llkUI5->$@zVF85GKAr?D zgLR}r_dy2a-7(xv978{yKv6xS3hcF#>v!m`{6Y#tji?v%>@MXdwzqng>9?CnAa<3M zsct{LDo-KdrU`^5|Gd3EwSV0#;BOrh!%czF;63j*xd)xMy9WG{uVO@!BGD7@ih%-G zSQ|2G=G%MO>v4JGw{P~3lLlUhE&O!FXc3x5i*>U>4<2gh$wpakj-|fWasN~dB?>Hc z+PBKGY$jsF^pTY)57q*Xp}pJU+X*PM$eQIqAvN;jt4@K{fvi-(fHkm#?cN`Y@~&a_ zMiodFtxnVLe%Yl{D)`}uC*KzAZa$bw)+irpPWT8jQv>cX@lCU-R9x*k8|BFEep6U_ zwc7ebQ6f1~;Hl;8z`Z%YBv0wvm=@(a8dU&%>&q^*eV0NhPc38|YA*Aw%pldEH)$|y z+g>bOpF^k{+w8H9F}h#AS-w`?y|DsbHVcJhh2xBr2OQ=KLp9wBL$7d7inN#qg)%sJ ztWt;W92OQOY6j+fY-liAZ3%Q=ZRM+6snmCuEB@X?p=aipp^!dBC$Y#IsT+dOv@4ci zYoeTbdXT3$&T6#M+}`+=&zYU(O5LbiOTD1pRrMBIj%G0LWzPLq?e9N;5pEKr7L#d& zwTBX$7Lz3uw~?8I*hki#FwVk^IUWn?zUC$KeJ3~j`NZERX=D9pizfvz6H5$lURo00 zCN_)3uHq9oLsCq7%DD=LGPAzeH5Gru%}nQQtdw66_~DC)GzC%oaK4)`BHBWFfjV=4 zATHy|cyK(c#Vjf{{F`IHOQnN##!Rjw!Y5K*?}8#Or!w^=X;ilqJHn=8juS8H&yH3r z^(k}gx@p*bB*U#^`Z|XD({3f5!N;>@DCH^+cp;VA{P@8X&XMhIm%kY)%D_SKq{KeL z-+di^#odRhRJjlmn-A{%xZRc23e~}by9^)q&L=BX4LTAyv0GYrGO^v005b2JbnC*g zc=-Os2(i#9sJaPmPOzr$apYbpF%i_a|O^xrCZU70L{|vo-2r zXD@b0BRT9DUZ8FZ#zC12@^Cq6QEVjd@a2e?jB-l1IQ%<5^AN!M{nAj zNEX63ma1pF6nDQ}1xdfbb=6`}bJbVMf4AyX`FzJ%queG~38y#WX)g>D0p{KWaz$n6A6D?wR%7k=;J@p)h4h~utow+Tz>2>pv%7aewL!&XgoPkr(JyBP5l_f{q)1*r zdmu!cX)aq^Q&j=rERD{J>RFvOY<#~i_uQAvlyKd6oH&3mVYij~!;;1H^+b)OKL#Ok zyn9e8Aj%48TJ{lX!KE>KJG`$^rBmw` zp*Cd3V9ZubMS|jC#;;F8D0=5K$3Z^gk)@?9mFdDGOrOzd=&O0Xj%c<(@%I2y(eKBk zxOtdK23O)3$?b?p_j>Ezqq-d!0FfGwo=ls*Tmfdn7C2`dI_$ z&W97_USvpjhzHspkwP`nPwL&FT=ayePXa?oDeh!vh(|~$Tk7Dvd4O0~VS1m#_#vXw z<>$5DYe(EHu&B)kJ_076%aL9PW25{F(e9H|zNL<=ZGwH8kzyNDBHJI4l$ixo6S3uXicUvo{D zaneFwpE&|oESR))S%2 zoF>7Gp|8s?EBvMJNK_erfVsZhzg^!|;hYE8u5Ul)4|cf6X@2BfxFTMEhJQlewP`V( z6Cdi+CbKMl$ewk7u-)#?5)3&H*=noDihi-ZC4@wR^8XzgqQd>G{$`#95Mijp1Z~ zw&S5_Js!L9d+7)2kH>38DFeMeiF}!Ea21`fzZ9cQPs{X6uu2cSOZ^PH?N$Z8r7zhx zt49@p9M9ivG3O~@QAlYT`ILt2{Q0gvA<~^oi3`CtwS9Xz-)C!m401Ka(X?p7X&l>W z0F+X(rZ_2Urpb0MJam43&aa=~!gBDamM)-Ju7Oqh!(*v{qHdJqsiSB!zCPgmN+Sf& zz1tYB=NT^4?tWB{6R-Z}srwGic!PeibU!6p=}8mxK_k*GY{2uiat8Z_qD<0vkx08bi& z&$>y~fj?GB%VsP$kugao>YhD)ArjymxGar{$~s_tEHO#zsd=C&5IxLtSmgp~gI*J>AjkR$g+#?HaMJ{^ja?a6x4 zgT~c|Te-oIE=NY~Y8q0t2k96OXlFTHUkg>Sww4!>v|1%Df_PDB{76mEZ%*HAglp6Y zPZJoE{6cQKD`D=5cS>=sF6F!+a??3#(L0!sPQzpKnKT2k7B!*beWD#{l)?c zfxl1W*Mujr4-*B6E|>%-hnWC1E+J|8IU!zTJ#%7*mM~vsUa&LPcrN6q<(4a zPw=5#ovfC`d1c+OB)ulTeCM5O=1Hc_)u$6}9>)A{UTbWOv^#Jz`LCpEBq0UONCd&+ zmsA75D{UXKj-v%Ky|p=fTwR+aSl(kR;qr`^;`m#UVkO+1y7zLNWBC01CK-3DlcOn; zE%Bqv_Oub^tLS&A!!01_-qy8n@v}j!xh;5dMgUe}fy7gnrhr z1VCN*Y*-PY$!W*=at?8-kytX6m@gIdL?{GAQVV%MZwxvWrGUO>LE{4BE@VJwO?vt2 zKtN70fLp8$KMk}Z;t5Cx^kx{N>&r1o%qJ)E9g&BKca4MkJEG8`WpY7glF@W{Ff`+S zLqmv)}dCt;(3j4Y`S%rrPk zNxat4<46bC6ypJxM&^8?3w2hTTs&^)u>+aXqM%sx(J@w?zPK%P9_H9xob8g=J6&k( z>ryn{vP(b6E$r0b#fi0K&5F6Yl*GGWmOC_6r?Ooevde#7I{(EtRQTl_@N-v!CX+JTasg?u`R{Fv< zE1`5BSQG>9wwvJ?ZG2G$8HB?P^}F2vlR$Ft?d9^JUYTB=WM%gs=t`R;_cHfgHg>gSK zq?yig^}sT^%@r}_4#_w=vGJy4@~ZO87)?#o4)j9D^K6S0=Wh`BpYN}h0o)_$&aO*Q zOWS@&epJ2&_s~Ala<%IbQRelFZBgpk5piF-Xz1!@t$ie& zBl8YHt__dsXXSN(wK^*L9nnIUQ+R(xw9*jx??O`-hEM;nY928d9*{9fF0Af9!_;4| zJ%vPI(!dXqQYv|VF0?H5QV_ly5l$PqG={DS`NTnOBQos;z2<#>;=A;>#6U%Y=o!Ss56K2gDiZlg04s{pzXgjh z43Kn!rLM5k>_1UlJE+Cv5V(?2J9_+^e+X-sAFKxA$Mrz^&l%4<}DA#20+H(qtce)^(u)0)S#DcY>oXgF>=*J+qBR|E>_NbH=! z?s^vtcJYeLgAJkRyErVZmofde@SlwpfxlLd$E?3rUKIwOguy#F@2||?!z8e)1hUWN z>3%=pAAy6%vpOsoAQS^42q7rGf#~DqApj4WyHcA_#{SdV3Fu!y}g4EjG8@$0o`v)HxF z+=6?fN6=`<@?V>I{e>RPzYgZrMaa;v(@OCNM-%sh>E_5H2ikM!5qe)orE z&9D)gz~|i>Sghha~CpJDb@+VJ(?G6(qXlK7@{jlXuZFC46c>$8yje|{kY z**|Ca%IoI6|JNDP{W`<8nuoWpvkO0jU}vaT{ORvo^B8FB$4}vZ3eG>ZgzFbg*#BJ8 z!{!~N_&;N@e?|W1d$lB+enRs$G#dHMuGj7l1L65k!u7fQ`Gmy}!DFl1km1Aq$CdXF zfuU62LhggZ=WytM{^tk(=QXT84ugyY)Dq$STFWyYkSG~069fwHk36mz6-?1k@xXEa z&yuhI8Hw>*MHVz~hyRJS|DVlxXbE%@45Lpeb0wUAy%m!}0C2_ODGL4Tv{J~xI&8iD z)Bf`dwSL*>TW}?vH*eFx|FP6RmknP3Q2TXHLv8u*Uuy^;Rlrg->->*AJ%>Sm9T5Jy zyT30x<-e-be;%Fv|D{T!f2mTao7edD+OarcNaN}oDJOqEp$mG~d8C;jg!b$-$flIVbpEsL#JtI|P}E z)uw1qmlYqhB)m40Z?E z;Dzk|mIVk*79fcb?Ek!)cYgw?VD3V}*a_jwD%gyO z+G^7{=Pl9YFji`ep3ZVIb#za9D)>c2Hmj;C`|dzK%W%;SR21rieo<*YBRTezv;cj$ z0Oz~>;g_*v^2g=_QsZ?8qVnzG7n*aG%#nBCQ6ifFAkWaEi(ev!fqwHF=AsHM_LtZ? zw|NRSlnv4+=o=GJ_-r|wDoZ^|Jy))_8_gfeZO@2k6i>17IcOqXTn9NL?ipbrdp19= z2+El)MrmHf^1x$Rrb|_pAK}AkS=yYeOE^Dgu4x%)W~G>dzaOWG(=nR1=M*Lj6lW{4uqzx6r@{svO$vR9)~(Xh4Z=u z@UK27YM<;5)1EFTYc_AcLR;uvS0bv%ZUGgwbh4QS>zJ*nz)V?QhOEjHDp^F&u`yqp z%~oj|jjD&45>W%@C>Xjqkc6hP=TbD=DWK}8FBNy_53v5S$()j#UZ>)>Q65YJUjBl# z$!}VbWF#AW31)furqWXDiM8j-?OMwP?hg~4;F-?uD6EvAD8LQptEBCNQc!ZdJ***$ z8dmqksh4s^RI#Gj@dTS|3)r&JB)>Y#h4}HhjtFG0l1sn$b~-{%TWG)Cdw~Jr4!(mj z?|H3do)9J65dM|t_Mit+|AphPOWCvs!}^`L`r-VKw8Q@SOz$6W=1D`__H^tG)|bbR zcoN6)(Fim}1SADxbpc6S%7o4^3-T)9s!c4(f*0-W>SNjLNr9MM~{A@}tMKJq=4 zhq(MgShKy}FKJLJTvP2x>=x$4`h5B2TUJfSNOSpg^%vc!9^0N%q=8(@zFbZBc;a_X zASL;4;g{iX07c!9|CG@|!|z5Kt7idfJ;?pWK=u@6Me{WD!k z;!|6OscPqB0VlgGFqgY)RYHs0xYR%nKpa3zQI_<~HWmdqgL0E*&CkC&porlBEMfXF z<;q(oiYR+o7gP@>3i`7z*oaM&0Vjbf{WZZ8E1irT{T^XOkzBUMi#40|~k}FV#-MV!F zI+te(bDh2IZEjbJ=e1Uuy9>!=@hE3Si4$@ik-T$62u(!m(K;`xt|I~3$=@F0519Yv zEFt^pZf^}kk$<2Ar$uX>`ngAiy0KuEgq#GK?yiAuXyQSM9>3J z?8qjT&x@bo;CG?fBE##b>X`rxAS@hk4^ec_r!3R$X1;&P2<(5{gfy{Z`)u@_cCi=E#pizScfWPONfIcpF+3*;;L5~Vy24JYoUPb-^)6i=wN~2B6}E+r%0!f|7o-%{c<&#`anh`cMRV>y4aanuJ(hZ z#y9>wNws3C#aDvr%m!)jCwl_`;Lz7_AxfoPQ(kT$8u|L}7Ey%62uAhxU1}{4=GS5t z{g)H=TLZ%;SAJ(tRSmjg`LW5WAy29_H9KM$D^~`qC}mqtFZktk(5%J_1vl%uPI?j> zA067jx)s6TulE+?tdV5SDoo3Z-4TJX0V~6w=X8QH=xt8J+)JMIvTN>LAn;2)qU~6XQpD>N?xE0BLI#;Taa|1}F z-aKc+9aTrqo~;;Ym#xOg>-55Nm*b-uT)$;1opfTJ0BpWY=?IO2L2|y6Fy@n2<e7HB^q=-4nfg*F?W?KSd^k$llP;tAq->gv0u9ZA~1ZvUO0hWJ< zS^qCMjXf-fGR5QZs}1p&xqikC><*Mg2<0!A{kJnzM0xF-t1v>MMelxG^1N_Dl8SqC_R!C#2a2pb5XM zjw0At{>Xfj+BQ##ebC`8BvzOgJF6@0>TEtzn49-<rny=&zNYl?7=XhY8gkp2(nJ+J6=>pjy(%uCygL@Vv~&7SM;)Fz}mz9Ty`iy>J{ z{)wZp>0nG#5z;`83njQn{M^nU*J2rbuglNu=batk=h9mJwQfYFI*_NP|FX$NTV%d#7#a`n8ZhyeAJdK&+B6ot zDpIUvN8={u%_s?vSQ*=PA8&aIhVQ`uND-{y&p}OUaQNgv>(og|f070pyy0;euSOTP zBlH+@m?Bhhn9?;OuRA`mmvf-XW}OI(@uEzz2*lK+??-JM(TpuDbfbHpGn?o5CJj;y z($z5R*&$7(kp8bonF~k(wiEiN>&*Rc2kea$a5dV3!u~5#e)ez{L>#dEY(6f;x_m4| z`&1s5?zS%?SODCRq*dD0PJ&ir-&j5uiWorc94h{084z3U(M|*7$rYY0GG=^yq9;?^ zLt?Wtpllf`%nyqiE4QbySA$0Zg@ixZ(yHaor#?n_e3V%@(WAMq8CR2a^unr(Ts1bP z;+qo{CFhFq=O;N5=Ye`X+C>{@s$>lx24 z0^TNd3yvW4QKy1BuA`IYJ0>m>RvPv^!aV77_&}VpWGF!3e-Mi8F8=B|EMqNsti#uG zE&%58u^Q=C6nr4RV!KR4U8sIlLv z-&4-RGZ`eq1*o>8&t``tA&;p^MUzi8kEg$uVC2aceiYv^z8D_fYfG#>%6TEP=;C<0pE1}v*|Mupi#g&w1>3#qIJ7EW`U6aI>F6P$FqVfIv~1>Tn$nf( z3rx7KJ5LyPESWmONO&%+_izaLEH%240j%%Cf-)^LGcGmrgOFHzz!8ZJ_YoR;CkGmJ zTNQM@#SUd!-^EF@s|OV$xj3}yV(Y~Yet?XTK8GrIirk$XR_eN18#XbX$gT9zodKj1 zdPyT>@Flga8F6ghKK;YSNC8B2x?6m#W*_+xs2er@4`FW|7IoKs4-W_^BA`f$fOH8+ zH;A-=ba!`mgGftBw}2>(#Ly|-Al(hp(hcuH@s8_vKi~Jy@e-Js&p!LCz4qE`mmy>2}|?Yn*i366xQ76LrcnCIE0sB;9kL%Bj} zm&p5+n)#eZ3`HFk1)RhXg^fZJ7%&1>;bK0blRI(R^iKy56EJgg*?ziI*QD!nEV^PU zd6*MzH1ySjY#7{M%;)+vw#gIFc--zj;gG~c52nClIAE5L36R?$=ruGmF2sZcQ>u=t$${J(g``+zvggJ6F6PdH41eIuSi zgw;BPodfdc{$Ni{sj5Bf4-p3jPdJP| zd=eEW3Z>O}BDjww99XO*_hc&H2ffF)B@HMFAJ@wR5hhtEUe2V_e7ow(03|S+6PZ1H zLKGMU<^)Ml%2lh;iXkUAZaO8FaU>{DIkL!yv*iU3;Dgy$XjBBd6fGY16l3~Y9aila z3oYsFx^5-Fpkq!XZcn?u^fvc_$HiQwQGZB?=)*n@rdy5r`{`wx+idh-%UG2k$(4%m zArjOx);eqm;wQD(ws6{(Z(z9K{}p(twQ4$Sj+oJr?L6?BXMI21;g}0h6m0D5l z8zW{vKlOITyt0wg&S+oxzMMOhAsP2m)S%9OQ76(m`!fN1pP$5}(O&5(k?V1Rd6s<_ z8JS?w&$CV_uH2{aHDR2gp!Z8eE#B_cG8qUvzTJD3F{>$1>eaZh^brN_3Mw2hw(u&< z&18f#1H1Kt|K2K{#^-{@wC^01_JcB=38ayFD@W?C#s^AG!bmrx9Dq*v^d9H?{A zNY^A;m|eC2ByUJFdapD_qvNUx&$ML9fVAw%es(->9-`MWLBxFR=v4bIz|i%GGB=Vh zcN5csMN}f>r(8l$2pEZkq$?RR^DqmWH4n$=sFOE_3VNoLDj^l7tCrcKi&dC?0T88L|+h$eFgd9aWF9ve$0yJt}wwE(SI({X}VPfPKH=)Lq|qHA?-aEi7*u1gr-{ z6Mqoo4Xg|w17&T}7&m0=cQ51L1V`U383Zt9*=ptN;e*T@NI2Xcmefb_JWF|tno!2p zj@$JpsjgsLjYLIXa7*T8gfkSCocTXYa6joydVlR()aQZ~7%#jL^`w}rO^q?dE|VZN#{nb4N$sV?6= zo&05+feWX+_oM#z$d5__QwS>Q4TCymTMjwtpP!}Bn={fD(<(U|qOOPx%rCc`%|rmw z?Wdzt5BX4=;j`T8RaBYN^sM0t4A_0pXO#>5TS8oK()m@~TX^m7Vbw+Z|0XIq|8l^GbMM$$_cNg-@rLAr=zH7Gk%-CX()=`yKn11(7=&W2w%Trdu*ZkP+Sb zJiF^O2lJJ(PWXlk`gj1}IR$P!uHFt8tf7PyN4yN9Uo-wS!o%4LY_R$lR!xq%Ow5OU zasfshzUS2gKhE`j`I5_a-H1xH>Jw8HkPti2^6~6|ro=Cdh@UDT_8TK|d4Y}?e!u98 zNB?4zpMtg~HZAPG?ycKe>aQ;91bA~E)S$7^(#n&r*AXeb((O^IwM(T^Yfxgf)x>Mb z61d%U9ChET@4`K0!XD+(vUSu%r)DkIH|#da?m8bPgIAwURy#8pv#c5~s!;N8NR!LE zsB1kNtWlID1eewqB!{SY#Oq*(83P8L!jOqOqB5lBxBbMA?y0Rt+tSEdp+$$v(l1x+Qy?SmD4OH!51W`0K<}B_5X$k(W@>jXF!fhb8y>FE# zD8N*#JK*ly>1RFsYwCtq>4GLKN3HOU{5po&L-Ve`{UCY;I_*AN0>R&F?|fvIpTl4b zz(lJ4v+v1R&2#7ik}y#V^G11pX*>cSL-5D_l@3z*{8ok9n=|mL!^KeYf$dqhvI)VE z=qaE_%Bn7;=YM+@dmoM&t?4 zr?6%tm!(&fL2ljK&?q{)9zk-Gc`JCBO{>21#C{po6?dtEuodm_jS~!Q zIuD)Q_yK^JKLm5)qX!Y%gmM`P+No(+iZuI(doFix`^}Cg#9(*aP590c-t;QNL*K^# zix|-I2Zz84^*=aj2#n<4iF_q1;c2$%W$PB^f@Gy6!9@8uQBI-^%+GCtDw%LrrnM-A`U6);;8Vi!ZdDJKG+o6pzo+#xMN#yARx${y`VRiCN1Y@Jn!K=?WC8~h8^d*R(Qk+^SJsegCxxgu_f?_@|^OZ_E6$S=}}|9F@m zQsW}Q)Du_RtgYS(cWbg_$59J?cQHe2vn`{7fwA@VsU!yEc$+mT^yy_`(-F>NFv;-} z^kr2)#R`wj6DYS=ni!Mlx6heIj9@>C@cfF2H=(Qx8cWZ^P?p|HOs$v?_=!~66aX`Y z^zn{Da1}b}QBTr@^|z)c=@6hhAOtosp%U<<%bR8xx8z7*8dt+Z(?@6$rM`a>&71|t zj&lXo*$3n`@NKg%9JPokW&sx1nmrh{p`#HrX|x-!rD_Y8)6jHlBvCxa0pyA5fY+1Jnb^&C`z zkAmvqLPCEFmdXgHt4;SGQEp8Q$g5|a#n6HZ z6^L1vW-{y#0iv5&1CSG)v4MfeH1Nvm5;FF(bh{%2(KQ;z_ zecVS~ua5x|H9*Mx6=LCz?>{iB8>e;+ZqSp}@n9$|#=kLKFTbg~;al5Gzr z{D0ltx7Rw*P28wfl#(G%lcC(`JRW{OXBjei(=7PRv%z%>40UW=4o>KM5=z8_sB*x( zG3{F%ES`YZ9(!riMUgBLPhQ7=cUgL2co$EY!hE2rTBLWOm+!J#Hv0pCbi$DF53sDa zSy~XZ+ut>9-j}nZC%5>7$+)!KD0& zWZ^trWpe+erX9hz8nkHaPvBMU7#B5M#uAy02TyvE8MSD(C2WC;=E#G+M}K#I*9 zm@+Jb?A?V&!RL5A>3FF}Bw`8d4S_O3zVq{l<}|%$`y>_CT%H;Se|Pi|Ei>#KAmwFz z$nXSf`Jg)-6HBQq#exDhCtudFcW)NZV-K zP_ZAj_Qm;*Sk7QpKDHRZ5CH~#*us15m1R7gX$Ine1+gGNe+68<$vv;l&}$vivV^v3 z+)mo**BP~E032BQErt&J3oa>e^ZSO z{DAq`B*cSf{FiF00R_;M^Z5U|k^dB0DYq)fyf+XoodfiV!^OUD_MTIZ1nbtmCsgc$ z#+7l$p8Y}!KI~kHA)Qp>8+QR`;1l*Jf^YGB;?_q@j?ukS0G}ArK$aV0QFBf(>aI>t zBno^oek2Oni%(Evg`pCB_cs~7XLS>|%KI^|BXo~<#$WRA^di=UMC2+};Ij`uq#PQ- zc)}72e3YJhl#zx)V-#uo6Bu~j*JVkKkSK%hwjtR2BUs?jEaY*|L#Ua8O7U}4VE)Bb z)xP7MPwfRGttB}qApV*=2GJR`qDb(k0SAGWlLM~wZi2m)j*RcU$?R|3L>gv5{<#1e zqMRF7f)SkAk&?c==);3GMxA-5Ar5}HO|VZ}3XtHLpXkp~rGNDAF5EQzJ{M<-C7>^Y z`mgAfYZxe5IX1%eaTPt6uk-`|O=4K{TS7MyiX)=s+{;K|*ZwQ7$ozl~pRC-R3c`U{U=AI?amd zzF1)WdXc6A$7r^CVr8-kkY58T-+k5SI<0gzWDU4aZ9jxiAHr<%ZSC+LXz+7sqjvV4 z-?WS0p6;u--4ow(DvqTCek0o|{0lx9opyA$z|!^d9`v_(jf4SQ^ws4}*Y1aYDYZ_b zbQ*P^Sqo>sbB3(^JYN4mD)~Cw?SpKB98VO3?{e_75cy}E|IFpEBsWaqCVJd|&5}Hu z3;#Qr{}Pat^DR~G_#Z}5MH??E)xtMCh2KfUOeW=fIkX47UuKzfKJkB%kJAE13C3X0 z6j3bmKuQVh9Is?@TJJPMfX!`7h*KYtpzM<9V}yum$%G;kQC^|!X%vZ0nxIyqRs>i) zp;oHr0hcKnIk83rCe1#zvv&!crOZOXHrXeSgl#X&+)-~Fv?}T?md!d7kKLCfos%!l z&xZFYBrQC@Y%r0j)siI`bZZb@Wj7PtxF^7Mt$okT+#2ZG6bgz7R#_j;ew}vdswBWv zW>BFvr+Q;5#^i{W`Q|dk6r2Y|LGyIrfPH^Z>4gHI4inv$%dFmY;4meZ{m}xf$qEIF z%(RN(XBMrGVohb~?dX#e>X9Qz!}^sC=m`?^%g@} z9yGh<6VCDQY`_`uH9@S=U=E_a+2pIdj$2=f8&jC{P+%1vcsM#iI!i5Is1hiIykQs{ zsNy+%rxe)gRF4?wa{f9kU(05u|2Am2XZw}|PR8HC58CXs1_qP2WL@isXE!DvuTq0^ z24Ku82h^0YL=Ld-oSs(hf0Jv!O-Zy+pYVdO;)YK9qL13?>Vr?Hy->*mWLF8??(aKn zYbSQ~=rqCetF+**XceB6{%m+FVRMa{ZM+p0qmtif#W`NEY_oGaA2Dbki^R72U$`Y- zhvn{?Jh=Z)J}rP19IQ5674-jd3Vil3>{ddw4%YzMsr~OLZGHWVD85=ZCCFvHgn6CH zgIDXc`_`aOl?+kvAOO;RxOwXy?`$6%N|UWtDM`uiqNzjJ@sH{H9JtJtrWUp4@q95; zDwV8fH`2$Ou_@k5w{W5NDOAPd!H|n*M})%`S^){GJE;=)C>T%mKW?yE49shW-Pk0U z-6srrG{&}5@sm%k#z-3&2n3*9pWzPYNc-BH8IE#w0;OG4y4_ym4Dd2QYRoFMRB-{; zwN<-)G-q4DQHr{vB=F?$#-=Xa-cj1K<-Wf0!Wf|poUkon^8sas_(a9+__>~|e_2nq zTjjOXNM5|4UK)VM2cz+}QJjizg4;i~itn|9ohs;G6lic|>!vDyd|S@71ItWICMpW# zS#BK!KtBv0fyGoLTjtBByQn&AbMw02Jm0G+XAM;G)7?1gi(CUM87W}!N8w28`Fbr< zMj*S^YVE$YUT?!^KckpdQ=MkBn+Ex=Bqq#VM{_aw`%9T5QSYu?FVKquQVM?wPMGbb z!_Dol==?)v>iOnB^tij)f9{TFlvbOP<=9=N-0O=-?(|ep>EyXBi+3%z{g2EOq|YAI z9n4;*dczFIM*jijiLn8ZuHjgmboe~XwqeJx8yXC z%65X%5bSdY+6XW*o+~rR?&*oPT$JgKY8YG0GwZwzAe^UZIi(?1wz~10ed9z5~Q@nmhWwP^Bo%yEZ*>m_~GWq==ZrW6W=XqLm za1HN`*)N#Kl)aydZnxMf5u{Qce*-&m=E8jQfRRS?^$?&he{2e!J9qC-P}OgO5-!=T za0qxxQEApO)p{HTq2RF_6e-GV6snxscmT7;H#_T4Kkth) z2MNWAoxKCl?dJqc{S9M3=_+*u4@~|+Cetk#EWWE=b7M^IQIEQ6*i4(OVvHk%vJdDG zFaz(8%m-Tt#2mjkO&3MMJHK%y8X5qU(}TEnH^rvI zZM=b8R?8o!!HNebYxU_Qp$JLCboqWV5g7j{rJkh$X$f1}@x#skv|#yqtCY&7*~w)4jE zD}jB16}3JfAiLym+B)Mvs?HdtWul}yn&)31cVtWEbnLLeUF3&coE_qtjFtMJ(@#!$ zfv}QEy*Au=-jGpI$8v=>HLd=(I(os_+EK(x#Ovj~hfMFZ8s9#i;%>atk|~iUBIeDD z(lV_c)O4I&J>Aj0ooC6?VYA}wgwJ5RQ@MJz9nV?9xIeQvDKT+*Fm8LWjYWZ&Jp7b} z+%~_m(P?7@uhhiQ=|QQ3Nc(V|Ig+ok=|c1aHkYe@eR`KErp>X;j)a2hwbn2|iWZ-% zHuF8eqaXMoRcazl;88c-gGZaO{Qgi(H3H5Zh(H9_hqBSjh)|yTU4KOs+M1Mwm<1P> z*+37HqWGmbH5KR*18baZCiEY41kj9fnzpHhp*34zL;uUv!0 z1+$M^&oW%12{Nb4nsf7$Xlk#m4#1J(6?20EIO|Yb?Y_#R;v%4tt3aC!Gg?zg%4(h* zOM@p_2^o``j_FxX^PI&Ol2An}JgU$v(<>lu%dcdS$@8DWGGbyzy#;vkQ;e*Kg;Hoq5q1HA#o*dwxrzyBHLuNMulu)TXl zkCD9cA46ob!k_66e1Bm!UDv0zB()-oM%6N)EKzA}DoJ>hC0p`D2;r#w*`8PAmtO6W z8htj`ZGu{tsK%J$ck&bj@zX;@iyXeZ9v1=2xhz^+e)&1CWU1bm_a@=Ln_{=cHd`Og z9mNLDb0|-_awzy;4X;HCQ!ylUB86w^bnHQc%qs1Yctr5=e)tFR#*}2b%1ncSSnc!P zS|tojTK%OcTnGD}kU(Ak*B;vwxP?h$!9UKZcqwVNp< z;Mrqcp;gJG`jE*1_CLK-#6tCPukqNAX}_P}LzF|KR3=W}oy5_qWuSld)k&`(o!k34 zl--~iBIux2e7Zf&`COw8q1xfPfGQ{R0obPow|*-6Ed(QXM7PJ~@FZ;)4Cx|~ieW;# z*g8YPjCxdr5$g!Q(q%TsB^c@kvjsBtk?c%m|yt4V4f^<}gTI5toeNjhpHsJcU= zb2C>z)#$y$d9e#nqH z=+OzwX+6Q^LoZiehARYjP{JaBJYu`VZoI`TuzfK$_i)X_^eS(cLb@hEJ-+`NZIiI% zx1vQuxvh~LX$*H)SE7*6a81=Q(8n%Llf@jzWwi|6pwV~lOJIIHHFd z!05zjFh53J?lkrIlftrBDUeRHKFzvbMuH3)V`qP2tTTzD`m!~d51Y+b)_#sYZTsS z=uOF>VQ+?NA>l%Q-kPpdnVq%Imt1| zG-YlurRWVoKX8nD86b#8BH|^NE%QviGYUa4wX9UaeA@HpJ#c9?wxJS)Gbzh}9jy>_c&k$>2c3w`KzVZeQ1&75f zx}xr`4Uz+$EH>z=7gzU-kHVvcayk9HcU|X7hca-tHJ(xbMQ&L0yJo`!7|WW9-EdMd zp-->lzmeR3#Ot`TIKCfCnjT8Wm1HNI+tU0V`>%49U0!fKOZNM~y$m7BZA#vE|^xzbU!9W}kk<;kc#tpNS`n@qj@2S#HEYV~lb{7I|*~C`fV}|%Z_lu`ik+A5}KqEjWwi4&ZY~7{e6t(f{=;nB_(o#9J z`+2@$&!sY~ur==OT6v$QW+W7h#^rRP)U8M&aX_4{elh-nqOZlMBMRj;V&Wv0tWvln!WeIaS+%)s;k8$+-8;jlu%$du3b zw+diD;8i1R0h#B%3NGD%dY?kUz!q;g0XJOIay%Q7R|dI9h5YX@K6!)q6*5+Ir?BTL zk;wSfCvk%-F*Vg1x6>7FjoQlwWiNB@cKi50mmCb)!zS?m+5Au+R=54vCFg~h_2*1f zL*gX=z6u+z;3!m&0%Z-0Yz~Fgsy)P*zPb&_fgO>3S0P0$*rHwn22u3x1K*jy)r&6P zk;?pzO8;F^EIHkmQ*EK*2aVsWU^A%^Q*(s#mVNRJk+h4Lgw;Lqh61?v`U$0`{ATa} zI+p>vw;xj1Evv}q*L_YlCl03s*&G|FxjtY9J0RD?H|r--j7uPG!K-h(jUzeBnx>xI zUgN(`w-^6C@TCyORsQ|{|8?*idcoh&B?tSRAY;8>5EB2S3@t2JP_8t`Tr3aL>Tv-Ctkh z-+uxioUe>9hNokJ@D0x)W&7EUD}O-Gm~X=kUIfdgvg9-F1J;Beh(ot@VndqEV0kWK ztu{|^d?P`_^V`WsLXjjk>u!e`*d4Cgy9=9@o)1Q{R40+$UF`XCv~R zSfP9Cm;8Qe4RAVyFow=#y|8mi*lwE)zn@UE#?5=(91|QxR<(m}C{;-hP5|-f?!~DX zI%N_8EiJ9|;5}7+*a4Bb<*v~RyX7ZASTyh6AwCw!AfIA-{35j>=W9rX<27NiUT=WI zc27?sb_?k>+W}VSh5b`n>xG7LMMV;khE+LqV#9p~@V8d1{`Fn_{X&NrygUCEphtwX zweE+x8~naFR>^-JZm@poI9k8R(67heo-QW zZ}SIh`xPGhnE1RNeqpIRgt~qQ?H}0h+{dEw0?@qmq2xF+8RWUjlOWI8TK*I@_JNNY z$U@)#dU$Saw*gSU_-v(s@ptqt{yNg#85@2yRTK8l)elEzYCXer+a%{x#S~j|!VLQ~ zUmcmnOV=3jp;LsTX1+$}TM@^Rrxw2OxOdg$(^BMOKlQ@Rs6MWrG}s**_vu@ZZ=YGF zJe8)3BAy@Ey-se-1ivTv9YCjq9&b-5WQ(!yV|4oy`67MP@^-^K@54wBZ2+Q{fzs$$ zqi5<9L-#bxv3D2SN>qKcH_GR}XPOc%IyY!(HizJjel!nCmHpDE+gErFHn^LEv86kK zXk-uRBgrM-$Ysmnw*;XxttXOhjps+sdZ$s3T4?E>IH+B$QUUXuum@{{M4ok1MpE@; zoiVf)m@q2h+LOKRYz`Mp7E?9Etz`nc-zdNc&lBc6Up>*t1bzSewVu~7!=_O5WmTs9 zV3^CA!*w2)3plWEpsCuCpt%TG_k1fU@t50PhbAgvlyz*fK;b3wQ8qWQ0y5g(5ZbOh zxTjey(pML-FS}~Bav}JX*IGy|G6=Ibj3F~9O(f!iLOvaPp&wDVrOZl{0+UXac%nc) zgQ}*MLrGgu+4q9mZ3)|9JFsDydUW?-9BHXD9@!UZnLqe5ayXc4DFJ)l7Dz*%a(e@t z%*Ezx+X~O?M@GJDA6k$y^g7bpW65Kc9mFw;6*+;qYa@6Nt?{34S~h33Bb>Jb0baG~PEwLaFV-lCjzJRjyr) z2%#bq@Psm}H!}Ourxq}3IkPayD#2VxyB*|8WDD0)rT@cni|4cmR0*%^2Clvo@&?wI z7%mN$_24tnw*M81{{Th}qKIr=oX>ydM^Q=XZOnfr*T3(Q+cL?4`&Bm(~Cp;;L zrn0;SY*6uJGhPh~rKj!bi#^jbk&0qE1BHfo5(g@$qcApfXS@=b!_f$jnq3I7f`a8W z5er&lTQGs7yjHoXC7cj~L}ZOpnN^Ou;DnD~Xd}=N`d;#SOzTOhiRTuf5OB9FRjw;+ z2|GD%Xi3=_S-48SpEmA}6tM*I5v9tBuTn9sdP`rggi3@7IIW-XxclQQy;|6h@V@N9 ze4NVVjLGfhf8X`CEXF7cyKsKso$+O^C$apyhvFzudph|Y91rM{&u_3!Efh^WWFY{p zVTF9*{g0|!BMWh^xk5h{7qcmjm%FgK<7)2#e|*+4i!Ou1{_^tJ7F!a1eEc803dMIrx_h?r5c~n%HliwvvGiQ^w(s&~La;?J{B2Zl zT2UB9R(y&z9+yITMp2g2)h-`x+gO6!K{HvnT!X)v2d$v9L|Djh_PIG{4tztDamjV~ zGhZi0<>F5i>c#i!JT4K?^gDbtTj3;PjzYR{$@}X}3Fv8=@XsCItzmc^t}}CSoCWNr z?Iy6Bzi;`*uZtf?+O z>6xaV?gORHOE6_(eLQmq?0x5(xGqs8eUH!clG))+GLQc@&sC5RB{7@6&*!|&J@Ys1 z*ip2`92sAy3X@e8o*jCQE8W!p@L~$O@geY^8SdTHmGdX_x}JYfK2IypoOKZwT}3^W&TN5vKSPKOtrz0$M#PuA({= zXt>CzKm0*CBjPLa0;)a8(ydydGEr{VsE1A!r#a7}Z+G!?_pwZ-_#^e{qRQzkOh{LY zcvMFu163Eh%t+TA|0@|ixy{v$z!4gz_(11i4%p9d4MPkeeS?O5zF+%h5-Is;_17#W zI>k(41cJG%pjh8JK>825BoVmSI`)ZUHjKA>BU=eyLQbULxpY5P0&2K(#a>biS}u*X zK4C*GAgf4K3)wdZJ{H~_RM+F9d0e=CB2zZU=P~m^>llm@#+6%?V(c+lYVioI zIjm5{eI`9xsZ6Jq4Ok(V2)b>LA9MPJrBH=N{IESbc!nOXuflD6M0AGygcMO{weLw7 zT1#-;G8rO!)5v8y1qdhLUC)h;%O$p6?xyjDo!G7Gjd)7kOB35JzZOvF)qcBM)yrbM zMtPVmI9T;#IO8$MCeNdh)XQ-QOJYPk2~O-Y`0D($#&VNa`!qjVETRORtPQ0>(f84H z`4+$E&RX8hbW(>h!2#rF5E5AyevwdVq8vcP$yrqEzM2xCOZ8=XeZ-+Dz{?}ZVF<2) zGzjZkO}t+TmMLVnM{EY}FgF8c0F6fUVxo?JYWe{4L;wHc@V# zM$rkYbq@OT1Cd3BvoPBI<%Wh%rN%ji7ya|~f=8AUA~m_xerh$((UD?}815-jXx?ws zy>n0;_hHUjpdVdS4u`E2b$#@7TuXR~NW$6R2nYt!-ZVL+<0IPpw81wpThhwqrv*MT zT}^`FfBUJs@UvTn*+f)Pl~DxjLKX3>+a+wKQYt&mJ+Mipe`7IKI4ola((`m}I1{N zq<7B~dp22qCF3!=_#!!SAmJE^q=O9AfAFq$BEpcGtcXK@dU%>b1GoGK5si@6bK+9M zRKQm)+l!!Y58H;9ZZy;(i-bR8Q2m+!iM#J#5a&C^UVb| zPUs)c{bkf6s~AV6=MV!JtEglWv$+4RpKgER%PrTu$wb(Jr~NxP#$Nskj?BM<1FBiJ z)mjl)(h@o|liWX28_%bBgLNqfR|6L_U;C!4`TfxXVDbSL^iwfVth55Vhvr${D=7qh zF)T%Hh5S8K3XQxMfcbBoCvLOaz97}>NP0A!bK&J;?-A472Ane6>Sj^qHY>%PPEHVC zM^n82&=T}fWtc!7zH{%$Ge-ka@c!~${S2<%`Vux^FHM1~eY6=b4f=9Xl=4q$X%o7W zsuC+<=i0(jb^7WqD?Aoi@VPyR&cZnzQM7qo%er&Q3N@+&%aUD!bz9*y?2_KeHVM6H zu6EpsV6!HYw~j7*Wa<{dDH5M}e0k)L9SrO~i2z$hp`JtG;gCxN*9kV&H%yBMg>0WBV|0%xL8g_2f`S; zTn)sI4`lNBt1n5Y^vZlM9x;~CM|bA+ zO0jq=U>~F6vqM2`O4GyKj((SFAFLL#JJ_TaXj8f3cDpdggvdIq;@9!}_T)r&=`K`g z=eU1<&};t$8oQu(JR%=-y4RlC_SJg-jdhLSpi91(wvFc@3RQEC4$(c!4 z6$(Rf9X5j=wsDl2TG-G>&UiH4kPOmw7F+9Mm8!Ci9d9WqD7wTiw-SZ0&CCXA_&rUJ zJHiIiQ71xz~5q*=^zCuch_)PvO#i z!x-C&j(<_JoBk@OSbdacP#LZ6O8kPsC?RX?<8~kR%50krvDZU2hwaZDc|R7Xr3ula z3HCP@eN9I#boNKMUA8L9E#C3ea`|H0kBR6DiI~p=VqL4pdm}WIVdSt);CGVY1|*4N*Az*6RoGgha@ixq2oRn94Mxw{&Uk zcEnu#I~^727z-FQ1r(hA$Gp|@LQiFuJ6TT0P;nQi;W}*S3u`v}`D**K_&!<1Hcy5m zIMN5X?i@)`4i;peoX{*h`|S5Tia{d>M}y0=_+i$DMXOS8QnlRr;M^5=e`%5SBj}Wc zV``($rqLiqQs-obt_uC90?jBq`PDwKuKCS$etJ(f{ai%Pwf&X9(;P1r?XRY+emZ4JQ#r z1G_xl42OaZWif(Ee(LkO(KqC;*0-22=>4!y}p zmVq^{T%#Ok6b7r-yA_V<{9w*1I~zrFVSFr8g}O&p=y3^$9#V5T`)<*?Gm64wmk3^sEzX#3E+ah<9(Wf=Km_!y%5Jl8kA?W ziy(3E4J;}5)sp|OYs`Dc%d3Rzu_4S)$A@`Sg1-+^0Q)b7wJ4wfx9o?>XptSU>iOz- z47-DaNC)v$E?A7tTtj@Om5fSQEi{$s8hgb!qJfcd+iQw$nR5VIJ{(18$x&+!ZEsFw zBiB?pQLJ}Nj^^{@=s}eUpwUKP(WmSIgM9*;6F$cU>lrGdOsT{;Iam~#J~mpc%zdzv z`v}>X6|GXiW>7CCGvBcMh-lGfs=_+|iHE9N8Uk?H3bUy7qnIG0mrH+#NCHD0=(R{5 z5C%Me1+yV>3>&nXm3;HTxuzCsb#CfKmQz`LCms34jYZ@U45zPg4}FX2H$p?yJ_+ko z!d!=Z;liY3flhX3XJqEpwk|A!w)cAx;A<6AENpVA0!FuN^!jorOaWVq=t z^VE3o6AQHg#mWx?bHIZs27FoGdPLn>A&zV9d9~^Ls#*LTvpYfSg=>*=FPm{%KXm?H zeEy@Dqn$})FwXU2Y_R_7is0;kfG~7}w&G(54M&;h4ni$F+>#J3Fl7(v1LI_K39RKB zi6rP2V|kGj!ruhZ_Hif89znVowKT5M*tXgZUvTo!R@FQUswtiSnc)!?m z=PX@gD^=WH*81WwvHa&I{mUx99B8@CAwqXb{i~dEfLJ5Pzu70h_=3kSyC95&`@_Jv z-u|3c1$v0NVjN1S2}%n~=~No<7W)KM?tRj}OpsBvf%*BqgSg0a$AdC*=Nx__u+p6cA~!kJ7+SQncx2v%rN9+zjOFzGhe6r zZyw(}PWTrli~I*B1KgMQJFmN_*ECysyR!OBCQ?X%Hf5$-_;7Ak0Et_dLYSGeZVKm8 zmbqC>>5oDXUCd`C#7$5D_jaNz2WySaL+UleSgM(`duV}32~tg7yWMVjZd?j(dbh;Wp|1|Fka z*L1c)KBlY|Ix}yhgDL`Y9yEY0NR4A!Jx(&X8F%h}l;Trt4#vU)@|cFQt#cAS+`#q` z|6X~$jOaG}@sA9QpWnYqgDoJcUISzSy>+MB=D6d_QodbQa=jY-^&|E3dyVwNv*rB6 zC*P+ZwA@8pnVLL~5{Q?0GV)fkulK{V?HgKw(Zg?vzi=C`|3=&5%nz%@A)GTj6qV_u zT&0y$sjX9*RKra*Rwa1H$=;m$^kQ`2@ef9=PkOo|2lN!GRTb(J4rIh7t8`7B!-)d1 zWFe?8qhIr4Z_a=ioST^uehStkpnsMORoi@t>uF~;pA<-;Q2H?^`5YBL-I$tgElveN zor3~PQ)cB*p$GR#i$ySGY?SVya9A?hkubs$e{zCf$@O>UFA8@g5Eg%78@7;u(GOd| z67I*3aYdCe?UmAJQPi@phT)*2jty2Fyw1w5!0e6VOvED&ZL)KfV>Tsuet^t|@1E}E z_3^A@h1>FzR*59ip7Chvn5HE}Z#PBg~;4`fD;@+XfGCrd>d zp7B}|3Vl%`l0E@jSTZ-Z=3r)wCb9~YJ=&3!i6HnaHbh644pMTOm3jzj`-1lumtp7D zB89x*_P{6=rvBO)E2&dOie;(OtH>DjOlS9D zNip*u^p^Msnfw28adS(zO^0MIsY=)1z~^DfP0Ork@zHO(R(Fj`)%EBC9w3a|*pS%Q z5!e;q!-u0;V^8xpQn`B0a5*}6cLKZk2*rdVL_=UIFXGS zujWPvmI;wl{TSXXrZRVZE?m~NL)fgaubRk2&h1MipFD;f9~`y?My?8|L&Zx=JpucV z&B!AVmG-#bJup7MW)(Rv6rtmY5bto{Gh@Z@My0#k2j|f zQj&>%C#!VpUB<S*?eK&Ym|nqDU^Rpa8r z!%87_$NAWVp9A5Llli7Lqp9NDtm7Nz5080_cF-3z3Yc@XoxD;Xig%U&)O2|L%~dm% z_NUQsGp#viWW;Wyflk**ZMxWJhK3JPH3r-g4}JtyE-QZ(onq%{*R+H|K%+rH!4AH2 zH|+I2(Qc*ryO()eHjNnt*fJsYVE>`>ifIDzNMQ8}i>Tfa!2k$@H4kwR~;#yS~k5a!F{m8jQsIDlwDaE}OH=d?Ep#824@ zIjXhiwCsN>s+_c}TFYVaV`DK86dfDG_3o?q2zTE-6xxHzsO_JK{^z^Vded^*x!})-!hHc0N#}N z3*#K|u#WxT(7sprRz`BF6X|*jn&{(x$w=4+?3*yvw>V-7JWNx0JsYbeR3AOTEFfq3 z9z(W^uD>#j(a~>h3*P`tIvd{6^B+DPJDw!KW|1L|AuW>PJYI3pkI7dHc1BVRz6@TK z6pDCtn#oW_)E~gT5zZz}B%fzPXx%L$xpsUr+WvMwx>A_ymIm1nh)l(T|A-ZpHqOQ=MdCiTf_0gGL740 zyn;M0w|q{#vcF0vRc?KE-rwRuN85~&pBkD){^Z9;7QXpOfcdbcI5Pt&F=<~hnkA;@=e+Xf3~Opm|D)>6aSpp((-KSQI?d3roh>c-N#HOGlF9|pur`CN}%<9`&glY z*NThih~UxmmHr}{o=9ph1?<+-NLq6fGbBygXwrEDu`vAavjA&*_XZAS%LcmBY1XxV zGPccp@MYqy?W@+0cA}Tv-4kY6=%&@>1>YanY;YLoL&m;nLPGI)iMvDaxBXR^b8xrn z)#UKYbTDmJWm5b02 zSjQ9Gy-^x(OKWQ0wbc*R{+PG?gT!GvJWJajx5c6d1(+OEzr^LoEbE?H`kgA+IiRO&`bL_j zRAUyBwYoKof;Rz`W8x(;3W|cd&vaV@W!60a!=DKLPZ%EQRZ`QW1M>pOYs*>VE6soB z>f3lu0{{62hJUqfB|i@O4RUlSU;w}Epq2io_1lym@p1L!x_9oTAU_`Em1}7*!6EO# zfVeuE`iE|*tg%1CdW(R(6PCc7vlgvfa)l+Hn*HeXdEDc?hi#pca2707WAv&TnAm-2V(k{!p<$msbC9w=FeCXRaW5 zq9IpIuS_+^5LL5ON3povd74PCGm0;I6m;wdzSUN2fMp+&_`t+NCw?%&qHtd530^_RfzaF{SL2FfN)sqLZgpA z+ukUmD8*~!Yv(yE!E-;j2Cy4NSPZoXJDkE!;3aRhIM&{ggPF27(>0>Ra%;WEWl+#C zv$Cf|vZ8}E73Px&B=q5T%X_ra;&Qp;uQod)Iq$xT?UOlB@~|*Pt*BZ7U3Ww|#!}gM z;GjUP*t>ZjYy{?CPE81MkD_rnks74e4S}32b(H*=&sFaCUhzjx+n2Z>0!4Ze{>-tj zOe(ne+q!{sG6Ug5a1AkHGw=DL2*IBLC3q&=I6lbC2wKy&Dx*c9r=BKkDN(jiwk2+Y5*JT(j47C!n0r8Jt_-Gt(}Z#vqxbupCOIUtgN)l)&Y!EEs+>A z#y#v!A3zu=yZLqX(b-ZBzJg~GZVk!pew9xKi3#5BIHtjk5y44H1@a}AYZ{KUz%BT< z%!UvaL-dLV|IK$ijQ$H9JdIvOoV-;!{C9XZu>a|^2y@xc-S$~xe)Z|@QvK<(Fc&g+ z5;+~7NnF%jzZl7z&1wJnyR(v&;;qQ)Q%G<9b>y+@eJ=@pg{a_m(69B~PT3-P1|BNs zv49qs16uKpj86E)BV%JiJCS9|hQVrU9sU!Ph+(N}1Vu-s78bFvAm(rD}FP9o_* zq{Us)hZ-Fc#3b);9A7>fB2EQNn*ugcN4h2HB;96%)x0HY4M{LL3k@<`Wq;SzlhX^- z?$oVP`Ig{j(yVt5PB@(M4J_6V(jF--iuuT(G!j0iRQ~oT3AB(nIzh*Z&@5S~n_IV& z;zFt*if;vM_z)-=(GY6e1Kj$6r${&-Zf%ugL*$pfuV9u}+Mus&SR{g|GX3HdDRv;! z)w4)a;v~ml3K&94YI-KIIlqZxEVc5fp>f6q5c*rVH;+NvUc4>V{4%!))oi^bYpK~t zgVrS|2VU)XcrQ4e7L&ek-!tMa%HxJ>$e(mxT*;=mvnbaNH@~0ba&_3sPlev&U(M|$2G&0Yu2;(zV9o2 zdH%fUfVR2Voz$dXDPq9t*l%rXd6eAe$Cnpv8Tw988C!A!j@-MWepb>+2St@jd+?eT zE}>ceb(Y(bc6bDs+C+DyGB?4Sw3VQU1~JAh)$)<#Xk+vt=-B=~mR?Qv)(faJ9@(AS zmI!I3DwCP_w`q@$GS2_@C})28&yAOL%%wB;4~q6bjLN@0GB(&hav<%EK#_fzKc8v` z>Tfv^-+$ylv9;&RYt&%XqBVG9F;hfveX&P`&B*$stb|S3tTh$tXZW64>s+C4n^Y=~ z8{~rPbBu28Stft0;SyODL8zaSNlx0!<1QG!NlZKt3a{_9Ww`qm>ut|mA4#(9t!Gx? zg{?`8_On|Gf0K1@B5W%|1o8Y2%%jo~@T~vsWEVPUw`+cZg{`kls#z|8jdy=iH?9N* z0#ezVa#g+j#RIoV62PHjyd5hBP+`)GXHUdq{dC$;2if&s_vdpx*&ViwdE*#uNbqC9 za^YJDh=f}{O+ct~yMU}P9Q@P{qcK`#qXA@MFTZ(yWOLn(&U4g%z<6WL}n%TwINdbgc)nbAcWLQ zdrZp_=HvT2*gB_OG6UVEKhlFqvwmPQ-skas1O|2Hq4U+`CF8=<596@~zx+C$V5TL>tiaZqCv@8lV&-st)<%X;@yV~=) zMPU5?m;#rO+q|61D3uD|DL6Zt>S1)8V*enr$rLh-nV=;drn&0xA_JnF6iQuWt;Cx1 z=nk8%3dJvnjZ%V={`vsHKc;DKP|+8asJ8s>sFT(aMTQvIV?U$cAFI%}jtweZlu8!( z8l}E{Ny-+-;9r=vv>uFu1>wtr1<_P~@1^N5n3N!Brh7j9kn?>abJT5X*f}1ouw(Np zjXJZaR>^I(CsMKiaG#YZi8SaoKg&p8?fxidZg8+LD+}j(Qsh+YxH(-CBYI;BBLS~e zo!~Mtq#}r<(kfA$_IuO@>A8pp zo*u571}8DNvlR}kUDAoPdj+cXO{Sc%&j}`|<+i$Qjpxg1L|dw0a{OpMS1=^?L2&E* zpfO);5Rq5t7qGO=HOe2AlKAOb@7+7YR71!zh0A)> z|NhizivX3$^N>fWBg;kA<>eOIG9XS)6Uypq>XPly>cCD@b8xLt8g;bX88x2a4w0>Ee)$fpAdc~kwEvs&1im(nkGt00VH`qpF`^p7^3 zg1G}3pf^(vVyIa^GYG0OnQGrRwquP!I(~wm{@A+cabvUBWpVVp&SmV{vCOy`UbXCc zHNVpNdYAqB^tfvA17eBGLz^HT*DY(wQk|dFo|@>=r%vrSvMC<-%RnG^?0Bj)BZ3dL zv~m`{5+nVD*!pVQ0T0+U_UAnyu49=6{q1`aNN~k4=tBn*7~kQ3J^1B{X<=Qjll#v> zkk{!=`FjxJ{~Ux2PGqfRTyJyi_iP*SHGdSPqM~b`Y4yaqnQ+32M-Vtr={>HlU)pG> zk2D%#lD^lzgiKNI5w#=?hKpn5=^}-E!yUSaQPS&~Uo)86f(WV_Q3HUJ0Zl-1&+t72 z&9J%&ja_c}FLi)z0|6gxaFyvIO1-TiE64Ty$Cd2R{*ZM^fzfstAs4sHI_g)Kmov4+GDT5GcwMg5cWZ?Je4BvrIvyEeLqY&J zfx^0mfi6!bSH>-W;Jz6b9r-7~RM69AU$1$7hYj$o`D}{0hRk2ZvOST$7=7RSHGz>bTdR2a8q=u8!73QAy@T5!WKci< zzUb{G^)p`iMY$Jz$=nwaKZUS;B`r=FBev&T9^Rv8*Sk)mXhkLX3r>9^(I1kPTUUsv z{p$fMq1O7`*6cvyOHT;anovLuiwlhXopti@Q3G1sF8H@|%gv5}0Bl+Kl?6Cu>{4@C z_^yo7guPBXLxn>=s=K#uly&ZDph6y9H zbQ%*BZ!|q^eJ_-@97$LAKPu$^8$bG(2T)c*&fomPdNTEFC&3o`XSZW<=__zAKD~oEQqCLEB3sFt;b}sT3XL z?mhMNwRy+$v9H4Tinif6amk>o5ZwK5s?F(<*5@!k;&B3_rXuZ?74sM_z zTD6Pdl&+GM(e1BcVF$CgA0zq4KE=d{8v*5lB`)nd4~Of0llhK>=>`wNzE~=MpreT7 za;eC(idQSc{dlnDdI6?2M0h;T!Du zgPit_zsZ@dCz++bd7#S}u&0}sqrSfso4@dTNrQTMg66xMsA9GEL(zLkzg9DY z&8MRB`eOR$Kqpx@5srRtq0)i{-Vw}QFzl$m64Ct*q(%ze9_H48&enx2>s8WpKT{Z7 zz6wxgGuMFzm{6q2z&miRFdyoDq%=L3l^;h@iy!Y5YzTvTHU%SmVAN$m|9~*I8-jN) zrXW2EVrMrHx0acl(2Yj?)$_Y@SuK2{)|GAqFlUal@z$syDzekwH~`rekPH_{HTB3p zX>aVqjjDs<;|Zj&VGS%>s}lkU!heG z_fuY$j5w-~S>&RbH?+7IBzjK=n_hKJjIL~Q@{xf5zcy^1MZicNo=6QbIe5=$IsWQ) zRdGfi7Z`Hh6+cbf?ZKa`^{!Qd&2rELD?qA;|1!{@X5tw*BI7Xh6un%d>c1)YFi4Et z#j+PKgN;fy_Q+As*0ZuIC~!zkMZ1QP+*CZucVt{BX@>8M$P@SG2az%9Oe-9uv34T1 z6+Gq7_zz~&QJ-`r*NSj9c(9Of#|#hK?|nsVj5QBO`Mrw(bokopws7TmB8hn4m?3g- z2a~#l6^QZmPwQy@`#Xm660B^G7KJ%Fh@64Ci+yeg?#jUw@e}v41eU%Z^2LS-`QoR$ zj+Y~zGK<1S8#rqaS>=$beC+Na>l*kLK$#wefyGRYmkHxw1mY|vvLxE8;;AfXAQYeH z-7XMwpDZ;y#PkZQRb$-WUEl+ON(fWF90`~JMp3C`Xd%|GNL2kNw6m%JR4Wp3wAyQj zPOUof)ov;3RUauL1(mi5BAaNf#r8XS1aHw$r<;9`)!{f;Aa!8c-nn=c7z|Q=uWr0> zT3a(bKC}!Cvvg|6D~3x>8H!w8b88$>%Jh$8BV?nf)tWxHUG2e$A)+u>W1JGMe>)Gc z8iWrgQjDVzN$esEY)Wte4_tKLkQif)dt^VwE_%5m1J@6B*ZFa57oYh-Y1XY%tkE(s z6v%g2bN(|&LOdebI)}GsoK063B(kKEfziFF>|c-KtQJ=$=8)gVl0wQ-L<|gUeD2E1 zkKAkY6dtL=&U8RM1H7-01B^uxXAtO`rwIrAS(4I`rftN z+Lo2s0<_w#ne}}!=}7Qg`AzQ3Z~EFf%x1AjB@=}hY>z|hSHDk6ibt|Vl6#8kj~8fs zg|i#z`FJ@~T#*`hauj6*hr^2W$XlF^R|L=QhJ<4=8#{ZA7s*JDVxlr4<1@(2=Eg!^ zmS$0m7`48a>6&0>UH1AF91X}`4uCW!$8WwCBW}Tv+zEbpvAp^9PV+bXQ~!Rt zSiKyNTzW*GFndrFO1mD5$9+LSe+ZolajM3ElBdRUDWtsZt#J8Y;RcL&U*D|Pp>cUZ zx?`mfgoML=G(6|lK~9)imfMu0Yl7~U@OqP9A?Xo)jKU3H8vr|kw_h8ID2v)~Z*k&D3TKUs{lR(4jq%nCDiqCfW1QoSVd|KS0Kuxj)_Iu14j$K6?5=g> zoVD&zMr=!sB#6CH!l@Bm&fviFxbBj=-}xiR#p*wB+h1Cp5~7lB`$^!30qHo7{RY7E zH+hZGrINWQ`bPT7<;X)n=$F-qm>X-Ef8d=gNi?hOH6cRyz09X!Fv1aFz8bu#l1{Bo zxCb|h#LYUrs$Vwsq^Np#7=aHkbG&wU1*777l)}M#@u>{5lU&Mm@kBF$Df2D>0E{%L zaLeak`nLOX&t@P$<8*#EG{@{&5bE95{1QR)LzewL@-r-o!Gk|gK%)8Kx+S6QXFhX%xax{1iqP=E8v<@tKWtWpl+!Gv@z(` zRjezO+Hl-Q&rwqCzV^kpCtpy4!V3*dnaLq?CeEK;MYKIiPOc@}=W#4!J`^eI9I+a_ z*KCrAYKvlN;n6gnXv)ylUn7>|;L|OCwkA#@J}KdRcKi}Z6v9*7&Z)ZuC20Vfx=O5j z+*v#uk*8V@rLMmGb0ku4y7Iug-3bKF7pp2M#om31cdN4W0WQ?#-7Bv$gB?vjBn`+n z_@r&7Q~OUyZP*#|)$_TYtq+HQsY>^t6t)bo?!7}5esV8~9o*o(jRsUdl{vHoI=;77 zZm~pizq$qK6pC>b;W)v_8b{>tT>Y_BLDFfw%f~Ue(-jU8(L{=KFT`P5<$)98rENPAM=;sV26C?K81XLPFle7c_tgM9x}Lo7fi0m>4!@Ym=&-HvR8oY%9FUT}Oz zl?>(|mjxl%?NEng&&Q#URz$|kjXf$)iBJs+V-T9SIcxbr=*!XV3<8ZxxfDn479P9? z4+53!rcpv%1iXtN0_|#llKA*Svs23{-xp=tWVE8hi44F`%>&H|{aj7{Vgd;S`LA51 zVg4_KITc;~bIA;DFWM(fhf0BBNcaosc8K|Bz|EG~{18BrPc0FplG{G{GH12W6xm7L zH75>n3s?_l`(4^FhRz1J!mjtJG}t8zbwM$OB$Y3A=(N-Ko(yKw8q92&@WLBz5!v~C zg10`~M%ukQLpDkMx`JRR&3E)r!mG;po3mHc&+*YvQzBC6Lq~n>R&BT2VRCtjPd-ET z!eQby?<=El^UL!yYLNPsQx_{U@MGR$s~=qi-rJ-t#5=MNhM%QaBfS;{8o^s~kkmc- zzr!1Wrhiihz^XD-FOc9Wuudnu9=gR)*1~GL5qd4r9e#bdn0#-CJqM?JGfIo#jbujw zxwmR^a=3XUcX{QSAx5@F{MFy|hfjv2noH1kaCgv_)Yn`=lS`%eN+vO@v<<32|8zqY zN|0u7jH_aLs_SI6x8ebgI8b)N`rlpf#KN>D9zDM3$8K%Q6UwzVxCQdBBltbJPcfd= zN;A!NiC>i>gmlp_7~y@yvh)GYl6#%Piev+130n7aqWLU=i%9qJ(hp;+- z{+~1l=1g_e2Of_r3^01%lvF&JibQva3kJZ7XVU4BNJ0%A0Zm;LM@*)&1S*7El}Tve zorv|rJ&CUd_H-#{B5QG}(>$Ppp0xmXjr%pycfSy&&{P!C9DHu~bW*$tjQhi1B%nAu z@Q}7qGW7##{Idi`96yBmg4pVbIH!X}BJB<#(boLQK)0QDmv^mcKG{HgybT~<9BvO1 zKkWub_a;u=mGzW%fAI6ZvDcBBi@q=0jhMY$-JAr}E({I3Q=5KXOR6y#Tnm(&Y4)&1 z)2PVnY{W__>hJN_|D0BK2jaBQ5oR^SaBBF~_dQNm#||=GIFN595SA*Qw8^a}yySgy z?EvHsmIVfYA+wyFmE#zu)C3Xieswk^8zxt;T~|9ES6mf!2bfa8#IaDFGR+(rzvc^} zIz7cNpg4_f6b!`}PWc47p-`Es0`vjJfo_Eg1!rjZUJG9ZS10m&AD-a`Iv)O z`h&6`rOKd@DxP*bmY4p(=fz|lnP{76i1?C0q(p}=CHz1W*A}fUnPYa<1!P14pQ-=# zKK@(l;P^i~t0NEduHldj;o{t&4vYSy!B$Vo8rY!MLpv{4gR%)1y`+8e4#=L)$CR7iqp&4FV-zg+2-9xZb*8qKpR9Xd2# zVCus!JH7XXX_et2eQwqI1IxP3x4eq~ulp6pdza-e+${yR#_&`dx7%CVMXy^L9O+0V zB2;pZdO@fig4g4s7H{#y&7v;NI=7LCPYM(3 zs_lD;f!I18C7Mhkp070SLA}8zJQe3C%4!(=cF?YTXQmm7GkBlhk$n=X3d3cFYi zG}F7wv505%_&D8Syhw^ptIqd2i<-~!Ln(O|OaNuYds!V+;YeKbxZ32qJaow(vlSAba(tIvzfdv z3w1uj5n(Y-v-_H>!Vw94z|D=L;Qg%&Z7{dXuivn~e3-Q&tsVIuFR-fsHR^}tCy>4# zBW0enGQ;xjpB^gEDmRKp^h8x$x0--o1?^GoWxfSeqC5E@#ciqm#c+=g?4xp?e(qx1 z;0bvn>2vcRc`T~6UlG6hZ@jge8#`CA*j+75?`JouC%ihrf)bH_!R7AJ(3%xvsKCAF zc)Y5Dh{d6Zmm6B2n!+tVTt8hAC3J;uRJl<)VmAYrPT<7wKi&F)wfEcrO|#L48dS$+ z_E1XLi38QjCkP(9oX`T6^Zhw`=dm14kwo41cKj1*Ng=wV@)}G^2}m*L{cqzV2;V|m zDo`gfQiu2R?!GzWi}@5kVVX#}0H7yy#okY><}$6i|nL3lcvzw+Hkn8O4#&c_`K37Ty2GF(t=)SGwDBHN%Ow0gFe? zu6G!~l`K@A33Jvra#PQ0wG?C&>vFOxU(J6|abIu$QaY`gCJkyt%=C(|p3^y8G3cMRHioL_C3u{l`~Hn5ib0&%m@$S6BCb zeXs3oeUOvQ=?FEI%QHBxbm^7Kmkz)ZvR4@N14HG>jKh%}j-YGWW3wX2*?C&JbQ|&s z9`%*ekU6DFCgqP@X)}8abcVxWg^|q6s=6%zK?`4f6-9j`zdq~8X3Bc*v9*hw=Q3=d>M1| zJvdQVE%Bo1ROUB7Xl1&rPndyJ5)?gO<^vtoT4V1%js)MZnam564SMx|ywA7KA z>-Vf4$6YDM0i-Tt)>$7_D7T)0?2w*BvP$K22kTZg8GQi%`G!!cp|+gI^U{Fis3YlO znr0_9k997~#RlJih}7lp-N?G(5;3n~Y}W=pg5^NI1(ryys`c{GHVrChmT|tk6=7K& zOnCxxyzzDmgBH$n>j$%Xqm6i#2!r}p;2BYxHOmsVE?ugl9T?QA5_5H8wp0DAiN;=G zBtxTF=wbDK$rOYdqazdWv;!SPB=B&Ld~L|=60uYu9P1O5DZ*!yr+^=l2K0qo(T@c15M;%XR96aA# zlyi#G(%T~7P8j6xfntpH zsm*fTE0-UnJ<$x!KgI3R+>ahW1i&v4ol%=~OzSo|&=XDNJE~mna9_rRvS(v4xhOJX zg%wvv*ONvcffY5*(JM=HCRy7=`%RV8D;~5UbSIXOnNFFAuN$agjUI5=w772YXg0ah zu5&b`^(Rqaf(~!LDihhAgxsq~*L}et2Hj@xSJ9~Wy)X3_{WSv);rGq72Tf!xf~#jV zcg+?o)+8{r%~~uMPJ#Q?-Kts^^&q+IY-pCJZ%4&d3sdcYzqmP~?9?fcyKB|0?ALGN z@RnPM`XchL3NLA|Ii3U?PvxhGDxNdOZN5 zPb?X3rqZB%6Ec%bY7Ai(IR2JrD&wq!aA6Y|zbf6OccUi7#%32)pSGuTsas@CgYdi% z{+9R7*H>dkA;b9MclP=&s0X9pxq~zGd%wK$Xs~|=v*7Pe;s^v1d=>h=63+s9yFh#u z2t$*Ozgd}*e9miyc;<`2l`c_IMXT`!8&sD$ty;4IKFB2T`zECQwmcO`I54$As<6*u z%XGOK+mP-_WJg0K9no?Z93%#H^A_i@xu+j|I z^=UoGvTP&BIHUh=?6U_ppx-cw6oAf|5;-{A6^Bp-*stCRus!@j>&Pr^Py=qwk?JVm z2sLi~{HnYxKf@0_%pf=mxs*a8G0ber3flpwekOhdtodJG{?&KN*B(tRJqV7}ZGAaZ zDsB&_rAF6%rdIdE?iN1E$T!s&cXqacRoKc(a+1i+{J2Qg^!(}Rok%i zQP&XZZH#0d6X@5sAKsNGLBDI0GhFHDwR3eekr{mf>G@Q6b@Ei@TUnm!9YFOmR6&u*csBzLKYp&=bN6$8PUiWFAh(k0dK;Gz^iJQHG~LU z(>Z_?s;wg*4<@?I;HCQajkx7{zi2DSw6sWh4D=Be`6}6c59FPCT>*JRrB##`T7=RQ zPRoENZJYO_e&hnUYmHwl*kr+GxzBv5u@^5eqtSH09nqLqr4D3Vg&X8-c5_sCDKdvz zI_bz|FUcmbPQ$FMvDbkAR~fbqcozZbo_FO(W*tN$b-Qyf$Y*jod)4ZkShru(KHXoe zDBpH^Ie94-rh>*<1G1C!bi}zq= zQEKT*l!<&5B$6jL;s$Fzl*~`6;D+K~_{w)~OoD6hhWamRqgnZOgDwVDxCl9g;u}nb zK@?b}XA<5_YB~HeRa-Z}!Bh=Y+xsT9BQn-i%~0n>-%BgV!0PPHn#fXMhT>a%62R7^m2;FKQgQXzuVcLHN{xg_^GSwyIr=`D@22 z9vOkS7m#=64x^h^@gy+5V319Cse`#f$Pig7HbV!0_uo!3(1=xaZ0L z>>=*8!0&_CEcozi4DH?b?YFBT)cyC72I=oL?nIqCg`=dC>@F;^FYpx!gq za}rbdc#>&_6ClKp;iNPFUyMm_q*_&Y9Cabf9DuzDAEbeZK*Mt*faPF(bm8xkD%vO- zI#+D;)jM_@V0DT_L)j5cxzNZ;fllUEuUv+|Eit%P9j{#3o5+O}m20)QcV+`#p36n{ zQ>g~&71cpjQ`#dM3*s-Zx%usReR6p)=v6<^u!x6PfSPQ`@%x&?wP&0))+r2T08J8p zMkQ)3jD2dHF;ls5|3aW%=A&nx#+au7WMBJS^$i43-%zYVr8B94bt8yj7%ycf(mSoF z{Bl^TVn#2#6eI(zVjVu25rn*GES@uU(AYn6qxxjt^~4fHw$tk>*L|iQ(yF6@hwL4y zk?b#0T~)UDu;n`^W+~a}EaOPu$MxS?pxe%7a$z1OZxo!i*v}(yQa)|?sDv=!q ziTxl(oBm&qlMixGtD39x&LG%V*4pDrwQSC2X>H7Z%>(0vP}I@Q1#dXqXs%<_FgFM< z*lRqGgf{G2r&)0Ep8fH%0}OORG<>dLIp~c8aL!1PD7P@7R|s1m=o@*xF0xP`{(M#( z)QjBe>@}I+O0^xzxW-MFRF>*4Qb1}<(j*-2&LAXndx?fV_?KM~hvd1B-KD2MZ$|r_ ztZtpia^=&G^M!nNIu1t99#elb>~gu^LW2moxJ2c8eg7Gi#jrE42SP7m<6A_Tj&X+y zuO-VowSGy)Txy6Mo-asOnb`gq_GK)Z#rWbJ^a0SJaRp-n`_U7hF_?3OSvLvc`2rA6 zWtep6kA#QtRD`=WK>!dX^sguiM8UP-wU-vEJB8Kddg6%6oCG!FmFKP$5lRh;hJ%Ul z;L1`+UfSbIY|jm_g+yI2L%!0?)8=UwhTJ8C$k`nyz-LbQB$*P$>{U{PlDz#alX9Pu zq}W{ty8%3wu9vlH~I?978C%8Psc&0{`N4Qh= zt8*2@3b44{y~hzdo#&*!{a8A->&1gCWBzAElGHA`!`Iz=yhK`OZw&0b0yZ_>iq0lt zZ;(Z_4vO|jCMwUr(XlM}%JLT1N0gC0HOG!R$S?V07Q8^Oo>%(AN(4GSf*9vS+OYB7 z{EvUw@Dl`ojh7qrOSEc28#{DO?zug)6NEhz$a-46XE1BXIU8`?fV^nIGVnCs8wuPz z=1;gv{*}G@Z>_%&?%%AkN#OGTm^)~!7yc%e=lQ|-pfswQOjp9wGt*}oC>}*zY}(1B zw<9kPrgwZ-K|*S}e2}hd0-C6Kq`Gix(Ox0h-F%q|F1fVUtAg|GQOG@RRmvfSYva51 zy+*Je&i!OJ7j>JB*zd&(nq~PkBnZlRU)E6Vs2uC}er7bVZ5+gX^ak7@A4JmR%U(9y zNkhL2OCX=k|IMty$yZTfLR=i0QddCl%#PqAqat3PBS#CxefPi2^jt_2-u>_ZGQ&U+ zDodavqCtOU%}TTjwZpc2@b;rAY?ue~3*~x*7AyQw#Vke?OlysGHdYisogiL8hzjw` zHwgNNeFw=!!nGz6IOByx6cmU}<6Y8uavTyhraQAmByJ$UmA6W)u8JyLLJ!oC@>6oJ+D6*7ITsDFHg%n`K4G~f#Tona)S{P=P&Bx0Z_dxJ(%hdytnW zF!6jyRHM^s4)+8dVK!vLs?uj5c2ezni;#`r#Z3ep+KFMfNH3}|`ns_?n2xh3R%-$- zb*&!=jAz+oo#`#*B63d$(4Dl;uJd zNF>XSoX;vM<#ZGdY!Mw<{9f4{=+KaJFnh!4(`5pEdJfi=`kuGDC7LW~06<_0mZS@u zt$i!eVB~Ui{L()RF?L_lP?FHMB0EI9#+;pE?dY{tROpzxa;Xh$kcO32cHL|u)@KCo z1vO@YsiFPMH2cBuX)hE=5_0%TrVC5eS~&RSZcMK^M*4oebd@NM&9Q#D#JDY5804`C z8IHXyu;?Z@fz^2YD*e`|nJ-T5Be1yWAizc;YY+ZPMYcQQphMNGA3rnnvd!%N`d12E zt{nQJK_mM`f9%lXj%Cq*fZ}$$SVQ{M+$B82qWi}ZQS7BrUQzZ1;iye>Wlb6gcJ9n^ z`=GW@Ql(BC25Hv4;#RovXT53`rn`vyvtDJ!00cJcB`@m`bSUcM%>e^!6|29xOpzQ9sP0uFB##KH8i92Gi8c1Xb_#;1Q6vU4`*L zua<))kOSS;*(p34db@JDpr$nEP!285+r&!BNF1=1>6b9(^PxlnKA&*1tFU_I{TVO~ zk_25jnX6MFC?s?H^r%U)WG1*NiLa0 zubzm;_%vJGw4?m^hP&^c+e@)5b?#*W3+jz-B80M1hu3|(f&JE^)@1?b(wwbS-vK0f z=$Qxr8pT2>D+y^61?NDT`JrIFEDLg@Iz*H07GkroDF!`4XFHjh5a-G}q;_e`n9hgd zl(@AMW&=-6E}+?KE@WrWriU!czxr<2`q1*;m+a!)4x{KZM$IU`*D=}hh2SA!3A+`D ztN56@z%<3_W)XX7S|Dk+5%Ej#MyGvs2BcP0zJZ{nd%3x!bU-i)x~ZsI93pU&c2+MO z(1-1<3Tsqst*jz$);3Wgl5X7QVwarGFPkky5vNx?Xa045Ks8)eiPPlySmF(bDRs@f z@0Ze=c@g7!z`0L`cV8$D|4v1|bPG}6r~fm;3sFCU6x5!U$?#Ypv*KqS0t)zZe6^Z^ zKN$g|k9p>!-%~)A=0C!i|4Wr`PVz_7H(d_2w>r2CX8X1;+#e$fN|I;JplrscO@0I{ z!Fn!G(yn7ALAQcfK_53a!u;P!Y&KaOh6q`CnSeTpKuq+}aJvX$5tUe(nRx<~%nm)o zDW{<)AVkyo{+4XHDEuBVJ zthpFlZo64kk4X)csx9{25m-=S6Mn6$}FJ3 zs2}vcb@qP7xA1nMZazZzgj{rHd-aCZV)0{;+(wXwEq{ErN11;i8R268TQfQG6&{|% zPWaWi?*Y;yHF8$v;;Akl=%Q5#IS2tpqBtHR`nUxfh<8h2v>4`G3UVS^LznRmi86FrS zPa1Se?cN}2tWCbD-$->cN;yb=t<{9~0~=R|LE*h}-Q}2!B2V>-;?2)y?#M{@=CJ3- zxxiEhXP11WRJ{@zw^U(K+Yz>r4Oly$QkR-{Cp_w8-;}Ez-%2K#I77mQoZlU|~62C(O3aUIlWM1%5MP9cilF1&ZiK z(kPwSG}Q7YG!iEB>EuZ8Z;~I9HKL@`xN~tFkmxz{ zp1Txt)uoa^9)=}3<+<$aXCho72v&8itx!nG50iJbLW$WENi~} zg{Y>d!EAKHbI(tl#ogkqKNSlXa?<2ZxJFa|HU~?y?CVr^m*NRebw>oU7)F*nm0VyP z>`^B@?5{XyWpS2tC3VIAKFy+)npOIAwkj*%9%D<-eD=8=8%;&ro#h+Pxr7@O?)}<{ zOK*Y=1Lg}NQ}aqC#l0&MqI1q-y$Rcrm2as1*yA&HpCSuEQ!xjjXmM)pE%|duYuOX^ zP|V+b8?X2uo3zs}N7><~$yy)AT=#v}G9|)HWAbe~rTHZ&pvH`7zsAS2fs*sePPJbS z+fakv5WnlQ_?l2bM~9|O*4zKu-I@aD-1l7y^aqtfIGb90Gv>9K0ueLpsa_9YQ z{!MqjK0$`}TkGP5GQY`^C2|Ar>dF1cyCjLOLSfMBs>^0EU!hh$1DN9UQ0(THakUDc zy;>H^ITOL(EasK`&~NAlwA(o#8cy|2Gvq@It}F@a2*-!!x<106Mrs^2X8a3{Rpq9N z)2k}z)h2P5mK(8feaTc=vl>Xuk46T*x%x0<)1xm%{%+ys3bg#FRQsLdFQty};r(Ici%q+m$_@&QF z^_?hda9^Is;bLmfdjj5@i!A}#B94n>4Pj#|JfK8UtS|1Ca^FB#52w2HJM7?v! zx6Zg#G;0uZCmQ}{K@e9xT@ZJWcLr&+E@Y-re3QcM6=QV0ccWosI?)vQ#;U)D8y%HJ z?sjgnpEx>@w>n&*m~trfRj|dIt{k9G%Yt9=->D&A^J#D9B&HI)KFzeyTmJNHt$!pM zo}^m$P5#ECYL~bdrdM^PLVezN2Qj+?_7ojrE`-pPPtmT1wS?MjS+oAV^TGLhZi(pG z4|>!}wk)1KVOEP(bV!?1-`AZ_gZoWCvV(c^Eqf_b0&r(+BtW`}DR1eZ!MTWH?Ze|K$S>6oE=TE(7M3BWj3!R_m{% zs2q;gl?o9t2=E{@RNw%Unz#>}@cqz1T!5m;KzW{-G-;XJfhP__*Q@*G-Ex?dxnV|= z!8g^&?RK~U5w{Y6vdaJ<3zJF32Yy~0LatA@x5u;U)vDJaA#M`XiXx-OFL7yRL4Gh& zwZ%ecQ&W?D5IW60KAV1Mbbh~PmMc&se9O{@kTJvfY*msh7CcMyy=B3FSVMrCI18^P zN*Sir)rJ`pq7u&ZcABqHz)7!$&)+l^f0oEt<*@*IIGIyg!|l1Oxh#P7Og=x)UPE{9m)f;pFlhx|-gzKQ<2tjCiIv!=Hb#TWJzg;?*( zVY5dX{Y}T`gauV~P|EcC7RO_lx^Xi)=XATr!NnDED7q{JMYExEkM}lv-pfvQRH16i zr6eFilLEi-Y|#~@gs?N^C|mvl2D#%i+}gZORsj9@-nxAl>&h|Xqec^f(zcvpqgd;| zBa}>HnkDTo|Kho3;{yDIOa|9bGLoK)akW{$KWNTiLa{F6($F83&F(ExMwP5qYM!Ya z6<%4EM(+C}`Nisr5tl@SxZQW6D^U6NTgXMrljB zY6ItuHXAj<`{!o;LJTSiza&~BV*INUsZ|i%)VmpIAvz!bT)_YS)jI&~FghUR6-2le z{nw4ftAV>uwzqc6hF{FFS$bzB;_0v>= zTDE7itw8azv!!GN`38Ax7HMu1fQGUQ6a7YV_qUV6t)>J`tgQZ>^#Kuhpo!D#O>f^O zWmaq=KS>k3aJDsY$0K|kA_ObteV%||7dlin?zI#R?go^3u1K5h!>BylrVbIiN) zI#!46amT^I=+Qaior1(88u!OVj$)3u@3Gg#=lk&6J2F<=yF$Wwk)JrILe?Q?qkFm7C+5P!EC z#a>BCf;s9JjxRtM^IE6Y5|Ca+hOZ_$G^>#p&0ffZn_RWqKr=!ZtL4`5oj(0il|jTQ zbIYl2Z+m|9YXh;Z$}^ccV_@}Mwlbq%w~m3BHujcPJ3Gd&=1HGQrnKlzxRVNLc}K`4 zAQ%vVxemVKFMV;919inhxB2$&>ual-Y-&*YF8H*d2YGUJ$?HMzEU^mHs5?SD?(583 z0nt=;rHHr`tnRJ%5VxS_sX(SShH|k&#bbLZH|er=vd;Z<8h)GCIMmp8#dcztT3I3& zl@RRp`0&89`_Ws`>+Pf*xaDo{()Afs*^DwLN*YfQQRuOc&j$Hr3Nbm%Qbj$OYqnqT zUUo7Zyrd;vcv8WDCivuWc%bdd2J;KTKqQ26D&+L!Y&7_{rtF=u(HDj}9C@@9cY6fd z5LC}w6&^uy5A~`51}c?W{d4`svwo&@;x%-VFQwy$&ae5%x0Hg8Kf;GK zE=(S(=MNIw5B9f8+nmynOyk|!v z3W-uqZm}MM#=&C?FVScr+pUS6kftLb#GX#u9xo^`)eQBMtlQTR0ktl+)8SmW2BrIZ zyTPtY-#o-$7BFF0ybiKD9$JGc?p^WC1D)dJHT9|xMdY4rXmR*ZN-Exji%ZoP5Ml5M z_+9$qPOW#S`);N z&xJ;tk1!pP&fCondLyBex4BQ{W*7-YHF{yv*OzRFz$><~*fnK`Jsq(-Qob=;;NFuswL+n#9l?fe`A2Ab;3YsTZ`lTH0jFJ`vRIduB|;D>0STkrff@-uiYuF8}q<%ZH-Q%J_Iz1h_~k7hs+ zX`Z$xZ*xu$$?Q?|QU?*lIh<3+E56@fI4S}-5orAqZD8j9*T7RI366v_?7s?c|MP6{ z>5~4WLgwU$*lmKSTWXCY?xzWPs1c^EPGXj!b6t@z9HW2@2`%puPem%aj*Btg&2v%_ zRw@b41Q`P%nOVNK`HEq$$;G>Y%KnPY$uhj``a|vLtNX!W^$zV@fS_*3H-{7XCUVPU z;FQeAHuJ0@dvLf;tDA7);4{Vm6&6P4#et@{$&Yx$)d@8S_qA;Y(}|MWP5Krs0#z=r zU_UtZ{5`RLimReQa%O&gXAV z6q8g^AHpuNTDli`5)hg}((U=;ZZHl19iiukd~kyW}WD1 zt*arFC2y_C>8O1&GCs>VcPJq5s!&`-sOyiXYdYZI9OApUBs}XXa_ClJYPoKp<_-;F zE)w*+&up_VR8SPMOb6Y%fd|U1-73%bG*qEu=2I2D91N4s&k5>Bde!5d&M$cL#Umg_ z9af$)o4ofX`i4ud1VWtt4*DnTzv2QwoR*k7SGtyx>EbwJW5e5%%>mEcPOY^Bi0F5ep5aruB?=*3wqeX5i&0w(&yBu<>l^my@<_Et9U-Yiqr&|VA1QEKPA zQ4sJ%?`u4s?jLwDN#|)J)LG!~(QJ4&Y%&n|ktKoj_nE<~c7gSiOeE?0k?$eCJ$Z#2 zWizN!778LLDR^+X$|#skltoyze)^A37dYJl*_6}vq*)*n!Aab^t(S2VP?eZFt45A) z%kIoZZs4IX)zffavf>1LLib$_4&lg3Q!)xD#odVbG=DHY02}wX_PRcfSX1l*#mGGy zzq(1fO~$A5mkqRTb;&({rQKd|R@<$Mu5tgKy109(88H5wnA*o?+&SqNh|vE!KM;@s zV2yALgoF8W%>JKW=RbSra_vGxmYqQTJgg6)(lv-al*KrzG98TvnmWk{g3cemvMBN_ z_e`VbSaVl9S1A0)x@a3ammWt_2lFW(M#JNrB~MOqw48yMKF}}uxF6Bp(Ryje^5VUi zmJURc%axL3V2H>QRPvIUOnk3>v3SR%JAi)Fj02hDzSUb9Hd!hchQpF43LyWiF(WUE zrDXQJ+gyXM%Q8tdV>KzGpwJlUI(_vfnpRCwEOI^sh|`1zXF<=@`&Zl*)TOGbD{WXNH)_!sN=yiOP(r!Oai@W z{qOGO%1Pa_b=v%W@eEIzUC)9+*{|5+n76bO2^l|^K=AE@ZX9hP^4aFBBHUI}^VnFS zlGj-AoYU3@8b!X5_;RHl=->}rQmn#MUn{IBcdH1}Yt_^7+<+;~bg2e=ZE!_AUoIQN zCVc9pkr=SDMFzRtAme8fea!e_w7^-LW4p$aBZ1u<y zl}Y@>TI>2~B%8k*V^sZWwebMP5Ch2a7F%733ewdhL@NaiI}a%Im>^D1wqPUFTe`5= z^)g(Q@bhp0mtFnQiQo;(=Id5#!Oqz=KwSjHPet(JIy zwL#cmyT;)+tns>2f83A<`H(tM$9L%^yzMiG`N-S1Ikn8;OA z^c(&w>u#WY`V{JMa{d|qc)NA0e3bn69Q`Ui93U#&&KXSqZEo;(L;167I%-0=@6Ae@ z&P+B0#xyhA@1hi3yTJ6?sEi+JJiHQpuRWM$VW1bq`^wymtWFHVJk?Kh(d%&uvpR4h zZev)<`Ej1&zgt&Bhrw2)!4Tl?&ZtJ4>AwRI_k3a8IXms$)6@s&Se!cr+2rREx0O0|T51a^#rDW8BBkIQ`=I+(|LTu1F3x|L>Go2axt-4EB` z*Sqm;KbE{+SMa4|(Zo`yzaO`Ep9gwkd{^4+r~r!zZhvEaN& z2sALSW^n5IKeT;yRFzxzE(j8$B1#Ad2ugQKhe(4o(kW~@1!*wol5UXh?nVje?hXNA z6VeTLZNc;D_dEBF`^UXwoHND-fxXxJuDRYhpZPq`WT(9@z5jdY_}+RpE1eBr#>>PMSz`H();A)&k9%*$Qs({U0z5Z0KRx=C zq>#1)Sy=pt4VN<=dwlcB#fR20|Ds1k8Ili)HN8_00T}+OCFsYwm(dSz21XXmP-^U6 zOnQ_#iJ;2dh-h^<(;V~NbXz0-212`7gZ_ohI^?{F@nRhx`(V%QfyLTfvJtBWSZTS$ z`*CCFe+G&8N^`Ug!C|m6$g1ODS+(z8W@ z{@YiGVly?!trxMLasEAxI`W=7+!(2HKgGXBi680}0M11ZXYh(^8)}4y#XbIfsu?{! zh=8N-X$f)UifLXPE`xQq!2{_fnrOirj^oas;@u?FaLNLfY1MV)CC8VcWP6ICj$|7h zM2|;f;G^)l-yD(OdWff6R9$UrEELaK8o~>)QX5K-e{(REsPsy=EE_A!C3cy_DX&g~ za@6UNux~*>$H-z&Cr6#VNdX!Wkfp!tNk$?CX+lH;pip2c?c~9Psqaddhj@DkX=ulk z+s{vUuKI27@!2b%v1Y!KFQTM*I8m;LF7!fJEc(e(xJn!o@#`o$mB1>E9@h#MU4lH# zik5V^563-m*pfGQPsbm9OY0mpoa@s@d)G;>FW%opsb^-e*qxpWh`K>g`t?v⁢rxTz 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Ń#5G1A`yo#HnTO_ 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 z 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 Nk<+859h;)t^dFmE_nrU% literal 0 HcmV?d00001 From b4c89f1fd3ff03e88aefac8b583e4ef445200edb Mon Sep 17 00:00:00 2001 From: Sid Mehta Date: Wed, 18 Sep 2024 02:43:10 -0700 Subject: [PATCH 10/19] Add missing utms (#268) * fixed missing utms * add utms to openai colab * added utms to langhcain colab * update llamaindex * ragas notebook utms * fixed typo * add utms to eval_hall notebook * added eval_mod metric * fixed broken link --- README.md | 4 ++-- .../docs/cookbook/evaluate_hallucination_metric.ipynb | 4 ++-- .../docs/cookbook/evaluate_moderation_metric.ipynb | 4 ++-- .../documentation/docs/cookbook/langchain.ipynb | 4 ++-- .../documentation/docs/cookbook/llama-index.ipynb | 4 ++-- .../documentation/docs/cookbook/openai.ipynb | 4 ++-- .../documentation/docs/cookbook/ragas.ipynb | 4 ++-- 7 files changed, 14 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index f22da8a610..2c98e5394c 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@

- Website β€’ + Website β€’ Slack community β€’ Twitter β€’ Documentation diff --git a/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.ipynb b/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.ipynb index 9acbde112c..d813672e94 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/evaluate_hallucination_metric.ipynb @@ -15,9 +15,9 @@ "source": [ "## Creating an account on Comet.com\n", "\n", - "[Comet](https://www.comet.com/site) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm) and grab you API Key.\n", + "[Comet](https://www.comet.com/site?from=llm&utm_source=opik&utm_medium=colab&utm_content=eval_hall) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm&utm_source=opik&utm_medium=colab&utm_content=eval_hall) and grab you API Key.\n", "\n", - "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/) for more information." + "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/?from=llm&utm_source=opik&utm_medium=colab&utm_content=eval_hall) for more information." ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.ipynb b/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.ipynb index bf3ad3214d..9f32b6ed4b 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/evaluate_moderation_metric.ipynb @@ -15,9 +15,9 @@ "source": [ "## Creating an account on Comet.com\n", "\n", - "[Comet](https://www.comet.com/site) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm) and grab you API Key.\n", + "[Comet](https://www.comet.com/site?from=llm&utm_source=opik&utm_medium=colab&utm_content=eval_mod) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm&utm_source=opik&utm_medium=colab&utm_content=eval_mod) and grab you API Key.\n", "\n", - "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/) for more information." + "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/?from=llm&utm_source=opik&utm_medium=colab&utm_content=eval_mod) for more information." ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb b/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb index 284d679ef4..9893168443 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb @@ -21,9 +21,9 @@ "source": [ "## Creating an account on Comet.com\n", "\n", - "[Comet](https://www.comet.com/site) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm) and grab you API Key.\n", + "[Comet](https://www.comet.com/site?from=llm&utm_source=opik&utm_medium=colab&utm_content=langchain) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm&utm_source=opik&utm_medium=colab&utm_content=langchain) and grab you API Key.\n", "\n", - "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/) for more information." + "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/?from=llm&utm_source=opik&utm_medium=colab&utm_content=langchain) for more information." ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb b/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb index 6b924eaa22..e5c023eeff 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb @@ -23,9 +23,9 @@ "source": [ "## Creating an account on Comet.com\n", "\n", - "[Comet](https://www.comet.com/site) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm) and grab you API Key.\n", + "[Comet](https://www.comet.com/site?from=llm&utm_source=opik&utm_medium=colab&utm_content=llamaindex) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm&utm_source=opik&utm_medium=colab&utm_content=llamaindex) and grab you API Key.\n", "\n", - "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/) for more information." + "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/?from=llm&utm_source=opik&utm_medium=colab&utm_content=llamaindex) for more information." ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb b/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb index 531fd2ef8e..86276c488a 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb @@ -15,9 +15,9 @@ "source": [ "## Creating an account on Comet.com\n", "\n", - "[Comet](https://www.comet.com/site) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm) and grab you API Key.\n", + "[Comet](https://www.comet.com/site?from=llm&utm_source=opik&utm_medium=colab&utm_content=openai) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm&utm_source=opik&utm_medium=colab&utm_content=openai) and grab you API Key.\n", "\n", - "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/) for more information." + "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/?from=llm&utm_source=opik&utm_medium=colab&utm_content=openai) for more information." ] }, { diff --git a/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb b/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb index ba9b9bff2e..dfe3cc6804 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb @@ -20,9 +20,9 @@ "source": [ "## Creating an account on Comet.com\n", "\n", - "[Comet](https://www.comet.com/site) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm) and grab you API Key.\n", + "[Comet](https://www.comet.com/site?from=llm&utm_source=opik&utm_medium=colab&utm_content=openai) provides a hosted version of the Opik platform, [simply create an account](https://www.comet.com/signup?from=llm&utm_source=opik&utm_medium=colab&utm_content=ragas) and grab you API Key.\n", "\n", - "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/) for more information." + "> You can also run the Opik platform locally, see the [installation guide](https://www.comet.com/docs/opik/self-host/overview/?from=llm&utm_source=opik&utm_medium=colab&utm_content=ragas) for more information." ] }, { From 62c00c0f5812771b438e0e25ccbe11b87b4fbd65 Mon Sep 17 00:00:00 2001 From: Andres Cruz Date: Wed, 18 Sep 2024 12:30:17 +0200 Subject: [PATCH 11/19] OPIK-72 Make experiment name optional (#267) * OPIK-72 Make experiment name optional * Rev2: fixed wrong import --- .../java/com/comet/opik/OpikApplication.java | 4 +- .../java/com/comet/opik/api/Experiment.java | 2 +- .../comet/opik/domain/ExperimentService.java | 23 +- .../com/comet/opik/domain/NameGenerator.java | 28 + .../db/NameGeneratorModule.java | 38 + .../java/com/comet/opik/utils/JsonUtils.java | 9 + .../resources/name-generator/adjectives.json | 987 ++++++++++++++ .../main/resources/name-generator/nouns.json | 1158 +++++++++++++++++ .../v1/priv/ExperimentsResourceTest.java | 17 +- 9 files changed, 2251 insertions(+), 15 deletions(-) create mode 100644 apps/opik-backend/src/main/java/com/comet/opik/domain/NameGenerator.java create mode 100644 apps/opik-backend/src/main/java/com/comet/opik/infrastructure/db/NameGeneratorModule.java create mode 100644 apps/opik-backend/src/main/resources/name-generator/adjectives.json create mode 100644 apps/opik-backend/src/main/resources/name-generator/nouns.json diff --git a/apps/opik-backend/src/main/java/com/comet/opik/OpikApplication.java b/apps/opik-backend/src/main/java/com/comet/opik/OpikApplication.java index 40248059ef..813a43fe84 100644 --- a/apps/opik-backend/src/main/java/com/comet/opik/OpikApplication.java +++ b/apps/opik-backend/src/main/java/com/comet/opik/OpikApplication.java @@ -5,6 +5,7 @@ import com.comet.opik.infrastructure.bundle.LiquibaseBundle; import com.comet.opik.infrastructure.db.DatabaseAnalyticsModule; import com.comet.opik.infrastructure.db.IdGeneratorModule; +import com.comet.opik.infrastructure.db.NameGeneratorModule; import com.comet.opik.infrastructure.redis.RedisModule; import com.comet.opik.utils.JsonBigDecimalDeserializer; import com.fasterxml.jackson.annotation.JsonInclude; @@ -58,7 +59,8 @@ public void initialize(Bootstrap bootstrap) { bootstrap.addBundle(GuiceBundle.builder() .bundles(JdbiBundle.forDatabase((conf, env) -> conf.getDatabase()) .withPlugins(new SqlObjectPlugin(), new Jackson2Plugin())) - .modules(new DatabaseAnalyticsModule(), new IdGeneratorModule(), new AuthModule(), new RedisModule()) + .modules(new DatabaseAnalyticsModule(), new IdGeneratorModule(), new AuthModule(), new RedisModule(), + new NameGeneratorModule()) .enableAutoConfig() .build()); } diff --git a/apps/opik-backend/src/main/java/com/comet/opik/api/Experiment.java b/apps/opik-backend/src/main/java/com/comet/opik/api/Experiment.java index 22319829b4..3a0da66464 100644 --- a/apps/opik-backend/src/main/java/com/comet/opik/api/Experiment.java +++ b/apps/opik-backend/src/main/java/com/comet/opik/api/Experiment.java @@ -21,7 +21,7 @@ public record Experiment( Experiment.View.Public.class, Experiment.View.Write.class}) UUID id, @JsonView({Experiment.View.Public.class, Experiment.View.Write.class}) @NotBlank String datasetName, @JsonView({Experiment.View.Public.class}) @Schema(accessMode = Schema.AccessMode.READ_ONLY) UUID datasetId, - @JsonView({Experiment.View.Public.class, Experiment.View.Write.class}) @NotBlank String name, + @JsonView({Experiment.View.Public.class, Experiment.View.Write.class}) String name, @JsonView({Experiment.View.Public.class, Experiment.View.Write.class}) JsonNode metadata, @JsonView({ Experiment.View.Public.class}) @Schema(accessMode = Schema.AccessMode.READ_ONLY) List feedbackScores, diff --git a/apps/opik-backend/src/main/java/com/comet/opik/domain/ExperimentService.java b/apps/opik-backend/src/main/java/com/comet/opik/domain/ExperimentService.java index 6cb15f7273..6576742993 100644 --- a/apps/opik-backend/src/main/java/com/comet/opik/domain/ExperimentService.java +++ b/apps/opik-backend/src/main/java/com/comet/opik/domain/ExperimentService.java @@ -14,6 +14,7 @@ import lombok.NonNull; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import reactor.core.publisher.Mono; import reactor.core.scheduler.Schedulers; @@ -31,6 +32,7 @@ public class ExperimentService { private final @NonNull ExperimentDAO experimentDAO; private final @NonNull DatasetService datasetService; private final @NonNull IdGenerator idGenerator; + private final @NonNull NameGenerator nameGenerator; public Mono find( int page, int size, @NonNull ExperimentSearchCriteria experimentSearchCriteria) { @@ -73,34 +75,35 @@ public Mono getById(@NonNull UUID id) { public Mono create(@NonNull Experiment experiment) { var id = experiment.id() == null ? idGenerator.generateId() : experiment.id(); IdGenerator.validateVersion(id, "Experiment"); + var name = StringUtils.getIfBlank(experiment.name(), nameGenerator::generateName); - return getOrCreateDataset(experiment) - .onErrorResume(e -> handleDatasetCreationError(e, experiment).map(Dataset::id)) - .flatMap(datasetId -> create(experiment, id, datasetId)) + return getOrCreateDataset(experiment.datasetName()) + .onErrorResume(e -> handleDatasetCreationError(e, experiment.datasetName()).map(Dataset::id)) + .flatMap(datasetId -> create(experiment, id, name, datasetId)) .onErrorResume(exception -> handleCreateError(exception, id)); } - private Mono getOrCreateDataset(Experiment experiment) { + private Mono getOrCreateDataset(String datasetName) { return Mono.deferContextual(ctx -> { String userName = ctx.get(RequestContext.USER_NAME); String workspaceId = ctx.get(RequestContext.WORKSPACE_ID); - return Mono.fromCallable(() -> datasetService.getOrCreate(workspaceId, experiment.datasetName(), userName)) + return Mono.fromCallable(() -> datasetService.getOrCreate(workspaceId, datasetName, userName)) .subscribeOn(Schedulers.boundedElastic()); }); } - private Mono create(Experiment experiment, UUID id, UUID datasetId) { - var newExperiment = experiment.toBuilder().id(id).datasetId(datasetId).build(); - return experimentDAO.insert(newExperiment).thenReturn(newExperiment); + private Mono create(Experiment experiment, UUID id, String name, UUID datasetId) { + experiment = experiment.toBuilder().id(id).name(name).datasetId(datasetId).build(); + return experimentDAO.insert(experiment).thenReturn(experiment); } - private Mono handleDatasetCreationError(Throwable throwable, Experiment experiment) { + private Mono handleDatasetCreationError(Throwable throwable, String datasetName) { if (throwable instanceof EntityAlreadyExistsException) { return Mono.deferContextual(ctx -> { String workspaceId = ctx.get(RequestContext.WORKSPACE_ID); - return Mono.fromCallable(() -> datasetService.findByName(workspaceId, experiment.datasetName())) + return Mono.fromCallable(() -> datasetService.findByName(workspaceId, datasetName)) .subscribeOn(Schedulers.boundedElastic()); }); } diff --git a/apps/opik-backend/src/main/java/com/comet/opik/domain/NameGenerator.java b/apps/opik-backend/src/main/java/com/comet/opik/domain/NameGenerator.java new file mode 100644 index 0000000000..3f13d31aba --- /dev/null +++ b/apps/opik-backend/src/main/java/com/comet/opik/domain/NameGenerator.java @@ -0,0 +1,28 @@ +package com.comet.opik.domain; + +import lombok.Builder; +import lombok.NonNull; + +import java.security.SecureRandom; +import java.util.List; + +@Builder +public class NameGenerator { + + private final @NonNull SecureRandom secureRandom; + + private final @NonNull List adjectives; + private final @NonNull List nouns; + + public String generateName() { + var adjective = getRandom(adjectives); + var noun = getRandom(nouns); + var number = secureRandom.nextInt(0, 10000); + return "%s_%s_%s".formatted(adjective, noun, number); + } + + private String getRandom(List strings) { + int index = secureRandom.nextInt(0, strings.size()); + return strings.get(index); + } +} diff --git a/apps/opik-backend/src/main/java/com/comet/opik/infrastructure/db/NameGeneratorModule.java b/apps/opik-backend/src/main/java/com/comet/opik/infrastructure/db/NameGeneratorModule.java new file mode 100644 index 0000000000..0fb20de797 --- /dev/null +++ b/apps/opik-backend/src/main/java/com/comet/opik/infrastructure/db/NameGeneratorModule.java @@ -0,0 +1,38 @@ +package com.comet.opik.infrastructure.db; + +import com.comet.opik.domain.NameGenerator; +import com.comet.opik.infrastructure.OpikConfiguration; +import com.comet.opik.utils.JsonUtils; +import com.fasterxml.jackson.core.type.TypeReference; +import com.google.inject.Provides; +import jakarta.inject.Singleton; +import ru.vyarus.dropwizard.guice.module.support.DropwizardAwareModule; + +import java.io.FileNotFoundException; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.util.List; + +public class NameGeneratorModule extends DropwizardAwareModule { + + private static final TypeReference> STRING_LIST_TYPE_REFERENCE = new TypeReference<>() { + }; + + @Provides + @Singleton + public NameGenerator getNameGenerator() throws FileNotFoundException, NoSuchAlgorithmException { + return NameGenerator.builder() + .secureRandom(SecureRandom.getInstanceStrong()) + .adjectives(getResource("/name-generator/adjectives.json")) + .nouns(getResource("/name-generator/nouns.json")) + .build(); + } + + private List getResource(String path) throws FileNotFoundException { + var inputStream = NameGeneratorModule.class.getResourceAsStream(path); + if (inputStream == null) { + throw new FileNotFoundException("Resource not found in path '%s'".formatted(path)); + } + return JsonUtils.readValue(inputStream, NameGeneratorModule.STRING_LIST_TYPE_REFERENCE); + } +} diff --git a/apps/opik-backend/src/main/java/com/comet/opik/utils/JsonUtils.java b/apps/opik-backend/src/main/java/com/comet/opik/utils/JsonUtils.java index cf36565de7..bb18c6b227 100644 --- a/apps/opik-backend/src/main/java/com/comet/opik/utils/JsonUtils.java +++ b/apps/opik-backend/src/main/java/com/comet/opik/utils/JsonUtils.java @@ -13,6 +13,7 @@ import java.io.ByteArrayOutputStream; import java.io.IOException; +import java.io.InputStream; import java.io.UncheckedIOException; import java.math.BigDecimal; @@ -46,6 +47,14 @@ public T readValue(@NonNull String content, @NonNull TypeReference valueT } } + public T readValue(@NonNull InputStream inputStream, @NonNull TypeReference valueTypeRef) { + try { + return MAPPER.readValue(inputStream, valueTypeRef); + } catch (IOException exception) { + throw new UncheckedIOException(exception); + } + } + public String writeValueAsString(@NonNull Object value) { try { return MAPPER.writeValueAsString(value); diff --git a/apps/opik-backend/src/main/resources/name-generator/adjectives.json b/apps/opik-backend/src/main/resources/name-generator/adjectives.json new file mode 100644 index 0000000000..50f91b09d7 --- /dev/null +++ b/apps/opik-backend/src/main/resources/name-generator/adjectives.json @@ -0,0 +1,987 @@ +[ + "able", + "above", + "absent", + "absolute", + "abstract", + "abundant", + "academic", + "acceptable", + "accepted", + "accessible", + "accurate", + "accused", + "active", + "actual", + "acute", + "added", + "additional", + "adequate", + "adjacent", + "administrative", + "adorable", + "advanced", + "adverse", + "advisory", + "aesthetic", + "aggregate", + "aggressive", + "agreeable", + "agreed", + "agricultural", + "alert", + "alive", + "alleged", + "allied", + "alone", + "alright", + "alternative", + "amateur", + "amazing", + "ambitious", + "amused", + "ancient", + "angry", + "annoyed", + "annual", + "anonymous", + "anxious", + "appalling", + "apparent", + "applicable", + "appropriate", + "arbitrary", + "architectural", + "armed", + "arrogant", + "artificial", + "artistic", + "ashamed", + "asleep", + "assistant", + "associated", + "atomic", + "automatic", + "autonomous", + "available", + "average", + "awake", + "aware", + "back", + "bad", + "balanced", + "bare", + "basic", + "beautiful", + "beneficial", + "better", + "bewildered", + "big", + "binding", + "biological", + "bitter", + "bizarre", + "blank", + "blind", + "blonde", + "blushing", + "boiling", + "bold", + "bored", + "boring", + "bottom", + "brainy", + "brave", + "breakable", + "breezy", + "brief", + "bright", + "brilliant", + "broad", + "broken", + "bumpy", + "burning", + "busy", + "calm", + "capable", + "careful", + "casual", + "causal", + "cautious", + "central", + "certain", + "changing", + "characteristic", + "charming", + "cheerful", + "chemical", + "chief", + "chilly", + "chosen", + "chronic", + "circular", + "civic", + "civil", + "civilian", + "classic", + "classical", + "clean", + "clear", + "clever", + "clinical", + "close", + "closed", + "cloudy", + "clumsy", + "coastal", + "cognitive", + "coherent", + "cold", + "collective", + "colonial", + "colorful", + "colossal", + "coloured", + "colourful", + "combined", + "comfortable", + "coming", + "commercial", + "common", + "compact", + "comparable", + "comparative", + "compatible", + "competent", + "competitive", + "complete", + "complex", + "complicated", + "comprehensive", + "conceptual", + "concerned", + "concrete", + "condemned", + "confident", + "confidential", + "confused", + "conscious", + "conservation", + "considerable", + "consistent", + "constant", + "constitutional", + "contemporary", + "content", + "continental", + "continued", + "continuing", + "continuous", + "controlled", + "controversial", + "convenient", + "conventional", + "convinced", + "convincing", + "cooing", + "cool", + "cooperative", + "corporate", + "correct", + "corresponding", + "costly", + "courageous", + "crazy", + "creative", + "critical", + "crooked", + "crowded", + "crucial", + "curious", + "current", + "daily", + "damp", + "dear", + "decent", + "decisive", + "deep", + "defensive", + "defiant", + "definite", + "deliberate", + "delicate", + "delicious", + "delighted", + "delightful", + "detailed", + "determined", + "developed", + "developing", + "devoted", + "different", + "difficult", + "digital", + "diplomatic", + "direct", + "disappointed", + "disastrous", + "disciplinary", + "distant", + "distinct", + "distinctive", + "distinguished", + "diverse", + "divine", + "dizzy", + "double", + "doubtful", + "dramatic", + "driving", + "dry", + "dual", + "due", + "dull", + "dusty", + "dutch", + "dynamic", + "eager", + "early", + "easy", + "economic", + "educational", + "eerie", + "effective", + "efficient", + "elaborate", + "elated", + "electric", + "electrical", + "electronic", + "elegant", + "eligible", + "embarrassed", + "embarrassing", + "emotional", + "empirical", + "empty", + "enchanting", + "encouraging", + "endless", + "energetic", + "enormous", + "enthusiastic", + "entire", + "entitled", + "envious", + "environmental", + "equal", + "equivalent", + "essential", + "established", + "estimated", + "ethical", + "eventual", + "everyday", + "evident", + "evolutionary", + "exact", + "excellent", + "exceptional", + "excess", + "excessive", + "excited", + "exciting", + "exclusive", + "existing", + "expected", + "expensive", + "experienced", + "experimental", + "explicit", + "extended", + "extensive", + "external", + "extra", + "extraordinary", + "extreme", + "exuberant", + "faint", + "faithful", + "familiar", + "famous", + "fancy", + "fantastic", + "far", + "fascinating", + "fashionable", + "fast", + "favourable", + "favourite", + "federal", + "fellow", + "few", + "fierce", + "final", + "financial", + "fine", + "firm", + "fiscal", + "fixed", + "flaky", + "flat", + "flexible", + "fluffy", + "fluttering", + "flying", + "following", + "fond", + "formal", + "formidable", + "forthcoming", + "fortunate", + "forward", + "frantic", + "free", + "frequent", + "fresh", + "friendly", + "frightened", + "front", + "frozen", + "full", + "fun", + "functional", + "fundamental", + "funny", + "furious", + "future", + "fuzzy", + "general", + "generous", + "genetic", + "gentle", + "genuine", + "geographical", + "giant", + "gigantic", + "given", + "glad", + "glamorous", + "gleaming", + "global", + "glorious", + "golden", + "good", + "gorgeous", + "gothic", + "governing", + "graceful", + "gradual", + "grand", + "grateful", + "greasy", + "great", + "grim", + "growing", + "grubby", + "grumpy", + "happy", + "harsh", + "head", + "healthy", + "heavy", + "helpful", + "helpless", + "hidden", + "hilarious", + "hissing", + "historic", + "historical", + "hollow", + "holy", + "honest", + "horizontal", + "huge", + "human", + "hungry", + "hurt", + "hushed", + "icy", + "ideal", + "identical", + "ideological", + "ill", + "imaginative", + "immediate", + "immense", + "imperial", + "implicit", + "important", + "impossible", + "impressed", + "impressive", + "improved", + "inclined", + "increased", + "increasing", + "incredible", + "independent", + "indirect", + "individual", + "industrial", + "inevitable", + "influential", + "informal", + "inherent", + "initial", + "injured", + "inland", + "inner", + "innocent", + "innovative", + "inquisitive", + "instant", + "institutional", + "intact", + "integral", + "integrated", + "intellectual", + "intelligent", + "intense", + "intensive", + "interested", + "interesting", + "interim", + "interior", + "intermediate", + "internal", + "international", + "invisible", + "involved", + "irrelevant", + "isolated", + "itchy", + "jittery", + "joint", + "jolly", + "joyous", + "judicial", + "just", + "keen", + "key", + "kind", + "known", + "labour", + "large", + "late", + "lazy", + "leading", + "left", + "legal", + "legislative", + "legitimate", + "lengthy", + "level", + "lexical", + "light", + "like", + "likely", + "limited", + "linear", + "linguistic", + "liquid", + "literary", + "little", + "live", + "lively", + "living", + "local", + "logical", + "lonely", + "long", + "loose", + "lost", + "loud", + "lovely", + "loyal", + "ltd", + "lucky", + "magic", + "magnetic", + "magnificent", + "main", + "major", + "mammoth", + "managerial", + "managing", + "manual", + "many", + "marine", + "marked", + "marvellous", + "massive", + "mathematical", + "maximum", + "mean", + "meaningful", + "mechanical", + "medical", + "medieval", + "melodic", + "melted", + "mighty", + "mild", + "miniature", + "minimal", + "minimum", + "misty", + "mobile", + "modern", + "modest", + "molecular", + "monetary", + "monthly", + "moral", + "motionless", + "muddy", + "multiple", + "mushy", + "musical", + "mute", + "mutual", + "mysterious", + "narrow", + "national", + "native", + "natural", + "naval", + "near", + "nearby", + "neat", + "necessary", + "neighbouring", + "nervous", + "net", + "neutral", + "new", + "nice", + "noble", + "noisy", + "normal", + "northern", + "nosy", + "notable", + "novel", + "numerous", + "nursing", + "nutritious", + "objective", + "obliged", + "obnoxious", + "obvious", + "occasional", + "occupational", + "odd", + "official", + "ok", + "okay", + "olympic", + "only", + "open", + "operational", + "opposite", + "optimistic", + "ordinary", + "organic", + "organisational", + "original", + "other", + "outdoor", + "outer", + "outrageous", + "outside", + "outstanding", + "overall", + "overseas", + "overwhelming", + "panicky", + "parallel", + "parental", + "parliamentary", + "partial", + "particular", + "passing", + "passive", + "past", + "patient", + "payable", + "peaceful", + "peculiar", + "perfect", + "permanent", + "persistent", + "personal", + "petite", + "philosophical", + "physical", + "plain", + "planned", + "plastic", + "pleasant", + "pleased", + "poised", + "polite", + "popular", + "positive", + "possible", + "potential", + "powerful", + "practical", + "precious", + "precise", + "preferred", + "preliminary", + "premier", + "prepared", + "present", + "presidential", + "previous", + "prickly", + "primary", + "prime", + "principal", + "printed", + "prior", + "probable", + "productive", + "professional", + "profitable", + "profound", + "prominent", + "promising", + "proper", + "proposed", + "prospective", + "protective", + "provincial", + "public", + "puzzled", + "quaint", + "qualified", + "quick", + "quickest", + "quiet", + "rainy", + "random", + "rapid", + "rare", + "raspy", + "rational", + "ready", + "real", + "realistic", + "rear", + "reasonable", + "recent", + "reduced", + "redundant", + "regional", + "registered", + "regular", + "regulatory", + "related", + "relative", + "relaxed", + "relevant", + "reliable", + "relieved", + "reluctant", + "remaining", + "remarkable", + "remote", + "renewed", + "representative", + "required", + "resident", + "residential", + "resonant", + "respectable", + "respective", + "responsible", + "resulting", + "retail", + "right", + "rising", + "robust", + "rolling", + "round", + "royal", + "rubber", + "running", + "safe", + "salty", + "scared", + "scattered", + "scientific", + "secondary", + "secret", + "secure", + "select", + "selected", + "selective", + "semantic", + "sensible", + "sensitive", + "separate", + "serious", + "severe", + "shaky", + "shallow", + "shared", + "sharp", + "sheer", + "shiny", + "shivering", + "shocked", + "short", + "shy", + "significant", + "silent", + "silky", + "silly", + "similar", + "simple", + "single", + "skilled", + "sleepy", + "slight", + "slim", + "slimy", + "slippery", + "slow", + "small", + "smart", + "smiling", + "smoggy", + "smooth", + "social", + "soft", + "solar", + "sole", + "solid", + "sophisticated", + "sore", + "sorry", + "sound", + "sour", + "spare", + "sparkling", + "spatial", + "special", + "specific", + "specified", + "spectacular", + "spicy", + "spiritual", + "splendid", + "spontaneous", + "sporting", + "spotless", + "spotty", + "square", + "stable", + "stale", + "standard", + "static", + "statistical", + "statutory", + "steady", + "steep", + "sticky", + "stiff", + "still", + "stingy", + "stormy", + "straight", + "straightforward", + "strange", + "strategic", + "strict", + "striking", + "striped", + "strong", + "structural", + "stuck", + "subjective", + "subsequent", + "substantial", + "subtle", + "successful", + "successive", + "sudden", + "sufficient", + "suitable", + "sunny", + "super", + "superb", + "superior", + "supporting", + "supposed", + "supreme", + "sure", + "surprised", + "surprising", + "surrounding", + "surviving", + "suspicious", + "sweet", + "swift", + "symbolic", + "sympathetic", + "systematic", + "tall", + "tame", + "tart", + "technical", + "technological", + "temporary", + "tender", + "tense", + "territorial", + "theoretical", + "thirsty", + "thorough", + "thoughtful", + "thoughtless", + "thundering", + "tight", + "tired", + "top", + "total", + "tough", + "tragic", + "tremendous", + "tricky", + "tropical", + "typical", + "ultimate", + "uncertain", + "unchanged", + "uncomfortable", + "unconscious", + "underground", + "underlying", + "uneven", + "unexpected", + "uniform", + "uninterested", + "unique", + "united", + "universal", + "unknown", + "unlikely", + "unnecessary", + "unusual", + "unwilling", + "upset", + "urgent", + "useful", + "usual", + "vague", + "valid", + "valuable", + "variable", + "varied", + "various", + "varying", + "vast", + "verbal", + "vertical", + "very", + "victorious", + "visible", + "visiting", + "visual", + "vital", + "vocational", + "voluntary", + "wandering", + "warm", + "wasteful", + "watery", + "weekly", + "welcome", + "well", + "wet", + "whispering", + "whole", + "widespread", + "wild", + "willing", + "wise", + "witty", + "wonderful", + "wooden", + "working", + "worldwide", + "worried", + "worrying", + "worthwhile", + "worthy", + "written", + "wrong", + "yummy", + "zany", + "zealous", + "amaranth", + "amber", + "amethyst", + "apricot", + "aqua", + "aquamarine", + "azure", + "beige", + "black", + "blue", + "blush", + "bronze", + "brown", + "chocolate", + "coffee", + "copper", + "coral", + "crimson", + "cyan", + "emerald", + "fuchsia", + "gold", + "gray", + "green", + "indigo", + "ivory", + "jade", + "lavender", + "lime", + "magenta", + "maroon", + "moccasin", + "olive", + "orange", + "peach", + "pink", + "plum", + "purple", + "red", + "rose", + "salmon", + "sapphire", + "scarlet", + "silver", + "tan", + "teal", + "tomato", + "turquoise", + "violet", + "white", + "yellow" +] diff --git a/apps/opik-backend/src/main/resources/name-generator/nouns.json b/apps/opik-backend/src/main/resources/name-generator/nouns.json new file mode 100644 index 0000000000..e79e24d9aa --- /dev/null +++ b/apps/opik-backend/src/main/resources/name-generator/nouns.json @@ -0,0 +1,1158 @@ +[ + "aardvark", + "aardwolf", + "albatross", + "alligator", + "alpaca", + "amphibian", + "anaconda", + "angelfish", + "anglerfish", + "ant", + "anteater", + "antelope", + "antlion", + "ape", + "aphid", + "armadillo", + "asp", + "baboon", + "badger", + "bandicoot", + "barnacle", + "barracuda", + "basilisk", + "bass", + "bat", + "bear", + "beaver", + "bedbug", + "bee", + "beetle", + "bird", + "bison", + "blackbird", + "boa", + "boar", + "bobcat", + "bobolink", + "bonobo", + "booby", + "bovid", + "bug", + "butterfly", + "buzzard", + "camel", + "canid", + "canidae", + "capybara", + "cardinal", + "caribou", + "carp", + "cat", + "caterpillar", + "catfish", + "catshark", + "cattle", + "centipede", + "cephalopod", + "chameleon", + "cheetah", + "chickadee", + "chicken", + "chimpanzee", + "chinchilla", + "chipmunk", + "cicada", + "clam", + "clownfish", + "cobra", + "cockroach", + "cod", + "condor", + "constrictor", + "coral", + "cougar", + "cow", + "coyote", + "crab", + "crane", + "crawdad", + "crayfish", + "cricket", + "crocodile", + "crow", + "cuckoo", + "damselfly", + "deer", + "dingo", + "dinosaur", + "dog", + "dolphin", + "donkey", + "dormouse", + "dove", + "dragon", + "dragonfly", + "duck", + "eagle", + "earthworm", + "earwig", + "echidna", + "eel", + "egret", + "elephant", + "elk", + "emu", + "ermine", + "falcon", + "felidae", + "ferret", + "finch", + "firefly", + "fish", + "flamingo", + "flea", + "fly", + "flyingfish", + "fowl", + "fox", + "frog", + "galliform", + "gamefowl", + "gayal", + "gazelle", + "gecko", + "gerbil", + "gibbon", + "giraffe", + "goat", + "goldfish", + "goose", + "gopher", + "gorilla", + "grasshopper", + "grouse", + "guan", + "guanaco", + "guineafowl", + "gull", + "guppy", + "haddock", + "halibut", + "hamster", + "hare", + "harrier", + "hawk", + "hedgehog", + "heron", + "herring", + "hippopotamus", + "hookworm", + "hornet", + "horse", + "hoverfly", + "hummingbird", + "hyena", + "iguana", + "impala", + "jackal", + "jaguar", + "jay", + "jellyfish", + "junglefowl", + "kangaroo", + "kingfisher", + "kite", + "kiwi", + "koala", + "koi", + "krill", + "ladybug", + "lamprey", + "landfowl", + "lark", + "leech", + "lemming", + "lemur", + "leopard", + "leopon", + "limpet", + "lion", + "lizard", + "llama", + "lobster", + "locust", + "loon", + "louse", + "lungfish", + "lynx", + "macaw", + "mackerel", + "magpie", + "mammal", + "manatee", + "mandrill", + "marlin", + "marmoset", + "marmot", + "marsupial", + "marten", + "mastodon", + "meadowlark", + "meerkat", + "mink", + "minnow", + "mite", + "mockingbird", + "mole", + "mollusk", + "mongoose", + "monkey", + "moose", + "mosquito", + "moth", + "mouse", + "mule", + "muskox", + "narwhal", + "newt", + "nightingale", + "ocelot", + "octopus", + "opossum", + "orangutan", + "orca", + "ostrich", + "otter", + "owl", + "ox", + "panda", + "panther", + "parakeet", + "parrot", + "parrotfish", + "partridge", + "peacock", + "peafowl", + "pelican", + "penguin", + "perch", + "pheasant", + "pig", + "pigeon", + "pike", + "pinniped", + "piranha", + "planarian", + "platypus", + "pony", + "porcupine", + "porpoise", + "possum", + "prawn", + "primate", + "ptarmigan", + "puffin", + "puma", + "python", + "quail", + "quelea", + "quokka", + "rabbit", + "raccoon", + "rat", + "rattlesnake", + "raven", + "reindeer", + "reptile", + "rhinoceros", + "roadrunner", + "rodent", + "rook", + "rooster", + "roundworm", + "sailfish", + "salamander", + "salmon", + "sawfish", + "scallop", + "scorpion", + "seahorse", + "shark", + "sheep", + "shrew", + "shrimp", + "silkworm", + "silverfish", + "skink", + "skunk", + "sloth", + "slug", + "smelt", + "snail", + "snake", + "snipe", + "sole", + "sparrow", + "spider", + "spoonbill", + "squid", + "squirrel", + "starfish", + "stingray", + "stoat", + "stork", + "sturgeon", + "swallow", + "swan", + "swift", + "swordfish", + "swordtail", + "tahr", + "takin", + "tapir", + "tarantula", + "tarsier", + "termite", + "tern", + "thrush", + "tick", + "tiger", + "tiglon", + "toad", + "tortoise", + "toucan", + "trout", + "tuna", + "turkey", + "turtle", + "tyrannosaurus", + "unicorn", + "urial", + "vicuna", + "viper", + "vole", + "vulture", + "wallaby", + "walrus", + "warbler", + "wasp", + "weasel", + "whale", + "whippet", + "whitefish", + "wildcat", + "wildebeest", + "wildfowl", + "wolf", + "wolverine", + "wombat", + "woodpecker", + "worm", + "wren", + "xerinae", + "yak", + "zebra", + "apple", + "apricot", + "avocado", + "banana", + "bilberry", + "blackberry", + "blackcurrant", + "blueberry", + "boysenberry", + "currant", + "cherry", + "cherimoya", + "cloudberry", + "coconut", + "cranberry", + "cucumber", + "damson", + "date", + "dragonfruit", + "durian", + "elderberry", + "feijoa", + "fig", + "gooseberry", + "grape", + "raisin", + "grapefruit", + "guava", + "honeyberry", + "huckleberry", + "jabuticaba", + "jackfruit", + "jambul", + "jujube", + "kiwano", + "kiwifruit", + "kumquat", + "lemon", + "lime", + "loquat", + "longan", + "lychee", + "mango", + "mangosteen", + "marionberry", + "melon", + "cantaloupe", + "honeydew", + "watermelon", + "mulberry", + "nectarine", + "nance", + "olive", + "orange", + "clementine", + "mandarine", + "tangerine", + "papaya", + "passionfruit", + "peach", + "pear", + "persimmon", + "physalis", + "plantain", + "plum", + "prune", + "pineapple", + "plumcot", + "pomegranate", + "pomelo", + "quince", + "raspberry", + "salmonberry", + "rambutan", + "redcurrant", + "salak", + "satsuma", + "soursop", + "strawberry", + "tamarillo", + "tamarind", + "yuzu", + "abbey", + "airport", + "arch", + "arena", + "armory", + "bakery", + "bank", + "barn", + "barracks", + "bridge", + "bunker", + "cabana", + "cafe", + "capitol", + "cathedral", + "chalet", + "chapel", + "chateau", + "church", + "cinema", + "cottage", + "crypt", + "depot", + "dome", + "dormitory", + "duplex", + "embassy", + "factory", + "fort", + "fortress", + "foundry", + "gallery", + "garage", + "gazebo", + "hall", + "hangar", + "hospital", + "hostel", + "hotel", + "jail", + "kiosk", + "laboratory", + "library", + "lighthouse", + "lodge", + "mall", + "manor", + "marina", + "market", + "mill", + "monastery", + "monument", + "mosque", + "motel", + "museum", + "observatory", + "pagoda", + "palace", + "pavilion", + "plant", + "prison", + "rectory", + "refinery", + "restaurant", + "school", + "shed", + "shrine", + "silo", + "skyscraper", + "spire", + "stable", + "stadium", + "station", + "store", + "temple", + "terminal", + "theater", + "tower", + "triplex", + "university", + "vault", + "amberjack", + "anchovy", + "angler", + "ayu", + "barbel", + "barracuda", + "bass", + "betta", + "blowfish", + "bocaccio", + "burbot", + "carp", + "cobbler", + "cod", + "eel", + "flounder", + "grouper", + "haddock", + "halibut", + "herring", + "mackerel", + "marlin", + "mullet", + "perch", + "pollock", + "salmon", + "sardine", + "scallop", + "shark", + "snapper", + "sole", + "tilapia", + "trout", + "tuna", + "acorn", + "alfalfa", + "bamboo", + "bark", + "bean", + "berry", + "blade", + "brush", + "bud", + "bulb", + "bush", + "cactus", + "clover", + "cork", + "corolla", + "fern", + "flora", + "flower", + "forest", + "fruit", + "garden", + "grain", + "grass", + "grove", + "herb", + "ivy", + "jungle", + "juniper", + "kelp", + "kudzu", + "leaf", + "lily", + "moss", + "nectar", + "nut", + "palm", + "petal", + "pollen", + "resin", + "root", + "sage", + "sap", + "seed", + "shrub", + "spore", + "stalk", + "spine", + "sprout", + "stem", + "thorn", + "tree", + "trunk", + "twig", + "vine", + "weed", + "wood", + "aroma", + "bagel", + "batter", + "beans", + "beer", + "biscuit", + "bread", + "broth", + "burger", + "butter", + "cake", + "candy", + "caramel", + "caviar", + "cheese", + "chili", + "chocolate", + "cider", + "cocoa", + "coffee", + "cookie", + "cream", + "croissant", + "crumble", + "cuisine", + "curd", + "dessert", + "dish", + "drink", + "eggs", + "entree", + "filet", + "fish", + "flour", + "food", + "glaze", + "grill", + "hamburger", + "ice", + "juice", + "ketchup", + "kitchen", + "lard", + "margarine", + "marinade", + "mayo", + "mayonnaise", + "meat", + "milk", + "mousse", + "muffin", + "mushroom", + "noodle", + "nut", + "oil", + "olive", + "omelette", + "pan", + "pasta", + "paste", + "pastry", + "pie", + "pizza", + "plate", + "pot", + "poutine", + "pudding", + "raclette", + "recipe", + "rice", + "salad", + "salsa", + "sandwich", + "sauce", + "seasoning", + "skillet", + "soda", + "soup", + "soy", + "spice", + "steak", + "stew", + "syrup", + "tartar", + "taste", + "tea", + "toast", + "vinegar", + "waffle", + "water", + "wheat", + "wine", + "wok", + "yeast", + "yogurt", + "account", + "accrual", + "actuary", + "annuity", + "appreciation", + "asset", + "auditor", + "balance", + "basis", + "bond", + "book", + "budget", + "buyout", + "callable", + "capital", + "cash", + "change", + "collateral", + "contingency", + "contract", + "cost", + "cycle", + "debt", + "dividend", + "expenditure", + "expense", + "flow", + "gain", + "interest", + "inventory", + "lease", + "ledger", + "liability", + "loan", + "paper", + "plan", + "price", + "report", + "shares", + "statement", + "stock", + "trust", + "arcade", + "arch", + "archway", + "balcony", + "baluster", + "balustrade", + "belvedere", + "brace", + "bracket", + "colonnade", + "column", + "cornice", + "courtyard", + "cupola", + "facade", + "frieze", + "gallerie", + "molding", + "panel", + "parapet", + "patio", + "pavilion", + "pediment", + "pergola", + "pilaster", + "portico", + "projection", + "roundel", + "setback", + "spire", + "terrace", + "tower", + "truss", + "turret", + "veranda", + "brightness", + "conduction", + "convection", + "core", + "density", + "dust", + "electron", + "energy", + "envelope", + "flux", + "fusion", + "gravity", + "hadron", + "halo", + "lepton", + "luminosity", + "magnitude", + "neutrino", + "neutron", + "nucleus", + "omega", + "opacity", + "parallax", + "photometry", + "photon", + "proton", + "pulsar", + "quasar", + "radian", + "radius", + "redshift", + "relativity", + "singularity", + "supernova", + "cabriolet", + "car", + "convertible", + "coupe", + "dragster", + "hatchback", + "hearse", + "hotrod", + "humvee", + "hybrid", + "jeep", + "landaulet", + "limo", + "limousine", + "minivan", + "roadster", + "sedan", + "subcompact", + "suv", + "taxi", + "truck", + "van", + "wagon", + "acre", + "adapter", + "adhesive", + "aerator", + "aggregate", + "airway", + "ampere", + "apron", + "arbor", + "asphalt", + "balustrade", + "beam", + "berm", + "bevel", + "biscuit", + "blend", + "board", + "bow", + "bracket", + "brad", + "breezeway", + "buck", + "bulldozer", + "burl", + "cabinet", + "cap", + "casing", + "caulk", + "cellulose", + "cement", + "centerline", + "chamfer", + "circuit", + "clearance", + "column", + "concrete", + "condensation", + "conduit", + "core", + "cornice", + "course", + "cricket", + "damper", + "darby", + "datum", + "detail", + "dowel", + "drip", + "drywall", + "easement", + "eaves", + "elbow", + "enamel", + "fall", + "fascia", + "faucet", + "filler", + "firestop", + "fitting", + "fixture", + "flagstone", + "flashing", + "flitch", + "flue", + "footing", + "frame", + "fuse", + "gable", + "gauge", + "girder", + "glazing", + "gloss", + "grade", + "grain", + "granite", + "gravel", + "groove", + "grout", + "gum", + "gusset", + "hearth", + "heel", + "hip", + "inlay", + "insulation", + "jamb", + "jig", + "jigsaw", + "joint", + "joist", + "kerf", + "knot", + "lacquer", + "laminate", + "landing", + "lath", + "layout", + "level", + "light", + "limestone", + "lintel", + "louver", + "lumber", + "lumen", + "mantel", + "marble", + "mason", + "mastic", + "miter", + "molding", + "mullion", + "muntin", + "nailer", + "newel", + "nosing", + "notch", + "offset", + "paint", + "panel", + "partition", + "patio", + "pedestal", + "penny", + "pergola", + "pier", + "pigment", + "pilaster", + "piles", + "pitch", + "plank", + "plaster", + "plate", + "ply", + "plywood", + "porch", + "post", + "preservative", + "primer", + "pumice", + "purlin", + "putty", + "radial", + "radon", + "rafter", + "rake", + "rasp", + "ravvet", + "resin", + "reveal", + "ribbon", + "ridge", + "rise", + "riser", + "roof", + "rosin", + "rout", + "router", + "rubble", + "run", + "runoff", + "saddle", + "sanding", + "sandstone", + "sap", + "sapwood", + "sash", + "scaffold", + "scarfing", + "screed", + "sealer", + "section", + "setback", + "shim", + "siding", + "sill", + "slab", + "slate", + "sleeper", + "slope", + "soil", + "soldier", + "solvent", + "span", + "spline", + "square", + "stain", + "story", + "strata", + "stucco", + "stud", + "subdivision", + "subfloor", + "sump", + "survey", + "swale", + "taper", + "taping", + "template", + "thinner", + "threshold", + "tint", + "title", + "tongue", + "transom", + "trap", + "tread", + "trellis", + "trim", + "truss", + "turpentine", + "valance", + "valley", + "canity", + "varnish", + "vehicle", + "veneer", + "volt", + "warp", + "watt", + "wattage", + "wax", + "banquette", + "bench", + "chair", + "chaise", + "couch", + "futon", + "loveseat", + "ottoman", + "pouf", + "sectional", + "settee", + "sofa", + "stool", + "altitude", + "archipelago", + "area", + "atlas", + "atoll", + "azimuth", + "bay", + "border", + "butte", + "canal", + "canyon", + "cape", + "capital", + "cave", + "channel", + "chart", + "city", + "cliff", + "compass", + "continent", + "contour", + "country", + "cove", + "degree", + "delta", + "desert", + "dune", + "east", + "elevation", + "equator", + "estuary", + "fjord", + "geyser", + "glacier", + "globe", + "gulf", + "hill", + "island", + "key", + "lagoon", + "lake", + "land", + "landform", + "latitude", + "legend", + "longitude", + "map", + "marsh", + "meridian", + "mesa", + "mountain", + "nation", + "north", + "oasis", + "ocean", + "parallel", + "peak", + "peninsula", + "plain", + "plateau", + "pole", + "pond", + "prairie", + "projection", + "range", + "reef", + "region", + "reservoir", + "river", + "scale", + "sea", + "sound", + "source", + "south", + "strait", + "swamp", + "tributary", + "tropics", + "tundra", + "valley", + "volcano", + "waterfall", + "west", + "wetland", + "world" +] diff --git a/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/priv/ExperimentsResourceTest.java b/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/priv/ExperimentsResourceTest.java index 2beeb2df2b..3b4e852e8b 100644 --- a/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/priv/ExperimentsResourceTest.java +++ b/apps/opik-backend/src/test/java/com/comet/opik/api/resources/v1/priv/ExperimentsResourceTest.java @@ -30,6 +30,7 @@ import jakarta.ws.rs.client.Entity; import jakarta.ws.rs.core.HttpHeaders; import org.apache.commons.lang3.RandomStringUtils; +import org.apache.commons.lang3.StringUtils; import org.assertj.core.api.recursive.comparison.RecursiveComparisonConfiguration; import org.jdbi.v3.core.Jdbi; import org.jetbrains.annotations.NotNull; @@ -44,6 +45,8 @@ import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; +import org.junit.jupiter.params.provider.NullAndEmptySource; +import org.junit.jupiter.params.provider.ValueSource; import org.testcontainers.containers.ClickHouseContainer; import org.testcontainers.containers.MySQLContainer; import org.testcontainers.junit.jupiter.Testcontainers; @@ -90,7 +93,7 @@ class ExperimentsResourceTest { private static final String API_KEY = UUID.randomUUID().toString(); private static final String[] EXPERIMENT_IGNORED_FIELDS = new String[]{ - "id", "datasetId", "feedbackScores", "traceCount", "createdAt", "lastUpdatedAt", "createdBy", + "id", "datasetId", "name", "feedbackScores", "traceCount", "createdAt", "lastUpdatedAt", "createdBy", "lastUpdatedBy"}; public static final String[] IGNORED_FIELDS = {"input", "output", "feedbackScores", "createdAt", "lastUpdatedAt", "createdBy", "lastUpdatedBy"}; @@ -1246,11 +1249,14 @@ void createAndGetFeedbackAvg() { .isEqualTo(expectedScores); } - @Test - void createWithoutOptionalFieldsAndGet() { + @ParameterizedTest + @NullAndEmptySource + @ValueSource(strings = {" "}) + void createWithoutOptionalFieldsAndGet(String name) { var expectedExperiment = podamFactory.manufacturePojo(Experiment.class) .toBuilder() .id(null) + .name(name) .metadata(null) .build(); var expectedId = createAndAssert(expectedExperiment, API_KEY, TEST_WORKSPACE); @@ -1592,6 +1598,11 @@ private void assertIgnoredFields( } else { assertThat(actualExperiment.datasetId()).isNotNull(); } + if (StringUtils.isNotBlank(expectedExperiment.name())) { + assertThat(actualExperiment.name()).isEqualTo(expectedExperiment.name()); + } else { + assertThat(actualExperiment.name()).matches("[a-zA-Z]+_[a-zA-Z]+_\\d+"); + } assertThat(actualExperiment.traceCount()).isNotNull(); assertThat(actualExperiment.createdAt()).isAfter(expectedExperiment.createdAt()); From b99f7d1119b3b6e6bda8cbf75dcf1777a7628fef Mon Sep 17 00:00:00 2001 From: "andrii.dudar" Date: Wed, 18 Sep 2024 12:31:27 +0200 Subject: [PATCH 12/19] [OPIK-24] [UX improvements] Delete button in Actions menu when selecting multiple traces (#274) --- ...> useExperimentItemBatchDeleteMutation.ts} | 8 +-- .../api/traces/useTraceBatchDeleteMutation.ts | 52 +++++++++++++++++++ .../CompareExperimentsViewer.tsx | 43 ++++++++------- .../pages/TracesPage/TracesActionsButton.tsx | 50 +++++++++++++++--- .../pages/TracesPage/TracesPage.tsx | 6 ++- .../src/components/shared/NoData/NoData.tsx | 10 +++- 6 files changed, 138 insertions(+), 31 deletions(-) rename apps/opik-frontend/src/api/datasets/{useExperimentItemDeleteMutation.ts => useExperimentItemBatchDeleteMutation.ts} (80%) create mode 100644 apps/opik-frontend/src/api/traces/useTraceBatchDeleteMutation.ts diff --git a/apps/opik-frontend/src/api/datasets/useExperimentItemDeleteMutation.ts b/apps/opik-frontend/src/api/datasets/useExperimentItemBatchDeleteMutation.ts similarity index 80% rename from apps/opik-frontend/src/api/datasets/useExperimentItemDeleteMutation.ts rename to apps/opik-frontend/src/api/datasets/useExperimentItemBatchDeleteMutation.ts index 005707999c..ba74cea255 100644 --- a/apps/opik-frontend/src/api/datasets/useExperimentItemDeleteMutation.ts +++ b/apps/opik-frontend/src/api/datasets/useExperimentItemBatchDeleteMutation.ts @@ -3,16 +3,16 @@ import get from "lodash/get"; import { useToast } from "@/components/ui/use-toast"; import api, { EXPERIMENTS_REST_ENDPOINT } from "@/api/api"; -type UseExperimentItemDeleteMutationParams = { +type UseExperimentItemBatchDeleteMutationParams = { ids: string[]; }; -const useExperimentItemDeleteMutation = () => { +const useExperimentItemBatchDeleteMutation = () => { const queryClient = useQueryClient(); const { toast } = useToast(); return useMutation({ - mutationFn: async ({ ids }: UseExperimentItemDeleteMutationParams) => { + mutationFn: async ({ ids }: UseExperimentItemBatchDeleteMutationParams) => { const { data } = await api.post( `${EXPERIMENTS_REST_ENDPOINT}items/delete`, { @@ -44,4 +44,4 @@ const useExperimentItemDeleteMutation = () => { }); }; -export default useExperimentItemDeleteMutation; +export default useExperimentItemBatchDeleteMutation; diff --git a/apps/opik-frontend/src/api/traces/useTraceBatchDeleteMutation.ts b/apps/opik-frontend/src/api/traces/useTraceBatchDeleteMutation.ts new file mode 100644 index 0000000000..931f1fd42a --- /dev/null +++ b/apps/opik-frontend/src/api/traces/useTraceBatchDeleteMutation.ts @@ -0,0 +1,52 @@ +import { useMutation, useQueryClient } from "@tanstack/react-query"; +import get from "lodash/get"; +import { useToast } from "@/components/ui/use-toast"; +import api, { TRACES_REST_ENDPOINT } from "@/api/api"; + +type UseTraceBatchDeleteMutationParams = { + ids: string[]; + projectId: string; +}; + +const useTracesBatchDeleteMutation = () => { + const queryClient = useQueryClient(); + const { toast } = useToast(); + + return useMutation({ + mutationFn: async ({ ids }: UseTraceBatchDeleteMutationParams) => { + const { data } = await api.post(`${TRACES_REST_ENDPOINT}delete`, { + ids: ids, + }); + return data; + }, + onError: (error) => { + const message = get( + error, + ["response", "data", "message"], + error.message, + ); + + toast({ + title: "Error", + description: message, + variant: "destructive", + }); + }, + onSettled: (data, error, variables) => { + queryClient.invalidateQueries({ + queryKey: ["spans", { projectId: variables.projectId }], + }); + queryClient.invalidateQueries({ queryKey: ["compare-experiments"] }); + queryClient.invalidateQueries({ + queryKey: [ + "traces", + { + projectId: variables.projectId, + }, + ], + }); + }, + }); +}; + +export default useTracesBatchDeleteMutation; diff --git a/apps/opik-frontend/src/components/pages/CompareExperimentsPage/CompareExperimentsPanel/CompareExperimentsViewer.tsx b/apps/opik-frontend/src/components/pages/CompareExperimentsPage/CompareExperimentsPanel/CompareExperimentsViewer.tsx index ba257a2c3c..0ae22dc926 100644 --- a/apps/opik-frontend/src/components/pages/CompareExperimentsPage/CompareExperimentsPanel/CompareExperimentsViewer.tsx +++ b/apps/opik-frontend/src/components/pages/CompareExperimentsPage/CompareExperimentsPanel/CompareExperimentsViewer.tsx @@ -22,6 +22,7 @@ type CompareExperimentsViewerProps = { const CompareExperimentsViewer: React.FunctionComponent< CompareExperimentsViewerProps > = ({ experimentItem, openTrace }) => { + const isTraceExist = traceExist(experimentItem); const experimentId = experimentItem.experiment_id; const { data } = useExperimentById( { @@ -47,11 +48,12 @@ const CompareExperimentsViewer: React.FunctionComponent< }; const renderContent = () => { - if (!traceExist(experimentItem)) { + if (!isTraceExist) { return ( ); } @@ -64,28 +66,33 @@ const CompareExperimentsViewer: React.FunctionComponent< }; return ( -

+

Output: {name}

- - - -
-
- + {isTraceExist && ( + + + + )}
+ {isTraceExist && ( +
+ +
+ )} + {renderContent()}
); diff --git a/apps/opik-frontend/src/components/pages/TracesPage/TracesActionsButton.tsx b/apps/opik-frontend/src/components/pages/TracesPage/TracesActionsButton.tsx index 0c43ed51d7..08f4948f5e 100644 --- a/apps/opik-frontend/src/components/pages/TracesPage/TracesActionsButton.tsx +++ b/apps/opik-frontend/src/components/pages/TracesPage/TracesActionsButton.tsx @@ -1,4 +1,6 @@ -import React, { useRef, useState } from "react"; +import React, { useCallback, useRef, useState } from "react"; +import { Database, Trash } from "lucide-react"; + import { DropdownMenu, DropdownMenuContent, @@ -7,26 +9,49 @@ import { } from "@/components/ui/dropdown-menu"; import { Button } from "@/components/ui/button"; import { Span, Trace } from "@/types/traces"; +import { TRACE_DATA_TYPE } from "@/hooks/useTracesOrSpansList"; import AddToDatasetDialog from "@/components/pages/TracesPage/AddToDataset/AddToDatasetDialog"; -import { Database } from "lucide-react"; +import ConfirmDialog from "@/components/shared/ConfirmDialog/ConfirmDialog"; +import useTracesBatchDeleteMutation from "@/api/traces/useTraceBatchDeleteMutation"; type TracesActionsButtonProps = { + type: TRACE_DATA_TYPE; rows: Array; + projectId: string; }; const TracesActionsButton: React.FunctionComponent< TracesActionsButtonProps -> = ({ rows }) => { +> = ({ rows, type, projectId }) => { const resetKeyRef = useRef(0); - const [open, setOpen] = useState(false); + const [open, setOpen] = useState(false); + + const tracesBatchDeleteMutation = useTracesBatchDeleteMutation(); + + const deleteTraces = useCallback(() => { + tracesBatchDeleteMutation.mutate({ + projectId, + ids: rows.map((row) => row.id), + }); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [projectId, rows]); return ( <> + @@ -37,13 +62,24 @@ const TracesActionsButton: React.FunctionComponent< { - setOpen(true); + setOpen(1); resetKeyRef.current = resetKeyRef.current + 1; }} > Add to dataset + {type === TRACE_DATA_TYPE.traces && ( + { + setOpen(2); + resetKeyRef.current = resetKeyRef.current + 1; + }} + > + + Delete + + )} diff --git a/apps/opik-frontend/src/components/pages/TracesPage/TracesPage.tsx b/apps/opik-frontend/src/components/pages/TracesPage/TracesPage.tsx index 297672cf40..9db7001071 100644 --- a/apps/opik-frontend/src/components/pages/TracesPage/TracesPage.tsx +++ b/apps/opik-frontend/src/components/pages/TracesPage/TracesPage.tsx @@ -237,7 +237,11 @@ const TracesPage = () => {
{selectedRows.length > 0 && ( - + )} = ({ title, message = "No Data", + className, }) => { return ( -
+
{title &&

{title}

} {message} From 6f449a41da7b52ebeaceee59e1e5f0d0f6b89221 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jacques=20Verr=C3=A9?= Date: Wed, 18 Sep 2024 11:49:04 +0100 Subject: [PATCH 13/19] Add Ragas integration docs (#275) * Predibase documentation * Added Predibase integration to Github repo Readme * Updated Predibase integration * Add Ragas integration docs * Remove outputs from ragas docs --- README.md | 1 + .../documentation/docs/cookbook/ragas.ipynb | 8 ++++-- .../documentation/docs/cookbook/ragas.md | 8 ++++-- .../docs/tracing/integrations/langchain.md | 6 ++++ .../docs/tracing/integrations/llama_index.md | 6 ++++ .../docs/tracing/integrations/openai.md | 12 ++++++-- .../docs/tracing/integrations/overview.md | 1 + .../docs/tracing/integrations/ragas.md | 28 ++++++++++++++----- 8 files changed, 54 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 2c98e5394c..49e40abb17 100644 --- a/README.md +++ b/README.md @@ -117,6 +117,7 @@ The easiest way to get started is to use one of our integrations. Opik supports: | LangChain | Log traces for all LangChain LLM calls | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/langchain/?utm_source=opik&utm_medium=github&utm_content=langchain_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb) | | LlamaIndex | Log traces for all LlamaIndex LLM calls | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/llama_index?utm_source=opik&utm_medium=github&utm_content=llama_index_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb) | | Predibase | Fine-tune and serve open-source Large Language Models | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/predibase?utm_source=opik&utm_medium=github&utm_content=predibase_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/predibase.ipynb) | +| Ragas | Evaluation framework for your Retrieval Augmented Generation (RAG) pipelines | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/ragas?utm_source=opik&utm_medium=github&utm_content=ragas_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb) | > [!TIP] > If the framework you are using is not listed above, feel free to [open an issue](https://github.com/comet-ml/opik/issues) or submit a PR with the integration. diff --git a/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb b/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb index dfe3cc6804..136f9ae905 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb +++ b/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb @@ -51,7 +51,7 @@ "metadata": {}, "outputs": [], "source": [ - "%pip install opik ragas --quiet\n", + "%pip install --quiet --upgrade opik ragas\n", "\n", "import os\n", "import getpass\n", @@ -129,16 +129,18 @@ "import asyncio\n", "from ragas.integrations.opik import OpikTracer\n", "from ragas.dataset_schema import SingleTurnSample\n", + "import os\n", "\n", + "os.environ[\"OPIK_PROJECT_NAME\"] = \"ragas-integration\"\n", "\n", "# Define the scoring function\n", "def compute_metric(metric, row):\n", " row = SingleTurnSample(**row)\n", "\n", - " opik_tracer = OpikTracer()\n", + " opik_tracer = OpikTracer(tags=[\"ragas\"])\n", "\n", " async def get_score(opik_tracer, metric, row):\n", - " score = await metric.single_turn_ascore(row, callbacks=[OpikTracer()])\n", + " score = await metric.single_turn_ascore(row, callbacks=[opik_tracer])\n", " return score\n", "\n", " # Run the async function using the current event loop\n", diff --git a/apps/opik-documentation/documentation/docs/cookbook/ragas.md b/apps/opik-documentation/documentation/docs/cookbook/ragas.md index 1bf9af55ea..bfb2e4e82b 100644 --- a/apps/opik-documentation/documentation/docs/cookbook/ragas.md +++ b/apps/opik-documentation/documentation/docs/cookbook/ragas.md @@ -26,7 +26,7 @@ First, we will install the necessary libraries and configure the OpenAI API key. ```python -%pip install opik ragas --quiet +%pip install --quiet --upgrade opik ragas import os import getpass @@ -82,16 +82,18 @@ nest_asyncio.apply() import asyncio from ragas.integrations.opik import OpikTracer from ragas.dataset_schema import SingleTurnSample +import os +os.environ["OPIK_PROJECT_NAME"] = "ragas-integration" # Define the scoring function def compute_metric(metric, row): row = SingleTurnSample(**row) - opik_tracer = OpikTracer() + opik_tracer = OpikTracer(tags=["ragas"]) async def get_score(opik_tracer, metric, row): - score = await metric.single_turn_ascore(row, callbacks=[OpikTracer()]) + score = await metric.single_turn_ascore(row, callbacks=[opik_tracer]) return score # Run the async function using the current event loop diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/langchain.md b/apps/opik-documentation/documentation/docs/tracing/integrations/langchain.md index 75322ff3f4..a13f0587fa 100644 --- a/apps/opik-documentation/documentation/docs/tracing/integrations/langchain.md +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/langchain.md @@ -22,6 +22,12 @@ To use the `CometTracer` with LangChain, you'll need to have both the `opik` and pip install opik langchain langchain_openai ``` +In addition, you can configure Opik using the `opik configure` command which will prompt you for the correct local server address or if you are using the Cloud platfrom your API key: + +```bash +opik configure +``` + ## Using CometTracer Here's a basic example of how to use the `CometTracer` callback with a LangChain chain: diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/llama_index.md b/apps/opik-documentation/documentation/docs/tracing/integrations/llama_index.md index 96d36f8fd1..48d988fbcd 100644 --- a/apps/opik-documentation/documentation/docs/tracing/integrations/llama_index.md +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/llama_index.md @@ -29,6 +29,12 @@ To use the Opik integration with LlamaIndex, you'll need to have both the `opik` pip install opik llama-index llama-index-agent-openai llama-index-llms-openai ``` +In addition, you can configure Opik using the `opik configure` command which will prompt you for the correct local server address or if you are using the Cloud platfrom your API key: + +```bash +opik configure +``` + ## Using the Opik integration To use the Opik integration with LLamaIndex, you can set the Opik callback handler as the global callback handler: diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/openai.md b/apps/opik-documentation/documentation/docs/tracing/integrations/openai.md index 393fae4567..7d2a734f33 100644 --- a/apps/opik-documentation/documentation/docs/tracing/integrations/openai.md +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/openai.md @@ -14,15 +14,21 @@ This guide explains how to integrate Comet Opik with the OpenAI Python SDK. By u
-## Integration Steps +## Getting started -1. First, ensure you have both `opik` and `openai` packages installed: +First, ensure you have both `opik` and `openai` packages installed: ```bash pip install opik openai ``` -2. Import the necessary modules and wrap the OpenAI client: +In addition, you can configure Opik using the `opik configure` command which will prompt you for the correct local server address or if you are using the Cloud platfrom your API key: + +```bash +opik configure +``` + +## Tracking OpenAI API calls ```python from opik.integrations.openai import track_openai diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/overview.md b/apps/opik-documentation/documentation/docs/tracing/integrations/overview.md index 657ebb335a..3999e17a88 100644 --- a/apps/opik-documentation/documentation/docs/tracing/integrations/overview.md +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/overview.md @@ -14,5 +14,6 @@ Opik aims to make it as easy as possible to log, view and evaluate your LLM trac | LangChain | Log traces for all LangChain LLM calls | [Documentation](/tracing/integrations/langchain.md) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb) | | LlamaIndex | Log traces for all LlamaIndex LLM calls | [Documentation](/tracing/integrations/llama_index.md) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb) | | Predibase | Fine-tune and serve open-source LLMs | [Documentation](/tracing/integrations/predibase.md) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/predibase.ipynb) | +| Ragas | Evaluation framework for your Retrieval Augmented Generation (RAG) pipelines | [Documentation](/tracing/integrations/ragas.md) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/ragas.ipynb) | If you would like to see more integrations, please open an issue on our [GitHub repository](https://github.com/comet-ml/opik). diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/ragas.md b/apps/opik-documentation/documentation/docs/tracing/integrations/ragas.md index 3d432cd8d5..b151c6f5db 100644 --- a/apps/opik-documentation/documentation/docs/tracing/integrations/ragas.md +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/ragas.md @@ -12,6 +12,27 @@ There are two main ways to use Ragas with Opik: 1. Using Ragas to score traces or spans. 2. Using Ragas to evaluate a RAG pipeline. +
+ You can check out the Colab Notebook if you'd like to jump straight to the code: + + Open In Colab + +
+ +## Getting started + +You will first need to install the `opik` and `ragas` packages: + +```bash +pip install opik ragas +``` + +In addition, you can configure Opik using the `opik configure` command which will prompt you for the correct local server address or if you are using the Cloud platfrom your API key: + +```bash +opik configure +``` + ## Using Ragas to score traces or spans Ragas provides a set of metrics that can be used to evaluate the quality of a RAG pipeline, a full list of the supported metrics can be found in the [Ragas documentation](https://docs.ragas.io/en/latest/references/metrics.html#). @@ -109,13 +130,6 @@ In the Opik UI, you will be able to see the full trace including the score calcu We recommend using the Opik [evaluation framework](/evaluation/evaluate_your_llm) to evaluate your RAG pipeline. It shares similar concepts with the Ragas `evaluate` functionality but has a tighter integration with Opik. -
- You can check out the Colab Notebook if you'd like to jump straight to the code: - - Open In Colab - -
- ::: If you are using the Ragas `evaluate` functionality, you can use the `OpikTracer` callback to keep track of the score calculation in Opik. This will track as traces the computation of each evaluation metric: From 70c1e672d191be327d6224a6a7f63aa3616c2176 Mon Sep 17 00:00:00 2001 From: "andrii.dudar" Date: Wed, 18 Sep 2024 12:57:33 +0200 Subject: [PATCH 14/19] [OPIK-92] [UX Improvements] Add filters to Experiment page (#276) --- .../ExperimentsFiltersButton.tsx | 129 ++++++++++++++++++ .../pages/ExperimentsPage/ExperimentsPage.tsx | 12 +- .../pages/TracesPage/TracesPage.tsx | 11 +- .../shared/FiltersButton/ColumnSelector.tsx | 4 +- .../shared/FiltersButton/OperatorSelector.tsx | 8 +- .../LoadableSelectBox/LoadableSelectBox.tsx | 2 +- .../NewExperimentButton.tsx | 1 + 7 files changed, 156 insertions(+), 11 deletions(-) create mode 100644 apps/opik-frontend/src/components/pages/ExperimentsPage/ExperimentsFiltersButton.tsx diff --git a/apps/opik-frontend/src/components/pages/ExperimentsPage/ExperimentsFiltersButton.tsx b/apps/opik-frontend/src/components/pages/ExperimentsPage/ExperimentsFiltersButton.tsx new file mode 100644 index 0000000000..a4b25eb5c9 --- /dev/null +++ b/apps/opik-frontend/src/components/pages/ExperimentsPage/ExperimentsFiltersButton.tsx @@ -0,0 +1,129 @@ +import React, { useCallback, useMemo, useState } from "react"; +import { ChevronDown, Filter as FilterIcon } from "lucide-react"; +import { + Popover, + PopoverContent, + PopoverTrigger, +} from "@/components/ui/popover"; +import { Button } from "@/components/ui/button"; +import { Separator } from "@/components/ui/separator"; +import LoadableSelectBox from "@/components/shared/LoadableSelectBox/LoadableSelectBox"; +import useDatasetsList from "@/api/datasets/useDatasetsList"; +import { keepPreviousData } from "@tanstack/react-query"; +import { DropdownOption } from "@/types/shared"; +import useAppStore from "@/store/AppStore"; + +const DEFAULT_LOADED_DATASET_ITEMS = 25; + +type ExperimentsFiltersButtonProps = { + datasetId: string; + onChangeDatasetId: (id: string) => void; +}; + +const ExperimentsFiltersButton: React.FunctionComponent< + ExperimentsFiltersButtonProps +> = ({ datasetId, onChangeDatasetId }) => { + const workspaceName = useAppStore((state) => state.activeWorkspaceName); + const [isLoadedMore, setIsLoadedMore] = useState(false); + const [open, setOpen] = useState(false); + + const clearHandler = useCallback(() => { + onChangeDatasetId(""); + }, [onChangeDatasetId]); + + const { data, isLoading } = useDatasetsList( + { + workspaceName, + page: 1, + size: isLoadedMore ? 10000 : DEFAULT_LOADED_DATASET_ITEMS, + }, + { + placeholderData: keepPreviousData, + }, + ); + + const total = data?.total ?? 0; + + const loadMoreHandler = useCallback(() => setIsLoadedMore(true), []); + + const options: DropdownOption[] = useMemo(() => { + return (data?.content || []).map((dataset) => ({ + value: dataset.id, + label: dataset.name, + })); + }, [data?.content]); + + return ( + + + + + +
+
+ Filters + +
+ +
+ + + + + + + + + +
Where + + + + + DEFAULT_LOADED_DATASET_ITEMS && !isLoadedMore + ? loadMoreHandler + : undefined + } + widthClass="w-[320px]" + isLoading={isLoading} + optionsCount={DEFAULT_LOADED_DATASET_ITEMS} + /> +
+
+
+
+
+ ); +}; + +export default ExperimentsFiltersButton; diff --git a/apps/opik-frontend/src/components/pages/ExperimentsPage/ExperimentsPage.tsx b/apps/opik-frontend/src/components/pages/ExperimentsPage/ExperimentsPage.tsx index c2ade71e38..6d2ddeeeff 100644 --- a/apps/opik-frontend/src/components/pages/ExperimentsPage/ExperimentsPage.tsx +++ b/apps/opik-frontend/src/components/pages/ExperimentsPage/ExperimentsPage.tsx @@ -23,6 +23,7 @@ import { generateSelectColumDef } from "@/components/shared/DataTable/utils"; import { convertColumnDataToColumn } from "@/lib/table"; import ColumnsButton from "@/components/shared/ColumnsButton/ColumnsButton"; import ExperimentsActionsButton from "@/components/pages/ExperimentsPage/ExperimentsActionsButton"; +import ExperimentsFiltersButton from "@/components/pages/ExperimentsPage/ExperimentsFiltersButton"; import SearchInput from "@/components/shared/SearchInput/SearchInput"; const SELECTED_COLUMNS_KEY = "experiments-selected-columns"; @@ -87,10 +88,12 @@ const ExperimentsPage: React.FunctionComponent = () => { const [search, setSearch] = useState(""); const [page, setPage] = useState(1); const [size, setSize] = useState(10); + const [datasetId, setDatasetId] = useState(""); const [rowSelection, setRowSelection] = useState({}); const { data, isPending } = useExperimentsList( { workspaceName, + datasetId, search, page, size, @@ -103,9 +106,8 @@ const ExperimentsPage: React.FunctionComponent = () => { const experiments = useMemo(() => data?.content ?? [], [data?.content]); const total = data?.total ?? 0; - const noDataText = search - ? "No search results" - : "There are no experiments yet"; + const noDataText = + search || datasetId ? "No search results" : "There are no experiments yet"; const [selectedColumns, setSelectedColumns] = useLocalStorageState( SELECTED_COLUMNS_KEY, @@ -187,6 +189,10 @@ const ExperimentsPage: React.FunctionComponent = () => { placeholder="Search by name" className="w-[320px]" > +
{selectedRows.length > 0 && ( diff --git a/apps/opik-frontend/src/components/pages/TracesPage/TracesPage.tsx b/apps/opik-frontend/src/components/pages/TracesPage/TracesPage.tsx index 9db7001071..a8aaa9cf15 100644 --- a/apps/opik-frontend/src/components/pages/TracesPage/TracesPage.tsx +++ b/apps/opik-frontend/src/components/pages/TracesPage/TracesPage.tsx @@ -103,11 +103,12 @@ const TracesPage = () => { }, ); - const noDataText = search - ? "No search results" - : `There are no ${ - type === TRACE_DATA_TYPE.traces ? "traces" : "LLM calls" - } yet`; + const noDataText = + search || filters.length > 0 + ? "No search results" + : `There are no ${ + type === TRACE_DATA_TYPE.traces ? "traces" : "LLM calls" + } yet`; const rows: Array = useMemo(() => data?.content ?? [], [data]); diff --git a/apps/opik-frontend/src/components/shared/FiltersButton/ColumnSelector.tsx b/apps/opik-frontend/src/components/shared/FiltersButton/ColumnSelector.tsx index a2e139e9c1..6393e92884 100644 --- a/apps/opik-frontend/src/components/shared/FiltersButton/ColumnSelector.tsx +++ b/apps/opik-frontend/src/components/shared/FiltersButton/ColumnSelector.tsx @@ -1,5 +1,6 @@ import React, { useMemo } from "react"; import find from "lodash/find"; +import { ChevronDown } from "lucide-react"; import { Button } from "@/components/ui/button"; import { @@ -28,8 +29,9 @@ const ColumnSelector = ({ return ( - diff --git a/apps/opik-frontend/src/components/shared/FiltersButton/OperatorSelector.tsx b/apps/opik-frontend/src/components/shared/FiltersButton/OperatorSelector.tsx index f0258ffd3e..c30f8b3099 100644 --- a/apps/opik-frontend/src/components/shared/FiltersButton/OperatorSelector.tsx +++ b/apps/opik-frontend/src/components/shared/FiltersButton/OperatorSelector.tsx @@ -1,5 +1,6 @@ import React, { useMemo } from "react"; import find from "lodash/find"; +import { ChevronDown } from "lucide-react"; import { Button } from "@/components/ui/button"; import { @@ -31,8 +32,13 @@ const OperatorSelector: React.FunctionComponent = ({ return ( - diff --git a/apps/opik-frontend/src/components/shared/LoadableSelectBox/LoadableSelectBox.tsx b/apps/opik-frontend/src/components/shared/LoadableSelectBox/LoadableSelectBox.tsx index e8d22bb345..3dd587562d 100644 --- a/apps/opik-frontend/src/components/shared/LoadableSelectBox/LoadableSelectBox.tsx +++ b/apps/opik-frontend/src/components/shared/LoadableSelectBox/LoadableSelectBox.tsx @@ -118,7 +118,7 @@ export const LoadableSelectBox = ({ >
-
+
{isLoading && (
diff --git a/apps/opik-frontend/src/components/shared/NewExperimentButton/NewExperimentButton.tsx b/apps/opik-frontend/src/components/shared/NewExperimentButton/NewExperimentButton.tsx index 05e7ff8a7d..fb5e87b055 100644 --- a/apps/opik-frontend/src/components/shared/NewExperimentButton/NewExperimentButton.tsx +++ b/apps/opik-frontend/src/components/shared/NewExperimentButton/NewExperimentButton.tsx @@ -307,6 +307,7 @@ eval_results = evaluate( DEFAULT_LOADED_DATASET_ITEMS && !isLoadedMore From d2838999bd03f7e174d3e791057993beda982714 Mon Sep 17 00:00:00 2001 From: Andres Cruz Date: Wed, 18 Sep 2024 15:34:50 +0200 Subject: [PATCH 15/19] NO-JIRA Expose backend port for local development (#277) --- build_and_run.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/build_and_run.sh b/build_and_run.sh index 4105557a77..61f95b784b 100755 --- a/build_and_run.sh +++ b/build_and_run.sh @@ -166,6 +166,11 @@ echo "### Port-forward Opik Frontend to local host" ps -ef | grep "svc/${OPIK_FRONTEND} ${OPIK_FRONTEND_PORT}" | grep -v grep | awk '{print $2}' | xargs kill 2>/dev/null|| true kubectl port-forward svc/${OPIK_FRONTEND} ${OPIK_FRONTEND_PORT} > /dev/null 2>&1 & +echo "### Port-forward Opik Backend to local host" +# remove the previous port-forward +ps -ef | grep "svc/${OPIK_BACKEND} ${OPIK_BACKEND_PORT}" | grep -v grep | awk '{print $2}' | xargs kill 2>/dev/null|| true +kubectl port-forward svc/${OPIK_BACKEND} ${OPIK_BACKEND_PORT} > /dev/null 2>&1 & + echo "### Port-forward Open API to local host" # remove the previous port-forward ps -ef | grep "svc/${OPIK_BACKEND} ${OPIK_OPENAPI_PORT}" | grep -v grep | awk '{print $2}' | xargs kill 2>/dev/null|| true From d8cbb222462bc1394d21e563076821f71414748a Mon Sep 17 00:00:00 2001 From: Boris Feld Date: Wed, 18 Sep 2024 16:00:50 +0200 Subject: [PATCH 16/19] Fix broken openai doc link in README.md (#278) Fix typo in openai doc link in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 49e40abb17..8fb0616b1d 100644 --- a/README.md +++ b/README.md @@ -113,7 +113,7 @@ The easiest way to get started is to use one of our integrations. Opik supports: | Integration | Description | Documentation | Try in Colab | | ----------- | ----------- | ------------- | ------------ | -| OpenAI | Log traces for all OpenAI LLM calls | [Documentation](https://www.comet.com//docs/opik/tracing/integrations/openai/?utm_source=opik&utm_medium=github&utm_content=openai_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb) | +| OpenAI | Log traces for all OpenAI LLM calls | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/openai/?utm_source=opik&utm_medium=github&utm_content=openai_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/openai.ipynb) | | LangChain | Log traces for all LangChain LLM calls | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/langchain/?utm_source=opik&utm_medium=github&utm_content=langchain_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/langchain.ipynb) | | LlamaIndex | Log traces for all LlamaIndex LLM calls | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/llama_index?utm_source=opik&utm_medium=github&utm_content=llama_index_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/llama-index.ipynb) | | Predibase | Fine-tune and serve open-source Large Language Models | [Documentation](https://www.comet.com/docs/opik/tracing/integrations/predibase?utm_source=opik&utm_medium=github&utm_content=predibase_link) | [![Open Quickstart In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/comet-ml/opik/blob/master/apps/opik-documentation/documentation/docs/cookbook/predibase.ipynb) | From 04222a643a3c988492b395b6c73a39a3e6851c1e Mon Sep 17 00:00:00 2001 From: Boris Feld Date: Wed, 18 Sep 2024 16:20:11 +0200 Subject: [PATCH 17/19] Fix integration code samples (#279) * Fix code sample in OpenAI integration documentation * Fix code sample in Ragas integration documentation --- .../docs/tracing/integrations/openai.md | 2 +- .../documentation/docs/tracing/integrations/ragas.md | 12 ++++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/openai.md b/apps/opik-documentation/documentation/docs/tracing/integrations/openai.md index 7d2a734f33..19cecea6c7 100644 --- a/apps/opik-documentation/documentation/docs/tracing/integrations/openai.md +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/openai.md @@ -51,7 +51,7 @@ response = openai_client.chat.completions.create( presence_penalty=0 ) -print(completion.choices[0].message.content) +print(response.choices[0].message.content) ``` The `track_openai` will automatically track and log the API call, including the input prompt, model used, and response generated. You can view these logs in your Comet project dashboard. diff --git a/apps/opik-documentation/documentation/docs/tracing/integrations/ragas.md b/apps/opik-documentation/documentation/docs/tracing/integrations/ragas.md index b151c6f5db..bdc33c7304 100644 --- a/apps/opik-documentation/documentation/docs/tracing/integrations/ragas.md +++ b/apps/opik-documentation/documentation/docs/tracing/integrations/ragas.md @@ -42,23 +42,27 @@ In addition to being able to track these feedback scores in Opik, you can also u Due to the asynchronous nature of the score calculation, we will need to define a coroutine to compute the score: ```python +import asyncio + # Import the metric from ragas.metrics import AnswerRelevancy # Import some additional dependencies from langchain_openai.chat_models import ChatOpenAI from langchain_openai.embeddings import OpenAIEmbeddings -from ragas.llms import LangchainLLMWrapper +from ragas.dataset_schema import SingleTurnSample from ragas.embeddings import LangchainEmbeddingsWrapper - -import asyncio from ragas.integrations.opik import OpikTracer +from ragas.llms import LangchainLLMWrapper +from ragas.metrics import AnswerRelevancy + # Initialize the Ragas metric llm = LangchainLLMWrapper(ChatOpenAI()) emb = LangchainEmbeddingsWrapper(OpenAIEmbeddings()) answer_relevancy_metric = AnswerRelevancy(llm=llm, embeddings=emb) + # Define the scoring function def compute_metric(metric, row): row = SingleTurnSample(**row) @@ -117,7 +121,7 @@ def rag_pipeline(question): return answer -rag_pipeline("What is the capital of France?") +print(rag_pipeline("What is the capital of France?")) ``` In the Opik UI, you will be able to see the full trace including the score calculation: From ed0aa793e26c5de1b3807bb6a556b0f6cc6f12dd Mon Sep 17 00:00:00 2001 From: Alex Bezpalko Date: Wed, 18 Sep 2024 16:41:50 +0200 Subject: [PATCH 18/19] [OPIK-94] add frontend auto reloader (#271) * OPIK-94 add frontend auto-reloader * Update Helm documentation * OPIK-94 remove default value * Update Helm documentation --------- Co-authored-by: CometActions Co-authored-by: Liya Katz --- deployment/helm_chart/opik/templates/deployment.yaml | 3 +++ deployment/helm_chart/opik/values.yaml | 1 - 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/deployment/helm_chart/opik/templates/deployment.yaml b/deployment/helm_chart/opik/templates/deployment.yaml index f20dc0be16..6aa21a7972 100644 --- a/deployment/helm_chart/opik/templates/deployment.yaml +++ b/deployment/helm_chart/opik/templates/deployment.yaml @@ -7,6 +7,9 @@ metadata: labels: {{- include "opik.labels" $ | nindent 4 }} component: {{ include "opik.name" $ }}-{{ $key | lower }} + {{- with $value.annotations }} + annotations: {{ . | toYaml | nindent 4 }} + {{- end }} spec: {{- if not $value.autoscaling.enabled }} replicas: {{ $value.replicaCount }} diff --git a/deployment/helm_chart/opik/values.yaml b/deployment/helm_chart/opik/values.yaml index 7746e7ee2f..f58292b445 100644 --- a/deployment/helm_chart/opik/values.yaml +++ b/deployment/helm_chart/opik/values.yaml @@ -96,7 +96,6 @@ component: items: - key: default.conf path: default.conf - service: type: ClusterIP ports: From 01d085245bb2a81b508ba3d609af59469e11919e Mon Sep 17 00:00:00 2001 From: Liya Katz Date: Wed, 18 Sep 2024 18:31:56 +0300 Subject: [PATCH 19/19] add sdk e2e tests workflow (#249) --- .github/workflows/sdk-e2e-tests.yaml | 68 ++++++++++++++++++++++-- .gitignore | 3 ++ sdks/python/tests/e2e/test_experiment.py | 3 +- 3 files changed, 69 insertions(+), 5 deletions(-) diff --git a/.github/workflows/sdk-e2e-tests.yaml b/.github/workflows/sdk-e2e-tests.yaml index 3549598f04..5f5d7ad6ee 100644 --- a/.github/workflows/sdk-e2e-tests.yaml +++ b/.github/workflows/sdk-e2e-tests.yaml @@ -2,11 +2,73 @@ name: SDK E2E Tests run-name: "SDK E2E Tests ${{ github.ref_name }} by @${{ github.actor }}" on: workflow_dispatch: + pull_request: + paths: + - 'sdks/python/**' + - 'apps/opik-backend/**' + push: + branches: + - 'main' + paths: + - 'sdks/python/**' + - 'apps/opik-backend/**' jobs: run-e2e: - name: SDK E2E Tests + name: SDK E2E Tests ${{matrix.python_version}} runs-on: ubuntu-latest + defaults: + run: + working-directory: sdks/python + + strategy: + fail-fast: false + matrix: + python_version: ["3.8", "3.9", "3.10", "3.11", "3.12"] + steps: - - name: echo - run: echo + - name: Checkout + uses: actions/checkout@v4.1.1 + + - name: Setup Python ${{matrix.python_version}} + uses: actions/setup-python@v5 + with: + python-version: ${{matrix.python_version}} + + - name: Install opik SDK + run: | + pip install -r tests/test_requirements.txt + pip install . + + - name: Run latest opik server + run: | + cd ../../deployment/docker-compose + docker compose up -d + cd - + + - name: Run tests + run: | + echo "Waiting for server to come up..." + sleep 30 + export OPIK_URL_OVERRIDE=http://localhost:5173/api + pytest tests/e2e -vv + + - name: Keep BE log in case of failure + if: failure() + run: | + docker logs opik-backend-1 > opik-backend_p${{matrix.python_version}}.log + + - name: Attach BE log + if: failure() + uses: actions/upload-artifact@v4 + with: + name: opik-backend-log-p${{matrix.python_version}} + path: sdks/python/opik-backend_p${{matrix.python_version}}.log + + - name: Stop opik server + if: always() + run: | + cd ../../deployment/docker-compose + docker compose down + cd - + diff --git a/.gitignore b/.gitignore index f4470010dd..a1015f6db0 100644 --- a/.gitignore +++ b/.gitignore @@ -53,3 +53,6 @@ pip-log.txt # charts deployment/helm_chart/opik/charts +deployment/helm_chart/opik/values-cloud-test.yaml +deployment/helm_chart/opik/values-test.yaml +temp diff --git a/sdks/python/tests/e2e/test_experiment.py b/sdks/python/tests/e2e/test_experiment.py index 49a14523f9..d9d1f70783 100644 --- a/sdks/python/tests/e2e/test_experiment.py +++ b/sdks/python/tests/e2e/test_experiment.py @@ -8,8 +8,7 @@ def test_experiment_creation_via_evaluate_function__happyflow( opik_client: opik.Opik, dataset_name: str, experiment_name: str ): - # TODO: this test is not finished, it only checks that the script is not failing - + # TODO: this test is not finished, it does not check experiment items content dataset = opik_client.create_dataset(dataset_name) dataset.insert(

svVeeN_X%ZBK|a3MPd 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%0D~K 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