diff --git a/examples/simulations/reference/tortuosity_gdd.ipynb b/examples/simulations/reference/tortuosity_gdd.ipynb index 0610e53f1..a511d0464 100644 --- a/examples/simulations/reference/tortuosity_gdd.ipynb +++ b/examples/simulations/reference/tortuosity_gdd.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# `tortuosity_gdd`\n", + "# `tortuosity_bt`\n", "Calculation of tortuosity via geometric domain decomposition method" ] }, @@ -18,6 +18,7 @@ "import numpy as np\n", "import porespy as ps\n", "from porespy import beta\n", + "\n", "ps.visualization.set_mpl_style()" ] }, @@ -29,7 +30,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 2, @@ -39,7 +40,7 @@ ], "source": [ "import inspect\n", - "inspect.signature(beta.tortuosity_gdd)" + "inspect.signature(beta.tortuosity_bt)" ] }, { @@ -49,6 +50,11 @@ "# im\n", "Can be a 3D image:" ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [] } ], "metadata": { @@ -67,7 +73,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.11.5" } }, "nbformat": 4, diff --git a/examples/simulations/tutorials/finding_tortuosity_from_image.ipynb b/examples/simulations/tutorials/finding_tortuosity_from_image.ipynb index 60a8764fd..8b9668055 100644 --- a/examples/simulations/tutorials/finding_tortuosity_from_image.ipynb +++ b/examples/simulations/tutorials/finding_tortuosity_from_image.ipynb @@ -78,9 +78,7 @@ "source": [ "import matplotlib.pyplot as plt\n", "import porespy as ps\n", - "import numpy as np\n", - "\n", - "ps.visualization.set_mpl_style()" + "import numpy as np" ] }, { @@ -92,12 +90,11 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "id": "e0b6f5a8", "metadata": {}, "source": [ - "For the purposes of this tutorial, we will generate a 200 x 200 pixel image with a target porosity of 0.65." + "For the purposes of this tutorial, we will generate a 1000 x 1000 pixel image with a target porosity of 0.5." ] }, { @@ -115,26 +112,12 @@ "outputs": [ { "data": { - "text/plain": [ - "(-0.5, 199.5, -0.5, 199.5)" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] }, "metadata": { - "image/png": { - "height": 276, - "width": 276 - }, "needs_background": "light" }, "output_type": "display_data" @@ -145,7 +128,7 @@ "im = ps.generators.overlapping_spheres([200, 200], r=10, porosity=0.65)\n", "fig, ax = plt.subplots()\n", "ax.imshow(im, origin='lower', interpolation='none')\n", - "ax.axis(False)" + "ax.axis(False);" ] }, { @@ -182,14 +165,13 @@ "output_type": "stream", "text": [ "――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――\n", - "Results of tortuosity_fd generated at Fri Mar 17 18:20:54 2023\n", + "Item Description\n", "――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――\n", - "im Array of size (200, 200)\n", - "tortuosity 1.8776185599936215\n", - "formation_factor 2.9043946942938574\n", + "tortuosity 1.8776402699255308\n", + "formation_factor 2.9044282763069424\n", "original_porosity 0.646575\n", "effective_porosity 0.646475\n", - "concentration Array of size (200, 200)\n", + "concentration Image of size (200, 200)\n", "――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――\n" ] } @@ -200,20 +182,19 @@ ] }, { - "attachments": {}, "cell_type": "markdown", "id": "c5145cbb", "metadata": {}, "source": [ "The function outputs an object with several attributes: \n", "\n", - "|Attribute| Description |\n", - "|-|-|\n", - "|``tortuosity``|The **calculated tortuosity** is given by the equation:

$$\\tau = \\frac{D_{AB}}{D_{Eff}} \\cdot \\varepsilon $$

where $\\varepsilon$ is the ``effective_porosity``|\n", - "|``effective_porosity``|The effective porosity of the image after removing disconnected voxels |\n", - "|``original_porosity``|The porosity of the image as inputted|\n", - "|``formation_factor``|The formation factor is given by the equation:

$$\\mathscr{F}=\\frac{D_{AB}}{D_{Eff}}$$|\n", - "|``concentration``| Returns an image containing the concentration values from the simulation|" + "| Attribute | Description |\n", + "| --------- | ----------- |\n", + "| ``tortuosity`` | The **calculated tortuosity** is given by the equation:

$$\\tau = \\frac{D_{AB}}{D_{Eff}} \\cdot \\varepsilon $$

where $\\varepsilon$ is the ``effective_porosity``|\n", + "| ``effective_porosity`` | The effective porosity of the image after removing disconnected voxels |\n", + "| ``original_porosity`` | The porosity of the image as inputted|\n", + "| ``formation_factor`` | The formation factor is given by the equation:

$$\\mathscr{F}=\\frac{D_{AB}}{D_{Eff}}$$|\n", + "| ``concentration`` | Returns an image containing the concentration values from the simulation|" ] }, { @@ -249,7 +230,7 @@ { "data": { "text/plain": [ - "2.9043946942938574" + "2.9044282763069424" ] }, "execution_count": 4, @@ -258,23 +239,19 @@ }, { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] }, "metadata": { - "image/png": { - "height": 276, - "width": 337 - }, "needs_background": "light" }, "output_type": "display_data" } ], "source": [ - "plt.imshow(results.concentration,origin='lower', interpolation='none', cmap=plt.cm.plasma)\n", + "plt.imshow(results.concentration,origin='lower', interpolation='none', cmap=plt.cm.plasma);\n", "plt.colorbar()\n", "results.formation_factor" ] @@ -296,7 +273,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.5" + "version": "3.9.12" } }, "nbformat": 4, diff --git a/examples/simulations/tutorials/using_tortuosity_gdd.ipynb b/examples/simulations/tutorials/using_tortuosity_gdd.ipynb index 7dbd1ac38..1d2d48511 100644 --- a/examples/simulations/tutorials/using_tortuosity_gdd.ipynb +++ b/examples/simulations/tutorials/using_tortuosity_gdd.ipynb @@ -18,16 +18,7 @@ "cell_type": "code", "execution_count": 1, "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "C:\\Users\\jeff\\anaconda3\\envs\\dev\\lib\\site-packages\\tqdm\\auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", - " from .autonotebook import tqdm as notebook_tqdm\n" - ] - } - ], + "outputs": [], "source": [ "import numpy as np\n", "import porespy as ps\n", @@ -50,17 +41,7 @@ "outputs": [ { "data": { - "text/plain": [ - "(-0.5, 162.5, 130.5, -0.5)" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ] @@ -68,7 +49,7 @@ "metadata": { "image/png": { "height": 463, - "width": 572 + "width": 463 } }, "output_type": "display_data" @@ -77,9 +58,9 @@ "source": [ "# im = ps.generators.fractal_noise(shape=[100,100,100], seed=1)<0.8\n", "np.random.seed(1)\n", - "im = ps.generators.blobs(shape=[100,100,100], porosity=0.7)\n", - "plt.imshow(ps.visualization.show_3D(im))\n", - "plt.axis('off')" + "im = ps.generators.blobs(shape=[100, 100, 100], porosity=0.7)\n", + "plt.imshow(ps.visualization.sem(~im))\n", + "plt.axis('off');" ] }, { @@ -91,44 +72,528 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 6, "metadata": {}, "outputs": [ + { + "data": { + "text/html": [ + "
[22:18:34] WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m[22:18:34]\u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
[22:18:38] ERROR    Inlet/outlet rates don't match: 2.2810e+01 vs. -2.2802e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m[22:18:38]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.2810e+01\u001b[0m vs. \u001b[1;36m-2.2802e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.1896e+01 vs. -2.1890e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.1896e+01\u001b[0m vs. \u001b[1;36m-2.1890e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.6630e+01 vs. -2.6619e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.6630e+01\u001b[0m vs. \u001b[1;36m-2.6619e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.4781e+01 vs. -2.4769e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.4781e+01\u001b[0m vs. \u001b[1;36m-2.4769e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
[22:18:39] WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m[22:18:39]\u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.5437e+01 vs. -2.5431e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.5437e+01\u001b[0m vs. \u001b[1;36m-2.5431e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.7020e+01 vs. -2.7012e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.7020e+01\u001b[0m vs. \u001b[1;36m-2.7012e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.3387e+01 vs. -2.3378e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.3387e+01\u001b[0m vs. \u001b[1;36m-2.3378e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.5927e+01 vs. -2.5921e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.5927e+01\u001b[0m vs. \u001b[1;36m-2.5921e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
[22:18:41] ERROR    Inlet/outlet rates don't match: 2.6571e+01 vs. -2.6564e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m[22:18:41]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.6571e+01\u001b[0m vs. \u001b[1;36m-2.6564e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.5440e+01 vs. -2.5433e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.5440e+01\u001b[0m vs. \u001b[1;36m-2.5433e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.5395e+01 vs. -2.5391e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.5395e+01\u001b[0m vs. \u001b[1;36m-2.5391e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
[22:18:42] ERROR    Inlet/outlet rates don't match: 2.8140e+01 vs. -2.8126e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m[22:18:42]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.8140e+01\u001b[0m vs. \u001b[1;36m-2.8126e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, { "name": "stdout", "output_type": "stream", "text": [ - "Max distance transform found: 9.164999961853027\n", - "[3 3 3] <= [3,3,3], using 33 as chunk size.\n", - "[1.3940749221735982, 1.4540195658662034, 1.4319709358246486]\n" + "[1.3925109029722786, 1.3999150512069598, 1.3606684244878253]\n" ] } ], "source": [ - "from porespy.beta import tortuosity_gdd\n", - "out = tortuosity_gdd(im, scale_factor=3)\n", - "print(out.tau)" + "from porespy.beta import tortuosity_bt\n", + "out = tortuosity_bt(im, block_size=50)\n", + "print(out)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "The first three results in the returned object are the tortuosity values in the x, y, and z-direction respectively. The following results are time stamps on However, there is a more useful form of this function." + "The three values in the returned list are the tortuosity values in the x, y, and z-direction respectively. However, there is a more useful form of this function." ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 10, "metadata": {}, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "Max distance transform found: 9.164999961853027\n", - "[3 3 3] <= [3,3,3], using 33 as chunk size.\n" - ] + "data": { + "text/html": [ + "
[22:19:51] WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m[22:19:51]\u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
[22:19:56] ERROR    Inlet/outlet rates don't match: 2.1896e+01 vs. -2.1890e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m[22:19:56]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.1896e+01\u001b[0m vs. \u001b[1;36m-2.1890e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.3387e+01 vs. -2.3378e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.3387e+01\u001b[0m vs. \u001b[1;36m-2.3378e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.7020e+01 vs. -2.7012e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.7020e+01\u001b[0m vs. \u001b[1;36m-2.7012e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.6571e+01 vs. -2.6564e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.6571e+01\u001b[0m vs. \u001b[1;36m-2.6564e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.5927e+01 vs. -2.5921e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.5927e+01\u001b[0m vs. \u001b[1;36m-2.5921e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.6630e+01 vs. -2.6619e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.6630e+01\u001b[0m vs. \u001b[1;36m-2.6619e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.5440e+01 vs. -2.5433e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.5440e+01\u001b[0m vs. \u001b[1;36m-2.5433e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.8140e+01 vs. -2.8126e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.8140e+01\u001b[0m vs. \u001b[1;36m-2.8126e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
[22:19:58] ERROR    Inlet/outlet rates don't match: 2.2810e+01 vs. -2.2802e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m[22:19:58]\u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.2810e+01\u001b[0m vs. \u001b[1;36m-2.2802e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.5437e+01 vs. -2.5431e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.5437e+01\u001b[0m vs. \u001b[1;36m-2.5431e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.4781e+01 vs. -2.4769e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.4781e+01\u001b[0m vs. \u001b[1;36m-2.4769e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
           ERROR    Inlet/outlet rates don't match: 2.5395e+01 vs. -2.5391e+01                          _dns.py:109\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0m\u001b[1;31mERROR \u001b[0m Inlet/outlet rates don't match: \u001b[1;36m2.5395e+01\u001b[0m vs. \u001b[1;36m-2.5391e+01\u001b[0m \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m109\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" }, { "data": { @@ -151,109 +616,153 @@ " \n", " \n", " \n", - " Throat Number\n", - " Tortuosity\n", - " Diffusive Conductance\n", - " Porosity\n", + " eps_orig\n", + " eps_perc\n", + " g\n", + " tau\n", + " volume\n", + " length\n", + " axis\n", + " time\n", " \n", " \n", " \n", " \n", " 0\n", + " 0.705176\n", + " 0.705176\n", + " 25.439633\n", + " 1.414264\n", + " 125000\n", + " 50.0\n", " 0\n", - " 1.242083\n", - " 19.555253\n", - " 0.736038\n", + " 4.177472\n", " \n", " \n", " 1\n", - " 1\n", - " 1.404705\n", - " 15.727675\n", - " 0.669477\n", + " 0.721312\n", + " 0.721312\n", + " 26.571451\n", + " 1.385007\n", + " 125000\n", + " 50.0\n", + " 0\n", + " 3.947818\n", " \n", " \n", " 2\n", - " 2\n", - " 1.268947\n", - " 19.731037\n", - " 0.758717\n", + " 0.705616\n", + " 0.705592\n", + " 26.630394\n", + " 1.351823\n", + " 125000\n", + " 50.0\n", + " 0\n", + " 4.038600\n", " \n", " \n", " 3\n", - " 3\n", - " 1.520043\n", - " 15.566115\n", - " 0.717005\n", + " 0.651352\n", + " 0.651344\n", + " 21.896334\n", + " 1.517690\n", + " 125000\n", + " 50.0\n", + " 0\n", + " 3.931128\n", " \n", " \n", " 4\n", - " 4\n", - " 1.350561\n", - " 18.242258\n", - " 0.746584\n", + " 0.706072\n", + " 0.706024\n", + " 25.394748\n", + " 1.418468\n", + " 125000\n", + " 50.0\n", + " 1\n", + " 2.053686\n", " \n", " \n", " 5\n", - " 5\n", - " 1.405354\n", - " 15.285239\n", - " 0.650945\n", + " 0.717600\n", + " 0.717600\n", + " 27.020315\n", + " 1.354990\n", + " 125000\n", + " 50.0\n", + " 1\n", + " 3.961196\n", " \n", " \n", " 6\n", - " 6\n", - " 1.634790\n", - " 13.765760\n", - " 0.681943\n", + " 0.691104\n", + " 0.691016\n", + " 24.780591\n", + " 1.422723\n", + " 125000\n", + " 50.0\n", + " 1\n", + " 2.012183\n", " \n", " \n", " 7\n", - " 7\n", - " 1.388642\n", - " 17.317457\n", - " 0.728720\n", + " 0.679584\n", + " 0.679256\n", + " 22.810414\n", + " 1.519303\n", + " 125000\n", + " 50.0\n", + " 1\n", + " 1.946066\n", " \n", " \n", " 8\n", - " 8\n", - " 1.528631\n", - " 14.278425\n", - " 0.661407\n", + " 0.695480\n", + " 0.695480\n", + " 25.926987\n", + " 1.368600\n", + " 125000\n", + " 50.0\n", + " 2\n", + " 4.006884\n", " \n", " \n", " 9\n", - " 9\n", - " 1.481147\n", - " 14.914736\n", - " 0.669421\n", + " 0.683104\n", + " 0.683104\n", + " 23.386926\n", + " 1.490245\n", + " 125000\n", + " 50.0\n", + " 2\n", + " 3.937272\n", " \n", " \n", "\n", "" ], "text/plain": [ - " Throat Number Tortuosity Diffusive Conductance Porosity\n", - "0 0 1.242083 19.555253 0.736038\n", - "1 1 1.404705 15.727675 0.669477\n", - "2 2 1.268947 19.731037 0.758717\n", - "3 3 1.520043 15.566115 0.717005\n", - "4 4 1.350561 18.242258 0.746584\n", - "5 5 1.405354 15.285239 0.650945\n", - "6 6 1.634790 13.765760 0.681943\n", - "7 7 1.388642 17.317457 0.728720\n", - "8 8 1.528631 14.278425 0.661407\n", - "9 9 1.481147 14.914736 0.669421" + " eps_orig eps_perc g tau volume length axis time\n", + "0 0.705176 0.705176 25.439633 1.414264 125000 50.0 0 4.177472\n", + "1 0.721312 0.721312 26.571451 1.385007 125000 50.0 0 3.947818\n", + "2 0.705616 0.705592 26.630394 1.351823 125000 50.0 0 4.038600\n", + "3 0.651352 0.651344 21.896334 1.517690 125000 50.0 0 3.931128\n", + "4 0.706072 0.706024 25.394748 1.418468 125000 50.0 1 2.053686\n", + "5 0.717600 0.717600 27.020315 1.354990 125000 50.0 1 3.961196\n", + "6 0.691104 0.691016 24.780591 1.422723 125000 50.0 1 2.012183\n", + "7 0.679584 0.679256 22.810414 1.519303 125000 50.0 1 1.946066\n", + "8 0.695480 0.695480 25.926987 1.368600 125000 50.0 2 4.006884\n", + "9 0.683104 0.683104 23.386926 1.490245 125000 50.0 2 3.937272" ] }, - "execution_count": 4, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "from porespy.beta import chunks_to_dataframe\n", - "out2 = chunks_to_dataframe(im, scale_factor=3)\n", + "from porespy.beta import analyze_blocks\n", + "out2 = analyze_blocks(im, block_size=50)\n", "out2.iloc[:10,:]" ] }, @@ -261,44 +770,42 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The ``chunks_to_dataframe`` function returns a DataFrame containing the tortuosity, diffusive conductance, and porosity values of each slice, which can be used to obtain the previous results from OpenPNM.\n", - "\n", - "Assign the diffusive conductance values to the network and run the simulation." + "The ``analyze_blocks`` function returns a `DataFrame` containing the tortuosity, diffusive conductance, and porosity values of each block, which can be used to obtain the tortuosity by using OpenPNM to solve the resistor network as follows. Start by assigning the diffusive conductance values to the network, then run the simulation:" ] }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "1.3940749221735982" + "1.3606684244878253" ] }, - "execution_count": 5, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "net = op.network.Cubic([3,3,3])\n", + "net = op.network.Cubic([2, 2, 2])\n", "air = op.phase.Phase(network=net)\n", "\n", "air['throat.diffusive_conductance']=np.array(out2.iloc[:,2]).flatten()\n", "\n", - "fd=op.algorithms.FickianDiffusion(network=net, phase=air)\n", + "fd = op.algorithms.FickianDiffusion(network=net, phase=air)\n", "fd.set_value_BC(pores=net.pores('left'), values=1)\n", "fd.set_value_BC(pores=net.pores('right'), values=0)\n", "fd.run()\n", "\n", "rate_inlet = fd.rate(pores=net.pores('left'))[0]\n", "\n", - "# the length of one slice is removed from the total length since the network edge begins\n", + "# the length of one block is removed from the total length since the network edge begins\n", "# in the center of the first slice and ends in the center of the last slice, so the image\n", "# length is decreased\n", - "L = im.shape[1] - 33\n", + "L = im.shape[1] - 50\n", "A = im.shape[0] * im.shape[2]\n", "d_eff = rate_inlet * L /(A * (1-0))\n", "\n", @@ -319,16 +826,29 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 14, "metadata": {}, "outputs": [ + { + "data": { + "text/html": [ + "
[22:22:49] WARNING  Found non-percolating regions, were filled to percolate                              _dns.py:74\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m[22:22:49]\u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING \u001b[0m Found non-percolating regions, were filled to percolate \u001b[2m_dns.py\u001b[0m\u001b[2m:\u001b[0m\u001b[2m74\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, { "data": { "text/plain": [ - "1.396708006475956" + "1.4041847226215034" ] }, - "execution_count": 6, + "execution_count": 14, "metadata": {}, "output_type": "execute_result" } @@ -343,53 +863,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "With similar results, the main benefit to using the GDD method is the time save on larger images. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Extracting info from the DataFrame\n", - "A graph representing the tortuosity distribution can be created from the results." - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAB68AAAVYCAYAAAD4Bp3wAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAB7CAAAewgFu0HU+AAD3SUlEQVR4nOzdd5wV9b0//vcuSxGWXXqPIESwYFRABLtiiRUVNYoKaK4aW4yxx0RRk5tEMcb2U6NRhFgTNZpEbAhWUBAiooCKgEpn6R2W8/vDr+fuoe2ye3aH8nzexz7uzGc+8/m8Z+bsMframclJpVKpAAAAAAAAAIAE5SZdAAAAAAAAAAAIrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAALZybdq0iZycnMjJyYmpU6cmXU5WlOWYvt+ek5NTtcVVke3xupbV/Pnz49Zbb439998/6tevH9WqVUufi4EDByZdHrH9//4BAABbp7ykCwAAANhWHXbYYfHWW29tdFvNmjWjsLAwCgoKomnTprHvvvtGp06d4ogjjojWrVtXcaWw9Zg6dWoccsgh8c033yRdyjZt6tSpscsuu2R1zMceeyz69euX1TEBAAC2hPAaAACgEqxatSrmzJkTc+bMiS+//DLee++9iIjIzc2No48+On7+85/Hsccem3CVmdq0aRPTpk2LiIgpU6ZEmzZtki1oG+Lcld1FF12UDq532mmnOPLII6Nly5ZRrVq1iIjYfffdkywPysV3AAAAZIfwGgAAIAv222+/6Nq1a3p93bp1sWjRoli4cGF8+umn6VBj3bp18corr8Qrr7wS5557btx7771RWFiYVNlQpWbNmhWvvfZaRHz3dIKPP/44dt1114Sr2jYVFBTEpZdeutk+H374YYwaNSoiIlq0aBGnnHLKZvv7wwEAACBpwmsAAIAsOO6446J///6b3D5r1qwYPHhw3HPPPfHtt99GRMTgwYPj008/jXfeeSdq1669yX23x/chb4/HtKV2xHMwZsyY9PLBBx8suK6ABg0axH333bfZPv3790+H17vuumup/QEAAJKWm3QBAAAAO4JmzZrFNddcExMmTIjTTz893T5mzJjo06dPgpVB1VmwYEF6uXnz5glWAgAAwNZIeA0AAFCF8vPz45lnnokTTjgh3fbcc8/F8OHDkysKqsiaNWvSy7m5/pMEAAAAmfybIgAAsM077rjjIicnp0I/M2bMqLJ6c3Jy4vHHH4+6deum2373u99tsn+bNm3SdW7uUdPffPNN3HLLLXHIIYdE06ZNo2bNmlG3bt3YZZddomvXrnHeeefFU089FfPmzUvvM3Xq1PTY37+XOyJil1122eh52ljIXnL79z7++OO44ooromPHjtGgQYPIycmJk08+eYuPaX0fffRRXHjhhdGhQ4fIz8+P+vXrR5cuXeJ3v/tdLFq0qNT9Sx5vmzZtyjTnpmqt6Lnb0nMwcuTIuOyyy2LPPfeM+vXrR61ataJVq1bx4x//OO67775YtmxZmY5nY9dr0qRJ8Ytf/CJ23333yM/Pj4KCgth7773jhhtuyPi8lMfw4cPT85133nnp9scff3yDc7S5R+9n4/jL81ktq6+++ioKCgrS4//pT38qdZ+f/exnGZ/HsnyGk1TRz0k2zn+2fg8iIqZNmxYPPPBAnHXWWdGxY8coLCyM6tWrR8OGDeNHP/pRXHzxxTFy5MhN7p+N78/yfG8DAMB2LQUAALANW7duXap+/fqpiCj3T5s2bco196GHHpoe4+abb97i/S+//PL0/jk5OamioqKN9mvdunW635QpUzba58EHH0zttNNOZTreAw88ML3flClTtuhcDRs2bIO5S25PpVKpm2++OVWtWrUN9u3Zs+cWHdP6495yyy2p3NzcTdbWvHnz1FtvvbXZc17yeFu3br3ZvqXVWtFzV5ZzkEqlUkuXLk395Cc/KXX85s2bp15++eVSj2f98/rAAw+katasuclxGzZsmBo1alSZztXGDBs2rMznaGO/R9k8/vJ8VrfEoEGD0mPUqFEjNXbs2E32/ec//5num5ubm3r77bfLNefm3Hzzzek5Dj300C3atzI+JxU5/9n+Pbj66qtTOTk5ZfpcnnXWWally5ZtMEZFvwPK+70NAADbs7wAAADYhi1cuDB69+690W2TJk2KN954IyK+u8v1+OOP32i/H/3oR5VW3+acfvrpce+990ZERCqVinfeeSd69uy5xeP885//jJ/97Gfp9YKCgujevXu0atUq8vLyYtGiRfH555/H+PHjY/Xq1Rn7FhQUxKWXXhoREYMGDYolS5ZERESfPn0y7gz/XsuWLTdbyx133BG33HJLRES0a9cuunbtGrVr146pU6dG9erVt/jYvnfPPffEzTffnB53//33j5o1a8ann34aH374YUREzJw5M4477rh48803o2vXruWeq6yyfe42Zvny5XHEEUekjzEiokWLFnHwwQdHfn5+fPnll/Huu+9GcXFxzJw5M0466aR46qmn4rTTTivT+AMHDoyLL744IiI6dOgQXbp0iZ122ikmTpwY7733XqRSqSgqKooTTzwxJkyYEPXq1dviY2jZsmX6PE2cODGGDh0aERG77bZb9OjRI6Pv+tetMo+/Mj6r5557bgwZMiSeeuqpWL16dfTu3Ts++uij2GmnnTL6zZgxI37605+m13/1q1/FwQcfXK45q0JlfE625PxXxufgm2++iVQqFTk5OdGhQ4fo0KFDNGzYMKpXrx5FRUUxduzYmDx5ckREPPXUU7Fo0aL497//nXHXeEW+AyryvQ0AANu1ZLNzAACAytO/f//0XWs///nPsz5+Re+8XrZsWSovLy89xg033LDRfqXdobv33nunt1922WUbvUMwlUqllixZknr22WdT1113Xbnm2ZQocXdgXl5eqrCwMPXCCy9s0G/lypVbNFfJcWvUqJGqVatWavDgwRv0GzlyZMZ4HTp0SK1YsWKjY2bzzust7VOefS6++OJ0n2rVqqX+9Kc/pYqLizP6fP7556nOnTun+xUUFKS++uqrTc5b8rzWrFkz1bhx49SQIUM26PfWW2+lCgoK0n1vueWWMh3X5jz22GPp8fr27Vtq/2wff3k+q1tq4cKFGdf2Zz/7Wcb2devWpY488sj09v333z+1Zs2acs+3Odm68zpbn5Pynv/K+D24/fbbU4899lhq7ty5m+zz9ttvp374wx+mx9zY98/3tvQ7IFvf2wAAsL3xzmsAAGC7NW7cuPRyUndXb07t2rWjVatW6fXZs2dv8RhLly6Njz/+OCIifvCDH8Q999wTtWvX3mjf/Pz8OP300+MPf/hD+Qoug+Li4njppZc2+s7amjVrlnvc1atXx8CB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hfHZZ5/FlClTNtj//PPPj7vvvjt9F+amtGnTJqZNmxYREVOmTIk2bdqktw0fPjwOP/zw9HrTpk1j3333jWbNmkVeXl7MmjUrPvroo5g5c2a6z8EHHxzDhw/PeHRuRMQbb7wRRx11VHp9//33j06dOkXt2rXTbRdffHG0a9cuY7+S73ot679ibu6YNjbu3XffHVdccUVEfBdmde/ePWrUqBGffvppfPDBB+l+tWvXjqFDh0a3bt02OffatWujS5cu8fHHH6fbOnXqFPvss08UFxfHuHHjYuzYsRER0b9//3jsscdKrbU8564s52D58uVx2GGHxahRo9JtrVq1ioMOOijy8/Nj8uTJ8fbbb0dxcXFEfHdn71NPPRWnnXbaJo9/S69Xyc/5sGHD4rDDDit1n00ZOHBgnHfeeRER0bdv383e+R6R/eMvz2d1S7z55ptx1FFHxbp16yInJydeeeWVOProozfa9/TTT49//OMfERHRsWPHGDVqVMajp7Ohf//+6TuHDz300Bg+fHiZ962Mz0l5z3+2Pwdz5syJjh07xty5c9NtnTp1ij322CNycnJizJgx6VD5mGOOiSZNmqRfXfDYY49Fv379NhhzS74Dsvm9DQAA250UAADAdui2225LRcQGP4899ljW5jj00EM3OsfmfnJzc1PHHXdc6rXXXivzPK1bt07vP2XKlIxtI0eOTOXl5ZV5/tNOOy21ePHiTc51zjnnbHb/YcOGbbBPye3ZOKZNjXvzzTencnJyNllbs2bNNlrfxnz11Veptm3bbnKsnJyc1I033phat25dmWpNpbb83JV13CVLlqTOOOOMUq9t8+bNUy+//HKpx76l16vk57ys53dTHnvssfRYffv2LdM+2Tz+8nxWy6qoqCjVsmXL9PhXXHHFZvvPnz8/1apVq3T/yy+/POs13XzzzenxDz300C3atzI+JxU5/9n+PXj//fdTjRo12uxYJ598cmrhwoWpvn37lumfIWX9Dsj29zYAAGxP8gIAAGA79Otf/zpat24df/nLX+KTTz6JRYsWRUTEPvvsUyXz16hRIwoKCqKwsDB9V12XLl2iR48e8YMf/CBr8+y///4xZ86ceOONN+Ldd9+NsWPHxuTJk6OoqCiKi4ujoKAg2rVrF926dYtzzjkn4+7wjRk0aFAcf/zx8cQTT8R///vfmDdvXqxcuTJr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4IMPxtSpU+Ptt9+OQw89dIN+gwYNSt9xXPJu7dIsW7YsjjnmmHjvvffSbbvsskt06dIl6tevHwsWLIj3338/pk+fHitWrIjLL788Fi9eHL/61a82Ot6cOXPSwXWrVq1ijz32iGbNmkXt2rVj6dKlMWHChBgzZkykUqn473//GwcffHD897//jYYNG5Zaa3FxcfTq1SuGDh0aNWrUiAMOOCDatWsXK1eujHfeeSe+/vrriIh45ZVX4pe//GU88MADZT4P2xvhNQAAAAAAAJB1ffr0iQcffDAivgupNxZeDx48OCIi6tWrFyeddFKZx77kkkvSwXW7du3iwQcfjCOPPDKjT3FxcfzlL3+JK6+8MlatWhU33XRTHH744dG9e/cNxmvZsmX8/ve/j9NOOy1++MMfbnTOKVOmxMUXXxyvvvpqfPvtt3HdddfFI488Umqtf//732PVqlVx7LHHxsMPPxwtW7ZMb1u7dm3ccMMNMWDAgIiIeOihh+K6667boru6tyfCawAAAAAAALZ9GwkkK+TMMyOuuGLzfe6+O+Lpp7M774gRm98+Z05Ez57l378Kde/ePdq3bx+ff/55/OMf/4j77rsv45HY77//fnz55ZcREXHGGWdErVq1yjTuO++8k35PdqtWreLdd9+NZs2abdCvWrVqcfHFF0etWrXi/PPPj+Li4rj11ltjyJAhG/Q98cQT48QTT9zsvLvsskv861//ii5dusS4cePiiSeeiDvuuCPq16+/2f1WrVoVBx98cLz00kuRl5cZz+bl5cXtt98eb731VowaNSpSqVQ888wzcd1115V2GrZLwmsAAAAAAAC2fSNHZne8soTh06Zlf97SrF5d9XNWwLnnnhu/+c1vYvHixfHPf/4zzjrrrPS27wPoiC17ZPif/vSn9PLvf//7jQbXJfXr1y9uv/32mDhxYrz66qsxb968aNSo0RYcxf+pXr16nH322TFu3LhYuXJlvPvuu6WG3hERd9111wbB9fdycnLivPPOi1GjRkVEpP//jkh4DQAAAAAAAFSKc889N2666aZIpVIxaNCgdHi9atWqeOaZZyLiu8d+H3jggWUab+3atfH6669HxHd3Lffq1avUfXJycuLwww+PiRMnRiqVivfff3+zjyhfuHBhjBw5Mj799NMoKiqKpUuXxrp169LbJ06cmF7+73//W2p43bZt2+jcufNm++y7777p5alTp5ZyRNsv4XUluvLKK+PPf/5zer1169aV8mFbunRpDB48OJ599tn44osvYu7cudG4ceNo3759nHHGGXHOOedEfn5+1ucFAAAAAACAzWndunUccsgh8dZbb8Xrr78es2bNimbNmsVLL70UCxcujIjvAu6yGjduXCxbtiwiImrVqhXXXHNNmfYreTfzN998s9E+3377bVx//fXxj3/8I1atWlWmcefNm1dqn7322qvUPg0bNkwvL1q0qExzb4+E15Xkww8/jHvuuafS5xkxYkScffbZMWXKlIz26dOnx/Tp02PYsGFxxx13xJNPPhn7779/pdcDAAAAAAAAJfXp0yfeeuutKC4ujieeeCKuuuqq9CPDc3Jytii8njFjRnp56dKlcf/9929xPQsWLNigbezYsdGjR4+NbtucJUuWlNqnsLCw1D7Vq1dPL69Zs2aLatieCK8rwZo1a+J//ud/Mh4fUBnGjRsXxxxzTPqXonr16nHEEUdEq1at4ptvvok333wz1q5dG1999VUcffTR8d5770XHjh0rtSYAAAAAAIBEdOuW3fFaty5bn2zPW5oaNap+zgo6/fTT4/LLL4/ly5fHoEGD4txzz41XXnklIiIOOuigaNu2bZnHysZdyWvXrs1YX7VqVfTq1SsdXDdt2jR+9rOfxeGHHx7t2rWLBg0axE477RQ5OTkRETFw4MA477zzIiLKlAd+vx+lE15Xgj/+8Y/xySefRERE796948knn8z6HGvWrIlTTz01HVzvvffe8eKLL0brEl+kU6dOjZNPPjk+/vjjWLx4cfTq1Ss+/fTTTb4MHgBgx/JURMxcr615RJxVosdTMXO9Ps2jeZxVog8Je+qpiJnrXcfmzSPOco0AAAB2OCNGVP2cV1zx3U9VatIkmWOtgLp168bJJ58cTz75ZIwbNy6uu+66dIDcp0+fLRqrTp066eV99tknxo4dW+H6nnvuufRTjlu1ahWjR4+Opk2bbrJ/We62pnykmFk2ceLE+O1vfxsREWeffXYceeSRlRJeP/zwwzF58uSIiKhfv34MGTIkmjdvntGnTZs2MWTIkNhzzz1jwYIF8fnnn8ejjz4aF154YdbrAQDY9twTESPXa+sWJcPre+KeGLlen27RTXi9NbnnnoiR613Hbt2E1wAAALCV6dOnTzozGzhwYER8987q008/fYvGKRkqf/XVV7Fu3brIzc2tUG1Dhw5NL1955ZWbDa4jIqZNm1ah+di0il1JMqRSqfif//mfWLVqVdSvXz/+9Kc/VdpcJZ/ff/XVV28QXH+vefPmcdVVV210PwAAAAAAAKgKRx55ZLRo0SKjrWfPnmV6H3RJ++yzT9SsWTMiIhYvXhwjsnAXesn3aO+5556l9n/77bcrPCcbJ7zOogceeCDee++9iIi44447okmTJpUyz5dffhmfffZZer1fv36b7V9y+7hx49J3bAMAAAAAAEBVqFatWvTu3TujbUsfGR4RsdNOO8URRxyRXr/rrrsqXFvJO7eXL1++2b4fffRRjBo1qsJzsnHC6yz59ttv4/rrr4+IiIMPPjjOP//8SpvrzTffTC+3b99+g79SWV/Lli1j1113Ta8PGzas0moDAAAAAACAjbnxxhtj1KhR6Z9jjjmmXONcd9116eXnnnsu/Rjyspg1a9YGbW3btk0vv/jii5vcd/ny5V7PW8mE11ly8cUXx5IlS6JGjRrx0EMPRU5OTqXNNWHChPRyp06dyrRPyX4l9wcAAAAAAICqUK9evejSpUv6p1q1auUa59BDD42+ffum188///y45pproqioaKP9V61aFS+++GKccsopcdJJJ22w/YQTTkgvDxo0KO68884oLi7O6PPll1/G0UcfHWPGjIk6deqUq25Kl5d0AduDp59+Ov79739HxHd/6bH77rtX6nyTJk1KL7du3bpM++y8887p5YkTJ5Z77vHjx0f37t3LtW823jkAAAAAAAAADz30UMycOTNee+21SKVSMWDAgLjnnntiv/32i3bt2sVOO+0UixYtismTJ8cnn3wSK1eujIiIzp07bzDWMcccE4ceemi89dZbkUql4uqrr477778/OnXqFIWFhfHFF1/E+++/H8XFxdGyZcu44oor4tprr63qQ64U5c39xo8fn+VKviO8rqCioqK44oorIiJi1113jRtvvLFK5vxe06ZNy7RPs2bN0svz588v99xLly6NkSNHlnt/AAAAAAAAqKiaNWvGyy+/HLfcckvceeedsXz58li9enW899578d577210n+rVq0e3bt02uu2ZZ56J4447LsaMGRMREVOmTIkpU6Zk9Nljjz3i73//e3z44YfZPZgEbW25n/C6gq688sqYM2dORHz3Fx41a9as9DmXLl2aXt5pp53KtE/JfiX3p+p06dJlo+9RgKQ1a9YsRo8enXQZAFuV7/+5PefFORHr/THuRx99FK16tkqmMDbw4pw561+i+Oijj6Jnq+3vGvlnNgAAAGSqVq1a3HrrrXH55ZfHoEGD4o033ojPPvss5s2bF2vWrImCgoJo3bp17LXXXnH44YfHcccdF40bN97oWE2bNo33338/HnnkkXj66adj/PjxsXz58mjSpEl06NAhfvKTn8TZZ58dtWvX3q7C662N8LoCXnvttRg8eHBERPTt2zcOP/zwKpn3+8caRETUqFGjTPuUDNVXrFiR9Zoo3axZs2L69OlJlwEAlEH6n9urN9y2ZvUa/0zfimzkEsXqNa4RAAAAVLXhw4dnbaynn346nn766TL3b9y4cVx11VVx1VVXVWjemjVrxqWXXhqXXnrpZvv169cv+vXrV+E+JbVp0yZSqVSZ+2+vhNfltGzZsrjooosiIqJhw4YxYMCAKpu7Vq1a6eXVqzf2n+s2tGrVqvRyWe/WppLk5Ea1OvWTrgKieNmCiNS6pMsA2PZUy4tq+YVJV8H/k7N8UcS6tZltuXlRrfb2c438MxsAAADYUQivy+nGG2+MqVOnRkTEnXfeGY0aNaqyufPz89PLZb2LumS/kvuXZ+6OHTuWe38iqtWpH60ufTzpMiC+vb9vFC8tSroMgK1btbyIyAxGazRtF80vvTOZethAjcFXRcyYlNnWrF20Onf7uUb+mQ0AAABUlk29A7w048ePr5RXFQuvy2HMmDFx7733RkTE4YcfHn379q3S+Rs2bJhenj17dpn2Kfmu5QYNGpR77o4dO8aIESPKvT8AAAAAAACwdShv7te9e/cYOXJklqsRXpfLuHHjYt267x7b9/XXX2/2LxLmzp2bXp45c2ZG39/85jdx/PHHb/H8HTp0iCFDhkRExLRp08q0z9dff51e3m233bZ4TgAAAAAAAIDKJLyuoMmTJ8fkyZPL1Hf16tXxwQcfpNdLBttbYvfdd08vjx07tkz7jBkzZqP7AwAAAAAAAGwNcpMugC13+OGHp5cnTZoUM2fO3Gz/GTNmxBdffLHR/QEAAAAAAAC2BsLrcujXr1+kUqky/Tz22GPp/Vq3bp2xrV+/fuWaf9ddd4099tgjvf74449vtn/J7XvttVe0a9euXPMCAAAAAAAAVBbh9TbqkksuSS8PGDAgZs+evdF+s2bNigEDBqTXL7300kqvDQAAAAAAAGBLCa+3IlOnTo2cnJz0z/DhwzfZ98ILL0zfQV1UVBTHHntsfP311xl9pk2bFscee2zMnz8/IiLat28fP/3pTyutfgAAAAAAAIDyyku6AMqnevXq8dxzz8VBBx0US5cujbFjx8YPf/jD6NGjR7Rq1Sq++eabePPNN2PNmjUREVG3bt147rnnIi/PJQcAAAAAAAC2PpLMbdjee+8dr732Wpx99tkxZcqUWLNmTbzyyisb9Gvbtm088cQT0bFjxwSqBAAAAAAAACid8Hob17179xg3blwMGjQonn322fj888+jqKgoGjZsGO3bt48zzjgj+vTpE/n5+UmXCgCwlXkxIlav11YjYy33J3Wj+QV3ZbTlFPuf0FuTC079TVQvXpvRtqaaawQAAACwLfJfdSpZv379ol+/fmXq26ZNm0ilUls8R35+flxyySVxySWXbPG+AAA7rial9siZlxt5ixtVQS2UV1GdekmXAAAAAECW5CZdAAAAAAAAAAAIrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMQJrwEAAAAAAABInPAaAAAAAAAAgMTlJV0AAAAko3tEjFyvrVtEjEivFQ9dFNO6npDRo8a0DtH8gTsrvTrK5vnBV0WnGZMy2sa06BCnnusaAQAAAGxr3HkNAAAAAAAAQOKE1wAAAAAAAMBWberUqZGTkxM5OTnRpk2bpMuhknhsOAAAAAAAAFAhhx12WLz11lsb3VazZs0oLCyMgoKCaNq0aey7777RqVOnOOKII6J169ZVXClbM+E1AAAAAAAAUGlWrVoVc+bMiTlz5sSXX34Z7733XkRE5ObmxtFHHx0///nP49hjj024yq1TTk5OejmVSiVYSdUQXgMAAAAAAABZs99++0XXrl3T6+vWrYtFixbFwoUL49NPP41p06al21955ZV45ZVX4txzz4177703CgsLkyqbrYDwGgAAAAAAAMia4447Lvr377/J7bNmzYrBgwfHPffcE99++21ERAwePDg+/fTTeOedd6J27dob7NOmTZsd4s7jHV1u0gUAAAAAAAAAO45mzZrFNddcExMmTIjTTz893T5mzJjo06dPgpWRNOE1AAAAAAAAUOXy8/PjmWeeiRNOOCHd9txz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r69bty4WL14cCxcujM8++yymTJmywT7nn39+3H333RmPya4q/fr1i6+++ipuu+22iIj4z3/+Ey+//HJ07NgxOnbsGAUFBbFs2bKYPn16jB07NhYuXLjZ8QoKCuL555+Po446KubMmRPz5s2Ls846K37xi1/EAQccEI0bN46VK1fG5MmTY8yYMbFixYrYe++9NzpWr1694pVXXomIiOuvvz5eeeWV2HPPPaNmzZrpPjfeeGP6UeXbOuE1AAAAAAAAkDWjRo2KUaNGldovNzc3fvzjH8cvfvGLOOqoo6qgsk279dZbo2PHjnHllVfGjBkzIpVKxSeffBKffPLJJvfp2rVrVK9efaPbfvSjH8WHH34Yffr0ibfffjsiImbPnh0vvPDCRvvn5+dvtL1fv37x5JNPxrBhwyKVSsWwYcNi2LBhGX0uu+wy4TUAAAAAAABAaWrUqBEFBQVRWFgYTZs2jX333Te6dOkSPXr0iB/84AdJl5d2xhlnRM+ePePpp5+OV199NUaNGhVz586NpUuXRp06daJly5ax++67x8EHHxzHHXdctG/ffrPjtW7dOt56660YOnRo/P3vf4933nknZs6cGYsXL446depE69ato3PnznH88cfHSSedtNEx8vLy4tVXX41HH300nnvuufjkk09i/vz5sXr16so4BYkTXgMAAAAAAAAVMnz48Eodv02bNht9Z/T6ytJnc2rWrBl9+/aNvn37Vmicknr06BE9evQo9/7Vq1ePiy66KC666KKs1bS1El4DALCDujsipq3X1joirkivrbt4Rcw//uGMHnkLm0TBez0rvTrK5rzRL0bLRXMy2qYXNonHurhGAAAAANsa4TUAADuopyNi5Hpt3aJkeJ06bXUs6fpiRo8a0zoIr7ciJ054OzrNmJTRNqZFB+E1AAAAwDYoN+kCAAAAAAAAAEB4DQAAAAAAAEDihNcAAAAAAAAAJE54DQAAAAAAAEDihNcAAAAAAAAAJE54DQAAAAAAAEDihNcAAAAAAAAAJE54DQAAAAAAAEDihNcAAAAAAAAAJE54DQAAAAAAAEDihNcAAAAAAAAAJE54DQAAAAAAAEDihNcAAAAAAAAAJE54DQAAAAAAAEDihNcAAAAAAAAAJE54DQAAAAAAAEDihNcAAAAAAAAAJE54DQAAAAAAAEDihNcAAAAAAAAAJC4v6QIAACAZI0rtUa1HYbS69PEqqIXyOvXcO5MuAQAAAIAscec1AAAAAAAAAIkTXgMAAAAAAACQOI8NBwAAAAAAACrF8uXL49VXX42hQ4fGBx98ELNnz46ioqIoLi6OevXqRdOmTWPvvfeO/fbbL3r27Bk777zzZsdr06ZNTJs2baPbdtpppygsLIyCgoJo0aJFdOrUKTp37hxHHnlkNGnSpMw1T506NXbZZZeNbsvJyYk6depEYWFhFBYWRtu2baNz587RuXPnOOqoo6JWrVplnocNCa8BAAAAAACArFqxYkXcf//9cccdd8ScOXM22mf27Nkxe/bsGDduXAwePDh+/vOfxwEHHBC/+tWv4vjjjy/XnCtWrIhZs2bF559/HsOHD4+IiOrVq8fJJ58cV155ZXTv3r0ihxWpVCqWLl0aS5cujenTp8dnn30W//73vyMion79+nHuuefGVVddVWoIz8YJrwEAAAAAAICs+eabb+Lkk0+OMWPGZLQ3btw4OnXqFI0aNYratWvHvHnzYvr06TFmzJhYu3ZtRES8//77ccIJJ8Sf/vSnuPLKKzc7T48ePWK33XZLrxcXF8fChQtjwYIFMW7cuJg5c2ZERKxZsyb+/ve/x3PPPRdXXnll/O53v4uaNWuW+Xj69OkTdevWTa+vXr06FixYEHPmzImxY8fGkiVLIiJiwYIFcc8998TAgQPjnnvuib59+5Z5Dr4jvAYAAAAAAACyYurUqdG9e/eYNWtWRHz3mO3TTjstrrvuuujUqVPk5ORssM+SJUti6NChcd9998XQoUMjImLZsmWlznXOOedEv379Nrl9ypQp8de//jUefPDBKCoqinXr1sWdd94ZEyZMiH/961+Rm5tbpmO65ZZbok2bNhvdtm7duhgzZkzcd9998eSTT8aaNWti8eLF0a9fv5g1a1Zcd911ZZqD75TtigAAAAAAAABsxsqVK+O0005LB9e1a9eOF154IZ599tno3LnzRoPriIi6devGySefHG+88UZ8+OGHsddee2Wlnl122SV++9vfxqeffhqHHXZYuv3ll1+Oa6+9Nitz5ObmRpcuXWLgwIHx3nvvZTwu/IYbboiXXnopK/PsKITXAADsoOZExLfr/WS+fynVaF2sLZiX8VNcZ2GVV8qmNVy2MJotnpfx03DZwqTLAgAAgB3SHXfcER999FF6/YknnoiePXtu0Rj77bdfjB49Ok455ZSs1dW0adN45ZVXolOnTum2P//5zzF58uSszRHxXe1vvvlmFBQURMR378f+5S9/GcXFxVmdZ3vmseEAAOygekbEyPXaukXEiPTaumeWxPSu/TJ61JjWIZo/cGdlF0cZPfz8bdFpxqSMtjEtOsSp57pGAAAAUJWWL18ed999d3r9rLPOipNPPrlcY9WoUSP23HPPLFX2nZo1a8aTTz4Ze+yxR6xbty6Ki4vjD3/4Qzz88MNZnaddu3YxYMCAuPDCCyMiYvLkyfH000/H2WefndV5tlfuvAYAAAAAAAAq5O9//3sUFRWl16+88soEq9m4Dh06xPHHH59e/8c//hHr1q3L+jx9+vSJxo0bp9efffbZrM+xvRJeAwAAAAAAABUybNiw9PIuu+wS++23X4LVbNrpp5+eXl64cGF88sknWZ+jZs2aceKJJ6bX33333UilUlmfZ3skvAYAAAAAAAAq5J133kkv77///glWsnnr1/bBBx9U+jzz58+PL774olLm2d545zUAAAAAAADbge5ZHu/MiLiilD53R8TTWZ53RCnb50REzwrsXzm+/vrr9PLuu++eSA1lseuuu0Zubm76ceGzZ8+ulHk6dOiQsT579uxo3759pcy1PRFeAwAAAAAAsB0YmeXxyhKGT6uEeUuzOoE5N2/x4sWxdu3a9Hq9evVK3efll1+Ol19+ebN9br311mjQoEFFy8uQk5MTdevWjUWLFkVExIIFC7I6/vcKCwsz1itrnu2N8BoAAAAAAAAotyVLlmSs16lTp9R9Pvzww7j//vs32+fqq6/OengdEZGfn58Or9evPZtzlFRZ82xvvPMaAAAAAAAAKLe6detmrC9btiyhSsqmZJBcUFBQ6XNU5jzbG+E1AAAAAAAAUG4FBQWRl/d/D3xeuHBhqfv0798/UqlUxs+UKVMqscrvrFu3LiNYrow7uyMifWd3Zc+zvfHYcAAAAAAAALYD3bI8Xusy9sn2vKWpkcCcpdt5553jq6++ioiICRMmJFzNpn3++eeRSqXS682aNauUeSZOnJixXlnzbG+E1wAAAAAAAGwHRiQw5xX/76cqNYlkjnXzDj744HR4/eGHHyZczaZ98MEHGevdulXOHwKUnKdx48bRrl27Splne+Ox4QAAAAAAAECFHH744enlr776KkaPHp1gNZv27LPPppcbNmwYe+yxR9bnWLlyZfzrX/9Krx900EFZn2N7JbwGAAAAAAAAKuS0006Lhg0bptfvuuuuBKvZuAkTJsSQIUPS62eccUbk5ORkfZ7HH388ioqK0utnnnlm1ufYXgmvAQAAAAAAgAqpU6dOXH755en1J598Ml566aUEK8q0atWqOPvss9Pvu87Ly4trr7026/N8+eWXGeN26NAhTjvttKzPs70SXgMAAAAAAAAVdt1118W+++6bXu/du3f8+9//TrCi78yZMyd+/OMfx9ixY9Nt1113XbRp0yar84wePTp69OgRixcvjoiI3Nzc+POf/xy5uSLZsnKmAAAAAAAAgAqrVatWPPfcc9GkSZOIiFi2bFn07NkzevfunREcr2/dunUxfPjwuPDCC7Naz9SpU+Omm26KPfbYI4YPH55uP+WUU+K2227Lyhzr1q2L0aNHx3nnnRcHHnhgfP311+ltd955Z/z4xz/Oyjw7irykCwAAAAAAAAC2D7vsskt8+OGH0bNnz/j4449j3bp18dRTT8VTTz0VTZo0ic6dO0ejRo2iTp06sWzZsvj2229j3LhxGe+Ijog4/PDDM96hvTF/+9vfYvTo0en14uLiWLRoUSxYsCDGjRsXM2bMyOifm5sb1157bdx6661b9K7rm2++OerWrZteX716dSxcuDDmzp0bY8aMSd9p/b169erF/fffH7179y7zHHxHeA0AAAAAAABkTevWreP999+Pe+65J+68886YN29eRHz3+O4hQ4Zscr+cnJw46KCD4qqrroqePXuWOs/QoUNj6NChpfarUaNGnHLKKfHLX/4yunbtWvYD+X8GDRpUpn4NGzaMc889N6666qpo1arVFs+D8BoAAAAAAADIstq1a8f1118fl19+ebzyyisxdOjQ+OCDD2LOnDlRVFQU69ati3r16kXjxo1jn332if322y9OOOGEaNu2bbnnrFmzZhQWFkZhYWG0bNkyOnXqFJ07d46jjz46GjVqlLVjq1OnTnqetm3bRufOnaNr165x5JFHRs2aNbM2z45IeA0AAAAAAABUijp16kSvXr2iV69eWRlv6tSpWRlnc9q0aROpVKrS52FDwmsAAHZQP4+I09dra56xlvNArag35ycZbdWWNKjcstgiAzufFP/pMD+jbW6+awQAAACwLRJeAwCwgzqr1B65/6gZBU1PqYJaKK+X9jg06RIAAAAAyJLcpAsAAAAAAAAAAOE1AAAAAAAAAIkTXgMAAAAAAACQOOE1AAAAAAAAAIkTXgMAAAAAAACQOOE1AAAAAAAAAIkTXgMAAAAAAACQuLykCwAAgGTcGBGfr9fWPiJ+l15bd9PymHvM7zN65M1rGfVf61Pp1VE2V789KHaZPz2jbUqDljHgENcIAAAAYFsjvAYAYAf1ZkSMXK+tW8Za6tA1sfxH72W01ZjWoXLLYoscMO3j6DRjUkbbmBauEQAAAMC2yGPDAQAAAAAAAEic8BoAAAAAAACAxAmvAQAAAAAAAEic8BoAAAAAAACAxAmvAQAAAAAAAEic8BoAAAAAAACAxAmvAQAAAAAAAEic8BoAAAAAAACAxAmvAQAAAAAAAEic8BoAAAAAAACAxAmvAQAAAAAAAEic8BoAAAAAAACAxAmvAQAAAAAAAEic8BoAAAAAAACAxAmvAQAAAAAAAEic8BoAAAAAAACAxAmvAQAAAAAAAEic8BoAAAAAAACAxOUlXQAAACSjcUS03EhbCfNyotqihhlN1ZYVVmpVbJmi2oUxM7/hBm0AAAAAbHuE1xUwf/78GD16dIwaNSpGjx4d06ZNi3nz5sXcuXMjJycn6tevHx07dozDDjss+vTpEy1brv8fR8uvf//+ccstt2zRPoMHD45zzjknazUAAGzbXiq1R7WfFESrSx+vgloorwt63ZR0CQAAAABkifC6Avr06RP/+c9/Nrl9xYoVMWPGjHjttdeif//+ccMNN8RNN90Uubme1g4AAAAAAABQkvA6S5o2bRq77bZb7LzzzlGnTp1Yvnx5fPHFFzFq1KhYu3ZtrF69Om655ZaYOnVqDBw4MKtz77ffftG1a9dS+3Xo0CGr8wIAAAAAAABki/C6Ag477LDo2bNnHHnkkbHLLrtstM+sWbPiiiuuiGeffTYiIh5//PE48cQTo1evXlmr47jjjov+/ftnbTwAAAAAAACAqia8roCrr7661D7NmjWLp59+OubMmRPDhw+PiIiHHnooq+E1AAAAAAAAwLbOy5erQE5OTpx//vnp9TFjxiRYDQAAAAAAAMDWR3hdRZo0aZJeXrJkSYKVAAAAAAAAAGx9hNdVZMKECenl1q1bJ1gJAAAAAAAAwNbHO6+rwIwZM2LAgAHp9Wy/73r27NkxePDg+Pzzz2PZsmVRv3792HnnnePggw+Otm3bZnUuAIDtxycRsXS9tvyI2Cu9ltpjbazaeUJGj5xVO0WN2W0quzjKqMPcqVFn9YqMtmU1dopJjdskUxAAAAAA5Sa8riQrVqyIKVOmxJAhQ+L222+POXPmRERE+/bt4/rrr8/qXA8++GA8+OCDG9124IEHRv/+/ePII4/Mylzjx4+P7t27l2vfESNGZKUGAIDsuDAiRq7X1i0i/u9/s6y7d1nM6npNRo8a0zpE8wfurPTqKJvfv3JvdJoxKaNtTIsOceq5rhEAAABAacqb+40fPz7LlXxHeJ0l7777bhx88MGb7fPjH/84nnjiiSgsLKyiqiLee++9OProo+NXv/pV/Pa3v63weEuXLo2RI9f/j7wAAAAAAADAtmZry/2887oK1KtXL5544okYMmRINGjQIGvjduzYMW655ZZ4++23Y/bs2bF69epYvHhxjBkzJm699dZo1KhRRESkUqn43e9+F3/84x+zNjcAAAAAAABANrnzOktatGgRl156aUR8FxYvWbIkJk2aFGPGjImFCxfG2WefHY888kg8+OCD0b59+wrP9/Of/zz69++/QXv16tVj3333jX333TcuvPDCOOmkk+LDDz+MiIjf/OY3cdppp0W7du0qPD8AAAAAAABANgmvs6Rt27Zx3333bdA+Y8aMuPHGG2PgwIExbNiw6NatWwwbNiz23nvvCs1Xlju4mzZtGv/+979jt912i/nz58eaNWvirrvu2midAAAAAAAAAEkSXleyFi1axGOPPRYFBQVxzz33xIIFC+Kss86KTz75JKpVq1bp8zdu3DguvfTSuO222yIiYsiQIRUaLz8/Pzp27JiN0gAAAAAAAIAEdevWrVz7jR8/PpYuXZrlaoTXVeb3v/99DBw4MBYvXhwTJkyIIUOGxAknnFAlc/fo0SMdXn/11VexevXqqFGjRrnG6tixY4wYMSKb5QEAAAAAAAAJKG/u17179xg5cmSWq4nIzfqIbFTt2rXjgAMOSK+/9957VTZ38+bNM9aLioqqbG4AAAAAAACAshBeV6H69eunl6syQF62bFnGep06dapsbgAAAAAAAICyEF5XoZkzZ6aXGzRoUGXzjh07Nr1cp06dKCgoqLK5AQAAAAAAAMpCeF1FioqKMp4Zv/vuu1fZ3AMHDkwvH3LIIVU2LwAAAAAAAEBZ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5vUvfvGLLFmyJD179syoUaPWed4111yTuXPnpra2Nl/+8pfbsEMAAAAAAAAAilC18PqBBx7IySefnFKplLPPPvtdzX322Wfzve99L6VSKbvttlt23nnnNuoSAAAAAAAAgCJULbz+n//5n8rxF7/4xXc190tf+lK+973vJUmuv/564TUAAOutvu+01HZ5vdnYoqXdMmXWtpXz8k7Ls3TAU81qSku7pfMqNRSr/tVpqV222j527pYpW2xbTEMAAAAAtFjVwuvx48cnSerr61NXV/eu5tbV1aW+vj7PPPNM7rvvvrZoDwCA95jzR/wsQ+qmNBt7qKE+Iy67sHK+8meL8vIe32xW07mhPv1WqaFY5//1ZxkyY7V93Lo+I0bZIwAAAID2pkO1FpoyZUpKpVIGDx7covkf/vCHUy6XM2XKlLUXAwAAAAAAANCuVC28nj9/fpKkV69eLZr/5rx58+a1VksAAAAAAAAAbCCqFl537do1SdLY2Nii+W/O69ixY6v1BAAAAAAAAMCGoWrh9RZbbJEkefLJJ1s0/4knnmh2HwAAAAAAAAA2HlULrz/ykY+kXC7n0UcfzbPPPvuu5k6ZMiWPPvpoSqVSdt555zbqEAAAAAAAAICiVC28Puyww5Ik5XI5p512WlauXLlO81asWJHTTjst5XI5STJ8+PA26xEAAAAAAACAYlQtvD766KPTv3//JMmdd96ZESNGZO7cue84Z+7cuRkxYkTuuuuulEql9O3bN8cee2w12gUAAAAAAACgiqoWXnfp0iUXX3xx5fzPf/5ztt1225x00kn57//+7zzwwAN58skn88ADD+T3v/99TjrppGy33Xa5+eabK3MuvvjidOvWrVotr5Np06bl8ssvz8iRI7PzzjunZ8+e6dSpU3r16pUPf/jDOemkk3LPPfe0+rqjR49OqVR6Vz/XXHNNq/cBAAAAAAAA0BpqqrnYiBEj8uMf/zj/9m//liRpbGzML3/5y/zyl79cY/2brwovlUo5//zz89nPfrZqva7Nww8/nJNPPjkPPPDAGq/Pmzcv8+bNy+OPP55f/OIX2X///XPllVdmwIABVe4UAAAAAAAAYMNX1fA6Sc4444x88IMfzFe/+tVMmzatElC/nbq6ulx66aU5/PDDq9ThupkyZcpbgusddtghgwYNSp8+fTJ//vzcf//9eemll5Ikd999d4YOHZq///3v2X777Vu1l9133z177LHHWuvq6+tbdV0AAAAAAACA1lL18DpJDj/88Dz77LO54YYb8te//jUTJ07MrFmz8tprr2XTTTdN3759s9dee2X48OEZMWJEOnbsWESb6+T9739/TjjhhIwcObLyTe83rVy5MldccUW+9rWvZfHixZkxY0aOOeaY3H///SmVSq3Ww+GHH57Ro0e32v0AAAAAAAAAqq2Q8DpJOnbsmKOOOipHHXVUUS2sl379+uWKK67IqFGj3jZc79ChQ7785S+nV69eGTFiRJJk4sSJuf3223PooYdWs10AAAAAAACADVqHohtor/bbb78cf/zx6/RU+Kc//elmr/X+y1/+0patAQAAAAAAALQ7wusq2WeffSrH06ZNK64RAAAAAAAAgA2Q8LpKVv3G9YoVKwrsBAAAAAAAAGDDU9g3r5OksbExL7zwQhYsWJCmpqZ1njds2LA27KptPP7445Xj973vfa1671mzZuXqq6/OM888k0WLFqVnz54ZMGBA9t1332y//fatuhYAAAAAAABAW6h6eL1w4cJccskl+d3vfpcpU6akXC6/q/mlUinLly9vo+7axosvvpi77rqrcn7wwQe36v3Hjh2bsWPHrvHaPvvsk9GjR7fampMnT87QoUNbNHfChAmt0gMAAAAAAACw/lqa+02ePLmVO3lDVcPrhx56KJ/4xCfy8ssvJ8m7Dq7bq2984xuVV4UPGDAgn/jEJ6q29vjx43PIIYfk29/+ds4777z1vl9jY2MmTpzYCp0BAAAAAAAARdrQcr+qhddz5szJoYcemjlz5vzf4jU1GThwYHr37p1OnTpVq5WquvLKK3PDDTdUzs8///x06dKlVe49aNCgfPazn80BBxyQ+vr69OzZM0uWLMk///nP3Hzzzbnkkksye/bslMvlfP/738+mm26ab33rW62yNgAAAAAAAEBrqlp4feGFF2bOnDkplUrZdNNN84Mf/CDHHntsunfvXq0Wqm7SpEk5+eSTK+ef+9zncvTRR7fKvb/2ta9l9OjRbxnv1KlTdt111+y666458cQTc8QRR+SBBx5Ikpx99tn5zGc+k4EDB7ZKDwAA7dkFt49Kj00am43NX9z8d9MOYzZJry+c2nxs8cb7+2t7dMG+o9JjyWr72NUeAQAAALRHVQuvb7nlliRvfLP65ptvzkc/+tFqLV2I559/Pp/4xCeyZMmSJMngwYPz85//vNXu36tXr7XW9O3bNzfffHN23HHHzJ07N01NTbnooovyn//5n63WBwBAe3X/1F3WWlO6p1NqB23cv7e2d/dvu0vRLQAAAADQSqoWXj///PMplUrZZ599NvrgeubMmfnYxz5W+bb39ttvn9tuuy2bb7551XvZYostctppp+V73/tekuTWW29dr/t17949gwYNao3WAAAAAAAAgALttddeLZo3efLkNDY2rr3wXapaeL1y5cokyY477litJQsxZ86cfOxjH8vUqVOTJP369cvf/va39OvXr7CeDjrooEp4/dxzz2XZsmXp3Llzi+41aNCgTJgwoTXbAwAAAAAAAArQ0txv6NChmThxYit3k3Ro9Tu+jfe9731Jktdff71aS1bdwoULc9hhh+WJJ55IkvTu3Tt33HFHtttuu0L7Wj04nzNnTkGdAAAAAAAAAKxZ1cLrQw45JOVyOZMmTarWklW1aNGiHH744ZX//zbbbLPcdttt+dCHPlRwZ2/0tqra2tqCOgEAAAAAAABYs6qF16eeemq6dOmSKVOm5I477qjWslWxZMmSHHHEERk/fnySZJNNNsktt9ySj3zkIwV39oaHH364clxbW5vNNtuswG4AAAAAAAAA3qpq4fUOO+yQiy66KOVyOaNGjaq8Wru9a2pqypFHHpm77rorSdKlS5fceOON2WeffQru7P/85je/qRwPGzasuEYAAAAAAAAA3kbVwuskOfnkk3PFFVdkwYIF2X333fONb3wj48ePz8KFC6vZRqtZsWJFjj766Nxyyy1Jkpqamlx33XU5+OCD23TdxsbGda69+OKL8/e//71yPnLkyLZoCQAAAAAAAGC91FRroY4dOzY7L5fLueSSS3LJJZe8q/uUSqUsX768NVtrkXK5nBNOOCHXX399kqRDhw65+uqrc8QRR7T4ntOmTct2221XOR83blz233//t9RdeOGFGT9+fE455ZQMHz48Xbt2fUvNq6++mvPOO6/Zf7677bZbPv/5z7e4PwCAjcn5Iy5Jfd+GZmNTZtXlrD9+rXK+8meNmXnAGc1qOs+qS+9VaijW+bdekvrZq+1jn7qcNdweAQAAALQ3VQuvy+VySqVS5f+WSqVm19qbyy67rNnruAcOHJj77rsv991331rn9u7dO+eee26L1y6Xy7njjjtyxx13pGvXrhk0aFAGDhyYzTffPEuXLs3UqVPzwAMPZNmyZZU5dXV1+dOf/pQOHar6sD0AwAarvm9DhtRNecea8k4rsmwtNRSrfnZDhsywRwAAAAAbg6qF18n/hdTtMaxe3SuvvNLs/Nlnn82zzz67TnPr6urWK7xe1ZIlSzJp0qRMmjRpjddLpVKOPPLIjB07Nr17926VNQEAAAAAAABaW9XC65UrV1ZrqY3eN7/5zQwbNiwTJkzIxIkT09DQkNmzZ2fu3Lnp0KFDevbsmfr6+uy9994ZOXJkdtxxx6JbBgAAAAAAAHhHVX3yemMyevTojB49ulXvue22267TU+m1tbU58MADc+CBB7bq+gAAAAAAAABF8QFkAAAAAAAAAAonvAYAAAAAAACgcIW/NnzhwoWZPn165s2bl+XLl2fYsGFFtwQAAAAAAABAlRUSXr/22msZO3Zsrr322kyePLnynedSqZTly5c3q33llVdywQUXJEkGDx6cUaNGVb1fAAAAAAAAANpW1cPre+65J8ccc0xmzpyZJJXg+u1sueWWueuuu/Lwww+nR48e+dznPpfOnTtXo1UAAAAAAAAAqqSq37y+7777cthhh2XmzJmV0PqDH/xg+vXr947zTj755JTL5cyfPz933HFHNVoFAAAAAAAAoIqqFl4vWbIkn//857N06dKUy+Uce+yxeemll/LEE09kxIgR7zh3xIgR6dDhjVb/9re/VaNdAAAAAAAAAKqoauH1r371q8yYMSOlUimnnHJKfvOb36z1ies39erVK/X19UmShx56qC3bBAAAAAAAAKAAVQuv//znPydJNt100/zoRz961/M/+MEPplwu55///GdrtwYAAAAAAABAwaoWXj/++OMplUoZNmxYunfv/q7n9+rVK0kyf/78Vu4MAAAAAAAAgKJVLbyeM2dOkqR///4tml8ul5MkK1eubLWeAAAAAAAAANgwVC28rq2tTZIsXry4RfOnT5+eJOndu3er9QQAAAAAAADAhqFq4XW/fv1SLpfzxBNPvOu5TU1NmTBhQkqlUrbbbrs26A4AAAAAAACAIlUtvN53332TJI888kimTp36ruZeeeWVWbBgQZJk//33b+3WAAAAAAAAAChY1cLrz372s0ne+Hb1aaedts7frp48eXLOPPPMJEmpVMoXvvCFNusRAAAAAAAAgGLUVGuhAw88MPvtt1/uueee3HHHHTniiCMyduzYbLPNNmusb2pqyuWXX55vf/vbWbhwYUqlUj7zmc9kp512qlbLAABsxKbMqlvrWOnJjunUd2Czsc5rmEdxpvRZwz6uYQwAAACADV/Vwuskufrqq7PHHntk1qxZufXWW7Pddttl6NChmT17dqXmjDPOyLPPPpt77rknjY2NKZfLSZLtttsuY8eOrWa7AABsxM7649fWWtPh9O7pd9qFVeiGljpr+Nr3EQAAAID2oarh9TbbbJM777wzRx55ZJ5++umsWLEi48ePT/LGK8GT5D/+4z+SpBJaJ8mHPvSh3HTTTenRo0c12wUAAAAAAACgSqr2zes3ffCDH8z//u//5txzz82WW26Zcrm8xp8k6dGjR0aPHp2JEydmu+22q3arAAAAAAAAAFRJVZ+8flO3bt1y9tln56yzzsqkSZMyYcKEzJgxIwsWLEhtbW369u2bPffcM/vss086d+5cRIsAAAAAAAAAVFEh4XVl8Zqa7LXXXtlrr72KbAMAAAAAAACAglX9teEAAAAAAAAAsDrhNQAAAAAAAACFE14DAAAAAAAAULiqffN6zJgxrXavc845p9XuBQDAe9PeAx9Jj00am43NX9w990/dpXJe3q8piwbf16ymw+Lu6bZKDcXae9oj6bFktX3s2j33b7tLMQ0BAAAA0GJVC69Hjx6dUqnUKvcSXgMAsL7OPOTqDKmb0mzsoYb6jLhsl8r5ynMWZ/YeP2xW07mhPt1WqaFYZ/796gyZsdo+bl2fEcJrAAAAgHanauF1kpTL5XdVXyqV3jKntQJwAAAAAAAAADYcVQuvv/vd765T3cqVK7NgwYI8/vjjue+++9LU1JSuXbvmq1/9ampra9u4SwAAAAAAAACKsMGF16uaOXNmvv71r+cPf/hDbrvtttx6663Zeuut26A7AAAAAAAAAIrUoegG3km/fv3y+9//PiNHjszjjz+eo446KitWrCi6LQAAAAAAAABa2QYdXr/p4osvziabbJIJEybkmmuuKbodAAAAAAAAAFpZuwive/bsmWHDhqVcLufqq68uuh0AAAAAAAAAWlm7CK+T5H3ve1+S5Kmnniq4EwAAAAAAAABaW7sJrxcuXJgkmTNnTsGdAAAAAAAAANDa2kV4vWTJkowbNy5J0rt374K7AQAAAAAAAKC1bfDhdVNTU0466aS88sorKZVK2XPPPYtuCQAAAAAAAIBWVlOthe699951rl2+fHnmzJmTRx55JL/73e/S0NBQuXbiiSe2RXsAAAAAAAAAFKhq4fX++++fUqnUornlcjlJcsIJJ+Swww5rzbYAAAAAAAAA2ABU9bXh5XK5RT+bbrppfvzjH2fs2LHVbBcAAAAAAACAKqnak9fDhg1b5yevO3XqlE033TTbbbdd9thjj3ziE59It27d2rhDAAAAAAAAAIpStfD67rvvrtZSAAAAAAAAALQzVX1tOAAAAAAAAACsifAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMLVVGuhq666qirrHHvssVVZBwCA9u2sP56e2i6vNxtbtLRbs/MOp9dmy+O+02ystFoNxTrrsNNTu2y1fexsjwAAAADao6qF18cff3xKpVKbrlEqlYTXAACskymztl1rTenJmnR54YNt3wwtNmWLbYtuAQAAAIBWUrXwOknK5fJbxkql0rsaBwAAAAAAAGDjU7Xw+rjjjkuSNDU15frrr09TU1PK5XI6d+6cQYMG5X3ve19qa2uzaNGivPjii5k8eXKWLl2aUqmUzp075zOf+UxqaqqatQMAAAAAAABQJVVLg6+44orMnDkzn/70p7Ns2bL0798/Y8aMyVFHHZXa2tq31C9atCj//d//ndGjR2f69Ol59tln8z//8z/p169ftVoGAAAAAAAAoEo6VGuh5cuX5zOf+UwefPDB7Lbbbnn00UfzxS9+cY3BdZLU1tbmy1/+ch555JEMGTIkDz74YI488sgsX768Wi0DAAAAAAAAUCVVC6+vvfbaTJgwITU1Nfn973+fXr16rdO83r1757rrrkvHjh3zj3/8I1dddVUbdwoAAAAAAABAtVUtvL766quTJMOGDct22233ruZuv/322W+//VIul3Pttde2RXsAAAAAAAAAFKhq4fXTTz+dUqmU7bffvkXz3wy8p0yZ0pptAQAAAAAAALABqKnWQnPmzEmSzJ8/v0XzFyxY0Ow+AACwPi4/dkwG9Z/abGzy9IH5ylXnVM5X/H5hXtrnuGY1nacPzJar1FCsy28Yk0Evr7aPWw3MV460RwAAAADtTdXC6y222CIvvfRSxo0bl6ampnTq1Gmd5zY1NWXcuHFJkj59+rRViwAAvIf0rl2Qfps3/4eR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vjzPPfdcDjnkkIwfPz6DBg1qlbUBAAAAAAAAWpPwej29//3vzwknnJCRI0emf//+za6tXLkyV1xxRb72ta9l8eLFmTFjRo455pjcf//9KZVK67VuU1NTRowYUQmud95559x4442pq6ur1EybNi2f+tSn8uijj2bhwoU58sgj88QTT6SmxrYDAAAAAAAAGxbfvG6hfv365YorrsjTTz+db33rW28JrpOkQ4cO+fKXv5xrrrmmMjZx4sTcfvvt673+5ZdfnqlTpyZJevbsmVtvvbVZcJ0k2267bW699db07NkzSfLMM8/k17/+9XqvDQAAAAAAANDahNcttN9+++X4449Px44d11r76U9/OnvssUfl/C9/+ct6r3/ppZdWjs8888z069dvjXX9+vXLGWecscZ5AAAAAAAAABsK4XWV7LPPPpXjadOmrde9/vnPf+bJJ5+snB9//PHvWL/q9ccee6zyxDYAAAAAAADAhkJ4XSWrfuN6xYoV63Wvu+66q3K8ww47ZOutt37H+v79++cDH/hA5XzcuHHrtT4AAAAAAABAaxNeV8njjz9eOX7f+963Xvd66qmnKsdDhgxZpzmr1q06HwAAAAAAAGBDUFN0A+8FL774YrOnpQ8++OD1ut+UKVMqx3V1des0Z8CAAZXjp59+usVrT548OUOHDm3R3AkTJrR4XQAAAAAAAKB1tTT3mzx5cit38oZCw+tHHnkk9913X1588cXMmzcvK1asyK9+9asiW2oT3/jGNyqvCh8wYEA+8YlPrNf95syZUznu27fvOs3ZaqutKsdz585t8dqNjY2ZOHFii+cDAAAAAAAAG4YNLfcrJLy+/vrrM3r06Gavry6XyymVSm8Jr2fNmpUhQ4akqakpH/3oR/PHP/6x2u2ulyuvvDI33HBD5fz8889Ply5d1uuejY2NleNu3bqt05xV61adDwAAbNhWLJ6fJJk5c2a22WabYpuBJK+88kpWrFiRjh07Zssttyy6HajYaqutMmnSpKLbAAAA1kPVw+uTTz45l19+eZI3Auu16du3bw466KBcc801uemmmzJ9+vT079+/rdtsFZMmTcrJJ59cOf/c5z6Xo48+er3vu2TJkspx586d12nOqoH566+/vt49AAAAVfL//nvTypUrM3369IKbgf/jzyQAAACtrarh9Xe+85384he/qJwfeuihOfDAA/PXv/4148aNe9t5xx13XK655pqUy+Xccsst+cpXvlKNdtfL888/n0984hOVoHnw4MH5+c9/3ir37tq1a+V42bJl6zRn6dKlleN1fVobAADYgJQ6pGNtz6K7gKxo/H+fsvJnkg3EikXzkvLKotsAAABaQdXC62effTY//vGPkyQ9evTIDTfckAMOOCBJ8sILL7xjeH3AAQeke/fuWbRoUe6+++4NPryeOXNmPvaxj+Xll19Okmy//fa57bbbsvnmm7fK/bt37145XtenqFetW3V+S9YeNGhQi+cDAAAt07G2Z7Y57cqi24A0/PiIpLzSn0k2GC9detz//aMKAADgXdlrr71aNG/y5Mlt8qniqoXXv/jFL7J8+fKUSqX88pe/rATX66JDhw7ZeeedM378+DzxxBNt2OX6mzNnTj72sY9l6tSpSZJ+/frlb3/7W/r169dqa/Tu3btyPGvWrHWa82aQniS9evVq8dqDBg3KhAkTWjwfAAAAAAAA2DC0NPcbOnRoJk6c2MrdJB1a/Y5v484770ySDBw4MCNGjHjX8+vq6pIkL730Uqv21ZoWLlyYww47rBKw9+7dO3fccUe22267Vl2nvr6+ctzQ0LBOc1544YXK8Y477tiq/QAAAAAAAACsr6o9ed3Q0JBSqZQ999yzRfM322yzJMlrr73Wmm21mkWLFuXwww/PpEmTkrzR72233ZYPfehDrb7WBz/4wcrxww8/vE5zHnrooTXOBwB4r/rzY8Py0AvN/1Hf9PlbNjsvXd853Zd+vNlYzWo1FOvPHxyWh7ZebR83t0cAAAAA7VHVwutFixYlafn3lt98Z3rXrl1brafWsmTJkhxxxBEZP358kmSTTTbJLbfcko985CNtst6qr1yfMmVKZs6c+Y6vJZ8xY0aeffbZNc4HAHivumL8J9da0+GybunV4StV6IaWumK3te8jAAAAAO1D1V4b/uZ3ml955ZUWzX/66aeTJFtssUWr9dQampqacuSRR+auu+5KknTp0iU33nhj9tlnnzZb8wMf+EB22mmnyvmVV175jvWrXh88eHAGDhzYZr0BAAAAAAAAtETVwuuBAwemXC7nH//4x7ueO3369Dz88MMplUrZeeed26C7llmxYkWOPvro3HLLLUmSmpqaXHfddTn44IPbfO1TTz21cnzBBRdk1qxZa6x7+eWXc8EFF1TOTzvttDbvDQAAAAAAAODdqlp4fcghhyRJZs6cmRtuuOFdzf3Od76TFStWJEk+9rGPtXpvLVEul3PCCSfk+uuvT5J06NAhV199dY444ogW33PatGkplUqVn7vvvvtta0888cTKE9Rz5szJ8OHD88ILLzSraWhoyPDhwzN37twkyQ477JAvf/nLLe4PAAAAAAAAoK1U7ZvXxx9/fH7wgx9k6dKl+epXv5oPf/jD+cAHPrDWeWPGjMmVV16ZUqmUnj17ZtSoUVXodu0uu+yy/OY3v6mcDxw4MPfdd1/uu+++tc7t3bt3zj333PVav1OnTrnhhhvy0Y9+NI2NjXn44Yfz/ve/PwcddFC22WabvPjii7nrrrvS1NSUJNl0001zww03pKamalsOAAAAAAAAsM6qlmRus802OfPMM3PeeefllVdeye67755vfetb+dznPpdyudysds6cObn99tvzH//xH5k0aVJlfMyYMamtra1Wy+9o9W93P/vss3n22WfXaW5dXd16h9dJsvPOO+f222/PMccck+effz5NTU3561//+pa67bffPtdee20GDRq03msCAAAAAAAAtIWqPoZ77rnn5sknn8wf//jHvPbaa/nOd76T73znO81qevfunfnz51fO3wy2jzvuuGbfeeYNQ4cOzWOPPZarrroq1113XZ555pnMmTMnvXv3zg477JCjjjoqxx57bLp37150qwAAAAAAAABvq6rhdalUynXXXZfRo0fn/PPPr3zH+s1vPCfJvHnzms3p2LFjvvOd7+S73/1uNVtdq9GjR2f06NGtes9tt932LU+hr4vu3bvn1FNPFe4DAAAAAAAA7VbVP4DcoUOHjBkzJl/+8pfzH//xH7n11lvzzDPPvKVuwIAB+fjHP54zzjgj22+/fbXbBABgI/fFfW5M/x7NPwUzff6WuWL8JyvnK095PXM/fnmzmpr5W2azVWoo1hcn3Zj+C1bbx823zBW72SMAAACA9qbq4fWb6urqctFFF+Wiiy7K3LlzM3PmzCxYsCC1tbXp27dvttpqq6JaAwDgPeATH743Q+qmNBt7qKG+WXhd/syyvLbHjc1qOjfUC683IJ946t4MmbHaPm5dL7wGAAAAaIcKC69X1atXr/Tq1avoNgAAAAAAAAAoSIeiGwAAAAAAAACAqoXXn/3sZ3PTTTdl+fLl1VoSAAAAAAAA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hAkTctFFF+WGG25IuVxOqVTKGWeckd69e1erZQAANmLnj/hZhtRNaTb2UEN9Rlx2YeV85c8W5eU9vtmspnNDffqtUkOxzv/rzzJkxmr7uHV9RoyyRwAAAADtTdXC6yS5+OKL8/jjj+f+++/PSy+9lJEjR6ampiZdu3at1HzkIx/Jc889l4ULFyZJyuVykuSQQw7Jd7/73Wq2CwAAAAAAAECVVO2b10nSuXPn3H777Rk1alTK5XLK5XKamprS2NiYUqmUJHnkkUeyYMGCyvUkOe6443LjjTdWagAAAAAAAADYuFQ1vE7e+G71lVdemXvuuSef/OQnU1tbWwmqVw2su3TpkuHDh+fuu+/OFVdckc6dO1e7VQAAAAAAAACqpKqvDV/Vvvvum3333TcrVqzIY489lhkzZmTBggWpra1N3759s8suuzR7nTgAAAAAAAAAG6/Cwus3dezYMbvuumt23XXXdapvbGxM9+7d27grAAAAAAAAAKqp6q8Nb6kFCxbk3HPPTV1dXdGtAAAAAAAAANDKCn/yem3mzp2bn/70p/nP//zPvPbaa0W3AwAAAAAAAEAb2GDD61deeSU/+clPMnbs2CxevDjlcjlJUiqVCu4MAAAAAAAAgNbWpq8Nf+ihh3LyySdnp512So8ePdK1a9cMGDAgRx11VO688841zlmwYEG+9a1vZbvttstPf/rTLFq0qHKttrY2Z5xxRlu2DAAAAAAAAEAB2uzJ6zPPPDMXXXRRklSemk6Sl156KTfccENuuOGGfOMb38gFF1xQufaHP/whp556aubOnZtyuVx5yrq2tjannXZazjjjjPTp06etWgYAAAAAAACgIG0SXn/ve9/LT3/60yRv/5rvcrmciy66KP369csZZ5yR73znOzn//PObhdbdu3fP6aefnn/9139Nr1692qJVAAAAAAAAADYArR5ez5gxI+edd16z0Hr//ffPrrvumm7dumXGjBm588478+KLL6ZcLudHP/pRevXqlR/84AeVOZtsskm+/vWv54wzzkiPHj1au0UAAAAAAAAANjCtHl5feeWVaWpqSqlUyvve97786U9/yi677NKsZsWKFTnvvPNy7rnnZs6cOTnppJOSvPE09qGHHppf/vKX6d+/f2u3BgAAAAAAAMAGqkNr3/Dvf/975fi///u/3xJcJ0nHjh3z3e9+N5/73OdSLpezfPnylEqlHH300bnlllsE1wAAAAAAAADvMa0eXj/xxBMplUoZPHhw9tprr3esPfXUUyvHXbp0yU9/+tO3/UY2AAAAAAAAABuvVg+v582blyTZeeed11r75lPZpVIpe++9d7bccsvWbgcAAAAAAACAdqDVw+vGxsYkyeabb77W2k033bRyPGDAgNZuBQAAAAAAAIB2otXD65bq3r170S0AAAAAAAAAUJANJrwGAAAAAAAA4L2rpugGAACgCBfcPio9NmlsNjZ/cfO3AXUYs0l6feHU5mOLvTFoQ3LBvqPSY8lq+9jVHgEAAAC0R20WXj/wwAMZM2ZMm9Sfc845LW0LAACSJPdP3WWtNaV7OqV20Efbvhla7P5tdym6BQAAAABaSZuF1w8++GAefPDBtdaVSqV3VZ8IrwEAAAAAAAA2Nm0WXpfL5Ta575thNwAAAAAAAAAbj1YPr4cNGyZgBgAAAAAAAOBdafXw+u67727tWwIAAAAAAACwketQdAPt3YoVK/LYY4/lV7/6VU455ZTstttu6dy5c0qlUkqlUvbff/82WXf06NGVNdb155prrmmTXgAAAAAAAADWV5t98/q94E9/+lOOOeaYLF68uOhWAAAAAAAAANo14fV6mD9//gYRXO++++7ZY4891lpXX19fhW4AAAAAAAAA3j3hdSvo27dvdt9998rPbbfdlosvvrhq6x9++OEZPXp01dYDANgYnD/iktT3bWg2NmVWXc7649cq5yt/1piZB5zRrKbzrLr0XqWGYp1/6yWpn73aPvapy1nD7REAAABAeyO8Xg+HHXZYGhoaMmDAgGbj//jHPwrqCACAdVXftyFD6qa8Y015pxVZtpYailU/uyFDZtgjAAAAgI2B8Ho9bLXVVkW3AAAAAAAAALBR6FB0AwAAAAAAAAAgvAYAAAAAAACgcF4bvhGYNWtWrr766jzzzDNZtGhRevbsmQEDBmTffffN9ttvX3R7AAAAAAAAAGslvN4IjB07NmPHjl3jtX322SejR4/OwQcf3CprTZ48OUOHDm3R3AkTJrRKDwAAAAAAAMD6a2nuN3ny5Fbu5A3C643c+PHjc8ghh+Tb3/52zjvvvPW+X2NjYyZOnNgKnQEAAAAAAABF2tByP9+8bscGDRqUc889N/fee29mzZqVZcuWZeHChXnooYcyZsyY9OnTJ0lSLpfz/e9/Pz/60Y8K7hgAAAAAAABgzYTX7dTXvva1PP744znnnHOy7777Zsstt0ynTp2y6aabZtddd83ZZ5+dyZMnZ4899qjMOfvsszN16tQCuwYAAAAAAABYM+F1O9WrV6+11vTt2zc333xzpbapqSkXXXRRW7cGAAAAAAAA8K755vVGbosttshpp52W733ve0mSW2+9db3u17179wwaNKg1WgMAAAAAAAAKtNdee7Vo3uTJk9PY2NjK3Qiv3xMOOuigSnj93HPPZdmyZencuXOL7jVo0KBMmDChNdsDAAAAAAAACtDS3G/o0KGZOHFiK3fjteHvCf369Wt2PmfOnII6AQAAAAAAAFgz4fV7wKJFi5qd19bWFtQJAAAAAAAAwJoJr98DHn744cpxbW1tNttsswK7AQAAAAAAAHgr4fV7wG9+85vK8bBhw4prBAAAAAAAAOBtCK/bocbGxnWuvfjii/P3v/+9cj5y5Mi2aAkAAAAAAABgvQivNyDTpk1LqVSq/Nx9991rrLvwwgtzyCGH5H/+53+yZMmSNda8+uqr+f/+v/8vX//61ytju+22Wz7/+c+3QecAAAAAAAAA66em6Abau8MPPzwzZsxoNvbyyy9XjidNmpRddtnlLfNuueWWbL311i1as1wu54477sgdd9yRrl27ZtCgQRk4cGA233zzLF26NFOnTs0DDzyQZcuWVebU1dXlT3/6Uzp08O8VAAAAAAAAgA2P8Ho9Pfnkk2loaHjb64sWLcqjjz76lvFVg+X1sWTJkkyaNCmTJk1a4/VSqZQjjzwyY8eOTe/evVtlTQCAjcGUWXVrHSs92TGd+g5sNtZ5DfMozpQ+a9jHNYwBAAAAsOETXrdD3/zmNzNs2LBMmDAhEydOTENDQ2bPnp25c+emQ4cO6dmzZ+rr67P33ntn5MiR2XHHHYtuGQBgg3PWH7+21poOp3dPv9MurEI3tNRZw9e+jwAAAAC0D8Lr9TRt2rRWu9e2226bcrm81rra2toceOCBOfDAA1ttbQAAAAAAAIAi+QAyAAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQuJqiGwAAgCLsPfCR9NiksdnY/MXdc//UXSrn5f2asmjwfc1qOizunm6r1FCsvac9kh5LVtvHrt1z/7a7FNMQAAAAAC0mvAYA4D3pzEOuzpC6Kc3GHmqoz4jLdqmcrzxncWbv8cNmNZ0b6tNtlRqKdebfr86QGavt49b1GSG8BgAAAGh3vDYcAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMLVFN0AAAAU4aw/np7aLq83G1u0tFuz8w6n12bL477TbKy0Wg3FOuuw01O7bLV97GyPAAAAANoj4TUAAO9JU2Ztu9aa0pM16fLCB9u+GVpsyhbbFt0CAAAAAK3Ea8MBAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKFxN0Q0AAEARLj92TAb1n9psbPL0gfnKVedUzlf8fmFe2ue4ZjWdpw/MlqvUUKzLbxiTQS+vto9bDcxXjrRHAAAAAO2N8BoAgPek3rUL0m/zOc3GZs7v07yoTzkrVqtZsXoNheq9eEH6Na62j4vtEQAAAEB75LXhAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4WqKbgAAAIpw/9SdM3NBn2Zjz8/u3+y8dE+ndOu6Z7OxmtVqKNb9dTtn5qar7WMvewQAAADQHgmvAQB4T7rg9mPXWtNhzCbZYs5ZVeiGlrpg2Nr3EQAAAID2wWvDAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAAChcTdENAABAEY7Y+Z5ssencZmOvvtYrNz26X+V85WeWZuFH/6dZTcfXeqV2lRqKdcST92SLxtX2sXuv3LSTPQIAAABob4TXAAC8Jx2/900ZUjel2dhDDfXNwuvyKUsyb49fNavp3FAvvN6AHP+/N2XIjNX2cet64TUAAABAO+S14QAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUrqboBgAAoAhfuersdOq4vNlY04rmvx53+Nym6feVi5qNlVb4FXpD8pURZ6fTitX2saM9AgAAAGiP/K86AAC8J81Z1GOtNaXZHVKzsE/bN0OLzantUXQLAAAAALQSrw0HAAAAAAAAoHDCawAAAAAAAAAKJ7wGAAAAAAAAoHDCawAAAAAAAAAKJ7wGAAAAAAAAoHDCawAAAAAAAAAKJ7wGAAAAAAAAoHA1RTcAAABF+OMpZ2RI3ZRmYw811GfEZRdWzlfcuSANe/xLs5rODfXpt0oNxfrj1WdkyIzV9nHr+owYZY8AAAAA2htPXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQOOE1AAAAAAAAAIUTXgMAAAAAAABQuJqiG2jvVqxYkSeeeCIPPvhgJk2alAcffDCPPfZYmpqakiT77bdf7r777jbtobGxMVdffXWuu+66PPvss3n11VezxRZbZIcddshRRx2VkSNHpnv37m3aAwBAe/Pnx4bloRd2bDY2ff6Wzc5L13dO96UfbzZWs1oNxfrzB4floa1X28fN7REAAABAeyS8Xg9/+tOfcswxx2Tx4sWF9TBhwoQcc8wxef7555uNT58+PdOnT8+4cePyk5/8JL/97W+z5557FtQlAMCG54rxn1xrTYfLuqVXh69UoRta6ord1r6PAAAAALQPwuv1MH/+/EKD68ceeyyHHnpoXnvttSRJp06dcuCBB2abbbbJiy++mLvuuivLly/Pc889l0MOOSTjx4/PoEGDCusXAAAAAAAA4O0Ir1tB3759s/vuu1d+brvttlx88cVtumZTU1NGjBhRCa533nnn3Hjjjamrq6vUTJs2LZ/61Kfy6KOPZuHChTnyyCPzxBNPpKbGtgMAAAAAAAAbFinmejjssMPS0NCQAQMGNBv/xz/+0eZrX3755Zk6dWqSpGfPnrn11lvTr1+/ZjXbbrttbr311nzoQx/KvHnz8swzz+TXv/51TjzxxDbvDwAAAAAAAODd6FB0A+3ZVltt9ZbgulouvfTSyvGZZ575luD6Tf369csZZ5yxxnkAAAAAAAAAGwrhdTv0z3/+M08++WTl/Pjjj3/H+lWvP/bYY5UntgEAAAAAAAA2FMLrduiuu+6qHO+www7Zeuut37G+f//++cAHPlA5HzduXJv1BgAAAAAAANASwut26KmnnqocDxkyZJ3mrFq36nwAAAAAAACADUFN0Q3w7k2ZMqVyXFdXt05zVv0299NPP93itSdPnpyhQ4e2aO6ECRNavC4AQGv74j43pn+PV5qNTZ+/Za4Y/8nK+cpTXs/cj1/erKZm/pbZbJUaivXFSTem/4LV9nHzLXPFbvYIAAAAYG1amvtNnjy5lTt5g/C6HZozZ07luG/fvus0Z6uttqocz507t8VrNzY2ZuLEiS2eDwCwofjEh+/NkLopzcYeaqhvFl6XP7Msr+1xY7Oazg31wusNyCeeujdDZqy2j1vXC68BAAAA1sGGlvsJr9uhxsbGynG3bt3Wac6qdavOBwAAAGjPViyenySZOXNmttlmm2Kb4T3vlVdeyYoVK9KxY8dsueWWRbcDFVtttVUmTZpUdBu8x+222255+eWXi24D3sLfkRsW4XU7tGTJkspx586d12lOly5dKsevv/56q/cEAAAAUIhyOUmycuXKTJ8+veBm4A3+PAK81csvv+zvRmCthNftUNeuXSvHy5YtW6c5S5curRyv69PaAAAAAO1GqUM61vYsugve41Y0/r/P/fnzyAZixaJ5SXll0W1Ac/6OZAPh78gNk/C6HerevXvleF2fol61btX5LVl70KBBLZ4PAAAA0BY61vbMNqddWXQbvMc1/PiIpLzSn0c2GC9detz//aMK2ED4O5INhb8j37DXXnu1aN7kyZPb5FPFwut2qHfv3pXjWbNmrdOcVb8j0atXrxavPWjQoEyYMKHF8wEAAAAAAIANQ0tzv6FDh2bixImt3E3SodXvSJurr6+vHDc0NKzTnBdeeKFyvOOOO7Z6TwAAAAAAAADrQ3jdDn3wgx+sHD/88MPrNOehhx5a43wAAAAAAACADYHwuh064IADKsdTpkzJzJkz37F+xowZefbZZ9c4HwAAAAAAAGBDILxuhz7wgQ9kp512qpxfeeWV71i/6vXBgwdn4MCBbdYbAAAAAAAAQEsIr9upU089tXJ8wQUXZNasWWuse/nll3PBBRdUzk877bQ27w0AAAAAAADg3RJeb0CmTZuWUqlU+bn77rvftvbEE0+sPEE9Z86cDB8+PC+88EKzmoaGhgwfPjxz585Nkuywww758pe/3Gb9AwAAAAAAALRUTdENtHeHH354ZsyY0Wzs5ZdfrhxPmjQpu+yyy1vm3XLLLdl6661bvG6nTp1yww035KMf/WgaGxvz8MMP5/3vf38OOuigbLPNNnnxxRdz1113pampKUmy6aab5oYbbkhNjS0HAAAAAAAANjySzPX05JNPpqGh4W2vL1q0KI8++uhbxpctW7bea++88865/fbbc8wxx+T5559PU1NT/vrXv76lbvvtt8+1116bQYMGrfeaAAAAAAAAAG1BeN3ODR06NI899liuuuqqXHfddXnmmWcyZ86c9O7dOzvssEOOOuqoHHvssenevXvRrQIAAAAAAAC8LeH1epo2bVqr3WvbbbdNuVx+1/O6d++eU089Naeeemqr9QIAAAAAAABQTR2KbgAAAAAAAAAAhNcAAAAAAAAAFE54DQAAAAAAAEDhhNcAAAAAAAAAFK6m6AYAAKAIIy67cK01HQ/aPNucdmUVuqGlRoxa+z4CAAAA0D548hoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwtUU3QAAABShd+38dOq4vNlY04qazFnUo3Je7rMyyzeb3aymtKImHVepoVi9F81PpxWr7WPHmsyp7VFMQwAAAAC0mPAaAID3pMuP/V6G1E1pNvZQQ31GXHZh5Xzl71/L9D2Ob1bTuaE+/VapoViX//F7GTJjtX3cuj4jRtkjAAAAgPbGa8MBAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKJzwGgAAAAAAAIDCCa8BAAAAAAAAKFxN0Q0AAEARfnP/EfnL43Objb36Wq9m56XLuqbHK59rNtZxtRqK9ZuPHJG/1K+2j93tEQAAAEB7JLwGAOA96aZH91trTYfru2Szvp+uQje01E07rX0fAQAAAGgfvDYcAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMIJrwEAAAAAAAAonPAaAAAAAAAAgMLVFN0AAAAU4cxDrsp2faY3G3t+dv9ccPuxlfOV5yzOq4ee36ymZnb/9FylhmKdee9V2W7uavvYq38uGGaPAAAAANob4TUAAO9Jew98NEPqpjQbe6ihvtl5eb+mLP7w+GZjnVeroVh7NzyaITNW28et7REAAABAe+S14QAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOFqim4AAACKMGfR5pm5oPdbxpqZXUrH1Wo6rl5DoeZssnlmdu/9ljEAAAAA2h/hNQAA70lfueqctdZ0/Nxm2ea0K6vQDS31lSPXvo8AAAAAtA9eGw4AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4WqKbgAAAIpQ33daaru83mxs0dJumTJr28p5eaflWTrgqWY1paXd0nmVGopV/+q01C5bbR87d8uULbYtpiEAAAAAWkx4DQDAe9L5I36WIXVTmo091FCfEZddWDlf+bNFeXmPbzar6dxQn36r1FCs8//6swyZsdo+bl2fEaPsEQAAAEB747XhAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABSupugGAACgCBfcPio9NmlsNjZ/cfdm5x3GbJJeXzi1+dhqNRTrgn1HpceS1faxqz0CAAAAaI+E1wAAvCfdP3WXtdaU7umU2kEfbftmaLH7t92l6BYAAAAAaCVeGw4AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4YTXAAAAAAAAABROeA0AAAAAAABA4WqKbgAAAIpw/ohLUt+3odnYlFl1OeuPX6ucr/xZY2YecEazms6z6tJ7lRqKdf6tl6R+9mr72KcuZw23RwAAAADtjfAaAID3pPq+DRlSN+Uda8o7rciytdRQrPrZDRkywx4BAAAAbAy8NhwAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvAQAAAAAAACic8BoAAAAAAACAwgmvW8GyZcty9dVX5/DDD09dXV26du2afv36Ze+9984FF1yQ2bNnt+p6o0ePTqlUelc/11xzTav2AAAAAAAAANCaaopuoL17+umnc/TRR+fhhx9uNv7yyy/n5ZdfzoQJE/KTn/wkV1xxRQ4//PCCugQAAAAAAADYsAmv18NLL72Ugw46KDNmzEiSlEqlDBs2LO9///vzyiuv5G9/+1tef/31vPLKK/nUpz6VW2+9NQcddFCr9rD77rtnjz32WGtdfX19q64LAAAAAAAA0JqE1+vhmGOOqQTXdXV1uemmm/LhD3+4cn327Nn5/Oc/nzvvvDNNTU056qijMnXq1PTo0aPVejj88MMzevToVrsfAAAAAAAAQBF887qFbrnlltx7771Jks6dO+fPf/5zs+A6Sfr06ZMbb7wx22+/fZJk7ty5+fGPf1z1XgEAAAAAAAA2dJ68bqFLL720cnzcccdl8ODBa6yrra3NmDFjMnLkyCTJz3/+84wZMyY1Nf6jBwAo0pRZdWsdKz3ZMZ36Dmw21nkN8yjOlD5r2Mc1jAEAAACw4ZOgtkBjY2PuvPPOyvkXv/jFd6z/zGc+k1NOOSWvvfZa5s6dm3vvvTcHHnhgW7cJAMA7OOuPX1trTYfTu6ffaRdWoRta6qzha99HAAAAANoHrw1vgfvvvz9Lly5N8saT1bvvvvs71nfp0iV77bVX5fyuu+5q0/4AAAAAAAAA2htPXrfAU089VTkePHjwOr0CfMiQIbnjjjveMn99zZo1K1dffXWeeeaZLFq0KD179syAAQOy7777Vr61DQAAAAAAALChE163wJQpUyrHdXXr9j29AQMGVI6ffvrpVutl7NixGTt27Bqv7bPPPhk9enQOPvjgVltv8uTJGTp0aIvmTpgwodX6AAAAAAAAANZPS3O/yZMnt3InbxBet8CcOXMqx3379l2nOVtttVXleO7cua3e05qMHz8+hxxySL797W/nvPPOa5V7NjY2ZuLEia1yLwAAAAAAAKA4G1ru55vXLdDY2Fg57tat2zrNWbVu1fktNWjQoJx77rm59957M2vWrCxbtiwLFy7MQw89lDFjxqRPnz5JknK5nO9///v50Y9+tN5rAgAAAAAAALQV4XULLFmypHLcuXPndZrTpUuXyvHrr7++Xut/7Wtfy+OPP55zzjkn++67b7bccst06tQpm266aXbdddecffbZmTx5cvbYY4/KnLPPPjtTp05dr3UBAAAAAAAA2orwugW6du1aOV62bNk6zVm6dGnleF2f1n47vXr1WmtN3759c/PNN1dqm5qactFFF63XugAAAAAAAABtxTevW6B79+6V43V9inrVulXnt6Utttgip512Wr73ve8lSW699db1vmf37t0zaNCg9b4PAEDR9h74SHps0vxzLvMXd8/9U3epnJf3a8qiwfc1q+mwuHu6rVJDsfae9kh6LFltH7t2z/3b7lJMQwAAAADtyF577dWieZMnT26VTyWvTnjdAr17964cz5o1a53mvPzyy5XjdXlyurUcdNBBlfD6ueeey7Jly9b5VedrMmjQoEyYMKG12gMAKMyZh1ydIXVTmo091FCfEZftUjlfec7izN7jh81qOjfUp9v/396dR2lV3WnDvguZFFQGQcEBxQFUNGoUhwQVSKuNxDnGAQG1Y1qMbdKJsc0bbUybpLvF5DVvVCIxGtF2SKKiRuOExAEQEKKIgooCDsgoozLX94dfnqawgLIGTiHXtVattfd59jn799Qpjw9119lnrTEU6wfPDc0hH6xzHtt3ymnCawAAAICNqm7ud+SRR2b06NG1XI1lw6ulU6dOpfb06dOrtM+MGTNK7c6dO9d6TevTrl27Cv158+ZtsrkBAAAAAAAAqkp4XQ377rtvqT1x4sSsWrVqo/uMHz++0v3r2tKlSyv0mzVrtsnmBgAAAAAAAKgq4XU1HHXUUWnSpEmST8PhcePGbXD88uXLK9w236NHjzqtb20TJkwotZs1a5bttttuk80NAAAAAAAAUFXC62po3rx5evbsWerffvvtGxx///33Z/HixUmSli1b5uijj67L8ipYu7ZNOS8AAAAAAADA5yG8rqYBAwaU2rfddlsmTZpU6biPP/44V199dan/7W9/Ow0bNqz2vEuWLKny2BtuuCHPPfdcqd+nT59qzwsAAAAAAABQl4TX1XTiiSemW7duSZIVK1akd+/emThxYoUx8+bNyymnnJK33norSdKqVatcccUVlR5v2rRpKSsrK32NGDGi0nHXX399jjvuuDzwwANZtmxZpWPmzJmTyy67LN/97ndL2w499NCcddZZn/NdAgAAAAAAAGwa1b8FmPzP//xPunbtmpkzZ2batGk56KCDcswxx6Rjx46ZM2dOnnrqqXz88cdJkoYNG+a+++5LixYtajRneXl5nnzyyTz55JNp2rRpunTpkj333DPbb799li9fnqlTp2bMmDFZsWJFaZ8OHTrkwQcfTIMG/lYBAAAAAAAAqJ+E1zWwyy67ZPjw4Tn77LPzt7/9LWvWrMkzzzyTZ555psK4Nm3a5LbbbqvwnOzasGzZsowbNy7j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AwAAAAAAAFA44TUAAAAAAAAAhRNeAwAAAAAAAFA44TUAAAAAAAAAhRNeAwAAAAAAAFC4hkUXAAAARTj/K8Oyc4vZFba9v6Btbnvh5FJ/zcWfZP6JQyqMabigbbZbawzFOn/csOy8cJ3zuH3b3HaocwQAAACwuRFeAwCwRfr6gc/mkA5TKmwbP71ThfC6/IwVWdx1WIUxjad3El7XI19//dkc8sE657F9J+E1AAAAwGbIsuEAAAAAAAAAFE54DQAAAAAAAEDhLBsOQK048sgjM3r06ArbjjjiiIwaNaqgigA2nZlDv58V6yxd3bh9p7Q77/qCKgLYtFwHgS1ZZdfA1R8vLKgagE3P7wWB2uTOawAAAAAAAAAKJ7wGAAAAAAAAoHDCawAAAAAAAAAKJ7wGAAAAAAAAoHDC61qwYsWKDB06NL169UqHDh3StGnTtGvXLkcddVQGDRqUuXPn1tncS5Ysyc0335zu3btnl112SZMmTbLLLrukR48eGTx4cJYsWVJncwMAAAAAAADUloZFF7C5mzx5cs4555xMmDChwvYPP/wwH374YUaNGpXrrrsut912W3r16lWrc48aNSrnnntu3nnnnQrb33///bz//vt55plnct111+V//ud/cvjhh9fq3AAAAAAAAAC1SXhdA++991569uyZDz74IElSVlaWo48+OnvttVdmz56dp556Kp988klmz56dU045JY899lh69uxZK3O/8sorOf7447N48eIkSaNGjdKjR4/ssssueffddzN8+PCsWrUqb7/9do477ri88MIL6dKlS63MDQAAAAAAAFDbhNc1cO6555aC6w4dOuShhx7KgQceWHp97ty5Oeuss/L0009n5cqVOfPMMzN16tS0aNGiRvOuXLkyp512Wim4/tKXvpRhw4alQ4cOpTHTpk3LKaeckpdffjmLFi3K6aefnkmTJqVhQ6ccAAAAAAAAqH8887qaHn300Tz77LNJksaNG+fhhx+uEFwnyQ477JBhw4alY8eOSZL58+fnv//7v2s895AhQzJ16tQkScuWLfPYY49VCK6TZPfdd89jjz2Wli1bJkneeOON/O53v6vx3AAAAAAAAAB1QXhdTTfeeGOp3a9fvxxwwAGVjmvWrFl+8pOflPq/+c1vsmrVqlqb+wc/+EHatWtX6bh27drl+9//fqX7AQAAAAAAANQnwutqWLJkSZ5++ulS//zzz9/g+DPOOCPbbrttkk/vvv77HdvV8dZbb+W1114r9fv377/B8Wu//sorr5Tu2AYAAAAAAACoT4TX1TBy5MgsX748yad3Vh922GEbHN+kSZMcccQRpf7w4cOrPffa++6zzz5p3779BsfvvPPO2XvvvUv9Z555ptpzAwAAAAAAANQV4XU1vP7666X2AQcckIYNG250n0MOOaTS/Wsy99rH3BRzAwAAAAAAANSVjaeufMaUKVNK7Q4dOlRpn912263Unjx58mYx99tvv/2ZbWPGjCktgf55denSpVr7fVHMnj07SbL644WZOfT7GxkNdW/1xwuTfPqzeeSRR9b4eK+++mql22rj2HzxuUZShP5PTE+zJhW3LV0+PTNnfT8pX/PphgtXJc0rjln59zFrb5sz/TPHXzlnup/nTaD/nOlpts62pV+07/3///PoGkm9UcnPpOsghXKdpGCVXQOzZpWfR+qF2v79D1Smqr8X9Psf6hvXyE9V9t9wVXz88cef2VZZtvh5Ca+rYd68eaX2jjvuWKV9dtppp1J7/vz5m8Xclf3QrVmzJkuWLKnyMdY2evToau33hbNmVVZ8MGXj42ATWblyZZ3997lkyRL/7fP5uEayCU38oLKty5Ks9TNYyWf38izLimz857R85TI/z5vAxMo2rlyWfBG/966R1Dcb+Zl0HWSTc52knvHzSH1Sl7//gcps8PeC/p9NPeMaWXsqyxY/L8uGV8Pa4e3WW29dpX3WHlfd8LfouQEAAAAAAADqivC6GpYtW1ZqN27cuEr7NGnyv2tSfvLJJ5vl3AAAAAAAAAB1RXhdDU2bNi21V6xYUaV9li9fXmpX9Y7p+jY3AAAAAAAAQF3xzOtqaN68eald1TuZ1x639v71ee6dd94577//fpL/XaO+QYMGFQL0z6NLly7V2g8AAAAAAACofa+++mq19lu2bFnWrFmTJNlmm22SfJot1pTwuhpat25das+aNatK+3z44YeldqtWrTaLuSdPnlz1wgAAAAAAAABqwLLh1dCpU6dSe/r06VXaZ8aMGaV2586dN8u5AQAAAAAAAOqK8Loa9t1331J74sSJWbVq1Ub3GT9+fKX712TuCRMmVGmf2pobAAAAAAAAoK4Ir6vhqKOOSpMmTZIkS5cuzbhx4zY4fvny5Rk9enSp36NHj2rP3b1791J7ypQpmTlz5gbHf/DBB3nzzTcr3R8AAAAAAACgvhBeV0Pz5s3Ts2fPUv/222/f4Pj7778/ixcvTpK0bNkyRx99dLXn3nvvvbPffvuV+r///e83OH7t1w844IDsueee1Z4bAAAAAAAAoK4Ir6tpwIABpfZtt92WSZMmVTru448/ztVXX13qf/vb307Dhg1rbe5BgwZl1qxZlY778MMPM2jQoFL/kksuqdG8AAAAAAAAAHVFeF1NJ554Yrp165YkWbFiRXr37p2JEydWGDNv3ryccsopeeutt5IkrVq1yhVXXFHp8aZNm5aysrLS14gRI9Y790UXXVS6g3revHn5x3/8x8yYMaPCmOnTp+cf//EfM3/+/CTJPvvskwsvvLBa7xUAAAAAAACgrpWVl5eXF13E5uq9995L165dS8+dbtCgQY455ph07Ngxc+bMyVNPPZWPP/44SdKwYcP85S9/qbDc+NqmTZuWPfbYo9R/5plncuyxx6537pdffjlf/epXs2TJkiRJo0aN0rNnz+yyyy559913M3z48KxcuTJJsu2222bkyJHp0qVLbbxtAAAAAAAAgFrnzusa2GWXXTJ8+PAcdNBBSZI1a9bkmWeeya233pqHHnqoFFy3adMmDz744HqD6+r40pe+lCeeeKIUeK9cuTJ/+ctf8tvf/jaPP/54Kbju2LFjnnjiCcE1UKnVq1fnlVdeya233pqLL744hx56aBo3blxaBWJDf0RTEx9++GEefvjhXH311endu3cOOuig7LzzzmnSpEmaN2+eDh065Otf/3p+9atfZd68eXVSA0BR18CNOe200yqsyFNUHcAXX1HXwYEDB1a4zlXl684776yTWoAtV336LPjss8/m0ksvzZe+9KW0bds2TZs2za677pquXbtmwIAB+cMf/pCPPvpok9UDbBmKuA7efvvtn/tzYFVXrAW+OGr28GXSuXPnvPjii7nnnnty9913Z9KkSZk1a1ZatGiRjh075tRTT80FF1yQHXbYodbnPvLII/PKK6/kjjvuyH333Zc33ngj8+bNS+vWrbPPPvvkzDPPTN++fdO8efNanxvY/D344IM599xzS39osyl97Wtfy6RJkyp9bcWKFVm6dGlmzJiRRx55JFdddVX+8z//MxdffPEmrhL4IivyGrghf/rTn/LAAw8UXQawBaiv10GATaG+XAPffvvtDBgwII8//vhnXnvvvffy3nvvZezYsbn55ptz3XXX5Qc/+EEBVQJfRPXlOvh57bTTTkWXAGwCwuta0Lhx4/Tt2zd9+/at9jF23333VGcF9+bNm2fAgAEZMGBAtecGtkwLFiyoFx9Qd91113Tq1Cnt27fPNttsk8WLF+f111/PhAkTUl5enkWLFmXAgAGZNWtWBg4cWHS5wBdEfbkGrm3BggX5zne+U3QZwBaivlwHDzvssHTt2nWj4zp16rQJqgG2FPXhGvjyyy+nZ8+eFVYb22+//bL//vunVatWWbx4caZMmZKXX345q1atKrBS4IuoqOvgvvvum0suuaTK4//4xz9m1qxZSZIvf/nL6dy5c12VBtQjwmuALdyOO+6Yww47rPT1+OOP54YbbqjTOU8++eRceeWV6dGjR9q1a1fpmLfeeivf/va3M3z48CTJf/zHf+TEE0/MYYcdVqe1AVuWIq6B6/ODH/wgH374YRo1apSTTz45f/zjHwupA9iyFH0d7NWrlz9QBApT1DVw2rRpFYLrnj175v/+3/9b6WP/5s+fn2HDhqV9+/Z1Xhew5dnU18HDDz88hx9+eJXGzp8/P0OGDCn1+/XrV1dlAfWM8BpgC3XCCSdk+vTp2W233Spsf/HFF+t87p/+9KcbHbPXXnvl0UcfzYEHHpg33ngja9asyZAhQ4TXQK0o8hpYmeHDh+fWW29Nkvzwhz9Mw4YNhddAnapv10GATanoa+BFF11UCq6/+c1v5q677spWW21V6dhWrVrl/PPP3yR1AVuOoq+DVXHPPfdkxYoVSZJGjRrl7LPPLrgiYFNpUHQBABRjp512+swH1PqmSZMm6dOnT6k/fvz4AqsBvkjq0zXwk08+yUUXXZTk0z/c+fGPf1xwRcCWoD5dBwE2tSKvgcOGDcuTTz6ZJNltt90yZMiQ9QbXAHVlc/gs+Pvf/77U7t27d3bYYYcCqwE2JeE1APVa27ZtS+3FixcXWAlA3fj3f//3TJ06NUly8803p2nTpgVXBABAXbn55ptL7e9973vZdtttC6wGoH6aMmVKxowZU+pbMhy2LMJrAOq1119/vdTu0KFDgZUA1L6XXnopv/jFL5Ikffr0yde+9rWCKwIAoK7Mnj27dNd1kpxzzjkFVgNQf61913WbNm3Sq1evAqsBNjXPvAag3po0aVLpGbBJcvrppxdYDUDtWrVqVf7pn/4pq1evTqtWrUohNsCWZNasWRk6dGjeeOONLF26NC1btsxuu+2Wbt26pWPHjkWXB1CrRo0alTVr1iRJOnXqlLZt22bhwoX57W9/m/vuuy9vvfVWPvnkk7Rp0yZdu3bN6aefnjPPPDMNGrj/CNhyrFmzJnfeeWepf84556RRo0YFVgRsasJrAOqVJUuW5M0338ywYcPyi1/8IkuWLEmSfPWrX82FF15YcHUAtWfQoEH529/+liS57rrr0qZNm2ILAijA4MGDM3jw4Epf+8pXvpKBAwdalQL4whg7dmypvf/++2fUqFE566yzMmPGjArjZsyYkRkzZuSPf/xj/uu//iv3339/9thjj01dLkAhhg8fnnfffbfUt2Q4bHmE1wAU6s4778x555233tfLysrSp0+f3HLLLWnY0P+2gC+GN998M9dcc02S5Jhjjsn5559fcEUA9c8LL7yQ4447Lj/60Y9y7bXXFl0OQI2tHcYsXLgwvXr1yoIFC5IkhxxySA488MCsXr06Y8eOzeTJk5Mkf/vb33LkkUdm3Lhx2WWXXYooG2CTWnvJ8AMOOCAHH3xwgdUARZACAFBv7bzzzrntttvyD//wD0WXAlBrysvL861vfSvLli1L48aNM3jw4JSVlRVdFsAm1aVLl3zjG99I9+7d06lTp7Rs2TLLli3LW2+9lUceeSS/+tWvMnfu3JSXl+enP/1ptt1221xxxRVFlw1QI38PqpPk6aefTpLssMMOue+++9K9e/cKY++77770798/n3zySWbNmpU+ffpkxIgRm7BagE1vyZIleeCBB0r9/v37F1cMUBjhNQCF6tSpUy655JIknz7TZuHChXnttdfy8ssv5/3338/xxx+fU089NTfeeGN22mmngqsFqLkhQ4bkr3/9a5LkyiuvTOfOnQuuCGDT+pd/+ZcMHDjwM9sbNWqUgw8+OAcffHAuuuiinHTSSRkzZkyS5KqrrsoZZ5yRPffccxNXC1B7li5dWqG/1VZb5eGHH84RRxzxmbFnnnlmkuSb3/xmkuSvf/1rRowYkWOPPbbO6wQoyh//+MfStbJhw4Y599xzC64IKEKDogsAYMt22GGH5de//nV+/etf56abbspdd92VCRMmZMqUKenVq1fKy8tz//3354gjjsh7771XdLkANfLBBx/khz/8YZJk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Btg77bRTjjvuuDz22GNJkqFDh240vH777bczcuTIUr9v374VXn/33XdTXl6esrKydOrUKZ06dUrr1q3TqFGjzJs3LxMmTMjUqVOTJHfffXcWLlyYRx55pMp3nm9KS5cuzfHHH58XXnihtG2PPfbIoYcempYtW+ajjz7KyJEj8/777+eTTz7JpZdemkWLFuVHP/pRgVUDAABsPoTXAAAAUAOnnXZaevfune7du2frrbf+zOurV6/O0KFD853vfCdLly7Nj3/843zjG9/IHnvsUUC1G9evX79SeP3nP/858+fPT6tWrdY7fu27rjt06PCZZbe//OUv54QTTkjv3r2zww47VHqM5557LhdccEHeeuutPProo7nrrrvSp0+fmr+ZWjZgwIBScL3nnntm8ODB+drXvlZhzOrVq3PLLbfke9/7XpYvX56rr7463bt3z5FHHllEyQAAAJsVz7wGAACAGrjpppvSq1evSoPrJNlqq63Sv3//3HrrrUmSlStXZvDgwZuyxM/l5JNPTosWLZIkK1asyL333rvB8XfeeWepfd55533mjunLL788/fv3X29wnSTdunXLk08+maZNmyZJ/t//+3/VrL7uPPfcc6Wgfpdddsnzzz//meA6+fR8X3zxxbn55puTfBpm/+QnP9mktQIAAGyuhNcAAACwCZxxxhlp3rx5kuSpp54quJr1a9q0ac4888xSf+07q9f1/PPPl5b8Tj67ZPjnsfvuu6d79+5JkrFjx2bRokXVPlZd+MUvflFq//znP89OO+20wfH9+/dP586dkySPP/545s6dW6f1AQAAfBFYNhwAAABqycSJEzN+/PhMmzYtixYtyvLlyyu8/ve7kidOnJg1a9akQYP6+Tfl/fr1yy233JIkGT16dN56663stddenxm3drB91FFHZe+9997gcWfMmJExY8bkjTfeyIIFC/LJJ5+kvLy89Po777yTJCkvL8/LL7+cbt261cbbqbFVq1blySefTJI0bNgwp59++kb3KSsrS/fu3TN58uSUl5dn5MiROemkk+q6VAAAgM2a8BoAAABq6Pe//31+9rOf5Y033qjS+JUrV2bhwoVp2bJlHVdWPX8Pot98880kn4bU6y59vXz58vzhD38o9fv167fe440aNSr/9m//lueee65CWL0h9elO5VdeeSVLly5N8umd6ZdffnmV9hs7dmyp/e6779ZJbQAAAF8kwmsAAACopvLy8lx44YW57bbbPve+ixcvrrfhdfLpEuBXXXVVkk+fa33NNddUeJ71sGHDsmDBgiSfXWp8bb/73e/yT//0T1UOrf9u8eLF1Su8DnzwwQel9pIlS3LjjTd+7mN89NFHtVkSAADAF1L9XJ8MAAAANgNDhgypEFz37t07Q4cOzauvvpqPPvooy5cvT3l5eemrQ4cOpbFr1qwpouQqO++880ph9TvvvJPnn3++wutrLxl+8sknp0WLFp85xuuvv55vf/vbpeD6wAMPzK9+9auMHTs2s2fPLi0b/vevte/erk/fn4ULF9b4GKtWraqFSgAAAL7Y3HkNAAAA1TRo0KBS+6c//Wl+9KMfbXB8XdxNXFchb4cOHXLMMcdkxIgRSZKhQ4eWnkE9e/bsPP7446Wxffv2rfQYv/zlL0uhba9evfLggw+mUaNG652zqLutN/Y9bNasWal90EEHZcKECXVdEgAAwBbJndcAAABQDe+++27pmdAtW7bMD3/4ww2OX7RoUZWWjm7Y8H//zrwqd+vWxl3B67P2ndB/+MMfsmzZsiTJ3XffXaptp512yvHHH1/p/k8//XSp/R//8R8bDK6TZPr06TUtOUkqzFMb38Mdd9yx1H777bfr1V3hAAAAXyTCawAAAKiGtZ+D3KlTpwqhc2Wef/75Kj33edttty21582bt8GxK1asyBtvvLHRY1bXGWecUbrreMGCBXn44YeTVFwy/Nxzz81WW21V6f5rf4/233//Dc61cOHCvPLKKzUtOcnn+x4mycSJEzf4+kEHHZQmTZok+fSPEEaNGlWzAgEAAKiU8BoAAACqoUGD//0n9ccff7zR8TfffHOVjrvHHnuU2n/72982OPahhx4q3Q1dF5o3b57TTjut1L/jjjvy2muvZfz48aVta9+dva7P8z367W9/m5UrV9ag2v/1eb6HSXLfffdt8PWtt946PXr0KPV/+ctfVrs2AAAA1k94DQAAANWwxx57pKysLEny6quvZurUqesde++99+aRRx6p0nG7du1aat9+++3rHbdo0aL827/9W9WKrYG1w+m//OUvFZ7zffDBB+eAAw5Y774dO3YstYcNG7becW+++WauueaaGlb6vw477LDSuXnxxRfz+uuvr3fsTTfdlEmTJm30mFdccUWp/ac//WmD52ZdH374YZXHAgAAbMmE1wAAAFANO+ywQw4//PAkyZo1a/KNb3wjU6ZMqTBmzZo1ufHGG3Peeedlq622StOmTTd63HPOOafUvueee/LrX//6M2MmT56cHj16ZOrUqaXlrOtK9+7ds+uuuyb59PnRt912W+m1Dd11nSS9e/cutf/1X/81jz/++GfGPP300zn22GOzePHi0hLlNbXTTjule/fuSZLy8vKcffbZee+99yqMWbVqVa6//vr8y7/8S5W+h8ccc0yF93vBBRfk8ssvX++y5MuXL8+wYcNy6qmn5qSTTqrBuwEAANhybPiBXAAAAMB6XXvttTnuuOOyZs2aTJgwIQcccEC+8pWvpGPHjlmyZEmee+65zJw5M0ny05/+NLfcckumT5++wWN269YtJ554Yv785z8nSS699NLceOONOeKII1JWVpYpU6Zk9OjRWbNmTfr375933nknf/3rX+vsPTZo0CDnnXdefvazn1XY3rBhwwpBe2W+973v5dZbb82cOXPy0Ucf5YQTTsghhxyS/fbbL2VlZRk/fnzprufjjz8+bdu2zdChQ2ul7p/97Gc56qijsmbNmrz88svZZ5990rNnz7Rv3z7z58/Ps88+m9mzZ6d58+b5+c9/nksvvXSjx/zNb36TmTNn5oknnkh5eXkGDRqUX/3qVznssMOy5557Zuutt87ChQszderUTJw4sbSk+5e//OVaeU8AAABfdMJrAAAAqKaePXvmxhtvzKWXXppVq1Zl5cqVGTFiREaMGFEa06BBg/z4xz/OlVdemVtuuaVKx73jjjty/PHHZ9y4cUk+vdN68uTJFcZccMEFuemmm3L88cfX2vtZn379+n0mvO7Vq1fatGmzwf3atm2bYcOG5aSTTsrcuXOTJOPHj6/wzOwkOeWUU3L77bfnsssuq7WaDz/88AwZMiQXXXRRVq9enU8++eQzS7e3a9cu9957b1avXl2lYzZp0iSPPvporrnmmlx//fX5+OOPs2LFirzwwgt54YUXKt2nUaNGOeKII2r8fgAAALYElg0HAACAGvjnf/7njB8/Pueff3523333NG7cONtvv33222+/fOc738m4ceNyzTXXlJ7BXBWtWrXKyJEjc9NNN6Vbt25p1apVGjdunA4dOuSMM87IE088kVtvvbXOlwz/u3322eczAWzfvn2rtO+RRx6ZSZMm5corr0yXLl2yzTbbZJtttsmee+6ZM888Mw899FAeeOCBbL/99rVe9wUXXJBXXnklF154YfbYY480bdo0LVq0yMEHH5xrr702r7zySrp16/a5jrnVVlvlJz/5SaZNm5ZBgwblhBNOyG677ZZtttkmjRo1SuvWrXPIIYekX79+uf322/P+++9XuvQ7AAAAn1VWXl5eXnQRAAAAAAAAAGzZ3HkNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAUTngNAAAAAAAAQOGE1wAAAAAAAAAU7v8Dp/3BkvlnErwAAAAASUVORK5CYII=", - "text/plain": [ - "
" - ] - }, - "metadata": { - "image/png": { - "height": 684, - "width": 983 - } - }, - "output_type": "display_data" - } - ], - "source": [ - "tau_values = np.array(out2.iloc[:, 1])\n", - "# the array of tau values is split up into thirds, where each third describes the throats in\n", - "# orthogonal directions of x, y, and z\n", - "\n", - "fig, ax = plt.subplots(figsize=[10,7])\n", - "ax.set_title(r\"$\\tau$ Distribution for x Throats\")\n", - "ax.hist(tau_values[:len(tau_values)//3], edgecolor='k')\n", - "ax.axvline(np.mean(tau_values[:len(tau_values)//3]), color='red', label='Mean', linestyle='--')\n", - "ax.axvline(tau_direct, color='lime', label='Direct', linestyle='--')\n", - "ax.axvline(tau_gdd, color='yellow', label='GDD', linestyle='--')\n", - "\n", - "ax.set_xlabel(r'Tau Value')\n", - "ax.set_ylabel(r'Relative Frequency')\n", - "ax.legend();" + "With similar results, the main benefit to using the \"block and tackle\" method is the time save on larger images. " ] } ], @@ -409,7 +883,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.11.5" } }, "nbformat": 4, diff --git a/src/porespy/__version__.py b/src/porespy/__version__.py index 11a995e37..5eb0752ca 100644 --- a/src/porespy/__version__.py +++ b/src/porespy/__version__.py @@ -1 +1 @@ -__version__ = '3.0.0a0.dev13' +__version__ = '3.0.0a0.dev15' diff --git a/src/porespy/beta/__init__.py b/src/porespy/beta/__init__.py index 4c233d41c..ba67b431e 100644 --- a/src/porespy/beta/__init__.py +++ b/src/porespy/beta/__init__.py @@ -1,5 +1,5 @@ from ._dns_tools import * from ._drainage2 import * -from ._gdd import * +from ._tortuosity_bt_funcs import * from ._generators import * from ._poly_cylinders import * diff --git a/src/porespy/beta/_gdd.py b/src/porespy/beta/_gdd.py deleted file mode 100644 index fef1907b7..000000000 --- a/src/porespy/beta/_gdd.py +++ /dev/null @@ -1,361 +0,0 @@ -import time - -import dask -import dask.delayed -import edt -import numpy as np -import openpnm as op -from pandas import DataFrame - -from porespy import settings, simulations -from porespy.tools import Results - -__all__ = ['tortuosity_gdd', 'chunks_to_dataframe'] -settings.loglevel = 50 - - -@dask.delayed -def calc_g(image, axis): - r'''Calculates diffusive conductance of an image. - - Parameters - ---------- - image : np.ndarray - The binary image to analyze with ``True`` indicating phase of interest. - axis : int - 0 for x-axis, 1 for y-axis, 2 for z-axis. - result: int - 0 for diffusive conductance, 1 for both diffusive conductance - and results object from Porespy. - ''' - try: - # if tortuosity_fd fails, throat is closed off from whichever axis was specified - results = simulations.tortuosity_fd(im=image, axis=axis) - - except Exception: - # a is diffusive conductance, b is tortuosity - a, b = (0, 99) - - return (a, b) - - L = image.shape[axis] - A = np.prod(image.shape)/image.shape[axis] - - return ((results.effective_porosity * A) / (results.tortuosity * L), results) - - -def network_calc(image, chunk_size, network, phase, bc, axis): - r'''Calculates the resistor network tortuosity. - - Parameters - ---------- - image : np.ndarray - The binary image to analyze with ``True`` indicating phase of interest. - chunk_size : np.ndarray - Contains the size of a chunk in each direction. - bc : tuple - Contains the first and second boundary conditions. - axis : int - The axis to calculate on. - - Returns - ------- - tau : Tortuosity of the network in the given dimension - ''' - fd=op.algorithms.FickianDiffusion(network=network, phase=phase) - - fd.set_value_BC(pores=network.pores(bc[0]), values=1) - fd.set_value_BC(pores=network.pores(bc[1]), values=0) - fd.run() - - rate_inlet = fd.rate(pores=network.pores(bc[0]))[0] - L = image.shape[axis] - chunk_size[axis] - A = np.prod(image.shape) / image.shape[axis] - d_eff = rate_inlet * L / (A * (1 - 0)) - - e = image.sum() / image.size - D_AB = 1 - tau = e * D_AB / d_eff - - return tau - - -def chunking(spacing, divs): - r'''Returns slices given the number of chunks and chunk sizes. - - Parameters - ---------- - spacing : float - Size of each chunk. - divs : list - Number of chunks in each direction. - - Returns - ------- - slices : list - Contains lists of image slices corresponding to chunks - ''' - - slices = [[ - (int(i*spacing[0]), int((i+1)*spacing[0])), - (int(j*spacing[1]), int((j+1)*spacing[1])), - (int(k*spacing[2]), int((k+1)*spacing[2]))] - for i in range(divs[0]) - for j in range(divs[1]) - for k in range(divs[2])] - - return np.array(slices, dtype=int) - - -def tortuosity_gdd(im, scale_factor=3, use_dask=True): - r'''Calculates the resistor network tortuosity. - - Parameters - ---------- - im : np.ndarray - The binary image to analyze with ``True`` indicating phase of interest - - chunk_shape : list - Contains the number of chunks to be made in the x,y,z directions. - - Returns - ------- - results : list - Contains tau values for three directions, time stamps, tau values for each chunk - ''' - t0 = time.perf_counter() - - dt = edt.edt(im) - print(f'Max distance transform found: {np.round(dt.max(), 3)}') - - # determining the number of chunks in each direction, minimum of 3 is required - if np.all(im.shape//(scale_factor*dt.max())>np.array([3, 3, 3])): - - # if the minimum is exceeded, then chunk number is validated - # integer division is required for defining chunk shapes - chunk_shape=np.array(im.shape//(dt.max()*scale_factor), dtype=int) - print(f"{chunk_shape} > [3,3,3], using {(im.shape//chunk_shape)} as chunk size.") - - # otherwise, the minimum of 3 in all directions is used - else: - chunk_shape=np.array([3, 3, 3]) - print(f"{np.array(im.shape//(dt.max()*scale_factor), dtype=int)} <= [3,3,3], \ -using {im.shape[0]//3} as chunk size.") - - t1 = time.perf_counter() - t0 - - # determines chunk size - chunk_size = np.floor(im.shape/np.array(chunk_shape)) - - # creates the masked images - removes half of a chunk from both ends of one axis - x_image = im[int(chunk_size[0]//2): int(im.shape[0] - chunk_size[0] //2), :, :] - y_image = im[:, int(chunk_size[1]//2): int(im.shape[1] - chunk_size[1] //2), :] - z_image = im[:, :, int(chunk_size[2]//2): int(im.shape[2] - chunk_size[2] //2)] - - t2 = time.perf_counter()- t0 - - # creates the chunks for each masked image - x_slices = chunking(spacing=chunk_size, - divs=[chunk_shape[0]-1, chunk_shape[1], chunk_shape[2]]) - y_slices = chunking(spacing=chunk_size, - divs=[chunk_shape[0], chunk_shape[1]-1, chunk_shape[2]]) - z_slices = chunking(spacing=chunk_size, - divs=[chunk_shape[0], chunk_shape[1], chunk_shape[2]-1]) - - t3 = time.perf_counter()- t0 - # queues up dask delayed function to be run in parallel - - x_gD = [calc_g(x_image[x_slice[0, 0]:x_slice[0, 1], - x_slice[1, 0]:x_slice[1, 1], - x_slice[2, 0]:x_slice[2, 1],], - axis=0) for x_slice in x_slices] - - y_gD = [calc_g(y_image[y_slice[0, 0]:y_slice[0, 1], - y_slice[1, 0]:y_slice[1, 1], - y_slice[2, 0]:y_slice[2, 1],], - axis=1) for y_slice in y_slices] - - z_gD = [calc_g(z_image[z_slice[0, 0]:z_slice[0, 1], - z_slice[1, 0]:z_slice[1, 1], - z_slice[2, 0]:z_slice[2, 1],], - axis=2) for z_slice in z_slices] - - # order of throat creation - all_values = [z_gD, y_gD, x_gD] - - if use_dask: - all_results = np.array(dask.compute(all_values), dtype=object).flatten() - - else: - all_values = np.array(all_values).flatten() - all_results = [] - for item in all_values: - all_results.append(item.compute()) - - all_results = np.array(all_results).flatten() - - # THIS DOESNT WORK FOR SOME REASON - # all_gD = all_results[::2] - # all_tau_unfiltered = all_results[1::2] - - all_gD = [result for result in all_results[::2]] - all_tau_unfiltered = [result for result in all_results[1::2]] - - all_tau = [result.tortuosity if not isinstance(result, int) - else result for result in all_tau_unfiltered] - - t4 = time.perf_counter()- t0 - - # creates opnepnm network to calculate image tortuosity - net = op.network.Cubic(chunk_shape) - air = op.phase.Phase(network=net) - - air['throat.diffusive_conductance']=np.array(all_gD).flatten() - - # calculates throat tau in x, y, z directions - throat_tau = [ - # x direction - network_calc(image=im, - chunk_size=chunk_size, - network=net, - phase=air, - bc=['left', 'right'], - axis=1), - - # y direction - network_calc(image=im, - chunk_size=chunk_size, - network=net, - phase=air, - bc=['front', 'back'], - axis=2), - - # z direction - network_calc(image=im, - chunk_size=chunk_size, - network=net, - phase=air, - bc=['top', 'bottom'], - axis=0)] - - t5 = time.perf_counter()- t0 - - output = Results() - output.__setitem__('tau', throat_tau) - output.__setitem__('time_stamps', [t1, t2, t3, t4, t5]) - output.__setitem__('all_tau', all_tau) - - return output - - -def chunks_to_dataframe(im, scale_factor=3, use_dask=True): - r'''Calculates the resistor network tortuosity. - - Parameters - ---------- - im : np.ndarray - The binary image to analyze with ``True`` indicating phase of interest - - chunk_shape : list - Contains the number of chunks to be made in the x, y, z directions. - - Returns - ------- - df : pandas.DataFrame - Contains throat numbers, tau values, diffusive conductance values, and porosity - - ''' - dt = edt.edt(im) - print(f'Max distance transform found: {np.round(dt.max(), 3)}') - - # determining the number of chunks in each direction, minimum of 3 is required - if np.all(im.shape//(scale_factor*dt.max())>np.array([3, 3, 3])): - - # if the minimum is exceeded, then chunk number is validated - # integer division is required for defining chunk shapes - chunk_shape=np.array(im.shape//(dt.max()*scale_factor), dtype=int) - print(f"{chunk_shape} > [3,3,3], using {(im.shape//chunk_shape)} as chunk size.") - - # otherwise, the minimum of 3 in all directions is used - else: - chunk_shape=np.array([3, 3, 3]) - print(f"{np.array(im.shape//(dt.max()*scale_factor), dtype=int)} <= [3,3,3], \ -using {im.shape[0]//3} as chunk size.") - - # determines chunk size - chunk_size = np.floor(im.shape/np.array(chunk_shape)) - - # creates the masked images - removes half of a chunk from both ends of one axis - x_image = im[int(chunk_size[0]//2): int(im.shape[0] - chunk_size[0] //2), :, :] - y_image = im[:, int(chunk_size[1]//2): int(im.shape[1] - chunk_size[1] //2), :] - z_image = im[:, :, int(chunk_size[2]//2): int(im.shape[2] - chunk_size[2] //2)] - - # creates the chunks for each masked image - x_slices = chunking(spacing=chunk_size, - divs=[chunk_shape[0]-1, chunk_shape[1], chunk_shape[2]]) - y_slices = chunking(spacing=chunk_size, - divs=[chunk_shape[0], chunk_shape[1]-1, chunk_shape[2]]) - z_slices = chunking(spacing=chunk_size, - divs=[chunk_shape[0], chunk_shape[1], chunk_shape[2]-1]) - - # queues up dask delayed function to be run in parallel - x_gD = [calc_g(x_image[x_slice[0, 0]:x_slice[0, 1], - x_slice[1, 0]:x_slice[1, 1], - x_slice[2, 0]:x_slice[2, 1],], - axis=0) for x_slice in x_slices] - - y_gD = [calc_g(y_image[y_slice[0, 0]:y_slice[0, 1], - y_slice[1, 0]:y_slice[1, 1], - y_slice[2, 0]:y_slice[2, 1],], - axis=1) for y_slice in y_slices] - - z_gD = [calc_g(z_image[z_slice[0, 0]:z_slice[0, 1], - z_slice[1, 0]:z_slice[1, 1], - z_slice[2, 0]:z_slice[2, 1],], - axis=2) for z_slice in z_slices] - - # order of throat creation - all_values = [z_gD, y_gD, x_gD] - - if use_dask: - all_results = np.array(dask.compute(all_values), dtype=object).flatten() - - else: - all_values = np.array(all_values).flatten() - all_results = [] - for item in all_values: - all_results.append(item.compute()) - - all_results = np.array(all_results).flatten() - - all_gD = [result for result in all_results[::2]] - all_tau_unfiltered = [result for result in all_results[1::2]] - - all_porosity = [result.effective_porosity if not isinstance(result, int) - else result for result in all_tau_unfiltered] - all_tau = [result.tortuosity if not isinstance(result, int) - else result for result in all_tau_unfiltered] - - # creates opnepnm network to calculate image tortuosity - net = op.network.Cubic(chunk_shape) - - df = DataFrame(list(zip(np.arange(net.Nt), all_tau, all_gD, all_porosity)), - columns=['Throat Number', 'Tortuosity', - 'Diffusive Conductance', 'Porosity']) - - return df - - -if __name__ =="__main__": - import numpy as np - - import porespy as ps - np.random.seed(1) - im = ps.generators.blobs(shape=[100, 100, 100], porosity=0.7) - res = ps.simulations.tortuosity_gdd(im=im, scale_factor=3, use_dask=True) - print(res) - - # np.random.seed(2) - # im = ps.generators.blobs(shape=[100, 100, 100], porosity=0.7) - # df = ps.simulations.chunks_to_dataframe(im=im, scale_factor=3) - # print(df) diff --git a/src/porespy/beta/_tortuosity_bt_funcs.py b/src/porespy/beta/_tortuosity_bt_funcs.py new file mode 100644 index 000000000..f5e3567a2 --- /dev/null +++ b/src/porespy/beta/_tortuosity_bt_funcs.py @@ -0,0 +1,341 @@ +import time +import porespy as ps +from porespy import tools +from porespy.tools import Results +import logging +import numpy as np +import openpnm as op +import pandas as pd +import dask +from dask.diagnostics import ProgressBar +try: + from pyedt import edt +except ModuleNotFoundError: + from edt import edt + +__all__ = [ + 'tortuosity_bt', + 'get_block_sizes', + 'df_to_tortuosity', + 'rev_tortuosity', + 'analyze_blocks', +] + + +def calc_g(im, axis, solver_args={}): + r""" + Calculates diffusive conductance of an image in the direction specified + + Parameters + ---------- + im : ndarray + The binary image to analyze with ``True`` indicating phase of interest. + axis : int + 0 for x-axis, 1 for y-axis, 2 for z-axis. + solver_args : dict + Dicionary of keyword arguments to pass on to the solver. The most + relevant one being `'tol'` which is 1e-6 by default. Using larger values + might improve speed at the cost of accuracy. + + Returns + ------- + results : dataclass-like + An object with the results of the calculation as attributes. + + Notes + ----- + This is intended to receive blocks of a larger image and is used by + `tortuosity_bt`. + """ + from porespy.simulations import tortuosity_fd + solver_args = {'tol': 1e-6} | solver_args + solver = solver_args.pop('solver', None) + t0 = time.perf_counter() + + try: + solver = op.solvers.PyamgRugeStubenSolver(**solver_args) + results = tortuosity_fd(im=im, axis=axis, solver=solver) + except Exception: + results = Results() + results.effective_porosity = 0.0 + results.original_porosity = im.sum()/im.size + results.tortuosity = np.inf + results.time = time.perf_counter() - t0 + L = im.shape[axis] + A = np.prod(im.shape)/im.shape[axis] + g = (results.effective_porosity * A) / (results.tortuosity * (L - 1)) + results.diffusive_conductance = g + results.volume = np.prod(im.shape) + results.axis = axis + results.time = time.perf_counter() - t0 + return results + + +def get_block_sizes(im, block_size_range=[10, 100]): + """ + Finds all viable block sizes between lower and upper limits + + Parameters + ---------- + im : np.array + The binary image to analyze with ``True`` indicating phase of interest. + block_size_range : sequence of 2 ints + The [lower, upper] range of the desired block sizes. Default is [10, 100] + + Returns + ------- + sizes : ndarray + All the viable block sizes in the specified range + + Notes + ----- + This is called by `rev_tortuosity` to determine what size blocks to use. + """ + shape = im.shape + Lmin, Lmax = block_size_range + a = np.ceil(min(shape)/Lmax).astype(int) + block_sizes = min(shape) // np.arange(a, 9999) # Generate WAY more than needed + block_sizes = np.unique(block_sizes[block_sizes >= Lmin]) + return block_sizes + + +def rev_tortuosity(im, block_sizes=None, use_dask=True): + """ + Generates the data for creating an REV plot based on tortuosity + + Parameters + ---------- + im : ndarray + The binary image to analyze with ``True`` indicating phase of interest + block_sizes : np.ndarray + An array containing integers of block sizes to be calculated + use_dask : bool + A boolean determining the usage of `dask`. + + Returns + ------- + df : DataFrame + A `pandas` data frame with the properties for each block on a given row + """ + if block_sizes is None: + block_sizes = get_block_sizes(im) + block_sizes = np.array(block_sizes, dtype=int) + tau = [] + for s in block_sizes: + tau.append(analyze_blocks(im, block_size=s, use_dask=use_dask)) + df = pd.concat(tau) + return df + + +def block_size_to_divs(shape, block_size): + r""" + Finds the number of blocks in each direction given the size of the blocks + + Parameters + ---------- + shape : sequence of ints + The [x, y, z] shape of the image + block_size : int or sequence of ints + The size of the blocks + + Returns + ------- + divs : list of ints + The number of blocks to divide the image into along each axis. The minimum + number of blocks is 2. + """ + shape = np.array(shape) + divs = shape // np.array(block_size) + # scraps = shape % np.array(block_size) + divs = np.clip(divs, a_min=2, a_max=shape) + return divs + + +def analyze_blocks(im, block_size=None, method="chords", use_dask=True): + r''' + Computes structural and transport properties of each block + + Parameters + ---------- + im : np.ndarray + The binary image to analyze with ``True`` indicating phase of interest + block_size : int + The size of the blocks to use. Only cubic blocks are supported so an integer + must be given, or an exception is raised. If the image is not evenly + divisible by the given `block_size` any extra voxels are removed from the + end of each axis before all processing occcurs. Block size will be prioritized + if use_chords is also provided. + method : string + The method to use to determine block sizes if `block_size` is not provided. + =========== ================================================================== + method description + =========== ================================================================== + 'chords' Uses `apply_chords_3D` from Porespy to determine the longest chord + possible in the image as the length of each block. + 'dt' Uses the maximum length of the distance transform to determine + the length of each block. + ========== ================================================================== + use_dask : bool + A boolean determining the usage of `dask`. + + Returns + ------- + df_out : DataFrame + A `pandas` data frame with the properties for each block on a given row. + ''' + + # determines block size, trimmed to fit in the image + if block_size is None: + if method == "chords": + tmp = ps.filters.apply_chords_3D(im) + + # find max chord length in each direction + block_size = np.int_(np.amax(ps.filters.region_size(im = tmp>0))) + block_size = min(block_size, min(np.array(im.shape)/2)) + + elif method == "dt": + scale_factor = 3 + dt = edt(im) + # TODO: Is the following supposed to be over 2 or over im.ndim? + block_size = min(dt.max() * scale_factor, min(np.array(im.shape)/2)) + + else: + print("Provide a valid method") + raise Exception + + results = [] + offset = int(block_size/2) + + # create blocks and queues them for calculation + for ax in range(im.ndim): + + # creates the masked images - removes half of a chunk from both ends of one axis + tmp = np.swapaxes(im, 0, ax) + tmp = tmp[offset:-offset, ...] + tmp = np.swapaxes(tmp, 0, ax) + slices = tools.subdivide(tmp, block_size=block_size, mode='whole') + if use_dask: + for s in slices: + results.append(dask.delayed(calc_g)(tmp[s], axis=ax)) + + # or do it the regular way + else: + for s in slices: + results.append(calc_g(tmp[s], axis=ax)) + + with ProgressBar(): + # collect all the results and calculate if needed + results = np.asarray(dask.compute(results), dtype=object).flatten() + + # format results to be returned as a single dataframe + df_out = pd.DataFrame() + + df_out['eps_orig'] = [r.original_porosity for r in results] + df_out['eps_perc'] = [r.effective_porosity for r in results] + df_out['g'] = [r.diffusive_conductance for r in results] + df_out['tau'] = [r.tortuosity for r in results] + df_out['volume'] = [r.volume for r in results] + df_out['length'] = [block_size for r in results] + df_out['axis'] = [r.axis for r in results] + df_out['time'] = [r.time for r in results] + + return df_out + + +def df_to_tortuosity(im, df): + """ + Compute the tortuosity of a network populated with diffusive conductance values + from the given dataframe. + + Parameters + ---------- + im : ndarray + The boolean image of the materials with `True` indicating the void space + df : dataframe + The dataframe returned by the `blocks_to_dataframe` function + block_size : int + The size of the blocks used to compute the conductance values in `df` + + Returns + ------- + tau : list of floats + The tortuosity in all three principal directions + """ + + block_size = list(df['length'])[0] + divs = block_size_to_divs(shape=im.shape, block_size=block_size) + + net = op.network.Cubic(shape=divs) + air = op.phase.Phase(network=net) + gx = df['g'][df['axis']==0] + gy = df['g'][df['axis']==1] + gz = df['g'][df['axis']==2] + + g = np.hstack([gz, gy, gx]) + + air['throat.diffusive_conductance'] = g + + bcs = {0: {'in': 'left', 'out': 'right'}, + 1: {'in': 'front', 'out': 'back'}, + 2: {'in': 'top', 'out': 'bottom'}} + + e = np.sum(im, dtype=np.int64) / im.size + D_AB = 1 + tau = [] + + for ax in range(im.ndim): + fick = op.algorithms.FickianDiffusion(network=net, phase=air) + fick.set_value_BC(pores=net.pores(bcs[ax]['in']), values=1.0) + fick.set_value_BC(pores=net.pores(bcs[ax]['out']), values=0.0) + fick.run() + rate_inlet = fick.rate(pores=net.pores(bcs[ax]['in']))[0] + L = (divs[ax] - 1) * block_size + A = (np.prod(divs) / divs[ax]) * (block_size**2) + D_eff = rate_inlet * L / (A * (1 - 0)) + tau.append(e * D_AB / D_eff) + + ws = op.Workspace() + ws.clear() + return tau + + +def tortuosity_bt(im, block_size=None, method="chords", use_dask=True): + r""" + Computes the tortuosity of an image in all directions + + Parameters + ---------- + im : ndarray + The boolean image of the materials with `True` indicating the void space + block_size : int + The size of the blocks which the image will be split into. If not provided, + it will be determined by the provided method in `method` + method : str + The method to use to determine block sizes if `block_size` is not provided. + =========== ================================================================== + method description + =========== ================================================================== + 'chords' Uses `apply_chords_3D` from Porespy to determine the longest chord + possible in the image as the length of each block. + 'dt' Uses the maximum length of the distance transform to determine + the length of each block. + ========== ================================================================== + use_dask : bool + A boolean determining the usage of `dask` for parallel processing. + """ + df = analyze_blocks(im, block_size, method, use_dask) + tau = df_to_tortuosity(im, df) + return tau + + +if __name__ =="__main__": + import porespy as ps + import numpy as np + + np.random.seed(1) + + im = ps.generators.blobs([100, 100, 100]) + # df = analyze_blocks(im, method="dt") + # tau = df_to_tortuosity(im, df) + r1 = tortuosity_bt(im, method="chords") + print(r1) \ No newline at end of file diff --git a/src/porespy/simulations/_dns.py b/src/porespy/simulations/_dns.py index f506d7bda..d1df4e743 100644 --- a/src/porespy/simulations/_dns.py +++ b/src/porespy/simulations/_dns.py @@ -1,5 +1,5 @@ import logging - +import time import numpy as np import openpnm as op @@ -89,6 +89,7 @@ def tortuosity_fd(im, axis, solver=None): cL, cR = 1.0, 0.0 fd.set_value_BC(pores=inlets, values=cL) fd.set_value_BC(pores=outlets, values=cR) + t = time.perf_counter_ns() if openpnm_v3: if solver is None: solver = op.solvers.PyamgRugeStubenSolver(tol=1e-8) @@ -99,6 +100,7 @@ def tortuosity_fd(im, axis, solver=None): else: fd.settings.update({"solver_family": "scipy", "solver_type": "cg"}) fd.run() + t = time.perf_counter_ns() - t # Calculate molar flow rate, effective diffusivity and tortuosity r_in = fd.rate(pores=inlets)[0] @@ -122,7 +124,7 @@ def tortuosity_fd(im, axis, solver=None): conc = np.zeros(im.size, dtype=float) conc[net["pore.template_indices"]] = fd["pore.concentration"] result.concentration = conc.reshape(im.shape) - result.sys = fd.A, fd.b + result.time = t/1e9 # Free memory ws.close_project(net.project) diff --git a/src/porespy/tools/_funcs.py b/src/porespy/tools/_funcs.py index 8443316f0..46ab0e5c2 100644 --- a/src/porespy/tools/_funcs.py +++ b/src/porespy/tools/_funcs.py @@ -260,7 +260,7 @@ def align_image_with_openpnm(im): return im -def subdivide(im, divs=2, overlap=0): +def subdivide(im, divs=2, block_size=None, overlap=0, mode='offset'): r""" Returns slices into an image describing the specified number of sub-arrays. @@ -274,20 +274,39 @@ def subdivide(im, divs=2, overlap=0): The image of the porous media divs : scalar or array_like The number of sub-divisions to create in each axis of the image. If a - scalar is given it is assumed this value applies in all dimensions. + scalar is given it is assumed this value applies in all dimensions. If + `block_size` is given this is ignored. + block_size : scalar or array_like + The size of the divisions to create. If a scalar is given then cubic + blocks are created. If this argument is given then `divs` is ignored. overlap : scalar or array_like The amount of overlap to use when dividing along each axis. If a scalar is given it is assumed this value applies in all dimensions. + mode : str + This argument is only used if `block_size` is given and it controls how + to handle the situation when block sizes is not a clean multiple of + the image shape. The options are: + + ========== ================================================================== + mode description + ========== ================================================================== + 'whole' Blocks start at the beginning of each axis, and only "whole" + blocks (that fit within the image) are included in the returned + list of slice objects. + 'offset' Only whole blocks are included, but an offset is applied to the + start of each axis so that an equal amount of voxels are missed + at the start and end of each axis. + 'partial' Blocks start at the beginning of each axis, and any blocks which + partially extend beyond the end of the image are returned. + 'strict' Raises an Exception of the image cannot be evenly divided by the + given block size. + ========== ================================================================== Returns ------- slices : ndarray An ndarray containing sets of slice objects for indexing into ``im`` - that extract subdivisions of an image. If ``flatten`` was ``True``, - then this array is suitable for iterating. If ``flatten`` was - ``False`` then the slice objects must be accessed by row, col, layer - indices. An ndarray is the preferred container since its shape can - be easily queried. + that extract subdivisions of an image. See Also -------- @@ -307,33 +326,57 @@ def subdivide(im, divs=2, overlap=0): to view online example. """ - divs = np.ones((im.ndim,), dtype=int) * np.array(divs) - overlap = overlap * (divs > 1) - + offset = np.zeros(im.ndim, dtype=int) + shape = np.array(im.shape, dtype=int) + if block_size is None: + divs = np.ones((im.ndim,), dtype=int) * np.array(divs) + overlap = overlap * (divs > 1) + spacing = np.round(shape/divs, decimals=0).astype(int) + else: + block_size = np.array(block_size, dtype=int) + spacing = np.ones((im.ndim,), dtype=int) * block_size + divs = shape/spacing + if mode == 'offset': + divs = np.array(divs, dtype=int) + offset = ((shape - block_size*divs)/2).astype(int) + elif mode == 'whole': + divs = np.array(divs, dtype=int) + elif mode == 'partial': + divs = np.ceil(divs).astype(int) + elif mode == 'strict': + if np.any(shape % block_size): + m = 'The image cannot be evenly divided by the given block_size' + raise Exception(m) + divs = np.array(divs).astype(int) + else: + raise Exception('Unsupported mode') s = np.zeros(shape=divs, dtype=object) - spacing = np.round(np.array(im.shape)/divs, decimals=0).astype(int) for i in range(s.shape[0]): x = spacing[0] - sx = slice(x*i, min(im.shape[0], x*(i+1)), None) + o = offset[0] + sx = slice(x*i + o, min(im.shape[0], x*(i+1)) + o, None) for j in range(s.shape[1]): y = spacing[1] - sy = slice(y*j, min(im.shape[1], y*(j+1)), None) + o = offset[1] + sy = slice(y*j + o, min(im.shape[1], y*(j+1)) + o, None) if im.ndim == 3: for k in range(s.shape[2]): z = spacing[2] - sz = slice(z*k, min(im.shape[2], z*(k+1)), None) + o = offset[2] + sz = slice(z*k + o, min(im.shape[2], z*(k+1)) + o, None) s[i, j, k] = tuple([sx, sy, sz]) else: s[i, j] = tuple([sx, sy]) s = s.flatten().tolist() - for i, item in enumerate(s): - s[i] = extend_slice(slices=item, shape=im.shape, pad=overlap) + if np.any(overlap): + for i, item in enumerate(s): + s[i] = extend_slice(slices=item, shape=im.shape, pad=overlap) return s def recombine(ims, slices, overlap): r""" - Recombines image chunks back into full image of original shape + Recombines image chunks back into full image Parameters ---------- @@ -348,8 +391,7 @@ def recombine(ims, slices, overlap): Returns ------- im : ndarray - An image constituted from the chunks in ``ims`` of the same shape - as the original image. + An image constituted from the chunks in ``ims`` See Also -------- diff --git a/test/unit/GenericTest.py b/test/unit/GenericTest.py new file mode 100644 index 000000000..d435a1e07 --- /dev/null +++ b/test/unit/GenericTest.py @@ -0,0 +1,22 @@ + + +class GenericTest: + + hr = '―' * 78 + + def __init__(self): + print(self.hr) + + def setup_class(self): + pass + + def teardown_class(self): + pass + + def run_all(self): + self.setup_class() + for item in self.__dir__(): + if item.startswith('test'): + print(f"Running test: {item}") + self.__getattribute__(item)() + self.teardown_class() diff --git a/test/unit/test_simulations_block_and_tackle.py b/test/unit/test_simulations_block_and_tackle.py new file mode 100644 index 000000000..f0bbeab12 --- /dev/null +++ b/test/unit/test_simulations_block_and_tackle.py @@ -0,0 +1,66 @@ +import numpy as np +from porespy.tools import subdivide +import openpnm as op +from porespy import beta +from porespy import generators +from GenericTest import GenericTest + + +class TestBlockAndTackle(GenericTest): + + def test_blocks_on_ideal_image(self): + + block_size = 20 + im = np.arange(120).reshape(4, 5, 6) + im = np.repeat(im, block_size, axis=0) + im = np.repeat(im, block_size, axis=1) + im = np.repeat(im, block_size, axis=2) + offset = int(block_size/2) + queue = [[], [], []] + for ax in range(im.ndim): + im_temp = np.swapaxes(im, 0, ax) + im_temp = im_temp[offset:-offset, ...] + im_temp = np.swapaxes(im_temp, 0, ax) + slices = subdivide(im_temp, block_size=block_size, mode='strict') + for s in slices: + queue[ax].append(np.unique(im_temp[s])) + queue.reverse() + conns = np.vstack(queue) + shape = np.array(im.shape)//block_size + pn = op.network.Cubic(shape) + assert np.all(pn.conns == conns) + + def test_analyze_blocks_on_empty_image(self): + im = np.ones([100, 100, 100], dtype=bool) + df = beta.rev_tortuosity(im, [25], dask_args={'enable': False}) + assert len(df) == 144 + assert np.all(df['volume'] == 25**3) + assert np.all(df['length'] == 25) + assert np.all(np.around(df['tau'], decimals=4) == 1.0000) + + def test_analyze_block_on_lattice_spheres(self): + im = generators.lattice_spheres( + shape=[100, 100, 100], r=10, offset=25, spacing=50) + df = beta.rev_tortuosity(im, [25], dask_args={'enable': False}) + assert np.all(df['volume'] == 25**3) + assert np.all(df['length'] == 25) + assert np.all(df['tau'] > 1.0) + + def test_analyze_blocks_on_asymmetric_image(self): + im1 = np.ones([100, 75, 50], dtype=bool) + im2 = np.ones([100, 80, 60], dtype=bool) # Not multiple of block size + df1 = beta.rev_tortuosity(im1, [25], dask_args={'enable': False}) + df2 = beta.rev_tortuosity(im2, [25], dask_args={'enable': False}) + assert len(df1) == 46 + assert np.all(df1['volume'] == 25**3) + assert np.all(df1['length'] == 25) + assert np.all(np.around(df1['tau'], decimals=4) == 1.0000) + assert np.sum(df1['axis'] == 0) == 18 + assert np.sum(df1['axis'] == 1) == 16 + assert np.sum(df1['axis'] == 2) == 12 + assert np.all(df2 == df1) + + +if __name__ == "__main__": + t = TestBlockAndTackle() + t.run_all() diff --git a/test/unit/test_tools.py b/test/unit/test_tools.py index 6ed02ad87..2d38f28df 100644 --- a/test/unit/test_tools.py +++ b/test/unit/test_tools.py @@ -298,6 +298,46 @@ def test_recombine_3d_odd_shape_vector_overlap(self): im2 = ps.tools.recombine(ims=ims, slices=s, overlap=[10, 20, 25]) assert np.all(im == im2) + def test_subdivide_with_mode_offset(self): + im = im = np.random.rand(143, 177, 111) + s = ps.tools.subdivide(im, block_size=10, mode='offset') + assert s[0][0].start > 0 + assert s[0][1].start > 0 + assert s[0][2].start == 0 # If only 1 remainder, the start is 0 + assert s[-1][0].stop < im.shape[0] + assert s[-1][1].stop < im.shape[1] + assert s[-1][2].stop < im.shape[2] + + def test_subdivide_with_mode_unsupported(self): + im = im = np.random.rand(143, 177, 111) + with pytest.raises(Exception): + ps.tools.subdivide(im, block_size=10, mode='blah') + + def test_subdivide_with_mode_strict(self): + im = im = np.random.rand(143, 177, 111) + with pytest.raises(Exception): + ps.tools.subdivide(im, block_size=10, mode='strict') + + def test_subdivide_with_mode_partial(self): + im = im = np.random.rand(143, 177, 111) + s = ps.tools.subdivide(im, block_size=10, mode='partial') + assert s[0][0].start == 0 + assert s[0][1].start == 0 + assert s[0][2].start == 0 # If only 1 remainder, the start is 0 + assert s[-1][0].stop == im.shape[0] + assert s[-1][1].stop == im.shape[1] + assert s[-1][2].stop == im.shape[2] + + def test_subdivide_with_mode_whole(self): + im = im = np.random.rand(143, 177, 111) + s = ps.tools.subdivide(im, block_size=10, mode='whole') + assert s[0][0].start == 0 + assert s[0][1].start == 0 + assert s[0][2].start == 0 # If only 1 remainder, the start is 0 + assert s[-1][0].stop < im.shape[0] + assert s[-1][1].stop < im.shape[1] + assert s[-1][2].stop < im.shape[2] + def test_sanitize_filename(self): fname = "test.stl.stl" assert ps.tools.sanitize_filename(fname, "stl") == "test.stl.stl"