From 28ff23cffe54973102c355da701376356d62de85 Mon Sep 17 00:00:00 2001 From: MalteEbner Date: Mon, 13 Dec 2021 19:38:46 +0100 Subject: [PATCH 01/11] draft of tutorial for using the Lightly Docker as API worker --- .../docker/integration/docker_api_worker.rst | 83 +++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 docs/source/docker/integration/docker_api_worker.rst diff --git a/docs/source/docker/integration/docker_api_worker.rst b/docs/source/docker/integration/docker_api_worker.rst new file mode 100644 index 000000000..85a3fd9eb --- /dev/null +++ b/docs/source/docker/integration/docker_api_worker.rst @@ -0,0 +1,83 @@ + +.. _ref-docker-api-worker: + +Using the docker as worker for the API for embedding and sampling +================================================================= + +Introduction +-------------- +The Lightly Docker can be used as a worker for the Lightly Platform to do +all compute-intensive workloads in one single run: +- train an embedding model +- embed all images or video frames +- sample a subset +- compute the metadata of the images + +It will also handle the download of filenames from your cloud storage to your +the machine and upload all artifacts. Thus it allows you to do the full +Lightly workflow in one single run with minimal overhead. + +Requirements +------------ + +This tutorial requires that you already have a dataset in the Lightly Platform. +You can use one of our other tutorials to create such a dataset from +cloud storage or local files. + +# TODO: Add links to these tutorials or the documentation +# TODO: Even better: provide them directly in the webapp or make the configurator +easier to use. + +Furthermore, you should have access to a machine running docker. +Ideally, it also has a CUDA-GPU. +A fast GPU will speed up the process significantly, +especially for large datasets. + + +Download the Lightly Docker +--------------------------------------------- +Next, the Lightly Docker should be installed. +Please follow the instructions `here `__. + +TODO: Provide the link to the instructions for using docker 3.0 directly in the webapp. + +You can test if the installation was successfull like this: + +.. code-block:: console + + docker run --rm -it lightly/sampling:latest sanity_check=True + + +Run the Lightly Docker +---------------------- +From the Lightly Webapp, copy the command to run the Lightly Docker on your machine. +You can configure the parameters as you like, +e.g. to sample a fixed number of samples or a different ratio. +If you want to use a pretrained embedding model instead of +training one on your dataset, change lightly.trainer.max_epochs to 0. + +Then run the command on your machine. + +TODO: screenshot of Lightly Webapp showing the command. + +View the progress of the Lightly Docker +--------------------------------------- + +To see the progress of your docker run, go to the Lightly Webapp and +head to "My Docker Runs". + +TODO: screenshot of Lightly Webapp showing the progress of the docker. + +Use your subsampled dataset +--------------------------- + +Once the docker run has finished, you can use your subsampled dataset as you like: +E.g. you can analyze it in the embedding and metadata view of the webapp, +subsample it further, or export it for labeling. + +Add new samples to your dataset +------------------------------- +You probably get new raw data from time to time and want to add any new samples in +it to your LightlyDataset. This can also be done with the Lightly Docker: + +TODO: Define the workflow of doing this. \ No newline at end of file From c331e419db50c13e9c291696c992e6b34a5dee36 Mon Sep 17 00:00:00 2001 From: MalteEbner Date: Wed, 12 Jan 2022 18:02:27 +0100 Subject: [PATCH 02/11] update tutorial to link to tutorial to use the S3 bucket. --- .../docker/integration/docker_api_worker.rst | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/docs/source/docker/integration/docker_api_worker.rst b/docs/source/docker/integration/docker_api_worker.rst index 85a3fd9eb..7fc3516fd 100644 --- a/docs/source/docker/integration/docker_api_worker.rst +++ b/docs/source/docker/integration/docker_api_worker.rst @@ -13,20 +13,18 @@ all compute-intensive workloads in one single run: - sample a subset - compute the metadata of the images -It will also handle the download of filenames from your cloud storage to your +It will also handle the download of filenames from your AWS S3 bucket to your the machine and upload all artifacts. Thus it allows you to do the full Lightly workflow in one single run with minimal overhead. Requirements ------------ -This tutorial requires that you already have a dataset in the Lightly Platform. -You can use one of our other tutorials to create such a dataset from -cloud storage or local files. +This tutorial requires that you already have a dataset in the Lightly Platform +configured to use the data in your AWS S3 bucket. -# TODO: Add links to these tutorials or the documentation -# TODO: Even better: provide them directly in the webapp or make the configurator -easier to use. +Follow the steps in the `tutorial `_ +to create such a dataset. Furthermore, you should have access to a machine running docker. Ideally, it also has a CUDA-GPU. @@ -41,7 +39,7 @@ Please follow the instructions `here Date: Mon, 17 Jan 2022 10:05:20 +0100 Subject: [PATCH 03/11] improvements of docker with datasource tutorial --- .../docker/getting_started/first_steps.rst | 2 + docs/source/docker/getting_started/setup.rst | 2 + .../docker/integration/docker_api_worker.rst | 44 ++++++++++--------- docs/source/docker/integration/overview.rst | 3 +- 4 files changed, 29 insertions(+), 22 deletions(-) diff --git a/docs/source/docker/getting_started/first_steps.rst b/docs/source/docker/getting_started/first_steps.rst index 9dad4ac71..a5173c6a5 100644 --- a/docs/source/docker/getting_started/first_steps.rst +++ b/docs/source/docker/getting_started/first_steps.rst @@ -65,6 +65,8 @@ There are **three** types of volume mappings: See the tutorial :ref:`input-structure-label` for more information. The container has only **read access** to this directory (note the *:ro* at the end of the volume mapping). + Instead of using an input directory you can also use an S3 bucket as remote datasource. + For reference, head to :ref:`ref-docker-api-worker`. * **Shared Directory:** The shared directory allows the user to pass additional inputs such as embeddings or model checkpoints to the container. The checkpoints should be generated by the lightly Python package or by the docker diff --git a/docs/source/docker/getting_started/setup.rst b/docs/source/docker/getting_started/setup.rst index d729e5a62..31051b5b3 100644 --- a/docs/source/docker/getting_started/setup.rst +++ b/docs/source/docker/getting_started/setup.rst @@ -1,3 +1,5 @@ +.. _ref-docker-setup: + Setup =================================== diff --git a/docs/source/docker/integration/docker_api_worker.rst b/docs/source/docker/integration/docker_api_worker.rst index 7fc3516fd..6aafe75f1 100644 --- a/docs/source/docker/integration/docker_api_worker.rst +++ b/docs/source/docker/integration/docker_api_worker.rst @@ -35,28 +35,25 @@ especially for large datasets. Download the Lightly Docker --------------------------------------------- Next, the Lightly Docker should be installed. -Please follow the instructions `here `__. +Please follow the instructions for the :ref:`ref-docker-setup`. -TODO: Provide the link to the instructions for using docker 3.0 directly in the webapp. -You can test if the installation was successful like this: - -.. code-block:: console - - docker run --rm -it lightly/sampling:latest sanity_check=True +Run the Lightly Docker with the datasource +------------------------------------------ +Head to the :ref:`rst-docker-first-steps` to get a general idea of what the docker +can do. +For running the docker with a remote datasouce, use the parameter `datasource.id=YOUR_DATASET_ID`. +You find the dataset id in the Lightly Platform. +E.g. run the docker with -Run the Lightly Docker ----------------------- -From the Lightly Webapp, copy the command to run the Lightly Docker on your machine. -You can configure the parameters as you like, -e.g. to sample a fixed number of samples or a different ratio. -If you want to use a pretrained embedding model instead of -training one on your dataset, change lightly.trainer.max_epochs to 0. - -Then run the command on your machine. +.. code-block:: console -TODO: screenshot of Lightly Webapp showing the command. + docker run --gpus all --rm -it \ + -v OUTPUT_DIR:/home/output_dir \ + lightly/sampling:latest \ + token=YOUR_LIGHTLY_PLATFORM_TOKEN \ + datasource.id=YOUR_DATASET_ID View the progress of the Lightly Docker --------------------------------------- @@ -64,7 +61,7 @@ View the progress of the Lightly Docker To see the progress of your docker run, go to the Lightly Webapp and head to "My Docker Runs". -TODO: screenshot of Lightly Webapp showing the progress of the docker. +.. image:: ../getting_started/images/docker_runs_overview.png Use your subsampled dataset --------------------------- @@ -76,6 +73,11 @@ subsample it further, or export it for labeling. Add new samples to your dataset ------------------------------- You probably get new raw data from time to time and want to add any new samples in -it to your LightlyDataset. This can also be done with the Lightly Docker: - -TODO: Define the workflow of doing this. \ No newline at end of file +it to your LightlyDataset. The Lightly Platform remembers which raw data in your S3 +bucket has already been processed and will ignore it in future docker runs. +This is way you can run the docker with the same command again. It will find +you new raw data in the S3 bucket, download and subsample it and then add it to +your existing dataset. + +If you want to start from scratch again and process all data in you S3 bucket instead, +then set `datasource.process_all=True` in your docker run command. \ No newline at end of file diff --git a/docs/source/docker/integration/overview.rst b/docs/source/docker/integration/overview.rst index 712f2a2cd..76787c826 100644 --- a/docs/source/docker/integration/overview.rst +++ b/docs/source/docker/integration/overview.rst @@ -7,4 +7,5 @@ Here you learn how to integrate the Lightly Docker into data pre-processing pipe :maxdepth: 1 s3fs-fuse.rst - dagster_aws.rst \ No newline at end of file + dagster_aws.rst + docker_api_worker.rst \ No newline at end of file From c1e64677355a3f0ca858b5559ad812696cd67004 Mon Sep 17 00:00:00 2001 From: MalteEbner Date: Mon, 17 Jan 2022 18:00:15 +0100 Subject: [PATCH 04/11] adressed comments in PR review --- .../docker/getting_started/first_steps.rst | 4 ++-- ..._worker.rst => docker_with_datasource.rst} | 20 ++++++++++--------- docs/source/docker/integration/overview.rst | 2 +- 3 files changed, 14 insertions(+), 12 deletions(-) rename docs/source/docker/integration/{docker_api_worker.rst => docker_with_datasource.rst} (81%) diff --git a/docs/source/docker/getting_started/first_steps.rst b/docs/source/docker/getting_started/first_steps.rst index a5173c6a5..b18572a5d 100644 --- a/docs/source/docker/getting_started/first_steps.rst +++ b/docs/source/docker/getting_started/first_steps.rst @@ -65,8 +65,8 @@ There are **three** types of volume mappings: See the tutorial :ref:`input-structure-label` for more information. The container has only **read access** to this directory (note the *:ro* at the end of the volume mapping). - Instead of using an input directory you can also use an S3 bucket as remote datasource. - For reference, head to :ref:`ref-docker-api-worker`. + Instead of using an input directory you can also use a S3 bucket as a remote datasource. + For reference, head to :ref:`ref-docker-with-datasource`. * **Shared Directory:** The shared directory allows the user to pass additional inputs such as embeddings or model checkpoints to the container. The checkpoints should be generated by the lightly Python package or by the docker diff --git a/docs/source/docker/integration/docker_api_worker.rst b/docs/source/docker/integration/docker_with_datasource.rst similarity index 81% rename from docs/source/docker/integration/docker_api_worker.rst rename to docs/source/docker/integration/docker_with_datasource.rst index 6aafe75f1..85d33bb47 100644 --- a/docs/source/docker/integration/docker_api_worker.rst +++ b/docs/source/docker/integration/docker_with_datasource.rst @@ -1,20 +1,22 @@ -.. _ref-docker-api-worker: +.. _ref-docker-with-datasource: -Using the docker as worker for the API for embedding and sampling -================================================================= +Using the docker with an S3 bucket as remote datasource. +======================================================== Introduction -------------- -The Lightly Docker can be used as a worker for the Lightly Platform to do -all compute-intensive workloads in one single run: -- train an embedding model +The Lightly Docker can be used with the Lightly Platform to do +the following workloads in one single run: + +- stream the files from your AWS S3 bucket to your local machine - embed all images or video frames - sample a subset - compute the metadata of the images +- create a dataset in the Lightly Platform from the sampled subset -It will also handle the download of filenames from your AWS S3 bucket to your -the machine and upload all artifacts. Thus it allows you to do the full +It will also handle the download of files from your AWS S3 bucket to your +machine and upload all artifacts. Thus it allows you to do the full Lightly workflow in one single run with minimal overhead. Requirements @@ -53,7 +55,7 @@ E.g. run the docker with -v OUTPUT_DIR:/home/output_dir \ lightly/sampling:latest \ token=YOUR_LIGHTLY_PLATFORM_TOKEN \ - datasource.id=YOUR_DATASET_ID + datasource.dataset_id=YOUR_DATASET_ID View the progress of the Lightly Docker --------------------------------------- diff --git a/docs/source/docker/integration/overview.rst b/docs/source/docker/integration/overview.rst index 76787c826..4647e6e82 100644 --- a/docs/source/docker/integration/overview.rst +++ b/docs/source/docker/integration/overview.rst @@ -8,4 +8,4 @@ Here you learn how to integrate the Lightly Docker into data pre-processing pipe s3fs-fuse.rst dagster_aws.rst - docker_api_worker.rst \ No newline at end of file + docker_with_datasource.rst \ No newline at end of file From 3ae41ae1aa125f08e9cfdbc25783d8b1864844df Mon Sep 17 00:00:00 2001 From: MalteEbner Date: Tue, 18 Jan 2022 09:58:54 +0100 Subject: [PATCH 05/11] adressed comments in PR review --- .../docker/getting_started/first_steps.rst | 2 +- .../integration/docker_with_datasource.rst | 43 +++++++++++-------- .../dataset_creation_aws_bucket.rst | 4 +- 3 files changed, 28 insertions(+), 21 deletions(-) diff --git a/docs/source/docker/getting_started/first_steps.rst b/docs/source/docker/getting_started/first_steps.rst index b18572a5d..5368a1e31 100644 --- a/docs/source/docker/getting_started/first_steps.rst +++ b/docs/source/docker/getting_started/first_steps.rst @@ -65,7 +65,7 @@ There are **three** types of volume mappings: See the tutorial :ref:`input-structure-label` for more information. The container has only **read access** to this directory (note the *:ro* at the end of the volume mapping). - Instead of using an input directory you can also use a S3 bucket as a remote datasource. + Instead of using a local input directory you can also use a S3 bucket as a remote datasource. For reference, head to :ref:`ref-docker-with-datasource`. * **Shared Directory:** The shared directory allows the user to pass additional inputs such as embeddings or model checkpoints diff --git a/docs/source/docker/integration/docker_with_datasource.rst b/docs/source/docker/integration/docker_with_datasource.rst index 85d33bb47..806a96005 100644 --- a/docs/source/docker/integration/docker_with_datasource.rst +++ b/docs/source/docker/integration/docker_with_datasource.rst @@ -9,24 +9,23 @@ Introduction The Lightly Docker can be used with the Lightly Platform to do the following workloads in one single run: -- stream the files from your AWS S3 bucket to your local machine +- stream your files directly from your AWS S3 bucket to your local machine without + needing to sync or download them - embed all images or video frames -- sample a subset +- sample a subset, e.g. using CORESET - compute the metadata of the images - create a dataset in the Lightly Platform from the sampled subset -It will also handle the download of files from your AWS S3 bucket to your -machine and upload all artifacts. Thus it allows you to do the full +Thus the Lightly Docker allows you to do the full Lightly workflow in one single run with minimal overhead. Requirements ------------ -This tutorial requires that you already have a dataset in the Lightly Platform +This recipe requires that you already have a dataset in the Lightly Platform configured to use the data in your AWS S3 bucket. -Follow the steps in the `tutorial `_ -to create such a dataset. +Follow the steps on how to `create a Lightly dataset connected to your S3 bucket `_. Furthermore, you should have access to a machine running docker. Ideally, it also has a CUDA-GPU. @@ -45,7 +44,8 @@ Run the Lightly Docker with the datasource Head to the :ref:`rst-docker-first-steps` to get a general idea of what the docker can do. -For running the docker with a remote datasouce, use the parameter `datasource.id=YOUR_DATASET_ID`. +For running the docker with a remote datasouce, +use the parameter `datasource.dataset_id=YOUR_DATASET_ID`. You find the dataset id in the Lightly Platform. E.g. run the docker with @@ -60,8 +60,8 @@ E.g. run the docker with View the progress of the Lightly Docker --------------------------------------- -To see the progress of your docker run, go to the Lightly Webapp and -head to "My Docker Runs". +To see the progress of your docker run, go to the Lightly Platform and +head to `My Docker Runs `_ .. image:: ../getting_started/images/docker_runs_overview.png @@ -69,17 +69,22 @@ Use your subsampled dataset --------------------------- Once the docker run has finished, you can use your subsampled dataset as you like: -E.g. you can analyze it in the embedding and metadata view of the webapp, +E.g. you can analyze it in the embedding and metadata view of the Lightly Platform, subsample it further, or export it for labeling. -Add new samples to your dataset -------------------------------- -You probably get new raw data from time to time and want to add any new samples in -it to your LightlyDataset. The Lightly Platform remembers which raw data in your S3 -bucket has already been processed and will ignore it in future docker runs. -This is way you can run the docker with the same command again. It will find -you new raw data in the S3 bucket, download and subsample it and then add it to -your existing dataset. +Process new samples in your S3 bucket using a datapool +------------------------------------------------------ +You probably get new raw data from time to time added to your S3 bucket. +The new raw data might include samples which should be added to your dataset +in the Lightly Platform, so you want to add a subset of them to your dataset. + +This workflow is supported by the Lightly Platform using a datapool. +It remembers which raw data in your S3 bucket has already been processed +and will ignore it in future docker runs. +Thus you can run the docker with the same command again. It will find +your new raw data in the S3 bucket, stream, embed and subsample it and then add it to +your existing dataset. The samplers will take the existing data in your dataset +into account when sampling new data to be added to your dataset. If you want to start from scratch again and process all data in you S3 bucket instead, then set `datasource.process_all=True` in your docker run command. \ No newline at end of file diff --git a/docs/source/getting_started/dataset_creation/dataset_creation_aws_bucket.rst b/docs/source/getting_started/dataset_creation/dataset_creation_aws_bucket.rst index d53b45337..66958bcc2 100644 --- a/docs/source/getting_started/dataset_creation/dataset_creation_aws_bucket.rst +++ b/docs/source/getting_started/dataset_creation/dataset_creation_aws_bucket.rst @@ -116,7 +116,9 @@ Uploading your data Create and configure a dataset -1. `Create a new dataset `_ in Lightly +1. `Create a new dataset `_ in Lightly. + Make sure that you choose the input type `Images` or `Videos` correctly, + depending on the type of files in your S3 bucket. 2. Edit your dataset and select S3 as your datasource .. figure:: ../resources/LightlyEdit1.png From d06d978fbaaf5675bfbf4516cf9ff60e544795ed Mon Sep 17 00:00:00 2001 From: MalteEbner Date: Tue, 18 Jan 2022 10:43:04 +0100 Subject: [PATCH 06/11] Added section about advantages of the new workflow --- .../integration/docker_with_datasource.rst | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/docs/source/docker/integration/docker_with_datasource.rst b/docs/source/docker/integration/docker_with_datasource.rst index 806a96005..6bf7d8875 100644 --- a/docs/source/docker/integration/docker_with_datasource.rst +++ b/docs/source/docker/integration/docker_with_datasource.rst @@ -5,7 +5,7 @@ Using the docker with an S3 bucket as remote datasource. ======================================================== Introduction --------------- +------------ The Lightly Docker can be used with the Lightly Platform to do the following workloads in one single run: @@ -16,8 +16,18 @@ the following workloads in one single run: - compute the metadata of the images - create a dataset in the Lightly Platform from the sampled subset -Thus the Lightly Docker allows you to do the full -Lightly workflow in one single run with minimal overhead. +Advantages +---------- + +- You can run the whole Lightly workflow with one single command. +- You can process videos directly without needing to extract frames. +- Your data is streamed from your S3 bucket on the go instead of being first downloaded + to you local disk and then read from there. Thus you save both a lot of time and + disk space and can process much larger datasets. +- You can :ref:`ref-docker-with-datasource-datapool` + to continuously update and improve your subsampled dataset + everytime new data comes into your S3 bucket. + Requirements ------------ @@ -72,7 +82,8 @@ Once the docker run has finished, you can use your subsampled dataset as you lik E.g. you can analyze it in the embedding and metadata view of the Lightly Platform, subsample it further, or export it for labeling. -Process new samples in your S3 bucket using a datapool +.. _ref-docker-with-datasource-datapool: +Process new data in your S3 bucket using a datapool ------------------------------------------------------ You probably get new raw data from time to time added to your S3 bucket. The new raw data might include samples which should be added to your dataset From d969f651dd1839911c3048642e5dffd727ac4185 Mon Sep 17 00:00:00 2001 From: MalteEbner Date: Wed, 19 Jan 2022 19:31:08 +0100 Subject: [PATCH 07/11] put docker with datasource as new in overview --- docs/source/docker/overview.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/source/docker/overview.rst b/docs/source/docker/overview.rst index 596bd06fb..029c252e9 100644 --- a/docs/source/docker/overview.rst +++ b/docs/source/docker/overview.rst @@ -12,7 +12,9 @@ and an easy way to work with lightly. But there is more! With the introduction of our on-premise solution, you can **process larger datasets completely on your end without data leaving your infrastructure**. We worked hard to make this happen and are very proud to present you with the following specs: -* **NEW** :ref:`ref-docker-active-learning` using Lightly Docker +* **NEW** :ref:`ref-docker-with-datasource` + +* :ref:`ref-docker-active-learning` using Lightly Docker * Automatically upload the sampled dataset to the Lightly Platform (see :ref:`ref-docker-upload-to-platform`) From 2086933425ae38bdad3dde52b6ac3b9989475c51 Mon Sep 17 00:00:00 2001 From: MalteEbner Date: Wed, 19 Jan 2022 19:31:41 +0100 Subject: [PATCH 08/11] reworked recipe to include screenshots and perform better in general --- .../integration/docker_with_datasource.rst | 48 ++++++++++++++++-- .../webapp-embedding-after-2nd-docker.png | Bin 0 -> 69880 bytes .../images/webapp-explore-after-docker.jpg | Bin 0 -> 87434 bytes 3 files changed, 43 insertions(+), 5 deletions(-) create mode 100644 docs/source/docker/integration/images/webapp-embedding-after-2nd-docker.png create mode 100644 docs/source/docker/integration/images/webapp-explore-after-docker.jpg diff --git a/docs/source/docker/integration/docker_with_datasource.rst b/docs/source/docker/integration/docker_with_datasource.rst index 6bf7d8875..1566d0b00 100644 --- a/docs/source/docker/integration/docker_with_datasource.rst +++ b/docs/source/docker/integration/docker_with_datasource.rst @@ -16,17 +16,26 @@ the following workloads in one single run: - compute the metadata of the images - create a dataset in the Lightly Platform from the sampled subset +Support for the following is planned but not implemented yet: + +- Training an embedding model is currently too slow and thus deactivated. +- Streaming from a google cloud storage or azure storage is planned to be implemented. + +If you need any of these, write us so that we prioritize implementing it. + Advantages ---------- - You can run the whole Lightly workflow with one single command. - You can process videos directly without needing to extract frames. - Your data is streamed from your S3 bucket on the go instead of being first downloaded - to you local disk and then read from there. Thus you save both a lot of time and + to your local disk and then read from there. Thus you save both a lot of time and disk space and can process much larger datasets. - You can :ref:`ref-docker-with-datasource-datapool` to continuously update and improve your subsampled dataset everytime new data comes into your S3 bucket. +- Your images and videos are never saved anywhere but in your S3 bucket, + maintaining your privacy and security. Requirements @@ -35,7 +44,9 @@ Requirements This recipe requires that you already have a dataset in the Lightly Platform configured to use the data in your AWS S3 bucket. -Follow the steps on how to `create a Lightly dataset connected to your S3 bucket `_. +If you don`t have such a dataset yet, +follow the steps on how to +`create a Lightly dataset connected to your S3 bucket `_. Furthermore, you should have access to a machine running docker. Ideally, it also has a CUDA-GPU. @@ -78,14 +89,23 @@ head to `My Docker Runs `_ Use your subsampled dataset --------------------------- -Once the docker run has finished, you can use your subsampled dataset as you like: -E.g. you can analyze it in the embedding and metadata view of the Lightly Platform, +Once the docker run has finished, you can see your subsampled dataset in the Lightly platform: + +.. image:: ./images/webapp-explore-after-docker.jpg + +In our case, we had 4 short street videos with about 1000 frames each in the S3 bucket +and subsampled it to 50 frames. +Now you can analyze your dataset in the embedding and metadata view of the Lightly Platform, subsample it further, or export it for labeling. +In our case we come to the conclusion that the raw data we have +does not cover enough cases and thus +decide that we want to first collect more street videos. .. _ref-docker-with-datasource-datapool: Process new data in your S3 bucket using a datapool ------------------------------------------------------ You probably get new raw data from time to time added to your S3 bucket. +In our case we added 4 more street videos to the S3 bucket. The new raw data might include samples which should be added to your dataset in the Lightly Platform, so you want to add a subset of them to your dataset. @@ -97,5 +117,23 @@ your new raw data in the S3 bucket, stream, embed and subsample it and then add your existing dataset. The samplers will take the existing data in your dataset into account when sampling new data to be added to your dataset. -If you want to start from scratch again and process all data in you S3 bucket instead, +.. image:: ./images/webapp-embedding-after-2nd-docker.png + +After the docker run we can go to the embedding view of the Lightly Platform +to see the newly added samples there in a new tag. We see that the new samples +(in green) fill some gaps left by the images in the first iteration (in grey). +However, there are still some gaps left, which could be filled by adding more videos +to the S3 bucket and running the docker again. + +This workflow of iteratively growing your dataset with the Lightly Docker +has the following advantages: + +- You can learn from your findings after the first iteration + to know which raw data you need to collect next. +- Only your new data is processed, saving you time and compute cost. +- You don't need to configure anything, just run the same command again. +- Only samples which are different to the existing ones are added to the dataset. + +If you want to search all data in your S3 bucket for new samples +instead of only newly added data, then set `datasource.process_all=True` in your docker run command. \ No newline at end of file diff --git a/docs/source/docker/integration/images/webapp-embedding-after-2nd-docker.png b/docs/source/docker/integration/images/webapp-embedding-after-2nd-docker.png new file mode 100644 index 0000000000000000000000000000000000000000..1a9d19e3d363e697eac497add44914f29c611b81 GIT binary patch literal 69880 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
)vHfAOtgIq4!^_)O)a-)@~(3|KF^oPmb8mIk~ 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

kwC0XHsFnG(E7Mn3*l(;PEKm1}|XzuDol9+>c}6 zdt{(Ojr%UGGH#UJ_?oniojR6;vvD;4CsqZi`W`gIvBQu+x44c{dsN7u&Q_w6B(XzC zVFcZVh>cRdLhQuHK}yOY-PCw$HFH@9*Q&V>x#tN8JL(GTzZ6lPY>BDPq< zZ!?29oHt>A$&7s@f(LR2?4Rlr=iJ7kcPMY9XMLz$JWJ!PiijSM%{y{P(UV9dw}YD! zy=%!Hi&3-eRqG{`%O&LVMKO*05y@U$izB24;q|&4N zrpbYS*@j`aJK<71@CAa1L_$a=V@QopBAdyhSS+DJk~dwiVSZ*BpYXc8(`T+Ir_wxS zDrgT*B^k}dBzPER41E1+26T6ty6OxH>BW-&K^TC6oZ!)p%dw=AwBc~bNwl6wb{3A=W#i(a#o zHTpIFjjw#REM)Hj!CAB{aYFur1S~S|0SEy};Ww6o4_jI{yOxyC9vb>5!BDwY4 zkmxb3f^)T!E4u8>pPm=fxEv|_SQJ#QpjhOh$~mM`X|bPdGMPj)8YSTiLseCHy~=ebSlR{$VYAsVFfbsn3|Pd`X0=iKptwIoeK|7da=G9kY4rR32nK^f@Z#~f zsOvX5IVo!VarqZc7U6=(`py@vMUnZpG?!9YFUz*|`$!}bi9{li+$sFeqIWIX)61^t zYxY?7c-BBRyLa@;Y*1q+sMd>5Hd~E5DJBa^!fchA$}f35%R|p*NmG`=pKum z&*wv6P3~A4W3iZ!NL}!zrlv&67cS^5iXoHW@!!)bdFy4^$|+lkL?V$$BzGG(EPBj( zvZKq;)z<9krC0Q#${gKe*<$Hp`C{SY0?RCX9Ocuck7bR;FA|9ed1C==h1>Z)M+Nzr zL?VIF(NQs$9>L=XB1aNgF!d-Nizf>xi)d>kuT}C|f3uW4i9{liNF;YUHzj&ZtMoAI z)!1t;y`sxrb97Ii&TSSx7Bi0W@j5=1K9)9y<&PtD49lE;&h31kBX_#oarBPI(gm-1 unwH<)9K~Z1y-~@Nq9>6^Boc|_PUkyC)Fb-Q5WmJUH(p_jY&s z&P>nr%)Ix{|IMxQ)wYted{?bnwI636R{=B`326xc0s;V}z(3$|4bTvGw=e|&IXQp^ z004LZ5&{E&0$)LZe?YJW0R8hC04Ts`0D#JZ_*-cfZf8%z%D@D0iAc*q|L6^zeqNLRyhNKM44aDts-VC6JxMya67hL#1JL0iEuj0L zAV>j7bOuA!-AWNcz;W^Q5WpK+Zy@F57d5Q_8&vc|38JU25)w8Wh!Di~Pp8Kv zuvp4H&I3qL5MW_~LI(ta>xU2;b3>19DNy%U9IBBQu^|_z+|8Dv;;wk|LF2lf-uNnH zIHaxunhzup1kn>IBjbFWzNJDl*yRWxIVQFRCeq9zXgtOu>w}su?_TFU$*x$p+7X?gNi9kj;WQ8_!!*DuA?0j9PX_B+npLb$>RJ?-* z9y}|7|Kv2zYab!183s^a3e}AP3yG`SvsF;onh^y~G#1-pq`58FzOV_GaT`wXXLkOV6ir zvwm%ZFW4g8&D#D=Q9l3cVgA5J4V@N$Y7AC_cUW({7t=79dvJ1-xL;}?aQOZptw4v_ zBfuAXTCAdsuKq8cDZu=N^o73zU#cjC<@0-++~4chiUX>D!|f-hK2Bjm{Mp^_V*3wi zr;SGu>QJtGA2co%qr{Se48QW@sG@XL~DaI!R$B zJTFHaI2x`cW}Y9;jKc8KPuLj-kPg-+rH{qq*j>^^Ub zR}i0HP+pV@B5G;Lt-gAyGlaock^ed2Agjvs1!3MP>!D6*cPY{`QQg>-hBVU9bEEJ) z4o|mlx@P{hb|?$GJi~$Ohy^uxAzuo=;zmW%hZ4c9Y1SIMtQl^&FdUp|o%`a<&o5jl zcRX#!01a8uO7&+wd)|$RK66r{>-O?EFh8d+%Q9APPzN?b3Q33o<)!pR50+i${BnBH zm7CB+$zn|%_NgQnjS$ixd^^88VNtzn3a1uDM4gk>Dj}n6?Zg2|>(qr5_O`UG@(_F# z0hvS5hCsnxgje^mRaK8&p%oscrz}$UX%}v|iBWI=4&cYD_SSPH@J=;%cJ?Y|+lJ>6 zkc;dK*<)iNi$+mlA_&s!F1{-6bW1(?^zyv`z=| zYCE}}wQH4qUVVkCbLHA5Md2&Ha~Unq04wF@E4Ov23yDnWmhtl)SwbGo=s^VC6cQ$#v>pEaf!Yyt*>%}w zkL{Y;n$zy3y2^J`RZa;6o6`k;wL`qZlZ<8TlvJ^^^0sfOt(!N@H@;3cBt^_9c|x*Y zsZ!0=$;OZKBd(X`mnMcEm6oha8ELFN2Pu4H#fxp*h*jgGw=-HFLhyy>bLc7RN)3JD zhcJ%Da$N1!yXACG>(%9S$91At&rr`$>tH*cLmj474N)m_u~9}l;*7Y&DSi@|{|Kaw zm|3}&Zy!Dnvt04A(}|vsndaD29#`LW7NGI(_%csNgc`!NIr-`t-rFmr-cAz(wZj_6 z*>8GQ+CF5h0ZJ#x54o0IISmalVq|DC)fim-TqQCM#iV3MUqYxplKoJeKW5s>ao>%0 zfr9H9LfweiM}X+bh2U^3RDQ6cM$JX#th9D~!&0VrH?x}2G&aAdoY?>wZ|^N@?->-5 z*#i3rQ>q}fj#t0~TT;V?eD5O=E*IK3s=ZG!=e$ASVf6&>r95(DfYHJSYKdGUs3q?Z zTr38C^GZ+Tf*#lme>*v5HFMM)${jKWF7;YW z=60`E_NglsK<~h1&>Y~EhGCD-lIoBllSIo%VZR9M#yM;!>>*HR4vkc~i@X~9{iNTx zAX%I)t8B-B)2XyThKe+PhysGbiP}Jpj*=5pva%wCmE(Ud>z3laNSQ(r^%gn7R1eq$ znD=!!en*G$H)=2_o;_7m_&WgE#bW>Pgbjin3+3;~AoRyZ|E*Qjf6^Ncx_r~O+pqHf z?SKEm>;EK@+=S~cF&s4gj_|AgydmX($GB104Df)_vYz5hG5$lGA17zlE?mA+p@YL- zX7nR~=lI^~EFLsVe3JEqMrt+1W?6>y5I@zN5^8cIt8hQ}_z`%2L5v*wM!&LtUWL{U zx0}_U$Mc?=_Z-Id16(X;>}7cP){gBRVdMG8i!r*VqLJLVoX8#aAkd^)t=%K=MX@jw zB@$^}usV3D*>322y%9gpt!Zp05#{7-DSgg;y!&*7vi7hYT*}z5=Q#(ilDs-)jgJ7a z)x+w8Y179omyxU6SKr~z*rj6eLa08Fs89ALdWa?vhFG4E)_bU$x`0SNKFyF6vX?hd(7bYd zIGSTvTCJ1TD0yWbZ^VMd#VhIx=l>GceaQ9^uy%LdR|)7$jI>W=x_)`t>sQG~jguos!uW-Rg$Q!tZCg@dG+6Ld=uqZf&&bt8KFd{LK0O&J+X z>O&oIF*xJJBK)Eo)f>nNoJOoCwIqVQOL|L@>^-Da+B=QP$$&ND@$tI6L{s+pBt+p?TUqx#w6ns zGr*5{+Emiwrnm*xBEOg~QPS?731FhDvSB=nYuhLjXXj(}cpf9(PAC@Om8I-14WmRqKKbog77UFDNMw8qYN0a9IW~@URL9fvo}KjIi6P@ zbBrYF^&VDyqT?grj3&I1qHa`$mw`2f+p#9=+x* zn$J6xLd!$T+ZyYjl{iAzgkSq)6lv>Cn@2=Fu3z6!8L~J6sVQjzIgC22=D^C9ii5S8 zp7k^Wu9RcH(^GC;rw!|HwV}GcUMdAB4qPj2#6-sib8{W665rqFo-_($vq<4u?wp561?7a z=&_u(y@SD^MMHujUI__Nqub6&&y4)6MfW#%qDFlPIzv1gvW!5c0s=uAmSE~Ia$>5TpG2=J_m)IFF=&GXfenRpC1 zq}{61tJF;w;1nw~ev9zM3 zULtjVCKRUJ3P8zbML4gtXh<&C61&fZyx+rcSQx1}0yRncOQdo;pX+wH)|KJq(Kuo| ze~HMxTTJYW%IZU#0*DHpFh`4<%TM#I5$V<%33UP1oqn9MF`O6zC#PQ+l2$^Al^K4IWJ#hYAV zra97_ID5^Pt7ryqcG5y9Pf)^r?I?n|Qt;6+(c766PGJLFaVJR778d+`^qA9>T7r$8 zVt2uY=CoLxMZ3g$2xxk?Xvuh@l%f2@MJ20evy+SFp#83$SXM(KOQ zM=PV54tx8qHO?ZCk$W-T54Eo~r@q^1&`uQ(dV&q2?T2J-N`R0iI7U{LgH!Uh;1f_( z`?`tlr(rYTh_V*#k0SgvWEXS-8*gUfWPEYas+C56JZ8Y-0s5PL2c6u8}Zb7G*c{qIz+mla^{D zRmqUTBCJ>jWLiGIDWm@qr)lW7xv`TJl^F~t5I;3{Ro6Yv`-J`wd#=I6(1jdh$d!$qtr6}71`>Vx=0sb$29x#KEWQP3jpO8^Oq&gAyP`>GUW?*cj<8G%> z)6!be7-~F?*knRkX`-NhJ4eSHk&|4s>&7ERx~J_#Dws&7*o!A-yB6nZ1c%$c-qiTo zz{JC-XnsW!B+F!6lkU(UHt~e7ekW&x#)}{#ooc^nI=RrI6jA2;j16g(jx3}oDG8jt zn;M14qRZE??YCQ#c#^1UC5IHBnuEGmV5OIgUZf!p+Ozo7s@1Y-H(0ZW^4^9et!8i& z+fiCpP!e5Xy?Coxf4p7kR4kt(`Q#bL7g3sed@-Q}vIhds6FEHC95X3EhyU~Z+tg3; zw7B%m3po7W9j2QWXTctH-@M?A7ST=c73n@a#l1!( zgfafKb;YsDPx zg&OS3@t35v+VIeM+03l0{Rax0*p%jqW769}vt&(49D3NFTT|8-hU)#TlqpjQ#;x^9 zab3H40G=uL*ZhTx9bOI=TSHiWu#yrmQi6*QmjKyD1x3@77U}#&OU7dO3|w2b>(US6 z*TE@9%(<|XWK8oK8BQ5BO|L@Ehp?x=Od~SZTq8}q96m_R5U!j-uvd``#JylEC#iYq z$`5;Z@Khm2~g|A0#xB6C( zy^}7?huSQy1^%?^Ave=c<`Lsw&U_rMn2D~tw@)Lk_vNNsmN*s14eDg;BqD}!UQmp) z$aZHDuh=d^fXWT#Lz@GmQlTtIYtqX`j5UBTM+F&Zr)#{G7UYi~Vi+`VOqv>l)>ud4sSu=z zmV6Pe-+N7w4^xpXGzP9c0*K-tcRhouT|g4_Mn(u_0&e1qb0Y>l@>*+K;im6%e8QOZ z`pIi1GR`_&t7$t7@?Yk+3*@G)mYV(sZ^dMP_~rD ze;u}Q^oF$P}=8hqBi7Bn+ilCKe+1U>C;5#YflrZF zijM&Na`ry){kiX#P`DX$Umhl^(nsJ*;sRCU5%`w-fa&{%v(U5W5%4BH&T0RTfe^24 z1>45O-M(w(^$%f{u4&ek)zr?p27~muj(-XkUh!f8>S6a|k9=jbFAJtGgVL&0(i6O% zHah0XHw~veC#qoB2`8&iHa7|eeZRa}Tatpzj)I!B<$H+dD=9A@eK6LkpQ!ncvA~ug zbxPuvpl7d>%_~IU(sR~U`0QmpT4R$mnwXh@p1P~i6F+Ujvk^O);0N>}*;}wH42<9p zDREQc*A)DLxMRi5J?ge-ccOK#?ehrDdOGWhT;zUYZn8seAk6vOkSIeu?lc2is$*AN zRYwfB$qpQWBkM$~cKukbwxP^5at6~Xr~Hcu8frE|H47~dLc~hCmm8Bm`+Xq39%K2c zX2By19X2K-)A{lVIabRTVVu=Bk%rVhBL#UjjB`sy98}j!>BE{V!k`Fut|675uo2>N zJp$%nkzu?8&1XPx}=?*U9oT-X99&v;y{~g2g8Ap->hI#DK5Rq zd!lvt1dlloHNMEl{OmW${S$d_tTEeg^uTu;$2M$9vpIFNb5&HK_`(m(+`ndL3=_23sc0qa{b zo17k33Z^qcCvykEmLnY3cedX|O1%6aR0*b%8@*-c{=A@<^xoI zQb)NY9Gi%zwjhTW82pzfky?K4Zb~@Mql}`@eiKn&l})=>spW$nHz$&`s6V9MX;SSG z_(j(R|EA%p8kuFI56=I{vIOkc2&Us;{+nGW>faoq?nuC3eg4H-ME+tUGz6MOugBhq z|Cr7H)mr5KqWjpW|5sorTK>wZhW@00*5CEm>7J@mp=&HwF)V(tpDHJM^oM^QtA9W9 zbBL#GES8S+0ZH@ZdH7z{Sb4cJ*u1}|9@`*?!U1d*_-7~o0!6`VR2`4=4DA) z^Qb?ngATGRK~>j7X~;ba?QrMTUhYn4HF<9H2C+>0WGyC@P3f@oT9WT`jYtQ+Tnt{O z@9Z!yi5V0U*_PVDeh%6Rs-HgnaqwE^E$0K)NU-3}7u4HTuu(_Y>Bu}=gS$Vbt=^}t z95^6$+MuC5Sh-RcAb12a;RV0Fk-VeLMDZPYOZ>epcb~Sx3vThM|KIF|>ZbpIsQtSD zOU|buu<>zP8@WCXc(?+;92$>z?yiI%f!7EERn2e}-Xmd!<<-7xI#*5)uSvkK7#QN? zve(>?fB>5B3S?wSS^J-${9mO?zM2Vd+-k)7r@?=RPtohs7w^!-ktYjtvydE=e7}g6 zftM!_9)a(3<)woEHUm5P2=q!po1d?wTvo2{G9PZ)es8+@?>23};JSR}aQfxT8Kc8I- z-d|en%l}&Y@8#P2C4b`L>%>Rk2}<)LAPDxDgHlU?dSiWa~2H$Kf&14KXvwxZ^?f}XAf4s&;72lray%8 zpHSILu+0BeWvhKxO#kB=d&_x$`B#md`=|JN59TX7=KOTIeKTcKd>eNMGvCaN;6Jdb z8e-|=l0BKWEssD(`SsZ4{>b&-BarSL{BPPO16Rgbft`P{2{Cw35RtLBEnFv!6DeZZ z>Ye%z`hWK42;$Fi)t{rye{CfHCsqCvQ~|rw{yOb=oVW=v&($v&6GED$nx#HhfZ{;l zK=8%{hWx|*GsOW`{XYx;B*ITgFwZpyiwW`L2)tbRPC)3@{Y)*PE^Xp z8-$a6VmvFgreaGcDH9ChWig+xilbDA5t9(-{8)*3dzU;@SuK^`{q81$9`e~(MM7YI zGB~Rdz5mFOZNpYij+NV(fd?a_CoIYMJEC7^ z0mcae0Y$|Lo=2HpWKopKn3a@CV{-Tsw}LHLe!br@A*#h4qpv19#>ELoQoh(HQJ%t_^Rp|9?yIZqM{QPVk0(>X|w94tjp%NNDYy5*d3(jmy++=yM;aDOg3IPfgx)Ku<+?Z9^(8efN{KXODF7mjRO@@}!1ID|z@7{e= z2iH)L0vQ)BcUaVDE3jeGjz&6H^usaenKMJsc0T9YT(C-#Ui-LvAMaesSL5x4cMvUsEcw zMPJG{ea2cP`t;obq5Y;|@Jm@|I8kw|SnF?2A9dtnx7wg-c(DapGdoCpTmUOY6?Vdx zBQo{3a%YE1?Lt7MDL()eBWLmmST63>Mckl}CQw3jE!z4anH9hm3AYOE?w0X>x%pIG zJmf&W6Lne1nMhC(gumzlqCAS!yOVS@5ryKMHcv8sWp7ldds%*5gdPcJ#Q^q7s0`v&Fl@blB z*|xbjt9lhD9USI0r}C029o87HI@nf_$$Yxml8)1dv<9yREJT>!alUxg&8o)Ei2hYeWqo=peT(+9vD7%zDH5Tev9sb;8iGq4s+Ad5OPKDMkSQfuz0>vN8_SSQ##&^{ zS7@Ii3*_zW2waP}Epi#8-CWu_%76te`&Y91B=yr}pcw6BBnN3s6A&dXg5!|Cy+iDX z@DO0DsKH4@K2~aD`l%t+8v6{vSC7Y#aL>q|=A5?K66lTS^mU9tp*C=<+i_R{+ zs&26|ZZ5+RGmc>nyX$Qul6=|i$GKbP`+(sMIxqwW-(+a_ZHeF3FVUh$Z!xf}M!ZGx z!E%$EI;d47simtD5$VGW=_AEp;iLs5Bt=I@VbgzF)E`#$e@-TTocj6BKqb9OwXi{} zZ46=8BsW`Lb)1F56_^^a%)qU#JZ>#(#*D!=JN-`GJ=TKZ(Cy_p)39tYjpwKO$)DTb zxa~oxMTgV_ILBh00KUe1CxFdF6Szd};h@=~={@+EVVwGPlh@kLtX~*L}S#KmpTr zJ>g#l-Tv)$^Y>-6;gdC#Q+#40F6dU=ba=3@BM3f8@NT-mHq+4LauO;KSvaiezNBY< z5qY^V(-fE&`{uSV0uyN?Yx8!3PY$}gEWa+AW=CDVS|^a31_WY!v&f*<%2R!KUdl4Q z^^M+UBf>)9_M=}9zoYlQ#*AAtu7Q38qN0^;gP2?hTow*w12XKZr@J?7T1pml<2}t7 ze1%WxIyYBiyRF7{3&RdlEZ6xCYxuon$4P?5mNkji3Rw`M^$f3pY!OjIgwV66UXnV>?>WD(kjpTm3Esa=S=6sLpazvY?aog3Cqt%gOqOGB} zGG=a_+J&ZHG&*puo(y7zGGDyFTq`YTLVohlwobb$A!;!Ier_z<^8u$^F(_z7=q&laG zd{1#KfvHQvUIsI5Z4ZW5(Rc|YZf(OfW%0I`)986C``Rqh54Y(GL-ARtK7f2wBJOQ0p|)&2rF6cq!%lWP!m%HHFVwzQph+RbK%v_!!98njM?Nfh_hFe zBqQz!nHW=77-O(I{AQDSFv3?)x+Y~ZKTBdm%;DqTtVPXJx;u*F;2t2|6m1i|6c%g_ zOAT;ekULz@Fy>x)Dc4V9OrQ9!>lX0E%%=r3^nDj5^bwNtq>#gmm(>+RWlim9YDuV% zBoG~vQ&<+qkFHa}+2F7KrvAFrN%e#wvuJS^UxR*H)o{3E&g5Ib1V8QPoZ^K~9gUmz z?sjUmb>1lJ^V{p#j!-?07}yflTXCnTg3XH4Dm~HmHtvNpO7ewv$YM zoX$I->R8U%S*5=?rW%U$3O{vUn?yjN+e0Awe(b6e?zq&Gs>JVX$?AnPpTd0LQPfQu zvKfJts-aC;6}Q2ALWg!j8m|Fr7aJ^RL}c#sT}sE8XXxcI0Z6)#tjL?k!PSnQPD^7# zM7qWEdmI8!L#5n7ELwW=;)n$BJBlorMq%-kxtlJ1n`(EtDl;y;unFC=RMsCjF{D|a zll!wkhk-bRm-@I?y=K(;Yg@Zkb)gE3qhm>S*To<<1XF|D{_rG%t?;~KqfJa4!E~O-nAj90&zmW|B@l8dd&SExYDkmTo8b@Q3 z*luC)lE$pK$ie`z5l*_Qzi%}BvDxr{PKJ1#2EQG9&rBXp?sk7WLh1c^|C18?G8ivp zNsBLFMPY{%(brY#RMtUFthyj)F`t%xz z3J6=j>YdKvWLsD0&VmKCaXme$abvMoTs3HqH`Krdjf=Jc5}uz`p`%D^0Haq2QrTla zB5n11Pc63LW%PuyNQhZdYNyBbyQN4wEpO7J|L7(>-^ZC7(jQa#Z0%52n^4l&UHBmf zf#*}kUI|t2-$`9ry9wS~mYU?~=}^v7kmC3)H8yQbB7Bmxs_rgI>6>yc6ir#k2o-lC zBA!AX^WrpI;Fhq>_uelkvM4b1)UXz_QdT7e!veC;3E4O(XJ3*w&7f`8z+xbOub4yU zfFBQ?$>h?L54d8gnO&ymA=9@mW|P&ulchGOmDxztxxfVzhNiXWo%4b+yHDLAZ^-dfJb@utfS!JWqRmVYy}@r^&DqQ)wXy($x>vshc@$C&c;YFbpXg zD|yQq11I-=@|3*D9^AmynGimks+V@L*S>RejRTnyQZdSfp&tTO&Ogpm0rxWZv^2H) zkATu=86YKurgdtnHoPV=F@{c|Gk z^Ve@7=kA-*iYD&^Xo3E=O*Bt5bBJ?AIl9~;sC^-noFrr6u!_x9r^y?oVp=l`I5;?> z8UP%?;fFv?jTJx1f+oBx4)FYR)dbqoFNKtZNbyQRyPV%lhV;+P3%9rTl>T1)?`*jK zcjG;1S@tz2=*meajy|ZQSX+yra&r+@a9?C0^ZbQE)c#TfNga>_eYl%ulghjQWp(}N zX5YtzfWiH&A&Tfz)|om@-l;V=eGNq4FwBz>#inW+aT6D7LC3wVDA2PJoMHG2f^)%i zc^hN;P{8p6TbSovR)jCl`=c1HyE!t1G~`b3jF|g7JHz)2w(DesIE7nt(}+=R8I^cl zzcLR%pU5)KHC7ync?rw>FwVP8+L~cGBZUz{lq`<0gB(gMfV zxt=&{$W6IeE^p5^5}{64i$O8lN_u5*@YuU0k}omO0Lv9>PhK$J?E;fY)CQvi@~!wP z#CU$0R`pJ73_l+cu0meX2e5@Ob%F6%`jCoTtwaA1^j)cTaQunLmxcJns?%Xq(M9zf zMIi#c^88o(Gw3fW5gm+kG{hPxq)||M+PT7v;HDZ0xg&12uiPVFeu@}Nf9PS3AspDI zGL7Vw=9Pw9G*)*|#CgtI+9zbJN<~Z%NQS|>D}@QsX^H1r^ijA-?>_CzcQkQmrfP;u z^hU!We--d%ALCh2EyieG8MGh3Ly=-#ya#T! z>w<7M#JQsnsw5?PmI45u8T6azl@!LBg#jDO4TT8aqMRmh%;?6nLRdJ?LXesXGhTvrRcvZ0)>ILn2)|28P z0a{Rf5GY36tS00Xu0{2mE&k3huNiK+><4KA$L=wi?6EgUB`om#!f>^KzNKeD&`d|w z(y| zwj%^toc4>^mn-9i<|!1dYlQ9=P3D}QSaW6&3p+JFd5}J*L>+fgs4^vpV~Ca?Dg1`{ z0{k#J1Z-QT?}aa&Z{_E!+^pv!W{1t8xRSE99iSnfldWQz0FiO0%qtPK5=K1pI&2so z#=55t86~-sYImb#hxp8(0s9T2EcAOz*owf_1W0X+#;E8?f`FdU5TMA(gN?N`Itq5K zb#qq!HGt`>tXP-pa;Y@-F&TOQjSQ^>C&J!?(4%|eCaUkDZ z@O#4;Nyjp>#ZKcWr>|k&RFLj(i*cSZnH~wX-8GgV^Iu?&8#RXK&cBli3+UCkus)U_ zZ{q2bdk*r`q8q>Fp8#d*IYgn_BLf2TLQu5wU*J1?y%i$2QHkRbj^!wu1ki<}`flCP&NIs27u zT)I`}ZWae_6o9oD*ODZ!(#CN8FbEFld=BkP1LS&n&@qyP7{fBBr{YGwxa)KtqHb<( z$bc`E$r(URkwxxwJEZkXtv-5*D;Gg<+tRR(p|4de79_3YD!X}+d=>_Lz!>Y1=&GXRYca` z9^vgr;G?QyF-FJSgWtr)J-dO6yT_v+@HGVZz>Zi>p^!UhKIcFp0TjFNdd9T26<@Mm z@AV8zSNI0HMjuGX@g7uph$EfaQo7!S-7|+7EnwDN=HL>UxyDEW*w!e|vf2Q*EJWx3 z#D@#8R#T=PGC%5Bdd9`R&7c&o)^ijyi{W+BJ7n{5W`s9Poh;khV_}Z|rg38z?A*%I zW^vL@u9#Niht1oxx$eh(udW-jBUaH|+k8vi407#cr1kYs06c~$-@4F?c+1?rXo<1F z0K#z_6snMyk`U_nuuKTkuq$+i!)<6~k^IWG=))qCdaw%euRIrIKBYWR=O@SpLW(|z zBXb*O%^dgRL9l}CS0TV)&XjS{7hT8Ky!h%26W&?Lu)c#Y)yC)cO^CoJw%{t9Pt3MV z&jET+p;wiYDfs9*fPmJ?pJ%3E?7#jk2dobF>KBbIt<}x9RFm|j9oKb%{zsMr5=LItk(E>H8{m$DOp3NwrPRrm2$FW|Cqwf4teo9j@{9-?5ZajVxfWHmJ z&$TaCe}Ym(IG~k{7wt|S!xAM8p$XD$$9I*O*+p?m*`+wX2>hbg!|ceIubB#GAt|n^ z^wtr69$uhkmo2ogGt*+ywtx{gTozN;?-4+o{fOw5HVTW9T(+Xq#acSa=|*ik?j71^ zPL2XA5`GxN+P-m8EI>3(Imy7+9J*@~JFs}UEGkSx#LH`3xa)prxp(D};?mgqsj(q} zYMD#7?s=FLVAu@);11zSOKn}GE^q8?FE{?pC|Wu_b0IVVDDN(v7&v7i{K;Qb8!Oaz zot{`W^I+!8Lq5z;wUH?6O@Ov)e6e|xPd#M2PpW@fF$#|7>h1TeC+GJv11fJ9X9bgS zxR(53y{llYEKwV;re8C4*-T|g})2p0V$2)W)clnfz#(opil4g1HPNS zIubl*p8&g4WV1B(ZZ?%?7jv~VQj^Iu3q5cnZz>OXQ!X?}g66U6>lLE2=0COoFtWd? zoA2WocxX0rn)9%GSNPiz>VN(H@6#u@_-EfGx8wncH*HxkA6b^=2m-O^&7iIlO;IQ4 zP`|1dW+AQAgX3ofoF0Kq!3T!OUvFyuEd7Nve^TRrnQX)!R-3uaei$h~0&in$n#l2E z^;r_UyB>K2qJBJZTpk|8oPW{C)i?L%5r~`){IB~*)rfKh^0C^qWm$P_;Ot%WyqT;V zLo8PT@{&kcfQw**97JB7b7>Y_4oH$0yAa4qwJr* z?aio)6AV;%{jck&w3SCTnf|-(7k%%ZEjs*2osiGs6cf8T)cp)cHuozzV24%S>|fRk zAIE=>@!cT@Tqe~75?t0t?yKrn^{r14 ziM)1PtbgACiq&oTK-N?-jg5nj*FQ7xY@FaolzV|_d4&<_`T>Iqsye6AMb1}lY$s^? zB6Fw#$uNS=%xo?!5a9`B=0L`zmeq~TR>^n8>a1F>WFihtv<)sQi6co6uu}`zC~Bnm zd^RZ5y$@6~H=Wz2k$)mgfQ>dIc zqCZ@#W~M@Y5}i62#!VKiw=?d?i$@EKdz3wC!*;u0>ya0vZY)(-lBy|j5Yy#)1ckf9 zJ~;2*zrONvg6Q%|nenF-jk)ZwC`eppzueeB0#D;nxEw_db)V-I)$umTlnJI`GKN7E z(POA0Yr+dxXI~X{u8KwL>S~)TLi3N-;1a^N`orQ8VBNfoxU*0~LL#W4E9tVZ7NHD+ z;71I3@nU{)XO`J@3eb=8(UCmNH=v~k!v_?7H-r->90Hu zH$Ow7WOgoe4N6}fT&_MllDFKY9l0v7UeWlAv(=Jo|3=$%w<5YaHpiXjwm!N4B#F3(0tAHV&g%xXI$Cy^uR;cGu{Qa`~ zXjt2Xi=hGfe8dtcsn-fEOr{U&=v8~oP5eTi*m^3typ(>Hyz^t2gnds+NmCL6wg$yh zH=(y@2PBA}ftwJ|_m(OCib(Zy3P5!`qB6Lxm-`UI*%~)nebxdi)xZG?^P;cqgLPztn;4 z(l{9>FWF(sTIE^_#C6A$QcIW@Zsik=93w}TWYp~lzzM`bJK&AbpWWU)uHPTurhmJf*lq7Re{aREIF z)0M#K`W^@Sg)LO!2#8%{sgpo3DMRf`=S~I+3x6?TR&$+rW1w`(E>aH7)o4(n7OEJ&RK{~y<-RSDz^3oZm%zi9^x@m0>kK( zG^3@sNHT(#b0*Oj7Y?A;ohb?ZM%V^$AO~EJl2~4NfC}f~wuG=ZQ>`og`f3B7X5>L+ zCf-b$v-4^bonyiFg~4C98-J_&jZ_-ETv z-z#nR+_`$ji|0kTYO7Jg5Ed&*!q5a>8>6KA#6gV8(b=Dd$%wPY74ashBu4F}|qPVnQU? zl0{<>EV?pk=*JV%KILL$x-14f1CeF;*GFot*2Wosc3kQ5r-C$h*`IvfFA7#wAC0mE zex+qGleZn$PsR;;U=+XhBOA%ye7(&f;43XR=ABFbFxN} zLIGLI_@{bKSH}gY0MdB4Wj`AF;uB$q5`{5zGEp^K4HXhtY|-mU=*i z0vmAbnlAi>80O?pA^bz$`gmNJgwl52$l(qk$&(r zz9@0GaouGV-MSmDifP!4dC7HgUZfhHzt-3&X+S3RaSt3^GbM!!qD%p%q*tQ~!>8)Q z2LjUGEGoxnVT^7H{_M`vN1X7!j5waAC*9oP0UWgTfy3JWVBE&Sq`O24B< zN~kTv+_Nr)H$G!*5GmH3Zh#^DGbkKNsEEaR2Ms(2skEYuFr%B zk<>ZPx=jM7;#^41Z*Ekm3upUrdRREx8&)qbZq&pQMx0`cI>y zhpdEMkUO&^pZb6FF%@a{u5!3hfYjPkOLTn%EW+CqSQZ)YAVzddnjk4t1`i z^TyZeRHFE+i=tgG5aeHkahA$&wyq^e<;C@Fwisjx(!E}S1&8e26+$jems%0LwAqx5 zmcn=1Ya{Njjnvv^B$GbhtPYtM+BLf7KznM1ly)u{to3z7>z@ep{rkwPzl^Z{D`#+A z{*NeYqwjX%QOu-(`qI(kt7gh@B71kKlR&lsLpFGgudW;_%ggbz7sQ-v zr8SdF-+`yPuQ=eCffd}zBx?VOjC|VyE4l+#DOCsx3dbNa6AC6m5=)Mc*2sGuSzcl4 z5L-1l`&2hlRin)|7%Z!<=L&Fa&h-JEc+Qv6Hnp|28K8hK3CxE$lzf5gBidhiY9qq) z1m{vTtr<2`G!zp(B*Ckl(g;$^D6HeHcwjGSYAK^)sAj`7OzT1PtDdKrwdqDNl;R7u zlTAf9JI^CfEVs%6*;|(*`P2^aI>-knf@6n_J)%xEF32No1`nL`8?Xokm7#f_>L^Pdih4EO~zG)c#btc~|eJI({ce{b-MZ!spWf@ewhjhLV2( z?FyvEk327z&jS69_k;Djp`UQ^_`9^@>?StHH(g}&1;x+*eTk(-yP;7F4;dG^6&3336}_c)4x6A-`_zL zot%|^C8(?PUExw*nfD3Cu10367zyjU0g}@F|Ijo^^0s^JfqRsX1o4O-^6xLg6O)qG zMTlN<$VB^Jzc6?M;NNomU;5-7?LWFp4}GyEr)(nyn*aJN_;23#-%q9g zgODF2TBigP24XmWw{f8TI(M3IPxzk=IhKmb-+MFfA0q^i`G21`{}mxPb4ESUD{95i zP%#MOXVn2M%~Xie*%U6f745#?c>q6{{Y;l zr^TNAeiH(+{#8awncs*x6iERkZb_cFSB5=+@)Uz!dak(`{f;09^fXVQ2UgIC{9NVa z->>~=hctb;;nBeM^U<8f_ZO{azf9;z;wZz}&55kxT9tM{iHF=ZO8=#X5VHLu^DL5y zqvuy50wv=4n`w5P&}bHpRlB*CxMJk0DRdt6yfHK3MCA6^rNbP^~&mp-S zBhzdl<(f5aX^dU|RKwkGtnn#s$|u+pEw$|Mv6soAaA+@=d)i)#cfy_)R`#FmcAojR z27u9992Y{KU|JznO*i`$ZzV?I08S#p=C1(V)=!U@)} zRWg}SlKsoyLu7|(dB>x&bect-O+lSZ6J<(n8qA2myN^JCOEM9D-QrOg%HG%@V3y3g zm={%*ArKG{{hE0pN`i|!bZ9_69#FKl&R8?y@@DWeCP%#eJ6;ukzT1LXZy*R%&{wM6 z$22^|->IPzMEM@ED}=qAV=`I^2WD*`qZTpXtob;vS+0jv9z8bQAkJ>{ZLcjg9J zUvWWyvC5RH1O=(OIs^ABFL}@`A)w`75w6J~T>JsFT7tS;y)IaKv#>9a4?Vw@W9f!X zf4VG7NFMjlgslU3t>Ru$7hL4^-fEu9CeKHjsSeP;bZof93k%%W1lm|b>4VLbUYRq1 z?9J~iPA1ANDicLEz1%ASFUb=be*h@i&-$Q4GQykVmM)N&jkVw?Jr3|`0Kzg|qGq#@ zLKRa;TgeWk)fj;;ye#Ecg;y?ui~4er-9(WDzbI!P#hjRVBhM(@-OvHTV(8NR>mQsw z+nI*19^wx?e*m~rv!w|0KRxSkcgfB(t^NS6hRKFH?n{;K73=&ScF}j%pEbx-OIg68 zHxUd_+L2BEd6E6UWM62o1h?9i9qa5g>z^p+Qc;U4b33(=44rCg=FqF`r55l{rPnH{ z<+e`rlhR%Yr@XU6)m>g43`L0~i5A(Qauhlg6xq%cSF6=7sHFlY2f9yg-$HP^DO6luPXQlFyhhL$fpWZca+*A-brhgU;-MG~1Z7=Gc;|MIv}$UhS1(?@jzWix_WpRQCi_}fSY#1O z_42)R$8_bfKH@>?^?gyqZOIc;Hs8buls@LY&Lc~|5|$N@&D*}Z(qdJ|(uYA}KZ1gf zUtPJ%s)dts+qLYXN$KB)E?U1D-kSaaY#kn7bo9}@>X$$HAwxHqfEi_DN2%FF;Fu;E zVcih31{WezJmp**aok~-=Pj?GxCbL0o%%x}Da@I0T|TX>E`fR_zPHp@2}i@_hN81v zlLNp0geT9tr|<`|i?YW8agho&{-d(@k5%_jqTRhefQHHz3SX&bP)@z^?ZH3^LHUtN zqA;bb#RzXj6*r1Q2v{cGH5ZDt>^S-i^nK~ zZuepH0u=+$|N6V7-zMvv$bN<)bP$PmHW%Q$4Y{-n> zGupi(>zCr*m=^RLHU78btyF;~aeN;i>D|P(f#H@?gyDINUYJ5^l9Ko7b2S}zJw2

GuL1GJOQ(t&gjHdzrMtZ9nphlQ(Ow7tQdl3pMCNz znN?33Nakd4B_UgWA(hok6+p+xq_0L6vQMm5a?TU7xs6^d1Ul>CI*W6yiEBLwyf?6d z5mOD2*D2@Zh$5$MY6MGIxa|thCw29-pc;BM>%)Tzn%=CBty8)6@ozH+hLW)=Dciu^THpc~5{ zFJ=gG5>DAmo+-{TP*!}cwEgfKA!eLp+AW&_1bdOm*=8)+UCCD6YJnq$A)*5WJRlnb*`>G1H(JAnC=FKwyIQq+m+6mn6lrKgM z>K;WyAV!8%tWOW)ZrCqNH)(~Ue<2#6$o{ftr7JEj@6B!W@9pI0kg&6BIU+A$#A>G+ zMU!2sxKjvh$#sQ8yP*58w|xc4(i4B1w57YoO*cunmu*D@WH=M9$-hD7bzyM92_laq zTC?rk_gUi)r+M|Y^x$ZXtC^QaO-P~-vyYgBcfK(HeR+mY@Y?xh^+Qo-z2N@gXpJ;Qm@;nS1}L-S@zAKY!6R8{f>9 zO#N;#D@MYj;hCC0`}ykorQJpGMC6U))L;LZ^N}nO(Jl0}!QCS}Pd)0m8i$?^{W13n zTy}pu9JZxqtwQGyv$7>TLZ7MADxWVy|7vgR?NHY9F3vcV4>or74`4$*3n>?9RHbY? zP&%bY9k6xReqMbas{W32a!(AOmq>=#6pEUwWSQk~t=7zp#HanQ+n4 z50Ww5U7eVi3a}BD#LgQ^bDOT_5TnhODa z<#&PWMR}g)Pjg>=sX$8cak{bSdFGXVX_@}F%?$mJE#`7jVR_PR)a)0eJil=MYCQ>p z2-Ip)MWR1|h}=#u=yNH%cRy+_3=wP#!oG4%9;Ws6Z5r~azu}03(twZQ;f}}0wI4nz zBML?kon;q%Nc!Kk$G@O2|F92Qd-@)uUMj<{kG(8+qWJ{d2FpdQhk|1HFATEP_h(L+ z3+2B5pp2Kks7n>2M4*Jb-t!j>guF_wI=wdP`^g^o;{O2*l5W4Y`~jTgwsaL*j&P+XEq;nE;roC?O9P1j)cr%RLO^~WTK9ftM2u$PcW!G_ zJb^T7*j`*UB0}u2BZ4u^sai)U(ptKl2HO$|yBr&}*oVwe8fd(nX1;}=7Ixg46I36u zEH`U?Hu$ZdWNhB(W$LZAjlP@n5Bcs8Q|VXV!h9=F(M?E>vi;O0j}eOixMfC@;2T4-#K6~5I5QVAD-rVlBQA7ZCxG2lk6l@%s&ZcMc9%98Q zsJbq>@ji4iM4l6s>=m462H$3zJEvUKDln~7m)1N)RaHgSD=Ip|T2L1?-QsPZ{CRum& zq33DamMk-Q)Ezer8bWjSq3(1g-rOktw50&)kK3J$h}gr+AD@?fRc7ZiEZ+{U!@`pW z6+hF@)$P_!3YGFqykC>Vr<~ks2NA_SiP5*i(@l5jzXFjvl10+{p4#4i(zI7ur+i@`DcJHdw^>K6# z!06QvOujwVBM96Jjvht6OTA9%AyK*ULEC#7Qu{dj?QUngslst?S?)Z4Az2~!bTqOE zE{H~m0b#RXuiTr{hA9rCZG>aEhc+J#pfa01{4?TC<+ZCV5;u)1b#eLZ)MoM7$$%(m z_BPRb-2XTWJ6=QUOLIzv7@E^V+KmX@iniXNs>~N`ak7jalStx7vvyF+1%qC{@FAyltKa(~ zpvEP0QZVy1CT!2W0S+OuKbP6fPI4!UGF|D)S0Lmr z;|rvHwM+b(9@AWVYRQMU-W<2%+Wf6jB-sQm^2xc3%?fWUv$sUJZuMXdeahwO3O&@e zki&*biqU=hWy3-LHsL%})^PnkVwVKRf2vb*!zmKWufVFvX4J-MfGH2O&di|v)pj_K zrn1iM(L97}m2lIJi%8oz;N1dQPyfPCzI}Q(3DysrL+#M9Rie`=NsSK?&c1sJL zhFUDF{L{OFYB(=#@C4WASXW!RiJE6ra71SWP3IQU zt7N5PDj{WXt;9g)Sz~L1T3yI0lwei{){dSFIKwC6;io2L(Jcd~umwp%viN^1R<)B#nw5 zRlY4vNNC*c_@J+tbDkhM?Ofv^oU3Cbs)>9F`y28Asdlf*Z$)| zl+pPH_2HwAC#KgHAsFNvK`TPq!9mHPG zszw|%8F5k;r5vx1MyTb+Tkj-EMT`Y=O`USGSJc#W1s?t4YW|aVT<9p>O2kBy#|nZ=~Wh{SS>jQQE;#j{wANOHWRgk=eoDITF~a)}yY zRaPS2#@*jTPopDw@I84H**KjW8wjmd}W#)siB?Q-f!#u|!KQb9o9`sUVAzw8)GtND?L&l_`wY`zt{4??ztSKk0kARyHq zj>Y++?g?yhZy0`mJI3&hR5wsblpPJU*MZlN?Ln+L9fu|pSx|84-D) z)TSZE!6R`Lr?2Vsnd%RNZ*E|!igH==pZCYTtOT#47u2Vt-y|QFpqf&2E0AuJI(k{t ztCGQeL3DMJI3h^>f+Xp}JbqewHKRf7E=Fy_bEx)0C@YgV5Wm0!eRVym{e_-SXqn1J zv9i4>b39KIQisZ;PZ*shm>k7Tj8cL+j#%k(KHp*o9z*S`Tap$Y=IM!KwfCTzIW%O6 z!IJV49C1v?awaDG4b#tHw|SB3{l)y&mC^}g;q{DfqK>a;l_O&|e_7~i3&n;y(>lU~ zBj9ie>VZPhQTkf;&^j1}O^uzMDlMY;0?NDhFMiZR+@ZDfA3ET@E$;|DsdSIac@Ryx z=wE8(Oq0o&%X6Mu6l^XcGq0tgf^7@DI9{vty~l0}+@5b1p*2a{IAfu)!y5TQY4+hw zqu9$yT-s4txTS@|Ob_)9XO?@)i*ttCK%J3$;UZ}l0e*&vUxADR9-(CCTkVPci2a*B zy!e&X5xUDg^={%#+5MvV>S$^^$+31YZmATHeHmVgBYsS(`m1DXi?$4qUS@wz+@O>?nz*SR&i^46=~%fkiS z88wE+F0x)(a6BSREWXw2HPottCARm?0@F3{eZ~%p;wotNSdB~>>gk2uRU+_axKIjz zwkx)3c1yu+t!Acj9rP9P)!vRsGV3|Bwq|6wc=g8K?(^PL3WVnfo zQG{jd+IbaX_;mTWDyVJFt|wU^*F*ixi==lwIKh>W(Tr;{`YgUdhGH>hb4&LzP;Y-M z7OUI`9Tsy7;m&~JL()xdwWg9~;zy3KWlXcE;0PtVj85bhv4I;9N^z zKPA*+C>45Cd{=Lbey9FpNq>EH;HF%+sr5!fr8X#QMN?&?eud#EquAc7X{O=8kTMn{~Hg%7dO$)jmh=OH^Hdzn#Fe@}Mt zo93x7fYgICk1C@0Bl%8RCF6kb+MMASG&)hKDuBJVa#EA}xQV}gUIAl1OZ-mzn=}H! zrfAoxK68l!`AiY(<+44rP9aejV@uklawe}5oPQ4hYhY$Yy?!Y%0Y?kdSlI+$Wx{&~CWRX^ zGf*|&%QlfYP{j*hCIkCPb&;4SX&2?zF7dkfxn()s@ku`>fpvfN7aeu9^q$s^fpT9X z>k0)03Q9Rt^}_5q@QElkF@X?*5<8stgSLUtV{p8P9`BmZ}-Zh+mYpp z`6nvg35Ulyff5HsmV-Gh`Mys>4|AYJL`>p~=I;UPI!8#%!lPs10MuHSeorXC{#u{j z=vKlFbxrLYO&ZGD`tW-Di3RRg6L3NJ3nXL*Xqdki<}LHiY^i*M8)k=nJ7MO$R6aRI z{2o{~RAPB&DZs($l=Kj-$YxOfm!iAh5%m6x3zJT7R(vv907cuSX=*-7OdWtv&*jE5x>cfrtF6q2AJM zyy*&&W``^v%QUY=9hr|SzXn)omFdrYZQ+HJge9vZnVfIzd0!QkII!+g6Qxag_)oq8|>2svO~1ia?H`D})oj(7r@6Xmnc8ZXutn7J-dTxRJo1LG&$GRvo8t2F zz^RRLq1MI69~2S*zTX(bR+)1)c}dH%tnY}HBJzhS!{(Ly`kD3VZXS4TjF`_QP9MlK zF#AD)N}6s3IbEx(i~8PB!mNPET+9c^lpkWRN%uF2!K?LpzO8m81zjaeVU-Vp35FWa zB#j~a-PBqz$hYALV~{%QxQrN$+z9$G>^g5jh$_?Rwt0dJ%fSwCh3nj=cTInFN)Wwv zY~mSZ?lW4EEaZkkX3l0uK&FeNiR+LI^GsOj*VBF$w~}#fn)VijF%+d2EyFbJqQ_xNRah&26$Z&Q(&aG18!}6*BQ(?NwnW7t znCwWqCVfSrOoC9)%70sd_Xp57naM1`2N&X=k4EOoW3(Tq*BSD-!U<$N*@+C@KYN=d#2*)b^jp)agY_Rn-llbU9OPw96zJ9ogfB(-n z!g{`fz>-5>zO3o)DJr%x+$NOtdva%$>|F!9;(O!yB^A%0J zLs%C*scBy%RF=uHKq9+AQQl4j+cl^Ad90w- zw?iy;F34tar$OR7fu?%6aIlfvNg_$?$V5zHa{7|Fl4cJHyGAcwq+XbPb~^4^x-Cy_ z%$I$C0QTi_Zy&VK7VpY+!>wK3zsFlXofjG(1>OfB$AFbM7UpL3qZDXHo3W@C-{O~^ z9f?9&g=*j0m>^U~oTCE!8VGgcSkW@ADtc5 z^EXaLps^-x1cHlq&mHhq?AVbK88O9`Q5CJ?evBYk#gk%o_Ep5ns&RiZuP(U4pFU_< zn>(!bJFFlbUQfK&JL19CO2t)acmUO+IC2NvYqEzlh%4nR>s!4iwAt3`6~`r@msClN zycU_9M{G*7OP3chSBsy*ZbBD4onX+XYTivdrWEg}GxKAh&>(=b+0U9Albx>~u0CXc z8wJ0oIY{gfZRL~SoW@TNk)DNS4^FO%BEn&G1dF@b-bvCHY9jMWFQ7F}@ZObc34%a{ z3bz({FkPKd?S}|CgO%bPB1@j8YQx@z__3!117J&fFjvm_ub1KDO(qe!44ER%$d4lI z4Ge(-WIEGRC%t$TeeG%=pq4rC^Al-Kkx$mJb{fTklo^2@%7yac5$nk2agw9D7-bpT zajb)`3i!8$lQFHnm9q+0Z32FSza-l_)HWMB(6rG3{GoopZ=Lb7_*r#}Vj*;cd%n`;Zb&^jo;G#3 z`nCu+|HY&iWP0w>uj{)wbCGLFEn*g(;)YK@Ui+`|NU$>W$X`e zqrz&@$B|FK2rC}DuWr^2GX$-5L$Dd9M!<4!_hc=Ptm=*LdnAZ3B^V7~na%OmyP#57kC$00o`josLKagO{*_+xg!`DLRXrKtQ4BO~~_#>wl zNScZcnyOn{Okug8m>c+Ba$I*yaIoT=*u;gAsad@+@dOTk%hEnIPdaRefPzPR6npj? zO5*L)-W}Hm25d!0?zBr|Wsc>0EYrAI0IP!R)PmzY&l6Q!fjJGVUY(_vr*A+JyTwXC1*7AEi!l7gvz$o~ElWEN1aUneZ`>l6 zfRk#)GU~^o`lp3ZEeWHTFq7nki|6@G`Rj|5-=`-N5D(hJyA%837JKv9<>x2YSIba| zIU=8nk^VT<(OqsL#Gl02<==R^E#ru(wJ1EKO1V=>g~ehYnLxPAm5p{%Y@-wZ+!x zb?K5de>^a9WaW_vm9=esG>zfr{W|8~Fmj-=@ePaSP36xc5_SuA6KXw<@FJzToG#{m_KM z5!C0P;cH%i;|b}$W7+slE#&7eLWd9h34}TC#XbL8nuX{AO&Y1M)PJ$4=lG&=7R~fk zILt3etF)oxVwdN|$!=F(Dp33A*Lpk#W*$NY zQG3=>r|3+FX!=O`$Iz@o8SIfAmQ|X|{5acHv>D)RCE>{62NNl19bQ`mu7O{{>DHGp z8P59^^tCz?y``5rrnrXL4*PaaV~%dsP*QVBV|9nPwVa_`)A3oQ!tQ5VZ%jzQv(&?! z9ICF7Mg(g|TO_(3tH^NUZf3o$`SEfG?&JZazP>(p&*F1xB7MB?A=K+GtK#J9iLq-e zbE6=+wNSA)qBCsYp7V=tMuwkLFSd7}MaXaNuDD=+p?8LSsa+89<^~H1f~9_-=~OfVGBuJlu*m7_KuO|r!$T1 zq^~B7AM^FuJCff$7Hbpz{ApvCjKk9`Gj3P7*I%=8%)N+^wUgEGdu;dyaIb`;T(|q@ zHx=RL&q9TcCtu$yuGze_+~AAEQN*Sm$NfD$k)HQ&nV#y2h)~X}|7kTdWX;_?G4by) z(F0AhPH@8mcj!du6YeLWbmI2h&A|hqc`=_Mc7&jjemiQ3w}G|~K&p+GqXR*qFJ+du z3h-4Ceu4Oux>rs%}|ma)&y+;h}veY&67s z4Nh&`5p_UY@|Tyak>XB&F#lO2qb|SfAF_ zglt0*Mr{(t*%*hE@`N2}-XS(YyEeO54Q8XZ>sj2}e8o22a)qmgQiZr_M5*HJeVo>j z8j^BO%a4-?|7p=#LxE?_^PBdPvheM%av`GcOnTlPu-!wZaK{Yw599O&fwAw%Dz<)J z+|Md3>J^urcnkP!zI=K&O^Hpm#zW7}yB(zB6Y?aFsf7H^MfF4^TsG@9qWgh@)l`Yi9MCu2#aIrx$GlQKgxqsSY2c(1<0W*rJQlAGoeE7y9MvAVJDnZy^COZge$~rs8nHA;p+CBko6U(I7NOgZg~hRJ`V^PJDu~A5J0Ln;z9W-knUS-?4%k1IGi9=? zD0HhPV+;jtzpXirkmX)*Oi$h`jJah%b@gf~iwvivBM{*=I}UmdHn&<6=58)e`w^Bm zSV9W3jpP9}djvde93j;@+A%jEfBuausY=-$E(O@$1lt5Htz%Njda4J)jpE4s zlrmg|s{BDm6M^&7OYWRK+&n&o;scuo*roRd3{2X24e?@cGIG4(tz9UW+C%Swfco?0 z?t+N#q4c^0T?2YRc_K5lh`OmmXB7zx(+`J+a7To}WA&9@C`S`mN*`c}O{*%~V#E!J zj!22;4K=gQmjea&>ECU`W$()*VKXSTM0kAo^gK8aFb*IXXIQ$nQ5-m7`|XMrw~=A) z>H`{La#k>y-dNGmkszQ4M#ge<9qX9LLYR#&sgUswVN>8P0wRsnyEFLOUR26UWz=?y znkEm0X}(M9hW)J9p7CP!c<+jTO(q+pIiIeKY4!NcA-C5l3|P44wV&2um#4JrlN#KT zXH;YBY%KN3ovVl?grIV(HROzp&chGaD=Qrvam3@y5kmp5BX8y2pYuoj zL4Tk;UOz`dB#@Fj1-8}C(g~@BZMC6rEjysnZ|Zu16O|n#03YbYxo6GWUEvvw+fllF zm~#8MpqzyrV1i(`hQJk+Mpw92G}ca*pq$;y?FxD8ol4aY03`J>7i@wiPWtAl5>q^= zRw`VRkb0Tl9UDq8dMcFp*;%3(pV3feqr?b#m*1GA1RjCy{h3ViPlM zwmSOmd-$;7vD}wPxDz9B$-*77d#B~s9tq>o%NAyE=J!6G;1(s6Lp43*{&pn!;0Rut z7D%R{!+e{Y>;+yr_6jKNYEglTb^iqe9`WZj%`7Auy8X-u zij{%K^X$^`!`YU5KfN+~CCDY!tGP<0t}V&fv3}#-Oczj;lC8sOcvNGIB1qd_zZ?T-dy2fp(%fJpwK`%qZAg!eVdVbuDYIrEtyCQI|2rHh0?rCTx&aO7K>A z_9dzB)Y`HSyzYA>$0WaRp~2))Ehxvi=P&Bttw?Tet>B{)jYlevQcUByXH}sLo)wxD-C%5FU$?i{*?%Y)H|CWHLZWyeWpf+MC@ls7G;w89olz^jr zWasB+diRzohoVjVJpg22VVdPa1*FWPQ8;w#w1ZZ|%}fKt@wQuMHd~FPsXJU=0xH*` z3XnV^d2{l?t_piW%+JHed5HXX(!6u~gmS~*yO9=tI*(@U`uC!zq#bOIZ}gTC!uEdy zRxS)x)WHk+f5q%+qMo%PW`^WiZdOs0WwO{EwH=~6UqHL38ns@z9g7#Ox|0g)xEsh(C}D8lp>~pOn7RLwb3oK6n&u7N>4uFA=UuD@6mZ_8}hIrBa*$8 z^6Sq_S3p&r)4L)n6BuDgZfF%Y;74mB2`l5b&7{upCWoW4Ml-ebhtX`+C@?(aDIs}1 zJxljD$w1jaD{K)#cGp#zV=|t#`Cw_Y5JwRTAVx94g(^4Rr3brpwXHMyoOyI)(s0busbiy*|1a$x$i@bvHN#v%n-Ds5c^&x~Z)Lf@oA zoUOA8y1&@ERcHp+vA~q+eJQy;qcWK(W45k4wEb+STJ3n%O=&$k`ePg~vHkw>zGg(2#fJrA00b0n^vK$$EP~{JPVB0t!3Zcd*iXDPhj7Mk2y6hi~DMNFPGhu z7}YjBy`vU;Q(L^Bxv)=`^>&okrs z>x<2vNzt?UG~~37o;N29QlD6IkxT3}^aUHA3*fl9V}8Ksc!}-^+t2)7G4KfV$cbZX z3I+J;GfV=t=Lj8}&GK4hy6I?`P9&UlY7IzR(_|RScgZXWGKSy8`&4Oz3JzXnrQS9M zL->3;6Rxj0cPcCui|C5%{I(3q#a+qWBR$9qrLBFYUb(`{bO#uxtgF?HVFjOViP6^e z(yDAW^+^TeoEWedXn9{OvK1o;ROhtnTBSyjw&T~@7YY=iU88-unBdcXbR`kr{VEmN zJ4%7F@{5u<3tHDeOHj(B@PMvpiM7#^oJ}ScMs33P1vGXOg|x2eKtDXyh<_aSpb6{F zeF~)G&#sWLV`Mj{@0Eq7QPsSZSvd{5XKoPB^u6za0&%8YBAGf3(T8%(Rn`kek~e_31Kwkep~>`I-F>rYblM#cU1`!L zuIr+n;w2G;CCMZ8U?Xu9(!zEZA8w0{ux>D|VOPwoYh}(W>FNkg$Y#W)a!rWO@FM4^MLaFlKhnO58#pOxDsqq&7QoeQHi!J zqva|oQlMQ5F>%Q+JBk#MH5N9QZB;7QeL&)_UipcfK_4PCPG4A4WR-$cQ#V{f@>v@e zVXfr2VXAX|kwe#x?d{tb@#r78nLf-h!WpV-=3&xqoaAJ&F}~N@>5>jHpKdaPx8>_6 zd45aN@CnW<{0^n|myTiQjH5F{LdV|+TO8E$7bcmykO)|xjf7>8N_xf@*4aH9mdTlX ztea2NC{T@}$c7YoYT`7j&HTa5Ve;YlXUe>aB;k#EtwW zZ5^Jg@}8!C-X$Mymy+jNH)`C@8`9Q!xrfdY{T;?HuE8`2_}~##$y-!<&^w^jP_lL9 zsFF1yB@>~EeamO%2}ae#Xvx8S;iLwp`XVQD;@XbS+z4fi9aAH8ogYKY0V8{wO_JESu|^@}L9eI!RpHFcc>&7Uk^2OcBvyIM`KIK( zvM44D3BNVI8|E*6L5acI-$kGzj6YpCJ*iY3=}jIVYM1`;gn@M3=bDY~a_q(AE0MUN zAOHQt&D5;58<|A$=#nVX)|dyL#M5LCJi^P= zr9O&>h+V@`M)i%XAQIlYiiilney!KL(~on6rpUMH4N3go!zL04G4`Gi4z#2St**_( zoH}gbOt^3d(i=Ei2|YTRx6Rub4zs|#DN$nhoZKUWkD$df3T_HH4iM5{XVb@^WS?*T z>;M3ky-bO9?eh1Q7Qa(ufx+jHE94QEb}kpVH~wr)kVYu+F_fKw)bX~Ryy3jH9XF(B zEY44Aca>%7{)mfWet4CWXdV$8rt zs9a2i_~`)Em_$I7k)aHde~Ki z9g$q22OGY)ib`0=Sfu8ZhkakXgUWo>vy5E{9_JjHJNL#U=ehWNZ+f!(b9i{{Mg+1; zxa0+({)8!6Hy#74_)ksdqt?62B04H8Ib2#OF1YNHqwMeqC5Q4rrh=0r){352I4jdx z7QaAX=QVY4NPuVj{`JpcViSDQL@hV7G%Fs&-EUEiH{{v-V)J%2L6l@ATt7&phh zf{TvRLb3^|c;o{_0Su&p*#-CM!1}hfOzN*sa-qgbYn^?jA8Sp|)7$H4tJJQfKcUNp z;s~2Lk8OE1bz&o~pa~m^bhpRc13g{PQHTNqM0}5f5BnK*EGcWn!g|;$OMOx33=uHI z$PU@<{gCuZtWj&`p)O1~E+|q57_4u|mL(yS8G3AR;z@Y#rrR-xt=1GRqleCQ5!BB^ zs7Tx=saFI|iwBJ)!LDr8n9Xx8bj-^KU5vSxDRI2qGTm@t(r~`S{CFujp1v=Vj>&K7 zScNYZi9Au?;&gps7`akdvwWhGE1r-O=2N-*Kyx&w|LozBA%zrE!nNN-^K%T}x3Tor z0nOEAsUz}+Xp9*oA)$X98R%r7mu*pRSR3zggf6a+Y>Hy)qy_0e+`>B!%xhEC>p)Cz z-}XMp?~>6_%5!*}Eo~@y8Vs{@;VY+ZNPm?n}I#)(BlTLqKq)K7VilX)_@Cmq}+U|UW;y(*TW`VuCNAZmYy?0KFOIk9x z`F1HA$&T)KxI^95(mS7;DuTab4sNfNFjg%geBiVF=2|pj)HYhvO5Mfo1Bi3@h1bc3Xc5|)VkN10mIHz*9&sTUl__-&ig)X~6nj&o& zt%<}1ykGB^locD$TD-oo_I>EFfbyx*g53>SpV&Q!KvI7WI4N16F|4?YWG7-A9QqLH zEG^u`%T*3fox8XUkE2is+UuFBcj-Qc=iwa$C#?R$vuo`Ny7}!4?T$J_5PF?bT%AV+&Ogha%d{*jbzb{r; ztYK+ZE%Y?pAr*lWuZpL%Coe?OIRIgN6 zIfCgleR8+M_GI))$%Eg+_X8yDR0|=gbn-O^)-FvQc{OcZD1C=|Cm)d2nsj)l+!K14 zd3)shO7e%%Rl#+mw@U1W^w}L3ADOS^r}>~xCZps4e)W+vE6u7*pS9m0_;80kS6BLt zMfqD|`j-NpWR^nZTclH@d$xhZ=_udx2O+(H|4xuX+Hf*FM-cKFurfSyP1$Df_;(k^@Tr+F#%f{iv(98iK6+Pih+k(Fq!KrtgDoXfJpW-@FC+xm( z$^kat(>g2im*as?ha2KY9H?08Bk1SH{NBYl6ULlXV?Kq#(_Z%p=3W%}a@oYX1xQh) z8%d{lQV|%qIA)+7X*^|}pobdFd>#4*h>U!(d;R=-s(yszAch-fJD)awQ^pDt>qNST zX;Eoa*tNp0%z?}MOVz21>n-{O;V3!-kLZ4>(hJTFIkeJAS}5&zD#iBbwpfLfF9{bq zMxAlH{)T?Gu?-kgnPw1gnR!+2*h3|svkfe55q6a6k2p0e%BiDGjp62KZoGm#-L#He zFNMxe&<>r~WMxAfU)lB8ADt$;}wvaE0|r=VIk zOO;dRfnap|40Ki;eK0p$HA)dbnTRmOTw(DHSyrQd|I9zN56Fs=^H?}k>>Mi;fS-)k zoS%=pCOXf9Pgr=35Cy`O0D<(?gmOJ?;WU&M9Q&^2pTb=aS$x%YjP9>wVxmg(viq!` zp((FUG3xp)$Lt+fraex$V*~sB3OlIc;!Zu*V)=RF)a9J+lo~!Rbm+m4y4pi78_S*{ zHC<}ijUlqis}49lBxcF$GX|Syp@~JX2z}+`XSWUG2Zxb-J}pqSZ_7`!`oU{(tLn+C zGthQR zmrXhcxpG%&w(kJljvtzk3C>BZhoK+ushPxS z-+`gyhpSAexTh+Pjz2^Zig}V_CT!klTm0Bf-Zwz#Wz6Q0EhZFQ_$K^{k7i5Xtrbc$ z@`&r)wf(0f*+~`@z*Z3E&b*%YJ;en;HwN2I^==e(U;GATrj6Vm0v#1knA-z$|M`;K zg`58?rT%T}StS=p7Kp(|1RL(%PaKky$hW=wlPVL7@d{tIPgA{8Q3{hZdNnhMf>^;tq3|*1oxb@57HF~7$Th)`vdpq@{t98U#qZfJT`jc6 zx808n$Tf!7Sd+dgXNX_D4nF!az}Yo+uF)&8(Z=9lf95$;*t#hEPN@f0>JyOa0^ifR zCgr9M^I;Y~t^&rURrp2rEc4dwA9~7-vZ73pqM`$YUXY#5AOGQM^o^44%R_q?p-8ev zzITZe4`LDuBM2~g{2STI3T-3LNNfLQ*ujP3V0+IOGJl^J!e{6IFaR)pL0D^~*LZ(( z)#;I|6emRONHE>Msi9*(LH#u}y?ze6j|P}iZlCq#hrp{=vsT1fXp?UA4Y4oO2FUgf zc0JM4tJd>fvHuM^ZMbfrg@Z_+ylWrpG>}be%O`4a+9qwKG99@Wyy0>e=y3GP9~E%> z4H|Pkx=^koMFR4H4p)Cp??Hcq+91C{5a&Zp?}m@F9cEZm2I7&@`$6~w&|;aQE?9|= z@Ni;V91sSN7U?QoGvie6s%5Y(1NErpNwa<_wJ1Xj92&9qb0!?hWC2o zvH15Sm4(;DZh&F`HVE|d1&`zSo@5D7JsRY{EURyO$VoI5`nWYbS^(U`KXMu7+aCPb z{Es**`L+k0g#7z|n|u`CP~Y~?|1>{tEK1RSEtp6`-fMRakCHa2=z=7;c8ERE(V*hN z7-ky07?az}*tawcB2mb-p1?b9ykaw_IXxnU3NYqJL*juRvOsmCmduA+VOALKxS|O03iS0A{LKcm=SF4R z{AKCzElAf7D|%CFGV)qs+>c)JaZ|}D0IcXEeA@@4zwu@Nf^DN8Ik>owbO97TZvF1) z72?F(FKB5hH1NcRe*B(a24p!gUFpP7+L(Sh-cIi9z7B~9RwDokQs2#F?0w0fy$LH5 z5PzXyX+6fcl+arwxr~4Y?U^pSAzVjcv^iX*!sbt6eY@hpvw-jfQv@hIg61PT(-o=7<#NQe4bZ7*stv`OWmu#Xc1fz9OWC~CfN7A{)8VX zMNJ;1#nX537&4V4#4?smXLi0WEqSD~ZdaKpbu;i{)`+@Vw`%&38G7?v7GbofIXjgt z3TGP)Zja}1B~XOONuAoPNP+Vz5&OMK@LvDNl({F#^qYroSSVL<3w1tsl&_j( zEdQje^f?x_>|~Jj?Ct@1dshU{yd=%qba*o$y{iF#i_{cvGvSBgO!>fg6<8ySj>=iC z2er;WeusS;08A~+eMm@F(#R<=4Slkk`4xU5x;@3dV18l2yX1#kM-lrgG(3CM_z}@Z zY!Omx*~jbDljCa=(8&icqDZ>m|IRHykZQ zc3i$Kf<30_4rE??`|=6g__nlW0NAMF+Z_*=K=I-=*d5FXj`4rCziR8|PZ%!spN|%( zCT=?9VD-p=l7Q{}>Ay}yS-uTE!J%89CBD_|@Q)&f(=q=cNAgdvZz$#kO@F8%{X;5H zFgWWkYW^k_812iS>5TnF>J!cX+5UeYGjjh7>x?GQjePw$R~$tVtiRzP3typD#rxr_ zEdQS(;Xj`O!aqBw$*)K?Q+RGcNV&`SVc4pF-OYYG3? z`SPC=_5WNKf`4s&1#@FtM94hK6MJ-jkqMm0|Jv7zIv8ZqJ_5kZ4|{t5r)2KGkXfti zm51XU+Dq)`gPZaa$2)YIAi6)>M{WUN$5mEjK(+tH2>-jaX8aLAF#3-Sk8_+H3iDlD zenbA-p8q>I&dGmyTY#H_d~33toaGiW>6WO^8bt)QG`VxPouHftqQeX+PIc0rRUK2= zVZ>qcGyzwk(If;1PJ--(rK1(rTc`ccKb@ZqkJW5CE}mXXDomH{%8!u zbSyUcQ2_EZu<`n;{{SD!v9$XKRnN;j2&rl;nq@lhDKnKY<; zCs@en=0J}yi#;ntYWA?kfg9Q7;(l36m=phI%+bj>V#8}-Gb^yCPSENZ3A<{=xD&OO zBSVAT6LZxBF2XnOs^V~Bq>jfM=K;WT&K;Y)DaO@_-ghNp)<+2}i(zDgdJz#pjHKRD zWgW`Z%-Py=noQ%?%RG}Vx5yvpw7j|HtLoy8rk82*(jJVm{DxNI_|DY}-~;bj>nC4m zynJ#uZ-s0mnn1~=5nJ7h{|l6w2P2!J(1_dB+?6Zp2!-aK&Ay~Gwds7$jp3s!DRW`> zB!Z^x0;dYD+t*b0Z6v;g$-N=>Uv59ZyJd&F#$sOMon`;` zHslt}VZ9*&5&UbTkf&KsK~rS2F+te4B)w$*L)5pYr;>k5gXDi}!}z4slb=EOM6KTn z%|SW;wmrm$^W^_6Z32HZ1H}FRPK!h^N&bc|I02MUP5cJ}TL$z$U^f3RycGWb$lU** zMdtnoTM>9=!M`cjo^bAC`1A%#lJGl-E>0FLJr3Og@KvU}Wy5?%9!@gXM99PxwQD~^ z#lYkf*M0tucms6NV}2LH!wso_qm)-TJ=P{3w+iiz z&nP7Qa-BY!iR|(x!+Rt7TgIrsdII=n#Yy0NZ~(mRyffb12)B}meI3T#SZBw^x>J7~ z4%#;_p@B-~3Z~Cg@{2KkrR;m17>f^ird-GvTT3uv=?$*8@?_Wil)7veEK0nim?BA( zEbtst7t#z=h|`V=D^hT`%9eJuTXx=Tl zLya_76mn-8)ll@Rz+nmZZ|EM6r(tM#{{d5Z#Xn29wqdO4^rfIB4nV_Hp!SA?x`e zx%z~(5G9etU-t16*@T^^^>b_W!S?mQY5ttvlSuYL(O9EOoH!UlZHK>=NPA8>yN#1p zabXLk;?g_s*X#9-q=r(d`JQ*{_4#(!6EI$e-rRFZ-mhl`$esn2Swr*sK*q$;nwP52 z)atkSe)2)q?-BRWR$>6~>BuIFyaLKDZqfl5=P<`-dj<_orCr~#rKZZK9V2UUA9Ajs z9rKe~Y4%X*F{+sESa~~?VZ2)5<&rrV(~ZY6UdrLok3dR9;KgG{b)&}YQ;9v45n3EJ zc?5aM7P6LZAnB-U@^BR`+OzcjTJdzh-7GivxO@qCv;2|^Jl&nI378$!W?m2aLUp`i z(T9GLweS%p%2a0LkS3PXu{8=+1OIfqCNDf@%S-mBS8);oEJ5y*Jescb-O>{3o>m&vwtGm1cEEj)%*QEBXpiKxyT`1Uslb)x-SjI}M#Z;%Oq z{)`974@v`RE<3{heEi1><3RBfOkp>}BwWh!7E1`uRA0PBrb={_&`X0@YxfCZXQ0z@ z6Z<+pGp+_#seYU!fg>p;h)ccvt)#E!jWdoBQWUzk&WSBd>^JD%E&fgsNWS+MR8Y?f zr)LX(yy0pm)kCbgJN%6r!Y!mwVI{Qtmj*gk03dRCvJc%-N;S_nB_9hA^al;0Wb@q3 zglr2K|CO|(5LX-?@!jf-PHe=?0QgO?H};JDq|?gc@DUa=zoY+y)rtVCcZr?_nfY{9 z6m30lZTaPozu#@qjGt7r*)wy96`tsW!H0R8hl%x(Y|R&t6?@0N5JPV{l^4#1b;Dbb zE zsH)cqlWG_S7XY;DF@_<6$frDt2}~d;K8x6A%Zm(fB(E37Lghv`>$wKdyVq7wqaU6% zaS#6LhmlW7ZPFH@5gR*0X*Do&j80n;Uv>9M=Dh_T`kiWqDg7yRBiMuqZ=)vE!pd@g z`X)l=9p`?IMtj_8$pa--k%jkD0p~70o_SWdh)Q#vtd!6MIn{>%k$sJF2s#(fyo9u! zU&X2m)N&>?io<=R_OhI)xq)?daDVbux3@X`#JAI}SOHp|C=(1eHaq}+H=jAmsb`DF zOdpQYuWl9aJ>hy?Rq73dku+5kpSQv9Y9V!6S=*fUuB*?_(eVr;!V7LTeatUA$jM}a zo(TIr@w}h1iYD59xe!?LxtMO%dSs9dQ#Wyy8%B}(7J&_|KFzL2A%UFCbb`g_LL zHa?Hb2O6vkBBp1z4BuE6*?H8`y9uxhV8IA$qVFH`#SR@H(t|-o#uN z9C12w%js^sABCCA|BCdKxeNUn)$*t|*1_Xqszs0rj@z(S5_Ee5oCkV%Pu5rST#^Mj zUEzuJ5Fo@yp8?C`TX{;AaphI8fxxx+Tv(`jOg+xc=L3#>(;<`n1wq+B`|_KR&YH6! z98-4G1M>8(G@Y>bdzQIN8(j7TrmL7Twc63)%Tk9^F%ZxguB(1}y=s3XB$CcshU6vB z7Q6f`61?U0fa7>0-z`KuZVjqqdu0O``@Y1taim|U*=ollZuT(>;n$RxsKNI|iQ2|i z-}XfK$ZufxG7r75WzsP2h5=al;7+sfaS^12Nt$oP!UCDn=W>BG9MNrY)KVR#W$o>c zYK>t#7Fj1~0sKzwO~qO#hL~f9zx0~#mwdIN;?pl3ksLq1c$ReTeLj>godDuhZr#nA zO{1h$U8Qk+TAfrR=$+y|zH&HZoLvD2nsan}<7DDNd3Kx0>jiy-_=$Zzz^!-!0-Xi5 z^&|I%$FP-ZuO95a=MqTde%zR@eZ|sj{k&^YLLuchW8b3lkh-ivH7l>TVL;IUx@6eP zyugTCJmJ3=tng~nW6w*FNenW`R)u4?^sI#Y0bzRTKfPN(Zf zqlzaK2*8QvTJUIZQaJ_~S%`KxE#j1v_$y>r4# zL}S6c&#L!Kdxx8u-eZA8AsD(FzND;H|0S*d$oHi3!W*VhQ_ooI!d0$tzn5Ee6P>+m z{rs1m#?>n~()_Je^_ZR57dFgPwkeY_3c1?jt5wl5YV9FThCQvkMORWGs^D<}9sM3u z;{1r;Ak3SI);0PHz)ztBdk3`|GIX;pRTBaAM`g+clgK?Q^m*88PLR5q5EO=C50Kq% zGH#lR*>3X*#zre3H3K{MSE295+LO-AAaj6s zx~GT+M!7To903nr=)3Pt(P<>trdh31!V?wSYrt8n87m2ui=%f;aHh^Q7^c1F`7$qc z)pHY;ofANTc1sN(^l0CcGqEnT@S%O{ncy~B;X7Qnc7DMLllDX^_Y0D};A-OF#l?y> zzi0gZ$Cuf2Vz|61TWmg2#h|-);s5Ho#o3>8M@* zUn3{?YQgxDl@y7@tG_`qU@_%1p_(ygDb8ZV$-~4X-Y_~c0!WmdLavoM-pQQ;ce`42 zgfTbS358Cs;Weig;yb$qeHX!m)YM`fV6G*tN8D#Q?2%+x7uts`!|3*cf2PyL+SNXd)v`EwTt+Z}3idk1OE`@lqZg3$Lyo78zLr z6t~J+=#}|(jQ97~De4d3vdL~P-6+-ioQbbL(xqXnDElv0SKYg>S4x|S^yA9pxoy{9 z<`s%1tAbZBBdhu*8@gDuSF!Oj?T0>+GEGFENZ(?fmUAjsy-YwP?aoyuiX2!jp6$%E zr5N*FV*~;ww$n2orGew7Re{7P`AqM$oS&|4KYZJnpr)^eyBi%NLR2kY(8HE!H|EVb z&Y)nxqdk}Qp)fy;A=DKO@|qKPT2|L9w)X3X6Xh z;%3%?7WF7VdE%#-k_iRRhq=qvVjfQjZVmL>^Tkh)ZI%<2rr*}e*|4{;W==<&Jim$) zZ14>uv=;7m>zU=D(xd>IqmM#f=^Fw~` z2f{~)x@b;#H_tu?IArZ_9AVx^4UnV!$GRy!>$;!yqipHC-rF@X>)r3Q=szr$MmHz` ziOYF$K=^h%oudDCjRHq=y3DrO9M<0fJ1-vNY>3d~zKMp^7jk_==LTX!L(Qpan`;3X$Ij&9r#jy4Xk0JpJ?j#E@67QP- zWse*IBWD_;?toHFH6B)n!IgUgUvV%){>GvRrBQke>vE$9@OFD#MWXc)PcyyZiv?KL zB^dqlzShq5*v%V=q zZ%YD8E@qsH6L+NQDp4G;84umiqvvs^CNCcpz0Pj8b+-2|(bYlz6}O9Y6t#(HD5CC4 z6n;TH!#Sb5n`)C&)DYC94(D_H)xY9mM5e;l*4EFwYhnIYRHepr)xD27a+~X99>UOzGlB+md2~Z1|kEE=G60NaPfku zYV~k#5zc1pTW1R2WTkFO6UylxlF5CYjPG(FWon6+`SGHyxN%VYw!y3CX~RYQ(D0}T z5^;ojqSyOr#_wYgC;srI*H{yYysxVZ-$0DO>8eK`8!d$7qT_xw-}aCtD%MX@SJg&= za^qahXTjlImt}8-NxKC0YFR@e1our~D^Ini+T^!*SCMr>XPBdEC_Gi44u_bBC6_ zk_;SDxyA9_^be6;e%a5*b(hNMP-RsI0=67e)MWIbmfz~KR9eeWuarPR% zg?d<6xWAmS%|5=vW18;O@Xlgwt4B?xzCjN}WDqo_+saev_<| z6}r#2);jjp8E0bDf_Twf3{rJurj3ZGCwxZU~HV4g? znDVbpgyS{!rpkupnZeY@Sb=`@yYtUtfa@Q&8+Es|Y1CCmzhU;lH39?%AAVYpy0@v( zq9r8b`m5(nb23B@qFD_dMKRCm_I9OmGik|n{465LjhwxRH3ZKo)Z@(AQSlzBagqID z>R8pQeog%R?Uq&;iJfCN&yZ5^)seKdsOfDP5a-q+u2!3*n4c48%w=W(Zsy5DEXXxi z;{2st4G%w&o*Ii_1E-hxgGZ1LBT>$Vavt{wNi|YSD2%u%(mq)LmY~5=J$yMnYU2eA^vM+vFuqduptfYnkk0Q*V9O zhR%CVQB~s<(j1OH`QTox%&oefhd=2w;@QUeTH@Z?DKTdghvDddHxoEy>&louTAoad z*49T)%z7y-bGZ^;$yg~;#M-Py=Kr+G5^|vQi(QAnp&#R@(>_KxQPxD9(t5y7SIbk@ z=spu-0F@nuyDY9HrK}mRUEm%$$IcgQMjEgG=|uih4U|F#hvN)#0&uqOh@TQ1F}1i$ z6HpU-da4UVW<^Wh=oNPq%lcAE|0qw6k8@1Fn<<+~@e-^Fn3t^%fq%vJRPcd*!phw1 z4f`U109C1gH*+5Px)v`?0&QPBKnWXbT zQM2mn#wj#0oFE@nz$_j{w?|R?xTuEjEKtlI^G2|!9Y|` zzRKcJ1+R3cAymFYeab_Qfr>evw|SOPbsdqkQ%UTVo!MT0Tq{rT)sEj&jeYM0FDm)1 z1kWO(wzv34t{h%HQ@zuy)ojBHkB#tIqlH$PzPdUKEqC(t%c7yGK~QAZ-T!5>UIzra#W+SeA4 zR!5Mk8rJiYHq*T!Cr(Z3{~*=Ml})+9(1zxk*W5beDsN*%bS(hbR2J6l-=Z`z(#QP?-bd#&)moaZo~&LhnK?9DF}sw!Ng*Rbn$ zM?u5zCDe}a86$h2zo_>ONM^YIa)EQV&NuRZ!)^Ota8o`aq_?o#%ny)tvTbKxnAbt~ z5AJRTAfBwJi+*LQ)>*uy_XUK^%e@tD!eRj*7NlbPNVn=l3q`F97?&FP5}gIzZxuAB z#OBC1X` z@4oDvcY%!F5uRp-x+=-$&Q?V?4mBp8&#po^yKl7g2pKab_r`vMawQB=(`$wMD=y_M zbyOKUH$T4&w4}SZE6E=19rzK|U)*davm!koKh^K}-buvZYlZ;MdiW7w>4svB{#&5Y6l#T(*SS#3~O zF;B{B6;Cn>Cm3xQI#QOT6Fs+UaT%ksB);1kzS4Is5f397M%mRQ90E6->*W&v)bbD0&< z>)O~r8pCV~a6*g~9@Z_rSFlEU2wjsgeD8>*dEum-W{uN-P#2x?zmA4MA;6?P!O*vh-O;e?XPBR)Gnjm zi?u!FX2TGykdxF(kx`c{2LP2M3`rADiTS!S^4z+uKhCB1aD*#=A71Avuf>$P;a41A zQJA5!3Rfv3-&$)#s zWgX8nA~H2k(Jg6ITc#MhuRc)BrKfvNJ6C>5TzJ_9+9u%bGHa~6XpY^z6I>@Eu=yCJ z08b6zjxCf0q?Bf1a660>pWk?>Ci$XiYUP&C;zg$vj<)ua|gApJA=(V%^dl>HMN4*VXXTtLQ;E|657&Ybbp} z-9*`1tiT3^kDX7ZOqAA7+OB*9UDwzt$|K1cFnwWc)mIinMuyz4Yr&vfA6xl=Is!4s4i!PiY_GD>xzd@FUGTZ47v{*;D_QVm{i_@G8>!}ij_d`T_yR5%K zCCWEbR{4vk@m=q13v}#o{e>RrruOu>6DfZ{S|mMFBUzwosg#EA=Gs1xkn*E2U? zIYX}Mfu1TnAgFh+2eu;k68U7cY>WnT$iCXOC4&Xf$#4QLA_RMwAez@JAFOaP=3o-Z z*DVTMwRzl0=tmKDgFQSwg`AhZ(a@2bch#7bYf#{zO21j4rDW{J_=VS`qg?y6>rI(v ztz_cOv}k>>B&5r@`6rD8MPS5({fBSH zpDawfO;U~rZoQb)C&6%csZ&YE3ilF>*~I-W$@@*rz-cFWyr~Pj!+|9Z;S(vu^=Szx zV2er~X`V_rZsrpmjW{RHyAV!@ql|2$dH}D8B39%LJUo9rWM8pUzYf6Ce~l!N9-AIT zhtAN=VBI;}-6L?{Ox_TiY8)CJQzL-{`hl}}Oln$-Tr8VhVMFh(GpGM5{7yC4BAX}H zm#_PacMT~D!N;Gm>UfHc>YX_(Le)WH@uTDH3`68BT(s?CZsV^-du$+_IOn(1gYDS) zQ|`F2T&TeWNEERbg+Ilqy`v%)k;_U)V0T8|Flm1+F({jt{Aodc$(W4BnZ0913#Z1(c3C zY&;aovgg^5{($bNhjdI~Ewn!RW2M!FA3|b@8LD}qp31nC_)EoYW8Tk<0UaU7P8XXi zu(L)M>s-1XiBi8DDfKS3j1@z30v*c>1Ia=R7v4YB7z13OrHSouFZt(9{teD0q*`N z2@wyhnqw{=Se%pNgg@VpB|gk1@E4G^;}sMg`cQ?VcEq8{+t0MHevIWFvXMMlknt6m zTEL5<=eOnXL!d5ioGxn0o7C-;NsZj9eaZVeNrZZ_$Rm+J*cD2r8q90TswH%^3KkS@ zFZM1{1G}vn=DOCv?L4_Ec!E5V8u9Lkr;C=8meVl4N}21Kwg|}1{&tj7DPO=|MQFk8 zGxjYBZ*jot5Yda5c0y+}d=lxsCXLZQ4?Yo}M_n39syr{(`?|V;xvjwl`rwR!xkoo> z&9JO(Qu&Ug9t3W=z=@VSY2LHYrKqd-^Ex&k8F6Sj*AsUm)2%M*iqNYfatv{aA#G^z$+K3W=u*} z*6bK0xPj<{`S=$+dVgg z+8iI|tm@=;?GO){frpw`NNuO6Q{ybsPzWWCwM2hagtLCU&Z-;0x(qM*5Z z;hq(+!x349mVUpU(H&>nNlR%=Zwxo2X`T^3jE^v#JbT2{uYkeTa4Cpx`73*XvyQ)w zA_7Cg$~b~Jwo?|)dMHZL(*G3$w>7n`=F$47$+Py&HVhA%KIq>3&NSDlfviEW&?m)S z(lJuQm;w5lu^0@YL^bQNeo6W2MT_aO0Jn4+oms?TVJz*VQq$K>{2xDRn~|T;Y0^p! zRJcJeupR1mEO%1*wPwz`S5^GH+11xaeVu;d%_EPzuD#GhUnq%ocE9ghB^Si3|1KUF z$IC;In;^!9gTY%G&%f&!mTlVv>NzhLk)_9>=nuo&LFCiWr+Cd_bcCoGmX>jc^J=Qp zI8wWYjm=S6DEkw|GCr}9|8)J3LpNiVtUgxgFU1~VnO^X)tn#zKx+Cqx!x0(lDk_{y zvuVH~TKsr3`O9lF!XNz)u2CupN*jf+W_H0|l7|?XRjaAgdB87OxXU)4@=O6iUn_%k z8s?+SPqY;5Tqvu7QAmP2@Vk6;s8*pztFm7mE4tO~=!nvc-Jsjy8vU(F7^nq1ZLYt7fH@~8HJ#;({5hR@jYT2KX2Tz=#>8l6 zo){gI>8jT6IyH4uwuyR7v|PfB^>h48c@%qmHaxKQMTn}@7=xS5yxkbyJBqT?#$vk- znv6b2(Z1}KkW>UGCg!jqEeUJLp zECxmKuwtwI^hcuO#0DrH+-Xec90dgTIZOlLaa$_qPvnD8-`IWh{42Qc)0j4CEred9 zN~?HCc=!W_0peKbEyKf8{D|iYpxD6K8K=()N}m2A82?dD)4y*kPZnYmw@KX?ceflL z!Li@CJdRMGbUt_O96(I#M)l<|h+8rcbl-CfPx<6zu;(D%sQ0deCNFx3n6l2p%tiiLGG-T_~{b?)%e!y zp$okyGIpJ4&-v`ZDFsX%&5Rr8d8u-9!o^-Q7eNIcY}btTFWR8@Sd zl4yB3H6hmVu}UIp-d7VwTTp&OKQ;#=KY|_PA z-ox}VUL}TtHlwGTOfkvk7HV!bc`1ksVX6i#Z+=7@o)nXcUT*zdy@|EJ>_hk@@3wk<(U%2y zLvUO_R97EnOA|S(>0<87CS@5lee&8Z6}Po0=(G5=E*5&Y%*RS1=N)!J$`#$_$L*OS z)$_f}tG>L$sAw;4X`!1jw&IMYjTCTid&`~B!P~9|V)1rO)(I`Dzx75ljyA~(r;U5H zW3^$G!3NQ2P2y(^UZ>UhA&<1odD*vPwKasPRAK#g6_lsICyq3+MIJ7%#+i>{1-7OR zVSZiLPy-&9EmSGwN9wO9_*I;wiQCyOmO7S2Zoo~e4O2aOzEHv@Eg%EmFX{-c+f_qs z$6(@$zsNVVHR^QcuBeV$p59#M4}FqeuDCzq5v`u4Y-JuX%8Pa_!umNj%7~Ih4)Fn`iqWMg!s2nE+iJxwk`e-4=Rbs443zQv~SlJ9PH?-LvnTeMxlro;6h%pJBhZ`1t zwyXTE;S4rmx6Tr!2d<-!P!}(nzlrNVk<2Pa)y8hoj0im5*Y4`hTwmC46?#9-UNRbJhcEwVZ9Zy;Dhvw>rV9cLlNo%6$ z!>*p0j=FvV!np-oLr8VFsBVtZj`1&990ZHfTq**j&fyqK_!D|T0@E2ip`@bEgSyo> zZ@qz914tnp4h#Kg_Ytr}mXoVgp&iBFAUK?u3&~hH4^nlt2$CG^xjhAs`%EC*Glml^ zy#3kt4!InR8N#4JjKF(Up6%3ylCSk`r=kEFL>^!70lZDchu?%VY5md+{W+3uc+0vU z3qV%8D%Xr{cs6?uk?POl83;sOUi=0{96}mThL);&koVvnquBUoqSMfYq}p%&C+&FA zMWuI*MlQ*)ZcJ4hq7Z1t^N+r6BvBt5lO}fU@eLH{1iV*_To*G2ibB zI7SXo(V)|zK7lxJn1YWj-mVL1r0oEU}Uq8k*chORH}sH2${@9_SzC98e_}IwI%1t zbj;JG&rckOxQ-Yx-Y^<4mMkNuXdEr=-x&VPZA8QM zM@lvkw$mDuYhQ{Q>B#`DK>2&#jm}?FG*K&xM{m9Q_6j zH_&iMrd65ELEMZO2N}Evi1z^i)gI*kjinkh95wXWd?W|3VJNFD4vJJCd~<j7xoT^I{2boiI5BI ziP@{tI;-hPtAw*Xt3b5Q{;Ok1Zd{K7%%ZI%6Wb&-|m2+LR0Z9lk@!eGU zfeSW;Xa%mvd7QX;ULtV>cf7v{`~St>TSwLPd<&izNl4J(?ykYz2@WB+TnHZA9RfE% zkl-GIySux)JHg%Eoyv?Nd_v-iFAM?juweFER=Tz0Ms=aI1XOC7F=D&qn ztdIQ0??iAvHE(qpgw~f9T1Uu3a-VQ)^T>y|i#M+qWn{nnWd}2tD8P98ZZ&i#A0tQ- z&IadVeUbHZ5AGw9+0S{(l2RK^hn;#5)QxM&hyd#ZCQC_YeXTuDuHX;TV=5@Iw=^Q$ zx*e5vpS~5EyDUTNROr~vc^J+#lQs3O9kPlsuJ=8gEbd&CzAp@_U`bgM$52K49DMfj z%`)p0;dUIya;uXxv7JR!Sm!X*YF)hV!TB!`n~qBt=0rdU$IJT0WD2HwaqYZ2?DP^L z=STuq?24o?He#|`1u@QVcml&){Il;$;kKx%7^<9FUXUi(wtvytz@?rqmmi65LRg4$ z=$ zJnVf#bO#rb(CB$4*6k8^WNj^_e&;0)UC(DFy%r=Dh&Xv=xPTeUMZc6NEl##+FNq=Y z63*a-f{klG#8My5R4)rfti6caIY;vjHcY745lUe!W0A@hw=&I)ibL8;}il&O1Kq4Gn14^EixCAS32;`8AIEig^@Tj%DN z5I*YW&M(TM#C6$FlA8f2Vv zYy~)!`lf5JtnOSx*_6GWdPQQ+P5CdKImtQpS5@GrbFN*J$L zV;hJ{*NT3D40}`6o}F4XJ`&(e7!n;l9yr(SH1d(3rWJe#yx2B`fcQe2=1VHAfaf=0 zj5$bz&_#uh5_5N@CAyUUX&X9f5Y?kwRdjt3v%|y| z(K(5kwL(U~y%cmhJzX>oYjf>q>9lB`K3!9SWkPb+zjKy%?f3AOZB}p+`#J-+#pb(N zufjl0Mr~E3OkmARk|etnkJ<0LrLO0=eSE?oG`L~kP+w8m1kbbzr*jP~vEOT^2n70*zA@nSqc|qVZ!WmkTCu>ZQlAgaudc22 z*XXimt?c{MW_ic}{YAiD`nsed2y`*1i?kp0b4k)mI0aVL1G`U%0jY%tCH)hyR;I6;~92N`*)qrR@AMP_aaBQ!RhCk&`gZH-%>yAvl@!v}(M z5yB=^8(roM9v6mAx}vs-I%-1m>XvVwcEyaH?E=l^l_@XHb}o#TNagfw^j<=35|^4^ z($T;SpB(Ya+pVdec4*MX>b-G$HhA?z1q2^*yePaY47%xdXN7(P^Ap|);~%~F|27rv)-*N4`T*=`lL%GmSHRf zyIjLw>@If|ZAk<#QQ!3i{TqG5D~_MQtl-<3po-X2BU!g-V^Ty3(=ba)H1apQTpIa6i%yqp!XV_TiOwGiYx_ zr~b_-TRL6os9i=nJsWqzC67~NlWky#?c9Lb23=p~nK{x{jsX^MQM4A~N%ASdm3(ux zwu(*{s#T#CejudCBJ3*qN6NKPf32CAo2XHN#^CySRd}$UffOA5Y=V-y8WY-<3yoPq z5q4aPMMOyE4(tY|!iO`p@SHBHlr<@yj?$s`^cAUVQQCzJgRhZhUj$qh39zjZE`4z_ zH2(!^qI|t5r94JZYK}ROlyOZ~+f?1`&15h#iwo=Vpgg4CvH^3o3XtJ33;f_IzCi5( zS>Y z3$Poqg8~-IB@TczMn#f+b{7K%D2N}otK^5?`@YuSIl|ht>V2F(bcVrV4u3~HPNo97-?)doC<7yu~1m(3<8;>0z+-CD~fA})8Mpi?m1ID5QbY*pl2 zdjxxh{L&15g{+$9bnV@N1*Cz)MGuEm_lv@}eihwDHMO*+T}WAZdQvxh?vuEK#}b<; zU3ec+>;*F#5{dmAszVf@7e)JU?%WupbVZ$~Pi}>sZ0?TWwpSkIL3TX)<9_`7nXOkP zgU@e}z|S5ccfgt}x-{?sz%Dmn>%y3q6#$GHgCqDP)cu&>p<=W4vQhk$s-&4Z-~y&4pqC_ye}M$_0Y#~`BZVI||0a%jxV7U8_nJX0-P~LAgI=Gjw|58FKUK(~?s1V>aL1 zsS{J`N)A8s&ICL*iTx=?0LRrl(|~(4I_m-ys(6nr=~!x`!qeQLMH4X!$H#NWG-{FY@UgosDpz+T2}X_CVp2;LRl<|9w~vT4N-Qv&CO@Is|P!w!l2 ztfsIJpvt3!2vYRoyKX3D|B1mUAyc8$2{AbLlD{_-l+zWD%cbFZ+OJ}JKQYsg`Jp9@1 z@#ZPDNi`{P@a>;oKcyAKuY_&Z^xr!BIwBs6d<0|1pT$jj=nH$&7zOWVR@a-qKVzT- zH9VCJ3Y`Fw(xp7PN*y#6Wy8>Vk`MIU=(s!nFP++SrnbSe=@7pKacITB{YJr(pA^!KfsV<~WS)!-O`QpDzyJIBhrJ2;%RT z6I6{6cemaqOc23Nwe=&WlQ{rxzoiXE)axcAabzxd~J8!{19oo8i$E}dc z34>4~#80;>+@6runP;4Y9X%y>9MXZGj~vwvREBczR}NAD&PxW=FztiJ4R*zM!z4K9 z=#^~8mD9j|-HVC0fGj2~qfWnSi~22=;TA;e*Gh+uf_Q*E<{jks%v}?YGG^W@rN$v* z6qkp7G8)*#qcvN?V?FZo&?g@lc6-160$uh00!0?aYMmj*MfLDju!eUTM2wDbZ_pHY ziff0v`-o8AsaNH;y~WB`vSDaZ^uG9AsA>g|h-V<*0c^Fj=r|HU0YKH#K{xDo^z$3& z$vPGqX=EgqOp)!XbL2yEi+* zG{xjJSD);acI~7n$;XuL?44pZ)op-A{wX*7D&pDd8KdX)V~HeM`=5%?@{qb=xwb#F zOMA!CwjMuA^0~0TB<~hQ!-Qc{WHkM6&nKYmIj8q0@67owul}TrMhGznYhTu7Ns=qJ zI@}LHa)9UNN4MQaUB!{#*4`=}soP%5?L_!ttOxdPf3V2aeYsEmtR)WAg-U0KRv>_i zj`RZFwB|I2dlLfGbvX)4$(t9G(_+`;n=W!jvdL9=KSvs4<2c1E4eYu9$C#kr4p zVMi}rSGftL2m_Dl>(iiry9Wl*N7bIObIxlg#FZ_md>k~-#z={(poXEY-4Q0V!t^s+ zN5Icto>xhjQ3)BYSwl4H;bvfKhiSE2RQh>PX3hZnMms~wZzFb{E`%k?cY!=If=w7d zMx6yNkm2Yu5&xS}+_7xcOOo>E>yNDOyI1v`c3+4IeLE_#yn1EX^wau?k;qy4Lm_FW zRUbc*goh6eOmRlN09&`3I`jPNI45jURBG3OZi*1zmp1~eAb|p~(3^gz5*;%nGgiiW zVM;pA$AS0Y6gUF+F*pTreT{?bhLF6Pu|=Hh(eFGVf$_-p_+!@;AP=>p|7o<1e-nY@ z58F8|^L&=#oNZSs4M9a!m(f#U8`2a0H~GS-sQS73N(fL_@c92pLDk}_=d)AKCXc57 zBmhfLeNb2VF7+()Z}PvMks8p=jNU4_S?ojDp4kh6>U$x|2_R2^_k;wg^YYLB6Lm&H zLIO#GOr&iTc+oG6E$Jc3?C%OX7+9x&RJh>aP(6>XkzD^j&=CK}H~If28mbQ` z&o_Wivw1;Y$IW)K@C$LS`<#1~su?J6<+0y5%hI@(+zX)%$-jv(R$f7i)_v*_u*OLA zPYTk?D7gFE{QqfDQ075}Tc!DcE8zIwWb8%3|6)dwK=>C`n}0-{_K&20dG%*#Rf+im z0ujDo1VR4cMxo$LSK$NDl!N@zy>Z;5I0ZI@e(k3%!NnxJbPJcYP}ZmFWR7F%y1Nk0 zq4@cu$O|r8w)y7yc=AxNdx7shXc**X;{8bLV&llMq$p>}wk6@pV_hU^qyMoOV2}Og zkEz2aP^CYmVm3-}F_l>N0Ykj%4x9gDAoqdJG=SzaSL0GX;QU_xu0j&2d4SshL?xf7 z@<5o&PoPE>n`<67J64?Bbj=x9MCGqJW7@aihl*H^W9e`nVi$A*Owjpj%BI-CI(TcJ zqg`ywXG*OYyt#a+SCH#0WTN0~d+mm(i=?n#&Mw55T8`!LCrJ63e4C$cR@S;)GH z_$pb}Ve$(SFEo_ zcpkQ%$)Yk0k}X5IC}dj+XzzP<&wq;NcM<)2KNVAd(JtVN?ZQvWLM^r3gokgX4c&7^h?U^z4Gz|{0B7kPNl_aytfUt4c))F2N zKl-Q6OAdzLb2}QS6zS&&uhcckzptt?^#NA!KmLefkF>A?Rk5l@>vVW8fWwUe0#->< zd3``;ZL?EyqkcHLhxkc6DL<{L=zw|Aa$Dd3}DJwZsai z`85CP)BlY55*ST>E^k1DEGrz;e@j$J^0~Uj_kQZ~KchALcWqH6UmE(D0*DoRoljc< zDbc-AxWL%|104%vXKD;C+q~>8oya;@xLE+!z~LGH#fkkw`maO$(NEV;LLGn*{l_1o z%MmfANFs2!%%=_hOO3q*so0~HmlF!-|7FI0q5QA#p8u_6#9o7ve>YkMsTId38t4Wz zMd^Lv+$p<19&Y(GFu(o6?nI_ApMu%} zEikv!b?GVHCj5T4bpt>peNF6Kx%dSFR9p!5quE^0?qWtcc2@#ykj~pQQum01-UGGP z8urq=yWr=049x&mcGIG@LNk->F38PT=7TQaHJKU@1O`Z#q(3AWtj`qx#95t{HmLJX zu!uHwVg9XdbtfR9LBNg@yeT!7Gb|ruq(g#Vpc>%W&nx3Rzd&*U;Q%sZ{1diBGiD&a z?ArC7Clqi#_?i9s?4^G$k{htf?H$C>vHLTl0$+C=RhDCu1bM3)Fgkv1?O3@)tN8_L z1uoX~8y{D-xw8c9?#9$X{M@?}RO!~L?vZ4xUe(qk*P|bh91Q8?iDB&D08Vs~;sN$R z=n|>_o_1~1;1&B3Nv8d}E4oMH>`NyPVIGX=A2p>nwTl7YTJ<&@S!|K84;bluAQ#vHSS(F7W5W|iqbIR zE2AGiH2czR06x3utkBG=7Mq3ev2=*%UKJdUW{MR^QQzXj!S6GY=I+8iZ(&E3(lZS# zt8PHx+ER?>i!C^ zKOHhb$ysZdokh@)J8;i zI!S;e`ZM)+dy*$&IPLG@z_&@vJ;6?$31-nDM8XUw4s@iIFlh1)cu#-_x!w-rUHaQ5 zI(DZsDq3qDZSEcdo*ys*bjH=AU4S`|cMy+;1G!dE7f{F1!Xtu9FCi;h_+2f;%Kj~1 zAZ@dcrj-bp){`oijhS8$AyH_&Tz2jMDv&7ON zHus2K0zlAuZQ}0`euNLS%UQsXisy`w`~q_nSoKm}%iw~Tg7t2GznNrE6Z>3Gy0!Dw z)9*ULGHBr1Eh;ZD-89naa(EugdR`m{Ouxs(4~L2afFM<=>0U2~13@2v4KphS@$=7t zN!6R=`|H8X+kg;-@QbIVd@qBnSUhv!o(Tm=f*&9cw|~Enf4ZjCUNZ$fKWN~H({F6_r&h8rSw$Uj8|HdOOGP#mn#Z~Y z{ICHDKkRn2QPhB(M!UK^Lymwh=XX)@@Jpukr5Jo{Q%N%71&H{-lg)!ho@Xb3z(;Q% zc9lZGaso`iT6K#bK@rb)2hl(0fU^93QW+mSfqt^|POyY#OMj>_Ax2I8`Z)Ao#hM8; zzF?81+M_a~>t&kXUli2G`|J-zbxwfX$_-Sd!EJQsp>6FL@hxEH48_uSv{KaA>B7UY z@;?W;8@i@Hils{=ZZ>(VxG=o{&RQyJubn~s0(4|%pP%2}PGxoz5tu%X=YeBJxZHw6 z?wvA*m_q-hv=o{-*tp@=S4A3!E^ImRz}3DiR>DzHh7{Oj%PPJX_Uqq;N<(l|Lw8N> z%(I=nUVZ3m-H`lUmm`8JHYu$Ke|z$!j4}nFE6iksSi?Oz>Yf!Ml$sW`s~w|h7=bn- z0SN%QWS8rnSm2XcAS6Lx5JF~1_hu|_q&^eI*X5Pa z2_T(1KpT{vtrF>P`YpKa>x?hHA$UOb>Lw`y{rE6u$THbj1oTZA$Wt2<`g)!4^$6NE z%t`MG=LO_q6_U-_)?^%we+ zg5;$WzH}3}0_KSf+CRw`#_f=qce8452;}MVFW-hAC}uzZAf1m+7din<(7S9-ddW$V z^$A)Th3JSrQolg1KyFgx;VXcuD3Wd+^hNwnF5mnA91%uWRCJ>~`E73b=fS^&Gi>Jm zeqJ~wz@7#yC%?lpL;?2hKZcu_8$fsb6X8L|hTaF5!uA%j z_j@JMXr$ZhgD5@C+f6P#Sd|JT^};OWZYRrC+4ZsNMsA8Vkw^35M012*{?(4IBWZi= zftbAy|acMT~;$U`!8a=Cg7VqStToi z&Ck4bD8o)jsbU9h9TK*xXg^x0G4$Rh;+`Zl)wb?Rm0 z!ca9GRbz%p1ScW8UR@TV9<)V789C<;5e+BaCyiTnTpnAbM7fa$lOLy!lyl(UB#*rQ zfTCbN5_P?KsvEYRUMUWf8M_fv7=S}?reJ1=u56<)e9G;ZE}l10RS)& z=vy{7)FDe11o?ga`GyiPmSgY6Nd{VNJ)B|H$8-_q@H^k7Q{Rjx-Jj|5Wqn0&FHQHt zdh?mR3lWkfbXl}-X@)c^1E5Y}^ijkZ9_iqzh4{Mn5gj{c2!B}{AmugzAccsw{KBD_9%}yv%!Gx zu_MsN?z7`}Tj20E_^mDs-&y2j=|#c4@^>u!5m~-kp-{yc+@5;J^U%hmTEVYTNSYHe z!HusR;!qo*c|X)52juTHeM8BZsr9QrBmB9sg&O|oTy6mx<9a^SJY}1b-b7-->hung2LxquEARBYx~Q z9BH~`($krYBv5}L)qZ-?;zOoc`m5C!MGt-wKVp(z>x-p2ad_Q*ooCUrhlkK@m}qe~ zE-6?-jB8e1$nW5TJCD^>15*OXFN%_&2HhPC@jm;#U5idr#}t*jI&~$VZy6kK-9$C} z1=3aqhFr|EuUV*(C%Pu4t>0uU^wdri;l^==_y;*B4Z2=w_0ghOJ{N3a-WtU;Oc<3|mp!CT>ZN``$>*v+Vjis>I!urYcQ?yB$qfe^lC+%({*DW~d7t1v z%pa|7R7o-R9NqzZIk#gRE{uT%aE(4F}^_h`lBbxt)d;fW=-;Q z=XF%wAP_@R(>o`KEU)epH_kKFRRK+og%rao55pmN4CFpt1z%Yk(?y2(wlyCR9MkXh z1G>0m^)#&D)~mdXPU4ssG!92{jVaP4AMK%Vuhs*9ft=$(h!^eop8^b5_gq|C+J@>r z#Ty>@>VjwcypTMX873hIbti`w2Ll5++cDPwf4Y+4tTm`YCQ38#3y=C}sp3b@nhGhL z$T6dPVBsBtsu$-GEJ7??nmVMOG-$5xt0%luh(7hqF)i%pb3*3p4GG z-O^dGnS%YXZb$Kh9^4gOCplVyZqlxCVN6*E%cH-9f}-~geC~8JUG>xicyDB@Vt9&J z`Q$(@ItqWhpYT~xJ0?P^ z=Ghi@btmk0C*iUbb#7R&(S88*;{Ilr9_B-(MEGGo{tJHSX6c)fx?!{-G)?6CC>E%^vTVwQEo6sA;gW+eRjTFImv4u@Q)LUDFSteP&zJRFH4+GObi2} z$@zmUqp_6IkX;WZGPav)cprGMj+cVba0pU!i`DScrqqTI1Ms~ugL6mpB9J4#0 za*7dAngbs<^U>K73R%-5^_``?pU5ju?y$8y)sbK%y0aU5p;3-B!nIn?+kqV(xVwj$ z&%!lOV)X(FHrZg!SEFz#(^Mh%Hf@NZYkU$RTkj7|o;Gxn?Szm|Ka-k;U;hGKvguSi z$T~Qcsd}{DUVVS+d@SfzZv=d!G$D&Z0}-P!$5b9aYGP^NMCLQ%1!D5)nLP9^VJ|s; zcIWmD;W+4! zXpy&_7P}B5wY!fqX0iGVNeX#Q;8rFY$mz3eWxDE_*hZV#yC(N-_zSIwjI0)K@|8@p ztkOd6)v5Dz0tShK6NbXIUcFn~Stu*mrWCJib-?r7-+F7LmS}#eAg7AU(d~*85_hEC zRXd5BAnp*oGLhYv*Pe{OSQb4P@5jBG5-YufwLeMkv;ke#GRq$N10RBkKe+uS7X%X} zonN0zyKtwtBpMPx8X$I{VoAjl&%8~9%xkAPqt418Z+(=U#rq3HMt5sdDdIj(P}xwB zcT%S;7Z=PK6)|iVVq{{s3unIVRG)M4F4|U_8m>0m(coo`>FP@Kmy<=9pTybr^IJoe zD>!Y`gM^aqIPcPNG~bVLmT#KmK(fs#+uYVPMN}ma4pz#G>UyMOXm_SIr|VW2@ydi; zA-v+LMt|Wjf45*p>$XmdY6_3;F+4CR z@E{Oe){(R7N=m8v)TnSPQjKzVf_?A|c!VP5K}KC$bx(7LiFQz~KhobJe;QS8F1MOF zeUOu{mK7l`RxxLI;lxG-yjLMoH<(TpzBpI$y)+bBfWu{ z+9=ktQoGi8XR2@M2vuJq=`oTHPVj$+wO_euV!JmVJHV&X7>E_-I*_zsOX7Q?x*aI_ z7LI(T-Xl0W(M&G=Slr5tOJZNlij?om#&U32cO0LD{d;rrrNm-W5gUqgoGE0!1ii`> zk7&Fw;cb6!Hi33x5|W+SW=XuYL3%5J-ev_4*s=kP63JqdOm8Ns&05{(YH3Mn!23J| zskpEAa|*rVVjHRX;&G8`VVzN2d%ek zw7Tisr#WF?B8nXLr}vj%RQhyET6pM*zSdZ)=ix5p)cMr!5BOlAw_z7UGNo-hZBCYi zuW^bBtF4e|Xt|tS*cHX?lf}Ttso8GH0~n3*1z6&$uwh+EvpHOJlGUzFg6tD7o`wr+ zX3PZlF5lBK^E6v;={KZE`Kw|_USf6%eOsH98HQ*f2jMSCrjLdFSX)X|}<-q8yjFG7=Qw1zk@d`dAG-~g=G zEZpjzo~J$Z*AjfjlqB`a;HWj}uJXuEl&1OP@Cx3J>)+LCYD1OnvXdv06S1q4^9VNYPrb5b%ambg(~ zX|s>MqDYSN9}q9muwK?===u$p0RThNgsv7Q%{YfP=_QHtQQUESE@}Ek zYAdVJN|ZR+n_57?0$E7llgbBsDB=zEoSKH}mx{2FC2oB^NP;8u!NVeYfkzClsS4VP z4V;_fUcz3%fRsevWoIS%c)l=Q+4aH2HfroAMEOY1`znkR`DldJ99zz3%OD0z#D`DK z3k1XSvZjQw!^FnAX&NDr5SqZgGnM{$MZkWllU#-V*$0mF)C>kEjDQbJXE5ZIu%XA=aAat*l^2p zd9A23R5`UxW)u-d$Cu|o}G)#n zB}&4($7-=1=kVtG#(v;ot-1|Ww`ps!d%s;Y=}yQVt=I_6vMT`K=sM*B*nHl6gPyDp z|3d2`*#%rvwP0l_;_}d2^1{70Oqh#vrE%H0hI<4+hTtt#MN4IA3gHgYJ*&#a*-?Y6jY{YAW3cRPhaZ@D2S1f#ou#9NhH|4#{#4_LN;NWlx_sxi?^#hc{?l5$6WARv%+a_>z zFlCdHi{KQOtJU_pWQmwxqRe9Y*b*c;cAJgbhuYwIUzFmev#>kn+kV4akZBi1VQH4- zGB>UBSyu_$Q%$FaCGshg(bY+1QH+nCVzdtBwW;tqYgx4iVVZC95fZq+jL2l^U^bHs zaP;GO^PE$`{-g$`X==PQ-U$hs*0CS1yuhm(PgF?XBSvOmv@~wQ>aTQ_yVy&(k~vrK z|9<4@k{5#XZOgCs^KmJ-L?)Dnk1#@>A|60yy&&elE$rHmJHxz6r;Ux!t9cKl_*0#3 znUM=rR7s}ynEfXDc02F$J34-|JZoGc13=;sw88OWTWn#|)3~N#nv~8~qh6GCtl2#X zMn?HN9QF&!aj%?%`?uByyI$KuMZ1 zSsi0$*p=7uz~XHh{;-@%hw4NVCM>`?=DEn^HeL%YCz&nHjw9_OPeddV-?(#D4aty>|Sa=4iRmUo5QGUl(&~zboE;(F8ScSNsN>auE7e}PKMbyk;gfmR{rNzyBhDx>ZHdc`Imq%dC-dv7)96~z zej|^PM3PG!ssCjRVi=blnAp<86*{YecBu}{9(395fTn$?XtUw$x?b9zhmgk~mHnP2 zdO0}O(2G%Fv~IzHNhRz(v-xAc4H*>bkv2tb7FSH?_Iob)U3QOfZgvJQJ=Pbm!)7Qy zNQiLnRC6TOYK_IAkzO#nZ_Gzp<(%`Mf(U8KN{o+i+W@50mpZI3QA%a zJ>G{-SN$MyYg5fSZ{PCeS9@U=<^$K9^=yLh?|MY}Y?+0$+9!>Jc#zNhdg#RKG?q2e zbz}Sb_&4F1WF@s`O#_Dd%qZ?|k5Z-?Q@&;Gk0<`{WypGL<8aV&YC0dipl#c=wUDPu zlxtkVG03i1bS_3sJm(c#6CjPDK}>@lE`eeq3a z3p8OcRCxY@+M*H}ywx1BaPRNn{MJmdtME}8&ziCd_B3S|ScS%nohsKdwH)sK#IkORP)F(&RNv43R)b&(_g3#6m)>_cCQ ziZ6U;8U3{7&Q@3A(CMB$lW)Ub`wpET`{j5T2y=YqeKh4|q?FCk%#v?Jx<_fTUGa~r zXoY!+(fVRtfe{FV`l0u3b}aUyx&7%e^(1vi2gleWh4{^p!p=RR%UA0l1!IW8!W4vg+yT;t%Zi1aCZJH3|l85BVo@VbjF9wL_rY?+q$TirE?| zqg{<5Y*iT5f%ntRep##s9#&M}$p_$uD8d?@L&{Ft?x$83+$Dd$%)gF*9vVU)9v!Sp z(z_=(b(m~6aL*~m3^iFt!h7ti`3`@ChKnn#w*Yqr5~lD7nPtnq&Dc;00&mv)&@`Rl zNu2h*(&ZY&wHIdCNQ3c_@EC)Gh#Ts<`btb%3l4hNm-mNuyBQR?W6dLvAKTKoR(rC# zW~AVbPq@jklx?zwY>5E-rc-Sa*DNI)_ zsqmRiGVI4M_9uPrBu@!A-CO>`4j}3N2?6(SQ~GU45LVRa`kYJ*s1xTd9%f~xCB8Ji zh1NVyErrFE$*O5`v&Y5gW)#!$hRlP=^0#u`rqNmD+WWz7*b$GS&?OT*j5v1(=)6Wwd5|)Sx^I4q?Wseov@i=eJjEXi#a=aX zImFFew&yTbM(^MUehomDV4JUU1pHT?DrJJzNn-LwcXI?Xk-I=R! z=`kZ2jpl2Jc`&H6 zW;?X1kDA=CGwFR>Sa*5$r8#b_ygr*ZNL1PteC)q=13PsE9H&TJ2xC}2N>iAzyO@~q z2_sAf6}#onFJnXu$kOz%bW0NZJJoMoV9kvv@DM&sS*=+?-1N=c;6eMJ$@3U^z2l74 zUKL5e)pG1H=9zhaUNA$nAdJxY^zs<5<4i2; zqx?9hUF;<>nW)H|fm8#_-CnR}1TxILgt*#HP-pbaMQ|IWp>#pj!hX*EX28P^Qt-U}Lqpvib?=)>$=a489YKMzagP+Y9%zRH5j+`X7v zHba-s0~x{4@S&l|JbV`?t@4mi{Gu1)y>}jTiy%S-A=Ig6*2JfTaP)ph_ zC62s|pbR-7G)N!TXLppHk1{9a(&ks;=!6ZF?UyijvtKND7qMWB=9VQ??PeNG8^x2V zGuPc!Ii@>kJ)uyxxZpQ$T7GJdd~I^jZ$AO}Vx8kiDsmpA*o z{0)!=-4D>hoj3Z(i|!^RX78H}>uo#x4-LTw>hs-Gc7rxs-u>LB{cyM6^CbwsYm5rJ|;fg4ELD+%Nf!j?8A%Za$k$2a{dTj zz1b`U$GjH95>*i%%pI+j5QZzhSB`f@QM6?J7axpjXDSQnwR)!Xhn+{1`1m5fu`+wg z%UpjCxakC;h$$k}fr)8>b+%6pv1iFKg2d4hK?5WjTRB4R(IaP8&jYR)cPObm&9HA>=gSu9(uD{uS~*Z+_JYUMy85@0!)%zFzjMVK8UykqO+ zoM_)b;%@~Fu^cm7?9ZQuzA*GOA0P1P5VjZ3+68te_DumRWVn#t;ns)Z z$8J0H0YzIBszxDv9@${~mtGRj22Cbvvp9u}3G5-SMcrQrZa1t^;uI!D`^GGV?x|9? z{SY$*BB!ZY$vkv6rU(6$C#b+uCweNQj|%US%_Lt)bE&h$W?Jy~EQEBlkkwCd2vshl z#^Gu^rpt4sEpcJyXBtc#&@xo!M&WEa_ZK%>(P1z+v(aj=rsR&Pi*Mzo72u_$VVhK+f7pS)4&Lo0V(%^m1|5c->036E8Ak*ACy3 z292S}O>lbPb#aWX@~L6awsK3ZvR@S@`$AF_rov@OK*zlKzI&CH)7trl?Oe2w3uwKX zpKqP`wOJhCA#6UY%=_4=FnBvFl)EVASfNdtU+y8=%f)jDv}9&1^psQVi+*|eUS7~Z8`nYQTx%|~jt4Hs z(;_ykU5!&Qm1jiN(+@nwfuPA+bN-t3iFfruUEIe0JmUle4L1|oTfwXF_0`#6UgkBb z-QG>%LgDad7y>iK1v0-ybZ%m;%Yx0kVk#$PmmolqPOIEJA^NGK?b`amH1?GlHf$Nr z9d>z%^rKMzQQs@c%3^0Pj=IULv+AqVD6I|m$Ds%HV@3mQDqm}81r|-a3x?07J36lm z36A*UiGSjiiicD0)A`P6cMi2NAv3?HH@0S|X~_nDiWH;=mBHd}y~~52;-G z+=&B3FUVpmIE@Bp|MXwej8d-k?G>P(UY=E`3?ZgfPi_{l=)PR&s+m68;C{z|V3OmZ zUbRGDqeaVeloDG+vwKqtIKT)jNezW5JoR6;4fSbtkSPx^Ns_u6HO_L3m( z#cW(ypAKeD-xmlI*{-@rYHwas(K~@1wpqUz^`0ioaE(JuI|kHrnyd*n@%CaQ>0+ZO z0q-ni-X}8-yQR#r7Gi5b^r~fhFUS+(teN(SpJ5my8qNBL0t7we#f06$AaG>^(;jm{ zZ9S(l;9SYSaHm>O=rNqMa`gwnADAjRovq4fIR{hgo=f$^J$!2rpPcw3y&Y5)31!a> zIX4eKinf}-awB_DKYxz+F*ZnDxqS4~hq&dPt*@kpN5h}Ae;jVJ)RCSd3qTb&LQvfh zHs{(R(WghLFS4fIT9^D_@-1Xt1H;@+#YD3)M3(#r$?~41o@qd0T=m%`{t?J;)vMs% z5k{NyeTN@!+L4njH-;zL_c9$uU}RFFjI*y>EZZZBxxT+sw%cM#P30|CTbqe0SIWYHG`pfvNN@$yifc;==YN?9H&l4KsqrO@*V& z`~xd-DfgaE_iTW1oN;~i_rYj{C;|044vZG0=7`{&SQis&TwKBG;9xH0ci4h&o(I1V z)-!aiK4yklKqMy^F8gG;)gnh^QIn86sz@H3O5)X?70C;d`c|?(b?2Meze7Kw=|Ywk z*k3RDwBSpjo7_*OtIWi{#4h21ip#3BerJ0~6r6 zuZm%OsWRCz7?Y+w+2*(T5@;@-$h95LUEk~UJ3nXc^3L>xI@zr?QjFUaGZ}+F7qNkR zj5X1zt)0({;9v=m?~1MH`mNS9#`K_c2n?Z{3Zl28Bd;}N;6rI95AC)+8m;vCMVt(U zVg>R7%xR*eaCH)6<&wC``5b(hEtqy>8(VAZ8$2YXN;&W~)s_N=D>#KGc*7EFHhmY0 z-Q^iY#vJbbnkHPsWgA0ZYs{<}*>ZmvsDpio>~<*31vWExFcRkb0j_({aF23m4InAYo;v@qGC}Xy zCC7#$M`AD+VH)^KP;+SFV=LWWau2X>nt4Y*0E4?5{9=XnoFs;l4qcBZj#GzzD~J@S3qb z7M_2k*S3Q=5g`OxlCrKOSh(ha$j{JJd4L7nlg$#EMbp9NImfi)3;?XRJZoA;q!T#PIQO13lZI~}X?n&d zOWm)*g}TUlGbj{iA{bHuJgNi+EwqBw63-4v+vZs&eZq)y%>v>lQ+ znyOFqz z3qg7hD82Wh^pb#p^b$dO354J~AoqLk&GX)wZ|2Ut?~lyMoVE8p`|Q2eI_vDSe!s1k z0~=n#k~ZBgYd1#5U3>&px*H$7tOGm8SJcDil%(=#*p?BuY*|WJp(cu{af-j1d+?il zk6uVg@!7x+V%a=API_GtiqucSZ^vIgW8sw8mTs^~&3w!4zCl)Kq6;W&L2&OuaYbUN z>6&I;RC04&qp^Qa2E2&c|JqO+-eWFCJ><%a%^&-iZyMg^?}+e+-Nq_o1B~seEuZq` zA3mTW&B|}+p6buf^V-U}?HkI5-GVUu0NH5DNw(^T2LME3>TM(0Cfprc{nFjHuA`G9 zlzRt!G2N5=Fh&UjlSRa5iRP?Y>sK=!Q;*dO5^j7Pw0cy1cU%_=bHkR)iIf@W;dP4m zks#3TiBi~7=Qchi*9M~cUA%oaIQ4vi z4De*}gLYa9uWYjQi(Z6{(0wnMR3XxHNjDQ#OlK1%9Qzw%VjfM_wWsa&`k?Z@oRONIyhDZ@C&#>O+D ze>CK$CrPncnK!#+&HI9@^XM0CP1rl3z02m;k)gX@5-2I3WiCQC3*-hQ$~l3{ynG^2 zi8rc(MrS_+I&1SZWC7seq1qmbC>yrWVapoF)Qkn6y*$?0mIP?K`C9bJ&ySS~cxncpeB4H6nM?iMCNauUu|< zF;sRfeW@{yo3ksL)KB^Y!n>sR`E14P(|x*xEE~gG4U4N!JxZ*aWwg?BjLAz!YqTD_ zb~!ILAD|7Hl7>=B@{}ERH6-;%q{fu>+&|~P}rSW z<(<5}!%qYH73CYzUzL)s)dz0b3usoAp1$Zc1$FzrL$kni?bVm;8_l0mAJvekf5X&m z_Zn4T{TG{9YYHF>S!jnmffcy&eL!^?ow}->mt)S&dIDITShQGW;lTDS`Y)-?Z#F(X zei`g$6f$~VvS|ps7r5ECfwZi=jAn}K;*;R9@U2|CYX8^_V?gB=LmuXt?;Nk{lY!&U zr(TVtLo{J|3IvQgDUo`<8w$FC#Sz0X+*^-Qop>q9xGTVnwlQRC@jQy@z9dVg(*C>R zn^vcV*p>DN9HvcVQL+sj@15H^%*D$9eir^jK^K?ydpB-`kHAb>U`}ERfI*8umV1K}O0%g<95JT39q7ly$&8b+FK$om zB4@>sTMUTzSI;o3ONzZ+dCqZ)T+Ioka#*rhvfu%D4^x*d?Ip7S*pLUe%N@K9@C_>N z{bbA`>%jI85XV=+F~uB_tMx9js$yoLj%!Pe46RHfoMAGh@D@3P8GF4ZGl{{JfyNoP zmGObMX7K1*JbLciJ7|~J1->wfcT}$#yn0m?+dACr+Uo8N zyV`fJDN_YlvsR8C6UF8~G#S5MdmhX43_Ir34cE}aa19k0nwKZ~0f7wbm-r82xk7Mj zE+f(Q%=?5Ie*6A9Em=bZO^TF#m3k5sli`aSDFs-$yR73PZvnC(tqA3FdSTs8hBIT!u{PrjT!Eeo=Kpw>`rRy}*>nNKH{D2{isD^V8;dkbUbMDE znYlGqmBQ^JM!)Q=DwDsdlr!us99NSw;YuBl>{G#;M&y@A#d(ZY%2_CX7>o_-LT0H_ zvcm`SIKwSCtW2;}$@l4a8}|*vgOPIrNdZ$u!Q7%N6WwLGlucGLw~we@YG7jHiM@Co z19(Ga_oHo9aJq3$S*HElPFdA9VCOP?4}tWhuvSe~@GAq&vpDdDyl`FcrCt-8G$nfhNv4O4^|q1+u6a3F&e_mLAeX zOY%tdp8Ao2rG77Yzs8nsKU?%?yTg*f95QVDg1FjDs77h9yQ+Xr_r{ZV)FWbX`I^^0 zpI3_15^FzbcYBt%^)_oEzUX4}LB7`PaBhLJ%ky*%N85^UY{(O{%U`r=PEW&syFiBb zh}vR!@Pe6p8Lf0PB~CXXU^B60H0Mo>wzIqfEHI@^OnjP4m1lr5aQ|T&Bb~lJH)cZi zH7`U-Z~5TU&R1ycVze8QD#hTD&}gAM_0~Ptc3qThRf!@_Q`$_$v{>wEm3-h4)PZUL zB)YG6qXhU@{0Gl+t7zX+0XfBB1g?dtyx4g^g)tO%+#ozdo4GdRoc$v3ET3=aE&Ft* zz*IH{R>IuF5UE{*oNUz|h<`9*CR!g{$GXEaU}4c8TM4_rRe(loe~>E+@2hL>5ijm_ z;J$CU2Td*@-0rt1RRnfr%*u)F76wp* z8JZ@KU6orHhD$2?glRfmJ^9Mf<<^;x6===L@B?#{x2k7Q+nR={Yfz+tzURa7g?ERz zD(pCu?qh{(LG`sm@KgPrI^F6a7za@;jf1LdpE7ed2nr2vWzl#SqQ4)?X)mSUcHs6IhzR1BUSg{5~6i^%&MEDS`!2 zwD>4hMy+!2PUisB2cgv_Xz`em;9HxWl32gz>}uXD&@(JVe*hZL_N`W**qAyNrlkbE z+E`rc@ozgQhj~s=pnwRb$G>i&(UUNV9oW)+GPdV;cm{pO;!sWqvg)m=z`71Tz#o;Y zO->05je+`BLw|r23892Z0Lcba1t3_BGlzJIZDytw%Fn2^AUtsDvrijw%?2`cVg1bH z@Nwni>khB=1ORZ)HlGIY3Tx!iWjN?izylek1_d)rwaMjzep2;6LCpTT!yg%%DvaZM{}0v9l~ znUcYIyyH99dkU4!zN^sXo>BwLb!4~(cXJjd8jaJc5WUeHns4`hfF5J}ob?H+MjxTw zGdHm7p+x`=5W!kR;Zwl*aHJD5$zAJ}5^CKP&cR3w%5x!HoY-y1HiBYg64d+-K-lu5 z3kyX65fIo2vVoH#ZrDJIwmtW@6At$zz7Oi{begqra1w(7%wbO+(5(!1@ZD7#DdHM@ z%sO>cWQS@!SWIK+k0JX<(HMP|uyYU6K=NJgwC8^!9JAi-l?XA+86Gbmb|V}!Cnikq zvGJPe1df)HK8X;GpYii^@y1{r3A5O$6A=4$nyq-A6~9eY(z$qwEXrdm;EpOby}wnQ z0A7jTmEj{83O@{`HDxnuRY|J{7^!Ue#1kz=)JL@1Mrhq@m=X=CBNSX^paEAP63B0| zw7y~1GK)VzF?^d#h1fo(J3GjNn}}Va4_fLTVDhWphEu)U$>nghy46UtO%;fBGcL7B zH7GZG`e&3@ItIZ|7-f`vI#aQqlG@I2Jbn)iLa- z92cvR zVfy>;jIpC73QP4KA_kj+#Y^GEvm`7X=rZ2SP603@j)P%6Uc1y@2&YqSDab}MT_YpU z(|q4znK2Ykf=gQ0+qDJCT@FQ2HMoh>F-FtRabLp+__u-n?axny1z*V^eNN_~F z1+FsLOz=?;A*1G5pvSm(Q^CUZsrC#%wGi1iypyE{zEtyNHYce4?V#t+CDlJQ7&yLy z^F^tu1$%*gOtOHS75xcyWrYi6YevEEiPO0AflV2g?dFpZ%rgNLd(OG7me;vjhjw2w z!y2vej)%Z2XJBwvm8s-vm*HMms}r8u1^XKD$JOS7sOKS&xj1xrR%+~3gm~@g^_L%0 z3&LF&YA?&(;dvux%^jiAFHEr#7m&MR%e(N0#r$_!#r0D)#kY3E=5)w5!0LUhTD4F~ zv7<3e=FQnbqAWux{8TZU(H|4mm5o{>bFCl`kB3lS&j2t@tB{Pi9B&{-{cz;wGg&>d zTqTeH);It|5j4!%;rUTQ4sc|}fIb4ZY55Jc`CXW}0mt&DjuyF-zYyMemgV;4*yX>r zmojMk3>O7572}Lc)w(y`X%)E5K$-v`SFvTi@ZfVOMIV~l=DK` zMvJBjNR@%wgU>pdJpFGn367X7|LXUX#zgSvqxZMPzbVOIc2Mfsm^btjd=F9pF!TQt zSO4E!QOBa6%wNACI>>1`%=3VB|8LrlpEMsixyOF_gf;9Jb%9G#IY0(cO?!PRZTpdU zPZ?fNN+2%@C$RE3p+vNGdws&H^tVk=Z~V!GVTW3ZAr2h0$Q)BLo%Y=J3^=sR$g=+z z4+h{Sk43*a3J6bl?$!Z27oA_NBTV$_ErL#TIyxnRsP~eW6o^9pIzBo=zow@FWCU+X zOnxF;Po~-na>54mmm_#gR`Bc5`9F11PhXBK@*-bIS5pCriFvwum=oQ^q;~y)#~n7a zPm!i`;wu=SRyRX-5vTS%w{crKWPgfNPl~@}0(JhBF8)~>^-nZraK9yX7G>uQbmJ(B zq*7JlC~i5MMSbB(oAzPNe_nr8hTl8A(_1`NEee@vGGGC^FRrc{B79h*5D2ogJX|}d z+uyQuT%`vr8?Bw<#d0ELNgy#C% Date: Wed, 19 Jan 2022 19:43:35 +0100 Subject: [PATCH 09/11] nicer text --- docs/source/docker/integration/docker_with_datasource.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/docker/integration/docker_with_datasource.rst b/docs/source/docker/integration/docker_with_datasource.rst index 1566d0b00..71228db73 100644 --- a/docs/source/docker/integration/docker_with_datasource.rst +++ b/docs/source/docker/integration/docker_with_datasource.rst @@ -128,7 +128,7 @@ to the S3 bucket and running the docker again. This workflow of iteratively growing your dataset with the Lightly Docker has the following advantages: -- You can learn from your findings after the first iteration +- You can learn from your findings after each iteration to know which raw data you need to collect next. - Only your new data is processed, saving you time and compute cost. - You don't need to configure anything, just run the same command again. From 261389297a3916f43e2948ab0b4c5f34bc12d182 Mon Sep 17 00:00:00 2001 From: MalteEbner Date: Thu, 20 Jan 2022 11:07:09 +0100 Subject: [PATCH 10/11] more complete docker command --- docs/source/docker/integration/docker_with_datasource.rst | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/source/docker/integration/docker_with_datasource.rst b/docs/source/docker/integration/docker_with_datasource.rst index 71228db73..eb1ef73d6 100644 --- a/docs/source/docker/integration/docker_with_datasource.rst +++ b/docs/source/docker/integration/docker_with_datasource.rst @@ -76,7 +76,10 @@ E.g. run the docker with -v OUTPUT_DIR:/home/output_dir \ lightly/sampling:latest \ token=YOUR_LIGHTLY_PLATFORM_TOKEN \ - datasource.dataset_id=YOUR_DATASET_ID + datasource.dataset_id=YOUR_DATASET_ID \ + stopping_condition.n_samples=50 \ + upload_dataset=True + View the progress of the Lightly Docker --------------------------------------- From 9a516019e0ea1d97f07e3a33184589d670180729 Mon Sep 17 00:00:00 2001 From: MalteEbner Date: Tue, 25 Jan 2022 09:50:43 +0100 Subject: [PATCH 11/11] mini-recipe for creating S3 dataset --- .../integration/docker_with_datasource.rst | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/docs/source/docker/integration/docker_with_datasource.rst b/docs/source/docker/integration/docker_with_datasource.rst index eb1ef73d6..5803bbbd4 100644 --- a/docs/source/docker/integration/docker_with_datasource.rst +++ b/docs/source/docker/integration/docker_with_datasource.rst @@ -42,10 +42,21 @@ Requirements ------------ This recipe requires that you already have a dataset in the Lightly Platform -configured to use the data in your AWS S3 bucket. +configured to use the data in your AWS S3 bucket. Create such a dataset in 2 steps: -If you don`t have such a dataset yet, -follow the steps on how to +1. `Create a new dataset `_ in Lightly. + Make sure that you choose the input type `Images` or `Videos` correctly, + depending on the type of files in your S3 bucket. +2. Edit your dataset, select S3 as your datasource and fill out the form. + + .. figure:: ../../getting_started/resources/LightlyEdit2.png + :align: center + :alt: Lightly S3 connection config + :width: 60% + + Lightly S3 connection config + +If you don`t know how to fill out the form, follow the full tutorial to `create a Lightly dataset connected to your S3 bucket `_. Furthermore, you should have access to a machine running docker.