{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Plot multi-type trees from mascot analysis using baltic\n", "\n", "March 13, 2020\n", "\n", "I ran a whole series of permutations, similar to bdmm, but using mtt for the primary outbreak clade. I now want to plot the results. " ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "scrolled": true }, "outputs": [], "source": [ "import sys, subprocess, glob, os, shutil, re, importlib, Bio, datetime\n", "from subprocess import call\n", "from Bio import SeqIO\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import rpy2\n", "import seaborn as sns\n", "%load_ext rpy2.ipython\n", "\n", "%matplotlib inline\n", "import matplotlib as mpl\n", "from matplotlib import pyplot as plt\n", "import matplotlib.patheffects as path_effects\n", "import matplotlib.lines as mlines\n", "from matplotlib.font_manager import FontProperties\n", "import matplotlib.colors as clr\n", "from matplotlib import rc\n", "import textwrap as textwrap\n", "from textwrap import wrap\n", "\n", "import numpy as np\n", "from scipy.special import binom\n", "\n", "import imp\n", "bt = imp.load_source('baltic', '../../baltic/baltic/baltic.py')" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "mpl.rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']})\n", "mpl.rcParams['font.weight']=300\n", "mpl.rcParams['axes.labelweight']=300" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def generate_tree_object(tree_path):\n", "\n", " # load mtt trees\n", " tree = bt.loadNexus(tree_path)\n", " \n", " # pull out the name of the tree file \n", " filename = tree_path.replace(\".mcc.tree\",\"-community_member_tree.pdf\")\n", " \n", " return(tree,filename)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "def return_metadata_dictionaries(tree):\n", " # parse leaf and node information into a dictionary for plotting\n", " metadata = {}\n", " node_types = {}\n", " node_probs = {}\n", "\n", " for k in tree.Objects: ## iterate over objects in tree\n", " if isinstance(k, bt.leaf) == True or k.branchType=='leaf':\n", " community_status = k.traits['max']\n", " vaccine_status = k.name.split(\"|\")[7]\n", " #WA_county = k.name.split(\"|\")[8]\n", " metadata[k] = {}\n", " metadata[k][\"community_status\"] = community_status\n", " metadata[k][\"vaccine_status\"] = vaccine_status\n", " #metadata[k][\"WA_county\"] = WA_county\n", "\n", " # parse the nodes now and pick out the type trait\n", " if isinstance(k, bt.node) == True or k.branchType=='node':\n", " node_community_status = k.traits[\"max\"]\n", " node_types[k] = {}\n", " node_types[k][\"node_community_status\"] = node_community_status\n", " \n", " node_date = k.absoluteTime\n", " node_types[k]['date'] = node_date\n", " \n", " prob_node_Marshallese = k.traits[\"max.prob\"]\n", " node_probs[k] = {}\n", " node_probs[k] = prob_node_Marshallese\n", " \n", " \n", " return(metadata, node_types, node_probs)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# read in files and run \n", "tree_path = \"../beast/mascot/output/mumps_1.mcc.tree\"\n", "tree,filename = generate_tree_object(tree_path)\n", "metadata,node_types,node_probs = return_metadata_dictionaries(tree)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "filename = \"/Users/lmoncla/Documents/Mumps/paper-and-figure-drafts/individual-PDFs/mascot-3-deme-tree-2020-09-15.pdf\"" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "# more blues\n", "Not_Marshallese_color = '#012E74'\n", "Marshallese_color = '#80AAC9'\n", "Outside_color = '#adadad'\n", "\n", "colors = {'Marshallese':Marshallese_color, 'Not_Marshallese':Not_Marshallese_color, \n", " 'Outside':Outside_color}\n", "\n", "legend_order = [\"Marshallese\",\"Not_Marshallese\", \"Outside\"]\n", "\n", "labels = {'Marshallese':'Mashallese', 'Not_Marshallese':'Not Marshallese',\n", " 'Outside': \"Not Washington\"}" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "dates_dict = {2015:{\"label\":\"Jan\\n2015\", \"date\":\"2015-01-01\"}, \n", " 2015.25:{\"label\":\"Apr\\n2015\", \"date\":\"2015-04-01\"},\n", " 2015.5:{\"label\":\"Jul\\n2015\", \"date\":\"2015-07-01\"},\n", " 2015.75:{\"label\":\"Oct\\n2015\", \"date\":\"2015-10-01\"},\n", " 2016:{\"label\":\"Jan\\n2016\", \"date\":\"2016-01-01\"}, \n", " 2016.25:{\"label\":\"Apr\\n2016\", \"date\":\"2016-04-01\"},\n", " 2016.5:{\"label\":\"Jul\\n2016\", \"date\":\"2016-07-01\"},\n", " 2016.75:{\"label\":\"Oct\\n2016\", \"date\":\"2016-10-01\"},\n", " 2017:{\"label\":\"Jan\\n2017\", \"date\":\"2017-01-01\"}, \n", " 2017.25:{\"label\":\"Apr\\n2017\", \"date\":\"2017-04-01\"},\n", " 2017.5:{\"label\":\"Jul\\n2017\", \"date\":\"2017-07-01\"},\n", " 2017.75:{\"label\":\"Oct\\n2017\", \"date\":\"2017-10-01\"}}" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "scrolled": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " \n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAI4CAYAAACFn/V+AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzs3Xd4U+XbwPHvSbpLW0YpexVZMgRaUGQjgrJlihsVFZwsZapoAUVAQOGHAjIU4WUPUYZsqSjDlo2AjJY9S/fIOe8fpSEpLU3brDb357pyWZ4m59xBzZ3nuZ+haJqmIYQQQgA6RwcghBDCeUhSEEIIYSRJQQghhJEkBSGEEEaSFIQQQhhJUhBCCGEkSUEIIYSRJAUhhBBGkhSEEEIYSVIQQghhJElBCCGEkSQFIYQQRpIUhBBCGElSEEIIYSRJQQghhJEkBSGEEEaSFIQQQhhJUhBCCGEkSUEIIYSRJAUhhBBGkhSEEEIYSVIQQghhJElBCCGEkSQFIYQQRpIUhBBCGElSEEIIYSRJQQghhJEkBSGEEEaSFIQQLmHFihXUfiQEv8BKdO/Rk/Pnzzs6JKekaJqmOToIIexNVVWzPyuK4qBIhD388ccftOz4MlqlLig6d7SEy1R3j+TY4Qh0OvlubMrN0QEI4Shr1qwBwMfHx8GRCFubPHkyWplWKDp3ABSf0vx76QTh4eE0a9bMwdE5F0mRQohCz2AwgJLp407RkZaW5piAnJj0FITL8vb2BuDJJ5+U4SM7OnnyJN999x3Xr1+nS5cudO/e3S733drnfbSKHVAUPVryLSr43qZ58+Z2uXdBIj0F4ZIURSnUD03TzB7OIjIykgaPtWXKmoss/MuNnm9NYPjw4Tb/+2jfvj3fTRxMqdvr0U4tplmp/9i4fhV6vd7RfyVOx2kKzU4ShnARmqaxadMmANq1a1foio2qqlK3x2QAmjesAjhHT2jL8qmcSq6B4lnM2KY/v5Irp/dSvHhxu8SQmpqKu7u7Xe5VEDnN8FHG/6BC2EtiYqKjQ3A5MTevQrHGZm1puiJER0fbLSlIQngwp0kKQgjratagCgAzR3V3mppJsYR9fLH4GARUA0AzJBPonUCtWrUsvkZUVBS7d++mWrVqhISE2CpUl+U0SaFdu3aODkG4ENPho8IoYyw988+ONnz4cLZt78Bfp6LBzQeflHMs/GmWxd/ep06dypBPpqP6Vobkm3RrEcyyZUtxc3Oaj7ICz2n+Jp3lP1rhOkw/NEXOrLHgz9/fnz/D/yA8PJxr167Rpk0b/Pz8LKopRkVFpSeESvd6Pqv3/M3PP//MSy+9lOtYRNacJikIYU+ms3IK4yQH0/ekaZrVEp9nyHAAypT0t8r1mHnY4qcmXD6I6lvZ/L34V2X79u2SFKxIkoJwWSkpKQBEREQUut6CpmnUKpP97/PyrT83yVM1pKLo9CiZF4zlg5t3CUj+17wx+QbVqj1mtXsISQpCuCz/JqMBKB5g2TYfpr2rM7+NyHIa77lz53j19TfY/vcJinjrGTTgRT799FOrxdy9ew9W7/kb/KtC8g0q6I7Tv/9cq11fSFIQLqxTp07GnwtjT+H79Wfsft9u3XsTGVcTJfgR4oDPZv5KxYoVee2116xy/WXLlrJo0SJ27NhBtWqP0b//XAIDA61ybZHOaRavCSGsR9M0BoStBOB/o++fkqqqKi+OXAzAj+P7WpQUVVXFK3QEkHVNITX+GpePbUWp8NS9ONRUWgUeZNu2rXl+L8K+pKcghAvKy5TVnJ6j6NxAM5g3aipeXp55jlPYnyQFIQqhnGZXZf69pcNnyfu/MP6c1WvaPnmQraf/Q/EPRlPT4MJm3vh8PLdv32bSpEns3r2bGjVq8OGHHxIcHJyXtyZsTIaPhCiEVFWlZpeJADSqU+G+D3BN0wiPPAfA6fXD8733U8Zsplu3bjF8+AjW/LqVkiX8+XDI+7zwwguENnqMiJvlwK8yJN2geNwfHPnnT0qXLp2v+wrrK1y7gAkhHMa94UcEPfEFa06WhWovcK14F4bNO0OJBi8TccEdJaAais4dxac0N70a8MMPPzg6ZJEFGT4SopA6vvZD489Z9RQyCs22pqbEgbuveaObL5cuXbLL/UXuSFIQohDKaTgo86hxfkeRNU2jmH/6oUWXtowxu/+lS5eoVKsJacXqpBejAW4eolOnL/N0r3379t2dklqNjh07ypkIViY1BSFckKqq+D46CgA/X+vMDrpxOx6A1ANf3peUFi1axFsfjCFOK4qbIYYPBz7LuHHjcn2P4cOH8+V36+4uXrvJY8Gwdctm4yl6Iv8kKQjhguydFADi4+M5ePAgwcHBlCxZEsjdosGTJ09Ss3FnqNTF2KbdiGTmqGcYMGBAPqMXGSQpCOGCrLHjqSlN0yjVeiwAV7Z9ku3wlaqquDf4CIAAv9x9u0+5dpj42NsoJe+doaAl3aBfU6RobUVSUxDCBVn7+FFLaxSapvGgb6GaIRU15Q46z4B79Ye79L5BcPW4+QsSLlOvnpzFYk3SUxBC5Juqqrg3vNsDKJJ9D0DTNGLikgBIPfCFWXL67rvv+PDjr4hN86aoZxLfThrLc889Z/b6AQMG8N3yveAfDMm3qBN4i/A/tuPn52eDd+WaJCkIIfItv0khIiKCkFa90Sp1RlH0aGoaunOrOBW5jSpVqphd4/fffzfOPurduzdeXl42eleuSZKCECLfLK1RpCeP9IN6iprUFBLP7yDJrSSK370EoN0+xrQh7XjvvfdsELHIjtQUhBD5ZmmNQlEUskoXips3GJLMG9OSKF68eP6DE7kiPQUhhN1k16O4ceMGNes24oZfSxTvkmgJlyiX+jf/Ho3Ax8eyQ4CcxdatWwkbN57z0Zd5ul1rxo4dW6CSm9MkBScJQwjhICdPniQsLIyIyMM0btSQMWPGULFiRUeHlSt///03Tdv1xlC+M4qbN1rsGR4tdYk9f+52dGgWc5qksHLlSkeHIIQQ+TJjxgy2RldC8SphbNMubGH/pjk0bNjQgZFZTnZJFUIIK0lMTAS9h3mjzp07d+44JqA8cJpC8zPPPOPoEIQQTuTWrVssXLiQqKgo2rVrR7t2zr9ILTU1lT/f/hLKPQGAlhpLKc8bNG3a1MGRWc5pho+cJAwhhBO4fPkyjZq05IJaHTz84fYxBr/chsmTJzs6tByNHTuWL6cvIDHNjRoVivDT/O8JDQ11dFgWc5qkIDUFIUSGn376iVURehS/yvcaz63m3KGtVKhQwWFxWSohIYFbt25Rrlw5R4eSa1JTEEI4nejoaPAOMmvTPAM5fvx4Nq9wLj4+PgUyIYDUFIQQTuj48ePs/S4citYCQNNU3FMu06BBgzxfMzU1lb/++ouAgADq1q1rrVALHacZPhJCiAyxsbG0btOW/VFu4O6PEnOCaeMG8e677+bpenv37qVLj+e4nFQMDMm0rFeCtWtW4+/vb+XICz5JCkIUMtY+K8FRDAYDGzduJCoqirZt21K1atU8X6v6w/U5pTyO4l4EAC3mJEN6PsSkSZOsFW6hIUlBiEJGVVV27twJYDzhzJVduHCB9r3fQ6nU2ay9pmETRw9HOigq5yWFZiFEoVa0aFE8lGSzNi0tgYrlyzooIufmNIVm6bAIYR2aplGiRPo2CzVr1rT6KWsFxb///st7Hwxm556D+Hlo3Li0AwJDQU1Gf+l3hs9Y4OgQnZLTJIWjR486OgQhCo0bN24Ad7eqtqCmUFjqEBlSUlJ4on1nLng2Q6n4LEmGFJRzq2kRdJTKlSszcOAyGjdu7OgwnZLTJAUhhGOF9p0GQMuQYCjgSeHMsX1cSApCCUjvMSl6D7TSLahXrxjTp093cHTOzWmSwsMPP+zoEIQoFDRNc/nhWE1T709sioLBYHBMQAWI0ySFgt5dFcJZZE4IliQITdNoEZJ+FOakIZ3yXIcIDw9n3rx5GAwGXnjhBdq0aZOn6+RXUtKTVK62mKspMSgeAWhqKsqV3bz44iKHxFOQOE1SEEJYz7Vr1wA4dOiQRV+4NE2jamB68siqDmFJzWHFihX0fu0jtNItQdExf+UAfpg6gn79+uX1beSZt7c3v/+2mgFvv8fu/SeoVLY4E2aF8dhjj9k9loJG1ikIUcioqsqOHTsAKF68uMVJYef+/wB4+5Wu9/UUVFXFK3QEABVKF83yGlHhs0it8AyKzj39mmoaZWN/48JZx+5XpKqqy87AygvpKQhRCLVs2dL4s6Wzj+ZtPANkXZOw5LtjWmqqMSEAKDo3Ll67g8FgQK/XWxq61UlCyB1JCkIUMnn5EFQUhflr9gOwbvux+35vmij+Xfdhlvfo9szfrD16FeXu7qZa8i2aN6rl0IQgck9SqBAiRxl1hgc93n3nbXTRv6LFRaHFX0A5/wvvvzvQ0aGLXJKaghAix0Kyqqo81PELAE6tH55lT+GpDp3YdKY0imdxALSUOzQudoy/wnfaKGphCzJ8JITIcchJURQuXE0/fL5654lZPufMzgMoD71w7zUe/vwdedrhNQWROzJ8JISwCjcPTzTDvY3nNDWVimWK5ikhxMTEkJaWZs3whIWkpyCEsEjSvgnGn7Oa0fTrr/Xo+tzbGEo+DooO5eqfTPx+fK7uERkZySuvvUXEicsULaLnk4/e4YMPPsh37MJyTlNTcJIwhBD5cPDgQRYsWGBc0RwaGmrxa1NTU6lUtTaXi7RB8fBP36oieiO//PglHTt2tGHUwpTTJIWVK1c6OgQhhAMdPHiQsf/biFK6mbFNS77N86GJ/PTTTw6MzLVITUEI4RQ8PDxAy7RhnZaGt7e3YwJyUU7TU3CSMIQQDqJpGvUahHIkviaKbzk0QzK6qHWEb1rCo48+mu/rp6SkMHXqVNavX0/p0qUZNGiQ7IWUBadJCq6osB1sIkR+Xbp0ieHDR7BpWziVK5Tm49EjePrpp61y7Wef7cvS3TegWB1IS8Dt4m/8sWmZVRJOYSJJwYFUVWX16tWODkOIQu/q1asMHDEVKnY2tmnJt+nbMJ6ff/7ZgZE5H6kpCCEKvdjYWDS9j3mjuy9XrlxxTEBOzGnWKbhih8X0PXftev92xUKIvElKSmLFihVcuHCBp556ii5dujDl2zlcTo1HcfdNf9KNSDq/1tWxgTohpxk+cvUpqd26dZOkIIQVXL9+ncebt+bknZLg7ge3jvHVmDdo2rQpPfv242KsF4ohgRe7NmHu3Lm4uTnNd2OnIH8bhYQUrYVIN2XKFE4mVUMJrAqA5l+NkeNmcvHkK5w/fYRDhw4RFBRE2bJlHRypc3KapPDMM884OgS70zTNqoVmKVoLAb/99hv43FsApygKqe4lOXLkCC1btqR+/foOjM75OU1ScMVvtnk53crSawnhqgIDA+H0JfCrAqT/v+GWep1atWo5OLKCwWmSgquz5rd8KVoLV3T48GF69HmBk5cNoEahpdxJryncPsrYYa8RFBTk6BALBEkKQohCoeezL3JSexSlQgAA2vUI2j50h/HjF9KoUSMHR1dwOM3sI1dkzeKwqqqsWbMmvyEJUSBdvHiRd8f8D6ViB2Obpqk08vqDv//+y4GRFTzSU3Agaw7xuGJNRogMvr6+KGqyeaMhmcDAEo4JqACTnkIhIVNShT3s2bOHzz8P42z0RULr1yUsLIwKFSo4OiwA+vXrx4LN0VDiETAko0T/ysbl3/Hkk086OrQCRZKCEC5KVVUy/udXyPmLxMmTJ2nXpSc9B3+BX7FALp4+xq5FU4g8sA93d3ebx5uT1NRUJk+ezOrVayhRojgffPCBJIQ8kKQghIsyqCphK/ZZ/Pzff55J1XqPUqVOiLFt16r5fPBcBzp16mSLEIUDyLxFIYRFUpMT8fAyP/DGw8ubuLg4B0UkbEEKzUIIRvcIRZfD8FGroIEM/Ogzerz/OXo3NxJiYzi6eyNPf/2xnaIU9iBJQQgXZVpDUBTF7M9ZTVyYNWsWJStU4fqFM8THxrBx/hRmf/s1AQEBdotZ2J4kBSFElj43qTdc/O8YJ68l0fnNQca2Zt1e5uTJk44ITdiQ1BSEEDm6Fn2WUpUeMmsLqhDMsWPHHBSRsBXpKQibMhhU7iSlAODn5YFOJ+snnIVqMvFQ0zTIpqYwpkco/zUoTqe+r9H4qV7G9v8O7aVPq8cfeI/Y2Fj27NlDpUqVqF69unUCFzYlSUHY1J2kFKb/etDRYYgcmM5LV1X1vl13H3roIZ7r/ARLJg+nWv0mXLtwlqLqbZ5/fmK211y+fDkffRxG+YdDuH31ErXK+vPTTz/JoTZOTtYpCJu6FZ8kSaEAGNUjFLe7266oqmpWTxj1TEN0Oh2KonDixAl27dpF9erVadGiRbbXu3PnDg2atOC5Ud/g7uEFQPi6RXRv+jBvvvmmbd+MyBdJ2cKmTAck3utQjwAfT4fFIsypmsa4ux/+DxrUG7fqgHlD0Ue4eBW2L9+b7WtOReyhYu1GxoQAUOfxJ9m0aZ4kBScnSUHYlOk0R52i5DgXXjiGtffK8g8MImb3ZbO2mOuXqVixolXvI6xPkoIQwkzmBJGSnMSt8CX8tnUXep2O3t068tlnn6HX6x9wlUb02r2cPb/+H7WbPMHta5f4feHXbN2wzrbBi3yTKalCiAf67YdJXHErxSufz+XFsbP5+2wM48aNMy54y+6xePFiOjeqyunfZuN79SBbfltLcHCwo9+OyIEkBSFclJZpSqrpI4MhLY0bl6Oo1/xpY1vzZ17m/1bkfHysu7s7AwcOZNWqVUybNo2qVata9w0Im5DhIyFErnZLBfMprKJwkZ6CECJbH/dqTOvGj3Bo9yZj2+61P9H7mS4OjMpyly9fZtSoUfTo0YPJkyeTkJDg6JCcnqxTEDYVk5DM1PWRAHzQ8RGZkupEsjtkR9M04zqFMT1CSUxMZPDgwWza8Sc6BXp17UBYWNh9i9Cc7fS/mzdv8khIEy7o6oFXIMSeo2nlBHbt3O7w2JyZDB8J4aIsOSNcURR8fX357rvvLLrmF6vT1zSU9PfiwasfbG/Tsnlc0Gqi+FVJbyheh90ndrJ161aeeOIJh8bmzGT4SAhRKN28egk8Mm3r7RHAuXPnHBNQASE9BSGE1QT6pa9gfq3Nw3kaotm/fz+HDh0iNDSUOnXq5CuWoPjebH09DHxKA6BpKkrsKdq0aZOv6xZ2khSEEGYyT1XNq9wkBU3T6NevHwvWHQDv0hD/Fe+99CTTpk3L8/27dOnCgF4bmfXzWjSvQNyTLzFl3GAqV66c52u6AkkKQohszd16FMtrAxrXY5Pua7WkAL1hwwYWrD+CUr59ekOJR5j+4waef/5vGjdunMuo791n5syZDB36HydOnCA0NJSSJUvm6VquRJKCEMLmPs9hHcTWJcsgoyCcwa8Ku3btynNSyBAcHCwrqXNBkoIQ4j5jeoQaf7Z0GEjTNOZsOZqn+5UoWwn+3AF+le41Jl2nZs2aFl/jxo0b+Pv74+7unqcYRDpJCkIIM5ZMVc1K5vpDxp9N20d3D8ny+smd69H0z185cDkyvTAcF02LWl48/fTT9z03s3379vHKawM4cuYmAd7w8UdvM3jw4Dy9ByFJQQhhRZdup68Yzm64SFGU+5KHoih4enqyc8dWfvzxRyIjI2nc+EX69u2b5fNNJScn83SX3lwPaIdSxY8YTWVI2Dxq1qxJhw4drPfGXIgkBSGE3TV7eQYALUMzb5JXkaI1K/LvHRj73dYcr3Pm+AGuG0qjePgBoCg6tKBHWbJkiSSFPJKkIISwmqxqEaqqErZyP5D1EFN+tpxw8/AELc28UU3Dx8cnz9d0dZIUhBBWkV0twvRDf9uRC2iaRptW6QvTxr7S4oE1jOjoaMaPH8/+/Qdo0KA+I0eONDu9TdOeImL7Yo7ER6P4lkdLS0R/ZTv9+6+w0rtyPbLNhRDCKcXFxfF4iyeYtTmGvUnN+X5LHE2aP0FsbKzxIB+dTsfvG3/llebelI1ZS7MSh/lt+WxCQkIcHX6BJT0FIYTNmQ4raZrGJ5PWApAWm5Dt8NHBvzYTnVoZxb9ceoNvWS4lP8SSJUt44403jM8rXbo08+b9YLvgXYwkBSGETWUeHjJd4fygekJi/B1w8zZvdPPh2rVrVo1PmJOkIITIs9jYWJYuXcq1a9fo2LEjdevWteh1fyx42/hzdonheLsq1H60I5p/VRRFn76h3c1DdOky1iqxi6xJUhCikLHXYTfR0dE0af4EF9KqgJsPIyfM4dsJgxk4cOADX2fp4rhatWrx3eQRDB75BXFqEXx1cXz1xVCLE4/IGzl5TdiUnLxmf+lTQNMXj/l7e9jsPiv+9wV/HNeh+KaP+Wuais/FVVw+E4mfn5/V7hMfH8/p06cJDg6mSJEiVruuyJrMPhJC5EnU6WPgU8b4Z0XRkaD5c+rUKavex9fXl3r16klCsBMZPhKiEPLzSt8U7r2n69ls+Ojkr82YufESmPYUlDs89NBDVrn+zZs3iYqKombNmnh6Sg/TXqSnIEQhkzGH39aPESNGUC5tH9qNSLSYkyjn1vDVZ0OtMnQ0ZswYHm3zNK8NHUudkEdZs2aNFf5mhCWkpyCclkFViUtKBaCIlzs6G33jLWw0TTPbodRWPYXy5ctz/PABli5dytWrV+nY8XNq165tLHTn9b7r169n49/HeGHUNwCkJCXywfD3aN68OcWLF7da/CJrkhSE04pLSjUWqf28JSnkRuzdZGprRYoU4dVXXwXSC9wZu6Pm59/U2u/n0qhdT+OfPby8qfFoGzZv3kyfPn3yE66wgAwfCSGciq9/MRLu3DJrS7hzS47StBPpKYgC4bU2D9t0emVhomka036NdGgMo3uE5nn46KVGQbRq3xG/4iUpUaYCpyL2kHTxBK1bt872NfPmzWPmrO9JSEqmY/u2jB07Fm9v72yfL7InPQXhtEw/VOxVPC0Mj8wyagy2fmT17y+7x4NeW6lSJdavXMqdf9azadoQymtX2PDr+mzfy8KFC5m+cCVPfzCJ3qNncTLBm/79+1v5v0bXIT0FIQqhO4npNYWwbE5AcwbZnc6WoWrnd8g4guebLdmvffjhi6m8NHo6erf0abj1W3Zk0YRB3Lx5UwrTeeA0SSEhIcHRIQgbSEpMwZ30Q1Ayb78ghDUYUlNxczcfWtS7uZOSkuKgiAo2p0kKGzZscHQIwkZq6tP/mZKcDEVknNcesjoBzdYyn7D2oB10TH83unuIxfshZcX9ZF92rFvE452fByD65GHir55j2bJlvPLKK1bdcsMVOE1SEEJYR34+YPPDNPlkJAdLX2d6dGd218zOsGHDuDR4MD9+NhDFzZ3guo3pMPAzth4/yQ+t2rBrxzbZIiMXnCYpPPXUU44OQdhAbGIKc7ceBaC1bFUgLJBTrSErgS1e5PGi1TkVscfYYyhTpQaqqvLjjz8yYMAAa4dZaDlNUpCDtgunVPSk3v3PzFHfYIX9WDpspWlanj78H+T21UsEVQg2awsqH8zx446dnlvQOE1SEEIUbLlJ+pnrDabbcmTIba0hspoHLwwcSoPWnY1tpyL3MLDXkxZfQ0hSEEI4WHY9huzWXWTlwIED9HnhZcrWakTE9vWohjQu/necKkX1dO/e3ZrhFnqSFIQQTimnGUym3nr7XTq/O56AwFIAnDv6D1w6zNKlK2wZYqEkSUEI4RBZ1R9Mp7VaOoMpITaG28mKMSEAVHq4AeHL/2fFaF2HJAUhhN1lVyvIy5oKD28fEuNjUVUDOl36opik+FhKB8pq5ryQpCCEC0lISGDQoEFs2vknOkWhe8d2jB8/Hnd3d0eHZpSXhXd+Uc+z5LsJtOjxKqlJiWyYP4WZk8JsFWKhJklBCBeQsSjs3XffJaZIZV75bA4Af/7yM2PHjiUszDk+QPM6bfnDDz+kVq1aLFmyBB8fH5b8MJNGjRpZOTrXIBPHhXARny7dw+bd+6nbrL2xrUmn51i2+hcHRmU9nTt3ZtGiRcyePVsSQj5IUhDC5Vk2w0e4BkkKQrgIvd6NkuUrE7FjvbHtjzULebZHN4uvER0dzYcffkjXrl356quviI+Pt0WowoEkKQhRwKmqSprBQJrBgKqqDzwA5+l+gynHDRZ8/Do/fdqfxpUCGDNmTI7XV1WVy5cv06pte656V6FG5wGEn42lQ8dOFq8lEAWDFJqFKOBUTWOchXP63T28mD59Ot/msqD7+Yp97Fo1n0ZdXqFKnRAA6rfqxOYLZ9mxYwetWrXKbdjCSUlPQQhhkZgbVwkILG3WFhBYmqioKAdFJGxBegpCFCKjuoegz6IXYI1dSavWa8zh3ZsoU6UGAIa0NE7s3UGbse+ze/dujh49ymOPPUbdunXzdR/hWJIUhCjgTBd4ZbeJXHa7kuZGzUYtKRZ3hqWThxNYrjIX/j3IsHf68/777xMVr6N05ep8s3AFTzauzeTJk3P/RoRTkKQghIvJa49BURRmzJjB2bNnOXnyJKGhX7Ft2zZu6IrR4dX+ADRs04WV33xCREQE9evXt2bYwk6kpiCEyJXKlSuz504xvt16mikLVhFct7HZ74PrNSY8PNxB0Yn8kp6CEC4iL3sKwYPrESXLV+HK+VNUrPmIse3q+dPU6tEqTzGmpaVx/fp1goKC5KQ+B5G/dSFcgE6nM3tk1B4seWRmWo9Y9NVwrh7ayf7fV3Ph1BF2rVpAMS2G1q1b5zrGRYsWUbbyw5Sp0ZwKwbVZs2ZNvt6zyBvpKQghLJa5x+Dj48P2rVtYuHAhR4/+Q7+Oj9Or19e5LmQfPXqUFweMRqvUDaWEGxcNKfR86V3OHAmhfPny1nwLIgeSFIQQ+eLj48Mbb7zB5yv2cQqYsCYi19fYsXwuWokQFF36R5Ki9yAtoB6rV6/mnXfesXLE4kEkKQiXZlBVYhNTAfD1ckOXh0NeHM1wd1tsyNtUU0uY1iM0TTOeipbVVhp54eHlA+ol80Y1hSJFiuTruiL3JCkIlxabmMq0XyMdHYbVqDZICpkLvqpJEsrqyMzR3UNQFIVZs2bx8+LFeHp48MYbb9C7d+9s73GleUWq132UWO9SKJ5F0ZJuUFI7RY8ePaz3RoRFpNAshLBBJGpyAAAgAElEQVS6jz/+mCW//02bgV/w2CsfM2HmAubPn59tMbt06dL8sWUdXWpco0LcL/R6JJ4/tm3Az8/P0W/F5UhPQbg0nclo0fsdHsHP23mOpbSUQVWZsOoAgN2GvzJPb1VV1dhrGLvsLxYsW8vrYemnu+nd3Ony1ii+mTKEfv36ZXvNevXqsWbNatsGLnIkSUG4NNMpl3qdkuW+QQVJXg6+z62s1g+Y3teQloabh4fZ7/Vu7sQlJNo8NpF/khSEcCF//fUXGzZsoHz58vTp08eqhVzT3sP+n0tx8fQxylatBcCJfTtp27Kp1e4lbEeSghCFmKqqZJSFx4WF8enXS6Dow5C6m7AJk/grfAdBQUH5vk/m3sOc77/j2b7P8yfeGFJTqVLSh1mLFuX7PsL2JCkIUYipwLgV+4i7fYPJk+ejVL43m+fsHX+mTp3K+PHjrX7f8uXL88euHfz33394eHjIArQCRJKCEC7gWvQZNM+SmFUcfEoTEZH7hWa5ERwcbNPrC+sr2FU1IcQDZSSBoIoP4Z56zXyRWcJFQkJCHBKXJVRVJTIykvPnzzs6FJciSUGIQixjVpCvf1HGjRwA59aixfyLdm0/1b1P8cEHHzg4wqxFREQQXL0u9du8TOVH2tOjR08SE2X2kj3I8JEQBZzpt39V01Ay/TnD4CFDeOqpp9i4cSPlypXjmWeewcvLK1/3VlWVjDsoWGdKrKZp9Or7Mufcm6GU9wdg5d+H+fLLL/n000/zfX3xYJIUhE2ZfijFJaXm6kMjLjEly+sIc6Z/M+Oz2HbC9Hl169a16hnKGhB2d+dUDzfrDDxcv3ieU5fTUCr632ssVpu169ZLUrADSQrCphKS04w/z9lyNO/XSUqlqI+nNUISTs7Hzx9FzTRUZEiiVLmSjgnIxUhSEKKA0ysKI7unF4x1mQ7GUTWNcXe/ydtqrbO7Pv3KH3ZtaLVtNq7ufpLv1/4NgQ3AkITuwkaGTp9j9pwjR44wYuQojp38j+CK5Qj7/DMaNWpklfu7MkkKwqZKBfjw+hMPA+Dr6Y5Ol7vho9l3exc+XgVvTyJ70el0Fs0YscUWGKans2V3Ult2TBfWZa5HfDtjBrVrz2TVqlUUK16cd2fOo2XLlsZhxDt37tC5e286vf0ZIS9U4M6Nq/R6oR+7t6bXS0TeSVIQNuWm11GueP63UiiI5xw4g8xFaGtTTc5S0DQNcpMUwNiLyVKZx2g18DEAdl6Dncv3Gn/1z/ZfqNO6KyXKVADAv0QQj3V5iZ9//plhw4bl/o0II0kKQhRipmngqzUHbHKPVIN2371sLS0lOf1gHhPuHp4kJsbYMYrCSZKCEMIhTPsUo3qE5qo3eKlpeZq2eYrqDZviXcSflKREwtf+xKhlP+Y6jg0bNrBmzRpKlCjB66+/TuXKlXN9jcJEkoIQhZiO9A9csN46AlOqpjFx9X7j9XPDNBadouQqKZQrW5bvp09i2IiRxBt0eClpfPnJcGrWrGl2Mlzm+2T22Wef8en0FVCiAaTdYNr/WvDnjl+pU6dOLt9N4SFJQYhCzNIidH6YFprtqV27drRr146YmBj8/f3N7v/5g2oVdyUlxPHV1/NRKvU0tsV5+DFhwgQWufCOrrLNhRCiQAsICMhTQrpz4yoGfabjPj2KceLESStFVjBJT0EIkWeayeyj3M5uMn2+6cyl3Az/ZBdThtHdQ7I8KQ4gNbU+SyaN5qYhBUV/96S4uLO0fKZ5ru5X2EhSEELkmca92UcPnF5qwXVMWTL8Y4kHrZ2IjIzEx0tHleBkLt1M5cqZw1QvdpuRI7+zyr0LKkkKQohCy7Qnk9lbb79Hn4++xq94+vYZ545FwNk9lChRwp4hOh1JCkKIPMvP7CZLtuAY0yM018NHqqoSdndjwLBsNgiMi7lJnOpmTAgAlWrVZ8nSGbm6V2EkSUEIkWfWmt1k+sGf+efcJgVLnu/l60dC7B1U1YBOpwcgITaGMqWy3nRPVdVsaxOFjSQFIUShM+Zu7wWyTxIBF15k0azxNH/mFVKSEti0cCpzpn9l9pw5c+Yw5vOvuHIjjpaPPsx3/5tB9erVbRq7o0lSEEI4hJZp9pGWTbuiKLmakWRpz2LIkCHUrFmTpUuX4uvry/KFs2nQoIHx/ps2baL/0ElQoSNKUT3bo2/QvkM3Tp04hF6vt/BdFjySFIQQDhdmwWwja81IMhdE1c7vALDudBrrTt/bdG/F9KlQujnK3eElxasEZy/5sXv3blq0aGGDWJyDawySCSEKtOxmENlSeg0h8321Qt1LAOkpCCEcRAFGZzFzSdO0PPUKMhaqXb9+nalTp/LPP/9Qv359Bg0aRGBgYK6v17LkMNp0fR2tYicUnTta4hWqBybx+OOP5/paBYn0FIQQDqHT6dDffeh0OuNMo+xmIlkiMTGR1m3bcVYNpF6vQZzTStK6bTsSExPNrm/Jo1WrViz+fhw1tB14R/0fXWvHsXnDL3bf48nepKcghCgUwlbuJ3Lnr1Rq9CTVGzYFoHrDpty+donly5fz0ksv5fqaffr0oU+fPtYO1alJT0EI4fQs/XZ+58ZVAkoEmbUFlAjiwoULtgirUJKeghDCqWSekprxz9HdQ4ztpvWHjFXLo7uHEBGs5+V3h1O9YTMUnQ5NVTm4ayNDv/0yy3tFRkaye/duHn74YVq1amWjd1SwSFIQQjit3BScFUUhJCSE5zu3Yd6EDyhVpSZXzhynX5+uNGzY8L7nDxs2jE1/HSa4XmMWbQin2OTJrF61Cjc31/5YdO13L4QodD766CNeffVVDh8+TO3atSlVqtR9U1oPHTrExj2H6PHeZ8a2XasWsHTpUp577jl7h+xUJCkIIZyOJdtUQPbTV2ftPAf48ceu88D5+36/f8saqtQJNWsLrhvKnj17XD4pSKFZCOFUdHenqOqymKqa1SNDbqaKlixfhctn/zVru3z2JLVr17ba+8jKxYsXiY2Ntek98kt6CkKIAiu7onSG7E9ea0SvXhvYvmw2wXUbc+X8Ka4c3MELU7bYJM7jx4/T9/mXiTh1Cw99GgNe6sKUKVOccudVSQpCiEIhq2Ek095E5k31lixZwurVqwkPD+exxrV4burH+Pj42GRLjW49nuWEIQSlcnFSgWlL/qRatf/x9ttvW/1e+SVJQQjhMjISh4/H3Y8+92DKtAzmNjDz9xM2uefl86c5cVlFKV/8XmPJRixdukySghBCWFvmorTpyWumx3E6YlM9AE9vHzCkmDeqKQQE+DsknpxIUhBCFFhZjcmbFpyn/BJp/Nk0KQzu9IhF4/kJCQmMHz+e9b9upEzpIIYNG0rr1q1zGWUDjqybzdqIYyhFa6EZUlCiN/L2FOc8+tP5qhxCCOEk+vR5lvE/RnBQbc2G81V4sturhIeH53pzvZ9/XsRHfetQLXUjzYpHsvrHKbRv397Rby9LiuaoPpUQObiTmMLXv0QAMKhTffy9Pax+j9jEFKbcvcfgTvXxs8E9hH1ld0qb6bCSsabwANcvRTFxxAiUih2NbVrKHZ6tf4fFixdbMWLnIsNHQohCJbthoVxvwx13B/Re5o16T27evJnX0AoESQpCiHzZunUrW7duJTg4mGeffRYfHx9Hh5QtS1dKAxgM9Vg1YxzRKbEoHn7pjdcP0P3dF20ZosNJUhDCyeTmkHpH++CDD5i+aCf4PwQpfzFx8jT27N5B0aJFHR3afXK7UMzNzY01K36m93OvcPp8Gm4k89YLHejfv7+NInQOkhSEcEJfr0+vc5QtVgRnzQmXo8/xzYINKJW6GNtO3D7BrFmzGD58uAMjs56GDRty8lgkp0+fpkSJEhQrVszRIdmcJAUhRJ5E/XcSzbsUZjnLuxQHDx50VEg2oSgKDz30kKPDsBtJCkLYmaqqqHcn/ekybeoG6fPpyxRNH5fv3aSqTfbHiYyMxN3dnYcffjjP12hS3pOvv5hi3hh/gUaNnsxndMKRJCkIYWeqpjHu7tTI6mWK3jc8pGlw6XYCwH07gebXmTNn6NS1B0cvqIDKYzX8WbtmFSVLlsz1tSpVqsTHg15g7LT/u1tTuE1ohbRCP+Ze2ElSEMLJZN6awZpLiV5/4y2OJtVFKZ9+jvGeK1EMHjKUHxcuyNP1Pv30U7p168a2bduoUqUKnTp1cvmTywo6+bcnhAP1alIVfabhIVVV+Xp9+vYMS/88bbVCc1pqCtv+PIpStZ6xTSlSgXUbluXruvXr16d+/fr5DU84CUkKwmmpJt+Q45JSscUknLik1CzvZ0uZD4bJPDyU3mb9++rd3PHx1hOvqShKeiLS1DRKBxX+GTXCcpIUhNNKSE4z/jz79yN2uV+Aj6fN72OJQR3vffO2Zk1hVevGLNu2E61UE9AMcGELo74ZZbXri4JPkoIQTuZBs43ys7Bt6dKlLNt8BMq3R9Hp0e6cpmFVP158sXCv0BW5I0lBOK2gAG/6t00/M9fX0w2dDcZU4pJS+f5uL8TH07r/O6iqSvzd3o63h974AW4w+WDPSxE5qxPGLDF/3GQo1xZFpwdA8a/KgdNHiYqKokKFCnm6pih8JCkIp+Wm01G2mK/d7mftpBOfnGbcgTU7BlW9r9D8IPmZiWRITQG3TPdS9KSkpGT9AuGSJCkI4UBfrP4nz6/N/lD6+8XHx3NkWXWitodDmRYAaAmXaVSjKFWrVs1zDKLwkUN2hLARnUnH4/2n62X/RBtLTU2lbbv2pATW4O0Rg2lV3xP9uRW0qXyVlcv/z2FxCeckPQUhbMS0CKw3yRAjujVkwuoDAIzqHpKr4SPTg2Iy/pmTI39uwT+4IQ1adwagZfkquGux9OvQhPLly1t8b+EaJCkIYQeZ1yaY/pybGUR5mZ5683IUJcsHm7UFlq3EyZMnc30tUfhJUhCigMnNQTEA4WVTee/jidRs1MLY9u+BP3hrzCCL75mcnMyWLVvw8PCgdevW6PX63AUtCgxJCkLYgemsIVXVsmy3RF52TG3atCmt6j/Esq9HUaF6XaL+PUTbxrVp3ry5Ra//559/aN+pJ9cMZUBTqeJ/m62bf6Vy5cq5jkU4P0kKQtiB6Wf/F2sOGH9OS1Oz3D7b2iZNmsQb//7LP//8Q/3hb1CjRg2LE9Lrb77NNf+2KB7+AJxJvMKQocNYsTx/eyYJ5yRJQQgH+nJt3qek5ok+mBOH7sChvRY9PTUliQNHo1GqNjW2Kd6l2Lprua0iFA4mU1KFsAPTjsDIbiF81KWB44LJQlpaapbtbu6e+Hq7oakGY5tmSKZqpTL2Ck3YmfQUhLADs+mpeh06kymqo7uHmv3Znr7//nu+/nYWSQYILhvIN9Om3ncaW9nbw3lz2CS00k1BM6C7vJOxi2c4JF5he5IUhLCD7ArNGTKShqqqxvqDolh3h9TMNm/ezDcLltN75Az0bm7cvBxF9959ORJ5wOygnDfeeIPq1auzaNEiPDx8ePXVFYSEhNgsLuFYkhSEsAPTmu64Vfuy/Z2mQdjKvG14l1urvp1Gm2ffQn83ARQvXYHSNUPZuXMnbdq0MXtuq1ataNWqlV3iEo4lNQUhXJROr0c1pJm1GQxpuLu7Oygi4QykpyCEHeh0MOqZ9EVnipLeI8joMWQ3QmSLWsOVK1eYPHkyERER1CoTxKYfp9Nr0Dg8vHy4+N9x7pw9TNOmTXO+kCi0JCkIYQc6nQ43k22rDQbTMxXu1RkyLx14UE1BVVUyrqLk8FxI3ym1SbPWnFXrgE8tOH2RUsnRbPxmODfvxBNS72F+Wbs6TwvkROEhSUEIB3hQjSGr52RFBcbl4sCdf7at42xSeZQSldMb/KpwJfk2X737spy+JozkK4EQLiL21nVw9zNvdC/CxYsXHROQcErSUxDCATLXGO5NSdVyrDVkMP31qB6hOZ4cdyBYT6MnnkfzC0ZRlPRpsreO8vTTnz3wdSdOnGDz5s2UL1+eTp06mU1XFYWP9BSEcICMGoObm864mC3jkSGnGoHp73WKkuMjNCSEL0e+invUSrRLO/CIXsmkj9+kXr3sDwCaNm0aXZ5/nW3/3uTbpZt57PGm3L59O/9/AcJpScoXwomYLXLTNHhAXUHVMu22mkMSUVWVIUOH8kq/fhw/dozatWtTvHjxbDfGu379Ot/MXcTzo6ah06VvlX3kz/J8++23jB49OhfvShQkkhSEcCKmH8/jcrGIzZL9TjUgzFiY9mLbldPA6Wyf/9/hfZR9qLYxIQBUqR3CX6u/sTguUfDI8JEQIkuBZStx5Zz56WyXzpygTp069z338uXLXL161V6hCRuSnoIQTkSnwKju9xegs6JqmnFKam6XuI22oDAN4H5mF2u/G0/dpu25c+MKR7etZPuWTcbfX79+nRdefIlzNxLQNI0a5YqxcMECAgICchmRcBaSFIRwIjqdzuLuu2ktQMO8xpDl801+Nqgqik6XYzF7woQJtN++nQ0bNhBaswI/hO0kICDAeO+Bb79N6cadaFInPZH9u/8PhgwZwpw5cyx8F8LZSFIQooAyqz/kYhEbwIRVB3J+kpEvPqE9uAFM2/yvsVVVVf6MOMrrPYcY26qHNGPBx/NzFYtwLlJTEELkiU6nQ1NVszZVNeDlrs/mFaIgkJ6CEAWUjvRFa2DZ3kemNQjIua4wd+5cfpg3H4PBQN9n+/Dee+/ddw/tSC9+/3kmbZ59E03V2LhwKq+/IltmFGSSFIQooHJTfwDuW4+g3q0rZDD9wJ8+fTqLft3FU+9MRNEprFo6m5s3P+Wzz8xXP3/yyScEzpjBj18PRqfT8Xq/V+jfv3+e3o9wDpIUhHARmcvQGvB5NrWI2d/O5rWw2cY1Cm2efYuFn/Rn7NixZslDURTeeecd3nnnHRtFLexNagpCiPtommq2aA0gTVMwGAwOikjYi/QUhHAROmBE9xAmrNwPmK9tGNMj1KwHcGFzM47v3UnNRi0AOHv0AEX0Bs6cOUO1atXsGLWwN+kpCOEidDodeiX7Dfcydk7VNI2JEyeSeHI3i78cyqaF00hNSaZh1/6069aH9evX2zt0YUfSUxDCRY2722PILKPO0OC5EfzzyZs06/YyPv5FAShfvQ6jPx1Bx44d7RansC/pKQghspWWkmJMCABePkW4cScRNdP6BFF4SE9BCBeikL4+AQBNIyyb3gKk1xl2zS5PzPXLBASWBiDu9k3KlyxqPMf53LlzREdHExISgpeXl63DF3YgSUEIF6IzWZdgum4ho76QebrpxC8m0P3ZF6jXphs6nZ6I31eyaN73GAwGXnvtNfaeiCIgsDRXTh/im0lf0KFDB/u9GWETkhSEcFFa5kN6smhr2LAhB/b8wapVqzAYDMweu53AwEBmz55NdIovvQdPACA5MZ53h35Aq1at8PHxse8bEVYlSUEIke0iNoCiRYsS7V8XgJnbzwBnWDJ3MR1fHWp8jqe3L+VrhRAeHk7btm1tHa6wISk0CyFyza9YILG3rpu13bl5jbJlyzooImEt0lMQwoWNySg6c2+dwoN6DRmL3HrX+Yynu/WiQ/8RBJQsw+Hdm7l4+gi9+r7Aqy89z5AhQ7K9hnBu0lMQwkXpdDqzR1a7rGbeRC+jrUaNGvyyYgkpx7exYMQLePr4MnDyEnqNnMmKbfv59ttv7fEWhA1IT0EIkaUH9Rgyfley+XP47D1E3abtAFB0Op588V3mTXpfNskroKSnIITIM03TQGf+MaLT6UkzyOK2gkp6CkIIM7mpM4x/qTXHVpfidORfVH3kUQB2rVqAm6IxbNgw3nrrLapWrWqXuIV1SE9BCGFkSZ0hs7lz5pD07x/M/+RNZg9/mfg7N3n8peHc8KvGEx26cujQITtELqxFegpCCItl1WMoXrw4tXsNoWLbG6ye+RlPvTwIgMCyleg88BMmTpzIjz/+aO9QRR5JT0EIYRXxMTcoWrKMWVvxUuU4ffq0gyISeSE9BSFEjkzrDJB1jyGwfBViLv5HcmI8nt6+AJzYt4vWrVvbJUZnZzAY2LJlCwkJCTz55JP4+vo6OqQsSVIQQjyQLtPsouy2zXZzc2fKF5/z3rD3eSikOfExt1Biovjul1/sEaZTi46OpnXbpzh1yx907gQYPuDX1T/z+OOPOzq0+0hSEELkWeYeQ8eOHWnZsiVbt24lKCjIbh96mROVJQVyexoxYiSnDPVRSqcPr8Wk1ubVN97h+OEDDo7sfpIUhEszXbGbmJKGXme9D5OE5LQs71PY+fv7061bN7vfd8Kq9LMhSvh5YX4CteP98vtulKDuxj8r7r6cOBPD9evXCQwMdGBk95OkIFxaUqrB+PP/Nh222X0SUwz4FqIzaExrDJrJYT0ZZzzbm6X3VFWVtNQUPDzt+y+jZKkgbqcmoLilbyuuaSpFfRWKFi2awyvtT5KCECJXHlRjmL3lKI74lq5pqjEx9H/i4ftiBJgxYwafTpjGjZhkGtWtxNzvZ1KnTh27xFdz6gSe7PoSaSWbg84dru4hbNwg3Nyc7yPY+SISwo5K+HkxoF36B4OPpxs6K45FJySnMWNj+sItbw+91a4rcu+3337j3TEzoUIXlEAde2/d5unOPTh76qhdPphbtWpFRPhvzJ07l4SEBPr0+Z/TzspSNFca7BTCjhKSU/lq7T8ADOvSAB9PdwdHZBvOUORVVZUvVqcXbbOqKcz7cjh/XyiD4nlvuEa7vIsti8fTpk0be4bq9KSnIITIl6yGauwtp0Skd3MHzWDeqKl4enraMKqCSZKCEMJMfHw8U6ZMYdu2bQQHBzN06FBq1qzp6LByNOKZEOPPmZNEXd+hNO/wIlqFzih6D7SES9QqleKU6wQczfEpXgiRJ6qqmj0yZv7k99GhY2c+nr2HbdfqMXdnKo2atee///5z9Nt9oKw28jN9NG3alFULv6a+5x6KXllB7xADmzesd7r1DM5AegpCFGAPOggnL6JPHmbn4dso5e5+6/YOIi6gCbNmzWLixIlWvZe9de3ala5duzo6DKcnPQUhhFHc7RvgXsS80b0Ily5dckxAwu6kpyBEITCmR6hVhkJut63Gmjnfkqg2RNHdnS118xBeXvWYNWsW3bt3JygoKN/3Ec5LegpCOBFVVUkzGEgzGHKsE2SWeRw9L49ixYrx8w/TCLi6Fu3CVpRzqynldY1r7mXYdPgyjZq1YdeuXQ74mxH2Ij0FIZyIqmmMu7tlRL6vlcf1A127duVS+/ZERETw4UcjaNR3CAGBpQB4qP5jDPtoJHvCJTEUVpIUhCjE8leI1vPfxWu0vZsQAHwDinPxRgyqqjrF+gRhfZIUhHBSo7qHoH/AB6+maVaffZSZp5cP8TE38Q0oDkBSfCyBAb7ZJoSrV6+SmJhIpUqVbBqXsB1JCkI4EdMhnoxx/uxkris86M+ju4fk6Zt9q6BJvPTGOzTt9jKKoiN87Y/MnDz+vuclJibSr18/Iv+7hJuHF34k8vNPC6lcuXKu7ykcS5KCEIVATj2GByWYB9UeWrRowc5Nv7B48WIMBgOfrVtOcHDwfQno008/JaVkLZ7tMRiAy2dP8sqrr7N96+95eTvCgSQpCCFyHoaqmr5p3E8HbsCBG/f9+scV63hzwnzjn0tXrsbWmCSnPERGPJgkBSEKMNPDbjL3BFRVtejwG2tslOzu7klaSjJuHvc2mDOkJuPt7Z3vawv7kqQgRAGVU43ANEmEWTjNtVrqKWbM/B/xCYl069KJESNG4OHhkePrqqd9yPhvP6fLW6Nw8/AgfN0iOrRqgq+vr0X3Fc5DkoIQAoBDuzexYt8uug4Yj5uHJ3s3rWDAgAH88MMPOb62b9++uLu7M2PGWOITEujdqyeDBg2yQ9TC2iQpCFGIPWh4KUPGMNO+zSt5ceQ04xBQo3Y9WDT+fW7fvm3RWcI9e/akZ8+e1glcOIwkBSEcRFVVElPTD37xdEvf7tlgMhMov2P9lk5BzUgWaSkpZjUBAL27J4mJiU55wLywDUkKQjhIYqqBSXeP68yKasWTclNSUli2bBkHDhygQYMG9O7d26xWMKZHKBztxd6Ny2nUPv3b/uWz/1LSR0eZMmWsFodwfpIUhCiA0g/WSf9ZUR68r5HBYKD9U0+z/bgBfMrC4gN8P3suW7dsxs3NzdijGDFiBAMHDmTR+PfRu3sS5KvnxwXz7PF2hBORpCCEg+hMPseHdmmAl7seg6oyYdWBu7/P/oNeVWHcKsu2uDi+byfbjyahlLp79KRvOXad2MPatWvp3r278XkeHh7MmTOHmJgYEhMTKV26dO7flCjwZEcrIRzE9Nu9Xqeg1+nM9jqy1lGR16L+A+9MZyB4B3HkyJEsnx8QECAJwYVJT0GIAsg0X4x6JhSdLvsEsq14HFs2DQP/h+41xp3jscfeyvY1cXFx7Nu3j8qVK8v+RS5GegpCFECmvQidTnng44kn2vByp7po0ZvRbh1Bu/A7z7evRdu2bbO89tKlSylVuQ6te39EcP329O/f/779kUThJT0FIVzADz/8wJt//WWcfdSkSRPg/mmvN2/e5KU3h5FcvjuKLv3jYc66cFq1Wszzzz9v97iF/UlSEMJFbIrWQ1AjNl+Azcv3ZvmcY3/vINmrkjEhAFC0Fhs2bJCk4CJk+EgIYeRfIghSY80bU2MpV66cYwISdic9BSEKOFVV0UivMShkPWvJ8gN3GnFm68/8fuxQemE65TYBsX8xYMBEi2K5du0aHwwazJoNOwksVoThQ97lrbeyL2gL5yNJQQgnYvrhraoaClmvalZVk+dpGhNWWLYLKmR/4E5GMXn1qpXMnDmTbdu2UaVKFQYN+p2KFStatO1Gj5692RUdhFKuN+c0AwNGfkvx4sXp3bu3xfEJx5KkIIQTMf3cHb/Ksg96K+6GwcQ16QvngkI60iu0IwC7olLYFXUsx9devXCeXQevolRM34RPUfRoZZ9g7ty5knLYJEkAACAASURBVBQKEEkKQhQio3uEZrkSWtO0nE9XyydVVc0XUAAoCmlpBpveV1iXJAUhnIhepzDymRAgfZuL7Le71ozbXJguXMtuaCjz0E9WQ0GaplHS3wuAl1vWsHiX1XtqsXJGGPtuXkLxKZN+j0s7eWno+7m8jv2sX7+epUuX4uvrS//+/WnQoIGjQ3I4SQpCOBGdTkduP4tzux3G/O3H7/tCD+nDUNfuJBmvmZdtNtasWs6bbw3g123bKe7nxUcfvcnLL7+c6+tklnnxnDW2AJk8eTLDxi+AoEdBjWf2om5sXDWPNm3a5PvaBZkkBSGE1ZQtW5Z1a9egqmoeehoPljH8ZY0dodLSUpk4/lso3wNFSY8zrXxnPvt8nCQFRwcghLCPnE5hU1WV+dvTC8qapuXrkB9FUfJ9SJApa14LICk+luQ0vTEhAChu3vx37oJV71MQSVIQwgVY8q1dURSibyYAMG6l5VNc7cE0JYx64DoLy62bFsDx1DgU9yLp94iPpm2rpvm+bkEnSUGIAshsPYPJz5qm3T8DqBBQuJcY8lrvyKx5k1BS9p9EV7I+iXduEBf1O2Fhkfm+bkEnSUGIAsj0m/MEk/UM+R1kyWmIyVFUVSXsbu8lv0NbAMePH+ePyJO8NPxLY9u2pXrCw8Pp2bNnvq5d0ElSEEIAlg0xOYppgrLG0Nb+LWuo1tB8qKhag8fZuXOnJAVHByCEyD2dAqO6p3+r19AYf/eDMrff7VVVJTY2loCAACtH6NxKlKnAif1/mLVdv3iOJ2pWd1BEzkOSghAFkE6nM25xbFpTyM2Qz4IFC5gweRppOg8CPBWmTf6KZs2aWTlS67Hu0FYjOnRcy5+//Exw3UZcOX+a07t/YeGE7fm8bsEnSUEIF6OqKnv37mX8N3PoPXw6bu4exMfc5IXX3uTg3j/x9/d3dIj3scXQ1prVq1m0aBHh4dtpWqsWP3y+FT8/P6vfp6CRpCCECxoUNp3mz7yCm7sHAL4BxXm46dOsX7+evn37Ojg6+/Dw8KBfv37069fP0aE4FeetLAkhbMbN3YO0lBSztrSUZLy8vBwUkXAWkhSEcEGPtOzIlsX/I/7OLQCunj/NP7+vpESJEg6OTDiaDB8JUcBpmRavWTKDP7BsRdo+/zYLP36NpGKPEauriFqsE090foE/Ni3j0UcftV3AwqlJUhCiEAnLxZkJRYPKcCXeFyWwCgCKhz9pZZ/i66+/ZsmSJbYKUTg5GT4SwkUl3LkFbj7mjW4+XL161TEBCacgPQUhbMR0WCc51WB2GE5GW1bPzS2F9BPXMn7OaQ5/xilspStXp4guhrjUeBR33/Rf3jxEp36d7nv+pk2biIiIIDQ0lDZt2jjVFhjCuhTN2nvSCiEAuBWXxPTfDlr03A86PkKAj6eNI0qnqqrxbIKofw/xf9PGEWfwR1ETea5jI+bNm4e7u7vxud27d+c6/pR/qDbnTxykgk8aS5YskcRQSElPQQgXVqF6XQZ/s4jOVd0pXbo0ZcuWBe6ddLZ+/Xpu6Yvz5LNvAVDr0dZs+nE6W7ZsoW3btg6LW9iOJAUhbCTAx4P3nq4HgJeH/r5v1smpBqauT9+q2cPNceU9nU5Pw4YN0el0Zr0IgG1L11KhRj2z51eoUY/9+/dLUiikpNAshI3odDqKFfGiWBEvvD3c8XJ3M3t4uuuNz7X3UMyYHqGM7h6S4/NKV67OhVNHzdounDpK/fr173tuWloax44dIyYmxmpxCvtzuaRQuXJlFEXhk08+yfL3O3fuNB7icfbsWavd85133sn3dRRFYdKkSQDMnz8fRVG4fv16vq8rXItOp0On092XiDKfUzC6ewg/TRiEZ2w025fN4VTEn2z9v+8opt6iXbt2Zq/dtGkTdRo04rmBHxLa4knGjBljl/cirM9lh4+WL1/O2LFj72tfuXKlA6IRwrE+z2J9g6Io6PV61v+yjnXr1vHPP//Q88UudOzY0Sx5xMbG8tb7Q+kzfCpePulHW66f+xWha9bQtWtXu70HYR12TQopaQZ2H7/EvtNXSUhJw8fDjdCqQTStWQYPN33OF7CSkJAQ9u/fz/Hjx6lZs6bZ71atWmX8vRAC9Ho93bp1o0uXLny+Yh8Rqw6gN5lee+zvHVQNaWFMCACN2/dk9erVkhQKILsNH6WkGZiz5SjhJy6RkJIGQEJKGuEnLjFny1FS0gw5XMF6Hn30UcqVK8fy5cvN2vfu3cv58+fp0aOHWfvXX39NzZo18fb2ply5crz22mvcvHnT+PuoqCh69epFYGAgvr6+tG7dmoiICLNraJrGyJEjKVWqFD4+PnTs2JErV64Yfx8XF8c777xDuXLl8Pb2pnr16oSFheVq/vr8+fOpXbs2Xl5e1K5dm3nz5pn9/vDhwzz11FMULVoUf39/unTp8v/t3Xd8Tff/wPHXvdlLEk0igtopfoISVK3ETL8IElvVVqMDVTt2U7u1i9pp1UjstkaNmq1R1GhDbIqEWCHznN8faU5zM8i8Cd7P7+M+6p75Pp/vzX3fz/l8zufD5cuXDWKcNm0apUuXxtLSEk9PT7Zs2ZLh84uXT4C/p/Ya06a6wZwFGWVlW4Bnjw3bEZ49eSTjKL2kjJYUDv71D5FPoolXDL/k4hWVyCfRHPzrH2OFgk6nw8/PL1VSCAkJwcPDg7Jly2rLVq5cyeeff46fnx+rV6/ms88+Y926dfTv31/bpnXr1oSFhTFv3jwWLlzI06dPadq0KVFRUdo2QUFB7N27l6+++opJkyaxe/duhgwZoq3/5JNPWLNmDcOHD2f16tU0a9aMgIAAFi5cmKFrmjdvHj179sTHx4fvv/+e9957j169ejF79mwAoqOj8fHxIT4+nqVLl/LVV1/x999/4+vrqyWeoUOHMmbMGLp27crq1aupVKkSLVu2ZNOmTZkvZJHvJbUtpNfGAP+1MyS9dCQ+IDeiVVVG+Xkyys+TRaN6kRBxmdATB1EVhci7t/glaBZ9+vR5YQzLli2j5ju1qPR2NcaPH09sipFbhfFl6fbRzyevcvvB00ztcz3iMUo6P3rjFZUDf/3D1YjHGT6eq4M1PlWKZyqG5Pz9/ZkzZw5hYWGULl0aSEwKKceSDw0NpXfv3gQGBmrLLl68yI4dOwCIjIzk+PHjLFy4kPbt2wNQp04dBg4cyPXr17XbU/b29uzZswcLi8QHlM6fP8/27du1Y964cYOpU6dqY7u3atWK7du3c+zYi8eyiYqKYuTIkYwcOZKJEycC4Ofnx9OnT5k4cSIfffQR58+f5+bNmyxdulRrJPTw8CAwMJDIyEgeP37MzJkzWbRoET179gQSk93t27eZMGGC3AZ4DQVuSH0LNelPOKkzRtK/f9y6hcDAQLbN+IRSJUuy4YdVuLunntoy6fkHgKVLl7Jg9RaafToDE1NTfv95HZ988gnffPNNrlyPyBijtSmklxD+W2/cB6vr1q2Li4sL69evZ9iwYZw5c4bQ0FD8/f35+++/te0mTZoEQEREBKGhoVy8eJFffvmF+PjEW2COjo5UqFCBUaNGcf/+fRo1akTVqlXZuHGjwfnq16+vJQQANzc3Hjx4oL1PSjJXr14lLCyMs2fPcuXKFWrUqPHCazl8+DCPHj2iadOmPHnyRFveuHFjFixYwMWLFylTpgwuLi58+OGHDBo0iAYNGlCjRg0tzpCQEBRFoUmTJgbHaNq0KYMGDSI6OlrG2hfpcnR0ZNq0aRnaNqlR+9vpc+g+dgEmpolfQzV82rJq4kdERUVhY2OTa7GK58tSUsjKL/Rpm05obQlpsbYwpZtX+ayEkyV6vZ5WrVoRHBzMsGHDCA4OpkyZMnh4eBgkhd9//52+ffty6tQpihYtSvny5XF0dOT27dvaNrt372bKlCl8++23jBgxAicnJ3r27ElgYKA2jWDKidF1Op3Br6aVK1cyYsQIIiIiKFGiBJ6enjg4OGToWpLaJurWrZvm+oiICNzd3Tl06BBTp05l6tSpfPrppxQtWpRBgwYxePBg7Rhvvvlmmse4f/++9rSreLWlNxeyoih8EZJYe0jZfTWjku+jxMdpCUE7n4kpsbGxkhTykNFqCp6lXTj09z+p2hQATPU6PEu5GCsUjb+/P4sWLeLq1auEhISkamBWVRU/Pz8qVqzI3bt3tYazfv368dNPPwGJfyj29vbMnDmTmTNncv36dYKCghg5ciSlS5emd+/eL4zjr7/+onv37owYMYKAgACtRlG+fMaSZNKcumvXrqVw4cKp1lesWJGEhASKFi2qtVGEhoayYMECPvvsMzw8PChQoAB6vZ7du3djYpK6J5g0Gr4enjcXsk6n024fTQrJfu+8D9q25PiujVRr1ApIHIepVCF7HB0ds31skXVGa2iuXa4wjraWmKYYKdJUr8PR1pLa5VJ/meU2b29vHB0dmTp1KqdPn8bPz89g/b1797h58ybt2rXTvhTj4uI4cOCAts2RI0ewsrLi4sWLABQrVowRI0Zgb2/PtWvXMhTHmTNnUBSFHj16aAnh6tWrXLp0KUP7v/POO5iZmRETE0OdOnW0119//cXIkSMxNzdnzZo12Nvba43f7u7ujBkzBoBr165Rt25dFEXBxMTE4Bh79uxh2rRpBre+hMgJ165d40H4LcKvX+bSn8fYNHcsX381M6/Deu0ZraZgbmpCr4YVEp9TuHSXZzHxWFmY4lnK+M8pJDEzM8PX15cFCxZQrFgxqlevbrDeycmJEiVKMG3aNKytrXn69CmLFi3i6dOnREZG8ssvv1C7dm2KFy9O69atGThwII6Ojqxdu5YnT57g6+uboTiqVKmCqakpn376KT179tR6MhUqVIi///6bM2fOULFixXT3d3Z2ZuDAgXz00UfcvHmTsmXLcvz4cWbOnMmgQYOwtLSkYcOGWFhY8N5779G7d28sLCxYvHgxtra2NG7cmDfffJO2bdvSvn17RowYQeHChdm7dy8LFixg/vz52Spn8epI79ZSRimKwqSQ49y5dpFzNx/SakDiDxPnYiXx7tifzZs3Z7iGLHKHUR9eMzc1wbtiUbwrFjXmaZ/L39+fFStW0Lp16zQ/5CEhIfTt25fu3btTsmRJBg8eTO3atfH29mbChAns27ePkJAQBg8ezCeffIJer6d8+fJs2rQpVZJJT5kyZVi5ciWjR4+mU6dOeHp6snLlSq5cuULfvn1Zu3btc5MCwJQpU3BycmLevHncvn2bkiVLMmHCBD777DMAChUqRHBwMCNHjqR3795YWVlRuXJlduzYobUjBAUFMXr0aCZNmsTDhw956623WLx4sdYjSrzenndrKaOS/sbCb1yhUPEyBusKFS/L+T+2ZfscIntkPgUh8kh0XDxTNp4AYFirqliavXqjzly9epULFy5QtWpVChYsqHWuuHr1Kj5tutBp+H+3i37/eR0ta5bN0PMNIve8ep9CIUSeU1WVjz/+mPnf7UQ1L4hF3G1mTx6hfeGXLFmSrv7/Y9W0z3GvVpd7t65i9ewuXedPyuPIhdQUhMgj6dUUFEUhLiHxF7WZSdpPGud3mzZtonXvL9C5eQGgqgnor4Rw9dwBihb97/ZxaGgo+/bto0yZMnh7e+dRtCI5qSkIkc/EJShM/jdZvKy2fRsEjv81GOt0Jih2Zfnll1/o2rWrttzd3T3NJ59F3nnt5lMQQuS+Ak6FIPaR4cK4RxQrVixvAhIZJjUFIfKx4a2q5mh37f379zNy9Biu3Y6guJszX06aSO3atXPs+Enu1itO5WrvcueJBVi8AY+v8K67hdwieglIUhAin0nehpB84LmUkg+TknK/tNy6dYsuvfvTbsh0GjsU5MmDe3Tu0Zffft2Fq6tr9gNPplChQhz/7VdmzZrF33//TZ063vTv3/+lbB953UhSEOIlltaMaek5vHU1NZt1xtahIAC2Dm9Q/X8dWLduHR9//HGOx1akSBGmTp2a48cVuUvaFIR4TaioqX6p63S6LA1sJ15dUlMQ4hUQ4O/5wlszN94pTN3GzShRoSrWBRyIehTJ0R9/YNae7c/dD+Dnn38mKCgIc3NzevXqxbvvvptToYt8RpKCEPlYbFwCqCqmGXhe4UXrixUrxrIFsxgxagw3wiMp5uLIsm9m4+rqqrVPpHWM+fPns3D1Zrzbf0hCfBxdB3zGtLHDaNWqVdYvTORbr1VS8PLyYt++faxatYr333/fYN2VK1coWbIk69ato02bNhk63smTJ9m4cSNDhw7F2to6zW26devGihUrqFevHvv27Uu1/tmzZzg7OxMVFcWyZcvo1q1bpq8ro/bu3Yu3tzdHjx7F0zPzc/EmWb58Od27dyc8PBwnJye8vLywtbVl69atORitAJix9eSLN8oEb29vjhzar71XFOW57RKqqrJk1jd0H79Qm/ug7aBAJk8NkKTwinot2xQ+//xzHj169OINX+DkyZOMHz+ep09fPDXpgQMHtIlsktu+fbvBXM5C5CfxcbGYmlsYTIZjYWVDeOTDPIxK5Caj1hSePI1h+vK9zF9zmHsPo3jD3ob+7WsxpJsXttbGGa+/dOnSXLlyhXHjxjFzpnHGbi9btix37txhw4YN9O3b12BdSEgI1apV4/jx7E1aEhsbi7m5ebaOIfKvEa2qYpbieQVVVTPV++hF0muX+PXbAty/fYOCronDU9y8eJYab3tk6tiHDx8mNDSU2rVrU6ZMmRfvIPKM0WoKT57GUOv9OUxdvpeIB1GoKkQ8iGLq8r3Uen8OT57GGCWOcuXK8fHHHzNnzhzOnj373G1PnTpFkyZNsLGxwcHBgY4dO3Ljxg0Axo0bpw0p7ezszPLly9M9jrm5Oc2bN2f9+vUGy+Pi4tiyZUuqGd8gsWHv3XffxdbWFicnJ/73v/9x6tQpbf24ceMoWrQoW7dupXTp0gwbNgyAzZs3U7VqVaytrXF1dWXAgAE8e/bM4NhXr16lcePGWFtbU7hwYW0e6iS///47jRs3xt7eHgcHB+rXr8+ePXueW1bJPXz4kH79+uHi4oKtrS3NmjXj3LlzBtssWbKE8uXLY2lpyZtvvklAQIBBv/ubN2/SsWNHHBwcsLe3p1OnTlrZvyqS9/qJjU8weKWU9LxC8ldax8vsKyPnmT9nNtsXjmf3D9+wM2gOR9fPZ1oGu5rGxcXh69uSd1sMoNuoINyrvUdgYGAmSkkYm9FqCtOX7yXsxj2iYwznaY6OiSfsxj2mL9/LuP5NjRLLhAkTWLt2LQMGDGDv3r1pbhMWFka9evWoUKECCxYsQFEUZsyYQe3atTl58iTvv/8+jx8/ZubMmaxZs+aFT4X6+/vTvn17IiIicHJyAhLndn78+DEtW7Zk5MiR2rYXLlygVatW+Pr6MnjwYB4/fszUqVPx8fHh1q1b2hfC/fv36du3LyNGjMDLy4uTJ0/i7+9P3759GTNmDBcuXNC+8OfNm6cdv3fv3nTp0oU+ffoQEhJCQEAAtWrVomHDhjx8+BAfHx/efvttFi5cSEJCAnPmzKFZs2bcvHnzhVMlxsfH4+Pjw82bN5k4cSIODg7MnTtXK7fixYuzZcsW+vTpQ0BAAFWqVOHEiRNMnjyZAgUKaLf26tevj6WlJbNmzUKn0zFt2jTq1q3LyZMnU813/bJKGvQO4Kutp56z5YvlZI0hSVKSrlChAqdPHOXAgQOYm5vz7rvvZrgr63fffceWow/QFWmYuOCNKoyeuowOHTpQqlSpHI9ZZF+WksLAqZs49fetTO1z6OQV4uKVNNdFx8Tz5ZLd7DueseknASq/5cbXQ1tmKoYkdnZ2zJgxg44dO7J69Wo6duyYapuJEydiaWnJrl27tEnEmzRpQvHixVm0aBHDhg3DwyOxCt2gQQPtiz49Pj4+mJubs2nTJnr27AlAcHAwderUwcXFcH7q8+fPU6lSJVavXq3Nl2xjY0P79u25efOmNsrks2fPWLZsGY0bNwbgq6++QlEUpk2bhqWlJZA4t/KxY4ZfGL1792bKlCkAtGrVis2bN7Nv3z4aNmzIxYsXKVSoEOvXr9cSQNmyZalZsyZnz56lTp06z73O1atXc+zYMf7880/KlSsHQPPmzSlRogSzZ89mxowZ7NqV+ATtuHHjtBisra21tpVZs2Zx7949Lly4oJVrw4YNKVmyJCtXrsyVB61E2uZvPwPAm862UKAkAFtPXM3w/qs3bQe7kgbLVJviHDp0SJJCPmW0mkJ6CSGj63Nahw4dWLJkCUOGDKF58+ap1u/atYvWrVtrCQHAzc2NqlWrcuTIkUyfz9ramvfee4/169fTs2dPFEVh06ZNjB49OtW2vr6++Pr6EhUVRWhoKJcuXWLFihVA4i/xJKampjRo0EB7X7NmTXQ6HU2aNKFPnz54e3vTo0cPevToYXD8Jk2aaP82MzPDycmJBw8eAFCtWjXOnz9PTEwMf/75J5cuXSI4ODjVudOzfft23nrrLYoWLcqTJ0+05fXr1+fw4cMAvPvuu8yePRtfX18++OADvLy8GD58uMExatWqhaWlpXYMe3t7KleuzOHDh1+ZpGBrYcag5pUBsDA10WqAsfEJzNiSsV5HOTU9JpDqlpKqqqj8+14FnnP4hIQEoh4/ws7ewSCOIsVLwYlTYOX838bREdoPBpH/ZCkpZOUXukv9cUQ8SL+XjbOjDXuW9MtKOFk2b948PDw8mDBhAgMGDDBYd/fu3TRHdCxQoAAxMVlr//D396dr1648ePCAU6dOER4eTuvWrVNtd+fOHfr06cOPP/6Io6MjZcuWTVWbALCwsNBqEpD4Zbtz505mz57NgAEDePToEW+//TaBgYH4+Pho26W8/aLT6bRbBVFRUfTv35+1a9diZWVF6dKlKVu2bIav8c6dO5w9exY7O7tU65KO0759e8zMzFi4cCEffPABMTEx1K5dmxkzZlC9enXu3LnDwYMH0zzGi25fvUz0ej0FrLLewSInp8cE2PbHVZJ/86uqQlJOaFa1eLrnCwoKYsjISdx9GE9JV2u+mTtDq73WLT2EX3+qS1ikCpZvwKNL+HuXzVaXaJG7jFZT6N++FlOX703VpgBgaWFKv3a1jBWKxt3dnSFDhjBt2jSDX9wArq6uREREpNrn2rVrNGzYMEvna968OXq9ns2bN3P8+HFq1KhB0aJFU51n8ODB/PHHH5w+fVqbxHzNmjVs3LjxucePi4ujTp06eHt7k5CQwO+//87YsWNp1aoV4eHhGYoxMDCQjRs3snv3bmrVSvz/5LfffmP16tUZ2r9AgQJUrlyZuXPnplqXdEsrNjYWX19f/Pz8iIuL49dff2XYsMSHoW7evEmBAgXw8fFh1KhRqY7h4OCQoTiEcZw6dYquH41DfdMXXUFTLsdH07J9L66FHsfZ2RlHR0eO/36QpUuXEhoaSr16A2jXrl1ehy2ew2hJYUg3L4J3/ZmqsdnSwpTSRd9gSDcvY4ViYPTo0Xz//fcMGjTIYLmnpyebNm1i6tSpmJmZAfDnn38SGhrKF198kaVz2dnZ0bhxY9avX8/Jkyf56KOP0tzu1KlTeHl5aQkBEhulX2TAgAGcO3eOAwcOYGJiQq1atejXrx87d+7k7t27GYrx1KlTVK5cWUsIGT13krp167Jnzx4qV66s/dJXFIV27drh4eGBp6cnzZs3x8XFhaCgIMzMzGjYsCGdO3fm888/JyYmhrp16/LTTz9Rq1YtrSb05MkTWrVqRbt27ahYsWKG4xEvlt4tKEVRmL8jsU1h24mrkMbtqVXzF6M6eaLTJ36V6EwtibYtz+bNm7W2M3t7+1R/XyL/MlqXVFtrCw4HfczQbl44O9qg1+lwdrRhaDcvDgd9bLTnFFKysrLShvdNbuzYsVy7dg0fHx++++47VqxYQZs2bahcuTJ+fn4A2pdeUFBQhrtL+vv7s3XrVq5fv64dJyVPT082bNjA/PnzWbt2LR06dOCXX34BErucxsXFpbmfn58fBw8epGfPnqxbt44lS5YwdOhQqlSpkuFGPU9PTw4dOsTkyZMJCQmhb9++WnfbXbt2aW0P6enRowcFCxakSZMmrFy5ku+//57mzZvz448/ak/A+vn58cMPP/DZZ58REhLC3LlzmTx5Ms2aNcPCwoLPPvuMiIgIfH19Wb16NStWrKBRo0acPn2aZs2aZeg6RMbo9XqDV6ouqf/+L732BAsLS1BS1P6V+HSf8BcvAfU1Ur9+fbVZs2ZprmvRooUKqOvWrdOWbd++XfX09FTNzc3VggULqp07d1b/+ecfbX1kZKRarVo11czMTF2zZk2ax+3atav6f//3f9r7e/fuqaampmqlSpW0ZeHh4SqgLlu2THvv5+en2traqm5uburQoUO1c9na2qqPHj1Sx44dq9rY2KQ639dff62WLl1aNTMzU11dXdUOHTqo169fV1VVVffs2aMC6tGjRw32KV68uDpgwABVVVX12bNnao8ePVQHBwf1jTfeUPv06aPeu3dPbd68uWplZaWeO3dOXbZsmQqo4eHhaZbrjRs31LZt26p2dnaqnZ2d6u3trR48eFBbn5CQoI4aNUotWrSoamZmphYtWlTt27evev/+fW2bc+fOqT4+PqqVlZXq4OCgtmjRQj137lyaZfyqiYmLV8et/c3gFRsXb/Q4EhISDF6KoqR6XblyRTWzdVUp/6GqqzRExb2bWqhIKTUqKsro8YqcoVNVGTdXiPwkNj6BLzcYPuE+snW1VE80p6QoCvFK4p+zqT79yXly0tSpUxk+bQ0UrgeqCrd2M35gW8aMGZPr5xa5Q5KCEPlMVpNCWvvltin92vLMra2WgFQ1geLPtnPlwvNHCxD512s5IJ4QIvsURSE6OiHF9KEmREQ+ec5eIr97rYbOFuJlkFblPbMV+hGtq2Fmkvu/+U58V42t526hs3EDQH1yjZY+9XL9vCL3SFIQIp+JT0idqs35SgAAIABJREFUAOITVMzNnr+f4S9247QpzJ0zm/1VPXEr0x57Z1eU+3ri42Jz/bwi90hSEEI8V/LRa8Ew+ezfv5+azTrxbovO/y5pwtbFkzly5AjvvPOOEaMUOUWSghD5jJW5CUNavE1cvMKsnxJHTzU1yf1f/c+T3iis29f8RPkaXgbLirlX4sSJE5IUXlLS0CxEPqPX67GxNMPG8r/fbMa4FZQZd29c4tH9uxQu+RY3LpwxWHc99E/efvvtPIpMZJfUFIR4TTzvNtDzJG/k9itnRZduPdDbFyb66RPKF3Ek5n4kvwYvxbWEO5fOHKW8q43BMCni5SJJQYjXSHYn4+nR+0PqdxuhTc15cu9W6pRXqFatGmfPnqX7wJ5ZHjBS5A+SFIQQGfIg/B+e6W20hABQxas5Gyf3Z9KkSWkOAy9ePq9Vm4KXlxc6nY6goKBU665cuYJOp0s1j/LznDx5knHjxvH06dM0169btw6dTseaNWsMloeGhqLT6ahWrVqqffz9/bGwsEg1r3JWeXl5pTmJUHIlSpRId8TWrLpy5Qrjxo3j1q3MzdAnjCPA35Mxbaq/8DWqdVVtHwtrW6KjHhscJ/rpE954hea4EK9ZUkiSNA9wdp08eZLx48enmxSSklDSjGNJdu3ape1/7949g3VHjhyhRo0aWFlZZTu+jFqxYkWqSYay68qVK4wfP16SQj6S1nMMGXklJMSzd/23BE36hKh7tzi4aRUJ8XE8ffSA4FkBDB4sw2K/SoyaFOLj4zl37hxbt24lJCSErVu3cu7cuQxN85hTSpcuTXh4uDY/cG5ydnamfPnyaSaFWrVqodfrDeYquHbtGrdu3cLb2zvXY0uufv36BnM3CJHczlVzMLewoveXy+gzYw2PH0QQNPoDzm2cw9zJY/nf//6X1yGKHGS0pBAfH8+ePXsIDQ0lNjbxicfY2FhCQ0PZs2eP0RJDuXLl+Pjjj5kzZw5nzz5/0K5Tp07RpEkTbGxscHBwoGPHjtq8CePGjaN79+5A4pd/0pwDKXl5eXHy5EltCk9FUdizZw/+/v5Ur15dqzUAWvLw8vLSlgUFBVGlShWsra0pVKgQ7dq148qVK9r6yMhIevXqReHChbGysqJ69eppTorz9ddfU6xYMaysrKhbty6hoaHauuS3j5YvX45Op+PMmTN4e3tjZWVFsWLF+OabbwyOd/DgQWrUqIGlpSUeHh5s2bKFEiVKsHz5cpYvX64lturVq2sJ+OnTpwwaNAg3NzcsLS3x9PRky5Yt2jH37t2LTqdj//79tGzZEhsbG1xcXIySwEXa4uPjuXnxnPZwml5vQtMun2JTwIEtW7YYzPctXg1GSwqhoaFERUWl6hanKIo2Qb2xTJgwARcXl+feMgkLC6NevXo8fvyYBQsW8PXXX3PmzBlq165NZGQk77//PoMHDwYSp8pMmpM2JS8vL2JjYzl+PHH0ymPHjvHgwQMaNWpEo0aNUiUFc3NzrTvfvn37+OCDD6hVqxZBQUGMGzeOAwcO0KFDB22f3r17s3v3bqZMmcKyZctwcnKiWbNmXL9+Xdtm//79LFq0iIkTJzJr1izOnz+vzYqVnqZNm9KwYUNWrFhBqVKl6N+/vzYR0dmzZ2ncuDEFCxYkKCiI7t270717d+7cuQNA48aNmTJlCgCzZ8/m/fffB6Bdu3Z8++23DBw4kNWrV1OpUiVatmxJcHCwwbn9/Pxwd3dn5cqV1KlTh/Hjx7Nz587nxityh6qq6EwMR2fV6fXExBqvdi+MK0u9j06dOsXDhw8ztc+9e/fSHdRLURT+/vvvNOdETo+9vT2VK1fOVAxJ7OzsmDFjBh07dmT16tV07Ngx1TYTJ07E0tKSXbt2YWNjA0CTJk0oXrw4ixYtYtiwYXh4eADQoEEDnJyc0jxXUrvCkSNHePfdd9m1axcuLi5UqlSJhw8fMnHiRC5fvkzJkiU5fPgw77zzjtaecO7cOZo3b86CBQu04z1+/JiRI0dq73fu3MmAAQP44IMPAPD19aVz585cvnyZYsWKAYm/9n799VctxvDwcMaMGUN8fDympml/BD7//HMGDhwIQI0aNShZsiQHDhzgrbfe4osvvsDNzY2tW7dq+5cqVUrrfVKkSBFq1KgBQK1atShTpgx79+5l27ZtrF27lrZt2wLQunVr7ty5w+jRo/H399fO3blzZ6ZNmwZAs2bNcHR05Ndff0038YrUYuMTMNEZtiMk//tTVTVDzymYm5vjWaEUYad/o3SlmgCc3LeN5k0Nu51GRkaybNkywsLC8PLywt/fH73+tWyyfOkZrUvqi0Z5NPa0Dh06dGDJkiUMGTIkzd45u3btonXr1lpCAHBzc6Nq1aocOXIkw+dJ2a6wa9cuGjVqhE6no1atWtjY2LBr1y66dOnCyZMnGT58uLZvv3796NevHw8fPiQ0NJSwsDBCQkJISEjQtqlduzazZs1Cr9fj4+NDzZo12bBhg0EMVatWNUhabm5uKIrCo0ePKFiwYJpxJ58qtHjx4gDaD4G9e/fStm1bg4Ti6+urzWWdll27dmFtbZ1qCtLmzZvTv39/gx8ZybextLTExcUl0z9CXnfTN/+Rrf2T1+i/WbCAXr17E7T1e1RFoc7b5Zk0f772N3vv3j08a9blanxpMHdk/vqveH/zZlatWpWtGETeyFJSyMov9K1bt2ptCWkxNzenXj3jDrk7b948PDw8mDBhQqpbSXfv3tV+aSdXoEABrX0go7y8vNi8eTPPnj3j0KFD2v15MzMz6tWrx65du6hQoQKxsbEG7QkXLlygd+/e7N+/H1dXV9zd3bV5oZOsWbOG6dOnExwcTGBgIHZ2drRv356vv/5amyfX3t7eYJ+kX4gpb+Ull3yO3ZTbh4eH4+rqarC9Xq9Pt7YEieXp5uaGSYpbEQUKFAAwKNOU8/vqdLrnxipyR/IH3ap2HkmFp0/Q600wt7Ri2rb/hrb4NWQ5VxPc0Tm4Jy6wdiVo288M/fNPrTYtXh5Gq9+VKlUq3eqkXq/P8MTyOcnd3Z0hQ4Zo99mTc3V1TfN21rVr1yhRokSmzuPl5cWNGzdYvXo1MTExNGrUSFvXqFEjdu/ezcGDB7GwsDAYHqBbt248fPiQq1evcvPmTfbs2WOwr6qqmJmZMW7cOM6cOcOdO3eYMmUKq1at4osvvshUjJlhZWXFgwcPDJbFxsZy//79dPdxdXVN1f0WEsvTysoKFxeXHI/zdTeidTWDZw4C/D2zdTxLa1vMLVN3lY64dQUsU/wgsHxDa4MSLxejJQV3d3dsbGxSJQa9Xo+NjQ3u7u7GCsXA6NGjKVKkCIMGGfa19vT0ZNOmTcTFxWnL/vzzT0JDQ2nQoEGmzpHUrvDll19Srlw5ihb974nQRo0aERERweLFi3nnnXewtLTU1p06dYoWLVoYbL9nzx7t3//88w9WVlb88ssvQOKtqr59++Lu7s61a9cyFWNmVK5cmZ9//tlg2fr1659bg/L09CQyMlKLNUlwcHCmy/N1kfyWalyCkqFXcmk9c5D82IqioCgKqqqm+Uoy2u+/5DLAuxTVbSLoVMVRW9avoy88vmJwbH3UNRkl9SVltDYFU1NTvL29CQ0N5dKlS8TGxmJubk6pUqVwd3dPt8Ezt1lZWTFr1ixatmxpsHzs2LFUq1YNHx8fevToQXx8PIGBgVSuXFm75510KycoKIg2bdoYfHknl9SucO7cOT7++GODdR4eHhQqVIiLFy/SuXNng3Wenp58++23lCpVCjMzM1auXMnFixeBxC/hNm3aULNmTXr27MmwYcNwc3Nj586dnD59Ole7cQ4cOJA2bdrg7+9Px44duXTpEtOnT8fMzEz74kkqm+DgYOzt7WnRogXVq1enffv2jB49mhIlSrB+/XpOnTrF/Pnzcy3Wl1m88t8X87RsthGkNCkk43M5JyWUxYsXM2X2QoqVr0rErSvULPcmixcvpnv37gSHbGDXH3vBwgHd48tMHt0v3b8Hkb8ZtXuAqakpFSpUoHnz5vj5+dG8eXMqVKiQZwkhia+vLy1atDBYVrlyZX788UcePXpEjx49GDx4MNWrV+fnn3/WajsNGzakWrVqDB06lEOHDj33HEn99pPf/oHEP7ikX8rJ2xMAli1bRoUKFRgwYAABAQE0aNCAAwcOULp0aYYMGQLA6tWr8fDwYPjw4XTq1In9+/ezfPnyXB2Hxt/fnw0bNnDp0iW6dOnCsmXLWLZsGTqdDgcHBwCqVKlC48aNmTFjBhs3bkSn07FlyxaaNm3KuHHj6NixIxcuXGDLli1aTyWRP6mqys2bN5kyZzGdR83Gq20v2nw6iQuRCuvXr8fCwoKdO7bza8hMlk7sxMU/dvD555/nddgii3Sqsbv9iJfeH3/8QUxMjMHtgdOnT1O5cmVCQ0MpW7ZsHkb36lAUhei4xJ5mpib6F3YhjUtQmLbphPZ+pJ+nwTzNqqoyYf1Rg30C/D3TPK6iKAa1idMHtvPs8UNqvtdOW3b7ygUSLuxj0aJFmbswka/JKKki07Zv387o0aMZP348Hh4e3Llzh+nTp9OkSRNJCDlIr9djbZFzlfn0fv+llRRSLrN3KsQ/YYadMR6E/0PFf7sri1eHJAWRaZ9//jlPnz5l6dKl3Lhxg4IFC9KqVSsmT56c16GJHHL8+HH2LBhJ2I07uDjYMi5gJLN+jeD4Lxsp+/a7RNy4wrEty5m1L/WQKuLlJklBZJqJiQkTJkxgwoQJeR2KyCHJnwN59OgR7Tp3pfWgKXg7FSL66RM+HTGU9SsXsX//fn7dsQx3d3f2/bJDuhK/gqRNQYhXRFyCQmDIfw+cpWxTSPriV1VVay8I8PdEr9ejKIr2sNrp/T8T/fQJNZq20fa9fOYYReJv5urzLyJ/kJqCEK+JpF5zKZ8OT/lcAmm0MWR0rCTx8pOkIMRrLOWczU8e3KO4SSRBPwXjXrU2Ds6FiY56zK/BS/gp+Ps8ilIYkyQFIQSQOLVm0JeDaNihL13HfcPV8ycJnhWAa0E75k//gnLlyuV1iMIIJCkI8RpKPg5S0oCDLfoMp9b/OlD27XcB+L9aDbl36yoDOzfjvffey6tQhZHJgOdCvGb0er3BK2kYi0cRd7B3Nhz91t7JNVfH0RL5jyQFIQQAYz/qwpmD/81wpygJnD3yC48ePWLLli1GnUtd5B1JCkII9Ho9jRs3xqtyKX6Y+jm71ywkaNInRD95xKHLj/j6+x/xrPEO4eHheR2qyGXynIIQr4gXPaeQlpTdU3U6HdevX+fUqVMMGjaaDqPmYGaeOJx72OnfcIq6zMyZM3M+eJFvSEOzEK+5lN1SAe5ce4yDWyktIQCUqlidn2Z+Z8zQRB6Q20dCiFTsnVy5d/s6arKaRPiNy5Qr91YeRiWMQWoKQggg9TDadjf9WLtgItUb+xMb84yzh3fx6J/LbNiwIVfn6xB5S5KCEK+IlM2DGWkuTDlFZ3IjRoygaNFVjJ06m84jZlLKozqx0U8ZPHowVatWpbgMm/1KkqQgxCsi+fSdSe/NX7BP8kSQfKC8JPt/PkKtZh20tgVzS2uqN21DSEhIqnnNxatB2hSEeI0pyZJCfEJCqvXmltbExkQbLIuNfoatrW2uxybyhiQFIV4RlqZ6Bjavor031WduVNMpm09p/65sdotD3wYQcXY/hzYu5/7tGwBE3LrK6V3BtGvXLr3DiJec3D4S4hWh1+uxNv/vTzqrQ12fO7KbNQe207J/AGbmlhzaEsS2WUMxs7Ll/94qw7ZNwdjb2+dU2CKfkaQghDDw28/reH/EV5hZJLYj1G3djatnj3Hs0B5sbGzyODqR2+T2kRDCQFxMtJYQkpiYWxEVFZVHEQljkpqCEK+xlN1QR7WuStTRZpze/zOV6voAiQ+tOVnp0p2P+dq1a6xduxa9Xk/79u0pUqRIrsctco8kBSGEgTFjxtC1a1fWTN+DuZU1ZtH3+X7VyjSfe9i5cyfN2/YkzrEaqCqjJ33Nzi2rqV27dh5ELnKCJAUhhIEZP52jUodhlLgfTlzMM94o/Cbfn4yEk0dTbTv380HEFW2JztQKgGc2RRgydASHD/5q7LBFDpGkIIRIU4GCzs9drygJRIQ/QGdvpS3Tmdlw6vyVXI5M5CZJCkK8xvR6w74mybuxphwLKS3BgW6cjX+KztQaADXuMVUrln7heWNjYzlz5gzFihXD2fn5yUcYlyQFIUS6XpQU5nw9lf/5dSW6QCVQVWyiTjNj2frn7rN161YGDR+NY5EyPAy/RYsG7zJ9+vScDFtkgyQFIYQm5dhHL+Lt7c2lc7+xfv16TExMaNNmWbq9lBRF4eHDh3z8+Sg6jZyFuWVi7WLHqtmsX7+eNm3aZDt+kX2SFIQQ2VK4cGE+/vjjDG3b/8tvKVO1jpYQAKo2bMmWLVskKeQT8vCaEAKAka2rMqp1Ve29qqo5/rKxL8iTh/cNzhv1MDLd2oUwPqkpCCGAxEbn5C0Imb2VlBHF3D3YvvJrzh7+hXLV63H/zk12rpjJ3h3bcvxcImukpiCEMBpFUUiIj8fB2RUTUzNs7R0xs7Lh8ePHeR2a+JfUFIQQBgL8PbV/Z3Wk1bQoikKPCQspW6UWRcr8HwBWtvY07vIp3377LXPnzs2xc4msk6QghNCkfG4hJ+l0OuJjozE1M5wPzszcgmfPnuXaeUXmyO0jIUSGnT9/nmHDhvHJJ59w6NChTO+/OKAvV04e4NH9uwAkxMezL3gpnTp1yulQRRZJUhBCpEtRFO21Z88e/ufXkXCb0sS4VaPnwJEsWbIkw8fS6/VYW1uzJmg5B1ZMZtUXn/BD4AD6dWpJw4YNc/EqRGbI7SMhxHNNDD4GwMpJw2k7ZAo2BRwBaDvoC6YGfkS3bt0wMTHJ8PE8PT357dABHjx4gJ2dXab2FblPkoIQr5Dkw1snKAovmqY5QVHS3Dctz5481hICgImpGYqJJY8fP8bBwSHTsWZlH5H7JCkI8QpRkn2xT9l4Isv7JklKFAnx8ZQt5sLtK6G4lnAH4MmD+9hb6uTL/RUjSUEIkS6dTsedaxfZOG8C7lXr8Pex/Vz68yg6vZ6/Du3g++WL8zpEkcN06ovqjEKIl4aiKMQmJN4SMtXrXvicQYKi8OWGxBrFKL9qmKa4v5+QkEDZt2vh++FIHF3cALgVdp6zW7/lp59+xM7OLheuQuQlqSkI8QrR6/VYZvFZg7QSyLNnz1AVRUsIAG6ly7Pr3gNJCK8o6ZIqhEiXpaUlcbHRJMTHa8tinkXhUtB47QhKssZwkfskKQgh0qXT6ahSvzkb5o7j3q1r3L0WxrqZIxgx7PNcP/eiRYsoXPwtTO2K0bBxUy5evJjr5xRy+0gIkQ5FUVBVqN7Ej4KuRXh4YgsWFhYELZxFzZo1M7R/cpkZR+nnn3/mw2FfQbFm6BxM2H0tAp9mrQg9fzpXh+IQkhSEEOlQVfhiQ+Lw2aUr1SRg/IBMfyEnPfiWWeu//gpc66HTJTZ86yydCLtlxeHDh6ldu3aWjikyRpKCECLDMvPrPzsdG3V6PZByf1WefjYCSQpCiEzJyq//0X7VtFrGyZMnmTt3LhEREbRo0YLu3bunqoHUdhxCY/9+qG82R6c3RX16m3KF4jN020pkj9ycE0KkKWUtICfmVvj9999p3akblv/XmLda9OO7Hb/zySefoNPpDF6NGjXiuwXjKRO/G8vra2jl8ZQdP23J0fkdRNqkpiCEyJIAf8/nfkkriqJN6Zn037UzR9H64wk4OBcGwKttL76fPJjw8HCcnZ0N9u/UqZMMqZ0HpKYghMiQtNoIUv7CT/lK6VFkOAUKGn752zo6cfv27VyLW2SO1BSEEBmSmbaEsLAwduzYQbVixfDx8UGv16PT6VDPtub0wZ1UrvceAE8fPeDp3atUqFAht8IWmSRJQQiRo+bMmcOno75CtX8L4h7h+eYX7P5lB3Z2dgwdOpQ2bduy6exxrAs4cDv0JMsWzpNeRfmIJAUhxAuNal0N/b+TMyTVGNLqnhoREcFnY75CLdEanS7x7vSx2+eZN28ew4cPx9ramh+3bePcuXOEh4dTq1YtzM0N52wWeUuSghDihfR6PXq9zqBdQafTpbqlFHb6N+LMC2kJAQC74hw+fNhgO7ldlH9JQ7MQIsOSJ4W0Gp7fcCuOLjrCcOGzu5IEXiJSUxBCZMkXG/6b2S3p4bS//vqLYMcEYk2v8iC2ADEPb1NEH8qnn87Jw0hFZkhSEELkmE5dutJq0FTecHsTgH3rl+BTrR6urq55HJnIKEkKQohMCfD3BBIbmpNqC5NCjnP3xiX09oW1hABQ2/d9flwcwNChQ/MkVpF5khSEeI0lbxdQFBUdhu8Nt9M9d5RUC0sbYp5FGSyLjX4mM7S9ZCQpCPEaS95WHPjvMNkv2i65pFoDJPZGar19CWcO7qRi7cbERj9l04JJfD1pJHfu3GHixIkcPvIbZcuUZtSoUXh4eOTUZYgcJL2PhBBZkthN9b+XTqfju+++o5TFI4ID+3FgyXi+HDWIBg0a0NjnPaKc/g/fYfNwebctLdp04Pr163l9CSINOjU7g54LIV5qiqKQ8O9tIn2K8YoUReWLDYnPIYz288TEJHO/IRVFYWLwMf4+foA7V0Kp599DW3fx5GHKmD9g7NixOXAVIifJ7SMhXmOJv/JfvF12hqyOjnqEpW0Bg2VWtgW4f/tSlo8pco/cPhJC5KoyVd7l7MHtxEY/BUBVFH77aR1+fn7p7hMdHc3KlSsJCAhg586dxgpVIDUFIUQGJCgKKjp0ZL7WYFPAga+/HM/wgMFYFnQl6v5d+nzQnrp16xqMn5R03CdPnuDdsBEuFeviVKQ4Y75eyvr161m4cGFOXpJIh7QpCCHSpCgqE4OP5sixAvw9URSFsLAwihQpgq2trdbmkNKRH9dgYWXD297NtWUhc8bx3fypVKxYMUfiEemT20dCCKMwNTXlrbfewtbW9rnb3bl6gSKlyxsscytdntOnT+dmeOJfcvtICJFho/090Wfw9pGqqhmemCf51J4uEe+x7cRJXN4sra2//vcpqg3vk/mAM+nGjRvcvn2bypUrY2Zmluvny48kKQghMiy9aTbTkvLO9IvuVCcdt1u3bnz/gw/7Hj3AqUgJLpw4yHu13+att97KWtAZEB8fT8+ePVm16QiqqQ3Olo9ZG7QYLy+vXDtnfiVJQQiR6zIzlaeVlRV7d+9m27ZtXLhwgaGdxlG1atU0G6VzyoIFC1i58xq64r7ogPD4Z7Tp1JNbV86/dpMASVIQQuQ7JiYm+Pr6au8VRWHFvr8AKO5cgJxNCRC0JgQK/teIrTO14l6cI0ePHqV27do5fLb8TZKCECLXpBwbKTlFUZgUkjjekqqqz729lLheewM5XFNwdHKG8CgwsfxvYXzUaznktyQFIUSueN6IqmCYJPad/+e5v/4VVYV/R3CtX8HN4Njfffcdk6d9xZ3wB7Tw8WLatKkULFgwU7E6jB3BHu+WxLo2ATNbiDyLf8OKlC5d+sU7v2KkS6oQ4qW1ZcsWunw0ibNKPe45+7Fs70P827TTGsQz+nr77bc5vHsj71ePwdv5NNMGNuW774Ly+vLyhDy8JoRIU0KCwqQQwwbi0f6emGRksKQMSN5wDM9vPE5sU/gbgBLOdtq2Iz/qzpHwt9CZWmnbqtd+JPT3jZQtWzZH4nzdyO0jIUSa0vq1mJO/IF90eym5xF/02htteVxsDOhMUhzYhJiYmByI8PUkSUEIke/cu3ePRYsWceHCBerVq0fHjh3pWr+ctj6ppvBRnx50/3wuamEvdDod6rNwKhY1k+EwskHaFIQQadLrYJSfJyNaV9OWZaXPj6IoBq+knkbpvSIiIqhTvwGn7umx9mjK97+coEOHDqkm9NHpdHTr1o2Jn7bC7nYwatga6he9weaN63OuEF5D0qYghHguRVWZuD5xYLyANtUzPMyFtn86A9+l58DGlRR0LUqFdxpoy7Z9O5V5k4ZRvXr1NPdJSEggJiYGa2vrTMUmUpOaghAiX7l3+zpObsUNlr3hVpwLFy6ku4+JiYkkhBwibQpCiEzJTK8hMBzzaLRftXQbmH///Xf++ecfXNr4ELz/gDYgnqoohJ06Qp3xn2YzcpERkhSEEJmWmdtByaU1oF5UVBS+LVsSZf4Gdo5OXDi+n8KONmxd/A9ObiUIO3WEvl3a8Oabb+ZE6OIFJCkIIYwmreEsvvrqK+zL16VevfcAqPlee3748hNWTP+M69evU3viIIoVK5YX4b6WJCkIIbIs+TwI6Uk+xlHSf5NbsXYzHT+fqr03s7DEuWR59Ho9HTp0yNmAxQtJQ7MQ4rmS/7JPq7NiRoaRSJLYLTXBYH9HFzfu375hsOzBnZsUL27Y2CyMQ2oKQogMm5TFtoThvpUZOnQoW3bsRUFHveqVmDNnDgUKFKC9x2R8fP3w7vwJdo7OnNy7hQY1PHBzc8vh6EVGSE1BCJFlGXkgTafTMW7cOC48NqXrhMV0n7CI2EIVGTBgADqdjnLlyrFn+zacoy4ReXQj/dv5MHfu3Ly+tNeWPLwmhHguRVG0MY+SbgRltvfRohHd6fPlMoNlK8b34/zxQ1hYWGQ/SJFj5PaREOK5Uj5XkPI5hQxJqzFaVTM1KJ4wDkkKQohsGe1XjUuXLjFz5kwuXbpE/fr1+fTTTw2eMDYN7cjOtYvwbtcHgBO7N9O4TnXMzMzyKmyRDknTQohsuXbtGk2atyLhzZpU7TiUo7di8G3Z0qD30YgRI2hUuQSrJ/QhaGwvylg/Y9asWXkdukiDtCkIITIlqXH5iw0nAPhl9QJKVvSklMd/g9X9tGwmX48ZyDvvvJNXYYoskttHQohMSdkO8Oh+OAUKOhssK/CGC7du3TJmWCKHSE1BCJFpyRub16xZw4J122nYsT8AcbHJZIztAAAK+ElEQVTRfPfFpxw/8AsFCxbMqxBFFklSEEJki6qqDBgwgD3HzlHQtRi3w/4kcMwI2rdvn9ehiSyQpCCEyBHXr1/nypUrVK1aFRsbm7wOR2SRJAUhhBAa6ZIqhBBCI0lBCCGERpKCEEIIjSQFIYQQGkkKQgghNJIUhBBCaCQpCCGE0EhSEEIIoZGkIIQQQiNJQQghhEaSghBCCI0kBSGEEBpJCkIIITSSFIQQQmgkKQghhNBIUhBCCKGRpCCEEEIjSUEIIYRGkoIQQgiNaV4HADB+/HhWrVqFg4NDXodi4NatWwC4ubnlcSSGJK7Mya9xQf6NTeLKnPwaF4CTkxM///xzhrfPF0kBoEuXLowdOzavwzAwfvx4AIkrgySuzMuvsUlcmZNf48oKuX0khBBCI0lBCCGERpKCEEIIjU5VVTWvgxBCCJE/SE1BCCGERpKCEEIIjSQFIYQQmjxJCl5eXnh5eWVo2ytXrqDT6Vi/fn3uBpXPZKaMhCH5fGWMfMay7lX+jElNQQghhEaSghBCCE2eJoX0qlUVK1akW7dueRNUPnT79m0++OADChUqhI2NDR4eHnzzzTfa+r1796LT6di/fz8tW7bExsYGFxcXxo0bl3dB5wPy+co4+Yxlzav4GZOawkugU6dO7N+/n8DAQFatWkWVKlXo169fqkGu/Pz8cHd3Z+XKldSpU4fx48ezc+fOPIpavEzkMyaSSFLI5xRFISIigoULF9KzZ0/8/PxYuXIl1tbWHDt2zGDbzp07M23aNPz9/fn++++xtLTk119/zaPIxctCPmMiuXwzSqpIm16v5/Tp06iqysWLF7l06RLHjx/n6dOnxMfHG2zr5+en/dvS0hIXFxcePnxo7JDFS0Y+YyK5XK8phIeHc+/evUztoyhKLkWTP72ojKZOnYqTkxOVKlVi8ODBXLp0CQsLi1TbWVtbG7zX6XSvfFnK5ytj5DOWda/bZyzXk0K7du344IMPDJY9e/YszQ9cksjIyNwOK195Xhnt3LmTYcOGERgYyOPHjzlz5gyLFy9Gp9PlUbT5i3y+MkY+Y1n3un3Gcj0pODg4cPXqVe19fHw8ly9fpmjRotja2gJw9+5dbX1YWBi3b9/O7bDyleeV0alTp9Dr9fTs2RMTExMADh8+THR0dF6Fm6/I5ytj5DOWda/bZyzX2xSaNm3Kxo0b6dWrF56enmzatInw8HDat2+Pk5MT7u7uLFq0CG9vbxRFoX///qmqqK+655WRubk5iqLQu3dvWrZsyenTp1m6dClOTk788ccfhIWF5XX4eUo+Xxkjn7Gse+0+Y2ouUxRFDQwMVEuUKKFaWFio5cqVU5csWaKtP3bsmFqtWjXV3NxcLVmypDp37lzV29tb7dq1q6qqqnr58mUVUNetW5fboeaZF5XRzJkzVTc3N9XGxkZ977331D///FP98ssvVUtLS/Xbb79V9+zZowLq0aNHDY5bvHhxdcCAAca+HKOSz1fGyGcs6163z5jMpyCEEEIjzykIIYTQSFIQQgihkaQghBBCI0lBCCGE5qUa5iI2NpbY2NhUy62trdHrJb8JIUR25cg3aXx8PGPHjqVEiRKYm5tTokQJJk6cSFLHJkVRCAgIoGjRotjY2FC/fn2OHj2a5rEURaFw4cJpzlL04YcfYmdnl+r1+++/58RlGJWxykxVVSZPnkypUqWwsLDA3d2dpUuX5uq15QYpr8wzRpk9e/aMJ0+epPt6mUh5/Ssn+rUOGjRINTMzUwMCAtSQkBD1448/VnU6nTp9+nRVVVV16NChqpWVlTp58mQ1ODhYbdasmWpnZ6devnzZ4DgJCQnq9OnT0+3TW69ePfWjjz5S9+/fb/B69OhRTlyGURmrzEaOHKlaW1urX375pbpu3Tq1bdu2qk6nUw8fPmyMy8wxUl6ZZ4wyq1+/vgqk+3qZSHklynYUUVFRqo2NjTps2DCD5V26dFGdnZ3Vu3fvqhYWFuqMGTO0dTExMWrhwoUNHnoZOHCgWqhQIa1w0vqDLVKkiLp+/frshpznjFVm//zzj2phYaEuWrRIW6YoilqtWjU1ICAgl64u50l5ZZ6xyuz06dOpfqTt3r1bLVKkiPrBBx/k7kXmICmv/2S7TeHixYtERUXRqFEjg+U1a9Zk1apV7Nmzh5iYGDp37qytMzc3p1GjRmzfvl1bVr16dQoVKkRkZCRTp05NdZ6YmBhu3bpF6dKlUVWVhIQETE1fqiYRjbHKbNu2bZibm9OlSxcgsXpsamqaaoz8/E7KK/OMVWYeHh6pln322WfY2dkZzNyW30l5JZPdrBIZGanu3LlTffjwocHybt26qVZWVuqIESNUJyenVPtNnjxZ1ev1alxcnMHy9B4JP3/+vAqo7du3V62srFSdTqdWr15dPXjwYHYvweiMVWYffvihWqlSJXXu3Lmqq6urqtfr1YoVK6pbtmzJ+YvKRVJemWesMkvpyJEjql6vV3fv3p39izAiKa//ZLuh2cHBgUaNGlGgQAFt2YIFC1i5ciW9e/fmwYMHFCxYMNV+jo6OKIpCVFRUhs6TNChXZGQk69atY/Xq1cTGxtKoUSPOnDmT3cswKmOV2Z07dwgLC2PKlCkEBgYSEhLCm2++ia+vLzt27Mix68ltUl6ZZ6wyS05VVfr160ezZs3w9vbOVvzGJuX1nxztx3n9+nVatGhB//798fHxITAwkLi4uOfuY2VllaFjlytXjh9++IFt27bRrFkz2rdvz+7du7G2tk6zmvayyM0ye/z4MVFRUYSEhNC9e3datmzJxo0bcXNzY/bs2TkRvtFJeWVebpZZcuvWreP06dMv9d8jSHnlWFIICgqiQoUK7N+/n7lz57J161ZsbGxwdHRMc7q+hw8fYmdnh7m5eYaOX7p0adq3b2/QjlCwYEFq167NuXPncuoyjCq3y8zS0hIHBwc8PT21ZWZmZjRo0ICLFy/m2HUYi5RX5uV2mSU3ZcoUmjdvTrly5XIi9Dwh5ZVDSWHu3Ll06dKFBg0a8PfffzNgwABt1qZy5cpx584dwsPDDfb566+/qFy5cobPsWPHDvbs2ZNqeVxcHIUKFcreBeQBY5RZiRIlUs2xC4ll5uzsnL0LMDIpr8wzRpklOXr0KCdOnKBXr145EntekPL6V3YbJe7fv69aWlqqrVu3VhVFSbX+xo0bqomJiTpnzhxt2aNHj1RnZ2f1yy+/TLV9eg00PXr0UF1cXNTo6Ght2a1bt7R+wy8TY5VZcHCwCqjbt2/Xlj19+lR1dnZWhw8fnoNXlLukvDLPWGWWZMiQIaqdnZ0aExOTcxdhRFJe/8l2n86dO3cSHR2dqmtWkvr169O3b1+GDx9OXFwcRYsW5auvvsLU1JS+fftm+Dz9+vUjKCiIRo0a0atXL+Li4pg+fTqOjo4MGDAgu5dhVMYqM19fX9555x06duzI6NGjcXV15ZtvvkFRFIYMGZKTl5SrpLwyz1hlluTHH3+kdu3aWbqNkh9IeSWT3awyderU5z6hd/nyZTU2NlYdOnSoWqhQIdXGxkZt0qSJ+tdff6V5vOdl2N27d6t169ZVbWxsVAcHB7V169ZqaGhodi/B6IxZZg8ePFB79+6tOjo6qtbW1mqjRo3U06dP5/Yl5igpr8wzZpk9fPhQ1el06rhx43L7snKNlNd/ZOY1IYQQGhlaVAghhEaSghBCCI0kBSGEEBpJCkIIITSSFIQQQmgkKQghhNBIUhBCCKGRpCCEEELz/2wNWnmcwTJEAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig,ax = plt.subplots(figsize=(6,8),facecolor='w')\n", "\n", "node_colors = clr.LinearSegmentedColormap.from_list('custom ', [Not_Marshallese_color,Marshallese_color], N=256)\n", "\n", "# # this sets the vertical dashed lines on the tree; plot a dashed line every other year from 1990 to 2020\n", "min_date = 2015.5\n", "dates_ls = []\n", "for i in np.arange(min_date,2017.75,0.25):\n", " dates_ls.append(i) \n", "#[ax.axvline(i,ls='--',lw=2,color='grey',zorder=0, alpha=0.6) for i in dates]\n", "\n", "# set date labels to be every 4\n", "date_labels = []\n", "for d in dates_ls[::2]:\n", " date_labels.append(dates_dict[d]['label'])\n", " if d < 2018:\n", " date_labels.append(\"\")\n", "\n", "branchWidth=2 ## default branch width\n", "tipSize = 20\n", "\n", "# k objects are tips, nodes, branches\n", "for k in tree.Objects: ## iterate over objects in tree\n", " x=k.absoluteTime ## or use absolute time instead\n", " y=k.y \n", " \n", " xp=k.parent.absoluteTime ## get x position of current object's parent\n", " if x==None: ## matplotlib won't plot Nones, like root\n", " x=0.0\n", " if xp==None:\n", " xp=x\n", " \n", " if isinstance(k,bt.leaf) or k.branchType=='leaf': ## if leaf... \n", " c=colors[metadata[k][\"community_status\"]]\n", " s=tipSize\n", " parent_color = colors[node_types[k.parent][\"node_community_status\"]]\n", " a=node_probs[k.parent]\n", " \n", " ax.scatter(x,y,s=s,facecolor=c,edgecolor='none',zorder=11) ## plot circle for every tip\n", " ax.scatter(x,y,s=s+0.8*s,facecolor='k',edgecolor='none',zorder=10) ## plot black circle underneath\n", " ax.plot([xp,x],[y,y],lw=node_branchwidth,color=parent_color,alpha=a,ls='-',zorder=9)\n", " \n", " elif isinstance(k,bt.node) or k.branchType=='node': ## if node...\n", " number_children = len(k.leaves)\n", " node_branchwidth = branchWidth + number_children*0.0025\n", " c=colors[node_types[k][\"node_community_status\"]]\n", " #c=node_colors(node_probs[k])\n", " a=node_probs[k]\n", " \n", " # this is the vertical line connecting nodes; \n", " ax.plot([x,x],[k.children[-1].y,k.children[0].y],lw=node_branchwidth,color=c,alpha=a,ls='-',zorder=9)\n", " \n", " # this is the horizontal line connecting internal nodes to other nodes, or tips to nodes \n", " if k.parent:\n", " if k.parent in node_types:\n", " parent_color = colors[node_types[k.parent][\"node_community_status\"]]\n", " else:\n", " print(k, k.parent)\n", " parent_color = \"red\"\n", " else:\n", " parent_color = Outside_color\n", " ax.plot([xp,x],[y,y],lw=node_branchwidth,color=parent_color,alpha=a,ls='-',zorder=9)\n", " \n", " # add in a legend\n", " han_list = []\n", "\n", " # bbox to anchor puts a bounding box around where you want the legend to go, prop part is for text size\n", "for key in legend_order:\n", " marker = mlines.Line2D(range(1), range(1), color = colors[key], marker='o', markerfacecolor = colors[key], label = labels[key], markersize = 8)\n", " han_list.append(marker)\n", "\n", "# set axis limits, remove border lines \n", "ax.spines['left'].set_visible(False)\n", "ax.spines['right'].set_visible(False)\n", "ax.spines['top'].set_visible(False)\n", "#ax.spines['bottom'].set_visible(False)\n", "\n", "ax.set_ylim(-5,tree.ySpan+5)\n", "ax.tick_params(axis='y',labelsize=0,size=0)\n", "ax.tick_params(axis='x',labelsize=16,size=5, width=2,color='grey')\n", "ax.set_xticks(dates_ls)\n", "ax.set_xticklabels(date_labels) # set date labels every 4\n", "#ax.set_xlim(1993.8,2018.2)\n", "ax.set_xlim(min_date,2017.75)\n", "ax.set_yticklabels([])\n", "\n", "# in order to get the legend to plot without being transparent, over the plot, it needs to be here with frame set to true\n", "# bbox arguments are: x, y, with 0 being furthest left and bottom\n", "ax.legend(handles = han_list, markerfirst = True, edgecolor=\"white\", framealpha=1, bbox_to_anchor=[-0.1, 0.2], loc=3,prop={'size': 16}, facecolor='w')\n", "\n", "fig.tight_layout()\n", "plt.gcf().subplots_adjust(right=0.88)\n", "\n", "plt.savefig(filename)\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Plot posterior probability node is community" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
indexnodeppgroupdate
00<baltic.node object at 0x7fe5ff474b38>1.000000Outside1997.298595
00<baltic.node object at 0x7fe5ff474d68>1.000000Outside2001.332721
00<baltic.node object at 0x7fe5ff474c18>0.995885Outside2013.155145
00<baltic.node object at 0x7fe5ff474ba8>1.000000Marshallese2016.285397
00<baltic.node object at 0x7fe5ff474c88>1.000000Marshallese2016.385566
\n", "
" ], "text/plain": [ " index node pp group \\\n", "0 0 1.000000 Outside \n", "0 0 1.000000 Outside \n", "0 0 0.995885 Outside \n", "0 0 1.000000 Marshallese \n", "0 0 1.000000 Marshallese \n", "\n", " date \n", "0 1997.298595 \n", "0 2001.332721 \n", "0 2013.155145 \n", "0 2016.285397 \n", "0 2016.385566 " ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "node_probs_df = pd.DataFrame()\n", "\n", "for k in node_probs:\n", " if k.branchType=='node':\n", " pp = node_probs[k]\n", " group = node_types[k][\"node_community_status\"]\n", " date = node_types[k][\"date\"]\n", " n = pd.DataFrame({'node':[k],'pp':[pp], 'group':[group], 'date':[date]})\n", " n.reset_index(inplace=True)\n", " n.columns = ['index','node','pp','group','date']\n", " node_probs_df = node_probs_df.append(n)\n", "\n", "node_probs_df.head()" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "node_probs_outfile_name = \"node_probs-mascot-2020-09-15.pdf\"\n", "outfile_directory = \"/Users/lmoncla/Documents/Mumps/paper-and-figure-drafts/individual-PDFs/\"" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "scrolled": true }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/lmoncla/anaconda/envs/LHM-basics/lib/python3.7/site-packages/rpy2/robjects/pandas2ri.py:67: UserWarning: Error while trying to convert the column \"node\". Fall back to string conversion. The error is: Conversion 'py2ri' not defined for objects of type ''\n", " (name, str(e)))\n", "/Users/lmoncla/anaconda/envs/LHM-basics/lib/python3.7/site-packages/rpy2/robjects/pandas2ri.py:191: FutureWarning: from_items is deprecated. Please use DataFrame.from_dict(dict(items), ...) instead. DataFrame.from_dict(OrderedDict(items)) may be used to preserve the key order.\n", " res = PandasDataFrame.from_items(items)\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+gAAAH0CAYAAACuKActAAAEGWlDQ1BrQ0dDb2xvclNwYWNlR2VuZXJpY1JHQgAAOI2NVV1oHFUUPrtzZyMkzlNsNIV0qD8NJQ2TVjShtLp/3d02bpZJNtoi6GT27s6Yyc44M7v9oU9FUHwx6psUxL+3gCAo9Q/bPrQvlQol2tQgKD60+INQ6Ium65k7M5lpurHeZe58853vnnvuuWfvBei5qliWkRQBFpquLRcy4nOHj4g9K5CEh6AXBqFXUR0rXalMAjZPC3e1W99Dwntf2dXd/p+tt0YdFSBxH2Kz5qgLiI8B8KdVy3YBevqRHz/qWh72Yui3MUDEL3q44WPXw3M+fo1pZuQs4tOIBVVTaoiXEI/MxfhGDPsxsNZfoE1q66ro5aJim3XdoLFw72H+n23BaIXzbcOnz5mfPoTvYVz7KzUl5+FRxEuqkp9G/Ajia219thzg25abkRE/BpDc3pqvphHvRFys2weqvp+krbWKIX7nhDbzLOItiM8358pTwdirqpPFnMF2xLc1WvLyOwTAibpbmvHHcvttU57y5+XqNZrLe3lE/Pq8eUj2fXKfOe3pfOjzhJYtB/yll5SDFcSDiH+hRkH25+L+sdxKEAMZahrlSX8ukqMOWy/jXW2m6M9LDBc31B9LFuv6gVKg/0Szi3KAr1kGq1GMjU/aLbnq6/lRxc4XfJ98hTargX++DbMJBSiYMIe9Ck1YAxFkKEAG3xbYaKmDDgYyFK0UGYpfoWYXG+fAPPI6tJnNwb7ClP7IyF+D+bjOtCpkhz6CFrIa/I6sFtNl8auFXGMTP34sNwI/JhkgEtmDz14ySfaRcTIBInmKPE32kxyyE2Tv+thKbEVePDfW/byMM1Kmm0XdObS7oGD/MypMXFPXrCwOtoYjyyn7BV29/MZfsVzpLDdRtuIZnbpXzvlf+ev8MvYr/Gqk4H/kV/G3csdazLuyTMPsbFhzd1UabQbjFvDRmcWJxR3zcfHkVw9GfpbJmeev9F08WW8uDkaslwX6avlWGU6NRKz0g/SHtCy9J30o/ca9zX3Kfc19zn3BXQKRO8ud477hLnAfc1/G9mrzGlrfexZ5GLdn6ZZrrEohI2wVHhZywjbhUWEy8icMCGNCUdiBlq3r+xafL549HQ5jH+an+1y+LlYBifuxAvRN/lVVVOlwlCkdVm9NOL5BE4wkQ2SMlDZU97hX86EilU/lUmkQUztTE6mx1EEPh7OmdqBtAvv8HdWpbrJS6tJj3n0CWdM6busNzRV3S9KTYhqvNiqWmuroiKgYhshMjmhTh9ptWhsF7970j/SbMrsPE1suR5z7DMC+P/Hs+y7ijrQAlhyAgccjbhjPygfeBTjzhNqy28EdkUh8C+DU9+z2v/oyeH791OncxHOs5y2AtTc7nb/f73TWPkD/qwBnjX8BoJ98VQNcC+8AAAA4ZVhJZk1NACoAAAAIAAGHaQAEAAAAAQAAABoAAAAAAAKgAgAEAAAAAQAAA+igAwAEAAAAAQAAAfQAAAAA0zt2FQAAQABJREFUeAHs3QdgleW9+PFfBtkECDtAGCJLURGQjYADEBWoiOtCnVdoBb2u23vbP9J6LVbLVYu1qKi9Io46WqUoyCgqKCA7siHMyIaE7P1/fg+ceDI5eZOQM75Pe8g573jG5z1Cfu8z3qAik4SEAAIIIIAAAggggAACCCCAAAJ1KhBcp6VTOAIIIIAAAggggAACCCCAAAIIWAECdL4ICCCAAAIIIIAAAggggAACCHiBAAG6F1wEqoAAAggggAACCCCAAAIIIIAAATrfAQQQQAABBBBAAAEEEEAAAQS8QIAA3QsuAlVAAAEEEEAAAQQQQAABBBBAgACd7wACCCCAAAIIIIAAAggggAACXiBAgO4FF4EqIIAAAggggAACCCCAAAIIIECAzncAAQQQQAABBBBAAAEEEEAAAS8QIED3gotAFRBAAAEEEEAAAQQQQAABBBAgQOc7gAACCCCAAAIIIIAAAggggIAXCBCge8FFoAoIIIAAAggggAACCCCAAAIIEKDzHUAAAQQQQAABBBBAAAEEEEDACwQI0L3gIlAFBBBAAAEEEEAAAQQQQAABBAjQ+Q4ggAACCCCAAAIIIIAAAggg4AUCBOhecBGoAgIIIIAAAggggAACCCCAAAIE6HwHEEAAAQQQQAABBBBAAAEEEPACAQJ0L7gIVAEBBBBAAAEEEEAAAQQQQAABAnS+AwgggAACCCCAAAIIIIAAAgh4gQABuhdcBKqAAAIIIIAAAggggAACCCCAAAE63wEEEEAAAQQQQAABBBBAAAEEvECAAN0LLgJVQAABBBBAAAEEEEAAAQQQQIAAne8AAggggAACCCCAAAIIIIAAAl4gQIDuBReBKiCAAAIIIIAAAggggAACCCBAgM53AAEEEEAAAQQQQAABBBBAAAEvECBA94KLQBUQQAABBBBAAAEEEEAAAQQQIEDnO4AAAggggAACCCCAAAIIIICAFwgQoNfSRcjLy6ulnMkWAQQQQAABBBBAAAEEEEDAHwUI0Gvpql533XW1lDPZIoAAAggggAACCCCAAAII+KMAAbo/XlXahAACCCCAAAIIIIAAAggg4HMCBOg+d8moMAIIIIAAAggggAACCCCAgD8KEKD741WlTQgggAACCCCAAAIIIIAAAj4nQIDuc5eMCiOAAAIIIIAAAggggAACCPijAAG6P15V2oQAAggggAACCCCAAAIIIOBzAgToPnfJqDACCCCAAAIIIIAAAggggIA/ChCg++NVpU0IIIAAAggggAACCCCAAAI+J0CA7nOXjAojgAACCCCAAAIIIIAAAgj4owABuj9eVdqEAAIIIIAAAggggAACCCDgcwIE6D53yagwAggggAACCCCAAAIIIICAPwoQoPvjVaVNCCCAAAIIIIAAAggggAACPidAgO5zl4wKI4AAAggggAACCCCAAAII+KOAXwXo+fn5kpWV5eg6FRYWenSep8d5lBkHIYAAAggggAACCCCAAAIIIHBOwG8C9OzsbBkyZIjceuutHl/coqIieeWVV2TYsGESGRkpPXr0sJ9LZ+DpcaXP4zMCCCCAAAIIIIAAAggggAACngr4RYB+8uRJue2222TlypWettseN2PGDHniiSfk5ptvlsWLF8uoUaNkypQpMn369BL5eHpciZP4gAACCCCAAAIIIIAAAggggEAVBEKrcKzXHao92y+++KL87ne/k6ioKKlfv77HddywYYNMmzbNvh555BF73uDBgyU1NVWee+45+cUvfiHNmjUTT4/zuOAAPTAnr0COpmTK/mOpUi80RFo1ri9tmsRYjVNp2ZKRnSc5ZopCWGio5BcUyPEzWZKWlSdhIcFmW4iEhARJs4ZRIkUiyafSJTs3XyLDQqV5gygJCg4yx+ZKbFS4NIoJlwbmp6b8gkLZtPe4FJrvSfvmDWwZmk+ruPoSFCRyOj3blhEZHipNYyPtOfpHuslr37Ezkm3qHGHKqB9RT5qacqLMcZrOZObK6YxsKTD5h5j6aV3CTR1PmvwKC4ukickr1GzPyS+QIjNzQr+n9UKDzfn1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nKocrENkrr/+eunWrZu89dZb9tnrTz31lH0+uw6dOd/Ngm+//VY0wNdh+qV732NiflqJV5/z/swzz9jX9OnT5csvv7TnHDt2TPQzCQFvFzidli0Nos4+Ekq/6zERYbLFPCbq4viG3l516ocAAggggAACfiagi023bNlSdLE4/Z27TZs2ZX4X97Mm0xwEPBbwOEBPTU2VHTt2lMhYe6pzc3PtHa927dpJQUGB7N69W1JSUmyvuu6rzTRp0iQ5c+aM/OMf/5Do6GhblC5c17p1a5k5c6Z9VVb++vXr7ZD8l156qcLDdNG7adOm2dcjjzxijxs8eLCox3PPPSe/+MUvpFmzZhWezw4EvEFAn9Gcl19Q/I9foRkVUu3hM97QMOqAAAIIIIAAAj4poB1p5+tM88mGUWkEqing8e/o48aNs8G3BuD6ev755+2c808++UQOHz5sH5Pw/fffy5EjR2yvsg5X0SHvtZV0SIyuADlmzJji4FzL0uExQ4cOlXnz5p23aA2+e/fuXelxn3/+ub3xoKMB3NMdd9whWVlZou0nIeDtAj06NDWPgSq0Q9xz8806CqYXfWC31t5ebeqHAAIIIIAAAggggEBACXgcoJdW0aHkv/71r2Xs2LHFvXJ6jC4Up/u0R/2NN94ofVqNfd67d68NkMtbKV7LPnr0qO1dr6hA7eVPSkqyj4HTmw86tEaH2/zud7+TvLy84tN0hXodEqx5uifXZ/e56u77eY+ANwn06NBchl2eIM0aREn7ZrEybkAniasfmI9A9KbrQl0QQAABBBBAAAEEEHAX8HiIu/tJumiartp+0UUXuW8u8V6HrOzfv7/Etpr8oEPMNTVu3LhMtrr4hCY9JjY2tsx+3aDPaNf05ptvyqBBg2T06NF2FIDeXFixYoUsWrTIBuaahz6TUVecdE/uZbi263x213B57V0nIeBNApckNBZ9kRBAAAEEEEAAAQQQQMA7BRz1oGuP8oABA2Tu3LmiwXrptGfPHruQ2jXXXFN6V419ds1vd809d884KirKfnTvCXffr+/1/IEDB9rF5XQ195dffll0iP7tt98uuiCea4i8HldeGRERETaAdy9DV5HXZ8Dry/3ZjqXL5jMCCCCAAAIIIIAAAggggAACpQUcBeiayf333y///Oc/bZD72muvycKFC+18bF1Q7aqrrrILp910002ly6ux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0NUXXQVy/WgKtt27d9tf//pX+/a3v+0Gkks/lnUEEEAAAQQQQAABBBBAAAEEEEgViF1A14BxN954o9WsWdMaN25sW7dutebNm9t7773nCup9+vSxAQMGpJ6NNQQQQAABBBBAAAEEEEAAAQQQyCoQu4n7k08+6UZw/+CDD+ypp54yzY3+9ttvu9r0q666yj799FO3P+tZ2YgAAggggAACCCCAAAIIIIAAAikCsQroasa+bt06GzlypB177LHWu3dvVyAvLS21unXr2rRp02zXrl32+OOPp5yMFQQQQAABBBBAAAEEEEAAAQQQyC4Qq4Cu2vKjjjrKmjZt6lI95phj7LjjjrPFixe79aKiIjv77LNt/vz52c/KVgQQQAABBBBAAAEEEEAAAQQQSBGIVUBXCpoDffbs2cnEunbtaq+//npyXTXsBAQQQAABBBBAAAEEEEAAAQQQiCYQu4B+zTXX2K9//Ws788wz3aBw559/vj333HNu4LgJEybYq6++ahdffHG0XBALAQQQQAABBBBAAAEEEEAAgQIXiD2K++WXX24bN260p59+2tSkfcyYMTZjxgy7+eabHWn37t2tf//+Bc7L5SOAAAIIIIAAAggggAACCCAQTaAomLs8ES1q9lg6XAV0hf3799tbb71lO3bscDXrtWvXzn5QAWwtLi62kpKSArhSLhEBBBBAAAEEEEAAAQQQQCAfArFr0P3JVTjXVGvqc6750Hv27GmFXDD3LnwigAACCCCAAAIIIIAAAgggUBGB2H3QdZLf//739oUvfMFatGjhasy7dOli9evXt7Fjx9qmTZsqkg/iIoAAAggggAACCCCAAAIIIFDQArFr0F944QUbNmyYtW3b1g0Mp081bV+0aJE9/PDD9uabb9obb7xhderUKWhgLh4BBBBAAAEEEEAAAQQQQACBKAKx+6CfdtpprvD90ksvWa1atVLOpX7omgd9ypQpNn78+JR9hbJCH/RC+U1znQgggAACCCCAAAIIIIBAfgRi1aAfOHDAlixZYo8//nhG4VzZ6t27t5133nm2YMGC/OSSVBBAAAEEEEAAAQQQQAABBBCo5gKx+qDXqFHDWrdubR9++GGZPB9//LG1atWqzP3sQAABBBBAAAEEEEAAAQQQQACBzwRiFdB1+A033GCTJ0+2+fPnf5baP5cefPBBW7p0qX3jG9/I2McGBBBAAAEEEEAAAQQQQAABBBDIFIjcxH3WrFn2s5/9LCWF7du32+mnn26nnHKKdejQwfbu3WvLly+3VatWWffu3W3FihXWtWvXlGNYQQABBBBAAAEEEEAAAQQQQACBTIHIBfQ9e/bYli1bUlI46aST3Lr2qTCuoDnQVThXKK8JvIvAPwgggAACCCCAAAIIIIAAAggg4ARij+KOX/kCjOJevg97EUAAAQQQQAABBBBAAAEEUgUi16CnHvbZ2r59+2zNmjW2du1aNyicmrSnT7v2WWyWEEAAAQQQQAABBBBAAAEEEEAgm0DsQeKU2OzZs61Tp07WpUsXGzp0qPXq1cuOPvpoGzx4sG3dujXb+diGAAIIIIAAAggggAACCCCAAAJZBGLXoGv09gsuuMDatm1rU6ZMsY4dO9qOHTustLTUHnjgARswYIDNnTvX6tevn+W0bEIAAQQQQAABBBBAAAEEEEAAgbBA7D7o6mO9bds2mzdvntWpUyecpi1evNjOOOMMe+KJJ2z48OEp+wplhT7ohfKb5joRQAABBBBAAAEEEEAAgfwIxGrinkgkbOHChTZ+/PiMwrmy1bNnTxs4cKCVlJTkJ5cRUlGeKhPUl56AAAIIIIAAAggggAACCCCAwKESiFVAV2b3799vNWvWLDPf2qca9oMdli1bZldffbUboK5p06Z2ySWX2IYNGyKd9oMPPrArr7zSjjvuODvyyCOtRYsWbj19eji9aNDUcdl+NOc7AQEEEEAAAQQQQAABBBBAAIHKCsTqg15UVGQ9evSwqVOn2le/+lU74ojUZFauXGlz5syxn/70p5XNX7nHb9q0yQYNGmQaOf6RRx6xnTt32k9+8hPr06ePvfXWW9ayZcsyj9ec7l/84hfdS4SrrrrK+vXrZ6+99ppNmzbNfS5YsMAaNGjgjv/jH/9oehEwbtw407WHA33swxosI4AAAggggAACCCCAAAIIxBVILVlXIJXJkye70dp79+5tY8eOdYPEqYCspu/33HOPqTZbtdMHM4wZM8Y++eQT+93vfmf16tVzp+rbt6+1bt3a7rzzTvdT1vmffPJJU+33ww8/bFdccYWLpmb5xx9/vI0ePdqeeeaZZP51TRqt/u677y4rObYjgAACCCCAAAIIIIAAAgggUCmB2AV01VxPnz7dFWZVUA4H1Uardv1g1i6rz7imedMgdL5wrjw0b97czjnnHFMBXIX0soJaANx66632la98JSWKmrErqHbeh0WLFpkK/gQEEEAAAQQQQAABBBBAAAEEDpZA7AK6CrAXXniha2K+YsUK00/dunVdTXPnzp0PVn6T6b7zzju2a9cua9++fXKbX2jXrp1rYq/a9WOOOcZvTvk866yzTD/pQQV7hVNOOcV9qin8unXrrH///jZixAjT9HLNmjWziy66yL7//e+7vusuIv8ggAACCCCAAAIIIIAAAgggUAmB2AX0YcOGuRHcX3rpJTdqu0Zu/zzD1q1b3emaNGmScdrGjRu7bYpTVgE946Bgw1/+8hd79NFHXW25mrsraMo4BTWFP/vss13B/M0333R93V9//XV74YUXkv3S165d62ruFX/37t36ICCAAAIIIIAAAggggAACCCAQSSDWKO6a0kwF10aNGkU6ycGItGfPHpdsuHm7P49q8hX27t3rN+X8VOH6/PPPdyPTP/TQQ8lCt86jmnYNQqfR3O+77z7705/+5AbH00B4vsZdJ6hVq5bphYF+0geTy5kBIiCAAAIIIIAAAggggAACCBS0QKwCugqfEyZMsJdfftk02vmhCGpmruBr0sN58Nui9oH/85//7ArhahI/a9YsCzfRV197je5++eWXJ0+h69fI7wovvvhicrsGmNOUb/pRYZ2AAAIIIIAAAggggAACCCCAQFSB2E3ca9eu7aYh05RmGphNfcG1LRxGjRpl+jkYQXOWK3z88ccZyWtbjRo1rGHDhhn70jeUlpaamrOrQF0S1JBHbaqvKdqOOuooe/fdd9OTZB0BBBBAAAEEEEAAAQQQQACBCgvELqCrYKvm5d26dXMn3bZtm5tTPJwDTbt2sILOrb7mmp88PWhbly5dctZiq6m6asjVJF19yTt27JielP3qV78y9TXXFGvh5vRLly51g9S1adMm4xg2IIAAAggggAACCCCAAAIIIFBRgdgFdE2xdqjDZZddZtOmTTONtO5ry9WXXM3ub7rppnKzp2bwQ4cOda0AXn31VWvZsmXW+KohV590Tcs2bty4ZJxnn33WLZ933nnJbSwggAACCCCAAAIIIIAAAgggEFegKBjwLRH3YH+c+m5rBHT1C1ct9Oc1QNqaNWtcf3E1s7/jjjvcyOnq/63B4VTDHW5yf+6557qCvGr+FSZNmuSO0fRpJ598sr+U5KeasF988cX2/vvvu8K5rum6664zFcjnzp3rltUcXrXrak6fHoqLi12T+fTtrCOAAAIIIIAAAggggAACCCCQTaBSBXTVVF9xxRX29ttvmy/nN2jQwEaOHGn33ntvSgE528nzsU0D1akmXQXpI4880lQQV+35aaedlpK8Xhxs3rw52WddfebXr1+fEie8cu2119pdd93lNqlQP2bMGHvrrbfcep06dezLX/6yTZ061c39Hj7OL1NA9xJ8IoAAAggggAACCCCAAAIIRBGIXUDXaOeXXHKJGxzu61//uqkv9vbt2930a4899pj17t3bnn/++ZR+21EyFDeOCttq5u6busdNp7zjNm3aZB999JF16tTJvQwoLy4F9PJ02IcAAggggAACCCCAAAIIIJAuELuArv7bBw4csBkzZri5w8MJL1myxPr27WuPPvqojRgxIryrYJYpoBfMr5oLRQABBBBAAAEEEEAAAQTyIpDZeTpCsmrOrn7YagZes2bNjCM0oNrgwYNt9uzZGfvYgAACCCCAAAIIIIAAAggggAACmQKxCugaMK1Vq1a2cePGzBT/uUUDx2n6MgICCCCAAAIIIIAAAggggAACCOQWiFVAV7ITJ06066+/3t54442Us6h2/f7777f58+fbqFGjUvaxggACCCCAAAIIIIAAAggggAAC2QViz4O+YcMG1wddfc179erlplfT9GbLli0zTX+mKddGjx6dctaZM2e6ecdTNrKCAAIIIIAAAggggAACCCCAAAIWu4C+cuVKa926tfvRYHGrV692nPXq1XPzhmtFo7qHg5+KLbyNZQQQQAABBBBAAAEEEEAAAQQQsPgF9Oeeew4/BBBAAAEEEEAAAQQQQAABBBDIk0DsPuh5Oj/JIIAAAggggAACCCCAAAIIIIBAIEABnf8GCCCAAAIIIIAAAggggAACCBwGAhTQD4NfAllAAAEEEEAAAQQQQAABBBBAgAI6/wcQQAABBBBAAAEEEEAAAQQQOAwEYhfQN23adBhknywggAACCCCAAAIIIIAAAgggUD0EYhfQhw0bZgMGDKgeClwFAggggAACCCCAAAIIIIAAAodYIFYBXfOZL1682Bo1anSIs8/pEUAAAQQQQAABBBBAAAEEEKgeArEK6EVFRTZhwgR7+eWXbcGCBdVDgqtAAAEEEEAAAQQQQAABBBBA4BAKHBH33LVr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CCCAAAIIIFDNBWIV0GWyf//+5Mjt2Yw0qrtq2AkIIIAAAggggAACCCCAAAIIIJBbIFYBvaioyHr06GFTp061ffv2ZZxl5cqVNmfOHFeTnrGTDQgggAACCCCAAAIIIIAAAgggkCEQe5C4yZMnu9Hae/fubWPHjnWDxO3cudM1fb/nnnusadOmduWVV2ackA0IIIAAAggggAACCCCAAAIIIJApELuAPmjQIJs+fbqNHj3axowZk5Jyv379XO06I7insLCCAAIIIIAAAggggAACCCCAQJkCsUdx9yl++umntmLFCvdTt25dNy96586d/e6C/WQU94L91XPhCCCAAAIIIIAAAggggEAsgdg16P5sGsW9Q4cOpubtzZo1c03d/T4+EUAAAQQQQAABBBBAAAEEEEAgmkCsQeJ80gsWLLBu3bpZw4YN7cwzz7QTTzzRGjVq5Jq9796920fjEwEEEEAAAQQQQAABBBBAAAEEcgjErkGfNWuWXXLJJda+fXu7+eabrU2bNrZ9+3ZbvHixPfbYY/b222/b888/b/Xq1cuRBXYjgAACCCCAAAIIIIAAAggggEDsPuhDhw61AwcO2IwZMzLmQ1+yZIn17dvXHn30URsxYkRBKtMHvSB/7Vw0AggggAACCCCAAAIIIBBbIFYT90QiYXPnzrVrr702o3CunGiO9MGDB9vs2bNjZ4wDEUAAAQQQQAABBBBAAAEEECgkgVgF9KKiImvVqpVt3LixTKtPPvnEmjRpUuZ+diCAAAIIIIAAAggggAACCCCAwGcCsQroOnzixIl2/fXX2xtvvPFZasGSatfvv/9+mz9/vo0aNSplHysIIIAAAggggAACCCCAAAIIIJBdIPYgcRs2bHB90NXXvFevXm56tb1799qyZctszZo1bsq10aNHp5x15syZ1qBBg5RtrCCAAAIIIIAAAggggAACCCCAgFnsAvrKlSutdevW7keDxa1evdp5atR29UFX0Kju4aDadQICCCCAAAIIIIAAAggggAACCGQKxC6gP/fcc5mpHcItKvyrb3zcoJcMNWrkbvEfNV7cfHAcAggggAACCCCAAAIIIIBAYQrkLpEe5i5qUn/11Ve7QeuaNm3q5mZX8/soQYX6X/ziF9a/f3876qijXFN9raeHqPHSj2MdAQQQQAABBBBAAAEEEEAAgagCVbqAvmnTJhs0aJCtWrXKHnnkETc4nfq/9+nTx/72t7/lNLjtttts0qRJduGFF9qcOXNsyJAhNm7cOJs8eXLKsVHjpRzECgIIIIAAAggggAACCCCAAAIVECgKaoerbMfw4cOH24svvmgffPCBqe+7wocffuj6xY8fP97uvPPOMikWLVpkp556qt14443ux0dUAf2hhx6y9evXu4Huosbzx/vP4uJiKykp8at8IoAAAggggAACCCCAAAIIIFCuQJWtQd+3b5/Nnj3bLr744mThXFfavHlzO+ecc+zJJ58s98JnzZpl+/fvt0svvTQl3te+9jXbtWuX/fa3v3Xbo8ZLSYQVBBBAAAEEEEAAAQQQQAABBCooUGUL6O+8844rSLdv3z7jktu1a+dq0j/55JOMfX7D8uXL3aByihsOfl3N5hWixgunwTICCCCAAAIIIIAAAggggAACFRWIPYp7RU+U7/hbt251STZp0iQj6caNG7ttinPMMcdk7NcG7dOc7DVr1kzZHz62IvEUd+PGjfbCCy+49Pbs2eM++QcBBBBAAAEEEEAAAQQQQACBKAJVtoDuC8C+73n4YuvWretW9+7dG96csqzjsx1bp04dV7Puj40aT4nv3LkzOR+8pmMjIIAAAggggAACCCCAAAIIIBBVoMo2cW/WrJm7Rl+THr5gv61+/frhzSnLOt7HC+/Ytm2badw8f2zUeErjxBNPNI34rh8V9AkIIIAAAggggAACCCCAAAIIRBWosgX0Fi1auGv8+OOPM65V22rUqGENGzbM2Oc36Pjt27ebBpsLB5+ebzofNV44DZYRQAABBBBAAAEEEEAAAQQQqKhAlS2gq3m6+osvW7Ys45q1rUuXLlarVq2MfX5DmzZt3GL68X69R48ebn/UeD5dPhFAAAEEEEAAAQQQQAABBBCII1BlC+i62Msuu8yef/5527JlS/La165dawsWLLCRI0cmt2Vb0H4V4J966qmU3b/5zW9Mtefnnnuu2x41XkoirCCAAAIIIIAAAggggAACCCBQQYEqO0icrvOaa66x++67z4YMGWJ33HGH7d69266++mrXF/z6669PoVCBWwX50tJSt13zpWvOcx2nZuza/+yzz9rjjz9uDz30kDVq1KhC8VJOxgoCCCCAAAIIIIAAAggggAACFRSo0gX0E044wU1rppr0vn372pFHHukK2jfddJPVrl07hWL9+vW2efPmlG2//OUvbf/+/fad73zHfbZt29a+//3v2xVXXBErXspBrCCAAAIIIIAAAggggAACCCBQAYGiYMTyRAXiH7ZRVQDXoHDlDQxXVuY1Pdp7771nnTp1KiuK2x41niIXFxdbSUmJO45/EEAAAQQQQAABBBBAAAEEEMglUKVr0MMX165du/BqhZY1b3quwrkSjBqvQicnMgIIIIAAAggggAACCCCAAAKBQJUeJI7fIAIIIIAAAggggAACCCCAAALVRYACenX5TXIdCCCAAAIIIIAAAggggAACVVqAAnqV/vWReQQQQAABBBBAAAEEEEAAgeoiQAG9uvwmuQ4EEEAAAQQQQAABBBBAAIEqLUABvUr/+sg8AggggAACCCCAAAIIIIBAdRGggF5dfpNcBwIIIIAAAggggAACCCCAQJUWoIBepX99ZB4BBBBAAAEEEEAAAQQQQKC6CFBAry6/Sa4DAQQQQAABBBBAAAEEEECgSgtQQK/Svz4yjwACCCCAAAIIIIAAAgggUF0EjqguF3K4Xce+fftsy5Yth1u2yA8CCCCAAAIIIIAAAggggEBEgYYNG0aMmZ9oRYkg5CcpUgkL9OjRwzp06BDexDICh1Rg//799v7771vr1q0PaT44OQIIVA+BTz75xPQyunHjxtXjgrgKBBA4pAJ6RtH9pHbt2oc0H5wcgXSBZ555xo444vOr16aAnv4bYB2Bairw0Ucf2bnnnmtLly6tplfIZSGAwOcpMG3aNPvb3/5mN9100+d5Ws6FAALVVGDQoEF2xx132Mknn1xNr5DLQiCaAH3QozkRCwEEEEAAAQQQQAABBBBAAIGDKkAN+kHlJXEEDh8B9WbZuXOn1asmc6jfAAAXOUlEQVRX7/DJFDlBAIEqK7Bnzx6X91q1alXZayDjCCBw+AjoGaVOnTpWowb1h4fPb4WcHAoBCuiHQp1zIoAAAggggAACCCCAAAIIIJAmwCuqNBBWEUAAAQQQQAABBBBAAAEEEDgUAhTQD4U656yyAm+//bYVFRW5n/Hjx5d5HRrt0cd75513yoyX7x2/+93v3HlfeumlvCT9m9/8xqU3b948l176el5OQiIIVGGBUaNGue+IBjbKFt577z23/4c//GG23eVu08wL999/v3366aflxvvKV77izqERZjdt2lRm3G7durl43/jGN8qMczB29OzZ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\n" }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%%R -w 1000 -h 500 -u px -i node_probs_df,node_probs_outfile_name,outfile_directory,Marshallese_color,Not_Marshallese_color,Outside_color # this sets the size of the plot...otherwise, it will go off the page\n", "require(ggplot2)\n", "library(ggplot2)\n", "\n", "node_probs_df$pp = as.numeric(node_probs_df$pp)\n", "\n", "p8 <- ggplot(data=node_probs_df, aes(x=group, y=pp, color=group)) + \n", " geom_jitter(size=2, alpha=0.7, position = position_jitter(w = 0.35, h = 0))+\n", " labs(x=NULL,y=\"posterior probability\")+\n", " scale_color_manual(values=c(\"Marshallese\"=Marshallese_color,\"Not_Marshallese\"=Not_Marshallese_color,\"Outside\"=Outside_color), guide=FALSE)+\n", " scale_x_discrete(labels=c(\"Marshallese\",\"Not Marshallese\",\"Not Washington\"))+\n", " theme(plot.title = element_text(size=20, hjust=0.5))+\n", " theme(panel.grid.major=element_line(colour=NA,size=NA))+\n", " theme(panel.grid.minor=element_line(colour=NA,size=NA))+ \n", " theme(strip.background = element_rect(colour=NA, fill=NA))+\n", " theme(axis.line.x=element_line(colour=\"black\"))+\n", " theme(axis.line.y=element_line(colour=\"black\"))+\n", " theme(strip.text.x=element_text(size=18))+\n", " theme(axis.title.y=element_text(size=18, vjust=8))+\n", " theme(axis.title.x=element_text(size=18, vjust=-6))+\n", " theme(axis.text=element_text(size=18, colour=\"black\"))+\n", " theme(legend.text=element_text(size=18))+\n", " theme(legend.title=element_blank())+\n", " theme(panel.margin=unit(1, \"lines\"))+\n", " theme(plot.margin=unit(c(1,1,1,1),\"cm\"))+\n", " theme(legend.key.size=unit(0.7, \"cm\"))+\n", " theme(panel.background=element_rect(fill=NA))+\n", " theme(legend.key=element_rect(fill=NA))+\n", " #scale_x_continuous(expand = c(0, 0), breaks=seq(0,30,5), limits=c(-0.5,35)) + \n", " scale_y_continuous(limits=c(0,1))\n", "\n", "ggsave(node_probs_outfile_name, p8, width = 10, height = 3.5, path=outfile_directory)\n", "p8" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Plot parameter estimates" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [], "source": [ "def generate_dataframes_from_log_files(log_file):\n", " \n", " log = pd.read_table(log_file, sep='\\t', header=0, comment='#')\n", "\n", " Ne_cols = [col for col in log.columns if 'Ne.' in col]\n", " mig_cols = [col for col in log.columns if 'b_migration' in col]\n", " \n", " # subset to just Ne, migration rates, or jump counts\n", " Ne = log[Ne_cols]\n", " mig_rates = log[mig_cols]\n", " \n", " # replace column names\n", " Ne.columns = Ne.columns.str.replace(\"Ne.Marshallese\", \"Marshallese\")\n", " Ne.columns = Ne.columns.str.replace(\"Ne.Not_Marshallese\", \"Not Marshallese\")\n", " Ne.columns = Ne.columns.str.replace(\"Ne.Outside\", \"Not Washington\")\n", " \n", " # in these columns, b is for backwards in time\n", " mig_rates.columns = mig_rates.columns.str.replace(\"b_migration.Marshallese_to_Not_Marshallese\", \"Marshallese to Not Marshallese\")\n", " mig_rates.columns = mig_rates.columns.str.replace(\"b_migration.Not_Marshallese_to_Marshallese\", \"Not Marshallese to Marshallese\")\n", " mig_rates.columns = mig_rates.columns.str.replace(\"b_migration.Marshallese_to_Outside\", \"Marshallese to Not Washington\")\n", " mig_rates.columns = mig_rates.columns.str.replace(\"b_migration.Not_Marshallese_to_Outside\", \"Not sMarshallese to Not Washington\")\n", "\n", " # melt and split out clade name and type of transition/deme\n", " mig_rates = pd.melt(mig_rates)\n", " Ne = pd.melt(Ne)\n", "\n", " return(Ne,mig_rates)" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [], "source": [ "def create_outfile_names():\n", " date = (datetime.datetime.now()).strftime('%Y-%m-%d')\n", " \n", " Ne_outfile_name = \"Ne-mtt-\" + date + \".pdf\"\n", " mig_outfile_name = \"migration-rates-mtt-\"+ date + \".pdf\"\n", " \n", " return(Ne_outfile_name,mig_outfile_name)" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [], "source": [ "def run_functions(input_file):\n", " \n", "\n", " # generate output file names \n", " Ne_outfile_name,mig_outfile_name = create_outfile_names()\n", "\n", " # generate dataframes and append together\n", " Ne_all = pd.DataFrame()\n", " mig_all = pd.DataFrame()\n", "\n", " Ne,mig_rates = generate_dataframes_from_log_files(input_file)\n", "\n", " Ne_all = Ne_all.append(Ne)\n", " mig_all = mig_all.append(mig_rates)\n", "\n", " return(Ne_all,mig_all,Ne_outfile_name,mig_outfile_name)" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [], "source": [ "def return_hpdi(input_df):\n", " \n", " hpdi_df = pd.DataFrame()\n", " updated_dataframe = pd.DataFrame()\n", " \n", " # for each category, split into its own dataframe\n", " for t in set(input_df['variable'].tolist()):\n", " d = input_df[input_df['variable'] == t]\n", " \n", " # compute highest posterior density interval\n", " import pymc3\n", " from scipy.stats import norm\n", " hpdi = pymc3.stats.hpd(d['value'], credible_interval=0.95)\n", " lower = hpdi[0]\n", " upper = hpdi[1]\n", " \n", " hpdi_df = hpdi_df.append(pd.DataFrame.from_dict({\"variable\":[t],\"lower\":[lower],\"upper\":[upper]}))\n", " \n", " # add a new column to the dataframe to specify whether a value is in the 95% HPDI or not \n", " d['hpdi'] = np.where((d['value'] >= lower) & (d['value'] <= upper), \"yes\",\"no\")\n", " updated_dataframe = updated_dataframe.append(d)\n", " \n", " return(hpdi_df,updated_dataframe)" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/lmoncla/anaconda/envs/LHM-basics/lib/python3.7/site-packages/ipykernel_launcher.py:3: FutureWarning: read_table is deprecated, use read_csv instead.\n", " This is separate from the ipykernel package so we can avoid doing imports until\n" ] } ], "source": [ "# run on the combined log file output from Log Combiner \n", "combined_log_file = \"../beast/mascot/output/mumps_1.log\"\n", "Ne,mig,Ne_outfile_name,mig_outfile_name = run_functions(combined_log_file)" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
variablevalue
0Marshallese0.689299
1Marshallese0.410189
2Marshallese0.714529
3Marshallese0.413610
4Marshallese0.234718
\n", "
" ], "text/plain": [ " variable value\n", "0 Marshallese 0.689299\n", "1 Marshallese 0.410189\n", "2 Marshallese 0.714529\n", "3 Marshallese 0.413610\n", "4 Marshallese 0.234718" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ne.head()" ] }, { "cell_type": "code", "execution_count": 86, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/lmoncla/anaconda/envs/LHM-basics/lib/python3.7/site-packages/ipykernel_launcher.py:20: SettingWithCopyWarning: \n", "A value is trying to be set on a copy of a slice from a DataFrame.\n", "Try using .loc[row_indexer,col_indexer] = value instead\n", "\n", "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
variablevaluehpdi
0Marshallese0.689299yes
1Marshallese0.410189yes
2Marshallese0.714529yes
3Marshallese0.413610yes
4Marshallese0.234718no
\n", "
" ], "text/plain": [ " variable value hpdi\n", "0 Marshallese 0.689299 yes\n", "1 Marshallese 0.410189 yes\n", "2 Marshallese 0.714529 yes\n", "3 Marshallese 0.413610 yes\n", "4 Marshallese 0.234718 no" ] }, "execution_count": 86, "metadata": {}, "output_type": "execute_result" } ], "source": [ "HPDI_df_Ne,Ne = return_hpdi(Ne)\n", "\n", "HPDI_df_Ne\n", "Ne.head()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "date = (datetime.datetime.now()).strftime('%Y-%m-%d')\n", "outfile_directory = \"/Users/lmoncla/Documents/Mumps/paper-and-figure-drafts/individual-PDFs/\"" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "Ne_outfile_name = \"Ne-mascot-ghost-deme-\"+date+\".pdf\"" ] }, { "cell_type": "code", "execution_count": 88, "metadata": {}, "outputs": [ { "data": { "image/png": "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//227LLL2tZbb20zZsyw5557zr3WOSussIKLvfR5dmlqanKDmJppvOKKK9rxxx9v7e2dCaibm5vtd7/7na299to2aNAgW2WVVewXv/iFLViwILuaHl9fc8017sGD2rHxxhvbXXfd1eX4v/71r7bqqqu6+jXr+oILLujShnnz5pkGXHX/I0aMcAO9H330UZc6avVNoADdo3388cf28ssv20svvWRz5syxCRMm2LPPPmtrrLGGnXzyyf6w0H4nk0m77LLL7IgjjuhSp/5INb0k+w+wywERvglrintmBJ0s7hH2FlUjgAACCCCAAAIIIBCegILtadOm2ZNPPpmpVEuAH330UVPwnl002KiAXN9r9q+C1/79+7sZwa+//ro7VMcoGP/pT3/qZiwvtdRS1q9fP9tll11s8ODB9re//c0t91UAf+CBB2ZX7wYup0yZ4pb/brnllnb22We7a/iDDj74YFOA/f3vf9+uv/560xp5Dbr++c9/9of0+Ftr3A8//HAX62nQVNfQTOrbbrvNnTdx4kT3gGC//fazm2++2XbYYQf71a9+5dqsAxSrbbfddu74H/zgB3bVVVfZzJkzbaONNnIPIXq8eA182VjqPU6fPt2Bq1OeeeYZW3rppV0n6/2aa67pqr3llltMHbPXXnvZ+uuvX+qlFjlPf6D6Y80uShR344032iabbOKSGmR/V47XYW2z5pPMsQa9HL3GNRBAAAEEEEAAAQQQCC6gfFgKujWr2CdU09JfjR5r8DK7PP300zZq1Cg3Yr7ccsu5rxQkr7zyyqbvvvGNb7jPNCipmEczhlUUsH/99dd2+umnZ6bNa5RcDwUU9Po4QrGYgmTl6dLsZi0H1o+CZI2S/+9//7M//vGPdthhh7l69XDhhRdecMe4D3r4Z9asWe76Cu613FhFs5g1o/q3v/2texjx2GOP2UorreSuoe93220369u3r3sIofcK2nUv//nPf2znnXfWR7bTTjvZyJEj7dxzz3UPFtyHNfpPSQG60LfffntHJnBNaRCu/giyi57wqCg5QtRF0zS++OIL9x9F9rXU+fpD1HdRFj8l3WdhL/Va9ek5DX5Ne6n1cB4CCCCAAAIIIIAAAgiUT0CBrpbbakRcpbvp7QpG33nnHXeMZv++9dZbbvZxfSoQyJ1mrqntvijw1ui5rqOlvrvvvrsbCNVgaHZRjrDs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3XV5v164cKH169fPfve73y3yvWYya4nxxIkTu3yn7bG1Rdo555zT5fNS39x3333uOj3NmH7ggQfcMe+//36pl8l7Xk82eU+owA9LCtC11uKOO+4wbVavYFxbrB100EF2+umn25ZbbmkXXXRRBVKU3uRker/ykGa4m6+HNeil9wlnIoAAAggggAACCCBQLgElzf7kk09Cudxhhx1mN998c966BgwYYJtuuqk9/fTTXb7/+uuv7aWXXrKll17a7r///i7fPfXUU25AdbvttuvyeZRvxo4dawcffLAtscQSoV6mJ5tQL9SLlZWUJE7tXXvtte2FF16wF1980Y2ea8Rc69JXX331Xryd3rm03w4trKR4vh4/Mt87d8VVEUAAAQQQQAABBBBAoBABBc5HHnnkIqPXhZybe4xmJ/t4IPc7vd9mm23svPPOcztqaYtrlYceesjlB1MAqyXH2eWJJ56wpZZaytZdd93sjyN9rbiwu1kAQS68OJsgdcfl3JJG0H3j6+vrTVMpNIq+zz771GRwLgsfSPu1496n1N++HkbQSxXkPAQQQAABBBBAAAEEyiegrafvvvvubke+fUs0A1nHalBTo8sbb7yx3Xbbbf5rNx3+v//9rymo3nDDDV3y7cyX6Rff+ta3bP78+fbaa69lvtKUcgXu3/72t91OWx999FHmO+UO0zmK3VSUxV5T5DXgOmjQIFtllVXsF7/4hS1YsCBzzl//+ldbddVV3fcK7NVm7dKVXd555x3bfvvtbejQobbJJpvYXXfdlfn62Wefde3Xzl8qf/zjH93W3P/6179svfXWc+fsvPPOXRKLK/jWcbremDFjnMVVV11l+++/v6tDSwXy2Tz++OP2zW9+0z2gWHnlle3444/vkqm/kGu7C8Tkn4JH0P/v//7PLr/88oKb/fDDDxd8bKUf6ANpH1gHvR+yuAcV5HwEEEAAAQQQQAABBMoncMABB9j111/vAt0ddtjBjVjnu7q2pz777LPthBNOcAGsgnoNdF577bX2ox/9yPbcc0/TlPREIuHq0hbWuWWzzTaz/v37u2nuCnZVFKAfd9xxLuDXcmS9//GPf2wtLS323HPPuRF3X4+mnj/yyCPu+BVXXNHuvfdeu/jii13QfOqpp7pZAEcddZSddNJJLvB+9NFH7Ve/+pULgA855BBfjdtiW7MGFEBfccUVtt9+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4+fqq68WRNles2aN3H333RrfAEsmEgglgbFjx+pwMAQhRGwNzEqxYsUKXYbyOqyLBJqKQES7uOMr20cffSSY8xXRRTHtx4gRIwS/2EwkECwBuFXNnDlTT7/vvvuOqgaBl4455pij9nMHCZAACTQ1AViZbrnlFv24iOmIMNwLkdzhnsxEAsESyM7OFoxDh2GkT58+Wg2ibE+aNEnd3IOtl+eRgC8CmCkAH4JGjhypw3Pw9+v111+Xnj17+irOfSQQdgRaGSugK+xaHWCDcYtwD83IyOB0HwGyY3ESIAESIIHII1BcXKweZvi/yEQCoSSAscAHDhyQHj16uGfOCWX9rIsELAE8Z7t27VKvM7uPSxKIBAItQqBHQkfxHkiABEiABEiABEiABEiABEiABCKbQESPQY/sruPdkQAJkAAJkAAJkAAJkAAJkAAJRBIBCvRI6k3eCwmQAAmQAAmQAAmQAAmQAAmQQNgSoEAP265jw0mABEiABEiABEiABEiABEiABCKJAAV6JPUm74UESIAESIAESIAESIAESIAESCBsCVCgh23XseEkQAIkQAIkQAIkQAIkQAIkQAKRRIACPZJ6k/dCAiRAAiRAAiRAAiRAAiRAAiQQtgQo0MO269hwEiABEiABEiABEiABEiABEiCBSCJAgR5Jvcl7IQESIAESIAESIAESIAESIAESCFsCFOhh23VsOAmQAAmQAAmQAAmQAAmQAAmQQCQRoECPpN7kvZAACZAACZAACZAACZAACZAACYQtAQr0sO06NpwESIAESIAESIAESIAESIAESCCSCFCgR1Jv8l5IgARIgARIgARIgARIgARIgATClgAFeth2HRtOAiRAAiRAAiRAAiRAAiRAAiQQSQQo0COpN3kvJEACJEACJEACJEACJEACJEACYUuAAj1su44NJwESIAESIAESIAESIAESIAESiCQCFOiR1Ju8FxIgARIgARIgARIgARIgARIggbAlQIEetl3HhpMACZAACZAACZAACZAACZAACUQSAQr0SOpN3gsJkAAJkAAJkAAJkAAJkAAJkEDYEqBAD9uuY8NJgARIgARIgARIgARIgARIgAQiiQAFeiT1Ju+FBEggYgls3bpVduzY4b6/wsJC2bRpk1RUVLj3cYUESIAESIAESIAESCC8CVCgh3f/sfUkQAIRTgDCPCsrS7p37y79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4FKdm5urlmm4FwebMK4aLtCYN72mhOjwKIOAZ97XKisr03HZZoq2mk6vc78/bbCVIPr8o48+qsHYjOjUNll3e1vGLtFmM02autnbfXbpbz1wR8d1MGa/puvYOu1yx44dYgSwutTbfc4l/oVijLwdy+08Ztdra7stE8wymPup7Tqheg5ruwaPkQAJkAAJkAAJ1E7gSKSY2svxKAmQAAmQQAMRgEs1xoPXN9U19Rfqh3t0TSkuLq6mQ37v96cNvirr3r27r93ufXDt9odRbfUgwrk/dbgvalZq+9iBcvjIUZs4Rxl/246ygaRg7qe2+kP1HNZ2DR4jARIgARIgARKonQDHoNfOh0dJgARIgARIgARIgARIgARIgARIoFEI0ILeKJh5ERIgARIgAW8C8+bNEzvvufexQLZDVU8g12RZEiABEiABEiABEmgIAhyD3hBUWScJkAAJkAAJkAAJkAAJkAAJkAAJBEiALu4BAmNxEiABEiABEiABEiABEiABEiABEmgIAhToDUGVdZIACZAACZAACZAACZAACZAACZBAgAQo0AMExuIkQAIkQAIkQAIkQAIkQAIkQAIk0BAEKNAbgirrJAESIAESIAESIAESIAESIAESIIEACVCgBwiMxUmABEiABEiABEiABEiABEiABEigIQhQoDcEVdZJAiRAAiRAAiRAAiRAAiRAAiRAAgESoEAPEBiLkwAJkAAJkAAJkAAJkAAJkAAJkEBDEKBAbwiqrJMESIAESIAESIAESIAESIAESIAEAiTw/05SpSlQVMBWAAAAAElFTkSuQmCC\n" }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%%R -w 1000 -h 500 -u px -i Ne,Ne_outfile_name,Marshallese_color,Not_Marshallese_color,Outside_color # this sets the size of the plot...otherwise, it will go off the page\n", "require(ggplot2)\n", "library(ggplot2)\n", "\n", "hpdi_only <- Ne[Ne$hpdi == 'yes',]\n", "\n", "p6 <- ggplot(data=hpdi_only, aes(x=value, group=variable, color=variable, fill=variable, alpha=0.8)) + \n", " geom_density(data=hpdi_only, aes(x=value,group=variable, color=variable, fill=variable),linetype=\"solid\",size=1)+\n", " labs(x=\"effective population size\",y=\"density\")+\n", " theme(plot.title = element_text(size=20, hjust=0.5))+\n", " scale_color_manual(values=c(Marshallese_color, Not_Marshallese_color,Outside_color), labels=c(\"Marshallese\",\"Not Marshallese\",\"Not Washington\"))+\n", " scale_fill_manual(values=c(Marshallese_color, Not_Marshallese_color,Outside_color), labels=c(\"Marshallese\",\"Not Marshallese\",\"Not Washington\"))+\n", " theme(panel.grid.major=element_line(colour=NA,size=NA))+\n", " theme(panel.grid.minor=element_line(colour=NA,size=NA))+ \n", " theme(strip.background = element_rect(colour=NA, fill=NA))+\n", " theme(axis.line.x=element_line(colour=\"black\"))+\n", " theme(axis.line.y=element_line(colour=\"black\"))+\n", " theme(strip.text.x=element_text(size=16))+\n", " theme(axis.title.y=element_text(size=16, vjust=8))+\n", " theme(axis.title.x=element_text(size=16, vjust=-6))+\n", " theme(axis.text=element_text(size=16, colour=\"black\"))+\n", " theme(axis.text.x=element_text(size=16))+\n", " theme(legend.text=element_text(size=16))+\n", " theme(legend.title=element_blank())+\n", " theme(panel.margin=unit(1, \"lines\"))+\n", " theme(plot.margin=unit(c(1,1,1,1),\"cm\"))+\n", " theme(legend.key.size=unit(0.7, \"cm\"))+\n", " theme(panel.background=element_rect(fill=NA))+\n", " theme(legend.key=element_rect(fill=NA))+\n", " scale_alpha(guide = 'none')+\n", " scale_x_continuous(expand = c(0, 0), limits=c(0,10), breaks=seq(0,10,2)) + \n", " scale_y_continuous(expand = c(0, 0))\n", "\n", "ggsave(Ne_outfile_name, p6, width = 8, height = 4, path=outfile_directory)\n", "p6" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "LHM-basics (python3)", "language": "python", "name": "lhm-basics" }, "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.7.3" } }, "nbformat": 4, "nbformat_minor": 2 }