{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Similarity sequences analysis\n", "--------------------------------------------------------------------------------\n", "\n", "\n", "Author: Belén Otero Carrasco\n", "\n", "Last updated 24 April 2024\n", "\n", "--------------------------------------------------------------------------------" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\Users\\Usuario\\anaconda3\\lib\\site-packages\\pandas\\core\\computation\\expressions.py:20: UserWarning: Pandas requires version '2.7.3' or newer of 'numexpr' (version '2.7.1' currently installed).\n", " from pandas.core.computation.check import NUMEXPR_INSTALLED\n" ] } ], "source": [ "import pandas as pd\n", "import numpy as np\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt\n", "from pandas import DataFrame\n", "from scipy import stats\n", "from sklearn.metrics import jaccard_score\n", "from sklearn.metrics import pairwise_distances\n", "from statsmodels.stats.diagnostic import lilliefors\n", "from scipy.stats import mannwhitneyu, levene\n", "import mysql.connector\n", "import re" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Similarity by datasets" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "simi_treatvscan = pd.read_csv((\"AllProteins_SimilitudTreatmentvsCancers.csv\"),sep= \",\")" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "simi_treat = pd.read_csv((\"AllProteins_SimilitudLungCancerTreatment.csv\"),sep= \",\")" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "simi_full = pd.read_csv((\"AllProteins_SimilitudLungCancerFullConMismaProt.csv\"),sep= \",\")" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "simi_dise_lung = pd.read_csv((\"AllProteins_SimilitudLungCancerDisease.csv\"),sep= \",\")" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "simi_immune= pd.read_csv((\"AllProteins_%SimilitudAutoimmuneDisease.csv\"),sep= \",\")" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "simi_rare = pd.read_csv((\"AllProteins_%SimilitudRareDisease.csv\"),sep= \",\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Describe data " ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SimilaridadSimilaridadAAsimilaridadAA_2similaridadBlosum
count302224.000000302224.000000302224.000000302224.000000
mean28.81392650.54919236.30573058.704623
std8.60100720.28952711.5447294.926356
min0.4549530.4549530.45495342.046609
25%23.05209734.77818228.50378855.509709
50%30.63980952.89719638.69969059.215168
75%36.09785268.61386146.05263262.269854
max99.667406100.00000099.83370399.761791
\n", "
" ], "text/plain": [ " Similaridad SimilaridadAA similaridadAA_2 similaridadBlosum\n", "count 302224.000000 302224.000000 302224.000000 302224.000000\n", "mean 28.813926 50.549192 36.305730 58.704623\n", "std 8.601007 20.289527 11.544729 4.926356\n", "min 0.454953 0.454953 0.454953 42.046609\n", "25% 23.052097 34.778182 28.503788 55.509709\n", "50% 30.639809 52.897196 38.699690 59.215168\n", "75% 36.097852 68.613861 46.052632 62.269854\n", "max 99.667406 100.000000 99.833703 99.761791" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "simi_treatvscan.describe()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SimilaridadSimilaridadAAsimilaridadAA_2similaridadBlosum
count2652.0000002652.0000002652.0000002652.000000
mean31.35162855.80020339.52946260.427545
std9.01826419.70262811.5320155.487288
min2.5892512.5892512.58925145.132024
25%26.90615843.05324533.69205357.680352
50%32.74633358.35943641.71160860.456817
75%37.54139173.14241548.13432863.578275
max90.37145797.18237793.69877096.598599
\n", "
" ], "text/plain": [ " Similaridad SimilaridadAA similaridadAA_2 similaridadBlosum\n", "count 2652.000000 2652.000000 2652.000000 2652.000000\n", "mean 31.351628 55.800203 39.529462 60.427545\n", "std 9.018264 19.702628 11.532015 5.487288\n", "min 2.589251 2.589251 2.589251 45.132024\n", "25% 26.906158 43.053245 33.692053 57.680352\n", "50% 32.746333 58.359436 41.711608 60.456817\n", "75% 37.541391 73.142415 48.134328 63.578275\n", "max 90.371457 97.182377 93.698770 96.598599" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "simi_treat.describe()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "df_full = simi_full[simi_full['Proteina1'] != simi_full['Proteina2']]" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SimilaridadSimilaridadAAsimilaridadAA_2similaridadBlosum
count909162.000000909162.000000909162.000000909162.000000
mean27.71012247.83037034.73989357.857934
std9.01490320.66722211.9538574.856046
min0.9371750.9371750.93717542.213826
25%21.20879130.98739526.03092854.467975
50%28.99590248.69718336.46272958.269577
75%35.39232166.27043144.97528861.653818
max99.58904199.79452199.58904199.707003
\n", "
" ], "text/plain": [ " Similaridad SimilaridadAA similaridadAA_2 similaridadBlosum\n", "count 909162.000000 909162.000000 909162.000000 909162.000000\n", "mean 27.710122 47.830370 34.739893 57.857934\n", "std 9.014903 20.667222 11.953857 4.856046\n", "min 0.937175 0.937175 0.937175 42.213826\n", "25% 21.208791 30.987395 26.030928 54.467975\n", "50% 28.995902 48.697183 36.462729 58.269577\n", "75% 35.392321 66.270431 44.975288 61.653818\n", "max 99.589041 99.794521 99.589041 99.707003" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_full.describe()" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SimilaridadSimilaridadAAsimilaridadAA_2similaridadBlosum
count812702.000000812702.000000812702.000000812702.000000
mean27.55270847.45943834.52093457.740908
std9.06939020.71544312.0108124.835662
min0.9371750.9371750.93717542.213826
25%20.96188730.46992525.68439454.330444
50%28.79245348.20652236.18328758.146147
75%35.27562365.93264244.80198061.558045
max99.58904199.79452199.58904199.707003
\n", "
" ], "text/plain": [ " Similaridad SimilaridadAA similaridadAA_2 similaridadBlosum\n", "count 812702.000000 812702.000000 812702.000000 812702.000000\n", "mean 27.552708 47.459438 34.520934 57.740908\n", "std 9.069390 20.715443 12.010812 4.835662\n", "min 0.937175 0.937175 0.937175 42.213826\n", "25% 20.961887 30.469925 25.684394 54.330444\n", "50% 28.792453 48.206522 36.183287 58.146147\n", "75% 35.275623 65.932642 44.801980 61.558045\n", "max 99.589041 99.794521 99.589041 99.707003" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "simi_dise_lung.describe()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SimilaridadSimilaridadAAsimilaridadAA_2similaridadBlosum
count140244.000000140244.000000140244.000000140244.000000
mean29.47142352.05898937.19433959.039481
std8.17387719.55767610.9911074.755932
min1.3186811.3186811.31868142.192479
25%24.02902437.00762429.82686356.054807
50%31.41447454.88629939.69240859.588976
75%36.30820469.35307046.32015762.390552
max98.20224799.43820298.93258499.176556
\n", "
" ], "text/plain": [ " Similaridad SimilaridadAA similaridadAA_2 similaridadBlosum\n", "count 140244.000000 140244.000000 140244.000000 140244.000000\n", "mean 29.471423 52.058989 37.194339 59.039481\n", "std 8.173877 19.557676 10.991107 4.755932\n", "min 1.318681 1.318681 1.318681 42.192479\n", "25% 24.029024 37.007624 29.826863 56.054807\n", "50% 31.414474 54.886299 39.692408 59.588976\n", "75% 36.308204 69.353070 46.320157 62.390552\n", "max 98.202247 99.438202 98.932584 99.176556" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "simi_immune.describe()" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SimilaridadSimilaridadAAsimilaridadAA_2similaridadBlosum
count1352.0000001352.0000001352.0000001352.000000
mean25.91800845.04213832.62456757.261413
std11.00828823.66060514.5988085.929105
min0.2014220.2014220.20142243.513301
25%19.38496826.94649823.63007953.830268
50%29.10953748.78726336.88701958.286203
75%34.75249865.59477444.37832161.608040
max41.61616283.82352953.48258783.784318
\n", "
" ], "text/plain": [ " Similaridad SimilaridadAA similaridadAA_2 similaridadBlosum\n", "count 1352.000000 1352.000000 1352.000000 1352.000000\n", "mean 25.918008 45.042138 32.624567 57.261413\n", "std 11.008288 23.660605 14.598808 5.929105\n", "min 0.201422 0.201422 0.201422 43.513301\n", "25% 19.384968 26.946498 23.630079 53.830268\n", "50% 29.109537 48.787263 36.887019 58.286203\n", "75% 34.752498 65.594774 44.378321 61.608040\n", "max 41.616162 83.823529 53.482587 83.784318" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "simi_rare.describe()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plot similarity" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABDAAAALICAYAAACJhQBYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAAsTAAALEwEAmpwYAACr4UlEQVR4nOzdfXxU5Z3//9eHuwCiiEC7AmJAxEKMQo2AldpIkWJFwV1YQlvWbrW2Pxd6Y2urW74QbN1ad1dWiq2i4m1FUKFG681CKzeyIAaFIjcKVZRYpBDuhJZC5PP745zEyTBJJiGTOZl5Px+PPJg55zrnXOdmPnP4zHVdx9wdEREREREREZEoa5HuCoiIiIiIiIiI1EUJDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwUsjMNphZYbrrIY3LzF4ws2vSXQ8RqZnir4hI+ikWZwczKzSzspj328xseDrrVBNdk82fEhgNlOiDaWZfN7NXKt+7e567L6ljPblm5mbWKkVVTalwnz82s4Ph37tm9qCZ9a3HOh4ys5+lsp7Jbic8F4fCfSk3s9+b2fjYMu5+ubs/nNranjgzKzazxyJQj9PN7AEz22FmH5nZZjObbmYnpbtu0jwp/gYyJf6aWc+YfTgYF4cPmtnnG7EeS8zsusZaXz23Xe0Gv4YyTXI+6mJmfc3sSTPbbWb7zeyPZnajmbVMd90kOhSLA5kSi2PKxMfgfamu14kI69sn2fLJXJONta1UMbOvmFlpeH52hD+uDk13vZqKEhgZrom+DFa6ewegIzAc+BuwxszObYJtp8L54f6cAzwEzDKzaemtUvNkZqcBK4F2wEXufjJwGXAqcFYaq1alud4wSfQp/ibH3d939w6Vf+Hk82OmLa8sq89r6pnZWcCrwHYg3907AuOAAuDkdNatkq4DqQ/F4gaJjcGnpqsS+qwfz8xuBP4H+A/g00BP4FfA6DRWq5qUnzd3118D/oBtwPC4aV8HXklUBhgElAIHgJ3AneH09wEHDoZ/FxEklqYA7wF/AR4BOsas91/CeeXA/4vbTjHwFPBYuK3rwm2vBPYBO4BZQJuY9TlwA7AF+Aj4KcF/Lv8vXMf82PK17XPM9OeAp2LePwl8COwHlgF54fTrgaPAkXD/nw2n3wz8KazPRuDqmHX1AZaG69oNzIuZ9xlgEbAHeAv459q2k6DeDvSJmzYWOAx0Dt8vAa5raF3CeVcAb4THdztQHDOvbXj+ysNz9hrw6XBeR+CB8Dx+APwMaFnDvhQDjyWYXgiU1XQ9h8vNJ7juPgI2AAUxZT8b1v2j8LzOA35WQx1+BqwHWtTyWborPAYHgDXA5+P2oba6nAEsAHaFx2tWzLxvAJuAvcBLwJlx5/nfCK75d9MdT/RXvz8UfxPuc8z0Zhl/445Jn5h9XAHMCI/5z4Ac4L/C87cTuAdoF5bvFO7/LoLP/nNAj3DebcDHBPH8IGG8qO85AEYBa8Nz+n/AeXHX3Q+BP4bHaB5BTD+J4D80x/jkeuuWYN8fIkE8TXSu447TQ8DdwO/CfXgVOCum7IjwnOwnuNFdSvg9lmBbjwG/q+McJbymkqxLXsx1shP493B6Cz659srD435aOC833N9rw/O+LN1xSH+KxTXtc8z0ZhmLSXAvnGg6MfGKuHvLRNdG3HL3hHX8KNyPM+O2U+0eDfgmsDXcpxLC+BkeRwcOhfs0PpxeV5xO6p63HsdmCTExNf6aCJf7drhP+whipIXzWgL/HZ7Hd4FJYflWCbbTMdzPcbXUMZlrPWFdYo71Jj657j4bTu8GPE3w/fou8J2YZYqJ+8ylNPakcuWZ/Jfog5ngYo39gKwEJoavOwBDwte58RcpwX+8tgK9w7ILgEfDef3DC3co0IbgJu5o3AfxKDCGIPi3Ay4AhgCtwu1tAr4XdyE/A5xCcGPxd+D34fY7hhfvNTUch2r7HLcPO+Pen0xw4/k/wNqYeQ8Rd8NG8GtPt3AfxhMEptPDeXOBn4Tz2gJDw+knEfxH+F/DfR1IEAz617SdBPU+LjABrYEK4PLw/RI+SWA0tC6FQH643HkEX+RjwnnfAp4F2hMEtQuAU8J5C4F7w/V/ClgNfKuGfSmm4QmMw8CXw+3/HFgVzmtDcMPw3fC4/CPBF2FNCYxVwPQ6jvnXgM7hcfoBwZd72yTq0hJYR/Afm5Pijv9ogs9Qv3C9U4D/izvPi4DTCP/jo7/m84fib8J9jtuHZhd/445JbAKjApgcrrcdwWe+JPz8nkwQL38elu8M/BNB/DyZ4D8Mv41Z9xLibqzqcw7C/foLMJggBl1DcK3lxFx3q8Pjd1p4vr8dziskLvYm2PeExynRueb4BEY5wY1rK+A3wBPhvC4EN5T/GM77LsF1WlMC40PgX+uoZ13XVE11OZnghvoH4fVzMjA4nPddgu+MHuF67wXmxn1WHyG41hS3I/CHYnGNn8+YfWh2sZimSWB8BFwSHou7OP4/+1X3aMCwcB8+G5b/JTFJzAT1SiZO13nPW89js4S6ExjPEbRA7kmQBBgZzvt2eH31IEjCL6bmBMZIgu/E4+bFlEnmWq+pLuMIfiC9EDCCRNmZBNfZGmAqwWeuN/AO8KWaPnOpjD3qQnJifmtm+yr/CH7VqMlRoI+ZdXH3g+6+qpayXyXISr/j7geBW4CisDnOWIKM6SvufoTgQvK45Ve6+2/d/Zi7/83d17j7KnevcPdtBDcFX4hb5g53P+DuG4A3gf8Nt78feIEgGNTHnwkCDwDuPsfdP3L3vxNc5OebWceaFnb3J939z+E+zCPIEg4KZx8l+DB1c/fD7l7Z13IUsM3dHwz39Q2CTOG4etY9vi5HCQLnaQlmN6gu7r7E3deH+/dHgi+iL8SsszNBgPw4PH8HzOzTBAH2e+5+yN3/QnAjX3Qi+1eDV9z9eXf/GHgUOD+cXhkQZ7r7UXdfQHCzXpPOBDerNXL3x9y9PDxO/03w5XROEnUZRPDFflN4PGKP/7cJ/kOzyd0rCJrZDTCzM2PW+3N33+Puf6vjWEg0Kf7WLGPib+X+uPsvw8/yYYJfEb8ffn4/Ivh8F4V1L3f3p939r+G82zj+eCeS7Dm4HrjX3V8N4/PDBP/RGRKzrpnh8dtDkFwZcKIHIEkL3X11eJx+E7PdLwMb3H1BOG8mQZKiJsnE7bquqZrqMgr40N3/O7x+PnL3V8N53wZ+4u5lMesdG9cUuTiM94rb0aFYXLPmHItfjzmvM+u5bDJ+5+7LwmPxE+AiMzsjZn7sPdpXgTnu/npY/pawfG4N604mTseq6T6zsd3u7vvc/X3gZT6Ji/8M3BXGvr3A7bWsozOwO4ytCSV5rddUl+sIPgeveWCru79HkNDo6u63uvsRd38HuI/q/wep9pmr+3A0nBIYJ2aMu59a+UfQ9Kwm1wJ9gc1m9pqZjaqlbDeCX7krvUfwn8ZPh/O2V85w978S/NIRa3vsm3AwrufM7EMzO0Bws9clbpmdMa//luB9B+qnO0EzL8yspZndbmZ/Cre/LSwTX4fYOv+Lma2N+UI8N6b8jwiygqstGEn4G+H0M4HBcV+kXwX+oZ51j69La6Br5f7EaVBdzGywmb1sZrvMbD/BjVvl/j1K0OXhCTP7s5ndEdbhTIJWDzti1nkvQUuMxhZ7c/tXoG1409AN+MDdY28Uql1vccqB02vbkJn90Mw2hQPF7SP4pSP22qipLmcA79UQxM8E7oo5TnsIzlP3JOst0af4W7OMib+h2GPalaB1xZqY7bwYTsfM2pvZvWb2Xri/y4BTre7BJ5M9B2cCP4jbzzMIro1K8TGrvuevoWrabvx160Btg4nWGreTvKZqqssZBE3iEzkTWBhzXDcRdPn5dEwZxe3oUSyuWXOOxZ+NOa/fqeeyyYg9fwcJjlO3RPOJuxbC8uVUv6eLlUycjlXTfWZjSypGU/d9dZfa6pfktV7fGH0m0C3umP47aYrPSmA0EXff4u4TCP6z+QvgKQuewhCfMYYgYxv7S3FPguZCOwl+FelROcPM2hFk46ptLu79r4HNwNnufgrBBWcN35ukXA1UDrz2FYIm/cMJ/nOaG06vrEO1+lrwK/l9BH3AOodfiG9Wlnf3D939m+7ejaC7xa8sGBF4O7A09ovUg8GH/r9E26mH0QTH/7iWBidQl8cJmkCf4cEAaffE7N9Rd5/u7v2BzxFk0/8lXOffgS4x6zzF3fPquT+HCP4DAARfqoQ3/0nYAXQ3s9jr54yaChM0g7vazBLGGgueLvAjguxzp/Bc7ye563M70LOGIL6doGtN7PFv5+7/F1OmodeDNDOKv806/sYvu5vgPxJ5Mdvp6J8M/vkDghZcg8PjfUlt+9sA24Hb4vazvbvPred+1Fd83K7Pf0bir1uLfZ/AYoJuODWp65qqzXaCpsc1zbs87ti2dfcPYsoobjdjisXNPhb/lZg4xIklqKvuHc2sA0FLlT/HzI+tZ7VrIbxmOhN0dUjkROJ0Q1WL0dTv2FS7nqn9vnolwf8FxtRS5kSu9e0kHmR/O8F4JLHH9GR3/3JMmSaLz0pgNBEz+5qZdXX3YwQDpkAwmNeu8N/YL/S5wPfNrFf4of4PgsF5KggGSLnSzD5nZm0ImqDVdVGeTND/9aCZfQb4/+oo3yBhdrmXmf2SoC/c9Jjt/50ga9ieYH9i7aT6/ld+me0K1/uvBFnnyu2MM7PKD/resOwxgv5cfc1sopm1Dv8uNLN+NWynrv05zcy+SjC4zS/cPT67fyJ1ORnY4+6HzWwQwRdb5TovNbP8MLFwgKCZ4DF33wH8L/DfZnaKmbUws7PMrLbm0S3MrG3MXw7wNkF2+QoLWnZMIei2kYyVBL+ITTKzVmY2mk+aMyZyJ0F/0ofDL2PMrLuZ3Wlm54XHoYLgXLcys6lh+WSsJgj6t5vZSeH+XRzOuwe4xczywm12NLPGaMouzZDib/OLvzUJz+F9wAwz+1RYp+5m9qWY/f0bsM+CpyBNq2N/6+s+4NsWtKKzMPZcYWbJPJ1jJ9DZamkyHmoZF7fbEIz3k2dmA8ysLcG1l6zfAflmNiZM+P4btd9cTwM+Z2b/WZkoMbM+ZvaYmZ1K3ddUbZ4DTjez75lZjpmdbGaDw3n3ALfFfFd0Db9jJEMoFjf7WLwW+Eq4jyNJrnteTb5sZkPD8/dTgnEnavoFfy7wr2H8yyE4dq960D0Cjt+nE4nTyWgTF6NbEhybf7SgFWAfgtZGyZoPfDf8LjsV+HFNBT3ozjQVuDuM6e3Dc3y5md0RFjuRa/1+4IdmdkF47PqEMXk18JGZ/djM2oXXwLlmdmE91t1olMBoOiOBDWZ2kGCwmiIP+uT9laCP7goLmuQMAeYQdCNYRjDK62GCAczwoF/eZOAJgv+8HSQYqObvtWz7hwT/Qf6I4EM9r5H37aJwvw4QDGJzCnChu68P5z9C0PTrA4JBauL7PD4A9A/3/7fuvpFgNN6VBEEpn2AU+koXAq+G2ywBvutBH8WPCEZaLyLI1n5IkOHPSbSdWvZnXbjurQR9wb7v7lNrKNvQutwA3GpmHxEEovkx6/wHgi/nAwRNaJcSXA8QtMRoQ3Ac94blauuiMYHgZr7y709h8LuBIEh9QJA1rq05cRUP+pr+I0Fg3kcwAOdz1HD9edAH/HMESZhXw/39PUEri60EXWVeJEiqvEdwrSfVBM2DvopXEgww9H64D+PDeQsJjvcTFjSfexO4PJn1SkZS/G0+8TcZPyaIH6vCz/diPhk3538IBn3bHe7ri3HL3kUwrsJea0C/bncvJRihfRZBDN5KMFhbMstuJrgRfyc8DjU1Z76Z6nH7D+7+NnArwb5uAV6pYdlE291N0P/9DoL/PPUneBJETXH7TwRPgcgl+NzsJ+hDX0pwHdd1TdVWl48IHqV9JcE1sgW4NJx9F8E19b/hd8UqgkH4JHMoFjfvWPxdgs/uPoJuKfVdPtbjBMnSPQSDTn6tpoLuvpjgSTNPE5zvs6g+9kIxwQ9l+8zsn08kTidpA9Vj9L8SjEl3hOBcPUww9k+y7iP4gfKPBE/5e57gx72PExX2YLy4Gwl+gNxFcN88iU/OR4OvdXd/kuCz+Hi4/G8Jngb1MUGL8AEEn8fdBP+PqCshnxKVj2+RZirMSu8jaCb0bpqrI1nIzF4F7nH3B9NdF5GmpPgrzZEFXfrKgK+6+8vpro/IiVIsbl7M7CGCJ5ZMSXddosjMLie4rz6zzsJZSi0wmiEzuzJsMnQSwaOj1vPJYEAiKWVmXzCzf7CgC8k1BI+Bjf+VUyQjKf5Kc2RmXzKzU8Pm15X9oZNuOSESNYrFkinCLhlfDu+ruxO0TFmY7npFmRIYzdNogmZhfwbOJmiCp6Y00lTOIeiPvY9gwLyx4fgcItlA8Veao4sIRpbfTdAEfIzrUaTSvCkWS6YwgrFS9hJ0IdlE0L1caqAuJCIiIiIiIiISeWqBISIiIiIiIiKR1yrdFWgsXbp08dzc3HRXQ0SkTmvWrNnt7l3TXY9UU1wWkeZCcVlEJFpqissZk8DIzc2ltLQ03dUQEamTmb2X7jo0BcVlEWkuFJdFRKKlprisLiQiIiIiIiIiEnlKYIiIiIiIiIhI5CmBISIiIiIiIiKRlzFjYCRy9OhRysrKOHz4cLqrImnQtm1bevToQevWrdNdFREJKS5nN8VlkehRXM5uisvS3GR0AqOsrIyTTz6Z3NxczCzd1ZEm5O6Ul5dTVlZGr1690l0dEQkpLmcvxWWRaFJczl6Ky9IcZXQXksOHD9O5c2cF4yxkZnTu3Fm/JohEjOJy9lJcFokmxeXspbgszVFGJzAABeMspnMvEk36bGYvnXuRaNJnM3vp3Etzk/EJDBERERERERFp/jJ6DIx4Mxa93ajr+/5lfZMqd9ttt/H444/TsmVLWrRowb333st9993HjTfeSP/+/ZNaR2lpKY888ggzZ87koYceorS0lFmzZiVd19jl4+Xm5lJaWkqXLl2SWldDti8ikojisuKyiESL4rLiskiUZVUCIx1WrlzJc889x+uvv05OTg67d+/myJEj3H///fVaT0FBAQUFBQ2qQ0VFxQktLyKSSRSXRUSiRXFZRJKlLiQptmPHDrp06UJOTg4AXbp0oVu3bhQWFlJaWgpAhw4duOmmm8jLy2P48OGsXr2awsJCevfuTUlJCQBLlixh1KhRx63/2WefZfDgwQwcOJDhw4ezc+dOAIqLi5k4cSIXX3wxEydOrLZ8eXk5I0aMIC8vj+uuuw53r1rfmDFjuOCCC8jLy2P27NlV0x988EH69u3LoEGDWLFiRWoOlohIE1BcFhGJFsVlEUmWEhgpNmLECLZv307fvn254YYbWLp06XFlDh06xLBhw9iwYQMnn3wyU6ZMYdGiRSxcuJCpU6fWuv6hQ4eyatUq3njjDYqKirjjjjuq5m3cuJHFixczd+7castMnz6doUOHsmHDBq6++mref//9qnlz5sxhzZo1lJaWMnPmTMrLy9mxYwfTpk1jxYoVvPLKK2zcuPEEj4qISPooLouIRIvisogkS11IUqxDhw6sWbOG5cuX8/LLLzN+/Hhuv/32amXatGnDyJEjAcjPzycnJ4fWrVuTn5/Ptm3bal1/WVkZ48ePZ8eOHRw5cqTaM5yvuuoq2rVrd9wyy5YtY8GCBQBcccUVdOrUqWrezJkzWbhwIQDbt29ny5YtfPjhhxQWFtK1a1cAxo8fz9tvN27/SBGRpqK4LCISLYrLIpIsJTCaQMuWLSksLKSwsJD8/HwefvjhavNbt25d9QijFi1aVDWfa9GiBRUVFbWue/Lkydx4441cddVVLFmyhOLi4qp5J510Ur3quWTJEhYvXszKlStp3749hYWFei50E9j1y9oHd+o6eVIT1UQkeyguSyKKxyLpo7gstVF8lkrqQpJib731Flu2bKl6v3btWs4888xGW//+/fvp3r07wHGBviaXXHIJjz/+OAAvvPACe/furVpXp06daN++PZs3b2bVqlUADB48mKVLl1JeXs7Ro0d58sknG63+IiJNTXFZRCRaFJdFJFlZ1QIj2cc4NaaDBw8yefJk9u3bR6tWrejTpw+zZ89m7NixjbL+4uJixo0bR6dOnRg2bBjvvvtunctMmzaNCRMmkJeXx+c+9zl69uwJwMiRI7nnnnvo168f55xzDkOGDAHg9NNPp7i4mIsuuohTTz2VAQMGNErdRUQUlwOKyyISFYrLAcVlkWiy2BF1m7OCggKvHKW40qZNm+jXr1+aaiRR0ByuATWJyz5mtsbdM/45bYrLkkiUrwHF4+yluBzNz6Q0jeZwDSg+Z5+a4rK6kIiIiIiIiIhI5CmBISIiIiIiIiKRpwSGiIiIiIiIiESeEhgiIiIiIiIiEnlKYIiIiIiIiIhI5GXVY1RF0qGuUZNFRERERESkbilNYJjZSOAuoCVwv7vfHjc/B3gEuAAoB8a7+zYz+ypwU0zR84DPuvvaE6rQyz8/ocWPc+ktSRW77bbbePzxx2nZsiUtWrTg3nvv5b777uPGG2+kf//+Sa2jtLSURx55hJkzZ/LQQw9RWlrKrFnJ/8c4dvl4ubm5lJaW0qVLl6TWlWj7AwYM4DOf+QxPPPHEceXHjBnDhx9+yKpVq5Kur4hkCcVlxWURiRbFZcVlkQhLWQLDzFoCdwOXAWXAa2ZW4u4bY4pdC+x19z5mVgT8giCJ8RvgN+F68oHfnnDyIk1WrlzJc889x+uvv05OTg67d+/myJEj3H///fVaT0FBAQUFDXs8eUVFxQktX5dNmzbx8ccfs3z5cg4dOsRJJ51UNW/fvn2sWbOGDh068M4779C7d++U1EFEJFmKy4rLIhItisuKy2qxLMlK5RgYg4Ct7v6Oux8BngBGx5UZDTwcvn4K+KKZWVyZCeGyzdKOHTvo0qULOTk5AHTp0oVu3bpRWFhIaWkpAB06dOCmm24iLy+P4cOHs3r1agoLC+nduzclJSUALFmyhFGjRh23/meffZbBgwczcOBAhg8fzs6dOwEoLi5m4sSJXHzxxUycOLHa8uXl5YwYMYK8vDyuu+463L1qfWPGjOGCCy4gLy+P2bNnV01/8MEH6du3L4MGDWLFihXV6jB37lwmTpzIiBEjeOaZZ6rNW7BgAVdeeSVFRUUJs80iIk1NcVlxWUSiRXFZcVkkWalMYHQHtse8LwunJSzj7hXAfqBzXJnxwNxEGzCz682s1MxKd+3a1SiVbmwjRoxg+/bt9O3blxtuuIGlS5ceV+bQoUMMGzaMDRs2cPLJJzNlyhQWLVrEwoULmTp1aq3rHzp0KKtWreKNN96gqKiIO+64o2rexo0bWbx4MXPnVj9806dPZ+jQoWzYsIGrr76a999/v2renDlzWLNmDaWlpcycOZPy8nJ27NjBtGnTWLFiBa+88gobN26str558+ZRVFTEhAkTjtvW3LlzmTBhQsJ5IiLpoLisuCwSJWY20szeMrOtZnZzgvk5ZjYvnP+qmeWG079qZmtj/o6Z2YCmrn9jUFxWXBZJVqQH8TSzwcBf3f3NRPPdfTYwG6CgoMATlUm3Dh06sGbNGpYvX87LL7/M+PHjuf32akOB0KZNG0aOHAlAfn4+OTk5tG7dmvz8fLZt21br+svKyhg/fjw7duzgyJEj9OrVq2reVVddRbt27Y5bZtmyZSxYsACAK664gk6dOlXNmzlzJgsXLgRg+/btbNmyhQ8//JDCwkK6du0KwPjx43n77bcBqvoC9uzZk+7du/ONb3yDPXv2cNppp7Fz5062bNnC0KFDMTNat27Nm2++ybnnnlvPoygi0ngUlxWXU6G25s9dJ09qwppIc6Iu1wHFZcVlkWSlsgXGB8AZMe97hNMSljGzVkBHgsE8KxVRQ+uL5qRly5YUFhYyffp0Zs2axdNPP11tfuvWransOdOiRYuq5nMtWrSgoqKi1nVPnjyZSZMmsX79eu69914OHz5cNS+2b10ylixZwuLFi1m5ciXr1q1j4MCB1daXyNy5c9m8eTO5ubmcddZZHDhwoGr/5s+fz969e+nVqxe5ubls27ZNWWURiQTFZcVlkYhQl+uQ4rLiskgyUpnAeA0428x6mVkbgmRESVyZEuCa8PVY4A8edjAzsxbAP9PMg/Fbb73Fli1bqt6vXbuWM888s9HWv3//frp3D3rmPPzww3WUDlxyySU8/vjjALzwwgvs3bu3al2dOnWiffv2bN68uWoU5MGDB7N06VLKy8s5evQoTz75JADHjh1j/vz5rF+/nm3btrFt2zaeeeaZqqA7d+5cXnzxxap5a9asUb8+EUk7xWXFZZEIUZdrFJcVl0WSl7IuJO5eYWaTgJcIHqM6x903mNmtQKm7lwAPAI+a2VZgD0GSo9IlwHZ3f6fRKpXkY5wa08GDB5k8eTL79u2jVatW9OnTh9mzZzN27NhGWX9xcTHjxo2jU6dODBs2jHfffbfOZaZNm8aECRPIy8vjc5/7HD179gRg5MiR3HPPPfTr149zzjmHIUOGAHD66adTXFzMRRddxKmnnsqAAQMAWL58Od27d6dbt25V677kkkvYuHEjK1eu5L333qtaB0CvXr3o2LEjr776KoMHD26U/ReRZk5xGVBcFpGGa/Qu14rLgOKySFRZ7Ii6zVlBQYFXjlJcadOmTfTr1y9NNZIoiMI1cKKPhVLf6cxjZmvcPTXPaYsQxWVJJMrXQF3xurZ4rDEwmrd0xWUzuwgodvcvhe9vAXD3n8eUeSksszLscv0h0DWm1fIMYJe7/0dd21NclkSicA3oflni1RSXU9mFREREREREaqYu1yIi9RDpp5CIiIiIiGSqSHa5FhGJMCUwRERERETSxN2fB56PmzY15vVhYFwNyy4BhiSaJyKSidSFREREREREREQiTwkMEREREREREYk8JTBEREREREREJPKyagyMX639VaOu74YBNzTq+kREso3isohItCgui0iUqQVGGlx33XVs3Lgx6fKlpaV85zvfAeChhx5i0qT6Pec4dvl4ubm57N69O+l1Jdr+gAEDKCoqSlh+zJgxDBlS99hSd955J/379+e8887ji1/8Iu+9917SdRIROVGKy8dTXBaRdFJcPp7iskiWtcCIivvvv79e5QsKCigoKGjQtioqKk5o+bps2rSJjz/+mOXLl3Po0CFOOumkqnn79u1jzZo1dOjQgXfeeYfevXvXuJ6BAwdSWlpK+/bt+fWvf82PfvQj5s2bl5I6i4jEU1w+nuKyiKST4vLxFJdF1AIj5Q4dOsQVV1zB+eefz7nnnsu8efMoLCyktLQUgA4dOnDTTTeRl5fH8OHDWb16NYWFhfTu3ZuSkhIAlixZwqhRo45b97PPPsvgwYMZOHAgw4cPZ+fOnQAUFxczceJELr74YiZOnFht+fLyckaMGEFeXh7XXXcd7l61vjFjxnDBBReQl5fH7Nmzq6Y/+OCD9O3bl0GDBrFixYpqdZg7dy4TJ05kxIgRPPPMM9XmLViwgCuvvJKioiKeeOKJWo/TpZdeSvv27QEYMmQIZWVlSR1fEZH6UlxWXBaRaFFcVlwWSZYSGCn24osv0q1bN9atW8ebb77JyJEjq80/dOgQw4YNY8OGDZx88slMmTKFRYsWsXDhQqZOnVrDWgNDhw5l1apVvPHGGxQVFXHHHXdUzdu4cSOLFy9m7ty51ZaZPn06Q4cOZcOGDVx99dW8//77VfPmzJnDmjVrKC0tZebMmZSXl7Njxw6mTZvGihUreOWVV45ryjdv3jyKioqYMGHCcduaO3cuEyZMSDivNg888ACXX3550uVFROpDcVlxWUSiRXFZcVkkWepCkmL5+fn84Ac/4Mc//jGjRo3i85//fLX5bdq0qQrS+fn55OTk0Lp1a/Lz89m2bVut6y4rK2P8+PHs2LGDI0eO0KtXr6p5V111Fe3atTtumWXLlrFgwQIArrjiCjp16lQ1b+bMmSxcuBCA7du3s2XLFj788EMKCwvp2rUrAOPHj+ftt98Ggr6CXbp0oWfPnnTv3p1vfOMb7Nmzh9NOO42dO3eyZcsWhg4dipnRunVr3nzzTc4999xa9+mxxx6jtLSUpUuX1lpORKShFJcVl0UkWhSXFZdFkqUWGCnWt29fXn/9dfLz85kyZQq33nprtfmtW7fGzABo0aIFOTk5Va8rKipqXffkyZOZNGkS69ev59577+Xw4cNV82L71iVjyZIlLF68mJUrV7Ju3ToGDhxYbX2JzJ07l82bN5Obm8tZZ53FgQMHePrppwGYP38+e/fupVevXuTm5rJt27Y6s8qLFy/mtttuo6SkpOo4iIg0NsVlxWURiRbFZcVlkWRlVQuMdDzG6c9//jOnnXYaX/va1zj11FPrPSBRbfbv30/37t0BePjhh5Na5pJLLuHxxx9nypQpvPDCC+zdu7dqXZ06daJ9+/Zs3ryZVatWATB48GC++93vUl5ezimnnMKTTz7J+eefz7Fjx5g/fz7r16+nW7duALz88sv89Kc/5Zvf/CZz587lxRdf5KKLLgLg3XffZfjw4dx2220J6/XGG2/wrW99ixdffJFPfepTJ3RcRKT5UFxWXBaRaFFcVlwWiTK1wEix9evXM2jQIAYMGMD06dOZMmVKo627uLiYcePGccEFF9ClS5eklpk2bRrLli0jLy+PBQsW0LNnTwBGjhxJRUUF/fr14+abb656lNPpp59OcXExF110ERdffDH9+vUDYPny5XTv3r0qGEMQ7Ddu3MjKlSt57733qj0OqlevXnTs2JFXX301Yb1uuukmDh48yLhx4xgwYABXXXVVg46JiEhdFJcDissiEhWKywHFZZG6Weyous1ZQUGBV45UXGnTpk1VAUSyUxSugV2/nHVCy3edXL/nmEv0mdkad0/Ns9oiRHFZEonyNVBXvK4tHte2rOJ49CkuR/MzKU0jCteA7pclXk1xWS0wRESyiJmNNLO3zGyrmd2cYH6Omc0L579qZrnh9NZm9rCZrTezTWZ2S5NXXkRERESyWlaNgSHpd9ttt/Hkk09WmzZu3Dh+8pOfpKlGItnDzFoCdwOXAWXAa2ZW4u6xz3u7Ftjr7n3MrAj4BTAeGAfkuHu+mbUHNprZXHff1rR7IY1NcVlEJFoUl0VqpgSGNKmf/OQnCr4i6TMI2Oru7wCY2RPAaCA2gTEaKA5fPwXMsmDodwdOMrNWQDvgCHCgieotKaS4LCISLYrLIjVTFxIRkezRHdge874snJawjLtXAPuBzgTJjEPADuB94L/cfU/8BszsejMrNbPSXbt2Nf4eiIiIiEjWUgJDRESSMQj4GOgG9AJ+YGa94wu5+2x3L3D3gq5duzZ1HUVEREQkgymBISKSPT4Azoh53yOclrBM2F2kI1AOfAV40d2PuvtfgBVAxo/YLyIiIiLRkVVjYJzo43niNfRxPddddx033ngj/fv3T6p8aWkpjzzyCDNnzuShhx6itLSUWbOS35fY5ePl5uZSWlqa9HOxY7dfXFzMfffdR9euXTl8+DCXXnopd999Ny1atODrX/86o0aNYuzYsUnXU0RS7jXgbDPrRZCoKCJITMQqAa4BVgJjgT+4u5vZ+8Aw4FEzOwkYAvzPiVZIcVlxWUSiRXFZcVkkyrIqgREV999/f73KFxQUUFDQsB86KyoqTmj5unz/+9/nhz/8IceOHeOSSy5h6dKlXHrppSnZloicGHevMLNJwEtAS2COu28ws1uBUncvAR4gSFJsBfYQJDkgeHrJg2a2ATDgQXf/Y9PvRWooLouIRIvisogkoi4kKXbo0CGuuOIKzj//fM4991zmzZtHYWEhpaWlAHTo0IGbbrqJvLw8hg8fzurVqyksLKR3796UlJQAsGTJEkaNGnXcup999lkGDx7MwIEDGT58ODt37gSguLiYiRMncvHFFzNx4sRqy5eXlzNixAjy8vK47rrrcPeq9Y0ZM4YLLriAvLw8Zs+eXTX9wQcfpG/fvgwaNIgVK1Yk3M8jR45w+PBhOnXqdNy83//+9wwcOJD8/Hy+8Y1v8Pe//x2Am2++mf79+3Peeefxwx/+EICvf/3rPPXUU1XLdujQoeoYfOELX2D06NH07t2bm2++md/85jcMGjSI/Px8/vSnPyV5RkSym7s/7+593f0sd78tnDY1TF7g7ofdfZy793H3QZVPLHH3g+H0PHfv7+7/mc79OBGKy4rLIhItisuKyyLJUgIjxV588UW6devGunXrePPNNxk5cmS1+YcOHWLYsGFs2LCBk08+mSlTprBo0SIWLlzI1KlTa1330KFDWbVqFW+88QZFRUXccccdVfM2btzI4sWLmTt3brVlpk+fztChQ9mwYQNXX30177//ftW8OXPmsGbNGkpLS5k5cybl5eXs2LGDadOmsWLFCl555RU2btxYbX0zZsxgwIABnH766fTt25cBAwZUm3/48GG+/vWvM2/ePNavX09FRQW//vWvKS8vZ+HChWzYsIE//vGPTJkypc5juW7dOu655x42bdrEo48+yttvv83q1au57rrr+OUvf1nn8iIioLisuCwiUaO4rLgskiwlMFIsPz+fRYsW8eMf/5jly5fTsWPHavPbtGlTFaTz8/P5whe+QOvWrcnPz2fbtm21rrusrIwvfelL5Ofn85//+Z9s2LChat5VV11Fu3btjltm2bJlfO1rXwPgiiuuqJYBnjlzJueffz5Dhgxh+/btbNmyhVdffZXCwkK6du1KmzZtGD9+fLX1ff/732ft2rX85S9/4dChQzzxxBPV5r/11lv06tWLvn37AnDNNdewbNkyOnbsSNu2bbn22mtZsGAB7du3r+NIwoUXXsjpp59OTk4OZ511FiNGjKg6bnUdKxGRSorLissiEi2Ky4rLIslSAiPF+vbty+uvv05+fj5Tpkzh1ltvrTa/devWmBkALVq0ICcnp+p1RUVFreuePHkykyZNYv369dx7770cPny4at5JJ51Ur3ouWbKExYsXs3LlStatW8fAgQOrra8urVu3ZuTIkSxbtiyp8q1atWL16tWMHTuW5557rupLqVWrVhw7dgyAY8eOceTIkaplKo8N1P9YiYhUUlxOTHFZRNJFcTkxxWWR4ymBkWJ//vOfad++PV/72te46aabeP311xtt3fv376d79+4APPzww0ktc8kll/D4448D8MILL7B3796qdXXq1In27duzefNmVq1aBcDgwYNZunQp5eXlHD16lCeffDLhet2dFStWcNZZZ1Wbfs4557Bt2za2bt0KwKOPPsoXvvAFDh48yP79+/nyl7/MjBkzWLduHRCM8rxmzRoASkpKOHr0aH0OiYhInRSXFZdFJFoUlxWXRZKV0qeQmNlI4C6C0e7vd/fb4+bnAI8AFwDlwHh33xbOOw+4FzgFOAZc6O7JpzgTaOhjnE7E+vXruemmm2jRogWtW7fm17/+ddUAPCequLiYcePG0alTJ4YNG8a7775b5zLTpk1jwoQJ5OXl8bnPfY6ePXsCMHLkSO655x769evHOeecw5AhQwA4/fTTKS4u5qKLLuLUU089rs/ejBkzeOyxxzh69CjnnXceN9xwQ7X5bdu25cEHH2TcuHFUVFRw4YUX8u1vf5s9e/YwevRoDh8+jLtz5513AvDNb36T0aNHc/755zNy5Mh6Z8bTobEfNyaSTRSXFZdFJFoUlxWXRaLMYkfVbdQVm7UE3gYuA8qA14AJ7r4xpswNwHnu/m0zKwKudvfxZtYKeB2Y6O7rzKwzsM/dP65pewUFBV45UnGlTZs20a9fv0bfN2k+muIaSHUCIx03EpJaZrbG3VPzrLYIUVyWRKJ8DdQVz2uLx7UtqzgefYrL0fxMStOIwjWg+2mJV1NcTmUXkkHAVnd/x92PAE8Ao+PKjAYq23I9BXzRgg5uI4A/uvs6AHcvry15ISIiIiIiIiKZLZVdSLoD22PelwGDayrj7hVmth/oDPQF3MxeAroCT7j7HXHLYmbXA9cDVU27RERERFJBXQYlFaLW5VpEJMqiOohnK2Ao8NXw36vN7Ivxhdx9trsXuHtB165dE64oVV1kJPp07kWiSZ/N7KVzL1Jd2OX6buByoD8wwcz6xxW7Ftjr7n2AGcAvwmVbAY8B33b3PKAQaNBojvpsZi+de2luUtkC4wPgjJj3PcJpicqUhUG4I0FmuQxY5u67AczseeCzwO/rU4G2bdtSXl5O586dqx69JNnB3SkvL6dt27bprsoJO5E+2SJRo7icvTIpLos0oqou1wBmVtnlemNMmdFAcfj6KWBWTV2uG1IBxeXs1ZRxWS3YpLGkMoHxGnC2mfUiSFQUAV+JK1MCXAOsBMYCf3D3yq4jPzKz9sAR4AsEGed66dGjB2VlZezatesEdkOaq7Zt29KjR490V0NEYiguZzfFZZHjpL3LteJydlNcluYmZQmMMMBOAl4i6NM3x903mNmtQKm7lwAPAI+a2VZgD0GSA3ffa2Z3EiRBHHje3X9X3zq0bt2aXr16NdIeiYjIiVJcFhFpNJVdri8E/gr8Phy1v1qLZXefDcyG4Ckk8StRXBaR5iSVLTBw9+eB5+OmTY15fRgYV8OyjxH06xMRERERyURp73ItItKcRHUQTxERERGRTFfV5drM2hC0Ri6JK1PZ5RpiulwTtHLON7P2YWLjC1QfO0NEJOOktAWGiIiIiIgkFoUu1yIizYkSGCIiIiIiaaIu1yIiyVMXEhERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchTAkNEREREREREIk8JDBERERERERGJPCUwRERERERERCTylMAQERERERERkchLaQLDzEaa2VtmttXMbk4wP8fM5oXzXzWz3HB6rpn9zczWhn/3pLKeIiIiIiIiIhJtrVK1YjNrCdwNXAaUAa+ZWYm7b4wpdi2w1937mFkR8AtgfDjvT+4+IFX1ExEREREREZHmI5UtMAYBW939HXc/AjwBjI4rMxp4OHz9FPBFM7MU1klEREREJDLUYllEJHmpTGB0B7bHvC8LpyUs4+4VwH6gczivl5m9YWZLzezziTZgZtebWamZle7atatxay8iIiIikkIxLZYvB/oDE8ysf1yxqhbLwAyCFsuV/uTuA8K/bzdJpUVE0iiqg3juAHq6+0DgRuBxMzslvpC7z3b3Ancv6Nq1a5NXUkRERETkBKjFsohIPaQygfEBcEbM+x7htIRlzKwV0BEod/e/u3s5gLuvAf4E9E1hXUVEREREmppaLIuI1EMqExivAWebWS8zawMUASVxZUqAa8LXY4E/uLubWdewSR1m1hs4G3gnhXUVEREREWlO1GJZRLJOyp5C4u4VZjYJeAloCcxx9w1mditQ6u4lwAPAo2a2FdhDkOQAuAS41cyOAseAb7v7nlTVVUREREQkDerTYrksrsWyA3+HoMWymVW2WC5Nea1FRNIkZQkMAHd/Hng+btrUmNeHgXEJlnsaeDqVdRMRERERSbOqFssEiYoi4CtxZSpbLK8krsUysMfdP1aLZRHJFlEdxFNERFKgoY/rC+edZ2YrzWyDma03s7ZNWnkRkQwTjmlR2WJ5EzC/ssWymV0VFnsA6By2WL4RqIzdlwB/NLO1BIN7qsWyiGS8lLbAEBGR6Ih5XN9lBAPFvWZmJe6+MaZY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tIRlwkGM9gOdCZIZh4AdBCMs/5e774nfgJldb2alZla6a9euxt8DEREREREREYmEqD6FZBDwMdAN6AX8wMx6xxdy99nuXuDuBZXPXBYRERERERGRzJPKBMYHwBkx73uE0xKWCbuLdCQYzPMrwIvuftTd/wKsADJ+YCURERERERERSSyVCYzXgLPNrJeZtQGKgJK4MiXANeHrscAfPHgsyvvAMAAzOwkYAmxOYV1FREREREREJMJapWrF7l5hZpOAlwgeozrH3TeY2a1AqbuXAA8Aj5rZVmAPQZIDgqeXPGhmGwADHnT3P55wpV6u9Ums9XfpLUkVu+2223j88cdp2bIlLVq04N577+W+++7jxhtvpH//+AezJFZaWsojjzzCzJkzeeihhygtLWXWrNof81bT8vFyc3MpLS2lS5cuSa0r0fYHDBjAZz7zGZ544onjyo8ZM4YPP/yQVatWJV1fEckSisuKyyISLYrLissiEZayBAaAuz8PPB83bWrM68MEj0yNX+5gounN0cqVK3nuued4/fXXycnJYffu3Rw5coT777+/XuspKCigoKBhvWgqKipOaPm6bNq0iY8//pjly5dz6NAhTjrppKp5+/btY82aNXTo0IF33nmH3r2PG8pERKRJKS4rLotItCguKy6LJCuqg3hmjB07dtClSxdycnIA6NKlC926daOwsJDS0lIAOnTowE033UReXh7Dhw9n9erVFBYW0rt3b0pKgl43S5YsYdSoUcet/9lnn2Xw4MEMHDiQ4cOHs3PnTgCKi4uZOHEiF198MRMnTqy2fHl5OSNGjCAvL4/rrruOoNdOYMyYMVxwwQXk5eUxe/bsqukPPvggffv2ZdCgQaxYsaJaHebOncvEiRMZMWIEzzzzTLV5CxYs4Morr6SoqChhtllEpKkpLisui0i0KC4rLoskSwmMFBsxYgTbt2+nb9++3HDDDSxduvS4MocOHWLYsGFs2LCBk08+mSlTprBo0SIWLlzI1KlTE6z1E0OHDmXVqlW88cYbFBUVcccdd1TN27hxI4sXL2bu3LnVlpk+fTpDhw5lw4YNXH311bz//vtV8+bMmcOaNWsoLS1l5syZlJeXs2PHDqZNm8aKFSt45ZVX2LhxY7X1zZs3j6KiIiZMmHDctubOncuECRMSzhMRSQfFZcVlEYkWxWXFZZFkpbQLiQTZ4jVr1rB8+XJefvllxo8fz+23316tTJs2bRg5ciQA+fn55OTk0Lp1a/Lz89m2bVut6y8rK2P8+PHs2LGDI0eO0KtXr6p5V111Fe3atTtumWXLlrFgwQIArrjiCjp16lQ1b+bMmSxcuBCA7du3s2XLFj788EMKCwupfFTt+PHjefvttwGq+gL27NmT7t27841vfIM9e/Zw2mmnsXPnTrZs2cLQoUMxM1q3bs2bb77JueeeW8+jKCLSeBSXFZdFJFoUlxWXRZKlFhhNoGXLlhQWFjJ9+nRmzZrF008/XW1+69atMTMAWrRoUdV8rkWLFlRUVNS67smTJzNp0iTWr1/Pvffey+HDh6vmxfatS8aSJUtYvHgxK1euZN26dQwcOLDa+hKZO3cumzdvJjc3l7POOosDBw5U7d/8+fPZu3cvvXr1Ijc3l23btimrLCKRoLisuCwi0aK4rLgskgwlMFLsrbfeYsuWLVXv165dy5lnntlo69+/fz/du3cH4OGHH05qmUsuuYTHH38cgBdeeIG9e/dWratTp060b9+ezZs3V42CPHjwYJYuXUp5eTlHjx7lySefBODYsWPMnz+f9evXs23bNrZt28YzzzxTFXTnzp3Liy++WDVvzZo16tcnImmnuKy4LCLRorisuCySrOzqQpLkY5wa08GDB5k8eTL79u2jVatW9OnTh9mzZzN27NhGWX9xcTHjxo2jU6dODBs2jHfffbfOZaZNm8aECRPIy8vjc5/7HD179gRg5MiR3HPPPfTr149zzjmHIUOGAHD66adTXFzMRRddxKmnnsqAAQMAWL58Od27d6dbt25V677kkkvYuHEjK1eu5L333qtaB0CvXr3o2LEjr776KoMHD26U/ReRZk5xGVBcFpEIUVwGFJdFospiR9RtzgoKCrxylOJKmzZtol+/fmmqkURBc7gGdv2y9ueTd508qYlqIk3FzNa4e2qe01b3tkcCdwEtgfvd/fa4+TnAI8AFQDkw3t23mVlr4H7gswTJ70fc/ee1bUtxWRJpDteA4nL2SWdcbkqKy5KIroG61fa9oO+E1KgpLqsLiYhIljCzlsDdwOVAf2CCmfWPK3YtsNfd+wAzgF+E08cBOe6eT5Dc+JaZ5TZJxUVEREREyLYuJCIi2W0QsNXd3wEwsyeA0UDss95GA8Xh66eAWRaMmubASWbWCmgHHAEONFG9RSJFv8SJiIikh1pgiIhkj+7A9pj3ZeG0hGXcvQLYD3QmSGYcAnYA7wP/5e57Ul1hEREREZFKSmCIiEgyBgEfA92AXsAPzKx3fCEzu97MSs2sdNeuXU1dRxERERHJYEpgiIhkjw+AM2Le9winJSwTdhfpSDCY51eAF939qLv/BVgBHDewkrvPdvcCdy/o2rVrCnZBRERERLKVEhgiItnjNeBsM+tlZm2AIqAkrkwJcE34eizwBw8eV/U+MAzAzE4ChgCbm6TWIiIiIiJk2SCev1r7q0Zd3w0DbmjU9YmIpJK7V5jZJOAlgseoznH3DWZ2K1Dq7iXAA8CjZrYV2EOQ5IDg6SUPmtkGwIAH3f2PJ1onxWURkWhRXBaRKFMLjDS47rrr2LhxY90FQ6WlpXznO98B4KGHHmLSpPqNcB67fLzc3Fx2796d9LoSbX/AgAEUFRUlLD9mzBiGDBlS53rvvPNO+vfvz3nnnccXv/hF3nvvvaTrJCLJc/fn3b2vu5/l7reF06aGyQvc/bC7j3P3Pu4+qPKJJe5+MJye5+793f0/07kfjU1x+XiKyyKSTorLx1NcFsmyFhhRcf/999erfEFBAQUFx3U1T0pFRcUJLV+XTZs28fHHH7N8+XIOHTrESSedVDVv3759rFmzhg4dOvDOO+/Qu/dx4/1VGThwIKWlpbRv355f//rX/OhHP2LevHkpqbOISDzF5eMpLotIOikuH09xWUQtMFLu0KFDXHHFFZx//vmce+65zJs3j8LCQkpLSwHo0KEDN910E3l5eQwfPpzVq1dTWFhI7969KSkJuqYvWbKEUaNGHbfuZ599lsGDBzNw4ECGDx/Ozp07ASguLmbixIlcfPHFTJw4sdry5eXljBgxgry8PK677jqCru2BMWPGcMEFF5CXl8fs2bOrpj/44IP07duXQYMGsWLFimp1mDt3LhMnTmTEiBE888wz1eYtWLCAK6+8kqKiIp544olaj9Oll15K+/btARgyZAhlZWVJHV8RkfpSXFZcFpFoUVxWXI6KXb+clfBPokMJjBR78cUX6datG+vWrePNN99k5MiR1eYfOnSIYcOGsWHDBk4++WSmTJnCokWLWLhwIVOnTq113UOHDmXVqlW88cYbFBUVcccdd1TN27hxI4sXL2bu3LnVlpk+fTpDhw5lw4YNXH311bz//vtV8+bMmcOaNWsoLS1l5syZlJeXs2PHDqZNm8aKFSt45ZVXjmvKN2/ePIqKipgwYcJx25o7dy4TJkxIOK82DzzwAJdffnnS5TNdTYFUAVWkYRSXFZdFosTMRprZW2a21cxuTjA/x8zmhfNfNbPccPpXzWxtzN8xMxvQ1PVvDIrLissiyVIXkhTLz8/nBz/4AT/+8Y8ZNWoUn//856vNb9OmTVWQzs/PJycnh9atW5Ofn8+2bdtqXXdZWRnjx49nx44dHDlyhF69elXNu+qqq2jXrt1xyyxbtowFCxYAcMUVV9CpU6eqeTNnzmThwoUAbN++nS1btvDhhx9SWFhI5eMQx48fz9tvvw0EfQW7dOlCz5496d69O9/4xjfYs2cPp512Gjt37mTLli0MHToUM6N169a8+eabnHvuubXu02OPPUZpaSlLly6ttZyISEMpLisui0SFmbUkGCT5MqAMeM3MStw99n/A1wJ73b2PmRUBvwDGu/tvgN+E68kHfuvua5t0BxqJ4rLiskiy1AIjxfr27cvrr79Ofn4+U6ZM4dZbb602v3Xr1pgZAC1atCAnJ6fqdUVFRa3rnjx5MpMmTWL9+vXce++9HD58uGpebN+6ZCxZsoTFixezcuVK1q1bx8CBA6utL5G5c+eyefNmcnNzOeusszhw4ABPP/00APPnz2fv3r306tWL3Nxctm3bVmdWefHixdx2222UlJRUHQcRkcamuKy4LBIhg4Ct7v6Oux8BngBGx5UZDTwcvn4K+KJVBqlPTAiXbZYUlxWXRZKVVS0w0vEYpz//+c+cdtppfO1rX+PUU0+t94BEtdm/fz/du3cH4OGHH66jdOCSSy7h8ccfZ8qUKbzwwgvs3bu3al2dOnWiffv2bN68mVWrVgEwePBgvvvd71JeXs4pp5zCk08+yfnnn8+xY8eYP38+69evp1u3bgC8/PLL/PSnP+Wb3/wmc+fO5cUXX+Siiy4C4N1332X48OHcdtttCev1xhtv8K1vfYsXX3yRT33qUyd0XESk+VBcVlwWyXLdge0x78uAwTWVCR+HvR/oDMQ+FmM8xyc+ADCz64HrAXr27FlnhRSXFZdFokwtMFJs/fr1DBo0iAEDBjB9+nSmTJnSaOsuLi5m3LhxXHDBBXTp0iWpZaZNm8ayZcvIy8tjwYIFVV9kI0eOpKKign79+nHzzTdXPcrp9NNPp7i4mIsuuoiLL76Yfv36AbB8+XK6d+9eFYwhCPYbN25k5cqVvPfee9UeB9WrVy86duzIq6++mrBeN910EwcPHmTcuHEMGDCAq666qkHHRESkLorLAcVlkcxgZoOBv7r7m4nmu/tsdy9w94LKLg5Ro7gcUFwWqZvFjqrbnBUUFHjlSMWVNm3aVBVAJDs1h2vgRAfi7Dq5fs85l/QzszXunppntUWI4rIk0hyugROJy4rJzVO64rKZXQQUu/uXwve3ALj7z2PKvBSWWWlmrYAPga4e3sSb2Qxgl7v/R13bU1yWRHQNfKIh8V9xPzVqistqgSEiIiIikh6vAWebWS8zawMUASVxZUqAa8LXY4E/xCQvWgD/TDMe/0JEpD6yagwMSb/bbruNJ598stq0cePG8ZOf/CRNNRIRyW6KyyLpE45pMQl4CWgJzHH3DWZ2K1Dq7iXAA8CjZrYV2EOQ5Kh0CbDd3d9p6rpL6igui9RMCQxpUj/5yU8UfEVEIkRxWSS93P154Pm4aVNjXh8GxtWw7BJgSKJ50nwpLovULKVdSMxspJm9ZWZbzezmBPNzzGxeOP9VM8sNp3/VzNbG/B0zswGprKuIiIiIiIiIRFfKWmCYWUvgbuAygkdCvWZmJe6+MabYtcBed+9jZkXAL4Dx7v4b4DfhevKB37r72lTVVSSVTnSQThEREREREUltC4xBwFZ3f8fdjxAMLhT/fOrRQOUDmZ8CvmhmFldmAhqYSERERERERCSrpXIMjO7A9pj3ZcDgmsqEgxjtBzoDu2PKjOf4xAcAZnY9cD1Q9Xzm2jT2L+ENfWTOddddx4033kj//v2TKl9aWsojjzzCzJkzeeihhygtLWXWrOT3JXb5eLm5uZSWlib9XOzY7RcXF3PffffRtWtXDh8+zKWXXsrdd99NixYt+PrXv86oUaMYO3Zs0vUUkeyjuKy4LCLRorisuCz1U9NnRo9XTY1ID+JpZoOBv7r7m4nmu/tsYDYEz7VuyrqdiPvvv79e5QsKCigoaNijySsqKk5o+bp8//vf54c//CHHjh3jkksuYenSpVx66aUp2ZaISKooLouIRIvisogkksouJB8AZ8S87xFOS1jGzFoBHYHymPlFwNwU1jHlDh06xBVXXMH555/Pueeey7x58ygsLKS0tBSADh06cNNNN5GXl8fw4cNZvXo1hYX/f3v3Hm1nXR/4//1JQhKi5dI04w8JaYIQKhiuh4sVxRsYqyW6Ck1scbBF83NR7KijNnYYjKzpVNsZUgWiZgSKsQoYLz3aWIabggyXhJCAAcEIqQQZjSGEgsYQ+cwf+zlx53Au+1yevZ+99/u1Vlaey/fZ5/Ps5+Sz9/rke3kthx56KL29tWXAv/Od7/DWt771Ba/9zW9+k5NPPpnjjjuON77xjfz0pz8FYOnSpbzzne/kVa96Fe985zv3un7btm2cccYZHHXUUbz73e+mWEYcgLe97W2ccMIJHHXUUaxYsWLP8auuuoq5c+dy0kkncfvttw94n7t27WLnzp0ceOCBLzh30003cdxxxzFv3jz+/M//nF/96lcALFmyhCOPPJKjjz6aD33oQwC8613vYtWqVXuuffGLX7znPTjttNNYsGABhx56KEuWLOGf/umfOOmkk5g3bx4/+tGPGnwikrqdedm8LKlazMvmZalRZRYw1gCHR8SciJhMrRjR269NL3BusX0WcHMWGSIiJgB/TJvPf/Gv//qvvPSlL2XDhg18//vfZ/78+Xudf/bZZ3n961/Pxo0b+a3f+i0uvPBCbrjhBr7+9a9z0UUXDfKqNaeeeip33nkn9957L4sWLeLv/u7v9px74IEHuPHGG/nyl/eu/3z84x/n1FNPZePGjbz97W/nxz/+8Z5zV155Jffccw9r167l05/+NNu2beOJJ57gYx/7GLfffjvf+973eOCBB/Z6vWXLlnHsscdy0EEHMXfuXI499ti9zu/cuZN3vetdXHvttdx///3s3r2bz3zmM2zbto2vf/3rbNy4kfvuu48LL7xw2Pdyw4YNfPazn+XBBx9k5cqVPPzww9x99928+93v5tJLLx32ekkC87J5WVLVmJfNy1KjSitgZOZu4ALgeuBB4LrM3BgRF0fEmUWzK4DpEbEJ+CBQv9Tqa4DHMvORsmJshnnz5nHDDTfwV3/1V9x2223sv//+e52fPHnyniQ9b948TjvtNPbZZx/mzZvH5s2bh3ztLVu28KY3vYl58+bx93//92zcuHHPuTPPPJN99933BdfceuutnHPOOQC85S1v2asC/OlPf5pjjjmGU045hccee4wf/vCH3HXXXbz2ta9lxowZTJ48mYULF+71eh/4wAdYv349P/vZz3j22We55pq9600PPfQQc+bMYe7cuQCce+653Hrrrey///5MnTqV8847j6997WtMmzZtmHcSTjzxRA466CCmTJnCy172Ms4444w979tw75Uk9TEvm5clVYt52bwsNarMHhhk5urMnJuZL8vMvymOXZSZvcX2zsw8OzMPy8yT6osVmfmdzDylzPiaYe7cuaxbt4558+Zx4YUXcvHFF+91fp999qFv4ZUJEyYwZcqUPdu7d+8e8rXf9773ccEFF3D//ffzuc99jp07d+4596IXvWhEcX7nO9/hxhtv5I477mDDhg0cd9xxe73ecPbZZx/mz5/Prbfe2lD7SZMmcffdd3PWWWfxrW99a8+H0qRJk3j++ecBeP7559m1a9eea/reGxj5eyVJfczLAzMvS2oV8/LAzMvSC5VawBD85Cc/Ydq0aZxzzjl8+MMfZt26deP22jt27ODggw8G4Oqrrx6mdc1rXvMavvSlLwHw7W9/m+3bt+95rQMPPJBp06bxgx/8gDvvvBOAk08+me9+97ts27aN5557jq985SsDvm5mcvvtt/Oyl71sr+NHHHEEmzdvZtOmTQCsXLmS0047jWeeeYYdO3bwB3/wByxbtowNGzYAtVme77nnHgB6e3t57rnnRvKWSNKwzMvmZUnVYl42L0uNqvQqJOOtFUvZ3H///Xz4wx9mwoQJ7LPPPnzmM5/ZMwHPWC1dupSzzz6bAw88kNe//vU8+uijw17zsY99jHe84x0cddRR/P7v//6e5Wfnz5/PZz/7WV7+8pdzxBFHcMoptc4vBx10EEuXLuWVr3wlBxxwwAvG7C1btowvfvGLPPfccxx99NGcf/75e52fOnUqV111FWeffTa7d+/mxBNP5L3vfS9PPvkkCxYsYOfOnWQml1xyCQDvec97WLBgAccccwzz588fcWVcUnsxL5uXJVWLedm8LFVZ1M+q2856enqyb6biPg8++CAvf/nLWxSRqqAKvwPjvZ56f64x3X4i4p7MLGettgoxL2sg7fA7MJa8bU5uT+blav+bVLn8HfiN8fze7ufB2AyWlx1CIkmSJEmSKs8ChiRJkiRJqryOL2B0yhAZjZzPXqom/212L5+9VE3+2+xePnu1m46exHPq1Kls27aN6dOn71l6Sd0hM9m2bRtTp05tdSiS6piXu1eV8nLZcxNJ7cS83L2qlJelRnV0AWPmzJls2bKFrVu3tjoUtcDUqVOZOXNmq8OQVMe8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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "datasets = [simi_dise_lung,simi_treat ,df_full, simi_treatvscan, simi_immune, simi_rare]\n", "datasets = [\n", " ('Disease Lung Cancer', simi_dise_lung),\n", " ('Treatment Lung Cancer', simi_treat),\n", " ('Full protein Lung Cancer', df_full),\n", " ('Cancers', simi_treatvscan),\n", " ('Autoimmune diseases', simi_immune),\n", " ('Rare diseases', simi_rare)\n", "]\n", "\n", "\n", "column_names = ['Similaridad', 'SimilaridadAA', 'similaridadAA_2', 'similaridadBlosum']\n", "\n", "\n", "fig, axs = plt.subplots(2, 3, figsize=(15, 10))\n", "\n", "\n", "for i, (dataset_name, dataset) in enumerate(datasets):\n", " row = i // 3\n", " col = i % 3\n", " ax = axs[row, col]\n", " ax.set_title(f'Histogram Dataset {dataset_name}')\n", " ax.set_xlabel('Value')\n", " ax.set_ylabel('Frequency')\n", " for column_name in column_names:\n", " ax.hist(dataset[column_name], bins=20, alpha=0.5, label=column_name, density=True)\n", " ax.legend()\n", "\n", "\n", "plt.tight_layout()\n", "plt.savefig(\"Histogram_six_datasets.svg\")\n", "plt.show()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Statistics " ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "df_combined_simi = pd.concat([df_full['similaridadAA_2'], simi_dise_lung['similaridadAA_2'], simi_treat['similaridadAA_2'], simi_treatvscan['similaridadAA_2'], simi_immune['similaridadAA_2'],simi_rare['similaridadAA_2']], axis=1)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "df_combined_simi.columns = [\"full\",\"disease\",\"treatment\",\"cancers\",\"immune\",\"rare\"]" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
fulldiseasetreatmentcancersimmunerare
136.68730715.82264534.52102843.37557625.01696129.205069
215.82264534.82972148.51936242.41379312.53392149.732620
334.82972116.71826639.89486042.53986325.40705628.587699
416.71826619.16187549.00700947.58620715.31546845.386266
519.16187519.33878847.07943944.52926222.91384031.361323
.....................
807930NaN6.666667NaNNaNNaNNaN
808885NaN35.490605NaNNaNNaNNaN
809840NaN1.909059NaNNaNNaNNaN
810795NaN19.093023NaNNaNNaNNaN
811750NaN41.224747NaNNaNNaNNaN
\n", "

910013 rows × 6 columns

\n", "
" ], "text/plain": [ " full disease treatment cancers immune rare\n", "1 36.687307 15.822645 34.521028 43.375576 25.016961 29.205069\n", "2 15.822645 34.829721 48.519362 42.413793 12.533921 49.732620\n", "3 34.829721 16.718266 39.894860 42.539863 25.407056 28.587699\n", "4 16.718266 19.161875 49.007009 47.586207 15.315468 45.386266\n", "5 19.161875 19.338788 47.079439 44.529262 22.913840 31.361323\n", "... ... ... ... ... ... ...\n", "807930 NaN 6.666667 NaN NaN NaN NaN\n", "808885 NaN 35.490605 NaN NaN NaN NaN\n", "809840 NaN 1.909059 NaN NaN NaN NaN\n", "810795 NaN 19.093023 NaN NaN NaN NaN\n", "811750 NaN 41.224747 NaN NaN NaN NaN\n", "\n", "[910013 rows x 6 columns]" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_combined_simi" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "### check normality" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.07311960142666818, 0.0009999999999998899)" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ " lilliefors(df_full['similaridadAA_2'], dist ='norm')" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.07183375914598766, 0.0009999999999998899)" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ " lilliefors(simi_dise_lung['similaridadAA_2'], dist ='norm')" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.10257965358353227, 0.0009999999999998899)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ " lilliefors(simi_treat['similaridadAA_2'], dist ='norm')" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.08912075378445838, 0.0009999999999998899)" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ " lilliefors(simi_treatvscan['similaridadAA_2'], dist ='norm')" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.09513643242050096, 0.0009999999999998899)" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ " lilliefors(simi_immune['similaridadAA_2'], dist ='norm')" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.11815860415502721, 0.0009999999999998899)" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ " lilliefors(simi_rare['similaridadAA_2'], dist ='norm')" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "### MannWhitney-U Test" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "MannwhitneyuResult(statistic=924510506.0, pvalue=4.652560643340582e-96)" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mannwhitneyu(simi_treat['similaridadAA_2'], df_full['similaridadAA_2'])" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "MannwhitneyuResult(statistic=815855086.0, pvalue=4.4061398682037484e-104)" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mannwhitneyu(simi_treat['similaridadAA_2'], simi_dise_lung['similaridadAA_2'])" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "MannwhitneyuResult(statistic=337227628.0, pvalue=2.645525644111081e-45)" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mannwhitneyu(simi_treat['similaridadAA_2'], simi_treatvscan['similaridadAA_2'])" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "MannwhitneyuResult(statistic=162873923.0, pvalue=2.6190944700223456e-28)" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mannwhitneyu(simi_treat['similaridadAA_2'], simi_immune['similaridadAA_2'])" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "MannwhitneyuResult(statistic=1320303.0, pvalue=9.116056926681932e-43)" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mannwhitneyu(simi_treat['similaridadAA_2'], simi_rare['similaridadAA_2'])" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "### full vs cancers, immune, rare " ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "MannwhitneyuResult(statistic=126514277730.0, pvalue=0.0)" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mannwhitneyu(df_full['similaridadAA_2'], simi_treatvscan['similaridadAA_2'])" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "MannwhitneyuResult(statistic=56136988142.0, pvalue=0.0)" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mannwhitneyu(df_full['similaridadAA_2'], simi_immune['similaridadAA_2'])" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "MannwhitneyuResult(statistic=583393747.0, pvalue=0.0006175535065294831)" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mannwhitneyu(df_full['similaridadAA_2'], simi_rare['similaridadAA_2'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### BOXPLOT" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "treat = simi_treat['similaridadAA_2']\n", "treat = pd.DataFrame(treat)\n", "disease = simi_dise_lung['similaridadAA_2']\n", "disease = pd.DataFrame(disease)\n", "full = df_full['similaridadAA_2']\n", "full = pd.DataFrame(full)\n", "treatvscan = simi_treatvscan['similaridadAA_2']\n", "treatvscan = pd.DataFrame(treatvscan)\n", "immune = simi_immune[\"similaridadAA_2\"]\n", "immune = pd.DataFrame(immune)\n", "rare = simi_rare[\"similaridadAA_2\"]\n", "rare = pd.DataFrame(rare)\n", "\n", "treat[\"Group\"] = \"Treatment_lung\"\n", "disease[\"Group\"] = \"Disease_lung\"\n", "full[\"Group\"] = \"Full_protein_lung\"\n", "treatvscan[\"Group\"] = \"Cancers\"\n", "immune[\"Group\"] = \"Immune_diseases\"\n", "rare[\"Group\"] = \"Rare_diseases\"\n", "\n", "groups = pd.concat([treat,disease,full,treatvscan,immune,rare])" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
similaridadAA_2Group
049.942396Treatment_lung
134.521028Treatment_lung
248.519362Treatment_lung
339.894860Treatment_lung
449.007009Treatment_lung
.........
134748.662120Rare_diseases
134839.428919Rare_diseases
134950.789793Rare_diseases
135038.456865Rare_diseases
135141.403402Rare_diseases
\n", "

2168336 rows × 2 columns

\n", "
" ], "text/plain": [ " similaridadAA_2 Group\n", "0 49.942396 Treatment_lung\n", "1 34.521028 Treatment_lung\n", "2 48.519362 Treatment_lung\n", "3 39.894860 Treatment_lung\n", "4 49.007009 Treatment_lung\n", "... ... ...\n", "1347 48.662120 Rare_diseases\n", "1348 39.428919 Rare_diseases\n", "1349 50.789793 Rare_diseases\n", "1350 38.456865 Rare_diseases\n", "1351 41.403402 Rare_diseases\n", "\n", "[2168336 rows x 2 columns]" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "groups" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import seaborn as sns\n", "import matplotlib.pyplot as plt\n", "\n", "# Definir una paleta de colores derivados del azul\n", "my_colors = [\"#1b4332\", \"#40916c\", \"#52b788\", \"#74c69d\", \"#95d5b2\", \"#d8f3dc\"]\n", "\n", "# Configurar la paleta de colores\n", "sns.set_palette(my_colors)\n", "\n", "# Crear la figura\n", "fig = plt.figure(figsize=(12, 6))\n", "\n", "# Graficar el boxenplot\n", "sns.boxenplot(x=\"similaridadAA_2\", y=\"Group\", data=groups, \n", " width=0.7, order=[\"Treatment_lung\", \"Disease_lung\", \"Full_protein_lung\", \"Cancers\",\"Immune_diseases\",\"Rare_diseases\"],\n", " showfliers=True)\n", "\n", "# Personalizar ejes y eliminar despine\n", "plt.xlabel(\"\")\n", "plt.ylabel(\"Value Similarity_AA\")\n", "sns.despine()\n", "\n", "# Guardar el gráfico como SVG\n", "plt.savefig(\"plot_Test_6groups_SIMIAA_2_name.svg\")\n", "\n", "# Mostrar el gráfico\n", "plt.show()\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.5" } }, "nbformat": 4, "nbformat_minor": 4 }