From 740724e5f1f6b9a2a57a9e3c2240074639430af0 Mon Sep 17 00:00:00 2001 From: Dion Ho Jia Xu Date: Tue, 4 Jun 2024 13:20:45 -0400 Subject: [PATCH] Made changes to help deal with large I0 inputs. Ready to release version 0.2.2. (PyTests omitted in history re-write) --- docs/Pythonic-DISORT.ipynb | 693 ++++-------------- docs/conf.py | 2 +- pyproject.toml | 2 +- .../_loop_and_assemble_results.py | 33 +- src/PythonicDISORT/pydisort.py | 36 +- src/PythonicDISORT/subroutines.py | 38 +- 6 files changed, 236 insertions(+), 568 deletions(-) diff --git a/docs/Pythonic-DISORT.ipynb b/docs/Pythonic-DISORT.ipynb index 6fcf74b..e284e29 100644 --- a/docs/Pythonic-DISORT.ipynb +++ b/docs/Pythonic-DISORT.ipynb @@ -57,8 +57,6 @@ "* [2. PythonicDISORT modules and outputs](#2.-PythonicDISORT-modules-and-outputs)\n", "* [3. Breakdown of single layer solver](#3.-Breakdown-of-single-layer-solver)\n", "\t* [3.1 Quadrature](#3.1-Quadrature)\n", - "\t\t* [3.1.1 Verification of quadrature](#3.1.1-Verification-of-quadrature)\n", - "\t\t* [3.1.2 Normalization verification of phase function](#3.1.2-Normalization-verification-of-phase-function)\n", "\t* [3.2 Fourier expansion of solution](#3.2-Fourier-expansion-of-solution)\n", "\t\t* [3.2.1 Surface reflection](#3.2.1-Surface-reflection)\n", "\t\t* [3.2.2 Important terms](#3.2.2-Important-terms)\n", @@ -133,7 +131,9 @@ "\n", "which will deal with the $\\phi'$ integral, and approximate the $\\mu'$ integral using Gauss-Legendre quadrature with $\\text{NQuad} = 2N$ quadrature points, i.e.\n", "\n", - "$$\\int_{-1}^1 [\\dots] \\ \\mathrm{d}\\mu' \\approx \\sum_{|j|=1}^\\text{N} [\\dots]$$" + "$$\\int_{-1}^1 [\\dots] \\ \\mathrm{d}\\mu' \\approx \\sum_{|j|=1}^\\text{N} [\\dots]$$\n", + "\n", + "to get a linear system of ODEs which can be solved." ] }, { @@ -610,47 +610,6 @@ "p_R_nu = lambda nu: (3 / 4) * (1 + nu**2) # Currently unused" ] }, - { - "cell_type": "markdown", - "id": "64c41735", - "metadata": {}, - "source": [ - "**Integral derivation of Legendre coefficients for verification**" - ] - }, - { - "cell_type": "markdown", - "id": "5ec4f8c5", - "metadata": {}, - "source": [ - "The following algorithm can be used to derive the Legendre coefficients for a general phase function. The algorithm can also be vectorized, but we would no longer be able to use `scipy.integrate.quad` for integration." - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "id": "6ad0fddd", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Passed all tests\n" - ] - } - ], - "source": [ - "Leg_coeffs_test = np.empty(NLeg)\n", - "for ell in range(NLeg):\n", - " integrand = lambda nu: p_HG_nu(nu) * sc.special.eval_legendre(ell, nu)\n", - " Leg_coeffs_test[ell] = (1 / 2) * integrate.quad(integrand, -1, 1)[0]\n", - "\n", - "assert np.allclose(Leg_coeffs[-1, :], Leg_coeffs_test)\n", - "\n", - "print(\"Passed all tests\")" - ] - }, { "cell_type": "markdown", "id": "4868357a", @@ -704,7 +663,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 19, "id": "962f6f2d", "metadata": {}, "outputs": [], @@ -726,7 +685,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 20, "id": "563cae85", "metadata": {}, "outputs": [], @@ -753,12 +712,18 @@ "source": [ "* **Parameters for the (incident) direct collimated (sun) beam**\n", "\n", - "We do not allow $\\mu_0$ to coincide with a quadrature angle to prevent singularities. If that happens either $\\text{NQuad}$ or $\\mu_0$ should be tweaked. In the future this can be implemented as a special case. In addition, we do not allow $\\mu_0 \\leq 0$. Small $\\mu_0$ values will cause instability. We require both angles to be principal and $I_0 \\geq 0$. Choosing $I_0 = 0$ will disable this source and isotrophic internal sources can be chosen in section [1.7](#1.7-OPTIONAL:-Choose-isotrophic-internal-sources). The flux contribution of this source is $I_0 \\mu_0$." + "We do not allow $\\mu_0$ to coincide with a quadrature angle to prevent singularities. If that happens either $\\text{NQuad}$ or $\\mu_0$ should be tweaked. In the future this can be implemented as a special case. In addition, we do not allow $\\mu_0 \\leq 0$. Small $\\mu_0$ values will cause instability. We require both angles to be principal and $I_0 \\geq 0$. Choosing $I_0 = 0$ will disable this source and isotrophic internal sources can be chosen in section [1.7](#1.7-OPTIONAL:-Choose-isotrophic-internal-sources). The flux contribution of this source is $I_0 \\mu_0$.\n", + "\n", + "If the direct beam is the only source, then $I_0$ is a simple scale factor for the outputs, i.e. for all $\\tau, \\phi, I$,\n", + "\n", + "$$\\frac{u(\\tau, \\phi; I_0 = I)}{u(\\tau, \\phi; I_0 = 1)} = I = \\frac{F(\\tau; I_0 = I)}{F(\\tau; I_0 = 1)}$$\n", + "\n", + "where $F$ is any of the different types of fluxes, see section [3.8](#3.8-Computation-of-flux). In general, users should be careful with large inputs. The resolution of `float64` per `np.finfo` is $10^{-15}$ and so scaling values up with $I_0 = 10^{15}$, for example, is likely to cause problems, though we have implemented ameliorative measures." ] }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 21, "id": "52dafd3a", "metadata": { "code_folding": [] @@ -819,7 +784,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 22, "id": "8c2bd769", "metadata": { "code_folding": [] @@ -914,7 +879,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 23, "id": "2cb63ba0", "metadata": {}, "outputs": [], @@ -934,7 +899,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 24, "id": "b7aabefc", "metadata": {}, "outputs": [], @@ -1009,7 +974,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 25, "id": "1bc8b5d1", "metadata": {}, "outputs": [], @@ -1033,7 +998,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 26, "id": "822e3680", "metadata": {}, "outputs": [], @@ -1051,7 +1016,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 27, "id": "2ba91551", "metadata": {}, "outputs": [], @@ -1106,7 +1071,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 28, "id": "fc4db2d4", "metadata": {}, "outputs": [], @@ -1164,12 +1129,12 @@ "id": "29043208", "metadata": {}, "source": [ - "Generation of Double Gauss-Legendre quadrature weights and points to numerically integrate over $\\mu$ from $-1$ to $1$" + "We use Double Gauss-Legendre quadrature weights and points to numerically integrate over $\\mu$ from $-1$ to $1$." ] }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 29, "id": "180909f8", "metadata": {}, "outputs": [], @@ -1180,25 +1145,19 @@ "full_weights_mu = np.concatenate([W, W])" ] }, - { - "cell_type": "markdown", - "id": "fd8ee345", - "metadata": {}, - "source": [ - "### 3.1.1 Verification of quadrature" - ] - }, { "cell_type": "markdown", "id": "157d2874", "metadata": {}, "source": [ + "We will verify quadrature schemes using the integral\n", + "\n", "$$\\int_{a}^{b} e^x \\ \\mathrm{d}x = e^b - e^a$$" ] }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 30, "id": "3a8926fa", "metadata": { "code_folding": [], @@ -1227,7 +1186,7 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": 31, "id": "3c5f8be3", "metadata": {}, "outputs": [], @@ -1242,12 +1201,12 @@ "id": "f0ceca22", "metadata": {}, "source": [ - "Generation of Clenshaw-Curtis quadrature weights and points to numerically integrate over $\\phi$ from $0$ to $2\\pi$; these will only be used in tests" + "We use Clenshaw-Curtis quadrature weights and points to numerically integrate over $\\phi$ from $0$ to $2\\pi$. These will only be used in tests." ] }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 32, "id": "f449ffd3", "metadata": { "code_folding": [], @@ -1275,78 +1234,6 @@ ")" ] }, - { - "cell_type": "markdown", - "id": "3bb0df06", - "metadata": {}, - "source": [ - "### 3.1.2 Normalization verification of phase function" - ] - }, - { - "cell_type": "markdown", - "id": "441203c1", - "metadata": {}, - "source": [ - "We expect that\n", - "\n", - "$$\n", - "\\frac{1}{4 \\pi} \\int_{-1}^1 \\int_0^{2 \\pi} p\\left(\\mu, \\phi ; \\mu', \\phi'\\right) \\mathrm{d} \\phi \\mathrm{d} \\mu = 1\n", - "$$" - ] - }, - { - "cell_type": "code", - "execution_count": 34, - "id": "3b9f7a83", - "metadata": {}, - "outputs": [], - "source": [ - "def truncated_phase_func(mu, phi, mu_p, phi_p):\n", - " nu = PythonicDISORT.subroutines.calculate_nu(mu, phi, mu_p, phi_p)\n", - " return Legendre(Leg_coeffs[0, :])(nu)" - ] - }, - { - "cell_type": "code", - "execution_count": 35, - "id": "e7c23464", - "metadata": { - "tags": [ - "hide_input" - ] - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Max pointwise error ratio = 1.9934995876269568e-09\n" - ] - } - ], - "source": [ - "phi_arr, full_weights_phi = PythonicDISORT.subroutines.Clenshaw_Curtis_quad(Nphi)\n", - "\n", - "normalize_p = np.einsum(\n", - " \"ijkl, i, j -> kl\",\n", - " truncated_phase_func(mu_arr, phi_arr, mu_arr, phi_arr),\n", - " full_weights_mu,\n", - " full_weights_phi,\n", - " optimize=True,\n", - ") / (4 * pi)\n", - "\n", - "print(\"Max pointwise error ratio =\", np.max(np.abs(normalize_p - 1)))" - ] - }, - { - "cell_type": "markdown", - "id": "6ed0b7e3", - "metadata": {}, - "source": [ - "This error hints at PythonicDISORT's errors and is a preliminary way to judge whether to increase or decrease $\\text{NQuad}$ and $\\text{NLeg}$." - ] - }, { "cell_type": "markdown", "id": "0b135f22", @@ -1663,7 +1550,7 @@ "\\end{aligned}\n", "$$\n", "\n", - "This is exactly our starting problem, but with every $\\tau$, $\\omega$, $p$ swapped for $\\tau^*$, $\\omega^*$, $p^*$ respectively. In the literature, $\\tau$, $\\omega$, $p$ are described as having been $\\delta-M$ scaled (or just \"delta-scaled\") to $\\tau^*$, $\\omega^*$, $p^*$. See [[5]](#cite-Wis1977) for more details on $\\delta-M$ scaling." + "This is exactly our starting problem, but with every $\\tau$, $\\omega$, $p$ swapped for $\\tau^*$, $\\omega^*$, $p^*$ respectively. In the literature, $\\tau$, $\\omega$, $p$ are described as having been $\\delta-M$ scaled (or just \"delta-scaled\") to $\\tau^*$, $\\omega^*$, $p^*$. See [[5]](#cite-Wis1977) and [[6]](#cite-JWW1976) for more details on $\\delta-M$ scaling." ] }, { @@ -1684,7 +1571,7 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 33, "id": "2810b839", "metadata": {}, "outputs": [ @@ -1854,7 +1741,7 @@ "id": "f009ab80", "metadata": {}, "source": [ - "The main consideration when choosing the number of streams is the empirical finding that $\\text{NQuad} < \\text{NLeg}$ results in large errors, see [[1, Chapter VI]](#cite-Cha1960) and [[8, section 3.7]](#cite-STWLE2000). What if a user chooses $\\text{NQuad} > \\text{NLeg}$ instead? Increasing $\\text{NQuad}$ generally results in better accuracy, though monotone convergence is not guaranteed when using the double-Gauss quadrature scheme, see [[7]](#cite-Syk1951) for a discussion on the convergence of different quadrature schemes. Given, however, that the computational complexity of `pydisort` scales linearly with $\\text{NLeg}$ and cubicly with $\\text{NQuad}$, it is recommended to choose $\\text{NQuad}$ based on the computational resources and time one can afford, then choose $\\text{NLeg} = \\text{NQuad}$. The only option in Stamnes' DISORT [[3]](#cite-Sta1999) is $\\text{NLeg} = \\text{NQuad}$." + "The main consideration when choosing the number of streams is the finding that $\\text{NQuad} < \\text{NLeg}$ results in large errors, see [[1, Chapter VI]](#cite-Cha1960) and [[8, section 3.7]](#cite-STWLE2000). Increasing $\\text{NQuad}$ past the threshold generally results in better accuracy, though monotone convergence is not guaranteed when using the double-Gauss quadrature scheme, see [[7]](#cite-Syk1951) for a discussion on the convergence of different quadrature schemes. Given, however, that the computational complexity of `pydisort` scales linearly with $\\text{NLeg}$ and cubicly with $\\text{NQuad}$, it is recommended to choose $\\text{NQuad}$ based on the computational resources and time one can afford, then choose $\\text{NLeg} = \\text{NQuad}$. The only option in Stamnes' DISORT [[3]](#cite-Sta1999) is $\\text{NLeg} = \\text{NQuad}$." ] }, { @@ -1891,7 +1778,7 @@ }, { "cell_type": "code", - "execution_count": 37, + "execution_count": 34, "id": "9d81156b", "metadata": {}, "outputs": [], @@ -1910,7 +1797,7 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 35, "id": "24e35e87", "metadata": {}, "outputs": [], @@ -1944,7 +1831,7 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 36, "id": "f6822d0c", "metadata": { "code_folding": [] @@ -1982,7 +1869,7 @@ }, { "cell_type": "code", - "execution_count": 40, + "execution_count": 37, "id": "4d12c69d", "metadata": {}, "outputs": [], @@ -2013,7 +1900,7 @@ }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 38, "id": "88ec4674", "metadata": {}, "outputs": [], @@ -2098,12 +1985,12 @@ "id": "1d024844", "metadata": {}, "source": [ - "There are three special cases to consider. First, if there is no $\\mathscr{v}$ contribution (see section [1.7](#1.7-OPTIONAL:-Choose-isotrophic-internal-sources)) then we do not need $G^{-1}$ and can leave the diagonalization incomplete. Second, if $g_\\ell = 0$ for all $\\ell \\geq m$, then we immediately know that $A = \\text{Diag}\\left(\\begin{bmatrix} M^{-1} & M^{-1} \\end{bmatrix}\\right)$ which saves us a lot of computation. Finally, if $\\omega = 0$, matrix $A$ will have two eigenvalues of value $0$, which makes it undiagonalizable. It is still possible to express $A = G J G^{-1}$, but $J$ will be a Jordan matrix and we will need to use generalized eigenvectors to solve the system of ODEs. These have not yet been implemented, which is why $\\omega = 1$ is not a valid input (see section [1.1](#1.1-Choose-optical-properties)). In addition, PythonicDISORT will warn if an eigenvalue is too close to $0$, which implies that $\\omega$ is too close to $1$." + "There are three special cases to consider. First, if there is no $\\mathscr{v}$ contribution (see section [1.7](#1.7-OPTIONAL:-Choose-isotrophic-internal-sources)) then we do not need $G^{-1}$ and can leave the diagonalization incomplete. Second, if $g_\\ell = 0$ for all $\\ell \\geq m$, then we immediately know that $A = \\text{Diag}\\left(\\begin{bmatrix} M^{-1} & M^{-1} \\end{bmatrix}\\right)$ which saves us a lot of computation. Finally, if $\\omega = 1$, matrix $A$ will have two eigenvalues of value $0$, which makes it undiagonalizable. It is still possible to express $A = G J G^{-1}$, but $J$ will be a Jordan matrix and we will need to use generalized eigenvectors to solve the system of ODEs. These have not yet been implemented, which is why $\\omega = 1$ is not a valid input (see section [1.1](#1.1-Choose-optical-properties)). In addition, PythonicDISORT will warn if an eigenvalue is too close to $0$, which implies that $\\omega$ is too close to $1$." ] }, { "cell_type": "code", - "execution_count": 42, + "execution_count": 39, "id": "79a3aa59", "metadata": {}, "outputs": [], @@ -2144,7 +2031,7 @@ }, { "cell_type": "code", - "execution_count": 43, + "execution_count": 40, "id": "32f6cd1e", "metadata": { "tags": [ @@ -2259,7 +2146,7 @@ }, { "cell_type": "code", - "execution_count": 44, + "execution_count": 41, "id": "3d1e398c", "metadata": {}, "outputs": [], @@ -2292,7 +2179,7 @@ }, { "cell_type": "code", - "execution_count": 45, + "execution_count": 42, "id": "3ef17801", "metadata": {}, "outputs": [], @@ -2304,7 +2191,7 @@ }, { "cell_type": "code", - "execution_count": 46, + "execution_count": 43, "id": "2e515c6f", "metadata": {}, "outputs": [ @@ -2312,7 +2199,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Max pointwise error ratio = 1.7643697677720831e-07\n" + "Max pointwise error ratio = 1.764369818618187e-07\n" ] } ], @@ -2394,7 +2281,7 @@ }, { "cell_type": "code", - "execution_count": 47, + "execution_count": 44, "id": "3c333cfd", "metadata": {}, "outputs": [], @@ -2408,7 +2295,7 @@ }, { "cell_type": "code", - "execution_count": 48, + "execution_count": 45, "id": "773eea1a", "metadata": {}, "outputs": [ @@ -2416,7 +2303,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Max pointwise error ratio = 3.035240264243519e-07\n" + "Max pointwise error ratio = 3.0352807938307757e-07\n" ] } ], @@ -2529,7 +2416,7 @@ }, { "cell_type": "code", - "execution_count": 49, + "execution_count": 46, "id": "c1399d5b", "metadata": { "code_folding": [] @@ -2585,7 +2472,7 @@ }, { "cell_type": "code", - "execution_count": 50, + "execution_count": 47, "id": "acad8093", "metadata": {}, "outputs": [ @@ -2620,7 +2507,7 @@ }, { "cell_type": "code", - "execution_count": 51, + "execution_count": 48, "id": "b4596ea9", "metadata": {}, "outputs": [ @@ -2659,7 +2546,7 @@ }, { "cell_type": "code", - "execution_count": 52, + "execution_count": 49, "id": "5e28b122", "metadata": {}, "outputs": [], @@ -2714,7 +2601,7 @@ }, { "cell_type": "code", - "execution_count": 53, + "execution_count": 50, "id": "5db8eb24", "metadata": { "code_folding": [], @@ -2776,7 +2663,7 @@ }, { "cell_type": "code", - "execution_count": 54, + "execution_count": 51, "id": "28be111a", "metadata": {}, "outputs": [], @@ -2788,7 +2675,7 @@ }, { "cell_type": "code", - "execution_count": 55, + "execution_count": 52, "id": "ddbcdb01", "metadata": { "tags": [ @@ -2800,7 +2687,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Max pointwise error ratio = 2.717352561726194e-07\n" + "Max pointwise error ratio = 5.521740403129681e-07\n" ] } ], @@ -2913,7 +2800,7 @@ }, { "cell_type": "code", - "execution_count": 56, + "execution_count": 53, "id": "01be0afd", "metadata": {}, "outputs": [], @@ -2932,7 +2819,7 @@ }, { "cell_type": "code", - "execution_count": 57, + "execution_count": 54, "id": "320e873d", "metadata": { "tags": [ @@ -2957,7 +2844,7 @@ }, { "cell_type": "code", - "execution_count": 58, + "execution_count": 55, "id": "7a5ca3b1", "metadata": {}, "outputs": [], @@ -2996,7 +2883,7 @@ }, { "cell_type": "code", - "execution_count": 59, + "execution_count": 56, "id": "a6d6b2b7", "metadata": {}, "outputs": [ @@ -3033,7 +2920,7 @@ }, { "cell_type": "code", - "execution_count": 60, + "execution_count": 57, "id": "0c4e9767", "metadata": {}, "outputs": [], @@ -3050,7 +2937,7 @@ }, { "cell_type": "code", - "execution_count": 61, + "execution_count": 58, "id": "cf1b1388", "metadata": {}, "outputs": [], @@ -3061,7 +2948,7 @@ }, { "cell_type": "code", - "execution_count": 62, + "execution_count": 59, "id": "ae559251", "metadata": { "tags": [ @@ -3093,17 +2980,17 @@ }, { "cell_type": "code", - "execution_count": 63, + "execution_count": 60, "id": "bce2835c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 63, + "execution_count": 60, "metadata": {}, "output_type": "execute_result" }, @@ -3149,7 +3036,7 @@ }, { "cell_type": "code", - "execution_count": 64, + "execution_count": 61, "id": "976d4f63", "metadata": { "tags": [ @@ -3160,10 +3047,10 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 64, + "execution_count": 61, "metadata": {}, "output_type": "execute_result" }, @@ -3193,7 +3080,7 @@ }, { "cell_type": "code", - "execution_count": 65, + "execution_count": 62, "id": "70023a70", "metadata": { "scrolled": true, @@ -3406,7 +3293,7 @@ }, { "cell_type": "code", - "execution_count": 66, + "execution_count": 63, "id": "b6e6217d", "metadata": { "tags": [ @@ -3469,7 +3356,7 @@ }, { "cell_type": "code", - "execution_count": 67, + "execution_count": 64, "id": "4a4a4d5a", "metadata": {}, "outputs": [ @@ -3515,7 +3402,7 @@ }, { "cell_type": "code", - "execution_count": 68, + "execution_count": 65, "id": "1bd15d6d", "metadata": {}, "outputs": [ @@ -3564,7 +3451,7 @@ }, { "cell_type": "code", - "execution_count": 69, + "execution_count": 66, "id": "3df6456c", "metadata": {}, "outputs": [ @@ -3610,7 +3497,7 @@ }, { "cell_type": "code", - "execution_count": 70, + "execution_count": 67, "id": "c4eeb9fc", "metadata": {}, "outputs": [], @@ -3621,14 +3508,33 @@ }, { "cell_type": "code", - "execution_count": 71, + "execution_count": 68, "id": "fc7ae1f2", "metadata": { "tags": [ "hide_input" ] }, - "outputs": [], + "outputs": [ + { + "ename": "TypeError", + "evalue": "'ArrayBox' object does not support item assignment", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[1;32mIn[68], line 3\u001b[0m\n\u001b[0;32m 1\u001b[0m LHS_NT \u001b[38;5;241m=\u001b[39m (\n\u001b[0;32m 2\u001b[0m mu_arr_RO[:, \u001b[38;5;28;01mNone\u001b[39;00m]\n\u001b[1;32m----> 3\u001b[0m \u001b[38;5;241m*\u001b[39m \u001b[43mag\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mjacobian\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43;01mlambda\u001b[39;49;00m\u001b[43m \u001b[49m\u001b[43mtau\u001b[49m\u001b[43m:\u001b[49m\u001b[43m \u001b[49m\u001b[43mu_NT\u001b[49m\u001b[43m(\u001b[49m\u001b[43mtau\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mphi_arr\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\u001b[43m(\u001b[49m\u001b[43mtau_pt\u001b[49m\u001b[43m)\u001b[49m[reorder_mu, :]\n\u001b[0;32m 4\u001b[0m )\n\u001b[0;32m 5\u001b[0m RHS_NT \u001b[38;5;241m=\u001b[39m (\n\u001b[0;32m 6\u001b[0m u_NT(tau_pt, phi_arr)[reorder_mu]\n\u001b[0;32m 7\u001b[0m \u001b[38;5;241m-\u001b[39m (omega_l \u001b[38;5;241m/\u001b[39m (\u001b[38;5;241m4\u001b[39m \u001b[38;5;241m*\u001b[39m pi))\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 18\u001b[0m \u001b[38;5;241m*\u001b[39m np\u001b[38;5;241m.\u001b[39mexp(\u001b[38;5;241m-\u001b[39mtau_pt \u001b[38;5;241m/\u001b[39m mu0)\n\u001b[0;32m 19\u001b[0m )\n\u001b[0;32m 20\u001b[0m error_NT \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mabs(RHS_NT \u001b[38;5;241m-\u001b[39m LHS_NT)\n", + "File \u001b[1;32m~\\miniconda3\\envs\\twostream\\Lib\\site-packages\\autograd\\wrap_util.py:20\u001b[0m, in \u001b[0;36munary_to_nary..nary_operator..nary_f\u001b[1;34m(*args, **kwargs)\u001b[0m\n\u001b[0;32m 18\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m 19\u001b[0m x \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mtuple\u001b[39m(args[i] \u001b[38;5;28;01mfor\u001b[39;00m i \u001b[38;5;129;01min\u001b[39;00m argnum)\n\u001b[1;32m---> 20\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43munary_operator\u001b[49m\u001b[43m(\u001b[49m\u001b[43munary_f\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mnary_op_args\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mnary_op_kwargs\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[1;32m~\\miniconda3\\envs\\twostream\\Lib\\site-packages\\autograd\\differential_operators.py:60\u001b[0m, in \u001b[0;36mjacobian\u001b[1;34m(fun, x)\u001b[0m\n\u001b[0;32m 50\u001b[0m \u001b[38;5;129m@unary_to_nary\u001b[39m\n\u001b[0;32m 51\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mjacobian\u001b[39m(fun, x):\n\u001b[0;32m 52\u001b[0m \u001b[38;5;250m \u001b[39m\u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[0;32m 53\u001b[0m \u001b[38;5;124;03m Returns a function which computes the Jacobian of `fun` with respect to\u001b[39;00m\n\u001b[0;32m 54\u001b[0m \u001b[38;5;124;03m positional argument number `argnum`, which must be a scalar or array. Unlike\u001b[39;00m\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 58\u001b[0m \u001b[38;5;124;03m (out1, out2, ...) then the Jacobian has shape (out1, out2, ..., in1, in2, ...).\u001b[39;00m\n\u001b[0;32m 59\u001b[0m \u001b[38;5;124;03m \"\"\"\u001b[39;00m\n\u001b[1;32m---> 60\u001b[0m vjp, ans \u001b[38;5;241m=\u001b[39m \u001b[43m_make_vjp\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfun\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 61\u001b[0m ans_vspace \u001b[38;5;241m=\u001b[39m vspace(ans)\n\u001b[0;32m 62\u001b[0m jacobian_shape \u001b[38;5;241m=\u001b[39m ans_vspace\u001b[38;5;241m.\u001b[39mshape \u001b[38;5;241m+\u001b[39m vspace(x)\u001b[38;5;241m.\u001b[39mshape\n", + "File \u001b[1;32m~\\miniconda3\\envs\\twostream\\Lib\\site-packages\\autograd\\core.py:10\u001b[0m, in \u001b[0;36mmake_vjp\u001b[1;34m(fun, x)\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mmake_vjp\u001b[39m(fun, x):\n\u001b[0;32m 9\u001b[0m start_node \u001b[38;5;241m=\u001b[39m VJPNode\u001b[38;5;241m.\u001b[39mnew_root()\n\u001b[1;32m---> 10\u001b[0m end_value, end_node \u001b[38;5;241m=\u001b[39m \u001b[43mtrace\u001b[49m\u001b[43m(\u001b[49m\u001b[43mstart_node\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mfun\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 11\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m end_node \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m 12\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mvjp\u001b[39m(g): \u001b[38;5;28;01mreturn\u001b[39;00m vspace(x)\u001b[38;5;241m.\u001b[39mzeros()\n", + "File \u001b[1;32m~\\miniconda3\\envs\\twostream\\Lib\\site-packages\\autograd\\tracer.py:10\u001b[0m, in \u001b[0;36mtrace\u001b[1;34m(start_node, fun, x)\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m trace_stack\u001b[38;5;241m.\u001b[39mnew_trace() \u001b[38;5;28;01mas\u001b[39;00m t:\n\u001b[0;32m 9\u001b[0m start_box \u001b[38;5;241m=\u001b[39m new_box(x, t, start_node)\n\u001b[1;32m---> 10\u001b[0m end_box \u001b[38;5;241m=\u001b[39m \u001b[43mfun\u001b[49m\u001b[43m(\u001b[49m\u001b[43mstart_box\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 11\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m isbox(end_box) \u001b[38;5;129;01mand\u001b[39;00m end_box\u001b[38;5;241m.\u001b[39m_trace \u001b[38;5;241m==\u001b[39m start_box\u001b[38;5;241m.\u001b[39m_trace:\n\u001b[0;32m 12\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m end_box\u001b[38;5;241m.\u001b[39m_value, end_box\u001b[38;5;241m.\u001b[39m_node\n", + "File \u001b[1;32m~\\miniconda3\\envs\\twostream\\Lib\\site-packages\\autograd\\wrap_util.py:15\u001b[0m, in \u001b[0;36munary_to_nary..nary_operator..nary_f..unary_f\u001b[1;34m(x)\u001b[0m\n\u001b[0;32m 13\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m 14\u001b[0m subargs \u001b[38;5;241m=\u001b[39m subvals(args, \u001b[38;5;28mzip\u001b[39m(argnum, x))\n\u001b[1;32m---> 15\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mfun\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43msubargs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n", + "Cell \u001b[1;32mIn[68], line 3\u001b[0m, in \u001b[0;36m\u001b[1;34m(tau)\u001b[0m\n\u001b[0;32m 1\u001b[0m LHS_NT \u001b[38;5;241m=\u001b[39m (\n\u001b[0;32m 2\u001b[0m mu_arr_RO[:, \u001b[38;5;28;01mNone\u001b[39;00m]\n\u001b[1;32m----> 3\u001b[0m \u001b[38;5;241m*\u001b[39m ag\u001b[38;5;241m.\u001b[39mjacobian(\u001b[38;5;28;01mlambda\u001b[39;00m tau: \u001b[43mu_NT\u001b[49m\u001b[43m(\u001b[49m\u001b[43mtau\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mphi_arr\u001b[49m\u001b[43m)\u001b[49m)(tau_pt)[reorder_mu, :]\n\u001b[0;32m 4\u001b[0m )\n\u001b[0;32m 5\u001b[0m RHS_NT \u001b[38;5;241m=\u001b[39m (\n\u001b[0;32m 6\u001b[0m u_NT(tau_pt, phi_arr)[reorder_mu]\n\u001b[0;32m 7\u001b[0m \u001b[38;5;241m-\u001b[39m (omega_l \u001b[38;5;241m/\u001b[39m (\u001b[38;5;241m4\u001b[39m \u001b[38;5;241m*\u001b[39m pi))\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 18\u001b[0m \u001b[38;5;241m*\u001b[39m np\u001b[38;5;241m.\u001b[39mexp(\u001b[38;5;241m-\u001b[39mtau_pt \u001b[38;5;241m/\u001b[39m mu0)\n\u001b[0;32m 19\u001b[0m )\n\u001b[0;32m 20\u001b[0m error_NT \u001b[38;5;241m=\u001b[39m np\u001b[38;5;241m.\u001b[39mabs(RHS_NT \u001b[38;5;241m-\u001b[39m LHS_NT)\n", + "File \u001b[1;32m~\\Desktop\\CU\\Research\\Main\\Pythonic-DISORT\\src\\PythonicDISORT\\pydisort.py:417\u001b[0m, in \u001b[0;36mpydisort..u_corrected\u001b[1;34m(tau, phi, return_Fourier_error)\u001b[0m\n\u001b[0;32m 408\u001b[0m NT_corrections \u001b[38;5;241m=\u001b[39m TMS_correction(tau, phi)\n\u001b[0;32m 410\u001b[0m \u001b[38;5;66;03m# We provide two options below, comment and uncomment as desired.\u001b[39;00m\n\u001b[0;32m 411\u001b[0m \u001b[38;5;66;03m# Option 2 is more computationally efficient but would prevent the use of autograd for testing.\u001b[39;00m\n\u001b[0;32m 412\u001b[0m \n\u001b[0;32m 413\u001b[0m \u001b[38;5;66;03m#NT_corrections = NT_corrections + np.concatenate(\u001b[39;00m\n\u001b[0;32m 414\u001b[0m \u001b[38;5;66;03m# [np.zeros((N, len(tau), len(phi))), IMS_correction(tau, phi)], axis=0\u001b[39;00m\n\u001b[0;32m 415\u001b[0m \u001b[38;5;66;03m#) # Option 1\u001b[39;00m\n\u001b[1;32m--> 417\u001b[0m \u001b[43mNT_corrections\u001b[49m\u001b[43m[\u001b[49m\u001b[43mN\u001b[49m\u001b[43m:\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43m:\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43m:\u001b[49m\u001b[43m]\u001b[49m \u001b[38;5;241m+\u001b[39m\u001b[38;5;241m=\u001b[39m IMS_correction(tau, phi) \u001b[38;5;66;03m# Option 2\u001b[39;00m\n\u001b[0;32m 419\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m return_Fourier_error:\n\u001b[0;32m 420\u001b[0m u_star_outputs \u001b[38;5;241m=\u001b[39m u_star(tau, phi, \u001b[38;5;28;01mTrue\u001b[39;00m)\n", + "\u001b[1;31mTypeError\u001b[0m: 'ArrayBox' object does not support item assignment" + ] + } + ], "source": [ "LHS_NT = (\n", " mu_arr_RO[:, None]\n", @@ -3654,31 +3560,10 @@ }, { "cell_type": "code", - "execution_count": 72, + "execution_count": null, "id": "f50d1d34", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 72, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAu0AAAImCAYAAADnkbQQAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd1zV9ffA8dflApcN4gBUVFQcqIhb3AvNVa40K1c2LCvHr/G1LLVlVpYjtTTNbDhKTc29t+YA9xYFEURU9r738/vjAkUqMu7lc8HzfDzuQ/jc9/18zgWEc9/3vM9boyiKghBCCCGEEMJiWakdgBBCCCGEECJvkrQLIYQQQghh4SRpF0IIIYQQwsJJ0i6EEEIIIYSFk6RdCCGEEEIICydJuxBCCCGEEBZOknYhhBBCCCEsnCTtQgghhBBCWDhJ2oUQQgghhLBwkrQLIYQQQghh4SRpF0IFixcvRqPRYGdnx/Xr1++7v0OHDtSvXx8AjUaTr9uuXbuK+Vmo58CBA0yePJnY2FiTn3vy5MloNJpHjsv+Hl67dq3A1zBn/IXx3+eSV3xFed7mZmlf14dJSEjgnXfeoWvXrpQvXx6NRsPkyZMLdI7ExETGjh1LxYoVsbOzIyAggGXLlpknYCGERZCkXQgVpaWlMXHixDzHHDx4MNetR48e2Nvb33e8cePGxRS1+g4cOMCUKVNUTc569uzJwYMH8fLyKvBjLSH+f/vvc8krvqI8b3OztK/rw9y5c4f58+eTlpZGnz59CnWOfv368dNPPzFp0iQ2btxIs2bNGDx4ML/99ptpgxVCWAxrtQMQ4nH2xBNP8Ntvv/HWW2/RsGHDB45p2bJlrs/Lly+PlZXVfcfVlJycjIODQ4HvK8nKly9P+fLl1Q7DJAryXErT81ZL1apVuXfvHhqNhpiYGH744YcCPX7Dhg1s3bqV3377jcGDBwPQsWNHrl+/zttvv82gQYPQarXmCF0IoSKZaRdCRe+88w5ly5bl3XffNet1zp8/z+DBg/Hw8ECn01GlShWGDh1KWlparnH79u2jc+fOODs74+DgQKtWrVi/fn2uMdnlI8ePH2fAgAGUKVOGGjVqPPI+gEuXLvHss89SoUIFdDoddevWZc6cOQWKd/Lkybz99tsA+Pj43FcelN9rAKxfv56AgAB0Oh0+Pj589dVX+f6a/rdMJPu5nzlzhsGDB+Pq6oqHhwcvvPACcXFxub5+pog/v9e7ffs2L7/8Mt7e3uh0OsqXL0/r1q3Ztm3bA5/Lo+J7WHlMfuLOTywPcvnyZUaMGIGvry8ODg5UqlSJ3r17c+rUqXx/XR/k22+/zbPkzMHBgfT09DxjK4zs8xfW6tWrcXJy4umnn851fMSIEdy8eZPDhw8XNUQhhAWSmXYhVOTs7MzEiRMZM2YMO3bsoFOnTia/xokTJ2jTpg3lypXjo48+wtfXl8jISNauXUt6ejo6nQ6A3bt3ExQUhL+/PwsXLkSn0zF37lx69+7N0qVLGTRoUK7z9uvXj2eeeYZRo0aRlJT0yPvOnj1Lq1atqFKlCtOnT8fT05PNmzfz5ptvEhMTw6RJk/IV74svvsjdu3eZPXs2q1atyinT8PPzy/c1ALZv385TTz1FYGAgy5YtQ6/X88UXX3Dr1q0ifb379+/PoEGDGDlyJKdOnWLChAkALFq0CMBk8ef3ekOGDOH48eN8+umn1KpVi9jYWI4fP86dO3ceGH9e8T1MfuMuaCzZbt68SdmyZfn8888pX748d+/e5aeffqJFixYEBwdTu3btQsXdu3dvmjZtCkBwcDCvvfYaX3/9NYGBgQA4ODhga2ub6zGKoqDX6/OMN5u1tXn+xJ4+fZq6deved35/f/+c+1u1amWWawshVKQIIYrdjz/+qADKkSNHlLS0NKV69epK06ZNFYPBoCiKorRv316pV6/eAx87bNgwxdHRMd/X6tSpk+Lm5qZER0fnOa5ly5ZKhQoVlISEhJxjmZmZSv369ZXKlSvnxDZp0iQFUD788MP7zpHXfd26dVMqV66sxMXF5Tr++uuvK3Z2dsrdu3fzHe+XX36pAEpoaGihrqEoitKiRQulYsWKSkpKSs6x+Ph4xd3dXcnPr8bs72F2DNnP/Ysvvsg17rXXXlPs7Oxyvn6mij+/13NyclLGjh1boOfysPgeNLYgcecnlvzIzMxU0tPTFV9fX2XcuHE5x/OK+1HmzJmjAEpYWFie43bu3KkA+brlJ47bt28rgDJp0qR8x+rr66t069btvuM3b95UAOWzzz7L97mEECWHlMcIoTJbW1s++eQTjh49yooVK0x67uTkZHbv3s3AgQPzrENOSkri8OHDDBgwACcnp5zjWq2WIUOGcOPGDS5cuJDrMf3793/o+f57X2pqKtu3b6dv3744ODiQmZmZc+vRowepqakcOnQo3/E+SH6vkf18jxw5Qr9+/bCzs8s5h7OzM7179y7Qdf/rySefzPW5v78/qampREdHmyz+glyvefPmLF68mE8++YRDhw6RkZFRpOdXlLgLG0tmZiafffYZfn5+2NraYm1tja2tLZcuXeLcuXMmeR4hISG4u7vj7e2d57gmTZpw5MiRfN0qVqxoktgeJK/ymqKU3gghLJck7UJYgGeeeYbGjRvz/vvvmzSpunfvHnq9nsqVKz9ynKIoD+wIkp14/LeEIa/uIf+9786dO2RmZjJ79mxsbGxy3Xr06AFATExMvuN9kPxeI/v5GgwGPD097zvPg44VRNmyZXN9nl1+lJKSYrL4C3K95cuXM2zYMH744QcCAwNxd3dn6NChREVFFe4JFiHuwsYyfvx4PvjgA/r06cO6des4fPgwR44coWHDho/8uuZXSEgIAQEBjxzn5OREQEBAvm7/La0xlbJlyz6wpOju3bsAuLu7m+W6Qgh1SU27EBZAo9Ewbdo0goKCmD9/vsnO6+7ujlar5caNG3mOK1OmDFZWVkRGRt53382bNwEoV67cfTE/zH/vK1OmTM6s/ejRox/4GB8fHxwcHPIV74Pk9xrZYzUazQOTRVMlswVVkPgLoly5csyYMYMZM2YQFhbG2rVr+d///kd0dDSbNm0qatgFiruwsfzyyy8MHTqUzz77LNfxmJgY3NzcivwcFEXh9OnTvPrqq48cu3v3bjp27Jiv84aGhlKtWrUiRne/Bg0asHTpUjIzM3PVtWcvzM3e40EIUbpI0i6EhejSpQtBQUF89NFHj3yLPr/s7e1p3749v//+O59++ul9iXc2R0dHWrRowapVq/jqq6+wt7cHwGAw8Msvv1C5cmVq1apV6DgcHBzo2LEjwcHB+Pv75zkDmZ94HzR7XZBrODo60rx5c1atWsWXX36ZUyKTkJDAunXrCvMUC6So8RdWlSpVeP3119m+fTv79+8vUHwPU9i48xsLGF8EZseUbf369URERFCzZs1Cxf1vd+/eJSUlJV8virLLY/LDXOUxffv2ZcGCBaxcuTLXAvGffvqJihUr0qJFC7NcVwihLknahbAg06ZNo0mTJkRHR1OvXj2TnPPrr7+mTZs2tGjRgv/973/UrFmTW7dusXbtWr7//nucnZ0BmDp1KkFBQXTs2JG33noLW1tb5s6dy+nTp1m6dGmR62RnzpxJmzZtaNu2La+++irVqlUjISGBy5cvs27dOnbs2JHveBs0aJBzzmHDhmFjY0Pt2rXzfQ2Ajz/+mCeeeIKgoCD+7//+D71ez7Rp03B0dMwpMzAXU8SfH3FxcXTs2JFnn32WOnXq4OzszJEjR9i0aRP9+vUrcHzZPyv/lZ+4CxsLQK9evVi8eDF16tTB39+fY8eO8eWXX95XRlXQuLPpdDpsbGzYunUr/v7+NGzYEFdX1weOdXZ2zuk4UxQbN24kKSmJhIQEwNiB548//gCgR48eOXsb7N69m86dO/Phhx/y4YcfAtC9e3eCgoJ49dVXiY+Pp2bNmixdupRNmzbxyy+/SI92IUortVfCCvE4+nf3mP969tlnFcBk3WMURVHOnj2rPP3000rZsmUVW1tbpUqVKsrw4cOV1NTUXOP27t2rdOrUSXF0dFTs7e2Vli1bKuvWrcs1Jrtrye3bt++7Tl73KYqihIaGKi+88IJSqVIlxcbGRilfvrzSqlUr5ZNPPilwvBMmTFAqVqyoWFlZKYCyc+fOAl1DURRl7dq1ir+/f841Pv/885zn8CgP6x7z3+f+oG4rpog/P9dLTU1VRo0apfj7+ysuLi6Kvb29Urt2bWXSpElKUlJSnjE+LL6HPZ9HxZ3fWB7k3r17ysiRI5UKFSooDg4OSps2bZS9e/cq7du3V9q3b5+vr+ujfP3110rFihUVQLlw4UK+HlMUVatWzVfXmexuNf/tLpOQkKC8+eabiqenp2Jra6v4+/srS5cuNXvcQgj1aBRFUYrvJYIQQgghhBCioKR7jBBCCCGEEBZOknYhhBBCCCEsnCTtQgghhBBCWDhJ2oUQQgghhLBwkrQLIYQQQghh4aRPuxBCCCGEUJViSDbbuTVWDmY7d3GSlo8mYjAYuHnzJs7OzkXehEYIIYQQwpwURSEhIYGKFStiZaV+4UXytZqkZ5gnJbXzPpOz83VJJkm7idy4ccNkW88LIYQQQhSH8PDw+3YXLm6pqan4VHUiKlpvlvN7enoSGhpa4hN3KY8xkextssPDw3FxcVE5GiGEEEKIh4uPj8fb2zsnf1FTeno6UdF6wq5fxMXFtPHExydQpWot0tPTJWkXRtklMS4uLpK0CyGEEKJEsKSSXlc3D5PnUKWlnh2ke4wQQgghhBAWT5J2IYQQQgghLJwk7UIIIYQQQlg4qWkXQgghSjhFUcjMzESvN0/3DVHyaLVarK2tLapmXRSNJO1CCCFECZaenk5kZCTJyebbnEaUTA4ODnh5eWFra6t2KMIEJGkXQgghSiiDwUBoaCharZaKFStia2srM6sCRVFIT0/n9u3bhIaG4uvraxEbKImikaRdCCGEKKHS09MxGAx4e3vj4FB6WtuJorO3t8fGxobr16+Xih7lQhaiCiGEECWezKKKB5Gfi9JFvptCCCGEEEJYOEnahRBCCCGEsHCStAshhBAC9HrYtQuWLjX+a0HtIzUaDX/++afaYQAwfPhw+vTpo3YY4jEkSbsQQgjxuFu1CqpVg44d4dlnjf9Wq2Y8bibDhw9Ho9Gg0WiwsbHBw8ODoKAgFi1ahMFgyDU2MjKS7t27my0WgMmTJxMQEGDWawhRFJK0CyGEEI+zVatgwAC4cSP38YgI43EzJu5PPPEEkZGRXLt2jY0bN9KxY0fGjBlDr169yMzMzBnn6emJTqd76HkyMjLMFqMQlkKSdiGEEOJxpdfDmDGgKPffl31s7FizlcrodDo8PT2pVKkSjRs35r333mPNmjVs3LiRxYsX54z7d3nMtWvX0Gg0rFixgg4dOmBnZ8cvv/wCwI8//kjdunWxs7OjTp06zJ07N9f1bty4wTPPPIO7uzuOjo40bdqUw4cPs3jxYqZMmcKJEydyZv//ff0HmTJlChUqVMDFxYVXXnmF9PT0nPsUReGLL76gevXq2Nvb07BhQ/7444+c+/V6PSNHjsTHxwd7e3tq167NzJkzc50/uwzns88+w8PDAzc3N6ZMmUJmZiZvv/027u7uVK5cmUWLFhXiKy9KIunTLoQQQjyu9u69f4b93xQFwsON4zp0KJaQOnXqRMOGDVm1ahUvvvjiQ8e9++67TJ8+nR9//BGdTseCBQuYNGkS3377LY0aNSI4OJiXXnoJR0dHhg0bRmJiIu3bt6dSpUqsXbsWT09Pjh8/jsFgYNCgQZw+fZpNmzaxbds2AFxdXR967e3bt2NnZ8fOnTu5du0aI0aMoFy5cnz66acATJw4kVWrVjFv3jx8fX3Zs2cPzz//POXLl6d9+/YYDAYqV67MihUrKFeuHAcOHODll1/Gy8uLgQMH5lxnx44dVK5cmT179rB//35GjhzJwYMHadeuHYcPH2b58uWMGjWKoKAgvL29TfQdEJZKknYhhBDicRUZadpxJlKnTh1OnjyZ55ixY8fSr1+/nM8//vhjpk+fnnPMx8eHs2fP8v333zNs2DB+++03bt++zZEjR3B3dwegZs2aOY93cnLC2toaT0/PR8Zna2vLokWLcHBwoF69enz00Ue8/fbbfPzxx6SkpPD111+zY8cOAgMDAahevTr79u3j+++/p3379tjY2DBlypSc8/n4+HDgwAFWrFiRK2l3d3dn1qxZWFlZUbt2bb744guSk5N57733AJgwYQKff/45+/fv55lnnnlk3KJkk6RdCCGEeFx5eZl2nIkoioJGo8lzTNOmTXM+vn37NuHh4YwcOZKXXnop53hmZmbOjHlISAiNGjXKSdiLomHDhrl2oA0MDCQxMZHw8HCio6NJTU0lKCgo12PS09Np1KhRzuffffcdP/zwA9evXyclJYX09PT7FsLWq1cv1wZJHh4e1K9fP+dzrVZL2bJliY6OLvJzEpZPknYhhBDicdW2LVSubFx0+qC6do3GeH/btsUa1rlz5/Dx8clzjKOjY87H2d1mFixYQIsWLXKN02q1ANjb25s4yvtpNJqcWNavX0+lSpVy3Z+9mHbFihWMGzeO6dOnExgYiLOzM19++SWHDx/ONd7Gxua+8z/o2H+77YjSSZJ2IYQQ4nGl1cLMmcYuMRpN7sQ9e6Z7xgzjuGKyY8cOTp06xbhx4/L9GA8PDypVqsTVq1d57rnnHjjG39+fH374gbt37z5wtt3W1hZ9PhfcnjhxgpSUlJwXAocOHcLJyYnKlStTpkwZdDodYWFhtG/f/oGP37t3L61ateK1117LOXblypV8Xbs0MxiSMRhMm5oaDMkmPZ+aJGkXQgghHmf9+sEffxi7yPx7UWrlysaE/V9146aWlpZGVFQUer2eW7dusWnTJqZOnUqvXr0YOnRogc41efJk3nzzTVxcXOjevTtpaWkcPXqUe/fuMX78eAYPHsxnn31Gnz59mDp1Kl5eXgQHB1OxYkUCAwOpVq0aoaGhhISEULlyZZydnR/aZjI9PZ2RI0cyceJErl+/zqRJk3j99dexsrLC2dmZt956i3HjxmEwGGjTpg3x8fEcOHAAJycnhg0bRs2aNVmyZAmbN2/Gx8eHn3/+mSNHjjzy3YXSLjyyIc6Jpm1smJBQet6FkKRdCCGEeNz16wdPPWXsEhMZaaxhb9vW7DPsmzZtwsvLC2tra8qUKUPDhg2ZNWsWw4YNy1XLnR8vvvgiDg4OfPnll7zzzjs4OjrSoEEDxo4dCxhn0rds2cL//d//0aNHDzIzM/Hz82POnDkA9O/fn1WrVtGxY0diY2P58ccfGT58+AOv1blzZ3x9fWnXrh1paWk888wzTJ48Oef+jz/+mAoVKjB16lSuXr2Km5tbTktLgFGjRhESEsKgQYPQaDQMHjyY1157jY0bNxb4aygeHxpFeVARmyio+Ph4XF1diYuLw8XFRe1whBBCPAZSU1MJDQ3Fx8cHOzs7tcMRFiavnw9LyluyY7l3L9LkscTHx1OmjJdFPM+ikpl2IYQQQgihOisrB6ysHB49sEDnzHz0oBJCdkQVQgghhBDCwknSLoQQQgghhIWTpF0IIYQQQggLJ0m7EEIIUcJJTwnxIPJzUbpI0i6EEEKUUNm7YyYnl54NZITpZP9c/HcXVVEySfcYIYQQooTSarW4ubkRHR0NgIODA5rsnUzFY0tRFJKTk4mOjsbNzQ1tMe5oK8xHknYhhBCiBPP09ATISdyFyObm5pbz8yFKPknahRBCiBJMo9Hg5eVFhQoVyMjIUDscYSFsbGxkhr2UkaRdCCGEKAW0Wq0kaUKUYrIQVQghhBBCCAsnSbsQQgghhBAWTpJ2IYQQQgghLJwk7UIIIYQQQlg4SdqFEEIIIYSwcJK0CyGEEEIIYeEkaRdCCCGEEMLCSdIuhBBCCCEEMHnyZDQaTa5bXrvK7tq1677xGo2G8+fP5xq3cuVK/Pz80Ol0+Pn5sXr16gLHJpsrCSGEEEIIkaVevXps27Yt5/P8bFp24cIFXFxccj4vX758zscHDx5k0KBBfPzxx/Tt25fVq1czcOBA9u3bR4sWLfIdlyTtQgghhBBCdXpDMnqDaVNTvSG5wI+xtrbOc3b9QSpUqICbm9sD75sxYwZBQUFMmDABgAkTJrB7925mzJjB0qVL8x9XgSISQgghhBDCDPaFt8HR+dGz2gWRlKAHID4+PtdxnU6HTqd74GMuXbpExYoV0el0tGjRgs8++4zq1avneZ1GjRqRmpqKn58fEydOpGPHjjn3HTx4kHHjxuUa361bN2bMmFGg5yI17UIIIYQQolTz9vbG1dU15zZ16tQHjmvRogVLlixh8+bNLFiwgKioKFq1asWdO3ceON7Ly4v58+ezcuVKVq1aRe3atencuTN79uzJGRMVFYWHh0eux3l4eBAVFVWg5yAz7UIIIYQQQnVtvPflqgs3BeMMuxfh4eG5zv2wWfbu3bvnfNygQQMCAwOpUaMGP/30E+PHj79vfO3ataldu3bO54GBgYSHh/PVV1/Rrl27nOMajSbX4xRFue/Yo0jSLoQQQgghVKe1ckBr5WDic2YC4OLiUqgXBI6OjjRo0IBLly7l+zEtW7bkl19+yfnc09Pzvln16Ojo+2bfH0XKY4QQQgghhHiAtLQ0zp07h5eXV74fExwcnGt8YGAgW7duzTVmy5YttGrVqkCxlMikfe7cufj4+GBnZ0eTJk3Yu3fvQ8cOHz78gf0z69WrlzNm8eLFDxyTmppaHE9HCCGEEEJYgLfeeovdu3cTGhrK4cOHGTBgAPHx8QwbNgwwdn4ZOnRozvgZM2bw559/cunSJc6cOcOECRNYuXIlr7/+es6YMWPGsGXLFqZNm8b58+eZNm0a27ZtY+zYsQWKrcSVxyxfvpyxY8cyd+5cWrduzffff0/37t05e/YsVapUuW/8zJkz+fzzz3M+z8zMpGHDhjz99NO5xrm4uHDhwoVcx+zs7MzzJIQQQgghhMW5ceMGgwcPJiYmhvLly9OyZUsOHTpE1apVAYiMjCQsLCxnfHp6Om+99RYRERHY29tTr1491q9fT48ePXLGtGrVimXLljFx4kQ++OADatSowfLlywvUox1AoyiKYpqnWTxatGhB48aNmTdvXs6xunXr0qdPn4euBP63P//8k379+hEaGprzDVi8eDFjx44lNja20HHFx8fj6upKXFycyRdRCCGEEEKYkiXlLeaMxZKeZ1GVqPKY9PR0jh07RteuXXMd79q1KwcOHMjXORYuXEiXLl1yEvZsiYmJVK1alcqVK9OrVy+Cg4PzPE9aWhrx8fG5bkIIIYQQQphDiUraY2Ji0Ov1he51GRkZycaNG3nxxRdzHa9Tpw6LFy9m7dq1LF26FDs7O1q3bp3nSuGpU6fm6vfp7e1duCclhBBCCCHEI5SopD1bYXtdLl68GDc3N/r06ZPreMuWLXn++edp2LAhbdu2ZcWKFdSqVYvZs2c/9FwTJkwgLi4u5xYeHl6o5yKEEEIIIcSjlKiFqOXKlUOr1Raq16WiKCxatIghQ4Zga2ub51grKyuaNWuW50x7XtvfCiGEEEIIYUolaqbd1taWJk2a3NfrcuvWrY/sdbl7924uX77MyJEjH3kdRVEICQkpUE9OIYQQQgghzKVEzbQDjB8/niFDhtC0aVMCAwOZP38+YWFhjBo1CjCWrURERLBkyZJcj1u4cCEtWrSgfv36951zypQptGzZEl9fX+Lj45k1axYhISHMmTOnWJ6TEEIIIYQQeSlxSfugQYO4c+cOH330EZGRkdSvX58NGzY8tH8mQFxcHCtXrmTmzJkPPGdsbCwvv/wyUVFRuLq60qhRI/bs2UPz5s3N/nyEEEIIIYR4lBLXp91SlaY+oEIIIYQo3Swpb5E+7flTomrahRBCCCGEeBxJ0i6EEEIIIYSFk6RdCCGEEEIICydJuxBCCCGEEBZOknYhhBBCCCEsnCTtQgghhBBCWLgS16ddCCGEEEKUPhmGFDIMNiY/Z2khSbsQQgghhFDdb1f7YO9k2tQ0JTHTpOdTk5THCCGEEEIIYeFkpl0IIYQQQqju2ep/mmVH1DfxNOk51SJJuxBCCCGEUJ2NlT02VvYmPmeGSc+nJimPEUIIIYQQwsJJ0i6EEEIIIYSFk6RdCCGEEEIICydJuxBCCCGEEBZOknYhhBBCCCEsnCTtQgghhBBCWDhJ2oUQQgghhLBwkrQLIYQQQghh4SRpF0IIIYQQwsJJ0i6EEEIIIYSFs1Y7ACGEUFtmpp6oiFhu3rhLRNgdbt64S2pKBlZWGrTWVmi1uW9WD/1ck+s+nZ0N3lXL4e1TDltb+XUrhBCi8OSviBDisaDPNHArKpaIsLvcDL9DRPhdIsLuEhF+h1uRsRj0itmubaXVULlKOXxqVqBazQr41PDAp2YFKni5YWWlMdt1hRBClB6StAshSpXbt+IJu3abm1kJeUT4XW6G3SXq5j0yMw0PfZzOzoaK3u5Uyro5OtthMCjoMw3o9cabQf/Px/pMAwZD9ue5x2WPTUpM5frV2yQmpBIWepuw0Nvs3nom55r2DrZUq1EhK5n3wKeG8V8XV/vi+FIJIYQoQSRpF0KUaIqicPHsTQ7sPs+BXRcIC7390LG2Omu8KpWhUpWyVPJ2NybpWR+XLe+MRmP6WW9FUYiJTuDa5VuEXokm9JLx3/DQ26Qkp3Pu1A3OnbqR6zFlyzvjU9MjZ2a+fsMqeFYqY/LYhBBClByStAshSpzMTD0nj13nwK5zHNxzgZjohJz7tForKlVxp6K3MRmvVMWdSt5lqejtTrkKLsVejqLRaCjv4UJ5DxeatfbN9RxuXL/DtSvRhF6+ReilaK5ducWtyDju3E7gzu0Ejh68nDO+dr1KdOhaj3Zd6lGugkuxPgchhBDq0yiKYr5CzsdIfHw8rq6uxMXF4eIif1CFMLXkpDSOHbrCgV3nObzvIkmJaTn32TvY0rRVTVq1r0Pz1r44OdupGGnRJCWmce2KMYEPvRzNlQtRnD99A4PB+Ktao4H6AVXp0K0+bTrVxa2Mo8oRCyFKIkvKW8wZiyU9z6KSpN1EStMPhRCW4t6dRA7tvciB3ecJ/vsqGen6nPvc3B0JbFebVh3qENDUB1td6X3j8G5MInt3nGX3ltOcORGec9xKq6FRs+p06FqfVh3qlOgXK0KI4mVJeYsk7fkjSbuJlKYfCiHUFBF+lwO7znNw93nOngzn37+hKnq707pDHQLb16FO/UpotY/fVhPRUXHs3nqG3VtPc+lcZM5xGxstTVvVpEPX+rRsWws7e1sVoxRCWDpLylskac8fSdpNpDT9UAhR3OJjk9nyVwhb1oVw/WruhaS1/CrSqkMdWrWvQxWfcmZZLFpSRYTdYffWM+zcfDrXAlydnQ3NW/vSom0tmrf2xdXNQcUohRCWyJLyluxYbt+7ZZakvXwZD4t4nkUlSbuJWNIPvxAlxYUzEaz74yi7t54mPS0TMC4kbdi0Gq3a16Flu9qU95D/T/lx7XI0u7aeZteW00TeuJdz3MpKQ90GlWnZrjZdewXg5i418EIIy8pbsmP5v/290DnZmPTcaYkZTG/9l0U8z6IqvUWgQgiLlJqawe4tp1n3x5Fc5R01annSq39T2nbxw9lF+pQXVLWaFRhesxPDRnXk0rlIDu4+z6G9F7l66RZnToRz5kQ4P8/fRddeAQx4vhVelaWFpBBClCQy024ilvSKVQhLdOP6HdavOsqWdSEkJqQCxjrsdkH16D2gGXXqV5LSFzOIjorj8N6LbPkrhItnbwLG2fe2nf0YOKw1NWt7qRyhEEINlpS3SHlM/kjSbiKW9MMvhKXQZxo4vO8i6/44wvHDV3OOe1Z0o2f/pnTtHSAtC4uJoiicOHaN35ccyNX/vXGL6gwc2pqAZj7yokmIx4gl5S2yEDV/pDxGCGFyd2IS2PTncTasPk5MdDxg7C/evHUteg9oSpPAmsW+ydHjTqPRENDUh4CmPly5GMXvSw6we9tpjh++yvHDV6lVtyJPD21F6451H8uuPEIIYelkpt1EStMrOSEKQ1EUTh2/zro/jrJ/5zn0egMArm4OPPFUI3r0a4pnRTd1gxS5REXcY+VvB9m8Jpi0rIXAFb3dGfB8IEE9A0p173shHneWlLfITHv+SNJuIqXph0KIgjp++Crff7OZa1eic47Va+hNrwHNaNOpLra2kvxZsth7Saxd8Tdrfz9CQlwKAGXcHenzTAt6DWgmmzYJUQpZUt4iSXv+SNJuIqXph0KI/IqPTWb+jC1sXX8CADt7Gzp196dX/6bUqOWpcnSioFKS09m05jgrfz3I7VvGsiYHR1t69G1C38EtKVdBfrcJUVpYUt4iSXv+SNJuIqXph0KIR1EUhV1bTjNv+ibi7iWj0UDvp5sxbFQnmZUtBTIz9ezacprflxzIeffE2tqKzj38GTS8LZW83VWOUAhRVJaUt0jSnj+StJtIafqhECIv0VFxzP58PX/vvwRA1erlGft+b/z8vVWOTJiaoij8vf8SK5bs53RwGAA6nTWvjO9Gj75NpNuMECWYJeUtkrTnjxSaCiHyRa83sHbF3yyet4PUlAxsbLQMfqEtA4e1wcZGq3Z4wgw0Gg0t2tSiRZtanD0Zzk/zdhJyNJRZU9dz9OAVxr3fGxc3B7XDFEKIx4Ik7UKIRwq9fItvPlnHhTMRANQLqMLY93tTpVo5lSMTxcXP35upc4aweukhFn27jQO7znPhTATvTOlLQDMftcMTQohST5J2IcRDpadl8tuiPaz4aT96vQEHRx0vvtmF7n2aSJ/1x5CVlYb+zwXSsGk1pr6/khvX7/C/0UsYOLQ1Q0d1xNpa3nERQghzkR00hBAPdOr4dV599juWLtqLXm+gVYc6LFjxGj37NZWE/TFXs7YXc35+me59GqMosPyn/YwbuYiI8LtqhyaEEKWWzLQLIXJJTEhl4eytbFh9HAD3sk6MfqcHbTrVVTkyYUns7G0Z+35vmgTWYMan67h49iajn/+e0W93p0vPhrJIVQghTEySdiFEjn07zjHnyw3cjUkEoEffxox8I0jaOIqHatvJj9p+lfhy0mpOHr/OV1PWcPTgFd74X0/5uRFCCBOSpF0IwZ3bCcz5YgP7d50HoHKVsox9vzcNGldVOTJRElTwdOXzuUNZsWQ/S77fya4tpzl3Kpx3P+5PvYbSClQIIUxBatqFeMyFXr7F60Pns3/XebRaKwa/0JZ5v42ShF0UiFZrxeARbfnmhxfwqlSGW5FxvPXyj/yyYBf6TIPa4QkhRIlXIpP2uXPn4uPjg52dHU2aNGHv3r0PHbtr1y40Gs19t/Pnz+cat3LlSvz8/NDpdPj5+bF69WpzPw0hVHfmRBhvvbyYuzGJVK1enjm/vMzwVzthq5M34UTh1KlfmTm/vELnHv4YDAo/z9/N26MWcysyVu3QhBCiRCtxSfvy5csZO3Ys77//PsHBwbRt25bu3bsTFhaW5+MuXLhAZGRkzs3X1zfnvoMHDzJo0CCGDBnCiRMnGDJkCAMHDuTw4cPmfjpCqObwvotMGP0ziQmp1GvozfQFI/Cp6aF2WKIUcHTS8c6Uvrz7UV8cHG05cyKcV5/9jl1bTqsdmhBClFglLmn/+uuvGTlyJC+++CJ169ZlxowZeHt7M2/evDwfV6FCBTw9PXNuWu0//YRnzJhBUFAQEyZMoE6dOkyYMIHOnTszY8YMMz8bIdSxfcNJJr+1jLS0TJq39uWzb4fg7GKvdliilOnU3Z+5v4yiboPKJCWmMfX9lXw1ZQ3JSWlqhyaEEI80depUNBoNY8eOfeiY4cOHP7Cio169ejljFi9e/MAxqampBYqnRCXt6enpHDt2jK5du+Y63rVrVw4cOJDnYxs1aoSXlxedO3dm586due47ePDgfefs1q1bnudMS0sjPj4+102IkmD10kN8MWk1Br1C5+7+TPpqEHZ2NmqHJUopr8pl+Gr+cJ4d2Q4rKw1b/wrh9aHzpVxGCGHRjhw5wvz58/H3989z3MyZM3NVcoSHh+Pu7s7TTz+da5yLi0uucZGRkdjZFazDVolK2mNiYtDr9Xh45H4L38PDg6ioqAc+xsvLi/nz57Ny5UpWrVpF7dq16dy5M3v27MkZExUVVaBzgvHVl6ura87N21s6JAjLpigKi+ft4LuvNwPQd3AL3prcR3axFGZnba1l2KiOfDFvGOU9XIgIu8u7ry4hJlomO4QQ/0jTp5nlVlCJiYk899xzLFiwgDJlyuQ51tXVNVclx9GjR7l37x4jRozINU6j0eQa5+npWeC4SuRqs/9u2qEoykM38qhduza1a9fO+TwwMJDw8HC++uor2rVrV6hzAkyYMIHx48fnfB4fHy+Ju7BYer2Bb7/YwIZVxwAY/lonnhneRjbAEcWqQeOqfLNwJG+9/COREfd497UlfPX9cMqUdVI7NCGEBXgzeDy2TrYmPWd6YjrAfRUROp0OnU73wMeMHj2anj170qVLFz755JMCXW/hwoV06dKFqlVzd2BLTEykatWq6PV6AgIC+Pjjj2nUqFGBzl2iZtrLlSuHVqu9bwY8Ojr6vpnyvLRs2ZJLly7lfO7p6Vngc+p0OlxcXHLdhLBE6emZTH1/JRtWHUOjgTcn9GTwiLaSsAtVlPdwYVrWjPuN63eY8PrPxMcmqx2WEKKU8/b2zlUhMXXq1AeOW7ZsGcePH3/o/XmJjIxk48aNvPjii7mO16lTh8WLF7N27VqWLl2KnZ0drVu3zpWL5keJmmm3tbWlSZMmbN26lb59++Yc37p1K0899VS+zxMcHIyXl1fO54GBgWzdupVx48blHNuyZQutWrUyTeBCqCQ5KY0pby8n5EgoNjZa3v24H207+6kdlnjMeVZ0Y9rcobz18mJCL0cz4Y1fmDZ3qOygKsRjblajr00+CRofH88yfiE8PDzXuR80yx4eHs6YMWPYsmVLgevNwbjg1M3NjT59+uQ63rJlS1q2bJnzeevWrWncuDGzZ89m1qxZ+T5/iUraAcaPH8+QIUNo2rQpgYGBzJ8/n7CwMEaNGgUYy1YiIiJYsmQJYOwMU61aNerVq0d6ejq//PILK1euZOXKlTnnHDNmDO3atWPatGk89dRTrFmzhm3btrFv3z5VnqMQphB7L4kPxvzGxXM3sXewZdKXg2jUvLraYQkBQKUqZfl87lDefmUxl89HMnHMr3w2+3kcHB/8drUQovTTaXXotKb9HZB9vvxURRw7dozo6GiaNGmSc0yv17Nnzx6+/fZb0tLScnUf/DdFUVi0aBFDhgzB1jbvEh8rKyuaNWtWumfaAQYNGsSdO3f46KOPiIyMpH79+mzYsCGndigyMjJXz/b09HTeeustIiIisLe3p169eqxfv54ePXrkjGnVqhXLli1j4sSJfPDBB9SoUYPly5fTokWLYn9+QphCdFQcE17/mRvX7+Dq5sAnM5+jll9FtcMSIpeq1csz9dshvPPqT5w7dYNJ45fy8cznpJuREEIVnTt35tSpU7mOjRgxgjp16vDuu+8+NGEH2L17N5cvX2bkyJGPvI6iKISEhNCgQYMCxadRFEUp0CPEA8XHx+Pq6kpcXJzUtwtVhYXeZsLrvxATHU95Dxc++3YIVaqVUzssIR7qwpkI/jd6CclJ6TRpWYPJXz0ju/IKYWaWlLeYM5ainrtDhw4EBATk7N3z34qObEOGDOHSpUscOnTovnNMmTKFli1b4uvrS3x8PLNmzeLnn39m//79NG/ePN+xlKiFqEKIvJ0/fYPxL/1ITHQ8VXzK8c3CkZKwC4tXu14lPp7xHDo7G44dusKnE34nI0OvdlhCCHGf/1Z0AMTFxbFy5cqHzrLHxsby8ssvU7duXbp27UpERAR79uwpUMIOMtNuMpb0ilU8no4dusJH7ywnNSWDOvUr8fE3z+Li5qB2WELkW8iRUD4Y9xvpaZm07ezHhE/6o7WWuSUhzMGS8hZLnmm3JPLbUIhSYM+2M3w47jdSUzJo0rIGn88ZKgm7KHECmvnw4bSBWFtbsXf7WaZ/tAa93qB2WEIIYREkaReihAv++yqfT1xFZqaB9kH1mPL1YOwdTLs5hRDFpVlrX977bABWWg3bN55k1tS/kDeEhRBCknYhSrSw0Nt8/O4K9HoDHbrV592P+2Fj8/DV7UKUBK071uXdj/phZaVh05pg5k3fJIm7EOKxJ0m7ECVU7N0kJo79jaTENOo19Ob/PngKrVb+S4vSoUPX+oz/4EkA1iz/m4XfbpPEXQjxWJO/8EKUQGmpGUx+axm3bsbiVbkMk6RFniiFgnoF8Mb/egLw+5ID/LJgt8oRCSGEeiRpF6KEMRgUvpqyhnOnbuDkYscnM57DVRadilKqV/+mvDKuGwC/LNjN8p9kp2ohxONJknYhSpifvtvBnm1nsLa2YtIXg6hctazaIQlhVv2ebcnw1zoBsOjb7axeev/mJUIIUdpJ0i5ECbJ5bTDLfjTONI6d+CT+TaqpG5AQxWTwiLY8+0JbAL77ejMbVh1TOSIhhChekrQLUUKEHAll5md/AfDsyHYE9WyockRCFK+hozrS/7lAAGZ9/hf7dpxTOSIhhCg+krQLUQKEXYvJ1dpx6Csd1A5JiGKn0Wh4aUwQPfs3QVHgi0mruXIhSu2whBCiWEjSLoSFi72XxAdjfiUxITWntaNGo1E7LCFUodFoGP1WDxo1r05aagaT/m8p9+4kqh2WEEKYnSTtQliw9LRMJv/fMqJuxuJVqQwffjlIWjuKx57W2or3pw6gUhV3bt+K56N3VpCenql2WEIIYVaStAthwRbN2ZbT2vHjGc/iVsZR7ZCEsAjOLvZMmT4YRycdZ0+Gs+zHvWqHJIQQZiVJuxAW6tjhK6xeehiAdz/qh3e1cipHJIRl8a5WjjHv9QZg+eJ9XLscrXJEQghhPpK0C2GB4mOTmT5lDQC9n25G89a+KkckhGVq18WPlu1qk5lp4JtP16LXG9QOSQhRSCn6NLPcSgspjhXCwiiKwsypf3HndgLe1crx4ptBaockhMXSaDS8/k4PTh4L5fzpCP764whPDWqhdlhCiEJ45sAkrB11Jj1nZlLpSdplpl0IC7P1rxPs23EOrdaKdz/uh52djdohCWHRynu48MLrXQBYNGc70VFxKkckhBCmJzPtQliQyBv3mPvVRgCGjeqIbx0vlSMSomTo2a8pOzed4syJcGZ/vp6PvhksrVGFKGGWtZqCi4uLSc8ZHx+PJ/NMek61yEy7EBZCn2ngi0mrSUlOp36jKgwY0krtkIQoMaysNIx9vzc2Nlr+3n+JXVtOqx2SEKKA7LU6s9xKC0nahbAQy3/ax9mT4Tg46nh7cl+0WvnvKURBVPEpz+AX2gIw76tNxMUmqxyREEKYjmQFQliAi2dv8vOCXQC8/k4PPCu6qRqPECXVwGFtqFq9PHGxycyfsUXtcIQQwmQkaRdCZYqiMPerjRj0Cu261KNT9wZqhyREiWVjo2XcxCfRaGDb+hMcO3RF7ZCEEMIkJGkXQmUH91zg3Kkb6HTWjBrfTRbPCVFEdRtUzmn7OHPqX6SmpKsckRBCFJ0k7UKoSK838OOcHQD0GdySsuWdVY5IiNJh+KudqODpyq2bsfz03U61wxFCiCKTpF0IFW1bf4Kw0Ns4udgxcGhrtcMRotSwd7Dlzf/1BODPZYe5cCZC5YiEEKJopE+7ECpJT8vk5/m7AHhmeFucnO3UDUig1xu4eDGKkBNhxCekYGOjxcZaa/zXRouNjTU2NlZZ/2r/ud9W+8+x7PG2WhwddDg5yfdVLc1a+9LpiQbs2HSKbz5dx7dLXsLaWqt2WEIIUSiStAuhknV/HOH2rXjKVXDhqYHN1Q7nsWQwKISGRnM85DrBIdc5eTKc5GTT1j/XqeNF29a1adOmFt6V3U16bvFor4zvxtGDlwm9dIs/fj7AMyPaqh2SEEIUiiTtQqggKTGVpT/uBWDoKx2w1cl/xeKgKAo3Iu4RHHyd48HXjDPq8Sm5xjg72xHQsAqenm5kZGSSmWkgIz2T9Aw9GRl6MjON/6ZnZJKRoScj3Xgs+/6MjEwyMww5958/H8n585EsWLiLatXK0bZ1Ldq2qU2NGhVk0XExcCvjyKjxT/DFpNX88sNu2nTyo3LVsmqHJYQQBSaZghAq+P3nAyTEpVDFpxxdejRUO5xS7VZ0HMHBxpn04JAwYmISct1vZ2eDfwNvGjWqSuNGVanuU8FkG1vdvZvIgYOX2bvvAseDr3PtWgzXrsXw868H8PJ0pU1WAu/nVwkrK0ngzaVT9wZs33iSY4euMPOzdUybN0y+3kKIEkejKIqidhClQXx8PK6ursTFxeHi4qJ2OMKC3YlJYETf2aSlZvDhFwNp3bGu2iGVKvfuJWUl6MbbzZuxue63sdFSr14lGgVUpVFAVerU9iqWOufExFQOHrrMvv0X+fvIVdLSMnPuc3d3pHWgL23a1CagYRVsbKTu2tSibsby8qC5pKVmMOa9XvTo20TtkIRQlSXlLeaMxZKeZ1HJTLsQxey3H/aQlppB3QaVadWhjtrhlBoJCaks+nEP69YHYzD8MxdhZaWhTm0vY5LeqCr1/Cqh09kUe3xOTnYEdalPUJf6pKZmcOToVfbuu8jBQ5e5ezeJdetDWLc+BCcnHYEta9KmdS2aNa2OnV3xx1oaeVZ0Y/irnfj+m838MGsrLdrUkharQogSRZJ2IYpRRPhdNv55HIAXRneWmmYTMBgUNm0+yYKFu4iLM9an16hegcaNjEl6g/reODrqVI4yNzs7G9q2qU3bNrXJyNATciKMffsusO/AJe7dS2LrtjNs3XYGnc6a5s2q07NHAM2bVVc77BLvqUHN2bn5FBfP3mTOlxv58IuBaockhBD5Jkm7EMXop3k70OsNNGtVE/8m1dQOp8S7cCGSmd9u4fz5SACqVSvHm68HEdCwqsqR5Z+NjZZmTX1o1tSHN9/oytlzEezbd5G9+y8SFRXH3n0X2bvvIt2C6jN6dBecHKWFZGFptVaMm/gkrw+Zz/6d59i34xxtOkl5mhCiZJCkXYhicuncTXZvPYNGAyNGd1Y7nBItLj6FhYt2s35DCIoCDg62DBvahr5PNSnRfbi1Wisa1PemQX1vRr3SictXbrF58yn+XHuczVtPExwSxjtv9aBx42pqh1piVff1YOCw1ixdtJc5X2ygcYvqOFjYOzFCCPEgsiOqEMXkx7k7AOjYrQE1anmqHE3JpNcbWLsumGHDv+ev9caEPahLPZb8+DJP929eohP2/9JoNPjW9OT10UHM+Po5KlZ0I/p2PG+9u4yZs7eQkmLafvKPk2dfaEdFb3fu3klk3e9H1A5HCCHyRZJ2IYpByJFQjh26grW1FUNf6ah2OCXS2bMRjH5jCTNmbSY+IZXq1csz85vnmPBub9zdndQOz6zq16vMgu9e4KnejQFYs/Y4L4/6kTNnI1SOrGSy1Vnz3IvtAFj560FSTLyhlhBCmIMk7UKYmaIoLPx2GwA9+jXBq3IZlSMqWWJjk/ly+gZeH/MzFy9F4eio4/XRXfh+7gga1PdWO7xiY29vy5g3uzJt6iDKlXMm4uY9xoz7hQULd5GenvnoE4hcOnZtQEVvd+Jik/lrpcy2CyEsnyTtQpjZvh3nuHj2Jnb2Njz7Qju1wykx9HoDq/88xtAR37Nx00kAunVtwE8/vky/Pk1NtgFSSdOsqQ+LFowkqEs9DAaFpcsO8dobP3Hlyi21QytRtNZWDB7RFjBudpaamqFyREKIlMx0s9xKC1mIKoQZ6TMNLM6qZe//XCBlypbuMg5TOX36BjNnb+HK1WgAatb0YMwbXannV0nlyCyDk5MdE97tTZvWtfhm5mauXr3Nq6//xLAhbXhmUMvH9gVNQXXu7s9vC/cQGXGP9SuP0v+5QLVDEuKx1mX7F2gdTLswXJ+cZtLzqUl+swthRpvXBnMj7A6ubg70f66V2uFYvLt3E/n8i794c9wvXLkajbOzHWPe7Mq8b4dJwv4AbdvUZuH8kbRpXYvMTAMLf9zDm2N/ISz8jtqhlQhaaysGv5A1275kv8y2CyEsmkZRFOXRw8SjlKZtcoVppKZmMKLvLO7GJDJqfDf6Dm6pdkgWbf+Bi3w+bT1JyWloNNCje0NefKE9rq4Oaodm8RRFYeu2M8yes5WkpDR0OmteGtmBPk81wcpKNvDKS2amnhf6f8utm7Hy/1Q8Viwpb8mOJerObZPHEh8fj2fZ8hbxPItKZtqFMJM1yw5zNyYRDy9XevZvqnY4Fm3X7vNM/uhPkpLTqF3bi29nDeX/xnWXhD2fNBoNXYPqs3D+SJo0rkZaWibfzt3G2+8uI+pWnNrhWTRray3PDG8DwIol+0lPk0W9QqjF3trWLLfSQpJ2IcwgIT6FFUv2AzDklY7Y2srykYfZvuMMn3y2Br3eQJfO9fh25hDq1qmodlglUoUKLnzx+SDGvNEVOzsbgkOu8+LLC9m46STypurDBfUKoIKnK3djEtm45rja4QghxANJ0i6EGSz/aR+JCalUq1GBTk80UDsci7V5yymmTvsLg0HhiW4NePftnrKIsog0Gg1PPdmYBd+9QD2/SiQnp/Pl9A1M/HAl8fEpaodnkWxstAzKnm3/aZ+00BRCWCT56yiEid2+Fc+a5X8DMGJ0Z0lCH2L9hhN88dV6DAaFXj0DeGt8D/lamVClSmWY8fVzvPxiB2xstBw8dJl3/recxKRUtUOzSF17B1Cuggsx0QlsXhusdjhCCHEf+QsphIn9smAX6WmZ1AuoQos2vmqHY5HWrDvO9G82oijQ56nGjBvTTRZMmoFWa8Uzg1oyZ9ZQ3NwcuHgpignv/U5KSunpW2wqtrbWDBrWGoDli2W2XQhheUpk0j537lx8fHyws7OjSZMm7N2796FjV61aRVBQEOXLl8fFxYXAwEA2b96ca8zixYvRaDT33VJTZUZKFEzYtRi2rAsBYOTrXdBoJBH9r1WrjzJz1hYABvRvxhujg+TrZGY1a3rw5eeDcHLSceZsBO9/+AdpadLe8L+eeKoxZcs7c/tWPFv/ClE7HCGEyKXEJe3Lly9n7NixvP/++wQHB9O2bVu6d+9OWFjYA8fv2bOHoKAgNmzYwLFjx+jYsSO9e/cmODj3258uLi5ERkbmutnZ2RXHUxKlyOK5OzAYFFq2q029ht5qh2NxVvx+mG/nbgPgmUEtefWVTpKwF5MaNTyYNnUQDg62hISEMWnKaplN/g9bnTUDhxpn25f9uI+MDL3KEQkhxD9KXNL+9ddfM3LkSF588UXq1q3LjBkz8Pb2Zt68eQ8cP2PGDN555x2aNWuGr68vn332Gb6+vqxbty7XOI1Gg6enZ66bEAVx/vQN9u88h0YDI17rpHY4Fue3pQf5bv5OAIY814qXRraXhL2Y1a1TkamfPo2dnQ1/H7nKx5+tITNTEtN/696nMe5lnYiOimPb+hNqhyOEEDlKVNKenp7OsWPH6Nq1a67jXbt25cCBA/k6h8FgICEhAXd391zHExMTqVq1KpUrV6ZXr173zcT/V1paGvHx8blu4vH2y4LdAHTp0ZBqNSqoHI3lUBSFn37exw+LjF+fEcPaMmJ4O0nYVdKgvjcfT+mPjY2W/fsvMXXaX+j1BrXDshg6OxueHmrcvXjZj3vlRY0QwmKUqKQ9JiYGvV6Ph4dHruMeHh5ERUXl6xzTp08nKSmJgQMH5hyrU6cOixcvZu3atSxduhQ7Oztat27NpUuXHnqeqVOn4urqmnPz9pZSiMfZ1Uu3OHLgMlZWGp59sZ3a4VgMRVFYtHgvPy3ZB8BLIzsw5PnWKkclmjSuxpRJfbG2tmLnrnN89fVGDAbp456tR7+muLk7EnUzlu0bTqodjhBCACUsac/23xk6RVHyNWu3dOlSJk+ezPLly6lQ4Z+Z0JYtW/L888/TsGFD2rZty4oVK6hVqxazZ89+6LkmTJhAXFxczi08PLzwT0iUeH/8Ynynp00nPypWdn/E6MeDoijM/2EXv/5m/Nq8+konBj8jW8RbipYtajLxvSexstKwecspZn27RTZgymJnZ8OA542z7Ut/3Is+U96JEEKor0Ql7eXKlUOr1d43qx4dHX3f7Pt/LV++nJEjR7JixQq6dOmS51grKyuaNWuW50y7TqfDxcUl1008nmLvJrFr82kAnh7SSuVoLIOiKHw3fyfLVxwG4I3RQTw9oLnKUYn/ate2Dv97pxcaDaxdF8yixQ/vxPW46T2gKa5uDkTeuMeB3efVDkcIIUpW0m5ra0uTJk3YunVrruNbt26lVauHJ0tLly5l+PDh/Pbbb/Ts2fOR11EUhZCQELy8vIocsyj9jv99Fb3eQI1antTyq6h2OKpTFIUfFu3m9z+MG0yNfbMbffs0UTkq8TBdOtdj3NgnAPj1twOs+0s2FgKws7elcw9/AI4duqJyNEIIUcKSdoDx48fzww8/sGjRIs6dO8e4ceMICwtj1KhRgLFsZejQoTnjly5dytChQ5k+fTotW7YkKiqKqKgo4uLicsZMmTKFzZs3c/XqVUJCQhg5ciQhISE55xQiLyFHrgLQqLmPypFYhp+W7GPpskMAvPl6EE/2bqRyROJRevUIYOgQ41qDmbO3cPDQZZUjsgwNm1QD4NTx6+oGIoQQlMCkfdCgQcyYMYOPPvqIgIAA9uzZw4YNG6hatSoAkZGRuXq2f//992RmZjJ69Gi8vLxybmPGjMkZExsby8svv0zdunXp2rUrERER7Nmzh+bN5e18kTdFUQg5EgpAQLPqKkejvp9/3c+SX/YD8NqrnenzlMywlxTDhrThiW4NMBgUPv50DecvRKodkurqN6qKRgM3wu5wJyZB7XCEEI85jSIrj0wiPj4eV1dX4uLipL79MXLzxl1G9J2NtbUVK3e8i529rdohqWbZ8kPM/2EXAC+/1JFnBrZQNyBRYJmZet7/4A+OHA3Fzc2B2TOHUKliGbXDUtXo57/n8oUoJnzanw5d66sdjhAmY0l5izljsaTnWVQlbqZdCEsS8rdxlr1Og8qPdcK+e8/5nIT9heHtJGEvoayttUz6oA81a3oQG5vMhPdWEBeXrHZYqmrQ2Pgu7snj19QNRAjx2JOkXYgiCM4qjWnU7PGtZ4+PT2HW7C0APD2gOc8/Jx10SjIHBx1TP3kaDw8XbkTc4/0P/iA1NUPtsFTj37gaIHXtQgj1SdIuRCEZDAonjko9+/cLdnIvNpkq3mUZOUI2lioNypZ14vNPB+LsbMfZczf59PO1j+2uqfUDqgAQFhrDvTuJKkcjhChOU6dORaPRMHbs2DzH7d69myZNmmBnZ0f16tX57rvv7huzcuVK/Pz80Ol0+Pn5sXr16gLHI0m7EIUUevkWcbHJ2NnbULteJbXDUcXx4Gts3GTcMfKt8d2xtbVWOSJhKlWrluOTj/pjY6Nl//5LfDt322O5+ZKLmwM+vsZ9QE4Fy2y7EI+LI0eOMH/+fPz9/fMcFxoaSo8ePWjbti3BwcG89957vPnmm6xcuTJnzMGDBxk0aBBDhgzhxIkTDBkyhIEDB3L48OECxSRJuxCFlN01pkGjqtjYaFWOpvilpWXw9YxNADzZuxH161dWOSJhag3qe/Pe/3qj0cCatcdZ/vvfaoekCv+cunZJ2oUwp+TMdLPcCioxMZHnnnuOBQsWUKZM3ovxv/vuO6pUqcKMGTOoW7cuL774Ii+88AJfffVVzpgZM2YQFBTEhAkTqFOnDhMmTKBz587MmDGjQHHJtJgQhfRPq8fHs579p5/3c/NmLOXKOfPiyPZqhyPMpH27Orw6qjNz521n/oKdlC/nTOdOfmqHVawaNK7KmuV/S127EGYWuGYmVg52Jj2nITkVMHaR+TedTodOp3vgY0aPHk3Pnj3p0qULn3zySZ7nP3jwIF27ds11rFu3bixcuJCMjAxsbGw4ePAg48aNu29MQZN2mWkXohAyM/U5b5U3egzr2S9djmLF78a39ca80RUnR9P+khWWZUC/Zgzo3wyA6d9s5Pbt+Ec8onRp0Mg4037tSjRxsY93Nx0hSipvb29cXV1zblOnTn3guGXLlnH8+PGH3v9fUVFReHh45Drm4eFBZmYmMTExeY6Jiooq0HOQmXYhCuHCmQhSktNx/Ve96+NCrzfw1dcbMRgU2rerQ+tWvmqHJIrBqJc7cf58JKfP3GDe9zv4cGIftUMqNm5lHKlavTzXr97m1PHrtOlUV+2QhCiVDj41xix92r34hPDw8FznftAse3h4OGPGjGHLli3Y2eV/Mkqj0eT6PHv9z7+PP2jMf489isy0C1EIwVn92f2bVsPKqmD/6Uq6lauOcOnSLZycdLwxuova4YhiYmWl4c3Xg7Cy0rBr93mOP2Z9y7Pr2k89Zs9biOLkYG1rlhuAi4tLrtuDkvZjx44RHR1NkyZNsLa2xtramt27dzNr1iysra3R6/X3PcbT0/O+GfPo6Gisra0pW7ZsnmP+O/v+KJK0C1EIIY9pf/abkbH8+NNewDjz6u7upHJEojjVrOlB716NAJg9ZysZGff/ASutGmT1a5fFqEKUXp07d+bUqVOEhITk3Jo2bcpzzz1HSEgIWu39TScCAwPZunVrrmNbtmyhadOm2NjY5DmmVauC7WsiSbsQBZSaks65U+HA49WfXVEUvpmxibS0TAICqtD9ibzbYInS6YXh7XBzc+B62B1W/3lU7XCKTfZMe+jlW8THpagcjRDCHJydnalfv36um6OjI2XLlqV+/foATJgwgaFDh+Y8ZtSoUVy/fp3x48dz7tw5Fi1axMKFC3nrrbdyxmSX3EybNo3z588zbdo0tm3b9sj+7/8lNe1CFNCp4DAyMw1U8HSlYuW8W0GVJlu3nebY8WvY2lozfswTBa7FKwnuxSWzcdcZNu48zd3YZHQ6a+xsbbCzs8Eu62Odzhp7Oxt0tlnHdDZZN2t0OhvsbLPu19ng5mxP7Roepepr5exsx0sj2/Pl9I389PN+OnX0o1w5Z7XDMrsyZZ3wrlaO8GsxnA65Tqv2ddQOSQihgsjISMLCwnI+9/HxYcOGDYwbN445c+ZQsWJFZs2aRf/+/XPGtGrVimXLljFx4kQ++OADatSowfLly2nRokWBri1JuxAFFHLkKmBs9ViakrG83LuXxNx52wEYOqQ1lSu7qxyR6RgMCsdPh7F260n2/H2JzMx/7fyZUPTz16xWnhFPB9K2uW+pWf/Qras/f60/wbnzN/l+wU7en/Ck2iEViwaNqxJ+LYZTxyVpF+JxsWvXrlyfL168+L4x7du35/jx43meZ8CAAQwYMKBIsUjSLkQBPY717HPmbSc+IZUa1SswcEBztcMxiTv3ktiw8zR/bT9FRFRszvG6NT15MsiferUqkp6eSWpaBqnpmaSmZuT+OD2DtLRMUlIzSEvPIDUta2ya8eO0tAzCI+9x+dpt3v9yLTWqlGPY04F0aFmrxCfvVlYaxrzRlVdfX8z2HWfp1SOAhg2rqB2W2fk3rsqGVcekrl0IoQpJ2oUogPjYZK5cNK4Af1zq2Q8dvsKOnWexstLw1vjuWFuX3N1fDQaFIyeusW7bSfYeuYJeb5xVd3SwpWs7P57s4o+vTwWTXS8uIYUVfx3jjw3HuRIWw4fT11GtclmGPx1Ix8BaaLUld1lRrVqe9OrZiHV/BTPr2618P294if7ZyA//rMWoVy9GkZiQipOz7E8ghCg+krQLUQAnjl1DUaBq9fK4lyv9nVOSk9OYMXMzAP37NaN2bS+VIyqcmLuJrN9xmr+2nyQy+p+NgerXrsiTXfzp2KoW9na2Jr+uq7M9Lw1uw6DeTfl9/TF+/+s4127cYfI3f/HjCneGDWhJp9Z1sC6hyfvIEe3Yvec8oddu8+fa4wzo10ztkMyqbHlnKlVxJyLsLqdDwmjZtpbaIQkhHiOStAtRAMFZ9eyPS2nMoh/3EH07Hk9PV4YPbaN2OAWi1xs4HBLKuq2nOHDsCnqDcbMLJ0cdT7T3o3cXf2pULV8ssbg42TFyUGsG9mrCyg3BLP/rGNcj7vLRzA0sWnGQYQNaEtS2bolL3l1c7HlxZHu+/mYTP/20j04d6pb6NqANGlUlIuwup45fk6RdCFGsJGkXogCy69kfh9KYs2cjWL3mGADjxjyBvb3pZ6LN4VZMfNas+imiY/5ZSepft5JxVj2wFjqdjSqxOTvaMfzpQJ7u2ZiVG4NZtvYoNyLv8ensjSz+/SBD+7egWzu/ElVm0uOJhqzfcIILFyL5fsFOJrzbW+2QzMq/cTU2rQmWunYhRLGTpF2IfIqOiiMi7C5WVhr8m1RVOxyzysjQM/2bTSgKdA2qT7OmJeOdhd/XH+fbxTtzZtVdnOzo3qEevYP8qVa5rMrR/cPRQcfQ/i0Z0KMxqzYZk/eIqFimztnM4t8PMbR/C55oXw8bG8tP3rN3Sn39zSVs3XaGXj0DaFDfW+2wzKZBVr/2yxciSUpMw9Hp/l0VhRDCHErWe7FCqCh7lr2WX0UcnUr3ArRlKw4Reu02bm4OvDqqs9rhPJJeb2Dmoh3MXLQDvUEhwK8yk8b2ZPWCUbwxoqNFJez/5mBvy/N9W/D7vJd4bWh7yrg6EBkdx7R5Wxj8xkL+3HKC9IxMtcN8pLp1KtL9iYYAzJy9JWeBb2lUwdMVr0plMOgVzp4Ie/QDhBDCRCRpFyKf/imNKRmzzoUVFnaHX349AMDoVzvj6mKvckR5S03L4IPp6/h9vbFH7qtD2jH7o0EEta2LzrZkvJlob2fLs0814/d5L/HmiI6UdXMk6nY8X32/lWdeX8jm3WfVDvGRXhrZHmdnO65evc3adcFqh2NW2bPtUiIjhChOkrQLkQ+KovxrEWrprWc3GBSmf7ORjAw9zZtVp1NHP7VDytO9uCTenLSCPYcvYWOtZcr4XjzXp3mJ3fTKTmfDwF5NWDH3RcaO7EQ5dyeiYxL4eNYGfl51WO3w8uTq6sALI9oBsGjxHu7dS1I5IvPxb1INgFPBkrQLIYqPJO1C5EP4tRjuxiRiq7PGz7/01uuu3xDCqdM3sLOzYeyYbhad/IbdvMsrE37j7KVInJ3smDHpaTq3Lh27VOp0Ngzo0Zjlc17kuT7Gzay+/3Uv83/bh6IoKkf3cL16BODr60FSUhoLFu5SOxyz8c+aab949iapKekqRyOEeFxI0i5EPgRnlcb4+XtjqysZJRcFdTsmgfkLdgHw4gvt8fRwVTegPJw4d4NRE37j5q04vCq48v1nz9LQr7LaYZmcztaaV4e049UhxhnsJSsPMevHnRabuGu1Vrz5elcANm0+xZmzESpHZB4eXm54eLmi1xs4czJc7XCEEI8JSdqFyIfsevbS2p9dURRmzd5CUnIadetU5KknG6sd0kNt33+ecVN+Jz4xlbq+nsz//FmqVHJXOyyzeq5Pc8a/ZFwQ/Pv640ybZ7mLPev5VeKJbg0AmPWt5cZZVA2ydkc9eeyaqnEIIR4fkrQL8Qh6vSHnD3NA89JZz7533wX2H7iEVmvF/41/Aq0FbvKjKAq//vk3k77+i/QMPW2b12T2lEGUcXVUO7Ri0e+JRrz/+hNYWWn4a/spPpq5gcxMvdphPdBLIzvg5KTj0qVb/LUhRO1wzCK7ROZ0iHSQEUIUD8v7yyyEhbl8PpLEhFQcnXT41vFSOxyTS0/PZM687QAMfqYl1X0qqBzR/TL1BqbP38a8n/cA8HTPxnzy1pPYqbRJklq6d6zPlPG9sLa2Yvv+80z8ai1p6ZbXErJMGUdGDMtalPrjHuLiklWOyPSy17ZcPHuTjAzLfPEkhChdJGkX4hGyO0T4N6lmkTPQRbV5yylu306gXDlnnn+2ldrh3CctPZMPvlzLn1tOoNHAmyM6MuaFTqXye5EfHQNrM/WdPtjaWrPvyBU++GqtRSaNT/ZuRI3qFUhISOXXpQfVDsfkKlcti6ubA+lpmVy5GKV2OEKUCskZ6Wa5lRalc0WdECZ053YCYPwjXdooipLTU/vp/s2wtbC+5knJafzv8z8JPhOOrY2WSWN70r5lLbXDUl1gk+p89V4/3v5sFQeOXeXjWRuYNLanRb2Q0WqtGPlCe96b+Dubt5zixRfaW9zPV1FoNBq8KpchLjaZu1m/I4QQRdNs6Vys7E27eaEhJdWk51OT5fyGF8JCJSUa/8M7lcJdUM+fj+TK1WhsbLR069pA7XByuReXzJuTVxB8JhwHe1u+mthfEvZ/adygCp+98xTW1lbsOHCBafM2YzBYVleZZk19qFDBhYSEVPbsvaB2OCbn4uoAQHwpLP8RQlie0jPtIYSZJMYbk3ZH59KXtK9bb5xlb9+uDi4WtPNp1O14xn/0B2E37+LmYs9XE/tTp4an2mFZnBaNfJgyrhcfTl/Hhp1nsLezZezIThbTX1+rtaLHE/4sXrKP9RtC6NK5ntohmZSzq/H/THxcisqRCFE6HBn8Gi4uLiY9Z3x8PF5vTDLpOdUiM+1CPEJi1ky7swUltaaQmJjKzl3nAOjdK0DdYP7l+o07vPb+UsJu3sWjnDNzPxksCXse2resxXuvd0ejgZUbg5n/2z61Q8ql+xP+WFlpOHEynLDwO2qHY1IuOUm7zLQLYQoONrZmuZUWkrQL8Qg5M+2lrDxm67YzpKVlUrVqOerXs4yNic5fjuK1icuIvpNA1UruzP10cKnvwW4K3dr78X8vBwHw86rD/LzqsMoR/aN8eReaZ7VK3bDxhMrRmFZ2eUyCzLQLIYqBJO1CPMI/M+2lJ2lXFIW/1ocA0LtngEWUU5y+eJM3Ji0nLiGFujU9mfPJM3iUM+3bpKVZn64NeW1oewC+/3Uvf2w4rnJE/+jVIwAwdipKt8AWlYUl5TFCiOIkSbsQj5AYb/yDXJpm2s+cjSD02m1sba0J6lJf7XBISEpl0vR1pKRm0KRBFWZOHoibi4PaYZU4zz7VjBFPBwIwY+EO/tp+SuWIjFo0r0HZsk7ExaVw4OAltcMxGVmIKoQoTpK0C5EHg0EhOSkNKF017dmz7B3b18HZAhbYfr1gO7diEqjo4crUd/vgYF96ahCL2wuDWjGoVxMAvvhuC9v3n1c5on8WpMI/P3ulQfbvhPhYmWkXQpifJO1C5CE5KQ0lq4ueg5NO3WBMJCEhlV27jYlcr16NVI4Gtuw5y9a959BaafhwbE9J2ItIo9Hw+vAO9O7ij8Gg8NHMDew/ekXtsOjevSEaDRwPvk7EzXtqh2MSLm7GpD373TghhDAnSdqFyEP2H2OdzrrUbAyzZauxrri6T3n86lZUNZbI6DimL9gGwPCnA6lfS914SguNRsNbL3chqG1d9HoDH3y1lqMnr6sak6eHK82alq4Fqf8uj1EUy+qRL4QofSRpFyIP2YtQnUpJacy/F6D2UnkBaqbewEczN5CUnE6D2hUZ0r+larGURlqtFe+//gRtm9UkPUPPhGl/cuHqLVVj6tG9IQCbNp8iM1OvaiymkN3yMTPTQEpy6dkqXQhhmSRpFyIPpa3d46nTN7gedgc7Oxu6dFF3o5tfVh/m1PkIHOxt+WBMD6y18uvI1KyttUz5v1409a9KSmoGH8/cQHqGet1bWgXWpEwZR+7dS+LQYfVLdopKZ2eDja0WkA4yQgjzk7+SQuQhMaF0tXvMWYDaoS5Ojuo9p7OXIvlx+QEA/u+lLlT0cFMtltLO1saayeN6UsbVgWs37rD490OqxWJtraVrkLFb0eatltHZpig0Gs2/erVLBxkhhHlJ0i5EHhITsto9WkCHlaKKi09h956sBag9A1SLIzklnSkz1qM3KHRuXYeu7eqqFsvDXLwezd6Qqxy/cIOL16OJiI4lNiGFjBJa0uHm4sBbL3cB4NfVhzl/JUq1WLKT9kOHrnDvXpJqcZiKi/RqF0IUk9Kxsk4IM8meaXcqBeUxW7aeIiNDT80aFahT20u1OGYu2kFEVCwe5Zx565UuFrGxU7aTl2+yYPVBDp95+KJNW2stjva2ONjZ4mifdbPT/fNxzuc2uLs60i6gBjoLWMTcvmUtOrWqzY4DF5j67SZ++GIINjbaYo/Dp1p5atf24sKFSLbvPMuAfs2KPQZTcpZe7UKIYqL+XxIhLFhO0l7Cy2NyL0BtpFqivOvgRdbvOI1GAx+82QNnFUt0/u3M1Ujmrz7IwVPXAOMizpqVy5GSlkFSSjpJKWmkZu3kmZ6pJz0hhXsJ+ZtZ9fZw463nOhLo72Ou8PNt3IudOX46jCthMSxZeYiRz7RWJY4nujXgwoVINm8+VeKTdplpF0IUF0nahchDaZlpP3kynPDwu9jZ2dC5k58qMUTfSWDad1sAeL5vCwLqeasSx7+dDY1iweqD7D8ZCoDWSkPPNvUY0bsFlcq75hqbqTeQnJpOcmp6ViJvTOYTsz7/7/Gk1HSCL0QQfiuWMV+vpmOTmox7tgOeZV3UeKoAlHF1YPxLXfhw+jqWrDpMuxa++PpUKPY4OnXwY+687Vy5Gs3ly7eoWdOj2GMwleykPUGSdiGEmUnSLkQekhJKR8vHdVmz7J07+eHoWPybRBkMCp/O3khCYip1anjwwsBWxR7Dv527dosFqw+y78RVwJis92jtxwu9W1CpgtsDH2OttcLF0Q6XArw7kJiSxg9/HmL51uPsPHaZg6euMfLJljz7RBNsrIu/NAUwlsjsP8+uQ5f49NuN/DDteayLORZnZztat/Jl1+7zbNpyitdLcNLuLAtRhRDFRBaiCpGHnJn2ErwQNS4+hb37LgDQu6c6O6Cu3BjMsVNh2Oms+XBsT1VqqQGu3Ijh7VlrGDb5V/aduIqVxpisr5g6nA9Gdntowl5YTvY6xg5uzy8fDaFR7Uqkpmcy5499PPfBz4RcjDDptQpi/EtdcHW25/K12/z65xFVYujWtQEA23ecKdE9251dpDxGCFE8JGkXIg/ZyYTWuuT+Vzl6NJSMDD0+1cpTq5ZnsV8/ISmVRSuM7R1HD+1AlYruxR5DWNQ9Jn63nmc/WMLu41ew0mjoHliX5VOHM/mlJ/D2KGPW69eoXI7v/jeQKS8/gbuLA9ci7/LyZ8v58uftJKUU/6Y87m6OjHmhI2Dsl383tvi7uDRt4oOrqz1xcSmcOaveC5iiss3q056ZaVA5EiFEaVciM5G5c+fi4+ODnZ0dTZo0Ye/evXmO3717N02aNMHOzo7q1avz3Xff3Tdm5cqV+Pn5odPp8PPzY/Xq1eYKX5QgtlldP9LT1NuQpqiCg68B0LSpOgshf1n1NwmJqfh4l+XJIP9ivXZkTDyfLNrCoPcWs+XQBRQFOjerxdJPhzLlle5U9TRvsv5vGo2G7q2Ms/pPtjO2Pfx9+wmeef8n9meV6RSnoLZ1qVvTk5TUjJwXVcVJq7WiWdPqABw5Elrs1zeV1NQMwLjRkhBCmFOBkvbw8HBzxZFvy5cvZ+zYsbz//vsEBwfTtm1bunfvTlhY2APHh4aG0qNHD9q2bUtwcDDvvfceb775JitXrswZc/DgQQYNGsSQIUM4ceIEQ4YMYeDAgRw+fLi4npawULY64x/ikpq0K4rCsaykvXGjqsV+/eg7Cfy+4TgAo55vh7aYdj2NiU3iy593MOB/P7J2z2n0BoU2Davzy5TnmTq6Fz4VyxZLHA/i4mjHxBe68u07A6hU3pVbdxMY982ffPDdBu7FF19dtEaj4bWh7QFYt/UkYRF3i+3a2ZplvZD8+2jxv2gxlezfDXZ2skRMCGFeBfotU7VqVcqUKUPDhg1p2LAhAQEBNGzYkLS0NObMmcOSJUvMFWeOr7/+mpEjR/Liiy8CMGPGDDZv3sy8efOYOnXqfeO/++47qlSpwowZMwCoW7cuR48e5auvvqJ///455wgKCmLChAkATJgwgd27dzNjxgyWLl1q9uckLJdOZ/wvkpaWoXIkhXMzMpZbt+KxtrbCv0Hxd2tZtPwA6emZNKxbmVZNqpv9eqlpGfyw5hDLtwWTltWisWldb0b1b41/zYpmv35BNPerwtJPhvL96gMs3XyczYfOc/jMdcYP7kC3wDrF0pazUT1vWjetwf6jV/ju17189s5TZr/mvzVtYkzaL1++xd17SbiXcSzW65tCmsy0C2EyyRkZWGeY9u9tsonPp6YCJe1Xr14lJCSEkJAQgoOD+eOPP7h58yYALi7mb2OWnp7OsWPH+N///pfreNeuXTlw4MFv7x48eJCuXbvmOtatWzcWLlxIRkYGNjY2HDx4kHHjxt03JjvRf5C0tDTS0tJyPo+Pjy/gsxElgU1W0p6RXjJn2o8fvwZA3boVsbe3LdZrh4bHsGHnaQBeHdLO7EloanoG/zdzDUfOGt91q1/Di1f7t6aZXxWzXrco7HQ2jHmmPUHNa/PJoi1cvhHDh/M3svnQef43rAseZZ3NHsOo59ty8PhV9hy+xMnzEfjXqWT2a2YrU8aRWr6eXLwUxdGjoTm7pZYk2eUx2e/KCSEKr+XC77CyM23jB0NqqknPp6YCvVddrVo1+vTpw+TJk1mzZg3h4eHs27ePGjVqsGjRInPFmCMmJga9Xo+HR+72YB4eHkRFPXhb7qioqAeOz8zMJCYmJs8xDzsnwNSpU3F1dc25eXur33NamF7OTHtqCU3ag407ezZpVK3Yr/39r3sxGBTatfClfm3zznKnpWfyzqy1HDkbhoOdDV+88SQLJz5j0Qn7v/lV9+Snyc/xSr9W2Fhr2X8ylEHvL+b3bSEYDIpZr+3jXY6enYydXOYu2Y2imPd6/9WsWVZdewktkcmeabeTmXYhhJkVuQgvMDCQmTNnMnHiRPr27WuKmB7pvzN2iqLkOYv3oPH/PV7Qc06YMIHx48fnfB4fHy+Jeyn0T017yXt7zWBQCA4xJu2NizlpP3HuBvuOXEFrpWHUc23Neq30jEz+9+06Dp2+jp2tNd+M60uj2pXNek1zsLHWMvLJlnRq6stnP27lxKWbfPnLDrYcPs/EF7pS1ct8XXdGDmrF1r1nOX3hJnsOX6J9y1pmu9Z/NW/mw6+/HeDI0VD0ekOxrXswleyadimPEaLoDo0cZfLKjfj4eLzenWjSc6qlQL8dMx5SF+Tr68uZM2dMElBeypUrh1arvW8GPDo6+r6Z8myenp4PHG9tbU3ZsmXzHPOwcwLodDpcXFxy3UTpk9M9pgSWx1y5eov4+BTs7W2pU8er2K6rKArf/bwHgJ6dG1ClkvmSzYxMPRPm/MX+k6HoSnDC/m8+Fcvy/YRBvP18JxzsbDhx6SYvfLyUKxExZrtmOXcnnundFIB5v+wt1r7pfnUr4eioIz4+hUuXbxXbdU3ln/IYWYgqRFE52NiY5VZaFChpd3R0JCAggBEjRjBz5kz27NnD5cuXmT179n114+Zga2tLkyZN2Lp1a67jW7dupVWrB++wGBgYeN/4LVu20LRpU2yyvpEPG/Owc4rHh84ueyFqyUvajx03zrI39Pcu1h0v9x25wqkLN9HZWpt151O9wcDEeevZG3IVnY2W6WP70KRu6Xi3y8pKw9NdAlj26TDqVfckITmNMdNXEX0vwWzXfLZPc8q4OnAj8h5rtp4023X+S6u1oknjagAcOVLySmSkPEYIUVwKlLTv2LGDl156CRsbG3799Ve6d+9OrVq1mD17Nunp6bz//vssX76cc+fOmStexo8fzw8//MCiRYs4d+4c48aNIywsjFGjRgHGspWhQ4fmjB81ahTXr19n/PjxnDt3jkWLFrFw4ULeeuutnDFjxoxhy5YtTJs2jfPnzzNt2jS2bdvG2LFjzfY8RMlgl7V4Mykx7REjLc+ZszcACGhYvHXdv6w2tkod2KsJ5dydzHadH9cdZuexy9haa/lyzFM0LyH16wXhWdaFb8b3pZqXO9F3E5myYLPZatwd7G0ZMTAQgOXrjhZrbXt20n7ylPpthQsqId64E6q9g07lSIQQpV2B3s9r06YNbdq0yfncYDBw4cKFnI4yx44dY9GiRURHR6PXm+ft1UGDBnHnzh0++ugjIiMjqV+/Phs2bKBqVWMP6sjIyFw92318fNiwYQPjxo1jzpw5VKxYkVmzZuW0ewRo1aoVy5YtY+LEiXzwwQfUqFGD5cuX06JFC7M8B1FyeHi5AXDr5j11AymEGzeMMVerVr7YrnkpNJozFyOxtrbi6Z6NzXad4xdu8MOfhwB4b0QQLetXM9u11ObmZM+XY57i+Q9/5sjZMH7fHsygIPN8bbt3qMe8n/dw81YcZy5FUr9W8bTJrFG9AgBh4XeK5XqmYjAo3LhuLFuqXFW93v9CiMdDkYrwrKysqFu3LnXr1mXw4ME5x2/dMm9d4muvvcZrr732wPsWL15837H27dtz/PjxPM85YMAABgwYYIrwRCniVcm4Y2ZkxL1HLk62JAaDws2sFxqVK5uvpvy/Vm8OAaB9C1/c3czTczs2IYUPv9uAQVHo2dqPHq39zHIdS1LVswxvDmzHl7/s4NsVe2ler6pZNoiyt7OlXQtfNu8+y5bdZ4staff2Nj6X27cTSE5Ow6GEzFrfvhVHakoG1tZWVCzG/2dCiMeTWZbp57WAU4iSxKOiGxoNpKZkEHs3Se1w8i36djwZGXqsra3wqFA8i6STktPYutdYGtenW4BZrqEoCh/9sJnoe4lU9SzD20M6meU6lmhA54a0qF+VtAw9kxdsMtti0a5t6wKw48CFYluQ6uxsR5msjZXCw4t/Z9bCCrt6G4DKVcuhtS5ZXW+EECWP/JYRIg+2ttaUy0p6IyNKTonMjRvGxMfLy63YWuht3nOWlNQMqlV2J8DPPB1clm0JZt+Jq9haa/n0tV442BXvhlFq0mg0fDCyK84OOs6F3mLRusNmuU4T/6q4uzkQG5/C3yeumeUaD1LF2zhTXZJKZK6HGpP2Kj7FV4ImhHh8SdIuxCN4Zb3tHXmj5CTtEVkvMCqbsd3ivymKwp+bTwDwVNcAs5QRnQ2NYvYKYyvJsYPbU6vK45coVSjjzDtDOwPGhbhnrkaa/BrWWis6t64DwObd5msq8F9VskpkwkrSTHtW0l61ejmVIxFCPA4kaRfiEbwquQElbKY9wpj4VM6qyTe3UxducjUsBp2tNU90MH2NeWJKGhPnrSdTb6BTU1/6d2po8muUFN1a1iGoeW30BoVJ8zeRaoaNv7q1M34P9x25THJKusnP/yBVqhiT9vASNNMeFmpchCoz7UKI4iBJuxCPkDPTXpKS9qx3BSoV00z7xp3GzdU6t66Ns6OdSc+tKAqfL97Gjeg4vMq68N6IoBKzINhc3hnaifJujoRF3ePb3/ea/Py1a3hQpaI7aemZ7D58yeTnf5B/ZtpLRtKuKArXr0p5jBCi+MgWbkI8wr87yJQUEdkz7ZXNP9Oelp7JzgMXAHiifT2Tn3/tntNsOXwBrZWGj1/tgYuJXxT81+ELYXz++05u3InDxV6Hi4MdzvY6nB3++djFQZf1rx0u9v987Jx13MlOh5WV+V5YuDrZM3FkN8ZMX8WKbSG0DahBi/pVTXZ+jUZD13Z1+WHZfrbsOUv3Dqb/vv6Xd9ZM+40bd9HrDcW2FqOw7txOIDkpDSuthkpVpN2jEML8JGkX4hFykvYbJaPWNjNTT2RUHFA8Ne0Hjl0hMTmNCmWdCahn2h1Jr0TE8NWvOwEY1b81/jXN14IwOS2db/7cy+/7/tkN9E5CMncSkgt8Lo0GnOx0eJZxZuxTbWntV82EkRoFNqhG/04NWbnjBB8v3Mxvnww16QuaoLbGpP3YqTBi7iVSroz5NsoCqFDeBZ3OmrS0TCIjY4u1VWlhZC9CreRdFhub4ttxWAjx+JKkXYhHyE7a78YkkpqaYfHblUdFxaHXG4ydb8o5m/16W7IWKwa1rWvS2eXU9Azen7uetPRMWtSvypDuzUx27v86cjGcSb9u4ebdeAAGtm3IkI6NSU7LID4llYTkNOJT0khITiMhJZWElDTik1OJT07L+Tgh6/7UjEwUBePnKWm8/t1qRvdszciuzUxe1vPmoHb8feY64bdi+fLnHXw8qofJzl3J040GtSty6sJNtu87z6DeTU127gexstLgXdmdy1eiCQu/Y/FJ+41rWfXs1WQRqhCieEjSLsQjOLva4+ikIykxjaiIe1SrUUHtkPJ0I6dzTBmzlmgAxCWkcDD4KgDd2pt2Aeo3v+3iasQdyro6MvmlJ8zyXFLSMpi5dh/L9oQA4OXuwpRng2heu0qhz5mekZmVyKfx2+5gft93km//2s/ZsFt8PKQbjiZsU2mvs2HyS0/w0qfL2XzoPO0a1yCoeW2TnT+oXV1OXbjJ5j3nzJ60g3GTJWPSfpdWgWa/XJHcijS+m+VZTIu9hRDCsosGhbAAGo3mXyUyll/Xnl3PXqkYkont+8+TmWmglk8Fqlcx3Yzj1r8vsHrXKTQamPJKd8q6mn531WOXb/D05z/nJOxPt/HnjwlDipSwA9jaWFPWxREfT3feH9SZDwd3wcZay46TlxkyfSnXbpm2zKpBzYoM79UcgGk/bScmNtFk5+7UqjZarRUXr97i2g3zLxCtWoI6yETfMibtFTxdVY5ECPG4kKRdiHwoSR1ksjvHFEd5webdZwHo2s50s+wR0bF89uNWAIb3akFzv6Il0f+VkpbBtD92MnLm79yIicOrjDPfje7H+4M6m3QWPFu/Vg1YNOZpKrg5cTXqLs9/tZRdp66Y9Bojn2pJnaoViE9K5ZNFW1AUxSTndXNxoGUjHwC27DF/z/bsto/Xwyw/ab8dJUm7EKJ4SdIuRD545vRqt/zFqMXVo/1G5D3OXIzEykpDl7Z1THLOjEw9789bT1JKOg19K/JSH9PWSBy/fIOBn//M0t0hAPRrVZ/fJwyhZR3TdV55kAbVvFj69rM0rlGJxNR0xs5fy9z1BzAYTJNc21hrmfxyd2yttRw4eY1VO08++kH51LVdXQC27j1rshcDD+Pt/c9Mu7mvVVTRWeUx5SVpF0IUE0nahciHilldWKIiYtUNJB8ibhZPj/bNe4yz7E39q5qss8jcP/ZxNvQWLo46Ph7VA2sTtf1LSc/gy5W7GDnrd8Jj4vBwc2Lua335cHAQTvY6k1zjUcq6OPL9G/0Z3D4AgPmbDjN2wRrik1NNcv7qlcry2tNtAJi5bDfht0zzrlDrpjVwsLclMjqeUxdumuScD1O5Uhk0GkhISCU2tuBde4pLenomd+8Yy5Bkpl2I0mXevHn4+/vj4uKCi4sLgYGBbNy48aHjV61aRVBQEOXLl88Zv3nz5lxjFi9ejEajue+Wmlqw3/+StAuRD9mLzW5aeNvH9PRMbmXV2pqzPEZRlJxyiW4mKo05dPoav246BsAHI7vhWdbFJOcNuXqTQZ//wq+7glEU6BtYnz/eG0qrutVMcv6CsNFqeXdARz5+vhs6Gy17Tofy/FdLuRJpmnKQZ4Ia06SuN6npmUxesIlMvaHI57TT2dChpS8AW7LKocxFp7PB08OYBFvyJksx0cYuQzqdNS6u9ipHI4QwpcqVK/P5559z9OhRjh49SqdOnXjqqac4c+bMA8fv2bOHoKAgNmzYwLFjx+jYsSO9e/cmODg41zgXFxciIyNz3ezsCtamV5J2IfKhYtYmRbduxpqspMEcbkbGoijg4GBLGTcHs13nzMVIIqJisbezoV2LmkU+n95gYOay3QA83bkh7RsX/Zyp6Zl8vXoPI2YsJ+x2LBXcnPh2VB8mPRuEczHNrj9M7xZ+/Dh2EF5lnAm7HcuQ6UvZFlL0nUetrDRMerEbjva2nLocyc8bjpggWghqa3xhtuPABTIy9CY558NUyVrQHB5uuS+Qo6P+KY153HfnFcKUktMzzHIriN69e9OjRw9q1apFrVq1+PTTT3FycuLQoUMPHD9jxgzeeecdmjVrhq+vL5999hm+vr6sW7cu1ziNRoOnp2euW0FJy0ch8qG8hytarRUZGXpiouMt9i3xf3eOMWcysWm3ccahXQtf7E2weHProQtcuXEHZwcdr/RrXeTznQyN5MNfNnMt2lgi8mQLP97q1x4XB/PuploQflU8+PXtZ/nf4g38fTGctxb+xQtBzRjdqxVaq8LPp3iWdeGt5zsxZcEm5v95kFb+PtSuWrQ2pY3re1O2jCN37iVxOCSUNs2K/qLqYap4u3P47ytcD4sx2zWKShahCmEerWfOR1vA2edH0WeVoMTHx+c6rtPp0OnynsDR6/X8/vvvJCUlERiYvzVWBoOBhIQE3N1zv9udmJhI1apV0ev1BAQE8PHHH9OoUaMCPBOZaRciX7TWVnhUdAPg2pVodYPJw83IWAAqepl3EeruQ8ZZYVOVxizJmhEe0qNZkXb1NBgUftj8NyNmLOda9D3Kuzgy65Wn+Oj5bhaVsGdzd3Zg7mv9GNqpCQCLth5h4s+bydAXbTa7R6u6dGhSE73ewNe/7SxynFqtFV3aGBcb7zx4scjny0t2WVeEBXdqupHV3UaSdiFKDm9vb1xdXXNuU6dOfejYU6dO4eTkhE6nY9SoUaxevRo/v/z9vZs+fTpJSUkMHDgw51idOnVYvHgxa9euZenSpdjZ2dG6dWsuXSrYO6wy0y5EPjVuXp2b4XfZuekUzVv7qh3OA2XP0JrzHfvEpDTuxRkXCdavXbHI57t5O47LN2Kw0mjo26FBkc61Yt8Jvv1rPwBPNKnNewM7WWSy/m/WWivG921H7crlmfTLFjYePU9qegbThvfA1qZwv6I1Gg3/91xH9hy/QvCFCMKi7lHFs2gv5PzrVmb5umOEmbmDUvY7RFoTLUI2h4O7LwBQP8C07UiFeNztH/MyLi6mWc+ULT4+Hq9P3iM8PDzXufOaZa9duzYhISHExsaycuVKhg0bxu7dux+ZuC9dupTJkyezZs0aKlT45x3Oli1b0rJly5zPW7duTePGjZk9ezazZs3K93Ox3N+KQliYoN4BAOzbeY6kRNN0/DA1BwdjqUpycrrZrhF12/gWo6uzPQ72RS+NOXAyFIAGvhVxdSr8or60jEwWbvkbgNG9WjF1WHeLT9j/rWezunz9Um9srbXsPHmFsQvWklLAWsx/83B3pmUDYyvLv/Y9eAFVQVT2dAMgIiq2yOfKS2JSGvDPz7KlCQu9zfWrt7G2tiKwvWlanQohjBxsbcxyA3K6wWTf8krabW1tqVmzJk2bNmXq1Kk0bNiQmTNn5hn78uXLGTlyJCtWrKBLly55jrWysqJZs2Yy0y6EudT2q0gVn/KEhd5m95Yz9OjXRO2Q7lM8SXvW9u0VTDMbsj8raW/j71Ok86w+cJrbcUl4uDkxrFOTErlAsF396swe1Ycx89dw4Nx1Xp+3mlmv9Cn0pk+92tTnwMlrbNh/llf6Fa1W3quCsRQkPjGVpOQ0HB3Ms5g3OdmYtDs6qrtY+GH2bjd20GncogZOziXnRaFQh8FgIDEuhdg7icTeSSTubhLx95LIzNCTmalHn2n4z8eZKArY6qzR2dlia2f8V2dng87eBjsHW1zdnShTzgm3sk7Y6mzUfoqPBUVRSEtLe+j9S5cu5YUXXmDp0qX07NkzX+cLCQmhQYOCvbssSbsQ+aTRaOjauyE/zNrGlr9CLDRpNyY6ySkP/+VSVJFZ7e68yhc9aU9Nz+DouXAAWjUsfNKenpHJom3GuvgXgpoXuqzEErSoXYV5o/vxxrw/OXY5gle+XcmcV/viWoha/3aNquPiaEf0vUT+PhNGYINqhY7Lwd4WV2d74hJSiLodT42q5Qt9rrwkZ820m+tFQVFlJ+1tOtVVORJhCdLTMoi4FkP4lWjCr0QTcS2G2JhEYu/+k6QbTNB69WHsHXW4lXXCvYIzHpXc8ahcBi/vsnhULkPFquUo6+FSIicw1PTee+/RvXt3vL29SUhIYNmyZezatYtNmzYBMGHCBCIiIliyZAlgTNiHDh3KzJkzadmyJVFRUQDY29vj6mqc7JgyZQotW7bE19eX+Ph4Zs2aRUhICHPmzClQbCX3L5sQKujU3Z9Fc7Zz7tQNwq7FUKVaObVDyiW7XMWsM+3Rxpl2DxMk7cfP3yAtPZMK7k7UrFz4r+Xqg2eIjk2kgpsTfQPrFTkutTWqXon5bwzg1TmrOH09ije+/5Ofxg0q8B9fWxtrurWsw+/bQ/hr75kiJe1gfHclLiGFyOg4syXtSVk/uw4WmLSHX4sh9HI0Wq2UxjxukhJSCLscnZOch2X9e+vG3Xy1AXZytcetrBNu7k44uzlgo7PG2lqL1toKa2st1jbGm9Zai0YD6WmZpKdmkJZzSyctJYOUpLScWfvMDD0pSWmkJKURGXaHM0ev3XddByc7qtSsQJWaHlSr5UkNv4pUr1sRJxfZX+Bhbt26xZAhQ4iMjMTV1RV/f382bdpEUFAQAJGRkYSFheWM//7778nMzGT06NGMHj065/iwYcNYvHgxALGxsbz88stERUXh6upKo0aN2LNnD82bNy9QbJK0m9iVczfxb+pk0YuoROGVLedM08Ca/L3vEtv+CuGF1/OuWytuDlklBcVR055dLlEU+08YS2Na+/sUejYoPSOTRVuNtewvdGlmkln2y7diuB4TSxlHe+PNwR4XezusrIpvxsqvigcLxzzNkOnLOBkaycHzYbSqW7XA5+ndth6/bw9h9/HLxCelFqk7j1cFVy5cuZXzbos5ZJfHODhaXk373h3GWfaAZj6yqVIpF3snkVN/X+XUkauc+vsq1y5EPXSso7Md3jUq4F2jApV9ylPWwwW3sk64ujtl/euIja1p0y1FUUhKSM1J4O/ciuPWjXtEhd813m7c5VbEPZITUzkfEsb5kLBcj69UrRxVapc1aUylxcKFC/O8PzsRz7Zr165HnvObb77hm2++KUJURpK0m9g7z87DxcWV+k2r0aBFDRq18qV6XS95e6oU6do7wJi0bzjJsFc7WdQLtH9m2s1YHpOVtHuWL1rSrihKTj1764bVC32eNYfPcCs2kfKujvRtVb9IMQEsPXiCT9ftQPnP5JmVRoObgx1ujva4O9rj5mCfK6nP+fhfn9vbFq3etGbFcvRtVZ/fdgWzZMfRQiXttatWoKZ3OS6Hx7Dt74v06+hf6HiyS6Ky320xhyQLLo/Zt924C3C7LqZpdSosx93bCZz6+wonDxuT9PAHtPYt6+GSk5xXqVGBytWN/5Yp71zsf+M1Gg1OLvY4udhT2efB73plpGcScS2GsMu3uH7pFqEXIrly9ibREfeIuBZDXGxsscYsik6SdhOzd7QjOTGVv3ed5+9d5wEoU96ZJm1q0aRdbZq0rYWzq/l2qhTm16JNLZxd7blzO4Hjh6/SrJX5NpopqOyFqJmZBtLTM7E18ewO/JOweRVxIer1yHvcvB2HjbWWpnW9C3WOjEw9i7YYa9lHdGmGrgiz7IqiMGfbQebtOAxATY+ypGVkEpucSkJqGgZF4W5SCneTUriaz3OWd3bk84FP0LJm4VsDPte+Ect2h3DofBgXI25Tq1LBylI0Gg1BzWtzOTyGg6dCi5S0e2a9u3LTnEl71rtElrYQNSL8LlcuRmGl1dBKSmNKvNTkdP7edY7gA5c49fdVIkLv38yrWi1PGjSvnnNzK+ukQqSFZ2NrTbVanlSrlXvnzfh7SVw6fYOoyNv8MejhvcqF5ZGk3cR+2j2BOzcTOXn4KicOXubk31e5dzuBbauPsW31MbTWVjRsWZPWXevTsks93Ms7qx2yKCBbW2s6PdGANcv/Zsu6EItK2u3/1YIxJSXd5El7cko68VntLj2LWNO+/4Qx9W1cuzIOheyOsubwGSLvJVDOxYF+rQrf411vMPDJmh2s+PsUAKO7BPJqpxY5s2fpmXriko0J+73kFGKzkvfYpBTuJadyLymZe7k+TiVDr+d2QhJjf/2Lpa89g09597xCeKhK5VzpEuDLluCL/LzjOB8P6Vbgc7SoV5V5K/dz9Fw4mXoD1oV8d6hiVtKeXSJlDjnlMRbW8nFf1gLUgKY+uLjJxEtJlJ6WwdE9F9i9/gSHd5wlLeWflqoajQafOl45CXr9pj64ujuqGK35uJRxpEnb2sTHe6kdiiggSdpNTKu1oma9ytSsV5l+L7QjPS2Ts8evcWzPBf7edZ6wy7c4vu8ix/dd5NtJq6nbuCodegXQvmdDXMqUzl8QpVHX3gGsWf43B3efJz4uxWLqW7VaK+zsbEhNzSApOR1XE7+rk93u0dnJrsjlC/+UxhSua0xGpp6FWbPsw7s0w66QL1DSMjJ5Z/lGtp25jEYDHzzViUEtGuYaY2utpbyLE+Vd8jfTpigK8alpvPbTn4Rcj+T1JWv57bVncLUvXD35kE5N2BJ8kY3HzvPGk62p4FqwGb/a1Srg4mhHfFIqZ69G4e9buE2xstt8Rppxpj05KWum3cLKY/ZkJe1tO0tpTEmSmaEn5OBldv8VwoGtZ0j+1x4bXlXKEtjFjwbNa1CvaTV5F1xYPEnazcxWZ01AYE0CAmsy8t2e3Ai9zYEtpzmw5TQXToZz9tg1zh67xvzP1tGsQx06P9WYZh3qYquTb40lq1HLEx9fD0Iv3WL3ltP0frqZ2iHlcHCwJTU1gxQz1LWbqt1jYkoaIRcjAGhVyP7s6/4+S+TdeMo6OzCgdeFKPhJS03jj57UcuXoDG62WL57pTtf6Rd/tVqPR4Gpvx8znejNozlKuxdzjraUbmDesT6FmuRtU86RR9YoEX73Jst0hvPlkmwI9XmtlRTO/Kmw/cpHDZ64XPmnP+r4nJqWRkJSKcxEWtT5MUs5CVMtJ2iNv3OPy+UhjaUwHKY2xdHq9gTNHQ9n9Vwj7Np8i/l5yzn3lPF1p37Mh7XsFULNeJVlvJkoUyQyLWWWf8gx8pSMDX+nI7chY9m06xY41x7l8JoKDW89wcOsZnFztad8zgB7PtKB63aJvEy9MT6PR0LVXAN9/s5kt60IsK2m3t+UuSTm1waaUXc/uWcTOMUfOhJGpN+Dt4UYVzzIFfnyGXs8Pm40dY4Z3aVqoWfbbCUmM+nE15yNv46izZfaQJ2lRo3C19Q9TztmRb4c+yZDvlnPg0nW+2riH//XqUKhzDe3clOCra/l930le7NYcB13Bykda1DMm7X+fuc5LfQILFYO9nS1lXB24F5dMVHQ8zj6mTdr1egOpqcaSBUcLKo/J7hrj37gabvKOqMUKPR/J5j+OsHfjCe5GJ+QcdyvrRNvu/rTvFUDdRlWwKsImY0KoSZJ2FZX3cqPviLb0HdGWaxej2P7ncXauDebOrTjW/3aQ9b8dpH5TH3oPaUWroPpY22jVDln8S6fuDfhh1lYunrvJtcvRVKtZQe2QgH9tsGSOpD2nc0wR69lP/tPqsTDW/32Om3fjcXd2YECbgs+yh92J5eVFqwi/G0dZJwe+H9GXuhXN8/2rW7ECnw18gnG//sXP+4Px9ShH/2YF73LTvn51qpR3I+x2LH8ePMOzHRoV6PHN6xk7z5y+EklichpOhSw/8azgwr24ZCKj4/D1Me3X7N8/s5bUp33vNimNsVSKonB83yVWLtxN8P5/toR3crWnddf6tO8ZgH+L6mit5e+nKPnk5aaFqFbLk5Hv9OCn3RP4bPFLtOvZEK21FaePhjJ1zK8M7/g5S+dsJ/ZOotqhiixuZRxp0bYWAFv+ClE3mH/JXsCXkmL6pD3SBEm7oigcKEKrxwy9nh+2GGfZh3VuUuC2iuduRvP8d8sJvxuHt7srP78yyGwJe7au9X0Z3cU4u/3Rmu0cC71R4HNYWWl4vmNjAH7ddRy9oWC7LFYs74q3hxt6g8Kx8+EFvn42r6xWn+aoa88ujbG1tcbGQiYpom7GcvHcTaysNLSW0hiLkZGeybbVx3it9zdMfOEHgvdfwspKQ5snGjD5++H8duADxn72NI1a+0rCLkoNSdotjFZrRaPWvkyY8Rw/7ZrA4NGdcSvrxJ1bcSyZsZkhbT/lq7eXce3iwzd6EMUnqJdxweKOjSfJzNSrHI1RdgeZJDPUtP/T7rHw5TEXw24TE5uEna01jWpXKvDjNxw5z42YOMo42TOwTcNHP+BfDl8JZ9j837mTmEwdr/L8PGoQVcu5FTiGwni1Uwu6NfAlU29gzK9/EXGv4Elv7xZ+uDnaEXEnnh0nLhf48S2yZtv/PnO9wI/Nlv29N8cGS9mdYyyqNCZrAWr9RlUpU8Ja/pVGifEp/D5/FyM6fc70d5Zz7UIUdg62PDWsDQu3vcv7s4fQopOfyTczEsISSNJuwcp6uDJ0bDd+2v0eb3/1DLUbViEzQ8/2P4/zas+v+fSNnwm9EKl2mI+15q19cS3jwL27SRw9UPAkyhyy+1unWGh5zL6sVo/N61Ut8O6lmXoDP2w29lEf2rkJ9rr8z7JvOX2JV35cTVJaOs2qV2bxy09T3rn46pM1Gg2fDuiGX8UK3EtK4fUla0lKK9j3yN7WhoFtjS9Uluw4hvLfHaAeIbtE5vCZsEeMfLjs/vzZnYRMKXtjJUsqjdmXVc/eTkpjVHUr4h7zP1vH0HafsujLDdy5FY97BWdGvNWdJXveY9TEJ/H0LlxbVSFKCknaSwBbnTWdnmrMjD9eZ8bKN2jzhLEf9b5Np3it1zd8MnoJV8/dVDnKx5O1tZbO3Y011Vv+OqFyNEbmmmlPSU0nNj4F+Kf1X2EcKEKrx41HzxOeNcs+qG3+Z9lXHD7J+N/+IkOvp0u9mnw/vC/OdsWfGNrb2jBryJOUdXLgYlQME1ZswmAoWOI9qG1DbK21nLoWRUhowf7fN63rjdZKQ1jUPSJjCjdTnr0IOfKWOZJ2y9pYKToqjvOnI9BooHXHumqH81i6dPoG08b9xgudp7H6x72kJKVT1deD8Z8P5McdExj4Skdp1SgeG5K0lzC1/b15f/YQ5q0fT7se/mg0GvZvOc3oJ2fw0Ws/cflMhNohPna69g4A4PDeC8TFJuc9uBhklxaYeqY9e5bdyUFX6FZ/sQkpnL5ifHeoVYOCJe2ZegMLsmbZh3RsnK/uKYqiMHf7Iab8uR1FgaebN+DrZ3sWaefUovJyc2b2kCex0WrZfvYKs7cdKNDjy7o40rOZMYH8efvxAj3WyUFHverGDVUOF7JEJnuDpcjb8QWe6X+UnI2VHC2jPCZ7lr1+QFXcy0lpTHG6cvYmE4bN582+s9j1VwgGvYFGrXz5eOFI5q0fT1D/ptIaWTx2JGkvoarV8mTCzOeZt34c7Xs2RKPRcHDrGd7oM5OPXv2JsMu31A7xseFT0wPful5kZhrYsfGk2uFgn5W0J5t4IWpUVg1zUWbZD526hqJATe9yeJQt2G7Am49fIOx2LK4OdgxqF/DI8XqDgU/W7mTOtoMAjOrUgkl9OqO1gHZvDat4MaVfFwDm7/ybDScuFOjxQzoZF6TuPHWZ69H3CvTY5vWqAIWva/coZ/y+Jaekk/CvjWpMIbt7jKVsrLQnp2uMzLIXl9g7icyauJI3+swk5MBltNZWdHqqMd+uGctnP71E03a1pbe6eGyp/9dLFElVX0/+N+M55q0fT4deAcbkfdsZXu31Dd99spbErHIGYV5BvQIA2GoBJTKOZmr5GJlVw1yUevbCtnrUGwws2JQ1y96pCY52ec/Epmdm8vayDSw7dAKNBt7r3ZE3glpZ1B/7pxr7MaJdEwAm/rGZ0zfyv7i8umdZ2vj5oCjw667gAl23Zf1qAPx9JqzAHWgAdDobyroZ1wLcNHEHmZyNlSxgIWp0VBznThm7/LTpJPXs5paZoWf1j3t5MegLNi4/jKIotOvZkIXb3uXtr56hhp/sWSKEJO2lRFVfD9795lm+3/h/tOzsh0FvYM1P+xjZ5Qs2LDuEXl/wP84i/zp2rY+NjZYrF6O4ckHdzj7ZNe2mTtr/WYRauM4xeoOBg6euAQVv9bj5+EWuRd/DxUHHM+3yrmVPSkvn1cV/svnUJay1Vnz1TA+eaxVQoOul6/XcSkjEYOLyj/8a160N7Wv7kJap542f1xIdn/+WrsM6GxP+tYfOEJuU/xfnftU9cbS3JT4plQvXowscM4CXh/FnIMrEHWQsaSHq/p3nAKjX0Juy5Qv2rpAomGN7L/Ja72+Y/9k6khJSqV63Il/+9ioTZjyHR6WCb74mSq7k9Ayz3EoLKQgrZbxrVGDSd8M5tvci33+6lvAr0cz+YBUblh5i1MSnqN+scJvZiLy5uDnQom0t9u04x94dZ6lR21O1WLJnKZNNvBA1O0HzKmR5zJkrUcQnpeLsoKN+Da98Py7XLHvHJjjZPzyhi0tJ5cUfVnL2ZjQOtjbMGtKbwJpVCxZn5C1GLlvN3eQUbKys8HB2wsvVGS+XB99c7HSFnsHXWlnxxTPdeXbeMq5E3+WNn9fy08sDsctHzX1T38rUqVyB8zei+X3fSV7q1iJf17TWWtGkjjd7gq/w95kw/HwK/rPqWd6F0xdu5rz7YirJWUm7kwUsRM1u9SgbKpnPzesxzP9sHYd3GF8guZRxZPj/PUHXAc3QamVO8XHU4bP5aHUm3mk5zbRlfGqSpL2UatK2FnPXjeOvXw/yy6wtXDl7k7efnUf7ng0Z+W5Pynu5qR1iqdOijTFpP374KsNf7aRaHObaETWnPKaQPdqzWz22rF8N6wL8Qd4afInQW3dxttfxTPuAPMfO3XaQszejcXe0Z97wPtSvXLCE9Oqd/2fvvMPbqs82fB9tS95727Edj8TO3gkQCIQV9g6zlPBRdiktpS2FtrSU0hYoFOhilFFWEjaBTJKQODvxiPfe25Yt2drfH0eS7XjJI3HGua/LV2LrjJ8kj/c853mft9VdsANY7HaqO/RUdwytKOtUSsJ9fYj09XH/G+HrQ4SfD1MCAwn3Hb6B0Vuj5uXbruDGv/+PnOoGfr12I8/ecNGIFwKCIHDreXP45X838P53h7ntvLkeN9guSo9j+6ES9uSUc8eqBR7t05eI45QgY3B+z0620t7cqCf3iDiASrLGTDzGrh7+98oWPnlzB1aLDblCxmW3LOHmBy7A29drspcnIXHSIhXtpzEKpZwr71jG8stm8fYL3/D1B3v57ssjZG4+yvX/dy7Xrlkudd9PILMXiJaPorxaOvXd+EzSHx/t8W5EHaOnfSxRj3a7g39uyATglnPn4DOMyt6k7+KjvdkAPHvDxaMu2Gs79PzgvXW0GrtJDw/l9dXX0G2xUNuhp07fRb2+k1p9J3X6Tuo6Oqnr7KTN2I3BbKGkuZWS5tYBx5QLAr+5eAXXz84Y9tyxQf48f/Mq7n59HV8eyWdqeBBrlo9cTK+ck8zfPttJQ3sXX+/P58rF6R49V1de+5GiWrpNllHl3UPv94DLMjVRnCzpMS5rTFpGNCFhY+/hkOiP3W5n8ycHeePPX9PW1AmIAtPdv7iM2KSwSV6dxMnAtl/cja/vxP7M6fV6Ip7/xYQec7KQKrYzAP8gbx743TVcctNiXvvdp+TsL+PtF79l5zfZ/PTPNzIlxXOrgsTQhIT5EhMfTFV5M0f2l7PsvMlJnDge9hiTyUJbhxhnGTGGor2xrZPCyiYEARZnxHu838bDhZTWt+LtpeamEVT2/2zfj8lqY1ZcBIuTYke1vuYuA3e8t5Y6fSeJwYH8+6ar8ffS4O+lIcJ3aD9zt8VCvb6LWr1e/NdV4Hd2UtXWQUVbO7/ZsIWpIUHMjh6+kW5hYgyPX7ac3326hRe//Z7E0CDOm5Y47D5KuZzVy2fz/Cc7+O+WA1yxaLpHVp2YMH8ignypa9FzqKCaJaNsDI4Mc01FnWB7zEmSHrNjs1i0n32+pLJPFPmHK3ntd59SkCXewYiMC+LuX1zGgnPTTqoGcYnJRatSolWNTkQYCesEH28ykUxjZxCJ0yL503v38Njzq/EL1FGWX8eDV/2Nj/+1TWpUnSBmLxCLn0N7SydtDb1F+8Qp7S5FVeulwsd79H7DXVnlAEyfEk6Ar2eDUESVXfSy37x8Nr7aoc/b1Gngwz1i3Oa95y0eVRGg7+nhzv+tp7y1nSg/X9646WoCtZ7dJfFSKpkSFMDSKXFcM3M6D5y9mD+suoDXb7qab390BxelTsVit/PA2i9o7By5yfTGRTO5YeEMHA547IOvKaxvHnGfq5dkoNOoKK1v5fuj5R6tWxAEd/RjZs7oox9dzch1jR0TmtXeZZj89JiW5k5yDouviWSNGT82q403/7qBR67/OwVZVXjpVNz500t49cufsPC8aVLBLiExCqSi/QxDEASWr5rFq18+wsLz0rBabPznT1/x81v+QX3VwNv7EqNjzgJRGT04iUW7S6W0WGxYLLYJOWZdU681Zix/ZF3WmCWjsMZsPlJESV0L3hoVNy+fPey2bzhV9pkxESyZ6rnKbjRbuPuDT8hvbCJYp+XN1dcQPoyyPhoEQeAPq1aSFBxIY5eBB9d9idk28vvx+GXLWZAQg9Fs4f7/fkrbCMkwPl5qrnbaYt7ecsDj9S10Rz+OvmgPC/FBEKDHZHVPyZ0IXHeHJnMi6q6t+TgckJoeRWj42Po3JESa6tp57NZ/8MGrW3A4HKy4cg7/3vgY190tWTMlJMaCVLSfoQQE+/Dka3fw8B+uxUunImd/Gfde9le++WjfhE85PJOYMTcOmVygtqqV+tr2SVmDK/IRJs7XXt849ox2s8XqLgw9jXrsq7KvHkFlb+408IFTZf/RikUeX1SYbTYeWPs5B6vr8NWoef2mq4kL9PdoX0/xVqt45brL8VGrOVhdyx82fjfiPkq5nOdXX0pMoB81bXp+/O4XmK3DF/url89GLhPYU1hFfrVnMY7zpsUgCFBa00JTm+dRkwAqpYLgALHBtn4CE2SMhsm3x2x3psZIKvv42Lstj/uveIHc/eV46dT8/IXVPPrcjQRK8ZkSEmNGKtrPYARB4MLrFvD3z37M9HnxdBvMvPCLj/jdvf+lvWV0f8QlRHTeGlKnRwOTZ5GRy2WonSpW9wT52l32mIgxJMccLqrF2GMh0FdLSmyoR/tszSqmqLYZnUbFzcvnDLvtmzsO0GOxkhEdzrJkz+IdbXY7j37yNTtKK/BSKvjXDVeSGhbi0b6jJT4wgD9fcREA7x04wtojuSPu46/z4uXbrkCnVrGvrJpnvxy+2I8I9OWCWcmA52q7v7cXqfFi89+eMajtrhSh2glMkHEPV5okpb2tpYucQ+JrIUU9jg3X3dsn17yBvs1I4rRIXv70Ic65dNZkL01C4pRHKtoliIgN4tl37uHOn16CQiln96Zc7rnkL+zeNHJxITGQOQtFNfngnsn0tYtFj2GCfO11ruSYMWS07zritMbMmIJMNrIKbrc7+IdTZb/pnFn46YZW2Vu6jLyfKU6hvddDld3hcPDEV5vZkF+EUi7nlWsvH7FJdLycOzWBB85aBMCTX28mu3bkAVxJYUH8+cZLAPhgzxEqmtuG3f7WFeLFzTcHCmlo6/RoXQudKTJjsci48vonKkHGZrPT0yMOQdFNkqf9+2352O0OktMiCY/0n5Q1nMo01rbx2C2v8fG/tgFw2S1L+OuH9xEZFzy5C5OQOE2QinYJQFRnr7t7OS+ufYD4lHA6Wg389kdv8fzjH9EzwXnfpzuu6MfD+0qx2yfHaqR1WmS6J+i9c1kgxmKP+d6Zz+5p1OO27BIKa5rQqpXccu7IKnu3xcr0qDDOSokf8dgOh4NnN+/g4yM5yASBv155MUsTRjd8aazcd9YizpuagNlm4/61X9BiMI64z9mpUzgndQoOB7y18+Cw206PDWduUjRWu53/bT/s0Zp6i/bKUX+vurPaJyhBpm/j9GTltO/Y5ByoJKXGjJrdm3K5/4oXOXqwAq23hl/87RbuffJKVKOME5WQkBiaU6pob2tr49Zbb8XPzw8/Pz9uvfVW2tvbh9zeYrHw2GOPkZGRgU6nIzIykttuu43a2tp+2y1fvhxBEPp93Hjjjcf52ZycJKRF8uLaB7n2rnMQBIFvP97HPZf+hYM7Cyd7aacMqelReGlV6Du63bfaTzSuRj5958Q0CTY57VKhQaMr2pvbu6iob0MmCO4CcSQ+3Ckq5zeePQt/3dApLhabze1l91Rlf/fAEV7fI9pHfn/pBVyYOtWjNU0EMkHgucsvYkpgAHX6Tp7asNmj/e44ay4Anx48isliHXbb284TL3I+zcz1qDclIykCtUpBq95IVcPwSv6xhAaJ3uTGZs9U/ZHocEaKqlQKlEr5hBxzNNRUtZJ1sBxg0uJaT0Vqypt4cs3r/PZHb9HZbmRqRjQvf/oQZ108Y7KXJiFx2nFKFe2rV6/m8OHDbNiwgQ0bNnD48GFuvfXWIbc3Go0cPHiQJ554goMHD7Ju3ToKCwu5/PLLB2y7Zs0a6urq3B//+Mc/judTOalRqRX88LFLeea/awiN9Kehuo1f/uDf/OVnH9DZPrI6eKajUMhZvlJM81j7XuakrCE6OhCA8vKRIwM9wVVE2e2jiwZtc140+Hlr8PZAPXU4HORWNADi4KDhyKluwGAyE6Dz4uyUkVX83eWV/P7bbQD85NylXDNz+oj7TDQ+GjUvXH0pMkHgm/xidpVVjrjP/CnRhPjo6LFYOVRZO+y2C1LE5Jy2rm70HvQzqJQKQvx1ALR3je4Cz+qMiVVNUIFdUChahqZMOT69BSPx39e2Yrc7mL8kiUjnz4/E0Bg6e/jPs19yzyV/Ze+2fOQKGdfedQ5//t+9RMQGTfbyJCROS06Zoj0vL48NGzbw73//m8WLF7N48WL+9a9/8cUXX1BQUDDoPn5+fmzcuJHrr7+elJQUFi1axEsvvcSBAweorOz/x1Kr1RIeHu7+8POTor5mLkri1S8f4fJblyIIApvWH+Dui/7Mjq+zpISZEbj65sUAZG4voGqCCufRkJQoNnwWFTdMyPF0TruNYZRpNMYe51h6jWce5bq2Tjq7TSjkMhLDh//Dv6+0GoB5U6JG9MpXtrXz0LovsTkcXJ6eyt2L5w+7fVt3NxXt7XRbLB6tezSkhYWweu5MAH737VYsI8RACoLAosQYAPYUVw27rZdKSYivWIRXt7R7tB5v55TZ0b63nYYegDHl9g/G0bwaAKanHd/+gsEoyq9j27c5APzgvhUn/PynEna7nY1r97Nm5Z/4+N/fYbXYmHd2Cq9+8Qg/fOxSKcpRQuI4csr8dO3evRs/Pz8WLlzo/tqiRYvw8/Nj165dpKSkeHScjo4OBEHA39+/39ffffdd3nnnHcLCwrj44ot58skn8fEZOprKZDJhMvUqWXr9xI7zPlnQemv40a+vYPlls3j+8Y+oKmnkDw++w+Lzp3Pvk1cSLOUYD0psfDCLzk4hc3sBa9/dzcO/vOyEnj/JORK8pGRiinbXsBvDKNNoXJGTnhbtBdVNACRGBKFUDK/g7isVC9j5U2KG3a7LZObejz6jvbuH9Igwnr7kgmGtNOXtbVzx/rt0msXn6qNSE6rTEarzJlSnI0ynI0TnTZjzayE6HWE6b7RKz727D529mC+PFlDS3Mrb+w9z58K5w26/MDGWzw/nk1lSyUMsHXbbqGA/mvQGqps7mB4bPuJaXBdkXaN8b12DkDy5g+IJubnOot2ZvnQieePvolXp3AszSEwe+TU7U6kua+IvP/uA/MOi6BUVH8zdv7iM+ctTpSFJEhIngFOmaK+vryc0dGBcXGhoKPX1IycxAPT09PDzn/+c1atX4+vb6829+eabmTJlCuHh4eTk5PD4449z5MgRNm7cOOSxnnnmGX7zm9+M/omcoqTNjuPlTx/mg9e28OE/trJ7Uy5HMkv44WOXcNH1C5DJTpmbNieMa29ZTOb2AjZ9dYTb7zmXgCDvE3bupESxaK+uacNoNI27sU/nVGNHm/tucKaBaL08K9pdGeMpUcNbJMxWG4cqRKvIgoShizy7w8FPP9tAYVMLITotr1x7ORrl0L/2zDYbD234kk6zCZkgYHc46DSb6DSbKGkbfviYt1JFqLeOUK23818dsX7+XDctHbWi/zn9vDQ8eu4yfvnlRl7ansmqaSmE+gz9/bEwSbwwyaluoLPHhI9m6PczOsiPw6W11DR71iDqem8NPaNU2rsmTmnv7jZT7LzAnDbtxCrth/eXcSCzBLlcxm33LD+h5z5VcDgcfPPRXl57+jNM3Ra8dGpW37eCK25fhlJ1ypQREhKnPJP+0/bUU0+NWPzu27cPYNAreYfD4dEVvsVi4cYbb8Rut/PKK6/0e2zNmjXu/6enpzN16lTmzZvHwYMHmTNn8PSKxx9/nEceecT9uV6vJyZmeMXvVEelVnDrQys56+IZvPD4RxRkVfHSE+vY9vlhHnz6GqInyYt6spI+K5bU9Cjyc2r47MO93P6j807Yuf39tQQH+9Dc3ElpaRPp6eNTL11F92gjJF32GJ3GMxXapbSnRA//vZRb00C3xUqAzovE0KFtNC9t383mwhKUcjl/v+5ywn2Hv3B6IXMX2Y0N+Kk1fLX6NnQqFY2GLhoNBudHV79/GwxdNBkNGC0WuixmutrMlLb1b+hsNhp5eNGSAee6ZuZ03j+YRXZdA3/eupM/XX7RkOuK9PclNsifypZ29pdVc25a4pDbRgWLd7+qWzwt2septE9ApnphYT12u4PgYB9Cx5BQNFYcDodbZb/k6rmSl30Q9G0GXvzlWnZtFO1DMxcn8ZNnryckwn9yFyYhcQYy6UX7/fffP2JSS3x8PFlZWTQ0DLzV39TURFhY2LD7WywWrr/+esrKytiyZUs/lX0w5syZg1KppKioaMiiXa1Wo1ZP3tS+ySQ+OZy/fHgfn/33e956fgPZe0u5d9Xz3PbwSq7+4dmS6u5EEASuvWUJT//8Iz5fu58b7liGxkPFeSJISgqlubmTouKGcRftvZ72UdpjRulpL6gRi/bU6OGHMO11W2Oih/Szf51XyN93innvv7tkBbOiIoY95u6qSv5xYC8Af1hxARFOe5yvWk1S4PD++i6zuX8hbzCQ39zEuvyjvHH4IHfOnovvMb8vZILAry88j+ve/B+fZOdx45wZzBkmL35RYgyVLe1kFlcNW7RHB4lFu6dKu/cY+xXcnvZhcvQ9JdfpZ5+WFnlCbRa7vysgP6cGtUbJ6jvPPmHnPVU4tKuIv/zsA1oa9CiUcm7/8YXS73gJiUlk0ov24OBggoNHHrywePFiOjo62Lt3LwsWLABgz549dHR0sGTJQBXLhatgLyoqYuvWrQQFjdzVnpubi8ViISJi+D/yZzJyuYyrfnAWi8+fzt+eWMuh74v4z5++4vDuYh597kb8T6AV5GRmyfJUIqICqKtp45vPD3PF9QtO2LmTEsPIzCxx2w7Gg8vTbhyl0m4YRdHeYeihrlXsDUkewR7jakKdP4Q15mh9Iz///BsAfrBwDlfPGD4ppr2nm598+zUO4IbpGVycNHxyzbF4q1R4qwJJCOhVau0OBzmNDRS2tvDWkYM8sGDxgP1mRoVz7czpfHwkl99u2MraO29CPkRBtCgplg/3ZrOnZPjEmeiQ0Srt4sVE1ygvyCZSae/1s0eN+1ieYrPZeeMVUWW/evUiAoOl31kuzCYr/31+A2v/sx2A6IQQHvvrTSRNQr+BhIREL6fM5XJaWhoXXXQRa9asITMzk8zMTNasWcOqVav6NaGmpqayfv16AKxWK9deey379+/n3XffxWazUV9fT319PWazWEyUlJTw29/+lv3791NeXs5XX33Fddddx+zZs1m6dPiGLwkIjwnk92/cxYNPX4NKreDAjkLuu/x5svaUTPbSTgrkchlXrxYnYa57dzc22+giE8eDy9c+EUW7bowJI6NR2gudKntUkC8+XkMXgiP52VsMRu796DO6LVbOSojjp+edNex5HQ4Hj2/eSL2hiyn+ATxx9rkjrtUTZILA/QvE9/71QwfpNA1eFP/k3GX4qNUcbWjkw0PZQx5v/hTxuRY1tNDcaRhyO5fSXt/WOWIyDYw9GWii0mMcDkef5JgTV7Rv+vIIlWXN+Ph5cd2tQws/ZxqVxQ38+LqX3QX7JTct4qVPHpIKdgmJk4BTpmgHMeElIyODlStXsnLlSmbMmMHbb7/db5uCggI6OkSFqbq6ms8++4zq6mpmzZpFRESE+2PXrl0AqFQqNm/ezIUXXkhKSgoPPvggK1euZNOmTcjlJ37Ax6mIIAhcfMNCXlz3IDGJobQ2dvL4bf/k3Zc2ntAi9WRl5eWz8fXzor62ne+35p2w87oSZMrLm7FaRy7ehkM31vQY11h6Dzzt+dWeWWNyquvpGcLPLk4b/ZxafSfxgf789cpLUIxwK//D3Gy+KSlCKZPx4kWXjioFZiQuTkomMSCQDlMP/806POg2QTotD50jqvDPf7eLNuPgeemB3lpSIsQ7EHtKho5+DPbVoVbKsdkdNLSNPPjIe6yNqE6l3WecTc41NW10dHSjVMrd37PHG5vNzrvOovSG25ehm6DYylMZh8PBF+/u5oErX6Q0rxbfAC2/fvV2Hvjt1SfU1ichITE0p1TRHhgYyDvvvINer0ev1/POO+8MiG50OBzccccdgOiFdzgcg34sX74cgJiYGL777jtaWlowmUwUFxfz4osvEhgoNSSNlvjkcP627kEuuGYedruDd/62kV/+4N+0Np6ecZieotEoWXWtmAv+0du7TljGfUS4HzqdGovFRkVly7iONeac9lFEPpbWi2tMjBghn73MaY2ZEj3A/7z2cA4HqmrxVqt49bor8PMavhgrbWvlt9u3AvCTxctID53YolEuk7nV9v8c2k+XefDXb/XcmSSHBNHe3cML3+0a8njuvPbSoYt2QRCIcqrtVR742sfSiGq3O9wXcONV2l0qe/LUcFQnKInk8P4yGmrb8fbRcPl1w2f2nwm0t3Txm3ve5O9PrcdssjJnWTKvfvEIi88/8QPIJCQkhuaUKtolTn40WhWP/PF6Hn3uBjRaFUd2F3Pf5S9wcGfhZC9tUrni+gWo1AoKj9aSc2jkKZgTgSAI7iFLxeMcsuSKjOwedeSj50V7ZVM7AHGhAcNut9epMg/mZ/+2oBiAHy1dQGLw8BfeJquVhzZ8SbfVypKYWO6aM8/9WFtPN1WdHdhGOQF2MFZNTWGKfwDtPT28nXVo0G0UMhm/vlBMF3r/YBa5dYO/X4sSxYmne4pH8LUHe96MOhal3dBtwnXtqRun0j4ZfvZvPz8MwPKV6ag9TDY6Xdm/vYB7V/2VPVvyUCjl3P2Ly/jdf+4kMPTEpfhISEh4xqQ3okqcnqy4ci7JGTE88/C7lOXX8as7/8P195zLrQ9egHyEoTmnI/6BOs6/dCZfrTvAx+/sImNO3Ak5b2JiGEeyqiguaeBCMsZ8nPFORNV5ULRXNbcDEBviP+Q2ZquVw5V1ACxI6B+x2tljYm+FqMJfkJI04vn+mvk9uU2NBGg0/OWCi5E5Vfs6QycXrnuDDnMPSpmMWB9/4nz9ifMJIM7Xn3jfAOJ9/Yn28UMpG/l7WS6Tcf/8Rfxk49f85+ABbpsxG51q4OuxIC6aS6el8OXRAn77zVb+d/sN7jW5mDslCoVMRnWbnurWDqIDBx9u5lLaPWlGHYvS7mpCVakUqMepjvcmx5yYor2rs4dd2/IBWHnZrBNyzpMRs8nC6899zadv7QQgbmoYj/11NVNSpQAGicmj22RBaZrYSdTdE3y8yUQq2iWOGzGJoTz/0f388w+f89X/Mvng1S3k7Cvlsb+uPiMzfq9ZvZiv1x8gc0chlWVNxJ6AXPupTo/weJX2sXvanUr7CJ7YbrOFxvYuAGJDhlbas6sb6LFYCdR5kRjaX0n/rqQci91OYnAg8YHDq/U7Kyv418H9APxxxYWEefcmh/xp/3Y6zGKTpcVup6SjlZKOgYOV5IJAlLcf8b7+xDkL+XjfAOJ8A4jx9kPTZ6DSZSmp/G3vbio62nk3+wh3zx3ckvHYirPYWlTKoZo6Ps3O46oZ0/o9rlOrSI8J43BFHZkllVwbOPiFmEtpr/bIHjP6JmP3YKVxJscYDCbKysRehunTTkzRvu3bHMwmK3EJISSf4EFOJwuVxQ088/C7lBeIgwkvu3UJP/zZpWf8XQeJyef8X/0TuWpie0xszt/npwNS0S5xXFFrlDzw26uZuSiRF37xMbn7y7n/ihf4ybM3sODctMle3gklOi6IxeeksmtbPmvf3c2Pf3X5cT+n2x5T0ujxILLBGHt6jHMi6gjFQJXTGuOn1eA3TO5336jHY5/L5kIxsei8qQnDnqu128ijG78GYHXGTC5I7FXlDzfVsa44FwH45PJbCdZoKe9sp0LfRrm+jQp9u/vfHpuVys52Kjvboaa83zkEIFLny9SAYH6/5AKiffy4b/5CfrbpG/51cB+3zJg1aMNruK8PP1q2gL9s/Z7ntuzggpREvI/Jd1+UGMvhijr2lFRx7fwhinZXVrsHSrv3GDL4XUr7eIv2/II6HA4ID/cj6ATFxLqsMRdePvuEZsKfLBzJLOZ39/4XQ2cP/kHe/PiP17Fg+Zn1u1hC4lRFKtolTghnXzKTpOnR/PHhdyjKqeHJu9/g5gfO5+YHLjij/nBee8tidm3LZ/NXWdx+z3nHPRs6NjYYpVKOwWCivr6DiDHe4XDntHebR1X8exr56PKzx4YOv7597qFK/a0xZpuN7SXlAJyfPPTgIYfDwc83fUujwUBSQCC/XHZOv8d+kynmdl87NZ1ZIaJNINrHj2WRcQOO02jsolzfTnlnbzHvKui7LGZqDHpqDHr+dGA7f1t+GVemTuPlvZlU6jt4L/tIPw99X36wYA5rj+RS3trOSzsyefz8c/o9vigxlte27GFPSdWQ70XUqJR28b0xWWxYrDaUHtjXJmqwUm6ueBF2olT2itImCnJrkMtlrLh4xgk558nElk8P8vzjH2G12Jg2N55fvXwrAcE+k70sCQk3m56+e8QBmKNFr9cT/s9fTOgxJwupEVXihBEZF8Sf37+PK24T8+/ffWkTf33sQyxm6ySv7MQxfWYsaRnRWCw2Pvto73E/n1IpJy5OHF5WNA6LjKuws9sd9IzCH2jw0NNe2dgGQEyw/5DbmK1Wdz77sU2o+yqr6TSZCNZpmTnM5NP3crLYVFaCSibnhYsuxauP2v15aT4HG2vRKpT8dO7w2e6CIBCm82FhRAw3JM/gZ/PO5pXzruCrK+8g59aHOLD6Pv6x4kr3cUvaW1DIZNw7fyEA/zy4j27L4K+jSqHgVyvFrPi39x2muKl/8s/M2HA0SgUtXUaKGwZPBXJ52ju7TeiNw98a1vXJxPe0GbVzggYrHc0T388T5Wf/9nOxEXjBsqn4B+pOyDlPBhwOB++9vInnHn0fq8XGWRfP4Jm31kgFu8RJh5daeVw+Thekol3ihKJSK7jniSt44HdXI5PL2LT+AE+ueQND5+njORuJa28RB7l8/vE+ukc5YXQsuHztJeMYsqRRK5HJREXXU4uMw+Gg222P8VBpH6YJNbuqHpPVRpC3doCffXNhKQDnTk0Y0Lzpoqilhae3bwPgp0vPYlpIbx58j9XCM/vEx340YyFhurEXM4IgEOyl46L4ZC6ITcLucPDykUwArkqdRrSvL81GI//LyRryGGcnxrNiagJWu53ffbu1X0yoSqFgTpzoxc4cYjqql0pJsK8WGFltV8hlaJzNpJ72LEzEYCW73UHu0ROXHGO12tj0lfian0kNqFaLjRd+8TFvv/gtANfedQ4/f2E1qtOokJGQOFOQinaJSeGSGxfx5Gu3o9GqOLSriJ+ufpWmuvbJXtYJYfE5KUTGBNKl7+GbzwaPAJxIEp2+9qJxFO2CILibSY0eXmj0mK3YncXmSEW7OzlmmLjHvaWD57M7HA63n30oa4zJauXhb77EZLNyVmwcP5g1p9/j/8zeR62hk0idD3dnTFxu90OzxQu0T0qOUtbRilIu5955otr+jwP76LEOfdfi8QvOQSWXs7u8im/yi/o9tjBJjH7MHGbI0ugSZEbXs+DytHuPI+6xsqoFg8GERqMkMWH4gVoTwb7vi2lvNeAfqGPB0qnH/XwnA4bObn695nW+/XgfMpnAfU9dxQ8fuxTZCAPHJCQkTk6kn1yJSWPB8jSee+8eAkJ8KMuv48fX/Z2y/LrJXtZxRy6XcfVqceDOuv9lYrMe36mxvQkyjeM6jm6UDYt9C8CRbk9WNrYDwyvt7qFKx1hj8hqaqNN34qVUsDg+dtB9/7RrB3nNTQR5efHnPvGOAA2GTl7N2gPA4/OXo1FMnAKZERzOeTEJ/dT2q9OmE+njQ5PRwAe52UPuGxvgz5rFou/9uS07+6ntriFL+0ursQ4xdXh0We3O2EcP31t3esw4lHZXPntqSgRy+fH/U/TtF4cBOO+iDBRnQOxsU107j970Koe+L0KjVfHka3ew6ubFk70sCQmJcSAV7RKTStL0aJ7/8D5iEkNpaehw/5E53blg1Sz8/LU01LazY8vR43oul4rZ3NxJe7txzMdxKe0GD5X23ibUXmvNoNuZzDTpDcDQRbvZauXwEH52l8q+dEocGuXA3vrvyst44/BBAP54/oWE6Pp7mZ87sAOj1cKc0EguS0gFoM1kpNbQMSHTax+eLfZwrC/OpULfhkou50dOtf21/fswWYfu6VizeD5qhZyq9g5KmntjJ9MiQ/HVqOkymTlaM/gdlLFktXustBvH72k/egLz2dtbDezZIQ54u/Cy2cf9fJNNydFafnzdy5QX1BMQ4sOf3r3njEvrkpA4HZGKdolJJyw6kL98cC8ZCxIwdvXwxF3/YeO6/ZO9rOOKRqPkMuf49I/f2TUhxeFQaLVqoiJF20nxOCwyrsmXnhZ2o02OCfD2wlc7uHKb1cfPnhAyuJ99MGtMs9HITzdtAOC2GbNYMaX/NtnN9XxUlAPAk4tWIAgCdUY95335Kmd98TJz1v+Vm7a8zVMHvuGDkkMcaamhexhLy2DMDIlgeXQCtj5q+7Vp04nw9qbB0MWHR3OG3FerUjI/VrxI2VlW4f66XCZjgVNtH8oiM5qsdu9Rvre9kY/jV9pPhJ99y4YsbDY7yWmRxCcdfyvOZLJ/ewE/Xf0KLQ16YpPCeP6j+5maPnB6sISExKmHVLRLnBT4+Gl5+vW7OOfSmdisdv762Ie89/Km41rMTjaXXTcflVpBUV4dWQcrRt5hHCS5LDIlY7fI9HraPbNQjLZoHy45Zig/e22HnqMNjcgEgeVJU/rt43A4+NmmDTQbjSQHBfPzZWcPePw3mVsAuCpxmjvi8c9ZW9FbRPuH3tLD3qZK3i7ezy/2f8XVm94kY+2fOP+rV7n/+7W8nLuTTTWF1Iygyru87euKcqnsbEetUHCPW23fM6zavnSKGDe5s7T/94hrIuxQzaiu17Pa2S8wHK50n1HbY8aotOv13VRWick309KO74Ajh8PhzmZfefms43quyebrD/bw5N1v0G0wM3NxEn/54F7CooYfNCYhIXHqIOW0S5w0qNQKfvbXmwiNCuCjf27j7Re/pbG2jft/czUK5ennQfUP0HHBqpl8ufYAH7+zi5lz44/buZISQ/lue/64JqOO1kJh8DQ5xhM/e+ngfnaXyj47OoJAnbbfY29nHWZbeRkquZwXLrxkgFf9q/IC9jVUo5EreGy+mIV+uKWGTypyEIAPVtyOVq4kr72B/I5GCtobyWtvpMVkoKyzlbLOVr6uzncfz1upJtUvlDT/UFL8Q0nzDyPZLwStQsWc0EjOjopne005rxzJ5I/LLuL6aem8sm8PdV1dfJyXy80ZMwd97ssS4nh2sxhrabZaUTknrS5KEov2QxW1mCxW1MdYg1xZ7fVtnVhsNpTyoX+GRqu0d45TaXdFPUZHB+Lnpx1h6/FRnF9HWXEjSpWc5SvTj+u5Jgu73c5/n/+GD17bCsCKq+by0NPXoFRJf+IlJE4npJ9oiZMKmUzGnT+9hNDIAF797Sd889E+mus7+MXfbkE7jqa3k5VrVi/mq3UH2LuziIrSJuISQo7LeZImIPbRbY8ZpaddN9I0VHdyjP+gj5ssVo5UikWeS112saVo8NSY/OYm/rDzOwAeX3Y2qcH9X9ceq5U/7BUf/9GMhUTofHA4HDx9aCMAV8fPYG6weIGQFhDWb9/mni7y2hvJb28kv72B/PZGSjqb6bKY2N9cxf7mXruKt1LNf866gXkhMTw0eynba8r5qDCH+2cuJtrHj3vmzec3323l1f17uG5aOqpBCuvkkCBCdFqaDEYOVtexKF58DRJCAgnx0dHUaeBQZS2LEvs34Qb76FAr5ZgsNhraOoke5k7GqJV2Z+TjWD3tLj/79OOssgN841TZly5Pw8fX67if70RjNll5/ucfss3ZaHsmDq2TkDhTkOwxEiclq25ezK9fvR21l5IDOwr56erXaGkY2Zt7qhEVG8SSc8Tmx7Xv7jpu50lKFAvPqupWenpG58l24VLajRPtaXcOVooNGfw2fnZ1r599Sp9tOntM7K0QFfgVfYr2HquFh7/5CrPNxvL4Kdw2Y2Dj4eu5+6nu6iBC58P/zVgAwOeVRznUUoNWoeQnM5YPud5gjTdnhSewJnURf1l0BV9etIasq3/GlxfexV8WXs6a1EWcFZ5AoFpLl8XE7w9vxOFwMC8siqWRcVgddl7JEr3tN06fQahOR21nJ+vycgc9nyAILE1wWmT6+NoFQXCnyOwpHuhrl8mE3mbUEXzto25EHedwpV4/+/H1WptNVrZuEBN6Tsds9s52I7/8wb/Y9sVh5AoZj/zxem55cKVUsEtInKZIRbvEScvC86bx7Dv34B/kTWleLT+58ZXTMsv92ltFv/OWr7Npae48LucICvImIECH3e6gtHRsvnatdnSRj67ifryDlfY6Gy0XJPT3s39XUo7FbicxOJD4wN5i/o87t1PY0kywVsufzr9oQAHTaOzi5SO7AXhs3tl4KZR0Wy38KUv0t9+TtoQwr9ENV1LJ5aT6h3FlfAY/n7mCN8+5ia8vuhsvuZKs1jq+qxfvCDzs9LZ/WJhNbZcetULB3XPEhuRX9u/BYrMNevxlzqL9+2N87b157YP72j1NkPF25rR7orSbLVZMzinGY4l8tNns5BeI0a7Tph1fpX3Xd/l0dfYQHOrLrPlTRt7hFKK+qpVHbvg7OfvK0Hpr+N2/f8gF18yb7GVJSEgcR6SiXeKkJmVGDM9/dD+RcUE0VLfx+G3/pLXp+BS2k8W0GTFMmxGDxWLjq3UHjtt5po6zGdU1gMdTpd3ggdLe1W2ipVOMoRyyaB8in90V9Xje1AT31/ZUV/HfrMMAPHf+RQRrB/ql/3xgBwaLhVkhEVyROA2AfxdkUmfUE6n15YfJCz14diMTrNGxOkkc4vRSzg4cDgcLwmNYHBGLxW7nFWc2/OqMGQRrtVTr9azPHzz+c4kzfz63vpFWQ29s50Kn0p5T3UBnz8CC29Os9tEo7S6VXRB6vydGQ1lZE93dZnRaNXGxwaPefzS4GlAvWDXzhGTBnyia6tp57JbXqC5tIiTCnz+//yNmnyEDoyQkzmROn99iEqct4TGB/PHt/yM0KoCa8mZ+ece/6Gg1TPayJpRLr5kLwM4tecftHK7JqGONfdRpR5vTLtpwhvO0u/zsgT5at9rbF9HPLqqy86f0+tnNNhvflZQB/f3sa/NFi8m106ZzTvxAZTWnuYEPC0W7xK8XnodMEKg36vlHnlN5n7liQocr3Z26CI1cweHWWnY2iOt1qe0fFGRRZ+hEo1D2qu37Blfbg711pIWJvvxd5b2qeqS/L7FB/tgdDvY7L2764qnSPpo4T1dyjE6rHjZ/fyhynX721NTjO1SpqUHPwT3ihd0Fq2Ydt/OcaDpaDfzyjn/TWNtO1JRgnv/oPqakREz2siQkJE4AUtEucUoQEuHPM2/dTVCYL+WF9fzqzn/Tpe+e7GVNGAuXJSOXyygvaaS6ouW4nKNXaR9b0a4d5URUt6fda2il3ZUcE+NUhI8lq6oes9VGsE9/P/u+ymq6TGaCdVpmRokFi81uZ2uZmCZzZcq0AcdyOBz8bs8WHMDlCWnMDRPzwf+S/R3dNgtzgqK5NEYcQNNmNtDQo/foeQ5HsMab1Ymi2v43p9q+KCKWheHRmO02XnOr7TMJ8vKiUt/BpwWDX7i5LDLHRj+6fO2Zg/jaPVXavUfRiNppdCXHjNfPfnzz2Td9dQSHA9JnxxIVEzjyDqcAhk5xjkVVaSPB4X78/o01BIUN/rMjISFx+iEV7RKnDJFxQTzz1t34Beoozq3h13e9TrfBswLyZMfH18vtuf1+6/FR2xOdzailpU3YbPZR7+9SY42jnog6TNHu9rMP3oS6r1QsROdPiennTXdFPZ47NQGZ8+sH62tp6e7GV61mfuTAgnBDRRGZ9VWo5Qp+7ox4zGqtZV15FgC/mn0+giBQ393B5Vtf4MLNz7Fy83M8euB93i79niNtlZhtQ+epD8Wa1EWo5QoOtlSzq6EcgIecU1L/V3CEBkMnWqWSNU61/e/79mC1D3x/+ua1982EX+T0te8ZxNce7anS7jV6pX2scY8FhU4/+3GchNo3m/10mYBqNln43b1vUZRdjW+Ajj+8uUbKYJeQOMOQinaJU4qYxFD+8OYavP28yDtUwW/ueRPTGNNQTjaWOceM7zxORXtUZAAajRKz2eoebDMaRpswYvQgp91dtA8R9+gaqrSgj5/d4XC4/ewr+vjZN5WKX1seP2VAJrnJZuUPe7cBcHfGfKK8fftFPF4Zl8HMILGIfDH/WzqtYmHa2KNnU30uf8nbwO27/sXSb5/mtu//yZ+Pfs23dTk0dI+caBTq5cONCWLh+LdcUW1fEhHL/LBoTDYbr2XvBeDmjJkEaryo6Gjn84L8AceZGxOJWiGnsctAcXPv++eKwSxqaKG5s79tzGWP0RtN6I09Q67RZX3yRGkfT3KMzWanztlMHhcXNOr9PSX3SBW1Va1ovJSctWLgXZdTDZvVxh8ffo8jmSV46dQ8/foPiUk8vSe7SkhIDEQq2iVOORLSInn69bvw0qk5klnC0/f9F7Np9Aroycbic1IQBCg8Wktj/cTHW8pkAokJ4h/6kjE0o/Z62kdnj9ENW7S74h79Bzxmslg5UuX0s/cp2vMamqjTd+KlVLDEqT5Db9F+wZSkAcd6I/cAlZ3thGp1/GiG2Gj6VVUeB5qr8ZIredQZ8ZjVVsXXtVkICLy++If8a9GdPJByPueEphCg0mKx28hqr+Kdsl387OAHXLjlz1y4+Tl+enB4Nf7/0hajksnZ31xFZmMFgiC4p6S+m3+ERmMXOpWKH84Rexte3peJ7Ri1Xa1QsCBWfB12lvaq6gE6L1IiRL+76yLHhZdaSZCP2IxbM4za7q3pVdpHmkLcNY7BSs0tnVitdhQKGcFBo0voGQ3ffHYIgLPPn46Xdvj0opMdu93OC7/4mN2bclGqFDz1jzuYmn58ozIlJCROTqSiXeKUJGVGDL/9952ovZTs317Asz9+D6tl8Li8U4WAIG+mzxKtDru2DVRaJwLXkKWiMUxG1Y4yPabXHjN0Y6dLaY8bxB5zpKrO7WePD+593KWyL50Sh8Y5BbSktYWy9jaUMhlnx8X3O05Tt4GXDrsiHs9Bp1TRY7Xw7BEx4vH/0hYToRWV9+eOfgXA5dGzmRMYz/ygKfww6RxenH8LW87/OZ8tf5inZ17D9XELSPWNQC7IaOjRs7FucDV+R2MhAGFePtyQMAuAl3J3ALAsMo45oZGYbFb+4VTbb50xG3+NhrL2Nr4oKhjwmiwdydc+iEXGNRl1uKx21wWZ1WbHZBn+Ang8g5Xq68Q1hIX6Hbcm1G6jme2bxIbkUz2b3eFw8M8/fMGm9QeQyWX84m83M2Nh4sg7SkhIjJlnnnmG+fPn4+PjQ2hoKFdeeSUFBQN/H/dl27ZtCIIw4CM/v//f8rVr1zJt2jTUajXTpk1j/fr1o1qbVLRLnLKkz5vCk6/egVKlYNfGHP7ysw/G5NU+mVi6XLTIHC9f+9RxTEZ1FXZmiw3zCIUdjBz52Nltoq1LbCaOGURp3+dUjYfys/dNjdnoVNkXR8fio+5fTP71wE66LGYygsO4Omk6AK8X7qXG2EG4lw93pSwC4OvaLLLbq/GSq7g/5fwB6xEEgVhdEKuiZ/GL9Mt4/6x72bnyl8Oq8Q/se5v3y8Vm0/9LW4JKJmdPUyV7nGr7w05v+zt5h2nqNuCtUvHD2U61fe9AtX2Z887CvspqTNbe98A1DXVP8TC+9mGKdq1aheslHsn+5Fbax5DRXlffDkB4+PFrntyx+Sg93RYiYwJJnxU78g4nMf/7+2Y+fWsnAD9+5joWrZg+ySuSkDj9+e6777jvvvvIzMxk48aNWK1WVq5cicEwcmpdQUEBdXV17o+pU3ujWHfv3s0NN9zArbfeypEjR7j11lu5/vrr2bNnj8drk4p2iVOa2Uun8suXbkGukLHti8O89MRa7IM08Z0qLD1XnI6ac7iS9uMQa+majFpc3DCiDeJY+hbfnqjtvZGPgxftLmtMkI920G32DeJnr+3Qc7ShEZkgsDypN9JxU2kxAOcn9Fchj7Y08n6h2Gj65MIVyASBxu5OXs37HoCfzThPHK5kM/Ni/rcA/DDpbEI0nlk3vBSqAWr858t/zO9nXsPKiHQA/l28jR6bhQitL9dNmQnAS7liIXZ2VDyzQiLosVn5V/Y+AG6bMRs/tYaStla+Ki7sd76pIUGEeuvosVo5UFXr/vrcKVEoZDKq2/RUt/Yvzl0JMsM1o8pkgvv9HaloH4/S7vKzR0b4j3pfT+mbzX4qTwb9/J1dvP2i+D35f7+8nPOvmjvJK5KQOP50myzH5WM0bNiwgTvuuIPp06czc+ZM3njjDSorKzlwYOQ5KqGhoYSHh7s/5H36q1544QUuuOACHn/8cVJTU3n88cdZsWIFL7zwgsdrU4zqmUhInIQsPG8aj/11NX98+F2++WgfKo2SHz1xxSn5Bzsswp/ktEgK82rZvb2Ai6+cM6HHj48PRi6Xoe/soampk9BQX4/3lctlaNQKekxWDEYz/r4DBxf1ZaTIR1fc42B+9h6LlcPOfHZXoyX0quyzoyMI1InnbzIaOFQvbrtiSm/R7op4tDscXDolhfnhYvH/1+zvMFotzAqM5LI4Ubn8b+n3NPToifDy55YpS4Z9XsMhCAIxukBidIGsjEwnu72Kuu4O1lXuZ/WUxdyTtoQPyw6zu7Gc/U1VzAuJ4aHZS/jBt2v5b94h/i9jAUFeWu6cPYfnM3fx8t5MLp2a4k7IEQSBpQlxrM86yvdlFSyZIirJOrWK9JgwDlfUkVlSybWBGe41RXtgjwGx0djQbR6xGbXTpbRrx1C0O3s1wsP9R72vJ9RWt5J9qAJBgPMvmXlcznEi2PLpQV75zScA3PzA+Vx5x7LJXZCExAnikof+gVw1tmSqobCZRaFBr+8f46tWq1GrR/491tEh/t4KDBw5Onb27Nn09PQwbdo0fvWrX3Huuee6H9u9ezc//vGP+21/4YUXjqpol5R2idOCsy6ewSPPXo8gCHz+9i5ef+7rUSvJJwsutf14WGRUKgVxsWJqx1h87Z5ORbXbHW51Yyh7jGuwUmzoIH72yjosNhshPjrigv3dX99SJNpg+lpjtpSV4gDSQ8OI8OlVyDdVFrOrrhK1XO6OeMxprePjsiMA/Gr2SmSCQEN3B2+UiD7zh1NXopFPzHAlpUzBDxPF875RsgOTzUKkzo9r4sVi8m9Ob/u50QnMCA6n22rhXzmi2n77zNn4qNQUtbaw4Ri1fdmUoXztrujH/nntLnvMcI2oADqNZ7GP7sjHMdhj6p1Fe0TE8bHHbHSq7HMWJhJ6HC04x5M9W47yl8c+BOCyW5dw8wMXTPKKJCROD2JiYvDz83N/PPPMMyPu43A4eOSRR1i2bBnp6elDbhcREcE///lP1q5dy7p160hJSWHFihVs377dvU19fT1hYWH99gsLC6O+vt7j5yAp7RKnDSuunIup28JLv17Hx//ahsZLeUr+wVt6bhpvvLKFQ3tLMXT1oBtDcTQcSUlhlJY1UVzSwNIloxt9rtWqaGk3jJggYzT1Fn5DNaIOp7S789kTot13TDp7TOytEC0zK/oU7S5rzAV9rDFmm42n924F4K70+cT6+ONwOPj94U3icKXY6cwOFiMeXyrYSI/NwqyAWLelpd3chdVhI1g9vsLv8ujZ/Lv4O+p7OlhfdZAb4xfyo2lL+LjsCN83lHGguZq5wdE8NHsJP9y4jreOHuTujPkEarT8YNYc/rZ3Ny/tzeSipGS32u5S1/MammjuMhDsrQPEov21LXvYU1KFw+Fwv25RzoueulY9VpsdxRANoN4exj52Gcce+eiyx0QcB6XdZrOz8UvxguxUbUDN3lvKHx58B7vNzrmXz+aeX11+St4xlJAYK1+9+H/4+np+B9gT9Ho94f/7JVVVVf2O7YnKfv/995OVlcXOnTuH3S4lJYWUlBT354sXL6aqqoo///nPnH322e6vH/vz3Pd3tSdISrvEacUlNy3i7l9cBsA7f9vIx//+bpJXNHpi4oOJnRKC1Wpnz47CkXcYJYnOfOexTEZ1ZbW7rC9D4XpcLhNQKwfXBnoHK/kPeGxfmbMJtY+f/buScix2O4nBgcQHiuq80WJhZ6XYfHl+Qm/U41tHD1KubyfES8e9zojHb6oL2NtUiUau4KczzwMgu72aL2rEQu+n0y5BEAQae9q4Y8/vuWn3U9ye+Xv+kv8+G+v30djTNuxzHgyVXMEPEs8C4I2S7ZhtVqJ1/lwdL9pXXEkyK2ISSQ8Kw2i18O+c/QD8YNYcvFUqClqa+bak2H3MIJ2WaWHie7irvLfxdGZsOBqlgpYuI8UNvTnuIb46VAo5NruDhrbOIdeq89TTPsbhSiaThZbWLgDCj4On/fD+Mpoa9Hj7aFhyTuqEH/94U5xbw1P/9yZmk5UF56bxyB+vRyaT/kRLnFl4qZXH5QPA19e338dIRfsDDzzAZ599xtatW4mOHn3M6qJFiygqKnJ/Hh4ePkBVb2xsHKC+D4f0G0HitOOqH5zFbT++EID/PPsl+747PvGJx5NlTovMzq0Tv3ZXgkzxWOwxTh9z1whTUY3dvdaYoVQEtz3mmLhHs9XKkUrxF9uCKb1+9q1Fop/9vD4DlXZVVWCyWYny8SU1KBgAg8XM3w7vAuCn887CW6XG4XDwpywx4nFN6iIitaLa8lK+OFzpsujZTPcXlfe3yjdgsImFaW1PMxvq9/Cn/Pe4OfO33LL7t/zx6Dt8XvM9ZV112B0jNz1fFTOXUI0vDT16vqg5DMCPpi1FLgjsqC8lt62+X277W0cPYrSY8dNouGOm2NPw6v7+6QJLE0S1/fuy3qJdpVAwJ158Dn0tMjKZ4B6y5HrNB8Nb67LHjKC0j3G4kssao9Oq8fWZ2LtH0NuAeu6F6ajUp9ZN5MbaNp744X8wdvWQPn8Kv/jbLSiU8pF3lJCQmHAcDgf3338/69atY8uWLUyZMmXknQbh0KFDREREuD9fvHgxGzdu7LfNt99+y5IlnvdRSUW7xGnJTfeu4LJbxB+EF3/5MZ0dxkle0ehY4pyOun938YRPfHUlyDQ06OnQd49qX1+nVWek/ezOfgKZbOjbfq4Jnf7eXv2+3mbowWKzIZcJ/fzsZa2i0j0nOtL9tYKWZgAWRvXaaPY1VKM3m4jS+XJtkmh3Ke1soaKrDbVcwZqUxQB0WnrY31IGwD1TxWYhs83CjiZRef99xt38PuNuro85j1SfOGTIaDC1sbnxAH8r+pi79/+Ja79/giey/8X7lZvJ7SjDbB8YhamSK7gudj4AO5257bHeASyPEO8M7G0UC+8LYpMI1erospjJa20C4Kb0GQDkNjVitvXOIZgRGQ5ARWt7v3Mlh4sXLvUd/RV1X1dBPswdEpf9ZrjwJZPJgt6ptAf664becBBqXdaYCL8Jt3wYDSZ2O2cbnL9q1oQe+3hjNll4+v63aW/pIiE1gqf+cQfqYWYbSEhIHF/uu+8+3nnnHd577z18fHyor6+nvr6e7u7ev3uPP/44t912m/vzF154gU8++YSioiJyc3N5/PHHWbt2Lffff797m4ceeohvv/2WZ599lvz8fJ599lk2bdrEww8/7PHaTi05QkJiFNz5s0s4+H0hNWXN/PP3n/OTP90w2UvymKSUcELCfGlq0HNoXxmLzkqesGN7e2uIigygpraNwsJ65s/zXEUIChALtdb24eMolQpRD7BaB68AHQ4HNrtY2CuP8Vj3WMSLFC+lsl9x12YUf2EG63pTa6qcXf0xfr3e8z11osq8ODIWudNesMdZGM8KikKnFG0gB1vLseMgThdElFZU+w+1F9JtMxGk8mNeYAoyQcaCIPECqttqIq+zgpz2UnI6SsnTV9BpNZLZcpTMlqPicxEUpPrGku6XQLpfAtP94tEpvFgYnMjfCzdzoLUcu8OOTJAxIzCSzbVF5LSJdxUEQSAtIJRGYxmFbc3MDYsi3NsbrVKJ0WKhWt9BQkBgv9eg+ZjcYJ1KLPYMpv7FubsgH6Y522wVLwqUwyi8Dc3ixYCXRum+gPOUmlrxoisqauQEhtHy/bZ8TCYr0bFBpEyLHHmHkwSHw8HLv15PUXY1vgFafv3q7eh8vEbeUUJC4rjx6quvArB8+fJ+X3/jjTe44447AKirq6OysvdOp9ls5tFHH6WmpgYvLy+mT5/Ol19+ySWXXOLeZsmSJbz//vv86le/4oknniAxMZEPPviAhQsXerw2qWiXOG3ReKl45I/X8+iNr7Jp/QGWXpjBohXTJntZHiEIAovOTuHzj/ax+7v8CS3aAZKTw6mpbaOoaHRFu0tdbRmxaBcLP4t18Cm1roIdGNAY2e0c3KRR9f56cjgctBjEuyWBfYt2Z4RXrK+/+2uZ9WLRvjC811qzt0n85bowpHfYzj6nyj4/qNdus7MpG4ClwRnIhP7r8lKomROQzJwA8b2w2m2UdNWQ01FKTkcZOR2ltFu6yO4oJbtDtPIoBQXPzPw/pvlNwUuuosPSTVFnAym+EUwPENXy3LY69zmmBgTxXU0Zhe3iHQRBEIjx9aOgpZnKjt6iPcTZfNrc1f8Oklbt7Dkw978747rjMVzRbnFOFFYphi7a65vE1zs8xHfUanlNjbNojxyYFjRetm4Q37dzL8o4pRo3v3xvNxvX7UcmE/j58zcTFj3xFzQSEhKjw5PkuTfffLPf5z/72c/42c9+NuJ+1157Lddee+1YlybZYyROb6bNiefqO8VGwL89sZbO9lPHJrP4HLETfc+OQuz2iY2vTE4WC8aCwroRtuyPq2hvbRu+aFc4B0pYbLZBfwH2nfQpP6bZrtvcq7S7MFos9DgngAZqe5XIar2otEf7iR71bquFrCZRuV7kLNodDgd7m8R4xAV9iva9LWJhPT9oinNNNna35ACwNKQ353zI5yiTk+IbyzUxy3ky/Qd8uOS3vLHgcX6SciMXhi8gWOWHxWFlU/1+lDI5swPFc+9vKQcg3Vm0l3S2YLSKynhygGhvKWhrdp8nzs8fgMqOdvfXgnU69+tiMPeq6jpn0X6s0u4uZIf5NnIp7Z4W7aPFXbRH+Y963+Fobe7i0F7xvTz3opHft5OFwuwqXnv6MwB+8OjFzF46uiQnCQmJMw+paJc47bn14QuJTgihranT/UfyVGDGnHi0OjVtrQbyc6on9NjJU8WCsbDI83xY6LXHjKy0i79aHI7+qrqL4Yp2tz1G1Vu0u1R2jUKB1lnMW+12ajvFIjLGV7THHGisxeqwE6HzIcZH/FqloZ2G7i6UMhmzg8RGzTazgUK9+NxdRXuOvowOiwEfhZYZfv0nq3qCIAhEa0O5KGIhj6bexE9SbwRgX2s+DoeDeYHieVw++hAvb0I13tgdDvLbGwFICQgBoLBv0e7vD0BFn6Jdq1KiU4kFelOXod/XAQzHTACcKHtMXaNzOFLo6KMwXfaYyAlW2rd9m4Pd7iAtI5qomFNDqbZabLz4i4+xWe0svTCDa+46Z7KXJCEhcQogFe0Spz1qjdIZnyaw5dOD7NqYM9lL8gilUs4Cp/q2+7uCCT321Kl9mlFH0aQb5KHSruoT82gdxCJjtfUp2uX97QzdZqc9ps8xXH72IJ3WrRrXdXZiczhQyeWE6rwByGoS7xzMD4tyb7e3UVTZZwRGolGIRa2rcE7yCSVQLe67sykLgEVB0ynoLGB3cyZ6S/8JeqNhhl8iGpmKFnMHpYZa5jkvDly+dqCPRUa8gJjqLw6+auo20NYjPudYp9Je0d7e7/gh3s6JsH2K9pGU9uHtMeLrPpzS3tA8NqXdYrHR0OC8KzLBnva+1phThfVv7KA0vw4ffy33/+aqU8rSIyEhMXlIRbvEGUHa7Di3mvXyr9ehH6HoPFlwWWR2b5/Yot1bpyE6SlQ8Cws9V9sDnUp7m96IzTZ0zEjf5tLBfO191Xe5MLg9RqMcqLT3tcZUOa0xUT6+biW5qF3MJ3cp1gB7nH72BcP42R0OB983i8Vfhn8szxX8lddK/8WDhx7hqdzfsa76E4o6iz2KeHShkiuZFZDkPF8eaX6RaOUq9E5fOwws2nVKFdHeoortUttjnU22fe0x0GuRaTb0XnTp3J72wRtRh/Nqeqa0j61or2/owG53oNEoCQwcXerMcFSVN1OYV4tMLnDOBdMn7LjHk9qKFt59SYx9W/P4KvyDvCd5RRISEqcKUtEuccZwy4MXEJsURltzF6/+9tPJXo5HzF+ShEIho6q8meqKlpF3GAVTx2CR8ffVIghgtzvo6Bw69lHep2g3D1q0i8WvTBAGxEL2OBVfrz6NqC1OpT1Q27cJVSzaY/skxxQ5GziTnIo19EYqLgyNc39tX7PogV7gLNoLO6toMrWjkakw2dtw4EAlU+HAQZmhnE9rP+fpvGe4/+BD/L34NXY07aTd3DHk83cxP1BMntnbmu/0tYtrcPnajy3aAZIDxLW7mlHdnnZ9Rz+lfHClfezpMe5G1CGGYQE0uD3to7PHuPzskZH+E6oqb3Gq7PMWJeEfMHEXA8cLMS1mHaYeCzMXJ3H+VXMne0kSEhKnEFLRLnHGoFIreeTZ65HJZWz74jA7nX/wT2Z03hpmzI0HYPf2iR20lJI8+qJdIZfh7ysWi8P52gVBcCfIDBb76FLp5fKBv4L6Rj66cCntQbpBmlCdfna7w0FxeyvQazOpMXRQY+xALgjMCRIn2jX26CkzNCMgMDcoHsCtss8PSuNw+2EAVsfeyIuz/sJdU37AgsD5aOVaDDYje1v38e+yN3jo8CM8kfMUH1WtJV9fgHWQjHZX0Z7bUUaXpZt5zvPtczbBuppRCzuaMNnE/ZP9+zejRvr4opDJMNtsNHR1uY/tVtq7BlHaj/G099pjBizRzUiNqBaLjeY250TTUSrttbUTnxzjcDjc1pjzLj41rDFbPj3IoV1FqNQKHvzd1ZItRkJCYlRIRbvEGUXKjBiuu3s5AC8/uY72lq7hdzgJWHy20yIzwb723gSZ0TWjepog42pGtdgG8bQ7lXb5IMOXBot8bO3jaXdR6cpodxbtNV16uq0WlDIZcb5iceiKeswIiHDns7v87Gl+EfgqxYuAnc2in32WfxxlhnKxoA+Yjb/Kn7NClnFf0j28POcFfpX2OFdEXsYUXby4BmMVX9R9xTP5f+L+Qw/zUtErbGvcTqtZvHiI8AoixisUO3YOthW4m1EPtlZgd9iJ0PoSoPLC6rBT2CEOVHJZe4qcRbtCJiPKRyyS+zajBrtiH/tktfeNfOxrhXH1+g5nj7GMULQ3tnRitztQKeUE+GkH3WYojkdGe152NXU1bWi8lO6fkZOZjlYD//zD5wDc/MAFRMYFT/KKJCQkTjWkol3ijGP1fecTnxxOR6uBV3/7yWQvZ0QWOQuSo1lVtLdOnBc/KUlsRm1sHGUzqocDltyxj8M0oipkA38FDeZpbzW6PO29xeKxSnux08+e4BfoPq6rCXV+6NB+9gpDA1XGRhSCHBCfU4pPMr7K/mqyXJAz1SeJq6Ov5KnpT/DS7Oe5O+EuFgctxFvhTbetm/1tB3ij/C1+fPin/DL713xUtZY5gU5fe2s+qX187YX6BgRBcFtkcpx57VOd9piCtmZ3ke2yyPQt2kN0LnvMQKXd7nC4L36g77TTYTztluE97e3OKbgBftphJ90OxvHIaHdZY5YuT0PjpZqw4x4v/vXHL9C3GYlPCefqO8+e7OVISEicgkhFu8QZh0qtcNtktn+Vxfavjkz2koYlNNyPpNQIHA7Ys7Nwwo7rrdMQ7RzmMppmVFeCTPOISruraB/EHuNW2gezxwziaR+mEdXlaR/Mz75nkKFKe4/xs3/vVNlnB0zlSIfTIx04stfYV+nL0uDF3JN4Ny/Nfp5fT/slV0ZdTqIuAQGB6u4avqj7CpVMLHb3teajEGS9vvZW8eIhPTAC6PW1J/kHIQBtpm6ae4z9nmPlCEq7l1KBy3HR19cueNCIOpLS3mXoAcBnlJNQYeIz2q1WG9s35gKnhjXm4M5CNq8/gCAIPPT0tSiGafaVkJCQGAqpaJc4I5maHs0N95wLwN+f+uSkt8m4bv/vmmiLzNTRW2Tc9hgPs9oHi3x0pccM5mkfbLjSsfaYbouFZqf67rLHuJJjXH72hu5OKrrakAkC84LFQUs1xjZqutucxbNYyLv87LMDEijuKgZgXsCcYZ/bscgEGYneCVwVdQW/nv5LXp79AheGXQBAk6n2mOjHeKDXpnNsM6qXQkmcc8KrK0Emzl9UqCsHVdp73wdBENCqXL723qJ9InLau4wmALx16iGPMRhWq416Z9zjRNljDmSW0NFuxD9Qx+z5CSPvMIn0dJt56dfrALjsliWkzoodYQ8JCQmJwZGKdokzlpvuXcGU1Aj0bQZefnK9R6OLJwtX9OOhPSX09FhG2Npzkp157aNpRvXUHuNW2gfxtLsbUQfztLvtMQOV9iCn0u5S2X1Uavw0ovJb1OYq2kWv8B5nakyafxg+KnEblzVmun80WoWaxp42CjurEBBQy8TzJuoS+KL2Nf5R/Dg7mz6j3dw76MhTvJXerAg7D4ASQykz/OOd589jnlPhd/naXUV7fnsjFrv4WrmaUd1Fu1Np75vV7lLaWwzGfsX4YAkyI+W02+x293uiUgyeHtNpEIt2H+3olPaGRj02mx21WkFQ4MTEG27dIM5aWL4yHbni5P4z9t7Lm6ivaiU43I/bH7lwspcjISFxCnNy/7aTkDiOKFUKHvnj9cgVMr7/Jpvvvjx5bTIJU8MIi/DDZLJycE/JhB03JVm0Zowqq93f06mow3ja7UN72nvtMWLx6XA4BijtrqI9xtfXvU1JR3+lfd+g+ewua4zYEOpS2af7xZOrFwvBJO8w8vX7qDQW8HXdmzyXfzf/KH6cXc1fore0Dvuc+xKmCSVcE4bNYSNa6wOI0Y9pvhH9fO2xOn98lGrMdhslerFITz5mMqp7wFJHh/viMlDrhQDYHA7ajb3xm7o+zaguRsppd8U9Qu/7diwue8xolXZ33GNEwKi98IPhcDg4uFf8GVh2Xtq4j3c8Kc2rZe1/tgNw31NXoR2DtUhCQkLChVS0S5zRJE2P4qZ7VwDwym8+obWpc5JXNDiCIByXFBl3M2qTnvZ2z5pRA/3Fwrm1bfjtPfK0Dxr56CzanfYYfY/JXeS7PO2uJtQYZzHbaOxCbzYhEwTi/fonx7iKdofD4fazz3f72Z1RjwFTKegU+wUExCzyeN004nXTEBCoNBbwZe1/+FPeGv5V8isym7+my9I+7PMHmOEn+q1tDvECJ7ejjB6b2e1r39dShiAITHM3o4oXT8dmtbs87Z1mE+09YvGslMsJcL4eTX0GLLnsMYZR2GP6ZumrhrLHGMZmj3EX7RPkZ6+uaKGjzYhSJSdletSEHPN4YLPZefFXa7Hb7Cy7KINFK6ZN9pIkJCROcaSiXeKM54Z7ziMhLZLOdiMv/3rdSWuTWXxOKiA2ow43jXQ06HRqYmKczageWmSCPPW0OwvyQSei2oZuRO125rS7Ih9dKru3WuW2blR1iIW1S2l3+dnjff1RyxU09xgodqrW80NEP3uFoZkmUycqmYIZATG0m7vIbhcVW53SgQMH8do4SrvEOy7nhd3AmsSn+WnaP7kk4gfEalNw4KDccJTPa//FH/Pu4vXSp9jb8i0Gq37Q18BVtBd3FRHtFdIb/ehU+g+4mlH9+/vakwN67TEOhwONQkm4TrSW9PO1u5pR+w1YchXtvUq7IHOlxwy6THdyDIhZ/IMx5qLdGfcYPUF+9uxDYiJQWno0KtXQg6Amm8/f3kVhVhU6Hw0/euKKyV6OhITEaYBUtEuc8SiUcn7y7PUolHJ2b8pl62eHJntJg5I+OxZvHw0dbUbysqsn7Li9zah1Hm0fFCAWj11GEybT0P56xTD2GFcj6mAF4rGNqC1Gl5996LjH3iZUsdh1WWNS/EIJUIv7ufzsMwNi0MiVZLbkYsdBkncUBZ15ACR7R2C0daKV+xKvE5VRP2UQS0Mu4/+SnuHR1Ne4KOI2oryScGCnpCuLT2te449H7+TN0t9yoHUz3dbepuYU3xRUMhVtljam+4mq8L7W/N6ivaUcWx9fe06rWLQn+AUiFwT0ZhMNRvF4LotM+SBFe2NX36z2gZ52lytlSHtMn+SYoQb+uD3tutFZPCY67jHnsPjeps+OG2HLyaOxto23nt8AwJ0/u4TA0NENo5KQOFPp7jEfl4/ThZNXphiEtrY2HnzwQT777DMALr/8cl566SX8/f2H3OeOO+7grbfe6ve1hQsXkpmZ6f7cZDLx6KOP8r///Y/u7m5WrFjBK6+8QnR09HF5HhInHwlpkdx07wrefvFbXv3dp8xclEhQ2OhGtR9vFAo5C5ZOZcuGbHZ/l0/6BKVQJE8NZ/OWox4r7TqtCpVKgdlspaXdQGSY/6DbeeJpHy7y0aW0DzYNtdJtj+mf0e6Ke3Q1ofb1s+9tcVljxIJ5Z5MY9Tg/MIUdzeLvFLkgFr/T/BYgFwbaRAJUoZwVciVnhVxJq6me7I5dZLd/T11PGUVdhynqOsynwj9I8p5Jhv9S0nznk+aTwpGObHycYTj7WvN5cOq1aOUqOq09FOnrmR4oFu157Q3Y7HbUcgXxvgGUdLRS2NZMuM6HWH8/9tZW9499dHr8+8Y+6gaxx4zUiDpScgxAl9HpadeOTWmPjPQf1X5DkeNU2tNnn5wpLA6Hg78/uZ4eo5np8+K56PoFk70kCYlThivueg2FcmJ7P6yWngk93mRySintq1ev5vDhw2zYsIENGzZw+PBhbr311hH3u+iii6irq3N/fPXVV/0ef/jhh1m/fj3vv/8+O3fupKuri1WrVmEbJPVC4vTl+v87l6TpUXR1dPPyk+snezmD4kqR2b29YMJsPK7JqEWFDR5tLwgCQS5f+zA++N7Ix0E87e7hSgNV3Z5jlPZWZ9Ee4FTaHQ4H1cdMQz02o93dhOocqmR32N0Ri/ODEjBaezjYJvYGBKgE7NiJ8YqmzCAW8ul+i4d9DQAC1eGcE3o19yf/hR+nvMz5YTcRponD5rBS0HmAj6v+xh+P3kWsVlT/m0117ujHyu6GPr72cqZ4B6JVKOm2WSjrEptdXZNRC9wJMv5A7yRY6FXa+w9YEl+3vpGPAi57zOD+GIvzQmmojHbotceMJqfdZrNTX98OQFTU+JX2xvoOGuo6kMkFpmXEjPt4x4MdX2exd1s+CqWcB393DbJBLkwlJCQkxsIpo7Tn5eWxYcMGMjMzWbhwIQD/+te/WLx4MQUFBaSkDD3GWq1WEx4ePuhjHR0d/Oc//+Htt9/m/PPPB+Cdd94hJiaGTZs2ceGFUkTXmYJCKecnf7qBB658kczNRzmwo5C5ZyVP9rL6MW9xEkqlnJrKVqrKm4mdEjLuY05NCkMQxGbUtjYDAc5Ix+EI9NdR16gfNkHGPRF1sMjHYRpRXZM8XZGP7uQYZ9Nle08PXRaxII0+xtM+1T+IdlM3BR2NACxw+tlLOhtpMxvxkqtI94/i++ZsLA4bUV4hlBlEX3uqTzR5+mw0ch0BSm+aewoJUk8d0i7Sl2B1JOeGXce5YdfR2FNNdsf3HGrbRpu5AbNdXIsY/Tibva2F7GvJY35QAt83FXGgtYxbE5aQ5h/GgeZqclvrSfINJjkgiK/Ke5tRB5uKGqwbOGBpsPQYV7TmUJd5HintY/C0NzbqsVrtKJVyQoLHbxFxqexJKRF4aU++KaidHUZe+92nANz4o/OIdTZ6S0hIeMan/74HX9+JtZPp9XrCw56Y0GNOFqeMBLB79278/PzcBTvAokWL8PPzY9euXcPuu23bNkJDQ0lOTmbNmjU0Nja6Hztw4AAWi4WVK1e6vxYZGUl6evqwxzWZTOj1+n4fEqc+8cnhXLpaVFn/86cvJ6zhc6LQ6tTMnCfaOyYqRUarVbv9xmVlTR7t4x6wNMxUVFcKyXCe9kEbUV1Ku8rlaR887jFUp0OjUNLSbaS1pxsBUWnf11yJA0j0CSJYI/rv9zpV9jmBcShlCr5vElNjFgWmkqs/CoDCObk0xSedz6t+xCeVP2R9xQ/IbVuLyeZ5qlCoJpoVYTdwWeQaAKqNeYSpQwdEP7qGLB3rax+sGRX6xD72yWoP8XbaY/oo7Vr1MPYY+/CedrVyaB1nLEV7tSs5JnJi4h5dTagZJ6mf/fXnvqKtuYuYhFCuu/vcyV6OhMQph5dGdVw+ThdOmaK9vr6e0NDQAV8PDQ2lvn5oL+7FF1/Mu+++y5YtW/jLX/7Cvn37OO+88zCZTO7jqlQqAgL637oNCwsb9rjPPPMMfn5+7o+YmJPzVq3E6Fl93wp0PhrK8uvY8snByV7OAPpaZCaKiAh/QByE4wmeJMgo5UNHPg7laXc4HH0iH4/1tDuL9mOsMS4/e7SPH14KJXsb+1tjoDeffV7QFMw2C3taxUI9WKPC6rASqQmn0iAW8kFKJTaH+Puh1VzC7qYXeK/0SrbV/Y4642GPbUkJ3tNRCCo6LC2k+IhFZt/ox2itPzqFutfX7mpGbXcV7eJdlKJ2MUHGpbQ3GQ0YnQk7LqW9aRClvW96jEtpH9LT7kyPGSqjHaDTmdPuMwpPe22tqwnV3+N9hsPVhHoyFu3Ze0vZ8MFeAB58+hpU6lPmRraEhMQpwqQX7U899RSCIAz7sX//foBBb1M7HI5hb1/fcMMNXHrppaSnp3PZZZfx9ddfU1hYyJdffjnsukY67uOPP05HR4f7o6qqysNnLHGy4xug48YfidMs33p+Az3dJ1fnuSuvPT+nmtbmrhG29oxQZ7pFY5OHRbvTQtM8jNKucHvah458PNbTbrba3IWlxqm0tzrTYwKPmYYafayf3c/ZhOrOZ3cVynb2t5SLXwtK4FB7Id02E0EqP2q6xa+n+cbRYWlBJdNgtIh2mdmBP2BxyEMEqBKwOcwUd37Ll9UP8HH5zWS1vke3tW3Y10gpUzPFezoAPs76rW/0Y1Z7MbMDevPa0/so7XaHg3hff5QyGQaLhZouPX4aDX5q0U/uakYNdivtfdJjnK+bwTxQabcN5Wnvkx4zGCaz1V3Ye48iPaamduKSY9rbDFSWie/19Jknl0hiNln42xNrAbj4hoWkz58yySuSkJA4HZn0ov3+++8nLy9v2I/09HTCw8NpaBjYKNfU1ERYmOe+wYiICOLi4igqKgIgPDwcs9lMW1v/P8CNjY3DHletVuPr69vvQ+L04fLblhIaFUBLg571r++Y7OX0IyjEh5TpUTgckLljYtR2V9He0NAxwpYigZ4o7YqhPe1W2+CedpefHQZ62gO1/e0xroFDbj97QBCd5h7y2sXfEy4/e35HHV3WHrwVGlL9ItjpssYEpZHdIU5BVcvEAjfZJ4OGHvHxFL9LmR5wLVfHvcnlMf8gxXcVCsGLDksVe5tf5X+lV7O59gmqDXtxOAYvhpN95gDQYakZNvpxf0sZib7BqGRyuiwmqgztKGVyEp0XIu5mVGdSlqtoD3Eq7R09JsxW8bXTDWKPcd3RGOomgVtpH2GwkiCA1svzW83VNWJTbdQEZLTnOlX2+MRQfP21I2x9Yvngta1UlzYREOLDnT+7ZLKXIyEhcZoy6UV7cHAwqampw35oNBoWL15MR0cHe/fude+7Z88eOjo6WLJkicfna2lpoaqqiogIcXz73LlzUSqVbNy40b1NXV0dOTk5ozquxOmFSq3kBz+5CIAP/7n1pJuUOtEWmbBQsQBu9NQeE+B50d53cI8L2xD2mB6n7UMhl7ntNcfaY4bLaN/fXI3d4SDWO4BwrXghstdtjYkHh4PdLWKhHuHlhcVhIVQdQpVB/FqoSg04CFGn4a0UL9oFQSDUaxpnhT/G6sRPWBb6U0LUadixUta1jQ01P+GDshs41PImBkv/noBkn9kAVBkLSPVOBMBHKare+1rzmetMkDnQWoFMEEj1Fy2AOa1iZr5rMmrRMZNRXc2ovhq1+3Vqdr5Og6bHCP1f92MZSWnvclpjdFr1qLzptTXiOiciOcblZ5+oqNOJoqKogQ//sRWAHz1xBd6+XiPsISEhITE2Jr1o95S0tDQuuugi1qxZQ2ZmJpmZmaxZs4ZVq1b1S45JTU1l/Xoxrq+rq4tHH32U3bt3U15ezrZt27jssssIDg7mqquuAsDPz48f/vCH/OQnP2Hz5s0cOnSIW265hYyMDHeajMSZydmXziR5Rgw9RjPv/u3byV5OP1wWmUN7S+k2jt++E+ZW2j0r2l1K+3DpMa6JqIPZY4bytPeYXX52sfC02e20HZMeU6V3TUMdmNGe0yYWu3ODe2cs7HPnsyeQoy+jw2LAR6GlyVQDwDTfKbRZGlEKKnqsYmEY73POoM9JJdOS6n85V8T9k6vi3mCa/9WoZN50Wes50PIf3i+7lm9qHqOiayd2h5VgdSRBqghsDisRXuJ6+0Y/quWgU6jpsvZQ2MfX7mpGdQ2LOjb2scLp6xcEgRDnxYwr9nHw9BiX0j5CTvsQRXun0TVYyXM/u81mp84V9zgBnvbsQ04/+5yTx89ut9v5268+xmqxsfC8NJZdlDHZS5KQkDiNOWWKdoB3332XjIwMVq5cycqVK5kxYwZvv/12v20KCgrocP5Bk8vlZGdnc8UVV5CcnMztt99OcnIyu3fvxsfHx73P888/z5VXXsn111/P0qVL0Wq1fP7558jlQzdlSZz+yGQy7nrsUgA2fLSPiiLPcsxPBHEJIUREB2Ax2ziQWTLu44WF9Xrah0oY6Utfe8xQhaB7IuogCTw2m2sian/VttuptLusMe3dPe6YQn+tFza7nRp9byNqh6nHPTE0yT+IYr1Y3E71FZs4LXYrh1qdHvegKe6BSgsCU8nqEG0wOrl4oTDVJ5367iMATPFePuJrEKROYknoj1md8AnnhP+ScK+ZOLBTZdjFxtrHeb/0Wg40v85U75nOPcS7NSWGEmb4xwNwsK3A7Wvf31I2oGh3ZbUfmyBT2SdBJti7f+zjYPYYmcvTPtREVFdO+xDpMV1jmIba1NyJxWIT4x5DxmcfNHSZKC0UX5OTSWn/+v09HD1YgZdOxX1PXeVRPKiEhITEWDmlivbAwEDeeecdd8TiO++8M2AaqsPh4I477gDAy8uLb775hsbGRsxmMxUVFbz55psDkl40Gg0vvfQSLS0tGI1GPv/8cykNRgKAjAUJLL5gOnabndef+2rkHU4QgiC41faJsMgEB/sgCGCx2GjvGHpgkotAp6fYarXT2TX4tLnhJqIOZY85Nu7R1YTq76VBIZPRYOjCYrejkMkI9/Z2q+zhWm98VWqKO5xFu5+oUOe019BtMxOg0pLgHcKuZtEGE6vzxWQ3EaQKoMaYB0CYSocDG4GqRBq63iKv+Zd0mo6O+FooZGqm+l7EqpiXuTb+XTICbkQj98doa+FQ6xvo5GIxPVT04/w+vva+RbvD4XDbY4rbW/olyPSditqrtIvn0aoGpse4LC2OIS7IRlLaxxL3WOOMe4wI9x80j380HM2qwm53EBEVQHDoydE/1NLQwevPfQ3A7Y9cTIgzgUlCQkLieHFKFe0SEpPBnY9ejEwuY+/WPA7vLp7s5bhZck4qAHt2FmIbJFZxNCgUcoKCxELSk2ZUlVKBr3My5lAJMqoxFO09xwxWajH0z2ivdlpjonx8kctk/fzsNrud0k6nVcZXLNr7Rj2WGGppNLWhkalotzhVW9+pNJtrUQhKzPZqAKK9EqjSv0Vd18fsq7uKg/W30WzcNmSzaV/8VbEsDLmPmxLWkRFwEwBGa5k7+jHZR1SJ+0Y/TvMT+2sOtFaQ5BuMQpDRZu6mzqgn2scPuSDQY7PSaOxyF+01nXp3g2+weyqqs2h3edrNZvddkJGUdlffwUie9lElx7gy2qP8Pd5nKHIOO/3sJ1HU43svb8LY1UPKjBhW3TzyBF0JCQmJ8SIV7RISIxCdEMqlNy0C4N9//GLIUfAnmmkzYvD186Kzo5vcI5XjPp7L1+5pM+pICTIue4x1FDntbqVd6Rqs5GxCPSY5xjUJta+fvcrQjtluQyNXEKUV/eN7m8WhSguCEtzWmHmBKWQ7rTHeCrFYTdRNo94oZvJ7CaLdRi0PR0BOe88eshr/jz21l1LT+QE2++B3FvoiF5Sk+q0CoLE7m3ideFfEVyEWz32jH7tsHXg7fe3lhiaS/URLTE5bPUqZnEhv8blWdLY7B0opsDkc1HSK71Ow84KmtxFVVNodjl5fu1tpHymnfYj0mM6xKO0TGPfo9rPPPjmsMU117Xy7Vowivuvnq8Z9J0FCQkLCE6TfNBISHrD6/vPx0qkpOVrL1s8OTfZyAJArZCxclgxMjEUmdJRF+0gJMkpnTvtgkY+9nvbBIx+9VP0HK7kz2o8ZrNQ37tHlZ0/wCUIuk9Fjs5DVLs5PWBCUwPfNYqE+xdsfo60bf6Ufdd2FAERo/LBjxV8VR4dpNwApQU+xOHoTsb53Ihe8MVpKKWj5Nbuqz6W07SXMtpZhXx9fZQw+ykjsWInU+AODRz8ebCtkdqDL114+wNce7yMWvRX6dgRBINb53Cudr0XoMUq7l1LhVtZdCTJupX3IiahOT/sI9pixDFaKHmfco9lkpTBXbBo+WZT2j/65DavFxoyFCVImu4SExAlDKtolJDzAP8i7d+DSX7/B1GMZYY8Tgzv68bsCjyd1DkXYGLPah0qQ8cTTfmzR7op8dA1WciXHBOqOVdpdyTFOD3ufJlSXNSarrQqz3UqI2gcEK5XGBhSCHKNNzA7P8E2m0VSJDDk2ey0AMV5TMdsakQs6Ar2WolFEkhT4GEtjviMp4HE08igs9lbKO15mV9Vy8pufwGAevBFYEARitOIdGjnihdCQ0Y8B8cDgzahxvv4AlOvbxc+dfTwV7gFLrkZUo/u87gFLTl+7q2gfMT1mqJx24+iV9mqXPWacSntBbg0Wi43AYG8io8ev2o+X5voOvv5gDwA3P3DBJK9GQkLiTEIq2iUkPOSK25cREuFPU107n761c7KXA8DcRYmo1ArqatqoKGkaeYdhCAsTC+EGD6eiuppRW4fwtLvywwezxwzpaXdHPvZX2oOOmYYa6+eHwWKmuktc61T/YIo6XJNRxaLdlc++IDjB3YA6yz+RrHbRJuMn1rUk6NKo6z4AgFYmXiQEa89FJvQOEVLIvIn1u4NF0d8yPeR5fFQZ2DFT2/Uhe2ov4UjD/9HWnTmgKI7RiUV7c082QarwIaMfI3XeABxsLSfNldXujK+MdRbtlZ1tzucufl7hTJAJcRXtfaai9sY+mvu9zkPmtE+wp91ud7iV9vFmtPfms8edFOksH/9LVNnT500hY0HCZC9HQkLiDEIq2iUkPEStUXL7IxcC8P6rW2hv6ZrkFYHGS8Xs+WLhsGt7/riOFTrKrPYgt6d98LQZhdMeYx4sp901EVU2eOSjKz2mxXhMI2ofe0xph6iYB2m0BGi8KDlGad/XIvrZ5wclsLNZLNSn+gRjsBnwUXjT0CNORY7yCsTmMOOrjKKzR1RQQ7QXDvqcZIKCMN0lzIv4iDnh7xKsPR8QaOnexqGG29lXdzX1XZ9hd4jPI0I7G7mgosvaQIJOfJ8ExO+bvtGPzaZmp6/dhEzmQCYINPUYaOzuJM7HHxDtMdAn9tGltLvSYwy98Zu9sY/iOgS30j7o0xo5p32UnvZmZ9yjXC5z38EZKzmHTx4/e2uj3q2yr77//JPiIkJCQuLMQSraJSRGwbmXzyZxWiTdBhPvvbxpspcD9LfIjIfRe9pFdXg89phjG/i6za70GGfR3sfTbrJaaTCIBW+0rx9Fba7kmCDsDgclnb1Fu8FqIrddTINJ8A6ksLMKAQGLQ3xuGX4p1PWUISDD4RDz92O80uix1SITvPBXTcdmbxvyuQuCgL9mHjNC/86iqA1E+axGJmjoMh/laPNP2V19PhUd/8bhMBPhNQsAH2cEepXx6IDox/1tBcwJjAcgp6OaRB8x6jG3rd5tj6nobAcYEPsYrBMvnkxWG11OD7uX2x7jUtpdnvbhJ6Kqh8hp73Qq7Z7mtFfXiBdUERHji3u0We0czRL7Ek4GP/va/3yH2WQlbXYcs5YkTfZyJCQkzjCkol1CYhTIZDLu+rmYCvLV+5lUlzZO8opg0VnJCAIUHq2ltXns6r9rwJJe301398hTVt2e9rbBz6l0p8cMVrQ7G1EHRD72H67U1kdpr+nU4wC0SiWBXl4UOf3sSf5B1Bn1GK0WlDIZsd4BHGqtwOqwE+UVQIlBVGqn+caR0yHaZAKV4nnjtSnUGUVrjLdcVJODNAupb1pJVe0sWtp+jtVaNezroFXGkxL0JEujt5Hg/zAqeQgmWz0lbc+xu/o8wjVio2K3tXLY6McZAWJjal9fe05bvVtpbzf10GHq6S3a9R3YHQ40SgU+alEBbxpiwJJLEbaPMT2md7iSZ0p7bW07MP7kmJLCerqNZrx9NMQnho7rWOOlvaWLL9/LBODmBySVXUJC4sQjFe0SEqNk1uIkFpybhs1q5/U/fz3ZyyEgyJv4pDAA8nOqx3wcb50GnTMdxBO1PSjA6Wkfwh6jHG4i6oiRj05Pu9GltGvdyTHRvn4IgtAnOSaYIr3o54/3DkIpk/fzs7tSY6b5hqO36tHJtTSbROtMrDYEq6Mbb0UoXSYxwi9QGYjd3gqY6TS8RXX9Eppbf4LFWj7s66GUBxDv/yOWRG8hLegZvBTxWB2dyO3ifv2jH8V9+kY/ahViQd3X157bVo9WqSLES7xAqtC3EenjI2a3W600Ou88BHs7Yx+7XLGPTqXd3F9pH2rarUtpHyk9xlN7TG/co79H2w9Fr5891h1bOVms/fd3mHospMyIYY4ztUlCQkLiRCIV7RISY+CHP7sEmVzG7o25ZO8tnezlkDItEoCCozXjOo5LbfekaHcp7R2d3e5Gxr64Ix9H4WnvcUc+KjHbbOh7nOq3TtvbhOpOjunNaC/Ru4YqibaS/U4/+3T/CLLbnekugljQZvilUN1dhIAADlGtj9Wm022tQIYKmU18P3Xaq9GozwKsdBnfo6Z+GU2tD2C2FA37usgEFRE+VzM18OcAdJoO4KOMOCb6sXZA9GNNT4Pb1+7jLLqPTZCp6GxHKZcT5SO+T67YxxCnReZYpd14jKd9RKV9kKLd4XCMvmh3D1aaoCbUSfazt7d08fm7uwDJyy4hITF5SEW7hMQYiE0K46Lr5gPw72e/nPSBS1PTxKK9KK9uXMdxN6N6kCDj6+3l9iu36Qeq7cN52t1F+4Ccdpc9RkmrcxqqXBDw1aipdsU9+vnRY7W6Pd5T/YMo7hCV9iS/YPSWbvI6xNfBTjd2HCTqIjmqzwUgyOn3jvWaSl23qK77yMU1BmoWYHLmtPv5PEx4yIeEh3yOl+Y8wIbB+DG1DefQ2HIPZkvesK9PgGYhAkp6bLVEeYnTa4eLfjzQWsDsANG33WEVFfRao55Wk3HIZtTe2EeX0n5s0T5KpX0Qe4zZbHU/7qmn3VW0jyej3W53kOtuQp1cP/snb+7A1G1hanoU85enTupaJCQkzlykol1CYozc/OBKvHQqCrOq2P7lkUldi0tpL8yrHVde+2gSZGQygUC/oWMfPYl8PNbT7m5EVSloNfY2ocoEgSq9uKYYXz/K9K3YHQ58VWpCvXQUuZNjQtjfUoYDB1N0wWR3iKp4un8UbZY2NDIN7WaxEIzVhWOxG9DKgzGaxYFZgapQwIJSkYJKOVVci3oeYcHvEhH6NV7KC9Ds7kH43/u0frKUxoY7MJmzBn195DIt/poFAPjKxaJ5pOjHRF+xyM1uryLeW/z/0bZ64nxFxXpAVrsr9tGttIuvmdZtj/FQaXcOV1IqBjaidjoz2mUyAS+NctD9+2K3O6itG/801MqyJvQd3ag1SpJSI8Z8nPHS2W7ks7e/BySVXULieNPdbT4uH6cLg0cFSEhIjEhgiA/XrTmX/77wDW/8ZQNLVqajUo9c1BwP4pPCUCrldHZ0U1fTRmT02BTOsFCxkGxs9HDAUoCOptauQRNkFG5P+zDpMUM0ompVSlqPHazkVJVjfH37JMeI8Y6uwUpTfYP5pGYfALMCY9nTKhZbSpmYfpLhl0qlcZt4bsSEk1htBgbTBwgoUdgqsQJar0sHrFn9RSlhD22F6t5UGWvE27T+5lMcV63C3+fHqNVz+u0T5HU2bT3fY7WV94l+XESLuf6Y6MfZ7G0tRBDEAvlQawWz/adR3tUqNqMek9U+IEHmGKVdq+rfiDqi0m4ZWml3W2O0ao8K1pbWLkwmKzKZ4LZbjQVX1GNaRrT7e2kyWP/GDroNZhLSIll43rRJW4eExJnAdTe+jELh2R09T7Faeyb0eJOJpLRLSIyDq+48i6AwXxpr2vj8nV2Ttg6lUs6UqWIzauHR2jEfZ6xZ7S2DKe3DeNptNrF4lMuPyWl3Rz4qegcruaehOpV2P3+KO1x+9kCaerrotJiQCQLxPoHsczahBmoUWBw2orxCKOoS4zDD1BocOIjWJFFvFK0xrqbQQM18ekxika/Truq/4HXr4Nprobp/o6+83k7I/7UjrP+CuqZLaW79cf/Xx+ssADp6DhChSQf6Rj/mEaYO6xf9WGGswVuhoctqItQ5UCqntW4Qe4x4ceWyx7iV9q4xpscMk9M+ej+7eDEUHu43rmLb5WefTGtMl76bT/8rqewSEhInB5LSLiExDjReKm59aCUv/OJjPvvv91x5x1njyqUeD6npURQereVoVhXLV6aP6Riu6ZXl5U3Y7Y4REzsinMp8ScXAaaz+3mLR2dHVQ6veSKCv1v2Yt5dYVNa09L84cBWbVS0dBAeKhWh1ewcOhwPXUpoMBnfx2WE2YetTiOrNPe7HmnvEY5vtFkw2sXjttovqvdnRg9UhFqM2u8H5bycgKv12e5912Wzw0EODTiYSHOAQIPApPcaVanrM+/o97op0dGDD7DyPxbkGq92M1TmEqdtmcv5rxuYQ70LUd4trEASBNlO38zgibT09/T6v7xRVe5clqaqlHRDvWADUOl9n1+veF6vVRk2TeGel73vkoqpWLMKDA70HPDYYBYXO5tnYYI+2Hwy73cGRfWIzccacySvat31+GGNXD7FJYSw+X1LZJSSONx+9fz++vuMbyHYser2e8PDfTOgxJwtJaZeQGCfnXj4bbz8vGmvbOfT98MkixxOXIpl1sGLMx0hKDEWtVqDv7KGisnnE7WdPjwHgQPbAcwb4akmJE6MLd2eX93tscaq41p25Zf2+vjxNnBq6MbeIsxLj0SqVVLZ1cKimjouninGJ6/OPckm8+P8tlSV4yZXMDorC7nDwWWUutyUsEx+rKyNI5UeTqZ1IjXjcA22leMm9aTRVE6QRG4lLjZXIBC/azdkoVGcD0Nr+G3dvgGP7dwMU9r4IDlDU2gk9eicRIZ/2e6ys/e8A+KqX0mgqQC6oKOwSm2TDvNJoMbfiq/BlV7N4d8BbHki3zUyidxiba8TUm1uT5vFZidj0elG8GDX4eaE4/fbCxKk4HA4+zxU/X5mShMVm45vsQgAuSBd9+bvzxfdnYfLAFJaskjoM3Wb8fbyYGhMy4PEjeWIiUXpK5JCvQV8OHiwHYPY4FPKyogbaWg1ovJRMmxEz5uOMl03rxQz/i66fj0wm/bmUkDjeeHmpjsvH6YL0W0hCYpyo1EpWXDkXgK/f3zNp60ifJRZJ5cUN6Du6x3QMhUJOmjOJJseDzPc56TEIApRXt9LcOnDI0tIZ4mCh74/0j8VcmBKLQi6jsqmdisZej/gF6eKUyQPlNRh7zKxMFT//JOsoV6eKSueG4kLifPxJCwzBbLfxeWk+V8VnALCuLIvLomeR7BNGp9VEhFos+DJbqglUBdJu6SRELR7naGcdapkfbZZ6vFSLAagx1yMIWsyWQ7R1PE1T60O05N3h0Wunbc9ALhcjJx0OOy3G72jp3gbIqHfafkI082kw1aORacnVi5NYo7yS6LAYCdcEsbNBHOQUqPDHYnewODSejMAIvqkQLwavSEij0dDF7irR7315cir5jc2UNLeiksu5ICWJzOIqWg3dBOq8WJQYS2unkbwqcQjY4rSBhfTuLPHCaVF63KB3Vo7kid8HM9OiR3wNzGYrWdnic5g7O96Tl21Q9mcWi+ecO2XIgU/Hm6qSRgqOVCKTy1h+2exJWYOEhIREX6SiXUJiArj4BjElJHPLUVo9yDg/HgQGexMdF4TDgTsqbyzMSBcL3WwPinZfHy+SE0Qv/YHsgedcMlMs2jOzK/pNRvX2UjMnUcwn33m0V22P9PdlRkw4Dgdsyi3hqhligf1VXiHTgkOI9w+g22plQ0kR1ySJFqC1RblcGjMNlUxOfkcjhe1N/DjtIgB2NFQQp43AaDPjpxBV5gPtFfgrQ+m0dqJTzQSg2FiBUhaEwVoLqqUA6LtewWD8EGuIZ1NmzaEqajs/JrfpJ+ysWsqRxrvF10i9hHpTCXJBRalR/N6I1GbQYu7AV+HL/laxByFcHUW3zUKidxg7asXX8sHpZ7G5sgSj1UK0tx9zQiP5sqgQBzAnPIIYPz++cKrsy5Om4KNR89URpwqfkYxCLiOzQDxWclQIwb66AevelVUuvlcZUwY81tpuoKq2DUGAjNSoEV+Do3k1mExWAgJ0xMeP3R5zIFO8yzB3ceKYjzFeXCr7vLNTCAj2mbR1SEhISLiQinYJiQkgbmo40+bGY7fZ2fzJwUlbh8si42riGwvp6aKimp1T5dH2czPEYnh/1sBzTk8Ix89bQ1e3iayS/hnyZ00Xi8SdueX9vr7Saen4NqeIhXExRPj6oO8xsbW4zK22r8s7yhWJacgEgUNNtbT2dHNepLjf+vJsFocksTRkKlaHA4VD9N3vbi4j2isGk92MRh4PQFZHMT7KaLptncgUoppa2Z2HSjUfpSIVX+8f4XfJehzRUTBEE6JDAFOkmp3xj5Pf8ksaDF9gsbciF7SEaFdS50wbG4vKviA0lk9LjgJwRWIagiDwRsXV9QAAg1VJREFUWYFolbksJRW7w8GXuWKT7WXpqfRYrGzKFVXqS2eJeeK78sTXd8kgKntTWxdFVU0IAixMH/i4S2VPiA3B13vkRIeDzu+7ObPjxty02W00uy865y2anKLd1ufn+Pyr5k7KGiQkJCSORSraJSQmiBVXiHF/O76evMz2Gc6mvexx+NqnpUUikwk0NOg9mow6f4Z4zgPZlQMy4uUyGYsz4oGBFpll08SifX9xtXsIEPT6sPeXVdNm6OaK9DRAtMhcmSr+P7O6EovNztlR4jHWFuW6LTKfVuZgtdv5cdqFyBDIbK5mmm8CdhxYbGKD04H2IsI1CVgcFuyCuL5CQx5eiilY7HoMiqVEhW8l0P/XeOnOQXjxbzgQC/S+uD4vfCIQ5HJ81bOI97uXOeHvclbsHgJ0t9FgKhyzyt7cbWBrtfi6XZGQRnl7G0ca6pEJApdMTeFgdS21+k681SrOSZzCd/mlGM0WogJ8mRUbgcPhINPpZ3f1EfQlM6ccgLT4MAIGaUI94pywOzNtZJUdev3sc8ZhjTlyoByr1U54pD+RMWMfzjQejuwupqWhA28/LynmUUJC4qRBKtolJCaIJSvTkckEinJqqKtsmZQ1pDuV9uKCOozOqL7RotWqSUoULS+eWGQyUqNQKuQ0tnRSVdc24PGlM8Um0F1Z/ZtO48MCiA72w2K1sbewV9WPDvRjelQYdoeDzbnFXJEhFurbS8rRyBQsiorBAXySn8e1U6cDsL44l7PCEwhUa2nuMbCjvpQknzCujBFV0gajAxkyDrVXkeSdggMwOgv4XH0Bgeo0bA4L3c4Cvlr/Nt2WKgzmYqr0b3Fk6bccfTUOU1j/wC1zhJraN64n/Nb/clbMHuZFfEBCwEP4a+YhoORgy+vA2FX2Fw7twmK3MyskgpTAEHcD6tKYWEK0Or7I6W1A1SgVfHlY/PySmSkIgkBRbTPNeiMalYLZCQMbSV0NwktmDLTGAGS5/OzTRvazdxl6yC8Q76bMGUfiywGnn33u4sRJi1h0WWOWr5qFSi2FrElISJwcSEW7hMQE4R/kTcZC8Xb+zg3Zk7KG0HA/wiP9xRHwRzyztwxGRobnFhmNWulOFjmQNdDXvig9DpkgUFLdQn2fiEdBENxq+45jUmRWZvRaZBKDA5kRGY7N4eCLowVclSYqn+vzczk/JhFflZoag54DDTVcFisW8f8p2IPD4eDe5PPwkqvI72hihp+YvFJjsCEX5BztrCBWm4EDaLOKcYalhhy8VTNxYGFPzSXsqb2UotY/0NK9lYYLVezbNYey9dfS9p8HMW36EHWlgajbPyBEdz5KeW9MmdHaQm77Whp7cgZV2f2UfsOq7A+ln0VJewvv5R8G4Ofzz8HhcPBZgViUX56ShsVm46s8MSVm1fRU9N09bC8oB+CSmS5rjKiyz0uKQaXsX3xabXb25IiPL3LeDemLwWii2Bnl6UkT6pEjldjtDqKjA91DusaCy88+b1HSmI8xHgydPez6NgeQrDESEhInF1LRLiExgZx1kWjR2LFh8NH2J4KJ8LVnOH3tniTIAMxzW2QGntPP24uMJHEM/fdH+hfnvb72sn7WGpevfW9pFW2Gbq7KcBbqWUe5OCkZjUJBaVsbhS0tXDpFjH9cV5zL7cnzUcsV7G4s55OKHII1PvwgUYyAzG7rQCvXUGJoZKq3eLxKoxm5oKDUUE6oZh4g0GT1QkCOHTMyQU2AZimJAT9lfsR6lsXvZsqVHxFw54uoV1wHzlz0LksDRfoN7Kh/lo/KVvNe6ZVkNr0IDK6yR2pElT1iEJV9SVg880NieXb/dmwOBytiElkcEUtecxMlbWJKzMqEJHaVVdLe3UOQTsui+Bg25RZjsdmYGhZEcrjYBLrb6WdfnDYw6jG3tI5OowlfnZrpCeEDHs8uqMVudxAZ5udRRntfP/tYqa9po6ayFblcxsx5g6v/x5udG7Iw9ViISQgleRLjJiUkJCSORSraJSQmkKUXZogWmexq6qtaJ2UNGRPga093JsiUlTfR2TnyCOhZ053KfH7tAF879Fpkji3a5yZFo1EqaGjvoqi2Nxc+NsiftMhQbHYHm48Wc8m0ZJQyGXkNTVS3dXBholjUr83LdafIfFVeQIhax4PTxSmkvz+0kZYeA7cmLCVE7UN9dycp3qJ6m93eilbuRXVPIzHaWQCUd/cgF1TU9ZQS5f84s8Le5KyYfcwOf504v7vwUU9DEGQ4HA46zJXkd3zOtrqneb/0Ot4vu5bv6n9Pgf4LOixVgECgOomMgJsoMYpDlfqq7PtaRK94mFNlTzrGy763vopvKoqQCwKPL1gO4G5APS8+AR+12p3NfklaMgqZzG2NcTWgdpssHCwV1fwlqfED3pPdztSYhdPjkQ+SQX7kqOdRjzAxfvb9TpU9bUY0Om/PJrBONJvWidaY86+eK01AlZCQOKmQinYJiQmkv0VmctR2V9FeeLSGnh7LmI4RGKAjOipAjI88OrLanpoQhlwuo6XdQH3TwOZVl2d6X14lJmdmOYBGpWBBiniBMMAi40qRyS4iQOvF8qli4f9pTp47ReaLogIygsKI9fHHYLGwoaKIH6YsJNUvlDZzN384vAkvuYr7U84HYFdjHcEqP5pMncR4iQp9jr4BL7k3DaYG98ClI21f46+Zj1ymxuGw02oq4Wj7OjbXPsl7pVfyUfnN7Gz4E8Wd39BlrUdATohmGhkBN7Ey8o/cmvglV8e9gVY5i0ZTzQCVXW/tr7IHKALcKvu84Bh+v3cbADemzGCqfxB2h8PtZ788JY1ui4VNBWKBu2p6Ck36LvaUise6eIb4vA4UV2Ox2ogI8CE+LGDAe7LL6WdfPCN+0Pc0K8/VhDpy0d7U3ElFZQuCALNnjcfP7ox6nKTUmLrKFnL2lyGTCZznbCyXkJCQOFmQinYJiQnGZZHZ/vXkFO0RUQEEh/pgtdrJz/bM3jIYGRliMZ3lwTHUaiXJCeL00+yC2gGPT40JJjTAG5PZysH8/j55l6/92OmorqJ9T0kV7cYet0Xms+w8FkRFE6bzpr2nh20V5VyTJHrZ1xXlopTJ+cP8SxCATypy2F5XwqroWST7htNlNRGmFovQzJZqglRBtFu6CFGL++d21qGR+9NhqeK7+j+wseZx3im5jHUVd7Cr8XnKurbQbWtFLqgI95rJrMDbuSjqr9yW9BVXxP6DhSH3Euu9FLXcB7vDzpaGDwBPVHbxrsiD08/ii7J8DjfVoVUoeXi2mBm/v7aGuq4uvFUqzo2fwpaiUowWC9F+vsyKimBDdiEOB8yKjSA6UPST73KmxixKHRi/2Ko3kl8uXkQsSo8f8H6ZzFaOFolNpZ40oR46VA5AcnIEPj4jR0MOhtVq4/A+MSlnsvzsmz8RVfZZS6YSHD52X76EhITE8UAq2iUkJpjJtsgIguBOkRlXXvv00fna05PFZtTcQYp2QRDcavvOYywyy5y+9iNldXQYeq048SEBJIcHY7Xb2Xq0hLOT4vH30tBkMLKnopornPGP6/NzudpZtO+sLafe0MnMoChunyqq5k8c+BqTzcpPnAOXdjZUEq+NoNtmxk8hXpgcaC8nQBlGl7UTrXIGACWdG6kw7MRk16MQvIjSzmdu0F1cGv0StyZ+xaqYl5kXfBfRuvkoZb1xiT02IyWdWXxV+waNpqoRVXZ/ea/KPiMwkmf3bwfgnhkLCNWKXvLPnCr7hYlTUSsUfOHMZl81PRVBEPjysPi5qwEVYLezCXWwfPZMp8qeEhdKsP/AgUv5xfVYrDYC/bVER/gPePxYJsLPnpdVjdFgxs9fS1JqxJiPM1bsdrs7NUZqQJWQkDgZkYp2CYkJxj/Im4wFopVjsiwyrrz2rHH42mc4lfaCwjrMfSwtQ+FKkMkpHFi0Ayx1TkfdldW/6TQy0JfECNECsju//3r7DlpSyeVcNl0sSj/JPuq2yGwtL8NbqWJ+WDQOYH2xOIzokYzlRGp9qTZ08ELOdhYGJ7IsJBmrw4HgEJNedvUZuKSSi82aRzqKmeJ9PrG6pSwIvpfLY/7BbUlfcXH0X5kddDsR2lkoZKLf2u6wUd9dwb6Wjayr+jsvFjzE07m38nrZU+xu+VJ8ftoZHqvsb+cdoqqzg1CtjjXp4kWH2WbjqyKxKL88JZWO7h62F4sXPpelp1DR3E52dT1ymcCFztSdulY9ZQ2tyASBhSkDm1B3ZYv7Lx4kNQZ6hyrNSIse0dftcDg44PSzzx2Xn12Mepy9MAGZ7MR7yXP2ldFQ3YaXTs3iC6af8PNLSEhIjIQUQCshcRxYdtEMjmSWsGNDNteuWX7Cz58xJx6A/JxqzGYrKtXof9QjI/0JCNDR1mYgv6DOXcQPhatoLy5rpLvHjJdG1e/x+dNiUSrk1DR1UFHXRnxk7+Ccs6ZPoaSuhR25pVw0N8X99ZUZU3l50252FVeg7+7hyow03t5/mI0FxfzmohWkh4aR09jA54X5XDN1OvsaqllbnMM9MxagU6r47dyLuWvHB7xRuJfLYqfz47QL2dVUxN7mGs6JSOCovtQ9cOlgezHz/BOp6ymhzRbItTEPDHiOXZZ2qoyFVHUXUWUspNpYhNk+sFE3QBlKjDaZON00PqzeJL6emiTyOooGqOxWRwdLwuJJ9g3lhxs+AeAnc85CqxRfv52VFbT39BCs1bI4OpZ1R3Kx2O2khAYzNSSYVzdnArAoMZZgH1E1d138pMeF46vtb1ex2XujHkcq2j3xs1dWttDS0oVKpXBP0x0LvVGPk+Nnd6ns51w6E42XaoStJSRGh91up61RT3NtG60NHVhMVsxmCxaTFYvZ2udfC3a7Ay+dGo1OjdZbg5e3Bi9v8f86Xy9CIgPR6CanUVticpGKdgmJ48DSC9N59befUJhVRUN1K2HRJ3ayY0xcEP6BOtpbDRQerSV91kC1dSQEQSAjPZrtOwrIzq4asWgPC/YlJNCbptYu8ksamD29//ZajYo5KdHsya3g+6yyfkX7smlTeHPTfnblVWCz291pJomhQSSGBlLS2MrWvFIun51GYnAgJc2tbMgv4urUaeQ0NrAu7yhvX30dT+7eRFF7C9nN9cwIieDcyCRWxU7ji8qj/HLfl6y74E6ujp3Hx5X7qDc4kAviwKVzQlMp6sqny+YDwOG2bSwIXIkgCGKRbhAL9TZzw4DnrZJpiPZKIkab7P7wVvoDsLXxO1rMbQNU9ixb6QCV/aXDu+kw95ASEMx1U9Pdx/+sUEyNWTU1BYVM1scak4LD4eCrIy5rTO/FjiufffEg1pi8sgY6unrw9lKTkTRw4JLNZifHaXHyZBKqyxqTkR49potDgPY2A8X5zsFMk1C09xjN7rtiKyRrjMQYaalrpySnisaqFppq22iqaaWpupWm2jaaa9uwWmwTdi6fAB2h0YGERAUSGh1IWEwQcamRxKVFERzhLyUfnaZIRbuExHEgINiH9PlTyNpTKqrtd51zQs8vCAIZs+PYsfkoWQfLx1S0A71Fu6e+9pRItu4uJKegdkDRDmKKzJ7cCr4/UsrNF/UWRzMTIvD2UtPW1U1uRQMzpvR6mi/MSOaVzZl8m1PEFXOmcVXGNP68dSfrs47y0rWr+MPO78hubKChs4uVsVP5vCyf13MP8MLyVQA8MfsCdtSXktvewOuFe/hR8nl8VXOEAn0TF0SmcLgjj0qDBbkgJ6+zgqWBM6gwZvGPkscHrF9AIEQd3a9AD9VEIxPkA7a12q18XvsFMLLKHqbx5a2jBwF4fP5y90WL3mRiU6moQF+ekkZDZxd7KsT9L52WQn5dE6VNragUcs6fLjZv2ux29hSI8ZGD+dldk2kXTI9FIR/okCypaMJgNKPTqkiMCxnw+LEcdDahzh6Hn/3gnlIcDpgyNYygYJ8xH2esfP9tNt0GMxGxQUyfG3/Czy9x6mHQGyk6XEnBoTIKDpZTeLCM5rr2YfeRyQQCw/wIDPdHrVGiVCtQqlz/Ktyfy+QC3QYT3V09vf929WDsMtHVZsDY1UNnm4HONgMl2QMH4Hn7aYlLi2TKtGhS504hZc4UohJDkQ0S7SpxaiEV7RISx4mzLp5J1p5Sdn6ddcKLdoCM2bHs2HyUnEMDp5R6fAynup6bW4PNZkc+SJHXl75F+2AsnTmF5/+3jcOFNXR1m/D2Em/xKuVyFqfGsvFQEdtzS/sV7SvTp/LK5ky+L6ygq8fE5emp/GXrTvZX1WAwmVkeN4VNZSWsy8/l9ulz+KIsn/UlR1kWFc+1U9MJ1njzi5nn89i+L3gxZzsXRafyg8Sz+HvhZrLb2tEqNZQZmjgvbBr5ndlUGE2oZV6Y7N1o5b59CvSpRGuT0MgHNm66MFqNVBqrKDdWkKfPp8Xc6pHK/tz+HZjtNpZGxrE8uneo0F9378RosZAUEMjMsHDe3HsIBzAnOoJofz/+vFtsWl2emoC3Rnwtcysa6HS+ttNjBw5NcjWhDm2NqXG/lyO93zabncOHxe+v8fjZTxZrzIor50gKpcQA7HY7xUcqyT9YRuHBcgoOllFVVD9gO5lMICY5goj4EEKiAgiJCnR+iP8PCvdDoRx/2WXQG2msbqWppo2m6lYaa1qpLWukIq+W6pIGujqM5GYWk5tZzBevbwPEQj5tfgIzlqYwY2kKSdLgsFMSqWifYFrr2/H19R15Q4nTHpdFpmCSLDIuX3vukUqsVhsKxUA1eCQSE0Lx8lJhMJooL28iMTFs2O2nO33tuYXikKVjC6DY8ABiwvypamhnX24l586b6n7snPQENh4q4rvsUu5ftdT99aSwIKaEBFDW1Ma2vFJWzU5j8ZRYdpVV8llOPlelTWNTWQmf5ufx6OJl/HjOMv56cCe/+P5bpgWGMi0olGumzGB9RTaZjRU8sf9rXl12DR9V7qO+W88FAUkc7sghq60Ff7WW6p5Gbo69hXkBswlQhQ1ZxLWbO6gwVlJprKTCUEG5sZImU9OA7aK9ksnrKBhSZVeh5LPSPATgF/OXu893pKGet7MOA/Drc85DEAT3QKVV01Ox2x18Pag1phyARSkxA5T09s5ucsvEYmOofPYjR8U1zpo28h/1goI6DEYTPj4akpKG/94YCofDwcFJzGdvqmvnyG7x/FJqjIQLs8lC1s4Cvv/yEJkbjtDWOHD+RFhsECmzp5AyJ56UOVNIzIjBy3tskaejQeerZco0LVMGiWM1myxUFzdQfrSG4qxK8g+WUnykkq4OI/s25bBvUw4gFvEpC8d2B1Zi8pCK9gnmrkW/Jm3OVJaumsPSS2cTM3Wg0iVxZjDZFpn4xFC8fTV06XsoLqgndfrI/uRjkctlTJ8Wxf4DZWTnVI9YtCdPCUWllNOu76a6rp2YyIFDfZbOmML7Gw/xfVZZv6L9rOkJyGUCRbXNVDe3Ex3sD4hWn5Xpyfxj6x6+zSli1ew0rsqYxq6ySj7JPsoXi2/FT62h3tDFrupKHpi1mIONtWyrLuWezZ/w+RW34afW8PS8S7hkwz/Z2VDGN9WFPJByPk8cWcfuxlpiff1pMrWT4Z9CQdchvqzbyNkh5yIIAg6Hg2ZzMxWGSsqNFVQaKqkwVtJu6Rj0NQhSBRKniyNOG0u8Np7f5X4IDK6yPzBtGb/fuxWAq5Omkx4svr5Wu51fbdmIA7giJY1lsXGUt7aRU9eAXBC4OC2ZQxU11Hd04a1WcXZKrzrvakJdPMgU1D25FTgckBQdTGjAQBuKw+FwK+0zRuFnnz0rbkRVfihKixpobelCrVEyfYw2rvGw+ZODOBwOZixMOOEX1hInF4bObvZvymHXV4fZtykbY59p0FofDdMXJpE8K57kOfGkzI7HP+TkE+hUaiUJ06NJmB7NedctBMBqsVKWW0NOZhFZ3xeQvauIrg4jBQfKRjjamcn27dt57rnnOHDgAHV1daxfv54rr7xyyO3vuOMO3nrrrQFfnzZtGrm5ufD/7d13eJPVF8Dxb5LuvRfdpbR0Mlr23kNki4iAW9yKE7eighNBfogogiiKIlv2nmXTCS2lLd1775Hk90faQqHQUkoT4H6eJ0/S5M2b25CG85733HOBlStX8vjjj1+3TXl5OXp6zT/QE0F7K5NIJMSGJhIbmsjKzzbg5uvIwIndGDixG9btxH8I95u+IwPUViIjlUrw6+TC8UMxRJy93KKgHVR17XVB+7ixN89E6mhr4eVuS0RMGpEX0xoP2gPdWbP7XH3rx7rMsqmhHl08HDkVm8z+8HimD7qyIuUwf09+2n+CwxcvU1pZxVCv9hjqaJOUX0hUehYPdPBidUQYGy6cp6+zKwsHjGb0xt9ILC7gjUPbWDZkPG7GFrzs25dvIg7w+bndbB/xDF4mdsQUZWCj40J2ZQHHc5Npb2xJblUui2L/h0KpILEsiTJ52XW/hwQJdnp2uBg442LorLo2cMZI26h+mzVJeymqKb1hlr2wvIoTGSnoyrR4o2vf+uetCjtHVHYWJrq6vNtX9bmpm4Day80FS0MD/hcWAsBQP090a0+5F5VVEJlYm0m/ST37jbLsyen55BeWoaMto2P7phMOdfXsXVqhNCawq2uLJ7K2lFKpZM+G0wAMGR/Upq8taIb8rCKO7wjj2LZzhB6Kpvqq9rbmNib0GtWZnqM6EdjHC+02/ny2Fi1tLTw7ueDZyYXxs4YglyuIDb1MckIq6yYvVvfwGqgor0JHu6rV93krSktLCQwM5PHHH2fixIlNbr9w4ULmz59f/3NNTQ2BgYFMnjy5wXYmJibExMQ0uO9WAnYQQXur++XkXM4fTeDIf2cJPXSBhKgUEqJS+PXT9fj39GToI73pN7YregaiXdP9oNcwf5Z8sklVIpOaj22764PYO8m/s3Nt0J7E5Om9m35CY/vwV52CDY9IbrTk5Vq+Xg5ExKQRFZPGyAHX97vu7NUOfV1tcgpKuZiUjZeLTf1jAwM8OBWbzIGISw2Cdi87K5wtzUjKLeBgdAKjAr0Y7u3J+vDzbAg/z8QuvqyOCGNnXCwlVVWY6erz46CxTPzvT3YlXeKniJPMCujOU949+C/pPNGFWcwP28vrHUfyzIkVHMlMorOVPZfL0jHWciO3KpeoovP1ry+TyHDUb1efQXcxcMbJwBE92Y2/cMtrKlmbpMqi2+g4EC5PaJBlf8GnD+8e2g3Ak75dcTBSZe3Si4tZcPwoAG/37oe1gSFKpfKq0hgvqmrk7Ai/CMDoTldKY05eTEauUOJqY46DRcMsoEKhbLKePfy8Ksvesb09Ok3U3paXVxFVu/3tLKp0JkR9pTHRoUmkJuSgq69N7+F+TT9BuCfIa+Qc2xbKluX7iTgW22DdiHbuNvQa3Zleozvj1cX1npy8KZNJ8e7qjoOnlbqHcp2pI79F6ybfqy1RI1edMSkqaljipKuri67u9bHYyJEjGTlyZLP3b2pqiqnplRWUN27cSH5+/nWZdYlEgp3d7VVfiKC9lZlbmzByRl9GzuhLcUEpRzafZd+/J4g4dpGIkFgiQmL56b2/GfxQD0bN7IdrM05BC3cvC2tViUzEyXiO7Ahn4pNtm20PqK1rjwxNbNZE0sZ4ezmgpSUlN7eEjIxC7JtYIdPfy4E1QMQNJqPqaGsR7OPMoXNxHAmLbxC0Dwjw4Kt1BzgXl0Z+STnmRvpAXYmMJ78cPMWuyIuMCvRinL8P68PPs/1CLO8NHYCbmTkJBfnsuHSRST5+BFjb80nPwcw5uosvTx8i0NqenvbOfBE8iol7VrIxMZKxLn70s/HiUFYMKE2AdI7nJPCo61BAXh+kt9N3QEt6469LpVJJdmUBiaUZXC7LILE0g5ji5CtZ9qyGWfbetm5cys0jrjAPCz19ngvsUb+vTw7to7S6mq72Dkzx9QfgfEYWCbn56GrJGOrlQcilRArLK7A0MqCb+5Xa8/rSmEay7DFJWeQXl2Ogp02gZ+PfO1cWVWr6eykyMoXqajk2Nia0a+HBaEV5FVFhtRNZ1RC071mvyrL3Ge6PQRvUIgvqVZRXwo4/jrBl+X6yU/Pr7/fs5ELv0aqMunMHezEZ+R7l5NRwns5HH33Exx9/3Oqvs3z5coYMGYKLS8Pv4ZKSElxcXJDL5XTq1Im5c+fSuXPnW9q3CNrvIGMzw/oAPjs1j71rT7Dj98NkJOaw+Zf9bP5lPx2D3Rn3zGD6jOmCrAUTBQXN13dkABEn4zm8PaLNg3aPDnYYGOpQWlLJ5UtZeHjd+lG+np42HTztOH8hjYjIlCaD9rrJqAnJOZSWVWLYyFml3oFuHDoXx9GwBJ588ErA6mBhgpejNTEp2RyKjGdsjyuZ+uH+qqD9cMxlyqqq6ebiiIOJMWlFxey/FM+Ejj58G3KUDdHnmeSjyppO9QrkTFYa/8ZG8uK+zWwbN5NAy3bM9AxmZewpPjiznR/7jOdodiynclIZYO9BVFEc0UVFfB7wzHXjViqV5FQW1gfmiaUZJJZlkFiaSZn8+kWWAOx0HQmXxzXIsj/VoTuv7d8OwMudemGio3qP9sbHsSvuElpSKXMHDkFaGzxsqS2NGeTpjpGubn1v9pEBHerbQyqVyvr+7L06ul43jrrSmLpFrhpTv6hSIxPcrnU2VPVaXbu4tjjICTtzmepqObb2pji6WLZoHy1VVVnNoW2iN/v94PKFVDYt28e+f49TWV4NgKmVMaNn9mPE9D7YOLbtZ0+4sb+2v97qzTyKioqwtZtPcnJyg303lmW/Xenp6Wzfvp0///yzwf3e3t6sXLkSf39/ioqKWLhwIb179yYsLAxPT88b7O16ImhvI9btLHj41ZE89PJwzh28wPZVhwnZHsqFU/FcOBWPnYsVE54fyrCpvUTpzD2m93B/fvx0EzFhSW1eIiPTkuIT4MzpkEuEn73coqAdwM/PsTZoT2bY0JuXEViZG2FvY0J6VhHnYzMIDrw+69srQDVxMio+nYLicsyM9esfG+jvQUxKNvvD4xoE7R0dbHA0NyElv4jDMQkM9+/AWP+O/Hj0JBvCL/Dx6EF8G3KUkJRkUouKaGdigkQi4bNeQ4nKzeRCXjbP79/MmlEPM9t/ALtSY0gpLWTj5QtMcOrK2qRTpJUqkEmknMy7wMGscxhpGTTInieWZlB6g+BcJpHSTt8aF0M7XA3scDG0w1rHgieOrwQaZtlPpqeRU1GGm4k507w7AVBWXc1HB/cC8ETnrnhbqXqkK5RKtp5XBemjfbwpq6pm73lVScnoQO/610/Myic9rwhtLRlB7a8Puq+Uxrhd9xhAdm4xaZmFSKUS/L2uX3TpWmfOqvbXGvXsXXt4tHl28/je85QUlWNtb0agmlpNCneOXK7g5K5wNi3bR+jh6Pr7PfydGPfsYPqPC0ZHT1uNIxQao6ev0+orEldVq/ZnYmJyx7v7rVy5EjMzs+smrvbo0YMePa4kqHr37k2XLl344YcfWLRoUbP3f+8Va2k4qVRK14G+vL9iFqtC5/PoW2MwtTQiIzGHJW//xYxO7/D7l5spzC1W91CFVlJXIgPUr7rYlvw7qzpyRNxOv3Y/1WnFyGYusuTb4Urrx8bYWhjT3skKpRJCIhp2MBgQoAqgjkcnUl5VXX+/RCJhqL8qI7ErIhaAsf4dATgSfxkdiYyejqpx/h0VUf88fS1tlg4eh7G2DqczU5l38iCG2jp82lVVs7ji4kn62/hiqKXLxaJs/E1VNeKfnV/FO+FL+TFuI9vTj3O+6DKl8gqkSHEysKGvVQCPugzjfZ8Z/Bz8Flv6fsnybu/woe9jzHAbQX+bTuxKv0CFvLpBln2aR1d+jjgFwNvB/dGRqbLeC08cI624mHbGJrzcrWf9+E8npZJZXIKxri7927ty4EI85VXVOFmY4u905SCsrjSms7sD+roNg5Gi0goiLqlWHG2qP3t7V5tGz45crbCwjEuXVKvD3s6iSlfq2du3eB8ttWf9ld7s92Ld8v2qtKiM9T/u5qnu7/PJ9CWEHo5GKpPS58EufPPfmyze9z5DH+4lAnah1SmVSn799VemT5+Ojs7NDzykUinBwcHExsbe0muITLsaWdqZ8ehbY5j04jB2rwlh3f92kZGYw+qv/+PfxTsZ8+RAprwyEmPzGy/mItwd1FkiU9evPfJcYrMmkjbGz0+VuU1MyqWwsAxTU4Obb+/lwJ4j0TdcZAmgT6A7l5JzOBqewMhePvX3e7Wzxt7ChPS8Io5HJzEw4EoWdLhfB1YcOsPBmATKq6pxt7Qg0MGOsLQM/ouKYYqvPyEpySw9c5JeTs70qA3iXU3M+bbfaJ7Zu4HlUafpatuO0W5ejHbyYWvyeb4K3c9M9z4subiXiLx8rPRMyasqpp2+FS6Gqqy5q6EdLga2tDOwQecm9e118ipLWZN4AgBTmVl9ln3P5Xgq5DUE2bZjhIvqIORCdha/nlMFkZ8MGIyB9pWAom4C6nDv9uhqabE1TPXzyECvBv+WdaUxjdWzn4hKRKFU4uZggb1V45mm+tKYZtSzn6stjXF3s8aihd9PGWkFpCTlIpVJ6Nyt8ez/nVJSVM7Zo6qJvIPHdWlia+FuUFpczt8LtrN5+X4qSisBMDIzYNSMfjzwRH9RAiPccQcPHuTSpUs8+eSTTW6rVCoJDQ3F39//ll5DpBc0gJ6BLmOeGMDyE3N595dn8Ax0obK8mn8X7+LxoPf4Z9EOKm+xZZGgWXoP90cikRATlkRWWn7TT2hFHXwc0NXVorCgjKSEnBbtw9REHxcXVaeByKims+1+teUVkRfTUCiUjW5TVyJzPOIyNXJF/f0SiaQ+UN8ffqnhfh1tsTczpryqmqOxqsBxfIAq4N8Qfp4xHbx50MubGoWCF7ZtJrnwSi/14a6ezPLvBsCbh7cRV5DLh12GYqqjR1RBJvJqbWz1TMgoL2Gw9QC29PuSX7vP4SO/x3nMbSQDbDrjZuTQIGBXKpXkV5USlp/EfymhLLm4l3fO/cO0I0t58MD39Vn2I2mqsxwPOvmx9qLqLEDdQkoKpZL39+9BrlQywsOTQW7u9fuvrKlhxwVVcPmArzcFZRUcuXgZaFgaU1Vdw6lY1WTXnt7XB+11pTE9bpBlBwg/Xxe0N6OevbY/e5cuN95fU84cV/3bdvRzxLCNJ4GePXIReY0CJw8bHN1tmn6CoLHkcgU7/jjCU90/4J9FO6gorcTF24FXvpvOH+Ff8sSHE0TALtySkpISQkNDCQ0NBSAhIYHQ0FCSklTf43PmzGHGjBnXPW/58uV0794dP7/rS0g/+eQTdu7cSXx8PKGhoTz55JOEhoYya9asWxqbCNo1iExLRr9xQSza8y6f/Pkirj7tKCks49dP1/Nkt/fZ/vth5DVydQ9TaAELa2N8g1wBOLIj4uYbtzJtbRkd/VUZ5/DaOuSW8Pera/3YdNDe3sUaXR0tSkorSUrLa3QbPw97TAx1KSqtJCo+vcFjA/1VQfuhyPjrAvphfqrs9M4IVTA7yscLbZmM6KxsorNymD94GP42tuRXVPD0fxspqbpywPtmUD962DlRWl3Ns3s3oi/TYU7gYAAWnz/CI669AFgRf4SSalW2TqlUkldZSmheEltSzrEkRhWYP3JkKX13fcHA3fOZeexn3g9bx7LYA+xIiyCqMJWSmgp0pFpYaFlQo1TS29aNzbExKIHRbl50tVVltP+KDOdcRjpG2jp82H9gg/dh2bFTFFZUYmtsRHcXR3ZHxlIjV+Blb0172yuBSFhCOhVVNVgaG9DBwbrBPpTKpls9FpVUEJ+sOqBrTueYVqlnV2Orx5P7LwDQfWDHNn9tofWEH43h5SGf8/2rq8jPKqKdhy0f//ECSw9/xMgZfcX8MKFFTp8+TefOnes7u8yePZvOnTvz4YcfAqrJpnUBfJ3CwkLWrVt3wyx7QUEBzzzzDB07dmTYsGGkpqZy6NAhunXrdktjE+UxGkgikdB9WABBg/3Y/+8JVs3bRFZKHgtf+531S3Yz871x9B7dWbSlusv0HRlA5KkEDm8PZ8IT/dr0tf27OBN6OoHIc0mMmRTcsn34OfLf1tBm1bVraakW5wk9n0JkTBqujWS6tGRSevi5sutEDEfDEhq0Iezs0Q4TA10KSisIS0ij61UTK4f5efLbkbMcuBBPZXUNZvp6DPJ0Y2f0JTZGnGfOkP4sHT2WcX+v5mJuDm/s2s6S0Q8ilUjQkkr5YeAYRm/6jdiCXN45spOF/UezMTGS41mJ7E26TEcTey4UpTPr5Eq0JFKSSnMpqam86e9rq2eCs6ElTgaWOBta4mxogbOhJRKllFE7fgGgv017Pg05gLZUyttBqn//7NJSvjp6GIDZPXtjZ3RlldKE3HyWHqutfR/cD5lUWl8aMyrQ6+qX59iFy4Aqyy6VNvxeiE/LJbugFF1tGZ06NB6QR0SnolSCk4M5FmY3L3dJSy8gPb0AmUxKYIDTTbe9kZoaOedOqeYydO3ZtvXscrmCUwdV72M3EbTflTISc/jl4385suUsAEamBkx78wEeeGLAXbsAkqA5BgwY0KB3/7VWrlx53X2mpqaUlV2/CF+dBQsWsGDBgtsem8i0azCZTMqQKT355cRcnv3sIUwsDEmOzeCzx5YyZ+ICUuMy1T1E4Rb0qS2RiQ5t+xKZurr28LOXb/pldNN91GbaL8ZmUN6Mcq36Epmb1LX3DlSVyBwNazgZVUsmpZ+fqkxkf3hcg8cCnOyxMzWi7KoSmXH+qhKZLZHR1CgU2Bsbs3T0g+hIZeyKv8TCE8fqn29jYMSSgWORSSRsjr/A79GhfBY0Ch2pjKNZl+lmoQqILxZlcL4wrT5gt9MzpZulOxOdg3jNezjfdZ3Kv/1e5PiID9k5+E1+7vEEHwaM5TGPPgyy86G9sS3LY05So1TQy8aVf2NUizVN79gZFxNVB6HPDh+guKoSPxtbpgd0qh+jUqnkox17qZbL6ePuwmifDmQUFnM6QXXANCrgmqD9Jv3Zj0fUTlD1ckRPp/HJd1fq2ZtTGnMZAJ+ODui3sMtDdGQqZaWVGJvq4+lt36J9tFR0aBJF+WUYmejj06Xlk2iFtldWXMGvc9fzdM8PObLlLFKphAeeGMDyk3MZP2uICNiFe54I2u8COrrajJ81hBWnP2fq66PR0dMm9FA0s/p9wl/fbW2w7LKguSxsTNRWIuPt2w5tbRl5OSWkpbTsgMHW1hRra2PkcgXRMelNbt+coL2nvxsSCcQmZ5OZ17BjUl2JzIGIuAYHGlKphCG+dV1kVCUyfT1cMTfQJ6e0jKPxtUGqvQOfDx4KwA8nj7Mt9sry0cF2jrzbbQAAc0/sI7+8gpd9+wKw+mIYH/qN4zXv4Szo+kh9YL5j8Bss6/E4H/iPZeZVgbme7PpAWKlUcrEwm3UJqm5BAWaOnM/LwkRHl5c7qUpwDideZsvFaKQSCZ8PGlrfbx1Uk0+PX05GV0vGxyMGIZFI2BF+EaUSurg64GB+ZTJpblEpMSnZqvezsXr2yMtAE/XstZ1jmjUJtTXq2UNU9exdurm3aMGv21FXGhPUz0usjXGXUCgU7Fx9hCe7v88/C3dQXVVD5/4dWXLwQ1786hFMLY2b3okg3ANE0H4XMTQxYOacsSw9/BFdBnSkurKG377YxAsD5xJ5/NbaBgnq0XdkAACHt7dt60ddPW06+KoCsogW1rVLJBL8fFWZ2IiI5Ca3r2v7eDkll6KSxnubmxnr4+uuyrTWLf5Tp1dHV3S1ZaTkFHIpPbfBY8NqWz/uvxBPVU0NOjIZY3xV2ecNEefrt5vY0ZcnO6sWznlz9w7OZ2fVP/akbxCjXL2oVih4ft8mJrgE4GVqQ35VOUfTU5jp0YeBdh0bDcwraqpJKM7laEYCa+NDWRh5iLdPbmH6gdUM3vojvuu+YuSOZdQoFfSwcWFdbZb9hcAemOvpU1FTzYcHVD3ZZwR0wt/Gtn7fheUVzNtzCIDne3fH2dwMgG21pTFXT0AFOB6jqq30drTBwrhhV5+KqmpCY1RZ9O5+jWeVKyqriY7LAJpeVEmhUNZn2rveRj376ePqr2cXpTF3h8iQWF4a/DkLXqmtW3e34eM/XuCLf18VK4oL9x1xLuku5OBmw+drX+XAupMsff8fkmLSeeOBrxk5oy9PfDgB4yZqUgX16TPcn6VzNxMdmkR2egHWTawu2poCurgQFZpE+NlERoxtWZu7AH8n9h+4QEQz6trNTQ1wtDMjJaOA87Hp9OjceFu/3oFuRMalczQsgfEDAurv19fVpoeXCwcj49kffglPB6v6xzo7O2BtbEh2cSkhl5Lo7+3OOH8fVp0KZU9MHEUVFZjoqTqSvN27HxdzcziclMgz/21k45RHsTIwQCKR8FXfEUTnZxFfmM/sQ9v4LGgED+1bxcbESLpZO2Oio0daWRFppYWq6zLVdV7ljWsXr+ZkaIaHvg1HStNoZ2jCYz6qA4glp06SWFiAraERr/Xo3eA53+w/Qm5pGR5WFjzZMwiAhOw8olKzkEmvTMStc6We3fm61w+9mEpltRwbcyPcHRrvoHH+Yjo1NQqsLYywtzG96e8TH59FYWE5+vo6eLewrKWwoIzYC6qzL20dtGem5HH5YgZSmZSgfl5NP0FQm6K8Ev731p8c3HgaAEMTfR554wEefGqgKIMR7lt3VaY9Pz+f6dOnY2pqiqmpKdOnT6egoOCmz5FIJI1evv766/ptBgwYcN3jDz/88B3+bW6PRCJh4KTu/BLyKSMe7QPA9lWHeabXRxxYf7LFdcvCnWVhY4JvV1eg7Rda8q9dBCeytryhJer6tZ+/kIb8qq4uN+JbWyITdbO69trWj6fOJ1FV3bDUq26hpQPX1LVLpRKG1neRUZ1l8rWzob2VBVVyOdvOX6zfVksqZdGIB3A1MyetuJjnt22mSq7qwmSso8vSQePQ19LmSFoi+5IuM8NTNVH33dPbePHYer4I3cPK2FPsSo0hMj+jPmDXl2nT3sSKvnbuTHHvxGt+/fm62xhWD3yU/aOf5/ykt/l38GOsu6jKsr8Z1Bc9LS0u5eXy05mTAHzYfyDGVy2lfTYljb/PqUqnPh05uH7hpW1hqtKeXu1dsDC6kk1XKJSERKsy7b06ul733tbVs3f3c7nhxPW6evaAjo5NTm4/U5tlDwxwQquFpSXnTsajVIKrhw1WNnd2dcJrnTygOlvh08UFY7ObrzUgqE/YkRie7/8pBzeeRiqVMPqx/iw/+RkTnx8qAnbhvnZXffofeeQRUlJS2LFjBwDPPPMM06dPZ8uWLTd8Tnp6w9rb7du38+STTzJx4sQG9z/99NN8+umn9T/r6+tzNzA2N+TV72cw+KEeLHr9D5JjM5j/zC8c3XqOV76bjlETi+AIba/PyAAiTydweHsE4x9vuy4yPgFOSGUSMtMLyUwvwLYFWX43V2sMDXUpLa0kLi6LDh3sbrq9v5cDOw+eJ+ImQbuXiw1WZobkFJRyLia1QRlHfz93JBI4n5xFRn4xduZXaleH+XnyZ0go+8/HUVUjR0dLxoQAX77ad5gFB4/R18OVdqaqoNBUT4+fHxjL+H/+5HRaKh8f2Mvng4YikUjwsrBmXu9hvHpwKz+EhrBk0INEWKaTWlaAg4Gp6mJogoOBSe3PqmtTHb0mg9zPzu2npLoKP0tbxnr4oFQq+WD/HqoVCga6ujPC40rWvFou58NtewCYGOBLsLPqAEmpVLI1tLY0plPD0piLadnkFZehr6NNoNv1me8TUZcB6OHnesMx1q2EGujTNvXsp9XY6vHEPtUBlGj1qJnkNXJWf/0ff323DaVSiWN7W97+6Sk8A8WEYUGAuyjTfuHCBXbs2MEvv/xCz5496dmzJz///DP//fcfMTExN3yenZ1dg8umTZsYOHAg7u7uDbYzMDBosJ2p6c1PE1dWVlJUVNTgok7+vTrwvwMfMP3tB5FpSTm86QzPD5jL+ZNxTT9ZaFN9hvshkUi4cC6R7PSCNntdfQMdPL1Vme+IFmbbpdIrde3hkc2oa6/NtJ+PTb9hZl4ikdT3Dz8aFt/gMQtjAzq5qfZxbba9i6sDlkYGFFVUciJONZZpQYH42NqQX1bOc/9spqyqun57DwtLFo4YjQRYExXB7+Gh9Y+Nb+/LjI6qnrxzjuzi2+5jOfbgK/w75DEW9RrPO4GDmeEZzJB2HfAxt8NMV7/RgF2pVFJSVUlCYR57k+L4MzoMgPe6DUAqkbDuQhQnUlPQ09LikwGDGuxj5cmzXMzOxUxfjzcH962//3xaFom5BehpazHIp2GgG1K7CmqQpyM62g1zMFn5xcSl5CKRQLDv9aUzADVyBVEXVQdUTXWOqaqqIbx2LsPt1LOHnlL9G3ft2bZBe3lpJWG1tfSinl3zZKXk8ubYb/jz260olUqGTevN4r3vi4BdEK5y1wTtISEhmJqa0r179/r7evTogampKceOHbvJM6/IzMxk69atjTa/X716NVZWVvj6+vLGG29QXFzcyB6umDdvXn2ZjqmpKU5OLetX3Jp0dLWZ9uYDfLftHexdrchKzuWNMV/z13dbm1XKILQNS1tTfLqq/iNq6y4yAbUt7iLOtrxExt9fFdw1p1+7u5MV+nralJVXkZCce8Pt+gSqDqKPXjMZFa6UyOyPaBi0y6RShviqenzvjlSVyOhra7Nk8hgsDQ2IzsrmnS07G5SKDXR15+3eqrMbcw/t51jylQUy3u8+kE7W9hRWVfDc3k1U1Fwp1SmvqSapuIAzmansvBzLHxfOseDsEd47uotn9mxg/JY/6PPPT3Rc9T2+vy9kwL+/8MTuddQoFQxycqeXgwt55WXMO3IQgFe698TR5EpiIKWgkB8OHQfgncH9sDC4cqavLss+wNsdQ92GLRaP1QbtvRpp9XgiUvWYj5sdZkaNnzmMTcikvKIaYyM93JysGt2mzsXYDCoqqjE3M8DV9ebb3khudjHZmUVIpRJ8/Nv2O/PcsVhqquXYOVng5CFWQdUkR7ac4fn+czl/Ig4DYz3eWfYUsxfORM9QLI4kCFe7a4L2jIwMbGyu/6K1sbEhIyOjWfv47bffMDY2ZsKECQ3unzZtGn/99RcHDhzggw8+YN26dddtc605c+ZQWFhYf0lObjrr2Fa8uriyeP8HDJzYDYVcwW9fbOLdiQvISW/b3uDCjfUdGQi0fRcZv9q69pZm2uFKv/aIiOQm507IZFJ8PFVlG5EXb1wiE+zrjJZMSnJmAUkZDT+nA2pbP56JTaGorGEXmrouMnuiLlFdW6fuYGrC4okPoC2VsiM6liVHTjR4ztNdghjn1RG5UsmL27eQVFgAgK5MiyWDxmKuq09kbiYjN65gwNqf8V31Pd6/LaDvP8uY8N9qntm7gfeO7eb7c8f4IzqUnYmxnM1KI7m4kPIaVWbfUFsbF2Mzeju48EmPIQDMP3qI/IoKvCyteKJT1/rxKJVKPt25n4qaGro5OzI+wKf+MblCwfZw1ZnEa0tjyiurORevKm1prJ69LmjvcYOuMQBh51XP9/dyuG5RpmtdqJ086uPTrsULu0XXHui5eNigb9CyHu8tdfUqqGJhOs1QWV7Fotf/4LPHf6KksAzvrm78b/8HDJhwa6tECsL9Qu017R9//DGffPLJTbc5dUq1KuCNTkc39wv4119/Zdq0aejVdpWo8/TTT9ff9vPzw9PTk6CgIM6ePUuXLo132dDV1UVXV3OzAIbG+ry19Em6DPThf2//VT+x573lzxLY17vpHQh3VJ/hfvz02eb6Epm26iLj18kZiQRSk/LIzSnG0urW+xt7dbBHW1tGfkEZqan5ODpa3Pw1vRw4E5FEVEwa44YFNrqNkb4unTq04/SFZA6fi2PayKD6x1xszPGwtyQuPZfDUQmMDr5S2hDk6oi5oT75peWcjEuhdwdVgNrVqR0fjxzMe1t3s/BQCM7mZozxU33uJRIJXwweSnxBPuGZGTyzZSOrJzyEpYEB7YxMWDTgAWbsXEt8YcODB12ZFtb6hrUXA6wNDLGq/bnu2kbfECt9Awy0GwakR5MT+fd8FACfDRqCtuzKJM5tFy5y4FIC2lIpn4wc3OD77K+QMLKKSjHR16VPh4bB96nYZGrkCuwtTHC2NmvwmFyh4ERU3SRU1xv+29RNQu3URKtHgAvRqqC9Y22JVUtcqA3aO/q1bas+hUJRPwlVlMZohoykHD56ZDGJtZ+rh14ewYw5D6KlrfawRBA0ltr/Ol588cUmO7W4uroSHh5OZub1K4BmZ2dja2vbyLMaOnz4MDExMfz9999NbtulSxe0tbWJjY29YdB+N5BIJAx9uBcdgzyY9/Qy4iKS+f61Vaw4/YW6h3bfqyuRiTp9mYP/hTLp6QFt8rpGxnp4eNlzKTqdPVvDmDKzzy3vQ0dHi47eDoRHJLNx0xlefGHoTbcP8FYFaAeOX2Tq2GDcnRsvrejbyYPTF5L5dcsJgn2c6eBy5czaoID2xKXn8v3Gw/i52OFio1pRVEsmZahve/45GcHcTXtZ+cxk7ExVByKTO/kRk5XNqlOhvL5pOwfjEnh36AAsDPTR09Jm6egHGff3ai7m5TLsjxV82H8QD3bwpp+jGxvGPEpaaVGDgNxIW+eWM7RKpZLfw0P54rCqLGaqXwBd7VXvh1yh4Kdjp1h0KASAp3sG42GlOgCqqpHz/c4j/HZEtUz7i0N6oaN15es6r7iM7zaoern38XFtMC6lUsnCvw5SWFKBsYEufu6NTxaOjsvg+FlVOVIn35uXqiQkZHP8hKo8ycenZUF7eVkVB3epDlw6tnFpTPiJePKzi9E31MEv2L3pJwh33G9fbCIxOg1zGxPeXPIEXQb4NP0kQbjPqb08xsrKCm9v75te9PT06NmzJ4WFhZw8ebL+uSdOnKCwsJBevXo1+TrLly+na9euBAY2num7WlRUFNXV1djbt+3y2neKY3tbvtr8BlKphPTLOaJMRkMMHqcqkdj576k2bdE5borq1PPfK49QVNC8fuPXmja1JwAbNp0hookJqUEBLnT1d6a8opp3v9pEcWnjCy2NG+BPQHsHissqeeHrf7mUnF3/2PRBXfB0sCK7qJSnf/iX5OyC+seeG9wDJwtTkvMKeeLnf8kqKql/7J0h/Xm8exekEgmbI6MZ9dNvbD0fg1KpxM7ImN/GTcLbypr8igpe27mNp7ZsJK24iM42Dox286abnRPuphYY6+g2K2CvrKkhvbiYqKxMDidd5vltW/j44D6qFHIGu7kzp09/ALJLSnnir/V8f/AYCqWSsf4deb6P6t8lOa+A6T/9XR+wT+/dmak9rnxvFZdX8vySDVzOysfO3JinhjUsJfhl03HW7D4HwBuPDmy0NWNRSQUffLOZ6ho5fYI96Nj+xl2Aysoq+XjuBioqqunaxZUA/8YntTZl5Y/7yMooxNbBjH5D2jZA2/TbEUD1N6ejq/Zc1X1PqVQSfkRV9vX20qdEwC4IzSRR3kUNvUeOHElaWho//fQToGr56OLi0qDlo7e3N/PmzWP8+PH19xUVFWFvb8+3337LrFmzGuwzLi6O1atXM2rUKKysrDh//jyvv/46+vr6nDp1Cpmseb2Ii4qKMDU1pbCwEBOTtu093FwvDJxLXEQy7/7yDP3GBTX9BOGOKi2uYFrvuVSWV/PNmufr+7ffaXK5ghenLyM+NpPxU7sza/aIFu3n62+3sX1HOI7tzFm29An09LRvuG1BURlPvvk7mTnF9Orqzvx3xjdaQ11SXslLX68jKj4Dc2N9lrwzGY92qsx8XnEZTy1aS3xGHnbmxix/eTLtrFSTOdPyi5i5bC1pBUW4WZvz61OTsDExqt9vWGo6727dTWy2ajLsYE93PhoxGDsTI6rlcn46c4rFJ49TpZBjpK3D2336MdUvgJKqKvLLy8krLyOvvJzc8jLyK8rJK7/6UlZ/XVpdfd3vpC2V8k6f/jwW2BmJRMLR+ETe2LyD3NIy9LW1+GjEICYE+AKwM+IiH67bTUllFSb6unw+aXiDjjHlVdU8/7/1nItPw9xIn5WvTak/6wDw186zLPjrAACvTxvIlKGdrxuPQqHknfkbOHYmHnsbU379ZjrGhnrXbQeq4Gru55s4cDAaKytjlv34OGYt6G8eHZXKq4//glIJX/zwaJu2e0xLzOGpoV+jVCr5eecbOLqLSajqln45m8eD3kNLW8a6+IXo6rft/AZBRZPiljs5Fk36PW+X2jPtt2L16tX4+/szbNgwhg0bRkBAAL///nuDbWJiYigsLGxw35o1a1AqlUydOvW6fero6LB3716GDx+Ol5cXL7/8MsOGDWPPnj3NDtjvFr7dVZ02ok5eUvNIBABDYz361U5I3fnPySa2bj0ymZSnXlaVtGxZe4q0lLwW7ee5ZwdhaWlESmo+K347fNNtzUwM+Pytsehoyzh2Jp6V/4Y0up2Rvi6LXp+At6st+cXlvPDlv1xOU43PwtiAZS9NwtXGnIz8Yp7+4V/S81StVh3MTVjx9CTsTI1JyM7nwQWr+OPoOWpquyYFtrNnw5PTeKlvD7SlUvbGxjNq2W/8fS4CLamUF7v1YMvU6XSxs6ekuooP9u/Ba/ECOv20mIGrljNx7V88/d9G3tm7iy+PHubns6dZdyGK/ZfjCcvMILmosD5gl0kkWBkY0MHSioGu7qydPJXHO3VBrlTy7f4jPPHXenJLy/CysWL9E9OYEOBLRXUNn27cy+w/t1JSWUUnF3vWvfxog4C9ukbOG7/8x7n4NIz0dfnxhQkNAvYthyPrA/ZnJ/RqNGAH+HPTSY6diUdHW8Znbz54w4AdYOOmsxw4GI1MJuXD98e2KGCvqZHz/WebUSph8MiANu/PvnnVUZRKJUH9vUTAriEij6u6PXl2chEBuyDcgrsq067J7oYjuQPrTzL/mV/wDHThh73vqXs4AhB15jJvPLwEXX1tVh/9AEPjGwdQre3dl/7gzPE4+g3x5b15k1q0j+MnLvHu+/8ilUpYuOBRfJtYoGf7/kg+X6xaHG3+O+PpE9x4AFdYUs4LX/3LxaRsrMwM+fGdh3CxUwWoWYUlPLVwLUnZBThambL85cnY1i66lJRbwOw/t3IhLQuADnZWvDtmIMHuVyZaXszK4d2tuwlPU3Wd6uHixNxRQ3CxMEOuUPB7eChfHztMeW3LRwNtbcz19LHQ18dC36D2uvaiV3ufgT7mevpY6htgont9KU1aYRGzN27jbIpqsbepXQKYM6Q/etpaxGfl8fpfW7mYkQPA0wOCeWFIzwaTVeUKBe+s3Mbuc7Ho6Wjx4wsT6Ox+5b3ed+oi7y7ZikKpZNqIrrw8pV+j5TxnI5N49ZO1KBRK3po1jAeHBtzw3+rChTRemf0HNTUKnn9uMJMmBN9w25tZs+IwK5bsw8RUn5/XvoCZuWGL9tMSpcUVTO/7OeWllXz261N07duhzV5buLEFr6xi5+ojTH5pOE9+NLHpJwh3hCbFLXVjyUzPviOZdlt7a434PW+XCNpbiSZ9+G8kOzWP6YHvIJVJWRf3PfpGbRcgCo1TKpU8M+IbUuKzefmziYyc0r3pJ7WS+NhMnp+2FKUSFq54Em+/pjuINGbel1vYvScKZydLli19HJ0mlhn/7uc9rN8RiqGBDj9/+SjODo13nykoKef5+Wu5lJKDjbkRS+c8hKONGQCZ+cU8uWgtKTmFOFmbsfyVydiYqsph5AoF605F8v3OoxSWq+rnRwZ48caovvWTVOUKBatOhbLgwFEqamrQ09Lilf69mNmtM1pSKaVVVRRUVmChp4++9o3Lfppj78U43tmyk8KKSox0dfh89FBGdlQFjxvPRPHZpn2UV9dgaWTAvMkj6jvg1FEqlXz61x42hESiJZOy6NlxDfqyh0Rc5vXvN1IjV/BgPz/ee3xoowF7Tn4JT7yxiryCMkYM8OG9F0fesE6/sKicZ2etICu7iH59vfjog3EtapOYmpTLs1N/pLpKzpufjGPIqKbnFLWmDSsOs+yLLTh52PDT9tdFq0cN8WT3D0iNy+ST1S/SffiNDxyFO0uT4pa6sQxxfxktaet25qtRVLInfpFG/J63664qjxFuj3U7C6zbmaOQK4g+e/0iNkLbk0gkDJ+kymDuXHuqTV/b3dOWIaM7AbBs4e4WT4Z94bkhWFgYkpScy08/729y+5ceG4i/dztKy6p498tNlJVXNbqdmZE+/3trEu7tLMnKL+G5+WtJzVaVvtmaG/PzS5NwsDAhObuAZxb9S05RKaBadOmh7gFse/0xpnQPQCKB7eExPPDdb/x84CRVNTXIpFIe796F/56ZTg9XJypqavhy7yGmrFxDTFYOhjo6tDM2aVHAXlVTQ3ZJKZeyc/l81wGeW7uZwopK/Oxt2fjkNEZ27EBpZRVz/tnBe//uory6hu4eTqx7adp1AXuNXMHX6w+yISQSqUTC/MdGNQjYw2JTeeuHzdTIFQwO7sCcx4Y0GpjWyBV8vOA/8grKcHe24vWnG98OVDXv8+ZvISu7CMd25rz5+qgWBbtKpZJF87ZSXSWnS3d3Bo9s2+BMLlewedVRAMbN7CMCdg2Rn1VEalwmEokEn+5tWyolCHc7kWlvJZp0xHoz857+mYMbTjH97QeZ9uYD6h6OAOTnFDO97+fIaxQs3TYbF88bd/JobdmZRTw58QcqK2v46Jsp9Orfsh7+R4/F8sFH6wB4+skBTH24x023z80v5Yk3V5GbX8qAnh2Y+/qYGwZVuYWlPDd/LZfT87C3NGHpnIewt1L9jaXmFvLUwrWk5xfjbmfBLy9PxsK4Yd31+dRMPt+yn9BEVWmKi6UZc8YMoK+XG6AKLv8Ni2L+nkMUV1aiJZXybK9gpgd1oqSqisLyCooqKimoqKCwvILCisra+yooqH2ssP52BeXVNVzr8e5deH1gH3RkMmLSs3n9r60kZOcjlUh4YUhPnh4QjEzaMIdy9lIK89fu52Kaqmzm42nDGNfDt/7xi4lZzJq/lpLySnr6u/LNK2PRbqRTTE2NnK9+2s22fZHo62mz/KvpOLe7cW/931cfZcXKw+joaPG/H2bg0cI68J2bz/Hd3M3o6mrx05rnsXc0b/pJrShkTxSfPvcbRqb6/H74PfRE7bRGOLLlDJ89/hOuPu1YeugjdQ/nvqZJcYsoj2ke0fvqPuPboz0HN5wSk1E1iLmVMd0GdiRkdxRb/zrO8x+Oa7PXtrY1YfwjPViz4gjLf9hDt96ejbYIbErvXp48+8xAflq2n5+XH8DYWI8HarP4jbE0N+TzN8fy4odrOBBykdUbT/Lo+MZLgyxNDVny9iSenfcPyZkFPP/lWpbOeQhbC2PaWZqy7KVJPFnbVebZxetY9tIkzI3065/v086WP56dwpZzF/hm+2EScwuYtXIjAzu68/YD/XGyMGNyJz/6ebjy8Y597L0Yx/+OnOB/16ykeiskgImeLnYmxswe0JuBnu4olUr+PhHG/P8OUlUjx9bEiK8eHkmQW8OypJyiUr7feJj/TqlW8DQ10OOtSQMaLCqVmJHPS9+so6S8ksAO7fjyxTGNBuxl5VW8/81mToZeRiqV8O6LI24asJ85e5mVtZOKX315WIsD9vzcEpYt3AXA9GcHtHnADrBxper3GPVwDxGwa5DI46r/e/x6eKp5JIIm0jPQQa+VV0uuqrl3/v5F0H6f8e2m6iATfSoeuVyBTCYqpDTBmGm9CNkdxe51p5n+yjCMTW+9S0dLPTSjD9s3niUlMZdfFu1ucQvIKZO7U1xUwZ9rQliwcAdGRnoMuEnm3s/LgVefGMQ3y/aw7M8jeLnbEhzo2ui2VmZG/PjOZGbN+4eUrEJV4P7OQ1ibG+FkbcbPL03iqYVriU3L4dnF61j6woQGGXeJRMKDXXwY5OPBkr3HWX0slP0X4jkam8gT/YJ4qn8wtsZGLJk0hh3RsXy+6wBZJaXoa2thqqeHqb7eVde6mOrrYaKnh5meLib6epjp6WFSe7+pnh7GerpIrzpzUFRewUfr97ArUtU1o7+XG59PHo654ZWDixq5gn8Oh7Fk6zFKKqqQSGBCL39eGtMbs6u2y8gt4sWv/iW/uBwvFxsWvDoOPd3ry3iyc4t584v1XLqcjZ6uFh+/NuaGE38BsnOK+XyeqsvLqBEBjLiNWuOl3+2kpKiC9l52TKjt6d+W4s6nEX4iHqlMygPT2v71hRuLDFH9DdR1MxMEoflEeUwr0aTTTDcjlyuY7PEqZSUVLDnwAe5+bbsyodA4pVLJ82MWcDkmgyfeHMXkZwa06esfOxjNJ2+oVgt+e+4EBo3wb9F+lEol3y/cyZatoWhpSfl87mSCg9xuuv38JTvZui8SEyM9fvnqURxszW64fUZuEc/O+4f0nCKc7cxZ+s5DWJmpupEkZOTx1KK15BaXYaCrzcRe/jw6sEt9Z5mrXcrMZd6W/RyPUy0MZW9mzFuj+zPUtz0SiQSFUkmNXN5gFdKWCk/O4I2/tpKaX4SWVMprI/owo3eXBn3qry2F8XG25d2HBuHn0rBUKrewlGfn/UNSRj6u9hb8NOchzE2uP8CLS8zmzc/Xk5VbjIWZAV/NmYD3TRZQqqmRM/uNv4iMSsHD3YbFi6aj28iBQHOcPBrLB6/+iVQqYdHKp/Ds2LIVVG/Hd+/8w+51p+k3OpA5309r89cXGldaXM5kj1dRKJT8Hv4l1g5tfwZGuEKT4hbRp715RJr1PiOTSfGuDaLOn4xT82iEOhKJhAmP9wNg06qjVFddXxd9J/Xq783UJ/oC8P1nm4mPzWzRfiQSCS+/NIwB/b2pqVHw0SfrOX8+9abbz356CB3b21FUUsF7X2+movL6BYrq2Fma8OPbk7GzNCYpI58XvlpLXpFqVVc3OwuWvTSJDu2sKaus5vf9Zxn9ya98vHoXCRkNe9G3t7XklycnsmDaA9iZGpNeUMxrq//j6V/XE5eVi1Qiua2AXa5QUFxRycrDZ5i+9G9S84twNDfh91lTeKxv1/qAPaeolPdX7eCJhWu5mJaDqYEe7z88mN9ff/i6gL24tIKXv1lPUkY+9pYm/PDmxEYD9lNhl3nuvb/Iyi3G1dGCn+ZNu2nADvDz8oNERqVgaKDLRx+Ma3HAXl5WxQ/ztwIwfmoPtQTsBbkl7N+sWhF23Mw+bf76wo1dOBWPQqHE1tlSBOyC0AIi095K7qYjuVXzNvHnt1sZ8nBP3lj8uLqHI9SqqqzhsYHzyM8u5s1vHmbQ2C5t+vpyuYIPXv2TM8fjsG9nzg+rnsbYRL/pJzaiulrOex/8y+kzCRgb6/H9t9Nwc7O+4faZOUU8+ebvFBSV08Hdlo9eGYWLo+UNt0/NKuDZ+f+QlVeCh6MlP779EGbGqrEqlUqOnr/Mij2nOXMpBQCJBAYFtOexIcH4uzYMYMurqvnl4Cl+PXSaqho5WlIpj/buzPiuPpRVVlNSWUVxRSWllVWUVFRRUlFJSd3tykqKK6ooraiiuLKS0ooqSiqrKK1s2BFnmJ8nn0wYgom+qs1qc0th6sdYWc1LX68j/FIaFiYGLHt3Cs521wc9W/dF8NXS3cjlCjr5OvLFW+MwaaK166HDMXz86QYAPv5wPP36et10+5v58dsdbFxzAlsHM5ateU4tteSrf9jNH4t24xXgxPfrXmrz1xdubOUXG1nz3TYGP9SDN5c8oe7h3Pc0KW4RmfbmEUF7K7mbPhQndoXz0SOLcfK04+eQT9U9HOEqfy3Zy6oFO2nv245FG15u8zZ1RYXlvDRjGRlpBQT3as+nCx5pUMZxK8rLq3jznb85fz4VSwsjFn7/KA72ZjfcPuxCCnPmb6SopAJdHS1eemwAY4cF3vA9SMrIZ9b8f8gpKMXTyZr/vT0JM6OGAW9YQhordp/mQMSVs0rBnk48PjSYnt7ODfadnFfAl/8dZP+F+Bb9vo0x0dfllWG9a1tPql6rsVKYOZMHXXcwUaequobXF27iRGQixga6LJ3zEJ5ODQ+AlEolv/59jBVrVSvNDu3bkTkvDEdH++ZnC1JT85n1/EpKyyqZPDGY52YNbvHvGh2VyquP/4JSCV/88Gibr3wKDQ983/5uKgPGNL4qrKAeb475moiQWF75bjojZ/RV93Due5oUt4igvXlE0N5K7qYPRWFuMVO8Xgdg7aUFGJu13QqFws0V5pUys/8XVFZU8+UfzxKghj7GcTEZvPrkcqoqa5j2VD9mPDuwxfsqKirntdf/JOFyNg4OZixa8CgWFkY33D47t5jPF+/gdHgiAL26ujPnheGYmzb+GU1Mz+PZef+QV1SGl4sN/3trEiaG12eW49JzWbnnNNtPR1OjUADg7WjD40ODGNLJs0G7xUPRCSzYeYSMwmKMdHUx0tNRXepu6+pgpKfb5H3GejoNSmwa6wrz0oO9Gd/T77p2j3VSswr4dvUBjoTFo6+rzeI3J+LfvmHJSXW1nC+X7mTHgfMAzJjYg6en9m7ygK+yspoXX/6duPgsfH3aseDbR1rUOQhUNfEvTl9GwqUsBo8M4K1Px7doP7dr78YzfPPm31jamrBy/xy0tFv2+witr6qymkker1JVUc3PIZ/g5Gmv7iHd9zQpbhFBe/OIoL2V3G0fiseD3yM9IZvP175C14G+TT9BaDM/fLiebX8dp/ugjnz8k3rKl/ZuC+erj1QlE598+zA9+rW8ZCI3t4SXX/2d9IxC3N2t+f7baRjdpGRDoVDy77azLP3jEFXVcsxNDXjn+eH0Dmr8ACY+NZfn5v9DfnE5Pm62LH5zEkYGja+ol55XxB/7z7LuWAQVtfMGnKxMmTk4iDHdfdBtIjPdErdaCqNUKgmLTePPnWc4ePYSSiVoa8lY8No4uvk2XHypuLSC97/ezJmIJGRSCW88O5QxQ5rX9eWb77azbXsYZmYG/PTj41hbXT9ht7nWrDjMiiX7MDHV5+e1L2Bm3vaJAKVSycvjF3EpKpXHXh/BlFmD2nwMwo2dPxnH7FFfYmplzJoL34jFrjSAJsUtImhvHjER9T7l3UU1GTX6jFgZVdOMf0w1ee7EvgukJGSrZQyDRwUwdko3AL78cAOpSbkt3pelpRFfffkwFhaGxMdn8+77/1JRcePJplKphIce6MrPXz6Kh7MV+YVlvD1vA98s293oJFX3dpYseXsypkZ6nE/I5OVv11NYUt7ovu0tTHhz4gB2fPoUs0b2wNRAj+ScQj77ey+jPlrOit2nKC6vbPHveq2zl1J45KvVfLXuACUVVfg427Jq9lQ+eHjIdQF7TY2cncejeezTP3nmi785cEYVsPcKcGXpO5OvC9gzsot4/r2/OBORhL6eNl+9O6HZAfuOneFs2x6GRALvzXnwtgL21KRc/vjlIADPvDZcLQE7QNSZy1yKSkVHV4uRUxrv+S+oT+TxK60eRcAuCC0j+rTfp7yD3Nm/7iTRp1uvfldoHY7uNnQf1JET+y6wceURXvxEPaUGT78yjEsxGUSFJvHJm3+zcMVT6Ldw0Yt2DuZ8NX8Kr85eTWRUCh9/uoG5n0xE+yblCx4u1iz78lGWrT7M3/+dYePOMM5GJPPhq6Pw9mhY/+3haMX/3prM81+uJTIunVGvLqNXgCvDunvTp5M7+td0QzEz1GfWqJ7MHBzE+pAIft93loz8YhZuPsLyXSeZ3CeAXj6uVFTVUF5VTVllNRWV1fW3y6tqL5XX/3z1dVntQcbNSmGKSivYeDCCf/acIyuvBABdbRmjevvw8LAuuDlcPyE3Jj6Ttz5fT25BKVYWRnz97gQ83Zq3EFJcfBYLf1AtfPTYjL507eLarOc1RqlUsnDef1RXyenS3Z0ho1re2/12bVx5BIBB47pgoqYDB+HG6vqz+/UQ/dkFoaVEeUwrudtOv8ScTeCVYfMwsTDk75jvROZDw4SfiOPtR39CV0+bVYfeVVsQkptTzIvTl5GXU0K/Ib68+8XE2/qsREal8Obba6isrGHggI68+86YZi3wdSoskc8XbycnrwSZTMpTD/fmkbHB1z03JjGLj3/eTlzKlTMD+rra9O3sztBuXvT0d210cma1XM6O0zGs2HOK+GvaQ96Om5XCJGfms2bXOf47EkV5bXBvYWLA5MGdmDAwoNF2jgAhZ+L58LstlFdU4+FsxVfvTcDWqnnfOaWllTz3wkpSUvMJDnJj3ucPtXiiMcDOzef4bu5mdHW1+GnN82pZ+RQgMyWPJwZ/iUKhZOm22bh43rzFpdC2FAoFD3nOpqSwjEW736VDZ1d1D0lAs+IWUR7TPCLTfp9y83VEW0eLorxS0i9n49DMLJ3QNvy7uePh40Dc+TS2rTnBw8+ppz7X0sqY9+c/xFuzVnJoTxRevg5MerRXi/fn5+vIJx9N4P0P/2X/gQsYG+vxykvDmjwQCA504bfvZvL10l0cOB7LT6sPc/xsAh+8PBI7G9P67bxcbPhz7gwupeSw+0QMu0/EkJpdyK7jMew6HoORvi4DurZnaHcvgjs61U+81JbJGNPdh9HBHTkUFc/q/efILixBX1cbA11t9HS00ddR3dbX0a6/v+62/tWP6165bWqoj7H+lfp6pVLJuYup/LnjDIdD46hLmbR3tOKR4V0Z1sPrph1fNu4M5btf9qJQKAkKcOGzNx7EyLDx+v1rKZVKvv52Gymp+dhYm/DuO2NuK2DPzy1h2UJVxn76swPUFrADbPnjGAqFks69PEXAroEuX0ijpLAMfUNdPPzFgn6C0FIiaL9P6ehq4xHgTPTpeKJPJ4igXcNIJBImPNGPr99Yw+bfjzLhiX7o6Krnz9U30IlZs0ew+KttLP9hD+297OkUfONVTpvSLdidOW+P4bMvNrF5yzlMTPR54rF+TT7P1FifuW88yPb9USxYvpewCynMfP03Xn96CMP6+dRvJ5FI8HSyxtPJmucm9uZCQia7TsSw52QMWfkl/Hckiv+ORGFmrM+gIE+GdfeiUwdHpFIJUqmEAf4eDPBv3a49NTVy9py8yJ+7zhJ9+crCVb0D3Jg6oivBHZ1ueuCiUCj5afVhVm88CcCogb68NWvYLXV7Wb/hNIcOx6ClJeXD98diatp4Jr+5ln63k5KiCtp72TFhas/b2tftKC+tZMc/qvdl3GNiMSVNVFeG6dXVDVkLOxQJgiCC9vuad1c3VdB+NoFBk8XELU3Td2QAv369ndzMQg5uDWXohCC1jeWBSUHERKWye2sYX7z7L4t/fwYbO9Omn3gDAwd0pKSkggULd/LH6mOYmOgzaUJwk8+TSCSMGuRHoI8jcxdtIzImjU8XbuPYmXhef2YIxte0e5RIJPi42+HjbsfLU/oRFpvK7hMx7D11kfzictbvD2f9/nCszQwZ3M2LYd298HW3a7VyscKScjYeiGDt3lCy8q+uV/dl6rAuuDpYNLmPyqoavli8g71HowF46uHezJzUo9ljVCqVHDwUw9Jl+wGY9ewgfHzatfA3Ujl5NJYDuyKRSiW8+t4YZFrq62mwZ8MZSosraOdqRVD/lnc5Eu6cmLOXAfDq0vKDfUEQRNB+X6v7Ao05IyajaiJtHS0enN6LFd9sZ8OKwwwZ31Vtcw8kEgkvvTOahEuZXIrJYO7b//DtssdvK/s/5oHOFBWVs3zFIZb8uBdjIz2GD/Nv1nPb2ZmxeO7D/LH+BCv+OcaeI9GER6fy/ksj6eLn3OhzpFIJnb0c6ezlyOxpAzlzIZldJ6LZf/oS2QWlrNl1ljW7zuJgbcrQbh3o4GxDVY2cquoaqqprqKyWU1l15bbqftV1Re39dT/XPZ6RV0xlbWtJS1PD+nr1utVbb0SpVJKcns/xswnsOBDFxYQstLSkvPPccEYMaF6LVqVSydFjsaz64yiXLqmy+wP6ezN+bNdmPf9Gysuq+GH+VgDGT+2BZ0eHJp5x5ygUCjb9ppqAOnZmH6Q36HcvqNfF0MsAopZdEG6TCNrvYx2D3AGIj0yhqrIanWs6bAjqN/Lh7vz5vz0kRKcTGnKJzr081TYWXT1tPvhqCi/OWMbF82n87+ttvPb+g7e1z0em9qSouIK1/57k62+3YWSkS+9eHZr1XC2ZlMcm9yQ40JW5C7eSklHAKx//w9SxwcyY0OOmtd5aMind/Vzo7ufC2zMGcyIykV0nYjh0Lo607EJ+23rqtn6vq3k6WfPIiK4M7dbhpvXqlZXVnI1K5vjZBELOxpOWWVj/mJGBLp+/NZau/o0fkFxNoVBy5OhFfv/jKHHxWQDo6+swfmxXHp3W67YP/Fb+uI+sjEJsHcyY8eyA29rX7Tp9KIbUyzkYGusxZPztHYwId0ZFWSWJ0WmACNoF4XaJoP0+ZutsiamVMYU5xcRFJNcH8YLmMDY1YNikYLb8foz1vx5Sa9AOYOdgxpzPJ/L+y6vZsekcXr7tGHUbwZJEImHWMwMpLi5nx84IPv1sEzNn9GHEMP+brpx6Nd8O9vz6zQx+WLmfLXsi+HPjKf7adApXR0t8Ozjg28Ee3w4OuDpaNjrxUkdbi76dPejb2YOKymqOhCWoymeKytDRlqGjrYWutha6OlpX/Vx7rXPltuoiU21be9vEUA/3dpY3DJRTMwoIORvP8bMJnI1Kpqo2Kw+gpSWlk48TPTq7Mai3FzaWN++lrlAoOXwkht//OEp8bX9/AwMdxo8LYtLEYExNbp7db47oqFQ2/X0CgJffGY2efstagLaWujaPwx/qhn4zJ+QKbSsuIhmFXIGFrSlW9mbqHo4g3NVE0H4fk0gkeHdx48SucGLOJIigXUONm9mX//4I4fTBGBJjM3HxtFXreLp29+Cx5wbx6//2suTr7bh72uLt59ji/UkkEl5/bSQlJZUcOXqRX5Yf5NcVh+jR3YORIwLo3s2jyQmXBvo6vP3ccHp2cWfJ74dISc8nITmXhORc/tsbAYChgQ4d29vXBvGqQN70mjIVPV1thnTrwJBuzcv236rKqhrCzqeoAvVzCSSn5Td43MbKmJ5d3OnR2Y2u/s4YNCMoViiUHDocze9/HCPhsipYNzTQZfz4rkyaEIxJKwTrAKUllXz/2WaUShg0wp+gnurtt50Ym8G5o7FIpRIevI2ORsKdFXNWtYBfh86uorWwINwmEbTf57yDVEG7WBlVczm4WNJziC/Hdkey8bfDvPLZJHUPiYdm9iYmKpWjB6KZ+/Y/LF71DOaWzcuMN0YmU3U02b0nkm3bw4k6n8qxkEscC7mEhYUhw4b4MWJEAM5O1y80dLV+3T3p192TvIJSzsemE3UxnciYNKLjMigtq+J0eCKnwxPrt3e0N68P4v06OODuYo1WM/rG34r0rML6kpezkUlUVF7JpstkUgK829Gzixs9urjh5mTV7MBGLldw8FA0v68+RmJiDgCGhrpMHB/ExAnBGBvrNbGHW/gdUvL5cPZfJCVkY2Kqz7Ozh7favltq029HAeg5xBdbx6Yn9ArqcfGc6u9NlMYIwu0TQft9zqurajJqtJiMqtHGP9GXY7sj2bvhLDNfG4HZbQTIrUEikfD6R+NIuvwLyZdz+OLdf5n/vxm31UVES0vGyBGBjBwRSGJiDtt3hrN7dyR5eaWs+ecEa/45gb+fIyNHBNC/nzf6N8lCW5gZ0ie4PX2CVdngGrmChOQcoi6mExWTRtTFdJLS8khJzyclPZ+dB88DoKerhbeHHT4d7LGxNKamRkGNXE6NXEFNde21XFF/v7z+toKaGtXj8qsez80vJTG14WJNluaG9OziTs8ubgQFuGBocGtlHXK5ggMHL/D7H8dISlYtImVkpMvECcFMHB+EkVHrBesA4WcuM/ftfygqLMfCyohPvp2KmZpXHC3KL2XvxjMAjHusr1rHItzcxXOXAfC6jZV3hftHRWklOrLKVt/nvUKsiNpK7tYVt0qLypjk8RpKpZI10d9iZnXzullBPZRKJa9OWszF8GQefXko014aqu4hAZB0OYdXHvuZstIqJjzSg2dfa90MbE2NnJDjl9i+M5yTJ+NRKFRfV/r6Ogwc0JFRIwLo2NGhRafdi4rLOX8poz6IPx+bTklZ63+5S6US/LwcVGUvXdxo72LdovHK5Qr27T/PH38eIzlZdSBgZKTL5IndGD++K0aGrRusA2zbcIbFX25DLlfQoaMDH30zBSsb9X+//b10Hyu/3UF733Ys2vCyKLvQUMX5pUz2fA2AtbELMFbzwZ7QkCbFLXVjGWw+Ey1p686VqVFUsTf/N434PW+XyLTf5wxNDHDqYEdSTDoxZxLoPjxA3UMSGqFabKkv81/9k/9WhzD5mQEa0e3H2dWKNz4ax6dv/cP6P4/j5GLFqAmt18VDS0tG3z5e9O3jRU5OMbt2R7J9Rzipafls2x7Gtu1huLhYMWpEAEMG+2J+C0GBibE+PTq70aOz6myTQqEkKS2PyJg0VQBfWomWlhQtmRSZTFZ/W0smRUtLprq//r6rH5fV32+gr4O/dztMbiP7LZcr2Lsvij9WHyMlVVUDb2ysx6SJwYwfd2eCdXmNgmXf72Tj36pFi/oP9WX2h2PR01P/Z668tJINKw4DqjaPImDXXHWtHu3drEXALgitQATtAt5d3UiKSefCmXgRtGuwPsP9sXEwIyutgP2bzzF8cjd1DwmA3gM7MuWxPvy98ggL5/1HZGgSL7w1CkOj1u3mYWVlzCNTezL14R6EhyezbUcYhw7HkJiYw48/7WPZLwfo1bM9I0cE4OvjiJGR7i0FdFKpBFdHS1wdLXlgcPP6xbcmpVJJfn4piUm5JCXlkpiUQ1JSLvEJ2RQUlAFgYqzH5EndGDe2K4Z3qFtKSXEFX7z7L2eOxwEwc9ZApj7RV2OC402rjlKYV4q9syUDHuik7uEIN1FXGtOhk6taxyHcPf6M+rrVs+FFRUXYOvzWqvtUFxG0C7QPcGbXn8eIEZNRNZpMS8aDM3rzy/ytrP/1MIPGdkFbRzP+hB97bhA6OjJW/3KIvdvDiQpL4smXhtCzvzfa2q27bLlEIiEw0JnAQGdeenEo+/dfYNuOcGJi0jl85CKHj1wEVB1UbG1NsLU1xd7OFCdnS5wcLXB2ssTS0kitQWhJSQVx8VnExWURn5BNYmIOScm5FBdXNLq9iYk+D03uxrgHu2BwizXwzaVUKjl3MoH/fb2NlMRcdPW0efOTcfQd5HNHXq8lcjMLWffLQQAefXkoWq382RJaV13Q3t7fSb0DEe4aeoa66LVyQqJKfu+0gxU17a1Ek2rDmis7NY+1i3ex4/fDVFVU49jell+Oz1X3sISbKC0uZ0a/eZSVVODT1ZX3Fj2KhQbUGNeJCkvmyw/Xk5lWAICZhSHDHujEiHFdaOd0Zzt8xCdksW17OAcPRZObW3LTbQ0MdHBytMDJyRInJwucHC1xdrbAsZ0FOq14IKRQKElPLyAuPpO4uCxVoB6fRWZmUaPbSyRgb2+Gs7MlLs5WuNReu7tbo3uHyqFKSyrZszWUzWtPkZKomthqbWvCx98+THsv+zvymrdKqVRyYEsoP87dRHFBGc7tbVny32vIWrnTj9C6XhryObGhiega6DDumcFMfH4oJs1cf0G48zQpbrmTY9Gk3/N2iaC9ldxNH4qki+ls+HEPu9cco6ZaDqhKZJ757CF8gj3UPDqhKWcOxzDvldWUFldgYWPMez9Mx0eDOjOUllSw9vdj7Nx0jryrgudOwW6MGt+VXgNaP/t+rfLyKrKyisjMKiIjo5C09HySk/NITs4lLb2gfkLrtSQSsLM1xcnJEmNjPeS13WBUF+U1Pyvqu8Uorrm/btvSskoqKqobfS0bGxM83G3w8LDB1UUVoDs6Wtyx4Pxal+Oy2LL2FHu3h1NeVgWAvoEOQ0YHMu3JfrfVwrM15WUXs/ij9YTsjgLAw8eBdxY8gqO7jZpHJjQlNjSRxW+tJubsZQC0dbToPiKAYVN703WgD7Im1l8Q7ixNiltE0N48ImhvJZr+oSgtKuPA+lPs/utYg57sAb07MPX10XTq660xNatC01IvZzP3+VUkxmaipS3j2ffGMPqRnhr1b1hTI+fkkVi2bTjD6ZBL1H3TmJobqLLvY7vg6HLzvut3QnW1nLS0fJKSc0lOySM5SXWdlJxLSUnrd4/R1pbh5mqNh4eNKkh3t8Hd3aZV+6g3l7xGQcihGDavPUnY6cv19zu7WfHg5G4MHhWAgYasLHptdl1LW8bU5wfz0LMDRVnMXUSpVHJ8exh/fruV2LArayRY2pkx+KEeDJ3aCydPOzWO8P6lSXGLCNqbRwTtrUQTPxQKhYKwIzHsWn2Uo1vPUVWb8ZPKpHQf5s/EF4bh18NTzaMUWqq8tJLv313LoW3hAAwe14Un3x6NuQa27cxML2DHpnPs3HyO3Ozi+vsDg1zrs++tWZbSEkqlkvyCMpKTc0lOzqO8ogqZTHrlIr1yW0tL2vAxmRSZTFK/nZaWDJlMgo6uNg72Zmot41AqlSQn5nJk33m2rjtDTpaqNEcqldCzvzcPTg4mMEizVqtsLLv++pdTcPPWjHIdoWXiI5PZ9dcx9q09TlFeaf39HYPdGTa1N/3GB2Fo3Dor+ApN06S4RQTtzSOC9laiSR+KjMQcdv91jN1/h5BVu/gKgIu3A8Om9mLQ5B6Ya1AdtNBySqWSdcsPseLrbSgUSvQMdBj/WF8mPtVPI//zk9coOHk0lm0bz3DqaGx99t3EVJ+hD3Ri5LguOLlaqXeQdzmlUkl6aj5hpy/XXhIalCmZmhswclwXRk8IwsbOVI0jvZ5SqWT/5nP8OHcTJYXlIrt+j6ququHEzjB2/xXCqb2RKOQKAHT1ten9QBeGTe1NQJ8OSKVizsKdpElxiwjam0cE7a1EnR8KpVLJpfAkTu6K4PjOMGJDr5yCNDTRZ8CEbgx7pDcdOrtoVDZNaD2RpxP4ed5/XAxPBsDYzIApswbywLRe6GpAb+3GZGUUsnPzOXZsOktO1pXsu62DGR39HPH2a0dHf0fcO9ipPQuv6bIyCgk7c5mwUwmEnblMVkZhg8e1dWT4BjgzbEwn+g7x0cj3My+7mMUfridkj8iu309yMwrY989xdv11jOTYjPr7bZ0tGTKlJwMmBOPY3k7833UHaFIwK4L25hFBeytp6w9FRVkloYeiObEznJO7I8jNKKh/TCKR0Lm/N0On9qbXqE7o3mS5d+HeoVQqObYrkt++20lyfBYAVnamTHtpCEMnBGnspC95jYJTIZfYvuEMJ4/GXjdJVFtbRntve7z92uHt50hHf0ds7Ezv6//E83JKCD97mdDaID2tdoXUOjKZFG9/RwK7utIp2I2Ofo7o6GpeoA6NZ9cfeWEIk58ZILLr9xGlUkn0mQR2/XmUgxtOUXZV+1MrezM69etIp37edOrnjZW9uRpHeu/QpGBWBO3NI4L2VnKnPxTyGjmXwpOJDLlI6OFowo7E1Neog6q3aZf+Hek+PIDgIf5Y2GrWaW+h7chr5OzdeJY/Fu0mO70AAEd3a2a8Opw+I/w1OtgtLank4vlULkSmEB2RSnRkCoW1CwtdzcLSCG//2my8nyMdfBzQu4cPTosKygg7e6XcJSkhp8HjUqkEz44O9UG6b6DTXfF+XJtdb+/bjtnzHxLZ9ftcRVklx7aGsuefECKOXaS6sqbB447tbenUryOd+3ckoHcHjM3EaqstoUnBrAjam0cE7a2ktT8UleVVxJxNICIklqjjsZw/FU9FacPOFjZOlvQYHkC3YQEE9OqAjoaWQQjqUVVZzdY/Q1jz436K8lWTvjz9HXn89ZF07n13TECuq8+OjkipD+TjLmYgr62BrSOVSnBrb4u3fzu8fR2xdTDD3MIQMwsjjE30NPpARalUUlJcQXZmETlZReRkFpGdWUh2VjE5WUVkZxSSkpTb4DkSCbh72hEY5EpgkBv+nZ0xNGr7bjQtJbLrQnNVllcRdfISoYeiCT0UzaWwxAZn46RSCR4BznSuzcT7dm8vzi43kyYFsyJobx4RtLeS2/lQVFVWc/l8KrFhiVwKSyI2LJHLF1Lre6jXMTI1wLdHe/x6eBI8xA8XbweNDkYEzVBaXMGGFYdY/+shyktV/bgDe7bn8ddH4BXorObR3brKimouxaRzISKF6MhULkSk1HdEaYxMJsXMwrA+iFddG9beZ4SZpSFm5qrbpmYGyLRab/KbUqmkuKiC7MxCVUCeVaQKzjOLyM66cl15g17uV3N2s6ZTsCuBXd0I6OKCiZlBq42zLWWm5vPTZ5sbZte/fAg3DVnISdBsxQWlRBy7yLmDFwg9FN2gDh5ApiXFqYM97r6OuPs64e7niLuvI2bWd3ewdidoUjArgvbmEUF7K2nOh0KhUJCZlEtidBqJMWmq69rLtQE6gIWtKf49PfHt6Yl/T09cvB3EbHqhxQpyS/h76T7+Wx1S/3nrPcyPGa8Nx7m9rZpHd3uyM4uIjkohOiKFixfSycsuJj+vhNJb7LsukYCJmQFm5obo6mmjVCpRKpTIFaprhUKJQqFAqay7fc39CiUK5ZX7qqpqqLrm1P6NmJjqY21ripWNCda2JljZmtTfdna1xsJKMxY7ulVKpZKkS5kc2x1FyJ4oYiNSAFTZ9ReHMPlpkV0XWi4nPZ/Qw6osfOjBC+TUlgRey9zGBHc/Jzz8nHDzdcTdzxFHD1uNnevTFjQpmBVBe/OIoL2V1H0o8nLzqCpVkHE5m4ykHFLjs0iLz6q9zqSyvPGMmrG5IZ6BzrQPdMGz9mLrbCky6UKry0zNZ/Wi3ezdeAaFQolUKmHw+K5Me2kotu3urQleVVU1FOSVqi75peTnllCQV0p+XgkFeWW116rHCvNLuVPfhqZmBqpA3MakkaDcFCtrY43t8tMScrmCC+cSCdkTxfE9UaQlXinvkUgkBHR359n3HxTZdaFVKZVKslPziI9MIT4qhfioZBIiU0hLyKaxUEdHTxsHN2tsna2wdbbCztmy9toKW2dLjEzvzrNZzaVJwawI2ptHBO2tpO5DMcTqcWTKG3dp0NbRwtHTDhcvB1y87XH2csDD3wlbJxGgC20rMTaD3xbsrF/ABsDVyw7/bu4EdPPAL9gNMw1Zyr4tyOUKigrKaoP7Uqqra5BKJEikEqRSKVJp7W2JBKlMgkQiQVr7WN39qm1VF4lEgra2DHNLo3sqIL+Ryopqzh2N5fjeKI7vPU/hVYvnaOto0bm3J72G+tJtYEeNXABMuHeVl1RwOTqN+IjkK8H8+dTr5oldy8jUANvaQN7W0QJzW1NMLY0wtTTGxNIIM0tjTK2MMDDW18j/v2uqayjMLam9FJOfWUReZiF5mYXkpucjl9bwwc8vaEQwK4L25hFBeyup+1AMNp+Jvp4BNk6W2LlYYe9qTTt3G9p52NLO3QY7F6v7+nScoHkunEvktwU7CQu5dN1jzu1tCejujn831UUEW8LVigvKOHngAiG7ozh9OKbBmUQjE326DexIzyG+dO3bAX1DXTWOVBAaUigUZFzOIe1yNpmJOWQm55KZlENGkup2wVUrNzdFS1uGiYURplbGmJgbom+kh56BLnoGOugZ1l4b6KJnoIuugQ56+jpIZVKkMtUBv0x65bZUJkUiUbXClVfLqamRU1MtRy6XI6+WU11ZQ0VZFRVllbUX1e3ykgpKCsooKSyjuKCMkoLSBm0zG6NrImNzwlKNCGZF0N48ImhvJXUfioSYRJzbO4rac+GuU5BbQsTJ+PrL5YsZ123j5G6Dfze3+iDeUrQWve9kpuZzfI+qPj3iVEL9apYA1vZm9BziS8+hvvgFuYladeGuVVFaSWZKLhn1AX0uhbnFFOYU12euC3NLmszWq5tUKsHYwghTSyPMrU2wsDXFwtYUS3sz9E21GTVtoEYEsyJobx4RtLeSe+lDIQgAhXmlRJ66EsQnxGRcVxfaztWqPoD37+aO1X2+6NG9Qi5XkJNeQFpiLmmJOaQl5ZKemEtKfHb9wl113Lzt6THYh15DffHwaSf+/YX7SmV5FUV5JRTUBvPFeSWUlzbMgtddV5aqbleWVyGX105cVyhUE9mv+lmpVCLTkiHTkqGlJUNLW4ZUS6q6raNVn7nXN9S9ktE30sPI1ABjMwOMzAwwNDHA2NwQY3NDZLLGk4iaFLeIoL15RNDeSu6lD4UgNKa4oIzI0wn1QXzc+bTrgnh9Q12s7c2wcTDDyt4UG3tzrB3MsLY3xdreHCs7U41dmfN+U1MtJyst/0pgnphLem2AnpGc12hHK1Bl7ny6utJrqC89Bvti72zZxiMXBKE1aFLcoklB+6FDh/j66685c+YM6enpbNiwgXHjxt30OQcPHmT27NlERUXh4ODAW2+9xaxZsxpss27dOj744APi4uLw8PDg888/Z/z48bf0u4j/PQVBaBZjMwNV6cMQXwBKisqJqg3iw0/GExeVSnlpJUmXMkm6lHnD/ZhbGWFlb4aNvZnq2sEMa3vVxcrOFCMTfXT1tUXGtgUUCgXlpZWUFFVQWlROaXEFpcWq66L8UtKT8uoD9MzU/AalLdfS0pZh72SJvYslDi6WOLhY4eBiiYdPu/tqgrIgCPeX0tJSAgMDefzxx5k4cWKT2yckJDBq1Ciefvpp/vjjD44ePcrzzz+PtbV1/fNDQkKYMmUKc+fOZfz48WzYsIGHHnqII0eO0L1792aPTWTaW4kmHbEKgjpUlFeRk15AVloB2emFZKfnq67TCshKzycnvbBZiwiBKpurZ6CLgZHqFLCBoS76dbeN9FQ/X3UxMNLF088R1w52d/i3bFtZafmcP3OZ8rIqVQBeVE5pSQWlRbXBeFFF7c+qwLyspLLR1nY3oqunjb1zbWDurArM7WsDdCs70xueVhcE4e6nSXFL3Vgy0jLvSKbdzsG2Rb+nRCJpMtP+9ttvs3nzZi5cuFB/36xZswgLCyMkJASAKVOmUFRUxPbt2+u3GTFiBObm5vz111/NHo/ItLeSuv8oi4puvDKjINzrTKz0MLGyo33A9cGzUqmkKL+MnMxCcjMKycksJCe9kJyMAtXtjCLysopUf0sKqCqq4Fb+nB5+fjCTnx7Qer+MBjgbcoFv3/r7lp8n05JhbKKHvrEehkZ6GBjpYWSij62jBXZO5tg5WWDvZIm5tfENJ82Xlpbc7vAFQdBgdfGKJuVuJzk8jhat2yK3BlWy6Nr4TFdXF13d2+9qFRISwrBhwxrcN3z4cJYvX051dTXa2tqEhITw2muvXbfN999/f0uvJYL2VpKbq1o8xMnJSc0jEYT70543FvHUG+oehSAIwt2luLgYU1P1dgLT0dFBBz2OsO2O7N/IyOi6+Oyjjz7i448/vu19Z2RkYGvbcFVxW1tbampqyMnJwd7e/obbZGRc36XtZkTQ3kosLCwASEpKUvuH/15VVFSEk5MTycnJaj+Vd68S7/GdJd7fO0+8x3eeeI/vvLZ4j5VKJcXFxTg4ONyR/d8KPT09MnLSqaqqujP7N9C9bp5Ua2TZ61y777qzF1ff39g2tzp3SwTtraTuFLOpqan4ErvDTExMxHt8h4n3+M4S7++dJ97jO0+8x3fenX6PNSnJaG5ppu4htIidnd11GfOsrCy0tLSwtLS86TbXZt+bImYZCYIgCIIgCEIL9OzZk927dze4b9euXQQFBaGtrX3TbXr16nVLryUy7YIgCIIgCIIAlJSUcOnSpfqfExISCA0NxcLCAmdnZ+bMmUNqaiqrVq0CVJ1iFi9ezOzZs3n66acJCQlh+fLlDbrCvPLKK/Tr148vv/ySsWPHsmnTJvbs2cORI0duaWwi095KdHV1+eijj1q1RkpoSLzHd554j+8s8f7eeeI9vvPEe3znifdYfU6fPk3nzp3p3LkzALNnz6Zz5858+OGHAKSnp5OUlFS/vZubG9u2bePAgQN06tSJuXPnsmjRogY93nv16sWaNWtYsWIFAQEBrFy5kr///vuWerSD6NMuCIIgCIIgCBpPZNoFQRAEQRAEQcOJoF0QBEEQBEEQNJwI2gVBEARBEARBw4mgXRAEQRAEQRA0nAjaW8GSJUtwc3NDT0+Prl27cvjwYXUP6Z5y6NAhxowZg4ODAxKJhI0bN6p7SPeUefPmERwcjLGxMTY2NowbN46YmBh1D+ue8uOPPxIQEFC/UErPnj3Zvn27uod1z5o3bx4SiYRXX31V3UO5p3z88cdIJJIGFzs7O3UP656SmprKo48+iqWlJQYGBnTq1IkzZ86oe1iChhBB+236+++/efXVV3nvvfc4d+4cffv2ZeTIkQ3aAQm3p7S0lMDAQBYvXqzuodyTDh48yAsvvMDx48fZvXs3NTU1DBs2jNLSUnUP7Z7h6OjI/PnzOX36NKdPn2bQoEGMHTuWqKgodQ/tnnPq1CmWLVtGQECAuodyT/L19SU9Pb3+EhERoe4h3TPy8/Pp3bs32trabN++nfPnz/Ptt99iZmam7qEJGkK0fLxN3bt3p0uXLvz444/193Xs2JFx48Yxb948NY7s3iSRSNiwYQPjxo1T91DuWdnZ2djY2HDw4EH69eun7uHcsywsLPj666958skn1T2Ue0ZJSQldunRhyZIlfPbZZ3Tq1Invv/9e3cO6Z3z88cds3LiR0NBQdQ/lnvTOO+9w9OhRcbZeuCGRab8NVVVVnDlzhmHDhjW4f9iwYRw7dkxNoxKE21NYWAiogkqh9cnlctasWUNpaSk9e/ZU93DuKS+88AKjR49myJAh6h7KPSs2NhYHBwfc3Nx4+OGHiY+PV/eQ7hmbN28mKCiIyZMnY2NjQ+fOnfn555/VPSxBg4ig/Tbk5OQgl8uxtbVtcL+trS0ZGRlqGpUgtJxSqWT27Nn06dMHPz8/dQ/nnhIREYGRkRG6urrMmjWLDRs24OPjo+5h3TPWrFnD2bNnxRnOO6h79+6sWrWKnTt38vPPP5ORkUGvXr3Izc1V99DuCfHx8fz44494enqyc+dOZs2axcsvv8yqVavUPTRBQ2ipewD3AolE0uBnpVJ53X2CcDd48cUXCQ8P58iRI+oeyj3Hy8uL0NBQCgoKWLduHTNnzuTgwYMicG8FycnJvPLKK+zatQs9PT11D+eeNXLkyPrb/v7+9OzZEw8PD3777Tdmz56txpHdGxQKBUFBQXzxxRcAdO7cmaioKH788UdmzJih5tEJmkBk2m+DlZUVMpnsuqx6VlbWddl3QdB0L730Eps3b2b//v04Ojqqezj3HB0dHdq3b09QUBDz5s0jMDCQhQsXqntY94QzZ86QlZVF165d0dLSQktLi4MHD7Jo0SK0tLSQy+XqHuI9ydDQEH9/f2JjY9U9lHuCvb39dQfxHTt2FI0thHoiaL8NOjo6dO3ald27dze4f/fu3fTq1UtNoxKEW6NUKnnxxRdZv349+/btw83NTd1Dui8olUoqKyvVPYx7wuDBg4mIiCA0NLT+EhQUxLRp0wgNDUUmk6l7iPekyspKLly4gL29vbqHck/o3bv3de12L168iIuLi5pGJGgaUR5zm2bPns306dMJCgqiZ8+eLFu2jKSkJGbNmqXuod0zSkpKuHTpUv3PCQkJhIaGYmFhgbOzsxpHdm944YUX+PPPP9m0aRPGxsb1Z45MTU3R19dX8+juDe+++y4jR47EycmJ4uJi1qxZw4EDB9ixY4e6h3ZPMDY2vm4OhqGhIZaWlmJuRit64403GDNmDM7OzmRlZfHZZ59RVFTEzJkz1T20e8Jrr71Gr169+OKLL3jooYc4efIky5YtY9myZeoemqAhRNB+m6ZMmUJubi6ffvop6enp+Pn5sW3bNnFk3IpOnz7NwIED63+uq52cOXMmK1euVNOo7h117UoHDBjQ4P4VK1bw2GOPtf2A7kGZmZlMnz6d9PR0TE1NCQgIYMeOHQwdOlTdQxOEZktJSWHq1Knk5ORgbW1Njx49OH78uPj/rpUEBwezYcMG5syZw6effoqbmxvff/8906ZNU/fQBA0h+rQLgiAIgiAIgoYTNe2CIAiCIAiCoOFE0C4IgiAIgiAIGk4E7YIgCIIgCIKg4UTQLgiCIAiCIAgaTgTtgiAIgiAIgqDhRNAuCIIgCIIgCBpOBO2CIAiCIAiCoOFE0C4IgiAIgiAIGk4E7YIgCIIgCIKg4UTQLgiCIAiCIAgaTgTtgiAIdwFvb29++eUXdQ9DEARBUBMRtAuCIGi48vJyLl26RGBgoLqHIgiCIKiJCNoFQRA0XGRkJEqlEj8/P3UPRRAEQVATEbQLgiBoqNDQUAYNGkSfPn1QKBQ4OzuzYMECdQ9LEARBUAMtdQ9AEARBuF5cXBz9+/fnzTffxNLSEoVCQXBwMLNnz6Zv374EBQWpe4iCIAhCGxKZdkEQBA00a9YsJkyYwPvvv09SUhI9e/bkrbfewszMjMOHD6t7eIIgCEIbE0G7IAiChsnIyGDfvn3MmjULuVxOREQEnTt3RiqVoqWlhY6OjrqHKAiCILQxEbQLgiBomOPHj6NQKOjUqRPR0dGUl5fTqVMnkpOTycnJoXfv3uoeoiAIgtDGRNAuCIKgYaqqqgCoqKggNDQUR0dHLC0t+emnn/Dx8aFTp07qHaAgCILQ5sREVEEQBA3To0cPtLS0+PTTTykpKcHDw4MlS5awYMEC9u/fr+7hCYIgCGoggnZBEAQN4+zszK+//srbb79Neno6WlpalJWVsW3bNrp166bu4QmCIAhqIFEqlUp1D0IQBEFonIWFBb/++ivjxo1T91AEQRAENRI17YIgCBoqJSWF/Px8/P391T0UQRAEQc1E0C4IgqChIiIiMDQ0xN3dXd1DEQRBENRMlMcIgiAIgiAIgoYTmXZBEARBEARB0HAiaBcEQRAEQRAEDSeCdkEQBEEQBEHQcCJoFwRBEARBEAQNJ4J2QRAEQRAEQdBwImgXBEEQBEEQBA0ngnZBEARBEARB0HAiaBcEQRAEQRAEDSeCdkEQBEEQBEHQcCJoFwRBEARBEAQN93+PLotE+Y/aCQAAAABJRU5ErkJggg==", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "plot = u_NT(tau_pt, phi_arr)[reorder_mu]\n", "\n", @@ -3710,31 +3595,10 @@ }, { "cell_type": "code", - "execution_count": 73, + "execution_count": null, "id": "24b6b4f9", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 73, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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tnVrOia33nqrcf7559ueX3755cakSZOM8847z3j11VcNwzCML7/80pBkfPzxx7Z259bTvHlzY+rUqTUeE2eOf33Wr+t70BXvcUeOgyPOnDljlJaWGp07d7Z7D1X3c3TE888/b0gysrOza2z3+eefG5IcejhSx5EjRwxJxsyZMx2utXPnzsYVV1xRafmhQ4cMScbcuXMd7guAezCFBqhBQECAHn30UW3ZskVvv/22S/s+deqU1qxZo7Fjx9Y4n/nkyZPatGmTrr/+ejVv3ty23M/PT8nJyTp48KD27Nljt851111XbX/nvlZcXKxPP/1U11xzjYKCgnTmzBnbY9SoUSouLtbGjRsdrrcqjm6jYn83b96sa6+9VoGBgbY+WrRoodGjRzu13VtuucXu+dixY+Xv76/PP/+8Tse1KldffbXd8169eqm4uFh5eXm1rjt8+HB9//332r9/v4qLi/XFF19o5MiRGjp0qDIyMiT9MipvtVo1aNCgavu55JJLtHDhQj366KPauHGjTp8+bfe6M8e/KnVZ35n3oKve47Udh+qcOXNGc+fOVffu3RUQECB/f38FBARo79692r17t0N91CYrK0thYWGKioqqsV1sbKw2b97s0CMyMtIltVWlpik4nrgTFAB7BHigFjfeeKP69u2rGTNmOBwIHHHs2DGVlZWpffv2tbYzDKPKO45UXMDPnSJQ091Jzn0tPz9fZ86c0bPPPqumTZvaPUaNGiVJOnr0qMP1VsXRbVTsb3l5udq2bVupn6qW1eTc9v7+/mrVqpXy8/PrdFyr0qpVK7vnFdOefv7551rXvfzyyyX9EtK/+OILnT59WsOGDdPll1+uTz/91PbawIED1axZs2r7WbJkicaPH69//etfio+PV1hYmG677Tbl5uba9sPR41+VuqzvzHvQVe/x2o5DdVJSUvTwww9rzJgx+uCDD7Rp0yZt3rxZvXv3dujn6IisrCz16dOn1nbNmzdXnz59HHqcO/3GVSr+jZzrp59+kiSFhYW5ZbsAHMcceKAWFotFjz/+uEaMGKEFCxa4rN+wsDD5+fnp4MGDNbY777zz1KRJE+Xk5FR67dChQ5Kk8PDwSjVX59zXzjvvPNtI51133VXlOp06dVJQUJBD9VbF0W1UtLVYLFWGrtqCWFXtf/Ob39ienzlzRvn5+WrVqlWdjqurtW/fXhdddJE++eQTdezYUXFxcWrZsqWGDx+uKVOmaNOmTdq4caNmz55dYz/h4eFKS0tTWlqasrOztXz5ck2bNk15eXlauXKlU8e/KnVZ39n3oCve47Udh+osWrRIt912m+bOnWu3/OjRo2rZsmW16znKMAzt2LFDf/jDH2ptu2bNGg0dOtShfvfv36+OHTvWs7rKevbsqbfeektnzpyxmwdf8aHeiu/BAOA5BHjAAZdffrlGjBihOXPm1PoncEc1a9ZMl112md555x099thj1YbF4OBg9e/fX++++67+/ve/20Ziy8vLtWjRIlsIrKugoCANHTpU27ZtU69evWoc1XOk3qpGoJ3ZRnBwsC655BK9++67evLJJ23TaE6cOKEPPvjAqX1744037O7e8vbbb+vMmTMaMmSI24/r2Woalb/88sv19ttvKyoqSldeeaUk6aKLLlJ0dLQeeeQRnT592jZS74jo6Gjdfffd+vTTT/Xll19Kcu74V6W+69fGHT+Lqo5DdSwWi+1nVOHDDz/Ujz/+qAsvvNC2zJm/rpztp59+0s8//1zjL0kVKqbQOMJdU2iuueYavfjii1q6dKndh4dfffVVRUZGqn///m7ZLgDHEeABBz3++OOKjY1VXl5epdv81dW8efM0aNAg9e/fX9OmTdOFF16ow4cPa/ny5XrhhRfUokULSVJqaqpGjBihoUOH6v7771dAQIDS09O1Y8cOvfXWW/Wek/r0009r0KBBGjx4sP7whz+oY8eOOnHihPbt26cPPvhAn332mcP19uzZ09bn+PHj1bRpU3Xp0sXhbUjSX//6V40cOVIjRozQn/70J5WVlenxxx9XcHCw7c/4jnj33Xfl7++vESNG2O5C07t3b40dO7ZBjmuF6o5JixYtNHz4cKWnp+vo0aNKS0uzrTN8+HC98sorOu+88+x+CTlXQUGBhg4dqptvvlldu3ZVixYttHnzZq1cuVLXXnutrZ0zx78q9V2/NvX9WTh6HKpy1VVXaeHCheratat69eqlzMxMPfnkk5Wmi9X0c6yJ1WpV06ZNlZGRoV69eql3794KDQ2tsm2LFi1sd66pj48++kgnT57UiRMnJP1yF6F///vfkqRRo0bZ7pu/Zs0aDR8+XI888ogeeeQRSVJSUpJGjBihP/zhDyosLNSFF16ot956SytXrtSiRYu4BzzgDTz7GVrA+5x9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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "plot = error_NT\n", "\n", @@ -3750,19 +3614,10 @@ }, { "cell_type": "code", - "execution_count": 74, + "execution_count": null, "id": "4b991f63", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "At tau = 1.0\n", - "Max pointwise error = 0.011360567053377152\n" - ] - } - ], + "outputs": [], "source": [ "print(\"At tau = \" + str(tau_pt))\n", "print(\"Max pointwise error =\", np.max(error_NT))" @@ -3889,7 +3744,7 @@ }, { "cell_type": "code", - "execution_count": 75, + "execution_count": null, "id": "aaae37fc", "metadata": {}, "outputs": [], @@ -3905,7 +3760,7 @@ }, { "cell_type": "code", - "execution_count": 76, + "execution_count": null, "id": "88090b2a", "metadata": {}, "outputs": [], @@ -3924,7 +3779,7 @@ }, { "cell_type": "code", - "execution_count": 77, + "execution_count": null, "id": "d345c6d3", "metadata": { "tags": [ @@ -3959,22 +3814,10 @@ }, { "cell_type": "code", - "execution_count": 78, + "execution_count": null, "id": "96307082", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Flux up\n", - "Max pointwise error = 1.0403233829947567e-10\n", - "\n", - "Flux down (diffuse only)\n", - "Max pointwise error = 3.907718593154641e-10\n" - ] - } - ], + "outputs": [], "source": [ "print(\"Flux up\")\n", "print(\n", @@ -4007,7 +3850,7 @@ }, { "cell_type": "code", - "execution_count": 79, + "execution_count": null, "id": "234815ae", "metadata": {}, "outputs": [], @@ -4019,7 +3862,7 @@ }, { "cell_type": "code", - "execution_count": 80, + "execution_count": null, "id": "ecd9552a", "metadata": {}, "outputs": [], @@ -4057,24 +3900,10 @@ }, { "cell_type": "code", - "execution_count": 81, + "execution_count": null, "id": "1c942f45", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Without delta-scaling, i.e. f = 0\n", - "Flux up: Max pointwise error = 0.0008906271220534556\n", - "Flux down: Max pointwise error = 0.0009874152376756484\n", - "\n", - "With delta-scaling, f = 0.18530201888518416\n", - "Flux up: Max pointwise error = 0.00010464614200600408\n", - "Flux down: Max pointwise error = 9.899668916402149e-05\n" - ] - } - ], + "outputs": [], "source": [ "print(\"Without delta-scaling, i.e. f =\", 0)\n", "print(\n", @@ -4170,24 +3999,14 @@ }, { "cell_type": "code", - "execution_count": 82, + "execution_count": null, "id": "458a4fd4", "metadata": { "tags": [ "hide_input" ] }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reflectance = 0.6295114218170947\n", - "Transmittance = 0.3704723847611299\n", - "Absorptance = 1.619342177533456e-05\n" - ] - } - ], + "outputs": [], "source": [ "# Example calculation\n", "flux_up, flux_down = PythonicDISORT.pydisort(\n", @@ -4385,7 +4204,7 @@ }, { "cell_type": "code", - "execution_count": 83, + "execution_count": null, "id": "e830ec06", "metadata": {}, "outputs": [], @@ -4396,7 +4215,7 @@ }, { "cell_type": "code", - "execution_count": 84, + "execution_count": null, "id": "08f6eea2", "metadata": {}, "outputs": [], @@ -4465,31 +4284,10 @@ }, { "cell_type": "code", - "execution_count": 85, + "execution_count": null, "id": "00b07927", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 85, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaEAAAGiCAYAAABOPHlsAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAcmElEQVR4nO3df2yV5f3/8dfBwqHF0zN/cU5PKKzOMxULiFQrxaxs2i7EmRkXp4IOs2QRAaVjC1L9g2rcKSP5NLpUQXBRiHPsD8Wx+IN2UYtbw6xoYy0GMXTaKWeNrjunIpxm9Pr+Ybi/HgrCKS3vntPnI7kSe9/3aa9L4Dxztfc59TnnnAAAMDDOegIAgLGLCAEAzBAhAIAZIgQAMEOEAABmiBAAwAwRAgCYIUIAADNECABghggBAMyM6gg9/vjjKikp0cSJEzVnzhy98cYb1lM6LTt37tQNN9ygSCQin8+nF154Ie28c051dXWKRCLKz8/X/Pnz1dnZaTPZIaqvr9eVV16pQCCgyZMn68Ybb9TevXvTrsmFda5fv14zZ85UYWGhCgsLNXfuXL388sve+VxY47Hq6+vl8/lUU1PjHcuFddbV1cnn86WNcDjsnc+FNR71ySef6Pbbb9d5552ngoICXX755dq9e7d33mStbpTaunWrGz9+vNu0aZPbs2ePW7FihZs0aZL76KOPrKc2ZC+99JJ74IEH3HPPPeckuW3btqWdX7t2rQsEAu65555zHR0d7pZbbnFFRUUumUzaTHgIfvjDH7qnnnrKvffee669vd1df/31burUqe6LL77wrsmFdW7fvt29+OKLbu/evW7v3r3u/vvvd+PHj3fvvfeecy431vh1b775pvv2t7/tZs6c6VasWOEdz4V1rlmzxl122WXuwIED3ujp6fHO58IanXPuP//5j5s2bZq788473T/+8Q/X1dXl/vrXv7oPP/zQu8ZiraM2QldddZVbsmRJ2rFLLrnErV692mhGw+vYCA0MDLhwOOzWrl3rHTt8+LALBoNuw4YNBjMcHj09PU6Sa2lpcc7l7jqdc+6cc85xTz75ZM6tsa+vz0WjUdfc3OwqKyu9COXKOtesWeNmzZp13HO5skbnnLvvvvvcNddcc8LzVmsdld+O6+/v1+7du1VdXZ12vLq6Wq2trUazGlldXV2Kx+Npa/b7/aqsrMzqNScSCUnSueeeKyk313nkyBFt3bpVBw8e1Ny5c3NujcuWLdP111+v6667Lu14Lq1z3759ikQiKikp0a233qr9+/dLyq01bt++XWVlZbr55ps1efJkzZ49W5s2bfLOW611VEbos88+05EjRxQKhdKOh0IhxeNxo1mNrKPryqU1O+e0cuVKXXPNNSotLZWUW+vs6OjQ2WefLb/fryVLlmjbtm2aPn16Tq1x69atevvtt1VfXz/oXK6ss7y8XFu2bNGOHTu0adMmxeNxVVRU6PPPP8+ZNUrS/v37tX79ekWjUe3YsUNLlizRvffeqy1btkiy+/PMG7HPPAx8Pl/ax865QcdyTS6tefny5Xr33Xf1t7/9bdC5XFjnxRdfrPb2dv33v//Vc889p8WLF6ulpcU7n+1r7O7u1ooVK9TU1KSJEyee8LpsX+eCBQu8/54xY4bmzp2r73znO9q8ebOuvvpqSdm/RkkaGBhQWVmZYrGYJGn27Nnq7OzU+vXr9bOf/cy77kyvdVTuhM4//3ydddZZg+rb09MzqNK54ujdOLmy5nvuuUfbt2/Xa6+9pilTpnjHc2mdEyZM0EUXXaSysjLV19dr1qxZevTRR3Nmjbt371ZPT4/mzJmjvLw85eXlqaWlRb/73e+Ul5fnrSXb13msSZMmacaMGdq3b1/O/FlKUlFRkaZPn5527NJLL9XHH38sye7f5qiM0IQJEzRnzhw1NzenHW9ublZFRYXRrEZWSUmJwuFw2pr7+/vV0tKSVWt2zmn58uV6/vnn9eqrr6qkpCTtfK6s83icc0qlUjmzxmuvvVYdHR1qb2/3RllZmRYtWqT29nZdeOGFObHOY6VSKb3//vsqKirKmT9LSZo3b96gl0t88MEHmjZtmiTDf5sjdsvDaTp6i/bvf/97t2fPHldTU+MmTZrk/vnPf1pPbcj6+vrcO++849555x0nyTU0NLh33nnHu+187dq1LhgMuueff951dHS42267LetuBb377rtdMBh0r7/+etotr19++aV3TS6ss7a21u3cudN1dXW5d999191///1u3LhxrqmpyTmXG2s8nq/fHedcbqzzV7/6lXv99dfd/v373a5du9yPfvQjFwgEvOeaXFijc1/dZp+Xl+d+85vfuH379rk//OEPrqCgwD3zzDPeNRZrHbURcs65xx57zE2bNs1NmDDBXXHFFd5tvtnq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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "#%matplotlib ipympl\n", "\n", @@ -4530,7 +4328,7 @@ }, { "cell_type": "code", - "execution_count": 86, + "execution_count": null, "id": "fbd6c6ba", "metadata": {}, "outputs": [], @@ -4542,7 +4340,7 @@ }, { "cell_type": "code", - "execution_count": 87, + "execution_count": null, "id": "fa1e2477", "metadata": {}, "outputs": [], @@ -4575,18 +4373,10 @@ }, { "cell_type": "code", - "execution_count": 88, + "execution_count": null, "id": "24032801", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Passed all tests\n" - ] - } - ], + "outputs": [], "source": [ "assert np.allclose(flux_up_1layer(tau_test_arr), flux_up_4layers(tau_test_arr))\n", "assert np.allclose(flux_down_1layer(tau_test_arr), flux_down_4layers(tau_test_arr))\n", @@ -4613,22 +4403,14 @@ }, { "cell_type": "code", - "execution_count": 89, + "execution_count": null, "id": "146bc9cf", "metadata": { "tags": [ "hide_input" ] }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "NQuad, NLeg, NLoops, NLayers = 16 16 16 4\n" - ] - } - ], + "outputs": [], "source": [ "print(\"NQuad, NLeg, NLoops, NLayers =\", NQuad, NLeg, NLoops, NLayers)" ] @@ -4643,35 +4425,14 @@ }, { "cell_type": "code", - "execution_count": 90, + "execution_count": null, "id": "b22d2337", "metadata": { "tags": [ "hide_input" ] }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Intensity\n", - "14.6 ms ± 370 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", - "\n", - "Intensity with blackbody emission\n", - "16.8 ms ± 860 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", - "\n", - "Intensity with blackbody emission and Lambertian BDRF\n", - "16.9 ms ± 750 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", - "\n", - "Only fluxes\n", - "1.79 ms ± 76.2 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)\n", - "\n", - "Only fluxes with delta-M scaling\n", - "1.81 ms ± 58.4 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)\n" - ] - } - ], + "outputs": [], "source": [ "print(\"Intensity\")\n", "%timeit PythonicDISORT.pydisort(tau_arr, omega_arr, NQuad, Leg_coeffs_all, mu0, I0, phi0)\n", @@ -4703,33 +4464,10 @@ }, { "cell_type": "code", - "execution_count": 91, + "execution_count": null, "id": "841424b1", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Time taken to first initialize the parallelization\n", - "1.68 s ± 0 ns per loop (mean ± std. dev. of 1 run, 1 loop each)\n", - "\n", - "16 streams:\n", - "Intensity\n", - "18.2 ms ± 526 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", - "\n", - "Intensity with parallelization\n", - "22.1 ms ± 1.19 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n", - "\n", - "48 streams:\n", - "Intensity\n", - "147 ms ± 10.1 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)\n", - "\n", - "Intensity with parallelization\n", - "121 ms ± 3.48 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n" - ] - } - ], + "outputs": [], "source": [ "Leg_coeffs_all_p = np.tile(g ** np.arange(48), (NLayers, 1))\n", "\n", @@ -4775,7 +4513,7 @@ }, { "cell_type": "code", - "execution_count": 92, + "execution_count": null, "id": "b5e84dd4", "metadata": {}, "outputs": [], @@ -4808,33 +4546,14 @@ }, { "cell_type": "code", - "execution_count": 93, + "execution_count": null, "id": "558d759b", "metadata": { "tags": [ "hide_input" ] }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Intensity\n", - "241 µs ± 3.2 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)\n", - "\n", - "Intensity with NT corrections\n", - "2.9 ms ± 91.8 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", - "\n", - "Intensity with blackbody emission\n", - "575 µs ± 18.1 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)\n", - "\n", - "Up and down fluxes respectively\n", - "82.3 µs ± 2.37 µs per loop (mean ± std. dev. of 7 runs, 10,000 loops each)\n", - "103 µs ± 11.1 µs per loop (mean ± std. dev. of 7 runs, 10,000 loops each)\n" - ] - } - ], + "outputs": [], "source": [ "print(\"Intensity\")\n", "%timeit u(tau_test_arr[Ntau//2], phi_arr[Nphi//2])\n", @@ -4889,7 +4608,7 @@ }, { "cell_type": "code", - "execution_count": 94, + "execution_count": null, "id": "735a52d5", "metadata": {}, "outputs": [], @@ -4915,7 +4634,7 @@ }, { "cell_type": "code", - "execution_count": 95, + "execution_count": null, "id": "84d2272a", "metadata": {}, "outputs": [], @@ -4935,7 +4654,7 @@ }, { "cell_type": "code", - "execution_count": 96, + "execution_count": null, "id": "7b1d17ad", "metadata": {}, "outputs": [], @@ -4969,7 +4688,7 @@ }, { "cell_type": "code", - "execution_count": 97, + "execution_count": null, "id": "e672f708", "metadata": {}, "outputs": [], @@ -4979,7 +4698,7 @@ }, { "cell_type": "code", - "execution_count": 98, + "execution_count": null, "id": "c61dda6e", "metadata": {}, "outputs": [], @@ -5038,7 +4757,7 @@ }, { "cell_type": "code", - "execution_count": 99, + "execution_count": null, "id": "1a1ccbb9", "metadata": {}, "outputs": [], @@ -5060,30 +4779,10 @@ }, { "cell_type": "code", - "execution_count": 100, + "execution_count": null, "id": "fb2fe052", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Max pointwise differences\n", - "\n", - "Upward (diffuse) fluxes\n", - "Difference = 6.119595742215544e-05\n", - "Difference ratio = 0.00710751425204525\n", - "\n", - "Downward (diffuse) fluxes\n", - "Difference = 3.5543030722173796e-05\n", - "Difference ratio = 0.00025785583697917995\n", - "\n", - "Direct (downward) fluxes\n", - "Difference = 3.0354282554156953e-07\n", - "Difference ratio = 1.1764391213974355e-06\n" - ] - } - ], + "outputs": [], "source": [ "print(\"Max pointwise differences\")\n", "print()\n", @@ -5143,7 +4842,7 @@ }, { "cell_type": "code", - "execution_count": 101, + "execution_count": null, "id": "7b7263c0", "metadata": {}, "outputs": [], @@ -5159,7 +4858,7 @@ }, { "cell_type": "code", - "execution_count": 102, + "execution_count": null, "id": "afa9294f", "metadata": {}, "outputs": [], @@ -5174,19 +4873,10 @@ }, { "cell_type": "code", - "execution_count": 103, + "execution_count": null, "id": "a1a94c0e", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "At tau = 1.2019404391941784\n", - "Max pointwise difference = 0.008274320004225899\n" - ] - } - ], + "outputs": [], "source": [ "print(\"At tau = \" + str(diff_tau_pt))\n", "print(\"Max pointwise difference =\", np.max(diff[:, max_diff_tau_index, :]))" @@ -5194,31 +4884,10 @@ }, { "cell_type": "code", - "execution_count": 104, + "execution_count": null, "id": "3babf027", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 104, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAvAAAAImCAYAAAA1wb5IAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABjl0lEQVR4nO3dfVxUdd7/8fcIAt4xhgTCBkpl3qGoUApqq91QVJbVVba1ZK1aZv3K5WpLtxvRrdi2MtsKV9vK7mXbsuzKNMpSS61EMe3GtLUgBUlSEEpAmN8fxqwjdzMwN+fMvJ4+5vHwnDnnO59z5ua8z5fvnLHYbDabAAAAAJhCJ18XAAAAAMB5BHgAAADARAjwAAAAgIkQ4AEAAAATIcADAAAAJkKABwAAAEyEAA8AAACYCAEeAAAAMBECPAAAAGAiBHgAAADARAjwgBstWbJEFovFfgsLC1Pv3r01fvx45eTkqKysrNnlv/vuO4f5eXl5Gjx4sLp06SKLxaLCwsJW5weilvadr9pcv369srOzdfDgQbfV0xHNbUtLNXpiX7qL0fZraw4dOqQ77rhD6enpOvHEE2WxWJSdne3UuqtXr9Yf/vAHDRgwQN26ddNvfvMbXXLJJSooKGiybFVVlWbOnKnY2FiFhYVp2LBhWrp0aYfaBGAuBHjAA5599llt2LBB+fn5evLJJzVs2DA9+OCDGjhwoN577z37chdeeKE2bNigmJgY+7wff/xRmZmZOuWUU7Ry5Upt2LBBp512WovzA1Vz+86Xba5fv15z5841TNBsbltaqtET+9JdjLZfW1NeXq7FixerpqZGEydOdGndhQsX6rvvvtNtt92mFStW6LHHHlNZWZlGjRql1atXOyx72WWX6bnnntOcOXP0zjvv6PTTT9fvfvc7vfzyy+1uE4DJ2AC4zbPPPmuTZPvss8+a3Pf999/b4uLibD169LCVlpa22MZHH31kk2TLy8tzan5HVFdXu62tQPfQQw/ZJNl2797t61JaZIYaj2emmhsaGmwNDQ02m81m+/HHH22SbHPmzHFq3X379jWZd+jQIVt0dLTt7LPPts97++23bZJsL7/8ssOy5557ri02NtZ25MgRl9sEYD70wANeEh8fr0ceeUSHDh3SokWLJDUdunDddddpzJgxkqRJkybJYrFo3LhxLc5vtHPnTl199dWKiopSaGioBg4cqCeffNLh8bOzs2WxWLR582b9z//8j0444QSdcsop7Wrjiy++0O9+9ztZrVZFR0frD3/4gyoqKpps89dff63f/e53io6OVmhoqOLj43XttdeqpqbGpcdtTnPDPlytr602nW0vOztbf/rTnyRJCQkJ9iFUH374oUf2748//qgbbrhBcXFxCg0N1YknnqjRo0c7/HWnuW1pqcaWhtA4U7MztTRn165duv7669WvXz917dpVv/nNbzRhwgRt27bNpf16vCeeeMJhGNvxt65du6q2trbV2tqr8THaIyoqqsm87t27a9CgQSouLrbPW7Zsmbp3764rrrjCYdnrr79ee/fu1SeffOJymwDMJ9jXBQCB5IILLlBQUJDWrl3b7P333HOPzjjjDN1888164IEHNH78eIWHhys0NLTZ+ZL05ZdfKi0tzX6C0Lt3b61atUq33nqr9u/frzlz5jg8xmWXXaarrrpK06dPV3V1dbvauPzyyzVp0iRNmTJF27Zt0+zZsyVJzzzzjH2ZrVu3asyYMYqMjNS8efPUr18/lZSUaPny5aqtrVVoaKjLj+ssZ+pzZ3tTp07VTz/9pMcff1yvv/66fSjKoEGDJLl//2ZmZmrz5s26//77ddppp+ngwYPavHmzysvLW9yG1mpsbuy7szW3pxZJ2rt3r3r16qW//vWvOvHEE/XTTz/pueee08iRI7Vlyxb179+/zf3anAkTJiglJUWStGXLFs2YMUPz589XamqqJKlr164KCQlxWMdms6m+vr7VehsFB3vvsFlRUaHNmzfrrLPOss/bvn27Bg4c2KSOoUOH2u9PS0tzqU0AJuTrPwEA/qS1ITSNoqOjbQMHDnRY/tjhAR988IFNku3VV191WK+l+eedd57tpJNOslVUVDjMv+WWW2xhYWG2n376yWaz2Wxz5syxSbLde++9TWpytY2//e1vDsvNmDHDFhYWZh8+YLPZbGeddZatZ8+etrKyshb3hbOP25zm9p0r9TnTpivttTbUw937t3v37raZM2e6tC2t1djcss7W7Ewtzjhy5IittrbW1q9fP9sf//jHNmt2xpNPPmmTZCsqKmp1ucb3ljM3Z+twdQhNc6655hpbcHCwbdOmTfZ5/fr1s5133nlNlt27d69Nku2BBx5wuU0A5sMQGsDLbDab29o6fPiw3n//fV166aXq2rWrjhw5Yr9dcMEFOnz4sDZu3OiwzuWXX97hNi6++GKH6aFDh+rw4cP2q+z8/PPPWrNmja688kqdeOKJbqvdWW3V5832PLF/zzjjDC1ZskT33XefNm7cqLq6unZtlztqbm8tR44c0QMPPKBBgwYpJCREwcHBCgkJ0c6dO/XVV1+5ZTsKCwsVERGhuLi4VpdLTk7WZ5995tQtNjbWLbW15Z577tFLL72kRx99VMnJyQ73tTZMp7X7WmsTgLkQ4AEvqq6uVnl5udtCQHl5uY4cOaLHH39cnTt3drhdcMEFkqT9+/c7rHP8lUba00avXr0cpkNDQyVJv/zyiyTpwIEDqq+v10knneTW2p3VVn3ebM8T+zcvL0+TJ0/WP//5T6WmpioiIkLXXnutSktL27V9Ham5vbVkZWXpnnvu0cSJE/XWW2/pk08+0WeffaakpKR2P0/HKyws1LBhw9pcrnv37ho2bJhTt+OH33jC3Llzdd999+n+++/XLbfc4nBfr169mh2e9NNPP0mSIiIiXG4TgPkwBh7worffflv19fUOX0DtiBNOOEFBQUHKzMzUzTff3OwyCQkJDtPH99C1p422REREKCgoSD/88INbazcjT2xnZGSkFixYoAULFqioqEjLly/XrFmzVFZWppUrV3q15vbW8uKLL+raa6/VAw884DB///796tmzZ4e3wWazafv27brpppvaXHbNmjUaP368U+3u3r1bffv27WB1LZs7d66ys7OVnZ2tP//5z03uHzJkiF555RUdOXLEYRx845d/ExMTXW4TgPkQ4AEvKSoq0u233y6r1aobb7zRLW127dpV48eP15YtWzR06NB29Q66o43jdenSRb/97W/16quv6v7771dkZKRXHteXWuqV9/R2xsfH65ZbbtH777+vjz/+uF01Hq+9NbtSi8VisdfT6O2339aePXt06qmnulzz8X766Sf98ssvTp0cNQ6hcYYnh9D85S9/UXZ2tu6+++4Wv8B96aWX6qmnntJrr72mSZMm2ec/99xzio2N1ciRI11uE4D5EOABD9i+fbt9zHBZWZnWrVunZ599VkFBQVq2bFmL48Lb47HHHtOYMWM0duxY3XTTTerbt68OHTqkXbt26a233nLqB1vc0cbx5s+frzFjxmjkyJGaNWuWTj31VO3bt0/Lly/XokWL1KNHD488rq8MGTJE0tF9OXnyZHXu3Fn9+/d3+3ZWVFRo/PjxuvrqqzVgwAD16NFDn332mVauXKnLLrusXTU2x5maO1LLRRddpCVLlmjAgAEaOnSoCgoK9NBDDzUZdtXafm1NaGioOnfurPz8fA0dOlRJSUmyWq3NLtujRw/7lWs66p133lF1dbUOHTok6ejVfP79739LOnoVqq5du2rNmjU6++yzde+99+ree++VJD3yyCO69957df755+vCCy9s8r2IUaNGSZIyMjJ07rnn6qabblJlZaVOPfVUvfLKK1q5cqVefPFFBQUF2ddxtk0A5kOABzzg+uuvlySFhISoZ8+eGjhwoO68805NnTrVreFdOnpJvc2bN+svf/mL7r77bpWVlalnz57q16+ffbyyN9o4XlJSkj799FPNmTNHs2fP1qFDh9S7d2+dddZZ9h5dTzyur4wbN06zZ8/Wc889p6eeekoNDQ364IMPNG7cOLduZ1hYmEaOHKkXXnhB3333nerq6hQfH68777xTd9xxR7tqbI4zNXeklscee0ydO3dWTk6OqqqqNGLECL3++uu6++67naq5rWFo3bt314MPPqiHH35Yv/3tb7Vjx44WA7w73XTTTfr+++/t06+++qpeffVVSf8dfmP79bKVDQ0N9uXeeustSdLKlSubHXp07JffX3/9dd11112699579dNPP2nAgAF65ZVXdNVVVzms40qbAMzFYuMdDAAAAJgGV6EBAAAATIQADwAAAHhJcXGxfXjl0KFD7cPsXMEQGgAAAMBLSkpKtG/fPg0bNkxlZWUaMWKEduzYoW7dujndBl9iBQAAALwkJibG/qOKUVFRioiI0E8//eRSgGcIDQAAAPCrtWvXasKECYqNjZXFYtEbb7zRZJnc3FwlJCQoLCxMycnJWrduXbsea9OmTWpoaFBcXJxL6xHgAQAAgF9VV1crKSlJTzzxRLP35+XlaebMmbrrrru0ZcsWjR07VhkZGSoqKrIvk5ycrMTExCa3vXv32pcpLy/Xtddeq8WLF7tcI2Pg3aShoUF79+5Vjx49mvxUPQAAgJHYbDYdOnRIsbGx6tTJ9/25hw8fVm1trUfattlsTbJZaGhok1+Dbo7FYtGyZcs0ceJE+7yRI0dqxIgRWrhwoX3ewIEDNXHiROXk5DhVU01Njc4991xNmzZNmZmZzm3IMRgD7yZ79+51+c8fAAAAvlRcXNzkF5C97fDhw4qL76b9Pza0vXA7dO/eXVVVVQ7z5syZo+zsbJfbqq2tVUFBgWbNmuUwPz09XevXr3eqDZvNpuuuu05nnXVWu8K7RIB3m8af9Y6be7c6hYX5uBoAAICWNRw+rOI599nziy/V1tZq/48NWrWxt7p1d+9fA6qrGnTeqFIVFxcrPDzcPt+Z3vfm7N+/X/X19YqOjnaYHx0drdLSUqfa+Pjjj5WXl6ehQ4fax9e/8MILGjJkiNN1EODdpPFPM53CwgjwAADAFIw07Ldb907q3sMzw3nCw8MdAnxHHb/fmhum05IxY8aooaFjf23w/aAnAAAAwAQiIyMVFBTUpLe9rKysSa+8JxHgAQAAACeEhIQoOTlZ+fn5DvPz8/OVlpbmtToYQgMAAAD8qqqqSrt27bJP7969W4WFhYqIiFB8fLyysrKUmZmplJQUpaamavHixSoqKtL06dO9ViMBHgAAk7NI6tG5s7oFBRtqTDN8w2azqbr+iA7V1Ylrhbtu06ZNGj9+vH06KytLkjR58mQtWbJEkyZNUnl5uebNm6eSkhIlJiZqxYoV6tOnj9dqJMADAGBiESEhuqrPyUrsGaGgTp1EfIdNUn1Dg7YdKFde0W795KHrq/urcePGqa2fSZoxY4ZmzJjhpYqaIsADAGBSwRaL7hg0VHE9e6qr1SoFBRHgcbTXvb5e1m5d1ad7D929tUBH+N1Ov0KABwDApCJDw3RCaKi6nnCCOoWE+LocGIRFkjp3VtdOnXTCL78oMjRMpYd/8XVZcCOuQgMAgEl1slhkkYVx72iW5dfXRydeH36HAA8AAACYCAEeAAAAMBECPAAAkOrr1e3j9bIuW6ZuH6+X6ut9XZHd0N4xWv3OO74uQ5J096236bbrrvN1GQhwfIkVAIAAF/7224q5+x6FlJTY59XGxKjkvr+o8sILPfKYd996m5b/61+SpODgYIX37KnTBg1SxsSJuuSqSerU6b99jKs/36pwq9UjdTTKfehhfbBypV59/z2PPg7gDvTAAwAQwMLfflvxU6ep8zHhXZI6l5Yqfuo0hb/9tscee/T48Vr9+Va989mnyn35JZ0+Ok0P3nOPbvl9po4cOWJfLjIqSiGhoS22U1dX57EaASMiwAMAEKjq6xVz9z2Szdbk+vGWX68bHnPPvR4bThMSGqLIqChFx8Ro0NChmnbbbXrsuSX6aPVqvZmXZ1/u2CE0e4qKNbR3jFa9uVx/uPQypfTpq7f//Zok6Y1XluqSsWOV0qevLh4zRkufXeLweKV79+qOG6drzICBOiPhZF2Vfp4+37xZby7N0z8eeUQ7vvhCQ3vHaGjvGL25NE+tWfjwI/rt4ESlntpP8/70J9Ud82NJNptNzzzxpDLOGKnT+ybof846W+++9X/2++vr6zXnj1k6//QzdHrfBE0YPUYvPvWUQ/uNQ3WeeuwxjUscotGn9dfChx/RkSNH9MjceRozYKDOGT5Cy15+pV37HubGEBoAAAJUt42fOAybOZ7FZlPI3r3qtvETVY9O80pNI8eMUf/Bg/X+2yt0+TXXtLjco/fdp9uz52he4gKFhIbo3y++qIUPPazZD9yvAYlD9PX2bZp7+5/UpWtXXTLpSv1cXa0/XHqZomJ66+/PLVFkVJS++nybbA0NOu+Si7Xz66/18Qcf6KlXjw7r6d6jR4uP/cm6jxQaGqanX3tNe4uLdc/MmeoZEaFbZ8+WJD3+17/q/RUrdPeDf1Wfk09WwYaN+vMttyiiV4RS0tLU0NCgqJgYPbx4sXpGRGjrps809/Y/6cSoaJ13ycX2x/n0o48VHROrZ99YpsJPP9OcrCxtLdik5FGj9NKKt7XqzTf1lzvvVOpvz1Tv3/zGTc8AzIAADwBAgAou2+fW5dwl4dRT9c2XX7a6zO9vmKZzjhmfv/jRR/W/2XPs807qE6//fPON/v3CC7pk0pVa8frrOlBerldWviPrCSdIkuITEuzrd+3WTcHBwYqMimqzvs4hIZr76Hx16dpVpw7or5vv+JPmz/uLbrnzTh3+5bBeWLRY//z3q0pKSfm1lj7a/OmnevWFF5WSlqbOnTvr5jv+ZG/vpD7xKvxsk1YtX+4Q4K09e2rW/fepU6dOSjj1VD2b+6QO//KLpt12myRpyq236unHn9CWzz5TBgE+oBDgAQAIUEeiot26nLvYbLY2f5xqcFKS/f8/7d+v0j17lZ2Vpbn/e7t9fn19vb0n/evtX2hAYqI9vHfEaYMGqUvXrvbppJQU/VxdrdI9e/TT/nLVHD6sG66c5LBOXV2dBiQm2qf/9dxzev2ll1Xyww86fPjw0fsHD3ZY55T+/R2+zNsr8kSdOmCAfTooKEg9TzhBP+3f3+FtgrkQ4AEACFDVo0aqNiZGnUtL7WPej2WzWFQXE6PqUSO9Wtd/du7Ub+LjW13m2ABt+7X2OQ8/rCEjRjgs16lTkCQpLCzMzVU2ZbFY1GBrkCQ9+eILioqJcbg/JCREkrTqzeV6aE62/nfOHCWlJKtb9+5akpurbZu3OCwf3NkxplkslmbnNTQ0uHtTYHAEeAAAAlVQkEru+4vip06TzWJxCPG2X3vAS/4yTwoK8lpJn3z0kXZ+9ZUyb7jB6XV6nXiiomJi9MP33+vCyy9vdpl+gwbp9ZdfVsWBA832wncO6ax6J7+s+82XX+rwL78orEsXSdLnBQXq2q2bomNjFd6zp0JCQ1WyZ49S0pr/3sDmTz5RUkqKrrr+Ovu84u++d+qxAYmr0AAAENAqL7xQRf98SnW9ezvMr4uJUdE/n/LYdeAlqbamVvvLyrSvpERffv65nnrsMd02+Tqdee65mnDlFS61ddPt/6unH39cLz71lL779lt989VXeuOVpXr+H/+QJF1w6UT1iorSbddfry2ffqofvv9e+f/3f9q6aZMkKTYuTnuKivT19u06UF6u2pqaFh+rrrZWc7L+V9/u2KF177+v3Ice1u/+cL06deqkbt27a/JN0/XQnDl6M+9fKv7uO321bZuWPvOs3sw7+gXZuIS++nLrVn38wQf67ttv9cSDD+qLwsL27UQEJHrgAQAIcJUXXqjK889Xt42fKLhsn45ERR8dNuPhnvePP/hAZw1NUnBwsHpYreo/eLBm3XefLp50pcPYb2dcfs01CuvSRc/lLtSjf7lPXbp2Vb8BA/T7G6ZJOvrF00VLX9HD2XN18zW/15EjR3TKaafpzzk5kqRzL7xQ77+9QlMu/x8dqqjQXxYs0CVXTWr2sUaOHaP4hARdf+mlqq2p1fkTL9FNt/937P0td96piMhIPf343zX39iL1CA/XwKFDNPXWWyVJV157rXZs/0J33DhdsliUMXGiJl03WR+t/qA9uxEByGKzNTPoDS6rrKyU1WpVnwfvUycvjLMDACC2S1dlDx2hqN/EytK5s6/LgcHY6upUtmevsj/frL2//OxwX8Phw/r+zrtVUVGh8PBwH1V4VGOG+mh7rLr3cO/gkKpDDRqTuNcQ2+lODKEBAAAATIQADwAAAJgIAR4AAAAwEQI8AAAAYCIEeAAATMpms+noP6Apm3T09cH1SvwOAR4AAJM6WFeruoYG2WrrfF0KDMhWW6e6hgYdqKv1dSlwM64DDwCASf1SX6/VJXt0UXBn9ZRkCeksi6+Lgs/ZdDS8Hywv1+qSPTrs5C/MwjwI8AAAmNiyH4okSWcdqVPnTp1kIcIHPJtsqmto0OqSPfbXB/wLAR4AABOzSXr9hyKtKNmjEzqHyGIhwAc6m82mA3W19Lz7MQI8AAB+4HB9vUrqf/F1GQC8gC+xAgAAACZCgAcAAABMhAAPAAAAmAgBHgAAADARAjwAAABgIgR4AAAAwEQI8AAAAICJEOABAAAAEyHAAwAAACZCgAcAAABMhAAPAAAAmAgBHgAAADARAjwAAABgIgR4AAAAwEQI8AAAAICJmDLA5+bmKiEhQWFhYUpOTta6detaXPa6666TxWJpchs8eLB9mSVLljS7zOHDh72xOQAAAIDTTBfg8/LyNHPmTN11113asmWLxo4dq4yMDBUVFTW7/GOPPaaSkhL7rbi4WBEREbriiisclgsPD3dYrqSkRGFhYd7YJAAAAMBppgvw8+fP15QpUzR16lQNHDhQCxYsUFxcnBYuXNjs8larVb1797bfNm3apAMHDuj66693WM5isTgs17t3b29sDgAAAOASUwX42tpaFRQUKD093WF+enq61q9f71QbTz/9tM455xz16dPHYX5VVZX69Omjk046SRdddJG2bNnSajs1NTWqrKx0uAEAAACeZqoAv3//ftXX1ys6OtphfnR0tEpLS9tcv6SkRO+8846mTp3qMH/AgAFasmSJli9frldeeUVhYWEaPXq0du7c2WJbOTk5slqt9ltcXFz7NgoAAABwgakCfCOLxeIwbbPZmsxrzpIlS9SzZ09NnDjRYf6oUaP0+9//XklJSRo7dqz+9a9/6bTTTtPjjz/eYluzZ89WRUWF/VZcXNyubQEAAABcEezrAlwRGRmpoKCgJr3tZWVlTXrlj2ez2fTMM88oMzNTISEhrS7bqVMnnX766a32wIeGhio0NNT54gEAAAA3MFUPfEhIiJKTk5Wfn+8wPz8/X2lpaa2uu2bNGu3atUtTpkxp83FsNpsKCwsVExPToXoBAAAAdzNVD7wkZWVlKTMzUykpKUpNTdXixYtVVFSk6dOnSzo6tGXPnj16/vnnHdZ7+umnNXLkSCUmJjZpc+7cuRo1apT69eunyspK/f3vf1dhYaGefPJJr2wTAAAA4CzTBfhJkyapvLxc8+bNU0lJiRITE7VixQr7VWVKSkqaXBO+oqJCr732mh577LFm2zx48KBuuOEGlZaWymq1avjw4Vq7dq3OOOMMj28PAAAA4AqLzWaz+boIf1BZWSmr1ao+D96nTvwAFAAAMLCGw4f1/Z13q6KiQuHh4T6tpTFDfbQ9Vt17uHd0d9WhBo1J3GuI7Wx06NAhnXXWWaqrq1N9fb1uvfVWTZs2zaU2TNcDDwAAAJhV165dtWbNGnXt2lU///yzEhMTddlll6lXr15Ot2GqL7ECAAAAZhYUFKSuXbtKkg4fPqz6+nq5OiCGAA8AAAD8au3atZowYYJiY2NlsVj0xhtvNFkmNzdXCQkJCgsLU3JystatW+fSYxw8eFBJSUk66aSTdMcddygyMtKl9QnwAAAAwK+qq6uVlJSkJ554otn78/LyNHPmTN11113asmWLxo4dq4yMDIeLqCQnJysxMbHJbe/evZKknj17auvWrdq9e7defvll7du3z6UaGQMPAAAAv1ZZWekw3doPcmZkZCgjI6PFtubPn68pU6Zo6tSpkqQFCxZo1apVWrhwoXJyciRJBQUFTtUVHR2toUOHau3atbriiiucWkciwAMAAMAAlh4cqdAjnd3aZk1VnaRliouLc5g/Z84cZWdnu9xebW2tCgoKNGvWLIf56enpWr9+vVNt7Nu3T126dFF4eLgqKyu1du1a3XTTTS7VQYAHAACAXysuLna4jGRLve9t2b9/v+rr6xUdHe0wPzo6WqWlpU618cMPP2jKlCmy2Wyy2Wy65ZZbNHToUJfqIMADAADAr4WHh7v1OvAWi8Vh2mazNZnXkuTkZBUWFnbo8fkSKwAAAOCEyMhIBQUFNeltLysra9Ir70kEeAAAAMAJISEhSk5OVn5+vsP8/Px8paWlea0OhtAAAAAAv6qqqtKuXbvs07t371ZhYaEiIiIUHx+vrKwsZWZmKiUlRampqVq8eLGKioo0ffp0r9VIgAcAAAB+tWnTJo0fP94+nZWVJUmaPHmylixZokmTJqm8vFzz5s1TSUmJEhMTtWLFCvXp08drNRLgAQAAgF+NGzdONput1WVmzJihGTNmeKmiphgDDwAAAJgIAR4AAAAwEQI8AAAAYCIEeAAAAMBECPAAAACAiRDgAQAAABMhwAMAAAAmQoAHAAAATIQADwAAAJgIAR4AAAAwEQI8AAAAYCIEeAAAAMBECPAAAACAiRDgAQAAABMhwAMAAAAmQoAHAAAATIQADwAAAJgIAR4AAAAwEQI8AAAAYCIEeAAAAMBECPAAAACAiRDgAQAAABMhwAMAAAAmQoAHAAAATIQADwAAAJgIAR4AAAAwEQI8AAAAYCIEeAAAAMBECPAAAACAiRDgAQAAABMhwAMAAAAmQoAHAAAATIQADwAAAJgIAR4AAAAwEQI8AAAAYCKmDPC5ublKSEhQWFiYkpOTtW7duhaX/fDDD2WxWJrcvv76a4flXnvtNQ0aNEihoaEaNGiQli1b5unNAAAAAFxmugCfl5enmTNn6q677tKWLVs0duxYZWRkqKioqNX1duzYoZKSEvutX79+9vs2bNigSZMmKTMzU1u3blVmZqauvPJKffLJJ57eHAAAAMAlpgvw8+fP15QpUzR16lQNHDhQCxYsUFxcnBYuXNjqelFRUerdu7f9FhQUZL9vwYIFOvfcczV79mwNGDBAs2fP1tlnn60FCxZ4eGsAAAAA15gqwNfW1qqgoEDp6ekO89PT07V+/fpW1x0+fLhiYmJ09tln64MPPnC4b8OGDU3aPO+881pts6amRpWVlQ43AAAAwNNMFeD379+v+vp6RUdHO8yPjo5WaWlps+vExMRo8eLFeu211/T666+rf//+Ovvss7V27Vr7MqWlpS61KUk5OTmyWq32W1xcXAe2DAAAAHBOsK8LaA+LxeIwbbPZmsxr1L9/f/Xv398+nZqaquLiYj388MM688wz29WmJM2ePVtZWVn26crKSkI8AAAAPM5UPfCRkZEKCgpq0jNeVlbWpAe9NaNGjdLOnTvt071793a5zdDQUIWHhzvcAAAAAE8zVYAPCQlRcnKy8vPzHebn5+crLS3N6Xa2bNmimJgY+3RqamqTNt99912X2gQAAAC8wXRDaLKyspSZmamUlBSlpqZq8eLFKioq0vTp0yUdHdqyZ88ePf/885KOXmGmb9++Gjx4sGpra/Xiiy/qtdde02uvvWZv87bbbtOZZ56pBx98UJdcconefPNNvffee/roo498so0AAABAS0wX4CdNmqTy8nLNmzdPJSUlSkxM1IoVK9SnTx9JUklJicM14Wtra3X77bdrz5496tKliwYPHqy3335bF1xwgX2ZtLQ0LV26VHfffbfuuecenXLKKcrLy9PIkSO9vn0AAABAayw2m83m6yL8QWVlpaxWq/o8eJ86hYX5uhwAAIAWNRw+rO/vvFsVFRU+/x5fY4a65aNLFdq9s1vbrqmq0xNjlhliO93JVGPgAQAAgEBHgAcAAABMhAAPAAAAmAgBHgAAADARAjwAAABgIgR4AAAAwEQI8AAAAICX/fzzz+rTp49uv/12l9clwAMAAABedv/997f7R0MJ8AAAAIAX7dy5U19//bUuuOCCdq1PgAcAAAB+tXbtWk2YMEGxsbGyWCx64403miyTm5urhIQEhYWFKTk5WevWrXPpMW6//Xbl5OS0u0YCPAAAAPCr6upqJSUl6Yknnmj2/ry8PM2cOVN33XWXtmzZorFjxyojI0NFRUX2ZZKTk5WYmNjktnfvXr355ps67bTTdNppp7W7xuB2rwkAAACYQGVlpcN0aGioQkNDm102IyNDGRkZLbY1f/58TZkyRVOnTpUkLViwQKtWrdLChQvtveoFBQUtrr9x40YtXbpUr776qqqqqlRXV6fw8HDde++9Tm8PAR4AAAA+t/qHfgrq2nyobq/6n2skSXFxcQ7z58yZo+zsbJfbq62tVUFBgWbNmuUwPz09XevXr3eqjZycHHvQX7JkibZv3+5SeJcI8AAAAPBzxcXFCg8Pt0+31Pvelv3796u+vl7R0dEO86Ojo1VaWtqhGl1BgAcAAIBfCw8PdwjwHWWxWBymbTZbk3nOuO6669r1+HyJFQAAAHBCZGSkgoKCmvS2l5WVNemV9yQCPAAAAOCEkJAQJScnKz8/32F+fn6+0tLSvFYHQ2gAAACAX1VVVWnXrl326d27d6uwsFARERGKj49XVlaWMjMzlZKSotTUVC1evFhFRUWaPn2612okwAMAAAC/2rRpk8aPH2+fzsrKkiRNnjxZS5Ys0aRJk1ReXq558+appKREiYmJWrFihfr06eO1GgnwAAAAwK/GjRsnm83W6jIzZszQjBkzvFRRU4yBBwAAAEyEAA8AAACYCAEeAAAAMBECPAAAAGAiBHgAAADARAjwAAAAgIkQ4AEAAAATIcADAAAAJkKABwAAAEyEAA8AAACYCAEeAAAAMBECPAAAAGAiBHgAAADARAjwAAAAgIkQ4AEAAAATIcADAAAAJkKABwAAAEyEAA8AAACYCAEeAAAAMBECPAAAAGAiBHgAAADARAjwAAAAgIkQ4AEAAAATIcADAAAAJkKABwAAAEyEAA8AAACYSLCvCwAAo+ieUNFkXtVuqw8qab6WRr6qCQBgDAR4N+vWp1JBXWsC6gDr7qDRWnvtbbMjj+eKQHrejcSdz2F72nb1ee9ova6sb5TXpCefI1d0ZH+0tA1G2ceedvz2B8p2m5WROiTgfqYM8Lm5uXrooYdUUlKiwYMHa8GCBRo7dmyzy77++utauHChCgsLVVNTo8GDBys7O1vnnXeefZklS5bo+uuvb7LuL7/8orCwsHbVaJSDla95Yj8Yed/6qrbGD2Uj7xt/ZuT9buTafCHQPpM8KVC3+3ithWJP7qPmHretxzv2/vqfa9xeE7zHdAE+Ly9PM2fOVG5urkaPHq1FixYpIyNDX375peLj45ssv3btWp177rl64IEH1LNnTz377LOaMGGCPvnkEw0fPty+XHh4uHbs2OGwbnvDO+BtHEgBwDd89fnL535gM12Anz9/vqZMmaKpU6dKkhYsWKBVq1Zp4cKFysnJabL8ggULHKYfeOABvfnmm3rrrbccArzFYlHv3r09WjsAAADQUaa6Ck1tba0KCgqUnp7uMD89PV3r1693qo2GhgYdOnRIERERDvOrqqrUp08fnXTSSbrooou0ZcuWVtupqalRZWWlww0AAADwNFMF+P3796u+vl7R0dEO86Ojo1VaWupUG4888oiqq6t15ZVX2ucNGDBAS5Ys0fLly/XKK68oLCxMo0eP1s6dO1tsJycnR1ar1X6Li4tr30YBAAAALjBVgG9ksVgcpm02W5N5zXnllVeUnZ2tvLw8RUVF2eePGjVKv//975WUlKSxY8fqX//6l0477TQ9/vjjLbY1e/ZsVVRU2G/FxcXt3yAAAADASaYaAx8ZGamgoKAmve1lZWVNeuWPl5eXpylTpujVV1/VOeec0+qynTp10umnn95qD3xoaKhCQ0OdLx4AAABwA1P1wIeEhCg5OVn5+fkO8/Pz85WWltbieq+88oquu+46vfzyy7rwwgvbfBybzabCwkLFxMR0uGYAAADAnUzVAy9JWVlZyszMVEpKilJTU7V48WIVFRVp+vTpko4ObdmzZ4+ef/55SUfD+7XXXqvHHntMo0aNsvfed+nSRVbr0Wuozp07V6NGjVK/fv1UWVmpv//97yosLNSTTz7pm40EAAAAWmC6AD9p0iSVl5dr3rx5KikpUWJiolasWKE+ffpIkkpKSlRUVGRfftGiRTpy5Ihuvvlm3Xzzzfb5kydP1pIlSyRJBw8e1A033KDS0lJZrVYNHz5ca9eu1RlnnOHVbQMAAADaYrHZbDZfF+EPKisrZbVaNWjpHQrqyth4AABgXPU/1+jLq/6miooKhYeH+7QWT2YoI22nO5lqDDwAAAAQ6Ew3hMasqnZbm8xrz88gH9sOP6MMADCq5o57jbx5/GqtjmN19Jjsifbb83jOPE7VbqsaDh/ucD3wHQK8m1V/H65OYWFOLevKG98T66Op1j742N/m442Q4I7XhbvqNPtr1FsBB75nxOfJ0zV5a5uNuG/hfgR44Bh88PkXszyfZqnT09gPAOAcxsADAAAAJkKABwAAAEyEAA8AAACYCAEeAAAAMBECPAAAAGAiBHgAAADARAjwAAAAgIkQ4AEAAAATIcADAAAAJkKABwAAALwoODhYw4YN07BhwzR16lTX1/dATQAAAABa0LNnTxUWFrZ7fXrgAQAAABMhwAMAAAC/Wrt2rSZMmKDY2FhZLBa98cYbTZbJzc1VQkKCwsLClJycrHXr1rn0GJWVlUpOTtaYMWO0Zs0al2tkCA0AAADwq+rqaiUlJen666/X5Zdf3uT+vLw8zZw5U7m5uRo9erQWLVqkjIwMffnll4qPj5ckJScnq6ampsm67777rmJjY/Xdd98pNjZW27dv14UXXqht27YpPDzc6RoJ8AAAAPBrlZWVDtOhoaEKDQ1tdtmMjAxlZGS02Nb8+fM1ZcoU+5dPFyxYoFWrVmnhwoXKycmRJBUUFLRaT2xsrCQpMTFRgwYN0jfffKOUlBSnt4cADwAAAJ+r/j5cncLC3Npmw+HDkqS4uDiH+XPmzFF2drbL7dXW1qqgoECzZs1ymJ+enq7169c71caBAwfUtWtXhYaG6ocfftCXX36pk08+2aU6CPAAAADwa8XFxQ5DVFrqfW/L/v37VV9fr+joaIf50dHRKi0tdaqNr776SjfeeKM6deoki8Wixx57TBERES7VQYAHAACAXwsPD3dpjHlbLBaLw7TNZmsyryVpaWnatm1bhx6fq9AAAAAAToiMjFRQUFCT3vaysrImvfKeRIAHAAAAnBASEqLk5GTl5+c7zM/Pz1daWprX6mAIDQAAAPCrqqoq7dq1yz69e/duFRYWKiIiQvHx8crKylJmZqZSUlKUmpqqxYsXq6ioSNOnT/dajQR4AAAA4FebNm3S+PHj7dNZWVmSpMmTJ2vJkiWaNGmSysvLNW/ePJWUlCgxMVErVqxQnz59vFYjAR4AAAD41bhx42Sz2VpdZsaMGZoxY4aXKmqKMfAAAACAiRDgAQAAABMhwAMAAAAmQoAHAAAATIQADwAAAJgIAR4AAAAwEQI8AAAAYCIEeAAAAMBECPAAAACAiRDgAQAAABMhwAMAAAAmQoAHAAAATIQADwAAAJgIAR4AAAAwEQI8AAAAYCIEeAAAAMBECPAAAACAiRDgAQAAABMhwAMAAAAmQoAHAAAATIQADwAAAJiIKQN8bm6uEhISFBYWpuTkZK1bt67V5desWaPk5GSFhYXp5JNP1j/+8Y8my7z22msaNGiQQkNDNWjQIC1btsxT5QMwuO4JFW67AQDgbi4F+OLiYk/V4bS8vDzNnDlTd911l7Zs2aKxY8cqIyNDRUVFzS6/e/duXXDBBRo7dqy2bNmiP//5z7r11lv12muv2ZfZsGGDJk2apMzMTG3dulWZmZm68sor9cknn3hrswAYgCdCN0EeAOBuFpvNZnN24U6dOumEE05QUlKSkpKSNGzYMCUlJammpkZPPvmknn/+eU/WKkkaOXKkRowYoYULF9rnDRw4UBMnTlROTk6T5e+8804tX75cX331lX3e9OnTtXXrVm3YsEGSNGnSJFVWVuqdd96xL3P++efrhBNO0CuvvOJUXZWVlbJarerz4H3qFBbW3s0D4APeDNhVu61eeywAaEnD4cP6/s67VVFRofDwcJ/W4skMZaTtdKdgVxb+z3/+o8LCQhUWFmrLli3697//rb1790qSV3ZKbW2tCgoKNGvWLIf56enpWr9+fbPrbNiwQenp6Q7zzjvvPD399NOqq6tT586dtWHDBv3xj39sssyCBQtarKWmpkY1NTX26crKShe3BjCOxgAbaOHSFz3j3RMqAm4/AwDcy6UA37dvX/Xt21cTJ060z9uwYYMmT56sBx980N21NbF//37V19crOjraYX50dLRKS0ubXae0tLTZ5Y8cOaL9+/crJiamxWVaalOScnJyNHfu3HZuCWAcx4bYY//vzZDZXJD25OP7ekiLEU6Y3LEPOBEBAN9wKcA3JzU1VY899pjuvvtuXXrppe6oqU0Wi8Vh2mazNZnX1vLHz3e1zdmzZysrK8s+XVlZqbi4uLaLBwyirQDnjZDZWg3uPpnwdWhvjreCvKe23QgnIu1l5toBwKUA3zjk5Hj9+vXTF1984baiWhIZGamgoKAmPeNlZWVNetAb9e7du9nlg4OD1atXr1aXaalNSQoNDVVoaGh7NgPwOVcCnbuDTnvCZEfCvBGD+/E8FSa9te1mCsPH7xMz1Q4AjVwK8N26ddOgQYM0fPhwDRs2TMOHD1dsbKwef/zxJuPMPSEkJETJycnKz8936O3Pz8/XJZdc0uw6qampeuuttxzmvfvuu0pJSbGfjKSmpio/P99hHPy7776rtLQ0D2wF4FvtDXUd7RF3V5h0tg4zBPfjuStM+mrbfTUEyxlG+IsTALiLSwF+9erV2rp1q7Zu3aqXXnpJf/7zn/XLL79IOvpF0rvuuktDhw7V0KFDNXDgQI8UnJWVpczMTKWkpCg1NVWLFy9WUVGRpk+fLuno0JY9e/bYr4gzffp0PfHEE8rKytK0adO0YcMGPf300w5Xl7ntttt05pln6sEHH9Qll1yiN998U++9954++ugjj2wD4G49vu2kQ6c0tLmcO0O0s0HHk2GypbHzZgzvx2rPF12Nts1GCsSu/sXJCDUDQGtcCvBjxozRmDFj7NMNDQ3asWOH/co0BQUFeuaZZ1RWVqb6+nq3FysdveRjeXm55s2bp5KSEiUmJmrFihXq06ePJKmkpMThmvAJCQlasWKF/vjHP+rJJ59UbGys/v73v+vyyy+3L5OWlqalS5fq7rvv1j333KNTTjlFeXl5GjlypEe2AQgk3g7URguy7dVWADbLdhKIAcD9XLoOvLP27dvX6vhxf8R14OFLzvTAuzvw+XIYDczJV0He1dcdJxwIBEa6PjrXgXedS7/E6qxAC+9AIGpPGCcYBTZO4ADAPTwS4IFA5auA4sz4d6Oo2m0lyAcwQjwAdBwBHnCTxmBCQHEOIT5w8R5xD/YjELgI8IAHcGB1DiE+cHnzPeKPrzM+Y4DARoCHKXRPqDD0AcvItUnGro8hNYHLyK9LIzt2v7EPgcBEgAc8hAOrawjxQNv4XAEgEeBhAkbvbWqtJiPW607+vn1w5ImTLF5DzmNfAWhEgIfpcBADvK8xvAdCiDdaPW0xW70AOo4AD1MyygHLmTqMUqsZMIzGmLzxvPA+aR37B8CxCPAwNH85aPlyO/xlH8L7WvqCMSda3kVHAYDjEeBhWr4+YPn68QFPaiukB8JQGiNgnwBoDgEehuVvvU5mqhWBzZc97LxP/svVfcG+AwIHAR6m54uDVnsf0x8PsP64TYHK1Wvyeyro85piHwBoXbCvC4D7NffBb7Yxq+3peTLbNqJ5VbuthBcf4P0DAOZBgHezbn0qFdS1xmcHw5aCjz+EeqPoaLjkZANG05HXo6dOuAL5fdKR/RnI+w3OaXx91f9c4+NK0BEEeA/xxYdooPdam2l7vFUrPdlojbteg2YI8Wb5y47Ra2ysz5OfX8fvAyN+J8MsxxrJ+K8ptA8B3oO8GSj96Q1q5N4nf9rPCGxmCiCBwkyfL+76q65Rt7mturxxItNRRt23cA++xOonjPwh4k2e3g/s5+ZxoDAfnjPjMePnS+MXn9tbu1G32Zm6jFp7I6PXh46hB95DjP7GMXJ97f1Tt5G36XgMn2mZWes2IzMNO/MmX+4Tow/18cS+Ob5No2z/sXWZoce9OUbdt+g4ArybVX8frk5hYT55bGc++M324YPAwsHF+9wR4s3yvJnlM7IjId4I9XeUEbfBiDW1x7Hb0XD4sA8rQUcxhCZAdORPnL7gaq3e3LaOPpaZngdvMksI9Efs+6OM9N40Ui0A3G/37t0aP368Bg0apCFDhqi6utql9emB9zPH99wEwkEgELbRVWYJZGapMxC0tyfebM9hS73bRvwccbUn3ojbAKB51113ne677z6NHTtWP/30k0JDQ11anx54P9TRLxUZhT98ieh4ZqvXFc4Gje4JFfYbjMVoz4mn3i9meh86W6uZtgkIdF988YU6d+6ssWPHSpIiIiIUHOxanzoBHqbl6y+awTnHBnajBUQ05cpz5C/Pp9Hfz/7QIQOYydq1azVhwgTFxsbKYrHojTfeaLJMbm6uEhISFBYWpuTkZK1bt87p9nfu3Knu3bvr4osv1ogRI/TAAw+4XCNDaGBoZvpzd1vMWHN7+UuwC1SBcHWaxs8WM22nP30eAkZWXV2tpKQkXX/99br88sub3J+Xl6eZM2cqNzdXo0eP1qJFi5SRkaEvv/xS8fHxkqTk5GTV1DT9tdt3331XdXV1WrdunQoLCxUVFaXzzz9fp59+us4991ynayTAw3SMcrAy6uXefFmTEfcH2qetcOsPz7VRPktcYdTPHcDoKisrHaZDQ0NbHHeekZGhjIyMFtuaP3++pkyZoqlTp0qSFixYoFWrVmnhwoXKycmRJBUUFLS4/kknnaTTTz9dcXFxkqQLLrhAhYWFBHj4l2MPWGY84ErmrRuBzWw91IHCHz4TgeZ0/08nBYW6d3R3fc3R9hrDcqM5c+YoOzvb5fZqa2tVUFCgWbNmOcxPT0/X+vXrnWrj9NNP1759+3TgwAFZrVatXbtWN954o0t1EOBhChykAN9oLsTTA+x7fCYCrikuLlZ4eLh92tWrvjTav3+/6uvrFR0d7TA/OjpapaWlTrURHBysBx54QGeeeaZsNpvS09N10UUXuVQHAR7oAKP9MAzBCp5ATzwAswsPD3cI8B1lsVgcpm02W5N5rWlrmE5bCPAA4IL0+B0uLf9uUX8PVeJdjSHeWyeJnDAAMKLIyEgFBQU16W0vKytr0ivvSQR4wIMIIebkakgPFPyFB0CgCwkJUXJysvLz83XppZfa5+fn5+uSSy7xWh0EeKCDjHJVCCPU4A/cHd7T43f4TS88AASCqqoq7dq1yz69e/duFRYWKiIiQvHx8crKylJmZqZSUlKUmpqqxYsXq6ioSNOnT/dajQR4wEPofQcAwHw2bdqk8ePH26ezsrIkSZMnT9aSJUs0adIklZeXa968eSopKVFiYqJWrFihPn36eK1GAjwA/IqhMwCAcePGyWaztbrMjBkzNGPGDC9V1JR7L7YJBKjje9u93fvO8Blj48QAAOBOBHgAECHbSBh+BgCtI8ADbkbvO5rDCQIAwF0I8ICb0GtoXoRrAICZEOABN6L3HQgcvP8A+AoBHoCqdlsD9i8I3ux9p6ff/xDiAfgCAR4wKU8Eh0AL8QRqtBfBHYAvEeCBAOfrS2ACx+L1BwBtI8ADJuSu3r+WwlIghChf9b7T6w8A6CgCPBCg2grpgRDigfZg+AwAXyPAAybjjvDgbDj31xBPLzjciUAPwNsI8ICJ+CIo+GuI9yVOIAAAHUGABwJMewK5P4V4wjMAwOwI8IBJeHPojLvXNQojhXcj1QLnMVwGgBGYKsAfOHBAmZmZslqtslqtyszM1MGDB1tcvq6uTnfeeaeGDBmibt26KTY2Vtdee6327t3rsNy4ceNksVgcbldddZWHtwbwLncEcH8I8TAuXl8A4BxTBfirr75ahYWFWrlypVauXKnCwkJlZma2uPzPP/+szZs365577tHmzZv1+uuv65tvvtHFF1/cZNlp06appKTEflu0aJEnNwXwOnf0HNL7CE8KxNdXj29NdRgGYBDBvi7AWV999ZVWrlypjRs3auTIkZKkp556SqmpqdqxY4f69+/fZB2r1ar8/HyHeY8//rjOOOMMFRUVKT4+3j6/a9eu6t27t2c3AgDQqu4JFYbuia/abXXricahUxrc1haAwGGaU/8NGzbIarXaw7skjRo1SlarVevXr3e6nYqKClksFvXs2dNh/ksvvaTIyEgNHjxYt99+uw4dOtRqOzU1NaqsrHS4AZ7kjlDTkeARiL2jnsY4eP9g5BMOAP7JND3wpaWlioqKajI/KipKpaWlTrVx+PBhzZo1S1dffbXCw8Pt86+55holJCSod+/e2r59u2bPnq2tW7c26b0/Vk5OjubOnev6hgAm5A/hnbBsHoHWCw8ArvJ5D3x2dnaTL5Aef9u0aZMkyWKxNFnfZrM1O/94dXV1uuqqq9TQ0KDc3FyH+6ZNm6ZzzjlHiYmJuuqqq/Tvf/9b7733njZv3txie7Nnz1ZFRYX9Vlxc7OKWA77havAgqAAAYCw+74G/5ZZb2rziS9++ffX5559r3759Te778ccfFR0d3er6dXV1uvLKK7V7926tXr3aofe9OSNGjFDnzp21c+dOjRgxotllQkNDFRoa2mo7gFEZvYcTMPprtLEX3sg1AvBfPg/wkZGRioyMbHO51NRUVVRU6NNPP9UZZ5whSfrkk09UUVGhtLS0FtdrDO87d+7UBx98oF69erX5WF988YXq6uoUExPj/IYAXuDtP93T+w60jPAOwFd8PoTGWQMHDtT555+vadOmaePGjdq4caOmTZumiy66yOEKNAMGDNCyZcskSUeOHNH//M//aNOmTXrppZdUX1+v0tJSlZaWqra2VpL07bffat68edq0aZO+++47rVixQldccYWGDx+u0aNH+2RbAW9oK5wT3r2Dsfkt4zUIAM0zTYCXjl4pZsiQIUpPT1d6erqGDh2qF154wWGZHTt2qKLi6If+Dz/8oOXLl+uHH37QsGHDFBMTY781XrkmJCRE77//vs477zz1799ft956q9LT0/Xee+8pKCjI69sIAAAAtMbnQ2hcERERoRdffLHVZWw2m/3/ffv2dZhuTlxcnNasWeOW+gCzaWkMLz2fMArGmQNAU6bq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ZmjGjBleqqgpU42BP3DggDIzM2W1WmW1WpWZmamDBw+2uo7FYmn29tBDD9mXGTduXJP7r7rqKg9vDQJdIIcFo4ZFMwRtAABMFeCvvvpqFRYWauXKlVq5cqUKCwuVmZnZ6jolJSUOt2eeeUYWi0WXX365w3LTpk1zWG7RokWe3BQEsKrd1lbDeyAHe39khpMCb59Q8RoHgI4xzRCar776SitXrtTGjRs1cuRISdJTTz2l1NRU7dixQ/37N38A6t27t8P0m2++qfHjx+vkk092mN+1a9cmy7ampqZGNTU19unjf6IXaI6zwYWhNL7DWHjvMNprnJMKAGZimgC/YcMGWa1We3iXjv6SldVq1fr161sM8Mfat2+f3n77bT333HNN7nvppZf04osvKjo6WhkZGZozZ4569OjRYls5OTmaO3du+zYGAYmA4F/M0LPuDF8OZzJaiEfbenzbSYdOafB1GUDAM02ALy0tVVRUVJP5UVFRTv907XPPPacePXrosssuc5h/zTXXKCEhQb1799b27ds1e/Zsbd26tck1Po81e/Zs+7eSpaM98HFxcU5uDQJJe4M74cZ3/CWcGxFf3AaAjvN5gM/Ozm6zJ/uzzz6T1PRnayXXfrr2mWee0TXXXKOwsDCH+dOmTbP/PzExUf369VNKSoo2b96sESNGNNtWaGioQkNDnXpcBC563Vv2blF/pcfv8HUZMABfh3jepwDMxucB/pZbbmnzii99+/bV559/rn379jW578cff3Tqp2vXrVunHTt2KC8vr81lR4wYoc6dO2vnzp0tBnigLe4IBb4ONjCGloa5dPQEyEhXA+K1DgDO83mAj4yMVGRkZJvLpaamqqKiQp9++qnOOOMMSdInn3yiiooKp3669umnn1ZycrKSkpLaXPaLL75QXV2dYmJi2t4AoBn06MFdWgvZzd3HXzVcw3sVgBmZ5jKSAwcO1Pnnn69p06Zp48aN2rhxo6ZNm6aLLrrI4QusAwYM0LJlyxzWrays1KuvvqqpU6c2affbb7/VvHnztGnTJn333XdasWKFrrjiCg0fPlyjR4/2+HYBgcxIPcBG1J794+w67HsAMC/TBHjp6JVihgwZovT0dKWnp2vo0KF64YUXHJbZsWOHKioc/wy7dOlS2Ww2/e53v2vSZkhIiN5//32dd9556t+/v2699Valp6frvffeU1BQ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vBsUFxfrtttu07vvvquwsDBfl+O3MjIy7P8fMmSIUlNTdcopp+i5555TVlaWDyvzDw0NDUpJSdEDDzwgSRo+fLi++OILLVy4UNdee62Pq4PR0APfAZGRkQoKCmrS215WVtakVx4wuv/3//6fli9frg8++EAnnXSSr8vxOyEhITr11FOVkpKinJwcJSUl6bHHHvN1WX6hoKBAZWVlSk5OVnBwsIKDg7VmzRr9/e9/V3BwsOrr631dol/q1q2bhgwZop07d/q6FL8QExPT5IR+4MCBXBQDzSLAd0BISIiSk5OVn5/vMD8/P19paWk+qgpwjc1m0y233KLXX39dq1evVkJCgq9LCgg2m001NTW+LsMvnH322dq2bZsKCwvtt5SUFF1zzTUqLCxUUFCQr0v0SzU1Nfrqq68UExPj61L8wujRo5tcwvebb75Rnz59fFQRjIwhNB2UlZWlzMxMpaSkKDU1VYsXL1ZRUZGmT5/u69L8RlVVlXbt2mWf3r17twoLCxUREaH4+HgfVuYfbr75Zr388st688031aNHD/tflKxWq7p06eLj6vzDn//8Z2VkZCguLk6HDh3S0qVL9eGHH2rlypW+Ls0v9OjRo8l3Nrp166ZevXrxXQ43uv322zVhwgTFx8errKxM9913nyorKzV58mRfl+YX/vjHPyotLU0PPPCArrzySn366adavHixFi9e7OvSYEAE+A6aNGmSysvLNW/ePJWUlCgxMVErVqzgjNmNNm3apPHjx9unG8daTp48WUuWLPFRVf6j8RKo48aNc5j/7LPP6rrrrvN+QX5o3759yszMVElJiaxWq4YOHaqVK1fq3HPP9XVpgNN++OEH/e53v9P+/ft14oknatSoUdq4cSPHOzc5/fTTtWzZMs2ePVvz5s1TQkKCFixYoGuuucbXpcGAuA48AAAAYCKMgQcAAABMhAAPAAAAmAgBHgAAADARAjwAAABgIgR4AAAAwEQI8AAAAICJEOABAAAAEyHAAwAAACZCgAcAAABMhAAPAAAAmAgBHgBMYMCAAfrnP//p6zIAAAZAgAcAg/vll1+0a9cuJSUl+boUAIABEOABwOC2b98um82mxMREX5cCADAAAjwAGFRhYaHOOussjRkzRg0NDYqPj9ejjz7q67IAAD4W7OsCAABNffvtt/rtb3+rP/3pT+rVq5caGhp0+umnKysrS2PHjlVKSoqvSwQA+Ag98ABgQNOnT9dll12mu+++W0VFRUpNTdUdd9yhnj17at26db4uDwDgQwR4ADCY0tJSrV69WtOnT1d9fb22bdum4cOHq1OnTgoODlZISIivSwQA+BABHgAMZuPGjWpoaNCwYcP09ddf65dfftGwYcNUXFys/fv3a/To0b4uEQDgQwR4ADCY2tpaSdLhw4dVWFiok046Sb169dKiRYs0aNAgDRs2zLcFAgB8ii+xAoDBjBo1SsHBwZo3b56qqqp0yimnKDc3V48++qg++OADX5cHAPAxAjwAGEx8fLyeeeYZ3XnnnSopKVFwcLB+/vlnrVixQmeccYavywMA+JjFZrPZfF0EAKB5EREReuaZZzRx4kRflwIAMAjGwAOAQf3www86cOCAhgwZ4utSAAAGQoAHAIPatm2bunXrppNPPtnXpQAADIQhNAAAAICJ0AMPAAAAmAgBHgAAADARAjwAAABgIgR4AAAAwEQI8AAAAICJEOABAAAAEyHAAwAAACZCgAcAAABMhAAPAAAAmAgBHgAAADCR/w8X2kwbeB/2UAAAAABJRU5ErkJggg==", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "plot = diff[:, max_diff_tau_index, :]\n", "\n", @@ -5234,19 +4903,10 @@ }, { "cell_type": "code", - "execution_count": 105, + "execution_count": null, "id": "f65b752d", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "At tau = 7.996146726889913\n", - "Max pointwise difference ratio = 0.027187291689529717\n" - ] - } - ], + "outputs": [], "source": [ "print(\"At tau = \" + str(ratio_tau_pt))\n", "print(\"Max pointwise difference ratio =\", np.max(diff_ratio[:, max_ratio_tau_index, :]))" @@ -5254,31 +4914,10 @@ }, { "cell_type": "code", - "execution_count": 106, + "execution_count": null, "id": "5bae9e0b", "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 106, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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58picfxNgWEYTm2uGD9+fJ2enw+xAgAAAC7w9/eXh4eH02p7fn6+06p8QyLAAwAAAC7w8vJSVFSUMjIyHNozMjIUGxvbaHVwCQ0AAADwqxMnTmjv3r32/X379ikrK0t+fn4KCwtTcnKyEhMTFR0drZiYGC1atEjZ2dlKSkpqtBoJ8AAAAMCvNm/erLi4OPt+cnKyJGncuHFasmSJxo4dq4KCAs2ZM0e5ubkKDw9Xenq6OnXq1Gg1EuABAACAXw0bNkyGYVTbZ/LkyZo8eXIjVeSMa+ABAAAAEzFVgD969KgSExNls9lks9mUmJioY8eOVdn/1KlTuv/++9W7d2+1bt1aISEhuuOOO3Tw4EGHfsOGDZPFYnHYbr755gaeDQAAAFB7pgrwt956q7KysrRq1SqtWrVKWVlZSkxMrLL/zz//rC1btujBBx/Uli1b9M477+i7777Ttdde69R30qRJys3NtW/PP/98Q04FAAAAqBPTXAO/a9curVq1Shs3btTAgQMlSS+88IJiYmK0e/dudevWzekYm83mdJufZ599VgMGDFB2drbCwsLs7a1atVJQUFDDTgIAAAA4R6ZZgd+wYYNsNps9vEvSoEGDZLPZtH79epfHKSwslMViUbt27RzaX3vtNfn7+6tXr16aNm2ajh8/Xu04paWlKioqctgAAACAhmaaFfi8vDwFBAQ4tQcEBDh9G1ZVSkpKNH36dN16660OX6d72223qUuXLgoKCtKOHTs0Y8YMbdu2zWn1/rdSUlL08MMP134iAAAAwDlw+wr87NmznT5Aeva2efNmSZLFYnE63jCMStvPdurUKd18882qqKhQamqqw2OTJk3SlVdeqfDwcN188816++239fHHH2vLli1VjjdjxgwVFhbat5ycnFrOHAAAAKg9t6/AT5kypcY7vnTu3Flff/21Dh065PTYTz/9pMDAwGqPP3XqlG666Sbt27dPn376qcPqe2X69eunli1bas+ePerXr1+lfaxWq6xWa7XjAAAAAPXN7QHe399f/v7+NfaLiYlRYWGhvvrqKw0YMECS9OWXX6qwsFCxsbFVHncmvO/Zs0efffaZ2rdvX+NzffPNNzp16pSCg4NdnwgAAADQCNx+CY2revTooauvvlqTJk3Sxo0btXHjRk2aNEkjR450uANN9+7dtXz5cknS6dOn9fvf/16bN2/W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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "plot = diff_ratio[:, max_ratio_tau_index, :]\n", "\n", @@ -5332,7 +4971,7 @@ }, { "cell_type": "code", - "execution_count": 107, + "execution_count": null, "id": "985fc9fd", "metadata": { "code_folding": [] @@ -5357,22 +4996,10 @@ }, { "cell_type": "code", - "execution_count": 108, + "execution_count": null, "id": "949eff79", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Intensity\n", - "2.71 ms ± 115 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)\n", - "\n", - "Only fluxes\n", - "1.27 ms ± 12.3 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)\n" - ] - } - ], + "outputs": [], "source": [ "print(\"Intensity\")\n", "%timeit disort.disort(usrang, usrtau, ibcnd, False, prnt, plank, lamber, deltamplus, do_pseudo_sphere, dtauc, ssalb, pmom, temper, wvnmlo, wvnmhi, utau, umu0, phi0, umu, phi, fbeam, fisot, albedo, btemp, ttemp, temis, earth_radius, h_lyr, rhoq, rhou, rho_accurate, bemst, emust, accur, header, rfldir, rfldn, flup, dfdt, uavg, uu, albmed, trnmed)\n", @@ -5700,29 +5327,29 @@ "source": [ "# References\n", "\n", - "**1)** [^][^]S. Chandrasekhar. 1960. _Radiative Transfer_.\n", + "**1)** [^][^]S. Chandrasekhar. 1960. _Radiative Transfer_.\n", "\n", - "**2)** [^][^][^][^][^][^]Knut Stamnes and S-Chee Tsay and Warren Wiscombe and Kolf Jayaweera. 1988. _Numerically stable algorithm for discrete-ordinate-method radiative transfer in multiple scattering and emitting layered media_. [URL](http://opg.optica.org/ao/abstract.cfm?URI=ao-27-12-2502)\n", + "**2)** [^][^][^][^][^][^]Knut Stamnes and S-Chee Tsay and Warren Wiscombe and Kolf Jayaweera. 1988. _Numerically stable algorithm for discrete-ordinate-method radiative transfer in multiple scattering and emitting layered media_. [URL](http://opg.optica.org/ao/abstract.cfm?URI=ao-27-12-2502)\n", "\n", - "**3)** [^][^][^][^][^][^][^][^][^][^][^][^][^][^][^]Stamnes, S.. 1999. _LLLab disort website_. [URL](http://www.rtatmocn.com/disort/)\n", + "**3)** [^][^][^][^][^][^][^][^][^][^][^][^][^][^][^]Stamnes, S.. 1999. _LLLab disort website_. [URL](http://www.rtatmocn.com/disort/)\n", "\n", - "**4)** [^][^][^]Knut Stamnes and Paul Conklin. 1984. _A new multi-layer discrete ordinate approach to radiative transfer in vertically inhomogeneous atmospheres_. [URL](https://www.sciencedirect.com/science/article/pii/0022407384900311)\n", + "**4)** [^][^][^]Knut Stamnes and Paul Conklin. 1984. _A new multi-layer discrete ordinate approach to radiative transfer in vertically inhomogeneous atmospheres_. [URL](https://www.sciencedirect.com/science/article/pii/0022407384900311)\n", "\n", "**5)** [^][^]W. J. Wiscombe. 1977. _The Delta–M Method: Rapid Yet Accurate Radiative Flux Calculations for Strongly Asymmetric Phase Functions_. [URL](https://journals.ametsoc.org/view/journals/atsc/34/9/1520-0469_1977_034_1408_tdmrya_2_0_co_2.xml)\n", "\n", - "**6)** [^]J. H. Joseph and W. J. Wiscombe and J. A. Weinman. 1976. _The Delta-Eddington Approximation for Radiative Flux Transfer_. [URL](https://journals.ametsoc.org/view/journals/atsc/33/12/1520-0469_1976_033_2452_tdeafr_2_0_co_2.xml)\n", + "**6)** [^][^]J. H. Joseph and W. J. Wiscombe and J. A. Weinman. 1976. _The Delta-Eddington Approximation for Radiative Flux Transfer_. [URL](https://journals.ametsoc.org/view/journals/atsc/33/12/1520-0469_1976_033_2452_tdeafr_2_0_co_2.xml)\n", "\n", - "**7)** [^][^]Sykes, J. B.. 1951. _Approximate Integration of the Equation of Transfer_. [URL](https://doi.org/10.1093/mnras/111.4.377)\n", + "**7)** [^][^]Sykes, J. B.. 1951. _Approximate Integration of the Equation of Transfer_. [URL](https://doi.org/10.1093/mnras/111.4.377)\n", "\n", - "**8)** [^][^][^][^][^][^][^][^][^][^]Stamnes, Knut and Tsay, Si-Chee and Wiscombe, Warren and Laszlo, Istvan and Einaudi, Franco. 2000. _General Purpose Fortran Program for Discrete-Ordinate-Method Radiative Transfer in Scattering and Emitting Layered Media: An Update of DISORT_.\n", + "**8)** [^][^][^][^][^][^][^][^][^][^]Stamnes, Knut and Tsay, Si-Chee and Wiscombe, Warren and Laszlo, Istvan and Einaudi, Franco. 2000. _General Purpose Fortran Program for Discrete-Ordinate-Method Radiative Transfer in Scattering and Emitting Layered Media: An Update of DISORT_.\n", "\n", - "**9)** [^][^][^][^]Z. Lin and S. Stamnes and Z. Jin and I. Laszlo and S.-C. Tsay and W.J. Wiscombe and K. Stamnes. 2015. _Improved discrete ordinate solutions in the presence of an anisotropically reflecting lower boundary: Upgrades of the DISORT computational tool_. [URL](https://www.sciencedirect.com/science/article/pii/S0022407315000679)\n", + "**9)** [^][^][^][^]Z. Lin and S. Stamnes and Z. Jin and I. Laszlo and S.-C. Tsay and W.J. Wiscombe and K. Stamnes. 2015. _Improved discrete ordinate solutions in the presence of an anisotropically reflecting lower boundary: Upgrades of the DISORT computational tool_. [URL](https://www.sciencedirect.com/science/article/pii/S0022407315000679)\n", "\n", - "**10)** [^]Trefethen, L. N.. 1996. _In Finite difference and spectral methods for ordinary and partial differential equations_.\n", + "**10)** [^]Trefethen, L. N.. 1996. _In Finite difference and spectral methods for ordinary and partial differential equations_.\n", "\n", - "**11)** [^][^]T. Nakajima and M. Tanaka. 1988. _Algorithms for radiative intensity calculations in moderately thick atmospheres using a truncation approximation_. [URL](https://www.sciencedirect.com/science/article/pii/0022407388900313)\n", + "**11)** [^][^]T. Nakajima and M. Tanaka. 1988. _Algorithms for radiative intensity calculations in moderately thick atmospheres using a truncation approximation_. [URL](https://www.sciencedirect.com/science/article/pii/0022407388900313)\n", "\n", - "**12)** [^]K. Connour and A. Stcherbinine. 2022. _pyRT_DISORT_. [URL](https://github.com/kconnour/pyRT_DISORT)\n", + "**12)** [^]K. Connour and A. Stcherbinine. 2022. _pyRT_DISORT_. [URL](https://github.com/kconnour/pyRT_DISORT)\n", "\n" ] }, diff --git a/docs/conf.py b/docs/conf.py index 938d990..7b0fbde 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -9,7 +9,7 @@ project = 'Pythonic DISORT' copyright = '2023, HO Jia Xu Dion' author = 'Dion HO Jia Xu' -release = '0.2.1' +release = '0.2.2' # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/pyproject.toml b/pyproject.toml index 45ec8bf..2678afa 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ dependencies = [ "scipy>=1.8.0", ] name = "PythonicDISORT" -version = "0.2.1" +version = "0.2.2" authors = [ { name="Dion HO Jia Xu", email="dh3065@columbia.edu" }, ] diff --git a/src/PythonicDISORT/_loop_and_assemble_results.py b/src/PythonicDISORT/_loop_and_assemble_results.py index cab8a1f..06b2095 100644 --- a/src/PythonicDISORT/_loop_and_assemble_results.py +++ b/src/PythonicDISORT/_loop_and_assemble_results.py @@ -16,7 +16,7 @@ def _loop_and_assemble_results( NLayers, NBDRF, weighted_scaled_Leg_coeffs, weighted_Leg_coeffs_BDRF, - mu0, I0, phi0, + mu0, I0, I0_orig, phi0, b_pos, b_neg, scalar_b_pos, scalar_b_neg, s_poly_coeffs, @@ -196,6 +196,7 @@ def u(tau, phi, return_Fourier_error=False): optimize=True, ) ) + intensities[np.isclose(intensities, 0)] = 0 if return_Fourier_error: exponent = np.concatenate( @@ -219,9 +220,9 @@ def u(tau, phi, return_Fourier_error=False): / np.clip(intensities, a_min=1e-15, a_max=None) ) ) - return intensities, Fourier_error + return I0_orig * intensities, Fourier_error else: - return intensities + return I0_orig * intensities # -------------------------------------------------------------------------------------------------------------------------- # Construct u0 @@ -272,8 +273,9 @@ def u0(tau): mu_arr, ) u0 += _mathscr_v_contribution - - return np.squeeze(u0) + + u0[np.isclose(u0, 0)] = 0 + return I0_orig * np.squeeze(u0) # -------------------------------------------------------------------------------------------------------------------------- # Construct the flux functions @@ -333,8 +335,10 @@ def flux_up(tau): + direct_beam_contribution + _mathscr_v_contribution ) - - return np.squeeze(2 * pi * (mu_arr_pos * W) @ u0_pos)[()] + + flux = np.squeeze(2 * pi * (mu_arr_pos * W) @ u0_pos)[()] + flux[np.isclose(flux, 0)] = 0 + return I0_orig * flux def flux_down(tau): @@ -372,10 +376,13 @@ def flux_down(tau): direct_beam_contribution = B_neg[:, l] * np.exp(-scaled_tau[None, :] / mu0) direct_beam = I0 * mu0 * np.exp(-tau / mu0) direct_beam_scaled = I0 * mu0 * np.exp(-scaled_tau / mu0) + direct_beam_ignoreI0 = mu0 * np.exp(-tau / mu0) + direct_beam_ignoreI0[np.isclose(direct_beam_ignoreI0, 0)] = 0 else: direct_beam_contribution = 0 direct_beam = 0 direct_beam_scaled = 0 + direct_beam_ignoreI0 = np.empty_like(tau) exponent = np.concatenate( [ @@ -390,13 +397,13 @@ def flux_down(tau): + _mathscr_v_contribution ) + diffuse_flux = np.squeeze( + 2 * pi * (mu_arr_pos * W) @ u0_neg + direct_beam_scaled - direct_beam + )[()] + diffuse_flux[np.isclose(diffuse_flux, 0)] = 0 return ( - np.squeeze( - 2 * pi * (mu_arr_pos * W) @ u0_neg - + direct_beam_scaled - - direct_beam - )[()], - np.squeeze(direct_beam)[()], + I0_orig * diffuse_flux, + I0_orig * I0 * np.squeeze(direct_beam_ignoreI0)[()], ) # -------------------------------------------------------------------------------------------------------------------------- diff --git a/src/PythonicDISORT/pydisort.py b/src/PythonicDISORT/pydisort.py index 6c1853d..b7229e9 100644 --- a/src/PythonicDISORT/pydisort.py +++ b/src/PythonicDISORT/pydisort.py @@ -93,7 +93,7 @@ def pydisort( function Zeroth Fourier mode of the intensity with argument tau (type: array). Returns an ndarray with axes corresponding to (mu, tau) variation. - This function is useful for calculating actinic flux and other quantities of interest + This function is useful for calculating actinic fluxes and other quantities of interest, but reclassification of delta-scaled flux and other corrections must be done manually. function, optional Intensity function with arguments (tau, phi, return_Fourier_error=False) of types (array, array, bool). @@ -102,7 +102,7 @@ def pydisort( the Cauchy / Fourier convergence evaluation (type: float) for the last Fourier term. """ - # Turn scalars to arrays + # Turn scalars into arrays # -------------------------------------------------------------------------------------------------------------------------- tau_arr = np.atleast_1d(tau_arr) omega_arr = np.atleast_1d(omega_arr) @@ -113,15 +113,26 @@ def pydisort( # Setup # -------------------------------------------------------------------------------------------------------------------------- - NLayers = len(tau_arr) if NLeg is None: NLeg = NQuad if NLoops is None: NLoops = NQuad + if np.all(b_pos == 0): + b_pos = 0 + if np.all(b_neg == 0): + b_neg = 0 + if np.all(s_poly_coeffs == 0): + Nscoeffs = 0 + else: + Nscoeffs = np.shape(s_poly_coeffs)[1] + if np.all(Leg_coeffs_BDRF == 0): + NBDRF = 0 + else: + NBDRF = len(Leg_coeffs_BDRF) + NLayers = len(tau_arr) scalar_b_pos = False scalar_b_neg = False thickness_arr = np.concatenate([[tau_arr[0]], np.diff(tau_arr)]) - Nscoeffs = np.shape(s_poly_coeffs)[1] NLeg_all = np.shape(Leg_coeffs_all)[1] N = NQuad // 2 # -------------------------------------------------------------------------------------------------------------------------- @@ -177,10 +188,14 @@ def pydisort( # Some more setup # -------------------------------------------------------------------------------------------------------------------------- - NBDRF = len(Leg_coeffs_BDRF) weighted_Leg_coeffs_BDRF = (2 * np.arange(NBDRF) + 1) * Leg_coeffs_BDRF weighted_Leg_coeffs_all = (2 * np.arange(NLeg_all) + 1) * Leg_coeffs_all Leg_coeffs = Leg_coeffs_all[:, :NLeg] + if (scalar_b_pos and b_pos == 0) and (scalar_b_neg and b_neg == 0) and Nscoeffs == 0 and I0 > 0: + I0_orig = I0 + I0 = 1 + else: + I0_orig = 1 # -------------------------------------------------------------------------------------------------------------------------- # Generation of Double Gauss-Legendre quadrature weights and points @@ -229,7 +244,7 @@ def pydisort( NLayers, NBDRF, weighted_scaled_Leg_coeffs, weighted_Leg_coeffs_BDRF, - mu0, I0, phi0, + mu0, I0, I0_orig, phi0, b_pos, b_neg, scalar_b_pos, scalar_b_neg, s_poly_coeffs, @@ -415,15 +430,16 @@ def u_corrected(tau, phi, return_Fourier_error=False): #) # Option 1 NT_corrections[N:, :, :] += IMS_correction(tau, phi) # Option 2 - + + NT_corrections[np.isclose(NT_corrections, 0)] = 0 if return_Fourier_error: u_star_outputs = u_star(tau, phi, True) return ( - u_star_outputs[0] + np.squeeze(NT_corrections), + u_star_outputs[0] + I0_orig * np.squeeze(NT_corrections), u_star_outputs[1], ) else: - return u_star(tau, phi, False) + np.squeeze(NT_corrections) + return u_star(tau, phi, False) + I0_orig * np.squeeze(NT_corrections) # -------------------------------------------------------------------------------------------------------------------------- return mu_arr, flux_up, flux_down, u0, u_corrected @@ -439,7 +455,7 @@ def u_corrected(tau, phi, return_Fourier_error=False): NLayers, NBDRF, weighted_scaled_Leg_coeffs, weighted_Leg_coeffs_BDRF, - mu0, I0, phi0, + mu0, I0, I0_orig, phi0, b_pos, b_neg, scalar_b_pos, scalar_b_neg, s_poly_coeffs, diff --git a/src/PythonicDISORT/subroutines.py b/src/PythonicDISORT/subroutines.py index 33c4d7f..813a117 100644 --- a/src/PythonicDISORT/subroutines.py +++ b/src/PythonicDISORT/subroutines.py @@ -107,7 +107,7 @@ def Gauss_Legendre_quad(N, c=0, d=1): Quadrature weights. """ - mu_arr_pos, W = leggauss(N) + mu_arr_pos, W = leggauss(int(N)) return transform_interval(mu_arr_pos, c, d), transform_weights(W, c, d) @@ -273,20 +273,28 @@ def _compare(results, mu_to_compare, reorder_mu, flux_up, flux_down, u): # -------------------------------------------------------------------------------------------------- print("Max pointwise differences") print() - + # Upward (diffuse) fluxes print("Upward (diffuse) fluxes") diff_flux_up = np.abs(flup - flux_up(tau_test_arr)) - ratio_flux_up = diff_flux_up / np.clip(flup, a_min=1e-6, a_max=None) + ratio_flux_up = np.divide( + diff_flux_up, + flup, + out=np.zeros_like(diff_flux_up), + where=~np.isclose(flup, 0), + ) print("Difference =", np.max(diff_flux_up)) print("Difference ratio =", np.max(ratio_flux_up)) print() - + # Downward (diffuse) fluxes print("Downward (diffuse) fluxes") diff_flux_down_diffuse = np.abs(rfldn - flux_down(tau_test_arr)[0]) - ratio_flux_down_diffuse = diff_flux_down_diffuse / np.clip( - rfldn, a_min=1e-6, a_max=None + ratio_flux_down_diffuse = np.divide( + diff_flux_down_diffuse, + rfldn, + out=np.zeros_like(diff_flux_down_diffuse), + where=~np.isclose(rfldn, 0), ) print("Difference =", np.max(diff_flux_down_diffuse)) print( @@ -294,21 +302,31 @@ def _compare(results, mu_to_compare, reorder_mu, flux_up, flux_down, u): np.max(ratio_flux_down_diffuse), ) print() - + # Direct (downward) fluxes print("Direct (downward) fluxes") diff_flux_down_direct = np.abs(rfldir - flux_down(tau_test_arr)[1]) - ratio_flux_down_direct = diff_flux_down_direct / np.clip(rfldir, a_min=1e-6, a_max=None) + ratio_flux_down_direct = np.divide( + diff_flux_down_direct, + rfldir, + out=np.zeros_like(diff_flux_down_direct), + where=~np.isclose(rfldir, 0), + ) print("Difference =", np.max(diff_flux_down_direct)) print( "Difference ratio =", np.max(ratio_flux_down_direct), -) + ) print() # Intensity diff = np.abs(uu - u(tau_test_arr, phi_arr)[reorder_mu])[mu_to_compare] - diff_ratio = diff / np.clip(uu[mu_to_compare], a_min=1e-6, a_max=None) + diff_ratio = np.divide( + diff, + uu[mu_to_compare], + out=np.zeros_like(diff), + where=~np.isclose(uu[mu_to_compare], 0), + ) max_diff_tau_index = np.argmax(np.max(np.max(diff, axis=0), axis=1)) max_ratio_tau_index = np.argmax(np.max(np.max(diff_ratio, axis=0), axis=1))