{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Kinect Monte Carlo Simulations Using LAMMPS" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Requirements\n", "* You will need to install **VOTCA** using the instructions described [here](https://github.com/votca/votca/blob/master/share/sphinx/INSTALL.rst)\n", "* Once the installation is completed you need to activate the VOTCA enviroment by running the `VOTCARC.bash` script that has been installed at the `bin` subfolder for the path that you have provided for the installation step above" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Setting the environment" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will use [matplotlib](https://matplotlib.org/), [seaborn](https://seaborn.pydata.org/) and [pandas](https://pandas.pydata.org/) libraries for plotting. You can install it using [pip](https://pip.pypa.io/en/stable/) like" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2025-05-09T06:16:09.004716Z", "iopub.status.busy": "2025-05-09T06:16:09.004295Z", "iopub.status.idle": "2025-05-09T06:16:09.649681Z", "shell.execute_reply": "2025-05-09T06:16:09.649075Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: seaborn in /usr/lib/python3.13/site-packages (0.13.2)\r\n", "Requirement already satisfied: numpy!=1.24.0,>=1.20 in /usr/lib64/python3.13/site-packages (from seaborn) (2.2.5)\r\n", "Requirement already satisfied: pandas>=1.2 in /usr/lib64/python3.13/site-packages (from seaborn) (2.2.3)\r\n", "Requirement already satisfied: matplotlib!=3.6.1,>=3.4 in /usr/lib64/python3.13/site-packages (from seaborn) (3.10.0)\r\n", "Requirement already satisfied: contourpy>=1.0.1 in /usr/lib64/python3.13/site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.3.2)\r\n", "Requirement already satisfied: cycler>=0.10 in /usr/lib/python3.13/site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (0.11.0)\r\n", "Requirement already satisfied: fonttools>=4.22.0 in /usr/lib64/python3.13/site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (4.56.0)\r\n", "Requirement already satisfied: kiwisolver>=1.3.1 in /usr/lib64/python3.13/site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (1.4.8)\r\n", "Requirement already satisfied: packaging>=20.0 in /usr/lib/python3.13/site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (24.2)\r\n", "Requirement already satisfied: pillow>=8 in /usr/lib64/python3.13/site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (11.1.0)\r\n", "Requirement already satisfied: pyparsing>=2.3.1 in /usr/lib/python3.13/site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (3.1.2)\r\n", "Requirement already satisfied: python-dateutil>=2.7 in /usr/lib/python3.13/site-packages (from matplotlib!=3.6.1,>=3.4->seaborn) (2.8.2)\r\n", "Requirement already satisfied: pytz>=2020.1 in /usr/lib/python3.13/site-packages (from pandas>=1.2->seaborn) (2025.2)\r\n", "Requirement already satisfied: six>=1.5 in /usr/lib/python3.13/site-packages (from python-dateutil>=2.7->matplotlib!=3.6.1,>=3.4->seaborn) (1.17.0)\r\n" ] } ], "source": [ "!pip install seaborn --user" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Notes\n", "> * The `${VOTCASHARE}` environmental variable is set to the path that you provided during the VOTCA installation, by the default is set to `/usr/local/votca`.\n", "> * In Jupyter the `!` symbol means: *run the following command as a standard unix command*\n", "> * In Jupyter the command `%env` set an environmental variable" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Site energies and pair energy differences\n", "We will compute the histrogram using `resolution_sites` of 0.03 eV. See [eanalyze options and defaults](https://votca.github.io/xtp/eanalyze.html) for more information." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "execution": { "iopub.execute_input": "2025-05-09T06:16:09.652701Z", "iopub.status.busy": "2025-05-09T06:16:09.652492Z", "iopub.status.idle": "2025-05-09T06:16:10.138728Z", "shell.execute_reply": "2025-05-09T06:16:10.138168Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "==================================================\r\n", "======== VOTCA (http://www.votca.org) ========\r\n", "==================================================\r\n", "\r\n", "please read and cite: https://doi.org/10.21105/joss.06864\r\n", "and submit bugs to https://github.com/votca/votca/issues\r\n", "\r\n", "xtp_run, version 2025-dev gitid: 7b6d1e5 (compiled May 9 2025, 05:59:19)\r\n", "\r\n", "Initializing calculator\r\n", "... eanalyze\r\n", "1 frames in statefile, Ids are: 10000 \r\n", "Starting at frame 10000\r\n", "Evaluating frame 10000\r\n", "Import MD Topology (i.e. frame 10000) from state.hdf5\r\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ ".... \r\n", "... eanalyze\r\n", " Using 1 threads\r\n", "... ... Short-listed 1000 segments (pattern='*')\r\n", "... ... ... NOTE Statistics of site energies and spatial correlations thereof are based on the short-listed segments only. \r\n", "... ... ... Statistics of site-energy differences operate on the full list.\r\n", "... ... excited state e" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "... ... excited state h\r\n", "... ... excited state s" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "... ... excited state t" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "Changes have not been written to state file.\r\n" ] } ], "source": [ "!xtp_run -e eanalyze -c resolution_sites=0.03 -f state.hdf5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the current work directoy you can see the resulting files," ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2025-05-09T06:16:10.141654Z", "iopub.status.busy": "2025-05-09T06:16:10.141467Z", "iopub.status.idle": "2025-05-09T06:16:10.253792Z", "shell.execute_reply": "2025-05-09T06:16:10.253266Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "eanalyze.pairhist_e.out eanalyze.pairlist_s.out eanalyze.sitehist_e.out\r\n", "eanalyze.pairhist_h.out eanalyze.pairlist_t.out eanalyze.sitehist_h.out\r\n", "eanalyze.pairhist_s.out eanalyze.sitecorr_e.out eanalyze.sitehist_s.out\r\n", "eanalyze.pairhist_t.out eanalyze.sitecorr_h.out eanalyze.sitehist_t.out\r\n", "eanalyze.pairlist_e.out eanalyze.sitecorr_s.out\r\n", "eanalyze.pairlist_h.out eanalyze.sitecorr_t.out\r\n" ] } ], "source": [ "!ls eanalyze*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plotting the energies\n", "We will the previously installed `pandas` and `seaborn` library to plot the electron histrogram computed in the previous step," ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2025-05-09T06:16:10.256641Z", "iopub.status.busy": "2025-05-09T06:16:10.256453Z", "iopub.status.idle": "2025-05-09T06:16:11.269459Z", "shell.execute_reply": "2025-05-09T06:16:11.268889Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "<>:5: SyntaxWarning: invalid escape sequence '\\s'\n", "<>:5: SyntaxWarning: invalid escape sequence '\\s'\n", "/tmp/ipykernel_13574/2362228021.py:5: SyntaxWarning: invalid escape sequence '\\s'\n", " df = pd.read_table(\"eanalyze.pairhist_e.out\", comment=\"#\", sep='\\s+',names=columns, skiprows=2)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/usr/lib/python3.13/site-packages/seaborn/axisgrid.py:854: FutureWarning: \n", "\n", "The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.\n", "\n", " func(*plot_args, **plot_kwargs)\n" ] }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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NjlWokjBoCYiAMD333+PQYMG+W37+uuvce+99+K3v/0tDh48iDfffBNLly7Fc889BwDo06cPBg8ejCVLlvg975133sGQIUOQl5cnbxs0aBAcDge2bdvWRkdEFBkY1ERR5IsvvkB8fLzf7a9//SsA4NSpU8jOzvbb/7nnnsMf/vAHzJgxA507d8b48ePx17/+FW+++aa8z4MPPoiPPvoI1dXVAIDq6mp8+OGHftU0AMTFxSEpKQmnTp1qk2MlihTqYDeAiNrOjTfeiEWLFvltS0lJAQBYLJYG3d47d+7E9u3b5QoaAFwuF6xWK2praxEbG4u77roLTzzxBFatWoWZM2di1apVEELgzjvvbPDzY2JiUFtb22rHRxSJGNREUSQuLg5dunRp9LG0tDRUVFT4bXO73Zg3bx6mTZvWYH8p1A0GA37xi19gyZIlmDlzJpYsWYJf/OIXSExMbPCcixcvIj09PWDHQxQNGNREBADo378/Dh486LdtwIABOHLkSJPhLpk5cyZGjx6NL774Aj/88APmz5/fYJ8TJ07AarWif//+AW87USRjUBNFEZvNhpKSEr9tarUaaWlpmDhxIpYtW+b32J/+9CdMmTIFOTk5uP3226FUKrF3717s27fP7/zpUaNGoUuXLrj//vvRpUsXjBw5ssHP3rhxIzp37oxrrrmmFY+QKPJwMhlRFFm7di2ysrL8btdffz0A4N5778XBgwdx5MgRef+JEyfiiy++wLp16zB48GAMGzYML7/8MnJzcxu89oMPPoiKigo8+OCDjf7sDz74AA899FArHh1RZFKIxlYqIKKo9PTTT8NkMvnN6g6E/fv3Y+zYsTh69CgMBkNAX5so0rGiJiLZs88+i9zcXLhcroC+7rlz5/Duu+8ypIlagBU1ERFRCGNFTUREFMIY1ERERCGMQU1ERBTCGNREREQhjEFNREQUwhjUREREIYxBTUREFMIY1ERERCGMQU1ERBTC/n+C0bKGKw6NDQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pandas as pd \n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "columns = [\"E(eV)\", \"counts\"] \n", "df = pd.read_table(\"eanalyze.pairhist_e.out\", comment=\"#\", sep='\\s+',names=columns, skiprows=2) \n", "sns.relplot(x=\"E(eV)\", y=\"counts\", ci=None, kind=\"line\", data=df) \n", "plt.plot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Couplings histrogram\n", "In this step we will analyze the electron/hole couplings, using the `ianalyze` calculator using the `resolution_logJ2` parameter of 0.1 units. See the [ianalyze options and defaults](https://votca.github.io/xtp/ianalyze.html) for more information about the calculator." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2025-05-09T06:16:11.271922Z", "iopub.status.busy": "2025-05-09T06:16:11.271735Z", "iopub.status.idle": "2025-05-09T06:16:11.628651Z", "shell.execute_reply": "2025-05-09T06:16:11.628000Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "==================================================\r\n", "======== VOTCA (http://www.votca.org) ========\r\n", "==================================================\r\n", "\r\n", "please read and cite: https://doi.org/10.21105/joss.06864\r\n", "and submit bugs to https://github.com/votca/votca/issues\r\n", "\r\n", "xtp_run, version 2025-dev gitid: 7b6d1e5 (compiled May 9 2025, 05:59:19)\r\n", "\r\n", "Initializing calculator\r\n", "... ianalyze\r\n", "1 frames in statefile, Ids are: 10000 \r\n", "Starting at frame 10000\r\n", "Evaluating frame 10000\r\n", "Import MD Topology (i.e. frame 10000) from state.hdf5\r\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ ".... \r\n", "... ianalyze\r\n", " Using 1 threads\r\n", "Calculating for state e now.\r\n", "Calculating for state h now.\r\n", "Changes have not been written to state file.\r\n" ] } ], "source": [ "!xtp_run -e ianalyze -c resolution_logJ2=0.1 states=e,h -f state.hdf5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plotting the coupling histogram\n", "We can now plot the logarithm of the squared coupling for the hole," ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2025-05-09T06:16:11.631624Z", "iopub.status.busy": "2025-05-09T06:16:11.631409Z", "iopub.status.idle": "2025-05-09T06:16:11.797054Z", "shell.execute_reply": "2025-05-09T06:16:11.796344Z" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "<>:2: SyntaxWarning: invalid escape sequence '\\s'\n", "<>:2: SyntaxWarning: invalid escape sequence '\\s'\n", "/tmp/ipykernel_13574/886975016.py:2: SyntaxWarning: invalid escape sequence '\\s'\n", " df = pd.read_table(\"ianalyze.ihist_h.out\", comment=\"#\", sep='\\s+',names=columns, skiprows=2)\n", "/usr/lib/python3.13/site-packages/seaborn/axisgrid.py:854: FutureWarning: \n", "\n", "The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.\n", "\n", " func(*plot_args, **plot_kwargs)\n" ] }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeoAAAHqCAYAAADLbQ06AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAbFpJREFUeJzt3Xl4VOXZP/DvmSUzk8m+JxD2sCObiuACKKAoLrXFfatotagVd6lV0Veh2oq08Lq+Faz+UFsV6y7gArJYICzKvidAErJnksxk1vP7Y845s2SSTJJJZsn3c125Ss6cmTxTYe7c93M/zyOIoiiCiIiIIpIq3AMgIiKiljFQExERRTAGaiIiogjGQE1ERBTBGKiJiIgiGAM1ERFRBGOgJiIiimAM1ERERBGMgZqIiCiCMVATERFFsLAG6vXr1+Pyyy9HXl4eBEHAJ5980uyeffv24YorrkBycjISExNxzjnnoLi4WHncarXivvvuQ0ZGBoxGI6644gqcPHmym98JERFR1whroG5sbMTo0aOxbNmygI8fOXIE5513HoYOHYoffvgBu3btwpNPPgm9Xq/cM2/ePKxatQrvv/8+NmzYgIaGBsyaNQtOp7Mb3wkREVHXECLlUA5BELBq1SpcddVVyrXrrrsOWq0W77zzTsDn1NXVITMzE++88w6uvfZaAEBJSQny8/Px5Zdf4uKLLw7qZ4uiiPr6eiQmJkIQhBC9IyIios6L2Dlql8uFL774AoMHD8bFF1+MrKwsTJgwwac8XlhYCLvdjhkzZijX8vLyMHLkSGzatKnF17ZarTCZTMrXqVOnkJycjPr6+i5/X0RERO0RsYG6vLwcDQ0N+POf/4xLLrkEq1evxq9+9StcffXVWLduHQCgrKwMcXFxSE1N9XludnY2ysrKWnztRYsWITk5WfnKz8/v8vdDRETUEREbqF0uFwDgyiuvxAMPPIAxY8bg8ccfx6xZs/Daa6+1+lxRFFstYc+fPx91dXXK14kTJ0I+fiIiolCI2ECdkZEBjUaD4cOH+1wfNmyY0vWdk5MDm82Gmpoan3vKy8uRnZ3d4mvrdDokJSX5fBEREUWiiA3UcXFxOOuss3DgwAGf6wcPHkTfvn0BAOPHj4dWq8WaNWuUx0tLS7F7925MmjSp28dMREQUappw/vCGhgYcPnxY+f7YsWPYuXMn0tLS0KdPHzzyyCO49tprccEFF2Dq1Kn4+uuv8dlnn+GHH34AACQnJ2POnDl46KGHkJ6ejrS0NDz88MMYNWoUpk2bFsZ3RkREFBphXZ71ww8/YOrUqc2u33rrrVixYgUA4K233sKiRYtw8uRJDBkyBM888wyuvPJK5d6mpiY88sgjWLlyJSwWCy666CK88sor7WoQM5lMSE5ORl1dHcvgREQUUSJmHXU4MVATEVGkitg5aiIiImKgJiIiimgM1ERERBGMgZqIiCiCMVATERFFMAZqIiKiCMZATUREFMEYqImIiCIYAzUREVEEY6AmIurBuDll5GOgJiLqoV5bdwTjn1uLQ6frwz0UagUDNRFRD/Xx9pOobrRh3cGKcA+FWsFATUTUAzXZnThS0QgAKKoyB7zH5RLxr60ncLicGXc4MVATEfVAh043wOlyz08XVQcO1FuOV+PRj37Gnz7Z3c2jI28M1EREPdDe0jrlz0VVjQHvKa+3AgAqpP+l8GCgJiLqgfaVesrZJ2sssDtdze5ptDoAAGabs83XE0URN7z5E255aws7yUNME+4BEBFR99tbYlL+7HSJOFVjQb8Mo889cqCW/7c1tWY7Nh2pAgDUmO1IM8aFfMw9FTNqIqIeRhRF7Ct1B2q91h0GjgcofzdIAdpibzujNnvdw1J5aDFQExH1MCdrLKi3OhCnVmHSwAwAQHGAhjI5k7Y7RdgczUvj3ixe5fHKBgbqUGKgJiLqYfZIZe+C7AQMykoAAByvbB6oG6ye4Gu2tV7+9g7UzKhDi4GaiCgKfb+/HOe98B3+e7Sq3c/dK5W9h+cmoW96PNBC57f33HRjGw1lFpa+uwwDNRFRFFqz7zRO1ljw/YH27yomz08Py01C3zR3A1mgOWrvQG1uo6HMO+OuYOk7pNj1TUQUhZqkDLcpiEYvf3LH9/C8JPRKMQAATlRb4HSJUKsE5b6G9mTULH13GWbURERRyNzBQF1ntuNUrQWQMuq8FAO0agE2pwtlpiafexttwWfULH13HQZqIqIoJC+HCmbplLd9Ze5suneqAckGLdQqAflp0jx1pW/5u9GrmaytjNrMjLrLMFATEUUhufRtCWLXMG9y2XtYbpJyra8UqI/7Hc7hXfpuq+vbO7Pn8qzQYqAmIopCZrs7cDa1sb7Zn7xeekCmZxeyvunuP/t3fvt0fVuDz6irzbaAW5JSxzBQExFFITmTbmpnRl1jtgEAMow65Vq/dDmj9gRql0v0Cb5tZdTe94oiUN1oa9e4qGUM1EREUUgO1O2do5YDqPde3H0z5IzaU/pu9AvMbWXU/k1tnKcOHQZqIqIo1NFmsoCBWm4mqzIrJ1/5B+a2M2rfxxmoQ4eBmogoClk62ExWEyBQ906Nh0pwB305wDb4Lcfyz7CbjcfuOyfNQB06DNRERFHG6RJhlZrI2rOOWhRFVAUI1HEaFbKT9ACA0jr3Wmr/oy3NbZS+LVIgl/dL4e5kocNATUQUZbyDc3tK3xa7UwnwqX7nRafEu7+Xm82aBeog11HnJrt3OmNGHToM1EREUcY7aDbZncq8cluqGtxBOE6jgjFO7fNYarwWAFBrtgMdKn27x9RHmu9mRh06DNRERFHGe17aJQK2INcsy9lyWnwcBEHweSzVP6O2tS+jlsekBGpm1CHDQE1EFGX8y91NtuACdaD5aVmKlFHXKBm1+2fImbd/KdyfHMj7SGuyKxmoQ4aBmogoyvgvhQp2njpQx7dMvlbrN0edJTWZtZlR+5e+GahDhoGaiCjK+AfmYAN1oDXUMrmZTL5HDtSZie4dzNpaRy2XvvtKGXW91dHupWMUGAM1EVGU8Q+AwQbE1gJ1S81kWVKgbm1nMlEUlV8WshL10GncoYWHc4RGWAP1+vXrcfnllyMvLw+CIOCTTz5p8d677roLgiBgyZIlPtetVivuu+8+ZGRkwGg04oorrsDJkye7YfREROHhX4YOuvRtbi1QB16elZWoV36G0xW4u9zmdCmPGeLUShZezvJ3SIQ1UDc2NmL06NFYtmxZq/d98skn+O9//4u8vLxmj82bNw+rVq3C+++/jw0bNqChoQGzZs2C08mSCxHFJv/AbA0yUMvLs/zXUMOrmUzOqOUMOivJc3hHS78QeGf08XFqZCS4n8OMOjQ04fzhM2fOxMyZM1u959SpU7j33nvxzTff4LLLLvN5rK6uDv/4xz/wzjvvYNq0aQCAd999F/n5+Vi7di0uvvjiLh0/EVE4NCt9tzOjTg8io5ZL3+nGOKgE9zIws9WBBF3zsCH/fI1KgFatUjJqNpSFRkTPUbtcLtx888145JFHMGLEiGaPFxYWwm63Y8aMGcq1vLw8jBw5Eps2berm0RIRdY+Olr7l5VlyUPYmXzPbnLA6nErpO0GngTHOHZwbpZ/bYHVg85Eqpdwtj8cgLeVioA6tiA7UL7zwAjQaDf7whz8EfLysrAxxcXFITU31uZ6dnY2ysrIWX9dqtcJkMvl8ERFFi2Zd30E2k7W2PCtRr1H26a4125WM2qjTIF7nu5b6z1/tw/Vv/oRv9pT5/Px4OVBLpW/uThYaERuoCwsL8be//Q0rVqxotoNOW0RRbPU5ixYtQnJysvKVn58fghETEXUPi99SqWAO5nC6RNRa3PPPgQK1SiX47Pct70xm9Mqo5cz50OkGAMDxqkb3eKSfb9Ayo+4KERuof/zxR5SXl6NPnz7QaDTQaDQoKirCQw89hH79+gEAcnJyYLPZUFNT4/Pc8vJyZGdnt/ja8+fPR11dnfJ14sSJLn8/RESh0pF11LVmG+QtweXGMX/K7mSNdqWZLEGnUUracvCWM+U6qfHMU/p2B3QG6tCK2EB988034+eff8bOnTuVr7y8PDzyyCP45ptvAADjx4+HVqvFmjVrlOeVlpZi9+7dmDRpUouvrdPpkJSU5PNFRBQtms1RB7GFqLyGOtmghVYd+KNfnqeuNdu8St9qT0YtBW85AMsd4nLp26B1v67crCb/TOqcsHZ9NzQ04PDhw8r3x44dw86dO5GWloY+ffogPT3d536tVoucnBwMGTIEAJCcnIw5c+bgoYceQnp6OtLS0vDwww9j1KhRShc4EVGskQNjnFoFm9OFJkfbGXVrm53I5EBd0WCFTToOM8F7jtrmQJPdifomdxCvtbhf02J3fx8vBfRkgzszr2+yd+JdkiysgXrbtm2YOnWq8v2DDz4IALj11luxYsWKoF7j5ZdfhkajwTXXXAOLxYKLLroIK1asgFqtDuLZRETRRy51pxnjUGZqCqqZLLhA7Q6wp2osyjXvOWqLzelTzvZk1O6gLpfIk6RAbWpytNkzRG0La6CeMmVK0OeoAsDx48ebXdPr9Vi6dCmWLl0a4tEREUUmufSdKgXqYJrJqs0tL82SyRuhnJQCdZxGBa1apXRzN9ocPpuY1FnkOWp3Ri03kyXp3YHa6RJhtjlhDLD2moIXsXPUREQUWJOSUbsDYjDNZPLSrECbncjkZrKTNWZAKntDyqohzVEHzqh9l2fptSpo1e4s2sTyd6cxUBMRRRklo5ay42BK38pmJ0HMUcsZtVGam/bOqL3XRnvmqN0/Xy9l1IIgIFHKqk2W1k/dorYxUBMRRRk5MMvZcagyanmOWg7qxrjWM+omuwtNdqfyi4Mc0AEgSe9+DjPqzmOgJiKKMp5mMvd65WDmqIPJqFP85q/l0rdPRu23NtpksSs/3ydQyw1lFgbqzuIMPxFRlJGbt+Q56iZ72+uoPUdcBt7sBAEazeRM2ui1M5m8bEtWa7ErGbVc+oZXQxkz6s5joCYiiiIul6gEZjmjDqb0Xd0gB2pdi/ek+u1YpmTUXnt925x+gdps9yp9e0JKkkEqfXOOutMYqImIooj35iapctd3MOuo5Yy6leVZ/qVvuZnM6JVRyw1kapXg3j/cbFNK34Y4z2yqklGz9N1pnKMmIooi3tuHypuXtDVHbbY5PFl4QsuBOk6j8jlv2ug/R231zFH3S48HlNK3vI7aO6OWdiezejJqu9OF/WWmdu2fQQzURERRxaLMB6sQLwXGtkrf8q5kcWoVjHGt79rofWCH/zrq8nqrEvAHZSUA0sEcFulawK5vr4z6b2sP4ZIlP+LTXSXteMfEQE1EFEW8j5TUS6Vmi93ZapZa0+g53rKt7Ty9G8r8M2r5oI5EnQa5yQZAWkstH7tpCNT17dVMtr/MBADYW2pq13vu6RioiYgixGe7SvDABztbnXO2eDVuyVt2iiJgdbTc+V3V6C5Xt7Y0S+adURv9MmpZRqJOOXijzqvr2xCo69urmaxSamgrN/H4y/ZgoCYiihD/+/1hrNpxCqv3lrV4j+fsZ7XPcihrK0u05HnljFbmp2XeGXWC1Exm8CuXZybolIBea7Z7snyv+xIDbHgi/8Jw2tTU5jjIg4GaiChCyHPJ24tqWrxHPlLSoFVDq/bsqd3aPLW8JWjvVEObY/BeomWUur3jtX6BOtETqOss9mZ7faOFDU/kJWIM1O3DQE1EFCHk7HN7cW2L9/gfKSln1a0F6lO1cqCOb3MMKT4ZtTtQa9Qq6DSecJHpVfquqLfC4XLPj8d7d33rPUddQirZN0oB/TRL3+3CQE1EFAGsDqfSUb2v1NTiPLX/kZLy/7Y2ry2fhtUrpZ0ZdYClWlACtTugl9Z5smO99zpqg6frWxRFpewNqSmtwcqNUILFQE1EFAHqvErEDpeIn08Gzqr999UOJqNuV+nb2LzrG35l7YyEOJ/SN6QNUOLUzTc8cbhEWOxOVEllb1k5y99BY6AmIooA/jt4tVT+9m4mg1dG3dKmJw6nS8l6O1r6htd8NeQ5aoPvdqMGrdpn6Vd8nBpqlfv7+iaHT0YNlr/bhYGaiCgC1PkF6sIWGsr8l0Lp41ovfZ+ut8LpEqFVC8hKbHmfb5lv6duTRcd7/TkzQa/MUcv8O8MFQfDZ9KTSP6OuZ0YdLAZqIqIIIAdquYt7R3FNwE1M/EvfBq37Y9x7D3BvJ6s989MqVeubncBreZYg+GbRRr+MWqNWIbGF0rjMe9MT/9I3O7+Dx0BNRBQB5I1BxuSnIE6tQlWjDcVSkPXmKX27g2RbzWTy/HSvIOanIc1jXzUmD3eeP8AnsHsH4nRpPXayV/Zt0AYI1F6bnlQ1sPTdUQzUREQRQM6oMxJ0GNErCQCwvbh5+du/9C2XnOVM++PtJ/HKD4eVbFxpJEtpe34aUsl6yXVj8cdLh/lclxvLUuO10EpNY967mPmXvuHd+d1kR5W0RjwnSQ8wo24XBmoiogggB+pkgxbj+qQCALYXNW8oa63r2+kSMf/jX/Di1wewp8S9n/apWndWHkzHd2vkn5fpNc/tPU8dKKNO1Hk2PamUMurhee5fQriNaPAYqImIIkCgQB2oocx/HbUSqG0ulNc3KXt+y9m4klGndS5Qyxm1d6BOMXg6xAPPUcsZtUOZox6e6w7Up9lMFjQGaiKiCCAH6iSDFuP6pgDSaVNyYJb576tt8Mqo5aAMr21IPWuogyt9t0QOxBkJXhm1T+lb0+w5njlqu7I8S86oT5uaeC51kBioiYgigHdGnZtsQGq8Fi4ROF7p21Dmv6+29zpqeQcySOuwnS4RJdL2ocHsStaaGcNzMDo/Bb8Z31u5luJT+m4eTpK8TtiSM+phUkbdZHcp24tS6xioiYgigHegBoC+6UYAQHF1o899rTWTnfLKqIurzdhbYoLDJUKjEpAtNXF11PC8JPznnnNxfkGmcs27mSw+YEbtvnaq1qLsB56X4lmDzd3JgsNATUQUAUx+gbpfurtUfbzKL6P2K33rWyh9A8Cnu04BAPJSDMouYaHkPUetD7Q8S3ovRyvcv2wk6jXQadTITnKXz7lEKzgM1EREEcDkNUcNr4y6qMo3o7a0sIWoxeYJ1PJGJJ//XAqEoOO7Jck+GXXL66hL6tzjkue3s7lEq10YqImIIkDz0reUUfvPUcvLs6QjJQ3SiVUWrznqGSNyAK+TrboqUHvPUbe2M5ncM5YuHfiRlSgFanZ+B4WBmogozOxOl3JWs/8ctXdGLYpii13fZptTOXf6ijF5Pq/f2Y7vlngf4BG49O07by3vaCaXvrmWOjgM1EREYeZ9cpbcgCXPUZeampRNTprsLiU7lQO1TgqQRVVm2J0i1CoBkwam+2xG0tmO75Ykt5VR630P7khn6btDGKiJiMJMLnsn6DTQSNtzphnjkKjTQBShlLS9z5xWur6l/5V3/spJ0kOrVmFsnxTl3i4rfbex13ei3jejzjD6ZtQM1MFhoCYiCjN5PbF3hioIAvr4zVPLm5/oNCqli9s/QMpBWd7dDAB6p3VN6VuvVUOncYeRQHt9G+M08G42lzPqLCWjZuk7GAzURERhVufX8S3rJ81TH5fmqZv85qf9/wyv+Wg5UGtUArKDOIe6o+SsOtA6apVKQKJX+dszR+0O1OX13J0sGM3/nyUiom6lBGq/UrHc+V1UJWfUcse3V6BuIaM+q38qpg7JxMDMBKWc3hWuPTMf6w5WYKR04pe/JINGeX/pRvcvDJlSZm13iqgx25FmjAv4XHJjoCYiCjP/pVkyOaMuqvYN1HqvLNq/21oO1DqNGst/e3YXjxx4cMYQPDhjSIuPuxvK5HXU7oAcp1Eh3RiHqkYbTpuaGKjbwNI3EVGY+e9KJvNk1O7St8XviEsEKH336qLGsY5K8il9e0rwuSnu8rf/hi7UHAM1EVEYyDuMoZWMWl5LfbLGArvT5TmQQ+sphuo1vh/j+V20Zrqj5LXUKsF3g5RRvdxd6TuKm5+5Tb4YqImIutmmI5UYueAbvPLDYaCVjDorUQe9VgWnS8SpGguqG90nUHmXvjVqFbRqd2u1SgBykjt3+EaoyRl1mlEHlVcL+Dhp+Zh8bja1jIGaiKibbS+qgdMlYs3e04B3Rh3vG6hVKgF909xZ9ZGKBry14RgAYEzvZJ/75Hnq3GQDtF3YONYRcie7PD8tG9fX3ZX+88k62ByusIwtWoT1v+j69etx+eWXIy8vD4Ig4JNPPlEes9vteOyxxzBq1CgYjUbk5eXhlltuQUlJic9rWK1W3HfffcjIyIDRaMQVV1yBkydPhuHdEBEFp0rKjPeX1sPpEr26vrXN7pXnqf+6+iCOVjYizRiHOy4Y4HOP3PkdafPT8HpP6X6BekCGESnxWlgdLuwtNYVpdNEhrIG6sbERo0ePxrJly5o9ZjabsX37djz55JPYvn07Pv74Yxw8eBBXXHGFz33z5s3DqlWr8P7772PDhg1oaGjArFmz4HQ6m70mEVEkqJECtcXuxPGqxhbnqAGgX4Y7o94nBbMHpg9uFtDlhrLeXbRVaGfkSqV4/7lzQRCUtd7bi1j+bk1Yl2fNnDkTM2fODPhYcnIy1qxZ43Nt6dKlOPvss1FcXIw+ffqgrq4O//jHP/DOO+9g2rRpAIB3330X+fn5WLt2LS6++OJueR9ERO0hZ9SQAnBLG54AQB+vXcUGZSXg+rPym90jZ9RdtVVoZ1wxJg+CAEwektnssXF9UvDd/nJsL67B7egflvFFg8iazGhDXV0dBEFASoq7CaGwsBB2ux0zZsxQ7snLy8PIkSOxadOmFl/HarXCZDL5fBERdZcasydQ7y0xtZ5RS53fAPDHS4cG3LxErwTqyOr4hjS22WfmK0dbemNGHZyoCdRNTU14/PHHccMNNyApyb0DTllZGeLi4pCamupzb3Z2NsrKylp8rUWLFiE5OVn5ys9v/hsqEVFXqWn0nJa1u8SEBmvzvb5lY/ukYEReEmaP742pQ7ICvt7FI3LQK8WAcwsyunDUoTc6PwUqASipa0JZHQ/oaElUBGq73Y7rrrsOLpcLr7zySpv3i6IIQRBafHz+/Pmoq6tTvk6cOBHiERMRtayq0XMYxfaiGuXoykCB2qjT4Is/nI+/zB7d4ufa76cMxMbHL+yy4yy7ilGnwdAcd+LFZVoti/hAbbfbcc011+DYsWNYs2aNkk0DQE5ODmw2G2pqfP8Dl5eXIzs7u8XX1Ol0SEpK8vkiIuoOFpsTTXbPciQ5mzZo1YjTRPxHcsiN6yutp2b5u0UR/bdCDtKHDh3C2rVrkZ6e7vP4+PHjodVqfZrOSktLsXv3bkyaNCkMIyYiap2cTcepVeif4Zl/lnfw6mnGS+upC5lRtyisfzMaGhpw+PBh5ftjx45h586dSEtLQ15eHn7zm99g+/bt+Pzzz+F0OpV557S0NMTFxSE5ORlz5szBQw89hPT0dKSlpeHhhx/GqFGjlC5wIqJIIs9Ppxq1GJ6bhGOV7r2uA5W9ewK5oWzPKROsDid0mubnWvd0YQ3U27Ztw9SpU5XvH3zwQQDArbfeigULFuDTTz8FAIwZM8bned9//z2mTJkCAHj55Zeh0WhwzTXXwGKx4KKLLsKKFSugVvM/NhFFHjmjTjPqMDwvCV/8Ugr04EDdJy0eSXoNTE0OHKtsVOasySOsgXrKlCmtHhoezIHier0eS5cuxdKlS0M8OiKi0JOXZqUZtRiWm6hc76mBWhAEDMxKwI7iWhwub2CgDiCi56iJiGJNtVT6TjPqMDzXs2d3oM1OeopBmQkAgMPlDeEeSkRioCYi6kbVcuk7XovsJB3SjO49sHtqRg1pxzUwULeIgZqIqBt5Z9SCICjlbwZqBuqWMFATEXUjJaM2ugPzFaPzkKjT4JwB6W08M3bJgfpoZSOcrrZ7k3qanrlwj4goTGq8MmoAuPasPpg9Ph8qVcu7Kca63qnxiNOoYHO4cLLGjL5e+5sTM2oiom4lL89KNXpK3T05SAOAWiVggLT5y5EKlr/9MVATEXWjGrOcUceFeygRZSDnqVvEQE1E1E2cLhG1yjpqBmpvXKLVMgZqIqJuUmexQ+6VSo1noPbGzu+WMVATEXWT6kZ3Np2k10Cr5sevN+9AHcyulD0J/6YQEXUTOVCz7N1c/wwjBAEwNTlQ0WAN4hk9BwM1EVE3YaBumV6rRn5qPMDydzMM1ERE3YSBunVy+ftIRWO4hxJRGKiJiLqJfHIWG8kCUwI1M2ofDNRERN1EyagTGKgD4RKtwBioiYi6iRKomVEHNDDLvTvZUe5O5oOBmoiom3COunW9pWayMlMTHE5XuIcTMRioiYi6CQN16zISdNCoBLhEcImWFwZqIqJuwkDdOrVKQHaSHgBQUtsU7uFEDAZqIqJuwkDdttxkd6Auq2OgljFQExF1A4vNCYvdCTBQtyo3xQAAKK2zhHsoEYOBmoioG8hrqLVqAQk6TbiHE7HkjJqlbw8GaiKibiCXvVPj4yAIQriHE7GU0reJGbWMgZqIqBucrHEHHrlZigJjRt0cAzURUTc4Im3iIW+TSYHlJnOO2h8DNRFRN5C3xWSgbl1uijujLq+3ws5NTwAGaiKi7iEH6oGZDNStyTDqoFULEEV3sCYGaiKiLudyiSx9B0nltelJaS3L32CgJiLqeqWmJphtTmhUAvqmx4d7OBEvT5mnZkMZGKiJiLqeXPbul2GEVs2P3bbkSJ3fbChz498YIqIu5pmfNoZ7KFFBbijjEi03Bmoioi7Gju/2yU3ift/eGKiJiLrYEQbqduF+374YqImIuthhueM7MzHcQ4kKbCbzxUBNRBRipXUWbC+uAaQ9vuV9vgdmcY46GHIzWUWDFTYHNz3hES5ERCF2+4pt2FdqworfngWjdFJWrxQD4uP4kRuMdGMc4tQq2JwunDY1IT+tZy9pY0ZNRBRCxVVm7Cs1AQCe/2IfDpTVAwAGcn46aCqVoGTVZSaWvxmoiYhCaN2hCuXPh8ob8L/fHwYADOLWoe2So5yixYYyBmoiohBad8AdqOU103JDFDu+2ydP2fSEGXVYA/X69etx+eWXIy8vD4Ig4JNPPvF5XBRFLFiwAHl5eTAYDJgyZQr27Nnjc4/VasV9992HjIwMGI1GXHHFFTh58mQ3vxMiIsDmcGHzkUoAwF9nj0b/DE/zGDc7aZ8cqfOba6nDHKgbGxsxevRoLFu2LODjL774IhYvXoxly5Zh69atyMnJwfTp01FfX6/cM2/ePKxatQrvv/8+NmzYgIaGBsyaNQtOp7Mb3wkREVBYVINGmxMZCXEY3TsFj88cqjzGjLp98lK4jagsrC2IM2fOxMyZMwM+JooilixZgieeeAJXX301AODtt99GdnY2Vq5cibvuugt1dXX4xz/+gXfeeQfTpk0DALz77rvIz8/H2rVrcfHFF3fr+yGinm3dQXfZ+4KCTKhUAmYMz8ZD0wdDr1UjPUEX7uFFldT4OABArdke7qGEXcTOUR87dgxlZWWYMWOGck2n02Hy5MnYtGkTAKCwsBB2u93nnry8PIwcOVK5JxCr1QqTyeTzRUTUWevlQD04EwAgCALuu6gAd14wIMwjiz5JBi0AwNTkCPdQwi5iA3VZWRkAIDs72+d6dna28lhZWRni4uKQmpra4j2BLFq0CMnJycpXfn5+l7wHIuo5yk1N2FtqgiAA5xdkhHs4US9J7y74mizMqCM2UMsEQfD5XhTFZtf8tXXP/PnzUVdXp3ydOHEiZOMlop5p/SF3E9nIvGSWuUMgUS9n1AzUERuoc3JyAK/MWlZeXq5k2Tk5ObDZbKipqWnxnkB0Oh2SkpJ8voiIOmPzkSoAwAWDmU2HQpLBnVE3WB1wucRwDyesIjZQ9+/fHzk5OVizZo1yzWazYd26dZg0aRIAYPz48dBqtT73lJaWYvfu3co9RETd4bSJ66VDKUnKqEURaLD17HnqsHZ9NzQ04PDhw8r3x44dw86dO5GWloY+ffpg3rx5WLhwIQoKClBQUICFCxciPj4eN9xwAwAgOTkZc+bMwUMPPYT09HSkpaXh4YcfxqhRo5QucCKi7lBjdh+8kSJ1K1Pn6LVqxGlUsDlcMFnsSuDuicIaqLdt24apU6cq3z/44IMAgFtvvRUrVqzAo48+CovFgrlz56KmpgYTJkzA6tWrkZjoOSru5ZdfhkajwTXXXAOLxYKLLroIK1asgFqtDst7IqKeqUY6ISuVgTpkkvRaVDZYYbI4gNQgnhCjBFEUe3bxH4DJZEJycjLq6uo4X03Uw1lsThytbMDw3KQ2G1e9DXvya1jsTqx7ZAr6pnMXslC48KUfcLSiEe//7hycMyA93MMJm4idoyYiCodnPtuDy/6+AZuk5rBgNNmdsNjduyGy9B06crm7py/RYqAmIvJytKIRAHCssjHo58i7Z6lVgrL+lzqPm564MVATEXmR1+1abMGfF6A0khm07SqXU+u46YkbAzURkZcGqzt7a2zHkiBPx3fP7UzuCp6MmoGaiIgkcqBuT0Ytl77Z8R1aiUpGzdI3ERFJ2w/XN3Umo2agDiW5mayeGTUREQFAk90Fp7RdpblDGTVL36HE0rcbAzURkaTe6gkIZms7msnkzU6MzKhDKYmlb4CBmojIo8FrGZDZ3p6ub3eAZzNZaDGjdmOgJiKS1HsFaks75qhrzdw+tCsk8ahLgIGaiMhD7vgGgMb2lL4ZqLtEsoGlbzBQExF5+GTUHSh9s5kstLy7vnvymdQM1EREEu9lQI3W9i/PYjNZaMlz1C6xfcvlYg0DNRGRxLv0HeyGJ06XiDoLm8m6gk6jglbt3pK1J+/3zUBNRCTx7vputDkQzCnAJosd8m0pBmbUoSQIAjc9YaAmIvKo98qoXSJgdbjafI5c9k7QaRCn4UdqqClLtHpwQxn/VhERSer9yqvB7E7GNdRdiydoMVATESkarP6Buu0sjmuouxY3PWGgJiJS+M+DBtNQxoy6aymbnjCjJiKiBr/Sd2MQgZoZdddKkjc9Ydc3ERF1pPTt2ZWMGXVXYEbNQE1EpJCbyVTupbtBnaDlKX0zo+4KnKMGNOEeABFRpJDnqDMSdCivt/qcoPXauiPYUVwDAFAJAq49Kx9ThmR5lb6ZUXcFHnXJQE1EBAAQRVEpfWcn6d2BWvq+vL4Jf/5qv8/9P5+sw4bHpqKmUdrnm9uHdolEnqDF0jcREaRDOORzH7KTdIDXOurqRnfWnKjT4LmrRiJOrcKpWguOVDTy5KwuJjeT+a9x70kYqImI/Oan06TsWG4mq5XmobOSdLjpnL44u38aAGDdwQoG6i7GM6kZqImIAK9AnaDTwKhzZ3FyRl3r1zB2weAMAMD6gxVcR93FPFuIMlATEUW9oqpGPPPZHpTUWtr9XHl+OlGvRXycGvAK1HUWd9acIgWNyYOzAACbj1TBJu0HzjnqruHJqIM7JCUWMVATUcx4bd0RLN94HB9sPdHu58od34l6DeLj5Izat/SdLGXNg7MTkJOkh83pDtJatQCjFNwptOQ5aqdLDGrv9VjEQE1EMWP3KRPgtVuYzO50tbkdaINX6ds/o66Vz5uWjrEUBEEpf0MqiQuCENL3Qm4GrRoalXwmdc8sfzNQE1FMcDhdOHC6HgjQIXzdGz/h/Be/Q6O15c7heqX0HSBQB5iHlsvf4BrqLiUIQo8/6rJDgfrEiRM4efKk8v2WLVswb948vPHGG6EcGxFR0I5WNirzxd7nSouiiB3FNahssOFIRUOLz1eayfTaZqVveY462eAJyOcNylB2MOOuZF1L2fSEGXXwbrjhBnz//fcAgLKyMkyfPh1btmzBH//4Rzz77LOhHiMRUZv2lpiUP3sfrtFo86yPLqltavH5rZW+6yzNM+rkeC3G5KcAzKi7XGIP3++7Q4F69+7dOPvsswEA//rXvzBy5Ehs2rQJK1euxIoVK0I9RiKiNu0t9QTqeqvnA9376MrSupa7wRuk5yT5NJP5lr69M2oAmD48BwDQL90YondBgXhO0OqZgbpDW4ja7XbodO6de9auXYsrrrgCADB06FCUlpaGdoREREHYVxo4o/aery6razmjrg+UUVt9u779S9x3nt8f+WkGnD8oM2Tvg5qTl2j11N3JOpRRjxgxAq+99hp+/PFHrFmzBpdccgkAoKSkBOnp6aEeIxFRq0RR9C19W70DtScLK2ktUFvlOWoNjDopUNv9St9+GbVGrcKsM/KUZVvUNeRAXWfumRl1hwL1Cy+8gNdffx1TpkzB9ddfj9GjRwMAPv30U6UkTkTUXcrrrahq9CzJMnllXiafjLqV0neTZ8MTg1fp2+50KYGfu4+FR2aiu4J7ur7lX7RiWYdK31OmTEFlZSVMJhNSU1OV67/73e9gNHKuhoi6lzw/nZXoPp7S5nDB6nBCp1H7lEtbbSazem0hKpW+bQ6XciCHIHiamqh79Uo1AABO1rR/x7lY0KGM+sILL0R9fb1PkAaAtLQ0XHvttaEaGxFRUOSy91nSYRkA0Gh1l629S9+nTU1wugJvQ+m9M5nBa5cxeTvSJL0WahU3NQmH3gzU7ffDDz/AZrM1u97U1IQff/wxFOMCADgcDvzpT39C//79YTAYMGDAADz77LNwuVzKPaIoYsGCBcjLy4PBYMCUKVOwZ8+ekI2BiCKfnFGP6pWsNILJgdc7o3a4RFQ1WAO+hqf0rUGcWqUEZTkLZ9k7fHqnxgMATtVYeuR+3+0qff/888/Kn/fu3YuysjLle6fTia+//hq9evUK2eBeeOEFvPbaa3j77bcxYsQIbNu2Db/97W+RnJyM+++/HwDw4osvYvHixVixYgUGDx6M5557DtOnT8eBAweQmJgYsrEQUeSSO76H5yYhQaeB2eZUAnS935KekromZCXpm71GvVfpWxAExMe5y+byki7/pVnUffJS3P+9LHYnqhttSE/QhXtI3apdgXrMmDEQBAGCIODCCy9s9rjBYMDSpUtDNrjNmzfjyiuvxGWXXQYA6NevH9577z1s27YNkLLpJUuW4IknnsDVV18NAHj77beRnZ2NlStX4q677grZWIgoMpltDhyrbAQADMtNQqJeg/J6qzLn7L+kp7TWomxUInO5RM8ctbQLlhyo5YyagTp8dBo1spN0OG2y4mSNpccF6naVvo8dO4YjR45AFEVs2bIFx44dU75OnToFk8mE22+/PWSDO++88/Dtt9/i4MGDAIBdu3Zhw4YNuPTSS5XxlJWVYcaMGcpzdDodJk+ejE2bNrX4ularFSaTyeeLiKLT/rJ6iKK7MzgzUYcEvzW3/rtZlQZYomW2OyFXVOWlQEap81vOqLlNaHjJ5e+eOE/droy6b9++AOAzR9yVHnvsMdTV1WHo0KFQq9VwOp14/vnncf311wPS9qUAkJ2d7fO87OxsFBUVtfi6ixYtwjPPPNPFoyei7nC43L1/99Ac91RXos79sSbvNCYH7ESdBvVWR8DdyeT5aY1KgE7jzl/khjK5mcx/DTV1r14pBhQW1eBUrTncQ+l2HVqeBQAHDx7EDz/8gPLy8maB+6mnngrF2PDBBx/g3XffxcqVKzFixAjs3LkT8+bNQ15eHm699VblPv/j5URRbPXIufnz5+PBBx9UvjeZTMjPzw/JmImoe8nLpzKlcmiiVLpuaPItfRdkJ2B7ca3PpidyY5I8j52g1yifHUYpo5bvZzNZePXkzu8OBeo333wTv//975GRkYGcnByfoCgIQsgC9SOPPILHH38c1113HQBg1KhRKCoqwqJFi3DrrbciJ8e9z25ZWRlyc3OV55WXlzfLsr3pdDplC1Qiim410tnTcmk6QSfvCy2VvqUgPCQnEduLa5VtRA+X1+NX/7sJs8/Mx6zR7s8POcjDK6OuqHd3iXOOOrxY+m6n5557Ds8//zwee+yx0I/Ii9lshkrlO42uVquVDL5///7IycnBmjVrMHbsWACAzWbDunXr8MILL3Tp2IgoMtQ2ugOxfIKV3Azm30w2ONtdGi+VStmrdpxCvdWBtzYeQ3qCHOQ9wTjeay01OEcddp6MmqXvoNTU1GD27NmhH42fyy+/HM8//zz69OmDESNGYMeOHVi8eLHSsCYIAubNm4eFCxeioKAABQUFWLhwIeLj43HDDTd0+fiIKPyUjNroDqTy7mENfsuzhkiB+nS9FU6XiHUHK5TXWPrdIfdzdZ6PRPkELRnnqMPLu/Td1vRmrOlQoJ49ezZWr16Nu+++O/Qj8rJ06VI8+eSTmDt3LsrLy5GXl4e77rrLp7T+6KOPwmKxYO7cuaipqcGECROwevVqrqEm6iHkk63SpIzX00zmgCh6ll0NyEyARiXA4RKxr9SE3afcqz10GhWa7O4qnXfpu3lGzUAdTnkp7kBttjlRa7Yj1dhzKhwdCtSDBg3Ck08+iZ9++gmjRo2CVuv7F/gPf/hDSAaXmJiIJUuWYMmSJS3eIwgCFixYgAULFoTkZxJRdKmWMmr/0nd9kx2NNifkHUOTDVpkJ+lxqtaCf207AUgbpFw4NAvLvj/s81wAiNf5BmrOUYeXXqtGZqIOFfXutdQM1G144403kJCQgHXr1mHdunU+jwmCELJATUTUllq/ZrJEJVA7lLK3RiVAr1UhN9kdqFftOAUAmDwkE3dPGYj3txajssGmNKIBQLzW9+ORR1mGX+9UgxSozRjVOzncw+k2HQrUx44dC/1IiIjaSRRFpfSdapQyaq/Sd73X/t2CICAn2b0VpXx98uBMJOg0eOaKkZj/8c+4YHCm8tpGZtQRp3dqPHYU1/a4zu8Or6MmIgq3eqsDDqm2ndpKRi03mMnznABgjFNjXB/3CYCXnZGLS0f5LjX1PkErPk4NncY3cFP3kxvKTtUyULeprW1C33rrrY6Oh4goaPLSLL1WBb3WHUiVrm+rQ1lLLQfvHK/DOCYNykCcxrP807+L2OjV9c2O78jQU5dodXh5lje73Y7du3ejtrY24GEdRERdoUZpJPM0Fiml7ybf0je8TmGCVPZujXdGncw11BHBf9MTeWe5WF+q1aFAvWrVqmbXXC4X5s6diwEDBoRiXEREbfLflQxends2p0s5e1rOsnOTPaXvtgK19/IsZtSRoVeKZy11eX0T7vl/22GyOLDqnknN1r3HknadntXqC6lUeOCBB/Dyyy+H6iWJiFqlNJJ5dWQbvT6w5QM15Ix6SE4iBmUl4KKhWchPi2/1tb0/+LmGOjLIpe8GqwNXLduIrcdrcOB0Pb78pSzcQ+tSIf0V5MiRI3A4HEHcSUTUeYFK32qVgASdBg1Wh3Kghnx0pV6rxtoHJwf12j4ZNQN1RNBr1chI0KGywYqSuiZlA5uPCk/iN+N7h3t4XaZDgdr75ClI8wSlpaX44osvfE61IiLqSjVSRu0fSJVA7ZdRt4fRK6NOYuk7YvTPiEdlgxWjeiXjuatG4qpXNmLz0SqcqDa3WSWJVh0K1Dt27PD5XqVSITMzEy+99FKbHeFERKFSGyCjhjxPbWpe+m4Pg88cNZvJIsXTl4/A+kMVuHViPxh1GkwckI5NR6qwascp/OGignAPr0t0KFB///33oR8JEVE7tZRRy4G5XDqiUi59t4f3hicsfUeOkb2SMbKXZ1eyX4/rjU1HqvDR9pO478JBMdkB3qlmsoqKCmzYsAEbN25ERUVFEM8gIgodOaNO89v3WV6iJa3eUbq+20OvYdd3NJg5KgfGODWKqszYVlQTxDOiT4cCdWNjI26//Xbk5ubiggsuwPnnn4+8vDzMmTMHZnPPWohOROETqJkMAUrdHSl9q1QCDNImKtznO3LFx2kwc1QuAODDbSfDPZwu0aFA/eCDD2LdunX47LPPUFtbi9raWvznP//BunXr8NBDD4V+lEREAdQ0tlD61gUuhbeXnKlnJeo6PEbqeleP7QUA+Hb/6XAPpUt06G/vRx99hA8//BBTpkxRrl166aUwGAy45ppr8Oqrr4ZyjEREAbWUUSc0y6g7lhE//6uROFzegIGZCZ0YJXW1/plGQFpXL4pizM1TdyhQm81mZGdnN7uelZXF0jcRdQurwwmzzQkECtQ634+2pA5m1FOGZGHKkKxOjJK6g1H67+1wibA5XTF3gEqHSt8TJ07E008/jaamJuWaxWLBM888g4kTJ4ZyfEREAcm7kqmEtuekO5pRU3SI13oCc6PVGdaxdIUO/Zq5ZMkSzJw5E71798bo0aMhCAJ27twJnU6H1atXh36URNSj1DTasP5QBS4ekaOcitXsHq99vlUq31Knd6DWqATotSHbLZkikEatgl6rQpPdhUaro9kqgGjXoUA9atQoHDp0CO+++y72798PURRx3XXX4cYbb4TBYAjiFYiIWvby2oP45+YiPHfVSNx0Tt+A97TUSAYACV7NZIl6TczNWVJzxjgNmuw2NNpibxvrDgXqRYsWITs7G3feeafP9bfeegsVFRV47LHHQjU+IuqBfjlVBwAoq2tq8Z6WdiWDX0bNsnfPEK9To6oxNkvfHaoHvf766xg6dGiz6yNGjMBrr70WinERUQ8liiIOlzcA0ilJLakJcHKWLMEnUMfu8YfkYZT2Zm9s5e9MtOpQoC4rK0Nubm6z65mZmSgtLQ3FuIioh6posKK+yf1h23qgbn4WtSxRx0Dd08id3+YYLH13KFDn5+dj48aNza5v3LgReXl5oRgXEfVQcjYNAA1NLX/oekrfzTNq73I3S989gxyoG2Kw9N2hXzXvuOMOzJs3D3a7HRdeeCEA4Ntvv8Wjjz7KncmIqFOOeAXq1hqDPAdyNM+ovUvfHTmQg6KPUTrtLBYz6g4F6kcffRTV1dWYO3cubDb3b7V6vR6PPfYY5s+fH+oxElEP4p1R1weRUQdaihOvVUMQ3IdysPTdM8gZdSw2k3Xob7AgCHjhhRfw5JNPYt++fTAYDCgoKIBOx/1wiahzDld4lb472EymUglIiNOg3uro8K5kFF3kjDoWm8k69Tc4ISEBZ511VuhGQ0Q9nndG3dqHbmvNZJCayOqtDs5R9xBKRh2DpW9u10NEEcPUZMdpk1X5vvVmMjmjDhyo5Xlqlr57Bk/pm4GaiKjLyI1kcRr3R1ODzQFRFJvd53KJrXZ9wyvTbinjptiilL5tsTdHzUBNRBFDLnuPyEsC4G4GMwf44DU12eGS4ndLgfiBaYNx26R+mDw4syuHTBEiPoYzataEiChiyI1ko3olY9eJWrhEd0OZ0e/YSrmRzBinVrJvfxMHpmPiwPRuGDVFAvloU3MMdn0zoyaiiHGkvBEAMCgrQfngDdT5veVYFQAgPy2+m0dIkSpeKX3HXkbNQE1E3e5weT0Ol9c3u35EyqgHZSYo3dqBGso+KjwFALhiDHdCJDc2kxERhciJajNmLd2Aq1/ZBIvX/LPV4URRlSejNurcGZJ/Rl1U1Ygtx6uhEoCrx/bu5tFTpDLKh3KwmYyIqHP+/PV+NNldMDU5cOC0J6s+XmmGS3QfqJGZqGux9P3Rdnc2fe6gDOQk67t59BSp5F/smFETEXVCYVENvvjZc8Le3hKT8me543tgVgIEQUBCgNK3yyXio8KTAIDfjGc2TR6e07OccLmaL+mLZgzURNQtRFHEc1/sBbzWSe8trVMe31Pi/vOQ7EQAQEKA0vd/j1XjVK0FiToNLh6R063jp8hmjPOsDDDbY6v8zUBNRN3i859LsaO4FvFxajwyYwgAYF+pp/RdWFQDABjbJwXwWm7jHag/2u7OpmeNzoVeq+7W8VNk02tVUAnuP5tjrPzNQE1E3eJ/vz8MALjrgoGYMsS9Ccm+UhNcLhEOpws/n3Rn1OP7pgI+5wu7P3RdLhFf/eIum/96HMve5EsQBCWrbu0wl2gU8YH61KlTuOmmm5Ceno74+HiMGTMGhYWFyuOiKGLBggXIy8uDwWDAlClTsGfPnrCOmYh81Zpt2F/mzp5vOqcP+mcYEadRwWxzorjajP1l9bDYnUjSazAwMwGAu6kMXnPUpia70tF7Ru+UsL0Xilze89SxJKIDdU1NDc4991xotVp89dVX2Lt3L1566SWkpHj+kb744otYvHgxli1bhq1btyInJwfTp09HfX3zNZpEFB47TtQCAPpnGJGeoINGrcLQHPdc9N5SE7YXu8veY/qkQiXVL+VDNeQu3soG997eSXpNi7uRUc8WH6Od3xG9hegLL7yA/Px8LF++XLnWr18/5c+iKGLJkiV44okncPXVVwMA3n77bWRnZ2PlypW46667wjJuIvK1w2/+GQCG5ybh55N12FtiwokaMwBgnNfjcnZUL33oVjW4T9XKSOC59xRYQowedRnRv5Z++umnOPPMMzF79mxkZWVh7NixePPNN5XHjx07hrKyMsyYMUO5ptPpMHnyZGzatClMoyYif4VSxjyuT6pybbh08MY+r4za+/EEv9J3VaM7o05P4GlYFJiyjWiM7fcd0YH66NGjePXVV1FQUIBvvvkGd999N/7whz/gn//8JwCgrKwMAJCdne3zvOzsbOWxQKxWK0wmk88XEXUNp0vEzmJ36ds7EA/LdQfqLcercaLaAkEAxnhl1PI50nJ2JGfU6UZm1BSYMS42txGN6NK3y+XCmWeeiYULFwIAxo4diz179uDVV1/FLbfcotwnCILP80RRbHbN26JFi/DMM8904ciJSHbwdD0abU4Y49QYIs1LA1DmqOuljHlwViKS9J6zpY1xvhm1PEfNjJpaouz3zWay7pObm4vhw4f7XBs2bBiKi4sBADk57g0P/LPn8vLyZlm2t/nz56Ourk75OnHiRJeMn4jg1SiWArXK8wt0ol6Lvume06/G9fXt5JabyeSlNlWNUkbNOWpqQaxuIxrRgfrcc8/FgQMHfK4dPHgQffv2BQD0798fOTk5WLNmjfK4zWbDunXrMGnSpBZfV6fTISkpyeeLiLrG9qLmZW/Z8FzPv72xfo/7b3hSJWXUGcyoqQXGODaTdbsHHngAP/30ExYuXIjDhw9j5cqVeOONN3DPPfcAUsl73rx5WLhwIVatWoXdu3fjtttuQ3x8PG644YZwD5+IvDLqtgK1vNGJLMFrTazTJSqBmnPU1JL4GD3qMqLnqM866yysWrUK8+fPx7PPPov+/ftjyZIluPHGG5V7Hn30UVgsFsydOxc1NTWYMGECVq9ejcTExFZfm4i6XnWjDccq3UdXei/Nksmd3ynxWgzIMPo8Jpe+IWVIlUrpmxk1BSbvD2+Osa7viA7UADBr1izMmjWrxccFQcCCBQuwYMGCbh0XEbVth5RND8g0IiW+eYA9vyAT152Vj7P6pTVrANVp1NCqBdidIhqaHCx9U5viY7T0HfGBmogiy9ubjuPg6Xr8z5UjlV3EWiKXvccHKHtDOkXrz78+o8XnJ+g0qDHbUWO2oc5iB1j6plYoG57EWEYd0XPURBRZdp+qw9Of7sH/+28xdpfUtXn/ful0rDN6J3fo58nl7xPV7p3L1CoByQZtG8+inkrZ8CTGMmoGaiIKivd50gBQKW1A0pqSuiYAQO/U+DbvDcQolTKPV7kDdZoxrs0snnquhBhtJmOgJqKgrN1Xjp+OVivfyxuQtKaszgIAyEnWd+hnyruTFVW5G9LSjZyfppbFs/RNRD2V3enCoi/3AQA0UkZb1UagtticqDG755Xzkg0d+rlyhlQkZdQ8kINaY2Tpm4h6qpX/LcbRykZkJMRh9pn5gNfe2y0plbLp+Dg1kgwd61s1+gVqLs2i1ijnUcdYRs2ubyJqVZ3FjiVrDwIA5k0brMz/yadZtaRMmp/OSda3uvd+a+TSd4kU9NnxTa0xSj0NNqcLNocrZs4tj413QURd5pXvD6PGbEdBVgKuOytf2Wvbv5nsRLUZTXZPJiM3knW07A2vD15RdH/PjJpaEy9teAIA5hgqfzNQE1GLTlSbsXzjcQDAHy8dBo1apQRL7znqg6frcf6L3+MP7+1QrsmNZLkdbCSD3+5k4GYn1AatWqVk0bF0ghYDNRG16M9f74fN6cJ5gzIwZUgmACBDKj/Lp1kBwC8n3Wuqtxyvhiilv3JG3alArfMN1Cx9U1ticYkWAzURBVRYVIMvfi6FILizaXme2TujloOy3DhWa7Yrc9eltVJGndLx0nezQM2MmtqgbHrCQE1Escx7c5PZ43srh2dA2nQEABwuESaL+8NQzp4B4HB5AwCg1KuZrKOal76ZUVPrYnEbUQZqImrmi19KsaO4FgatGg/NGOLzmF6rVrqx5ROtyloJ1J1pJmNGTe0Vi9uIMlATkQ+rw4kXvt4PALhr8gBkJzXPiOXMVm4oK5HK3JACtdnmUA7RyE0JzRy1QatWTkciaomRc9REFOve3nQcJ6otyE7S4XcXDAh4j7yVp7zpSZnJk1EfqWhQsmljnBqJuo4HV+/SN7NpCoZROeqSpW8iikE1jTYs/e4wAODhGUNazGDloFnZaIPF5kSttFUoABwpb0BprdTxnWLo8GYn8Muo0zk/TUGQ11IzoyaimLTxSCXqmxwYmGnE1eN6t3hfulL6tiq7hmnV7oBcUteEIxXueerOLM2CX6DO4IEcFIQEZRtRBmoiikHynPPg7ESoWzlOMsPoWaIlN5L1TTcqG5JsOFwJhCBQG3UsfVP7xLP0TUSxrMbsDtQp8a0HRSWjbrQqjWS5yXoMzEwAAGw+UiVd63jHN6SdpnTSTlMsfVMwElj6JqJYJs81p8ZrW71PmaNusPkswxqU5Q7UDdKHZF4nOr5l8lIwnkVNwYjFjJprHYhIIWfUqW1l1EbPHLX3xiYpfgE+p5MZNaQ5x8oGGzITmVFT27iFKBHFtBopo/YPuP7kueiqRpuyfWheil7JqGV5nZyjBoBeqe5g3y/d2OnXotgn9zU0NMVOoGZGTUSKWimjTmujzCzPF9ea7ThRbQak7Nk/UHdm+1DZX2ePxoGyeozOT+n0a1Hsk3/JlKtDsYCBmogUwTaTpRi0UAmASwSOVjYCUvack6RHgk6DBqsDiToNEvWtZ+bByE02dLopjXoOedqmxmttf7Rj6ZuIFLWNwTWTqVQC0qR5aukALeQk6yEIAgZmukvUndk6lKijUo3uv7u1Zs/pbtGOgZqIAAB2pwv1UgNOW81k8JqnBuCTPQ+Uyt+haCQjai/5767DJSqrD6IdAzURAV5LswQBSDK0XbL23oDEO3se1SsZADAoMyHg84i6kl6rhl7rDm21MVL+5hw1EQFejWTJBm2ru5LJ5CVa8Muerz+7DzISdLigILOLRkrUutT4OJTWNaHGbEN+Wny4h9NpzKiJCPBqvgmm7A2/jNp7GZZeq8blo/OQ3MY8N1FXSYmxhjIGaiICAFQ3yh3fwQXYjATvjJqNYxQ55GbImsbYWKLFQE1EgFfpO+iM2uidUbNxjCKHZ4kWAzURxZBgdyWTpTOjpgjl2fSEpW8iiiHtzqi956i5ZpoiiPx3uJYZNRHFEs+BHEHOUbfQ9U0UbrGWUXN5FhEBPqXv4DLqXqkGnDMgDelGnXJiEVEkiLWMmv+6iAjoQOlbrRLw/u8mdvGoiNpP3kaUzWREFFM866i5/pmim7KOujE2St8M1EQEeGXUwZa+iSJVrJW+GaiJCKIoKvsit3UWNVGkS5MCdaPNCZvDFe7hdBoDNRGh3uqAw+U+EjDYddREkSpRr4G8XX0sZNVRFagXLVoEQRAwb9485ZooiliwYAHy8vJgMBgwZcoU7NmzJ6zjJIo28jnUBq0aeq063MMh6hSVSlCmcKoZqLvP1q1b8cYbb+CMM87wuf7iiy9i8eLFWLZsGbZu3YqcnBxMnz4d9fX1YRsrUbRp7xpqokinrKWOgYayqAjUDQ0NuPHGG/Hmm28iNTVVuS6KIpYsWYInnngCV199NUaOHIm3334bZrMZK1euDOuYiaJJNRvJKMbEUkNZVATqe+65B5dddhmmTZvmc/3YsWMoKyvDjBkzlGs6nQ6TJ0/Gpk2bWnw9q9UKk8nk80XU09zx9lZMW7wODVaHZw21kRk1xYbUGNqdLOI3PHn//fexfft2bN26tdljZWVlAIDs7Gyf69nZ2SgqKmrxNRctWoRnnnmmC0ZLFB3K65uwdl85AGDDoQqlPMiMmmJFSgydoBXRGfWJEydw//33491334Ve3/Km/4Ig+HwvimKza97mz5+Puro65evEiRMhHTdRpNteVKv8ed3BCq9dyZhRU2yQ/y6z9N3FCgsLUV5ejvHjx0Oj0UCj0WDdunX4+9//Do1Go2TScmYtKy8vb5Zle9PpdEhKSvL5IupJdhTXKH9ef7DSa1cyZtQUGzwZdfSXviM6UF900UX45ZdfsHPnTuXrzDPPxI033oidO3diwIAByMnJwZo1a5Tn2Gw2rFu3DpMmTQrr2Iki2XavQH2q1oKtx6sBlr4phsRSM1lEz1EnJiZi5MiRPteMRiPS09OV6/PmzcPChQtRUFCAgoICLFy4EPHx8bjhhhvCNGqiyGZzuPDzyToAQJ+0eBRXm7G/zL2ckaVvihVsJosgjz76KCwWC+bOnYuamhpMmDABq1evRmJiYriHRhSR9paaYHW4kBKvxc3n9MXzX+5THmPpm2JFLDWTRV2g/uGHH3y+FwQBCxYswIIFC8I2JqJosr3IXfYe1ycVk4dk+gRqbh9KsUJealgbAxl1RM9RE1HoyfPT4/qkoCArAbnJnhUVzKgpVnjPUbukfeyjFQM1UQ+zo9i9NGtcn1QIgoALCjKVxxioKVbI1SGXCJiaojurZqAmihEV9VbMeHkdHv/o5xbvOW1qwqlaC1QCMDo/BQAweYg7UKsE96lDRLFAp1HDGOc+YCbaG8oYqIlixOI1B3DwdAM+LDwJq8MZ8B55fnpoThKMOndQvmBwJgZmGjF9eDZUqpY3CiKKNrHSUMZfn4liwIGyenyw1b3DnsMl4tDpBozslQwAqG604d/bTsBid+Kno1UAgHF9U5TnJug0WPvg5FZ38yOKRqlGLU7VWqJ+LTUDNVEMeP7LffDul9lXalIC9dLvDmH5xuM+95/VL83newZpikVyz0W0H3XJQE0U5dYdrMD6gxXQqgVMHpyFtftOY2+p50S4Lcfcu45dNDQLuSl6ZCToMHNkbhhHTNQ9WPomoojwwlf7AQC3TOyHYblJ7kBd4g7UjVYH9klB+7lfjURusiGsYyXqTvLuZM9/uQ+LvtqPNGMc3v/dORiYmRDuobULm8mIolidxa5kz3OnDMTwXPcBM3tLTRBFEbtO1sIlAnnJegZp6nEm9E+HSgBEEXC6RFTUW/HFz6XhHla7MaMmimKnaiwAgDRjHNITdEjUa6FVC6hvcuBUrUVZMz22b2qYR0rU/S47IxfnDZqBJocTHxaexF++OeBzIE20YEZNFMVO1boDde9Ud7Ycp1FhUJZ7n/u9JSaf7UKJeqLkeC2yk/Q4vyADkJYoRttOZQzURFHsZI0ZANArxVPWlsvfe0pMPtuFEvVkw3KToNeqYGpy4GhlQ7iH0y4M1ERR7GSNb0YNAMPz3IH6q92lqDHbEadRYURectjGSBQJtGoVzujt/oV1e1FtuIfTLgzURFFMzqh7p8Yr14blukvfB0+7s4YzeiUjTsN/6kTyFFC0zVPzXy9RFAuYUUulb9k4NpIRAV5TQIVFDNRE1E08zWSejDolPs5nzpqNZERu8i+th8obUGeJnt3KGKiJolR9kx210qlAvVJ910jL5W/47etN1JNlJOjQN939S+3OE9EzT81ATRSl5Gw6JV6LBJ3vlghy+bt3qgFZifqwjI8oEinz1FFU/magJopSJ6ubz0/Lpg3Phlol4IrReWEYGVHkkuepo6mhjDuTEXWDJrsTX+0uRX2TAwCQbNDi0lG50Ko7/ruy0vGdEt/ssTN6p2D3gouhY7c3kY+xUka9s7gWLpcYFWewM1ATdYP3thTjmc/2+lyzO0X8ZnzvDr+m/65k/gxx6g6/NlGsGpqTCINWjXqrA8erGjEgCg7o4K/bRN1gu7Tn9sheSSjIcn8w7PM6irIj5KVZ/o1kRNQyjVqFzEQdEEXHXzJQE3UDOSg/PGMIbpnUDwBQVNWoPC6KIh778Gc8/O9dEMXg9iH2rKFuXvomopYl6t3FZJM0FRXpWPom6mIWmxNHK9y7hA3PS4JamhM7XmVW7imta8IH204AAG4/t7+yDWhrPLuSMaMmag85UNdHSaBmRk3UxQ6crodLBDIS4pCVqEe/dCMAoLjarJzic7jcc0jA+kMVbb5mg9WBmhbWUBNR6xL1WkDaiyAaMFATdTG57D1MWtucm6yHVi3A5nChzNQE+AXqdQfaDtTyOdTJBi2SpA8dIgoOM2oi8rG3xB2o5XK2Rq1S5pWPS/PUhys8gXpbUTUara1/gJyqbX68JREFJ4kZNRF52ytl1N6HZcjbGBZJ89TeGbXdKWLzkapWXzPQYRxEFBxm1ESkcLlEpfTtHajleWo5oz4iBeox+e5dk9YdbL38zY5voo5joCYiRXG1GWabEzqNCv0zjMp1JaOuNKOm0YaqRvd6zt+e6166JTeUOZwurD9YAZNfiY4d30Qdx2YyIlLIZe8hOYnQeG0XqgTqarMyP52XrMdFw7KhVQsoqjJjb4kJd/xzG255awue9dvV7GiFOxNnxzdR+ynrqC3MqIl6PKWRLNd3XXRfqfRdVNWozE8PzEpAgk6D8dKZude+vhk/SB3ga/edhlNaylXZYMX+snoAwNg+PMKSqL3kjNq/UhWpGKiJQmDJ2oO49a0tKJH235YpjWR+G5j0TjVAJQBmmxM/HXU3jg2SthadPDgLAFBvdSA1XgtjnBq1Zjt+OVUHANhwqNL9mrlJPMKSqAM4R03Uw5w2NeHv3x7CuoMVuPqVTTggZbsIsIZaptOokSctrZKzZjlQXzwiGxqVgN6pBnz4+0k4vyAT8FpfLTeaXTA4s1veH1Gs4fIsoh5m1Y5TkKrSKDM1YfZrm7Dyv8X4sPAkSuvcG5oMzUls9jy587vO4v6wGCSd4jMgMwHrHp2KNQ9MxsDMBEwe4g7I6w9VwOUS8aPUaDaZgZqoQ5KkjLrB6gh6b/1w4l7fRJ0giiI+KjwJAHjskqH4dt9pbCuqwR9X/aLc0zc9XpkT89YnPR447Plezqjht5GJnDnvKK7BT0erUNlggzFOrcxlE1H7yP8eXSLQaHMiQRfZoTCyR0cU4X45VYdD5Q3QaVS48Zw++O25/fDXbw5gj9REplIBN03oG/C5/dI9a6BT47VIT9AFvK9XigGDshJwuLwBi77aDwCYODADcRoWxIg6Qq9VQaMS4HCJqG+yM1ATxbIPpWz64hE5yrzXn2YND+q5cuc3AAxs4/D6Cwoycbi8QWkomzw4oxOjJurZBEFAol6DGrMd9U0O5CaHe0St46/kRB1kdTjx6a4SAMCvx/du9/P7eQVq77J3IPI8tfK91BlORB0TTZueRHSgXrRoEc466ywkJiYiKysLV111FQ4cOOBzjyiKWLBgAfLy8mAwGDBlyhTs2bMnbGOmnuO7feWoNduRnaTDeYPan+H2SfOUvtsK1BP6p0Enlbr7pce757eJqMOUTU+iYIlWRAfqdevW4Z577sFPP/2ENWvWwOFwYMaMGWhsbFTuefHFF7F48WIsW7YMW7duRU5ODqZPn476+vpWX5uoM05Um/HC1+754l+N7Q21Smj3axji1MhJcq+DHthGoNZr1ZgwIB1gtzdRSETTWuqInqP++uuvfb5fvnw5srKyUFhYiAsuuACiKGLJkiV44okncPXVVwMA3n77bWRnZ2PlypW46667wjRyimW7T9XhtuVbUdlgRa8Ug7I/d0c8fPEQbDpSiXMHtp2RPzJjCBJ1Gvxu8sAO/zwicmPpu4vU1bkbadLS0gAAx44dQ1lZGWbMmKHco9PpMHnyZGzatKnF17FarTCZTD5fRMHYfaoO176+GZUNVgzNScTHcychO6nju4P9ZnxvLL5mTFAd3KN6J+N/bxzHM6iJQiCaMuqoCdSiKOLBBx/Eeeedh5EjRwIAysrKAADZ2dk+92ZnZyuPBbJo0SIkJycrX/n5+V08eooVb208hkabE2f3S8O/7p7YqSBNROETTbuTRU2gvvfee/Hzzz/jvffea/aYIPjOD4qi2Oyat/nz56Ourk75OnHiRJeMmWKLyyVi/UH3PtvzphUo/9CJKPpEU0Yd0XPUsvvuuw+ffvop1q9fj969PctgcnJyACmzzs3NVa6Xl5c3y7K96XQ66HSBN5cgasm+MhMqG6yIj1NjfD/uCkYUzaIpUEd0Ri2KIu699158/PHH+O6779C/f3+fx/v374+cnBysWbNGuWaz2bBu3TpMmjQpDCOmWCYfhjFxQDp0GnW4h0NEnRBNzWQRnVHfc889WLlyJf7zn/8gMTFRmXdOTk6GwWCAIAiYN28eFi5ciIKCAhQUFGDhwoWIj4/HDTfcEO7hU4xZLwVq/81HiCj6RNM66ogO1K+++ioAYMqUKT7Xly9fjttuuw0A8Oijj8JisWDu3LmoqanBhAkTsHr1aiQmNj+tiKijGqwObDteA3AdM1FM8GTUDNSdEszxY4IgYMGCBViwYEG3jIl6pk2HK+FwieibHu+zRzcRRSfPHHXkl74jeo6aKFKs5xnQRDFFPpPaZGGgJop6oigqjWQXFDBQE8UCufTdYHUEVb0NJwZqojYcrzLjRLUFWrWAiQPTwz0cIgoBufTtEoFGmzPcw2kVAzVRG778pRQAcFa/NBgj/IB5IgqOQatWDtOJ9HlqBmqiVoiiiI8KTwIArhrbK9zDIaIQEQQhajY9YaAmasWOE7U4WtkIg1aNS0flBvEMIooW0bLfNwM1USs+lLLpmSNzkMCyN1FMiZZNTxioiVrQZHfi810lAIBfj+/d5v1EFF1Y+iaKcmv3nYapyYG8ZD0mDmC3N1GsiZb9vhmoqUdyuUSU1FpavUcue189rjdUqpaPTSWi6MSMmiiC/XPzcUz683d4Y/2RgI8XV5mVQzhY9iaKTWwmI4pgq/eeBgAsWXsI5aamZo+/8PV+uETggsGZ6J/Bvb2JYhEzaqII5XC6sPNELQDAbHPipdUHfR4vLKrGF7+UQhCA+TOHhmmURNTVGKiJItSB0/Uw25yIU7v/+v+r8AT2lZoAaYOT577YBwC4Znw+huUmhXWsRNR12ExGFKG2F7uz6QkD0nDZqFyIIvDcF3uxt8SEd34qwo7iWsTHqfHQjMHhHioRdaFoWUfNHRyox9lRVAMAGNsnFb8Z1xtr9p7GxsNVuPTvPyr33D15ILKS9GEcJRF1NU9GHdmBmhk19Tjbi92BelyfFPRJj8ejlwxBbrIeWYk6ZCXqcO6gdNx5/oBwD5OIuphnjjqyS9/MqKlHqWyw4niVGZAyagC44/wBuIOBmajHSWIzGVHk2SHNTxdkJSDZoA33cIgojDISdBAEoM5iV1aCRCIGaooZDqcLZlvz34zrm+ywO12AT9k7tdvHR0SRJSU+DlePdW9o9NzneyGKYriHFBADNcWMxz/+BeP+Zw2OVTYq1yrqrZi46DvMeHk9jlc2YrvUSDaub0oYR0pEkeKRi4dAr1VhW1ENvt5dFu7hBMRATTHB4XThy19K0WR34dt9p5Xrm45UosHqwLHKRvz61U1KeWt8X2bURATkJOvxO6lH5c9f74fN4Qr3kJphoKaYIG9iAq/yNrzmpNUqAVWNNlgdLiTpNRiQkRC2sRJRZLlr8kBkJupQVGXGPzYcC/dwmmGgppggl7QBoLCoRplrKpSuP3fVSJxfkAEAmDAgnadhEZHCqNPgYWmDoxe+3h9xwZrLsygqWWxO6LUqCII74Mq7jQHAaZMVJXVNSIuPU7YGPb8gA78e1xur95bh7H5pYRs3EUWm2ePzsa+0His2Hcf/fL4Xp01NePySoRHxSz0zaoo6m49UYcTTX+Nv3x5Srsnlbq1aCtxFNfj5ZC0cLhFZiTr0SjEgTqPCrDPyuOMYETWjUgl4+vLheOwS90E8b6w/irc2RkZmzUBNUefDwpNwicDyjcdhdThR2WBFkbSJyeVn5AFSyVvOssf1SVUybyKilgiCgN9PGYiHprvL4OukM+nDjYGaooooilh/yP2Pp85ix7f7ypX56cHZCZg8JBMAsKO4RpmfZoc3EbXHBYPdnyN7S0wRsbaac9QUVfaV1qOi3qp8/2HhSQzOTgSkzFneyGRPiQmJeneWzTXTRNQeQ3ISoRKAqkYbKuqtYZ8uY0ZNUUUuRQ3OTlC+l9dNj+uTit6pBmQm6uBwiagx26FVCxiRlxzWMRNRdNFr1RiY6f6M2SM1pIYTAzVFlfVSoL5xQl+M7ZMCp0vEofIGQMqcBUHAuD6eDHpEXjL0WnXYxktE0WlYbhIglb/DjYGaokaD1YFtRdUAgMmDM/Hrcb2Vx5INWmUTE+85ac5PE1FHDM+TAjUzaiK3w+UNWLz6gM/8syiK+Ne2E/jX1hMQRRGbj1TB7hTRNz0e/TKMuPyMPMRp3H+Fx/ZJUdY7eh+4wcM3iKgjhksZ9b4ICNRsJqOI8KdPfsFPR6uxaucp/PP2CchPNeBPn+zG+1tPAAC2FVVDrXIH5QsK3B2ZyfFaXDIiB5/uKsE5A9KV1xrZKxkJOg2a7E6c2Y+BmojaTy59H6tshNnmQHxc+MIlAzWFnNMlQu23m4/d6YLJYgektYqp8VplbfOJajN+Olot/dmCX7+6CcNzk7DhcCXkl/nXtpPKa02Wlk4AwP9cORKTBqbjqrG9lGt6rRrvzDkbFrsT2dzchIg6IDNRh8xEHSrqrdhfVh/W6hwDNYVMk92JRz78GT8cKMf/3XImJkhZbp3Fjsv+/iNO1liUe2edkYtlN4wDAHy8/RQgla8dThG/nKrDhsOV0GlUWHr9WAiCgPve244muwtatYCJAz3Zc3K8Fted3afZWMay5E1EnTQ8Nwnr6iuwr9QU1kDNOWoKiVqzDTf933/x2a4S1Dc58NR/9sDpcm8U8Mr3h32CNAB8/nMpNh6uhCiK+Gi7O1u++Zy+eP9352DmyBzkpxmw8s4JmDEiB9OHZ+P/3XEOeqcacN1ZfWDU8fdLIup6kdL5zU+8Hs7UZMe/tp7ARcOy0T/D2Oq9oihi5ZZiHDrd0OyxHw9V4EhFIxL1GgjSsZP/2nYC5w3KwPKNxwEAy287C1OHZmHBp3uwYtNxPPfFPjw1aziKq80wxqlxycgcxMdp8OpN45u9/vi+qdjw2IUhfOdERK2LlM5vBuoerKyuCbct34L9ZfX45+YirH1wstJFHci3+8rxxKrdLT6ek6THitvPwqbDVXj28714afVBfLuvHDanC+cNysAUaXvP+y8qwMfbT2JfqQkP/3sXAODSUblhbdYgIvInd37vL60P2HvTXWKm9P3KK6+gf//+0Ov1GD9+PH788cewjKOwqAYOp6tLf4YoiqhvsqO+yY4GqyPgPU12p3KPPcB4DpfX4+pXNmJ/WT0AoLjajH9uPu5zj8vl2ePW7nRh4Vf7AAAXDs3CvVMH+Xw9cvEQ/OfeczE0Jwk3ndMX/dLjUdlgxdp9pyEIwB8vHaY0j6Ua43DfhQUAgFO17pL4b8b3BhFRJOmfYYReq4LF7sS+UpPymdrVn/H+YiKF+eCDDzBv3jy88sorOPfcc/H6669j5syZ2Lt3L/r0ad5o1FU2HKrEb1dswfkFmVh2w9guyRCPVjTgrncKld24AODcQen43xvGISU+Dk6XiOe/2Ie3Nx9X5oiTDVr8dfZoTB+eDQDYdrwac97ehjqLHQMyjJg1Og9///YQln53GL8Z3xs6jRoP/3sX1h+qwMJfjcLlo/Pw3pZiHK1oRJoxDkuuG4MkvbbFMcZpVHh85jDc/W4hAGD2+N5KCUl2y6S+eOenIhRXm5GfZsBZPCOaiCKMWiVgSE4Sdp2oxaylG5TrH8+d1K3NZTGRUS9evBhz5szBHXfcgWHDhmHJkiXIz8/Hq6++2q3jsDqcUKsEfLe/HNe/+V9UNViDeFbwdhTX4DevbfYJ0gCw8XAVfv3qJhytaMC9K7fjrY3HlCANqev6rne24b0txfhmTxlu/L//os5ix9g+Kfjw95Nw/0UFGJqTiDqLHc9/sQ83/t9P+OKXUtQ3OXDfezuw7LtDWLLWffbzA9MKWg3SsotHZOPSUTnomx6Ph2cMafa4TqPG/1w1Ekl6De6dOigiDmcnIvL3qzF5YSt5ywQxEs7w6gSbzYb4+Hj8+9//xq9+9Svl+v3334+dO3di3bp1zZ5jtVphtXqCqMlkQn5+Purq6pCUlNTs/vYoLKrBnLe3otZsR7/0eMwYkdOp15PZnS68v+UELHYnzuidjDdvORMp8VocrWjE7Su2orSuCYIAiCIQp1bhpWtGY8aIbLhcwIJP9+CDbe6NQ+R7pg3LwtLrx8EQ594He/3BCtzy1hbl5yUbtJg8OBOf7ipRrg3MNOKbeRdAo46J3++IiIJid7rg8gqVWpWqW5OLqC99V1ZWwul0Ijs72+d6dnY2ysrKAj5n0aJFeOaZZ7pkPOP7puLDuyfh1re24HiVGW+sPxrS1588OBOv3DhOWaI0LDcJH8+dhNve2ooDp+uRqNPgjVvO9Flr/Odfj0J2sh5///YQRBG4/ux8/M+VI30C7gWDMzF5cCbWHaxAXrIeb99+NgZlJWB4XhL+/NV+AO55ZgZpIupptGH+3Iv6jLqkpAS9evXCpk2bMHHiROX6888/j3feeQf79+9v9pyuzKhl5fVN+GDLiRabvTqid6oB153dJ+BfmjqLHR8WnsSUIZnK8Wz+vt13Gg1WB64Ynac0dnmrNdvwyY5TuHRUrs/5q5sOV6LGbMelo3ICPo+IiLpO1GfUGRkZUKvVzbLn8vLyZlm2TKfTQafTdem4shL1uO+igi79Gd6SDVrMOa9/q/dcNCzw/x+ylPg43HZu89eYNCij0+MjIqKOifo6ZlxcHMaPH481a9b4XF+zZg0mTZoUtnERERGFQtRn1ADw4IMP4uabb8aZZ56JiRMn4o033kBxcTHuvvvucA+NiIioU2IiUF977bWoqqrCs88+i9LSUowcORJffvkl+vbtG+6hERERdUrUN5OFgslkQnJyckibyYiIiEIh6ueoiYiIYhkDNRERUQRjoCYiIopgDNREREQRjIGaiIgogjFQExERRTAGaiIiogjGQE1ERBTBGKiJiIgiGAM1ERFRBGOgJiIiimAM1ERERBEsJk7P6iz5XBKTyRTuoRARUQ+SmJgIQRBavYeBGkB9fT0AID8/P9xDISKiHiSYUxt5zCUAl8uFkpKSoH6zCTWTyYT8/HycOHEiJo/Y5PuLbnx/0S/W32O0vz9m1EFSqVTo3bt3WMeQlJQUlX/JgsX3F934/qJfrL/HWH5/bCYjIiKKYAzUREREEYyBOsx0Oh2efvpp6HS6cA+lS/D9RTe+v+gX6+8x1t8f2ExGREQU2ZhRExERRTAGaiIiogjGQE1ERBTBGKiJiIgiGAN1mDz//POYNGkS4uPjkZKS0uq9VVVV6N27NwRBQG1tbbeNsbPaeo+7du3C9ddfj/z8fBgMBgwbNgx/+9vfwjLWjgjmv2FxcTEuv/xyGI1GZGRk4A9/+ANsNlu3jzUUDh48iCuvvBIZGRlISkrCueeei++//z7cwwq5L774AhMmTIDBYEBGRgauvvrqcA8p5KxWK8aMGQNBELBz585wDyckjh8/jjlz5qB///4wGAwYOHAgnn766aj99+aNgTpMbDYbZs+ejd///vdt3jtnzhycccYZ3TKuUGrrPRYWFiIzMxPvvvsu9uzZgyeeeALz58/HsmXLun2sHdHW+3M6nbjsssvQ2NiIDRs24P3338dHH32Ehx56qNvHGgqXXXYZHA4HvvvuOxQWFmLMmDGYNWsWysrKwj20kPnoo49w880347e//S127dqFjRs34oYbbgj3sELu0UcfRV5eXriHEVL79++Hy+XC66+/jj179uDll1/Ga6+9hj/+8Y/hHlrniRRWy5cvF5OTk1t8/JVXXhEnT54sfvvttyIAsaamplvHFwptvUdvc+fOFadOndrlYwqllt7fl19+KapUKvHUqVPKtffee0/U6XRiXV1dN4+ycyoqKkQA4vr165VrJpNJBCCuXbs2rGMLFbvdLvbq1Uv8v//7v3APpUt9+eWX4tChQ8U9e/aIAMQdO3aEe0hd5sUXXxT79+8f7mF0GjPqCLZ37148++yz+Oc//wmVqmf8p6qrq0NaWlq4hxESmzdvxsiRI30yl4svvhhWqxWFhYVhHVt7paenY9iwYfjnP/+JxsZGOBwOvP7668jOzsb48ePDPbyQ2L59O06dOgWVSoWxY8ciNzcXM2fOxJ49e8I9tJA5ffo07rzzTrzzzjuIj48P93C6XKx8nvSMT/8oZLVacf311+Mvf/kL+vTpE+7hdIvNmzfjX//6F+66665wDyUkysrKkJ2d7XMtNTUVcXFxUVcuFgQBa9aswY4dO5CYmAi9Xo+XX34ZX3/9dZs9FtHi6NGjAIAFCxbgT3/6Ez7//HOkpqZi8uTJqK6uDvfwOk0URdx22224++67ceaZZ4Z7OF3uyJEjWLp0Ke6+++5wD6XTGKhDaMGCBRAEodWvbdu2BfVa8+fPx7Bhw3DTTTd1+bjbI5Tv0duePXtw5ZVX4qmnnsL06dO7ZOzBCPX7C3R8nSiK3X6cakuCfb+iKGLu3LnIysrCjz/+iC1btuDKK6/ErFmzUFpaGu630apg36PL5QIAPPHEE/j1r3+N8ePHY/ny5RAEAf/+97/D/TZaFOz7W7p0KUwmE+bPnx/uIbdLR/5NlpSU4JJLLsHs2bNxxx13hG3socItREOosrISlZWVrd7Tr18/6PV65fsVK1Zg3rx5zbq5x4wZg19++UX5QBdFES6XC2q1Gk888QSeeeaZLnoXrQvle5Tt3bsXU6dOxR133IHnn38+5GNuj1C+v6eeegr/+c9/sGvXLuVaTU0N0tLS8N1332Hq1Kld8A7aJ9j3u3HjRsyYMQM1NTU+RwkWFBRgzpw5ePzxx7thtB0T7HvcvHkzLrzwQvz4448477zzlMcmTJiAadOmhf3vZkuCfX/XXXcdPvvsM59fEp1OJ9RqNW688Ua8/fbb3TDa9mvvv8mSkhJMnToVEyZMwIoVK2Ji2pDnUYdQRkYGMjIyQvJaH330ESwWi/L91q1bcfvtt+PHH3/EwIEDQ/IzOiKU7xFSJn3hhRfi1ltvjYgPwlC+v4kTJ+L5559HaWkpcnNzAQCrV6+GTqeLmHndYN+v2WwGpLPbvalUKiUTjVTBvsfx48dDp9PhwIEDSqC22+04fvw4+vbt2w0j7Zhg39/f//53PPfcc8r3JSUluPjii/HBBx9gwoQJXTzKjmvPv8lTp05h6tSpSjUkFoI0GKjDp7i4GNXV1SguLobT6VTWMg4aNAgJCQnNgrH8G+WwYcOiZk6wrfe4Z88eTJ06FTNmzMCDDz6ozNuq1WpkZmaGefRta+v9zZgxA8OHD8fNN9+Mv/zlL6iursbDDz+MO++8M+oOuJ84cSJSU1Nx66234qmnnoLBYMCbb76JY8eO4bLLLgv38EIiKSkJd999N55++mnk5+ejb9+++Mtf/gIAmD17driH12n+vS4JCQkAgIEDB6J3795hGlXolJSUYMqUKejTpw/++te/oqKiQnksJycnrGPrtHC3nfdUt956qwig2df3338f8P7vv/8+6pZntfUen3766YCP9+3bN9xDD0ow/w2LiorEyy67TDQYDGJaWpp47733ik1NTWEdd0dt3bpVnDFjhpiWliYmJiaK55xzjvjll1+Ge1ghZbPZxIceekjMysoSExMTxWnTpom7d+8O97C6xLFjx2Jqedby5csD/nuMhTDHOWoiIqIIFhsFfCIiohjFQE1ERBTBGKiJiIgiGAM1ERFRBGOgJiIiimAM1ERERBGMgZqIiCiCMVAT9XBTpkzBvHnzwj0MImoBAzURhdSKFSt8trn9+OOPMX36dGRmZiIpKQkTJ07EN998E9YxEkUTBmoi6lLr16/H9OnT8eWXX6KwsBBTp07F5Zdfjh07doR7aERRgYGaiBQ1NTW45ZZbkJqaivj4eMycOROHDh3yuefNN99Efn4+4uPj8atf/QqLFy9u9aCYJUuW4NFHH8VZZ52FgoICLFy4EAUFBfjss8+64R0RRT8GaiJS3Hbbbdi2bRs+/fRTbN68GaIo4tJLL4XdbgcAbNy4EXfffTfuv/9+7Ny5E9OnT2/38aQulwv19fVIS0vrondBFFt4zCURAQAOHTqETz/9FBs3bsSkSZMAAP/v//0/5Ofn45NPPsHs2bOxdOlSzJw5Ew8//DAAYPDgwdi0aRM+//zzoH/OSy+9hMbGRlxzzTVd9l6IYgkzaiICAOzbtw8ajQYTJkxQrqWnp2PIkCHYt28fAODAgQM4++yzfZ7n/31r3nvvPSxYsAAffPABsrKyQjh6otjFjJqIAPehvS1eFwSh2Z/bep6/Dz74AHPmzMG///1vTJs2LQQjJuoZmFETEQBg+PDhcDgc+O9//6tcq6qqwsGDBzFs2DAAwNChQ7Flyxaf523btq3N137vvfdw2223YeXKlbjsssu6YPREsYuBmogAAAUFBbjyyitx5513YsOGDdi1axduuukm9OrVC1deeSUA4L777sOXX36JxYsX49ChQ3j99dfx1VdfNcuyvb333nu45ZZb8NJLL+Gcc85BWVkZysrKUFdX143vjih6MVATkWL58uUYP348Zs2ahYkTJ0IURXz55ZfQarUAgHPPPRevvfYaFi9ejNGjR+Prr7/GAw88AL1er7yGy+WCRuOZVXv99dfhcDhwzz33IDc3V/m6//77w/IeiaKNIAY7wUREFMCdd96J/fv348cffwQA/PnPf8a7776L3bt3h3toRDGBzWRE1C5//etfMX36dBiNRnz11Vd4++238corr8BsNmP//v1Yvnw5Zs6cGe5hEsUMlr6JqF22bNmC6dOnY9SoUXjttdfw97//HXfccQfeeOMNTJs2DaNHj8ZTTz0V7mESxQyWvomIiCIYM2oiIqIIxkBNREQUwRioiYiIIhgDNRERUQRjoCYiIopgDNREREQRjIGaiIgogjFQExERRTAGaiIiogj2/wGg3yQMVQXBzAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "columns = [\"logJ2\", \"counts\"] \n", "df = pd.read_table(\"ianalyze.ihist_h.out\", comment=\"#\", sep='\\s+',names=columns, skiprows=2) \n", "sns.relplot(x=\"logJ2\", y=\"counts\", ci=None, kind=\"line\", data=df) \n", "plt.plot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## KMC simulations of multiple holes or electrons in periodic boundary conditions\n", "Finally, lets do a 1000 seconds KMC simulation for the electron, with a 10 seconds window between output and a field of 10 *V/m* along the x-axis," ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2025-05-09T06:16:11.799597Z", "iopub.status.busy": "2025-05-09T06:16:11.799399Z", "iopub.status.idle": "2025-05-09T06:16:12.168637Z", "shell.execute_reply": "2025-05-09T06:16:12.168071Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "==================================================\r\n", "======== VOTCA (http://www.votca.org) ========\r\n", "==================================================\r\n", "\r\n", "please read and cite: https://doi.org/10.21105/joss.06864\r\n", "and submit bugs to https://github.com/votca/votca/issues\r\n", "\r\n", "xtp_run, version 2025-dev gitid: 7b6d1e5 (compiled May 9 2025, 05:59:19)\r\n", "\r\n", "Initializing calculator\r\n", "... kmcmultiple\r\n", "1 frames in statefile, Ids are: 10000 \r\n", "Starting at frame 10000\r\n", "Evaluating frame 10000\r\n", "Import MD Topology (i.e. frame 10000) from state.hdf5\r\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ ".... \r\n", "... kmcmultiple\r\n", " Using 1 threads\r\n", " ... \r\n", "-----------------------------------\r\n", " KMC FOR MULTIPLE CHARGES\r\n", "-----------------------------------\r\n", "\r\n", " ... \r\n", "Calculating initial rates.\r\n", " ... Rate engine initialized:\r\n", " Ratetype:marcus\r\n", " Temperature T[k] = 300\r\n", " Electric field[V/nm](x,y,z) =1e-08 0 0 ||F|| 1e-08\r\n", "\r\n", " ... \r\n", " ... carriertype: electron\r\n", " ... Rates for 1000 sites are computed.\r\n", " ... \r\n", "Rates are written to rates.dat\r\n", " ... Nblist has 10151 pairs. Nodes contain 20302 jump events\r\n", "with avg=20.302 std=2.07913 max=28 min=14 jumps per site\r\n", "Minimum jumpdistance =0.366063 nm Maximum distance =1.10167 nm\r\n", "\r\n", " ... spatial carrier density: 0.00729374 nm^-3\r\n", " ... \r\n", "Algorithm: VSSM for Multiple Charges\r\n", " ... number of carriers: 1\r\n", " ... number of nodes: 1000\r\n", " ... stop condition: 1000 steps.\r\n", " ... output frequency: every 10 steps.\r\n", " ... (If you specify runtimes larger than 100 kmcmultiple assumes that you are specifying the number of steps for both runtime and outputtime.)\r\n", " ... Writing trajectory to trajectory.csv.\r\n", " ... looking for injectable nodes...\r\n", " ... starting position for charge 0: segment 697\r\n", " ... \r\n", "Occupations are written to occupation.dat\r\n", " ... \r\n", "finished KMC simulation after 1000 steps.\r\n", "simulated time 5.92255e-09 seconds.\r\n", "\r\n", " ... carrier 1: 1.205058e+08 5.671523e+07 1.959596e+07\r\n", " ... Overall average velocity (nm/s): 1.205058e+08 5.671523e+07 1.959596e+07\r\n", " ... \r\n", "Distances travelled (nm): \r\n", " ... carrier 1: 7.137019e-01 3.358990e-01 1.160581e-01\r\n", " ... \r\n", "Mobilities (nm^2/Vs): \r\n", " ... carrier 1: mu=1.205058e+16\r\n", " ... Overall average mobility in field direction =1.205058e+16 nm^2/Vs \r\n", " ... \r\n", "Eigenvalues:\r\n", " \r\n", " ... Eigenvalue: 2.670560e-09\r\n", " ... Eigenvector: 1.317081e-01 6.198754e-02 -9.893485e-01\r\n", "\r\n", " ... Eigenvalue: 2.670560e-09\r\n", " ... Eigenvector: 4.258378e-01 -9.047995e-01 0.000000e+00\r\n", "\r\n", " ... Eigenvalue: 5.366503e+07\r\n", " ... Eigenvector: -8.951621e-01 -4.213020e-01 -1.455661e-01\r\n", "Changes have not been written to state file.\r\n" ] } ], "source": [ "!xtp_run -e kmcmultiple -c runtime=1000 outputtime=10 field=10,0,0 carriertype=electron -f state.hdf5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You can find both the *occupation data* and the *rates* for the electron at 300 K, on files `occupation.dat` and `rates.dat`, respectively." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.3" } }, "nbformat": 4, "nbformat_minor": 4 }