{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "5493d164-99c0-4eae-a8fc-9e83835962d0", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [ "remove-cell" ] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Exception reporting mode: Minimal\n" ] } ], "source": [ "%load_ext jbmagics" ] }, { "cell_type": "markdown", "id": "e19417aa-b747-4df0-8770-79602ae65395", "metadata": {}, "source": [ "# Using `modflowapi`\n", "\n", "Let's modify the river conductance at model run time.\n", "We use [`modflowapi`](https://github.com/MODFLOW-USGS/modflowapi)." ] }, { "cell_type": "code", "execution_count": 2, "id": "cbcb4210-fc63-4f6b-ac4d-d1cb757fa42b", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "\n", "import modflowapi\n", "\n", "import pymf6\n", "from pymf6tools.custom_print import CustomPrint\n", "\n", "from helpers import make_model_input, get_flux, plot" ] }, { "cell_type": "markdown", "id": "1f0f3ff3-6526-4511-a907-5d33aaaf886c", "metadata": {}, "source": [ "An instance of this class is a callable that `modflowapi` will cal for each\n", "modeling time step:" ] }, { "cell_type": "code", "execution_count": 3, "id": "722132b2-9900-4ed2-84f6-f51a594e0910", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [ "remove-input" ] }, "outputs": [ { "data": { "text/markdown": [ "```python\n", "\"\"\"\n", "Dynamic river conductance with `modflowapi`.\n", "\n", "Based on:\n", "https://github.com/jdhughes-usgs/modflow-dsd24/blob/main/notebooks/5_MODFLOW_API/modflow_api.ipynb\n", "\"\"\"\n", "\n", "from modflowapi import Callbacks\n", "\n", "class DynamicCond:\n", " \"\"\"\n", " Dynamic conductance.\n", "\n", " An example class that sets the river conductance based\n", " on the gradient between the river cell and the head\n", " in the groundwater cell. A reduced river conductance\n", " value is used when the flow is from the river cell to\n", " the aquifer. This class could be adapted to modify other\n", " stress packages or monitor other simulated stress\n", " packages fluxes by modifying this callback class.\n", "\n", " Parameters\n", " ----------\n", " vmin : float\n", " minimum head value for color scaling on the plot\n", " vmax : float\n", " maximum head value for color scaling on the plot\n", " ntimes : int\n", " number of time steps\n", " h_mean : float\n", " mean water level during the simulation\n", " \"\"\"\n", "\n", " def __init__(self, name, h_mean):\n", " self.name = name\n", " self.h_mean = h_mean\n", " self.condref = None\n", " # flux in river cell\n", " self.flux_river = [0.0]\n", " # flux in cell below river\n", " self.flux_gw = [0.0]\n", " # \"pointers\" to MF6 variables\n", " self.sim_river = None\n", " self.sim_chd = None\n", " self.model = None\n", "\n", " def __call__(self, sim, callback_step):\n", " \"\"\"\n", " Callable that is called for each time step.\n", "\n", " A demonstration function that dynamically adjusts the CHD\n", " boundary conditions each stress period in a MODFLOW 6 model\n", " through the MODFLOW-API and then updates heads on a matplotlib\n", " plot for each timestep.\n", "\n", " Parameters\n", " ----------\n", " sim : modflowapi.Simulation\n", " A simulation object for the solution group that is\n", " currently being solved\n", " callback_step : enumeration\n", " modflowapi.Callbacks enumeration object that indicates\n", " the part of the solution modflow is currently in.\n", " \"\"\"\n", " if callback_step == Callbacks.initialize:\n", " ml = sim.get_model()\n", " river_tag = ml.mf6.get_var_address(\"SIMVALS\", self.name.upper(), \"RIVER\")\n", " self.sim_river = ml.mf6.get_value_ptr(river_tag)\n", " chd_tag = ml.mf6.get_var_address(\"SIMVALS\", self.name.upper(), \"CHD_0\")\n", " self.sim_chd = ml.mf6.get_value_ptr(chd_tag)\n", " self.model = getattr(sim, self.name)\n", "\n", "\n", " if callback_step == Callbacks.iteration_start:\n", " spd = self.model.river.stress_period_data.values\n", " if self.condref is None:\n", " self.condref = spd[0][2]\n", " if self.model.X[0, 0, 0] > self.h_mean:\n", " cond = self.condref\n", " else:\n", " cond = self.condref * 0.10\n", " spd[0] = ((0, 0, 0), self.h_mean, cond, 319.0)\n", " self.model.river.stress_period_data.values = spd\n", "\n", " if callback_step == Callbacks.timestep_end:\n", " ml = sim.get_model()\n", " self.flux_river.append(float(self.sim_river.sum()))\n", " self.flux_gw.append(float(self.sim_chd[0]))\n", "\n", " if callback_step == Callbacks.finalize:\n", " pass\n", " # cleanup would be here\n", "```\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%%include dynamic_cond_api.py\n", "import_module = True" ] }, { "cell_type": "markdown", "id": "51ff7131-fa5a-4d1e-882c-c8f10353655d", "metadata": {}, "source": [ "We use this class to interact wit MF6.\n", "We need the path to shared library:" ] }, { "cell_type": "code", "execution_count": 4, "id": "ae1f3cfb-76ff-4d0a-b615-5b8535f56915", "metadata": {}, "outputs": [], "source": [ "libmf6 = pymf6.info['dll_path']\n", "name = 'rivercond'" ] }, { "cell_type": "markdown", "id": "f182f3d4-2458-47d7-bcde-5d74b128c354", "metadata": {}, "source": [ "These a the arguments for the class instance:" ] }, { "cell_type": "markdown", "id": "9655cb99-0395-4c28-9c9f-7532a14abf0b", "metadata": {}, "source": [ "This instance:" ] }, { "cell_type": "code", "execution_count": 5, "id": "683e0017-0328-4635-99ac-906d08a9ed6f", "metadata": {}, "outputs": [], "source": [ "dyn_cond = DynamicCond(name=name, h_mean=320.0)" ] }, { "cell_type": "markdown", "id": "3f45097b-3003-482b-ab30-a622dcee8bd8", "metadata": {}, "source": [ "can be used inside the MF6 run:" ] }, { "cell_type": "code", "execution_count": 6, "id": "a96ee3d8-b2ea-4277-89a2-d16ddcd1cfde", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "NORMAL TERMINATION OF SIMULATION\n" ] } ], "source": [ "modflowapi.run_simulation(dll=libmf6, sim_path=name, callback=dyn_cond)" ] }, { "cell_type": "markdown", "id": "5ed8baa6-789a-429f-badb-3c72e478b15f", "metadata": {}, "source": [ "The fluxes are now cut off for the time when the stream is losing:" ] }, { "cell_type": "code", "execution_count": 7, "id": "fb856d99-cafd-4686-8c53-3cf2e4565893", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAc0AAAH/CAYAAAA194a7AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjEsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvc2/+5QAAAAlwSFlzAAAPYQAAD2EBqD+naQAAXeFJREFUeJzt3XlcTfnjP/DXbVfpMoqyZt+SJSTLiKGokDVb2cZMjBk0tgZjGTNhPsPYGQ2NZcggoqRmyNiNlK3EEFlKisrWos7vD1/3N1fF0a3OvbfX8/G4j8d07lle9zC9nPc9i0wQBAFERET0XjpSByAiItIULE0iIiKRWJpEREQisTSJiIhEYmkSERGJxNIkIiISiaVJREQkEkuTiIhIJJYmERGRSCxNKvcCAgIgk8kKfU2bNk0xn7W1NUaPHl3m+ebPnw+ZTFYm27p9+zZkMhkCAgLKZHtScHR0hKOjo9I0mUyG+fPnS5KHNIue1AGI1MXmzZvRpEkTpWnVq1eXKM3/9+mnn6JXr15lsi0rKyucPn0a9evXL5PtEWkalibR/7GxsUHbtm2ljlFAzZo1UbNmzVLdRl5eHl69egVDQ0N06NChVLdVmJcvX8LIyKjMjqiJiovDs0TF9GZY9/bt20rTIyMjIZPJEBkZCQC4ceMGzMzMMHjwYKX5jhw5Al1dXcydO/ed2ylseNba2hpubm4ICwtDmzZtUKFCBTRp0gSbNm16b+43Q7BLly7FokWLULduXRgaGuLo0aMFhmf37dsHmUyGv/76q8B61q1bB5lMhkuXLimmnT9/Hn379sVHH30EIyMjtG7dGrt27VJa7s1+Cw8Px9ixY2FhYQFjY2NkZ2cXmTk9PR1ff/016tWrB0NDQ1StWhUuLi64du2aYp6cnBwsWrQITZo0gaGhISwsLDBmzBg8evTovfuESCyWJtH/eXO09d9XSWjYsCE2btyI3bt3Y+XKlQCA5ORkDB8+HF26dCn2d2kXL17E119/jalTp2L//v2wtbXFuHHj8Pfff4tafuXKlThy5Aj+97//4dChQwWGpgHAzc0NVatWxebNmwu8FxAQgDZt2sDW1hYAcPToUXTq1Anp6elYv3499u/fj1atWsHDw6PQ70jHjh0LfX19bN26Fbt374a+vn6hOZ8+fYrOnTtjw4YNGDNmDA4cOID169ejUaNGSEpKAgDk5+ejX79+WLx4MYYPH46QkBAsXrwYERERcHR0xMuXL0XtE6L34fAs0f8pbFgyNzcXenqq/2/i4eGBY8eOYfr06Wjfvj1mz54NQRCwY8cO6OrqFmudqampOHnyJGrXrg0A+Pjjj/HXX3/h999/x8cff/ze5Y2MjHD48GGlsnr7qFlPTw8jR47EunXrkJGRAblcDgCIi4vDuXPnsGrVKsW8EydORPPmzXHkyBHFPnN2dkZqaiq++eYbeHl5QUfn//87/ZNPPsGGDRvem/Pnn3/G1atXERERgR49eiimDxgwQPHfu3btQlhYGPbs2aM0vWXLlmjXrh0CAgIwYcKE926L6H14pEn0f7Zs2YJ//vlH6VUShfnG8uXL0bx5c3Tr1g2RkZHYtm0brKysir2+Vq1aKQoTeF2CjRo1wp07d0Qt37dv3yKP7v5r7NixePnyJQIDAxXTNm/eDENDQwwfPhwA8O+//+LatWsYMWIEACgdrbu4uCApKQnx8fFK6x04cKConIcOHUKjRo2UCvNtBw8eRKVKldCnTx+lbbdq1QqWlpaKoXIiVbE0if5P06ZN0bZtW6VXSXpTMllZWWjVqhV69uyp0vqqVKlS6DbEDkWKLezmzZujXbt2iiHavLw8bNu2Df369cNHH30EAHj48CEAYNq0adDX11d6TZw4EcDrI+PibP/Ro0fvPRHq4cOHSE9Ph4GBQYHtJycnF9g2UXFxeJaomIyMjACgwAksRf2CvnLlCr799lu0a9cO//zzD5YtWwYfH59Sz1mUDzlTdcyYMZg4cSLi4uJw69YtJCUlYcyYMYr3zc3NAQC+vr5Kw6P/1bhx42Jt38LCAvfu3XvnPObm5qhSpQrCwsIKfb9ixYqitkX0PixNomKytrYGAFy6dEmpEIKDgwvM+/z5cwwePBjW1tY4evQoZs2ahVmzZqFTp06wt7cvq8jFNmzYMPj4+CAgIAC3bt1CjRo14OTkpHi/cePGaNiwIS5evIgffvihRLfdu3dvfPvttzhy5Ai6d+9e6Dxubm7YuXMn8vLyNGJ/kuZiaRIVU7t27dC4cWNMmzYNr169QuXKlREUFIQTJ04UmNfb2xuJiYk4d+4cTExM8NNPP+H06dMYOnQooqOjUalSpbL/AB+gUqVK6N+/PwICApCeno5p06YpndQDABs2bEDv3r3h7OyM0aNHo0aNGnj8+DHi4uJw4cIF/PHHH8Xa9pQpUxAYGIh+/fph1qxZaN++PV6+fIljx47Bzc0N3bp1w9ChQ7F9+3a4uLhg8uTJaN++PfT19XHv3j0cPXoU/fr1Q//+/UtiV1A5x+80iYpJV1cXBw4cQJMmTeDt7Q0vLy8YGhpi9erVSvP5+/tj27ZtWLNmDZo3bw4AMDAwQGBgIB4/fqw0zKnOxowZg5SUFOTk5BR6O8Fu3brh3LlzqFSpEqZMmYIePXpgwoQJ+PPPP995Es/7VKxYESdOnMC4cePwyy+/wNXVFePHj0d8fLzijk26uroIDg7GN998g71796J///5wd3fH4sWLYWRkhBYtWhR7+0T/JRMEQZA6BBERkSbgkSYREZFILE0iIiKRWJpEREQiaVVprl27FnXr1oWRkRHs7Oxw/Pjxd86fnZ2N2bNno06dOjA0NET9+vVF3fCaiIjKJ6255CQwMBBTpkzB2rVr0alTJ8Xp77GxsUq3GvuvIUOG4OHDh/j111/RoEEDpKSklNhNuomISPtozdmz9vb2aNOmDdatW6eY1rRpU7i7u8PPz6/A/GFhYRg6dChu3bqluBUYERHRu2jFkWZOTg6ioqIwa9YspelOTk44depUocsEBwejbdu2WLp0KbZu3QoTExP07dsX3333HSpUqFDoMtnZ2Uq3TMvPz8fjx49RpUoVPjyXiEgNCIKAp0+fonr16gVuwFEStKI0U1NTkZeXh2rVqilNr1atGpKTkwtd5tatWzhx4gSMjIwQFBSE1NRUTJw4EY8fPy7ye00/Pz8sWLCgxPMTEVHJunv37ntv9F8cWlGab7x9tCcIQpFHgPn5+ZDJZNi+fbviGYHLli3DoEGDsGbNmkKPNn19fZVusJ2RkYHatWvj7t27MDMzK8FPQkRExZGZmYlatWqV2k36taI0zc3NoaurW+CoMiUlpcDR5xtWVlaoUaOGojCB19+BCoKAe/fuoWHDhgWWMTQ0hKGhYYHpZmZmLE0iIjVSWl+ZacUlJwYGBrCzs0NERITS9IiICHTs2LHQZTp16oQHDx7g2bNnimnXr1+Hjo5OqRzSExGR5tOK0gQAHx8f+Pv7Y9OmTYiLi8PUqVORmJgIb29vAK+HVr28vBTzDx8+HFWqVMGYMWMQGxuLv//+G9OnT8fYsWOLPBGIiIjKN60YngUADw8PpKWlYeHChUhKSoKNjQ1CQ0NRp04dAEBSUhISExMV85uamiIiIgJffvkl2rZtiypVqmDIkCFYtGiRVB+BiIjUnNZcpymFzMxMyOVyZGRk8DtNIg0gCAJevXqFvLw8qaOQCvT19aGrq1voe6X9e1lrjjSJiN4lJycHSUlJePHihdRRSEUymQw1a9aEqalpmW+bpUlEWi8/Px8JCQnQ1dVF9erVYWBgwBuSaChBEPDo0SPFVQ5FHXGWFpYmEWm9nJwc5Ofno1atWjA2NpY6DqnIwsICt2/fRm5ubpmXptacPUtE9D6lcVs1KntSjhLwbxAREZFILE0iIiKRWJpERBpOJpNh3759kmz75MmTaNGiBfT19eHu7o7IyEjIZDKkp6dLkqe0sTSJiNTU6NGjIZPJIJPJoKenh9q1a2PChAl48uSJ0nxJSUno3bu3JBl9fHzQqlUrJCQkICAgQJIMZYmlSUSkxnr16oWkpCTcvn0b/v7+OHDgACZOnKg0j6WlZaEPkygpeXl5yM/PL/S9mzdvonv37qhZsyYqVapUahnUBUuTiEiNGRoawtLSEjVr1oSTkxM8PDwQHh6uNM9/h2cdHBwwa9YspfcfPXoEfX19HD16FMDrS3BmzJiBGjVqwMTEBPb29oiMjFTMHxAQgEqVKuHgwYNo1qwZDA0NcefOHaV13r59GzKZDGlpaRg7dixkMlmhR5rz589Hq1atlKb9/PPPsLa2BgBkZWWhefPm+OyzzxTvJyQkQC6XY+PGjR+wp8oGr9MkonLrxYsXuHbtWplus0mTJsW+VvTWrVsICwuDvr5+kfOMGDECP/74I/z8/BSXZgQGBqJatWro2rUrAGDMmDG4ffs2du7cierVqyMoKAi9evXC5cuXFY9FfPHiBfz8/ODv748qVaqgatWqStupVasWkpKS0LhxYyxcuBAeHh6Qy+U4e/bsB30mIyMjbN++Hfb29nBxcUGfPn3g6emJbt26Yfz48R+0rrLA0iSicuvatWuws7Mr021GRUWhTZs2ouc/ePAgTE1NkZeXh6ysLADAsmXLipzfw8MDU6dOxYkTJ9ClSxcAwO+//47hw4dDR0cHN2/exI4dO3Dv3j1Ur14dADBt2jSEhYVh8+bN+OGHHwAAubm5WLt2LVq2bFnodnR1dWFpaQmZTAa5XA5LS0vRn+ltrVq1wqJFizB+/HgMGzYMN2/elOzEpvdhaRJRudWkSRNERUWV+TY/RLdu3bBu3Tq8ePEC/v7+uH79Or788ssi57ewsEDPnj2xfft2dOnSBQkJCTh9+jTWrVsHALhw4QIEQUCjRo2UlsvOzkaVKlUUPxsYGMDW1vaDsqri66+/xv79+7Fq1SocOnQI5ubmZbbtD8HSJKJyy9jY+IOO+qRgYmKCBg0aAABWrlyJbt26YcGCBfjuu++KXGbEiBGYPHkyVq1ahd9//x3NmzdXHDHm5+dDV1cXUVFRBW5B998boFeoUKFE7ryjo6ODtx+mlZubW2C+lJQUxMfHQ1dXFzdu3ECvXr1U3nZp4IlAREQaZN68efjf//6HBw8eFDmPu7s7srKyEBYWht9//x0jR45UvNe6dWvk5eUhJSUFDRo0UHqpMsRaFAsLCyQnJysVZ0xMTIH5xo4dCxsbG2zZsgUzZsxAbGxsiWcpCSxNIiIN4ujoiObNmyu+eyyMiYkJ+vXrh7lz5yIuLg7Dhw9XvNeoUSOMGDECXl5e2Lt3LxISEvDPP/9gyZIlCA0NLZW8jx49wtKlS3Hz5k2sWbMGhw4dUppnzZo1OH36NLZs2YLhw4dj0KBBGDFiBHJycko8j6pYmkREGsbHxwcbN27E3bt3i5xnxIgRuHjxIrp06YLatWsrvbd582Z4eXnh66+/RuPGjdG3b1+cPXsWtWrVKvGsTZs2xdq1a7FmzRq0bNkS586dw7Rp0xTvX7t2DdOnT8fatWsV21+zZg3S09Mxd+7cEs+jKpnw9mAziVbaTwgnopKRlZWFhIQE1K1bF0ZGRlLHIRW968+ztH8v80iTiIhIJJYmERGRSCxNIiIikViaREREIrE0iajc4HmP2kHKP0eWJhFpvTc3OH/x4oXESagkvLl+8+07GpUF3kaPiLSerq4uKlWqhJSUFACvb59XEreIo7KXn5+PR48ewdjYGHp6ZV9hLE0iKhfe3CLuTXGS5tLR0UHt2rUl+YcPS5OIygWZTAYrKytUrVq10BuGk+YwMDCAjo403y6yNImoXNHV1ZXkuzDSDjwRiIiISCSWJhERkUgsTSIiIpFYmkRERCKxNImIiERiaRIREYnE0iQiIhKJpUlERCQSS5OIiEgkliYREZFILE0iIiKRWJpEREQisTSJiIhEYmkSERGJxNIkIiISiaVJREQkEkuTiIhIJJYmERGRSCxNIiIikViaREREIrE0iYiIRGJpEhERicTSJCIiEomlSUREJBJLk4iISCSWJhERkUgsTSIiIpFYmkRERCKxNImIiERiaRIREYnE0iQiIhKJpUlERCSSVpXm2rVrUbduXRgZGcHOzg7Hjx8XtdzJkyehp6eHVq1alW5AIiLSaFpTmoGBgZgyZQpmz56N6OhodOnSBb1790ZiYuI7l8vIyICXlxc++eSTMkpKRESaSiYIgiB1iJJgb2+PNm3aYN26dYppTZs2hbu7O/z8/IpcbujQoWjYsCF0dXWxb98+xMTEiN5mZmYm5HI5MjIyYGZmpkp8IiIqAaX9e1krjjRzcnIQFRUFJycnpelOTk44depUkctt3rwZN2/exLx580RtJzs7G5mZmUovIiIqP7SiNFNTU5GXl4dq1aopTa9WrRqSk5MLXebGjRuYNWsWtm/fDj09PVHb8fPzg1wuV7xq1aqlcnYiItIcWlGab8hkMqWfBUEoMA0A8vLyMHz4cCxYsACNGjUSvX5fX19kZGQoXnfv3lU5MxERaQ5xh1hqztzcHLq6ugWOKlNSUgocfQLA06dPcf78eURHR2PSpEkAgPz8fAiCAD09PYSHh6N79+4FljM0NIShoWHpfAgiIlJ7WnGkaWBgADs7O0RERChNj4iIQMeOHQvMb2ZmhsuXLyMmJkbx8vb2RuPGjRETEwN7e/uyik5ERBpEK440AcDHxweenp5o27YtHBwc8MsvvyAxMRHe3t4AXg+t3r9/H1u2bIGOjg5sbGyUlq9atSqMjIwKTCciInpDa0rTw8MDaWlpWLhwIZKSkmBjY4PQ0FDUqVMHAJCUlPTeazaJiIjeRWuu05QCr9MkIlIvvE6TiIhITbA0iYiIRGJpEhERicTSJCIiEomlSUREJBJLk4iISCSWJhERkUgsTSIiIpFYmkRERCKxNImIiERiaRIREYnE0iQiIhKJpUlERCQSS5OIiEgkliYREZFILE0iIiKRWJpEREQisTSJiIhEYmkSERGJxNIkIiISiaVJREQkEkuTiIhIJJYmERGRSCxNIiIikViaREREIrE0iYiIRGJpEhERicTSJCIiEomlSUREJBJLk4iISCSWJhERkUgsTSIiIpFYmkRERCKxNImIiERiaRIREYnE0iQiIhKJpUlERCQSS5OIiEgkliYREZFILE0iIiKRWJpEREQisTSJiIhEYmkSERGJxNIkIiISiaVJREQkEkuTiIhIJJYmERGRSCxNIiIikViaREREIrE0iYiIRGJpEhERicTSJCIiEomlSUREJBJLk4iISCSWJhERkUgsTSIiIpFYmkRERCKxNImIiERiaRIREYnE0iQiIhKJpUlERCSSVpXm2rVrUbduXRgZGcHOzg7Hjx8vct69e/eiZ8+esLCwgJmZGRwcHHD48OEyTEtERJpGa0ozMDAQU6ZMwezZsxEdHY0uXbqgd+/eSExMLHT+v//+Gz179kRoaCiioqLQrVs39OnTB9HR0WWcnIiINIVMEARB6hAlwd7eHm3atMG6desU05o2bQp3d3f4+fmJWkfz5s3h4eGBb7/9ttD3s7OzkZ2drfg5MzMTtWrVQkZGBszMzFT7AEREpLLMzEzI5fJS+72sFUeaOTk5iIqKgpOTk9J0JycnnDp1StQ68vPz8fTpU3z00UdFzuPn5we5XK541apVS6XcRESkWbSiNFNTU5GXl4dq1aopTa9WrRqSk5NFreOnn37C8+fPMWTIkCLn8fX1RUZGhuJ19+5dlXITEZFm0ZM6QEmSyWRKPwuCUGBaYXbs2IH58+dj//79qFq1apHzGRoawtDQUOWcRESkmbSiNM3NzaGrq1vgqDIlJaXA0efbAgMDMW7cOPzxxx/o0aNHacYkIiINpxXDswYGBrCzs0NERITS9IiICHTs2LHI5Xbs2IHRo0fj999/h6ura2nHJCIiDacVR5oA4OPjA09PT7Rt2xYODg745ZdfkJiYCG9vbwCvv4+8f/8+tmzZAuB1YXp5eWHFihXo0KGD4ii1QoUKkMvlkn0OIiJSX1pTmh4eHkhLS8PChQuRlJQEGxsbhIaGok6dOgCApKQkpWs2N2zYgFevXuGLL77AF198oZg+atQoBAQElHV8IiLSAFpznaYUSvt6ICIi+jC8TpOIiEhNsDSJiIhEYmkSERGJxNIkIiISiaVJREQkEkuTiIhIJJYmERGRSCxNIiIikViaREREIrE0iYiIRGJpEhERicTSJCIiEomlSUREJFKxHg3m4+Mjet5ly5YVZxNERERqp1ilGR0drfRzVFQU8vLy0LhxYwDA9evXoaurCzs7O9UTEhERqYlilebRo0cV/71s2TJUrFgRv/32GypXrgwAePLkCcaMGYMuXbqUTEoiIiI1oPJDqGvUqIHw8HA0b95cafqVK1fg5OSEBw8eqBRQnfEh1ERE6kXtH0KdmZmJhw8fFpiekpKCp0+fqrp6IiIitaFyafbv3x9jxozB7t27ce/ePdy7dw+7d+/GuHHjMGDAgJLISEREpBaK9Z3mf61fvx7Tpk3DyJEjkZub+3qlenoYN24cfvzxR5UDEhERqYtif6f5zTffwN3dHe3btwcAPH/+HDdv3oQgCGjQoAFMTExKNKg64neaRETqpbR/Lxf7SDMpKQlubm7Q1dVFnz594O7ujk8++QSGhoYlmY+IiEhtFPs7zc2bN+Phw4fYtWsXKlWqBB8fH5ibm2PAgAEICAhAampqSeYkIiKSnMqXnPxXXFwcDhw4gP379+P8+fOwt7dH3759MWzYMNSoUaOkNqM2ODxLRKReSvv3comW5n89evQIwcHBCA4ORpcuXTBt2rTS2IykWJpEROpFY0uzPGBpEhGpF7W7ucGTJ0/w+PFjAK+PJvfs2YMrV66UeDAiIiJ180Fnz/r7+8PPzw/5+fmYMWMGtm/fDltbW8ybNw9fffUVPvvss9LKSUQa6siRI9iwYQPy8vKkjkJqSl9fH5MnT0aHDh2kjvJeHzQ827JlS5w9exYvXrxA7dq1kZCQAAsLC2RmZuLjjz9GTExMKUZVPxyeJXq30NBQuLm5oUWLFrCyspI6DqmpxMREXL9+HceOHUOnTp1UWpdaXaepq6sLIyMjGBkZoUGDBrCwsAAAmJmZQSaTlXg4ItJcL1++xBdffIGePXvi0KFD0NHhM++pcLm5uejcuTMmTpyIqKgo6OmpfLO6UvNBf4v19PSQlZUFADh27JhiOm/MTkRvW7x4MR48eIDVq1ezMOmd9PX1sXbtWly+fBlr1qyROs47fdDf5CNHjiju+COXyxXTX758iV9//bVkkxGRxvr333+xZMkSTJ8+HQ0bNpQ6DmkAOzs7eHt749tvv0VSUpLUcYrES05UwO80iQoSBAGurq6IjY1FbGwsjI2NpY5EGuLJkydo1KgRnJ2dsW3btmKtQ62+0yxKVlYWLl26hJSUFOTn5yu917dv35LYBBFpiH379uHQoUPYt28fC5M+SOXKlbF06VKMHTsW48ePR9euXaWOVIDKR5phYWHw8vIq9F6zMplMq08z55EmkbLnz5+jWbNmsLGxwcGDB3mCIH2w/Px8dO7cGZmZmYiOjoa+vv4HLa92Nzd426RJkzB48GAkJSUhPz9f6aXNhUlEBf3www94+PAhVq5cycKkYtHR0cHatWsRFxeHlStXSh2nAJVLMyUlBT4+PqhWrVpJ5CEiDRUfH48ff/wRs2bNQv369aWOQxqsVatW+OKLLzB//nzcv39f6jhKVC7NQYMGITIysgSiEJGmEgQBX375JWrVqoWZM2dKHYe0wMKFC2FiYoKvv/5a6ihKVP5O88WLFxg8eDAsLCzQokWLAuPPX331lUoB1Rm/0yR67Y8//sCQIUNw8OBBuLq6Sh2HtMTWrVvh5eWFP//8E5988omoZdT+KSf+/v7w9vZGhQoVUKVKFaXvMWQyGW7duqVySHXF0iQCnj17hiZNmsDOzg779++XOg5pEUEQ0LVrV6SkpODixYuK+wS8i9qfCDRnzhwsXLgQGRkZuH37NhISEhQvbS5MInpt0aJFSEtLw4oVK6SOQlpGJpNhzZo1+Pfff/Hzzz9LHQdACZRmTk4OPDw8eJssonLo33//xfLlyzFr1ixYW1tLHYe0UIsWLfDFF19g0aJFanGnIJWbbtSoUQgMDCyJLESkYXx8fGBpaYnp06dLHYW02Pz582FkZIRZs2ZJHUX1OwLl5eVh6dKlOHz4MGxtbQucCLRs2TJVN0FEaujw4cM4cOAAdu3axTv/UKmqXLkyvv/+e3z++eeYMGGCpM/dVPlEoG7duhW9cpkMR44cUWX1ao0nAlF5lZubC1tbW1SrVg1Hjx7ljQyo1OXl5aFdu3bQ1dXF2bNni/xKUO3vPXv06NGSyEFEGmT16tW4fv06du7cycKkMqGrq4uVK1eiS5cuCAgIwNixYyXJwaecqIBHmlQepaSkoGHDhhg+fDjWrVsndRwqZ0aMGIE///wT169fV3pE5Rtqf8kJEZUvc+bMgY6ODr777jupo1A5tGTJEjx79gwLFy6UZPssTSIS7cKFC/D398fChQthbm4udRwqh2rWrInZs2dj5cqVuHbtWplvn8OzKuDwLJUngiCgS5cuSE9PR0xMDPT0SuRxvEQfLCsrC82bN0fDhg1x6NAhpe/VOTxLRGph586dOHnyJFasWMHCJEkZGRlh2bJlOHz4MA4ePFim2y7V0tTR0UH37t0RFRVVmpsholL2/PlzTJ8+Hf379xd942yi0tS3b1/07NkTU6dORXZ2dpltt1RLc9OmTejatatWP+mEqDxYvHgxUlNT8dNPP0kdhQjA6/sArFixAnfu3MHy5cvLbrv8TrP4+J0mlQcJCQlo2rQppk2bhkWLFkkdh0jJ1KlTsXHjRly/fh3Vq1fnd5pEJK1p06bB3Nwcvr6+UkchKmDevHkwNjYus4efl0hpHj9+HCNHjoSDgwPu378P4PXDQ0+cOFESqyciiRw5cgR79+7F0qVLYWJiInUcogIqVaqEH374Adu2bcOpU6dKfXsql+aePXvg7OyMChUqIDo6WvGF7NOnT/HDDz+oHJCIpPHq1StMnjwZnTp1wrBhw6SOQ1SkMWPGoE2bNpg8eTLy8/NLdVsql+aiRYuwfv16bNy4UekJJx07dsSFCxdUXT0RSWT9+vW4evUqVq5cyfvLklrT1dXFihUrcP78eezYsaNUt6VyacbHx+Pjjz8uMN3MzAzp6emqrp6IJJCWloZvv/0W48aNQ5s2baSOQ/RenTt3xtChQzF//vxS3Y7KpWllZYV///23wPQTJ06gXr16qq6eiCQwd+5c5OXl4fvvv5c6CpFoS5YsQWZmZqluQ+XS/PzzzzF58mScPXsWMpkMDx48wPbt2zFt2jRMnDixJDKKtnbtWtStWxdGRkaws7PD8ePH3zn/sWPHYGdnByMjI9SrVw/r168vo6RE6uvSpUvYsGED5s2bh6pVq0odh0i02rVrY8qUKaW7EaEEfPPNN0KFChUEmUwmyGQywcjISJgzZ05JrFq0nTt3Cvr6+sLGjRuF2NhYYfLkyYKJiYlw586dQue/deuWYGxsLEyePFmIjY0VNm7cKOjr6wu7d+8Wvc2MjAwBgJCRkVFSH4NIUvn5+YKjo6PQuHFjITs7W+o4RB8sKSmpVH8vq3xzg8TERNSsWRNZWVmIjY1Ffn4+mjVrBhMTE9y9exe1a9cumXZ/D3t7e7Rp00bp+X5NmzaFu7s7/Pz8Csw/c+ZMBAcHIy4uTjHN29sbFy9exOnTp0Vtkzc3IG2ze/duDB48GIcOHUKvXr2kjkP0wdT+5gZ169ZFamoqjI2N0bZtW7Rv3x6mpqZ4/Pgx6tatWxIZ3ysnJwdRUVFwcnJSmu7k5FTkdTunT58uML+zszPOnz+P3NzcQpfJzs5GZmam0gt4PSTw8OHDEvgkRNIRBAG+vr5wc3NjYRIVQeVHFRR1oPrs2TMYGRmpunpRUlNTkZeXh2rVqilNr1atGpKTkwtdJjk5udD5X716hdTUVFhZWRVYxs/PDwsWLCgwPSMjA87OzqhduzYqVKiAwMBALFq0CGPHjoW3t7fSvLNnz0Z0dDQGDRqEJUuWID4+XvFep06d0K9fP1y+fBnGxsbYsGGD0rJ79uzBkiVL4OPjg6FDhyq9N2nSJKSlpaF9+/bYsWMHzp07p3jPxsYGkyZNwqFDh9C4cWMsXbpUadlNmzZh/fr1mDNnDgYMGIBXr14p3vP09ISxsTGsrKxw8uRJREREKN6rVasWfvzxR6xbtw5OTk6YPXu20nqXL1+OHTt2YM6cORgzZgzS0tIU7/Xr1w+NGzfGq1evkJiYiN27dyveMzMzw7Zt27Bo0SJ4eXlh0qRJSuudP38+Tp48CS8vL8ybNw+3bt1SvNe1a1c4OTnh5s2bis/2X8HBwVi0aBG+/PJLeHp6Kr3n4+ODxMREODo64tdff0V0dLTivdatW2PcuHGIjIxE7dq1sWzZMqVlt27dilWrVmHOnDno27ev0ntjx44FANSvXx/h4eE4duyY4r169ephwYIF2LJlCzp16lTgzL/Vq1djy5YtmDNnDkaOHKl0ksOgQYNQu3Zt6OnpIT4+Hvv371e8V6VKFWzevBmLFi3CsGHDMHXqVKX1fv/99wgPD8eECRMwffp03L17F5mZmfj333/h5OSECxcuICkpCS9evMDWrVsVy+np6WHv3r1YtGgRvL29FZ/tjRkzZiA+Ph69e/fG6tWrceXKFcV77du3x7Bhw3Du3DlUqVIFq1evVlp2586dWLZsGWbOnImBAwcqvff555/jxYsXaNGiBfbv34+TJ08q3mvcuDFmzpyJ3bt3o3Xr1gVOXlq/fj02bdqEOXPmwMPDAy9fvlS8N2zYMFSpUgVyuRzR0dEIDQ1VvGdlZYXVq1dj2bJl6NevH2bMmKG03qVLl2L//v3w8fHBpEmTkJSUpHjPxcUFrVu3RkZGBtLS0pQug+DviP+vNH5HFHXQU1KKPTzr4+MDAFixYgXGjx8PY2NjxXt5eXk4e/YsdHV1lf5yl5YHDx6gRo0aOHXqFBwcHBTTv//+e2zdurXQB5U2atQIY8aMUbo12MmTJ9G5c2ckJSXB0tKywDLZ2dlKd9PPzMxErVq1YGdnh7p16+KPP/4o4U9GVHaWLl2KBQsW4PHjxzA0NJQ6DlGxlPbwbLGPNN/8K1wQBFy+fBkGBgaK9wwMDNCyZUtMmzZN9YQimJubQ1dXt8BRZUpKSoGjyTcsLS0LnV9PTw9VqlQpdBlDQ8NCf5k4OTlhzZo1yM3NVbrBA5EmCQ0NRY8ePViYRO9Q7NI8evQogNe3L1qxYoWkJ8IYGBjAzs4OERER6N+/v2J6REQE+vXrV+gyDg4OOHDggNK08PBwtG3b9oOLz9nZGX5+fjh58iQcHR0/OD+R1DIyMnDixIkCQ6ZEpEzlE4E2b96sFmeO+vj4wN/fH5s2bUJcXBymTp2KxMRExfcFvr6+8PLyUszv7e2NO3fuwMfHB3Fxcdi0aRN+/fXXYh0dt2zZEtWqVVP6PoRIk0RERCAvLw+9e/eWOgqRWlP5RKA3YmNjkZiYiJycHKXpb58UUVo8PDyQlpaGhQsXIikpCTY2NggNDUWdOnUAAElJSUhMTFTMX7duXYSGhmLq1KlYs2YNqlevjpUrVxY4AUEMHR0d9O7dGyEhIQW+QCfSBKGhoWjevLni/xciKpzK12neunUL/fv3x+XLlyGTyRRn0765wXNeXp7qKdXUf79wDg8Px+DBg5GQkABra2upoxGJlp+fjxo1asDT05P/6CONp/bXaU6ePBl169bFw4cPYWxsjKtXr+Lvv/9G27ZtERkZWQIRNUPPnj2hq6uLQ4cOSR2F6IPExMQgOTkZLi4uUkchUnsql+bp06excOFCWFhYQEdHBzo6OujcuTP8/Pzw1VdflURGjSCXy9G5c2eEhIRIHYXog4SGhqJixYro1KmT1FGI1J7KpZmXlwdTU1MAry/9ePDgAQCgTp06Shfllgeurq44cuSI0sXTROouNDQUTk5OvFyKSASVS9PGxgaXLl0C8Pr+r0uXLsXJkyexcOHCcvdoMBcXF7x8+bJcDUuTZktNTcWZM2c4NEskksqlOWfOHOTn5wMAFi1ahDt37qBLly4IDQ3FypUrVQ6oSZo1a4Y6derw0hPSGOHh4RAEgfeaJRJJ5dJ88yQR4PV9NGNjY5GamoqUlBQ0aNBA1dVrFJlMBhcXF4SGhhZ5T14idRIaGorWrVujevXqUkch0ggl9pST//roo4/K9Ckn6sTFxQW3bt0qd9/nkubJy8tDWFgYh2aJPoDKpakOTzlRJ927d4ehoSGHaEnt/fPPP0hLS2NpEn2AYt8R6M1TTmQyGb799ttCn3LSqlUrlQNqGmNjY3Tr1g2hoaGKfUSkjkJDQ1G5cmXY29tLHYVIY2jFU07UjYuLC77++ms8ffoUFStWlDoOUaFCQ0Ph7OwMXV1dqaMQaQyteMqJunF1dcVXX32FP//8U+mpK0TqIjk5GVFRUZg8ebLUUYg0itY85USd1KtXD40bN+b3mqS2wsLCIJPJ4OzsLHUUIo2icmlS4VxdXXnpCamt0NBQtGvXDlWrVpU6CpFGYWmWEhcXFzx48AAXL16UOgqRklevXiE8PJxnzRIVA0uzlHTp0gWmpqYcoiW1c/r0aWRkZLA0iYqBpVlKDAwM0LNnTz71hNROaGgoLCwsYGdnJ3UUIo2jcmmOGDECv/zyC65fv14SebSKi4sLzpw5g7S0NKmjECmEhoaid+/e0NHhv5mJPpTK/9eYmppi2bJlaNKkCapXr45hw4Zh/fr1uHbtWknk02i9e/dGfn4+wsPDpY5CBAC4d+8eLl26hN69e0sdhUgjqVyaGzZswLVr1/DgwQMsW7YMcrkcK1asQPPmzWFlZVUSGTVWjRo10KpVKw7RktoICQmBrq4uLzUhKqYSG5+pWLEiKleujMqVK6NSpUrQ09ODpaVlSa1eY7m4uCAsLAx5eXlSRyFCSEgIOnXqhMqVK0sdhUgjqVyaM2fORIcOHWBubo45c+YgJycHvr6+ePjwoeJWe+WZq6sr0tLScO7cOamjUDn38uVL/Pnnn3B1dZU6CpHGKvZt9N748ccfYWFhgXnz5qFfv35o2rRpSeTSGvb29vjoo48QGhoKBwcHqeNQORYZGYmXL1+yNIlUoPKRZnR0NGbPno1z587h448/hqWlJTw8PLBu3TrExcWVREaN9ub7I16vSVILCQlBnTp10KxZM6mjEGkslUuzZcuW+Oqrr7B37148evQIhw8fhrGxMb766ivY2NiUREaN5+rqigsXLiApKUnqKFROCYKAkJAQuLm5QSaTSR2HSGOpPDwLvD7ajIyMRGRkJI4fP47MzEy0atUK3bp1K4nVazxnZ2fIZDIcOnQIY8eOlToOlUOxsbG4ffs2h2aJVKRyaVauXBnPnj1Dy5Yt4ejoiPHjx+Pjjz/mk0/+w9zcHPb29ggNDWVpkiRCQkJQoUIFODo6Sh2FSKOpXJpbt25lSYrg6uqKpUuXIicnR+mB3URlISQkBD169ECFChWkjkKk0VT+TtPNzY2FKYKLiwuePn2KkydPSh2FypknT57g5MmTHJolKgEl8p1meno6fv31V8TFxUEmk6Fp06YYN24c5HJ5SaxeK7Ru3RpWVlYIDQ3ld71UpsLDw5GXl8enmhCVAJWPNM+fP4/69etj+fLlePz4MVJTU7F8+XLUr18fFy5cKImMWkEmk6F37968pR6VuYMHD8LW1ha1atWSOgqRxlO5NKdOnYq+ffvi9u3b2Lt3L4KCgpCQkAA3NzdMmTKlBCJqDxcXF8TFxSEhIUHqKFRO5OXl4dChQ3Bzc5M6CpFWKJEjzZkzZ0JP7/+P9Orp6WHGjBk4f/68qqvXKj179oSenh4OHTokdRQqJ86dO4e0tDR+n0lUQlQuTTMzMyQmJhaYfvfuXVSsWFHV1WsVMzMzdOnShUO0VGZCQkJQpUoV2NvbSx2FSCuoXJoeHh4YN24cAgMDcffuXdy7dw87d+7Ep59+imHDhpVERq3i4uKCI0eO4OXLl1JHoXLg4MGD6NWrF3R1daWOQqQVVC7N//3vfxgwYAC8vLxgbW2NOnXqYPTo0Rg0aBCWLFlSEhm1iqurK7KyshAZGSl1FNJy9+7dw8WLF/l9JlEJUrk0DQwMsGLFCjx58gQxMTGIjo7G48ePsXz5chgaGpZERq3SpEkTWFtbc4iWSl1oaCgfOE1UwkrsIdTGxsZo0aIFbG1tYWxsXFKr1ToymQyurq44ePAgBEGQOg5psZCQEHTs2JEPnCYqQcW6uYGPj4/oeZctW1acTWi1Pn36YM2aNbhy5QpatGghdRzSQllZWfjzzz/x7bffSh2FSKsUqzSjo6NFzcdHEBXO0dERpqamOHDgAEuTSkVkZCRevHjB7zOJSlixSvPo0aO4desWrK2toaNTYiO85YahoSGcnJxw4MABfPPNN1LHIS3EB04TlY5iN17Dhg2Rmpqq+NnDwwMPHz4skVDlQZ8+fXD27FmkpKRIHYW0zJsHTru6unK0h6iEFbs03z6JJTQ0FM+fP1c5UHnx5ubZPIuWStq1a9cUt7IkopLFsVWJVK1aFfb29jh48KDUUUjLHDx4kA+cJiolxS5NmUxWYOiHQ0Efpk+fPggPD0d2drbUUUiLhISE4JNPPuEDp4lKQbGfpykIAkaPHq24gUFWVha8vb1hYmKiNN/evXtVS6jF+vTpg9mzZyMyMpIXoFOJSE9Px4kTJ7B69WqpoxBppWKX5qhRo5R+HjlypMphyhsbGxvUqVMHBw4cYGlSiQgLC0NeXh6fakJUSmQCb0tTbJmZmZDL5cjIyICZmVmx1vHll18iODgYt2/f5vA2qWz48OG4du0aHwBP5VZJ/F5+F54IJDE3NzckJibi8uXLUkchDZebm4vQ0FD07dtX6ihEWoulKbE3dwfiWbSkqhMnTiAjI4OlSVSKWJoS++/dgYhUERwcjBo1aqB169ZSRyHSWixNNcC7A5GqBEHA/v370bdvX343TlSKWJpqgHcHIlXFxsYiISEBffr0kToKkVZjaaqBqlWrokOHDhyipWILDg6GiYkJunXrJnUUIq3G0lQTb+4OlJWVJXUU0kBvrvU1MjKSOgqRVmNpqgk3Nzc8f/4cx44dkzoKaZiHDx/izJkzPGuWqAywNNXEf+8ORPQh3nwX/ua7cSIqPSxNNSGTydCnTx8cOHCgwGPXiN4lODgYHTt2hIWFhdRRiLQeS1ON9OnTh3cHog/y8uVLhIeHc2iWqIywNNVI165dYWpqyiFaEu3IkSN4+fIlS5OojLA01YihoSGcnZ1ZmiRacHAwGjRogMaNG0sdhahc0IrSfPLkCTw9PSGXyyGXy+Hp6Yn09PQi58/NzcXMmTPRokULmJiYoHr16vDy8sKDBw/KLnQR+vbti7NnzyIpKUnqKKTm8vPzceDAAd4FiKgMaUVpDh8+HDExMQgLC0NYWBhiYmLg6elZ5PwvXrzAhQsXMHfuXFy4cAF79+7F9evX1WKIy9XVFbq6uggODpY6Cqm5qKgoJCUlqcXfW6LyQuOfpxkXF4dmzZrhzJkzsLe3BwCcOXMGDg4OuHbtmuhhq3/++Qft27fHnTt3ULt2bVHLlNZz27p37w4jIyOEhoaW2DpJ+8ydOxdr1qxBSkoK9PSK/Tx5Iq3C52m+x+nTpyGXyxWFCQAdOnSAXC7HqVOnRK8nIyMDMpkMlSpVKnKe7OxsZGZmKr1Kg7u7O/76669SWz9ph+DgYLi6urIwicqQxpdmcnIyqlatWmB61apVkZycLGodWVlZmDVrFoYPH/7Of5n4+fkpvjeVy+WoVatWsXO/S79+/ZCTk4OwsLBSWT9pvjt37uDSpUu8QTtRGVPb0pw/fz5kMtk7X+fPnweAQk+CEARB1MkRubm5GDp0KPLz87F27dp3zuvr64uMjAzF6+7du8X7cO9Rp04dtGrVCvv27SuV9ZPmCw4Ohr6+PpydnaWOQlSuqO24zqRJkzB06NB3zmNtbY1Lly7h4cOHBd579OgRqlWr9s7lc3NzMWTIECQkJODIkSPvHf82NDSEoaHh+8OXAHd3dyxbtgw5OTkwMDAok22S5ggKCkL37t0hl8uljkJUrqhtaZqbm8Pc3Py98zk4OCAjIwPnzp1D+/btAQBnz55FRkYGOnbsWORybwrzxo0bOHr0KKpUqVJi2UuCu7s75s+fj8jISDg5OUkdh9RIWloa/v77b6xZs0bqKETljtoOz4rVtGlT9OrVC+PHj8eZM2dw5swZjB8/Hm5ubkpnzjZp0gRBQUEAgFevXmHQoEE4f/48tm/fjry8PCQnJyM5ORk5OTlSfRQltra2sLa25hAtFXDgwAHk5+fzUhMiCWh8aQLA9u3b0aJFCzg5OcHJyQm2trbYunWr0jzx8fHIyMgAANy7dw/BwcG4d+8eWrVqBSsrK8XrQ864LU0ymQzu7u7Yv38/8vPzpY5DaiQoKAgdOnSAlZWV1FGIyh2Nv05TSqV9PdCxY8fg6OiIc+fOoV27diW+ftI8z58/h7m5ORYuXIjp06dLHYdI7fA6zXKsU6dO+OijjzhESwphYWHIyspC//79pY5CVC6xNNWYnp4e+vTpw9IkhX379sHGxgYNGjSQOgpRucTSVHPu7u6IjY3F9evXpY5CEsvNzcXBgwd5lEkkIZammnNyckKFChWwf/9+qaOQxCIjI5Gens7SJJIQS1PNGRsbw8nJiUO0hKCgIMXdoohIGixNDeDu7o7Tp0+LvpcuaZ/8/Hzs27cP/fv357MziSTE0tQAbm5u0NHR4RBtOXbu3DkkJSVxaJZIYixNDWBubg5HR0fs2bNH6igkkaCgIFhYWKBTp05SRyEq11iaGmLgwIE4cuQI0tLSpI5CZUwQBAQFBaFv377Q1dWVOg5RucbS1BD9+/dHfn4+goODpY5CZSw2NhY3btzg0CyRGmBpaghLS0t07twZu3fvljoKlbGgoCCYmprik08+kToKUbnH0tQggwYNQkREhOLG81Q+BAUFwcXFBUZGRlJHISr3WJoaZMCAAcjNzcWBAwekjkJl5NatW7hw4QIGDRokdRQiAktTo9SsWRMdOnTgWbTlyO7du1GhQgW4uLhIHYWIwNLUOAMHDkRYWBiePXsmdRQqA3/88QdcXFxgYmIidRQiAktT4wwcOBBZWVkIDQ2VOgqVstu3b+P8+fMcmiVSIyxNDVO3bl20adOGQ7TlwO7du2FkZARXV1epoxDR/2FpaqCBAwciJCQEL1++lDoKlaLdu3ejV69eqFixotRRiOj/sDQ10KBBg/D8+XMcPnxY6ihUShITE3H27FkMHjxY6ihE9B8sTQ3UqFEj2NjY8EYHWmzPnj0wNDSEm5ub1FGI6D9Ymhpq0KBBOHDgALKzs6WOQqXgjz/+gLOzM8zMzKSOQkT/wdLUUAMHDkRmZib+/PNPqaNQCbt79y5Onz7Ns2aJ1BBLU0M1b94cjRs35hCtFtq7dy/09fXRt29fqaMQ0VtYmhpKJpPBw8MDQUFBHKLVMn/88QecnJwgl8uljkJEb2FpajAPDw9kZGTwLFotcv/+fZw8eZJnzRKpKZamBmvWrBlatGiBnTt3Sh2FSsju3bs5NEukxliaGm7o0KHYv38/nj9/LnUUKgE7duxAr169ULlyZamjEFEhWJoazsPDAy9evEBISIjUUUhFCQkJOHv2LIYNGyZ1FCIqAktTw9WvXx/t2rVDYGCg1FFIRTt37oSxsTGHZonUGEtTC3h4eCAkJASZmZlSRyEV7NixA3379uVjwIjUGEtTCwwZMgTZ2dnYv3+/1FGomK5evYrLly9j6NChUkchondgaWqBWrVqoXPnzjyLVoPt3LkTlSpVQq9evaSOQkTvwNLUEkOHDkV4eDjS0tKkjkIfSBAE7NixAwMGDIChoaHUcYjoHViaWmLQoEHIz8/H3r17pY5CH+j8+fO4efMmh2aJNABLU0tUq1YN3bt351m0Gmjnzp2oWrUqunXrJnUUInoPlqYWGTp0KI4ePYqkpCSpo5BI+fn5CAwMxJAhQ6Cnpyd1HCJ6D5amFhkwYAD09PSwY8cOqaOQSMePH8f9+/d5QwMiDcHS1CKVK1dGnz59sG3bNqmjkEg7d+5E7dq10aFDB6mjEJEILE0t4+npiejoaFy9elXqKPQe2dnZ2LVrF4YNGwYdHf6vSKQJ+H+qlunduzc++ugjbN26Veoo9B6hoaF4/PgxPD09pY5CRCKxNLWMgYEBPDw8sH37duTn50sdh95hy5YtsLOzQ/PmzaWOQkQisTS1kKenJ+7du4fIyEipo1AR0tLSEBISAi8vL6mjENEHYGlqoQ4dOqBBgwYcolVjgYGBEASBNzQg0jAsTS0kk8kwcuRI7NmzBy9evJA6DhViy5Yt6NWrF6pWrSp1FCL6ACxNLTVixAg8ffoUwcHBUkeht8THx+Ps2bMcmiXSQCxNLdWgQQM4ODhwiFYNbd26FXK5HH369JE6ChF9IJamFvP09MThw4fx8OFDqaPQ/8nPz8fWrVvh4eEBIyMjqeMQ0QdiaWqxIUOGQEdHh8/ZVCN///03EhMTOTRLpKFYmlqsSpUqcHNzQ0BAgNRR6P9s2bIF9erVQ8eOHaWOQkTFwNLUcuPGjUNMTAyio6OljlLuvXjxAn/88Qe8vLwgk8mkjkNExcDS1HLOzs6wsrLCr7/+KnWUcm/v3r149uwZRo4cKXUUIiomlqaW09PTw6hRo7B9+3ZkZWVJHadc8/f3R7du3VC/fn2poxBRMbE0y4GxY8ciPT0dQUFBUkcpt27cuIFjx47h008/lToKEamApVkONGzYEF26dMGmTZukjlJubdq0CZUqVUL//v2ljkJEKmBplhNjx47FX3/9hdu3b0sdpdzJzc1FQEAARo4ciQoVKkgdh4hUwNIsJwYPHgwTExNefiKB0NBQJCcnc2iWSAuwNMsJExMTDB06FJs3b+ZzNsuYv78/2rZti5YtW0odhYhUxNIsR8aNG4fExERERERIHaXcuH//PkJDQ3mUSaQlWJrliL29PWxtbbF+/Xqpo5Qbv/32GwwNDfncTCItwdIsR2QyGby9vXHgwAHcu3dP6jhaLz8/H/7+/hg8eDDkcrnUcYioBLA0y5k3Z3D6+/tLHUXrHT58GAkJCZgwYYLUUYiohGhFaT558gSenp6Qy+WQy+Xw9PREenq66OU///xzyGQy/Pzzz6WWUV1UrFgRI0aMwMaNG/Hq1Sup42i1tWvXonXr1rC3t5c6ChGVEK0ozeHDhyMmJgZhYWEICwtDTEwMPD09RS27b98+nD17FtWrVy/llOrj888/x4MHD3Dw4EGpo2it27dvIyQkBBMnTuTN2Ym0iMaXZlxcHMLCwuDv7w8HBwc4ODhg48aNOHjwIOLj49+57P379zFp0iRs374d+vr6791WdnY2MjMzlV6a6M3Rz7p166SOorU2bNgAMzMzDBs2TOooRFSCNL40T58+DblcrjQE1qFDB8jlcpw6darI5fLz8+Hp6Ynp06ejefPmorbl5+enGAKWy+WoVauWyvmlMmHCBISHh+PmzZtSR9E62dnZ8Pf3x+jRo2FiYiJ1HCIqQRpfmsnJyahatWqB6VWrVkVycnKRyy1ZsgR6enr46quvRG/L19cXGRkZitfdu3eLlVkdDBkyBJUqVcKGDRukjqJ1du/ejdTUVJ4ARKSF1LY058+fD5lM9s7X+fPnAaDQ74wEQSjyu6SoqCisWLECAQEBH/R9k6GhIczMzJRemqpChQoYM2YMfv31V7x48ULqOFpl7dq1+OSTT9C4cWOpoxBRCVPb0pw0aRLi4uLe+bKxsYGlpSUePnxYYPlHjx6hWrVqha77+PHjSElJQe3ataGnpwc9PT3cuXMHX3/9NaytrUv5k6mPSZMm4cmTJ9i2bZvUUbTGxYsXcerUKUycOFHqKERUCmSCIAhSh1BFXFwcmjVrhrNnz6J9+/YAgLNnz6JDhw64du1aof/aT0tLQ1JSktI0Z2dneHp6YsyYMaKPEDIzMyGXy5GRkaGxR539+/fH9evXceXKFZ7lWQLGjRuHw4cP4/bt29DT05M6DlG5U9q/l9X2SFOspk2bolevXhg/fjzOnDmDM2fOYPz48XBzc1MqvyZNmigewlylShXY2NgovfT19WFpaVnuhtSmTJmC2NhY/Pnnn1JH0XgPHz7Etm3b8OWXX7IwibSUxpcmAGzfvh0tWrSAk5MTnJycYGtri61btyrNEx8fj4yMDIkSqq+PP/4YLVu2xIoVK6SOovHWrVsHPT09fPbZZ1JHIaJSovHDs1LShuFZAAgICMCYMWMQHx+PRo0aSR1HI2VlZaF27doYMmQIVq9eLXUconKLw7NU6oYOHQoLCwusXLlS6igaa/v27UhNTcXkyZOljkJEpYilSTAyMsKECRMQEBDwQffspdcEQcDy5cvRp08fNGzYUOo4RFSKWJoE4PUdgnJzc3mzg2KIiIjA1atXMXXqVKmjEFEpY2kSAMDS0hJeXl74+eefkZWVJXUcjbJs2TK0bt0aXbt2lToKEZUyliYpzJgxAw8fPsRvv/0mdRSNcfHiRRw+fBg+Pj68zpWoHGBpkkLDhg0xaNAgLF26lM/aFMnPzw/W1tbw8PCQOgoRlQGWJimZOXMmbt26hd27d0sdRe1dv34du3btwsyZM0U9Wo6INB+v01SBtlyn+TYnJyekpKQgOjqaQ47vMHbsWISFheHWrVswMjKSOg4RgddpkgR8fX0V39VR4e7cuYOtW7di2rRpLEyicoSlSQU4Ojqiffv2+OGHH6SOorZ+/PFHmJmZ8ZZ5ROUMS5MKkMlkmD17No4fP44jR45IHUftJCcnw9/fH1OmTIGpqanUcYioDLE0qVB9+vRB27ZtMXfuXPBrb2U//fQTDAwMMGnSJKmjEFEZY2lSoWQyGRYuXIhTp07xu83/SEpKwpo1azB58mRUrlxZ6jhEVMZ49qwKtPXs2TcEQUDnzp2Rk5ODc+fO8UxaAF9++SW2bduGhIQEVKpUSeo4RPQWnj1LkpHJZPjuu+9w/vx5BAcHSx1Hcnfu3MGGDRswffp0FiZROcUjTRVo+5HmG926dcPjx48RHR0NHZ3y+++sTz/9FAcOHMDNmzd5AhCRmuKRJknuu+++w6VLl8r1XYKuX7+OgIAA+Pr6sjCJyjEeaaqgvBxpAoCrqyvi4+MRGxsLAwMDqeOUuQEDBuD8+fO4fv06b2ZApMZ4pElqYenSpUhISMCaNWukjlLm/v77bwQFBcHPz4+FSVTO8UhTBeXpSBMAvL29sWvXLvz777/46KOPpI5TJvLz82Fvbw8AOHv2bLn+TpdIE/BIk9TGggULkJubi++++07qKGVmx44dOH/+PJYtW8bCJCKWJolXrVo1zJo1C2vWrMH169eljlPqnj9/Dl9fX/Tv3x9dunSROg4RqQGWJn0QHx8f1KhRA5MmTdL62+t9//33SElJwY8//ih1FCJSEyxN+iAVKlTAqlWrEBERodWXoFy7dg3/+9//4Ovri/r160sdh4jUBE8EUkF5OxHov/r164eoqCjExcWhYsWKUscpUYIgoGfPnrh9+zauXLnCM2aJNAhPBCK1tGLFCjx+/BgLFiyQOkqJCwwMxF9//YVVq1axMIlICUuTisXa2hpz587Fzz//jPPnz0sdp8SkpqZi8uTJGDBgAHr37i11HCJSMxyeVUF5Hp4FgNzcXHTo0AHZ2dmIioqCoaGh1JFUNnz4cISFhSE2NhaWlpZSxyGiD8ThWVJb+vr62Lx5M65fv64V124GBQVhx44dWLVqFQuTiArF0iSV2NraYu7cuVi8eLFGD9OmpaVhwoQJ6Nu3L4YPHy51HCJSUxyeVUF5H559480w7bNnzxAVFaVxTwERBAHu7u44fvw4rl69CisrK6kjEVExcXiW1J6+vj527NiB+/fvY+LEiVLH+WCrVq1CcHAwAgICWJhE9E4sTSoRjRo1wvr167F161b89ttvUscR7cKFC5g+fTomT56Mvn37Sh2HiNQch2dVwOHZgsaMGYNdu3bh3LlzaN68udRx3ik9PR3t2rWDXC7HyZMnteLsX6LyjsOzpFFWr16N+vXro2/fvkhNTZU6TpFevXoFDw8PpKWlITAwkIVJRKKwNKlEmZiYIDg4GE+fPsWgQYOQk5MjdaRC+fj44MiRI9i9ezfvLUtEorE0qcRZW1tj7969OHXqFL744gu1exrK+vXrsWrVKqxatQrdu3eXOg4RaRCWJpWKzp07Y+PGjfD394evr6/aFGdgYCC++OILfPXVV/D29pY6DhFpGD2pA5D2GjVqFJ48eYKpU6fC1NQUc+bMkTRPcHAwRo4ciZEjR2L58uWSZiEizcTSpFI1ZcoUPH/+HHPmzIG+vj5mzpwpSY6QkBAMHjwY7u7u+PXXX6Gjw0EWIvpwLE0qdd988w1ycnIwa9YsJCcn46effirT0tq0aRM+++wz9OnTB9u3b4eeHv/aE1Hx8J/bVOpkMhkWLFiAtWvXYuXKlRg6dCiysrJKfbuCIGDhwoUYN24cxo8fjz/++AMGBgalvl0i0l4sTSozEyZMwJ49e3DgwAF07NgRN2/eLLVtpaenY+DAgZg3bx4WLVqEtWvX8giTiFTG0qQy5e7ujtOnT+Pp06do06YN/P39S/zM2r/++gutW7fG0aNHsW/fPsyePRsymaxEt0FE5RNLk8pcq1atEBUVhYEDB2L8+PHo3r07Lly4oPJ67969i1GjRqFHjx6wtrbGhQsX0K9fvxJITET0GkuTJGFmZoZNmzYhPDwcycnJsLOzw6BBg3Dq1KkPPvK8fv06vvzySzRs2BCHDh3CL7/8gr/++gt169YtpfREVF7xhu0q4A3bS8arV68QEBCAH3/8EdevX0eTJk0wcOBAODo6Km6o/l9ZWVmIiYnB8ePHERQUhNOnT8PCwgKTJk3C1KlTUbFiRYk+CRFJrbR/L7M0VcDSLFn5+fkIDw9HYGAg9u/fjydPngAAKlWqBHNzcwBARkYGHj16BAAwMjKCs7MzBg8ejIEDB8LIyEiy7ESkHliaaoylWXry8/MRHx+PCxcu4N69e0hLSwMAmJqaombNmrC1tYWtrS0vISEiJaX9e5nn4JNa0tHRQdOmTdG0aVOpoxARKfBEICIiIpFYmkRERCKxNImIiERiaRIREYnE0iQiIhKJpUlERCQSS5OIiEgkliYREZFILE0iIiKRWJpEREQiaUVpPnnyBJ6enpDL5ZDL5fD09ER6evp7l4uLi0Pfvn0hl8tRsWJFdOjQAYmJiaUfmIiINJJWlObw4cMRExODsLAwhIWFISYmBp6enu9c5ubNm+jcuTOaNGmCyMhIXLx4EXPnzuWTMoiIqEga/5STuLg4NGvWDGfOnIG9vT0A4MyZM3BwcMC1a9fQuHHjQpcbOnQo9PX1sXXr1mJvm085ISJSL3zKyXucPn0acrlcUZgA0KFDB8jlcpw6darQ0szPz0dISAhmzJgBZ2dnREdHo27duvD19YW7u3uR28rOzkZ2drbi54yMDACv/5CIiEh6b34fl9bxoMaXZnJyMqpWrVpgetWqVZGcnFzoMikpKXj27BkWL16MRYsWYcmSJQgLC8OAAQNw9OhRdO3atdDl/Pz8sGDBggLTa9WqpdqHICKiEpWWlga5XF7i61Xb0pw/f36hBfVf//zzDwBAJpMVeE8QhEKnA6+PNAGgX79+mDp1KgCgVatWOHXqFNavX19kafr6+sLHx0fxc3p6OurUqYPExMRS+cMpaZmZmahVqxbu3r2rMcPJzFw2mLlsMHPpy8jIQO3atfHRRx+VyvrVtjQnTZqEoUOHvnMea2trXLp0CQ8fPizw3qNHj1CtWrVClzM3N4eenh6aNWumNL1p06Y4ceJEkdszNDSEoaFhgelyuVwj/jK9YWZmplF5AWYuK8xcNpi59OnolM55rmpbmubm5jA3N3/vfA4ODsjIyMC5c+fQvn17AMDZs2eRkZGBjh07FrqMgYEB2rVrh/j4eKXp169fR506dVQPT0REWknjLzlp2rQpevXqhfHjx+PMmTM4c+YMxo8fDzc3N6WTgJo0aYKgoCDFz9OnT0dgYCA2btyIf//9F6tXr8aBAwcwceJEKT4GERFpAI0vTQDYvn07WrRoAScnJzg5OcHW1rbApSTx8fGKs10BoH///li/fj2WLl2KFi1awN/fH3v27EHnzp1Fb9fQ0BDz5s0rdMhWHWlaXoCZywozlw1mLn2lnVfjr9MkIiIqK1pxpElERFQWWJpEREQisTSJiIhEYmkSERGJxNIsprVr16Ju3bowMjKCnZ0djh8/LnUkhfnz50Mmkym9LC0tFe8LgoD58+ejevXqqFChAhwdHXH16tUyzfj333+jT58+qF69OmQyGfbt26f0vpiM2dnZ+PLLL2Fubg4TExP07dsX9+7dkyTv6NGjC+zzDh06SJYXeH3bx3bt2qFixYqoWrUq3N3dC1ybrG77WUxmddrX69atg62treLCfwcHBxw6dEjxvrrtXzGZ1Wn/FsXPzw8ymQxTpkxRTCuzfS3QB9u5c6egr68vbNy4UYiNjRUmT54smJiYCHfu3JE6miAIgjBv3jyhefPmQlJSkuKVkpKieH/x4sVCxYoVhT179giXL18WPDw8BCsrKyEzM7PMMoaGhgqzZ88W9uzZIwAQgoKClN4Xk9Hb21uoUaOGEBERIVy4cEHo1q2b0LJlS+HVq1dlnnfUqFFCr169lPZ5Wlqa0jxlmVcQBMHZ2VnYvHmzcOXKFSEmJkZwdXUVateuLTx79kwxj7rtZzGZ1WlfBwcHCyEhIUJ8fLwQHx8vfPPNN4K+vr5w5coVQRDUb/+KyaxO+7cw586dE6ytrQVbW1th8uTJiullta9ZmsXQvn17wdvbW2lakyZNhFmzZkmUSNm8efOEli1bFvpefn6+YGlpKSxevFgxLSsrS5DL5cL69evLKKGyt0tITMb09HRBX19f2Llzp2Ke+/fvCzo6OkJYWFiZ5hWE179o+vXrV+QyUuZ9IyUlRQAgHDt2TBAE9d/PhWUWBPXf15UrVxb8/f01Yv++nVkQ1Hv/Pn36VGjYsKEQEREhdO3aVVGaZbmvOTz7gXJychAVFQUnJyel6U5OTjh16pREqQq6ceMGqlevjrp162Lo0KG4desWACAhIQHJyclK+Q0NDdG1a1e1yS8mY1RUFHJzc5XmqV69OmxsbCT7HJGRkahatSoaNWqE8ePHIyUlRfGeOuR9c3OPNzey1oT9/HbmN9RxX+fl5WHnzp14/vw5HBwcNGL/vp35DXXcvwDwxRdfwNXVFT169FCaXpb7Wm3vPauuUlNTkZeXV+Bm8NWqVSvyUWRlzd7eHlu2bEGjRo3w8OFDLFq0CB07dsTVq1cVGQvLf+fOHSniFiAmY3JyMgwMDFC5cuUC80jx59C7d28MHjwYderUQUJCAubOnYvu3bsjKioKhoaGkucVBAE+Pj7o3LkzbGxsAKj/fi4sM6B++/ry5ctwcHBAVlYWTE1NERQUhGbNmil+Eavj/i0qM6B++/eNnTt34sKFC4qnW/1XWf5dZmkW09uPHRPe8Siysta7d2/Ff7do0QIODg6oX78+fvvtN8UX+uqc/43iZJTqc3h4eCj+28bGBm3btkWdOnUQEhKCAQMGFLlcWeWdNGkSLl26VOhTfNR1PxeVWd32dePGjRETE4P09HTs2bMHo0aNwrFjxxTvq+P+LSpzs2bN1G7/AsDdu3cxefJkhIeHw8jIqMj5ymJfc3j2A5mbm0NXV7fAv0xSUlKKfBSZ1ExMTNCiRQvcuHFDcRatOucXk9HS0hI5OTl48uRJkfNIycrKCnXq1MGNGzcASJv3yy+/RHBwMI4ePYqaNWsqpqvzfi4qc2Gk3tcGBgZo0KAB2rZtCz8/P7Rs2RIrVqxQ6/1bVObCSL1/gddDqykpKbCzs4Oenh709PRw7NgxrFy5Enp6eortlsW+Zml+IAMDA9jZ2SEiIkJpekRERJGPIpNadnY24uLiYGVlhbp168LS0lIpf05ODo4dO6Y2+cVktLOzg76+vtI8SUlJuHLlilp8jrS0NNy9exdWVlYApMkrCAImTZqEvXv34siRI6hbt67S++q4n9+XuTDqsK//SxAEZGdnq+X+fV/mwqjD/v3kk09w+fJlxMTEKF5t27bFiBEjEBMTg3r16pXdvi7GCUzl3ptLTn799VchNjZWmDJlimBiYiLcvn1b6miCIAjC119/LURGRgq3bt0Szpw5I7i5uQkVK1ZU5Fu8eLEgl8uFvXv3CpcvXxaGDRtW5pecPH36VIiOjhaio6MFAMKyZcuE6OhoxWU7YjJ6e3sLNWvWFP7880/hwoULQvfu3UvttPd35X369Knw9ddfC6dOnRISEhKEo0ePCg4ODkKNGjUkyysIgjBhwgRBLpcLkZGRSpcPvHjxQjGPuu3n92VWt33t6+sr/P3330JCQoJw6dIl4ZtvvhF0dHSE8PBwQRDUb/++L7O67d93+e/Zs4JQdvuapVlMa9asEerUqSMYGBgIbdq0UTolXmpvrk/S19cXqlevLgwYMEC4evWq4v38/Hxh3rx5gqWlpWBoaCh8/PHHwuXLl8s049GjRwUABV6jRo0SnfHly5fCpEmThI8++kioUKGC4ObmJiQmJpZ53hcvXghOTk6ChYWFoK+vL9SuXVsYNWpUgSxlmVcQhELzAhA2b96smEfd9vP7Mqvbvh47dqzi94CFhYXwySefKApTENRv/74vs7rt33d5uzTLal/z0WBEREQi8TtNIiIikViaREREIrE0iYiIRGJpEhERicTSJCIiEomlSUREJBJLk4iISCSWJhERkUgsTSr3ZDIZ9u3bV+rbsba2xs8//6w269G0bb9PZGQkZDIZ0tPTpY5CWoylSVotJSUFn3/+OWrXrg1DQ0NYWlrC2dkZp0+fVsyTlJSk9Dg1dREQEIBKlSoVmP7PP//gs88+09ptE6kzPk+TtNrAgQORm5uL3377DfXq1cPDhw/x119/4fHjx4p53jzCSVNYWFiUy20TqQMeaZLWSk9Px4kTJ7BkyRJ069YNderUQfv27eHr6wtXV1fFfP8dnr19+zZkMhl27dqFLl26oEKFCmjXrh2uX7+Of/75B23btoWpqSl69eqFR48eKdbh6OiIKVOmKG3f3d0do0ePLjLfsmXL0KJFC5iYmKBWrVqYOHEinj17BuD1UOOYMWOQkZEBmUwGmUyG+fPnAyg4RJqYmIh+/frB1NQUZmZmGDJkCB4+fKh4f/78+WjVqhW2bt0Ka2tryOVyDB06FE+fPi0014dsWyaTYcOGDXBzc4OxsTGaNm2K06dP499//4WjoyNMTEzg4OCAmzdvKm3jwIEDsLOzg5GREerVq4cFCxbg1atXRe6rwoSGhqJRo0aoUKECunXrhtu3byu9n5aWhmHDhqFmzZowNjZGixYtsGPHDsX7W7ZsQZUqVQo8EmvgwIHw8vICAFy8eBHdunVDxYoVYWZmBjs7O5w/f/6DcpJ2YWmS1jI1NYWpqSn27dtX5LMCizJv3jzMmTMHFy5cgJ6eHoYNG4YZM2ZgxYoVOH78OG7evIlvv/1WpXw6OjpYuXIlrly5gt9++w1HjhzBjBkzAAAdO3bEzz//DDMzMyQlJSEpKQnTpk0rsA5BEODu7o7Hjx/j2LFjiIiIwM2bN+Hh4aE0382bN7Fv3z4cPHgQBw8exLFjx7B48eJCc4nd9hvfffcdvLy8EBMTgyZNmmD48OH4/PPP4evrqyiYSZMmKeY/fPgwRo4cia+++gqxsbHYsGEDAgIC8P3334ved3fv3sWAAQPg4uKCmJgYfPrpp5g1a5bSPFlZWbCzs8PBgwdx5coVfPbZZ/D09MTZs2cBAIMHD0ZeXh6Cg4MVy6SmpuLgwYMYM2YMAGDEiBGoWbMm/vnnH0RFRWHWrFnQ19cXnZO0kMrPZyFSY7t37xYqV64sGBkZCR07dhR8fX2FixcvKs0DQAgKChIEQRASEhIEAIK/v7/i/R07dggAhL/++ksxzc/PT2jcuLHi57cfUyQIgtCvXz/Fo84EQRDq1KkjLF++vMisu3btEqpUqaL4efPmzYJcLi8w33/XEx4eLujq6io93ujq1asCAOHcuXOCIAjCvHnzBGNjY6XnCk6fPl2wt7cvMouYbQvC6303Z84cxc+nT58WAAi//vqrYtqOHTsEIyMjxc9dunQRfvjhB6X1bt26VbCysioyz9t8fX2Fpk2bCvn5+YppM2fOFAAIT548KXI5FxcX4euvv1b8PGHCBKF3796Kn3/++WehXr16ivVWrFhRCAgIEJ2LtB+PNEmrDRw4EA8ePEBwcDCcnZ0RGRmJNm3aICAg4J3L2draKv67WrVqAIAWLVooTUtJSVEp29GjR9GzZ0/UqFEDFStWhJeXF9LS0vD8+XPR64iLi0OtWrVQq1YtxbRmzZqhUqVKiIuLU0yztrZGxYoVFT9bWVmpnP8NMfsqKysLmZmZAICoqCgsXLhQMRJgamqK8ePHIykpCS9evBC1zbi4OHTo0AEymUwxzcHBQWmevLw8fP/997C1tUWVKlVgamqK8PBwJCYmKuYZP348wsPDcf/+fQDA5s2bMXr0aMV6fXx88Omnn6JHjx5YvHhxgWFmKn9YmqT1jIyM0LNnT3z77bc4deoURo8ejXnz5r1zmf8Owb35Bfr2tPz8fMXPOjo6EN56NG1ubm6R679z5w5cXFxgY2ODPXv2ICoqCmvWrHnvcm8TBEGpOIqa/vaQ4tv5VSFmXwFQbC8/Px8LFixATEyM4nX58mXcuHEDRkZGorb59r4uzE8//YTly5djxowZOHLkCGJiYuDs7IycnBzFPK1bt0bLli2xZcsWXLhwAZcvX1b6Hnr+/Pm4evUqXF1dceTIETRr1gxBQUGiMpJ24tmzVO40a9asxK/LtLCwQFJSkuLnvLw8XLlyBd26dSt0/vPnz+PVq1f46aefoKPz+t+uu3btUprHwMAAeXl579xus2bNkJiYiLt37yqONmNjY5GRkYGmTZsW+/OI2XZxtWnTBvHx8WjQoEGx11HYn+GZM2eUfj5+/Dj69euHkSNHAnhd1jdu3CiwXz799FMsX74c9+/fR48ePZSO2gGgUaNGaNSoEaZOnYphw4Zh8+bN6N+/f7Gzk2bjkSZprbS0NHTv3h3btm3DpUuXkJCQgD/++ANLly5Fv379SnRb3bt3R0hICEJCQnDt2jVMnDjxnRfZ169fH69evcKqVatw69YtbN26FevXr1eax9raGs+ePcNff/2F1NTUQocue/ToAVtbW4wYMQIXLlzAuXPn4OXlha5du6Jt27bF/jxitl1c3377LbZs2aI4iouLi0NgYCDmzJkjeh3e3t64efMmfHx8EB8fj99//73AkHuDBg0QERGBU6dOIS4uDp9//jmSk5MLrGvEiBG4f/8+Nm7ciLFjxyqmv3z5EpMmTUJkZCTu3LmDkydP4p9//lHpHyOk+ViapLVMTU1hb2+P5cuX4+OPP4aNjQ3mzp2L8ePHY/Xq1SW6rbFjx2LUqFGKwqpbt26RR5kA0KpVKyxbtgxLliyBjY0Ntm/fDj8/P6V5OnbsCG9vb3h4eMDCwgJLly4tsJ43l8tUrlwZH3/8MXr06IF69eohMDBQpc8jZtvF5ezsjIMHDyIiIgLt2rVDhw4dsGzZMtSpU0cxz+jRo+Ho6FjkOmrXro09e/bgwIEDaNmyJdavX48ffvhBaZ65c+eiTZs2cHZ2hqOjIywtLeHu7l5gXWZmZhg4cCBMTU2V3tfV1UVaWhq8vLzQqFEjDBkyBL1798aCBQtU3QWkwWSCmC8HiIjKkKOjIxwdHRXXh5a2nj17omnTpli5cmWZbI80F0uTiNTK06dP0axZM8TFxcHU1LRUt/X48WOEh4djxIgRiI2NRePGjUt1e6T5eCIQEamVihUr4u7du2WyrTZt2uDJkydYsmQJC5NE4ZEmERGRSDwRiIiISCSWJhERkUgsTSIiIpFYmkRERCKxNImIiERiaRIREYnE0iQiIhKJpUlERCTS/wO5qU6jVixO9QAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot(dyn_cond.flux_river);" ] }, { "cell_type": "markdown", "id": "95af340f-0a6c-4012-b10f-d48cffd3281e", "metadata": {}, "source": [ "The flux in the cell below the river is has the same numerical but the opposite sign:" ] }, { "cell_type": "code", "execution_count": 8, "id": "da34daf3-f935-4f14-94bc-4de51fe89f18", "metadata": {}, "outputs": [ { "data": { "image/png": "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temhoaGoVasWkpKSchRQk7E0iYg0i8bfEcjCwiLTO39ERUXB3Nw8p6snIiLSGDkuzZ49e2LIkCHYuXMnoqKi8PDhQ+zYsQPffvstevfunRsZiYiINEKOz55dsGABFAoFPDw8kJqaCgAwMDDA999/j99++y3HAYmIiDRFrt17NikpCffu3YMQAuXLl4eJiUlurFaj8TtNIiLNovF3BPrAxMQEVatWza3VERERaZxslea4ceMkz6vpt0QiIiKSKluleeXKFUnzKRSK7KyeiIhII2WrNE+cOIHw8HCUKVMGhQrl+ARcIiIirZDtxvvqq6/w7Nkz1c89e/bEkydPciUUERGRJsp2aX580q2Pjw9ev36d40BERESaimOrREREEmW7NBUKRYYTfXjiDxER6bJsX6cphMDAgQNhZGQEAEhOToanp2eGx7v8888/OUtIRESkIbJdmgMGDFD7uV+/fjkOQ0REpMmyXZobNmzIzRxEREQajycCERERScTSJCIikoilSUREJBFLk4iISCKWJhERkUQsTSIiIolYmkRERBKxNImIiCRiaRIREUnE0iQiIpKIpUlERCQRS5OIiEgiliYREZFEOlGaL168QP/+/aFUKqFUKtG/f3/Ex8dnOX9KSgomTZqEqlWrwtTUFCVKlICHhwceP36cf6GJiEjr6ERp9unTByEhIfD19YWvry9CQkLQv3//LOdPSkrC5cuXMX36dFy+fBn//PMP7ty5gw4dOuRjaiIi0jYKIYSQO0ROhIWFoVKlSjh37hzq1KkDADh37hxcXV1x69YtVKhQQdJ6Ll68iNq1a+PBgwewt7eXtExiYiKUSiUSEhJgYWGR7c9ARES5I69/L2v9kebZs2ehVCpVhQkAdevWhVKpRFBQkOT1JCQkQKFQoEiRIlnO8/btWyQmJqq9iIio4ND60oyJiYGNjU2G6TY2NoiJiZG0juTkZEyePBl9+vT55F8mXl5equ9NlUolSpcune3cRESkfTS2NGfOnAmFQvHJ16VLlwAACoUiw/JCiEynfywlJQW9evVCeno6VqxY8cl5p0yZgoSEBNUrKioqex+OiIi0kr7cAbIyYsQI9OrV65PzlClTBteuXcOTJ08yvPf06VMUL178k8unpKSgR48eiIiIgL+//2fHv42MjGBkZPT58EREpJM0tjStrKxgZWX12flcXV2RkJCACxcuoHbt2gCA8+fPIyEhAfXq1ctyuQ+FeffuXZw4cQKWlpa5lp2IiHSTxg7PSuXs7IzWrVtj6NChOHfuHM6dO4ehQ4eiXbt2amfOVqxYEXv37gUApKamolu3brh06RK2bt2KtLQ0xMTEICYmBu/evZProxARkYbT+tIEgK1bt6Jq1apwc3ODm5sbqlWrhi1btqjNc/v2bSQkJAAAHj58iP379+Phw4eoUaMG7OzsVK8vOeOWiIgKFq2/TlNOvE6TiEiz8DpNIiIiDcHSJCIikoilSUREJBFLk4iISCKWJhERkUQsTSIiIolYmkRERBKxNImIiCRiaRIREUnE0iQiIpKIpUlERCQRS5OIiEgiliYREZFELE0iIiKJWJpEREQSsTSJiIgkYmkSERFJxNIkIiKSiKVJREQkEUuTiIhIIpYmERGRRCxNIiIiiViaREREErE0iYiIJGJpEhERScTSJCIikoilSUREJBFLk4iISCKWJhERkUQsTSIiIolYmkRERBKxNImIiCRiaRIREUnE0iQiIpKIpUlERCQRS5OIiEgiliYREZFELE0iIiKJWJpEREQSsTSJiIgkYmkSERFJxNIkIiKSiKVJREQkEUuTiIhIIpYmERGRRCxNIiIiiViaREREErE0iYiIJGJpEhERScTSJCIikoilSUREJBFLk4iISCKWJhERkUQsTSIiIolYmkRERBKxNImIiCRiaRIREUnE0iQiIpKIpUlERCQRS5OIiEgiliYREZFEOlGaL168QP/+/aFUKqFUKtG/f3/Ex8dLXn7YsGFQKBRYsmRJnmUkIiLtpxOl2adPH4SEhMDX1xe+vr4ICQlB//79JS3r7e2N8+fPo0SJEnmckoiItJ2+3AFyKiwsDL6+vjh37hzq1KkDAFizZg1cXV1x+/ZtVKhQIctlHz16hBEjRuDIkSNo27btZ7f19u1bvH37VvVzYmJizj8AERFpDa0/0jx79iyUSqWqMAGgbt26UCqVCAoKynK59PR09O/fHxMmTEDlypUlbcvLy0s1BKxUKlG6dOkc5yciIu2h9aUZExMDGxubDNNtbGwQExOT5XLz5s2Dvr4+Ro0aJXlbU6ZMQUJCguoVFRWVrcxERKSdNLY0Z86cCYVC8cnXpUuXAAAKhSLD8kKITKcDQHBwMJYuXYqNGzdmOU9mjIyMYGFhofYiIqKCQ2O/0xwxYgR69er1yXnKlCmDa9eu4cmTJxnee/r0KYoXL57pcoGBgYiNjYW9vb1qWlpaGsaPH48lS5bg/v37OcpORES6SWNL08rKClZWVp+dz9XVFQkJCbhw4QJq164NADh//jwSEhJQr169TJfp378/WrRooTatVatW6N+/PwYNGpTz8EREpJM0tjSlcnZ2RuvWrTF06FCsXr0aAPDdd9+hXbt2amfOVqxYEV5eXujcuTMsLS1haWmpth4DAwPY2tp+8mxbIiIq2DT2O80vsXXrVlStWhVubm5wc3NDtWrVsGXLFrV5bt++jYSEBJkSEhGRLlAIIYTcIbRVYmIilEolEhISeFIQEZEGyOvfyzpxpElERJQfWJpEREQSsTSJiIgkYmkSERFJxNIkIiKSiKVJREQkEUuTiIhIIpYmERGRRCxNIiIiiViaREREErE0iYiIJGJpEhERScTSJCIikoilSUREJBFLk4iISCKWJhERkUQsTSIiIolYmkRERBKxNImIiCRiaRIREUnE0iQiIpKIpUlERCQRS5OIiEgiliYREZFELE0iIiKJWJpEREQSsTSJiIgkYmkSERFJxNIkIiKSiKVJREQkEUuTiIhIIpYmERGRRCxNIiIiiViaREREErE0iYiIJGJpEhERScTSJCIikoilSUREJBFLk4iISCKWJhERkUQsTSIiIolYmkRERBKxNImIiCRiaRIREUnE0iQiIpKIpUlERCQRS5OIiEgiliYREZFELE0iIiKJWJpEREQSsTSJiIgkYmkSERFJxNIkIiKSiKVJREQkEUuTiIhIIpYmERGRRCxNIiIiiViaREREErE0iYiIJGJpEhERSaQTpfnixQv0798fSqUSSqUS/fv3R3x8/GeXCwsLQ4cOHaBUKmFubo66desiMjIy7wMTEZFW0onS7NOnD0JCQuDr6wtfX1+EhISgf//+n1zm3r17aNCgASpWrIiTJ0/i6tWrmD59OoyNjfMpNRERaRuFEELIHSInwsLCUKlSJZw7dw516tQBAJw7dw6urq64desWKlSokOlyvXr1goGBAbZs2ZLtbScmJkKpVCIhIQEWFhbZXg8REeWOvP69rJ/ra8xnZ8+ehVKpVBUmANStWxdKpRJBQUGZlmZ6ejoOHTqEiRMnolWrVrhy5QocHR0xZcoUdOrUKcttvX37Fm/fvlX9nJCQAOD9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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot(dyn_cond.flux_gw, cell_name='groundwater');" ] }, { "cell_type": "markdown", "id": "ffba4585-ce0d-44bb-b3ce-8531a7ca8f8f", "metadata": {}, "source": [ "The differences are with numerical errors:" ] }, { "cell_type": "code", "execution_count": 9, "id": "0ab94c0b-795c-4ab1-a60f-2fc21bab1955", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.allclose(dyn_cond.flux_gw, -np.array(dyn_cond.flux_river))" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.5" } }, "nbformat": 4, "nbformat_minor": 5 }