{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Bidisperse simulations" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this notebook we will show how to do simulations with different types of particles. The same principle should be applied for simulations with several types of traps." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "scrolled": true }, "outputs": [], "source": [ "import os\n", "import sys\n", "\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import matplotlib as mpl\n", "\n", "sys.path.insert(0, '../../')\n", "\n", "import magcolloids as mgc\n", "\n", "from IPython.display import HTML\n", "\n", "idx = pd.IndexSlice" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "%reload_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "ureg = mgc.ureg" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Several types of particles:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A `particles` object creates one type of particles, with a fixed set of parameters. In the simulation, this particle is copied many times to the positions given by `positions`. \n", "\n", "To create a simulation with several types of particles, it is necessary to create different instances of `particles`. The `sim` and `world` objects accept an array of particles as arguments." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "region = np.array([20,20,4.1])" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "particles = mgc.particles(\n", " np.array([[-5,0,0],[0,5,0],[5,0,0]])*ureg.um,\n", " radius = 2*ureg.um,\n", " susceptibility = 1,\n", " diffusion=0.07*ureg.um**2/ureg.s,\n", " density = 0*ureg.kg/ureg.m**3,\n", " temperature=300*ureg.K)\n", "\n", "particles2 = mgc.particles(\n", " np.array([[-5,-3,0],[0,-3,0],[5,-3,0],[5,5,0]])*ureg.um,\n", " radius = 1*ureg.um,\n", " susceptibility = 1,\n", " diffusion=0.07*ureg.um**2/ureg.s,\n", " density = 0*ureg.kg/ureg.m**3,\n", " temperature=300*ureg.K)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "field = mgc.field(magnitude = 3*ureg.mT, frequency = 100*ureg.Hz, angle = 90*ureg.degrees)\n", "\n", "world = mgc.world([particles,particles2], temperature = 300*ureg.K,\n", " region=region*ureg.um, boundaries = ['p','p','f'], walls = [False,False,True],\n", " dipole_cutoff = 20*ureg.um)\n", "\n", "sim = mgc.sim(dir_name = \"bidisperse/\", file_name = \"test_particles\",\n", " timestep = 1e-4*ureg.s, framerate = 30*ureg.Hz, total_time = 30*ureg.s,\n", " particles = [particles,particles2], world = world, field = field, \n", " output = [\"x\",\"y\",\"z\",\"mux\",\"muy\",\"muz\"])" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "sim.generate_scripts()\n", "sim.run()\n", "sim.load()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "trj = sim.lazy_read[:]" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAG1CAYAAAAFuNXgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAXEQAAFxEByibzPwAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzdd3hb1fnA8e+RPOS9V+xsJ3F2IIEk7NGwN7SldFC66KBllhZKfx100RYo0AVl08EumzLChoQkZJBtJ44TxyPe25I1zu+PI6/Y8pJk2fL7eR49ku69uvfIia1X57znvEprjRBCCCFEuLCEugFCCCGEEIEkwY0QQgghwooEN0IIIYQIKxLcCCGEECKsSHAjhBBCiLAiwY0QQgghwooEN0IIIYQIKxLcCCGEECKsSHAjhBBCiLAiwY0QQgghwooEN0IIIYQIKxLcCCGEECKsSHAjhBBCiLAiwY0QQgghwooENz0opZYqpX6slHpWKVWmlNJKKfsQXvcVpdQ6pVSLUqpOKfWKUuqY0WizEEIIIXpTWutQt2HMUEo9B5x/2GaH1to2wGvuAK4F2oHXARtwKqCAz2qt/xuk5gohhBCiHxLc9KCU+hEQC6z33ioZILhRSp0CrAZqgZVa6yLv9pXAO5iAZ7rWuj74rRdCCCEESHAzIKWUZuDg5mXgLOBarfWfDtt3F/AD4Aat9e1Bb6wQQgghAMm5GTGlVOfwE8DT/RzSue3c0WmREEIIIUCCG38UANFAtdb6YD/7N3rvF41ek4QQQgghwc3ITfHe9xfYoLVuBRqAFKVUwqi1SgghhJjgIkLdgHEs3nvfNsAxrUCy99jmwU6olNruY9dsTHJy6XAaKIQQE9Bs732hn+fZq7U+z9/GiNCQ4GbklPd+oIxsNcC+4bBER0cnzJw5c16AzieEEGFp586daK0pmBs54r+Xu3Y6A9IWpdRSYBVwNLAcmMQgy4sMcr5k4OfAhUA2Zkbvc8DPtNYNgWhzuJDgZuQ6e2LiBjgm1nvfMpQTaq3n97ddKbV95syZ87Zv99WxI4QQAsBmszF9hoe1m/NGfI4VSw4GKsD5KX3XThsRpVQasAaYBRRjgpr5mFm5ZymlVmitawNxrXAgwc3IHfDe9/sbpJSKwwxJNWitBx2SEkIIESgKPFb/Xh8Ya4At9F47baTuxAQ2zwKf11q7AJRSdwPfB+4ALvertWFEgpuR2w04gAylVF4/M6aO9N5/OrrNEkIIoTwBC1BGTGt9W8/nSo2sTUqpbOCLgBP4bmdg4/VD4FLgi0qpG7XWh0bY3LAis6VGSGvdDrzlfXpJP4d0bntpdFokhBACMJmQWvlxC/Ub6ONMzOf1e4cHL1prB/AiYPUeJ5Dgxl93eO9vUUrN6tzoLb9wJdAEPBCKhgkhhAgbi733G33s33jYcROeDEv1oJQ6G5MA1lOUUmptj+e3aq1fBtBav+kts3A1sFkp9QYQhcmOtwBf1FrXjULThRBC9DAWhqUCaMB11Xpsn+Jj/4QjwU1vGZjpej2pw7Zl9Nyptb5GKbUZuAoT1DgxxTR/pbX+IIhtFUII4YPy+H2Kmb7WHvM1szWIBltXrfWw4yY8CW560Fo/DDw8Wq8TQggRBBrwJ7gZezk3g62rFlbdVIEgwY0QQgjR194Q9ND4Mti6asNaU20ikOBGCCFE2FFjr/fFHwOuq9Zj+wEf+yccCW6EEEKEFYV/OTdjcIxni/f+SB/7ZV21w0hwI4QQIvx4wqrr5n+YLKLjlVKZWuuqzh1KqWjgXO/+V0PUvjFH1rkRQggRXrQZlhrpLVQJxUqpq5RSu5RSv+31drSuAP6DWWrkr0qpnh0Tv8fM4v231tqf8g5hRXpuhBBCiCAY7tppQDowB8jp53TXACuAi4FdSqkNmMKZC4C9wLWBbPt4J8GNEEKI8OP/OjeBMOy103zRWtcopY4CfgFcAFwIHAL+DPxMFoztTYIbIYQQYUeNgZyb4a6BprX+OfDzAfbXAz/w3sQAJLgRQggRXsJvET8xTJJQLIQQQoiwIj03Qgghwk6YLeInhkmCGyGEEOFnbCQUixCR4EYIIUTYCUBVcDGOSXAjhBAivGhA+zEuJUNa454kFAshhBAirEjPjRBCiLAjw1ITmwQ3Qgghwo8ENxOaBDdCCCHCSlcBTD9eL8Y3ybkRQgghRFiRnhshhBDhR4alJjQJboQQQoQfCW4mNAluhBBChB2lVaibIEJIcm6EEEIIEVak50YIIUR40fg3LCWzpcY9CW6EEEKEH8m5mdAkuBFCCBF+pPdlQpPgRgghRHjRoDx+JBRLYDTuSUKxEEIIIcKK9NwIIYQIP9L7MqFJcCOEECL8+DMsJcY9CW6EEEKEH5ktNaFJzo0QQgghwor03AghhAgvGv9ybiRfZ9yT4EYIIUT4kZybCU2CGyGEEOFHCmdOaJJzI4QQQoiwIj03Qgghwo6S2VITmgQ3QgghwotW/uXcyJDWuCfBjRBCiPAjM54mNAluhBBChB+ZLTWhSUKxEEIIIcKK9NwIIYQIP5I3M6FJcCOEECK8aPyrLSX5OuOeBDdCCCHCj/TcTGiScyOEEEKIsCI9N0IIIcKOltlSE5oEN0IIIcKPDEtNaBLcCCGECC+SUDzhSc6NEEIIIcKK9NwIIYQIM8rPYSkZ0hrvJLgRQggRfiSheEKT4EYIIUT4kYTiCU2CGyGEEOFF41/PjSQUj3uSUCyEEEKIsCI9N0IIIcKP9L5MaBLcCCGECDuyQvHEJsGNEEKI8CMJxROa5NwIIYQQIqxIz40QQojwopWfs6Wk12e8k+BGCCFE+JEAZUKT4EYIIUT4kYTiCU2CGyGEEGFHy1TwCU0SioUQQggRVqTnRgghRHjR+JdzI70+454EN0IIIcKP5NxMaBLcCCGECCsa0H703EjHzfgnOTcBoJR6RymlB7idEeo2CiGEEBOF9NwE1jNASz/by0a7IUIIMXH5uYgfMqQ13klwE1g3aK1LQt0IIYSY0CSheMKT4EYIIUTY8SfnRox/knMjhBBCBIlSyqaU+oVSqlApZVdKlSulHlRK5Q3zPCWD5HYWBOs9jEfScxNYX1dKpQEeoBB4Tmt9IMRtEkKIiccT6gaYwAZYDRwDVADPA9OAK4BzlFIrtdZ7h3naR3xsbxxpO8ORBDeBdcthz/+olLpVa31rSFojhBAT1dgYlroZE9isAU7TWrcAKKWuA24HHgROHM4JtdZfDXAbw5IEN4HxHnA/8BEmOp8MXIIJdn6plGrSWt812EmUUtt97JoZqIYKETAvvwxWK5whKx2IMUaD9me2VAASipVSkcD3vU+/1xnYAGit71BKXQ6coJRaqrX+xP8rip4k5yYAtNb/p7X+p9a6WGvdrrUu1Fr/BrjAe8gvlFIxoWyjGB5Ph5P2A9W0FpXTuqcCe0U9Wirx9fbqq7B5c6hbIUT/tBr5LTCOA5KBvVrrTf3sf9p7f26gLii6Sc9NEGmtX1dKbQCWASuAtwc5fn5/2709OvMC30LRSXs81K/dTf1Hu2ktLKO9pArt7j1ob42LJjY/h/iCPDJWLSF2elaIWjtGVFfDEUeEuhVCjFWLvfcbfezfeNhxQ6KU+iGmN98BbAf+q7WuHlELw5gEN8FXhAluckLdENGXu81B5XNrOfTSBjoONQx8bKuD5i0lNG8poeKJD0hYOJXsC1eQduKCUWrtAG2zd9BRWYunw4l2ONEuNyrCioqOxBIdRXR2GpboyMBetLoaMjICe04hAkL5ORU8IL03U7z3B33sP3jYcUP1+8Oe36mU+oHW+oFhniesSXATfCne+/5WLhYh1LBhD8W3P0dH1cgmGTRv3U/z1v1UHfUJM667gOjMpAC3sH9uewftxWW07ymjbe9B2osOYi+rAs8Aw2YWC7YpmcTOzCMmP4/Y/Fxipuf6F/BUV0N6+shfL0Qw+V84c6avPEhfveyHiffet/nY33rYcYN5AdP7/wlQDcwAvgZcDdyvlKrVWj83xHOFPQlugkgplQEc733qq2tSjDLtdrPvnpepenF9QM7XuH4Pn37jHqZfcx7ppywKyDkP53G6aPxwKzX/W0PrzpKBA5l+T+DBXlKJvaQSVm8w2ywWEmZNImNuNgmnrkBNmzq8c9bUSM+NGLtCP1uqswG+flmH1UCt9Q8O27QduF4ptRu4F7gNkODGS4IbPymlVgAxwDu6R8apUmoa8E8gDnhBa+2ra1KMIk+Hi8JfPE7D2t0BPa+71cGe3zyNq7md7POXB+y8HVX11PxvLXVvrMPV4H/nX2R7E3F1ZSRXFhHbUEHkiy0orWnNnErbNT8mxdZBxBVfgbo6mDGj7wk++QQ2bYLzzjPBza23wmOPwZw5cO+9MHmyuUUGeAhMiNG3d4g9NL40e+/jfOyP9d77+4t9P3ArMFspNV1rvc/P84UFCW78VwA8BFQopQqBSiAPWArYMNH1N0PXPNFJezwU/frJgAc23RfQlNzzMpboSDLPONKvU7UVllL5xJs0bdg5/F4ab1tiGypJObgdpT1YXQ7i6sqxuhy0JufQnDmDylkrccSlYHE7mbHuWVJ+dh3aYoHrrjbnWLsWpkyB226Dd96BRYtMIAPwTe9/6ee8XxR374aTTjKPk5KgYeD8JSGCSoNfkxsDMzGycwFXXysR5x123IhorT1Kqb1AJia3U4IbJLgJhI+BvwHLMTOajsWMpW4GngL+prVuD13zRKeKpz+i/oOdwb2I1uz704vEF+QROy1z2C/3OF1U/us1qv77HnhGtsTqgtf/QkSH+S9Xmb8Cd5QNjyWCqpnLaU9MB9V7BQi3NYKiYy8DNFang4Wv/8W8lWOOQXk88K1vwR/+AG++CaefDmefDXl5cNFFUF8P774Lp55q8m8SE6G4GI46Ck48EXJz4dprR/Q+hPCL/zk3/trivff1Tadz+6cBuJbkdh5Gghs/aa13At8NdTvEwNpLqyl9aPWoXEs7Xez9w39ZcPc3UdahLyXVuvsAB+56Akdp1TAvaL6mxtceIP/jp7s2b131XdzRsQO8sAelAIU7Kobtp36LqLZG3JE2YlNspN/4U2Jn5sKqVd3HFxVBTo5ZxO+UU3p/TX7xRbP+jdsN111nbhs3yrRxMarGQOHMDzElEWYqpY7oZ62bS7z3L/lzEaXUfGAOJnF5lz/nCicS3IgJofiPz6M7XKN2vdZdB6n871pyLjlm0GP96a2xdrSx8PW/9tm++ezrvQHL8DljEnHGJAJgd0Pd9XeTdckpZF/6GVSE1RwUFQUdHf2f4NxzzQ3gyCPh/PPhhz+EG2+EF16Ae+4ZcduEGC+01h1KqT8DPwH+rJQ6TWvdCl3lFxYBH2itu2Y2KKWuAq7CrF1zU4/tpwM1h69krJRaBDyOSU6+X2vt45dy4pEVikXYa95RSvO2/aN+3YpnPuqzEODhnHVNFF53N1XPvDPswCa+ej8F7z6CPS6FPcsvoTltMs7oOLafemVggwe3h0NPvEnhD/+Mq9E7e3Wg4Kan886D2lrz+PTT4S9/gdNOM+2bNs0Mae3YEbi2CtEp9CsUA/wKk7pwDFCklHpCKbUWU1eqFlNAs6d0TC/M4euirQQ2eCuDr1ZKPa6U+hgzLXwu8C5wE6KL9NyIsHfohY9Dct2Oqkbq1+wi9bj+F5d2VNax9//uo6OiduATedwo7UFpTXJFIfb4VCZ/+hqR9jYOLD6dpux8AFoypgX4HfTWvucgRTf9lZm//CZRQw1uAFJT4Y03zPG1tSZ354QT4P/+zyQhX301/OlPQW27mFi0Vn7VlgrUkJbW2q6UOhkTeFyGKclTj6ns/VOtdekQT/UapmbhUZgVjZOAJuAD4F/AQ1prd0AaHSaU1MsZ+5RS2+fNmzdv+3ZfdTWFL64WO59cchvaOXpDUj0lL59NwW++3Ge7o7yaPTf9HWddU6/tUa31RLU3Me2TF7G4XTRlTiehugRtsRLhtPc6dsuZ16Cto//9JDIzhVk/+RJR+dNMXs1Ie4lefhnOOcc8/uADOPbYgLVRTFw2m43pSZFsuO74wQ/2Ydkd77OrqmWHn1PBRQhJz40Ia62FZSELbACatx1Aa43qEQB01DSw55b7cNY2EtNUjcXloC05h/w1jxPXUNnr9Z6ISHad9DWsTjsF7z0CQFP6VIqXXxKyvBVnVT3Fv3mMAq1NcBMxwj8jS5eaqeaLFpm8nAsvNDOxnn0WFi6EG26Q3BwxYmMgoViEkAQ3Iqy1FpaH9PruVjuO8jpsuWkAuBpb2fvTf+ApK2dJP4nAALtOuBxHXApppVupmboElMIZk8DOE6/A4nbSnpQV8g99e2U9AK66RiIy00Z2kuxs2O/NhaquNsHMLbfAZZeZ5OMbbzT7du+G2bMD0GohxEQhwY0Ia61FoQ1uOtvQGdwc/P0jxH/wGtmFa7r2lxecgCsqBkdcMq1pk7u210zrPXXakTDCICIYlEIrC+X3PcuUWwKwRmVGBjzySPfzPXvgoYfM4zlz4Mkn4bOf9f86YuII/To3IoRktpQIa85GXzXrRrENDaYNde9sJP6f9zF522pa0ifTlDGdurx5VOUfTd2Uhb0Cm/HAY7HQ9N4mGtduC/zJH3zQrJ1z6JB5/rnPmQUCe84oa26Gp5/2cylaEa68yz+N6CbGPwluRFgbbCr26LTBjXPPPhpuvYuUsh0UHnsZ5XNPovjoiziw5KxQN2/EtMWK8ngo/euzuJqDFERmZkKpd0JJczP8+c/d+2prTW/OwoXyiSR6094ZUyO8Baj8ggghCW5EWLN0LjoXAsrtZMqeN0n/8TeInDWD6W//k6r85bSlTMIZkxDyvBl/aWVFedy46pspuy+IxYjz8qCqCiwW+MIXTJ2r2FizDWD7dnj//eBdXwgx7kjOjQhrURmJIbv28ndvA8CVlsneoy+iObOfKtvjmCs6hoiONjrikql/ZxPJxy4iacWC4FwsPd2Ub1iyBMq9eVTHHgvXXGPWyDnxROm9Eb1Jzs2EJj03IqzFzZ40ehfrMWAf33gQgJJZp7H9M98Ou8AGwGlLINLeXafv4N+fQ7uCtI6YUrB+vSnfcP758NWvwqZNcOed3ceUlAx9YUER5kY+JGWmkEtgNN5Jz40Ia3GzRie4SawrZt7mfwNQn5ZPbEsVRfPOp2HmMiJbG0elDcNla6ruWjsHYMcp32Tm2idpzMrHnpBOW3IW9sTuyuYxDZVEOlpJL9lEYnUJAInVJew4+et0xKXgrG2kYc02Uo5fHJwGK2XWxnnusCEwlwuysmD69O5tHs+4H/YTfpJ1biY0CW5EWIubNQlrQgzu5vagXmfmrpe7Hsc3lVGXUUBt9kKiIoEx1JkQX11CUuUeHPGp5G1/q9e+eW/9A4DMfb1q83Fw3slYPC4m7erOa2nIyif50B7zurcfoC5vPqkHt+NY+y/Yvc2UXGhrg8hIePVVqK83vVqXXQYVFVBWBg0NcFYAEqqtVti3D66/Hv5h3gOTJsHll8NNN0FSkv/XEEKMKxLciLBmiYog47QjqHzmo6Bdw+qyE203vTOF8y+iPmMOWnlHfNubIHQ5zaA16fs2krfj7X53uyJjKJt/Ernb36I+bz4Z+zbisUTgtMXjirJhcTu7XlufMxurq4PG7Fk0ZufTUjGVuJpSUioLST1oSoNE11Sg8/JQ3/2uWadm8mSw281CfABXXAE2m9nWacUKs0rx3/4GTidER+Nud+BxOFFWCxZbFJbIQf5UJSTAffeZ6uM33wzf+Q6ceircdpvk4kxQskLxxCbBjQh72ecfTeWza4LyIRfbXMGi9Q8AUJM13wQ2FhPNRCTasLjsA708qJIqipj+yfNdz1tS82hJzcUVHUfN1MVg6Y666vNMCZ2y+af0PZHWJFSX0JI2uVctK6ctngiXnc3n3NDr8LwpUaTf80d47DEzo+n73zc7/vMf+O1v4aOP4K67zHDSz35menHWroX77qN5wQqKF5yLq765+4QWhS0vg9hZucTNmUzqiYuISIrr/03PmgVPPWUeNzfDggUmyHnuORMAiYlB419CscTD454ENyLs2XLTSDt5AbVvbQ34uedt+idgAps98y7oledhcbUG/HqDUW4nObs+6DO0VLrgM9ROWzLCkyqaM6f32eyMju+VUNypvMZCSkMT1phos+Gii8w07uxsuPRSs+3mm9EuN7Urzqb1748wtfQeAOJ2bMCVe1LvE3o09gNV2A9UUbd6Ewf/8Qopxy8g8/xjiJszwMKH8fGmvMP+/XDPPaZHR0wIGv++y0hsM/5JcCMmhGlXnU3TxmKcDYELOGJbDhHhclA850yqcpf22hc/JwdX6b6AXWtQWpNUWUTujreJam/uszumqSrgl3Ta+g9uPG12mtbvJOUEbzA1qW9Sd9veckpuf5r24goSq02x0Mb0mZQsGDwHRztd1L21mbq3NpN+1tHkfeMsrLHRA7/ouOMGf0MirMiw1MQmwY2YECKT4ph+zbkU/vzxgJ1z0TqTvFqTvajX9oikWOJnptIwisFN6sHtTNnyPwB2nngFrqgY8ratpilrJu2JGdjjUwN+TWd0LBZXBxZXB56IqF772goPdAc3PWitqfz3W1T85+2uaePt8ekAWF0OrE47rmgfQ079qHllHU0bCpl+4+eJXzCt7wEXXADr1pk1cYQQE4ascyMmjNTj55P75ZMCci7ldnU99lgjux5bbJHMufWLOA4eCsh1hqp+UgHO6FgAHPGpuKNj2b/0XOrz5mFPzOiVXxMwFiuu6Dgi7H17w9r2lPXZpj0e9t/5DOWPvdlrPRx3ZAwA8Q0HWfDhP5ix+b9YXI4hN6OjqoHCmx+g4eOdfXe++y785S9mWExMLFqN/CbGPfmNFxPK5K+eyqTLTvDvJFqz/N3fAbD+hB92bbbGRjPn118mbvYk7CUV/l1jiO3ILFpLVtFaolvriHS0UZc3f1TXd3Ha4ol09B2aai8uQx+W9HDgnuepff2TPsd6IqLYueKrXTPMUg7t5ojVdzKp8N0ht0N3uCj+1b9o2ljUvbG83ExBv/DC3ov9ifCnFdoz8psEOOOfBDdiwpny9VXMuP6CwfM0+hHR0Upm+UYANq38Hu4Ic46YaZnMu/PrJC2Zjn1/ZfBW6j3MpN0fkLP7AwreexSA6mlHjMp1Ozmj4/rPu2l34Cir7npe/eo6al5d5/M8bUnZbDztRj5Z9UM0UD35CHL2rWHpa78j0t43h6g/2umm+Df/pqO2yWyIiTFJxU8+2T1jS0wY/q1QLMY7CW7EhJR51lIW3X8VSUfOHNbrln1wJzN2v8ruhZ/FEZMCFguTLjuBhX//DnH5OQC07+07JBMMFrez1/MtZ15De3L2qFy7k6+kYoB279BUR1UDB//xytBOaLGy8fQfc2De6ZTOORWA2ev/M+T2uFvsHLjrWfMkJQWuvBLuuAOeeGLI5xBCjH8S3IgJKzormbl/+CoFt11OyjEFg+ZlRDq6exCapi8m++KVLH7oB0z5+qpei8y1jVJwk1FshnhqJy9k89nXmzVotCa9+BNyt60mo3hD0NswUHDTVmx+Dvvv/i+etqHn0HSqmnYUALa2OjIObBzy6xrX7aZ29Sbz5Gc/M3OC77ln2NcX45zk3ExoMltKhDVHZT328lo8dicepwvtdGOJtKKiIrBERxEzOZ3kZfkkL8vHcaiB+o8LaS0sp7WwDHtZLR6HC6XdWBLiOMKbZwNw5BM/xGqL6vea7pa2oL+vSTveJtMb3JQuPp3ksp1YXQ5SS7cT12DyfTRQPWNZUNvhtMVja67td5+7pY22PeU0bSj0+zpTdr5Oa1IObUk5Qzq+8sl3STv1CIiNhY8/Nhs9HkksnkBkeGlik+BGhA1HRR2tReW0FpXRWlhO255yXE2DBxoRyXHEzcolbvYk4mblkvKVk4jOTDY7H33U1ChavRo+TofKSigp8RnYAHg6XD73BYTWXYHNnqMvZtKOd8gs3kB7fBoxLd2BRs3UYSza53EDatgf/s7o/hOKwST5Vr+0dljnG4jSHtMLM4SEafv+QzR/WkzCohlwxBGmgvhrr8GZZwasPWJs055Qt0CEkgQ3YlxzNbVR/donVL20Dkd53cjO0dBK4/pCGtd39zDETM0k67h8Mq+43GxYtcqsmfKf/0CU78AGQDudA+73R3zNAfLXPgmAIzaJKVvfoDl9Kh5loWb6kUza8Q7N6VOJdLRSPu/EIZ2zszp4S2oue475AlanHWuHnY645O6DPB4inO1YO9qJ8N6sHXZimqp8Dku52+w0frLL7/fcqeDjx6jLLmDf4guGdHz1K+tMcPPBBxAXZ4p0/vKX8NOfBqxNQoixSYIbMS617Cql6oWPqX13KzqAPSUpVbvIKNuM59MoUh/YRUd0PI0XXk78ly8iZtXxpsr1oILTHW512rsCG2d0LPuWnsesjx6ndOEqLG4nk3a+R9GxlxHdUsfUza+y+NW7qJh9DIdmrezV2xHZ3kyEo5WU8l0oj4e4epMbE19XxpKX/th1XGtSFhFOB1ZnOxFOBx5LBK6oGFxRMbi9966oGA7lr+i3va4WU/zSH5+c/mMWv3UXEU5T1T21chfNqZvpiEkkqaqI0rmn+ezJadnqXUQxNtZUIs/JgZoav9ojxgmNf7kzUn9h3JPgRowr9Wt3Uf7YW7QWBidpN6H+ALHNh6iccjRuaxRtCZlUV8bguXM18a/vIe/yU0k8YuAZVpao4PxapZds7nps7bCTtXc9HmsEc95/hJjmWvYuvwR7YgZOWzxtSVnE15eRU/gROYUfUT11CbaWWhJqS/uct3rqEmIb+y46aE9Ip2baEbiiY3FFxaCtQwnsurnbO4b/Jvux5ZSrAUisLsbqsjPj0xe69qVV7GDzqdf2+zpnbRPO2iYi0xIh2dsLdffdcPvtECF/+sKZqS018uBGYpvxT37Dxbjgam5n/19eonb15sEP9kN2qZlhVDltZZ99Ldv3s+tHD5F5zlFM/uYZ3YUhD6OihhcEDEVMQ2Wv2U8eayTuyGj2rvgcc95/jN3HfalrGrg7KoZ9y85n4Rt/BaBmymK0NaIrsHFbI1EeF87oeBzxaVTNXEbZwqUdFToAACAASURBVM9g7WhHeVzMW30/ZQtOIatoLW3J2dROWTyiRFx36/BnSA2kKWMGAFtSp5Bb+A7p5duwuhzENFXSntj/FPjWPWUkpyWaCuGdPvgATjopoG0TY42/69VIMvJ4J8GNGPPqP9pJyV3P4azrP7cjUGZvfnLwg7Sm6sV1NKwvYsb1F5G4ZEafQyKS4gPartTSbV11owDaEjNpzphKxdwTQWuU9mBPSOv1Gnd0LJvPuaFXu9Ga2IYKnLZ4Diw5k8SqElLKdlDw7sO0pE2mPnceoGhPyqR26mJaUyZR8N4jTN62GoBtn/k2LtvQ35t2BSej0xUdz/6F55BQX0p0eyPR7Y0+gxtnnTeoyciA11+H006DV1+V4GYikNlSE5rMixRjlqu5nb2/e4qin/0zuIGN1iiPG+V24ohOZOeRlw36ko7Kenbd+CAldz+Pu713D0XszNyANS31wFbyPn2dtsRMGrLzacyYjlYWKud0VrnWOGKTyC78yAQwA4joaEdbIjiw5Cy0NZLGnFmULDufHadeSVNWPun7tzBt00s0ZU4HwJ6Ywa4TLqcxywzDRbU3k1S+m6kbXyL1wNZB264ig/vdaffRXwTAGRXr8xjt7LFS9KpV8OGHcO+98NZbQW2bECK0pOdGjEntpdXs/vHDdFQ1BP1ak4veIueAWQtl2/Kv05aQNbQXentxmjbvY87vvto1fTwmP8/vNs196x9EtzVSNX0pFu2hOX0qWcXrqZ52JAeOOAvdWQhTWSg65gvMXPcMkfYWShef0b2vh0k738XWXMOelZ83i/314I6KoXbqYmqnLiayvRlXlK1rnz0xg31HXcjMNU+Qv+YJLB6TvJ1Svou6KQsHfA/W+Bg/fwoDc9oSAcjav4HilMn9HqMiD/tZHHOMWdDvVLP6MR7PqNbiEqNHe+TfdSKTnhsx5rTuKWfndf8YlcAGoCbHfEjvWPaVoQc2PdhLq9l57T+wHzQzcWx5mViiR553E9XaQHRbIwAZ+z6hdP4pZBWvB6B87vG4o3oHDS5bPEUrLyXS0cqMdc9gcfbuScrYu56kyiKKj74YT+TA9bScMQn9Jg6XHHku2z/zrSG/B2tCLNFZKUM+3h8NGfk+90WmJPTdePbZ3Y/do1MDTIwy7WdtKckoHvckuBFjSsvug+y64QFcDa2jds2FH98PQIRz5CsLd1Q1sOPa+2jfX4WyWoiZMWlYr7c4HWTv/oBJO95h3tumPU3pU1HA5O3dQyja0n9nqycymuKjL8YZHc+sjx4nst0Uj0w5uJ3M4vXsXX4JLlvcyN4cJofH3WP4Z/fxXxnw+NiZucTmB254zheNKc/gsx2z+mlDamr3Y5kaHr60Hzcx7klwI8aMtpJDFN78CO5W+6het/NvWWvi8AKSw7kaWtl908M4DtUTM3N4Q1Pz3rqP7KK1ZHpnRBUvPbfP8NHms64dcAhFW6wcWHImjVkzmPv2A8x55yFyt79N8VEX0REXmF6UqulLAUgv2YjV4TsYjMnPG5XgxhkdT07xGlLLt/fJOYpISSAqLbH/Fx53HDz1FGSPbqFRIcTokJwbMSY4DtWz+8cPDalcQiDZWmtQQHXOQpzR/s9y6qhuZNeNDzHpc32nkvuSu201Ed6hpKoZy6jMX8Gi1/9MS0ouu4//Mvb4NJNHM5TcEKWoLDieQ7NWENtwCFeUDUdC+kjfTh/l80+mNTWX6Z+8gCMuhar85f0eFzt7CnFz8lDRkWg/F/IbyNaTrmLeB/czfeuLpJZvo7TgMzjizcyxhEXTfb9w3jz49FO45JKgtU2EltSWmtik50aEnNaa4tuexlnbPPjBAZZYVwJAU1rfKd0j5SivpW5tEZY426DHpu/bSEaJqWC95axr6YhJZNHrfwagJX0K7UlZpgdnmEmv2hpJa1peQAObTlaXWZxv0q73u4a/eopIjidxWQHWOBupJywK+PUPV7Ts85TOOZmk2n0s+PAfXdvTzzza94sKCuDWW2HLFrj++qC3UYw+v3JuxLgnwY0IuUPPraF5a0lIrh3bUkVp/snUZs8P6Hkb1+4mdtbUAY+Jbqkjz5tPs+uEy7F2tJNcYepb1ebNp3L20Ht/RlND9qyux/NX39dnOCh11dFYvNPAM87tvzRDIDltCVRNW86hqaYCusVpxzY5g8QlA6wkfbm3ZtiSJXDHHUFvoxhdGoX2+HGTRfzGPQluREjZy2o5+ODrIbl2Yu0+Mss20+pjATh/NW4buETETG+dqD3LP4s9MYPJW98kvu4g1dOOpHTJmaDG5q+nJzKa/YvP6Hqes/uD7p0WRfoZ3QFN3Ow8EgYKMgIoa7/JV1JA1mcHKRraM6k4buSJ1mKM6qwtNeJbqN+A8NfY/OspJgStNftufxaPPXg5GQOJbq8HoDm5/zVS/OVu6cCS4DuPxxFvPmBbMkwPjzvCTMGunn5EUNoTSPWTF1By5Dl4lIWsPR+z5KU/Mvv9x0ibmkRUTO9UvqnXXITFNnAldX9Znd1J6HFHzyf9tKWDv+jPZviPN94IUquEEKEiwY0ImUP/Dd1wFIArMpaGtBk+p1cHgqO2/5lfyu0koeYATRnTukojRDpa2b/krIDNbAom5XbiiEvBnphBe0IGbYmZxDYeYvI9t0BiItR1T8+Ozk4l92tnDHA2/0W1mzWR2hOzmHrdEJOEv/c9OPZYU45BhB3JuZnYZLaUCAlXq52DD4X2G7NWFpQOTv2jrmt4VL/XWfzqXQAkVpew5OXbafcm/janD5ynMxZYnXYWvvbnrudVM5ZRXnA86a4acs9bjrrqKkhLg7lz4Tvfge9/n4xzV9BWVEbtG58EpU3t8ZkAxDQdgozkob3I4TDlGK65JihtEqElQcrEJsGNCIma1zbisXeEtA3BDmy8V8HlsBAZ1X2tCHvfOlkVBcfTnD61z9o2Y4HF1UFUWyP2xAyAPsmWmcUbutbn4fXHunfs3Ak/+AGccw4qK4up11yEdrmpezvwld1VdCRtV15N7IYPBj+4U7R3tebPfnbQulxi/JF/0olNhqXEqNNaU/XixyFtQ1R7A7O2Pos9NnXwg/2kPRYsCd2Lyc1/8+8AeCxWDs4/BYCmrJkBDWyUx82cdx7C1lTtbYTuN6gajMXVwawP/kXBe4+Qucf8mynvp0blrBVsOfPqwU8yYwZkZaHqapl24+fIvvRksATuT09keiL5t15B7C03QFER7Ns3tBdWVZn7adMC1hYhxNjg919TpdTA67APg9b60UCdS4xdTZv2dtVhCoW4pgrmr3sIrRRl048b/AUBYK9uJy4zhoy1r6KAtsQMyueeREvGVGqmBTaBOLa+grQDnxLTUkvBe4/QnDaZhNpSADafc8OwzpVStpOYllrArGszadf7Xfvs8WloayQ7v/kb5txzA5boSDwuN217K2nbXETmpSd3n6ilBTIzaTn7UmJ/+gvyb53OwXtfwn6gyq/3mrZqKXlXnk1EZ5HOiy6Cxx+Hm24a/MUZpidKZkuFJxmWmtgC8VXxYQI3cU6Cmwmg6oXQ9to4bEkAFC7+HK4ArEo8NIr5/74VMMM6+488p2sl3YBWpfa4SaosIq10KwfnnYwnIgptsZBQW0rxURf2PV5rLK4OPJHRpO3fjK2phuoZy5j39v20pOYRX3cQgMr8FcTXlhJfb6a3tyVm0jCpACyKyVdfirOpjUMvbqDq5U9w1pseolRrFBHu3kOPCS8/zpq2WWCxkLx8FhlHzKZl617aiyuG/BZVhJXklfPIPP8Y4hdM671z0iQ4cGDgE6xebX7mp5wCZWWwcKFZzG/x4iG3QYxxGvCnKrgMaQ3ZWO3gCFQ/+BbgeT9efwEQ/KVMRch11DRSv2ZXSNswa8tTADSljmLyrqc756YtKQtXdHB6C6Lam8nauw6AmhlmOnSct9cmZ+d7tKbk4o6ykbv1TTL2d+e+uKJiiOhoByD14HaArsBm93FfpD05B4Dksp20pE/pan/a6SupenM7h17c0Os9AlTnLCHn4DoK511IY8p05mx7isTGUtAe8EDDmt00ALEzsphy9cV0VNTQWlRG254y3M3t3SdSiuicVGJn5RI3O4/UkxYT6atm1L33Qm0t/O1vffdVVsJ118Fbb0FHB2zcaJKK6+rAZoPduyEvT3pywoK/s56k12cYHmYMdnAEKrjZrLX+xUhfrJSahgQ3E0Ld+9v7fAiOtvrMAmJaa4I6Bbwni6uDZe/8set5y4pTcEcOXpphJGKazDBPxZzu4bYpm81U55iWWha+/uc+r9mz4nN0xCYS3VJPREcb7UlZ2JqqsbXUUTlrZa/8mIbcuV2Po6ZNpvr9fTgONfTbloPTTiDn4Dpm7/hvr+0JjQdpTp6Cxe0kvqmM5j1u9tz+EpM+fyz5v7gcS1QErqZWPB0ulMWCJTYa61DXyak1Q2hs3mwClfR08//tvvvgJz+BL3zBBDF33AFf/jKceaY5/uWX4eabYc4ceO45mD5AXSohxOHGXAdHIP66NwH+Vjts955HhLnWwoFX7R0Njpgk2uMzRu+Chw07pT/9Dxp+ch/txQH8WWjNzLVPkVBrhmTaE7vf376jLqDgvUdxWyOxus2CiZX5y2lPyiauvozWlEloawQdsd1TqO2D1KSypGbQuLMWPL6/sLkiY1hz0i3M3fJvLB4XiY2mbQs2PYLHYsUVEUtUh6kntvbEmyj/z/s0bz9Awa+/SETiCHtPVq+Gn/4UjjgCLr3U5N58+9vQ1mbWsznaW2/qllvgtdeg3dtD9ItfwIYNJrBZvhyeeAJOPtn3dcSYpvEv50ZGpYZtzHVw+B3caK2HuKjEgOf4LvBdf88jxr62ovLQNkBrpu18lcopAxRVDDCPNbLrcen5VzE5PpaZv/wGe265F3tJZUCuEVdf3hXY1E5eSFNWd8kDe2Kmz0TixpxZ/W4fiEpOp7V0iDOvlCK5vrjPZovHjSsiik0rfsTy925jxbu/ZfPRVxL9+qfsbmul4K5vY43pp7fmD3+Ap56Cigp45hlISYGEBIiIMIsHnnKKCU42boQTToAnn4Tf/x6uvtoc0ykyEv75T1NbCqCpCRYsMLeFC+Hii01hze9+N7A5UWLUSELxqBmTHRxjb1ENEbbc7R20l1aHtA1R9kYine3EN4amB+mQziBPayKS4sn/7Xco/vkDtO0eJAF2CFpTJnU9Vh43sfXltPXYFiiRuZNoKqof8vHJtUVdj2sz5lI070K0xYrV2Y62WPFYo9g/42SmFr/NknX3AtBQ+SlFGWkU/PqL3SeqrTUBSUUFTJ0K69ebIOZwWsPbb8NVV5nnHg8ceWTvwKZTfj4UF0NOjgmAOp1/Prz/vrnfvNmUaehcE0eMGxLcjI6x2sEh69yIUdO2t2LAYYzRkF6xjcaUqVTlDaH2UAA1pM2kPSYFT5ujaxp8RHwsM2/9FglLC/y/gFLUTDGzfVLLdpBd+JH/5zxMwtIC2mucw+qzb0qe1vU4rXonMa0muHVHxuCxmp6Z8qnHsebkn7L+uOupyZxHcv0+6j/aRdX/NpkXPvsszJ4Np55qhp3y8uC223pf6I47YNcuuOQSMwz1pz/BJu/rTznFdwMzM00AdMNhPVvz58O6dbB/v3l9ZWB62MQo8qdwphj3Ah7cKKUsSqmrlFJvK6V2KaXeU0r9VSn1LaXU0Uqp4GRSijGvtSjE+TZak1f8HrU5C2lMH51K1QCJdftIrt1LS1IuAK09huasMdHM+NnXyPvuRVhi/OsdOLjgVMoLjgcGz5kZDkucjclXfw5tS8FZN7yFAHsOyQFYPL6LpLoiYymfvBKAmbte5MDdz+G8529maOif/4TjjoNrrzVDSH/9q5n1dNZZsHKl6a056iizIN/OnXDBBWZ4qVP5AMOh55wDZ/RT+yo1FV55BVasMOfesGE4b10IEULBGJb6OfATuufSzQaOo/v7nkcpVQRsBjZprf8QhDaIMaitOLTffpNr9gDQEZ0wqteNbDdDyfWZcwBo31sBp3SvqaKUIv3MlSQuLeDA3U/SsmXPyC5ksVCVv5xJu94nY99Gyued5G/TSVhawOTvX4KryU7hb14c0TkK51/E7O3PArBw48OsPfEmnzPVWhMn4bZGkVm5hdaiLNQH6+DuO82sps6ZTcnJJth5+GEoKQG73ZRQePRRs6+T1Qput7l/7DH40Y/6XlBreOkl8/jAAZgypff+iAi4/XZwOs1sq9deG9HPQIwybVYc8Of1YmSUUhbMENPFQA5QBWzDfOZvBj7VWvdfUTiAghHcfAVwAV8E/gckAwuBJd7bYkzAUwB8HpDgZoJwtwb9//OAnFGxAETbG0ftmpOK3yev2Kzq25KcB5iiof2Jykxh5q3fovZ/ayl/6GU87Y5hXy+pwuS4KO1Bedxoi3VE7bbE2cj9xnmkfeYoAA4++t6IzgNQmzmfNZnzsbXVMHfLv8kreZ/SGb5nIm1d+jWWrPs70/e8bjZccQV89avdB5xzjlmn5tFH4cUXTdBj9fE+O6ex33RT/8FNz2ThqVP7L0jkdJoenLvuGviNijFFcm5C5ueMgQ6OYAQ3qcD/tNZPe5+3AAeBVzsPUErFYqZ9yZKgE4jH4XtIYjS0JpoE2+k7X6E6d8moXLMzsCmZvQpXlJne7Olw+Ty+Zy9O1XPvUffWBjzDCAqdNrPicv2kOSMKbKwJsaSeuoyMC04gKs2s5Oxuc1D95pZhn+tw9th06jLmkrf/A0qnneizvlR7XAa751/MnO3PAFB361/pVQEsIsIMTSUMoQeuM1jRGnbsgHnz+h5TVQWXXw5JSbB9u8m36emxx0yV87POGvx6YkzQfi7id3hxWDEsY6KDIxjBzVYG6dTTWrcBa703MUFopzuk149w9lj1VutRneI7rfANqqaYXhA9QHDTKSozhbxvnU/OV86k4d1N1LzyEe3Fg0+j1wraEzKGvUhgTH4e6WcfQ8rxS7BE986TadxUjKc9MBXcY1pNMrXF48Jj8b0wX13mPDbFZ+OwJZHYHEef8qZDCWzA/BvX1prg5KWX+g9uMjJMb9D3vmemk997b/e+jg4zJfxvf5Mp4UIMzZjo4AhGcPMX4O9KqXStdeiqI4qxJ8SfDa7ImK7HsS1VtCVkBf2aVTmLyKz4FIDk6iIaMmYN60PSaosi7fTlpJ2+nNZdJdS8sobmzUW46pv7PX7mx88Q4bQT01xN5ayVuGy+a2dFpiaScOQc0s9cSezsyT6Payn0f20i5XEzpfgtUupMPpEnYvAVhzsrtrf6e/3UVNProrXvoPaii0xwU33YUgUPP2ymip9+un9tEKNOhqVCZkx0cAQ8uNFa/1spdRbwvFLqIq31oUBfQ4xPlqjIwQ8KJqVYf8qNpFQV4ohJGpVLtiTldgU3TSkmWdUSPbJfu5jpuaSdeSy2mdNo2VZCe3EZ7tY2dEcHuDpAa1rSJpNcafJubM01tHiDm8jURGLy84jNz/Pe5xKZ4qM+02H8Di4ArSxMKjV/xxp7TA8fCldjG45DDURn+bGcxg03mGniWVm983c6ZWeb+55DUg4H/OpX8OCD0mszDklwEzJjooMjWIv4/Qwz1rZVKXU/8CImcSi0GaUipCxRoV8zUlsiqMvuZ2giSDps3UGUxePCQ/SQfw7a7aFhzU4a1u6itaiM9v3VA9TligQ0e+ZfSEJOCXM2PYmt5hD1iWYFYuWKxu2JQtniiCuYRkRCjI/z9GUvqxvysT4pRWXuMrLLNpDUUMLKt29lzck/HUYbav0Lbk4+2RTIjB+gCvxdd8Ebb3Q/f+ABM7X81FNHfl0RGhr/1quR2VIjNlY6OAL+aaOUOgN4FojGDET8GPgRJkN6N7AJb5Y0ph5FAP5yivEgMnV0p2CPBU3pM7oeH/H+3Ww84dpBfw4dtU1Uv7Ke6lc34KwZzorkCm2JINJb3Ttv7/vUTFqC05ZAR3UjHdWNNHy4g4MPvk7qSQvJPHc5cbPzBj3rQAnQw1E25RiSa/dgs/dfaHPANjj8bMMh79/X/mZDdfr44+5p4WCCnbPPNgGlr9lYQoj+hLyDIxhfpX8L2IBXMG8uCZM0tASYC8wDLvMeq4PUBjEGxc3ODXUTRp+3p8URnUCUoxmtFHGz+v85NG0upurFj2n4aAfaPfJFOiIdJh+nNTEHd2TfhQE9Dic1r22k5rWNxM7OJfPc5aSdvCjow4YdtiSK5l3Ewo0PUjx7mDOP/B0WWrDA3K9a5fuYX/8aPvrIrHZ83XVw//1wzTWmCOcf/winneZfG8SokmGp0BgrHRzBCCzmAFu01uccvkMpFU93oHMEMhV8QomdFfhaR2Ndcu1eAKIdzTi9JQcOD/I6ahopufM5GtcXBuSah6YcxeQ971A+/ZiuEge+tBWWUXL7s1T8622mXX8RiYtn9DkmIt5GR1Vg1gZqj0sb0euscX7WdrrlFhOoJA8wtGWzmUUBr7/eBDfHH29qWP3rX/D1r5sA6Q9/6A6UxJgmwU3IjIkOjmCctBLY2d8OrXUL8KH3JiaYmMkZWGyReOyhXe9mVPUYBqnPmENkRhKRKd15H9WvfULp318J2AKHtpZqFq75BwAW99B/zo7Kenbf+CCZ5xxN3jfO6FWRO3ZGFm3FgRk2T6kxAVx8UxmHcodY30spYmf4ObPtmmsGP6azRMPkyebxI4/AlVfCl79sqoTfeacpAfG5z8Evf9mdhCzGJL9WKBb+GBMdHMEonPlf4KggnFeMc8pqIXZGTqibMaq0tfv7g8XdQZy396qjppHCnzxCye3PBnTl5vSKbV2PZ257YXgv1pqqFz9m+5V307SluGtzXAB73DpXh26Lzxzya2y5qUTE+VGSrmmIeUt2779Dbq653Xxzd1AUG2vKL+zebYbICgrMTKq2tpG3SwRN5yJ+I76Fet2K8W3ADg6t9Yda679orb+htQ5arBCM4OaXQIRS6qYgnHtMUkrZlFK/UEoVKqXsSqlypdSDSqnBszUnmImWd5NQf6DrcfqhHcRNz6Lu3a1s+9bdARuG6ulg/km9nidXDf8anb04+//yEtrtJn5u4P7NajPNTLVpe97oqhA+mPgCP6/fGbQce+zAx61YYYah1qwxFcHBVCDvKSvLLPL34YcmP2f2bNPD43MWm5joAvn5oJRKVkr9SSm1Xynl8N7fpZTyYyphwI2JDo5gBDfPYBKFfqWUelQpNScI1xgzvFXOVwP/B8QDzwOlwBXARqXU6JWfHgfi5/peLG5c0JqIjlbimipIObSL7P0fM2X368za/BRzNv6HSHvvxfWyStf3eu5ssbP3N0/gbgnOpIHIjtZez2dteZqj3vgN8fUHUJ5hrBCtNVXPr2HPL/9N3KxJRE/qs0bwiNhju3NuhhrcZKzys+c609tLdPzxAx9nscCyZebxUUeZoaePP+5/htX8+abe1EMPmcKay5bBCy9IkDNWaPzquQnUVPBAfj4opdKAdcDVmPIGzwHNwA+A9d79Y8GY6OAIRs7NKT0efwn4olJqD7ABE/R0ZkjXBuHaoXAzcAywBjjNm1eEUuo64HbgQeDE0DVvbEk5dh7WhBjcze2DHxwiyu0krvkQUfZGou2NRLWbe/O4CYXGYUukw5aEIyYJhy2J1sRJxDeWMevTp9m59EtoayQRHW0ULb6Ego3/6Tp37TPvQpQfQyyDcEbHs37VzQBE2ptZ8v49AMzd8E+Arn1D1bBmF0W3PErmGUdQ+uBqv9tndXUXA/X4qAzeky03laRl+X5fFzBVv4dq/Xr4059MYNTWBnFx/R+3ahVs2mTqT/34x2axwGuvNbWqYmMD024xImMkoTiQnw93ArMwM5E+r7V2ec91N/B94A7g8oC2fmR6dnDMBX6ttd492o0IRnAznd4FspZg/kFmAV/AGxMrpcow897PD0IbRoVSKhLznwrge53/cQG01ncopS4HTlBKLdVafxKSRo4xluhIMk47kspnxmZOeVxjOTO3PY9WCkdsKg5bIo6YFJpTp+KwmUDGFRXX79Tk2uz5zNryNDN2vMzeBedz5Ht/6nNMUn0J9VkFo/FWsLrstCZkE9dc6dd5mrcU43G7scREjbjGVISznemFr7JvVncZA4tn8LVrss8/GuXvNPBNm8z9D34wtOM9HvjSl+B3v4NvfnPw461Ws+rxV74Cr71mppLfcgt8+9tw1VWmfIMYdaEObgL5+aCUysYUonQC3+0MbLx+CFyK6Ui4cQxUBRgTHRwBH5bSWu/XWj+vtf6F1voirfUMTFXQEzHdaQ9j3lwG0Cebepw5DvPe9mqtN/Wzv7Nw2Lmj16SxL/Pc5WNvOXvtIWffh8zZ9Djl049h68orKVzyOfYXnEHltBXUZc2jNSkXV3S877Yrxd4F5xHTUk1OyUddmw/kn9z1OK1ia7DfSRd7fAY7Vnyt63mVH5XQW7ftJ2bSyIf1PRYr6VXbOerDO7q2dVb99iUuP4fsC5eP+JpdOhfgyx1C7o7bDU8+CY2N8I1vDO86FguceaZZ5fjtt6GszOTkfPWrsMX/qupi3Ank58OZmM/r9w4PXrTWDswieVbvcaE2HbgQ+AVm6Gw/3Z0bvwdeB6qUUgeUUs8HqxGjsoCe1roJeN97A0ApZcWUPB/POpMBNvrYv/Gw4wRgy00j8ciZNH2yJ9RNASDK3siMbS9g8bjYfvRXccSOPL/EExFN4ZLPsnCtmY697egraEvMYcqet4G+Cb+jKa1yB/vnnUWko4WY5ioS60ooyz8BPYThIQB7SQVRGSl0VA9t9lF0ewNHrjXDYm2x6VRlLyKz8tMhvVZFWJn5owtRgVgZeLH312+w4GbvXsjvMQTmTwC+aJEpuvnb38Jf/mJKOCxZYtbPOeMMEwiJoAp1zw2B/XwYyrm+NsRzBZXWej8moOkKXJRSiXSP5HSO6swniB0cIfsN01q7tdbbQ3X9AJnivT/oY//BZUJ9LAAAIABJREFUw44TXlnnBeAbuZ+U20laxTbmf/wgzcmT2bnsK34FNp06YpKxeteYsbhN7/G6U34MQGTH6E8dLik4A4DqvCNMHs57dzNn0+Pk7F/LstW/J+XQTvB4mL7tRabsep1Ie//Bi1Lgrm8gInFodanSD3VPS49tq+kKbPYUnAdA0dwLfL526rdWETczAOvIbOzxWTBQsOLxmGElML0t2wP0pyknx0wZP3DAFO689loz4+qSS0zQs337wCUhxIj5lVAcGIH8fBjXnzVa6yat9fta63u01l/XWi/DJFgvCtY1g1FbaiXwqda6ddCDx7/O1dh8fWK1HnbcgJRSvv6iht2Mq+TlBdjy0rEfHN2isUk1e0g7tJPYpkpsbbXY49LYs+himlMC+zdhyzHfYfFHfyN/6zNsW/4Nkuv2AWBrq6U5dWpArzUQ5XYxbdf/ALA627sSjHvK//S/aOha2SOrdAOfHnMlMa21NGTO7n0+NJGxViAWV5PvQC2prpgp+0xvVfHsM5lR+GrXvpqsBVTn+P6CmfulE8m55JihvUFfetaDOu44+NvfBj7+3nuhuRk6OiAyCGUoYmNNDs6VV0JhoRm2evttMyML4KST4IorTK+O8J9W4PGncKYCmOnrb7LWen5/2w8TyM+HgH7WBNNQYwCttRsIWgdHMIalPsTUkNiLqR/RddNaV3QepJS6D/hEa31vENowWjp/e3x99Qp5v+hYpawWpl9/ITuvvx88o/fNVWkPrQlZVE1aTFtCFp4IP5f196FzfZv69NnM2/AotnZTLLIleXSXPkqrNH87di77Eu3xGWSU9z8sVJ85B6vLQWviJLL3r2XRR+bXcsdRl9Oa3Hs4x1nTSMopS2j6tBRHZe8imFannVk7/kt8cxnFs8/i0KQjQFmozlqIQmNrr0dbfAw1WSxM+cZnyL30OP/edHk5fPaz3c8feMD0xvSnrc0k/b78srkFI7DpSSmYM8fcvv1t02uzc6cJdNzDmKovxoNAfj6Mp8+aMREDBCO4+Q9mPG0OJonos3TPkKrBvMm9mISjc4HxHNx0LmriY54onXNBW3zs78XXtwHvt4d5w2va2JewYBpZF6zk0LMfDX5wgDRk+PiQC7C0QzsAqMua29VrA+CM8vVfJTg6azll719HSrXvBf0a0/OZvuNlkupKem2P7Oj/v279W5uZ9bMv0PrU//A8/wIHp50ISpFZsRmru4O9BedRnzarayioM4hsTeh/5lDM1Axm3ngBCYFYB6mgwPTCgFlh2FdgAybp99FHobQ0NLOalIJ588xNBIzGv5wbbwSxd4g9NL4E8vMhoJ81QTYmYoCABzda6y8CKKWigYV0JxAtwaxauAr4DCbSLA309UdZ58IZvr6O5x12nDjM5K+dRsPa3TjKw2XZI8Pl/TCfveUp9iy6mDmbnzDbRzm4aU3OY9fSyyj45N9d2yqnHE32AbMC78GZJxLZ0UpN7mLqsuey9K0/ArB15beIcjTTnNI72OhMRJ5S+Ca88Rs6509l1u+mOTqdpLp97Fp0KS1JQ+uhikiKJWXlHGKnZVCzeivV/9sEFgsR8Tbi8nOImz0JW07K8N50zyTkG24Y+FitTY9JSYlM2Q4zYyChOJCfD+Pms+b/27vvMLnLcv/j73t7Szab3vsmIZUkhITQm3QUA6KoCByUJiLqOQIHxYMIosBR4QgWQM8PsVCUKkekg0ACgZBCeq+bQtpmk23374/vbLZkZ9vM7sx89/O6rrlm5luf3Ux2732e+7mfZIkB2m22VGR62nuRBwBmVkhQmfFHwHzg4va6fwepmd85Jcr+mu0tmyLSCaVlZzL83z/b4cNT7W3l+E+zb21fBqx4vd76UqPef5SlUy9q4sz429N9KHNOuZH8XRsojQyLrRt9SvCLvU6SbcHO2lzFCW//miVTPl87k8qdCW/df3B4rUbl4GFkvPMW2QsXkn3qqeydeBQVo8bDlvrH1ZWWm0V2n25QXU3Zum1BQNOEzKICep12OH3OnUZO3xYEOk89BcdH6qI1N0NqdKSAevf4VGCW5JEEedrx/P2Qcr9rEh0DdMhU8Bruvgv4WWQs7m8EUV38F9jpOG8BuwgSzyY3Usvg/Mjzsx3brNTSZfxQ+pw3ky1JWtivLTwtnW0DJjFo+at0+WTNwe2FO1bTa91ctg6K9jOqnZgdDGzqbqurLL9Xvfej5/6JXd2HHjJUVWP+zK+RceRUDuvXL+j1WLGCgv79mZKTQ8WuUkqXbuLA5k+oLq/EMtLJKMihbMN2Nj89h7LVJS1uesUne9n4pzfZ+Je36D5zDEO/fibZvQsbP7i6ujaw+e53W3yPJoeuJCUlQc9NPH8/vABUA8eaWW93P/gfKNJDck5k/9+jnJ8UOjIGSMhUcHd/BlhCUJo6Zbl7OXBf5O19ZnZwzCFSXnsi8Ka7z2nsfKk16PLTKJwWrl8wGZFp3wNWvsmHx17LuuKgcOfQxS+QXbojkU1rVEVOF+acehNzT7ieecdcDVAvsNnbtR8Lp1/GnFNvYs6pN7E/vyd7F65h38pIBeThwyEnWFoiszCfbtNG0uecafSbdRRFM0ZR8sIHrP/dK1TuaGNaQLWz482Pmfdv97Hl+SgFXZ+t83vijjtafu1kKyopKa8tvx/M7OtmttjM7mhwrU0EuSxZwC/NrG7HxE8IiuI+6u6xlSPvIB0RA3Roz00DK6lfpjlV3UYwfjgTWGZmbwBDgOnAdoIuOGlGWkY6xbdcxOIbHmbvgjXNn5DkzIIKwfsKepG3dysVOV3YPHQGvde9T/b+XYyd/TALjvoaFTldEt3UQ1Rl5lKVmcuCGZeTW7qVHX3HkV6xn6qM7EaDgJJn3mHoddFr1uyat4olN/+RqtL4LBZaVXqAlXc9xa65Kxl5w2dJy4jk2LjDp+us5qKApVNLgp4baP3vh54EibiNJYB9E5gBzAIWm9l7BIXwxhMk6F7fHl9AO2rXGCDuPTeR5dcvMbNJDaLLhkYAKRFlNsXd9wMnAj8kqEHwGWAo8HtgsrsnRxneFJCWncmo2y6mYGxS1qFqVkZhMGGh7u/U1YfVr4b+0TFX80mvUWRUHuDwN+6l4JOE5/9FVdalNzv6BpNFqjJzogYL21+eFzVw2TV3JYtveCRugU39+85n6X/9GV++HH7/+/pVf++6q3UXu+yy5o+R1JEkq4LH8/eDu28jSMi9l6AH5zygkKB36MjI/oRLlhjAPM5ZV2ZWTe1Ho4KgSE/NYlkLgAMEi2ldBVzl7r+OawNCyMwWjh07duzCeFVNTXJVZeUs+8Ej7J67ItFNabHCaaPY9f5SrMF/p8wDexn3zm9ZV3wS2/sHxTjTK8qY9Mb/kF4VLEK5Yvy57Oo5Ak/LIKO8lIrsLtFrwSSpId84l95n1686vW/VFuZ//TdtXmyzJUYteIweWxfX39i7N2xpwdqBlZXBUNq6yISNJMhAldjl5OTQL70rfzjyqjZf44uz72f1vq2LYpwK3iklSwzQHsNSnwUmN/Jo+JNjOdDDzE4H5tZNkJLOLT03i1G3Xcyqu//K9pc+THRzmtX73OkUjB3E7vcOzYuryC5g2aQLGDvn95QV9GZf175UZeYyf+YVVGVkcfjr9zJiwdMA7OwxnG7bVwKwcdhMNiRwHarW2jN/db3gxquqWP7jJ9s1sOm5eV79wOa88+BTnwqK47VERkawLMLllweF/hrMHhORNkmKGKA96tz8jSALGgAz68mhX+RIguI+t9U5bhNBtcJPI51eWmYGI264gKKjD2P1L56mcmfyreaR1auQodefR7dpxaz91fNRj0uvKqcqLZPy7NrK6DW5Nh+c8E2OeOknAAcDG4D+q/7Ftv6TOJDXyhovCVK6dEO99xsefYPSZZuiHB2b7LJPmPLOfQffz51xLdUDB3H4Q18no0vL1r0CYPly2Lo1CGwAVq0KenIkFDyW5RekzZIlBmj3hOLIOOCLkQcAkazxSdT/Ytt1hVBJTd2PHU+XicNYc+8z7HhtfqKbc1Cv06cy+MozSc8PZgftW7Yx6rH787qTXl2BefUh+zwtg7knfIspr95DWV53cvfVzqKa+Nb9zDn5BrL37+JAbrek7lU4sHEHVaX7Sc/PoXzHHtY/8lp8b+BO1oHdmFcz5Z372J/TjRVjziGvtCT43mwP7jn0qhauzVRZCcXFte9vuQWGDYtvmyWhkiShuNNLVAyQkNlSkQW1/hV5ABBJPNL4phwiszCfkTd/nh3Hj094L07d3poa7s6+5dGDm/KcrgD0W/02a8ecdsj+qswc5p5wPWPee4RNQ2bQb807B/f1X/UW/Va9xaZhM9k44rg4fiVx5k7p8o10nTSckufexyvit05Szr7tjPz4KXLKdpBZUQbAh9OvxtPS2V009OBxJS98wKDLTiY9uwXrQ515Zv3311+f1MGjtJ6Cm+TVETFAzLOlzKyrmeXEeI0cIM/d5zV7sHRa3Y8dz4QHv8mAS04hq1eUIm7tJLt/dwZ97XQm/OYb9QIbgAMbtlO170ATZwdDzdXpWVGPqMrMZenkz9Nj03yWTzyPkgGTARiw8g3SvJoBK98kf9eGqOcng33LNuJV1Wx5LkoNmrZwZ/K7v6TL7g1kVpSxceB03jn+pkYTrqv2lLH95Rb07lVXw4uRPyJnzQreF3bs50naWZLMlpKWc/fKeMYA8ei5+QT4HfBvMVzjfuDLcWqPhFhm1zwGfPFE+n/+eHa+s5gtT7/L7g9WtM9MlzSj25Gj6X3udAqPKMai/GVfuqyZoCPStH6r32Z98YlRD6vI6cKKiedR/OHjfDztYtaNOpmemz5iyOJ/BPfp2sa1j7yabluXcSCviKItS9hTNJh9XfoE07vjqHTZBvYsWkd5ya64XM+qq5jx2u0AbO0znj1dB7Jl4LQmz9n26gJ6n9FM9eeSOnmL99yjHhuRGJhZV6A8Mu29rdfIAbLcfXe82hWPYMKIz3Lr+gkjLWbpaRQdPZaio8eyf/02Sp6dza4PVrB/TQledWhuS4uvm5lO7tA+FB5RTO+zppHdp/mE3vIm1lEC6tdfacbeosFsHHEMI+c9zqLpl1Iy6AgGL36Ryqw8unyyjp4bP2L9yBNaVfyv6/ZVFM97ot62rf0nsXrcWS2+RkuUb9lJ6ZL49S7VBDbbe45m+djzWnRO6dLow4MHlZXVvs5swRCWpCQNS3WYpOzgiNeFjjGzh2I5P07tkE4oZ2BPBl8Z5FBUl1ewb8VmSpdtoHTZRvYt3cD+jdupLq+svzBnmpGWnUnOwJ7kjxpAfnF/8osHkDusD2mZrftvUV1e0ewxG4Yfy4CVb5Bevo+qrLwmj90yaBr5uzYxfOEzLJ84i+WTPkvxvCcY8/4fAOi5aT5zTrmxxT0O6ZWHDpmVDIz/2lbV5RXsXRqfGVLdttfWNls64XMtPq9y1z4ObNkZLMwZzc5IMPrLX0KfPm1toiQxx2IKblx/a7dGUnZwxCu4GRl5xEKjnBKztKxMCg4bRMFhgw7ZV11RiVdWYZkZtSX746C6vLLpA7waT0ujKi2TjMr9zQY3mLF67BkcNvv39F39NpuHzeT9E7/N6Pf/SMHuoGei1/q5bB009eApuXu2BAtfNugl6laylP6rggVJl0z5AgU719NrwwftUiSwurySsjWxl6qY8N6DFOwJvs53j2vF4pcR+1aXRA9uKirgtsjs0yuv1JBUiKnnpkMlXQdHPIKb6EkEIkkkLTMDWtkr0xLND4MZA5cHU6MrM5sJbCKq07NYPmkWY2f/nn1d+7G7xzA+nn4JA5a9Sv/V/2Lo4v+jYNdGem6az6qxZ9Fn7Rzy9gaBxXsnf/dg8FKe05Ws/btZOe5sqtMyGLDyDaotjS6frKGsS+82f82N8cpqqspjLNrnfjCwiZY43Jzq/U30pL3zDjz5ZPBagY1IvCRdB0fMP+ndvV5BCzM7yd1fjvW6Iqmi2WEsMz46+ioOm/07ikqWsG3ApBZd90Bed1aOO5vh859i0fRLKc8tZEPxCRRuX0n+ns303BTMDBq26Ll65xVuW87O3qMB2Ne1L5uHTGfAitfZPGQGu7sPIa2ynIJdG4l3SfC0rAyq9rf+55NVV9KjZBEjljxLWnUwhXz+lEvj37vkDnffHbzesye+15ako56bDtOwg2M6MJ9gLa2EaY/ZSf80syeBb7t76i/vLNIMy2r+v9G4d35LelUF3bYubXFwA7CrVzElg6Ywct4TfDztYjw9g0UzLiOjfB9DFz3Pzl7FDF7yD9KrKtjWbzyrxp9b7/yBy16h3+q3ARiy5B+sPux0tvebQEZ5/GsFWVYG6a3sDck8sIcj/vWzets+nvgF9hYObHM70nIaSRLetw/y84PXl19e+1rCyWOsUKwkiRZrpIPjFaAMmOXuLySmVe0T3DxPsLbEmWZ2F3CHu5c1c45IykrPzW76AHfSq4KhklXjzmn19TcOP5aCnRsYsPJ11hefBEBlVh7LDz8fIGqwZNVV9F73PvNnfo0un6xj6Md/x7ya6vRMynObSLhto/TcLLL6d2vVsgvdty05+Hrh4V+uV5SvrfKGNDLc9rlIUvIrr8AJJ8R8D0l+6rlJqFzgr2Z2XrQAx8xOAtLd/cXG9scq5iJ+Dbn72QQllNcDNwOLzezCeN9HJFnkNvbLtI7iD/588HV1ehv+njBj1biz6LVhHgU717folJzS7fRb+SZlBb3Yn9eDPUWDOJBTSEZ5+/UU5w7tQ8Go/q06Z1dRsORBWW53dncbHHMbMgrzyO7bSOD23HPw7W8rsBHpGK8BWwkCnDOiHPNloN16duIe3AC4+/MEZZRvBIqAR83sNTNreX+8SIrIHzUg+k6vPrgg5pxTbsTT2tZZWpHTlbWjTmHYgmdIa2Rqd13dNy1kwr9+xYBVb7Gu+ES67ljFYXP+H1uGTGPj8GPbdP+WyC8eQP7oJr4XDUWqDwPklu0gvSr2FcTzGwuuHnooqGdz880xX19Sh3vbHxKzVcAJwDbgySYCnHbTLsENgLtXuPudwGjgj8CxwHtmdr+Z9Wiv+4p0tIyueWRFm3pstf/FrLqZKePN2N5vPHuKBjPhrQfouf6DYNmARoxY8NTB13l7tjBi/lOsGH8uWwYf2a4zhPKK+9Nl7CCyenVt2Ql12vLezG9SlRF7xeSeJ4yvv+Gtt4Iem3ffhW7xH4qT5ORAtVubH4pvYufuKwkCnK0kIMBpt+CmhrtvcvcvEQQ384ErgKVm9nUza/f7i3SE/OLGeyxy95SwP687yyd+Fk+PsRquGavHncXKCZ+h9/oPGPfObyncdujSE5uHTD/4esiSF9k85Eh2d2/fFa/TsjPJHdwbS0+jz9lHtOwkd/Z26UdZXg8qsltecTma9C659DhpQu2GjRvhmGPg/vth8uSYry+ppO3rSgW5OsrXiQd3X0GCApwOCy7c/S3gdOBpgqGqnwPzIklFIiktL0pw02ftbDLKS9lX0Ctu99rTfQiLpl/KpmFHM+TjvzNq7h/J3bPl4P6NQ49id1Ft/srA5a8x7aUfx+3+jckd0Q9LD36c9D5rKpbZ/DTu/mvfJq2qgvlTL4tLG3qfPrn+iuDbtgXPWhSzU4otuJF4qdODU0IQ4JzZEfdtt+DGzLLMbIaZXWdmfzCz5cAmoGa6iBHk5bxoZo+YmfqMJWXlFzeeSLtu1ClkVB5g/Nu/qReAxMyMHf3GMX/mlezuMYwx7/2BYQueocuO1Yyd/Xv25/XgvZO/y5yTbzh4St/IlPD2UPfrz+rehYFfOj7qsbmlWxn//kMMWfkSB3KL4jIcldmjkXu+/TakpweF+zZvjvkeItI2DQKcJ8wsvgvbNSLuwY2Z3Wdmc4A9wFvAPcAXgCHAPOABgizpEcBE4B/ARcD7Zta+feci7aTLhKGkd8k9ZHtVZg5zTrmRjcOPYfw7D1K4dVlc7+vpGWweehTzj76Sqoxsij98jC2Dj2DNYafjaelkVJaxZVAwTDRo2StYVfPrYLVFt6MOq/d+wEXHkl/c+Crmh89+gC67gwU2d/QcHZf7D7/+HDIafv+/+lX4ylfg1lvhx+3bcyVJxmPsuVHSTSyeBNY23OjuNUnGW4DHCYr9tZv26Lm5GpgK7CWY5nULcArQzd2nuPs17v4Hd1/l7gvc/Qzgq8BQ4O52aI9Iu0vLzqTnp6IsRmnGpmFHAzDqw8fovmlh3O9fmZXH2jGfYu6J36Fk8LSDybrdSpbRe917B4874uWfMmjJixR8sjZu00JyBvak6+QR9bZZejojb/gsablZ9bYf9coPD75eMPkrlPSPPRem95lT6T5zzKE70tKgpCRYIPNnPzt0v4SahqUSw93Pd/cfRNlXN8Bp5D9t/LRHcPNVYJy793D3s9z9Nnd/2d2jlkR19weBfxJ80SIpqffZ06PPRjJje5+gd6PubKa0qor4zj1tcP9tAyayJ5J/UxFZ16rv2jkc9t4jjJz3BJn7Y1+GoNdZR2KNfN15w/ow5ocXHazgnF5Rv5anRZZaiEXR0WMYfv3Zh+549FG46SaYPRumTj10v4SaE1QobvMj0V9AiLn7auB44A3acYmG9iji96C7f9yGU9cByvyTlJUzoAddp4yIur88p/bjnV6xn6Iti5n68k+Z9s87SG+v4nqWdrAqcmZF/XukVZVz+Bv3MvLDx5n24u10K1laL9Cy6qogT6iJ4CstO5Oep0XpsQIKpwznsDu/THp+NlWZuWztUztVe3fRkLZ+VQD0OGkCo265EEtvkLy8ahV88YuweDF84xswSeW1RJKJu69x9+OBFtaNaL32WH6hre4C5ia6ESKx6H3OdHa/v7zRfT021w5HTXn1HgAqMnPJrChj9Nw/sWhGfGYNNVSeW8jyCZ9h5Py/AbDoyEso7dqPtKpypr5yN0VblwJQPO/xg+csnXwhB3K6Mv6dBwHY2n8iaw4745DFLLufMJGMgkNzjeoqHD+Ywy+fQslvn6HXlgUAVGbk1KsB1Brp+dkMuep0+pzZSI/Me+/BtGnB6+9/Hw4/vE33kNSn4aXk595+JROTJrhx98XA4kS3QyQW3aaPIat3N8pLdh6yb/7RVzJg+Wtklu+lOi2DA7lFlAycTLdtKxjy8QukVZZTnZHVyFVj90nfsWwo3U73LR9TVtATzKjOyGbOqTeRuX83VZm5DFv4LN23BJ2uoz74M9VpGezoPZruJUvotfEjem38iEVHfgVz57A5/0vJwCl0G7EXzvgNvFCnivrrr8OxkUrIy5bBqFFkATVLYe4YOIklxfUX+GyRNKP7zDEM/fqZZPdupJO3shKOj8yYWroUiotbfw8JiVhzZxQYpTprx8BJ4sTMFo4dO3bswoXxT0SV+Nv+yjxW3vGXlp/gzsQ3f8nqsWeyu0diJwzm7tlC4baVDFr+SstPGj8+CCr+539qtx13HNx1Fxx5ZP1jZ8/Gp0xhxxsfs/npOez+aDVUN/0zKLOogF6nHU6fc6eR07co+oFHHw0ffAC7dgXLLUinlJOTQ28v4t4RN7b5GteuuIN15ZsXufu4ODZNOlDS9NyIhEWPEyex4/UF7HxrUYuOz9uzhez9u+i54UMKdq5n07CZhwz/dJSyLn0o69KHzcOOAiBn7zYmvP1rANaMPpUhS2oX8PXDJ2MP3A/Tp8OGDUE9mZ07YcWKoPfm3EZ6Z0aMwNLT6XHCeHqcMJ6qsnJKV2yidOkm9m/cQXV5JZaeRkZBDvkj+5E/qj85/ZoIaGq88Qb8619BIrECG5FOTz03KUA9N6mn4pO9LPjqz6nc3bJE4ezSHXQvWczA5a+ys+dIlh1+QbuuA9VaVl1Zu+inOyNv+SJFxzTyR+3y5cEspcceq912441wxx3B64oKyIjz31QHDgS5NTfcENS1kU6tpufm58NvavM1rlt5u3puUpzWdhJpB5lFBQy+5pzmD4w4kN+dTcNmMv+or5JTuo2hi55LquWJ665m3v2kSY0HNgAjR8Jf/hIsVAlwwQVw++21yy3HO7DZuRPOOQeKiuDii+N7bUlZTmx1bpLnf560lYIbkXbS48SJ0YOAKPYX9GLR9MvI372JvqvfSaoAByCjqIAhLQnajjwyaPtfWpF71BLu8L3vwaxZsHAhzJgBZWVw221J1dMliacifp2bcm5E2tGQa8+ldNlGyrd80uJzqjJzWDHhMxR/+Dj9Vr/N3sIBrBp3FpVZ+Qn9BW7paQz/ziwyuuYlrA0cOBAEMgBPPRUsrXDjjQps5BBenegWSCKp50akHWUWFTD6x5eS2b2gVeftL+jF/JlXUDJoKt22r2DSm79k2j/vYOjCZ7HqqvhXNm6OGcO+M4vCaaM67p41PvgAtm6FvXshN1JTp6QEXnopyO9RYCMiDajnRqSd5Qzowag7LmXxd35L1Z6y5k+okZbGhhHHsXH4MbgZ0/7544P1ZgD2FfRmffGJ7Ok2kOqM7HZqfWDINWfT4+QEFMTbtg2mNKiAvH07dO9eW9NGpCGPsYhfco0GSxsouBHpAHnD+jLmrstZeuPDVOzY2/ITzXALpoXPO+YairYsJrNiH1XpmWSX7WTAitfJ2buNJUdcRGnhANIr9lOdnlEvATgmacbQb3yaXmdOi8/1WqtXr/rvp00LAhuRJhnVKuLXqSm4EekgecP6Muaer7Hkuw+3KgenRnluIVuGTj9ke581sxm49GW295/AsEXPA1CVnsWmoTPYNPyYNrfXMtIZ/t0L6H78hDZfo1Xc4c9/hq9/PRhqmjIlmF31z39C//5BoFOo5eekeTWzpWI5X1KbghuRDpTTvwdj77uKNfc+zSevL4jLNUsGTqZg13r6rH2PtaNOobRrX6oyshn9/qNklpeyecj0YNHOVuSm5AzuxbDvzKJgzKC4tLFZ7kHwsn178H7u3GCdqLy8oIaNghoRaQUFNyIdLLMwn5E3f4GDn85sAAAZ7klEQVQdr89nzb3PULmrNKbreXomKyZ+9pDtC2dczoAVrzHunQdJryrnw2OvpTK7mcTmtDT6nn80Ay4+hbSsDvzxsHdvENjccw9ccw1kZcHkyfDVr3ZcGyRUNKW7c9NsKZEE6X7cBMb/5jqKjhvfLtevyOnC6nFn89Ex12DuTHzrAfqtfBOrrmr0+JzBvTjsv7/GoMtP79jAproaunYNXl9/fRDYiMRIdW46N/XciCRQZrfaXpz1D/6DA5t2xP0eVRnZfHjstWRUlDF4yYt037KYJVO/ENTNAdLysulz7gz6f+mkjg1qtmyBvn1r3z/xRMfdW0IvtoRiSXUKbkSSQPfjJlB07Hh2zVlKyTPvsmvO0mZXy24xMypyulCR04UlUy9i6KLnGTPn/5FVUUrpFd8i/5oLSR8zOj73as7u3UGNmuLi2m0/+xlcdZV6bEQkbjQsJZIkzIxuR45m1A8vZuLvv03fC48jozA/vvfIymDvZd8gd98O0isO0PW+O0g/bAzMmxfX+xzi5ZeDhObCwtrA5h//CBKJr7tOgY3El9cuZ9aWh6ZLpT713Igkoew+RQz6t9MYcPHJlH68jtJlGyldtoF9Szewf8P2FlcnzuxeQF7xAPKL+5NXPICCsYPJLMyHfz8frr4ajjkmCGxOPhnuuitYq+mhh+AnP4n9i9i6FR59NLj+ww/Xbp8wAe67D447LvZ7iDTCAa/WVPDOTMGNSBJLy8ygy8RhdJk47OC2qn0H2Ld8I2VrSqjaX46XV1JdXollpJGWlUlaVgZZfYvIHzWArB5dG79w167wyCO177/0pSDQqfH3v8MVV8CnPw0FBcGq2xAMKX3xi0F+zM6dwTDTypWQmRkEXJWVQXB00knwq1/BokXBeXPnBrOfRDpErInBytdJdQpuRFJMel72IQFPzI4+uvb1li1Bb8ull8LNN8OuXXDBBfDd7waPl14K9j35ZHD8CSfAhx8GwU6Np54Knh94AM49F/r1i19bRVpACcWdm4IbEQlUVUFaJA3v1FNh3TrYsQN69oTHHgseNZ58Es44IwhyLrggWAPqxRfhwgvhzjuD61x22aHLJ4iIdAAFNyISSGswv8AMevSAVauC1wUFQYDz7LNBvs5pp0F6sO4VPXvCF74QvL7xxo5tt0gjWpiWJiGl4EZEmjZ0aO3rK68MHiLJTKuCd3oKbkREJFSc2HJuFNukPtW5ERERkVBRz42IiISOcm46NwU3IiISOloAs3NTcCMiIqGjOjedm4IbEREJFXfw6tjOl9SmhGIREREJFfXciIhIyGhtqc5OwY2IiISOcm46NwU3IiISOsqb6dyUcyMiIiKhop4bEREJFS2/IApuREQkdDQs1bkpuBERkXDRquCdnnJuREREJFQU3IiISOhUe9sfycTMZprZ82a2w8z2mtlsM/tKG65ziZl5E48/tUf7E0XDUiIiEjphyLkxs/OAxwg6Il4HtgEnA78zs0nu/q02XHYe8GEj299tc0OTkIIbEREJlTDMljKzIuBhIB2Y5e5PRrb3Ad4ErjezZ9z9lVZe+m/u/oO4NjYJaVhKRERCx73tjyRxOVAIPFUT2AC4+xbgPyJv29Jz0ykouImBmZ3QzBjmO4luo4iIpKSzI8+PN7LvOWA/cIqZ5XRck1KHhqXiYwVBN2Fj20VEpIMlUQ9MW02MPM9tuMPdy81sAXAEMJogj6alpprZT4GuwGbgZXd/LdbGJhsFN/HxprtfkuhGiIgI4DEunJngwMjMugLdIm/XRzlsPUFwM5jWBTdnU9srBPB9M3sNuDAy5BUKCm5ERCRUnNjik8i5I8xsYaP73cfFcPmWKKjzel+UY0obObYpm4AfAE8BK4Fc4EjgJ8DxwHNmNt3dq1rd2iSk4EZERCTOzOxxYHwrT7vY3WcDLel2alXXlLv/H/B/dTbtBp4xs1eA94GpwIXAo625brJScBMfxWZ2B9CDoA7Bm8AL7l6d2GaJiHROcSjGtyLGHpqhBPkwrZEXed7TYNvuJo7d28p71OPue83sF8B9wGkouJE6ZkYedc03s1nuviwRDRIR6bwMb13HxiHnx8rdj4jh3N1mtotgKvhAYFEjhw2MPK9t633qqPk91S8O10oKCm5iswv4KfAEtR+Ow4EfATOAFyNVJHe15GLRxneBEbE2VESkM0m2ZRTaYB5wHDCFBsGNmWUSDHkdAJbE4V5FkeeYeoGSSacObmIcE8XdPwA+aLD/ZTM7BngFOBa4Brg91raKiEin8hxBcHM+8EiDfWcDOcDz7r4/DveaFXl+Pw7XSgqdOrghtjHRqNy9yszuJAhuTqOFwU208d1Ij87Y1jRSRKSzitNsqUT7LfCfwKfN7LN1ll/oTTDDCeCehieZ2eLIy5PdfUOd7d8AHnL3vXW2ZQI3ARcAZcDv2uHrSIhOHdzEMibaAqEbwxQRSRWpPizl7jvM7DLgL8DjkVo024BTCGrg/MLdX2rk1Jo/2DMbbP858GMzWwSsIej5ORzoT1Dt+Et1g6FU16mDm3YWujFMEZFUkeKxDQDu/oSZHQfcTJDHmQV8DPyPuz/cysvdChwFjCEYCTCCQoC/Av7b3eORu5M0FNy0n9CNYYqIpIpU77mp4e5vAWe04vhGp3q5+y1xa1QK0MKZMTCzK8ysR4NtZmZXANcT/PHwQEIaJyIi0kmp5yY2NwL31hnDBJgADAOqgevcXT03IiIdKCQJxRIDBTexuRv4FDAOOJkggWsTwbS9X7j7nAS2TUSk01J5+M5NwU0M3P1e4N5Et0NEROpT70vnppwbERERCRX13IiISOhoWKpzU3AjIiKh4oDHMC6lIa3Up+BGRERCRz03nZtybkRERCRU1HMjIiKho6Glzk3BjYiIhI6GpTo3BTciIhIqTmzBjXp9Up+CGxERCR0FKJ2bEopFREQkVNRzIyIioaOcm85NwY2IiISM41oXvFNTcCMiIqGihGJRzo2IiIiEinpuREQkdNT70rkpuBERkdBRQnHnpuBGRERCx03LgndmCm5ERCRUlFAsSigWERGRUFHPjYiIhI5ybjo3BTciIhI6sRXxk1Sn4EZEREJFOTeinBsREREJFfXciIhI6GhYqnNTcCMiIqGjhOLOTcGNiIiEjlssJ8etGZIgyrkRERGRUFHPjYiIhEowW6rt3S/quEl9Cm5ERCR0lHPTuSm4ERGR0NFsqc5NwY2IiISOem46NyUUi4iISKio50ZERELF8RgTijWkleoU3IiISOjEVOdGUp6CGxERCZ1Yem4k9SnnRkREREJFPTciIhI6ypvp3BTciIhIqAQVimM7X1KbghsREQkd5dx0bsq5ERERkVBRz42IiISO+m06NwU3IiISKg5Um1YF78wU3IiISOgo56ZzU3AjIiKho9Cmc1NCsYiIiISKem5ERCRkYls4U/0+qU/BjYiIhEpQxE8JxZ2ZghsREQmdWCoUS+pTzo2IiIiEinpuREQkdLRwZuem4EZEREJFOTei4EZEREInlgrFkvqUcyMiIiKhop4bEREJHc2W6twU3IiISKgo50YU3IiISMh4jLOlFN6kOgU3IiISOloVvHNTQrGIiIiEioIbEREJnerI4plteSQDM8s3sy+b2b1mNtvMDpiZm9kNMV73bDN7zcx2mdnuyOuz49XuZKFhKRERCZWQJBQXA/8bzwua2TeAnwOVwD+BA8CngGfM7Dp3/0U875dI6rkREZHQSfWeG2AP8CBwBTAF+FEsFzOzUcDdBAHNce5+hrt/Bjgc2A7cbWbFsTU5eSi4ERERSTLuvsLdL3f3X7v7BwS9LbG4jmC05gF3f7vOfZYSBE4ZwDdivEfSUHAjIiLhYlAdwwNL9BfQLmryah5vZN9jkedzOqgt7U45NyIiEiohybmJGzPrBgyOvP2g4X53X29m24AhZlbo7rs6tIHtQD03IiISMm3PtwmCorCFNwcDm0/cvTTKMesbHJvS1HMjIiKh4kBV7D03I8xsYaP73ce1+eKJURB53tfEMTVBT0ETx6QMBTcRZpYPfBY4EpgOTAKygBvd/cfNnDsQuBU4HegOrAX+BNzu7vvbs90iIpJ8zOxxYHwrT7vY3We3R3Miz01FfKHKNFJwU6tNNQXMbATwNtALWAC8ARwBfA84xcxOdPcD8WyoiIg0LQ5TulfE2EMzFBjdynPyYrhfU/ZEnvNbcO+97dSGDqXgplZNTYHZwBxgFvCfLTjvIYLA5hfufh2AmWUAfwHOA24CbmmPBouISOMSXa/G3Y9IaAPqWxt5LjKz/Ch5NwMbHJvSlFAc0ZaaAmY2DTgOKAH+o861KoGrgArgWjPLbKdmi4hIAw5UWXWbH2FLJ3b3ndQGLZMb7o+kVvQE1oZhphQouIlVTd2AZxoOPbn7FoIhqiLg6I5umIiISB3PRZ7Pb2TfBZHnZzuoLe1OwU1sJkWe50bZP7fBcSIi0u6cqhgeqTwV3MwWRx4DGuz6OVAFXGlmM+ocX0yQglEFhGZtKeXcxKamHsD6KPtDVTdARCQVxGkqeMKZ2V+BfpG3NTkxV5vZZyKvN7n7eQ1Oq0lirpcO4e5LzOzfgXuAN8zsRaCcYOHMXOBb7r4k3l9Doii4iU1ztQNaVTcgWk0FYMyKFSsYNy7VSiuIiHSs8vJy3EvYXX5Pm69R7SVxbFFMJgNDGmwbFHkArGnNxdz9v81sOfDvwLGRze8DP3X3p2NpaLIJTXCToJoCzdUOiFfdgLQDBw5UL1q0aHGcrteZjYg8r0hoK8JB38v40fcyfsYCVHvJohivk/B/C3cf2oZzmvy94+7PAM+0tU2pIjTBDYmpKdBc7YBW1Q2IVlOhpkcnBatiJh19L+NH38v40fcyfvS9FAhRcJOgmgJrCboNB0bZH6q6ASIiIqlAs6ViMy/yPCXK/prtH3VAW0RERAQFN7GqqRtwjpll191hZn0IErZ2AW92dMNEREQ6KwU3MYgkI78F9AburNkeWX7hlwRT8e5194rEtFBERKTzCU3OTTy0sabApQQLZ15nZicBi4BpwHDgXeBH7dtqERERqcvck6VcUeKZ2WoOrSlQ15rGpuaZ2SDgVuB0oDuwDvgjcLu7l8W/pSIiIhKNghsREREJFeXciIiISKgouBEREZFQUXAjIiIioaLgRkREREJFwY2IiIiEioIbERERCRUFN0nKzPLN7Mtmdq+ZzTazA2bmZnZDC84daGYPmdlGM9tvZkvN7FYzy+mItqcSMzsh8n2N9ngn0W1MNmaWY2b/Fflc7Y98zh4ys2gLyEojzOzVZj57pye6jcnEzKaa2Q1m9qSZbYh8j/a34LyLIz9D95rZDjN73sxmdkSbJXFUoTh5FQP/29qTzGwEQcXkXsAC4A3gCOB7wClmdqK7H4hnQ0NiBY2vAbaioxuSzCIB8kvATGAT8BQwlKBS99lmdpS763vWOk8AexvZvqGjG5Lkvgd8ujUnmNk9wPVAGfAPIAc4FfiUmV3g7n+NeyslKSi4SV57gAeB2cAcYBbwny047yGCwOYX7n4dHFzr6i/AecBNwC3t0eAU96a7X5LoRqSAmwgCm7eBT7n7XgAz+xZwN8Hn7/jENS8lfcfdVye6ESngbWAewc/DOcDmpg6OLIdzPbAdOMrdl0W2HwW8CjxsZq+6+yft2WhJDA1LJSl3X+Hul7v7r939A6CyuXPMbBpwHFAC/Eeda1UCVwEVwLVmltlOzZYQi3xuro28vaYmsAFw93uAj4DjzGxqIton4ebud7r7Le7+rLtvacEp344831YT2ESu8zbwAFAIXNYOTZUkoOAmXM6OPD/TcOgp8sPgDaAIOLqjGyahcAzQDVgRCbgbejzyfE7HNUnkUJHh05Mjbx9v5BB9VkNOw1LhMinyPDfK/rnASZHjXu2IBqWQYjO7A+gBbCPIv3nB3asT26yk0pLPV93jpGX+zcx6ANXAUuBv7r42wW1KdWOAbGCru69vZH/NZ3VixzVJOpKCm3AZHHlu7D9z3e2Do+zvzGZGHnXNN7NZdbu0Ozl9vtrHzQ3e32VmP3T3HyakNeHQ5GfV3UvNbCdQZGZd3H1PxzVNOoKGpcKlIPK8L8r+0gbHCewCfgrMIOi16UHQnf0OMAF40cwKE9e8pKLPV3y9DnwZGAHkAaMJJg1UArea2XUJbFuqa+6zCvq8hpp6btqJmT0OjG/laRe7++xYbht59mb2h0as3+dI7kjD/JGXzewY4BXgWOAa4PZY2xoCne7z1Z7c/fsNNi0Fbjez94D/A/7LzH7t7mUd37qU19xnte4xEkIKbtrPUIK/xFojL8Z71nSt5jdz/cZqaqSqobTD99ndq8zsToLg5jQU3EDn/Hx1OHf/RyTAOYKgR/GVBDcpFTX3WQV9XkNNwU07cfcjEnDbtcBkIFql2IF1jguFdv4+1+Ta9GvHe6SSms9Np/l8JdAyguBGn722afKzamb5BDP/dirfJpyUcxMu8yLPU6Lsr9n+UQe0JQyKIs/6yy6gz1fH0WcvNkuAA0CvKMuC6LMacgpuwuW5yPM5ZpZdd4eZ9SEYYtlF48sMyKFmRZ7fT2grksdbBJ+fEWY2uZH950een+24JoWPmfUi+L8K0afdSxMieUovR96e38gh+qyGnIKbEIkkyb4F9AburNkeWX7hl0AmcK+7VySmhcnHzK6I1Bipu83M7AqC0u1OUM2003P3cuC+yNv7Il37wMHlFyYSLGMxJxHtSyVmNsPMTjQza7B9KPBXglyRp6PUaJGWuSfyfLOZFddsjCy/cAWwm2CJGwkhc28qmVwSycz+Su2Y+0BgALAO2BjZtsndz2twTjHBGiw9gPnAImAaMBx4FzjB3ZtdSbezMLPVQH+C79OayOYJwDCComrfdPd7E9O65BOp/PoqMJ1g4cw3gCGR99uBGe6+PGENTBFmdgnwMMH3cCnBOkkDgakEizsuBE5y95JEtTHZmNlZBItn1phO8MdH3RmmP3T35+qc8zPgOoIp4S8CWQQLZ6YBn3P3J9q73ZIYCm6SWOQX75AmDlnj7kMbOW8QcCtwOtCdICD6I3C7ppXWZ2bXAp8CxhH0eGVS+0v7F+qFOJSZ5QI3AhcBg4BPgBeA77n7ukS2LVWY2WEE63RNJ/geFhHUXfkYeAy4X/9X66sTEDblUnf/XSPnfR04jGB9vXcI1pvS8HyIKbgRERGRUFHOjYiIiISKghsREREJFQU3IiIiEioKbkRERCRUFNyIiIhIqCi4ERERkVBRcCMiIiKhouBGREREQkXBjYiIiISKghsREREJFQU3IiIiEioKbkRERCRUFNyIiIhIqCi4EemkzOwEM/MGj26JbldjzGxng3Zekug2iUjyykh0A0Qk4VYAb0ZelyeyIU14FMgDDgcmJbgtIpLkFNyIyJvufkmiG9EUd78awMx+gIIbEWmGhqVEREQkVBTciISImT0ayUn5z0b2HWNm+82sxMxGtOKa50WueW+U/X+I7D+6zrahkW0vm1k3M7vbzFaZWZmZfWhmZ9Q59iIz+5eZ7TGzNWb2QzNTr7KItJmCG5Fw+T5QCXzbzLrWbDSz0cBTQBVwlruvaMU1J0eeP4iy/3DAgY8abAPYDXwIfAZ4F1hKMKz0VzMbaWaPAL8GtgGvAv2Bm4GrW9E+EZF6FNyIhIi7LwceBoqA6wDMrA/wd6AQ+Jy7z2nlZaMGN2aWA4wGVrj7njq7aoKbTwO/BYrd/fOR7c8D2cALwAhghLuf6+7nABdFzpvVyjaKiByk4EYkfG4F9gPfMrP+wLPAMOBKd3+uDdebDFQACxvZNwFIJ+idqasm6fdRd7/N3asB3N0JghqAbsAsd99S57yaff3a0E4REUDBjUjouPt64H6C4GEecATwX+7+29Zey8x6AQOAhe7e2DTxmh6ahsFNzfbbGjmnMPL8oLtvbLCvps5OSWvbKiJSQ8GNSDjdQ5AH0xP4nbv/oI3XaUm+DdQJbsysEBgKLHf3jxs5p6ZX5+lG9k2IPC9oXTNFRGopuBEJGTMzguDGIpsqY7hcq4MbaoOX95o4pzrKNaP1BImItJiCG5HwuQe4AHiGYHjnEjMrbuO1aoKbQ3pSIks1TAO2ufuGOrtqApTGEpC7ECQRL3H3fY3cT8GNiMRMwY1IiJjZt4BvEky7vhC4k6AS+a1tvGRNcHOgkX2XAJlEz7dprGdmEkGPUrSeoEkEvTofRdkvItIsBTciIWFmnwPuApYD57h7GUFi8WbgQjOb2MrrFQAjI2+/FBnuqtl3DnB75G3Dmjk1w1KN9b5E7Zkxs/zI/ZZF6dUREWkRBTciIWBmxwP/S1AM73R33woQCXB+TNBb8qNWXnYSwc+I5cBVwMdm9pyZfUyQDFwzVHW+mf020o4MYBywoaYNDTTVqzMxcj8NSYlITBTciKQ4MxsL/I2g+vDZjVQf/hWwATjbzI5qxaVrhqR+RxDc5AAnEwxRXQhcDKyP3Hdu5NgxBAX6ogUoTeXUNNXjIyLSYlq/RSTFufsigorE0fbvBwa24dIHZ0q5+/PAA40cM6jBvRZQO0ursbYc0cS+B6LcQ0SkVRTciMgxZva7yOur6+S71AQ3cw89pWOZ2S+BPGp7fkREolJwIyIjIg8IZlrtM7NMgtyZTe6+OWEtq3URtZWNRUSapOBGpJNy91eJPoQ0DsgiCXptANy9W/NHiYgELFjHTkRERCQcNFtKREREQkXBjYiIiISKghsREREJFQU3IiIiEioKbkRERCRUFNyIiIhIqCi4ERERkVBRcCMiIiKhouBGREREQkXBjYiIiISKghsREREJFQU3IiIiEioKbkRERCRUFNyIiIhIqCi4ERERkVBRcCMiIiKh8v8BkqnVhIFj8dUAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(3,3),dpi=150)\n", "ax = mgc.draw_trj(trj,sim,cmap=\"plasma\")\n", "for i, trj_i in trj.groupby(\"id\"):\n", " if all(trj_i.type==1):\n", " ax.plot(trj_i.x,trj_i.y, color=\"red\",linewidth = 0.5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Bidisperse traps" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Just as `particles` object, the `bistable_trap` object creates a type of trap. Here as well, we must create different types of traps to give them different parameters. \n", "\n", "However, we must also specify the particles that will be affected by each trap. This is done by the `particles` argument. If we want a specific `bistable_trap` object to act only on some of the copies of the object `particles`, we can give it a subset specification. The subset can be a slice, or an array of indices which points to the particle in position $i$ inside the `particles` object. " ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "region = np.array([20,20,4.1])" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "particles = mgc.particles(\n", " np.array([[-5,0,0],[0,5,0],[5,0,0]])*ureg.um,\n", " radius = 2*ureg.um,\n", " susceptibility = 1,\n", " diffusion=0.07*ureg.um**2/ureg.s,\n", " density = 0*ureg.kg/ureg.m**3,\n", " temperature=300*ureg.K)\n", "\n", "traps = mgc.bistable_trap(\n", " np.array([[-5,0,0],[0,5,0]])*ureg.um,\n", " np.array([[1,0,0],[0,1,0]]),\n", " particles, subsets = slice(0,2),\n", " distance = 2*ureg.um,\n", " height = 0 * ureg.pN*ureg.nm,\n", " stiffness = 3e-4 * ureg.pN/ureg.nm)\n", "\n", "traps2 = mgc.bistable_trap(\n", " np.array([[5,0,0]])*ureg.um,\n", " np.array([[1,0,0]]),\n", " particles, subsets = [2],\n", " distance = 0*ureg.um,\n", " height = 0 * ureg.pN*ureg.nm,\n", " stiffness = 3e-4 * ureg.pN/ureg.nm)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "field = mgc.field(magnitude = 0*ureg.mT, frequency = 100*ureg.Hz, angle = 90*ureg.degrees)\n", "\n", "world = mgc.world(particles, [traps,traps2], temperature = 300*ureg.K,\n", " region=region*ureg.um, boundaries = ['p','p','f'], walls = [False,False,True],\n", " dipole_cutoff = 20*ureg.um)\n", "\n", "sim = mgc.sim(dir_name = \"bidisperse/\", file_name = \"test_traps\",\n", " timestep = 1e-4*ureg.s, framerate = 30*ureg.Hz, total_time = 60*ureg.s,\n", " particles = particles,traps = [traps,traps2], world = world, field = field, \n", " output = [\"x\",\"y\",\"z\",\"mux\",\"muy\",\"muz\"])" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "sim.generate_scripts()\n", "sim.run()\n", "sim.load()\n", "\n", "trj = sim.lazy_read[:]" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(3,3),dpi=150)\n", "ax = mgc.draw_trj(trj[trj.type==1],sim,cmap=\"plasma\")\n", "\n", "for i, trj_i in trj.groupby(\"id\"):\n", " if all(trj_i.type==1):\n", " ax.plot(trj_i.x,trj_i.y, color=\"red\")\n", " else: \n", " ax.plot(trj_i.x,trj_i.y,'.',color=\"k\", linewidth = .5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### What happens if some of the traps are pair traps?\n", "\n", "Pair traps are not assigned a bond to a specific trap, but instead they act on whatever particles are inside their cutoff (pair traps *must* have a cutoff)." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "region = np.array([20,20,4.1])" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "particles = mgc.particles(\n", " np.array([[-5,0,0],[0,5,0],[5,0,0]])*ureg.um,\n", " radius = 2*ureg.um,\n", " susceptibility = 1,\n", " diffusion=0.07*ureg.um**2/ureg.s,\n", " density = 0*ureg.kg/ureg.m**3,\n", " temperature=300*ureg.K)\n", "\n", "traps = mgc.bistable_trap(\n", " np.array([[-5,0,0],[0,5,0]])*ureg.um,\n", " np.array([[1,0,0],[0,1,0]]),\n", " particles, subsets = slice(0,2),\n", " distance = 2*ureg.um,\n", " height = 0 * ureg.pN*ureg.nm,\n", " stiffness = 3e-4 * ureg.pN/ureg.nm)\n", "\n", "traps2 = mgc.bistable_trap(\n", " np.array([[5,0,0]])*ureg.um,\n", " np.array([[1,0,0]]),\n", " particles, subsets = [2],\n", " distance = 0*ureg.um,\n", " height = 0 * ureg.pN*ureg.nm,\n", " stiffness = 1e-4 * ureg.pN/ureg.nm,\n", " cutoff = 1*ureg.um)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "field = mgc.field(magnitude = 0*ureg.mT, frequency = 100*ureg.Hz, angle = 90*ureg.degrees)\n", "\n", "world = mgc.world(particles, [traps,traps2], temperature = 300*ureg.K,\n", " region=region*ureg.um, boundaries = ['p','p','f'], walls = [False,False,True],\n", " dipole_cutoff = 20*ureg.um)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "sim = mgc.sim(dir_name = \"bidisperse/\", file_name = \"test_traps_pair\",\n", " timestep = 1e-4*ureg.s, framerate = 30*ureg.Hz, total_time = 60*ureg.s,\n", " particles = particles,traps = [traps,traps2], world = world, field = field, \n", " output = [\"x\",\"y\",\"z\",\"mux\",\"muy\",\"muz\"])" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "sim.generate_scripts()\n", "sim.run()\n", "sim.load()\n", "\n", "trj = sim.lazy_read[:]" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(3,3),dpi=150)\n", "ax = mgc.draw_trj(trj[trj.type==1],sim,cmap=\"plasma\")\n", "\n", "for i, trj_i in trj.groupby(\"id\"):\n", " if all(trj_i.type==1):\n", " ax.plot(trj_i.x,trj_i.y, color=\"red\")\n", " else: \n", " ax.plot(trj_i.x,trj_i.y,'.',color=\"k\", linewidth = .5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This also works well. In principle, a single particle should be able to be traped by several traps if they have a cutoff. Let's see if that works." ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "region = np.array([20,20,4.1])" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "particles = mgc.particles(\n", " np.array([[-2.5,-5,0],[0,5,0],[2.5,-5,0]])*ureg.um,\n", " radius = 2*ureg.um,\n", " susceptibility = 0,\n", " diffusion=0.07*ureg.um**2/ureg.s,\n", " density = 0*ureg.kg/ureg.m**3,\n", " temperature=300*ureg.K)\n", "\n", "traps = mgc.bistable_trap(\n", " np.array([[-1,-5,0],[0,5,0]])*ureg.um,\n", " np.array([[1,0,0],[0,1,0]]),\n", " particles, subsets = slice(0,2),\n", " distance = 2*ureg.um,\n", " height = 0 * ureg.pN*ureg.nm,\n", " stiffness = 3e-4 * ureg.pN/ureg.nm)\n", "\n", "traps2 = mgc.bistable_trap(\n", " np.array([[1,-5,0]])*ureg.um,\n", " np.array([[1,0,0]]),\n", " particles, subsets = [2],\n", " distance = 0*ureg.um,\n", " height = 0 * ureg.pN*ureg.nm,\n", " stiffness = 1e-6 * ureg.pN/ureg.nm,\n", " cutoff = 10*ureg.um)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": [ "field = mgc.field(magnitude = 0*ureg.mT, frequency = 100*ureg.Hz, angle = 90*ureg.degrees)\n", "\n", "world = mgc.world(particles, [traps,traps2], temperature = 300*ureg.K,\n", " region=region*ureg.um, boundaries = ['p','p','f'], walls = [False,False,True],\n", " dipole_cutoff = 20*ureg.um)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "sim = mgc.sim(dir_name = \"bidisperse/\", file_name = \"test_traps_pair\",\n", " timestep = 1e-4*ureg.s, framerate = 30*ureg.Hz, total_time = 60*ureg.s,\n", " particles = particles,traps = [traps,traps2], world = world, field = field, \n", " output = [\"x\",\"y\",\"z\",\"mux\",\"muy\",\"muz\"])" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "sim.generate_scripts()\n", "sim.run()\n", "sim.load()\n", "\n", "trj = sim.lazy_read[:]" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(3,3),dpi=150)\n", "ax = mgc.draw_trj(trj[trj.type==1],sim,cmap=\"plasma\")\n", "\n", "for i, trj_i in trj.groupby(\"id\"):\n", " if all(trj_i.type==1):\n", " ax.plot(trj_i.x,trj_i.y, color=\"red\")\n", " else: \n", " ax.plot(trj_i.x,trj_i.y,'.',color=\"k\", linewidth = .5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This works, but keep in mind that all particles see the pair trap. Currently, I don't know how to make some particles see the pair trap and some not. Maybe this can be implemented in the future by defining several particle types. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Bidisperse traps and bidisperse particles" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "If the list of particle objects `particles`, has $N_p$ particle types, and there are $N_t$ traps of type $t$, `subsets` should be a list of $N_t$ pairs. \n", "The pair `p = subsets[i]` indicates trap $i$ is to be bonded with particle $p[1]$ in the list `particles[p[0]]`. \n" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "large_particles = mgc.particles(\n", " np.array([[0,2.5,0]])*ureg.um,\n", " radius = 2*ureg.um,\n", " susceptibility = 0,\n", " diffusion=0.07*ureg.um**2/ureg.s,\n", " density = 0*ureg.kg/ureg.m**3,\n", " temperature=300*ureg.K)\n", "\n", "small_particles = mgc.particles(\n", " np.array([[-2.5,0,0],[0,0,0]])*ureg.um,\n", " radius = 1*ureg.um,\n", " susceptibility = 0,\n", " diffusion=0.07*ureg.um**2/ureg.s,\n", " density = 0*ureg.kg/ureg.m**3,\n", " temperature=300*ureg.K)\n", "\n", "## The trap at [-2.5,0,0] should be paired with the first small particle. \n", "## The trap at [2.5,0,0] should be paired with the first large particle. \n", "\n", "long_traps = mgc.bistable_trap(\n", " np.array([[-2.5,0,0],[0,2.5,0]])*ureg.um,\n", " np.array([[1,0,0],[0,1,0]]),\n", " [large_particles,small_particles], subsets = [[1,0],[0,0]],\n", " distance = 2*ureg.um,\n", " height = 0 * ureg.pN*ureg.nm,\n", " stiffness = 3e-4 * ureg.pN/ureg.nm)\n", "\n", "## The trap at [0,0,0] should be paired with the second small particle. \n", "short_trap = mgc.bistable_trap(\n", " np.array([[0,0,0]])*ureg.um,\n", " np.array([[1,0,0]]),\n", " [large_particles,small_particles], subsets = [[1,1]],\n", " distance = 0*ureg.um,\n", " height = 0 * ureg.pN*ureg.nm,\n", " stiffness = 3e-4 * ureg.pN/ureg.nm)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "field = mgc.field(magnitude = 0*ureg.mT, frequency = 100*ureg.Hz, angle = 90*ureg.degrees)\n", "\n", "world = mgc.world([large_particles,small_particles],\n", " [long_traps, short_trap], temperature = 300*ureg.K,\n", " region=region*ureg.um, boundaries = ['p','p','f'],\n", " walls = [False,False,True],\n", " dipole_cutoff = 20*ureg.um)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "sim = mgc.sim(dir_name = \"bidisperse/\", file_name = \"test_traps_bibi\",\n", " timestep = 1e-4*ureg.s, framerate = 30*ureg.Hz, total_time = 60*ureg.s,\n", " particles = [large_particles,small_particles],\n", " traps = [long_traps, short_trap], world = world, field = field, \n", " output = [\"x\",\"y\",\"z\",\"mux\",\"muy\",\"muz\"])" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "sim.generate_scripts()\n", "sim.run()\n", "sim.load()\n", "\n", "trj = sim.lazy_read[:]" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAG1CAYAAAAFuNXgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAXEQAAFxEByibzPwAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3dd3hc5Zn+8e8jybZsGRfcGzY2BmMDNr0sJQGSADEJLUs2bAib7P5IISE9IYFQ0pYkkFDSCTHJbrKb0HtCaBsTejFgim3ZuHcbF1mWLM3z++McYVnWSJo5Z+bMnLk/1zXXQac+EmPNrfe8533N3RERERFJi6qkCxARERGJk8KNiIiIpIrCjYiIiKSKwo2IiIikisKNiIiIpIrCjYiIiKSKwo2IiIikisKNiIiIpIrCjYiIiKSKwo2IiIikisKNiIiIpIrCjYiIiKSKwo2IiIikisKNiIiIpIrCTTtmdqiZfd3Mbjez5WbmZra9B8edb2bPmNlWM9tgZveb2THFqFlERER2Ze6edA0lw8zuBD7YYXWTu9d2ccy1wBeARuCvQC1wEmDAh9z9jgKVKyIiIp1QuGnHzL4G9AOeDV+r6CLcmNmJwMPAeuBod58frj8aeIwg8Ozt7hsLX72IiIiAwk2XzMzpOtzcB5wGfMHdf9Jh23XA54Avu/s1BS9WREREAPW5yZuZtd1+Ari1k13a1p1enIpEREQEFG6imAL0Ada6+7JOtr8QLg8qXkkiIiKicJO/vcJlZ8EGd28A3gYGm9keRatKRESkwtUkXUAZ6x8ut3WxTwMwKNx3S3cnNLO5WTbtS9A5eWkuBYqIVKB9w+W8iOepd/cPRC1GkqFwkz8Ll131yLYutuWiqk+fPntMmjRpakznExFJpddffx13Z8r+vfL+ffnG6ztiqcXMDgXeAxwBHAmMppvhRbo53yDgCuBMYCTBE713Ape7+9tx1JwWCjf5a2uJqetin37hcmtPTuju0zpbb2ZzJ02aNHXu3GwNOyIiAlBbW8veEzM89dLYvM9x1IxlcQWcy9h97LS8mNkQ4ElgMrCQINRMI3gq9zQzO8rd18dxrTRQuMnfknDZ6b8gM6sjuCX1trt3e0tKRETiYpCpjnZ8PJ4E5rDr2Gn5+jFBsLkdONfdWwDM7Hrgs8C1wMciVZsiCjf5exNoAoaZ2dhOnpg6JFy+XNyyRETEMrEFlLy5+9XtvzbLryYzGwmcB+wAPt0WbEJfAT4MnGdmX3X31XmWmyp6WipP7t4IPBJ+eU4nu7Stu7c4FYmICBD0hHSL8Er6G9jNqQSf1//XMby4exNwD1Ad7ico3ER1bbi81Mwmt60Mp1+4ENgM/CaJwkREJDWmh8sXsmx/ocN+FU+3pdoxs/cTdABrr7eZPdXu62+7+30A7v63cJqFi4GXzOwhoDdB7/gq4Dx331CE0kVEpJ1SuC0Voy7HVWu3fq8s2yuOws2uhhE8rteedVg3rP1Gd/+8mb0EXEQQanYQTKb5HXefXcBaRUQkC8tEPsWkbGOPZXuytYC6G1etocN+FU/hph13nwXMKtZxIiJSAA5ECTel1+emu3HVUtVMFQeFGxERkd3VJ9BCk01346rlNKZaJVC4ERGR1LHSa32Jostx1dqtX5Jle8VRuBERkVQxovW5KcF7PHPC5SFZtmtctQ4UbkREJH0yqWq6eZCgF9FxZjbc3de0bTCzPsDp4fYHEqqv5GicGxERSRcPbkvl+0qqQ7GZXWRmb5jZ93f5dtxXAn8kGGrkZ2bWvmHiBwRP8f7B3aNM75AqarkREREpgFzHTgOGAvsBozo53eeBo4CzgTfM7DmCiTMPAOqBL8RZe7lTuBERkfSJPs5NHHIeOy0bd19nZocDVwJnAGcCq4Ebgcs1YOyuFG5ERCR1rAT63OQ6Bpq7XwFc0cX2jcDnwpd0QeFGRETSJX2D+EmO1KFYREREUkUtNyIikjopG8RPcqRwIyIi6VMaHYolIQo3IiKSOjHMCi5lTOFGRETSxQGPcF9Kt7TKnjoUi4iISKqo5UZERFJHt6Uqm8KNiIikj8JNRVO4ERGRVHlnAswIx0t5U58bERERSRW13IiISProtlRFU7gREZH0UbipaAo3IiKSOuaWdAmSIPW5ERERkVRRy42IiKSLE+22lJ6WKnsKNyIikj7qc1PRFG5ERCR91PpS0RRuREQkXRwsE6FDsYJR2VOHYhEREUkVtdyIiEj6qPWloinciIhI+kS5LSVlT+FGRETSR09LVTT1uREREZFUUcuNiIikixOtz43665Q9hRsREUkf9bmpaAo3IiKSPpo4s6Kpz42IiIikilpuREQkdUxPS1U0hRsREUkXt2h9bnRLq+wp3IiISProiaeKpnAjIiLpo6elKpo6FIuIiEiqqOVGRETSR/1mKprCjYiIpIsTbW4p9dcpewo3IiKSPmq5qWjqcyMiIiKpopYbERFJHdfTUhVN4UZERNJHt6UqmsKNiIikizoUVzz1uREREZFUUcuNiIikjEW8LaVbWuVO4UZERNJHHYormsKNiIikjzoUVzSFGxERSRcnWsuNOhSXPXUoFhERkVRRy42IiKSPWl8qmsKNiIikjkYormwKNyIikj7qUFzR1OdGREREUkUtNyIiki5uEZ+WUqtPuVO4ERGR9FFAqWgKNyIikj7qUFzRFG5ERCR1XI+CVzR1KBYREZFUUcuNiIikixOtz41afcqewo2IiKSP+txUNIUbERFJFQc8QsuNGm7Kn/rcxMDMHjMz7+J1StI1ioiIVAq13MTrNmBrJ+uXF7sQkUJpadhOy+ZtZJpb8OYWAKp612C9a6gZ0I+autqEKxSJOIgfuqVV7hRu4vVld38r6SJE4tKytZGGeStomL+ChnnLaZi/gqYVG7IfYEafUYOpmzyaun3HULfvaOomj6amf9/iFS2iDsUVT+FGRHbRvGELa+9/jnV/m8P2ZetyO9idphUbaFqxgQ2PvxqsM6N2zBCGnjyd4e8/nF6D+8dftEgHUfrcSPlTuBERADbPWcTqu59m4xOv4y2t8Z3Yne3L1rFs1sMs/+/H2PPYqQz/wJEMOHBCfNcQKVFmVgtcAvwLsBewAXgQ+Ja7L8vhPG8B47vYZX93fyNCqamicBOvT5jZECADzAPudPclCdckkpW3Zlj7wPOsuvMpGt9aXfjr7Whl/aOvsP7RV+i79whGnnEUw049FKvSsw0Ss0zSBbwTbB4GjgFWAncBE4B/A2aa2dHuXp/jaW/Jsn5TvnWmkcJNvC7t8PWPzOzb7v7tRKoR6ULjkrUs/OHtbH19aTLXX7SaRT++i7V/eYGJXzmLvuOGJVKHpFRp3Jb6BkGweRJ4r7tvBTCzLwLXADcDJ+RyQne/IOYaU0nhJh7/B9wE/IMgnY8DziEIO1eZ2WZ3v667k5jZ3CybJsVVqIi3Zlh56xMsu+Xhd552StLW15byyoU/Zdy/nczIs49RK45E5+BRnpaKoUOxmfUCPht++Zm2YAPg7tea2ceA483sUHd/PvoVpT39FomBu3/L3f/L3Re6e6O7z3P37wFnhLtcaWZ6XEQS17hkLa99/tcs/fVfSiLYtPHmFpb88kFe+/yvaVy6NulyJA3c8n/F41hgEFDv7i92sv3WcHl6XBeUndRyU0Du/lczew44DDgKeLSb/ad1tj5s0Zkaf4VSSdY9PIeF19xRUqGmo7ZWnElfOYsh7z4o6XJEopgeLl/Isv2FDvv1iJl9haA1vwmYC9zh7vqLoAOFm8KbTxBuRiVdiFSu1Xc/zVs33Ate+gN4eHMLC77/Z1oatjNi5hFJlyNlySI+Ch5L681e4TLbE1HLOuzXUz/o8PWPzexz7v6bHM+Tago3hTc4XHY2crFIwa3802yW/OrBpMvITcZ56yd3k2lsZtSHjk26GilH0SfOnJStH2S2VvYO2gZ02pZle0OH/bpzN0Hr//PAWmAi8HHgYuAmM1vv7nf28Fypp3BTQGY2DDgu/DJb06RIway+++nyCzbtLPnlg1T17a0WHMld8k9LtRWQrbk0pwLd/XMdVs0FvmRmbwK/BK4GFG5CCjcRmdlRQF/gMfedbf5mNgH4L6AOuDuXwZpE4rDukTm8deO9SZcR2VvX30NNXa364Eix1fewhSabLeGyLsv2fuEyaqv+TcC3gX3NbG93XxTxfKmgcBPdFOC3wEozmwesAsYChwK1BOn6P5IrTypR45K1LPzRHZAp/T423co49T+8nX77jNJYONIzHrF7WTz/bNoGcB2bZfvYDvvlxd0zZlYPDCfo26lwgx4Fj8PTwM8JxreZCpwNHAC8BHwJONzd1yRXnlQab81Q/4PbSvqpqFx5cwsLf3QHnimBYWelPGQs/1c85oTLQ7Jsb1v/cgzXUt/ODtRyE5G7vw58Ouk6RNqsvPUJGt5I313QrXOXsOq2f6iDsfRICUyc+QTBlAiTzOzgTsa6OSdcRrp3bGbTgP0IOi5rbqmQWm5EUqRxyVqW3fJw0mUUzLJZD9OY60zlIglw92bgxvDLG83snb434fQLBwGz3f3ZdusvMrM3zOz77c9lZu8zs0M7XsPMDgL+TNA5+abwmoLCjUhqpPF2VEeZph0s/OHtuj0l3Ut+hGKA7xB0XTgGmG9m/2tmTxHMK7WeYALN9oYStMJ0HBftaOA5M3vLzB42s/8xs6cJHgvfH3icYOZxCSnciKTEmgeeS+XtqI62zl3C2gc0FY9k5254JsIrpoDj7tuBdxM8zbSNYEqeCQQzex/s7gt6eKq/EEyyuZlgROOzgX2A2QQPrJzk7tnG06lI6nMjkhKr73gq6RKKZtWdTzH8/YcnXYaUsuT73ADg7o3At8JXd/teAVzRyfonCWYWlx5Sy41ICmx+aSGNiyvnobzGRavZ/MpbSZchJczd8n5J+VO4EUmB1Xc/k3QJRbfm7qeTLkFESpRuS4mUueb1W9j4j9eTLqPoNsx+jR0bt9JrcE+n5pGKEt94NVKG1HIjUubW3P8s3tKadBlF5ztaWXP/c0mXISXKPf+XlD+FG5Eyt+5vc7rfKaXW/e2lpEuQUuQR+9wo4JQ9hRuRMtayeRtNy9cnXUZiti9bT8vW7UmXISIlRn1uRMpYw/wVRb/mstq+rKjty0PDRrBvwxbOXLmcmqTa8t1pWLCCgTMmJnN9KV3qc1PRFG5EyljDvOVFu1ZTVRXnH3LkLuteHjiIW0ePA+CCJYs4dc2qotXTpuHN5Qo30kHUR7oVjMqdbkuJlLFitdy81n/AbsGmo1l77c25hx1dlHraS6L1SspAaUy/IAlRuBEpYw3zCv/Bvr2qiiunTOvx/h+fcXhR+2Mq3IhIRwo3ImWqZWsjTas2Fvw6y2r75rR/Q00NN+21d4Gq2V3Tig20NKhTsexKIxRXNoUbkTLVsrk48+T1a819DJ2/DR9ZgEqycKd1S2Pxrielzwk6FOf70qPgZU8dikXKVKa5pSjXuX/EqJyPqc5kClBJdsX6WUh5cKINxqdsU/4UbkTKVKapOB/oLw8YlPMxJ68r7iSemaYdRb2elD7dXqpsui0lIl2a1LA152P+MnwkzaYPFxFJhsKNSJmq6l2chtdPLq7P67hNvXrFXEl2xfpZSBnRo+AVTb8RRMpUVZ/i/PPtk0f/GXNnWHNzAarpXFWf4gUpKQNueJQRihVwyp7CjUiZqhnQL+kSsvJi3pIyo3qP3B5Xl/RTn5vKpttSImWqpn9f+owcXPDrvF1T2q0ifUbvSU1dbdJliEgJUbgRKWN1+44u+DVeHjAwr+OW5jj4X77qJhf+ZyBlSH1uKprCjUgZK8YH+30j87vG+t69Y66kcwo30hmNUFzZ1OdGpIzV7Tum4NdY3adPzsecu3wJB27eVIBqdleM1ispP17ccSSlxKjlRqSMFaPV4pTVq3La//fPP8VZK5dTXaB6dmGmlhsR2Y3CjUgZqxnQjz5jhhT0Gh9esZRTVq/s0b7nL32L3lHGvc9R7Zgh1PTXk1LSgROtz43mXyh7ui0lUuaGnjyd5bc8UtBrfGDVCtb06cMLg/YEYPHVM3fbZ/zX7uV9a3Jr5Ylq6HtmFPV6Uh6CuaXy7zujbFP+1HIjUuaGn3Y4VlPYm0BDdjTztQVv8r/PPdlpsIEg8NQUsdXGelUz/LTDinY9KSf5dyYOQpE6FZc7hRuRMtd7yB4MPmb/olzrqIe/G2l7nPY8diq9Bvcv2vWkzOhR8IqmcCOSAiM+cETSJRTd8A8cmXQJIlKiFG5EUmDAjIn0HT886TKKpu/eIxhw4ISky5AS5hnL+yXlT+FGJCVGnHFU0iUUzcgK+l4lDx5xED/1KC57CjciKTH8tMOomzI26TIKrv/UcQw79dCky5BS5xFeUvYUbkRSwqqrmPSVs7BehRvh4amTvhlpe1TWu4aJXzkLq9KvLhHJTr8hRFKk7/jhjP3YiQW9RrYAU+hgAzDugpPpO25Ywa8j5U9zS1U2DeInkjKjPnQsG2a/RsMbywp2jWIEmY76Tx3HyHOOKfp1pTwppFQ2tdyIpEwxbk8Vm25HSS6c/J+U8ozhGsSv7Ok3hUgK9R0/nIlfPgMsBb+kq4yJXz5Tt6Ok5zS3VMVTuBFJqaEnzWDCRZ1PlVBOJnz2dIaeOD3pMkSkjKSn3VpEdjPig0fSur2Zpb/+S9Kl5GXcf7yPEadX3ujLEp363FQ2hRuRlBt97nFU1/bmrRvvhSJObBlJlTHhopmM0BQLkieFm8qmcCNSAUZ88Eiq6/qw8Jo78R0tSZfTJetdw8QvncnQk3QrSvJXLjleCkPhRqRCDD15BnWTR1P/w9sL+ph4FP33H8fEr5xF373UeVhE8hc53JjZ+XEUAuDuv4vrXCKyu77jhzPtuv/Hyj/PZtktj5RMK471rmHsx05i1Dn/hFXrOQeJTrelKlscLTeziO/BOYUbkQKz6ipGf/h4Bh89pSRacdRaI7FzIMrs3rql1WOl2sAR122pOcBdEY4/AzgoplpEpAfaWnHWPPAcq+94isbFa4p7/QnDGXnG0Qw79VC11kjMok6joFafHMyiBBs44go3L7n7lfkebGYTULgRKTqrrmLEzCMYMfMINr+0kNV3P8PGf7yOt7QW5no11Qw+diojPnAEAw7auyDXEJGiK7kGjjjCzWZgW8RzNIbnEZGEDJgxkQEzJtK8fgtr7n+WdX+bQ9Py9bGcu3bMEIa+ZwbDTjuM3nvuEcs5RbJxovW50V2pnJVcA0fkcOPug2I4x6eBT0c9j4hE13vIHoz96ImM/eiJtGzeRsP8FcFr3goa5i2nadXGLo/vM2owdZPHULfvaOr2HUPd5NHU7NG3SNWLBNShuGhKsoFDj4KLSFY1A/ox8NB9GHjoPu+sa9naSMvmRjLNO/Dm4Gkr69OLql411AzoR03/2qTKFXmHwk1xlGoDh8KNiOSkpn9favqrJUZKnMJNRYs93JhZFUECOxsYBawBXgVeCl8vu/v2uK8rIiIiAoVpubkC+CY7n6XbFziWnX20MmY2nyDovOjuPyxADSIiUqkcPBPteMlPqTRwFCLcnA+0AOcBDwKDgAOBGeFrOkHgmQKcCyjciIhIrNTnJjFXUAINHIUIN3sCD7r7reHXW4FlwANtO5hZP4LHvjQznqRGy+YGdqx7OxgjprqKmgH96T0scl87EcmRRxzEzzWIXxQl0cBRiHDzCt006rn7NuCp8CVSllq3bWfjY8+zdc4Cti1Yyo61b++2T/WAOvpNGkvd/hMYfPLh9B5avmEn07SDbfUr2TZ/OdtXrCfTvAOrqqK6rpZ+E0fSb/IY+owegpk+GEQqWEk0cBQi3PwU+IWZDXX3dQU4v0iimlauY+0dj7Hx8RfJNDZ1uW/r5ga2vPgmW158k1X/8xADjpjK8DNOoG5qeYzO660Z3n76Ddbe+zSbX6yHTNcdGWoG9GPPE2cw/PSjqB07tEhViuxOt6USUxINHLGHG3f/g5mdBtxlZme5++q4ryGSBM9kWHfPbFb+/gG8eUfuJ8hk2PzUq2x+ei5DTjmKURfMpLpvn/gLjcn6h19k+ayHaF6ze4tUNi2bt7Hmzn+w5q4nGXDoZPb6zOnUjh5SwCpFOqdwk5iSaOAo1Gx1lwPDgVfM7HtmdrSZaWQvKVs7Nm6m/hs/Z8Vv7s4v2LTnzvoHnmTe565h2/yl8RQYox0btrDg8t+z6Ad/zinY7MKdzc/N47VPXs/qO57AXY+fSBE5wTg3eb+S/gbKl7v/AbiboIFjRFJ1xB5uzOwUgmapicBQ4OvAbGCLmb1qZr83sy+Z2Ylmtmfc1xeJW/PajSz42k9peG1RvOddvYH6S3/B1lfrYz1vFA3zljH3k9fx9lOvx3K+TNMOlv7iPhZc/nsyTRFDoYiUi8QbOArRcvN9oJag89DngMuA24BFwP4EPah/ADxE8Py7SMna8fYW6i/7Jc2r4plAsqNMYxOLvn1zSbTgbH1jKW9+7Te0bIo6TczuNj39BvO/dQuZqK1eIj3kbnm/JH+l0sBRiA7F+wFz3H1mxw1m1p+gd/QM4GD0KLiUuGU3/InmFYW9bZxpbGLxD37Pvjd8ieraZPrgNK3awPxLZ5HZ1nUH6Si2vLSQRVf/iUmXnVewa4i0UUhJTFsDx/0Ej4IPZOfn/v7AVOAj4b5OgaaBKsRJVwGdtmm7+1bgifAlUtI2PPIcm5+N5/ZMd5pXb2DlrPsY+8mzinK99tydRdfcRuuWxoJfa+Psuax76AWGvueQgl9LKlukEYolipJo4CjEbak7gMMLcF6RomnZ3MCKm+4q6jXXP/AkDa+/VdRrAqy9+ym2vhxvf6KuLP3FfTSv31y060nlaRvEL++XBvGLossGDnd/wt1/6u7/7u4FywqFCDdXATVmdkkBzl2SzKzWzK40s3lmtt3MVpjZzWY2NunaJD8bHnqG1q3RWjLMWujdZxNVVT3sZ+LO2rsej3TNXLU2bGfZrL8W95pbG1lxy0NFvaZIUuL8fDCzQWb2EzNbbGZN4fI6Myul0UFLooGjELelbgNeBL5jZvsD33X3NwtwnZIQ9gB/GDgGWAncBUwA/g2YaWZHu3vpPA4j3fJMhvV/iTa2VP89ljFpcjAgZyZTzaL697J1S9e/y+r6r2D4hjtove15qs/8CVQVaqSGndb/7cWc+9m0WIZnx69g/rANvD58HasGNjBp7WA+M/swBjf27IGIDY+9zNj/OI2aPfrmU7ZI1zxin5uYHgWP8/PBzIYATwKTgYXAncA0ggd3TjOzo9y9ME8+5OYq4Cwzu8Tdv59UEYUINye2++9/Bc4zswXAcwSh50XgpRL5nxCHbxC8cZ8E3hv2K8LMvghcA9wMnJBceZKrra/UR3g6Kvit2BZsAKqqWhk4cDGN24ZRVbWDQXsuYPSYZ2loGMayJcexvXEIVVU72Gff+4IDXrkleLWpHQjn3Qbj4v9jaM29T+e0f1N1C58894Hd1tcP28gXz3yIA1YM4/Alozlm0VhqPHs4yzTtYN1fn2fk2cfmXLNIT5RIh+I4Px9+TBBsbgfOdfeW8FzXA58FrgU+Fmv1+SmJBg6Le3AtMxvPrhNkzSBIqm3aLricYEbQD8ZaQBGZWS+Cx9kHAYe4+4sdts8hmD/jMHd/PsJ15k6dOnXq3LlzI9UrPbPqj39l9R9zu1VTXd3EAdN/l9f1duzoS69ePbwF9uX50H94XtfpqPGtVcy98Poe7btywBauO/5ZVg9o6NH+hy0ZxWdmH9blPnVTxrH/dZ/q0flEeqq2tpYxvfpz6wkfz/sc5zx+Mwu3rn/N3afle444Px/MbCTBZ2YrMK79yP9m1gdYSjCn05ikZwUws45duR0oegNHIaZfWAwsJmh+A8DMBrAz6LSFnmnAbr2py8yxBG/c+o5v3NCtBG/e04G8w40UV+OC3MecyTfYALsEG7ty9462fvmAnV/8aHKw/MyzMGzfvK8J0DBveY/3vXX6G7sEm1cveHW3fQ6YdcA7/10/ZGO359y2cCXe2opVV/e4DpEyEufnw6kEfWQf7Rhe3L3JzO4BPh7uNyti3VHtze4NHJPD178QNnCYWUEbOAp/Ux9w983u/nd3v8HdP+HuhwH9Cf7HlrO2x9heyLL9hQ77SRloXLiix/tWVTUz9cDfx3LdzoJN1vU/PRx+dwa05j8o3rb5PQs3GXNeGLfqna87CzYd12+s287SQV0/EeXNLTS+pXE8pTBKYBC/OD8fyuazxt0Xu/td7n6lu5/l7hMJQt4JwMUE4etFYBgFbOAoSrjpjLu3unu532fZK1wuy7J9WYf9pAy0bNra7T5mrYwb/xgHzriFXr22R75mtmDT5faFj8K3h8KmnrfAtNe4pGfBYmG7Vphswaaz7T9695NkuumZ2bhY8+pKYZRAuInz86GsP2uSaOCI/baUmR0NvOzuPbs5X976h8ts49U3dNivS2aWLexNyqUoicYz3Y/+NWHiQwwYmPyUCQD8eCp8ZSHU5Tb7dqaxuUf7ffe9+Y252bu1GowunzzJbNd0DFIAbpCJ8rSUAUzK9ju5h31x4vx8iPWzppB6mgHcvRUoWANHIVpungA2mdmbZva/ZnaJmZ1qZqPa72RmvzKzCwtw/WJq+9eT7dd3SXTXl9xYTfd9QPr2K+yUDDl74idJV7CbC56ZTlVpPLEikoQ4Px/K6bOmJDJAIR4F/yPBfb/9CDoQfYidHYjWAS8B9cCZBB2pflmAGoplS7isy7K9X7js/j4H2f8aCP96mJpbaZKvXkMHdTuf1LIlx7H3pOIOftelqtz/KVf17V2AQnaaumpo9zXU9ipoDVKZnGiPgocJoj7K01LE+/kQ62dNgZVEBijE01LnwTuPpx3Izl7TMwhGLXwPcDJB0iyRdv28LQmX2UZnG9thPykD/SaN7TbcbN40npdf/DjTDvod1dUtRaqsC5Pfk/MhffcazpaXFhagGDhgxTCsB39M9h0/oiDXFymBcW7i/Hwom8+aUskABetQ7O5N7v6cu9/k7he5+7HAcOCLwHbgGYJvspzNCZfZZgFsW/9yEWqRmPTdp2ejortX8+qcC2K55i6Pe+exncbuH73uqN/kMQDMYFoAACAASURBVD3a77K/7Bxor/3j3p1p2/7RZw/s9rzWu4a+E+IZs0ekI/f8XzGJ8/Oh7D5rks4ARX1ayt03uftPgA8TJLjufwOWtieATQQdzw7uZPs54fLe4pUkUe0xo6fjxzijx0SbpmGXs2UJMN0Gm5q+MDb30Yvr9u1ZuBm1adc+itkCTtv6QdtqGbi9T7fn7TdxlMa4kYIpgael4vx8eBDIAMeZ2S5/EYQtJKeH23cfPryEFDMDFKLPTbfc/R4ze5NgaOrbkqghDu7ebGY3At8EbjSz97b1EA+H1z4ImO3uzyZZp+Sm796j6bffeLa9ubjL/YaPfJFhI7p+NDpX3QaZ9j52D9Q/ApNOzGvU4r4TRlK713C2d/NIeN+WXnzs6YO45cidfxRmCzgXPH0QRy4eQ5/W7n+1DD6h3P+2Eckun88HM7sIuAi4w90vaXeulWb2R+A84Gdm9uG26ReAHxCMGfNf7r5zQKoSVowMkEi4CS1k13moytV3CO4fHgPMN7O/A+OBI4H1BBOkSZkZctoxXYYbsxZGjHyp020tLX1Ys2o6ewxYzh4DlrN+7RSWLf0nho94mVFjdubc+W9+gG0NI5h+yK+7L2jy++C8P+2+fu/juz+2C8NnHsmSn93T7X7vqh+PAbOO7LzVu66pF9+7990MaOq+xQagqk8vhr7n0FxKFclJCfS5gdw/H4YSdMQdxe4+DxwFnA28YWbPEYz0fwBBB90vFOIbKKCCZoBCjHNzHTvnj5jbLl12NAkoi5TZFXffbmbvBi4BPgKcAWwEbgEuc/dy7zRdkQYdO501f36YpmWdt2q4V9Pc3J/a2k3vrGtt7cXK5Uewft0UoIq1a6Zj1oJ78M9szeoZrFk9g51Pc1q4/kCGj3hl1wsc9Rk46TJY+Bg0N8B+p8b7DYaGnHwwy2b9tUczg59QP56Dl43kof0W0aelmrsOnEdLdTAm0A23va9HHYjb7PmugzQjuBROicwKHufng7uvM7PDgSvD85wJrAZuBC539w3xVB1NqWSAQkycmWHnW2MHwSA9bd/oq0ATwWzhnwI+5e6/irWAFNLEmcloeGMxC75+I2Q6/zdSXb2duv6r2b59EM1NAyNcKcPI0c/vbAna62j48B+g354Rztlza+56sketNx0tHbSZNf0bOHj5yJzGs6nu35dpv7qY3kNyuAUn0kO1tbWMqh7Afx+R/6Ss5z3zc97atjbSxJmVqlQyQCFuS50FHNzJq+MnxAJgiJmdArzg7ppkRkpK3ZTxDPvg8ay94/FOt7e21rJ50/gYrlTFliEfZvjljwVtH1bc5vRhHziKjbNfZcvLi3I6btzbAxj3du4BZdwn369gI5JeJZEBCjHOzZ3AnW1fm9lQdv8m9yEY3Oc77fZbCTxfqBlCRfIx6vzTaFq2hs3Pvl6wa/QZM4wJX/0oVuRQ08bMmPCls3ntop/SuqWx+wMiGHzcAQx9T7anWUXi41GmX5C8lUoGKHiHYndfBzwUvgAwszqCEQzbf7PTKOAMoSL5sOpqxn/tfBZf/buCBJw+44Yz6aoLqRmY7JQwfUbuyeTvXMC8S27uUf+bfOwxYyJ7f/WfC3JukY5KpENxxUsqAyT1KHgD8I/wBYCZ1RB8cyIlpap3LyZ84wJW/v4B1t75f9CDiTV7YuBRBzD2og9RMyDbiOrF1X/KOPa7+hPMv3QWLZuyzc+Xn4FHTmHSpf9CVe8kH9CUSqJwU7qKkQEi/6YxswFAs7tvj3COWqC3u8/pdmeRBFh1NaMvmMnAow5k6fX/m/Upqp6o3qMfY/7fmQw+obNxvZJVt+9Ypv3iYhZfdydvPxW9paqqTy/GfPx9DP/g0YnddpMKVCJPS0nPhU9VxZYB4vgzaiMwC/hEhHP8HPhoTPWIFEzdlPHse90X2fTEy6y7/x9se+OtHh/be/RQhp5yNINPPpya/v26PyAhvfbcg32u/CjrH3mJ5b/9K81r3s79JGYMOGwye336dGpHD4m/SBEpCTE3cGyOq644woQRz3Tr+rNOykJVrxoGv+sQBr/rEBoXrWDrywvYtmAZjfXL2LHubTI7WrDqamoG1tF30lj6TRpL3dQJ1B0wqaxaL4acOIM9TziITc+8yZp7nmLLS/V4a9e35GoG9GPPkw5m+MwjqR3b/azgIoWi21JFU5INHHGd6FgzuznK8THVIVJUffceTd+9RyddRsFYdRWDjt6fQUfvT6ZpB9sWrWLb/OVsX74eb94BVVVU9+tDv4mj6LfvGPqM2rOsApykkxNtjijX39q5KMkGjrjCzT7hKwrd5RQpYVV9etF/yjj6TxmXdCki3VLLTVGVXANHHOHm3TGcQ0RERMpTyTVwRA437r7L8K1mdqK7PxL1vCIiIvlSy03RdGzgOBJ4BYh3PIkcFeLppL+Z2e3Al9w9+7TKIiIiheARRyhWJ4ke66SB41GgETjb3R9MpiqoKsA57yeYW+J1M7vKzDT1r4iIFJW75f2SyPoCd4TzRnXKzE40s/cUqoDYw427zyQYQnkZcCnwhpmdG/d1REREpCQ9DqwlCDinZtnno0DBWnYK0XKDu99PMIzyJcBg4A9m9riZTS/E9URERNpzz/8lkS0C3gWsA27vIuAUTEHCDYC773D3q4H9gD8CxwHPmdnPzUxDloqISEE4kHHL+6V8E527LyQIOGtJIOAULNy0cfeV7v6vBOHmFeBCYJ6ZXWRmBb++iIhUmvz72wR9btTvJg7uXk9CAado4cLdnwBOAe4muFV1HTDHzE4sVg0iIlIZ1KG4NLRrwVlDEHBOK8Z1CzZRpZn1Bg4heOb9iHC5d/tdCPrlPGRmfwQucvc8ZugTERGRUuXuC83sXcBjwG1mdk6hrxl7uDGzGwmCzEHtzm9AK8F05k8C/whfdcAPgY8AR5vZye6+KO6aRESkgnjEQfzU6SaK24ElHVe6+6Iw4DwK3ErQ6bhgCtFy8+lwuRF4ip1h5ml3b+hk/1PN7BPAr4BrCMbIERERyZtuLyXD3bO2yrQLOI8BUyhgjCxEuPkP4B/u/npPD3D335jZPxPclxMREcmbE22EYjXcFI67v2VmJwC/I+i6UhCxhxt3/02ehy4FTo6zFhERESkt4dRMJ5hZwZrXCtahOA8/Al5IuggRESl/ui1V+twLN2RiyYQbd38DeCPpOkREpNxFfaRbwajclUy4ERERiYWelqp4GiFYREREUkUtNyIikjoZ9bmpaAo3IiKSKk6021K6K1X+FG5ERCR19LRUZVO4ERGR1PFM0hVIktShWERERFJFLTciIpIuehS84inciIhIyljEp6XUX6fcKdyIiEiq6GkpUZ8bERERSRW13IiISOroUfDKpnAjIiKpo3BT2RRuREQkdTT9QmVTnxsRERFJFbXciIhIujh4lEee9LhU2VO4ERGRVHHAM3oUvJIp3IiISMpYxA7F6q9T7hRuREQkddShuLKpQ7GIiIikilpuREQkdSJ1KJayp3AjIiLpolnBK57CjYiIpIoTrc+Nsk35U58bERERSRW13IiISOqoz01lU7gREZHU0cSZlU3hRkREUkfj3FQ2hRsREUkVd/BMtOOlvKlDsYiIiKSKWm5ERCRlNLdUpVO4ERGR1FGfm8qmcCMiIqmjfjOVTX1uREREJFXUciMiIqmi6RdE4UZERFJHt6Uqm8KNiIiki2YFr3jqcyMiIiKponAjIiKpk/H8X6XEzI4xs/vNbIOZbTWzZ8zsY3mc5wIz8y5e/1OI+pOi21IiIpI6aehzY2ZnAn8maIj4P2AdcBIwy8ymu/sX8zjtHOClTtY/nXehJUjhRkREUiUNT0uZ2WDgt0A1cLa73x6uHwHMBr5gZve4+6M5nvpOd78i1mJLkG5LiYhI6rjn/yoR/w4MBO5qCzYA7r4a+Gr4ZT4tNxVB4SYCM3tXN/cwn0q6RhERKUszw+WtnWy7D9gOnGxmtcUrqXzotlQ86gmaCTtbLyIiRVZCLTD5OihcvtBxg7s3m9mrwGHAfgT9aHrqUDP7ITAAWAU84u6PRy221CjcxGO2u1+QdBEiIgJ4xIkzEw5GZjYAGBR+uSzLbssIws1e5BZuZrKzVQjgW2b2OHBueMsrFRRuREQkVZxo+SQ8dpKZze10u/u0CKfvif7t/ntbln0aOtm3KyuBK4C7gIVAX+AI4AfACcB9Znaku7fmXG0JUrgRERGJmZndChyQ42Hnu/szQE+anXJqmnL3vwB/abdqM3CPmT0KPA8cCpwL/CGX85YqhZt4TDaz7wNDCMYhmA086O6ZZMsSEalMMQzGVx+xhWYCQX+YXPQLl1s6rNvcxb5bc7zGLtx9q5ldD9wIvA+FG2nnmPDV3itmdra7z0+iIBGRymV4bg0bux0flbsfFuHYzWa2ieBR8LHAa53sNjZcLsn3Ou20fU6NiuFcJUHhJppNwA+B29j55pgBfBc4CngoHEVyU09Olu3+LjApaqEiIpWk1KZRyMMc4HjgEDqEGzPrRXDLqwl4M4ZrDQ6XkVqBSklFh5uI90Rx9xeBFztsf8TMjgUeBY4DPgN8L2qtIiJSUe4jCDfnAP/VYdtMoBa43923x3Cts8Pl8zGcqyRUdLgh2j3RrNy91cyuJgg376OH4Sbb/d2wRWdqLkWKiFSqmJ6WStpNwDeBD5rZWe2mXxhO8IQTwLUdDzKzN8L/PMndl7db/zngZnff2m5dL+AbwIeARmBWAb6PRFR0uIlyT7QHUncPU0SkXJT7bSl332BmHwf+BNwajkWzDjiZYAyc69394U4ObfuDvVeH9dcB/2lmrwGLCVp+ZgCjCUY7/tf2YajcVXS4KbDU3cMUESkXZZ5tAHD328zseOBSgn6cvYHXgZ+6+29zPN1VwNHAFII7AUYwEOAvgR+7exx9d0qGwk3hpO4epohIuSj3lps27v4EcGoO+3f6qJe7Xx5bUWVAE2dGYGYXmtmQDuvMzC4EvkDwx8MvEilORESkQqnlJppLgBva3cMEOBDYG8gAF7u7Wm5ERIooJR2KJQKFm2iuAd4LTANOIujAtZLgsb3r3f3ZBGsTEalYGh6+sincRODuNwA3JF2HiIjsSq0vlU19bkRERCRV1HIjIiKpo9tSlU3hRkREUsUBj3BfSre0yp/CjYiIpI5abiqb+tyIiIhIqqjlRkREUke3liqbwo2IiKSObktVNoUbERFJFSdauFGrT/lTuBERkdRRQKls6lAsIiIiqaKWGxERSR31ualsCjciIpIyjmte8IqmcCMiIqmiDsWiPjciIiKSKmq5ERGR1FHrS2VTuBERkdRRh+LKpnAjIiKp46ZpwSuZwo2IiKSKOhSLOhSLiIhIqqjlRkREUkd9biqbwo2IiKROtEH8pNwp3IiISKqoz42oz42IiIikilpuREQkdXRbqrIp3IiISOqoQ3FlU7gREZHUcYtycGxlSELU50ZERERSRS03IiKSKsHTUvk3v6jhpvwp3IiISOqoz01lU7gREZHU0dNSlU3hRkREUkctN5VNHYpFREQkVdRyIyIiqeJ4xA7FuqVV7hRuREQkdSKNcyNlT+FGRERSJ0rLjZQ/9bkRERGRVFHLjYiIpI76zVQ2hRsREUmVYITiaMdLeVO4ERGR1FGfm8qmPjciIiKSKmq5ERGR1FG7TWVTuBERkVRxIGOaFbySKdyIiEjqqM9NZVO4ERGR1FG0qWzqUCwiIiKpopYbERFJmWgTZ6rdp/wp3IiISKoEg/ipQ3ElU7gREZHUiTJCsZQ/9bkRERGRVFHLjYiIpI4mzqxsCjciIpIq6nMjCjciIpI6UUYolvKnPjciIiKSKmq5ERGR1NHTUpVN4UZERFJFfW5E4UZERFLGIz4tpXhT7hRuREQkdTQreGVTh2IRERFJFYUbERFJnUw4eWY+r1JgZnVm9lEzu8HMnjGzJjNzM/t6xPPONLPHzWyTmW0O/3tmXHWXCt2WEhGRVElJh+LJwO/iPKGZfQ64DmgB/gY0Ae8F7jGzi939+jivlyS13IiISOqUe8sNsAX4DXAhcAjw3SgnM7N9gWsIAs3x7n6qu58BzADWA9eY2eRoJZcOhRsREZES4+717v7v7v4rd3+RoLUliosJ7tb8wt2fbHedeQTBqQb4XMRrlAyFGxERSReDTIQXlvQ3UBBt/Wpu7WTbn8Pl6UWqpeDU50ZERFIlJX1uYmNmg4C9wi9f7Ljd3ZeZ2TpgvJkNdPdNRS2wANRyIyIiKZN/f5sgFKUt3rwTbDa6e0OWfZZ12LesqeVGRERSxYHW6C03k8xsbqfb3aflffJk9A+X27rYpy309O9in7KhcBMyszrgLOAI4EhgOtAbuMTd/7ObY8cCVwGnAHsCS4D/Ab7n7tsLWbeIiJQeM7sVOCDHw85392cKUU647CrxpaqnkcLNTnmNKWBmk4AngWHAq8DfgcOAy4CTzezd7t4UZ6EiItK1GB7pro/YQjMB2C/HY/pFuF5XtoTLuh5ce2uBaigqhZud2sYUeAZ4Fjgb+GYPjruZINhc7+4XA5hZDfAn4EzgG8DlhShYREQ6l/R4Ne5+WKIF7GpJuBxsZnVZ+t2M7bBvWVOH4lA+YwqY2eHA8cAa4KvtztUCfArYAXzWzHoVqGwREenAgVbL5P1KW3did3+bnaHl4I7bw64VQ4ElaXhSChRuomobN+Cejree3H01wS2qwcA/FbswERGRdu4Ll+d0su1D4fLeItVScAo30UwPly9k2f5Ch/1ERKTgnNYIr3J+FNzM3ghfYzpsug5oBT5pZke1238yQReMViA1c0upz000beMBLMuyPVXjBoiIlIOYHgVPnJndAYwKv2zrE/NpMzsj/O+V7n5mh8PaOjHv0h3C3d80s68A1wJ/N7OHgGaCiTP7Al909zfj/h6SonATTXdjB+Q0bkC2MRWAKfX19UybVm5DK4iIFFdzczPua9jcfG3e58j4mhgriuRgYHyHdePCF8DiXE7m7j82swXAV4DjwtXPAz9097ujFFpqUhNuEhpToLuxA+IaN6Cqqakp89prr70R0/kq2aRwWZ9oFemgn2V89LOMz1SAjK95LeJ5Ev9/4e4T8jimy88dd78HuCffmspFasINyYwp0N3YATmNG5BtTIW2Fp0yHBWz5OhnGR/9LOOjn2V89LMUSFG4SWhMgSUEzYZjs2xP1bgBIiIi5UBPS0UzJ1wekmV72/qXi1CLiIiIoHATVdu4AaebWZ/2G8xsBEGHrU3A7GIXJiIiUqkUbiIIOyM/AQwHrm5bH06/8DOCR/FucPcdyVQoIiJSeVLT5yYOeY4p8G8EE2debGYnAq8BhwMTgaeB7xa2ahEREWnP3EtluKLkmdlb7D6mQHuLO3s0z8zGAVcBpwB7AkuBPwLfc/fG+CsVERGRbBRuREREJFXU50ZERERSReFGREREUkXhRkRERFJF4UZERERSReFGREREUkXhRkRERFJF4aZEmVmdmX3UzG4ws2fMrMnM3My+3oNjx5rZzWa2wsy2m9k8M7vKzGqLUXs5MbN3hT/XbK+nkq6x1JhZrZldGb6vtofvs5vNLNsEstIJM3usm/feKUnXWErM7FAz+7qZ3W5my8Of0fYeHHd++Dt0q5ltMLP7zeyYYtQsydEIxaVrMvC7XA8ys0kEIyYPA14F/g4cBlwGnGxm73b3pjgLTYl6Op8DrL7YhZSyMCA/DBwDrATuAiYQjNQ908yOdnf9zHJzG7C1k/XLi11IibsM+GAuB5jZtcAXgEbgr0At8B7gvWb2IXe/I/YqpSQo3JSuLcBvgGeAZ4GzgW/24LibCYLN9e5+Mbwz19WfgDOBbwCXF6LgMjfb3S9Iuogy8A2CYPMk8F533wpgZl8EriF4/52QXHll6cvu/lbSRZSBJ4E5BL8PnwVWdbVzOB3OF4D1wNHuPj9cfzTwGPBbM3vM3TcWsmhJhm5LlSh3r3f3f3f3X7n7i0BLd8eY2eHA8cAa4KvtztUCfArYAXzWzHoVqGxJsfB989nwy8+0BRsAd78WeBk43swOTaI+STd3v9rdL3f3e919dQ8O+VK4/E5bsAnP8yTwC2Ag8PEClColQOEmXWaGy3s63noKfxn8HRgM/FOxC5NUOBYYBNSHgbujW8Pl6cUrSWR34e3Tk8Ivb+1kF71XU063pdJlerh8Icv2F4ATw/0eK0ZBZWSymX0fGAKsI+h/86C7Z5Itq6T05P3Vfj/pmU+Y2RAgA8wD7nT3JQnXVO6mAH2Ate6+rJPtbe/Vg4pXkhSTwk267BUuO/vH3H79Xlm2V7Jjwld7r5jZ2e2btCuc3l+FcWmHr39kZt92928nUk06dPledfcGM3sbGGxme7j7luKVJsWg21Lp0j9cbsuyvaHDfgKbgB8CRxG02gwhaM5+CjgQeMjMBiZXXknR+yte/wd8FJgE9AP2I3hooAW4yswuTrC2ctfdexX0fk01tdwUiJndChyQ42Hnu/szUS4bLr2b7akR9ecc9h3p2H/kETM7FngUOA74DPC9qLWmQMW9vwrJ3b/VYdU84Htm9hzwF+BKM/uVuzcWv7qy1917tf0+kkIKN4UzgeAvsVz0i3jNtqbVum7O39mYGuVqAgX4Obt7q5ldTRBu3ofCDVTm+6vo3P2vYcA5jKBF8dGESypH3b1XQe/XVFO4KRB3PyyByy4BDgayjRQ7tt1+qVDgn3NbX5tRBbxGOWl731TM+ytB8wnCjd57+enyvWpmdQRP/r2t/jbppD436TInXB6SZXvb+peLUEsaDA6X+ssuoPdX8ei9F82bQBMwLMu0IHqvppzCTbrcFy5PN7M+7TeY2QiCWyyb6HyaAdnd2eHy+USrKB1PELx/JpnZwZ1sPydc3lu8ktLHzIYR/FuF7I/dSxfCfkqPhF+e08kueq+mnMJNioSdZJ8AhgNXt60Pp1/4GdALuMHddyRTYekxswvDMUbarzMzu5Bg6HYnGM204rl7M3Bj+OWNYdM+8M70CwcRTGPxbBL1lRMzO8rM3m1m1mH9BOAOgr4id2cZo0V65tpweamZTW5bGU6/cCGwmWCKG0khc++qM7kkyczuYOc997HAGGApsCJct9Ldz+xwzGSCOViGAK8ArwGHAxOBp4F3uXu3M+lWCjN7CxhN8HNaHK4+ENibYFC1z7v7DclUV3rCkV8fA44kmDjz78D48Ov1wFHuviCxAsuEmV0A/JbgZziPYJ6kscChBJM7zgVOdPc1SdVYaszs/QSTZ7Y5kuCPj/ZPmH7b3e9rd8xPgIsJHgl/COhNMHFmFfDP7n5boeuWZCjclLDwg3d8F7ssdvcJnRw3DrgKOAXYkyAQ/RH4nh4r3ZWZfRZ4LzCNoMWrFzs/tK9XK8TuzKwvcAnwEWAcsBF4ELjM3ZcmWVu5MLP9CebpOpLgZziYYNyV14E/Az/Xv9VdtQuEXfk3d5/VyXEXAfsTzK/3FMF8U7o9n2IKNyIiIpIq6nMjIiIiqaJwIyIiIqmicCMiIiKponAjIiIiqaJwIyIiIqmicCMiIiKponAjIiIiqaJwIyIiIqmicCMiIiKponAjIiIiqaJwIyIiIqmicCMiIiKponAjIiIiqaJwI1KhzOxdZuYdXoOSrqszZvZ2hzovSLomESldNUkXICKJqwdmh//dnGQhXfgD0A+YAUxPuBYRKXEKNyIy290vSLqIrrj7pwHM7AoUbkSkG7otJSIiIqmicCOSImb2h7BPyjc72XasmW03szVmNimHc54ZnvOGLNv/O9z+T+3WTQjXPWJmg8zsGjNbZGaNZvaSmZ3abt+PmNk/zGyLmS02s2+bmVqVRSRvCjci6fItoAX4kpkNaFtpZvsBdwGtwPvdvT6Hcx4cLl/Msn0G4MDLHdYBbAZeAs4AngbmEdxWusPM9jGz/wJ+BawDHgNGA5cCn86hPhGRXSjciKSIuy8AfgsMBi4GMLMRwAPAQOCf3f3ZHE+bNdyYWS2wH1Dv7lvabWoLNx8EbgImu/uHw/X3A32AB4FJwCR3/4C7nw58JDzu7BxrFBF5h8KNSPpcBWwHvmhmo4F7gb2BT7r7fXmc72BgBzC3k20HAtUErTPttXX6/YO7f8fdMwDu7gShBmAQcLa7r253XNu2UXnUKSICKNyIpI67LwN+ThAe5gCHAVe6+025nsvMhgFjgLnu3tlj4m0tNB3DTdv673RyzMBw+Rt3X9FhW9s4O2tyrVVEpI3CjUg6XUvQD2YoMMvdr8jzPD3pbwPtwo2ZDQQmAAvc/fVOjmlr1bm7k20HhstXcytTRGQnhRuRlDEzIwg3Fq5qiXC6nMMNO8PLc10ck8lyzmwtQSIiPaZwI5I+1wIfAu4huL1zgZlNzvNcbeFmt5aUcKqGw4F17r683aa2gNJZB+Q9CDoRv+nu2zq5nsKNiESmcCOSImb2ReDzBI9dnwtcTTAS+VV5nrIt3DR1su0CoBfZ+9t01jIznaBFKVtL0HSCVp2Xs2wXEemWwo1ISpjZPwM/AhYAp7t7I0HH4lXAuWZ2UI7n6w/sE375r+HtrrZtpwPfC7/sOGZO222pzlpfsrbMmFldeL35WVp1RER6ROFGJAXM7ATgdwSD4Z3i7msBwoDznwStJd/N8bTTCX5HLAA+BbxuZveZ2esEnYHbblWdY2Y3hXXUANOA5W01dNBVq85B4fV0S0pEIlG4ESlzZjYVuJNg9OGZnYw+/EtgOTDTzI7O4dRtt6RmEYSbWuAkgltU5wLnA8vC674Q7juFYIC+bAGlqz41XbX4iIj0mOZvESlz7v4awYjE2bZvB8bmcep3npRy9/uBX3Syz7gO13qVnU9pdVbLYV1s+0WWa4iI5EThRkSONbNZ4X9/ul1/l7Zw88LuhxSXmf0M6MfOlh8RkawUbkRkUviC4EmrbWbWi6DvzEp3X5VYZTt9hJ0jG4uIdEnhRqRCuftjZL+FNA3oQGerYQAAAI1JREFUTQm02gC4+6Du9xIRCVgwj52IiIhIOuhpKREREUkVhRsRERFJFYUbERERSRWFGxEREUkVhRsRERFJFYUbERERSRWFGxEREUkVhRsRERFJFYUbERERSRWFGxEREUkVhRsRERFJFYUbERERSRWFGxEREUkVhRsRERFJFYUbERERSRWFGxEREUmV/w8m3SRDFgM5AwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(3,3),dpi=150)\n", "ax = mgc.draw_trj(trj.query(\"type<3\"),sim,cmap=\"plasma\")\n", "\n", "for i, trj_i in trj.groupby(\"id\"):\n", " if all(trj_i.type<3):\n", " ax.plot(trj_i.x,trj_i.y)\n", " else: \n", " ax.plot(trj_i.x,trj_i.y,'.',color=\"k\", linewidth = .5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This last part probably breaks the behaviour above" ] } ], "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.6.12" } }, "nbformat": 4, "nbformat_minor": 4 }