From 7a180e7608afb3e92e81de3db32d0ee0d23b0a6b Mon Sep 17 00:00:00 2001 From: lucasfranklinsilva Date: Mon, 24 Dec 2018 00:27:58 -0200 Subject: [PATCH] Init --- README.md | 24 + Twitter Sentiment Analisys.ipynb | 899 +++++++++++++++++++++++++++++++ 2 files changed, 923 insertions(+) create mode 100644 README.md create mode 100644 Twitter Sentiment Analisys.ipynb diff --git a/README.md b/README.md new file mode 100644 index 0000000..c201b14 --- /dev/null +++ b/README.md @@ -0,0 +1,24 @@ +[PT] Esse projeto consiste na Análise de Sentimentos de tweets coletados através da API do Twitter sobre as eleições presidencias de 2018 no Brasil. O projeto consiste em: + +1. Principais tweets coletados no período de 1 semana. +2. Tweets mais curtidos e retweetados. +3. Fonte dos tweets. +4. Análise de sentimentos em Português utilizando como set de treinamento o Corpus ReLi. (https://www.linguateca.pt/Repositorio/ReLi/) +5. Comparação entre resultados das bibliotecas Bloob e NLTK. +6. Nuvem de palavras mais frequentes. +7. Séries de tweets no tempo. +8. Mapa de tweets utilizando a localização declarada pelos usuários. + +[EN] This project consists in the Analysis of Sentiments of tweets collected through the Twitter API on the presidential elections of Brazil in 2018. The project consists of: + +1. Top tweets collected in 1 week period. +2. Tweets more liked and retweet. +3. Source of tweets. +4. Analysis of sentiments in Portuguese using Corpus ReLi as training set. (https://www.linguateca.pt/Repositorio/ReLi/) +5. Comparison between Bloob and NLTK librarys. +6. Cloud of most frequent words. +7. Tweets Time Series. +8. Map of tweets using the location declared by users. + +[PT] Processamento de Linguagem Natural +[EN] Natural Language Processing \ No newline at end of file diff --git a/Twitter Sentiment Analisys.ipynb b/Twitter Sentiment Analisys.ipynb new file mode 100644 index 0000000..16a2a85 --- /dev/null +++ b/Twitter Sentiment Analisys.ipynb @@ -0,0 +1,899 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Twitter Setiment Analysis " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Imports" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "# Basic Imports\n", + "import tweepy\n", + "import pandas as pd \n", + "import numpy as np \n", + "import time\n", + "import os\n", + "import re\n", + "\n", + "# Plotting and Visualization\n", + "from IPython.display import display\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "from wordcloud import WordCloud, ImageColorGenerator, STOPWORDS\n", + "%matplotlib inline\n", + "\n", + "# TextBlob Imports\n", + "from textblob import TextBlob\n", + "from textblob import TextBlob\n", + "from textblob.classifiers import NaiveBayesClassifier\n", + "\n", + "# NLTK Imports\n", + "import nltk\n", + "from sklearn.feature_extraction.text import CountVectorizer\n", + "from sklearn.naive_bayes import MultinomialNB\n", + "\n", + "#MAP\n", + "from geopy.geocoders import Nominatim\n", + "import folium\n", + "from folium import plugins\n", + "from geopy.geocoders import Nominatim" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Twitter Autentication Keys" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "#Keys for autentication\n", + "consumer_key=''\n", + "consumer_secret=''\n", + "\n", + "access_token=''\n", + "access_token_secret=''" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Twitter Autentication" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "#Autentication Methods\n", + "auth = tweepy.OAuthHandler(consumer_key,consumer_secret)\n", + "auth.set_access_token(access_token,access_token_secret)\n", + "api = tweepy.API(auth)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Searching for Tweets" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "#Searchin Twitter Timelines\n", + "tweets = []\n", + "info = []\n", + "\n", + "for tweet in tweepy.Cursor(api.search,\n", + " q=\"lula bolsonaro\",\n", + " tweet_mode='extended',\n", + " rpp=100,\n", + " result_type=\"popular\",\n", + " include_entities=True,\n", + " lang=\"pt\").items(1500):\n", + " if 'retweeted_status' in dir(tweet):\n", + " aux=tweet.retweeted_status.full_text\n", + " else:\n", + " aux=tweet.full_text\n", + " \n", + " newtweet = aux.replace(\"\\n\", \" \")\n", + " \n", + " tweets.append(newtweet)\n", + " info.append(tweet)\n", + " \n", + " file = open(\"lula-bolsonaro.txt\", \"a\", -1, \"utf-8\")\n", + " file.write(newtweet+'\\n')\n", + " file.close()\n", + " \n", + " time.sleep(0.5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Creating the dataframe " + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "#Construction of the dataframe\n", + "tweets_df = pd.DataFrame(tweets, columns=['Tweets']) \n", + "\n", + "tweets_df['len'] = np.array([len(tweet) for tweet in tweets])\n", + "tweets_df['ID'] = np.array([tweet.id for tweet in info])\n", + "tweets_df['Date'] = np.array([tweet.created_at for tweet in info])\n", + "tweets_df['Source'] = np.array([tweet.source for tweet in info])\n", + "tweets_df['Likes'] = np.array([tweet.favorite_count for tweet in info])\n", + "tweets_df['RTs'] = np.array([tweet.retweet_count for tweet in info])\n", + "tweets_df['User Location'] = np.array([tweet.user.location for tweet in info])\n", + "tweets_df['Geo'] = np.array([tweet.geo for tweet in info])\n", + "tweets_df['Coordinates'] = np.array([tweet.coordinates for tweet in info])\n", + "\n", + "tweets_df.to_csv(\"lula-bolsonaro.csv\")" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "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", + "
TweetslenIDDateSourceLikesRTsUser LocationGeoCoordinates
0A mudança do país que culminou com eleição de ...27410766674023462215682018-12-23 02:34:46Twitter for iPhone3855702Paraná/BrasilNoneNone
1VÍDEO: “Quem votou no Bolsonaro que cobre ele....10610767662172208824332018-12-23 09:07:26Twitter Web Client575181Sao Paulo, BrazilNoneNone
2Com Lula, o Brasil reassumiu sua soberania e p...18110768918246844538882018-12-23 17:26:33Twitter Web Client866229NoneNone
3De 2003 até o golpe de 2016, o Brasil foi prot...18510768775937381335042018-12-23 16:30:00TweetDeck474181Brasília / BrasilNoneNone
4Quem mandou Adélio esfaquear Bolsonaro? Ele ag...11610764774704535224322018-12-22 14:00:03Twitter for Android36399Brasília - BrasilNoneNone
\n", + "
" + ], + "text/plain": [ + " Tweets len \\\n", + "0 A mudança do país que culminou com eleição de ... 274 \n", + "1 VÍDEO: “Quem votou no Bolsonaro que cobre ele.... 106 \n", + "2 Com Lula, o Brasil reassumiu sua soberania e p... 181 \n", + "3 De 2003 até o golpe de 2016, o Brasil foi prot... 185 \n", + "4 Quem mandou Adélio esfaquear Bolsonaro? Ele ag... 116 \n", + "\n", + " ID Date Source Likes RTs \\\n", + "0 1076667402346221568 2018-12-23 02:34:46 Twitter for iPhone 3855 702 \n", + "1 1076766217220882433 2018-12-23 09:07:26 Twitter Web Client 575 181 \n", + "2 1076891824684453888 2018-12-23 17:26:33 Twitter Web Client 866 229 \n", + "3 1076877593738133504 2018-12-23 16:30:00 TweetDeck 474 181 \n", + "4 1076477470453522432 2018-12-22 14:00:03 Twitter for Android 363 99 \n", + "\n", + " User Location Geo Coordinates \n", + "0 Paraná/Brasil None None \n", + "1 Sao Paulo, Brazil None None \n", + "2 None None \n", + "3 Brasília / Brasil None None \n", + "4 Brasília - Brasil None None " + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tweets_df.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Top Tweets" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "O tweet com mais curtidas é: \n", + "Lula livre não é bom pra ninguém. Lula vai continuar sendo o condenado desacreditado, preso em casa. Bolsonaro ganha uma pauta nova que nao é o Queiroz. MBL ja tá alvoroçando o país pra protestar e capitalizar o antipetismo. STF perde os pontinhos que tinha com a opinião pública\n", + "Número de curtidas: 11901\n", + "\n", + "\n", + "O tweet com mais retweet é: \n", + "Sabem quem não apareceu pra depor hoje conforme marcado? Ele mesmo, o assessor-amigão do clã Bolsonaro, o Queiroz! Alegou uma \"crise inesperada de saúde\". Mas os que \"não têm corrupto de estimação\" estão caladinhos. Ou melhor: estão, como de costume, gritando sobre o Lula.\n", + "Número de retweets: 2323\n" + ] + } + ], + "source": [ + "# Top Searched Tweets\n", + "fav_max = np.max(tweets_df['Likes'])\n", + "rt_max = np.max(tweets_df['RTs'])\n", + "\n", + "fav = tweets_df[tweets_df.Likes == fav_max].index[0]\n", + "rt = tweets_df[tweets_df.RTs == rt_max].index[0]\n", + "\n", + "# Max FAVs:\n", + "print(\"O tweet com mais curtidas é: \\n{}\".format(tweets_df['Tweets'][fav]))\n", + "print(\"Número de curtidas: {}\".format(fav_max))\n", + "print(\"\\n\")\n", + "# Max RTs:\n", + "print(\"O tweet com mais retweet é: \\n{}\".format(tweets_df['Tweets'][rt]))\n", + "print(\"Número de retweets: {}\".format(rt_max))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Source of Tweets" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "#Source of the Tweets\n", + "sources = []\n", + "for source in tweets_df['Source']:\n", + " if source not in sources:\n", + " sources.append(source)\n", + "\n", + "percent = np.zeros(len(sources))\n", + "\n", + "for source in tweets_df['Source']:\n", + " for index in range(len(sources)):\n", + " if source == sources[index]:\n", + " percent[index] += 1\n", + " pass" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "newDF = pd.DataFrame({\n", + " 'source':percent,\n", + "}, index=sources)\n", + "\n", + "sources_sorted = newDF.sort_values('source',ascending=False)\n", + "ax = sources_sorted.source.plot(kind='barh',color='#002060')\n", + "ax.get_xaxis().set_major_formatter(plt.FuncFormatter(lambda x, loc: \"{:,}\".format(int(x))))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Training Model" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "#Sentiment Analysis in Português and English\n", + "\n", + "base_path = 'c:/ReLi-Lex'\n", + "train = []\n", + "wordsPT = []\n", + "wordsPT_sentiments = []\n", + "\n", + "files = [os.path.join(base_path, f) for f in os.listdir(base_path)]\n", + "\n", + "for file in files:\n", + " t = 1 if '_Positivos' in file else -1\n", + " with open(file, 'r') as content_file:\n", + " content = content_file.read()\n", + " all = re.findall('\\[.*?\\]',content)\n", + " for w in all:\n", + " wordsPT.append((w[1:-1]))\n", + " wordsPT_sentiments.append(t)\n", + " train.append((w[1:-1], t))\n", + "\n", + "cl = NaiveBayesClassifier(train)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "def clean_tweet(tweet):\n", + " return ' '.join(re.sub(\"(@[A-Za-z0-9]+)|([^0-9A-Za-z \\t])|(\\w+:\\/\\/\\S+)\", \" \", tweet).split())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Sentiment Analysis with TextBlob" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "def sentiment(tweet):\n", + " \n", + " polarity = 0\n", + " \n", + " #blob = TextBlob(tweet, classifier=cl)\n", + " blob = TextBlob(clean_tweet(tweet), classifier=cl) #Clean Tweets\n", + " \n", + " for s in blob.sentences:\n", + " polarity = s.classify() + polarity\n", + " \n", + " if polarity > 0:\n", + " return 1\n", + " elif polarity < 0:\n", + " return -1\n", + " else:\n", + " return 0" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "def analize_sentimentEN(tweet):\n", + " \n", + " analysis = TextBlob(tweet)\n", + " \n", + " if analysis.detect_language() != 'en':\n", + " analysis = TextBlob(str(analysis.translate(to='en')))\n", + " time.sleep(0.5) \n", + " \n", + " if analysis.sentiment.polarity > 0:\n", + " return 1\n", + " elif analysis.sentiment.polarity == 0:\n", + " return 0\n", + " else:\n", + " return -1" + ] + }, + { + "cell_type": "code", + "execution_count": 600, + "metadata": {}, + "outputs": [], + "source": [ + "#tweets_df['SA'] = np.array([ analize_sentimentEN(tweet) for tweet in tweets_df['Tweet'] ]) #English Dictionary" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "tweets_df['SA TextBlob'] = np.array([ sentiment(tweet) for tweet in tweets_df['Tweets'] ]) #Portuguese Dictionary" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Results of Sentiment Analysis" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "#Sentiment Analysis Results\n", + "pos_tweets = [ tweet for index, tweet in enumerate(tweets_df['Tweets']) if tweets_df['SA TextBlob'][index] > 0]\n", + "neg_tweets = [ tweet for index, tweet in enumerate(tweets_df['Tweets']) if tweets_df['SA TextBlob'][index] < 0]" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Porcentagem de Tweets Positivos: 79.3103448275862%\n", + "Porcentagem de Tweets Negativos: 20.689655172413794%\n" + ] + } + ], + "source": [ + "print(\"Porcentagem de Tweets Positivos: {}%\".format(len(pos_tweets)*100/len(tweets_df['Tweets'])))\n", + "print(\"Porcentagem de Tweets Negativos: {}%\".format(len(neg_tweets)*100/len(tweets_df['Tweets'])))" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "sentiments = ['Positivos', 'Negativos']\n", + "percents = [len(pos_tweets), len(neg_tweets)]" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "pie_chart = pd.Series(percents, index=sentiments, name='Sentimentos')\n", + "pie_chart.plot.pie(fontsize=11, autopct='%.2f', figsize=(6, 6));" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Word Cloud" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "stopwords= set(STOPWORDS)\n", + "\n", + "new_words = []\n", + "with open(\"stopwords_portuguese.txt\", 'r') as f:\n", + " [new_words.append(word) for line in f for word in line.split()]\n", + "\n", + "new_stopwords = stopwords.union(new_words)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "words = ' '.join(tweets_df['Tweets'])\n", + "\n", + "words_clean = \" \".join([word for word in words.split()\n", + " if 'https' not in word\n", + " and not word.startswith('@')\n", + " and word != 'RT'\n", + " ])" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAQ8AAAD8CAYAAABpXiE9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzsvWeQZFd25/e79z6b3lSWr+6q9g6mYboHdgZjODMkh0NiKBpxuVwjrsyGpA19VSjElSJkQrGKUFChL+RqlyuKwaUiuEFyhuMdgYHHoAF0o72p6vImKyvdy+fu1YcsVHdPN8wgQGAwyB8CEVnZmffd9/Ld/zv3nHPPFcYYBgwYMOCnRX7YHRgwYMBHk4F4DBgw4D0xEI8BAwa8JwbiMWDAgPfEQDwGDBjwnhiIx4ABA94TA/EYMGDAe2IgHgMGDHhPDMRjwIAB7wnrw+7AOzBIfx0w4INFvNsPDiyPAQMGvCcG4jFgwID3xEA8BgwY8J4YiMeAAQPeEwPxGDBgwHtiIB4DBgx4TwzEY8CAAe+JgXh8yGhj0O+ympsxhtTov+ceDRjw7vhZTxL7uSPWKd04xrdsgiSmEfXoJTEzhQq9NMZVFrFOEQgM/YwdY8xOtlwrDql5WbpJTN5xkeJd5/QMGPC+MhCPD5j59haXt+qMZHKsdFuk2hCkMatBm6VOi8lckVYccnd1lNWgw3x7CykEjlTsKVao9wIsIXlueY6HxnZT87Mf9ikN+JgyEI8PmKzlEOuUOE2JdYxveSRGI4XAVoqi4+Eqi4qX4bWNZRKtGcvmcaSilyQ0wgApIEiTdz3dGTDg7wPxM149/We6c++FOE0JdQIkXO8u4lsuYRLTM21K1hChDvCVh5KSrahNRmVIiXGlCygWuouM+EP00oiSkyM1CSPeKEqoD/vUBvx88K7nwQPL4wPGVgpbKbpJiqZHJ+khECghSAmoxyvkTJ6aO0xKj424STfp4EgHV3lkbIUUho1oidgUiHVM1RlCqYF4DPhgGVgeHxJh2qMRb+KrDFJIUpMikfR0iC0cMpZPpCMSHRPqEFvaxDruWyImJdQhrnRJTELZqQwsjwHvF+/a8hiIx4eMNoZmHOApmzCNiU3KfKfOwcIYqTEYDJaQJEaTs1zEILoy4O+XwbTlo8Jar8VsZ41hr8hcZ4PUaLppRE8nBEnEvvww55vLJCblk8OH8C3nw+7ygAHAQDw+dJQUaGN25N5VFolJsYSk5GQY8YvMdjZQwsWSP9s5fcYYQp0gEaRoxPZZteIeOculGQeUnAzaGCypAEOiNZaUJFrjKnuQt/IRYjBt+ZAxxtBLYyyptkVDkeh0e3CxM2VJdIqn7A9s2pKkGm0MSvTFzbbe2afSSULObS2RsRw2ow5bUUDR8ekmEXeVJpnr1pEImnFA3vYQ2699ZVOwfQ4Uxn7mBfJjwGDa8m7QxtANI7Ku86H6EoToEusEKSwiHSORhGmEFDaNeJmSO0NqWiQmT5i0cVUeW2bel2OnqebqUh0hQApB1nfYavdwbYsoTmh2Q8BQymeYGi69rYgIBEIIBAKJoOJmKdg+WcslNYYoTSg6PkMyz0bYIjGa1GjytseYXxoIx0eMj614pFrzxsIqy1stKrkMOddBG8O+kSr2Bxj2NGjWe2coO/tYDy8ChihtY0kfX5UJdZMg2aSdLFEWe1nvnSFrDVPzj70vx4+SlDNXlqgWs9RKOdpBi3Ozq9uvQ1zbohvGdHsxlUKGUs6/5fuNXsDVrU0inXK4UmO3P8T5+joFN8eB8hDzrSar7S1KynBXaYoL9XUSbbhvaIYgiTlfX6co8xQd/y16OOBnlY+1eGx2AoIoZm6jQdH3ODRW+8CffgKBIwtEuoWrCiQ6IO9MYIsMSrqkcYwUFnl7AuiLjSXfv4GmtaaU98lnPaZGSgRhTDHn71hiOtXYtsIYyPvubd+fbW7xzMIce8sVfnD9KnGqqfo+r6ws4UiLH1y/ykg2hxKSzV6Pp+ZnOTE2CUbwN5fO41s2z8xf5/fveYCq//5YUwM+GD62Pg9jDJudgERrgqSFZ1uU/BKW6g+a/sK0G4eXqL+3qY0xGoPZOabYmXYKzI7jsf/em38L8f6InDGGIIyxLfWu/Bo/yaurS1zY3OD48BjPLM6Ras3nZ/bz45UlxnN5Sq7Hc0vXqflZHp+c5tTqEqfWlvns7r38xbnXOVwdJmNZPDyxi5xzuzgN+MAZ+DzeCSEElVz/SbfWW2Mjmqfby5CahDDtoISF2f5PIpnO3Yencu+q7ThNSYzuD/lth2OUphgMnrJxlaKTbHCl/SyR7pBRJWyZYSp7L67Msdq7xFznJQB25x6k5u4l1G1WexcY9+/Ckg7aaJaCM+TtYfLWMO1kjSvtZ+gmDcb8I0xlj6OETZi2WQ+vIpDMdV/GkRmOFD+PRLHSO09iIpaDs/iqwP7Cp8ioMgbNSu881zs/RgqL6ewJqu7MW4in4NzGGu0o5P7RCeIk5a/PnqWQ9fjE2CTPXp8jSlN0rNkIusy1thAaRAqfnJrh4uY6npXDUR/bW/Eji/qDP/iDD7sPb8cffBAHiXWIFBa9tNWfFgiHlARLOFjSQQmbvFXFlu/uyXitucmZjVUub9XpxBG9NOFiY51rzQYbvS5juSwvbvy/GDTjmWO81vgbhFCM+8fYjK7z3PqfMOIfxFEZXm98lYq7C1v6PLP+b6i602SsCkG6ydOrf8S4fxQlbX609se4MkvV3c2ZrW9iSZeyM8VWvMQPVv5PUhNRc/diS5+yM0GQNvj28v+GAMb8oywEr7IRzjKZvYeV3nleXP8zxjJHUcLmdONr1Lx9eKpwm4Csdtv4ls2v7D/MeK5AY6HNuJNnX76CiQyqYzhQrNJZDCCGCh6lnk2vEVJWLg/snmJ/ZQhH/f1ZdgN+Kv7lu/3gQO6Bgl0jbw8x7M5sTwv6UwJNikCiNVxfb6FEnd3D5XfMRRBCMJErkLFtMpaNZ9n4loXYXlpvTEIzXuZ4/iuM+8e45j5P3qrhyCxX2s8y7O3nSPEXAGjHa1xuP8OJ6u8w4h1grvMyNXcvy8E5fFWk5EyyHLxBJ6lzX/nXsaXPpj/PlfYzzOQ+sdOno8UvUHImd/4O0i1s4XGs9EuUnSls6fHa5l+TmojLraeZzN7DocJnMRga0QLXOs9Tvun7b7IrX2TIz+Bbdj/PI4wpl7IsLW5hO4o01TR1QBpr5ufrpKkmn/dodgO0MYzWiriZwW34UWTwqwFSKIwxaLpgYpQs7/gUtNZcXl7n269e5PGjMxhjaAZhP6zpOSSpphn0AEEx4xElCUXlUcx7tzhfM/nSzmttNGP+EV5vfJXV3gVa8SoHC58BoJPUqXn7do6fs2osBW8AMJ09wYsbf0Y33eRa50V25x7EEg7ddJNmtMTL9b8ABIkJtwd632fjqiyeyt/2ZHdkBlflEEKghA0YtNHbfdjf/7yBnDVEM17ebu9GG8YYLCMZy+b7+SpRwoF9o3S7Ifv21JBSEscJvucwNlpEILAsSZL0nbBa94VkwEeTj7V4XGvV6SUJB0o1BCm96DWMSfDdB1Ci79+IU82FxXW6YYRrWVxe2uDlKwsI4KFDu7m4uM5Gq8t6s8MvP3iYZ87NoqRk31iV4zPjdzTFpRAU7BGa8TIVZxd7cg9TsEcAyFlVOskGxmhA0E7WyVoVBHJn+nKl9QzdpM6EfxdCCHxVouLu4rHh/3Q7/8MgkMidn/eGw/UW7tA3IQRZq0onWd+uYGZoJ+vkrCHCOOXq8hrFrM/qZhvXUVxb3mSomGWokKEVRIyUcmx0Aw5NDSPlYBry88zHVjxSo9kMA3pp0o+qmBCDRpsughtRB9e2OLprBCHg4ESNr718juN7xgnCmIuL62x2AgoZF1spVrfajJbyHJ4c5nuvX+L4zPgdj22MoZ1ssBZeJjEhSjhMZx9kOneSmdxDPLf+bznX/C4CyXLvLCervwuAJTymssc5Vf8PTOdOkLEqAAx7+3Bljlc3/5pR/yDdpEHF3cWYf+Snvi4Cyd78o7y08WdkrSFSE1GPZjlc+xzdMCYIY4yBK0sb5HyXXpSwtNGkmPFodXuEccJao83+iSGkfNOi60//5PsUIRrws8HHVjyMgTBNUNtP3yRdResmxqQYYuBGLoUUYsfPMVrKc2FhnSRN2Tc2RJSkLG+2ObF/kozrcHlpgzhNqRXfOjKzGc2z1rvEierv4Koc7Xid1xp/w5C3lyF3hhPV3+Va53nAcKL6D6h5+zHa0AsipjMnUcJm1Du0E9J1ZZ6Ha/+Uy+0fcXXzJQhcxqaOApC1qhwvP4n9E7khvipxb/FJHJEhiRMyaY27y19GCYsR7yAPVH+b2faLSKF4sPS7sFkkU1BMDfczQav5DJYlSVODkOBYFrmMi2sppkfLKNUXim7aZK7zBlV3gmFv1/v18w34GeBjKx6WlORsl04cIQDLmsAxAUm6jPiJyzJSypPz+8vh75kZo5T1kFJQK+Q4dXWR6eESPzo3y6+dPMojh6fphBHTtfJbRg86yQaxCai6M9jSI9ERUqjtXBLJiH+AkpzhldPX+eH1DcZGLnHvsSkWrqwxNFLk4Oinb2lPCEHOHuKe8pfZSpq8+sIb6FyWS+evURzKU3QPstXs0NlaI1fO0m0FZAs+3ctFlsrreDkPnUoKmb1cOjdHbapKtF7g6OhXqK80sAsZ3njuPHvvnSaJUnLlLHErwC1mqA4Xd/pRzPb9F1vRGs24Q6R7SGGRmphQd1nrzVGPlhn1Zig6tff3Bx3wgfOxFQ8AX1nbFkV/NUai1xDCwXDr9gYZ1ybj2kC/Eti+sSEAoiShVszS6PSYrpXJZzxq9o1L2vcZ9KM3NwtJzdtH2dnFj9b+GCUsQHCs9EtkrPLO9556/hJXZtfZN1Pj8rU1Vtda7C7nsW2L2uiNAfuTOL5DJu+zsbhJfanB1lqT1maHfDnL3LkFdh0aJwoTqmNl0iRF2RZpktLcaLMWbLA2X8eyFWefv0htaoh8OYtONI7ncPHHV6kvN3baGBovUxq+vS9SSGY7ZzFoRv29ACx0z+OrHKP+HhaCCwPx+DngYy0eGqi4mW3jX2LJIaLkOrHukWKjtx2GAKlJsIWDEgpL9i+bY1l8/t6DpDolMg2QbTpxiBBy2+EJrWSRvDWOEBJtUizhYtAcLnySdrKCpyoU7Akcmb2REq4Nc/N1fumzdzExVqK+2eHP/8ML3LVnhFzh7VPTe92QNEnJl7Pky1mUpVidW2fywBiWrajtGqJVb+N4NoVqnl6nhxCCsBvS64SkSUIUxtQmq4zNDHPltVkOPLAHN+Myvm+UUq2w04a9LahvYowhiVOydolu2KHij9CJG0Q6wJE+vsqzES6Std5a/AZ8dPjYpqcDvLG5jEBwoFRDoomSy6S6yUrs46kSW3GD2MTkVB4E9NKAkl1hzJ+4pZ1E91jtvY4ni3SSNULdwJE5Eh0S6w4Gg6vyWMIjNTG9tIFvVQjTLTLWEGVnP1l7eKc9bQx/881XiaKEIwfHuXxtjWYz4JF7prFsxdTMWz+1jTG0o4hekvTzTOx3XsZvtjNgFy4tkwYxuw6O42Zc0lSzdn2d2tQQUgrqy1tEvZg0TcnkfYJ2DzfjkEQJrc0O2UKGbiugMlrk7KkLDI1WqYwUyQxZWMJFCYtQd/BUbtvi6h+7X89kOzVfCLQ2CLEdHxJiJ1N3wAfCID393ZBqQ6hjBII4nSdJ19EmpGyPYqkinsqghEKhSNneKkH5vCm4nWaXzeUtxvcP46sKSjh4qkzeHkcJh17awBiDkjaW8BEoerpO1hoBA1k1AkLgqPwt/RLAE48c4vtPn+P7T59nbKTI5x4/TKveQap3jlg8N3+dr52/wNGRYf6T++5/V9fi6blZWibiy/ceujFQBaQVDwQYbbh6Zp7GeotswaM8XGRjqYFlK7Y2WsRRQmWkiOVYdJoBnfWYuL1B1E45NrwfsR22tWTpluNGScoLV+ZxlKLVCylnPTbaAUXfRRtDJZch6zpMVgbWys8aH2vx0Bg6cUQ3ichYYwj6A0WJAlJmSKKEH3/nddYX6hw6uR+MYa3XIGgFjO4Z4cyPznH2uYs8+uRJDj6wl5e+9SqdZpfjn76LoB1w5dU6ylIc/sR+XvzeadIkZffhSXYdnuDFb54iDhMe+fKD2N7tU5FUa77wmWNYSiKlII4SSDXypsQzY/qVuLQxt6R3f3pmD60w4nK9fkubxhhirTE3fb7/XsqR2vAtmbPGGFY6bf7k1Cv8Zw88iG/bjO8dZnS61rcKXIWb9/Bcm24rIJPvn0OvE5Ip+BSH8ihL9adZb/Ms08aQcx02uwHGGDphTBDFuLZFnKQEUZOxcv6tGxjwofGxFg9P2fhWghISgSRKrqBNQNbtp3WvzK3z4jdO9Qf7N07xxX/yBP/fv/oqQxNljj16iF2HJ9Gp4dijh7jw4mXOv3iJ0nCRV394hspICSEFD37hXtqNDmvzGzzxm4/w7FdfZnzfKLlSjjPPnGfp6ir5yq1hXa0NX/v2azzxyEEmxvpO1DhKaTd7uF7fz2CM4ZWlJb5+8QK9JOHukVF+5dAhXMtCCXFbaQFtDM9dv853Ll8m0ZoTk5N8ft8+pBB88+Ilvn/tKo/t3s2vHjoMwKX6Bv/u1CmevX6dbhyzq1jkH9xzL0oI/ub8eV67toylJF/cf4D7j0295/KBrm1xZHIYYyBOUlaabXzbYt/oEK5tkaQa13771b7GGCKdEumkH1ZHbFdf02g0vnKwhMSWg/Uz7ycfa/GQAsquj6MUfTskQckcbM/HlZL4eZ+J/WOUR4pEvRjHs9Fp3zHo+g5hEBJ2Q5StyBQy7Ds+zcj0MIuXlqmMlskWM3SbAaWhAoVqDikFZ545T3uzg+1a6PT2jauFEGQ8h2a7x6jur861XYvGRptiub+95Ea3y//z6il+49gxhrM5/o/nnmWqWOQTU1N3PNf55hb//vTr/JP77sNWij987jn2lMscrtX4hX372Ai6LLfaO5/fXSrz5UOH2egG/PMTJ8k5Dp5l8aO5WZ6fv85/ceIk690u/+7UK0wVC4zm3pt1IIXAtfrX27Mtcp4Dw5Wd6/BuOb25wEqvRWpSbGlhi/7+OFnLYbXXYtQrcm/l9rU5A947H2vxaEUhescnK5Bie/pgNAioTVU58YV7Wb62SmW0RHOjxRO/9QjdZpdWvc3w7iGKtQLXzlxn//EZ6htN5ufXGN87yuh0bcc/4ec99t47jeM7HLh/D9XxMueev8Seu3ZTHS/fsW+OY/Enf/4sE2MllJKMDOU5fnCCbLa/sneh1eLC+gbfuHgJW0rq3S7L7dZbnuu1zQaX63X+6tw5ADaDgLVOhyPDw7iWhWdZBHFy4/hKkXddbCUpui4Zx8EYw+srq9w9Msp0qcREoYCrLOYaW+9ZPH6S92oZtJIeBkPB9ik5GVxlbWe3Goq2T9Ub7On7fvOxFg9HWTue/lQ3MCZGmwBDiDYeRsKhhw9w+OEDSCGIdX9PWSXEzp4qjz55EgGkxlA6OUHQzTM8MUSiNUpKjDH4BZ/Dn9iPNv0pjhCC8b2jb9kvIeD4XVPsuymqooQg7iXY25aHLSUjuRxfOXqEnO2A4G0rcdlKMVko8htHj+34O2rZdzegbg55+ZZFL+mLTKo1idHbltsHQz93JkFg3SI0+/LDaGMYyxSR27VUgRuV6Qezlfedj209D2MMW1EPS0oqXgYpPCxrGEdNIYXPmfoqX509y+sbSyx2m2Rtl2/NX+D1jSWGM3n+8spp3thcZbnbouB4/PW1M7yxuYJn2XSTmO8vXmGhs4WrLF7dWKLs+jy9fI09hcq7erratsVIrUBtKE+lnMOxLLqtHmmSUqrk8G2b06ur1IMuSkrmtrYYLxRwlOJao8HLiwsstppMFUtkHZuS5/HS4gJBkmCMYW5ri12lElIIrm5u8sLCAvWgy3ghT9Z2sJUiShK+c+UKnrLoxjFDmQw51+VvL14AAy8tLtLo9fjSwYPYShLqCFu+/fMoSEOkkDs+Em1SNJpYhwCkJkWbFHgzwU7sOHbDZIEguUo7OgdoevEcSmZR0qXg+BQdH7XdtnjzfwwiPYOQVYRQGN0F3UDIgSXyFrzreh4fW/FIjWEzDAjSmGEvh5QSISyEsBFCcnFrnWQ70auXxIxl8wRJzJnNVSayBS401vjy9BGeW5kl1pq847I7X6YR9bjSrPOl3Yc5u7lKlKas9trszpf58doCd1fH3tG5qLXhb797mvHREp5r0+mGfOsHbzBczpHNe2TzHo5S3DUywkYQcH1ri6Lrsb9aRRvD3127RjeOKbgea90uk4UitUyWYyMjLLVbLLSaDGWy7K1UCJOEp2ZniVNNxrHZ6AZMlUpkHYeMbTOay3Nu7RxSWOypVBnKKHaXhji/sY5rWfzmsWMUfZfZ7jLzwSogSE3KVtwhTCO6aY92EhDrhFgnnG1eo5dGuMpmrdcgMR3q0QI93SHUXXppm81oiWa8QSfZImeXdhbUtaOzhMkSjuyn/sd6E0vmsGQBAGMCTPQymBYIhYleQpgYE70AugEiC3oBTACyCPErkC6BHHnfyjr+HDAoBvROKCHYW6xiDHcczFIIfNWPXHSTmGeWZyk5Xr+YD5CzHbK2gxISz7JY7rYIkhgBeMpivrNFkCTkHZeLW+tc3Fqnk0Tv2K801cwvbnJ1dp3dkxUKeZ/6Zof5xU3Gshm26h1KlSye7zCUzfLkkf7K2Si5SpK8jK0m+NVDeZK0i23tJtUNtD6HNgcpu9f48gGDpfYQJ5dQwsaTbb60v4lj70GbHmm6imOF9KKLgODB8T3cNVTAdaaJkwt0o5c4WP08+8t5Ur2JawvWoxbLvQ16acRCd41hr0xiUo4W9nCxNceu7ChXOov9IshRi0jHxCbheneFg/kJys7wdvatjaN8nMTvTyVNslOYCSDnHMSwD0E/4uSoEWxVuXHxTA/SayD2g+6ArmPSORAWQuYx8WmEtRuTXkeYSYxpQ3wWYR0E8e5KTA64wcdWPIQQKPppjLOtTb63eInf2HMPjSjg63PneHR0hrFMgXQ75Ocqi6vNOp8c38NEtoAtd+FIi4dGdrO7UOa19SU0hslskYxlc6a+wsmRKfYVh9DG0EsTHh+7tQ7om8lmN7+Xas3l2TWuzq0TJymeayGl5KEH9yK7McVydidcezNR/AZS5AnC5xHCx1KjGJPSCb6BEBlSvYExIb77MGF0CimLBOEzGB3g2AcIwhfQpkPGfZxEr9Dt/R1COCg5RKrraN1GChcpC4CiF53CUuOE8Wmy1j240qZk5+ilMTW3SGo0BTvDsFeh7ORpxV3q0RY1t7SzuVVGeeSsPAX71gQwx7m9QJAQAluV73jNbvomqHF0fAmhmmC6aG0hRIJJVxFyCPQmpOsgr/etDjHYvvO98rEVj5tZDVp8fe4sj4/t4Wpzg29cP8cv7jrMWCZPL+07Bz1lMVOoEOsUgJztkhrN0Uq/iM8Dw5OkWuNZNgIYHn/TzdjiRK0MKCAE06B//zuQzoPMYkQRRL+il2NbfOrhA3iOxdFDE+RyLgKBTjVryw3UW9T6NCYlMRsI4SBlFkuNo2QBKYtYagxb7SKM3yDVdYTwSfUmAhepfCw1gTYthHFI9SpC5JAyh61mEMJF6xapXsNSo2BSjIlAKLTZwpKTZJTH/eVDd7y2uzL967M3N8EeM04cpQgpaG112V0cAwNR2PfDWJYk1WYnJC2lwLJvnK8xhvV6G0vJ/m5227kstqXQxqC1RjFFozVFtVIljjdYWUsYHsrSbG0xNDRFFG3QarnkcsPAQzi2R9wW5HNmULzop2QgHvSjCRU3w2Jni8Vuk5qXQ2P4weJlnluZBQGPje7h4dFpnlm+xhubK3SSiJLj8zv77+Pi1jpfnzuLxnC4NMIv7tqLlZxGqFHQ64ADvDllsTB6tX9UkwApyGGE8yBsm+NCCE7cN7NTEyNOUqQQ9IKYbP7OkQ0pMkhZwLEPbf/tATZ5/8to00KpUZSqYkyM7e4iTVeRsgRGI6SPUlUAUr2JJUdQ/i9iTIIUHr57EiEyKFnFdx9GyjxZ9wm0aWGpMZbbbb579TLxHXJWbiaPTW1TMjpSohdECFGnF0SEYYKlJNXhPGsrTdrNACkFhVKW+x/ai3XTlhDNVo92J+Ta3DpCCkoFn2arRy7rksk47N8zwlp9nV7U4/pCyNhoiTjNst5ISEyP+iZok6em4er1kFwGDAHHj+1CyvceNeonqiVYUqLEtpgZjdhOWvt5TE4biMc2o5k8s+1NtsIeNT/LetDmm/Pn+c+PPIw2hj86+xyHysOs9zqs9zr886OPYEmJwfCXV1/jS7uPsjtf5g9ff5qDpSqHcnnAgNrVr1KWzgEgZAaEhxB5jOkicEBmgVsddi+dmmX3VJXl1S2+83dneewT+zl53wzQDz8ubDXZDAKUFMxUKnju/QiRQYpbK7wrVUHR9wtINbLzvrR233oBRH+qoGR/CiFvKobkyH07r23rxqJART9H5Wpjif/l6afoxvHbXuNjpRr/8p7HgL61kS/6WJZkdXmFciXLxloLYwzlob4V5ro2rbhFM9xkV2Ya6PuEAGZ2D7G61sS2FbsmKnieTTbjYluKJNUEvZh8ziMME9rdkCTVKCWxLEWp6BPHKcqWFIs+rU6PIImRVr9mq3oPG3+FOuYHq68w5le5p7SPhWCN01tXGHHL3Fs+8HMZKR6IxzbDfp7Z1iYFxyNvu7TjCEtIRjN59PY8ux2HCCHYVxyi7PZ3VduKAoIkZipXoupmKDoeG2EPSrduB7naq/Dq8vJ2W+OUPI97R4uE6TVskyVzk3hobThzYZHhWoFnX7rCww/u5dUz89x/925sW7He6fDXZ8/SjiJyjkPR85gs3jnZ7GaM0fSiH6N1g4z3aUBgTAch/H4Y02ii+Cy2vXfbcnl3CMR2iv/bL4POZBz2HhwlY9kkSYplKVKtcT2bTNalUsujlCTdHugCmO1d41TjZaYyuxEI9u+5sfq4O13DsS0s69bB/sA9PyGMwO7JvmWVrXpc3lpnvFREOxKVsxgbKXPwxaVHAAAgAElEQVSxvc6EKe6sFSo4LiX3rcsfGGOYD1a52Jpn1KtwuDDNVGaYZtzBGENqUmKd0NMxP1k4+ueFgXhsU3Bc5tqbTGT7N1DVy6CE5KW1ebTR2FLt1P4QN5mhGcthJJPnuZVZpvNl1nsdprKl28zUU8vL/Dff/Dpx2veZ3DM6yh/+4v3APKFwyNi7efMGE6K/5uOZFy+Ty7gc2DvC6bMLOyKWas1MpUI3igjTlN5NmaG3Ykh1kzi5gpRlbLULS43Sjl4iw6fQuslW58/wnHvwnONo0yXRa9hmD6neBAxS5kjSVaQs9NsReWxr5pbQ5oFqlf/pM59lI+iyGfRo9HpshT2uNRq8trK802+EQCrZ92NYcLV9meXeEpnhLBOFY9hScb07y3xwnbJTYX/uAADdtMvLmy+ihOJw4Sie9LjSudSv8bq1yIg3yp7sPrbiLS62z2GM4UD+EEX71t/BGMN8u8Ebm6usBm22oh7X2w3uGRonTBOCJGY1aNOJI8quz/HaraUXbibSMc+sn+FE5TBl5/ZIjSNtKk6B01tXuKe0j6z181clfiAeQM3LIRCM+nnGMgUWu03GMgV+98D9fGfhAhLJPzxwP75lM5ktYugXUJb0a5v+x/vu41vz5/nhUp2v7LmLyVyRWKc7//5mklOqNen2QEq0xlOjZJ0h4nSLm59MQggee2g/L/z4Go+c2ItAcOTg+M52kEPZLA/tmqLeDbi+1WCiWLjjeRlA6zZxskAYf4ty/p8hhA/bBZ4Npi8SwqI/bZL0olfw7LtJ9Tq9+DSudYgouYjvniBJl+hF36CU+6dY6kb2azWT4ZcOHOy3+abAGcP3r17hv/z614i2BfNm6tEGT63/kAcqJ/oOYaOZ787xo/WnuLd0H5fbF2nFLWruMOvhGncX72Wue41mvMXjtU/xUv0FHOlwIH8IWzqEOuS7q99i3BsnMSnfXvkGX574Cs5PRFPGMgVqUzmaUQ+4UY7SEhK1nTBY9TKUXJ8kTgnDmEzWve1hoDEYo8nbPq5y+tfS9DNuE5Py/MYbjHjl7Xolb+8L+qgyEA9gplBhpnAjX+BoZRRtDBdbyxR8yUyuRi2T5VuLZ2hEXZ4YPcQPls9xcmgPL9dnOVgYpZqx8R1D1fephx1+tHqRUCd8ceIuCvbt5q82PTrxFRKzhTbJT1gegt2T1R1T2xjDiePTOzsldKKI640t7hodIUoTFppNCp5LyfNu3bbRQC86hTFhP4HKRNz8kytZxFIjONZ+hPBRwkGKHGCwrF3o3lME+nl892F60Wm0bm+31XvLa/nmILOEQEn5lsZ6zsoz4o1ysXWeA/lDONJmtnuNXZndHC4cJWvleHbjaapOlTFvgqPFuyg7FZ5a+0FfuIXkWPEe9uX6+8us9Va50r5EahIwfWsl0iGOdG7p23CmbyWMZ28V3NHM7Wtzrl1c4YUfnuMr//gxlLr1TDzpcHdpH8+un2EyM8x0dpS57gq9NGItbDDh19iMWuzJjb9j1u1HlZ/Ps3of6KURr21e59d23U/OcgnSiJzlMttZZ7azzmLQIDGalWCL3dkqrbhH0cmQtz0SnVKwfV7ZnGOt17qjeCjh4VtTlLyDJLrNzkbWd6jsFsUp33nqHJ97/DCOY9EOIy5tbHB0ZJir9U1mGw0yvsWuWpGpbIluEhHqhJzlMOZ0EcQoWQIMYfwqSbpEGL+Bax9FySrd3vfIep8jThe2rYtTZLzHsK0Zwvg1bGs3UXweY0KULCLE7XkmPy2OdHhi+LNsRht8e+Wb5KwcGZVlLVxFo2knLTzpIYQgSDvEOqaTdLCls11xVmLJG+tbbGlTdio8XH2Mgl3EoMmoO6egG2NIkpTGRgetNeVqDqMN4bYTNwoTwl5MHCVsbXaor7VQlqRUySEE9IKY5maHEbvC/pFJBIJ2q8cj3l30gpiqzDNWqZKmmka9Q3s9wKoqlOqvddqqdwh7Mflihkzudqvmo8JAPN4CKSRKSBaDBkNujmvtvmD4ytl2fwmuttdZ6TWRQnB/dZpX6nOcqs/RS+N+gR5pvY0DURCl63RiTWq6OKoKCM6cX6RWzXN1bp2l5S0QEMUJ1xc2+cxj/TBsNZshTFP++MWXcZTit+65m9Vei0utDc5sLmNJSTMKGfIyjGefYCk4hy0PU5IVPPte4mgfa2swOmzYTB4jSpuMWA6YUdrmt/BlkXacYuSDLIczWC7Y9mcJky0Kfg6jXVKhSVPNVjOgUsrS7oTksm6/cpqS7zggNqM6T6//HWGSkMQSZXwmvb1cbc/y76/9Bb005LNjT4AAISTfWv46zWSLk5WHkULiWxksceP2LdhF7irew9PrP8SWDuPeOCerD9/x2L0g4q/+9Fka9Q6Oa/HJL9xFEEScf22eJ3/vES6fXeSNU3Pcc2IP1y6u8s2/fJnNtRaPfv4Ydz84w4++c4bF2Q22Njs8+PhBDt09yb/+V99gaKRI0AkZHi/zpd8+ydPfOsPFNxZQSjI6VeHzv3Y/p1++xrPfO0u24DE2WeHTX7r3Nqvmo8JAPG7iWqvOy2vzfGHqIBnL4XPjRznfXEYiOFAYJdIJrrKZzg4x4Ze52l7j5NAe8rbHSrCKNmALlyOVcc41lzhYLODI6I7WBICtyvTSN/CtMd60PHzPQUrBqdPXmRwrk/Edojhh2WrufM9Vil8/dpRWGKJkPz1+l13Gt22ylkMvTXCkQgmJLQ22GiJMAwwKpSrMzwc0trq4TperQRvfcllsr1LLZFlsK1IsTq9dJWs7rAUdlrtmOy3fcCifZ252iWzGJYoT5q7X2TtTo7e9R20YxuybGX7bAWGMoeJU+fTwZ3nh+hyZRHBusYMUXWrqODEBjSChpEbxHclvTP02sU4QCHJWf9rxydqnb5mSSCF5sHKSI4WjxCYhq7I7+9r8JFfPL1Nfa/GP/8UvYLv9CvqvvXiVoNvPxYnjlKDTX6hXqeX5yj96lCvnl3jqm6c5dt9uDt09Rbma48Lpec6+MsuBoxMEnYjPP3k/Skn+9P/6HquLDV557jK/9199Ftez+df/+zc5/om9tJsBypKc/ORBJmdqH+nEtI+1eKz3Oqx0WxjgQHGIUT9PPewSpAmesulECSUrz1SmSiMKODm0l04cYTD4SpJXOXZlS+Qsj6zKkJVZWlHIWKZEybW50HqdrXiRCcbuePworWMrcUtuxt7pGlobnnjkIDO7hnAciyhOcB0bKQXdKCbWKc1eSGo0V+p1pool9g9V2ZW7PVzbTdq0kyYVZwiJpNXuEfQigl6M41iUTX8diaMUUgiG/AydOMK3bHzbZljkcJWi6HpshT2EFMRxSrMV0G6HuG6/XGAUpURRwvBQ/m0HhDGG86vrrLc73Ds5zt7SJEEUUw8CCq5LN46pOjlM0kKK/nTExsb/ifytrJW9pc0+gqyV33711vSCiEzOw/VvKg4tbrQTRwla91/7GQfbVmSyLkmcsr7S5C//7dM88NgBMjmPbrsvMrmCT67Qd7IKKYiiBAR4GQfHsVBKEoUxJz55kGI5y3PfP4f//BV+7R8+gu18NIfhR7PXPyXGGIwJEMK7JcR4an2BpW4TSyp6aczx6gTWdpZhagz1sMvpzWU2el309t9XW3Wmc2V+tHKNqpvhudVZTg7v4lxjFYEgY/WfhkooPNU3rd/qCSiFQ6K7aBPe+r4UHNg7QpJqwigBY3jogT3YlmK91WKh2eLl+QUqGZ+lVouR7UI82hgubmyw2QuA/gAq5zSWsGglTTQay5JEcYpSgm4vYrpcJmvZsB0Zurq5yXKnTc5yEEZwsDzEeD6/EzHCwN1HJ1FKkiQpgn7FtThJsW0L23rnKUtqDL0kIU5TdpdLO7/Rzd87PFJ7y9XHb1Zc3wgCZhsNrmzWud7coh4ExGmKoxQlz2eiUGBvucLeSoWK7++0NzVT44dff53vffVVcnmPXXuHKVVyLM/XefGpC7zy7GVsp38fLM7Vef6H57h6YYXd+4bRWhMEEY5rs7ne4ibduoViOUttpMAPv/46nmdj2Yqh0RJXzi0TdCMmZ2qcPTVHmmjsj+jymp9r8TAmIox+jJRFtG6i1Ahpuo4QEin70ZXpfAVbKuphcMt313ptzjVWsaWiFYecqE3xjfnzCODB2hRrQZtduTIVN0MjDJjKlchZLovd/vQiNSlB0mbIHb2jdMS6RSe+hm/HJLrDzYlExhjeOL/Et35whmQ7o3LXRIUnf/k+xgsFyr7P/mqFku+z2m7vZETGacofvvAc371yBeiHIf/HzzzO8ckCjnSRSHxPMTFWYm6+jufZnN1coez67Cn0fS5/fvp1/vS1V4F+mcZ/8YmH+f37H+h3+s3cFr9/t7s3PTFd9905UXtxf4vPnNuvjr4jED8pFHdcv2NohiGnlpf49pXLvLS4wGKrRTeOb+SS3NwEkLFtpktlfvnAQZ48fIShTIah0SK/9c8+xfnX5+l1I1zPZmS8xBd//UHWlrZ49HNHsF2b2miR3/z9x+m0euw7PMbdD+7B9Wx+8T86wdpyg5OfPIRlKzI5lyd+6R5cz8ayUz71xf1k84Zf+Z3jnH75MmmS8pV/dB+ZrCaTF8zPrqOUw5O/dxzHi9A6Qev69vKB9MZ9oLcQsgRohMj8zJUN+MiJhzGGNOlXAL950dSdP5uSpisYkwAxabqM1h1AY1uH0FznhbXrlByfT4/v5VxjleVuk1Mbi+zJV4h0iqcsio7HaKZAL4nZWxhi2M9xf22KVtyjkiuzK1fm2/MXAHZCvgKBLR2CtLOzcdTNSGHhqDKYFlL0n/xvorXZzizdx+6pfnuOY2Ftr3V5s2o69AXi5vBslKaE24v5Ei1pxi02og6u9Bj2xlEoNhtdMr6DpSRCwHLQYneuv79som98X8DOcW6mG0ZcWFjHdyxyvksln6HRDsh6DrNrDYbyGUbfouK5pSSebTHhFN62Apk2ZnvbihsDph4E/Hff/y5/N3vtHVPhoS/HnTjmzNoq5zfWeWFhnv/+U08wVSgyNlVhbOpGeN4YQy7vkc26VIbzWLbFxsoW1aE8u/cOb39G0252GZ+qkMu5zBy6MR2958Se7SpnFzh6n0OcfBfHtbjvERshbKR0CHsvMjyeZ3hcIwSk6YuEPYWQJYxpAUeJ49Pb640KGNNFqUmS5BKu+yjqpuUFPwt85MQD4PyPr9KstxmbrvXV3rFIt+eaUklqE28W0JUoNYlt78HoHkL6YOLt6YuHJRQna7u4d2icrOXQTWL+2eGHsKQgZ7n89r7j/eLDUrHea+NbNvcOjWMJyRenDtGOQzxl4SqL39x7L4YbjkUlLLJWYbuQze0Cp4SPoyoU3Qmcm2tS0M9HKBd9slmHcinbz2qVb+4mpzm/vs7V+ib3T0xwammJw8M1DrhDd7xWWZVjKjOCEhZyOwU+l3O5NrtOFCfbqeXip9pda6PV5dLSOvfvm+TVq0scmhzm1auLKCnZVSvtiNydsKSkEfTAgBaGRhz0643CzhYSYZKgZL/soy0VrlIESdyvgi7lLcJhyX6N1Vo2S9nz8bbLJC632yy2moTbCWqJ1vzg2lXKz/v8D098hox9u6W0triJ7VhcOj2Pn3XR2tDc7FAoZ7EdxcyhMc6/ep3x3VXewgeOEAWUqpLqDUBjTBsphrCsCYxuINUQOl0HFEoNI0QOgYUxWfR2yF6qGlIWMCbaFp4hIEOnE5LJOLcnrGm9Pf35YIfzR1I8pBToRLN6fYNiNc/QeJlms92fN0uxIx7g4DrHAcHCwgbNrRZKSSpDDtUaHCzVcKQiZ/cdltntAj9vkpf99/v+joCHRqYZ8fvzf0uIW9Y+3Pw9YwzNuEGiIxKT3Lb37Y3PabbC18nYU+Ts/Tf/C9oY/u8/+xEjtQJSip1pixCCtXaHixsbxFpTcF0mCnfOMAXopm0WgxBL2BTtMgpFHKWkqen7UwSEaXpHs/+tMAbqrS7rzQ6tIOTFi9fZbAeUcz6Hp4Zx7be/raQQLGw16cmYehQggL2lKi+tzFN2fUazeapehs0wYCvs9YsstxrcNzzOk4eP8PTcLDnH4cHxCR7bPc3hoRq1bAbfslFS9Jf1hz1eXFjgj15+iTNrq9tXFb5z5TJPHj7CQ5NTREHE2ecv0txos+/4NBPTNUrVHLZjkcl5NNZblIZy+BkH13PI5LydvIxeNyQMIl761qvc9eghCtW+pWVZewCB6z7SLzaEQIg8IHDch/oXwNpHP8s3pZ/ZKzBGo7VGqoP9LBYpSdMUIcCy9hOGhitXVjhyZAIp2XHo9vf0Sbn8xgK1sRLVkcIte/v8ffKRFI8D981gtNkWC0CkFKq57bqVNz4ntjexTpKUv/g3T5PEKbmiz8pig1/5rZPcd3LPu0rQkUJwpPzTmYw5q+9nSEz0tg5TQ7rt87i13599/DCPnuyvZjX098VVql+f85N7ZjgxNUnR895xyZWvspSdAr7KIBDEScr4WAnLUriOjUgEBcf7qfZdUVJw1/QYD+ybpBWEHJ4a4dTlBYQUPH9+jn3jQ2+7UdObfpxUG8qux0SuyJCf7U8dbIdW3A+ZWkIynu0XZHJkpS8s43n+5898jv3VKlOFIpa8g4NWgW/bfOnAQfaUy/zXX/9brjY2AWiGIU/NznJyfJJv/+lTzJ1bYProJH/+v/4Vv/PfPomXdThy33Q/+nJgpP/bbTevteGBxw/t/J3GKZP7x3D9mx8cfXeN1hIpizuOZqMNiBt97d+//UEuBFy4tMZrr11HKcHQUJ6Z6RqvvjaHZSkee/QA1+frXL6yyqFD4zQaXZ57/hIGOPHgHiqlLGEQM3dplfJQng9IOz6a4pHQIhURmhSFQzO6TtGZJtUhIFCJRWJClHDQJsahgjHwC796H8eO7+K7X3uVp7/zBvc+OEPYi3j1xatsrLXYc3CUg0fGaW4FnDs9zwMP78e2FWsrW1y5sMIDD+2l24l45YUrtLYCDh4dZ8/B0duUXoj+vqsr4TyWsCjalTuehzYRlsyQ6BY3O0yFEJRLN0KRcZzy/I+vcvK+GaStiNKU61tbXKlvcm5tjV8+dJCCd+eFV0H6/7P3nkGS3deV5+95k95VVZav7mrv0QAahCNIEARI0IsaaihS5M5IWm2MYmciFBs7u7HzZWYjNnZjdhQaxeyEVpqVNCNBngIdQBIgQcK7BtDem/K+0mc+/98PLzu7C90NgAagENSJqKjKrMyXL1/mu+/+7z33nBZznQqWYpPXS/h+yPJKnXbHJ+Hp1AOHvGGjvAM/2yVnmUbQoJToZ08iVn+/bcsIpqZy585xDFVhpd4iYb51+yBp6IzkhrANDUNReh2ubbmr8zKBHyBZaRT1ap1HRHFm+dHNk+8o6EuSxM5SH5/dsYPffeH53tLszNoq1VqTky+c4Z/+688ytGWAxlqTky+eQ3vtIuVNA2zeN8bz33iVgfESQ5Nlnnv0ZebOL9I3WuTez9+Bqin88K9fYPr0HL/0Lx/GsA18N+AHf/Esmq4yc3aB2x/az7bbNnP4yaOcfuk8yazNvZ//AJlSmh/+5XMsTq3QqrXZcmCC1NYhUikT3w+oVFrMzVeQJIlm02FxscboSIGjR2cQQnD6zDyD5Ry6oXLixBx33jFJGEY4bS/2AXobk6yfFf5hlW/fISruRZywRtW7QMOfJRQeVfcCa+5pVp2TeFGThfarLDtHCYTDtdOqV1S1NU0hDCIefeRFTh2dIZ21efzvDnP4xQtIksRTjx9jab6CEIIXf3iGy+eX8P2Qv/z/nmHm8iqJlMHX/vwFTh+buyEJTEKi4Vdph1ep52+GIsfLHkMp9h4zt1Ch1uhwcWqV145O8drRKV49cpkjJ2YIu8XLmuNwcmmZE0tLJHWdhcbN/VpMxWbIGiWppONWsqWTSdvs2DpAXzGNBDih3xvYeyuERNSDBi4dkmacvqesWEMjY5uYusZwMUPafmvKtR9FzNcaSEJClRWEEHRaLp2Wi+f6eK7PwtQasxeXaTcdmrU2Tttjaa5C4Ic0ax18L6BZ6+C5MY38ihrZmyFLErcNDm2ocax32tQbbaJIkMonkGWZ/ECW9cUKU6fmqCxVAZg5Pcf6YpXDTxzh4tEpDty/mwtHLnP4iaNousbtD+2nvtrAacWzPlEY8sp330BWZB748r0Mby0zdXKWl771Gh/6wp0UBvM89l++jwR84JO38qEv3IkQgv6xmCxmmhqWFdc00imLXNbm9ls3MTCQodVyabddGg0H09Sp1dtUKi1MM+b/RJEgW0jesEv1buF9mXkktTKR8Emo/aiyRctdx9IyGEq2t0TIGZvQ5RS2WoQoXrp87+uv89LTZ1lZqvHZL95Bo9bm3Kl5fut/+hh9Axl0XeWlp89y4NBmJrb0c+zwFPliitPHZ/nMF+9gdbnOwuw6/+rffIpUxsL3Ql565gw79l7vRCZJEiWjjBN1uJnKhReuo8htXG8VQylhqCUWluv0R4LHnjyGqsg9ElajeXUYrWDbqLLClmIRWZJumnUAeJFD3Y/QZKPX9alUW0zNrDG5JfY6afruDTtC10IgMGSdklHssTxj9SwfWZLj1nToUvHqDFolFOnmV78wilBlCTcIsHUNt+Nx4pWLDI4Xqa4243mTUhqn4/DqD0/RablsPzBGZbVJs9ZmcXqNRNrCc31UVSGVSyCiiG37r9fxAMhZFram0eoWWr0whC4DNvBChBA4HQ/DMnC6zFIhRFxXEHD55CxL06u89uQxFFVBNzUkWcJKWahvKlIm0jY779xG/2hcwD7x/BlKIwWGtw2i2waHnziK5/rols7hJ46y+67t7PzAVlZWG3hdcloQRBSLSc6cWYhV5GSJldUGQ0N5lpfr7NgxyJkzC4RhxM4dsWxAp+XgOh7vZTf3fRc8mg2H6qqCaVuIKDZGrlXTWLZGNp9DAJmuEtUVBFH8AWzeVmbb7iEGBrPkiilWFmtA3AaVJAnL1nHdWLzlwKFNPP53hxkczaOoCiPjRRbmKj1dTYjZh07b761zr0AIwZq7RCACIhHd9MTUlTya7CGUCFmOA8DBvaNEkeDg3lH27R7BMjVcL+C7T53ovSdJkpgsFnraIGnDuOH2r+xLEPm0gxYr7iID5hCKIlNvdLhYXUNWZcaSWfS3mfys+XWWnGXaYRtN0kioNgLB2cYUndAhqSZIqhaXWnOsezVs1brp+5YliYV6g02FK8s5qTvDItFqdPDcAMPSadU7WAkT09IJg4hWvUMybdE/kqdZi3k5iqawtlgjkbp5AI29XK45qwRYSYt8f5YjPzrBzju2cvHIFB/9tQ9y4oUzrM6ts75YZfbsPFsOTDC4qZ8ojPj4P7+fIAhJ5RJEUYTn+IRB2PsNIMvyBoZtcSjP6z84ztpChamTs6QLSVRV4flvvILnBuy7bxeBH9LXl74uW7v99s29v3ftHGLXzqv6IgeuCZRhEFIeKbC2XCcKxRU1y3cd76vgIYRg9uIKc1OrGJZObb1FsT9No9ohlbWYvrCCJMG9D+257rmyLDO5fYBd+0d796WzNumszYk3ptm5d4Sjhy8zsaUfVVEY21QCCZ785hH2HBzDMDUKpbj/f+b4HCMTRU68Ps3kjvINM8WUliXy17GV5E0LpkFYJ4jm0ZUcqhTXOKJIEIYRB/aOxi51fogkSXzorm1o3aAVCUHTdWn7PmdWViklEiT0G9cZMlqePdm4k3NlP1RVwTBUCnoCl5DYGumtS69pLYUTOqSiZC/zCEWEE8UmTp3QQZYkdFlDkeK5mribcD1arhd3LIIAS9cwLI3dt21GkiBXSvXaoJ7rY1g6crfoWBrMxZRyOZYL9L0ARVdYr7dohj7HlpdoeT6dwMcNQrwwwAvDHpHsWqi6wsO/+RG+88dP8ezfv0J5Ux+bD4yTyNp854+fYnl6laEtZdKFJDvv3Er9z5o88n9/nVTK5qGv3ke73uEHf/EsTsvlyUee4eDH97HzwCRDW8uouooXBeiyyvjuUXZ+YCuP/v530C2Nh/67D+F7AadeOockSXzt9x5j874x7vrMbdcFDyE8wqiB2tWXvYIwrCDJVyUno0iwulTD7fi06p0bquu/G3hfBQ+ITxzD0in2ZxgaLZDO2XTaHqapUau00Y2Nb+nKOrh/KIuV2HiFNi2Nz3zxEN/7+hscfuECfQNpPvLwPiRZwrR0bjm0mWd/cJJ9t8aWCam0xWe+eIgffPsoTz8RMjxW4M4Pbb/uQ49buSoLnWnSWpaCceNOjaZkUeQBdDnLlRP3taPTfP07b5BOmti2garGmhiDA1k+dv9uZFVBlWUG02mCKGS908ENbqYk1rWYeNMSQlEk9uwcxrJ1ziyu4DUr9FnJHrX+ZrjUmiIiIqPHOqeqpHAguwOAda9GVk8xmRzpdigk5lYv33A7Hd+n4bhoXT5Ip+1x7vgc2UKCeqVNImWi6gozF1YY39LP+mqDiS0DpLKxnWYYRcw1Grw8N8uLszOcX19jpdWm5Xt43bbzFZJZvPK4PgOKQoGqqXz+Xz3M+mKVv/3db7F0eZmRbYP8s3/3KzR8h3bkk9EtmpHHR379PmZqawwms7SEh6bo3Pvr9/BB7qUVeISKoC553P3rdyMbGkudOiUzRS3scPtnb2Xyo9so2CnMbu3lK//2AcKwhar0I6Q1wmgZgY2EjhBtkFQ8/zxBuIhl3EokOmhKmSBcoeO+jKkfAElGkVJEUQJFVTAs3lOux/sueGzaNsDIRIlU2uoRp66gVI7nJCLh4YctJEkljJp4YYXPfmkfshoRRE0i4aNIJoKQvjGHr/z2nQS+QDVCFDkgjDogydx1/w5uv2crpqlRrbZxHJ/B0QJf+RcfxvdDLFtHURR8P143Ly/XyeUSJBIGEjJD1jgZLd8jZ70ZbriCJqobSGIDfWl2bCmzXo3bt+mUxUApzfhoodfV8YKQ0zdrmdgAACAASURBVCsrOH5AXyLB8E2UxG6GIIi4NLVKfiiJEwb4UdjNFG4OCQlD1mmHnQ3eKVIIrUaHpGoR+AGtWgdVVzETN19KBVGErl6VK3A7PtW1Bo1am3bTxbQ0dEPDThp4rs/izDqlgQyJtMlqu81fnTjGo6dPMV2r3ZABu3G/uaG2ahiELF9epjiUZ2zXCJ/7lw9jJuKlj6qrXGysse62SWsmoYjYnx9hTXQwAp1zjWWM7jJvd26Q0PUQwBuVGVRJZlwusuI0qHod1twmac1i2WnwAdvGknSECPDF0yhaEV0v4niXaXTOoavjsYaKd7y78zJCePjBLB3vMIa2nTBcJojWcfwjhOEKSBoJ/ZeJoogoEpj2ezco874KHnFdwuAt/JwB8MI1mt5ZQCGI6ggRoMgL6FGRplMhjFoochJDKRJELTTFwZWXcJ01ZEnHVPvR5CxJfUtP9v/y5RXOnVtkaDAXWwVoCqoqk88nWVysoqoKxWIqVvHunjjNoIaEhKXceIc1OYNgkTBq9+4bHszxuU8cYG29xcWpVU6dnefI8Rl27xhidChPIGKexW3DQ1eFmT3vHSt+h2FEu+ORTBioQibdJciFXam8m5VNJST6zT4WnEW86KrzXaPS4vThS+imhogEvhfgtl0GN/fDTWKahIQqSz2+h6YrlEcLDAzn8b0gFkYOI3RDRUSCdDZBKmszXavxb3/0FM9MT20IGoai0p9MMJhK059MkjNNkl27TEvVqDoO/+X1wzS9q/u9tlChttYk050C3vwm0eQgiuUEs7qFrRookowb+rhRwHiygBP6tAOPpu/ihkHvdk63EULQClwyWjyxnNNt6n4HN7qSIUoY+k467mvIchI/nEeINkL4BOECYbSGJCXQlGH8YBrXPwEiJIqqSJKJLCW7YxYyujpO4MfHqNNyfyym8E+L91XwmG3WEAhGktnr/tfyPRRJwlQ1ZMlCliwU2USWdCLhoStZDLWMGiaIRFwU1eQ0flRDkWw0JY8m55AkFT+q9daTl+rr2KpGOmWRTlv4QRzhS8UUjabD2mozbq2lYzl/1/WJRMThlUUavs4Dw0PcrJYQRi1CKhBASt8OxDoef/ONw8iyRCGXZKAvzQP37WRoIIssS8zX68zXG7wyO0um22Vxg4CJXI67J8bf0XEUImaXDtk5DmXGCEVEQtWJhLip94pAEIgQXdaxlKvFSUVVKI8VyfZlgHjuSFZkDFNjZmX++s/Ji9vCTddD7Qa8RMpkcufQW47y112Xf//8s/zw8qXeCWKpGh+emODT23ewo1giZ1noioIibfRJOb26wp8dPUKTq8EjnU+S2W1sUGu/FoN2hm2Z/g0qcHf1TaJIUo9QFwrRy2oiEZHWTcYSBRRJZtDOoskyE6kiiiQznMihbsjuFEx9N5o6joQC7ERVBvCDy7idXTgdi0gsMNB/C0guUeSia+P4wSyyUsLQx/CDGWQ5y/T5ddpNh/Jo4S1HA37WeN8EDyfwudxYZySZJRQR52qrND2PrGEy0HWtT2gadw9MkNRsLjcHsVWdyUyBmWaNRsfFUgRZY4C5Vp0gCtmR6yMkw9H1dfqtIcZSOeZbdaabNuOpLAKP6WaFbdk+xsaLqEWNmWaVzakchqrSbgo8z2NvYZiO73OutoJiapSRGEvl+O7MWQQ39sKFuNtiabcTCY8rASabsbntwHhP7BjAcXyq9Q5CwEgmg6mqpE2DHaWYVNX0PL5//sJNRYeuxRWVL9cNiIToUfMhnpFoeO4NnyfoCiaLkFBcLYQmszaJjH3jE3/l+rtUOT75UobR6xa9mRl83WsLwfMz0/zg0sVe4DBVlf/x0B18ed8+LFWLRamj6IbHOj4sG4+NbuqsX66gGSpREG4IHmG4TL82g6bt7wWhILiILCTafhlVkfHDiLbrYRs61VaHjG2yKVFCkePApXaXqlcOi9ytOwkh8Nx4MFPpfsYyedpNhwCwE7dTr65w9Mg0hcIY9YqNoiSp1dqkUg5CxMvXnbuKWN1aWnm0g/Re0UqvwfsmeCiyzLrbRiAYsFN8/dIJ7ugf48XlKb6weR9+FJLUkpiqxvfnzrHqtFhzOnxmfBdPzp1jMl1gMlPk2Poil+rrpHQDNwwZSqRZc9o8u3iZL04e4FtTJ7mlNIxEPHS10G6Q0S0Sqs735s+xK9fPE/PnGEvlOFNdYcBO4azNsi3bR0v4vDRziqFUBl1WuLn8bwwvqmEIMNWB3n0To0XGRwoE4touSIyQCJDJWgZZy+x5vlqaxgcnJmKl9g2vIG5MnJIlavVOTJm+Bm4YstpuXfd4iENbGAXk9NyGtufbnfhvhqlp3D42hOMHZKx3ZkcQCsGPLl+ic01h+NDQMJ/evp3FZpz5abJMp6sRkjMt6p6Drqj0JRJ4YYj/ptqIEIJGpUX/WBHtTXICgX+KTvuvyOR+lytK857zNH6ocmblXlRZYbXRImOb+GFE03FRZZnbJ0dI2yZHX7zA+ROzaIbGxLYBtu4d7RXyo1Dw2CMvsPv2TWzZHfODWg2Hbz3yAuePzfKV33kI01S7XTZYXq6jqQq5fIJOxyOKRC9burKk1jSF2lqLGi1K5SzGe5R9vG+ChyYrFMxEXEUHcobFLcUhLtTXkCWZopVgOJEhpRkstBskVJ2duT6Smo6laOwrDtJnJZluVtiR68NSNRbbDWaXayQ1HTcIqHvxENaB4iBy1yYwb8R8hk7oI0uwt1Dm2PoiXhiyPdtHv5XkXH2VV5Zn0BT5hl/Um0GVbPxoESnUsK9RxmoGHS625rEUnYrXoO7HJ7SlGBiKRidwSWo2JSPLsNWHKsvkbAsvDHtLAYBIgHOjTowAw1BxXJ/UNfyISqfD/FuwVW3VZt2rUNBvTLd/p0gZBpaqbcgS3srAuuP7XKpWe7cl4K7RMWxNZ7peQwJSuoEfRRiKQsNzmWs0GEymMBSVhWaDzptH+CXQuyI98etHCFHrpikBdIcZ4/3yMe1PYwiVLYoCksRYKdstvMedHVmWsY24pfzq06dxOz6bdw3x2F+8yLljs3zyy3ehqPGw2+0f2kG2eNXrJZmx+NSX7+T3/83f4XZ8RkfyPPDR3bHFqOP3xISEEDGPQwJVUfC9AFmRUVQlFmguJN9TWcP3TfBY7bQ4XVkmEoLxVI6imUCRJAqGjSpJjCQyvLQ8Q1IzuHtgnJeXZ2IegarFBk7EBTpb1TEUFUWSe85wdc+lYNqUrCQpzeCRs6+zvzhIyUpyvrbKUqfBUCJDv5Xi7y8dZySZYcBOEYoIU431PmquQ8P3KFoJIhHx+uo8C+06J9eX2J0fuO79CAReuIapJQij66/2BT0eCBNCYCkmXuTRCV00WcVWLWzFpGTkNpxsiiSRNswNrzFVq16n0pVOmfhBiHkNH0AIwfHlJZaazZt+BlWvhiapBFG85Ln2a/pOFcCjSHBpcZ3lWpO+bLLL4YBGxyWXtBBCYOoaHc9nsJBGU5Su8tjVk1+WJIq2TVLXOdBf7r12JERPXmAim0OW420/PzN9feYRCXzXR1EUhAhxncfptP8eWU4RT22I7nFp0W79CYF/DMN8mFzyU937Q5z2t/G8V1AAEdRxxX7s5G8iSRJb9gxz/2cPsue2Tfznf/cot35wO4X+DI//5YtcPD3P5/7ZvWzukr7icQm1100zDI3ADfj2X7yI6/hx4bgbXD/z1Xuorjb4sz9+hmatTSJt8cDnbqVZj8l1Q+M3lmZ4N/C+CR4Zw+Tzm/cCYCkaD4/tQJFkHhrdhiYr7CsOMp7Kk9R0VCnD2lqHc/OrnJPWuL00yjMnL7NQbXBwYohIFZyYX6CQTPDA5i1878Q58lGCuZUadxcneOLUOU7VVhjZk+VXtxwASSKh6jw4sg0n9LEUDdFdUMhIDCeySBK4YYAmK6iSzAf6x7i9b2Sjj8qbEE/UtrsCyFeRUC3srsPYgJnvkrBcOqFLQc/0lisigmbLRdMUDD0W8h3Pbiwmvzo/T911e8VVgFbbQ9eUnp+rEIKm5/Ho6VM9/Ys3Q0LCVEzWvXUaKwrD2fiKXWl06Mslcbx4tiRpGWSS5k2Diev7TC1XWK21mF+tkzB1EpYeBw1NpeV4aKrCeqNN0tQppBO9QvgVREJQc5xYa+UtBIWEEBxbWeIHly5e978ojEjlkgR+QBQt0W79GYnk/4Cq7aDV+I9EUTyFK0k2tv1Fms3fIwxnrtmCjGHej2bcgYgqNBv/EVkZ4tpxMUmSKJYzpDI2S7PrDE2U+Ojnb+MP/49v0qi2eSv4fsip16d48Jdv5xv/9Vk+/k/v4MXvn2R1sUYqY3HnA7tJZiwe/8sXefXpMzz0hUPx+P57NBQH76PgockKQni0Q4+q10aWZFY6DdK62eMoVL0OW9MlFEUmY5gU7QSvXpolaer4QUg+YWNpGq9emuVj+7bxw1MXWa61WKm2+Nytu8gnbWpth+FMltcuzVFpdthUyscDad2rt911B1taa2CbOknLQO1qSNiqHhsxS2DKKsqbqMrXQkIipW8jbVx/osnSFXYCKIreff8qaS1e2qjddfjMYoULUytMjFw1iNrd10fimjmOY0uLPH7+HJ/fuau3pOnvS7NeaZFJx1d6Jwh45NhRnpmeuunxj4gIhI8XeahSwMJqnUoj5nzUWw6eHyAiKOWTZJI3r2UYmsrEQJ7x/jyyJGF0FdLCMEII6M/FowUJUydtx9sxVZWRdJqX5+JtCOCF2Rk+v3PXTZm1QgguVSv8++efveFSTFZkcv0ZTNsgDE4DCpq+H0lKoxt30mk/Gn9Okoyk5LuaHFchSRKSUkASCVrtv0XXb8O0Hrxp0BRCIMsSdtJ4x0SuZNpkYnuZUjnLxLYyR1+6GFPhEwaXzy5QWWmwMLOOpqvohvqOs7+fFd43wQOgE8YnxHInTq1bgUfV68TWjaqGjESEoNFxefbMZbaVS0RCkE9YzFcb7BzqY6SQ5cj0AtWWgx9GqLKMrWtk7bjN98rFWcIoQlNkIiHouD7PHb0EQCGTIGkb1FsOC6t1JoeLLK3Pk0marNfaDJYy1FsOmwYLTC1WSFg628f6bvihrnXafO3UKawbKFq9FdKGwX3jE9iahqGrGLqK1R2BvzKCvrPUxyvz8ZnWCQJ+94XnaHouD01uoWgnSCQN7KRBy/M4vrrM3548wTfPno4H1TTthhJ/MjKmYpHTcxT7+0mqiZ5jvaLIBGEI3eJpJwgIopCm523ocQRRSMPzKGQTqLLc0+KQpavU+SvH6krggLhwfefIKN88e6ZnXfnM1GX+5I3X+cLuPeRMc0P7tOp0eGFmhj967TDHl5d6cofX2l4GXkhzscrAeAkIkbp2m5IkgXS9WteNIERAp/0okWiSTP4GkmS86f+C1cUa9WqL/uEfv04ky7FMpCRL8Q8xT+fv//hpUhmbOx/cA5KE63hvu613A++r4NFvxdG/aCSQJKlHkqp5HVJaTORRZYVQjjgwPogXhNyxeZTlegtTU1msNjgxu8h9OzZxcm6ZvSMDDOXTHBgb7PXH94wMcHp+mQPjgxQSNmEk0FQFPwhZq7WoNjpIEtimxlqtxVqthaLIFLMJKo02shTXVpYrDXLhzdlss/U6//vTP/yxj8GmXJ5bymUsVaXV8fD8kPY1X56safKlvfs4vbpCo0uKWmm3+b+ee5ZHjh1lNJMlqccF4uVWi5l6jZrjxPYThQIPbJrk/z38ynU1goiIZWeZml+nlC1iGRod3+drp04yVavS8jyankfL9+n48XzJWrvTa8cCnFpZ5Te/+XUSuoapatiaRkLTSOo6CV3nYHmQD01suq7dKkkSd4+OcWCgzEtzs0AcoH7/5Rd54uIFdvf1UbBtgjBisdnkzNoKFysVnCDAUBR+bd8BLlTWNyxftG4dodNySBf7ETiE4RyStJnAP40QcQAVIiIuoIZAcI1lp4TnPo/nPkMy/TtdKUEX0BECZi4s8/z3jvP8E8fZdesE5dECnZbL0lyFerXN4uw6S7PrFMtZnLbL4sw6zXqH+elVMoXEzbMTIXAdn0xeZm2pxoWTc4xs6vuxv0c/C7yvgseVL9Wb6wh91saUUlYUPjA52lPnfv78NNmEhSJJGKrKUC7NcD7Te/z+scHe36OFLKOFq3WDMIy4ZdswQsREIM8P0XTwPTB0hZHBBDk7jaooCAHHLy6gqjIHtw9jvY2i+E/CBrzSuvWDkIWlKtV6m+Hw6v5KksQDmye5XK3yh6+92mNVBlHE5WqVy9d0La7F5lye/+3e+0jpBo8cO0LF2ehHKyExao/EQkV6/Hpt3+eRY0c5tXoDQscN0An8t3zsP9m1mw+OT9yQq1G0bX7nzrv4X7//BOfX14E4kzi6tMjRpcUbbi+p6/zavv389wdv469OHOOHly/1LjiSLKFqKlbCRFHy6MZ9NOv/J4oyiBAdFGWQWIXuNJ323xD4JwGFKKpiWZ9H1TbhdL5JFK3Tavw/AKjaNuzEV9lxyxinXrvM9Pkl7vvEAfYc2oSqKSzPVXj5qVOUR/KszFc58uIFPvjwPhZn13nxh8cZ2dLHpXPzREHErfdt58BdW7ATBgfu3EIiZbLn0CZypTSf+rW7efHJE1w+s8gDv3QbqvrzkeV5XwWPKwijiJNrK93gEKeqlqKiKgpVp0NaNzBVDSfw0RSFjhbQV0qyKZujZCfw/RBdV6nW21TrHYbLuZsy8xRFJt2deYhExKo7x6q3Qtoq4EoSTX0eWxnGk2QiIiYnkgRSBVtNIkmC2JU+DnxvVdx7p9C6qluaqrJlog9Fka8LUqaq8hsHb2U8m+W/HnmDU6srdHz/umAlSxI50+KesTF+/ZaDbC+WWG616E+maHrx5OuVmk2sjLZMSk2SUpMoihIX6GQZ7WdEUFLfwhhbkiRuKQ/yHx78GH/w6is8NzPdy5g2PI5YgnB7scRX9u3ngc2TmKrKnr5+MoZJ03Nj1Xig3ejgOT6SpJNI/jpB8GEQIYo6QhzaNVRlgkTiN7gS6mcqNbJamYxmkEz/z3CN544kmYDKBz6yiw98ZBcAbugz264yQRG9bPKRr95O3thoWKWNeRz68hh95gBu6JDVCzSDOvc8vAdFVvngJ/YDcPdDe3vP+/xv3PdTHOmfDaR3wkr8OeKGO+eFIa8vzdPyfazugFXGMOlPJJmqVUjpBqaqUnMdVDkOKIaqMpHJ8fQzZ7EtnY/ctZ3V9Sbf/P4xPv/xA1im3jMw8vwQTVVwXB9VldHU2OLBj1zON45QDyrIyAxYY0QipOItYykpQuFjKDbr7gI70reTUNNc8dpYabU4uRJbUv40sDWN/QMDyEhMz62zXmmRyyYYG8oThRGdtkcybYKIg2zNdTixssLxpSVm6jUarosQkDNNthSLbE/n2VnuJ2WbsXlTGHJ0aYm66yJJcctzLJuNSVVBEz/ySWspNFnDC0OOLC5umBn5aVBOJdlWKCJJEmEUsVpvkbIMbGOjuHQnCDi9usLrCwtcrFSou3GWJEUSm/I5Dg4Nsquvn5x5tRjd8jyOLC3S9nxShsGBgQGarofjBzHj1TRwg5CsZVJzHHRFoel6uEFAfzqWVVhqNHn+whQHRgYZSCepdhz6UknMGwg+CyGoem3mOzUOr03xy2MHOVtfpt9K0W+mafgO616bvGEz1TrFtvQuvMhlvjNDvznI6fpxJpPbKRil67b9LuMdV13fl5mHJsvcVh6m5XsbNDAlIG9enUUYSm4UWGl3PFYrLbSGg+sF5DI2th2vUafn16lU24wO5TlxboFiLsHZS8uoisyH7thKOmWhShp95iglYmd0W02DEGS1Uje4eMiSQkrNYiixSY8QgpbrsVxtMpLIkE9YOH5AIWmz0mhRTCaYWov1KscLOSrtDvVOfEUdL+SYr9VpOh7jhSwrzRauHzK1WmUolyaVNGODaVvnwukFII62yqJE4EcEXRWqyVyavC5BqUy2kGD64gq6pmLLBrWZFudX5xgeKzIwlENTFA4ODvJmSJJEWtu4PNQVhduGhq577M3Q9KssOtNcIWBZSoqyNd6jbr8Zp2dXGClmqDQ7GJpKJAQJM7ZfSEQan57czmK1QTGVYLXRou36dFyfQSPFuekV+rJJOq5P0tKpNDuU7SRL7SY500CVZb536jzLjSaqLLO5lGe12eaz+3fy3ZPnGM1neWVqlr5kgsFsmiCKqLQ6XFyrMNlX4KWjM2TtuFv18O5t1w0m1n2HR2eOkNZM6r5DKARn6ouEIqLfTDPTrnCmtkQn9Lirv8RM+zJpNYMbOjT8WtdofeNx8b0gFsPWVXwvoFHvkC/eXGj63cb7MnhIXRp2Sr9+7Fva+MDen0IIZuYrNJoOkRAsLNcYKV/1di3mkrx+fIZGyyGXsTl9fpF7D23h1PlFpuYr7NlmIUkyBeN6wpdF8rr7eq8LPHnqAgld48T8EocmRpir1rl/xyRPnb7IplKek/PLeEHIXVvGOLu4iixJ7BgsMVOp8vixsyQNnXNLqyw3WnQ8H1vXODA6SFpo1JsOw+Us2XxcRA6CENOKTaQ818cwdUxLQ1Vl2i0XTZYZHStiJQwkCbL5BLIskUzFfI+Z9lmWnOkNx1qTdDJakZI5hK1cr3i10mmhdMV9kpqOIstUXYeCaXeV1OIlybI7wxOLf04nbNIIKkwkdvErY7+DfoPgIUsShqbi+AGzazXCMEJTFWxDZ7XewtI1Bgtpzs2vMlzI0J9NEqoRnh9wemaZpuOyWG1QazkM5FKYmkqz48XdKSM+Pooss6mYjxXMPB/Hj2UAW55HEIZs6yuypa/IkbkFGo7LR3dsQZJgrdXGUFU+vG0Tf/HKEbwgxNI3Bo91r0VS1bmnfwuPzR7DUjQGrAyhiAhExHRrPV4KduqUzVt6w3w5vYCETOOSzLruMducwrL1rv6Igm6oVNdbpLM26yuNfwwe7xUuz65x694xfD/g4swaCcugWu+wvNZgYqRIImFw6sISv/rp21hZb3Lu8jJr1RabRn5y1p4Qgmqrw12To6w220SAH0axM5sfMFepEYQh5UyShB77juwdHmBzX4HXpuZoOh4juQxZ26Lj+5RSCXRFwfEDzEii1XZptl3Ghgo3fP0wjIjCiIGhHGEQIcnSdROkV/c14ljtOV5Y/Ta2kkKR1N4wXERInzHMRwa+yKbE7p6lAMDF2jpeGNIK4tmLciKFF4XMt+q0fZ8giri1f4hReztfHv9faAQV/nr6dwlFgBARYeQjS1e/ileWLaamkjB09o6XcbyA8wurjPfl2DJYwA8jJGD3aD+lTJJKs0NfJslALkXL8Qgjga4qtF2ftG2gyDJRJFAVGdePKfumqmCoKpIUs3ObistT5y5R6zhoioKlxfIHhqKQyWZ4/uIUc9U6H9wywUqjxVNnLlJKJtDV64NfTrdpBi4vrlwkErG51XRrHUNWGU3kmW1VGE7ksNW4LaxekYGUlHjmKJJZnq+iKAq1SovycB4kqKw1WVmsEwYRnhsQBGFvxuW9xi9U8Ni1tUx/MR3LtlWatB2PfduGYr6CENy6Z4xNwwVSCZM7D27m4vQKg/1ZhsrXSwC8U8iSxKa+PN8/eYHLqxV2D/XT8X2eOn0RVZHZO1LmpYszKLJMxjZJGkbvyzhezDGUi1PmUipB3XEwVLX7xVYxJY1CLoEiy70Tud1yaVTb9A/FWVVtvUWt2mJ8sn+DjcGbcW02YcgWnx7+LfrMERDgRh3ON4/w7MrX+cHSX1EeG8fuutGvOjFTUuvuw1g6SyQEdc8lpesYikLJSpDWY0X1pJxFkmQUKS7yVv0FhAhQpZh8F/+OSGv97N90dfkURhH92ST51I3b3zezt7wZhBDcu2Wil8Veua/acbhjYgRb02LVOlUhZ1tYmspSo4WhKmQsk4lCrlvzSNxQSyWjWXx6ZD+d0MNWdHRZ5c5SbAiV0kw+N3YLncDjUHEC9c3LkyhCymoM9fXT7LgYpoYUCtwgoDCYYXCkgKYpuK7/zgsU7wJ+YYJHq+Ewf3aZoOkxMJSjmLFxOj65Tf2x8HHHJ+z4NJebuOU8IgjZtaX8U7tvSZLEXZNjNByX7x0/R9LU+cJtewm6abilqZQzKYIoIm0a3LN1jEgKmevMU7YH+Nwtu+j4PknDYKyQ7a7EYmIVApKGxrFXLnNWmea2u7fy4lOnOHdqgbs/spNtu4c59tplcvkkURjxxssX2bV/jEvnlsgVkyzMrLMwu86OfaOMT/Zds88yWa1Eybhaz+g3R5htn2OmfZZmUO0Fj7xpYaoZFjoXkbRlXGmRfmuULdlBNFnrHYObwZBtQFD15kioeUIC3LBJQs3jhwGLnctUvCVCEZJQ0/hOmbw+gCZvLKJ6kcOCc4k1dwEJmZI5zIA5hippvdf3IoclZ4a83o9AsOifp+6vYyo2ZWsTeaOf9DWTvqEIqftrrPiz1DtxezhDEZsJUmZ6w2O9yGXZmSan96PLJovOZZadWSSgYJQZsjazKVXq7a8uSzjhIlPtGS62AvL6AIPWBIZss9pq0ZFD3NDlTHWFYiKBrWvM1ersSwxQLsYXsxRX63s/D/zCBA/XDWjWO1gJg8W5CpPby3RaLpIsszCzjuv69JWzVFabnDkeu6ePb+lnYCj39ht/GyiyTNa2uGVsiHzCJmFspFQ7UoN61MDzEqx7FYatQVbdNVJqijlnnryeY6qzQF7P0fSbyJLCsBVflTVVIZ2xOHr4Mlt2DjI8UUJWZHbsHUHVFAaGcizMrCMrMq2my4Wzi5w/Oce9D+5B01WEgGOvXtoQPG4ECRlFUns/V7DkXOa7C3/GonMJXTYJu1ICB/P3c1fxk+iKeVMBaABLyaLLBimtr8vyjKeGqt4Kjy/8KTPts+iygSA++XXZ5DNDv8Vkah8Qn4gVf5knFv+ci83jaN0MJhQhuzN3cF//L8ddLyQq3jJ/Pf0f2JO5aaZHlAAAIABJREFUm3nnIqvOHJIk0Q6bJNUsHy9/la2pW3rB5mzjNb678N/ohM3YukJEOFGbIWsTnxz8TYrGYO+xNX+Vv5n+Pe4qfZK6v84blR8RioBA+OT0fr40/q9Jy/m4WxS2+NHy33G0+gyyJCNJCn7kMpbYzkcHvkTOLtHyPGRZZtdAH1Y3C7J1jYL9NjJ67yF+YYKHosgMjhXYvK3M+VPzFPrSXDq7iOs4cfFptcmKVIv9QbvP+VmPN0/237guseKsktdzrHsV3NCl6tcIooCqX8UJHWbas+iyjiqXWHKWCYl6wePIy5cQQqCqMiISGKaG7wX4fixwEwYRnhcQBhGbtg3w/W++weimPnwv4OirlygP56iuXz/V60UOThjf70ceU61TzHXOsz19K2ktfh+toMbjC39KzVvjE4O/wbA9iR+5vFZ5iudXv4WtpDhUePAtjYhiPRAZ5ZqBMiEiXq/8kKnWKT5W/grjyV1IQN2vsOzMxMupa/bz+4t/yaXmCT7S/ytsSu5FEHGq/jLPLD+KKus80P9FFDlmlLqRw0tr32FP9i4eHPgSppJgpn2Wx+f/hGdWvs5oYjuWEvMwCnqZg/kPM2JvJa0ViETIkeozPLP897xW+QEPDPxqLzBeyX5eXvseeb2fTw39Jjm9Dzfq0AmbJJRYkzEi4qW1xzlceZI7Cg+zL3s3iqwx3TrDk0uP8N2F/8bnRv4FW0rv3XTsT4pfmOCRzlok07FnydZdseTd0FghLqKpCqX+DLIiM7ljEF1X8bwA0/rpxGSjKCLsEjskrvqYXoEkxcXLYXuIZtBk0CpT9xtktDR+5JPVMkhIZLQ0zaBFJCIGrTL6NSn76NYSl04tMrljkFTGxjA1pi8sc+nsIqOb+licq+B0fBbnK/SXs4xuKrFj3wjprM3weBFJgi07N7ZbnbDN1+f+oHfF9yOXSATszdzNnaVPoEoaQgguNI8x2z7HgwNfZnfmjh6n5d7SZ5nrXODV9SfZlbmDlPbjZW8CQSOooskGg/ZmclpftxPRz6i9bcNj5zsXOdM4zMHc/dySv7/X3ryj8HGWnGmOVp/hQO4++s2rlhtZvcR9fZ8noxXiFrSa52zjdc43jtD0K73gUTKGKBlDG5Zdt+Uf4Hj1eZacaULh9+Qqr8CLHD4y8MXrnncFNX+VN6pPM2Jv457SpzC6+rZZrUTdX+OHy38b8z5St77ng24/Ln5hgkdsxhP/fWVuwLKvb/VeUXz6WYw2X5xaBUmi2XKo1jt0Oh66rpJMGOiaiqbK7No2SFpL9TgUGS2+Ql25ne7djn9foYYDLHbWqBca7Lh/mIRq4kc+miKz9/7x2H5ADtn/wAS6pOKJgKposu/+CSQJfClg1wdHyGpJFPmqRB6AIikMmGMk1DQCcMM2a94Cl1on6DNH2ZO9EwmZ6fYZVElnNLGtFzgALCXJmL2D51e/xZq3+GMHDwmZzck9nKy9yNdn/4Bb8/ezKbmHjFbYwAkRQjDfuUgQ+Uwkd21QqVcljYnEbo5Vn2PRmaLPuJqtlK1xUtpVLZSYm5MjFAG+2DgUKIjoBG06YRM/8uiErbglLvwbFp7L1gQFY+CmJ/6aO0/dX+Ng7kPo8tWahSzJjCd2IEkyU63TbEvd+mMds58HfmGCx88DiiKTSVvML1bx/QDb0qnWO2iqQqvtkXqL0fU3IwhCXnj1Igf2jJDs0uV9EWArJq2wQ9VvUvMbKJLCmlvDVmOpgrSWREZi0VljxO5HkxVqfou0mmDdqzORKFMyN57cmmxwT+kzDFqbgDgTqPtrfGv+j/jOwp9SMAYYtDbRCmposo4pJ67b36SaIRQ+neDmymQ3gyRJ7EjfHvsErz3OY/N/TFLLsj19G7fm7qd4zVW9GVSRJRlbSW04YSVJIqHGAbcV1DZs31ZS10lExs8VXBUBElS8JV5e/x6XmifwIgdZkhEI1t0lkuqNO3CWkkTm5heedtgkFAFJNXtdgDGVBJqk0wiqCMRb1or+IeAfg8e7BCFCyv1NZNnhlj0aspwGfFbWQjLpBKrioanvnHochBEvHb7E1s39veCR01IkVYtVtxa7kyXKVL0muqyR19OxWlnkYykmRrdd6EUBg1YRSzHxRUBCvXnFvmdviURGK7IzfYgz9deYbZ9n0Noc80BERHQDZ7hIhMRdoZ8sg9Nknb3Zu5lM7WWqdZpjted5bf0HXGgc5XMjv03ZHAfocVFuvg9sKPBeeT9vh3bY4Jvzf8RC5xKHCg+xKbkHW0kSCJ+/nfn9mz7v7batdCdyQ3G9PGRMqItQJOUffOCAfwwe7xqEaOMHL6DIJTStDyGW8P0zlIrDaIqB472IrNwNjHD+0jKvvnGZMBQcOjjB5vESZy8s8drRaYSAQwcnGCpn8YOQZ186j+P4HNgzwo6tZeoNh3MvV6lU2+zcVmbvzjGWVxucOrGA4/g0Wy4f/dBORtLXd1My2vUZw1sh/sLHV2cZmaIxyKn6K9T9NQr6VTlAQcSqN4+hWKS1n1zvNM4eMuxI386W1AFO1F7gG3N/yPHa85TNMSQp3gchBOveEmP2jqv7IARr3kK37fzjj6wvO7NMtU5xS/7D3Nv32V4AavjrvaD0kyCjFzBkk1V3HiGi3nJPCEHNX8WLXIrG9eMB/xDx85nl/QWAIECSTGQ5iaqOochFdH1f106wg6ZuQ5YzhJHgu0+dIJO2Obh/rLeUMU2N3dsHyaQtHnvyWM+sKZU02bV9kK9/5wiVapvHvn+MZstl6+Z+vv3EMeYW4jH97z51goG+DAf3jWK+jTTAjfdfEImISESEImDNW+BY7Xl0xWKge9WfTO1Dk3WOVZ/DixxE1+JxyZnhQvMow9Ykef16Ov/bIRIR7aDRZaDGCm7xXNEImqzjR1fNjUbsrWT1Eserz9MO6719qPmrnKq9TMkYomyN/9jFx4gQgcCQzW4LOc5kLjSPUfXfmQTBjVA0hhiyJznbeKMbQES3C9ThWO05DNliIrH7J97+e4l/zDzeJchSCsu4G0lKIssWipzpflE6SJKG1GVYCiG4+9Akz750npW1Bvffs4MwjDhzbpH5pRqeF1BvOESRIJkw2L1jkGI+yZNPn2JlrcGZc4vYtsF6tRUPTHXd2ofLOfbuGv6JTIC8yOGp5b/BVlLd2x0WnWnq/jq35x9g2J5EkiTK5gSHCg/xwupjuJHDRGInTtThWPU5IhFyd+nT6LLZ3UY8kdwMqr0fL3J4YfUxbCVJSsuzObkHTTbwI5fHF/6ESESUrQksJUknbHKq/jIAW5L7e2l9Tu/n7tKneGLxEb4285/YmrqFqNuqXfeW+Fj5q6RuUp94q4nyol6moJc5Wn2OpJolpeaY71zifPNIr+36k8CUbe4pfYZHZ/8zX5v9T+zKfABdNrnYPMaF5lE+UHyYAXPsH3ynBf4xeLxrkCQVRSm96T4JSdpI8hECxkYKjAzlefqFczzxo5N88sG9vPTaJb7yhTtZXK7x5DOnAOg4PssrDRRZxvMCUkmTgb4M27cMsH/3CH4Qkk3bnL+83DPIfjPiUXGHSEQ9+UY39NFkhSCK8MMEKXWEy40FdGWZIIqQkBmwhrm//wtsSx1Ek+MulSKp3FX8FEk1yxvVH/H0yqPdTs04dxS/yqh91QTcCzscqz5LPVhHCEFejw2LztQPd9uwfYzYW9FkA0VS6TfHOFF7gZn2aUIRokoaBaPMp4b+OZtTe6/plMjsz34QU7Z5Zf0Jnlv9BiBRNAb59PBvsTV1oLc00GSDEWsLOb0fkFjutJhpVpnMFMhqJUbsrb1gl9YKfHzwqzy98igvrD6GLMnktH4+VPwn1MJVVt15olAgZEEURkiBwpA9Sb47OBmF8RzRjUzQJxK7+KXh3+b5tW/zyvr3Yrc5Lc9HB77E3uzdqPJ743L/0+J9qefxfoUQVzTXY0QiIgwF337iGAtLNYSAew5Nsn1LmUcfe531apt0dxnzmY/v79lQ1uodtm3u5/57dzC3WOU73z+O5wcUckk++eA+VtYavPrGFL/0iQPX0etDEfHC0hTrbhtL0ei3kix3mjR8F1PVkIgomhZLnUYsOk2sn/LB8hZSWrwvVa+DpWpdUerYFc0NO3TCFrKk4IYKFddlW6aPdbdNhCCnW0QEtAOPVacZK85z1TBKQkKVdMJohSCcBxS8yMMJ2whJQ5FUdFwUKUBTBomEg6Ht2lAz8CIXJ2yCJGEpSbQ3aZEKEYs4yyhIksKJ9UVmmjX2FAYYTCR7QUqWYkHmF797lPG9/ST7ulliR+X4M5c49OAulubXqMw3/3/23jTYjvO88/u9b+999uXuK/YdIAGQoLhp303JlmRZEuWxNZ4ZT1WqkppU5UuqknKqkk9TqaRSnoynJq54Eo03Sbb2xbRE0aTEnSAIkNgvcIG7b2c/p/c3H/riApeLRGsmI4K4/w9Y+t7T3eec7qef93me///PwRM7uXZxgRd+coYPPXovmaxLp+azNLvGzkNjb5pBKJXQipbx4ja6zCDRsLUMlnTeCRnHu1vP43aFQnG9u4ApDWIVp9oMUmffe4oM90zGs4MM5dLpzc/+xlH8IMJc17EwDY0vfuZehEhd7u11teyx4RJf+eID6e+aWsqXscsMDxTe8kIsmjYFMx0bzxnpINhYtoghNbw4wtUNTGlhawahisnqJjnD3tCNvdJaZSxb4lJzGS+OGHByaEKgC42Z7hoHisPUwzqz3QYvrl5nLFPkbH2BfifH9XaNWCVc67Tos7McLKaF1l4Y8uryAvv7BaChVA9bK2FrRZTyAIkivYkT1SZRPVh30IP0iW5pNpb21u1vISSGsAiTiPnuArPtJu0wZeC+fuy+sdrmxcdfQwD3ffQwZ1+8wtLMKgvTqxx5YDdTp+aQUuJ1fYa3pXouMtERieTymesbs0Rriw3OvXiFXCnDvuPb0A2dWIUs9M6T0/somSMY8u237N9J2Aoe/wWRPl01dKGRMzLUgyZKgWkYVI08Oevmk0fXtTdQra31C9J8XVZrGBrGLUNtmvbWtPs4UowYBQpZZ0MrdIISYRTT80NyuZT92vUCNCk3jnkrQhXTDLzUDMstsNhrESSpZ81ir8VEtkI3CljzO1hSpxH0WOq1CZO0HhOphFqvRd6wUcBCs8VMs8nLc/Ps7TvCbEtHAKPFIgutJt0goOJmKLsus80mvTBkslSkFcTUum28KGJbqYipv73LuRk2eXbtaY4UHuTs2jLW6+QhlVJMn5tjYKzC9Pl5th8Y5ezzUxy4byezU8u88vMLzF5eIo5isgWXg/ft4MYDW2qSXNHl8ukZDp7YybN/d5qJvcNcOz9PrugyuW8EISRSaHTjGomaeFvn/E7EVvD4LwghBCPuwMb/s/rbIzkppWiGy6wFszjrYjydqIGj5QBFvzWJ9jbWyUopnn7lCs2uzyfu3wfazczk6vwaT56c4vd/I81uTp6foVLIsHdyYPM+UAy7qXi0LiWtyGd/YZBIJRhSY0++H1c32ZatULEyGz6/3VxAwXRohh6OZhAlCY5u0PA8vnP2HKOFAm3f5+TcPGcWlwjimHtGR3hi6ip3jwzx1NUZ7hsf4+TcPCXHYabRImOanJpf4NjIMPHrlt9XO9MseEtv+jk0wgaNsIkXh3TjEC/ePHORJIqpMzNYjsHybI356RV0Q6NQzqIbGr4XYrsmY7uHGNnRTxKrlIoQpQpppr1OzksSojAmX85gOgaBf/M4YeIRJF3Um8yn3C7YCh63Cbpxk3ZUpxM1SNZ9RqTQKBr9m4R0lFLU271U5NnQ8YOIrGvh2gZdL9VkvXv3CEKmYj5dL2StmVpKtLoeoFipd+kv5Ris3NTISJKEtWaXdi+gmHXIZy0soVNv9Eg6ioFSDl3TSJKElXoHGQiQMJ7ZbIlZMDcPpU3X6mRMk3tGR5htNLlWb+BHEf3ZLLau45oG94yOcHWtxnStzmihwK5qmccvX2FHpcy+vj6OjQy/YYn29OpzzPXmyelv1PnoxT0MqVOxM9xdNcgYmzlMoR8yOFnl3g8dZPrcHHEUUh7McfrpiwyOVzj0nl28+PhrrC022H5ghAunpum1fc69eIX992zn0ivXqC+3uH5hgbse2sPppy/iZG3GdqXFVIHAkhlEylX+la+JXze2CqbvcIRRzFq3RxB7tJM5pHKxdQddSqJY4ugOpmbQCyMcQ8fUNL76vRfwgpDVRpdKwaWvlONj79nL1378MlIIGm2PD5/Yw7aRCn/2nWcxdI16q4emSf7bR9/Ha1ML/M3jr/DR+/Zy36FJlFI88dJlnjl9lWLOYWKwxAfv3cMPfv4a1xZS/dWRvgKPPHSAZ1+d5tkz0+QzNmMDJT58Ys+6Z2z6VL61wAnQCUO+/soZXNOk7fu8Z2Kc567PUHYd7hoa4s9efInd1SqJUjw4OcFPp66gScmuSgVNCmKluGd0ZL0NfqOjBd+f/xH783sZsUfewI5e8Vf50cKPGdGPYUiDvaU++p2bUpJKKVSiEFKAgiSeAdUDMYjQUkc7laTzGVJLFcpUohAi5VClDoMpK1tIQXLLzwCiJOB692UABuzduG/RSv41Yatg+m5Bvedx8tocSaKoZIs0ej79OUHesZitNclYEY5psNzsYGiSwUIeP4x479Gd/PDpc3zgnt08/sJFXr4wy5XZVR66ewedXsBTp1J5vChK+MPP3M+LZ6/zs1NXEAgO7Rzm1IW5jZmRrhfw5MnLPPrx40wMlVAK1hodTl+a57/67QfRNMkf/9WTnDg4QdcL0TTJiYMTbB+pbHRTVDy/PjhnIkSGOLqE1CZwtZjPHRwlSLJYuo5jGAznc0RxgqXr9GeyPLRtkrLjYOkav3VgH82Oj0l6k2q6ZHWtja5rtNvehvfuQH0HOafE/FqDUil1tyvknXUh5zx3FY9Q1ProRuGGl8sNpFaSG20gJBmS8ApCSrqxiVKCnGnRDn1UuK6lu55ArHldzqwtcld1iJy0OF9fphuF3FW9OTUqhYYpXWIVoMs3kjNvF2wFj3c4iq7NfdvHWG51GC7miZP0ppJS0J/LIkR6sY+VChtCwzcKnY6lYxppu7Xnh2Qci1Le5cTBCfpKWdaaXUxTR9MkrmO+ZZE1ihWJUmTXtUCVUqmGqEiLuDeesEEU896jO+grZfnZqSu8dG6GRz92DE2TKNVFqS5xPIeUZZJkBSHLJNFlLAQZ52HE+vIrb1kpK1gpToyP0p/JcCMJzZgmS3NNTl1aoJB3KBZc1modJsYqNJo91modpBT4DZBDGqu1Os2WR7WSpZBPl0y2tNiV3cXZ2hK9KCSjm4Rh/AbzpJuj7j4qqYFwudpyWfN97ukf5dW1JQwpGcsW8aKQwUwOVze4UF9mNJsnZ1hYms7js1Mcrgxu8HwSFWNKl6K5E138p8k+/DqxFTze4TC0VDOz4LzREPvNTKSS19lE3sDeyQFevjCbLk+koK+UZWygyA9+fpafPH+RqZkVoigmihOuzdaYW2mQKMX4YInhvgKTQ2W++fgr7BrvI+tYHNgxSKWQ4Yc/P4uUkqxj0l/KcubyAs2Ox1A1z+WZFWKlkKpBEs+DzBDF1xDKBxKIlxHCQmByK1Oi5fm8cGmGXUNVBpwMS40211fqjFQKVHIuhqExMlRMA56uUbmFz5LPOalFg2vh+6knS6noUi5lNj6/btzlpdppfK+MF8cUsXjmu+f4+CN34TgmP3viHAcOj1HZUCbXUEkTIavkTJtXVhc5X1+ibLmUbZfnp85gSMnOQoWHh7evq/qnA2IF097wyr0BIQTdqEYvrjPo7MMUv145wV8VW8HjNsAvcl5PbnGRStXR4Z49Y/QVMrzv2C5KWYf3H9vJWH+RRz92jEszK+hSUsw5lPMuv/vx41yZW+WBu7anWQWKtWaHQzuGkFJQb/UYGyjyuQ/exatT89RbPfJZG9sy+OJHj3L60nwqJnx0B45lUCm4rDU65DM2j378+LqYcx7dup8gvIivYpLoCrrsRxOrZOz3c8P79QYylknesVlpdqh3enSDkI4X0gtCekGBXaNVxt7EOPrWbVGSepwM9OeJVLTBMAZohE2mO1e5t7iNq60GjjC4enmJKIxRluLll6YZHa/cDB7KB2GCMMkZFtOtOiXL4UqzhhSC+W6TyVzpDf6+b4U1/zpe3EQKg1iF8GvWIv1VsRU8bnNMXVzE8wKkJkFBqZwhbxi0al2GC1lqS20cKbl4bh4pBe+9e8fG/IhSisnhMtteZ9tw74GbswcpTVyRccxN2wEKWYcH79q+advEUJmJodff2AKQSJlFigKa1JEii1IxUbyCrm3ulgghGKumQ24Z20QgCOMYKQT9+bfHBH5m9TnaUYd7K8f56+vfwIs9bgQoL/bI6VnaYUDD9/BkasWZJGkwvhGU43g9GGzQ5yWubqBJyd19w/x0dop9pX7W/B4DTo6dhQpznSaznSaF+jJ9doaLjRUWuy2mmjV2FipIIfCTDkHSxZAOcRJwuzZctrottzGUUqwut/C8kCiMcTMWUhM06z1sx8CyDBr1LohUhDlRitHxMh4+mtCohy0saeJoFrGKsTSTXuRhaxZe7OPoNnO9ZQSCopHF1R0M+dbPm8uNFXKmvalzsfl8YxQR3EppFxKBtRE8ojDm1ItXyOVddu9Pi4wz0ysUShly+bf/hF70loiSCF3q/M3Mt3io7wHkeqenFtQ537rAB6qfBCXJxQb/6//8HcqVLIahcfbVWcYmquTyNrZt8OnfmqRSfAWhb0cah1j1PHKmxVK3zUK7jaFpKBQDbpYwSVjutbE0nbKVerd0woCRbJ5+J+3URElArAJAYEhn47zeIdjqttwJEEJQ7X8jw7Pad3NbpW/znEOUxFxtztGLfXShUbGKtKMuU+1ZylaevJ4hq7ucaVymZOZphm2EECysCwyNOINcbdXI6CajmQJz3SbNwGM8V+J8Iw00u4t9TGRLdKOAmU6dfjtHxXYRQkOg/cLLU9MkjmtxbWqJ3fuH6XZ8lheb5AsuXi+g1w0olDKsLjXJ5G2a9S7djs/gcKqGNj+zRrGcpb+ajow3wxbHynezP7/3luBRY9lfoReFrPR67MlX+eI/eYBOOzWtPnH/ro3z0Q0NN6NQqgNJHRBUnTT7GXBzLLTbWFLj7Ooy1xsNpBC4hknLbzFvtKl7PUq2w8HKTWlCXZro3L6F0hvYCh7vMijloZIOQpbftFYSqoh62MbRLMpWgUQl1IIWQoAhUqWxtaBJrGIMqaUSf7pNmESY0uD5petcbq5ypDLMkJtjvtvkXH2Ji40VICXNLfZatKsjnFyZxdJ0Vr1LfGXPPWSMX96WFFLgumY6Y7GOy+fnqfTlyBdcfvb4WU48tJtnn7rA4WOT/OQHr3Dk+DZK5Sw/e/wsQghqq21+84v3kc3Z5PQs95SObTpG3sjzoYH3sdT1Gc4YhCphYrJKNme/gUiolIeKZ4GHETLPrZGvHfi0ggBNSAqWTZ+bBpVuGFIwLQq2zXLXpGDZ6P+J/j/vRGwFj9sY6TDTMkmyipRllOoiZIEoOoNuHCaOlpDaACpZRch+pMxhS5MT5YO0/ABL0zENyaibmiBpQiNKIjShMZkZQpf6euqf0vUNqeHILitehyutVUazBc7Xl9GEpOZ36XOyHCwP0o1CZjsNrrTWOFgaZMjN/8rrTzdjUShl0k5K0cEwNF74+SWGx8pIKRgYLnLXPdsI/IjrV1eY3NFP3+Cb620opUhIaxoZLYMuIl5Zm2ef08f3vv48X/jy/eQLr6MMqIAkPI2QfaCqCL1ALZjDi9uY0uG9YxPUwzn6oi4Vq4opHVb8q3hxi4o1zlAuRy2YpR0JTOkQJh62lqUbNSiYA296nrcLtoLHbQ1FFL6KUh0SMQtINH0bAkkcTZPEc8TRJZJ4EcM8ijTvQgiBqRn89PwFJspFjk9stl3QtDSd1tereDf+r2kaSilWvA5SCGq+hx9FtEOfkuWQMyxsTefllTkE8P6RnSRK0QkD+p0stvb2LrVeNzWmmp9ZY2E2nV5dmKmhaZK+gQLbdw/yxN+d4b6H9+B7IZmsTaJCDFPj8NEJGvUuxXIOy065Pu2ozenGa9xTPkqQBPxg/jFWg1Xe3/9eojBHOwxoaz6ryy2WFpt43mb1dCESisUPoJtpQFJKcaH5FGVrjHowy+7cw/hxi9VgmlowQ5+9nRX/Kq1wGUvLMt87S8Ua52LzSfrsHfTiJgP2Tq53T3HI/Niv+sW/I7AVPG5zpHR1hZT9KNUGRKpWhgQiNH0fQmSQ2tCm13X8gKcuX2Wx2d60fbCQ5e6x4Q3G7esxbOSYubbInoFhBq0cn5s4RBwrLJmygPe7/ZimjoPOQN92ljttco6N3w3BhsCLMCx9EwvYj9uE692HUPbYd7TKziN5VGYNgeR9n9qJlBBrTfq3aTzy5f3Y+QiR8Thy3xCtaJGMXuXQ/VU6zRCPZZT06IQ95r01zjbPcU/5KC/WTrLsL7M3v4cnlp7kYwOfYixbwMFgZbnFn/7JTzCMzbeE45r83h88zPDozW2a0Om3tuPFTZrhIkv+ZUzp4sUtTGnTDlfIGhVcrUikQoacfaz61wmSLomKiFTwpgLItxu2gsdtDqlPoJIAqe8BYQACQ5sgjpfRjUNIkUPqOwE2jWErFI2ez0pns1uca6WGTm/m8iaEwG/6DGXzLE/XUL2YKEpo1FIvk3zBwclYeL2Axbk6tmNSW20zMFREKUWhnBY69x0Z31TIrQVX6UQrGMLG1SskuQaogFgY6FoBYazSiVbpBRqGdMGCVq+HFAauXiYOAzRhsByeo1yYxA87dONV5rqn6CYlHM0hSAJeqb/KB/rfy6g7zLnmBea7dbxYkciEvv48X/q9B8kXNnd0hBRkMptrNaHyuNj+ORKNnNHHgneeRMW4WlpDCpIeWQQKRckc4WzoUDptAAAgAElEQVTjJ1gyQ5+1nQutf6DXaWJrb96Rup2wFTxuYwghme8Oc7VRxzVWsHWdbhhiahqJUti6hy4ClrodRnJ55totvCgkShL8OOLjB3Zx7+TYLz/QLbAdk8b6CHir6RH4aZqfydlYjsnQaJnpy0vYjombXb/p1i1RNE1iWgbtZm9T8FAqwRA2BXMURyuhS5sgbuPqFYKkjSEdcsYgrXABgYal5XD1KqbMoEjoqhWUSsjoFUwtR0ZVQUHBGCYnSjy1coqvz3wTXepsy07QjjooFFJIJKnh+MBQkVL57bWDLZlhMnOcvNGHJkyOlH4DlEIKnUvtp+m3dxAmPWrBdXZkTxAkPZJIp9kM2OV8BNc2NjGhb1dszXnc5nh1eYnpZh1XN9hTqXJpbZVeHFF1XBKlWO11sTSdfdU+np65RpgkZAyTyVyRoWwOy9CwdB3tlm7ADe5Kvdej7KZzCIlK8KMYTUra9S7NRo/+wQJ+FCGlQBcS00yXI0ms8LwQw0jrJHJdc9WydfxeiO2YKAkI0IXEixsY0gEMNPFG3U+lFLGKaIWzaMIkZwy95dTt65GohHPNC1zrXudI8RCD9gCL/hLnmpew1Shn15b5yNguilg4rrXOAFZEUUwcJViWsanzo5RivneajF4kb4wihMSL68SJhyFzrPqX8JMITRr0Wzuw1q0rz00tcubCHLsn+zm8d+StTvedgLc957EVPG5zzLWaxEpRdV1MqdEJQwwp8eMYXUrCJE67KppGK/DRhUQKQdsP+H+eOclKq8PugSq/c/wwWSstjoZxzAvTs8w3W7imQV827XYEUUzesekGATk75W/4UYRrGtQ6PXb1VylnfvmTO1GKZ2avc73Z4HN7D6BJSdP3eHFhjgdGJ1Aoar0eA5l0qKrm9ZhpNjjYN/CfTeMziCOeXrhGK/TZW+jj+guL7D80Sv9AnuWlJn/11adpNro8/P59PPDwnnSCF4hVwFznWUrWDoKkTaJCHK1KJ5qnZO1iuXeGkrWTZjCNawzSjZZwGGV1VbBSa1MpZtg+9o42sd4aErtTMJRN0/8bN1XeSpcKjvFGZbGSffPG/umFKxRsi98+epDvvHKOUzPzPLAjHT9XCuIkwdQ0NCHJWiaLzTbVbAZNCgqOjanrXF5eJW9bJEmCaxmU3JtanPPtFudWl4mShGODwwRxzKmlBaquy5H+IXaXK5xdXUKRzkX8w/WrTBRKaELwxPVpfjYzzUe37eLIwCCvrSyhrQ94tQKf5+dnUUpx3/AYU40a1xp19lX72FZIhYde/0DsRB2W/RWiW4qUGT3D4eogy70OBSy+8cwl9uwbQinFj390hmLZ5X0f2s/3vnWSfQdHqa4vs1JdEoUmbDrhZYSQ6MIlVmHqc0NIJ1okTLo0g+k0o4pdpq5fR8Cbyjrernj3vJM7FL/qk7jR89g72MdALsuu/grzjRa9IESTAkPTODqeptaJUmhSMFrMo0mfRJkYmoFAUM24SJEWBs3XtWKvNxtca9YZzxd58vo0zcDjUN8gZ5YXKVkOBdvmxkPO0jQMqVHr9ZBC0Oe4DGdz7C5XMKRGwbJ5ZWmB+0bGeHr2GnGiONg3gL4uD9CNQh67col/cdc9REnC+eVlwiThQH8/XtLj/53+c1phm0bYJG/kaIRNTlSO88jwJylZLq1mLxVQtg3WVjtMXV7kn/6L99M3kOfJn56jUe9sBA9NWJSsnQRJi6K1nURF6MIhUQGJCrC1Mhl9EE0Y2FoFISS25rJvxyCXppcp5d+e9OTtgK3gcYfC1DS+9tIZfvjaRRpdjyhJeOn6HAeG+vnC8cM4hk4QzyBVAsTomkEnOE3GPEScpBwVXQNdFoiTDrGKSSKBEDpSOMSqRcYwKdo2S90OYZxQcVwsXcePI+J1vY5EKXQpcXSDRKXGFDkr1cFwDQMB2OvCxolS9MKIwWyWiuPQDgOemplmIl9kPl4XV04SljtdGp7HnmqVeW8BKTT+cMcf8MOFx3igeh+NsMm55gUSFaMJie0Y5PMOj/3gNI16h/GJKn0DeZJYEfgR2i2UeiEEWWN4vQ6jNmo0jt6HF4dUrBukwBy2pt+UAegFLK+16Svd/l2WG9gKHncoPnZgF/dvH3/DdtvQ17OJkJb/PLosoZSPpU9gyCp+dI1eeAlD6yNOGhjaAH40jSYLaCJDorposkAYS6bqGl4U8eDYBJ0g5IlrVyjaNsO5PM/MXme12+GlhTkmCkUu1tLx9j2VKlUngwJ+Mj3Fe0bGeWVpganGGq+tLHG4f4CnZqaZbTU5MTxG0bbpRSE7ijeZvN0wJG9b6DIt9GY0l6yexZImfuwz7o7xzOpz61qmBrqu8anPHufxx87QP1jg/R86gKZJPM9nclsfubLD2doijm7QCn3CJMaUOstem8lcmV4UkNEtZrsN8oZNxXZZ6Lbod7LUgx678n3kszYTw+VN8y23O7aCxx2KrGWRtSwSlaybL71u+aMMctYJBBqJ6qHJAoY2QKI6GFo/ifKJkzq6rGLr2xFCQ6kIIXTipIOtK44PWjw8PokmBKfnFznWN0zBcVjr9Nhb6qNiuORMC6kEHxjbgVIKW+pkDIN7R0Y4X1/maqvGwf5+Rot5Kq7LYq/FByZ30ItC2pHP+ye2s+Z1Gc2miu4C8KIQx9BRQNWqIIQgVCEjzjDfX/g7ymaJKIkwpZlmEFHM0HCRL/3eg+k+1jVKXcfkkc8coxX5NBsefhKx5nVpRz5VK4suJEEcoQuNVb/DbKdBYEfsyFe42FghSGJ6UcCIW6DrhdSbXfqrbxRkvl2xFTzuQCilCFVMlMRc6y7RbxfJ6y5+ktpOJkphSB1Lf7OWYnl9HwmKiCjWUlKddkNiT2FqsK8aECUJ+rogcDcMSQJFveeRsUxKTqr4FScJXhhR7/XS1+o6JdchVgkV22XV66KJtA4Tq4S676VLINulE0V0uy0uNlawdJ2CZa9LMabnEicJZbPEp4Y/iSVNDhcP4ScBa8Ea7+17iLid0AzbLEwvMzTZh9cNMG0Dw9KpL7dQSYJhGeQqWSazZUxNY8BJlyOakETrgdfRdHpxyKCbx9UNdCnZlivj6iZhEpMzLWpJl3qzRxTdvlYLr8dWq/YOhFKK15rXCJOIRphOmGZ1Gz8O0xs07HCwMMm27Bsd7pMkwfcibCft5sysNbANnZYX4JoG06t1tveVafsBWduk6wdkbYtap0fOtmh5PkXXpuOHmLpG2/NxLYMoThgq5tGlQEpJJwzQpaQdBvhxRC8IMZCEMqFg2gRJTKIUAgiSmD4nS9YwCeKYiyurCAG7KpW0qIraMMa+FWefu8zy7BoD4xV0Q2fq9DXy5bQ9vHhtBTtj4XcDDj24h8n9N+fTlbppGnpjr+pN/n1rNrey1mZmoU61nGV08B2llv56bLVqt/CLkdMdprtLFI0MlmbQCNIgkk5dCiL15k/ItdU2f/PXz/PlrzyI45i0vIC1To/VVhfHNOiFIavtLs9PXWdHfwVD12h5AS9Pz3FgZICFRovJvhLXVuokSuGFEaPlAl0/YLRc2KDE3/BSsda7OKcvXeO1M7N8/kv3/cIOU8PzuN5oMJBNh7OW/RXONF7j4b4H0G8RMlJKYTkG1eESSZzQ7fWQmsTNpe3snXdNYrkmkR+RL2+2ZZipN3ns/CV6YciJiTGOjAzyd+cuMVkuMlos8P3XLvDRvTspZ252VtaaXVpdj1z29lVLfz22gscdin67SNXKo0t9fXpcEcRRqukRRZiajlJq40a9IcsXBDEL83XiOLVtcAwd29AZKuSI44R43Vf3xI5xcpaJZehYpo6la5QzDo6hk7csRot5co5FrBSuZdDs+kRhjDDSsXshbmq0KqXodHyWl5rATV+VOFHomtw0AZq3LMYKBXpROja/Gqwx3b2GFA9tev9CCHYcvimr6HV9hrb3U+zLoRv6xrxIrBSxSjY+iyCO+eoLL7N3oI9tTom/ePEU4+UiO6plvnHqVQq2zUgxT8HZ7D9bzDms1tpbcx5buL0hhMDW3qhk5bVCvvmd51leaqIbOh/5xGG2be+j2w34wXdeZnGhTrGYIYpiwiDi+98+yf0P7mZ0vEy75fGtb53kE5+6Gy2RvPLEZRbm65QrWT78sUPsHKhQW+tw8icXadS7LC402bVnkE9/9jhrK23+4Qen6XZ8iiWX3/jNYxRLLksLDb737ZOEYbwpQMzP1fn7H56m2ewxPlHlgx85QCab3qxSCKIkJmOYxEpRNktIIelEHbL6G9ukCljstlCAKmgshz30SBIk8QY3cKnbpt/NUrJcvCDi0vIqirSFXM1mSJKEXX0Vyq7Dc9MzfOn4kU3j/gDNtke92SPjWIwOlv5zfZW/Vrz75I228CtDN3SOHJ3gM58/weBwgR997xRJonju55e4Pr3CI795jFzeptsJMAwNTRO8+PwUAJcvLrK83MLNWPzwey/T7fr85ufuIZOx+ObXXyCKEn725HmiKOFzX7iPbNZibLyCs06ge/B9e/jM5++lVuvy4nNTJLHiO998iWzO4ROP3IXXC4ijBN+P+MZfPkvfQJ5Pf/Y4S4sNHv/71zamSpu+T6IUa70uSZKQ03Mopfi/rvwH/mb2W3xr7rt8a+67PLv2AgpFlMRcb9c5V1vicnOVxW6LhV6LxV6LhW6LVa/LQrfF1VaNZuDhGDpjpQLv3THJ7917N79/71H6shmmVtdY6XQ5MjLEU5evpq5xt6CUd6kUM1RLb0/A+XbAVuaxhQ2oJGFxockrL19jbraG1wtJEsXFCwscvnuCsYnUAe7F568ghODo8W187S+eod3yOPniVe46OgFKcfniIp/9nROMjpXRpODf/Zsf02l7SCGI44QwiJCaJJu1ECK1jJi6tESj3mV5qUlzrIznh8zN1vjAhw8yOl7hrqOTnDo5TbPRZWWlxZd+7wEq1RzHT2znsR+e5qOfPIJhaGRMk6qboRuG6JpGpCLG3FEq8WZF9xt6pobUOFQZohF4WJqGJXWklEggTBKkEOwsVBAITKkhheALRw/z/dfO8w+Xr7KtUuKRA3t5/tosjxzcy0SpyNdePsNKu8tAPs10ul7Aa5fmieKE5VqH4YF3dMH0bWMreGxhAz957FWuTa/yiUfu4uqVZZ5/5jKQUulvtBhv1CAARsbKWJbByy9Ns7BQ55OfvhshxcbvK6WI1p3lhBQcOTrJn/7bn/Cj77/CoSNj7Ds4ShQl/NVXf87oeIUHHt5Dt5OKEN9wwrvxBL/hTyOlTLdHaR0iChM0KTe1CK7UUj+V8WIB13D54MD7ADZxXm4tujq6gaO/kQtkailJMIhiEpUgLZ0oThgvFvnKvcew14WDgijmtw7vx9I0On7I5w4fIO/YRHFMxw8hUYwMFlGJolzcyjy28C6Et+4z2+36nHttLm2FCjhweJQf/+gMfX15zp2dw+ulxUjT1Dl81zjf/85Jdu8ZolLNIdeDxE9//BphGHPyxavs2jNENmszN1ND6pIduwZwMya9rk8ma+P5KX1/eanJ1SvL3F3OYFkGO3YN8Phjr9Juebzw3BSmqVEoOmzb0cdjPzrN/oOjPPXEOe4+Pom2bhVpaRrHRobRpCRSPqfq5zCEwbbsBOeaF7jcnmLcHeNI8TDWm9R9Xo8z1xY5eXUWQ9O4b9c4q+0uF+dXGCzmOLZ9hMdfvYwfxoxXi4yU8zzx2hRDpTzv2TXOU+ev0vHSlvWHDu96U4e/2xnaH/3RH/26z+EX4Y9+3SdwJ6E6aLCwuMDygseegxXGRvsZGc/TN+BgGjZTl5aY3F5lbKLKxPYCui4plHI06l0eeGgPhbJACI2x8T5Uojh79ipDI3k+/JG70HXJMz+7SBTGRFHM1KVFXn5pmqPHJhmfqDJ1eYleN+Do8UkGh0sMDBaY3FZlba3D4nyDg0fGGB4uMjHZx/YdA6yttpm+ssKhu8Y58Z6dIAW1Xg9D0zA0DU3Cd+d+wNOrz3Gtd53Z3jxnm+ewdYeXai9jSIMxd/SXEguvLK2Rdyy2D1S4srxGnCiGSzke3LuNhXqLx165SDHj0Op57Byocm2lTsF1KLg2r0wv8JkTB3l+apaJagnXemN28w7E//R2f3Er87hDoZSiE80ihYFSCYkKyJUcPvjpPorWLjrhHBljmDXvFLrMcOR+l3se3Ief1LC0Pvx4ES2pYOXb/Oaj2xAkLPaepWjtJpYhx+6vsv3YMraeIeI6zXaZM69c54u/ez9DwyUuXVzgu996iThOmNzex/hkFQWcn15icqicGmvnHN734QMAuI5JkihWGx1WG10+8JGDSCFSk20haPs+55aWKTo27SDgwFCZOW+e3538Alk9y59O/Qc+PvQRDuT3cap+mpdqL3Nf5V508YuzgUQpLi+uUe96DBZyeGGIYxlIKci7NqOVAtv6ywyVUmGlXUNVXpyaZbKviKFJXr6aCkLb76IW7Q28+97RFt42OuEsIIiVh0CQNca5MR/Zi5dRKMKkhSKhFV7F1iokKiSjj9BJ5vCpsdx7AUPm0ISZSgJGi7SCqzh6P4kKaASXCeMmVesEx09s5zt/+xK6IUkSxUc+fhjHtai3e7x0boYdo1XiJKHV9Th5YYWsY+HaJo5lMLNURwEZ22RqdhWlFGvNLvsmByjmHCw9JfStdLokShElERJBwSjgaKl/S97IpebTRp5Ixai3McCsSUEx47BrsMrOwQotz98wrq5kXT5x914W6i1ytrWR9Xzo0E7GqyXyrs3MaoOP3bUH17wtso5/FLaCxx0Lha1XSVSAoESsUi/XREWESarCbsosgcxiagVA4eqDSKGn2QoxnXYHeuPkKiWEgCBpoAmLrDGGo/fTixbJ6dvw4zoZs58Pf2wbDz68hyhO5f0sKx3GancDGu0eQRjT8wJaXZ/lWhvLSAfVGu0era7P2ECRlXqHrhewXG8jELR7AcWcQ93zqGRcxgoFBAJPdfBin/PNC5iaST1scKk9RTNsseAtEr/FBO3rUXBtCq7N/tF1jxUJfpxaTggEmYzJ7myVWCVoQrBztEKUJAQqoqk8+vuy2KZOO/QxpIZ1C03/dscWt+UOxq3ffbfZw+/5ZItZTPvNn5JJolBJgrZulH3t8hK1lRb7j04gdUmQhOukOo0oiTd8bTUhN75IeQuDt+an+qqm0Fmpt8k6Fo12OkgVxTG6phFGKYcljGKWa20mh8p4QUTWNWl3A/qKmQ3j7lvRjjr81bVv0AybICBMQrT1JYpCMelO8Mnhj2FJc2NbGgDSwusGF0alf8v1IbVz9SVilXCluUbGSFm5hqbRjUJQEKsEIdJXxyqhHniULRdLahzvGyNnWO/04LHFbdnCL4ZSil7LY+biPOP7RlicXmb6tRnu/uAhUIokSbDczRf62mKd2ctLHHlwDwC+FxIGEbWwxXxnBU1oBEmIQJA3MmR1h27koVA4msWiV6NsVLA0nW4Ucq6xyPZcheVem5FMkavtNap2hrWwixCwLzO4MakZRjF9xezGeLdSMa65htRs3sxmPqO5fHn8w6kAs1blUvsqKDA1kziJQAiudWZJSNap+QkKcHWHWlDHkhbDzgAZfbPyV86wyOgmvSgkb9rU/B6NoIcuJDnTIlIJFculFfp0ooC8YVMwbRzduB0Cxz8KW8HjDsbi9DLPfu9FMgUXIQWdRof5ywssTi+jEsXh9+6nMnxzuEpKyfWLCxSrOQwzrTFYtkGYRGhCYkkDUxpIxKZCpCHTTMbRUor6hcYy23IVsrqV/q7UOFdfpBX5ZHSTNb+LFIJO5JM3U6Ka8brsIknqNFv/mlzuv0bXt73hvQkhCL1vg1Jksn+Y2lUaOYpGnk7UTbkrQJgEWNLCi31c3SFSMZa0KBg5HM1GqYgkqSFlFSEEw27qHHe0mrJsFYp26KcZ1Hqmte40wU1+7Zuzem93bAWPOxRCCEqDRcb2DNM3WuH5H50kDCKunZvFzTsUKnlW52qbgoflmDgZi3MvXcGyTQYm+zBMnZKRY8AtoUsdpWIgBnSE2Mx+GLQrdKIOp2sdStYol5rLhCqhHrTJ6BoJOrZmkJCAEhhSQ6lg/dWb9ydlgVzuv0F7nRNeuhQLAZm66a0vzXZkJ7GkAURk9TRbuTULSIWNQ0BnwKpu/CyKrtLtfp1c7l8Bxs3XKAUkCGLyhgnITfsTt/z5j1gJ3FbYCh53MNycg2mbzF1ewLRNSv0FxvaMUFus06q12X4L6xQgk3f44OfvA6C51qa+1iEIYgyho+JLdHonSZIlougqpnEEx/08UrrE0Sx+8CygCP2nOJHNktX+FceqYxjqGk7wF7iyhW+MkbceZcidSN3p/W/SCJ5DEWMYB8hkvowQNmF4Hq/3/fQ9ZH4XTUtp7kpFeN7f4Xt/j5QV4mQFXZtI/XmFT7fz54ThGYTI4rifwzAOEscz+P4/oJIWYXQeKStkMr+Ppg0TBM/R636DIHwZSJCyjOt+HiEKxPEcve5fEsezSG2YTOZRpBx8Vy1Lfhm2iHF3MAxL5z2PHGdi3yjHP3KEh3/7PWw/MsGxjxzhPZ+6h0zx5nq/sdJiaWaVM09f5NST53ny2y+xtlAnV3AQQhBFV+m0/x26vpdM5st4/k/w/SdSWnuyTLv9f5IkNTKZf0ol9xkMLUPZjEh6/5b+zH7KhX9JQW+gBX9NRjewuEav9y3czBfIZv4AwzgEG+bbAxjmkXT/SWPjHKPwHJ3On2E7j2DZ7ycKLwAKpRK63a8RRhfIZL6CYeyn3frfSZJVkmSRduvfIKRLNvvPUUmDXvfrpP6/ZTR9FCnLmOZ7MM1jCGEDHu32HyOEQyb7z4GEdutPSDOXOwdbweMOhhACIQUxSWq/uM4bEet2Csktza5EKWpLLa5fXCAKI+IoZmm+QbvR26Cu6/p2bPthDOMolvUQgf/0xuulKOI4n8Y0D2GadyOERRRNEcXTaLKPJGlsPO2V6iFlSioL/BcQ0l2/cdPaiZRFDOMQQmw2mArCU+jaBJb1EKZ5H6Z1DwBKdfH9J9C1SRLVQsgCcTxPHF8DQNNGsO1PYhj7Ma37ieMZQGEYuzH0vWiyD8u6GTzieJ4wfBVNGyFJ6mjaEGF4iuSWQHYnYGvZcgchUYoLzUUMqdEMeijSdqIfR5QslyhJqFgZ5nuNVIxYT/1ZNCGJ9IRt+waY3DeMaRvsPjrJzJUVwjC6UVZYfyqn2YEUOSLV4UbpUEh3/ec3oZIOKmng+0+C0EElWNaDCCSaNkG+8D/S6/0tjfr/gGU/TCbz+wjx1kpcKmkhZJb0mSiQIk9abwhRSZMwPE2cLABgWieQsrBeDM0gRNqyFWhA8hZHuHGcXnrewTPpe1IKy3p4I7jdKdgKHncQYpVQ87uUrQzN0KMTBakKuNQwhEYsEiIVc71TYyJbRhca0+1VpBDsyPVjCo0Xf/wqSzNrWI7JtsPjhMFNoZ44XkKpDkLk04xCG+YXFQul1o+mDZPJ/jM0bYw00CSkl2WCru8kl/vvCMPTNBv/C7b9MTRts12E4ibL90YGoJSHEAZxPIemjSCEg6aNYdsfxHYeWT+nGNBIktr6nt7iPIVEEadHWj+O1Mpo2ggZ91F0Y/+NT5c77Xa6s97tHQ5dSPYVU1HjspXBktr6AJciUgmW1AHBA/0mWcMiiCOqdhZDariaydr1GivzdYQU6IZOY61DoqCx1sHJsl4/+BOEdAmDl8nl//v1I0sEqbftpvPRJzGt+2g1/zWGcYBEtTCMfTjOIwTBq3i976Fpg8TxLJo2gJQFIMH3fkwQniSO5+l2v4phHMSxP4lp3UOv9y3arf8NIdcDmL4NsHDd36bT+b+JoilYzxAyma8AGtyazQgNxE22raaNkcQrtNv/Hk0bwrY/gpT92PZHabX/DwzjCCgPTRvGcT/Pm82cvFuxNWG6hQ0EfgQipdrf0A11XXNDlLi+3OLK2VmWZ9dYnq1x8IHd6JbBjr3DKPETvN63cN0vEScLGMZBdH0PQkiSpE0cz6LrOxG3zH+k155HEJwijq4gZA7TOIqmD5MkdQL/OeJkBSkLmOYxpBwAFFF0kSSpb+xHCAfD2AfoxPF1guAFpMynx8NE04dRKiaKpqh3X+ByYwVN303JvZvhjMFjV5/EY4zP7jiCUDWSpMFLqzo502ZfqUIYniEKzyJlBct+ECEc5tqrXK3/jCOlLlI4GOYRtPXOzm2OrQnTLbw5lFJcm06tCTrtVHgnDGPyBYd6vUsmYxGFMQODBRbm6wwMFVmYq6WSgVmLvUcnmdw3TOiFSFMnjhN0UyMMAQxM6z5ApxeFXG/WsXWdASeL1Hex0G3TjUIG3CwZ3aTm91jzepTsw5TdE3hxxLVui4LZpWQVkOYHWew2IYEhMwcolrptulGVAXdyYx8N32NAKBwdmlGVRHyUVuAzbOQ31NeF0DCMXVzzXb49e5qjfcP0VIeJ/DhHBh7izy+8TKwSTFmmFthca09xb3+OSEE93kHVPUyUJKx4HjkjYsnzydr34LppJlfzezS6NQacLI5uvBuCyC/FVvC4w5AkiqXFBkPDJaanVygUHAxDZ36uRrvt03YMisUM2ZxN43wPIQX1RpfkUsTlF6YI/JTDUejLMbRzCMc1qfbn0WQVw9jDjQfXpcYqZ1YXmW7VeGTbPnQp+c6Vs4xkCxyuDDGcyfGnr73ASCbPUCbHfYPj/OXFU0gEq16X39l1hDNrC1ysr1K1Xd43up2639u0j6Jl8/VLpynZLmEc88XdR/iL9X2UbIcPje7EcjZf4olK2J6v8PGJPehSoguJaxgbnJZEKU6tzBPEEf/xwsv87p67+eaV13h0913MtBucWVvkkcl9nFldJEoSDleHmGk3Np3Ho3vuelNlsncbtoLHHQYpBXv2DRPHCSfu25m6vRka7a5PrxuwtNpidLyC54cMDBZwXBPHtSiXM5q8OrwAABauSURBVEzuGkST6aD1U985SWu1jZOpgBAY5t0Y5hFurPmrToaxXIHZToPr7Qa7i1VipajaLuO5AoqU7m5okj2lPha7bU6tzPOBkR1cbdW42FjB1nSCOGJboUzJcuiEwaZ9PDV3lZ2FNBD88emnmWk38KOIj07sZn+p/y0/g+cWr9MKffaX+vnw+K7NPxQwli2gCcnp1QW8OKLfyXK2tsTlxhoHyv3kTItDlUFeXJoB4JWV+U3nMdtusLNY/f/nC3wHYSt43GEQQpDPb56P8P2IM+evMNCXx7INrs2tsbzS2hDa8f2I7JJFIecwPFSkVHAZ3t5HECX0Oj4otV7LSAOHF4X8x/Mvc+/AKK6eMk/Hc0X+yd6j/P31S3z36jl+Z9dhfn/vMV5cmuWr50/y2R0HcXWDATfLI9v2MZkr4eomI9kCf3v5VQRwd9/wpn30ORlagU+kEuIkZcQaUsP9JcuGE4NjPLr77o1AmFbW0vLaYrfN1y6d5uMTezDWbSvvrg7x7atnEQh2FasbXRcFG6zaTech74zxqTvjXW7hF0JKQTHvks3Y+H6ErmuUSxnCMNW8KBVdSsUMrba3cWPsu2c71eFSavSURJvo/ZqUVGyX87VlvDgib9pMNdb47tVz1Pweo5kCNa/Ht6+c5f9r706b4zrP9I7/n7Of3htooLESoCiSkmhKtijFljSOp8oez4ydZCbJTE3V5FPlAySpSlUqlbzJlGtcydhWeRwvY2lkmZS5SFzBBWs3Gr332Z+8OBBIWYoswRA3378qkiCAbqLZjQvn2e77em+X5VKNxWKFV2aXeHv7HudbmyQ6463tO/z43g2s/fv77ft4eWaRncmI/3z5HeaLFRZLFWqud/BN/0lc02bKK+CaJrZh0o0C3rx3g63xkDfvXgfAs2ze292iaDs4pslKpU6cZayWa5Rtl7vDHj/fXONmr8Mvtm7zUmP+o19HsfLFPVmPEVltEQed2T582zAUaarZbvWxbZNyVTFIW7iqhGt5KGWQZAGmckmSmKHeoWzPYikHzyyhtSbKUoZhG8/Uef9ZpehHAYaeUPFmAc0gGpAkXSpeE9uwSbWiH2eYRpmS7TCOY8ZJRMF28Ewrb5id5nMuJTtfXk3JGEYRJdvBNvK6Gv5+VbH88eSPyTTz0Lt4d4tyweXYVA1DKSZxzCCJUOShV3M8gjQhylJcw8QxLUylGMYRtmHgmhZ7wYRJEmObJo5pUnU8wjRhnMSUHRdLGU/yhOln/sIlPMSn0lrTDtfoRPcwlYlvVilZ0wyTDo7hEWYjxkkPx/DxzDJz/qmD22bRr9FZ5/4+CpXv9VBGA7K9/VOvISgDsEDZKFUB6xRvXb3DzZ0OzzSnOT5b56dXboGGN55fZbPT58Z2h2rB4/XTK/zgwjUUcHKhwXAScqxRoz3Ia4JcvLOFZZrMVIq8sNzkP/3obRamqnz7pZO0+iOurO9Q9l2+/vwq7dEYw1B5pTMrDysNlF2HfhBScPKG3Bv9ASXHwbMt5iolCs7vrsL+BJGlWnF0as4CZbtBvuXbBK1xzAImVn4Gxk0xMPOPPciYwjCP7W/KsvJmLB+W/zPqKBzubwVPyUfRBuMw5tK9bf7qa2cpug4/vXKL1Zk6rm1xYW0TQymWpqu8cmKJNMto9Yf89WsvUi14/J/zH9CoFNkbTTAU9Cchf/3aWf7u7UucO7HIqYUZXn12iZlKkR++d43vvHyan71/m4v3tgl1Sns0oug47I4mzJaLlFyHpVqVd+6sU3IdTs022B2NWdvdo1EqoBQcn/5oQ6k/FBIe4lMppbCVi81Hz5QkWcpuNGDGrTLarxZWsb28MHE0wDFsCtYSt0dtfNNgzt+fB/gMP9dMIy8udKfdpVEuUvQc2v0RtmVSdG3CJKXiuziWySTK8GyLgmtjmQa2aXKn3eXebo/VmTqjIOJuuwcqLzpkmQYbnT7T5QK+Y3O33WMcRsxVyygTyp6DbZq8uDiHoRSeZWGbJl9emkeh6AchJ2emsU2TNMtolj/e//YPhQxbxOeitSbMYjrRkJ+1LvMXi1/l3mSXgukw59UJs5i3d6/xfGWJKbfMrzs32Qz2+NeLr5LpjGESYBsWnmETZQmjJMBUBmXbZ5xGeeUvy2Njb8D1/eZKKzM1Lt3dJs00Xzo2x+5gRMF1mC4XSNKM61ttnp1rYJkGneGYS3e3cS2LmWqR7//qfc6uzLHSqLMyU2O7N+TqRpszy3lB4yvrO0yXCpxaaGAaBnGaYij1iSsmaZaRZhrnE2qmPkVkzkN8MYI04vsb76BQ7ARd/sPqH/Pm9gVWi7O8VDvOB/11PhisA/CvFl7h3mSXi907fGfhHOf3brE22kYDX595gbd3rzFMAkDzyvRJft25iVJwrn6CleLs7z3pOAoifvSb63z35dNYT1m3ti/QZ/5Pl6Va8bnsRSO0hm/Mfomi5eGZDkv+NFGW5PU8kwBLGdwZ5SUGP6TRXBtu8MbM80y7ZW6PW/TiEVNuiTm/zp3RDs9VFjlTPca1weYn/ttZlu3/0gST6P5+C62Jwpjf/kHouzZ/+tLJP5h9Fw+bzHmIz6VguQRZxJX+XaIsYZKGbAddMjS9eMzF3m2Ol5rYhkWcJWxO9miHfbrRiIZb4XLvLu2wz+p0kxtqk0E84dzUCfrxhLXRDoYymPfqeZsHNHGUAOB5NtcurmNaJrXpIu2tHsdONBkNAwpFl057wOx8jV5nRL1RwnYsojjh/NomtaJHf5KvlqSZ5vml2ad96PFQSHiIz6Vi+Xyz+RKDeMzx+SYKxUpxNt9urgy+NfsSt9a3ec09jYlBzSny5fpxUp3xeuM57oxaPFuexzVsUp0x75b5yc5F/v3y65Qsj0xrjhVnuHWrRRglvP/BJspQ/Pm3znLnZgvTUNy+nk/k9rsT5pbquJ7NzkaXKIhpb/WYjKZYOdkk2d/tudHpMwhCXNui7LlESSLhcQQkPMTnopRi3q8z79cP3vel2v1CybtrA7K1jE7aZ+jWOT23+JHbnywvADBMAsqWT3vY50R5HgeL1cLsQWGhIIz5zaV1FhdqDIchg8GEY8/MkKb5lnjbsSiUPMbDAL/gEE4ibKeKMhSFcl6xzHdszizPkqQZYZLiWiap1hTdp2pfxiMjE6biSN14f5PtjT2SJGNhoUZvc5dSrYjW4BYcLNvCsk06W10wFf3OgOnZGk7Rx/FspudquJ7NaBxy9doWJ47P0u4MWZivEccplmkQxgmGUlimSRQlZFoTRQnlsgc6f9F4Xr50Kz432SQmHr5Oe8BwENDvjnFcm3LVJ+i5RGGMoQwq02XCcUiaZCRRgu3ZlCtF0GCaBreubGBaJqV6Ed+3+cpL+RVNtzem2xtz+domtm0RBDFZlmFZJrZl4jgWvmtz5foWrmsDmjOnF6iW/U//gsXvRcJDHBnDMNjd6VOq+MRRQpRmnHn99Mc+T2ea+RP5PgtFPhRaX2sx6I4Z9SdsdoYkScZOq49Sis2tLn/0xilM0yAIIkBRrfhUSj6ua6E1pGlKrZq/rz+ckCSfrZG1ODwJD3FkalNFTr6wwOXzd0BB4bd63WqtuXF5g5/8/XnGoxCtNafOLvMn/+4cnu/w3MurFIoux+aqXL2+zfxclal6CdNQ1Ms+x+Zr7HZHYBjMNsoHJQMgDySlDhrEHTSmFl8cCQ9xpCq1An4x38ruuB+tppWlGb/44UXmlqfo7PRZemaG0SAAFNv3OgSjkNJz81iWyemTc6RZvk+kVHB4/5+ucux03lpy0BkR7PSJJhG2Z2M7Fq7v0FxpSGg8RBIe4kjdW2vT747Jsoze3ohy9f68gyYfojx7ZpELg4DTLx7jR3/3K7Iso9Yoc+lmi5nFKZiDVnvAD968xHgSUbBNzixPEU5i0HkLhF67TxKnVKZKxGFMFEQ0V57+6l2PEwkPcaSai3WKZY/rVzZwPRut9cHQwjQNzpxbpVTxUYbiv/7HH3Dm5VVMy8C2TWzH2m84Dds7PeaalYMJ0tOvnqDg319i7bUHZGlGvVl9WvtIP/YkPMSRam/32bizy/zyNO/8/Bqv/tFJGs3qwcfPvHKcfmfEq994jlNnl2ku1VFK5ZOlgwmWnb8k55o1yiWf9y7eRWuwbQvjgaXX+gP3KR4NCQ9xpNI0JQhi3vvnm8zO1+h3xwfhoTPNP/zPt7l3q4VXyK8iFlcbfPPfnmN6rsrpr6xQ2W+uPT1VpNcf05ytsHKsgePIjtDHjYSHOFKrJ5qYhoFpzdNpDZiefaCepwLDNDh5don55WlQUKr4eQ3VRplao3zwqTfXWly6vEGzWeEXv7zOd//sRXxfdoY+TiQ8xJEZj0LCMMbxbLq7Q5ZWG1TrxYOPaw397ojB2phBdwzkcyTLz8x+7Hx3lmk8z6Za9rk+2eHmrRbLS1Mfq/wuHh0JD3Fk0jRje32P4SAgDGKSNGM3HBKkMU2vgoHCLzjYtkVjropSiupUkU8q2zFVL3Ln7i7rm11mZ8ps7fSp14sSHo8ROdsijtRkFGI5FkmckGQZF8Z36UZjvtF8jqLp8v7522yv77HfMYWp2TJnXjl+UN1cPHJytkU8fEmS8pt31yiVfYIgpjFXQRXID7Htt3OMo5SX3zhFdar4sdtnWpPtH6PX5EMXQ+V7Q57gVgZPLQkPcWS01sRRSqc9oFovMjVT4mp/h5LloZQiyzIu/NN1ZhdrHwsPrTU3N3cZBhFLjSqGUqzv9tFaMz9VxlAK33UouE9/D9gnhYSHODK2bXH23CpZlrHbGhDplFmvwiCeEGUJrumxuNrg0jtrZGneXMrxbKZm8lWWME6xLZN3r68zVy+RpBnDScTm3gDHMmhUSpxdnXvEj1J8SMJDHKn1O7us394lCmNOmotU5nzKtoelDDKdlxW88NYNLv3qFoZSHHu2yXf/9jUs22RuqkySZoyDCM+x6Y8DFhv5HpHBJGS6XHjEj048SCZMxZFqbfW4dW2L+aUp3KLNtjNEAavFBkXLJU0ysjQvYmwYiszICJlQsatkZAcTqR/SaAye6PaNTxqZMBWPzu7OgEqtSLHiEWcJvWjCs+W8fsd4GPCPf3+e9bU2zcU6X/3OaUbFPcp2hTvj2wRpQMH0AYVjOLTCHV6onMFSMtfxuJH1MXGk2ts9gknE2rVter0xSZYRZQlJlqI1/OT7FzAMg2/95Tn8osuPv/drRtGIftyjE+4yiHuM0zH9pEc33qMb75FoKezzOJIrD3Gkmgt1Nu52qNQKLCxMseQ0CLOEgumQJRl77QF/+lev0lyaoj5T5nv/7Wc0nQVMZfFM6QSmMrENB601qU6Y8+ZxDIc4yeuXyvDl8SHhIY5UHCcYhsIwDNI0wzVsbCM/1KYsg6XjM3z/v/+S1dNz3L2+w9LqLPPFuYOq6ZAv2/YGE7LMZDhKiNwh/UFAY6rEaBwyN1uV4saPAQkPcaQKRRe/6HL7xg4rJ2YoFN2PdHJ749tfolIvsr7W4oVzq5z9F898JDg+1OoMWd/q0utPWFmaIopSRpOQ8TiiXPSoyjb1R05WW8SR2tnssnZtm+lmhcVj03h+PgS5/O5tFlcbDHpj5pamsJ3//88trTXd0YBwoskyjWNbdPsTSkWXKEpYaFaxpGnTF0VWW8TDkVf+ylAqfynttYcEk4jxMCRJ7veqvfDL67iezds/vsKf/c1XqdTzPRtKKXrJJoYyCdIRiQ5xjQJDOhTKNRxlobXG9QZkysYCDFMKAT0OJDzEZ6J1RJZuoVQBrYdACrjorIsmwDBmMMy8G9ygH+D5Dll6PzwWVxr8r//yU9bXWrQ2uwfFkZdPzPDKX8zh2C6pjjCUiakc6s4iQTogJaFgVoiyCUkWYRlS0+NxIcMW8ZlkWZ84/Dmg0bqPUgXQKSgLnfUxzCaW/SJRVKPfGxOMY6r1wkE9jzhK2Lrb4X//j7d47U/OUNqfs/CLLrMLtYOLZfXA7/effnXwtgYUclDuCyTDFnG0lHIxrWdQygcdg+GDTtB6AORd2vY6Bu3tHe6ttRn2J5w9d/wgPCKdMSoqnvvmSfylCuWyj2NZ+LZFlGakOiNMEkxlYJkGplKkmcZ3bAyl+O1YEY+eXHmII5PEKbutAaapCCYxnu/QaOZlCK/utNkZDHGtvFP9h1XV+0HIIAgJkoSlWgXftmmPxixWy1zeavHa8WVqvqysPERy5SEePss2mZ3/5MnMiuey2R9gmybDMMI2DTzbJs0yZspFgjjGUIr2eMxsqYihDKR/0+NNrjzE7zTsT7h6/jZzx6aZX2l8rvmGLNPcubrJ/OoMpm2CgjTLuDvskeoMpcAxLRzDpBdO6EYBzUIJ17SY9UpYhuwqfcjkykMcjXAS8ct/eI/2Zpe5Y9ME44j2VpdytUB1usRkFLK71aNSL1Ioe7Q29rD2a5QGk4jdrR5vv3mJb//N14jChCROqM5VuDfukmYZjmnhmxYa2AsnmEqxPR7iWRZzhbIEx2NMwkN8qiRO6XVGFMo+fsGl2xpw4zf32LzT5s//9nX+7/fepdoos/xsExTcurLB7Q82+Zf/5mUu/PwqhZJHe7NHHCXc/mCT2x9scvorK3ztlZWDidBUZ+wGYyqOx3KpiqXyDWCGTI8+1iQ8xKcqVnyWn21SKHvUZsr86h+vEIUxvd0he60BUZTw9e9+GWUobl5aZ7A3YjIK2Wv1GfUm/PFfnqO12WXQHdPa2CNJUrrtAZ714BF7k6WSbPx60kh4iN/Jdiwsy0Rrzfa9Dn7Ro1DyKNV8HNfmJ997l+Vnm3R2+qRJRqHkUSh6lOsF3vrhRSaDgFF/wngQ4Bfdgw1i4skmE6bid5qMApRh4Ho2k2FIf2+EV3QoVwtEYcJeq0+5VsD1HTrbfVzfxiu4DHtj0iTD9R2KFY9ue4BpmhTKHn7RfdQPS3yyzzxWlPAQnypKEra6Q8q+SxgnWKaBbeZzEnGakqQZBddmFMbMVoqYhkEcJVz+55vstQb4JZdKvUix4jO7WMcrSGg85mS1RRyNvVHAB1stFGCZZl5TVOVTmel+j5WCY9MPQqaKK5iGQRKnece4OCEOTUb9Cd32kKkH+9aKJ56Eh/hUrm3xzMwUkzhmFMb4joVjmmgNqc4YhTGNSpFJHJPtX8V6BYfnzx1HKchSjWkbJFFKoeQ94kcjjpIMW8SnevD1ofX+31X+dpZl+RbzYUDBs7FtE1AHvWcN6fT2JJJhizgaD37zKwXbu0N2u0OSNGMwCqlXC9zd2uPUyiytzhClwHNtbMvk2HydgidH6J9WUghSfC5F32Fto4O1P2kaRQmNWgnLNEjSlDBK2OuP2Wj1yDK5cHyaybBFfC5aa3rDgKLv0N//M05SkizDQKEMRZplpElGvVqQocuTR5ZqxcPTnQRc2tym7vtYprHf7V5jmQYnZ6YlPJ4sn/nJkmGL+L3ZpkGzXEKj0RrQkGmNY0qR4qeZXHmI39uDr6Eky+hOAqYK/v7BN+TK48kiwxYhxKHIsEUI8cWS8BBCHIqEhxDiUCQ8hBCHIuEhhDgUCQ8hxKFIeAghDkXCQwhxKBIeQohDkfAQQhzK414MSA5FCPGYkisPIcShSHgIIQ5FwkMIcSgSHkKIQ5HwEEIcioSHEOJQJDyEEIci4SGEOBQJDyHEoUh4CCEORcJDCHEoEh5CiEOR8BBCHIqEhxDiUCQ8hBCHIuEhhDgUCQ8hxKFIeAghDkXCQwhxKBIeQohDkfAQQhyKhIcQ4lAkPIQQh/L/AORLmjsLgs3NAAAAAElFTkSuQmCC\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from imageio import imread\n", + "import warnings\n", + "\n", + "warnings.simplefilter('ignore')\n", + "\n", + "twitter_mask = imread('brasil_mask.png')\n", + "\n", + "wc = WordCloud(min_font_size=10, \n", + " max_font_size=300, \n", + " background_color='white', \n", + " mode=\"RGB\",\n", + " stopwords=new_stopwords,\n", + " width=2000, \n", + " height=1000,\n", + " mask=twitter_mask,\n", + " normalize_plurals= True).generate(words_clean)\n", + "\n", + "plt.imshow(wc, interpolation=\"bilinear\")\n", + "plt.axis(\"off\")\n", + "plt.savefig('lula-bolsonaro.png', dpi=300)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Time Series" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#Tweets per Day\n", + "data = tweets_df\n", + "\n", + "data['Date'] = pd.to_datetime(data['Date']).apply(lambda x: x.date())\n", + "\n", + "tlen = pd.Series(data['Date'].value_counts(), index=data['Date'])\n", + "tlen.plot(figsize=(16,4), color='r');" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Twitter Setiments Analisys with NLTK" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Training Model" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "vectorizer = CountVectorizer(analyzer=\"word\")\n", + "freq_tweets = vectorizer.fit_transform(wordsPT)\n", + "modelo = MultinomialNB()\n", + "modelo.fit(freq_tweets,wordsPT_sentiments);" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Sentiment Analisys" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [], + "source": [ + "tweetsarray = []\n", + "\n", + "for tw in tweets_df['Tweets']:\n", + " text = clean_tweet(tw)\n", + " tweetsarray.append(text)" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [], + "source": [ + "predictionData = vectorizer.transform(tweets_df['Tweets'])\n", + "tweets_df['SA NLTK'] = modelo.predict(predictionData)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Results of Sentiment Analysis" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [], + "source": [ + "#Sentiment Analysis Results\n", + "pos_tweets = [ tweet for index, tweet in enumerate(tweets_df['Tweets']) if tweets_df['SA NLTK'][index] > 0]\n", + "neg_tweets = [ tweet for index, tweet in enumerate(tweets_df['Tweets']) if tweets_df['SA NLTK'][index] < 0]" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Porcentagem de Tweets Positivos: 86.20689655172414%\n", + "Porcentagem de Tweets Negativos: 13.793103448275861%\n" + ] + } + ], + "source": [ + "print(\"Porcentagem de Tweets Positivos: {}%\".format(len(pos_tweets)*100/len(tweets_df['Tweets'])))\n", + "print(\"Porcentagem de Tweets Negativos: {}%\".format(len(neg_tweets)*100/len(tweets_df['Tweets'])))" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [], + "source": [ + "sentiments = ['Positivos', 'Negativos']\n", + "percents = [len(pos_tweets), len(neg_tweets)]" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYEAAAFbCAYAAAAz/DJtAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzt3XmcnfPd//HXZyYzk4QsIkEIvZBaWkssUXtCI5Zjq3LXEqr6u6vaolS5VLVzl7YHtZTbXfSuoKi7qFouao+m9jWJWCtOg0oQMkkmyazf3x/XFRmRZM6ZOWe+55zr/Xw8zmMmZ87yHonrfb7fa/macw4REUmnGt8BRETEH5WAiEiKqQRERFJMJSAikmIqARGRFFMJiIikmEpARCTFVAIiIimmEhARSTGVgIhIiqkERERSTCUgIpJiKgERkRRTCYiIpJhKQEQkxVQCIiIpphIQEUkxlYCISIqpBEREUkwlICKSYioBEZEUUwmIiKSYSkBEJMVUAiIiKaYSEBFJMZWAiEiKqQRERFJMJSAikmIqARGRFFMJiIikmEpARCTFVAIiIimmEhARSTGVgIhIiqkERERSTCUgIpJiKgERkRRTCYiIpJhKQEQkxVQCIiIpphIQEUmxfr4DiJRCEEYG9AcGJLeBXb4fANQBi4FFK9wW57IZ5yOziA/mnP69S2UIwqg/sAkQAKOA9YENutyGsXxj3x+wHrxNJ3E5NLO8GBYA7wKzgLe73N7JZTPtPf6FRMqASkDKThBGw4Adk9vmxBv+TYH16NmGvVTaicuhazHMAl4GXlFBSCVQCYhXQRgNBnYg3uCPTb5u7DVUcSwFpgHPJ7dngZm5bKbTayqRFagEpM8EYVRDvJHfleWf9DejvD7dl9IC4CngceAJ4KlcNrPIbyRJO5WAlFQQRmsB+wKZ5OsIv4nKSgdxKdwN3JXLZl71nEdSSCUgRReE0dbEG/0MsAtQ6zdRxfgncSHcDUzVPgXpCyoB6bUgjAYAE4g3+gcAG/pNVBU+Ae4jLoT7ctlMk+c8UqVUAtJjQRh9BTgBOBIY7DlONWsD/g7cANyay2aWeM4jVUQlIAUJwmgEcCzxxv/LnuOk0XzgRuD3uWxmuu8wUvlUAtKtIIxqgf2IN/wHEZ9tK/49A1wD3JLLZpp9h5HKpBKQVQrCaDTxhv844jNypTwtBP4EXJPLZp73HUYqi0pAPicIo12Bs4g/9aflGP5q8SLw38ANOrpI8qESEODTC64dAITA7p7jSO/lgF8B1+WymTbPWaSMqQRSLjmL9wjgHGBrz3Gk+P4F/BqYnMtmWn2HkfKjEkipLhv/c9FRPmnwDpAF/pDLZlp8h5HyoRJImWTa5wjgZ2jjn0bvAhcQH2KqMhCVQJoEYbQD8U7DnX1nEe/+DfwSuDqXzXT4DiP+qARSIAij4cQ7Cb+NlhSVz5oBnJLLZqb4DiJ+qASqWHKS13eB84C1PMeR8nYrcEYum5ntO4j0LZVAlQrCaA/gCmBb31mkYiwhHjFeqCOJ0kMlUGWCMFofuAg42ncWqVivAifmspmpvoNI6akEqkRyyOdpQCOwpt80UgUcMBn4cS6b+dh3GCkdlUAVCMJoI+CPwJ6+s0jV+Qj4Ti6bucN3ECkNlUCFC8LoSOB3wFDfWaSqXQ2cprUMqo9KoEIFYTQYuBKY5DuLpMZM4KhcNjPDdxApHh0zXoGCMNoNmIYKQPrWl4FngjD6vu8gUjwaCVSQIIz6EV/u4Sdo8Xbx607g27lsZp7vINI7KoEKEYTRpsBNwFd8ZxFJvAdM0tnGlU0lUAGCMDqAeOUoLeYu5aaT+FLVjVrEpjKpBMpcEEanAhej6R8pb/cDR+SymYW+g0hhVAJlKpn/vxw4yXcWkTxNBzK5bOZd30EkfyqBMhSE0RDgz8BE31lECvRv4KBcNvOC7yCSHx0iWmaCMNoEeBIVgFSm9YG/B2F0oO8gkh+VQBkJwmh34GlgS99ZRHphDeCvQRj9wHcQ6Z6mg8pEEEbHAb8H6n1nESmi3wKn57KZTt9BZOU0EigDQRidC1yPCkCqz6nAX4IwGug7iKycRgKeBWH0S+IzgEWq2dPAxFw2s8B3EPkslYBHQRhdDJzuO4dIH3kC2DeXzSzyHUSWUwl4EISREZ8DoB1nkjZTgf1z2Uyz7yAS0z4BP65EBSDptAdwdxBGA3wHkZhKoI8FYXQZOgtY0m0v4M4gjPr7DiIqgT4VhNEFxEdLiKTdPsRHDemIOM9UAn0kCKP/As70nUOkjOwP3BaEUZ3vIGmmHcN9IAijHwKX+s4hUqb+AnxDl6L2QyOBEkuuoXKx7xwiZewwYLLvEGmlEiihIIy2IV4MRv+dRVZvUnLmvPQxTQeVSBBG6wLPABv5ziJSIRxwdC6bucV3kDRRCZRAcujbo8DOvrOIVJilwN65bOZJ30HSQtMUpXEtKgCRnuhPfBlqjaD7iEqgyIIw+jlwlO8cIhVsHeAOnVXcN1QCRRSE0TeAn/vOIVIFtgeu8R0iDbRPoEiCMBoL/J14OCsixXFaLpu5zHeIaqYSKIIgjAYDLwEb+84iUmXaiS8//YjvINVK00HFcQUqAJFS6AfcGITRMN9BqpVKoJeCMDoCOM53DpEqNhL4ne8Q1UrTQb0QhNEoYDqwlu8sIilwTC6budl3iGqjEuihZHWwh4C9fWcRSYn5wNa5bOZd30GqiaaDeu5HqABE+tJQYHLyAUyKRCXQA0EYjQF+6TuHSApNQEuzFpWmgwqUXBfoeeBLvrOIpNQSYPtcNvOa7yDVQCOBwl2ICkDEpwHAH4Mw6uc7SDVQCRQgOStYQ1ER/3YEfuo7RDXQdFCekp1RTwJf8Z1FRABoIz5a6HXfQSqZRgL5Ow4VgEg5qUNLt/aaRgJ5CMJoEPAGsJ7vLCLyOfvmspkHfIeoVBoJ5OdnqABEytUlQRjV+g5RqbotATPLmdlrZjbNzF42syN78kZmdq+ZbZp8f7yZbdblZweb2UU9ed1SC8JoM+BU3zlEZJW+DJzoO0Sl6nY6yMxywIHOuZfNbDvgCWBD59xHPX5TsynAb5xz9/T0NfpKEEb3Avv7ziEiqzUPGJ3LZub7DlJpCpoOcs69CCwENjWz3yQjg5eT72sBzOw7Zvaqmb1kZtPNbIvk/pyZbWVm3yI+vOvy5DETkpHBbcnjHjazQ5a9p5kdZGaPJt+PTn4+3cxeMLP9kvsHmtmtZvZKMmL5czH+4wRhdCAqAJFKsDZa1a9HCioBM9uLeOWsvYExxEvAbQ9sB3wnedhFwETn3BhgLDC762s45yYDzwGnOOfGOOceWuFtrgO+2eXPxwOTk+9vAm52zm0DTAJuNLMRwL7AWs65LznntqUIQ8MgjOqBS3v7OiLSZ76fTN9KAfItgdvM7CXgv4CvE3+Sv8451+qcayXeSE9IHvsIMNnMTgY2cM4tLjDT7cCeZjbczNYGxgG3m9kg4uKZDOCce4V4Na+dgWnAFmZ2pZkdAbQU+J4rczIwugivIyJ9Q4eM9kC+JXB48ql9T+fcg4ABK+5MWPbnw4CfAGsAj5pZQdMpSWncCRwFHA3c6ZxrTt5zFU9xs4AtgQeJy2iamfV4rd8gjAYCZ/b0+SLizYFBGH3Vd4hK0tNDRB8EjjezOjOrI56+ecjM+gGbOOeecc5lgQeIp4pWtAAYsprXv454Guh4ln/yX0D8yf+bAMm+hm2Bp81sFNDhnPsrcBowAujNcnQnAev04vki4o8uJ1GAnpbANcQrar2Y3KYDvwdqgevMbIaZTSNeFu7qVTz/XDN70cwmrPhD59xUYDAw2Dn3jy4/OgaYZGbTgZuBY51zHwJbA08m7/kM8Gvn3L978osFYTQAOKMnzxWRsjA+CKOdfIeoFDpjeAVBGJ0KXOY7h4j0yu25bOZw3yEqgUqgi+SIoFnABr6ziEivdAJb5LKZN30HKXe6bMRnHYMKQKQa1KBp3bxoJJBILhX9MlowRqRaLAWCXDYz13eQcqaRwHIZVAAi1aQ/cIrvEOVOJbDcj30HEJGi+14QRmv6DlHOVAJAEEY7AHv6ziEiRTeU5Ze0kZVQCcS+7TuAiJTMaVqUftVSXwJBGDUAPVojQUQqwih0NeBVSn0JAAcDa/kOISIl9S3fAcqVSuCzl60Wkep0YBBGI3yHKEepLoEgjNYjXotARKpbHfHJoLKCVJcA8T8K7TASSYfjfQcoR2kvAU0FiaTHtkEYbeU7RLlJbQkEYbQ98SWoRSQ9jvIdoNyktgTQ0FAkjb7hO0C5SeUF5IIwqgP+DQz3nUVE+txXctnMM75DlIu0jgR2RwUgklY6ObSLtJaADgsVSa+v+Q5QTtI6HfQiMMZ3ju4s/uczzJ96I+DAOYbudjQDN98V197Kxw//nqX/egmrradhgy1Ye7+TP/f8+Y//icWvToWaGqymlqF7HseATXYAYNHMR1nw9O20fTSbtb76nwze4aA+/u1EvBqdy2be8h2iHKTuGPkgjNYFtvWdozvOOebdczHrHnMB9SMCWj94mzk3ncmGm+3MJ1MmY/3qWf8/r8HM6Gj+ZKWv0TByMwbv9DVq6vrT+sEs5tx8NqO+fwM1dQ3Ur7Mxww8+kwVP3drHv5lIWZgAqARI53TQRMB8h8iL1dDZshiAzpZmatdYC9fWwqKXH2HoHpMwi3+N2jVWfumjAZvsQE1dfwDqRmwMztG5ZCEA9SMC6odvBJbGfwIi7OM7QLlI3UiACtkfYGYMP+QsPvzL+VhdA651Cesc/nPa579P7YBBND3+J5bOno7V9WfonsfSf9SXV/t6zS8/Qt1aI+k3WPvDRYC9gjCqyWUznb6D+Jaqj4HJOsITfefIh+vsYMFTtzLisJ8y6qTJjPj6z/jwzgvpXNpM+/w51K+7CSO/eRlrjf8WH97xq09HDCuzdPYM5k+9keEHafE0kcQwYHvfIcpBqkoA2A6oiCsJts6dRceij+k/Kl72uP+oL2F1DVhdA9TUMnDLcQA0rL85tQMG0/bxeyt9nZb3XuWjey5mxGHnULf2qD7LL1IBJvgOUA7SVgIVMRUE0G/QcNoXfkTbvHcBaPvoHTqbP6Hf0JH032gbluZejO//+D06FjdRt9bIz71Gy/tv8OGdFzLi0LNpWG90n+YXqQAqAVJ2iGgQRlOAcb5z5GvRzEdZ8NRtkOwAHrr7MQzcbBfa5s9h3r2X0blkIVbbj6F7HMuATXcEYO6tP2fo7pNoGPlF3r/+NNqb5lI7aO1PX3P4gT+ifkRA8yuP8cmj19LZsgir6YfV9Wedb5wX7ywWSYelwFq5bGap7yA+9agEzGwtYEPn3PTiRyqNIIwGAvOJrysuIgKwTy6bech3CJ/yng4ysylmNtjMhgHTgMlmdknpohXd1qgAROSzUj8lVMg+gSHOuQXAYcBk59wOVNZ/wLI/Q1hE+txY3wF8K6QE+pnZSOA/gHtKlKeUVAIisqLULzJTSAn8ArgfeMs596yZbQK8WZpYJaESEJEVrROE0Tq+Q/iUiqODgjCqARYAa/jOIiJlZ0Ium3nYdwhfCtkxPMrM7jCzD8xsrpndbmaVcvbRaFQAIrJyqV5mtpDpoMnAXcD6wAbA3cl9lUBTQSKyKiqBPI1wzk12zrUnt+uokEswUAGXjhYRb1QCefrIzCaZWW1ymwTMK1WwItNIQERW5cvJfsNUKuQXP4H48NA5wPvA4cC3ShGqBFQCIrIqA4FNfIfwpZD1BDZ0zh3c9Q4z2w2YXdxIxRWE0VDi/RgiIquyNfBP3yF8KGQkcEWe95UbXRFNRLqz+lWZqli3IwEz2wXYFRhhZqd3+dFgoLZUwYpoQ98BRKTsVcrh7kWXz3RQPbBm8thBXe5fQLxfoNypBESkO+v6DuBLtyXgnHsMeMzMrnPO/asPMhWbSkBEupPaS0cUsmO4wcyuAYKuz3PO7V3sUEWW2mGeiORNI4E83ApcBfwv0FGaOCWxnu8AIlL2UjsSKOTooHbn3O+cc884555fditZsuJJ7V+uiORtUBBG/X2H8KGQErjbzL5nZiPNbNiyW8mSFU+lXNpCRPxK5ZRQIdNB30y+/rjLfY7yP9NOJSAi+VgHqMSDX3ol7xJwzm1cyiClEITRYOJDXEVEupPKqeNC1hMYaGY/TY4Qwsy+aGYHli5aUVTCdJWIlIdUTgcVup5AK/HZwwDvAucXPVFxFTLdJSLplsqp40JKYFPn3IVAG4BzbglgJUlVPJVwWQsRKQ86OqgbrWY2gHhnMGa2KdBSklTFk9prhItIwVI5c1DIL/1z4G/AhmZ2E7AbcHwpQhWRRgIikq9Ubi8KOTroQTN7AdiZeBroVOfcRyVLVhyp/EsVkR5J5Uig0OmSDYg3rPXAnmZ2WPEjFZWmg0QkX6ksgbx/aTO7FtgGmAl0Jnc74C8lyFUsGgnI5wxl4ScPNJz11gBaBvjOIuXjYzdoIWR8x+hzhTTfzs65L5UsSWmoBORz5jNorXPbjq+9qu6yzcyo851HysMgW3K/7ww+FDJd8qSZVVoJaDpIVur+zp22+037fzztO4eUlc7uH1J9CtlIXk9cBK+b2XQzm2Fm00sVrEg0EpBVurLj0N3v7th5iu8cUjYq6RL5RVPIdNC1wLHADCqnMSslp3hyctsp4zex9//x5Zp/7e47i3i32HcAHwoZCcx2zt3lnHvbOfevZbeSJSuOT3wHkPJ3cOv5O3/ohlTC2hhSWgt8B/ChkBJ4zcxuNrOjzOywZbeSJSuOeb4DSPnroLbfXi0Xf3GJq3/Ddxbxqsl3AB8KKYEBxJeJmAgclNzK/Sqi80gucyGyOosYOHhCy0WDOlzN+76ziDepHAmYc9W9jQzC6BNgqO8cUhnG2D9fv6P+Z+ubMch3FulzE2lsetB3iL7W7Y5hMzvTOXehmV3BSj5VO+dOKUmy4vkIlYDk6SU3evNT2n7w3OV1/z3GLJ1nkKZYKqeD8vlH/mry9blSBimhj4DRvkNI5bi7c9cdR3e8N/XUfnfs4TuL9KlUTgd1WwLOubuTbxc7527t+jMzO6IkqYpLO4elYJe2H7HHljZ7ysTa58f7ziJ9Zo7vAD4UsmP47DzvKzflfqVTKVPfafvR+Dc6N3jcdw7pE4tobJrvO4QP+ewT2B84ANjAzC7v8qPBQHupghWRRgLSY5nWX499uuH7Lw2zhWN8Z5GSetd3AF/yGQn8m3h/wFLg+S63u4B9SxetaDQSkB5ro1/9+JaLN17q6t7ynUVK6h3fAXzJZ5/ANGCamd3snGvrg0zFlsp5PimeBaw5ZGLrhQsfrT/9g1pz6/jOIyWhkUAedjKzB83sDTObZWZvm9mskiUrntd9B5DKN9utO+rI1nPnOUez7yxSEqkdCRRSAn8ALgF2B8YCOyZfy90rvgNIdXjWbbHlj9tPnOlcOq82WeVUAnlocs7d55z7wDk3b9mtZMmKJJfNzCferyHSa7d1jNvp9x0H6Iih6pPa60YVUgKPmtlFZraLmW2/7FayZMWl0YAUza/aJ+35WMc2j/nOIUU103cAXwo5Lf4rydcdu9zngL2LF6dkXgEm+A4h1eObbWft+Yj96MlNaubs4juL9NpcGpvKflajVPIuAefcXqUMUmIaCUiRme3XesH2zzacNH2ILd7GdxrpldSOAqCA6SAzW9fM/mBm9yV//pKZfbt00YpKJSBF10pdw/iWS0a1un5v+84ivaISyNN1wP3A+smf3wB+WOxAJZLqv2QpnU8YPGy/1mxNpzOdlFi5Ur19KKQEhjvn/kyybq9zrp0KWZg5l818DMz1nUOq0yy3/heObTt7jnMs8Z1FekQlkKdmM1ubZE0BM9uZyrr+tqaEpGQe79xqq3PaT5jmXPwhSSpGO/Ci7xA+FVICpxNfL2hTM3scuAE4uSSpSmOa7wBS3W7umLDzHzv2meo7hxRkOo1NqT4LvNsSMLOxZraec+4FYBzwE+K1hh+gsq638Q/fAaT6/az9W+Oe6txS5xBUjid8B/Atn5HA1UBr8v2uwDnAlcAnwDUlylUK+oQmfeKo1nP2eKdz+NO+c0heUl8C3S40b2bTnHPbJt9fCXzonGtM/vySc65irrMehNFrwOa+c0j160/LkmcbvjdrkC35ss8cZzywlNtfbSM33zHjpDXYap1aAA69ZTFvz++kxmDNeuOK/fszZr3azz3/uDuWMH3u8uM/ps/t5K9HDuDgzeuYs6iTE+9ZytufdNLWCefsUc+kber77HcrkoDGpn/5DuFTPieL1ZpZv+RooK8C3ynw+eVkKioB6QNLaRgwvuWSdZ9q+MHsOuvYyFeOQ7fox6lfqWePyZ+d9r7+0AEM6W8A3PlaGyfcuYQXTlzzc8+/4WsDPv1+2pwO9r5hMftuGv9vf/r9S9lxZC13HjmQD5s72eGaZsZ9oR8bDilkV6NX76W9ACC/6aA/AY+Z2Z3AEpJpFTMbTWUdHQTwd98BJD3mMWR4pvVXHZ2OT3xl2H2jlW+UlxUAQFOLo8Y+95DP+cOLbRyzdR0N/eIHT5vbyX6j40IYsUYNY9ar5c8zK2rJkdRPBUF+i8r80sweBkYCD7jl80c1VNbRQQAP+w4g6fKG23DjE9rOnD657sKBZjT4ztPV/7trCQ+81Y4D/nbMwNU+trXDcfOMNh46bvnjdhhZyy0vt7Hj+jXk5jueeKeDYGjFjAIAHvQdoBzk9TfmnHvKOXeHc665y31vJEcMVYxcNvNvdL6A9LEpnWO2Oa/92OedY/U74PrY/x48gNmnDeJXezfw4wdbVvvYv77WzkZD7DP7DS6e2MDcZseYq5s55W9L2XvjWuoqqgO4z3eAclBZf2XF8YDvAJI+13bsv+utHePKcjry2G3reTTXzrzFqz7P7doXWzlhu8/u9B2xRg03HjaAad9dk7uPGsiiVthyRMVsUl6msamSDnEvmYr5GysiDQHFizPbTxz3Qudo70WwqNXxTtPyDf7dr7cxbIAxbMDKdwy8u6CTqbM7OHrrus/cP29xJ+2d8eDmkbfbmfHB5x9TxjQKSFTa0T3F8BjxeQ8VdyybVL7DWxt3e7zhlGdH2sd9sjTrKfct5S+vtjFnkWPCDYtZe6DxyHEDOeLWJTS3OWoNhg0w7j5qIGZxCRxw02J+sVcDO64fT/1c/1IbB23W73Ml8cx7HZzytxZqDYYPjF9jYF0ee5jLg0og0e15AtUoCKN7gf1955B0GsjS5mcbTpq9hrVs6TtLSi0E1qaxqaIOZSqVNE4HQXzYq4gXi+m/xldbLh7W7mre850lpR5UASyX1hK4A3TZX/FnDsPWPaT1vCXOVdy5NtXgz74DlJNUlkAum1kE3OM7h6TbTLfx6BPbTpvl3KfX5pLSawbu9h2inKSyBBI3+w4g8kDn2O0uav/Gs75zpMhdNDYt9h2inKS5BO4D5vsOIfI/HYfsdlfHLlN850iJW3wHKDepLYFcNtMC/MV3DhGAU9pOHj+z8wta86K0PgH+5jtEuUltCSQ0JSRl4+DW83f+0A153neOKnYHjU3a/7KCtJfAo8Ac3yFEADqo7bdXy8VfXOLq3/CdpUrd4DtAOUp1CeSymU7g/3znEFlmEQMHT2i5aHCHq3nfd5Yq8yqNTVr2cyVSXQKJP/oOINLVe4xY7+utjQucY6HvLFXkKt8BylXqSyCXzTyPFqGXMvOSG735yW0nv+Ec7b6zVIHFwPW+Q5Sr1JdA4mLfAURWdE/nLjtc3vG1J33nqAK30NikM7NXQSUQuwv4p+8QIiu6tP2IPe7v2EFz2b3zO98ByplKgE93EF/qO4fIypzY9qNxr3eOetx3jgr1HI1Nz/kOUc5UAstdB3zsO4TIyhzY+qux89ygF33nqECa6u2GSiCRy2YWo2GjlKk2+tXv1XLxJktd3Vu+s1SQWcCtvkOUO5XAZ/03sPoVt0U8WcCaQya2XtjQ4ewD31kqxCU0NnX4DlHuVAJd5LKZOcBNvnOIrMpst+6oI1vPnecczb6zlLm5wLW+Q1QClcDnXeI7gMjqPOu22PKMtu++4hz6lLtqF9PYVPDCUWaWM7OXzaxmhfu2Km48MLOhZnbmCvf9r5ntUez3Wh2VwApy2cxM4F7fOURW5/bOPcde05HREUMrN4/e7d9bEzi2SFlWZyjwmRJwzv0/59zUPnjvT6kEVu5soNN3CJHV+XX7MXs+1rHNFN85ytBFNDYt6sXzG4FGM6vveqeZjTSz28zsGTObYWY/6fKzPZL7ppvZb83sX8tGD2b2GzN71symmdnDZvaF5GlXAkPN7CUzeyJ57BQzO9DMNjKzOWZW1+U9bjezbybfH9fl/e4ws3WS+3c1sxeS15xpZkd198uqBFYil81MJz5kVKSsfbPtrHGzOtfTWcXLvQv8tpev8VxyO2mF+28ALnfO7QTsAOxvZvuYWQPwJ+B7zrltgCnARl2el3XOjXXObZs87oLk/u8D851zY5xzu3Z9I+fcbGAmsD+Ama0NjANuS8olC0xM3u9l4IrkqWcBlzrnxgBbES+etVr9untAiv0U+Aawhu8gIqtmtl/rBds/0/C96UOteRvfacrAz2hsWlqE1/kp8KiZ/SH5cy0wHhhhZsseMwjYkngn9JJl0zjOuTvMrOuqhfub2feJp5kK2eZeBxxPfEWDo4E7nXPNZrYXcK9zbtmVZq8GpiXfPwqcnYw2HnTOPd3dm2gksAq5bOZ94CLfOUS600pdw/iWSzZsdf3e9p3Fs5cp0oXinHOvE+8bPD25qxNwwNjkk/sY59ymzrnLAUt+9jnJxvhS4Cjn3FbACUD/PGPcDuyZjAKOZ/nsxMrezyW5LwMOAj4ErjCz87t7E5XA6l0E/Nt3CJHuzGfQWvu2Zms7nX3kO4tHZ9HYVMx9eY3EUzaDiDeyU4Fw2Q/NbEMzWw94DVjDzHZL7j+EeKcvwGCgFZiTHHH03S6vvwAYaGYrHR045xYDdwK/BgZ32WH8MHBA8t4A/wk8lLz3Zs65t5xzVxNPi+3U3S+pEliN5Czic33nEMnH2279jSa1nT3XOQo+NLIKPEpjU1GP6nPOvUu83siw5K5jgC8lO2RnEC9INdQ510I8XXOVmT0N7Exsx4ANAAAJ6UlEQVQ8RdTknJtBfNbyTOAR4O0ur/8x8XlJM5btGF6JycQb+eu7PG8m8cErD5rZdGBb4NTkx6ckO4RfBE4Gzunu9zTnVjqKkUQQRjXAC8T/oUXK3tG1Dz31y37X7mSWmg95ncBONDZ5W5/ZzAY55xYm3+9FvNEOnHNlf5RhWv6R9FhyhdEzfOcQydfNHRN2vqFjnzQtlPQ7nwWQ+HpyCOgM4ELifQBlXwCgkUDegjC6l+RwLZFK8Ke68x7bpfbVcb5zlNj7wBY0Ni3wHaRSaSSQv9PRxeWkghzdds4esztHPOU7R4mdrgLoHZVAnnLZzGvAeb5ziOTLUVMzsfXCbRe6ATN9ZymRB2hsusV3iEqnEijMBYAW9pCKsZSGAeNbLlm3zdXO9p2lyJYSH74pvaQSKEAum2kHvgW0+c4ikq95DBmeaf1VR6ezalo573wam7QueBGoBAqUy2amEV+3Q6RivOE23PiEth+/61xV7Nd6Gv0/WDQqgZ45D3jJdwiRQkzpHLPNL9qPfcG5lV/ioEI0A8dqxbDiUQn0QC6baQMmEc9LilSMyR377/LnjnGP+c7RC2fQ2PSm7xDVRCXQQ8niMz/p9oEiZeas9hPHv9A5+u++c/TAvTQ2XeU7RLVRCfTOZcQXcxKpKIe3Nu72vhv2rO8cBfgI+LbvENVIJdALuWzGEV/idZ7nKCIF6aSm9qstv/lSs+v/qu8seXDACTQ2zfEdpBqpBHopl828C/wH0O47i0ghFtN/jb1bfrN2u6t513eWbmRpbLrbd4hqpRIoglw28wi6yJxUoLkMW+fg1vNbnKPJd5ZVeJB4lS8pEZVAkeSymd+idYmlAr3igk1PbDttlnO0+s6ygtnA0UVeKEZWoBIoru8Cz/gOIVKoBzrHbndB+5HltKO4BTicxqY0r5TWJ1QCRZTLZlqAwwDtwJKKc1XHwbvd2bHrFN85EqfS2FROpVS1VAJFlstm3gO+DmU3tBbp1qltPxg/ozOY2v0jS+oKGpuu9pwhNVQCJZDLZp4AfuA7h0hPHNp63i4fuCG+Vuq6E/ihp/dOJa0sVkJBGP0PcJLvHCKFWoMlC59rOOn9Ada6WR++7bPAeBqbFvfhe6aeRgKldSpwn+8QIoVqZsCgCS0XDe5wNe/30Vu+DRyoAuh7KoESSi40dxjwiO8sIoV6jxHrHdbauNA5Sr1848fA/jQ2fVDi95GVUAmUWC6bWQocDDzhO4tIoaa50Zud3Hbym86V7Iz4xcAhNDa9XqLXl26oBPpALptpBg4AfO1sE+mxezp32eG3HYc9WYKXXgIcRGPTP0rw2pInlUAfyWUzTcBEYIbvLCKFuqz98D3u79hxShFfsgX4Go1Nmir1TEcH9bEgjNYFHgM2951FpFD315/5+OY17+7Wy5dpA76ui8KVB5WAB0EYjQL+DmzsO4tIIepob32q4fsz17aF2/XwJdqBI2lsur2YuaTnNB3kQXL56a8C5X4JX5HPaKNf/V4tF2+y1NW91aOnwyQVQHlRCXiSy2beBvYmPj5apGIsYM0hE1svbOhwVsghnUuAQ2ls+r9S5ZKeUQl4lMtm3gR2AZ7znUWkELPduqOObD13nnM05/Hw+cA+NDbdW+pcUjiVgGe5bGYuMB6IPEcRKcizbostz2j77ivO0bGah80B9qSx6fG+yiWFUQmUgeQ8gkMAXTlRKsrtnXuOvaYjs6oN/CxgNxqbdFh0GdPRQWUmCKOzgV8C5juLSL4m110wZa/aaeO73PU88YlgfXXtIekhlUAZCsJoEnAtUOc7i0h+nHuk/ownN6l5f1fgduA4XQyuMqgEylQQRnsDfwGG+M4iko962pY+UH/mL4KauVkam7RhqRAqgTIWhNFWwD3AF3xnEelGM/CtXDZzq+8gUhjtGC5juWzmZWB7QIfWSTl7G9hVBVCZVAJlLpfNfAwcCJwDqz0UT8SHB4Edc9nMdN9BpGc0HVRBgjAaD9wCrOs5ikg7cD5wfi6b0YeTCqYSqDBBGK0HXE98WWoRH94AJuWymWd9B5He03RQhcllM3OA/YAfAa2e40j6XAlspwKoHhoJVLAgjMYAfwK28J1Fqt77xEf/3O87iBSXRgIVLJfNvATsAFyOdhpL6dwGbKUCqE4aCVSJIIx2AK4CdvSdRapGE/CDXDZzo+8gUjoaCVSJXDbzPPAV4GRggec4UvnuB7ZWAVQ/jQSqUBBGI4FLgW/4ziIV503gR7lsRuv/poRKoIoFYbQv8dEcm/rOImVvAXAecHkum9FRZymiEqhyQRj1Jz7b+Eyg3nMcKT+dxFesPSeXzRSyXKRUCZVASgRhtBnxGZ6Ho7UKJDYVODWXzbzoO4j4oxJImSCMtgb+CzgUlUFazQZ+nMtm/uw7iPinEkipIIy2Iy6Dg3xnkT7zLnAJcFUum1niO4yUB5VAygVhNJa4DPb3nUVK5nXgQuBG7fSVFakEBIAgjHYGfgHs4zuLFM1zQBa4I5fNdPoOI+VJJSCfEYTR7sAPgUOAfp7jSM88DGRz2cxDvoNI+VMJyEolJ5x9G/gOsKHnONI9B/wV+LWu8CmFUAnIagVhVAscAHyX+BLWutRIeXkPuA64NpfNzPKcRSqQSkDyFoRRQDwyOAGtbuZTO3A38Afgb1rZS3pDJSAFC8KoDvgacRl8Fe076CtPAzcB/6eze6VYVALSK0EYDSM+8exwYAJQ5zdR1XmTeMN/Uy6b+afvMFJ9VAJSNEEYDSU++exgYF9gkN9EFWkp8BjwN+Kpntc855EqpxKQkgjCqB4YBxxIXAwb+01U1l4n2egDj+lsXulLKgHpE0EYbQzsCuySfN0GqPUayp+FwCMs/7Sf8xtH0kwlIF4EYbQGsBPLS2FnYG2voUpjIfAS8CLwQnJ7NZfNtHtNJZJQCUjZCMJoc+JSGAOMTm4bUznrIMwj3si/2OXrm7lsRv+TSdlSCUhZC8KohviM5WWlsOkK3w/soygO+ID4Spwru72Vy2be6aMsIkWjEpCKFoTRcGAIMLjL18GruG/Z0UodK9zagMVA8wpfP2L5Rv69XDbT1ie/lEgfUgmIiKSYrgMjIpJiKgERkRRTCYiIpJhKQEQkxVQCIiIpphIQEUkxlYCISIqpBEREUkwlICKSYioBEZEUUwmIiKSYSkBEJMVUAiIiKaYSEBFJMZWAiEiKqQRERFJMJSAikmIqARGRFFMJiIikmEpARCTFVAIiIimmEhARSTGVgIhIiqkERERSTCUgIpJiKgERkRRTCYiIpJhKQEQkxVQCIiIpphIQEUkxlYCISIqpBEREUkwlICKSYioBEZEUUwmIiKSYSkBEJMVUAiIiKaYSEBFJMZWAiEiKqQRERFJMJSAikmIqARGRFPv/WYtBy2UVw80AAAAASUVORK5CYII=\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "pie_chart = pd.Series(percents, index=sentiments, name='Sentimentos')\n", + "pie_chart.plot.pie(fontsize=11, autopct='%.2f', figsize=(6, 6));" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Map of Tweets" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [], + "source": [ + "geolocator = Nominatim(user_agent=\"TweeterSentiments\")\n", + "\n", + "latitude = []\n", + "longitude = []\n", + "\n", + "for user_location in tweets_df['User Location']:\n", + " try:\n", + " location = geolocator.geocode(user_location)\n", + " latitude.append(location.latitude)\n", + " longitude.append(location.longitude)\n", + " except:\n", + " continue" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 31, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "coordenadas = np.column_stack((latitude, longitude))\n", + "\n", + "mapa = folium.Map(location=[-15.788497,-47.879873],zoom_start=4.)\n", + "\n", + "mapa.add_child(plugins.HeatMap(coordenadas))\n", + "mapa.save('lula-bolsonaro.html')\n", + "mapa" + ] + } + ], + "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.2" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}