From e86b13448421614cdf829474266f407d17d793c8 Mon Sep 17 00:00:00 2001 From: spate118 Date: Tue, 6 Sep 2022 22:22:45 +0000 Subject: [PATCH 1/6] first commit --- spate118.ipynb | 382 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 382 insertions(+) create mode 100644 spate118.ipynb diff --git a/spate118.ipynb b/spate118.ipynb new file mode 100644 index 0000000..59b489b --- /dev/null +++ b/spate118.ipynb @@ -0,0 +1,382 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Written text as operational data\n", + "\n", + "Written text is one type of data\n", + "\n", + "### Why people write?\n", + "\n", + " - To communicate: their thoughts, feelings, urgency, needs, information\n", + "\n", + "### Why people communicate?\n", + "\n", + "1. To express emotions\n", + "1. To share information\n", + "1. To enable or elicit an action\n", + "1. ...\n", + "\n", + "### We will use written text for the purpose other than \n", + "1. To experience emotion\n", + "1. To learn something the author intended us to learn\n", + "1. To do what the author intended us to do\n", + "\n", + "### Instead, we will use written text to recognize who wrote it\n", + " - By calculating and comparing word frequencies in written documents\n", + " \n", + "See, for example, likely fictional story https://medium.com/@amuse/how-the-nsa-caught-satoshi-nakamoto-868affcef595" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Example 1. Dictionaries in python (associative arrays)\n", + "\n", + "Plot the frequency distribution of words on a web page." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "class=\"menu-item\t54\n", + "\t38\n", + "\t35\n", + "
  • \t28\n", + "\t21\n", + "\t21\n" + ] + } + ], + "source": [ + "import requests, re\n", + "# re is a module for regular expressions: to detect various combinations of characters\n", + "import operator\n", + "\n", + "# Start from a simple document\n", + "r = requests .get('http://eecs.utk.edu')\n", + "\n", + "# What comes back includes headers and other HTTP stuff, get just the body of the response\n", + "t = r.text\n", + "\n", + "# obtain words by splitting a string using as separator one or more (+) space/like characters (\\s) \n", + "wds = re.split('\\s+',t)\n", + "\n", + "# now populate a dictionary (wf)\n", + "wf = {}\n", + "for w in wds:\n", + " if w in wf: wf [w] = wf [w] + 1\n", + " else: wf[w] = 1\n", + "\n", + "# dictionaries can not be sorted, so lets get a sorted *list* \n", + "wfs = sorted (wf .items(), key = operator .itemgetter (1), reverse=True) \n", + "\n", + "# lets just have no more than 15 words \n", + "ml = min(len(wfs),15)\n", + "for i in range(1,ml,1):\n", + " print (wfs[i][0]+\"\\t\"+str(wfs[i][1])) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Example 2\n", + "\n", + "Lots of markup in the output, lets remove it --- \n", + "\n", + "use BeautifulSoup and nltk modules and practice some regular expressions." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import requests, re, nltk\n", + "from bs4 import BeautifulSoup\n", + "from nltk import clean_html\n", + "from collections import Counter\n", + "import operator\n", + "\n", + "# we may not care about the usage of stop words\n", + "stop_words = nltk.corpus.stopwords.words('english') + [\n", + " 'ut', '\\'re','.', ',', '--', '\\'s', '?', ')', '(', ':', '\\'',\n", + " '\\\"', '-', '}', '{', '&', '|', u'\\u2014' ]\n", + "\n", + "# We most likely would like to remove html markup\n", + "def cleanHtml (html):\n", + " from bs4 import BeautifulSoup\n", + " soup = BeautifulSoup(html, 'html.parser')\n", + " return soup .get_text()\n", + "\n", + "# We also want to remove special characters, quotes, etc. from each word\n", + "def cleanWord (w):\n", + " # r in r'[.,\"\\']' tells to treat \\ as a regular character \n", + " # but we need to escape ' with \\'\n", + " # any character between the brackets [] is to be removed \n", + " wn = re.sub('[,\"\\.\\'&\\|:@>*;/=]', \"\", w)\n", + " # get rid of numbers\n", + " return re.sub('^[0-9\\.]*$', \"\", wn)\n", + " \n", + "# define a function to get text/clean/calculate frequency\n", + "def get_wf (URL):\n", + " # first get the web page\n", + " r = requests .get(URL)\n", + " \n", + " # Now clean\n", + " # remove html markup\n", + " t = cleanHtml (r .text) .lower()\n", + " \n", + " # split string into an array of words using any sequence of spaces \"\\s+\" \n", + " wds = re .split('\\s+',t)\n", + " \n", + " # remove periods, commas, etc stuck to the edges of words\n", + " for i in range(len(wds)):\n", + " wds [i] = cleanWord (wds [i])\n", + " \n", + " # If satisfied with results, lets go to the next step: calculate frequencies\n", + " # We can write a loop to create a dictionary, but \n", + " # there is a special function for everything in python\n", + " # in particular for counting frequencies (like function table() in R)\n", + " wf = Counter (wds)\n", + " \n", + " # Remove stop words from the dictionary wf\n", + " for k in stop_words:\n", + " wf. pop(k, None)\n", + " \n", + " #how many regular words in the document?\n", + " tw = 0\n", + " for w in wf:\n", + " tw += wf[w] \n", + " \n", + " \n", + " # Get ordered list\n", + " wfs = sorted (wf .items(), key = operator.itemgetter(1), reverse=True)\n", + " ml = min(len(wfs),15)\n", + "\n", + " #Reverse the list because barh plots items from the bottom\n", + " return (wfs [ 0:ml ] [::-1], tw)\n", + " \n", + "# Now populate two lists \n", + "(wf_ee, tw_ee) = get_wf('http://www.gutenberg.org/ebooks/1342.txt.utf-8')\n", + "(wf_bu, tw_bu) = get_wf('http://www.gutenberg.org/ebooks/76.txt.utf-8')" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#Plot the results: are there striking differences in language?\n", + "import numpy as np\n", + "import pylab\n", + "import matplotlib.pyplot as plt\n", + "\n", + "%matplotlib inline\n", + "def plotTwoLists (wf_ee, wf_bu, title):\n", + " f = plt.figure (figsize=(10, 6))\n", + " # this is painfully tedious....\n", + " f .suptitle (title, fontsize=20)\n", + " ax = f.add_subplot(111)\n", + " ax .spines ['top'] .set_color ('none')\n", + " ax .spines ['bottom'] .set_color ('none')\n", + " ax .spines ['left'] .set_color ('none')\n", + " ax .spines ['right'] .set_color ('none')\n", + " ax .tick_params (labelcolor='w', top='off', bottom='off', left='off', right='off', labelsize=20)\n", + "\n", + " # Create two subplots, this is the first one\n", + " ax1 = f .add_subplot (121)\n", + " plt .subplots_adjust (wspace=.5)\n", + "\n", + " pos = np .arange (len(wf_ee)+1) \n", + " ax1 .tick_params (axis='both', which='major', labelsize=14)\n", + " pylab .yticks (pos, [ x [0] for x in wf_ee ])\n", + " ax1 .barh (range(len(wf_ee)), [ x [1] for x in wf_ee ], align='center')\n", + "\n", + " ax2 = f .add_subplot (122)\n", + " ax2 .tick_params (axis='both', which='major', labelsize=14)\n", + " pos = np .arange (len(wf_bu)+1) \n", + " pylab .yticks (pos, [ x [0] for x in wf_bu ])\n", + " ax2 .barh (range (len(wf_bu)), [ x [1] for x in wf_bu ], align='center')\n", + "\n", + "plotTwoLists (wf_ee, wf_bu, 'Difference between Pride and Prejudice and Huck Finn')" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "and\t2836\n", + "of\t2676\n", + "to\t2646\n", + "a\t2217\n", + "in\t1422\n", + "his\t1205\n", + "he\t928\n", + "that\t920\n", + "was\t823\n", + "for\t798\n", + "with\t797\n", + "as\t672\n", + "I\t505\n", + "you\t497\n" + ] + } + ], + "source": [ + "#In case Project gutenberg is blocked you can download text to your laptop and copy to the docker container via scp\n", + "#Assuming the file name you copy is pg4680.txt here is how you change the script\n", + "# Please note the option errors='replace'\n", + "# without it python invariably runs into unicode errors\n", + "f = open ('pg4680.txt', 'r', encoding=\"ascii\", errors='replace')\n", + " \n", + "# What comes back includes headers and other HTTP stuff, get just the body of the response\n", + "t = f.read()\n", + "\n", + "# obtain words by splitting a string using as separator one or more (+) space/like characters (\\s) \n", + "wds = re.split('\\s+',t)\n", + "\n", + "# now populate a dictionary (wf)\n", + "wf = {}\n", + "for w in wds:\n", + " if w in wf: wf [w] = wf [w] + 1\n", + " else: wf [w] = 1\n", + "\n", + "# dictionaries can not be sorted, so lets get a sorted *list* \n", + "wfs = sorted (wf .items(), key = operator .itemgetter (1), reverse=True) \n", + "\n", + "# lets just have no more than 15 words \n", + "ml = min(len(wfs),15)\n", + "for i in range(1,ml,1):\n", + " print (wfs[i][0]+\"\\t\"+str(wfs[i][1])) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Assignment 1\n", + "\n", + "1. Compare word frequencies between two works of a single author.\n", + "1. Compare word frequencies between works of two authors.\n", + "1. Are there some words preferred by one author but used less frequently by another author?\n", + "\n", + "Extra credit\n", + "\n", + "1. The frequency of a specific word, e.g., \"would\" should follow a binomial distribution (each regular word in a document is a trial and with probability p that word is \"would\". The estimate for p is N(\"would\")/N(regular word)). Do these binomial distributions for your chosen word differ significantly between books of the same author or between authors? \n", + "\n", + "Project Gutenberg is a good source of for fiction and non-fiction.\n", + "\n", + "E.g below are two most popular books from Project Gutenberg:\n", + "- Pride and Prejudice at http://www.gutenberg.org/ebooks/1342.txt.utf-8\n", + "- Adventures of Huckleberry Finn at http://www.gutenberg.org/ebooks/76.txt.utf-8" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import requests, re, nltk\n", + "#In case your text is not on Project Gutenberg but at some other URL\n", + "#http://www.fullbooks.com/Our-World-or-The-Slaveholders-Daughter2.html\n", + "# that contains 12 parts\n", + "t = \"\"\n", + "for i in range(2,13):\n", + " r = requests .get('http://www.fullbooks.com/Our-World-or-The-Slaveholders-Daughter' + str(i) + '.html')\n", + " t = t + r.text" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "1323653" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(t)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.5.2" + } + }, + "nbformat": 4, + "nbformat_minor": 1 +} From 134bbce0d6520e5d1b082c741f9e3305485a2644 Mon Sep 17 00:00:00 2001 From: spate118 Date: Sun, 11 Sep 2022 15:08:19 +0000 Subject: [PATCH 2/6] compared the two authors --- spate118.ipynb | 195 +++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 180 insertions(+), 15 deletions(-) diff --git a/spate118.ipynb b/spate118.ipynb index 59b489b..fbf634b 100644 --- a/spate118.ipynb +++ b/spate118.ipynb @@ -312,20 +312,185 @@ }, { "cell_type": "code", - "execution_count": 18, - "metadata": { - "collapsed": true - }, - "outputs": [], + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "iPhone 14\n", + "new : 52\n", + "iphone : 44\n", + "14 : 34\n", + "(opens : 31\n", + "tab) : 24\n", + "apple : 12\n", + "pro : 12\n", + "have : 12\n", + "more : 10\n", + "but : 10\n", + "i : 10\n", + "may : 9\n", + "what : 9\n", + "some : 9\n", + "also : 9\n", + "tech : 8\n", + "your : 8\n", + "us : 7\n", + "its : 7\n", + "truedepth : 7\n", + "camera : 7\n", + "best : 6\n", + "how : 6\n", + "powerful : 6\n", + "a15 : 6\n", + "\n", + "\n", + "iPhone 14 Pro\n", + "iphone : 53\n", + "new : 49\n", + "14 : 37\n", + "(opens : 31\n", + "pro : 31\n", + "apple : 27\n", + "tab) : 24\n", + "i : 16\n", + "all : 15\n", + "screen : 15\n", + "its : 11\n", + "like : 11\n", + "from : 11\n", + "13 : 10\n", + "what : 9\n", + "- : 9\n", + "dynamic : 9\n", + "have : 9\n", + "tech : 8\n", + "best : 8\n", + "more : 8\n", + "up : 8\n", + "not : 7\n", + "also : 7\n", + "powerful : 7\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAoIAAAFNCAYAAACUpg7pAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAAsTAAALEwEAmpwYAABAnElEQVR4nO3debhcZZXv8e+PMAQIJAyRZgpRiMwkkgOX2YBI24oiAhcZRISWRpGINiDXEW1RUFsaUMCodJgEGhRkUOYphIQMZGRWEhsEmYeEMSTr/rHfIjuHOufUOTlVe1fV7/M89WTXnmoVgcVb7957LUUEZmZmZtZ+Vig6ADMzMzMrhgeCZmZmZm3KA0EzMzOzNuWBoJmZmVmb8kDQzMzMrE15IGhmZmbWpjwQtMJJekDSmBr2O1LSPfWPyMys8ZwLrQgeCFrhImLriLgTQNKpkhZJWijpZUn3Stq54BCXIWlPSXdIekXS/G72+7CkkPTDBoZnZk2qnXOhpPGS3k7f90VJt0jaoi6B2zI8ELQyuiIiBgFDgXuAP0hSwTHlvQZcAJzU1Q6SVgLOAu5rVFBm1nLaLRf+JH3fjYBngfFVzidJHrv0I//DtMJJmi9p787rI2IRcCHwT8A6uf1/JuklSfMk/Utu/QaSrk2/Jv8i6Yu5badK+h9JF0lakC7BdHQ69veSnkvnHdtVvBExJSIuBh7v5mv9O3Az8HCN/xjMrM05F7573teB3wHbpJjulHSapInA68AHJO0iaWqajZwqaZdaz2/L8kDQSkvSKsCRwBMR8Xxa/X+AR4B1gZ8Av839Qr4ceBLYADgQ+JGkvXKn/FTaZwhwLfCL9DkrANcBs4ANgY8AJ0j65z7GvQlwFPCDvhxvZpbXbrlQ0iDgMGBGbvXngGOANYAFwA3A2WQD458DN0haB+s1DwStjP6vpJeBJ4DRwP65bX+LiF9HxGKyX8jrA+tJ2hjYFfhGRLwZETOB3wBH5I69JyL+lI69GBiZ1u8ADI2IH0TE2xHxOPBr4LN9jP9s4DsRsbCPx5uZQfvlwhPT9/0LMIhs8FsxPiIeiIh3gH2AxyLi4oh4JyIuI5tx/GQf42xrKxYdgFkV/xMRh3ex7R+VhYh4Pf0AHkT2q/DFiFiQ2/dvQEe1Y8kuLwyUtCKwCbBBSkAVA4AJvQ1c0ieBNSLiit4ea2bWSbvlwp9FxLe72PZEbnkDsu+U9zeyWUzrJQ8ErVU8BawtaY1cAhwG/L2GY58A5kXEiH6I4yNAh6RKoh0MLJa0bUTs1w/nNzPrTqvmwsgtP0U2aM0bBtzYh/O2PV8atpYQEU8A9wI/ljRQ0nbA0cAlNRw+BVgg6RuSVpU0QNI2knaotrOkFSQNBFbK3mqgpJXT5u8AHwRGpde1ZJdWvrAcX8/MrCZtkgv/BHxQ0qGSVpR0MLAVcH0/nLvteCBoreQQYDjZr8Wrge9FxK09HZTuk9mXLFnNA54nu6dmcBeH7AG8QZaMhqXlm9O5FkTEPyqvtO21iHix71/LzKxXWjoXRsQLKc5/B14ATgb2zT1IY72giOh5LzMzMzNrOZ4RNDMzM2tTHgiamZmZtSkPBM3MzMzalAeCZmZmZm3KA0EzMzOzNuWC0n207rrrxvDhw4sOw6ztTJ8+/fmIGFp0HNZ7zptmxekqd3og2EfDhw9n2rRpRYdh1nYkdW4tZU3CedOsOF3lTl8aNjMzM2tTHgiamZmZtSkPBM3MzMzalAeCZmZmZm3KA0EzMzOzNuWBoJmZmVmb8kDQzMzMrE15IGhmZmbWpjwQNDMzM2tTHgiamZmZtSm3mOur6dNBqt/5I+p3bjOzAtQ7bVbjVGrWvbaZEZR0mqQnJC3stP5ISc9Jmple/1pUjGZmZSNpFUm3pvx4cDf7HSnpF42MzcyWXzvNCF4H/AJ4rMq2KyLiKw2Ox8ys1CStCHwIICJGFRuNmdVDS84ISrpG0nRJD0g6BiAiJkfE00XHZmbWF5KGS3pY0qWSHpJ0laTVJH1E0gxJcyRdkGbwdpD0h3TcfpLekLSypIGSHk/rN5V0Y8qVEyRtkdaPl3S+pPuAccAlwA5pRnBTSfMlrZv27ZB0ZzH/RMysP7TkQBA4KiJGAx3AWEnr9LD/AZJmp8S6cVc7STpG0jRJ057r13DNzGqyOXBuRGwJvAp8HRgPHBwR25Jd5fkSMAMYlY7ZHZgL7AD8H+C+tH4ccHzKlScC5+Y+ZyNgl4g4CvhXYEJEjIqIv/Y24HzeBGdOs7Jp1YHgWEmzgMnAxsCIbva9DhgeEdsBtwAXdrVjRIyLiI6I6Bjar+GamdXkiYiYmJYvAT4CzIuIR9O6C4E9IuId4K+StgR2BH4O7EE2KJwgaRCwC3ClpJnAr4D1c59zZUQs7o+A83kTnDnNyqbl7hGUNAbYG9g5Il5Ply0GdrV/RLyQe/sb4Cf1jM/MbDl0fgb2ZaCrKx53A/8CLAJuJZs5HACcRDYJ8HI39/291k0M77B0EqHL3GpmzaEVZwQHAy+lQeAWwE7d7Swp/yv4U8BD9QzOzGw5DJO0c1o+FJgGDJe0WVr3OeCutDwBOAGYFBHPkQ0YNwfmRsSrwDxJBwEoM7LGGOYDo9PyAcvxXcysBFpxIHgjsKKkh4DTyS4PI+knkp4EVpP0pKRT0/5j00Mls4CxwJE1fcro0VmBqnq9zMze6xHguJTf1gLOBL5Adol3DrAEOD/tex+wHtnMIMBsYE7EuwnmMODolPseAParMYbvA2dl9/zRq8vH9U6bTqVmvafwfyl90tHREdOmTSs6DLO2I2l6dr9Ze5E0HLg+IrYpOpa+ct40K05XubPl7hFsGHcWMTPrFXcWMSufVrw0XJWr45tZM4uI+Y2eDczXDDSz1tQWM4Kujm9mZmb2Xg2fEXR1fDOz8qnWkSm3bXVJN0iaJWlu5apKtbxdTPRm1ldFXRpuuur44M4iZtbSuuvI9DHgqYgYmS5P3yhpINXz9jLcWcSs3IoaCDZddXxwZxEza2nddWSaA3xU0hmSdo+IV8h+0L8nb3c+qTuLmJVbUfcIujq+mVlJ9NSRKSIelbQ98HHgh5JuA/5YQKhm1s+KmhF0dXwzs/LotiOTpA2A1yPiEuCnwPZkxa27yttm1iSKGgg2dXV8wJ1FzKyVVO3IlLMtMCXdgvM94IcR8SZd5+2q3FnErHwa3lmkFarjgyvkmxWlXTuLtALnTbPidJU7W6qgdCpNM7chH1YpkV+vl5lZk0iF+Dfoab96p02nUrPea/hAsIjq+GZmVldHAj0OBM2sfFpqRjAZIOnXqSjqzZJWlTRK0mRJsyVdLWktSe+TNB1A0khJIWlYev9XSasV+zXMzIqRrq48VGMuPZCs9uClqWD/qkXHb2a1a8WB4AjglxGxNVlZmgOAi4BvRMR2ZPWwvhcRzwIDJa1JVpdwGrC7pE2AZyPi9UKiNzMrh1pz6VVk+fOwVLD/jaICNrPea8Vew/MiYmZang5sCgyJiEpZgwuBK9PyvcCuZEVQf0RWPV9kJWveI7VdOgZgWD0iNzMrj97k0i7l86Yzp1n5tOKM4Fu55cXAkG72vZtsNnATsuKoI4Hd6GIg6M4iZtZGepNLu+TOImbl1ooDwc5eAV6StHt637lY9eHAYxGxBHiRrHL+PQ2P0sys3LrLpQuANQqJysyWSyteGq7m88D56QGQx8mKoBIR8yWJpcWq7wE2ioiXignTzKzUquZSstaf50t6g6xNne8TNGsSDS8o3SpcGNWsGC4o3bycN82K0xYFpc3MzMysdi1zabg/WtdJGgO8HRH39rhzpUR+vXim1sxaTL3TZi2cWs2W5RnBZY0Bdik6CDMzM7NGaLWB4IqSLk0V8a+StJqk0ZLukjRd0k2S1geQNFbSg6lC/uVpRvFY4GupOv7u3X6SmVmb6NzHXdKJkk6VdKeks1LOnCtpxyLjNLPea5lLw8nmwNERMVHSBcBxwP7AfhHxnKSDgdOAo4BTgPdHxFuShkTEy5LOBxZGxM8K+wZmZs1ltYgYJWkP4ALAveTNmkirDQSfiIiJafkS4JtkSemWrEoMA4Cn0/bZZL0xrwGuqeXk7ixiZvYelwFExN2S1qz8sK5sdGcRs3JrtYFg59uAFwAPRMTOVfb9BFlruU8C35K0bY8njxgHjAPokHzLsZm1i3dY9laigbnlzrlwmff5vCl1OG+alUyr3SM4TFJl0HcoMBkYWlknaSVJW0taAdg4Iu4AvgEMBgbh6vhmZtU8A7xP0jqSVgH2zW07GEDSbsArEfFKEQGaWd+02kDwEeA4SQ8BawHnAAcCZ0iaBcwkeyp4AHCJpDnADODsdCnjOmB/PyxiZrZURCwCfgBMAW4BHs5tflPSDOB84OgCwjOz5eDOIn3kCvlmxXBnkfKQdCdwYkTUlAydN82K484iZmZmZraMVntYpHEaXSLfM7dmVjIRMaY3+7uziFn5tP2MoCQPhs3Mesm506w1lGogKOmI1OljlqSLJX1S0n2SZki6VdJ6ab9TJV0oaYKkv0n6jKSfSJoj6UZJK6X9uuoqcqek/5I0DfhqV59jZtZqUpeQhyWNl/Ro6sa0t6SJkh6TtKOktSVdk/LxZEnbpWNPTbl5InCxpKGSfi9panrtWvDXM7NeKs0vOklbA98GdomI5yWtTVaPaqeICEn/CpwM/Hs6ZFNgT2ArYBJwQEScLOlq4BOSbiB7arhaVxGAlSs3TUpaq5vPMTNrNZsBB5Hlw6lk5bZ2Az5FVoj/CWBGRHxa0l7ARcCodOxWwG4R8Yak3wFnRsQ9koYBNwFbNvSbmNlyKc1AENgLuDIingeIiBdTkecr0kzeysC83P5/johFqQTMAODGtH4OMJys3VxXXUUArsgtb9TN57zLnUXMrEXMi4g5AJIeAG5LP4Qr+XMT4ACAiLg91Q9cMx17bUS8kZb3BrbS0hv/1pQ0KCIWVla4s4hZuZXq0nAV5wC/iIhtgX9j2Wr2bwFExBJgUSytg7OEbIArsq4io9Jr24jYJ3f8azV+zrsiYlxEdEREx9D++HZmZsV4K7e8JPe+kj+7k8+dK5BdTank2Q3zg0BYNm+CM6dZ2ZRpIHg7cJCkdQDSpeHBwN/T9s/38nyPUKWrSBf7Ls/nmJm1mgnAYQCSxgDPR8SrVfa7GTi+8kbSqAbEZmb9qDQDwYh4gOwevrtSF5CfA6cCV0qaDjzfy/O9TfWuItX0+XPMzFrQqcBoSbOB0+n6B/JYoCM9VPIgcGyD4jOzfuLOIn3kCvlmxXBnkeblvGlWHHcWMTMzM7Nl1GUgKGmIpC/X49zp/At73qvLY0+QtNpyn6tSIr9RLzOzOkh1Becu5znGSOrq1pt3NTptOpWa9axeM4JDgPcMBEtSif4EYLWedjIzs5qNoet7sM2sxOo1EDwd2FTSzFRtfoKka4EHO//6lHSipFPT8qapM8j0dMwWaf37JU1KnUN+mP8gSSelz5gt6ftpXaVy/qWSHpJ0laTVJI0FNgDukHRH7hynKetmMtldRcysDa1YJV921ZlprKQHU869XNJwsodEvpZy/u6FfhMz65V6DQRPAf4aEaOAk4Dtga9GxAd7OG4ccHxEjAZOBM5N688Czkt1/t4tCi1pH2AEsCNZ1fvRkvZImzcHzo2ILYFXgS9HxNnAU8CeEbFn2m91YHJEjATuBr7Y529tZtacOufL48jqqx6Y8vEFZFUdIMvvH4qI7YBjI2I+cD5Zh5FRETGh4dGbWZ816mGRKRFRtVtHhaRBZJcWrpQ0E/gVsH7avCtwWVq+OHfYPuk1A7gf2IJsYAjwRERMTMuXkLVPquZt4Pq0PJ2sqn5XMR4jaZqkac9192XMzJpL53z5zyztzDSTrP3nRmn7bOBSSYcD7/R04nzeBGdOs7Jp1D17+Ur077DsALTSxWMF4OU0i1hNtTo3An4cEb9aZmV2qaLz/l3Vycl3JVlMN/9MImIc2awlHZLr7phZq+iczxaQdWbaucq+nwD2AD4JfCu1Au36xLm8KXU4b5qVTL1mBBcAa3Sx7Rngfal35SrAvgCpav08SQcBKDMyHTMR+GxaPix3rpuAo9JsIpI2lPS+tG1YpasIWUP1e2qIzcysHXXOl5Op0plJ0grAxhFxB/ANsq5Mg3BeNWtadRkIRsQLwMT0UMhPO21bBPwAmALcAjyc23wYcHTqBPIAsF9a/1XguNQQfcPcuW4GfgdMStuuYmkyeiQd8xCwFnBeWj8OuDH/sIiZWZvrnC/PoXpnpgHAJSnfzgDOjoiXgeuA/f2wiFnzacnOIunS8PURsU29PsMV8s2K4c4izct506w47ixiZmZmZstoyYFgRMzvajZQ0r3pz+GSDu3zh7iziJk1ueXpAiVpvKQDe3OMO4uYlU9LDgS7ExGV6vfDyW6KNjNrV0Oo0gXKzNpH2w0Ec72FTwd2Tzc3fy09ETclvZ8taUR35zEzawH5LlA/rdapCUDSEWndLEn5Wq57SLpX0uO9nR00s3IoQ+/fopwCnBgR+wJIOgc4KyIulbQy2dNxZmat7BRgm4gYlTo1HUjWqUnAtalT0wtkBaV3iYjnJa2dO359smL9WwDXklVuMLMm0s4Dwc4mkRVH3Qj4Q0Q81nkHSccAxwAMa3BwZmZ1lu/UBFl9wBHASODKiHgeICJezB1zTUQsIesjX7VPez5vOnOalU/bXRruSkT8DvgU8AbwJ0l7VdlnXER0RETH0IZHaGZWV5VOTaPSa7OI+G0Px7zV6fj3yOdNcOY0K5t2HgguUwlf0geAxyPibOCPwHZFBWZm1iD5PNhVp6bbgYMkrZPWr131TGbWlNr50vBsYHGqmj8eWAX4nKRFwD+AHxUYm5lZ3UXEC5IqXaD+zNJOTQALgcMj4gFJpwF3SVpMdun4yKJiNrP+1ZKdRRrBFfLNiuHOIs3LedOsOO4sYmZmZmbLaOdLw8unUiK/UTxza2b9pBH92KtpdNqshVOrtTvPCJqZmZm1qbYbCKYew3Nz70+UdKqksZIeTNXzLy8yRjOzBhgg6deSHpB0s6RVJX0xdRaZJen3klaTNFjS3yStACBpdUlPSFpJ0qaSbpQ0XdIESVsU/aXMrHfabiDYjVOAD0XEdsCxRQdjZlZnI4BfRsTWwMvAAWTF9HeIiJHAQ8DREfEKMBP4cDpuX+CmiFgEjAOOj4jRwInAuY39Cma2vHyP4FKzgUslXQNcU20HdxYxsxYyLyJmpuXpwHBgG0k/BIaQdRa5KW2/AjgYuAP4LHBuqje4C3Cllt74t0rnD3FnEbNya8cZwXdY9nsPTH9+AvglsD0wVdJ7BsnuLGJmLSTfFWQx2cTAeOArEbEt8H2W5sdrgY+lYtKjyYpMrwC8nOtEMioituz8Ie4sYlZu7TgQfAZ4n6R1JK1CdpljBWDjiLgD+AYwmOzXsJlZO1kDeFrSSsBhlZURsRCYCpxF9rTx4oh4FZgn6SAAZUYWEbSZ9V3bXRqOiEWSfgBMAf4OPAwMAC6RNJisX+bZEfFycVGamRXiO8B9wHPpzzVy264ArgTG5NYdBpwn6dvASsDlwKyGRGpm/cKdRfrIFfLNiuHOIs3LedOsOO4sYmZmZmbLaLtLw/2m6BL5nsk1a2uSTgUWRsTPGvy5PwDujohbe3ts0WmzGqdSa3ceCHZB0oCIWFx0HGZmZRIR3y06BjPrPy1xaVjSDySdkHt/mqSvSvqppLmS5kg6OG0bI+n63L6/kHRkWp4v6QxJ9wMHNfhrmJl1S9K3JD0q6R5gc7LuIPfnto+ovE/57PuS7k85cIu0fkdJkyTNkHSvpM3T+iMlXSPplnTsVyR9Pe03OZWOQdJ4SQem5R3SOWZJmiJpjc4xm1m5tcRAELgAOAIgtUH6LPAkMAoYCewN/FTS+jWc64WI2D4i3GbOzEpD0miy3DYK+DiwA1n9v1ckjUq7fQH479xhz0fE9sB5ZJ0/IKuUsHtEfAj4LvCj3P7bAJ9J5z4NeD3tN4mUY3PxrEz2JPFXUyeSvYE3+uO7mlnjtMSl4YiYL+kFSR8C1gNmALsBl6XLu89Iuossub3aw+mu6GqDO4uYWYF2B66OiNcBJF2b1v8G+IKkr5N1/9gxd8wf0p/TyQZ4kNVJvVDSCCDIyr5U3BERC4AFkl4Brkvr5wDbdYpnc+DpiJgKkOoKvoc7i5iVW6vMCEKWDI8k+0V8QTf7ddVZpOK1rg50ZxEzK6HfA/9CVhx/ekS8kNtW6R5S6RwC8B9kA75tgE+ybA7MdxtZknu/hD5OHLiziFm5tdJA8GrgY2SzfjcBE4CDJQ2QNBTYg6yI9N+ArSStImkI8JGC4jUz6427gU9LWjXdi/dJgIh4kyznnceyl4W7MpismD5kP5776hFgfUk7AEhao1prTjMrt5b5jzYi3pZ0B1nvy8WSrgZ2JqtyH8DJEfEPAEn/A8wF5pFdRjYzK7WIuF/SFWQ57Vmylm8VlwL7AzfXcKqfkF0a/jZww3LE83Z6CO8cSauS3R+4N7Cwr+c0s8Zrmc4i6SGR+4GDIuKxen+eK+SbFcOdRd5L0onA4Ij4TtGxdMd506w4XeXOlpgRlLQVcD3ZjdR1HwSamZVFuvqxKbBX0bGYWfNpiYEg8BTws4g4t7cHShoPXB8RV/XqwKJL5LfITK6ZLZ+I2L/oGGpVdNqsxqnU2l2rPCwyBPhy0UGYmZmZNZNWGQieDmwqaWbqJnKSpKmSZkv6fmUnSUekdbMkXZw7fo9UHf/xSsV8MzMzs1bXKpeGTwG2iYhRkvYBDiQrqirgWkl7AC8A3wZ2iYjnK+2SkvXJClBvAVwL9O4ysZmZmVkTapWBYN4+6VUpCzMIGEHWau7KiHgeICJezB1zTUQsAR6UtF5XJ3ZnETOz3nFnEbNya5VLw3kCfhwRo9Jrs4j4bQ/H5Kvpd3krszuLmJm9l6Tj0q05MyVtkN/mziJm5dYqA8EFwBpp+SbgKEmDACRtKOl9wO3AQZLWSevXrnomMzPrlYj4Ze7H91NFx2NmtWuJS8MR8YKkiZLmAn8GfgdMUlanYCFweEQ8IOk04C5Ji8kuHR9ZVMxmZmZmRWuZziKN5gr5ZsVwZ5Hm5bxpVpyucmerXBo2MzMzs16qaSAoadt6B1JPkuZLWrdfT1opkV+Wl5k1jTLnVEkLe7n/GEm71LJv2dKmU6dZ7TOC50qaIunLkgbXNSIzs9bXSjl1DFDTQNDMyqemgWBE7A4cBmwMTJf0O0kfrWtkfSTpGknTJT2Q6lflt60u6YbUWWSupIPT+o9ImiFpjqQLJK1STPRm1g6KzKmp89LYtHympNvT8l6SLk3Lp6U8OblSW1XSJyXdl3LlrZLWkzQcOBb4Wiods3sjvoOZ9Z+a7xGMiMfIOnN8A/gwcLakhyV9pl7B9dFRETEa6ADGVsrFJB8DnoqIkRGxDXCjpIHAeODgiNiW7EnqLzU6aDNrLwXm1AlAZcDWAQyStFJadzewOjA5Ikam919M+94D7BQRHwIuB06OiPnA+cCZqXTMhDrHbmb9rNZ7BLeTdCbwELAX8MmI2DItn1nH+PpirKRZwGSyX9sjctvmAB+VdIak3SPiFWBzYF5EPJr2uRDYo9qJJR0jaZqkac/V8QuYWWsrOKdOB0ZLWpOsmP4ksgHh7mSDxLeB63P7Dk/LGwE3SZoDnARsXcuH5fMmOHOalU2tM4LnAPcDIyPiuIi4HyAVDv12vYLrLUljgL2BndOv2RnAwMr2NNjbnmxA+ENJ3+3N+d1ZxMz6SWE5NSIWAfPI6qjeSzb42xPYjGxguiiW1hVbzNJ6s+cAv0hXTv6NXG7t4fPcWcSsxGotKP0J4I2IWAwgaQVgYES8HhEX1y263hsMvBQRr0vaAtgpvzG1PnoxIi6R9DLwr8BPgOGSNouIvwCfA+5qcNxm1l6KzqkTgBOBo8h+GP8cmB4Roa4fpR0M/D0tfz63fgGwZp3iNLM6q3VG8FZg1dz71dK6srkRWFHSQ8DpZJeH87YFpkiaCXwP+GFEvAl8AbgyXfJYQnbPi5lZvRSdUycA6wOTIuIZ4M20rjunkuXJ6cDzufXXAfv7YRGz5lRTZxFJMyNiVE/r2okr5JsVoxU6i7RrTnXeNCvO8nYWeU3S9rmTjQbe6K/gzMzajHOqmZVCrfcInkB2SeApQMA/AQfXK6imUCmRXxbuGW3WTE6giXKqpAuAfYFnU+ktJP0HsB/Z7TTPAkemh126VLa0WY1TqbWbmi4NA6Q6U5unt4+kJ8/aVocUpbrA4exlbaIVLg1Dc+VUSXsAC4GLcgPBNSPi1bQ8FtgqIo7t/jwdAaXKnO/hVGqtankvDQPsAGxHVn7lEElH9FdwvVGtO0hXnUFSj+Efp5uYp0naXtJNkv4q6djcOU+SNFXSbEnfL+J7mVnbKUVOrUVE3A282Gndq7m3qwMeQpk1oZouDUu6GNgUmElWVwqy/+gvqk9Y3ap0B/lEim0wMBf4SEQ8Kukiss4g/5X2/9+IGJWKt44HdiWrfzUXOF/SPmRFp3cku0RzraQ9UuIzM+t3JcupfSbpNOAI4BWyWoRm1mRqvUewg2zavwy/+OYA/ynpDLLq96/y3s4gx7F0IHht7rhBEbEAWCDpLUlDgH3Sa0babxDZwPA9A0FlvYuPARjWv9/JzNpLmXJqn0XEt4BvSfp/wFfIynItI583nTnNyqfWS8NzyW5mLlzn7iDAp3s45K3055LccuX9imSzgD9OfTJHRcRmEfHbLj7bnUXMrD+UJqf2k0uBA6ptcGcRs3KrdUZwXeBBSVPIDaYi4lN1iaobVbqDfIXl6wxyE/Afki6NiIWSNiRrsfRsvwdvZpYpTU7tK0kjIuKx9HY/4OEi4zGzvql1IHhqPYPopW2Bn0paAiwiux9wMFkphhWBqfSiM0hE3CxpS2BSaq20EDicrByCmVk9nFp0AL0h6TJgDLCupCfJLgF/XNLmZFdX/gZ0+8SwmZVTb8rHbAKMiIhbJa0GDEj327UlV8g3K0YLlY9pu5zqvGlWnOUqHyPpi8BVwK/Sqg2Ba/otOjOzNuKcamZlUevDIseRlV15FSDdF/K+egXVXyQt7OX+YyTtUtPOlRL5ZXmZWTMpRU6VNFbSQ5IubcTnlS1tOrWa1X6P4FsR8Xa6h450L15Tlz3owhiyewTvLTgOM2ttZcmpXwb2jognKyskrRgR7xQQi5kVoNYZwbskfRNYVdJHgSuB6+oXVm1SR5CxaflMSben5b0qv3AlnZa6kEyWtF5a90lJ96VuJLdKWk/ScLKbnb+WOpHsXtDXMrPWV3hOlXQ+8AHgz5JekXSxpInAxZKGS7o9dVu6TdKwdMx4SeelfPp4uopyQZpVHN/I+M2sf9Q6EDwFeI6sdt+/AX8Cvl2voHphAlAZsHUAg1L/zt3JCkKvDkyOiJHp/RfTvvcAO0XEh4DLgZMjYj7Z08ZnpnqCExr3NcyszRSeU1Nf4KfIOoKcCWxFNjt4CHAOcGFEbEdWI/Ds3KFrATsDXyMr2H8msDWwraRRDfsCZtYvaro0HBFLgF+nV5lMB0ZLWpOsFtf9ZAPC3YGxwNtk3Ucq+340LW8EXCFpfWBlYF4tH+bOImbWH0qaU6+NiDfS8s7AZ9LyxcBPcvtdFxEhaQ7wTETMAZD0ADCcrG3eu9xZxKzcau01PI8q969ExAf6PaJeiIhFKbYjye7rm03263Yz4CGywtCVuBez9PueA/w8Iq6VNIYaa3pFxDhgHECH1Ir3SJpZA5Q0p75W4349dWtaRj5vSh3Om2Yl05tewxUDgYOAtfs/nD6ZAJwIHEV2meXnwPT0i7WrYwYDf0/Ln8+tXwCsWac4zcwqypxTIfth/Vmy2cDDyPKsmbWgmu4RjIgXcq+/R8R/AZ+ob2g1mwCsD0yKiGeAN+k5aZ1K1olkOvB8bv11wP5+WMTM6qnkORXgeOALkmaTte38asHxmFmd1NRZRNL2ubcrkP2a/VJ6CKMtuUK+WTFaobNIu+ZU502z4nSVO2u9NPyfueV3gPnA/+2HuMzM2pFzqpmVQq1PDe9Z70CaTqVEflnU2DPazIpX5pwqaWFEDJK0AXB2RBwo6UigIyK+sjznLlvarIVTq7W6Wp8a/np32yPi5/0TjplZ62uGnBoRTwEHFh2HmdVXrQWlO4AvkTVG35CsA8f2wBrpVbhUCf/hVPn+UUmXStpb0kRJj0naMb0mpY4i90raPB17d74QqqR7JLX0vTpmVqhmyalzq6z/RMqj60raJy3fL+lKSYOKiNXM+q7WewQ3AraPiAUAkk4FboiIw+sVWB9tRlaG4ShgKnAosBvwKeCbwBHA7hHxjqS9gR8BBwC/JatFeIKkDwIDI2JW48M3szbRLDl1GZL2B74OfBwYQNYNZe+IeE3SN9K2HxQYopn1Uq0DwfXIunRUvJ3Wlc28TlXub8tVwB9OVj/wQkkjyIq5rpSOuxL4jqSTyAaR46ud3J1FzKyfNEtOzduLbCZzn4h4VdK+ZG3pJqaarSsDkzof5M4iZuVW60DwImCKpKvT+08DF9YlouXTucp9vgL+isB/AHdExP6ShgN3AkTE65JuAfYje3JvdLWTu7OImfWTZsmpeX8FPgB8EJgGCLgl9SbukjuLmJVbrQWlTwO+ALyUXl+IiB/VM7A6yXcUObLTtt+QNVafGhEvNTIoM2svTZpT/0Z2K81FkrYGJgO7StoMQNLq6dYaM2sitT4sArAa8GpEnAU8Ken9dYqpnn4C/FjSDDrNhkbEdOBV4L+LCMzM2k7T5dSIeJis5dyVZO04jwQuSx1IJgFbFBedmfVFrZ1Fvkd2b8jmEfHBVF/qyojYtd4BNkr6TncCW0TEkp72d4V8s2K0SGeRls+p1ThvmhWnq9xZ64zg/mRP3r4G79aXKkWJg/4g6QjgPuBbtQwCzcyWU0vnVDNrHrUOBN+ObOowILsXpH4hNV5EXBQRG0fElQCS7u3xoEqJ/DK/zKysmiqnVnJiqi14aF/P0wxp02nU2k2tA8H/kfQrYIikLwK3Ar+uX1jFiohdio7BzFpaU+XUXE4cTlaf1cxaRI/lY5QViLqC7CbgV4HNge9GxC11jq0wlV6bRcdhZq2nGXNqLieeDmwpaSZZuZubyR6wW5lsYuGAiHissEDNrNd6HAimgsx/iohtgdImKjOzZtDkOfUU4MSI2BdA0jnAWRFxqaSVybqNmFkTqfXS8P2SdqhrJE1A0jGSpkma9lzRwZhZM2uVnDoJ+GZqL7dJRLzReYd83gRnTrOyqXUg+H+AyZL+Kmm2pDmpblRbiYhxEdERER1Diw7GzJpZS+TUiPgd2dPPbwB/krRXlX3ezZvgzGlWNt1eGpY0LCL+F/jnBsVjZtayWiCnLiBX5kbSB4DHI+JsScOA7YDbiwrOzHqvp3sErwG2j4i/Sfp9RBzQgJjMzFrVNTR3Tp0NLJY0CxgPrAJ8TtIi4B9A2dvkmVknPQ0E81WUPlDPQMqkpieGR48GV8g3s95pypxayYkRsQjofPn39FrP47RpVj493SMYXSybmVnvOaeaWan0NCM4UtKrZL9iV03LpPcREWvWNbrlJGk4cH1EbFPj/mPIKv7X3lmkzGroI21mDdXUOXV5NUPa7G9Ow1Z23Q4EI6LdakKNARYCPQ8Ezcx6qaw5VdKKEfFO0XGYWePVWj6mma0o6VJJD0m6StJqkuZLWhdAUoekO9Ps4bHA1yTNlLR7oVGbmfWBpNUl3SBplqS5kg6WtIOke9O6KZLWkHSkpGsl3Q7clo67IG2fIWm/dL4Bkn4qaWoqdfNvaf2YlDuvkvRwyrNtNt9n1vx67CzSAjYHjo6IiZIuAL5cbaeImC/pfGBhRPysoRGamfWfjwFPRcQnACQNBmYAB0fEVElrktX9A9ge2C4iXpT0I+D2iDhK0hBgiqRbgcOAVyJiB0mrABMl3ZyO/xCwNfAUMBHYFbinMV/TzPpDO8wIPhERE9PyJcBufT2RO4uYWROYA3xU0hnpysYw4OmImAoQEa/mLgPfEhEvpuV9gFNSH+E7gYHp2H2AI9L6+4B1gBHpmCkR8WRELAFmAsM7B+POImbl1g4zgp1v1Q3gHZYOggfWfKKIccA4gA7JtwCbWelExKOStgc+DvyQ7gs8v5ZbFnBARDyS3yFd7j0+Im7qtH4M8FZu1WKq/D8lnzelDudNs5JphxnBYZJ2TsuHkl22mA+MTuvyBV2XqZpvZtZsJG0AvB4RlwA/JWtnt36lt3G6P7DaJMBNwPGV+/wkfSi3/kuSVkrrPyhp9Xp/DzNrjHYYCD4CHCfpIWAt4Dzg+8BZ2aUKFuf2vQ7Y3w+LmFkT25bs/r6ZwPeA7wIHA+ekjiC3UP1KyH8AKwGzJT2Q3gP8BngQuF/SXOBXtMfVJLO2oHCRoz7p6OiIaS6Rb9ZwkqZHREfRcVjvOW+aFaer3NkOM4JmZmZmVoWn9/uqGUrke7bXzOpI0nygIyKel7Swpz7tzZA2+5vTsJVd288IdnHTtJmZmVnLa9qBoKThqZr9eEmPpqr2e0uaKOkxSTtKWlvSNaka/mRJ26VjT5V0saSJwMWShkr6faqcP1XSrgV/PTOzUkm5dLqkByQdU3Q8ZtY/mn02bDPgIOAoYCpZeZjdgE8B3wSeAGZExKcl7QVcBIxKx24F7BYRb0j6HXBmRNwjaRhZuYQtG/pNzMzK7ajUgWRVYKqk3xcdkJktv2YfCM6LiDkAqdzBbRERkuaQVbjfhFQnMCJul7ROaq8EcG1EVNos7Q1slWuTuaakQRGxMP9h6VfwMZCV2zczayNjJe2fljdmaXeRbuXzpjOnWfk0+0AwX9V+Se79ErLvtqibY/MV9VcAdoqIN7v7MHcWMbN2lLqI7A3sHBGvS7qTGrsyubOIWbk17T2CNZpA1jC9ksiej4hXq+x3M3B85Y2kUQ2IzcysWQwGXkqDwC2AnYoOyMz6R6sPBE8FRkuaDZwOfL6L/cYCHemhkgeBYxsUn5lZM7gRWDF1aDodmFxwPGbWT9xZpI9cId+sGO4s0rycN82K484iZmZmZraMpn5YRNJw4PqI2KbhH94KJfI9G2xm/UjSvRGxS1fbWyFtLi+nXSsbzwiamVm/6G4QaGbl1AoDwQGSfp2q3d8saVVJX0wdQmaljiGrSRos6W+SVgCQtLqkJyStJGlTSTemqvkT0lNxZmbWC5IW9ryXmZVJKwwERwC/jIitgZfJCkj/ISJ2iIiRwEPA0RHxCjAT+HA6bl/gpohYRFbj6viIGA2cCJzb2K9gZmZm1nhNfY9gMi8iZqbl6WQdRbaR9ENgCDCIrGUcwBXAwcAdwGeBcyUNAnYBrsx1Flml2ge5s4iZWe+4s4hZubXCQDDfXWQxsCowHvh0RMySdCQwJm2/FviRpLWB0cDtwOrAyxExqqcPcmcRM7PecWcRs3JrhUvD1awBPC1pJVJnEYDUO3gqcBbZ08aLU6eReZIOAlBmZBFBm5mZmTVSqw4EvwPcB0wEHu607Qrg8PRnxWHA0ZJmAQ8A+zUiSDMzM7MiubNIH7lCvlkx3FmkeTlvmhXHnUXMzMzMbBkeCPZVpUR+M7/MzABJQyR9uYd9hkua28W2yyWN6OlzWiFtNvvLrLO2HwhKGlB0DGZmBRsCdDsQ7MF5wMn9E4qZNVJLDwTTL9iHJV0q6SFJV6UuI/MlnSHpfuAgSYdImiNprqQzio7bzKzBTgc2lTRT0pmSbpN0f8qL+YfnVuycT9P6CcDeklqhJJlZW2npgWCyOXBuRGwJvMrSX70vRMT2wN3AGcBewChgB0mfLiBOM7OinAL8NdVTPQnYP+XHPYH/1NJq+1XzaUQsAf4CuPSWWZNph4HgExExMS1fAuyWlivlY3YA7oyI5yLiHeBSYI9qJ5J0jKRpkqY9V9eQzcwKI7LC+7OBW4ENgfXStq7yKcCzwAbvOVkub4Izp1nZtMNAsHN9nMr713p9oohxEdERER1Dlz8uM7MyOgwYCoxOM4TPAAPTtq7yKWmfNzqfLJ83s9OaWZm0w0BwmKSd0/KhwD2dtk8BPixp3fTgyCHAXY0M0MysYAvIOjIBDAaejYhFkvYENsnt110+/SBQ9aliMyuvdhgIPgIcJ+khYC2yp9veFRFPk90fcwcwC5geEX9seJRmZgWJiBeAiak8zCigQ9Ic4AiW7c5UNZ9KWg94IyL+0dDAzWy5tcMTXu9ExOGd1g3Pv4mIy4DLenXW0aPBFfLNrEVExKE17LZFF+sPBX7V08FOm2bl0w4DQTMzq6+XgYuLDsLMeq+lB4IRMR/Ypto2SUcCHRHxlT6dvFIiv5m5z7SZ9UJXeTMi/ruW41shbbYb/2+i9bXDPYJmZmZmVkVTDgQlXSNpuqQHJB2T1i1MFfEfSFXxh6b1d0o6K1XMnytpxyrnGyrp95Kmpteujf5OZmb15LxpZtU05UAQOCoiRgMdwFhJ6wCrA9MiYmuy8i/fy+2/WqqH9WXggirnOws4MyJ2AA4AflPP4M3MCuC8aWbv0az3CI6VtH9a3hgYASxhabeQS4A/5Pa/DCAi7pa0pqQhnc63N7DV0i5KrClpUEQszO+UfkUfAzCsn76ImVmDFJ43nTnNyqfpBoKSxpAloJ0j4nVJd7K06n1edLFc7f0KwE4R8WZ3nx0R44BxAB2Sb6E1s6ZQlrwpdThvmpVMM14aHgy8lJLZFsBOaf0KwIFpuXPF+4MBJO0GvBIRr3Q6583A8ZU3kkbVIW4zs6I4b5pZVU03IwjcCBybKts/AkxO618DdpT0bbLm5wfnjnlT0gxgJeCoKuccC/wyNVlfEbgbOLZO8ZuZNZrzpplVpWiRIkGSFkbEoCrr7wROjIh+rWff0dER01wi36zhJE2PiI6i42gFzptm7aOr3NmMl4bNzMzMrB8046XhqiJiUHqq7dCIODe3fkx+P0nDgesj4j0dRyRdDnwnIh7r8QNdIr8cWmRG26wI1WYD0/ox9fg8p8324xRdfq02IziErOZVX50HnNw/oZiZtS5JA4qOwcyWX6sNBE8HNk3V8M9MlfLvlzRH0n65/VaUdKmkhyRdJWm1tH4CsLeklpkpNTPrLUnDJT3cOU9Kmi/pDEn3AwdJOiTl17mSzig6bjPrvVYbCJ4C/DVVwz8J2D8itgf2BP5TSyufbg6cGxFbAq+SZhEjYgnwF2BkowM3MyuZqnkSeCHl1buBM4C9gFHADpI+XUCcZrYcWm0gmCfgR6m0wa3AhsB6adsTETExLV8C7JY77llgg6onlI6RNE3StOfqFLSZWUl0lScrnUh2AO6MiOci4h3gUmCPzifJ501w5jQrm1YeCB4GDAVGpxnCZ1haSb+7ivkDgTeqnTAixkVER0R0DO3nYM3MSqarPPlar06Sy5tZSjazMmm1geACYI20PBh4NiIWSdoT2CS33zBJO6flztX0PwjMrXukZmbl1l2eBJgCfFjSuunBkUOAuxoZoJktv5YaCEbEC8BESXPJ7lnpkDQHOAJ4OLfrI8Bxqcr+WmRPCyNpPeCNiPhHQwM3MyufqnmyIiKeJrsv+w5gFjA9Iv7Y8CjNbLm03NOxEXFoDbtt0cX6Q4Ff1fRBo0eDK+SbWet6JyIO77RueP5NRFwGXFbrCZ02zcqn5QaCy+ll4OKigzAzMzNrhFIPBCWtStYsfa+IWFzvz4uI/655Z5fIb08uk28l1x95MyLmA+/pvrS8nDbbj1Nm+ZX9HsGjgD80YhBoZtYinDfNrGZlHwgeBvxRmZ+m6vVzJB0MIGmMpLsl3SDpEUnnS1ohbdtH0qTUWeRKSYPS+vmSvp/rOLJFWv/h1JFkpqQZktboMiozs/Jy3jSzmpV2IChpZeAD6RLFZ8ieAh4J7A38VNL6adcdgeOBrYBNgc9IWhf4NrB3qoA/Dfh67vTPp/XnASemdScCx6Wag7vTRS1BM7Oyct40s94q8z2C65I9vAFZRfvL0qWOZyTdRVbV/lVgSkQ8DiDpsrTvm2QJbmLqKrcyMCl37j+kP6eTJUuAicDPJV1Kdlnlyc4BSToGOAZgWP98RzOz/lTqvOnMaVY+ZR4IvsHSTiDdqVb9XsAtEXFIF8e8lf5cTPpnEBGnS7oB+DhZIvzniMjXHiQixgHjADok3wJrZmVT6rwpdThvmpVMaS8NR8RLwABJA4EJwMGSBkgaStbPckradUdJ70/3uBxMVv1+MrCrpM0AJK0u6YPdfZ6kTSNiTkScAUyl61qDZmal5LxpZr1V2oFgcjPZJYurgdlk1etvB07Odf+YCvwCeAiYB1wdEc8BRwKXSZpNdnmjpwR1QrqpejawCPhzP38XM7NGcN40s5opSlzkR9L2wNci4nNdbB8DnBgR+zYyLoCOjo6Y5hL5Zg0naXpEdBQdR1k5b5pZNV3lzlLPCEbE/cAdqaG5mZn1wHnTzHqj1DOC/U3SBcC+wLMRsU2nbf8O/AwYGhHP93SuDin8u9Zq0kb/jTWCZwQbr79yZ/awiDOn9R+n19o15YxgHYwHPtZ5paSNgX2A/210QGZmTWA8zp1mLamtBoIRcTfwYpVNZwIn896SCmZmbc+506x1tdVAsBpJ+wF/j4hZRcdiZtYsnDvNWkOZC0rXnaTVgG+SXdqoZX93FjGztteb3OnOImbl1u4zgpsC7wdmSZoPbATcL+mfqu0cEeMioiMiOoY2MEgzs5KpOXfm8yY4c5qVTVvPCEbEHOB9lfcpoXXU8tSwmVm7cu40ax1tNSOYmqtPAjaX9KSko4uOycys7Jw7zVpXW80IdtNMvbJ9eM0nGz0aXCHfzNpAf+VOp02z8mmrGUEzMzMzW6q0M4KS7o2IXXrYZ2FEDGpUTMuYPh2kQj7arN+5PL81gNOm2bLKkHpLOyPY0yDQzMzMzJZPaQeCkhamP8dIulvSDZIekXS+pBVy+50maZakyZLWS+uGS7pd0mxJt0kaltaPl3S2pHslPS7pwNx5TpI0NR3z/UZ/XzOzoqSc+ZCkX0t6QNLNklaVtKmkGyVNlzRB0haSBkiap8wQSYsl7ZHOc7ekEUV/HzOrXWkHgp3sCBwPbEVWv+ozaf3qwOSIGAncDXwxrT8HuDAitgMuBc7OnWt9YDeyBuqnA0jaBxiRPmcUMLqS2PIkHSNpmqRpz/Xr1zMzK9wI4JcRsTXwMnAAMA44PiJGAycC50bEYuARsny8G3A/sLukVYCNI+Kx/EnzeROcOc3KplkGglMi4vGUgC4jSz4AbwPXp+XpwPC0vDPwu7R8cW5/gGsiYklEPAisl9btk14zyJLaFmRJcRkuKG1mLWxeRMxMy5V8ugtwpaSZwK/IfkgDTAD2SK8fk+XYHYCpnU/qgtJm5Vbah0U66Xw7ZeX9ooh3b7VcTG3f563csnJ//jgiftX3EM3Mmlo+Ny4m+6H8ckSMqrLv3cCXgA2A7wInAWPIBohm1kSaZUZwR0nvT/cGHgzc08P+9wKfTcuH0XNyugk4StIgAEkbSnpfD8eYmbWyV4F5kg4CSPcEjkzbppDNFi6JiDeBmcC/kQ0QzayJNMuM4FTgF8BmwB3A1T3sfzzw35JOIrsp5Qvd7RwRN0vaEpikrLbBQuBw4NkuD3JlVDNrfYcB50n6NrAScDkwKyLekvQEMDntNwE4BJjT3cmcNs3KR1GGIjbdkDQGODEi9i04lGV0dHTENGc0s4aTND2738yajfOmWXG6yp3NMiNYPq6MatZ/Sv6D1PqH06ZZ/+qP1Fn6ewQj4s6yzQaamZWRpHtr2GdhI2Ixs+ZQ+oGgmZnVxh2ZzKy3Wmog6Or4ZtbO3JHJzHqrpQaCSV2q44M7i5hZUyldRyZ3FjErn1YcCNalOj64s4iZNZXSdWRyZxGz8mnFp4ZdHd/MzB2ZzKwGrTgj2Jmr45tZO3JHJjPrUSvOCFbTr9XxAZfIN7OyK11HJqdNs/IpfWeRsnKFfLNiuLNIz9yRycw66yp3tsOlYTMzMzOrol0uDZuZtY2IuBO4s+AwzKwJeEbQzMzMrE15IGhmZmbWpjwQNDMzM2tTHgiamZmZtSkPBM3MzMzalAeCZmZmZm3KA0EzMzOzNuWBoJmZmVmb8kDQzMzMrE2513AfSVoAPFJ0HD1YF3i+6CC6Ufb4wDH2l/6McZOIGNpP57IGct7sF45v+bRzfFVzp1vM9d0jZW98L2lamWMse3zgGPtLM8RoDeG8uZwc3/JxfO/lS8NmZmZmbcoDQTMzM7M25YFg340rOoAalD3GsscHjrG/NEOMVn/N8O9B2WN0fMvH8XXih0XMzMzM2pRnBM3MzMzalAeCvSTpY5IekfQXSacUHQ+ApAskPStpbm7d2pJukfRY+nOtgmPcWNIdkh6U9ICkr5YtTkkDJU2RNCvF+P20/v2S7kt/51dIWrmoGFM8AyTNkHR9GeNLMc2XNEfSTEnT0rrS/F1b45Utd5Y9b5Y9Zzpf9lt8hedKDwR7QdIA4JfAvwBbAYdI2qrYqAAYD3ys07pTgNsiYgRwW3pfpHeAf4+IrYCdgOPSP7syxfkWsFdEjARGAR+TtBNwBnBmRGwGvAQcXVyIAHwVeCj3vmzxVewZEaNypRDK9HdtDVTS3DmecufNsudM58v+U2iu9ECwd3YE/hIRj0fE28DlwH4Fx0RE3A282Gn1fsCFaflC4NONjKmziHg6Iu5PywvI/sPckBLFGZmF6e1K6RXAXsBVaX2hMUraCPgE8Jv0XpQovh6U5u/aGq50ubPsebPsOdP5sq4a+nfsgWDvbAg8kXv/ZFpXRutFxNNp+R/AekUGkydpOPAh4D5KFme6jDATeBa4Bfgr8HJEvJN2Kfrv/L+Ak4El6f06lCu+igBuljRd0jFpXan+rq2hmiV3lvLf0bLmTOfLflF4rnRnkTYQESGpFI+HSxoE/B44ISJezX6gZcoQZ0QsBkZJGgJcDWxRZDx5kvYFno2I6ZLGFBxOT3aLiL9Leh9wi6SH8xvL8Hdt1p2y/Dta5pzpfNkvCs+VnhHsnb8DG+feb5TWldEzktYHSH8+W3A8SFqJLKFdGhF/SKtLFydARLwM3AHsDAyRVPnRVOTf+a7ApyTNJ7u0thdwFuWJ710R8ff057Nk/4PYkZL+XVtDNEvuLNW/o82SM50v+64MudIDwd6ZCoxITx2tDHwWuLbgmLpyLfD5tPx54I8FxlK5N+O3wEMR8fPcptLEKWlo+mWLpFWBj5Ldl3MHcGDarbAYI+L/RcRGETGc7N+92yPisLLEVyFpdUlrVJaBfYC5lOjv2hquWXJnaf4dLXvOdL5cfqXJlRHhVy9ewMeBR8nuhfhW0fGkmC4DngYWkd3zcDTZvRC3AY8BtwJrFxzjbmT3QswGZqbXx8sUJ7AdMCPFOBf4blr/AWAK8BfgSmCVEvydjwGuL2N8KZ5Z6fVA5b+TMv1d+1XIvxelyp1lz5tlz5nOl/0SVylypTuLmJmZmbUpXxo2MzMza1MeCJqZmZm1KQ8EzczMzNqUB4JmZmZmbcoDQTMzM7M25YGgNSVJZ0o6Iff+Jkm/yb3/T0lf78N5x0i6vp/CNDMrFedO68wDQWtWE4FdACStAKwLbJ3bvgtwb08nkTSgLtGZmZWTc6ctwwNBa1b3krUzgiyJzQUWSFpL0irAlsBgSTMkzZF0QVqPpPmSzpB0P3CQpI9Jeji9/0zlAyR9WNLM9JpRqQBvZtbEnDttGSv2vItZ+UTEU5LekTSM7BfsJGBDsgT3CllF9t8AH4mIRyVdBHwJ+K90ihciYntJA9O+e5FVmr8i9zEnAsdFxMTU+P3NBnw1M7O6ce60zjwjaM3sXrJEVklmk3LvnwTmRcSjad8LgT1yx1aS1hZpv8cia7NzSW6ficDPJY0FhkTEO3X7JmZmjePcae/yQNCaWeVel23JLm9MJvtVuwtwZw/HvtbTySPidOBfgVWBiZK2WJ5gzcxKwrnT3uWBoDWze4F9gRcjYnFEvAgMIUtovweGS9os7fs54K4q53g47bdpen9IZYOkTSNiTkScAUwl+wVsZtbsnDvtXR4IWjObQ/bE2+RO616JiCeBLwBXSpoDLAHO73yCiHgTOAa4Id3w/Gxu8wmS5kqaDSwC/lyfr2Fm1lDOnfYuZZf2zczMzKzdeEbQzMzMrE15IGhmZmbWpjwQNDMzM2tTHgiamZmZtSkPBM3MzMzalAeCZmZmZm3KA0EzMzOzNuWBoJmZmVmb+v+wdNw94/IGoAAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
    " + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ - "import requests, re, nltk\n", - "#In case your text is not on Project Gutenberg but at some other URL\n", - "#http://www.fullbooks.com/Our-World-or-The-Slaveholders-Daughter2.html\n", - "# that contains 12 parts\n", - "t = \"\"\n", - "for i in range(2,13):\n", - " r = requests .get('http://www.fullbooks.com/Our-World-or-The-Slaveholders-Daughter' + str(i) + '.html')\n", - " t = t + r.text" + "import matplotlib.pyplot as plt \n", + "import requests, re\n", + "from bs4 import BeautifulSoup\n", + "from collections import Counter\n", + "\n", + "def graph(a_1, a_2):\n", + " \n", + " fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(10,5)) #makes two plots with it being max width\n", + " ax1.barh([wordCount[0] for wordCount in a_1], [wordCount[1] for wordCount in a_1], color='red')#\n", + " ax2.barh([wordCount[0] for wordCount in a_2], [wordCount[1] for wordCount in a_2], color='blue')#\n", + " ax1.set_title('iPhone 14')\n", + " ax2.set_title('iPhone 14 Pro') \n", + " ax1.set(xlabel='Words', ylabel='Frequency')\n", + " ax2.set(xlabel='Words', ylabel='Frequency')\n", + "\n", + " plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=0.5, hspace=None)\n", + " plt.show()\n", + "\n", + "def frequency (all_articles):\n", + " freqs = [] #so an array of two dicts\n", + " for i in range(len(all_articles)):\n", + " c = Counter(all_articles[i])#dictionary of words and their counts\n", + " freqs.append(c)\n", + " return freqs\n", + "\n", + "\n", + "def parse(articles):\n", + " articles_words = [] #2d array with first element being the words array for first book\n", + " to_remove = {\n", + " \"with\": 0,\n", + " \"the\": 0,\n", + " \"a\": 0,\n", + " \"on\": 0,\n", + " \"of\": 0,\n", + " \"to\": 0,\n", + " \"and\": 0,\n", + " \"an\": 0,\n", + " \"for\": 0,\n", + " \".\\n\": 0,\n", + " \".\": 0,\n", + " \"it\": 0,\n", + " \"is\": 0,\n", + " \"in\": 0,\n", + " \"at\": 0,\n", + " \"ii\": 0,\n", + " \"lens\": 0,\n", + " \"/\": 0,\n", + " \"which\": 0,\n", + " \"it's\": 0,\n", + " \"when\": 0,\n", + " \"as\": 0,\n", + " \"review\": 0,\n", + " \"this\": 0,\n", + " \"that\": 0,\n", + " \"review\": 0,\n", + " \"has\": 0,\n", + " \"or\": 0,\n", + " \"·\": 0,\n", + " \"be\": 0,\n", + " \"gm\": 0,\n", + " \"fe\": 0,\n", + " \"you\": 0,\n", + " \"we\": 0,\n", + " \"by\": 0,\n", + " \"can\": 0,\n", + " \"will\": 0,\n", + " \"are\": 0,\n", + " \"|\" : 0\n", + " }\n", + "\n", + " for book in articles:\n", + " r = requests.get(book)\n", + " soup = BeautifulSoup(r.text, 'html.parser')\n", + " text = soup.get_text().lower()\n", + " words = re.split('\\s+', text)\n", + "\n", + " for i in range(len(words)):\n", + "\n", + " words[i] = words[i].strip()\n", + "\n", + " f_words = [word for word in words if word not in to_remove]\n", + " \n", + " articles_words.append(f_words)\n", + " return articles_words\n", + "\n", + "if __name__ == \"__main__\":\n", + " articles = []\n", + " a_1 = 'https://www.techradar.com/reviews/iphone-14-hands-on'\n", + " a_2 = 'https://www.techradar.com/reviews/iphone-14-pro' \n", + " articles.append(a_1)\n", + " articles.append(a_2)\n", + " all_words = parse(articles)\n", + " freqs = frequency(all_words)\n", + " print(\"\\niPhone 14\")\n", + " for keyVal in freqs[0].most_common(25):\n", + " print(keyVal[0], \":\", keyVal[1])\n", + " print('\\n\\niPhone 14 Pro')\n", + " for keyVal in freqs[1].most_common(25):\n", + " print(keyVal[0], \":\", keyVal[1])\n", + " \n", + " graph(freqs[0].most_common(25), freqs[1].most_common(25))" ] }, { @@ -360,7 +525,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -374,7 +539,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.5.2" + "version": "3.8.10" } }, "nbformat": 4, From 8e3092bbff4c2f9b1b5f7e3edef8fb732d82ad80 Mon Sep 17 00:00:00 2001 From: spate118 Date: Mon, 12 Sep 2022 20:28:46 +0000 Subject: [PATCH 3/6] compared different authors (part 2) --- spate118.ipynb | 199 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 199 insertions(+) diff --git a/spate118.ipynb b/spate118.ipynb index fbf634b..a13f734 100644 --- a/spate118.ipynb +++ b/spate118.ipynb @@ -310,6 +310,13 @@ "- Adventures of Huckleberry Finn at http://www.gutenberg.org/ebooks/76.txt.utf-8" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#Part 1: Single Author" + ] + }, { "cell_type": "code", "execution_count": 15, @@ -520,6 +527,198 @@ "collapsed": true }, "outputs": [], + "source": [ + "##Part 2: Different Author" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "iPhone 14 Pro (Tom's Guide)\n", + "iphone : 76\n", + "14 : 71\n", + "pro : 64\n", + "new : 52\n", + "(opens : 41\n", + "tab) : 30\n", + "— : 18\n", + "max : 16\n", + "apple : 15\n", + "your : 12\n", + "more : 12\n", + "have : 12\n", + "but : 11\n", + "get : 10\n", + "so : 10\n", + "all : 9\n", + "should : 9\n", + "tom's : 8\n", + "best : 8\n", + "from : 8\n", + "models : 8\n", + "up : 8\n", + "skip : 7\n", + "its : 7\n", + "credit: : 7\n", + "\n", + "\n", + "iPhone 14 Pro (Techradar)\n", + "iphone : 55\n", + "new : 49\n", + "14 : 40\n", + "pro : 32\n", + "(opens : 31\n", + "apple : 25\n", + "tab) : 24\n", + "i : 16\n", + "all : 15\n", + "screen : 15\n", + "its : 11\n", + "like : 11\n", + "from : 11\n", + "have : 10\n", + "13 : 10\n", + "- : 9\n", + "dynamic : 9\n", + "tech : 8\n", + "best : 8\n", + "more : 8\n", + "what : 8\n", + "up : 8\n", + "not : 7\n", + "also : 7\n", + "still : 7\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
    " + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt \n", + "import requests, re\n", + "from bs4 import BeautifulSoup\n", + "from collections import Counter\n", + "\n", + "def graph(a_1, a_2):\n", + " \n", + " fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(10,5)) #makes two plots with it being max width\n", + " ax1.barh([wordCount[0] for wordCount in a_1], [wordCount[1] for wordCount in a_1], color='red')#\n", + " ax2.barh([wordCount[0] for wordCount in a_2], [wordCount[1] for wordCount in a_2], color='blue')#\n", + " ax1.set_title('iPhone 14 (Tom)')\n", + " ax2.set_title('iPhone 14 Pro (Tech)') \n", + " ax1.set(xlabel='Words', ylabel='Frequency')\n", + " ax2.set(xlabel='Words', ylabel='Frequency')\n", + "\n", + " plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=0.5, hspace=None)\n", + " plt.show()\n", + "\n", + "def frequency (all_articles):\n", + " freqs = [] #so an array of two dicts\n", + " for i in range(len(all_articles)):\n", + " c = Counter(all_articles[i])#dictionary of words and their counts\n", + " freqs.append(c)\n", + " return freqs\n", + "\n", + "\n", + "def parse(articles):\n", + " articles_words = [] #2d array with first element being the words array for first book\n", + " to_remove = {\n", + " \"with\": 0,\n", + " \"the\": 0,\n", + " \"a\": 0,\n", + " \"on\": 0,\n", + " \"of\": 0,\n", + " \"to\": 0,\n", + " \"and\": 0,\n", + " \"an\": 0,\n", + " \"for\": 0,\n", + " \".\\n\": 0,\n", + " \".\": 0,\n", + " \"it\": 0,\n", + " \"is\": 0,\n", + " \"in\": 0,\n", + " \"at\": 0,\n", + " \"ii\": 0,\n", + " \"lens\": 0,\n", + " \"/\": 0,\n", + " \"which\": 0,\n", + " \"it's\": 0,\n", + " \"when\": 0,\n", + " \"as\": 0,\n", + " \"review\": 0,\n", + " \"this\": 0,\n", + " \"that\": 0,\n", + " \"review\": 0,\n", + " \"has\": 0,\n", + " \"or\": 0,\n", + " \"·\": 0,\n", + " \"be\": 0,\n", + " \"gm\": 0,\n", + " \"fe\": 0,\n", + " \"you\": 0,\n", + " \"we\": 0,\n", + " \"by\": 0,\n", + " \"can\": 0,\n", + " \"will\": 0,\n", + " \"are\": 0,\n", + " \"|\" : 0\n", + " }\n", + "\n", + " for book in articles:\n", + " r = requests.get(book)\n", + " soup = BeautifulSoup(r.text, 'html.parser')\n", + " text = soup.get_text().lower()\n", + " words = re.split('\\s+', text)\n", + "\n", + " for i in range(len(words)):\n", + "\n", + " words[i] = words[i].strip()\n", + "\n", + " f_words = [word for word in words if word not in to_remove]\n", + " \n", + " articles_words.append(f_words)\n", + " return articles_words\n", + "\n", + "if __name__ == \"__main__\":\n", + " articles = []\n", + " a_1 = 'https://www.tomsguide.com/opinion/iphone-14-pro-and-iphone-14-pro-max-reasons-to-buy-and-skip'\n", + " a_2 = 'https://www.techradar.com/reviews/iphone-14-pro' \n", + " articles.append(a_1)\n", + " articles.append(a_2)\n", + " all_words = parse(articles)\n", + " freqs = frequency(all_words)\n", + " print(\"\\niPhone 14 Pro (Tom's Guide)\")\n", + " for keyVal in freqs[0].most_common(25):\n", + " print(keyVal[0], \":\", keyVal[1])\n", + " print('\\n\\niPhone 14 Pro (Techradar)')\n", + " for keyVal in freqs[1].most_common(25):\n", + " print(keyVal[0], \":\", keyVal[1])\n", + " \n", + " graph(freqs[0].most_common(25), freqs[1].most_common(25))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [] } ], From aa3b9e474d2a1ac7e8d19a1db138b3ae1ffde99c Mon Sep 17 00:00:00 2001 From: spate118 Date: Tue, 13 Sep 2022 18:43:32 +0000 Subject: [PATCH 4/6] updated code --- spate118.ipynb | 286 ++++++------------------------------------------- 1 file changed, 34 insertions(+), 252 deletions(-) diff --git a/spate118.ipynb b/spate118.ipynb index a13f734..29f73e1 100644 --- a/spate118.ipynb +++ b/spate118.ipynb @@ -319,75 +319,14 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 29, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - "iPhone 14\n", - "new : 52\n", - "iphone : 44\n", - "14 : 34\n", - "(opens : 31\n", - "tab) : 24\n", - "apple : 12\n", - "pro : 12\n", - "have : 12\n", - "more : 10\n", - "but : 10\n", - "i : 10\n", - "may : 9\n", - "what : 9\n", - "some : 9\n", - "also : 9\n", - "tech : 8\n", - "your : 8\n", - "us : 7\n", - "its : 7\n", - "truedepth : 7\n", - "camera : 7\n", - "best : 6\n", - "how : 6\n", - "powerful : 6\n", - "a15 : 6\n", - "\n", - "\n", - "iPhone 14 Pro\n", - "iphone : 53\n", - "new : 49\n", - "14 : 37\n", - "(opens : 31\n", - "pro : 31\n", - "apple : 27\n", - "tab) : 24\n", - "i : 16\n", - "all : 15\n", - "screen : 15\n", - "its : 11\n", - "like : 11\n", - "from : 11\n", - "13 : 10\n", - "what : 9\n", - "- : 9\n", - "dynamic : 9\n", - "have : 9\n", - "tech : 8\n", - "best : 8\n", - "more : 8\n", - "up : 8\n", - "not : 7\n", - "also : 7\n", - "powerful : 7\n" - ] - }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ - "
    " + "
    " ] }, "metadata": { @@ -402,19 +341,6 @@ "from bs4 import BeautifulSoup\n", "from collections import Counter\n", "\n", - "def graph(a_1, a_2):\n", - " \n", - " fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(10,5)) #makes two plots with it being max width\n", - " ax1.barh([wordCount[0] for wordCount in a_1], [wordCount[1] for wordCount in a_1], color='red')#\n", - " ax2.barh([wordCount[0] for wordCount in a_2], [wordCount[1] for wordCount in a_2], color='blue')#\n", - " ax1.set_title('iPhone 14')\n", - " ax2.set_title('iPhone 14 Pro') \n", - " ax1.set(xlabel='Words', ylabel='Frequency')\n", - " ax2.set(xlabel='Words', ylabel='Frequency')\n", - "\n", - " plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=0.5, hspace=None)\n", - " plt.show()\n", - "\n", "def frequency (all_articles):\n", " freqs = [] #so an array of two dicts\n", " for i in range(len(all_articles)):\n", @@ -422,49 +348,10 @@ " freqs.append(c)\n", " return freqs\n", "\n", - "\n", "def parse(articles):\n", " articles_words = [] #2d array with first element being the words array for first book\n", - " to_remove = {\n", - " \"with\": 0,\n", - " \"the\": 0,\n", - " \"a\": 0,\n", - " \"on\": 0,\n", - " \"of\": 0,\n", - " \"to\": 0,\n", - " \"and\": 0,\n", - " \"an\": 0,\n", - " \"for\": 0,\n", - " \".\\n\": 0,\n", - " \".\": 0,\n", - " \"it\": 0,\n", - " \"is\": 0,\n", - " \"in\": 0,\n", - " \"at\": 0,\n", - " \"ii\": 0,\n", - " \"lens\": 0,\n", - " \"/\": 0,\n", - " \"which\": 0,\n", - " \"it's\": 0,\n", - " \"when\": 0,\n", - " \"as\": 0,\n", - " \"review\": 0,\n", - " \"this\": 0,\n", - " \"that\": 0,\n", - " \"review\": 0,\n", - " \"has\": 0,\n", - " \"or\": 0,\n", - " \"·\": 0,\n", - " \"be\": 0,\n", - " \"gm\": 0,\n", - " \"fe\": 0,\n", - " \"you\": 0,\n", - " \"we\": 0,\n", - " \"by\": 0,\n", - " \"can\": 0,\n", - " \"will\": 0,\n", - " \"are\": 0,\n", - " \"|\" : 0\n", + " remove = {\n", + " \"with\": 0,\"the\": 0,\"a\": 0,\"on\": 0,\"of\": 0,\"to\": 0,\"and\": 0,\"an\": 0,\"for\": 0,\n", " }\n", "\n", " for book in articles:\n", @@ -477,11 +364,22 @@ "\n", " words[i] = words[i].strip()\n", "\n", - " f_words = [word for word in words if word not in to_remove]\n", + " f_words = [word for word in words if word not in remove]\n", " \n", " articles_words.append(f_words)\n", " return articles_words\n", "\n", + "def graph(a_1, a_2): \n", + " fig, (ax1, ax2) = plt.subplots(1,2) \n", + " fig.suptitle(\"iPhone 14 vs iPhone 14 Pro\")\n", + " ax1.barh([wordCount[0] for wordCount in a_1], [wordCount[1] for wordCount in a_1], color='red')\n", + " ax2.barh([wordCount[0] for wordCount in a_2], [wordCount[1] for wordCount in a_2], color='blue')\n", + " ax1.set_title('iPhone 14')\n", + " ax2.set_title('iPhone 14 Pro') \n", + " ax1.set(xlabel='Words', ylabel='Frequency')\n", + " ax2.set(xlabel='Words', ylabel='Frequency')\n", + " plt.show()\n", + "\n", "if __name__ == \"__main__\":\n", " articles = []\n", " a_1 = 'https://www.techradar.com/reviews/iphone-14-hands-on'\n", @@ -490,13 +388,6 @@ " articles.append(a_2)\n", " all_words = parse(articles)\n", " freqs = frequency(all_words)\n", - " print(\"\\niPhone 14\")\n", - " for keyVal in freqs[0].most_common(25):\n", - " print(keyVal[0], \":\", keyVal[1])\n", - " print('\\n\\niPhone 14 Pro')\n", - " for keyVal in freqs[1].most_common(25):\n", - " print(keyVal[0], \":\", keyVal[1])\n", - " \n", " graph(freqs[0].most_common(25), freqs[1].most_common(25))" ] }, @@ -533,75 +424,14 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 28, "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - "iPhone 14 Pro (Tom's Guide)\n", - "iphone : 76\n", - "14 : 71\n", - "pro : 64\n", - "new : 52\n", - "(opens : 41\n", - "tab) : 30\n", - "— : 18\n", - "max : 16\n", - "apple : 15\n", - "your : 12\n", - "more : 12\n", - "have : 12\n", - "but : 11\n", - "get : 10\n", - "so : 10\n", - "all : 9\n", - "should : 9\n", - "tom's : 8\n", - "best : 8\n", - "from : 8\n", - "models : 8\n", - "up : 8\n", - "skip : 7\n", - "its : 7\n", - "credit: : 7\n", - "\n", - "\n", - "iPhone 14 Pro (Techradar)\n", - "iphone : 55\n", - "new : 49\n", - "14 : 40\n", - "pro : 32\n", - "(opens : 31\n", - "apple : 25\n", - "tab) : 24\n", - "i : 16\n", - "all : 15\n", - "screen : 15\n", - "its : 11\n", - "like : 11\n", - "from : 11\n", - "have : 10\n", - "13 : 10\n", - "- : 9\n", - "dynamic : 9\n", - "tech : 8\n", - "best : 8\n", - "more : 8\n", - "what : 8\n", - "up : 8\n", - "not : 7\n", - "also : 7\n", - "still : 7\n" - ] - }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnUAAAFNCAYAAABmNpkJAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAAsTAAALEwEAmpwYAABBsklEQVR4nO3dd5hcddn/8feH0AkkUuQBBUOTTkKyoIRiQORBAQUBkaJSHhBFEH2w/HhQEEFBVAREEBDpiIAgTYp0ApheCUVJFATpLXSS+/fH+Q452czuzmZn5pyZ/byua649c9rcJ8vefOeU+1ZEYGZmZmatbZGiAzAzMzOzvvOgzszMzKwNeFBnZmZm1gY8qDMzMzNrAx7UmZmZmbUBD+rMzMzM2oAHdYak6ZJG1bDe/pLua3xEzSXpvyVd28TP+4WkrzXr88ysZ/09DzaSpJ9KOrJB+w5Ja3exbBdJVzTic8vKgzojIjaMiLsAJB0n6V1JsyW9LOl+SVsUHOJ8JG0r6U5Jr0ia1c16n0h/8Cf0sMsTgZMkrZ6Ou/IKSa/n3m9dp0P4OXC0pMXrtD8z66P+nAclXSDpnXS8L0q6TdJ6dYpzJeDLwG8l7ZvLp29KmpvPufX4vLyIuB7YUNIm9d53WXlQZ9VcEREDgZWA+4A/SVLBMeW9DpwPfKerFSQtBpwG/K27HUnaDBgUEQ9GxL8iYmDllVYZmpt3bz2Cj4ingYeBz9Zjf2bWEP0mDyY/S8f7YeBZ4IIq+5Ok3o4b9gduiog3I+LSXH79NPBUlZxbb5cDhzRo36XjQZ0haZak7TvPj4h3gQuB/wJWyK3/c0kvSZop6dO5+atKui590/u7pINzy46T9EdJF0l6LV3q6Oi07dWSnkv7PaKreCNiTERcDDzezWH9L3Ar2eCpO58G7u5hHSQNSrE/J+mfko6pJLd0OWa0pFPTt/rHJY1M85+Q9Kykr3Ta5V3ATj19rpk1Rz/Pg/n9vgFcBmyUYrpL0omSRgNvAGum/DY2nSUcK2lkN7usNcd2eeySBkg6WtI/0r/beEmr5TbfXtJjKf+e2WnwfRf9KNd6UGddkrQE2besJyLi+TT7Y8AjwIrAz4Df5f6A/gA8CawK7AH8RNJ2uV1+Nq0zGLgO+HX6nEWA64HJwIeATwJHSvrvhYz7I8CBwPE1rL5xOp6enAEMAtYEPkF2OeGA3PKPAVPIkv5lZMe5GbA2sB/wa0n5b6IzgKE1fK6ZFaif5MH8dgOBfYGJudlfIjvbtSzwGnAjcDpZvvslcKOkFaiuxxxbw7F/G9gb+AywXDquN3K72Jks324CfAHI/5vNAIZIWq67GNqFB3VWzRckvQw8AYwAdsst+2dEnBsRc8i+va4CrJy+NW0JfC8i3oqIScB5ZIOfivsi4qa07cXMG9RsBqwUEcdHxDsR8ThwLvDFhYz/dOAHEVHLPRqDyZJUlyQNSLH8v4h4LSJmAb8gS3QVMyPi9+nYrgBWA46PiLcj4lbgHbIBXsVr6bPNrJz6Ux4EOCod79+BgWQD2YoLImJ6RLwH7AA8FhEXR8R7EXE52ZnAXbrY72B6yLH0fOz/AxwTEY9EZnJEvJDb/qSIeDki/gXcCQzLLat89uAeYmgLixYdgJXSHyNivy6W/acyERFvpC+nA8m+sb0YEfk/3n8CHdW2JfuWtaSkRYGPAKumhFIxAOj1PWySdgGWjYhan3h6iezbZ3dWBBYjO56Kf5J9o6x4Jjf9JkBEdJ6XP1O3LPByjTGaWfP1pzwI8POIOKaLZU/kpldl/lwIC+bDvFpybE/Hvhrwj2627/xv2jnXQj/Jtx7UWb08BSwvadlcQlsd+HcN2z5BdqZrnTrE8UmgQ1Llj3wQMEfSxhHxuSrrTwE+2sM+nwfeJUs8D6V5tR5bV9Ynu9RgZu2jVfNgTyI3/RRZLsxbHbi5i20rOXZsN/vv6difANYCpvUc6gLWB2ZFxKsLsW3L8eVXq4uIeAK4H/ippCWVPUJ+EHBJDZuPAV6T9D1JS6WbYjdS9mTqAiQtImlJsrNnSp9XKQ/yA7IEMiy9riM7jX9AlV0B3ER2j1x3xzYH+CNwoqRl070q367x2LryCeAvfdjezEqmhfNgb9wEfFTSPpIWlbQXsAFwQzfrd5tj6fnYzwN+LGkdZTbp5h6+zvpVrvWgzuppb2AI2Te5a4BjI+KvPW2UBk07kyWfmWRnxs4j+3ZZzTZklzNvIvuG+CbZE16ke97+U3mlZa9HxItdfPYE4BVJH+shzMPJSgg8Tlbe4DKycgK9JmkVsiR47cJsb2al1nJ5sDfSvWw7kz1Z+wLwXWDn3EMknV0EfEbSUt3ss6dj/yXZF+tbgVeB3wFd7q+TvYHf1rhuy1NE9LyWWRuTtAPw9YjYtUmf9wvgHxHxm2Z8nplZkST9BHg2In7V5M/dBfhSRHyhmZ9bJA/qzMzMzNqAL7+amZmZtQEP6szMzMzagAd1ZmZmZm3AgzozMzOzNtDviw+vuOKKMWTIkKLDMOuXxo8f/3xErFR0HNZ7zp1mxegub/b7Qd2QIUMYN25c0WGY9UuSOrcbshbh3GlWjO7ypi+/mpmZmbUBD+rMzMzM2oAHdWZmZmZtwIM6MzMzszbgQZ2ZmZlZG/CgzszMzKwNeFBnZmZm1gY8qDMzMzNrAx7UmZmZmbUBD+rMzMzM2kC/bxPG+PEg1W9/EfXbl5lZSdU7dXbHadWsNi15pk7S7PRzVUlXpelhkj5TbGRmZuUl6UhJS+fe3yRpcJqu5NUhkqYVFKKZ9UFpBnWSen3WMCKeiog90tthgAd1ZmZdOxJ4f1AXEZ+JiJcLi8bM6qqpl18lfRk4CghgCjAHeAvYFBgt6UzgTGAl4A3g4Ih4WNIawGXAQODPuf0NAW4AhgPHA0tJ2gr4aURc0azjMjMrG0nLAH8EPgwMAK4EVgXulPR8RGwraRbQERHPFxepmdVL0wZ1kjYEjgFGRsTzkpYHfkmWcEZGxBxJtwOHRsRjkj4G/AbYDjgNOCsiLpJ0WOd9R8Q7kn5Ilpy+kT6vI+3rf6rEcghwCMDqDTlaM7PC7Qg8FRE7AUgaBBwAbLuwg7h87nT2NCufZl5+3Q64spJMIuLFNP/KNKAbCIwErpQ0CfgtsEpaZ0vg8jR9cS0fFhHjqg3o0rJzIqIjIjpWWrhjMTMru6nApySdLGnriHilrzvM587sgoqZlUkZnn59Pf1cBHg5IoZ1sZ6ffzIzq1FEPCppONm9xiekKyFm1saaeabuDmBPSSsApMuv74uIV4GZkvZMyyVpaFo8Gvhimt63i/2/Bixb96jNzFqQpFWBNyLiEuAUsnuPnSfN2ljTBnURMR04Ebhb0mSy++k62xc4KC2fDnwuzf8mcJikqcCHuviIO4ENJE2StJekDknn9RjYiBFZEaR6vczMymFjYEy6neVY4ATgHOBmSXf2def1Tp1Oq2Z9p+jnfzEdHR0xbty4osMw65ckjc/uz7JW49xpVozu8mYZ7qkrljtKmJn1mjtKmJVPaYoP95ak+9PPIZL2KToeM7MykzRL0opFx2FmjdOyg7qIGJkmhwAe1JmZmVm/1rKDukqfQuAkYOv0gMS3JG0oaUx6P0XSOkXGaWbWbJKulTRe0vRUMDi/bBlJN0qaLGmapL3S/E9KmihpqqTzJS1RTPRmtrDa4Z667wNHRcTOAJLOAE6LiEslLU7WHmc+7ihhZm3uwIh4UdJSwFhJV+eWLdBpQtKSwAXAJ1N9u4uArwG/yu/UHSXMyq1lz9R14wHgaEnfAz4SEW92XsEdJcyszR2RSkM9CKwG5K9YVOs0sS4wMyIeTetcCGzTeafuKGFWbm03qIuIy4DPAm8CN0naruCQzMyaRtIoYHtgi4gYCkwElqwsTwO34WSDuxNS32wzawPtMKibr0K6pDWBxyPidODPwCZFBWZmVoBBwEsR8Yak9YCP5xd20WniEWCIpLXTal8C7m5izGZWB+1wT90UYE661HABsATwJUnvAv8BftLt1iNGgAtomln7uBk4VNIMssHag52WbwycImku8C7wtYh4S9IBwJWSFgXGAmd39yFOnWbl07KDuogYmH6+C3S+xHpS8yMyMyteRLwNfLrKoiHp5y3p1Xm724FNGxeZmTVaS11+7ap4ZqUQ8UKplEWv18vMrIVJ2j9dou1WvVOn06pZ37XUoK4ruULEZmbWN/sDPQ7qzKx8Sjuo66pAZlq2lKS/SDo4vZ+dfo6SdE/a7hFJZ0sq7TGamTVaaqU4Q9K5qRjxrSmHDpP0YCrSfo2kD0jaA+gALk0F3JcqOn4zq12ZBzyVAplDI2Ijspt/AQYC1wOXR8S5VbbbHDgc2ABYC/h8M4I1MyuxdYAzI2JD4GVgd+Ai4HsRsQlZeZNjI+IqYBywb0QMq1bn08zKq8yDumoFMiErU/L7iLioi+3GRMTjETEHuBzYqvMKkg6RNE7SuOcaE7uZWZnMjIhJaXo82RfewRFRKVtStdhwZ/ncCc6eZmVT2kFdNwUyRwM7Sl3ePhs9vHdHCTPrb97OTc8BBi/MTtxRwqzcSjuo66JAJsAPgZeAM7vYdHNJa6R76fYC7mt4sGZmreUV4CVJW6f3+WLD8xV0N7PWUdpBHVmBzDGSJgHHAifkln0TWErSz6psNxb4NTADmAlc0+A4zcxa0VfIihBPAYYBx6f5FwBn+0EJs9ajiAWuTras1PPwqIjYudZtOjo6YpzLopsVQtL47FKetRrnTrNidJc3y3ymzszMzMxq1LJtwqqJiLuAu3q1UaUseiO00VlQM7O8RqbOnji1mlXnM3VmZmZmbaBlz9RJGgLckAoTI+kossLEo4DJwCfIju/AiBhTUJhmZqXhvGnW3tr1TN3SETEM+DpwfsGxmJm1AudNsxbXroO6ywEi4h5gOUmD8wvdUcLMbAHd5k1wRwmzsmvlQd17zB//krnpbrtKuKOEmfVTC503wR0lzMqulQd1zwAflLSCpCWAfG26vQAkbQW8kusba2bWnzlvmrWxln1QIiLelXQ8MAb4N/BwbvFbkiYCiwEHFhGfmVnZOG+atbe26igBIOkusq4SNZU6d1V0s+K4o0Q59DZvgnOnWVHcUcLMzMyszbXE5VdJs4COiHi+hnVG9Wrn7ihhZm1K0uyIGNjTepW8mfpnvxMR9/e0jTtKmJWPz9SZmVnFKGBk0UGY2cJp2KBO0hBJD0u6QNKjki6VtL2k0ZIek7S5pOUlXStpiqQHJW2Stl1B0q2Spks6D1Buv/tJGiNpkqTfShrQ6XOXkXSjpMmSpknaq1HHaGZWJEnfkXREmj5V0h1pejtJl6bpE1M+fFDSymneLpL+JmmipL9KWjl1mzgU+FbKr1sXdFhmtpAafaZubeAXwHrptQ+wFXAUcDTwI2BiRGyS3l+UtjsWuC8iNgSuAVYHkLQ+2WP3W6bK53OAfTt95o7AUxExNLXCublhR2dmVqx7gcrgqwMYKGmxNO8eYBngwYgYmt4fnNa9D/h4RGwK/AH4bkTMAs4GTo2IYRFxb/MOw8zqodH31M2MiKkAkqYDt0dESJoKDAE+AuwOEBF3pDN0ywHbAJ9P82+U9FLa3yeBEcBYZTdzLAU82+kzpwK/kHQyWY/DBRKTpEOAQyCNFs3MWtN4YETKm28DE8gGd1sDRwDvADfk1v1Umv4wcIWkVYDFgZm1fFg+dzp7mpVPo8/UvZ2bnpt7P5eFG1AKuDB9ixwWEetGxHH5FSLiUWA42eDuBEk/7LwTd5Qws3YQEe+SDcj2B+4nO3O3LdlVkhnAuzGvbtUc5uXdM4BfR8TGwFeZv7NEd5/njhJmJVb0gxL3ki6fpqeuno+IV8kuE+yT5n8a+EBa/3ZgD0kfTMuWl/SR/A4lrQq8ERGXAKeQDfDMzNrVvWS3tNyTpg8lu62lu2dEB5EVHwb4Sm7+a8CyjQjSzBqv6EHdcWSXDqYAJzEvufwI2CZdsv088C+AiHgIOAa4NW1zG7BKp31uDIyRNIns3rwTGnwMZmZFupcsDz4QEc8Ab6V53TkOuFLSeCBfKup6YDc/KGHWmtquo0RvuSq6WXHcUaJ1OXeaFcMdJczMzMzaXOkGdZKOkDSjUmOp4Spl0RvxMjNrU41MnU6tZgunjG3Cvg5sHxFPVmZIWjQi3iswJjOztuT8atY+SnWmTtLZwJrAXyS9IuliSaOBi1OHijtS94nbJVUKEl8g6axULf1xSaMknZ/O9l1Q5PGYmTVKH7v2HNcpv64k6WpJY9Nry4IPz8wWQqnO1EXEoZJ2JKuz9A1gF2CriHhT0vVkNeoulHQgcDqwa9r0A8AWwGeB64Atgf8hK1I8LCImNfdIzMyaYm1gT+BAYCzzuvZ8lqxLzxNk5U12lbQdWdeeYWnbDZiXXy8j6yRxX/rCfAuwflOPxMz6rFSDuiqui4g30/QWpC4TwMXAz3LrXZ/rVPFMpy4WQ4BJ+Z26o4SZtYmF7doD8+fX7YENNO+GteUkDYyI2fkPc0cJs3Ir+6Du9RrXy3eq6NzFYoFjjIhzgHMAOqT+XdPFzFpZT1173u1m23x+XYSsF+xb3X1YPndKHc6dZiVTqnvqenA/8MU0vS89F9c0M+vvuura09mtwOGVN5KGNSE2M6uzsp+pyzsc+L2k7wDPAQcUHI+ZWdkdB5yfOvC8wfwtwfKOAM5M6y1K1nLs0KZEaGZ1444SropuVhh3lGhdzp1mxXBHCTMzM7M2V8pBXaq/NK2P+xglaWSPK7qjhJm1iWbmTneUMCufUg7q6mQU0POgzszM8kbh3GnWkso8qFs0VUifIekqSUtLGiHpbknjJd0iaRV4v1/sQ6lq+h8kDSG7yfdbkiZJ2rrQIzEzax7nTrN+qsxPv64LHBQRoyWdDxwG7AZ8LiKek7QXcCJZJfXvA2tExNuSBkfEy6nl2OyI+HlhR2Bm1nzOnWb9VJkHdU9ExOg0fQlZy5uNgNtS1fMBwNNp+RTgUknXAtf2tGN3lDCzNtaU3OnsaVY+ZR7Uda618howPSK2qLLuTsA2ZL1i/0/Sxt3u2B0lzKx9NSV3uqOEWfmU+Z661SVVktA+wIPASpV5khaTtKGkRYDVIuJO4HvAIGAgWSJbtoC4zcyK5Nxp1k+VeVD3CHCYpBnAB4AzgD2AkyVNBiaRPaE1ALgkNbCeCJweES8D1wO7+WZfM+tnnDvN+il3lHBVdLPCuKNE63LuNCuGO0qYmZmZtbnCBnWSBkv6ep32dZyk/RdqY3eUMLM20JecKukCSXv0Zht3lDArnyLP1A0G6jKoMzMz51Sz/q7IQd1JwFrpZtxT0muapKmpOGalB+Hdkv4s6XFJJ0naV9KYtN5aaV+zgTfTNvNVSC/o2MzMmq1zTv2OpLEpF/6ospKkL6d5kyVdnNt+G0n3p1zbq7N2ZlYORdap+z6wUUQMk7Q7WWuaocCKwFhJ96T1hgLrAy8CjwPnRcTmkr4JHA4c2any+XwV0pt0LGZmRcvn1B3InnjdHBBwnaRtgBeAY4CREfG8pOVz268CbAWsB1wHXNXU6M2sz8ryoMRWwOURMScingHuBjZLy8ZGxNMR8TbwD+DWNH8qMKTKvioV0vcD3qv2YZIOkTRO0rjn6nkUZmblsEN6TQQmkA3U1gG2A66MiOcBIuLF3DbXRsTciHgIWLnaTvO5E5w9zcqmLIO67rydm56bez+X6mcadwLOBIaTnfFbYJ2IOCciOiKiY6V6R2tmVjwBP42IYem1dkT8rodt8rm26uMI+dwJzp5mZVPkoC5ftfxeYC9JAyStRNa2Zkxvd9hNhXQzs3aXz6m3AAdKGggg6UOSPgjcAewpaYU0f/mqezKzllTYPXUR8YKk0ZKmAX8hu2w6maxv4Xcj4j+S1uvlbisV0geRfdOsVEg3M2trVXLqZcADymqAzAb2i4jpkk4E7pY0h+zy7P5FxWxm9eWOEq6KblYYd5RoXc6dZsVwRwkzMzOzNldkR4lZklas075mdzG/5yrpzSqLbmbWhdQV56gCPvd4SdsvzLZFdpRwejWrrsg6dWZmVqCI+GHRMZhZ/TTlTJ2kZSTdmCqYT6t0jAAOlzQhdYdYL627vKRrU8XzByVtkubP90027WdIp8+RpF9LekTSX4EPNuP4zMx6S9L/SXpU0n3AusAASRNyy9epvE9XNn5UJV9uLukBSRNTN4h10/z9Ux69LW37DUnfTus9WHnqNX81Q9JmaR+TU9eeZTvHbGbl1qzLrzsCT0XE0IjYCLg5zX8+IoYDZwGVAduPgIkRsQlwNHBRLz5nN7LkuAHwZWBkPYI3M6snSSOALwLDgM+QFVufA7wiaVha7QDg97nNquXLh4GtI2JT4IfAT3LrbwR8Pu37ROCNtN4DZPkxH8/iwBXANyNiKLA9qfWimbWOZg3qpgKfknSypK0j4pU0/0/p53jmdYfYCrgYICLuAFaQtFyNn7MN8zpTPEVWk2kB7ihhZgXbGrgmIt6IiFfJ2nIBnAccIGkAsBdZWZKKavlyEHBlKmNyKrBhbv07I+K1iHgOeAW4Ps2v1o1nXeDpiBgLEBGvRsQCHXncUcKs3JoyqIuIR8k6PEwFTpBUuY+jUsF8Dj3f3/ce88e7ZB/icUcJMyujq4FPAzsD4yPihdyyavnyx2SDt42AXZg/L/a2G0+P3FHCrNyadU/dqmSn/i8BTiEb4HXlXmDftN0osksOrwKzKttJGg6sUWXbe5jXmWIVYNs6HYKZWT3dA+wqaal079ouABHxFlk3iLOY/9JrVwYB/07T+/chnkeAVSRtBiBp2WotFs2s3Jp1+XVjYIykScCxwAndrHscMELSFOAk4Ctp/tXA8pKmA98AHq2y7TXAY8BDZPfiPVCP4M3M6ikiJpDdwzaZrPvD2NziS8nOpt1aw65+BvxU0kT6UM0gIt4hu9x7hqTJwG304WqImRXDHSVcFd2sMO4osaD0lP+giPhB0bF0x7nTrBjd5U2fXjczKwlJ1wBrAdsVHYuZtZ62G9RJmgV0RMTzkmZHxMBuN6iURW+0fn5G1Mx6FhG7FR1DrZqVOmvh9GqWce9XMzMzszbQ0oO6VDF9vKTpkg4pOh4zMzOzorT65dcDI+JFSUsBYyVdXXRAZmZmZkVo9UHdEZIq96CsBqxTy0bprN4hAKs3KDAzs3aTz53Onmbl07KXX1Nh4u2BLVKvwonUWFfJHSXMzKqTdJikSem1an6ZO0qYlVsrn6kbBLwUEW9IWg/4eNEBmZm1uog4Eziz6DjMrPda9kwdcDOwqKQZZJ0nHiw4HjMzM7PCtOyZuoh4m6zxdWdDcut0X6MOYMQIcFV0M7Neceo0K59WPlNnZmZmZklNgzpJGzc6kMJUyqI362VmbaXV8qOk8yU9K2labt6PJU1JD0fc2vkBiWqanTqdZs16VuuZut9IGiPp65IGNTQiM7PW0mr58QJgx07zTomITSJiGHAD8MNmB2VmfVfToC4itgb2JasFN17SZZI+1dDIaiBpGUk3SposaZqkvSR9UtJESVPTN9Ilio7TzNpXWfNjVyLiHuDFTvNezb1dBnA3VbMWVPODEhHxmKRjgHHA6cCmkgQcHRF/alSAPdgReCoidgJI35KnAZ+MiEclXQR8DfhVQfGZWT9Q0vzYK5JOBL4MvAJsW3A4ZrYQar2nbhNJpwIzgO2AXSJi/TR9agPj68lU4FOSTpa0NdmTrzMj4tG0/EJgm84bSTpE0jhJ455rXqxm1oZKnB97JSL+LyJWAy4FvlFtnXzuBGdPs7Kp9Z66M4AJwNCIOCwiJgBExFPAMY0Kridp8DacbHB3ArBrjdu5o4SZ1Usp82MfXArsXm2BO0qYlVutl193At6MiDkAkhYBloyINyLi4oZF14P0hNaLEXGJpJfJvl0OkbR2RPwd+BJwd1HxmVm/UMr82BuS1omIx9LbzwEPFxmPmS2cWgd1fyXrszo7vV8auBUY2YigemFj4BRJc4F3ye6fGwRcKWlRYCxwdoHxmVn7K2t+rErS5cAoYEVJTwLHAp+RtC4wF/gncGhxEZrZwqp1ULdkRFQSFhExW9LSDYqpZhFxC3BLlUWb1rwTl0U3s74pZX7sSkTsXWX273q7H6dOs/Kp9Z661yUNr7yRNAJ4szEhmZm1FOdHMyuFWs/UHUl2SfMpQMB/AXs1Kqh6kLQr8GhEPNTtipWy6M0SLv9k1maOpMD8KGkIcENEbNSsz4Tmp87ecJq1/qqmQV1EjJW0HrBumvVIRLzbuLDqYleyyujdD+rMzPqgRfOjmbWhmosPA5uR1YFbFBguiYi4qCFRdUHSD4D9yAokPQGMB64BziR7vv4N4GBgeeCzwCdSQdDdI+IfzYzVzPqVovPjAEnnkj2c8W+yJ1j3Aw4BFgcq1QAWA6YAa0TEXEnLkD3puiawOp1yaUT4KVizFlLToE7SxcBawCRgTpodQNOSlqTNyGonDSVLTBPIBnXnAIemiu4fA34TEdtJuo7sksRVzYrRzPqfMuRHYB1g74g4WNIfyXLlnyLi3BTjCcBBEXGGpEnAJ4A7gZ2BWyLiXUkL5FKyAspm1iJqPVPXAWwQUeidClsCf46It4C3JF0PLEn2zfRKzbu5o8der5IOIfsGy+qNidXM+o8y5MeZETEpTY8nO2u4URrMDQYGMq9SwBVk9/zdCXwR+I2kgdSQS/O509nTrHxqHdRNI7v59+kGxrIwFgFejohhvdkoIs4hO8NHh+Rbas2sL8qQH9/OTc8BlgIuAHaNiMmS9ierTQdwHfATScsDI4A7gGWoIZfmc6fU4dxpVjK1ljRZEXhI0i2Srqu8GhlYFaOBXSQtmb5V7kx238dMSXsCKDM0rf8asGyTYzSz/qcM+bGaZYGnJS0G7FuZmWrqjQVOI7tFZU5EvErXudTMWkStZ+qOa2QQtUhPmF1HdpPvM2T9Xl8hS1ZnpQciFgP+AExOP8+VdASwhx+UMLMGOa7oALrwA+BvZA+W/Y35v+ReAVzJvLN30HUuNbMWoVpvA5H0EWCdiPhrqpY+ICJea2h0C8YwMFet/R7gkErz7IXV0dER41wW3awQksZnzeFbWxnyY7M5d5oVo7u8WdPlV0kHA1cBv02zPgRcW5foeuec9OTWBODqvg7ozMz6qkT50cz6uVovvx4GbE52Cp/0yPsHGxZVFalq+ia1Vk2XNAp4JyLu73bFIsuiu+y5WTsoQ348AvgaMCEi9u1p/Xooc0eJzpxqrb+odVD3dkS8U3nUXdKiZHWYymwUMBvoflBnZtY3ZciPXwe2j4gnKzMkLRoR7zU5DjMrUK1Pv94t6WhgKUmfIrvB9vrGhdWlRSVdKmmGpKskLS1plqQVASR1SLorndU7FPiWpEmSti4gVjPrHwrNj5LOJusI8RdJr0i6WNJo4GJJQyTdIWmKpNslrZ62uUDSWZIelPS4pFGSzk+59YJmxW5m9VXroO77ZE9QTQW+CtwEHNOooLqxLlnHiPWBV8m+nS4gImYBZwOnRsSwiLi3eSGaWT9TaH6MiEOBp4BtgVOBDcjO2u0NnAFcGBGbAJcCp+c2/QCwBfAtstp1pwIbAhtLGtas+M2sfmq6/BoRc4Fz06tIT0TE6DR9CXDEwuzEHSXMrF5KlB8rrouIN9P0FsDn0/TFwM9y610fESFpKvBMREwFkDSdrCPFpM47dkcJs3KrtffrTKrcIxIRa9Y9ou51jiGA95h3xnHJmnbijhJmViclyo8Vr9e4XqULxVzm70gxly7+3+COEmbl1pverxVLAnsCy9c/nB6tLmmLiHgA2Ae4j6yg5gjgL2RNrCteA5Zrfohm1s+UJT9Wcz9Zf9eLyYoL+1YUszZW0z11EfFC7vXviPgVsFNjQ6vqEeAwSTPI7gc5C/gRcJqkcWQ9DyuuB3bzgxJm1kglyo/VHA4cIGkK8CXgmwXHY2YNVFNHCUnDc28XIftm+rWIaPnegK6Kblacdugo0c75sTvOnWbF6C5v1nr59Re56feAWcAX+hiXmVk7cH40s1Ko9enXbRsdSKotd0OtHSPqpixl0V3y3KwlNSM/LixJsyNioKRVgdMjYg9J+wMdEfGNvuy7LKmzFk6v1l/U+vTrt7tbHhG/rE84ZmatpRXyY0Q8BexRdBxm1li1Fh/uIOsr+KH0OhQYTvbk6bJ1jGeApHMlTZd0q6SlJB0saaykyZKuTl0kBkn6p6RFACQtI+kJSYtJWkvSzZLGS7pX0np1jM/MrLNm5ceFljpLTKsyfydJD0haUdIOaXqCpCslDSwiVjNbeLXeU/dhYHhEvAYg6TjgxojYr87xrAPsHREHS/ojWYmSP0XEuelzTwAOiogzJE0CPgHcCewM3BIR70o6Bzg0NdX+GPAbYLs6x2lmVtGs/FhXknYDvg18BhhA1gVj+4h4XdL30rLjCwzRzHqp1kHdysA7uffvpHn1NjMiJqXp8WRVzTdKg7nBwEDglrT8CmAvskHdF4HfpG+WI4ErNe9mjyU6f4g7SphZHTUrP9bTdmRnGHeIiFcl7UzWXmx0yp2LAw903sgdJczKrdZB3UXAGEnXpPe7Ahc2IJ58VfM5wFLABcCuETE53eA7Ki2/DviJpOXJig/fASwDvBwRw7r7EHeUMLM6alZ+rKd/AGsCHwXGAQJuS/1iu+SOEmblVmvx4ROBA4CX0uuAiPhJIwPLWRZ4WtJiZBXRKzHNBsYCp5E9NTsnIl4FZkraE0CZtq4VZWbFKjg/Lqx/kt3ecpGkDYEHgS0lrQ3v36f80SIDNLPeq/VBCYClgVcj4jTgSUlrNCimzn4A/A0YDTzcadkVwH7pZ8W+wEGSJgPTgc81I0gz69eKyo8LLSIeJsuXV5K1VNwfuDx1n3gA8ENmZi2m1o4Sx5Ldf7FuRHw01Ty6MiK2bHSAjeaq6GbFaZOOEm2bH7vj3GlWjO7yZq1n6nYDPgu8Du/XPCrFo/pmZgVzfjSzUqj1QYl3IiKUHiqQtEwDY2quspRFd8lzs1bVUvlR0v0RMTJ18RkZEZctzH7Kkjpr4fRq/UWtZ+r+KOm3wGBJBwN/Bc5tXFgLR1Ktg1Qzs3ppifxYEREj0+QQYJ8CQzGzOutxEKSsaNEVZDfNvgqsC/wwIm6rVxDpG+PNZE9gjSR7qvX3wI+AD5LdzPt34Hyyx/DfAA6JiCmp0Odaaf6/JB0BnM28IkpHRsToesVqZlbRjPxYb5V+sMBJwPqpkPuFwK1keXdxsi/8u0fEY4UFama91uOgLl1WuCkiNgYamajWBvYEDiQb1O0DbEV2r8rRwBPAxIjYVdJ2ZLWhhqVtNwC2iog3JV0GnBoR90lanaxY8foNjNvM+qkm5sdG+D5wVETsDCDpDOC0iLhU0uJkXSbMrIXUerlygqTNImJsA2OZGRFTASRNB25PCXMq2WWCj5DVVSIi7pC0gqTl0rbXRcSbaXp7YINcR4nlJA1Mde1I+3dHCTOrl2bkx2Z4APg/SR8ma8+4wFk6d5QwK7daB3UfA/aTNIvsCS+RfUndpI6x5LtJzM29n0sW57vdbPt6bnoR4OMR8VZXK7ujhJnVUTPyY8NFxGWS/gbsBNwk6asRcUenddxRwqzEuh3USVo9Iv4F/HeT4unOvWT31v1Y0ijg+dSzsPN6twKHA6cASBqW6ydrZlYXJcuPC+M1cqVXJK0JPB4Rp6dbVzYha79oZi2ipzN11wLDI+Kfkq6OiN2bEFNXjgPOT9XO3wC+0sV6RwBnpvUWBe4BDm1KhGbWn1xLefLjwpgCzEnddy4AlgC+JOld4D9A2VudmVkn3XaUkDQxIjbtPN1OXBXdrDit3FGiP+TH7jh3mhWjLx0lootpM7P+zvnRzEqlp8uvQyW9Snbj71JpGubdCLxc15u2iLKURXfJc7NW0/75sRtlSZ2N5tRsraTbQV1EtHydIkkDImJO0XGYWXspa36UtGhEvFd0HGbWfLW2CWsKScdLOjL3/kRJ35R0iqRpkqZK2istGyXphty6v5a0f5qeJelkSRPIChqbmbUcSctIulHS5JQD95K0maT707wxkpaVtL+k6yTdAdyetjs/LZ8o6XNpfwNSPh0raYqkr6b5oyTdJekqSQ9LulRVSguYWbmVrVfq+cCfgF9JWgT4IvBdYGdgKLAiMFbSPTXs64WIGN6wSM3MGm9H4KmI2AlA0iBgIrBXRIxNBdgrhdeHA5tExIuSfgLcEREHShoMjJH0V7KyUK9ExGaSlgBGS7o1bb8psCHwFDAa2BK4rzmHaWb1UKpBXUTMkvSCpE2BlcmS11bA5ekS6jOS7gY2I+uz2J0rulrgjhJm1iKmAr+QdDJwA/Ay8HSle0VEvAqQTqrdFhEvpu12AD4r6aj0fkmydLcDsImkPdL8QcA6wDvAmIh4Mu1vElknn/kGde4oYVZupRrUJecB+wP/RXbm7lNdrPce818+XrLT8tfpgjtKmFkriIhHJQ0HPgOcQPfFgPM5T8DuEfFIfoV0SfXwiLil0/xRzN/VZw5V/v/gjhJm5Vaqe+qSa8guOWwG3ELWSWKvdC/ISsA2wBjgn2Q9XpdIlxc+WVC8ZmYNIWlV4I2IuISsS87HgFUkbZaWLyup2pfzW4DDK/fFpasflflfk7RYmv9RScs0+jjMrDlKd6YuIt6RdCfwckTMkXQNsAUwmawW1Hcj4j8Akv4ITANmkl2qNTNrJxsDp0iaS9b/+mtkZ+HOkLQU2f1021fZ7sfAr4Ap6f7kmWT3Jp9Hdll1QhrwPQfs2thDMLNm6bajRBFSApoA7BkRjzX681wV3aw4rdxRor9z7jQrRl86SjSVpA2AvwO3N2NAZ2ZmZtYuSnX5NSIeAtbszTapNl1HRHxjoT60Vcqil+yMqpm1F0mzyHLp85JmR8TA7tZvldTZV0691kpKdabOzMzMzBZOoYM6SddKGi9peqp/hKTZkk5N825PT7ySqp2fJmlSqqy+eZX9rSTp6lQtfaykLZt9TGZmZVct95pZ6yv6TN2BETEC6ACOkLQCsAwwLiI2BO4Gjs2tv3REDAO+TlbDrrPTgFMjYjNgd7InvczMbH7Vcq+Ztbii76k7QtJuaXo1ssrmc5nXDeISsrZhFZcDRMQ9kpZL9enytierXVd5v5ykgRExO7+SO0qYWT9XLff2yB0lzMqtsEFdqmC+PbBFRLwh6S4W7AoBWW26atPV3i8CfDwi3urus91Rwsz6q17k3gW4o4RZuRV5+XUQ8FJKKusBH8/FVOlLuA/z9x7cC0DSVmRNqV/ptM9bgcMrbyQNa0DcZmatrKvca2YtrshB3c3AopJmACcBD6b5rwObS5oGbAccn9vmLUkTgbOBg6rs8wigQ9IUSQ8BhzYsejOz1tRV7jWzFlfGjhJV6yOlSwRHRURdS5i7KrpZcdxRonU5d5oVo2U6SpiZmZnZwin66dcFdFXFPCJGNeQDW7EsesnOrppZe5F0f0SM7G6dVkyd9eD0a2XmM3VmZjafngZ0ZlZOpRzUSRoi6WFJF0h6VNKlkraXNFrSY5I2T68HJE2UdL+kddO235J0fpreOHWfWLrYIzIzax2SZve8lpmVTSkHdcnawC+A9dJrH2Ar4CjgaOBhYOuI2BT4IfCTtN1pwNqpsObvga9GxBtNjt3MzMysqUp3T13OzIiYCiBpOnB7RISkqcAQslpLF0pah6wI8WIAETFX0v7AFOC3ETG6847dUcLMrPfcUcKs3Mp8pu7t3PTc3Pu5ZIPRHwN3RsRGwC7MXxF9HWA2sGq1HUfEORHREREdK9U9bDOz9pTPneDsaVY2ZR7U9WQQ8O80vX9lpqRBwOnANsAKkvZYcFMzMzOz9tLKg7qfAT9NHSbyl5FPBc6MiEfJuk6cJOmDRQRoZmZm1iyl6yjRbK6KblYcd5RoXc6dZsVwRwkzMzOzNudBXaUseju8zKxfkzRY0td7WGeIpGldLPtDqijQo3ZKna3yMuuJB3VmZu1jMNDtoK4HZwHfrU8oZtZsHtSZmbWPk4C1JE2SdKqk2yVNkDRV0udy6y2aOvXMkHRVruvOvcD2kspcw9TMuuBBnZlZ+/g+8I+IGAZ8B9gtIoYD2wK/kN6/iLcu8JuIWB94lXR2LyLmAn8HhjY7cDPru345qJN0iKRxksY9V3QwZmaNIeAnkqYAfwU+BKyclj2R67ZzCVkLxopn6aJwez53grOnWdm0/Cl2SYcBB/ew2rkRcWblTUScA5wD0CH175ouZtau9iVr+zAiIt6VNIt5nXc65738+yWBN6vtMJ87pQ7nTrOSaflBXRqsndnjimZm7e81YNk0PQh4Ng3otgU+kltvdUlbRMQDwD7AfbllHwWqPh1rZuXWLy+/mpm1o4h4ARidSpYMAzokTQW+DDycW/UR4DBJM4APkD31iqSVgTcj4j9NDdzM6qLlz9T12YgR4KroZtYmImKfGlZbr4v5+wC/reVznDrNyseDOjMzq3gZuLjoIMxs4ZR2UCdpMLBPRPymm3WGADdExEZVlv0B+EFEPNbtB1XKolt99PNewmatQtL+QEdEfKMyLyJ+X+v2Tp3Fc7q1zsp8T91gXBndzMzMrCZlHtS5MrqZWRWSrpU0XtJ0SYekebNTrpye8uVKaf5dkk5LuXSapM2r7G8lSVdLGpteWzb7mMys78o8qHNldDOz6g6MiBFAB3CEpBWAZYBxEbEhcDdwbG79pVMu/TpwfpX9nQacGhGbAbsD5zUyeDNrjFY5i1WpjL4NMJfuK6MfAfw8va9URh8/386yb7aHAKze2LjNzBrhCEm7penVgHXIcuMVad4lwJ9y618OEBH3SFou3bOctz2wwbzvyiwnaWBEzM6vlM+dzp5m5dMqg7q6VkZ3Rwkza1WSRpENwraIiDck3cW8fJgXXUxXe78I8PGIeKu7z3ZHCbNyK/Pl115VRk/TroxuZu1uEPBSGtCtB3w8zV8E2CNNd86FewFI2gp4JSJe6bTPW4HDK28kDWtA3GbWYKUd1LkyuplZVTeTPSA2g+yBsgfT/NeBzVPO3A44PrfNW5ImAmcDB1XZ5xFkOXaKpIeAQxsWvZk1jKJNC91I+hbwakT8rrv1Ojo6YpzLopsVQtL4iOgoOo52IGl2RAysMv8u4KiIqGuic+40K0Z3ebNV7qlbGC/jyuhmZmbWTzRlUCdpKbJLBttFxJxmfGbNldFdFr19tOlZZ+u/epM7q52lS/NHNSA0p84253Tampp1T92BwJ+aNaAzM2sTzp1mVrNmDer2Bf6szCmpqvlUSZUnskZJukfSjZIekXS2pEXSsh0kPZC6SVwpaWCaP0vSj3JdJtZL8z+RKqdPkjRR0rJdRmVmVm7OnWZWs4YP6iQtDqwZEbOAz5M9yTqUrM7SKZJWSatuTvZI/QbAWsDnJa0IHANsn7pJjAO+ndv982n+WcBRad5RwGGpevrWVKlTZ2ZWds6dZtZbzbinbkWyhxYAtgIuT5cSnpF0N7AZWXuvMRHxOICky9O6b5ElqtGp0vniwAO5fVcqpo8nS3oAo4FfSrqU7LLFk50DckcJM2sBpc6dzp5m5dOMQd2bVK923lm1iucCbouIvbvY5u30cw7pWCLiJEk3Ap8hS2j/HRH5unbuKGFmraDUudMdJczKp+GXXyPiJWCApCWBe4G9JA2QtBKwDTAmrbq5pDXS/SB7kVVDfxDYUtLaAJKWkfTR7j5P0loRMTUiTgbGAus15sjMzBrHudPMeqtZD0rcSnZJ4BpgCjAZuAP4bq7jw1jg18AMYCZwTUQ8B+wPXC5pCtnlg54SzZHpZuIpwLvAX+p8LGZmzeLcaWY1a0pHCUnDgW9FxJe6WD6KrOL5zg0PphNXRTcrjjtKdM+508w66y5vNuVMXURMAO6UNKAZn2dm1g6cO82sN9q292utOqT6NkS0/qmf/x0tLJ+pa13ZgxLOnv2FU1x5FH6mzszMystnAs3aQ2kHdZKGSJoh6VxJ0yXdKmkpSWtJulnSeEn3SlovPRE2M1VdHyxpjqRt0n7ukbRO0cdjZlaElEsflnRpyqlXSVo6dZY4WdIEYE9Je6cOE9MknVx03GbWe6Ud1CXrAGdGxIZkRTh3J6uRdHhEjCCrgP6bVJDzEbJim1sBE4CtJS0BrBYRjxURvJlZSaxLlivXJytY/PU0/4XUWeIe4GRgO7LOFZtJ2rWAOM2sD5pRfLgvZkbEpDQ9HhgCjASuTFXSAZZIP+8lq920BvBT4GDgbrLH/efjjhJm1s88ERGj0/QlwBFp+or0czPgrlQKhdRVYhvg2vxO3FHCrNzKfqbu7dz0HGB54OWIGJZ7rZ+W30PWr3Bz4CZgMDCKbLA3n4g4JyI6IqJjpUZGb2ZWDtW6TgC83qud5HInOHualU3ZB3WdvQrMlLQnQLqHbmhaNobsLN7ciHgLmAR8lWywZ2bWn60uaYs0vQ9Z14m8McAnJK2YHprYm+xKh5m1kFYb1AHsCxwkaTIwHfgcQES8DTxB1h4HsjN0ywJTiwjSzKxEHgEOkzQD+ABwVn5hRDwNfB+4k6xrxfiI+HPTozSzPnGdOldFNyuM69Q1nqQhwA0RsVE99+vcaVYM16kzMzMza3Nlf/q18caPh3lP0pq1rn5+1t2qi4hZwPtn6SSdD+wMPNv57J2k/wV+DqwUEc93t1+nTmsWp7batdWZOldFNzPr0QXAjp1nSloN2AH4V7MDMrP6aJlBnauim5n1XUTcA7xYZdGpwHdZsPyJmbWIlhnUJa6KbmZWZ5I+B/w7IiYXHYuZLbxWG9R1roq+VZpeoCp6RLwHVKqiz0fSIZLGSRr3XMNDNjMrL0lLA0cDP6xh3fdzJzh7mpVNqw3q6l4V3TXRzayfW4usveJkSbOADwMTJP1X5xXdUcKs3FptUOeq6GZmdRQRUyPigxExJCKGAE8CwyPiPwWHZma91GqDOldFNzPrA0mXAw8A60p6UtJBRcdkZvXRanXq3ouI/TrNG5J/ExGXA5fXvMcRI8BV0c2sn4iIvXtYPqSW/Th1mpVPq52pMzMzM7MqWuZMXaOqorssulkXXMbduuHUaf1R2dNiK5+puwBXRTczMzMDWnhQ56roZmbzS513Zkg6V9J0SbdKWkrSWpJuljRe0r2S1pM0QNJMZQZLmiNpm7SfeyStU/TxmFnvtOygrppaq6K7+LCZtbF1gDMjYkPgZWB34Bzg8IgYARxF1plnDllFgQ3ICrlPALaWtASwWkQ81nnHLj5sVm4tc09dT3JV0Xfoad2IOIcsydEh+YyembWTmRExKU2PJ6sQMBK4UvNuglsi/byXrOvOGsBPgYPJanuOrbbjfO6UOpw7zUqmnc7U1VwV3cysjb2dm54DLA+8HBHDcq/10/J7gK2BzYGbgMHAKLLBnpm1mLYZ1LkquplZVa8CMyXtCZDuoRualo0hO4s3NyLeAiYBXyUb7JlZi2nZy6+pKvooYEVJTwLHRsTver0jV9A0s/a3L3CWpGOAxYA/AJMj4m1JTwAPpvXuJWuvOLWnHTp1mpVPyw7q6lUV3cysXXSu5xkRP88tXqAEVFpn69z0ZcBljYrPzBqrZQd1deMKmmb1VfbqnFYXTp1m9VWP1Nnwe+ok3V/DOrMbHYeZWStx7jSz3mr4oC4iRjb6M8zM2o1zp5n1VjPO1M1OP0elKuU3SnpE0tmSFsmtd6KkyZIelLRymjdE0h2Spki6XdLqaf4Fkk6XdL+kxyXtkdvPdySNTdv8qNHHZ2bWCM6dZtZbzS5psjlwOFkF87WAz6f5ywAPRsRQskfpD07zzwAujIhNgEuB03P7WoWsCvrOwEkAknYgq6a+OTAMGFFpe5PnjhJm1mJKlzvdUcKsfJo9qBsTEY+n9jSXkyUWgHeAG9J0pQI6wBbMexLr4tz6ANdGxNyIeAhYOc3bIb0mkrW8WY8sUc0nIs6JiI6I6FipLodlZtZQpcud4OxpVjbNfvq187MdlffvRrz/3MccaosrXzVduZ8/jYjfLnyIZmal49xpZj1q+uVXSWuk+0H2Au7rYf37gS+m6X3puXXNLcCBkgYCSPqQpA/2JWAzsxJw7jSzHjX7TN1Y4NfA2sCdwDU9rH848HtJ3yG7geOA7laOiFslrQ88kBpXzwb2A57tciOXRTez8itd7nTqNCsfRZMKhUoaBRwVETs35QNr1NHREeOcmcwKIWl8dn+WdcW508zyusubzb78amZmZmYN0LTLrxFxF3BXsz7PzKwdOHeaWa18ps7MzMysDXhQZ2ZmZtYGPKgzMzMzawMe1JmZmZm1AQ/qzMzMzNqAB3VmZmZmbcCDOjMzM7M24EGdmZmZWRvwoM7MzMysDTSt92tZSXoNeKToOBpoReD5ooNoIB9fa/tIRKxUdBDWeyXPnWX+uylrbGWNC8obW1FxdZk3m9YmrMQeaeeG4pLG+fhaV7sfn7W00ubOMv/dlDW2ssYF5Y2tjHH58quZmZlZG/CgzszMzKwNeFAH5xQdQIP5+Fpbux+fta4y/7fp2HqvrHFBeWMrXVz9/kEJMzMzs3bgM3VmZmZmbaBfD+ok7SjpEUl/l/T9ouPpK0mrSbpT0kOSpkv6Zpq/vKTbJD2Wfn6g6Fj7QtIASRMl3ZDeryHpb+n3eIWkxYuOcWFJGizpKkkPS5ohaYt2+/1Z6ytT7pR0vqRnJU3LzSv8b6bM+VjSkpLGSJqcYvtRml+KXFrWHC9plqSpkiZJGpfmFf77zOu3gzpJA4AzgU8DGwB7S9qg2Kj67D3gfyNiA+DjwGHpmL4P3B4R6wC3p/et7JvAjNz7k4FTI2Jt4CXgoEKiqo/TgJsjYj1gKNlxttvvz1pYCXPnBcCOneaV4W+mzPn4bWC7iBgKDAN2lPRxypNLy5zjt42IYblSJmX4fb6v3w7qgM2Bv0fE4xHxDvAH4HMFx9QnEfF0RExI06+R/VF8iOy4LkyrXQjsWkiAdSDpw8BOwHnpvYDtgKvSKi17fJIGAdsAvwOIiHci4mXa6PdnbaFUuTMi7gFe7DS78L+ZMufjyMxObxdLr6AEubQFc3zhv8+8/jyo+xDwRO79k2leW5A0BNgU+BuwckQ8nRb9B1i5qLjq4FfAd4G56f0KwMsR8V5638q/xzWA54Dfp0sP50lahvb6/Vnra4XcWaq/mTLm43SJcxLwLHAb8A/KkUt/RXlzfAC3Shov6ZA0rxS/z4r+PKhrW5IGAlcDR0bEq/llkT3u3JKPPEvaGXg2IsYXHUuDLAoMB86KiE2B1+l0Kr+Vf39mRSj6b6as+Tgi5kTEMODDZGdf1ysijrwWyPFbRcRwslsPDpO0TX5h0f+tQf8e1P0bWC33/sNpXkuTtBhZArk0Iv6UZj8jaZW0fBWyb2ataEvgs5JmkV3y2Y7sHrTBkiot71r59/gk8GRE/C29v4pskNcuvz9rD62QO0vxN9MK+Tjd4nEnsAXF59JS5/iI+Hf6+SxwDdlguFS/z/48qBsLrJOeqlkc+CJwXcEx9Um69+B3wIyI+GVu0XXAV9L0V4A/Nzu2eoiI/xcRH46IIWS/rzsiYl+yhLRHWq2Vj+8/wBOS1k2zPgk8RJv8/qxttELuLPxvpsz5WNJKkgan6aWAT5Hd81doLi1zjpe0jKRlK9PADsA0SvD7zOvXxYclfYbs+v0A4PyIOLHYiPpG0lbAvcBU5t2PcDTZfRx/BFYH/gl8ISI631jcUiSNAo6KiJ0lrUn2rW55YCKwX0S8XWB4C03SMLIbhBcHHgcOIPvy1Va/P2ttZcqdki4HRgErAs8AxwLXUvDfTJnzsaRNyG7qH0DKLxFxfJlyadlyfIrhmvR2UeCyiDhR0gqUKD/360GdmZmZWbvoz5dfzczMzNqGB3VmZmZmbcCDOjMzM7M24EGdmZmZWRvwoM7MzMysDXhQZ4WTdKqkI3Pvb5F0Xu79LyR9eyH2O0rSDXUK08ysVJw7rTMP6qwMRgMjASQtQlZvasPc8pHA/T3tRNKAhkRnZlZOzp02Hw/qrAzuJ2tRA1lCmga8JukDkpYA1gcGpSb3UyWdn+YjaZakkyVNAPaUtKOkh9P7z1c+QNInJE1Kr4mVyuBmZi3MudPms2jPq5g1VkQ8Jek9SauTfbN8APgQWbJ6BXiMrMvCJyPiUUkXAV8jq2gP8EJEDJe0ZFp3O+DvwBW5jzkKOCwiRqcG22814dDMzBrGudM685k6K4v7yZJSJTE9kHv/JDAzIh5N614IbJPbtpKA1kvrPRZZq5RLcuuMBn4p6QhgcES817AjMTNrHudOe58HdVYWlXtDNia7hPAg2bfNkcBdPWz7ek87j4iTgP8BlgJGS1qvL8GamZWEc6e9z4M6K4v7gZ2BFyNiTmqIPJgsOV0NDJG0dlr3S8DdVfbxcFpvrfR+78oCSWtFxNSIOBkYS/bN1Mys1Tl32vs8qLOymEr25NaDnea9EhFPAgcAV0qaCswFzu68g4h4CzgEuDHd7PtsbvGRkqZJmgK8C/ylMYdhZtZUzp32PmWXz83MzMyslflMnZmZmVkb8KDOzMzMrA14UGdmZmbWBjyoMzMzM2sDHtSZmZmZtQEP6szMzMzagAd1ZmZmZm3AgzozMzOzNvD/ATlDEqax8/opAAAAAElFTkSuQmCC\n", + "image/png": "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\n", "text/plain": [ - "
    " + "
    " ] }, "metadata": { @@ -616,19 +446,6 @@ "from bs4 import BeautifulSoup\n", "from collections import Counter\n", "\n", - "def graph(a_1, a_2):\n", - " \n", - " fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(10,5)) #makes two plots with it being max width\n", - " ax1.barh([wordCount[0] for wordCount in a_1], [wordCount[1] for wordCount in a_1], color='red')#\n", - " ax2.barh([wordCount[0] for wordCount in a_2], [wordCount[1] for wordCount in a_2], color='blue')#\n", - " ax1.set_title('iPhone 14 (Tom)')\n", - " ax2.set_title('iPhone 14 Pro (Tech)') \n", - " ax1.set(xlabel='Words', ylabel='Frequency')\n", - " ax2.set(xlabel='Words', ylabel='Frequency')\n", - "\n", - " plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=0.5, hspace=None)\n", - " plt.show()\n", - "\n", "def frequency (all_articles):\n", " freqs = [] #so an array of two dicts\n", " for i in range(len(all_articles)):\n", @@ -636,49 +453,10 @@ " freqs.append(c)\n", " return freqs\n", "\n", - "\n", "def parse(articles):\n", " articles_words = [] #2d array with first element being the words array for first book\n", - " to_remove = {\n", - " \"with\": 0,\n", - " \"the\": 0,\n", - " \"a\": 0,\n", - " \"on\": 0,\n", - " \"of\": 0,\n", - " \"to\": 0,\n", - " \"and\": 0,\n", - " \"an\": 0,\n", - " \"for\": 0,\n", - " \".\\n\": 0,\n", - " \".\": 0,\n", - " \"it\": 0,\n", - " \"is\": 0,\n", - " \"in\": 0,\n", - " \"at\": 0,\n", - " \"ii\": 0,\n", - " \"lens\": 0,\n", - " \"/\": 0,\n", - " \"which\": 0,\n", - " \"it's\": 0,\n", - " \"when\": 0,\n", - " \"as\": 0,\n", - " \"review\": 0,\n", - " \"this\": 0,\n", - " \"that\": 0,\n", - " \"review\": 0,\n", - " \"has\": 0,\n", - " \"or\": 0,\n", - " \"·\": 0,\n", - " \"be\": 0,\n", - " \"gm\": 0,\n", - " \"fe\": 0,\n", - " \"you\": 0,\n", - " \"we\": 0,\n", - " \"by\": 0,\n", - " \"can\": 0,\n", - " \"will\": 0,\n", - " \"are\": 0,\n", - " \"|\" : 0\n", + " remove = {\n", + " \"with\": 0,\"the\": 0,\"a\": 0,\"on\": 0,\"of\": 0,\"to\": 0,\"and\": 0,\"an\": 0,\"for\": 0,\n", " }\n", "\n", " for book in articles:\n", @@ -691,11 +469,22 @@ "\n", " words[i] = words[i].strip()\n", "\n", - " f_words = [word for word in words if word not in to_remove]\n", + " f_words = [word for word in words if word not in remove]\n", " \n", " articles_words.append(f_words)\n", " return articles_words\n", "\n", + "def graph(a_1, a_2): \n", + " fig, (ax1, ax2) = plt.subplots(1,2) \n", + " fig.suptitle(\"iPhone 14 Pro vs iPhone 14 Pro\")\n", + " ax1.barh([wordCount[0] for wordCount in a_1], [wordCount[1] for wordCount in a_1], color='red')\n", + " ax2.barh([wordCount[0] for wordCount in a_2], [wordCount[1] for wordCount in a_2], color='blue')\n", + " ax1.set_title('iPhone 14 Pro (Tom)')\n", + " ax2.set_title('iPhone 14 Pro (Tech)') \n", + " ax1.set(xlabel='Words', ylabel='Frequency')\n", + " ax2.set(xlabel='Words', ylabel='Frequency')\n", + " plt.show()\n", + "\n", "if __name__ == \"__main__\":\n", " articles = []\n", " a_1 = 'https://www.tomsguide.com/opinion/iphone-14-pro-and-iphone-14-pro-max-reasons-to-buy-and-skip'\n", @@ -704,13 +493,6 @@ " articles.append(a_2)\n", " all_words = parse(articles)\n", " freqs = frequency(all_words)\n", - " print(\"\\niPhone 14 Pro (Tom's Guide)\")\n", - " for keyVal in freqs[0].most_common(25):\n", - " print(keyVal[0], \":\", keyVal[1])\n", - " print('\\n\\niPhone 14 Pro (Techradar)')\n", - " for keyVal in freqs[1].most_common(25):\n", - " print(keyVal[0], \":\", keyVal[1])\n", - " \n", " graph(freqs[0].most_common(25), freqs[1].most_common(25))" ] }, From 8267d6b5f5646e620302c11c9d5d2d8948d687d8 Mon Sep 17 00:00:00 2001 From: spate118 Date: Tue, 13 Sep 2022 19:20:57 +0000 Subject: [PATCH 5/6] minor changes --- spate118.ipynb | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/spate118.ipynb b/spate118.ipynb index 29f73e1..f9e762c 100644 --- a/spate118.ipynb +++ b/spate118.ipynb @@ -314,7 +314,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "#Part 1: Single Author" + "1. Single Author" ] }, { @@ -342,14 +342,14 @@ "from collections import Counter\n", "\n", "def frequency (all_articles):\n", - " freqs = [] #so an array of two dicts\n", + " freqs = [] \n", " for i in range(len(all_articles)):\n", - " c = Counter(all_articles[i])#dictionary of words and their counts\n", + " c = Counter(all_articles[i])\n", " freqs.append(c)\n", " return freqs\n", "\n", "def parse(articles):\n", - " articles_words = [] #2d array with first element being the words array for first book\n", + " articles_words = [] \n", " remove = {\n", " \"with\": 0,\"the\": 0,\"a\": 0,\"on\": 0,\"of\": 0,\"to\": 0,\"and\": 0,\"an\": 0,\"for\": 0,\n", " }\n", @@ -419,7 +419,7 @@ }, "outputs": [], "source": [ - "##Part 2: Different Author" + "2. Different Author" ] }, { @@ -447,14 +447,14 @@ "from collections import Counter\n", "\n", "def frequency (all_articles):\n", - " freqs = [] #so an array of two dicts\n", + " freqs = [] \n", " for i in range(len(all_articles)):\n", - " c = Counter(all_articles[i])#dictionary of words and their counts\n", + " c = Counter(all_articles[i])\n", " freqs.append(c)\n", " return freqs\n", "\n", "def parse(articles):\n", - " articles_words = [] #2d array with first element being the words array for first book\n", + " articles_words = [] \n", " remove = {\n", " \"with\": 0,\"the\": 0,\"a\": 0,\"on\": 0,\"of\": 0,\"to\": 0,\"and\": 0,\"an\": 0,\"for\": 0,\n", " }\n", From 0464443e483fa42ea5d7c9894491472bfc441d69 Mon Sep 17 00:00:00 2001 From: spate118 Date: Thu, 15 Sep 2022 18:26:36 +0000 Subject: [PATCH 6/6] finished part 3 --- spate118.ipynb | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/spate118.ipynb b/spate118.ipynb index f9e762c..ee9a25d 100644 --- a/spate118.ipynb +++ b/spate118.ipynb @@ -501,7 +501,18 @@ "execution_count": null, "metadata": {}, "outputs": [], - "source": [] + "source": [ + "3. Are there some words preferred by one author but used less frequently by another author?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "There are not some words that are preferred by one author but not the other since the topic is the same - iPhone 14 Pro. Most of the words are similar since the iPhone 14 Pro has the same specifications and functions regardless of who reviews the device." + ] } ], "metadata": {