Files
cos482-hw1/COS482 - HW1 - Pease.ipynb
T
2025-10-06 22:34:37 -04:00

407 lines
132 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"id": "11a4c40a",
"metadata": {},
"source": [
"In this code, I went with an object oriented design in order to compartmentalize the major tasks. I wrote an Article class to handle storing the data for each parsed article, including methods for exporting this data to both dataframe formats and to parse the publicationInfo data. Additionally, I wrote a class to handle scraping all of the webpages and setting up the driver. This will result in a list of all the raw HTML files. Finally, I wrote a page parsing class, that takes that list of HTML pages and parses out the specific articles. This creates a master list of articles. Further on, this list of articles is converted to pandas dataframes using the methods defined in Article. These dataframes are used to generate the graphs and answers to the questions below."
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "5361ee97",
"metadata": {},
"outputs": [],
"source": [
"from bs4 import BeautifulSoup\n",
"from selenium import webdriver\n",
"from selenium.common.exceptions import TimeoutException\n",
"from selenium.webdriver.chrome.service import Service\n",
"from selenium.webdriver.common.by import By\n",
"from selenium.webdriver.support.ui import WebDriverWait\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import re\n",
"import time"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "d7951096",
"metadata": {},
"outputs": [],
"source": [
"class Article:\n",
" containerSelector = lambda soup: soup.find_all(\"div\", class_=\"gs_r gs_or gs_scl\")\n",
" titleSelector = lambda article: article.find(\"h3\", class_=\"gs_rt\").text\n",
" authorSelector = lambda article: article.find(\"div\", class_=\"gs_a\").text\n",
" citedBySelector = lambda article: article.find(\"div\", class_=\"gs_fl gs_flb\").find_all(\"a\")[2].text\n",
"\n",
" def __init__(self, title, publicationInfo, cited_by):\n",
" self.title = title\n",
" self.publicationInfo = publicationInfo\n",
" self.cited_by = int(cited_by.split(\" \")[-1])\n",
" \n",
" # Process Additional Information from publicationInfo\n",
" self.authors = self.publicationInfo.split(\"-\")[0].strip()\n",
" self.publisher = self.publicationInfo.split(\"-\")[-1].strip()\n",
" self.venue = self.publicationInfo.split(\"-\")[-2].strip().split(\",\")[0].strip()\n",
" self.year = int(re.search(r'\\b(20\\d{2})\\b',self.publicationInfo).group(1))\n",
"\n",
" # Calculate average citations per year\n",
" divisor = 2026 - self.year if self.year is not None else 1\n",
" self.averageCitations = self.cited_by / divisor\n",
"\n",
" def print(self):\n",
" print(f\"Title: {self.title}\")\n",
" print(f\"Publication Info: {self.publicationInfo}\")\n",
" print(f\"Cited by: {self.cited_by}\")\n",
" print(f\"Authors: {self.authors}\")\n",
" print(f\"Publisher: {self.publisher}\")\n",
" print(f\"Venue: {self.venue}\")\n",
" print(f\"Year: {self.year}\")\n",
" print(f\"Average Citations per Year: {self.averageCitations}\")\n",
" print()\n",
"\n",
" def to_DF1(self):\n",
" return pd.DataFrame({\n",
" 'title': [self.title],\n",
" 'publication_info': [self.publicationInfo],\n",
" 'cited_by': [f\"Cited by {self.cited_by}\"],\n",
" })\n",
" \n",
" def to_DF2(self):\n",
" return pd.DataFrame({\n",
" 'title': [self.title],\n",
" 'authors': [self.authors],\n",
" 'year': [self.year],\n",
" 'venue': [self.venue],\n",
" 'publisher': [self.publisher],\n",
" 'citation_count': [self.cited_by],\n",
" 'avg_citations_per_year': [self.averageCitations]\n",
" })"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "2741c574",
"metadata": {},
"outputs": [],
"source": [
"class WebScraper:\n",
" def __init__(self, url):\n",
" self.url = url\n",
" self.pages = []\n",
" \n",
" # Constants\n",
" self.scroll_pause_time = 3\n",
" \n",
" # Setup Selenium Webdriver\n",
" self.service = Service(executable_path=\"./chromedriver.exe\")\n",
" self.options = webdriver.ChromeOptions()\n",
" self.options.add_argument('--ignore-certificate-errors')\n",
" self.options.add_argument('--incognito')\n",
" #self.options.add_argument('--headless')\n",
"\n",
" self.driver = webdriver.Chrome(service=self.service, options=self.options)\n",
" self.driver.get(self.url)\n",
" WebDriverWait(self.driver, 5).until(lambda s: s.find_element(By.ID, \"gs_hdr_lgo\").is_displayed())\n",
" self.screen_height = self.driver.execute_script(\"return window.screen.height;\")\n",
"\n",
" def close(self):\n",
" self.driver.close()\n",
"\n",
" def get_page(self):\n",
" i = 0\n",
" scroll_height = self.driver.execute_script(\"return document.body.scrollHeight;\")\n",
" while (self.screen_height*i < scroll_height) and (i <= 20):\n",
" self.driver.execute_script(f\"window.scrollTo(0, {self.screen_height}*{i});\")\n",
" i += 1\n",
" time.sleep(self.scroll_pause_time)\n",
" scroll_height = self.driver.execute_script(\"return document.body.scrollHeight;\")\n",
" self.pages.append(self.driver.page_source)\n",
" \n",
" def get_all_pages(self):\n",
" self.get_page()\n",
" while True:\n",
" try:\n",
" next_button = WebDriverWait(self.driver, 5).until(\n",
" lambda s: s.find_element(By.LINK_TEXT, \"Next\"))\n",
" next_button.click()\n",
" try:\n",
" WebDriverWait(self.driver, 5).until(\n",
" lambda s: s.find_element(By.ID, \"gs_bdy_sb_in\").is_displayed())\n",
" except TimeoutException:\n",
" print(\"Captcha detected. Please solve it and press Enter to continue...\")\n",
" input()\n",
" self.get_page()\n",
" except TimeoutException:\n",
" print(\"No more pages\")\n",
" break\n",
" self.close()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "337270af",
"metadata": {},
"outputs": [],
"source": [
"class PageParser:\n",
" def __init__(self, pages):\n",
" self.pages = pages\n",
" self.articles = []\n",
" \n",
" def parse(self, page):\n",
" soup = BeautifulSoup(page, \"lxml\")\n",
" page_articles = Article.containerSelector(soup)\n",
" for article in page_articles:\n",
" title = Article.titleSelector(article)\n",
" authors = Article.authorSelector(article)\n",
" cited_by = Article.citedBySelector(article)\n",
" self.articles.append(Article(title, authors, cited_by))\n",
" \n",
" def parse_all(self):\n",
" for page in self.pages:\n",
" self.parse(page)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "26f279bc",
"metadata": {},
"outputs": [],
"source": [
"# Start Here - Execution\n",
"url = \"https://scholar.google.com/scholar?start=0&q=machine+learning&hl=en&as_sdt=0,20&as_ylo=2023\"\n",
"\n",
"# Task 1\n",
"# Scrape the pages\n",
"scraper = WebScraper(url)\n",
"scraper.get_all_pages()\n",
"pages = scraper.pages\n",
"scraper.close()\n",
"\n",
"# Sideloader - Load previously scraped pages\n",
"# with open('pages_100.txt', 'r', encoding='utf-8') as file:\n",
"# pages = file.read().split('================================================================================')\n",
"\n",
"# Parse the pages\n",
"parser = PageParser(pages)\n",
"parser.parse_all()\n",
"articles = parser.articles\n",
"\n",
"# Generate first DataFrame and save to CSV (Task 1)\n",
"df1 = pd.concat([article.to_DF1() for article in articles], ignore_index=True)\n",
"df1.to_csv('ml_articles_info.csv', index=False)\n",
"\n",
"# Generate second DataFrame and save to CSV (Task 2, A)\n",
"df2 = pd.concat([article.to_DF2() for article in articles], ignore_index=True)\n",
"df2.to_csv('ml_articles_info-cleaned.csv', index=False)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "78060bd7",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Articles from 2024 or later with over 100 citations:\n",
"88\n"
]
}
],
"source": [
"# Task 2, Question (b)\n",
"filtered_df = df2[\n",
" (df2['year'] >= 2024) & \n",
" (df2['citation_count'] > 100)\n",
"]\n",
"\n",
"print(\"Articles from 2024 or later with over 100 citations:\")\n",
"print(len(filtered_df))"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "57ea2834",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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McccU63Xo5la3fdjjz1WOnfubLKn77//vslKKs18XXbZZTJ//nxzG6dNmzbJb7/95jpm1COPPCL33XefeX81+7t7925zHOgxuWjRIpNNc9J912NGv6H45z//KfXr16/y8al0jHUcTjjhBLnttttMffnw4cPNeDVp0sR1O82anXXWWWacNHunvwdLly41x/WaNWsOW8vq6TFXntbLb9++XWbOnClvv/32IddrZlH37ZJLLpHCwkL54IMP5LzzzpOpU6fKsGHDzG30fjqWvXv3dmUf9f2qjP7+aWZy4MCB5hhcvXq1GSt9/3799dcymed9+/bJaaedZo5Rfc/02LrzzjulS5cu5r1RmvXUf080c62/M/n5+fLHH3/I3LlzTbb/SPSY0Iy2Pm5GRoap49d9W7x4scTFxZnb6Husz9ezZ0954IEHJDIyUt5880059dRT5eeffzav3Z2OUZs2bUwtcmn8X7kXX3xROnXqZI4RfY1ffPGFvPzyy6Z2eteuXdK3b1+zf3os6e/u119/LVdddZU53m699VbzGPqz/ht10UUXydVXXy0HDhyQ119/3fxezps3T7p3717mOXXfdZz0/dJv1WrXrn3EcUKYqenoGvC3rKws8+lfM4NV5Z65PVLNbV5e3iHb/v3vf5tshHsmq7Ka24oympo90czH3r17XduWLFlishaXXXbZIZkXzaa6O+ecc6w6deoc9jV+/vnn5r6aEamKZ555xtz+nXfecW3TumTNlCUmJroycZ5mbnWbZhLd9ejRo0wG09OaW81saR11ZmZmmWyRZpjcx0oz3VrD6S06Hjru99xzj2vbxRdfbHXr1q3M8ahZb81Ol69bjIiIsDZt2mQub9y40bLZbNYjjzxS5nZLly61oqKiymx3fjPw8ssvV+v41LHR/dZsbVFRket2mv3Wx3XP3GomWY9DzVC70+c+0rcjnh5zFR0zh6u5Lf9a9f3o3Lmzdeqpp1ap5rZ85jYjI8NkHwcPHmyVlJSUyXDr7d54441D3oPJkye7tum4ap3queee69qm/w5phtdTzt+rxo0bl8l6f/TRR2b7s88+ay5rPazWMmvW1r02VsdGs/KDBg065N8Pzdp64sknnzT30wy5ew3uVVddZTLbe/bsKXN7ndegv2vO90e/NdCxcaeZcM1Gu/9+Ot9/ze7qewFUhm4JCDuaJVDVyRRV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D5fVq1eXuU1+fr7ccMMNUqdOHUlMTJRzzz1Xdu3aVeY2mzdvlmHDhkl8fLx5nNGjR0txcbGfX03wefzxx81KfrfeeqtrG+Ptfdu2bZN//vOfZkzj4uKkS5cu8vvvv7uu17nA999/vzRs2NBcP3DgQFm7dm2Zx8jMzJRLLrnENGGvVauWXHXVVZKTk1MDryawlZSUyH333SctWrQwY9mqVSt56KGHyqxfz3gfnZ9++knOPPNMs7KU/vvx2WeflbneW+P7xx9/yAknnGD+zuoKW+PHj5dw9dNhxryoqEjuvPNO8+9KQkKCuc1ll11mVmsNiTHXbgnwvQ8++MCKjo623njjDWv58uXW1VdfbdWqVcvatWtXTe9a0BkyZIj15ptvWsuWLbMWL15snX766VazZs2snJwc122uvfZaq2nTptasWbOs33//3erbt6913HHHua4vLi62OnfubA0cONBatGiR9dVXX1l169a1xowZU0OvKjjMmzfPat68udW1a1frlltucW1nvL0rMzPTSk9Pty6//HJr7ty51vr1661vvvnGWrdunes2jz/+uJWSkmJ99tln1pIlS6yzzjrLatGihXXw4EHXbU477TSrW7du1m+//Wb9/PPPVuvWra2LLrqohl5V4HrkkUesOnXqWFOnTrU2bNhgffzxx1ZiYqL17LPPum7DeB8d/Z2/5557rE8//VQ/MVhTpkwpc703xjcrK8uqX7++dckll5i/D++//74VFxdnvfLKK1Y4+uowY75//37z7/GHH35orVq1ypozZ47Vu3dvq2fPnmUeI1jHnODWT/SgueGGG1yXS0pKrEaNGlmPPfZYje5XKMjIyDC/uD/++KPrl9Zut5s/UE4rV640t9FfYOcvfWRkpLVz507XbV566SUrOTnZKigoqIFXEfgOHDhgtWnTxpo5c6Z10kknuYJbxtv77rzzTqt///6VXu9wOKwGDRpY//3vf13b9H2IiYkxf1zUihUrzHswf/58122+/vprKyIiwtq2bZuPX0FwGTZsmHXllVeW2TZixAjzB1sx3t5VPtDy1vi++OKLVmpqapl/U/R3qV27dla4kwo+UFSUvNDbbdq0KejHnLIEPygsLJQFCxaYr1mcIiMjzeU5c+bU6L6FgqysLHNeu3Ztc65jrV+5uI93+/btpVmzZq7x1nP9OqZ+/fqu2wwZMkSys7Nl+fLlfn8NwUDLDrSswH1cFePtfV988YX06tVLzjvvPFPC0aNHD3n11Vdd12/YsEF27txZZsx1vXUtd3Ifc/0aUR/HSW+v//bMnTvXz68osB133HEya9YsWbNmjbm8ZMkS+eWXX2To0KHmMuPtW94aX73NiSeeKNHR0WX+ndGytX379vn1NQXr39KIiAgzzsE+5lE19sxhZM+ePaamy/0Pu9LLq1atqrH9CgUOh8PUfh5//PHSuXNns03/kdRfNOcvqPt463XO21T0fjivQ1kffPCBLFy4UObPn3/IdYy3961fv15eeuklGTVqlNx9991m3G+++WYzziNHjnSNWUVj6j7mGhi7i4qKMh8CGfOy7rrrLvNBSz+U2Ww28+/1I488YmoNFePtW94aXz3Xuunyj+G8LjU11aevI5jl5+ebGtyLLrrI1NcG+5gT3CLos4nLli0zWRb4xpYtW+SWW26RmTNnmgkD8M+HNs2WPProo+ayZm71OH/55ZdNcAvv+uijj+Tdd9+V9957Tzp16iSLFy82H5p1kg3jjVBXVFQk559/vpnUpx+qQwFlCX5Qt25dkw0oP3tcLzdo0KDG9ivY3XjjjTJ16lT5/vvvpUmTJq7tOqZaCrJ///5Kx1vPK3o/nNehbNlBRkaGHHPMMeZTu55+/PFHee6558zP+imd8fYunTHesWPHMts6dOhgOk64j9nh/k3Rc33f3Gl3Cp39zJiXpZ07NHt74YUXmvKZSy+9VG677TbTmUUx3r7lrfHl35nqB7abNm0yCQxn1jbYx5zg1g/0q8SePXuami73zIxe7tevX43uWzDST5ca2E6ZMkW+++67Q74S0bG22+1lxlvrfzQwcI63ni9durTML67zF7t8UBHuBgwYYMZKs1nOk2YV9Stb58+Mt3dpmU359nZaD5qenm5+1mNe/3C4j7l+ra51cO5jrh849MOJk/6+6L89WsuIv+Xl5Zk6QneakNCxUoy3b3lrfPU22v5KAzb3f2fatWtHScJhAlttufbtt9+atoPugnrMa3Q6W5i1AtOZn5MmTTIzEK+55hrTCsx99jiq5rrrrjMtY3744Qdrx44drlNeXl6Z1lTaHuy7774zran69etnTuVbUw0ePNi0E5s+fbpVr149WlNVkXu3BMV4e5fOWo6KijItqtauXWu9++67Vnx8vPXOO++UaZ2k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",
"text/plain": [
"<Figure size 800x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Task 2, Question (c)\n",
"plt.figure(figsize=(8, 6))\n",
"plt.scatter(df2['citation_count'], df2['avg_citations_per_year'], alpha=0.7)\n",
"plt.xlabel('Total Citation Count')\n",
"plt.ylabel('Average Citations per Year')\n",
"plt.title('Citation Count vs. Average Citations per Year')\n",
"plt.grid(True)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "d73203e9",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAArcAAAIjCAYAAAAZajMiAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjYsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvq6yFwwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAVQZJREFUeJzt3QmcjeX///HPzBjMWLOTtZIlspUl0mInEd8olKSUVEIqZaeUJCXRIlSWUkl8s4VIdtlNE6UoWxSDsQxz/x+f6/e9z/+cM4tZzplzzj2v5+NxjHPu+1z3ct1n5n2u+7qvO8yyLEsAAAAABwgP9AoAAAAAvkK4BQAAgGMQbgEAAOAYhFsAAAA4BuEWAAAAjkG4BQAAgGMQbgEAAOAYhFsAAAA4BuEWAAAAjkG4BbLA8OHDJSwsLEuWdfvtt5uH7fvvvzfL/uKLL7Jk+Q899JCUL19egtmZM2fkkUcekRIlSph988wzzwR6lbIVPT70OMkKv//+u6nj6dOnZ8nyAAQe4RZIJ/0jqX8s7Ufu3LmlVKlS0qJFC3n77bfl9OnTPlnOoUOHTCjetm2bBJtgXre0eOWVV0w99u7dWz755BN54IEHrviey5cvm3rWOl+0aFGWrGeo+fXXX+Wxxx6Ta665xnwu8ufPLw0bNpS33npLzp07l+L79uzZY44nDaIZNWvWLJkwYUKG358dzZkzxxzP7733XrLT9fMRGRkp27dvz/J1AzLFApAu06ZNs/SjM3LkSOuTTz6xPvroI+uVV16xmjdvboWFhVnlypWztm/f7vGehIQE69y5c+lazqZNm8xydHnpceHCBfOwrVy50pQzd+7cdJWT0XW7ePGidf78eSuY1atXz2rYsGG63rN06VKzzeXLl7e6du3qt3ULVQsXLrSioqKsggULWk8//bT1/vvvW++884513333WZGRkdajjz7qmlePDz1ObHps6r7VYzWj2rRpYz573hITE81n79KlSxku28latmxp6uzIkSMer2/YsMEKDw+3Bg4cGLB1AzIqR+aiMZB9tWrVSm666SbX80GDBsmKFSvkrrvukrvvvltiYmIkKirKTMuRI4d5+FN8fLxER0dLzpw5JZC0pSfYHTt2TKpWrZqu93z66adSu3Zt6d69u7z44oty9uxZyZMnj2SlQCwzLfbv3y/33XeflCtXznwGSpYs6ZrWp08f2bdvn/z3v/91vZYrV64sWzf77Ep2dv78efN7ITw86cnayZMnyw033CD9+vUzrd/2WQptgS9btqxpUfc3y7LMOtq/L4FMy3AsBrJ5y622XiZHW3F1urZc2YYNG2Ze824J1NbDAgUKWHny5LGuv/56a9CgQR6trd4Pu6X0tttus2644QZr8+bN1q233mpazPr27euapg+bXdacOXNM+cWLF7eio6Ottm3bWgcOHPBYJ2356t69e5Jtci/zSuum7/duQTtz5ozVv39/q3Tp0lbOnDnNtr7++uumVc2dltOnTx9r3rx5Zvt03qpVq1qLFi1KU90cPXrUevjhh61ixYpZuXLlsm688UZr+vTpSfaF92P//v2plhsfH2/ly5fPGjt2rHX48GHTojVz5kzXdN0WLef3339P8t4XXnjBtFz+888/rtfWr19vtWjRwsqfP7+pu8aNG1tr1qzxeJ99zOzevdu6//77TetazZo1zTQ9M6D7uUKFCmY7tU579OhhHT9+PMnydZvr1Klj5rvmmmusKVOmJHs8Kj0TUbt2bSt37tzWVVddZXXu3DnJMZKcxx9/3JT3448/WmnhfpzZnyfvh92K+/XXX1utW7e2SpYsaY4H3QY9a+LeEqvHpvf77WNQ6za5swzLly+3GjVqZD4L+hm8++67rT179iRbB3v37jXrq/NpnT300EPW2bNn0/x5To19zH/66afmPVpPWgerVq1KMu+ff/5p6lmPb/uzMXXqVI957GN89uzZ1ksvvWSVKlXKnFH6999/U1wHPa71PboNavz48ea5/bnTlvahQ4da1157rVmufo61Rdf7DI2exbrjjjusokWLmvmqVKlivfvuu0mWp3WjLe2LFy92HZtvvvnmFfcVkFa03AI+pv03tWVv6dKl8uijjyY7z+7du00L74033igjR440LVnauvXjjz+a6VWqVDGvDx06VHr16iW33nqref2WW25xlXHixAnTeqwtZt26dZPixYunul4vv/yyacV6/vnnTcul9k9s2rSp6TebnhaTtKybO/37rS3ZK1eulJ49e0rNmjVlyZIlMnDgQPnrr7/kzTff9Jh/zZo18tVXX8kTTzwh+fLlM/2YO3bsKAcOHJDChQunuF7ap1MvpNP9+OSTT0qFChVk7ty55sKlkydPSt++fc26ax9bbaUqXbq0DBgwwLy3aNGiqW7zN998Yy5C032tF6HpcmbOnCldunQx0zt16iTPPfecfP7552a73OlrzZs3l6uuuso815ZNrbc6derIsGHDTGvatGnT5M4775QffvhB6tat6/H+e++9VypWrGj6Cf9fFhJZtmyZ/Pbbb9KjRw+zPno8vf/+++bn+vXrXRcvbt26VVq2bGlaUkeMGGFa5LTukttePT6GDBlitkUvtvv7779l4sSJ0rhxY1NOwYIFU9w/CxYsMP1sUzoGUqPlP/3006ae9XOjdaTsn9o3Om/evNK/f3/zU/efHntxcXHy+uuvm3leeuklOXXqlPz555+u40nnTcl3331n6kDXWVsm9djRbdX+wT/99FOSCyJ1n+jxNGbMGDP9ww8/lGLFislrr72Wps/zlaxatUo+++wzsx/0ve+++66pt40bN0q1atXMPEePHpX69eubutXjW+tQ+37rZ0r3hfdFkaNGjTKttc8++6xcuHAh1TM6+nnQ41n72C5evNjsXz3WdR0SExPN51c/l/p513rZuXOn2c+//PKLfP3110lagXV+PVOlx4V+jrUMbcF3FxsbK/fff79pIdbfk5UqVUrTvgLSJM0xGECaWm6Vtt7UqlXL9dy7pUxbKfT533//naF+rXZLlbbCJTctuZbbq6++2oqLi3O9/vnnn5vX33rrrXS13F5p3bxbbrXlTecdPXq0x3z/+c9/TIvSvn37XK/pfNri4/6atlLq6xMnTrRSM2HCBDOftoDZtF9ngwYNrLx583psu91ylFZ33XWXRx9dbZXPkSOHdezYMddruhxthXK3ceNGs04ff/yxea4t1RUrVjSttu6t1toyrK2wzZo1S3LMaKutN53fm7bU6fyrV692vaat89oy+ddff7le01ZIXXf341FbnCMiIqyXX37Zo8ydO3eaeb1fd3fq1ClTVrt27ay08j7OUutzm9y2PvbYY2a73FsOU+pzm1zLrbaAa+vniRMnPI4zbZF/8MEHk9SBng1wd88991iFCxdO1+c5JXZLs56Fsf3xxx+m9VyXY+vZs6dpvfZundc+zfr7xt5P9uddW7iT23cpsfvYFipUyKMPrrbm6+s//PCDx/z6u8e7tT655emxruviTutJ36stt4A/MFoC4AfaapTaqAl2K9j8+fNNq0ZGaAuPttyl1YMPPmhaQm3/+c9/TIvet99+K/6k5UdERJhW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7txZ/v77bxk6dKi5iUPNmjVl8eLFUrx4cQkW2g1i2LBhPhtHEf5BPYUO6ip0UFehg7oKHdRVysL0qrJUpgMAAAAhI+T73AIAAAA2wi0AAAAcg3ALAAAAxyDcAgAAwDEIt1lg0qRJUr58eXMP5nr16snGjRsDvUrZzurVq6Vt27bmriZ6F7qvv/7aY7peV6mjbZQsWVKioqKkadOm5v7b7vQudl27djWDZetNP3r27ClnzmT8vtxIasyYMXLzzTdLvnz5pFixYtK+fXuJjY31mOf8+fPSp08fc0fBvHnzSseOHZPcxOXAgQPSpk0biY6ONuUMHDhQLl26lMVb42yTJ0+WG2+80TWAvI4rvmjRItd06il4vfrqq+b34DPPPON6jfoKDsOHDzd14/6oXLmyazr1lDaEWz/77LPPzDi8OlzHTz/9JDVq1JAWLVrIsWPHAr1q2YqOe6z7Xr9oJGfs2LHy9ttvy5QpU2TDhg2SJ08eU0/6i8SmwXb37t2ybNkyWbhwoQnMvXr1ysKtcL5Vq1aZX9zr1683+zkhIUGaN29u6s/Wr18/WbBggcydO9fMf+jQIenQoYNr+uXLl80v9osXL8ratWtlxowZMn36dPPlBb5TunRpE5K2bNkimzdvljvvvFPatWtnPiOKegpOmzZtkvfee898MXFHfQWPG264QQ4fPux6rFmzxjWNekojHQoM/lO3bl2rT58+rueXL1+2SpUqZY0ZMyag65Wd6WE/b9481/PExESrRIkS1uuvv+567eTJk1auXLms2bNnm+d79uwx79u0aZNrnkWLFllhYWHWX3/9lcVbkH0cO3bM7PdVq1a56iUyMtKaO3eua56YmBgzz7p168zzb7/91goPD7eOHDnimmfy5MlW/vz5rQsXLgRgK7KPq666yvrwww+ppyB1+vRpq2LFitayZcus2267zerbt695nfoKHsOGDbNq1KiR7DTqKe1oufUj/eakrRp6itsWHh5unq9bty6g64b/b//+/ebmH+71pPeu1i4kdj3pT+2KoHfBs+n8Wp/a0gv/OHXqlPlZqFAh81M/T9qa615XesqubNmyHnVVvXp1j5u4aCt8XFycq1URvqWtRXPmzDEt7No9gXoKTnpWRFv13OtFUV/BRbvEaRe6a665xpwx1G4GinrKZncoC1bHjx83v/S975Smz3/++eeArRc8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",
"text/plain": [
"<Figure size 800x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Task 2, Question (d)\n",
"plt.figure(figsize=(8, 6))\n",
"plt.hist(df2['avg_citations_per_year'], bins=30, color='skyblue', edgecolor='black')\n",
"plt.xlabel('Average Citations per Year')\n",
"plt.ylabel('Number of Articles')\n",
"plt.title('Distribution of Average Citations per Year')\n",
"plt.grid(True)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "c3d8038d",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Number of articles published in each year since 2023:\n",
"year\n",
"2023 591\n",
"2024 364\n",
"2025 31\n",
"Name: count, dtype: int64\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAArcAAAIjCAYAAAAZajMiAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjYsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvq6yFwwAAAAlwSFlzAAAPYQAAD2EBqD+naQAARuNJREFUeJzt3QmcjXX///HPjJlhbDMRg9takTVroZAsI5WI312JSCp3yBaVkrUSKVpIi2hVt3YqSxSym5AtqZSdKGM3M+b8H5/v477O/5wzZ5gZM2f5ej0fj8sx17nOOd/rnOua857v9bm+V4TL5XIJAAAAYIHIYDcAAAAAyC2EWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbIMDuueceqVixYrYfp4/Rx4az5s2bS82aNc+73B9//CEREREyY8YM97yRI0eaednx/fffm8d8/PHHktdy0j6c2/jx46Vq1aqSnp4e7KaEnaz+vtBtVrfdUHPnnXfK7bffHuxmIEwRboFMTJkyxfzib9iwYbYfu3fvXvOFsX79eglnuv7OFBkZKWXKlJHExEQTGhF+duzYIQULFpTOnTv7vf+jjz4yn/XkyZMl2I4ePSrjxo2TRx991Gx76vDhw/Lcc89Js2bNpESJEhIfHy+NGjUy7fbnzJkz5vG63cbGxpp9ecGCBV7LnDx50qyvbtelS5eWIkWKSN26deXVV1+Vs2fPZtivu3btKldeeaVZTl//mmuukbffflsutivZb9myxfyO0z9E84J+bp988ols2LAhT54fdiPcApl4//33Te/H6tWr5ddff83WY/VLcNSoUX7D7RtvvCHbtm2TcNG6dWt59913zRf4f/7zH/npp5+kRYsW8s033wS0HcOGDZNTp04F9DVtU6lSJRkxYoR8+OGHMn/+/AxhcuDAgSYAPvjggxJsb731lqSlpXkF8RUrVsgTTzwhxYoVM9vD008/bcK69vLpevnSnssXXnhBunTpIi+++KLky5dPbrrpJvnhhx/cy/z+++/y0EMPmXA6aNAgmTBhgnmfevfuLffee6/X8x06dEh2794t//d//2eWe+qpp0wg1tfRdl1s4VZ/x+VVuNU/MBo0aCDPP/98njw/LOcCkMHvv/+u3TCuTz/91FWiRAnXyJEjs/S41NRU15kzZ1xr1qwxj58+fXqutalChQqu7t27uwJJ16FPnz5e83766SczPzExMdvPd/3117tq1Khx3uV27NiRK+/fd999Z55n1qxZrrw2YsQI81qh4OzZs65Tp05luo3WqlXLdfnll7tOnjzpnt+3b19XVFSUa8OGDQFp4/Hjx895/1VXXeXq2rVrhv3yjz/+8JqXnp7uatGihSt//vxez7lq1SrzeTz33HPuefqe6Ho3btzYPe+vv/5ybdq0KcPr9+jRwzx++/bt512XW265xVWoUCFXWlqaK1Rk9feFrqNuu9ml+5Q+Vvex3OT5GU6YMMG8r8eOHcvV14D96LkFMum1veSSS+Tmm282vTT6c2Z1odqDM2nSJLn88sslf/78ppzh6quvNsv06NHDfVjfqR/1V3OrNYXas1SrVi0pUKCAOeR64403ytq1a8/ZziNHjsiAAQOkXLly5rWvuOIKcyjXt0ZRe+rq169vDqUWLVrUvI6+Xk7oYy+99FJziFvpeun6+fbgOPWu/koYkpKS5NprrzWHirWXbOrUqTmqadVDzE2aNDGHhwsXLmwOFz/++OMZHqvvh/bylS1b1ry/LVu29Nsbv2rVKvO+x8XFmR7B66+/XpYtW5ZhOe35089Yn0s/99dee02yW3eclfdAD6trj6R+rvr56uf8yCOPmPme9H3p27ev2U5r1Khhlp07d67f14+KipLXX3/dfH7a86i0LbrdPvzww3LVVVeZee+9957ZZrR92lOqvaO7du3yeq6lS5fKv//9bylfvry7fdr769vDrtu8fj6//fab6TnV7VB7UzOjbdMjBK1atfKar+9ThQoVMqx7hw4dzHuivbAOrbPWntoHHnjAPU8/r549e5oeYGdddFvW98zXbbfdZm63bt0q56P7s5Y3pKSknHO5P//80/QI63aq72vx4sXN++e77zj7lG572pusvw8KFSpk2vTXX395Lav5VD9H3bZ1m73hhhtk8+bN523zhbRR26fzlL6e8zvOc1/XIztNmzY17dbPW3+X+rbrfNuFHjU6ceJEhlIS4HyizrsEcBHSkNCxY0eJiYkxh0W1/m7NmjXu0Opp+vTpcvr0afMlql/w+gV07NgxGT58uJmnv+CVBpnM6BeufmG0bdtW7rvvPnM4VoPDypUrzaE5f/TLVMPXnj17pFevXiZgLF++XIYOHSr79u0zgVvpF4OugwY6Db7OF7Z+cfbv3z/b780///xjJg1cOaGP1S8yPVlE2/Xf//7XHAbX99r3MPC56BflLbfcYsLY6NGjzXuvgdVfGH322WdN3ebgwYMlOTnZnKikX6IaZh2LFi0y778GOg2Uurx+tlqCoZ+F1laqjRs3mvpMDRwauPWz0uUTEhJy9T3QQH7rrbeaIK3bUbVq1cxrT5w4UX755Rf5/PPPvZ5T26/PoyFXA9u5TlrUOlV9Pa1f1dCq248u7xza1z8EnnzySdM+3R41UL388sum1nXdunXmjwk1a9Yssx3qc2kI0hIeXU4P3et9nvR9atOmjfljRP8g1CCWGd2OVb169bL0fu7fv9/c6no7tJ1VqlQxf8x5cj5HLRnSMJ6d53RoeNfQdfz4cVm8eLHZTho3bmzC4Lno7xBdN33PNYxqYNTfLfoHjx7m931PtFxC/8jWz0WX1X1aP1/PGmP9PaPhVrcnnX788UezfZ4vaF9IG3U76Nevn7z00kvmj0ndNpVzq2VM3bt3N5+3/s7RbUSfQz97/Vw8t81zbRfVq1c376nu084fG0CWBLvrGAg1a9euNYfbFixY4D7sWbZsWVf//v39HjovWrSo6+DBg173nassQQ8V6iFDx6JFi8yy/fr1y7CsvnZmhxnHjBljDtn98ssvXo957LHHXPny5XPt3LnT/Kzt1jbm5JCptqtnz57m0K2uox7qbdmypZn//PPPm2V0HfVnfT/8lQR4HrbUsgTPxyot46hTp46rZMmSrpSUlEzLEnwP+0+cONH8rG3LjNOGatWqmddxvPjii2b+xo0b3e9z5cqVXW3atPF6z/WwfaVKlVytW7d2z+vQoYOrQIECrj///NM9b8uWLeY9z8qv1Ky+B++++64rMjLStXTpUq/HT5061Tx+2bJl7nn6sy67efNmV1YlJye7ypQp4ypWrJh5/Ny5c818Peyv6/L00097La/vlZYteM73LGtwjB071hUREeH1/uh2q6+h22ZWDBs2zCyflcPRhw8fNu9b06ZNveZr+YuWK/jS90ifW9/HzOjnUb16dfPZaxmHv3XU53Am3Sec/e1c/L1fK1asMM/xzjvvuOc5+1SrVq28tseBAweaz+bIkSPmZ90nY2JiXDfffLPXco8//rh5fE7KErLaxszKEvQzi4+Pd91///1e8/fv3++Ki4vzmp+V7aJKlSqutm3bnnc9AE+UJQB+em21F04Ptyk93HbHHXeYQ/u+Z0+rTp06mV68nNIzgvU1/J0Qc66hpbRnTHuFtWdHT3RxJj2Uq+1csmSJWU572S7k0N60adPM+pUsWdKcbOQcKtVyiJzQw+LaU+jQ3kr9+eDBg+bweFY5vYdffPHFeYeK0vIQfR2H05vuHMbWXrzt27fLXXfdZc7Id95Lfd+0x1vfS30NfV/nzZtnDoNrT7lDe6y09yk33wP9fPV5dSgsz89Xe5LVd9995/Wc2ouvPV1ZpT2a2hP4999/m+3baf+nn35q1lV7bT1ft1SpUlK5cmWv1/XsqdT3SpfTIxSambSHzldWT1TTz0DfIz1kfS7aTu2B1/Ic7TH27V3V3nxfWprg3J8Z7R3VXspXXnnFtMOX9rbr/vTBBx+YbeZ8z+fv/UpNTTXrqUdAdFvWHldf2mPv+TtAt1vdBrV0QH377bemh1Z7eD2Xy+m+mZM2+tL3RT8PfY88tx8tEdHfH77b7fm2C+f3G5AdlCUAHvSLQ0OsBlunplTpL2U9a3fhwoXmkJ9vHeCF0HozHapI6xqzQ8OY1iVmFqw1KCmtn9PD1XrI/V//+pdpvwYXrS3Nivbt25sve/3y1Jo4rU/UOrqc0nX1fbwePlZ6CFQPmWeFBrI333zTHDZ/7LHHTAjVUhKtkXaGjnJ4BlHnC9MpD3DeS6WHUjOj5Qxa16khRkOeL61R/Prrr3PtPdA2afnI+T7fC9kOnTIbz9IXfV0Np/7WUUVHR7v/v3PnTnNY/Msvv3S/l57vlycNiXqYOzdpqNPa4nfeeUdq166dIaT51iYrLSFy7vdHSzV0RJMxY8aYw/z+aN2vU/urIU5DqP5RqaOgnKs0QbedsWPHmjIGLSfyHD7M9/3KynbrhFzfz0q3GWfZ7MpuG305+5LzR5gv3zKR820X+vqMH43sItwCPnWLWq+qAVcnf726vuH2fHV2eUV7rfSECz3ByB8nLGmPq/ZMao+jnuShk35xdevWzQzvdT76xeN7Yo+nzL54/PVy5yZ937VHVXuCvvrqKxNytBZRv1R1mCvtKXJ4/t+T88Xt9PxqsKlTp47fZbUX0V9YyivaJj15T4ey8se3XjS3tkN9Xf1MdTvx9745van6+er2pz2/Oiap9jBrYNdApCcK+famay+q7x8dmdH6Xa3F1Np1/YPKHx2GSk+C03rqu+++O8P9OkSXtsWX7t/OHxi+tO5d10WHvNOhxrJK/6DSQKzb47l68DWM676nPatao6snLup7rfWt/o4+nG+7zQvZbaMvZxmtu9Xefl++PeHn2y40yGf2hxaQGcIt4BNeNQz6G8ReD9d+9tln5qz28wWJ7PQ06Nn2Gjw1JGSn91Yfpye0nCt4eh72bteunZn0y0d7c/UMfz1pKKcnhjmcHiI9FOnJ6VXyNwawHsL27LnUE6RUdq/cpl+K2mOrk4bAZ555xow3qoE3K++L53vp9Cqd63HaI6afvdM75Sk7Yxdn5T3QNukA9rpugey50tfV8KQ9wc4fSP7oyW3aZv0DSf9QcuTGme0alJUePXFGb/Ck+6eezKcBTMOoP/pHim4HOn6vZ2+hcxKh7x8xWt6iRwG09z+7F7FwShLO17OpIzjo0QHPsVu1J9l338kqp/dYt8fLLrvMPV9PAPTtSc+qrLYxs23S2Zf092h29kF/9A8cHdVCT6wEsoOaW8DjC0oDrJ6Brz0xvpMemteeJD0Eez5OaMnKl5bW7GqY0J6o7PTQaGmBDmmkwdiXvq5+MSitmfMNhE5gyI2eSOfLzKnxdXr1dLgpf7RdnkNnac2g/qzBUUcqyCr9Y8CXE1iyu176uroeera2/sHgyxl+SXvStGdORyrQQ/IOLR/w9zlkJivvgX6+2vOoPYKZna2fFzTc6Xrq9ui7/enPzvbk9Cp6LqP/z+kQc560x1D5GwpPe+f1TH2ttc2sV1vpPuu7Hep2ob2SWmbk2fOt2672TOooAPoHbmY9ib7DcHnWpWvYO9/oDvqe+b6nWiuc06McGh61TESfw/N5nZFSciKrbczsd5zuH/rHhP6hqTW7WX0P/dG6Zw3W5xppBvCHnlvgfzS0anjNrJdA6yA1fOiXn9Z7nosGJT0BQ3t59bCqfhHoF6q/ukit79XDqjqsjvbAaC2s9q7q8FN6n4Zqf4YMGWLarGFcDwNrKNLAoz1q2vuitZs6jJH2RmkQ1MP1WmKgPar6ZaVB0Bm650JoDa6+NzoEmdP7rCUdTrj2pYeDdXggbZ/2DGpY0bIJDSGe9Zzno8N/aSjR8TO1B0trUPUwta6jDiuUHRpmtH5X65J1ffQENK1P1nCpvX/6ZT179myzrIY+LYHQk3u0B1zXU99PfZzWQGdFVt4D3Sa0VloPkWsbrrvuOhMwfv75ZzNfw3Rmw8RdCN12dWgp/Ty1fXrynG7D2ouqRy60vlSHVNPeVV1W/6/vk75HenJkTnsMPWkvpI4FrCdMeQ4Pp0ONaS+xli1oj7bv+NMagpweTN3fdCxWXQ/dNvQIhfYy6zppGHXo/qD7vIZTDcS+Q5jpH4LOH4M6RJqeUKn7qNbD6vau66zDZ+nh/PMdBdF9VQ/X66F+PflP/zjVddT1yQn9faTvv9bI6nNrjbCeyKclJf6GMMuKrLZRf39oENbtWHustbxAf8doj60O+6Xbr4Z9/aNB26l/DGr5kG7HeqJeVuhRAB0aTMtfgGzxGjsBuIi1a9fODPF04sSJTJe55557XNHR0a5Dhw65h6vyvAKSpy+++MIMJ6TDJ3kOa+U7FJjSYbr0eapWrWqG9tGrounwN0lJSee84pAOuzN06FDXFVdcYR536aWXuq699lpzZR9nSKmPP/7YXE1Mh0vSZcqXL+/q1auXa9++fTm6Qpk/v/32mxm2SK8SlZCQYIYi0qHU/A0FpkM06XBrepUofb91vV555RWv58vKUGALFy50tW/f3gxnpeult507d/YaGi2zK5RldgW0devWuTp27OgqXry4WRdt2+23325ey9PixYtd9evXN6972WWXmWGlsnqFsqy+B0o/w3HjxpnltT2XXHKJed1Ro0aZobyy+zn5Otc2/Mknn7iaNGlihpvTSbdNfY1t27Z5DYGmn3vhwoXNtqfDPOkVznzfW91u9Tmy44UXXjDP6zk0lTNEVmaT7+epVyQbPHiwq1SpUub9u/rqq91DnvluI5lNnsNkzZ8/31yNTLc1/T1QpEgR13XXXWde13Morsz8888/5spn+l7puunQcz///HOGfdtZTx1S0F9bPfcpvRqdbg+lS5d2xcbGupo3b26uuJbTK5RltY3qjTfeMNu/MwyeZ7v0//pYHf5Lt3G9Mpz+/tTtPqvbRcOGDTNcpQ7Iigj9J3txGACQUzoYvg5ttGnTpmA3JaRpb6D2wuoFN/QiJ7i46JEM7fnV4ccyO8kTyAw1twCAkKOHxXUkEB3BIitn6cMuOgqGlokQbJET9NwCQADRcwsAeYueWwAAAFiDnlsAAABYg55bAAAAWINwCwAAAGtwEYf/XQtbL4epA5UH8jKXAAAAyBqtpNWLLemFcDK7kqAi3P7vOu+el2IEAABAaNq1a5e5GmVmCLcipsfWebP0EpIAAAAILUePHjWdkU5uywzhVoeM+F8pggZbwi0AAEDoOl8JKSeUAQAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWCHq43bNnj3Tt2lWKFy8usbGxUqtWLVm7dq3XdYSHDx8upUuXNve3atVKtm/f7vUcf//9t3Tp0sVcgCE+Pl569uwpx48fD8LaAAAA4KINt//8849cd911Eh0dLd98841s2bJFnn/+ebnkkkvcy4wfP15eeuklmTp1qqxatUoKFSokbdq0kdOnT7uX0WC7efNmWbBggcyZM0eWLFkiDzzwQJDWCgAAAMES4dKu0SB57LHHZNmyZbJ06VK/92vTypQpIw8//LAMHjzYzEtOTpaEhASZMWOG3HnnnbJ161apXr26rFmzRho0aGCWmTt3rtx0002ye/du8/isXKs4Li7OPDeX3wUAAAg9Wc1rURJEX375pemF/fe//y2LFy+Wf/3rX9K7d2+5//77zf07duyQ/fv3m1IEh65Uw4YNZcWKFSbc6q2WIjjBVunykZGRpqf3tttuy/C6Z86cMZPnm6VSU1PNBAAAgNCS1YwW1HD7+++/y6uvviqDBg2Sxx9/3PS+9uvXT2JiYqR79+4m2CrtqfWkPzv36W3JkiW97o+KipJixYq5l/E1duxYGTVqVIb58+fPl4IFC+biGgIAACA3nDx5MvTDbXp6uulxfeaZZ8zPdevWlU2bNpn6Wg23eWXo0KEmUHv23JYrV04SExMpSwAAAAhBzpH2kA63OgKC1st6qlatmnzyySfm/6VKlTK3Bw4cMMs69Oc6deq4lzl48KDXc6SlpZkRFJzH+8qfP7+ZfOmJbToBAAAgtGQ1owV1tAQdKWHbtm1e83755RepUKGC+X+lSpVMQF24cKFXatda2saNG5uf9fbIkSOSlJTkXmbRokWmV1hrcwEAAHDxCGrP7cCBA+Xaa681ZQm33367rF69Wl5//XUzqYiICBkwYIA89dRTUrlyZRN2n3zySTMCQocOHdw9vTfeeKM5CU3LGbTYuG/fvuZks6yMlAAAAAB7BHUoMKXj0moNrF6YQcOr1sI6oyUobd6IESNM4NUe2iZNmsiUKVOkSpUq7mW0BEED7ezZs80oCZ06dTJj4xYuXDhLbWAoMAAAgNCW1bwW9HAbCmwLtzt37pRDhw4FuxnIxKWXXirly5cPdjMAAAgrYTHOLfIm2FarWlVOnjoV7KYgEwVjY2Xrzz8TcAEAyAOEW8toj60G2/duqy/VShQJdnPgY+tfx6TrZ0nmcyLcAgCQ+wi3ltJgW690fLCbAQAAEFBBHQoMAAAAyE2EWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsEdRwO3LkSImIiPCaqlat6r7/9OnT0qdPHylevLgULlxYOnXqJAcOHPB6jp07d8rNN98sBQsWlJIlS8qQIUMkLS0tCGsDAACAYIsKdgNq1Kgh3377rfvnqKj/36SBAwfKV199JbNmzZK4uDjp27evdOzYUZYtW2buP3v2rAm2pUqVkuXLl8u+ffukW7duEh0dLc8880xQ1gcAAAAXcbjVMKvh1FdycrJMmzZNPvjgA2nRooWZN336dKlWrZqsXLlSGjVqJPPnz5ctW7aYcJyQkCB16tSRMWPGyKOPPmp6hWNiYvy+5pkzZ8zkOHr0qLlNTU01UzhLT0+X2NhYSY+KkdTI6GA3Bz70czGfT3p62G9rAAAEUla/N4Mebrdv3y5lypSRAgUKSOPGjWXs2LFSvnx5SUpKMivRqlUr97JasqD3rVixwoRbva1Vq5YJto42bdrIgw8+KJs3b5a6dev6fU19jVGjRmWYr2FZyxvC3cyZM2WPiJkQemYm9pY9e/aYCQAAZM3JkydDP9w2bNhQZsyYIVdeeaUpKdDA2bRpU9m0aZPs37/f9LzGx8d7PUaDrN6n9NYz2Dr3O/dlZujQoTJo0CCvntty5cpJYmKiFC1aVMLZhg0bpFmzZrKkR1OpnRAX7ObAx4YDydJs+lJZsmSJ1K5dO9jNAQAgbDhH2kM63LZt29b9/6uuusqE3QoVKsh///tfc+g2r+TPn99MvrRWV6dwFhkZKadOnZLItBSJTuewd6jRz8V8PpGRYb+tAQAQSFn93gypocC0l7ZKlSry66+/mjrclJQUOXLkiNcyOlqCU6Ort76jJzg/+6vjBQAAgN1CKtweP35cfvvtNyldurTUr1/fJPSFCxe679+2bZsZ+ktrc5Xebty4UQ4ePOheZsGCBaa0oHr16kFZBwAAAARPUMsSBg8eLO3atTOlCHv37pURI0ZIvnz5pHPnzmbor549e5ra2GLFipnA+tBDD5lAqyeTKa2R1RB79913y/jx402d7bBhw8zYuP7KDgAAAGC3oIbb3bt3myB7+PBhKVGihDRp0sQM86X/VxMnTjS1iXrxBh26S0dCmDJlivvxGoTnzJljRkfQ0FuoUCHp3r27jB49OohrBQAAgIsy3H744YfnvF+HB5s8ebKZMqO9vl9//XUetA4AAADhJqRqbgEAAIALQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrhEy4ffbZZyUiIkIGDBjgnnf69Gnp06ePFC9eXAoXLiydOnWSAwcOeD1u586dcvPNN0vBggWlZMmSMmTIEElLSwvCGgAAACDYQiLcrlmzRl577TW56qqrvOYPHDhQZs+eLbNmzZLFixfL3r17pWPHju77z549a4JtSkqKLF++XN5++22ZMWOGDB8+PAhrAQAAALnYw+3x48elS5cu8sYbb8gll1zinp+cnCzTpk2TF154QVq0aCH169eX6dOnmxC7cuVKs8z8+fNly5Yt8t5770mdOnWkbdu2MmbMGJk8ebIJvAAAALi4RAW7AVp2oL2vrVq1kqeeeso9PykpSVJTU818R9WqVaV8+fKyYsUKadSokbmtVauWJCQkuJdp06aNPPjgg7J582apW7eu39c8c+aMmRxHjx41t/p6OoWz9PR0iY2NlfSoGEmNjA52c+BDPxfz+aSnh/22BgBAIGX1ezOo4fbDDz+UH3/80ZQl+Nq/f7/ExMRIfHy813wNsnqfs4xnsHXud+7LzNixY2XUqFEZ5mtPsNbuhruZM2fKHhEzIfTMTOwte/bsMRMAAMiakydPhna43bVrl/Tv318WLFggBQoUCOhrDx06VAYNGuTVc1uuXDlJTEyUokWLSjjbsGGDNGvWTJb0aCq1E+KC3Rz42HAgWZpNXypLliyR2rVrB7s5AACEDedIe8iGWy07OHjwoNSrV8/rBDH90n/llVdk3rx5pm72yJEjXr23OlpCqVKlzP/1dvXq1V7P64ym4CzjT/78+c3kKzo62kzhLDIyUk6dOiWRaSkSnc5h71Cjn4v5fCIjw35bAwAgkLL6vZkrJ5RpAM2uli1bysaNG2X9+vXuqUGDBubkMuf/uhILFy50P2bbtm1m6K/GjRubn/VWn0NDskN7grX3tXr16rmxagAAAAgj2e65HTdunFSsWFHuuOMO8/Ptt98un3zyiekp/frrr7N8qLVIkSJSs2ZNr3mFChUyY9o683v27GnKB4oVK2YC60MPPWQCrZ5MprSMQEPs3XffLePHjzd1tsOGDTMnqfnrmQUAAIDdst1zO3XqVFOf6vSS6vTNN9+YYbj0Agq5aeLEiXLLLbeYizdoHakG6E8//dR9f758+WTOnDnmVkNv165dpVu3bjJ69OhcbQcAAAAs7bnV3lEn3Gqw1J5b7UHV3tyGDRteUGO+//57r5/1RDMds1anzFSoUMH0GAMAAADZ7rnVCy3oSAdq7ty57nFoXS6XOSEMAAAACJueW7387V133SWVK1eWw4cPm3IEtW7dOrniiivyoo0AAABA3oRbrYPVEgTtvdWTuAoXLmzm79u3T3r37p3dpwMAAACCF251eK7BgwdnmD9w4MDcahMAAACQIzka5/bdd9+VJk2aSJkyZeTPP/808yZNmiRffPFFzloBAAAABCPcvvrqq2bsWa211Ys3OCeR6VXENOACAAAAYRNuX375ZXnjjTfkiSeeMOPLOvSKYnq1MAAAACBswu2OHTukbt26GebrFcFOnDiRW+0CAAAA8j7cVqpUSdavX59hvo55W61atey3AAAAAMgl2R4tQett+/TpI6dPnzYXbli9erXMnDlTxo4dK2+++WZutQsAAADI+3B73333SWxsrAwbNkxOnjxpLuigoya8+OKLcuedd2a/BQAAAECwwq3q0qWLmTTcHj9+XEqWLJlb7QEAAAACG24dBQsWNBMAAAAQNuFWR0eIiIjI0hP++OOPF9omAAAAIO/CbYcOHXL27AAAAECohdsRI0bkfUsAAACAQI9zu2bNGlm1alWG+Tpv7dq1F9oeAAAAIHDhVse43bVrV4b5e/bsMfcBAAAAYRNut2zZIvXq1fN70pneBwAAAITNUGD58+eXAwcOyGWXXeY1f9++fRIVdUEjiwFAUO3cuVMOHToU7GbAj0svvVTKly8f7GYACAPZTqOJiYkydOhQ+eKLLyQuLs7MO3LkiDz++OPSunXrvGgjAAQk2FarWlVOnjoV7KbAj4KxsbL1558JuAByP9xOmDBBmjVrJhUqVDClCGr9+vWSkJAg7777bnafDgBCgvbYarB977b6Uq1EkWA3Bx62/nVMun6WZD4jwi2AXA+3//rXv+Snn36S999/XzZs2CCxsbHSo0cP6dy5s0RHR2f36QAgpGiwrVc6PtjNAADkUI6KZAsVKiQPPPBATl8TAAAACF64/fLLL6Vt27amZ1b/fy633nprbrUNAAAAyJvL7+7fv19Klix5zkvxRkREyNmzZ7PXAgAAACCQ4TY9Pd3v/wEAAICwvojDO++8I2fOnMkwPyUlxdwHAAAAhE241ZERkpOTM8w/duyYuQ8AAAAIm3DrcrlMba2v3bt3uy/qAAAAAIT0UGB6wQYNtTq1bNnS61K7ehLZjh075MYbb8yrdgIAAAC5F26dURL0amRt2rSRwoULu++LiYmRihUrSqdOnbL6dAAAAEDwwu2IESNMD62G2MTERCldunTutwYAAAAIVM1tvnz5pFevXnL69OkLeU0AAAAgNE4oq1mzpvz+++950xoAAAAgkOH2qaeeksGDB8ucOXNk3759cvToUa8JAAAACPmaW8dNN91kbm+99VavIcGcIcK4/C4AAADCJtx+9913edMSAAAAINDh9vrrr8/0vk2bNl1oewAAAIDA1dz6u+zu66+/Ltdcc43Url37Qp8OAAAACHy4XbJkiXTv3t2MdzthwgRp0aKFrFy5MuctAQAAAAJZlrB//36ZMWOGTJs2zYyMcPvtt8uZM2fk888/l+rVq19oWwAAAIDA9Ny2a9dOrrzySvnpp59k0qRJsnfvXnn55Zcv7NUBAACAYPTcfvPNN9KvXz958MEHpXLlyrnZBgAAACCwPbc//PCDOXmsfv360rBhQ3nllVfk0KFDudMKAAAAIJDhtlGjRvLGG2+Yq5L16tVLPvzwQylTpoykp6fLggULTPAFAAAAwmq0hEKFCsm9995renI3btwoDz/8sDz77LNSsmRJc9UyAAAAICzHudUTzMaPHy+7d++WmTNn5l6rAAAAgGBcxEHly5dPOnToIF9++WVuPB0AAAAQvHALAAAAhALCLQAAAKxBuAUAAMDFFW7r1asn//zzj/n/6NGj5eTJk3ndLgAAACBvwu3WrVvlxIkT5v+jRo2S48ePZ/+VAAAAgFC4/G6dOnWkR48e0qRJE3G5XDJhwgQpXLiw32WHDx+e220EAAAAci/czpgxQ0aMGCFz5syRiIgI+eabbyQqKuND9T7CLQAAAEI63OrFGvRyuyoyMlIWLlxorkgGAAAAhF249ZSenp43LQEAAAACHW7Vb7/9JpMmTTInmqnq1atL//795fLLL7/Q9gAAAACBG+d23rx5JsyuXr1arrrqKjOtWrVKatSoIQsWLMh5SwAAAIBA99w+9thjMnDgQHn22WczzH/00UeldevWF9omAAAAIDA9t1qK0LNnzwzz7733XtmyZUvOWgEAAAAEI9yWKFFC1q9fn2G+zmMEBQAAAIRVuL3//vvlgQcekHHjxsnSpUvNpCUKvXr1Mvdlx6uvvmpqdosWLWqmxo0bmzF0HadPn5Y+ffpI8eLFzUUjOnXqJAcOHPB6jp07d8rNN98sBQsWNOF6yJAhkpaWlt3VAgAAwMVYc/vkk09KkSJF5Pnnn5ehQ4eaeWXKlJGRI0dKv379svVcZcuWNcG4cuXK5spnb7/9trRv317WrVtnTlDT2t6vvvpKZs2aJXFxcdK3b1/p2LGjLFu2zDz+7NmzJtiWKlVKli9fLvv27ZNu3bpJdHS0PPPMM9ldNQAAAFxs4VavQqahU6djx46ZeRp2c6Jdu3ZePz/99NOmN3flypUm+E6bNk0++OADadGihbl/+vTpUq1aNXN/o0aNZP78+abO99tvv5WEhARzmeAxY8aYE9s0bMfExOSoXQAAALiIxrl15DTU+qO9sNpDe+LECVOekJSUJKmpqdKqVSv3MlWrVpXy5cvLihUrTLjV21q1aplg62jTpo08+OCDsnnzZqlbt67f1zpz5oyZHEePHjW3+no6hTO9yEZsbKykR8VIamR0sJsDH/q5mM8nPT3stzXbsO+ELvYbACqr+/8FhdvcsHHjRhNmtb5W62o/++wzM46unqCmPa/x8fFey2uQ3b9/v/m/3noGW+d+577MjB07VkaNGpVhvvYEa+1uuJs5c6bsETETQs/MxN6yZ88eMyG0sO+ELvYbACdPngyPcHvllVeaIJucnCwff/yxdO/eXRYvXpynr6m1woMGDfLquS1XrpwkJiaaE9vC2YYNG6RZs2aypEdTqZ0QF+zmwMeGA8nSbPpSWbJkidSuXTvYzYEH9p3QxX4DwPNIe8iHW+2dveKKK8z/69evL2vWrJEXX3xR7rjjDklJSZEjR4549d7qaAl6ApnSW71SmidnNAVnGX/y589vJl96IppO4SwyMlJOnTolkWkpEp3O4btQo5+L+XwiI8N+W7MN+07oYr8BoLK6/0dmt9ahZcuWsn37dskrWlOl9bAadHUlFi5c6L5v27ZtZugvLWNQeqtlDQcPHnQvo5cA1t5XLW0AAADAxSVbPbcaNn/66adcLQ9o27atOUlMR17QkRG+//57mTdvnhn6S6+EpuUDxYoVM4H1oYceMoFWTyZTWkagIfbuu++W8ePHmzrbYcOGmbFx/fXMAgAAwG7ZvohD165dzRBduUF7XHVcWq271R5hLUnQYNu6dWtz/8SJE+WWW24xF2/QWjgtNfj000/dj8+XL5/MmTPH3Gro1bbp840ePTpX2gcAAIDwku2aW73611tvvWXGltXSgUKFCnnd/8ILL2T5uc4XkgsUKCCTJ082U2YqVKggX3/9dZZfEwAAAPbKdrjdtGmT1KtXz/z/l19+yXCBBwAAACBswu13332XNy0BAAAAAl1z6/j1119NfawOz6JcLteFtgUAAAAIbLg9fPiwOfmrSpUqctNNN8m+ffvMfB3Z4OGHH76w1gAAAACBDLcDBw40Q4LpeLOel6rViy7MnTv3QtoCAAAABLbmdv78+aYcoWzZsl7zK1euLH/++eeFtQYAAAAIZM/tiRMnvHpsHX///TcXTgAAAEB4hdumTZvKO++84zX8l14yV68QdsMNN+R2+wAAAIC8K0vQEKsnlK1du1ZSUlLkkUcekc2bN5ue22XLlmX36QAAAIDg9dzWrFnTXLyhSZMm0r59e1Om0LFjR1m3bp1cfvnludcyAAAAIK97blVcXJw88cQTOXkoAAAAEFrh9p9//pFp06bJ1q1bzc/Vq1eXHj16SLFixXK7fQAAAEDelSUsWbJEKlasKC+99JIJuTrp/ytVqmTuAwAAAMKm57ZPnz7mgg2vvvqq5MuXz8w7e/as9O7d29y3cePGvGgnAAAAkPs9t7/++qu5zK4TbJX+f9CgQeY+AAAAIGzCbb169dy1tp50Xu3atXOrXQAAAEDelCX89NNP7v/369dP+vfvb3ppGzVqZOatXLlSJk+eLM8++2z2WwAAAAAEMtzWqVPHXInM5XK55+nFG3zdddddph4XAAAACNlwu2PHjrxvCQAAABCIcFuhQoULfR0AAAAgNC/isHfvXvnhhx/k4MGDkp6e7nWf1uQCAAAAYRFuZ8yYIb169ZKYmBgpXry4qcV16P8JtwAAAAibcPvkk0/K8OHDZejQoRIZme2RxAAAAIA8k+10evLkSbnzzjsJtgAAAAg52U6oPXv2lFmzZuVNawAAAIBAliWMHTtWbrnlFpk7d67UqlVLoqOjve5/4YUXLqQ9AAAAQGDD7bx58+TKK680P/ueUAYAAACETbh9/vnn5a233pJ77rknb1oEAAAABKrmNn/+/HLdddfl9PUAAACA0Am3/fv3l5dffjlvWgMAAAAEsixh9erVsmjRIpkzZ47UqFEjwwlln3766YW0BwAAAAhcuI2Pj5eOHTvm/BUBAACAUAm306dPz5uWAAAAABeIy4wBAADg4u25rVSp0jnHs/39998vtE0AAABAYMLtgAEDvH5OTU2VdevWmSuWDRkyJGetAAAAAIIRbnUoMH8mT54sa9euzY02AQAAAMGtuW3btq188sknufV0AAAAQPDC7ccffyzFihXLracDAAAA8r4soW7dul4nlLlcLtm/f7/89ddfMmXKlOy3AAAAAAhWuO3QoYPXz5GRkVKiRAlp3ry5VK1aNbfaBQAAAOR9uB0xYkT2XwUAAAAIAC7iAAAAgIuv51bLD8518Qal96elpeVGuwAAAIC8C7efffZZpvetWLFCXnrpJUlPT89+CwAAAIBAh9v27dtnmLdt2zZ57LHHZPbs2dKlSxcZPXp0brULAAAACEzN7d69e+X++++XWrVqmTKE9evXy9tvvy0VKlTIydMBAAAAgQ+3ycnJ8uijj8oVV1whmzdvloULF5pe25o1a+ZOawAAAIBAlCWMHz9exo0bJ6VKlZKZM2f6LVMAAAAAwiLcam1tbGys6bXVEgSd/Pn0009zs30AAABA7ofbbt26nXcoMAAAACAswu2MGTPytiUAAADABeIKZQAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYI6jhduzYsXL11VdLkSJFpGTJktKhQwfZtm2b1zKnT5+WPn36SPHixaVw4cLSqVMnOXDggNcyO3fulJtvvlkKFixonmfIkCGSlpYW4LUBAADARR1uFy9ebILrypUrZcGCBZKamiqJiYly4sQJ9zIDBw6U2bNny6xZs8zye/fulY4dO7rvP3v2rAm2KSkpsnz5cnn77bdlxowZMnz48CCtFQAAAIIlKmivLCJz5871+llDqfa8JiUlSbNmzSQ5OVmmTZsmH3zwgbRo0cIsM336dKlWrZoJxI0aNZL58+fLli1b5Ntvv5WEhASpU6eOjBkzRh599FEZOXKkxMTEBGntAAAAcFGFW18aZlWxYsXMrYZc7c1t1aqVe5mqVatK+fLlZcWKFSbc6m2tWrVMsHW0adNGHnzwQdm8ebPUrVs3w+ucOXPGTI6jR4+aW30tncJZenq6xMbGSnpUjKRGRge7OfChn4v5fNLTw35bsw37TuhivwGgsrr/h0y41V9aAwYMkOuuu05q1qxp5u3fv9/0vMbHx3stq0FW73OW8Qy2zv3OfZnV+o4aNSrDfO0F1rrdcDdz5kzZI2ImhJ6Zib1lz549ZkJoYd8JXew3AE6ePBle4VZrbzdt2iQ//PBDnr/W0KFDZdCgQV49t+XKlTP1vkWLFpVwtmHDBlPSsaRHU6mdEBfs5sDHhgPJ0mz6UlmyZInUrl072M2BB/ad0MV+A8DzSHtYhNu+ffvKnDlzzC+usmXLuueXKlXKnCh25MgRr95bHS1B73OWWb16tdfzOaMpOMv4yp8/v5l8RUdHmymcRUZGyqlTpyQyLUWi0zl8F2r0czGfT2Rk2G9rtmHfCV3sNwBUVvf/oI6W4HK5TLD97LPPZNGiRVKpUiWv++vXr29WZOHChe55OlSYDv3VuHFj87Pebty4UQ4ePOheRkde0B7Y6tWrB3BtAAAAEGxRwS5F0JEQvvjiCzPWrVMjGxcXZ04e0NuePXuaEgI9yUwD60MPPWQCrZ5MprSUQEPs3XffLePHjzfPMWzYMPPc/npnAQAAYK+ghttXX33V3DZv3txrvg73dc8995j/T5w40RyK0os36AgHOhLClClT3Mvmy5fPlDTo6AgaegsVKiTdu3eX0aNHB3htAAAAcFGHWy1LOJ8CBQrI5MmTzZSZChUqyNdff53LrQMAAEC4CWrNLQAAAJCbCLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGCNoIbbJUuWSLt27aRMmTISEREhn3/+udf9LpdLhg8fLqVLl5bY2Fhp1aqVbN++3WuZv//+W7p06SJFixaV+Ph46dmzpxw/fjzAawIAAAC52MPtiRMnpHbt2jJ58mS/948fP15eeuklmTp1qqxatUoKFSokbdq0kdOnT7uX0WC7efNmWbBggcyZM8cE5gceeCCAawEAAIBQERXMF2/btq2Z/NFe20mTJsmwYcOkffv2Zt4777wjCQkJpof3zjvvlK1bt8rcuXNlzZo10qBBA7PMyy+/LDfddJNMmDDB9AgDAADg4hHUcHsuO3bskP3795tSBEdcXJw0bNhQVqxYYcKt3mopghNslS4fGRlpenpvu+02v8995swZMzmOHj1qblNTU80UztLT000JR3pUjKRGRge7OfChn4v5fNLTw35bsw37TuhivwGgsrr/h2y41WCrtKfWk/7s3Ke3JUuW9Lo/KipKihUr5l7Gn7Fjx8qoUaMyzJ8/f74ULFhQwt3MmTNlj4iZEHpmJvaWPXv2mAmhhX0ndLHfADh58mR4h9u8NHToUBk0aJBXz225cuUkMTHRnJgWzjZs2CDNmjWTJT2aSu2EuGA3Bz42HEiWZtOXmtpwrTdH6GDfCV3sNwA8j7SHbbgtVaqUuT1w4IAZLcGhP9epU8e9zMGDB70el5aWZkZQcB7vT/78+c3kKzo62kzhTEsyTp06JZFpKRKdzuG7UKOfi/l8IiPDfluzDftO6GK/AaCyuv+H7Di3lSpVMgF14cKFXolda2kbN25sftbbI0eOSFJSknuZRYsWmbosrc0FAADAxSWoPbc6Hu2vv/7qdRLZ+vXrTc1s+fLlZcCAAfLUU09J5cqVTdh98sknzQgIHTp0MMtXq1ZNbrzxRrn//vvNcGFaaNy3b19zshkjJQAAAFx8ghpu165dKzfccIP7Z6cOtnv37jJjxgx55JFHzFi4Om6t9tA2adLEDP1VoEAB92Pef/99E2hbtmxpDll16tTJjI0LAACAi09Qw23z5s3NeLaZ0auWjR492kyZ0V7eDz74II9aCAAAgHASsjW3AAAAQHYRbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDUItwAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFiDcAsAAABrEG4BAABgDcItAAAArEG4BQAAgDWigt0AAAAQ3nbu3CmHDh0KdjPgx6WXXirly5eXiwnhFgAAXFCwrVa1qpw8dSrYTYEfBWNjZevPP19UAZdwCwAAckx7bDXYvndbfalWokiwmwMPW/86Jl0/SzKfEeEWAAAgGzTY1isdH+xmAJxQBgAAAHsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAFjDmnA7efJkqVixohQoUEAaNmwoq1evDnaTAAAAEGBWhNuPPvpIBg0aJCNGjJAff/xRateuLW3atJGDBw8Gu2kAAAAIICvC7QsvvCD333+/9OjRQ6pXry5Tp06VggULyltvvRXspgEAACCAoiTMpaSkSFJSkgwdOtQ9LzIyUlq1aiUrVqzw+5gzZ86YyZGcnGxu//77b0lNTZVwdvToUVOakfTXCTmabsXfLlbZfviE+Xz0czp8+HCwmwMP7Duhi/0mtLHvhK7tlu07x44dM7cul+vcC7rC3J49e3QNXcuXL/eaP2TIENc111zj9zEjRowwj2FiYmJiYmJiYpKwmnbt2nXObBj2Pbc5ob28WqPrSE9PN722xYsXl4iIiKC2Dd70r81y5crJrl27pGjRosFuDhA22HeA7GO/CW3aY6u9t2XKlDnncmEfbi+99FLJly+fHDhwwGu+/lyqVCm/j8mfP7+ZPMXHx+dpO3Fh9JcMv2iA7GPfAbKP/SZ0xcXFnXeZsC+OiYmJkfr168vChQu9emL158aNGwe1bQAAAAissO+5VVpi0L17d2nQoIFcc801MmnSJDlx4oQZPQEAAAAXDyvC7R133CF//fWXDB8+XPbv3y916tSRuXPnSkJCQrCbhguk5SM6frFvGQmAc2PfAbKP/cYOEXpWWbAbAQAAAOSGsK+5BQAAAByEWwAAAFiDcAsAAABrEG4BAABgDcIt8tTYsWPl6quvliJFikjJkiWlQ4cOsm3bNq9lTp8+LX369DFXiCtcuLB06tTJ66IcGzZskM6dO5urxsTGxkq1atXkxRdf9HqOH374Qa677jrzHLpM1apVZeLEiQFbTyBc9x1Py5Ytk6ioKDPiDBCuArXvfP/99+aqpr6TjtqE4CLcIk8tXrzY/AJZuXKlLFiwQFJTUyUxMdGMQ+wYOHCgzJ49W2bNmmWW37t3r3Ts2NF9f1JSkvkF9d5778nmzZvliSeeMJdQfuWVV9zLFCpUSPr27StLliyRrVu3yrBhw8z0+uuvB3ydgXDadxxHjhyRbt26ScuWLQO2joAN+44G53379rknfRyCTIcCAwLl4MGDOvSca/HixebnI0eOuKKjo12zZs1yL7N161azzIoVKzJ9nt69e7tuuOGGc77Wbbfd5uratWsuth6wd9+54447XMOGDXONGDHCVbt27TxaC8Cefee7774zj/nnn3/yeA2QXfTcIqCSk5PNbbFixdx/Hetf1a1atXIvoyUF5cuXlxUrVpzzeZzn8GfdunWyfPlyuf7663O1/YCN+8706dPl999/N4PXA7bJ6+8dLeMpXbq0tG7d2pT2IPisuEIZwkN6eroMGDDA1MbWrFnTzNPapJiYGImPj/daVq8ul1ndkobWjz76SL766qsM95UtW9ZcrS4tLU1Gjhwp9913Xx6tDWDHvrN9+3Z57LHHZOnSpabeFrBJXu47GminTp0qDRo0kDNnzsibb74pzZs3l1WrVkm9evXyeM1wLvwmQ8BoDdSmTZvMyV85pY9v37696WHSGipf+gV9/PhxU2ulX9hXXHGFOSkACGd5te+cPXtW7rrrLhk1apRUqVIlF1sM2P+9c+WVV5rJce2118pvv/1mTmZ+9913L7jtyDnCLQJCT/aaM2eOOeFLe1cdpUqVkpSUFHMyi+df0XrWqt7nacuWLeZklwceeMCcLOZPpUqVzG2tWrXMc2jvLeEW4Swv951jx47J2rVrTRmPvo7T06VXZdde3Pnz50uLFi0Csp5AuH7veLrmmmsuKEgjd1BzizylX5L6C+azzz6TRYsWucOno379+hIdHS0LFy70OvN0586d0rhxY/c8PVv1hhtukO7du8vTTz+dpdfWL2k9VASEo0DsO0WLFpWNGzfK+vXr3dN//vMf0xul/2/YsGEA1hSw53tH9xstV0Bw0XOLPD8k9MEHH8gXX3xhxhx06pni4uLM2IF627NnTxk0aJAp1Ncv24ceesj8gmnUqJH7kJD2HrVp08Ys5zxHvnz5pESJEub/kydPNicD6EkBSv9SnzBhgvTr1y9o6w6E+r4TGRnprkN06DBGBQoUyDAfCBeB+t6ZNGmSCc41atQw4+Zqza2GaT3igSDL9vgKQDboJuZvmj59unuZU6dOmSFWLrnkElfBggXNEF779u1z369DE/l7jgoVKriXeemll1w1atQwjy9atKirbt26rilTprjOnj0b8HUGwmnf8cVQYAh3gdp3xo0b57r88stdBQoUcBUrVszVvHlz16JFiwK+vsgoQv8JdsAGAAAAcgM1twAAALAG4RYAAADWINwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgBCmF5EslWrVuYa976mTJki8fHxsnv37qC0DQBCEeEWAEJYRESETJ8+XVatWiWvvfaae/6OHTvkkUcekZdfflnKli2bq6+Zmpqaq88HAIFEuAWAEFeuXDl58cUXZfDgwSbUam9uz549JTExUerWrStt27aVwoULS0JCgtx9991y6NAh92Pnzp0rTZo0MT28xYsXl1tuuUV+++039/1//PGHCdAfffSRXH/99VKgQAF5//33g7SmAHDhIlz6WxIAEPI6dOggycnJ0rFjRxkzZoxs3rxZatSoIffdd59069ZNTp06JY8++qikpaXJokWLzGM++eQTE16vuuoqOX78uAwfPtwE2vXr10tkZKT5f6VKlaRixYry/PPPm7CsAbd06dLBXl0AyBHCLQCEiYMHD5ow+/fff5vQumnTJlm6dKnMmzfPvYzW32pP77Zt26RKlSoZnkN7dUuUKCEbN26UmjVrusPtpEmTpH///gFeIwDIfZQlAECYKFmypPTq1UuqVatmenE3bNgg3333nSlJcKaqVauaZZ3Sg+3bt0vnzp3lsssuk6JFi5oeWrVz506v527QoEEQ1ggAcl9UHjwnACCPREVFmUlpmUG7du1k3LhxGZZzygr0/goVKsgbb7whZcqUkfT0dNNjm5KS4rV8oUKFArQGAJC3CLcAEKbq1atnyhO0N9YJvJ4OHz5syhM02DZt2tTM++GHH4LQUgAIHMoSACBM9enTx9TfatnBmjVrTCmC1t/26NFDzp49K5dccokZIeH111+XX3/91ZxkNmjQoGA3GwDyFOEWAMKUlhksW7bMBFkdFqxWrVoyYMAAM+yXjoSg04cffihJSUmmFGHgwIHy3HPPBbvZAJCnGC0BAAAA1qDnFgAAANYg3AIAAMAahFsAAABYg3ALAAAAaxBuAQAAYA3CLQAAAKxBuAUAAIA1CLcAAACwBuEWAAAA1iDcAgAAwBqEWwAAAIgt/h8ArzEb3PTzDQAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 800x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Task 2, Question (e)\n",
"# Count number of articles published in each year since 2023\n",
"year_counts = df2[df2['year'] >= 2023]['year'].value_counts().sort_index()\n",
"print(\"Number of articles published in each year since 2023:\")\n",
"print(year_counts)\n",
"\n",
"# Bar plot\n",
"plt.figure(figsize=(8, 6))\n",
"year_counts.plot(kind='bar', color='coral', edgecolor='black')\n",
"plt.xlabel('Year')\n",
"plt.ylabel('Number of Articles')\n",
"plt.title('Articles Published per Year (2023 and later)')\n",
"plt.xticks(rotation=0)\n",
"plt.grid(axis='y')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "343d57d2",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Mean citation count for each publication year:\n",
"year\n",
"2023 130.954315\n",
"2024 79.027473\n",
"2025 80.354839\n",
"Name: citation_count, dtype: float64\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAArcAAAIjCAYAAAAZajMiAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjYsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvq6yFwwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAR3hJREFUeJzt3Qd8VFXax/EngZAQIFRp0kWqFKWDIh3ERlkQRWWRBVekqwivdEEWF0EpglhgQZqsgMAqgoAgUqQjCIiKgrSoGDoBknk/z9l35p2ZFJIwk5k5/L6fzyWZO3dmzp17b+bPmeeeG+ZwOBwCAAAAWCA80A0AAAAAfIVwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALIF1mzZolYWFh8vPPP2fK6/31r3+VUqVKZcprIXTpfpIzZ840Lav774gRIwK2T6fWFgA3j3ALZJDzA1GnjRs3Jrlfr2xdvHhxc/9DDz0kwS4hIUFmzpwpjRo1knz58klkZKQJlV27dpXt27en+ti3337bvB8ZdeLECfMBv3v3bgk2586dk5EjR0q1atVMeMqePbvcdddd8vLLL5t2B4NPP/005AKS7lvO40enggULyn333SdLliwR2wTT9rl27ZpUqVJF7rjjDrl8+XKS+zXgR0dHS4cOHQLSPsAnHAAyZObMmQ49hKKiohzPPfdckvvXrVtn7o+MjHQ8+OCDjmB26dIlR6tWrUx7GzZs6PjnP//peP/99x1Dhw51lC9f3hEWFuY4duyYWfb69euOy5cvOxITE12Pr1y5suP+++/P8Otv27bNvLa+p96uXr3quHLliiMQfvzxR0fp0qUdWbJkcXTq1MkxZcoUx4wZMxy9evVy5M+f33HnnXc6gsHzzz9v3r9QUrJkSUf16tUdc+bMMdO4ceMcZcqUMesxbdq0dD9fly5dHDly5EjTsvoaw4cPd91Obp/OrO2jr3vt2jVHZtq0aZM5pgcPHpzkPv1blTt3bseJEycytU2AL2X1TUQGbl2tW7eWRYsWyaRJkyRr1v8/pObNmyc1atSQ33//XYLdSy+9JCtXrpSJEydKv379PO4bPny4me+UJUsWM2WWiIgICYTr169Lu3bt5PTp0/Lll1/Kvffe63H/mDFjZNy4cQFpWyjQ9y8xMVGyZcuW4jK33367PPnkk67bTz/9tJQtW9bsb3//+98zqaWZv0+7i4qKyvTXrFevnnl/x48fL507d5bKlSub+R9//LH85z//Md/EFClSxO/tuHjxouTIkcPvr4NbkE+jMnAL9twuWrTI9IJ8+umnrvvi4+MdefPmdbzxxhumh8q75zYhIcExceJER6VKlUzPbsGCBR09evRwnDlzxmO5pUuXOlq3bu0oUqSII1u2bKZna9SoUaanyZ32mmrv6f79+x2NGjVyZM+e3VG0aFHTG3Yj2iObNWtWR/PmzdO13keOHDG3df30tvvk7MX9448/HC+88ILjrrvuMr1quXLlMj3Eu3fvTtLD7T05e3G1R05fw92FCxccAwYMcBQrVsy8L+XKlTO9zd49b/o82mu2ZMkS8/7osvqef/bZZzdczwULFpjHjxkzxpFWH330keOee+4xvfnas9u5c2fHr7/+6rGMvjfJ9XJ7r6e+v/r6ul7vvPOO2fba/po1azq++eYbj8cl9/6lxrlPfv75545q1aqZfbBixYqOjz/+OMmyf/75p6Nv376u9/qOO+5w/OMf/zD7cHJt1f1a2xoeHu7YtWvXDdvgTdcvIiLCY9/Qn+6cr+fe0+/sudXe9hYtWjiio6PNcTNy5Mhk9wv3nlvvfdpJj2n9JiNnzpxm39W2zZ0713X/hg0bHH/5y18cxYsXN++Nvkf9+vUz34Skdft4t0Xt3LnTHCf6mrpOTZo0cWzevNljGWebN27c6Ojfv7+jQIECZp3btGnjiI2NddxIXFyceX/uvfde8/6cP3/etL9evXqu92vLli2Oli1bOmJiYszfFH0v9PXc/fzzz+abKz0Gdb/Ply+feU+830tne7/88kuz/G233ebIkyfPDdsJZAQ9t4APage1J2T+/PnywAMPmHmfffaZnD17Vjp16mR6dL09++yzpkZV61n79OkjR44ckSlTpsiuXbvk66+/dvVW6jJa5zlgwADzc+3atTJs2DBTB/rPf/7T4zn//PNPadWqlelt7Nixo/z73/82daFaX+dsV3K0rdrL9tRTT2Vo/d98803p3bu3ad8rr7xi5hUqVMj8/Omnn2Tp0qWmfq906dKmF/Sdd96R+++/X7777jspWrSoVKxYUUaNGmXWq0ePHqbuUtWvXz/Z19M88Mgjj8i6deukW7duUr16dfn8889N7/Px48c9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+Mc/pHz58vLJJ5/IPffcI1FRUVKmTBkZOXKkR6/4hAkTTCjW9017tHv27CkXLlxw3T9r1izJkyeP2R6VKlUy7T569GiK7QFwayPcAkAysmfPLlevXk3XY/75z3+aIKi9lYMGDZK+ffvK6tWr0/TY48ePS8OGDU1wW7t2rezYsUOeeeYZVwjU4KzhcePGjbJlyxa58847pXXr1ma+M/wq7X3WcgfnbW9vvfWWvPHGGzJ+/HjZu3evtGzZ0oTTw4cPeyz3yiuvmJIGDd/lypUzoT21Mg193j/++ENeffVVE0613KJ3797y1VdfydNPP23ei++++07eeecdE1bHjBnjeqz2wE6aNMmE+3/9619m/QcOHOjx/JcuXZJx48bJe++9Z5YrWLBgmt5XALcgBwDc4rp06eJ49NFHze+JiYmO1atXOyIjIx0vvviimXf//fc7+vbt6/EYXV4f51SyZElHq1atPJZ57LHHHA888IDrtv7JXbJkifn9yJEj5vauXbvM7cGDBztKly7tuHr1apranJCQ4MiVK5dj+fLlyT6/0/Dhwx3VqlVz3S5atKhjzJgxHsvUqlXL0bNnT492vffee6779+/fb+YdOHAg1TatWbPGkSVLFkdMTIzj559/NvOaNm3qeO211zyWmzNnjqNIkSIpPs+iRYsc+fPnd92eOXOmef3du3en+voAoKi5BQARUx+qtan6tbp+da9fs+tX+ulRr169JLdvNIKCk/aQahmC1vkm5/Tp0zJkyBD58ssvJTY21tSdam9mer6eP3funJw4cUIaNGjgMV9v79mzx2Ne1apVXb8XKVLE/NTXrVChQorP36RJE3MCmZY6aHmH0uf9+uuvPXpqte1Xrlwx7deyhy+++ELGjh0rBw8eNG3UHmL3+5We6OfeJgBICeEWAERMfem0adNMiCpatKhkzZrV42vz/3aM/j8Nwb4ug0iNliTo1/769b8GRy1f0PCc3tKJtHIP2VqDqzT034i+b+7vndbOao1tu3btkiyrNbha46t1xlrnrAE4X758pvSiW7duZt2c4VbfH2c7ACA1hFsAEDEnM+kQYMm57bbbTB2re8/jvn37TCB2p7Ww3rcrVqyYptfXXkmtN9XQnFzvrfZ+vv3226bOVh07dswMw+VOH5fasFt6opoGd30uPSHN/blr164t/qAnkh06dCjF91ZrizU0ax2wc/SDjz76yC9tAXBr4IQyALgB/br9P//5j5n0q3PtZYyLi0uynIbE119/Xb7//nszUoIOh6UnUqVFr169zFfynTp1ku3bt5sTvObMmWOCodITyPT2gQMHZOvWrdK5c+ckvb06QoKOaXvq1Cn5888/k32dl156yZyYtXDhQvPceuKblkSktZ3pNWzYMJk9e7bpvdUTwbT9CxYsMCUWSkOvBvrJkyfLTz/9ZNZx+vTpfmkLgFsD4RYAbkBHLdCyAD3rX3s8dTgr715b9cILL5hgevfdd8vo0aPNEFc6GkFa5M+f34wSoF/j62vUqFFD3n33XVcv7vvvv28Cq/aEPvXUU9KnT58kIwZo76eOzqDDaWkbkqOPGzBggGmrDr+lw4DpEFsanv1B11/rmVetWiW1atUyNbkTJ0501eTq6BL6Pmng1hEW5s6da+pvASCjwvSssgw/GgAAAAgi9NwCAADAGoRbAAAAWINwCwAAAGsQbgEAAGANwi0AAACsQbgFAACANQi3AAAAsAbhFgAAANYg3AIAAMAahFsAAABYg3ALAAAAscX/Aso8BEvS5IrFAAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 800x600 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Task 2, Question (f)\n",
"mean_citations_per_year = df2.groupby('year')['citation_count'].mean()\n",
"print(\"Mean citation count for each publication year:\")\n",
"print(mean_citations_per_year)\n",
"\n",
"# Bar plot\n",
"plt.figure(figsize=(8, 6))\n",
"mean_citations_per_year.plot(kind='bar', color='mediumseagreen', edgecolor='black')\n",
"plt.xlabel('Publication Year')\n",
"plt.ylabel('Mean Citation Count')\n",
"plt.title('Mean Citation Count per Publication Year')\n",
"plt.xticks(rotation=0)\n",
"plt.grid(axis='y')\n",
"plt.show()"
]
}
],
"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.13.7"
}
},
"nbformat": 4,
"nbformat_minor": 5
}