{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# SureChEMBL iPython Notebook Tutorial 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## An introduction to patent chemoinformatics using SureChEMBL data and the RDKit toolkit" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### George Papadatos, ChEMBL group, EMBL-EBI" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##In this tutorial:\n", "1. Read a file that contains all chemistry extracted from the Levitra US patent (US6566360) along with *all* the other members of the same patent family.\n", "2. Filter by different text-mining and chemoinformatics properties to remove noise and enrich the genuinely novel structures claimed in the patent documents. \n", "3. Visualise the chemical space using MDS and dimensionality reduction. \n", "i. Identify outliers in the chemistry space. \n", "ii. Fix wrongly extracted structures. \n", "4. Find the Murcko and MCS scaffolds of the claimed compounds in the patent family. \n", "i. Compare the derived core with the actual Markush structure as reported in the original patent document.\n", "6. Identify **key** compounds using structural information only. This is based on the publications by [Hattori et al.](http://pubs.acs.org/doi/abs/10.1021/ci7002686) and [Tyrchan et al.](http://pubs.acs.org/doi/abs/10.1021/ci3001293). \n", "i. Count the number of NNs per compound. \n", "ii. Perform R-Group decomposition." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] }, { "data": { "application/javascript": [ "IPython.notebook.kernel.execute(\"current_url = \" + \"'\"+document.URL+\"'\");" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%pylab inline\n", "import pandas as pd\n", "\n", "from IPython.display import display\n", "from IPython.display import display_pretty, display_html, HTML, Javascript, Image\n", "\n", "from rdkit.Chem import PandasTools\n", "from rdkit.Chem.Draw import IPythonConsole\n", "from rdkit.Chem import AllChem as Chem\n", "from rdkit.Chem import DataStructs\n", "from rdkit.Chem import rdFMCS as MCS\n", "from rdkit.Chem import Draw\n", "Draw.DrawingOptions.elemDict[0]=(0.,0.,0.) # draw dummy atoms in black\n", "\n", "from itertools import cycle\n", "from sklearn import manifold\n", "from scipy.spatial.distance import *\n", "\n", "import mpld3\n", "mpld3.enable_notebook()\n", "\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", "\n", "from rdkit import RDLogger\n", "lg = RDLogger.logger()\n", "lg.setLevel(RDLogger.ERROR)\n", "\n", "# Get the base URL of the VM:\n", "display(Javascript('IPython.notebook.kernel.execute(\"current_url = \" + \"\\'\"+document.URL+\"\\'\");'))" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'2016.03.1'" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from rdkit import rdBase\n", "rdBase.rdkitVersion" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This is the base URL of the local Beaker server running on myChEMBL." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'tannin.windows.ebi.ac.uk:8000'" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cur_base_url = current_url.split('http://')[1].split('/')[0]\n", "base_url = 'localhost:8000' if (cur_base_url == 'localhost:9612' or cur_base_url == '127.0.0.1:9612') else current_url.split('http://')[1].split(':')[0] + ':8000'\n", "base_url" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "pd.options.display.mpl_style = 'default'\n", "pd.options.display.float_format = '{:.2f}'.format" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [], "source": [ "rcParams['figure.figsize'] = 16,10" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 1. Read and filter the input file" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The file was generated by extracting all chemistry from a list of patent documents in [SureChEMBL](https://www.surechembl.org). The Lucene query used to retrieve the list of relevant patents was: pn:\"US6566360\"." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [], "source": [ "df = pd.read_csv('/home/chembl/ipynb_workbench/document_chemistry_20141011_114421_271.csv',sep=',')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's check the contents:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "RangeIndex: 8497 entries, 0 to 8496\n", "Data columns (total 28 columns):\n", "Patent ID 8497 non-null object\n", "Annotation Reference 8497 non-null object\n", "Chemical ID 8497 non-null int64\n", "SMILES 8497 non-null object\n", "Type 8497 non-null object\n", "Chemical Document Count 8497 non-null int64\n", "Annotation Document Count 3372 non-null float64\n", "Title Count 3372 non-null float64\n", "Abstract Count 3372 non-null float64\n", "Claims Count 3372 non-null float64\n", "Description Count 3372 non-null float64\n", "Chemical Corpus Count 8497 non-null int64\n", "Annotation Corpus Count 3372 non-null float64\n", "Molecular Weight 8497 non-null float64\n", "Med Chem Alert 8497 non-null int64\n", "Log P 8497 non-null float64\n", "Donor Count 8497 non-null int64\n", "Acceptor Count 8497 non-null int64\n", "Ring Count 8497 non-null int64\n", "Rotatable Bound Count 8497 non-null int64\n", "Radical 8497 non-null int64\n", "Fragment 8497 non-null int64\n", "Connected 8497 non-null int64\n", "Singleton 8497 non-null int64\n", "Simple 8497 non-null int64\n", "Lipinski 8497 non-null int64\n", "Lead Likeness 8497 non-null int64\n", "Bio Availability 8497 non-null int64\n", "dtypes: float64(8), int64(16), object(4)\n", "memory usage: 1.8+ MB\n" ] } ], "source": [ "df.info()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(8497, 28)" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Add a SCHEMBL ID column and sort:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [], "source": [ "df['SCHEMBL ID'] = df['Chemical ID'].map(lambda x: 'SCHEMBL{0}'.format(x))\n", "df = df.sort('Chemical ID')" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "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", " \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", " \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", " \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", " \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", "
Patent IDAnnotation ReferenceChemical IDSMILESTypeChemical Document CountAnnotation Document CountTitle CountAbstract CountClaims Count...Rotatable Bound CountRadicalFragmentConnectedSingletonSimpleLipinskiLead LikenessBio AvailabilitySCHEMBL ID
25US-20050070541-A12-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]triazin-4-one5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCTEXT22.000.000.000.00...500100111SCHEMBL5613
778US-20100016323-A1US20100016323A1-20100121-C00062.MOL5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCMOLATTACHMENT2nannannannan...500100111SCHEMBL5613
6174US-20080113972-A1US20080113972A1-20080515-C00061.TIF5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCIMAGE2nannannannan...500100111SCHEMBL5613
7863EP-2295436-A1imgb0068.tif5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCIMAGE2nannannannan...500100111SCHEMBL5613
1103US-7122540-B22-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]triazin-4-one5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCTEXT22.000.000.000.00...500100111SCHEMBL5613
2418US-6362178-B12-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]triazin-4-one5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCTEXT22.000.000.000.00...500100111SCHEMBL5613
8194EP-1174431-B12-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]trazin-4-on5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCTEXT21.000.000.000.00...500100111SCHEMBL5613
8113EP-1049695-A12-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,l-f][l,2,4]-triazin-4-on5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCTEXT11.000.000.000.00...500100111SCHEMBL5613
8196EP-1174431-B12-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]-triazin-4-on5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCTEXT21.000.000.000.00...500100111SCHEMBL5613
8418WO-1999024433-A12-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,l-f][l,2,4]-triazin-4-on5613CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCCTEXT11.000.000.000.00...500100111SCHEMBL5613
\n", "

10 rows × 29 columns

\n", "
" ], "text/plain": [ " Patent ID Annotation Reference Chemical ID SMILES Type Chemical Document Count Annotation Document Count Title Count Abstract Count Claims Count ... Rotatable Bound Count Radical Fragment Connected Singleton Simple Lipinski Lead Likeness Bio Availability SCHEMBL ID\n", "25 US-20050070541-A1 2-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]triazin-4-one 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC TEXT 2 2.00 0.00 0.00 0.00 ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "778 US-20100016323-A1 US20100016323A1-20100121-C00062.MOL 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC MOLATTACHMENT 2 nan nan nan nan ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "6174 US-20080113972-A1 US20080113972A1-20080515-C00061.TIF 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC IMAGE 2 nan nan nan nan ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "7863 EP-2295436-A1 imgb0068.tif 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC IMAGE 2 nan nan nan nan ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "1103 US-7122540-B2 2-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]triazin-4-one 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC TEXT 2 2.00 0.00 0.00 0.00 ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "2418 US-6362178-B1 2-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]triazin-4-one 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC TEXT 2 2.00 0.00 0.00 0.00 ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "8194 EP-1174431-B1 2-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]trazin-4-on 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC TEXT 2 1.00 0.00 0.00 0.00 ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "8113 EP-1049695-A1 2-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,l-f][l,2,4]-triazin-4-on 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC TEXT 1 1.00 0.00 0.00 0.00 ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "8196 EP-1174431-B1 2-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,1-f][1,2,4]-triazin-4-on 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC TEXT 2 1.00 0.00 0.00 0.00 ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "8418 WO-1999024433-A1 2-(2-ethoxy-phenyl)-5-methyl-7-propyl-3h-imidazo[5,l-f][l,2,4]-triazin-4-on 5613 CCCC1=NC(C)=C2N1N=C(NC2=O)C1=CC=CC=C1OCC TEXT 1 1.00 0.00 0.00 0.00 ... 5 0 0 1 0 0 1 1 1 SCHEMBL5613\n", "\n", "[10 rows x 29 columns]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.iloc[600:610]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**First round of filtering: Novel compounds appear in the description or claims section of the document. Alternatively, they are extracted from images or mol files**" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff = df[(df['Claims Count'] > 0) | (df['Description Count'] > 0) | (df['Type'] != \"TEXT\")]" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(8484, 29)" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Second round of filtering: Simple physicochemical properties and counts**" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff = dff[(dff['Rotatable Bound Count'] < 15) & (dff['Ring Count'] > 0) & (df['Radical'] == 0) & (df['Singleton'] == 0) & (df['Simple'] == 0)]" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(8218, 29)" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.shape" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff = dff[(dff['Molecular Weight'] >= 300) & (dff['Molecular Weight'] <= 800) & (dff['Log P'] > 0) & (dff['Log P'] < 7)]" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(6711, 29)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Third round of filtering: Using Global Corpus Count**" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff = dff[(dff['Chemical Corpus Count'] < 400) & ((dff['Annotation Corpus Count'] < 400) | (dff['Annotation Corpus Count'].isnull()))]" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(6459, 29)" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Keep largest fragment and convert SMILES to RDKit molecules**" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff['SMILES'] = dff['SMILES'].map(lambda x: max(x.split('.'), key=len))" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [], "source": [ "PandasTools.AddMoleculeColumnToFrame(dff, smilesCol = 'SMILES')" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [], "source": [ "#dff.head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Fourth round of filtering: Remove duplicates based on Chemical IDs and InChI keys**" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff['InChI'] = dff['ROMol'].map(Chem.MolToInchi)\n", "dff['InChIKey'] = dff['InChI'].map(Chem.InchiToInchiKey)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": false }, "outputs": [], "source": [ "#dff.head()" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff = dff.drop_duplicates('Chemical ID')" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(401, 32)" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.shape" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff = dff.drop_duplicates('InChIKey')" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(394, 32)" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Wow, that was a lot of duplicates. This is because the same compounds come from different patents in the same patent family. In addition, in US patents a compound may come from 3 different sources: text, image and mol file. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Fifth round of filtering: Remove Boron-containing compounds as they are likely to be reactants.**" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff = dff.ix[~(dff['ROMol'] >= Chem.MolFromSmarts('[#5]'))]" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(394, 32)" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.shape" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff = dff.set_index('Chemical ID', drop=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That was the end of the filters - let's see a summary of the remaining compounds and their patent document source:" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff_counts = dff[['Patent ID','ROMol']].groupby('Patent ID').count()" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff_counts['Link'] = dff_counts.index.map(lambda x: '{0}'.format(x))" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff_counts = dff_counts.rename(columns={'ROMol':'# Compounds'})" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "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", " \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", "
# CompoundsLink
Patent ID
EP-1049695-A12EP-1049695-A1
EP-1049695-B17EP-1049695-B1
EP-1174431-A21EP-1174431-A2
EP-2295436-A168EP-2295436-A1
US-20040067945-A14US-20040067945-A1
US-20050070541-A12US-20050070541-A1
US-20060189615-A12US-20060189615-A1
US-20080113972-A134US-20080113972-A1
US-20100016323-A129US-20100016323-A1
US-20110009367-A143US-20110009367-A1
US-20130059844-A146US-20130059844-A1
US-6362178-B16US-6362178-B1
US-6566360-B14US-6566360-B1
US-6890922-B22US-6890922-B2
US-7122540-B27US-7122540-B2
US-7314871-B243US-7314871-B2
US-7696206-B232US-7696206-B2
US-7704999-B259US-7704999-B2
WO-1999024433-A13WO-1999024433-A1
" ], "text/plain": [ " # Compounds Link\n", "Patent ID \n", "EP-1049695-A1 2 EP-1049695-A1\n", "EP-1049695-B1 7 EP-1049695-B1\n", "EP-1174431-A2 1 EP-1174431-A2\n", "EP-2295436-A1 68 EP-2295436-A1\n", "US-20040067945-A1 4 US-20040067945-A1\n", "US-20050070541-A1 2 US-20050070541-A1\n", "US-20060189615-A1 2 US-20060189615-A1\n", "US-20080113972-A1 34 US-20080113972-A1\n", "US-20100016323-A1 29 US-20100016323-A1\n", "US-20110009367-A1 43 US-20110009367-A1\n", "US-20130059844-A1 46 US-20130059844-A1\n", "US-6362178-B1 6 US-6362178-B1\n", "US-6566360-B1 4 US-6566360-B1\n", "US-6890922-B2 2 US-6890922-B2\n", "US-7122540-B2 7 US-7122540-B2\n", "US-7314871-B2 43 US-7314871-B2\n", "US-7696206-B2 32 US-7696206-B2\n", "US-7704999-B2 59 US-7704999-B2\n", "WO-1999024433-A1 3 WO-1999024433-A1" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff_counts" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Right, is Levitra included in this set? ChEMBL tells me that its InChiKey is 'SECKRCOLJRRGGV-UHFFFAOYSA-N'." ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SCHEMBL IDROMol
Chemical ID
5441SCHEMBL5441\"Mol\"/
" ], "text/plain": [ " SCHEMBL ID ROMol\n", "Chemical ID \n", "5441 SCHEMBL5441 \"Mol\"/" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.ix[dff.InChIKey == 'SECKRCOLJRRGGV-UHFFFAOYSA-N',['SCHEMBL ID','ROMol']]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Good - it is..." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2. Visualise the patent chemical space - MDS" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Preparation of the pairwise distance matrix." ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "collapsed": false }, "outputs": [], "source": [ "fps = [Chem.GetMorganFingerprintAsBitVect(m,2,nBits=2048) for m in dff['ROMol']]" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dist_mat = squareform(pdist(fps,'jaccard'))" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "collapsed": false }, "outputs": [], "source": [ "mds = manifold.MDS(n_components=2, dissimilarity=\"precomputed\", random_state=3, n_jobs = 2)" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [], "source": [ "results = mds.fit(dist_mat)" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "collapsed": false }, "outputs": [], "source": [ "coords = results.embedding_" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff['X'] = [c[0] for c in coords]" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff['Y'] = [c[1] for c in coords]" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "collapsed": false }, "outputs": [], "source": [ "csss = \"\"\"\n", "table\n", "{\n", " border-collapse: collapse;\n", "}\n", "th\n", "{\n", " color: #ffffff;\n", " background-color: #848482;\n", "}\n", "td\n", "{\n", " background-color: #f2f3f4;\n", "}\n", "table, th, td\n", "{\n", " font-family:Arial, Helvetica, sans-serif;\n", " border: 1px solid black;\n", " text-align: right;\n", "}\n", "\"\"\"" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import base64" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff['base64smi'] = dff['SMILES'].map(base64.b64encode)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's produce a scatter plot of the chemical space - points represent compounds, color-coded by the patent document they were found in. Thanks to [mpld3](http://mpld3.github.io/), the scatter plot is interactive with *live* structure rendering calls to the *local* myChEMBL Beaker server. " ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nb1her9eyLMv60Y9+ZO3Zsyem/URg4eRnWZa1fft26/3337csy7J8Pp/V3d0dsz4iuHDzsyzLevPN\nN60XXnjB+uEPfxir7iGEcLJrb2+3zpw5Y1mWZfX29lp//ud/bn3++eex7Cau4/f7rUcffdS6dOmS\n5fV6rW9/+9uj8jh8+LD1t3/7t5ZlWVZdXZ315JNPxqOruEE42dXW1g7/bDty5AjZJZBw8hs673vf\n+571zDPPWPv27YtDT3GjcLLr7u62tm3bZrW2tlqWZVmdnZ1jXjchhsMdPHhQ69atkyStX79eBw4c\nCHjewMCArl69Kr/fr76+PuXn58eymwginPx6enpUU1OjDRs2SJLsdnvQuw2IrXDff62trTpy5AjL\n1yeQcLJzuVzDdxHS09NVXl6utra2WHYT1zl16pRKS0tVVFQkh8Oh3/3d3x2V24EDB4ZznTt3rnp6\netTR0RGP7uI64WRXVVU1/LNt7ty5vNcSSDj5SdK7776r1atXKzc3Nw69RCDhZLd3716tWrVKbrdb\nksLKLyGKoM7OTrlcLkmDP7A7OztHneN2u/XFL35RjzzyiB566CFlZWVp8eLFse4qAggnv0uXLikn\nJ0cvvviiHnvsMe3YsUP9/f2x7ioCCCc/SXr55Ze1detW2Wy2WHYPIYSb3ZBLly7p3LlzDEONo7a2\nNhUUFAwfu93uUb8oh3MOYm+8uezevVtLly6NRdcQhnDfewcOHNBdd90V6+4hhHCyu3Dhgrq6uvS9\n731PTzzxhD788MMxrxuzCTVPP/30iB/QlmXJZrPp/vvvH3VuoF+yuru7dfDgQb344ovKzMzUs88+\nq71792rt2rWT2m8MijS/gYEBnTlzRl//+tdVWVmpnTt3ateuXbrvvvsmtd8YFGl+hw8fVl5enioq\nKnTixAlZrKwfM5FmN+Tq1av60Y9+pAcffFDp6emT0lcAg44fP649e/bob/7mb+LdFYzDzp07tWXL\nluFjftaZY+j3zL/6q79SX1+fvvOd76iqqkrTpk0L+piYFUFPPfVU0DaXy6WOjo7h/+bl5Y0659ix\nYyouLlZ2drYkadWqVaqtraUIipFI83O73SooKFBlZaUkafXq1dq1a9ek9RcjRZpfTU2NDh48qCNH\njqi/v1+9vb3avn27Hn300cnsNhR5dpLk9/v17LPP6vbbb9ctt9wyWV1FGNxut1paWoaP29rahodv\nXH9Oa2vr8HFra+uocxB74WQnSefOndM//dM/6cknnxz+nQXxF05+p0+f1vPPPy/LsnTlyhUdOXJE\nDodDK1eujHV3cZ1wPzdzcnKUmpqq1NRU3XTTTTp79mzIIighhsOtWLFCe/bskSTt2bMn4D+2wsJC\nnTx5Uv39/bIsS8eOHVN5eXmMe4pAwsnP5XKpoKBAFy5ckDRY1E6fPj2W3UQQ4eT3wAMP6Cc/+Ym2\nb9+ub33rW1q4cCEFUAIIJztJ+slPfqLp06ezKlwCmDNnji5evKjm5mb5fD599NFHo3JbuXKlfvnL\nX0qS6urqlJWVNTzsEfETTnYtLS169tln9eijj4b85QuxF05+27dv1/bt2/XjH/9Yq1ev1p/8yZ9Q\nACWAcLK75ZZbVFNTo4GBAfX19enkyZNj/p5psxLgXl9XV5eee+45tbS0qKioSNu2bVNWVpba29u1\nY8cOPf7445Kk1157TR9//LHsdrsqKir00EMPsUR2Agg3v7Nnz2rHjh3y+XwqKSnRI488wuIICSDc\n/IZ88sknevPNN1kiOwGEk11NTY2++93vyuPxyGazyWaz6atf/SpzFeKourpa//qv/yrLsnTHHXdo\n8+bN+s///E/ZbDbdeeedkqR//ud/VnV1tdLT0/Xwww9r9uzZce41pLGze+mll7R//34VFRXJsizZ\n7XY988wz8e42fiuc996QF198UStWrGCJ7AQRTnb/8R//oT179iglJUUbN27Upk2bQl4zIYogAAAA\nAIiVhBgOBwAAAACxQhEEAAAAIKlQBAEAAABIKhRBAAAAAJIKRRAAAACApEIRBAAAACCpUAQBAAAA\nSCoUQQAAAACSyv8HgT2B2n5lSHQAAAAASUVORK5CYII=\n", "text/html": [ "\n", "\n", "\n", "\n", "
\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "fig.set_size_inches(14.0, 12.0)\n", "#colors = cycle('bgrcmykwbgrcmykbgrcmykwbgrcmykw')\n", "colors = cycle(cm.Dark2(np.linspace(0,1,len(dff_counts.index))))\n", "for name, group in dff.groupby('Patent ID'):\n", " labels = []\n", " for i in group.index:\n", " zz = group.ix[[i],['Patent ID','SCHEMBL ID','base64smi']]\n", " zz['mol'] = zz['base64smi'].map(lambda x: ''.format(base_url,x))\n", " del zz['base64smi']\n", " label = zz.T\n", " del zz\n", " label.columns = ['Row: {}'.format(i)]\n", " labels.append(str(label.to_html()))\n", " points = ax.scatter(group['X'], group['Y'],c=colors.next(), s=80, alpha=0.8)\n", " tooltip = mpld3.plugins.PointHTMLTooltip(points, labels, voffset=10, hoffset=10, css=csss)\n", " mpld3.plugins.connect(fig,tooltip) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Nice, we get Beaker rendering on the fly. However, there is a bunch of compounds on the left that are distinctively different. This is because of an image extraction error. \n", "At least the error is systematic: extraction breaks the imidazole ring. Let's try to 'repair' the ring and rescue these compounds - we'll use an appropriate intramolecular reaction SMARTS." ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "collapsed": false }, "outputs": [], "source": [ "resmarts = \"([R:5][C;!R:1]=[C;H2].[C;H0,H1;!R:4]-[N;H2:2])>>[R:5][*:1]=[*:2]-[*:4]\"" ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Draw.ReactionToImage(Chem.ReactionFromSmarts(resmarts))" ] }, { "cell_type": "code", "execution_count": 49, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def fixRing(mol,resmarts=resmarts):\n", " rxn = Chem.ReactionFromSmarts(resmarts)\n", " ps = rxn.RunReactants((mol,))\n", " if ps:\n", " m = ps[0][0]\n", " Chem.SanitizeMol(m)\n", " return m\n", " else:\n", " return mol" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So this..." ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mm = dff.ix[12823029]['ROMol']\n", "mm" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "...will become this:" ] }, { "cell_type": "code", "execution_count": 51, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nQmCC\n", "text/plain": [ "" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fixRing(mm)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's apply the repair to all affected structures:" ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "collapsed": false }, "outputs": [], "source": [ "for i, p, m in zip(dff.index, dff['Patent ID'], dff['ROMol']):\n", " if p == 'EP-2295436-A1':\n", " dff.ix[i,'ROMol'] = fixRing(m)" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff['InChI'] = dff['ROMol'].map(Chem.MolToInchi)\n", "dff['InChIKey'] = dff['InChI'].map(Chem.InchiToInchiKey)\n", "dff = dff.drop_duplicates('InChIKey')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So after the fix, we have even less structures because some of the fixed ones already existed. Hopefully, however, we have less false positives too:" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(363, 35)" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.shape" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "collapsed": false }, "outputs": [], "source": [ "dff['RD_SMILES'] = dff['ROMol'].map(Chem.MolToSmiles)\n", "dff['base64rdsmi'] = dff['RD_SMILES'].map(base64.b64encode)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We're going to re-calculate the distance matrix and plot the MCS just to double-check they were no side-effects from the applications of the reaction." ] }, { "cell_type": "code", "execution_count": 56, "metadata": { "collapsed": false }, "outputs": [], "source": [ "fps = [Chem.GetMorganFingerprintAsBitVect(m,2,nBits=2048) for m in dff['ROMol']]\n", "dist_mat = squareform(pdist(fps,'jaccard'))\n", "mds = manifold.MDS(n_components=2, dissimilarity=\"precomputed\", random_state=3, n_jobs = 2)\n", "results = mds.fit(dist_mat)\n", "coords = results.embedding_\n", "dff['X'] = [c[0] for c in coords]\n", "dff['Y'] = [c[1] for c in coords]" ] }, { "cell_type": "code", "execution_count": 57, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0EAAALBCAYAAACeOqq1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xt0W9d9L/jvwYsECYJ4EARJkCCpB0SLkqi3ZVt+yJbt\nuLFjT+x03YnTae5kdebOrK7lZq1O18rLTdL0dq3bpula967c1c44VTuO20ziTtx4HEeOZMembVmy\n3qJMURQFgW+CBEAQJEgCB2f+oEARIgCCBDYBEN/PXz7c4DkbPx2D54e9929LiqIoICIiIiIiKhGq\nfHeAiIiIiIhoPTEJIiIiIiKiksIkiIiIiIiISgqTICIiIiIiKilMgoiIiIiIqKQwCSIiIiIiopKi\nycVJLly4gGPHjkFRFBw5cgTPPffcstd0dXXhn/7pnyDLMoxGI/78z/88F5cmIiIiIiJalayToFgs\nhldeeQUvv/wyzGYzvvGNb+DAgQNwOByLr5mZmcErr7yCb3/727BYLAgGg9leloiIiIiIaE2yng7X\n29uL+vp62Gw2aDQaPPDAAzhz5kzCazo7O3HvvffCYrEAAIxGY7aXJSIiIiIiWpOsR4J8Ph+sVuvi\nscViQW9vb8JrhoaGIMsyvve972F2dhZPPfUUHnrooWwvTUREREREtGo5WRO0klgshps3b+Lll1/G\n3Nwcvv3tb8PlcqGurm49Lk9ERERERLQo6yTIYrFgfHx88djn8y1Oe1v6mqqqKuh0Ouh0Otxzzz1w\nu91pk6ATJ05k2zUiIiIiItrgHnvssVX/TtZJ0JYtWzAyMgKv1wuz2YwPP/wQL730UsJrDhw4gJ/8\n5CeIxWKIRCK4fv06nn766RXPvXfv3my7R3fp7OzE4cOH892NDYmxFYexFYexFYexFYNxFYexFYex\nFefcuXNr+r2skyCVSoWvfe1r+MEPfgBFUfDoo4+isbER77zzDiRJwtGjR+FwONDR0YE//dM/hUql\nwtGjR9HY2JjtpYmIiIiIiFZNUhRFyXcnkjlx4gRHgoiIiIiIKKVz586taTpc1iWyiYiIiIiIigmT\noBLT2dmZ7y5sWIytOIytOIytOIytGIyrOIytOIxt4WESREREREREJYVrgoiIiIiIqChxTRARERER\nEVEGmASVGM5JFYexFYexFYexFYexFYNxFYexFYexLTxMgoiIiIiIqKRwTRARERERERUlrgkiIiIi\nIiLKAJOgEsM5qeIwtuIwtuIwtuIwtmIwruIwtuIwtoWHSRAREREREZUUrgkiIiIiIqKixDVBRERE\nREREGWASVGI4J1UcxlYcxlYcxlYcxlYMxlUcxlYcxrbwMAkiIiIiIqKSwjVBRERERERUlLgmiIiI\niIiIKANMgkoM56SKw9iKw9iKw9iKw9iKwbiKw9iKw9gWHiZBRERERERUUrgmiIiIiIiIihLXBBER\nEREREWWASVCJ4ZxUcRhbcRhbcRhbcRhbMRhXcRhbcRjbwsMkiIiIiIiISgrXBBERERERUVHimiAi\nIiIiIqIMMAkqMZyTKg5jKw5jKw5jKw5jKwbjKg5jKw5jW3iYBBERERERUUnhmiAiIiIiIipKXBNE\nRERERESUASZBJYZzUsVhbMVhbMVhbMVhbMVgXMVhbMVhbAsPkyAiIiIiIiopXBNERERERERFiWuC\niIiIiIiIMsAkqMRwTqo4jK04jK04jK04jK0YjKs4jK04jG3hYRJEREREREQlhWuCiIiIiIioKHFN\nEBERERERUQaYBJUYzkkVh7EVh7EVh7EVh7EVg3EVh7EVh7EtPEyCiIiIiIiopHBNEBERERERFSWu\nCSIiIiIiIsoAk6ASwzmp4jC24jC24jC24jC2YjCu4jC24jC2hYdJEBERERERlRSuCSIiIiIioqLE\nNUFEREREREQZYBJUYjgnVRzGVhzGVhzGVhzGVgzGVRzGVhzGtvAwCSIiIiIiopLCNUFERERERFSU\nuCaIiIiIiIgoA0yCSgznpIrD2IrD2IrD2IrD2IrBuIrD2IrD2BYeTb47QERERIUjJs8j5O1BcPBT\nhCc90Fc7YXTsh8Hmgkqty3f3iIhygmuCiIiICMBCAuTteRuD538KYOnjgQTHnhdhc32OiRARFRSu\nCSIiIqKshLw9SRIgAFAweP6nCHl78tEtIqKcYxJUYjgnVRzGVhzGVhzGVpxijG1w8FMsT4DiFASH\nzq5nd5IqxrgWC8ZWHMa28DAJIiIiIgBAeNKTvj2Qvp2IqFhwTRAREREBAAbOHsPYtbdStte2fR6N\ne/9wHXtERJQe1wQRERFRVoyO/QCkFK0SjA371rM7RETCMAkqMZyTKg5jKw5jKw5jK04xxtZgc8Gx\n50UsT4QkOPZ8BQabKx/dSlCMcS0WjK04jG3h4T5BREREBABQqXWwuT4HvXkTgkNnEQ54oDc5YWzY\nx32CiGhD4ZogIiIiIiIqSlwTRERERERElAEmQSWGc1LFYWzFYWzFYWzFYWzFYFzFYWzFYWwLD5Mg\nIiIiIiIqKVwTRERERERERYlrgoiIiIiIiDLAJKjEcE6qOIytOIytOIytOIytGIyrOIytOIxt4WES\nREREREREJYVrgoiIiIiIqChxTRAREREREVEGmASVGM5JFYexFYexFYexFYexFYNxFYexFYexLTxM\ngoiIiIiIqKRwTRARERERERUlrgkiIiIiIiLKAJOgEsM5qeIwtuIwtuIwtuIwtmIwruIwtuIwtoWH\nSRAREREREZUUrgkiIiIiIqKixDVBREREREREGWASVGI4J1UcxlYcxlYcxlYcxlYMxlUcxlYcxrbw\nMAkiIiIiIqKSwjVBRERERERUlLgmiIiIiIiIKANMgkoM56SKw9iKw9iKw9iKw9iKwbiKw9iKw9gW\nHiZBRERERERUUrgmiIiIiIiIihLXBBEREREREWWASVCJ4ZxUcRhbcRhbcRhbcRhbMRhXcRhbcRjb\nwsMkiIiIiIiISkpO1gRduHABx44dg6IoOHLkCJ577rmkr+vt7cV3vvMd/Mmf/AnuvffetOfkmiAi\nIiIiIkonb2uCYrEYXnnlFXzrW9/CD3/4Q3z44YcYHBxM+rrXXnsNHR0d2V6SiIiIiIhozbJOgnp7\ne1FfXw+bzQaNRoMHHngAZ86cWfa6t99+G4cOHYLRaMz2kpQFzkkVh7EVh7EVh7EVh7EVg3EVh7EV\nh7EtPFknQT6fD1ardfHYYrHA5/Mte82ZM2fwxBNPZHs5IiIiIiKirKxLYYRjx47hxRdfXDwu0K2J\nSsLhw4fz3YUNi7EVh7EVh7EVh7EVg3EVh7EVh7EtPJpsT2CxWDA+Pr547PP5YLFYEl7T19eHv/u7\nv4OiKJiamsL58+eh0Wiwf//+tOfu7OxcvGniw4g85jGPecxjHvOYxzzmMY953NnZiYqKCqxF1tXh\nYrEYXnrpJbz88sswm834xje+gZdeegmNjY1JX//jH/8Y+/btY3W4POnsvJNYUm4xtuIwtuIwtuIw\ntmIwruIwtuIwtuKstTqcJtsLq1QqfO1rX8MPfvADKIqCRx99FI2NjXjnnXcgSRKOHj2a7SWIiIiI\niIhyJif7BInAkSAiIsoFWY4gMHoDXs9FhHyDMFgcsDk7YLJvhlqtzXf3VkWJRjA33IPwjbOITHig\ntTqh37wPZfUuSJriei9ERLmQt5EgIiKiQiXLEfR3vYueM68DWPjOzzfcDU/XSbgOPI+m9iNFkwgp\n0QimLv4Gkx+8hvh7mevvQujC26h+8Muo6niSiRARUYbWpTocFY74gjLKPcZWHMZWnI0e28DojYQE\n6A4FPWdeR2D0hrBr5zq2c8M9CQnQHQomP3gNc0PXcnq9QrXR79l8YmzFYWwLD5MgIiLasLyei1ie\nNMQp8HourWd3shK+cRbp3kv45vn17A4RUVHjdLgSw8ok4jC24jC24mz02IZ8g2nbp/1Dwq6d69hG\nJjwrtPfn9Hq5IEejGB/1YNDdjYBvFCaLHY6WNtTYnVBr1vYIstHv2XxibMVhbAsPkyAiItqwDBYH\nfMPdKdsrzQ3r2JvsaK1OzPV3pWlvWsferEyORtFz5RQunDqO+AjW6GAfrl0+hd2HnoBrx6E1J0JE\nRNnidLgSwzmp4jC24jC24mz02NqcHQCkFK0SbM5dwq6d69jqN+9Duveib92T0+tla3zUk5AA3aHg\nwqnjGB+9tabzbvR7Np8YW3EY28LDJIiIiDYsk30zXAeex/LkQYLr4Asw2Tfno1trUlbvQvWDX0ay\n91L94Isoa9iWj26lNOjuRro1TIO3etazO0RECbhPEBERbWh39gm6hGn/ECrNDbA5d637PkFKREb0\n5jgilwchDwWgbjBBu9MBTWsNJK06s3PE9wnqO4fIRD+01iboW/egrGFbwZXHPvmrf8ToYF/K9jrH\nZhx55qvr1yEi2pC4TxAREVESarUW1oY2WBva8tYHJSJj7v0ezL5xYXFwRO4ZxfzvrqH82d0oe8iV\nUSIkabQob2pHeVO74B5nz2Sxp02Cqq32dewNEVEiTocrMZyTKg5jKw5jK85Gia0sRzAx1I3uUz/D\np2/9LbpP/QwTQ92Q5Uje+rQ0ttGb4wkJ0CIFmH3jAqJ94+vbuXXgaGlDujVMjmbXms67Ue7ZQsTY\nisPYFh6OBBERUVGT5Qj6u95N2BTVN9wNT9dJuA48j6b2I+s67S2ZyOXBdMtjELkyCO22jTUyUmN3\nYvehJ5IUR5Cw574nUWNvzlfXiIi4JoiIiIrbxFA3zv76R0ieZUjY99TXF6fCybEIRgO98HgvwB8a\nhNnggNO2G3bTFqhV4hKlqf96EnLPaMp29bY6VP3xEWHXz5fFfYJuXcPkxCiqrXY4ml2osTezPDYR\n5QTXBBERUUnyei4i3TCL13MJ1oY2yLEIrnpO4HTvzxdfP+S/iq7+3+Lgli9hu/MxYYmQusGUPgmq\nrxZy3XxTazSwOzbB7tiU764QESXgmqASwzmp4jC24jC24myE2IZ8g2nbp/1DAIDRQG9CAnSHgtO9\nP8dooDen/frkk08W/1u705FueQy0Oxw5vfZGthHu2ULF2IrD2BYeJkFERFTUDJb0CUSluQEA4PFe\nQLoRI8/4xaz6oURkhK9PwPfLboz+9zOo61EhfH0CSkSGprUG5c/uTrbFD8qf2wPNppqsrk1ERKvD\n6XAl5vDhw/nuwobF2IrD2IqzEWJrc3bA03USqdYE2Zy7AAD+UPoRo8AK7ekoERnBTg/8b/YkdGP0\ngg/mp10wHnai7CEX1E2WhX2Chiehrq+GdocDmk2Z7xNEG+OeLVSMrTiMbeFhEkREREXNZN8M14Hn\nE6rDLZDgOvgCTPbNAACzwYEh/9XU5zGsfUrarDuwLAECFrrjf7MHukYj9Fut0Lrs0Lo2VhU4IqJi\nxOlwJYZzUsVhbMVhbMURHdtYNIrAgBt9ncfR9car6Os8jsCAG7FoNGfXUKu1aGo/gn1PfR3O9qOw\nNmyHs/0o9j31dTRtf2SxPLbTthvpFuY4azrW3Idwl3dZAhQKhRb+QwHCV71rPjcl4ueBOIytOIxt\n4eFIEBERCRGLRjF86TRuvnccSngemJcBnRpDpz9C6yNPoH7XQahyVCZZrdbC2tC2WAo7GbtpCw5u\n+VKS4ggSDm79fdhNW9Z8/cjwVPr2kdCaz01ERLnHfYKIiEiIgOcmrrz2E8QC08vaVKZK7Pjyf4TJ\nmdvSybFoFMGRAfjcPQhPjEFvrYWlxQVjXSNUGs2dfYLGLyIQGoTJ4ICzpiPrfYJ8v+xG8P1bKduN\nDzfD8mzqBI2IiNaG+wQREVFB8fVcTZoAAUAsMA1fz2c5TYJi0SiGL5+B+6MTiz8LDLgxfPE0Wu5/\nDPU7D0Ct0aLBcg8aLPfk7LoAoG+3IfjBrVS1GaDfbsvp9QpVvjajJSJaLa4JKjGckyoOYysOYytO\nstjKcgQTQ93oPvUzfPrW36L71M8wMdQNWY6s6tyhoaG07dPDw6s630qCIwMJCdBS7o9OIDgykNPr\nLVXeYoL5aVfCkqNQKARIgPkZF8pbTMKuXSjim9H++tzfoKv/ndsb0b6DX5/7G1z1nIAcW939kwo/\nD8RhbMVhbAsPR4KIiGiRLEfQ3/VuQqU133A3PF0n4TrwPJrajywWGlhJRYUZgTTt+orcJgY+d0/a\ndr/7OkyNLTm9ZpykVcN42AldoxHhq15ERkKQKiyoPbQJ5S2mkiiBvdJmtFZjc85H4IiI1opJUIlh\nnXpxGFtxGFtx7o5tYPRGklLTAKCg58zrqKpxpi0+sJS5YROGpI+BZEtPJQnmutZV9XWlqVbhibG0\nvz/jS9+eLUmrhn6rFfqtVqHXKVSZbEabiySInwfiMLbiMLaFh0kQEREt8nouIt2DrNdzKeMkqMru\nQPP+h3Hr098lJkKShOb9j6DK3phxv+JTrZaONCxMt/otDm75ErY7H4PeWovAgDvlOSostRlfr9DJ\n0SjGRz0YdHcj4BuFyWKHo6UNNXYn1DmquLdaa92MthDfCxFtfFwTVGI4J1UcxlYcxlacu2Mb8qV/\nkJ32p1/ns5TWWYPaujbcc/AZ1O84AFPzZtTvOIC2g0+jtr4N2uaajM+10lSr0UAvLC2utOcwt2zN\n+Hq5IOq+laNR9Fw5hZO/OoZrlz/G6GAfrl3+GCd/dQw9V05BzuEeTKthXmGz2WSb0a7lvfDzQBzG\nVhzGtvAwCSIiokUGS/oH2UpzQ8bnkrRqlB/cDFP7PXCY2rHZuB8OUzvM27ej/MCmVa2TyWSqlbGu\nES33Jy+T2nL/URjrMh95KmTjox5cOHUcyRLCC6eOY3w0dalukdayGW2hvhci2vg4zlxiOCdVHMZW\nHMZWnLtja3N2wNN1EqlqPducu1Z1fkmrhtZlh9ZlX3snkdlUK5VGg/qdB1Bpq4fffR0zvjFUWGph\nbtm6uE/QehJ13w66u5EuIRy81QO7Y7OQa6ezls1o1/Je+HkgDmMrDmNbeJgEERHRIpN9M1wHnk9S\nHEGC6+ALMNnX/+EaWJhqNeS/mrI9PtVKpdHA1NgirApcIQj4RtO2T06kbxdFrdJiu/MxWI3NGW9G\nW6jvhYg2PiZBJaazs5PfRgjC2IrD2Ipzd2zVai2a2o+gqsYJr+cSpv1DqDQ3wObcBZN9c8blsXPN\naduNrv7fYjExUxRE5DnMR2cgy1HoddUY8n2Wt005ky3u11ZYsH3n/pwv7jdZ7Bgd7EvZXm3NbtQt\nG2rV6jajXct7ycXngSzH4B2ZQv+tAAL+GZjMFWhqNsFWVwW1unRXCvCzVhzGtvAwCSIiogRqtRbW\nhraMq8Cth4SpVkoM4fkpTM/5AQD7Nv8PuDb4O3za+4vFSnHrmQjFF/cvXdsyOtiHUGgaGikK145D\nOU2EHC1tuHb5FFJNWXQ0py8QUUjy8V5kOYbuKyM490n/4s9GBoPovjKCvfc2oW1HXUknQkSlQv3d\n7373u/nuRDI3b95EfX19vrux4Tidznx3YcNibMVhbMUpltiqJDVqjM2oN7dBpVIjIofRaNmBLfX3\nwRt0Yyq8sAfQoO8q6s1tqNLb1q1v3mE3Pj65fG8lnU6HkYE+2B0tMBgtObuevqIKWl0ZRgbuHkGR\nsOe+J9HU2g6Vau0P8XI0Cu+wGz2XP8ZnFzvhHx+GSq2GvqIqq/Mms5b3ku09OzYcxIfvJh99Gh4M\noq7BCIOxPKtrFKti+TwoRoytOMPDw9i0adOqf48jQUREVBTiU62GfJ+hTGtAMDyGseCNu16Vu005\nM7XehQrUGg1cOw7BYmvA4K1rmJwYRbXVDkezCzX25qxGnVKNal27fAq7Dz2R81Etke8llf5bgbTt\nA54A6hzVOb8uERUWJkElhnNSxWFsxWFsxSnG2Hon+xCYTr1fUapNOZVoBHPDPQjfOIvIhAdaqxP6\nzftQVu+CpFn79LlUi/tDoRAMBoOQxf1qjQZ2xybYHav/9jOdlUpWW2z1Oa88t9r3ku09G/DPrNAe\nXvO5i10xfh4UC8a28DAJIiLaIEQ95BeaTCvFLaVEI5i6+BtMfvAa4g/4c/1dCF14G9UPfhlVHU+u\nOUaFXKhgtQq1/PZqrPT/gclcgZHBYMrfN5n169hbIsoXrvwrMfwWQhzGVhzGdmVKNIJQ17vwv3sM\nM9c+vP2A/2t4X/9LTF38DZRoJOnvFWNs17Ip59xwT0ICdIeCyQ9ew9zQtTX3x9HSlrQ/BoMBxVao\noBhKVqe7Z+PJrvf1v0Towq+T/n/Q1GxKe/5GZ/r2jawYPw+KBWNbeJgEEVFJUKIRzPZ3wf/eP2Ps\n9R/A/94/Y7a/K2VyUEyUiIzprn5MfzyPqOc+qJVnULH5P0BtrEcuHvILTbxS3PLEI/WmnOEbZ5Fu\nhCN88/ya+1Njd2L3oSeS9mfPfU+ixt685nOvN5Ml/ahVoY9qZZLs2uqqsPfepqS/v++QE7a6KuH9\nJKL843S4EsM5qeIwtuJkG1uRU6HyTYnICHZ6MP4vpxCbWZjiMwsAElD9uScA43HIwWGEb55HuXPH\nst8vxvt2LZtyRiY8ac8ZmehP2562PykW92v1Zmxtz/0+QSKJLlktyxEERm/A67mIkG8QBosDNmfH\nqvagSnfPZpLsljt3oG1HHaw1lRjwBBDwh2Ey69Ho5D5Bxfh5UCwY28JTPJ/MRERrtNK3wzpbS9IE\noRjMugPwv9kDJTqf2KAAk2+7YfnSQ5gJ/iyrh/z1oERkRG+OI3J5EPJQAOoGE7Q7HdC01kDSqpe9\nfrWbcmqtTsz1d6VpTz4ykEqyzVEdLW3oOPj4YtLT2dlZVAkQcGdUa3lxhOxHtWQ5gv6ud9Fz5k45\ncd9wNzxdJ+E68Dya2o9kvRlvpsmuWq1CnaOaVeCISlhxfTpT1vgthDiMrTjZxjbTb4eLUbjLCyiA\npNZBWRgDukMBIkNqqPTGlA/5ou/bTIo1KBEZc+9dw8zrpxCbnYESnYek0UH1TgUqnj+Eske2JU2E\nVkO/eR9CF95GqhEOfeuejM+VaRnpfH0mrDahXGrpqNaA+zP4xgZQUVEBk8kMjexHYKx3VaM2SwVG\nbyQkQEt6jJ4zr6OqxpnRBr3p4prrZLfU8O+YOIxt4WESREQbnsipUPkWGZ4CAKjKKhELL694FRmP\nQOM0ruohP1cynYYYvTGG6X99H/LUxJ3fnQ8jNjOJ6X99H+omE7RtDVn1pazeheoHv5xkRFBC9YMv\noqxhW8bnykcZ6UwpERlz7/dg9o0Li92Te0Yx/7trKH92N8oecmWUCNXUNWEu4MHsyDAi41MYHJi6\n3SqtedTG67mIdF9GeD2XliVBMXkeIW8PgoOfIjzpgb7aCaNjPww2F1Rq3bKz5DLZJaKNrXQnvpao\nzs7OfHdhw2Jsxck2tlpr+p26i/nbYW39wiJuSVcGtcGyvL1GB0PHEykf8kXet3PDPZh8/6eIzc8g\nOjWBiH8Y0akJxOZnMPn+TxeLNcydv5GQAC0lT01g7nzq8tOZkjRaVHU8Cdvz34Jhz++hzLkThj2/\nB9sXv4mqjidWtSYskzLSQH4+E6I3xxMSoCXdwuwbFxDtG8/oPIHRG+g+9S+YDgxhfnZqScvCqE1g\n9O5NalcW8iXfvylu2p+491NMnoe35230nvwLjF17C1MjVzB27S1c+Pc/g7fnbcTk+WXniCe7yYpU\nrDbZLUX8OyYOY1t4OBJERBveRv52WN9uQ/CDW4AiQVVhhKQpQ2x+Gko0AkmrheHQPahsd+al8EP4\nxqeQwwHIU77Fn8VHeNRVFoT7zqLcuQPRW+nLLkc9Yznpj6TRorypHeVN7Vmdp5DLSEcuDy67zRVF\ngTInIzYbRfjkNYRuBFG+1YLyFlPKUaG1jNqsxGBxwDfcnbK90pw42hfy9mDw/E+T9EPB4PmfQm/e\nBGNd4jTWeLKrq21FuO8cIhP90FqboG/dg7KGbUVbAIWIco9JUInhnFRxGFtxso1tLqdCFZryFhPM\nT7vgf7MHUCRIunKodeWABJifcd1OgFJPfxJ5386P9CYkQEvJUz7M3x5NUFmXT2taSmUprAfXTDdH\nzcdngjwUSDhWFAWx0DyigTkAQLQ/gHBQhckTfTA/7YLxsDNpIrTaUZtM2Jwd8HSdRKovI2zOXQk/\nCQ5+mvS1BkMVAAXBobPLkiAgd8luKeLfMXEY28LDJIiINryN/O2wpFXDeNgJXaMR4ateREZC0NYZ\noN9uS/tN/3pQV6bfdFJdsdCu3mYFfotUz8ZQt9XkvnNZEF1GOhvqBhPknjsjUcqcvJgAAYCqpgpy\nIAIogP/NHugajdBvtS47z2pHbTJhsm+G68DzSYojSHAdfAEme+I6qvBk+rV84UD6diKidLgmqMRw\nTqo4jK04uYht/Nth88N/gNovfhPmh/8A5c4dRZ0AxUlaNfRbrbA82wb7/7oflmfboN9qzSgBEnnf\naiwOQLp7bcZtkgSNZeFBWt1qRdnn25Mt40DZ0zugbjEL6+NaZLo5aj4+E7Q7HQndis1G7xxIAOpM\niIVur6VRgPBVb9Lz2JwdWP7+7pzo7lGbTKjVWjS1H8G+p74OZ/tRWBu2w9l+FPue+jqatj+yrNCC\nvjr5Wr5QaGGNkt6Ufq0frR7/jonD2BYejgQREW0QudiIMqdUWhjvewHBj38BKEu++ZckVD/8P0Fl\nWBiBKKvfhEjHIMqqt0EZkBHzhqGy6SE1qqHeYkVZfX4qraWSanNUR7MLNfbmvO4NpGmtQfmzuxeL\nIyjz8kKDBJR/fhem3FMJr4+MhJKeZ7WjNplSq7WwNrRltJ7I6NiPsWu/RqoRN2PDvjX1gYgIACRF\nUVKtfMyrEydOYO/evfnuBhHRmqXaULPG7sz5g3KyjSgXrL2kcbZm+7vg++3/hTLHNkT9Q4hOjkLX\nshdybTO8g12Yjc6jyr4JNmcHqmuaER3tw2z/VcjTfqjNDkSqrZgYv4WQvwASulVSIjJm3QGEu7yI\nDE9BW18Fffv6TFFcuk/Q/LVRoLwcqDMh5J5CdDyc8Frjw82wPJs8IbmTVF/CtH8IleYG2Jy71u3f\nIF4dbnkFyFvhAAAgAElEQVRxBAmOPV+BzfVk0jLZRFRazp07h8cee2zVv8ckiIhIgGQbai6QEjbU\nzJWJoW6c/fWPkOpb831PfX3V1byytXSfII19E1Sb7sfEzDh6Tr8OtVYHjb4Cam0ZICUmarIcgafr\nBK59+C9Q5kKLm6dKZQZse+B/hLP9sYJOhJSIjGCn53axiiUNEtIWIxBh9lYAYz85j9jU8nLSkAD7\nf9qfdE1QoVjcJ2joLMIBD/QmJ4wN+1LuE0REpWetSRDXBJUYzkkVh7EVpxhju9KGmuOjt3J6vUxK\nGicjMrbxghQ1L7yM+foD8AUm0P3RvyImRxGZm0U44EMkPA0oiXvPBIavo/u9Y4j6hyDPBBGbn4U8\nE0TUP4Tu944hMHxdWJ9zYdYdgP/NHoSm7ppqdrsYwaw7kPwXBShrqEL1Iy1J11uZn3GhvCV98Yp8\nU6l1MNbtQOPeP8TWR7+Dxr1/iEu9ASZAghTjZ22xYGwLD9cEEREJkMmGmnZH7ta6iChpnAuSRos5\nlGO07wZUVglQJY6AzIWCUGm0UOt0i3vPjPadhhxKsXlqaAJjfWdgbdy+Ht1fk3CXN90/PcJXves2\n+hKvHli2yYzwVS/mPZMFUz2QiCifmASVGNapF4exFacYY7veG2qutaTxesTW5+6BRl+BUNCdtD06\nNwu1TreYqE3dHhFKJTiWeo+eQhAZXig+YDAYkrenKEaQa0kLZXR0oLpI1lWlUoyfB0ut51rB1Sr2\n2BYyxrbwMAkiIhIg0w01c2W1G1Gup/DEGKLhGVRY7QC6lrXH5IUyzvFErbLSguSFmxdUVhT2FC5t\nfRXC15NvEgsA2rrkyVEuJSuU4RvuhqfrZN4KZVDytYKjg324dvmUkLWCRJQa1wSVGM5JFYexFacY\nY+toaUO6fVZyvaFmvKRxssUf6Uoar0ds9dZaRMIzMBgbk/QPUKk1WJqoWeu3JX3dAul2++rFYgr8\n/ggmJyNr+v1M6dttgASEQklGfCRAv90m9PoAEBi9kaRSIAAkrr8qRsX4eRC33msFV6uYY1voGNvC\nw68biIgEiG+omaw63NINNXMlvhFlVY0zbyWNU7G0uDB88TRCg6PYsvcL6D3371gaE02ZPiFRM9la\nsXXvM7h+7leLr9NVmFBmsKDR9QBMtatfS3XpUggnTvjx0UeTUKslPP64GQ8/bMKWLRW5eIsJyltM\nMD/tQuhfzyU2rGMxgkwKZax3tUBa/7WCRJQaS2QTEQmyOPe/wDbUXG+xaBTDl8/A/dEJlFWbYHDY\nEQoOYGbKC1P9Fji23QdT/ZbFRE2JRjB19XeY9LoRis4jVlkLX3AKodAk9KYq2BpbYK1rgs3UCrVq\n5eTuk0+C+PM/v4n5+cQ/dyaTGv/5P29CW1tlzt/z4j5BV72IjITWvRjBp2/9bdo1YtaG7dj31J8I\n7wclOvmrf0w7TbbOsRlHnvnq+nWIaANYa4ns0vkrTES0ztQaDeyOTbA7NuW7K4uUaARzwz0I3ziL\nyIQHWqsT+s37UFbvgqQRM1qk0mhQv/MAKm318LuvY8Y3BlvdHpjv3QpDjR2quxJCSaNF1faHoRlp\nRMB9HWfO/AYz8wEoUABJBVyQsPPgEfg3DcHV+EDaRMjvj+C//beBZQkQAAQCMl57bQzf+U4ztNrc\nzg6XtGrot1rztgfPWgtlkFjrvVaQiFLjmqASwzmp4jC24jC2uaFEIwh1vQv/u8cwc+1DzPV3YaTz\n5/C+/peYuvgbKFFxa2VUGg1MjS1oPfw42r/wIprvfQTGOseyBChO0mgxJelw/sL7mI5MQpGkhQRo\n4Z3g8ul3MTE2gNFAb9rr3rgRxuBgko1Cb/voo0l4PLNrfVtpZXvfxqJRBAbc6Os8jq43XkVf53EE\nBtyIRaMr/q7N2YF066ryWSgjW8X8ebDeawVXq5hjW+gY28LDJIiIqAQoERlzl/sgdwZQdqMdldFH\nYWx9HjqTA4CCqU/fxLzXne9uJhh0d2M+OpOiVUHI68eQP/VoBwCEw7G07bEYMDdXeLPC41MIu954\nFcMXTyMw4MbwxdMLx5fPrJgIrbVQBokVXyuY7N9FxFpBIkqN0+FKDOvUi8PYisPYZkeJyJh7vweh\nV08gNj258MPPAEhAzX/4ImYsQUyOjWHi3d/A4LwJS4sLxrrGlKM06yXgG0VUTj2KMx0IoHIufbnp\nmhotVKqFZCeZqio1TCYx7zOb+zY4MgD3RyeStrk/OoFKWz1MjS0pf7+QC2Vkq5g/D9QaDVw7DsFi\nayjItYLFHNtCx9gWHiZBREQbXPTmOGbfuAAlcldCYa+GbzaA/g9OQZ4dh6rcgCm/H8MXT6Pl/sdQ\nv/NAXhMhk8UOjVqHiJx8ulqlyQR9WfpKa1u26HH4sAnvvx9I2v7CCzY0NJRl3ddc87l70rb73dfT\nJkHAQiJkbWhjFbgCU4hrBYlKEafDlRjOSRWHsRWHsc1O5PIgoACSRrf4MyUmI3ZvI259+jsgoiA+\nPScWngKgwP3RCQRHBvLT4dscLW3QaVJVbpNgsJnRYE7/gK/VqvC1r9Vh587l53n8cTOeekpc4YJs\n7tvwxFja9hlf+vaNjJ8H4jC24jC2hYcjQUREG5w8tDAKoiqrQGxmEooSg2Qow+ScD1AUKNEYoFED\nai2iU+PQqrWQdPqMRhty2k85gsDIdYzcOI3g+A0YrS3YtfdBXDxzEtORAORYfB2MhJ33HoHV3gS7\nacuK521qKsf3vteCa9dm0Nc3C41GwtatemzdqkdlZWH+GdRbaxEYcKdsr7DUrl9niIg2IO4TRES0\nwc28fg7z712DoiiIzQQRnRyD2mHGwJZ5BNw3oKoqg1IuQ4nMQZEjUFdUQ22wwtTUivYvvLgufZTl\nCDxdJ3D1/WOIzIwv/rzS1Iimfb+PQMAPX2AC5cZK1Da2oMae+T5BmYhFowiODMDn7kF4Ygx6a21e\n10YFBtzoeuPVlO3tz35FeIIqxyIYDfTC470Af2gQZoMDTttu2E1bchZ3IqJscZ8gIiJKSrvTgfnf\nXYMECaoKI9SKDEQkVFRZMalyQ9LrEJsPQJEXSmQr0YW1Q7kebYhvHjtw8zP4R4ZgLLegtsIJY9SE\nqHMG3R+9lpAAAcB0YADdJ36EXY/8AXbsegoG29ac9glI3Mw1Ll6NLV9ro4x1jWi5/7GkxRFa7j8K\nY12j0OvLsQiuek7gdO/PASx8Vzrkv4qu/t/i4JYvYbvzMSZCRFTUmASVmM7OTlYoEYSxFUd0bBV5\nHnP+bsyMfYLI1C1oq5pRUXsvysxtkNS6lU9QIGQ5gsDoDXg9FxHyDcJgccDm7EB1cyvKn92N2Tcu\nQIIEKApi/ikY9c0YMZZDXpIAAXfWDplbcpdwyNEoeq6cwoWPfwM5NIdoYKHYwVVJwu6Dj6OsLwQ5\nHErx2woC3n6Ul5cJSYKyrcSWSjb3bXyDWYPdgamRAYTGhlBmqIa5Zeu6jE6NBnoTEqA7FJzu/Tms\nxmY0WO4R2odU+FkrDmMrDmNbeJgEEVFJU+R5BG+9iUD3McQf+GYnLmLK/SuY2r4KY/PTRZEIyXIE\n/V3voufM64i/D99wNzxdJ+E68DwaDz+MyiYLIpcHofKMIqYLQrJKaNjfgf7T7yacS6WrxKaHnwKU\nGPo6j+dketj4qAcXTh1HbC66mAABABQFl86fxN4jD0GOzAKKAkjLN5OcDo4jMmNZ9XUzkYtKbLkW\nHzUbdHcj4BuFyWKHuWUzquzrMz3P472A5QlQnALP+MW8JUFERLnAJKjE8FsIcRhbcUTGds7fnZAA\n3aEg0H0MZcbNKK/pEHb9XAmM3khIgO5Q0HPmdVTVOGF1tUHrskOJRhDqeheBd49BX23HtsOPIOif\nwmxwEobGzbBuP4Dg0C189v/9P1Ci85A0WmjKyjB88RO03H90TdPDBt3dABTEZpdv8qnIMQQmAyg3\n2DAz2Q9JvTwJqjTWQFshJgkSVYltrfft4qjZqeOI/3uODvbh2uVT2H3oCbh2HBK+n4w/NJi2PbBC\nu0j8rBWHsRWHsS08LJFNRCVtZuwTpPvGe2bszHp2Z828notI9z68nkuLR5JGC0P7Edie/xYqNu2F\nJtiPOocN9zz1Alof+QJm/ePofvsXiIRDiEbmEQlPIxzwIRKehvuj366pdHbAN7rQk4i8vHdyDNNT\nIZTrbSnegoQqkw2G2vZVXzcTemv6tU/rXYktPmqWLKG9cOo4xkdvCe+D2eBI225aoZ2IqNAxCSox\nrFMvDmMrjsjYRqbSP1Cu1F4oQr7038xP+wYxN9wL/3v/jLHXf4BA578AADzG7aj94jdhuv9LKGvY\nitDEGLzXryxMS7vLXGgKcmQefvf1VffPZLEDACStOml7tdYGR9ND0FXU3NUiYcv+L6C6thUGm2vV\n182EpSX9ede6Nmqt92181Cw5BYO30k/fy4WW2n2I7x21nARnmtFRJSIjfH0Cvl92Y/S/n4Hvl90I\nX59ImgCvRTyuoq9Tivh3TBzGtvBwOhwRlTRtVTNmJy6mbS8GBosDvuHu5I2KAn1ZBcb//W8QC08C\nAOb6uxC68Dasuz4PJboLkmah0ldwpB+zk/6U15Hn5tY0PczR0oZrl09BVa6BPDWX2ChJsOkc0J2R\nceD5b2F89AKC3j6UG0ywNrhQbdsEQ81mqAStzcp3Jba7xUfNUpmcSN++FkpsHrGpLsj+j6HM3ISl\nogXP3fNFvOf+AIHw0n9vCQe3/n7K/ZmUiIxgpwf+N3sW87i54RDCPeOour8JVfc2pkyEk0lWpruq\npgHR+TlMfziUcJ3wdR+CH9yC+WkXjIedq7oOEZUeJkElhnNSxWFsxREZ24raezHl/hWSf/MuoaL2\ngLBr55LN2QFP10kkex+xyDyqoFpMgO5QIF3/APP3HERZ/cJox/ToEMqrzSmvE5Mja5oeVmN3Yveh\nJ3Dh499AYyq/UxxBkrB73+PQXZVhvM8JY6sTta71XYMVr8RWaauH330dM74xVFhqs67Ettb71mSx\nY3SwL2V7tdW+pvOmosTmER35JaKe/xOL90/wPPQK8LmmP0Bv9D4MB3phMjjgrOlIu0/QrDuwmJio\na/TQbzIjMjqNyMQMps8OQ1WhQ+XO2owSlFRlugEJCqZg+aQq2YxB+N/sga7RCP1W65pjUqr4d0wc\nxrbwMAkiopJWZm6Dqe2rSYojSDC3/UeUmYujApbJvhmuA88nKY4gYcvOx6G6fhaxJT9VVddhrmkP\nRicDuPq7X8Ha1AZHSxv0NbVQB8sXKrQlmRKnUuvWND1MrdHAteMQLLYGDN7shn90GFVlZtRWNsEY\nNUH/ggXlLaa8fXuv0mhgamxZ9ypwycRHzVIl5o7m3E4LjE11JSZA8StJgDT0Knbc81/QsenZjM4V\n7vIuJkC6uir4/t/uxdPOYgIzl0ZR85VdGY3UpC3TfeVf8Mje/xm6t5P8ogKEr3qZBBFRWkyCSgzr\n1IvD2IojMraSWgdj89MoM27BzNjpJfsEHUCZ+Z6iKI8NAGq1Fk3tR1BV44TXcwnT/iFUmhtgc+5C\n7NJvMTs5svhaVXUdvPZ2XPzwOGKxKDTlBowH/Lh2+RR27H0IylQAzgMPwXPm/cRESJKw6ZGn1jw9\nTK3RwO7YBLtjU7Zvtyis9b5dHDVbVhxBwp77nkSNPbdTNGX/x0i3Bkn2n4K6ek9G54oMTwEA9JvM\nCQnQ4tnmYxmP1KQq0z0zMwPdPDAiXUeLYRtiofnl/RhJtecUpcO/Y+IwtoWHSRARlTxJrUN5zS6U\n1+zKd1eyolZrYW1og7WhLeHn/p7TCcdzTXtw8cM7D9jxzVEBBVfO/g73Hn4avoufYtPhJxEOjGM2\nGEC50YSarTtQu23XuuxTU2qUaARzwz0I3ziLyIQH9obteOjR5zA6NoxJvxfVVjsczS7U2JtzXh5b\nmbm5Qrs743Np66swNxxCZHQ6aV4laVUZj9SkKtOtKAoknRqBuRGoK3ckTYK0dYaM+0xEpYl/yUoM\nv4UQh7EVh7HNjn7zPoQuvA1AgUpvxOhkAPEnVJVKDams4s6LJSAwOY6tjz4DX9816CqrYGnZhqr6\nRlTVNghLgJSIjFl3AOEuLyLDU9DWV0HfbsvrFLlsZXrfKtEIpi7+BpMfvIb4v8tcfxcACVuPfBWG\nQy8uFq7IJSUawdzoDSjRKkT8w5A0OqjKKqDSlidsWCtVtGR8Tn27DeGecUQmZpK2q/QL908mIzVm\ng+P2GqBElZWVUGZlmMrqIE9Hlv+iBOi32zLuM93Bz1pxGNvCwySIiGiDK6t3ofrBL2Pyg9eg0hsR\nDN6p/qY2WBceepeY9HtR3eBEdYNTSH9i0SiCIwPwuXsQnhiD3mxDVaUDs8cnIHsXCiaUUqWvueGe\nhAToDgWBd49Ba25AuXNHTq+5NPGqvu8+KPOzUObDiM1MQm2wQl1hvJ0ISVCbD2V83vIWE6rub8L0\n2WHMYiKhTV1dDkm38NiRyUiN07YbXf2/RbIhJalMg2bHPsSmfXc1AOZnXChvMWXcZyIqTdwnqMSw\nTr04jK04jG12JI0WVR1Pwvb8t6DfchCmmgaoK6qhMddjFpqEb/2B3FcfWyoWjWL48hl0vfEqhi+e\nRmDAjcFPP8aV1/9vzG+bgdq2JCFTgOApD3y9vejrPI6uN15FX+dxBAbciEWjwvqYK5net+EbZ5Fu\nTU745vmc9SluaeI1/dkNqB1fRXxfIDk0gVhkFoAEjfN/gaoq801qJa0aVfc2ourBZqirdFCVaaA2\n6KC1VUBt0C1cIsORGrtpCw5u+dJiv+JCoWkcdP0+HFt2wf6f9sP4cDP026wwPty8cPzAxk6aReJn\nrTiMbeHhSBARUQmQNFqUN7WjvKkdLYN96BvsB6BAmb97WlLuq48tFRwZWLYfjxKOAooCz6fvwXXw\nC5C9Cz9X28oxv20GN//tVahNZQCAwIAbwxdPo+X+x1C/80BRrU+S5QgCozfg9VxEyDcIg8UBm7MD\nsdlg2t+LTPTnvC9LE69oYBRTV4DKe/4EKuUmlMgwVNXboWt+Gqqqdkiq1RUHkbRqVO6sRc1XdiXs\n47PQmPlIjVqlxXbnY7Aam+EZv4hAaBAmgwPlsXpsb7ofapUWmq1lrAJHRGtSPH89KCc4J1UcxlYc\nxja3llYfMxiWTksSU31sKZ+7Z9nPlIh8+z8UTE0PocJQg1hoHqrtWng+eQ+qMhWAsoTfcX90ApW2\n+oIoaZ3K0vtWliPo73o3oYS5b7gbnq6T2OR6EPrqOsSWVPBbSmttynnfIhOehONoYBSTH49CpTdC\npXdAY62CbVdmFeGSkbRqGA87oWs0InzVi8hICNo6A/TbV7fOS63SosFyDxosxVGqvtjxs1Ycxrbw\nMAkiIioxCXv23LqGyYlRodXHlgpPjC37maRVA3MLiVB4agJVlfUAgKnQIKAokDTJH5j97usFnQQt\nFRi9kWQPJwBQ0HvlHbS7DgOXkyVBEvSta09GUtFanbeLLySKhYOIhYMob85+w1pJq4Z+qzXlSE1M\nnkfI24Pg4KcIT3qgr3bC6NgPg80FVZGUpiei4sU1QSWGc1LFYWzFYWxzL75nT0RtwZFnvoq99z8F\nu2Oz0AQIAPTW2mU/k/R3rqmvskKejkBdqUU4OL6sfakZ3/KEqpAsvW+9notIte5HpdVhCjGo9NV3\ntUiofvBFlDVsW/FasWgUgQF3xmun9Jv34e61NkuvKyLxWiomz8Pb8zZ6T/4Fxq69hamRKxi79hZ6\nT/4FvD1vIyYvL3sdx8+D9GQ5gomhbnSf+hk+fetv0X3qZ5gY6oYsJ6mkdxfGVhzGtvBwJIiIqIRF\nIis/GOWSpcWF4YuJ+xapdGqoq8sgB+dRVdmASGhhnZK+sQZT1UNQ6ZKPBFVYlidU+ZJsVKO+2omY\nPA+VWoeQL/meNwAASUJ4bgabv/CnmOn5GJGJfmitTdC37kFZw7YVy2PHi00sXWu10tqppRUD7160\nk2nilY2QtweD53+KZCNjg+d/Cr15E4x1ua2IVwrSTbt0HXgeTe1HoFbnvtw6UTFiElRiOCdVHMZW\nHMZWnPWOrbGuES33P5ZYHEGSoDbo0Prwk9CHaqHZVgZtnQGVrgZM+LuXVa+LM7dsXadepxcf1Vj6\nUD81cgWABK8mBJvrczBYHPANd6c8R6XFgbL6LSir37Lq6ycrNhGXau1UvGKgrrYV4b5zq068shUc\n/BTpKuIFh86mTIIK4fMgKkcxPOHBzeFujE+Ooqbajtb6NtRbndCo8/dolW7aZc+Z11FV41y2mfJS\nhRDbjYqxLTxMgoiIaN2oNBrU7zyASls9/O7rmPGNocJSC3PLVhjrGhNGLGLRKFpmjyZ9wG+5/yiM\ndY3r2fWUMhnVsDk74Ok6meQ1ACDB5ty15usnKzaxVKq1U0srBq638KQnfXsgfXs+ReUoLvaeQueV\n44j/e/Z7+3C+9xQO73gCHVsO5S0RSjftElDg9VxKmwQRlRKuCSoxnJMqDmMrDmMrTj5iq9JoYGps\nQevhx9H+hRfRevhxmBpblk3ZiidM7c9+BQ0d98LU1IqGjnvR/uxXUL9zf8GUx041qhEKTSE+qmGy\nb4brwPNYvg5HguvgCzDZN6/5+smKTSxViGun9NXpN+LVm1K35/vzYHjCk5AA3aGg88pxDE/cyke3\nACD9tEsA0/6htO35ju1GxtgWnsL4C0JERJREPGEq5CpwmYxqqNVaNLUfQVWNE17PJUz7h1BpboDN\nuQsm++as1mnorbUIDLhTthfS2qk4o2M/xq79GqlGxowN+9a7Sxm7OdyNdKMtN4d70FS79qQ2GwZz\nA7ye85DnZ6DI85DUOqh1FVBrygFJQqW5IS/9IipEOUmCLly4gGPHjkFRFBw5cgTPPfdcQntnZyfe\neOMNAEB5eTn+6I/+CE5n+m+BSAzOSRWHsRWHsRWHsc2evtp5ew1QIoOhaqH99qiGWq2FtaEt59OR\nkhWbWKpQ1k4tZbC54NjzYpJphBIce74Cgy31hr35vmfHJ0fTtk8E07eLEpPnUWWqwVxwBIsxjYQR\nnZ2EtsIKbXn1itMu8x3bjYyxLTxZT4eLxWJ45ZVX8K1vfQs//OEP8eGHH2JwMHE4tra2Ft/73vfw\n13/913j++efx93//99leloiIqCAYHfuRrty06FGNeLGJZApp7dRSKrUONtfnsOXR76C27fOoqtuJ\n2rbPY8uj34HN9WRB7xNUU21P2241pm8XJeTtgf/6r7Bl3zO4+36MzPiwec/vZTXtkmijyXokqLe3\nF/X19bDZbACABx54AGfOnIHD4Vh8jct15xudrVu3wufzZXtZWqPOzk5+GyEIYysOYyvORoqtHI1i\nfNSDQXc3Ar5RmCx2OFraUGN3Ct3/KNWoRigUwrYH/7e0oxq5EF87VVXvhP/WdYRGB1MWm8jEesVR\npdbBWLdj1aWw833Ptta34XzvKaSaytdaL/bfO5Xg4KeYDw1DBwXtD/w+pgJjmA6Oo9JYgyqTDXpd\ndMVpl/mO7UbG2BaerD/NfD4frNY7u0FbLBb09vamfP2JEyewe/fubC9LRERLKBEZs+4Awl1eRIan\noK2vgr7dhvIWEyRt8n12NhI5GkXPlVO4cOrOgvXRwT5cu3wKuw89AdeOQ8ISofioht68CcGhswgH\nPNCbnKjWNsLmelDoqEYsGkVwZAA+dw/CE2PQW2vh2PtAyuRHliMIjN6A13MRId8gDBYHbM6OxXVJ\n+Yxjsai3OnF4xxNJiiNIeHDnk6i3NuelX/G1afOhEcyHRqApM8JaVYXo7E1M3boI1O3MS7+ICtW6\nfpJduXIF7733Hr7//e+v52VpCX4LIQ5jKw5jm54SkRHs9MD/Zs/iM1n4ug/BD27B/LQLxsPOlInQ\nRont+Kgn4cH9DgUXTh2HxVYPu0PcVKC1jmpkY7WbpGaykeb4aH9e45iJfN+zGrUGHVsOodbcgJvD\n1zARHIXVaEdrvQv11ua8lce+e21adC6I6FzwTnuaintx+Y7tRsbYFp6s/0+1WCwYHx9fPPb5fLBY\nLMted+vWLfzDP/wDvvnNb8JgMGR07qVDh/HSgjzmMY95zOPE4/7TPQj+61UYKhc+W0OhEADAYDDA\n/2YPArpZ9CsTBdPfXB9/8sknCPvdiD+4L33/C8dT+OzKp4sP7/nub66Od7Q0wv3RiSTvN4Qrx/99\ncZPU+Ovv2VSDnjOvIzQ1tfD6qtuvn5rCuZP/BGNtKwbd12+X9k48X/x48FYP3APjiEQieX//hXDc\nVLsJZ8+eRXQ2ulgRLl/92bVloeJeKLSQ+MQLcyz8e0rYcnttWiHFj8c8zsVxRUUF1kJSFCVVnceM\nxGIxvPTSS3j55ZdhNpvxjW98Ay+99BIaGxsXXzM+Po7vf//7+OM//uOE9UHpnDhxAnv37s2ma5RE\nZyfnpIrC2IrD2Kbn+2U3gu+n3pvE+HAzLM8mr0i2UWJ78lf/iNHBvpTtdY7NOPLMV9evQxAf277O\n42mrwjV03IvWw48vHnef+hk8Xcs3no3bsv+LcHuGCy6Od9so92yuxeR5eHveTllxL5OCE4ytOIyt\nOOfOncNjjyUvDpOOJtsLq1QqfO1rX8MPfvADKIqCRx99FI2NjXjnnXcgSRKOHj2KX/ziFwiFQnjl\nlVegKArUajX+6q/+KttLExERgMjwVPr2kdA69SR/TBZ72of3amt+KnaJtNpNUlfaSHNq/BZMlqaS\ni+NGkWptmrFhHww2V0FX3CPKh6xHgkThSBAR5VOyBeeWFteaqm2Jls1I0EYxOtiHk786hlQVux59\n5g8zWsuiRCOYG+5B+MZZRCY80Fqd0G/eh7J6FyTN8spa+SxIkeuRIGf7UZib9uckjqsxOzuNAfdn\nGLh5FYGJEZisdWhs3Y7GlntQXl6Z02sR0caTt5EgIqKNZrULzvNN325D8INbqZ5bod9uW/c+rYel\nlW+1xWoAACAASURBVM7mwyG42vfi6oWPoNboIEnxfVIk7LnvSdTYV67YpUQjmLr4G0x+8BriwZzr\n70LowtuofvDLqOp4MiERyqYgRS6sdpNUm7MDnq6TSHWj2Jy7YKp1YvehJ5IUR8g8jqsxOzuNy2dO\n4KOTPwdufyd7q/cSLp5+B/c/+iXsPPDYqhKh1SaxRFS61N/97ne/m+9OJHPz5k3U19fnuxsbTmdn\nJ5zOlSvE0OoxtuKsd2wnhzy4/ts3krYF+m+iurEF5UbTuvVnJRpjGVTlGsxen0hskADzMy5U7rJD\nUiffG7tY79t4pbMrv/sJJr19CPkHgflJNG7eharqWpRVVKGx9R50HHwMTa3tGZV1nhvshu/tHyNZ\nkjDnuYKyxu3QVNcu/my2z4/x1y4nzSlmr08gaIzC5BSXgOoqDNCUlSHQf3NZW8v9R1GzuQ2S6s6/\ne1lFNbRaPSaGPrvr1RJcB1+AvXUv1BotLDUNsDtaoSuvgFajg2OVcVwNd+8lnHzzJ4sJ0FL97quo\na9wMS01Dws9T3bPxJNb39o8xP3IdctCL+ZFezHz2AaSyCuhqWyGpNn65+GwU6+dBMWBsxRkeHsam\nTZtW/XuF81UmEVGB8Ll70rb73ddhamxZn85kQNKqYTzshK7RiPBVLyIjIWjrDNBv37j7BAVGbySU\negaA8NQYwlNj0JUbsffx/x2m2tX9UQzfOIvkoyQAoCB88zzKnXdKYIe7vOleDvSFgAdW1YVViW+S\nWmmrh999HTO+sbSbpKrVWjS1H0FVjRNezyVM+4dQaW5YGAG6vU8QAKg1Gtgdm2B3rP6hYrUGbl5N\nmgABABQFAzevYkvb/ozONTfckzCKt+REmPzgNehsLQn/fkRU2pgElRhWJhGHsRVnvWO72gXnhUDS\nqqHfaoV+q3XlFy9RrPet13MRqTKQ+dkgRvo+XXUSFJnwrNDen3i8QkGK8hkpbXsuqDQamBpbMk7K\n1WotrA1tsDYUxhqxwMTICu2jy36W6p5dbRJLyxXr50ExYGwLT/L5EUREJUxvrU3bXmFJ354PMXke\nwZErGDh7DNdPfh8DZ48hOHIFMXk+310TYqVKZ9P+oVWfU2tNP1VFa21KPK6vSv/6usz2xCtlJmvd\nCu2ZV6NbbRJLRKWNSVCJiW8yRbnH2Iqz3rG1tKTfz+zuBef5Ft8fpPfkX2Ds2luYGrmCsWtvoffk\nX8Db83baRKhY71uDxZG2vdLckLY9Gf3mfQBSjd5I0LfuSXx9uy3dyzFVk/viq7lMdmPRKAIDbvR1\nHkfXG6+ir/M4AgNuxKLRFX9XliOYGOpG96mf4dO3/hbdp36GiaFuyHJkVX1obN0OSCmCKEkL7XdJ\ndc+uNoktNkpsHvLkecy7f4y5q/8H5t0/hjx5Hkosd190FOvnQTFgbAsPkyAiorsY6xrRcn/ycpst\n9x+Fsa4xaVu+hLw9STZIBAAFg+d/ipA3/RqnYmRzdiBdBmJz7lr1OcvqXah+8MtJziuh+sEXUdaw\nLeGn5S0mmJ92JXs5zM+44NVOr7oP6WST7C471+0KiF1vvIrhi6cXqx92vfEqhi+fSZsIxYtSnP31\nj+DpOgHfcDc8XSdw9tc/Qn/Xu6tKhBpb7sH9j35peSIkSbj/sS+hseWejM+12iS2mCixeURHfon5\nz/4M8si/IRY8D3nk3zD/2Z8hOvLLnCZCRKWC+wQRESUR3ycokwXn+TZw9hjGrr2Vsr227fNo3PuH\n69gj8eIP4ncXR4hXOmva/sjiQv/VWCyx3HcOkYl+aK1N0LfuQVnDtvT7BK1DQYrgyBX0nvwLpCpx\nveXR78BYl9mal8CAG11vvJqyvf3Zr6RcZzQx1I2zv/5Ryn7se+rrq1pzlLhP0ChMVvua9glKVuI8\n3qfqB19EVccTRVsmW548j/nP/gypYq67579AXV28SR5RNrhPEBFRDq12wXk+hSfTr4UIB9K354sc\njWJ81INBdzcCvlGYLHY4WtpQY3euWIo500pnqyVptChvakd5U3tmr19jQYqV3L0Jq67ZhKnqU4AS\nSzF9TEFw6GzGSVA2FRDTFaUAFHg9l1aVBJWXV2JL2/6Mq8ClImm0qOp4Erra1oyT2GIh+z9GupjL\n/lNMgohWiUlQiens7GSFEkEYW3EY2/T01U5MjVxJ3W5KvVYiX7GVo1H0XDmVsCnn6GAfrl0+hd2H\nnoBrx6GMEqFCqnR2t5Viq0RkRG+OI3J5EPJQAOoGE7Q7HVA3mTF1ajBhE9ZocA5Tjh7I0/NQG3QL\niZCiIBaZhTI3AyU6j9DgJczV90Jna17xgT9dBcSyajPmtSqc+/CtpMnpWopSRObDGPV8hoG+ywhM\nDMNkrUfjpp34/9m736i27jNf9N+trb8gJCEhhBCI/zK2ccD4T4hjO7GdOsm0mbTNJM1N2tWe03XO\nzJxOV+9d0xenvSuzum47677JumfNNGfdOXfuzGQ6TTszuZ6eTNvYcYKbOk7i2DEG29hGxoAFQggQ\nSCAQQtrSfYEFCEkb/ddGej5vEvhJWz8eNrKevX+/5zGYd0MiVfAebyu+uKaaxAoVFwrA6R6GbaYf\ngeAKOlb7IQquQMLKNjUC3hBeHsvK69J7be5QbIWHkiBCCNnhVKaDmB46i0RLZVS1B/I9pW3NOm1R\nCdCGMPovn4dWb4TB1FKIqeVFOMDBf9GKlXf610PAWZ1Y/f0QpKc7sHhjPio03FIAsnITFicHwEhZ\niKQsOJ8HnHdu/TESkQKz//46Kg5+CRWdT/MmQgpdNdwTYzHfl6krwem0+PSjX0OmXKt+tzU5VWpN\nmHPcTXjsrUUpAqs+3Ll2Hld/96+I/FD20RsY/Pw8Dp14CbsPnE45ESpmXCiA27ZeXBl+G0AYckkF\nmjUqhJanUC7TQi6tiEmEmLLGgsyVkJ2MCiOUGLoKkTsU29yh2PJT6i0w7X8V8Xbom/Z/HUp94mp3\nhYqtfewu+Jb32B9kVswhHOAQsDqxfKYPiz+9gOUzfQhYnQgHuIyOmwq+2AZHZ6MSoHVhYPlfP4ey\nMbr8dsi7inLpbiDMIOQLIhT0RyVAAIPychNCPg88H/0C/skh3rklqoAoq63DjasXIJZKYybWf/k8\nZp0PUi5K4bTdiUqANh/z6u/+FU7bbd65blXs7wdO9/B6AgQAK4FFeGXNABgs+ecQ4PxbnsGArezJ\nymsXe2wLiWIrPHQniBBC8mTzEpd5rx2VShPM+i4YNK1gRenvVxCxUugtz0BR2YyFyWvwuW1QaMxQ\n1R6AUm+BiN36gbbw3HOxTTA388RpkpmseHdZQpNuBIcckB5tg+yxlqwXLUhV4KY9YQ4Y9nPAlBsi\npRQh70bVr+ANKYyd/wum7r2N8OrmamAMavd9DaGxSOKzfWPQSAXEsU96178nUZRhzj0NmVIJVhLv\nnFlLTjsffQqWQy8kLEqhMUTfwZsYuQm+hHdi9BbqWoV3tzJZYW4V/vm7WJ7+DIHFB5BUNKCs+lHI\nKtvBpPG3Z5vpx9Z43XI9wKN130J44k2sBpchFcsfjjAQm/8zRBU7e/kfIYVASVCJoTWpuUOxjW+9\n2tb9awi4bJDozFC0HIDMaEl6o3IxxHbrEhcAmJy/jcHxD3C49UXsMZ/KOBFS1XQkvTE+olCx1WgN\ncNpHEo6rU2iSuVXUXRZ9Gbj9LBZXh7CybId85i4qR4+joqUz58khX2y5SXfC5zFSFqHZRbBqbVQS\nxM34wQ40oOULP8Ci5yJ8rhHIyg1rd4DGhsC5NxLH7RqDisRiGPcdQrneuF4BUV3XhDtjNyFRlCfs\n3eNxOVMuSuF2OXjn4k4x4b106RIeO/JoTi4opCrMrWLhwW/gvvsm1u/cuAawOPZraNq/BVXDl1JO\nhOa9sXuu3L4ZfAagw/y/QcZNQcT4wZQ1gq3sgahiLxhRds7lYnivFSqKrfBQEkQIyZl4JWv944Pw\n9p+D+tgr2+5bKCZbl7hsCOPK8NvQqRpQq02+J8pOZ2psx9DNy0i0j8nUwN+wls/6XRZ9GZa6ZzF5\n65/XX2cRNzA79SHquf8EveWZgt0lY2s14KzxP/yL5GKI9BXg5mP77XCzfpSr90Hst0O+4kJofgYB\n3/2YxyXTGDReBcRpnxuz0xMJnxNJTlMpSqHRGWEfvcEznlrCK5NLcnpBIRX++btRCdCGMNx334RM\n1QJ5VWdKx6xUmjA5H7tE0O2bwaWJGXQ2PYeDLV9Je86EkDW0J6jE0FWI3KHYxvI7rHF6dgBAOKl9\nCxHFENt4S1w2hGGbHcjndNYVKrZVBjO6ek4j3j6m/Y89jSpDQ9rHjtxl4fazUQlQRDgQyEsTWb7Y\nSvaZEm6rYeQspAfqEVra0gDzYRNWeaMGcvNeBOcmEfItxDtC2o1BTY3t4Nvvk05yWte8j/eYdU2p\n3b00Nat4Lyg43cMpzzFdy9OfxZnHxnyWp6+mfEyzvgt88aqtzF01xGJ4rxUqiq3w0J0gQkjO+O5f\nA98HhO32LRSTeEtcNnNvM76TJLP3iRWLYenogVZfC/uDIXhcTqh1BpgaLKgyNGxbHpsPW6tBaNKN\nxdUhxDv/GIkYqfbVyTZxUxXkz3fFFkdgAMWXuyE9ZIbBWJmwCavMaIH62CsJG4PKanelNa9Ichpb\nuS/95NRg3o1DJ16KUxyBwaETX4PBvCel4yVzQSFfd1UDiw8yGt+KCwXAQITddU/is6F/AcuKIRWX\nQcLKAEaEw20vwaBpzWTKhJCHKAkqMbQmNXcotrECLv4mndvtW4gohtgmWuISoVGa8jibDdmObSp7\nn1ixGAZTMwym5qy9PrB2lyU45MDKcpzEkgEYxdrr57qJLG8/GwkL2XEL2HrtWp8ghwesUQ1Jhwni\n5qptm7Am0xg0UR8icVNVwsIQuUhOJVIFdh84Da2+HhOjN+F2OaHRGVDX1AGDeU/K5bEnnPx38PJ5\nQUFS0YAVV+K7uJKK5JPGzX87FQo9DrR+FZ4lBxZXZmDUtMNiOoaaSktOl/oVw3utUFFshYeSIEJI\nzkh0ZvjHB3nGt9+3UCzM+i4Mjn+ARHtgzCnuG8iGcDAAsyKA+Q9/tm3RilAwiIWpCcyNWeFzTUOh\nq4a20QJVTR1Emz4YC2Hvk7ipCtKjbZDP3MUiNu1FYQBGUwZGtjZfviayQPI/c7oYCQuJxQCJJb0i\nEHyNQfn6EMmf74LsuIU3Ecp2ciqRKlDX2o261u6Mj6UuM8KzmvgOSz4vKJRVP4rFsV8j0d91WfWh\npI+1+W9n0TeNRd805JIKyKUVmJy/i111T+S16AMhxY790Y9+9KNCTyKe0dFRGI3GQk+j6JjN/P/o\nk/RRbGMxrBjLdz5KNAr1kZcgVldve5xiiG2ZTAMpq4B9buvdIAaH215Ck+EAREz+yjZHilb4P/pH\nrE7dA7cwg9WpYSzf+QiMrAzS6iYworX5hIJBOG5exb0P3oHXacfKghtepx0zQzcglsmg1BvBiNa2\nmA7aPsDMQuxG/QiZRIk6XW6XoDGsCGytBiKZFHMTnwAigFFIIVIrICqTPqx8xsD4yMuQKeOff6n8\nzIkU8rwN3p+B758+jfvZPDg0BXGbAWyVMv8TywKFvAzDjk8TjDI42PJVVCj0eZkLK6sEIynDSsye\nPgaV7f8BZTVH1v+OthPvbycYWsVKYBHBkH/bv50Qt4rF6TuYGXoXzrv/Dt/cKCASQ6LQJD2HYniv\nFSqKbe44HA40N6d+0YbuBBFCciZX+xZ2IlYkwR7zKehUDbDNDsDttUOjNMFc1Zn3sr7A9kUrpPrG\n9f1aC1MTUf1kNhv7pBfleuN6hTGh7H1iJCwqmjtRf/I/wX79LWw9/7ZrIpvKzyxEfH2IEAYCt+yQ\n7Eq/DHkhGTStONz6Ypw7jkze98wwrBSqhi9BpmrF8vSVTX2CDkFWuTul8tiRv53I3Z+V1UWsBBbX\nx/n+dkLcKmas56LO9cWpW5geOgvT/lcLWgmREKGiJKjE0JrU3KHYxkpm30IyiiW2rEiCWu1uQZTC\njhSt8Hq9UCq33hGILloxN8a/B2N+7N56QiCkvU+ZNJFN5WdOpJDnLV8fIgDgHJ48zSQ5qTQS/vST\nz/DYEeFcUGBYKeRVj0Be9UhGx6nRtKGGVSM8P47A9BQkqhowVR0Y9g5jYWWG92/HO2ONk+wDQBj2\n629BUdmcVBGQYnmvFSKKrfBQEkQIySm+fQukcFIpWuFzTfM+dnluY1xoe5/SbSKbys8sRHx9iACA\nNarzOBt+6TQSFtIFhWwIcauoWvLhzuX/F+t/Ow4AYLCr8yUMyfn/dhbsn4Pv1l8hKyESIlTUJ6jE\n0FWI3KHY5g7FNvskurX16bF3gSLjG0UrFDr+fVtl2o3xyFKleP1/dlJ531R+5kQKed7y9SECA0g6\nClONMJ7timls7ftTjO8H3hkrpm/9G8rlmi0jYUwN/CseNZ7g/dvxefgvaiRbCbEYYysUFFvhoTtB\nhBBSghQtB+DtP4dEd2w2N9vUNlrgGLiS8FiVjW3r/y+0vU/pSuVnzrYQtwrvjBUL9s/h89igUJuh\nMh3cdgnfZnx9iORf3g9xc1VuJp8GIfX9KZQF++dgAMilKohZKVYDPgRDqxCLpJBKFGDck7x/Owq1\nGYtTtxKPb1MJkZBSRHeCSsylS5cKPYWiRbHNHYpt9kWKVni9S1tGYotWqGrq0HjkVNzjNB55Cqqa\nuqjvRZYq9VhexjPdf44ey8uo1e7eMQkQkPrPHE86521kg/vwhR9jeujdh5vb38XwhR9jxnoOIW41\nqeNE+hCV/9lJSJ/cBXZXDaRP7kL5d05CdqwtYXnsQki1mEYxvh9E7uQwYCBhFSiXa6Euq0G5XAsJ\nq8CKZ4L3+SrTQfDd+lPVHkhqHsUYW6Gg2AoP3QkihJASFClaUY5yKL0TvEUrRGIxjPsOoVxvxPzY\nPSzPTaNMW43Kxras9cwRmkL9zNna4A5k3ocoX4RUTKNQMr2To9RbYNr/alqVEAkpVUw4HE50D7qg\nent70d2deVM1QgghOxcXDGLWaYN97C7cc05otAaYGttRZTCDLcLka+Lam5geejfheHX7F1HX/c28\nzCUcDMDvsMJ3/9q2zXQzMTl3B2f7XkeipZnPdn+/+JfDTd3C8IUfI1EMWk++tm3yu76MMkElxFw3\n/yWkUPr6+nDqVPw793zorCeEECJIXDAI663L6L98HpEPh077CIZuXkZXz2lYOnqKLhHK1gb3TEWa\n6W7uJeUfH4S3/xzUx15BRefTWUuEhNT3p1CycSeHrxJipPnv5t5X7okxOAauoPHIKRj3HaJEiJQc\n2hNUYmhNau5QbHOHYps7Qo7trNMWlQBtCKP/8nnMOh8UYlpJCQWDuNd3BSOXzmPwnZ9j5NJ5uCfG\nEAoGeZ+nUPMve8rXBvftmun6J4ey9lqRYhrPdn8fe82nYdLuxV7zaTzb/X3sqT8Zs5dMyOdsuiI9\nrVpPvobq9i+iomYfqtu/iNaTr0FveTrjRqfbNf9dmFrbc1SMsRUKiq3wUNpPCCl5gRCHIc80rrnG\nMe6dR72yEgd09dilroZEJJwN5KXGPnYXfFXD7A+sMJha8jmlpESuuo+8/+9QKssBJH/VXWU6iOmh\ns0i0LCrZDe6ZijTTjS+6mW42FFvfn3Sk29MqGdlo/ktIsaEkqMRQnfrcodjmTi5jGwhxODdxB2+N\nXFv/yHfTPYWzE3fwavMBPFO3u6gTISGft+65xM0+AcDj4h8vlMhV90gCtNnYJ70o1xsTfuDMxrKo\nbOzlSaWZbr4J+ZwVqmSb/1Jsc4diKzyUBBFCStqQZzoqAYoIA3hr5BqaKnToqDQWYmq8uFAATvcw\nbDP9mPfaUak0wazv2lG9eLaj0RrgtI8kHFfrhFn1LJOr7pFlUYrK5oQb3Plkay+PRGeGf3yQZ7w+\n4RgRHoWuGu6JsYTjyTT/JaTY0J6gEkNrUnOHYps7uYztNdc4z6KftXGh4UIB3Lb14mzf6xgcfx+T\n87cxOP4+zva9jtu2XnChQNLHEvJ5a2psB1/vE1ODMMv+Rq66e73euOORq+6JRJZF1XV/E20nX0Nd\n9zehqulIal/I6swDLH7+G2S6l0fRcgB8sd/cTDffhHzOCpW2kf9vJdL8l2KbOxRb4aEkiBBStDgu\nhCm7B1c/eYD3f3sHVz95gCm7BxwXWn/MuHee9xgTS+5cTzNlTvdwnEpaABDGleG34XQPF2JaWVdl\nMKOr5zRiP4wz2P/Y06gyNBRiWttS6Pivqmf7qns4wCFgdWL5TB98/ziA8uAJqJpegFi19Q7m2l6e\nZESa6caL/dZmukT4stH8l5BiQ8vhSgytSc0dim3upBNbjgvh7q0p9H22cSdnyr6Au7em0P1oPdo7\nasCyItQrK3HTPZXwOHXlmrTmnEu2mX7wbVq3zQ4kvcFcyOctKxbD0tEDrb4W9gdD8LicUOsMMDVY\nUGVoSFgeO1/9bRLRNlrgGLgCpVIZdzxy1T0bwgEO/otWrLzTD4SBwLwD4VUfwABlXzyOZdVFBBcc\n649Pdi9PpJmutLoJvpE+3ma6+Sbkc1aokm3+S7HNHYqt8FASREgSuEAArKQ49lmUipmpxagEaLO+\nz8ahqypHjUmNA7p6nJ24k6AWF3BAgHsf5r123nH3NuM7CSsWw2BqhsHUnNTj89nfJpHIVfd4JYmz\nfdU9ODq7ngABACOWriVBYcD/20GUvXIECwtn1h+fyl4eRiyBvH4v5PV7szZfUjgisRiaukaqAkfI\nQ5QElZhLly7R1YgkcaurmLl5Ew8uXMDc0BDK9Ho0PfMMDPv3Q6ZSxTyeYps76cR2/AH/MrYJmxs1\nJjV2qavxavOBmOIIDICvNx/ELrXwNgxXKk2YnL+dcFyjNCV9rGI7b7frbyPVN2a1tHM8kavuy2EW\n4mVPwqvu2RC4aY/6UUWyMoSWPWtfhIHwBAeRQoWQbwGF3suTLcV2zuZCbOGUWuhVzfAsO+F030tY\nSIVimzsUW+GhJIiQOELBIO7/9rfoe+MNILz2CcMzMgLHZ5+h6Zln0PXHfwyZWl3gWRI+7vnlbcZ9\nAACJiMUzdbvRVKHDNdc4JpbcqCvXCLpPkFnfhcHxD5Col4y5qjPfUxKMfPe3SUQkFsO5vIqjR78Q\nM8YFg5h12mAfuwv3nBMarQGmxnZUGcwJl/glwk1GJ/uMRA5WqQPndQEAQjM+iJorEPIt0l6eEhEp\nnLK+bzAcxv2py1jyu9Hd/DwWV2YfFlP5AIdbX8Qe86miqShJSCqYcDic6F+Lgurt7UV3d3ehp0FK\n1OydO+j97ncRDoXijj/22mtoOHEiz7Miqbj6yQPcvZV4r8/ufTU4+JgwN9ZvJ+ZDzjoGh9tewp76\nkyX7oWb6zE94SzvLzPtQ/dUf5nFG0bhgENZbl9F/+Ty2/u66ek7D0tGTUiK0fKYPqx9GV3wLh8MI\nB1YQ8i9D+ngDQntXIK/bXfC9PCQ/Jufu4Gzf64icX4HgCjzLzodfM3hs1yu45/j44aMZPNv9/ZJu\nUkt2vr6+Ppw6Fb/wBx+6E0RIHDM3biRMgABg5Le/Rf2xY1ld1kKyq75Bw5sE1ZmFV/AgWaxIgj3m\nU9CpGmCbHYDba4dGaYK5qrOo+gSlQ+j9bWadtjgJEACE0X/5PLR6IwymlqSPJ9lnwurvh6IOxzAM\nGKkCIpkCiuOHIdklzH5KJDe2Fk5ZDS5v+joMz9IU5JIKrAQWkWohFUKKCZXILjFUpz45vtlZ3vHl\n6WkE/f6o71Fs1zalr4wPYv7Dn2H6zE8w/+HPsDI+iHAw+b418aQTW31NBbofjf+B90CPGfqaiozm\nVGisSIJa7W70WF7GM91/jh7Ly6jV7k45ASq281ZI/W3ixdY+dhd8y/XsD/gbrW4lbqqC/PmueJWs\nIf/yfoibq6JKaC/+9AKWz/QhYHUiHOBSei2hKLZzNtu2Fk7huOj338WVGcilG+9/mwupUGxzh2Ir\nPHQZm5A4Kkz8G8vVzc2QKBR5ms3OIISqXJuxrAjtHTXQVZVjwuaGe94HTaUCdWYN9DUVYFm6BhRP\nKBjEwtQE5sas8LmmodBVQ9toyfqG/lyJ9LeJLY6QfH+bXJbYds85ecc9Lv7xrRgJC9lxC9h6LQI3\n7eAcHrBGNSQdJoibqwAgqoQ2AHBWJ1Z/PwT5812QHbeAkQhv3xtJ39bCKSwrATjf+tcVcj0WfBsN\ne1MppEJIMRH+v2gkq6gySXKq9u0DK5OB23K3J6LpmWfAiKI/RJd6bHNZlSvd2LKsCDUmNWpMVMQi\nkc2xDQWDcNy8GlXa2T0xBsfAFTQeOQXjvkOCT4Qy7W+TzWQ+3nmr0RrgtI8kfI5al/rSNUbCQmIx\nQGKJfW7A6oxKgNaFgZV3+sHWaXfccrlSf6/dztbCKVJxGXyri4jsCVKX12B64f7DR0cXUqHY5g7F\nVnjoUighcVS2tKDnBz8AK5VGDzAM9v3H/whDV1dhJiZgyVTlIsK2MDURt7cNAIx90ouFqYk8zyg9\nkf42lU98A9Vf/SEqn/gG5OaOpJKX7ZJ5/+RQvKclzdTYDr7leqYGS0bH32prCe0oYSBwq3h6SpE1\nBk0rDre+iMh5JmFlKJdVAhDhQMtXMOW+9/CRa4VUDJrWQk2VkIIS9iU9knVUpz559cePo9xoxHR/\nPzxjYyjT62HYvx/a3bsh3pocgWIbcNm2GU+uU308pR7bXNoc27kx/v0o82P3ir7RYqYltkPcKrwz\nVizYP8fs5B1U1e6GynQQSr0FIlaKKoMZXT2n41aH2//Y06gyZLdi4dYS2jHjDk9WXy8f6P2AX9zC\nKeW10Kua4FmeRpDzw6zviltIhWKbOxRb4aEkiBAe2rY2aNvaCj0NQQiurGDOasXixAREYjEqW1uh\nbmxcXxYotKpcudzXUax8rmne8eU5/vFikEkyH+JWMWM9B/v1twCE4fUuIrQ4iumhszDtfxV6SqC1\nSAAAIABJREFUyzNgxVJYOnqg1dfC/mAIHpcTap0BpgYLqgwNKfcJ2ixe/yHDQT3K5r1gZpbiPoc1\n0lLRYhQpnEJV3whJjJKgEkNXIXKnmGO7ODmJ/r/5G9g//ni9eSwrlWLvN76Btq98BZKyMihaDsDb\nfw6JGnhmUpUr1dgKrUhDocV2j9/oFr85tgpdNdwTYwmPU6atzsNsCyuTZN47Y11PgABAqYxU4ArD\nfv0tKCqboarpACsWw2BqhsHUnLV5x+s/5LSP4O5KEPs6DqPuVnlsIsQAko6dtym+mN9rC41imzsU\nW+GhPUGEEF5Bvx83/vZvYb90aT0BAgBudRU3/u7vMPGw7GekKle8Wr357lSf630dO0mkserZvtcx\nOP7+w07x7+Ns3+u4besFF9oon6tt5N+PUtlY/HdFUy2xHQoG4Z4Yw9hnH2Lq1jn4vW5wAX/U38qa\nMBYmr+ViygAS9x9iZCxuDH+CxX3l0U/YVEKbEEJKESVBJYbq1OdOscZ2fngY4xcvJhy//dZbWPF4\n1qty6V/436Hc/weQmfdBuf8PoP/qD1HReTqjOy+pxpaKNGxwuodxZfhtxEsIrwy/jZvWT9a/o6qp\nQ+OR+F23G488BVVNXe4mKhCpJPORanqD7/wccyN3sTw/hoBvGT73HAK+JSwvRd958bn5l9plImH/\nIYaBqEKGGZUX0qf3gt1VA+mTu1D+nZOQHWvbkeWxi/W9NhORZHzk0nkMvvNzjFw6D/fEGELBYErH\nodjmDsVWeGg5HCGE19LkZJyr2hsWx8fhm52FXK1er8olr9+bxxnGymWRhp1ma/f4aGHMeK0AngAA\niMRiGPcdQrneiPmxe1iem0aZthqVjW07pk9QplIpsb25ml7QtwxljRHAAADAv7QIcXl0Q16Fxpyz\nefP2H2IYLCzPo+y553P2+qRwiqG0PSGFQH8VJYbWpOZOscZWFKcS3mYMy2a0mTsZqcZWaEUaCmlr\n9/itONFC1NcisRiausairwLHJ9lkfnM1vYBvGTJlC9buIK0lnUwotPmoUNUeyP5kH8pF/yGhKtb3\n2nRtV9q+XG9M+u+ZYps7FFvhoeVwhBBela2tkJSXJxyvO3YMSpOwNlenuq+jmFVu0w1+u27x4QCH\ngNWJ5TN9WPzpBSyf6UPA6kQ4wGVzminhgkE47SPo+/hdXPj1P6Dv43fhtI+AS3HpT6a2VtObt83C\n2PE1RM69UDCy34qBaf/XodRntwfQZvnuP0SEI5nS9oSQWJQElRhak5o7xRrbCpMJnX/8xwAT+wFL\nUl6OXS+8kPOlFqnGVkhFGrIhGAxiYmICFy9exK9+9StcvHgRExMTCCbxod+s7wLfh2N5yJjwueEA\nB/9FK5beuIDVD4fAWZ1Y/XAIS29cgP+itSCJUKQK2oVfv4mhm5/CaR/B0M1PceHXb8J663JeEyGF\nLrpant/jgccRgqnzP6Oq+Smoazuhre1Bc893UdXyFEQs/13VTET6D8U753PRf6iQivW9Nl3ZLG1P\nsc0diq3w0HI4Qsi2mk6fhlyjwZ1//me47tyBSCxGw8mTaHnuOVTt2VPo6cVIZV+H0AWDQdy4cQMf\nf/zx+vcmJiYwMDCAxx9/HI888gjEPElopHt8bHGEtW7xKzPyxK89OouVd/rj1VTAyjv9YOu0kOzK\n7zKrRFXQgDD6L5+HVm+EwdSSl7loGy1wDFyJmsOy4wEW712HRKlCc89xhG+/h8X+zyHKcWl2VizO\nWf8hImxU2p6Q9DDhMM+O5wLq7e1Fd3d3oadBCNkksLwMn8sFhmWhrKlZb5RKcmdiYgK/+tWvEo5/\n5StfQV0df9W29T5Bke7xSlPcbvFbLZ/pw+qHicuJS5/chbIX8vs+3ffxuxi6+WnC8V2PHEH3kWfz\nMpetG9LDAR8C8w6AYdBw6Dhk0/0IeaYePpqB/qs/hNzckZe5kdLhnhjD4Ds/Tzi+9/mvl/QeP1L8\n+vr6cOpU/MqmfOjSECEkaZKyMkjKygo9jZIyMpJ4szsAjI6ObpsEpds9npt08487PCkdLxt4q6AB\n8Lj4x7NpazW9RdsQpCYTVJoKhCf6NiVAQKQ0OyVBJNsipe3jFUcoldL2hKSDLuOWGFqTmjsU29wR\ncmy5UACTc3dweeiXOHvtdVwe+iUm5+5ENSHNhMvlymh8O3yxZWs1vM9ljeqMXjsdGi3/8rt8V0GL\nVNNrOvoFmKrEqJgbADf4LkKeKXi93qjHllJp9lwS8vtBIUSS8b3Pfx21nY9CU9+E2s5Hsff5r8O4\n72BKezYptrlDsRUeuhNECCFp4kIB3Lb1Ru23mZy/jcHxD3C49UXsMZ/iXW6WDJ1Oh4mJCd7xRHNz\nuodhm+nHvNeOSqUJZn3XtkvgNpPsM2H190Px2wwxgKQj/1UBTY3tGLp5GYkmtbUKWjbiEA4G4HdY\n4bt/DQGXDRKdGYqWA5AZLVF7fETSMoR8CwmPU0ql2Ul+UWl7QlJHe4IIISRNk3N3cLbvdST6QP5s\n9/dTXoK2VTp7guIlZ5E5pZKcRarDxRRHYAD5l/dDdqwNjIRN7QfKUKQ6XGxxhLUqaG17H10vApCN\nOISDASwOvAfPR7+IPkYYUD36FYQZFquTdyDRmSGtaYHn0/8PXNQyuI3XpD1BhBCSfbQniBBC8sw2\n04/4CRAAhGGbHcg4CaqpqcHjjz8eVR0u4ujRo6ipqYn5vtM9HOeD/9qcrgy/DZ2qIal5MRIWsuMW\nsPVaBG7awTk8YI1qSDpMEDdX5T0BAlKrgpaNOPgd1jgJUBicz4PZ3/xf0DzxTfjHB9ea84YBZfez\n8I1c35II7czS7IQQUswoCSoxly5doq7FOUKxzR2hxnbea+cdd28zngyxWIxHHnkE1dXVGB0dhcvl\ngk6nQ1NTE2pqauKWx04lOdsutoyEhcRigMSS3702fFixGAZTMwymZt7HZSNJ9d2/FnOMUGAF3OIc\nACDodkCkUK0tg2MAb99ZaJ/9M6w6R+Cx3YXa3L4jS7MLmVDfD9IVDnBYGXPDNziDgGMREmMFFHv1\nkDdq8n6hodhiKyQUW+GhJIgQQtJUqTRhcv52wnGNMjt7ZsRiMerq6ratAheRj+QsX5LdjxNPNuIQ\ncNlivhfyL6//f9DjhEhRsbEXiAFWnSOofOIbGLl2DY0HDmz7GkRYuGAQs04b7GN34Z5zQqM1wNTY\njiqDOev9lsIBDguXbJj/jXU91/bdm8PCRw9Q+SULVEfNBbnjSkgpoCSoxNBViNyh2OaOUGNr1ndh\ncPwDJNoTZK7qzPeUAKSWnAk1tkD8/Tj+8UF4+89BnUTz0WwkqRKdeW2pW9S8Vtf/X6w2IOiOLssd\nqQJ3gBKgnMjlORtvz5nTPoKhm5fR1XMalo6erCZCK2PuqARoXRiY/40V0joVFG3xi5/kgpDfD3Y6\niq3wUIlsQghJk0HTisOtLwJgtowwONz2Egya1kJMC2Z9F2LnFFG45CxVfuf92P04AIAwPB/9Av7J\nxI1cgezEQdFyIOYYjFj68H8YiDXGmIpwVAVu55p12uIU3QCAMPovn8es80FWX883OMO3YhO+2zMp\nHS8c4BCwOrF8pg+LP72A5TN9CFidCAe4zCdLSJGhJKjEUJ363KHY5o5QY8uKJNhjPoVnu7+PvebT\nMGn3Yq/5NJ7t/j721J/MuDx2ulJJzoQU23CAg++eC3P/8y6c//dVLPTOoqzla2BVxniPhm/0Ou/x\nspGkyowWqI+9EnUMkawMYBioHnsR/klrzLEVTfsBCCu2xSSXcbWP3QVfVmJ/sPX3nZmAY5F/fMrL\nO75ZpJrj0hsXsPrhEDirE6sfDmHpjQvwX7QmlQjROZs7FFvhoeVwhBCSAVYkQa12d8ZV4LIpkpzp\nVA2wzQ7A7bVDozTBXNWZUn+cfIq3NyLodiAcWIH6mdOA6jy4BUfUc7ZrPpqNODBiCSo6n4a0ugm+\nkT4EXOOQaE0Qa2qweP0cVYErMu45J++4x8U/niqJsQK+e3OJx2uUSR8rODobW84eAMLAyjv9YOu0\nkOwSToETQgqN+gQRQggpON89F5x/83nUBzhu0bVedU37Yg2WR/4l6jnK/X+Ayie+keeZrlkv2BBJ\njHT1VAWuCPR9/C6Gbn6acHzXI0fQfeTZrL1evPN+HQMY/uRg0nuCls/0YfXDxEtEpU/uQtkL9LmK\nFB/qE0QIIQLDhQJwuodhm+nHvNeOSqUJZn2XYO/GFFK8vREiWflaEhQGApPsRilqAJuXnRUCI5ZA\nXr8X8vq9BZsDSU0oGMTC1ATmxqzwuaah0FVD22iBqqYOoofFDkyN7Ri6eRmJshJTgyWrc5I3alD5\nJUtscQQGqHzOAnmjJuljcZNu/nGHJ81ZElKcaE9QiaE1qblDsc2dnRhbLhTAbVsvzva9jsHx9zE5\nfxuD4+/jbN/ruG3rBRcKFHqKAIQT23h7IxipDKxSuzY+G4BIUREZ2RHLzoQS22KTTlxDwSAcN69i\n8J2fwzFwBe6JMTgGrqx9ffMqQsEgAKDKYEZXz2nE20e2/7GnUWVoyPwH2HxUCQvVUTMMf3IQqica\noNilg+qJhrWvH0+tPDZby58wsUb1tsegczZ3KLbCQ3eCCCEkB5zuYVwZfhvxFuhfGX4bOlWDoPYR\nFVr8vREMRGUqMGIZZA06MNo6yBs6adkZSdnC1ATGPumNOzb2SS/K9UZo6hrBisWwdPRAb2zApM0K\n19Q41DoDTA0WVBkast4nCFhLhBRtuoxLYUv2mbD6+6GES+skHdnpW0ZIsaA9QYQQkgOXh36JwfH3\nE47vNZ9Gj+XlPM5I2LK5N4KQrUYunYdj4ErC8drOR2HuOZG3Jqm5EKkOF1McgQHkX94P2bE2arxK\nihLtCSKEEAGZ99p5x93bjJeabO6NIGQrn2uad3zVt8TbJLVt92GEH8wjcNMObtINtlYDyT4TxE1V\ngkksGAkL2XEL2Hrt2jwdHrBGNSQdJoibhTNPQoSCkqASc+nSJepanCMU29zJR2yDXBAOlw2jjruY\n9ThRpTagydgOo84MMZv6W2Wl0oTJ+dsJxzVKYSxNEcp5G9kbIa1TwXd7BoEpLyQ1Sij26CFv1OzI\nD3BCiW2xSSeuCl013BNjCcfZKj36Lr+HuE1SP30PqmA5yn92d32Yszqx+vshyJ/vguy4JeXzM8St\nwjtjxYL9c/g8NijUZqhMB6HUWyBipSkdazNGwkJiMUBiSa8UNp2zuUOxFR5KggghgieXSeGeGOOt\n6pSJIBfEwPBlXLq1cRV4fGYE14cv42jHaXS29qScCJn1XRgc/wCJ1neZqzoznnexSWdvRK4+TJKd\nIdnfv7bRknA5nERRhjn3NBI1SQ37A7AP3cKu8nKEvf5NA+n13wlxq5ixnoP9+lvrr7k4dQvTQ2dh\n2v8q9JZn6NwlJA/YH/3oRz8q9CTiGR0dhdEYr0s4yYTZbC70FIoWxTY3QsEgMDuBex+8A6/TjpUF\nN7xOO2aGbkAsk0GpN4IRZVbo0j47hvc+P4N4H4Js0yOo1zdCXa5N6ZhlMg2krAL2ua13gxgcbnsJ\nTYYDEDGFv7uxk8/byIfJB5++gSXXPax6p7Hkuoe50YtgpWUo0zaBERUuxjs5tkIWiWsqv39pmRJi\nmQzu8dGY4zUffwZ2xwiWFuOXmA4v+iFhJagLVkcnQQ8xZVJI9iT/eWVx+g4efPoG4r3fLE7dhNLQ\nAZmyOunjZROds7lDsc0dh8OB5ubmlJ9Hd4IIIYKWbFWnTIw67iLRVWAgjFGHFfXVLSkdkxVJsMd8\nCjpVA2yzA3B77dAoTTBXdWbUJ4jjAnA772PGNgDvnB1KrQl6cyc0hhawbGlVS/POWKOupm8Iw379\nLSgqm6Gq6SjE1EgepPL7F4nFMO47hHK9EfNj97A8N40ybTUqG9ugqqmDZs4O52RsggQA4UAQKqUO\n4bHYBAhIvf/Ogv3zOHPemPvC5DU6bwnJA+oTVGKoTn3uCDW24QCHgNWJ5TN9WPzpBSyf6UPA6kQ4\nwBV6akmZG7PC6/UmHJ8fu5fxa8x6nLzjrgX+8URYkQS12t3osbyMZ7r/HD2Wl1Gr3Z1RAjQ++Dtc\nO/vfYBvsxZzjLmyDvbh29r9hfPB34LjUew8J9bxNRjIfJgtpJ8dWyCJxTfX3LxKLoalrRNPRL2Dv\nH76KpqNfgKauESKxGKbGdsT2BlrDSCSoKauNexcISK7/zmY+j41/3M0/nkt0zuYOxVZ46E4QIUUs\nXsnUTDf05tt2VZ2W5/jHk1GlNmB8ZiThuE6V3ibjbHM778N6Nd6yvTCsV8+gosoMXW17IaZWEEL+\nMLkThYMB+B1W+O5fQ8Blg0RnhqLlAGRGiyB7MmXz9x9pkrq5OtwaBt0nvoiK92Ob+T4cTrn/jkJt\nxuLUrcTjGlo2RUg+UBKUA1woAKd7GLaZfsx77ahUmmDWd2W0BCZbqDJJ7ggxtsHR2dieEUDaG3oL\nQaGrhlKpTDheps187XyTsR3Xhy8jURGDJqMl49fIhhnbAPiufM/YbqScBAnxvE2W0D9M7qTYhoMB\nLA68B89Hv0DkHPOPD8Lbfw7qY6+govNpwSRCkbhm8/cfaZKq1dfC/mAIHpdzvUmqrqoewaX7Cfvv\niJurUpq/ynQQ00Nnkej9RlV7IKXjZdNOOmd3Goqt8FASlGVcKIDbtt6oTvGT87cxOP4BDre+iD3m\nUwVPhEjpCNy0831mRuCWXfBJEF9VJwCobGzL+DWMOjOOdpyOqg63hsGxfU/DqGvI+DWywTvH31to\naX4yTzMRBiF/mNxp/A5rVAK0IQzPR7+AVN8IuVlY+1Sy/ftnxWIYTM0wmGI3WLNZ7L+j1Ftg2v9q\nnP1MDEz7vw6lXhgXXQgpdrQnKMuc7uGoBGhDGFeG34bTPVyIaa2jNam5I8TYcpPxqx2tj6e4obcQ\nVDV10HYcijvWeOQpqGrqMn4NMStGZ2sPvnrsW9jfegTm6hbsbz2Crx77Jh5peTStPkG5oNTyL7sp\nr6xN+ZhCPG+TFfkwGbuXQxgfJndSbH33r4Hviolv9Ho+p8MrEtd8/v4j/XfKXuhGxZ+dQNkL3ZDs\nMqS1nFjESqG3PIPWk6+huv2LqKjZh+r2L6L15GvQW54uaHnsnXTO7jQUW+ERxr/sRcQ20w++f0hs\nswOo1e7O55RICWNrNeCsiTf1p7qhtxBEYjGWyiqx9/mvx63qlI0+QcBaIlRf3Yz66tTLbOaL3twJ\n2+AFJLryrTc/ku8pFVTkw6SishkLk9fgc9ug0Jihqj1AfYJSFHDx758JuMbT7smUq4qGO/n3L2Kl\nUNV0UBU4QgqICYfDiT6xF1Rvby+6u7sLPY2Unb32Om+XeJN2L57p/vM8zoiUsoDViaU3LiT6zIzy\n75wU/HI4siFSHS62OAIDy+E/Qv2eJ0uuTDbJjvkPfwZv/9mE48qeF7GqFidYwpW4wSfvOXvoBdTv\nPUHnLCEkI319fTh16lTKz6M7QVlWqTTxJkEaZWpVZAjJhLipCvLnu7K2oZcUFstKUL/3BCqqzJix\n3cDS/CTKK2uhNz+S8Kq6kAu1EOFQtByAt/8cEl0xYaqrYb/80zjj/D2ZCl3RMN27V4SQ4kd7grLM\nrO9Col4DAANzVWc+pxOD1qTmjhBjy0hYyI5bUP5nJyF9chfYXTWQPrkL5d85CdmxNsGXx44QYmwL\nhWUl0NW2o73nJRx49n9Fe89L0NW2J0yAbtt6cbbvdQyOv/+wSMv7ONv3Om7besGFAhTbHNpJsZUZ\nLVAfewXx9tdoTvwHLM7dQzo9mZKpaJiqZOMa4lYxYz2H4Qs/xvTQu1icuoXpoXcxfOHHmLGeQ4hb\nTfm1i91OOmd3Goqt8GTlTlB/fz/efPNNhMNhnDhxAl/+8pdjHvP3f//36O/vh0wmw3e+8x00NjZm\n46UFx6BpxeHWF+MUR2BwuO0lGDSthZoaKVGRDb0SCy17KzXbFWrRqYRR9Y4UHiOWoKLzaUirm+Ab\n6UPANQ6Jrh6Kpv2Q1e7C1MX/k/f5iXryFLKioXfGGmf5HrDd3StCSGnIOAkKhUL4u7/7O/zFX/wF\nKisr8YMf/ACHDh2CybSx7Ov69etwOp3467/+a9y7dw9/+7d/i7/8y7/M9KUFiRVJsMd8CjpVA2yz\nA3B77dAoTTBXdQpi+QnVqc8dim3uUGzTk0yhlqNHX87nlErKTjtvGbEE8vq9kNfvjRlLtyePUmvC\nnONuwuelU9Ew2bgu2D/HdnevKAmKttPO2Z2EYis8GSdBw8PDMBqN0Ov1AIDHH38cV69ejUqCrl69\niieeeAIA0NbWhuXlZbjdbmg0mkxfXpBYkQS12t1UBY4QUlDzXv6r8O5txgmJSLcnTyErGvo8/BXv\nEt29IoSUhoz3BM3NzUGn061/rdVqMTc3l/JjSH7QmtTcodjmDsU2PZXbFGLRKE347LPP8jSb0lNM\n5226PXk0hhZYDr0Q93mWw38EjaEl5bkkG1eFOv7dqfXxBHevgLX9dJNzd3B56Jc4e+11XB76JSbn\n7oALBVKaazLCwQBWxgcx/+HPMH3mJ5j/8GdYGR9EOJj919pOMZ2zQkOxFR6qDkcIIUXKrO/C4PgH\nSHQV3lzViZFpV76nRXagdHvypFPRMFvSvXsVKSiyeT/dWlGRD3C49UXsMZ/K2tL2cDCAxYH34Pno\nF+uvFZgdx4rtJpSdX4By7wkwYqriSEguZJwEabVazM7Orn89NzcHrVYb8xiXa+MfWpfLFfOYeC5d\nurS+hjKSQdPX9LWQv44QynyK5evI94Qyn53y9WNHHsXh1hdxof8fAIShVCoBAF7vEg42/xEMmlbU\nHt2d8/lcvXoFcnEIgeU5uOecEEnKoDM0YM++g2DFYsHEi77e/mtVTQfuPFiCWN2Btu4DST3/008/\ne/j1SwCAzz77DLMjszj6sDR2rt4Pjjx2GKb9r2Loo7/B2vlfAQDwer0wdr66fvdq6/NvWT/Bh3f/\nAUpl+frjAUCpVOLK8NvgVhTwzrJZiaffYYX97P8DIAx1bRtk+iewYgNWR1extLwKBuO465/DyupK\nXn6/R48eFdT5Rl/T18l8XVZWhnRk3Cw1FArhe9/7XlRhhO9973uoq6tbf0xfXx/ee+89/OAHP4DV\nasU//uM/blsYYac2SyWEECFZ7xNUoEItXDAI663L6L98HlsrZnb1nIalowesWJzzeZDStN4nKIW7\nV5eHfonB8fcTHnOv+TR6LNkpKBJpUsuqjBDLTsNzbgxshRxshQLcog9hToqqlx+D6qh5x7Q0ICTf\nCtYsVSQS4dvf/jZ+8pOfIBwO4+TJk6irq8P7778PhmHw1FNPobu7G9evX8d3v/tdyOVy/Omf/mmm\nL0vStPnqGckuim3uUGzTt12hllzHdtZpi5MAAUAY/ZfPQ6s3wmBKfV/ITkDnbW6kElcRK4WqpiOl\nKnBLK/O849ksKBJwrRVnkOmfwMJHsyj7cjV8wXtY9jkgVxihkLZj4fIDSOtUULTptjla5uiczR2K\nrfBk5fJbV1cX/uqv/irqe1/4wheivv72t7+djZcihBCyg9jH7oKvTLH9gbVokyCyM6zfLbJ/Dp/H\nhlppObRVj2HYO4yFlZmYx2u2KTiSConOjMDsOLjFMjBHpmAb/HtE/l4WMQCI3kdt5zfgGzPmJQki\npJTQGoQSQ1chcqfUY7u6GoTNtojVVQ46nQIGQ3nWjl3qsc2lXMfWPefkHfe4+Md3MjpvMxcOBuB3\nWOG7fw0Blw0SnRkHWw4gHAykVTCACwYx67TBPnYX7jkn1JXV0GkrsDj8bwh41xq3BjgfPEvT2NX5\nEobk2JIIrRUUyRZFywGs2G4iVB2A47N/QcwFA4aB4+YvoTjSAGBX1l43ETpnc4diKzyUBBFCMjY4\nOIOf//w2rl6dQigUhkYjw9e+1o7Tp5tQWSkv9PRIAWm0BjjtIwnH1TpDHmdDdpJ4ldP844Pw9p+D\n+tgrqOh8OqVEKN7+tMmxQfgXHeg8dAIyhBHwOiBm5SiXazA18K9o7fk2+taTIAaH216CQdMac/dI\noTZDZTrIu9coHpnRgooDX8S07TpiEiARC4YRAQhj2X8XwJNJH5cQsr2M+wSRnSVSVYNkX6nG9u5d\nF/7rf72Izz5zIBRa+0fc7fbjf/yPAfzTPw1idTWY8WuUamzzIdexNTW2I7ZHTAQDU0P8/jLFgM7b\nzPgd1qgEKMLrXYTno1/APzmU0vHi7U/jVpcAhDFw9XcQa/cDABgwkEtVUJdXQ760iKbqg9hrPo1n\nu7+PPfUnwYTDmLGew/CFH2N66F0sTt3C9NC7GL7wY8xYzyHErSY9J0YsQfmux7EacgEiEcAwa/9l\nxWBEDwshMIA/MJXSz5ouOmdzh2IrPJQEEULSFg6H8d57o1hait/U75137mF42J3nWcUKckGMT4/g\n4sC7+LeL/4CLA+9ifHoEQS7zBI3wqzKY0dVzGvGaZe5/7GlUGRoKMS2yA/juXwPffjLf6PWUjhdv\nf9pGwhLG7JwHYpkKwFoiJGEVEPuXcfKR/4Iey8uo1e4GK5LAO2OF/fpbceYWhv36W/DOWFOaFyOW\noNzQArFWCUYsASMSP7wDBIABWLUc5frGlI5JCNkeLYcrMbQmNXdKMbYzMz787ne2hOPhMDA87Mae\nPVUZvU4msQ1yQQwMX8alWxtXgMdnRnB9+DKOdpxGZ2sPxGzpvhXm+rxlxWJYOnqg1dfC/mAIHpcT\nap0BpgYLqgwNRV0euxTfE7IpUjltq0i/q4BrPOFzQ8EgFqYmMDdmhc81DVV9E1zO8bU3JWYjIRex\nUoSCPgDAoscNXWUFgv6F9XGFxhxz7AX75+BLzhYmr6VUjQ4A1HWHMDN0FoyURcgXRDjAgZGwECnE\nEEnFUNUdTOl46aJzNncotsJTvP/6EEJyLhwOIxgM8T6G4zJqRZYxh8sWlQBtCOPSrfPuaRNOAAAg\nAElEQVSorjSivpqqk+USKxbDYGqGwdRc6KmQHUSiM8M/PsgzXh/3+6FgEI6bVzH2Se/695Zc05Bq\nKhDwLUGiKF9PhFhpOYJ+DwCgQq1B0L85sWKgqj0Qc3yfJ/GFHwDwufnH41HqLTB1fx32629BJNv8\n0YyBaf/X1xu7EkKyh5bDlRhak5o7pRhbrVaOQ4eMvI9paKjI+HUyie2og79E86gjtaUrQhQOBrAy\nPoj5D3+G6TM/wfyHP8PK+CDCwfjLFDcrxfM2X4o1tuEAh4DVieUzfVj86QUsn+lDwOpEOMBl9XUU\nLQcQbz+Z1+sFwEDRtD/u8xamJqISIAAI+Jah1VTD7/WCC2zs2WHFMkjKdAAYVGnVm+4CbSQfoWAQ\n7okxjFw6j7tn3wYjUoML+NfuKsWbd5y7R9sRsVLoLc+g9eRrqG7/Iipq9qG6/YtoPfka9JanUyq2\nkIliPWeFgGIrPHQniBCSNomExXPPteDjj+1x7wg9+qgRu3ZpCzCzDbMe/hLMroWdXaI52xW0COET\nDnDwX7Ri5Z3+9WsLnNWJ1d8PQf58F2THLWAkbFZeS2a0QH3slTjFERioj70KWW38ktFzY/EvbPgn\nJ/DIoZO4M/gZWKns4aFEkMjU6H78OajlixDX7INCY4aq9sDa3ZewKOauUs2+Fvjc85CVK6PuKkXm\nFu/uUTLSaexKCEkfEw4nuJRRYL29veju7i70NAgh2wiFwvjkEzv++3/vg9O5DAAQiRicOGHGt77V\nAZMp8ztBmbg48C6uD3+acHx/6xEc73w2jzPKrpXxQcyc+UvEv9vFQP/VH0Jupg9VpWTrfhiFrhra\nRgtUNXUQZbgHK2B1YumNC4lON5R/5yQku7JX9ny9T9BIHwKucUh09VA07YesdlfC5H7wnZ/DPTEW\nd0ymrkRFWzuWuNWk9qe5J8Yw+M7PtxxDDbVRBMetf4FCUwlW8jChenj3KJ93bgghQF9fH06dOpXy\n8+hOECEkIyIRg6NH69DersPIyDxWVjhUV5ehpUUDSZauCGeiydiO68OXkehTW5NxZ6+1T6aCFiVB\npSPefhj3xBgcA1fQeOQUjPsOZZQIBW7a+U43BG7Zs5oEMWIJ5PV7Ia/fm/RzVPVNWHJNI+Bbjhnz\ne+ahC4Sw62hyFz7i3VXyezzwQA3T/j9FODSNcGgh6u5RMgnQ1qatGq0BpsZ2VBnMRV0shBAhoT1B\nJYbWpOZOqce2qkqBw4drcfx4PdrbdVlNgDKJrVFnxtGO+CWaj+17Gkbdzi7RnKiC1sZ44gpaAJ23\nuVSI2MbbDxMx9kkvFqYmMjo+N8lf8p5zeDI6fjLixZULBTA5dweXh36JG6u/h6c1BGW3BTK1Juax\nlY1tSb+WzzUd9/t+jwdTN+8juGJC28nXUNf9TahqOpJOgKy3LuPCr9/E0M1P4bSPYOjmp7jw6zdh\nvXUZXLBwpfvp/SB3KLbCQ5cbCCFFTcyK0dnag+rKWow6huBacEKnMqDJaIFR17Djy2OnW0GLFCe3\nfYx3fH7sHjR1jWkfn63VgLMm3kfHGtVpHztdXCiA27ZeXBl+G0B47Y6Ubwm3vRdwsOUrkN3XwO9Z\nS94ajzwFVU1d0sdW6KoTLq0DAJky9Z83XtPWNWH0Xz4Prd4Ig4kqVhKSazv7X3+SMqpTnzsU29zJ\nNLZiVoz66mbUVxdfiWZFywF4+88h0XK/RBW0Iui8zZ18xDYYDGJqagojIyNwuVwoEwH69gMIOUbg\n98zHPH55Lv6dDWCt6MHKmBu+wRkEHIuQGCug2KuHvFGzXuxAss+E1d8PJdwTJOkwZetHS2hrXJ3u\n4Y0EKDIPRTlEYgluOM/jyX3fgm5RisrGtpT3RWkbLXAMXEk4nspdpYh4TVs3hGF/YC1YEkTvB7lD\nsRUeSoIIIWQHS7eCFtn5gsEgbty4gY8//nj9e37vAgK+ZTz26GEosbYHBuEwQqscwr4gJDVlmH/3\nHuRt2qjkJhzgsHDJhvnfWNdPI9+9OSx89ACVX7JAddQMRsJC3FQF+fNdUdXhAAAMIP/yfoibM2uM\nnA7bTD9ikgoGYKVSsFIpPIpF7O58Oa1jq2rq0HjkVNwlhqneVYpwz/FXpPS4dnbFSkJ2CkqCSsyl\nS5foakSOUGxzh2KbGCOWoKLzaUirm1KqoBVBsc2dXMd2amoqKgECALFUjsDyEj797AqePv444J4D\n510F5/EDDINythqeD0bg6R2JSm5WxtxRCdC6MDD/GyukdSoo2nRgJCxkxy1g67UI3LSDc3jAGtWQ\ndJggbq5Kuzx2OMAhODq7dsxJN9haDST7TBA3xR5za1znvXbeY7u3GY+aR6Qa3f1rCLhskOjM0LYe\nRvkfvoL5B/exPDeNMm11WneVIjRaA5z2kYTjal32Ckukit4PcodiKzyUBBFCSBYls6Qo29KpoEV2\nvpGR2A/SrEQCmbICfu8ipuY90LJyrHoWAYZBw8EnEbrzcNP9luTGNzjDW/XNd3sGijYdAICRsJBY\nDJBYsvNhPdPeQ5VKEybnbycc1yiTW6K3Xc+txp7s9NwyNbZj6GbiipWmhp1dsZKQnYKqw5UYugqR\nOxTb3NkpsY0sKXL+zedYuPhgbTnRxQdrX1+yIRzgCj3FGDsltjtRrmPrcrliv8kwkCjKodDo4A0E\nUWlqgbHjECyH/xCSoTJwMysbj32Y3ABAwLHI+1qBKW82px4lODobu7wOAMLAyjv9CI7MRn17a1zN\n+i7EVn+MYGCu6kxqHn6HNc6y0rWJeD76BfyTQ0kdZztVBjO6euJXrNz/2NOoMhSuYiW9H+QOxVZ4\n6E4QIYRkSbJLigjJBp1Oh4mJOCWvGQasVApjfSOqZnVYGnIi4I2fxESSG4mxAr57cwlfS1KjzMqc\n484hw95DBk0rDre+GF0cAQDA4HDbSzBoWpOaR756brFiMSwdPdDqa2F/MJRU01ZCSPbRnaASQ3Xq\nc4dimzs7JbbJLCkSmp0S250o17FtbuavdtjU1ASGESHkXU34mEhyo9ir57uZAsUefUpz44JBOO0j\n6Pv4XVz49T+g7+N34bSPxO2Bk2rvoa1xZUUS7DGfwrPd38de82mYtHux13waz3Z/H3vqT4IVJbeE\nLdOeW6lgxWIYTM3oPvIsTjz3LXQfeRYGU0vBEyB6P8gdiq3w0OUGQgjJkmwuKQoFg1iYmsDcmBU+\n1zQUumpoGy1pb8YmxaempgaPP/54THEEYG3pTU1NDQJ7PVj46EHCktaR5EbeqEHllyyxdzIZoPI5\nC+SNsU1HE4k0A93cC2etIehldPWchqWjJ+rDfjZ6D7EiCWq1u1Gr3Z30PLeinluElBYmHA4num5Z\nUL29veju7i70NAghJGlz//MuFi4+SDiueqIB2ufbtz1OKBiE4+bVBGV5T8G47xAlQgTARp+g0dFR\nuFwu6HQ6NDU1oaamBmKxOG7pawDryY3qcXNUmeyVMTd8t2cQmPJCUqOEYk/qRT2c9hFc+PWbSJR5\nnXzum1F9cAJWJ5beuJAwUSv/zkne5XDZsjI+iJkzf4lEE9F/9YdZWQ5HCMmuvr4+nDp1KuXn0b+i\nhBCSJYq9+qSuum9nYWoibgIEAGOf9KJcb4SmrjH9iZKiIRaLUVdXh7q6+P1qGAkL1VEzpHWqbZMb\nRsJC0aaL2bfGBYOYtY/APnYX7jknNFoDTI3tqDKY4y7fSrUZqFB6D1HPLUJKCyVBJYbq1OcOxTZ3\ndkpss7WkaG7Myjs+P3Yva0nQTontTiSU2CZKbpKR6tI2YFMz0HAYIT+H0EoQ4QAHRsJCJBfHNANN\ntfdQruKaac+tYiCUc7YYUWyFh5IgQgjJklSuuvPxuaZ5x5fn+McJyZZZpy0qAdoQRv/l89DqjVF3\ndYCHzUAn7oPzriLo3lSSeyUIbtGP8l3q9aQoItu9h9JFPbcIKR2UBJUYugqROxTb3BFibLlgELNO\nW9wlQuledY9Q6KrhnhhLOF6mrU772JuFgkF0NNZh5NJ5Kr6QA0I8b1OVzNI2vaEhqoiHytyEoH81\nflU6hoFuVY+VMXfafyPFEFehotjmDsVWeOhfOUIISVE6S4RSoW20wDFwJeF4ZWNb2seOiFd8wT0x\nBsfAFSq+QNatL21LNO5yYubeLQxf+M3692SLHlhaOnHn1hUwKyKEg6G1AYZB14EvQHqbgw8zUUkQ\nFwrA6R6GbaYf8147KpUmmPVdMGhaky5xTQghqaA+QSWG6tTnDsU2d4QW2+2WCM06E1eIS4aqpg6N\nR+JXumk88hRUNfE3waciUnzBG6eJ5tgnvViYitOEk6SkkOdtiFvFwtQtTFx7E/cu/B+YuPYmFqZu\nIcQl7hkUj0bLvzxNqVTjwacXor7n98wjPOrA/n3HsOvQYzA2tGFXx2M4duhF6O5WgJtZiSoXz4UC\nuG3rxdm+1zE4/j4m529jcPx9nO17HbdtveBCgajjC+39oJhQbHOHYis8dJmPEEJSlGr1q1SJxGIY\n9x1Cud6I+bF7WJ6bRpm2GpWNbVlbqpbP4gskv0LcKmas52C//hYi5+ni1C1MD52Faf+r0FuegYiV\nJnUsU2M7hm5eRqKSh1qNHk7fWm8diaIMYkUZgr5lrDjm4Pv4CuoOHIXZfxjBiWWEvEvgHj4z0qQV\nAJzuYVwZfjvOa4RxZfht6FQNGfX/EbpwgENwdHatKMSkG2ytBpJ9JoibYotCEEKyh5KgEkNrUnOH\nYps7QovtdkuEtla/SodILIamrjFniUik+IJSqYw7TsUXMleo89Y7Y41KgDaEYb/+FhSVzaio2gW/\nwwrf/WsIuGyQ6MxQtByAzGiJqoJWZTCjq+d0nDufDPY/9jS46WnI1JWQ1dZhzj2NxYU5VGi0qDQ3\nwzswBO/sJMqWtdH7g7aUi7fN9MeZ68acbbMDUUmQ0N4PMhEOcPBftEaVB+esTqz+fgjy57sgO27J\nayJUTLEVGoqt8FASRAghKdJoDXDaRxKOq3WFrXCVjHwVXyD5t2D/HHxJxcLEVTDOSbh/9+b64/zj\ng/D2n4P62Cuo6Hx6PRFixWJYOnqg1dfC/mAIHpcTap0BpgYLqgwNmFj9GO7gCi5f+s36sRwPX+mR\n7hOo4DTgJjctZ4tTLn7ea4+aoVxSAbm0Aiuri1gJLMK9ZbyYBEdnY/sjAUAYWHmnH2ydNi+NYgkp\nRbQnqMTQmtTcodjmjtBia2psB8AkGGVgarDkczpp0TauzTHeniAgO8UXSt3W8zYcDGBlfBDzH/4M\n02d+gvkPf4aV8UGEg4EER0iPz2PjHV9y3Yd34H3E++Tt+egX8E8ORX2XFYthMDWj+8izOPHct9B9\n5FkYTC1gxWKINJW4cfVCnGMBN/p+B0lrLZQHjFDs0kH1RAMMf3IQqsfNUXc3KpUmAECFohptxqNQ\nKaqxsuqF6uHX1eroc1Fo7weZCNy08+WrCNzKbwJYTLEVGoqt8NCdIEIISdF2S4SqDA2FmlrSIsUX\nbp3/95ixbBVfIBvCwQAWB96D56NfYLu7L5lSqM1YnLqVcFwm1SDku5dopvCNXofc3JHUa007xyFT\nKuH3Lsa+jrICrvlJNDz/Rd5jmPVdsM3eQGV5LT4d2rqMT4SnHvkv4EKBoqwSx026+ccdnjzNhJDS\nQ0lQiaE1qblDsc0docV2uyVCmZTHzpdI8QWlwYTFqQl4pychU6qzWnyh1G0+b/0Oa1QCtGHt7otU\n35h04rEdlekgpofOxnktAGBQVl4Lv+9awucHXP8/e+8e3NZ153l+Li4uHiSIB0EQBEGCLwmiRL3f\nUSS/lPEjHbc9cTrdFTsd927V7mz1VE2ntndmqre7xjOe1MxWdXemdr2zUzNbE093Jz3prDvttmM5\n6UhObDmRLFESRVImqRcJvgk+QBAkSAAXd/+g+AYgvkCC5Pn8IwEH99yDHw+A+7vn/L7fzmWfa3Rk\nAMWcj06vkIhNkUzE0ekV9AYjsmJgdCT42D7c9l3sL/8S713/dyy+qZBvtHPr4ft4CvfO1gXl2vfB\nWpBL7aht6WsIZY9tA0ezvWKba4jY5h7iV04gEAhWwcwWIbe3erOHsipSmb06KmsocG9+ApRMJBaY\nb24HE9fo/Xoy7XtayerL47C4/HiPvJpCHEHCe+Q1lFCMqXnP6sxWdGYryWiYZDSM4ixf9rlm6uNk\ngxHZYFzSvpz6OFmnEI72Y8srJpaIoiZjyDoDBr0ZRTaCxBJxhO2CcsBL7Jet6fJVlP3eDR+TQLBT\n2Jq/JoJVc/nyZXE3IkuI2GaP9Yhtqot+b2UtRW7flli5WU/mm71GImNYLJZ1NXtdC9vJxHX+vI0P\nZa7TWcnqy+PQyQZc/ucxO6oJ99QTDQUw231YS49hcfmJ9dwlclVCZ3MzVX6E/tEQ4fAI1qJy3DY7\nxurjafvWEnGm+u8TvfsZ8aEArqrTfB6bRKcYQVpcJ7f8+riRSA+K3oSiN6Vsny+OsJ2+a/VVRZhe\nOrxUHEEC08tH0FcXbeh4tlNscw0R29xja/ySCAQCwRqYf9E/c6WRKxf9m8HjzF4LXZ41+RythRkT\n11S0/+oi+S7PlvQvUpw+pjqbM7Qvf/VlOehkA9aS/VhLlq4uGT1+rM/8Dzzs6qDh07l50AfctxRx\nzFmF35OY/UxocZXJ9hDRpgGiD3uR8yZQvDYSo8PoGn5C3a79NH3egJxnnZcIraw+zmHx0jNyJ227\n3bI9V0QkRcb4hB+5vHDaJ6h3FNljQ9nvRV8tfIIEgmyyc371BYDYk5pNRGyzx1pjm8sX/ZvBfLPX\npT5Bazd7XQvbycR1/rw11xwjcutD0u17Mlcd2bBxSXqFqKOS5l/8FDnPipaIIekNSMY8dIqJW1f/\ngcLiUtzeGrS4SvhygJH329CmJkmEemeGjO35Z0lM/QxXfxNnDh1nWM5nLDK2qvo4n+swzZ0/J118\nfEWHZh9tt+9aSZFR/G4U/+ZLYW+32OYSIra5h5DIFggE2575F/1Lmb7o32zURIL+7gfc+PQDLr33\nPW58+gH93Q9QE4l1P9dGmL2ulhkT13RsVRNXo8eP7dw3WCqtLmE79yrG0j0bOp6eQBs6gwm5wIne\n4UEucKIzmB+t5Mx9JibbQ4y83wYaJKfG5zrQYPTDdoxFT5Ac7UNpusAuY3KJhPZycdt3cXLXb5Eq\nPid3fx23fdea37NAIBDMR6wE7TDEntTsIWKbPdYa21y+6IeN36433+w1EoksWQ3aTLPX1Zi4Lq5T\nUZw+zDXHMHr86yY7vRrmz1tJr1Bw6DkMxVVEH9wgPtSJ4izHXHUEY+meDR/ncj8T0ebg7P0DTY0t\nfJEG8R55VlQh1pdOdvvxyDqFfb7zOK0VBAYbCEW6sVu8+IoO4bbvWiCPffXqVU6dOrXqcwnSs16/\nY/GkSuvoAPVDnXRGRii3ODjmLGePrRhFtzO3+IlrhNxDJEECgWDbM/+iPxWbedEPG79dz1tZS2vj\nlRTng802ey2s9NPb8NmiZzW0+CTJyShmKcrIL/4C4+4ThIxJAoMNDA22UKAqlColmMaGsua/s1Yk\nvYKpvA5Ted1mD2XZn4l475z/jyQb0Jhc8Lr4YBy9r2DFqnKpkHUKpfOksBejJeJM9bbhCV5n4J1/\nyJlkV7CQeFLlw67P+f6D+tlvmMZQHxe6PufV6mM8X7Z3xyZCgtxCfuONN97Y7EGk4uHDh3g8ns0e\nxrbD5/Nt9hC2LSK22WOtsdXJMg/bGtK0Shw6eR6LtXBN51gLbY2/ZmggvTqYwZSHp3z3up3PnFeA\nYjDS1/UAg8Ewr2W6mL28qg6dbnN2SxvyLOiNRkKdDx89o6FOjJIYG8R35BS6wBVio3081A/xcct/\nIxi+R6jvDsHwQx6EmrDuOk3BeAImI0wFmjCW7UNvW7p6tBHk8nfCcj8Tse4xpjqmDTslSUdyMrLg\nleZaO8lEE1oihu3M17MW6xmz2eEP/yPScAA1HCTWd4+Jzz9BMuZhKK5CEhfWa2Y95uznoX7+75bL\nKW+xNI70UmcvodhcsObzbDVy+ftgq9Pb20t19crtKsRKkEAg2PYUuX0cPv1sitWWlSlYZYtsbteb\nuXsevV+/YKvY7n3Hc9LsdcbENd/lYaT9LpH+AErSidVegNZ1g+RoH1MnnuH6w78GnQ6d0Tz/3XL9\n4bt8affvYLzWx3r772wnlvuZMNe5CH/SARpIBiOypRA1MjzzUpRSlfiDsazXNW2k2axgbdQPdWao\nwJxu3+8QN7kFm49IgnYYYk9q9hCxzR5rja2s1+PffzonL/ohe9v1Zu6ez794nL9VrPjQc7R3BXn6\nxRdW1X+20On12MsqsZdVMvrZu0RufoDaHZ5uM1vpSUwnOOh0JGNTi47W6En0U/OoTmU9/XdWSi5+\nJ8zKXTcHKRy38MXD/5iB8S7GJoZSfiZMlXYcX/E/EkeQ0OVZkfRGkvFxbM+WI7uGcB3+o6zXNc03\nm11axyaS3ZWSzpD4Xu8Ax0+cXFPfnZGRjO1d46E19b9VycXvg52OSIIEAsGOQNbrcXurcXtXvmSe\nbbJVo7Ocu+fxeHxVfW8UU52NJKPh2cc6s5WRyeD0g6SKpDeiqQvfw+jkIDrz+tSpbCfmy13PTol6\nKC6wsOfLR7Ac9SzxpZEUGetZH4YyK9E7QeJ9EZQSC+Z9LkyV9g3zsdlIs9ntTiZD4sL9J0gmEmsy\nJC63OGgM9aVtL8u3r7pvgWA9EUnQDkPchcgeIrbZY7vHNlvb9ebfPV/K9N3zs09+M+3xWlwl8XBw\n2sSxJ4Rcakc54EVftT4mjqoaJ9R/n2CggchwN5ZCLy7fIezuGmR5elVhscloMhrGYSqjFyCZRGcw\no8aiC/q1mYpIRrvYaP+dxeTavJ0vdz2f5FiMob9pRl9oxrzbueQ4SZEx73ambNso5s+Dpd5W6282\nu53JZEg83HSNcM2eNXlxHXOWc6Hr8zS3dKbbdyK59n0gEEmQQCAQbDrZ2q63lrvnWlxl6uM2Jt+9\nNXvRrLb1E/tlK6aXDmN8wr+mREhV43Q2f0TbtXeYOcFwbwuB5kv4T7xCed3TyLKyxGQ0GQ1Tqi/h\nDtN+NpKyqE4FiVK9m2T0803x38ll5stdL0GD6J3gpiQ6y0m2c8lsdquTbUPiPbZiXq0+tkAdDqYT\noNeqj7Nnk4RKBILFCLPUHcbly5c3ewjbFhHb7LETYjuzXe/omRdWbTi5GMWZWY1IcZZz9erVlG2J\nh4MLEqBZNJh89xaJB4OrHhdAqP/+ggRo/gnarr1DqP8+kNpk1HT3DserXkK2OJEUI7o8K3qHB12e\nnZN7v0GhvgjXV/+IgkPPbrpPUC4xX+46ZXtfJGN7NphJtsffukTsF63TifYvWhl/6xJTH7ehxVVg\n4TyIROaPc3PMZrcymQyJI5HImg2JFZ3M82V7+eNDz/Llsr0cdHj48qPHz5XV7lh57Fz7PhCIlSCB\nQCDYtqS6e64zWx+ZW45hrjpCPJC6SDne2J1x1SDe1I2yZ/X+SsFAA5lOEAzcxllaO2syaiytJfrw\nJrG+uyjOcvb5jlPq/xKB4cZZY81K11FctqoFxpqCORRPAdG7w+nbS5ZuM8s2j0u25bJClD3uBWaz\nWsMvMMZGN9VsdiuzGkPilaLoZPY7PEIFTpDTiCRohyH2pGYPEdvsIWK7Ombuno9+8gNkawlG15PE\nu2XigRimqlK0yRK+eCq1MaXak1nBSe0dzdz+mHqfyHB3xuPHR3pIqjEiwTbC3deJjgYw23xYz/wm\nFpcfnWwgDygtqps7V+tNuobfT1lbtBnk2rydL3e9BAnM+1wbPqaVJNszZrO+HDCb3cqkNiSexmKx\n4KhcP08ywRy59n0gEEmQQCAgvZeMcGLf2szdPd/NeP0oI3/3OZKsoDPkMT4cYvxGPY6v+LGe9S2p\n75FL7aht6f2JZI8tbdty6n0shV6Ge1vS9pHv8DB4/xJd178328dYXxMDrRfwHnkVl/95dLJh2bVF\ngsVy1/MaJHC86MdUufGqXWtNtgUrx1pSRuWZ8ynFESrPfAlrSdkmjEog2HhETdAOQ+xJzR5bNbYz\nXjLBd75D5NaFRz4yFwi+8x3GGn6Klth8CeWtGttcQNIraJNFjH0ygt5WMl1HYzADEmjQ+d9vMNm+\n9EJUOeCdX4azqFNQ9nvTnnM59T4u3yEyncDuqliQAM3vo/vm94kEp4u7Q70t3L3yF0iJUSR1HLTE\nknNtFrk2b2fkrt3/5DjWJysw73FifbJi+vEXlybCG4FcmjnxSpVs51pctxozhsR1L71G6aFT2Mur\nKD10irqXXqM3oVuTPLYgPWLe5h5ipgsEOxzhxL79WY0qmL6qCNNLh5fWa0hgevkI+uqitOfLVO9j\nMFkYDbZTsf88/hOvpEiWJPwnv0ZyvDNtH6AR7qnHWmBm6O776Ka65lokBc3gRpPzmF9bJJgmF+Su\n56Mc8BL7ZWvaLXqZkm3B6plvSDyfyfau1AcIBNsQkQTtMMSe1OyxVWO7HC+ZzU6Ctmpsc4VMqmAW\niyWlKpikyBif8COXF05LF/eOIntsKPu96Ksz+wSlqvcxFxRjce8jNDLC582NhCJJSiv8HPvyHxLs\nuMn4SA/5jlJcvoPY3TU8+OW/y/ieoiMPMA72MT7Ss3DcWhxpqoekqQxNZ1rSvpGIeft4VpNsi7jO\noSYSDPYH6G5vITTcj73QjbeyliK3b1XKkiK22UPENvcQSZBAsMMRTuzbn9WqgkmKjOJ3o/hXpgK3\nuN7HXFCM3lbDZ5/8FNAwmAoIh8O0Nl7h8Oln8R//KrJeTzKRINzXRef1T9GSeUxFRtEbTch6A0gL\nt86ZLYXIE7ew2CpYmnMlQR0HnYl8R+mKxi7YWNaSbKdivZOCXEZNJGhrurLAZLm/+8Hc52r/6W33\nngWC9UTUBO0wxJ7U7LFVY7scL5nNZqvGNlcw17nSlt9ExiProgqmqnGGelpouT19MoIAACAASURB\nVPJDZNnAZCREIjYJmobFvY/b137BzIWa3pj36CiNW1d+xmB/B8lEgt7GazS/+1d0X7+MbPASj0aJ\nhoaJR8dBW7hM4HBXgCRR4i0n1ZuT1AhoEi7fwTW/t9Ui5u3ymEm28145SsE/fZq8V45Oy2KnSYDS\nxXUmKbj03tu0Nv76UULway699zZtTVdQE4mUx21VBvsDCxKgOeY+VytFzNnsIWKbe4gkSCDY4Zhr\njpGpQF04sW99ZlTBlvyZJbD9xu4lqmBaXCXe1s/EOzcY+78uMfHODeJt/bPGlYuZUWirv/BdAs0X\n6XtYT/m+J5kIDwASoeFhZi7UjPkOZL1x/tno7mhjbKBngVrVSGAQz/7fBiSmxsdQEzEAFEsphYd/\nn9b2UT5o9HKva4Kqc/8rJtviZF3Gf/IV7O6aFcdLsDXJRlKQy3S3t5BpK3N3R9tGDkcg2HJImqal\n+wRtKhcvXuTo0aObPQyBYNszow63VBxh2om94NCzQiZ7G6DFVSbbQ0TvBIn3RVBKLJj3uTBV2hfc\ncdfiKlMft6Wu0XjpMMYn/Evu0A/1tFB/4bvMP8BcUIyjZDdJNU5nzzADvR3ojXnIeiPSoq1tJd4a\ndpXuJnDlowXPG202HL4ipiIP0NQwjsqTDEcLaKz/GCk5jm5qeh+cJhmpO/Wb5NNLqP8uBTYnzqpz\nWH1PCHnsHcSNTz+gtfHXadv3HDzD0TMvbOCIssul975Hf/eDtO0l3hqefvH1jRuQQLBJ3Lhxg/Pn\nz6/4OLFZVCDY4cx3Yo8+uEF8qFM4sW9DlqsKlng4uDQBAtBg8t1byGWFs+aVM6RSg4uODRAdGyDf\n5sFRXEt4LL04g83pZnxgqYDB1OgofY2jmB1OimrOIBdW0Pje2yBJaDozmmxBUiNI2hR3rvx/nH/u\nOeocETTFyKS3Dk0kQAvQ1BhTIy1MDFwlPtaBUlBBXvEpjI5aJNmw2cNbM6Hh9L5WAKNDmdu3GvZC\nd8YkyOZcWS2fQLDTENvhdhhiT2r22MqxnXFidzz5TYq/+kc4nvwmJt/+nEmAtnJsc53FsY03dmeU\n0443LVV+S6UGN8P4aC92m5VMWy69FX4MBUv9YIw2O859e0jmT9LfX8+9pk9JxKNomgaSTNJQTFIp\nQpNkQKOzZ5SE42kmy/4AzVCSdkwbRS7NW02NEe54n/7P/pix9r9ncqiBsfa/p/+zPybc8T6aGsvq\n+dVkjOBoI7fbv8enzf+a2+3fIzjaiJpc+XnTxdVemPmif7slBd7KWh73uZohqcYI9zXRVf82dy/9\nG7rq3ybc10Ry0d89l+bsdkPENvcQSZBAIBAIZlF7lhqnLmjvHV3ynKUws5eLQQ+HTz9LqqKkI194\njiJ3BYWV/gUtRpsdg8vEnSt/SeDOJSYnhhns62BitJ/Y5NijREhBU5wkTRWopkpGJguIlfwumkk4\n3i9maqSFUMvbpFriC7W8zdTI51k7t5qM8aD3Ap/e+dc86H2fYPg2D3rff/T4wqoSoVSsJCnYDhS5\nfY/9XMF0AhRs+5B7l95koPUDxvqaGGj9gHuX3iTY9uGSREgg2CnIb7zxxhubPYhUPHz4EI/Hs9nD\n2Hb4fJmVwASrR8Q2e4jYZo/FsVW7RlDbh9K+XjngRdm38LtZ0unpvXclzRES1Ue+jLfqIG5vFQZT\nHoregLdqL4dOnqe8qg5Zr8eQZ0FvNBLqfAiAvaaC1ms/AjSMFit6oxmjtZShgW7U+CR6gwmd/GhH\ntySDpMdbVYenfPdqQ7Hu5NK8Dbf/PbFQa9p2nVKA2ZWdOtyh8B3q7/2fpFpiDI7epsi2n3zT8ldp\n0sXVnFeAYjDS17V4i9h0UlBeVYdOt33u/ep0OgqLSjN+rgDGBj6n49dvkSr+Y32NWNz7MVqKgdya\ns9sNEdvs0dvbS3V19YqPEzVBAoFAsAloiThTvW1E79cTHwqgOH2Ya45h9Pg3dRuicsBL7JetqbfE\nSaDsX7rqY3fX4D/xCm3X3mGxmoL/5Newu2uQZT1ubzVub+ofKp1ej+fACfJdHka72xkevoNizpv2\nCVIMxKbGcJU7pgeBRmJqAr1iWnCu7Xanfz2Jj2VWRntce1KNEQm2Ee6+TnQ0gNnmw+o9jsXlR/eY\neqLeketk2mPZP3KdYtuBjH0sB1mvx7//NIWuUro7Whkd6sfmdOOt8FPkrtiWnjmyPvPnCiDcnTn+\n4Z56rCWba4gtEGwG2+eWiGBZiD2p2UPENntst9jOKPIF3/kOkVsXmOpsJnLrAsF3vsNYw0/REvEN\nG8vi2OqrijC9dDilnLbp5SPoq4uW9CHLCuV1T3PshW/jq/sSztJ9+Oq+xLEXvk35vqeWrdCm0+ux\nl1VSceopVG0SY4EV2WCYHUuk/w4HTzwFSCTVOMlYgkRoknhwgv3+c1gmbWllvDeDXJq3SkHFqtvX\nup1qbDyzIXN4YmWGzJniOpMUHD3zAk+/+DpHz7yA21uzLROg5RIdzRz/aGiuPZfm7HZDxDb32Lnf\nCgKBQLDOJNQEvUMBHva2MDjaT5HNTZWnFo/Th16e+7qd6m1LIUkOoDH6yQ8wuCox+TbnzqykyBif\n8COXF057A4WjSFYzym43+uqitAaWsqxgL6khbtYxFcqnO9xBaOwmPpOG274LWbey1S1LoZfh3pYF\nz0XHBjADJ889x/h4gvHeMFaXk+K8cgxXVYI/qcfxFT/Ws76049yp5BWfYqz9PdIt8eUVn0h7bCTY\nRvfN76c4VqP75vcxO6ozriQU5PsIhm+nbbfmTXs8qckwkWgn3cONjIRbKcj34XEcp7BgD7Ju66vX\nbRZmm4+xvqb07XaxTUuwMxE1QTsMsSc1e4jYZo+tENuEmqDh3hV+ev0d+oY7CU+M0DfcxeeBBox6\nI8WO0tl6hLGbHxLru5u2L52pAHPloRWPIZlIEgqM0lnfQ+CzHsb6I+h0EkaLAUmXumA8VWyTqIzG\ne+iNN9GjNRN1TqEvtmEscKDTpU4u1GScO4GL/KL5P9MzcofQRA/B8APu9f4ag2ymyFqBTlp+YpKu\nzigRGyfS8wB/0VO4H3iw9OQh3Z1Em0gAMHl3CNOuQhRn3rLPlS1yad7KRgeSksfkYMOiFglH7e+R\nV3IGKc3fNtj6AeND6eer3mjB6jmctl0n6ekM/jJlm4TMMf8/xmj8JUnp35GUfki+KYlRKeVe969o\nH/g5ipyH3VI9O39yKa5bAp2e4Ycfp2mU8Bz8HVETtAGI2GaP1dYEiSRIIBAI1oHuwXZ+en1xTcw0\ngYEHlLsqseUXAjBW/x5qOJi2L8lgIn/vuRWdP5lI0lnfS/P7dwn3RIiGJgn3ROhtCqI36rGWWNIm\nQvNR1TidzR/R9Mv/ymjwAdHIIKPBh/Teu4KimCko8qVMhPpG2vhl8/9LqvffPXwHj6OWArNr2e/H\nmGdDUcwM9SxWLZOo2fMV5GtGEgNRtNjS7W9yvoK5dum2vVxFS8SZ6m5h7OaHjNW/R2ygHUnWI+c7\n0iYmK0XSyRitNZicB9EpBehkM2b3KRz+16YToAx1Pf0tf08sMpC2Xac34ax6Mm27yeBAkfMIji5e\nDZJ4+tD/hN32H0nyD0zE2oAwOrmFPPNNigq+Ss9QFwOjt2bFEzYiVtsNxWxHNuQx1te4qEXCe+Q1\nHL5TInaCLY0QRhAsi8uXL3P27NnNHsa2RMQ2e2yF2D7sbSFT8fHD3jbKi2sAUJw+pjqb0/alOMtX\nfP7RrjD3PmpP2Xbvo3YK3PkUVtqXtC2Obaj/fgqBAwCNtmvvUFDkw1lau6SfQPBWimPmjg0MNlBa\nuHdZ7wXm6owKinwEA7cZH+kh31GKy3cQ9aMoE8H0F+Xxvsiyz5NNljNvZ+rD5m+PnK4R+xDbuW9Q\ncOi5dRPKkGQDpqKDmIoOrui4tW6nknUGqj0vYLdU0zdynfBEJ9a8ckqdp3FY30WSBoirE4uOmsSS\n/98pK3qWQPAW/SPXceXXMtbwU7ov/Gcslnwge7HaTuhkAy7/85gd1YR76omGApjtPqylx5YIW2yF\n79qtioht7iGSIIFAIFgHBkczu9EPhefazTXHiNz6kHT1GeaqIys+f/D+cObx3R9JmQQt6SfQkGZc\nABrBwO2USdBIJL1hKkDoMe2pkGUFZ2ntkvMN57ekOWIapcSSs+p7i8nl+rAZrN7jDLReIN18tZYe\ne2wfss6Ay3YA13wVOKkDSfcLgNReQVInxQ4zgeC0eEIs2JHzscpVdLIBa8n+x6rA5eVt/jZSgWCj\nEOpwOwxxFyJ7iNhmj60Q2yJbZp8Tp3Wu3ejxYzv3DVJJsNnOvYqxdM+Kzz8ejD6mffGd9mkWxzYy\nnDlZGR/pSfm8w5LZMNX+mPaVYK5zLQidzmJAceejs0wryZlri3JCfW858zZ6v55MSWf04c11HdNq\nsLj8eI+8Sqr56j3yGhbXaqXJJ5Gk6b9FOuEDnW663ZpXTvTBDUDDYrGkeGVuxGoroiYS9Hc/4Man\nHxDqbuDGpx/Q3/0ANZHY7KFtK7bC79hOQ6wECQQCwTpQ5anl5r0rpLtbXuWZu1CU9AoFh57DUFxF\n9MEN4kOdKM5yzFVHMJbuWdVKRb7LzHB7KEP78u7wplJlW9CPozTl8z7XYZo7f0669+8rWrnQQzpM\nlXYcX/ETvhJA268yMnGX8Ugf+ZUluP1HIX+E0QtbY8UgPpRZvjg+tDL56Gywku1UK0KzoWlWJCmM\nIucxFV88fyXiCTMg4XYcJ1b/bsbuciFWWw01kaCt6Qq3rvyMmc9Lf/cDWhuvcPj0s/j3n97R8uKC\n7Y1YCdphCJ367CFimz22Qmw9Th9n9z9Lqrvl5w48h8e50IdF0ivoS/cwse8cgX1n+ZVBz2cjAbqG\nO0moK78D66opzNheVONI+fzi2Lp8h1j6HmZHjcuXup7Ebd/FyV2/leJYiZO7v47bvivj+FaCpMjk\nnykldn6cprb/RtfDjwmF7tE7eJXb9f+F7odX0aVdmdu4FYPlzFvFmbmeZjX1YdlgZjtV2dFvsfuZ\nP6Hs6LewluxffQIEQAlJ9RUA9LIJs8G5sDl5nMBAL3UVv4uzYM9srCKR1DVfuRIrmBYYGeppoeXK\nD7n+wZ/TcuWHDPW0oKob5wG2HAb7AwsSoLnYaty68jMG+zOb6AqWz1b4HdtpiPReIBAI1gG9rOfQ\nrtMUO0p52NvKULgfp9VNlcePx1mxwCcI5iS1LzfNXYAA3Lx3hbP7n+XQrtNLjsmErczKrqcrU4oj\n7HqmEnuZdVn92N01+E+8kkIcQcJ/8mvY3TUpj5N1Cvt853FaKwgMNhCKdGO3ePEVHVqVT9AMWlxl\nsj1EtDlIvHcMxVOAuc7FhHmA+43vorcbFx9B29W/4cCRF6GxD53Zis5sJRkNk4yGgdxaMchGfdhW\nQlOfJ6lrR6f7CKNiQ9YZiasTqGo5kYlvsaesAucjn6C5WKUid2I1o7A4/zM03NtCoPkS/hOvUF73\n9LINhLNNd3tmQZfujjbc3tSfeYFgqyNpmpZu9m8qFy9e5OjRo5s9DIFAIMgKnQMP+NtP3ibdxe9X\nz31rVk1uuSQTSUa7wgTvjzAenCDflUdRjQN7mRWdfvkL/6oaJ9R/f4kqm91ds6EXb1pcJXw5wMj7\nbQvCpCswMPbFLroDn6RctFLHhiirOY23wEW8/wGJUD96uxu9o5T4UDfmXSewnfjNDXsfmUilDjfN\ndH1YwaFnc0rIYTFJNUYk2Ea4+zrR0QBmmw+r9/gKt8lFkKRW0N0BpkDzoyX3AQtlzrdKrIZ6Wqi/\n8F3SfbaPvfDtlOIim8Gl975Hf/eDtO0l3hqefvH1jRuQQLAKbty4wfnz51d8nFgJEggEgk1gJZLa\ny0Wn1+GotONYhgpcJtKpsm00k+2hJQkQgJynMNr1kOSUis601N9EMuYzEQ0RuV9PvP8hAHpnBXm6\nPUiTzzDxawW1uwVznQtTpR1J2TyPlGzUh20USTVGsO1Dum9+n5k/0lhfEwOtF/AeeRWX//llJkIW\nNO0YqJlV5rZKrFarsLgZ2AvdGZMgmzOz4ItAsJURSdAOQ+jUZw8R2+yxHWO7EkntbJLt2K5Fqjra\nHEx5LamOx8mvLCE0ci9lEgQaZtlIMjJdaK93VmByfoPhdzqQdCGUQi9T7eOEP+nA8RU/1rO+rCRC\ny42tpFcwlddhKq9b9zFkk0iwbUECNIdG983vY3ZUP1aSeaVIeoXrHSOcffKb69rverJahcV0pNsS\nuh4JvLeyltbGOUGXSCQyT31PwluxWuU/wWK24+/YVkckQQKBYFOJkEBCIp+d5VheZHPTGUx/B3a+\npPZ6oCYSDPYH6G5vITTcj73QjbeyFqNxLYXtmVmrEWi8dyzl88lIDEfeLrrin6Q+71QUh91D0mBC\np9nIq/wqI3/bhaRTkCSJZGwC2WAGDUbeb8NQZsW825myL0F6wt3XybTiEe6pX/ckKNfR1Bh5VgcD\nDwbR1BiSbECn5KOTTSBN791Mp7CYsr8UW0Kjd4fXLYEvcvs4fPrZBeII00gc+cJzFLkr0h0qEGx5\nRBK0wxB3IbKHiO3K6NBNckMJ06CfvtA9mrByJG6hPGle8trtGNuVSGqvlcfJ4KqJxGNlcJOJBOG+\nLobb24gODWB2FlNY6cdaUoYuzbGZjEDHrr+PsXQPRs/utOdUPAVE76Y2gZWaZPZ84RUe3F9s4imx\n69CX0bU3gsGM3uZGHbQg6ebklxf4BGkQvRPMShK0HeftfKKjmeW9o6HM7aslV+OqqTHCHe9jMU6S\njI0CGpo6QTIWQjYVIRtsIOnSKizC0s+ZMb8Q87gduciEGpycd7L1SeBlvR7//tMUukrp7mhldKgf\nm9ONt8JPkbtCyGOvI7k6b3cyYnYLBIIN5548wX82dzMlJWefu2gY5ldKiP95wktVcvu7ls9Iai9W\nh0snqb0WFsvgzjEtg1vo8mRUgEomEvQ2XqP9Vxdnnwt1tdPb8BmVZ87jOXAiZSKUyghUZysh6dvH\nUHiArst/ia28DpfvUErRBXOdi/AnHam3xA1OUlr+RRz+2iUCDrqOZiKjfdPnM1uJB2ILjl28+hTv\nSy25LMiM2eZjrK8pfbs9s/z3dmNqpIVQy9vozCXsPvYid+vfY2byqpODSLKJ2jPfTKuwmOpzpoZa\nUMfj+I4/hYG8JYnQeiTwsl6P21uN21u9pn4Egq2G8AnaYQid+uwhYrs8JlH5O+PAggRohqiU5H3j\nIFMsbNuOsZ2R1P7qudc5susMvuIajuw6w1fPfYuDNadWJI/9ODLJ4EYiY3R3tGU8PtzXteDCbD7t\nv7pIuK8rZdtiI1CdrYSIp4qGqz8i8PkvGOq4RaD5IvUXvktn80dLPFRmTFFTWA/heNGP2VeIs7SW\n2tNf59gLf0Dt6a/jLK3FXFbLzEHJaBilaOGWP51hYZKtlFjIBttx3s7H6j1OJk8pa2lmoYPVkmtx\n1eIq8fsDRFoukRwYJdFzn7zJ2xw89zV8+57GWXYQ376nOfTEb1G+76m0CoupPmdaXAVNI3D9F+j2\nLv1OWO8EPtdiu50Qsc09xEqQQCDYULp1U3TqptK235ej9OqmqEyxLW67oZf1lBdXU16c3TuwoeHM\nIgujQ5nbh9szJ0kj7Xexl1UueV5x+pjqbJ59nPTt4+7VHzGTkEn6meREo+3aOxQU+RaoZkmKjPWs\nD0OZleidIPG+CEqJBfO+zEXhRo8f27lvMPrJD0hGw5hq1OlrdQ1kSyGSwTT3YgnM+1wZ358gNRaX\nH++RV1OII0h4j7yGxbX9i+q1uMrUx23Erj4gtvce2mQCJhPEI63oQp04CospKrGhxlrRhWPI8otp\n+0r1OZMUGaamE6Gx8R7yLEUkI3Mrm9lK4AWCnYBIgnYYYk9q9hCxXR5TUjL9zWNAkyC2aCVIxHZt\nZJLBtVgsj5XBjQ4NZGyfGE7dPt8IVGe2MhQeYP7FsmScn+imlg6WFBnzbueKtvwsllJWJ3opfOUo\n4Ys9SIoJkNBZDMgWhYIvlmNao6R4Orb7vNXJBlz+5zE7qgn31BMNBTDbfVhLj63QJ2hl5FJcEw8H\nmXz3FlK+EcVUxiQ3pxs0SIYmQBkiGZ826VUKMm9xTfU50+UpqBNxSGpEx4YoyPfMJUFZSOBzKbbb\nDRHb3EMkQQKBYEOxaXpkTUKVUm/PUjQJqya+mtaTxTK4C3m8DK7ZWUyoqz1te15hccrn56/I6MxW\nxseCSDod6GR0Zis6xbTg9SuVDs7EYtlpLa6SV1dDtGOQcVsvQfkO41IvNlsVnokTFBbsQdZlTylv\nK7ESA1SdbMBasn/HqcDNEG/sBg20yBRG9jLG+8x+zjTQonEkkwJI5BWfyNjX7OdM00jGVLRogmRc\nRWeUQSdhdrhQex5tGX20JTRbCbxAsBMQNUE7DLEnNXuI2C4PT9LIqbg1bfuZuB23tvBCS8R2bczI\n4KYqrqnZ94XHyuAWVmZOkhyVqRXeZlZkXK/87+TtewqrZ8/0SoykAzVOMj4F2lxithLp4JUiKTKG\nmgKG9rZQn3iLwNRFhibv8KD/J3x651/zoPcCajL2+I5WwFactzMGqPcuvclA6wePzE8/4N6lNwm2\nfUhSXd8YrYZciqvaM0918LqGveabLPicxVVAwlH7exgdezP2VVjpB01DjcRIBCdQIzG0KZXkRIJk\nJI6jrAZzrRPrkxW4/8lxrF9cf3+rXIrtdkPENvcQt1sFAsGGokPifKyQYV2CFv34grb9iXyeitmR\nMu2XE6yYTDK4gZ6hx8rgWkvKqDxzPqU4QuWZL2EtKUt7rKRXMHr8xAYeYtUpJKeigIYan4KJMLKl\nEDnP+ljp4PVgeKyV5sBfkkolrznwl9gs1RTbDmR1DLnOZhigbmXkUjtq23RNnTYQRb7ipuj4/8aU\n9jnxqW4Mrl1Yap/C6NiLBoz1NaVdYbOWlOE7+hT33n9/4Ul0EhXHnyL28ShFX9svPK0EgnVC0jQt\n9Z6UTebixYscPXp0s4chEAiyxDgqAXmSLnkSCShTTfhUI3ni3kxOMuNfMtJ+l4nhAfIKi3FU7s7o\nEzTDZGczwXe+g87mJuKp4u6NeVuGAL3DQ+3Zb2ZUzloPbrd/jwe976dtr/F8hQOVv5e1828Fuurf\nZqD1g7TtxbW/QdnRb23giHKbeFs/429dWpIzShYjUoER89dPoOwqnl1hSy0i8Sou//PoZAPDP7tL\nNBpkLNJNdGwIc4GTgvxSkp8nUIOTWJ+soPClhXVzAsFO58aNG5w/f37Fx4mrDYFAsCnkI7NXzWev\nmr/ZQxEsA51ej72sMqUK3OOY8QtKjvZhAQ6d+i1GwgOMRwbJtxThqjxCcZYTIICx8czmneGJztn/\nr6QuZjuxWQaoWxV9VRGmlw4z+e6tBbmNNj6F8R/tQ18xvWqz3BW2+P0Q8btj5FmKKMj3oPbEiUfm\nZLCFp5VAsH6ImqAdhtiTmj1EbLOHiG322IjYzvcLSo72QeMlnAMBKjUZ50AA+eGtrCdAAAX5mc07\nrXnl02Ncp7qYrThvzbbMMcoFA9RciqukyBif8JP/T5/B8NQe5D0lGJ7aQ/7vP4Px3O7Zmp1w93XS\neXWBRrinHgDFUwBAMhIj3j++QA4bsi+JnUux3W6I2OYea1oJikQi/If/8B8IBoMUFxfz7W9/m7y8\nhSZ0Q0NDvPXWW4yOjiJJEufPn+fLX/7ymgYtEAgEgtRoiThTvW1E79cTHwqgOH2Ya45h9PiR9NlP\nNFKx2C8Ipk1Mk9FH0sHO8g0Zh8dxnAe9PyGdSp7bcRzY2XUxVu9xBlovkC5G2TJA3cpIiozid6P4\n56Tmk4kEo32dDLe3kYxNMTV+BzU+haw3gLS05nFmhc1c5yL8SUe68AtPK4FgHZHfeOONN1Z78N/8\nzd9QXl7OH/zBHzA8PMzt27c5eHBhYWssFqO2tpbf/u3f5sknn+Q//af/xMGDB7Fa06tDATx8+BCP\nx7PaoQnS4PNt/l287YqIbfYQsV0eWiLOWMNPGf7wPxLru4saDhLru8fE558gGfMwFFch6RaqSW1E\nbCVZz8Tnn6RrxXbm6+htqWW21xOTwYEi5xEcvb1kDHUVv4vXeRqdJBNs/YDxobtp+9EbLVg9hx97\nvq04bxWzHdmQx1hf46KWaQNUh+/Ukjm00WxUXNVEgmBvO22Nv+bzhsuMDPaik2XMeQXodOk30iQT\nCXobr3H35+8S6e8mNj6G0SoT7mlEkiRkvbIkEbKXncDqOYzeakRn0jN5d2hhp48ksfMPupHk7G3i\n2YpzdqsgYps9ent7qa5euen4mlaCrl+/zkwO9dRTT/HGG2/w6quvLniN3W7Hbp/WsTeZTHi9XoaH\nh/F6vWs5tUAgEAgWMdXbxugnPyDVCsboJz/A4KrE5Nv4FYz5fkGLi8Jt517FWLpnQ8Yh6wxUe17A\nbqmmb+Q64YlOrHnluB3Hcc7zCdrJdTGbZYCaa6iJBG1NV7h15WfMzNn+7ge0Nl7h8Oln8e8/nVZV\nMdzXtUBJMR6dwGipASSmxsfQKQqyYpx3xNwKm6TIWM/6MJRZid4JEu+LoJRYMO9zYaq0r7sktkCw\nk1lTEjQ6Ojqb4NjtdkZHRzO+fmBggI6ODnbvTu0pIcg+ly9fFq7FWULENnuI2C6PGQGC1GhEH95c\nkgStJrZqMsbwWCu9I9cZGw9QkO/D4zie1nB0xi/IUFxF9MEN4kOdKM5yzFVHMJbuQdIrqIkEg/0B\nuttbCA33Yy90462spcjte6yE90qQdQZctgO4Mkhhm20+xvqa0rcvsy5mq87bXDdA3Yi4DvYHFiRA\nc2jcuvIzCl0e3N6alMcOt7cteW4kMIhn/2/T2/RDElNT85Kg6RU2i2vOi0tSZMy7nZsihb1V5+xW\nQMQ293jsL8ubb765ILnRNA1Jkvid3/mdJa+VUuxznWFycpI///M/5/XXu72bfwAAIABJREFUX8dk\nMqV9nUAgEAhWx3wBgtTtnRnbl4OajPGg98ICv51g+DYPen9Cne+bVHteSJsImcrrMJXXLe1zDXfd\ns4Goi9k6aGqMqZEWJgauEh/rQCmoIK/4FEZHLdIaVq2621vIdEOhu6MtbRIUHRpY8tzU6Cij2PAe\n+V9Q4z1I0sSOXGETCHKJx/6q/Mmf/EnaNrvdTigUmv3XZrOlfJ2qqvzZn/0ZTzzxBCdOnFj24OZn\nzTOqGuKxeJzLj2fIlfGs1+Prn13HItnQhWXGg1GSRpX8MjP+IzXo9Lqsn3/muVyJRzYeK4rCqVOn\n1nS8/5EAQeSRpK7FMq0kNfv4kQDB/OPPnj27pL+rV68Sj8dTnm94rJWrd/4fQFvS/4zhaFvj6IrG\nf6fxOlcu/i0WS/7C8Vos3LryMxKantHxxIb9Pdo6x7HVvMjY/fcAjUhk7NF4rHiPvEZb5ziT97b3\nfNzMx9evXcVhGscYCxAdDRDXOTA666jad3Y2Wbh8+TJf/MJJwh3v03X9LWbm4+RQA71Nf43V/7uU\nHfgGkmxY8flv3LhBd+cDZkj1eerpfMCMk+Hi41WDmfHxcfLzF85ngL7GUey1h1GLfOx+VEO92fF+\n3PeBeCwe5/rjxaJsy2VNZql/9Vd/hcVi4eWXX+bv/u7vGB8fX1ITBPDWW29RUFDAt761fIM1YZYq\nEOQGyUSSzvpe7n3UvqRt19OVlB/zoNMLtf3Vsp5+NDOmpOlWMFxf/aOUNUEr2YqWDcPRG59+QGvj\nr9O27zl4hqNnXlhRn2tl9u+yg+tiNoPlmooCTA7epv+zPyat2t/JNzEVHVrVOFY7J7W4yvC9ezT/\n7V+hxRNIioxk1qMzyLNiCHUvvbYqvy2BQJCa1ZqlrunK5eWXX6axsZF/9s/+GU1NTbz88ssAjIyM\n8O///b8HoKWlhU8++YSmpib++T//5/yLf/EvuHXr1lpOK1gDMxm0YP3ZrrEd7QqnTIAA7n3UTqgr\nnPUxbNfYrpcfzQwzAgSweGtyegGCa9c+o63pCpfee5vWxl8/2ob2ay699zZtTVdQE4kFr1+J4ehy\nCQ33Z2wfHcrcng1m6mLKjn6L3c/8CWVHv4W1ZP+KEqDtOm+zyePkySPBttm4TgxcTfG6uddPDFxb\n9Ti8lbUs/RzNIOGt8C95VourhC8HmPi7Prx7z5CMJVEjMRLBCdRIDDSNyjNfwlpStupxZRsxZ7OH\niG3uoX/8S9JjsVhSbpdzOBz8y3/5LwGora3lhz/84VpOIxAINpHg/eGM7YP3RyistK/b+VIV3Tvc\nPtRkLGWtyVZmvf1oliNAsBiTPrmiAvCCfB/B8GKJ6TlmDEdXgr3QTX/3g7TtNqc7bZtge7EcU1FF\nqQUgPtaRsa/HtWeiyO3j8OlnU3w2JI584TmK3BVLjplsDzHyfhtoYCAP/6mXGIt0Ex0bwlzgxHX0\nII7dNeg2sL5NIBCkR3wSdxjzaywE68t2je14MPqY9ol1O1e6onuQMORF0hbdb1WWc8G3UoWuTAIE\nqYhPDGccw+IC8OUajq4Eb2UtrY1X0vaZ6q77VmC7fidkk+XIk596ZnprvVJQweRQQ9rXKgVLE5Xl\nIuv1+PefptBVSndHK6ND/dicbrwVforcFSmFOqLNwdkprAYnUX85SZ6liIJ8D2pPHMmiodub25dd\nYs5mDxHb3ENs5BcIBBnJd5kf0766gsRUDI+1LkiA5tBoDvwlQ2Ot63auXCAX/GhWuhWtsGAPdb5v\nkmrLXV3F7+IsWLnnz8xd91R9prvrLtiemG2Z5cfny5PnFZ8i05a1vOLlCzGlQtbrcXurOXrmBZ5+\n8XWOnnkBt7cmrVJhvHdsyXPJSIx4//j0v32RFEcJBILNQiRBOwyxJzV7bNfYumoKM7YX1TjW7Vy9\nI6lXRqbVlTT6R66v27lygZVc8GULnbIwidU0jXgiyvjkMKPjfch5Mn0jbajJODBnOPrFff+KGs9X\ncNkOUeP5Cmf2/SuqS55Pu1KnJuP0DH/Olda/5kL9n3Kl9a/pGf4cNRmfvev+zIuvs+fgGUq8New5\neIZnXvwWu+tObag89nqyXb8TsonVe5xMiY219NhsXI2OWuy1r6d4vYSj9vcwOvZmb6ApUDwFmdtL\nLBs0ktUj5mz2ELHNPbbmL4tAINgwbGVWdj1dmVod7plK7GXWdTtXNoruM5FQE/QOBXjY28LgaD9F\nNjdVnlo8Th96Oftfj7ngR+N0V9Db3gxoaJrGZCzM+NTI7Bh0Nomf1P8fnNz1W+zznUfWKcsyHJ2P\nmoxzJ3CRz+79iJn32jNyh+bOn8/1q1dwe6txe6uz8j4FWwOLy4/3yKtp1OEemYre+2z6GdmAteIr\nGK27mBj4bJ5P0AmMjr1r8glaDeaDxYQ/6Zgdts5iQM5XUMfjJMdjmPe5NnQ8AoEgM2uSyM4mQiJb\nIMgdkokko11hgvdHGA9OkO/Ko6jGgb3Muq7y2NmQX05HQk3QcO8Kl5uWFj6f3f8sh3adznoilFkO\n+DVc/ueyLsc836g0nphgdGJm+5vEgVNPMyC3MjY5AEi8cPQPKS1c+d31nuHPuXDjT0mX7D2uXzUZ\npz90j0DwFiORbhwWLz7XYdz2Xci6pWIPgq3NVpEnXyxvb7KWk6fsZeqKhsFmId4/TnxoAsWZR/6x\nUizHPOjMYr5uJVQ1Tqj/PsFAA5HhbiyFXly+Q9jdNciy+FvmCquVyBYrQQKB4LHo9DoclXYc66gC\nl4psFN2no3cokCIBAtC43PQzih0eyotTO8KvFzrZgMv/PGZHdVYu+JKJOJH+NkId9USHA5gLfdgr\njmFx+9E9UoqbXwDe2vIpwYF28u12LC4HPZNNjxIgAI3AYMOqkqBA8BaZxBcy9busVSSRCG0rZuTJ\nVyoKslZWcsGb6gbGWF8TJC/gPvA1xn9iIx6YQFJ0qENRpjpG0eIq1rM+JEXe0PclWB2qGqez+SPa\nrr3DzN94uLeFQPMl/CdeobzuaZEIbXFETdAOQ+xJzR4itmsnXdF9JDK+6qL7dDzsbSHThfnD3rZ1\nO1cm1sOPJhXJRJyB5p/S9v53GGi8wFh3MwONF6YfN/+UZGK6xufy5cuzBeDxojGonGIo7x6toUvz\nEqBpQpHuVY1l5DHHZeq3P3RvQQI0h8Zn935Ef+jeqsa0EezU7wQ1kaC/+wE3Pv2AS+99jxuffkB/\n94MlnlOrJRtxnbngrb/wXQLNFx9d7F6k/sJ36Wz+CFWNL3h9Onn7ZDxB5+X/iuELoHflIdtNSMbp\n+80j77cx2R5a97GvJzt1zqYi1H9/QQI0h0bbtXcI9d9fUX8itrmHWAkSCAQ5w0zRvd1STd/IdcIT\nnVjzytHFfVSXnFtXeezB0cyqaEPhjTfoXE8i/W10XfkBqX7Au678gLyiSqzehXfa800O2oPpxSfs\nFu+qxuKweOkZubOqfteyipSOZCJBuK+L4fY2okMDmJ3FFFb6sZaUCQ+XNTJ/e+XM323agPcKh08/\ni3//6ZwUunjcBW9BkQ9nae3ss+nk7ZPRBGga4/EWDJaDJCOx+V0RvRPEvNuZlfcgWF+CgQYyffcE\nA7cXzAnB1iP3vokEWUXo1GcPEdv1YaVF96ulyOamM5jeoNNp3doGnaGOejL9gIc6bmL17l8wb32u\nwzR3/jzNcRK+okOrGsta+l3LKlIqkokEvY3XaP/Vxbk+utrpbfiMyjPn8Rw4sW6J0E78ThjsD6zI\nfHc1ZCOuK73gTSdvr8VVAGLjPZjzjy1MggB1YpJwX9NsHZHZ5sPqPZ4z9U47cc6mIzKc+btlfKRn\nRf2J2OYeYjucQCDYkVR5askkxVvlyX2DzkQiQVdXFx9//DE//vGP+fjjj+nq6iKRSBAdfowH0chS\npT23fRcnd/0WqSSHT+7+Om77rlWNcy39Oh6z+rTS1alwX9eCBGg+7b+6SLiva0X9CRbS3Z55m2l3\nx8ZsM10pK73gTSdvP1PvY8gvRR1fuIVOdhmJlbdy79KbDLR+wFhfEwOtH3Dv0psE2z4kqcZSdSnY\nJCyFmb9b8h2lGzQSQbYQSdAOQ+xJzR4ittkjG7H1OH2c3Z/aoPPcgefwOHPboDORSHD79m1+/OMf\n09DQQFdXFw0NDfz4xz/m9u3b5JXUZTze7CgHFsZW1ins853nhaN/SJ3vWbyFddT5nuWFo3/IvvJn\nVi1AsJZ+fa7DZEpWV7o6Ndye+SJ8pP3uivrLxE78Tlip+e5qyEZcV3rBm87PSGfWgySRr9QuWQXS\nH4zRe/dvSLVK1n3z+0SCm58g7sQ5mw6X7xCZvntcvoMr6k/ENvcQ2+EEAsGORC/rObTrNMWOUh72\ntjIU7sdpdVPl8eNxVmyIT9Ba6Ovr49NPP03Z9umnn/Ibzz7N9A946i1o9oojKY+VdQqlhXtXpQKX\nidX2O7OKtFQcYXWrU9GhgYztE8OZ2wWZsRe66e9Ov83U5szNbaYu3yECzZdI93lZfMGbzs9IZ9BT\n/sT/SOIjIzA193yBgam8NnSGdPeeNcI99RuuiCdIj91dg//EKylqxST8J7+G3Z1d9VBB9sntX3nB\nuiP2pGYPEdvska3Y6mU95cXVlBdvPYPOBw/SX2gCdPUPU3v2dQKX32bxD3jZ6VexuKeV9nJ93s6s\nIjmtFQQGGwhFurFbvPiKDq3KJ8jsLCbU1Z62Pa+weI0jniPXY5sNvJW1tDZeIV0y4a1Y+zbTbMR1\npRe8meTt8x27iTkjRO8EifdFUEos5B0uofPeJyClW1mAaCjzFtaNYCfO2XTIskJ53dMUFPkIBm4z\nPtJDvqMUl+/gqnyCRGxzD5EECQQCwRZkaGgoY/vw8DBFZ34Dk91LqOMG0ZFOzI5y7BVHsLj3zPoE\nbQXWc3WqsNJPb8NnadsdlbvXfI6dTJHbx+HTz6YQR5A48oXnKHLn5jbT1VzwZvIzMu82LlGBMw/6\nGOtvSjsGsz11nZFg85BlBWdprVCB26aIJGiHcfnyZXE3IkuI2GYPEdulOJ1OurrSF/E7nU50egWr\ntw6rN3190FaPrRZXSTwcJN7YjdoTQi61oxzwoq8qSmlKaS0po/LM+ZTiCJVnvoS1pGzdxrbVY7sa\n5pvvdne0MjrUj83pxlvhp8hdsS7y2NmKa7YveK3e4wy0XiDdKpm19FhWzrsSduKc3ShEbHMPkQQJ\nBALBFqS6upqGhoa07VVVVRs4ms1Bi6tMfdzG5Lu3Zq8r1bZ+Yr9sxfTSYYxP+JckQjq9Hs+BE+S7\nPIy032VieIC8wmIclbuFT9A6MWO+6/ZuvW2m2SRdHRFIeI+8hsWV+4qUAsF2QtI0LZ2W5aZy8eJF\njh49utnDEAgEgpxkRh0ulTjC2bNnOXDgAPptfkEfb+tn/K1L6W6sk//7z6Dsyc1CfMHOJKnGiATb\nltQR5YpPkECwFblx4wbnz59f8XHb+xdSIBAItil6vZ6DBw9SXFzMw4cPGRoawul0UlVVRUlJyYYm\nQMlEgnBfF8PtbUSHBjA7iyms9Gd9ZSXe2J3JkoZ4U7dIggQ5RaY6IoFAsLEIn6AdhtCpzx4ittlD\nxDY1er2esrIyzp07x8svv8y5c+coKytbUQK01tgmEwl6G6/R/O5f0dvwGaGudnobPpt+3HiNZCKx\npv4zofaEMrf3jmbt3MthO81bTY0xOXib4Tv/hf6rf8zwnf/C5OBttE0w+NxOcc01RGyzh4ht7iFW\nggQCgUCwasJ9XSlFBgB6m+uRCwyEBu8RGe7GUujF5Tu0KnnZVMildtS29Oabsse25nMIphOgcMf7\nhFreZmbpbXKogbH297DXvo614itIYiuXQCDYYoiaIIFAIBCsmgeXf5ZSctpos2Nwmej4/CLGgoJ5\nLRL+E69QXvf0mhMhURO0MUwO3qb/sz8mXaDdJ9/EVHRoo4clEAgEwOprgsR2OIFAIBCsmujQQMrn\nLV439278PUk1vqhFo+3aO4T676/53PqqIkwvHYbF/pMSmF4+gr66aM3nEMDEwFUyFV9NDFzbyOEI\nBALBuiCSoB2G2JOaPURss4eIbfZYa2zNzuIlzynmPCLhLkBDJ6fada0RDNxe03kBJEXG+ISf/H/6\nDIan9iDvKcHw1B7yf/8ZjOd2p/QJ2ki2y7yNj3WsqX292S5xzUVEbLOHiG3uIWqCBAKBQLBqCiv9\nS7bD6c15RMLt0/83muYaNA01MYkam2C48yZ9BQp5zt1rkgeWFBnF70bxi21v2UIpqGByKL0nlVJQ\nsYGjEQgEgvVB1AQJBAKBYNXMqMPNF0dQzHnonBL9geso5vzp7WqaRnwyTHxiCABf3dPoJx+SmBrD\ne+RVXP7nhU9KjiJqggQCQS4jfIIEAoFAsOHo9Ho8B06Q7/Iw0n6XieEB8gqLMZcUMhxsAWn6wllN\nTM4mQCBRYHcx1jG9utB98/uYHdXCOyVHMTpqsde+vkAdbhoJR+3vYXTs3aSRZRc1Gac/dI9A8BYj\nkW4cFi8+12Hc9l3IurWrGwoEgs1F1ATtMMSe1OwhYps9RGyzx3rEVqfXYy+rpOrsP6LuN1+l6uw/\nwlV1EP/JV5hRLVBjE49eLbHr+ItMDTXN60Ej3FO/5nHkGttl3kqyAWvFV3Cf/LcUVL6EyXmYgsqX\ncJ98k4KK39hweeyNiKuajHMncJELN/6U5s5/oGfkDs2d/8CFG3/KncBF1OSc4EdSjRHua6Kr/m3u\nXvo3dNW/TbivieQmeCitle0yZ3MREdvcQ6wECQQCgWDdkWWF8rqnKSjyEQzcZrjzJqY8CwV2F1ND\nTcQifQteHw0FNmmkguUgyQZMRQcxFR3c7KFsCP2he3x270cs3QKo8dm9H+G0VlBauJekGiPY9iHd\nN78/+9qxviYGWi+IbZ4CQY4jaoIEAoFAkHX6mn/MQMtPSEyFU7YX1/4GZUe/tcGjEghSc6X1r2nu\n/Ie07XW+Zznt/x3CfU3cu/Qm6eqldj3zJ2Kbp0CQZYRPkEAgEAhyljznbhJTY2laJaylxzZ0PAJB\nJkYi3RnbQ4/aw93XyeShtB23eQoE2wWRBO0wxJ7U7CFimz1EbLPHRsXW4vLjPfIqqZxNvUdew+Ly\nb8g4NhIxb7PDRsTVYfFmbLc/ao+OZt7GmWqbp6rGGeppoeXKD7n+wZ/TcuWHDPW0oC4xFt54xJzN\nHiK2uYeoCRIIBAJB1tHJBlz+5zE7qgn31BMNBTDbfVhLj63JJ0ggyAY+12GaO39Oum1uvkeS4Gab\nj7G+phSvmcZs9y14rKpxOps/ou3aO7N9D/e2EGi+hP/EK5TXPY0sC+U5gWAjEDVBAoFAIBAIBPOY\nUYdbKo4gcXL319lX/gyyTllxTdBQTwv1F76b9vXHXvg2ztLadX0vAsF2R/gECQQCQRbQEnGmetuI\n3q8nPhRAcfow1xzD6PEj6cUdW4FgOyLrFPb5zuO0VhAYbCAU6cZu8eIrOrTAJ2hmm+d8dbhpUm/z\nDAYayFRDFAzcFkmQQLBBiCRoh3H58mXOnj272cPYlojYZo/Niq2WiDPW8FNGP/kBMxcuU53NRG59\niO3cNyg49NyWT4TEvM0eIrarJ5lIEO7rYri9jejQAGZnMYWVfqwlZfzqypUNiausUygt3EtpYXoz\n2JVu84wMZxZcGB/pWZexrxYxZ7OHiG3uIZIggUAgSMNUb9uCBGgOjdFPfoDBVYnJJ+RvBYL1JJlI\n0Nt4jfZfXZx9LtTVTm/DZ1SeOY/JmFv1YzrZgLVk/7KksC2FXoZ7W9K25ztK13NoAoEgA0Idboch\n7kJkDxHb7LFZsY3eryfT1pXow5sbOZysIOZt9hCxXR3hvq4FCdB82n91kV2e4g0e0frh8h1iqULi\nDBIu3+aa0Yo5mz1EbHMPsRIkEAgEpK79kRQDsq0EdbQv5THxoc4NHqVAsP0Zbm/L2D7Sfhd7WeXG\nDGadsbtr8J94ZYE63DQS/pNfw+6u2ayhCQQ7DrEStMMQOvXZQ8Q2e2Q7tjO1P8F3vkPk1oVHdT8X\nGLn0PZQiL7KtJOVxirN8WX1PdjYz8ou/YOCdf8vIL/6Cyc5mtMTme4KAmLf/f3t3Hx11fef9//XN\n5J5JMknIPQyBQERuRASFWiwovbRu9So/r6ue3aJXdbd7atWzaqVH6ymrrbrqdarVLaV1f2er/qq7\n1/lZKy1uZduqbI0WJdw1gOFGCIEQkpD7yX0m3+sPmkjIJBkm+cxNvs/HOR6c+X5n5sMrX2bmnc+d\nSWQbmq7G+jGPN5w8HqaWTD6XK0EzF16rZTc+IO/CLyq7cIG8C7+oZTc+oJkL1kR8eWyuWXPINvrQ\nEwTA8Uab+xOXlKK2P/1SntVfV+eI3iBLKXOWq/vkgVFXjnPCwgrAZEvJzlXLqapRjyd7ssPXmPNM\n1kqRLleCsgvnswocEGHsEwTA8Zq3/3/y7X175AHblr+rVSklV6q/pU4DXW1/OWDJc93fyu7tUmvZ\nv+vCYS2DBU5P7WE1vPGkRtsTJOeWR1hYAbhAy6kqHfj1q6MeX/iV28I+HC7QLzTOsfiFBhBh7BME\nACHqa6wOfMCy5ErJkCS5r/iyek7uV0L2TKXMXirJVsOvntKoK8fllQS1sAJFEJwi2J6U9PwZKr56\nbcDFEYqv/qLS82eEs9mSWCkSmIqYE+QwjEk1h2zNMZ1tQrZ39IOWpcT8ecq48r8r95ZHlLn6diV7\nF6nr2B6NVeD01B4Zvbj6i2hYWIHr1pyPPvoo0k2IGqPNu2t440m17/vPYXPk4uLjVbD4Si38ym0q\nXLJCnpmzVbhkhRZ+5TYVLF6uD3fsCHv7nbBSpMT7gUlkG33oCQLgeCkly+Tbu02jDVs71/Mz3HgF\nTm/9MSVke9Vz8sCo5wSzsAJiz2CPR0FDuerf+H3Ic0emkovtSYmLj5dnRnHUrAIXC7/QAHBx6Aly\nGNapN4dszTGdbVJBqTKu+ZpG7t9hKeOa9UoqvGTEY8bsPZIU785WSsmyAM/52XMHKq7Cjet2cp3f\n42EdLRuzx8NJJrMnJRLX7Hj/3qfKLzR4PzCHbKMPPUEAHM+KT1DakhuUmDtbXcd2q6/x5NDcn6TC\nSwL+9j6Y3qPB4irwZOrAxdWgyVqJCuHF3JHAYr0nJZTeYgDRzfXYY489FulGBHL8+HEVFBREuhlT\nTllZmbzesX+jhdCQrTnhyNaKcyk+I1cpxUs07dJrlFK8RPEZubLiXAHPd03LlJWUqp7q/Rc+kzKu\nWa/UeStkxScoMXe2kmYuVFyyW1ZislLmLFfG1bcOHQ9ksDehadtm9Z45In9bg3rPHFXnJ+/LSkpV\nYu5saWBAPTWVat+zTe27tqq3vkqWK/5cu0ZpcyBct5Orfc829Z45IknqGnApJbtIkmT390iS4pLT\nlFK8JGLti5Te+ir1njk66vGUOcuVPGNBUNd0JK7ZoP69X8S/u2jF+4E5ZGtObW2t5syZc9GPoycI\nAEIQbO+RFZ+g5JkLlTxzYdDPPW5vQm6Jeus/Zf+hKNTXWC3Lk6/ueQtU01ujtt4mZSbPUGF8vpKP\nHIz6Hg9Txu1JKb48qvfUCqW3GEB0Y58gAIgyo+5b9BcZq74WYH+iQew/FElNO97QsYFTKj/+a104\nBHL57K9ojmumslbcEqnmRczY++ysV2LeHDX88nFxTQO4WOwTBABTxFjzJ+JS0tV9cr/Yfyg6dRQV\nqfyPP1GgXrzy479W3heeVFYkGhZh4/WktIxa1Etc0wBMYHU4h2GdenPI1hynZTvWSlRxKenytzWO\n+fiLGXLltGxNq+k4Jpc7U5LkH/APO+ZyZ6qmoyoCrYoOg0NDM1ffPmzPLSs+4aIWTuCaNYdszSHb\n6ENPEABEmbHmTwx0tStl9uXqb64Z9fFTZbneaDPQ36+2M6fUVHVYXY31SsnOVVZxqdLzZygu/tzH\naXPHacWlpstKSJLd2S7L9suKT1RcUoqshGS1dJ6O8N8iOrGnFoBwoyfIYVin3hyyNcdp2Y61b1Ha\n8puVOv/zAY59ds7FLNfrtGxDNdDfr9qKnTrw61dVu+9jtZyqUu2+j8/drtipgf5+SVKmu0iyLFmJ\nyUr05Cg+M1+utCxZiSmSZcnjLorw3yQ6XcyeWlyz5pCtOWQbfegJAoAoM978CUkh7z+E0LSdOaWq\nD98Zfqdty+7t17HfvqWkRim1NUkzls3XAfsPkhV4gr93uvOWxw5GqHtq+Qf6VNdyVNUNe9Xsq1Gm\nu0jenMuV55krVxwrtgEYHUWQw5SVlfHbCEPI1hwnZjve0tqTtVyvE7MNRVPV4eF32LZsX48GWjol\nSc1nqpRwIEnTPnFp+c1fVnn9f8jX0S632/2XB1i6at6tyvPMDW/DY8TFLEE9eM36B/p0sPodfXz0\ndQ0WTqebD+rAyT/oqrlf1QLvWgqhi8T7gTlkG30oggAgBoWy/xBC19VYP+y23ds/VABJUld7kyx3\nsawzbfJuTVX2bffqk7Pl8se1yeMuknf6EnonxnGx13Rdy9FhBdBnbH189HVlp89SYdalk95OAFMD\nRZDD8FsIc8jWHLI1h2yDk5Kdq5ZTVUO37a6+4cfTsmRX90iSrLpOZe2y9d/+x9+fO7fPr+6qFrX+\n8VP11bYroSBNKQtzlOh1q6P5iNpqytXVWq2UDK/Si5bLnVOqOFdi2P5ukuQf6FVT+yHVNpervaNa\nadO8Kshcrqy0S+SKC29bxjN4zVY37NVYy2pXn91HEXSReD8wh2yjD0UQAADjyCouVe2+jz+7o/e8\n5a8tSxnT8mX7zgzd5a9tlXSuAGorq1bzW4eHvq93HWlSxydnFLemXnXHfjm0HkD7mf2qP/S2ipau\nV07pl8JWCPkHenWs9m0dqP6FBhvZ0PZnHav9Dy303q45BTdGXSEkSc2+0VdIlKSWcY4DcDZWh3MY\n1qk3h2zNIVtzyDY46fkzVHz1eTuSJ7rO/WlZmrV8jRIr2oed7yovqlbIAAAgAElEQVTI0EcffaTu\nqpZhBdCg+Mt6dfL9n2ugt/+CV7JVs+c1+RoumINkUFP7oWEF0PltOVD9CzW2H5rQ8w/4e9V2Zr9O\n7XpZR979gU7telltZ/ZrwN8b0vMNXrOZ46y0x0p8F4/3A3PINvrQEwQAwDji4uNVsPhKTcspUHPV\nEXXUnlZST6IypuWfK4AaOj472ZISFhVJLVXqOtAworaIcyeqo/fPkm1roKtfcUkXfhTbaju9S+n5\ni0Jq6+Dwu64DDcOG3yUXe2QluEacX9tcrrGGldU1lys3Y3FIbRnw96rh8DbV7Hlt6DUmq8fLm3O5\nDpz8wyhtZyU+AGOjCHIYxqSaQ7bmkK05ZBu8uPh4eWYUyzOjWHafXz1/+lTdv9x14YrOSl63VPFz\npmtFQp7qfrpzxPO4piWop+PcUC27zz/iuCR1tVSH1MbRht+1vX9CmTeVKn2Vd0Qh1N4x9mu1dZ4M\nqS2S5Gs4PKwAOq+lqtnzmlIy51x0sTd4zeZ55uqquV8NsDjC6CvxsaT22Hg/MIdsow9FEAAAF8lK\ncCnpcyVy5Weor6JG/tpWuQoylLCoSPFzpg8VGgkFaeo60jTssf6OPiVNK1K79gXsmZGkFI83pHaN\nNvxOttT81mElzkhXyrzsYYfSpnnV0PbnUZ8zPXVmSG2RpLaasXuZJtLj5YpL0ALvWmWnz1L12X1q\n8dWMuRIfS2oDOB9FkMOwTr05ZGsO2ZpDtqGzElxKKM1TQmnesPvt/j51n6xU/b7tSktbKL+vUXGJ\n02QlJkmyNODr1bTES3XWeltxKYE+hi2lFy4LqU2Bht991jCp62DDiCKoIHO5jtX+h0YbVpaXuTyk\ntkhSV+vYvUyh9Hidf8264hJUmHVpUKvABbuktt3fp57aw+r6dJf6GquVkO1VSskyJRWUXtQeXKaZ\naCfvB+aQbfShCAIAYJLY/X1q3/efan3/39Tha1d84adKW329WrdVyTUtS3Gp6ZIs9f85UTPX/O25\n1eGGsVS09Da5c0pDev2+2vaxj5/xjbgvK+0SLfTeHmBxBEsLZ/0vZaddElJbJCklw6v2M/tHPx5i\nj1cogllSuyB97tDPb/DcnpMH5Nu7TRnXfE1pS26IikLo/OssmtsJRDOKIIfhtxDmkK05ZGsO2U6u\nntrDQ19M3W63/G21UvrvlHXravXVuGT3uZXkna6UBef2CUqbvUBtp3epq6VaKR6v0guXTWifoEDD\n74Ydz3ePuM8Vl6g5BTfK456jM83laus8qfTUmcrLXK7sCe4TlF60XPWH3tZovUyh9HiFes0Gs6R2\nb8OJYYXFZ2y1vv9vSswpVrI3tOF7k+n862y4ibWT9wNzyDb6UAQBADBJuj7dpQu/mPrbatXZ9n8U\nl5Iu98ovK+PKz74MpecvGpoT4+/v19m6ah3d8Qe1NNXJk5WnouL5mp7nlSs+uI/rlIU5anv/xGg1\nh1IW5AR8nCsuUTkZi5UT4ipwo3HnlKpo6foAiyNMrMcrFJnuIp1uPjjqcY+7SF3Hdmus3qKu43ui\noggKdJ19JnraCUQz9glyGNapN4dszSFbc8h2cvU1fjbHxecbPvRsoKtNPScDDw3z9/fr8P4denfr\nyzpU8SfV1RzToYo/6d2tL+vw/h3y91+4n1BgycUeZd5UOrQB6xBLyry5VMnFnov6+0xUnCtROaVf\n0tzrNip3/peVlr9YufO/rLnXbVRO6Q0h9XiFes16cy7XyGAGnVtSu/fM2Psz9TWGvlLeZDr/Ogt8\nPLR28n5gDtlGH3qCAACYJAnZXvWcPDDG8cArrZ2tq9beHb9ToOFNe3f8Tlk5BcorKhn39a0El9JX\neZU4I11dBxvUd8anhHy3UhaMvk+QaXGuxGE9XpESzJLabSH+/MIt1OsMwGcoghyGManmkK05ZGsO\n2QY2ODStpqryooampZQsk2/vNg3OCRrOUsrspQEfV1NVqbGGN9WcOBxUESSdK4RS5mWPWAVuqgj1\nmg1mSe3zf34jjf7zCzdT7eT9wByyjT4UQQAAnGdwaNr5PTN1pz7VJ7ve02VLPqe8zlolpKQFXI44\nqaBUGdd8LcCkdUsZ16xXUmHgldZamurGbFNr49jHEZzxltQO9ecXbrHSTiCauR577LHHIt2IQI4f\nP66CgoJIN2PKKSsrk9cbviVJnYRszSFbc8h2pIbaKv3p3Tc09OXStuXvbJW/rV61VZUqKL5U/j9v\nU+cn78tKSlVi7mxZceeGmVlxLiXmzlbSzIXq6BtQsjtDKXOWK+PqW5U6b8WoyxY3n61VY/2pUdtU\nNPtSFcycN8l/09hk8po9/+cXl+yWlZgc1M8v3Ey1k/cDc8jWnNraWs2ZM+eiH0dPEAAA57lwaNpA\nX7f8vsFlp23Vt7ZqZkq6BrraAi5HbMUnKHnmQtWe9mnFihVBvWZR8Xwdqtih0YY3Fc0K3ypqTjf4\n80ueuTDSTRlTrLQTiFaWbdujDUKOqHfeeUdXXHFFpJsBAI5gYvf5WPXu1pdUV3Ns6La/vVH+ztZz\nvT1xLuXNKNFlVov6m87tO+Ne+lfKXH37hF4z0BC8cywt/dwNmrdwRdDLZAOAk+zevVtr16696Mfx\njgoADsfu88N5svKGFUH2gF9WqlsDA30a8PcpbXqOXJ4Zsgf65W+pm5Rlk13x8SpdtFJZOYWqOXFI\nrY11ysjOU9GsUk3Pm0UBBACTjH2CHIZ16s0hW3PI1pyPPvpo3N3ne04fikTTIqaoeL6G9pOxB2S7\nLPV2Nqq/u1UDfV1KT+rVsZ0/Uf/MIrk8eaMuR3yx160rPl55RXN0xdU36tqb79AVV9+ovKISCqAL\n8H5gDtmaQ7bRh3dWAIigAX+vfA2H1VZTrq7WaqVkeJVetFzunNKQNpIcj3+gT3UtR1XdsFfNvhol\nxmfojK9Q8Z482S1nAjzCebvPT8/z6vKV12vvjt/J39+j3u5WnSsQLV121bXqPfmOJFunK/5/FV/+\nt1GzbDIAIHjMCQKACBnw96rh8DbV7HlNF84DKVq6XjmlX5rUQsg/0KeD1e+M2Cyyv/mMlhXdoPzD\nVQELoSTvYuXe8siktSMWDO4TdPzg+2o6UyW3262stET1nnxPva3VQ+flX3GbZl19j6OGCwJANGFO\nEADEGF/D4QAFkCTZqtnzmlIy5yg9f/J6YOpajo4ogKRzq0yVH/+1vjjvr5W0c2QR5MTd5weHpnUc\n+5XSM1vU312t7lP1sns7FZeYIsuVKCspVQMul5rqP1VD9T75mmrkzipSjneJPHklcrkojAAgWjEn\nyGEYk2oO2ZozVbNtqylX4CWRJclW2+ldk/p61Q17R7yez+dTXNI0SbZO99cpLiX9gkeFvvv8VJCY\nOl3dbTXq721XXGKKXGnZivcUyJWWreSs2eqLy9Sut3+k6gPvqKm2UtUH3tGut3+kkwfeU/nOjyLd\n/Clpqr4fRAOyNYdsow9FEABESNd5w6oCHm8Z+/jFavbVBLzfSkiSy52l1u6ziktJO/+I43efTy9a\nrqFFEi6QlL1Yx/ZduKS1JNk6vPMNuRN6TDcPABAihsM5zKpVqyLdhCmLbM2ZqtmmZHjVfmb/6Mc9\nk7u7eKa7SKebDw67z+12S5LiUtM1PX+JUtLS1HvmiBKyZypl9lIlFV7i6Pku7pxSFS1dP2LYYnxS\nhrp7B+SKTxrlkbbUHWihiXMG5xzVVFWqpalOnqw8FRXP1/Q8L6vBjWOqvh9EA7I1h2yjD++0ABAh\n6UXLVX/obQUeEmcpvXDZpL6eN+dyHTj5h8CvZ8VpVtHn5Mm6dFJfM9bFuRKVU/olpWTOUdvpXepq\nqVaKxyuP92p98vFWyQrcSyRJHc2nA94faGPUuppjOlSxQ5evvF6li1ZSCAGAYQyHcxjGpJpDtuZM\n1WwHexlGDreyVLT0NrlzSif19fI8c3XV3K8Oez2fzyfJ0lXzblWeZ+6kvt5UEedKVHr+Is244uua\nd91Gzbji63JPn6e0rKIxHzcQnxbw/rN11cMKoM/Y2rvjdzpbd2JyGj5FTdX3g2hAtuaQbfThV00A\nECGj9TKkFy4zsk+QKy5BC7xrlZ0+S9Vn96nFVyOXJ10L56xSnmeuXHHOHfYWihzvElUfeFej9eSl\n5cwL+LiaqspRHiNJtmpOHFZeUckktRIAEAj7BAEAEAK/v08nD7ynwzvf0IX7PJVe9T81c8GagMtk\nv7v1JdXVHBv1efOLSnTtzXdMensBYCpinyAAAMLI5UrQzIXXKm26Vw3Vf1ZH82lNyyxUjveyMfcJ\n8mTljVkEZWTnmWoyAOAvJjQnyOfz6YknntB9992nJ598Up2dnaOeOzAwoIceekjPPPPMRF4SE8SY\nVHPI1hyyNYdsJ8blSlB24XzNX3mrlt14v+avvFXZhfPlciWMmm1R8XyNtuy2ZKlo1uTOBZtquGbN\nIVtzyDb6TKgI2rJlixYvXqwXXnhBCxcu1Jtvvjnqub/97W9VVDT2JFIAAKa66XleXb7yegVaEGPp\n527Q9LxZkWgWADjKhOYE3X///Xrsscfk8XjU0tKixx57TM8///yI8xobG7V582bdcssteuutt/TQ\nQw+N+9zMCQKmtgF/r3wNh9VWU66u1mqlZHiVXrTcyIIAQLQZ2ifoxCG1NtYpIztPRbNKNT1vFstj\nA8BFiMicoNbWVnk8HkmSx+NRa2trwPNeeeUV3X777WMOlwPgHAP+XjUc3jZsA8r2M/tVf+htFS1d\nr5zSL1EIYUpzxccrr2iO8ormRLopAOBI4w6He/zxx7Vhw4ah/x588EFt2LBB5eXlI861Amwat3v3\nbmVkZKi4uFi2bStKF6NzDMakmkO2wfM1HB5WAH3GVs2e1+RrODzsXrI1h2zNIVszyNUcsjWHbKPP\nuD1BGzduHPXY4DC4wT8zMjJGnFNZWany8nLt2bNHvb296urq0qZNm3TvvfeO27iysjKtWrVq6P8l\ncXuCtwdFS3um0u2Kioqoak803z5V+Z58vja53ec2k/T52iXpL7dtnap8T+0nOrRixQpJUkVFRVS1\nn9vcDub2oGhpz1S5zfsBt2Px9qBoac9Uup2amqpQTGhO0Kuvviq3261169Zpy5Yt6ujo0Pr160c9\n/+DBg9q6dStzggCHO/LuD9R+Zv+ox9PyF2vedaP/AgYAAEAKfU7QhFaHW7dunSoqKnTfffdp//79\nWrdunSSpublZTz/99ESeGsAUlpLhHfu4Z+zjAAAAEzGhIsjtdmvjxo164YUX9L3vfU/Tpk2TJGVm\nZurhhx8ecf6CBQuC6gWCORd2y2LykG3w0ouWa6x9UtILlw27h2zNIVtzyNYMcjWHbM0h2+gzoSII\nAELhzilV0dL1CrRPStHS2+TOYbNIAABgzoTmBJnEnCBgahvaJ+j0LnW1VCvF41V64TL2CQIAAEGL\nyD5BABCqOFei0vMXKT1/UaSbAgAAHIbhcA7DmFRzyNYcsjWHbM0hWzPI1RyyNYdsow9FEAAAAABH\nYU4QACAienr6lZjokmWNtlIgAABjY04QACDqdXf3a+/eev3+98d1/HirCgvduuGG2Vq6NE9uNwti\nAADCg+FwDsOYVHPI1hyyNSec2fb09OuXvzykRx75o95776Sqqtr04Yen9eijH+illyrU0dEbtraE\nA9et5O/vV13NMe3+4Ld6d+tL2v3Bb1VXc0z+/v6Qn5NczSFbc8g2+tATBAAIi08+adTPf14R8Nib\nbx7RFVfk6fOfnxHmVsEUf3+/Du/fob07fifp3Mj7uppjOlSxQ5evvF6li1bKFc/XEACRQU+Qw6xa\ntSrSTZiyyNYcsjUnnNmWl58Z8/i7754IU0vCw+nX7dm66mEF0Gds7d3xO52tC+3n7fRcTSJbc8g2\n+lAEAQDCora2Y8zjp075FKVr9SAENVWVGlkADbJVc+JwOJsDAMNQBDkMY1LNIVtzyNaccGZbUuIZ\n8/j8+VlTaqU4p1+3LU11Yx5vbRz7+GicnqtJZGsO2UYfiiAAQFhccUWe4uMDf+xYlrR69cwwtwgm\nebLyxjyekT32cQAwiX2CAABhYdu23nnnhP73//5Y/f0DQ/fHxVm6556luummEiUkuCLYQkymuppj\nenfrywo8JM7SdTd/XXlFJWFuFYCphn2CAABRzbIsrV07SzNnpmnfvgadPNmm/Hy3li7NVWlp1qi9\nRIhN0/O8unzl9QEWR7C09HM3aHrerEg1DQAYDuc0jEk1h2zNIVtzwp2tZVm65JJs3XrrfD344FVa\nv36BFiyYPiULIKdft674eJUuWqnrbr5Dl1x2tfKLSnTJZVfrupu/rnkLV4S8PLbTczWJbM0h2+hD\nTxAAADDCFR+vvKI5yiuaE+mmAMAwzAkCAAAAEJNCnRM09cYfAAAAAMAYKIIchjGp5pCtOWRrDtma\nQ7ZmkKs5ZGsO2UYfiiAAAAAAjsKcIAAAAAAxiTlBAAAAABAEiiCHYUyqOWRrDtmaYzJb/0CfTjd9\noh2H/l1v7/qhdhz6d51u+kT+gT5jrxlNuG7NIFdzyNYcso0+7BMEAJh0/oE+Hax+Rx8ffV3SuVHX\np5sP6sDJP+iquV/VAu9aueISIttIAIBjMScIADDpTjd9ord3/1CDBdBwlm68YoMKsy4Nd7MAAFMM\nc4IAAFGjumGvAhdAkmSr+uy+cDYHAIBhKIIchjGp5pCtOWRrjqlsm301Yx5vGef4VMB1awa5mkO2\n5pBt9KEIAgBMukx30ZjHPeMcBwDAJOYEAQAmHXOCAADhEOqcIFaHA4BR2P196qk9rK5Pd6mvsVoJ\n2V6llCxTUkGprHhWNhtLnmeurpr71WGrw51j6ap5tyrPMzdSTZsQrgkAmBoYDucwjEk1h2zNiUS2\ndn+f2vf9pxreeFK+vW+r5+QB+fa+rYY3nlT7vv+U3T819roxla0rLkELvGt14xUbtNB7vYqyFmqh\n93rdeMUGLZh5XUwuj32x1wTvCWaQqzlkaw7ZRh96ggAggJ7aw2p9/980cjiXrdb3/02JOcVK9i6K\nRNNihisuQYVZl06ZYW9cEwAwddAT5DCrVq2KdBOmLLI1JxLZdn26S2Mt8dx1fE84m2MM123wLvaa\nIFszyNUcsjWHbKMPPUEAEEBfY/U4x0+GqSWIhH5/v2obq3W8tlJnW+vkzS1RQd1R2bYty7ICPoZr\nAgBiBz1BDsOYVHPI1pxIZJuQ7R3n+MwwtcQsrtuR+v392nd0h371/svac/RPOtlwTLuPfqi2xCR1\n9nRotEVVL7wmyNYMcjWHbM0h2+hDEQQAAaSULJMU+Df+kqWU2UvD2RyEUW1jtcr2/07nD33r6ulQ\nT26xfN1t6uvvDfAorgkAiCXsEwQAAQyuBDZyIryljGvWK23J9SyJPEX9cd9vtefon0bcn5maqavi\nkjSw67dKS00/7wjXBABECvsEAcAksuITlLbkBiXmzlbXsd3qazyphOyZSpm9VEmFl/Bldwo721oX\n8P7mzmZ9nJqpz93wTbl9rUFdE+wrBADRiSLIYcrKylihxBCyNSdS2VrxCUqeuVDJMxeG/bXDhet2\npOkZeTrZcCzgsebOZtXGJ2je6tvHfZ7ynR+pNK5hWG/iub2Ftinjmq8pbckNFEIh4Jo1h2zNIdvo\nw5wgAADOM7tgvsaaDza7oDSo58mN6xxzX6Ge04cm0EoAwERQBDkMv4Uwh2zNIVtzyHakgmyvVi26\nXiMLIUvXLL5BBdmzgnqetPaTcsJeU+HGNWsO2ZpDttGH4XAAAJwn3hWvJXNXKjezUMdrD6mxrU7Z\n6XmaXVCqguxZincF99HJXlMAEL3oCXIY1qk3h2zNIVtzyDaweFe8ZubO0ReW3Kj/55o79IUlN2pm\nbknQBZAkdSdljnl8quw1FW5cs+aQrTlkG30oggAAMKFggdhrCgCiE/sEAQBgAHtNAYB57BMEAEAU\nYa8pAIheDIdzGMakmkO25pCtOWRrTllZ2dBeU5mrb1fuLY8oc/XtSvYuogCaAK5Zc8jWHLKNPhRB\nAAAAAByFOUEAAAAAYlKoc4LoCQIAAADgKBRBDsOYVHPI1hyyNYdszSFbM8jVHLI1h2yjD0UQAAAA\nAEdhThAAAACAmMScIAAAAAAIAkWQwzAm1RyyNYdszSFbc8jWDHI1h2zNIdvoQxEEAAAAwFGYEwQA\nAAAgJjEnCAAAAACCQBHkMIxJNYdszSFbc8jWHLI1g1zNIVtzyDb6UAQBAAAAcBTmBAEAAACIScwJ\nAgAAAIAgUAQ5DGNSzSFbc8jWHLI1h2zNIFdzyNYcso0+FEEAAAAAHIU5QQAAAABiEnOCAAAAACAI\nFEEOw5hUc8jWHLI1h2zNIVszyNUcsjWHbKMPRRAAAAAAR2FOEAAAAICYxJwgAAAAAAgCRZDDMCbV\nHLI1h2zNIVtzyNYMcjWHbM0h2+hDEQQAAADAUZgTBAAAACAmMScIAAAAAIJAEeQwjEk1h2zNIVtz\nyNYcsjWDXM0hW3PINvpQBAEAAABwFOYEAQAAAIhJzAkCAAAAgCBQBDkMY1LNIVtzyNYcsjWHbM0g\nV3PI1hyyjT4UQQAAAAAchTlBAAAAAGISc4IAAAAAIAgUQQ7DmFRzyNYcsjWHbM0hWzPI1RyyNYds\now9FEAAAAABHYU4QAAAAgJjEnCAAAAAACMKEiiCfz6cnnnhC9913n5588kl1dnYGPK+zs1PPPfec\nHnjgAX3729/WkSNHJvKymADGpJpDtuaQrTlkaw7ZmkGu5pCtOWQbfeIn8uAtW7Zo8eLF+spXvqIt\nW7bozTff1Pr160ec99JLL2np0qX69re/Lb/fr56enom8LAAAAACEbEI9QeXl5Vq9erUkac2aNdq5\nc+eIczo7O1VZWalrr71WkuRyuZSamjqRl8UErFq1KtJNmLLI1hyyNYdszSFbM8jVHLI1h2yjz4R6\nglpbW+XxeCRJHo9Hra2tI86pr69XWlqaNm/erBMnTmjOnDm68847lZiYOJGXBgAAAICQjNsT9Pjj\nj2vDhg1D/z344IPasGGDysvLR5xrWdaI+wYGBnT8+HHdcMMNeuaZZ5SUlKQtW7ZMTutx0RiTag7Z\nmkO25pCtOWRrBrmaQ7bmkG30GbcnaOPGjaMe83g8amlpGfozIyNjxDlZWVnKzs5WSUmJJGnlypVB\nF0FlZWVD3YeDFw+3J3Z7ULS0ZyrdrqioiKr2TKXbFRUVUdUebnM7mNuDoqU9U+U27wfcjsXbg6Kl\nPVPpdqjTbCa0T9Crr74qt9utdevWacuWLero6Ai4MMKjjz6qb37zmyosLNTrr7+unp4e3XbbbWM+\nN/sEAQAAABhLRPYJWrdunSoqKnTfffdp//79WrdunSSpublZTz/99NB5d955p3784x/rO9/5jk6c\nOKFbbrllIi8LAAAAACGbUE+QSfQEmVFW9tkQQ0wusjWHbM0hW3PI1gxyNYdszSFbcyLSEwQAAAAA\nsYaeIAAAAAAxiZ4gAAAAAAgCRZDDXLhUIyYP2ZpDtuaQrTlkawa5mkO25pBt9KEIAgAAAOAozAkC\nAAAAEJOYEwQAAAAAQaAIchjGpJpDtuaQrTlkaw7ZmkGu5pCtOWQbfSiCAAAAADgKc4IAAAAAxCTm\nBAEAAABAECiCHIYxqeaQrTlkaw7ZmkO2ZpCrOWRrDtlGH4ogAAAAAI7CnCAAAAAAMSnUOUHxBtoC\nAIgBtr9XPc2V6qz/SH3tJ5SQNkupuSuUlDlflisx0s0DAMAYhsM5DGNSzSFbc8h28tn+XrWdeEuf\nvnu/2qt+o+7GfWqv+o3qPv6e2k68JdvfG+kmxjyuWzPI1RyyNYdsow9FEAA4UE9zpVoqX5Z04Yho\nWy2VL6un+ZMItAoAgPBgThAAOFDTwf9X7VW/GfV4WvFXlLXgG2FsEQAAF499ggAAQetrPzGh4wAA\nxDKKIIdhTKo5ZGsO2U6+hLRZkiSfzzfmcYSO69YMcjWHbM0h2+hDEQQADpSau0KSNcpRS6m5V4az\nOQAAhBVzggDAgQZXhxu5OIKlzPl3Km3Wl1kmGwAQ9dgnCAAQNMuVqPRZNykpfa466z8+b5+gK5WU\neSkFEABgSmM4nMMwJtUcsjWHbM2wXIkqr2xT1oJvKG/F48pa8A0lT19CATRJuG7NIFdzyNYcso0+\nFEEAAAAAHIU5QQAAAABiEvsEAQAAAEAQKIIchjGp5pCtOWRrDtmaQ7ZmkKs5ZGsO2UYfiiAAAAAA\njsKcIAAAAAAxiTlBAAAAABAEiiCHYUyqOWRrDtmaQ7bmkK0Z5GoO2ZpDttGHIggAAACAozAnCAAA\nAEBMYk4QAAAAAASBIshhGJNqDtmaQ7bmkK05ZGsGuZpDtuaQbfShCAIAAADgKMwJAgAAABCTmBME\nAAAAAEGgCHIYxqSaQ7bmkK05ZGsO2ZpBruaQrTlkG30oggAAAAA4CnOCAAAAAMQk5gQBAAAAQBAo\nghyGManmkK05ZGsO2ZpDtmaQqzlkaw7ZRh+KIAAAAACOwpwgAAAAADGJOUEAAAAAEASKIIdhTKo5\nZGsO2ZpDtuaQrRnkag7ZmkO20YciCAAAAICjMCcIAAAAQExiThAAAAAABIEiyGEYk2oO2ZpDtuaQ\nrTlkawa5mkO25pBt9KEIAgAAAOAozAkCAAAAEJOYEwQAAAAAQaAIchjGpJpDtuaQrTlkaw7ZmkGu\n5pCtOWQbfSiCAAAAADgKc4IAAAAAxCTmBAEAAABAECiCHIYxqeaQrTlkaw7ZmkO2ZpCrOWRrDtlG\nH4ogAAAAAI7CnCAAAAAAMYk5QQAAAAAQBIogh2FMqjlkaw7ZmkO25pCtGeRqDtmaQ7bRhyIIAAAA\ngKMwJwgAAABATGJOEAAAAAAEgSLIYRiTag7ZmkO25pCtOWRrBrmaQ7bmkG30oQgCAAAA4CjMCQIA\nAAAQk5gTBAAAAABBoAhyGMakmkO25pCtOWRrDtmaQa7mkAvQ6nMAAAszSURBVK05ZBt9KIIAAAAA\nOApzggAAAADEJOYEAQAAAEAQKIIchjGp5pCtOWRrDtmaQ7ZmkKs5ZGsO2UYfiiAAAAAAjsKcIAAA\nAAAxiTlBAAAAABAEiiCHYUyqOWRrDtmaQ7bmkK0Z5GoO2ZpDttGHIggAAACAozAnCAAAAEBMYk4Q\nAAAAAASBIshhGJNqDtmaQ7bmkK05ZGsGuZpDtuaQbfShCAIAAADgKMwJAgAAABCTmBMEAAAAAEGY\nUBHk8/n0xBNP6L777tOTTz6pzs7OgOe99dZbevDBB7Vhwwb98z//s/r7+yfyspgAxqSaQ7bmkK05\nZGsO2ZpBruaQrTlkG30mVARt2bJFixcv1gsvvKCFCxfqzTffHHFOU1OTtm3bpmeeeUY//OEP5ff7\n9cEHH0zkZQEAAAAgZBMqgsrLy7V69WpJ0po1a7Rz586A5w0MDKi7u1t+v189PT3KzMycyMtiAlat\nWhXpJkxZZGsO2ZpDtuaQrRnkag7ZmkO20Sd+Ig9ubW2Vx+ORJHk8HrW2to44JysrSzfddJPuvvtu\nJSUl6bLLLtNll102kZcFAAAAgJCN2xP0+OOPa8OGDUP/Dc7tKS8vH3GuZVkj7uvo6FB5ebk2b96s\nF198Ud3d3YyLjCCyN4dszSFbc8jWHLI1g1zNIVtzyDb6jNsTtHHjxlGPeTwetbS0DP2ZkZEx4pyK\nigrl5ubK7XZLklasWKFDhw4F1S24e/fucc/BxUlNTSVXQ8jWHLI1h2zNIVszyNUcsjWHbKPPhIbD\nLVu2TNu3b9e6deu0fft2LV++fMQ506dP15EjR9Tb26uEhARVVFSopKRk3OcOZb1vAAAAABjPhDZL\n9fl8+tGPfqSzZ88qJydHDzzwgKZNm6bm5ma9+OKLevjhhyVJr7/+uj788EO5XC4VFxfrrrvuUnz8\nhOovAAAAAAjJhIogAAAAAIg1E1oiGwAAAABiDUUQAAAAAEeJiok5O3bs0Ouvv65Tp07pqaee0pw5\ncwKet3fvXr388suybVvXXnut1q1bF+aWxh6fz6fnn39eDQ0Nys3N1QMPPKDU1NQR57311lt67733\nZFmWvF6v7r77buZtjSPYbDs7O/Wzn/1MJ0+elGVZ+ta3vqV58+ZFoMWxI9hspXObMX/3u99VVlaW\nHnrooTC3NPYEk21jY6M2bdqk1tZWWZaltWvX6q/+6q8i1OLoFszn0s9//nPt3btXSUlJuueee1Rc\nXBz+hsag8bItKyvTr3/9a0lScnKy/v7v/15erzcSTY05wX6fOnr0qDZu3Kj7779fK1asCHMrY1Mw\n2R44cECvvPKK/H6/0tPT9eijj0agpbFlvFw7Ozv14x//WGfPntXAwIBuvvlmrVmzZuwntaNATU2N\nffr0afuxxx6zP/3004Dn+P1++95777Xr6+vtvr4+e8OGDfapU6fC3NLY84tf/MLesmWLbdu2/eab\nb9qvvvrqiHMaGxvte+65x+7r67Nt27afe+45e/v27WFtZywKJlvbtu1NmzbZ7777rm3btt3f3293\ndHSErY2xKthsbdu2t27dar/wwgv2008/Ha7mxbRgsm1ubraPHz9u27Ztd3V12f/wD//A+20AwXwu\n7d692/6nf/on27Zt+/Dhw/YjjzwSiabGnGCyPXTo0ND76Z49e8g2SMF+n/L7/fb3v/99+6mnnrJ3\n7NgRgZbGnmCy7ejosB944AG7sbHRtm3bbm1tjURTY0owuf7qV7+yX3vtNdu2z2V655132v39/WM+\nb1QMhyssLFRBQcGY5xw9elQFBQXKyclRfHy8Pv/5z2vnzp1hamHsKi8v1+rVqyVJa9asGTWzgYEB\ndXd3y+/3q6enR5mZmeFsZkwKJtvOzk5VVlbq2muvlSS5XK5RezTwmWCv28bGRu3Zs4cl9S9CMNl6\nPJ6h3ork5GQVFRWpqakpnM2MCcF8Lu3cuXMo73nz5qmzs1MtLS2RaG5MCSbb0tLSoffTefPmcY0G\nKdjvU9u2bdPKlSuVnp4egVbGpmCyLSsr04oVK5SVlSVJ5BuEYHK1LEtdXV2SpO7ubqWlpcnlco35\nvFFRBAWjqalJ2dnZQ7ezsrJ4wwtCa2urPB6PpHNfbFpbW0eck5WVpZtuukl333237rrrLk2bNk2X\nXXZZuJsac4LJtr6+Xmlpadq8ebMeeughvfjii+rt7Q13U2NOMNlK0iuvvKLbb79dlmWFs3kxLdhs\nB9XX1+vEiRMM4QwgmM8lPrtCc7G5vfPOO7r88svD0bSYF+x1u3PnTl1//fXhbl5MCybb06dPy+fz\n6fvf/76++93v6o9//GO4mxlzgsn1S1/6kk6dOqVvfvOb+s53vqM77rhj3OcN26SPxx9/fNiHrW3b\nsixLf/3Xfx1wk1UEb6xsLxToy2JHR4fKy8u1efNmpaam6tlnn1VZWZlWrVpltN2xYKLZDgwM6Pjx\n4/q7v/s7lZSU6OWXX9aWLVt06623Gm13LJhotrt371ZGRoaKi4t14MAB2az2P2Si2Q7q7u7Wc889\npzvuuEPJyclG2gpM1P79+7V9+3b94Ac/iHRTpoyXX35Z69evH7rN++vkGfxe8I//+I/q6enR9773\nPZWWlio/Pz/STYtpe/fu1ezZs/Xoo4/qzJkzeuKJJ/TDH/5wzM+usBVBGzdunNDjs7KydPbs2aHb\nTU1NQ12JTjdWth6PRy0tLUN/ZmRkjDinoqJCubm5crvdkqQVK1bo0KFDFEGaeLZZWVnKzs5WSUmJ\nJGnlypXasmWLsfbGkolmW1lZqfLycu3Zs0e9vb3q6urSpk2bdO+995psdkyYaLaS5Pf79eyzz+oL\nX/iCrrzySlNNjWnBfC5lZWWpsbFx6HZjYyOfXUEI9jP/xIkT+pd/+Rc98sgjQ59hGFsw2R47dkzP\nP/+8bNtWe3u79uzZo/j4eH5pPY5g3xPS0tKUmJioxMREXXrppaqqqqIIGkMwuW7fvn1osYT8/Hzl\n5uaqpqZm6PtXIDEzHG7u3Lk6c+aMGhoa1N/frw8++IB/jEFYtmyZtm/fLuncBRIos+nTp+vIkSPq\n7e2VbduqqKhQUVFRmFsae4LJ1uPxKDs7W6dPn5Z0ruCcMWNGOJsZk4LJ9mtf+5p++tOfatOmTbr/\n/vu1aNEiCqAgBJOtJP30pz/VjBkzWBVuDMF8Li1fvlz/9V//JUk6fPiwpk2bNjQcEaMLJtuzZ8/q\n2Wef1b333ssXyIsQTLabNm3Spk2b9JOf/EQrV67UN77xDb5zBSGYbK+88kpVVlZqYGBAPT09OnLk\nCN8LxhFMrtOnT1dFRYUkqaWlRbW1tcrLyxvzeS07Cvo4P/74Y7300ktqa2vTtGnTVFxcrEceeUTN\nzc168cUX9fDDD0s619X10ksvybZtXXfddSyRHQSfz6cf/ehHOnv2rHJycvTAAw9o2rRpI7J9/fXX\n9eGHH8rlcqm4uFh33XUXS2SPI9hsq6qq9OKLL6q/v195eXm6++67WRxhHMFmO+jgwYPaunUrS2QH\nIZhsKysr9eijj8rr9cqyLFmWpb/5m79hzkUAgT6Xfv/738uyLH3xi1+UJP3rv/6r9u7dq+TkZH3r\nW98adRsIDDdetj/72c/08ccfKycnR7Zty+Vy6amnnop0s2NCMNftoM2bN2vZsmUskR2kYLL9zW9+\no+3btysuLk5r167VjTfeGOFWR7/xcm1ubtbmzZvV3NwsSVq3bt24I5qioggCAAAAgHCJmeFwAAAA\nADAZKIIAAAAAOApFEAAAAABHoQgCAAAA4CgUQQAAAAAchSIIAAAAgKNQBAEAAABwFIogAAAAAI7y\nfwEc0olTZHTzJQAAAABJRU5ErkJggg==\n", "text/html": [ "\n", "\n", "\n", "\n", "
\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "fig.set_size_inches(14.0, 12.0)\n", "#colors = cycle('bgrcmykwbgrcmykbgrcmykwbgrcmykw')\n", "colors = cycle(cm.Dark2(np.linspace(0,1,len(dff_counts.index))))\n", "for name, group in dff.groupby('Patent ID'):\n", " labels = []\n", " for i in group.index:\n", " zz = group.ix[[i],['Patent ID','SCHEMBL ID','base64rdsmi']]\n", " zz['mol'] = zz['base64rdsmi'].map(lambda x: ''.format(base_url,x))\n", " del zz['base64rdsmi']\n", " label = zz.T\n", " del zz\n", " label.columns = ['Row: {}'.format(i)]\n", " labels.append(str(label.to_html()))\n", " points = ax.scatter(group['X'], group['Y'],c=colors.next(), s=80, alpha=0.8)\n", " tooltip = mpld3.plugins.PointHTMLTooltip(points, labels, voffset=10, hoffset=10, css=csss)\n", " mpld3.plugins.connect(fig,tooltip) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So the \"island\" of outliers has disappeared. There's only one obvious outlier on the far left. This might be a reactant which wasn't filtered out. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3. Define the MCS for this set of claimed molecules" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A couple of helper functions, inspired by Greg Landrum's post [here](http://rdkit.blogspot.co.uk/2015/05/a-set-of-scaffolds-from-chembl-papers.html)." ] }, { "cell_type": "code", "execution_count": 58, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from IPython.display import SVG\n", "from rdkit.Chem import rdDepictor\n", "from rdkit.Chem.Draw import rdMolDraw2D\n", "def moltosvg(mol,molSize=(450,350),kekulize=True):\n", " mc = Chem.Mol(mol.ToBinary())\n", " if kekulize:\n", " try:\n", " Chem.Kekulize(mc)\n", " except:\n", " mc = Chem.Mol(mol.ToBinary())\n", " \n", " rdDepictor.Compute2DCoords(mc)\n", " drawer = rdMolDraw2D.MolDraw2DSVG(molSize[0],molSize[1])\n", " # the MolDraw2D code is not very good at the moment at dealing with atom queries,\n", " # this is a workaround until that's fixed.\n", " # The rendering is still not going to be perfect because query bonds are not properly indicated\n", " opts = drawer.drawOptions()\n", " for atom in mc.GetAtoms():\n", " if atom.HasQuery() and atom.DescribeQuery().find('AtomAtomicNum')!=0:\n", " opts.atomLabels[atom.GetIdx()]=atom.GetSmarts()\n", " drawer.DrawMolecule(mc)\n", " drawer.FinishDrawing()\n", " svg = drawer.GetDrawingText()\n", " return svg.replace('svg:','')" ] }, { "cell_type": "code", "execution_count": 59, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def MCS_Report(ms,atomCompare=MCS.AtomCompare.CompareAny,**kwargs):\n", " mcs = MCS.FindMCS(ms,atomCompare=atomCompare,completeRingsOnly=True,timeout=120,**kwargs)\n", " nAts = np.array([x.GetNumAtoms() for x in ms])\n", " print 'Mean nAts: {0}, mcs nAts: {1}'.format(nAts.mean(),mcs.numAtoms)\n", " print 'MCS SMARTS: {0}'.format(mcs.smartsString)\n", " mcsM = Chem.MolFromSmarts(mcs.smartsString)\n", " \n", " mcsM.UpdatePropertyCache(False)\n", " Chem.SetHybridization(mcsM)\n", " Chem.Compute2DCoords(mcsM)\n", " smi = Chem.MolToSmiles(mcsM,isomericSmiles=True)\n", " print \"MCS SMILES: {0}\".format(smi)\n", " img=Draw.MolToImage(mcsM,kekulize=False)\n", " return mcs.smartsString,smi,img,mcsM" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's add the Murcko framework to our data frame:" ] }, { "cell_type": "code", "execution_count": 60, "metadata": { "collapsed": false }, "outputs": [], "source": [ "PandasTools.AddMurckoToFrame(dff)" ] }, { "cell_type": "code", "execution_count": 61, "metadata": { "collapsed": false }, "outputs": [], "source": [ "PandasTools.AddMoleculeColumnToFrame(dff,smilesCol='Murcko_SMILES', molCol='MurMol')" ] }, { "cell_type": "code", "execution_count": 62, "metadata": { "collapsed": false }, "outputs": [], "source": [ "PandasTools.AlignToScaffold(dff)" ] }, { "cell_type": "code", "execution_count": 63, "metadata": { "collapsed": false }, "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", "
ROMolMurMol
Chemical ID
5441\"Mol\"/\"Mol\"/
5517\"Mol\"/\"Mol\"/
5530\"Mol\"/\"Mol\"/
5537\"Mol\"/\"Mol\"/
5606\"Mol\"/\"Mol\"/
" ], "text/plain": [ " ROMol MurMol\n", "Chemical ID \n", "5441 \"Mol\"/ \"Mol\"/\n", "5517 \"Mol\"/ \"Mol\"/\n", "5530 \"Mol\"/ \"Mol\"/\n", "5537 \"Mol\"/ \"Mol\"/\n", "5606 \"Mol\"/ \"Mol\"/" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff[['ROMol','MurMol']].head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And now we'll extract the MCS core:" ] }, { "cell_type": "code", "execution_count": 64, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mean nAts: 24.6914600551, mcs nAts: 16\n", "MCS SMARTS: [#8]=[#6]1:[#7]:[#6](-[#6]2:[#6]:[#6]:[#6]:[#6]:[#6]:2):[#7]:[#7]2:[#6]:1:[#6]:[#7,#6]:[#6]:2\n", "MCS SMILES: O=C1:N:C(C2:C:C:C:C:C:2):N:N2:C:N:C:C:1:2\n" ] }, { "data": { "image/svg+xml": [ "\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", "O\n", "N\n", "N\n", "N\n", "[#7,#6]\n", "" ], "text/plain": [ "" ] }, "execution_count": 64, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mols = list(dff.MurMol)\n", "smarts,smi,img,mcsM = MCS_Report(mols,threshold=0.8,ringMatchesRingOnly=True)\n", "SVG(moltosvg(mcsM))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 4. Compare the extracted MCS core with the actual claimed Markush structure." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Given the MCS core, we'll do an R-Group decomposition first to define the R-Groups and their attachement points." ] }, { "cell_type": "code", "execution_count": 65, "metadata": { "collapsed": false }, "outputs": [], "source": [ "core = Chem.MolFromSmarts(smarts) " ] }, { "cell_type": "code", "execution_count": 66, "metadata": { "collapsed": false }, "outputs": [], "source": [ "pind = []\n", "rgroups = []\n", "for i, m in zip(dff.index, dff.ROMol):\n", " rgrps = Chem.ReplaceCore(m,core,labelByIndex=True)\n", " if rgrps:\n", " s = Chem.MolToSmiles(rgrps, True)\n", " for e in s.split(\".\"):\n", " pind.append(e[1:4].replace('*','').replace(']',''))\n", " rgroups.append(e)\n", " #print \"R-Groups: \", i, s" ] }, { "cell_type": "code", "execution_count": 67, "metadata": { "collapsed": false }, "outputs": [], "source": [ "pind = sorted(list(set(pind)),key=int)" ] }, { "cell_type": "code", "execution_count": 68, "metadata": { "collapsed": false }, "outputs": [], "source": [ "pind = map(int,pind)" ] }, { "cell_type": "code", "execution_count": 69, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nTkSuQmCC\n", "text/plain": [ "" ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Draw.MolToImage(core,includeAtomNumbers=True,highlightAtoms=pind)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Is the MCS similar to the claimed Markush structure?\n", "Let's fetch the original document in PDF and check in page 4:" ] }, { "cell_type": "code", "execution_count": 70, "metadata": { "collapsed": false, "scrolled": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" } ], "source": [ "HTML('')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Pretty close!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 5. Identify key compounds - in this case, vardenafil itself" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This is based on the publication by [Hattori et al.](http://pubs.acs.org/doi/abs/10.1021/ci7002686) and [Tyrchan et al.](http://pubs.acs.org/doi/abs/10.1021/ci3001293). First we'll try the Hattori et al. version of finding the compounds with the highest number of nearest neighbours (NNs) for a given similarity threshold. We will need to calculate the similarity matrix." ] }, { "cell_type": "code", "execution_count": 71, "metadata": { "collapsed": false }, "outputs": [], "source": [ "sim_mat = []\n", "CUTOFF = 0.8\n", "for i,fp in enumerate(fps):\n", " tt = DataStructs.BulkTanimotoSimilarity(fps[i],fps)\n", " for i,t in enumerate(tt):\n", " if tt[i] < CUTOFF:\n", " tt[i] = None\n", " sim_mat.append(tt)\n", "sim_mat=numpy.array(sim_mat) " ] }, { "cell_type": "code", "execution_count": 72, "metadata": { "collapsed": false }, "outputs": [], "source": [ "sim_df = pd.DataFrame(sim_mat, columns = dff['Chemical ID'], index=dff['Chemical ID'])" ] }, { "cell_type": "code", "execution_count": 73, "metadata": { "collapsed": false }, "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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", "
Chemical ID544155175530553756065613567312070135271357913598136071363113694138121382513848142799725069725659727309730329731839732419733329733489733499733829733869733879736039736619736719736789737189737279737469738679739559740069740739740809741829741899742159742599742659742959743659745549745629745639746009747499747529748249748869750089751549751729751939752079752339752709752959752969753859753889753909754909756271456170145651214573003173334318215043389244580977593193259495546400765679307771265527130126741968576014298251760825560482569878259092128225921282259512822605128226511282266112822664128226681282285112822865128228701282287112822873128228811282290112822909128229161282301012823018128230231282302512823027128230281282302912823050128230521282306212823071128230751282307612823078128230801282308312823089128230921282309912823105128231081282311512823120128231221282312812823129128231321282313312823134128231351282313912823141128231471282315412823156128231721282318512823190128232251282322812823229128232331282324012823262128232731282328912823297128233141282332012823321128233251282332612823329128233301282334212823354128233721282340512823411128234251282342612823511128235171282352212823528128235411282354612823547128235501282355712823559128235601282356412823567128235791282358212823596128236011282360412823607128236091282361012823611128236141282362112823625128236261282362912823632128236331282363412823635128236361282363712823642128236431282364412823645128236481282365012823652128236541282373912823745128237521282375612823757128237581282376212823763128237641282376512823767128237681282376912823770128237711282377212823773128237741282377512823777128237781282377912823781128237861282379012823791128237921282379312823795128237961282379712823799128238001282380112823802128238051282380812823810128238151282381612823818128238191282382112823823128239671282397412823977128239781282398212823983128239841282398512823986128239871282398812823992128239981282399912824000128240021282400312824004128240051282400612824007128240081282400912824010128240111282401212824013128240161282401712824018128240221282402412824026128240281282402912824030128240311282403412824035128240361282403712824038128240401282404112824042128240441282404712824049128240531282405512824057128240591282406012824062128240631282406412824065128240661282406712824068128240691282407012824071128240721282407312824074128240801282408112824085128240861282408712824089129225161292251712922519129225201292252112922522129225271292252912922530129225361292253812922546129225471292254912922550129225551292255812922560129225611292256312922566129225671292256912922570129225741292257712922578129225791340108413401207134012081343557813533556141990341427825214278326143016951475232114752362
Chemical ID
54411.000.86None0.870.80NoneNoneNoneNoneNoneNoneNoneNone0.87NoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.85NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.84NoneNoneNoneNoneNoneNoneNoneNoneNone0.810.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.81NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.82NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.81NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.85NoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNone0.83None0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.84NoneNoneNoneNoneNone
55170.861.00None0.84NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.92NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.85NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.90NoneNone0.85NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.80NoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.81NoneNoneNoneNoneNoneNoneNoneNoneNone0.84NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone
5530NoneNone1.000.84NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.85NoneNoneNoneNoneNoneNoneNoneNoneNone0.82NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.81NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.94NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.84NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.81NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.87NoneNoneNoneNoneNone
55370.870.840.841.000.81NoneNoneNoneNoneNoneNone0.81NoneNoneNoneNoneNoneNoneNoneNone0.82NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.89NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.85NoneNoneNoneNoneNoneNoneNoneNoneNone0.820.84NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.80NoneNoneNoneNoneNoneNoneNoneNoneNone0.82NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.94NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.84NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.84NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.86NoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.84NoneNoneNoneNoneNoneNoneNoneNoneNone0.82NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone
56060.80NoneNone0.811.00NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.90NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.85NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.81NoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.80NoneNone0.91NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.87NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.82NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.80NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.84NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.87NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.81NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.83NoneNoneNoneNoneNoneNoneNoneNoneNoneNone0.81NoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNoneNone
" ], "text/plain": [ "Chemical ID 5441 5517 5530 5537 5606 5613 5673 12070 13527 13579 13598 13607 13631 13694 13812 13825 13848 14279 972506 972565 972730 973032 973183 973241 973332 973348 973349 973382 973386 973387 973603 973661 973671 973678 973718 973727 973746 973867 973955 974006 974073 974080 974182 974189 974215 974259 974265 974295 974365 974554 974562 974563 974600 974749 974752 974824 974886 975008 975154 975172 975193 975207 975233 975270 975295 975296 975385 975388 975390 975490 975627 1456170 1456512 1457300 3173334 3182150 4338924 4580977 5931932 5949554 6400765 6793077 7126552 7130126 7419685 7601429 8251760 8255604 8256987 8259092 12822592 12822595 12822605 12822651 12822661 12822664 12822668 12822851 12822865 12822870 12822871 12822873 12822881 12822901 12822909 12822916 12823010 12823018 12823023 12823025 12823027 12823028 12823029 12823050 12823052 12823062 12823071 12823075 12823076 12823078 12823080 12823083 12823089 12823092 12823099 12823105 12823108 12823115 12823120 12823122 12823128 12823129 12823132 12823133 12823134 12823135 12823139 12823141 12823147 12823154 12823156 12823172 12823185 12823190 12823225 12823228 12823229 12823233 12823240 12823262 12823273 12823289 12823297 12823314 12823320 12823321 12823325 12823326 12823329 12823330 12823342 12823354 12823372 12823405 12823411 12823425 12823426 12823511 12823517 12823522 12823528 12823541 12823546 12823547 12823550 12823557 12823559 12823560 12823564 12823567 12823579 12823582 12823596 12823601 12823604 12823607 12823609 12823610 12823611 12823614 12823621 12823625 12823626 12823629 12823632 12823633 12823634 12823635 12823636 12823637 12823642 12823643 12823644 12823645 12823648 12823650 12823652 12823654 12823739 12823745 12823752 12823756 12823757 12823758 12823762 12823763 12823764 12823765 12823767 12823768 12823769 12823770 12823771 12823772 12823773 12823774 12823775 12823777 12823778 12823779 12823781 12823786 12823790 12823791 12823792 12823793 12823795 12823796 12823797 12823799 12823800 12823801 12823802 12823805 12823808 12823810 12823815 12823816 12823818 12823819 12823821 12823823 12823967 12823974 12823977 12823978 12823982 12823983 12823984 12823985 12823986 12823987 12823988 12823992 12823998 12823999 12824000 12824002 12824003 12824004 12824005 12824006 12824007 12824008 12824009 12824010 12824011 12824012 12824013 12824016 12824017 12824018 12824022 12824024 12824026 12824028 12824029 12824030 12824031 12824034 12824035 12824036 12824037 12824038 12824040 12824041 12824042 12824044 12824047 12824049 12824053 12824055 12824057 12824059 12824060 12824062 12824063 12824064 12824065 12824066 12824067 12824068 12824069 12824070 12824071 12824072 12824073 12824074 12824080 12824081 12824085 12824086 12824087 12824089 12922516 12922517 12922519 12922520 12922521 12922522 12922527 12922529 12922530 12922536 12922538 12922546 12922547 12922549 12922550 12922555 12922558 12922560 12922561 12922563 12922566 12922567 12922569 12922570 12922574 12922577 12922578 12922579 13401084 13401207 13401208 13435578 13533556 14199034 14278252 14278326 14301695 14752321 14752362\n", "Chemical ID \n", "5441 1.00 0.86 None 0.87 0.80 None None None None None None None None 0.87 None None None None None None 0.83 None None None None None None None None None None None None 0.83 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.85 None None None None None None None None None None None None None None 0.84 None None None None None None None None None 0.81 0.83 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.81 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.82 None None None None None None None None None None None None None None None None None None None None None None None 0.83 None None None None None None None None None None None None None None None None None None None None None None 0.83 None None None None None None None None None None None None None None None None None None None None 0.81 None None None None None None None None None None None None None None None None 0.83 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.85 None None None None None None None None None None 0.83 None None None None None None None 0.83 None 0.83 None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.84 None None None None None\n", "5517 0.86 1.00 None 0.84 None None None None None None None None None None None None None None None None 0.92 None None None None None None None None None None None None None None None None 0.85 None None None None None None None None None None None None None None None None None None None None None None 0.90 None None 0.85 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.80 None None None None None None None None None None 0.81 None None None None None None None None None 0.84 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None\n", "5530 None None 1.00 0.84 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.85 None None None None None None None None None 0.82 None None None None None None None None None None None None None None None None None None None None None 0.81 None None None None None None None None None None None None None None None None None None None None None None None None None None 0.94 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.84 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.81 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.87 None None None None None\n", "5537 0.87 0.84 0.84 1.00 0.81 None None None None None None 0.81 None None None None None None None None 0.82 None None None None None None None None None None None None None None None None None None None None None None None None 0.89 None None None None None None None None None None None None None None None None None 0.83 None None None None None None None None None None None None None None 0.85 None None None None None None None None None 0.82 0.84 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.80 None None None None None None None None None 0.82 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.94 None None None None None None None None None None None None None None None None None None None None None None None 0.84 None None None None None None None None None None None None None None None None None None None None None None 0.84 None None None None None None None None None None None None None None None None None None None None 0.83 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.86 None None None None None None None None None None 0.84 None None None None None None None None None 0.82 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None\n", "5606 0.80 None None 0.81 1.00 None None None None None None None None None None None None None 0.90 None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.85 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.81 None None None None None None None None None None 0.80 None None 0.91 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.87 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None 0.82 None None None None None None None None None None None 0.80 None None None None None None None None None None None None None None None None None None None None None None None None None 0.84 None None None None None None None None None None None None None None None None None 0.87 None None None None None None None None None None None None None None None None None None 0.83 None None None None None None None None None None None None None None None None None None None None None None None None None 0.81 None None None None None None None None None None None None None None None None None 0.83 None None None None None None None None None None 0.81 None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None None" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sim_df.head()" ] }, { "cell_type": "code", "execution_count": 74, "metadata": { "collapsed": false }, "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", "
# NNs
Chemical ID
9751935
9748863
14561701
128225922
128225951
" ], "text/plain": [ " # NNs\n", "Chemical ID \n", "975193 5\n", "974886 3\n", "1456170 1\n", "12822592 2\n", "12822595 1" ] }, "execution_count": 74, "metadata": {}, "output_type": "execute_result" } ], "source": [ "d = sim_df.count().to_dict()\n", "nn_df = pd.DataFrame(d.items(),columns=['Chemical ID', '# NNs'])\n", "nn_df.set_index('Chemical ID',inplace=True)\n", "nn_df.head()" ] }, { "cell_type": "code", "execution_count": 75, "metadata": { "collapsed": false }, "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", "
Chemical IDROMol# NNs
Chemical ID
1282365412823654\"Mol\"/23
54415441\"Mol\"/22
1282406412824064\"Mol\"/21
55375537\"Mol\"/21
1282287312822873\"Mol\"/18
" ], "text/plain": [ " Chemical ID ROMol # NNs\n", "Chemical ID \n", "12823654 12823654 \"Mol\"/ 23\n", "5441 5441 \"Mol\"/ 22\n", "12824064 12824064 \"Mol\"/ 21\n", "5537 5537 \"Mol\"/ 21\n", "12822873 12822873 \"Mol\"/ 18" ] }, "execution_count": 75, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pd.merge(dff[['Chemical ID','ROMol']],nn_df,left_index=True, right_index=True, sort=False).sort('# NNs',ascending=False).head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So, the method seems to be working in this case. Vardenafil has the second largest number of NNs with a cutoff of 0.8. Next, we'll try one of the Tyrchan et al. methods (Frequency of Groups, FOG) and count the frequency of the derived R-Groups:" ] }, { "cell_type": "code", "execution_count": 76, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from collections import Counter\n", "rgroups = [r.replace('[9*]','[5*]').replace('[8*]','[6*]') for r in rgroups]\n", "c = Counter(rgroups)" ] }, { "cell_type": "code", "execution_count": 77, "metadata": { "collapsed": false }, "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", " \n", " \n", " \n", " \n", " \n", "
RGroupsFrequency
0[15*]CCC349
1[5*]OCC306
2[13*]C294
3[13*]CC63
4[5*]OCCC28
5[5*]O16
6[15*]C10
7[7*]OC8
8[6*]S(=O)(=O)N1CCN(C)CC18
9[6*]S(=O)(=O)N(CC)CCO7
" ], "text/plain": [ " RGroups Frequency\n", "0 [15*]CCC 349\n", "1 [5*]OCC 306\n", "2 [13*]C 294\n", "3 [13*]CC 63\n", "4 [5*]OCCC 28\n", "5 [5*]O 16\n", "6 [15*]C 10\n", "7 [7*]OC 8\n", "8 [6*]S(=O)(=O)N1CCN(C)CC1 8\n", "9 [6*]S(=O)(=O)N(CC)CCO 7" ] }, "execution_count": 77, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rgroup_counts = pd.DataFrame(c.most_common(20),columns=['RGroups','Frequency'])\n", "rgroup_counts.head(10)" ] }, { "cell_type": "code", "execution_count": 78, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAoGklEQVR4nO3deXzM1/4/8FcSkQSR\nhiyoNaj6KsKtat32uuh2NepW6fdqrdWiRVOluNXbVUXsW/VaqpSWa2mq6FXUkuJnFyK0aolWRBYS\nWSqR5f3743xHJGYm28xn5ozX8/GYh8x8Ppl5mySvOZ/zOZ9z3EREQESkAXdHF0BEVFYMLCLSBgOL\niLTBwCIibTCwiEgbDCwi0gYDi4i0wcAiIm0wsIhIGwwsItIGA4uItMHAIiJtMLCISBsMLCLSBgOL\niLTBwCIibTCwiEgbDCwi0gYDi4i0wcAiIm0wsIhIGwwsItIGA4uItMHAIiJtMLCISBsMLCLSBgOL\niLTBwCIibTCwiEgbDCwi0gYDi4i0wcAiIm0wsIhIGwwsItIGA4uItMHAIiJtMLCISBsMLCLSBgOL\niLTBwCIibTCwiEgbDCwi0gYDi4i0wcAiIm0wsIhIGwwsItIGA4uItMHAIiJtMLCISBsMLCLSBgOL\niLTBwCIibTCwiEgbDCwi0gYDi4i0wcAiIm0wsIhIGwwsItIGA4uItMHAIiJtMLCISBsMLCLSBgOL\niLTBwCIibTCwiEgbDCwi0gYDi4i0wcAiIm0wsIhIGwwsItIGA4uItMHAIiJtMLCISBsMLCLSBgOL\niLTBwCIibTCwiEgbDCwi0gYDi4i0wcAiIm0wsIhIG1UcXYDh3NyKvhaxvt3afkRkuLsvsEzhYy6Y\nSu5DRE6Fh4REpA0GljmBgUD16kDr1sDcuUBBgaMrIiLcjYeEpTEdDubmArGxwJtvAhcuALNmObQs\nIgLcRO7SDhs3t7L1Vf32G9C2LZCWZv+aiMgqHhKWxt0d8PJydBVEBAbWnfr2BU6eBG7eBE6fBgYP\nBl54wdFVERHugsDKyckp/oCbW9GQhtu/NunVC3jpJaBmTaBHD6BjR2DqVGOKJSKrXLYPKyMjA1Om\nTMEXX3yBuLg41KpVy9ElEVEluVwLKycnB5GRkWjUqBG2bNmCFStWVCqs9u7di6SkJBtWSEQV5TIt\nrMLCQixZsgSTJk2Ch4cHpk6diueffx7u7pXL5Oeeew6nTp3Ctm3b0LBhQxtVS0QV4RItrJ07d+Kh\nhx7CuHHjMGLECJw6dQp9+vSpdFgBwJo1axAaGoqOHTvixIkTNqiWiCpK68D69Vdg6NB4PPXUUwgN\nDUVcXBzGjx8PHx8fm72Gp6cnvv76azzzzDP461//iv3799vsuYmofLQMrKQkYMQIoFUrICGhMY4d\nu4AlS5bg3nvvtcvreXh4YPHixRg4cCAef/xxbN++3S6vQ1Rp58+rs9v+/urWo4d6zEVoFVjp6UB4\nONCwIXDqFLBnD7B5M9CqlX2C6nZubm6YNWsWxo4di7CwMERFRdn9NYnKrV8/dWXGhQvq1rq1esxF\naNHpnpMDzJmjhkPVrw/MmAE8/rjj6omMjMS7776LJUuWYODAgY4rhKik6tWBK1cAX191PyMDqFsX\nyM52bF024vQtrIQE9YExYwbw4YfA4cNlD6uCCsyycPz4cSxatMjqPuPHj0dERARmzIjGypVOn/dk\nD+npwMCBQO3aanaPDz4w7rXT0oBffgH27gU2bACuXy/a1r07MH26eiw9HZg2TT3mIgybraG0iT5v\n17kzEB2t9qtXD3jjDWDAgKIPjdLk5eVh8eLFiIyMxI4dO9C0adMy15mQkIDw8HBkZmZizJgxFvcb\nO3Ys/PzyMXiwG7KygOHDy/wS5ApGj1aXb506pe6/8QbwxRfqUq7ySE9Xn8ppaeqWmAhcvlx0v+Rj\nJa/cANQfy2OPqa9nzwb+/Gfgo4/U/UaNgH37Kvq/dDqGBVZZJvoEgOXLgfz8ovtubqqDvaw2b96M\n8PBwZGVlYeLEiWjQoEG56uzevTu2bt2KsLAwpKSkYMqUKRb3ffXVKqhTR11qGB8PWNmVXM3GjSqs\ngoLU/blzgd691WVdqanqlpysbqb7KSnqjJHpvulW2V6Z1NSirwcNAl58ERg3Tt2fOlW1BLdtq9xr\nOAnD+7CszeqSlgaEhgJbtwL331+xn+PGjRsRExOD0aNHo0aNGhWuMzo6Gt9++y1mzJgBt1JSdudO\noGdP9Xsxd27poUwuICBAXRwfGKjuJycDLVqoVtZzz1Xuub281KFmQIC6BQUVfW16PDi4+D5Vq6rv\nrVZNhaKL9mE5VWANHw40awaMHVv26ap++UV90FX2d6SyDh5UXQW9ewMLFqhZaciFDRgAFBYCM2eq\n+6NHA2vWALt3q0MyEy8v4N57VWiYhhr4+6u+DnOP+ftXrq5OnYBu3QBTd8a0aaqmPXsq97zOQgxm\n6RX37xfp1EmkoMD6fiZJSSKvvSZSpYpIv362rdGctDSRnBzr+5w8KVK3rkjfviI3b9q/JnKgq1dF\nXnxRxN9fJDhY5JNPROrUEcnMFNm9W/0yXLkikp9vbF1nzog8/bSIn5+6/e1vImfPGluDHTlNC6tT\nJ2DpUnUoaG0/QPVxNW2qWsXTpqlOent78UXVVRAVpc4cW/LLL8ATT6hD2zVrAG9v+9dWEaWdBBEB\nJkwAFi1S+w4bBkyezMNdixYsUGftvvrK0ZW4NKc5cPl//w9o2fLO6arMqVJF9XMdOGBMWAHA/Pnq\nhE7nzqrv1JIWLYAdO1SoOnO3gWrDWt6+aBGwfTtw9Chw5Ih6vz//3Lj6nF6/fsClS+qXYvVqdcbl\nvfccXZVl69erT13nH3ZpldO0sCq6n5FSUoAnnwQefhj47DNHV2Mb1lq8//oX8Le/qfv//S/wySeu\n0xVSaUuXqjcoPV31WUVGAu3a2e/18vLUp4jpzGJWlurgL4t164A+fdTX8+eX77S7kzEssMq7oLIz\nBhagzmS6uQH33FO2/cuz0LQj/r+W3mc/P+DcOXUCClBhfd99XIujUlJSioY3XL1a/ExRQYEaEW3a\nJy0NuHGj6OxNYaE6E2gaDO3mplZ28vQs/XXz84FHH1WHJF5ewKFD6pIdDWlxaY4rKC2A7RnQmZlq\n4HP9+mV/XQ8PNUbR9PeQlwf4+BQfI3c3OnjwINq1awfPsgRFST4+xQd+ZmYCtw+98fNTwxBMrl4F\nbp98sm5dFVwBAWo4RVRU2c8q/vwz8Kc/AX/8oVqC+/cXDYXQCNcl1MzNm6rr5PbB0CUHR5sbGF23\nrnqsrGrUUCFnamGlp5f9SgNXdfXqVXTt2hWrV69GWFhY+Z8gIED98ExSU4sHVv/+6tMjMFDtWzIU\nExMrVjigzmZFRKjZA44dAz7+WN004/AW1u+/qxkw9u61fvZNd+VpYaWmqj4y09FByQHTeXlqPy+v\nonGDwcFFv+emsYam8YaBgepmbqZo9mGV3cSJE7FlyxYcOXKkYk/www9FPzTTD8vDw7ZFWiOiBgtu\n2aLOXP30k+qQ1YjDAys/X31yb99efLydyZEj6o93yRLja7Ol8gRWcrK6wsIUPoGBKpBK3q9Z0351\n/fvfwOLFqr8WUANiX3sNeOWVyr+mjtLT09GoUSMsXLgQ//jHPxxdjnVnz6rpTebMuXMEc0IC0KYN\ncO0aEBICHD9evJXn7Bwz/Ku4P/1JZP5889tiY0Xc3UUyMoytydZKe6eN/kkUDWwout2usFDk7bdF\n7rlH3caPV4/drSIiIqR58+aSb/RA0PI6elSkRg31A5061fw+K1cW/dBfe83Y+irJKcZhhYaqoDen\nRQt14fnd3tlra+Yi63Zubuq6WVO/2JQpd++g0Rs3bmDWrFl4++234WHkIVxFtGkDPPCAan7Xq2d+\nn5deAv73f9XX//438P33xtVXSU4RWG3bqn5Aczw9gYkTK3+JFVVMZfp5XcXSpUvh7e2NQYMGmd0e\nHx+PBx54ANeuXTO2MHM8PNRo+5gYFUyW/Pvf6rSxiDrOv3rVsBIrwykCKzQUiI0t6kx2JaUtNF3a\ndkc6cEC1cM+dc3QljpOXl4fIyEiEh4dbHMowZcoUBAcHO89ivSEhQJMm1ve55x41+NXNTX0qvfqq\nIaVVlsM73QE19OSee4ATJ1RrVkc5Oc5z3WB8vFp3IClJnWns2rXi72u/fmoWlf37yzZG0dV8+eWX\nGDNmDOLj41HdzGnshIQENG3aFJs2bcLjjpy325rTp9Ug09DQO7e99ppqbQGqZfbii4aWVm6O7kQz\nadpUZMUK89suXRIZMsT4C9/L6rffRGrVEomPt7xPRWtPTBRJTi7+2FdfqRkqnnlG5JFHRNauLb79\n9ddFfH1FmjVT2zdsqNhri4ikp4s0bCjy/vsVfw5dFRQUyP333y8ffPCBxX3Wr18vDz/8sIFVldNn\nn4l4e4vcd59Idvad27Oz1TZAze5w8aLhJZaH0wTW88+LjBljfltGhjpTGBtrbE1lNWqUSOfOlrfv\n3i3SvHnFppyZP//Okz3r1omEh4t88IHInDkiMTHlf97y2L5dxNNTTQF0N/nmm2/E19dXrl69anU/\npz5zuGWLiJubCqQhQ8zvs2+fiIeH2qdbN6c+Hew0gfXRR+q9sqR5c8stMEdKThapVk39XljSrZvI\nyJHG1WQPI0eqVnBmpqMrMU6HDh1kjKVPUZ0MGqTCyM1NDXswZ+LEohPG8+YZW185OE1gffedSO3a\nlrf36WO5BeZI0dFqvjRLH0p794pUraoOG52dtQkKs7NFWrQQGTHCuHocadu2beLt7S2JiYmOLqXy\nsrJEuna1/qmalyfSoYMKrGrVRH7+2bj6ysEpOt0BdYlOw4bAb78B5taNmDfvAI4cOYBly94wvrhK\n+Pvf1QmFZcscXEgpEhKADh3UvGSNGpnf58gRdclOVJRLrRxlVrdu3dCsWTMsXLjQ7Pa1a9ciJycH\n/fv3N7gyOzp9Wl0gfeMG0L69c55pcXRi3u7Pf74mP/xgvtNv8+bNUttaE8wJxcaqroHTpx1dSdls\n315698W//qWmgU5NNaYmR9i7d69UqVJFzp07Z3Z7bm6uNGjQQD799FODKzPAjBlFh4ZWTjY4ilOM\nwzLx9u6D/fuXmd3WoUMHvP3228jTaLBWZCTw7LNF0z47u27dSh8H9t57aryhJsN2KmTq1Kno06cP\nQkJCzG5ftWoVCgoKMGTIEIMrs5HoaKBVK3XNYUnh4WruLEDNiX3ihLG1lcbRiXm7MWPGSK9evRxd\nRpksXy4yaZLl7b/+qlpXBw8aV5NRYmJEunXbI2vWrC19Z83ExsaKu7u7HD9+3OI+HTp0kE8++cTA\nqmzIdJbI2hnB339XHcrvv6/6tpyIUwXWihUrJCQkxNFllCovL086d/5ZIiMt7zN8uMjjjxtXky1d\nvCjywgvmh+2YzJw5U/z8/OSik4/bKa9+/fpJWFiY1X1SUlIkU+fTpRERRYd9M2aY38dJTzY4VWDF\nxsaKm5ubpKenO7oUq1auXCm1a9eWjAzzp9USEkS8vER+/NHgwmwkN1ckNNTysB0RNaiya9eu8vjj\nj0uhE4/bKY+zZ8+Kh4eH7Hf1AWd5eSIPP6wCq6ynfc1dL1+zpn3rNFeG4a9oRV5ennh7e8vu3bvN\nbj958qSEh4cbW1QJptHPH374ocV9xo5VI8x1Fhcn4uNz5yj62126dEn8/f1lnhOP2ymP119/XTpb\nGwHsSn79VWTTpop//7p16hfdYE4VWCIiDz74oMyZM8fstri4OIe3wNavXy++vr5y7do1s9vT0nLk\nnnsKrP6h62LKFJHu3U9JqpVTgitWrJBq1arJz046bqesLl++LF5eXrLFylilr776SjJ0n5jNVh56\nSF0zZzCnOksIAKGhoThuYXKsFi1awMfHx+J2I9SuXRuTJ0+Gv4X5bj79dDr+9Kde6NXL4MLsYOzY\nAuTlheOYpbl/APTr1w89evTASy+9pNUZ3JLmzJmD1q1b46mnnjK7fd++fRg0aBDSuGwQ8N136izj\nvfca/9qGR2Qp5s+fL+3bt7e4/aGHHrLYAnO0zMxMqVWrlixfvtzRpRgqLS1N6tevLx999JGjS6mw\n5557TlatWmVxe8+ePWXAgAEGVuTEHnpI5NQph7y00wXWnj17xMvLS25auFJ4586dctpJR2LOnDlT\nGjdubLF2V7Z161bx9PSUgy44jiM7O1tatmwpsc569b2Rvv9epEcPh72801yaY5KVlQU/Pz/ExMSg\ntRMt9lhQUGB1etybN28iJCQEEyZMwMiRIw2szDhnz55F06ZN4WZhdOnrr7+OXbt24ciRI/Dx8TG4\nOjJEp07AtGnmV4wxgNP1YdWoUQNNmzZFTEyMo0sppn///pg8ebLF7StWrEBhYSFecdFlZXJzc/HX\nv/4Vc+fOtbhPZGQkcnNzsXnzZgMrq7zOnTtbDGG6zfbt6lIIB4UV4ISBBVjveHeE/Px8pKWlWeyQ\nLSgoQEREBEaNGgVvZ5l21Ma8vLywYMECjB8/3uLPxtfXF0ePHkXv3r0Nrq7ili9fjnyucFI2H38M\njBvn0BKc7pAQAM6dOwdvb2/cW4mzECKC0aNHo3HjxmjatClCQkLQqlUrG1ZZZO3atRg6dCguXryI\nmrZYLNCJ9e3bF2fOnMHBgwedfwWZUqSlpSE0NBRbt27F/fffDyf8U7Cv69eBzEx1caguHNZ7ZmeZ\nmZnSt29f6dixowQGBoq/v3+x7dnZ2RIeHi5z586VTZs2Vbgjv7CwUNq2bSsTJkywRdlO7+rVq7Jm\nzZoy7bt582b5y1/+Il5eXlK3bl0ZOHCgXLlyxc4V3qmgoMDspTTDhg2TadOmiYiIC/8pWPbxx+qS\njNdeMz+Hd3KyyB9/GF+XFc7Rwrq9/8BcOd9/r6Y+OHBArbf+5JPqfnBwmV/ixo0bxTqCk5OT8cYb\nb+D8+fM4f/48/Pz8cK4Cy8Ns2bIFvXr1Qnx8PIKCgsr9/a6sa9euGDVqFLp06QIPDw/MmjULu3fv\nxo8//ljh5xQRJCYmIi0tDWlpaUhMTMTly5dv3Tf3WE5ODh599FH89NNPt57nwIEDeOutt/DTTz/B\n3d0dbm5ud1cLKytLTXx27RoQFgZs3HjnPv37A1u3AhMmAKNHG1+jGc4RWCaW1k3v2hUYNQro0kWt\nuzZrFrB7N1CJX/ySSgZaWXXu3BkPPPAAPv30U5vV4qqysrIQHByM7OzsYo/fuHEDqampSE5ORnJy\nMlJTU5GamoqUlBQkJSXdup+amoqkpCRcv34dAODu7o7atWsjICCg2C0oKAgBAQHFttWrV69YF0On\nTp2wdOlS3P9/c//cdYG1cqUKJADYtQvo3Ln49l9/BVq2BAoK1MKgkyYZXqI5egRWSVlZqnVV4hff\naLGxsWjXrh1+/vlnNGvWzKG1OLvs7GzMmzcPe/bswaZNm/Dyyy9jx44dSE1NvRVgNWrUQO3atREc\nHHxH4JhCqOTjFT27Z+n7nOnPwe7++19g0ybA3Ift0KHA4sVA9erAxYtA7drG12eGfoGVnQ3Mmwfs\n2aPebAeLi4uzW2e+qzCFQ1BQEPbu3YtmzZohOjoaOTk5xYLIkWdYy9LCSkpKQmBgINzdnfLkuu0k\nJABNm6q1DEeNAqwMZTGaXoFl+lQMCgL27gXYqtFGRkYGZs6ciR07diA6OtrR5dyhtMAqKCjA//zP\n/2D48OEY7ST9OXYzZgwwcyZQtaqaldTcIgsOoldgAWqZ6JkzgR07gOhotGzZEjVr1kRISAiaNGmC\nJk2a3Pq6YcOGqFKlSiXKKTpsMPc2bdmyBdOmTcO+ffvg7++P7t27IzIyErWdpPnsbDIyMlCvXj1k\nZWU5upQK2bp1K5599lkcOHAAbdu2dXQ5FRMdrfqlunQxvz01FWjcWB3JDBzodKun6BdYgAqtevUg\nmZnYvHkzLly4gAsXLiA+Pv7Wv+np6ahSpQoaNGhgNsxCQkIQGBhYxrLMf/o++eSTGD16NB577DH8\n8ccfeO+993Dp0iVscoJDVWcwYMAA/POf/0SzZs1w5coVTJ06FRcuXHDa92fnzp1YtGgRvv76a4t9\nXEOGDMGxY8ewf/9+VK1a1eAKbaBDB+DwYaBfP2DFiju3f/AB8OGHgLs7EBfnfAsSGDmGolSWyunf\nX10dfvOmWuBv5Ei1TrsV165dk6NHj8r69etlxowZMnLkSAkLC5NWrVpJtWrVBIDUqFFDWrduLT17\n9pQ333xTFixYYKGssr1NGRkZUtMBszA6qzVr1kibNm2katWq0qBBAxk2bFipqyg7UnJysgQHB8vM\nmTMt7pORkSFLly7Vc5bVLVuKZgv9/PM7t2dkiNSqpbY/95zx9ZWBcwSWuelXb7dmjUibNmpF0gYN\nRIYNE6nkL/6VK1dk//79smrVKomIiJChQ4fK4MGDLZRXtrfp22+/lccee6xSdekgJSVF3nrrLcm2\nNum7pjZs2CBeXl5y4sQJR5die126qL+tRo3Uh39J06cX/f056awbzhFYTq4sgXX06FGpX7++HDt2\nzP4FOdj06dOlTZs2FlsZhw4dkilTphhcle0MHjxY2rVrJ7m5uY4uxbZ27BD5299EzLUgb9wQqVNH\nhZUTr57CwCqD0gJr586dUr9+fYtz0buagoICuWRletywsDDp37+/gRXZVmZmpjRr1kwmTpxodb9z\n585JpLWlk3SycGFR68qJV09hYJWBtcBavXq11KtXTw4cOGBgRc7r6NGj4u7uLqccNCOlrezZs0c8\nPT0lOjra4j4nT54Ub29vWav7BP55eSIhISqsnHz1FAZWGVgKrBkzZkjDhg21/+O0pb59+0rPnj0d\nXYZNjB07VkJCQqwuPBEZGSkBAQEOuai7zE6cML9gqsnXXxe1rqKiDCurIhhYVgC441badgDFZgY4\nfPiwdOrUSf5wsqveK+L777+XQ4cOWdx+5swZ8fDwcJnWZk5OjrRp00aGDx9ucZ/8/Hx55JFHZOrU\nqQZWVg7x8SKeniJt24ocPnzn9sJCdUILEHngAevB5gQYWHZm+qV//fXXHV1KpeTm5kr9+vVl7ty5\nFvcZNmyYdOnSxcCq7C8mJka8vLxkk5U1/K5fv25gReU0fLgKIx8fkaSkO7dv3FjUutJg8RQGlg38\n8MMPVg8Ljx07JlWrVpXvv//ewKpsa/ny5RIUFGRxKENCQoJ4eXnJ1q1bDa7M/iIiIqRu3bpW12d0\nSqYlyAE1dtGcjh3V9saNzQ91cDIufhWnMVatWoX+/ftbXJcvNDQUEydOxPnz5w2uzDYKCwsxZcoU\nhIeHo1q1amb3mT17Nlq3bo0nnnjC4Orsb9y4cbjvvvvw6quvlrrvzZs3UVhYaEBVZZCfD/TqBXh7\nm5/PavduNcccoK4f9PQ0tr6KcHRiuoKsrCxp3ry5jBs3ztGl2MWmTYXy6KNbLK52fe3aNfH19ZV1\n69YZXJlxzp8/L76+vrJy5Uqr+3Xr1k1mzZplTFFlZWmQ9VNPqdZVnTpqHJYGGFg2sm/fPvH09JRd\nu3Y5uhSbe/ttkdGjLW//+OOPpVWrVnperlIOixYtEj8/P7l48aLFfaKiosTHx8fqODWncOhQUd/V\nJ584upoyc66LnzX3zjvvYPXq1YiJibG6GMXvv/+OqlWrIrgcUzw7WkGBmuy1pKysLDRu3BjTp0/H\noEGDDK/LaD169MCNGzewbds2ixdIHz58GA8++KDBlZVTnz7AunXAPfeoCfp0WTzF0YnpSm7evCkP\nPvigDBkyxOp+vXr1ku7du7tEi2Tx4lTp3j1ccnJyHF2KIZKTkyUoKMjq2VK7ysgQOXNGZO9ekQ0b\nKnZNbVyciLu7al1ptngKA8vG4uLixMfHx2p/TkJCgtSqVUtmz55tYGW2l5srUr++yJw5jq7EWFFR\nUeLt7S0nT560/ZN/953I5MnqGLxfPxUut+vcufgkAdu3l/81Zs9W3+vlpc4kaoSBZQfTp0+XwMBA\nq6Ofly1bJtWrV5f4+HgDKyuf8ePVB7klS5eKBAWJuOCkDaXq37+/tG/fXm6WdyjAqFEi990nEhgo\nUqWKyObNxbf36FE8kEqOPO/du/j2Vasq9h84eFDks88q9r0OxMCyg4KCAunSpUupl6h88803TntY\neOKEiIeHmobMnIICkRYttOqvtan09HRp1KiRvP/+++X7xn79igfOsmXFt7/8soivr0jz5iKdOon8\n97/Ftx86pOa1iokRuXRJ5C45FDdhp7udXLp0CW3atMHMmTO17Ix+6SW1ONGGDea3r18PvPKKXv21\ntvbDDz/g2WefxcGDB8s+ZfLq1WrGz+BgIDAQePRRY9YmOH5cLTO/dy/g56eWnX/5Zfu/rq05OjFd\n2RdffCE1a9aUCxcuOLqUcrl6VcTbW+Snn8xvLywUCQ0V+ec/ja3LGX3zzTdyw9nHMP3yi5r4cuVK\nkWvXRC5eFOnb19FVVQhbWHbWp08fXLlyBbt27YKHuXEBABITE/Hhhx9izpw58PLyMrhC8y5dAurX\nN79t2zbg738HLlxQCxiRk3vxReDPfwZGjHB0JZXGS3Ps7LPPPsPZs2cxe/Zsi/v4+flh165deOed\nd4wrrBSWwgoAIiKAIUMYVndwc7vzZpQbN4DffweOHFELpB4/XrRtxw4gKQmoV08tiDpwIJCeblxt\nNlTxNbCoTAICArBo0SL06dMHTzzxBNq0aXPHPtWqVcOSJUuwa9cu4wssp337VDfI8uWOrsRJ2eKA\nJS8PSEkBEhOBy5eBtDR1K3nf9Fha2p3PMWQIsGSJ+jo1VTWHY2LU/fBwdW3hF19UvlaD8ZDQIK+8\n8gqOHDmCAwcO6Lk81P/5+98Bf38tf9ftz9oydampxW/Jyepmup+SolpBpvu5uZWrpWdP4Ntv1dd+\nfmpBVNOydsnJQKtW6jU1w8AySHZ2NkJDQ9GnTx9MnjzZYXWkpQFffQVcvapuw4ap392yOHkSaNdO\n/duihX3r1JKbGxAQAPzxBxASArz6quo38vBQl8Bcv165569eXYVOcLB6HdPNdMbRdD8oSN1q1FDf\n99hj6rSu6Rg+KQl44AEtA4uHhAapXr06li1bhi5duuDpp5/GX/7ylwo9z82bNyEixTrnt23bhujo\naKSmpiI31x/nzk2+9aFdvbo6GjDJyQFWrlRdGQEB6n5ZVami+q8YVhaYPvtzc4HYWODNN9WbP2uW\nCpTbA6tqVdVRWLeuarL6+6s+ptvv3/6Yj0/F6xo8GHjrLbViOqDq6tGj4s/nQGxhGWz8+PFYu3Yt\njh8/Dl9f3zJ9z7x58zB//nwkJSXh+vXriIiIwIQJE25t//zzz7Fx40bUrl0bdes2hb//O7c+cOvW\nVa0icoDffgPatlXN2m3bVEvr9paQkfNPvf8+sGCBuoo9LAyYO1e1+jTDwDJYbm4uOnbsiI4dO2Lh\nwoVl+p6jR4/i9OnTCAoKQnBwMOrXr49atWrZuVIAW7YA06apnnZ/f6B7dyAyUjXPqHSXLgEPPghc\nueLoSlwGhzUYzMvLC0uXLkViYqLFGUpLat++PV566aVbZxkNCStAHUKMHauOLWNi1DHhwIHGvLaO\n+vZVHXw3bwKnT6tDsRdecHRVLoUtLCq7zEzV71LZzmNXtXYtMGkS8Msv6n36xz+Ad99VUxSTTTCw\nnMDtE8E59Y9jwwZgxgwgOtrRldBdimcJnYAppCzNYGmf1ywa/mMaFuTjAzzzjIVvOHYMGDkS2LjR\nsBqJSmJguQgRQWpqKlJTU5GeHoArVwKRlKQCyRRKiYnFQ6qgQH1vtWrqpFWXLhYCa9cuoH9/NYAr\nNNTA/xVRcTwkdCJubm7FDgkTEhJw+fLlW0F09epVpKamIiUlBSkpKbceN20zLS/VrdsW/PLLUwgK\nKhpjGBhYNJ7QdGa9Th31dfXqVor6z3/UGJ6oKOChh+z8DhBZx8ByIiUDq3Pnzjh+/Djuvfde+Pv7\n37rVq1cPdevWLfaY6XF/f3/bFTRzJjBnjhre0LKl7Z6XqIIYWE6kZGBlZWWhWrVqcHd30OgTS31q\nmZlFl30QGYiB5URKBhYRFceBo0SkDZ4ldAK3D2cwfc2WFtGd2MIy0OXLlzF16lTk5+cXe1zU6kXF\nbkR0JwaWgaZNm4bvvvsOVaqwYUtUEfzLMUhKSgoWLVqE//znP44uhUhbbGEZZP78+WjRogXCwsLM\nbj9z5gxOnTplcFVEeuGwBgNkZmaiUaNG+PTTT9G3b1+z+/Tu3RseHh5sgRFZwUNCAyxcuBABAQF4\nwcLcSCdPnkRUVBRiTKuaEJFZbGHZWU5ODpo0aYKPPvoIr776qtl9BgwYgLS0NGzkTAhEVrGFZWdf\nfvklqlatikGDBpndHh8fj1WrVmHPnj3GFkakIXa621F+fj4iIyPx5ptvwtPCggPTp09Hp06d0LFj\nR4OrI9IPW1h2tG7dOmRmZmLo0KFmtycmJuLzzz9HVFSUwZUR6YktLDsREURERGDkyJGobmHCqblz\n56JVq1Z4+umnDa6OSE9sYdnJjR9/xGOBgRgxYoTZ7enp6ViwYAEWL15scGVE+mILy06q/etfmN++\nPWpbWMPvs88+Q506dfD8888bXBmRvtjCsofoaOD4ceDbb81uvnHjBmbPno1PPvkEHh4extZGpDG2\nsOwhIgIYMEBNqG7GmXXrUC8oCP369TO4MCK9ceCorR0+DDzyiFpMMyTkzu0FBUCLFsCwYcDbbxtf\nH5HGGFi21qcP4OkJfP21+e0rVgBjxgAXLpSyXA0RlcQ+LFuKi1PLYR09an57YaE6XBw5kmFFVAFs\nYdnS4MFqldJNm8xv37ABGDgQuHgR8PMztjYiF8AWlq1cvKhWRo6OtrzP5Mmq74phRVQhDCxbmTFD\ndbY//LD57Tt2ALGxwHffGVsXkQvhIaEtJCaqM4JRUYCly2yeeAJo3hxYsMDY2ohcCFtYtpCfD4wY\nATz1lPnt+/cDu3YBixYZWhaRq2ELywjPP6/OCn75paMrIdIaW1j2Fhenzg7Gxjq6EiLt8dIce/v5\nZ+DFF4GWLR1dCZH2eEhoCyLAhAmqj8rNTQ1dmDxZfU1ENsNDQltYtAjYvr1ohHvv3kDTpsArrzi2\nLiIXw0NCW1i+HJg0CWjSRN0mTQKWLXN0VUQuh4eEtuDnB5w7BwQEqPspKcB99wFpaY6ti8jFMLBs\nwcMDyMlRszQAQF4e4OOjxmcRkc3wkNAWatQArl8vup+eDvj6OqwcIlfFwLKFVq2AQ4eK7h8+rB4j\nIpviWUJbGDAAePdd4P771f133wVee82xNRG5IAaWLQwbBpw/D7RvX3R/yBDH1kTkgtjpTkTaYB8W\nEWmDgUVE2mBgEZE2GFhEpA0GFhFpg4FFRNpgYBGRNhhYRKQNBhYRaYOBRUTaYGARkTYYWESkDQYW\nEWmDgUVE2mBgEZE2GFhEpA0GFhFpg4FFRNpgYBGRNhhYRKQNBhYRaYOBRUTaYGARkTYYWESkDQYW\nEWmDgUVE2mBgEZE2GFhEpA0GFhFpg4FFRNpgYBGRNhhYRKQNBhYRaYOBRUTaYGARkTYYWESkDQYW\nEWmDgUVE2mBgEZE2GFhEpA0GFhFpg4FFRNpgYBGRNhhYRKQNBhYRaYOBRUTaYGARkTYYWESkDQYW\nEWmDgUVE2mBgEZE2GFhEpA0GFhFpg4FFRNpgYBGRNhhYRKQNBhYRaYOBRUTaYGARkTYYWESkDQYW\nEWmDgUVE2mBgEZE2GFhEpA0GFhFpg4FFRNpgYBGRNhhYRKQNBhYRaYOBRUTaYGARkTYYWESkDQYW\nEWmDgUVE2mBgEZE2GFhEpA0GFhFpg4FFRNpgYBGRNhhYRKQNBhYRaeP/A1ElltG/3WC9AAAAAElF\nTkSuQmCC\n", "text/plain": [ "" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Draw.MolToImage(core,includeAtomNumbers=True,highlightAtoms=pind)" ] }, { "cell_type": "code", "execution_count": 79, "metadata": { "collapsed": false, "scrolled": false }, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
RGroupsFrequencyROMol
0[15*]CCC349\"Mol\"/
1[5*]OCC306\"Mol\"/
2[13*]C294\"Mol\"/
3[13*]CC63\"Mol\"/
4[5*]OCCC28\"Mol\"/
5[5*]O16\"Mol\"/
6[15*]C10\"Mol\"/
7[7*]OC8\"Mol\"/
8[6*]S(=O)(=O)N1CCN(C)CC18\"Mol\"/
9[6*]S(=O)(=O)N(CC)CCO7\"Mol\"/
" ], "text/plain": [ " RGroups Frequency ROMol\n", "0 [15*]CCC 349 \"Mol\"/\n", "1 [5*]OCC 306 \"Mol\"/\n", "2 [13*]C 294 \"Mol\"/\n", "3 [13*]CC 63 \"Mol\"/\n", "4 [5*]OCCC 28 \"Mol\"/\n", "5 [5*]O 16 \"Mol\"/\n", "6 [15*]C 10 \"Mol\"/\n", "7 [7*]OC 8 \"Mol\"/\n", "8 [6*]S(=O)(=O)N1CCN(C)CC1 8 \"Mol\"/\n", "9 [6*]S(=O)(=O)N(CC)CCO 7 \"Mol\"/" ] }, "execution_count": 79, "metadata": {}, "output_type": "execute_result" } ], "source": [ "PandasTools.AddMoleculeColumnToFrame(rgroup_counts, smilesCol = 'RGroups')\n", "rgroup_counts.head(10)" ] }, { "cell_type": "code", "execution_count": 80, "metadata": { "collapsed": false }, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
RGroupsFrequencyROMol
8[6*]S(=O)(=O)N1CCN(C)CC18\"Mol\"/
9[6*]S(=O)(=O)N(CC)CCO7\"Mol\"/
10[6*]S(=O)(=O)Cl6\"Mol\"/
11[6*]S(=O)(=O)N1CCN(CC)CC14\"Mol\"/
12[6*]S(=O)(=O)N1CCC(O)CC14\"Mol\"/
13[6*]S(=O)(=O)NCCCN1CCOCC14\"Mol\"/
14[6*]S(=O)(=O)N(CC)CC4\"Mol\"/
15[6*]S(=O)(=O)N1CCN(CCO)CC14\"Mol\"/
16[6*]S(=O)(=O)N(C)CCN(C)C3\"Mol\"/
17[6*]S(=O)(=O)N1CCN(C(C)C)CC13\"Mol\"/
" ], "text/plain": [ " RGroups Frequency ROMol\n", "8 [6*]S(=O)(=O)N1CCN(C)CC1 8 \"Mol\"/\n", "9 [6*]S(=O)(=O)N(CC)CCO 7 \"Mol\"/\n", "10 [6*]S(=O)(=O)Cl 6 \"Mol\"/\n", "11 [6*]S(=O)(=O)N1CCN(CC)CC1 4 \"Mol\"/\n", "12 [6*]S(=O)(=O)N1CCC(O)CC1 4 \"Mol\"/\n", "13 [6*]S(=O)(=O)NCCCN1CCOCC1 4 \"Mol\"/\n", "14 [6*]S(=O)(=O)N(CC)CC 4 \"Mol\"/\n", "15 [6*]S(=O)(=O)N1CCN(CCO)CC1 4 \"Mol\"/\n", "16 [6*]S(=O)(=O)N(C)CCN(C)C 3 \"Mol\"/\n", "17 [6*]S(=O)(=O)N1CCN(C(C)C)CC1 3 \"Mol\"/" ] }, "execution_count": 80, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rgroup_counts[[r.startswith('[6*]') for r in rgroup_counts.RGroups]].head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Although the most frequent R-groups in positions 9 and 11 correspond to those in Vardenafil (see below), the exact piperazine R-group in position 6 is the 5th most frequent one in that position." ] }, { "cell_type": "code", "execution_count": 81, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SCHEMBL IDROMol
Chemical ID
5441SCHEMBL5441\"Mol\"/
" ], "text/plain": [ " SCHEMBL ID ROMol\n", "Chemical ID \n", "5441 SCHEMBL5441 \"Mol\"/" ] }, "execution_count": 81, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dff.ix[dff.InChIKey == 'SECKRCOLJRRGGV-UHFFFAOYSA-N',['SCHEMBL ID','ROMol']]" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.11" }, "widgets": { "state": {}, "version": "1.1.2" } }, "nbformat": 4, "nbformat_minor": 0 }