{ "cells": [ { "cell_type": "markdown", "id": "45d1dfdc", "metadata": {}, "source": [ "# Compare step response functions with impulse response equations\n", "\n", "This notebook has two topics:\n", "1. It checks the step response functions by numerically integrating the impulse response functions.\n", "2. It compares the Polder, Hantush, and HantushWell response functions to their classical equivalents and gives relationships between the parameters used in Pastas and the aquifer parameters used in the classical functions." ] }, { "cell_type": "code", "execution_count": 1, "id": "938b129f-c9ac-418d-879e-f2eba52298d4", "metadata": {}, "outputs": [], "source": [ "from inspect import getsource\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "from scipy.integrate import quad\n", "from scipy.special import exp1, k0, lambertw\n", "\n", "import pastas as ps" ] }, { "cell_type": "code", "execution_count": 2, "id": "c0335c02-6e9b-4cb4-8f31-5378c8a769cb", "metadata": {}, "outputs": [], "source": [ "plt.rcParams[\"figure.figsize\"] = [3.6, 2.4]\n", "plt.rcParams[\"font.size\"] = 8\n", "plt.rcParams[\"axes.grid\"] = True" ] }, { "cell_type": "markdown", "id": "7ca33adb-b484-4836-894e-daaa3c560807", "metadata": {}, "source": [ "## Comparison of step function with numerical integration of the impulse response function" ] }, { "cell_type": "markdown", "id": "9a50691a-85cb-487b-87ad-a238224cdda2", "metadata": {}, "source": [ "### Gamma" ] }, { "cell_type": "code", "execution_count": 3, "id": "c5a802df-52d5-49c7-95c0-aa026b94b4f6", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " @staticmethod\n", " def impulse(t: ArrayLike, p: ArrayLike) -> ArrayLike:\n", " A, n, a = p\n", " return A * t ** (n - 1) * np.exp(-t / a) / (a**n * gamma(n))\n", "\n" ] } ], "source": [ "print(getsource(ps.Gamma.impulse))" ] }, { "cell_type": "code", "execution_count": 4, "id": "7b8bf54b-44ac-444c-9f30-4fad27b5a546", "metadata": {}, "outputs": [], "source": [ "A = 5\n", "n = 1.5\n", "a = 50\n", "p = [A, n, a]\n", "\n", "gamma = ps.Gamma()\n", "tmax = gamma.get_tmax(p)\n", "t = np.arange(0, tmax)\n", "\n", "step = gamma.step(p)\n", "stepnum = np.zeros(len(t))\n", "for i in range(1, len(t)):\n", " stepnum[i] = quad(gamma.impulse, 0, t[i], args=(p))[0]" ] }, { "cell_type": "code", "execution_count": 5, "id": "41d2e835-bf3a-47e7-9f6b-7d0dce2d9c6b", "metadata": {}, "outputs": [ { "data": { "image/png": "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OnRQ+/bt0zlZ4/ptsaxvm33189i6datKSEhQSinVqlUrdezYMdd7mZmZ6osvvjjney3VwoULVVpaml987w6HQ40aNUpt27ZNjRgxwlUs9fjOW8Ttjp6ob8jdusb78QX1bXNERIRPfh7z589n0qRJnDx5EpvNRseOHV3vJSYmcvjw4Xrfa4mys7NZt24dAKtWrfKL733evHkMGTKE/v37u17T6zv3uWIpfN9jjz3G/v37WbNmDdXV1XrH8Zq33noLgH/+85/89a9/5ZFHHtE5UdPauXMny5YtazbHmX3uBI8nQ+76ivq22dc+j6effprly5fz2WefERoaSrt27QgICKCoqMjVJj8/n/j4+Hrfa8luvPFG1q1bR2xsrE9/7xs3biQ/P58ePXqQmJjIpk2bmD59Ou+9954+3/l578g3QyNGjKh1YLt///76BmoCvz/BU982+8rn8cwzz6h+/fqpn3/+udbrN954Y60D+p07d3Yd0K/vvZaitLRUHTlyxDX94YcfqpiYGOV0Ov3ie//Vb49Z6vGd+2SxzMvLU1lZWapHjx6qf//+6scff9Q7UqOZPn26iomJUUajUUVHR6tu3bopperfZl/4PAoKChSgunbtqtLS0lRaWpoaMGCAUkqpoqIiNXr0aNW9e3fVq1cvtXbtWtd89b3XUuTn56vMzEyVkpKiUlNT1ahRo1z/o/T17/23flss9fjO5d5wIYRwg88dsxRCiKYgxVIIIdwgxVIIIdwgxVIIIdwgxVIIIdwgxVIIIdwgxVIIIdwgxVLo7uGHH6ampsY1PXPmTP71r3816TqrqqrIyMigoqKizvczMjJYv349AH/5y19YsmRJk+YRzZ9clC50p2kapaWlREZGem2dTz75JBaLhYceeqjO9zMyMnj66ae58MILKS4uZujQoezevRuj0ei1jKJ5kZ6l0NXtt98OwLBhw0hPT6e4uJhp06bx3HPPAad7nVdddRUTJ04kKSmJCRMmsHPnTsaOHUtSUhJTp07F6XQCUFFRwW233caAAQNITU1l+vTpWK3WOtf76quvcu2117qmv/nmG9LT00lJSeGmm25yPYACIDo6mm7duvH555830acgWgIplkJXr7zyCnD6CTM5OTlER0ef0Wbbtm289dZb7Nmzh4qKCm699VY++OADcnNz2b17N5999hkA999/P8OGDWPLli388MMPOJ1O5s+ff8byCgoKMJvNdOvWDQCr1crVV1/N008/zc6dO5k6dSo//PBDrXkGDRrEmjVrGnvzRQsiz7MUzd6YMWNo06YNAP369cNkMhEWFgZA37592bdvHwArVqzg22+/Zd68eQBUV1fXudtcWFhIhw4dXNN5eXkEBATwhz/8wbW+rl271pqnY8eO5ObmNv7GiRZDiqVo9oKDg13/NhqNZ0z/9pmNy5YtIykpqd7lhYaG1jqhVBdN02pN19TUEBIS4ml04UNkN1zoLiwsDLPZfN7LmTx5Mk888YSreJaWlrpGgPyt5ORkiouLXU9Z79mzJ3a73TVkw5dffsmBAwdqzbN7927S0tLOO6NouaRYCt3df//9jB492nWCp6GeffZZQkJCSE9PJzU1lVGjRpGfn39Gu+DgYMaMGcPatWsBCAoKYunSpdx777306dOHJUuW1CqMSinWrFnDZZdd1uBsouWTS4eEX9qyZQtz5szh008/PWfb1atXs3jxYhYvXuyFZKK5kp6l8EsDBgzg8ssvP+tF6b9lNpt58sknvZBKNGfSsxRCCDdIz1IIIdwgxVIIIdwgxVIIIdwgxVIIIdwgxVIIIdwgxVIIIdwgxVIIIdwgxVIIIdzw/wHmmXl2NAh8mwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t[1:], step, label=\"analytic\")\n", "plt.plot(t, stepnum, \"--\", label=\"numerical\")\n", "plt.xlabel(\"time (d)\")\n", "plt.ylabel(\"step (m)\")\n", "plt.grid()\n", "_ = plt.legend() # try to show figure in readthedocs" ] }, { "cell_type": "markdown", "id": "94fb2160-3637-43c7-b8f1-25d508c9b485", "metadata": {}, "source": [ "### Exponential" ] }, { "cell_type": "code", "execution_count": 6, "id": "c4508596-cf12-4ed4-b74a-567b25a88ee5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " @staticmethod\n", " def impulse(t: ArrayLike, p: ArrayLike) -> ArrayLike:\n", " A, a = p\n", " return A / a * np.exp(-t / a)\n", "\n" ] } ], "source": [ "print(getsource(ps.Exponential.impulse))" ] }, { "cell_type": "code", "execution_count": 7, "id": "77ca80bb-c678-46c1-aab1-f0e2ec60ebdf", "metadata": {}, "outputs": [], "source": [ "A = 5\n", "a = 50\n", "p = [A, a]\n", "\n", "exponential = ps.Exponential()\n", "tmax = exponential.get_tmax(p)\n", "t = np.arange(0, tmax)\n", "\n", "step = exponential.step(p)\n", "stepnum = np.zeros(len(t))\n", "for i in range(1, len(t)):\n", " stepnum[i] = quad(exponential.impulse, 0, t[i], args=(p))[0]" ] }, { "cell_type": "code", "execution_count": 8, "id": "6172dd00-763c-4f25-b4f0-3c34a15b3c33", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t[1:], step, label=\"analytic\")\n", "plt.plot(t, stepnum, \"--\", label=\"numerical\")\n", "plt.xlabel(\"time (d)\")\n", "plt.ylabel(\"step (m)\")\n", "_ = plt.legend() # try to show figure in readthedocs" ] }, { "cell_type": "markdown", "id": "5d007aa2-7c99-4c3c-9c2a-f413a8f5a5a3", "metadata": {}, "source": [ "### Hantush" ] }, { "cell_type": "code", "execution_count": 9, "id": "750373d0-402a-478c-b1f4-b3457cdb4812", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " @staticmethod\n", " def impulse(t: ArrayLike, p: ArrayLike) -> ArrayLike:\n", " A, a, b = p\n", " return A / (2 * t * k0(2 * np.sqrt(b))) * np.exp(-t / a - a * b / t)\n", "\n" ] } ], "source": [ "print(getsource(ps.Hantush.impulse))" ] }, { "cell_type": "code", "execution_count": 10, "id": "35790f67-b518-4367-90c3-2d5a425da0c2", "metadata": {}, "outputs": [], "source": [ "A = 5\n", "a = 50\n", "b = 2\n", "p = [A, a, b]\n", "\n", "hantush = ps.Hantush()\n", "tmax = hantush.get_tmax(p)\n", "t = np.arange(0, tmax)\n", "\n", "step = hantush.step(p)\n", "stepnum = np.zeros(len(t))\n", "for i in range(1, len(t)):\n", " stepnum[i] = quad(hantush.impulse, 0, t[i], args=(p))[0]" ] }, { "cell_type": "code", "execution_count": 11, "id": "e63a25d6-1b30-41a2-a02d-d4d013925c30", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t[1:], step, label=\"analytic\")\n", "plt.plot(t, stepnum, \"--\", label=\"numerical\")\n", "plt.xlabel(\"time (d)\")\n", "plt.ylabel(\"step (m)\")\n", "plt.grid()\n", "_ = plt.legend() # try to show figure in readthedocs" ] }, { "cell_type": "markdown", "id": "d5d822c8-f954-4e7c-96c6-de24895d4da8", "metadata": {}, "source": [ "### Polder" ] }, { "cell_type": "code", "execution_count": 12, "id": "c2dd0ae6-fa59-482b-94b1-74b4b31e0a8a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " @staticmethod\n", " def impulse(t: ArrayLike, p: ArrayLike) -> ArrayLike:\n", " A, a, b = p\n", " return A * np.sqrt(a * b / pi) * t ** (-1.5) * np.exp(-t / a - a * b / t)\n", "\n" ] } ], "source": [ "print(getsource(ps.Polder.impulse))" ] }, { "cell_type": "code", "execution_count": 13, "id": "2eaa17db-8cba-4731-926e-4f8479987063", "metadata": {}, "outputs": [], "source": [ "A = 5\n", "a = 100\n", "b = 0.25\n", "p = [A, a, b]\n", "\n", "polder = ps.Polder()\n", "tmax = polder.get_tmax(p)\n", "t = np.arange(0, tmax)\n", "\n", "step = polder.step(p)\n", "stepnum = np.zeros(len(t))\n", "for i in range(1, len(t)):\n", " stepnum[i] = quad(polder.impulse, 0, t[i], args=(p))[0]" ] }, { "cell_type": "code", "execution_count": 14, "id": "419cf91b-9a53-440d-958d-fc085ec0a4b8", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t[1:], step, label=\"analytic\")\n", "plt.plot(t, stepnum, \"--\", label=\"numerical\")\n", "plt.xlabel(\"time (d)\")\n", "plt.ylabel(\"step (m)\")\n", "_ = plt.legend() # try to show figure in readthedocs" ] }, { "cell_type": "markdown", "id": "cd0facf9-763d-47a6-b722-ebf50b02a2d1", "metadata": {}, "source": [ "### Four-parameter function" ] }, { "cell_type": "code", "execution_count": 15, "id": "57d08799-3632-4bb6-84a1-509f72a5861a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " @staticmethod\n", " def impulse(t: ArrayLike, p: ArrayLike) -> ArrayLike:\n", " _, n, a, b = p\n", " return (t ** (n - 1)) * np.exp(-t / a - a * b / t)\n", "\n" ] } ], "source": [ "print(getsource(ps.FourParam.impulse))" ] }, { "cell_type": "code", "execution_count": 16, "id": "83601f06-0737-4ae9-b7eb-0b113a90bc85", "metadata": {}, "outputs": [], "source": [ "A = 1 # impulse response implemented for A=1 only\n", "n = 1.5\n", "a = 50\n", "b = 10\n", "p = [A, n, a, b]\n", "\n", "fourparam = ps.FourParam(quad=False) # use simple integration\n", "tmax = fourparam.get_tmax(p)\n", "t = np.arange(0, tmax)\n", "\n", "step = fourparam.step(p)\n", "stepnum = np.zeros(len(t))\n", "for i in range(1, len(t)):\n", " stepnum[i] = quad(fourparam.impulse, 0, t[i], args=(p))[0]\n", "stepnum = (\n", " stepnum / quad(fourparam.impulse, 0, np.inf, args=p)[0]\n", ") # four param is scaled at the end" ] }, { "cell_type": "code", "execution_count": 17, "id": "095f83cb-9a04-4651-8031-7f2f84445c54", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t[1:], step, label=\"analytic\")\n", "plt.plot(t, stepnum, \"--\", label=\"numerical\")\n", "plt.xlabel(\"time (d)\")\n", "plt.ylabel(\"step (m)\")\n", "plt.grid()\n", "_ = plt.legend() # try to show figure in readthedocs" ] }, { "cell_type": "markdown", "id": "d0396351-cd54-4666-b847-862ee442a032", "metadata": {}, "source": [ "### Double exponential function" ] }, { "cell_type": "code", "execution_count": 18, "id": "07790a6a-8ec8-4b95-9160-a832b2aceed2", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " @staticmethod\n", " def impulse(t: ArrayLike, p: ArrayLike) -> ArrayLike:\n", " A, alpha, a_1, a_2 = p\n", " return A * (\n", " (1 - alpha) / a_1 * np.exp(-t / a_1) + alpha / a_2 * np.exp(-t / a_2)\n", " )\n", "\n" ] } ], "source": [ "print(getsource(ps.DoubleExponential.impulse))" ] }, { "cell_type": "code", "execution_count": 19, "id": "42e26e95-9afb-4595-b170-0f5ee6e0a186", "metadata": {}, "outputs": [], "source": [ "A = 5 # impulse response implemented for A=1 only\n", "a = 10\n", "b = 50\n", "f = 0.4\n", "p = [A, f, a, b]\n", "\n", "doubexp = ps.DoubleExponential()\n", "tmax = doubexp.get_tmax(p)\n", "t = np.arange(0, tmax)\n", "\n", "step = doubexp.step(p)\n", "stepnum = np.zeros(len(t))\n", "for i in range(1, len(t)):\n", " stepnum[i] = quad(doubexp.impulse, 0, t[i], args=(p))[0]" ] }, { "cell_type": "code", "execution_count": 20, "id": "8299b68e-fe97-45cf-8b5b-7f61534d6a60", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t[1:], step, label=\"analytic\")\n", "plt.plot(t, stepnum, \"--\", label=\"numerical\")\n", "plt.xlabel(\"time (d)\")\n", "plt.ylabel(\"step (m)\")\n", "_ = plt.legend() # try to show figure in readthedocs" ] }, { "cell_type": "markdown", "id": "f5b5fa2c", "metadata": {}, "source": [ "### Kraijenhoff\n", "\n", "#### Kraijenhoff van de Leur\n", "\n", "##### Impulse Response\n", "from [A study of non-steady groundwater flow with special reference to a reservoir-coefficient (1958)](https://edepot.wur.nl/422032) formula 2\n", "\n", "$ \\theta(t) = \\frac{4N}{\\pi S} \\sum_{n=1,3,5...}^\\infty \\left( \\frac{1}{n} \\exp{\\left( {-n^2\\frac{\\pi^2T}{SL^2} t} \\right)} \\sin \\left(\\frac{n\\pi x}{L}\\right) \\right) $\n", "\n", "##### Step Response\n", "\n", "The step response is obtained by taking the integral of the impulse response function\n", "\n", "$ \\Theta(t) = \\frac{4 N}{\\pi S} \\sum_{n=1,3,5...}^\\infty \\frac{1}{n^3} \\left(\\frac{SL^2}{\\pi^2 T} - \\frac{SL^2}{\\pi^2 T} \\exp\\left(-n^2\\frac{\\pi^2T}{SL^2}t\\right)\\right) \\sin \\left(\\frac{n\\pi x}{L}\\right) $\n", "\n", "$ \\Theta(t) = \\frac{4 N L^2}{\\pi^3 T} \\sum_{n=1,3,5...}^\\infty \\frac{1}{n^3} \\left(1 - \\exp\\left(-n^2\\frac{\\pi^2T}{SL^2}t\\right)\\right) \\sin \\left(\\frac{n\\pi x}{L}\\right)$\n", "\n", "And $\\sum_{n=1,3,5...}^\\infty n = \\sum_{n=0}^\\infty (2n+1)$ gives:\n", "\n", "$ \\Theta(t) = \\frac{4 N L^2}{\\pi^3 T} \\sum_{n=0}^\\infty \\frac{1}{(2n+1)^3} \\left(1 - \\exp\\left(-(2n+1)^2\\frac{\\pi^2T}{SL^2}t)\\right)\\right) \\sin \\left(\\frac{(2n+1)\\pi x}{L}\\right)$\n", "\n", "\n", "Kraijenhoff van de Leur takes $\\frac{x}{L}=\\frac{1}{2}$ as the middle of the domain. \n", "\n", "#### Bruggeman \n", "\n", "from Analytical Solutions of Geohydrological Problems (1999) formula 133.15\n", "\n", "##### Step Response\n", "\n", "$ \\Theta(t) = \\frac{-N}{2T}\\left(x^2 - \\frac{1}{4}L^2\\right) - \\frac{4NL^2}{\\pi^3T} \\sum_{n=0}^\\infty\n", "\\frac{(-1)^n}{(2n + 1)^3} \\cos\\left(\\frac{(2n+1)\\pi x}{L}\\right)\n", "\\exp\\left(-\\frac{(2n+1)^2\\pi^2 T}{SL^2}t\\right)\n", "$\n", "\n", "$ \\Theta(t) = \\frac{-NL^2}{2T}\\left(\\left(\\frac{x}{L}\\right)^2 - \\frac{1}{4}\\right) - \\frac{4NL^2}{\\pi^3T} \\sum_{n=0}^\\infty\n", "\\frac{(-1)^n}{(2n + 1)^3} \n", "\\exp\\left(-\\frac{(2n+1)^2\\pi^2 T}{SL^2}t\\right) \\cos\\left(\\frac{(2n+1)\\pi x}{L}\\right)\n", "$\n", "\n", "$ \\Theta(t) = \\frac{-NL^2}{2T}\\left(\\left(\\frac{x}{L}\\right)^2 - \\tfrac{1}{4}\\right) \\left(1 - \\frac{8}{\\pi^3 \\left(\\frac{1}{4} - \\left(\\frac{x}{L}\\right)^2\\right)} \\sum_{n=0}^\\infty\n", "\\frac{(-1)^n}{(2n + 1)^3} \n", "\\exp\\left(-\\frac{(2n+1)^2\\pi^2 T}{SL^2}t\\right) \\cos\\left(\\frac{(2n+1)\\pi x}{L}\\right) \\right)\n", "$\n", "\n", "Note that $x=0$ is the middle of the domain for Bruggeman.\n", "\n", "#### Pastas Implementation\n", "\n", "In Pastas the Bruggeman response function is computed and the parameters are transformed to:\n", "\n", "Scale parameter (such that the gain is always $A$):\n", "\n", "$A = \\frac{-NL^2}{2T}\\left(\\left(\\frac{x}{L}\\right)^2 - \\tfrac{1}{4}\\right)$\n", "\n", "Reservoir coefficient (also known as $j$ in Kraijenhoff):\n", "\n", "$a = \\frac{SL^2}{\\pi^2 T}$\n", "\n", "Location in the domain:\n", "\n", "$b = \\frac{x}{L}$\n", "\n", "\n", "Such that the step response becomes:\n", "\n", "$ \\Theta(t) = A\\left(1 - \\frac{8}{\\pi^3(\\frac{1}{4} - b^2)} \\sum_{n=0}^\\infty \\frac{(-1)^n}{(2n+1)^3} \\cos\\left((2n+1)\\pi b\\right)\\exp\\left(-\\frac{(2n+1)^2t}{a}\\right) \\right)$\n", "\n", "Taking the derivative gives the impulse response:" ] }, { "cell_type": "code", "execution_count": 21, "id": "798ab1b1", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " @staticmethod\n", " def impulse(t: ArrayLike, p: ArrayLike, n_terms: int = 10) -> ArrayLike:\n", " A, a, b = p\n", " leading_term = A * 8 / (pi**3 * ((1 / 4) - b**2))\n", "\n", " h = 0.0\n", " for n in range(n_terms):\n", " k = 2 * n + 1\n", " oscillation_term = (-1) ** n / (a * k) * np.cos(k * pi * b)\n", " decay_term = np.exp(-(k**2 * t) / a)\n", " h += oscillation_term * decay_term\n", "\n", " return leading_term * h\n", "\n" ] } ], "source": [ "print(getsource(ps.Kraijenhoff.impulse))" ] }, { "cell_type": "code", "execution_count": 22, "id": "c3835b9e", "metadata": {}, "outputs": [], "source": [ "A = 5\n", "a = 10\n", "b = 0.25\n", "p = [A, a, b]\n", "\n", "khoff = ps.Kraijenhoff()\n", "tmax = khoff.get_tmax(p)\n", "t = np.arange(0, tmax)\n", "\n", "step = khoff.step(p)\n", "stepnum_brug = np.zeros(len(t))\n", "\n", "for i in range(1, len(t)):\n", " stepnum_brug[i] = quad(khoff.impulse, 0, t[i], args=(p))[0]" ] }, { "cell_type": "code", "execution_count": 23, "id": "e2c870cd", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(t[1:], step, label=\"analytic\")\n", "plt.plot(t, stepnum_brug, \"--\", label=\"numerical Bruggeman\")\n", "plt.xlabel(\"time (d)\")\n", "plt.ylabel(\"step (m)\")\n", "plt.grid()\n", "_ = plt.legend() # try to show figure in readthedocs" ] }, { "cell_type": "markdown", "id": "6ee7967d-0699-428c-b9fe-23a3f2b65894", "metadata": {}, "source": [ "## Comparison to classical analytical response functions" ] }, { "cell_type": "markdown", "id": "c35cd520-32a0-4d17-8f66-ec7f34eadbaa", "metadata": {}, "source": [ "### Polder step function compared to classic polder function\n", "The classic polder function is (Eq. 123.32 in Bruggeman, 1999)\n", "\n", "$$\n", "h(t) = \\Delta h \\text{P}\\left(\\frac{x}{2\\lambda}, \\sqrt{\\frac{t}{cS}}\\right)\n", "$$\n", "\n", "where P is the polder function." ] }, { "cell_type": "code", "execution_count": 24, "id": "eabfe32f-5b8d-4ecc-a18b-6698e3ddc379", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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lCmNplteXs68efMYOnQocXFx3HFH4zvDduzYwfjx40lISGDw4ME8+eSTzvf+85//EBsbS3x8PEOHDuXjjz8G4Mknn2TQoEHEx8c7/xhA3e7zyZMnAfjpp5+48soriY2NJTY2lldffdWl+dgSmp+V9iTf7z/OEvN1vOQ9lW+uvELrOEJD1VY7g//03zb9jF1/vhI/75avgjt27GD37t3ExcVx7733EhMTw+rVqykpKWHEiBHExcWRmJhYb5zbb7+du+++mzvvvJMdO3YwcuRIZs2aBcDvf/97JkyYQGpqKuXl5fzhD3/g+eef549//CMAe/fuZePGjU0em7vvvvvw9fVl+/bt6PV6jh071qhNREQEX375JSaTierqasaOHcsVV1xBYmIiixYtIjU1lTFjxji3BE+cOMHTTz9NcXExvr6+VFVVNTqWaLPZ+NWvfsWSJUu49da6xxeXlpa2eB62lBTGM7z3YwEAU4ZfhL8bT7oI0Ro333wzvr6++Pn58cYbbxAVFcUXX3zBli1bgLqTojNmzOCLL76oVxjNZjPZ2dkkJycDMGzYMMaPH+98f82aNWRmZvLss89it9upra2tt8s8e/bss56w+PTTT/nhhx+chatXr16N2lRXV/PrX/+a7Oxs9Ho9hYWFZGdnk5iYyOWXX87vfvc7brjhBqZMmUJ8fDx2u52oqChmz57NlClTuOaaawgNDa03zdzcXGpqapxFEaBnz54uztFzk8L4sxOlRynK+RYYyKzR53/5kegYfL0M7Przla2ahsPhoMJcQUBgQJNnUX29WvaIjNPHGJvT0stszmynlCI9PZ3IyEjMZjOBgYH1cnbp0rqNg0ceeYSePXuydetWjEYjM2bMoKamBoBnn32WnJwcvvrqK+bMmcNtt93Ggw8+yPfff8+mTZv4+uuvSUxM5L333mPChAmtynE+5Bjjz/Z+/gofGh8jLfA1hoYEaR1HaEyn0+HnbWz1P19vw1nfa801g1dccQWvvfYaAMeOHWP16tUkJdXv6CQwMJDhw4fz1ltvAZCTk8N3333nfP/666/nL3/5i/Ni9hMnTpCXl9eiz582bRpPP/208xKapnalT5w4QWhoKEajkT179tS7IH/37t0MGTKElJQU7rnnHr7//nsqKio4evQoEyZM4LHHHmP8+PFs3bq13jSjoqLw8/Pjvffecw5ri11p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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from scipy.special import erfc\n", "\n", "\n", "def polder_classic(t, x, T, S, c):\n", " X = x / (2 * np.sqrt(T * c))\n", " Y = np.sqrt(t / (c * S))\n", " rv = 0.5 * np.exp(2 * X) * erfc(X / Y + Y) + 0.5 * np.exp(-2 * X) * erfc(X / Y - Y)\n", " return rv\n", "\n", "\n", "delh = 2\n", "T = 20\n", "c = 5000\n", "S = 0.01\n", "x = 400\n", "x / np.sqrt(c * T)\n", "t = np.arange(1, 121)\n", "h_polder_classic = np.zeros(len(t))\n", "for i in range(len(t)):\n", " h_polder_classic[i] = delh * polder_classic(t[i], x=x, T=T, S=S, c=c)\n", "#\n", "A = delh\n", "a = c * S\n", "b = x**2 / (4 * T * c)\n", "hpd = polder.step([A, a, b], dt=1, cutoff=0.95)\n", "#\n", "plt.plot(t, h_polder_classic, label=\"Polder classic\")\n", "plt.plot(np.arange(1, len(hpd) + 1), hpd, label=\"Polder Pastas\", linestyle=\"--\")\n", "plt.legend()" ] }, { "cell_type": "markdown", "id": "f500c884-3efc-4312-bcda-a1a6b4c792e1", "metadata": { "tags": [] }, "source": [ "### Hantush step function compared to classic Hantush function\n", "The classic Hantush function is \n", "\n", "$$\n", "h(r, t) = \\frac{-Q}{4\\pi T}\\int_u ^\\infty \\exp\\left(-y - \\frac{r^2}{4 \\lambda^2 y} \\right) \\frac{\\text{d}y}{y} \n", "$$\n", "\n", "where\n", "\n", "$$\n", "u=\\frac{r^2 S}{4 T t}\n", "$$\n", "\n", "For large time, the classic Hantush function goes to\n", "\n", "$$\n", "\\lim_{t\\to\\infty} h(r, t) = \\frac{-Q}{2\\pi T}\\text{K}_0(r/\\lambda)\n", "$$\n", "\n", "where $\\lambda^2=cT$. \n", "The classic Hantush function is a step function. The impulse response function $\\theta$ is obtained by differentiation\n", "\n", "$$\n", "\\theta(t) = \\frac{\\partial h}{\\partial t} = \\frac{-Q}{4\\pi Tt} \\exp\\left(\\frac{-t}{cS} -\\frac{r^2cS}{4cTt}\\right)\n", "$$\n", "\n", "The Hantush impulse response function used in Pastas is defined as\n", "\n", "$$\n", "\\theta(t) = A\\frac{1}{2\\text{K}_0(2\\sqrt{b})} \\frac{1}{t} e^{-t/a - ab/t} \n", "$$\n", "\n", "Hence, the parameters in Pastas are related to the classic Hantush function as\n", "\n", "$$\n", "A = -\\frac{\\text{K}_0(2\\sqrt{b})}{2\\pi T}\n", "$$\n", "\n", "$$\n", "a = cS\n", "$$\n", "\n", "$$\n", "b = \\frac{r^2}{4\\lambda^2}\n", "$$" ] }, { "cell_type": "code", "execution_count": 25, "id": "a7caf2eb-2d75-42ba-8fea-8b06eef189e6", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def integrand_hantush(y, r, lab):\n", " return np.exp(-y - r**2 / (4 * lab**2 * y)) / y\n", "\n", "\n", "def hantush_classic(t=1, r=1, Q=1, T=100, S=1e-4, c=1000):\n", " lab = np.sqrt(T * c)\n", " u = r**2 * S / (4 * T * t)\n", " F = quad(integrand_hantush, u, np.inf, args=(r, lab))[0]\n", " return -Q / (4 * np.pi * T) * F\n", "\n", "\n", "# Hantush parameters\n", "c = 200.0 # d\n", "S = 0.1 # -\n", "T = 100.0 # m^2/d\n", "r = 100.0 # m\n", "Q = 20.0 # m^3/d\n", "lab = np.sqrt(T * c)\n", "\n", "# Pastas Hantush parameters\n", "A = k0(r / lab) / (2 * np.pi * T)\n", "a = c * S\n", "b = r**2 / (4 * T * c)\n", "\n", "# calculate Pastas step response\n", "ht = hantush.step([A, a, b], dt=1, cutoff=0.99) * -Q # multiply by Q\n", "\n", "# calculate classic Hantush step response\n", "t = np.arange(1, len(ht) + 1)\n", "h_hantush_classic = np.zeros(len(t))\n", "for i in range(len(t)):\n", " h_hantush_classic[i] = hantush_classic(t[i], r=r, Q=Q, T=T, S=S, c=c)\n", "\n", "# plot comparison\n", "plt.plot(t, h_hantush_classic, label=\"Hantush classic\")\n", "plt.plot(np.arange(1, len(ht) + 1), ht, \"--\", label=\"Hantush Pastas\")\n", "plt.axhline(-Q * A, ls=\"dashed\", c=\"k\", label=\"Q*A\")\n", "_ = plt.legend()" ] }, { "cell_type": "markdown", "id": "82236f09", "metadata": {}, "source": [ "#### Approximation for the tmax of the Hantush response\n", "\n", "For large $t$, the Hantush function may be approximated as\n", "\\begin{equation*}\n", "h \\approx \\frac{2\\text{K}_0(r/\\lambda) - \\text{exp1}(\\tau)} {2\\text{K}_0(r/\\lambda)}\n", "\\end{equation*}\n", "\n", "where\n", "\n", "\\begin{equation*}\n", "\\tau = \\frac{t}{cS}\n", "\\end{equation*}\n", "\n", "Using the $a$ and $b$ of `pastas` this gives\n", "\n", "\\begin{equation*}\n", "\\tau = t/a\n", "\\end{equation*}\n", "\n", "\\begin{equation*}\n", "h \\approx \\frac{2\\text{K}_0(2\\sqrt{b}) - \\text{exp1}(t/a)} {2\\text{K}_0(2\\sqrt{b})}\n", "\\end{equation*}" ] }, { "cell_type": "code", "execution_count": 26, "id": "1edb7e03", "metadata": {}, "outputs": [ { "data": { "image/png": "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8oirQzkvs9nMsWPHGDBgAFu2bOGf//wn119/PWaz2dWhNWM2m3nqqadYs2YNx44dY/369dxyyy1uF2dH9/N29cYbb3DgwAF27drFuHHjmiVtzvTNN9+wa9cutm3bRteuXbnttttcEsf5LFu2jFtvvdX2Yegux0+4t47y/vZUHen4Oz33aX9Hs3tw12740y1atEgNHTpUFRcX257z9/d3m1PTL730kurWrZtKSEhQCQkJysfHR0VERKiXXnrJreJUSqmCggJlMBiU2Wy2PZeWlqZWrlzpVu+DzZs3q969ezd7Li0tTX3++edud0zPx13b2Nna1c/5+PioU6dOOS+oszh+/LgKDAx0u+NYXl6uAgMD1f79+1tcx9nHryOfOm6rjv67uOv7++c68nvrXDW2jcdfKfd7L11o7mOPz0aP6bmNjIxkyJAhrFixAoDVq1cTGxtLr169XByZ7rnnnuO///0vX3zxBaGhobbnr732WhYvXgzA5s2byc3NZfz48S6J8c477yQvL4/MzEwyMzMZOXIkL7/8MnfeeadbxQnQtWtXJk2axGeffQbA0aNHOXr0KGPGjHGr90FcXBx5eXns378fgPT0dDIyMujbt6/bHdPzccc2drZ2ZTabOXnypG2d1atXExUVRXh4uFNjq6yspKSkxPb4v//9L4MHD3a747hy5UoGDRpEv379APc5fo3Odbzc7Vi2R0f7XTrK+/tcOvJ7q6XjD+71XmpL7mOXz8b25ePu5cCBA2rkyJGqd+/eaujQoWrXrl2uDkkppVR2drYCVFJSkho0aJAaNGiQGj58uFJKqRMnTqjLLrtM9erVSw0YMEB9+eWXLo62yekXlbhjnBkZGWrChAkqOTlZDRw4UK1atUop5X7vg7feessWY3JysnrzzTeVUu55TM/HnY5tS+2qoqJCDR061HbML7nkErVjxw6nx5eRkaFSU1NVSkqKSk5OVtOmTVNHjx5VSrnXcRw1apR65ZVXbI9defzmzp2rYmJilNFoVJGRkapnz55KqXMfL3c6lu3VkX6XjvL+btSR31tni/1cx99dYm9r7mOPz0aZflcIIYQQQngMjylLEEIIIYQQQpJbIYQQQgjhMSS5FUIIIYQQHkOSWyGEEEII4TEkuRVCCCGEEB5DklshhBBCCOExJLkVQgghhBAeQ5JbIYQQQgjhMSS5Fc08/vjj1NTU2B7/5S9/4c0333ToPquqqkhLS6O8vPysr6elpbFhwwYA7rvvPt566y2HxiOEo0j7EsKxpI0JAJmhTDSjaRrFxcXN5oB2tGeeeYba2loeffTRs76elpbGs88+y4QJE8jPz2fs2LHs378fo9HotBiFsAdpX0I4lrQxAdJzK04zf/58AMaNG0dqair5+fnMnj2bF154AdC/EV933XVcffXV9OnTh6uuuoo9e/YwefJk+vTpw4033ojVagWgvLycO+64g+HDhzNw4EDmzp1LXV3dWfe7ZMkSbrrpJtvjjRs3kpqaSnJyMrfffjtms9n2WmRkJD179uTzzz930FEQwjGkfQnhWNLGRCNJboXN4sWLAfj222/ZsWMHkZGRZ6yzZcsWXn/9dQ4ePEh5eTlz5sxh1apV7Nu3j/379/PJJ58AcO+99zJu3Dh++ukndu7cidVq5cUXXzxje9nZ2ZSWltKzZ08A6urquP7663n22WfZs2cPN954Izt37mz2M6NGjWL9+vX2/vWFcChpX0I4lrQx0cjk6gBEx3L55ZcTFhYGwJAhQ/Dx8SEoKAiAwYMHc/jwYQDWrl3Lpk2beO655wCorq4+6ymYnJwcoqKibI8PHDiAyWTi0ksvte0vKSmp2c9069aNffv22f+XE8LFpH0J4VjSxjoHSW7FBfH19bXdNxqNZzxuPP2ilGL16tX06dPnnNvz9/dvVvx/NpqmNXtcU1ODn5/fhYYuhNuT9iWEY0kb6xykLEE0ExQURGlpabu3M336dP7+97/b/lEUFxeTnp5+xnp9+/YlPz+f6upqAPr164fZbOarr74CYN26dWRkZDT7mf379zNo0KB2xyiEs0n7EsKxpI0JkORW/My9997LZZddZivGb6vnn38ePz8/UlNTGThwIJMmTSIzM/OM9Xx9fbn88sv58ssvAfD29mblypX84Q9/ICUlhbfeeqvZPwGlFOvXr+eXv/xlm2MTwlWkfQnhWNLGBMhQYMIN/PTTTzz55JN89NFH5133008/ZcWKFaxYscIJkQnR8Un7EsKxpI25H+m5FS43fPhwrrnmmhYHwD5daWkpzzzzjBOiEsIzSPsSwrGkjbkf6bkVQgghhBAeQ3puhRBCCCGEx5DkVgghhBBCeAxJboUQQgghhMeQ5FYIIYQQQngMSW6FEEIIIYTHkORWCCGEEEJ4DEluhRBCCCGEx5DkVgghhBBCeIz/D1TOH+YTg8IGAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def hantush_approx(t, a, b):\n", " \"\"\" \"Approximation of the Hantush step response for large times.\"\"\"\n", " tau = t / a\n", " return (2 * k0(2 * np.sqrt(b)) - exp1(tau)) / (2 * k0(2 * np.sqrt(b)))\n", "\n", "\n", "r_d = {r\"$r=\\lambda/10$\": lab / 10, r\"$r=\\lambda$\": lab, r\"$r=5\\lambda$\": 5 * lab}\n", "\n", "fig, axes = plt.subplots(1, 3, figsize=(7.0, 2.5), sharey=True, layout=\"tight\")\n", "for i, (r_t, r_i) in enumerate(r_d.items()):\n", " b_i = r_i**2 / (4 * lab**2)\n", " p = [1, a, b_i]\n", " h = ps.Hantush().step(p, dt=1, cutoff=0.999)\n", " t = np.arange(1, len(h) + 1)\n", " happ = hantush_approx(t, a, b)\n", " axes[i].plot(t, h, label=\"Hantush Pastas\")\n", " axes[i].plot(t, happ, \"--\", label=\"Approximation\")\n", " axes[i].set_title(r_t)\n", " axes[i].set_ylim(0.0, 1.025)\n", " axes[i].set_xlim(0.0)\n", " axes[i].grid()\n", " axes[i].set_xlabel(\"time (d)\")\n", "axes[0].set_ylabel(\"h(t)\")\n", "_ = axes[0].legend()" ] }, { "cell_type": "markdown", "id": "d6fb1708", "metadata": {}, "source": [ "The goal is to find $u$ such that\n", "\n", "\\begin{equation*}\n", "\\text{E}_1(u) = \\varepsilon\n", "\\end{equation*}\n", "\n", "for $\\varepsilon\\to 0$. The inverse function of $\\text{E}_1$ does not exist (in closed form). But $\\text{E}_1(u)$ may be approximated for small $u$ as\n", "\n", "\\begin{equation*}\n", "\\text{E}_1(u)\\approx \\frac{\\text{e}^{-u}}{u} \\qquad u\\ll1\n", "\\end{equation*}\n", "\n", "Using this approximation, $u$ may be found as\n", "is approximately\n", "\n", "\\begin{equation*}\n", "u \\approx \\text{W}(1/\\varepsilon)\n", "\\end{equation*}\n", "\n", "where W is the Lambert W function. Note that this gives the exact solution for $\\text{e}^{-u}/u=\\varepsilon$ but not for $\\text{E}_1(u)=\\varepsilon$" ] }, { "cell_type": "code", "execution_count": 27, "id": "dad858d7", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "E1(u): [8.03334337e-03 8.57524159e-04 8.89450783e-05]\n", "exp(-u)/u: [1.e-02 1.e-03 1.e-04]\n" ] } ], "source": [ "eps = np.array([0.01, 0.001, 0.0001])\n", "u = lambertw(1 / eps).real\n", "print(\"E1(u): \", exp1(u))\n", "print(\"exp(-u)/u: \", np.exp(-u) / u)" ] }, { "cell_type": "markdown", "id": "56c3a598", "metadata": {}, "source": [ "The above approximation is used to estimate `tmax` for the Hantush function. This gives a conservative (so tmax is always longer than the true tmax) but not highly accurate estimate. There is a way to get the \"true\" tmax. This uses the approximation as initial guess and then uses a root finding algorithm to estimate the true tmax for a given cutoff. This is slower due to the root finding but more accurate. It can be used by setting `approximate_tmax=False` on initialization of the Hantush response" ] }, { "cell_type": "code", "execution_count": 28, "id": "d35b6fba", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "pastas step response at approximate tmax for cutoff=0.99: 0.9999747\n", "pastas step response at exact tmax for cutoff=0.99 : 0.9998650\n" ] } ], "source": [ "cutoff = 0.99\n", "hantush_rfunc_approx_tmax = ps.Hantush(\n", " cutoff=cutoff,\n", " approximate_tmax=True, # default=True\n", ")\n", "hantush_rfunc_exact_tmax = ps.Hantush(\n", " cutoff=cutoff,\n", " approximate_tmax=False,\n", ")\n", "tmax = hantush_rfunc_approx_tmax.get_tmax(p)\n", "step = hantush_rfunc_approx_tmax.numpy_step(1, a, b, np.array([tmax]))[0]\n", "print(f\"pastas step response at approximate tmax for cutoff={cutoff}: {step: 0.7f}\")\n", "\n", "tmax = hantush_rfunc_exact_tmax.get_tmax(p)\n", "step = hantush_rfunc_exact_tmax.numpy_step(1, a, b, np.array([tmax]))[0]\n", "print(f\"pastas step response at exact tmax for cutoff={cutoff} : {step: 0.7f}\")" ] }, { "cell_type": "markdown", "id": "7d7de44a-2831-4094-b496-868dbabedac6", "metadata": {}, "source": [ "### HantushWellModel step function in Pastas compared to classic Hantush function and Hantush function in Pastas\n", "The impulse response of the classic Hantush function is\n", "\n", "$$\n", "\\theta(t) = \\frac{\\partial h}{\\partial t} = \\frac{-Q}{4\\pi Tt} \\exp\\left(\\frac{-t}{cS} -\\frac{r^2cS}{4cTt}\\right)\n", "$$\n", "\n", "The impulse response used for the HantushWellModel is\n" ] }, { "cell_type": "markdown", "id": "28465bae-a2b3-44e0-aa11-c137aaa8bfd3", "metadata": {}, "source": [ "The HantushWellModel impulse response function used in Pastas is defined as\n", "\n", "$$\n", "\\theta(r, t) = \\frac{A^\\prime}{2t} e^{-t/a - a r^2 b^\\prime /t} \n", "$$\n", "\n", "Where $ A^\\prime $, $a$, and $b^\\prime$ are fitting parameters. The parameters are named $A^\\prime $ and $b^\\prime$ to distinguish them from $A$ and $b$ in the original Hantush formulation. The fitting parameters are related to the geohydrological parameters as\n", "\n", "$$\n", "A^\\prime = -\\frac{1}{2\\pi T}\n", "$$\n", "\n", "$$\n", "a = cS\n", "$$\n", "\n", "$$\n", "b^\\prime = \\frac{1}{4\\lambda^2}\n", "$$\n", "\n", "and the gain of the HantushWellModel is\n", "\n", "$$\n", "\\text{gain} = A^\\prime\\text{K}_0 \\left( 2 r \\sqrt{b^\\prime} \\right)\n", "$$\n" ] }, { "cell_type": "markdown", "id": "ec9378f0", "metadata": {}, "source": [ "
\n", "\n", "Note:
When log_b=True (default), the parameter $b^\\prime$ is\n", "log10-transformed to avoid extremely small parameter values in the optimization. This\n", "modifies the equations above slightly, replacing $b^\\prime$ with $10^{b^\\prime}$. The\n", "computation of variance of the gain also changes since the derivative has to take into\n", "account this change. The code adjusts the computations according to the\n", "log_b=True parameter.\n", "\n", "
" ] }, { "cell_type": "code", "execution_count": 29, "id": "77ebd676-becd-4f0e-829f-fa5a038f777a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# compare pastas.Hantush to pastas.HantushWellModel\n", "hantush = ps.Hantush(cutoff=cutoff)\n", "hantush.update_rfunc_settings(up=False)\n", "h = hantush.step([A, a, b], dt=1.0)\n", "\n", "# HantushWellmodel parameters\n", "hantush_wm = ps.HantushWellModel(cutoff=cutoff, log_b=False)\n", "hantush_wm.update_rfunc_settings(up=False)\n", "hantush_wm.set_distances(1.0)\n", "bprime = 1 / (4 * T * c)\n", "Aprime = A / k0(2 * r * np.sqrt(bprime))\n", "h_wm = hantush_wm.step([Aprime, a, bprime, r], dt=1.0)\n", "\n", "# HantushWellmodel log10 b parameters (default)\n", "hantush_wmlb = ps.HantushWellModel(cutoff=cutoff, log_b=True)\n", "hantush_wmlb.update_rfunc_settings(up=False)\n", "hantush_wmlb.set_distances(1.0)\n", "bprime_lb = np.log10(bprime)\n", "Aprime_lb = A / k0(2 * r * 10 ** (bprime_lb / 2))\n", "h_wmlb = hantush_wmlb.step([Aprime_lb, a, bprime_lb, r], dt=1.0)\n", "\n", "plt.plot(h_wm, \"-\", label=\"HantushWellModel\")\n", "plt.plot(h_wmlb, \"--\", label=\"HantushWellModel log_b\")\n", "plt.plot(h, \"-.\", label=\"Hantush\")\n", "plt.axhline(A, ls=\"dashed\", color=\"k\", label=\"Gain\")\n", "plt.legend()" ] }, { "cell_type": "markdown", "id": "3b9d1487", "metadata": {}, "source": [ "## Comparison of block response and impulse response\n", "\n", "Pastas has the option to compute the block response function (derived by taking the difference of the step response) or the impulse response function for convolution. The impulse response is then evaluated at the middle of the time interval. We can compare this to the block response, where it is expected to be close for larger response times. Note that the step response is still sometimes used to compute the tmax for the appropriate cutoff." ] }, { "cell_type": "markdown", "id": "9e7f2581", "metadata": {}, "source": [ "### Gamma" ] }, { "cell_type": "code", "execution_count": 30, "id": "d2d60a5a", "metadata": {}, "outputs": [ { "data": { "image/png": "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EhsbS9++fenevTszZsyosj/tK6+8QpcuXejWrRuPPvoo2dnZnDhxgkcffRSDwUBkZCSrV6+22mbWrLKeLEOGDCEyMpKsrCxiYmJ44403gLKa5YMPPsgDDzxAp06deOihhzh27BijR48mPDychx9+2NKWa2us27ZtIzIy0uqcvfjii/Tq1YuwsDBLd63KYqvuGPfffz9/+tOfGDBgANHR0cTGxvLqq69ajpuSkkJAQNnM2N988w0DBgygZ8+edOnShRUrVlR6TuuTw5LtmTNnGDhwIOHh4fTp04fjx49XWm7FihV07NiRDh06EBsba6mtmc1m5s6dS+fOnenevTvDhw8nObnhO/XnXx9aT+dWu1l5G5qbmxvB3YcCcHJfIuZSuYnRELy8vPj+++8tU5K3bt2apKQkFi9ezNNPP12hfFZWFtOmTWP9+vUcOXKEsLAwLl8um1qppKSEhx56iFdffZVjx47x8MMPWwaDudlTTz3FkCFD2LdvH4cPH8ZsNvPmm29WKPfFF1/w3nvv8d1333H06FGaNGnCs88+S+fOnVm+fDkREREcOnSIxx9/3Gq7ZcuWAbBz504OHTqEv79/hX0nJSWxevVqTp48SV5eHjNmzGDdunWcOHGCkydP8sUXX9gV682ys7Pp3r07Bw4c4O233+b//u//qoytpmOcPn2aHTt2sHXrVqZNm2a5uQdlN/oeffRRXFxciIqKYteuXRw8eJCdO3fy5z//udpZYuqDw5LtzJkzmTFjBqdPn2bevHnExMRUKJOSksLChQvZuXMnycnJZGZm8u677wJltYTvvvuOw4cPc+TIEe655x6ee+65Bo87L7+sGUHv1qTBj1Vb99wzBnRulOZlsffAvsYO57ZUPh5C7969yc/Pt0w22rdvX86cOVOh/N69e+nevTudO3cG4He/+51levYff/wRvV5veQorOjqa0NDQSo+7ceNGXnnlFSIjI+nZs6fld+NmX3/9NQ899JClZv373/+exMTEur3p66Kjo2nWrBkajYYePXpw99134+3tjV6vp2fPnpb3b2usN3N3d7e0Tw8YMMBqFu2b1XSM8mQKMHDgQEwmE/v370cpxerVq5k2bRoAly9fZvLkyXTt2pURI0Zw+fJljh07VutzZAuH3CDLysoiKSmJhIQEoGym3Dlz5pCcnGw1w+66desYN24cAQEBQNnX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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "A = 5.0\n", "n = 1.5\n", "a = 20.0\n", "p = [A, n, a]\n", "\n", "gamma_s = ps.Gamma(use_block=True)\n", "gamma_i = ps.Gamma(use_block=False)\n", "\n", "block_s = gamma_s.block(p)\n", "# calls block_from_impulse internally which computes the impulse response at the middle of the time interval\n", "block_i = gamma_i.block(p)\n", "f, ax = plt.subplots(2, 1, sharex=True, figsize=(3.6, 4.8))\n", "ax[0].set_title(\"Gamma response function\")\n", "ax[0].plot([], [], label=f\"{A=} {n=}, {a=}\", color=\"w\")\n", "ax[0].plot(block_s, label=\"block response\")\n", "ax[0].plot(block_i, label=\"impulse response at\\nmiddle of time interval\", alpha=0.5)\n", "ax[0].legend()\n", "ax[1].plot(\n", " block_s - block_i,\n", " label=\"block minus impulse\",\n", ")\n", "ax[1].legend()\n", "ax[1].grid(True)" ] }, { "cell_type": "markdown", "id": "99e19ba2", "metadata": {}, "source": [ "If the response is very short, the block response and impulse response start to differ more." ] }, { "cell_type": "code", "execution_count": 31, "id": "2bd2e3aa", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAVYAAAGrCAYAAACbo79EAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjksIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvJkbTWQAAAAlwSFlzAAAPYQAAD2EBqD+naQAAaUxJREFUeJzt3Xl8VNX5+PHPnSX7CiRs2YAsyKIhrEEWQQFFixREUFBAQfwq8qPYVqkrrQVbqdZqW6ggVFFEgVIqqEQtApVVCLITlpAEAgGy77Oc3x9DRkISMgmTTMg879crL2buPXPv80wmD3fOvfccTSmlEEII4TQ6VwcghBDNjRRWIYRwMimsQgjhZFJYhRDCyaSwCiGEk0lhFUIIJ5PCKoQQTiaFVQghnEwKqxBCOJkUViGakKSkJOLi4vD39+e5555zWRxPPvkk06ZNc9n+b3aa3NJ6czhw4AALFixg8+bN5OXlERwcTFxcHJMmTWLq1KmuDk84SVxcHNOmTeNXv/pVo+1T0zSSkpK46667Gm2fzZ0csd4E/vvf/9KnTx9CQkLYtm0bBQUFnDx5khdeeIF169a5OrwGUV5e7uoQXOLkyZP06NHD1WGIG6VEkxcTE6MmT55ca7sDBw6ooUOHqlatWqmAgADVp08f9c0339jXnz59WgFq6dKlqnv37srHx0fdfvvtKj09Xb3zzjsqIiJCBQYGqieeeEKZzWb76wD15z//WfXr10/5+PioW2+9Vf3444/q008/VbGxscrf31+NHTtWFRQU2F/z0ksvqZiYGOXn56fCwsLUzJkzVVFRUY2xL1u2TLVv3169++67KjIyUvn5+SmllMrIyFAPPfSQateunQoJCVETJkxQWVlZ9te98847qmPHjsrPz0+FhoZWep8iIyPVyy+/rIYMGaJ8fX1V165d1Zdfflllv127dlX+/v6qa9euavny5VXer+XLl6tbb71V+fn5qb59+6pDhw7Z26xatUp16dJF+fv7q5YtW6o777zTvq6kpETNnTtXdezYUQUFBamBAweqvXv3Vpv/sWPHlK+vrwKUl5eX8vX1VVu2bFGvvPKKuv322yu1nTx5spo4cWKlPOfNm6fuuece5efnpzp27KjWrl1b6TWff/656tu3rwoKClItWrRQY8eOVUop1aVLl0r7vPvuu6vdR0ZGhho3bpwKDQ1VoaGh6sEHH1Rnz56tFNP48ePV008/rVq0aKFCQ0PViy++WG2u7kAKaxN37NgxBaikpKRa2x44cEBt2rRJFRcXq9LSUvXKK6+ogIAAdeHCBaXUT4Vi2LBh6sKFC6qgoEDdfvvtKjY2Vv36179WpaWlKiUlRQUGBqqPP/7Yvl1AxcfHq1OnTqmysjI1btw41bFjRzVlyhSVn5+vzp8/rzp27Kjmz59vf80HH3ygzpw5o6xWqzp48KDq1KmTev7552uMfdmyZUqv16vp06ergoICVVRUpEpLS1VcXJx69tlnVWFhoSooKFCTJk1Sd911l1JKqePHjytvb2914MABpZRSBQUF6rvvvrNvMzIyUrVq1Upt27ZNmUwmtWTJEuXh4aFOnTqllFJq9erVyt/fX3399dfKbDarpKQk5evrq/71r39Ver/uvPNOde7cOVVSUqLGjh2rBg0apJRSqqioSBmNRvt/XiUlJZX+I5s8ebK68847VXp6ujKZTOqdd95RISEhKicnp8b34drftaOFNTw8XP3www/KYrGoP/3pT8rf31/l5eUppZTatGmT8vLyUp9++qkqKytTJSUl6uuvv65xn9fuw2w2q/j4eDVhwgSVm5urcnJy1Lhx41TPnj3t/wFPnjxZeXh4qJUrVyqz2ay+//57ZTAY1Lfffltjrs2ZFNYmbtu2bQpQhw8fti/78ccfVWBgoAoMDFSenp6Vism1AgMD1fr165VSPxWKLVu22Nf/+c9/Vj4+PpWOUO+77z41e/Zs+3NAffDBB/bn69atU4A6d+6cfdnMmTPV6NGja4zjzTffVAkJCTWuryisVx/VrlmzRrVr105ZrVb7soyMDAWo9PR0derUKeXl5aU++eQTexG5WmRkpJozZ06lZX369FG//e1vlVJKDR8+vFKeSik1a9YsNWLECKXUT+/X1e/v559/rry9vZVStsLq4+Oj3n33XXXx4sVK27l06ZIC1NGjRystj46OVh9++GGN70N9C+u8efPszwsLCxWgduzYoZRS6t5771VPP/20w/u8dh/ff/+90jRNZWdnV8pP0zS1fft2e/shQ4ZU2kavXr3U66+/XuN+mzPpY23iQkJCAMjIyLAv6969O7m5uVy6dImysjKsVisAaWlpTJgwgYiICAICAggKCiI/P5+srKxK22zbtq39sa+vLyEhIej1+krLCgoKrvua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AODDnWkybYsQ4rqksDpofO9wjHqN/em5HLLYrhSwT9simo34+HgKCgoabX9RUVEkJyc32v6am+XLl9tvxmhKpLA6qNVVg2B/sC9Xpm1pppKTk/H393d1GDes4i6t5k4KK7aLbkePHk1sbCy33XYbw4YN48SJE9W2/fzzz+ncuTMxMTGMGTOm1nurG8MjiVcGwd5/loJg2yAbMm1L83L1YNRRUVG8+OKL9O/fn/DwcBYtWsSyZctITEwkKiqKTz75pNLrXnzxRXr06EFsbCwfffRRtdsEaNWqFampqVX2/dprr3HLLbcQHx9PfHw8Z87YLunbvXs3Q4cOpVevXvTo0YPPPvus2tinTJnCY489xqBBg+jWzdZd9eGHH9K3b18SEhIYNGgQ+/fvB2DHjh307NmThIQEEhMT+fvf/15pG/379yc2NpbJkydTUlIC2KalHzNmDN27d6dbt24sXrzYvu+oqChefvllEhMT6dChA6+99prT8vr444/p27evfebm//znPwAsWbKEPXv28Itf/IL4+Hg2btxY7etdQjWikpIStWHDBmW1WpVSSr3zzjtq8ODBVdoVFBSo0NBQdeTIEaWUUk8//bT65S9/6fB+8vLyFKDy8vIcal9eXq7WrVunysvLr9vOarWq4W9+pyKf+1wt++6oUt/9Ualv5yuVd9bh2JoiR/N3tpKSEnX48GFVUlLSqPu9msViUTk5OcpisSillAJUTk6OUkqpyMhINXv2bKWUUikpKcrLy0v97ne/U0optWvXLtWqVSv7dgD14osvKqWUOnnypAoODlanT5+usk2llGrZsqV9XWRkpNq3b5/Kzs5WgYGBqri4WCmlVFFRkSopKVE5OTkqPj5enTt3Timl1MWLF1V4eLjKyMioksvkyZPVrbfeqvLz85VSSm3btk3dc889qrS0VCml1JYtW1SXLl2UUkqNGjVKffzxx/b8L126ZN9Gly5dVH5+vjKbzeq+++5Tv//975VSSj344IPq+eefV0opdeHCBRUWFqa2b99uz+OZZ56xxxgQEKAyMjKcktelS5fsNeP06dOqdevW9pwGDx6s/vWvf1X9xTrg2t/91Wr6bDpaWxp1rAAvLy9Gjhxpf96vXz/7sGRX++KLL+jRo4d96LWnnnqK4cOH88Ybb1S73bKyMsrKyuzPK45uTSYTJpOp1rgq2jjS9qE+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bFso07bUj6bZvqY35E89p7+uTrt27a471bSr7Nu3j5SUFA4cOMBf//rXKuvnzZtHaWlppecPPvhgg8XTq1cvVq1a5VDba2NzVFMcF0EK6w2a1M82nOA/Dukw6Txk2pabnKZp/P73v6dv375ERUWxbt06FixYQK9evYiJiWHz5s2A7RLAq6c+Wb9+Pbfccgu33norv/71rytt8/vvvyc+Pp5u3boxderUGgtBQUEB06dPp0+fPtx666088cQTNd448cYbb9C1a1e6d+/OxIkTycvL4/Dhw0ycOJG0tDTi4+P54IMPKr3mySefBGDgwIHEx8eTlZXF1KlT7eMEvPrqqzz44IP87Gc/IzY2lvvuu4+DBw8yYsQIYmNjeeihh+yXKDka6+bNm4mPj6/0nr3yyiv07NmT6Oho+/391cV2vX3ccccdzJo1i8TERIYPH8706dMr3cV5+vRp2rRpg8lk4ptvviExMZEePXrQtWtXli5dWu176kxSWG/Q4NhQwoK9yS61srPQdvQq07bc3Pz8/Ni5cydLly5l0qRJtG3blj179jB//nx+9atfVWlfUaDWrFnDjz/+SHR0NJcvXwZsd/CMHz+ehQsXcvDgQR566CH7QCjXevbZZxk4cCC7du1i//79WK1W3n777SrtvvjiC95//33+97//ceDAAXx9fXn++efp0qULS5YsIS4ujuTkZPvttBUqrrrZunUrycnJhIaGVtn2nj17+OCDDzh27BgFBQVMmzaN1atXc/jwYY4cOcIXX3xRp1ivlZeXx6233soPP/zAu+++yy9+8YsaY6ttH8ePH2fLli18++23TJ06tdKJt+XLlzNx4kSMRiMJCQls27aNffv2sXXrVn7729+SkZFRa6w3wqW3tDYHFYNg//HLY7x/wp8Bt2KbtiVmRIOdgRYNa/z48YDta2xRURETJkwAoE+fPqSkpFRpv2PHDm699Va6dLFN2/P444/zzDPPAHD06FEMBoP97qLhw4fbbxy41rp169i+fTtvvvkmYLud9Or71Ct8/fXXjB8/3n7E/H//93+MGzfuBjL+yfDhwwkOtnVrJSQk4OnpaR9GsUePHvb8HY31WhXjLQAkJiZy8uTJGtvWto9JkybZL9jv378/ZrOZ3bt306tXLz744AP7KFiXL1/m8ccf5/jx4xgMBi5fvszBgwdp165dnd6bupDC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U6cCtslA161bZ5+GvlevXixcuJA77riD1157jY8++sg+JdK///3vShOJArz66qvk5uby5z//meXLl7NixQpCQkLYv38/QUFBLFmyhBdeeIGjR48SHh7O2rVr8fPz49VXX+XAgQPk5ORw7tw5YmJiWL58OS1btqy0TYB3332XPXv2sHz58kr7TklJYcqUKRQWFmK1Wrn//vt57bXXMJlMvPTSS3z77beUl5fToUMHlixZQsuWzv2GKl0BV9l9pbD2kcusRB1pmsa+ffv48ssveeaZZ0hNTa20vry8nDFjxvDKK6/w448/8uabbzJ27FgKCws5fvw4U6dO5cMPP2T//v3s3r2bzp07219bVlbGQw89RGFhIf/6179qnHnYz8+PnTt3snTpUiZNmkTbtm3Zs2cP8+fP51e/+lWNsXt6erJjxw6++OILZs2ahdlsvm6uOTk5LFy4kL1795KcnMz3339P69ata32Pdu/ezR/+8AcOHz5Mp06d+NnPfsaiRYs4cuQIHh4e/POf/7S33bp1Kx9//LG96M6dO7fW7V/t3Xff5b777mP//v0cOHDAPtnoG2+8ga+vL7t27WLv3r106dKFl156qU7bdoQcsV5hVbCn4vrVjnLi6mbgbdRz+LcjbmgbVquVgvwC/AP8a+wKcMS0adMA2wwYgwYNYsuWLURFRdnXHzt2DJ1Ox4gRtngHDBhA69atSU5OZv/+/dx99932Ymo0GgkMDLS/9t577+X++++vtQBUzC/Xq1cvioqKmDBhAgB9+vSpcXZlsM1VB9C5c2cMBgPnz58nLCysxvYBAQHExMQwadIkhg8fzr333nvd9hUSExPtE4X26tULk8lkL8i9e/euFOO9995LmzZtAHjiiScYM2ZMrdu/2qBBg/jVr35FYWEhgwcP5q677gJg3bp15OXlsWbNGgBKS0vp0KFDnbbtCDliveJ8CeQUm/A26unePrD2FwiX0zQNHw/DDf94e+hrXFff/lVHXufotocOHUpSUlKtUy97ednmZau47vLq59c7Cq1od21bg8FQ6VbP0tJSe5sdO3Ywe/ZssrKy6Nevn0P9ttfup6b9VqfivaoppmuNHTuW//3vf8TFxdmPXsHWpfLOO++QnJzM3r172bFjBxs2bKg19rqSwnrFyXzbL65nZDBGvbwtom6WLVsG2KZ837p1a5Uz73FxcVit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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "A = 5\n", "n = 0.9\n", "a = 1.5\n", "p = [A, n, a]\n", "\n", "gamma_s = ps.Gamma(use_block=True)\n", "gamma_i = ps.Gamma(use_block=False)\n", "\n", "block_s = gamma_s.block(p)\n", "block_i = gamma_i.block(p)\n", "\n", "f, ax = plt.subplots(2, 1, sharex=True, figsize=(3.6, 4.8))\n", "ax[0].set_title(\"Gamma response function\")\n", "ax[0].plot([], [], label=f\"{A=} {n=}, {a=}\", color=\"w\")\n", "ax[0].plot(block_s, label=\"block response\")\n", "ax[0].plot(block_i, label=\"impulse response at\\nmiddle of time interval\", alpha=0.5)\n", "ax[0].legend()\n", "ax[1].plot(\n", " block_s - block_i,\n", " label=\"block minus impulse\",\n", ")\n", "ax[1].legend()" ] }, { "cell_type": "markdown", "id": "02bb42c5", "metadata": {}, "source": [ "### Hantush\n", "\n", "Hantush uses an approximation for the step response function which results in a less accurate block response function. Therefore using the impulse response function for computing the block response might give a more accurate result." ] }, { "cell_type": "code", "execution_count": 32, "id": "11a5fc8f", "metadata": {}, "outputs": [ { "data": { "image/png": "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GQwGe5sgqAU2D3hjTaDj6gI4WxvRqbGTdiGFQpUOlaNXnYYWyhg0YDCn/vwOY/5FUlIu4ObgRr4un6yirFqPFzcGivVGurz8a4O2cfzVkTg7VP9zWLx4MT///DOFhYW88sorFZYGg3np6eOPP05BQQGOjo688847DBo0CICff/6ZefPmodPpkCSJZcuW0b9/f8u5sizz/PPPc+LECb766iucnZ3L1S1JEi+//DKbNm3ixhtv5OWXX2b27NkcPnyYkpISBgwYwJIlS3BwcOC1117jiy++sGTD/uGHHwgODkaSJF588cVK/fj111+ZM2cOBoOBVq1a8eGHHxIQEMC2bdt4/PHHGTp0KDt37sRgMPDpp5/St29fsrKymDRpEunp6UiSRJ8+fSxLgBcvXsw333yDwWCgdevWLFu2zKbRyxojNhXdskDHmzdvBsyBjmfNmkViYmK5mJtXB3AGc+i5BQsW1CpqfmlpKaWl//T0ynLT6/V6q9OflJWr73QpaRln0SmMuDq50Urdqs71Ozs74dq2E4UX/mb/nu14DfAntziX9Px0/Bz9alVnQ/luTbuyLGMymTBhavD2TCYTJlPFdsp6wFf3hA8cOMDZs2fp168fAwcOtMQJMJlMlJSUMH78eJYtW8bIkSP5888/ufPOOzl9+jRpaWk8+OCDbNu2jU6dOqHX6ykqKrK0W1xczIwZM/D29mb9+vUolcpKbVIoFOzduxcwd2IGDRrEsmXLkGWZ6dOn8+677/Lwww+zePFiLly4gJOTE0VFRSgUinL1XeuHs7Mz9913H1u3bqV79+588cUX3HPPPezcuRNZljl58iQff/wxS5YsYenSpbzwwgv88ssvfP7554SEhFhi+GZnZ2MymVi7di0nT55k586dKJVKPv/8c/71r3/x008/1c+H1sBc/dlffd1MJhOyLFfIBmztb8SmomttoOPqAjifOXOG3r17o1QqefDBB3nkkUeqbHPhwoXMnz+/wv7NmzdX6EVUR30vZUy9eBIcgWIFW37dUi916pXmJcQXT8eTpQknyZiE9qyWNIe0OtVr62WcKpUKf39/CgoKUKvV7J49oEHb0xcXoi2pOstrfn4+APfccw9arRYfHx8GDhzI5s2bmThxoqXMiRMnABg4cCBarZYePXrg4+PDzp07+fvvvxk2bBht27a1/POXJMnyftSoUYwaNYpnn32WwsLCKm256667LOd8//337Ny5k7feegswxwUwGo2AOWjOvffey0033URMTAzt2rVDp9NV6YeHhwedO3cmODgYrVbLmDFjmDVrFmlpaRQXF9OhQwc6d+6MVqule/fuLF68GK1WS7du3Xj77bd5/PHHiY6O5uabb0ar1bJ+/Xr++usvevfuDWCxq8z2pkLZZ1+GTqejuLiY7du3lxviKSoqsqq+JhdPt3fv3pw/fx4PDw/Onz/PqFGj8PHx4Z577qm0/Jw5c5g9e7ZlW6vVEhgYSExMTI0C3sTFxTFixIh6C/piMpr487g5LuugnkMY1WtUNWdYR6lOx4o3D6E0lBAW2AmVWoW7gzujOtWu/obw3RpKSkpITU3F1dUVR0dHPGzWcnlkWSY/Px83NzcA3NzcLN8blUqFk5OTZdvNzQ1XV1cUCkW575ZKpcLFxQUnJyfUanWV37vhw4ezY8cOnn322et+N9u0aVPu+IYNGyqNy7t371527drFH3/8wciRI/niiy8YMmRIlX44OzujUqnK1V0W17bseNkxDw8PTCYT7u7uDB8+nEOHDrFlyxY2bdrEokWLOHDgAEqlkjlz5jB9+vRqrnLj5OrP/uq06yUlJTg5OTF06NAKAW+swaYP0q4OdAxUGeg4KCiIc+fOWbavDjTs7u5uyYcUEBDAvffey44dO6psU6PR4O7uXu4F5iDSNXnV5pzrvTIvZ1GsKEaWFHQL7lJv9bq6uOAZZE4amHHqLCqlikJjIXr0ta6zvn239iVJEgqFwq6vsh9b2d9PP/0UhUJBSkoKf/75JzfccIMlApVCoaBz586YTCZ+++03FAoFe/bsISMjg969e3PLLbewefNmTp8+jUKhwGg0kp+fbzn/xRdfZPz48cTExJCTk1OpPWXtlL1uv/123nzzTUwmEwqFgry8PM6ePUthYSFZWVnccMMNvPzyywwePJjDhw9b6qjMj+joaI4ePcrx48dRKBR88803tGvXjrZt21r8r8yWc+fO4e7uzsSJE1myZAmnT5+mqKiIO+64g+XLl5Obm2vxt8yGpvC6+rOv7FhVv5XqsGlPt3Xr1vTu3Zs1a9YwdepU1q9fT0BAQIUcSnfeeSeDBw9m3rx5+Pn5sXTpUsstXHp6On5+figUCvLz8/npp59qnQ7bnpy/cJ5ipR6FgzOtXer+EO1qukZGs/PsAfKTj+PbN5o8fR4ZRRk1jusgqEhZ3NfCwsJK4746ODiwYcMGHn/8cZ5++mkcHR1Zt24drq6uhIaGsmrVKu6//37LeODSpUvp16+f5fwnn3wSFxcXhg0bxq+//louq0NlvPPOOzz//PNERkaiUChQqVS88cYbODo6ctddd1FYWIgkSYSFhTFlypRq/fjiiy944IEHLA/Svv7663K9vMrYtm0bb7/9NkqlEoPBwJtvvomHhweTJk3i8uXLlnxrBoOBhx56iF69etXgijdDqg21Xs+cPHlSHjBggBwWFib36dPHEoX+4Ycfln/44QdLueXLl8sdOnSQO3ToID/00EOW6O4ffPCB3KVLF7lHjx5yly5d5FdeeUU2mUxWt99YMkes2/i1PPmtEfLDH0+qNktETdHr9fK78x+V33lxqvx/vy2TPzz4obzrwq5a1SUyR1SePaApA5TLYHE9mqP/1tJQmSNsPqYbERHB7t27K+xfsWJFue3Y2FhiY2MrlJs1axazZs1qMPtsRVp2MgDuzt7VZomoKSqVCu+QHlw6vZu8s+dx8/LnYtHFem1DIBDUDrEizU5c1ppnE7R2a9Mg9ffoEw2A6fx5DAYDmUWZmOSGn3olaPzIsoynp6e9zWixCNG1E9pSc0yEIJ+QBqm/W6cuKBw9cDSYyMzIxGAycLn4coO0JRAIrEeIrh0oLi6h2JQHQES7ylNw1xWFUoFvaCQSEkVp2QBiiEEgaAQI0bUDKRfOU6I0gFJNsG/Ns7daS+++5qWnqkuXKNXpRCYJgaARIETXDqSkJ2OUTCgcnCzBxhuC8A4dUbj44KpTceHCeZEzTSBoBAjRtQOpmckAuDq0Qq1ouFVekkJB27DeuBjU5GSmka/LR6trWkswGxONJbTj3XffXekMoIZi+fLlPPjggwAcOXKEW2+91WZtN0eE6NqBS1pzavRWV2LeNiS9owahRIFDXj7FJSWkF4jeblNm3759ZGdnM3DgQLu036NHDzQaDVu3bq22bFVBhFo6QnTtQO6VFDq+7tdfbVQfdAgOQuXuj6tBzfkLqU1ziEGWwaBr2JeV8XQXL15Mr169CA8P54svvqi0THx8PNHR0fTo0YN+/fqxc+dOy7Gff/6ZqKgoevbsSWRkpCVa2D+uyjz33HOMHTu20gAqy5Yt47777rNsp6enM3LkSLp06cLw4cOZOHEi8+bNA2DevHk8+eSTlrJLlixh6tSpABw9epTBgwfTu3dvunTpwmuvvWYpl5+fz4QJE4iIiGDo0KEcP368nA333nsvy5Ytq9T3efPmceeddzJy5Ei6detGeno6v/76K4MHD6ZPnz7069eP33//HTDH1h40aBA9e/ake/fuvPTSS+XqGDZsGJ06dWLMmDFcvmyeeVNQUMBDDz1Et27d6NatW7lgVjfeeCPPPPMMQ4YMoWPHjsycOdNybMWKFXTp0oXIyEi6d+9uue4JCQncdtttREVF0aNHD5YsWVKpX/VJkwt40xwoLDXPJmjrZZsYtwERfbl8KJnkrDQuFFywSZv1ilEPO95q2DaGPA0qh2qLSZLEwYMHOXv2LH379mXQoEHllgLrdDrGjx/Pxx9/XC60Y2JioiW04/bt28uFdiyjtLSUe++9F29vb7777rtyYQPL2LZtG0899ZRl+/HHH6dfv378+uuvXLhwgcjISDp16lStHyEhIfz2229oNBqKi4uJjo5m+PDhDBgwgFdffRWNRsPJkyfJzc1lwIABDBjwT5S3gQMHXjfM6u7duzl48CB+fn6cPXuWefPm8euvv+Lu7k5iYiJDhgwhOTmZJUuWMHr0aObMmQOYQ0KWsWPHDo4cOYK/vz+PPPIIc+bMYfny5fznP/+htLSUI0eOUFxczODBg+nUqRMTJkwAzBEIf//9d/R6PV26dGH37t0MHDiQp59+mpMnT9KmTRv0ej2lpaUYjUbuvfde1qxZQ6dOnSgqKmLAgAH079+fqKioaq9hbRE9XRtjNBopNprHVUP8QmzSZt9+0bgYHDAW5ZKWk06R3roQdIKKTJs2DTCHTRw6dCjbt28vd/zUqVMoFApGjhwJwODBg/Hz8+PQoUPExcVxyy23WERRrVZbgjcB3HbbbXTt2pUPP/ywUsEFOH/+PH5+/8RG/u233yw2tWvXjrFjx1rlR3FxMdOmTaN79+4MGDCAc+fOWRID/Pbbbzz88MNIkoSHhwd33XVXuXP9/f25fPkyJSUlldY9atQoi42//PILiYmJDB06lMjISO666y5LoJ2hQ4fy8ccf8+KLL7J58+ZyCzZuu+02S9yJ6dOns2WLOfTpli1biI2NRaFQ4OLiwgMPPFAu7OiECRMsUdMiIyM5c+YMADfffDOTJ0/mvffeIykpCVdXV06dOsWxY8eYOHEikZGRREdHk5+fX6FnX9+Inq6NycjKolShB0lBR//2NmkzoE0bnDyDcTJe4vyFVNI6pxHaKrT6ExsLSrW5J9rQbdSC6oLBWFsGYNiwYcTFxfHEE09UGdrR2dm5SrG7ti2VSmWJYQuUO++FF17Ax8eHgwcPolKpGD9+fJX1Xmt/SUkJSqUSB4fK7wxcXV0t72VZZsSIEaxdu7ZCubCwMKKjo4mLi2PJkiW8++67bNq0ySobqtp/dajFsgA8AOvXr+fAgQNs27aNUaNG8dprr9G9e3e8vLxsnoVG9HRtTHJ6ErIko1A54uFkuyixQZ374qrXkHcpjbTCugU0tzmSZL71b8iXlcJYloYmOTmZHTt2WOLTlhEREYHJZLL0vnbt2kVGRgaRkZGMHDmSX3/9lZMnTwLmWMV5eXmWc1944QXGjx/P8OHDLWOY19KjRw9OnTpl2R4+fDiffPIJYB7f3bhxo+VYaGgo8fHxGI1GioqKWL9+veVYTk4OAQEBqFQqTp06Va63OHz4cFatWoUsy5Zg5Fdz4sQJunXrZgnveD1GjhzJli1bOHLkiGXfvn37APN4qp+fHw888ABvvPEGe/bssZTZtGkTFy+aF/OsWLGC4cOHW2xbuXIlsixTWFjI559/TkxMzHVtMBgMnDlzhr59+/LMM89w1113sW/fPiIiInB3d7d8pgCJiYnlhjkaAtHTtTGpmeYMGM4q9zpl/60pA/pFc2D/l2QVX+bohWMMDRhqs7abE/YO7XjXXXfx66+/WkTovffeY+rUqXTp0oV27doxbNgwS9nx48fz7bff0rlzZwICAujVq5dlDPmll15i8uTJfPrpp3Ts2LHceXPnzmXatGl06tQJX19f+vfvXy5d0S+//FJhyKEqQkNDWbt2LTNmzKCoqAidTkevXr1Yu3Yt69atY82aNTg4OGAymVi6dKnlvCFDhnDfffdx4cIFwsLCWL16tcW2xx9/nO7duwPm6XNVJTAow2g08tBDD5GdnY1KpcLX15dVq1ahUqn46aefePLJJ3nnnXcwGo34+PhU2iuvTyRZboJpUOuAVqvFw8ODvLy8GmWO2LRpE6NGjapz9oT3v36H+Av/w9+rC29MfbdOddWUJe/OY79pNx5tw3ht/ALcHar3vz59rwklJSUkJSXRvn37creMtsZkMqHVanF3d7eqZ9fQFBQUEB0dze7du3Fxcalw/JlnnsHV1dUyg6GuXOu/Tqejb9++bN26FR8fn3pp41rmzZtHbm4u7777boPUby1VffZVfTet1Rb7f4taGDkF5lumVs4N84W9HqFd++NsUKO9nMb5/PM2b19Qd1xdXXnnnXdISkqyS/tJSUksWrSowQS3JSCGF2xMfrF5vMjHo+Hn6F5L/6iB/L7vEwpL8zhw9iBdvLvY3AZB3bn55purPLZ48eIGbTsiIoKIiIgGbaO+eumNFdHTtTFF+lwA2ni1tXnbrTw98fUw/2D+SthLCxtZEggaBTYX3YSEBKKjowkPDycqKopjx45VWm7lypWEhYXRsWNHYmNjK+SUl2WZYcOGNalgzCajiVKTObV2gK9tFkZcS88uQ1HKCrKzU8gsFKEeBQJbY3PRnTFjBtOnT+f06dM899xzlmWJV5OUlMTcuXPZsWMHiYmJXLx4keXLl5cr884779CxY0cbWV0/ZOVcQi8ZkJFo3zrELjYM6BeNi8EJWVfE7tP77GKDQNCSsemYbmZmJvHx8WzevBkwZ/2dNWsWiYmJ5TICr1u3jrFjx1qmy8ycOZMFCxZYlh4eO3aM77//nlWrVvHtt99et83S0lJKS0st22W56fV6fYXec1WUlbO2fFWcTUsGZJQKDU4qxzrXVxscNRpae4ShLTrE3uM7uK379SNG1ZfvNUWv1yPLst2DppQNwZTZ0tJoyf5X5bvJZEKWZcu0vzKs/Y3YVHRTU1Np06YNKpW5WUmSCAoKIiUlpZzopqSkEBwcbNkOCQkhJcU8v1Wv1xMbG8vKlSurXCp5NQsXLiwXFKOMzZs34+zsXCP7r55AXhtOXDRPileaHPnf//5Xp7rqgrNk/md2PusEP/z4A2orVmPV1feaolKp8Pf3p6CgAJ1OZ9O2KyM/P9/eJtiVluz/tb7rdDqKi4vZvn27ZcUbUGmAospocrMX5s+fz/jx4+ncuTPJycnVlp8zZw6zZ8+2bGu1WgIDA4mJianRPN24uDhGjBhRp7mq6ZsuQAF4uHgzatSoWtdTV4qKinl6xe/oKMU50JURkVU/Da8v32tKSUkJqampuLq62nWerizL5Ofn4+bmRp8+ffjjjz9wc3OzSdsdOnRgw4YNREZG2qS9yrjaf2uXMzcWVq9ezYABA6wKAFQZVfleUlKCk5MTQ4cOrTBP1xpsKrqBgYGkp6djMBhQqVTIskxKSgpBQeVT1gQFBVkCVYB5yWVZmT/++IOUlBSWLFmCwWBAq9USEhLC/v378fWtGJ9Wo9Gg0VRMca5Wq2ssIrU552pyC81LO92dvGwqYNfi4aGmjUcE57RH2HdyB6Oibqn2nLr6XlOMRiOSJKFQKOy6KKHstlKSJJuv0QcaxP+y3581XO1/Y1gcUhM+++wzvLy86NKldlMjq/JdoVAgSVKF34S1vw+bXsXWrVvTu3dv1qxZA5iDUAQEBJQbWgDzWO/GjRvJyMhAlmWWLl3KxIkTAXPIt3PnzpGcnMyff/6Ju7s7ycnJlQpuY0NblAOAp4v9J5b37WReBpx66Vi5WyRB1Vyd3SEkJISXXnqJ6OhoAgMDWbp0KatWrWLgwIGEhITw1VdflTvvpZdeqjQO77UZI3x8fCq9g3vttdfo3LkzkZGRREZGcu7cOQD279/PsGHD6Nu3L7169aryGcfUqVN56KGHGDp0KN26dQPg888/p3///vTu3ZuhQ4dy+PBhAPbs2UOfPn2IjIykR48erFy5slwdZbOPpkyZQnFxMWB+XjN+/Hi6d+9Ot27dysXbDQkJ4eWXX2bgwIG0b9++XOzeuvq1du1a+vfvT69evejZsyc//vgjYI7XEB8fz1NPPUVkZGSVgXTsgmxjTp48KQ8YMEAOCwuT+/TpIx85ckSWZVl++OGH5R9++MFSbvny5XKHDh3kDh06yA899JCs0+kq1JWUlCR7eHjUqP28vDwZkPPy8qw+R6fTyd9//32lNtSEx5c8KE9+a4T82ebP61RPfVBYXCRPefs2efJbI+Qt+3+vslx9+V5TiouL5ePHj8vFxcU2bfdajEajnJOTIxuNRhmQc3JyZFmW5eDgYPnJJ5+UZVmWExISZEdHR/k///mPLMuyvG/fPtnHx8dSByC/9NJLsizL8pkzZ+RWrVrJSUlJlmNldcqyLHt7e1uOBQcHywcPHpSzs7NlDw8PuaioSJZlWS4sLJSLi4vlnJwcOTIyUk5LS5NlWZazsrLkwMBA+fz58xX8mDJlityjRw9Zq9XKsizLf/75p3zrrbfKJSUlsizL8vbt2+UuXbrIsizLY8eOldeuXWvxPykpSTYajfKUKVPkLl26yFqtVjYYDPLo0aPl//73v7Isy/I999wjP//887Isy/LFixflgIAAeffu3RY/HnvsMYuN7u7u8vnz5+vFr0uXLskmk0mWZbMe+Pn5WXy64YYb5O+++67Sz9Uarv7sr6aq76a12mLzMd2IiIhK8zutWLGi3HZsbCyxsbHXrSskJKROealsTYnBPCDv18r2q9GuxdnRiTae4VzI+Ztdx7Zwc98b7W1Sk6MscHZoaCiOjo6WIDB9+/YlOzub3NxcyzzyyuLwXhsspyrc3d0JCwvj/vvvJyYmhttuu42AgAC2bt3K2bNnK+QsO3XqFO3atatQz913320Zj/7hhx84fPgw/fv3txzPzs6muLiYm266if/85z8kJCRw44030qNHD0uZe+65x1LHww8/zPvvv88LL7zAli1bOHDgAGC+ox0/fjxbtmyxBD8vy3bh4+NDhw4dSEpKYuDAgXX2KykpiUmTJnH+/HlUKhXZ2dkkJSXVehzXFjS5B2lNFZPRSKnxysIIH/ssjLiWqIghXNjzNxcuHUOn0+PgYL9x5qbItbFby7YlSUKSpOsO25Q9mFEqlVXGvL267j179rBr1y62bdvGgAED+PLLL5Flma5du7Jr1y6r7L02zu2UKVNYsGBBhXJPPvkk48aNY8uWLbz00kuEhYXx8ccfX9eP6vZXFue2PvyaOHEiixYtsvzD8/Lyum684cZA0xoZb8JczL2ECfOPMNg/0M7WmInpMwKUGoqkQv7Y94e9zWnWVBWHNzQ01JKva8OGDRQWFlY4Nz8/n4sXLzJkyBDmzp3L4MGDOXjwINHR0SQlJVmyKgAcOnTIqil2Y8eOZc2aNZapmCaTifj4eMDco2zfvj2xsbE8//zzlv1gnkNfUFCA0Whk1apV5eLclglzVlYWGzZsYMSIEde1oT78ysnJoX17czKANWvWkJOTYznm7u5eLl5xY0GIro1IyTB/uVUKR1wcK4bksweuGlfaeIcDsPfYlmpKC+pCWRzemJiYcnF433nnHZ544gl69+7NwYMH8fb2rnBuXl6e5SFVjx490Ov1TJkyhVatWvHzzz+zYMECevbsSZcuXXj++eetWsQwZMgQ3njjDe644w569uxJ165dLQ//lixZQteuXenVqxcvv/xyuQdfUVFRjBw5ks6dO+Pp6WlJfPn+++9z4sQJunfvzk033cSLL75YbuiiMurDr/fee4+77rqLXr16cfDgwXIzoaZPn86CBQsa3YM0EU/XCuojpuz3239gQ/yHuDj48H+zGjZIck3YePBH1v3+Ae56Z16b+SmeHuWzWTSGeLoajQaDqWFnWKgUqkpvlesjnq4kSeTk5DSpOCFlXO3/Qw89RGRkZLkMw82ZhoqnK8Z0bUSW1hxcxlltndDbiqGdh7Bh1yryKeSPXVsZd+sd9japAgaTgY+PVj6mWF/Edo+1amWeQFBXhOjaiOz8LABcHVvZ2ZLyeDp60s6vE6kp8Rw81ThFt6nTXG4my1LmCOqGEF0bkV9oDl7u4eJlZ0sqclOP4XyacoBLpedISkmh/TUrBO2NSqEitvv1pw/WRxsCgS0QD9JsRKHO/BTVy7XxrZzrE9QLtas3+epSdu5ufA/UJElCrVQ36Ks+4wqkpaVVyBJ8NVWtOgPzHN9t27YBcOONN/L999/Xm106nY7Ro0fTvXt3S8S+q5k3b1656VYvv/xyudVz9U18fLxlrnN1XGubLXjwwQf5v//7v3qvV4iujSi+sjDC17O1nS2pSCvHVnRo1wUZmVNJOzEZW1YIv/qmbdu27Nixw95mVODgwYMkJCRw9OhRPvzwwwrH58+fX07YXn31VSZNmtRg9vTt25evv/7aqrLX2mYtjXGJuxBdG1FqMod9a+NVcaVQY2BYj5tBoSJHyuLg0cP2NqdRIkkS//3vf+nfvz8hISF8//33LFy4kL59+xIWFmbpoSYnJ5ebqbBx40Y6d+5Mjx49+Pe//12uzl27dhEZGUm3bt148MEHqxSJ/Px8YmNj6devHz169GD69OlVzsd988036dq1K927d2fSpEnk5eVx/PhxJk2aREpKCpGRkXz22Wflzpk5cyZgnkoWGRlJZmYmU6dO5b333gPMonfPPfcwZswYwsPDGT16NH///TcjR44kPDyce++91zKly1pbt23bZomgVnbNXnnlFfr06UNoaKhlmldltl2vjRtvvJHHH3+cgQMHEhMTQ2xsbLnccUlJSfj7+6PX6/ntt98YOHAgvXr1omvXrpY4Ew2JEF0bUFBciNFkDqTe1ruNna2pnM6+nXD09CNfXcqBeLFQoipcXV3Zu3cvK1eu5P7776dNmzbEx8ezYMECnn322QrlMzMzefDBB1m/fj1HjhwhNDSUy5fN0eZ0Oh0TJkxg8eLF/P3339x7772WoDPX8vTTTzNkyBD27dvH4cOHMZlMFkG8mv/973988skn7Ny5k6NHj+Li4sLzzz9Ply5dWLFiBRERERw6dIgHHnig3HlLly4FzAGlDh06ROvWFe/I4uPj+eyzzzh16hT5+flMmzaNdevWcfz4cU6cOGGJEW2trdeSl5dHjx49OHDgAEuWLOGpp56q0rbq2jh9+jTbt29n69atPPjgg+UeAq5evZpJkyahVqvp3bs3f/75JwcPHmTHjh28+uqrnD/fsJmyxdMDG5B6yfwhKmUlrT3tH2GsMlo5tqJTcA8OZV8gJWMf+QUFuF21bFRgpmwMsm/fvhQWFlqi3/Xr14+EhIQK5ffs2UOPHj0s4QUffvhhHnvsMQBOnjyJSqWyrOqKiYmhQ4cOlbb7/fffs3v3bt5++20AiouLKw3iv2XLFiZMmGDpaf/rX//i7rvvroPH/xATE0OrVubZN71790aj0VjiMPTq1cviv7W2XoujoyPjx48HYODAgeXCu15LdW3cf//9lnnl0dHRGAwG9u/fT9++ffnss88s0cguX77Mww8/zOnTp1GpVFy+fJm///6bgICGW6ovRNcGpF1OB8BB4YxC2XhvLm7sPJTDx7aTbcjnz13buTXGfoHWGytlk+HLfuBXb1szfljdA7uqjsuyzPr16wkPD6+JufX6gLCqWBNl22X+19ZWjUZTZUyKa6muDddrOgwPPvggq1atoqCgAB8fH0t4y5kzZzJq1CjWr1+PJEn07t27wR/YNV4FaEZk5WYC4KhqHMt/qyLCuxOerQMpUJVy/Mjv9janWTBw4ECOHDnCyZPmVE2ffPKJZeyxU6dOGAwGfv/dfK23bNlSZe/u9ttv5/XXX7cIW05ODomJiRXKDR8+nG+++caSxWDZsmXExMRYZaubm1u9xCqw1taacK1tNW1j8uTJfPvttyxdupSHHnrIsj8nJ4fg4GAkSWL79u1VDu/UJ0J0bUB2wSUAHNW2SfNSW1zULgzoHA2SgszSJE4mnLa3SU0eX19fPvnkE0uMg4SEBEt8BQcHB77++mueeuopunfvztq1a+nZs2el9bzzzjs4OTlZAovffPPNlU47u/XWW3nwwQcZOHAg3bt3R6vVsnDhQqtsffrppxkxYoTlYVVtsdbWmnCtbTVto23btvTr14+NGzdy7733WvYvWrSI559/nsjISD755JNq40XUByL2ghXUNf7Awq9e40TadkK9+vLy1Iqh9BoTp7JP8eZ3ryFlX2ZI63Hce99Ddo+9YM8cafURe6Ep05L9b6jYCy3rKtqJgtJcANwa2RLgyujg0YGAgFBKlQZSUvZSXNy4Y5MKBE0Nm4tuQkKCJcdSVFQUx44dq7TcypUrCQsLo2PHjsTGxlpyyu/evduST6lr167MmDGD0tJSW7pQYwpLzeNrHq6NbwnwtaiVagaFRyOpnchW5bB73057myQQNCtsLrozZsxg+vTpnD59mueee46pU6dWKJOUlMTcuXPZsWMHiYmJXLx4keXLlwPQs2dP9u/fz6FDhzh69CiZmZl89NFHNvaiZpToCgDwdm98S4Aro5NPJ9x9AshxKObUYfuKbgsb/RI0Aer6nbTplLHMzEzi4+PZvHkzYM76O2vWLBITE8tlBF63bh1jx47F39+cS2zmzJksWLCARx99FGdnZ0s5nU5HcXHxdafFlJaWlusJlz3V1ev1lt5zdZSVs7Z8BRuM5tVordy8a12HLfHT+NGpQ1f2pCeSVXAat7wwu9mdlZWFt7d3vU59qgmyLFv1PWuutGT/K/NdlmXL4hYorwnW/kZsKrqpqam0adMGlcrcrCRJBAUFkZKSUk50U1JSCA4OtmyHhIRY0oqAecnguHHjOHPmDLfddhuPPPJIlW0uXLiQ+fPnV9i/efPmcgJuDXFxcTUqD6A36jEYi5GAs8fPkJNyqcZ12AODQY/JwY1LjoV4pCfVyve64uDggJeXF1lZWTZvWyCoCoPBQHZ2NqdPl5/dU1RUZNX5TXJxREhICIcPH6agoID777+fDRs2WFYGXcucOXOYPXu2ZVur1RIYGEhMTEyNZi/ExcUxYsSIGj/BT710no3Jy1HIEneOvcOuT+JrQpG+iMvbs0k+vpvSvLP0GzATHy/bj0kbjUYMBoPdhhkMBgO7du0iOjra0lloSbRk/yvzXZIkVCpVpSvsyu6iq8OmVzEwMJD09HQMBgMqlQpZlklJSSmX1wggKCio3CTx5OTkCmXAvOpk4sSJfPHFF1WKrkajQaPRVNivVqtrLKC1OSczz9xLU0uOliWTTQEPtQfR4QM4l3iEbI2WvXv+5PZxd9rcDltOU6sMvV6PwWDA1dXV7rbYg5bsf019t/b62PRBWuvWrenduzdr1qwBYP369QQEBJQbWgDzWO/GjRvJyMhAlmWWLl1qEdXExETL2IlOp+O7776jR48etnSjRmTmmtP0OChrNpTRGOjq0w0v/2CyNcUk/b39ussyBQKBddh89sKyZctYtmwZ4eHhLFq0yJKaetq0aWzcuBGADh06MH/+fAYNGkRoaCi+vr7MmDEDgK1bt9KrVy969uxJr1698PPzY+7cubZ2w2ouXenpOqqaTi+3jAC3ALp26IZeIXHZlM6+A/vtbZJA0OSx+SBNREQEu3fvrrB/xYoV5bZjY2OJja2YomX69OlMnz69weyrb3KvpOlx1jQ90ZUkiUj/SLZpfiPToOXQ3t8Y2G+Avc0SCJo0YkVaA6MtygHA1dGjmpKNk05enXB386ZYaeDS5WOcPZdS/UkCgaBKhOg2MIWl5shI7i7edrakdmiUGkKcglC7epPpWMCO33+2t0kCQZNGiG4DU6Qz50Zr5do0RRcgQBlA26BQ8hxKyUjaS9ZVk8MFAkHNEKLbwJQaCgHwcW98CSmtxUXhQt/2vVA4uZGl0bL1t032NkkgaLII0W1ATLIJnbEYAH9vfztbUze6+/bALyCUS5oiUk/soKCw0N4mCQRNEiG6DUhuUS6Y9IBEmyYuuoGugUSG9kR2cCRLlc3WbVvsbZJA0CQRotuAXLhkzo2mllV4eXja15g6IkkSffz74NW2PVmOBZw5+FuTCN4jEDQ2hOg2IBlXElKqFU5IzSDqfqhnKD3CemJQqciS09n+p0jVLhDUlKavBI2YrCur0TSq5pHKXCEp6Nc2Cg+/YDKdCvh79/+syoArEAj+QYhuA5JdYJ5a5dTIE1LWhAivCLqF90SnVpBlTOUP0dsVCGqEEN0GJK/QvBrNxdG6EJJNAZVCRf+Afnj4hZDhVMDfuzaJ3q5AUAOE6DYgloSUTo0/N1pN6OrTle4RPdGpJTJFb1cgqBFCdBuQopKmk5CyJqgVagYGDLzS283n710/i96uQGAlQnQbkGLDlYSUbj52tqT+6ezdmR4RkejVCi6aUtm2fZu9TRIImgRCdBsIWZbRGcw5k1q38rOzNfWPSqEiOjDa3Nt1LODIrh8puSoBqEAgqBwhug1EqaEEk8ksQm192tnZmoahk1cn+nSOwuCgIkM6z6+bRQQygaA6hOg2EOnZF0E2oZQV+Hk3v+EFAKVCydDgofgGhHPRsYBTf/2P3Lw8e5slEDRqbC66CQkJREdHEx4eTlRUFMeOHau03MqVKwkLC6Njx47ExsZalpxu3bqVfv360aVLF7p27cq///1vTCaTLV2wivSy1WiSIxqHiokxmwvtPdoT3S0aNM6kOWSx6ecN9jZJIGjU2Fx0Z8yYwfTp0zl9+jTPPfccU6dOrVAmKSmJuXPnsmPHDhITE7l48SLLly8HoFWrVnz11VccP36cAwcOsGvXLj777DMbe1E9F3MzgaaZkLImSJLEkIAhtOvQhWxNEUmnf+d8erq9zRIIGi02zZGWmZlJfHw8mzdvBsxZf2fNmkViYmK5jMDr1q1j7Nix+PubI3PNnDmTBQsW8Oijj9KrVy9LOUdHRyIjI0lOTq6yzdLSUkqvesBTlpter9dbHbClrFxNArxcuiK6jirXJh0YxhrfW6lbMTRiCF+nJHLBkMP/fljL1Icft5WJDUptPvvmREv2v6a+W1vOpqKbmppKmzZtUKnMzUqSRFBQECkpKeVENyUlheDgYMt2SEgIKSkVc3NlZGSwbt06fvrppyrbXLhwIfPnz6+wf/PmzTg716wXGhcXZ3XZU+ePA2Aoldi0qekH/a7O9xK5BI2TF/lFOaRm7mPVZ5/h59N8xrJr8tk3R1qy/9b6XlRUZFU5m2cDri+0Wi1jxozh3//+N3379q2y3Jw5c5g9e3a58wIDA4mJicHd3brluXq9nri4OEaMGIFarbbqnANf7YEsaNM6gFGjRll1TmOkJr4HZwbzSdxyzpvS8cw8xv33vmb19Wqs1Oazb060ZP9r6nvZXXR12FR0AwMDSU9Px2AwoFKpkGWZlJQUgoKCypULCgrizJkzlu3k5ORyZfLz87nlllsYN25cOUGtDI1Gg0ZT8UGWWq2u8ZeoJucUlpo/gFauPs3iy2qN71Ftojje8zjbtq/nvD6JuN9+YdyY8TaysGGpzfelOdGS/bfWd2uvj00fpLVu3ZrevXuzZs0aANavX09AQEC5oQUwj/Vu3LiRjIwMZFlm6dKlTJw4EYCCggJuueUWbrnlFl566SVbml8jinVm0fV0bT632NWhVCgZGTYS38BOXNIUcvSvjVzMzLK3WQJBo8LmsxeWLVvGsmXLCA8PZ9GiRaxatQqAadOmsXHjRgA6dOjA/PnzGTRoEKGhofj6+jJjxgwA3nvvPfbt28eGDRuIjIwkMjKS//73v7Z2o1rKElK2btW00/TUlHau7bi1960onDxIdc7ih+8a38wSgcCe2HxMNyIigt27d1fYv2LFinLbsbGxxMbGVij34osv8uKLLzaYffWB3qRHbyoBwN+rZYkuwKCAQcR3OsDxg1s5k7WbnXt2M2jAQHubJRA0CsSKtAbgcv5lMBmQZIm2Pi1PdJ1UTtzR83ZcWgeT4ZzP9t9WiZVqAsEVhOg2ABeyrqxGwwE3Fxc7W2MfwluFc2v/MeDgRJLDBdZ/s8reJgkEjQIhug1ARrZZdB2Uzs0iIWVtkCSJ4SE3E9FlACVKAyeztrNrT8VhJYGgpdEyFaGBydKan9g7NpOElLXFWe3MvX0m4OIbzEXHQn77bRXZubn2NksgsCtCdBuAnPwrCSk1zSc3Wm1p79Ge26PvRHJwIlmTypdrliA3wgBFAoGtEKLbAGiLzAkpXR097WtII2FYyDB69bwJnVLmeOE+fty00d4mCQR2Q4huA1BYYn5S7+HcvHKj1Ra1Us3kvvfTOrAL+eoSdh5ey4lTp+xtlkBgF4ToNgBFun+WAAvMeDt5M+3GaajdfUl3ymP99++SX1Bgb7MEApsjRLcBKLmyGs3Xs7WdLWlcdPbpwh2D70NSaTirSmLVp29jMorxXUHLQohuPWOSTeiM5hBvft5t7GxN42NkeAx9ImPQK+Dvor18tV4sExa0LITo1jO5Rblg0iMh0U6IbgXUCjUPD3yQ4A59KVHq2Zm0gd93bLO3WQKBzRCiW8+cz0oDQCWraOXhYWdrGicuaheeGPEEbr4dyFeX8OPODzlxWjxYE7QMhOjWMxnZGQA4KFruajRr8HX25cnbnkbl6s0lhzxWf/caqRfS7G2WQNDgCFWoZ7Ku5EbTqFtmzIWaEOYVRuwtTyBpXElXX2TZ2rlcys62t1kCQYMiRLeeuZxvFl1ntRhasIaBQQO4f/gjoHYkRZnKh6tfpqCw0N5mCQQNhhDdeianwLwE2M1JLIywluHhNzN2yFRQqjlLAu+snEtRsXVJ/gSCpoYQ3Xomv9h8e9zKzdfOljQdJEnizp53cHPURGSFkgTDMRZ//KIQXkGzxOaim5CQQHR0NOHh4URFRXHs2LFKy61cuZKwsDA6duxIbGysJad8cnIyN954Ix4eHkRGRtrQcusovLIazcdDLIyoCZIk8cDA+xnW715QKEk0HOfNj1+g0Mq01gJBU8HmojtjxgymT5/O6dOnee6555g6dWqFMklJScydO5cdO3aQmJjIxYsXWb58OQDu7u689tprrF271saWV48sy5To8wFo493OztY0PSRJYsrA+xnRfxIolJwxHGfhimfJEeEgBc0Im+ZIy8zMJD4+ns2bNwPmrL+zZs0iMTGxXEbgdevWMXbsWPz9zaluZs6cyYIFC3j00Ufx8vJi8ODBbNu2zao2S0tLKS0ttWyX5abX6/WW3nN1lJWrrnxhaSFGYzEAbb3aWl1/Y8Za3+uTCX3uRpIlNu9bQ4ohgdc+eYLH7n6Vdv5tbWZDGfbwvzHRkv2vqe/WlrOp6KamptKmTRtUKnOzkiQRFBRESkpKOdFNSUkhODjYsh0SEkJKSkqt2ly4cCHz58+vsH/z5s04OzvXqK64uLjrHs8sygJklCYlB+P/4ojiUI3qb8xU53t944YLnb1u4Njl7WTJ6bzx5Wx6+Y2itad9ggjZ2v/GRkv231rfi6wcCrN5NmBbM2fOHGbPnm3Z1mq1BAYGEhMTg7u7dUHG9Xo9cXFxjBgxArVaXWW53w79DumgUbowZvToOtveGLDW94ZgFKPYn3QDyze/QQH57Lv0A3e0/xcjBg63mQ329L8x0JL9r6nvZXfR1WFT0Q0MDCQ9PR2DwYBKpUKWZVJSUggKCipXLigoiDNnzli2k5OTK5SxFo1Gg0ajqbBfrVbX+EtU3TlZWvMcXSe1e7P7gtbmetUH0eED8PV4k8UbXqG4OJNv97/HufREZtz1KAql7R5J2Mv/xkJL9t9a3629PjZ9kNa6dWt69+7NmjVrAFi/fj0BAQHlhhbAPNa7ceNGMjIykGWZpUuXMnHiRFuaWisuaS8C4KzxtK8hzYwwv468MeVD/H26YpRM7L7wIy9/PJvLuWL1mqDpYfPZC8uWLWPZsmWEh4ezaNEiVq0yp+aeNm0aGzea07h06NCB+fPnM2jQIEJDQ/H19WXGjBmAedwkICCAu+++m+PHjxMQEMCcOXNs7Ual5BZcAsBdZIyodzycPVh4/2L6RoxGlhSkFB3nxVXT2f7Xn/Y2TSCoETYf042IiGD37oqpuFesWFFuOzY2ltjY2ArlnJ2dOX/+fIPZVxe0xebcaF5uYo5uQ6BUKHn8tsfZEtCNtX8socigZeXvrxF/ehiP3vEkGo2DvU0UCKpFrEirRwp0ZtFt5x1oZ0uaN8N7DmPRlGX4teqMLJk4lLaF2cumsuvoXnubJhBUixDdekJnKKVUb3562aFtRztb0/xp7eHLG1Pf5eYe96NUaMg3XGJZ3Cv89/N5aAute4osENgDIbr1RPLFFJCNKGUl7duG2NucFoEkSUwZ/gDz7/0If49OyJg4lbWL2R9P4bNfPsNoMNrbRIGgAkJ064mEC+Ypbo5KVzG2aGOC/AJ5/aH3uKP/IzgoXdGZCtlyfA2PL53Cbwe22ts8gaAcQnTrifNZ5wBwcfC2syUtE0mSuGPQ7bw7/XN6B9+CQlKTr8vk0z8W8dTS6fxxeIe9TRQIACG69UZmnjnVjKeLCOloT1ydXHjyztm8et9SQrx6ISFxuSiZlb/9hyeXxvL7oT+QZdneZgpaMEJ064mcgiwAfDxtH5RFUJEgv0Benfo6/779HYI8uiOhILvoHKu2/pdZH01h7dYvKdGX2NtMQQuk2cdesBUFpeaMEe18ardcWdAwdO3Qhdc6vMXxpJN8ufUTUnOPkl+awS+HVrHl6Dd0bTeQcYPuJLSNmHEisA1CdOuBUn0pJQbzNKWObUKrKS2wB13ad+I/D79B6sULfL31c05l7KbUWMjhlC0cSvkNL5dAokJvZOzAcbg7u9nbXEEzRohuPXDs3AmQjahkNWGBHextjuA6BPq145l7n6eouIj129Zz4MxWcnRp5BSmsPnwZ8Qd/Yo2HmH0CR3MyD4xOKkd7W2yoJkhRLceOJFyHABXB+8WG4mpqeHs5MzkWyczmckcO3OKTXs3kJgRT7Epn7ScY6TtP8ZPBz7BxzUEF5Mv3S51o4N/ByRJsrfpgiaOEN16IPliAgCtXMRDtKZI144RdO04B71ezx9//cmek1tJvXyMYlMBWdoEskhg/pe7cdR4EegVTq+O/RnafTDuTtbFYxYIrkaIbj2QkZsMQJCvGM9tyqjVaob3v4nh/W/CaDSy9+g+dhzdQtLFIxQrtJSUXiYhfTcJ6bv5ZucHuDr64O/Znoh23enXKYoQ32DRExZUixDdOlKsK0ZbYo6j2zs8ys7WCOoLpVJJdORAorr2ZdOmTXTvE8meYzs5kXKAi/lnKZELKSi+SGLxRRLT9/Bz/Meo1G54Ovnh7xFE+zZh9OjQg1D/DigVSnu7I2hECNGtI3tP7EeWDajR0L1jV3ubI2ggAv3a0iHgPuA+TEYTJ5NOcyBhH2fTj5OlPUeBMRuDPp9L+nwuaRP5O3UrP+4DhVKDq4M3Hs6+tPZoSzvfYELbhtGpXRiODuIhXUtEiG4d2X1iOwC+LsGWhJuC5o1CqaBLaCe6hHay7Mu8nMWh04dJSDtBenYyuYVpFBhzMRlL0RanoS1OI/XyYQ6cvXKCpMBB5Yazgwdujq3wdPbB19OPNl7tCG4dRLBfEI5qRzFc0QwRKlEHjEYDSZmHAega0t/O1gjsSWtvX2IGDieGf5JmFhYVcuTMMc5eSCAtO4Xs/DTySy5TbMhDjx6dPg+dPo/cwhRSLwOpV9cooVBqcFA646hywcnBDReNB+7Onni6eOHt7kMrV09aubXCx8OHVq4eOKgq5gIUND5sLroJCQlMmTKFS5cu4eHhwerVq+nateJt+cqVK1m0aBEmk4lhw4bx0UcfWaZjXe+YLfl57/8oMeShRM2ofrfZvH1B48bF2YWB3fsxsHu/cvsNBgPJF1I4k5ZIenYal7UZ5BVeJr8kh2J9HqWmAoySEZOxhBJjCSW6bHKrze4toVCoUSkcUSk0OKgc0aic0Kid0agcUasccVQ7olE74eTghJPGGSeNE84aV1ydXHB1cjW/HF1wcnBCo1ajVIo+WUNg86s6Y8YMpk+fztSpU1m3bh1Tp05l//795cokJSUxd+5c/vrrL/z8/Bg3bhzLly/n0Ucfve6xhsJkNGI0mtDpdRhNRoyykb+TjrNx/2oAOvr0wbuVyIsmsA6VSkVocAdCgytfSGMwGMi4lElGTgaZOZlc1maRW3AZbXEuhSV5lOi0lBiK0JtKMJpKMUhGQMZk0qEz6dABRbq62SgjIaFAISlBltj40WqUkgqFpEQhqVBIKpQKJUqFCqXiyn4UKBRK80sq+2vep1QoUUrmbaVSjVKhQKEoq+NKPUrzeUqF4krbEpKkQJIklJICSWF+KSTzMYWkQJIUKBVK87ZCiUKhuNK2dOW9hHSlTnN5JQqFOfWTBJb6kSRLewrMUesMJiM6g6FuF7ISbCq6mZmZxMfHs3nzZsCc9XfWrFkkJiaWywi8bt06xo4di7+/PwAzZ85kwYIFPProo9c9VhmlpaWUlpZatsty0+v1evR6fbU2L/52EScyzGEBv1/6fxWOayQ3Hr71EavqaoqU+dVc/asOe/nv5+2Ln3f1Eetkk4niklIu52eTrc0mtyAXbVEe+UVaCkryKS4tQGcoQWcoRW8sRW8oxWDSoTfqMJp0GGU9RtmAUdZjwoCMOQKbhAwYMcnmQPAmYykt8RvQx3u01Z+9teVsKrqpqam0adPG8sBJkiSCgoJISUkpJ7opKSkEBwdbtkNCQkhJSan2WGUsXLiQ+fPnV9i/efNmnJ2dq7X58qXLle6XUOCCH338bmLfruafmysuLs7eJtiVpuS/EgWeeOKp9ITqv+IWTCYZg1GP3mTEYDSgN+kxmIwYTHqMshGDyWC+0zMZMMgGTCYDRtmEQTaAbMQky8iYkDFhkmVMmAATJtn8Vy47LpswIZffhwkZ8/syzP8A/nmZI3JeeS8Bctm/iH/2SVftkzH/8yjbA1cfk5Gu2Vv2XgLKDkoorP7si4qqHQMCWsCDtDlz5jB79mzLtlarJTAwkJiYGNzdq19RFF0wCG2Blt27djNoyBA0ajUKScLN2Q0HdfPPEKHX64mLi2PEiBEtcomz8L/l+l9T38vuoqvDpqIbGBhIeno6BoMBlUqFLMukpKQQFFQ+HGJQUBBnzpyxbCcnJ1vKXO9YZWg0GjSaik911Wq1VRfSt5UPnq4e/O14lADfNi3ui1eGtderuSL8b7n+W+u7tdfHpkHMW7duTe/evVmzZg0A69evJyAgoNzQApjHejdu3EhGRgayLLN06VImTpxY7TGBQCBo7Ng8c8SyZctYtmwZ4eHhLFq0iFWrVgEwbdo0Nm7cCECHDh2YP38+gwYNIjQ0FF9fX2bMmFHtMYFAIGjs2HxMNyIigt27d1fYv2LFinLbsbGxxMbGVlrH9Y4JBAJBY0bkSBMIBAIb0uxnL1xLWSZYa580gvkpZlFREVqttsU9TGjJvoPwvyX7X1PfyzSlumzTLU508/PzAfNMCoFAIKhv8vPz8fDwqPK4JFcny80Mk8lEWloabm5uVkdwKpvbm5qaatXc3uZES/YdhP8t2f+a+i7LMvn5+bRt2xaFouqR2xbX01UoFAQEBNTqXHd39xb3xSujJfsOwv+W7H9NfL9eD7cM8SBNIBAIbIgQXYFAILAhQnStQKPR8Morr1S6nLi505J9B+F/S/a/oXxvcQ/SBAKBwJ6Inq5AIBDYECG6AoFAYEOE6AoEAoENEaIrEAgENkSIrkAgENgQIboCgUBgQ4ToCgQCgQ0RoisQCAQ2RIiuQCAQ2BAhugKBQGBDhOgKBAKBDRGiKxAIBDZEiK5AIBDYECG6AoFAYEOE6AoEAoENEaIrEAgENkSIrkAgENgQIboCgUBgQ4ToCgQCgQ0RoisQCAQ2RIiuQCAQ2BAhugKBQGBDhOgKBAKBDRGiKxAIBDZEiK5AIBDYEFVDVJqQkMCUKVO4dOkSHh4erF69mq5du1Yot3LlShYtWoTJZGLYsGF89NFHqNXq6x7bunUrzz//PAUFBUiSxG233caiRYtQKKz7/2EymUhLS8PNzQ1JkurVb4FA0HKRZZn8/Hzatm17fT2SG4CbbrpJXrVqlSzLsvztt9/Kffv2rVDm7Nmzcps2beT09HTZZDLJY8aMkZcsWVLtsb/++ks+c+aMLMuyXFxcLA8aNMjSljWkpqbKgHiJl3iJV4O8UlNTr6tBkizLMvVIZmYmoaGhZGdno1KpkGWZNm3a8OeffxIaGmop9+abb3LmzBmWLl0KwKZNm1iwYAF//vnndY9dy6xZs/Dx8WHevHlW2ZeXl4enpyepqam4u7tbdY5er2fz5s3ExMRYeuIthZbsOwj/W7L/NfVdq9USGBhIbm4uHh4eVZar9+GF1NRU2rRpg0plrlqSJIKCgkhJSSknuikpKQQHB1u2Q0JCSElJqfbY1WRkZLBu3Tp++umnKu0pLS2ltLTUsp2fnw+Ak5MTTk5OVvmkUqlwdnbGycmpxX3xWrLvIPxvyf7X1He9Xg9Q7bBlg4zp2gKtVsuYMWP497//Td++fasst3DhQubPn19h/+bNm3F2dq5Rm3FxcTW2s7nQkn0H4X9L9t9a34uKiqwqV++iGxgYSHp6OgaDwTK8kJKSQlBQULlyQUFBnDlzxrKdnJxsKXO9Y2Durd5yyy2MGzeO2bNnX9eeOXPmlCtTdgsQExNTo+GFuLg4RowY0eL+27dk30H435L9r6nvWq3WqnrrXXRbt25N7969WbNmDVOnTmX9+vUEBASUG1oAuPPOOxk8eDDz5s3Dz8+PpUuXMnHixGqPFRQUcMstt3DLLbfw0ksvVWuPRqNBo9FU2K9Wq2v8JarNOc2Fluw7CP9bsv/W+m7t9WmQebrLli1j2bJlhIeHs2jRIlatWgXAtGnT2LhxIwAdOnRg/vz5DBo0iNDQUHx9fZkxY0a1x9577z327dvHhg0biIyMJDIykv/+978N4YbdMBmNZKQkYDQY7G2KQCCoZxpkTDciIoLdu3dX2L9ixYpy27GxscTGxlZaR1XHXnzxRV588cX6MbQRcvH8GQpW3UVH41nOKQJRT15H2/ad7G2WQCCoJ8SKtEaEbDJx6bOpdDSeBSDYlEru2oeRTSY7WyYQCOoLIbqNiCPb1tFVd4QiWcPRYaspkjV00f/N33/+YG/TBAJBPSFEtxEh7TMvBjniP57uQ+/gqO9oAPR7P7GnWQKBoB4RottIyMlKp0vxQQACRz4GgM/QaQB0LthDcWG+3WwTCAT1hxDdRkLC9q9RSSbOKDvQroM5OFCHbgPIwBcnScep3VWvuhMIBE0HIbqNBMcEs6hmBo607JMUCs55DwKg5PTvdrFLIBDUL0J0GwGF+bl0Lv4LgLYDJ5Y7puwwGACfy/E2t0sgENQ/QnQbAWcO/IZaMpImtSY4IrLcsaDI4QC0N5ylQJtjB+sEAkF9IkS3EVB4ehsAFzz6VDjWul17MvFCKcmcPyl6uwJBU0eIbiOgVeZ+AOTgQZUeT3fsCEBe8iFbmSQQCBoIIbp2pjA/l4760wAE9IqptExRq87mNxf/tpVZAoGggRCia2fOHvwDtWQkA1/ahkRUWkbdrjsAHnmnbGmaQCBoAITo2pmCs+bAQOfdelRZxrejeaw3UJ+EyWi0iV0CgaBhEKJrZxwzDwNg8I+ssky70O6UympcpBLSz520kWUCgaAhEKJrZwKKTgDgEdq/yjIqtQOpKnPmjIsJf9nELoFA0DAI0bUjmReS8CUHg6wguOuA65bNdWkPgO7iaVuYJhAIGgghunbk/N/mlPIpyiCcXatO2Qyg9wgBQMpNbmCrBAJBQyJE146UnjPPz73k0bXasiof81xdl8KKqegFAkHTQYiuHXG9fAQAuW3FlWjX4tYmDACf0gsNapNAIGhYhOjaCZPRSHCped6td/j1x3MBfIPNCyRay5coLSlqUNsEAkHDIUTXTlw4+zfuFFEiqwnu3Lfa8l6+bSmUHVFIMhnnxMM0gaCp0iDZgAXVc/HkHgKBc+oORDhoqi0vKRRkqNrQ0ZhE7oWTFaKR1TeyycSRbesw7V/JwKJTFB58hFxFKy569sKt3yQ694tBUoj/2QJBTRGiaycM582peXI9q3+IVkaeYyAUJlGckdhQZgHmeBCn/+9eehXtMu+QzH88TQWEZKfCLxtJ3hxEdtRseo2cIsRXIKgBQnTthHuOOXiN1K631eeUugdBIUg5SQ1lFiXFhZx/L4ZehlOUymr+8r+LFFUofQYOpSA9Ed3xn+mWHUeIKYWQvU9y8sAyHG5/jw7dql7cIRAI/kF0UeyA+SFaAgC+4f2sPk/RKgQAh8K0hjALgMMr/kWE4RS5uJI0+iv6TvsAx9ZhBEf0InLEffR74gsMT51gd+A0imQNnQwnCPz2VnaveEo84BMIrECIrh1ITTyKi1RCsexAYHgvq8/TeAcC4FZ6sUHsOvrHBvpf/gGTLJF60wd0ihpeaTl3T28GPvwWhTP2cdBlMGrJyMDzn5DxRj9Oxv/WILYJBM0FIbp2IOvUHgDOqTuiUjtYfZ5b6xAAvI1Z9W6TyWjEaftrAOzzu5vuN4yv9hzftiH0evZn/hrwHpfwJNiUStiPd7J72aOUFBfWu40CQXNAiK4dMJw3B63Ja2X9QzQAn7bm+Aut0Na7qB38dTWhxjMUyE5E3P1qjc7tfctU1I/tY79HDEpJZmD6Gi6+2Z/Tf22rVxsFguaAEF074J5zDABFO+uHFgDcW/lSJJunl126UL8P05wOfgLA0aBJtPJtU+PzPbz9iHrqWw5Gf2jp9Xb84XZ2L39MjPUKBFchRNfGGA0GQnTmh2g+4TV74i8pFFxWeAOQe7H+RDfl9CG66P/GKEt0vGVWnerqFXM/qll7iXcfbu71pn1G+hv9OP3XH/VkrUDQtBGia2POJx7BWSqlSNYQGNazxufnObQGoPhSar3ZlLZ1OQBHnfvTul37Otfn6eNP39nr+WvgEi7jQYgplQ4/3M6ej6ajzb1c5/oFgqaMEF0bk3nlIVqKQ80eopVR7GS+9TfmnK8Xe2STiZCMXwEwRd5fL3WW0XvkZBSP7uWA2zBUkokBmV+jf7cX+777QKQdErRYhOjaGOOFmq9EuxqDq1l0pfz6iTaWdHw//lyiWHagy5A76qXOq2nl24Y+T3/HkRs/IVVqizd59Dv8EmcXRHF46zfIJlO9tykQNGaE6NoYzysr0ZQ1fIhWhsIjAADHovR6sefigR8AOOXcG0dn13qpszJ63Hgnfs8fZE/HJyiQnQg1nqHn9lhOLRzE0T82CPEVtBiE6NqQkuJCOujMEcL8uw2tVR2OPuZcaa66zHqxqdX53wEo7TCiXuq7Hg4aRwZMfhX9rIPs8Z9EsexAJ/1xuv/+IMmvRbJ/w3tifq+g2SNE14YkH9mJg2QgG3cCOtRueMHN1yy6XsZLdbYnLzuLMJ05MWbwgNvrXJ+1tPJtw4CZH1E4I549re+hUHakvekcUUdepuT1cPYueZDTf/0her+CZokQXRuSe2oHAOecu9c6Mpdna/PwQivy0ZWW1Mme5MPbUEoyqVJb/AND61RXbfBpG8yARz7G8OQx9oQ+SQY+eFJA/0sbCN84lpTXurN7+WOcjP9NPHgTNBsaRHQTEhKIjo4mPDycqKgojh07Vmm5lStXEhYWRseOHYmNjUWv19f5WGNGkxEPQGnbqFrX4entj15WApCTVbeHaUWJOwHIcO9Rp3rqikcrHwbcPx/fl05x5MZPiHe72Rzc3XSegWmf0emn8eT8pz0HFo9j79eLOPv3XiHCgiZLg4jujBkzmD59OqdPn+a5555j6tSpFcokJSUxd+5cduzYQWJiIhcvXmT58uV1OtaYkU0mQorMD9E8O9VuPBdAoVSSI5kzB2vrKLruWeblyHJg4wjLqFSp6HHjnfR9egP62aeJ7/smB9yGkS874U0efQq20f/EQjqsi6Hw1XYcXzCYvR8+zP4N73Eqfis5WeliSELQ6Kn3eLqZmZnEx8ezefNmAO68805mzZpFYmIioaH/3MKuW7eOsWPH4u/vD8DMmTNZsGABjz76aK2PVUZpaSmlpaWWba1WC4Ber7eqh3x4yxcYT/6Ca1EJ8ec2gFINChWywgFVmy4E9x2FlxXLZs8e3U0EWvOiiE796tQ7z1N60dqYTX5Waq3r0etKaV96EiTwjhhUZT1l+219N+Ho7EbPkQ/CyAfRlZZw9NAf5J/egevF/YSW/I2bVEwX3VHIOgpZ68Cc45MC2YmLSn+0jm0pdfTB5OyD5NoatVtrHFv5o3HxROPihqOLB86unjg4aK471GMv/6tDNpkwGg2YTCZkkxGTyXTlveHKeyMmkwwmI0ajAVk2IZvML5NsBJNs3m8ygWwuL1+pS5aNyCYZk2zEqNdTcvEUx3bKKBSSuYxsLodstNSJXHbulfdX2sNktGwj/1PO/F5Glo1Ismw+btl/1ct0zTZlfy2x9UGWr74yVu4zI8mV/ZOWrxSXKfUaavVnb225ehfd1NRU2rRpg0plrlqSJIKCgkhJSSknuikpKQQHB1u2Q0JCSElJqdOxyli4cCHz58+vsH/z5s04OztX64/q5G/cVvw/80b2NQfToeTAS/zP5XZMYaORFFKF88uQTv1IBHBU2YWM37ZW2+71aCObp3YlHYsntbh207xKLiUxQSolT3bmSGIaf5/NuG75uLi4WrVTr3hHk+UdzRmjAV1eGgptKm5FKbTWpdDWlI6/lI2rVIyrKQmKkqCIip/ZNehlJUU4UooaI0oMqDBISowor2wraS+pSDz0XwAkZCTLj5h/3iNbREBCRoHJUrbsveWvLCNhQnFln+Kacspry19VToEJpVRRPBqSHgANF8K5UXPOJdLq735RkXUxRpp95og5c+Ywe/Zsy7ZWqyUwMJCYmBjc3d2rPf+El4KdCe3IvpSJl6cHkmwE2YBCX0TrnL/oYDrH2KJv2Z0GfaZ9WGWvKfHvRQCYwm9l1KhRdfLpr6SvIfcQbdxVRNWyrvj1bwNwzrEzo0ePrrKcXq8nLi6OESNGoFara9WWrSgoLiTzfCJ5aQmUZCUhF2ShKL6EpuQyTrrLuBrzcJKLcJaLcZJ0AKglIx5UM02tvjWu6v/NDYJBLi/7pjI5l/7512BEeUX6Jcu/AZNklnmjDEhKZOmffxWyVPbvQMIkKeGqbVkqK1Nxm6v3SUq48h6p/D6kq8pfqR/L+WAZGbVcy6sv6pX3Ul32gWySUTp6Wv3dL7uLro56F93AwEDS09MxGAyoVCpkWSYlJYWgoKBy5YKCgjhz5oxlOzk52VKmtscqQ6PRoNFUTPyoVqutupA9hoxBP+AWNm3aRL9Ro8qdI5tM7F33Fv2Pv8bArG/Z820AA+6fV6GOvOwswnUnQIKQgbfXWbxMrn6QC8riS7WuS5F1HIBCr85W1WHt9bInarUnrl36QpfqsysbDQYKC/IoLsilpCAPfWkxJqMek16H0aDHZNRhMugx6Eo5k3iaDu3bo1AqkK6IC5jv4sqQpDIRMO+TFMorL4X5mEKBQqG6ZvtKGUmBpFCiUEhXzlGZ30v/1KFQKlEolCgs5ypQKlWgUKK4sq1QKP8pd2W/pFDU6Ueu1+vZtGkTo6757rcEyny39rtv7fWpd9Ft3bo1vXv3Zs2aNUydOpX169cTEBBQbmgBzGO9gwcPZt68efj5+bF06VImTpxYp2O2RlIo6H/Ps+z5UseAU2/QO+EDzv59a4V8Yad3fEuUJJOsCCQkOKLO7Src/ABQF9c+mLm71hzpTN2me53taYooVSrcPb1x9/S+bjm9Xs/50k30jGl5oiNoGBpk9sKyZctYtmwZ4eHhLFq0iFWrVgEwbdo0Nm7cCECHDh2YP38+gwYNIjQ0FF9fX2bMmFGnY/ai/4Q5HHSOxkEyIG2YXmFVldPxrwFID6jbsEIZDp7mB3fOpbVbICGbTATozgLg3bF2y5EFAkHtaJAx3YiICHbv3l1h/4oVK8ptx8bGEhsbW2kdtT1mDySFgqApH3P5/6Jpb0pm7yeP0//RlQAkHdtLt9JDmGSJ4GEP10t7Tq3aAuBurOYpURVkpCbQRipGLytpF1rz8JICgaD2iBVp9YS3XwDnb3gLgP5Z6ziwaSWyyYT2xxcBOOQ2lLYhdR9aAHDzubIqzZRTq3mpFxPNkc7OKwNx0DjWi00CgcA6hOjWIz1vups9/pMA6LH3Wc78ty89S/ZTKqvxHlOzvGPXw8vPLLpOko6C/Nwan1+Sap7UetnV9kt/BYKWjhDdeqbvw++y3yMGtWQk1HgGoyxxpNc8giMi660NJxc38mUnAHIuVj1HuSpUl08CoPfuVG82CQQC62j283RtjUrtQN8nvubvXT9RkHoUv54xRHWpfayFqshTeOImF1OYc7HG57oXm1P9OPqH17dZAoGgGoToNgCSQkG3wWOBsQ3WRoHSEwzplORefyVZZfgZzDEbPANET1cgsDVieKGJUuzQCgCdtmZzdXMvZVhWYPkFC9EVCGyNEN0mil5jFl1TQc1E92KyeSVaJl44u3rUu10CgeD6CNFtohidfACQimqW0jw/7RQAWQ7t6t0mgUBQPUJ0myiSi1l01SU1E119ljluRaFL1fEqBAJBwyFEt4micvMFQKOr2ao0dV4SAMZWHevdJoFAUD1CdJsoDu6tAXDW59boPPci87xeTWshugKBPRCi20RxbmWONOZmyqvReb4G8xQzj7Zijq5AYA+E6DZRXL3M6Yo8Za3V8ReKC/NphTnQsk870dMVCOyBEN0miqePObyjWjKizbXuYdqlNHM4xyJZg3sr3wazTSAQVI0Q3SaKo5MLBVfiL2gvW5fAKi8jGYAspe91kzEKBIKGQ/zymjB5CnOOt8Js6+IvFF0yP0TTqls3mE0CgeD6CNFtwhQoPQEozsu0qrwxxxzoptjJv6FMEggE1SBEtwlTrL4SfyHPup6uMt8c6MboHtBgNgkEgusjRLcJo9N4ASAXWvcgzbHYPF1M5SlEVyCwF0J0mzAmzZWANcXWrUpz15l7xI4+YgmwQGAvhOg2YWRnc09XUVr9AgnZZMLXaI5I5u7XvkHtEggEVSNEtwmjcPYGQK3LrbasNi8bF6kEAN92QnQFAnshRLcJo3Y193Qd9dX3dLPTzYFu8nARcXQFAjsiRLcJ4+BuDu/obNRWW7bgknkBRY7Cq0FtEggE10eIbhPGyd28lNfFlF9t2dLcdAAK1N4NapNAILg+QnSbMK5X4id4yPnVBr0xaM3TxUo0Pg1ul0AgqBohuk0Y91bm5bxqyUhhQTXjugXmVWsGJyG6AoE9EaLbhHFycaNEVgOgzb7+UmBl8ZUEli4i7oJAYE+E6DZxtJIbAEV5188K7FhyCQClu4i7IBDYEyG6TZzCK5HGiqsRXRe9edWaxlOIrkBgT4ToNnGKVOaeri7/+vEXPEw5ALh4i9TrAoE9EaLbxClVewJgKKhadA16Ha1k81xeD18hugKBPRGi28QxOJhXl5mKqg56k3s5A4UkY5QlWl1J8yMQCOyDEN0mjtHRvMJMKs6pskxe5nkAciQPlCqVTewSCASVI0S3iSM5eQKgLM2tskxhtnk1Wp6ylQ0sEggE10OIbhNH4WJe1utwnUhjZUuAC9Ui7oJAYG+E6DZxVK5m0b1epDFjvnnhhM5BiK5AYG/qVXRNJhOPPfYYHTt2JDQ0lCVLllRZNiEhgejoaMLDw4mKiuLYsWPVHispKeH2228nPDycnj17MmLECBITE+vThSaHoxWRxuQi88wGg5MIdiMQ2Jt6Fd01a9Zw/PhxTp8+zb59+3jzzTfLienVzJgxg+nTp3P69Gmee+45pk6datWx6dOnc+rUKQ4fPsy4ceOYNm1afbrQ5HDyMIuuq1x1pDFlifkhm+wkxnQFAntTr4+yv/76a2JjY1EqlXh5eTFhwgS+/PJLXnvttXLlMjMziY+PZ/PmzQDceeedzJo1i8TERNzd3as8FhoayqhRoyz1DBgwgMWLF1/XptLSUkpLSy3bWq25R6jX69Hr9Vb5VVbO2vK2xNHNPGTgLhdQWlKCQqmsUEZ9RXRxbFVjHxqz77ZA+N9y/a+p79aWq1fRTUlJITg42LIdEhLCnj17KpRLTU2lTZs2qK5MX5IkiaCgIFJSUvDw8KjyWGhoaLl63nvvPcaNG3ddmxYuXMj8+fMr7N+8eTPOzs418i8uLq5G5W2ByaDnDkApyXy3cQNqjUuFMu1LzMMLqZfyydy0qVbtNEbfbYnwv+X6b63vRUVFVpWrkegOHDiQhISESo8dPHiwJlXVmQULFpCYmMhvv/123XJz5sxh9uzZlm2tVktgYCAxMTG4u7tb1ZZerycuLo4RI0agVqvrZHdDUHTkEZylUvpGdqVd+y4VjqcdfgFk6NQjis4DR1VSQ9U0dt8bGuF/y/W/pr6X3UVXR41Ed/fu3dc9HhQUxLlz5xg4cCAAycnJBAVVTPcdGBhIeno6BoMBlUqFLMukpKQQFBSEu7t7lcfKWLx4MRs2bGDLli3V9lY1Gg0ajabCfrVaXeMvUW3OsQWXJTecKUVXkFOpfa5XMku4evnX2v7G6rutEP63XP+t9d3a61OvD9LuvvtuPv74Y4xGI9nZ2Xz99ddMmDChQrnWrVvTu3dv1qxZA8D69esJCAggNDT0uscA3n77bb788kvi4uLw9PSsT/ObLIVKc4+9JO9ShWOyyYTHlYdsrq1ELF2BwN7U65ju5MmT2b9/P2FhYUiSxOzZs+nevTsAGzduZOPGjaxYsQKAZcuWMXXqVBYsWIC7uzurVq2y1FPVsfPnz/P000/ToUMHbrrpJsDck927d299utHkKFa5gxF0+RVFV5uXjYdkTuXj7iVEVyCwN/Uqukqlkg8//LDSY2PHjmXs2LGW7YiIiCqHK6o6FhAQgCzL9WNsM0KncodSMBbnVjhWkHMRD6BI1uDsVPEhm0AgsC1iRVozwOBgjqlrqkx0sy8CoJWse2goEAgaFiG6zQCTxhMAqaTi09MSrXnIoUApRFcgaAwI0W0GyI5mQVWUVoy/UDbOW6zysKlNAoGgcoToNgMUV8I7qnQVe7rGArPo6hw8bWiRQCCoCiG6zQClszmmgoOhoujKVzJKGK4MQQgEAvsiRLcZoHYxi67GUFDhmOJK3AWTiDAmEDQKhOg2AzSuZtF1NlWMNKYuNYuu5Cxi6QoEjQEhus0ApyuRxlzkwgrHHK4EN1e5CNEVCBoDQnSbAS5XYuq6yYXIJlO5Y2VDDmpXIboCQWNAiG4zwNXTPF6rlGQKC8pPG3MymUW3bAhCIBDYFyG6zQCNozM62byiuyC3fPyFsiEHRzchugJBY0CIbjNAUijIl8xxFYq02Zb9ssmE2xXRdXYXsxcEgsaAEN1mQqHCFYCS/H9Et7goH9WVCGOuHmJMVyBoDAjRbSYUXxFdXUGOZV9BnlmA9bISJ2c3u9glEAjKI0S3mVCqMouqvvCfnm6R1pwbrUByQVKIj1ogaAyIX2IzQa82i66xKNeyr+TK+G6hVLMEnAKBoOGo1yDmAvthcDBHEZNL/pkyVlqYC/wz9NBSMBqN9ZYyXK/Xo1KpKCkpwWg01kudTYmW7H9VvqvVapRKZa3rFaLbTDBpzOEdpatEV19oHt8tVbUc0S0oKOD8+fP1lmFElmX8/f1JTU1FkqR6qbMp0ZL9r8p3SZIICAjA1bV2vyshus0FR08AlFfF1C0batCpWkYAc6PRyPnz53F2dsbX17deRMJkMlFQUICrqyuKFjgu3pL9r8x3WZbJysri/PnzhIWF1arHK0S3mWCJqav/J7yjXGwW4LJ0Ps0dvV6PLMv4+vri5ORUL3WaTCZ0Oh2Ojo4tTnSgZftfle++vr4kJyej1+trJbot6yo2Y1QungA4GK6KNFaSC4DJoWX0dMtoabfBAttS1++XEN1mgsOVmLpOV4mupDO/lx1Fqh6BoLEgRLeZoLkS3tHZ9E94x7L0PZIQXbshSRK5ubk1PlbXumtDWloaQ4YMqbf6rsfSpUt58803bdIWwOrVq7n99ttt1t71EGO6zQSnK7EVXOR/skeor/R6lc6e9jDJrsiyTLG+7lOcTCYTxTojKp2h0jFNJ7Wy2QxntG3blh07dtikrZkzZ9qkncaIEN1mgou7uafrJhVjNBhQqlQ4XhHdsnQ+LYlivZEuL//a4O0cf3Ukzg7X/xktXryYn3/+mcLCQl555RUmTZpUoUx8fDyPP/44BQUFODo68s477zBo0CAAfv75Z+bNm4dOp0OSJJYtW0b//v0t58qyzPPPP8+JEyf46quvcHYuvxhGkiRee+01Nm7cyMWLF3n33Xc5ceIE69evJy8vj48//pgbb7yR5ORkIiMjLb3nsvM2bNhAdnY2L7/8Mg8++CAAISEhfP/990RGRgLQt29fFi9ezI033shrr73GF198gUajAeCHH34gODi4nE3z5s0jNzeXd999l9WrV7NmzRp8fX05fPgwnp6erFixghdffJGTJ08SGBjIhg0bcHV1Zd68eRw9epScnBzS0tIICwtj9erVeHt7l6sTYMmSJcTHx7N69epybSckJDB16lQKCgowmUyMGzeO1157Db1ez9y5c9m6dSs6nY6wsDDefPNN3N3r95mIGF5oJrh6/BNFrCDPvPzXyWju9TpcecgmsA+SJHHw4EF++eUXHnvsMZKTk8sd1+l0jB8/nldeeYUjR47w9ttvc+edd1JQUMDp06d58MEH+fzzzzl8+DD79++nU6dOlnNLS0u59957KSgo4LvvvqsguGW4urqyd+9eVq5cyf3330+bNm2Ij49nwYIFPPvss1XartFo+O233/j55595/PHHMRgM1/U1JyeHxYsX89dff3Ho0CF27dqFn59ftddo//79vP766xw/fpyOHTsyZswYli5dyokTJ3BwcODTTz+1lN2xYwdr1661CPKcOXOqrf9qlixZwujRozl8+DBHjx5l9uzZALz55pu4uLiwb98+Dh06RPfu3XnttddqVLc1iJ5uM8FB40iRrMFZKqUgLxsPbz+c5CIAHN1aXoQxJ7WS46+OrHM9JpOJfG0+bu5uVQ4vVMe0adMA6NChA0OHDmX79u2EhIRYjp86dQqFQsHIkWZ7Bw8ejJ+fH4cOHeLw4cPccsstFqFVq9V4ePwzRn/bbbcxbtw45s6de10bJkyYAJh7pIWFhUycOBGAfv36kZCQUOV59913HwCdOnVCpVKRkZFBQEBAleXd3d0JCwvj/vvvJyYmhttuu+265csYOHAgQUFBFhv1er1FrKOiosrZeNttt+Hv7w/A9OnTGT9+fLX1X83QoUN59tlnKSgo4IYbbmD48OEAfP/99+Tl5bF+/XrA/M+wXbt2NarbGkRPtxlRcCWmbnG+uadbFkvXyc3TXibZDUmScHZQ1cvLyUFZ5bHajOdac4619Q4bNoy4uDi0Wu11yzk6OgJY5pVevX293mtZuWvLqlSqcktjS0pKLGX27NnDk08+SWZmJgMGDLBqnPjadqpqtzLKrlVVNl3LnXfeyc6dO4mIiLD0esE8TPPBBx9w6NAhDh06xN9//823335bre01RYhuM6KoLKau9jKlJUVoJHP8ARHA3L6sWrUKgOTkZHbs2FFhhkBERAQmk4m4uDgAdu3aRUZGBpGRkYwcOZJff/2VkydPAuYFIHl5/6w6fOGFFxg/fjzDhw/n8uXLNvIIQkND2bt3LwD79u3j1KlTAOTn53Px4kWGDBnC3LlzGTx4MAcPHqzXtjdt2sTFixcBWLFihaWnGhoaSnx8PEajkaKiIkuP9VoSEhLw8/PjgQce4I033mDPnj0A3H777bzzzjsUFZnvEIuKijhx4kS92g5ieKFZUaJ0BRPoi3Ipys9Dc2W/i2vLWhzR2DAajfTq1YvCwkLef//9ckMLAA4ODmzYsIHHH3+cp59+GkdHR9atW4erqyuhoaGsWrWK+++/37ICaunSpfTr189y/pNPPomLiwvDhg3j119/tdx6NySvvfYaU6ZMYdmyZQwcOJCuXbsCkJeXx1133UVhYSGSJBEWFsaUKVPqte0hQ4Zw3333ceHCBcuDNIDx48fz7bff0rlzZwICAujVq5dFQK9m3bp1rFmzBgcHB0wmE0uXLgXgueeeo7S0lP79+1t6z7NmzSr30LI+kOT6igzSRNBqtXh4eJCXl2f1U0m9Xs+mTZsYNWoUarW6gS2sPYdfH0HP4n3s6/kfAiJjaPtpf4plB5zmZ9W6zqbiO5hvJ5OSkmjfvn2529O6YDKZ0Gq1uLu7t7hlsND4/L92hkJDUpXvVX3PrNUW+19FQb2hvxLI3FSUS0mh+Ra0SKqfGAQCgaB+EMMLzQjjlcA2cokW3RXRLRaiK2hGzJs3z94m1BnR021GlAW2kUq16IrMT7NLFSJrhEDQmBCi25xwNIuuUqdFX2xejSZEVyBoXAjRbUYonMyT5lX6fEwl5p6uXiVEVyBoTNSr6JpMJh577DE6duxIaGgoS5YsqbJsQkIC0dHRhIeHExUVxbFjx6w6VsaqVauQJInvv/++Pl1o0iiviK7aUICxxNzTNahc7GmSQCC4hnoV3TVr1nD8+HFOnz7Nvn37ePPNNysVTIAZM2Ywffp0Tp8+zXPPPcfUqVOtOgbmSeYff/wxAwYMqE/zmzxlgW00hgLkUrPoGoXo2pXGEtrx7rvvZvfu3bVuq6YsWbLE8rs9cuQIt956a73U+/LLL/PFF1/US132ol5F9+uvvyY2NhalUomXlxcTJkzgyy+/rFAuMzOT+Ph47r//fsC8LC81NZXExMTrHgNzb3ratGl88MEHlihGAjOaK4FtnEwFoDMHuzE5tJyklILK2bdvH9nZ2QwcONAu7ffo0QONRsPWrVvrXNerr75aaZS2pkS9im5KSkq5EG4hISGkpKRUKJeamkqbNm1Qqcwz1iRJIigoiJSUlOseA3j77bcZNGgQffr0scqm0tJStFptuReYJ/3X5FWbc2z9UjmZp4y5yIVIZaKrcqlzvU3B97KXLMuYTKZ6e5WtHaptvWCOXtWrVy/Cw8P5/PPPyx0re79v3z6io6Pp0aMH/fr1Y8eOHZZjP/74I1FRUfTs2ZPIyEh2795d7nyj0ci///1vxowZYwlXePVr6dKlTJw40bJ94cIFYmJi6NKlC8OHD2fChAm88sormEwmXnnlFZ544glL2SVLlvDII48gyzKHDx9m8ODB9O7dmy5duvCf//zHUi4vL4977rmHiIgIBg8ezJEjR8pdswkTJrB06dJKr9Err7zC3XffzejRowkPD+e2227jyJEjxMTEEB4ezsSJEzEYDJhMJqZMmcI777xjOe+ee+5h9OjRdOnShWHDhnHp0iVMJhOffPIJ48aNs7SxceNGbrzxRkwmE6dOnWLQoEH07NmT7t278+KLL9b4s5dlucrfSnXUaJ7uwIEDq4xIVN/rqyvj77//Zv369Wzfvt3qcxYuXMj8+fMr7N+8eXOVYfCqomxtfGOltOAyoYCLXERpnnkVWmZeIZs2bapz3Y3ddzAHPPH396egoACdTlevdefn51dfqAp0Oh2///47ycnJ3HTTTfTs2dMSUSs/Px+DwcD48eN57733uPnmm9m9ezd33XUXBw4cICMjg4ceeoiff/6Z8PBw9Ho9RUVFls7DpUuXmDZtGl5eXqxevRqDwVAh+M3vv//OtGnTLPsfffRRevbsyTfffENaWhpDhw6lffv2aLVaSktL0el0lrJlQWPy8/Px8vJi/fr1aDQaiouLGTlyJAMGDCAqKoq5c+eiUCjYs2cPWq2WmJgY+vTpY6mnW7duzJo1q9LAPKWlpezfv59t27bh4eHB6NGjefjhh9mwYQNOTk7cdNNNrF+/npEjR6LX6ykpKbHYumfPHrZt24aXlxcPPfQQ77//PrNnz6akpKTctSgqKrJsv/POO9x8882WkI45OTnXDRh07Wev0+koLi5m+/bt5QLxVLbkuDJqJLrVjQkFBQVx7tw5y21McnKy5ct1NYGBgaSnp2MwGFCpVMiyTEpKCkFBQbi7u1d5LC4ujuTkZMLCwgDIyMhg+vTppKen869//atSm+bMmWO5uGBeqhcYGEhMTEyNlgHHxcUxYsSIRr0UtiA/FxKewkEy0kpZAgbwC+xI31Gjal1nU/EdzAKRmpqKq6trvS0DlmWZ/Px83Nzcap0h4pFHHsHd3Z0ePXowdOhQ/vrrL7p16waAm5sbqampqFQq7rjjDgBGjhyJv78/Z8+e5ciRI9xyyy307dvXUp+39z8BjO677z7Gjh3LSy+9VGX7aWlpdOzY0fJ93759O++88w7u7u64u7szduxYNBoN7u7uaDQaHBwcLGXLrqObmxslJSU8/fTTHD58GIVCwfnz50lISODmm29m586dvPXWW3h4eODh4cGkSZM4c+aMpZ6wsDCys7NxcHCo8NloNBpGjhxp0YqoqCg0Go0lrGKfPn1IS0vD3d0dtVqNo6OjxdZbb73VEsti6NChHD16FHd3dxwdHVGpVJb2nZ2dLds333wzzz33HAaDgaFDhzJ8+PBKlzhX9dmXlJTg5OTE0KFDKywDtoZ6XZF299138/HHH3P33XeTl5fH119/zU8//VShXOvWrenduzdr1qxh6tSprF+/noCAAEJDQwGqPBYaGlpOXG+88UaefPLJ6+Y+0mg0lY79qtXqGotIbc6xJZ6e3hhlCaUk467PBEDt7FEvNjd238EcWEaSJBQKRb3FCSi7jS+rtzZcbY8kSSiVSsv21ceurr+sPUmSrtv2sGHD2LJlC08++WSVnQhnZ2d0Ol25Oq5tt6wNtVqNyWSyHCstLbXY89JLL+Hr68vBgwdRqVSMHz++XL1V1Qnm3mFZyMZrfZEkCScnJ8t+lUpVYdtoNFa4HpWdV1auLJjN1e2X2XX33XczePBg4uLi+Oijj3j//fcrvRus6rMva/va34S1v496HdOdPHkynTp1IiwsjKioKGbPnk337t0B2LhxoyWYM8CyZctYtmwZ4eHhLFq0yBL+rrpjgqqRFAoKJfOQiY/xEgAqJxFhzN7YO7Rjjx49LKEXAYYPH84nn3wCQHp6Ohs3brQcuzY84oYNGyzHcnJyCAgIQKVScerUqXJDTsOHD2fVqlXIsoxWq63wAP3EiRN069bNZkFzQkNDOXLkCMXFxRgMBtauXWs5VlVoR1tRrz1dpVLJhx9+WOmxsWPHMnbsWMt2RERElcMV1zt2Ndu2bauVnc2ZAskFd7kQV6kYALUQXbtj79COd911F7/++qsl7ux7773H1KlT6dKlC+3atWPYsGGWsteGR4yMjLSI/EsvvcTkyZP59NNP6dixY7nz5s6dy7Rp0+jUqRO+vr4MHjzY0ksG+OWXX7jrrrvq7ZpWx4ABAxg1ahTdunWjTZs2DBo0yBL/t6rQjrZChHa0gqYU3vDMfyLpaEyybCfc/hNhkbVPq92UfBehHSunoKCA6Ohodu/ejYtLxXnbzzzzjCXp47XUh/86nY6+ffuydetWfHx8alWHPWio0I4iylgzo1TpCldlHnd0aaE9XVkGvXVPk6+LyWSuR6eEykRH7QyNPAW7q6sr77zzDklJSZYHeLYkKSmJRYsWNSnBbUiE6DYzdCpXuGq2lFNLzQSsL4IFbetcjQLwvF6BF9LAofGv+rv55purPLZ48eIGbTsiIoKIiIgGbaMp0TTvlwRVole7ldt2cvOooqRAILAHoqfbzDBdJbomWcK5pQ4vqJ3NvdA6YjKZ0Obn4+5WeQp21NYvsFm6dCn5+fk8++yzdbbLGlavXs33338vgkI1MoToNjNMmn9EtghHXJvow586I0n1c9tvMoHaaK6rjtdy5syZdbdH0ORpob/I5ovkeJXoilQ9jYp58+bx5JNPAuZe6PDhw7n33nvp0qUL0dHRHD9+nDvuuIPOnTsTExNDQUGB5bw777yTYcOG0alTJ8aMGWOZk3t1nVA+utfVJCQklIs3ULaCTa/X8/zzz9OvXz8iIyO55557yMnJadDr0NIRotvMUDh5Wt6XKIToNmb279/P66+/zvHjx+nYsSNjxoxh6dKlnDhxAgcHBz799FNL2R07drB27VpOnjxJYGAgc+bMqVFbS5YsYfTo0Rw+fJijR49alsa/+eabuLi4sG/fPg4dOlROkAUNgxheaGYonf95cFascLtOSYG9GThwoCXeQN++fdHr9fj5+QHm+ANXB5e67bbbLIsepk+fzvjx42vU1tChQ3n22WcpKCjghhtusCyU+P7778nLy2P9+vWAeU7ttYs3BPWLEN1mhtrZ0/K+yMHLfoYIquXqifVlcQmu3r46gtW1lAVgKYs3UEZZVLBrufPOO4mOjiYuLo4lS5bw7rvvsmnTJmRZ5oMPPiAmJqau7gisRAwvNDM0rq0s7/WaVtcpKWhKbNq0iYsXLwKwYsUKS0/12lgJZT3Wa6kq3sDtt9/OO++8YwlLWFRUVGW2F0H9IHq6zQxHt396t0Yn7+uUFDQlhgwZwn333ceFCxcICwtj9erVQMVYCb169ao0rmtV8Qaee+45SktL6d+/v6X3/Nxzz9G1a1eb+dbSELEXrKApxR+4lHYOn+U9ANgT+hQD7p9Xp/qaku/NNfbCvHnzyM3N5d1337V5243Bf3vRULEXWtZVbAG4ePzT05UcRPp1gaCxIYYXmhmOTv8sCJCUjbtnKrCOyqJ/CZouoqfbzJCuug1y8gm+TkmBQGAPRE+3GXKg39voLhxlwJDb7W2KXWhhjykENqau3y8hus2QPqMetrcJdkGtViNJEllZWfj6+tY6keTVmEwmdDodJSUlLe5BErRs/yvzXZZlsrKyLDnSaoMQXUGzQalUEhAQwPnz50lOTq6XOmVZpri4GCcnp3oR8aZGS/a/Kt8lSSIgIAClUlmreoXoCpoVrq6uhIWFodfr66U+vV7P9u3bGTp0aKOfMtcQtGT/q/JdrVbXWnBBiK6gGaJUKuv0o7i2LoPBgKOjY4sTHWjZ/jeU7y1rkEYgEAjsTIvr6ZY9edRqtVafo9frKSoqQqvVtrj/9i3ZdxD+t2T/a+p7maZUN7uhxYlufn4+AIGBgXa2RCAQNEfy8/Px8Kg6N2GLi71gMplIS0vDzc3N6qex/9/O/bQ2sYZRAD+xhYCluhDU5l+DTbIoISONkWiRICHizn4Cg5ss3brMouDKCuIHCHbZYuLGdiE1qJvSChVREFowZJBEQQO6iBjNuQvp0N7FVO9tJiRzfqt23g48z/uU0zBvma9fvyIYDMI0zT9+X8OwcHPvgPp3c/9/2ztJfPv2DT6fz/bf61z3SffIkSMIBAL/6d5jx4657hdvl5t7B9S/m/v/m97tPuHu0kGaiIiDFLoiIg5S6P4Br9eLYrEIr9fb71Ic5+beAfXv5v571bvrDtJERPpJn3RFRByk0BURcZBCV0TEQQpdEREHKXQPsL29jYsXLyIWiyGVSuHt27f9LulQ3bx5E+FwGB6PB69evbKu2/U9LHvy/ft3zM3NIRaLwTAM5HI57OzsAAA+ffqEq1evIhqNIh6P4/nz59Z9dmuD5sqVK0gkEjh79iwuXbqEra0tAO6Y/65SqQSPx4NHjx4BcGD2FFuXL19mqVQiSS4vL/PcuXP9LeiQPXv2jKZpcnJykltbW9Z1u76HZU/a7TYfP37MbrdLkrx//z4zmQxJ8saNGywWiyTJjY0N+v1+/vjx48C1QdNqtayvy+UyE4kESXfMnyTfv3/PCxcuMJ1Os1KpkOz97BW6Nj5+/Mjx8XF2Oh2SZLfb5alTp7i9vd3nyg7f3tC163uY92Rzc5OTk5MkybGxMTYaDWstlUrxyZMnB64NslKpRMMwXDP/X79+MZvN8uXLl8xkMlbo9nr2rnv3wt8wTRMTExMYHf29TR6PB6FQCPV6HZFIpM/V9Y5d38ePHx/aPbl37x6uXbuGz58/o9Pp4PTp09ZaOBxGvV63XRtU169fR7VaBQCsrKy4Zv53797F7Owsksmkdc2J2St0RQDcvn0bOzs7WFtbQ7vd7nc5jlpcXAQAPHjwALdu3cL8/HyfK+q9N2/e4OHDh315Hq+DNBvBYBCNRgM/f/4E8PvVbfV6HaFQqM+V9ZZd38O4J3fu3EG5XMbq6iqOHj2KEydOYHR0FM1m0/qZWq2GUChkuzbo8vk8qtUqAoHA0M//xYsXqNVqiEajCIfDWF9fR6FQwNLSUu9n/78eirhAJpPZd2iQTCb7W1CP/Psgza7vYdqThYUFzszM8MuXL/uu5/P5fQcmPp/POjCxWxskrVaLHz58sL6vVCr0+/3sdruumf+uvc90ez17he4B3r17x3Q6zWg0ymQyydevX/e7pENVKBTo9/s5MjLCkydPcmpqiqR938OyJ6ZpEgDPnDlDwzBoGAbPnz9Pkmw2m8zlcoxEIpyenubTp0+t++zWBkmtVmMqlWI8HmcikWA2m7X+8Lph/nvtDd1ez14vvBERcZCe6YqIOEihKyLiIIWuiIiDFLoiIg5S6IqIOEihKyLiIIWuiIiDFLoiIg5S6IqIOEihKyLioH8Av9M1fBvZbQkAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "A = 5.0\n", "a = 50.0\n", "b = 2.0\n", "p = [A, a, b]\n", "\n", "hantush_s = ps.Hantush(use_block=True)\n", "hantush_sq = ps.Hantush(use_block=True, quad=True)\n", "hantush_i = ps.Hantush(use_block=False)\n", "\n", "block_s = hantush_s.block(p)\n", "block_sq = hantush_sq.block(p)\n", "block_i = hantush_i.block(p)\n", "\n", "f, ax = plt.subplots(2, 1, sharex=True, figsize=(3.6, 4.8))\n", "ax[0].set_title(\"Hantush response function\")\n", "ax[0].plot([], [], label=f\"{A=} {a=}, {b=}\", color=\"w\")\n", "ax[0].plot(block_s, label=\"block response\")\n", "ax[0].plot(block_sq, label=\"block (quad) response\", linestyle=\"-\", alpha=0.5)\n", "ax[0].plot(\n", " block_i,\n", " label=\"impulse response at\\nmiddle of time interval\",\n", " linestyle=\"-\",\n", " alpha=0.5,\n", ")\n", "ax[0].legend()\n", "ax[1].plot(block_s - block_i, label=\"block minus impulse\", linestyle=\"-\")\n", "ax[1].plot(\n", " block_sq - block_i,\n", " label=\"block (quad) minus\\n impulse\",\n", " linestyle=\"-\",\n", ")\n", "\n", "ax[1].legend()\n", "ax[1].grid(True)" ] }, { "cell_type": "markdown", "id": "18c07dd4", "metadata": {}, "source": [ "### FourParam\n", "\n", "The step response, and thus the block response of the FourParam function, is very slow. Therefore using the impulse response function for computing the block response might give a faster result." ] }, { "cell_type": "code", "execution_count": 33, "id": "012b161c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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4uJiBAcHt3idNR07dgzFxcUICwtDSEgIfv75Z8yePRtfffWVXcUBAMHBwRAIBJg6dSoAYMCAAejRowcuXbrU5Oepuc9aW34O8/LycOXKFQwbNgwAEBsbi8DAQPz+++92975otfRaW/09skCziF0aPny4XmN2TExM2xbIgLfffptFR0ez27dv6y2fPn263g2Grl278jcYWrqutei2ydpjHImJiWzfvn2MMcb++usv5uvry8rKypr9PLV0nTVdvXqVeXp6snPnzjHGGMvPz2cdOnRgly5dsqv3peGNL2u8D+a+R06bZP/88082aNAgFhYWxmJiYtjvv//e1kXSU1paygCwnj17sv79+7P+/fuzuLg4xpj6DyQxMZGFhoay3r17sx9++IHfr6XrWotukrXHOAoLC9mIESNY3759Wb9+/djOnTsZY81/nlq6ztq2bt3Kx9G3b1/2xRdfMMbs432ZPXs269atGxMKhaxTp06sV69ejDHrvA/mvkc0QAwhhFiRU7bJEkJIa6EkSwghVkRJlhBCrIiSLCGEWBElWUIIsSJKsoQQYkWUZAkhxIooyRJCiBVRkiWEECuiJEsIIVb0/z0h3somvWxJAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "A = 5.0\n", "n = 1.5\n", "a = 50.0\n", "b = 10.0\n", "p = [A, n, a, b]\n", "\n", "fourparam_s = ps.FourParam(use_block=True, quad=True)\n", "fourparam_i = ps.FourParam(use_block=False)\n", "\n", "block_s = fourparam_s.block(p)\n", "block_i = fourparam_i.block(p)\n", "\n", "f, ax = plt.subplots(2, 1, sharex=True, figsize=(3.6, 4.8))\n", "ax[0].set_title(\"FourParam response function\")\n", "ax[0].plot([], [], label=f\"{A=} {n=}, {a=}, {b=}\", color=\"w\")\n", "ax[0].plot(block_s, label=\"block response\")\n", "ax[0].plot(\n", " block_i,\n", " label=\"impulse response at\\nmiddle of time interval\",\n", " linestyle=\"-\",\n", " alpha=0.5,\n", ")\n", "ax[0].legend()\n", "ax[1].plot(block_s - block_i, label=\"block minus impulse\", linestyle=\"-\")\n", "ax[1].legend()" ] }, { "cell_type": "markdown", "id": "a73219fd-5509-4b36-8392-4f5637223ed2", "metadata": {}, "source": [ "### Compare all\n", "These should give virtually the same results. \n", "Impulse response functions are plotted with black dots." ] }, { "cell_type": "code", "execution_count": 34, "id": "4132df77-5ed2-4dd5-bc9d-e5221cd2fd00", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.0, 100.0)" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Default Settings\n", "responses = [\n", " ps.Exponential(),\n", " ps.Gamma(),\n", " ps.Hantush(),\n", " ps.Polder(),\n", " ps.FourParam(),\n", " ps.DoubleExponential(),\n", "]\n", "\n", "\n", "fig, [ax1, ax2] = plt.subplots(\n", " 2, 1, sharex=True, figsize=(6, 5), layout=\"tight\", height_ratios=[2, 1]\n", ")\n", "\n", "for response in responses:\n", " name = response._name\n", " p = response.get_init_parameters(name)\n", " if name == \"Gamma\":\n", " p.loc[f\"{name}_n\", \"initial\"] = 1.5\n", " elif name == \"DoubleExponential\":\n", " p.loc[f\"{name}_a2\", \"initial\"] = 20\n", " # plot block\n", " r1 = response.block(p.initial.values)\n", " ax1.plot(r1, label=name)\n", " # plot impulse\n", " response.use_block = False\n", " r2 = response.block(p.initial.values)\n", " ax1.plot(r2, color=\"k\", ls=\":\")\n", " ax2.plot(r1 - r2, label=name)\n", "\n", "ax1.set_title(\"Block response vs impulse response\")\n", "ax2.set_title(\"Difference\")\n", "ax2.set_xlabel(\"Time [days]\")\n", "ax1.legend(ncol=2)\n", "ax2.set_xlim(0, 100)" ] } ], "metadata": { "kernelspec": { "display_name": "pastas (3.13.5)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.5" } }, "nbformat": 4, "nbformat_minor": 5 }