{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Sujet 7 : Autour du SARS-CoV-2 (Covid-19)\n", "\n", "## Objectifs\n", "\n", "Le but est ici de reproduire des graphes semblables à ceux du [South China Morning Post (SCMP)](https://www.scmp.com/), sur la page The Coronavirus Pandemic et qui montrent pour différents pays le nombre cumulé (c'est-à-dire le nombre total de cas depuis le début de l'épidémie) de personnes atteintes de la maladie à coronavirus 2019.\n", "\n", "1. Télécharger les données depuis le site et vérifier leur intégrité;\n", "\n", "2. Afficher un graphe montrant l’évolution du nombre de cas cumulé au cours du temps pour les pays suivants : la Belgique (Belgium), la Chine - toutes les provinces sauf Hong-Kong (China), Hong Kong (China, Hong-Kong), la France métropolitaine (France), l’Allemagne (Germany), l’Iran (Iran), l’Italie (Italy), le Japon (Japan), la Corée du Sud (Korea, South), la Hollande sans les colonies (Netherlands), le Portugal (Portugal), l’Espagne (Spain), le Royaume-Unis sans les colonies (United Kingdom), les États-Unis (US);\n", "\n", "3. Afficher un graphe avec la date en abscisse et le nombre cumulé de cas à cette date en ordonnée. Deux versions de ce graphe seront proposées, une avec une échelle linéaire et une avec une échelle logarithmique.\n", "\n", "## Première partie : récupération et nettoyage des données \n", "\n", "On déclare les librairies qui seront utilisées ici, puis on importe les données : \n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ " %matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n", "import isoweek\n", "import math" ] }, { "cell_type": "code", "execution_count": 2, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Province/StateCountry/RegionLatLong1/22/201/23/201/24/201/25/201/26/201/27/20...4/23/204/24/204/25/204/26/204/27/204/28/204/29/204/30/205/1/205/2/20
0NaNAfghanistan33.00000065.000000000000...1279135114631531170318281939217123352469
1NaNAlbania41.15330020.168300000000...663678712726736750766773782789
2NaNAlgeria28.0339001.659600000000...3007312732563382351736493848400641544295
3NaNAndorra42.5063001.521800000000...723731738738743743743745745747
4NaNAngola-11.20270017.873900000000...25252526272727273035
..................................................................
261NaNWestern Sahara24.215500-12.885800000000...6666666666
262NaNSao Tome and Principe0.1863606.613081000000...4444488141616
263NaNYemen15.55272748.516388000000...11111166710
264NaNComoros-11.64550043.333300000000...0000000113
265NaNTajikistan38.86103471.276093000000...0000000151576
\n", "

266 rows × 106 columns

\n", "
" ], "text/plain": [ " Province/State Country/Region Lat Long 1/22/20 \\\n", "0 NaN Afghanistan 33.000000 65.000000 0 \n", "1 NaN Albania 41.153300 20.168300 0 \n", "2 NaN Algeria 28.033900 1.659600 0 \n", "3 NaN Andorra 42.506300 1.521800 0 \n", "4 NaN Angola -11.202700 17.873900 0 \n", ".. ... ... ... ... ... \n", "261 NaN Western Sahara 24.215500 -12.885800 0 \n", "262 NaN Sao Tome and Principe 0.186360 6.613081 0 \n", "263 NaN Yemen 15.552727 48.516388 0 \n", "264 NaN Comoros -11.645500 43.333300 0 \n", "265 NaN Tajikistan 38.861034 71.276093 0 \n", "\n", " 1/23/20 1/24/20 1/25/20 1/26/20 1/27/20 ... 4/23/20 4/24/20 \\\n", "0 0 0 0 0 0 ... 1279 1351 \n", "1 0 0 0 0 0 ... 663 678 \n", "2 0 0 0 0 0 ... 3007 3127 \n", "3 0 0 0 0 0 ... 723 731 \n", "4 0 0 0 0 0 ... 25 25 \n", ".. ... ... ... ... ... ... ... ... \n", "261 0 0 0 0 0 ... 6 6 \n", "262 0 0 0 0 0 ... 4 4 \n", "263 0 0 0 0 0 ... 1 1 \n", "264 0 0 0 0 0 ... 0 0 \n", "265 0 0 0 0 0 ... 0 0 \n", "\n", " 4/25/20 4/26/20 4/27/20 4/28/20 4/29/20 4/30/20 5/1/20 5/2/20 \n", "0 1463 1531 1703 1828 1939 2171 2335 2469 \n", "1 712 726 736 750 766 773 782 789 \n", "2 3256 3382 3517 3649 3848 4006 4154 4295 \n", "3 738 738 743 743 743 745 745 747 \n", "4 25 26 27 27 27 27 30 35 \n", ".. ... ... ... ... ... ... ... ... \n", "261 6 6 6 6 6 6 6 6 \n", "262 4 4 4 8 8 14 16 16 \n", "263 1 1 1 1 6 6 7 10 \n", "264 0 0 0 0 0 1 1 3 \n", "265 0 0 0 0 0 15 15 76 \n", "\n", "[266 rows x 106 columns]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_url = \"https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv\"\n", "raw_data = pd.read_csv(data_url, skiprows=0)\n", "raw_data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "On regarde maintenant si il y a des données manquantes dans l'une des colonnes, qui ne soit pas la province (certains pays n'en ont pas). Pour ça, on va créer une copie du tableau en supprimant la colonne province puis regarder si il y a des null :" ] }, { "cell_type": "code", "execution_count": 3, "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", "
Country/RegionLatLong1/22/201/23/201/24/201/25/201/26/201/27/201/28/20...4/23/204/24/204/25/204/26/204/27/204/28/204/29/204/30/205/1/205/2/20
\n", "

0 rows × 105 columns

\n", "
" ], "text/plain": [ "Empty DataFrame\n", "Columns: [Country/Region, Lat, Long, 1/22/20, 1/23/20, 1/24/20, 1/25/20, 1/26/20, 1/27/20, 1/28/20, 1/29/20, 1/30/20, 1/31/20, 2/1/20, 2/2/20, 2/3/20, 2/4/20, 2/5/20, 2/6/20, 2/7/20, 2/8/20, 2/9/20, 2/10/20, 2/11/20, 2/12/20, 2/13/20, 2/14/20, 2/15/20, 2/16/20, 2/17/20, 2/18/20, 2/19/20, 2/20/20, 2/21/20, 2/22/20, 2/23/20, 2/24/20, 2/25/20, 2/26/20, 2/27/20, 2/28/20, 2/29/20, 3/1/20, 3/2/20, 3/3/20, 3/4/20, 3/5/20, 3/6/20, 3/7/20, 3/8/20, 3/9/20, 3/10/20, 3/11/20, 3/12/20, 3/13/20, 3/14/20, 3/15/20, 3/16/20, 3/17/20, 3/18/20, 3/19/20, 3/20/20, 3/21/20, 3/22/20, 3/23/20, 3/24/20, 3/25/20, 3/26/20, 3/27/20, 3/28/20, 3/29/20, 3/30/20, 3/31/20, 4/1/20, 4/2/20, 4/3/20, 4/4/20, 4/5/20, 4/6/20, 4/7/20, 4/8/20, 4/9/20, 4/10/20, 4/11/20, 4/12/20, 4/13/20, 4/14/20, 4/15/20, 4/16/20, 4/17/20, 4/18/20, 4/19/20, 4/20/20, 4/21/20, 4/22/20, 4/23/20, 4/24/20, 4/25/20, 4/26/20, 4/27/20, ...]\n", "Index: []\n", "\n", "[0 rows x 105 columns]" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "check_null_data = raw_data.drop(columns=['Province/State'])\n", "check_null_data[check_null_data.isnull().any(axis=1)]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Il n'y a pas de données manquantes. \n", "\n", "## Seconde partie : formattage du dataset pour l'affichage du graphe par pays\n", "\n", "Pour formater le dataset, nous allons créer une fonction faisant office de filtre : si le pays est défini dans le tableau (qui représente tous les pays demandés dans l'énoncé) alors on le garde dans le dataset; sinon on le retire. Certains pays devant être affichés sans leurs colonies, le filtre le prendra en compte et retirera les lignes ou le champ *Province/State* est défini.\n", "\n", "La Chine est un cas particulier : on va récupérer toutes les rows de Chine dans un second dataset et les fusionner (sauf Hong Kong) pour obtenir le nombre de cas en Chine, puis on ira la fusionner avec le premier dataset plus tard.\n", "\n", "Voici le résultat :" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
LatLong1/22/201/23/201/24/201/25/201/26/201/27/201/28/201/29/20...4/23/204/24/204/25/204/26/204/27/204/28/204/29/204/30/205/1/205/2/20
Country/Region
China1061.03673570.219754864191814012067286955016077...82849828648287282875828818290382907829198292082920
\n", "

1 rows × 104 columns

\n", "
" ], "text/plain": [ " Lat Long 1/22/20 1/23/20 1/24/20 1/25/20 \\\n", "Country/Region \n", "China 1061.0367 3570.2197 548 641 918 1401 \n", "\n", " 1/26/20 1/27/20 1/28/20 1/29/20 ... 4/23/20 4/24/20 \\\n", "Country/Region ... \n", "China 2067 2869 5501 6077 ... 82849 82864 \n", "\n", " 4/25/20 4/26/20 4/27/20 4/28/20 4/29/20 4/30/20 5/1/20 \\\n", "Country/Region \n", "China 82872 82875 82881 82903 82907 82919 82920 \n", "\n", " 5/2/20 \n", "Country/Region \n", "China 82920 \n", "\n", "[1 rows x 104 columns]" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def filter_countries(row):\n", " countries = ['Belgium', 'France', 'China', 'Germany', 'Iran', 'Italy', 'Japan', 'Korea', 'Netherlands', 'Portugal', 'Spain', 'United Kingdom', 'US']\n", " if row['Country/Region'] in countries:\n", " if str(row['Country/Region']) in ['France','Netherlands','United Kingdom']:\n", " if str(row['Province/State']) == \"nan\":\n", " return True\n", " else:\n", " return False\n", " if str(row['Country/Region']) == \"China\":\n", " if str(row['Province/State']) == \"Hong Kong\":\n", " return True\n", " else:\n", " return False\n", " return True\n", "\n", " return False\n", "\n", "only_china = raw_data.loc[raw_data['Country/Region'] == 'China']\n", "only_china = only_china.loc[only_china['Province/State'] != 'Hong Kong']\n", "only_china = only_china.groupby(['Country/Region']).sum()\n", "only_china" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Le calcul suivant va appliquer le filtre sur le dataset, renommer la ligne pour la Chine (qui représente seulement Hong Kong) en Hong Kong (on le considèrera comme une région), fusionner la ligne pour la Chine du second dataset (qui est la somme de toutes les régions) avec le premier dataset puis enfin nettoyer le dataset des colonnes devenues obsolètes et transposer le dataset pour que les rows soient maintenant des dates.\n", "\n", "Seulement, ces dates sont en format texte : on utilise une fonction lambda pour les convertir en format datetime, puis on les réindexent pour qu'elles soient triées par temps. " ] }, { "cell_type": "code", "execution_count": 5, "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Country/RegionBelgiumHong KongFranceGermanyIranItalyJapanNetherlandsPortugalSpainUnited KingdomUSChina
2020-01-22000000200001548
2020-01-23020000200001641
2020-01-24022000200002918
2020-01-250530002000021401
2020-01-260830004000052067
..........................................
2020-04-2847334103716760515991292584201505137363841624322210773161145101258282903
2020-04-2947859103716509316153993657203591138953880224505212917165221103990982907
2020-04-3048519103716576416300994640205463140883931625045213435171253106942482919
2020-05-0149032103916576416407795646207428143053979125351213435177454110346182920
2020-05-0249517103916697616496796448209328145714023625190216582182260113253982920
\n", "

102 rows × 13 columns

\n", "
" ], "text/plain": [ "Country/Region Belgium Hong Kong France Germany Iran Italy Japan \\\n", "2020-01-22 0 0 0 0 0 0 2 \n", "2020-01-23 0 2 0 0 0 0 2 \n", "2020-01-24 0 2 2 0 0 0 2 \n", "2020-01-25 0 5 3 0 0 0 2 \n", "2020-01-26 0 8 3 0 0 0 4 \n", "... ... ... ... ... ... ... ... \n", "2020-04-28 47334 1037 167605 159912 92584 201505 13736 \n", "2020-04-29 47859 1037 165093 161539 93657 203591 13895 \n", "2020-04-30 48519 1037 165764 163009 94640 205463 14088 \n", "2020-05-01 49032 1039 165764 164077 95646 207428 14305 \n", "2020-05-02 49517 1039 166976 164967 96448 209328 14571 \n", "\n", "Country/Region Netherlands Portugal Spain United Kingdom US China \n", "2020-01-22 0 0 0 0 1 548 \n", "2020-01-23 0 0 0 0 1 641 \n", "2020-01-24 0 0 0 0 2 918 \n", "2020-01-25 0 0 0 0 2 1401 \n", "2020-01-26 0 0 0 0 5 2067 \n", "... ... ... ... ... ... ... \n", "2020-04-28 38416 24322 210773 161145 1012582 82903 \n", "2020-04-29 38802 24505 212917 165221 1039909 82907 \n", "2020-04-30 39316 25045 213435 171253 1069424 82919 \n", "2020-05-01 39791 25351 213435 177454 1103461 82920 \n", "2020-05-02 40236 25190 216582 182260 1132539 82920 \n", "\n", "[102 rows x 13 columns]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "if len(raw_data.index) > 0:\n", " new_data = raw_data[raw_data.apply(filter_countries, axis=1)]\n", "\n", "new_data = new_data.set_index('Country/Region')\n", "new_data = new_data.rename(index={\"China\": \"Hong Kong\"})\n", "new_data = new_data.append(only_china, sort='False')\n", "new_data = new_data.drop(columns=['Lat', 'Long','Province/State'])\n", "new_data = new_data.T\n", "new_data.index = [pd.to_datetime(datetext) for datetext in new_data.index]\n", "new_data = new_data.sort_index()\n", "new_data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Troisième partie : affichage du graphe par pays\n", "\n", "Nos données sont prêtes : on les affiche en utilisant la fonction plot() fournie par matplotlib :" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZcAAAEHCAYAAABiAAtOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzs3XlYVdX++PH3OgOTgCIqmhNmec0ByQktp+peta5jWWqDmnrV0gbrVtbvdtNbNljfLLMsy7FsMMv0erPUlMwyFQvL1MT0qCgqyiDj4Qzr98fenFBREQ4C+nk9Dw+Htfdae214Hj7PGvZnK601QgghhD9ZKroDQgghLj0SXIQQQvidBBchhBB+J8FFCCGE30lwEUII4XcSXIQQQvidBBchhBB+J8FFCCGE30lwEUII4Xe2iu7AxVSrVi0dHR1d0d0QQogqZevWrce11rUvpM5lFVyio6NJSEio6G4IIUSVopTaf6F1ZFpMCCGE30lwEUII4XcSXIQQQvjdZbXmIoTwL5fLRXJyMvn5+RXdFeEHQUFBNGjQALvdXua2JLgIIUotOTmZsLAwoqOjUUpVdHdEGWitOXHiBMnJyTRp0qTM7cm0mBCi1PLz84mMjJTAcglQShEZGem3UagEFyFEmUhguXQU+7c8uqNUbUlwEUIIUbzDP8PbXUpVVYKLEKJSOXLkCEOGDKFp06a0aNGCW265hd27d/ut/fj4eH744YdS1U1JSaFnz544HA6Cg4OJjY2lRYsWDBs2DJfLVeo+jR49mh07SjdCKDfuAlg2Aapd0IP5PhJchBCVhtaagQMH0qNHD/744w927NjB888/z9GjR/12jXMFF7fbfc66X331Fb169QKgadOmJCYm8uuvv5KcnMzixYtL3af33nuPFi1alLp+ufj+NTi6Hfq8WqrqElyEEJXGunXrsNvtjBs3zlcWGxtLly5deOyxx2jVqhWtW7fmk08+AYxA0adPH9+5EyZMYP78+YCR7umZZ56hbdu2tG7dml27duFwOHj77beZPn06sbGxfPfdd4wYMYJHHnmEG264gccee4yrr76a1NRUALxeL1dddRXHjx8HjOBy8803n9Jnq9VKx44dOXToEAAej4fHHnuMDh06EBMTwzvvvONr6/7776dly5b06dOHW265hSVLlgDQo0cPX2qqjz76iNatW9OqVSueeOIJ33VCQ0P5f//v/9GmTRs6derk14B7hmM74dtp0PJWaP73UjUhwUUIUWls376ddu3anVH++eefk5iYyLZt21izZg2PPfYYKSkp522vVq1a/PTTT9x333288sorREdHM27cOCZOnEhiYiJdu3YFYPfu3axZs4bp06dz9913s2jRIgDWrFlDmzZtqFWrFh6Ph99///2MEUZ+fj6bNm2id+/eAMyZM4fq1auzZcsWtmzZwrvvvsu+ffv4/PPPcTgc/Prrr7z33nts3LjxjP4ePnyYJ554grVr15KYmMiWLVv44osvAMjJyaFTp05s27aNbt268e67717YL7ektDamw4LC4ZaXS92MBBchRKW3YcMGhg4ditVqJSoqiu7du7Nly5bz1rv11lsBaNeuHQ6H46zn3X777VitVgBGjhzJwoULAZg7dy733nsvAJs2bSIuLs5X548//iA2NpbIyEgaNWpETEwMAKtWrWLhwoXExsYSFxfHiRMnSEpKYsOGDdx+++1YLBbq1q3LDTfccEY/tmzZQo8ePahduzY2m4277rqL9evXAxAQEOAbpZ3vfsqkIBsOJcDN06BarVI3I8FFCFFptGzZkq1bt55RrrUu9nybzYbX6/X9fPozGoGBgYAxdXWu9ZRq1ar5Pjds2JCoqCjWrl3Lpk2bfNNgK1eu9I1O4M81lz179vDjjz+yfPlyX1/feOMNEhMTSUxMZN++ffTs2fOs91CS+wSw2+2+rcLnu59S87ohPxOadIdWt5WpKQkuQohK48Ybb8TpdJ4y5bNlyxYiIiL45JNP8Hg8pKamsn79ejp27Ejjxo3ZsWMHTqeTzMxMvvnmm/NeIywsjKysrHOeM3r0aO6++27uuOMO34jmm2++4aabbjrj3Hr16vHiiy/ywgsvANCrVy9mzZrl2z22e/ducnJy6NKlC5999hler5ejR48SHx9/RltxcXF8++23HD9+HI/Hw0cffUT37t3Pe09+k3UUtBd6TYUyPr8kwUUIUWkopVi6dCmrV6+madOmtGzZksmTJ3PnnXcSExNDmzZtuPHGG5k2bRp169alYcOG3HHHHcTExHDXXXdx7bXXnvcaffv2ZenSpb4F/eL069eP7Oxs35RYamoqQUFBhIeHF3v+gAEDyM3N5bvvvmP06NG0aNGCtm3b0qpVK8aOHYvb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GQkpw68Ae3DF9gUJLkIIUWqZmZn06tWLMWPGcO+991ZcR9xOyEw21lmq1a64fhQhiSuFEP6xchIc+dW/bdZtDTe/WOrq+/fvZ+TIkaSmplK7dm3mzZtHo0aNGDFiBOHh4SQkJHDkyBGmTZvGoEGDzpmC/3TZ2dncfPPN3Hnnndx3332AkSHg8ccfZ+XKlSil+Ne//sXgwYOJj49n8uTJ1KpVi+3bt9OuXTs++OADlFJ8+eWXPPLII9SqVYu2bduyd+9eVqxYUfKbLJwOg4uSkLKkZOQihKjSCtO/FH79+9//9h2bMGECw4YN45dffuGuu+7iwQcf9B1LSUlhw4YNrFixgkmTJgGnpuB/77332Lhx41mv+8gjj9ClSxcmTpzoK/v8889JTExk27ZtrFmzhscee4yUlBQAfv75Z1577TV27NjB3r17+f7778nPz2fs2LGsXLmSDRs2kJqaeuG/gNzjUJBtpHa5yA9KnouMXIQQ/lGGEUZZFE25D8aaS0JCAmCk4P/8888BuOeee3j88cd95w0YMACLxUKLFi04evQocGEp+G+88UaWLVvGP//5T1++sg0bNjB06FCsVitRUVF0796dLVu2EB4eTseOHWnQwHiWPDY2FofDQWhoKFdeeSVNmjQBYOjQocyePbvkN+91w8kUYzospGbJ610EMnIRQlw2iqbOL5oevzDHYklT8AMMGTKE++67j1tuuYWsrKzz1i96PavVitvtvqDrFSvrCGgPVK9faabDCklwEUJcsq677jo+/vhjABYtWkSXLl3OeX5JU/AXevjhh7npppsYOHAgBQUFdOvWjU8++QSPx0Nqairr16+nY8ezP5LXvHlz9u7di8PhAOCTTz4p+c258iAn1XijpD2k5PUuEgkuQohL1owZM5g3bx4xMTG8//77vP766+c8/7bbbqNBgwa0atWKsWPHnjUFf1EvvfQSDRs25J577qF///7ExMTQpk0bbrzxRqZNm3bORJjBwcG89dZb9O7dmy5duhAVFXXe6wHGIn7mIVBWI3dYJVSilPuXivbt2+vCuVghRNldCin3T3exU/AXXk9rzfjx47n66qtP2SRQrPxMSNsL4fUhtM65z71AlTXlvhBCVGkXOwX/u+++y4IFCygoKODaa69l7Nix566gNZw8ZOwMq1arXPtWFhJchBCiiIudgn/ixInnH6kUlZdmPDRZwbnDzqfy9kwIIcSptNfYIWYPgaASrM1UIAkuQghRVeScAE+BsYhfybYen06CixBCVAVej/F2yYBQCAyr6N6clwQXIYSoCnJSjSfyw6+o9KMWkAV9IUQVZ7Vaad26te/nL774gujo6IrrUHnwFED2MQgMh4BqFd2bEpHgIoSo0k7PLXY6t9uNzVaF/9VpDRkHjcX86vUrujclVoV/40KIyuSlzS+xK22XX9tsXrM5T3R84oLrzZ8/n//973/k5+eTk5PD8uXL6d+/P+np6bhcLp577jn69++Pw+Hg5ptvpkuXLvzwww/Ur1+fZcuWERwczJ49exg3bhypqalYrVY+/fRTmjZtyssvv8zixYtxOp0MHDiQKVOm+PWez5CXbr4ErD7Ygsr3Wn4kay5CiCqtaMr9gQMH+so3btzIggULWLt2LUFBQSxdupSffvqJdevW8eijj/qSRiYlJTF+/Hh+++03atSowWeffQbAXXfdxfjx49m2bRs//PAD9erVY9WqVSQlJbF582YSExPZunUr69evL7+b87iMl4DZq1Wal4CVlIxchBB+UZoRhj+cbVrsb3/7GzVrGmnotdY89dRTrF+/HovFwqFDh3xp9ps0aUJsbCwA7dq1w+FwkJWVxaFDh3zBKijIGDGsWrWKVatWce211wJG6pakpCS6detWPjeXaU6HVaKXgJWUBBchxCWpWrU/F74XLVpEamoqW7duxW63Ex0dTX5+PnBmKvy8vLyzpsLXWvPkk0+eP0WLP+SlGznEwq4Ae9WZDisk02JCiEteZmYmderUwW63s27dOvbv33/O88PDw2nQoAFffPEFAE6nk9zcXHr16sXcuXPJzs4G4NChQxw7dsz/HfZNh4X4PTHlxSIjFyHEJe+uu+6ib9++tG/fntjYWJo3b37eOu+//z5jx47l3//+N3a7nU8//ZSePXuyc+dOOnfuDEBoaCgffPCB702UfpOZbDw0GVn1psMKScp9IUSpXYop9ytcXjqkO4wUL2Hlm5G5OP5KuS/TYkIIUVmcMh0WVdG9KZMyBRel1ESl1G9Kqe1KqY+UUkFKqZpKqdVKqSTze0SR859USu1RSv2ulOpVpLydUupX89gMZb7oWikVqJT6xCzfpJSKLlJnuHmNJKXU8LLchxBCVDitjd1hXk+V3B12ulIHF6VUfeBBoL3WuhVgBYYAk4BvtNZXA9+YP6OUamEebwn0Bt5SSlnN5mYBY4Crza/eZvkoIF1rfRUwHXjJbKsm8AwQB3QEnikaxIQQosrx7Q6rB/bgiu5NmZV1WswGBCulbEAIcBjoDywwjy8ABpif+wMfa62dWut9wB6go1KqHhCutd6ojQWghafVKWxrCXCTOarpBazWWqdprdOB1fwZkIQQompxFxjTYQHVquzusNOVOrhorQ8BrwAHgBQgU2u9CojSWqeY56QAhb+p+sDBIk0km2X1zc+nl59SR2vtBjKByHO0dQal1BilVIJSKiE1NbV0NyuEEOVFa8jYD2io0bjKT4cVKsu0WATGyKIJcAVQTSl197mqFFOmz1Fe2jqnFmo9W2vdXmvdvnbtqpU+QQhxGchJhYJsM3dY4PnPryLKMi32V2Cf1jpVa+0CPgeuA46aU12Y3wufMEoGGhap3wBjGi3Z/Hx6+Sl1zKm36kDaOdoSQlyGjh49yp133smVV15Ju3bt6Ny5M0uXLq3obp2fKxdOHjZS6YdEVnRv/KosweUA0EkpFWKug9wE7ASWA4W7t4YDy8zPy4Eh5g6wJhgL95vNqbMspVQns51hp9UpbGsQsNZcl/ka6KmUijBHUD3NMiHEZUZrzYABA+jWrRt79+5l69atfPzxxyQnJ5+/MuDxeMq5h2fh9UCaAyy2S2J32OlK/YS+1nqTUmoJ8BPgBn4GZgOhwGKl1CiMAHS7ef5vSqnFwA7z/PFa68K/6n3AfCAYWGl+AcwB3ldK7cEYsQwx20pTSj0LbDHP+4/WOq209yKEKLsjzz+Pc6d/U+4HXtOcuk89dc5z1q5dS0BAAOPGjfOVNW7cmAceeACPx8OkSZOIj4/H6XQyfvx4xo4dS3x8PFOmTKFevXokJiby5Zdf0rt3b7p06cKPP/5ImzZtuPfee3nmmWc4duwYixYtomPHjmzevJmHH36YvLw8goODmTdvHn/5y1+YP38+y5cvJzc3lz/++IOBAwcybdo05syZw/bt25k+fToA7777Ljt37uTV//s/Y9uxxwmRV4HV7tffW2VQpvQvWutnMLYEF+XEGMUUd/5UYGox5QlAq2LK8zGDUzHH5gJzL7DLQohLzG+//Ubbtm2LPTZnzhyqV6/Oli1bcDqdXH/99fTs2ROAzZs3s337dpo0aYLD4WDPnj18+umnzJ49mw4dOvDhhx+yYcMGli9fzvPPP88XX3xB8+bNWb9+PTabjTVr1vDUU0/5UvQnJiby888/ExgYyF/+8hceeOABhgwZQkxMDNOmTcNutzNv3jzeeecdyE0zth6H1YPAsIv2u7qYJLeYEMIvzjfCuFjGjx/Phg0bCAgIoHHjxvzyyy8sWbIEMBJYJiUlERAQQMeOHWnSpImvXpMmTXyvS27ZsiU33XQTSilat26Nw+Hw1R8+fDhJSUkopXC5XL76N910E9WrVwegRYsW7N+/n4YNG3LjjTeyYsUKrrnmGlwuF62bXwWpuyEgtMo/hX8uElyEEFVay5YtfaMHgDfffJPjx4/Tvn17GjVqxBtvvEGvXr1OqRMfH39KSn44NfW+xWLx/WyxWHC73QA8/fTT3HDDDSxduhSHw0GPHj2KrW+1Wn11Ro8ezfPPP0/z5s25d8QISN8PFgtERF9y6yxFSW4xIUSVduONN5Kfn8+sWbN8Zbm5uQD06tWLWbNm+UYYu3fvJicnp9TXyszMpH5945G6+fPnl6hOXFwcBw8e5MMPP2Ron+7gzjMW8C/BdZaiJLgIIao0pRRffPEF3377LU2aNKFjx44MHz6cl156idGjR9OiRQvatm1Lq1atGDt2rG9EURqPP/44Tz75JNdff/0F7TK74447uL5TRyLsLgipBUHVS92HqkJS7gshSk1S7pdMn7//nYkjBnBT9y5Q6y/GtFglJSn3hRCiksvIyKBZs2YE2zQ3Xd8BIhpX6sDiT7KgL4QQ5aRGjRrs/vUnOJFkJKS0h1R0ly6ayyOECiFERdDayHZssV/S246LI8FFCCHKS+4JY3dY9fpgsZ7//EuIBBchhCgPXreRlDIgFIJqVHRvLjoJLkIIUR6yjoD2GKn0L+GHJc9GgosQokoLDQ2t6C6cyZVnvKclpBYEXD6L+EVJcBFCXHIqLI0+/LmIr6xGYsrLlGxFFkL4xXeLd3P8YLZf26zVMJSudzQr0bmnp9HfsWMHAwYM4ODBg+Tn5/PQQw8xZswYwBjtPPTQQ6xYsYLg4GCWLVtGVJSfdnPlZxhvlqzeAKyX779YGbkIIS4ZmzdvZurUqezYsQOAuXPnsnXrVhISEpgxYwYnTpwAICcnh06dOrFt2za6devGu+++658OeD2QeQhswcaU2GXs8g2rQgi/KukIozydnkZ/xowZvtcdHzx4kKSkJCIjIwkICKBPnz4AtGvXjtWrV/unA9lHweu65DMel4QEFyHEJaNoGv34+HjWrFnDxo0bCQkJoUePHuTn5wNgt9tR5j//ounxy8SdD9nHILgmBFbCTQYXmUyLCSEuSZmZmURERBASEsKuXbv48ccfy+9ivkV8C4RfUX7XqUIkuAghLkm9e/fG7XYTExPD008/TadOncrvYvkZ4Mwydodd4u9pKSlJuS+EKDVJuY+xiH9sJ1hsUPsvVX6tRVLuCyFEZZB1xFjEr9GwygcWf5LgIoQQpeXKg5xjEBIJAdXOf/5lRIKLEEKUhtaQccB8El8W8U8nwUUIIUoj5xi4co3psMv4SfyzkeAihBAXypUPJ1MgqPplmU6/JCS4CCHEhfBNh1mguizin02ZgotSqoZSaolSapdSaqdSqrNSqqZSarVSKsn8HlHk/CeVUnuUUr8rpXoVKW+nlPrVPDZDmY/OKqUClVKfmOWblFLRReoMN6+RpJQaXpb7EEJUXYUp9x0OBx9++OF5z3c4HLRq1ar0F8xJBVeOmZhSnmk5m7KOXF4HvtJaNwfaADuBScA3WuurgW/Mn1FKtQCGAC2B3sBbSqnC937OAsYAV5tfvc3yUUC61voqYDrwktlWTeAZIA7oCDxTNIgJIS4/JQ0uZeLKM94uGVgdguVfzrmUehVKKRUOdANGAGitC4ACpVR/oId52gIgHngC6A98rLV2AvuUUnuAjkopBxCutd5otrsQGACsNOtMNttaAsw0RzW9gNVa6zSzzmqMgPRRae9HCFE26+bP5tj+vX5ts07jK7lhxJgSnTtp0iR27txJbGwsw4cPZ+DAgdxzzz3k5OQAMHPmTK677rpT6nTt2pU33niD2NhYAK6//npmzZpFTEzMmRfQXkjfDxarPNNSAmUZuVwJpALzlFI/K6XeU0pVA6K01ikA5vc65vn1gYNF6iebZfXNz6eXn1JHa+0GMoHIc7R1BqXUGKVUglIqITU1tbT3KoSo5F588UW6du1KYmIiEydOpE6dOqxevZqffvqJTz75hAcffPCMOqNHj2b+/PkA7N69G6fTWXxgAchKAXce1Ggk02ElUJb9czagLfCA1nqTUup1zCmwsyguzOtzlJe2zqmFWs8GZoOR/uUc/RNClEFJRxgXi8vlYsKECSQmJmK1Wtm9e/cZ59x+++08++yzvPzyy8ydO5cRI0YU35gzy8h4HBJp7BAT51WW4JIMJGutN5k/L8EILkeVUvW01ilKqXrAsSLnNyxSvwFw2CxvUEx50TrJSikbUB1IM8t7nFYnvgz3IoS4xEyfPp2oqCi2bduG1+slKCjojHNCQkL429/+xrJly1i8eDHF5h70uI3pMGsghBc7QSKKUeppMa31EeCgUuovZtFNwA5gOVC4e2s4sMz8vBwYYu4Aa4KxcL/ZnDrLUkp1MtdThp1Wp7CtQcBabWTa/BroqZSKMBfye5plQojLVFhYGFlZWb6fMzMzqVevHhaLhffffx+Px1NsvdGza3RRAAAgAElEQVSjR/Pggw/SoUMHataseerBwm3HXjdENDbWW0SJlPWx0geARUqpAGAvcC9GwFqslBoFHABuB9Ba/6aUWowRgNzAeK114V/7PmA+EIyxkL/SLJ8DvG8u/qdh7DZDa52mlHoW2GKe95/CxX0hxOUpJiYGm81GmzZtGDFiBPfffz+33XYbn376KTfccMMpLxIrql27doSHh3PvvfeeeTAnFZyZxohFcoddEEm5L4QotUsh5f7hw4fp0aMHu3btwmIpMplTkAPHkyAoHCKaXDa7wyTlvhBClNHChQuJi4tj6tSppwYWrxvSHcausBqNLpvA4k+SbU0IcdkaNmwYw4YNO/NAZjJ4XFDrauMlYOKCychFCCGKys+EvHQIi5J1ljKQ4CKEEIW8bsg4CLYgCI2q6N5UaRJchBCi0MlD5iuLGxtZj0WpyW9PCCEA8k9CbpoxYgkIqejeVHkSXIQQVV5h2v1S83og86DxFH5oXf906jInwUUIIbJSwFNgbDu2yL9Ff5A9dkIIv8j47x8UHM7xa5sBV1SjRt+mJTo3Ozub/v37k56ejsvl4rnnnqN///44HA569+5NXFwcP//8M82aNWPhwoWEhITwn//8h/8uX0ZedibXderIO/MWoYAePXoQFxfHunXryMjIYM6cOXTt2tWv93apkxAthLgkBAUFsXTpUn766SfWrVvHo48+SmEGkt9//50xY8bwyy+/EB4ezltvvQXAhPH3s+XLRWyP/4I8t2LFihW+9txuN5s3b+a1115jypQpFXJPVZmMXIQQflHSEUZ50Vrz1FNPsX79eiwWC4cOHeLo0aMANGzYkOuvvx6Au+++mxkzZvDPf/6TdSuXMe3V18gt8JCWnknLVq3p27cvALfeeitg5B5zOBwVck9VmQQXIcQlYdGiRaSmprJ161bsdjvR0dHk5+cDoE5L36KUIj/7JPdPfJyEtcto2LoLkydP9p0PEBgYCIDVasXtdl+8G7lEyLSYEOKSkJmZSZ06dbDb7axbt479+/f7jh04cICNGzcC8NFHH9GlSxfyjzsAqBXdmuzsbJYsWVIR3b5kSXARQlRpbrebwMBA7rrrLhISEmjfvj2LFi2iefPmvnOuueYaFixYQExMDGlpadw3ahg1Ajz8Y8TdtL62HQMGDKBDhw4VeBeXHpkWE0JUab/99htNmzalVq1avtFJUQ6HA4vFwttvv20UaG2k0rfYeO6lV3nu5dfPqBMfH+/7XKtWLVlzKQUZuQghqqy3336boUOH8txzz5W8Un4GuHIgrJ68WbIcychFCFFljRs3jnHjxp3znOjoaLZv3278oL1w8rCRmDIk8iL08PIlIxchxOUjJ9V4Ej+8vrwArJxJcBFCXB48bsg6CoHhxquLRbmS4CKEuDxkHwHtgfArKronlwUJLkKIS58rH3KOG+ss9uCK7s1lQYKLEKJKU0rx6KOP+n5+5ZVXmDx58qknZR021ljC6gHGVuMffvjBd3jEiBFlfogyOjqa48ePl6mNQmV+hUAlIMFFCFGlBQYG8vnnn5/9H7szG/IzjZeAWe3AmcGlLLTWeL1ev7R1KZGtyEIIv1i5ciVHjhzxa5t169bl5ptvPuc5NpuNMWPGMH36dKZOnXrKsdRjxxg38m4OJB8GezCvvfYa9evX5+2338ZqtfLBBx/wxhtvALB+/XpeffVVjhw5wrRp0xg0aBAAL7/8MosXL8bpdDJw4ECmTJmCw+Hg5ptv5oYbbmDjxo188cUXp1x3wIABHDx4kPz8fB566CHGjBkDGCOShx56iBUrVhAcHMyyZcuIiopi37593Hnnnbjdbnr37u1rJyUlhcGDB3Py5EncbjezZs2qMqn/ZeQihKjyxo8fz6JFi8jMzDyl/KEJ9zFx9BC2bPyOzz77jNGjRxMdHc24ceOYOHEiiYmJvn/WKSkpbNiwgRUrVjBp0iQAVq1aRVJSEps3byYxMZGtW7eyfv16wEjjP2zYMH7++WcaN258ynXnzp3L1q1bSUhIYMaMGZw4cQKAnJwcOnXqxLZt2+jWrRvvvvuu0c+HHuK+++5jy5Yt1K3755swP/zwQ3r16kViYiLbtm0jNja2fH6B5aDMIxellBVIAA5prfsopWoCnwDRgAO4Q2udbp77JDAK8AAPaq2/NsvbAfOBYOBL4CGttVZKBQILgXbACWCw1tph1hkO/MvsxnNa6wVlvRchROmdb4RRnsLDwxk2bBgzZswgONhcsPe4WLN2HTt27IDJMwA4efIkWVlZxbYxYMAALBYLLVq08KXqX7VqFatWreLaa68FjBeSJSUl0ahRIxo3bkynTp2KbWvGjBksXboUgIMHD5KUlERkZCQBAQH06dMHMFL5r169GoDvv/+ezz77DIB77rmHJ554AoAOHTowcuRIXC4XAwYMqFLBxR8jl4eAnUV+ngR8o7W+GvjG/BmlVAtgCNAS6A28ZQYmgFnAGOBq86twXDgKSNdaXwVMB14y26oJPAPEAR2BZ5RSEX64FyFEFfXwww8zZ84ccnLMt2GePIzXq9n4ww8kJiaSmJjIoUOHCAsLK7Z+YYp9wPeSMa01Tz75pK/+nj17GDVqFADVqlUrtp34+HjWrFnDxo0b2bZtG9dee60vlb/dbvel/z89lf/prwUA6NatG+vXr6d+/frcc889LFy48AJ/KxWnTMFFKdUA+DvwXpHi/kDhKGIBMKBI+cdaa6fWeh+wB+iolKoHhGutN2rjL7rwtDqFbS0BblLGX6AXsFprnWaOilbzZ0ASQlyGatasyR133MGcOXPAXQB5afS8qTsz3/nz31NiYiIAYWFhZx3BFNWrVy/mzp1LdnY2AIcOHeLYsWPnrJOZmUlERAQhISHs2rWLH3/88bzXuf766/n4448B4700hfbv30+dOnX4xz/+wahRo/jpp5/O21ZlUdaRy2vA40DRrRJRWusUAPN7HbO8PnCwyHnJZll98/Pp5afU0Vq7gUwg8hxtCSEuY48++qixa8x5Eix2Zrz5DgkJCcTExNCiRQtfZuS+ffuydOlSYmNj+e67787aXs+ePbnzzjvp3LkzrVu3ZtCgQecNSr1798btdhMTE8PTTz991qmzol5//XXefPNNOnTocMq6UXx8PLGxsVx77bV89tlnPPTQQyX8TVQ8VTj8u+CKSvUBbtFa36+U6gH801xzydBa1yhyXrrWOkIp9SawUWv9gVk+B2N95QDwgtb6r2Z5V+BxrXVfpdRvQC+tdbJ57A+MabCRQKDW+jmz/GkgV2v9f8X0cwzGlBuNGjVqV/QFQkKIstm5cyfXXHNNRXfjVNnH4OQhiIiGYJktv1DF/U2VUlu11u0vpJ2yjFyuB/oppRzAx8CNSqkPgKPmVBfm98IxZDLQsEj9BsBhs7xBMeWn1FFK2YDqQNo52jqD1nq21rq91rp97dq1S3enQoiqwVMAWSlm/rAa5z9flJtSBxet9ZNa6wZa62iMhfq1Wuu7geXAcPO04cAy8/NyYIhSKlAp1QRj4X6zOXWWpZTqZK6nDDutTmFbg8xraOBroKdSKsJcyO9plgkhLmeZh4yXgVVvIFmPK1h5PET5IrBYKTUKY8rrdgCt9W9KqcXADsANjNdae8w69/HnVuSV5hfAHOB9pdQejBHLELOtNKXUs8AW87z/aK3TyuFehBBVRX6m8SKwsHpgCzz/+aJc+SW4aK3jgXjz8wngprOcNxWYWkx5AtCqmPJ8zOBUzLG5wNzS9lkIcQnxeiAz2QgqoXXOf74od/KEvhCi6ss+Yqy3VG8ISv6tVQbyVxBCVG0FucYOsZBICCz+AUlx8UlwEUJUXdqLNTiM2J5DadXlFm6//XZyc3MvqInnn3++XLrmcDho1eqM2f7LhgQXIUTVlZ1KcFAgiVt+ZPv27QQEBPgelDyfwlT55RVcLneScl8I4Re7dz9LVvbO8594AcJCr6FZs6eLP+jON55pUQqCjWdaunbtyi+//ALAq6++yty5xp6f0aNH8/DDD5+RKj82Npa8vDxiY2Np2bIlU6dOpU+fPmzfvh0wXjyWnZ3N5MmT2bJlC6NGjaJatWp06dKFlStXsn37dhwOB/fcc48vp9nMmTO57rrr/Pp7qIokuAghqh6tIeOAuXhvPM/idrtZuXIlvXv3ZuvWrcybN49NmzahtSYuLo7u3bsTERHB77//zrx583jrrbcA+PTTT305xxwOx1kvee+99zJ79myuu+46X0p+gDp16rB69WqCgoJISkpi6NChJCQklNutVxUSXIQQfnHWEUZ5yEmFghyo0cg38gBj5DJq1ChmzZrFwIEDfZmLb731Vr777jv69et3zlT5Z5ORkUFWVpZvRHLnnXeyYsUKAFwuFxMmTCAxMRGr1cru3bv9eKNVlwQXIUTV4sqHk4eNFC/BNQkODvaNPAqdK2fi2VLlg/FWy6KvLC5MlX+u9qZPn05UVBTbtm3D6/USFBRU0ju5pMmCvhCi6tAaMvYb02E1Gp01xUu3bt344osvyM3NJScnh6VLl5719cB2ux2XywVAVFQUx44d48SJEzidTt/oJCIigrCwMF/6/ML0+GCk2K9Xrx4Wi4X3338fj8dz5kUuQxJchBBVR/YxcOUaucOs9rOe1rZtW0aMGEHHjh2Ji4tj9OjRvrdJnm7MmDHExMRw1113Ybfb+fe//01cXBx9+vShefPmvvPmzJnDmDFj6Ny5M1prqlevDsD999/PggUL6NSpE7t37z7nyOhyUuqU+1VR+/bttSy0CeE/FzXlvtsJx3ZCUDhENLnoiSmzs7MJDQ0F4MUXXyQlJYXXX3/9ovbhYvBXyn1ZcxFCVA0nDwMKwism4/H//vc/XnjhBdxuN40bN2b+/PkXvQ9ViQQXIUTl58w2Mx7XBVtAhXRh8ODBDB48uEKuXRXJmosQonLTGk4mg8UO1STjcVUhwUUIUbnlpYErD8KvAIu1onsjSkiCixCi8vJ64GQK2EMgOKKieyMugAQXIUTllX0EvC55bXEVJMFFCFE5ufIhOxWCa0LAuZ8dmTp1Ki1btiQmJobY2Fg2bdp0wZdbvnw5L774Yml7K04ju8WEEJWP1sZri5XFWGs5h40bN7JixQp++uknAgMDOX78OAUFBRd8yX79+tGvX7/S9licRoKLEMIvnk5KZnt2nn8a87jBnU+r8FCerXf2J/EBUlJSqFWrFoGBgQDUqlULgOjoaAYPHsy6desA+PDDD7nqqqv473//y3PPPUdBQQGRkZEsWrSIqKgo5s+fT0JCAjNnzmTEiBGEh4eTkJDAkSNHmDZtGoMGDfLPvV0mZFpMCFG5aMDjNEYttuDznt6zZ08OHjxIs2bNuP/++/n22299x8LDw9m8eTMTJkzg4YcfBqBLly78+OOP/PzzzwwZMoRp06YV225KSgobNmxgxYoVp6TYFyUjIxchhF88e3UD/zR08jBkZ0PkVRAYet7TQ0ND2bp1K9999x3r1q1j8ODBvrWToUOH+r5PnDgRgOTkZAYPHkxKSgoFBQU0adKk2HYHDBiAxWKhRYsWHD161D/3dhmRkYsQovJw5RnJKYNrliiwFLJarfTo0YMpU6Ywc+ZMPvvsMwBUkR1mhZ8feOABJkyYwK+//so777zjS6t/usJpNjh3yn1RPAkuQojKQWvIOGgu4tcvcbXff/+dpKQk38+JiYk0btwYgE8++cT3vXPnzoCRIr9+faP9BQsW+Kv34jQyLSaEqBxyT4DLeLsk1pL/a8rOzuaBBx4gIyMDm83GVVddxezZs1mxYgVOp5O4uDi8Xi8fffQRAJMnT+b222+nfv36dOrUiX379pXXHV3WJOW+EKLU/JZy3+My0unbg421Fj88MBkdHU1CQoJv95gomaJ/00yXm925TjrWCL14KfeVUg2BhUBdwAvM1lq/rpSqCXwCRAMO4A6tdbpZ50lgFOABHtRaf22WtwPmA8HAl8BDWmutlAo0r9EOOAEM1lo7zDrDgX+Z3XlOay3jWyGqosJnWrQXqjeUJ/FP4/J6yfF4yfV4CbFaqG6znrKWdD5erfFojVuDR2sKtMbl1bi0xqs1GmODXuE443iBm9sT97A7J5+jBe5S97ss02Ju4FGt9U9KqTBgq1JqNTAC+EZr/aJSahIwCXhCKdUCGAK0BK4A1iilmmmtPcAsYAzwI0Zw6Q2sxAhE6Vrrq5RSQ4CXgMFmAHsGaI/xe9mqlFpeGMSEEFVIbpqZTr8e2P33/nmHw+G3ti4WrTX5Xk2ux0uux0OOx4vTe+rsUrDVQt1AO2FWC26tcXqNL7c2vlxa4zaDh1trvGeZnLIqsCiFMqOK0hqNxuXxkHw4mUZZacQeTyH88AFmluJeSh1ctNYpQIr5OUsptROoD/QHepinLQDigSfM8o+11k5gn1JqD9BRKeUAwrXWGwGUUguBARjBpT8w2WxrCTBTGSG7F7Baa51m1lmNEZA+Ku39CCEqgCsPMg9CQBiERlV0by4al9eLS2s8Glxak+/xkuv1kufx+oKBVUGI1UqE3UKo1UKw1UKm28MRp4t9uU4sijMCh0WBTSnsShGslBFAtBeL14vyeMDjxuJ2gasA7Xahi4k8J3NO8o81HxIaEUm1iJpUa9Hs4gaXopRS0cC1wCYgygw8aK1TlFKFL2CojzEyKZRslrnMz6eXF9Y5aLblVkplApFFy4upc3rfxmCMimjUqFGp7k8IUQ68HkjbBxYbRDS+5KfD3F5NhttNmstDnsd7yjGlIMhiIcJuI8RiIcRqIdCizpj+irDbqG6zklbgItftwa692DwerG4Xyl2A1+XG43bh9XjO7IACq9WGxWbDGhCAJTgEq82GxWo1yqw2LDYr6QVuRr42+9S6w0Zf8P2WObgopUKBz4CHtdYnzzEXWNwBfY7y0tY5tVDr2cBsMBb0z9Y5IcRFpDVkHDCexI+8GqznTvFSlXi05qTbw0m3hwKvxosxNeXSGq0hyKqoG2gnyKKwKoVNKQIsCstp/zu11rhdBXhcLjwuF26XC4+rAHdBAR63m8L3cXoAr1JY7XasNhv2wFBfwLBYrVisVjOI2C5oraasyhRclFJ2jMCySGv9uVl8VClVzxy11AOOmeXJQMMi1RsAh83yBsWUF62TrJSyAdWBNLO8x2l14styL0KIiyj3xJ/rLBfwsGRl5dWaTLeHdJebbI8XrY3pqSCrwoYFqwXsSlHDbiPYeurjhV6vF4+rgILCIFJQYH45T3l4U1kUVnsA9qBgggPsWO0BWG123+ijPAKH0+1h28HMUtUt9UOU5trHHGCn1vrVIoeWA8PNz8OBZUXKhyilApVSTYCrgc3mFFqWUqqT2eaw0+oUtjUIWKuN3/bXQE+lVIRSKgLoaZYJISo7Vz5kHvLLOovD4aBVq1anlE2ePJlXXnnlnPUSEhJ48MEHAYiPj+eHH3644GtHR0fjOHKU5PwCdmTncSCvgHyv5u+tWlAjN4sWoUFk7PyNG1s2J3XHdjb+bzmvPPcfstKOk3EkhRPJBznm2MuxfX9w4uABMo6kkHXiOM7cHJTFQkh4darXjqLmFQ2o3bgJdaKbUqtBI2pE1SVh26/cPmQoAUFBWG3+G5ForXF5vLzxTRJ3vfcjbaas4o53NpaqrbKMXK4H7gF+VUolmmVPAS8Ci5VSo4ADwO1mp39TSi0GdmDsNBtv7hQDuI8/tyKvNL/ACF7vm4v/aRi7zdBapymlngW2mOf9p3BxXwhRiXm9kO4Ai6VC11nat29P+/bGYxvx8fGEhoZy3XXXFXuuNndgFXjNL21sDXZpjSPPSc1qbqrbrNS02wi1WrAqsBXks+n7DQy+8y7effMN6tcIp35sG66LbUNORjo2WwBWuzmFZbNhtdux2exY7XYs1ov7KmetNXkuD5l5LjLzXBw96eT/VjtoXjeMoR0b0fnKSHq9dOHtlmW32AaKX/sAuOksdaYCU4spTwBaFVOejxmcijk2F5hb0v4KIcrXlP/+xo7DJ899ksdpPDBpCwLL+R9obnFFOM/0bVnqPvXo0YO4uDjWrVtHRkYGc+bMoWvXrsTHx/PKK68wc+ZM3n77baxWKx988AGvz5hBdLNmjL/vPg4eOIgXzWMvTqNNXGcy0k4waeQI0o8fp0379iitaWC3cIXy4snNxVXgJNXpxON2s+WH73no8SeYOf1VOnTogD0gkI8Wf8rP27bx5ltvcu+9I4tN6e/1en2ZnZs0aYLX62XkyJEMGjSIr776iocffphatWrRtm1b3z2mpaUxcuRI9u7dS0hICLNnzyYmJobJkyfzx94/OJxymKTdSTzzwjNs2byFb1d/S70rruD9xYtxee3kOr24vcY/80A7VAvUPNsnHVvBHvKzMtibWLppMUn/IoS4OLxuI7BY7cYOsYvE7XazefNmvvzyS6ZMmcKaNWt8xxo2bsy9Y8ZgDw7h7gcfJt/rZdzIEQweN572111H2qFkRg3ox3dbf2LmC8/RvWMHHnvwAb7++isWz5uLM+UQJ515KKWwBgQQGFINi8XCyPsnsHDBAvr07eu7lj0oyFwbMVYjClP679q1i379+jFo0CA+//xzHA4Hv/76K8eOHeOaa65h5MiR5Ofn849//IO1a9fStGlTBg8ejFd7yXHlMOlfk2jeqjnvffQe69et586772Tlhi9Jyz3Bjt9/Y+GSufyx6wCD+w1mxuz3eODRZ3ngH/fy6WdfcVPvWwjy5FPDlUeoKx+bx0t+Rgbtx58xBrhgElyEEH5xzhFGQQ6c2AO22hDZzJgW84OzrTUULb/11lsBaNeuHQ6Hg2y3h7QCFzkeL9uz80h3eagW6EUBkVYLW+LXkbxrB3g1WmuyM9LJ3vM7G79bz9xZb4H28vdb/k5EjRqE165DZN162AICUOY9KYuFv/71r8ydN4+bb7kF61mmufr164fT66RB0wYcOXqEw9mH+fKbL+nx9x4cyjmELczGdd2uIz0/nXUJa6nXoC72MDcHD+/k5t7d+GjREnIO7GNj/HcsnPEq9v1H6BndjAdTT+DafQJrvo3uXXuhaUyjvzTC4/XSuXtvgtwuYq66iux9u7gyryMWqwUVYIPgMLBYISeboMceIDg8guDwCKwh1aBbtwv+20hwEUKUL1c+nPjDGK3UbOq3wAIQGRlJevqpiTnS0tJOfUeLzc4xp4uDThd5Lhd/5DpJcxnLvbWsinDtJbTASfXUw3g9HrweN/9d/DHh4TWwBQRgCwjAGhCAzR5ArYaNiaxvbnpViuDQMOxBZ2YVmDlzJmPHjmXcfeOY9fYs49fgcZHvzufAyQNkOjM57jrO3oy9WLygvV6c2Zkol4eAAi8B6TkolweV5yToeBYRQbkEujRRx41+h+WCzQNhBVaUVrgCqpNRrQ55yoZbWThSLZJ8WyDVQ0KICLAQbFcE2O20iApF2WxUj6xOUFgY1a6++oy+2zMyaTLq/jL/bSTlvhCi/LgLjBGLUkZCSj8/zxIaGkq9evX45ptvACOwfPXVV7TvfB1HnAXkerzszysgxemiwKtRQJTbSe28LGzOfKwpyYQozcmMdAJDQgivXYeef+vJ4v9+Sc36DQivXYfd+xwEBofQrXt3PvzwQwBWrlx5RlDLc+dx4OQB3F43ezL2MPmNf/PL9kQmPjKBw4d2kZ1+FG9uDqHHsglxQp0sxZVHIfqYRmmoe9zDjdfE8PUXKwnNKCAvJZ0fNidgDwqhZYcO7D9yhIMeL7Yrm/Lx+u9wBYWwP6I+rTp3ZcHy/5FtDSRx6yZq165NmyuvoE5YILXCg6kfVZ2aNcMBsAQGospp2/LpZOQihCgfHhek/QHaYzwoaQs8f51SWLhwIfePH8/DjzyCV8PoJ57EXbc+R51uQBPuzicq8zgnUlNQHg8q4wRojdVmo3qdKO64+x6GDB3Kmm/X88YbbzDzzTcZP348MTExuN1uunXrxttvv80zzzzD0KFDadu2Ld27d/dl/PB6PZw4eZScnHQC3QqLV1P/BNQpsLPs/2bQ8957ubJaJNWCgwnwWKim7VgsVqxBwdgiI1E2G1gsBDRuzB1jxrJ+1y46DBlCs2bNiOvcmYgmV6Lq1uelGW9x86BBVI+oSWyHThxP30WQzcqUyZOZOH4sQ3t3JSQkhEXvL6Ra4MV9YLI4knJfCFFqZ02573HDiSRj5BJ5JQSG+fW6Xq3J8XjJcrvJcnnIN/+NKa0JdDkJcOYRWJCPxevFardjDwzCHhRkfA8M8C2ql4T2etFuN3g8aPPL48zHk5eLdjqxnJY5WNkDsAQHoYKCsQQGgM2OsttQNptvXeZcMjJPYgkI5uCRo9x8QzcWLP2KyNpGFq3gACthgXbCgmyEBJTPCKS4v6lS6uKl3BdCiGJ53cZUmNsJNf0XWNxeTbqzgEyXm1zAmOTS2F0FhBY4CXS7CLaAzR6ArVoItogI7IGBJXpuRHu96IL/396Zx3lS1nf+/a3rd/Xdc0/PxTADzHAMIKACLmIganBFxSDZeGxCXN3ImpgVNCFmohtjXM1qslkDkighUZdoWDGaACpR8YQhCHMwAzPMtA1z9DF9/M66vvtH1e/Xv+7puXt6pmeed7+qq+p5nnrqqapfPZ/n/JaP1mrENR/1a2ithgZBIixTENngOxC22rQUOsnl25C02elIUVX8MKbkR5T9kLIf8Z9ufD1joyMEQcBvf+B2zj1rCQUvERPHnj09GUZcDAbD9BGHSed9WE2EJdt2zFGpKmEYMFypMRzFlG0HEKw4IufXKKC0ODZeNoPblkxGPJKSfBwEaKVCXK4QVysNEWlGHIfAEYIM1HIWgRUTWSC2TcbN42XzZN087U4G5yiHVfthzFg1oFQLKfkRQWrE0raEvOfwzw99m0LGIe/aWNbsNeZpxMVgMEwPcQSDOxIz+l0rjlpYVDWxsVWtUqrVGFGh4mWJLesUqHgAAB+xSURBVBuxhNbQp8O2aM1lcdpbj7hJSMOQqFgkLpWISyXU9xMPEaxMBqtQQDwP8TysTAY8j13FXipBhYyTIefkaLGz5N08GTtz1E1Rqko1iBithoxWAirpSDXXtih4DoWMTSHjkHGsk95PMp0YcTEYDMdPHMPQDghK0Lkcsu2HPaQhJpUKfqVCrVal4niUswWCTAugFFC6XIuObO4Aq8GHilerVaKxMeKxMeJKBQCxbKxCAaurCyufR7LZKftA+sv9lIMyi1sW05HtOJq70CCKlWItYKwSMlYLG7WTvOewoD1LW9Y97cRkMkZcDAbD8aEx7H8B/CJ0LINc55TB4igiqNUIatVkqVaTeSW2TSXfSrlzHjGCZ8FC16XTdXAP0yykqklfSbVKXK0Sl8uJmMRJZm7lcjjz5mG3tCC53GEz80pQob/cT1umjfbM4QWyOR3VIKJYi5ImLz9CVbEtoSXj0JrN0pp1cGdRn8nxYsTFYDAcO6rJB79qo9C+BPJdDa8wCPArZYJqhaBWI6w3RwGO56EtrZS8HMV0ul2bYzPHS4w/TiUCdSGJy+Wkz6RSIa5Wxz/+jmBlMzgdHUg+j10oIO6Rz6uJ4oi+Yh+2ZbOwsPCQQhSrUvUjin5IuRZR8kOi9KuOGcdmTotHa9Yl79lHXOM62agqKMSxMtJfJqjFhH5EUJviw2NHgBEXg8FwbFRHodQPtTZo70Hz3fjlMrVyCb9cIkw7yS3bxs1myba0YmeylGyHoTD5pK8lMNd16PYcMlM0UWkYJs1bpRJxsdgYuSWWheSSeSK79u3jxltu4Zlnnmk0c61fv56Wlhauuuoq3v/+91Or1ajVatx8882sX78egFhjqmGValSlFtUoB2X8yGd52/IDOulVlVoYM1YNKdZCSrWQWMfFpD3nUsg4FDwHz5nZ2kmzKKgqGitxDNrYJ3U7xH56HEBpf42//8ufHOash8eIi8FgOHrKQ/D3b4ELPoyfm0+lFFHr30EcxYgIXi5Prr2DTC6P7br4sTIYhAwFIVEYkrGFxdmk6cue/AXGVFCikRHiUglUEdvBaikkfSb5fDLkNz3OqVZBZMr+k3e+853cf//9XHTRRVT9Kk9vfpo9pT2UgzLVqNr4GJclFhk7w8KWhRS8QsMMfb1WUm4a1ZVxbLoKHgXPJp85/qYuTb9QqVGa4U/I+JPMf8r9ethUXA6HiCBWfS1Y6WeUxUoXST5IlhlyeM27zsP1bJyMjevZvO+uo78uIy6GWUUURwRxQBAHhHE4YbvuF2k0wd+PfPzIpxbVCOKAWOMJi6LJWnXCdkw8vq0xMePbijJ5AnKzmza97XqoN185aLjm+A8V38EmQtfDNadpcvrq13m489bvjaoSlkdgx6NIWOH14uBWR0CEuU9+hszgcyAgCIoSAL5CTPIZ2Q4SSzB1OQnSJT1J0wIIBHPPZf+r70jnjihQTPp2xlvY6BvrI4gDdo3uargNV4ep2TX27N1DKVti8+BmVJVCT4HByiCWWDjiYNkWllhJehUGy8PsKw4RpRk+aXotV8hmSDJkoAJUfCako/keJ5eh1B+wNv41hTzW+et2skyQ5Cl25AD3w6BABEPRAH+867ZjTNw4RlwMx4Uf+QxWBhmoDDBQGWC4Nnxg5h8FDTc/8gnixIDfcG2Y4dowo/4oUZy069ZfzkgjYo0ToYgC/NhvCMOpgJCW+hovstQ9DnTj4NZ7pyvcBL/mHEUmuk1Oc31/qviar0mjOPmWu18lq2UsR6lZbVxvC3HGAhFii0SopihITyjbq0yUyskl77SEDUmcocSNDvqpiDTpPK+G1YZY+rGPEzu8/T1v53VXvI7LrryMV73mVbzl195CLpdLxS+pAQSREsVxo5lLRHAsC9uysEXSqZrJP41p9PHUtUPTC06cBdH6/Z7wJMZ/G5IKbKqyUr/mZrdUGUSajpshsk6Wa5deO8Hte3zvqOMx4mKYElWlGBTZW9rLvvI+9pb3sqe0J1mX99Bf7qe/3M/+2v7DRwbYYuPZHo7l4FouWTtLR7aDjkwHPS092Nb4rGZLktKkLXbjONd2ca3xpR6Pa7s44jT2HcvBFrsR3rEcPMvDsz0ydqbhXz+HiDRKrvX9+p8lFrZlN7br4U7n4aN1/EqZ3k3PsPPnT7Lr6ScZ3rObTq/Mr67YTtZRRl/7OTovu5Fnn32W1V3nJLPnX/+X7PVDarEiAu2OTafr0Jp20KsqWqkSlepzTsqgMZZtY7W2Yre3Y7W0TLi/OZLajqoSxAHlsNworIRx2KiVKkoYh7iWS97JU3ALdGY7uf0Pb+d3f+t3efjhh/nKV77Cdx/8Lt/57nfZXwoYLNaoRTGCkLUtcpaQQbAjiNMmqoNVLxpNS3bSvFRfi920bU3cni2/m5HMCB9Z95EJbn/EHx11PEZcDA1UlW37t/HQzod4aOdD9I71HhCmO9vN/MJ8FrUsYt3cdczNz2Vubi5zcnOYk5tDe6Y9EYN6xm57OOJMEA/DqUcUBux5/jl+selpdj3zFC9t20IcRbiZLEvWnM+rL1/I8r6/RySPvP0BuhZemHRyxzG7KjVGwghVyNsWPVmXDtfGgmS+yXBpfAJjfYhwJoPT2YnV1pr0oUzqL1FV/Nin6BcpBSXKYblRu4WksOLYye/r7MVnUxotsbpzNZbaRGFMaajCqiXnUBkOmdO2kLfc+A5e+/q3se6iFfx4007aOrtwVGhXIauCRIpl0xADx7Ww7MkC0uQ2i2fOzxRGXAwAvDDyAnd8/w62DG3BFpvLF1zOTatvYkFhAfPz85mXn8f8/HzcaTaZbjh57N/9IjuefIIXnnqCF7duJqzVAJi3fCUvu+FNLLvwEhYtbMd5+MOw9Zsw/wK46W+pdJ3NAy8N8oUXB/igE2KHEV2uQ7frkAl8ouEhwlJpwnwT8Tys9nasQuGAIcJhHFKuFZOmz7RWUo2qBFHSG+PaLq1uKzknR1Zy2OoQh0oUxkQ1JY5j5nUv4Ov/91941ZXXsH94iIce+ldu+bVb+fKDD/LK11xPLLBjxzYsy2ZeVxfd+QwtmbTPxRnv3DZMH0ZcDDza+yi//9jv49ked15xJ9ctv46ubNfhDzTMOvp7d7L1R99n209+yP7dLwLQtaiHC159PUvWXkDPeeeTa21Lvhz507+GB/9XYi/suo+y5+Lf4t49I9y7dRNDQcS5hSydjs15WRdGRoiGR6hVk9nwVjbbmG9iFQpYk+ab1PvcSkGJalhtuFtikyFDnlayksNRF3whKseEYUxx4hAAbMcCW/iLv7qbD33oA3zk43eiCrf+7u20r1jOA5/6GJ/42B9QKOTxXJcvf+kfWL342Gbdn0moKn4UE0RKEB5bP6cxuX8GEcYhA5UBRmojjc72x158jLuevos13Wv4zDWfYWHLwpOdTMM0oqoM9O7kuZ/9mG0/eYzBvl7Esliy9kJWXnoFZ11yGR3zF4wfENbgiS/ADz6VzGFZ/Tr2XftR/nw0z5deGiRQ5fo5bdw6t50LNvyEX7S3c3ZHJ6BY2Rx2Rzt2e/uUkxfDOGTMH2N/bT9Vv4ajLjnJk9EstroQCtGkjEwswXasdBFs10JsoRLFFP2IUi3Ej8aP8RyLnGuTdW1aMifOLP3JIhmtCFEcE8VKlM5viVWJNJ3fkobRdERarFOvlfp2Gj5d7+ndzq1f3z3hvLv+7AZjcv9MZ391Py+MvMDO0Z30jfUlS7GPPaU9DFQGphwW+8aVb+TOl99J1jnwc62G2Ufo+/Rt2cjOn2/g+Sd+ysjePSDC4nPW8JrfeC+rX34l+fZJpXdV2Pg1+M4fw3Av8bKreO4Nf8t99lnct3WQSMu8bX4n/3lfLx33fYnit7/D7nIZ/evP4cyZg93RjpV+7jcp9SYd7X7oU635BH4EEdixSz7uokWb+lgEcATHs8jkHWzXwnETQRFLCKJkzknRj6ik1oTjJtMqXZ5HPhWUU90kfayaiEK6hLGmQjHuF6ciMS4YSabf7H8o6lJqSbIIYDVGoyUj9xruVrKuDw8XoOjAe863cESxiLFRfucYrtWIyywk1pje0V627t/KzpGd9I710jvay67RXRNGbznisLBlIYtbFnN1z9XMy89jXn4eHZmORod7R6aDtd1rT6vS3ZmGX62w5/nn2P3cs/Q9u4m+zRsJ/Rq247D0/Iu4/I03sfLSKyh0TGHzSxV2/Qge+UN4cQODXedx95Wf42+8tRR3Kzb93Djczzt+8Agdj32feHSUYlsbra9/He033EBvWxvWvDmUahUqwwP4tZA4VOzYwVYXSx2SP0DAcgQv2yQgdRFJf391G10jfkS56FPyx40+CpBxbToLHu1Zh3zGOWmmVTTN6OtNR82CEakSRek6nRBZ31ZVJP0STf2LNOP744JgCVgoblOmL6KIA42B3E3zaNAD511NTPB40MNeW1ij+vxPj/qeTMY0i53iDFQG2Dq0le3D29k+sp3nh5/nuf3PUQkrjTDz8vNY2rqUZW3LWNG+grPaz2J5+3IWFhYe9bcmDKcuqkpx/yCDv+ilf9cL7Nu5g/5dLzD0Yh+azv/pWtTDsgsvZvm6S1hy3gW42YPURqujlJ76CvrEF2gZ2MxAdh4fXfabfHX+dSwtlbj4+S1csOGnXLR1M11jI9grV8OFlxOsvZTethZ+sa+f4X1lXnXNOaxYvGrCPAwVxXLAdi1c18HzHBzXxnIO7DQPo5iyH6VLMhO+XjJPTNIns+Bzrk1umr9vojq5BjFekwhjJYy0UVvQeuZdb0aK40ZmLmha8k+Ew27UDsbFg1RUjgURaSyWZU3Yb14mh63vN6+ncpscfuvWrfT09OA4DrZtY1kW2WzWNIvNZoaqQ2wc2MjGgY1sHtzM5sHN9Ff6G/5d2S5WdqzkzavezDmd57C6azUr2laQd/MnMdWGE0Ho+wz29bL3he3070pEZOAXu6iVSo0wrd1zmbt8BauuuJJFq85hwapzyLUc/KuPu0aH2f7EA+S3/TMX7nuMQlzlmZazuW/VB/ixXMK6Tbv4xD/dz9zQw5+7mMrcX+bZhW+iGnhQdWE/8BiAT0wLmouTCX65CM9zyWYyeF4yAuuA64liKkGEH8ZUg5haGDXWkEwSzLoWnXWzKp6NexADllMxlVBEzU1QUUwYx8RRnEyYjGNU44YgWIyLg5DUGkTAQZlyfGS9OjEFdQGwLGvC9lTr5PK00WRV34akptKYZNpU9UgKEgrUBS6eEKbZMkDzWnXyWtMJoOlx6XYYDrB5y22AlX4O+tiaGo24nARUlR0jO3i6/2l2jOxIaiXD23mp9BKQvGgr2ldwxcIrWNO9hnO7zmVlx0ozgus0RVUZ7Otl19NPsWf7tqQ28lJfY06Il8sxZ+kKzn3lq+juWUbHwh7a5vQgVg6/ElKrhPjlkO1PjlIrD7K7FvBsFLA1rlH097G68jiXlR7nP4z8jGVRmSGnje/mX83P9Jcpjp3FvL6Yt1UVWMNY9xpGiam4RcoyRtkaoNw2gtUT0dKZYdHCuaxeuoKLll/AvJa5bNmyhXnzuog1GVVUCiL8SoAfxfhhukRxw2IwJHmy59hkHIvOvEvec8h5NrYlE0SiVAsSUUiFIYoSUUjsbMUTahM0CUOjtsB4k1MiFBPuejoTPhFIK7WrZYlgWamZl0kz5Sdm/unxNGf8aUY/wUSBosT1qf1pmmPC6OATNI+ZdJLvuFmGcVsM43e+ySpAY18Q7NR6gCDi0ta2Lk1vPe0PH31yZnOzmIi8FvgsibWde1T1E4cKP5PNYqpKJawwWBlkb3lvY4b75sHNPLH3CYaqQwB4lsfy9uWc1X4Wa7rXcP6c81nTvYaCW5iRdBpODHVz8365jF+tUBrez2j/PkYH9lEaHk5K0KHiVyrs3f4slbGkryxT6CTfvgivsAA3Mx/LmUcUtRJUI2qVkEotYjgjFHMWYzmLUlYYzVmM5pNluGCzQHt57eBjvG7gMdaNPYuFMmR1stE6nxeqZ/OS38aAV2FPfoyKV8W3a9ScMl7eYvn8payYu4TF7YtZ3LKYnpYelrQuAWz2l332jtTYPVJh90iVXYNlXr3AZ+6SswjCeKIFFwTHAjsZKdxoJrKIsRhvXmqUsusCoXUxSPdF021oztjr/uOmUmgIQLI0NVVNPoYY1Ygj7oQ4GCJIWuepl/BFmjJ3AK37peZgdFz+6sciE90bfnW3hnYl2zLBXdJwky5H6yZp6o7C5ErgRHtn2lht2/U8nQ+VE4NwqbHMJR+/+sxpFhMRG/gr4DqgD3hcRB5U1c0n6pyqykBlgN6xXl4svkjRLxLEAbWoxkhthL3lxFTKvvI+BiuDVKPqAXHMz8/nlYteyWULLuPieReztHWpmb1+CqKqBH4Nv1ylWixTHilTHi1RHitTGS1SGR2lWixSLRfxS2PUKmME1SJ+ZYygNkocHvjsEyyQHOOlSwuchYzOv5rhrmWUcgVqGYsgC9VMujgBse0TuTUcq0prWKI7GGaeP8RZ/iBza0PM3z/I3JeGWBzsZYEmBZfe0ON+r5WvdxfobV1Gq9tNi+2QlyxZmU+3tOJoHktzONpKHHmUBiJ+3hfw/UrIaLVC0X+Wkr+FyhSf9HCIueqNC5HIJ29F2BJjS4QjEbZETSX88Q7sRmlfJgqHiI67H0Omv3fvAB/60Cd58smNZDIeS5cu5oYbfolvfetRvvrVu9OM3Gpk6P/1fXfw/tvew5pz1zRl4qk9tXqG3ZShk9oNQ+tCQMM9yaS1SQROQIG9aTiX1msk9X/NFZM6ljVuq6zOpHSJTDqo/pP0LAqXzG+MLJBjHIA3a2suIvIKYL2q/nK6/2EAVf3Tgx0zZ1mbvv6Oy5oKAlqvtBJJTCRKhBJJTCgxIZqsJSaQCN+KCGXq++WoRSFyaYldCpFLPnbJxw652KUQu7RELi2xh6dGSA7FQW5v4neEmc6R/qInFuQ0dRlvTjngnNpUSk7b663UY6rmd4sYhwibOBnSqXHDzdEIlxBHIxwiPAJcDcmoj6cBWQ3I4JPTGtmmSYOTiRFGNc8IBUYoMKDt/EjX8KhexF66qUUugR6ZVQWLmIxdI+dUKThlCm6ytHpFWt0iLV6Rrtz+ZMnsp9Ur0t11FytXzj+i+Oul7aRUnjbhqNVUEm8qsTdvk4bRJPzksKpwzRuv59dvuoV3v/1WAH6+6Wm++ci/8LOnnuD/ffEfjzB9dTT9cUysNY0/5KYmvgP8mwSyUftqOuagP3Bt0ommME3iO1Ns2d7HeX1fmuAmN/6fM6fmAiwGftG03wdcMTmQiLwbeDdAflmWLbk9jcqnrUmHnaXgoXiquKpkVcnGSiZd5zRZCnFMTxCyJAzpCULa4piMJsc5HLR/z3AaE6sw3i3cPLgUQmwCnHRtE6lNiEWU7ofp4uNSxsMnRyBJeF+SYyt4VPGo4FGRDGXxKItH0coxYuUZtbJYluLaAZ4V4FohgrKIPhbTR8YKKDgV8k6VvFMlZ/vkLJ+sFZCxYlwiPInIWTGeKpY6iFpYamPFNpZa2LGLHTtYsYOUOpBiNxLb2JFD+LIcXqUDVPj0lrvYNrYDGM9nGd87BAfPOM9pPYsPnvNeGtWCyZmsKI/+8Ie4rvDed74ZGAKUSy5YzOjYWh790be55T2/yqZnt3HJhedz3//+FCJw7Vt+nU9+5INctm4trSsv5b/d+na++e1/I5fN8vUvfpb5c+fwjYf/jf/xmbvxg4Duznb+4a8+wfy5cw5/GbOzvD5OWIXtjx53NLNZXKb6xR7wWFX1buBugNWrVuqfzPvIAQcdLWVg22FDHanUHN+kr+mfnyKH3D2umCdd6kTT8E179eGmTZ2pSZCk/Xp82KTV3HeJjBf9xoesNsXbGMUqznic6cgmAcROhrpaaTOl63pJPJaFY9nYIthW3ZqynX4LpPl8gm0LVnpG2xY8IGvVm2Omfl5WfSjoVB2wDRP5Mml/0kiqCfFO5S4HD9fcTyBThTs4W7ZsITt/CQBObwtWzTui444Uq6UFZ/GiQ6dhzz5e9opXYi9aNsHdnrOTpzZtYdOmTSxatIgrr7ySH+/Yy1VXXQVeDmvOcmTBeZTKFV7xSzfw8c/exe23387nv/4Yd955J1e9YTE/eftvIyLcc889fPKL3+DTn/70tF7fKcl+Gz4wqXfh944+I5jN4tIHLGna7wFeOtQBbe2dXP8rN5/QRBkMZyp3XH7HyU7CAVx++eX09PQAsG7dOnbu3JmISxOe53HDDTcAcOmll/LII48A0NfXx80338zu3bvxfZ8VK1bMbOJnOae2rYRD8ziwSkRWiIgHvA148CSnyWAwzDBr165lw4YNU/plMpnGtm3bhGF4QBjXdRu1wOYwt912G+973/t45plnuOuuu6hWDzZIwzAVs1ZcVDUE3gc8BGwB7lfVTSc3VQaDYaa59tprqdVqfP7zn2+4Pf7443zve987rnhHRkZYvHgxAPfee+9xxXUmMmvFBUBVv6Wqq1V1par+yclOj8FgmHlEhAceeIBHHnmElStXsnbtWtavX8+iRYfuqzkc69ev561vfStXX301c+YcoiPfMCWzdijysTAbbYsZDKcyW7Zs4bzzzjvZyTBMI1M9UxE56qHIs7rmYjAYDIZTEyMuBoPBYJh2jLgYDIbj4kxqWj/dmc5nOZvnuRw1GzZsKIrI1uOIoh0YOc5kzAEGTmD8B8PEndB8/09kuk90/KdE3HfffffZlUol67pudCQTeuM4ti3LmsJSGURR5Ni2feBY4SPkUHFPBycy/lMhblUlCAJ7w4YN1TVr1gwzMZ8652jPe0aJC7D1aDulmhGRu1X13ceTABF54mBpmI74D3FeEzcT7/+JTPeJjv9UiXvDhg3zbNu+J47j8zmClpDh4eHujo6Owan8+vv7F86dO7d/Kr8j4VBxTwcnMv5TJO7Ytu2Nl1xyya3At5rzKRE56pFQZ5q4HC/fmMXxm7hnNu4THf8pEfell166D/iPRxpeRN6gqlPGf6iC1/HGPR2cyPhna9yHPO+Z1F56vD/e0yUNZzLm/p+6mGdz6jD5WRzLsznTOvTvPtkJ4NRIw5mMuf+nLubZnDpMfhZH/WzOqJqLwWAwGGaGM63mYjAYDIYZwIiLwWAwGKYdIy7TjIhEIvJU07L8EGGvEZF/nrnUnf6IiIrIfU37joj0m/t8aiAib0qf0bknOy1nKjP1jhhxmX4qqrquadl5shN0hlECzheRXLp/HfDi0UQgImaI/onjFuAxku8vHTEiYp+Y5JyRHPc7ciQYcZkBRMQWkf8pIo+LyNMi8l+avNtE5AER2Swify0y+WPAhmPgX4BfSbdvAb5c9xCRy0XkRyLy7+n6nNT9XSLyjyLyDeDhmU/y6Y+ItABXAr9JKi5p7f37U70DIlIUkY+KyE+BV5y8lJ+WHMs78gMRWdcU7ocicuHBTmAysukn19Qk9kDq9pvAiKpeBlwG/JaI1L+Zejnwe8AFwErgzTOe4tOPrwBvE5EscCHw0ya/Z4FXqerFwEeAjzf5vQJ4p6peO2MpPbO4EfhXVd0GDInIJan7wd6BArBRVa9Q1cdmPLWnN8fyjtwDvAtARFYDGVV9+mAnMNX/6aeiqusmuV0PXCgiN6X77cAqwAd+pqo7AETky8BVwFdnKrGnI6r6dNrXdQvwrUne7cC9IrIKUMBt8ntEVYdmJJFnJrcAn0m3v5Luf5ODvwMR8LWTkM7TnmN8R/4R+EMR+SDwG8AXD3UOIy4zgwC3qepDExxFriF5eM2YiUfTw4PAp4BrgO4m948Bj6rqm9KX69+a/EozlLYzDhHpBq4laetXwCb5rX+Lg78DVVU9YYYoDUf3jqhqWUQeAd4I/CpwyBn7pllsZngIeK+IuJBUKUWkkPpdLiIr0nbmm0k6Ow3Hz98CH1XVZya5tzPeefmuGU3Rmc1NwN+p6jJVXa6qS4AXSGop5h04ORzLO3IP8BfA44er5RtxmRnuATYDT4rIRuAuxmuNPwY+AWwkedkemDIGw1Ghqn2q+tkpvD4J/KmI/JCk9GyYGW7hwN/214Bfw7wDJ4VjeUdUdQMwCnzhcPEb8y8Gg+GkkTYN/3dVveFkp8VweERkEUkz2bmqGh8qrKm5GAwGg+GwiMg7SEaV/cHhhAVMzcVgMBgMJwBTczEYDAbDtGPE5TgRkSUi8qiIbBGRTSLy/tS9S0QeEZHn0nVn6n6diGwQkWfS9bVNcV2auj8vIn8hcgQfJTcYDIZTECMux08I/J6qnge8HPhtEVkDfAj4jqquAr6T7gMMAG9Q1QuAdwL3NcX1OeDdJBMsVwGvnZlLMBgMhunFiMtxoqq7VfXJdHsM2AIsJplodG8a7F4S0xeo6r+r6kup+yYgKyIZEVkItKnqjzXpCPu7+jEGg8Ew2zDiMo2ks1kvJhlRMV9Vd0MiQMC8KQ55C/DvqlojEaS+Jr++1M1gMBhmHcb8yzSRWnz9GvA7qjp6uO4SEVkL/BmJ3TFITMRMxgzlMxgMsxJTc5kGUrMuXwP+QVX/KXXemzZ1ka73NYXvIZmF/A5V3Z469wE9TdH2AC9hMBgMsxAjLsdJOqLrb4AtqvrnTV4PknTYk66/nobvILEE+2FV/WE9cNp0NiYiL0/jfEf9GIPBYJhtmEmUx4mIXAX8AHgGqM9a/X2Sfpf7gaVAL/BWVR0SkTuBDwPPNUVzvaruE5GXkZixzpF8zOc2NQ/IYDDMQoy4GAwGg2HaMc1iBoPBYJh2jLgYDAaDYdox4mIwGAyGaceIi8FgMBimHSMuBoPBYJh2jLgYDAaDYdox4mIwGAyGaef/AwUuSMHy42foAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "new_data.plot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Quatrième partie : formattage des données pour les graphes cumulés sur le temps\n", "\n", "Pour ces graphes, on a juste à sommer toutes les lignes et se débarasser des données inutiles, puis formatter les champs temps string en datetime :" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2020-01-22 555\n", "2020-01-23 654\n", "2020-01-24 941\n", "2020-01-25 1434\n", "2020-01-26 2118\n", " ... \n", "2020-04-28 3097190\n", "2020-04-29 3172287\n", "2020-04-30 3256853\n", "2020-05-01 3343777\n", "2020-05-02 3427343\n", "Length: 102, dtype: object" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cumul_data = raw_data.copy()\n", "cumul_data = cumul_data.sum()\n", "cumul_data = cumul_data[3:]\n", "cumul_data.index = [pd.to_datetime(datetext) for datetext in cumul_data.index]\n", "cumul_data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Cinquième partie : affichage des graphes montrant le nombre de contaminations cumulées dans le temps\n", "\n", "Maintenant, on affiche le plot sous format linéaire et logarithmique : " ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZcAAAEHCAYAAABiAAtOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzt3Xl81NW9//HXJyth3wJFQFldwAUhAtraWhfgWn+1tmqxreCtV1qr3a5tXW5vqUurtrW23FatVStSFSnqFbdS6tKqlwJBFASkiaKCIAQSwpJ1Jp/fH3NihwhJSCaZTOb9fDy+j/nO+Z7zmZMJkw/nnO/3O+buiIiIJFJGsjsgIiKdj5KLiIgknJKLiIgknJKLiIgknJKLiIgknJKLiIgknJKLiIgknJKLiIgknJKLiIgkXFayO9Ce+vfv78OGDUt2N0REUsrKlSt3uHv+obRJq+QybNgwCgsLk90NEZGUYmbvHmqbJqfFzKyLmS03s9fNbK2ZXR/Kf2xm75vZa2E7O67NtWZWbGYbzGxqXPkEM1sTjs0xMwvluWb2SChfZmbD4trMNLOisM2MKx8e6haFtjmH+sOLiEjbaM6aSzVwurufAIwDppnZ5HDsdncfF7ZnAMxsDDAdGAtMA+4ws8xQ/05gFjA6bNNC+aVAmbuPAm4Hbg2x+gKzgUnARGC2mfUJbW4Nrz8aKAsxRESkA2gyuXjM3vA0O2yN3Ur5XGC+u1e7+0agGJhoZoOAnu6+1GO3Yn4A+Fxcm7lhfyFwRhjVTAWWuHupu5cBS4glNwNOD3UJbetjiYhIkjXrbDEzyzSz14DtxP7YLwuHrjSz1WZ2X9yIYjCwKa755lA2OOw3LN+vjbtHgHKgXyOx+gG7Qt2GsRr2fZaZFZpZYUlJSXN+XBERaaVmJRd3j7r7OGAIsVHIscSmuEYSmyrbCtwWqtuBQjRS3pI2jcVq2Pe73b3A3Qvy8w/pZAcREWmhQ7rOxd13AS8C09x9W0g6dcDvia2JQGwUMTSu2RBgSygfcoDy/dqYWRbQCyhtJNYOoHeo2zCWiIgkWXPOFss3s95hPw84E3gzrKHUOw94I+wvAqaHM8CGE1u4X+7uW4E9ZjY5rJnMAJ6Ia1N/Jtj5wPNhXWYxMMXM+oRptynA4nDshVCX0LY+loiIJMiGD/a0qF1zrnMZBMwNZ3xlAAvc/Skzm2dm44hNR70DfA3A3dea2QJgHRABrnD3aIh1OXA/kAc8GzaAe4F5ZlZMbMQyPcQqNbMbgRWh3g3uXhr2rwbmm9lNwKoQQ0REEuT1Tbv4/J3/16K2FhsEpIeCggLXRZQiIk2rqo1y9pyXqKyJ8o/rzlzp7gWH0l73FhMRkY+49c9v8nbJPn5+/gktaq/kIiIi+3mleAd/eOUdLjllGJ8Y3b9FMZRcRETkQ+WVtXzvT68zon83rp52dIvjpNWNK0VEpHE3PbWObburePTyU8jLyWy6wUFo5CIiIgC8uGE7f1q5ma9/aiQnHt6n6QaNUHIRERF2V9Vy7WNrGDWgO986Y3Sr42laTEREuPmZ9R9Oh3XJbvl0WD2NXERE0tzLRTt4ePkmLjt1RKunw+opuYiIpLE9VbVc/ehqRvTvxnfPOjJhcTUtJiKSxm56aj1byytZmKDpsHoauYiIpKnn39zGI4Wb+NqnRjI+QdNh9ZRcRETSUNm+Gq5+dA1HDezBd85s/dlhDWlaTEQkDc1etJayfTX84ZKTyM1K3HRYPY1cRETSzILCTSx6fQvfOmM0xw7u1SavoeQiIpJG1m3ZzX//7xucMrIfV3x6VJu9jpKLiEia2F1VyzceXEmvvGx+Pf1EMjOszV5Lay4iImnA3bl64Wo2lVXy8GWTye+R26avp5GLiEgauPfljTz7xgdcPe0oJg7v2+avp+QiItLJLXt7Jzc/+yZTxw7kslNHtMtrKrmIiHRi23ZXccVDqziib1d+ccEJmLXdOku8JpOLmXUxs+Vm9rqZrTWz60N5XzNbYmZF4bFPXJtrzazYzDaY2dS48glmtiYcm2PhpzSzXDN7JJQvM7NhcW1mhtcoMrOZceXDQ92i0DYnMW+JiEjnUBOp4xsPvkpFTYS7Lp5Ajy7Z7fbazRm5VAOnu/sJwDhgmplNBq4BnnP30cBz4TlmNgaYDowFpgF3mFn9FTp3ArOA0WGbFsovBcrcfRRwO3BriNUXmA1MAiYCs+OS2K3A7eH1y0IMEREJbnp6HSvfLeNn5x/PkQN7tOtrN5lcPGZveJodNgfOBeaG8rnA58L+ucB8d692941AMTDRzAYBPd19qbs78ECDNvWxFgJnhFHNVGCJu5e6exmwhFhyM+D0ULfh64uIpL15S9/hgaXvMuuTIzjn+MPa/fWbteZiZplm9hqwndgf+2XAQHffChAeB4Tqg4FNcc03h7LBYb9h+X5t3D0ClAP9GonVD9gV6jaM1bDvs8ys0MwKS0pKmvPjioiktJeLdvDjJ9dx+tEDuHra0UnpQ7OSi7tH3X0cMITYKOTYRqofaLXIGylvSZvGYu1f6H63uxe4e0F+fv6BqoiIdBpvlezlGw+uZFR+d349fVybXijZmEM6W8zddwEvElsr2RamugiP20O1zcDQuGZDgC2hfMgByvdrY2ZZQC+gtJFYO4DeoW7DWCIiaWl3VS3/MbeQ7MwM7plZ0K4L+A0152yxfDPrHfbzgDOBN4FFQP3ZWzOBJ8L+ImB6OANsOLGF++Vh6myPmU0OayYzGrSpj3U+8HxYl1kMTDGzPmEhfwqwOBx7IdRt+PoiImmnrs65asHrbCqt4K6LJzC0b9ek9qc5t38ZBMwNZ3xlAAvc/SkzWwosMLNLgfeACwDcfa2ZLQDWARHgCnePhliXA/cDecCzYQO4F5hnZsXERizTQ6xSM7sRWBHq3eDupWH/amC+md0ErAoxRETS0p1/e4sl67bxo3PGcNKwtr8CvykWGwSkh4KCAi8sLEx2N0REEuqV4h1cfO8yPnP8YcyZPi7hF0qa2Up3LziUNrpCX0QkhX1QXsU3H17FyPzu3PL549rtCvymKLmIiKQod+f7C1+nsibKXRdPoFtux7nRvZKLiEiKenj5Jl4q2sF1Zx/NyPzuye7OfpRcRERS0KbSCn7y9Do+PqofX550RLK78xFKLiIiKaauzvnBwtWYGbd+4XgyknShZGOUXEREUswfl73L0rd38sPPHMOQPsm9nuVglFxERFLIptIKbnn2TT55ZD5fPGlo0w2SRMlFRCRFuDvXPLaaDDNu7kCnHR+IkouISIqYv2ITrxTv5Nqzj2Zw77xkd6dRSi4iIilgy65KfvL0ek4e0Y+LTjo82d1pkpKLiEgH5+5c9/gaonXeYc8Oa0jJRUSkg3tkxSZe3FDCD6YdxeH9OubZYQ0puYiIdGCbSiu48al1nDKyHzNPHpbs7jSbkouISAcVDd/RkmHGzy84ISWmw+opuYiIdFD3vbyR5e+UMvuzYzv82WENKbmIiHRAb36wm5//ZQNnjRnIF8YPTnZ3DpmSi4hIB7O3OsI3HnyVXnnZ/PS8jn2x5MEouYiIdCDuzrWPreGdHfuYM/1E8nvkJrtLLaLkIiLSgfzxH+/y5OtbuGrKUZw8sl+yu9NiSi4iIh3E6s27uPGp9Xz6qHwu/9TIZHenVZpMLmY21MxeMLP1ZrbWzL4dyn9sZu+b2WthOzuuzbVmVmxmG8xsalz5BDNbE47NsTCRaGa5ZvZIKF9mZsPi2sw0s6KwzYwrHx7qFoW2OYl5S0RE2t/uqlqueOhV+nfP4ZcXjkup044PpDkjlwhwlbsfA0wGrjCzMeHY7e4+LmzPAIRj04GxwDTgDjPLDPXvBGYBo8M2LZRfCpS5+yjgduDWEKsvMBuYBEwEZptZn9Dm1vD6o4GyEENEJOW4O9c8upotu6r4ny+Np0+31P+/cpPJxd23uvurYX8PsB5o7Ly4c4H57l7t7huBYmCimQ0Cerr7Und34AHgc3Ft5ob9hcAZYVQzFVji7qXuXgYsAaaFY6eHuoS29bFERFLKH5e9xzNrPuD7U49iwhF9mm6QAg5pzSVMV50ILAtFV5rZajO7L25EMRjYFNdscygbHPYblu/Xxt0jQDnQr5FY/YBdoW7DWA37PMvMCs2ssKSk5FB+XBGRNrd2Szk3PrWO047KZ9apI5LdnYRpdnIxs+7Ao8B33H03sSmukcA4YCtwW33VAzT3Rspb0qaxWPsXut/t7gXuXpCfn3+gKiIiSVFeWcuVD62iT9dsbkux27s0pVnJxcyyiSWWB939MQB33+buUXevA35PbE0EYqOI+O/eHAJsCeVDDlC+XxszywJ6AaWNxNoB9A51G8YSEenwonXOt+evYnNZBb/50nj6dU/N61kOpjlnixlwL7De3X8ZVz4ortp5wBthfxEwPZwBNpzYwv1yd98K7DGzySHmDOCJuDb1Z4KdDzwf1mUWA1PMrE+YdpsCLA7HXgh1CW3rY4mIdHg/X7yBFzeU8OPPjuWkYX2T3Z2Ey2q6Ch8HLgbWmNlroew64CIzG0dsOuod4GsA7r7WzBYA64idaXaFu0dDu8uB+4E84NmwQSx5zTOzYmIjlukhVqmZ3QisCPVucPfSsH81MN/MbgJWhRgiIh3eote3cNff3uJLkw7ny5OOSHZ32oTFBgHpoaCgwAsLC5PdDRFJY//ctofP/uZljhvciwf/YzI5WR3/WnYzW+nuBYfSpuP/VCIinURNpI7vPvIa3XKy+O2Xx6dEYmmp5kyLiYhIAvzP80Ws3bKbuy+ewIAeXZLdnTbVedOmiEgH8up7Zfz2hWLOnzCEKWM/luzutDklFxGRNlZRE+GqBa8zqFceP/p/Y5pu0AloWkxEpI3d9PR6Nu7Yx0OXTaJnl+xkd6ddaOQiItKGnl69lYeWvcfXPjmCU0b2T3Z32o2Si4hIG3lvZwXXPLqaEw/vzfemHpXs7rQrJRcRkTZQE6njyodfxQzmTD+R7Mz0+nOrNRcRkTbwsz+/yerN5dz1lfEM7ds12d1pd+mVSkVE2sGKd0q55+WNfGXy4Uw7dlDTDTohJRcRkQSqqo1y9cLVDOmTx7X/dkyyu5M0mhYTEUmg2//6T97esY8/XjqJbrnp+ydWIxcRkQRZvXkXv//720w/aSifGJ0+px0fiJKLiEgC1ETq+MHC1eT3yOW6z6TvdFi99B2ziYgk0B9e2cibH+zh9zMK0uYq/MZo5CIi0koflFcx57kizjxmAGeNGZjs7nQISi4iIq3002fWU1vn/OicscnuSoeh5CIi0gpL39rJote3cPmnRnJ4v/S7WPJglFxERFqoNlrHjxetZUifPC4/bWSyu9OhKLmIiLTQvS9vZMO2PfzonDF0yc5Mdnc6lCaTi5kNNbMXzGy9ma01s2+H8r5mtsTMisJjn7g215pZsZltMLOpceUTzGxNODbHzCyU55rZI6F8mZkNi2szM7xGkZnNjCsfHuoWhbY5iXlLRESatmZzObf9ZQP/duzHtIh/AM0ZuUSAq9z9GGAycIWZjQGuAZ5z99HAc+E54dh0YCwwDbjDzOpT+p3ALGB02KaF8kuBMncfBdwO3Bpi9QVmA5OAicDsuCR2K3B7eP2yEENEpM3tq47wrfmr6N89l5s/fxzh/8kSp8nk4u5b3f3VsL8HWA8MBs4F5oZqc4HPhf1zgfnuXu3uG4FiYKKZDQJ6uvtSd3fggQZt6mMtBM4Io5qpwBJ3L3X3MmAJMC0cOz3Ubfj6IiJt6oYn1/HOzn3c/sVx9O6qSZMDOaQ1lzBddSKwDBjo7lshloCAAaHaYGBTXLPNoWxw2G9Yvl8bd48A5UC/RmL1A3aFug1jNezzLDMrNLPCkpKSQ/lxRUQ+4unVW3mkcBPfOG0kk0f0S3Z3OqxmJxcz6w48CnzH3Xc3VvUAZd5IeUvaNBZr/0L3u929wN0L8vPzD1RFRKRZirbt4epHV3PC0N5858wjk92dDq1ZycXMsokllgfd/bFQvC1MdREet4fyzcDQuOZDgC2hfMgByvdrY2ZZQC+gtJFYO4DeoW7DWCIiCVdeUctlDxTSJTuTO788Pu2+WfJQNedsMQPuBda7+y/jDi0C6s/emgk8EVc+PZwBNpzYwv3yMHW2x8wmh5gzGrSpj3U+8HxYl1kMTDGzPmEhfwqwOBx7IdRt+PoiIgkVica+svj9XZX87uLxHNY7L9ld6vCac+PKjwMXA2vM7LVQdh1wC7DAzC4F3gMuAHD3tWa2AFhH7EyzK9w9GtpdDtwP5AHPhg1iyWuemRUTG7FMD7FKzexGYEWod4O7l4b9q4H5ZnYTsCrEEBFJuJuffZOXinbwsy8cz4Qj+ia7OynBYoOA9FBQUOCFhYXJ7oaIpJA/FW7i+wtXc8kpw/jxZ9Pz3mFmttLdCw6ljSYNRUQOYuW7ZfzX42/wiVH9+aG+o+WQKLmIiBzA1vJKvjZvJYN6d+E3XzqRLC3gHxJ9WZiISAOVNVFmPbCSqtooD182SRdKtoCSi4hIA79csoE3tpRzz4wCRg/skezupCSN80RE4rxVspc/vPIOXywYyhnH6IaULaXkIiIS56an1pGXncn3ph6V7K6kNCUXEZHghTe388KGEr595mj6d89NdndSmpKLiAhQE6njxqfXMSK/GzNOHpbs7qQ8JRcREeCBpe/wdsk+/vucMeRk6U9ja+kdFJG0t+GDPfx88QbOOHoAnz5qQNMNpElKLiKS1iprolz50Kv06JLNLV84Ptnd6TR0nYuIpLXrn1xLccle5n11Evk9tIifKBq5iEjaWvT6FuaviH2r5CdG9092dzoVJRcRSUtbyyu57rE1TDiij75Vsg0ouYhIWvrxorVE6uq4/cJx+lbJNqB3VETSzl/XbWPx2m1864zRHN6va7K70ykpuYhIWqmoiTB70VqOHNidy04dkezudFo6W0xE0sqv/lrE+7sqWfj1kzUd1ob0zopI2li7pZx7X97IRROHUjCsb7K706kpuYhIWqiJ1PG9P62mT9ccrp52dLK70+k1mVzM7D4z225mb8SV/djM3jez18J2dtyxa82s2Mw2mNnUuPIJZrYmHJtjZhbKc83skVC+zMyGxbWZaWZFYZsZVz481C0KbfU1cSLSqN+8UMz6rbu5+fPH6Zsl20FzRi73A9MOUH67u48L2zMAZjYGmA6MDW3uMLPMUP9OYBYwOmz1MS8Fytx9FHA7cGuI1ReYDUwCJgKzzaxPaHNreP3RQFmIISJyQGs2l/PbF4r5/PjBnDVGXwDWHppMLu7+d6C0mfHOBea7e7W7bwSKgYlmNgjo6e5L3d2BB4DPxbWZG/YXAmeEUc1UYIm7l7p7GbAEmBaOnR7qEtrWxxIR2U91JMpVf3qN/t1zmH3O2GR3J220Zs3lSjNbHabN6kcUg4FNcXU2h7LBYb9h+X5t3D0ClAP9GonVD9gV6jaM9RFmNsvMCs2ssKSk5NB/ShFJab/6axH/3LaXW75wPL26Zie7O2mjpcnlTmAkMA7YCtwWyu0Adb2R8pa0aSzWRw+43+3uBe5ekJ+ff7BqItIJrXy3lN/97S2+WDBUt9JvZy1KLu6+zd2j7l4H/J7YmgjERhFD46oOAbaE8iEHKN+vjZllAb2ITcMdLNYOoHeo2zCWiAgQu1jyPxe8zmG98/jhOcckuztpp0XJJayh1DsPqD+TbBEwPZwBNpzYwv1yd98K7DGzyWHNZAbwRFyb+jPBzgeeD+syi4EpZtYnTLtNARaHYy+EuoS29bFERAC4+Zk3ea+0gl9ccAI9umg6rL01eYW+mT0MnAb0N7PNxM7gOs3MxhGbjnoH+BqAu681swXAOiACXOHu0RDqcmJnnuUBz4YN4F5gnpkVExuxTA+xSs3sRmBFqHeDu9efWHA1MN/MbgJWhRgiIgD87Z8lzPvHu1x26nAmj+iX7O6kJYsNBNJDQUGBFxYWJrsbItKGdu6t5uw5L9GzSzZPfvMTdMnObLqRNMrMVrp7waG00b3FRKTTiNY533nkNcoqarnvkpOUWJJIt38RkU5jznNFvFS0gxvPHcvYw3oluztpTclFRDqFv/2zhDnPF3H+hCFcWDC06QbSppRcRCTlvb+rku/MX8VRA3tw47nHEm5dKEmk5CIiKa2qNsrX562kNurc8eXx5OVonaUj0IK+iKQsd+e6x9ew5v1y7plRwIj87snukgQauYhIyvrDK+/w2Kvv890zj+RM3e24Q1FyEZGUtPStnfzkmfVMGTOQb54+KtndkQaUXEQk5Wwtr+TKh15lWL+u3HbhCWRkaAG/o1FyEZGUUhOp4xsPvkpVbZTfXVyg+4Z1UFrQF5GUctPT61j13i7u+PJ4Rg3QAn5HpZGLiKSMx17dzANL32XWJ0dw9nGDmm4gSaPkIiIpoXj7Xq57fA2ThvflB1OPSnZ3pAlKLiLS4VVHonx7/irysjOZc9GJZGXqT1dHpzUXEenwfrF4A2u37Ob3MwoY2LNLsrsjzaD0LyId2ktFJfz+pY18ZfLhnKULJVOGkouIdFil+2q4asHrjB7Qnf86e0yyuyOHQNNiItIhuTvXPraaXRW13P/vE3VDyhSjkYuIdEgLV25m8dptfG/qkYw5rGeyuyOHSMlFRDqcTaUVXP/kOiYN78ulnxiR7O5ICzSZXMzsPjPbbmZvxJX1NbMlZlYUHvvEHbvWzIrNbIOZTY0rn2Bma8KxORa+zcfMcs3skVC+zMyGxbWZGV6jyMxmxpUPD3WLQtuc1r8VItIRROuc/1zwGgbcduEJZOq+YSmpOSOX+4FpDcquAZ5z99HAc+E5ZjYGmA6MDW3uMLP6idI7gVnA6LDVx7wUKHP3UcDtwK0hVl9gNjAJmAjMjktitwK3h9cvCzFEpBP43d/fYsU7ZVx/7liG9Oma7O5ICzWZXNz970Bpg+Jzgblhfy7wubjy+e5e7e4bgWJgopkNAnq6+1J3d+CBBm3qYy0EzgijmqnAEncvdfcyYAkwLRw7PdRt+PoiksLWbC7nl3/5J585bhDnnTg42d2RVmjpmstAd98KEB4HhPLBwKa4eptD2eCw37B8vzbuHgHKgX6NxOoH7Ap1G8b6CDObZWaFZlZYUlJyiD+miLSXipoI356/ivweufzkvGMJM+eSohK9oH+gfw3eSHlL2jQW66MH3O929wJ3L8jPzz9YNRFJshufWs/Gnfu47cIT6N1Vy6iprqXJZVuY6iI8bg/lm4GhcfWGAFtC+ZADlO/XxsyygF7EpuEOFmsH0DvUbRhLRFLQ4rUf8PDy9/jaJ0dyysj+ye6OJEBLk8sioP7srZnAE3Hl08MZYMOJLdwvD1Nne8xsclgzmdGgTX2s84Hnw7rMYmCKmfUJC/lTgMXh2AuhbsPXF5EUs7msgqsfXc2xg3vyn2cdmezuSII0eYW+mT0MnAb0N7PNxM7gugVYYGaXAu8BFwC4+1ozWwCsAyLAFe4eDaEuJ3bmWR7wbNgA7gXmmVkxsRHL9BCr1MxuBFaEeje4e/2JBVcD883sJmBViCEiKaY6EuWKh1YRjTq/uWg8OVm69K6zsNhAID0UFBR4YWFhsrshIsHsJ95g7tJ3uesrE5h27MeS3R05CDNb6e4Fh9JG/00QkaRY9PoW5i59l8tOHa7E0gkpuYhIuyvevodrHl1NwRF9+MG0o5PdHWkDSi4i0q72VUf4+h9fJS87k998aTzZ+lbJTkm33BeRduPu/Nfja3irZC9/vHQSH+ulb5XsrPRfBhFpNw8tf4//fW0L3z3zSD4+StezdGZKLiLSLl7ftIvrF63jk0fmc+WnRyW7O9LGlFxEpM29XbKXr96/gvweufzqi+PI0G30Oz0lFxFpU1vLK7n43uUAzLt0In276b5h6UAL+iLSZsr21TDj3uWUV9Yyf9ZkRuR3T3aXpJ0ouYhIm9hTVcsl96/g3dIKHvjqRI4d3CvZXZJ2pGkxEUm4ipoIX71/BWvfL+e3XxrP5BH9kt0laWdKLiKSUFW1Uf5jbiEr3y3j19NP5KwxA5PdJUkCTYuJSMLUROr4+h9XsvTtnfzywhP4zPGDkt0lSRKNXEQkIdydH/7vGl7cUMJPzzuO804c0nQj6bSUXEQkIe7629ssKNzMt04fxUUTD092dyTJlFxEpNWeWbOVW//8Jp894TC+q2+TFJRcRKSVVr1XxncfeY3xh/fmZ+cfT+ybzCXdKbmISIu9FW7rMqBnLnfPKKBLdmayuyQdhJKLiLTItt1VzLh3ORlmzPvqJPp3z012l6QDaVVyMbN3zGyNmb1mZoWhrK+ZLTGzovDYJ67+tWZWbGYbzGxqXPmEEKfYzOZYGFebWa6ZPRLKl5nZsLg2M8NrFJnZzNb8HCJyaHZX1TLzvuWUVdTwh38/iWH9uyW7S9LBJGLk8ml3H+fuBeH5NcBz7j4aeC48x8zGANOBscA04A4zqx9D3wnMAkaHbVoovxQoc/dRwO3ArSFWX2A2MAmYCMyOT2Ii0naqaqNcNreQ4u17uesrEzh+SO9kd0k6oLaYFjsXmBv25wKfiyuf7+7V7r4RKAYmmtkgoKe7L3V3Bx5o0KY+1kLgjDCqmQoscfdSdy8DlvCvhCQibSQSrePKh1ax/J1SbrvwBD55ZH6yuyQdVGuTiwN/MbOVZjYrlA10960A4XFAKB8MbIpruzmUDQ77Dcv3a+PuEaAc6NdILBFpI3V1zg8eXc1f12/j+s+O5dxx+sjJwbX29i8fd/ctZjYAWGJmbzZS90DnJ3oj5S1ts/+LxpLeLIDDD9eFXSIt4e7c9PR6Hnv1ff7zrCOZcfKwZHdJOrhWjVzcfUt43A48Tmz9Y1uY6iI8bg/VNwND45oPAbaE8iEHKN+vjZllAb2A0kZiHaiPd7t7gbsX5OdrCC9yqGoidXx/4Wrue2Uj//7xYXzzdH1FsTStxcnFzLqZWY/6fWAK8AawCKg/e2sm8ETYXwRMD2eADSe2cL88TJ3tMbPJYT1lRoM29bHOB54P6zKLgSlm1ics5E8JZSKSQOWVtVzyh+UsXLmZ75w5mh+dM0YXSUqztGZabCDwePiHlgU85O5/NrMVwAIzuxR4D7gAwN2MFuCmAAAMoklEQVTXmtkCYB0QAa5w92iIdTlwP5AHPBs2gHuBeWZWTGzEMj3EKjWzG4EVod4N7l7aip9FRBrYuGMflz1QyLs793HbBSfwhQm6EaU0n8UGAumhoKDACwsLk90NkQ7N3fnjsvf46dPrycnK4K6vTODkkfqyr3RmZivjLjdpFn2fi4h8aPvuKn7w6Gpe3FDCqaP78/PzT+Bjvboku1uSgpRcRASAJeu28YOFr1NZG+X6z47l4slHkJGh9RVpGSUXkTRXVRvlJ0+vZ94/3mXMoJ7MuWgcowb0SHa3JMUpuYiksZeKSrj+yXUUb9/LZacO53tTjyI3S3c2ltZTchFJQ8Xb9/CTp9fzwoYShvbN44GvTtStXCShlFxE0kjpvhp+9dd/8uCy9+iancl1Zx/NzFOGabQiCafkIpIGqiNR5v7fO/zP88VU1ES5aOJQvnvmkfTTd7BIG1FyEenEItE6Hnv1fX79XBHv76rk00flc93ZxzB6oBbspW0puYh0QpFoHU+t3sqvnyti4459nDCkF7d84ThOHa11FWkfSi4inUhNpI7HV23mjhff4t2dFRwzqCf3zCjgjGMG6J5g0q6UXERSXLTOWfVeGUvWbWPR61vYWl7FcYN7cddXJjBlzEBdCClJoeQikoK276nileIdvFS0g79tKGHnvhqyMoxTRvXn5s8fx6eOzNdIRZJKyUUkBezYW82yt0tZtnEny94uZcO2PQD06ZrNJ0bnc9aYgZx2VD49u2QnuaciMUouIh2Iu7N9TzVrt5Sz9v3dvLGlnDfe3837uyoB6JqTyYQj+nDuiYdx6qh8xh7WU9Ne0iEpuYgk2fu7Knn+ze28+OZ2Xtu0i537aj48NqJ/N8Yf0YcZJx/BScP7ctzgXmRntuoLZEXahZKLSBupqo2yY281O/bW8EF5JZtKK9lcVsG23dVU1EapqI5QWlHD2yX7ABjaN49PHz2AsYf1ZOxhvThmUA96aJpLUpSSi0gjonXO3uoIuytr2VVRy67KGsrDfuzxX893VdayuzJWXl5ZS0VN9CPxeuRm8bFeXeiam0XX7ExG5ndn+klDOf3oAYzM765FeOk0lFykQ3N36hwidXVE65xInROJOpG6OmqjTm2kjtpoHTXR8DxaR22kjqpIlOra2GNlTR2VtVEqayJU1dZRVRulOhJ7rB9BVNREqaqNxurVRqmojrIv1G9Ml+wMeufl0LtrNj3zshnatyvH5mXTKy+bft1z6N8tl/49chjQowtD+3alV55GIpIelFxkP3V1zs59NWwtr6SsopbK8Ee3/g9vVW1deIzf6qiOxP5g10RiScAd6tyJhuRQV+ex5+ExUufUROqojtRRXRv9sH6dQ9Qd/7BuYn++DIMu2ZmxLSuDvJxMuuZkkZeTSZ9uORyWnUlediZ5OZl0z82ia04W3XIz6ZWXTe+uOeExm955sWTSJVs3fBQ5ECWXNObu7K6MsPTtnbxSvIN/vL2Td3dWUBNt/H/rEPsfe+wPdCa52Rl0ycqkS3YG2ZkZZGQYmRlGlsUeM8zIMMjMMMyMTDMyM43crAxyszLJzcr4sI4ZZIQ2mWZkZBhZIV5m2M/KMDIzM8jJNLIzM8Jm5GRlfPi8S3ZmiB8SSHYsgWRnmqaeRNpBSicXM5sG/BrIBO5x91uS3KU2URutY191hD1VEfaGx92VteyuqmVvdYR91VH2VUfCfoR9NRH2Vseme/bVxKaD6qd9qiJ1RKJ1HxkRdM3JZOLwvpx+zAAO65XHoF5d6Nc9hy7hf/Jd4v5Hn5uVoT/QItKolE0uZpYJ/BY4C9gMrDCzRe6+Lrk9+6i6Og9z/1F2V0Uo3VfNzr017KqoZU91hL1VEfZW1+63MFxeEUseB1sYbijDoFtOFt27ZNEtN2w5mfTumkPXnPoEEfsfff3oon6KaMIRfThhSG9ysnSKq4gkRsomF2AiUOzubwOY2XzgXOCgyWXH3mrufXkjEJsScgcnrAmE53V1YZ0gPEbrIFpX9+FCckVNlIowEqhfZK7z2Ojiw8Xi2n+tP1RH6po1zZSXnUnvrrGF4J552RzRr+uH+z27ZNOjSyxx9MjN2q+sR0gmGk2ISEeSysllMLAp7vlmYFLDSmY2C5gFkPOxUdz4VPMHNpkZYX3gw3l+o1tOFl1zMumak0lWZkZYF4DuuVn07/6vheLc7AxyMjPJycrYb9TQo0sWfbvl0K9bLn26ZdOjSzbdQiwRkc4ilZPLgf6b/pFzi9z9buBugBPHT/AXZ0/58FiGQYZZbBHZ7MP9+oVkERFpmVROLpuBoXHPhwBbGmuQmWG6zkBEpB2k8lzMCmC0mQ03sxxgOrAoyX0SERFSeOTi7hEzuxJYTOxU5PvcfW2SuyUiIqRwcgFw92eAZ5LdDxER2V8qT4uJiEgHpeQiIiIJp+QiIiIJp+QiIiIJZ+4Jvqd5B2Zme4ANrQjRCyhvZTf6AzvaMP7BKHZM/Pvflv1u6/idMXZjn43Wxk6EzvieH0zD38VR7t7jkCJ4+O6MdNiAwla2v7st+5CI+Ird/Pe/Lfudau9LR4jdET6fHfF9SUbshr+LlvxuNC12aJ5M4fiK3b6x2zq+Yrdv7LaOn6qxDyrdpsUK3b0g3fuQzvT+d1z63XQcDX8XLfndpNvI5e5kd4CO0Yd0pve/49LvpuNo+Ls45N9NWo1cRESkfaTbyEVERNqBkouIiCSckkuCmVnUzF6L24Y1Uvc0M3uq/XrX+ZmZm9m8uOdZZlai97ljMLPzwu/o6GT3JV2112dEySXxKt19XNz2TrI7lGb2AceaWV54fhbw/qEEMLOUvlt4B3cR8DKx719qNjPLbJvupKVWf0aaQ8mlHZhZppn93MxWmNlqM/ta3OGeZva4ma0zs7vMTL+T1nsW+EzYvwh4uP6AmU00s/8zs1Xh8ahQfomZ/cnMngT+0v5d7vzMrDvwceBSQnIJo/e/H+gzYGZ7zewGM1sGnJy8nndKLfmMvGRm4+LqvWJmxx/sBfSHLPHy4qbEHg9llwLl7n4ScBJwmZkND8cmAlcBxwEjgc+3e487n/nAdDPrAhwPLIs79ibwSXc/EfgR8NO4YycDM9399HbraXr5HPBnd/8nUGpm40P5wT4D3YA33H2Su7/c7r3t3FryGbkHuATAzI4Ect199cFeQMP/xKt093ENyqYAx5vZ+eF5L2A0UAMsd/e3AczsYeATwML26mxn5O6rw1rXRXz0y+R6AXPNbDTgQHbcsSXuXtounUxPFwG/Cvvzw/OnOfhnIAo8moR+dnot/Iz8CfhvM/s+8FXg/sZeQ8mlfRjwTXdfvF+h2WnEfnnxdOFRYiwCfgGcBvSLK78ReMHdzwsfrhfjju1rp76lHTPrB5xObK7fiX01uRP7w3awz0CVu0fbr5dp55A+I+5eYWZLgHOBC4FGr9jXtFj7WAxcbmbZEBtSmlm3cGyimQ0P88xfJLbYKa13H3CDu69pUN6Lfy1eXtKuPUpv5wMPuPsR7j7M3YcCG4mNUvQZSI6WfEbuAeYAK5oa5Su5tI97gHXAq2b2BvA7/jVqXArcArxB7MP2+AEjyCFx983u/usDHPoZcLOZvULsf8/SPi7io/+2HwW+hD4DSdGSz4i7rwR2A39oKr5u/yIiSROmhr/n7uckuy/SNDM7jNg02dHuXtdYXY1cRESkSWY2g9hZZf/VVGIBjVxERKQNaOQiIiIJp+TSSmY21MxeMLP1ZrbWzL4dyvua2RIzKwqPfUL5WWa20szWhMfT42JNCOXFZjbHzCxZP5eISGsoubReBLjK3Y8BJgNXmNkY4BrgOXcfDTwXngPsAP6fux8HzATmxcW6E5hF7ALL0cC09vkRREQSS8mlldx9q7u/Gvb3AOuBwcQuNJobqs0ldusL3H2Vu28J5WuBLmaWa2aDgJ7uvtRjC2EP1LcREUk1Si4JFK5mPZHYGRUD3X0rxBIQMOAATb4ArHL3amIJaXPcsc2hTEQk5ej2LwkS7vj6KPAdd9/d1HKJmY0FbiV23zGI3SKmIZ3KJyIpSSOXBAi3dXkUeNDdHwvF28JUF+Fxe1z9IcSuQp7h7m+F4s3AkLiwQ4AtiIikICWXVgpndN0LrHf3X8YdWkRswZ7w+ESo35vYnWCvdfdX6iuHqbM9ZjY5xJxR30ZEJNXoIspWMrNPAC8Ba4D6q1avI7busgA4HHgPuMDdS83sh8C1QFFcmCnuvt3MCojdxjqP2Jf5fNP1CxKRFKTkIiIiCadpMRERSTglFxERSTglFxERSTglFxERSTglFxERSTglFxERSTglFxERSbj/D0WhMfpG6dDlAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "cumul_data.plot()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "cumul_data.plot(logy=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Si l'on devait faire une petite analyse de ces graphes, on voit que le nombre de contaminations va fortement à la hausse sur le temps ... néanmoins, la courbe n'est pas exponentielle mais droite. Les mesures de confinement qui ont commencées en moyene dans le mois de Mars sont efficaces pour empêcher la propagation exponentielle du virus." ] }, { "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.6.4" } }, "nbformat": 4, "nbformat_minor": 2 }