diff --git a/PySDM/dynamics/seeding.py b/PySDM/dynamics/seeding.py
index 410d8abb20..6222287add 100644
--- a/PySDM/dynamics/seeding.py
+++ b/PySDM/dynamics/seeding.py
@@ -19,8 +19,8 @@ def __init__(
seeded_particle_extensive_attributes: dict,
seeded_particle_multiplicity: Sized,
):
- for attr in seeded_particle_extensive_attributes.values():
- assert len(seeded_particle_multiplicity) == len(attr)
+ # for attr in seeded_particle_extensive_attributes.values():
+ # assert len(seeded_particle_multiplicity) == len(attr)
self.particulator = None
self.super_droplet_injection_rate = super_droplet_injection_rate
self.seeded_particle_extensive_attributes = seeded_particle_extensive_attributes
diff --git a/PySDM/particulator.py b/PySDM/particulator.py
index 32ae0697d5..4f014154e0 100644
--- a/PySDM/particulator.py
+++ b/PySDM/particulator.py
@@ -469,15 +469,28 @@ def seeding(
Instead increase multiplicity of injected particles."
)
- self.backend.seeding(
- idx=self.attributes._ParticleAttributes__idx,
- multiplicity=self.attributes["multiplicity"],
- extensive_attributes=self.attributes.get_extensive_attribute_storage(),
- seeded_particle_index=seeded_particle_index,
- seeded_particle_multiplicity=seeded_particle_multiplicity,
- seeded_particle_extensive_attributes=seeded_particle_extensive_attributes,
- number_of_super_particles_to_inject=number_of_super_particles_to_inject,
- )
+ if self.environment.mesh.n_dims == 0:
+ self.backend.seeding(
+ idx=self.attributes._ParticleAttributes__idx,
+ multiplicity=self.attributes["multiplicity"],
+ extensive_attributes=self.attributes.get_extensive_attribute_storage(),
+ seeded_particle_index=seeded_particle_index,
+ seeded_particle_multiplicity=seeded_particle_multiplicity,
+ seeded_particle_extensive_attributes=seeded_particle_extensive_attributes,
+ number_of_super_particles_to_inject=number_of_super_particles_to_inject,
+ )
+
+ else:
+ self.backend.seeding(
+ idx=self.attributes._ParticleAttributes__idx,
+ multiplicity=self.attributes["multiplicity"],
+ extensive_attributes=self.attributes.get_extensive_attribute_storage(),
+ seeded_particle_index=seeded_particle_index,
+ seeded_particle_multiplicity=seeded_particle_multiplicity,
+ seeded_particle_extensive_attributes=seeded_particle_extensive_attributes,
+ number_of_super_particles_to_inject=number_of_super_particles_to_inject,
+ )
+
self.attributes.reset_idx()
self.attributes.sanitize()
diff --git a/docs/bibliography.json b/docs/bibliography.json
index 337dc2a2b6..002395ecc6 100644
--- a/docs/bibliography.json
+++ b/docs/bibliography.json
@@ -91,7 +91,8 @@
"examples/docs/pysdm_examples_landing.md",
"examples/PySDM_examples/utils/kinematic_2d/__init__.py",
"examples/PySDM_examples/Morrison_and_Grabowski_2007/__init__.py",
- "examples/PySDM_examples/Morrison_and_Grabowski_2007/fig_1.ipynb"
+ "examples/PySDM_examples/Morrison_and_Grabowski_2007/fig_1.ipynb",
+ "examples/PySDM_examples/seeding/MG2007_seeding.ipynb"
],
"label": "Morrison & Grabowski 2007 (J. Atmos. Sci. 64)",
"title": "Comparison of Bulk and Bin Warm-Rain Microphysics Models Using a Kinematic Framework"
@@ -260,7 +261,9 @@
"examples/PySDM_examples/Arabas_et_al_2015/gui.ipynb",
"PySDM/dynamics/displacement.py",
"PySDM/physics/particle_advection/implicit_in_space.py",
- "examples/PySDM_examples/utils/kinematic_2d/__init__.py"
+ "examples/PySDM_examples/seeding/MG2007_seeding.ipynb"
+ "examples/PySDM_examples/utils/kinematic_2d/__init__.py",
+ "examples/PySDM_examples/seeding/MG2007_seeding.ipynb"
],
"label": "Arabas et al. 2015 (Geosci. Model Dev. 2015)",
"title": "libcloudph++ 1.0: a single-moment bulk, double-moment bulk, and particle-based warm-rain microphysics library in C++"
@@ -513,7 +516,8 @@
"examples/docs/pysdm_examples_landing.md",
"examples/PySDM_examples/deJong_Mackay_et_al_2023/figs_10_11_12_13.ipynb",
"examples/PySDM_examples/Shipway_and_Hill_2012/fig_1.ipynb",
- "examples/PySDM_examples/Shipway_and_Hill_2012/__init__.py"
+ "examples/PySDM_examples/Shipway_and_Hill_2012/__init__.py",
+ "examples/PySDM_examples/seeding/SH2012_seeding.ipynb"
],
"label": "Shipway & Hill 2012 (Q. J. R. Meteorol. Soc. 138)",
"title": "Diagnosis of systematic differences between multiple parametrizations of warm rain microphysics using a kinematic framework"
@@ -610,7 +614,9 @@
},
"https://doi.org/10.1016/S0169-8095(97)00082-3": {
"usages": [
- "examples/PySDM_examples/utils/kinematic_2d/__init__.py"
+ "examples/PySDM_examples/Szumowski_et_al_1998/__init__.py",
+ "examples/PySDM_examples/utils/kinematic_2d/__init__.py",
+ "examples/PySDM_examples/seeding/MG2007_seeding.ipynb"
],
"label": "Szumowski et al. 1998 (Atmos. Res. 45)",
"title": "Simple two-dimensional kinematic framework designed to test warm rain microphysical models"
diff --git a/examples/PySDM_examples/seeding/MG2007_seeding.ipynb b/examples/PySDM_examples/seeding/MG2007_seeding.ipynb
new file mode 100644
index 0000000000..5b16ebdf62
--- /dev/null
+++ b/examples/PySDM_examples/seeding/MG2007_seeding.ipynb
@@ -0,0 +1,4539 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "## Seeding dynamic for a 2D kinematic driver\n",
+ "\n",
+ "#### based on the stratocumulus stream function from Morrison & Grabowski 2007 and setup from Arabas et al. 2015\n",
+ "https://doi.org/10.1175/JAS3980\n",
+ "\n",
+ "(see the Arabas et al. 2015 example in PySDM for more details)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2023-12-29T15:12:04.969183Z",
+ "start_time": "2023-12-29T15:12:03.369050Z"
+ },
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "import numpy as np\n",
+ "\n",
+ "from PySDM import Formulae\n",
+ "from PySDM.physics import in_unit, si\n",
+ "from PySDM_examples.seeding.settings_2d import Settings\n",
+ "from PySDM_examples.seeding.simulation_2d import Simulation\n",
+ "from PySDM_examples.utils.kinematic_2d import Storage\n",
+ "from PySDM_examples.seeding.spin_up_2d import SpinUp\n",
+ "\n",
+ "from seeding_utils import sav_as_xarr\n",
+ "import matplotlib.pyplot as plt\n",
+ "from matplotlib import pyplot\n",
+ "from PySDM_examples.Shipway_and_Hill_2012 import plot\n",
+ "from open_atmos_jupyter_utils import show_plot"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2023-12-29T15:13:57.683736Z",
+ "start_time": "2023-12-29T15:12:04.972230Z"
+ },
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "/Users/hyfives-lamont/Desktop/cloud_seeding/PySDM/PySDM/backends/numba.py:48: UserWarning: Disabling Numba threading due to ARM64 CPU (atomics do not work yet)\n",
+ " warnings.warn(\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "0.0% (times since last print: cpu=16.1s wall=13.1s)\n"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "<__array_function__ internals>:200: RuntimeWarning: invalid value encountered in cast\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "1.1% (times since last print: cpu=31.1s wall=31.3s)\n",
+ "2.2% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "3.3% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "4.4% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "5.6% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "6.7% (times since last print: cpu=0.9s wall=0.9s)\n",
+ "7.8% (times since last print: cpu=0.9s wall=0.9s)\n",
+ "8.9% (times since last print: cpu=1.1s wall=1.1s)\n",
+ "10.0% (times since last print: cpu=0.9s wall=0.9s)\n",
+ "11.1% (times since last print: cpu=0.9s wall=0.9s)\n",
+ "12.2% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "13.3% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "14.4% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "15.6% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "16.7% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "17.8% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "18.9% (times since last print: cpu=0.6s wall=0.7s)\n",
+ "20.0% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "21.1% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "22.2% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "23.3% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "24.4% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "25.6% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "26.7% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "27.8% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "28.9% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "30.0% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "31.1% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "32.2% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "33.3% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "34.4% (times since last print: cpu=2.0s wall=2.0s)\n",
+ "35.6% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "36.7% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "37.8% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "38.9% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "40.0% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "41.1% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "42.2% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "43.3% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "44.4% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "45.6% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "46.7% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "47.8% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "48.9% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "50.0% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "51.1% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "52.2% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "53.3% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "54.4% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "55.6% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "56.7% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "57.8% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "58.9% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "60.0% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "61.1% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "62.2% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "63.3% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "64.4% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "65.6% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "66.7% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "67.8% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "68.9% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "70.0% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "71.1% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "72.2% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "73.3% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "74.4% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "75.6% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "76.7% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "77.8% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "78.9% (times since last print: cpu=0.8s wall=0.9s)\n",
+ "80.0% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "81.1% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "82.2% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "83.3% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "84.4% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "85.6% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "86.7% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "87.8% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "88.9% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "90.0% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "91.1% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "92.2% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "93.3% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "94.4% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "95.6% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "96.7% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "97.8% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "98.9% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "100.0% (times since last print: cpu=0.7s wall=0.7s)\n"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "/Users/hyfives-lamont/Desktop/cloud_seeding/PySDM/PySDM/backends/numba.py:48: UserWarning: Disabling Numba threading due to ARM64 CPU (atomics do not work yet)\n",
+ " warnings.warn(\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "0.0% (times since last print: cpu=8.4s wall=5.0s)\n"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "<__array_function__ internals>:200: RuntimeWarning: invalid value encountered in cast\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "1.1% (times since last print: cpu=1.1s wall=1.1s)\n",
+ "2.2% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "3.3% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "4.4% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "5.6% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "6.7% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "7.8% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "8.9% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "10.0% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "11.1% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "12.2% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "13.3% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "14.4% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "15.6% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "16.7% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "17.8% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "18.9% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "20.0% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "21.1% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "22.2% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "23.3% (times since last print: cpu=0.5s wall=0.5s)\n",
+ "24.4% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "25.6% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "26.7% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "27.8% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "28.9% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "30.0% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "31.1% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "32.2% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "33.3% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "34.4% (times since last print: cpu=1.4s wall=1.4s)\n",
+ "35.6% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "36.7% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "37.8% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "38.9% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "40.0% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "41.1% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "42.2% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "43.3% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "44.4% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "45.6% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "46.7% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "47.8% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "48.9% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "50.0% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "51.1% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "52.2% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "53.3% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "54.4% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "55.6% (times since last print: cpu=0.6s wall=0.6s)\n",
+ "56.7% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "57.8% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "58.9% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "60.0% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "61.1% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "62.2% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "63.3% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "64.4% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "65.6% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "66.7% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "67.8% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "68.9% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "70.0% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "71.1% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "72.2% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "73.3% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "74.4% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "75.6% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "76.7% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "77.8% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "78.9% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "80.0% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "81.1% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "82.2% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "83.3% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "84.4% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "85.6% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "86.7% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "87.8% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "88.9% (times since last print: cpu=0.8s wall=0.8s)\n",
+ "90.0% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "91.1% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "92.2% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "93.3% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "94.4% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "95.6% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "96.7% (times since last print: cpu=0.7s wall=0.7s)\n",
+ "97.8% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "98.9% (times since last print: cpu=0.7s wall=0.8s)\n",
+ "100.0% (times since last print: cpu=0.7s wall=0.7s)\n"
+ ]
+ }
+ ],
+ "source": [
+ "np.random.seed(123)\n",
+ "\n",
+ "common_params = {\n",
+ " \"grid\": (25, 25),\n",
+ " \"size\": (1500 * si.metres, 1500 * si.metres),\n",
+ " \"simulation_time\": 5400 * si.second,\n",
+ " \"dt\": 5 * si.second,\n",
+ " \"spin_up_time\": 1800 * si.second,\n",
+ " \"particles_per_volume_STP\": 50 / si.cm**3,\n",
+ " \"n_sd_per_gridbox\": 32,\n",
+ " \"radius\": 0.04 * si.micrometre,\n",
+ " \"kappa\": .3,\n",
+ " \"z_part\": (0., 1),\n",
+ " \"x_part\": (0., 1),\n",
+ " \"n_sd_seeding\": 302,\n",
+ " \"seed_particles_per_volume_STP\": 50 / si.cm**3,\n",
+ " \"seed_radius\": 1 * si.micrometre,\n",
+ " \"seed_kappa\": .8,\n",
+ "}\n",
+ "\n",
+ "storage_seeding = Storage()\n",
+ "storage_no_seeding = Storage()\n",
+ "storage= {\n",
+ " 'seeding': storage_seeding,\n",
+ " 'no seeding': storage_no_seeding,\n",
+ "}\n",
+ "settings = {\n",
+ " case: Settings(\n",
+ " **common_params,\n",
+ " formulae= Formulae(seed= np.random.randint(1000)),\n",
+ " super_droplet_injection_rate = {\n",
+ " 'seeding': lambda time: 5 if 5 * si.min < time < 10 * si.min else 0,\n",
+ " 'no seeding': lambda _: 0,\n",
+ " }[case], )\n",
+ " for case in ('seeding', 'no seeding')\n",
+ "}\n",
+ "simulations = {\n",
+ " case: Simulation( \n",
+ " settings[case],\n",
+ " storage[case], \n",
+ " SpinUp= SpinUp,\n",
+ " )\n",
+ " for case in ['seeding', 'no seeding']\n",
+ "}\n",
+ "\n",
+ "simulations['seeding'].reinit()\n",
+ "simulations['seeding'].run()\n",
+ "simulations['no seeding'].reinit()\n",
+ "simulations['no seeding'].run()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "100%|██████████| 91/91 [00:00<00:00, 7358.85it/s]\n",
+ "100%|██████████| 91/91 [00:00<00:00, 7832.58it/s]\n",
+ "100%|██████████| 91/91 [00:00<00:00, 7812.54it/s]\n",
+ "100%|██████████| 91/91 [00:00<00:00, 8481.63it/s]\n",
+ "100%|██████████| 91/91 [00:00<00:00, 8248.12it/s]\n",
+ "100%|██████████| 91/91 [00:00<00:00, 8400.05it/s]\n"
+ ]
+ }
+ ],
+ "source": [
+ "rain_xarr= {case: sav_as_xarr('rain water mixing ratio', settings= settings[case], simulation= simulations[case]) for case in ['seeding', 'no seeding']}\n",
+ "coal_rate_xarr= {case: sav_as_xarr('cor', settings= settings[case], simulation= simulations[case]) for case in ['seeding', 'no seeding']}\n",
+ "sd_gridbox_xarr= {case: sav_as_xarr('super droplet count per gridbox', settings= settings[case], simulation= simulations[case]) for case in ['seeding', 'no seeding']}"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/svg+xml": [
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "c05a2277629042a4b5e93784c9f6da4d",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value=\"./MG2007_seeding.pdf
\")"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "image/svg+xml": [
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "bd51f676c2584dbe836c86858a4f357d",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value=\"./MG2007_no_seeding.pdf
\")"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "for case in ['seeding', 'no seeding']:\n",
+ " time = rain_xarr[case]['T'].dt.seconds\n",
+ "\n",
+ " fig, axs = pyplot.subplot_mosaic(\n",
+ " [['a', 'b', 'c']],\n",
+ " sharey=True,\n",
+ " figsize=(12, 4),\n",
+ " tight_layout=True\n",
+ " )\n",
+ " axs['a'].plot(\n",
+ " sd_gridbox_xarr[case].mean(axis= (1, 2)).values,\n",
+ " in_unit(time, si.min),\n",
+ " marker='.',\n",
+ " color='red',\n",
+ " )\n",
+ " axs['a'].set_ylabel(\"time [min]\")\n",
+ " axs['a'].set_xlabel(\"mean super droplet count\")\n",
+ " axs['a'].grid()\n",
+ " axs['a'].set_xlim(10, 40)\n",
+ "\n",
+ " axs['b'].plot(\n",
+ " coal_rate_xarr[case].mean(axis= (1,2)).values,\n",
+ " in_unit(time, si.min),\n",
+ " color='green',\n",
+ " )\n",
+ " axs['b'].set_ylabel(\"time [min]\")\n",
+ " axs['b'].set_xlabel(\"mean coalescence rate [1/s]\")\n",
+ " axs['b'].grid()\n",
+ " axs['b'].set_xlim(-1000, 65000)\n",
+ "\n",
+ " axs['c'].plot(\n",
+ " in_unit(rain_xarr[case].sel(Z= 30).sum(dim= 'X'), si.mm/si.s),\n",
+ " in_unit(time, si.min),\n",
+ " color='blue',\n",
+ " label= r'Total precipitation = %.5f mm/s'%in_unit(rain_xarr[case].sel(Z= 30).sum(dim= 'X').sum(), si.mm/si.s) \n",
+ " )\n",
+ " axs['c'].set_xlabel(f\"surface precipitation [mm/s]\")\n",
+ " axs['c'].grid()\n",
+ " axs['c'].legend(loc= 'lower right')\n",
+ " axs['c'].set_xlim(-1E-2, 8E-1)\n",
+ "\n",
+ " fig.suptitle(case)\n",
+ " show_plot(f\"MG2007_{case.replace(' ', '_')}.pdf\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "base",
+ "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.9.13"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/examples/PySDM_examples/seeding/SH2012_seeding.ipynb b/examples/PySDM_examples/seeding/SH2012_seeding.ipynb
new file mode 100644
index 0000000000..1f7f37e8a9
--- /dev/null
+++ b/examples/PySDM_examples/seeding/SH2012_seeding.ipynb
@@ -0,0 +1,7449 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "## Seeding dynamic for a 1D kinematic driver \n",
+ "\n",
+ "#### based on the sinusoidal updraft case introduced in Shipway & Hill 2012 \n",
+ "https://doi.org/10.1002/qj.1913\n",
+ "\n",
+ "(see the Shipway and Hill example in PySDM for more details)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2023-12-29T15:12:04.969183Z",
+ "start_time": "2023-12-29T15:12:03.369050Z"
+ },
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "import numpy as np\n",
+ "from PySDM import Formulae\n",
+ "from PySDM.physics import si\n",
+ "from PySDM_examples.seeding.settings_1d import Settings\n",
+ "from PySDM_examples.seeding.simulation_1d import Simulation\n",
+ "\n",
+ "from PySDM.physics import in_unit, si\n",
+ "import matplotlib.pyplot as plt\n",
+ "from matplotlib import pyplot\n",
+ "from PySDM_examples.Shipway_and_Hill_2012 import plot\n",
+ "from open_atmos_jupyter_utils import show_plot"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2023-12-29T15:13:57.683736Z",
+ "start_time": "2023-12-29T15:12:04.972230Z"
+ },
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "/Users/hyfives-lamont/Desktop/cloud_seeding/PySDM/PySDM/backends/numba.py:48: UserWarning: Disabling Numba threading due to ARM64 CPU (atomics do not work yet)\n",
+ " warnings.warn(\n",
+ "/Users/hyfives-lamont/Desktop/cloud_seeding/PySDM/PySDM/backends/numba.py:48: UserWarning: Disabling Numba threading due to ARM64 CPU (atomics do not work yet)\n",
+ " warnings.warn(\n",
+ "/Users/hyfives-lamont/Desktop/cloud_seeding/PySDM/PySDM/backends/numba.py:48: UserWarning: Disabling Numba threading due to ARM64 CPU (atomics do not work yet)\n",
+ " warnings.warn(\n",
+ "/Users/hyfives-lamont/Desktop/cloud_seeding/PySDM/PySDM/backends/numba.py:48: UserWarning: Disabling Numba threading due to ARM64 CPU (atomics do not work yet)\n",
+ " warnings.warn(\n"
+ ]
+ }
+ ],
+ "source": [
+ "np.random.seed(123)\n",
+ "\n",
+ "common_params = {\n",
+ " \"n_sd_per_gridbox\": 32,\n",
+ " \"n_sd_seeding\": 62,\n",
+ " \"dt\": 5 * si.s,\n",
+ " \"dz\": 50 * si.m,\n",
+ " \"p0\": 990 * si.hPa,\n",
+ " \"kappa\": .3,\n",
+ " \"particles_per_volume_STP\": 50 / si.cm**3,\n",
+ " \"seed_particles_per_volume_STP\": 50 / si.cm**3,\n",
+ " \"seed_kappa\": .8,\n",
+ "}\n",
+ "\n",
+ "rho_times_w= 2 * si.kg/si.m**3 * si.m/si.s\n",
+ "simulations = {\n",
+ " case: Simulation(\n",
+ " Settings(\n",
+ " **common_params,\n",
+ " rho_times_w_1=rho_times_w,\n",
+ " formulae= Formulae(seed= np.random.randint(1000)),\n",
+ " super_droplet_injection_rate = {\n",
+ " 'seeding': lambda time: 1 if 5 * si.min < time < 10 * si.min else 0,\n",
+ " 'no seeding': lambda _: 0,\n",
+ " }[case],\n",
+ " precip=True,\n",
+ " )\n",
+ " )\n",
+ " for case in ('seeding', 'no seeding')\n",
+ "}"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "<__array_function__ internals>:200: RuntimeWarning: invalid value encountered in cast\n",
+ "<__array_function__ internals>:200: RuntimeWarning: invalid value encountered in cast\n"
+ ]
+ }
+ ],
+ "source": [
+ "outputs = {case: simulations[case].run() for case in simulations}"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2023-12-29T15:14:06.730859Z",
+ "start_time": "2023-12-29T15:13:57.682941Z"
+ },
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAosAAAHbCAYAAACjjNB9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAACx4UlEQVR4nOzdd5wT5dbA8d9M6jaW3rsoVekoV5oi1cYr96rYUFQExQJiwYoVvSpYEfSKjat4FeyoYKEoioL0JigLCEtd2JJk02beP7KZTXaT7UsSON/PB00mU87MZHeenXnOcxRd13WEEEIIIYSIQI11AEIIIYQQIn5JY1EIIYQQQkQljUUhhBBCCBGVNBaFEEIIIURU0lgUQgghhBBRSWNRCCGEEEJEJY1FIYQQQggRlTQWhRBCCCFEVNJYFEIIIYQQUUljUSSsjIwMFEVh7dq11b4tRVH45JNPqn078awixzsRj9uSJUtQFIVjx45VeB1Tp05FURQUReH555+vVDxTp06lS5culVrHW2+9ZcRzxx13VGpdQoiTjzQWhYhDAwYMiLuLerNmzcjMzKRTp05lXiYzM5Nhw4ZVY1SVE+k4/+Mf/yAzM5P09PRKrbtjx45kZmYyduzYci/rcrlITk5m69atlYoh6LLLLiMzM5PevXtXyfqEECcXc6wDEEJUH4/Hg9VqrZJ1mUwmGjZsWK5lyjt/VfF6vVgslgota7VaqyRus9lc4fUsXryYZs2a0a5du0rHAZCUlERSUlKVfReEECcXubMo4pqmaTz99NO0adMGm81G8+bNeeKJJ6LOv3TpUnr16oXNZqNRo0bce++9+Hw+4/OWLVsWeyzYpUsXpk6darzfvn07/fr1w26306FDBxYvXlxijJ9//jk1a9ZE0zQA1q5di6Io3HXXXcY8N910E6NGjQLgyJEjjBo1iqZNm5KcnMzpp5/O+++/b8x77bXXsnTpUl544QXj0WFGRgYAmzdvZvjw4aSmptKgQQOuvvpqDh8+bCw7YMAAJkyYwKRJk6hbty6DBg2KGPO1117LiBEjePLJJ2nQoAE1a9bkkUcewefzcdddd1G7dm2aNm3KnDlzjGWKPoZ+9NFHady4MUeOHDHmueiii+jXr59xLEIfQweXX7BgAeeccw7Jycl07tyZn3/+OSy2119/nWbNmpGcnMz//d//MX36dGrWrBn1+AfX+7///Y8BAwZgt9uZO3duhY9zpMfQ8+fPp2PHjthsNlq2bMlzzz0XNZ6SbN26lT59+hjfrW+//Tbio/pPP/2Uiy66KOI6du7cSZs2bRg/frxxnMt7zIQQojyksSji2pQpU3j66ad58MEH2bx5M++99x4NGjSIOO/evXsZPnw4PXv2ZN26dbz66qu88cYbPP7442XenqZpXHLJJZhMJn755RdmzZrFPffcU+Iy/fr1Izc3lzVr1gCBBmvdunVZunSpMc+SJUvo378/APn5+XTv3p0vvviCjRs3MnbsWK6++mpWrlwJwAsvvEDv3r258cYbyczMJDMz03gE3L9/f7p06cKqVav4+uuvOXDgAJdeemlYPG+//TZms5mffvqJ2bNnR437+++/Z9++fSxbtozp06czdepULrjgAmrVqsXKlSsZN24c48aNY8+ePRGXv//++2nZsiU33HADALNmzWLZsmW8++67qGr0Xy33338/kydPZu3atZx22mmMGjXKaND/9NNPjBs3jttvv521a9cyaNCgEv84CHXPPfdw2223sWXLFoYMGVLh41zU6tWrufTSS7n88svZsGEDU6dO5cEHH+Stt94qU1xBmqYxYsQIkpOTWblyJa+99hr3339/xPm++OILLr744mKfbdy4kbPPPpt//etfvPrqq6iqWqljJoQQZaILEadycnJ0m82mv/766xE/37lzpw7oa9as0XVd1++77z69bdu2uqZpxjyvvPKKnpqaqvv9fl3Xdb1Fixb6jBkzwtbTuXNn/eGHH9Z1Xde/+eYb3WQy6Xv27DE+/+qrr3RA//jjj6PG2q1bN/3ZZ5/VdV3XR4wYoT/xxBO61WrVc3Jy9MzMTB3Qt2zZEnX54cOH63feeafxvn///vrtt98eNs+DDz6oDx48OGzanj17dEDftm2bsVyXLl2ibido9OjReosWLYzjouu63rZtW71v377Ge5/Pp6ekpOjvv/++ruvFj7eu6/qff/6pp6Wl6ffcc4+enJysz507N2w7occtuPx//vMf4/NNmzaFHZvLLrtMP//888PWceWVV+rp6elR9yW43ueff77U/S7Lcf7hhx90QD969Kiu67p+xRVX6IMGDQqb56677tI7dOgQdTsPP/yw3rlz57BpX331lW42m/XMzExj2uLFi4t9t3766Se9bt26xrkJrmvFihV67dq19WeeeSZsveU5ZpH2VwghSiN3FkXc2rJlC263m4EDB5Z5/t69e6MoijHt7LPPJi8vj7///rvM62jevDlNmzY1ppUlKWDAgAEsWbIEXddZvnw5F198MZ06deLHH3/khx9+oEGDBkb/M7/fzxNPPMEZZ5xBnTp1SE1NZdGiRezevbvEbaxevZoffviB1NRU419wnX/++acxX48ePcq0rx07dgy7A9igQQNOP/10473JZKJOnTocPHgw6jpat27Ns88+y9NPP82FF17IlVdeWep2zzjjDON1o0aNAIxtbNu2jV69eoXNX/R9NEX3u6LHuagtW7Zw9tlnh007++yz2b59O36/v8zr2bZtG82aNQvrxxhp3z799FMuuOCCsHOze/duzjvvPB544AEmT55cbL0VPWZCCFEWkuAi4lZSUlK55td1PayhGJwGGNNVVTWmBXm93mLzhyq6zkgGDBjAG2+8wbp161BVlQ4dOtC/f3+WLl3K0aNHjUfQAM899xwzZszg+eef5/TTTyclJYU77rgDj8dT4jY0TePCCy/k6aefLvZZsNEFkJKSUmq8QLEEEEVRIk4L9ouLZtmyZZhMJjIyMvD5fJjNJf9aCd1G8NgGt1HSOSxN0f2u6HEuqjIxlbaeSD777DOmTZsWNq1evXo0btyYefPmcf3111OjRo0qj08IIaKRO4sibp166qkkJSXx3XfflWn+Dh06sGLFirAL5YoVK0hLS6NJkyZA4KKbmZlpfJ6Tk8POnTvD1rF792727dtnTCuagBFJsN/i888/T//+/VEUhf79+7NkyZKw/oqAcefxqquuonPnzrRu3Zrt27eHrc9qtRa7a9WtWzc2bdpEy5YtadOmTdi/sjYQq9oHH3zAggULWLJkCXv27OGxxx6r1PratWvHr7/+GjZt1apVFVpXRY9zUR06dODHH38Mm7ZixQpOO+00TCZTmeNp164du3fv5sCBA8a03377LWye7du3k5GRweDBg8OmJyUl8cUXX2C32xkyZAi5ublh662qYyaEEJFIY1HELbvdzj333MPdd9/NO++8w59//skvv/zCG2+8EXH+m2++mT179nDrrbeydetWPv30Ux5++GEmTZpkPNI799xzeffdd1m+fDkbN25k9OjRYRf88847j7Zt23LNNdewbt06li9fHjEJoaj09HS6dOnC3LlzGTBgABBoQP7+++/88ccfxjSANm3asHjxYlasWMGWLVu46aab2L9/f9j6WrZsycqVK8nIyODw4cNomsYtt9xCVlYWo0aN4tdff+Wvv/5i0aJFjBkzplyPQ6vK33//zfjx43n66afp06cPb731FtOmTeOXX36p8DpvvfVWFi5cyPTp09m+fTuzZ8/mq6++KtMduaIqepyLuvPOO/nuu+947LHH+OOPP3j77bd5+eWXiz0OLs2gQYM45ZRTGD16NOvXr+enn34yvlvB/fv0008577zzSE5OLrZ8SkoKX375JWazmWHDhpGXlwdU7TETQohIpLEo4tqDDz7InXfeyUMPPUT79u257LLLovaha9KkCQsXLuTXX3+lc+fOjBs3juuvv54HHnjAmGfKlCn069ePCy64gOHDhzNixAhOOeUU43NVVfn4449xu9306tWLG264ocyZpeeccw5+v99oGNaqVYsOHTpQr1492rdvH7ZP3bp1Y8iQIQwYMICGDRsyYsSIsHVNnjwZk8lkLL97924aN27MTz/9hN/vZ8iQIXTq1Inbb7+d9PT0ErOPq4Ou61x77bX06tWLCRMmAIHG0IQJE7jqqquMhkx5nX322cyaNYvp06fTuXNnvv76ayZOnIjdbi/3uip6nIvq1q0b//vf/5g3bx6dOnXioYce4tFHH+Xaa68tVzwmk4lPPvmEvLw8evbsyQ033GB8N4P79+mnn0bMgg5KTU3lq6++Qtd1hg8fjsPhqNJjJoQQkSi6dG4RQsSxG2+8ka1bt7J8+fJYh1JmU6dO5ZNPPim1NOJPP/1Enz592LFjB+np6TRq1Ig9e/ZUelDwaMdswIABdOnSpdIlCIUQJxe5syiEiCvPPvss69atY8eOHbz00ku8/fbbjB49OtZhlduGDRtITU1l5syZxrSPP/6YxYsXk5GRwbfffsvYsWM5++yzOeWUU8jKymL69OkVaiiWdsz++9//kpqamlANbiFE/JA7i0KIuHLppZeyZMkScnNzad26Nbfeeivjxo2LdVjlkpWVRVZWFhBIqgrWmX7nnXd47LHH2LNnD3Xr1uW8887jueeeo06dOpXaXmnHLDc310isqVmzJnXr1q3U9oQQJxdpLAohhBBCiKjkMbQQQgghhIhKGotCCCGEECIqaSwKIYQQQoiopLEYZ2bOnEmrVq2w2+1079691OzFpUuX0r17d+x2O61bt2bWrFnHKdKKKc/+LVmyBEVRiv3bunXrcYy4bJYtW8aFF15I48aNURSFTz75pNRlEunclXf/EuncTZs2jZ49e5KWlkb9+vUZMWIE27ZtK3W5RDh/Fdm3RDp3r776KmeccQY1atSgRo0a9O7dm6+++qrEZRLhvAkRb6SxGEc++OAD7rjjDu6//37WrFlD3759GTZsWMSBggF27tzJ8OHD6du3L2vWrOG+++7jtttuY/78+cc58rIp7/4Fbdu2jczMTOPfqaeeepwiLjuHw0Hnzp15+eWXyzR/op278u5fUCKcu6VLl3LLLbfwyy+/sHjxYnw+H4MHD8bhcERdJlHOX0X2LSgRzl3Tpk156qmnWLVqFatWreLcc8/l4osvZtOmTRHnT5TzJkTc0UXc6NWrlz5u3Liwae3atdPvvffeiPPffffdert27cKm3XTTTfpZZ51VbTFWRnn374cfftAB/ejRo8chuqoD6B9//HGJ8yTauQtVlv1L1HOn67p+8OBBHdCXLl0adZ5EPX9l2bdEPne6ruu1atXS//Of/0T8LFHPmxCxJncW44TH42H16tUMHjw4bPrgwYNZsWJFxGV+/vnnYvMPGTKEVatW4fV6qy3WiqjI/gV17dqVRo0aMXDgQH744YfqDPO4SaRzVxmJeO6ys7MBqF27dtR5EvX8lWXfghLt3Pn9fubNm4fD4aB3794R50nU8yZErEljMU4cPnwYv99PgwYNwqY3aNCA/fv3R1xm//79Eef3+XwcPny42mKtiIrsX6NGjXjttdeYP38+CxYsoG3btgwcOJBly5Ydj5CrVSKdu4pI1HOn6zqTJk2iT58+dOrUKep8iXj+yrpviXbugpVybDYb48aN4+OPP6ZDhw4R503E8yZEPDDHOgARTlGUsPe6rhebVtr8kabHi/LsX9u2bWnbtq3xvnfv3uzZs4dnn32Wfv36VWucx0OinbvySNRzN2HCBNavX8+PP/5Y6ryJdv7Kum+Jdu7atm3L2rVrOXbsGPPnz2f06NEsXbo0aoMx0c6bEPFA7izGibp162IymYrdZTt48GCxv4SDGjZsGHF+s9lc6fJhVa0i+xfJWWedxfbt26s6vOMukc5dVYn3c3frrbfy2Wef8cMPP9C0adMS502081eefYskns+d1WqlTZs29OjRg2nTptG5c2deeOGFiPMm2nkTIl5IYzFOWK1WunfvzuLFi8OmL168mH/84x8Rl+ndu3ex+RctWkSPHj2wWCzVFmtFVGT/IlmzZg2NGjWq6vCOu0Q6d1UlXs+drutMmDCBBQsW8P3339OqVatSl0mU81eRfYskXs9dJLqu43a7I36WKOdNiLgTo8QaEcG8efN0i8Wiv/HGG/rmzZv1O+64Q09JSdEzMjJ0Xdf1e++9V7/66quN+f/66y89OTlZnzhxor5582b9jTfe0C0Wi/7RRx/FahdKVN79mzFjhv7xxx/rf/zxh75x40b93nvv1QF9/vz5sdqFqHJzc/U1a9boa9as0QF9+vTp+po1a/Rdu3bpup745668+5dI5278+PF6enq6vmTJEj0zM9P453Q6jXkS9fxVZN8S6dxNmTJFX7Zsmb5z5059/fr1+n333aerqqovWrRI1/XEPW9CxBtpLMaZV155RW/RooVutVr1bt26hQ1xMXr0aL1///5h8y9ZskTv2rWrbrVa9ZYtW+qvvvrqcY64fMqzf08//bR+yimn6Ha7Xa9Vq5bep08f/csvv4xB1KULDjdS9N/o0aN1XU/8c1fe/UukcxdpvwD9zTffNOZJ1PNXkX1LpHM3ZswY4/dJvXr19IEDBxoNRV1P3PMmRLxRdL2gd68QQgghhBBFSJ9FIYQQQggRlTQWhRBCCCFEVNJYFEIIIYQQUUljUQghhBBCRCWNRSGEEEIIEZU0FhOI2+1m6tSpUQecTXSyf4nrRN43OLH370TeNzjx90+I40GGzkkgOTk5pKenk52dTY0aNWIdTpWT/UtcJ/K+wYm9fyfyvsGJv39CHA9yZ1EIIYQQQkQljUUhhBBCCBGVOdYBiPLLycmJdQjVIrhfsn+J50TeNzix9+9E3jc4cfdLiONJ+iwmkOzsbJo0bYojLy/WoQghRMJITU3l77//Jj09PdahCJGQ5M5iAlEUBUdeHtszdpGWVgPQCTb1dSh4HZig6wWvdJ3gXwOh04w5dTDm0KOvp/BPCr1wPSHrD5uGHraMbsxTuE700NgL1qmDpoduVw9fR8g2gvPrRdZDke0U3W7R+UPXU3gcQ7cLGoUbDo2r2HaKHbMi2y31mBRZhx4yP6BrgRXrIcEZ04PvQzaiB4IP25/APIHpxjx6+HEGQNND1hOyHBSsk6jrLAw+bIcDn0d7r4XMb+wPFD8IET7XCP9iRNoOJcehh24n+HlwnZoe9l4P3b9isYT8LIWtg+LLFHyvQs9f+DoD6yt2TsLOTfj7wPwh6whZJmw9FMYa+F5pkbcbtp7w7x6aHvJ91dDQ0XWtYHd1NF1DRyv8mUZD00Er+KIEfgaKfG4spxdsNnwdgW0Elgt8XriO0GkF0QDgwcO3ed+jKApCiIqRxmICqlGjRpU1FoONn+CEaOspV2OxDA2jaI220huLoeuItp6isZe+3dIai6Hvy7SdSNst9ZhE3j8jrkiNxSKNDT1kIxVuLAbXGRKbsRyUus7Ckxm2wxVvLJb6vhzbifK+XI3F0PelNhYjrLNI47BCjcVgQ0/XQQnZjqIXTit4T8F7XS8yLfhdCwRB4Q4GPtND5inYocJYKVhnsFFnNM9CGosh/w0sUTgluF0tyueh6w1dR+FWCrejR9u2XriMEKJyJMFFCCGEEEJEJY1FIYQQQggRlTQWhRBCCCFEVNJYFEIIIYQQUUljUQghhBBCRCWNRSGEEEIIEZU0FoUQQgghRFTSWBRCCCGEEFFJY1EIIYQQQkQljUUhhBBCCBGVNBaFEEIIIURU0lgUQgghhBBRSWNRCCGEEEJEZY51AKL8cnJy0HUAveD/oIMxjYLXesGLglnCphlz6mDMoUdfT3A7wW0WvtWNz41p6GHL6MY8hetED429YJ06aHrodvXwdYRsIzi/XmQ9FNlO0e0WnT90PYXHMXS7oFG44dC4im2n2DErst1Sj0mRdegh8wO6FlixHhKcMT34PmQjeiD4sP0JzBOYbsyjhx9nADQ9ZD0hy0HBOom6zsLgw3Y48Hm091rI/Mb+QPGDEOFzjfAvRqTtUHIceuh2gp8H16npYe/10P0rFkvIz1LYOii+TMH3KvT8ha8zsL5i5yTs3IS/D8wfso6QZcLWQ2Gsge+VFnm7YesJ/+4Fvn/BODQ0dHRdK9hdHU3X0NEKf6bR0HTQCr4ogZ+BIp8by+kFmw1fR2AbgeUCnxeuI3RaQTQA+PAhhKgcaSwmEKvVSsOGDTm1ZYtYhyKEEAmjYcOGWK3WWIchRMJSdONPRZEI8vPz8Xg8sQ5DCCEShtVqxW63xzoMIRKWNBaFEEIIIURUkuAihBBCCCGiksaiEEIIIYSIShqLQgghhBAiKmksCiGEEEKIqKSxKIQQQgghopLGohBCCCGEiEoai0IIIYQQIippLAohhBBCiKiksSiEEEIIIaKSxqIQQgghhIhKGotCCCGEECIqaSwKIYQQQoiopLEohBBCCCGiksaiEEIIIYSIShqLQgghhBAiKmksCiGEEEKIqGLaWHz11Vc544wzqFGjBjVq1KB379589dVXJS6zdOlSunfvjt1up3Xr1syaNes4RSuEEEIkDrnGiqoS08Zi06ZNeeqpp1i1ahWrVq3i3HPP5eKLL2bTpk0R59+5cyfDhw+nb9++rFmzhvvuu4/bbruN+fPnH+fIhRBCiPgm11hRVRRd1/VYBxGqdu3aPPPMM1x//fXFPrvnnnv47LPP2LJlizFt3LhxrFu3jp9//jni+txuN26323ivaRpZWVnUqVMHRVGqfgeEEEKIKqDrOrm5uTRu3BhVrZp7O1V9jQW5ziayMn/H9Djh8/n0999/X7darfqmTZsiztO3b1/9tttuC5u2YMEC3Ww26x6PJ+IyDz/8sA7IP/kn/+Sf/JN/Cflvz549cXuNlevsifGvtO+YmRjbsGEDvXv3Jj8/n9TUVD7++GM6dOgQcd79+/fToEGDsGkNGjTA5/Nx+PBhGjVqVGyZKVOmMGnSJON9dnY2zZs3Z0fGLtJq1KjanRFVxulw0KpZUwB27vmb5JQUiSdO44mnWIQ4keTm5NCmZQvS0tIqvI7qvsZC9Ovsnj17qFGjBrm5uRw9epTk5GTq1q1b4X0RVS8nJ4dmzZqV+h2LeWOxbdu2rF27lmPHjjF//nxGjx7N0qVLo36Zi97S1gueoke71W2z2bDZbMWmpxV0+BXxyWKx0LdffwDSa9YkKSlJ4glhMpmM12k1apASwwZavB0bIU40lXmUW93XWIh+nQ0m1syZM4eJEydy8cUX88knn1R4X0T1Ke07FvPGotVqpU2bNgD06NGD3377jRdeeIHZs2cXm7dhw4bs378/bNrBgwcxm83UqVPnuMQrjo+kpCQWff99rMMwxFs88USOjRDxKx6usR988AEA3333XYXXIWIr7sZZ1HU9rKNsqN69e7N48eKwaYsWLaJHjx5YLJbjEZ4QQgiRsGJxjfV4PAD4fL4Kr0PEVkwbi/fddx/Lly8nIyODDRs2cP/997NkyRKuvPJKINAP4pprrjHmHzduHLt27WLSpEls2bKFOXPm8MYbbzB58uRY7YIQQggRl+LlGpueng4gXVQSWEwfQx84cICrr76azMxM0tPTOeOMM/j6668ZNGgQAJmZmezevduYv1WrVixcuJCJEyfyyiuv0LhxY1588UVGjhwZq10Q1cTlcjGgz9kALPnxp5j/knE4HLQ7pTUAW//8K6Z9BOONHBsh4lO8XGOzs7OBwO91kZjibpzF6paTk0N6ejoHso5Kgkscczgc1E0PnJ/D2Tkxb4BIPIkRixAnkpycHBrUrkV2dnZCXa+C19lg3N27d+f333/HbrdLgzHOFD1X0cQ8wUWISOx2O1989bXxWsSvpKQkVq9bb7wWQohQwT6SmqbFOBJRUdJYFHHJZDIxsOBRiYhvqqrSoWPHWIchhIhTOTk5gCS4JLK4y4YWQgghxIkjmEldVSULxfEndxZFXPL5fCz+5hsABg0ZgtksX9V45fF4+Pe0aQDcPWUKVqs1xhEJIeJJzZo1AeT3eAKTMyfiktvt5pKLLwICSRPySyZ+eb1ennjsUQAmTp4sjUUhhDjByBVYxCVVVenWo4fxOtbiLR4hhEgUDRs2BKhUjWsRW9JYFHEpKSmJn35ZGeswDPEWjxBCJIpjx44BMs5iIpNbJEIIIYSoNsGnMYqixDgSUVHSWBRCCCFEtenevTsAbdu2jXEkoqKksSjiksvl4py+fTmnb9+4eHThdDppe0pr2p7SGqfTGetwhBAiYezfvx8IlBcUiUn6LIq4pGkav/y8wngda7qus3vXLuO1EEIIcbKQxqKISzabjQ/mzzdeCyGESExbt24F4MiRIzGORFSUNBZFXDKbzVx08YhYhyGEEKKSsrKygMAA/iIxSZ9FIYQQQlSb4DiLdrs9xpGIipLGoohLfr+fZUuWsGzJEvx+f6zDEUIIUUGtW7cGoFatWjGORFSUPIYWcSk/P58h5w0EAuX+UlJSYhyREEIIcXKSxqKIS4qi0L5DB+N1rMVbPPFEjo0QoiTBP/al3F/iksaiiEvJycn8vn5DrMMwxFs88USOjRCiJNu2bQNg7969MY5EVJT0WRRCCCFEtQkWVvB6vTGORFSUNBaFEEIIUW3S09MBSEpKinEkoqKksSjiksvl4vwhgzl/yOC4KffX7YzT6XbG6VLurwg5NkKIkmRnZwPExe9yUTHSZ1HEJU3T+P6774zXsabrOls2bzZei0JybIQQ4sQmjUURl2w2G3Peecd4LeKX3W7nm2+/M14LIUSoYF9F+WMycUljUcQls9nMqCuujHUYogxMJhP9BgyIdRhCiDh17NgxQBJcEpn0WRRCCCFEtTGZTICMw5rIpLEo4pLf72fVb7+x6rffpNxfnPN6vcyaOZNZM2fKnQMhRDG1a9cGwGKxxDgSUVHyGFrEpfz8fPr2PguQcn/xzuPxMPG2WwG4evRouSAIIcQJRhqLIi4pikLzFi2M17EWb/EIIUSiqFevHoD80Z/ApLEo4lJycjLb/vwr1mEY4i0eIYRIFMHxV6WbSuKSPotCCCGEqDY+nw9A+p8nMGksCiGEEKLanHnmmQC0a9cuxpGIipLGoohL+fn5/OuS/+Nfl/wf+fn5sQ4Hl8vF2WedydlnnSklq4QQohwyMzMB2L9/f4wjERUlfRZFXPL7/Xzx2WfG61jTNI3fV60yXgshhBAnC2ksirhktVp5ZdYs47UQQojEtGPHDgCOHj0a40hERUljUcQli8XCmBtujHUYQgghKungwYMAcdGlSFSM9FkUQgghRLWpU6cOIE+JEpk0FkVc0jSNzZs2sXnTJukjKIQQCaxt27ZAYaNRJB55DC3iksvlonvnMwAp9yeEEELEkjQWRdyqW7durEMIE2/xxBM5NkKIaIJ/7NeoUSPGkYiKksaiiEspKSns2X8g1mEY4i2eeCLHRghRkmA29L59+2Iciago6bMohBBCiGqTl5cHgNvtjnEkoqKksSiEEEKIahN8/Gy322MciagoaSyKuJSfn8+1V1/FtVdfFRdjc7lcLgafey6Dzz1Xyv0VIcdGCFGSnJwcQMZZTGTSZ1HEJb/fzwfvvw/AK7NmxziawFA+y5ctNV6LQnJshBDixBbTO4vTpk2jZ8+epKWlUb9+fUaMGMG2bdtKXGbJkiUoilLs39atW49T1OJ4sFqt/Pu56fz7uekykGucs9lszJ03j7nz5mGz2WIdjhCiQLxcY/1+f4WXFfEhpncWly5dyi233ELPnj3x+Xzcf//9DB48mM2bN5c6rt62bdvC0vDr1atX3eGK48hisXDr7bfHOgxRBmazmZH//FeswxBCFBEv19isrCwAPB5PhdchYiumjcWvv/467P2bb75J/fr1Wb16Nf369Stx2fr161OzZs1qjE4IIYRIXPFyjVUUJez/IvHEVYJLdnY2ALVr1y513q5du9KoUSMGDhzIDz/8EHU+t9tNTk5O2D8R/zRNY1dGBrsyMqQfXJzz+XzM/+hD5n/0IT6fL9bhCCGiqI5rLJR+nQ0O2m+xWCoYuYi1uGks6rrOpEmT6NOnD506dYo6X6NGjXjttdeYP38+CxYsoG3btgwcOJBly5ZFnH/atGmkp6cb/5o1a1ZduyCqkMvlol2bU2jX5hTJsI1zbrebqy6/nKsuv1zGURMiTlXXNRbkOnsyUHRd12MdBMAtt9zCl19+yY8//kjTpk3LteyFF16Ioih89tlnxT5zu91hF7CcnByaNWvGgayjUnoojjkcDpo3agjA7sz9Ma8NHY/x1E0PfH9jXTs7nmIR4kSSk5NDg9q1yM7OrvT1qrqusRD9OhuMe9CgQXz77bfUrl2bI0eOVGo/RNXKyckhPT291O9YXAydc+utt/LZZ5+xbNmycn+JAc466yzmzp0b8TObzSYZmgkoJSWFIzm5sQ7DEG/xCCFEWVXnNRZKv856vV5AhtZKZDFtLOq6zq233srHH3/MkiVLaNWqVYXWs2bNGho1alTF0QkhhBCJK16usU6nE5Bs6EQW08biLbfcwnvvvcenn35KWloa+/fvByA9PZ2kpCQApkyZwt69e3nnnXcAeP7552nZsiUdO3bE4/Ewd+5c5s+fz/z582O2H0IIIUS8iZdr7D/+8Q9+++032rdvX/mdEjER08biq6++CsCAAQPCpr/55ptce+21AGRmZrJ7927jM4/Hw+TJk9m7dy9JSUl07NiRL7/8kuHDhx+vsMVx4Ha7mXjbrQDMePGlmHclyM/PZ9S//gnA+x9+JDVOhRBxL16uscFGavD/IvHETYLL8RLszCkJLvEt3pImJJ7EiEWIE0lVJrgcT0WTJi6//HI++OADmjRpwt9//x3r8ESIhEpwEaIoi8XC1EcfM14LIYRITLt27QIKx3kUiUcaiyIuWa1W7rnvvliHIYQQopL27t0LFCa6iMQTN4NyCyGEEOLEk56eDgTqyIvEJI1FEZd0XefQoUMcOnSIk6xbrRBCnFA6duwIQL169WIciagoaeaLuOR0Oo2KKZI0IYQQQsSO3FkUQgghRLUJ/rGflpYW40hERcmdRRGXUlJScPn8sQ7DEG/xxBM5NkKIkuzcuROQcRYTmdxZFEIIIUS1CQ6Zk5+fH+NIREVJY1EIIYQQ1SY42LNUvkpc0lgUccntdjN50kQmT5qI2+2OdTjk5+dzxWWXcsVll8pfx0XIsRFClCQnJweQO4uJTBqLIi75fD5eefFFXnnxRXw+X6zDwe/38/H8+Xw8fz5+v/TPCyXHRgghTmyS4CLiksVi4e57pxivRfyyWq3MePEl47UQQoSSsXITnzQWRVyyWq088vjjsQ5DlIHFYmHczTfHOgwhRJw6fPgwAB6PJ8aRiIqSx9BCCCGEECIqaSyKuKTrOg6HA4fDIY8w4pzf72fZkiUsW7JE+iwKIYqpW7cuIN1UEpk8hhZxyel0Ujc9MNyClPuLb/n5+Qw5byAg50oIUZyiKLEOQVSS3FkUQgghRLVJT08HZJzFRCZ3FkVcSk5O5nB2jvE61uItHiGESBSqGrgvJXcYE5c0FkVcUhQlrh5nxls8QgiRKI4ePQrIoNyJTB5DCyGEEKLa9O3bF4D27dvHOBJRUdJYFHHJ4/Hw8AMP8PADD8TF2Fxut5sbx1zHjWOui4vyg0IIkSj2798PwIEDB2IciagoaSyKuOT1evn3U9P491PT8Hq9sQ4Hn8/H3HfeYe4778RF+UEhhBDieJE+iyIumc1mbrntNuO1EEKIxLRv3z4AcnNzYxyJqCi5Cou4ZLPZeHb6jFiHIYQQopIyMjIAyMvLi20gosLkMbQQQgghqk1qaioAJpMpxpGIipLGohBCCCGqTceOHQGoV69ejCMRFSWNRRGXHA4HSWYTSWYTDocj1uEIIYSooOAdRRmUO3FJY1EIIYQQ1SZY9Sr4OFokHklwEXEpOTmZ3Zn7jdexFm/xxBM5NkKIkvz9998AHDp0KMaRiIqSxqKIS4qixFX/lniLJ57IsRFClOTIkSMAOJ3OGEciKkoeQwshhBCi2qSlpQFgt9tjHImoKGksirjk8Xh4+sknefrJJ+Om3N8dt07gjlsnSLm/IuTYCCFKEhyMOz8/P8aRiIpSdF3XYx3E8ZSTk0N6ejoHso5So0aNWIcjonA4HNRND5yfw9k5pKSkSDxxGk88xSLEiSQnJ4cGtWuRnZ2dUNer4HU2GHf37t35/fffsdvtuFyuWIcnQhQ9V9FIn0URl8xmM9ddf73xWsQvi8XC/Q8+ZLwWQghxYpGrsIhLNpuNmbNfi3UYogysVisPPPxwrMMQQsSpYBZ0PHQpEhUjfRaFEEIIIURU0lgUQlSKpmls3rSJzZs2oWlarMMRQsSZOnXqAIGnECIxyWNoEZccDgfNGzUEYHfmfkmaiGMul4vunc8AJMFFCFGcqsp9qUQnjUURt2QAVyGESHzBMn82my3GkYiKksaiiEtJSUls3fGn8TrW4i0eIYRIFMHBuGVki8QlZ07EJVVVadGyZazDMMRbPEIIkSgOHz4MBLoXicQkHQmEEEIIUW3OPPNMAE477bQYRyIqShqLIi55vV5eeuEFXnrhBbxeb6zDwePxMOXuu5ly990yVpgQQpRDVlYWAEeOHIlxJKKi5DG0iEsej4e775wEwJgbboh5ZRCv18vz058D4IGHH5YhIIQQQpw0pLEo4pLJZOKyUaOM10IIIRLTwYMHAemzmMhi+hh62rRp9OzZk7S0NOrXr8+IESPYtm1bqcstXbqU7t27Y7fbad26NbNmzToO0YrjyW6389a7c3nr3blGJp0QQoiyi5dr7J9/BkaSyM3NrdR6ROzEtLG4dOlSbrnlFn755RcWL16Mz+dj8ODBJf71sXPnToYPH07fvn1Zs2YN9913H7fddhvz588/jpELIYQQ8S1errHB4cZkcO7EFdPH0F9//XXY+zfffJP69euzevVq+vXrF3GZWbNm0bx5c55//nkA2rdvz6pVq3j22WcZOXJksfndbjdut9t4n5OTU3U7IIQQQsSp43GNhdKvsx06dGDbtm1G2T+ReOKqmZ+dnQ1A7dq1o87z888/M3jw4LBpQ4YMYdWqVRGzZqdNm0Z6errxr1mzZlUbtKgWDoeDZg0b0KxhA+nnIoQQVaA6rrFQ+nU2mBAo/c8TV9w0FnVdZ9KkSfTp04dOnTpFnW///v00aNAgbFqDBg3w+XzGwJ+hpkyZQnZ2tvFvz549VR67qB6HDx+OeE6FEEKUT3VdY6H062zwMbTUjU9ccZMNPWHCBNavX8+PP/5Y6ryKooS913U94nQI1KKUepSJJykpidXr1huvYy3e4okncmyEiH/VdY2F0q+zmZmZgIyzmMjiorF466238tlnn7Fs2TKaNm1a4rwNGzZk//79YdMOHjyI2WyW/hAnEFVV6dCxY6zDMMRbPPFEjo0Q8S3W19hDhw4BMnROIovpY2hd15kwYQILFizg+++/p1WrVqUu07t3bxYvXhw2bdGiRfTo0SPmAzcLIYQQ8SJerrGpqakA8pQvgcW0sXjLLbcwd+5c3nvvPdLS0ti/fz/79+/H5XIZ80yZMoVrrrnGeD9u3Dh27drFpEmT2LJlC3PmzOGNN95g8uTJsdgFUU28Xi9z/vM6c/7zetyU+3v8kUd4/JFHpNxfEXJshIhP8XKNdTqdAPL7IYEperAzQiw2HqX/w5tvvsm1114LwLXXXktGRgZLliwxPl+6dCkTJ05k06ZNNG7cmHvuuYdx48aVaZs5OTmkp6dzIOsoNWrUqOwuiGricDiomx44P4ezc2LeMVriSYxYhDiR5OTk0KB2LbKzsyt0vYrFNTYYd3p6uhF39+7d+f3337Hb7WENVRF7Rc9VNDHts1iWdupbb71VbFr//v35/fffqyEiES9MJhMXXHSR8VrEL7PZzE3jxxuvhRDxQa6xoqrIb3YRl+x2Ox8u+DjWYYgysNlsPP/Sy7EOQwgRp4JZ0PHQpUhUTNyMsyiEEEKIE4+maUDZ7nSK+CSNRSFEpei6zqFDhzh06JBcDIQQxdSqVQtARixJYNJYFHHJ6XTS9pTWtD2ltZFJJ+KT0+mkeaOGNG/UUM6VEKKYYF/maAk3Iv5Jn0URl3RdZ/euXcZrIYQQiSlY2UnuLCYuaSyKuGS321n+8y/G61iLt3iEECJRBIdkkUG5E5c0FkVcMplM9OjZM9ZhGOItHiGESBQHDhwAIC8vL8aRiIqSPotCCCGEqDadO3cGoEWLFjGORFSU3FkUccnn8/Hh/z4A4F+XXhbzwZ49Hg8vv/giABNuuw2r1RrTeIQQIlEEx1d0u90xjkRUlDQWRVxyu92MKahXetHFI2LeWPR6vdx/7z0A3DR+vDQWhRCijIKNRRmUO3FJY1HEJVVVOXfgQOO1EEKIxBSs4CJDayUuaSyKuJSUlMSX3yyKdRhCCCEqaceOHQDk5OTEOBJRUXLLRgghhBDVJji+ogzKnbiksSiEEEKIatO+fXsA6tSpE+NIREVJY1HEJafTSbczTqfbGadLPxchhEhgwQousU5UFBUnZ07EJV3X2bJ5s/FaCCFEYgpWvQo2GkXikcaiiEt2u51vvv3OeB1r8RZPPJFjI4QoyaFDhwA4duxYbAMRFSaNRRGXTCYT/QYMiHUYhniLJ57IsRFClMTj8QBw+PBhNm7cSKdOnWIckSgv6bMohBBCiGrz9ttvG6/PP/986VqUgKSxKOKSz+fjs08/4bNPP8Hn88U6HLxeL7NmzmTWzJlShaAIOTZCiJI0btyYG2+8EYDdu3dz1113xTgiUV6KfpI18XNyckhPT+dA1lFq1KgR63BiqvDM64R+C/SI84QtWY6tVGxcLYfDQcPa6QDsz8omJSWlQuupqKLDgTkcDhrUCsRz4Ojxj6eoisZTHaOcORwO6hfEcrCSx6byw7CdfOO4ydB1J66cnBwa1K5FdnZ2Ql2vgtfZ0Li9Xi+pqanGI+k5c+Zw3XXXxTJMQeRzFYn0WRRxSVVVzuzd23gt4pfJZOL/LhlpvBZCiKIsFgvTp09nwoQJAIwZM4bGjRszZMiQGEcmykLuLJ7E4vnOYqzJncXYkDuL5Sd3Fk9cJ9KdRQBN02jatCmZmZkA9OzZk59++smo8CKOv7LeWZRbNkIIIYSodqqq8t///td4/9tvv3HRRRfhcrl47bXX2LJlSwyjEyWRxqIQQgghjotzzjmHhx56yHi/cuVKdu/ezc0330zHjh3566+/YhidiEYaiyIuuVwu+v/jLPr/4yxcLleswxElcDgcpFjNpFjNOByOWIcjhIhzU6dOZfjw4QAcPXqUf//731x88cUMHjyY1q1bG/Pt3LlThtmJE5LgchII/KwF+iVqeqB8nq7reP06fk0vmEcv1hMx2s9oaB+p0rpLFV2FWsb+VQ6Xm99XrwIgz+VGV8vWp6Wk/lsKoJShg5eiBPZdUQr2T1Hw+DTjc49PwxLyvqxCt1yRfmahi/j9Wtjr0PfHmy9k2z5Nx6dV4pd78MBXePkyHocTqaNfvF9Mq/pYV3Z/q+ncV8davRX4PZMIFEVhwYIFdOjQgb/++os5c+bw5Zdf8ssvv7B9+3ZOPfVUXC4XZ555Jg0bNuTzzz+nRYsWsQ77pCaNRRGXbDYbc/+3wHgdazabjXnzPzFeCyGEqDibzcaKFSvo06cPO3bsYOTIkeTn5/Pqq68yc+ZM6tWrh8vlIi8vjyZNmsQ63JNemRqL69evL/eKO3TogNksbVFRMWazmUFDh8U6DIPZbGbwsOGxDkMIIU4YDRo0YNOmTZx77rn89NNPQKAk4KWXXkpycjIjR46kX79+YcOnHThwgAYNGsQq5JNWmYbOUVUVRVHK3HdAVVX++OOPsL4H8eJkHDonER9DR9hq2eaqpsfQVaEqH0M7HA4a160FwL7DR2M6lE9YLEeOVS6WSj+GLuMjSnkMffzIY+gKy8nJoWn9OifM0DnRZGVl8fjjjzNnzhyys7OLfd6oUSO2bdvGjBkzeOaZZ/jpp58444wzqiP0k06VD8q9cuVK6tWrV+p8uq5LkXBRaX6/nx+XLgGgT/8BmEyxvUvt9Xr5cN77APzr8lEyLpgQQlSR2rVrM336dG644QamTJnC0aNH2bBhA8eOHQMgMzOT1q1bY7fbycvLY9q0abzwwgvUr18/toGfRMp0Be7fvz9t2rShZs2aZVppv379SEpKqkxcopJ0XUfTA8kYfk3D7w+8Bx2fP3AX0Vxwm8+v6SgKaMG7jAXrKO0unFlVyjU8N4C/jHcFnA4nl464AIDtfx8iqax3q0pYv17yx2HzBdcVvBPrdDiYcNMNAAwceiHJBfGU5U6lGrydGrLxitwbCY3d6SyswZzj9OJTylaTubzbNYXeRY6yr878wtrdeS4vulq++tCKEr7uojcXox3hyt6AVCt+mztuVdseKcH/VWQLVXfns1KnLPiF0aomaURRFGOVClAVay36JCPO7xlXuQ4dOvDpp58C4PP5WLJkCY8++ijLly/n8OHDxnzz5s3jgw8+oHfv3kyYMIGLL76Y5OTkWIV9UihTY/GHH34o10oXLlxYoWCECFJUlQ6dTjdeCyGEOHmYzWbOO+88bDYbU6dO5fvvvw/7XNd1VqxYwYoVK7BarQwZMoTbbruNc845R8qOVgO5Cou4lJSUxOLlK1m8fKXcpRZCiJNU3759+e6779i0aRPjx4+P2Cfa4/Hw+eefM2TIEAYMGHD8gzwJlLsjmK7rfPTRR/zwww8cPHgQrcgt/QULFlRZcEIIIYQQHTp0YObMmVx44YVccMEFxdoeAKeeeir16tVD1/UydRESZVfuO4u33347V199NTt37iQ1NZX09PSwf0IIIYQQVUnXdaZMmRKxoXjhhRfyxRdfsHHjRhYsWCANxWpQ7juLc+fOZcGCBUapHiGqg8vl4ppL/w+Adz/8BLs8ihZCiJNOfn4+c+fOZcqUKWFJLmlpaTgcDjRNY+jQoZx//vls2bKF8ePHM2vWLNq1axfDqE885W4spqenx+X4iSc7XQe/pqFpOh6/hq6Dz6+jKqHZzeAPGVvRo+k48r3oOujoqEX+GtN03Vh3kKooBEdkDC1FFVzWZIr8F53VrGJSVSPjOjhf0W0GuT0+fv5pOQAutxfFbDU+M1UwJTLatgDMJrXg/5HnUbTCoXKsFhM2S6ADdVmyFYP7HJrlWNIuWM2mUjN1Q+NJSbKQkmSp0vH2gn+ZayHr1KKs32spfEBhtahYzeV7YFEsS10hbEzXaHtV2aRWfxWWUivrnQxTyKFRFMX43kVdbznjqLbs2eDvgoovGiba4SrtOFamTrBepAxlZW8++TXNOCBVedxD4/L6/FW45sSydetWXn/9dd5++22OHDliTG/Tpg2apvHXX38BcOmll3LppZcCgSefS5cu5d577+WTTz6JRdgnrHI3FqdOncojjzzCnDlzJPFAVBurzcZL/3nHeB1rNpuN19/+L7quS7m/Imw2G/9557/GayGEqKhvv/2Wxx9/nKVLlxrTmjZtSt++fbHb7bz55ptAYGzGmTNnctlllxnzzZkzh0mTJjFjxgxj2p9//ondbqdx48byeLoSylTBJZTT6eSSSy7hp59+omXLlsUGJ/7999+rNMCqdqJWcCnLnUUAv1/D6y+cEq93FiH6X+uxuLMIgeNQ9MelXHcWQ5T0O6ssdxYdDgfN6gWqpuw5VFDBJUZ3FospZxiRxr8sy53Fyu5uZe5SFSV3FktdNExM7iwWWbSy7QYt8IszsO7KrSpMaFy5OTm0blz/hK/gEqRpGikpKeTn54dNT01NpXXr1kbp4Xr16vHvf/+bLl26sH37dvbt20eXLl3o3LlzsfGgL730Uj788ENmzJjBHXfcAYDb7Wbv3r20atXqpG9AVnkFl6Brr72W1atXc9VVV9GgQYOT/kALIYQQovJUVeX555/ns88+Y9euXezcuROn00leXp7RUAQ4dOgQ1113XcR1pKam0qxZM9q1a0f37t05dOgQiqKEVZb77bff6Nu3Lx07dmTjxo3G9IMHD1KnTh0ZpzGCcjcWv/zyS7755hv69OlTHfEIAQTK/f2+6lcAuvboFfMfXp/Px5effYqu6wy/8GLM5tiWH4wnwWMDcP5FF2OOcWlGIUTiuummm7jpppuAwJ3GW2+9ld9//51JkyaRmZnJrl27wv4dOnQobPm8vDy2bNnCli1b+PjjjwGwWq3cdNNN2O12atSogc1mw2QykZ6ezp9//kmzZs2wWq0MHTqUbdu28eWXXxrjNebn52MymU76Eq/l/q3erFmzhLodfiLTtECyil/T8foDj6CDpdPyXF5MqkK204Pfr3M0143TEyjL5vfrmEwKXp+G2aRiLngdqugjm+Bj49BHqsFHpaqiGI8o/SGPuEMfSXt9GsFFVQXjtd+vYbcGGoKWkMSIfJeTyy4cDMDHP20jNWQgVpvFhKmUx3eR+P2BfbRaTIHjRGG5Lo9PQwEj+afoY2CX08GNo68E4Nvf/yIpuYzlB4mczFLS0zSn2xfx0XVYPC6n8fr37YdISXGSllz4y8xSQpKJqaAijsWkhpfVU4LxKsXiS02yRH1s53S4uOGawLHZsfewUQoxKNL+h68rQuJPSU8sSvwo+J0sXI+5Csv6RXuSEnw8WtqDltDzqung85ecZFPZx5sVffATPI5Gt4xKPkEKfp+CiWHR5zvZCtyF0wn/jrjNJ/cdLlVVefnll/F6vVitgSTHomMoOp1Odu/eza5du9iyZQurV69m69at7Nmzh9zcXPLz8/F4PEZCTKgVK1bQpk0bINAHMjs7G7/fzwcffMCWLVto0aIFa9as4ZFHHuG6665j9uzZxrJer/ekakCWu7H43HPPcffddzNr1ixatmxZDSEJAaDQuFlL47WIX4qq0vvsvsZrIYSoKoqihDUU7777bqxWK48//jiKopCcnEy7du1o164dQ4YMKba8z+dj79697Nq1ixdeeIGNGzfy999/43Q6w+bLysoyXs+aNavYet555x1+++03mjdvTvPmzXnjjTeoW7cuM2fOpFevXtStW9eI90RU7sbiVVddhdPp5JRTTiE5OblYyzr0gJdm2bJlPPPMM6xevZrMzEw+/vhjRowYEXX+JUuWcM455xSbvmXLFhlT6QRjT0rijU+XxzoMUQZJSUnM/3JRrMMQQhRxol1jV6xYwbPPPgvAgQMHmDFjBmlpaSUuYzabadGiBS1atKBfv37G9CNHjrBu3TrWrVvHypUrMZlMjBgxgt27d5ORkcHs2bPxer3G/Pn5+axZs4Y1a9YY03bv3s0FF1wAQHJyMqeccgo1a9Zk/vz51KtXryp3PebK3VicMWNGlbWcHQ4HnTt35rrrrmPkyJFlXm7btm1hj8JPtJMihBBCVNaJdo09++yzefnll5kwYQJvvPEGixcv5vXXX2fw4MHlXledOnU499xzOffcc41pmqZx4MAB/vjjDxYuXBjx0XU0TqeTP/74A7fbzYwZM3jyySfLHVM8q1A2dDQul6tc6xo2bBjDhg0rbwjUr1+/WHq8EEIIIQqdiNfYW265hQ4dOnD99dezc+dOhgwZwpgxY3juuedKjVnTNDIzM8nIyGDXrl1kZGSE/du9ezdut7vEdaiqSpMmTWjZsmXYvxYtWuByuVi/fj133313Fe5xfCh3Y/GWW27hlVdeKTbd4XBw/vnns2TJkqqIq0Rdu3YlPz+fDh068MADD0S8bR7kdrvDTn5OTk61xycqz+PO5/G7AhlxDzwzG7MMAB+3nA4Hvc5oD8Cv67cWS3ARQiSW8lxj4fhfZ8855xzWr1/Pfffdx0svvcScOXP45ptvmDlzJl27di3WEAy+3717Nx6Pp8R1q6pKs2bNaNmyJVarlZ49e9KmTRujUdi0adMSE1uCj6VPNOVuLC5atIgHHniAxx9/3JjmcDgYOnRolQYWSaNGjXjttdfo3r07brebd999l4EDB7JkyZKwvgihpk2bxiOPPFLtsR0vuh7IftY0HZ+mo+k6Pr+Oz6/hzPfh9vk5eNSFqij4NQ1FUXB7NewWlTppNiPbN9flxZ5kQdd1vH6dVLulxEzESINE+zUds0mJWnbNaglPdgiuvmimb74nUNLKE5IZ6vH6+e3H743XqIVlrw7nuPH5Q7OyA5m9QFiWdN20yNVEcp2eggG2QSvIN022mtHRjX3xF7yoVzPQSFW1wh+VpnVTi2f8lpBxG3pcg3OVlK1c2vpURcHhcBjvu7apS1JyMi534THyl5BNHczADQziHhpn4P8ezY+5SKLKnkN5WC0qSdbivzKcTg9ZRwI1W91eP6rHF9ZVJeK+Rhl0W9PBYlKoaFKTrgd2yCjHqGu4vcWPf1kV73JTcrZu0R+h0gZXN7ZTzumlfxgMqEybLyb4c+F0V11JRIBjjuIX6vL2aiptIPMgW6TvXYRtWYusryLdrBQjaVyJkP1f9vUpgBoyikRZ97WqVOQaC8fvOuvz+di3b5/RCKxbty7Dhw/nhx9+YO/evVx88cWlrsNkMtGsWTNq1qzJsWPH2L17N1rBL8L09HT++usvateuXelYdV3n22+/ZdCgQZVeVzyoUGOxT58+1KlTh4kTJ5Kbm8uQIUMwm8189dVX1RGjoW3btrRt29Z437t3b/bs2cOzzz4b9Ys8ZcoUJk2aZLzPycmhWbNm1RqnqDyzxcLtDz1nvI41s8XKI8+8RKrdgsVqLX0BIYRIMBW5xkLVX2dzcnL4+OOPiz0m/vvvv/H5fKUubzKZ6NChAz169Cj2uHj58uU8+uijrF271pi/V69ejBs3jssuu4zk5OQKxx2kaRoXXHABX331FR9++CH//Oc/K73OWCt3Y7FVq1Z88803DBgwAFVVmTdvHjabjS+//DJQcuw4O+uss5g7d27Uz202m9SrTUBms4XzLvyX8b60cQerm8Vi4eJ/XUHtNHtM4xBCiOOptGssVP11dsyYMcyfPz/iZxaLhebNmxfrL9iyZUuysrK499572bp1Kxs3buTzzz+nRYsWYcvn5ubyxx9/kJqaypVXXslNN91E165dKx3zkiVL+PHHH/nXv/5F27Zt6d69O/Xr12fq1KknZ2MRoFOnTnzxxRecd955nHnmmXzxxRckxahP2Zo1a2jUqFFMti2EEEKcyGJxjb3sssv44osvjH6QAwcOZOrUqbRs2ZJGjRqVWNFryJAh1K9fP2qVrSuvvBJFUbjiiitKHXYnEofDwZIlS9i3bx833nijMf3pp5/m66+/pnbt2rRt25YHHniAw4cPs2DBgnJvIx6VqbHYtWvXiP04bDYb+/bt4+yzzzam/f7772XeeF5eHjt27DDe79y5k7Vr11K7dm2aN2/OlClT2Lt3L++88w4Azz//PC1btqRjx454PB7mzp3L/Pnzo/4FIhKX3+9n146tALRo0w5Fie1gzz6fjxXLvictyUr/c8+Tcn9CiLiXqNfYf/3rX5x++ulcd911/PLLL3z33XeYTCZef/31Uku/2u32EhNs0tLSjHKCpTlw4AC//vorLVq04IwzzgBg7969XHDBBdhsNq699loj2eX888+ndu3aRkUYm81GkyZNuPXWW8u0rXhXpiteSYN4VsaqVavCsqyCfR5Gjx7NW2+9RWZmJrt37zY+93g8TJ48mb1795KUlETHjh358ssvGT58eLXEFy90nYKkFg1/QYkwr0/Dke/lcHY+Pr+GX9PRCz5LS7ag6+DI1zCpCukploJEFz+6DmnJVmqkBPrdKSiY1ILPQnrDW4uUmSpaDjBIC+nRX7SUl8tdet8SgGS7uVgShMvpYMRVgSEfVm/fS3KE8nrBv180DTy+QHJHMLHDpCocyc435k1JKuz3aLMWxmkq6I3ucvtQUFALPjIX/EJy5vuMeG4bMwqAFZt2k5ScEtYxX9N1o4xe0fiCh8gS0lk93+ujZoqNJFvhj2BwdaqqhCXwFKXrWiDpp0Dw3Nut5SsNZimh83zwvAaPT+M6yXh9Gp4I3wOz7g17bzWrhPYaKO17UPTvUIer+DaC56xozDZL0X0IJMc4imzTHqHMXFpSSb/+AkFVtvycFrZ82ZKgyup4dMywRekuHC1vJ9JNhfApxVdY3v0orURikNvrL7b14MZCw8zLD/+uhJ2LMia7BL+Xgd8D4ctEOrXB33dF5y26NX+07MEySuRrbLt27fjxxx954YUXuP/++1m0aBEdO3bk2WefZezYseVORLrnnnvo0aMHF110UbFH5rqus2/fPtasWcP5559vrPvxxx/n5ZdfZtKkSTz3XKAPfZs2bejZsydt27YlNzfXSIaZMGECEyZMqII9j0+KfpIV48zJySE9PZ0DWUcTpsZ1xRuLXswmFYtZRVEUvL7CxmIwUzkeGotQPGPW5XJy0YCeKIrC1z+uJimpeKfjijYWQ4U2FiMJZiO6nA4GdmsNHJ/GYknZzLqu43Q4aNMkMFDuzv1HKtRfuDyNRSBqY9HpcHBq00AsmzIOkF4jNayx6A5p2EZS9He+x1uZxiKAQn6RbUpjsWpVvLFY3HFtLBYIDbPo77Z4aizm5ubQpF4dsrOzE+Z6BYXX2aqK+48//mDMmDH89NNPQOCx9H/+858ylxzevn07p512GqqqkpGRAQQG0Q4m87jdbtLS0vB6vWRkZBj9HN99912efvpprrrqKu69995K70c8Kuu5kkKuIi4lJSWzeOUmlq7eErGhKIQQ4uRw2mmnsXTpUmbMmEFSUhLfffcdnTp14ocffig277hx42jfvj0PPvigMe2tt94CAv0Zv/jiC5o3b85dd91lfG6z2ejSpQunn346hw8fNqZfffXVbNy48YRtKJZHmRqLtWvXDjuApWnevDm7du2qcFBCCCGEEEEmk4k77riDGTNmAIFEk4ULFxabr2PHjmzduhWn02lM++abbwC46qqrOP300zGbzWF1nwF+/vln1q9fT/fu3atxLxJXmfosHjt2jK+++or09PQyrfTIkSP4/SU/ehJCCCGEKKs5c+YY/QL79+/PsGHDuOqqqxg8eDDXXHMNANdddx1+v99IYvH7/WzevBmAnj170qpVK3Jzc4v1WywtceZkV+aUztGjR1dnHEKEcefnc/+k8ZgUhadfnI3NLuMbCiHEyUjXdR588EGeeOIJAPr27YvH42HgwIEArF+/nquvvhpFUUhNTeWOO+4wlv3rr79wuVzY7XZat27NwYMHufPOO+natWvYo2hRsjI1FrVKZmSJigmW9vNrOi6PH03Tycp1k+P04CvolK2qCsl2C7lODzarCZNPwZnvw24zU79WMm6PH0UBe0GZNpfbR77HR1aOD6fHj0Kgs7WuB8rmmRQFs0klyWbCWpAUYDGrxZJXFKWgXF5I7+1gIoPVbEJRIMlmLtaBW43SYTyYOGE2BRJu8Ct8u/AzAB557mVUS/GqKUpId/BgcolJDXQa92ka9WolkVyQQOIIyXgMjSmYSBLc19DwQpMinJbCO+UpdgvJBaUSFSUQb2hSSpK16LEqXGlhEkug8ety+6BgHUG6X8OkqmGxhB41RVEwhyQEaQXJTaHsERM/wnn9eqn994PnJbj+YMKPUd4M8IbEkmI3YzKpWAv2R6HweEQrcViW3I5gUoO3SHKDq6BUpEJ4ab3gq+BxzXUVLzOXl+8tNq0oa0jMFlPhObGY1LAvS+B4K8WOp1rmUm8VK28YK9ESciLlnlR1Ik7Rn41ozCa12HerMOms8IOiP69lEVw8+J0LJskoCsVHMjBKARZOcnv9JFlNxZJ1QuNVleiJhScTt9vNmDFjeO+994BASb7ly5cDgQG6L7/8cm6//fao2dEbNmwAoEOHDphMJhYtWsT777/Pl19+yU033ZRQiUOxJIPFibhksVh56Mln8fk1LBEairGI5+Ennw28lnJ/YaxWK08997zxWgghqsKRI0cYOnQoq1atMqZlZ2dTt25dxo8fz/jx40sdMHznzp0AnH766UAgaeW3335jzJgx0lAsB2ksirhksVi46robiw2BEisWi4WrxoyNdRhxyWKxcP3YccZ7X4xLMwohEl9OTg69evXir7/+MqZ16tSJO+64gyuuuKLMVePuvPNOrr/+elwuFwCqqvLyyy9XS8wnMhk6RwghhBBxY968ebRt29ZoKJ511ll8++23rF+/nuuvv77c5YVr1qxJo0aNOHToUNgg5BAoZ/jkk09WekzVE53cWRRxSdM0dmfsxO3z06xFK1Q1tn/X+P1+Vq/8GYAeZ/1DMudC+P1+flnxIwBn/aMPxLg0oxAisa1cuZL9+/cDUKtWLVasWFHuii1F+f1+Ro0axdq1a/nvf//LkCFDyMrKYsiQIRw6dIj09HRuueWWqgj/hCS/1UVcys93MfjsblzYvyf5+a5Yh4Pbnc9VI8/nqpHn487PL32Bk0h+fj4jhg9hxPAh5MuxEUKUU05OTtgdv6lTpzJ06FAABg0aVOmGIsDRo0c5duwYR44cYdiwYTzyyCPUrFmThx56iB49enDVVVdVehsnsnLfWTz33HPp378/Dz/8cNj0o0ePMnLkSL7//vsqC+5kFSjtp+Pza+S4vBzNdeMoyNz0+jTs1kC2sdViQtd1svPcaLrOoex8zCYVs0lh+84s6jVIw5HvJe+wE6/Ti9lmRjEp6H4dn9uHJdmCNTWQkGC1m40sPrNJId/hpV7d4pVTgpnOEMjuS7VbMKmBLFClIJM6z+VBUZSQjFnFyBoM3upXo9QLc7l1/JpGvstNalqg87HH48dk9qMoCnarCbOp5F8cZpOKteDvIGeEMn4en79YVnakeLIdgQxaq8VkZN0GjoGK1ayiqgqKoqAV9NFTC+JyFKk1G/w8eIxCBd/6FAVVUbAUZIP7NS1Q5VgJHDudQGZvcFpoJrjFrBrHJPh5vtdfatZo8LwZsYR+VkIpwFC6rqP5zLRr3wEIZMAn2yP9WlHCMpnL+6s/mIUd/L+qBtLxU0KGStP04uXTgtn6KQUxhT5pMh47lXCQvL7CknGh8TvdXmNEAIB9BT+fmq6HnRsAizlwvgp/bgLnOFJ2uDVsWvh6AuUJI5TTi0EidbSLtzlhbrhXzUEL/mwHz5tO2Y5BcHSJSPMqEeY7kS1dupTLL7+cU089laVLl6IoCunp6cYoLH379q2S7dStW5cff/yRO+64g9mzZzN16lR++eUX5s6dy0033YTFUlgSNjjShShU7juLS5Ys4eWXX2bEiBE4HA5jusfjYenSpVUanDh5JSWn8O3qHfyw5k+Skstf91gcP8nJyfy2dh2/rV1HcrKUZhRClF2rVq3Izs5m//79xqNnn8/HihUrAOjXr1+VbctutzNr1izeeust7HY7X3/9NaeddppRL9rn89GhQwfOP/98GTKwiAo9hv7222/Zv38/Z511lnGQhRBCCCHKo3nz5nz77bds2LDBGAbn4MGD5OXlAdC2bdsq2Y7f7zcagKNHj2batGkAZGVl8cEHHwDgdDrZsmULX331lTHkjgioUGOxUaNGLF26lDPOOIOePXuyZMmSKg5LCCGEECcih8PBunXrjPf/+Mc/wsrvNWrUiJo1awIYpfrKyuVysW/fvrBpffv2JSkpiQsuuMDIsG7QoAEATZs2NSq+1KhRg+nTp/PJJ5/QunXr8u7WCa3cjcXgc3ybzcZ///tfbr/9doYOHcrMmTOrPDhx8vJ43Dx6z61MvXsCHrc71uGIEjidTnp26UzPLp1xOp2xDkcIEefmzp1Lly5djHrORSmKQo8ePQD47bffIs5z+PBhli9fTlZWljHtww8/JCUlxUhWyc3NZdasWaxevRqv18tXX33FrFmzgMDj7ffff5+vv/6a1NRUYx0TJ07k4osvlj6LRZQ7waXoWEQPPPAA7du3l9rRlaTrOj6/jsen4fL4OHDUhaKA36+jo6MqCj6/RpLNjF8LdL7NzHJiMat4fRpOtw+PV8Pr8qJrOqrZxNFjLmqk2Wjatp7RCd5qMQVKlVFYns+vafj8upEc4PNrWOqlhHXUb9kwDShMBFEVJeyHKbDKgiQLpTARwchFKVLyrmhyQWC1hfM4HHks/DjwaOD112aRkpKCTqD8XLBTedFRsYJL+7XQUl7mgs0U/cEPX7roONKheRJev45VCUlaCWSqoChKQUfo8BhsIaUDLSGJIqFJKqX1r7eioBfEGDwPmh6Yout62M+hpgfK/SlKYBt+TTPKH+p6wb4ohQkwUDwpQlXCk13Cf86VsGUUCo+eqgSi27pls/GZKcowRya16jrrB+ILKZEImKDYdyNaQlHBu4jrDj33FpPZSGJJwlQsgcaQHr12uTFIuV4Ym1b0C6cEy8aFDkIfvo/7spzGeQ4KlrQLnRaavGX8HBbEHTV+in8nAtMCSVeBZdVS548m1kPYVdd1P1qiXqKsPxZ0XeeVV14BoGvXrlHn69mzJ99++y0//vgjTZs2xel08s9//tP4fMiQIfz+++98/PHHjBgxAoAWLVqg6zq7d+/m1ltv5e233yY3NxeApKQkrrzySq688koAmjRpwuWXX15Ne3niKXdjcefOndSrVy9s2siRI2nXrl1YSR4hKsNisfDYk0+h63pYllqsmC0Wpkx93HgthBCi/JYvX86GDRtISkri2muvDfts0aJF/Pzzz1x44YX07NkTgBUrVvDuu+/SvHnzsMZix44dycrKwh3y5KlLly7s3r2b008/3ajSctppp3HzzTczevRo49G2KL9yNxZbtGgRcXrHjh3p2LFjpQMSAgI1hu+4887id2BixGq1Mu7WibEOQwghEtp//vMfAK688kpq1apV7LMPP/yQ1NRU+vTpA0BGRobRvvD7/UZBhLfeeot9+/bx9ddfc8011/Dmm29itVpp1qwZY8aMISMjg1tuuYVzzz1XHilXAangIoQQQojjIjg8TrAxGGro0KGkpaWRlpbGJZdcAkCbNm1Yu3YtZrMZj8fDsmXL+Oqrr/jqq6/YuHGjsewtt9zCmWeeCcBzzz0nDcQqJo1FEZc0TWN/ZiaaptOwUaO4KPe3cd1aADp17iLl/oQQogKCdxOzs7PDph87dgybzcbNN9/MkCFDOHLkCB07dmTx4sWYzWbmzp3L+PHjjSF1INCn9swzz2To0KHGsDvB6aJqSWNRxCWXy0Xb1i0B2Hf4KCkpsR2Y252fz0WDAoPDbtl9kOQYxyOEEIko2G/w6NGjxjSXy0Xr1q05ejTwu97hcNCgQQOeeOIJoxHYsmVL8vLyqF+/PkOHDmXYsGEMGjSIOnXqxGI3TjrSWIwhXQ9k7nr9Go58L1m5biMrOpjlrKoKfk0nNdmCM9/H0Tw3R3LcWMwqbq8fV44bFAVbipUaKVYsNWz4/Do1U6wcOObCZFLZf8yFz6/hL1jvkV3HSG2YhtfhwZ0TqOXry/ehF5T7q922Lil2M0cPO0itmQTAnsOBaj2qqmA3SlUVlixTC7I2m9VPxaQWlvfTNB2TScFiNhlZlaHZtcEpwfmDfxB6fBpmc8jXsyDr1m4JlhuMXvas6CehZdmK5/hGVthVMvDCpniNz2qlWklJsYZlXUcTWiIOAnHoRQMpEmvg48JM6OA0U0hGc2hZOKtJDZT8M45haL5yScKPQGgGdKQ/zLUixzC4laJbCj0uZf0Dv7L3AYJJo6YIJfTKq+iIDwGBDZTlnBcVzE4Oy2wtcmNaJ7APdkt4/KGhpEYoo6gViVXXw6cZfX5DfwjKQdN0HAWjJgSzuoMZ/ZHKFQYVO59FsvHLwlyk5GRpFSjLezepOjO05cZWdME7i8eOHTOm7du3j7p163L06FGjMtyBAwf4+uuvufjiiwE466yzWL16NV26dIn5k6aTkTQWRVxKSUnhYLYjUBtZfvEKIcQJIXhn8dixYxw9epRevXqxY8eOsHkaNWrEsGHDjIYigNlsplu3bsczVBFCmudCCCGEOC6CdxazsrKoVatW2J38Fi1asGrVKv766y/at28fMQlGxIY0FoUQQghxXNSvXx+AQ4cOAbBgwQKeeuopY1qNGjWYNWsWd911F/369YvSLUQcb9JYFHHJ7XZz18TbmHzHbWGDrgohhEhcwcbigQMHgMDQOOnp6Zxzzjk4nU5Gjx5Ny5YtadOmDePHjw/riyoNx9iRPosx4Nd0fP5Aib6sXDc+v4am65hNKi63H7vVRJ7Li6qAI99HvtfP4Ww3Pq8fRVFITjLj9vqpkWylRb1U/JpOvtePz6/h8Wk48n3k5XtJsprZs+Ugfq8Guo6iKmgHHVhb1uTYzizsNZMw2cyg69hq2vG5AiXtHAfy8NdKwmQ1FyTbKDSpk4xSUILOYjahKoEO+7qOkdBiNZvYdTAXk6IYJciCndS9Po3mDQLJL6E//MGXZpNqlCJTAKfTzRuvzQZgysOPkYwJQpI9CsvWKUaiTPC1se6SToKilKmzfXB9oYkNmqajaXqZlreU1iu/gnwh8fg1Hb9fw+0tKCenh6agFO6DUWqwNEVL5IVMNqmq0Yc00q9tvfjiZdpmeS4BIdULC5cv+L5FSkCpWJ/XyAuZiiRilUdJ17mwEpjR5omwTZMxMXJAekiJwdKOQ/TNm8K2renB5DytcMsRgguW8AzPrQkvYVg4X8j7kLKjoby+ko+Pplc+sSR6qcryJs+Udi5P3o7YDRo0AMDr9aJpGr169WLTpk3MmDGD1atX8/PPP7NlyxY2b94cdpyWLVvGXXfdxdNPP82AAQNiFP3JSxqLIi6ZLRYm3XOf8TrWLBYL997/gPFaFLJYLEx54EHjtRBCRNO6dWvcbjdWqxWAq6++mnvvvZfp06fz3HPPceONN/Lwww8zbNgwunTpYiz36KOP8uuvv/LBBx9IYzEGpLEo4pLVauXOex+ImyEorFYrUx54KNZhxCWr1cr9Dz0c6zCEEAlAVVWjoQhw2223MXPmTHbv3k12djaDBg1i8eLFjB07ll9//dWY77///S9PPvkkU6ZMiUXYJz1pLAohhBDiuNu/fz92ux2toEvDxx9/zM8//wwE+q3rum48im7QoAEvvPCCsayu69x///2kpqZy3333Hf/gTzLSWBRxSdd1cnKyUYAa6ekx7+OjaRp/bN0CQNt27WVQ2BCaprF1S+DYtGsvx0YIUbIDBw5wxRVXsHbtWoYPH87ff/+NxWLhp59+AuCqq67ihRdeKPH3/pIlS5g2bRoAQ4YMoXv37scl9pOVNBZFXHI5nXRo2RiAHXsPxby8nsvl4qzuXYH4KD8YT1wuF726dgbgwNFsOTZCiBLVrVuXPXv2kJ2dzdy5c4FAwkvDhg2ZPXs2F110UanrOOecc3jssceoWbOmNBSPA2ksHic+v46m6zjyfeQ6Pfg1Hafbh91qQtN1TKqKy+2jZqqV3Qfy8Pp1HPle3F4Nk0nBalFJT7HQoGYSbq8fr0/D69fZ+ucR7Gk2vG4fziNOdJ+GvVYS7hw3jmQLtVvVwu/XSbKZyctzo7SohdflIaV+KvlZLiwpVkwWFb/HT1KdZDSfhmpWyT/mAsCV5UTzahzZk40aIbNXtZiKTQMwF5Qmq5Fux2ZRURSFjAO5WEwqFpOKyaRgs5iwFixvKciGVlUFk6rg9RVmQvoLso9BL8h4VoysWyUkuzK0fGBotrMxvWBa+B+rJWe3BpMaQ0uPqaparrtnlbkpGm1Re8hxt1lMgX9F5gnmY5Z1tImyxOnXdPxFMsH9fo06desChZnilaUolFi9J9I+6Xrk41WxcCIvFFx/6PYjfZ8qonJ3z6PEGzJ6QEVGHYkUkqoEVqgqaonzha+o2Iuogt8vNWSlgUz80peNfl4Kt19SrD5/5IPk9fmjL1SB86brhb/fomVglxRPojOZTEyePJlp06aRkZEBwDXXXMOMGTOoXbt2mdfzwAMPhL0PfWwtqpY0FkVcSkpOZnvm0UAdZKtk2MazlJQU/tqzT35JCyFK5ff7ufvuu5kxYwa6rtO4cWNmzZrFhRdeWKn1ut1uLrvsMrp168ZDD0kyYlWTzkUiLimKgsViwWKxSCNECCFOEAsXLmT69Onouk7nzp2ZPHlypRuKAHPnzuXTTz9l/vz5YdMffPBBbrvtNjZt2lTpbZzMpLEohBBCiOPi7LPPpm3btgCsW7eOSZMmMXbs2EpXZxkzZgzTp0/nkksuCZv+3nvv8dJLL3H48GFj2pIlSzjrrLOKPcYOZmWL4uQxtIhLHo+H5558BIB7HpyKLWRcLhFfXC4X/7w4cGdg/mdfkJSUFOOIhBDxqnbt2qxYsYKOHTuyf/9+AF5//XVyc3N58803sdvtFVqvoihMnDix2PQHH3yQTZs20bFjR2PaunXrWLlyJY0bNw6bt3Pnzvh8PubNm0fnzoGkvdzcXHRdp0aNGhWK60QhjcVq5PVp+AoSWdxePz6fhsPtRS1I0jCbFNxeP6qicPiYC49fI+NAHrpeWC6qZqqVFJvZ6Li780Aubm/gr5/8oy6saTZy9+dir51MasM00pIs5Lq8qBYTXocHT74Pv8eP45ADa6oVXdfw5/vxOR1Y02z48n343aBaVFxHnKhmFc3rR7WYUE0qJrMJ1aKieTX8ETp5+92BEoGqRY04/ejBPCzJlkDJwQKKqqCoCnqwnJeiYLabMZsUzCYVs6rg9+bz2iuBMbUGXz6elJQUVBRUFaxmU2EChKqgF5RKDHaItxYk1ChKYeJM4HirRimxYKKLQkHCihLsp16kpKAS6Gjv8Rbuu9fnD3R4r8bH40YiBZFTAjwhCUAen4bFp5Ve6jA4Q/Av+GI18wqXLfwoUpJB8XJtPy5fVjC3XnC8I+5WtMgi0AtKykU7AkXWWqQMZNEtlnyqipQ3LGHeyDc/9JDPK353pPh2y/P9KtsxKu9XtqT9CV1X4Veq8j8T5amsV6y0ZIRlw3dBJ9LNo8KSmJG3U1ISSqDUZPjPSXkULWtYZO3lW1mC2LJli9FQDJo3bx47d+7k008/NUoCVoVrr7222LSRI0fStGnTsGQar9fL1q1b8fl81KlTx5g+d+5cbr75Zq6++mreeecdY/qKFSto3rw5TZo0OSm6SkljUcQlk9nM/111U6CBYo7919RisTDh9onGayGEEOXn8XgYO3YsEHh03KRJEx577DEAVq5cSa9evVi4cGHYncCq1rRpU5o2bRo2zWw289dff7FlyxaaNGliTN+zZw9AWAPW7/dz7rnn4na7+fPPP2ndujUAa9as4c8//6R79+60atWq2uKPhdhfhYWIwGKxMub2++Oq3N+jTz4V6zCEECKhvfTSS2zevJl69erxzDPPULt2bVq1asXYsWPx+Xzs3r2bu+66i4ULFx7XuBRFoVmzZjRr1ixs+pNPPsk999yD1+s1ph0+fJiWLVuyb98+WrRoYUyfO3cu06dP5/bbb+f5558/XqEfF5LgIoQQQojjYufOnUCgr/OaNWsAuO6661iwYIExz+zZs2MSWzTp6enULRhLFgJ3Gbdu3UpWVhYmU+GYt02bNiUpKYmZM2fi8/liEWq1kcaiiEu6ruPzefH5vJXOkqsKmqaxe1cGu3dlSMacEEJU0LRp0zj33HPJy8tj+PDhfPTRRwDGY+F69eoVu7sXr8xFukiNGzeO1NRUvF4vL774Yoyiqh7SWBRxyZ3v4v96n8KIs07Bne+KdTi4XC66dGhLlw5tcbliH48QQiSitLQ0Fi5cyD//+U88Hg+XXnops2fP5q+//gIw+v/pus4rr7zC3XffHctwyyUpKYmnn36aESNGMGrUqFiHU6Wkz2IVCmZvenx+HPk+fH4Nr09D0wMZ0QBJVjNev0aeK3DH7GieB6fbh64HsgB1HeqkWUm2W/D5NJweH/uPufD6NFw5+aAFMo9tKVZS6yYDYG9cg3yXF4tJJeuwA6/Dg2JWsaba8Ll8KCYFd3Y++QcdqElm7LWTwQeOg3mYbGb8Lh/+7Hwwq2AxQTDzN/h/VYWC8n2qRUW1mDDbTLQ8rW5BZndgv4OvVRQ0dEwFHQ79Ee4MWoukHfr8OqqKkanocRdmH6cnW0hLtRVk4waWU5RACb5gxrOiQLLNgqIEyrupSoT8UEUxUiNVVQ1LDtaMUnE6SmiysB7YF29I2a1gyTsUPbwkWeh2QjdbbO+LhxX1M4LZltGXCWa5hh7miPc+Q2YIrLcsd2yLzxNaRhHAG5LN6fVrYe+jJ0WXfFTCPw2Ju5Tyf9H2SNdKWrZ8d66jlZGriNDM36JlCSt7Rz1inHpZssPD1lLxbVWpyMeiKkoYKopSofWEr69wBSVlW0dSUhnDspQ4TEQ2m4158+Zxyy23MHv2bMaNG8eQIUMAjMSQ1atXM2HCBAC6du0al42v/Px8HnnkES699FK6du0KBLKvr7322hMuQ1ruLIq4ZE9K4pPlm/n8py3Yk5JjHY4QQogqZDKZePXVV3nwwQcB+Pbbb4HCxmKPHj2YMmUKADfccAMbNmyITaAlmDJlCk899RRjxozB7w/c4FAKhsY70cS0sbhs2TIuvPBCGjdujKIofPLJJ6Uus3TpUrp3747dbqd169bMmjWr+gMVx52iKKTWSCe1RvoJ+YMnhBDVLd6vsYqi8Oijj3L//fdTs2ZNoPAxNMDVV19NSkoKTqeT++67r9riqKh7772XTp068fDDD4clupyIYtpYdDgcdO7cmZdffrlM8+/cuZPhw4fTt29f1qxZw3333cdtt91WrBakEEIIcbJLhGvsRx99xEsvvcSRI0do1aoVl1xyCbquc++999K5c2ccDgcWi6VYGb940KBBA9atWxfWwD1RxbTP4rBhwxg2bFiZ5581axbNmzc3xi9q3749q1at4tlnn2XkyJHVFKWIBa/Xw3v/eQlVgWvH3YE5qWIloIQQ4mQV79fYf//739xzzz0AnHXWWXz22WdGVZWsrCy8Xi/Dhw9nxowZnHbaaVW+/aowZ84cbrzxRp544om4vPtZVRKqz+LPP//M4MGDw6YNGTKEVatWhQ2YGcrtdpOTkxP2T8Q/n9fHu7Om8/ar0/H5Ip9bIYQQVaci11go/3XW7/czceJEo6GYnJzMpEmTwpZ74okn+OKLL/jyyy/jtqEIGFncTqczxpFUr4TKht6/f3+xmpENGjTA5/Nx+PBhGjVqVGyZadOm8cgjj1RLPMHsZ7+m4fZqeH1+/AW1oM0mFUe+F5vFhMenkWI3k+3wkJWbT1auG7NJNTKk7RYT9dLteHx+LGYTx/I8HD3sACAnz4OiKNhsJmrWScFiVjmW68bt8GCymtE1zcjkyzmQF6jRrCiYzCbc2fl4nR7QIL1FTTS/jmpW8bt9+DQNa4oNv8+P5tdQ0myYgvWdk8yBWs5JFlSzgj/fD55ArJqmorkCy29dewCSzVA3GUyBTr2qSUW1qChFi6wqYE22Yk62YLWZ8Pt1TCYFu6Wwn4carOGsKvj8Ouf/6xoAPH7IcwVqalvMhVnMiqKQlmzB59exWVTcXj8mNTBPsIax2aQU1IAO/h8jNTG0J6TxWZHPg1nGqm7jxpvGAZCabMNmjdQ/JXJN5JJ6XBbNYi5r90yvufD4Ws0qVnP5/u6raBZppKzjJJuVsePGG68t0QrsUvb9q8gxCV2uaBnskk9C2dcfcZsUP56R6iZHopXpRFQswGgx6YBm1NyOtv3gNss7pmjZ62xXfK1Vq2znoGRREs+BwlEuKuJ4DzFbkWsslO86m5uby6hRo/jyyy8BGD16NE6nk8suu4xhw4YZ0+vVq8f5559fib05Pp588knOOecczjvvvFiHUq0SqrEIxQvVB4eXiJYEMWXKFCZNmmS8z8nJSZgBP09mFquNm+95omBonNgnuNhsNqa/+FKsw4hLNpuNGXJshDghlPcaC2W/zubn53PmmWeyZcsWbDYbEydO5NVXXyU7OxuA2rVr43a7sdlsVbErx82gQYOM15qmMXHiRFJSUnjyySdjGFXVSqjH0A0bNmT//v1h0w4ePIjZbKZOnToRl7HZbNSoUSPsnxBCCCHCVeQaC2W/zm7fvp0tW7YAYLVaWbt2rdFQVBSFPXv2cOjQoSram9h46KGHePHFF4tlnl9zzTWceeaZxhBBAF6vl/z8/OMcYcUkVGOxd+/eLF68OGzaokWL6NGjBxaLJUZRiZOBruscOnSIQ4cOxUX5wXgix0aIE0N1X2NPP/10XnnlFVRVJTc3l0WLFjFo0CC6deuGruusW7eO+vXrG/MvXbrU6BOYKMaNG8fMmTO58847w6b/+uuv/Prrr2HTli9fTnJycrFH2Bs3bmTfvn1x9fs0po3FvLw81q5dy9q1a4FA2v7atWvZvXs3ELi1fc011xjzjxs3jl27djFp0iS2bNnCnDlzeOONN5g8eXIswhfVKN/l5KIzW3Fhr1a4XLHvOOx0OmndtDGtmzY+4Tsyl5fT6aRlk0a0bNJIjo0QcSQer7E333wz8+bNAwKPbBcvXozf7+eLL77g/fffx2q1AoE/Qq+77jpOOeUUunXrxhNPPMHWrVurLI7q0rRpU8aPH8/1118fNn3+/Pl8+OGHdO/e3Zi2Y8cOdF0nKSkpbN5Ro0bRpEkTvvnmG2NaRkYGH3zwAZs3b67eHYgipn0WV61axTnnnGO8D/Z5GD16NG+99RaZmZnGlxoCI7svXLiQiRMn8sorr9C4cWNefPHF4zJsTqCBHyj75td0fH4Nn1/HXVASz+fXcOR7MamBZIM8lxe/puNyuwH4c5+LJJsJt1fDbFLQdJ1m9VIA8Pt1DhSU9NOBY0ecmGxmVLNKjVQrfk3H4fRisZrIyc7HZDFhSbLgdXlxZbkw28woJgVfvheTbsacZMaSbEUxKeQfc0G+j2PrD4BVBY8GNhOY1UCpP48fW007JpsZzVtYYs9aI5DAoXn92NJNRvKLz+VD82toXj++JEuxHux+tw9NM2GyFP+LyOl0RO33opgCNeuUgt7gHq8bvz+QVLNt40GSUpIDiTtWEyarCdWsYrWb8ft1zCYVm0XFrwVeq6qCzaIaSS02sxpInDEpmEwqqgI2qwmTqhrltMymYFJLQSJMQZyqqqAALqfbiDXH4cGHpWCkfmMPKOzSHlICMLQsX9h7Jexz4/9FpoevrVC+p/Bc5Xs1TN7IiQilJddUlkLgux+kBUsnRkn0CZa0K/px5HKG5Q+wpLKI1aHy6y99BVV1cyH0LkXw+136gPfluZ8QTJopOq1iyp7kVJGTEFr6sizLh+5b2fbJmDuGN4fi9Rr7r3/9izFjxjBnzhxMJhPr1q3j4osv5q677qJ///4kJSVx7NgxWrZsya5du1izZg1r1qzhgQceoEOHDowcOZLLLruMjh07Vmlc1aljx47F4r3xxhu5+OKLcTgcxjRd11EUBZPJFJYFvnjxYsaOHcvQoUP56quvjOnTpk0jLS2Nyy67jHr16lVb/IoeT/c5j4OcnBzS09M5kHW0XP0Xy9tYdLp9+DUdry/weWZWeGMRoF56YOzAkhqLqXZzWGPR7fRisphQTUqxxqLX4cFkK2ws+lxecvflQL4v0EgsR2NRtRQ2FlVLlMZivq/Yb3Hd60cJmT+U5tPK3FjUFTh25CCqSaVGzbqYLaYYNxaddGwZyBL8Y89BklNSYtpYdDgcNKsfGI9sz6GjpKSkRD6uEacWj62iimaQq0rx+EPnjZacXJX1lo+n41FcqDoai0Glx1+eHUzMxmLZli9/Y9FYshLnLycnh0Z1a5OdnZ1Q/e2D19mS4s7KyqJ9+/YcPHiQTp06sXHjRgBOO+003njjDfr06QPAoUOH+PTTT1mwYAHffvutMYTPuHHjePXVV4/PDsWAx+PBbDajqoFr6f/+9z9eeOEFBg4cyKOPPgoE7sympaXhdDrZtm2b0bj8/PPPmTt3Lueff37YneNIynKuIMH6LIqTh6qq1KxVn5q16xs/LEIIIU4MtWvXZsaMGQD88ccffPjhhzRq1Ig//viDc845hx07dgCBIXRuuOEGFi5cyMGDB3n33XcZMWIEl112GQDffPMNbrc76nYSldVqDbv2XXrppfz0009GQxECDcpbb72VESNGGDW1AX766Sf+97//sXLlyiqLJ+GGzhFCCCFE4mvXrh0AJpOJPn360KxZMzIzM6lRo4ZRySVUzZo1ueqqq7jqqqsAWLNmDcOHD6dNmzb8+uuvpKenH9f4Y81ut/PUU08Vmz5y5Ejq1atH165djWl5eXlYrVajT2h5yS0bEZd8Pi/ff/Uu3335jlRwiXP5+flcc8XlXHPF5QkzDIQQIvY+/PBDIDBO4YgRI/j111+pXbs23377bcTGYii/38/YsWPRNI2uXbuedA3FkvTs2ZM777yTc889F4BHHnmExo0bG8e7IqSxKOKS3+fjs/+9yKfzXsDv88U6HFECv9/Ppwvm8+mC+fj9/tIXEEKc9HRd53//+x8AmzdvZuXKlUZDMfSOWDSvvvoqq1atIj093XicLSILDlW0cOHCCq9DHkOHCHZE1nQdXdfRNB2/jpHMous6voLkFrOq4Mj3GQkSXr+GzWLC5fHhdHvRNB1nvg+fX8fl9VMzxYrFrFInzYTPr6EosPewE0UBn1/Hke/DalHRdZ0mTWqQ5/LhcvvIdXrRNR2zxUR+rhuv04slxYrf48eX7yW5Xgpmq4n87Hy8eR68eR4Uiwn92BFItZLSMBWvy4vm1fDlucHpg725kGzGrwEmBfeBPEi2QEjpPUKSXfD4IUq2LY7wu36mjnUD23J6USzhJfEUBfweP/g0LOlRRugvOAkqCr3ODpR6UnQFRVWx1bSj+QJxaH6d/DxPoHyh14/Xb8JqVlFVnYLUFsyqQkqSGbMpUCLQajZhs5hQ1UAihtmkBhJijCSTwgzRwoSTQNxmxcalo64KlC20WTEXlLTTQ+YJ/u2lFsveKL6bwUSaoKKJIboeIclFKczbtISU97OYlCJVbiqedVEsm7iUeXUd41hA4AKg6XqJOQBlT4EoX9ZpeVVtckroysqbPFHGLVRDMo1WajW/Mp4D43sbukKl2M9CeRJqSpo3vJxi9edohifmle9EVOa8qcV+mZw4fv/9d/766y9UVWXHjh3laiju3buX++67DwhkA0crQygCbrzxRvr06cOAAQMqvA5pLIq4ZLZYufLGqUBsh54IstlsPP/qa2UYakQIIURp3nvvPSCQ0VuehuLOnTsZP348ubm5nHnmmdx0003VHWrC8Pl8HD0aGB0jOTkZgL///pt58+Zht9vDhlEqL3kMLYQQQojj6uuvvwYgJSWlzA1FgM8++4xvvvkGk8nE7NmzT/jRMrZs2cLixYvDyjBu3ryZq666iltvvTVs3vPOO4/69evzxRdfGNP+/vtv7rrrLp577rlKxXFiH2Uhqoiu6zgdDpwOR1yVYBJCiER0+umnAzBhwoSIDUW/38+iRYu48sormTt3rjH9iiuuYNiwYXz99dd07tz5uMVbUV6vl2PHjoVN++STT/j3v//N9u3bjWm//PILnTp1YsiQIWHzjh8/nsGDB7N06VJjWk5ODv/973/5/PPPw+YNJgUF620DNGvWjCuvvNIYaqii5DG0iEtut4uH7xgOwNQZC7Ekxbb2t9PppE2TwOj4f+47HHUQbCGEECXTdZ0ffvgBgGHDhoV9tmXLFt5++23mzp3L3r17AdizZ48xXE69evUqlahRWbm5uWzbtg2AHj16GNOffvpp1q1bx+TJk+nWrRsQGANy6NChdO3ald9//92Y9/nnn2fp0qW0aNGCU089FQj0i920aRN5eXlh2zvttNPIysrCZivs53/KKafwzDPPFOur+c4772C32zGbC5t2TZo0CWtsV9RJ3VjUdR2/Fvi/z6/h13Q0HfxaQUILhVUn/AWfKwp4fRoOv4aCgtev4S4oveZ0e1EVBY9PQ9N0UpMsmE0qDa0m8j0+nPk+cpxe/JqGy+M3yp/ZLCqNayeR7QyUCMxxesn3+Em1m/H6NVxOL76ChJOkOsnYrCacuW68eW6cB/PwuryY7RZqtKyF1+nBk+3G79PgsBMHYEm1YrKaSG1Th/xj+egta+L3+NELkkX8Hj/kecCngdsH1vDEFKym4tMgUAmmtj1skj+z4IuuKOjuQBZzUqf6mEKWN1nNnNa8Jhazit0WmG4xBf4fOGYKLoeDu28KrOv/LmiPyWonx+HBZFLCynMV7UJoUhUj+UNRFKN0kqoo+DWtIKGlsEqLavy/MEmkaIKLqirovsIflRS7hRS7JWrH9ZKrkwTeFL07qRW5WRkt0aXwcyXstVpCX8ry9bMMD6Skm6iRPjOpgcSi8ohNN9Dq3GgC9Wut6lCLVnTSo3+fIn+19DKFVPTnpXKirywYS2nbq8xhjFT3Jkir2h2NG2vWrOHgwYMkJSVx1llnATB79mzmzJnDr7/+asxXq1YtRo0axejRo6t0+x6PB1VVjUbVnj17+Prrr0lNTWXUqFHGfNdddx0rV67k1VdfpX///gD8+OOPDB8+nC5durBmzRpj3q+//polS5Zw0UUXGY3FmjVrAoFqNaEGDx5M8+bNadKkiTGtQ4cOLF68mPr164fN+9prrxWLv169ehHrdaemppbnMJTLSd1YFPHLnpTEst/WgaJgT0rC6z8xf2kKIcTJZMuWLZx99tkA9O3b17hjNn/+fH799VdMJhPDhw9n9OjRXHDBBWF31KLJyMjg4MGDtG3b1hhvcf369cyePZtGjRrxwAMPGPP27t2bX375hW+++YbBgwcDsGnTJsaOHUuXLl3CGosZGRls2bKFffv2GdPq169P06ZNadiwYVgMN954IxdeeCFdunQxpnXt2pXDhw8bjcagYCZ3qLS0NM4777xS9zVWpLEo4pKqqrQ+pU3hnQoZv08IIRLejz/+aAze37NnT2P6pEmTGDZsGFdccQUNGjQo1zpHjBjBunXruPbaaxk7dizdu3dn3759zJw5k86dO4c1FpOSkgA4cuSIMa158+ZccMEFtG3bNmy9Tz75JC6Xy+hfCdC9e3f27NlTLIYrrrii2DSr1UqdOnXKtS/xShqLQgghhDgumjVrZrzesGGD0VVo6NChDB06tMLrPHDgAG+99RZvvfUWO3bsoF27djz44INomsbGjRtp3749JpOJ9957D5vNFlbxpUOHDsWSRSBwF1IESDa0iEter5e3/jObt16fhdcr5f6EECLRud3usOFecnJyqmTs2s8//5y1a9dywQUX0L59e1q3bk3Lli159NFHycvL4/TTTzf6+DVs2JCaNWuyZ88eGdmiHOTOoohLXo+HB+6eBMClV1yNyWovZQkhhBDxKi8vjyeffJIdO3aQlJSEy+WiT58+Vbb+Bg0aRLw7qGkaqampRtIJBPoitm7dmqZNm5KRkYGpIMHS6/ViscR25I14ddI2FnUdvH4dj8+ProNf0/FrgZJ+CsFM6UCWdPDzQBlAjBJ/LrcPTdeNsmc1UqyYVJUUuxmfX8Pj0/D6NLLz3Pj8geWtZgVFMZNqt2BSFfLyAxnDLo8fs0nBZlFx5PtIS7LgLcjATq9hx+n2oWs6PpcXx4E8rGlWUhqk4nV6QVHw5rrR0gMNqpRGafhq2tF1nfyj+XgPOSDPgzvHAy3SA5nPbl8gxc+vg0WFFCtk54PNDG5/INMZSk4DDJ0v6KCz8HXBZ67f9oFJKcyo9mr8xq7AdjU9MD10M+k2/BaNzt3OpVa9ZA4cy6dGmgmzScViVgrK9wWybgOZzwpmU2GWsV8LzS8sXLGqhGRkq0pIeb/CcnrBJXQ9OC0QoslkYsQlI1EAi9lkfAciKcsfykX/mi7vLf7Q7ZtUpcSyYIV/PZellFr4B2XZF4vFzP+NHGm8PpFLlInySfSKR8Efnerai9BRDyJ/ntjHL9TDDz/M9OnTgcBA3C6Xi759+1b7dl988UVmzJgRVrd+27ZtmM1mGjZsaDQUAUaOHMmmTZt4+eWXiw3pc7I7aRuLIr5ZLDZGj3uSXn1bYjVHGLbnOLPb7bz7/gfF6z4L7HY7733wv1iHIYSIU9nZ2bz00ksAtGnThh07dqCq6nHrE2gymcIahUOHDiU3N5cDBw6Ezffbb7+xf//+sOzlH374gYkTJ3LRRRfx6KOPHpd445H0WRRCCCFEtfnoo4+Mvud33nknEMgUzsjIiFlMdrudFi1ahE3bvHkzixYtCqso8/PPP7Nu3bqwaisAnTt3pkePHsYA3RB41O5yuao38BiRxqIQQgghqk3onbqhQ4fSu3dv/H4/O3fujF1QEdSqVYtBgwZhtxf2kb/++utZsGABt9xyizHN5XKxYcMGVq9eTa1atYzp//nPf0hJSWH8+PFh6/3555/JzMxM6IQaeQwt4pLHnc+TD/4Lq9XEgm9XYrOmxTQeh8NBw9o1ATh4NLtaR8pPNA6Hg7rpNQA4nJ0jpRCFEGGaNm1qvN69ezdffvkl69evN6qixLMGDRrwf//3f2HTbDYbmzdv5o8//qBevXrG9IyMDHRdDxtb0ePx0LdvX/x+P3///bdRtWXVqlVkZGTQvXt3WrVqdXx2phJO6saiqoBZVY3ElcB9VgW/pmM2KZhMYDWr+AqSPILl+TRdx46J2ml2FAIJBsG/F3x+DWe+zyhJpyiBxBer2YSqgten49c0VFXB79dJS7Hg8+nke3yYTSpur5+6NQJ/1eR7/OS4vHi8fpJtZuql23F7/eSk2fD5NGql2bDUTSHH6cFsUjmSmYvJaiL/mAuT1YTf40dRwNIw1Shh5871kNy0Br58H6pFDZT98+t4nR4sDQIXeV++D70g8Sa1Zc3wgxaoEIglxYrf48NkLfIV6lA4mKrf48NkC3yu+TT8Hh/2tMK/2HxeP4qi4Pf4wlahmFScx3LIOXYIgHXbDmJWA4XRNb+GyWzCkmIFpaAUX8G5SUu2oCqBZI9kq4mUJAs2iwmbxYTZpGC3mlGVwPny+QMnx6wGS/spqErBeS44VjoQmKTjLSiNGDzHHp+/sNO7EjjbwUSnwj7pSliCSKTujpFKAZZFWNk0vaQO8idWJ3khjqfj9aMTtXToCfKjG1rC7o8//qBfv35hDcXdu3eTnJxM3bp1YxFeuamqSrt27WjXrl3Y9BkzZhSrznLw4EFatWrF4cOHady4sTH97bff5uWXX+buu+/m6aefBsDn83HPPffQtm1brr32WqxWa/XvTBmd1I1FEb8sFhsPvrQANA2LxYYuBVziVnJyMrsz9xuvhRAiVGhFlk2bNoV9tm3bNgYNGkT9+vX5/vvvqVGjxvEOr8ooilKstnPTpk3Zvn07Xq837A/35s2b06tXr7DygBkZGUyfPp2kpCRuuOEGY/pLL73E6tWrufrqqxk4cGC170ck0lgUcUk1mWh+Snt0f+COnl/K/cUtRVHCHsUIIUSo5ORkbDYbbre7WGNR13VcLpfRGPr0009jFGX1Kjp+41133cVdd90VNs1qtXLHHXfg8XhQVZVVq1axZcsWpk+fTkZGBv/4xz9o1qwZ//znP7FYLPTv398Yjqi6SWNRCCGEENUqJSUFt9vNsWPHwqafdtppdOvWjUWLFrFr167YBHccrVq1is2bN9OjRw86dOgAwPbt27nkkktQVZV169YZ8z777LN88MEHDBkyhOuvv56+ffuSnJzMhg0bAI5r3WlpLIq45Pd5+WXx56Bp9BpwAYok7sctt9vNPZMDw2E8/exz2Gy2GEckhIhXRRPgpk2bxqJFi7DZbMyZMydGUVVOsAHYvXt3OnbsCMCOHTu45JJLAFi/fr0x7/Tp03n//fd57rnnjMZicnIyGzduxGQyoWkaqhq43nXv3p0jR45w3XXXcdlllwGBfo1ff/019erV4/TTTz9u+yiNRRGXfD4vb80IdBTu3mcIZlUaIPHK5/Mx+9VXAXjiqaelsSiEiCq0sbh48WIefPBBAF555ZWwknyx9ttvvxl3AEMbgMHM6ODdPQgktrz33ns8++yzxrxJSUls2LChWAOwW7duxZJdGjRowDfffBPWtxMiP6o2m80MGTKk6ne4FCdtY1FRCku+6TpYTHogo1nXjcxmXQ9kTAeyYwuzm0NpBSUCg1nSNrNKktUcKBtYkJnr1zS0gmRaI/Ma8GuFpQRVVcHn1/D5NPK9fnx+jWS7mUZ1knHk+/D5NSxmFYtZxePV0HWdbIeHXJeX+ul2nG4/zVvVQtcDMQUzc1PsZnKcXqN0oAJGOTZnQcazx+klqU4yvnwf6DpmuwXFrIKuk7ftSOHBCLKYAiUDLSppHetjsppQLYESeKqi0KROMlaLaiwWPGYWs4pJVbFbTaSnWMNK7IUeVl3XyXe7+XRQ4Adi6Nmtw8a9AvD6AscjUnWX4PZ8/uIpwsHzDqAqwf8HPytS/q/gjQLYrBYGDx2GooDVasFiUo0s6oKoKU82c1mFft9Cj2VYlrVS/qzJ0NN5omRcCiHiV3CMwWASnKZp3H777ei6zpgxY7j++uurPYbffvuNTZs20aNHDzp16gTAn3/+yYgRI9A0Law/5QsvvMB///tfnnnmGaMBGHoH0O/3G1VhunXrxqFDh4xhcSB6A3Dy5MlMnjw5bJrZbGbw4MHVss9V5aRtLIr4ZrfbefuDBbEOw2C325n/6efSsBJCiAoo2lhUVZVvvvmGRx99lBdffLHC69U0jf/9738kJydz0UUXAfDXX39x0UUXoet6xAbgv//9b6OxGGwAqqoa1gDs3r07hw4dChsjsn79+ixatIgGDRqEZTbfeeedRmWaoERoAJaHNBaFEEIIUa3OPvtsvvzyy7CxCZs1a8Zrr71WqbFgFyxYwKhRo4DAqBmqqpKcnMymTZsq1QCcOHEiEydODNuW2Wxm0KBBFY41kUnWgBBCCCGqVfDOYuhj2d9//53evXvz999/V3i9/fv3p2HDhtSvX9/oF1ivXj0aNWrEpZdeytGjR415J06cyDfffGM0LgFMJhODBg3ijDPOMJYXxcmREXHJ5XTSt8cZ9O1xBi6nM9bh4HA4aFCrBvVr1sDhcMQ6HCGESCjBIXOCdaJ1XWfs2LGsXLmSfv36kZGRUaH11qtXj8zMTPbv329M27VrF5mZmXz44Ydh8+bn51doG+IkfwytKAqmkNJsFaGWevtcR9fVkHfB8myBv7K0gv/7NR2tINEFAgkcOoHki9ppNrSCRBiX20eyLbCOmqk2NE1H03UsZjWQIOPX8fj82C1mfJqGw+Ul2WYuWJ+Ox6uRl+/DYlZJtQcGCbXWTcbp9hvxaZqO1x9IvqnbKM2YHuTza6iKEtiWt2A5TTfKIu7cn2vshxaSZKIWHGyzScWZ60ZRFZJTA+WMAmX5AgkwKXYTmjefjL/+BOBwtou6Jismk1qYlKIqeHwaWbluIJiUEvlchJ4iu9WEvyAmU+HJxxTyF6XZVJh0Y7WYMBckHzkLGq2B46yBEiwRqBQkyQTLBUaMImJskWKszDxlJX0vhRDHy5EjR9i6dStQ2FhUFIX58+czcOBA/vzzT/r378/333/PKaecUqFthD5Crlu3Lq+//jp//fVXWAnBMWPGsHHjRp577rmT9nFyRZ3UjUURv6w2O7Pe+xyrRcVqs5e+gBBCiLiUkZFBVlYWUNhYBGjRogVLly5l4MCBbNu2jX79+vH999/Ttm3bSm2vRo0aYeXyIDDE1zfffENWVlZYScHMzEyysrKMjGcRmTyGFnHJZDLRuXsvuvQ40+icLIQQIvHUqlULszlwbyq0sQjQpEkTlixZQocOHdi3bx99+/bllVdeqfIYzGYzO3bsYO7cufTq1cuY/tprr9GpU6ewfoyiOGksCiGEEKLatG7dmlq1agGwYsWKYp83bNiQJUuW0LlzZw4dOkRmZqbxWU5ODvfddx/ffvut0RWoomrVqsWVV14Z9sj66NGjWK1WY7BtCGRV5+TkVGpbJxppLIq45PP5+O6rz1j85af4fL5YhyOEEKISbr/9dgAeeeSRiL/T69Wrx4oVK3jvvfe44oorjOnLli1j2rRpDBo0iFq1ajFgwAAeffRRfvzxRzweT6Xjev755zl48CAjR440pn300Uc0b96cZ555ptLrP1FIY1HEJa/HzQN33Mg9E67H63HHOhwhhBCVMHbsWNLT09m+fTvvvvtuxHmSk5MZNWqUUTMZAuMgXn311TRp0gSPx8PSpUt5+OGH6du3L7Vq1eLzzz+vdGzp6elh3Z3mz59PdnZ2pe9knkgkwaWSSs8qVaJmxwYSoUPLxAWyaXUdkqyBL65WkDkd/H+qvfCUGaUCFfDrOujBbGsdt1dDVRVqp9lRlcB6NC1QytDv1wrWrResI/De5w+81/RAZnYgosKYQvdZCyQDG9nQ4cdEMbK9QxWsMrDuBqlAIOu72HwauL06nXv0BsCR70PPzsekKljMKuaCrGizSSHFbg6UVVQKj3O0MoKKAh6fhskUiNEXsm1N8xux+/yBbGsFyHF6Ach3uenVuw8AR/M8+LCAohilA0Nr8SmFmw+LqzBrOjCTgmJkjQfLSkaiFpQVDP3YrxUeX00rPF+RVHfms6Ko9O3X33gd4dRX0XaqZ71CiOp3zTXXkJ2dDQTuLl555ZVYrdZSl+vVqxfvvPMOuq6zfft2vv/+e77//nt++OEHDh8+HJYM8/bbb/Pxxx9z7rnncs4559CxY8cKjZ04b948Ro0aRb9+/Yxp69ev59lnn+Wee+45KZNhFD3SVf0ElpOTQ3p6OgeyjoZlRMVCSY3F4IWxaGOx6PKlNRaB+GwsFojUWAwK/oyrioLJpEZsLFrMarkbi8G63aGNxcKay4VD8yhAvqdw/0xqoHGnKGAxqTFtLAbGfUwH4ODRbFJSUqIex+pvZB2fVpw0FsXJJicnhwa1a5GdnR3z61V5BK+zoXHfd999TJs2jaSkJFwuFzNnzmT8+PEV3oamaWzevJmOHTsavzv/+c9/Mn/+fGOeevXq0b9/fzp06MCtt94aNoxOeY0aNYp58+Zx6aWX8sEHH1R4PfEm0rmKRB5DCyGEEKJade/eHcBosD322GOVSiJRVZVOnTqF/ZH9wAMP8Pjjj9O9e3eSk5M5dOgQH330EY8++mil6zS3bt0aICz55mQijUUhhBBCVKszzjgDCAzQfcopp5CZmclDDz1U6fW6XC6WLl3KY489xl133cWTTz7JqaeeytGjR1m+fDlTp04F4IILLoi6jqJPwi699FIaN27Mxo0bjWmdO3cGqJKkmkQkjUURl9z5Lq4feR7XjzwPd74r1uHgdDo4q1NrenVohVPK/YVxOBw0b9SA5o0aSClEIURErVq1wmKx4HQ6jQbcSy+9xJo1a8q9Ll3Xeeihh+jbty81a9ZkwIABPPTQQ8bwOhs3bsRqtdKnTx8efvhhNE3j0UcfDXTp0gq7Hy1btowzzjiDYcOGha1/3759ZGZmsn79emNa//79+eijj5g7d27FDkCCk8aiiEuapvPnts38uW1zickbx9PRrCMczToS6zDi0uHDhzl8+HCswxBCxCmz2UybNm2AQIbzZZddhqZpjB8/PqwBV9Thw4f55JNPeP75541piqKwcOFCY/icRo0acfnll/PKK6+wYcMG1q1bh9frDZt/3Lhx1K1bl88++8yYnpKSwoYNG1i1alXY3cWnnnqKn3/+mYsvvtiY1qBBA0aOHGnsw8lGsqFjSClIXAiZEjI9wFRknuJ5I8WTXgBS7IGl9JBpilKYh6EXJLfouh62htBpwWSXotstLSdKMxJ3ikRajjaf35/G+wsCQyK0b1U/YhWX0OOkKEpBYklBEklBAknYPECKDSIlvxSLNeRzRQGHvTD4ujXsJKdYjeNrrCt4gAtehy5fOFfoQShMBAomJinhCwDBxKTwz0KzoX2aHva+cLZg8k1IAk+Efa1s4ojdbmfV2nUAJCXZiXTuq0LZvj+VzYIJO6MiQUkyVHxq164dW7ZsYevWrUyfPp2FCxeycuVKXn/9dW666SYA9u7dy7Jly1i+fDnLli1j06ZNQKCxOXbsWJKTkwGYPHkyLpeLPn360KxZM+z2QFnYrVu30r59e9xuNxkZGca28/PzycrKYv369YwYMQKAjh078vnnnxuPyIP69OlTzUci8cidRRGXTCYT/c4ZSL9zBkq5vzinqiodOnakQwWHqRBCnBzatWsHwLZt22jcuDFPPPEEAPfeey+HDx/m5ptvpmnTplxxxRW8+uqrRkOxQ4cO3HDDDeTl5Rnruvzyy/nzzz/p1q0bL7/8sjG9UaNG/PHHH+zatYujR48a0++66y5+//137r77bmOa3W7nggsuoHnz5lFHoxABMf/NPnPmTFq1aoXdbqd79+4sX7486rxLliwJ3EEq8m/r1q3HMWIhhBAiccTLdbZRo0YA7N+/H13XOXIk0K3n2LFjbNiwgXbt2qGqKt26deOOO+5gwYIFHDx4kNWrV9OiRQtGjx4dlmBit9vJy8tjw4YNxrT09HR++OEH9u/fb5QYhMBdxK5duxp3IEX5xPQx9AcffMAdd9zBzJkzOfvss5k9ezbDhg1j8+bNNG/ePOpy27ZtCxsPqF69escjXHEc+Xw+lny3GIABAwcZRehF/PF4PDzz9DQA7r53SpkG2hVCHB/xdJ3du3cvEKgFfdlll/Hhhx8CMHHiRAYMGEC3bt0YPXo0x44d4+DBg/Ts2RMIjKk4Y8YMDh48yM8//0z//oEiANdddx2XXHIJp556ath2BgwYUOlYRbiYDsp95pln/n979x4XRb3/D/y1wO5ydVERFhRB8oAiiIGpaCpoYpoWlWle4dHJr1R6UtRSy7x0POovM+sc0y6Gludkfb9ox1JLTkcQAzUBzQsiKggaiJJcRK7L+/cH7eTCLpd1YWaX9/Px4PHYnfnMzPs9H5357MxnPoPg4GBs27ZNmNa/f39ERkZi/fr1TconJiYiPDwcd+7cgbOzc6u2UV1djerqP14XV1ZWBk9PT0kMym2M1vZZ1Pa5M9c+i/cqKvCnXg0Hp+zrt2CvZ9BpY/os3r9gm/osVlSgp0vDr9Rfb9+BvYNDh/VZxO/1cf+8iooKeHR3boinuASOjfZP4/6w7dln8e7dCrj+PkD4rZLmBwhvf9xnkVlOn0VTDMot5nm2cdzPP/88vvrqK7i5ueHmzZsAGq4OFhYWQqVqOIbEx8djypQpCAkJwalTp4Rl33vvPSgUCjz77LNQq9Vt2gfMsNYOyi3a5ZqamhqkpaVh2bJlOtMjIiKQkpLS7LIPP/wwqqqq4O/vjzfffBPh4eEGy65fvx5r1qwxScxS0PQgKGthvsE1mSCa9mNnU4/gwYMBAN1VdrCzU4oaT71SLsRjq5RDKTe2H2Xj/W5cPdTa/NGDRGFjBblN0x4l+hvnpPOGoPvLtv0Eq30gq/FDWk0bqebD7AJmzCCpnWe14xZqG4pdunRB79698cMPP2Dq1KkAgOHDh8PGxgZ2dnaora2FXC4H0HD1kYlHtD6Lt2/fhkajgZubm850Nzc3FBYW6l3G3d0dH3/8MeLj47F37174+flh7NixOHr0qMHtLF++HKWlpcJffn6+SfNg7cPOzg4/HT+Bn46fgJ2dndjhSC4exhhriZTOs0uWLBEeWAGAmTNnIjo6GufOncOhQ4d0tv/bb78hOTlZaCgy8YneEazxE0ja9/bq4+fnp/PS8NDQUOTn52PTpk06L/y+n1KphFIp7lUpxhhjTCxin2fffPNNvPvuuwAAuVyOf/3rX5gyZQpOnz6NgICAJq/ic3JyalVerOOIdmXRxcUF1tbWTX7dFBUVNfkV1Jxhw4YhOzvb1OExxhhjZk0q51mNRgOgYazE7777DlOmTAEADBo0CHPnzoWXl5fR62YdQ7TGokKhQEhICBISEnSmJyQkYPjw4a1eT0ZGhvA4PrMclZWVCB85EuEjR6KyUgqv+7sHv4d84PeQD+7duyd2OIwx1iKpnGcDAwMBAKNGjWpyFZGZB1FvQ8fGxmL27NkYPHgwQkND8fHHHyMvLw8xMTEAGvpB3LhxA59//jkAYMuWLfD29saAAQNQU1OD3bt3Iz4+HvHx8WKmwdpBfX09jqemCJ/FRkTIu3ZN+MwYY+ZACufZuro6AMDZs2exc+dOREdHP3BerGOJ2licNm0aiouLsXbtWhQUFCAgIAAHDx4ULkkXFBQgLy9PKF9TU4MlS5bgxo0bsLOzw4ABA3DgwAFMnDhRrBRYO1Eqlfjq94MT9zk1jv4uSTK90x/kqWXdIYz++N4wDFPblmeMmZYUzrM5OTkAgFu3buk85MLMh6jjLIpBO6aQuY6zyMRRUVEBF1XDv5fbpWUijyUorXgMxdLaIws3FhnTzxTjLIqh8dh9gwcPRlpaGmxsbJCUlNSmW+CsfbV2nEXRX/fHGGOMMculfWe8QqHghqKZ4sYikySNRoOjiYk4mpgoPEnHGGPM/Pj4+ACAzruamXkRfZxFxvSpqqrC+MfGAhD/NitjjDHjaX/wV1dXNzvGI5MubiwySZLJZOjv7y98FpvU4pESQ/uGdxNjDIAw3FhxcTEfP80UNxaZJNnb2yP9l7NihyGQWjxSwvuGMdac69evA+Af2uaM+ywyxhhjrN2UlpaKHQJ7QNxYZIwxxli76dmzJwBw33Mzxo1FJkmVlZV4YnwEnhgfIZnX/QUPDETwwEB+3V8jvG8YY83x9PQEALMaK5Lp4j6LTJLq6+vx3x9/FD6LjYiQeeGC8Jn9gfcNY4xZNm4sMklSKpX47Pd3lfLr/kyDqH2eULa1tcUP//lR+MwYY/crKysD0PAqQWaeuLHIJMnGxgbTZ8wUOwzWCtbW1hgVFiZ2GIwxiTp37hyAhqFzmHniPouMMcYYazc8ZI7548YikySNRoNTP/+MUz//zK/7k7ja2lps//BDbP/wQ9TW1oodDmNMYtRqNQBALpeLHAkzFt+GZpJUVVWFkaHDAPDr/qSupqYGi/6yAAAwOyqKTwiMMR3aY4IUHlZkxuHGIpMkmUyG3l5ewmexSS0eY8hkDQ+5aD8zxlhH0DYWebQE88WNRSZJ9vb2yLpyVewwBFKLhzHGzEV5eTkAcJciM8Z9FhljjDHWblxdXQHwlUVzxo1FxhhjjLWbxx57DAA/4GLOuLHIJKmqqgrPPfM0nnvmaVRVVYkdDiorKzFi2FCMGDZUEq8fZIwxczFmzBgAgIuLi8iRMGNxn0UmSRqNBt/t3y98Flt9fT3ST50SPjPGGGudH39/dasUjuXMONxYZJKkUCiwdft24TNrm/u7Bt3/5LNUn4LWvoqwvV5JyBgTT0ZGBgBI4i4RMw43FpkkyeVyvPDiXLHDYIwx9oB++eUXAMC9e/dEjoQZi/ssMsYYY6zdaO8O2djw9SlzxY1FJkn19fW4cP48Lpw/z30EGWPMjPXt2xcA0L17d5EjYcbiZj6TpMrKSoQEDQTAr/tjjDFzph1Bgt8db764scgkS2rDLEgtnuZ09EMiD7pvtPHywy2MWZ7r168DAMrKykSOhBmLG4tMkhwcHJBfeFPsMARSi0dKeN8wxppz9+5dADx0jjnjPouMMcYYazfa29DcWDRf3FhkjDHGWLtRq9UAADs7O5EjYcbixiKTpKqqKkTPnoXo2bMkMZBrZWUlIsaMQcSYMfy6v0Z43zDGmuPj4wMAcHZ2FjcQZjTus8gkSaPR4KsvvwQAbN3+kcjRNAzlk3w0SfjM/sD7hjHGLBs3FpkkKRQK/L93NwufmXQplUrs3rNH+MwYY/fT3h2qq6sTORJmLG4sMkmSy+VY8OqrYofBWsHGxgbPTnlO7DAYYxKVnp4OALh165bIkTBjcZ9FxhhjjDFmEDcWmSTV19fjWm4uruXmcj84iaurq0P8//0v4v/vf/k2E2OsCe2g/dylyHzxbWgmSZWVlejX9yEA/Lo/qauursas558H0FBXNjZ8WGGM/UHGr2Yye3xUZ5Jlb28vdgg6pBYPY4wx1hG4scgkycHBAcVl5WKHIZBaPIwxZi4qKioA8BtczBn3WWSMMcZYu7G1tQUAWFtbixwJMxY3FhljjDHWbtzc3AA0jMN69epVkaNhxuDGIpOk6upqvDzvf/DyvP9BdXW12OGgqqoKT0+ehKcnT5LE6wcZY8xcfPHFF3jkkUdQWlqKsWPH4u7du2KHxNqIG4tMkurq6hC3YwfiduyQxHAsGo0G3x86hO8PHeJ+N4wx1gaurq6Ij4+HUqlEbm4ufHx8cPHiRbHDYm3AD7h0MvX1BDIwj4QZhkp0HJmVNd5as1b4XKcRd6zF+7dfp6l/wHgefBiJOg3pfL7/e6ujMNFoFpp60vl8/3fGmPEs6f+Sp6cnZsyYgbi4ONy6dQsDBw7Er7/+KozByKSNG4tMkhQKBZYuWy52GIwxxkzko48+Qm1tLXbv3o3a2lpMmDABqampPDarGRD9NvSHH36IPn36wNbWFiEhIUhOTm62fFJSEkJCQmBrawsfHx9s3769gyJljDHGzI9UzrNyuRxffPEFIiIiAACnTp3C+vXrTbJu1r5EbSx+9dVXWLhwId544w1kZGRg5MiRmDBhAvLy8vSWz8nJwcSJEzFy5EhkZGRgxYoV+Mtf/oL4+PgOjpy1NyLCrVu3cOvWLRBZzq0YxhjrSFI7zx47dkynsdqtWzeTrJe1LxmJeCYeOnQogoODsW3bNmFa//79ERkZqffXxuuvv479+/cjMzNTmBYTE4MzZ84gNTW1VdssKyuDSqXCzd/uoEuXLg+ehJkxlz6LFRUVUHdzBgAU/lYi+uv+TBvPg3cWbIhH9Xs8pUbFY6o+ixUVFXDr2hDLzTvGxcIYa6qsrAweLt1QWlpq9PlKzPNs47grKirg6uqKe/fuAQAmTJiAAwcO8OsARWSorhoTraNATU0N0tLSsGzZMp3pERERSElJ0btMamqqcPlaa/z48dixYwdqa2shl8ubLFNdXa0z9EppaSkAoLys7EFTMEvm0li89/uI/0BDXYn9BLJp43nwA6Mp4jHV8VlqdcWYpSgvbzhPGXtNR+zzbFmj8+yzzz4rNBQdHBywc+dOlJfzm7HEpK2jlv6NidZYvH37NjQajTBYp5abmxsKCwv1LlNYWKi3fF1dHW7fvg13d/cmy6xfvx5r1qxpMr2vt9cDRM860p+8e4sdgg7pxeMpdgiCvl7SiYUxS1FeXg6VStXm5cQ+z3p6Gj4eVFRUNNkOE09L/8ZEfwSp8eVnImr2krS+8vqmay1fvhyxsbHC9/r6ely7dg2DBg1Cfn6+xd+KLisrg6enJ+dqgTpTvpyr5epM+bY1VyJCeXk5PDw8Hmi7Ypxnf/vtN3Tv3l1YpjPVc2tJYZ+09t+YaI1FFxcXWFtbN/l1U1RUZPDXhlqt1lvexsYG3bt317uMUqmEUqnUmWZl1fBcT5cuXTrNP1rO1XJ1pnw5V8vVmfJtS67GXFHUEvM86+zsrLdsZ6rn1hJ7n7Tm35hoT0MrFAqEhIQgISFBZ3pCQgKGDx+ud5nQ0NAm5Q8fPozBgwfr7UfBGGOMdVZ8nmWmIurQObGxsfj000/x2WefITMzE4sWLUJeXh5iYmIANFzanjNnjlA+JiYG165dQ2xsLDIzM/HZZ59hx44dWLJkiVgpMMYYY5LF51lmCqL2WZw2bRqKi4uxdu1aFBQUICAgAAcPHoSXV8PDJwUFBTpjQfXp0wcHDx7EokWLsHXrVnh4eOCDDz7As88+26btKpVKrFq1qsllc0vEuVquzpQv52q5OlO+YuQq1nm2sc5Uz61lTvtE1HEWGWOMMcaYtIn+uj/GGGOMMSZd3FhkjDHGGGMGcWORMcYYY4wZxI1FxhhjjDFmUKdrLH744Yfo06cPbG1tERISguTkZLFDarPVq1dDJpPp/KnVamE+EWH16tXw8PCAnZ0dwsLCcP78eZ11VFdXY8GCBXBxcYGDgwOefPJJXL9+vaNTaeLo0aOYPHkyPDw8IJPJ8M033+jMN1Vud+7cwezZs6FSqaBSqTB79myUlJS0c3a6Wso1Ojq6ST0PGzZMp4y55Lp+/Xo88sgjcHJygqurKyIjI5GVlaVTxlLqtjW5WlLdbtu2DQMHDhQGFg4NDcWhQ4eE+ZZSr0DLuVpSvZqSJZx3TamlY78kUSeyZ88eksvl9Mknn9CFCxfo1VdfJQcHB7p27ZrYobXJqlWraMCAAVRQUCD8FRUVCfM3bNhATk5OFB8fT2fPnqVp06aRu7s7lZWVCWViYmKoZ8+elJCQQOnp6RQeHk5BQUFUV1cnRkqCgwcP0htvvEHx8fEEgPbt26cz31S5Pf744xQQEEApKSmUkpJCAQEBNGnSpI5Kk4hazjUqKooef/xxnXouLi7WKWMuuY4fP57i4uLo3LlzdPr0aXriiSeod+/edPfuXaGMpdRta3K1pLrdv38/HThwgLKysigrK4tWrFhBcrmczp07R0SWU6+tydWS6tVULOW8a0otHfulqFM1FocMGUIxMTE60/r160fLli0TKSLjrFq1ioKCgvTOq6+vJ7VaTRs2bBCmVVVVkUqlou3btxMRUUlJCcnlctqzZ49Q5saNG2RlZUXff/99u8beFo3/E5kqtwsXLhAAOn78uFAmNTWVANDFixfbOSv9DDUWn3rqKYPLmGuuRERFRUUEgJKSkojIsuu2ca5Ell23RERdu3alTz/91KLrVUubK5Hl16sxLOW8217MpbHYaW5D19TUIC0tDRERETrTIyIikJKSIlJUxsvOzoaHhwf69OmD559/HlevXgUA5OTkoLCwUCdPpVKJ0aNHC3mmpaWhtrZWp4yHhwcCAgIkvS9MlVtqaipUKhWGDh0qlBk2bBhUKpXk8k9MTISrqyt8fX0xd+5cFBUVCfPMOdfS0lIAQLdu3QBYdt02zlXLEutWo9Fgz549qKioQGhoqEXXa+NctSyxXo1laefdzkzUN7h0pNu3b0Oj0TR5ebqbm1uTl6ZL3dChQ/H555/D19cXN2/exF//+lcMHz4c58+fF3LRl+e1a9cAAIWFhVAoFOjatWuTMlLeF6bKrbCwEK6urk3W7+rqKqn8J0yYgOeeew5eXl7IycnBypUrMWbMGKSlpUGpVJptrkSE2NhYPProowgICABguXWrL1fA8ur27NmzCA0NRVVVFRwdHbFv3z74+/sLDQJLqldDuQKWV68PypLOu51dp2ksaslkMp3vRNRkmtRNmDBB+BwYGIjQ0FA89NBD2LVrl9CZ2pg8zWVfmCI3feWllv+0adOEzwEBARg8eDC8vLxw4MABPPPMMwaXk3qu8+fPxy+//IJjx441mWdpdWsoV0urWz8/P5w+fRolJSWIj49HVFQUkpKShPmWVK+GcvX397e4ejUVSzjvdnad5ja0i4sLrK2tm/yaKSoqavKrx9w4ODggMDAQ2dnZwlPRzeWpVqtRU1ODO3fuGCwjRabKTa1W4+bNm03Wf+vWLUnn7+7uDi8vL2RnZwMwz1wXLFiA/fv348iRI+jVq5cw3RLr1lCu+ph73SoUCvTt2xeDBw/G+vXrERQUhPfff98i69VQrvqYe70+KEs+73Y2naaxqFAoEBISgoSEBJ3pCQkJGD58uEhRmUZ1dTUyMzPh7u6OPn36QK1W6+RZU1ODpKQkIc+QkBDI5XKdMgUFBTh37pyk94WpcgsNDUVpaSlOnjwplDlx4gRKS0slnX9xcTHy8/Ph7u4OwLxyJSLMnz8fe/fuxX//+1/06dNHZ74l1W1LuepjznWrDxGhurraourVEG2u+lhavbaVJZ93O50Oe5RGArSP8O/YsYMuXLhACxcuJAcHB8rNzRU7tDZZvHgxJSYm0tWrV+n48eM0adIkcnJyEvLYsGEDqVQq2rt3L509e5amT5+ud6iKXr160X/+8x9KT0+nMWPGSGLonPLycsrIyKCMjAwCQJs3b6aMjAxhmAVT5fb444/TwIEDKTU1lVJTUykwMLDDh6ZoLtfy8nJavHgxpaSkUE5ODh05coRCQ0OpZ8+eZpnrSy+9RCqVihITE3WGFbl3755QxlLqtqVcLa1uly9fTkePHqWcnBz65ZdfaMWKFWRlZUWHDx8mIsup15ZytbR6NRVLOe+aUkvnOSnqVI1FIqKtW7eSl5cXKRQKCg4O1hnOwlxoxymTy+Xk4eFBzzzzDJ0/f16YX19fT6tWrSK1Wk1KpZJGjRpFZ8+e1VlHZWUlzZ8/n7p160Z2dnY0adIkysvL6+hUmjhy5AgBaPIXFRVFRKbLrbi4mGbOnElOTk7k5OREM2fOpDt37nRQlg2ay/XevXsUERFBPXr0ILlcTr1796aoqKgmeZhLrvryBEBxcXFCGUup25ZytbS6feGFF4Rjao8ePWjs2LFCQ5HIcuqVqPlcLa1eTckSzrum1NJ5TopkREQdcQWTMcYYY4yZn07TZ5ExxhhjjLUdNxYZY4wxxphB3FhkjDHGGGMGcWORMcYYY4wZxI1FxhhjjDFmEDcWGWOMMcaYQdxYZIwxxhhjBnFjkTHGGGOMGcSNRcY6ocTERMhkMpSUlHT4tmUyGWQyGZydnVtVXhurTCZDZGRku8bGmJTk5uZCJpPh9OnT7b4tmUyGb775pt23I2XG7G9z3G/GHP+5sciYhQsLC8PChQt1pg0fPhwFBQVQqVSixBQXF4dLly61qqw21qlTp7ZzVIyxjqLvuCQ2T09PFBQUICAgoNXLFBQUYMKECe0Y1YMx1fGfG4uMdUIKhQJqtRoymUyU7Ts7O8PV1bVVZbWx2tnZtXNUjDFzU1NTY7J1WVtbQ61Ww8bGptXLqNVqKJVKk8XQWrW1tUYva8zxnxuLjFmw6OhoJCUl4f333xdu5ebm5ja5DbFz5044Ozvju+++g5+fH+zt7TFlyhRUVFRg165d8Pb2RteuXbFgwQJoNBph/TU1NXjttdfQs2dPODg4YOjQoUhMTGxznGfOnEF4eDicnJzQpUsXhISE4NSpUybaC4xJV319PTZu3Ii+fftCqVSid+/eWLduncHySUlJGDJkCJRKJdzd3bFs2TLU1dUJ8729vbFlyxadZQYNGoTVq1cL37OzszFq1CjY2trC398fCQkJzcb47bffwtnZGfX19QCA06dPQyaTYenSpUKZefPmYfr06QCA4uJiTJ8+Hb169YK9vT0CAwPx5ZdfCmUNHZcA4MKFC5g4cSIcHR3h5uaG2bNn4/bt28KyYWFhmD9/PmJjY+Hi4oJx48bpjTk6OhqRkZH429/+Bjc3Nzg7O2PNmjWoq6vD0qVL0a1bN/Tq1QufffaZsEzj29Br166Fh4cHiouLhTJPPvkkRo0aJeyL+29Da5ffu3cvwsPDYW9vj6CgIKSmpurE9sknn8DT0xP29vZ4+umnsXnz5ma75WjX+/XXXyMsLAy2trbYvXu30ftZ323o+Ph4DBgwAEqlEt7e3nj33Xd1gyDGmMUqKSmh0NBQmjt3LhUUFFBBQQHV1dXRkSNHCADduXOHiIji4uJILpfTuHHjKD09nZKSkqh79+4UERFBU6dOpfPnz9O3335LCoWC9uzZI6x/xowZNHz4cDp69ChdvnyZ3nnnHVIqlXTp0iWDMQGgffv26UwbMGAAzZo1izIzM+nSpUv09ddf0+nTp3XKREVF0VNPPWWqXcOYJLz22mvUtWtX2rlzJ12+fJmSk5Ppk08+ISKinJwcAkAZGRlERHT9+nWyt7enl19+mTIzM2nfvn3k4uJCq1atEtbn5eVF7733ns42goKChDIajYYCAgIoLCyMMjIyKCkpiR5++GG9/y+1SkpKyMrKik6dOkVERFu2bCEXFxd65JFHhDK+vr60bds2Ic533nmHMjIy6MqVK/TBBx+QtbU1HT9+XFifvuPSr7/+Si4uLrR8+XLKzMyk9PR0GjduHIWHhwvbGT16NDk6OtLSpUvp4sWLlJmZqTfmqKgocnJyoldeeYUuXrxIO3bsIAA0fvx4WrduHV26dInefvttksvllJeXp3d/19XVUWhoKEVGRhIR0bZt20ilUlFubq6wnfv3m3b5fv360XfffUdZWVk0ZcoU8vLyotraWiIiOnbsGFlZWdE777xDWVlZtHXrVurWrRupVCq9edy/Xm9vb4qPj6erV6/SjRs3jN7PjY//p06dIisrK1q7di1lZWVRXFwc2dnZUVxc3B95GoyOMWYRRo8eTa+++qrONH2NRQB0+fJlocy8efPI3t6eysvLhWnjx4+nefPmERHR5cuXSSaT0Y0bN3TWPXbsWFq+fLnBePSdlJycnGjnzp3N5sGNRWZpysrKSKlUCo3Dxho3XlasWEF+fn5UX18vlNm6dSs5OjqSRqMhopYbiz/88ANZW1tTfn6+MP/QoUPNNhaJiIKDg2nTpk1ERBQZGUnr1q0jhUJBZWVlVFBQQAAMNtyIiCZOnEiLFy8Wvus7Lq1cuZIiIiJ0puXn5xMAysrKEpYbNGiQwe1oRUVFkZeXl7BfiIj8/Pxo5MiRwve6ujpycHCgL7/8koia7m8ioitXrpCTkxO9/vrrZG9vT7t379bZjr7G4qeffirMP3/+vM6+mTZtGj3xxBM665g5c2arGotbtmxpMe/W7OfGx/8ZM2bQuHHjdMosXbqU/P39he98G5oxBgCwt7fHQw89JHx3c3ODt7c3HB0ddaYVFRUBANLT00FE8PX1haOjo/CXlJSEK1eutGnbsbGxePHFF/HYY49hw4YNbV6eMXOUmZmJ6upqjB07ttXlQ0NDdfqajRgxAnfv3sX169dbvY7evXujV69ewrTQ0NAWlwsLC0NiYiKICMnJyXjqqacQEBCAY8eO4ciRI3Bzc0O/fv0AABqNBuvWrcPAgQPRvXt3ODo64vDhw8jLy2t2G2lpaThy5IjO8US7zvuPCYMHD25VrgMGDICV1R/NHDc3NwQGBgrfra2t0b17d+GYpo+Pjw82bdqEjRs3YvLkyZg5c2aL2x04cKDw2d3dHQCEbWRlZWHIkCE65Rt/N6Rx3sbu58YyMzMxYsQInWkjRoxAdna20O2o9b04GWMWTS6X63yXyWR6p2n76tTX18Pa2hppaWmwtrbWKXd/A7M1Vq9ejRkzZuDAgQM4dOgQVq1ahT179uDpp582IhPGzENbH9oioiYPJTRc3IIw3crKSpimdf/DEI3n3b9sc8LCwrBjxw6cOXMGVlZW8Pf3x+jRo5GUlIQ7d+5g9OjRQtl3330X7733HrZs2YLAwEA4ODhg4cKFLT6MUl9fj8mTJ2Pjxo1N5mkbXQDg4ODQYrxA249phhw9ehTW1tbIzc1FXV1diw/A3L8N7b7VbqO5OmxJ47yN3c+NtSYmvrLImIVTKBQ6D6WYysMPPwyNRoOioiL07dtX50+tVrd5fb6+vli0aBEOHz6MZ555BnFxcSaPmTEp+dOf/gQ7Ozv8+OOPrSrv7++PlJQUnRN5SkoKnJyc0LNnTwBAjx49UFBQIMwvKytDTk6Ozjry8vLw66+/CtMaP4Chz6hRo1BeXo4tW7Zg9OjRkMlkGD16NBITE5GYmKjTWNReeZw1axaCgoLg4+OD7OxsnfXpOy4FBwfj/Pnz8Pb2bnJMaW0D0dS++uor7N27F4mJicjPz8fbb7/9QOvr168fTp48qTPN2If5jN3Pjfn7++PYsWM601JSUuDr6ytcCODGImMWztvbGydOnEBubi5u377d4q/o1vL19cXMmTMxZ84c7N27Fzk5Ofj555+xceNGHDx4sNXrqaysxPz585GYmIhr167hp59+ws8//4z+/fubJE7GpMrW1havv/46XnvtNXz++ee4cuUKjh8/jh07dugt//LLLyM/Px8LFizAxYsX8e9//xurVq1CbGyscLt1zJgx+OKLL5CcnIxz584hKipK58r/Y489Bj8/P8yZMwdnzpxBcnIy3njjjRZjValUGDRoEHbv3o2wsDAADQ3I9PR0XLp0SZgGAH379kVCQgJSUlKQmZmJefPmobCwUGd9+o5Lr7zyCn777TdMnz4dJ0+exNWrV3H48GG88MIL7fKDtyXXr1/HSy+9hI0bN+LRRx/Fzp07sX79ehw/ftzodS5YsAAHDx7E5s2bkZ2djY8++giHDh0yahgzY/dzY4sXL8aPP/6It99+G5cuXcKuXbvwj3/8A0uWLBHKcGORMQu3ZMkSWFtbw9/fHz169Ghzf5bmxMXFYc6cOVi8eDH8/Pzw5JNP4sSJE/D09Gz1OqytrVFcXIw5c+bA19cXU6dOxYQJE7BmzRqTxcmYVK1cuRKLFy/GW2+9hf79+2PatGkG+9D17NkTBw8exMmTJxEUFISYmBj8+c9/xptvvimUWb58OUaNGoVJkyZh4sSJiIyM1OmLbGVlhX379qG6uhpDhgzBiy++2OxQPfcLDw+HRqMRGoZdu3YVjiv3/7hbuXIlgoODMX78eISFhUGtVjd5+5K+45KHhwd++uknaDQajB8/HgEBAXj11VehUql0+h52BCJCdHQ0hgwZgvnz5wMAxo0bh/nz52PWrFm4e/euUesdMWIEtm/fjs2bNyMoKAjff/89Fi1aBFtb2zavy9j93FhwcDC+/vpr7NmzBwEBAXjrrbewdu1aREdHC2Vk1Nqb5YwxZgIymQz79u1r86v7oqOjUVJSYnav1mKMsebMnTsXFy9eRHJystihGMRXFhljHU47kGxrJCcnw9HREf/85z/bOSrGGGt/mzZtwpkzZ3D58mX8/e9/x65duxAVFSV2WM3iK4uMsQ51+fJlAA23n/v06dNi+crKSty4cQNAw1PWxjw8wxhjUjF16lQkJiaivLwcPj4+WLBgAWJiYsQOq1ncWGSMMcYYYwbxbWjGGGOMMWYQNxYZY4wxxphB3FhkjDHGGGMGcWORMcYYY4wZxI1FxhhjjDFmEDcWGWOMMcaYQdxYZIwxxhhjBnFjkTHGGGOMGfT/AWUj6fwelGVLAAAAAElFTkSuQmCC",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "6cb99b2854374a4d84b375d6380928c1",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value=\"./qc_seeding.pdf
\")"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAosAAAHbCAYAAACjjNB9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAC5m0lEQVR4nOzdd5gTZdfA4d9M6nZ6kw5KL4IiSFWaYAHBrhQLCoKoyCdS7Pqir4LYsYCKiPoqxYIgSAcFBelSlSZSpG3Nps18f2Qzm+xutrFLEjj3daHJZMqZmezO2ZnnPI+i67qOEEIIIYQQeVDDHYAQQgghhIhckiwKIYQQQoiQJFkUQgghhBAhSbIohBBCCCFCkmRRCCGEEEKEJMmiEEIIIYQISZJFIYQQQggRkiSLQgghhBAiJEkWhRBCCCFESJIsiqi1f/9+FEVh06ZNpb4tRVGYN29eqW8nkhXneEfjcVu+fDmKonDmzJlir+OZZ55BURQURWHKlClnFc8zzzxDy5Ytz2odH3/8sRHPI488clbrEkJceCRZFCICdenSJeIu6jVq1ODIkSM0bdq00MscOXKEXr16lWJUZyev43zllVdy5MgRkpKSzmrdTZo04ciRI9x///1FXtbhcBAbG8vOnTvPKga/W2+9lSNHjtCuXbsSWZ8Q4sJiDncAQojS43K5sFqtJbIuk8lElSpVirRMUecvKW63G4vFUqxlrVZricRtNpuLvZ7FixdTo0YNGjZseNZxAMTExBATE1Ni3wUhxIVF7iyKiKZpGi+//DL169fHZrNRs2ZNXnzxxZDzr1ixgjZt2mCz2ahatSpPPPEEHo/H+Lx27dq5Hgu2bNmSZ555xni/Z88eOnXqhN1up3HjxixevDjfGL/77jvKlCmDpmkAbNq0CUVR+L//+z9jngceeIDbb78dgJMnT3L77bdTvXp1YmNjadasGZ9//rkx7+DBg1mxYgWvv/668ehw//79APzxxx/07t2b+Ph4KleuzIABAzhx4oSxbJcuXRgxYgSjRo2iQoUKdO/ePc+YBw8eTN++ffnPf/5D5cqVKVOmDM8++ywej4f/+7//o1y5clSvXp3p06cby+R8DP3cc89RrVo1Tp48acxzww030KlTJ+NYBD6G9i8/Z84crrrqKmJjY2nRogW//PJLUGwffPABNWrUIDY2lhtvvJHJkydTpkyZkMffv97//e9/dOnSBbvdzsyZM4t9nPN6DD179myaNGmCzWajdu3aTJo0KWQ8+dm5cycdOnQwvls//fRTno/qv/nmG2644YY817Fv3z7q16/PsGHDjONc1GMmhBBFIcmiiGhjx47l5Zdf5sknn+SPP/5g1qxZVK5cOc95Dx8+TO/evbn88svZvHkz7777LtOmTeOFF14o9PY0TaNfv36YTCbWrl3L1KlTGTNmTL7LdOrUidTUVDZu3Aj4EtYKFSqwYsUKY57ly5fTuXNnADIzM2ndujXff/8927Zt4/7772fAgAGsW7cOgNdff5127doxZMgQjhw5wpEjR4xHwJ07d6Zly5asX7+ehQsXcuzYMW655ZageD755BPMZjNr1qzhvffeCxn30qVL+eeff1i5ciWTJ0/mmWee4brrrqNs2bKsW7eOoUOHMnToUA4dOpTn8uPHj6d27drcd999AEydOpWVK1fy6aefoqqhf7WMHz+e0aNHs2nTJi655BJuv/12I6Ffs2YNQ4cO5eGHH2bTpk1079493z8OAo0ZM4aRI0eyY8cOevbsWezjnNOGDRu45ZZbuO2229i6dSvPPPMMTz75JB9//HGh4vLTNI2+ffsSGxvLunXreP/99xk/fnye833//ff06dMn12fbtm2jffv23Hzzzbz77ruoqnpWx0wIIQpFFyJCpaSk6DabTf/ggw/y/Hzfvn06oG/cuFHXdV0fN26c3qBBA13TNGOet99+W4+Pj9e9Xq+u67peq1Yt/bXXXgtaT4sWLfSnn35a13Vd//HHH3WTyaQfOnTI+HzBggU6oM+dOzdkrK1atdJfffVVXdd1vW/fvvqLL76oW61WPSUlRT9y5IgO6Dt27Ai5fO/evfXHHnvMeN+5c2f94YcfDprnySef1Hv06BE07dChQzqg79q1y1iuZcuWIbfjN2jQIL1WrVrGcdF1XW/QoIHesWNH473H49Hj4uL0zz//XNf13Mdb13X9zz//1BMSEvQxY8bosbGx+syZM4O2E3jc/Mt/+OGHxufbt28POja33nqrfu211wat484779STkpJC7ot/vVOmTClwvwtznJctW6YD+unTp3Vd1/U77rhD7969e9A8//d//6c3btw45HaefvppvUWLFkHTFixYoJvNZv3IkSPGtMWLF+f6bq1Zs0avUKGCcW786/r555/1cuXK6a+88krQeotyzPLaXyGEKIjcWRQRa8eOHTidTrp27Vro+du1a4eiKMa09u3bk5aWxt9//13oddSsWZPq1asb0wpTFNClSxeWL1+OruusWrWKPn360LRpU1avXs2yZcuoXLmy0f7M6/Xy4osv0rx5c8qXL098fDyLFi3i4MGD+W5jw4YNLFu2jPj4eOOff51//vmnMd9ll11WqH1t0qRJ0B3AypUr06xZM+O9yWSifPnyHD9+POQ66taty6uvvsrLL7/M9ddfz5133lngdps3b268rlq1KoCxjV27dtGmTZug+XO+DyXnfhf3OOe0Y8cO2rdvHzStffv27NmzB6/XW+j17Nq1ixo1agS1Y8xr37755huuu+66oHNz8OBBunXrxoQJExg9enSu9Rb3mAkhRGFIgYuIWDExMUWaX9f1oETRPw0wpquqakzzc7vdueYPlHOdeenSpQvTpk1j8+bNqKpK48aN6dy5MytWrOD06dPGI2iASZMm8dprrzFlyhSaNWtGXFwcjzzyCC6XK99taJrG9ddfz8svv5zrM3/SBRAXF1dgvECuAhBFUfKc5m8XF8rKlSsxmUzs378fj8eD2Zz/r5XAbfiPrX8b+Z3DguTc7+Ie55zOJqaC1pOXb7/9lokTJwZNq1ixItWqVeOLL77g3nvvJTExscTjE0KIUOTOoohYF198MTExMSxZsqRQ8zdu3Jiff/456EL5888/k5CQwEUXXQT4LrpHjhwxPk9JSWHfvn1B6zh48CD//POPMS1nAUZe/O0Wp0yZQufOnVEUhc6dO7N8+fKg9oqAcefxrrvuokWLFtStW5c9e/YErc9qtea6a9WqVSu2b99O7dq1qV+/ftC/wiaIJe3LL79kzpw5LF++nEOHDvH888+f1foaNmzIr7/+GjRt/fr1xVpXcY9zTo0bN2b16tVB037++WcuueQSTCZToeNp2LAhBw8e5NixY8a03377LWiePXv2sH//fnr06BE0PSYmhu+//x673U7Pnj1JTU0NWm9JHTMhhMiLJIsiYtntdsaMGcPjjz/OjBkz+PPPP1m7di3Tpk3Lc/4HH3yQQ4cO8dBDD7Fz506++eYbnn76aUaNGmU80rv66qv59NNPWbVqFdu2bWPQoEFBF/xu3brRoEEDBg4cyObNm1m1alWeRQg5JSUl0bJlS2bOnEmXLl0AXwL5+++/s3v3bmMaQP369Vm8eDE///wzO3bs4IEHHuDo0aNB66tduzbr1q1j//79nDhxAk3TGD58OKdOneL222/n119/5a+//mLRokXcc889RXocWlL+/vtvhg0bxssvv0yHDh34+OOPmThxImvXri32Oh966CF++OEHJk+ezJ49e3jvvfdYsGBBoe7I5VTc45zTY489xpIlS3j++efZvXs3n3zyCW+99Vaux8EF6d69O/Xq1WPQoEFs2bKFNWvWGN8t//598803dOvWjdjY2FzLx8XFMX/+fMxmM7169SItLQ0o2WMmhBB5kWRRRLQnn3ySxx57jKeeeopGjRpx6623hmxDd9FFF/HDDz/w66+/0qJFC4YOHcq9997LhAkTjHnGjh1Lp06duO666+jduzd9+/alXr16xueqqjJ37lycTidt2rThvvvuK3Rl6VVXXYXX6zUSw7Jly9K4cWMqVqxIo0aNgvapVatW9OzZky5dulClShX69u0btK7Ro0djMpmM5Q8ePEi1atVYs2YNXq+Xnj170rRpUx5++GGSkpLyrT4uDbquM3jwYNq0acOIESMAXzI0YsQI7rrrLiORKar27dszdepUJk+eTIsWLVi4cCGPPvoodru9yOsq7nHOqVWrVvzvf//jiy++oGnTpjz11FM899xzDB48uEjxmEwm5s2bR1paGpdffjn33Xef8d30798333yTZxW0X3x8PAsWLEDXdXr37k16enqJHjMhhMiLokvjFiFEBBsyZAg7d+5k1apV4Q6l0J555hnmzZtX4NCIa9asoUOHDuzdu5ekpCSqVq3KoUOHzrpT8FDHrEuXLrRs2fKshyAUQlxY5M6iECKivPrqq2zevJm9e/fy5ptv8sknnzBo0KBwh1VkW7duJT4+nnfeeceYNnfuXBYvXsz+/fv56aefuP/++2nfvj316tXj1KlTTJ48uViJYkHH7LPPPiM+Pj6qEm4hROSQO4tCiIhyyy23sHz5clJTU6lbty4PPfQQQ4cODXdYRXLq1ClOnToF+Iqq/ONMz5gxg+eff55Dhw5RoUIFunXrxqRJkyhfvvxZba+gY5aammoU1pQpU4YKFSqc1faEEBcWSRaFEEIIIURI8hhaCCGEEEKEJMmiEEIIIYQISZJFIYQQQggRkiSLEeadd96hTp062O12WrduXWD14ooVK2jdujV2u526desyderUcxRp8RRl/5YvX46iKLn+7dy58xxGXDgrV67k+uuvp1q1aiiKwrx58wpcJprOXVH3L5rO3cSJE7n88stJSEigUqVK9O3bl127dhW4XDScv+LsWzSdu3fffZfmzZuTmJhIYmIi7dq1Y8GCBfkuEw3nTYhII8liBPnyyy955JFHGD9+PBs3bqRjx4706tUrz46CAfbt20fv3r3p2LEjGzduZNy4cYwcOZLZs2ef48gLp6j757dr1y6OHDli/Lv44ovPUcSFl56eTosWLXjrrbcKNX+0nbui7p9fNJy7FStWMHz4cNauXcvixYvxeDz06NGD9PT0kMtEy/krzr75RcO5q169Oi+99BLr169n/fr1XH311fTp04ft27fnOX+0nDchIo4uIkabNm30oUOHBk1r2LCh/sQTT+Q5/+OPP643bNgwaNoDDzygt23bttRiPBtF3b9ly5bpgH769OlzEF3JAfS5c+fmO0+0nbtAhdm/aD13uq7rx48f1wF9xYoVIeeJ1vNXmH2L5nOn67petmxZ/cMPP8zzs2g9b0KEm9xZjBAul4sNGzbQo0ePoOk9evTg559/znOZX375Jdf8PXv2ZP369bjd7lKLtTiKs39+l156KVWrVqVr164sW7asNMM8Z6Lp3J2NaDx3ycnJAJQrVy7kPNF6/gqzb37Rdu68Xi9ffPEF6enptGvXLs95ovW8CRFukixGiBMnTuD1eqlcuXLQ9MqVK3P06NE8lzl69Gie83s8Hk6cOFFqsRZHcfavatWqvP/++8yePZs5c+bQoEEDunbtysqVK89FyKUqms5dcUTrudN1nVGjRtGhQweaNm0acr5oPH+F3bdoO3f+kXJsNhtDhw5l7ty5NG7cOM95o/G8CREJzOEOQARTFCXova7ruaYVNH9e0yNFUfavQYMGNGjQwHjfrl07Dh06xKuvvkqnTp1KNc5zIdrOXVFE67kbMWIEW7ZsYfXq1QXOG23nr7D7Fm3nrkGDBmzatIkzZ84we/ZsBg0axIoVK0ImjNF23oSIBHJnMUJUqFABk8mU6y7b8ePHc/0l7FelSpU85zebzWc9fFhJK87+5aVt27bs2bOnpMM756Lp3JWUSD93Dz30EN9++y3Lli2jevXq+c4bbeevKPuWl0g+d1arlfr163PZZZcxceJEWrRoweuvv57nvNF23oSIFJIsRgir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kCSL2a8vtGQx4KOQaypo2ykpKVSrUK5ECkVK6xoLoa+z4ejyZ8+ePaxfv57bb7/dmNa+fXt+/vlnWrZsScuWLXE4HHz//fdBbQ2vvvpq7r33Xm6//fY8f+9s3LiRN998kyuvvBKLxcLgwYOpWLEihw8fzlXoG01KrcClTp06/Pjjj3Tp0gVVVfniiy+M0vbiJopno23btsycOTPk5zabTcarjUJmi4Vr+twa7jAMZouFHjfcYlwMinyhEkKIKFTQNRYi6zp78cUXB1UmHzt2jE2bNgGwadMmNm3aRNeuXTl69Chz5szh448/ZtmyZSxdupSlS5cSExPDjTfeGLTOd999lw8//JDff/+djz/+2Hh8ffvtt0d1olgUxbrH3bRpU77//nvGjx9PbGzsWd1RPFsbN26katWqYdm2EEIIcT6LxmvsX3/9xWuvvcZVV13FRRddFNT3YtWqVbnrrruIj49n4MCBLF26lB07dqBmPeqYN29ertqMjz/+mN9//x3wPb0oU6YMPXr0YPjw4SE79j7fFOrO4qWXXprnbVmbzcY///xD+/btjWn+A1oYaWlp7N2713i/b98+Nm3aRLly5ahZsyZjx47l8OHDzJgxA4ApU6ZQu3ZtmjRpgsvlMiqeZs+eXehtiujg9XrZt2cHAHUubhT24f68Hg/rf1mBosDlV3ZBUcMbjxBCFORCu8Z+8803jB8/nu3btwdNb9asGTfccAN9+vShdevWqKrKnDlzWLJkCZs2beL3339H03xty2fMmIHJZGLSpEnY7XYA7r77bq699lpatmxJixYtqFmzJoqiMGnSJCZPnsxrr73GLbfccs7391wqVLJY1DYOhbV+/fqgDkBHjRoFwKBBg/j44485cuQIBw8eND53uVyMHj2aw4cPExMTQ5MmTZg/fz69e/culfgiha772tvpuk6m24vT5cWr+TrZdrg8uD1aVmfbela7NoXUDBeKouD0eElxuPF6dbyajklVyHB60LLaPiqKr31izo6yHTkes/r/VPBPDXwM6+/Yuky8ryrM354rZ7vHonT6nOnI4IFbewIwa+kf2GNijfX5HwXbLarR7s2imjCbfB2K+/+uUXK0ESobF/yYxGRSMBdixBGTqpCRkc6TIwcBsPPgceIT4kPOn/MRtf9dSrqLhNjsyjmvll3UoygKXk1D03zb8x9THd3YDx0d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",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "2d728ab4f63c47f19652a021f7ebf58a",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value=\"./qc_no seeding.pdf
\")"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "for case, output in outputs.items():\n",
+ " plot(var='cloud water mixing ratio', qlabel='cloud water mixing ratio [g/kg]', fname= 'qc_' + case +'.pdf', cmin= 0, cmax= 3, output= output.products)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2023-12-29T15:14:11.163980Z",
+ "start_time": "2023-12-29T15:14:06.728728Z"
+ },
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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/P79dotS0F1x5VWE1aSeN4IQyExn/qxhSQqcWwyApEn5lSRtJjULtL//3OM4DiaeU+9+K1X7OC7QTvLoAYHpSiza3fSJIdn6/tdeUQ5UyeDWtpX2zFDOX54P3oba4Mp2/NM5ACaB9/8uB5f8k5eXAm+U9vRnXyslFbUjEiifi5L8e6Zk3StxuL2BEp1A4HhqM5a1X2iEJE8X+7sQuossdLyB0BKGKF5w1rT+36pUlqioKMyePRsZGRn47LPP0L9/f3g8HgwePBgmkwmbNm1Cw4YNg5bZunUr7r77btSqVQvr169XizTEx8frtBfXLrqzSAwpIiICmdlnceDY37DTUAmEEBL2unTpopb4u//++9G/f3/k5+ejVatWqFatmjrfqVOnMHbsWFitVjidTly8eBGnT5/WKWoC6NxZXLduHe68807UqFEDHMdhwYIFl1xmzZo1aN26NaxWKxo0aIDZs2dXeZzkyuM4DnFxcYiNi6MyTYQQUkFGu87+3//9H1JTU5Hv/7ZmzJgxWL58OZKSkuBwODB37lx0794dkydPRsuWLZGUlISePXti+/btlNCiI107i06nEy1atMCHH35YpvmPHj2KPn364Oabb8auXbswZswYPProo1i2bFkVR0oIIYSEH6NdZ+12uzpW4g033IBp06bBZDIhNzcXdevWxQMPPIDRo0ejYcOGYIzhzz//xEcffYT+/fsjMTERHTp0METS47VG12cWb7/9dtx+++1lnn/69Om47rrr8O677wIAGjVqhA0bNmDatGno1atXVYVJdODxePD2W2/B7RXx1LNjYTbRWFqEEFJeRrzOnjlzBgCCqrHExsaiR48e2Lt3L5o2bYoDBw4gKysL69atw9q1a7FmzRrs378fUVFRQd829e3bFzVr1kRGRgYyMjKQkpJSKTGSYGGV4LJp0yb07NkzaFqvXr3UZyCK43a74Xa71fcOh6OqwiOVyOv1YuKbbwAAnnjqGQDUWSSEkKpW1ddZURRx6tQpAMDu3buDyvx98skniImJAc/LX3qmpKTgvvvuw3333QdAHq9R+1V0dnY2Fi1aBAD4+OOPAQDp6elqx7Fbt26oUaNGGfeclCasOotZWVlITk4OmpacnAyHw4HCwsKg0d4VEydOxGuvvXalQiSVxGQy4fEnngAAJMVHghcE2MwC8gq9ajYtY3LWqfx/ub60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H5XsYIWyPxIL1HJW2qHQExhYV5vpqrSR0yVnHTtdXrmetomHxcTLNY41Wd9AcJ1kpsnO1cYhyunO6vYlzWslZp5DUDIRx0HNxFb2MTTZSMmYZkypda3sI/NnWMv7o615bDYFssvV9tG0l1JTWWKBOs8MDCaeV/ddu4w2wx+QM/aDGhTyfij76fFp6oIzBrN/H0MzhZWMdyXTWmkv7SVOWz8aCGR6K7XCtbXTmX+az99myonGq+0f2E7g3JTXq02p94lMHUlAux/KnP7A1DZQa2dDrkFcNyUx7GtDl9XMmTORnZ2NIUOGoHbt2kU+379/P1588UUsXrwYABAbG4tXXnkFTz31VJnLwubn56udwS5duqjD8rz//vt46623cObMmWKX27RpEzp06AAA+OSTT/Dee++pnb/Q/1evXj1snq8s67GiO4vEkARBQI9bbtE7DFIGPM+jYSO5I82H9nwIIaSMpk6dikOHDqFLly7FdhYbN26MH3/8EatWrcLzzz+PXbt2YezYsfjoo4+wePFiNGnSJGh+j8eDn376Cd999x0OHjyIY8eO4fz58+rn2g4gz/NqRzE6OrpIJ7BmzZrqcsOHD8fw4cOrogkMyxBd3w8//BB169aFzWZD+/bt8dtvv5U47+zZs/1/OQZ+yvoXBSGEEHKt0fsau3r1arz66qtYunRpsZ8zxjBhwgQcOnQIANSve0vSo0cPbNu2DS+99BIAefDrefPmFZlv4sSJuPvuu/H1119j+/btakcxLi4OLVu2hNfrVee99957sWPHDly4cAG5ubnYvXs3fvzxR/z73//G888/j7S0tArt+9VC987i//73Pzz77LOYMGECduzYgRYtWqBXr14l3goGgJiYGJw+fVr9OX78+BWMmFwJPp8PS5cswdIlS+Dz+S69ANGNx+PB5LfexOS33oTH49E7HEKIhhGusb/88gtee+21YjuLPp8PI0aMwOuvvw4AmDBhQpE7hMX5/fff8cknnwAAWrRogd69e+O1117Das34vPfffz9SU1Px3HPPYdGiRfj999+Rk5ODixcvYufOnejSpYs6b0pKClq1aoX4+HhDDoqtN92/hp46dSqGDx+OoUOHAgCmT5+OJUuW4LPPPlP/agjFcRxSUlLKtH632w23262+dzgoSSEcuN1u9O97FwAq92d0Xq8XU97+PwDAqDHPwmaz6hwRIURR1ddY4NLX2Xbt2uHJJ58M6pwBcjLJAw88gAULFoDneXz44YcYMWLEJbe3efNm3HbbbcjNzUXdunVhtVrRvn17AMA//vEPdO/eHQCQnp6OkydPhs3zg0am6xXY4/Fg+/btGDdunDqN53n07NkTmzZtKnG5/Px81KlTB5IkoXXr1njrrbdK/Etk4sSJeO211yo9dlK1eJ5Ha/+grFfqF91qLppE075hMlweEWkJVjRv2RoAcPstNyA1KQ5mE49ffv8b5+wmOK0mWKOtKIi1ISYxEhde/wWmG5KAAi+kxEjkONyQfBL4enHgoyyQHG74vj8I0811kb/hBAobJeKbrDwIJgFR1SPRqXEyALnUmUngIXEMCdE2OAu94HngYo5TjbFR7Xjk5Mt39DIL8uHyiKhfMxYAYDMLask3UQqUz0tNiABjgQftz+a64BMlMAZUi7GB5xksAg+XV1QTX4BACT2JMVhMPAAOdkvgnxFtYoLEAEGQk2iCElI4IMpmgk+Uy6TJ8yhJMwxeH4PFLCDf5VMzQHiOg8AzeJmcFFDoAeQ8B86/n3IyhcQApchccPk3+b2SLKF8opRa0yaGyPulLCevK9oe2EdRCi4n5xUZ7Fb53LFbBLi8Irw+CRfy3LCaefhEhkibGRaT3DZmE68mvAj+sn7apBeeA3i5PhwCiRKBRCNRkrft0yZJ+Evgub1i0HOj8n6xkPdy/HaLoB5LbUMpCSfK1HxX4Ks63p9EY/HvA0MgqUXZN4XXJ8nnlL9dAECAv1RgYIvqOclxyrJyYo5yrDQ5SP6ykYFkI57n1POQ5wJtwyQGhuAkEo7jIEmSel7w/vNHTv6CvxRgIHlISTRR1h9oIiVZJ1AO0e2T5O35KwEKSslGpbwhAuUNOQ7gGBcoR6lZJ8dz4P1twVigbSrqSlxjgUtfZ++8807ceeedQdMuXryIu+66Cxs2bIDVasWcOXPQv3//S+7TmjVrcPvtt8PlcoHjOBw7dgzHjh1T9+sf//hH0PzUUawcurbiuXPnIIoikpOTg6YnJyerA1WGSk9Px2effYaFCxfiq6++giRJ6NSpE06ePFns/OPGjUNubq76k5mZWen7QSqf3W7Hr5u34NfNW3QfY1GJZ9HKdVi0ch1sBoiHEEIu5UpcY4HyX2dPnjyJrl27YsOGDYiNjcXy5cvL1FFcvnw5evfuDZdLLrfKGEOLFi0wZcoUZGZmYtmyZRgwYMAl10PKL+y+2+vYsSM6duyovu/UqRMaNWqEGTNm4I033igyv9VqhdVKX4sRQgghl1LeayxQ/utsnz59sHfvXtSoUQM///wzmjVrVux8e/bswdy5c7FgwQLMnz8fd911F9xuN5o3b44ePXpg6NChJS5LKpeuncXExEQIgoDs7Oyg6dnZ2WV+XsJsNqNVq1Y4fPhwVYRICCGEhCWjXGMnTJiAt956CyNHjsR7772HnJwcAMCMGTOKdPaOHj2KuXPnYu7cudi7d686fcaMGXC73bj++uuxdevWcg/wTS6Prl9DWywWtGnTBqtWrVKnSZKEVatWBf1lUxpRFLFnzx6kpqZWVZhEB4WFhbi5Sxfc3KVLUDkkvRQUFKBzq8bo3KoxCgsK9A6HEEIuySjXWEmS4PP51IHyW7ZsCQD466+/1Hl27tyJjh07ol69enjllVewd+9eWCwW9O3bF//73/9w/fXXAwAaNGhAHUUd6P419LPPPoshQ4agbdu2aNeuHd577z04nU41c2vw4MGoWbMmJk6cCAB4/fXX0aFDBzRo0AA5OTmYPHkyjh8/jkcffVTP3SCVTJIkbN60UX2tN8YYTmWeUF8TQkg4MMI19oUXXsCIESMQGRkJQK4BvWjRImzbtk2dJykpCVu2bAHP87j55psxcOBA9O/fH/Hx8QCgxhf6/CW5MnTvLA4YMABnz57Fv/71L2RlZaFly5b4+eef1RPixIkTQdlMFy9exPDhw5GVlYX4+Hi0adMGGzduROPGjfXaBVIFrFYr/vf99+prPdksAkRvIFO6ZmIkfKKEfJcXLetXQ1xz+S/uY9l5yL5QKGcwf30vTp4vgNsj4vy+M5C2nMJ1I9vB1DwFTpcPWbtOg/1yDAX/2QDebkV08+7wbD4JJEagc4c0LF/3FyAB16cnonq8HT6RITnejki7GRFWAcwXGM/wQr4LvEkeNLdOcjRMAo8LefID4GcuFsDrk1AzKQqAnOVpUzKN/QSeQ7VoKyz+bPCcfDd8EsMFjwiJMcRHWcFx/ixejoOJBxjj/KXkWJGya5KcVqqWZTMLPLyiBIGDmp8qMcBs0qa5SuA4OaNZFCW4/ZmwZpM/K1TgIUqSPzOWA+9PO1XKqOUWeMEY85emk8u+2cyCmiWsZOAKmjJwSpk3DoBXlNR8V5dXUjOKteUAeX+ZQYHXZu4CFnNwKTe71QTGgKRYm1oGsNAjwidKcHkZfE4JcVEWiF6ombiMQc2W1pYFVJvH35acP6bgTG+mlqeT94mpmcouj09tR//cEHg+UDqQkzOUtcwmQJQkdZ+U48gQ+ENJW/5Q4a8yKbeZPxtY8P/bXeD2qcfLapKPnrZsHhBcvs8k8DAJgax2JUJRYmq2urLPBW5tdjRgM5v8qeWBEoOcEru/9CQASGKghKJSTjJQOlLJROb8GdbBGeNK3EqJQSEo8zlQVlFer3x+KW2jrEnyR8hzgWOutLkU8jt1OYxwjY2JiUFMTAwKCwsxb9489Wtk7ViPtWrVwty5c9G1a9di72IqX6VTZ1EfuncWAWDUqFEYNWpUsZ+tWbMm6P20adMwbdq0KxAV0ZPJZMJdffvpHQYhhIQ9va+xZ86cwdixY/HDDz8gLy9PnZ6VlQWv1wuz2QwApWYyU2dRX4boLBJCCCHk6jR+/Hh8/vnnAIA6depg4MCBGDhwIJo1a1bmailKJ1Pvb5quVTRaJTEkURSxbs0arFuzBqJY9CsvQggh4eHAgQMAgIYNG+Lo0aN4/PHHMXr06KDBwi9FSYrZsmVLVYRILoE6i8SQXC4XevXsgV49e6gDsBJCCAk/HTt2RP369dGtWzdwHIcdO3ZgzZo1WLFiRZnXoZQKXL9+fVWFSUpBX0MTQ+I4Do38D1Qboah7aDyxERbE+j/LdcrJJinxEUivFYejWXnwihJio6z4+7wT+YkR4O64Hif2ZCEpPREWk4B7B7VGVp905OR5cCbXhRNPLATz+BD7xi1Y9viPENKrgW+aBKfbhy2/n0ZkrA0ujw8J0TacPu+EXQjcbfX4JNRKsIHn5dJ6bq8Ij09ChNWE2tWjIEoMF/Lc6sPzbq+IajE2WM1yGTPlofu8Qi8EnoPVLMDKAfFRVlhMPC7muyFJDIUeH9weEdERZpgFXn5435+Q0bCR3DYmgVcTZbw+SS3VJnCAyAJJG2YhuKSeiRfU8nm8iYfZxIPnOPj8iQFuTUk5n8hgEuTEA0lkMJt42K0CTDwPj0+SY+I4NYlHTiKQyznyHAcmSf595tTtK8k3cllBQU1CYEppOn8yQ6FHLhfHc4F94dUkmECpODlfgEdspDzER2xkIClElCS1RB4HwG4x+cvmifD55IQJnpOTQZRyb56QEneSpi2Dk3DkWJWkEObPy1LaEQBcXi8EJcFF4NUSflqh77V8IoPdUvR3UvSXTpT8Ve/AGDxeCeAAi0lQE4ryXT75tf/8sZmFQFKPmszC1OQYUZKgzffg/IlG8G9LSd5hjEGSGPJdXrVNOMjHneM0SUHqvyeBUopK4ovSlBJDoDSkcqyVNuWU8oyBBCslTmWbyjEw+0sKmoTgNlLilbcln8dqi/rPr6tp0IVJkyZh0qRJ6vv27dtj1v+3d+ZhUVxZG3+rqhdoVhEEFxRXDAYEERlciRKXOIkmX6IxTtRMNFFjRse4xGwaZ54hyxeXOEadLxM1ToxJxqhZNNGoGBcioCIKaERBJEEQ2Wlourvu90dTRTd0IyjQDZ7f8/TT3XVv3Trn3uqq01X13rN1a5NuKQ8dOhQ8zyMzMxM5OTno1q1bS5hK2ICCRcIh0Wg0OJtywd5myDiaPY6ERqNBwrnz9jaDIIg2QteuXTFr1qwmrePm5oawsDCcOXMGx48fx7Rp01rGOMIqdBuaIAiCIIgWo7q6GhUVFdDpdBbLmzpnrXQrevPmzfWy0hAtCwWLBEEQBEG0GOPGjYOrqyuGDh0KwCRgjI2NxeTJk5sUMD7zzDMQBAE///wzgoKC8J///IeSJLQSFCwSDkllZSUmjhuLiePGOky6v0EhwRgUEgwtpfuzQKvVYkjYQAwJG0h9QxBEPQwGg8X7tWvX8Pbbb+Obb77Bhg0bGt1OREQEEhISEBoaisLCQjz77LOYOHEisrOzW8RuohYKFgmHRBRFHDl8GEcOH3aYdH/paWlIT0ujf7J1YIzhUnoaLqVT3xAEUZ/IyEgApmAPAPr27YsPPvgAgCkV4PnzjX/medCgQUhISMA//vEPqNVqHDhwAAMGDMCmTZsc4lzRXiGBC+GQqNVqfPLpp/JnR0ZSvAImZbSXm1pe7umiQlB3U27TlMxClFfqodUZsHv3BTw8PhD+Pm4o1erQe++foNMbkfiPnwGeg8f4PvBwV+PqvkvoPrEf+nXzwK85JUi7WoiQft74/XaFvE1PjRp6I4NoEE2p8vQiOro7QW8QUVimA8cBGrXClAJPZZJlFpXrUK3nwMCgEHgoFQKUAo9qvRGCwEOjVkBvEFFVbZSVy25OCig9BFRU6aE3MnCcSfEsKFTYu/8gAIBXqKCrUe7yHCcrT3mOg5Ln5FR0BqMoq1NFKwGmQuBhNIqy0lWp4E0qW2ZS4uoNomyXwShCqFFO8zzAwVQupWCTUujV2gXojSbFq7pGuV2rgq1VpVooaGHSzkoqYVFksspaSlMntWFg0mdTSkIJlZxyjwdgMKV54zg5FZyUTlAh8BBr0sVVS2nizPqSMUlNzuTvEpJqmImiRRI/WR0NQK2oVXuLIoMRQGW1HhwHizSHJnvrq55NSmRry2v7xWQXg7Lms6QC5jnA1an2tMNgUueLBtO2a/sI0OlrU1IqhVq1NM9z0BulxJG1qmQpJaWHQrDYp3R6I0TRlNrPNANAbWrEWiu4Gt9rx5KvGWueg5kaW9o/atMGSo1ZzNrAGHieN9VhlgGMVI+v2T9rVdGQfZLS/bWXP1/Ozs4ATGI4ifnz5+PHH3/Et99+i2nTpiEpKcmivCGUSiVWrFiBxx9/HM8//zxOnTqF+fPn4/PPP8fHH3+Mfv36tYgf9zN0ZZFwSBQKBaY9Mx3TnpkOhYL+0zgygiBg+MhRGD5yFARBuPMKBEHc93Ach08++QSdO3dGeno6Fi9e3OQ2+vfvj+PHj2PDhg1wcXHB8ePHMXDgQEoJ3AJQsEgQBEEQRIvx22+/WbxLeHt7Y8eOHeA4Dlu2bMHu3bub3DbP81iwYAF+/PFHKJVKVFVVYfHixbh06VKz2E6YoGCRcEiMRiOSEhORlJhI6f4cHL1ej39v2YR/b9kEvV5vb3MIgnAwrly5AgDIyMioVzZmzBgsW7YMADB79mxcv369SW1XVlbi73//O8aOHQu9Xg+O4zBv3jz07dv33g0nZChYJBySqqoqjIj6A0ZE/YHS/Tk41dXVWP7KIix/ZRGqq6vtbQ5BEA5GWFgYunbtikGDBlkt/9vf/obIyEgUFxfjmWeekVXTDcEYw+7duxEUFIQ333wTWq0Ww4YNQ2JiIj766CN6JKaZ4Vh7eYK2kZSWlsLDwwN5hUVwd3e3tzmEDbRaLcKCHwQAnLtwsdEPPjuSPSUV1fJD9O4aFfKLK5F6vQgdXFWo1BmReuEmeCWPTl09MDTIFwWlVdAbRHAccPTjJIiXbsNnfgT0VQaUHssC3FSIeGIAyqr0gF6HP0aZ/jn/cukGXF1coVLwcHU2SQrKK/UQah7QV9QIV6RUaJ6uahiNIowig5NKYUp3V1OH40y2VhtEKGtS6gk8B41aCb3BKIs5gNo0a0UlZejp1xEAcPX3AnTwcINSwYOxWvEHM1MUcKh5uL+mHUmEArAarQBXI4CpfdAfZgINSSxhnuZOSmcn1KTCk+xjjMEoMjM7AAYmCzmqDbVCEEHgINQIKCThhFlCOKtI6d4YatLX1aQNFJkpxaEEz/Oom0FPEuzo9DUCF56D0WhKbWdKGWgSuwg8ZyGoAcz6BbVJ63hz4YTZcvPP8jqyNoPJggupv6V3nVlKQp7nZEGRabzkHqjXH7aQRRsWdjDTeNUYVKWXxCAMTkqhJvWdyQNJDCK1Iwim8ZX6v26/SKIXaV9hMEubWGOouaBG6heBt+w189SK5m3f6cwpCWDq1pNkT7bGx/z3UVpais7eXigpKWlT5yvpPNsUuzMzMxEaGorS0lK8/vrr+Pvf/26zbkpKChYuXIi4uDgAQLdu3fDee+/h6aefdoj0sG2Jxo4VXVkkHBKNRoPLV6/h8tVrdg8UHdEegiCI9kTPnj3x8ccfAwD+8Y9/4PDhw/XqFBQUYN68eQgLC0NcXBycnJzw1ltv4dKlS5g2bRoFii0IyUwJgiAIgrA7Tz31FObMmYPt27fjT3/6EzIzM+Hk5AQASE9Px7Bhw1BUVATAdGt79+7d6Nmzpz1Nvm+gK4sEQRAEQbQYY8aMAcdxGDJkyB3rrlu3Dvv370eXLl1QXl4uL8/JyZEDRQA4d+4chgwZgilTpmDz5s24cuVKu5mX0hGhYJFwSKqqqvDUE4/jqScedwiBS2VlJYb9IRLD/hDpEOkHCYIg2gqS8E2n01kt12q1+PDDDyGKIjQaDcaMGYP4+Hh4e3vLdR5++GGkpKTg/fffx4QJE+Di4oKCggJ89dVXmDdvHvr164fu3btj5syZ2L59O3JyclrFt/sFug1NOCRGoxHfffON/NneiKKIs0lJ8meCIAiicQwePBgnTpxAeHh4vTJRFBEdHY3ExETo9Xq88sorAACVSlWvbnBwMIKDg7FkyRLo9XokJCTgyJEjOHLkCE6dOoWcnBx8+umn+LQm+1ffvn0xevRojB49Gg899BB8fHxa1tF2DAWLhEOiUqmwcfNm+XNbxDwNYKm2Gk4qAeF9vVGlF1FQUokJMX2Qe1sLnuewP/46RIOIsAc6QaXkMXbuEDAGHNp4GpohXeE3sR+ignxxOOEGSjNuQ9PTVW7bRa2Em0YFlYJHQUkVOrip4eXmBKPIwPOA0cigqlEne7mpodMbYRR4KHhTqjmDkaG4ohJOSgVcnJUoqahGVbVJGS3wHDp5OqO8Sg+eq01x5qwSapSjnKzCBQBntQJVehE6gwjGTKnh1EpTKkGjWYwtMiYrZ0XGYNCLsnrVPI0dz3MQeOkGiGm5lOrOYKyvzDYYTaphgQMqqw1Q1KyrUStMqtka+w01qlmFmaLaKDIYGYPRwGR1s1CjSObN6vFm6mFW4wcHDryZ/FnBWSpzRVGEwew/j8kvU9+5OJlsExkDFDz0BtGk8gVgNIrQG0z1wRg4ga9VHHMceK42BaGk+DZXHQu8NGa1tgkWWfw4OfWdNJ4AICg4uU8ltXG1oVaprDcwud/NRQUcq/WvLtaWmdvFGLPYZpXeWKOWZlAreDAwC1WywSiaKYdNJUolb6HIltTSYs27wkySzgBUVdcOCseZ1NGmcapJJ2g21ubfJXW22Zbk71J/8nV8s+a3NM6W6Qdrx1Csu1obxdXV1eLdHJ7nMWfOHOTk5CA4OLjRbSqVSgwbNgzDhg3Dm2++icrKSpw6dQqHDx/GkSNHkJiYiCtXruDKlSvYsmULACAkJEQOHkeNGtWmFOb2hoJFwiFRKpX48+w59jaDIAiCaGaysrKQn58vP8M4e/ZsTJkyBR4eHnfdprOzM8aMGYMxY8YAAEpKSvDzzz/LVx5TUlLk17p16yAIAgYPHozRo0fj4YcfxogRIyi1bAPQM4sEQRAEQbQYubm5AICbN28CAObPn4+oqCisXLkSgOmK7b0Eitbw8PDAo48+irVr1+L8+fPIz8/Hl19+iRdffBF9+/aF0WjE6dOnERsbi9GjR8PPzw9//vOf8d133znEc/KOBgWLhEMiiiLSUlORlppKzwgSBEG0YS5fvmzxPn78eIiiiNWrV2PTpk2tYoOPjw+eeuopbN68Gb/++iuys7Oxfft2zJgxA97e3rh9+za2bt2KRx99FD4+Pnj66afx5ZdfoqysrFXsc3QoWCQcksrKSoQPDEH4wBBSHxMEQbRhBgwYAB8fHwwYMAAA8PLLL2PFihUATFcZt2/f3uo2+fv7Y8aMGdi+fTtyc3Nx9OhRvPzyy+jatSvKy8vxxRdfYOrUqfDx8cFjjz2Gbdu24fbt261up6NA6f4Ih6SiogL9e/cCAFy6eg0uLi7txp5SrWkaieSM2/D2dEJuoRYPdO8AhcAjI6cYvxdWwq+DE3y9NHDXqLD323QYSnXw6NsRQb284K5RIe3aTUyNfgAAsPnbZLh7uAEAQnp6wcPFlK7P1UkJoyjKogWNWgmtTm8SvnAcBMEkDDAXwlQbRFRVG+SH9b3c1Cgs00GnN0JZI/Rw1ygh8DwMRhEiY9BWaBEZ0h8AcOHXDLi6uEBfIz7gOA7VBiP0RgYFb9qmWiFAIXAwirXp6ySBhZTqTkISeUhiDks4s/UtC6XDmiT60OmNspZC4DgoFYK8TUtBhJlohTOl2TOIDEZRBAdOFowoatLHSX3L1bHP/KhqnhquVtRjmQrR3HpB4FGjZ4G+Jv0fGINKKZiJTAC1wiTmsCb0kRCtKCREOaWdmc+wTGlnIVqp0+8mX0zt6g1ivXV5npfXs2xT/tRgWkBrVJoJUZyUppy/pv6rTRdYKzCx7GyTkAiylXWFJNJ3xkwiHskftZK3mdKvNsWitVLbfdcQ1rZVWloCv47tM90fYwx//etfsX79evA8j507d2Lq1KmtbGl9RFFEUlISvv76a+zevRsZGRlymSAIiI6OxhNPPIHJkyejS5cudrS0eaB0f0SbxsXFBTdu5uHGzTy7B4qOaI8joXFxwaWsHKRn5VDfEATRKDiOw9q1a/HCCy9AFEX86U9/wr59++xtFniex5AhQ/DOO+/g119/xYULF/D2229j4MCBMBqNOHz4MF566SV07doVUVFReP/993H16lV7m93iULBIEARBEESrw3EcNm3ahGeffRYGgwFTpkzBqVOn7G2WDMdxePDBB/HWW28hOTkZGRkZWL16NXx9fQEAv/zyC5YtW4Y+ffogPDwcmZmZdra45SCdOEEQBEEQLcb48eNx8OBBREVF4eTJkxZlPM/j3//+Nw4ePIi8vDwcOXIEQ4cOtZOlpiwz2dnZyMrKQmZmZr33vLw8q+udPXsWiYmJ7TZXNQWLhENSVVWFuXNmAwA2/9/HcjJ5e1FZWYlJEycCAPZ9/z2cnZ3tao8jUVlZiSefmgQA+Prb76GhviEIwoyKigowxixyPZuzd+9e5OWZHvGZPXt2i9piMBiQk5ODzMxMq8Hg77//fscc0+7u7ujZsycCAgLk9+DgYDz00EMtars9oWCRcEiMRiO++PxzAMDGzVvsbI3poefjPx+TPxO1MFHEqRPHAVDfEARRn7CwMJw4cQKhoaH1yqqrq2Vl9NKlS+Hn53dP2zIajcjNzbUaCGZlZeHGjRt3TCGr0WgsAkHz9549e8LT07OeqK69Q8Ei4ZCoVCq898Ea+XN7wl1j8mdkSGeUavVwdVLiZOpNdHRzgkYtIKiHJ0rKqxGfnIvOfq4YN7YvNE5KfP31RaSKDIJSQGivWtWaSiXASSnAy02F3NsVSPq1AEMCfVBSoYOrkxIaJyXUCh5F5To4qwQolKYUbXqDCJOu06T/VCkFqJUCPDRKACa1aWG5DgCgVgpwVpnKtToDyiqr4Opsqufq4oztn30OI2MQYSqX1uF5Dk4qBZxRk56N41BZbYDBaFKhSunuBM6k7BW4WjWrpKbla1LK1f7ZN0ujV/NRUrWaq5s5mJSwHAcoBKXZCDALVTHPcXIqutqUg5IqmoNKwYHnalPqcRxveodJicxzAM8DelndzVnYIKUtNEfgapXUdTEYRehFMx9MsnLo9EaTGls0KaN1NWkBpfSDyppUgbJfNSkF68LDMv2cuWrZPGWd3FvyFwttc802BYt2pD6qTbNX4y8vpRU0VZJU2pyZSrku5udiZ1XtdnT62hO9Wlm7vDadY40PZm1JNtXdprkqnONMqSml/UjajvRdpeDBYNpfzBL5mfUHk5Xi9f209NFanGF9WfsISKQJt61NvL1582ZcvXoVvr6+cl7ohmCMIS8vz+Zt4uvXr0Ov1zfYhkqlQkBAgNVAMCAgAD4+Pu2m75sLChYJh0SpVOLlhQvtbQbRCBQKBR7/nydhEBmq9Q3/YycIgjBn5MiRiImJwZNPPmmRO/rKlStITk62GhTeKcOKIAjo3r271UCwZ8+e8PPzk6d4IhoHBYsEQRAEQbQY+fn5AIBbt27VKwsNDcWhQ4eQkZGBsrIyuLm54dy5cwgPD7f57CDHcejWrZvVQDAgIABdu3alPM/NDPUm4ZCIoogb2dkAAP/u3elfoANjMBjw/b5vYGQMYyc8SgdpgiAsSEtLs3i3xuzZs5GcnIydO3ciPDwcgwcPRmJiotW6wcHBGDFiBCIjIxEZGYm+ffvSbeMWho7qhENSWVmJ/n16AwAKSkppsmcHRqfTYeb0aQCAq78XULBIEIQFvXv3xoULF9CnTx+r5SUlJcjNzUVFRQVCQkLg6+uLhIQE/Pbbb0hLS8Pp06fl161bt5CSkoKUlBRs3LgRANChQwdERETIwWNkZCS8vb1b08V2Dx3VCYdFo9HY2wQLHM0egiCItsC2bdsaLPfw8EB6ejrOnz+Pbt26ycvnzJmDoqIiLF68GK+++ioEQcD169ctgsezZ8+iqKgIBw8exMGDB+V1e/XqJQeOQ4YMQVhYmN2nYGvLUG5ognAQbtwqh8HIUG0worhch+6d3FBWqcfplFx09nODr6czUq8XQV+pR2VZORY+EwkASPr1NyhUTsjOL4dWZ0R/fw8UlelQWW1Eny7u4HkOZVo9PFxUcFIJ0BsZlAIPdY0qmudqchDXCGmrDUY4KQUoFTzUSgEGo6lAqzNApxdhFBlcnRTQGUTwHFBaWo7+3TsBAFKz8tDJ2wNOSgWMomihOlbUSE+VJnkvAMh1pPzGCoGDUuChEDgIFo8e2H52Sa5h80hmrcB8PVP+Z2mp1KRC4G0qsM1veDFY5mA2z5UsqZFFs9zFlnmUG3/rTBSZSdUL0xhx4MDAoBJ48DwPoyjK9ioVpvzSUr9K27GlwJZtb+AZsXuhNg+25fK6amSpjnk+bUs7LL+bC6okZXb9XNZ11dxMzkFunjpbGntz1TbMlulrfgdSeypF/dzRtUrr+tu0/t1i7Xq2l5aWwterQ7vMDX0n8vLy0KNHD+h0phkZevTogZdffhmzZ8+2UFXr9XqkpKQgISFBDiAvXbpUrz2lUomBAwdaXH2k29eNHyu6skgQBEEQhEPh6+uLrKwsfPTRR9i0aROuX7+OJUuWYNWqVVi2bBneeOMNcBwHpVKJ8PBwhIeHY968eQCA4uJiJCYm1rt9nZSUhKSkpHq3r4cMGYKIiAgMHjwYXbp0safbDgsFiwRBEARBtBiPPfYY9u/fjxEjRuDo0aONXs/Pzw+rV6/G4sWLMX78eJw+fRrl5eVYvXo1li9fbnMOXk9PTzz88MN4+OGHAZiuBjf29nWXLl0QEREhB4+DBw9Gx44d760D2gEULBIOiU6nw1//8jIAYO2HG6BWq+1qT1VVFaY99SQA4POv/kvPvhAEQTSSoqIiGI1GFBYWNmk9g8GAHTt2YOXKlbhx4wYAIDAwEGvXrm1SsgaO4+RJuKdOnQrA8vZ1YmIiEhMTkZaWht9//x379u3Dvn375PV79eolB48REREYNGgQ3NzcmuRLW4eCRcIhMRgM2PrvfwMA3l+z1u7BotFoxA8HDsifCYIgiMYREhKCEydOICQkpNHrJCYmYubMmUhPTwcAdOvWDatWrcLMmTObZcYFa7evy8vLkZycLAePiYmJyMjIwLVr13Dt2jV88cUXAEzB5wMPPCAHjxERERg4cGC7vohAwSLhkCiVSqxa/Tf58/2Av48rSrV63CqpRFAPL+QWanH191L07+WFGwUV0OmN6OTpjA7dPJB0vkJer7C0Ct27uKBXZ3e4OSvxa04xvD2c0ctNjVslVbhVUomBvTpCpRBQXGF6WFwp8KiqNprSxfFcjZiFh8gAtdKUzk5vFFFeZYBawQMc4OashJszAHCoqNJDreBrhBu1Prg4KVBRZUCp1pRuy1klQOA5aNQKiAwwGkVUVouQdAAKnodKwcNZZVI6iMwk8DGIgNFogCCYGpdEHECtSIPjLNO71aXWroYfYOc4Dioz4YckYJBS55kLXoCa9Ht14C0ekmeySMIo1gobJDGEuajFKDLU15zUFzpI60nr1oorTKkLqw2mPzAiY1ApBFTrjSahjZQKkOMg8CafzLdfV/Bi62H/hmSQjdEH2BLWSGkTJdsBU1+ap200/1wXlVm6P3Oxi0LgzVI41l2Zq0krCYu+l/YlU3UzwRKr6cOa8ZeaM0+taEopycv2mrVqsWUmC53qO1S7P0Muby/yUy8vLwCmZwQbi4+PD65evQovLy+89tprmD9/PpydnVvKRACAq6srhg8fjuHDh8vLioqKcObMGYsAMicnB2lpaUhLS8Onn34KwJTJKjg4WA4eIyIiEBQU1G7OXxQsEg6JSqXC8tdes7cZBEEQRCtw9uxZHDx4EK+++ioAICAgAHv27MGwYcOs5pRuLTp06ICYmBjExMTIy27evImkpCSLALKgoADnzp3DuXPn8K9//QsA4OTkhLCwMPkW9pAhQxAYGGgvV+4Jh0iLsXHjRgQEBMDJyQmRkZFISEhosP5XX32F/v37w8nJCcHBwdi/f38rWUoQBEEQbQt7n2Nv375t8V6Xy5cvY/DgwVixYgWSkpLk5Y888ohdA0Vb+Pn5YeLEiVi0aBHWrl2L3bt344MPPsDo0aMtriRWVVUhPj4eH374IWbMmIH+/fsjNjbWjpbfPXa/svjFF19g8eLF2Lx5MyIjI7Fu3TqMGzcOly9fRqdOnerVP3XqFKZNm4bY2Fj88Y9/xM6dOzF58mScPXsWDz74oB08IFoCxhgKCgoAAN7e3vf9XFgEQRB3gyOcYy9cuAAAuHjxotXywMBAzJ8/H0VFRfDx8bmrbTQHFRUVyM/Pl1+3bt2y+F63zGAwNKl9pVIp35Jva9g9WFyzZg3mzJmD5557DgCwefNmfP/99/jkk0/ky9HmrF+/HuPHj8fSpUsBAH/7299w6NAh/POf/8TmzZtb1Xai5dBqteje2Q8ApfsjCIK4WxzhHOvv7w+NRgN/f38AJiXyO++8gxkzZqBHjx4AgA0bNjT7RYHq6mo54LtT4Jefnw+tVtvkbXh4eKBTp07o1KkTfHx85M91Xz4+PujYsSMEQbhzow6IXYPF6upqnDlzBitWrJCX8TyPmJgYxMfHW10nPj4eixcvtlg2btw47N2712p9nU4nzwAPmHJQAkBZaek9Wk+0JNqKWgFHWWmp3RXIrWVPmVaP8rJKOPN6lJdpoa0oQwVfDW1FBYxKAaxaARVUqNSWy+tUlJehvExpytZhUKKivAxOvB5KqFFepkNFeSXKSpVQKQSUaU2/BaNOCcaYhcBFIfByZgujaCrT6UVU1whcjGrpcMFBW2USsIiMobys1payslJAoZaFHQalSeBiMBO4yKIGDhB4HlzNu9SevkasYTQyWeCivCeBS9OQRAZS9pO6Ahfr61h8syJwqcVc7CGyxgtcrG/TJHCpzZDCoFQIMBpFS4GLwEPgTT41JHBpeFvWuZfzu7nARdqEJBZqjMDFHFsCF1vU9alWfGJuDVB3/2qcwMV6h9XNDlO33boCF+k8dbeJ1lrjHAvYPs+W1ti/efNmOdBMTEzECy+8gOTkZBw8eBDffvut/Nu+E6IooqioCLdu3bJ4FRQUWLxLnyU7moJarYaPjw98fHzg7e0tf5ZeHTt2tChvykwdFWbnEUehtJH7mF2DxYKCAhiNRvj6+los9/X1tZquBzA9WGqt/s2bN63Wj42Nxdtvv11veZ+AHndpNdHa9PTvdudKrYij2fN4dKi9TZAJ7tvT3iYQRLujrKzsrp7da41zLGD7PCtdSbTFiRMnmqSQbg10Oh1ycnKQk5Njb1NalTvtY3a/Dd3SrFixwuJfkiiKuH79OkJDQ3Hjxo02lW/zbigtLYW/vz/52g65n/wlX9sv95O/TfWVMYaysjKHT0Fn7TxbWFiIjh07yldS76dxlmgLPjd2H7NrsOjt7Q1BEJCXl2exPC8vD35+flbX8fPza1J9tVpd7zKxdMnb3d3dYQewuSFf2y/3k7/ka/vlfvK3Kb7eixq4Nc6xgPXzrKenp9W699M4Szi6z43Zx+w6dY5KpUJ4eDgOHz4sLxNFEYcPH0ZUVJTVdaKioizqA8ChQ4ds1icIgiCI+xE6xxLNhd1vQy9evBgzZ86UJ6xct24dKioqZOXWjBkz0LVrV3luooULF2LUqFH44IMPMHHiROzatQtJSUnyJJgEQRAEQZigcyzRHNg9WJw6dSpu3bqFt956Czdv3kRoaCh++OEH+QHb7OxsC6XU0KFDsXPnTrzxxht47bXX0LdvX+zdu7dJ8z+p1WqsXLnS7vmGWwPytf1yP/lLvrZf7id/7eGrPc6x1rifxlmiPfnMsbvV5BMEQRAEQRDtHodI90cQBEEQBEE4JhQsEgRBEARBEDahYJEgCIIgCIKwCQWLBEEQBEEQhE3uu2Bx48aNCAgIgJOTEyIjI5GQkGBvk5rMqlWrwHGcxat///5yeVVVFV566SV07NgRrq6u+J//+Z96k6xmZ2dj4sSJ0Gg06NSpE5YuXQqDwdDartTj559/xqOPPoouXbqA47h6+UgZY3jrrbfQuXNnODs7IyYmBleuXLGoU1hYiOnTp8Pd3R2enp54/vnnUV5eblEnJSUFI0aMgJOTE/z9/fHee++1tGtWuZO/s2bNqjfW48ePt6jTVvyNjY1FREQE3Nzc0KlTJ0yePBmXL1+2qNNc+25cXBwGDRoEtVqNPn36YNu2bS3tngWN8TU6Orre2M6dO9eiTlvwddOmTQgJCZEnHo6KisKBAwfk8vYyphJ38re9jGtz0h7Ou02hMb//Nge7j9i1axdTqVTsk08+YampqWzOnDnM09OT5eXl2du0JrFy5Uo2YMAAlpubK79u3boll8+dO5f5+/uzw4cPs6SkJPaHP/yBDR06VC43GAzswQcfZDExMezcuXNs//79zNvbm61YscIe7liwf/9+9vrrr7Ovv/6aAWB79uyxKH/nnXeYh4cH27t3Lzt//jx77LHHWM+ePVllZaVcZ/z48WzgwIHsl19+YcePH2d9+vRh06ZNk8tLSkqYr68vmz59Ort48SL7/PPPmbOzM9uyZUtruSlzJ39nzpzJxo8fbzHWhYWFFnXair/jxo1jW7duZRcvXmTJycnskUceYd27d2fl5eVynebYd69du8Y0Gg1bvHgxS0tLYxs2bGCCILAffvjBoXwdNWoUmzNnjsXYlpSUtDlfv/nmG/b999+zX3/9lV2+fJm99tprTKlUsosXLzLG2s+YNtbf9jKuzUV7Oe82hcb8/tsa91WwOGTIEPbSSy/J341GI+vSpQuLjY21o1VNZ+XKlWzgwIFWy4qLi5lSqWRfffWVvCw9PZ0BYPHx8YwxU4DC8zy7efOmXGfTpk3M3d2d6XS6FrW9KdQNnkRRZH5+fuz999+XlxUXFzO1Ws0+//xzxhhjaWlpDABLTEyU6xw4cIBxHMd+++03xhhjH330EevQoYOFr8uXL2eBgYEt7FHD2AoWJ02aZHOdtuxvfn4+A8COHTvGGGu+fXfZsmVswIABFtuaOnUqGzduXEu7ZJO6vjJmCioWLlxoc5226itjjHXo0IF9/PHH7XpMzZH8Zax9j+vd0F7Ou/eCtd9/W+O+uQ1dXV2NM2fOICYmRl7G8zxiYmIQHx9vR8vujitXrqBLly7o1asXpk+fjuzsbADAmTNnoNfrLfzs378/unfvLvsZHx+P4OBgeVJWABg3bhxKS0uRmprauo40gczMTNy8edPCNw8PD0RGRlr45unpicGDB8t1YmJiwPM8Tp8+LdcZOXIkVCqVXGfcuHG4fPkyioqKWsmbxhMXF4dOnTohMDAQ8+bNw+3bt+WytuxvSUkJAMDLywtA8+278fHxFm1Idez5O6/rq8Rnn30Gb29vPPjgg1ixYgW0Wq1c1hZ9NRqN2LVrFyoqKhAVFdWuxxSo769EexvXu6W9nXfvFlu//7aE3TO4tBYFBQUwGo0WP1AA8PX1xaVLl+xk1d0RGRmJbdu2ITAwELm5uXj77bcxYsQIXLx4ETdv3oRKpaqXxN3X1xc3b94EANy8edNqP0hljopkmzXbzX3r1KmTRblCoYCXl5dFnZ49e9ZrQyrr0KFDi9h/N4wfPx5PPPEEevbsiatXr+K1117DhAkTEB8fD0EQ2qy/oihi0aJFGDZsmJwZorn2XVt1SktLUVlZCWdn55ZwySbWfAWAZ555Bj169ECXLl2QkpKC5cuX4/Lly/j6668b9EMqa6hOa/t64cIFREVFoaqqCq6urtizZw+CgoKQnJzcLsfUlr9A+xrXe6U9nXfvFlu//7bGfRMsticmTJggfw4JCUFkZCR69OiBL7/8ss0cRIjG8fTTT8ufg4ODERISgt69eyMuLg5jxoyxo2X3xksvvYSLFy/ixIkT9jalxbHl6wsvvCB/Dg4ORufOnTFmzBhcvXoVvXv3bm0z74nAwEAkJyejpKQE//3vfzFz5kwcO3bM3ma1GLb8DQoKalfjStw77eVYd9/chvb29oYgCPVUeHl5efDz87OTVc2Dp6cn+vXrh4yMDPj5+aG6uhrFxcUWdcz99PPzs9oPUpmjItnW0Bj6+fkhPz/fotxgMKCwsLDN+w8AvXr1gre3NzIyMgC0TX8XLFiA7777DkePHkW3bt3k5c2179qq4+7u3up/pmz5ao3IyEgAsBjbtuKrSqVCnz59EB4ejtjYWAwcOBDr169vl2MK2PbXGm15XO+V9nzebQxN+f07OvdNsKhSqRAeHo7Dhw/Ly0RRxOHDhy2eNWmLlJeX4+rVq+jcuTPCw8OhVCot/Lx8+TKys7NlP6OionDhwgWLIOPQoUNwd3eXb6U4Ij179oSfn5+Fb6WlpTh9+rSFb8XFxThz5oxc58iRIxBFUT5oR0VF4eeff4Zer5frHDp0CIGBgQ51C9oaOTk5uH37Njp37gygbfnLGMOCBQuwZ88eHDlypN6t8ebad6OioizakOq05u/8Tr5aIzk5GQAsxrYt+GoNURSh0+na1Zg2hOSvNdrTuDaV9nzebYi7+f07PHYW2LQqu3btYmq1mm3bto2lpaWxF154gXl6elqo0toCr7zyCouLi2OZmZns5MmTLCYmhnl7e7P8/HzGmGmqiu7du7MjR46wpKQkFhUVxaKiouT1pakbxo4dy5KTk9kPP/zAfHx8HGLqnLKyMnbu3Dl27tw5BoCtWbOGnTt3jl2/fp0xZpo6x9PTk+3bt4+lpKSwSZMmWZ06JywsjJ0+fZqdOHGC9e3b12IqmeLiYubr68ueffZZdvHiRbZr1y6m0WjsMnVOQ/6WlZWxJUuWsPj4eJaZmcl++uknNmjQINa3b19WVVXV5vydN28e8/DwYHFxcRbTimi1WrlOc+y70rQjS5cuZenp6Wzjxo2tPu3InXzNyMhgq1evZklJSSwzM5Pt27eP9erVi40cObLN+frqq6+yY8eOsczMTJaSksJeffVVxnEcO3jwIGOs/YxpY/xtT+PaXLSX825TaMyxrq1xXwWLjDG2YcMG1r17d6ZSqdiQIUPYL7/8Ym+TmszUqVNZ586dmUqlYl27dmVTp05lGRkZcnllZSWbP38+69ChA9NoNOzxxx9nubm5Fm1kZWWxCRMmMGdnZ+bt7c1eeeUVptfrW9uVehw9epQBqPeaOXMmY8w0fc6bb77JfH19mVqtZmPGjGGXL1+2aOP27dts2rRpzNXVlbm7u7PnnnuOlZWVWdQ5f/48Gz58OFOr1axr167snXfeaS0XLWjIX61Wy8aOHct8fHyYUqlkPXr0YHPmzKl3kG0r/lrzEwDbunWrXKe59t2jR4+y0NBQplKpWK9evSy20Rrcydfs7Gw2cuRI5uXlxdRqNevTpw9bunSpxXx8jLUNX//85z+zHj16MJVKxXx8fNiYMWPkQJGx9jOmEg35257GtTlpD+fdptCYY11bg2OMsda4gkkQBEEQBEG0Pe6bZxYJgiAIgiCIpkPBIkEQBEEQBGETChYJgiAIgiAIm1CwSBAEQRAEQdiEgkWCIAiCIAjCJhQsEgRBEARBEDahYJEgCIIgCIKwCQWLBEEQBEEQhE0oWCSI+5C4uDhwHIfi4uJW3zbHceA4Dp6eno2qL9nKcRwmT57corYRRFtn27Ztjf5t3e9ER0dj0aJFja4/a9asNnkMCggIwLp16+56/aysLFAGF4Jo50RHRyM0NNTiYFFdXY3CwkL4+vqC47hWtYfjOGzduhWPPPIIOnXqdMf6kq0LFy6ETqfD3r17W95IgmijVFZWoqysrFG/rdZi27ZtWLRokV3+nDZEYWEhlEol3NzcGlW/pKQEjDGHDcZt9fOtW7fg4uICjUZzV+1mZWVB0Qz2EQTRxlCpVPDz87Pb9j09PRt9MpNsdXZ2hk6na2HLCMIxqa6uhkqlumM9Z2dnODs7t4JFrY/RaATHceD55rkp6uXl1aT6Hh4ezbLdptLYsbeFj4/PPdtAt6EJoh0za9YsHDt2DOvXr5dv5WZlZdW7DS3duvruu+8QGBgIjUaDJ598ElqtFtu3b0dAQAA6dOiAv/zlLzAajXL7Op0OS5YsQdeuXeHi4oLIyEjExcU12c7z58/joYcegpubG9zd3REeHo6kpKRm6gWCaHtER0djwYIFWLRoEby9vTFu3DgAwJo1axAcHAwXFxf4+/tj/vz5KC8vl9erext61apVCA0NxY4dOxAQEAAPDw88/fTTKCsrs7pdxhh8fHzw3//+V14WGhqKzp07y99PnDgBtVoNrVZ7R5vi4uLw3HPPoaSkRD4GrVq1CsCdjx+SL9988w2CgoKgVquRnZ1dz2bpePbjjz8iLCwMzs7OGD16NPLz83HgwAE88MADcHd3xzPPPCPbLPWxdBv60qVL0Gg02Llzp1z+5ZdfwtnZGWlpaQDq34aOjo7GX/7yFyxbtgxeXl7w8/OTfZO4dOkShg8fDicnJwQFBeGnn34Cx3EN3iG5m7FvqJ/r3obOzs7GpEmT4OrqCnd3d0yZMgV5eXk27QEoWCSIds369esRFRWFOXPmIDc3F7m5ufD397daV6vV4sMPP8SuXbvwww8/IC4uDo8//jj279+P/fv3Y8eOHdiyZYvFSWTBggWIj4/Hrl27kJKSgqeeegrjx4/HlStXmmTn9OnT0a1bNyQmJuLMmTN49dVXoVQq78l3gmjrbN++HSqVCidPnsTmzZsBADzP48MPP0Rqaiq2b9+OI0eOYNmyZQ22c/XqVezduxffffcdvvvuOxw7dgzvvPOO1bocx2HkyJFy0FZUVIT09HRUVlbi0qVLAIBjx44hIiJCvq3ZkE1Dhw7FunXr4O7uLh+DlixZAqBxxw+tVot3330XH3/8MVJTUxu8I7Fq1Sr885//xKlTp3Djxg1MmTIF69atw86dO/H999/j4MGD2LBhg9V1+/fvj//93//F/PnzkZ2djZycHMydOxfvvvsugoKCbG5z+/btcHFxwenTp/Hee+9h9erVOHToEADTldDJkydDo9Hg9OnT+Ne//oXXX3/dZlt1223K2DfUz+aIoohJkyahsLAQx44dw6FDh3Dt2jVMnTq1YYMYQRDtmlGjRrGFCxdaLDt69CgDwIqKihhjjG3dupUBYBkZGXKdF198kWk0GlZWViYvGzduHHvxxRcZY4xdv36dCYLAfvvtN4u2x4wZw1asWGHTHgBsz549Fsvc3NzYtm3bGvRj5syZbNKkSQ3WIYj2wqhRo1hYWNgd63311VesY8eO8vetW7cyDw8P+fvKlSuZRqNhpaWl8rKlS5eyyMhIm21++OGHbMCAAYwxxvbu3csiIyPZpEmT2KZNmxhjjMXExLDXXnvtrm1irHHHD+m4lJycbHNbjNUez3766Sd5WWxsLAPArl69Ki978cUX2bhx4+Tv1o6NEydOZCNGjGBjxoxhY8eOZaIoymV1j0GjRo1iw4cPt1g/IiKCLV++nDHG2IEDB5hCoWC5ubly+aFDh6weA81prrGX6NGjB1u7di1jjLGDBw8yQRBYdna2XJ6amsoAsISEBKvbyczMZPTMIkEQAACNRoPevXvL3319fREQEABXV1eLZfn5+QCACxcuwGg0ol+/fhbt6HQ6dOzYsUnbXrx4MWbPno0dO3YgJiYGTz31lIUtBHE/Eh4eXm/ZTz/9hNjYWFy6dAmlpaUwGAyoqqqCVqu1KWAICAiwEHF07txZ/h1bY9SoUVi4cCFu3bqFY8eOITo6Gn5+foiLi8Pzzz+PU6dOWVzNvBubGnv8UKlUCAkJsWmrOeb1fH19odFo0KtXL4tlCQkJDbbxySefoF+/fuB5HqmpqXcUANa1zbxvL1++DH9/f4vnw4cMGdIoX5pr7OuSnp4Of39/iztMQUFB8PT0RHp6OiIiIqyuR7ehCYIAgHq3fTmOs7pMFEUAQHl5OQRBwJkzZ5CcnCy/0tPTsX79+iZte9WqVUhNTcXEiRNx5MgRBAUFYc+ePffmEEG0cVxcXCy+Z2Vl4Y9//CNCQkKwe/dunDlzBhs3bgRgEkHYoqHfsTWCg4Ph5eWFY8eOycFidHQ0jh07hsTEROj1egwdOvSebGrs8cPZ2bnRMzaY+3mn45ctzp8/j4qKClRUVCA3N7dJ22zsNhpDc419c0FXFgminaNSqSxEKc1FWFgYjEYj8vPzMWLEiHtur1+/fujXrx/++te/Ytq0adi6dSsef/zxZrCUINoHZ86cgSiK+OCDD2RF8Jdfftns2+E4DiNGjMC+ffuQmpqK4cOHQ6PRQKfTYcuWLRg8eLAczDTGJmvHoOY+fjQHhYWFmDVrFl5//XXk5uZi+vTpOHv27F2rywMDA3Hjxg3k5eXB19cXAJCYmHhXbd1tP9flgQcewI0bN3Djxg356mJaWhqKi4sbfDaTriwSRDsnICAAp0+fRlZWFgoKCprlXy9gCu6mT5+OGTNm4Ouvv0ZmZiYSEhIQGxuL77//vtHtVFZWYsGCBYiLi8P169dx8uRJJCYm4oEHHmgWOwmivdCnTx/o9Xps2LAB165dw44dO2TxQ3MTHR2Nzz//HKGhoXB1dQXP8xg5ciQ+++wzjBo1qkk2BQQEoLy8HIcPH0ZBQQG0Wm2zHT+ak7lz58Lf3x9vvPEG1qxZA6PRaFUk0lgefvhh9O7dGzNnzkRKSgpOnjyJN954AwCaPL/t3fZzXWJiYhAcHCwHwgkJCZgxYwZGjRqFwYMH29w+BYsE0c5ZsmQJBEFAUFAQfHx8rE49cbds3boVM2bMwCuvvILAwEBMnjwZiYmJ6N69e6PbEAQBt2/fxowZM9CvXz9MmTIFEyZMwNtvv91sdhJEe2DgwIFYs2YN3n33XTz44IP47LPPEBsb2yLbGjVqFIxGI6Kjo+Vl0dHR9ZY1xqahQ4di7ty5mDp1Knx8fPDee+8BaJ7jR3Px6aefyrM+KBQKuLi44D//+Q/+7//+DwcOHLirNgVBwN69e1FeXo6IiAjMnj1bVkM7OTk1qa176WdzOI7Dvn370KFDB4wcORIxMTHo1asXvvjiiwa3TxlcCIJoVTiOw549e5qcNmvWrFkoLi6mDC4EQbRZTp48ieHDhyMjI6PNiPgogwtBEHZh2rRp6NixI3Jycu5Y9/jx45gwYQJ0Oh0mTpzYCtYRBEE0D3v27IGrqyv69u2LjIwMLFy4EMOGDWszgaIEBYsEQbQq0oS7giA0qv7gwYORnJwMABbT+BAEQTg6ZWVlWL58ObKzs+Ht7Y2YmBh88MEH9jarSXTr1o1uQxMEQRAEQRC2IYELQRAEQRAEYRMKFgmCIAiCIAibULBIEARBEARB2ISCRYIgCIIgCMImFCwSBEEQBEEQNqFgkSAIgiAIgrAJBYsEQRAEQRCETShYJAiCIAiCIGzy/7tzawHqX8ZJAAAAAElFTkSuQmCC",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "b2ad0905fa7c42eeb1c9e164a532f96c",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value=\"./qr_seeding.pdf
\")"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "image/png": "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WTMeeughAF577TVGjhzJTTfdROfOnRk2bBi//PILrVq1apBj2pfXX3+dL7/8kjfeeAOHw0FKSgpvvvkmL730EtOmTavTNu12O5988gklJSX069eP0aNHW5m9lb+W3Z+DaedImqbx6aef0rhxY0444QROOeUU2rVrx3vvvXfAx3fzzTdz0UUXMXLkSAYMGEBqaipDhgyxju3zzz+nf//+NG3atMZtjB8/nrvvvpszzzyT77//vl7bTAghaktTSqlYByGEEADz5s3juOOOY/Xq1bRv3z7W4dTK+vXradu2Lb/++us+y/3puk7Xrl0ZPnw49957L+eccw7HHXfcfqd22p+a2mzy5MmMHz+evXv3HtT2hRBCxiwKIWJmypQppKam0rFjR1avXs24ceMYOHBgwnQUIx177LH07t2b77//HoANGzbw9ddfM2jQIHw+H8888wzr1q3j4osvBuC4447joosuOuD91KbNUlNTCQaDcrdRCFEvpLMohIiZ4uJibr75ZjZu3EjTpk055ZRTePTRR2Md1gFp2bKlNVG62+22lttsNiZPnsw//vEPlFL06NGDGTNm0LVrV4A631GsTZstWrQIML7qF0KIgyVfQwshhBBCiBpJgosQQgghhKiRdBaFEEIIIUSNpLMohBBCCCFqJJ3FOPOf//yHNm3a4PF4OProo/dbq/eDDz6gS5cueDweevbsyZdffhl3cU6ePBlN06J+GjpLc+7cuZx99tk0b94cTdP45JNP9vue2bNn07dvX9xuNx06dGDy5MkNGmNd4pw9e3aVttQ0jfz8/AaLcdKkSfTr14+0tDSysrIYNmwYK1eu3O/7DvW5WZc4Y3FuPvfcc/Tq1Yv09HTS09MZMGDAfueqPNRteaAxxqIdq/PAAw+gaRrjx4/f53qx+r0pRKKSzmIcee+997jxxhu58847WbhwIUcccQRDhgxhx44d1a7//fffc9FFF3HllVfy66+/MmzYMIYNG8aSJUviKk6A9PR0tm3bZv1s2LChQWP0er0cccQRVn3g/Vm3bh1Dhw7lxBNPZNGiRYwfP57Ro0czffr0uIrTtHLlyqj2zMrKaqAIYc6cOYwZM4Yff/yRb775hkAgwGmnnYbX663xPbE4N+sSJxz6c7Nly5Y88MADLFiwgPnz53PSSSdx7rnnsnTp0mrXj0VbHmiMcOjbsbJffvmF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j4Qn08Y4pwLhZJOQrgiExyiZ71UKyssCaJqGw1aRsGKzadhtNsp8unVBcTq0cFtXJKmoSp+c3WYkINlsxnIn1SXGYL0/MqFDjxh4GlIQCISiXrdV87mZE66bSUdKGYkrNptW44XQXBqe256o5KqQTqCa8a/VDYm1RZxjkRNeV8RWeUnk8pod+PW7huPUwMxPMv7p1bThqgkyNSXXJKqjjz6aWbNm8c0333DLLbfw66+/AkYnSymFz+fD7XbX+34DgQBKKes6snjxYt544w2rA7h582a2bt1KWVkZEN0BLCws5Msvv4zantvttjqAaWlp1vLjjjuO7777jpYtW5Kbm7vP65bH47HGaCYC6SyKuOR0Ohl/403W41hzOp1cc/04AByO2McjhBCJSNM0TjvtNDp16kSnTp0IBAKEQiFuvPFGnnrqKe655x4uvvhi7PYD6yhv3ryZGTNmVBknuGXLFrZv384bb7zBJZdcAhhzID788MPVbiczM5Py8nLr+ZFHHsmLL74YdYewSZMm1f4RlJmZWa+VZOKJdBZFXHK5XEx66KFYh2FxuVzccc+/0RVs2VVS62lBhBDiz+6uu+7i3//+N2PGjOHxxx+3lgUCAU444QQuuugi7rnnHtavX8/IkSN59NFHefPNN2ucdHvr1q0MHz6c9evXM2PGDLp06cJvv/3G5ZdfXmMMW7ZssR53796dcePG0bJly6hOYPPmzasMo2nevHmVRJQ/I+ksCiGEEKLBhEIh6w6iad26dYDxrc1VV13FyJEjefrpp3nggQf47bff6N+/P88++yyXXXZZle1t27aNefPmAUbSyOmnn84ZZ5zBqaeeWqUDaD6PzDBu164dTzzxRIMe8+EmfmeAFH9qSikCgYA11iTWdF1n08YNbNq4QUraCSHEAfjnP//J5s2bueeee6xlzzzzDMnJycycOZM777yT5ORkbr75ZlatWsWQIUMoKyvj8ssv5/LLL6c0oigCGF8NT5s2jaOPPhpN0/jqq68YN24cW7Zs4ZhjjmHixIlce+21nH322fTp04esrKy4nvA6EUjribhUWlpKepKH9CRPlV8UsVBWVsaA3t0Y2KcbvvKyWIcjhBAJIz09nRYtWtCoUSNrWc+ePXn55ZcBuP/++/nss88AaNasGV9++SX33XcfNpuNyZMnc/TRR7NixYqobZ5++un8+OOP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kLs2evTowa233kp6enrU7+MLL7yQrl27MmbMGJo24JyvNpuNnJwccnJyojq/Jl3X2bZtW7V3JdetW8fGjRsJBALWJNzVcblctG7dusY7k9nZ2Yd0rKR0FkVccrndPPDEc2hoUXVpY8XtdvPSq6/FNgghhEhgS5cuZfbs2fTp04eMjAyrs3ig0/K0adOG+++/P2rZihUreO+997Db7Vx77bXW8h9++IHy8nJ69epFkyZNDv4gasFms9GiRQtatGjBwIEDq7weCoXYunVrjV9zb9q0Cb/fv88ygR6Px+o49urVixtuuIEWLVpUu259kM6iEEIIIRqMOY3MrFmzmDVrFgBPPvmk1RGaMWMGo0aNIjMzs877aNWqFW+88QZ//PEH2dkV37zce++9TJs2jZdeeonRo0cDsHnzZiZNmkS3bt1iMvG3OZ4xLy+PE044ocrrwWCQzZs31/g19+bNmykvL2fFihWsWLGCr776iqeeeooxY8Zwyy23NMhdVeksClELSikrOy45OflPMVWCEELUh2uvvRalFD/++CMLFy5kw4YNdOjQgZdeeolLL72U4447jiZNmtCmTRv69u3LkUceSd++fenbty9ZWVm12kdycjJ//etfqyxv2bJllal7li1bxrPPPkv37t2jOouXXnopf/zxB/fffz8nn3wyYFSo2rVrFy1atDhkCSkOh8O6azh48OAqr/v9fjZt2sT69etZu3Ytr7/+Ot999x2PPvooL774IjfddBM33nhjvZZLlM6iiEulpV5OPKoroDF7wTKSkmJf7q9phvHXsZT7E0KI2ktLS2PChAnW8127dpGSkkJSUhJr167lmWeeAbDuoH388cfWui1btuStt96y7sCFQqED6rS9+OKLVZbl5eVx66230qhRo6jl8+fPZ8WKFVGTmM+bN4/TTjuNXr168dtvv1nLp0yZgqZpHHfccQ06PrI6LpeL9u3b0759e04++WRGjx7NV199xa233sqiRYu46667eOaZZ5g4cSLXXXddvRS20NS+pnY/DBUVFZGRkcH2PQWH3Qzr8SzyLNu8q4T1+cUEQooyv1FuzEhwMUquhUKK8jIvV515BACvTl9Meloquq5wOe2EdEXPNo1J8VSk3ZZWKluW5LJbCRpJLgelviAFJeUAaGjYbMbA+PJKg9nBSGYwSg760XXwBUMU7C3m4pO6AfDbmm2kpqUaJeLC7012O7DZNGO/Dnu1g9VNZeEEEvPNSe6qf7Pt2FuGrsAXCJLVKNlqo3J/kOUbC/h5+jJuu/k0AO4f8wHuNs3AF6L1ie1ok52KLxAiM81DapITt9NOcZkfpeCPLYUEgjqNU13sKvKR5LbTKCVc/s+mkd042UrWMJIbsJKE/EGdZLcDh81IXDGVl5XSNscYC5S/Zy9pqUYpQlulDBOzXSMppayKLypcG84XNJIZ3A6blRcQUfENCCdJRCQiRZaSMxJTlJWUEBmGZmbKhBMRzISJyneK9/X5KaXwB6PLsLkcRgxmOT1QUUkRKvwaRJel8wcrykJqGCUwy3whnA6NYEhR6PXTONWNw65RXBbAYbdht2mkJjnRNI1klx2Py0i2Mc7pqrGa/zdfMhNtzPKO1rFXarOQmXhSTcU581gj3mq9V9OMc8V8PaQrK7nITBaxaUbbO+y26DKAaFWTUyIS5KwElnAykVEWMbocpKlyghNEJ9eYSTxR7aMiDiL8PLJJzUSiyHYyYzIrE5ptbh5z5OYqx2m8Hp2oFLl+UVExOU0aU1hYmFDXK/M6eyBx7927lylTpnDNNdeQlJREs2bNWLt2LUopVq5cSadOnQB45JFHePTRR607j+ZdyLy8vIP+xuf3339n9erVDB482PpK/K233uKyyy5jyJAhfPHFF9a63bt3Z9myZXz99deceuqpgNHZfPzxxxkwYADXX3+9tW7kOdyQdF3nww8/5I477mDVqlUAtGjRgjvvvJPLLrus2imGavtZxU9ethARnG4PD/z3GyZN/hqXu/ZZckIIIRJPo0aN6Nq1K82aNePoo49m1apVFBYWMnfuXDp06GCtt3DhQvLz8/nyyy+57777+Mtf/kLr1q3JyspiyJAhbN26tc4x9OrVi/POOy9q7OQll1xCWVkZb775ZtS6/fv3p1+/flGx/frrr7z99ttMmzYtat1+/frRpUsXFixYYC3buXMnv//+O16vt87xVmaz2Rg+fDhLly7llVdeIS8vjy1btnD11VfTrVs33nnnnahZQw6EfA0t4pLNZiOnZRt0peJqrikhhBAN45hjjuG3335D13VsNhtpaWlV5l98+eWXueGGG1iwYAELFy5k4cKFLFmyhF27djFr1qyojt7zzz/Pli1buOSSS+jSpUud43I4HFW+sn7ttaqzYxxzzDE89NBD5OXlWcuUUixfvpzS0lLWr19PWloanTp14tNPP+Wqq64CYPHixfTo0aPG/YdCIYqLiyksLKSoqIjCwkLrZ1/PI4dLrV69mosvvpi5c+fy3HPPHXgbHPA7hBBCCCEagDn+b9OmTdhsNnJzc6NuGCQnJ3PMMcdEzW9YXl7OkiVLWLt2rTVfo1KKxx57jD/++IP77ruPvn37cskll3DhhRfSvHnzBom9Z8+e9OzZk4KCAmbPns1xxx1HKBRi7ty5XH755fzf//0fZ599NldccQVz5swhKSmJsrIyHnvsMRwOR42dv+Li4nqLsa5JL9JZFHEpGAww67P3UCiG/OViXA4pISeEEH8W//rXv5g8eTL33Xcft9122z7X9Xg8HHXUURx11FHWMl3Xueeee3jrrbf46quvrLuQ//jHPzjppJMYPXp0jSUGwehser3efd6527t3L5s3b6agoACbzWa9vmDBApRSuFwu/H5/1HY///xzPv/886hl1d2lrI7b7SY9PZ2MjAzrZ3/PKy9LDY8pP1DSWRRxKRQI8ObTdwNw8lkXgEc6i0II8Wexbt06wJiA+0CFQiGKiooYMGAA3bp14+qrr2batGnMnDmTVatWMXPmTHbs2MHcuXOtzl9BQQHFxcXW86KiIkKh0P53tg+RHcXU1NRade729dztjt11UDqL4pCITARLTXLRvU2mVY5PD2ev+vwhQrrCHwxRVubmpNPPBqB5Zgo+3UbLnBSKvH40DWb9sJGSVbtA0/C0ykDpilA4yzizTSOCIUWgNABK0Sovw9p3oxQXackuHGjYbTYapbhRQLLbbpQ1w8hqjMwQDemK8vI0hp7zF0p9QXYV+/AGjExds/TXpvIgNht4y0MEQrqVZWuUWFO47Dba5qbjcRn7UUCqx/jnV1DiD+/KKHWX4nGQ1ahiqoP8gjIAchonkeJxMLB7Lr3bpHPbzcbrbc7vzq6NXlKbp7NxyXaKvH46NE/njy2FeH1Bq3xfZpqbnMZJ2DSNkrIAzZskU+4PktskBX84K3zlpgIgXNrPacfpsNE0PQmHXSMtyYk/qOMP6laGqFFxzcbZw4z6rIEQlJSHM9wjskLByPR0OWzYzLJ7GGNTXZUS9JLD2aW+oB5V2s/KKA5nNJsxFJYGrHPMFs64NUq5VZR5i3yf+VxRkXkdmW5tt0Wsp2lRZexMkSUJAavEYmTmrMthi8qAjJx4wsym9TjtVjS6rmiS5oE0I4NYKUXzJikUev3oSpGbmRIey6VZ29jr9ePbG8JuM47X7bQbpQHdduw2Gy6H+fVdRXa73Wbu0ygdqCuwa6CFv+pz2LUq5e10ZZTmsxo63P6R64VCupURnOyyW5WXnHbjLUYWtIamlJVRXuYPRWUo28OzFOgKnHYboAMVZfk0DRwRmfqRpfyCVnwVH6kj4t+hpmn4AiHrfDTasCKT2aZFFDwMnw+2cElBc/+R2eYq/Jnaw1nolacVCYX0Shny4fKVoYqykZpWUepQC2/PZtOs89Vc98/E5/NRWFhoZfPu2bOHKVOmHNB4vZKSkv3uZ/HixSxevHi/69lsNjIyMvB6vfj9frp160a7du3IyMjA5/Px8ccf065dO2688Uarc5ecnEzTpk2t5+np6YdsjsaGIp1FEZfcbg8PPP0qulKUlgfxlQViGo/H4+GFyW+yaWdJVD1sYbTNq2+8bT2X5hFCVLZhwwb++9//snv37n129nw+X9T7brjhhjrv0+Px7PNOncPhoKysjBUrVliVZSLfu3nzZjIzM9E0jUsvvZSvvvqKW265hUsvvRQw7mDqul7tlDSHG+ksCiGEEKJBTZw4kXfeeeeA39e1a1caNWp0wF/bpqenW1/bFhYW8u6777Jjxw5Gjx7N6tWrWb16NY888gjLli3joYce4o477uD6669n6dKlgJE08+GHH3LNNdcAxuTeHo8n6tsCu92e8HcMa0s6i0IIIYRoUIGA8e3Qqaeeysknn7zPZIzFixdzwgkn0LZtW5YtW7bP7QaDQRyOiq7Ma6+9xgcffMCFF17IyJEj2bBhA2PGjGHq1KmAkTgTKT09HZfLxeDBg/n222/p1asX+fn5XH755VxwwQXWevVRBSWRSWdRxKXyslLOO+VoUPDfz78DYnub3+v10iZcpeSbBWtISalbRtnhqNTrpX1zY7qL9fm7SUqWUohCiGgZGcbY8UGDBnHzzTfvc93du3cDWHWhy8vLWbt2LUlJSbRt2xZd11m6dClDhgxhx44djBs3jnXr1vHHH3+wYsUKgsEgbdu2ZeTIkbjdbqujCMYYxNatW9OhQwc6duzIaaedxrnnngtAs2bN2LZtW0McfsKTzqI45Bqnuva7jtfrYuf2fAD6d8kiJSWFXUXl7NpbTkDXaZGXQXl2KoGQzp4tRdjdDuwuO0opdkxbjSooQ3PbsffJYcmUFQDYBrQkuWky2c3TCYR0K4nAabdRVOyjeVYqyW47yW6nkVDQJAWn3YbHZY9IFICurTLxJCUbg/bNEoW6IhBO/AiFdGvQvh4u8+QPhFifX2QNkLfbNErKgzgdNjQN7OGvNoK6Iq+Z0RF1OjSyGiVb7bVmW5EVQ2bEH7mn9W1JyvEp7PX62NimMfMXbOGXHzeRcVQLzhzQ2kouKvT68Qd1dF3hdNgo8vpxO+3MXLAFpRQ5TZPp1qoxdrsNmwZlviAhXVFcarwvEAoRCCeENE51k5nmMcr1RSQo+AIhHCEdp92GTdNwO22EdKMNnHaNQFDHH1FuTg8nCEBFGTS309ieO9zmZmlGwEokCIV06+sg87Ox2zRCerh0m1KEqwgaSQLhx2YpvgoaHpeR8GEm0IR0FZXo4A/q0aUGw4kztqivo2xVkmACIYVSejg2GxHNFJFkYR6bFl5WUX5O0zRCuk7TdDfBkMLrC2KzaeHtKhw2I+moUYrLSEAJn89KKfYU+axzPNntIMntMNpVGeUlzb3bIs5Ts23LA3pUJoeZLKRpZvk6BVo4GUYzjwIIJy+Z8UcKhioSOXQzCwajpKD5mplIo4WTYMoDITzh88eMDxRl4fPJiMt4j92mYYtIajLb10zKMROZlCKqVCUYJQCd9mpKJYb/rytFKFg1OclMpDKPXwu3lXlaOO2OqLYwSh9inQe6UlapQDPhykxqMUqSRiQVHQbMUnJFRUU1rhMMBvn000956623AGNOwJkzZ/Lwww8zffp0xo4dy1NPPUV+fj69evWy3vfYY49Fbad3795ceeWVAGRnZ/PUU0/Rvn17OnToQJs2bXC59n8NEtGksyjiksfj4cf5C6zHIn4lJyezbO0mNA2SkpNjHY4QIg6ZdxYLCwsBmDFjBm+++SZHHnkkY8eOpaysjIkTJ/L0009bJelmzJjBjBkzAKOKitnxzs3Ntb627tChA927d6djx4507NiRDh060Lp1ayvpRNM0xo4de6gP97AjnUURl+x2O0f07h3rMEQtaJpG02bN0DSsaXqEEMK0cuVK7rrrLgDee+89tm3bZlVcee+99/jwww9p06YNr7/+etT7NE2jZcuW9OzZk8GDB/PPf/7TWr579+4/TXJJPJDOohBCCCEazK5du6zHe/fu5bPPPrOel5eXM3fuXObOnVvlfUopNm3axKBBg3jrrbf49ttvyc3NpXnz5jRv3tx63KlTpyq1m0X9ks6iiEuBQIB33zbGrVx48SV/inmsEpXP5+P2W4y/+G+7Z5IMGxBCRBk4cCCrV69mxowZtG7dmrVr1/LHH3/wwQcfsGXLFmw2m/XVc3XefPNNAH777bdqX3/11Ve5/PLLAfjxxx+55557qnQozZ/s7Oyo7GlRO9JiIi75/X6uDg9QPu//LpDOYhwLBoO89tILANzyr3tjHI0QIh61b9+e9u3bRy177LHH2LJlS7hyjY01a9awYMECbrvtNnw+H71792b16tX7TIoBuP7663nuuefo2LEjJSUlTJs2rcZ1X3vtNS677DIAFixYwPPPP1+lU5mbmyudyko0VTlt7TBXVFRERkYG2/cUWNlZon4VlPgqyl9FlgUzMyExsy8VoXAmZCCkU+YLopRRgsxl0xl/zUiUglfefBePxxPO9DS+mkhLchKRVInHZbcykwlnkvoCIZZvLLCWL120jWBZALUo36gi1iod0twk5aZidxljX/zFRuk9h8eBw+PAmeTE5bRRXu7j2buvR1eKV994F4fLmOy1caoLd/i9Ns3IqLRpRvalmZ0JoDBi18OZnboyMiCDurLayBbOpFy9pZBGqW6CIZ1NO71oGjgdNpSCVlmpaBpsyd/DGf07AMZ0NRnpaUYM4f15ywMsXb+H32auxZWVQvP2mZx+VB4lZQE0DYrLAlb5PqMkIWzZVcL67SUEQzrlvhCDjsjFYbeRv6fUaBO7jdzMZFI8Dsr9IYpK/SgFe/YWMqBbKyOW7btJS03FH9RxOWz4ArqVJWy3GeXTzPJoJoVR2s0svWZmXId0ZZSeC39+mrUdGw6bmXVq5JHaNM3KcrVpVm5pVCm5yF91Ib2i+l95IIhGxedkBhWZ2Ro5EW9IN7K9rfMtHEVIKTSM95iZsVZWbvhz1zTNKK2naTjsFdnPpsis6+p+NZv/fvxBnZCuG2Utg0YbJ7kd4bJxmlUyzmxTXyCEL2CUTywuC+By2Ej2OHE7bDjD2eQuhy0qSzsyDrNtrX+D4dcctogMabCyewmXczSPxxYunVf95cbclyI6+VfhC5jngh4u+Rjens3YpTLbXldW1r3Zjo5K6enmvzEVPl/Mzyio6+F/lxXrmu2g68rIlnbYqmQ76+Hsc/NEstlsRvtUNJzVFmYFyajykxAVr8kWLm0Z0hXFxUW0aNaEwsLChLpemdfZg4m7oKCAxo0bG9n9e/YwYcIEpkyZQl5eHlu3biU3N5f8/Hx27ty5z+3Y7XZcLhdKKXw+H2PHjuWcc86hffv2zJw5k9GjR1f7Pk3TePvtt7nwwgsBWLJkCR988EGVO5ZZWVkJ3ams7WeVuEcoDmtuj4f/TH4PXVdx8bWmy+Xm9sdeIxDUcXs8UvJPCCEaUOPGjQGj09akSRNeeeUVXnnlFWtaKYDVq1czduxYFi5cyI4dOwBISTFqqJeVlRnTT4VClJWVWdt96qmneOqppwAjw7pJkyakpKRgt9sJhUL4fD527dpFKBQiMzPTet8vv/zCPffcUyVOm81GVlYWL774ImeffTYAq1atYu7cuZx//vnWcSQ66SwKIYQQIiFE3uXv0KED06ZN48cff+TVV1/ltddew+v1AtCiRQtef/11SkpKWLVqFRs3buTpp58mKSmJVq1asW7dOvx+P7t377YmAQdjqraHHnqIiy66KCpppkOHDlxzzTVs27aNrVu3sm3bNvLz8wmFQuTn51sVXgKBAJ07dwbg+++/59VXXz0ErdLwpLMohBBCiITlcrlYvXo1wWAQgMzMTF588UU2b97MqFGjOOaYY3jrrbfIzs7G5XLxz3/+k1AoxObNm1mzZg2rV69mzZo1zJs3j3nz5nHTTTfx2Wef8dprr9G2bVsAjj/+eI4//vio/YZCIXbu3Mm2bdto37495eXl1tfWQFS5wEQnnUURl8rKSjn/tONRwDf/+ynmkz2Xl5Uy+oyjAZj3+2rcHpl8WgghYmnjxo3cfvvtvPHGG4Bx13HYsGG8+uqrNGrUiE2bNpGUlESTJk1o3bo1t912m/Veu91O69atad26NSeddBJgjMl98cUXuemmm5gzZw69evXiscceY/To0VF3NCO3kZOTQ05ODl6vl7PPPpsZM2bgdrv56KOPOOOMMw5NQxwCkuAi4lL+rr20DddiXrh6C0lJKQRDyiqRtaeoHF0pWjRNRVeK7XtKjddR5GYmU+T1R44vRykjicamaSR7HNg0jS27vRSU+CncUIDD48S3qxTsGgR1up/Qho2bi0hv5KFghxe7R3HNWUcA8OS7P5GSkY4eUpQXlGF32+kbTgYx9qeRkWIMqHbYbdYvGaddI6SMXTjsNoK6whaRvGLTtHA5Pp2CEj8KhdthR9PAF9Bx2DW2FxjJJrsLijn/eOOrjmc+XkC71llkNUoKl2WDFI+RPe522lm5qYD1W4spXLqdVgNacUS7JjTN8FBSHgSlKCjxkdM42YgpVJFcMnfxNhx2G73aZpLicZDscbKrsIyCEh+hkCI9xSiZle5WtMoyxvb8vHIzGWlpeFx2nA671f4Ou4bPHwJNI6QrI8EinBhU+RdQVPJLeHySw26LKPlnJFzoEQkNZlqBXdMIKYXLKmNnbMemGWOLTEZySfR+KlPhEnrGdqJfN5NwzOQQXVfhBI7oJAazTJ2Z9KLC64bCCRVGyTjjs09yOyoSODQz6UGjmmuUtZ5Vpk8p4/MMt4bdZsPlsKEAfyCE3VaRbON0GCX0fAEdfzCE30woCumkJrmsc8hMEHHYbVGJQpGfmFl60DxeM8FKi0jqMOLEmBolojyeqeL4KpZGldIzk0OUitqWHm5r8xyx2zRCIT1c9tE4R8xtO2zRpSPN5CTdOqfM/Rpxm8kyNs1IQvMHdevzMxPRHHbNKtNJuDSj026z2sFMYotusYojNRPLKq8ReaoVFRXRMuvPmeCyL0uXLuWWW27hm2++wefzAdC5c2dWrlzJVVddxYsvvmit6/P5cLvdB7T9NWvWcNlll/Hdd98BcMYZZ/Dyyy/TvHnzatffu3cvQ4cO5fvvvyclJYXPP/+cE088sY5Hd2hJgotIaB6Ph8+/ngUo3O7YJ7gIIYSIjciklrKyMnr37m195Txo0CAeeeQRbDYbixYtYsiQIVHvPdCOIhjT/MyePZsnnniC2267jWnTptGjRw/+85//cOGFF1a5yzhhwgS+//57GjVqxLRp0zjmmGPqeKTxy7b/VYQ49Ox2O0cPOJb+xxwrJZ2EEOJPaOHChZx11lmMGDHCWpafn8+xxx5LdnY2Dz/8MN9++y1HHXUUffv25YorrqBFixb1sm+73c5NN93EwoULOeKIIygoKODiiy9mzJgxVdZ98MEH6dGjBxdccAFer5fNmzfXME1U4pI7i0IIIYSIC6FQyLpBoJRi6tSppKSkWF8n33zzzfzwww8899xzXBku3NAQCgsL+eSTT3j//fdZtmyZtXz69OlV1m3cuDF33303559/Pi+99BIAqampdOrUiS5dutC5c2f+7//+j27dujVYvA1NOosiLgWDQb78/FOUUgw48XTsdjlVhRDicPXll19y9913c/rpp3P33XcD0LdvXx599FGGDBmCy+UiEAiwc+dOAoEA/fv3t97r9/txuVwHHUNRURGff/457733HtOnT8fv91uv9erVi+HDh1vVXypr3Lgx55xzDitWrGDNmjWUlJSwcOFCFi5cCEC3bt2szuK3337LQw89ROfOna3OZJcuXcjJyak2kSYeyBVYxCWfz8fokZcAZoKLnKpCCHG4MBKNdOsuYmFhIT///DO7d+/mrrvuClfL0bjxxhut9zidTr799luWLVsWdZfummuuYf369UyYMIHTTz/9gDpcJSUlfPHFF7z33ntMmzbNSpgBo4M3YsQILrjgArp27brP7Zx44olWUovf72ft2rWsXLmSFStWsHLlSnr37m2tu2DBAr766iu++uqrqG2kp6fTuXNnnnzySQYMGACA1+vFbrfHvDiFZEOLuFRWVsa5Q4cC8OnUqdaEp5XlFxgz85tZ0kopNu/0Ws+DuqJ9brpVbm9dfjG7ispp1SwFAJ9fR0dR6guxe5cXPaST1jiJbQu34slOxVfkM7JvQ35e+c9N6Lpi9BUPctoFfXA7jV9ywZDOglW7CJYHSUl3o2ngD+i0aJKMx2XHYbdht2vYNI0Uj5NkjwOXoyJb18xA9gdCJLvDnWJNC5etq6ArRSikY7NpFBYW06NtDgDfLdlAECdl/hAhXdGrbRPKfMbgb7NUn6bB2vwSdv2+DbYUg8dBvwt70TY3HZfDhtcXxB8IAZCR4gI0kt12yv0hlqzfQ3FZgF17yujTuRmpSQ5yGyfj9Rnrr9m8k7+PvghNg9fe+ZiM9FQ0oNQXxGE3Mm9dTjsep5EZrmGUqzNLpWkYmeouhx27TbPaxu2s2kZAVMZwSFc4HbaKMpLhDHN/eH2zDc3MZputYpkZi5XBG96+w65VudjU9GsyGFJR2boq6j1YpQ4js2jNfZsl3ZQyPtsyf8g6OAV4nHYrKA0tKoPbzNS122xR2dLm9nwBI8vZ7bRZpfZCujJKTIZ0dKWsdjDL2SlllIGMzDQG8DhthHQjmx+MLF6H3WaVFDTbzzwO83MwH5vlHc1scWNZZMxWi1nLdEXE+W8U9bParprPITLbOrK6kjkjgXn+mOUQwfhs7PbI0pHmMZgZ2BVZ02aWu1LK2kZI18P70sLZ9prV/kYbaVHngPW5hdPEQ+aOMGZIiFjJKpVYWHh4ZkO/9NJLPPTQQ9x1111ccolxU6C8vJznn3+eiy++mKysrAPaV/Pmza3JuI844ggmTJjA8OHDayzD5/V6+fLLL3nvvfeYOnUq5eXl1mudOnVixIgRjBgxgu7dux/IYdfaypUrmTt3blRncu3atcY5jDFWs0+fPgA88cQT3HTTTbRp04YuXbpE3Yns3LkzWVlZB3U3UrKhRUJLSkri61mzYh2GxeXyMP7OV/B7fYSKfPt/w5+Ix5PEq+9/jstReYoVIYSoatu2baxevZq3337b6ix6PB7Gjx9/wNtKT09nxYoVPP7447zwwgv89ttvXHLJJdx2223cdNNNXH311bhcLvx+v3UH8YsvvqC0tNTaRvv27a0OYs+ePRv8q+DOnTtbVV5MPp+PNWvWsGLFCrp06WItX7duHbqus3btWtauXcuXX34Z9b6ff/6Zfv36ATB//nyWLFnCiBEjarzBUlfSWRRCCCFEgwmFQui6js1mw263c8UVV9CqVat6q3DSsmVLHn30UW677TaeffZZnnrqKdavX8/YsWNZvXo1OTk5PP3002zdutV6T9u2bRk+fDjDhw+nT58+MR8r6Ha7o8Y1mp544gluvfVWVqxYYd2FNB9v2LCBTp06MX/+fN5//30efvhhAKZOncoHH3xQr/FJZ1EIIYQQDeauu+7ivvvuY+zYsTz11FO0bNmyxkSRg5GZmcnw4cN599132blzJzabjeeee85KVMnJyeGvf/0rw4cP56ijjop5B7E2NE0jOzub7OxsBg0aZC1fs2YN//nPfzjyyCNZs2ZN1HtOPfXUeo9DOosiLpWVlTH4uIEAzP5uXr3fUj9QPl8Z/7rqDJRS3Hr7ezGNJd6UlXo5rf+RAMyZvwR3o8QZWyWEOHx8+umnXHLJJdb4RV3X8fv9HHHEEdx0002MGDGiXrKmY0EpRSAQsOI3v3oHSE5O5qyzzmL48OGceeaZDXK9lM6iiEu6rvP7b79Zj+NBSXFBrEOIWwV7dsc6BCFEnLr11lu56aabGqyjFggEuPDCC/n444+jlp911lnceOONDB48OCHuIlZnxYoVvPfee7z33nsMGzaMf//734Bx9/Diiy/mnHPO4ayzziIlJaVB45BsaBGXQqEQs8MJLoNPOumgqrj8sbUQqMhY9ZYHWZdfHM5wVPTt0NSqmwuwcXsJu4rLKdxZSrPcNJLdDrbu2MNVZ1bUhi59YiHO/i2hSRJaTiod++TSKMWFLxDC5bATDOkUlwfZW+InGAjhdNlp2STZqstbUh4kI9lpJYTY7RqNU934AjpN0t1oEVmdFVmrZgYtlJd5aZfbFIBVm3bgDdrxBUK0aJrC4nV76NgiA00Dp8NOmsf4m7A8oFPqC7C9oIyiUj9Lv10HgRC5A/Lo1CLD2JdNo6DYSODxBXRaZaXSJN1t1QdeGs6M3llYTuusFDLTPTRNc/P74qXY7RrtO3ZGEa7Ra7dZNYn9QZ1A0MieTk1yWXWHNa2i/nIgpHDYtKjayhX1tsMZpjYNu90WlWFq1mk2WfWgbRVZr+YyFa6lHNR1qx63UhV1nZ12o91DSuGIyDR2RsRhsupS1/Ar1MyMNd8TCtezjoxNi8p6NzJrjXNRUe4PWfWL7bboxCEzK1e39mFmR2vW9jVNwxcIGccb0nE77dhsmnUsxhgyjUBQJxCuu25+LkluB6GQjqZplPqCVka64//bO/P4KMr7j79nZo9sEnKRkAQIBAggNwiIXIIaOURFrYpoC9iKUqRKqVbRevdXvAseFasVrFXxBK2CglyCIFflPgQ5gkDCEXJussfM8/tjdie7JIEAgRw879crr+zOPDPP9/s8uzPPzszn+Wjm9kbguxT0xgasvrHaJySrsnZS0NSyPjdV4eHtFvTK1sN+JCpl3uCUfSdCPwdB32ezrrLl/hB1tG6EeFkrijljgm6gaUqYgbPLWXYdJVhF0Ku7LJey/ILq7+Bin25YfR0iesZpU9FF2fc6qJA3ApJrVTVjItCfBQUFNEtOrHdq6Ori+PHjvPnmm7z88sscOHAAwHomctKkSWFCkbrEzp07+eijj/jwww/ZtGmTtbxdu3ZhE4RXB1INLanTaJrGlefguQtJ9aOqKm0uaoemqdZ0MBKJRHKu8Pl8PProo7z66qvWLefk5GSGDRvGs88+S2JiYg1HeOYMHz6cL774wnpvs9kYNGgQt9xyC8OHD6+xuGrFPBevvfYa6enpRERE0KtXL1avXl1p2ZkzZ1qTdQb/anqySolEIpFIais1fY5dtGgRTzzxBPPmzTur/QDk5uYyZMgQnn32WYqLi+nYsSMtW7YkJSWFiRMn1omBohCCXbt28Y9//IPbbrsNXdetdY0aNULTNAYNGsRbb71FTk4OX331FaNHjyYuLq7GYq7xK4sffvghkyZNYvr06fTq1YupU6cyePBgduzYUenEnDExMezYscN6X1efRZBUjt/vZ0HAg/OqwYMrnVxVUvN4vV6mPvcMqqowfuL9aDZ7TYckkUgC1IZz7OLFiy019NChQ894Pz/99BPXXHMNO3fuJDo6mhkzZtC5c2d69OhBTk7OaU3mfb7Jy8tj0aJFzJ8/n/nz57Nnzx5r3cSJEy37wocffpi//e1vJCUl1VSoFVLjZ+CXXnqJsWPHcscddwAwffp0vvrqK95++20eeuihCrdRFIWUlJQq7d/j8YTZ9xQUFJx90JJzjsfj4cbh1wFwNL9ADhZrMT6fj5dfmALAXffcJweLEkkt4lyfY+HU59lLLrmE8ePH079//zPIwGThwoXcdNNN5OXl0axZM/773//SuXNnAHbv3s3atWtJTk62yv/1r3/l+uuvp2PHjmdcZ3XxxhtvMH78+DCxpt1up0+fPgwaNIjGjRtby1u0aFETIZ6SGj0De71e1q1bx+TJk61lqqqSmZnJypUrK92uqKiI5s2bYxgGF198MX/7298qteWZMmWKZUouqTuoqsrFPXpYr8+G1o1jyy27OKPsVsW2/cdxl/qt92mNokmMi4C0ONZuziGqSQyJsS5atO2ETVNo0zKRtI9vZeOeXOKjHew/WMhP/9kILWJp0Kohhk+nQcNIGsY46dwynugIO26PKaqJctoo9vhpFOeiuMRHhAPiGjhRUPD4DHy6TtbhIuvh+ODD8zFRDlRFIcKh4bCHi30inDYaJUbj0w0O5bpJS4pm895cUuJdpDVqQPbxEmyagtNuWg82TYziWKFGy5FdyDpcyM6dx1j+0zFiW8TTp30jmiZGBUQggmMFpWzPygMgNtpB48QoNFWhxOPn50MFHDiWS4yj7BlFm2rW41cVSr1+IlwOHDbT5i/4v9DtxaapFJf6SGgQgU1TibCrRDhMYUxQkGAKL8x+sWsqQlMo9ZaJUYJaCjVk34qi4NDKRAg+vUxUEopDU1FVNWDdhvXfHyIq0gPWgaqq4Pb60cLVLQghLGvCoOVbYJXZFoEAg2KIUBGVHiJ+CFf7mwImLUQsoqkKft0IexY0MkSAEWo1qAds7XQBwjBMAQ8Ch13F4zPtID0+HZfTZtnwOWwqTruKEoxLUSgs8VmxB9s3JtKOrht4dQMRiKW41I/dpmLXVLy6ge41b6c57JolDFEDwiRFMcVLJ9rxBdu7rGkVq96yVim7uqUqSpmtYIjQxO8zwo4VimLKUewhXnqOEEFOUOzitKv4dWG2B+Y2hSU+q7+UkL4L9kmZZWRIjiHxOu1aORGMEFDqLTvOGEJgIDAE2AOfX+uzKkRARMRZcT7OsXDq8+y1117Ltddee2ZJYA627rnnHnRdp3fv3syePTtsYJiYmMiQIUOs90uXLuXRRx/lscce49e//jVPPvnkOR+ECSH4+eefWbBgAfPnz+euu+6yrqJ26NABwzC46KKLGDRoEIMGDWLAgAFER0ef05iqkxp9ZvHo0aPouh7W6WA+qJqdnV3hNm3btuXtt9/m888/5z//+Q+GYdCnTx9++eWXCstPnjyZ/Px862///v3Vnoek+nG5XHz/wyq+/2FVjc+xCOCMcPHU9Nn8/d9f4oyo+XgkEonkVJyPcyycu/Os3+9n4sSJjBs3Dl3Xuf3221m0aFG5fE6kSZMm3HTTTQghePfdd2nbti1/+MMfyMnJqZa4ghQUFPDpp58ybtw4WrVqRevWrRk/fjxz5szhv//9r1Xu0ksvZd++fWzbto1p06YxbNiwOjVQhFpwG/p06d27N71797be9+nTh3bt2vHGG2/w9NNPlyvvdDpxOp3nM0SJRCKRSOokp3uOhXN3np0yZQrTpk0DID4+nh49erB161Y6d+580keTMjIy+Pjjj1m7di0PP/wwCxYs4NVXX+W9995jwYIFdO/e/axj27p1KwMGDODo0aPWMrvdTt++fRk0aBDXXHONtdxms9GsWbOzrrMmqdEri4mJiWiaVm60n5OTU+XnJex2O926dWPXrl3nIkSJRCKRSOokteUc+/jjj2O325k4ceJpbZeRkWENQo8fP84f//hHunfvTkJCAoMHD+bpp59m8eLFuN3uCrfv0aMH8+fPZ+HChXTp0oXjx4+TmZnJ2rVrzziXIC1btqRDhw40bdqUe++9ly+//JLc3FwWL17M5MmT6dSp01nXUZuo0cGiw+Gge/fuLFy40FpmGAYLFy4M+2VzMnRdZ9OmTaSmpp6rMCU1QElJCZf378/l/ftTUlJS0+FQWlLCH28dwG+v7UNpScUHJolEIqlN1JZzrGEY+P3+03bjGjlyJMePH+e7777j//7v/xg6dCgxMTEUFhYyf/58HnvsMa644gpiY2O59NJLuf/++/n888/DrvYBXHHFFSxbtoy+ffuSl5fHVVddddYDxoiICD7//PM6fWv5dKjx29CTJk1i9OjR9OjRg0suuYSpU6dSXFxsKbdGjRpFkyZNmDLFVFs+9dRTXHrppWRkZJCXl8fzzz/Pvn37uPPOO2syDUk1YxgGP6xcYb2ueQRHc0yHgAvL80gikdRlasM59oEHHmDcuHFnZEnncrno37+/paTWdZ3NmzezfPlyli1bxrJlyzh48CCrVq1i1apVvPjii4DpdtKvXz/69etH//79SU9PZ968eVx99dUsX76czMxMFixYQM+ePascyz/+8Q9++eUXy3IvNra8eLK+UuODxREjRnDkyBEee+wxsrOz6dq1K19//bX1AGtWVlaYwu348eOMHTuW7Oxs4uPj6d69OytWrKB9+/Y1lYLkHOB0Ovnw00+t1+eSdmnxYe+LSn3W6/ZXx7Mnu5CSkrLPYInPz5odR0iMjeCX7CLatUwg4+kW7M0uYOfBAjwlfo7sPIY7tQFZvxSQnGz+2mzfLJ78Yi+pDaM4dMx0HfD6DfblFJGWFEV+kRcwrf8axkSgKODzC6JddgrcXko8fiIcGgXFXo4dL7TiyT7uRqgOBBAf7UQ3BN1bJ+H2+Ni42/Rs7t46ybJ8A4iKsLP/SBGJsS5SejVj96EC3B4/X/13O64EFy1aJdCjdRJJsREkxbrw6wYFbi95RR4MQ9AyNYakWBcCwfodB6xYdvySj6GWkBzvIj7aydGCUopKfNg1ldgoBw0iHcQGlN0xkQ5KfTolXj+aascQBrpuIABNVXE5NXQ9aAVo4POb9nK+wDK7ElCmqgpur25Z64WqV4NK3KB9mhpQTAet8hACPbCdHmKbB2WqXMMw7fZEQDENps2cpql4A1aDiqJA0P4u8GPCECLEji6gpg18jCx1Laa1Xyi6UfYDSVFMJbSqKKiaYm0bVCubsZgq+VB7RLsSPjeeEBDpKFNgB5XRBOwWvX6z/WyaiqoIbFqZDWHQEu94kd/aXlNMRbYjYF/n0w3rR5RdMy0EnXYVIcDr1ykJ9JnDrqEpgKJY1oLBtrKs9AwjoGwva5OKlOTB3K3XIapnAq1qCBCGsOwVRdi2WPVoqoJulNkHNnDZw+w2g9aDXn/Z5MlBC8Zgu/sNYcUctJAMtr1ifgTDbASD5UAJtJ+w1NhBtb0antIZURvOsTExMdVm+6dpGl26dKFLly7cc889CCHYt28fy5YtswaQ27Zts/7efPNNABo3bky/fv0YPnw4xcXF/Pjjj1x11VXMnz/fmuOwMoQQPPnkk5bi+4orriAzM7Na8qkr1PhgEWDChAlMmDChwnVLliwJe//3v/+dv//97+chKklNYrPZuG749TUdhkQikdR56vM5VlEU0tPTSU9P5ze/+Q1gqsC///57li9fzvLly1m7di0HDx7ko48+4qOPPgLMQWd+fj7XX389WVlZ5QQzGzduZO/evWRlZbFs2TJruyeeeIIrr7zy/CZZC6gVg0WJRCKRSCT1k+XLl7Ny5Uouvvji8zLQSkxMZPjw4ZaXstvtZvXq1SxbtozvvvuOlStXWp7SBQUFjB8/npiYGF544QVrH8OGDQubLkhRFF555RXuueeecx5/bUQOFiW1El3X+X7ZMgD69u+Ppmmn2EIikUgktZFvvvnGsvs7l4NFIQTHjx8nKyuLffv24fP5uOmmm4iMjGTgwIE88MADrFu3LmzC9OLiYt58802aN28eNljs1q0bKSkpNGvWjGbNmnHttddyxRVXnLPYaztysCiplZSWljI40zyoHM0vOKMHoyUSiURS83Tr1o3Ro0ef8tnAU+HxeDh27FiYPd7kyZP58ccfycrKIisry7piCNC8eXNuuukm673D4UAIgaZp6Lr5/OlNN91Ehw4dyjm8fPHFF2cVa31DEeLC0nYWFBQQGxtLTu7xanvgVlL9uN1u+l3aC4DlP6wiMjKyRuIIil3cbjdDBvYLi+d4kQePz2DrvuPs25NL+3am8XtqQhSKAiu3HaYkrxRUyGiRQIlXxzCCdnWCtk3jACjx+snJLSE1MRIFhQaRdnILS1FQsNtU8oo8pDaMwuXQOJJfiqJAUWERfTqYk7wu3bAXP3YaJ0Zh01TsNhVNVSgq8eEKiBCWb85GAJd1SkU3TKGGPWB9VlTiIzbKQVGJjyP5peQXedi5JxfVpjGwexOS40zHmlKfYQlIdh7It2wHGzXQuKJfbwwhmL/ke+JiG+D2+Mkr9qDrplWh066RV+SxbBVtNoVIp40Sj05slIPDeSUoiim8adwwCsMQeP0GdpuCgmlZpyoKfl0QFISU+gxLJKEoZj42VQ1YyhkoAcGEHhBMgCnWsGlqmcAkYEOnKGWCByGEaXeol6nwDWHWqgbyN0Is9hTFrElVwKuX1aupppDGrqmB/SshQo4ysUmoSMPcjrB6g9aDZctEmAjHMASlvlDhhYLDpgHCEp2oqkJoLaFVegL9atdUfIGcg+0EZp5KSAwiYEVX4vVbAhxNNeOIjLDh85vxefyGJf4I2uxpqoLfKKvDEGa9Nk0JiIsUq92CsSsK1vcmNMeKMAwRJhcKltID4pPQtjZEeFtXdibUQ4QrodsGNwpaGNpUJdBfZZ8jzWpDc/mJsYkKXpvlzfyPHc+jRWoS+fn5dep8FTzPnmnc8+fPZ/v27dYAcN++fWRlZZGdnU3z5s3Zu3evVbZv376sWLEibPvk5GSaNWtGy5Yt+eCDD6zv/+7du8nOzqZfv34IISxF9IVMVftKXlmU1EoiIyP538ZNNR2GRW2LpzYRGRnJ3KWrKPHquCIjajociURSCyktLeWXX36xBoChA0Fd11m0aJFV9sknnyw3AAySm5uLYZT5gE+aNImxY8dat4ubNm1KRETFx6GWLVty5MgR6wfQ66+/Xv2J1lPkYFEikUgkEsk5Y8mSJVx++eWVrg/eFg4+m37FFVfQuHFjawAY+peYmBg2LdSvfvWrSver6zq7du1i/fr1rFy5kh07drB69WoAfvOb35CRkVFNGdZ/5GBRIpFIJBLJOeOdd95BVVU0TaNVq1Y0a9aM3NxcrrvuOmsQGPpEXGUe1CfD7XazefNm1q9fz/r16/nxxx/ZuHFjhVaATZo04bHHHjurnC405GBRUispKSnhpuvNaQ8+mfM5LperRuNxu91cdkn4M4sSE7fbzdUDyp5ZdMY2qOmQJBJJLaJp06YYhsH48eN55ZVXWLFiBX379sXlcvHwww8zcODAsKuFp+LIkSNhg8L169ezY8eOk7p9KYrCXXfdxR133EHnzp1r/JxS15CDRUmtxDAMFgX8TGuD3Z8Qgm1bt1qvJWUIIdj103brtUQikYQyceJERo0aZdnjbdiwAYfDwbJlyxg6dCgXX3wxDz/8MDfccEOYm4xhGOzevTtsULh+/XoOHjxYYT1JSUl069aN5ORkli1bZglhevbsyeuvv0737t3Pea71FamGltRK/H4/H3/0IQA33zKi3Oz655vi4mISY83Py96cYyQ3jCtXZsu+4wDkHC+hSaJ55TGjcSx7cwrZvj+P7H15tG2XRLFHp1mjKLIOF+P2+NFUhVapMRwvLCW+QQQFxV6iXXYaRNoBSIyNILfAQ1DnqaAQaTdISzJtCvdmH8MVGcWR/BI8AVVsdIS5bWGJD59fJyUhClWBb37IAqBr2ySaJEZh0xQ0VaW41AeKQgOXnZzj5m2b7fvzKCzx0cBlx2nXaNcsnqgIm6XsJKAu3ZdTwLpVK4h22enRqw9ur4HXp9MkMQq7TaXUq1Nc6sPlsBEZYfZjqVfHrwvsmumDFnCAo8Srsy+7EIddJdplJzbKiapAhEPD4zMsRbJltaaU2an5/IapmA0c0iIcNqvNHJpqSYB9fgNDBBSuAZVzUOGsqQq2EFs9OFEpDSDQjbKBsQDLFjDULjColPYHrPCCy+021VJQB7eFsu2ME47IwYfxy6zkwtZar4IKYd2AUp8fJRC7065Z6tqgIjhEzGvtwxewLhSAI8RWUVXKVONB1BNiCSqliz3+sH3ZNDWg3jZj8foNHDYVW2B/ds1UEPsNAyOkTRWrrTTLplGE1KsbwuqfUNu+U2Gc0LhGSGOaanWs+k9UqZchwnIOtkOZPaBpHWnXyhTkwb4Ofj6C/X8qCgoKSE1MqJdq6AMHDvDiiy/yxhtvWLeK09PTufzyy4mIiGDjxo1s2LCBoqKiCrdv3bo1Xbt2pVu3bnTt2pWuXbvicDh45JFH+Oc//4kQgri4OKZMmcLYsWPlXL2VINXQkjqNzWZj5G2313QYkiqgaRo9e/cjNsoZONnX/JVgiURSu0lNTaVDhw4MGzaMJUuWcOTIEfbu3cuMGTPCyjmdTjp16mQNCLt160anTp1o0CD8cZdZs2Zx7733cuTIEQBGjx7Nc889R6NGjc5bTvUZOViUSCQSiURyzli1ahVr166lU6dOXHbZZQAsXryYO++8s1zZmJgY7rzzTuuK4UUXXXTKO0vfffcdI0eOBKB9+/a8/vrrVj2S6kE9dRGJ5Pyj6zpr16xh7Zo11kz7ktqJz+dj1r/f4t//egOfz1fT4UgkklrGl19+yYQJE/jkk0+sZX369OEPf/hDmBsLmLdFP/nkE7777jt27NhR6W3oIB6Ph7vvvhuAX//616xfv14OFM8B8sqipFZSWlpK/96XAtLur7bj83l55rEHAfjViNtBddRwRBKJpDbRoUMHbrrpJrp27WotU1WVzp07M3fuXGtZ8LnCrKws3nzzTd588000TePSSy9l8ODBDB48mO7du4c9f/j888+zfft2GjVqxMsvv4zdbj9veV1ISIGLpFbidrvp1qkjAD9u2lzjU9WcGI84YUAUFRH+uyu30APAht3HaJIYRavUGDRVYeOeYwDkFXppnhKN128QH+3kwNFiYqMc5BV5LJGKz2/QINKBz28Q7bKjKJAU6yLSaeNIbj5tmpr2glv25hAZFUXDBs6AVRqmYAXzQX2HTSOv2IsQpmWaqihs2H2MBi4bfl3gctpIjnfhsGnkFpaSGBOBqiqUeHU27cnF7fHTMqUBRwtKadwwkvjoCBKiHegBa7W8/EJaNU4EYOW2/aQkxhMf7SC30MPR/FKaJEbhDFgDHskvQVMV7DaNhGgHPl3g9vhNyzhNJS7Sjqap+PwGXr9ObqEHvy7w+nVSAyIdVVWwB4QTfl2EiB1EmcgF08bOrEs1rQMDtntBIYjTZopeQp3jDENYogTT4s9UwCgBqz5FAZuqBkQwZaKK4D5DhQ6GEJYdXHDfAHpA8BEUvSiKEugXgPIikmAsQatFCLeGC9YbeigPCn80VbE+T8HtTCvAiuow21EI06ovqF6x2zR8umFa7immaEVRAjGB1d6hgpBg/cHtPD4dRSGsbc24hSWeCYpeVAXLJs+vB6waAxaDwRyDVoRKiLVeMJagkKdiS8DKhTCh7SdEuPgltF9CLQJDRT/B4sHtgsImQtoo2L5ChNsSBoPWAt/PIAUF+aQ0rH8Cl//85z889NBDHDhwAICEhAQmTpzIhAkTcDqdLF26lG+++YZvvvmG7du3h23bsGFDrrrqKgYPHsygQYN4/vnnmTp1Ku+99x633XbbecmvPiEFLpI6TWRkJDt+3l3TYVicGE9xwONYIpFIJKdHcXExBw4cIDU1lfvvv5+77rqL6Ohoa/3QoUMZOnQoAPv27bMGjt9++y3Hjh1j1qxZzJo1C4BOnToxevRokpKS8Hg8OJ3OGsmpviOfWZRIJBKJRHLOWLFiBR988IH1fvTo0bz11lvs2bOHSZMmhQ0UT6R58+bcddddfPrppxw7dozly5dz77330qZNGxRFYdOmTbzzzjsMGjSIhIQEHnroIbxe7/lI64JCDhYlEolEIpGcMx599FF+85vfMGrUKAAiIiL43e9+d9pXAW02G5qm8frrr3P8+HH27t3LBx98wJgxY0hNTcXtdvPss8/St29fdu7ceS5SuWCRg0VJraS0tJSbb7yBm2+8gdLS0poOh5KSEvpe2ou+l/aipKSkpsORSCSSOoPX60XXddavX39G2x87dsx63aNHD5o0aUK7du0wDINbb72VGTNmcODAAT799FMSEhJYu3Yt3bp145133pGuUtWEHCxKaiW6rvPlF1/w5Rdf1IqpcwzD4H9r1/K/tWtrhf2gRCKR1BV69OgR9r8qCCH45ptvuPzyy+natat1a9lms7F27VqWLl1Kenq6VV5RFG688UY2bNjAgAEDKC4uZsyYMdx+++3k5+dXaz4XIlLgIqmVOBwOXps+3Xpd2zhR/RwqeImKsJHQwLy9cnmXxuQWevhhWw4+3aB/x1QAPD6drMPm/GEHjhaTmhCJx6cT38BJqVcnMSYCI6CsPV5USlGJD4ddZcPuY2iKQoRWVl/DmAiioyM4VugJWM5BhF2jgctu1RUbaUdVFRw2FUPAwM6p7Pgl31JYH8ottlSkHr+BqihEOW10y0jkWEEJP/1SQKRTY19OEXuyi4hx2WjTNA6HXSPaVTZVRXKcC1WBQ7ludEOQkhCJ129Q4PYSF+0kOb5M1X44vxQhBBEOGynxLvy6IN/ttVTD0S47zZLMZ5kEcCS/FEMIopw23H4/dpv5W7eBy2apTp12YW0fYddMKzndINKp4fMLy1bQYdPw+vQwyzabpiIQpmoa85e0oph1lCmVTbW0Xxch9ovgCdjpBdXC5jYKihq0MixTuOqGCPvBEYwxVMVrqtrLlNqqYrZBqB1dWVxmEIZQwpcF6jLbqWyh169b8QTVt0FLPT0Qll0ry9sTsO4Lfn7M+MvsA5VATL4Qa7tgeZuqoGgKTnvZdQmf30APKIINEewvBb8hUBWBjoLX70cNtINfN3DaVLTg3gPqaF0QiMPsC1VRUIIKcxSMgF2hdoJaW5zQhkFC+0hRQA1ps9CrU3rYb0UjbFuzLZVAP2oh2wSU8HqZpaIQpq1icHtTgQ2+wGdDAfx6/bgqFnwm8WTPJgbx+/188sknPPvss9aVSJvNxqpVq+jfvz9gKqIro2nTpixcuJBnnnmGxx9/nA8++IAffviB999/n0svvfTsk7lAkVcWJbUSu93Ob+8cy2/vHCvnzZJIJJJ6jhCCN954g7Zt2zJy5EjWr19PVFQUf/zjH9m9e7c1UKwKmqbxyCOPsGzZMtLT09mzZw/9+vXjb3/7m7wtfYbIwaJEIpFIJJJzxqFDhwDIzs6utMxbb73FuHHj2L17Nw0bNuSpp54iKyuLl156ibS0tDOqt3fv3qxfv55bb70VXdd55JFH+PTTT89oXxc6crAoqZUYhsHWLVvYumWLfEZQIpFI6jA7duwI+18RH330EQC///3v2bdvH48++igJCQlnXXdsbCzvv/++ZQk4b968s97nhYgcLEpqJSUlJXTv0pnuXTpL9bFEIpHUYTp06EBSUhIdOnSocH1hYSFLly4FYOLEidVu76ooCtdccw0Ay5Ytq9Z9XyhIgYuk1pKYmFjTIYRxsnhCBS/FpX7r4flIpyl26dshBYAVW8zbMI0To2jTJBaAUp/O/iNF6IagRXIDAIpK/RhCUFTio3GCeeBUFGiREoPb42f/obKpJJZvOcRF6cnYNIWGDSKIirDh9RscLzItB4PBJEQ78frLlOXtm8UDsP9IEfHRTlLiI1EU2H+kGJ9ucPCYj84tEohy2miW1IAj+SVs2pNLQgMnQghWbT9MakIkDtVPQsNEFMXM1+Vy4LRrliVcqdtLA5edfTmFgW0hLtpJYkyEacXn0zmY6ybSaUNTVRq4NBTA7dUpKjFtCxu47CREO7DbVIoDbVPi1YmOsFHg9ll2ag6bik1TsWumWMMQpsDDMAS2gE7KpxvWfm2aisOmYg8INyAgRgioN1ROVEMoAau/cEJt+AzL0k5YvnxClAlYTFu6Mru6oAzCsoszDHy6QAjD2q+mKqiqaoURFOoE9wllwpagDZ+5TLHiChX3BAPTDREmTAmKhoKCHiEETltZvV6/ad/nsGsBuY+5TKFM3BOsS4S1gWJFYbephD6FbOZqCmYE4PPrpi1eYN92TaWo1G8KfzTT6lE3AkKkgADJtNETlgWlHhC+APj8YNMUjIAtZGjbn2hRWBmh4pcQt0SCLR2sK2j1J064GWLZOtq0sHq8/pCCAQtATVUtS0GbVj+u50yfPp3pAcFiRSxcuBCfz0dGRgZt2rQ5JzH07dsXRVHYuXMn2dnZpKSknJN66iv145MoqXdERUWxPzuH/dk51f4rsz7EU5uIjIzix5/28fP+g7JtJBLJaTN37lwArr766nNWR3x8PJ06dQLk1cUzQQ4WJRKJRCKR1AhCiPMyWDx48CDx8ebdFDlYPH3kYFEikUgkEsk5Y8iQIaiqSt++fStcX1RUxF//+lcGDBgAwO7du/nLX/7CqlWrzqreI0eOMH36dAYOHEjTpk2t5yJrgytYXUM+syiplZSWljJu7J0ATH/zLSIiImo0npKSEoYPGwbA5199hcvlqtF4ahOlpSWMHXkdmqow+79f4nTWbF9JJJLaRXFxMUIIioqKyq1TFIU1a9bQsGFD6zj/xRdf8H//93+sWrWKBQsWWGXz8vKIi4s7aV15eXnMmTOHWbNm8e2334Y5gPXp04dbb72V3/72t9WT2AWEHCxKaiW6rvPhBx8A8Nr0N2o4GlN0sOy7pdZrSRmGYfDD98us1xKJRBJKt27dWL58OV27dq1wfevWrcPed+zYkVtvvZUrrrjCWnbo0CGaNm1Kz549GTZsGFdffTXdunVDVVWKior473//y6xZs/j6668ta0CA7t27M2LECG655RaaN29+TvK7EJCDRUmtxOFw8NyLL1mv6xKhymi3p8yWL9Jpo09AFX28yMOq7YcB6N0+mdaNYyn16ezJKSQ2ykFCtGkXGOOyU+ozfxkXuX04HTYUICXENq9zi4aU6AKvX+fQsVwUBWKiHDSKiyTCrhHp1Kw6gzjtGm6PhyinabVnt2nsP1KEokB6QJHt0w027smlZWoM0RF2mjSMIi0pmiP5pez8JY9+HVPYl1NIQbHBK2/9G2EIirwQFaUQFWEHBKVenWiXA69fJy0pGn9AaezXDdweP16fbtoAxkVS6vODIMxKLzbKYSmjDcPcroHLjqZqRDoVPD4dm6YQ4TDbXDcEpV4/5k0mxVKeuhxawELPVMZGOsvK+/wGpSU+hBAoimkxZ9NUnDZLCx1Q/Jrv1IDyVqFMrRosp5o+cSHa3yCKpdgO1luesv0HNMmWylYE2sysw1RTB58hCqqIQ5z/AnmX1acqZWprM2Ql5LWwbAR9/jI7OrumBlS8ZWpgp12z2iOIy6FZMfoC9nSqYqp6UQJtZcWjoBsiTBFs1xRrHQgi7JppfxhIzqcLoiNslr2f129gUxVKvH4MAU6bikeY+9EC/RG00Qu2j24INDWgNPeHe80H+zz4v2w5VcayT6xkGyFCFdNly0PrUwPKbkMIy+bPp9ePH1+xsbFh/09FZmYmmZmZYctWrlyJYRisWrWKVatW8dhjjxEXF0dcXBwHDx4MGyC2b9+ekSNHMmLEiHIDUcmZIQeLklqJ3W7nD/fdV9NhSKqAZrNx9XU3mNPT2ORj0BKJpPq58cYb2b9/Py+88AKzZ88mKyuLvLw88vLyrDJpaWnceOONjB49mo4dO0qr2GpEHtklEolEIpGcMw4fNu+iHDly5Kz289FHHzFt2jSysrIASEpKokePHrRo0QKA/fv3M23aNC6++GJiYmK47bbbwraXvtBnjhwsSmolhmGwb+9e9u3dK5+Dq+Xofj9zv5jNvC9m4/f7T72BRCK5oNi6dWvY/zPB7/fz4osvAvDrX/+a5cuXk52dzZo1a9i9eze7d+/mtdde4+qrryYmJobS0lJrAnYwn4NPTU2lX79+1uBVUnXkbWhJraSkpISLMloBcDS/QE72XIvxer384c5RAGQOzgFkX0kkkjJatWrFpk2byMjIOON9fPXVVxw8eJCkpCT+9a9/lXuWvUWLFowfP57x48djGAa7du0Ku5L4008/kZOTQ2FhIQ0bNrSWjx8/ni1bttCjRw/rr1WrVmEDTYkcLEpqMZGRkacudB6pbfFIJBJJXWDmzJlnvY9//vOfAIwZM+aUokdVVcvZBrZp04atW7eyd+9eNK3Ms3HJkiVs27aN7777zloWGxtL9+7dwwaQ6enpYbaPFxqKuMBu4hcUFBAbG0tO7nFiYmJqOhzJBYTb4yf0UOMKKHJ/2JaDokCbpvHERztwe/zsO1wIQHSEncRYc05Hl0Oj1GsqOYuLi2maZLoRbM86THxc2WfZEAK3x09Orhu7TcXj02mSGI0QgtgoBzbN9GO2aSol3jJlqKJApEPjcL6pJW6aGIUQcOBYMccLPTROjMKumUpnIUxPaoDWyS4ympi+2Tv2H8bmdOG0azhtKtEu8wHzoJK5oMSHTVM5cLSYhAam4jvSaaOwxEdctAOHplqK2qgIGyUePwLw6waugOK5MLAPAKddNf2nvebtb0014wuqjYNi01KfjmEE3itgU1XLBxkI6xdDmPV5/YZ1ZSLSabPUzEIE1MWAHlQoB3YcejhVVcXyBA62QbCdw1EqXB5+ZBbWsmC9uihTPiuKgqqU960+1dH9ZOc+X0j+QRW5qpiq4cr8jYMq5BOV0aqiBFTk5esvU3yHLg8NTAT6Uwl4SJvvg8pnv256U+tCWG0MZcrmoF94RbkaAS9pwyjbbzAwTVVQIKCUtiKrUtudCRW1Q0FBAamJCeTn59ep81XwPFtdce/bt48WLVoghOCnn36qVoXz5s2bWbt2rfW3YcOGCiftTkhIsAaQI0aMoEuXLtUWQ01S1b6SVxYlEolEIpHUWl599VWEEFxxxRXVPhVOx44d6dixI2PGjAHA5/OxdevWsAHkxo0byc3NZcGCBSxYsIB27dohhOCzzz7D5XIxbNgwOnfuXK1x1TbkYFEikUgkEsk547rrrmPu3Ln079+fxYsXV3k7t9vNvffey7/+9S8Afv/735+rEC1sNhupqam0a9cOm81GYmIizZo1Y/bs2YwcOZKoqCj69OnDihUrePrpp2nUqBEHDx7klVdeOeex1SRysCiplXg8Hv547x8A+PvLr+B0Oms0ntLSUkbefBMAH3z8SY3bD0okEkld4fjx4+i6Tm5ubpW32bp1K7fccgtbtmxBURQeffRRfvWrX1VbTDk5OezcuZNdu3axa9eusNcFBQUVbtOvXz9rwFpaWsrYsWPJyMjg7rvvrra4aitysCiplfj9fmYEfk0+/9Lfa3ywqOs6X8+bZ72WSCQSSdXo3Lkzy5cvr9KtWiEEM2fO5J577qGkpISUlBTee++9MOu/0+HQoUPMCxy7Qz2hO3XqVOm8j4qikJaWRuvWrcnIyCAjI4PWrVvTs2dPq0yHDh0s0c2FgBwsSmoldrudJ5562npdHwhazAUpCVgBdmmViMuhkXW4iJ2/5NG6aRzt0kzxisencyQgOCks8ZKeXP4B5MTYCETgYXufLrBrCg1cdmKbxuHx6SiKwtGCElRFIb/YS1y00xRC+HSEgOgIm2VBVuzRcdg1FOB/u47SsXk8TROjaJoYxbGCUhw2G3nFXpx2lZ5tGhEVYWP+6p+tWA4eK0az67RMjaGgxEepT8dp14iOsGO3aSTGaPh1QZsmsZa4psDtxWFTOZTrJi7KidOuoSpQXOq3RAQxkQ6zvBC4HBp2m4phCIo9pt2fXVNxOW34dYP8Yq8lHrLbTRFEhF1DUYICC1MIUerVrf3bgr52mIIMm6bgsNksm7pSrx/dH2gkAZqmoillVnGCgPAlIIoIFMMQIKx5QgP7p8yOTwmx4atI/BHyLmyZpmphZYUwLfu8Pt0qFBR4qCcIUqqK/QQ3Ht0wBSACUwyiqaYdoD0gNFGUysQuAcGL30AJEbuU5VyWWzDOMqGQKRwqsyg0C9gB3TAA05rRMASaouC0KSdsb1rmlQQEUEGBjl1TAqKXgIjFVr6BdEMgBJZFpQhpS0UxFU7qSfrodAmKekK3V9Uz3FktIyEhAYD4+PiTlisqKmL8+PG8++67AFx11VW8++67JCcnV1heCMGhQ4fKXSH89a9/zfXXXw/Azp07+d3vfkfLli3DBott27YlKioqbDAY/N+iRQt59+gE5GBRUitxOBw8+PDDNR2GRCKRSM4DGzZs4JZbbuGnn35C0zSefvppHnzwQVRV5eDBg/z000/lBoU///wzbre73L5atWplDRbbtGnDVVddxUUXXWT5vwMsXbpUzqV4GtSKlnrttddIT08nIiKCXr16sXr16pOW//jjj7nooouIiIigU6dOzJ079zxFKpFIJBJJ3aKmz7HHjh0L+x+Kruu88MIL9OrVi59++okmTZqwZMkSJk+ejKqqDBo0iCZNmnD55Zdz11138dxzz/HZZ5+xadMm3G43mqbRqlUrBg8ezD333MPUqVO5+eabrf2npKQwf/58Xn755bApmeRA8fSo8SuLH374IZMmTWL69On06tWLqVOnMnjwYHbs2EGjRo3KlV+xYgUjR45kypQpXHPNNbz//vtcf/31/O9//6Njx441kIHkXCCE4OjRowAkJiZe0JOhSiQSyZlSG86xmzZtAsw5DUPZuXMnY8aMYcWKFQBcffXVjBo1ir59+1plWrRogaqqtGzZstwzhBkZGaSnp9ebR5VqMzU+tH7ppZcYO3Ysd9xxB+3bt2f69OlERkby9ttvV1h+2rRpDBkyhAceeIB27drx9NNPc/HFF/Pqq6+e58gl5xK3202z1BSapaZUeJtBIpFIJKemNpxj09LSiIyMJC0tDQDDMJg2bRpdunRhxYoVNGjQgH/+859s3bqVW2+9lR9++MHa9tFHH7WeS5w7dy4vv/wy9957L0OHDqV169ZyoHieqNEri16vl3Xr1jF58mRrmaqqZGZmsnLlygq3WblyJZMmTQpbNnjwYObMmVNheY/Hg8fjsd7n5+cDUFiJNF5SO3AXF1uvCwsKalyBfC7iCQpcUBR8Do2iwiKKi0ooLFDRDNPOyuPTKSw0BS5FJT4KXIFt3eHxCNUsHxS4BB/GDwpcigpNgYvPb6AJpynowBQYGF6bJa7w+g18AUeM4qJiCgo0HHYtUE8puteO2+PHa1dRUNC9NtzFRVYsxUWFaHYfhQXg0Q0cmorXrmF47cFU8eumQCLoRlNYYgpcitxeNN2JNyBwURTFMszwO22WwAWwBC7ugMBFAXwBgYu71I8vIHDxBgQuuiHKCVz8QQsUygtcIFQYYgpcDFEmcFErEbiEhExQYhEu1oCyqsIFLidyOhfTgwIXXTeqTeByIrohLMeTUIFLqDDjZAIXsw8qEriUUbHABczWDE8iKHAxRFlcZZ/rsh37DVHmtBMQuNhCBC6h9Z6YrxCmI1KFAheqV+BSEcHz1JkarZ2PcyxUfp4NTkEzffp0pk+fDpjPJo4fP966mjhgwABee+010tLSWLRoEcXFxezatYsOHToAWK4ilU1nIzk7Cqr4GavRweLRo0fRdb2c0ik5OZnt27dXuE12dnaF5bOzsyssP2XKFJ588slyyzPSm59h1JLzTYu0pjUdQhgynsq5pl/9djGQSGqCwsJCYmNjT3u783GOhcrPs8EriSdj6dKl5W5vjxo16pTbSaqXU33GavyZxXPN5MmTw34lGYbBvn376Nq1K/v3769TfptnQkFBAWlpaTLXesiFlK/Mtf5yIeV7urkKISgsLKRx48bnIbozp6LzbG5uLg0bNrSuwl5I/VwbqGp7V/UzVqODxcTERDRNIycnJ2x5Tk4OKSkpFW6TkpJyWuWdTme5CZ2DKqiYmJgL5kMrc62/XEj5ylzrLxdSvqeT65lcUQxyPs6xUPF5Ni4ursKyF1I/1waq0t5V+YzVqMDF4XDQvXt3Fi5caC0zDIOFCxfSu3fvCrfp3bt3WHmABQsWVFpeIpFIJJILEXmOlVQXNX4betKkSYwePZoePXpwySWXMHXqVIqLi7njjjsA89mFJk2aMGXKFADuu+8+BgwYwIsvvsiwYcOYNWsWa9euvaBsdyQSiUQiqQryHCupDmp8sDhixAiOHDnCY489RnZ2Nl27duXrr7+2HrDNysoKmzyzT58+vP/++/zlL3/h4YcfpnXr1syZM+e05n9yOp08/vjjNe43fD6QudZfLqR8Za71lwsp35rItSbOsRVxIfVzbaC621sRZ6rJl0gkEolEIpHUe2p8Um6JRCKRSCQSSe1FDhYlEolEIpFIJJUiB4sSiUQikUgkkkqRg0WJRCKRSCQSSaVccIPF1157jfT0dCIiIujVqxerV6+u6ZBOmyeeeAIl4HEa/Lvooous9aWlpdxzzz00bNiQ6OhofvWrX5WbZDUrK4thw4YRGRlJo0aNeOCBB/D7/ec7lXJ89913XHvttTRu3BhFUcr5kQoheOyxx0hNTcXlcpGZmcnOnTvDyuTm5nL77bcTExNDXFwcv/vd7ygqKgors3HjRvr3709ERARpaWk899xz5zq1CjlVvmPGjCnX10OGDAkrU1fynTJlCj179qRBgwY0atSI66+/nh07doSVqa7P7pIlS7j44otxOp1kZGQwc+bMc51eGFXJdeDAgeX6dty4cWFl6kKur7/+Op07d7Ym/+3duzfz5s2z1teXPg1yqnzrS79WJ/XhvFsXqMpx54wRFxCzZs0SDodDvP3222LLli1i7NixIi4uTuTk5NR0aKfF448/Ljp06CAOHTpk/R05csRaP27cOJGWliYWLlwo1q5dKy699FLRp08fa73f7xcdO3YUmZmZ4scffxRz584ViYmJYvLkyTWRThhz584VjzzyiPjss88EIGbPnh22/plnnhGxsbFizpw5YsOGDeK6664TLVq0ECUlJVaZIUOGiC5duogffvhBLFu2TGRkZIiRI0da6/Pz80VycrK4/fbbxebNm8UHH3wgXC6XeOONN85Xmhanynf06NFiyJAhYX2dm5sbVqau5Dt48GAxY8YMsXnzZrF+/Xpx9dVXi2bNmomioiKrTHV8dnfv3i0iIyPFpEmTxNatW8Urr7wiNE0TX3/9da3KdcCAAWLs2LFhfZufn1/ncv3iiy/EV199JX766SexY8cO8fDDDwu73S42b94shKg/fVrVfOtLv1YX9eW8WxeoynHnTLmgBouXXHKJuOeee6z3uq6Lxo0biylTptRgVKfP448/Lrp06VLhury8PGG328XHH39sLdu2bZsAxMqVK4UQ5gBFVVWRnZ1tlXn99ddFTEyM8Hg85zT20+HEwZNhGCIlJUU8//zz1rK8vDzhdDrFBx98IIQQYuvWrQIQa9asscrMmzdPKIoiDhw4IIQQ4h//+IeIj48Py/XBBx8Ubdu2PccZnZzKBovDhw+vdJu6nO/hw4cFIJYuXSqEqL7P7p///GfRoUOHsLpGjBghBg8efK5TqpQTcxXCHFTcd999lW5TV3MVQoj4+Hjx1ltv1es+DSWYrxD1u1/PhPpy3q2LVHTcOVMumNvQXq+XdevWkZmZaS1T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+P7775k+fToAqqry8ssvs2XLFt555x0WLVrEn//855Pu5+eff2bOnDl8+eWXfPnllyxdupRnnnmmwrKKonDZZZdZg7bjx4+zbds2SkpK2L59OwBLly6lZ8+e1m3Nk8XUp08fpk6dSkxMjHUMuv/++4GqHT/cbjfPPvssb731Flu2bDnpHYknnniCV199lRUrVrB//35uueUWpk6dyvvvv89XX33F/PnzeeWVVyrc9qKLLuKFF15g/PjxZGVl8csvvzBu3DieffZZ2rdvX2md77zzDlFRUaxatYrnnnuOp556igULFgDmldDrr7+eyMhIVq1axT//+U8eeeSRSvd14n5Pp+9P1s6hGIbB8OHDyc3NZenSpSxYsIDdu3czYsSIkwckJBJJvWbAgAHivvvuC1u2ePFiAYjjx48LIYSYMWOGAMSuXbusMnfffbeIjIwUhYWF1rLBgweLu+++WwghxL59+4SmaeLAgQNh+77yyivF5MmTK40HELNnzw5b1qBBAzFz5syT5jF69GgxfPjwk5aRSOoLAwYMEN26dTtluY8//lg0bNjQej9jxgwRGxtrvX/88cdFZGSkKCgosJY98MADolevXpXu8+WXXxYdOnQQQggxZ84c0atXLzF8+HDx+uuvCyGEyMzMFA8//PAZxyRE1Y4fwePS+vXrK61LiLLj2bfffmstmzJligDEzz//bC27++67xeDBg633FR0bhw0bJvr37y+uvPJKMWjQIGEYhrXuxGPQgAEDRL9+/cK279mzp3jwwQeFEELMmzdP2Gw2cejQIWv9ggULKjwGhlJdfR+kefPm4u9//7sQQoj58+cLTdNEVlaWtX7Lli0CEKtXr66wnj179gj5zKJEIgEgMjKSVq1aWe+Tk5NJT08nOjo6bNnhw4cB2LRpE7qu06ZNm7D9eDweGjZseFp1T5o0iTvvvJN3332XzMxMbr755rBYJJILke7du5db9u233zJlyhS2b99OQUEBfr+f0tJS3G53pQKG9PT0MBFHamqq9T2uiAEDBnDfffdx5MgRli5dysCBA0lJSWHJkiX87ne/Y8WKFWFXM88kpqoePxwOB507d6401lBCyyUnJxMZGUnLli3Dlq1evfqk+3j77bdp06YNqqqyZcuWUwoAT4wttG137NhBWlpa2PPhl1xySZVyqa6+P5Ft27aRlpYWdoepffv2xMXFsW3bNnr27FnhdvI2tEQiASh321dRlAqXGYYBQFFREZqmsW7dOtavX2/9bdu2jWnTpp1W3U888QRbtmxh2LBhLFq0iPbt2zN79uyzS0giqeNERUWFvd+7dy/XXHMNnTt35tNPP2XdunW89tprgCmCqIyTfY8rolOnTiQkJLB06VJrsDhw4ECWLl3KmjVr8Pl89OnT56xiqurxw+VyVXnGhtA8T3X8qowNGzZQXFxMcXExhw4dOq06q1pHVaiuvq8u5JVFiaSe43A4wkQp1UW3bt3QdZ3Dhw/Tv3//s95fmzZtaNOmDX/84x8ZOXIkM2bM4IYbbqiGSCWS+sG6deswDIMXX3zRUgR/9NFH1V6Poij079+fzz//nC1bttCvXz8iIyPxeDy88cYb9OjRwxrMVCWmio5B1X38qA5yc3MZM2YMjzzyCIcOHeL222/nf//73xmry9u2bcv+/fvJyckhOTkZgDVr1pzRvs60nU+kXbt27N+/n/3791tXF7du3UpeXt5Jn82UVxYlknpOeno6q1atYu/evRw9erRafvWCObi7/fbbGTVqFJ999hl79uxh9erVTJkyha+++qrK+ykpKWHChAksWbKEffv28f3337NmzRratWtXLXFKJPWFjIwMfD4fr7zyCrt37+bdd9+1xA/VzcCBA/nggw/o2rUr0dHRqKrKZZddxnvvvceAAQNOK6b09HSKiopYuHAhR48exe12V9vxozoZN24caWlp/OUvf+Gll15C1/UKRSJV5aqrrqJVq1aMHj2ajRs38v333/OXv/wF4LTntz3Tdj6RzMxMOnXqZA2EV69ezahRoxgwYAA9evSotH45WJRI6jn3338/mqbRvn17kpKSKpx64kyZMWMGo0aN4k9/+hNt27bl+uuvZ82aNTRr1qzK+9A0jWPHjjFq1CjatGnDLbfcwtChQ3nyySerLU6JpD7QpUsXXnrpJZ599lk6duzIe++9x5QpU85JXQMGDEDXdQYOHGgtGzhwYLllVYmpT58+jBs3jhEjRpCUlMRzzz0HVM/xo7r497//bc36YLPZiIqK4j//+Q9vvvkm8+bNO6N9aprGnDlzKCoqomfPntx5552WGjoiIuK09nU27RyKoih8/vnnxMfHc9lll5GZmUnLli358MMPT1q/dHCRSCTnFUVRmD179mnbZo0ZM4a8vDzp4CKRSOos33//Pf369WPXrl11RsQnHVwkEkmNMHLkSBo2bMgvv/xyyrLLli1j6NCheDwehg0bdh6ik0gkkuph9uzZREdH07p1a3bt2sV9991H375968xAMYgcLEokkvNKcMJdTdOqVL5Hjx6sX78eIGwaH4lEIqntFBYW8uCDD5KVlUViYiKZmZm8+OKLNR3WadG0aVN5G1oikUgkEolEUjlS4CKRSCQSiUQiqRQ5WJRIJBKJRCKRVIocLEokEolEIpFIKkUOFiUSiUQikUgklSIHixKJRCKRSCSSSpGDRYlEIpFIJBJJpcjBokQikUgkEomkUuRgUSKRSCQSiURSKf8P/dyeaQ0zMEsAAAAASUVORK5CYII=",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "a23be9b7b3484c6fbd2ad36eadf2f48a",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value=\"./qr_no seeding.pdf
\")"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "for case, output in outputs.items():\n",
+ " plot(var='rain water mixing ratio', qlabel='rain water mixing ratio [g/kg]', fname= 'qr_' + case +'.pdf', cmin= 0, cmax= 4, output= output.products)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/svg+xml": [
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "3dda4ce6e1d44b5493c4b63803efc99b",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value=\"./SH2012_seeding.pdf
\")"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "image/svg+xml": [
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "8403cc49b53245c5b228409419490bf5",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HTML(value=\"./SH2012_no_seeding.pdf
\")"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "for case, output in outputs.items():\n",
+ " time = output.products['t']\n",
+ " water_mass = output.products['effective radius']\n",
+ " \n",
+ " fig, axs = pyplot.subplot_mosaic(\n",
+ " [['a', 'b', 'c']],\n",
+ " sharey=True,\n",
+ " figsize=(12, 4),\n",
+ " tight_layout=True\n",
+ " )\n",
+ " axs['a'].plot(\n",
+ " output.products['super droplet count per gridbox'].mean(axis= 0),\n",
+ " in_unit(time, si.min),\n",
+ " marker='.',\n",
+ " color='red',\n",
+ " )\n",
+ " axs['a'].set_ylabel(\"time [min]\")\n",
+ " axs['a'].set_xlabel(\"mean super droplet count\")\n",
+ " axs['a'].grid()\n",
+ " axs['a'].set_xlim(10, 40)\n",
+ "\n",
+ " axs['b'].plot(\n",
+ " output.products['coalescence_rate'].mean(axis= 0),\n",
+ " in_unit(time, si.min),\n",
+ " color='green',\n",
+ " )\n",
+ " axs['b'].set_ylabel(\"time [min]\")\n",
+ " axs['b'].set_xlabel(\"mean coalescence rate [1/s]\")\n",
+ " axs['b'].grid()\n",
+ " axs['b'].set_xlim(-1000, 65000)\n",
+ "\n",
+ " axs['c'].plot(\n",
+ " in_unit(output.products['surface precipitation'], si.mm/si.s),\n",
+ " in_unit(time, si.min),\n",
+ " color='blue',\n",
+ " label= r'Total precipitation = %.5f mm/s'%in_unit(output.products['surface precipitation'].sum(), si.mm/si.s) \n",
+ " )\n",
+ " axs['c'].set_xlabel(f\"surface precipitation [mm/s]\")\n",
+ " axs['c'].grid()\n",
+ " axs['c'].legend(loc= 'upper right')\n",
+ " axs['c'].set_xlim(-1E-3, 3E-2)\n",
+ "\n",
+ " fig.suptitle(case)\n",
+ " show_plot(f\"SH2012_{case.replace(' ', '_')}.pdf\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "base",
+ "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.9.13"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
+}
diff --git a/examples/PySDM_examples/seeding/common_seeding.py b/examples/PySDM_examples/seeding/common_seeding.py
new file mode 100644
index 0000000000..325e6ff514
--- /dev/null
+++ b/examples/PySDM_examples/seeding/common_seeding.py
@@ -0,0 +1,159 @@
+import numba
+import numpy as np # pylint: disable=reimported
+import PyMPDATA
+import scipy
+
+import PySDM
+from PySDM import Formulae
+from PySDM.dynamics import collisions, condensation, displacement
+from PySDM.dynamics.collisions.breakup_efficiencies import ConstEb
+from PySDM.dynamics.collisions.breakup_fragmentations import AlwaysN
+from PySDM.dynamics.collisions.coalescence_efficiencies import ConstEc
+from PySDM.dynamics.collisions.collision_kernels import Geometric
+from PySDM.initialisation import spectra
+from PySDM.physics import si
+
+
+class Common:
+ def __init__(
+ self,
+ formulae: Formulae,
+ particles_per_volume_STP: int = 50 / si.cm**3,
+ n_sd_per_gridbox: int = 32,
+ radius: float = 0.04 * si.micrometre,
+ kappa: float = 0.3,
+ ):
+ self.formulae = formulae
+ const = formulae.constants
+
+ self.condensation_rtol_x = condensation.DEFAULTS.rtol_x
+ self.condensation_rtol_thd = condensation.DEFAULTS.rtol_thd
+ self.condensation_adaptive = True
+ self.condensation_substeps = -1
+ self.condensation_dt_cond_range = condensation.DEFAULTS.cond_range
+ self.condensation_schedule = condensation.DEFAULTS.schedule
+
+ self.coalescence_adaptive = True
+ self.coalescence_dt_coal_range = collisions.collision.DEFAULTS.dt_coal_range
+ self.coalescence_optimized_random = True
+ self.coalescence_substeps = 1
+ self.kernel = Geometric(collection_efficiency=1)
+ self.coalescence_efficiency = ConstEc(Ec=1.0)
+ self.breakup_efficiency = ConstEb(Eb=1.0)
+ self.breakup_fragmentation = AlwaysN(n=2)
+
+ self.freezing_singular = True
+ self.freezing_thaw = False
+ self.freezing_inp_spec = None
+
+ self.displacement_adaptive = displacement.DEFAULTS.adaptive
+ self.displacement_rtol = displacement.DEFAULTS.rtol
+ self.freezing_inp_frac = 1
+
+ self.n_sd_per_gridbox = n_sd_per_gridbox
+ self.radius = radius
+ self.kappa = kappa # TODO #441!
+
+ self.aerosol_radius_threshold = 0.5 * si.micrometre
+ self.drizzle_radius_threshold = 25 * si.micrometre
+
+ self.r_bins_edges = np.logspace(
+ np.log10(0.001 * si.micrometre),
+ np.log10(100 * si.micrometre),
+ 64,
+ endpoint=True,
+ )
+ self.T_bins_edges = np.linspace(const.T0 - 40, const.T0 - 20, 64, endpoint=True)
+
+ # TODO #599
+ n_bins_per_phase = 25
+ solid_phase_radii = (
+ np.linspace(-n_bins_per_phase, -1, n_bins_per_phase + 1) * si.um
+ )
+ liquid_phase_radii = (
+ np.linspace(0, n_bins_per_phase, n_bins_per_phase + 1) * si.um
+ )
+ self.terminal_velocity_radius_bin_edges = np.concatenate(
+ [solid_phase_radii, liquid_phase_radii]
+ )
+
+ self.output_interval = 1 * si.minute
+ self.spin_up_time = 0
+
+ self.particles_per_volume_STP = particles_per_volume_STP
+ self.spectrum_per_mass_of_dry_air = spectra.Lognormal(
+ norm_factor=self.particles_per_volume_STP / const.rho_STP,
+ m_mode=self.radius,
+ s_geom=1.4,
+ )
+
+ self.processes = {
+ "particle advection": True,
+ "fluid advection": True,
+ "coalescence": True,
+ "condensation": True,
+ "sedimentation": True,
+ "breakup": False,
+ "freezing": False,
+ }
+
+ self.mpdata_iters = 2
+ self.mpdata_iga = True
+ self.mpdata_fct = True
+ self.mpdata_tot = True
+
+ key_packages = [PySDM, PyMPDATA, numba, np, scipy]
+ try:
+ import ThrustRTC # pylint: disable=import-outside-toplevel
+
+ key_packages.append(ThrustRTC)
+ except: # pylint: disable=bare-except
+ pass
+ self.versions = {}
+ for pkg in key_packages:
+ try:
+ self.versions[pkg.__name__] = pkg.__version__
+ except AttributeError:
+ pass
+ self.versions = str(self.versions)
+
+ self.dt = None
+ self.simulation_time = None
+ self.grid = None
+ self.p0 = None
+ self.initial_water_vapour_mixing_ratio = None
+ self.th_std0 = None
+ self.size = None
+
+ @property
+ def n_steps(self) -> int:
+ return int(self.simulation_time / self.dt) # TODO #413
+
+ @property
+ def steps_per_output_interval(self) -> int:
+ return int(self.output_interval / self.dt)
+
+ @property
+ def n_spin_up(self) -> int:
+ return int(self.spin_up_time / self.dt)
+
+ @property
+ def output_steps(self) -> np.ndarray:
+ return np.arange(0, self.n_steps + 1, self.steps_per_output_interval)
+
+ @property
+ def n_sd(self):
+ return self.grid[0] * self.grid[1] * self.n_sd_per_gridbox
+
+ @property
+ def initial_vapour_mixing_ratio_profile(self):
+ return np.full(self.grid[-1], self.initial_water_vapour_mixing_ratio)
+
+ @property
+ def initial_dry_potential_temperature_profile(self):
+ return np.full(
+ self.grid[-1],
+ self.formulae.state_variable_triplet.th_dry(
+ self.th_std0, self.initial_water_vapour_mixing_ratio
+ ),
+ )
diff --git a/examples/PySDM_examples/seeding/hello_world.ipynb b/examples/PySDM_examples/seeding/hello_world.ipynb
index 0c800452ce..1a78d64a08 100644
--- a/examples/PySDM_examples/seeding/hello_world.ipynb
+++ b/examples/PySDM_examples/seeding/hello_world.ipynb
@@ -1,167 +1,27254 @@
{
- "metadata": {
- "kernelspec": {
- "name": "python3",
- "display_name": "Python 3 (ipykernel)",
- "language": "python"
- },
- "language_info": {
- "name": "python",
- "version": "3.10.14",
- "mimetype": "text/x-python",
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "pygments_lexer": "ipython3",
- "nbconvert_exporter": "python",
- "file_extension": ".py"
- },
- "vscode": {
- "interpreter": {
- "hash": "b14f34a08619f4a218d80d7380beed3f0c712c89ff93e7183219752d640ed427"
- }
- }
- },
- "nbformat_minor": 5,
- "nbformat": 4,
"cells": [
{
- "id": "b762c49560c8d6cf",
"cell_type": "markdown",
+ "id": "b762c49560c8d6cf",
+ "metadata": {},
"source": [
"[](https://github.com/open-atmos/PySDM/blob/main/examples/PySDM_examples/seeding/hello_world.ipynb)\n",
"[](https://mybinder.org/v2/gh/open-atmos/PySDM.git/main?urlpath=lab/tree/examples/PySDM_examples/seeding/hello_world.ipynb)\n",
"[](https://colab.research.google.com/github/open-atmos/PySDM/blob/main/examples/PySDM_examples/seeding/hello_world.ipynb)"
- ],
- "metadata": {}
+ ]
},
{
- "id": "45491a3c0a12c30a",
"cell_type": "markdown",
- "source": "TODO #1417",
- "metadata": {}
+ "id": "45491a3c0a12c30a",
+ "metadata": {},
+ "source": [
+ "## Super-droplet initialization as a function of time \n",
+ "\n",
+ "Parcel model example of \"initializing\" super-droplets at a prescribed rate per simulation timestep. Currently supported applications include cloud seeding and homogeneous ice nucleation."
+ ]
},
{
- "id": "70162914d9301075",
"cell_type": "code",
- "source": "import sys\nif 'google.colab' in sys.modules:\n !pip --quiet install open-atmos-jupyter-utils\n from open_atmos_jupyter_utils import pip_install_on_colab\n pip_install_on_colab('PySDM-examples')",
- "metadata": {
- "trusted": true
- },
+ "execution_count": null,
+ "id": "70162914d9301075",
+ "metadata": {},
"outputs": [],
- "execution_count": 1
+ "source": [
+ "import sys\n",
+ "if 'google.colab' in sys.modules:\n",
+ " !pip --quiet install open-atmos-jupyter-utils\n",
+ " from open_atmos_jupyter_utils import pip_install_on_colab\n",
+ " pip_install_on_colab('PySDM-examples')"
+ ]
},
{
- "id": "b1c0a002-7f76-4a4c-9e77-6aae747d7fab",
"cell_type": "code",
- "source": "import numpy as np\nfrom matplotlib import pyplot\nfrom PySDM import Formulae\nfrom PySDM.physics import in_unit, si\nfrom open_atmos_jupyter_utils import show_plot\nfrom PySDM_examples.seeding import Settings, Simulation",
+ "execution_count": 2,
+ "id": "b1c0a002-7f76-4a4c-9e77-6aae747d7fab",
"metadata": {
"ExecuteTime": {
"end_time": "2024-08-20T22:17:43.753049Z",
"start_time": "2024-08-20T22:17:40.315223Z"
- },
- "trusted": true
+ }
},
"outputs": [],
- "execution_count": 2
+ "source": [
+ "import numpy as np\n",
+ "from matplotlib import pyplot\n",
+ "from PySDM import Formulae\n",
+ "from PySDM.physics import in_unit, si\n",
+ "from open_atmos_jupyter_utils import show_plot\n",
+ "from PySDM_examples.seeding import Settings, Simulation"
+ ]
},
{
- "id": "1695dd83-b78b-46f3-a50c-47cc601c5920",
"cell_type": "code",
- "source": "n_sd_initial = 100\nn_sd_seeding = 100\nrain_water_radius_threshold = .1 * si.mm\nformulae = Formulae(seed=100)\n\nsimulations = {\n case: Simulation(\n Settings(\n n_sd_initial=n_sd_initial,\n n_sd_seeding=n_sd_seeding,\n rain_water_radius_threshold=rain_water_radius_threshold,\n super_droplet_injection_rate={\n 'seeding': lambda time: 1 if 5 * si.min < time < 10 * si.min else 0,\n 'no seeding': lambda _: 0,\n }[case],\n formulae=formulae,\n )\n )\n for case in ('seeding', 'no seeding')\n} ",
+ "execution_count": 3,
+ "id": "1695dd83-b78b-46f3-a50c-47cc601c5920",
"metadata": {
"ExecuteTime": {
"end_time": "2024-08-20T22:18:08.299964Z",
"start_time": "2024-08-20T22:17:43.765032Z"
- },
- "trusted": true
+ }
},
"outputs": [],
- "execution_count": 3
+ "source": [
+ "n_sd_initial = 100\n",
+ "n_sd_seeding = 100\n",
+ "rain_water_radius_threshold = .1 * si.mm\n",
+ "formulae = Formulae(seed=100)\n",
+ "\n",
+ "simulations = {\n",
+ " case: Simulation(\n",
+ " Settings(\n",
+ " n_sd_initial=n_sd_initial,\n",
+ " n_sd_seeding=n_sd_seeding,\n",
+ " rain_water_radius_threshold=rain_water_radius_threshold,\n",
+ " super_droplet_injection_rate={\n",
+ " 'seeding': lambda time: 1 if 5 * si.min < time < 10 * si.min else 0,\n",
+ " 'no seeding': lambda _: 0,\n",
+ " }[case],\n",
+ " formulae=formulae,\n",
+ " )\n",
+ " )\n",
+ " for case in ('seeding', 'no seeding')\n",
+ "} "
+ ]
},
{
- "id": "af543973-a177-4fe9-9ae5-b0fb8511323e",
"cell_type": "code",
- "source": "outputs = {case: simulations[case].run() for case in simulations}",
+ "execution_count": 4,
+ "id": "af543973-a177-4fe9-9ae5-b0fb8511323e",
"metadata": {
"ExecuteTime": {
"end_time": "2024-08-20T22:19:04.834137Z",
"start_time": "2024-08-20T22:18:08.367114Z"
- },
- "trusted": true
+ }
},
"outputs": [],
- "execution_count": 4
+ "source": [
+ "outputs = {case: simulations[case].run() for case in simulations}"
+ ]
},
{
- "id": "45bbaff8-d6ea-4685-a10b-2c4af167b89a",
"cell_type": "code",
- "source": "for case, output in outputs.items():\n time = output['products']['time']\n water_mass = output['attributes']['water mass']\n \n fig, axs = pyplot.subplot_mosaic(\n [['a', 'b', 'c']],\n sharey=True,\n figsize=(12, 4),\n tight_layout=True\n )\n \n for drop_id in range(water_mass.shape[1]):\n axs['a'].plot(\n in_unit(water_mass[:, drop_id], si.ng),\n in_unit(time, si.min),\n color=\"navy\" if np.isfinite(water_mass[0, drop_id]) else \"red\",\n linewidth=0.333,\n )\n axs['a'].set_ylabel(\"time [min]\")\n axs['a'].set_xlabel(\"drop mass [ng]\")\n axs['a'].grid()\n axs['a'].set_xscale(\"log\")\n axs['a'].set_xlim(1e-6, 1e8)\n\n axs['b'].plot(\n output['products']['sd_count'],\n in_unit(time, si.min),\n marker='.',\n color='green',\n )\n axs['b'].set_xlabel(\"super droplet count\")\n axs['b'].grid()\n axs['b'].set_xlim(95, 125)\n\n axs['c'].plot(\n in_unit(output['products']['rain water mixing ratio'], si.g/si.kg),\n in_unit(time, si.min),\n marker='.',\n color='green', \n )\n axs['c'].set_xlabel(f\"rain water mixing ratio [g/kg] (radius > {in_unit(rain_water_radius_threshold, si.mm)} mm)\")\n axs['c'].grid()\n axs['c'].set_xlim(0, 3)\n\n fig.suptitle(case)\n show_plot(f\"hello_world_{case.replace(' ', '_')}.pdf\")",
+ "execution_count": 5,
+ "id": "45bbaff8-d6ea-4685-a10b-2c4af167b89a",
"metadata": {
"ExecuteTime": {
"end_time": "2024-08-20T22:19:14.817471Z",
"start_time": "2024-08-20T22:19:04.867861Z"
- },
- "trusted": true
+ }
},
"outputs": [
{
- "output_type": "display_data",
"data": {
- "text/plain": "",
- "image/svg+xml": "\n\n\n"
+ "image/svg+xml": [
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "text/plain": [
+ ""
+ ]
},
- "metadata": {}
+ "metadata": {},
+ "output_type": "display_data"
},
{
- "output_type": "display_data",
"data": {
- "text/plain": "HBox(children=(HTML(value=\"./hello_world_seeding.pdf./hello_world_seeding.pdf",
- "image/svg+xml": "\n\n\n"
+ "image/svg+xml": [
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "text/plain": [
+ ""
+ ]
},
- "metadata": {}
+ "metadata": {},
+ "output_type": "display_data"
},
{
- "output_type": "display_data",
"data": {
- "text/plain": "HBox(children=(HTML(value=\"./hello_world_no_seeding.pdf…",
"application/vnd.jupyter.widget-view+json": {
+ "model_id": "1ad47d2f219c407fb7bed394ac7eb423",
"version_major": 2,
- "version_minor": 0,
- "model_id": "34b4c0c71c8b4094b93e780d2a928b35"
- }
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HBox(children=(HTML(value=\"./hello_world_no_seeding.pdf…"
+ ]
},
- "metadata": {}
+ "metadata": {},
+ "output_type": "display_data"
}
],
- "execution_count": 5
+ "source": [
+ "for case, output in outputs.items():\n",
+ " time = output['products']['time']\n",
+ " water_mass = output['attributes']['water mass']\n",
+ " \n",
+ " fig, axs = pyplot.subplot_mosaic(\n",
+ " [['a', 'b', 'c']],\n",
+ " sharey=True,\n",
+ " figsize=(12, 4),\n",
+ " tight_layout=True\n",
+ " )\n",
+ " \n",
+ " for drop_id in range(water_mass.shape[1]):\n",
+ " axs['a'].plot(\n",
+ " in_unit(water_mass[:, drop_id], si.ng),\n",
+ " in_unit(time, si.min),\n",
+ " color=\"navy\" if np.isfinite(water_mass[0, drop_id]) else \"red\",\n",
+ " linewidth=0.333,\n",
+ " )\n",
+ " axs['a'].set_ylabel(\"time [min]\")\n",
+ " axs['a'].set_xlabel(\"drop mass [ng]\")\n",
+ " axs['a'].grid()\n",
+ " axs['a'].set_xscale(\"log\")\n",
+ " axs['a'].set_xlim(1e-6, 1e8)\n",
+ "\n",
+ " axs['b'].plot(\n",
+ " output['products']['sd_count'],\n",
+ " in_unit(time, si.min),\n",
+ " marker='.',\n",
+ " color='green',\n",
+ " )\n",
+ " axs['b'].set_xlabel(\"super droplet count\")\n",
+ " axs['b'].grid()\n",
+ " axs['b'].set_xlim(95, 125)\n",
+ "\n",
+ " axs['c'].plot(\n",
+ " in_unit(output['products']['rain water mixing ratio'], si.g/si.kg),\n",
+ " in_unit(time, si.min),\n",
+ " marker='.',\n",
+ " color='green', \n",
+ " )\n",
+ " axs['c'].set_xlabel(f\"rain water mixing ratio [g/kg] (radius > {in_unit(rain_water_radius_threshold, si.mm)} mm)\")\n",
+ " axs['c'].grid()\n",
+ " axs['c'].set_xlim(0, 3)\n",
+ "\n",
+ " fig.suptitle(case)\n",
+ " show_plot(f\"hello_world_{case.replace(' ', '_')}.pdf\")"
+ ]
},
{
- "id": "a4742eaf-dccb-48b7-9138-74ae5c579cd8",
"cell_type": "code",
- "source": "",
+ "execution_count": null,
+ "id": "a4742eaf-dccb-48b7-9138-74ae5c579cd8",
"metadata": {
"ExecuteTime": {
"end_time": "2024-08-20T22:19:14.881814Z",
"start_time": "2024-08-20T22:19:14.872933Z"
- },
- "trusted": true
+ }
},
"outputs": [],
- "execution_count": null
+ "source": []
}
- ]
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python [conda env:pysdm_seeding]",
+ "language": "python",
+ "name": "conda-env-pysdm_seeding-py"
+ },
+ "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.11.12"
+ },
+ "vscode": {
+ "interpreter": {
+ "hash": "b14f34a08619f4a218d80d7380beed3f0c712c89ff93e7183219752d640ed427"
+ }
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
}
diff --git a/examples/PySDM_examples/seeding/kinematic_1d_seeding.py b/examples/PySDM_examples/seeding/kinematic_1d_seeding.py
new file mode 100644
index 0000000000..ec8795abe0
--- /dev/null
+++ b/examples/PySDM_examples/seeding/kinematic_1d_seeding.py
@@ -0,0 +1,92 @@
+"""
+Single-column time-varying-updraft framework with moisture advection handled by
+[PyMPDATA](http://github.com/open-atmos/PyMPDATA/)
+"""
+
+import numpy as np
+
+from PySDM.environments.impl.moist import Moist
+
+from PySDM.impl import arakawa_c
+from PySDM.initialisation.equilibrate_wet_radii import equilibrate_wet_radii
+from PySDM.environments.impl import register_environment
+
+
+@register_environment()
+class Kinematic1D(Moist):
+ def __init__(self, *, dt, mesh, thd_of_z, rhod_of_z, z0=0):
+ super().__init__(dt, mesh, [])
+ self.thd0 = thd_of_z(z0 + mesh.dz * arakawa_c.z_scalar_coord(mesh.grid))
+ self.rhod = rhod_of_z(z0 + mesh.dz * arakawa_c.z_scalar_coord(mesh.grid))
+ self.formulae = None
+
+ def register(self, builder):
+ super().register(builder)
+ self.formulae = builder.particulator.formulae
+ rhod = builder.particulator.Storage.from_ndarray(self.rhod)
+ self._values["current"]["rhod"] = rhod
+ self._tmp["rhod"] = rhod
+
+ def get_water_vapour_mixing_ratio(self) -> np.ndarray:
+ return self.particulator.dynamics["EulerianAdvection"].solvers.advectee
+
+ def get_thd(self) -> np.ndarray:
+ return self.thd0
+
+ def init_attributes(
+ self,
+ *,
+ spatial_discretisation,
+ spectral_discretisation,
+ kappa,
+ n_sd,
+ z_part=None,
+ collisions_only=False
+ ):
+ super().sync()
+ self.notify()
+
+ attributes = {}
+ with np.errstate(all="raise"):
+ positions = spatial_discretisation.sample(
+ backend=self.particulator.backend,
+ grid=self.mesh.grid,
+ n_sd=n_sd,
+ z_part=z_part,
+ )
+ (
+ attributes["cell id"],
+ attributes["cell origin"],
+ attributes["position in cell"],
+ ) = self.mesh.cellular_attributes(positions)
+
+ if collisions_only:
+ v_wet, n_per_kg = spectral_discretisation.sample(
+ backend=self.particulator.backend, n_sd=n_sd
+ )
+ attributes["volume"] = v_wet
+ else:
+ r_dry, n_per_kg = spectral_discretisation.sample(
+ backend=self.particulator.backend, n_sd=n_sd
+ )
+ attributes["dry volume"] = self.formulae.trivia.volume(radius=r_dry)
+ attributes["kappa times dry volume"] = attributes["dry volume"] * kappa
+ r_wet = equilibrate_wet_radii(
+ r_dry=r_dry,
+ environment=self,
+ cell_id=attributes["cell id"],
+ kappa_times_dry_volume=attributes["kappa times dry volume"],
+ )
+ attributes["volume"] = self.formulae.trivia.volume(radius=r_wet)
+
+ rhod = self["rhod"].to_ndarray()
+ cell_id = attributes["cell id"]
+ domain_volume = np.prod(np.array(self.mesh.size))
+
+ attributes["multiplicity"] = n_per_kg * rhod[cell_id] * domain_volume
+
+ return attributes
+
+ @property
+ def dv(self):
+ return self.mesh.dv
diff --git a/examples/PySDM_examples/seeding/seeding_no_collisions.ipynb b/examples/PySDM_examples/seeding/seeding_no_collisions.ipynb
index b8ac41c915..c3fbffec06 100644
--- a/examples/PySDM_examples/seeding/seeding_no_collisions.ipynb
+++ b/examples/PySDM_examples/seeding/seeding_no_collisions.ipynb
@@ -1,119 +1,2535 @@
{
- "metadata": {
- "kernelspec": {
- "name": "python3",
- "display_name": "Python 3 (ipykernel)",
- "language": "python"
- },
- "language_info": {
- "name": "python",
- "version": "3.10.14",
- "mimetype": "text/x-python",
- "codemirror_mode": {
- "name": "ipython",
- "version": 3
- },
- "pygments_lexer": "ipython3",
- "nbconvert_exporter": "python",
- "file_extension": ".py"
- },
- "vscode": {
- "interpreter": {
- "hash": "b14f34a08619f4a218d80d7380beed3f0c712c89ff93e7183219752d640ed427"
- }
- }
- },
- "nbformat_minor": 4,
- "nbformat": 4,
"cells": [
{
"cell_type": "markdown",
+ "metadata": {},
"source": [
"[](https://github.com/open-atmos/PySDM/blob/main/examples/PySDM_examples/seeding/seeding_no_collisions.ipynb)\n",
"[](https://mybinder.org/v2/gh/open-atmos/PySDM.git/main?urlpath=lab/tree/examples/PySDM_examples/seeding/seeding_no_collisions.ipynb)\n",
"[](https://colab.research.google.com/github/open-atmos/PySDM/blob/main/examples/PySDM_examples/seeding/seeding_no_collisions.ipynb)"
- ],
- "metadata": {}
+ ]
},
{
"cell_type": "markdown",
- "source": "TODO #1417",
- "metadata": {}
+ "metadata": {},
+ "source": [
+ "## Super-droplet initialization as a function of time \n",
+ "\n",
+ "Same as `hello_world.ipynb` but with no collisions enabled"
+ ]
},
{
"cell_type": "code",
- "source": "import sys\nif 'google.colab' in sys.modules:\n !pip --quiet install open-atmos-jupyter-utils\n from open_atmos_jupyter_utils import pip_install_on_colab\n pip_install_on_colab('PySDM-examples')",
+ "execution_count": 1,
"metadata": {
"trusted": true
},
"outputs": [],
- "execution_count": 1
+ "source": [
+ "import sys\n",
+ "if 'google.colab' in sys.modules:\n",
+ " !pip --quiet install open-atmos-jupyter-utils\n",
+ " from open_atmos_jupyter_utils import pip_install_on_colab\n",
+ " pip_install_on_colab('PySDM-examples')"
+ ]
},
{
"cell_type": "code",
- "source": "import numpy as np\nfrom matplotlib import pyplot\nfrom PySDM import Formulae\nfrom PySDM.physics import in_unit, si\nfrom open_atmos_jupyter_utils import show_plot\nfrom PySDM_examples.seeding import Settings, Simulation",
+ "execution_count": 2,
"metadata": {
"trusted": true
},
"outputs": [],
- "execution_count": 2
+ "source": [
+ "import numpy as np\n",
+ "from matplotlib import pyplot\n",
+ "from PySDM import Formulae\n",
+ "from PySDM.physics import in_unit, si\n",
+ "from open_atmos_jupyter_utils import show_plot\n",
+ "from PySDM_examples.seeding import Settings, Simulation"
+ ]
},
{
"cell_type": "code",
- "source": "n_sd_initial = 100\nn_sd_seeding = 100\nformulae = Formulae(seed=100)\n\nsimulations = {\n case: Simulation(\n Settings(\n n_sd_initial=n_sd_initial,\n n_sd_seeding=n_sd_seeding,\n rain_water_radius_threshold=0 * si.mm,\n super_droplet_injection_rate={\n 'seeding': lambda time: 1 if 15 * si.min < time < 20 * si.min else 0,\n 'no seeding': lambda _: 0,\n }[case],\n formulae=formulae,\n enable_collisions=False,\n )\n )\n for case in ('seeding', 'no seeding')\n} ",
+ "execution_count": 3,
"metadata": {
"trusted": true
},
"outputs": [],
- "execution_count": 3
+ "source": [
+ "n_sd_initial = 100\n",
+ "n_sd_seeding = 100\n",
+ "formulae = Formulae(seed=100)\n",
+ "\n",
+ "simulations = {\n",
+ " case: Simulation(\n",
+ " Settings(\n",
+ " n_sd_initial=n_sd_initial,\n",
+ " n_sd_seeding=n_sd_seeding,\n",
+ " rain_water_radius_threshold=0 * si.mm,\n",
+ " super_droplet_injection_rate={\n",
+ " 'seeding': lambda time: 1 if 15 * si.min < time < 20 * si.min else 0,\n",
+ " 'no seeding': lambda _: 0,\n",
+ " }[case],\n",
+ " formulae=formulae,\n",
+ " enable_collisions=False,\n",
+ " )\n",
+ " )\n",
+ " for case in ('seeding', 'no seeding')\n",
+ "} "
+ ]
},
{
"cell_type": "code",
- "source": "outputs = {case: simulations[case].run() for case in simulations}",
+ "execution_count": 4,
"metadata": {
"trusted": true
},
"outputs": [],
- "execution_count": 4
+ "source": [
+ "outputs = {case: simulations[case].run() for case in simulations}"
+ ]
},
{
"cell_type": "code",
- "source": "fig, axs = pyplot.subplot_mosaic(\n [['a', 'b', 'c']],\n sharey=True,\n figsize=(12, 4),\n tight_layout=True\n )\n\nfor case, output in outputs.items():\n time = output['products']['time']\n idx = np.where(time > 10 * si.min)[0]\n\n axs['a'].plot(\n output['products']['sd_count'][idx],\n in_unit(time[idx], si.min),\n marker='.',\n label=case,\n )\n axs['a'].set_xlabel(\"super droplet count\")\n axs['a'].set_ylabel(\"height [m]\")\n axs['a'].axhspan(15, 20, color=\"grey\", alpha=0.2)\n\n axs['b'].plot(\n output['products']['r_eff'][idx],\n in_unit(time[idx], si.min),\n marker='.',\n )\n axs['b'].set_xlabel(\"r_eff [um]\")\n axs['b'].axhspan(15, 20, color=\"grey\", alpha=0.2)\n\n axs['c'].plot(\n output['products']['n_drop'][idx],\n in_unit(time[idx], si.min),\n marker='.',\n )\n axs['c'].set_xlabel(\"n_drop [cm-3]\")\n axs['c'].axhspan(15, 20, color=\"grey\", alpha=0.2)\n\naxs['a'].legend()\nfig.suptitle(\"parcel with no collisions\")\nshow_plot(\"seeding_no_collisions.pdf\")",
+ "execution_count": 5,
"metadata": {
"trusted": true
},
"outputs": [
{
- "output_type": "display_data",
"data": {
- "text/plain": "",
- "image/svg+xml": "\n\n\n"
+ "image/svg+xml": [
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "text/plain": [
+ ""
+ ]
},
- "metadata": {}
+ "metadata": {},
+ "output_type": "display_data"
},
{
- "output_type": "display_data",
"data": {
- "text/plain": "HBox(children=(HTML(value=\"./seeding_no_collisions.pdf…",
"application/vnd.jupyter.widget-view+json": {
+ "model_id": "e88a10c0775749ef8dd99a174df2878c",
"version_major": 2,
- "version_minor": 0,
- "model_id": "e88a10c0775749ef8dd99a174df2878c"
- }
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HBox(children=(HTML(value=\"./seeding_no_collisions.pdf…"
+ ]
},
- "metadata": {}
+ "metadata": {},
+ "output_type": "display_data"
}
],
- "execution_count": 5
+ "source": [
+ "fig, axs = pyplot.subplot_mosaic(\n",
+ " [['a', 'b', 'c']],\n",
+ " sharey=True,\n",
+ " figsize=(12, 4),\n",
+ " tight_layout=True\n",
+ " )\n",
+ "\n",
+ "for case, output in outputs.items():\n",
+ " time = output['products']['time']\n",
+ " idx = np.where(time > 10 * si.min)[0]\n",
+ "\n",
+ " axs['a'].plot(\n",
+ " output['products']['sd_count'][idx],\n",
+ " in_unit(time[idx], si.min),\n",
+ " marker='.',\n",
+ " label=case,\n",
+ " )\n",
+ " axs['a'].set_xlabel(\"super droplet count\")\n",
+ " axs['a'].set_ylabel(\"height [m]\")\n",
+ " axs['a'].axhspan(15, 20, color=\"grey\", alpha=0.2)\n",
+ "\n",
+ " axs['b'].plot(\n",
+ " output['products']['r_eff'][idx],\n",
+ " in_unit(time[idx], si.min),\n",
+ " marker='.',\n",
+ " )\n",
+ " axs['b'].set_xlabel(\"r_eff [um]\")\n",
+ " axs['b'].axhspan(15, 20, color=\"grey\", alpha=0.2)\n",
+ "\n",
+ " axs['c'].plot(\n",
+ " output['products']['n_drop'][idx],\n",
+ " in_unit(time[idx], si.min),\n",
+ " marker='.',\n",
+ " )\n",
+ " axs['c'].set_xlabel(\"n_drop [cm-3]\")\n",
+ " axs['c'].axhspan(15, 20, color=\"grey\", alpha=0.2)\n",
+ "\n",
+ "axs['a'].legend()\n",
+ "fig.suptitle(\"parcel with no collisions\")\n",
+ "show_plot(\"seeding_no_collisions.pdf\")"
+ ]
},
{
"cell_type": "code",
- "source": "",
+ "execution_count": null,
"metadata": {
"trusted": true
},
"outputs": [],
- "execution_count": null
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "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.10.14"
+ },
+ "vscode": {
+ "interpreter": {
+ "hash": "b14f34a08619f4a218d80d7380beed3f0c712c89ff93e7183219752d640ed427"
+ }
}
- ]
+ },
+ "nbformat": 4,
+ "nbformat_minor": 4
}
diff --git a/examples/PySDM_examples/seeding/seeding_utils.py b/examples/PySDM_examples/seeding/seeding_utils.py
new file mode 100644
index 0000000000..e428ecdbe7
--- /dev/null
+++ b/examples/PySDM_examples/seeding/seeding_utils.py
@@ -0,0 +1,46 @@
+import numpy as np
+import xarray
+from tqdm import tqdm
+
+
+def sav_as_xarr(field_name, settings, simulation):
+
+ temp_arr = []
+ for step in tqdm(settings.output_steps):
+ temp_arr.append(simulation.storage.load(field_name, step))
+
+ t_arr = np.linspace(
+ 0,
+ settings.simulation_time * 10**9,
+ int(settings.simulation_time / settings.output_interval) + 1,
+ dtype="timedelta64[ns]",
+ )
+ min_bin_z = settings.size[0] / settings.grid[0] / 2
+ min_bin_x = settings.size[1] / settings.grid[1] / 2
+ z_arr = np.linspace(
+ min_bin_z, settings.size[0] - min_bin_z, settings.grid[0], dtype=float
+ )
+ x_arr = np.linspace(
+ min_bin_x, settings.size[1] - min_bin_x, settings.grid[1], dtype=float
+ )
+
+ temp_xarr = xarray.DataArray(
+ data=np.transpose(np.array(temp_arr), (0, 2, 1)),
+ dims=["T", "Z", "X"],
+ coords=dict(
+ T=(
+ ["T"],
+ t_arr,
+ ),
+ Z=(
+ ["Z"],
+ z_arr,
+ ),
+ X=(
+ ["X"],
+ x_arr,
+ ),
+ ),
+ )
+
+ return temp_xarr
diff --git a/examples/PySDM_examples/seeding/settings_1d.py b/examples/PySDM_examples/seeding/settings_1d.py
new file mode 100644
index 0000000000..68bba793e4
--- /dev/null
+++ b/examples/PySDM_examples/seeding/settings_1d.py
@@ -0,0 +1,208 @@
+from typing import Iterable, Optional
+from pystrict import strict
+
+import numpy as np
+from numdifftools import Derivative
+from scipy.integrate import solve_ivp
+from scipy.interpolate import interp1d
+from PySDM import Formulae
+
+from PySDM.dynamics import condensation
+from PySDM.initialisation import spectra
+from PySDM.physics import si
+from PySDM.dynamics.collisions.collision_kernels import Geometric
+
+
+# @strict
+class Settings:
+ def __dir__(self) -> Iterable[str]:
+ return (
+ "n_sd_per_gridbox",
+ "n_sd_seeding",
+ "super_droplet_injection_rate",
+ "p0",
+ "radius",
+ "kappa",
+ "rho_times_w_1",
+ "particles_per_volume_STP",
+ "seed_particles_per_volume_STP",
+ "seed_radius",
+ "seed_kappa",
+ "dt",
+ "dz",
+ "precip",
+ "z_max",
+ "z_part",
+ "t_max",
+ "cloud_water_radius_range",
+ "rain_water_radius_range",
+ "r_bins_edges_dry",
+ "r_bins_edges",
+ )
+
+ def __init__(
+ self,
+ *,
+ n_sd_per_gridbox: int,
+ n_sd_seeding: Optional[int] = None,
+ super_droplet_injection_rate: Optional[callable] = None,
+ p0: float = 1007 * si.hPa, # as used in Olesik et al. 2022 (GMD)
+ radius: float = 0.04 * si.um,
+ kappa: float = 1,
+ rho_times_w_1: float = 2 * si.m / si.s * si.kg / si.m**3,
+ particles_per_volume_STP: int = 50 / si.cm**3,
+ seed_particles_per_volume_STP: int = 0 / si.cm**3,
+ seed_radius: float = 1 * si.um,
+ seed_kappa: float = 0.8,
+ dt: float = 1 * si.s,
+ dz: float = 25 * si.m,
+ z_max: float = 3000 * si.m,
+ z_part: Optional[tuple] = None,
+ t_max: float = 60 * si.minutes,
+ precip: bool = True,
+ enable_condensation: bool = True,
+ formulae: Formulae = None,
+ save_spec_and_attr_times=(),
+ collision_kernel=None,
+ ):
+ self.formulae = formulae or Formulae()
+ self.n_sd_per_gridbox = n_sd_per_gridbox
+ self.n_sd_seeding = n_sd_seeding
+ self.super_droplet_injection_rate = super_droplet_injection_rate
+ self.p0 = p0
+ self.kappa = kappa
+ self.rho_times_w_1 = rho_times_w_1
+ self.particles_per_volume_STP = particles_per_volume_STP
+ self.seed_particles_per_volume_STP = seed_particles_per_volume_STP
+ self.seed_radius = seed_radius
+ self.seed_kappa = seed_kappa
+ self.dt = dt
+ self.dz = dz
+ self.precip = precip
+ self.enable_condensation = enable_condensation
+ self.z_part = z_part
+ self.z_max = z_max
+ self.t_max = t_max
+ self.collision_kernel = collision_kernel or Geometric(collection_efficiency=1)
+
+ t_1 = 600 * si.s
+ self.rho_times_w = lambda t: (
+ rho_times_w_1 * np.sin(np.pi * t / t_1) if t < t_1 else 0
+ )
+ apprx_w1 = rho_times_w_1 / self.formulae.constants.rho_STP
+ self.particle_reservoir_depth = (
+ (2 * apprx_w1 * t_1 / np.pi) // self.dz + 1
+ ) * self.dz
+
+ self.wet_radius_spectrum_per_mass_of_dry_air = spectra.Lognormal(
+ norm_factor=particles_per_volume_STP / self.formulae.constants.rho_STP,
+ m_mode=radius,
+ s_geom=1.4,
+ )
+
+ self._th = interp1d(
+ (0.0 * si.m, 740.0 * si.m, 3260.00 * si.m),
+ (297.9 * si.K, 297.9 * si.K, 312.66 * si.K),
+ fill_value="extrapolate",
+ )
+
+ self.water_vapour_mixing_ratio = interp1d(
+ (-max(self.particle_reservoir_depth, 1), 0, 740, 3260),
+ (0.015, 0.015, 0.0138, 0.0024),
+ fill_value="extrapolate",
+ )
+
+ self.thd = (
+ lambda z_above_reservoir: self.formulae.state_variable_triplet.th_dry(
+ self._th(z_above_reservoir),
+ self.water_vapour_mixing_ratio(z_above_reservoir),
+ )
+ )
+
+ self.rhod0 = self.formulae.state_variable_triplet.rho_d(
+ p=p0,
+ water_vapour_mixing_ratio=self.water_vapour_mixing_ratio(0 * si.m),
+ theta_std=self._th(0 * si.m),
+ )
+
+ def drhod_dz(z_above_reservoir, rhod):
+ if z_above_reservoir < 0:
+ return 0
+ water_vapour_mixing_ratio = self.water_vapour_mixing_ratio(
+ z_above_reservoir
+ )
+ d_water_vapour_mixing_ratio__dz = Derivative(
+ self.water_vapour_mixing_ratio
+ )(z_above_reservoir)
+ T = self.formulae.state_variable_triplet.T(
+ rhod[0], self.thd(z_above_reservoir)
+ )
+ p = self.formulae.state_variable_triplet.p(
+ rhod[0], T, water_vapour_mixing_ratio
+ )
+ lv = self.formulae.latent_heat_vapourisation.lv(T)
+ return self.formulae.hydrostatics.drho_dz(
+ p, T, water_vapour_mixing_ratio, lv
+ ) / (
+ 1 + water_vapour_mixing_ratio
+ ) - rhod * d_water_vapour_mixing_ratio__dz / (
+ 1 + water_vapour_mixing_ratio
+ )
+
+ z_span = (-self.particle_reservoir_depth, self.z_max)
+ z_points = np.linspace(*z_span, 2 * self.nz + 1)
+ rhod_solution = solve_ivp(
+ fun=drhod_dz,
+ t_span=z_span,
+ y0=np.asarray((self.rhod0,)),
+ t_eval=z_points,
+ max_step=dz / 2,
+ )
+ assert rhod_solution.success
+ self.rhod = interp1d(z_points, rhod_solution.y[0])
+
+ self.mpdata_settings = {"n_iters": 3, "iga": True, "fct": True, "tot": True}
+ self.condensation_rtol_x = condensation.DEFAULTS.rtol_x
+ self.condensation_rtol_thd = condensation.DEFAULTS.rtol_thd
+ self.condensation_adaptive = True
+ self.condensation_update_thd = False
+ self.coalescence_adaptive = True
+
+ self.number_of_bins = 100
+ self.r_bins_edges_dry = np.logspace(
+ np.log10(0.001 * si.um),
+ np.log10(1 * si.um),
+ self.number_of_bins + 1,
+ endpoint=True,
+ )
+ self.r_bins_edges = np.logspace(
+ np.log10(0.001 * si.um),
+ np.log10(10 * si.mm),
+ self.number_of_bins + 1,
+ endpoint=True,
+ )
+ self.cloud_water_radius_range = [1 * si.um, 50 * si.um]
+ self.cloud_water_radius_range_igel = [1 * si.um, 25 * si.um]
+ self.rain_water_radius_range = [50 * si.um, np.inf * si.um]
+ self.rain_water_radius_range_igel = [25 * si.um, np.inf * si.um]
+ self.save_spec_and_attr_times = save_spec_and_attr_times
+
+ @property
+ def n_sd(self):
+ return self.nz * self.n_sd_per_gridbox
+
+ @property
+ def nz(self):
+ assert (
+ self.particle_reservoir_depth / self.dz
+ == self.particle_reservoir_depth // self.dz
+ )
+ nz = (self.z_max + self.particle_reservoir_depth) / self.dz
+ assert nz == int(nz)
+ return int(nz)
+
+ @property
+ def nt(self):
+ nt = self.t_max / self.dt
+ assert nt == int(nt)
+ return int(nt)
diff --git a/examples/PySDM_examples/seeding/settings_2d.py b/examples/PySDM_examples/seeding/settings_2d.py
new file mode 100644
index 0000000000..d24633b750
--- /dev/null
+++ b/examples/PySDM_examples/seeding/settings_2d.py
@@ -0,0 +1,96 @@
+from typing import Dict, Iterable, Optional
+import numpy as np
+from .strato_cumulus_seeding import StratoCumulus
+
+from PySDM import Formulae
+from PySDM.dynamics.collisions.breakup_efficiencies import ConstEb
+from PySDM.dynamics.collisions.breakup_fragmentations import Gaussian
+from PySDM.dynamics.collisions.coalescence_efficiencies import ConstEc
+from PySDM.physics import si
+
+
+class Settings(StratoCumulus):
+ def __dir__(self) -> Iterable[str]:
+ return (
+ "dt",
+ "grid",
+ "size",
+ "n_spin_up",
+ "versions",
+ "steps_per_output_interval",
+ "formulae",
+ "initial_dry_potential_temperature_profile",
+ "initial_vapour_mixing_ratio_profile",
+ "rhod_w_max",
+ "particles_per_volume_STP",
+ "n_sd_per_gridbox",
+ "radius",
+ "kappa",
+ "z_part",
+ "x_part",
+ "simulation_time",
+ "spin_up_time",
+ "n_sd_seeding",
+ "seed_particles_per_volume_STP",
+ "super_droplet_injection_rate",
+ "seed_radius",
+ "seed_kappa",
+ )
+
+ def __init__(
+ self,
+ formulae=None,
+ rhod_w_max: float = 0.6 * si.metres / si.seconds * (si.kilogram / si.metre**3),
+ grid: tuple = None,
+ size: tuple = None,
+ particles_per_volume_STP: int = 50 / si.cm**3,
+ n_sd_per_gridbox: int = 32,
+ radius: float = 0.04 * si.micrometre,
+ kappa: float = 0.3,
+ z_part: Optional[tuple] = None,
+ x_part: Optional[tuple] = None,
+ simulation_time: float = None,
+ dt: float = None,
+ spin_up_time: float = None,
+ n_sd_seeding: Optional[int] = 0,
+ seed_particles_per_volume_STP: int = 0 / si.cm**3,
+ super_droplet_injection_rate: Optional[callable] = None,
+ seed_radius: float = 1 * si.micrometre,
+ seed_kappa: float = 0.8,
+ ):
+ super().__init__(
+ formulae or Formulae(),
+ rhod_w_max=rhod_w_max,
+ particles_per_volume_STP=particles_per_volume_STP,
+ n_sd_per_gridbox=n_sd_per_gridbox,
+ radius=radius,
+ kappa=kappa,
+ )
+
+ self.grid = grid
+ self.size = size
+ self.particles_per_volume_STP = particles_per_volume_STP
+ self.n_sd_per_gridbox = n_sd_per_gridbox
+ self.radius = radius
+ self.kappa = kappa
+ self.z_part = z_part
+ self.x_part = x_part
+ self.seed_radius = seed_radius
+ self.seed_kappa = seed_kappa
+ self.n_sd_seeding = n_sd_seeding
+ self.seed_particles_per_volume_STP = seed_particles_per_volume_STP
+ self.super_droplet_injection_rate = super_droplet_injection_rate
+
+ # output steps
+ self.simulation_time = simulation_time # 90 * si.minute
+ self.dt = dt # 5 * si.second
+ self.spin_up_time = spin_up_time # 1 * si.hour
+
+ # additional breakup dynamics
+ mu_r = 10 * si.um
+ mu = 4 / 3 * np.pi * mu_r**3
+ sigma = mu / 2.5
+ vmin = mu / 1000
+ self.coalescence_efficiency = ConstEc(Ec=0.95)
+ self.breakup_efficiency = ConstEb(Eb=1.0)
+ self.breakup_fragmentation = Gaussian(mu=mu, sigma=sigma, vmin=vmin, nfmax=10)
diff --git a/examples/PySDM_examples/seeding/simulation_1d.py b/examples/PySDM_examples/seeding/simulation_1d.py
new file mode 100644
index 0000000000..829c14c32e
--- /dev/null
+++ b/examples/PySDM_examples/seeding/simulation_1d.py
@@ -0,0 +1,336 @@
+from collections import namedtuple
+
+import numpy as np
+from PySDM_examples.Shipway_and_Hill_2012.mpdata_1d import MPDATA_1D
+
+import PySDM.products as PySDM_products
+from PySDM import Builder
+from PySDM.backends import CPU
+from PySDM.dynamics import (
+ AmbientThermodynamics,
+ Coalescence,
+ Condensation,
+ Displacement,
+ EulerianAdvection,
+ Seeding,
+)
+from PySDM_examples.seeding.kinematic_1d_seeding import Kinematic1D
+from PySDM.impl.mesh import Mesh
+from PySDM.initialisation import spectra
+from PySDM.initialisation.sampling import spatial_sampling, spectral_sampling
+from PySDM.initialisation.equilibrate_wet_radii import equilibrate_wet_radii
+from PySDM.physics import si
+
+
+class Simulation:
+ def __init__(self, settings, backend=CPU):
+ self.nt = settings.nt
+ self.z0 = -settings.particle_reservoir_depth
+ self.save_spec_and_attr_times = settings.save_spec_and_attr_times
+ self.number_of_bins = settings.number_of_bins
+
+ self.particulator = None
+ self.output_attributes = None
+ self.output_products = None
+
+ self.mesh = Mesh(
+ grid=(settings.nz,),
+ size=(settings.z_max + settings.particle_reservoir_depth,),
+ )
+
+ env = Kinematic1D(
+ dt=settings.dt,
+ mesh=self.mesh,
+ thd_of_z=settings.thd,
+ rhod_of_z=settings.rhod,
+ z0=-settings.particle_reservoir_depth,
+ )
+
+ def zZ_to_z_above_reservoir(zZ):
+ z_above_reservoir = zZ * (settings.nz * settings.dz) + self.z0
+ return z_above_reservoir
+
+ mpdata = MPDATA_1D(
+ nz=settings.nz,
+ dt=settings.dt,
+ mpdata_settings=settings.mpdata_settings,
+ advector_of_t=lambda t: settings.rho_times_w(t) * settings.dt / settings.dz,
+ advectee_of_zZ_at_t0=lambda zZ: settings.water_vapour_mixing_ratio(
+ zZ_to_z_above_reservoir(zZ)
+ ),
+ g_factor_of_zZ=lambda zZ: settings.rhod(zZ_to_z_above_reservoir(zZ)),
+ )
+
+ _extra_nz = settings.particle_reservoir_depth // settings.dz
+ _z_vec = settings.dz * np.linspace(
+ -_extra_nz, settings.nz - _extra_nz, settings.nz + 1
+ )
+ self.g_factor_vec = settings.rhod(_z_vec)
+
+ self.builder = Builder(
+ n_sd=settings.n_sd + settings.n_sd_seeding,
+ backend=backend(formulae=settings.formulae),
+ environment=env,
+ )
+ self.builder.add_dynamic(AmbientThermodynamics())
+
+ if settings.enable_condensation:
+ self.builder.add_dynamic(
+ Condensation(
+ adaptive=settings.condensation_adaptive,
+ rtol_thd=settings.condensation_rtol_thd,
+ rtol_x=settings.condensation_rtol_x,
+ update_thd=settings.condensation_update_thd,
+ )
+ )
+ self.builder.add_dynamic(EulerianAdvection(mpdata))
+
+ self.products = []
+ if settings.precip:
+ self.add_collision_dynamic(self.builder, settings, self.products)
+
+ displacement = Displacement(
+ enable_sedimentation=settings.precip,
+ precipitation_counting_level_index=int(
+ settings.particle_reservoir_depth / settings.dz
+ ),
+ )
+ self.builder.add_dynamic(displacement)
+
+ self.attributes = self.builder.particulator.environment.init_attributes(
+ spatial_discretisation=spatial_sampling.Pseudorandom(),
+ spectral_discretisation=spectral_sampling.ConstantMultiplicity(
+ spectrum=settings.wet_radius_spectrum_per_mass_of_dry_air
+ ),
+ kappa=settings.kappa,
+ collisions_only=not settings.enable_condensation,
+ n_sd=settings.n_sd, # only initialize with background SDs
+ z_part=settings.z_part,
+ )
+ r_dry, n_in_dv = spectral_sampling.ConstantMultiplicity(
+ spectra.Lognormal(
+ norm_factor=(
+ settings.seed_particles_per_volume_STP
+ / settings.formulae.constants.rho_STP
+ ),
+ m_mode=settings.seed_radius,
+ s_geom=1.4,
+ )
+ ).sample(
+ n_sd=settings.n_sd_seeding
+ ) # TODO #1387: does not have to be the same?
+ v_dry = settings.formulae.trivia.volume(radius=r_dry)
+ self.seeded_particle_multiplicity = n_in_dv * np.prod(np.array(self.mesh.size))
+
+ positions = spatial_sampling.Pseudorandom().sample(
+ backend=backend(formulae=settings.formulae),
+ grid=self.mesh.grid,
+ n_sd=settings.n_sd_seeding,
+ )
+ cell_id, cell_origin, pos_cell = self.mesh.cellular_attributes(positions)
+
+ r_wet = equilibrate_wet_radii(
+ r_dry=settings.formulae.trivia.radius(volume=v_dry),
+ environment=self.builder.particulator.environment,
+ cell_id=cell_id,
+ kappa_times_dry_volume=settings.seed_kappa
+ * v_dry, # include kappa argument for seeds
+ )
+ wet_volume = settings.formulae.trivia.volume(radius=r_wet)
+
+ self.seeded_particle_extensive_attributes = {
+ "signed water mass": np.array([0.0001 * si.ng] * settings.n_sd_seeding),
+ "dry volume": v_dry,
+ "kappa times dry volume": settings.seed_kappa
+ * v_dry, # include kappa argument for seeds
+ }
+
+ self.builder.add_dynamic(
+ Seeding(
+ super_droplet_injection_rate=settings.super_droplet_injection_rate,
+ seeded_particle_multiplicity=self.seeded_particle_multiplicity,
+ seeded_particle_extensive_attributes=self.seeded_particle_extensive_attributes,
+ )
+ )
+
+ self.products += [
+ PySDM_products.WaterMixingRatio(
+ name="cloud water mixing ratio",
+ unit="g/kg",
+ radius_range=settings.cloud_water_radius_range,
+ ),
+ PySDM_products.WaterMixingRatio(
+ name="rain water mixing ratio",
+ unit="g/kg",
+ radius_range=settings.rain_water_radius_range,
+ ),
+ PySDM_products.AmbientDryAirDensity(name="rhod"),
+ PySDM_products.AmbientDryAirPotentialTemperature(name="thd"),
+ PySDM_products.ParticleSizeSpectrumPerVolume(
+ name="wet spectrum", radius_bins_edges=settings.r_bins_edges
+ ),
+ PySDM_products.ParticleConcentration(
+ name="nc", radius_range=settings.cloud_water_radius_range
+ ),
+ PySDM_products.ParticleConcentration(
+ name="nr", radius_range=settings.rain_water_radius_range
+ ),
+ PySDM_products.ParticleConcentration(
+ name="na", radius_range=(0, settings.cloud_water_radius_range[0])
+ ),
+ PySDM_products.MeanRadius(),
+ PySDM_products.EffectiveRadius(
+ radius_range=settings.cloud_water_radius_range
+ ),
+ PySDM_products.SuperDropletCountPerGridbox(),
+ PySDM_products.AveragedTerminalVelocity(
+ name="rain averaged terminal velocity",
+ radius_range=settings.rain_water_radius_range,
+ ),
+ PySDM_products.AmbientRelativeHumidity(name="RH", unit="%"),
+ PySDM_products.AmbientPressure(name="p"),
+ PySDM_products.AmbientTemperature(name="T"),
+ PySDM_products.AmbientWaterVapourMixingRatio(
+ name="water_vapour_mixing_ratio"
+ ),
+ ]
+ if settings.enable_condensation:
+ self.products.extend(
+ [
+ PySDM_products.RipeningRate(name="ripening"),
+ PySDM_products.ActivatingRate(name="activating"),
+ PySDM_products.DeactivatingRate(name="deactivating"),
+ PySDM_products.PeakSaturation(unit="%"),
+ PySDM_products.ParticleSizeSpectrumPerVolume(
+ name="dry spectrum",
+ radius_bins_edges=settings.r_bins_edges_dry,
+ dry=True,
+ ),
+ ]
+ )
+ if settings.precip:
+ self.products.extend(
+ [
+ PySDM_products.CollisionRatePerGridbox(
+ name="collision_rate",
+ ),
+ PySDM_products.CollisionRateDeficitPerGridbox(
+ name="collision_deficit",
+ ),
+ PySDM_products.CoalescenceRatePerGridbox(
+ name="coalescence_rate",
+ ),
+ PySDM_products.SurfacePrecipitation(),
+ ]
+ )
+ self.particulator = self.builder.build(
+ attributes={
+ k: np.pad(
+ array=v,
+ pad_width=(
+ ((0, 0), (0, settings.n_sd_seeding))
+ if k in ("position in cell", "cell origin")
+ else (0, settings.n_sd_seeding)
+ ),
+ mode="constant",
+ constant_values=np.nan if k == "multiplicity" else 0,
+ )
+ for k, v in self.attributes.items()
+ },
+ products=tuple(self.products),
+ )
+
+ self.output_attributes = {
+ "cell origin": [],
+ "position in cell": [],
+ "radius": [],
+ "multiplicity": [],
+ }
+ self.output_products = {}
+ for k, v in self.particulator.products.items():
+ if len(v.shape) == 0:
+ self.output_products[k] = np.zeros(self.nt + 1)
+ elif len(v.shape) == 1:
+ self.output_products[k] = np.zeros((self.mesh.grid[-1], self.nt + 1))
+ elif len(v.shape) == 2:
+ number_of_time_sections = len(self.save_spec_and_attr_times)
+ self.output_products[k] = np.zeros(
+ (self.mesh.grid[-1], self.number_of_bins, number_of_time_sections)
+ )
+
+ @staticmethod
+ def add_collision_dynamic(builder, settings, _):
+ builder.add_dynamic(
+ Coalescence(
+ collision_kernel=settings.collision_kernel,
+ adaptive=settings.coalescence_adaptive,
+ )
+ )
+
+ def save_scalar(self, step):
+ for k, v in self.particulator.products.items():
+ if len(v.shape) > 1:
+ continue
+ if len(v.shape) == 1:
+ self.output_products[k][:, step] = v.get()
+ else:
+ self.output_products[k][step] = v.get()
+
+ def save_spectrum(self, index):
+ for k, v in self.particulator.products.items():
+ if len(v.shape) == 2:
+ self.output_products[k][:, :, index] = v.get()
+
+ def save_attributes(self):
+ for k, v in self.output_attributes.items():
+ v.append(self.particulator.attributes[k].to_ndarray())
+
+ def save(self, step):
+ self.save_scalar(step)
+ time = step * self.particulator.dt
+ if len(self.save_spec_and_attr_times) > 0 and (
+ np.min(
+ np.abs(
+ np.ones_like(self.save_spec_and_attr_times) * time
+ - np.array(self.save_spec_and_attr_times)
+ )
+ )
+ < 0.1
+ ):
+ save_index = np.argmin(
+ np.abs(
+ np.ones_like(self.save_spec_and_attr_times) * time
+ - np.array(self.save_spec_and_attr_times)
+ )
+ )
+ self.save_spectrum(save_index)
+ self.save_attributes()
+
+ def run(self):
+ mesh = self.particulator.mesh
+
+ assert "t" not in self.output_products and "z" not in self.output_products
+ self.output_products["t"] = np.linspace(
+ 0, self.nt * self.particulator.dt, self.nt + 1, endpoint=True
+ )
+ self.output_products["z"] = np.linspace(
+ self.z0 + mesh.dz / 2,
+ self.z0 + (mesh.grid[-1] - 1 / 2) * mesh.dz,
+ mesh.grid[-1],
+ endpoint=True,
+ )
+
+ self.save(0)
+ for step in range(self.nt):
+ mpdata = self.particulator.dynamics["EulerianAdvection"].solvers
+ mpdata.update_advector_field()
+ if "Displacement" in self.particulator.dynamics:
+ self.particulator.dynamics["Displacement"].upload_courant_field(
+ (mpdata.advector / self.g_factor_vec,)
+ )
+ self.particulator.run(steps=1)
+ self.save(step + 1)
+
+ Outputs = namedtuple("Outputs", "products attributes")
+ output_results = Outputs(self.output_products, self.output_attributes)
+ return output_results
diff --git a/examples/PySDM_examples/seeding/simulation_2d.py b/examples/PySDM_examples/seeding/simulation_2d.py
new file mode 100644
index 0000000000..4a8104021c
--- /dev/null
+++ b/examples/PySDM_examples/seeding/simulation_2d.py
@@ -0,0 +1,321 @@
+import numpy as np
+from PySDM_examples.utils.kinematic_2d.make_default_product_collection import (
+ make_default_product_collection,
+)
+from PySDM_examples.utils.kinematic_2d import MPDATA_2D
+from PySDM_examples.utils import DummyController
+
+from PySDM.backends import CPU
+from PySDM.builder import Builder
+from PySDM.dynamics import (
+ AmbientThermodynamics,
+ Coalescence,
+ Collision,
+ Condensation,
+ Displacement,
+ EulerianAdvection,
+ Freezing,
+ Seeding,
+)
+from PySDM.impl.mesh import Mesh
+from PySDM.environments import Kinematic2D
+from PySDM.initialisation import spectra
+from PySDM.initialisation.sampling import spatial_sampling, spectral_sampling
+from PySDM.initialisation.equilibrate_wet_radii import equilibrate_wet_radii
+from PySDM.physics import si
+
+
+class Simulation:
+ def __init__(self, settings, storage, SpinUp, backend_class=CPU):
+ self.settings = settings
+ self.storage = storage
+ self.particulator = None
+ self.backend_class = backend_class
+ self.SpinUp = SpinUp
+
+ @property
+ def products(self):
+ return self.particulator.products
+
+ def reinit(self, products=None):
+ formulae = self.settings.formulae
+ backend = self.backend_class(formulae=formulae)
+ self.mesh = Mesh(grid=self.settings.grid, size=self.settings.size)
+ environment = Kinematic2D(
+ dt=self.settings.dt,
+ grid=self.settings.grid,
+ size=self.settings.size,
+ rhod_of=self.settings.rhod_of_zZ,
+ mixed_phase=self.settings.processes["freezing"],
+ )
+ builder = Builder(
+ n_sd=self.settings.n_sd + self.settings.n_sd_seeding,
+ backend=backend,
+ environment=environment,
+ )
+
+ if products is not None:
+ products = list(products)
+ else:
+ products = make_default_product_collection(self.settings)
+
+ if self.settings.processes["fluid advection"]:
+ builder.add_dynamic(AmbientThermodynamics())
+ if self.settings.processes["condensation"]:
+ kwargs = {}
+ if not self.settings.condensation_adaptive:
+ kwargs["substeps"] = (self.settings.condensation_substeps,)
+ condensation = Condensation(
+ rtol_x=self.settings.condensation_rtol_x,
+ rtol_thd=self.settings.condensation_rtol_thd,
+ adaptive=self.settings.condensation_adaptive,
+ dt_cond_range=self.settings.condensation_dt_cond_range,
+ schedule=self.settings.condensation_schedule,
+ **kwargs,
+ )
+ builder.add_dynamic(condensation)
+ if self.settings.processes["fluid advection"]:
+ initial_profiles = {
+ "th": self.settings.initial_dry_potential_temperature_profile,
+ "water_vapour_mixing_ratio": self.settings.initial_vapour_mixing_ratio_profile,
+ }
+ advectees = dict(
+ (
+ key,
+ np.repeat(
+ profile.reshape(1, -1),
+ builder.particulator.environment.mesh.grid[0],
+ axis=0,
+ ),
+ )
+ for key, profile in initial_profiles.items()
+ )
+ solver = MPDATA_2D(
+ advectees=advectees,
+ stream_function=self.settings.stream_function,
+ rhod_of_zZ=self.settings.rhod_of_zZ,
+ dt=self.settings.dt,
+ grid=self.settings.grid,
+ size=self.settings.size,
+ n_iters=self.settings.mpdata_iters,
+ infinite_gauge=self.settings.mpdata_iga,
+ nonoscillatory=self.settings.mpdata_fct,
+ third_order_terms=self.settings.mpdata_tot,
+ )
+ builder.add_dynamic(EulerianAdvection(solver))
+ if self.settings.processes["particle advection"]:
+ builder.add_dynamic(
+ Displacement(
+ enable_sedimentation=self.settings.processes["sedimentation"],
+ adaptive=self.settings.displacement_adaptive,
+ rtol=self.settings.displacement_rtol,
+ )
+ )
+ if (
+ self.settings.processes["coalescence"]
+ and self.settings.processes["breakup"]
+ ):
+ builder.add_dynamic(
+ Collision(
+ collision_kernel=self.settings.kernel,
+ enable_breakup=self.settings.processes["breakup"],
+ coalescence_efficiency=self.settings.coalescence_efficiency,
+ breakup_efficiency=self.settings.breakup_efficiency,
+ fragmentation_function=self.settings.breakup_fragmentation,
+ adaptive=self.settings.coalescence_adaptive,
+ dt_coal_range=self.settings.coalescence_dt_coal_range,
+ substeps=self.settings.coalescence_substeps,
+ optimized_random=self.settings.coalescence_optimized_random,
+ )
+ )
+ elif (
+ self.settings.processes["coalescence"]
+ and not self.settings.processes["breakup"]
+ ):
+ builder.add_dynamic(
+ Coalescence(
+ collision_kernel=self.settings.kernel,
+ adaptive=self.settings.coalescence_adaptive,
+ dt_coal_range=self.settings.coalescence_dt_coal_range,
+ substeps=self.settings.coalescence_substeps,
+ optimized_random=self.settings.coalescence_optimized_random,
+ )
+ )
+ assert not (
+ self.settings.processes["breakup"]
+ and not self.settings.processes["coalescence"]
+ )
+ if self.settings.processes["freezing"]:
+ builder.add_dynamic(
+ Freezing(
+ singular=self.settings.freezing_singular,
+ thaw=self.settings.freezing_thaw,
+ )
+ )
+
+ attributes = builder.particulator.environment.init_attributes(
+ spatial_discretisation=spatial_sampling.Pseudorandom(),
+ dry_radius_spectrum=self.settings.spectrum_per_mass_of_dry_air,
+ kappa=self.settings.kappa,
+ n_sd=self.settings.n_sd
+ // (2 if self.settings.freezing_inp_frac != 1 else 1),
+ )
+
+ r_dry, n_in_dv = spectral_sampling.ConstantMultiplicity(
+ spectra.Lognormal(
+ norm_factor=(
+ self.settings.seed_particles_per_volume_STP
+ / self.settings.formulae.constants.rho_STP
+ ),
+ m_mode=self.settings.seed_radius,
+ s_geom=1.4,
+ )
+ ).sample(
+ n_sd=self.settings.n_sd_seeding
+ ) # TODO #1387: does not have to be the same?
+ v_dry = self.settings.formulae.trivia.volume(radius=r_dry)
+ self.seeded_particle_extensive_attributes = {
+ "signed water mass": np.array(
+ [0.0001 * si.ng] * self.settings.n_sd_seeding
+ ),
+ "dry volume": v_dry,
+ "kappa times dry volume": self.settings.seed_kappa
+ * v_dry, # include kappa argument for seeds
+ }
+ self.seeded_particle_multiplicity = n_in_dv * np.prod(np.array(self.mesh.size))
+
+ positions = spatial_sampling.Pseudorandom().sample(
+ backend=backend,
+ grid=self.mesh.grid,
+ n_sd=self.settings.n_sd_seeding,
+ )
+ cell_id, cell_origin, pos_cell = self.mesh.cellular_attributes(positions)
+ self.seeded_particle_cell_id = cell_id
+ self.seeded_particle_cell_origin = cell_origin
+ self.seeded_particle_pos_cell = pos_cell
+
+ r_wet = equilibrate_wet_radii(
+ r_dry=self.settings.formulae.trivia.radius(volume=v_dry),
+ environment=builder.particulator.environment,
+ cell_id=cell_id,
+ kappa_times_dry_volume=self.settings.seed_kappa
+ * v_dry, # include kappa argument for seeds
+ )
+ self.seeded_particle_volume = self.settings.formulae.trivia.volume(radius=r_wet)
+
+ builder.add_dynamic(
+ Seeding(
+ super_droplet_injection_rate=self.settings.super_droplet_injection_rate,
+ seeded_particle_multiplicity=self.seeded_particle_multiplicity,
+ seeded_particle_extensive_attributes=self.seeded_particle_extensive_attributes,
+ seeded_particle_cell_id=self.seeded_particle_cell_id,
+ seeded_particle_cell_origin=self.seeded_particle_cell_origin,
+ seeded_particle_pos_cell=self.seeded_particle_pos_cell,
+ seeded_particle_volume=self.seeded_particle_volume,
+ )
+ )
+
+ if self.settings.processes["freezing"]:
+ attributes["signed water mass"] = attributes.pop("water mass")
+
+ if self.settings.freezing_inp_spec is None:
+ immersed_surface_area = formulae.trivia.sphere_surface(
+ diameter=2 * formulae.trivia.radius(volume=attributes["dry volume"])
+ )
+ else:
+ immersed_surface_area = self.settings.freezing_inp_spec.percentiles(
+ np.random.random(attributes["dry volume"].size), # TODO #599: seed
+ )
+
+ if self.settings.freezing_singular:
+ attributes["freezing temperature"] = (
+ formulae.freezing_temperature_spectrum.invcdf(
+ np.random.random(immersed_surface_area.size), # TODO #599: seed
+ immersed_surface_area,
+ )
+ )
+ else:
+ attributes["immersed surface area"] = immersed_surface_area
+
+ if self.settings.freezing_inp_frac != 1:
+ assert self.settings.n_sd % 2 == 0
+ assert 0 < self.settings.freezing_inp_frac < 1
+ freezing_attribute = {
+ True: "freezing temperature",
+ False: "immersed surface area",
+ }[self.settings.freezing_singular]
+ for name, array in attributes.items():
+ if array.shape[-1] != self.settings.n_sd // 2:
+ raise AssertionError(f"attribute >>{name}<< has wrong size")
+ array = array.copy()
+ full_shape = list(array.shape)
+ orig = slice(None, full_shape[-1])
+ copy = slice(orig.stop, None)
+ full_shape[-1] *= 2
+ attributes[name] = np.empty(full_shape, dtype=array.dtype)
+ if name == freezing_attribute:
+ attributes[name][orig] = array
+ attributes[name][copy] = 0
+ elif name == "multiplicity":
+ attributes[name][orig] = array * self.settings.freezing_inp_frac
+ attributes[name][copy] = array * (
+ 1 - self.settings.freezing_inp_frac
+ )
+ elif len(array.shape) > 1: # particle positions
+ # TODO #599: seed
+ for dim, _ in enumerate(array.shape):
+ # only to make particles not shadow each other in visualisations
+ attributes[name][dim, orig] = array[dim, :]
+ attributes[name][dim, copy] = np.random.permutation(
+ array[dim, :]
+ )
+ else:
+ attributes[name][orig] = array
+ attributes[name][copy] = array
+
+ non_zero_per_gridbox = np.count_nonzero(
+ attributes[freezing_attribute]
+ ) / np.prod(self.settings.grid)
+ assert non_zero_per_gridbox == self.settings.n_sd_per_gridbox / 2
+
+ self.particulator = builder.build(
+ attributes={
+ k: np.pad(
+ array=v,
+ pad_width=(
+ ((0, 0), (0, self.settings.n_sd_seeding))
+ if k in ("position in cell", "cell origin")
+ else (0, self.settings.n_sd_seeding)
+ ),
+ mode="constant",
+ constant_values=np.nan if k == "multiplicity" else 0,
+ )
+ for k, v in attributes.items()
+ },
+ products=tuple(products),
+ )
+
+ if self.SpinUp is not None:
+ self.SpinUp(self.particulator, self.settings.n_spin_up)
+ if self.storage is not None:
+ self.storage.init(self.settings)
+
+ def run(self, controller=DummyController(), vtk_exporter=None):
+ with controller:
+ for step in self.settings.output_steps:
+ if controller.panic:
+ break
+
+ self.particulator.run(step - self.particulator.n_steps)
+
+ self.store(step)
+
+ if vtk_exporter is not None:
+ vtk_exporter.export_attributes(self.particulator)
+ vtk_exporter.export_products(self.particulator)
+
+ controller.set_percent(step / self.settings.output_steps[-1])
+
+ def store(self, step):
+ for name, product in self.particulator.products.items():
+ self.storage.save(product.get(), step, name)
diff --git a/examples/PySDM_examples/seeding/spin_up_2d.py b/examples/PySDM_examples/seeding/spin_up_2d.py
new file mode 100644
index 0000000000..4754a06456
--- /dev/null
+++ b/examples/PySDM_examples/seeding/spin_up_2d.py
@@ -0,0 +1,24 @@
+from PySDM.dynamics import Collision, Displacement, Freezing, Seeding
+
+
+class SpinUp:
+ def __init__(self, particulator, spin_up_steps):
+ self.spin_up_steps = spin_up_steps
+ particulator.observers.append(self)
+ self.particulator = particulator
+ self.set(Collision, "enable", False)
+ self.set(Displacement, "enable_sedimentation", False)
+ self.set(Freezing, "enable", False)
+ self.set(Seeding, "enable", False)
+
+ def notify(self):
+ if self.particulator.n_steps == self.spin_up_steps:
+ self.set(Collision, "enable", True)
+ self.set(Displacement, "enable_sedimentation", True)
+ self.set(Freezing, "enable", True)
+ self.set(Seeding, "enable", True)
+
+ def set(self, dynamic, attr, value):
+ key = dynamic.__name__
+ if key in self.particulator.dynamics:
+ setattr(self.particulator.dynamics[key], attr, value)
diff --git a/examples/PySDM_examples/seeding/strato_cumulus_seeding.py b/examples/PySDM_examples/seeding/strato_cumulus_seeding.py
new file mode 100644
index 0000000000..582b5b8921
--- /dev/null
+++ b/examples/PySDM_examples/seeding/strato_cumulus_seeding.py
@@ -0,0 +1,45 @@
+from typing import Optional
+import numpy as np
+from .common_seeding import Common
+
+from PySDM.physics import si
+
+
+class StratoCumulus(Common):
+ def __init__(
+ self,
+ formulae,
+ rhod_w_max: float,
+ particles_per_volume_STP: int = 50 / si.cm**3,
+ n_sd_per_gridbox: int = 32,
+ radius: float = 0.04 * si.micrometre,
+ kappa: float = 0.3,
+ ):
+ super().__init__(
+ formulae, particles_per_volume_STP, n_sd_per_gridbox, radius, kappa
+ )
+ self.th_std0 = 289 * si.kelvins
+ self.initial_water_vapour_mixing_ratio = 7.5 * si.grams / si.kilogram
+ self.p0 = 1015 * si.hectopascals
+ self.rhod_w_max = rhod_w_max
+
+ def stream_function(self, xX, zZ, _):
+ X = self.size[0]
+ return (
+ -self.rhod_w_max * X / np.pi * np.sin(np.pi * zZ) * np.cos(2 * np.pi * xX)
+ )
+
+ def rhod_of_zZ(self, zZ):
+ p = getattr(
+ self.formulae.hydrostatics,
+ "p_of_z_assuming_const_th_and_initial_water_vapour_mixing_ratio",
+ )(
+ self.p0,
+ self.th_std0,
+ self.initial_water_vapour_mixing_ratio,
+ z=zZ * self.size[-1],
+ )
+ rhod = self.formulae.state_variable_triplet.rho_d(
+ p, self.initial_water_vapour_mixing_ratio, self.th_std0
+ )
+ return rhod