From 3b895e0ad4dd33c113b3fab54de5d2cbd355e5be Mon Sep 17 00:00:00 2001 From: Jane Wong <78888328+janecww@users.noreply.github.com> Date: Wed, 14 Jun 2023 15:30:48 +0800 Subject: [PATCH] Delete Codes/Task 4 directory --- .../Part_B_Stock_Anomaly_Detection.ipynb | 2061 ------------- ..._Anomaly_Associated_Events_Analysis_.ipynb | 2591 ----------------- 2 files changed, 4652 deletions(-) delete mode 100644 Codes/Task 4/Part_B_Stock_Anomaly_Detection.ipynb delete mode 100644 Codes/Task 4/Part_C_Stock_Anomaly_Associated_Events_Analysis_.ipynb diff --git a/Codes/Task 4/Part_B_Stock_Anomaly_Detection.ipynb b/Codes/Task 4/Part_B_Stock_Anomaly_Detection.ipynb deleted file mode 100644 index d2717c8..0000000 --- a/Codes/Task 4/Part_B_Stock_Anomaly_Detection.ipynb +++ /dev/null @@ -1,2061 +0,0 @@ -{ - "nbformat": 4, - "nbformat_minor": 0, - "metadata": { - "colab": { - "provenance": [], - "include_colab_link": true - }, - "kernelspec": { - "name": "python3", - "display_name": "Python 3" - }, - "language_info": { - "name": "python" - }, - "widgets": { - "application/vnd.jupyter.widget-state+json": { - "2d12c002ccb64f0faf09a1dce1e103b0": { - "model_module": "@jupyter-widgets/controls", - "model_name": "HBoxModel", - "model_module_version": "1.5.0", - "state": { - "_dom_classes": [], - "_model_module": "@jupyter-widgets/controls", - "_model_module_version": "1.5.0", - "_model_name": "HBoxModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/controls", - "_view_module_version": "1.5.0", - "_view_name": "HBoxView", - "box_style": "", - "children": [ - "IPY_MODEL_3713652868294ce1876c9d7a04e3ce42", - "IPY_MODEL_bc105f4b911e4eeeb4e0c5d3246a068a", - "IPY_MODEL_a90550a9ce124f089e5baa9c850fef6f" - ], - "layout": "IPY_MODEL_ad002fdb6b5e41eeaa7e2cd02ccba541" - } - }, - "3713652868294ce1876c9d7a04e3ce42": { - "model_module": "@jupyter-widgets/controls", - "model_name": "HTMLModel", - "model_module_version": "1.5.0", - "state": { - "_dom_classes": [], - "_model_module": "@jupyter-widgets/controls", - "_model_module_version": "1.5.0", - "_model_name": "HTMLModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/controls", - "_view_module_version": "1.5.0", - "_view_name": "HTMLView", - "description": "", - "description_tooltip": null, - "layout": "IPY_MODEL_1bbd3415268d44edb3ba7fdce43b816d", - "placeholder": "​", - "style": "IPY_MODEL_6199e690822a44d19623d7febd3c5e58", - "value": "100%" - } - }, - "bc105f4b911e4eeeb4e0c5d3246a068a": { - "model_module": "@jupyter-widgets/controls", - "model_name": "FloatProgressModel", - "model_module_version": "1.5.0", - "state": { - "_dom_classes": [], - "_model_module": "@jupyter-widgets/controls", - "_model_module_version": "1.5.0", - "_model_name": "FloatProgressModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/controls", - "_view_module_version": "1.5.0", - "_view_name": "ProgressView", - "bar_style": "success", - "description": "", - "description_tooltip": null, - "layout": "IPY_MODEL_aface8e24692405baaa4e13c356d199f", - "max": 64, - "min": 0, - "orientation": "horizontal", - "style": "IPY_MODEL_ee66fb56cee04a1487557dfc74f1ccad", - "value": 64 - } - }, - "a90550a9ce124f089e5baa9c850fef6f": { - "model_module": "@jupyter-widgets/controls", - "model_name": "HTMLModel", - "model_module_version": "1.5.0", - "state": { - "_dom_classes": [], - "_model_module": "@jupyter-widgets/controls", - "_model_module_version": "1.5.0", - "_model_name": "HTMLModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/controls", - "_view_module_version": "1.5.0", - "_view_name": "HTMLView", - "description": "", - "description_tooltip": null, - "layout": "IPY_MODEL_901b687c700c4bd9bbcc07f793eb72ca", - "placeholder": "​", - "style": "IPY_MODEL_bd7e7b51165946a5834fd688fdc6686c", - "value": " 64/64 [01:05<00:00, 4.10s/it]" - } - }, - "ad002fdb6b5e41eeaa7e2cd02ccba541": { - "model_module": "@jupyter-widgets/base", - "model_name": "LayoutModel", - "model_module_version": "1.2.0", - "state": { - "_model_module": "@jupyter-widgets/base", - "_model_module_version": "1.2.0", - "_model_name": "LayoutModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "LayoutView", - "align_content": null, - "align_items": null, - "align_self": null, - "border": null, - "bottom": null, - "display": null, - "flex": null, - "flex_flow": null, - "grid_area": null, - "grid_auto_columns": null, - "grid_auto_flow": null, - "grid_auto_rows": null, - "grid_column": null, - "grid_gap": null, - "grid_row": null, - "grid_template_areas": null, - "grid_template_columns": null, - "grid_template_rows": null, - "height": null, - "justify_content": null, - "justify_items": null, - "left": null, - "margin": null, - "max_height": null, - "max_width": null, - "min_height": null, - "min_width": null, - "object_fit": null, - "object_position": null, - "order": null, - "overflow": null, - "overflow_x": null, - "overflow_y": null, - "padding": null, - "right": null, - "top": null, - "visibility": null, - "width": null - } - }, - "1bbd3415268d44edb3ba7fdce43b816d": { - "model_module": "@jupyter-widgets/base", - "model_name": "LayoutModel", - "model_module_version": "1.2.0", - "state": { - "_model_module": "@jupyter-widgets/base", - "_model_module_version": "1.2.0", - "_model_name": "LayoutModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "LayoutView", - "align_content": null, - "align_items": null, - "align_self": null, - "border": null, - "bottom": null, - "display": null, - "flex": null, - "flex_flow": null, - "grid_area": null, - "grid_auto_columns": null, - "grid_auto_flow": null, - "grid_auto_rows": null, - "grid_column": null, - "grid_gap": null, - "grid_row": null, - "grid_template_areas": null, - "grid_template_columns": null, - "grid_template_rows": null, - "height": null, - "justify_content": null, - "justify_items": null, - "left": null, - "margin": null, - "max_height": null, - "max_width": null, - "min_height": null, - "min_width": null, - "object_fit": null, - "object_position": null, - "order": null, - "overflow": null, - "overflow_x": null, - "overflow_y": null, - "padding": null, - "right": null, - "top": null, - "visibility": null, - "width": null - } - }, - "6199e690822a44d19623d7febd3c5e58": { - "model_module": "@jupyter-widgets/controls", - "model_name": "DescriptionStyleModel", - "model_module_version": "1.5.0", - "state": { - "_model_module": "@jupyter-widgets/controls", - "_model_module_version": "1.5.0", - "_model_name": "DescriptionStyleModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "StyleView", - "description_width": "" - } - }, - "aface8e24692405baaa4e13c356d199f": { - "model_module": "@jupyter-widgets/base", - "model_name": "LayoutModel", - "model_module_version": "1.2.0", - "state": { - "_model_module": "@jupyter-widgets/base", - "_model_module_version": "1.2.0", - "_model_name": "LayoutModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "LayoutView", - "align_content": null, - "align_items": null, - "align_self": null, - "border": null, - "bottom": null, - "display": null, - "flex": null, - "flex_flow": null, - "grid_area": null, - "grid_auto_columns": null, - "grid_auto_flow": null, - "grid_auto_rows": null, - "grid_column": null, - "grid_gap": null, - "grid_row": null, - "grid_template_areas": null, - "grid_template_columns": null, - "grid_template_rows": null, - "height": null, - "justify_content": null, - "justify_items": null, - "left": null, - "margin": null, - "max_height": null, - "max_width": null, - "min_height": null, - "min_width": null, - "object_fit": null, - "object_position": null, - "order": null, - "overflow": null, - "overflow_x": null, - "overflow_y": null, - "padding": null, - "right": null, - "top": null, - "visibility": null, - "width": null - } - }, - "ee66fb56cee04a1487557dfc74f1ccad": { - "model_module": "@jupyter-widgets/controls", - "model_name": "ProgressStyleModel", - "model_module_version": "1.5.0", - "state": { - "_model_module": "@jupyter-widgets/controls", - "_model_module_version": "1.5.0", - "_model_name": "ProgressStyleModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "StyleView", - "bar_color": null, - "description_width": "" - } - }, - "901b687c700c4bd9bbcc07f793eb72ca": { - "model_module": "@jupyter-widgets/base", - "model_name": "LayoutModel", - "model_module_version": "1.2.0", - "state": { - "_model_module": "@jupyter-widgets/base", - "_model_module_version": "1.2.0", - "_model_name": "LayoutModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "LayoutView", - "align_content": null, - "align_items": null, - "align_self": null, - "border": null, - "bottom": null, - "display": null, - "flex": null, - "flex_flow": null, - "grid_area": null, - "grid_auto_columns": null, - "grid_auto_flow": null, - "grid_auto_rows": null, - "grid_column": null, - "grid_gap": null, - "grid_row": null, - "grid_template_areas": null, - "grid_template_columns": null, - "grid_template_rows": null, - "height": null, - "justify_content": null, - "justify_items": null, - "left": null, - "margin": null, - "max_height": null, - "max_width": null, - "min_height": null, - "min_width": null, - "object_fit": null, - "object_position": null, - "order": null, - "overflow": null, - "overflow_x": null, - "overflow_y": null, - "padding": null, - "right": null, - "top": null, - "visibility": null, - "width": null - } - }, - "bd7e7b51165946a5834fd688fdc6686c": { - "model_module": "@jupyter-widgets/controls", - "model_name": "DescriptionStyleModel", - "model_module_version": "1.5.0", - "state": { - "_model_module": "@jupyter-widgets/controls", - "_model_module_version": "1.5.0", - "_model_name": "DescriptionStyleModel", - "_view_count": null, - "_view_module": "@jupyter-widgets/base", - "_view_module_version": "1.2.0", - "_view_name": "StyleView", - "description_width": "" - } - } - } - } - }, - "cells": [ - { - "cell_type": "markdown", - "metadata": { - "id": "view-in-github", - "colab_type": "text" - }, - "source": [ - "\"Open" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "id": "6QeMfKCzuY9q" - }, - "outputs": [], - "source": [ - "from statsmodels.tsa.stattools import adfuller\n", - "from statsmodels.graphics.tsaplots import plot_acf,plot_pacf\n", - "import statsmodels.api as sm\n", - "from statsmodels.tsa.arima_model import ARIMA\n", - "from statsmodels.tsa.arima_model import ARMA\n", - "from statsmodels.tools.parallel import parallel_func as Parallel\n", - "\n", - "import pandas as pd\n", - "import seaborn as sns\n", - "from matplotlib.pylab import rcParams\n", - "import matplotlib.pyplot as plt\n", - "import plotly.express as px\n", - "import plotly.graph_objects as go\n", - "from tqdm import tqdm_notebook\n", - "import math\n", - "import numpy as np\n", - "import pandas as pd\n", - "\n", - "from itertools import product\n", - "import warnings\n", - "warnings.filterwarnings('ignore')\n", - "\n", - "from sklearn.preprocessing import StandardScaler\n", - "from sklearn.feature_extraction.text import TfidfVectorizer\n", - "from sklearn.feature_extraction.text import CountVectorizer\n", - "from sklearn.datasets import fetch_20newsgroups\n", - "from sklearn.decomposition import LatentDirichletAllocation\n", - "from sklearn.preprocessing import StandardScaler\n", - "from sklearn.decomposition import PCA\n", - "from sklearn.covariance import EllipticEnvelope\n", - "from sklearn.ensemble import IsolationForest" - ] - }, - { - "cell_type": "code", - "source": [], - "metadata": { - "id": "l6e8Wwu_upH_" - }, - "execution_count": null, - "outputs": [] - }, - { - "cell_type": "markdown", - "source": [ - "#Import Monthly Index Data" - ], - "metadata": { - "id": "z_ZFR4hTuzXi" - } - }, - { - "cell_type": "code", - "source": [ - "df = pd.read_csv('Hang Seng Index_Monthly.csv')\n", - "df = df[['Date','Close']]\n", - "df" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 423 - }, - "id": "98ysjm-Bu12c", - "outputId": "c9ebfee0-55dc-4085-f13a-80328bf09bd9" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "execute_result", - "data": { - "text/plain": [ - " Date Close\n", - "0 2017-01-01 23360.779297\n", - "1 2017-02-01 23740.730469\n", - "2 2017-03-01 24111.589844\n", - "3 2017-04-01 24615.130859\n", - "4 2017-05-01 25660.650391\n", - ".. ... ...\n", - "64 2022-05-01 21415.199219\n", - "65 2022-06-01 21859.789063\n", - "66 2022-07-01 20156.509766\n", - "67 2022-08-01 19954.390625\n", - "68 2022-09-01 17222.830078\n", - "\n", - "[69 rows x 2 columns]" - ], - "text/html": [ - "\n", - "
\n", - "
\n", - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
DateClose
02017-01-0123360.779297
12017-02-0123740.730469
22017-03-0124111.589844
32017-04-0124615.130859
42017-05-0125660.650391
.........
642022-05-0121415.199219
652022-06-0121859.789063
662022-07-0120156.509766
672022-08-0119954.390625
682022-09-0117222.830078
\n", - "

69 rows × 2 columns

\n", - "
\n", - " \n", - " \n", - " \n", - "\n", - " \n", - "
\n", - "
\n", - " " - ] - }, - "metadata": {}, - "execution_count": 177 - } - ] - }, - { - "cell_type": "code", - "source": [ - "df.info()" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "Kvjxc_6VvELA", - "outputId": "c646e25d-4bb0-4d4f-e137-e601d54e3170" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "stream", - "name": "stdout", - "text": [ - "\n", - "RangeIndex: 69 entries, 0 to 68\n", - "Data columns (total 2 columns):\n", - " # Column Non-Null Count Dtype \n", - "--- ------ -------------- ----- \n", - " 0 Date 69 non-null object \n", - " 1 Close 69 non-null float64\n", - "dtypes: float64(1), object(1)\n", - "memory usage: 1.2+ KB\n" - ] - } - ] - }, - { - "cell_type": "code", - "source": [ - "# Convert Date to datetime\n", - "df['Date']=pd.to_datetime(df['Date'])\n", - "df.set_index('Date',inplace=True)\n", - "df" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 455 - }, - "id": "D-_u73ArvNwt", - "outputId": "a3c7953d-d1c5-4db1-9518-7e55e134d953" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "execute_result", - "data": { - "text/plain": [ - " Close\n", - "Date \n", - "2017-01-01 23360.779297\n", - "2017-02-01 23740.730469\n", - "2017-03-01 24111.589844\n", - "2017-04-01 24615.130859\n", - "2017-05-01 25660.650391\n", - "... ...\n", - "2022-05-01 21415.199219\n", - "2022-06-01 21859.789063\n", - "2022-07-01 20156.509766\n", - "2022-08-01 19954.390625\n", - "2022-09-01 17222.830078\n", - "\n", - "[69 rows x 1 columns]" - ], - "text/html": [ - "\n", - "
\n", - "
\n", - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Close
Date
2017-01-0123360.779297
2017-02-0123740.730469
2017-03-0124111.589844
2017-04-0124615.130859
2017-05-0125660.650391
......
2022-05-0121415.199219
2022-06-0121859.789063
2022-07-0120156.509766
2022-08-0119954.390625
2022-09-0117222.830078
\n", - "

69 rows × 1 columns

\n", - "
\n", - " \n", - " \n", - " \n", - "\n", - " \n", - "
\n", - "
\n", - " " - ] - }, - "metadata": {}, - "execution_count": 179 - } - ] - }, - { - "cell_type": "code", - "source": [ - "fig = px.line(df, y= 'Close', title='Stock Close Price Changes', template = 'plotly_dark')\n", - "fig.show()" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 542 - }, - "id": "aeIQxX__w94u", - "outputId": "b960158a-56df-4d99-b587-09272e55aa47" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "display_data", - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "\n", - "" - ] - }, - "metadata": {} - } - ] - }, - { - "cell_type": "code", - "source": [], - "metadata": { - "id": "phJWrCB6yhb1" - }, - "execution_count": null, - "outputs": [] - }, - { - "cell_type": "markdown", - "source": [ - "![newplot.png](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABccAAAINCAYAAAD7vsd/AAAAAXNSR0IArs4c6QAAIABJREFUeF7s3Qd8VeX9x/EfCSQBkkCIQNgrAcIeYRM2KMMBQl21dVSx1l1XraO21qq1auuoWm2tdSEyRIYCssMMe++EERI2JIEkQPi/nof/jTfhhtx9z/ic18sXkpzzjPfvhCTf+9znVIqLi7soHAgggAACCCCAAAIIIIAAAggggAACCCCAAAII2EigEuG4jarNVBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQS0AOE4NwICCCCAAAIIIIAAAggggAACCCCAAAIIIICA7QQIx21XciaMAAIIIIAAAggggAACCCCAAAIIIIAAAgggQDjOPYAAAggggAACCCCAAAIIIIAAAggggAACCCBgOwHCcduVnAkjgAACCCCAAAIIIIAAAggggAACCCCAAAIIEI5zDyCAAAIIIIAAAggggAACCCCAAAIIIIAAAgjYToBw3HYlZ8IIIIAAAggggAACCCCAAAIIIIAAAggggAAChOPcAwgggAACCCCAAAIIIIAAAggggAACCCCAAAK2EyAct13JmTACCCCAAAIIIIAAAggggAACCCCAAAIIIIAA4Tj3AAIIIIAAAggggAACCCCAAAIIIIAAAggggIDtBAjHbVdyJowAAggggAACCCCAAAIIIIAAAggggAACCCBAOM49gAACCCCAAAIIIIAAAggggAACCCCAAAIIIGA7AcJx25WcCSOAAAIIIIAAAggggAACCCCAAAIIIIAAAggQjnMPIIAAAggggAACCCCAAAIIIIAAAggggAACCNhOgHDcdiVnwggggAACCCCAAAIIIIAAAggggAACCCCAAAKE49wDCCCAAAIIIIAAAggggAACCCCAAAIIIIAAArYTIBy3XcmZMAIIIIAAAggggAACCCCAAAIIIIAAAggggADhOPcAAggggAACCCCAAAIIIIAAAggggAACCCCAgO0ECMdtV3ImjAACCCCAAAIIIIAAAggggAACCCCAAAIIIEA4zj2AAAIIIIAAAggggAACCCCAAAIIIIAAAgggYDsBwnHblZwJI4AAAggggAACCCCAAAIIIIAAAggggAACCBCOcw8ggAACCCCAAAIIIIAAAggggAACCCCAAAII2E6AcNx2JWfCCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAoTj3AMIIIAAAggggAACCCCAAAIIIIAAAggggAACthMgHLddyZkwAggggAACCCCAAAIIIIAAAggggAACCCCAAOE49wACCCCAAAIIIIAAAggggAACCCCAAAIIIICA7QQIx21XciaMAAIIIIAAAggggAACCCCAAAIIIIAAAgggQDjOPYAAAggggAACCCCAAAIIIIAAAggggAACCCBgOwHCcduVnAkjgAACCCCAAAIIIIAAAggggAACCCCAAAIIEI5zDyCAAAIIIIAAAggggAACCCCAAAIIIIAAAgjYToBw3HYlZ8IIIIAAAggggAACCCCAAAIIIIAAAggggAAChOPcAwgggAACCCCAAAIIIIAAAggggAACCCCAAAK2EyAct13JmTACCCCAAAIIIIAAAggggAACCCCAAAIIIIAA4Tj3AAIIIIAAAggggAACCCCAAAIIIIAAAggggIDtBAjHbVdyJowAAggggAACCCCAAAIIIIAAAggggAACCCBAOM49gAACCCCAAAIIIIAAAggggAACCCCAAAIIIGA7AcJxk5e8T59UeePv70hu7mkZMjA14LN57PEn5df3PygrVy6X224eF/D+6KB8AWrB3YEAAggggAACCCCAAAIIIIAAAggggID3AoTjHto5wuiEhIRSV+bn58mzzzwtkydN1B8fc+M4eenlVyQrKyugobU/w/HXXn9Tbrr51stEJnz1hTz5+KP640YPZB3u1atHl5pHUVGR/PO9t+WN119zq+Jz5y+WJk2aenSNWw27edLnX02Uvn37XXEORq+Fm1PlNAQQQAABBBBAAAEEEEAAAQQQQAABBEIiQDjuAbsjjDx+/Lg89vADkpa2uFQQXqVKREmYaqZw3Dnwdw7C1eQcgfnOnTt0yG/0QLY8dxV2JyW1lLLzK6/8oQrHHeN3vpccY3QE5kuWLNKr9o1eCw++tDgVAQQQQAABBBBAAAEEEEAAAQQQQACBoAsQjntArgLT+vXrl1oh7nz5x//5n2zevFGvTjZTOF5REKzmctvPfyE3jr7W8IFsee6OFwBUvZxf2PCg/AE/1THGmJjocu8xFYi3bdte7r7zdsPXIuBgdIAAAggggAACCCCAAAIIIIAAAggggIAPAoTjbuJ5Eq6Wt7VHdnZ2qWDWsZrZMQTH6uyyQ3K13Ylj9XB526o4rim7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x+Psm6oJECBAgAABAgQIECBAgAABAgQIECBAIIOAcDwDnqEECBAgQIAAAQIECBAgQIAAAQIECBAgEKeAcDzOvqmaAAECBAgQIECAAAECBAgQIECAAAECBDIICMcz4BlKgAABAgQIECBAgAABAgQIECBAgAABAnEKCMfj7JuqCRAgQIAAAQIECBAgQIAAAQIECBAgQCCDgHA8A56hBAgQIECAAAECBAgQIECAAAECBAgQIBCngHA8zr6pmgABAgQIECBAgAABAgQIECBAgAABAgQyCAjHM+AZSoAAAQIECBAgQIAAAQIECBAgQIAAAQJxCgjH4+ybqgkQIECAAAECBAgQIECAAAECBAgQIEAgg4BwPAOeoQQIECBAgAABAgQIECBAgAABAgQIECAQp4BwPM6+qZoAAQIECBAgQIAAAQIECBAgQIAAAQIEMggIxzPgGUqAAAECBAgQIECAAAECBAgQIECAAAECcQoIx+Psm6oJECBAgAABAgQIECBAgAABAgQIECBAIIOAcDwDnqEECBAgQIAAAQIECBAgQIAAAQIECBAgEKeAcDzOvqmaAAECBAgQIECAAAECBAgQIECAAAECBDIICMcz4BlKgAABAgQIECBAgAABAgQIECBAgAABAnEKCMfj7JuqCRAgQIAAAQIECBAgQIAAAQIECBAgQCCDgHA8A56hBAgQIECAAAECBAgQIECAAAECBAgQIBCngHA8zr6pmgABAgQIECBAgAABAgQIECBAgAABAgQyCAjHM+AZSoAAAQIECBAgQIAAAQIECBAgQIAAAQJxCgjH4+ybqgkQIECAAAECBAgQIECAAAECBAgQIEAgg4BwPAOeoQQIECBAgAABAgQIECBAgAABAgQIECAQp4BwPM6+qZoAAQIECBAgQIAAAQIECBAgQIAAAQIEMggIxzPgGUqAAAECBAgQIECAAAECBAgQIECAAAECcQoIx+Psm6oJECBAgAABAgQIECBAgAABAgQIECBAIIOAcDwDnqEECBAgQIAAAQIECBAgQIAAAQIECBAgEKeAcDzOvqmaAAECBAgQIECAAAECBAgQIECAAAECBDIICMcz4BlKgAABAgQIECBAgAABAgQIECBAgAABAnEKCMfj7JuqCRAgQIAAAQIECBAgQIAAAQIECBAgQCCDgHA8A56hBAgQIECAAAECBAgQIECAAAECBAgQIBCngHA8zr6pmgABAgQIECBAgAABAgQIECBAgAABAgQyCAjHM+AZSoAAAQIECBAgQIAAAQIECBAgQIAAAQJxCgjH4+ybqgkQIECAAAECBAgQIECAAAECBAgQIEAgg4BwPAOeoQQIECBAgAABAgQIECBAgAABAgQIECAQp4BwPM6+qZoAAQIECBAgQIAAAQIECBAgQIAAAQIEMgj8fwMyVu2D9J0UAAAAAElFTkSuQmCC)" - ], - "metadata": { - "id": "2LuJGP3wNbNX" - } - }, - { - "cell_type": "markdown", - "source": [ - "# Augmented Dickey-Fuller test to check for dataset stationarity\n", - "- Augmented Dickey-Fuller unit root test.\n", - "\n", - "The Augmented Dickey-Fuller test can be used to test for a unit root in a univariate process in the presence of serial correlation.\n", - "\n" - ], - "metadata": { - "id": "KT6i83iNy_nG" - } - }, - { - "cell_type": "code", - "source": [ - "passing_data=adfuller(df['Close'])\n", - "passing_data" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "n7rzPtiUzF4T", - "outputId": "5e6f964e-a83f-4509-f7d0-b86a31327510" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "execute_result", - "data": { - "text/plain": [ - "(-0.2577016009143149,\n", - " 0.9312850791504195,\n", - " 1,\n", - " 67,\n", - " {'1%': -3.5319549603840894,\n", - " '5%': -2.905755128523123,\n", - " '10%': -2.5903569458676765},\n", - " 987.4529587262712)" - ] - }, - "metadata": {}, - "execution_count": 181 - } - ] - }, - { - "cell_type": "code", - "source": [ - "type(df['Close'])" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "n-LMOMcb1bgR", - "outputId": "8065b670-df7e-429d-9616-a26bc6d06b11" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "execute_result", - "data": { - "text/plain": [ - "pandas.core.series.Series" - ] - }, - "metadata": {}, - "execution_count": 182 - } - ] - }, - { - "cell_type": "code", - "source": [ - "def adf_test(series):\n", - " result=adfuller(series)\n", - " labels = ['Test parameters', 'p-value','#Lags Used','Num of Observations Used']\n", - " for value,label in zip(result,labels):\n", - " print(label+' : '+str(value) )\n", - " if result[1] <= 0.05:\n", - " print(\"Dataset is stationary\")\n", - " else:\n", - " print(\"Dataset is non-stationary \")\n", - "\n", - "adf_test(df['Close'])" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "Obm8Ed3803E9", - "outputId": "0b2550b2-281f-46ed-ce22-5d2de75d0b53" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "stream", - "name": "stdout", - "text": [ - "Test parameters : -0.2577016009143149\n", - "p-value : 0.9312850791504195\n", - "#Lags Used : 1\n", - "Num of Observations Used : 67\n", - "Dataset is non-stationary \n" - ] - } - ] - }, - { - "cell_type": "markdown", - "source": [ - "- p-value: 0.9312850791504195\n", - "- This number is greater than 0.05. It implies that the time series is non-stationary." - ], - "metadata": { - "id": "YvKsI8mB29oP" - } - }, - { - "cell_type": "markdown", - "source": [ - "# Transformation to Stationary Time Series Using Differencing\n", - "The observations in a stationary time series are not dependent on time.\n", - "\n", - "Time series are stationary if they do not have trend or seasonal effects. Summary statistics calculated on the time series are consistent over time, like the mean or the variance of the observations.\n", - "\n", - "When a time series is stationary, it can be easier to model. Statistical modeling methods assume or require the time series to be stationary." - ], - "metadata": { - "id": "cxfqqNXvLYgs" - } - }, - { - "cell_type": "code", - "source": [ - "def differencing(data, column, order):\n", - " #difference that series at lag-12 because our data were collected monthly.\n", - " data['Close_diff'] = data[column].diff(order)\n", - " data['Close_diff'].fillna(data['Close_diff'].mean(), inplace=True)\n", - " #data['Close_diff']=df['Close']-df['Close'].shift(12)\n", - " #data['Close_diff'].fillna(data['Close_diff'].mean(), inplace=True)\n", - " return data\n", - "differenced_df = differencing(df, 'Close',1)\n", - "differenced_df" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 455 - }, - "id": "uCt9NQK2Kj3b", - "outputId": "5f4a9bc8-aa3c-41cb-cf40-abe84e7dd099" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "execute_result", - "data": { - "text/plain": [ - " Close Close_diff\n", - "Date \n", - "2017-01-01 23360.779297 -90.263959\n", - "2017-02-01 23740.730469 379.951172\n", - "2017-03-01 24111.589844 370.859375\n", - "2017-04-01 24615.130859 503.541015\n", - "2017-05-01 25660.650391 1045.519532\n", - "... ... ...\n", - "2022-05-01 21415.199219 325.808594\n", - "2022-06-01 21859.789063 444.589844\n", - "2022-07-01 20156.509766 -1703.279297\n", - "2022-08-01 19954.390625 -202.119141\n", - "2022-09-01 17222.830078 -2731.560547\n", - "\n", - "[69 rows x 2 columns]" - ], - "text/html": [ - "\n", - "
\n", - "
\n", - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
CloseClose_diff
Date
2017-01-0123360.779297-90.263959
2017-02-0123740.730469379.951172
2017-03-0124111.589844370.859375
2017-04-0124615.130859503.541015
2017-05-0125660.6503911045.519532
.........
2022-05-0121415.199219325.808594
2022-06-0121859.789063444.589844
2022-07-0120156.509766-1703.279297
2022-08-0119954.390625-202.119141
2022-09-0117222.830078-2731.560547
\n", - "

69 rows × 2 columns

\n", - "
\n", - " \n", - " \n", - " \n", - "\n", - " \n", - "
\n", - "
\n", - " " - ] - }, - "metadata": {}, - "execution_count": 188 - } - ] - }, - { - "cell_type": "code", - "source": [ - "adf_test(differenced_df['Close_diff'])" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "SQQFUMGvMaAx", - "outputId": "8d5bc8df-7647-4060-807e-e872843c70a3" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "stream", - "name": "stdout", - "text": [ - "Test parameters : -9.359697510715247\n", - "p-value : 7.883737480503631e-16\n", - "#Lags Used : 0\n", - "Num of Observations Used : 68\n", - "Dataset is stationary\n" - ] - } - ] - }, - { - "cell_type": "code", - "source": [ - "fig = px.line(differenced_df, y= 'Close_diff', title='Stock Close Price Changes After Differencing', template = 'plotly_dark')\n", - "fig.show()" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 542 - }, - "id": "zDAhwN8bNWGW", - "outputId": "ff90cd60-182d-4886-c8ab-3df7ae8b9261" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "display_data", - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "\n", - "" - ] - }, - "metadata": {} - } - ] - }, - { - "cell_type": "markdown", - "source": [ - "![newplot (1).png](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABccAAAINCAYAAAD7vsd/AAAAAXNSR0IArs4c6QAAIABJREFUeF7s3XecVdWh9vEHht6rwFClKCC9SO9FOoiiIpo3xX5jqjHGq1Gvxhglam68SUwxxUgRRTpK74LSEYbey9DLIAIKvJ+1zR4Ph3NmTj+7/PY/Cuy9ynetmYHnrL1WgfLly18RFwIIIIAAAggggAACCCCAAAIIIIAAAggggAACPhIoQDjuo9GmqwgggAACCCCAAAIIIIAAAggggAACCCCAAAKWAOE4EwEBBBBAAAEEEEAAAQQQQAABBBBAAAEEEEDAdwKE474bcjqMAAIIIIAAAggggAACCCCAAAIIIIAAAgggQDjOHEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBDwnQDhuO+GnA4jgAACCCCAAAIIIIAAAggggAACCCCAAAIIEI4zBxBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQR8J0A47rshp8MIIIAAAggggAACCCCAAAIIIIAAAggggAAChOPMAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAHfCRCO+27I6TACCCCAAAIIIIAAAggggAACCCCAAAIIIIAA4ThzAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMB3AoTjvhtyOowAAggggAACCCCAAAIIIIAAAggggAACCCBAOM4cQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEPCdAOG474acDiOAAAIIIIAAAggggAACCCCAAAIIIIAAAggQjjMHEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBHwnQDjuuyGnwwgggAACCCCAAAIIIIAAAggggAACCCCAAAKE48wBBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAd8JEI77bsjpMAIIIIAAAggggAACCCCAAAIIIIAAAggggADhOHMAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAwHcChOO+G3I6jAACCCCAAAIIIIAAAggggAACCCCAAAIIIEA4zhxAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQ8J0A4bjvhpwOI4AAAggggAACCCCAAAIIIIAAAggggAACCBCOMwcQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEfCdAOO67IafDCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAoTjzAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAAB3wkQjvtuyOkwAggggAACCCCAAAIIIIAAAggggAACCCCAAOE4cwABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEDAdwKE474bcjqMAAIIIIAAAggggAACCCCAAAIIIIAAAgggQDjOHEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBDwnQDhuO+GnA4jgAACCCCAAAIIIIAAAggggAACCCCAAAIIEI4zBxBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQR8J0A47rshp8MIIIAAAggggAACCCCAAAIIIIAAAggggAAChOPMAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAHfCRCO+27I6TACCCCAAAIIIIAAAggggAACCCCAAAIIIIAA4ThzAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMB3AoTjvhtyOowAAggggAACCCCAAAIIIIAAAggggAACCCBAOM4cQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEPCdAOG4y4e8U6cuevV3bygn54x69+iS9N785LHH9fAjj+qTT5Zr1F0jkl4fFYQXYCzimx3DbxuhF158SSVLlrIKWrJkkSfmtD0vihQpYvVr/LgxevyxHyvc78enyNMIIIAAAggggAACCCCAAAIIIICAewUIx6McOzuMrlq16lVPfv75WT315BOa+P4E6/ft4O3gwYNJDa0TGY6/PPo13XnX3deI2OGa+QOnB7LBgafdmYsXL+qPf/i9Xh39ckQjPmf+YtWuXSeqZyIqOMKb3hk3QZ07d73q7uA+OH0sIuxqwm8LnAPbtm0N+fUX7uvTuN98c/uUj3u4rz2DEy60t8d/z57duX0MNye8OFfS/TWa8IlLgQgggAACCCCAAAIIIIAAAgggkHIBwvEoyO2A6cSJE/rJD7+vpUsXXxWEFy5cJDdUc1M4Hhj4BwbhpnN2aGeHjE4P2cK5myCtQYMbclfR5jfs6Qre7PYHziW7rXZgboelTh+L/IyT9edmzt46/HZ9+eVFq4rAD63sOu17gj8wSXc4Hvz1Z4+xaXdwW0OF46b9LVu2uqbP4X4/WWOQinLT9TWair5RBwIIIIAAAggggAACCCCAAAIIpEaAcDwKZxPGZGZmhgzbTDF/+/vb2rhxg7U62U3heH4hk+nLqHu+pdtuHeyalePBK/btDwDMOAV+sBHF8Cf9VruNpUuXCjvHTCB6001N9b3v3Ov4sUg6WJgKzHwuXbqMPlmxXEOGDgv5gYhbwnHTRXteVKhQId8V7X4Kx9M1v6gXAQQQQAABBBBAAAEEEEAAAQS8I0A4HuFYRhOuhtvaIzs7+6pg1l7NbDch3BYQobZcsFcPh9tWxX4meLuX4O6GWn2aF0m41cqh+hy8CtaUG6ovoe4L3lYk2C5cG/P6UCLwww3zvNlv2oToM6ZPtfZRN3s02/U898KLIT8IyWss7DbF2na77Ej3vg4cC1N34DYs4d4ACHYLt1LZ7CmfX5nmz0ON+8mTJyzL4BXbwXah5mbwvtimjkg9zL2BJu9PeDd3jAP34w+1ZY1py4EDB3TDDTdeM7UCjSKZ5/Y8++3ol/XAg4/IbMGU37Y+tk2or4XAfuW1hUrw9xPznJnPly59perVa1zVr8Cvp0j6FLiifsDAwdZbGOaqXaNKbrn5zfto5qspNNQWVoFzJvjDysCv/dWrVl61RVS4ORRsZso3b218MPE9a592LgQQQAABBBBAAAEEEEAAAQQQ8LYA4XgU42sHKZGEdXmFtKGCdvv+nJyz1wTowXtfm3sf+f4P9MxTT1qtDz6QM3grlLy6aAda4UK54GdDheOhfi9U0BsqAAzexiLc6un8Vu3b7Yw2HDeHMYYK3kPVF2qFfaixCF75HWnb81vBH24sTBAdOCdDbQ1i7Fu1bnPV/tuhxiMwnM6vzHAfrERqF9zOvOZRpPMzuMxw9rGsHA81p0O12f4+kV8gHjie+YXjob4uQtUd7crxSPsUGHwHj0WkX7OJmFumHQf277eC63DhuPmaDvygMZRtuDbnNw5R/LjgVgQQQAABBBBAAAEEEEAAAQQQcIEA4XgUgxTuMM5Q4WpeIW24fY2Dw65IgprglePRrj6Odo/l4DbmtaI+0qDymWefV87ZHGs7mnChZaT7a4dzD/7woUrVqiFXFdvTITh4i2Qs4m17pCG63cb8VvGvWbNao+4aEXaGh3rrIJoy7e1LgrepCQ5o7TKDV+MGj1VeXxelS5XWc88+nedXa6i5GK4/0YbjeR18Gzxu0Y6j6VQk8yv4w5N4w/Fo+pTX94lI532kcyvSt3TyWjke+KZAqH7m12ZWjkfxg5FbEUAAAQQQQAABBBBAAAEEEHCxAOF4jIMXamuGUFsVBO99baoLFyqGCgtDHa4X2OTA4MfeSiCSle12GfGG43abQwWxwYGfbZbXFinhbPIK8gI9QoXjofZszm9P+ODgLZIDDeNte7Shan5hY/DcC7fdT+Aq20jLzO/Dn8B5m5ddoNnQW4dbW2HktxVQuC/ZUG0PF7RGG46HC/jtYNscAGofmBntOKYrHI+mT3l9n4h03kc7t/L7cCfacNw42x/khBujvExi/FHBYwgggAACCCCAAAIIIIAAAggg4GABwvEEDY4d/NrBdLjwMK9VkcF/Fm7f61DhuNnX2FzRbOVg7o93W5W8VnSHW9kauDe2aUPw/ul2X0INTbh92e17I93vPdpwPL/AM9xbBYF9yK/tsW6rYvYHD1whHqpv9jgHtiGWleN24J7XuAeH4aH2wg50CfywJNSe7vm52WWF+sDK/rPgr4tow/FQ7QrsQ2D5+c2VUPM6v5XjydhWJZo+hQvHo5n3kYbjkb4lEms4bvzNVlTmCn7rgXA8QT8QKQYBBBBAAAEEEEAAAQQQQAABlwgQjidooIIDyfz2vi5dusw1wUw8K8crVKigf//rHxowaIjM/9urWPPrXrh9o8M9FxxcRbNyPLjMwGDN3sc43CrU/PoRHI6HWrEfWEa04Xg8K8cjbXu0W+JEGjbm90FNTs6Z3L3Ioy0z1OreYKtI7MIZ2cF6fm9D5DWe4fYyD1ztHRiw33xz+2u+fqIJTZMRjof6Oo13W5Vo+hTLyvHgMU3E3AosM9ZwfOnSxWHf3onGJNKva+5DAAEEEEAAAQQQQAABBBBAAAHnChCORzg2Jsj96c9+rt++8huZcCW/4CevbUASsef43/7+tt7665+tZgQeyGmHhOb3n3ryCU18f0K+PcxvxbLpy3fve0Df+869imfPcbvNgX7B5UW7zUtw5/ILvSMN0aPZc9zu1yOP/kChgtV8B+A/N4Q7JDDwedO/Hj1769H/evCasQjXt3ChZDwrx/Pbaz5wW5X8VkXb7f79/72p+fPmXDVnIx3PvOoI5Rpu5Xi434+0HaYvyQjHQ5UZbzgeTZ/y+rqM9Gs20nA8r7llyrD3n48nHM/vezB7jkf6XYv7EEAAAQQQQAABBBBAAAEEEHC3AOF4hOMXuMo5eBWrHfqcOHHiqtXg4UKyUGFd8IGRdoAcKrgOXF0dHI6bX0cbkIdawW2z2KGjvbVFqIAr1KrWUKugQ3kEh1Sh9ge322LuNVdeh0xGGvjld1+otkY6FqFW7kfS9sCxK1y4yDWrl4O37oknbAwc81j2HDdtDRVI278XvG+4vQLcfkMgcH61at3GWrkeKrCMNFjPL5AOLie/AxmDt6oJ7G/wNi9mLv38F0/pN79+wQr282tLqG854fppj7F5JvhtkHjD8Wj6lFcAHunXbKTz1bQrr5XydnAdTzge6us/cEum4Hka4Y8JbkMAAQQQQAABBBBAAAEEEEAAAZcJEI5HOWDh9k8OFaYE78cbfBBlcFnh9lYO3ks5MHgMt0LdDpeKFCmiSIOecHsQBz6fX8BVsmSpXNHgekPtTxzu8MVQ+0dHclBjfqG33bj87gsXcOY1FoEhfvC+6pG0PXAqhup/8L7Z+Y1F4NYywfamLHsbnli2VQkMt80hmvZl5vDhw9kKdZBsqPkV3Kfgr4lI9tCPZGug4PEOF44HBsZ2nwLncbg97QM/MIsnHA/17SjcljKJCMdNfZH0KZLV4fl9zUYzX8O1Ky/n/LYPskL3H34/982f4H6br9FpU6fIbLfDyvEofzByOwIIIIAAAggggAACCCCAAAIuFSAcd+nA0WwEnCoQ777xTu0X7fK+QF4fmni/9/QQAQQQQAABBBBAAAEEEEAAAf8JEI77b8zpMQIJETArgW+99XY98fhPc1fjcqBhQmgpJMkC5k2Kl17+rT744D29Ovplq7a8zolIcnMoHgEEEEAAAQQQQAABBBBAAAEE0iRAOJ4meKpFwO0CgVv32H2JZBsUt/eb9rtfINQWT6ZX4bawcX+P6QECCCCAAAIIIIAAAggggAACCIQSIBxnXiCAAAIIIIAAAggggAACCCCAAAIIIIAAAgj4ToBw3HdDTocRQAABBBBAAAEEEEAAAQQQQAABBBBAAAEECMeZAwgggAACCCCAAAIIIIAAAggggAACCCCAAAK+EyAc992Q02EEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABwnHmAAIIIIAAAggggAACCCCAAAIIIIAAAggggIDvBAjHfTfkdBgBBBBAAAEEEEAAAQQQQAABBBBAAAEEEECAcJw5gAACCCCAAAIIIIAAAggggAACCCCAAAIIIOA7AcJx3w05HUYAAQQQQAABBBBAAAEEEEAAAQQQQAABBBAgHGcOIIAAAggggAACCCCAAAIIIIAAAggggAACCPhOgHDcd0NOhxFAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQIx5kDCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAr4TIBz33ZDTYQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAHCceYAAggggAACCCCAAAIIIIAAAggggAACCCCAgO8ECMd9N+R0GAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQIBwnDmAAAIIIIAAAggggAACCCCAAAIIIIAAAggg4DsBwnHfDTkdRgABBBBAAAEEEEAAAQQQQAABBBBAAAEEECAcZw4ggAACCCCAAAIIIIAAAggggAACCCCAAAII+E6AcNx3Q06HEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBAjHmQMIIIAAAggggAACCCCAAAIIIIAAAggggAACvhMgHPfdkNNhBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAcJx5gACCCCAAAIIIIAAAggggAACCCCAAAIIIICA7wQIx3035HQYAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAgHCcOYAAAggggAACCCCAAAIIIIAAAggggAACCCDgOwHCcd8NOR1GAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQIBxnDiCAAAIIIIAAAggggAACCCCAAAIIIIAAAgj4ToBw3HdDTocRQAABBBBAAAEEEEAAAQQQQAABBBBAAAEECMeZAwgggAACCCCAAAIIIIAAAggggAACCCCAAAK+EyAc992Q02EEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABwnHmAAIIIIAAAggggAACCCCAAAIIIIAAAggggIDvBAjHfTfkdBgBBBBAAAEEEEAAAQQQQAABBBBAAAEEEECAcJw5gAACCCCAAAIIIIAAAggggAACCCCAAAIIIOA7AcJx3w05HUYAAQQQQAABBBBAAAEEEEAAAQQQQAABBBAgHGcOIIAAAggggAACCCCAAAIIIIAAAggggAACCPhOgHDcd0NOhxFAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQIx5kDCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAr4TIBz33ZDTYQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAHCceYAAggggAACCCCAAAIIIIAAAggggAACCCCAgO8ECMd9N+R0GAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQIBwnDmAAAIIIIAAAggggAACCCCAAAIIIIAAAggg4DsBwnHfDTkdRgABBBBAAAEEEEAAAQQQQAABBBBAAAEEECAcZw4ggAACCCCAAAIIIIAAAggggAACCCCAAAII+E6AcNx3Q06HEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBAjHmQMIIIAAAggggAACCCCAAAIIIIAAAggggAACvhMgHPfdkNNhBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAcJx5gACCCCAAAIIIIAAAggggAACCCCAAAIIIICA7wQIx3035HQYAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAgHCcOYAAAggggAACCCCAAAIIIIAAAggggAACCCDgOwHCcd8NOR1GwD8CFWrcqJyj+/TlhXP+6TQ9RcAlAhmFiqh89QY6tmejS1pMMxHwl0CJspWVUbioco7t91fH6S0CLhEomFFYFWveqKO7P3NJi2kmAv4SKF6mkgoXLa4zR/f5q+P0FgEXChCOu3DQaDICCEQmQDgemRN3IZAOAcLxdKhTJwKRCxCOR27FnQikQ4BwPB3q1IlA5AKE45FbcScC6RYgHE/3CFA/AggkTYBwPGm0FIxA3AKE43ETUgACSRUgHE8qL4UjELcA4XjchBSAQFIFCMeTykvhCCRUgHA8oZwUhgACThIgHHfSaNAWBK4WIBxnRiDgbAHCcWePD61DgHCcOYCAswUIx509PrQOgUABwnHmAwIIeFaAcNyzQ0vHPCBAOO6BQaQLnhYgHPf08NI5DwgQjntgEOmCpwUIxz09vHTOYwKE4x4bULqDAALfCBCOMxsQcK4A4bhzx4aWIWAECMeZBwg4W4Bw3NnjQ+sQIBxnDiDgHgHCcfeMFS1FAIEoBQjHowTjdgRSKEA4nkJsqkIgBgHC8RjQeASBFAoQjqcQm6oQiEGAcDwGNB5BIE0ChONpgqdaBBBIvgDhePKNqQGBWAUIx2OV4zkEUiNAOJ4aZ2pBIFYBwvFY5XgOgdQIEI6nxplaEEiEAOF4IhQpAwEEHClAOO7IYaFRCFgChONMBAScLUA47uzxoXUIEI4zBxBwtgDhuLPHh9YhEChAOM58QAABzwoQjnt2aOmYBwQIxz0wiHTB0wKE454eXjrnAQHCcQ8MIl3wtADhuKeHl855TIBw3GMDSncQQOAbAcJxZgMCzhUgHHfu2NAyBIwA4TjzAAFnCxCOO3t8aB0ChOPMAQTcI+CJcHz4bSP0wosvqWTJUpb855+f1VNPPqGJ70+wft2pUxe9+rs3VLVqVevXS5Ys0qi7RuSOUvDz48eN0eOP/Tj3z98ZN0GdO3e1fp2dna2f/PD7Wrp0sXtGmZYi4FMBwnGfDjzddoUA4bgrholG+liAcNzHg0/XXSFAOO6KYaKRPhYgHPfx4NN11wl4Ihx/efRrql6jRm7gbcLs+vVvyA2x58z/Osju3aOL7CB82tQpVgBuB+fbt2+1nv/JY4/rvvsf1F//8qZeHf2yTNmDBg/JDdsDy3LdaNNgBHwmQDjuswGnu64SIBx31XDRWB8KEI77cNDpsqsECMddNVw01ocChOM+HHS67FoBT4TjwfqBgbb5s6efeU5v/+sfVthtrsCA24Th937r23r+uWeslebBYbm59/Dh7NzgPTgsd+3I03AEfCBAOO6DQaaLrhUgHHft0NFwnwgQjvtkoOmmawUIx107dDTcJwKE4z4ZaLrpCQFPhuMm0C5duoy1crxdhw5XrQQ3oxa4snzorcOvWhkeGJ4/89ST1nYs9qpy82fBK8s9MQvoBAIeFSAc9+jA0i1PCBCOe2IY6YSHBQjHPTy4dM0TAoTjnhhGOuFhAcJxDw8uXfOcgKfCcXtv8MA9x4NXhocKx7t173nVPuL2ynI7HF+4YF7uHuTB4fh11zf33KSgQwh4RaBAgYK6cuWyV7pDPxDwnABfo54bUjrkJYECBVRA0pUrV7zUK/qCgKcE+DnqqeGkM14T4Oeo10bU0f05smudo9vn9MZ5Khy3sQO3Pqlz/fVJXTleoGBBp48x7UPAtwLlqzfQ2WMH9OWFc741oOMIOFXArBwvl1lPx/dmObWJtAsBXwuUKFNJBQsX1dnjB3ztQOcRcKqAWTleoUYDHduzyalNpF0I+FqgeOmKKlS0uHKO7fe1A51PjcCVyywKjEfak+G4OXTT3md8965d7DkezwzhWQRcKlCn/kg1af209u+epLUrnnRpL2g2At4VYFsV744tPfOGANuqeGMc6YV3BdhWxbtjS8+8IcC2Kt4YR3rhDwFPhONmO5UD+/fnbn1ift2yZSs99eQT1iGbgQdwmuD8hRdf0rSpU6z7gw/gDN42JfgAzsCy/DFF6CUC7hRo2vpZNWj8sE4eW635M/u7sxO0GgEPCxCOe3hw6ZonBAjHPTGMdMLDAoTjHh5cuuYJAcJxTwwjnfCJgCfCcRNoP/zIoypSpIg1bIF7jptf2wF41apVrT9fsmSRRt01IneI7cC8ZMlS1u+NHzcmN2g3v7b3Mjf/n52dfdX+5D6ZJ3QTAdcJdOo1RlUye+ns2V2a9UF717WfBiPgdQHCca+PMP1zuwDhuNtHkPZ7XYBw3OsjTP/cLkA47vYRpP1+EvBEOO6nAaOvCCAQmUC/4atVomR1fXnxpKaObxjZQ9yFAAIpEyAcTxk1FSEQkwDheExsPIRAygQIx1NGTUUIxCRAOB4TGw8hkBYBwvG0sFMpAggkUyCjUAkNHbnrP1Vc0cS3q0m6kswqKRsBBKIUIByPEozbEUixAOF4isGpDoEoBQjHowTjdgRSLEA4nmJwqkMgDgHC8TjweBQBBJwpUL5iS/UY8GFu46a921AXL5x0ZmNpFQI+FSAc9+nA023XCBCOu2aoaKhPBQjHfTrwdNs1AoTjrhkqGoqACMeZBAgg4DmBOvVHqlWH13P7NWtyB509s9Nz/aRDCLhZgHDczaNH2/0gQDjuh1Gmj24WIBx38+jRdj8IEI77YZTpo1cECMe9MpL0AwEEcgWatn5WDRo/nPvrBTMH6MSxVQghgICDBAjHHTQYNAWBEAKE40wLBJwtQDju7PGhdQgQjjMHEHCPAOG4e8aKliKAQIQCHXu+o6rVe+fevWzeKGUfmBPh09yGAAKpECAcT4UydSAQuwDheOx2PIlAKgQIx1OhTB0IxC5AOB67HU8ikGoBwvFUi1MfAggkXaDf8FUqUbKGzuRkqUzpRlq59Pvau3NC0uulAgQQiFyAcDxyK+5EIB0ChOPpUKdOBCIXIByP3Io7EUiHAOF4OtSpE4HYBAjHY3PjKQQQcKhARqESGjpyl9W6/fvGq0bNO7V+5S+1PetNh7aYZiHgTwHCcX+OO712jwDhuHvGipb6U4Bw3J/jTq/dI0A47p6xoqUIEI4zBxBAwFMC5Su2VI8BHyrn9FYdPb5Ades+oM0bXtOmtS95qp90BgG3CxCOu30Eab/XBQjHvT7C9M/tAoTjbh9B2u91AcJxr48w/fOSAOG4l0aTviCAgGrXu0utO/5OB/ZM1efnt+iGGx/Trq3/1JoVj6ODAAIOEiAcd9Bg0BQEQggQjjMtEHC2AOG4s8eH1iFAOM4cQMA9AoTj7hkrWooAAhEING39rBo0flhZ60frcsHTuqnJ81ZQvmLRfRE8zS0IIJAqAcLxVElTDwKxCRCOx+bGUwikSoBwPFXS1INAbAKE47G58RQC6RAgHE+HOnUigEDSBDoa4iD8AAAgAElEQVT1GqsqmT21YtH9KlqmhFq0+J2OZC/Wktm3J61OCkYAgegFCMejN+MJBFIpQDieSm3qQiB6AcLx6M14AoFUChCOp1KbuhCIT4BwPD4/nkYAAYcJ9Bu+WiVKVtecqV1Vtkpdtb35Hzp9cqPmTuvpsJbSHAT8LUA47u/xp/fOFyAcd/4Y0UJ/CxCO+3v86b3zBQjHnT9GtBABW4BwnLmAAAKeEcgoVEJDR+7SlSuXNemd6qpSt4M6dpyoL84d0sz3W3imn3QEAS8IEI57YRTpg5cFCMe9PLr0zQsChONeGEX64GUBwnEvjy5985oA4bjXRpT+IOBjgfKVWqlH/5nKOb1Ns6d0VsVaTdSt21xdvnRek8bU9rEMXUfAeQKE484bE1qEQKAA4TjzAQFnCxCOO3t8aB0ChOPMAQTcI0A47p6xoqUIIJCPQJ36I9Wqw+s6sHeaViz8nirUuFFdun6kjIzimjSmpi5fuoghAgg4RIBw3CEDQTMQCCNAOM7UQMDZAoTjzh4fWocA4ThzAAH3CBCOu2esaCkCCOQj0LT1s2rQ+GFlrXtFWetHW+F4+3bjVaxENWtbFbO9ChcCCDhDgHDcGeNAKxAIJ0A4ztxAwNkChOPOHh9ahwDhOHMAAfcIEI67Z6xoKQII5CPQqddYVcnsqRWL7tOBPVOtcLxlyz+pbLnG1oGc5mBOLgQQcIYA4bgzxoFWIEA4zhxAwJ0ChOPuHDda7R8BwnH/jDU9db8A4bj7x5AeIIDAfwT6D1+j4iUzNWdqV505tcUKx5s0/rUqVemkJbNv15HsxVghgIBDBAjHHTIQNAOBMAKsHGdqIOBsAcJxZ48PrUOAcJw5gIB7BAjH3TNWtBQBBPIQyChUQkNH7tKVK5c16Z3q1n9NOH5D/Z8rs+bA3NXkICKAgDMECMedMQ60AoFwAoTjzA0EnC1AOO7s8aF1CBCOMwcQcI8A4bh7xoqWIoBAHgLlK7VSj/4zlXN6q2ZP6WLdacLxOrUeUJ1692jNise1a+s/MUQAAYcIEI47ZCBoBgJhBAjHmRoIOFuAcNzZ40PrECAcZw4g4B4BwnH3jBUtRQCBPARq1xup1h1ft/YaN3uO2+F49aoj1KDRo9q49tfasuF1DBFAwCEChOMOGQiagQDhOHMAAVcKEI67cthotI8ECMd9NNh01fUChOOuH0I6gAACRqBp62fVoPHDylr3irLWj84NxyuV66MmLZ/W9qw/af3KZ8BCAAGHCBCOO2QgaAYChOPMAQRcKUA47spho9E+EiAc99Fg01XXCxCOu34I6QACCBiBTr3Gqkpmz6v2FjfbqpQt0UYt272qPTvGa9WyH4CFAAIOESAcd8hA0AwECMeZAwi4UoBw3JXDRqN9JEA47qPBpquuFyAcd/0Q0gEEEDAC/YevUfGSmdZ+42bfcXOZcLxEofq6uctbOrR/lj6efy9YCCDgEAHCcYcMBM1AgHCcOYCAKwUIx105bDTaRwKE4z4abLrqegHCcdcPIR1AAIGMQiU0dOQuXblyWZPeqW791w7HMy5XVJdeH+jE0ZVa8OFAsBBAwCEChOMOGQiagQDhOHMAAVcKEI67cthotI8ECMd9NNh01fUChOOuH0I6gAAC5Su1Uo/+M60V42bluH2ZleOXzxdUz/4LdDZnp2ZN6gAWAgg4RIBw3CEDQTMQIBxnDiDgSgHCcVcOG432kQDhuI8Gm666XoBw3PVDSAcQQKB2vZFq3fF1Hdgz1dpzPDAcv3DqjG65da0uXjihae82AgsBBBwiQDjukIGgGQgQjjMHEHClAOG4K4eNRvtIgHDcR4NNV10vQDju+iGkAwgg0KzNc6rf6CFlrR+trHWvXBWO5xzdr8F37LB+b+Lb1SRdAQwBBBwgQDjugEGgCQjkIVCibGVlFC6qnGP7cUIAAQcKEI47cFBoEgIBAoTjTAcE3CNAOO6esaKlCCAQRqBTr7GqktlTKxZ+Twf2TgsKx/ep75CVKlqsoqa921AXL5zEEQEEHCBAOO6AQaAJCBCOMwcQcK0A4bhrh46G+0SAcNwnA003PSFAOO6JYaQTCPhboP/wNSpeMtPab9zsO25fZs/xnKP71KPfHJUqU0+zJnfQ2TM7/Y1F7xFwiADhuEMGgmYgEEaAleNMDQScLUA47uzxoXUIEI4zBxBwjwDhuHvGipYigEAIgYxCJTR05C5duXJZk96pbv03OBzv2ONdVazcVgtmDtCJY6twRAABBwgQjjtgEGgCAnkIEI4zPRBwtgDhuLPHh9YhQDjOHEDAPQKE4+4ZK1qKAAIhBMpXaqUe/WfqzKktmjO161V32CvH23R8U9Vq9NWyefco+8BsHBFAwAEChOMOGASagADhOHMAAdcKEI67duhouE8ECMd9MtB00xMChOOeGEY6gYB/BWrXG6nWHV/XgT1TtGLR/SHD8Watf63a9e7SymWPau+Od/2LRc8RcJAA4biDBoOmIBBCgJXjTAsEnC1AOO7s8aF1CBCOMwcQcI8A4bh7xoqWIoBACIFmbZ5T/UYPKWv9aGWteyVkON6wyeNq0PhhrV/5S23PehNHBBBwgADhuAMGgSYgkIcA4TjTAwFnCxCOO3t8aB0ChOPMAQTcI0A47p6xoqUIIBBCoFOvsaqS2VMrFn5PB/ZOCxmO173hAd3U4hfavOE1bVr7Eo4IIOAAAcJxBwwCTUCAcJw5gIBrBQjHXTt0NNwnAoTjPhlouukJAcJxTwwjnUDAvwL9hq9WiZLVNXtyJ+Wc2R4yHK9R6za1bD9au7b+U2tWPO5fLHqOgIMECMcdNBg0BYEQAqwcZ1ogIDVv+6LqNfyedm/7t1Yv/6mjSAjHHTUcNAaBawQIx5kUCLhHgHDcPWNFSxFAIEggo1AJDR25S1euXNakd6pb/w287AM5r6vSU+26/U0H9kzVikX34YgAAg4QIBx3wCDQBATyECAcZ3ogIPUaNE9ly9+kLz4/qJkTWzqKhHDcUcNBYxAgHGcOIOBiAcJxFw8eTUfA7wIVKrVW9/4zdObUFs2Z2vUaDjscL1e+lbr0eV9Hshdryezb/c5G/xFwhADhuCOGgUYgEFaAcJzJ4XeBQoVLafCd21SgQEGLYtbk9jp7ZpdjWAjHHTMUNASBkAKsHGdiIOAeAcJx94wVLUUAgSCB2vVGqnXH13VgzxStWHR/2HC8RIk66jVovk6f3Ki503riiAACDhAgHHfAINAEBPIQIBxnevhdwJxpY862sS+zNZ/Zos8pF+G4U0aCdiAQWoBwnJmBgHsECMfdM1a0FAEEggSatXlO9Rs9pE1rf6PNG14NG45nFCytAbev1xfnDmnm+y1wRAABBwgQjjtgEGgCAoTjzAEEwgo0bvFzNWz6E104f0RFi11nHfxuDoB3ykU47pSRoB0IEI4zBxBwuwDhuNtHkPYj4GOBTr3GqUpmDy1f+F0d3Ds9bDh+6auvNOzufbp86bwmjantYzG6joBzBAjHnTMWtASBUAKsHGde+F2gS5+Jqly1k9Z98gs1v/nX+vLiaU0df4NjWAjHHTMUNASBkAKsHGdiIOAeAcJx94wVLUUAgSCB/sPXqHjJTM2e0lk5p7eFDce/vHBOQ+/erYyM4po0pqYuX7qIJQIIpFmAcDzNA0D1COQjQDjOFPG7wLBRe1WwYFFNe7eRuveboVJlrtf8Gbfo5PG1jqAhHHfEMNAIBMIKEI4zORBwjwDhuHvGipYigECAgDkkachdO6zfmfh2lZA29oGcJhzvN3y1SpSsrhnvNdP5Lw5jiQACaRaoVe921ao/XLuyxlivqnMhgICzBAjHnTUetCa1AuUrtlSPAR9aiy/MIowWN7+kujd+RxvX/EpbPvvf1DYmTG2E444YBhqBAOE4cwABDwh4Ihz/yWOP6+FHHlWRIkWsIfn887N66sknNPH9CdavO3Xqold/94aqVq1q/XrJkkUaddeI3OEbftsIvfDiSypZspT1e+PHjdHjj/0498/fGTdBnTt3tX6dnZ2tn/zw+1q6dLEHhp8uIOBegQqVWqt7/xk6c2qz5kztFrIjgeF4z4FzVa5CE+tATnMwJxcCCKRXoGvfSapUpYO1JZLZGokLAQScJUA47qzxoDWpFWjQ+BE1bf2Mdm9/R6s//omq1xqodt3e0tHsJVo8+7bUNiZMbYTjjhgGGoFAWAFWjjM5EHCPgCfC8ZdHv6bqNWrkBt5z5i9W6dJlckNs82tz9e7RRXYQPm3qFCsAt4Pz7du3Ws+boP2++x/UX//ypl4d/bJM2YMGD8kN2wPLcs8w01IEvCdQu95Ite74uvbvnqxPFj+QbzjeufcEXVetq5bMvl1Hsvlwy3szgh65TaDf8DUqUTJTFy+e0rTxDSVdcVsXaC8CnhYgHPf08NK5fATad/+nMmv206plP9SeHeNUuEhZDb5ziy5fvqSp4+rq0qULaTckHE/7ENAABPIUIBxngiDgHgFPhOPB3IGBtvmzp595Tm//6x9W2G2uwIDbhOH3fuvbev65Z6yV5sFhubn38OHs3OA9OCx3z1DTUgS8JdCszXOq3+ghZa17RVnrR+cbjrfr+hdVrz1EKxbdpwN7pnoLg94g4DKBAgUydOs9B3NbPX9GX508vs5lvaC5CHhbgHDc2+NL7/IWGHRHlooUraBZk9vr7Jld1s09Bnyk8hVbaOncu3T44Py0ExKOp30IaAAChOPMAQQ8IuDJcNxsg1K//g3WyvF2HTpctRLcjFvgnw+9dfhVK8MDw/NnnnrS2o7FXlVu/ix4ZblH5gHdQMB1Ap16jVOVzB7WdgxmW4ZQV+C2Ki3a/UZ1b/i21qx4XLu2/tN1/aXBCHhJoFTpuuo77OPcLn22+nlt3fiGl7pIXxBwvQDhuOuHkA7EKFC6TH31GbpUFy+csA7jtK+bWvxCNzb9kbZt+oM2rHouxtIT9xjheOIsKQmBZAiwcjwZqpSJQHIEPBeOB4fXwSvDDWNwON6te8+r9hG3V5bb4fjCBfNy9yAPLr98Zv3kjAylIoBAngIdOk1UsWJVtOLjkTp3bm/IewsVLaFLF8/rypXLur7ufapz/Xe0c8eftWc34TjTC4F0ClSo2F7NW/w2twnHj6/Q+rU/SWeTqBsBBIIEChYqrAIFCurSl+nfPoLBQSCVAtWqDVLDxr/QkcPztfGzp3KrLleupVq2fkNnc7bq00++k8omhamrgAoXK6kvz591QFtoAgIIBAuYD7AKFOTnKDMjNQInD25PTUUercVT4bh9MOcHE98LG2aHCscD9xQ3fx4cjue1crxI8dIenRp0CwHnCmQUKqH+w9ZbofeMiQ2t/4a6ylSuqXOnj+qri+d1fYPv6Kbm/62d297SpnUvOrdztAwBHwjUrnePmrZ8VidPfqry5dtaPZ72Hh82+2Do6aKLBIqVLCcTkJufo1wI+EmgRduXVaP2cG1c9yvt2vb33K4XLFhI/YatV8GCRfTR5Fb68sszaWUpmFFIZSrX0Kns3WltB5UjgEBogaIly6pQ4aL6/NQRiBBIusDFL3KSXoeXK/BMOB4qGDcDZw7gZM9xL09h+uZHgQqVWqt7/xk6cypLc6Z2D0sQuK1Krboj1KbTG9q7412tXPaoH9noMwKOEbDPDNi5801VrTJIJUpW16JZt+rY4WWOaSMNQcDvAmyr4vcZ4N/+9x26XKXKXK/5M27RyeNrr4Lo3Hu8rqvWXZ8ufkj7dn+QViS2VUkrP5UjkK8A26rkS8QNCDhGwBPheH77gAcewGnC8hdefEnTpk6xVpcHH8AZXFbwAZyBZTlmFGkIAj4TqF3/brXu8Jr2756sTxY/EFE4XrV6b3Xs+Y6yD8zWsnn3+EyM7iLgLIH23f6hzFr9tXHTL1WyyI2qU3+UNm94TZvWvuSshtIaBHwsQDju48H3cdfNIZzmMM7Lly9o8pg617yd2KDxI2ra+hnt2TFWq5b9KK1ShONp5adyBPIVIBzPl4gbEHCMgCfCcbOHeOfOXa9BHT9uzFUBeNWqVa17lixZpFF3jci93w7MS5YsZf2e/Zx9Q2D52dnZV+1P7piRpCEI+EjAXnWate5lZa3/Zt/iYILAlePlK7VSj/4zdeLYKi2YOcBHWnQVAecJ9B68UGXKNdTq1Q/oq8+lm7v8ma9N5w0TLfK5AOG4zyeAT7ufWWug2nd7S0cOLdKSOd/8e9HmKFehiXoOnKsvPj+omRNbplWJcDyt/FSOQL4ChOP5EnEDAo4R8EQ47hhNGoIAAikR6NRrnKpk9tCKhd/Vgb3Tw9YZGI6b12PNa7Jnc3Zq1qQOKWknlSCAQGiBYaP2qmDBolqyuJ9OHtypwXdulXRFk8fW1aWvzsGGAAIOECAcd8Ag0ISUCzRr8z+q3+hBZa0frax1r4Ss3/zMKlykrPX3SfP3ynRdhOPpkqdeBCITIByPzIm7EHCCAOG4E0aBNiCAQFQC/W9bq+IlqmnW5I46e2ZHROF4kSLlNOjOLbp44YSmvdsoqvq4GQEEEidQtNh1Gjhig/W1uHzF7Tq2Z6O1Cs+sxvt4wbd0aN9HiauMkhBAIGYBwvGY6XjQxQI9Bnyk8hVbaMmcO3Tk0MKQPbm5y5uqUWeY1n7yhHZu+ebAzlR3m3A81eLUh0B0AoTj0XlxNwLpFCAcT6c+dSOAQNQCGYVKaOjIXbp86aImj619zV6QgQUGrhyXCmj4vYesP574djVrlSoXAgikXqBi5bbq1m+aTh5fow0bf2qF401bP6sGjR/W9s1/0fpPn0p9o6gRAQSuESAcZ1L4TcC80TT07t1Wt81+42bf8VCXffbNwb0ztXzht9PGRDieNnoqRiAiAcLxiJi4CQFHCBCOO2IYaAQCCEQqUKFSa3XvP0NnTmVpztTueT52dTgu64Alc9DStHcb6uKFk5FWyX0IIJBAgVp1R6hNpze0f89k7dzzOyscr5LZU516jVXO6a2aPaVLAmujKAQQiFWAcDxWOZ5zq8B11bqqc+8JOnV8vebN6BO2G8VLZqr/8DXWNmBmO7B0LbggHHfrTKPdfhEgHPfLSNNPLwgQjnthFOkDAj4SqF1vpFp3fF37dn+gTxc/FFU43nfoMpUqU0+zJrfX2TO7fKRGVxFwjkCjZo+pUfOfaevG3yn7+GQrHM/IKJ67Wm/6hKa6cP6IcxpMSxBwiUDXvh+oUpWO1s9G8zMy3otwPF5BnnebgP3zaXvWn7V+5dN5Nr/vsI9VqnRdzZ/Rz3oTKh0X4Xg61KkTgcgFCMcjt+JOBNItQDie7hGgfgQQiErAPihp09rfaPOGV6MKx7v3m64KldtowcwBOnFsVVT1cjMCCCRGwKwaN6vH16z4qXIurLHCcXPlBntLHtG+Xe8npjJKQcBHAmYvf7On/4ZVz2nbpj/E3XPC8bgJKcBlAl36TFDlql21YtF9OrBnap6tb9HuN6p7w7cVyd9Hk8VAOJ4sWcpFIDEChOOJcaQUBFIhQDieCmXqQACBhAl06jVOVTJ7aMXC7+rA3ulRheMderytajX6atm8e5R9YHbC2kRBCCAQuUC3flNVsfLNWjL3dl0ufCI3HG/U7Kdq1Pxx7dkxTquW/TDyArkTAQRUqHApDbnr6wOqt2f9SetXPhO3CuF43IQU4CKBAgUKWm8wmX3HzcHt5tDovK7qtQaqXbe3dOzwMi2adWtaeko4nhZ2KkUgYgHC8YipuBGBtAsQjqd9CGgAAghEI9D/trUqXqKaZk3uqLNnvg4Cwl3Be4637vi/ql3vTq1c9qj27ng3mmq5FwEEEiRgr26dNbmtipUvnRuOm7c6zNsdF84f1fQJTRJUG8Ug4A+B8hVbqMeAj6zO7t89SZ8sfjDujhOOx01IAS4SKF+xuXoMmKXPc/boo0k359vywkXKavCdW3T58iVNHVdXly6FPrwz34LiuIFwPA48HkUgBQKE4ylApgoEEiRAOJ4gSIpBAIHkC2QUKqGhI3fp8qWLmjy2tq5cuZxnpcHheLM2z6l+o4e0fuUvtT3rzeQ3mBoQQOAqAbMib9iovbpy5ZKmjKuj8tUb5IbjUgENHblT5ut81qQOOpuzEz0EEIhQoOb1w9W28x+tuxO1kpVwPEJ8bvOEQP1GD6hZm+etxRNmEUUkV48BH6p8xZZaOvduHT44N5JHEnoP4XhCOSkMgYQLEI4nnJQCEUiaAOF40mgpGAEEEi1QoVJrde8/Q6dPbtLcaT3yLT44HL+x6Y90U4tfaPOG17Rp7Uv5Ps8NCCCQWIEy5Rqq9+CFyjmzXfOm9wgKxyV766O1K36unVv/kdjKKQ0BDwvYBwmaLp49s1OzJneIu7eE43ETUoCLBNp1+5uq1xqkNcsf065tb0fUcvN3SvN3S7Pgwiy8SPVFOJ5qcepDIDoBwvHovLgbgXQKEI6nU5+6EUAgKoHa9e9W6w6vRfzKeHA4fn2Db6ll+1e0a+s/tWbF41HVzc0IIBC/QLWat6hD938p+8AcrVj0nWvC8foN71ezti9Y5wmYcwW4EEAgMoGbu7ypGnWGWTdf+uqcJo+9PrIH87iLcDxuQgpwkcCgO7JUpGgFzZ7SRTmnt0bU8spVO6tLn/d15lSW5kztHtEzibyJcDyRmpSFQOIFCMcTb0qJCCRLgHA8WbKUiwACCRdo1uZ/VL/Rg9q09jfavOHVfMsPDsfNiiCzMujAnqlasei+fJ/nBgQQSKyA+fo1X8c7Nv9Vn6157ppwvHTZG9RnyGJdvHhK08Y3lHQlsQ2gNAQ8KtBzwGyVq9gst3dTxtXTV1+ejau3hONx8fGwiwRKlq6tW4Z9Yn3NmK+dSK+CBQtp8F07lZFRVDMmNNH580cjfTQh9xGOJ4SRQhBImgDheNJoKRiBhAsQjieclAIRQCBZAp16jVWVzJ5avvDbOrh3Zr7VBIfjlat2Upc+E3Xk0CItmTMi3+e5AQEEEivQvO2vVK/hfVq/8mnt2vaPa8JxU9uA29erWPEqmjejj04dX5/YBlAaAh4VMOdxmP36L5w/rqLFKlrbqpjtVeK5CMfj0eNZNwnUqjtCbTq9oUP7PtLHC74VVdPtv5t+uuRh7ds1Mapn472ZcDxeQZ5HILkChOPJ9aV0BBIpQDieSE3KQgCBpAr0v22tipeoFvFhfcHheNnyjdVr0HydPrlRc6f1TGpbKRwBBK4V6NjzHVWt3lsfz79XR7IXhAzH23T6P9Wqe7s+W/2Ctm78PYwIIJCPgPkwyXyodOH8USsQr3hdOy2ePVxHs5fGZUc4HhcfD7tIoFX736pOg3v02erntXXjG1G1vEHjR9S09TPas2OcVi37YVTPxnsz4Xi8gjyPQHIFCMeT60vpCCRSgHA8kZqUhQACSRMoVLi0hty13Sp/4ttVIqonOBy3A4QvPj+omRNbRlQGNyGAQOIE+gxdqtJl6lt7up77fHfIcLxWvTvUpuPvdeTQAi2Zc2fiKqekqwSKFqusMuVu0Pkvjijn9DZ0XCxQqUpHde37gY4dWa4LXxxR9dpD9Onih7Rv9wdx9YpwPC4+HnaRQJ8hS1S6bAMt/HCQjh/9NKqWly1/k3oNmqfz57I14/3mUT0b782E4/EK8jwCyRUgHE+uL6UjkEgBwvFEalIWAggkTaBC5Tbq3m+6Tp/cpLnTekRUT3A4XjCjiIbdvU+XL13UpDE1IyqDmxBAIHECt95zUAUKZGjSO7VUoOCVkOF4sWKVNWDEZ7p06YKmjqury5e/SlwDKClXoF7D76l52xd1JHuxlsy+HRkXC1zf4F61bD9ae7aP0ZdfnlX9Rg9ow6pntW3TH+PqFeF4XHw87BIBcwinOYzT/KyZMrZ2TD9zBt+5VYWLlNXsyZ2Uc+brhRypuAjHU6FMHQjELkA4HrsdTyKQagHC8VSLUx8CCMQkULv+3Wrd4TVrJZxZERfJFRyOm2eG3r1bGRnFNWlMbV2+dD6SYrgHAQQSIFC8ZKb6D1+j818c1oz3mimjUJGQ4bipyl5hvnj2bTqavSQBtVNEsECj5j9To2aP6YtzhzTz/RYAuVigaetn1aDxw9aWEFIBNWn1lLZn/UnrVz4TV68Ix+Pi42GXCFSreYs6dP+X9ebFoo+GxtTqm7u8qRp1hmndp09qx+a/xVRGLA8RjseixjMIpE6AcDx11tSEQLwChOPxCvI8AgikRKBZm/9R/UYPatPal7R5w2sR1RkqHDfhnAnpTBhkQiEuBBBIjYC99cPxIyu08KMheYbjzW/+terd+F3ra918zXMlXqBFu9+o7g3ftgqePKaWtVKfy50CHXq8rWo1+lqHVRcqVMo6WDCaD5LD9Zpw3J3zgVZHJ9C09S/VoPF/actn/6uNa34V3cP/udtewBHLgZ4xVfifhwjH49HjWQSSL0A4nnxjakAgUQKE44mSpBzXC5QqU1dfXsyxDrTicp5Ap17jVCWzh/WP/4N7Z0bUwFDheM+Bc1SuQlNraxazRQsXAgikRqBO/ZFq1eF17dkxXquW/SDPcDyzZj+17/5PnTi2SgtmDkhNA31WS/tubymz1kCr1+aAYnNQMZc7BfoO+1ilSte19vIvXqKqOveeYB3GaQ7ljOciHI9Hj2fdItCt3zRVrNxWy+aNUvaBOTE1234z6quvPteUsXVjKiOWhwjHY1HjGQRSJ0A4njprakIgXgHC8XgFed4TAh17/ltVq/ex9utc9fGPPdEnr3XCXvE9a3J7nT2zK6LuhQrHu/SZoMpVu4rtGiIi5CYEEibQuMXP1bDpT5S17mVlrf9tnuF44AG8U8bV11df5iSsHRT0tYA5wNGs5jfXikX368CeKdC4VGD4vYetlpvDqkuXvUF9hizW2ZydmjWpQ1w9IhyPi4+HXSBQsGBRDRu112ppvD9r7A+pFnw4UCeOrkxJ7wnHU8JMJQjELEA4HjMdDyKQcgHC8ZSTU6ETBYaM3JZuRecAACAASURBVKlChUpae1BPm3CTvvryrBOb6ds2BQZl5h//kV6hwvGbu/xZNeoM1YqF39OBvdMiLYr7EHClQMlStVSiVE19nrNH5z7fn9Y+tO3yJ9Wsc6s+XfKI9u16P89w3DS0e/8ZqlCptT5e8C2ZV9W5EitgAlQTpJormu2qEtsKSotXwKwYN6Hc2ZzdmjWpnQoXLqPBd21TIlawEo7HOzo873SBSte1V9dbJuvMqSzNmdo9rubaW1VlrXtFWetHx1VWpA8TjkcqxX0IpEeAcDw97tSKQCwChOOxqPGMpwTKV2yuHgNm5fZp3af/rR2b/+qpPrq9MxUqt1H3ftOt1/7N6/+RXqHCcfsfL2tWPK5dW/8ZaVHch4ArBZq3/ZXqNbxPu7a9rTXLH0trH3oM+FDlK7aUvaourwM5TUNvavEL3dj0R9b3Y/N9mSuxAoPuyFKRohWsQvfufE8rl/5XYiugtJQImL3GzZ7jhw/O09K5I606h43ar4IFC1vbO5iQPNaLcDxWOZ5zi4D5GWN+1pi/D5q/F8ZzVa81UO26vSX7XI14yor0WcLxSKW4D4H0CBCOp8edWhGIRYBwPBY1nvGUgDnk0Rz2aA5nLF6imnJOb9PsKZ091Ue3d6Z2vZFq3fF1a7WpWXUa6RUqHG/U/HE1avZTVkpGish9rha4ucubqlFnmI4dWa5FHw1Na18GjtioosUqacaEJjp//mi+K8crV+2kLn0mKuf0VmsvZa7ECthbcZhSTx5brfkz+ye2AkpLiUD9Rg+pWZvntD3rTa1f+Uurzr7DVqhU6TqaNbmDzp7ZGXM7CMdjpuNBlwjY2yp+uuRh7ds1Ma5WX7UdWJwfTEXaEMLxSKW4D4H0CBCOp8edWhGIRYBwPBY1nvGUgDn0zRz+tmrZD9Wk1X+raLHrtPDDwTp+9BNP9dPNnWna+lk1aPywNq55UVs++13EXQkVjtdv9ICatXle2zb9URtWPRtxWdyIgBsFzMF811XrqosXTmrauw3T1gWzbZXZvipwq4f8Vo6bxg67e48KZhTT9AlNdeH8kbS132sVmw8pzIcV9vXlxdOaOv7rLVa43CXQsv0rur7Bt7R2xc+1c+s/rMabbSLMdhGLZg3TscMfx9whwvGY6XjQJQJmCyKzFdGHE1vp3OcH4m51j/4zVb5Sq7gO94ymEYTj0WhxLwKpFyAcT705NSIQqwDheKxyPOcZgcC/GNeuP8paVcwr5s4a3s69x+u6at21fMH/08F9H0bcuFDheK26I9Sm0xvas2Oc9YEIFwJeFug9eKHKlPs6FLdXbKejv+UqNFHPgXOv2hopknC8U69xqpLZI3ef8nS03Yt1mjlh5oZZlV+0+HUqUqScpk9orAvnj3uxu57uU5c+76ty1c5aMmeEjhxaZPW1Xde/qnrtwfpk8QPav3tyzP0nHI+ZLiEPFi1WUQNHbLLK4uszIaRXFWJ/Hzx/Llsz3m+ekAoat3hCDZv++Ko3ORJScJhCCMeTqUvZCMQvQDgevyElIJAqAcLxVElTjyMFypa/Sb0GzbNWJJqViWbV+IDb1+nKlcua8V5TXbxwwpHt9lujBty2TsVKVI36FfFQ4XjV6n1kXqPNPjBby+bd4zdK+uszAXsrE9PtxbNv09HsJWkRyKw1UO27vaWDe2dq+cJvW22IJBy/4abvq0mrp7Vnx3itWvaDtLTdi5WaMNWEqscOL1NGRjFrpePCj4ZYe+VyuUtgwO3rVax4latWvjZr+4LqN7xf61c+o+1Zf4q5Q4TjMdMl5MHAM3E+XfyQ9u3+ICHlUsjXAnVv+LbMOTT7d0/SJ4sfTAiL/b31zKktmjO1a0LKzKsQwvGkE1MBAnEJEI7HxcfDCKRUgHA8pdxU5jQBe4uNvTve1cplj1rNs/cf3LDqOW3b9AenNdl37ckoVEJDR+7S5UsXNXlsbeuDi0ivUOF4hUqt1b3/DJ04tkoLZg6ItCjuQ8CFAgU0/N5DkgpYbV/3yS+0Y8tbaemHHXKboM4EduaKJBwvV7GZeg6YrQvnj2r6hCZpabsXK61ee4jadf2LDuyZqktffaFa9e7QqmU/0p4dY73YXc/2qVDhUhpy1w5dunRBk8fUyu3nDTc9qiatnop7+zDC8fROncxaA9S+29+tRvABYeLHom3nP6rm9cO17tMntWPz3xJSQcGChTT4rp3KyCiakre1CMcTMmwUgkDSBAjHk0ZLwQgkXIBwPOGkFOgmAfOPDvOPj8BQoFqNvurQ421r78EPJ7aWdMVNXfJcWytUbqPu/aZftR1DpJ0MFY6XKlNXfYd+bB1SZg4r40LAqwLFilXWgBGf5XZv55a/a+0nT6Slu7n7In/yhEw7Ig3HTbA/+M4tKlykrGZN6qCzObEfLpiWjju00noNv6fmbV+0xuL8F4dltgLYuvH3+mz1Cw5tMc0KJWCvLD59cpPmTuuRe4v5sKNNx99bK43NiuNYL8LxWOUS85y9gMOUZg4xNltjcSVOoN/w1SpRsrrmTe+lUye++VkZbw32dmArl35fe3dOiLe4PJ8nHE8qL4UjELcA4XjchBSAQMoECMdTRk1FThQwezmaPR0//KCNzp3dl9vEfsNXqUTJGloy+3YdyV7sxKb7pk2169+t1h1e075d71v7DkdzhQrHTcg2+M6t1t66Zg9PLgS8KlC67A3qM+Sb71/me5n5npaOyz43YOncu3T44HyrCZGsHDf3mRXOZqXzmhWPa9fWf6aj+Z6rs1Gzx9So+c+UtX60TLBqtrw5sHe6Viz8ruf66uUO1agzTDd3edN6A2DFovtyu2oO4TWH8ZptlMx2SrFehOOxyiXmOfswcru0OVO76cypzYkp3OelmK36zJZ9X315VlPG1UuoRv1GD6lZm+dSstqfcDyhQ0dhCCRcgHA84aQUiEDSBAjHk0ZLwU4XsA/i+eLcIc18v8VVzTWH6ZiVdMH/4HR6n7zYPvMPDPMPjY1rf60tG16PqouhwnFTwPB7D1vlTHy7SlTlcTMCbhKoXLWTuvSZqLNndqlUmevTuvLwlmGfqGTp2po1ub3VHnNFGo5f3+BetWw/mvA2gZPP7LNr9ts1bxIcO7xcvQcvUKr2yE1gN3xflP0hx+YNr2rT2t/ketgfjOWc2a7ZkzvF7EQ4HjNdQh5s1+1vql5rkHX+TZGiFcR2fwlhtQqxP1g6fHCuls69O3EFS7LPMzJv5cx4r1lCyw4ujHA8qbwUjkDcAoTjcRNSAAIpEyAcTxk1FTlNwH6tPNSKZA7mdM5o2StOzSF+5jC/aK5w4figO7Ksf2hOe7cRh65GA8q9rhII3Fe6SvWeKlSopKa921AXL5xMaT8KFMjQsFH7ZP77wb8zdeXKJav+SMPxUqXrqO+wFbp48ZSmjW/IVlcJGL123d5S9VoDrdXG2ftnaejde61xMePD5R6Btl3+pJp1brUOqzV7UttXkSLlNOjOLXGviiUcT+9c6DHgQ5Wv2NLaO75B44d1NHuRFs8ekd5GeaT2Fje/pLo3fsf6UMl8uJToy7yhaN5UnD2li3JOb0108bnlEY4njZaCEUiIAOF4QhgpBIGUCBCOp4SZSpwoYK/IWb38p9q97d/XNNEODzatfUmbN7zmxC74ok3mtVfz+qvZH9zsEx7NFS4c7zvsY5UqXZc9jKPB5F7XCdgfAJpDOMtXaCazf/+ij4bq2JHlKe2LWTFuVo5/fY5Dq9y6Iw3HzQP23rDzZ9yik8fXprT9Xqys6y2TVem69lo8e7iOZi9V/+FrVLxkpj76oK0+P7vXi132ZJ96DJgls++4OVzaHDIdeA0btV8FCxbW5LHX69JX52LqP+F4TGwJe2jgiA0yizVmT+msPkOWWOXyxltieHsNmq+y5Rvnfg9MTKnflGK2OzKr09evfFrbs/6c6OJzyyMcTxotBSOQEAHC8YQwUggCKREgHE8JM5U4UWDQHZtVpGj5sAHpddW6qXPvdzmYM42Dl1GohIaO3KXLly5q0piaUbckXDhuDvg0QWGoQCHqSngAAYcKNGr+uBo1+6my1r1iHTpm9u9fs/xn2rXtXyltsf29NHj/42jCcXPugGn/xjW/0pbP/jel7fdiZX2HLlOpMvU0Z2pXazsVsz+12ac6cE94L/bba30actcOFSpcytoz2eydHHjdcuunKlmqVkwfLNvlEI6nd8YEbgHXvf8MVajUWsvmjVL2gTnpbZjLazdfM4Pv3KYrVy5ryti6unz5QsJ7ZJ+Xc2j/LH08/96El28XSDieNFoKRiAhAoTjCWGkEARSIkA4nhJmKnGaQOmyDaxVOBfOH9H0CU3DNK+Avj6Yszr/GEnTAJoA2wTZp058pnnTe0XdinDheIceb6tajb5aNu8eZR+YHXW5PICAGwRatn9F1zf4lnWQZUZGceuAsO2b/6L1nz6V0uabNpi27Nk+Rqs+/nFu3dGE4/b+sGwrkJihsz8cnj7hJl04f0z2FgNmbpg5wuV8gWLFq2jA7eutrcHMFmHBV7d+01SxclstmnWrjh1eFlOHCMdjYkvIQ+aciL5Dl1tvcpg3Ouz95dPxPTwhHXJQIVUye6lTrzE6eWy15s/sn5SWmTdxzBs55q2NqeMb6PLlr5JSD+F4UlgpFIGECRCOJ4ySghBIugDheNKJqcCJAuYgMnMg2f7dk/TJ4gfDNvGGm76vJq2eVrJXfjjRyAltqlN/lFp1eFX7dk3Up0sejrpJ4cLx1h3/V7Xr3amVyx7V3h3vRl0uDyDgBoH23f6hzFr9tXzhd3Xpqy/UqdfYtOxZ27T1L9Wg8X9p45oXteWz3+XSRROOm71bzR6uly5d0LTxDaz/csUqUEDD78229m6f+HY167/1Gz2gZm2el9mCZ90nv4i1YJ5LoUClKh3Vte8HOn70Uy38cNA1Ndtbx5m/45i/68RyEY7HopaYZ8ybHOaNDvPBhvmAw14scPbMDs2a3DExlfi0lJta/EI3Nv2Rtmf9SetXPpM0hb5DP1apMnW18KMhOn5kRVLqIRxPCiuFIpAwAcLxhFFSEAJJFyAcTzoxFThR4OYuf1aNOkOtFZW7tv4zbBPNoY0Dbt+gAgUKasZ7za2V5lypE2jW5n9Uv9GD2rj219qy4fWoKw4XjpsVtPUbPaT1K3+p7VlvRl0uDyDgBoFvVo4O07mze619u89/cVgz3muW0ua37/aWMmsN1CeLH9D+3ZNz644mHDcP2XvELpl9u45kL05pH7xUmdnD2OxlbFaMm5Xj5rJXUh45tFBL5tzhpe56ti/XN7hXLduP1p4d47Rq2Q+v6Wfztr9SvYb3WeGfCQFjuQjHY1FLzDN16o9Uqw6va+/OCVq59PuSCmjwnVusQx5nvt9CX5w7lJiKfFhK176TVKlKBy1f+B0d3DsjaQJmEY5ZjGO2NstaPzop9RCOJ4WVQhFImADheMIoKQiBpAsQjiedmAqcKBB4yFHO6W15NrFtlz+pZp1blbX+t8pa97ITu+PZNnXuPV7XVeuu5Qv+nw7u+zDqfoYLx82KIbNyyBy0ag5c5ULAiwLmlXzzav7syZ2Uc2a7hozcqUKFSlp7rH711ecp63LPgXNUrkJTBR+mGW04bn+oZT4oMx+YccUmUKZcI/UevEA5p7dq9pQuViHfHJq6Xx9ObB1bwTyVUoGmrZ9Vg8YPX/NGht2IG5v8QDe1/G9t2/QHbVj1XExtIxyPiS0hDzVq/jNrK5XNG17VprW/scrM7yD5hFTs8UIKFixk/SwsWLCotR2R2ZYoWVdmrQFq3+3vYd/uSES9hOOJUKQMBJInQDiePFtKRiDRAoTjiRalPMcLlCpdV32HfayLF05q2rsN822v/eqyWTVuVo+bA3y4UiMw4LZ1KlaiqmZNbq+zZ3ZFXWm4cNzeA9m8NWDeHuBCwIsCQ+7arkKFS1vf58z3ux4DPlL5ii204MOBOnF0Zcq6PGzU3v8EEV+3w76iDcdz94k9vkbzZ/RLWfu9VlHwdg12/26956AKFMjQ5DG12LbGBYNun51htk06uHf6NS2uVe8Oten4+5i3JTMFEo6nbyK07vi6atcbqdXLf6rd2/5tNcTeas6Mtxl3rugFcrenydmpWZM6RF9AFE98faj8Tl2+fMnad9zsP57oi3A80aKUh0BiBQjHE+tJaQgkU4BwPJm6lO1IgToN7lGr9r/VgT1TtWLRfRG10V6BmexXMCNqjE9u+vofFbt0+dJFTRpTM6ZehwvHq9caZK3AimYOxNQAHkIgTQIFCxbWsFH7/7OvdFWrFfZe++ZQTHM4ZiouszXVoDuy9NWXOZoyrv5VVUYbjmdkFNXgu8yKvwxNHls3KUFDKkzSXYd9uGnw9z9zSLU5rHrO1O46cyor3c2k/nwEzIf85sP+OVO76cypzdfcfV21burc+10dzV6ixbNvi8mTcDwmtoQ8ZPYbNx9kLZ17lw4fnG+VWbxENfW/ba31vc98DzTnBXBFJ2DOvzDnYOzZMVarlv0ouodjuLvHgA9VvmJLfbzgWzq076MYSsj7EcLxhJNSIAIJFSAcTygnhSGQVAHC8aTyUrgTBdp2/qNqXj/cOnTMHD4WyWUfVnbk0AItmXNnJI9wT5wC9uqeUyc+07zpvWIqLVw4XrlqZ3Xp8761b7HZv5gLAa8JFC+Zqf7D11y1x7h9wHCyDyELtDShgAkHTh1fr3kz+lzFHG04bh7uestkVbqufcxbLXltnGPpT/2G96tZ2xe0c8vftfaTJ3KLaN/9n8qs2c9akRpqJXIsdfFMcgTMCv9ho/bludK/TLkb1XvwIsVzgCPheHLGL5JS7cMcZ0/prMDt/+wPscwhrOYwVq7oBOzvc6s//pF2bx8b3cMx3G0f/rlj81+17tP/jqGEvB8hHE84KQUikFABwvGEclIYAkkVIBxPKi+FO1HA3m883GqrUG02WxMMHLFRGRlFrP1Yz31+wIld81Sb7NeH9+16X58ueSSmvoULx8uWb2wd7nf65EbNndYzprJ5CAEnC5Sv2Fw9Bsy6ao5Xq9FXZiuGwwfnaenckSlpfrhVyqbyWMJxswev2Yt3x+a/ad2nT6akD16rpHGLn6th059YB8SZg+Lsq0mrp2U+QNm45kVt+ex3Xuu2p/pjbw937vPwe8QXKVpeg+7YHPKtjUgxCMcjlUr8fcNGHZDZH3vSmNq6fOl8bgX2QeXBX7+Jb4E3SzRvMpk3mmZN7qCzZ3YmvZOVq3ZSlz4TrQ84zAcdib4IxxMtSnkIJFaAcDyxnpSGQDIFCMeTqUvZjhMoVbqO+g5bEfF+44EdsLck2LrxDX22+nnH9c1rDbL/ARhPUBMuHDf7mJv9zL84d0gz32/hNTr6g4Ds/bmPHFqoJXPusES+OXTxgD6c2ColSg2b/liNWzyhrRt/r89Wv3BVnbGE4xUrt1W3ftOSFjSkBCXNlbRs/4rMuQtm1bhZPW5ftevfrdYdXtOeHeO1atkP0txKqs9LwP6gK/DrO9T9Zmsls8XS5LHXx7QNEeF4euZhsWKVNWDEZ9ZhkebQyMCrSmZPdeo1ViePrdb8mf3T00CX1lq6TH31Gbo0pGuyumQ+4DDbgZltwWZMaKLz548mtCrC8YRyUhgCCRcgHE84KQUikDQBwvGk0VKwEwXM4UbmkKMDe6drRZSHGVWo1Frd+8+w/lI9472munz5Kyd20TNt6tx7vK6r1j2ufRrDheMFM4po2N374trP3DPQdMSTAt8cxnf1mxdm3pv5P2VsXX311edJ73uoQ+XsSmMJx62g4c5tMmcSTJ/QRBcSHDQkHcQBFbTv9ndl1hqgFQu/pwN7p+W2yGxXY7atMYe1mkNbuZwrUL/RQ2rW5rl836Dod+tKlShVM+ZVsoTj6ZkD5uBkc4DyqRMbNG9676saYULWQeZ7YEYRTR1/o768eDo9jXRhrd8caDpD5gyhVF2deo1Tlcwe1oeO5sPHRF6E44nUpCwEEi9AOJ54U0pEIFkChOPJkqVcRwq06fSGatUdofWfPqXtm/8SdRvN/p1mH89PFj+o/bsnRf08D0QuYFZ2mxXesya319kzuyJ/MODOcOG4uWXo3buVkVH8mleWY6qIhxBwmECDxo+oaetntD3rTa1f+cvc1vUcOEflKjTV/Bn9dPL4mqS3umvfD1SpSkctmTNCRw4tujrkKVRE5as30LE9G6Nqh9kaxqycXbn0+9q7c0JUz3Kz1O2WKap4XTstmnWrjh1elkuS12pV3Jwl0LL9aF3f4F5rD2Ozl3G4y7xlYd62WDRrmI4d/jjqThCOR02WkAcyaw1U+25v6eC+D63zFYIvc9CqOXB1xaL7dWDPlITU6YdC7DdA1680Pxv/lLIuN2j8sJq2flbxbBMYrrGE4ykbRipCICYBwvGY2HgIgbQIeCocH37bCD39zHN6+1//0KujX84F7dSpi1793RuqWrWq9XtLlizSqLtG5P65ee6FF19SyZKlrN8bP26MHn/sx7l//s64Cercuav16+zsbP3kh9/X0qWL0zJgVBqfgL3fuNln2uw3He1V94Zvq0W731iBggkWuJIjYFaFDh25K+6V3XmF4+awQnNoodlWxWyvwoWAlwSatv6lGjT+L21c8ytt+ex/c7vWtvMfVPP627Rq2Q+1Z8e4pHfZ/jr78IM2Ond231X1xbJy3BRgH5DM9h+xDV/fYR/L7Fk9e0oX5ZzeelUhQ+7aoUKFS2nKuHr66suzsVXAU0kXMHsYm72Ml869S4cPzg9bnwlYTdAa6wf6hONJH8qQFdRv9KDM1nLhDnG0w9Y9O8Zq1bIfpaeRLqzVbKtotldM1YfDNlHZ8jep16B51pYqZmuVRF6E44nUpCwEEi9AOJ54U0pEIFkCngjHA8Pvixcv6o9/+P1V4fic+V8H2b17dJEdhE+bOsUKwO1nt2/fagXmP3nscd13/4P661/etMp4efRrGjR4iJ568glNfH+CAstK1qBQbnIEzKvF5hVjs5WA2VIglsusNB50Z5a14jieFc2x1O2nZ+x9hUO9UhyNQ17heM+Bc1WuQhPrQM5YPiiJph3ci0CqBewVciY4MQGKfd3Y9Ee6qcUvtG3T/2nDqv9JarMKFMjQrfcc1JUrl/TBvzOvqSvWcNy8vWPe4jFbqpitVbiiExh05xYVKVJO0yc01oXzx6962GzlYLZ0MNuqmO1VuJwpMOD29SpWvIpCfegU2OLmbX+leg3vs94eMW+RRHsRjkcrlpj77TNXNqx6Tts2/eGaQsuUa6jegxcmJWxNTA+cV4o5hNMcxnn58gXr3wCp3hpx8J1bVbhIWc2Z2k1nTm1OCFDRYpVUr9H9ql3vDi2f/22dPL4uIeVSCAIIJE6AcDxxlpSEQLIFPBGO20ihVo6H+r3AgNuE4fd+69t6/rlnrPA7OCw39x4+nJ270jw4LE/2AHmp/HZd/yqzb/e2rD9qe9afU961WnVvV5tO/xf2NdVIG2QfZha8XUGkz3Nf/gL2wXB7d7yrlcsezf+BMHfkFY536TNBlat21eLZt+lo9pKY6+BBBJwo0LHnv1W1eh8tm3ePsg/Mzm1iZs1+at/9nzq0f5Y+nn9vUptuViebVcpnz+y09jwOvmINx005djg4a1IHnc3ZmdR+eK3w4fcetro08e0q13TN3nrMfN8133+5nCdgv1kVbgwDW3zDTY+qSaunYv4wzC/heMXKN8uswD2avdQRA26v+A8+FyCwcfbWc6HeAHFEJxzWiOq1Bqpdt7d0JHuxlsy+PeWta9v5j6p5/XCtX/l03P8GKlu+sRo0eljmbBH7Mm/6LJl7Jx9qpnxkqRCBvAUIx5khCLhHwPPhePBKcDM0ZpuU+vVvsLZHGXrr8KtWhps/t8PzZ5560tqOxV5Vbv4sVHnuGe70tbR67cEy4bi5Lpw/oukTmqa8MfbBcLGuoLIbbL8eefHiKU0bf2PK++GHCu1VU8FbQkTb97zC8XZd/6LqtYdccyhdtHVwPwJOFOgxYJbKV2yu+TNu0cnja3ObWKrM9eo7dLk+z9mjjybdnNSmV8nspU69xljbPpjtH4KveMJx80Gn+cBz7SdPaOeWvye1H14qvGix62S2Fwv3en+jZj9Vo+aPa/OG17Rp7Ute6rpn+lKuYjP1HDDbWn1qVqHmddkH8+7d+Z5WLv2vqA38Eo7bHxjNntJZOae3Re2U6AfsNzjy2v4jUX+nTXTbnVqe/ffKrPWjlbXulZQ3s079kWrV4XVlH5ijZfNGxVS/+XC7XsP7VblqZ+v5y5fOa++u91S+clOVLdtcly59oY/nf+ua8z1iqoyHEEAgIQKE4wlhpBAEUiLgi3A8cGW4UQ0Ox7t173nVPuLB4fjCBfNy9yAPDsdLVaiWkoFycyWFC5dTp+4TVaRIBWtLk0KFSmrtyh/pyOEFKe1W5x7TVKJEDS1ffKfOnNkSV93tOr2tsuWaasO6p3Vo/9S4yuLhawVa3fwHVarcUWtW/kBHD199iF80XsXLVNTFc2d06asvr3msUZMnVbP2Hdq04Xnt3/t+NMVyLwKOF+jac6aKFa+mRfP66/wXV++p33fg12H5nJntrFfMk3XVqn2nGjb5hfbuGa/Nn/36mmoKFsxQsdIVdO700aibkFljsJo0f16HD83VutU/jfp5vz5QqnQDdew6QWdztmvZomtXT1ap1lfNW72sw4dma93qn/mVydH9rpp5i5q1/E1Ec79CpfZq0+5POnFshVaueDDqfhUuWkIFMgpZP0e9ehUpWlHde8+1uhfv3zkSZWTaY9q1YE5vXbxwLGSx9tfqsaNLtfqT6D/4SFRb3VJOu07vqGy5m7Tqk4d1/Gj0h9PG289ixa5T116zrAB77ofXvkkVrvyMjGKqXmOoatW91/o3jLnMIqM9u8ZYf3e9dPmcipepoBvqPanrqvb4eh5/+gMdPRL7353j7SvPjZVA6QAAIABJREFUI4DANwLm52jBjEK64OGfo4y3cwTOnuActXhGwxfheOAe4gYrkSvHS5b/+pBPrvACzVu9oqqZfa2/qJ049v/Zuw6orK6su+29d1RQQcWKCnYQC2ABa2I0MckkmWQymSR/eibJTIqT3nuZtMkk0WiMRlRQsWIDFERFBQUsqFixYm//2pe5SBC+773vla+9s1aWRt5t5z7ee3efc/Zej46dn8bRI6uxcf0jprmtarXGGBK5DFeunsPyRQNx/fo1TWO3bD0OXYOm4uSJLUhZayw1gaaJumnjwRFLwAzH1cujce7cfodXwWj9xbOncO3qzeB4+46PoF37B5C94zPsyv7G4TGshpYHXNEDUdFpqFChMpYu6oerV87/YYoDw38DQdKk1ZNx+lSmYdMP7PIM/NreiR2ZH2BP7n9vGqdCxUpgAOvcySOq51CtakMMjloh1rZUAA3XVffhjQ0aESzt928cL9iADUn33+SCunUD0X/QTBSeycbaRPOpB7xxT9Su2b/DQwjo8FfsyvkO2Vk3xHbL6qd2nQAMDJ+NwsLdWLtynNqhUKV6LTCI5cmH+rr1uqB/2HThm6ytb2PvnqK/O8sqVqiEyOiNuHb9KpbEBZf7bKtcpQ6GDV+Na9cuY9migbh27ZKzpuzy41asWA0RI5PFPJcvDhWJOs6wsCHzUbOWL9Yn3YcTBWk2p1CtehP4tZ2C1r63gntNO31qG/bs+hmH8xeL+4NWoUJFsMKDQebuPd9Bc59I8bOM9L/jUP4NSjVnrNca0/KA5QGgcrWaqFS5ijiPWmZ5wGgPnD1xyOghPLp/jwfHLc5x596/kuPv8uXTWDJ3AK5evYjo27ajYsXKiP8tCBfOF3GfGm2Sb5zcu+Tg1WqVKlVD9MRt4oN16fxBOH1SWya61vl4UnvJp3rt6iXMnd5a09Js0aoEdHoQLLO1uOM1udhq7IIe4HNpzOQcAZrMnVaUaVbS+oR9jVZtxgqaBdItGGX9B/+IFq2HIznxXuTnxd80jBZaFXZGPnPympemjjFqPZ7Qb+s249E77Csc2DsPKaseuHlPKlXD2DvyxLs6drqvJyzZ49YguYs3Jj2OPTk3xHbLWqgUIbxy+QzmzQhQ7QtvoFWROgx0DvVwyAntTJNaDUqoryT9CmmrSF9lWdkeoL4MdWa0irxr9W+PPm+hXcd7kZXxAbZvervM7iiI3L7zQ/DxjRFnJSbzHNy3GDmZX+HYkSKAv6SRK79R6444umcroXIED/gQfv63i6DKhjUPY99uqzJS675Z7S0PaPGARauixXtWW8sD5nrA48FxurOkACfB8tfeeAsL5s8TVCmlBThL06aUFuAs2Ze5W+V+o1Wt1gCRY9aAauolQZg+Yf9GqzbjBOcfuf/MsF79P0CbgCnISJuK7O1f6DJkUO/X4R94P3bt/AGbUv6uS5/u2ImPbzROFmzCubMHdJl+wyYhGDwiDicLtmB5fKSmPm2B477tJoLic1pFPzVN0GpsecAAD9Su0wZR41JwtjAPi3/vfdMIkld6R8ZH2LbpZroTvaYUMToRdesHYtmCoTh1YttN3WoFxyXQsHXja9i57VO9pu3R/QQEPoDuvV9DbtZ32LzhhTLXKoX+Fs3ppdtz3aOdavLiJCCauCgGBUc32B1d8mnPne4nOIrVmDeA4+063IMefYuASjOEiu35XwK5FAqnYLgtoz4An+cETrekvmyva6/9eaegZ9Cp+9M2n3tmOMfHdxT6hf8Hx4+lYeXCUX8Ykho47Ts9CH4D0/i7ujt7GnKy/i00QsqzP4LjRVdJfnX+3dLlMGNnrTEsD5TvAQsct+4OywPu4wGPAMclwN28+Q2Kk0OHDhXziJf++Zo1qzBl8sTiXZKAea1atcW/zZwxvZhjnP9PGpbQ0EHiZyX7dZ9tds5MZXZiafGZps3DEBr5Gy6cO4T42UGmTC5qbBJq19U3w7BOvfYC/KdCfNysroJH0Juseo1m6NnvPbRoFSWWTVG8rC3vC6E3LcYgBoMZjgqIlRzbFjjevGUkBgz92SUOw1r8ZbW1PFDaAzLAdOLYRqxYOPImBzGg1S/8e+TnLURy4j2GOXDclDywnD12epsyn49awXEJNBw9tAqrl9x4pxu2IA/ouHOPvyOw25M2g9NhkbOF4Bt9St9a5loeGHv7brDCKm5WZ1y8UGB3ciPGp6Jm7dZIiO2HwtO77V5f8gJvAMfl7wTXrUTkVJUDHbiYWb8U29ybOxNp6/7PZg+NmvZF+PB5onqRVYyWle0BZo0z6LB+9V+wf0+s09xUpUpdjJ5cJPgqKznatr9LJNrUrNVS/DsranOzvsWuHT+AVbf2rCxwnG34nOe9TbMCyPa8aP3c8oBxHrDAceN8a/VseUBvD3gEOK63U6z+tHtAghYs5U2IHXgTfUrU2GTUrtsWa5fdgcP5RUJIRhm5q6MnZggQe94Mf12HGTQ8Fo2b9sPGpCexJ2earn27cmdt29+NbsEvFfMgyrlS3I8ZiTu2foJLF084tITuIVMR0OmvunzM2wLHGzTqiSGjFuH40VSsXBTt0FytRpYHXNEDpDIhpQlLsZNW3n3TFOvUDUDk2LUoPJ2LhNgBhixBPncvXjgqgodlmVZwvJg+5uoFMCvWMvse6NnvXfD5nZ7yLHbvvJkHnj0wi5bZtKyIYmWUZa7jgerVm2DUxK24dOkkFszsqGhi4SMWoFGT3khcPAYFR1IUtZEXeQM4TiC6iIYCuHrlHGJ/aavKR3pfzAxnZjorra4khRafhfG/dTeNqlDvNRvd342AUjchZulMGzwyHg0bB4uqj/oNuohAF+1EwSZkb/8S+/fMVTW98sBxdhLQ6S/oHvKq6M8WlYuqAa2LLQ9YHlDlAQscV+Uu62LLA071gAWOO9X9njk4OS4jxqwCD3Fp6x7D3twZNy20Q5dH0bXXPw3PXOTApHAhlUvpDHY9vN+67S3oHfoFTh7fiuVxw/To0qX7YPZ9r/4fioAAjeBbesozIAd75x7Pgf6QB8wdWz8VfN5qhY8GDpuBZj5DkLTiLpHVrcVsgeMMzjBIU3hmFxLmUtDPMssDnuGBNu3vRK9+72NvznSkJT1R5qIk1cKcn5oZsmiCcQTlbAWftILjnDgDXAx0rVlyK44cWm3IWjypU5b0M3idkngfDuTFlbk0S4/BdXec714G5dUEdfuGf4eWvjGCY55c82rMG8Bx+c0h/cJgHoN6zjIJ1vPZzWe4Pesb/j2o76OEg95eX5748/qNumPoqCXl0oyZveaSlQocOz8vTnDdl8UnrmRutsBxtpffA/y7K3DqK1mTdY3lAU/ygAWOe9JuWmvxdA9Y4Lin77AT1ifFoigORJGgsowq7NETKR4DkVVo5EFEZsplpP0L2ds/190jMbdlggEBTxeF69j1MXTpWcRRS+qUzeufx4G98//gT/ILd+n5j2KqlUsXj4sscmbDKLWRt2xCjZotBFcyOZO1mC1wvGrV+oiZtEOUpbM83TLLA57igY7dHkeXHs/DFqd4xOhVqFu/I5bODxdUAnqbFEGmGNiGNX8rs3s9wHEG5QK7PYGsjA+xfdNbei/D4/ojBQOpGGxlETdvGYEBQ6eJqi5Wd1nmOh7wC7gDwf0/VES5IWct9VEoNElwTI15AzgeMXol6tbvJLLGmcVLLmhyQjvLQiNmoWmLQYppjUjLQYo70oWQNsSyP3pA6izk7ZqF1LWPON09jZsNwMCh07A7Z5pIIDlXuE/TnOyB4+y8ddsJ4NmMtif7Z2xMfkrTmFZjywOWB5R7wALHlfvKutLygLM9YIHjzt4BDxvfx3ck+oX/IA4ZLNc/f+5guSuU2S7b0t/Ajq0fG+YJ0geQRsCoA0+34JfRvvPfbGZpGrY4Ezpu0CgIwQM+FodHGisBMlJfFmXd5RlLRrsGv1ScYU4ORQJ1uTu+tzljycdIISI9aBJsgeOciNHZsyZsjzWE5YGbPMAyapZTb0l9SRy+y7K+g75FS7/RhnGwSgE0ii6THqAs0wMcJzc2ObJPFKRjRfwI626w44GosetQu66/eD+TVqcsk4KuhWf2IGFuX8unLuQB0pm17/ywCAQxIKTEOnb9PxG03rntM2zdWESxoNS8ARyPuS0LFJA/cnCVAKU3rHkI+3bPUeoi3a+TtIOsaGNlmz2rWasVRkxIw+VLpzB/Zgd7l3vdz2XlRHry09id/ZNLrJ80OKSd1MOUgOMcR9Kt8e+kblm/+kE9hrf6sDxgecCOByxw3LpFLA+4jwcscNx99srlZ8rDRcSY1YJORclHaDOfYRg4bDrOnd2PRXOozn5d9zVyTjz4kAt73i/tcO3aFd3HkPQcV69eRNysLrp98Oo+UZUdFlGl/F3wf1eoUEnsE2lyjh5ao7gn7jGzzes3LOIcPntmLzK3vAtmk16/fu2mfiQVw8mCLVgeH6l4nPIutAeOy6z/Bb92ArPcLbM84AkeII0U6aSYsc3ftbKsU9Cz6NT9KWRueR+Zm9/RfdkhAz8Hs8fLo9bigHqA43xOxUzKRqVKVRH7SzsRmLWsfA+MnrQTVarWg61nHp/346bsE8/933/2wfXrVy2XuogH+g/5SVRmpay6/6bKrfKm6Oc/WQS4bVVxlNfWG8BxGSRnkgYr5LZvelvwMzvHKmDclP2oWLGySBBgooASixqXhNp12gkBZgoxW3bDA/I7j4KlFC71NFMKjnPdDP4MGPITKlaqjvx9i7B+1f24du2yp7nEWo/lAZfygAWOu9R2WJOxPGDTAxY4bt0gunmA3NvknGb2zZqlExX1y2wXZr3werbT28izyawRWxQveowpy2A3b3hBCFK6u7HsM7j/R6hVp0jkLifzK2xNf1PxQa30+gnUdQ56Toiw0s6cysa2TW8KrsWSJkvG83J/Req6RzW70R44LqsKEmL7ofD0bs3jWR1YHnAFDygpy2/pNwZ9B32DA3kLkJL4Z92nHT5iPho16WOTvkMPcJwTD42YiaYtBiN55Z/Egd+y8j2gtFomcswa1KnXHkvmhYrntWU3PMCgUq3abbA7+0chqmemyX1ZtmAITp3Yrmjopi3CERrxq6pvM9mxp4Pj/MYZPm69oHBjdVuv/h9gb+4vSFv3uCLf6n2RpBy0JWRc1piyWoiBTgY8LSvygNxfCsQv+DXQI92iBhynAxo2CUHosJmoXKU2jhxMxLoVdzv8be+RDrUWZXlAZw9Y4LjODrW6szxgoAcscNxA53pT17Jc7+rV81gSOxDnzh5QtHweMpnBaFSJX1CfN+Hf8T5sS39dcF8bZRKEZ1YKs1Pc1ZhR2D34FRCkpnE9aev+DycKNumypLbt70anoKdRvUaRCCAzxAmSH85fLv6/e8hUkam+deNr2LntU81j2gPHKRjIbHUr20qzq60OXMgDw2JWoF6Dzlg6fzBOn8wsc2bUB4gYnSh+x414Zo26dYv4PY//rTtIq1SW6QWOd+jyCLr2ehG5Wd9i84Z/uNBOuNZUqlVviuiJGbh44QjiZnWzObn+g38UZfhJK+8WwsuWFXmgJHcvqTdIwWGmyeDG3Gm+oiJOiVFbgBoDZ07txJJ5YUqaFF/j6eC4FDgtOJKC7ZvfRljkHBw7vA6rEsar8pNeFzdo1ANDRi3GiYLNWBEfpbhbqRNQcHQ9EheNVtzO0y/09b8NIQM+FeLuFHn3RFMLjtMHFCkNHfaroBM6djgJ65ZPwZUrZz3RPdaaXNQDFP4mXSeDkXz+erJZ4Lgn7661Nk/zgAWOe9qOOmE9FDaMHLsaPHhvSvk7du38QfEsqtdsjlG3bBbXG0FtIUXnjOIbL7lQCowy68eW0JlixzjhQvLF9+z7jthHmpEZSORoJw8qP8xpPIxuTX8dnbo/jWY+Q7Bu+Z04dGCJZi/YA8dliToPBocOLNU8ntWB5QFX8IB8FhEAJRBaninNIla7JpZsj7tjr2g256eiQFhZphc4zoP+0FFLHAL/1K7Nna/nQZTig8w4ZuaxLZPc1kYJWbujH3mfDR6xABUrVhPTpzB1/KwiyjAzTHLBM/lg0ZxeioeU9HLUCVkws6PidrzQ08HxVm3Gok/Y1ziwdx4yNv4LI8an/o/qL1iVn/S6WCZasKouOfE+xd1WqlQDY+/YI66fNyPAY+j9FDugnAspVErBUnLtk3PfE80RcJx+qFOvAwZFzRbf/EyAWbP0NsFbb5nlATM8MChqLho36y90caiP48lmgeOevLvW2jzNAxY47mk76oT1SDoVR7NtJEC5JfVlQd+hl1Wr3gjRE7eLckE9xB3tzatzj+cQ2O0J5O2ahdS1j9i73GV+TkC/R9+30dI3WsyJZeIb1z2OM6dzDJ0jxTfbd/kbOnR+SPAflrRFv4fgXOE+zePbA8d79f8IbQJuF/vFfbPM8oAneEAp6C3FGVnto+fvu9KsdL3Ace5ZzKQdYKDWVqa6J+ytljU0aT4IYZGzFNFrtAmYIigm9uRMw8akJ7UM6xFt+T0xdNRS1Kjlg107/oPmrSIFJdyyBUNx6sQ2U9Yos4NJhUAgS405knHO/j0dHGelGivWJECj9NmpxvdqrmU2ZfeQfzkEGEk6rZTE+3CgFGWdmjl40rWRY1YLEDhxUYzpFEhm+dFRcJzzY8AtLGouatRsIZ5jpLi8eKHArKlb43ixB6QQsidXdcjttcBxL77RraW7nQcscNzttsy1Jty8ZSQGDP1ZANBL5g8SgotqTVKyFJ7ORULsALXNy73ex3cU+oX/RxEQoMegNWu3FllHNHIbkuPQ1c3P/3YE9X4VlavUASlxtqW/KQ5lZhpBh8BuT8E/sIj3mPOInd5GlynYA8e7Bb+C9p0fElkLZq9blwVanVgeKOWBatUbI3riNiEwy2ocW9Yv/AewYoQZiqX5/7U4Vj7T7R169ATHqS3BrMvUtQ8jb9dvWqbvsW1btxmP3mFfKaIxY0YXM7uOHUnGqsVjPdYnShc2aHgsSMEhaStkRmpG2lRkb/9CaTearpPAae6O77F5/fOq+uK3Cb9RFs/to+o7zdPBcQLR9KvcR/KPk6c6IbY/Ck/vUuVjPS6W3OGOfJNIeqnd2T8hPflpPabj1n3IigkuwlYFk1svEoAWcJxrJ/3ZoOFzhaArz2GkFCqPCs3dfWXN3zU8ICneOBtqmlDbxJPNAsc9eXettXmaByxw3NN21MT1FNGprBFUIltSX0RO5tcOj04wh6DOqoRxgv9OD+ve+zUEBD5gKD1I6XkOGDoNzO7KSHsF2du/1GMZhvTBw1+vfh+gSfOiDxJmoqUlPY7zZ/MNGU9Jp8zC69zjedSpF4AV8cOVNLF7jT1wvGPXx9Cl5wvIyvgQ2ze9Zbc/V7yAokq1avuZlr3oij6w5nTDAxRRpGifkgNHlx7Po2O3x3V/Rt7IfvxavBvKMz3BceoZ9Oz3LvbmzhQ6CZbd7IHifcn6Bls2/NOmixwVBvREv0vtkgvnDmFZ3FCRWenjG41+4d+Ld6faLG5HfUTas7Yd/iT2LifrG1XdDB4RJ4T4yEdNgF+peTo43ifs36BgOLnjySHPygpWWKxdNlkIuZttTOhgYocjAUvqTFBvQi3tjtlrNGs8GaQlnzHpDj3VtILj9AvPX2GRs8GqL1ZtrloyXpfqTU/1ubUubR6QVWyyF08OXnGNFjiu7X6xWlseMNMDxeD4hFsm4rU33sKC+fOQnLQOL748FT/9+AM+eO8dM+djjeVGHggZ+Dl8291anEmlZeqde/wdgd2eRF7ur0hd96iWrorbDotZjnoNupjKAX4jC36XyDxyRaNAabeQVwRvKrPbCV65EqUIRUH14j20B46Ti5IZgOTJJ1++u1lJntHVSybi6KFV7rYEa746e6BJ84GKReWkuKDegshBvd8QlSAUx6RIZnmmJzgu+ZgJYMbPDtLZq57RnaT+2r7pbWRlfGB3UWMm54iqIm/mMGZ1VfCAj4T45cpFMUJEmsbkAFL50NSIY9p1uo0LQiN/Q9PmYQ4BtwTyCeinrLofB/bOVzwNTwfHZUWATMxggI2BtvSUZ7F7538V+0mvC4eMSkCDRkEiQcARIXQK7jIrM2FufxSeMT/zXS8/6NEPRZqZTb9j6yfYlv66Hl26ZB96gOPymTYwYiYoCsvM8YTYgRZ3vUvuuPtPKqDTX8AqGWkLZ/fA+XMH3X9h5azAAsc9dmuthXmgB/4AjktAfM/u3RY47oGbreeSWrSKArnCeWBcOj8chad3a+peUpKwP4rIaQVHZTmlWXzjJRdPgVEKja5ZciuOHFqtyS96NybP9+jJ2aLbfXt+x5YN//BofkF74LjM/qMYV8qqB/R2t+H9Ubx04LAZYpw92T9jY/JTho9pDeDaHmjpNxp9B30rADACYbasfsOuGBq9TFQdkDtZLyPVFim37Anr6gmOc+4jJmxEzVotxbMtbe1j4v1k2Q0PSCqQ9ORnsDv7R7uuGTJqsQBKHAXq7A7g4hc0aNQTQ0YtErOUmcUlpyz9Q57eIweND0yOvGWT4AZWS43COQf1fh3+gferzjr3dHC8mEZlbl8UntmDDl0eRdde/0T29s9BMVqzTVZRUuiVgq9qLXjAJ/Dzn6R6n9WO4w7Xh49YgEZNett9D7nDWmzNUS9wnGNUrlwLQ6OXonbddkhaeTcO7lvs7u6x5u+CHqCeCXVNpJHKh7plnmoWOO6pO2utyxM9UAyODxwYhg8+/gw5OTsxe9avFjjuibut05oIsJJOhTx1evJthkb8iqYtwrF5wwvIzfpO02zJo0s+XUdFQrUM3qn70+gU9IwicErLOI605aGJh6fD+cuxdtntjnThVm3sgeOklWEpKYENAhzuZjzE8zBPu3TpJBbM7OhuS7Dmq7MHmLHNzG2KBm5a/5zN3lk9Mm5KnrhGz7LWqHFJgr/UntCn3uB4w8bB6D/kR1EifvJ4hjjcO5MqSjqfXN/1GnbB1o2v6bzb6rq7wTF/L/Lz4u027h36JVhdsGHN37Bv92y713vSBbyHWH3G7xwp1lh6fZKWaOe2z7B1440sOCP8UKlyTYy9vSgJwZHfVdIncb5q5+rp4HixUOl0P6GdUxxczIsDhS3NNAqTj7ujSLfHkT1mO6krcOjAUqxbfgN8MnMdrjBWSV/yu4jfR55qeoLj9JHU4iF1kz36LU/1qbUuYz0weGQ8+L1GCigmNKStexx7c38xdlAn9m6B4050vjW05QGVHvgD57ikVqlVq7bNbs6eLcQ/X3gOc2bPUjmcdbkneCBkwKfw9b8NJ45txIqFI3VbkjyUnD6ZiaXzB2vqV37cZW5+F5lb3tPUl9rGPEyPurWo9NrR7B+1Yyq9vv/gH0HqF4JmBM883eyB43Xrd0LE6JU4eXwrlscNczt3DBm5EA0a9yqeNwMeDHxY5r0eYGCOATo+9/j8s2dR41JASpKE2H6aK4DkWMWA0zRfm9nbeoPjHJ/PX1Y1kZqA3NDJK+9RxbFsz19qfl6rti969H0bzXyGmspNXd4cw0fMR6MmfRRTjclAr9J7SY1vXP1aeXgnVRUpq8qyxs0GYFDU74JqZXl8pKFLklUeZ07txJJ5YarHkoFxUqilrn1EcXtPBsdlhWHJwDIrJVgRYMaelt4EBhQZWCQdCmlRHDEKnEdP3K6rsLkj83B2G/Lrk2f/9MksUd3qyaY3OM731cBhv0CPs5gn+91am+MekJRtpN1jRdOOjI+wbdObjnfo4i0tcNzFN8ianuWBEh4oU5CTILnFOW7dJ2V5QNKp8GdUl6bom57Gj3p+3K+IH4ETBekOdy15G1cvmYCjh9Y63I+jDSWtgD3OXUf7d6QdhRvHTM4VTUldc/HCEUe6cas29sBxGchgdunCOT3dam0sfx1zexGnKMVf23d+CHtzZyBt3WNutQ5rsvp6QIr2KeXMJZDM53ryyj8hf18RhYQWI+0D6R+UcH8bAY5z7syIJ080s55p6clPY3f2T1qWpbotNTSopSHNUVBT9cA2GsiMfqV8xBQqpGCh3pz0eq7JiL5kyTeF6ZbHRdjMOmU2N7O642Z1NpSirKXfGPQd9I3I+E9OvFf1spu2GIzQiJlCl6I8sL+sTj0ZHJfB8ZIAKjVPRk/aKbiWybVvpkmROq2VbMV0Py5I7WeWP9sE3I5e/T/CnpxfsDHpcbOGdco4eoPjJb8t42Z1wcULx5yyLmtQz/QAM8VJgXfp4nFsWv/8/74xYrF+9V88c8GWIKfH7qu1MM/0gCXI6Zn7asiqStKpUNyGIjd6W7fgl9G+89+wN2c60pKecKh7CogxKk0zSyir9ESl0N3xY2lYuXCUQ+vQu1GrNmPRJ+xrXQRU9Z6bUf3ZA8c5LrNcyU3Me8WdrHnLCAwYOk3sJ8G/iNGrcPnyacyf0d6dlmHNVWcP9Av/D3x8RyE58T7k58XZ7V1S82xLfwM7tn5s93p7F8hs2mOHk0CRO1tmFDgux6QYG0XZaBTXY8DAaCNVE0X9mAVKI/85qQ5c4XeTehN8jyulGWD2PQPNpKghSOwN1rbDn8AAE98Jy+OGi+xJWzZw2HQ08xmG9asfFEEEo6xT96fQKehZ1bQocj516wciYnQi1AZpPBkclxmyRw4mYs3S24q3TmY1Kv090WvPycHLwAzpBUgz4KhJuh9n8aY7Om8928n3Gqmsdm77VM+uXa4vvcFxLlBWGVGLh5o8llke0MsD8uxC2lNSszqrUkev9Sjpx8ocV+Il6xrLA67hAUuQ0zX2wS1mIelUjKSgoAhM1NgkURIaN6srrlwuVO0bmd1+7EgyVi0eq7q9Hg1KZl4s/r03zhYW8fo60/qGf4eWvjHYkvqS4FD1BlMCjo+9Yw8qVaqBuf/jHHUXv0jqoKyMD7F901uIHLMGdeq1t0SU3GUDDZqnPNTy2cdnoD2TdAvklCa3tFbz879dZG0rqWIwGhwNdIYYAAAgAElEQVTnWngQY8Yts3sLjqQgaeU9ImNJbyNHdbfgqfBtd6vo+szpHKQnPSX2gDzC5MCNnd5GvNucZZLuRimfseS55pw5d083ivdRxI+mNLgU0OlBdA/5l2ZA055ve4d+gdZtbxFJA0weUGuSboNi5/NndlDc3JPBcb+AOxDc/8ObnlUUJKzfsJvpQrQMfjAIopUOsHGz/hgUNddwWgxWI7byG4uD+xNw0QHxUMU3oQMX9hv8X/i0HiGqLJToKzgwhMs0MQIcZ9UTq59YccXkC8ssD+jlASl6TGrP7ZvfRsxtWbh65Rxif2mr1xAu148FjrvcllgTsjxQrgcsQU7r5lDkgeYtI0GqENrS+YNw+uQORe0cuYgcnsw+dLQU/gZo+AG2b3rbkSno0oZZ2szWJo8a+dScaQRmRk/KEiDwwtk9cP7cQWdOx7SxlYDjIyeko0YtH8TPDhJUEO5iN6iDbsHRQ2vEQYYHGr1ATnfxgzXPP3qAwUUGGRNiB6DwdBGNki3Tm2NXZi3y2ZuV8YHNsc0AxzmBOnUDMDBiJmrWaiWefUkr7hQ6A3qZf8f70LnHcyAlA6302m/sSX8Uni6iQjLbJIXUhfOHEf9bd8XDUz+DbdmGbT3VSAc0NHqZoHVjBQUrKZSYzMhWQiOkpL/yrpFUGYmLx4ggjyOmVAugZN+eDI7LbHwZYJbr7hf+PXx8o5Gy6n4hrG6WUSydwUrSgJAORIuRco1JGkb+3oYPn4dGTfvi0sUTWPBroJbp6t5WJguQn5/VEp5sRoDjTZoPRFjkHPG+Soh1jP/ek31urc1xD8hEO0n9V1zR9mugeJZ4olnguCfuqrUmT/WAJcjpqTur47oEncq4dahevYnmjBYl02LmXcjAz3GiYDNWxEcpafKHa+Qhkrya5Nd0ljFrhdkrDCQwoOBMa+kbjb7h3zvsU2fOXcvYSsDxYTHLUa9BFyxbMBSnTmzTMpxpbYsqE3Jx7dpVzJ/RDlevXkTtum0RNTYZ165ewLyZHcWflnmfB9QeNGSVy7WrlzB3emvNDpNBQWahM1Bjy8wCxzmHqlXro2/4NyCvLykzNqx5WDPwVa9BZwT3/xj1GxWBzQxSbUx+EmfP7P3DsmXAd/WSokCWM4yZsMyIVSuy5gpzN9pflSpVQ/iIOJEtTL7ntcsm4fr1a4qHHTVxq/g+WhI7UFQMGGHUC2GmLivqHM3SJc8r+V4T5vZF4Zk9iqbpyeB4z37voW37u24SKJf0fkbRB5bneIKRBCX1+HaV4uvUIGEVj55WoUJF9Av/QYi7S3MlbuoKFSph3JR94J+//+yD69ev6rl8l+vLCHCcz8SYSdngn1qeOS7nLGtCTveArMwh7R7p92Siz4qFI3Hi2Eanz8+ICVjguBFetfq0PGCMByxBTmP86lG9Bg/4GH7+k3HqxHYsWzDE8LVRTG3UxC0CzFALWJakM3F2CTsdRWEnZhMunR8Oij45y2RJtjfwL5b0sRJwPCxylgDMnAlcqb0viqmDDq/DqoTxxc3lR2ZK4n04oIBvWu241vWu7wG11Blc0YgJaSKretHvIaAIoRYbMnIhGjTuBSUHHTPBcbkmUmCQCoOmJkO4pE8IUjJTPCDwAfHPFy8UICPtZeTtmlWm6xjsZdB3w5qHsG/3HC3udbitFPtTK8goAURHK7kcnrCJDWUmW+Hp3VgeHynEGNWYbL95/fPI3fG9mqaKriXwTgBeK2/94BFxaNgkBImLYlBwdIOisT0ZHJdixEkr78bBfYuL/SF553dn/4j05GcU+UmPi6LGpaB2nTZIiO0H3otaTK6BmgcbVv9VS1c3te3R5y2061gkCkuaHn7jKqXx0nUi5XRGH9KX9CF96elmBDhOn4VGzELTFoOQuu5R5OX+6ulutNZnkgfGTckToumk9+LzQyZUGK3bYdLyyhzGAsed6X1rbMsD6jxQJjiurgvrak/2gORk5BqXxw3TtRTdlt+6935NAA/kJNu0/jnFLqYwFgWyePDjAdDZRnEliiw5CsLoNX+ZdabHoUuvOZnRjxJwXH6YmV1CrWX9EuArzU0qBQgpoEQhJcu8ywPVazbHqFs2C/oLNdQZA4f9AorTJa24S/DHarGY2zJRtVpDKMkkdAY4zrVJnnX+/XD+MqSselAxINrSbwx69HkD1ao3EW4i/cHWtFdw6dLJct1GUVD+bm7d+KoQVHSGSZFotWBZQKe/onvIVORkfoUtqS87Y+qGjhnQ6S/oHvIqrlw5ixVxUQ5lfvu2m4iQgZ8JgJVAq97WuGk/DBoeixMFmwQPtqPG6jFWkaUk/hkH8oq41e2ZJ4Pj5XGLN20xGKERM0XlIbO4zTJHaG/Km1ut2r4YPn6DCNzFzeqs2xI6dn0MXXq+IPpjdRDfGwz8MYjAYIIrmKSBPHRgKdYtn+IKUzJ0DkaB43Kv9+bORNq6/zN0DVbn3uEBWeFa8htVDRWfu3rJAsfddeeseXujByxw3Bt33c6aWdbZqs14tPIbU8yhmrnlfWRufsc0b1FYkJyBajOlpEI9Ob7J9e1sa9o8DKGRv+Hc2QNYNKeXU6YjDwpqy+mdMlmdB1UCjvfo+zbadbjHpQ539twgqWBkWaK8ntm/zAImbcT8mYFC5MYy7/GApM5QK5osdRoy0v6F7O2fO+ywylXqYMzkHAE0zvulnd1+nAWOc2LMbh8w5CdQSJNUGOQht5WtWbN2a/Ts+44Ag2i8ltzASkRPGehlwDcn82tsSX3Rrl+MuEAKR+ZkfYMtG/6peAhZpcKgCYMnnmSSV5drWrf8Thw6sMSh5VWr3hTREzOEgPi8Gf4O9WGrkUxSyNv1G1LXPuxw/0G934B/4J/FPch7UYl5MjgePXGrCHKV5uWWAA7pkRbP7aPETZqvkffQhQtHET+rq+b+2AFp1rgWBlQYWNFqrCBlJSktI+0VZG//Eh27PQ6CW2qfK1rnYqv9jYDev4UAvaebUeB4w8bBGDwyXmjxUJPHMssDWj3g4ztSUDIdOZiINUtvE92pEXHXOr6z2lvguLM8b41reUC9ByxwXL3PPLJF/YZdBSDeuu0toDCVNPJ+swycWWNmGz/K+HHGjAVmLigxWdK/ZukkHDm4UkkTw6+RB7CVi6Jx/Giq4eOVHkDS4pTOMjZ9Ik4YUAk43inoWVCYa/umt0BhLlc3ZuUyO5cA+NxpvjdNV/7eeHKJoqvvkbPmR+CWWeB89vEZqNT0OpxIcJ7c/aTEsmfOBMc5NwpNklqhQaMgEYhdv+pBHM5fftO0O3V/Gp2CbtArMFDMgLFSa+kbg77h34lsXWbtOsOY7clMQLXPudp1/RE1dp3HCbMxkDg0eomocsjc8p7QU9FiEaMTQXFONZQlSsfrFvwS2nd+WCQoqLnvSvcvgcwdWz8B+bSVmCeD47YoqByhp1Liz/KuYbCO368nCtKxIn6Elq6K2wb1eRMUC9ZDFL55ywgMGDpN9F0yyHcD7FL3ztFlgeV00rPfu2jb/m63SnjQ4g+jwHHOSQq7UpTTWWLSWnxjtXUtDwR2e0JQ0uVk3ghcNW42ANQ2YaIB6Zk80Sxw3BN31VqTp3qgTEHOpHXr0H/AANSqVbvMdZ89W4h/vvAc5swum1/TU53laevi4bB1u1vh2/YW1KnXoXh5zHLO2/Wr4E8tPJ3rtGW3Cbgdvfp/hIKj65G4aLTdeVSqXBNjby/iaWTWIrMXXcEkBUZu1nfYvKGoHNVMi5m0Q/C3O5v33Mw1y7GUgOPFGZVuQhvg4zsK/cL/I4Tj1iy9ueRbric/Lx7JiUW8oJZ5hwckvYPaDFOZIaYVmPHxjUa/8O8F3z157+2Zs8Fxzo/cl8EDPhSBYVpJXYYmzUNBoKV2naIseIpppqc8oxokaNSkN8JHLHAq3Zek+NqY/BT2ZP9sb2v+8HOzgUJVk3Pg4oqVqmPIyHghxJyftxDJifc40Msfm5B6hhmrRgShKexNge/1q/+C/XtiHZ6rzPwlfzB5hJWYp4LjNWr5YOSE9HKzYqV46eLfe+NsYZ4SV2m6RgbQ8vPikKzg2alksGJtEo2gU4NGPTFo+O+oVKkG9u+ZCwbepdWpG4DIsWtx/txBLJzdQ8m0DL/GG0SESzrRSHB8wNCfwepTT9acMPyGtAYo9kCfsH+jVZtxSFv3OPbm/iL+3VE6QHdyqwWOO3e3GjXtC5/Ww7Ene7pD1HnOnb01utkesDLHzfa4k8erWq0BWvmNRet2t6BRkxvlouRL5Ufvvl2/KRZqMnopPMDGTNwGip8tmReKM6eybQ4pBceodk0xOFexBo16YMioxbh44Zjg4TXTpE8Kz+xCwtz+Zg7tEmMpAccloLg3dwbS1j3mEvO2NQnJx79909vIyvjgpkuZDTvq1i3i31niz1J/y7zDA+07PwRSpKjlhy6mQ9FIC8HsVma5Zm//AhlpU+063RXAcTlJydfP/ycvN65fKwbML108LmgElFYwlV54zVotQbCNYqcUPXWGSYCVQDABYTUWNS5JBAj4DuG7xN1NHtD5TUHKCT0C6UbqnZBijlRzagXKS++T5NIuWdJuby89FRy3l6ltNsAqn92kKuGzRg8rKVDv6LdA7brtMHhEPHh2KI+DXQbPHB1Dj7WW7IPfP/wOKk2Xo/c4rtKfkeC4TLZgUI7BOXe3KlXqgkBZo6Z9cOniCfGtYpl5HpAVVqyOYTKGtGK9hel+uHb1gnkTMmkkCxw3ydElhuE3WUvfUWjReoSgT6RZFdXm74M7jmiB4+64ayrnTJCZIkwUzZF8qbILAYjvnq1ZhE3llBRfTo7Xth3+9IcSrPIas1SLJVs7t30qsv9cyaLGpaB2nTaC6sBMuhfJp+0qHOxm74kScFyWC7sLp27E6FWoW7+jqKZgVUVZJg/25KdlFrFl3uEBqblQMvtZ6cop5MkMHmb/MQvQESsuZ095Frt3/tduF64EjnOyfD/2HfQ1GCyQxqAZwSoepLWYs7OvmbnODHZbz43y1kfqGWah6iHYqsWHerSVICRpdFbERaLwzB49uhVZtWPvKOpr3owAxQKvSgaX907sL2016UjUrd8JEaNX4vTJHVg6f5CSoeGp4Di/iSlQWl6FVXD/D0Gu941JT2JPThGdiJFGUViKw5Ijm5QDellY5GywAiZ55Z+Qv2+Rqm7Jx06qF+otUMdi1eIxZQaS5DeJXtzmqiZZ6mIm01CA3ij+fy1zM6qtkeA4q2uocaMnF75RfiirXwZ1GzYNERSdFDYm9ZU0UhMumh0s1maZOR4oDqSVqu6WzxBPrXC2wHHj7y8Gg5u1HApWsLZoGSkSK0sbE8qYWGaZ5QFbHigGxyfcMhGvvfFWuVQqJTuxaFXc46Zi1My33S0gDQMPbtJIx7B/zxzs3zNPl4wpI71Rv1F3DB21RAATC3698VFT1pjhI+aLbPi1y+7A4fxlRk5Ldd+de/wdgd2eFJmHZqq+R0/cJiKmK+KjQP54bzMl4LjMICMfPHnhXdkk3ziFNgmUlGftOt6LHn3eEkEvTxPRc+X9cfbcpL5AyZJVpXMKi5wFVpqsXXZ7mbzbSvqRfSgNAroaOM41kiag/5CfgQrXsTHpKRw7vE7J0u1eM2riVlSn+N+srk45jEtxPkeyvyU1mBThs7tYF71AVlJxelru8/KWpwWILK9PBtUZXNdDFE++P1gpuGBmR0W75KnguBTJzd3xPTavf/4mX/B7jd9tZiUW3KjsuFcA9npZx67/hy49/yGClekpzyrulgHC8OGxgnqItDIrF47CxXJAROopkBaGVD2k7HGmyUpNfu/yu9cbzEhwnP6LuS1LVA64A3DJ/W/UtB8aN+2DRk17g0K3pY3c6ZUr1xTJAHpWanjDvaZljUzqIQjO5wnpqkpa/8E/okXr4Q4F8bTMyYy2ter4IXz4PJw6tRUpK/+qa+DcjPm78hjVqjdC85ZRaOkXAya6lTQGdA/uW4j8fQtRp14A+oR9rRuNniv7xJqbdg+Umzm+dMVqHD58CFMm3+C0HTgwDB98/BkSVy7Hs08/oX10q4diD/BATnEo8mZfuXwGV69exLVrl8Wf169d+t//X8LVKxdw/Tr//RKuXbuEa+K6//38f3+vUrUeWvqNETzT0viQYIY4/7tw/rBbeX5o9FJQ6G3D6r8WlbuXYX/I2nIhvnE5VSlqxr1lVpkZxiyJQcNjce7sfiyaE2zGkC43hhJwnGXDUWOTBF2Aq1PPtPQbjb6DvrUruMiACAMjtPkzO+DypVMutzfWhPT3gOQHXbf8Thw6sETVAHpkLg4ftx48CCTE9kPh6SL9B1vmiuA458t3qN6/M/I9tjxumMjCNNtGT84GS8oJihIcVWMUt2NVwO7sH4XInTsa70sG2rm3jlRWKFkzBU8pfFoe4Kqkj9LXyMqmI4dWY82SWx3p4g9tisvXp/kKUWd75qnguKyyKU+ssnXbCegd+qXgeDeDToL3JpNB9E5kkCLJaimdwiLnoEnzgSIxZeWikTaf51LU3BWqNqkd0Tv0C+zbPQcb1jxk7/b2iJ8bDY7L4MeWDf9ETtY3LuMzZoqSHqVhkxCRFU4wnBoiJe3q1fM4cSxd0IUyAabgaCpIk8Z7m/c4KTwWzgkWtJeWGesB4hJ9B31TZtKODMBvSX1Z0AJ6krFai1VbNE+ovnP23pCm0Md3NCgGzd/7ksZq6gN745C/L07QGEpjxQgpfdzhnO9s/1rjA2WC48wif/Hlqfjpxx/wwXvv/MFP77z3IcIHD8WTjz2CtWtXWz7UwQN8wRMYJ4CqpxEUpagmecTPnM7Rs2tT+5IHc1uHw6bNwxAa+ZvIjnbVbJGh0ctQv2FXIVRHwTqjTYJd3pwZoQQcZxCJoqUXLxQgblZno7dFU/9Bfd6Ef8f7sC39dezY+onNvmQWL3nUSQ1hmed7gNoGzJxypLy9bfu70LPfe4JCgFQCjpha6hBXBccdWbu9NpKaZN3yKTh0YKm9y3X/udq9KTkBCSRQkHT1kiLhUnczCsWy3PbA3nlIWfWAIdOXWat6HsBItcF3+a6dP2BTyt81z3vEhDRQjJ3c9yUPj+V17KngeMjAz0C9kfKynYtFik3SsIm5LRPM7Oc3CL9F9DRZtaI0aMkMu1ZtxoLA4qrF43CiYJPN6VBgjzz+pG0hfYszTQL1RgjjOnNdtsY2GhwntSUpLp29v+SRJxheBIT3FUlTpY1Z4cePbcSJY2koOJaKkwVF+jtlGZOH2JcrBHVc9d7Sc16dgp5Bp+5Pi7MLzzAljecanm927fgPNq1/Ts9hndpXr/4foU3A7cVz8ObzuJaNqNegM3xakz98pMBRShq/p4mpHNpPbbfy351avoG1zN1q634eUA2OP/n0s7jr7nvw6tSXMWf2LPdbsQvOuF/4fwT1CelOdmz9yO4MK1SogkqVqqJixaqoWKma+LMS/6xUTfxZoUJlHD28FgVHUuz25Q4XsLwzZuJWkDs9YW7fMjlC+cLli9eVXzxS8C0/Lw7JifcZ7vqRE9JRo5aPoAphxoQ3mhJwnH5xl5emFGZjifPxY2k2t7RNwBT06v8BDuevwNplk71x+71uzWqBr5IO4mGTpZ/MsEpcFKPad7Vq+2L4+A1llsyW15k3geMMPDAAsTH5KezJ/lm1f7U0YPk4OeVZNUaROrUmRX4dba92PCOujxq7TiQgKAUIHZ3D6Ek7RXb6wjk9cf5svqPdFLeTuiF6cVEPHhEnMi35O87fdXvmqeA4kymYVLFm6UTx7V3aZPUVs0wX/FqU9WeU8dt23B17RRbr3Ol+ug8jAwEEnQg+2bKg3q/DP/B+cYlS6iHJS01gMiHWucLvEthnAIyBMG8wo8FxWV1JnYb5M9o7xaUUJOb3b0nj70vB0TQcP5b6h6xwpROUQV8KMrO6VquuiNJxvfU6ajxQ62HDmr+JKvaSRr2XgcN+8ajzCkFxguOs0Mra9j46d3vBpRP4XO2+5JnEp/UI+LSOFhWp0kgregMQX6KYHjhyzGrUqddBs7C5q/nJmo/+HigTHJf0KTk5O/9Aq8LhmTkeM3oM/vnCcxY4rsN+dOjyKFjeee7sASyPixDlXpbd7IHgAR/Bz//2MiPOvFoKELpyyRKBagLWNL0Fu0p7rEGjnhgyapHDYIin3INKwXHJzU5ee1f9QCZ3YvTEDMVCUzIjnnvJw731bPGUu7r8dRBgIdBCgIUHRzUm7xfSiZCKR61JPmcCTQSclJg3geMygJu55T0wq9FMY6YNK5dI50JaF0dszO3kaa2FeS5IW6ZkPWYFQEl7RforR3j/y1pHaMQsNG0xCHpVHEiAggF6BurtmaeC45Fj1wp9gSXzQnHmVHaZbhh7+25BdWj0Pc95cD6Fp3OREDvA3pao/rlvu1sRMvBzuxok7Ts/jG7BL4n+U9c+IipPlRipLMZNyROXzvmpmZImhl0jKzSdRV9l2MJsdGw0OM6hR926BQySOlKVpodPuodMRUCnvwpKwYP7FtvNClc6pswez8r4ENs3vaW0mXWdAx6QAeplC4bi1Iki2kdpteu2BXVRKJDNJDh3N9KoDI1eLGh+qDN2rGANho/eKJZl9Pnf3X3H+ct3llwLz68H9y3Cgbx41ZSRsg9JD2WLotcTfGetQbsHyuUcJwg+fsKt+PKLT4upVaRoZ3r6xptAc+1T8b4eeODhwYdRxZULo3HyeIb3OUHhipnpxIynshTTS36Yu/pLR36I8WVJcU6jjAccHnRys77F5g3/MGoYl+9XKThuVlahFofJ0mVySZNTWolJDur05KexO/snJU2sa9zUAwQuCWCyFD52ehuHVhE9cSuqUTTyt+6qtSlu8FL/BN5vSsybwHG/gDsQ3P9DkTXO7HEzrWmLcIRG/GpXq8DWnCQnMoP47vatUrtOO0SNM0dXok37O9Gr3/vYv2cu1q9+UPM2ywowvTLeg3q/Af/AP4vvAn4f2DNPBceLgz0zAsoVSJNcsWWBOfb8pubnTVsMRmjETE2/n7bGoxAwqVVsCXmXBCMc4eSnaCzFY50t2igDxHwH8l3oDWYGOB4y4FP4+t+GrRtfxc5tn5nuVkk7tGhOL5FMppfJoP6Vy4VYOKeX7lojes3TE/qxF6C293N38QGr3akxw+ehpCmsUbcx+of9iPoNgy3ecQUbSZounnmpHUGtm2OHkxS0sn2JTFCxAmGaXenxHZQLjnPlEgyvVat2sSNmzphuiXHqcFtQUIAZDlQAp2gMHwCW2fYAD7c85JbOeJKlcVqy4szyfbuO96JHn7dw5GAi1iy9zbBhJb0C+WHJE+utphQcl6XmrkxBQ8CFwEtG2r+Qvf1zRVvq5z8JwQM+EfeAu3IFK1qodRFk5o1a4bWSrpMibKuXTMTRQzdTDdhyc7fgl9G+898U8eHLfrwJHJfCiofzl2HtsjtMvWMl8EVBa2bNOGKSrsAds24o3NQv/Ae7mbOO+KV0G1khVlSB0RHAdYe7JU3e2DvycP36Vcyd1lr8qdUCuz2Bzj2eU8yz64ngOIVpKVB77doVzJ3WslyXSp0Ao3VipN7D3txfRMWBESYzqsv6JiS9zIBhM1CxYmWHxWRlIJ7ipRQxdYbxXDViwkacP3cQC2f3cMYUnDKmGeC4pIgw+uxSlgNlYohRFIGDR8aDGgPexFNv9o0qhYFt6XHIc2t59Klmz9nR8eR749SJ7Vi5cASuXr0IguOBXZ9EW/8/uzT9q6Nr1rNdhQqVEDMpSwjIL1swBPSjHkYdDX7HOls7QY+1WH0Y6wGb4LitoUm9MvW1N/DFZ59Y9Coq94gHHgqnsexGL5EllVNwy8ulMFXpDyQZDczJ/BpbUl906bWRuiD6tqIH/cLfgkQmvN5Wv1F3MMuP9CBFXJmOH871npvZ/SkFx+XHjCvT8rDkkAComrLWylVqI+a2LHHojZvVDRcNuN/M3lNrvLI9IKtrThSkY0X8CIfcxMAdA3hbNvwTOVnfqOpD0jWo4Xr1JnBcUpvwQ58f/GYay9FZls495d46YsVCd06ghXFkviXbSPo6szRJZBYtxcEpEu6oyXtGT4FP0tORpo6UGaTOsGeeCI5L/mJ7HNlS1Dwj7RUBaBhlDFYwaGEk5RLpG/l7UFp8kKAVtSZIH0O6iuTEe3D9+jXVS5XBUWcCjDcqZJRTe6leqAs2MAMcZ0UZK8sI9M2f0U4ElswySS2VkvhnHMhboPuwsnKDAc2Fs3sq5jDWfSIe3CHFj6l9QOFEBhvLMrnPa5ZOElU07mjtOz+EbsGviHto6bxBOHd2v1gGwfFmPoPRq/fnFu+4nY2lSC6r7C+cO4T42UG63QZ16wciYnQiCk/vFtozllkeKM8DFjjuhHujd+iXaN12ghDUW7V4LK5du+yEWbjfkIwiElgm0LdoTkjxS0dmOyYn3ov8vHiXXxhFRyg+orSsWe2CuvR4Hh27PV5czqW2vSddrxQclyWjRtPdOOrbYr7xK2cx7xd/VQGPfoP/K0RNNm94AblZ3zk6Baudi3uAe8y9Prg/QZRtOmL+He9DUJ83RRljevIzqrqQmYlqAEFvAsfNFPgrvXFdev4DHbv+n+BUZUmpI1acfb57jqh2cyejKBYzHzcmPSnei0Zbz77voG2HP6mqoihrTjLTScvvdOl+pfAZK0NYIWLPPBEcl1QKxw6vw6qE8eW6ICDwAXTv/ZoQsaSYpVEmBTPT1j2GvbkzDBmG2eEUIS1ZYcmy/8EjF6JqtYYoOJKC1UtvxbWrlxwaXwZdDuydj5RVRYKeZhvpgkgb5G1JR2aA49xLGfRblTBOF5oDJfdHzVqtMGJCKi5eOI6Fs4MMOy/L7PHtm95GVsYHSqZmXaPCAzI4l7nlfWRufqfMllK0fFPK38XvsLsZE1QGRcUKjKJ0ohXB8Wo16mNwRCIqVKiI+aTzunLW3ZZoynzlvUIqUKUUjRLBrrYAACAASURBVEomRr+Pm3JA+H/u9NYOv+uUjGVd494esMBxk/ePByYenJgxvHz+EEMyh01ekqnDycACP174EcOXELkjyTvuymKKJZ1E3j6CsQyOrFw4Snf/SfqZtctux+H85br3704dKgXHu4f8CwGdHsSW1JeRk/mVyy1RZl04ApK0bjMevcO+EoffxMVjXG5t1oT08YDkOtZSmt+keSjCImfj2JFkEbhVYxRk43NYje6DN4HjQAWMm7JfvLNI5WBm5p0UtNaiPSBFnpkJzQCIO5mkzeI9zXvbaGvpGw1WUhw5tBprltzq8HCduj8FZuzrmfFer0EXDItZjjOndmLJvDC7c/NEcFzSjZHO0Fagp0WrKLCqjN9R/J4yyqSgPO8V3jNGGJ87oydliwzx+FldRT0hK1hJRXL6ZBZIKUfeZUeNtBQEGNkXecedYZJPnxWkrCT1FjMLHJfUfmZWB3Tp+QI6dn0M2du/QEbaVMO2tJnPEAwcNkNwjlvZ4/q7WdIu2aos7NDlEXTtxd/dr8RZzJ2MAcbIMauEZg9pL0l/WdIIjlepVgM9g79Eoya9hW4U9aMsu9kDUusjaeXdoppJT4scswasHPMmwWY9/ectfVnguIk7TbqLwSPiRdQqcdFoAY5aps4Dkl/8wvnDglOwUZM+ovzm9MlMLJ0/WF1nTrqawnkxk3agYsUqYg3kR9TL6tbviIjRq8QhZ/7MDrpwlOo1N2f0oxQclzysOzI+wrZNbzpjqjbHlJmPjoD3FStVxxjeb5WqWdQqLrez+k2o+B7e+onIWHXEZOl0ESVToOIuqlVvhOiJ23Hp0kksEDzLysy7wHFAcmou/r03zhbmKXOSDldJ2ihSJuTnLXSoR1I0jZmcK94t82awesV9jPPm/AkKGkFlVtoTVarWw+hJO3Dt2lVBQUAqAkcsZODnYMa+lqBG6XGLKxgU/q56IjhOsI2gW1kgRkl/ye8pPWltyroPRoxPRc3arUWpN0u+jTL5HGBVUNsOd4OUKhQ3JFWbVso1KQitJz++Wj9QdJjUKt6WGGIWOC65vx0JnqvdS17Ps/KoWykS3ggJc/uDv4dGGkUU+TvB76cdWz8xciiv61t++zAgy8BsWebjG41+4d+7HSc079PQiN9AfOL40VSsSiAjwB9phyQ43rrlnaKy2967x+tukP8tuHrN5hh1y2aR1U0MQ29R5b7h36Glbww2rPkb9u2e7a1uttZtxwMWOG7SLUK1eL54+Ytv0Rtoc7rkXmbZUr0GXdG5x981calqm41jrfsO+hYt/UZjW/ob2LH1Y8c6KaOVzDTLy/0Vqese1a1fd+1IKTguBbF27/wv0lOedbnlDh+3HrXq+Dkc7e476Bu09BuDLakvISfz3y63PmtC2j0g+XG17jE56ikUHTerCy5eOKZoYjeyijcJoEWpeRs4Hj5ivgjoMjhecHS9Ujdpvk4vweHoiRkgxVPcrK6awTTNi1LYATO6Ym7LVB24Udh9uZfJMn0t/KlDRi5Eg8a9BPUHKUD0sgl3HRZdzZ3mi2vXbAP3ngiOF2cY29FWYCUMK2Joc35qppf7b+pH7oeRY3BQSZslJ3D58mmsiBuuG+hIUINnnITY/iCfu9kmAbhFc4KLaRfNnoMzxjMLHJfPUq4xdnob3YGr0r5r0Xo4+g/+0bSqR0k5xe+ehXOCce3qBWdsp8eNKQNn9p6jsqrJnZLduCapx8LA+7L5Q3HxwpGb9lCC49UrtwODeFq0gTzuBimxIHkWN0p8V2rUuWoinCfvrTutzQLHTdotWTaZt+s3pK592KRRPXOY9p0fRrfgl0S5TeUqNUD+SKOEWozyoI/vSPQL/wGnT+7A0vmDdBuG5dL8wDCiHEm3SZrYkVJwXGYsOJMvszy31Kjlg5ET0kW5JyPpjpgs82dWA8unLfM8D0jKKdIEkC7AURsUNReNm/VXBcjJjLL9e2KxfvVfFA/tbeC4DFKRk5fPGrNMcsVqzUwtvjdMoifRwz8sYQ4fsUBkdJn57JMHZi10AKMn7QSz0IvElG8+cDvqnxETNgo6jUW/h+Bc4T6b3XgiOC7Fg5MT70N+XpzN9Y+6dQuq12ime5WfHJR9cwxWQ8b/1t3RLVXUjoLeTC6hEfhLXDxOgDR6WVjkLPE97gxhcxnIYLCHQR9vMrPAcfpUUh5Qr4C6BUaarHSgcDAFhM2wIaMWgcF+o0V4zViLq4zRoFEPQeFkT4xcguhXr5xD7C9tXWX6Nuch6Xh4kS0ufgmOnz1+DGPv2CP6nPdLO4t3vJR3b2hk/QO5Wd/qfg8wa5zZ46ygZCWlZZYHyvKABY6bcF90D5mKgE5/xakT27Bi4SgrGq3R57IsmN2w5KZSpRqIm9UZFy8UaOzZ3OZjJuegcpU6AhwnSK7VKK5EEIQiH3zpWgYoBccl1/KRg6uwZql9kTIzfevnPxnBAz62qfJubz48OMZMygQ/Pr0tq8qebzzl56ERs9C0xSCsWXobjhxMdHhZPfu9i7bt74YaUaQblC4fi2oYpeZt4PgNbQNzKzgkrcj8Ge3BbFFHrVf/D9AmYIppwpaOzrNkOykUSKFDCh6aZY2b9hOUb/zuW7ZgqOphWW04auJWQ2hsZEZ64qIYFBzdYHNungiOq1m/rPYwiq9ecnWblUnIrPmWfjHYmPSU7py3Qb1fh3/g/di68TXs3Pap6nteS4N6DTpjWMwKt6JY1LLekm3NBMdlhRorXtW869WuVdIrXLl8BgtmdTXt3NzMZxgGDpsuKqMWzgkxbVy1/nGn6+U7eN+e37Fh9V9tTj16Iml0mohAIQOGrmwMMA+NWY6qVevbfeZJcPz00X0iWM+gvbfRPynZy7G37xa6GEZRD9ap1wGRY1aLyiZWOFlmeaAsD1jguMH3hczY5IF02fzBgt/PMu0eIC8Zs31pSoWltI+qbw8EPAl86vWR2bHr/6FLz3/gwN55oOiJZcrBcVnOZy+zwRk+pXgrRVy32CkBtze33qFfoHXbW7B146vYue0ze5dbP3czD0SMTkTd+oEOU+/I5QZ0+gt4AM7d8T02r39ekRckJ/7GpCexJ2eaoja8yNvAcVn1pKfAoj1nU9uCQqDAdcz5qbm9y23+XApmacmG1jQBBxqzyox+15vCzN5USgsgquU6l+D6yYItWB4faW84VT9n1Rqr15RU3HkiOC7pP5RkzkvedwZWGGDR21q1GYs+YV/jQN4CsR/ubO063IMefd+GM2j9SBvHyhxWArAiwJvMTHDcp/UIMLvzRIE6CjW1+yEpInft/EEE6s00yT2ulaLOzDm78lgyKWD7preQlfGhzamaLZ7tqN/4XRU+Ig4NGgXhyMGVIH2aLSsJjvOczvM6z2E8j1lW5AGZhW+kxgf54cdNOSD0DOZOby24zS2zPFDaAxY4buA9UaduAIbGLAWzNvngNLoEzcCluFzXJUuZnPHxpIdDKBxE7jEKclKYU6uxbI3la7bUwLWO4W7tlWaO16jZAiNv2YQL5w4hfnaQSy1T8vxScJZcfI5ai1ZRYJmqEWCLo3Oy2unnAWaZMttUa8aNfC4dPbQWq5dMUDRBSbexZsmtOHJotaI2vMjbwPHWbSeA9DdKMqgUO9HOhZKWSQ/aBkkHRkozUne5g90QI70X+Xnxpk55wNCf0bxlpEPiT34BdyC4/4eG3CsEMAlkKgm4eh44XgET7qIIegXMndbyJuG00jdIp6BnQJ7SzC3vI3PzO7rfPzLglJP5FSi47c5GQbqwyDmGA6dl+Siw25NCf8gbuWTNBMeLqC9yxRbM+8XfIFqIChgxIRU1a7USgUF+s5pp8luZ70wG0CwATZv3pVBu8so/CbFNW2Z0MFLbSm60DurzptBwOHd2v6gMI+2lLSsJjkv84sSxjVixcKReU3L7frr3fg0BgQ8IXSwGpowyZo4zg3x5XAROHs8wahirXzf2gMPguBuv2ZSpky6D0WdSXVjK18a4fPj4DahV21dR9pMxM9DeqwS0Vi4chePH0hzukOVd5BEl3+L8mYEgZ5tlyjPH6SuKYpGHc+50P5dxXc3arTFifKqgDCJ1kFaTHLaL5/bB2TN7tXZntXchD+gl6iY5cMlxTK5jJUZOfIKwi+b0UlUd5W3gOLncGUhQE3hQ4n9b19Rv2E18i5w8vlVUFWgxBvwjx67FmVPZWDIvVEtXprWNGrsOtev6Y0nsQJw5nWPauByIBz0e+ByhdOna65/o0OVRZG5+F5lb3tN13h27PY4uPZ5XVLXmaeA4S/ZZus9M/vhZXe36lVVbrN4ySi9IioNu3vACcrO+szsfV75AUh5euVyIeTP8TZ1qyMDP4NtuIszkpzZ1gTYGMxMc5zQkLZFR3PIyQE/gigCWM2zIqASRFczqOVbRWea4B2SljpJzx41g5Hvi3eeKJqtUODd+U/Hbyp6VBMdLCpRavOM3PCe1cUhtSopTo0xq/2xY8zfs2z3bqGGsft3YAxY4rmDzps2YhdDQItHEQ4cO4cnHHsHatbay4yogLPJXIUxz6MASrFt+p4JRrEu80QOSo5GHIh6OHLWATg+CpWuWyMQfPag0c5ytxt2xFxUrVRfguKuo1JPflzy/epVcS/oLJeWNjt6LVjvzPSBBiUuXTmLBzI6aJzDm9l2Cn37Br4G4dPGEzf4qVKiE8Xfm4/r1q/j9Zx9VY3sbOF67bjtEjU1C4Zk9SJjbV5WvHL24mc9QDBz2i+ChJx+9Fiu513OntRZ77srG+Y6bUiQ46Yz5Sn5LpUBsSV9KYSqtArtl7Y/MSldCf+Fp4PgNcThlXPAyoGWUoOuNyoZ7xPebu5t8dyyc0xPnz+abthxZOak10cS0Ces4kNnguAzc5WR+jS2pL+q4kqKuKJhH4bxN65/Drh3/0b1/JR22aD0c/Qf/KHivrexxJR4r+xryR5NHmtn3pLGwZwxwMdBlZnWdvTmV/DlFjaltQK2zjclPYU/2z4qalwTH2UAGmCze8SL31a7TDlHjkoSOHCtSjPy2ZCUYgzA7tn4iklctszxQ2gPlguMDB4bhg48/Q/PmzXHp0iV8+cWnSElKEv+Wk7MTUya7lmidUVv7znsfImb0GPzzhecwZ/YsLF1RBIpHDAkrd0gZ+WSW0oq4KIPKzoxasdWvmR5o2CQE5FgjqBX3a2eHXwhS4CN17cMiw8myIg+oAcdJq0J6FVLckOrGFYwUDKRi0OuQIMv5SM9CmhbLPMMDdet3RMToVSg8nYuE2AGaFzV4ZDwoFKdEhE5mEzsicONt4DgPVGPv2COoHEjpYIYVHzZ3zwGBVq02fNx61Krjh4TYfig8vVtrd4a2Z8Y4M8c5T87XGSarw5bMCxP6KEotcswa1KnXHivio3CiYLPSZoquk6JzSgImngaOS87kQweWYt3yKXb9JSnX1FTS2O20xAXDYpaDmifOoI9QM0+l10oBU1JJkovXLJOiw8xYZ+a6N5nZ4HjTFoMRGjHTEPHTatUbYeQtm3H9+jVR2aFFQFrrPSC5x9NTnsXunf/V2p1XtpfaGXyH8V1mzyhUyfOsWQLF9uZT8uf8fhsavUS8l9VWEpUGx7v2ehGk1LIA2iIP30jwi0dy4r1qtkX1tS39RqPvoG/hTvSAqhdpNdDkgXLBcYLAhw8fwheffoK33nkfv//+Gz547x0QLA4fPFRB9rSmeblMY+kHGQwoDZaXniizxZk1fuXKOSxfMFRkiFlmecCWByQo6+hholr1poieuEV8TM6f2cHrDga2fKsGHJeHVPLHnTqxzSVuWsk3TgoDUhloNWZSRt+2XairuwO4pXW93tK+SfNQhEXOxrEjyQLQ1mrBAz6Cn//tSE9+Bruzf7TZHTmVya18OH8F1i6brGpobwPH6ZzRk7NRpUpdkeHPoKjR1r7zQ+gW/IpuPI7MQmc2OoFFAoyubDeAUOdV8AUP+AR+/pNEhiUzLZWYzHjnn0aAfVKA+vTJHVg6v6gqsjzzNHBcikYy44+Zf0qMlTHci7nTfAV1nZ4mqc5Im0b6NHc3Vrqx4s1MMcOib+AMXLxwDHGzuri7C1XP32xwvFKlahg9eRcoOqz3e6x957+hW/DLThF1Le14+f44d/YAEub2satPoHrjvKCBfN7uzZ2JtHX/Z3fF1M1hQPnSxeNY8Gsnu9ebeYGsaOBZjHQqV68qfxeUBsdlgJp0qqx28XYLi5wl2BY2Jj2JPTnTDHWHrOgzs4LT0AVZnevugTLB8Qm3TMSLL0/FTz/+ILLFS4LjTz79LO66+x68OvVlkUntySaz50tmynP99z/wIL795t8iWFDSyPs8bPRKcfAllQopVSyzPGDPA116voCOXR+D0o+H0v1RFITiIIfzl2HtsjvsDedVP1cDjodG/oamzcOgVlTQKIfKMjO9qDLkPHv2exdt299tCJetUb6w+rXtgVZtxqJP2NfIz4tDcuJ9mt1VDKhmfSNE+2yZf+D9ID0Uy59Z4aDGvBEcl2JAS+eH4/TJLDXucuhaWQK/bdObQqxOq3UPeRUBnf5iKvjl6JxdQeywddtb0Dv0C1UUe9SqIf+mUdnKNwCIE4I6yZZ5GjjeucdzCOz2hKr3n+StZyCBAQW9jDRupHNzNa0TLeuTGYC7s39CevLTWrpS3LZxswEYFPU7Co6kIHHxGMXtPOVCs8Fx+m3Q8FgwKzhl1QM4sHeebq4ktQK/fZVUrek2aLkdVUDkmFVCvM8M0M749Zg/ghSuzEj7F7K3f65oAuOm5KFixWqYNyMAVy6fUdTG6IskyH/lylkBjKutmisNjpO2cPTkHJHURt5xvYOuRvtDz/6ZkU+RXwagzQgSV6hQEeOmHAD/JNWPJbir5256Rl+qwXFvyhyX4HjiyuV49uknxI6XBscJvtEqVayOXiFfoVatdsjb+xN27frGM+4QaxWGe6BWrbbo3ee/gmtrzepoXL9+RdWYPXp8hPoNeiFrx9s4lB+nqq2nX1y5anVcvXIJ169ds7vULl3+hSZNB2Pbtpdw9Ih55cDlTczHZww6dHwaR44sw/ZtU+3OX+kFvFd4z5w/dwApKbcrbWZd58IeaNlqAtq3fxwH8ucie8cHmmfasGE/dA96BydOpGLzpidt9hfQ/lG0ajURublfYF/eDFVjV6hQAZWqVMeVS+dVtXPni7sHvY+GDXtjy+ancfz4esOX0jHwObRoMQo7dryLg/nzNY/n03I8OnR4AvkHYrFz5/ua+zOyA7n2nTveQ36+fgCOmjlXrdIAA0Jjce3qeaxePUoRdZr8/Tt1cjPS0x9VM5zCaytg8BC+4yogceVQm98cFStVFodIvkc9wQI7PY/mzUeq+n3oHvQuGjbsi4wtz6GgYJ1ubpDffufO7cP6FPsUL7oNbGBH9BP9dfLUZmzaaMS9e/Pk5bcSv3/5Hext5oz3aJs296JN23vFc5XPVz2sXv0g9Oz5Kc6d34f1ya7x+9C4SRi6dn0dFy4cQUryJEXPbz184Sl99Oz5CerV74Etm5/F8ePJipYV0vt71K4dgLTUB3DmjH7BSEWDl3FR7dr+CA75BhUqVHb4HVDWe7RX8NeoWzcQmzc/jRMmfAs6un6j2zVuEoquXd9AYWE2Ujf82ejhRP/EXPj+TU29H4VnlNPdmTI5HQY5vt/5vzc6LMNpXZRLq0IRyoCADnj7zdfwxJPPCFqVPbt347U33kJ6+kav4BxXkjnezL+n2LzAwBfRqOFAnDqVjm3bX8D169edtqnWwO7ngZ49vkLNmm2QteM1FBSsUbyAypXroG+fX3Ed17F+/SRcueIaUXbFC3ChC/3bPYrmzaORu+tTHDrk/CBDxw4voHHjQcjN/QSHDsfr6KkK6NN7OqpUaYBNmx/C2bOuzRus48I9tivf1nehdesp2LfvZ+TtUyYQZMsZ1ao1RUjwj7h06Tg2pNquRunUaSoaNuiLzB1TcbwgyWN9rNfC2gc8jaZNI5CT8wEOH0nQq9ty++kUOFUAe1lZU1FwXPv+1KvXE127vImTpzZh2zZ1lQKGL7bUAN26fYC6dTojY+szOH06w+zhi8frEfSlOIgpnUeLFuPRru2DOHx4IXJyPzZk3iEhP6Na1cZIS/sTLlw8bMgYrthpl86vo379YGzPfAknTigLTvm3exjNm4/G7t1fIf/gXN2W1aB+b3Tu/CpOnkzDtu3/0K1fZ3Yk3x1XrpxGynptAsBK19G2zV/g4zMBe/Z8hwP5nl3RrNQnRl9Xt25XdOv6Hi5cyEfaRu3Vapxvh/bPoEmTYS62jxXQq+e/UaOGL7Kz38eRo1ZFuJp7q2+fWeA5dUPanbh08ZiiphJP2bHjDRwrWKWojVEXVapcGz2DvgCfa/n5c7B7jzJqNCXzadPmz2jpMxH7D8zA3r0/KGnikdcE+D+OZs1GYN/+X5CXZw63f8cO/0DjxmHIzn4HR44u9zi/Hs5N97g1mbmgcsFxToJZ4pMm//FgPHPG9OIsajMn6qyx7HGOV6lWE2073IuuPV7C+XP5SFw8ApddpAzIWT6zxlXvgfad/obAbs/g4P5FSF2nXDTNt90kBIW8hWNH1iFppWtkWqhfvXEt6jb1w7kTh3Hl8gW7gwR2ewrtOz2CrIz3kZ35md3rjb5g+PhNqFqlHlbED0Vhob4Adteer6Bt+z8hZ/vnyNyqT9aP0f6w+i/fA91DXodfuzuQsfEl7Mn5SRdXxdy6ExUqVsHCOV1tikoPGZGA2nXbIzFhpGqaEJaD123aGicP7tJlzu7QSaeuTyOg88PIyvgA2ZmfGj7lsIi5qN8wCGuX3wryW2q1GjV9EBGzFufPH8LS+f21dmdo+5HjM1C5Sm0kzOuDixeOGjqWrc47B70A/44PiP3mvtuzbsGvoo3/ndi++U3k7tDvMF5yXKX3RfXaDVCxchWcO3nE3rTd4ueDhycIQbVVCdE4dXK7ojlz77iHu7J/wLZ0/aq4+Mzmsztv10xsTnXtQJMiR/3vIvnuWBwbgksXjedR7xP2HZq1GIr1ax/AYRfXQVDjR6XXVqhYGfWb++FEfq7SJpqvI9/4yAnbULFiVV2er1Wq1EHU2FQAFbFkfl/BOe0q1qLVCIQM+BJnz+zFikWstLFfieoqc3fmPKpVb4KoMetx9co5xM9RrgXQOeg5+Hd8EFkZ7yI78wtnLgH9wv+LJs0G4cSxjVi3cpLDvPPVatVH5arVcPbEjUA0n1l8dvG7jN9n3mrDx6aharWGWLP8FuFnM6xDl8fRsctjyM78ElkZf6RINmN8o8e4fPGc0UN4dP82wXGPXrnCxZUW4CRYTosYEib+bNg4GFRnv3btClbEDxfq3ZZZHlDrgRo1W4DCnNeuXRYCN+Q1U2IDh81AM58hguuXnL+W/dEDajjHJVdmTua/BZ+uM00KhhjFOduoSR/x3Dp/Nh8L5xRVv1jmvh7oF/4f+PiOQkrin3Egb4EuCxkyajEaNOqBlYuicfwoD61lm+SHdESszhs5x9t1vBc9+ryF3Tv/i/SUZ3XZK1udDB+/AbVq++oqwDv2jjxQlC12uq8qUSrDF1tiAB62Ym7LFALVFLV0pvEdzXc1D34rFo60O5XQiFlo2mIQklbejYP7Ftu93pEL+g3+Lyg4Z++Z4Wmc4zcEMLsIAUclxmcrn7EH9ycgacVdSpooukbqzWRufgeZW1ybokjRgv530ZBRCWjQKAirEsbh2GHt1Sr2xo4am4TaddshIXYACk+bBxDbm5dZP3cG5zjXFhoxE01bDEbqukeFgKYWk9pJeummaJnLzW1vcI+nrn0Yebt+07d7D+2N7zC+y/j9yO9IpUZNJGoj7c2ZjrSkIkpbZxi1wPiMZqBmybxBmgLspTnHuR6Ldxyo37ArhkYvw+XLpzF/RgcA5rAutPSNAQVW9X6nO+M+tcbU3wMWOK7Ap6SYCQ0dJK48dOgQnnzsEaxdWwSSUyGdSukbVv8V+/b8rqA36xLLA2V7YPCIODRsEiIUvSnOac+qVK0HHvRocbO6anpx2xvLXX+uBhz39b8NIQM+FR/5/Nh3pkkAjR/h/Bg3whiMYVBmeXwkThZsMWIIq0+TPMBABwMeeoIRwQM+gZ//JKStexx7c38pcyXVazTDqFu34MKFo4if1VX1ar0RHCcgSWCSoCfBT6NtzO27xCFs/oz24gCihw2LWY56Dbpg2YKhOHVimx5d6t5Hoya9ET5igWJAWvcJlOhQCi/yn5Tsw8gJ6ahRy8dQsK9H37dBkbHNG/6B3Kxvy12+J4HjJfdhzk/NFG8573Xe8xTjpCinXhYy8HP4trtVF3BRrznp0U/IwM/g224i0pOfwe7sH/Xo0mYfE+4qysZUs6eGT8rEAZwFjkvB4725M5C27jFNK44YvQp163fE2mWTcTh/haa+jGgswbTCM7uQMNe1K6aMWL8jfQYEPoDuvV+DWnFeCaofPbQWq5dMcGRozW0aN+uPQVFFFFqrEsbj2GFtWhNlgePsWyahrF4yEUcPOZdCRrPTHOigY7fH0aXH8yLgZNRZt6xpsXoscswaFJ7Zg4S5fR2YudXEkz1QLjjODOk6deoKIJj2wcefoXnz5rh06RK+/OJTfPCe55UhOLLR/CjLyfwaW1JfdKS51cbyQLEHZObE4fzlWLvMvlAiDx88hBw7kiyU3S272QNqwPHmLSMwYOg0l4gkM6LNj3EeOHjwMMK6Bb+E9p0fxs5tn2LrxteMGMLq0yQPRI1dh9p1/XUF03hv8B7J3v4FMtLKphKQFQgFR9cjcdFo1av1RnCcGZXMrDxRsElUmxltRgBHfQd9i5Z+o5Gy6n4c2Ktd5NMIH/j5T0bwgI9FoJkBZ2dbWOQsNGk+CMmJ9yI/r3wNiUqVamDsHXvEdI0E+wK7PYHOPZ7DjoyPsG3Tm+W6x5PA8Vp1/DB83HqcLczD4t97K74lGFxikIn0ALG/tFXczt6FDrC4KgAAIABJREFUg6J+R+NmAwQARCDIU6xj1/9Dl57/gBlVeLXrtEPUuCSRMc7McW80Z4HjrCwjuKe1AlG+E8+dPYBFc3q57BZGjE5E3fqBSFn1AA7sdY7As1rn8PnCd+GpE9uRk/mV2uaaru/Z7z20bX+X3QBs6UFq1mqFERPS4Mz7YeCw6WjmMwzb0t/Ajq3adT/KA8e7Bb+C9p0fQlbGh9i+6S1N/nbHxjKxZ/3qB7F/j356Hkp8Ib+NHal6VdK/dY37eqBMcHzCLROF8OaC+fMEvzipRcIHDxVA+djxE4r/LrOn3Xf52mfezGcoCGZaZnlAqweqV2+CURO3im7iZtkv+ZVl0aQA4SHEsps9oAYcb9C4F4aMXKi6BNAIv0dP3I5q1RuJAzwP8kaYPNicK9yHRb+HGDGE1/TZPeRfaNS0nwCSzf7Ao5MlVcCCXwNx6eIJXfzevGUkBgz9GYfzl2HtsrJFOWWAztGsD28Ex4uz7c8fRvxv3XXZq/I6YfYxs5DPnzuIhbN76DYWQVWCqzzM8VDnita114tgZqNeh1uta5RZlvbodGSWcuHpXUiINS5D0S/gDgT3/1AEX21lfXoSOC6zAR0J5kVP3IZq1RvrWqVHAIhAkJHvea33rSPtZXXMkYMrsWbpJEe6UNymRevh6D/4R5dIalA8aZ0vdBY4Lr49JmejSpW6IvuSWZiOGCk0SKWRufldZG5xXQ0cBoQZGNa7gsQRnyltE9T7dfgH3u8UoFkCn6uX3IKjh9YonbK4zoigvpoJyOc9v9EunNcuWF0eON6iVRT6D/nJK5PcSla/z5/ZAZcvnVKzRZqvlcEuq3pasys9roNywfEXX56Kn378QWSIl+TZfvLpZ3HX3ffg1akvY85sSxXc4+4Ia0FO9UBoxK9o2iIcmze8gNys78qdC8uDx0zKRsVKVRE3qxvITW3ZzR5QA46Ts5LclUaDEvb2qW79TogYvVLsKffWSJPl++TBNUsIxcj1OKPv+o26Y+ioBAAVYAYYUHqNFStWwbgp+wVX35yfWujG2Ve7ThtEjUuxeajqFPQMOnV/WvDlkjdXrXkjOM77ZMJdB4Wr9NyvsnwvA2Anj2/F8rhharen3OuLKah2zULq2qLqQlczAmYEzlIS78OBvDinT09mR9or423pNwZ9B32DQweWYt1y40S2ZaXUkYOJWLP0tnL940ngeOs249E77CtR7cCqBzUmy98TF8Wg4OgGNU3LubaCeG5XrFgJc6e1cljoTYeJ6N4Fq5hYzaR3UK6sicqgU/b2L5GR9orua3GHDp0JjssknfTkpwV9hlqrVLkmYiZuQ6XKNRD/W5AuQKTaOSi//gb3eHLifSA/uqsbq2H5rKfxG4DfAmbZ2Nt3g/vrCO2n1BFYMi8UZ05lmzVlMY7UAHOULrCsyZYHjnsz73jrthPQO/RLOBKs1uOG4HcWv7f4DZu3y8Iz9fCpp/RRJjg+cGCYoFFJXLkcyUnrbsoij/l/9q47vsrqfj+EKXtPCSNhb8IOEPYmYchWq/bXVq3W1qpV66jVqrXWVWuH1toqS2SEQNgjkLBnWAESRoCwZSMz/D7PSU8Sws297zjve+9Nzvf3h7+SM77ne95773mf8/0+z/BovPLyixocLyhPgV5HwERAloL7EjC5v34MOvX4p2ul+QETIJOOmAHHS5SshGFjU0TmLTNw/WWSp88NOgApCOZG+bO/4unkvEWKFEXfYSsEVybt8sWDQvjQTZMHeScuU0ZMPCIu4OZObehRJLhj989Qt8FowzoJeeNSOMFxCJ52ZpAzm5sAklPGsmCWB6u+tKEQea/B8Th3ditWxA9yyn1b40qqIXJEM9PP/1YEw8ftBbOlKIJMKgJP1rTVs2je9jeOU1JIIayL51OwNC4q3/AUJHC8UfMn0SridUtUiDxv8dy1MfFJHDk40/bjJKs6mJXodAWJbWdNDsDfxRGTjoD/ze+3w+SQ+TaP6PYR6oVNwJZ1v8ah/d+oGjaoxvEnOC7Pq0cPxWLD6p+ajpusYDFKJ2l6AsUd5LvXpQv7hEijWwKCVpfRPyYJ5cqHi+5uCv/K7zer71ORfaeClfkUQKZoopsmq1FUXlDnB45zXX2GLAGTbBKXjsGp44WHd1y+P/iruo+JPUzw0dSibn66gmOufDnHmSH+xJNPo0SJEti/fx/69e4BSbeSkZEh/rc2HQEdAbURKFa8HKLHp4pBF86KwNUrzAi91+SN584tb2Lfrk/VOlGARjMDjnPZ/i7low9dor5E7dChQpyEdBVOGvkTWVrmRoaXk+vw19jhzX4GUqowG5SZ1jQneYI9rVOCXKqzg3Mf2smNTY7svCbLZhMWRePsqfWmt6GwguO9hyxEpSrtBOe4p7iaDmQ+HezS3uTnhyyHZRksy2ED0QLhuzxvXDr1+Afurz/CK5BHUWhm5lvNxDS6F6QIYen49WtnMX9G83y7FSRwvHWHNxDe7HGRYcxMYzOWQyX0R6Ts+MBMV49tKb5OEXZfiRC2J/LTAKx+YxWc099xPQfGomr1LrD6G+Sn8Cid1p/gOBMDKKZ5/dppkSFs1vgZ4GchUCp8jPhPIT8K+vkDuDXiX+428neQ/+aWzgnnqlG7NyL7ThN0KqRVMWuSDiZ54ytITfncbHdb7e1WRHqa3Bs4LnnHA51WyFZQPXQeNnYPSpSsjKVxvXDx/B7Vw/scr3boEHSJ+jeOH1mEtSsf9tleNyg8EcgXHC88IdAr1REIrAhIcJQiibzRzGshISURPX4fSK3CLFVmq2rzHAGz4Lj8sVbJ3Wx2b6LHp6FY8bKOZ5VKv2RmSWF+uTS7R2zPjG0KgVFAL3HJA0Ict1Tpml6zQq3M46sPs2uYZaM6O5jzysyO/MoOh47ZiZKlqonMRyu8jIUVHOeBnAfzdSt/hIwjC31tseW/52TK/h3Jm163PI6njjkczM0FwBpIliPS534lh7c4yCzJY+nzsD7hxx6bMiOfmflWeFrN7oGRCwSV4DhL7CtXbYdbN684eimUXxzk5cTGxCdw5OAsU+GqHz4J7bt+gEOpU7Fl7S9N9fXUmJck9Mdqxq1tBxwewK2S9Wxu4BktQRqEwmj+BMcZb2olUTPJbJVODrDu/YIu0PZUfnbPnd2OFfEDAs29bH94Hh0yerv4XBQrVhqk8LB6VjO7SHn2SEv5QghymrXwZj9F6w5vwmp/s/Plbk8OcHKBqzyfeQPHs3nHT67FqsUj7LgeNH1l9eG1qycQP7ONX/xmRQXff31R3fnFOT2pXyOgwXG/hl9PriNwbwSYNUyAnDepvFHNa7VDB6NL1FdCfXzZvN46hF4iYBYcJ9hJYIVCaOQed9tkFrCbP9YyS8Ifh1C346tyPnmAZok9S+1lBtvqJaNw+kSSyqm8jiWzg6UfKidu0vIZkHrHU9khgS5ySmZmXgfV3q1YYQXH23R8G2FNf4ztG15C2t4vrYTOUJ+W7V9B4xZPY9fWP2Dvzk8M9THaKGrgXFSp3hnqOJiNzuy7nXzZPHFsCdYsf9B3B5daZJea3ziPedOzqJjymhTX5QsjXxydtMGjt4lLPm9VairBcSnUaLXU3m4s5DO7avFInDm5xtRw1Wp2R4/+M0U/9rdrOVzZf8WOzb+3O1zA9XejZL1EiYoYNm4vbt68iLhpjQIuBm455G9wnDz+5PMnCMpzpFFj1R2r7/bvDr7PgEwqoS4E6TcC0VhRwXMpOZ1/uHJc0EI5XZEk4xDR7RPUCxuHreuex8H9/zUdnpzfcGe1Nzw5lk1754X+zOyCvIHjTIZiUhSNZ2meqQu6yUosPht8RvxlMkHAn3Hnez+rMc+f3SF+y7T5PwJewfH33v8Q48ZPvMvL6dOm4IXnfuV/z7UHOgIFNALMDB82drfIHl4ytwfIbZfbOkT+FaENHwh4ZfdA2B6z4Lgs8Vy5YAi+P7PZ9SVImo7DqVOwea0737NSPMtqWazrQQqACeUFFg8yS+Z0E5k58mWAWYXMLnTLSBNAuoDUPeqzg+VFnKeyQykcSz5nZoxZscIKjstLh707PsKube9YCZ2hPu27foT64RPEdwm/U1Ra9thrnsHhtGkqh7Y9lpMZ83adkxewnugmSpaqgqFjduP2rauIndrA7lQ++0uRyZULhwp6D0+mEhxv0e63aNLyF2Iaf1RnDRyxAWXK1bNUcVe6bF0MGrnJq0Cxz4DnatCm0zsIa/KYaUDRzBz+bCuFZZ0sWQ8G7QM39sDf4LisqshIX4B1CY8YXjIvNnjBEYwVsFLc102qEsOB/V9DgtM8l1Js8GTGClEJSP5u0sE4bTkCxsMFOG/WcrJ6D2DxnK5mu1tuzwoIVkL4ohszO4E3cJxjSd5xt5NrzK5DVXu5XtKZ8DfCXybpv5bH98f5s8l+cUNWP1EknGLh2vwfgXzBcQLjeYU3JQ/5hg3rMGn8GP97rz3QESigEZC8o3nBE4rjDRuzRwDnZksYC2iovC7LLDjerc83qFmnv9+4BGU2sirRL6N7TlHJCpWau1LKb9SnQG3H0tSBI9cLOpHcImAyA99pwDNvXFpFvIZGzX8OJ0Rt5MXJlUuHsWhOp7umzgbObbxsFVZwPPulNe1bbFrztGOPevb3mQMvIN6qChxbkMGBpUif1aw1g9NYata207to2ORR7N72LlJ2fHjXGMzEZ3azE/oBnpzt0us/YDb3uoTHkJE+3+N6VILjPQfMRtUa3cQ83gB5S4E10GnEpGMICSmG2Cn1cfv2DwZ65DTJLTI5+5vauHPntqn+eRvLz6bK0n1bDinuzPMEzxVOilTnBv9I/VVYzd/gOPVWBoxYL0S7504NMyRSWbfBKHTs/jecObUOqxbFBN3WFSkSgv7Ra1C2fAMkLRsvwOdAs2ZtXkCz1r/GnuT3sX/334Ug9J3M20InxOz3n9m1STF3XvLystesMUlsxKR08T3L71u3rGadfujWZ7JymkJf4LisouBekXu8IJtMAsi8fcOVZ9FbLKXQNs/h6Wnfuh52SS3FiT2dCV13SE8oIuARHI+M7IEPPv4UCSuX35MlTtA8qlcfPPvMU0hKWq3DqCOgI+BABKSYSV6hRPnDffmSu7fpDizRlSHNguPyUmLzml/gcNp0V3zM9fqN6Alpghdw/oxWuH7tlGvzN2n1S7Ro+5Iof/RniZtrC7YxkQS38gqpSXqTo4fmYMPqn9mYwVzXiG4fo17YeEeyg3MDQnOm1AUPs9JyMtb/ieRNr5pz+n+tCys4Xr1WFLr3+xanjq9C4lLnEg2MZAZb2jgAdUKHonPUl8hIj8e6hEetDuNIPykUa4U+wxGHcg0qL5U80XPUC5sAAvvHDs/F+lU/cdoVtOv8Hho0/hG2b3wZaSn/8jifKnCcYBJpmKiVQnP7N1a+kNuh4MjOPJ/TFTyD2bHsjLX5/XD++x12hgrIvkzkIEBGcCt2av27fjtUOUzKL17S7d6mRiRVlV9uj+NvcJzrlfojRgVYe/SfhWo1I8XlsD9AKRV7xApeVvIGqqiu1IyR37XycpLZ/czyd8rkZYldPmnypZM33Rvtl+o18DKBlwp7d34sEk5UmS9w3Nu5QJUPgTKO1F5xQifJ7BrlfnuijjQ7lpX2TJTgOyWN34NOJstY8a+w9vEIjo8aPQavvv4Gvv7vV/jg/ffuig2zxx96+BG8+cbrmDVzRmGNm163joCjESAoNXTsblFymDvDSpayu52d6uhiHRzcLDgub+8pXkeaCjetUpW2IJhFrnNynrtpublw53/b3HZWnJu+uzlXxSqt0WfIYmRm3haVG5cvZvEE0qpU6wSCcufObsWK+EGuucUsF16asVSWJbOqrd/wBJSv2BTL84A48pIgeeMrSE353NK0hRUcL1ehMfpHr8ali6lYEhtpKXZGOpEGgnQQi+d0FqJDKo3PBJ8NO7Q6Kv3JPRapSQiGun3JaGQ9WVz9B8R3SNy0hrh9O4dftGX7V0Eu6j3Jf8ae7XefvY2MbbaNESBAFThesXIr9Bmaw83r9hmmQqUW6DtsuaCpI12dFevRfwaq1eyJpGUTcDJjuZUhsvsMH78fxYuX9wu9jC3HTXRmNjGBMmrnUENHtfFyjpd0hb0cPRDAcXlJv3PLm9i361OvW126zP0YNGqzyCgmvVLu70DVz4iT4+XOHuclNy+7A8mkuHPComicPbUeMqFBlahwfmuV2hJ2wU8J5lPw/tQJd5IxqedFoJqC2RTOVmW+wPESJSth2NgUZGbewtypDQs077gUpLfz7qBqX2SSh1t0Q3n97tzzC9SpN1z8c6BesqmKdTCNozPHg2m3tK+FKgJStI3AE39EaPzx5I9oXqCqUAXGxGLNguMygzplxwciG8lNkzy5/srellmmq5eMwekTgXXId3MfvM1FcIUgiydgp2Sp6hg6Zgfc5m6X+2Y0Y8tsLDv1+Afurz8CG1c/jiOHZmd3j+w7BTVq94UdQarCCo4XK14O0eNTcfPGBVFW6pRFTzggKlH4ssWSd9UmxYxmfV1D9dCWx6OwEUUt7WQIW57cYMeoQfNQpVpHJC2biJMZy7J7yZfGjYlP4MjBWQZHs95MZqp7A0tUgePMUGemOrlceXHhVna8jI6sxrMD2LTr8ic0aPQwtq5/AQf3/cdy4PmZ5GfTLW55y47a7Ni1139Rq+5Ax8BrmX2/NC4KF8+n2PQ2eLsHAjgus6h5acTLI28mM/4pRk1R6mA2ue5ApIeR2fzykph6C6x+cfqMKinX9u/+DDs2v2F5eyO6fghmGW9Z+ywOpU62PI6ZjoNGbUHpMnWwcHYHXL18xExXr219gePsLN8vVi0egTMn1yqbO9AGovgoqWFJ1UjKRn9a2fINMSBmrUgeYRKJ2yY/o5z3+rUzmD+jhdsu6Pk8RCBfzvHJ02agXbv2eOXlF7MzxDXnuH6GdATciwBfnvkSTbG/+BktUb1WT3TvN0P8YPOHW5vvCJgFxxs0egjturwvXnz5AuymyQzgDat/iqOHYt2cWszVqPkTaBXxOyHc55YYqOuLtDEheb3J7331ylEsjo1E5u1r94wWM/EQiha9zzEw0pP7zMBiJtai2R1x5XK6jRV67tqs9XMgnzr5kcmJJ00KCzLzmRnQVqywguOMlXxWrHJy+oq35OzMzLyOOZNDfTW39HeZma76RdKSM//rVLlaB1BY2e0KDjM+y89U6p5/IHnTa9ld+w1fBXJQOnXRlddHSdPmDdBSBY5LwWJe9oc3/QkunNuFZfP6mAmbrbaylNtO1mTjFk+jZftXYBf0kVUXdrLYbQXDpc6MFWPmFI+uvJzj9xu/5wqrBQI4LpMDjFz4SEBo+fy+Ql8h2I3gGkG2QAI1syqUDorQ5r687h+diHIVGjmq+UAueXLKb7Yp1k3xZoo47935CXZt/YPjj0mJkpUxbOwe3LhxHvOmN1E6nxFwvHWHNxHe7KeiaozVYwXRqtfsge79vxNVt4tjs/RH/G3ZvyNT6nl8r3PKPyk6e+2HkyhWrDSYNMNkGSbNaPNvBPIFx+kW+cXHjZ94l4fTp025h4fcv0vQs+sIFNwISOCL2bx16g1Fw8aPYP/uv2LH5t8X3EUrXJlZcLx26FB0ifpSKEazVNdNk7fpvDnmDbLbdl/pWhg8epsjB0O316J6PlJTDIhOFHy53krqJbjlZibbiImHhV9WROaMxCn7M5E+H+sTHsvuoiJruDCD4/JygRRKpFJSbZIq6eqVY1g4q73q4cV4kX2nokbtPkhcOk4IWAWCkX+fJf7UjCDXaiCavPgm1QQpJ6TJz9TcaeG4dfOS465LqpEL53Zj2bzeHudTBY4PiKF4XRhWxA9Ab1JT3b6GOVPqOb5GOYGkkLFTFVYndBg6R/1LiJdSxNSq8TPDz46RLFurcwRCv9CwsaCOCy/7eemv0vibzMs5XgjzYrgwWyCA44x//5gkEPBJWDgcZ09v8LglkluZPPusgC0IJi/ejhyciY2JTwbEkvKjPSPYTNBZNad27kXLDGi7l7ykmyDthFvvY9Vr9UL3ftNx6ngCEpeOVbqPRsBx+dlwWotG6cJMDsYELCZikbaU9KWBYPJ5dbsiX1bTUaeqTLn6ILUqKTmZ2KHNvxHwCo771zU9u46AjoAsPzycNg016/QBszNWLhiC789s1sExEAGz4Hi1mt3Ro/9Mx4Xy8rpeuWoEyA/ob/7engNjUbV6F1tUGQa2xVITAhNnTq0VZfluG8UTKaLo6yVflpE7LXgk159dnn/7BwGOO2HMMmK2Ue5MDwm85hUMNjt/YQbH+T3D7xunRCMrVWkjQMhzZ7cLQNIJa9PxDwhr+n9eBR2dmNfbmPLlf9e2dwT9UaBazmVolvhymbKhGDhyo+Ml77njUapUNQwZs9NrOa8KcJzaKcPG7c2mERryQDJK3VcD8TPbgKJtbpgUH922/jc4sO8rS1PKz5RdYE++FPuLQs3S4i10kjoq3i5fLAwrukianJMZK5C0bLzVYQpEv0ABx9t0egdhTR7zKpAqKyTtUhMF0sbJS8ZzZ7eJqp9AMNIZ8Tyal0s552I2BUzicMJUZeJmafwswfmzyVge398JV+8aU2aqOyHOaAQcz+Ydd/ni2PHA5ppAXqAFEke/rHTYlPQU0g+4p6UoKSv5Xcj3blZb8HKNl2za/BsBDY77N/56dh0BrxGoUKk5+g5bkd3Grvp3YQu3WXBcxpulniz5dMvkoczfHIws6WNp36H932DLul+7tXxD81DMjSALMzouX1KfaZufE+Tb5iGG5cILZ3cWQFZ+JssiSZVAygSnTXJIOk21lDdLXF4inTm5RoC7Vq0wg+Mdu3+Gug1GO3YYdiM7lUAIAZG0lC+wfeNvrT4GSvtJQS1m9jLDN1BNXqTJFzK5X25z1/qqAFEBjlObgBoFEsjs0X8WqtWMhJtCa117f41a9w/A2pUP4/iRRZYeCwnyG6GO8DaBTHoI9AscS0HK1Sk/age747I/qXlad3xLiEFLTR4V4wbjGIECjssqs9MnkrB6yah7Qikv1fkHt6pj3NhPUumRJo26HtT3CAQLb/YztO7we6Tu+SeSN716l0ukDiGFiBNUfNnJFAo4nClYTOFiu9+3RveDVUFMwlm/6idCE0OlGQHHOR/f9/keumpRDHgWKEgmEwAC6XPC+DZt9Ss0b/uiEBKmoLBbJpMESE15f4ORIN2eUxRkbq2poMyTDY6PGj0Gb739LsqUKetzbVeuXL6Li9xnB91AR0BHwHIE+kevRrkKWaJtgQRCWF6Qix3NguOlStfEkNHbYTcj1uwSWcrHkj7VCulm/SB3Nal8blw/h3nfNjXb3bH20i9OQN/WrHhQKHs7bRT3I58kBeSMZBzKF3a3LjlkxcG5M1uwYsFgx8Ihv4MkXYwK/l46W5jBcfLXk8eeh3EeylVbvbBxIM9zetq32LTmadXDi/GcLEO26rDkVF0a11NU4gSqyYsFZioRIJffHRQeowCZW0YqLVJqkXqHFDx5TQU4Ts0C8eK3/U/i5a99lz+jfqMHsXXd82D2tBvGy9WKlVuJKgpWU1g1CumSG5S/j/wtsmLyYmxT0s+RfuA7K0METR/5fC2O7YLLF7M4kFVY285/FDSD2za8iAN7/61iyKAdI1DAcZn5ykB6EmmWWgushCUfdUEyirGzsnf+jOZ+qW7MG8s2Hd9GWNMfC2CcAHlua9/1I9QPn+Dxb3b3RFJP8QKSF5F2TQL5bsSVYqVMOFH9XcUYGAXHeeHHs8DubX8EKcAKkvF55HN5LA9Fo7/XKOlsThxbgjXLH3TFHSkEKsVxmTXODPYjh2Zj4+rHXfFBT5J/BHTmuH46dAQCPAJNWv0SLdpmKboHkuBLgIdNuGcWHHdDxM5T3CicwywrOy/cqvZDgggJC4fh7OmNqoa1NY4EjphxQCoRGjnhyUXopLXr8ic0aPSwoDEinZEvY2YiMxTdOmTJ+fKWzvry0+zfczJqsmLOLAtmW1Cgk0KdVq0wg+PZmY95RBmtxjJvv0bNn0SriNexf/ffsGPz71QNe9c4pcvUwaBRWwKK99dXJrQjgbAwaNlyDUHeeYoxxX/XWmTgEzCnngh1Rdyy3kMWolKVduJyjZdseU0FOB7Zd5qgwZB6DVL82U3eUQleMdaMuVUjVRHpVezw6Ur6soKYHZg3rnLv1654SFA8qDKK01OkPpDK81Wtzew4gQKO0295fvS0L1JDyRsnudm1B0r7qIFzUaV654ChvezW5xvUrNMfnj532dzWJ1aL6h2VJi9CSWnGyhi71nvwAlSq2j7f3ye748v+TIQZPm4fbt68iLhpjVQNmz2OUXC8IPOOS42azWt+icNpU5XH2OqAEqi+cukwFs3pZHUYU/3qh09C+64fZFN1SgqyQKJmMrWgAtZYg+MFbEP1cgpeBHiTHdH1I2Rm3lQuElLwonX3isyC4+wtBQ4pFkbRMKdNcgA6wctpxXeZ3eMmcOHLT1mGT6oEcrOR/oXmJJAk94XzLJvXBxfO7fLlpqjwYJa1W0rs8oDFgyYPnE5Z3szPTj3+ifvrx4gMB2Y6WLXCDI7nCJ3OExUjqq1l+1fRuMVT2LX1D9i78xPVw2ePl80vOjkUmZnXHZvHyMDyJeeygpJuI/PZbSOzapnl3qbjW6hWsyfWrfwRMo4stDu04f5dev0HtesOEmK7zOjKayrAccmvPm96EyH4nB8frmGnLTRUdWlCwW5+du1czvJCiRdLC2d3ACmxCrJJqjHVFTLys7NgVjv8cCWjIIfQ59oCCRyXgnt5wVHJEe/W2chn0BQ3oAg0xaDd5i3ObxlSAHnJ3B64dGHfXc0o4M73HNrcaWG4dfOysmjI70e7Z0PpUMcef0fd+iMdo5+T81Sv2QPd+3+H/CiB7AbIKDhOuhtmy/MsNWdyqN1pA6a/TDyjQ3YvqJ1YlNvnWMnHGfBVAAAgAElEQVRzLiuSJYUQP4v8TGrzbwTuAcffe/9DjBs/EdOnTcELz/3qLu+8/c2/y9Cz6wjoCOgI3BsBK+C42y9dTVs9i+ZtfxMw3JnlKzZDv+ErcfXKUSycFeH3xyrrsLgbmbdvYu70RuLCgiX57bu8D6CI4Effuv553LmTqczXkJBi6Be9GszuNJN5Kw+Ad+7cxuxvaivzJ7+Bcrjy/oKdW95ybD7Ju34sPQvI7T1kUZayej7ZpkYdKczguLx8MVqVYDSmsh0pVUitsnntr3A4dYrZ7obb9xuegPIVm2JpXC9cPL/HcD8nGspKipMZy5C0bKITUygdM6LbR6gXxvL219Co2eMgJ68nMEPppHkGk9Ux2ze+jLSUf90zlV1wvHzFJug3fJXQiVg8p6sYP0fk9wAWx2b9m5Mmablklr6duViNwaqMXVvfxt6dH1sYqghGPXRc9Jsz+X5kZt6yMEbwdJHioyrpnYoWLYmYiem4ffs6YqcUHADJ6q4GEjjObGVmLeeleusc9SXqhA7Fjs1vYP/uz6wuNWD7yXP8nuQ/Y8/29/zu58gHM1CkSFEBsHq6tKYGBLUgNiY+gSMHZynzV4LyRhNKfE0sqxSd5mJmIgETCpxKCjIKjjMe/L3k72bComicPbXeV4iC4u/ybGZXzNqpxUqudzsVYWZ8k5Vsuen/ho7ZLSg858/IEmnX5r8I3AOOL12xWnjTr3cPj175+rv/lqJn1hHQEdARuDsCVsDxvsOWg+rzFOSkMKfTxmwFZi2sS3gEGekLnJ7O0Piy/NWtGHhziuARQaS8HIY8bHWO+gIEpCn0tm7lo7h9+wdD6/PVSL7okHt+0ZwupioI5KHHjYw2yU+YvOl1cah3yqRQLTOQCN4NG7dXiKPOn9EC16+dsTxtYQbHJWBHnmfyPau2bn0mo2adfh7LqlXOJUGPQBDAlFQyFMMl4BzoJi+dTp1YLX4DaJ64ep1ch6wUyq8M3i44LvUJDqdNx+Y1vxBLIWhD8IaXiHMm1xX/ddIqV+uAXoPmQ0XJMnmuyXdtVbRaUhEVFnH1qjW6oueAOUpiL5+RilVao8+QJaKaiyBcYbdAAsdJexc9IU1sydypYUKkkoDPkAd2is/5gpltAoKTW/UzI7/LA4EzWAqfEmAj0ObJ5KXV0UOx2LA6qxLTroUULYGYCVkZ6bFTWXl7w+6QghudHOlSm8P2gPkMkF0NmfgkjhycqXwaM+C4pFgrSLzj7Tq/Bz5zpGEkHWOgmaxQ4BmFZxUnTVY45tX2iho0D0ya0fS5Tkbf2Nh3geNSlHNe3Nx7ssblcMweHzY8WgtyGouvbqUjoCPgxwhYAcclWL16yWicPpHouPeSxiVuemPcvHHB8fmMTCDFAp3O1jDiCzm8CYR7OrQwe5k8dswup8jamuUTbL94lS1XHwNGZGVrrFk+CSeOLTXiZnabqEFxqFKtkytq826VnHJxsuyQvPjDxqaIUly75X+FGRzPHVMnAFFV2f2+Hv4W7V5Gk5bPOE7f4ssP/p0cjqQaclPo0Yhf+bWRJdTy725yXso5JTXTodSp2LL2Xmomu+B4fuKbA2LWoWz5BiJz/PLFA3bC6LOvpDDKSI/HuoRHfbb31iBHhHaV4Ls2a+QlJj8x9Tyo61HQjcAoM+Ju37qK2KkNlCxXApFHD83BhtU/UzJmMA8SSOA44yhBHorbUX9FZuXKyrNgjnV+vlOHgHoE585uxYr4QX5doryQOnt6A8jv7slK3VcDQx5Ixq2blzB3WrgSf7OTKC6mYklspJIx3fq+HBCzFgQtF8d2E7SIqs0MOC5FTU8dTygwVKpDRm9HqdI1A4aTP+/+Sm23fbs+BSnAnDR55sr7fSipmQKNk93JWATq2PeA46++/ga+/u9X+OB9z2VBzz73Ah56+BG8+cbrmDVzRqCuS/ulI6AjoCNgWpCTIevc8wvUqTfcFqeo0dBXrdENPQfMFhnqzNIOFJOUD6RJIF2Cv4zciNHj9qNISFHMn9ESN65/f48rzMTr0X+2UJlnFi4FhljCb9W4H9wXq0BKh8i/IrThAwJoIuDkpMmLnMSl43Dq+EonpxLigaSZYRku+fJUPLOFHRwfOmYXSpaqKp5tqtarNFn9QYEhgq5OmczsOpw2DZvXPOPUNIbGlaJoq5eMEtyhwWB9hi5DxcothasnM5YL0Uo3TdIgsPomadn4e79fK1RD0eIlcenMUUtuSdqdvFVIUpxLtVCjJyepUUHu6wN7/41tG160tA7ZKVu863I6Fs3uaHqsug1Go2P3z7KFuEwPEIQdyKHLiyBV1VSy2iFQKCz8vSWBBo5LKgxZwSN/i6Qgr7/j5cT8xYqXQ/T4VKVgs1U/c7Ktv8OmpJ/nOwyrL1iFoUrUVn63ZaTPByvJVJgE8Xk+4jnJCSta9D7ETDwkKk9jp9R3YgqYAcdLlKwkElBIhzN3asOgp94i7R7PAVlip40B3HEkxnYGlUKovMzjpZ6Txt9/flbyUtm5CdA7ub6CMPZd4HhkZA988PGnSFi53GvmeFSvPnj2maeQlJRFwaJNR0BHQEcgECNgJXNcln9tXf8CDu77j6PLyhG/DDQagCKC55svtOQdJ/+4P0xmUPgSySHFB8EWqtrzAMbDjRWuvtCwsejQ7S+iFHjR7C6WeN+keGXKjg/AskgnLT/gyYk5u0R9BR4gWTZMgSSK91HEz44VdnBcAqPL5/cDuRhV2ohJRxESUly54FZeH7O5009vwsqFQ1UuwfRY8rIhEAWf8luMrNLh31NTPkfyxldMr9tOh4qVW6HP0KWCL97TRaidzHFebsZMOIg7mTdE1nBuXQi3KKEYm2xx2m3vgPQxdswuJQyrLFhtsX/3X4WgdGGwngNjhZC2qkvcTj3+AWaPb3SIAiHY9iTQwPFqNbujR/+Z4gJ9x+bXQEH1LL7/NgEJjKnab3kJNO/bZh4TOVTN42scahiRGnDP9j+B1Z/5mTyrqvrdkVVkvub15X/ev4+YlC7oE/PjTzc7Xt72MkmJ7wzk+XbCzIDjnL9/9GqUq9BYZP6zAiCYrXGLp9Gy/SuCrobf2YFoTPxhAhAFsimU7aTl8I3frdMj33etJmY56XNhG/sezvHJ02agRo2aXjnHT548gUnjzZcTFrbg6vXqCOgI+DcCVsBxebDcpeBF2tfqZZayG9lzvnzJ+3fyqpJf1Wk+a29+dYj8FKENxwjAiAd4XyZ5A9mO5dYsuzZqBNj7xySJTN78xOmMjEV/6bcbB0F5yHJDwKVF25fAzIYbN84LvnEV5YeFHRyXlEFW6Hu8PYsEJUnXRPHaOVPqGXlsLbeRWU7knicHvb+seIkKGD5u3/+ykxr5yw3T81av1RPd+2VVYW5b/xsc2PeV6THsdChVqhqGjNkptAM87Z8dcJw86qxuIT0ZacpyW8Mmj6Jtp3fFerluJ03+jmxa8zQoDGnXZCYsX6L5Mm3GuGaunRnszGQvDCZFX43+jvuKCekrSGOxPL4/zp9N9tW8wP890MBxKUzOwJOWjtoXqgHTQNxU6hpQ34C0KqRX8ZfJzFRmjacf+C5fN6itRI0lVYBgl17/Qe26g0TWOLPHVZnTot/hzX6G1h1+Dye1SsyC45J3fNfWP2Dvzk9UhdIv48j3XLPvZG47m30JM4V8+dccmb502boYNHKToP+cP6P5XXNIWiJ/V2w7svAgG/QecFxmj3MdubPD5b+XK1dW840H2SZrd3UECmsErIDjOQelvwtg2CnL/QJBzj9y/wWSSW7VM6fWCf5sfxjBLoJeZsqxZZYg/TVzsIzo+iEoHseXbb50W7UcjsT8+R6tjp23n+QBd4KzOu9csmRW/ruKyorCDo636/I+GjR6CFvW/VoI/KmyHLHPo6Lyw2ljCTBBcn/qJlSuGoFeg+MDgvPVTLxz/w6QEorinG6bt+8RO+C4LBPeu/Nj7Nr69l3LkpcCp45b4+42E6Mc+qkx4Hx2jZmw1WpGCgovs/vVrc83IJVNIF6I241Lfv3Dm/4ErBRgJR5/N+xa9IQDoPAjNS+ofVHYLdDAce4HL/z4GZdm5gwXrPspL+FIPXfk4Cy/LYO/g/w9NJJ1PHjUVlDAk0LrFFy3Y9TqoWaPat7uHND9EWSkL7Djose+qi9PPU1iFhyXWcT50Z0pD4JDAxYvXh7Dx+8Xo8dNaySSFwLVZCXnivgBQsPKCasXNh7kFvdEPSTpfUinwyoJbf6LwD3guHSFGeTdu+f8sPHfExNX6Yxx/+2VnllHQEfAZASsgOOSWoOK1RSBdMpk6WkgCPjkt0ZyKJJL0QlOZF9xrV4rCt37fYtzZ7dhRfxAX83v+nv9Rg+CQnA0go4EH70ZgQ4CHjS7ByM3OBLppxQ6y6t4bipQJhpL+gXZZfWSMTh9wh7QVNjB8WzuXB/lzya2STSlUC0FOa18dszOxfbyZXzlgiH4/sxmK0PY7lMvbBwiun2C9AMzsCnpKdvjuTkA96tY8TL4/sxWIVzotkmxLE8Alh1wXFZGrFv5I2QcWXjXsuQFzg9XMsTlp5M2IGYNypYPUwIA0c+Ibh+hXtgES5daTmdBOhlHq2PL3/IzJ9di1eIRVocR/eTvaxZNR2tbYxWUzoEIjjdt9SuQe5x2MmMZkpZNLCjhzncdkqbE31nyrARiRZCRisLsDGWblbIS2GNwVCdrtIr4HRo1f0LQUJGOSrWxYrRc+XBlvw+e/DMLjjshZKw6bkbGo34Xdbz8mWRlxE+2ya64UFRh5mlenlF5Vt2+8bdIS/niniaDR2/DfaVrYeGs9kJDS5t/IpAvOO4fd/SsOgI6AjoC6iJgBRxnCWi3PpNx/Ohikd3llMmD9L5df8HOLW85NY2tcTv2+Lvgl9667jkc3P+1rbHMdpa0LlbpbbiPnXt+jqLFSguhu/UJ/ye4xD3ZgJh1KFu+AVL3/BPJm1416+o97WUmJiktnCrPK1ehEfpHJ+LSxVQsiY207bOvASRVh2ynQuixsIPjrFRgxYKRCxxf+5P77zVq90Vk3ymipJ2ULU6bPPATlCY47Q+TfKdWvy/84XOgzMmLFAL0nugA7IDj2RzwM1rimgfBWVnGTBE0iqE5ZTmZxmoqtMjnS/o18pfzeTNj8sLZn1UWZvxV0ZYv+3zp91RKbnZ8mVTgiarH7FgFpX0gguOykocxXpfwqBA4L+hWt8EoIVbuzwtaVlTw+85o9qmsEP3epmYIaY5Id6RCqD3vc0J6R74PqKo8yT0+3w+oi+GkGCfnMwuOs0+/4atQvmIT+DPpwO5nllnSzJbmOy7fdQPZpB6ICsrI/NYpKzWWxkXh4vmUe5qprnIL5HgHsm8aHA/k3dG+6QjoCNiKgBVwXB7qmQHJQ4lTFjUoDlWqdULSsgkCvA1Eqx06FF2ivhT+0U83bcgDySJLzE65J7OdmX1OYVEKHnINVL3PbTJ7l5loi+d0zRdAN7N2gtYEr/M7AJkZK7+2MttdRTaeUX8GjtiAMuWyOKxVZAcVdnDcKRBblm6SX5k8y06bpM9I2fEhdm971+npPI7fJerfqB06RDnfqV8W4/KkOWXr94JYVsFxltezzN4bn63Mol42rzcunNvtyKqLFS+L6PFpSsEPXhjz4vjooVhsWP1Tw35LXnxSgZASpDAZ94B7YVessEHjH4Gi6U4AZcG6H4EIjjOWPFuhSBHBN14YjILwvQcvgF2g2U6syldshn7DV+Li+b1YGnd39X9+48rLQzsVorJyywmtnRq1eyOy7zScOp6AxKVj7YTnnr58B+O7mNN7ZgUcl/oUZughlQZHwWDygtzJdyEFboohyJfPs5BTSSWSb/zG9e/F76Ank/oc/tCfURXHgjCOBscLwi7qNegI6Ah4jIAVcFyqVl++eACLY7s6EtmiRUti+PgDCAkpirlTw5QAsk44ymzh6HH7USSkKOKmN3GNF12+ZFy9Yp8zuXSZOkIUjvt67eoJrFo8EpcvHRDh4r/1i16NkJBiWJ/wGI4pEhFi5QEz1z3RCajapzr1okVmvCfuOlVz5B1H8uWqEnAq7OC4FMQiMEiAUJU1bvEUyL2/f/ffsGPz71QNm+84snT2WPo8rE/4sePzeZog50KqFyhopM14BOQL2fYNLyFt75d3dbQKjkthYm8AcueoL1EndCjWr/o/HDscZ9xhEy1lhY3K33OK7lF8zyxtUY7glnHgysRSA7qprE6gfglL7K1a6w5vIrzZT/0qFG7Vd6f6BSo47tR6A3VcJmEMG7sH3sAvp33nBTEvik8cW4I1yx80NB0TYJgIs2XtsziUOtlQn7yNJPUJtSWoMaHSWNXJ6k5V587cvkk9BIojUyTZKbMCjt9ffwQ69fgHgpV3vFKVdug9ZKF474qf2cap0Cobt2z5hhgQsxYq3js9OZXNN35koXg39GSkD+JnyUlxWGUBK8ADaXC8AG+uXpqOQGGPgBVwPOeAew7zvm3qSAizSxkdzk5X4bzkjd24+nEcOTRbxZA+x2jZ/hU0bvG04Bckz6BdoygMgV2KZVIQhi8NZ0+tz+ZKVn34bNPxbYQ1/TGSN70mDjlOGMfnPAf2fQVmGbhhrSJeQ6PmPxeidolLx9iesrCD4yVLVQUza1S/TLeKeB2Nmj/pWimrBP1Ug/xGH7AiRYpixKQj4H9jp4Ti9u3rRrvqdszwbPO8yPL0RBNiFRyXWW/evgNbtPstmrT8hag2YNWBE1atZk/06D8DZ06uERejKqxkqWoYOmYnzOo91Lp/APh7Wlg4mHPHukO3v4B6LlvXPY+D+/9reRsi+05Fjdp9xG84AUBtgAbHA+cpkLRJc6epoXAyu7JscC3lcyRvfMVQd5n1ffzIIqxd+bChPnkbMbObGd7sz3FUWu7f99nf1MadO7eVDS+/lzav+SUOp01VNm7egayA4yVLVcfQMTsERc7cqQ2RmXnLMf+cGFhW5ZKSk9ScwWAjJh5BSNESiJ3aQLn+i6Qf9HYmqlV3ILr2+q9j2evBsAeB4KMGxwNhF7QPOgI6Ao5EwAo4TkckZ7QK6ghPC6NQEQWL/ElDYDTgFB6jABkz+5jh54ZJATXVXHsdIv+K0IYPiCWw/LNug9GCE3zRnC744epxZUsLb/YztO7we2Uc5p4cyxZzTH7ftbJl8hIzI/7C+V3ISF9gO16FHRx36rtGHsI3r3kGh9Om2d4nXwOEhJQE+aP5WSLPvtsmM8uuXDoMcuFrMxeB+uGT0L7rBwIcIEiQ26yC4+SfJQ+tJx5zOb7MpOIzymfVCZMZ7OkHvsOmpJ8rm4I8teSrJWiRn5ZF3skKMyWIrGaxmxFHqh5S9qjQvFD2MPh5IA2O+3kDck3PTFlmzNoVdre6IimwmZ/gn6dxS5SshGFjUwT1VNy0JgKMNWuSS3nh7A4iw1u1yc/94tguuHzxoLLhSUFDKhonqb3orBVwnP3ku9CK+IGiUimYTH4WqN1FDa9gsD5DlqBildZwIt7yGV4+v6/g5vdkFA7nnrO6mTSf2vwTAQ2O+yfuelYdAR0BFyJgFRxnaSQzyJk5zuww1dZrcDzIbU7+PPLoBbJJ1XQCAAQCnDZ5OCA3ODkQVVuLti+BHMnSdmx+A/t3f6Z0mpzbf+OlrWYdIO8qwRaWgrIkNBhNg+PAoJGbQC7CRbM74srldCXbKGl93MyuHDRqM0qXuR8LZrXDD1cylKzD6CA16/QXlSGFMSPXaIy8tfMWPyvgeG7xXm8XzFWqdUTUoHlwUt+DmenMUFctsiVBFW8vunljLiuigplD1urzlpM1vwJJy8ZbHcbxxAXLjvmxowbH/Rj8PFNLEfsNq3+Go4fmuO6YrKwwC0j2HBiLqtW7wGw/LtAJXYe8gaN2UPVaUeK7g5WeKkz+ThkVL7Uzp1VwXFKesYKWlbTBYvK9kf46kYXtVBxkAtXmNb/A4bTpyqahfhZ1tFi5HDetkddxnU7OU7aoAjyQBscL8ObqpekIFPYIWAXHB4xYK/ioyTlOrlKVJtXkxaFhSn2RrRHo1qP/LFAA0g2wTSqGOym4JctIL5zbhWXz+igPf/mKTUGxuUsX9glBUSdM8kSuS3hM8I4Ho2lwHEIMiqJQCQuH4+zpDUq2UfL7OpH9kp+DpK4ghQXpdki746aFN3scrTu8oXkaLQadmVLMmPJEi2MFHCfIQrDFl8hZNq3QjfOYN72JRe+9d8umuNr4ClJTPlc2hzcR0/wmkcDZxsQncOTgLGW+BMNA2bzBV45h4az2llwuV6Ex+kevdvR31ZJjfu6kwXE/b0Cu6Zu1eQHNWv8au7f9ESk7PnDdMfnuYlbInjRspGM7tP8bbFn3a1N+y0tOsxoMZiZxIhlEahs56bdco1VwXPKOOyESSXowXqZQKyZ19z+UvovKdyzVlJVmnhkrbZ26TJcVbEaoi5yqkrASj8LaR4PjhXXn9bp1BApBBKyC4xTboujWigWDce7MFqWRIl8mDyQUpaI4VTCYFK2xcnA2uz4J7CUuHYdTx1ea7W64PbNQbt68pHx/6UDRovchZuIh4YtT1DxRA+cKDnW7AmeGA+ZAQw2OQ4iqUlx1/aqf4NjhuUqiLLO4nSpx9uSkLOcm/z158N209l3+jPqNHrTNZ+ymz4E0l+TQvn7tDObPaHGXa1bAcQm0GKHQGD5uH4qXqOBYlZYU/VR9iUjaLNJnUfCWwrdGLPsibFG00LwobCYz4qxmEkqxwYz0eKxLeLSwhS/f9WpwPHAeBQmCMeuU2adum/yMkd6MNGdGjclABNav/XAS8d+1NtpNtONvL3+DPdFymRrIS+McocK/CzFeFdawyaOgNoYbuj1WwXHJO37r5mXMnRamYtlijGLFy4HvENSLofG3f+/OT5RpJMlz7faNLyMt5V/K/HZ6IFnhZEbQ1ohPEV0/RL3wiYZ0qCL7TkGN2n2xZvkkwT2uzf0IaHDc/ZjrGXUEdARcioBVcFyKUDrx4yRLq/ds/xP2JL/vUiTsTVO6TB0MGrVFuXBgXq9Kla6JIaO349bNS6CgUTAbBdsIOs2f0QrXr51SvhTJRbgkNhKXLqYqH9+NATU4DsFNT5BNpXjriImHwZJhqyCUlb2XF2hGAFEr43vr03PAHFSt0RWrl4zC6RNJqocvFOPlV8prBRyXVS1GLnx6D14AZvA5cRHNjZMUZisXDhWZ7KpMCiKn7f0S2ze8ZGhYycvrD+ohQw463KjvsOWoUKmFZT5XmdVHEIfUNNqyIqDB8cB5EphUw+QaVoGxGsxNu690LQwevQ3Xrp5A/Mw2pqceELMWZcs3NP35bN3xLfD3X+UZJq/ztUMHo0vUV8g4shDrVv7I9No8daDOBvU2tqx9FodSJysZM79BrILjHM8J3vHu/b9D9Zo9cO3aadzJvAU+OzRejqQkf2A7wWH4+P0oXry8UrpARzfof4NTz4KZ2+TNZ3KJKjPCNy7nyvk8vSp0q7S5HwENjrsfcz2jjoCOgEsRsAqOS0G7TWueRnrat0q9lZnRq5eMxukTiUrHdnKwPkOXomLlVli1eATOnFzryFQyk+PIodnYuPpxR+Zwa1BZfZDgUJag0xmXbsRJg+OAzIhi9imzUO0aRQIpFugGj2ZuX2VFjBslynljNGTMTpQqVU1kvPHlTpv5CJAPk7yYC2a2vUuc2Ao4PnTMDjDjjfQZV68c8+pMh8hPwWzLTUlPIf3ADPOO++iRLRQ3KwJXrxxVNn4OT/tyJC2bYGjcws4l2qnHP3F//RjLex3R7WNQxNUtoWFDmxoAjTQ4HgCb8D8XJFWUU5o53lZK6kNSIFoF5ltFvIZGzX8u6GBIC2PUuvebgeq1SKnmXLUnRTOp83Dx/F4sjetp1DWv7eQ7jRviqXbA8XZd3keDRg9BlT6S/B6mnhYvjS9fTENYk8eEFhPPADTqxuze/p6oBjBrTFRgwgKTdpi8E2xGcXmKzKuiPTXDN85YyYt3aklRU0qb+xHQ4Lj7Mdcz6gjoCLgUAavgeE425+tI3fN3Zd6WKFERw8alIDPzNuKmNcTt2+ZV4ZU5Y3Ig8iiST5E32cmbXjXZ21hzecg2knFobET/terY/W+o22CUKK1VKezCFYWEFMeISQR67mDW18z4uOO/hdqYWYPjEM8InxWKd1HEy66VKRuKgSM3ClDSKrevFR+YJTR8/D5k3r6JuOmNlfJXevNHioGpLju2EoNg7tN7yGJUqtLmngxus+C4rDK6fu0s5s/IKtn2Zs1aP4dmbZ7H3h0fYde2d3w1N/n3Ihj10HEARTBnch1kZt4y2T//5pL/+vKlA1g8p6vPcSm6S/HdH64eFxcQhdG4z9zvfbv+gp1b3jIdAlkFoFKfwbQTAdhBg+OBtSkxE9NRtGhJUf3IKki3jLQNpG/gJSMvG82aBDUvnt+DpXG9DHfPvpye2UZkrTthBCsJWqq69OcZmvtEi50SiszMm064nT2mHXC8boPR6Nj9M0GxwWpmOybp7xjHhIUxOHd2a/ZwfGYbNnkMjVs8BV7y0C5fPIiUHe8LjYw7dzINTS0vWfxRRWjIQR+Nci5NBt0VH6tjhzZ8ABT6NErVUqN2b0T2nSa0e6jho839CGhw3P2Y6xl1BHQEXIqAVXC8aatfoXnbF5W/sEvOTJb+kwIgmEyKTFrhJDSyTnLgDR+3F3cyb2Pu9Eam+BKNjO92m+Ztf4OmrZ4V1Dmk0FFpsnyWdC2kbQlW0+A4ULVGN/QcMFuZBkGOyNR2MCPKTZPg1dqVD4PCQ25Y5aoRgjrDHxnrbqzPrTkklRi5nMnpLM0sOM7MYGamZaQvwLqER3y6LwXHKAq2PuHHPtubaSAztjxxqZsZx1NbCdbcuXMbs7+p7XM4CTxZzer0OUEQNKC2ArlojYiSeVpO9Pg08DKMly68fNGWFQENjgfWkyDBteXx/XH+bLJrzrVo+5LI/rVO2VgE0eP3C7ml/jEAACAASURBVD5qo1VYJUpWwrCxKbh966qgcXPSJFUhKWPsgvCVqrQFq3jPf78Dy+f3c9JtMbYdcDybd/zWFcRNCzcMUuddFEHvlu1fBX+z1ix/ECczlntcNzWTGjV/XFQ1Ug+EdunCPpFJfuzwPJ/JOP2Gr0L5ik38Is6uYiMJZBPQ3rL2lziUaj5zPq8Pkm/caOZ/mXL1MHDEBtcTXFTErqCMocHxgrKTeh06AjoC90TAKjjeoPGPQHX0g/v/K0TeVFmbjm+Lkil/KdnbXYcU+nPi0C+FjIzerttdi9P964dPQPuuHyH9wHfYlPRzpdOR3oYvYBfO7cayeb2Vju3mYBocB8qWb4ABMetw+dIhLJ7T2Xb4paDQyYxlSFo20fZ4ZgaQWcAH9/0HW9e/YKar5bakWSDdwpGDM7Ex8UnL4xT2jrJ0m2W8LOeVZhYcl1VXzAxmhrAvq1ilNfoMWeLId5kEQC6c24Vl8/r4csX03yV9jBEOcZk9VhAow0wH6n8dJDXC5YsHsDjWd7Z97nkkXYWuELk3+hoct/pEOtOvc88vUKfecKUi20Y87dTjH+Blox06SElztX3jb5GW8oXPaavV7I4e/WdapnLxOUGuBlGD5qFKtY5KqB0bNHoY7br8CYdTp2Dz2l+ZccNSWzvgOCeUnNUr4geKRACzxueRzyWN7yN8L/FlvCRp3OJJoYlTrFgZ0Zy/pbu3vYvjRxd77C51o27f/gFzp4YJID7YrEnLZ9Ci3cvYv/szQWVj13i+5znfzN6NfDADRYoUFVUNwVRhbjdWgdJfg+OBshPaDx0BHQHlEbAKjsuDhOpstv7RiShXoRESFg7D2dMbla/X6QGtchIa8atL1L/BzHo3xHGM+GO3jcwI5j5zv1WaLLs7fWIVVi8J3rI7DY6TIqcYRkw6JigfSP1g1+qFTUBEt4+EVgJfkt00CUZaFQSz4muLdr8Fhfr2bH8Pe5L/bGUI3QcQ1Ca83EjZ8aF4+ZVmFhyX1QOrFo/EmZNrfMaWpdwsb+cLIF8EVVrtuoPQpdd/lJSje/IrB6zxvVZZjWaVUkRlXPw1VkjREoiZcEhMHzu1PjJv3zDsSpXqnRE1cK4QVSVPrracCGhwPLCeBgJrBNj4PcrvU7es95CFqFSlHezo3Mh3H6NnS8mPrDqRyFPMOnT7C0LDxirJ6M2+DF7/G9vik0b21y44bjb7OLdPFN7s1neaOGsavbTO3Z/VATxjkZecQu800rHs2vouTh1fedfyGzZ+BG07/1FUn7EKLRitVt2B6Nrrv1CRYGI1679/TBLKlQ/H0rgoXDyfEoxhDGqfNTge1NunndcR0BHwFgGr4DgPE1TzpmAmhTNVWMlS1cCywFu3rmDe9MZK+U9V+GdkjMrVOoBCkypFcTgvX5qjx+1HSNGSmPdtc9y4/r0RdwK6zX1laoNicE5Qn8gse/IAbkx8IqDj4M05DY5nRUeluGrjFk+jZftXlGW9mH24ho7ZJfgql8ztIUpxnTZ5qbZ+1f/h2OE4p6crsONT8IuAAQW4Nq/5ZfY6zYDj5HGNnnAwK+NpagPD1Fj5iYHaDbZ8UT+0/xtsWfdru8Pd099M+XV+mfnKnQrwAQfErEXZ8g0FpzG5jY2a5FM+nDZNCHJqy4mABscD62mQF9RuP6tDx+xGyVJVDFOieIoaKTWiJ6SJP8VNb+KTM53Z18zC3r7xZaSl/MvRjVCpT5GfxoZTC7ALjsszPzO21654yLCbrDLlpSKF2tP2fontG14y3DdvQ4qeN2n9LBqEPyje2Wjfn9kssqvPnlov/ne3Pt+AYtXMxmdWfjBa2XL1Raa+Ct0eqSlkFmgnOE+Qfn3CYziWPj8YwxjUPmtwPKi3TzuvI6Aj4C0CVsHxCpWao++wFTj//U4sn99XSZDr1h+Jjj3+bliUQ8mkDgwigYxFczrhyqXDSmaQN/VnTq3DqkUxSsYMhEFGPXRSuDFnSj3DQJERv1nmSPqCYBW8kWvU4HhWJPoNTwA5/ZfG9RQXT3asVcTraNT8SfHCwrJQty2i2yeoFzYOyZvUihnntw7Jb6kzbOztNF9o+WKb9yXODDjOrEVmL5rlcWVZPsvzeRHNC2lVRgFpCklb5+D17okEa4yM363PZNSs008IqlFYrbBal6ivUDt0sOCXZ2WeUeOFHy/+dm55E/t2fWq0W6Fop8HxwNpmWeXg5nmWtBfREw6IcybPm3Yssu9U1KjdxxAtTM+BsahavQuMVgrZ8Uu+Q6mgppJn81lf17DjkuG+dsFxSVdy8+ZFxE1rZGheclf3GhQvkhVUxExOStFt/vbxwlIaKw32JH+IyL5TwAsWaiExMShYbcTEwyJLfu7UhiKhzarJyyOz53FZpa1/76xG3l4/DY7bi5/urSOgIxDAEbAKjsuDyA9Xj2PBzLZKVkiqA2aUJG96TYCawWosmWNG3o7Nv8f+3X9VsgxyBpM7ONhjkzcYA2LWoGz5MCyZ2x2XLuxXEisOIoGCXVvfxt6dHysb1+2BNDieFfHu/aajeq1eSFo2HiczVtjaBglOb17zCxxOm25rLCudpejeqROrkbjkAStDmOqTfQE1ORSZmddN9dWNcyIgub/zXgibAcfDm/0UrTu8KcrUt63/jeHwyqxq6nuwPF+Vyd9cp6i6eAnEz5sRXYmcSxxzGdOqYhEo40jKCbNC1aTHIU1OXsHYQFmXP/3Q4Lg/o3/v3JJKwSnxek+rrVCpBfoOW66kqpP0GW06vWPoey276m16E9y4cd7RjcgRG98m+JutmoyVm5o9dsFxrlXyjlNAlBfQ3qxEycoCGCfX9anjCUhcOtZquPLtx7GbtnxWUN3ktnNn3ReDV7247MoCixzv0h/5DmiGb5x96zd6EO27/Nk1TnzV8Qv28TQ4Huw7qP3XEdARyDcCVsFx3hjz5pimKrOAFBuk2qAwGEVNgtUI4hHMU8n9SbV78totnBWBq1eOBmto7vGbWRQ1avcVZZD5CdhYWSyFPin4Gcyli1y3Bsezdl/u55a1v8Sh1KlWHonsPvKZ81eGavHi5TF8fNZFkN2sG1+ByC5/vXwEC2d38NVc/91LBLIBnWunET+jZXZLM+C4VUG4Rs2fQKuI3ymvhInsOw3UZ3DqsyAzRI3oSsRMPCQy6uZOC/dJVVCQH1RJD3D00BxsWP0zw0uVei2qL5oNOxDADTU4HnibEzPhoKCyIL3U7VtXHXeQej2kGDNLu+HJsVL31QArRG/euIC46Y3z9V22u37tNObn+s1warGkjCF1jC+/fM0vKZp41uKZyw1TAY4bTbDic9dzwGxQA+b82WQhYGon+9lXfMpVaIzmbZ4HEyNo1H6hBkwwmxSmtXMmz803zrOwGZOaVW5Wn5jxr6C3LVDg+KjRY/Dq62/g6/9+hQ/ez/lgRkb2wAcff4qaNWuK/UxMXIVJ43NEzNjvrbffRZkyZcXfp0+bgheey1EvnjxtBrp37yn+duLECTz7zFNISlpd0J8NvT4dgaCPgFVwnAsfMfGI4FWLnVIfVN62YyxvGzhig8ismDe9iZ2h/N6XfLLDx+1FseJlEf9dGzA7xo5JtXteGPDioCBZ207vomGTR5G86VWk7vmnsqXJEn3VoLsyBw0OpMHxrEA1b/siKNi3e9sfkbLjA4PR89ysz5AlYBbwivhBQjTJHxY1KA5VqnXCuoRHkJG+wDEXat0/AF17fy2y7Zl1r81OBIpg1EPHxQBzJtdFZuZN8f+bAccHjdqM0mXux+LYbrh8MYu31ohJWq0Tx5ZgzfIHjXQx1EZma5MajRnxqu2+0rUwePQ2+AKHePHLC2AVlAeq1+D2eFK0l3zj5B03YjxzjJh0RHDZz/6mNu7cuW2kW6Fpo8HxwNtq0jKSntGp7568KyaVGinVUlM+R/LGV2wHhFnozLBevWQUTp9I8jieFIZ3q0qMToyYlI6QkJLiPcpqprqsft2+8bdIS/nCdqyMDKACHGeGNkVJvV2A8DsykpWINXvg8qVDWLlgsGsaTuUrNhNVrXt3fAReGAezUYCUYu/7d/8NOzb/ztJS7q8/AkwYsHI+ldXrvs4WlhzTnXxGoECA47nB7xs3buBvn/3lLnB86YosILtf7x6QQPi8uLkCAJd9U1P3CcD82edewP/95Gf44vN/iDHee/9DDBsejVdefhGzZs5A7rF8Rlc30BHQEfBrBOyA40NGbwd/oBbMaocfrmTYWocskSLHJrk2g906dv8bKDTC0nmW0Nux1h3fQnjTnzjGC2vHN7t9szMiFb2wSH96D1kkskJWLhgiBHGC1TQ4nrVzvEDhRcrBff/B1vUv2NpOWaHCTOqrl4/YGstq5yatfokWbV+CU0KI0i+nPl9W1x3s/bKFMXP95hkFx2VW362bl0R2tBkrVz4c/WOScPniASyO7Wqmq9e2suR//owWuH7tjLJxcw808sEMAdrO8ULrU7FyS/QZugwXz6eA3PiF2XK4kW8gdmp9Q0A3BTwp5EmNE2qdaLs7AhocD7wnonPUl6gTOtQ0t77VlUjAV1UihtRr8KZrE97scbTu8IYAmAk0u2F9hi4FRSbN0lTk9q334AUgRUvCwmGugbgqwPHcmchx08Jx507mPSGXItEEVRkjikpqMx+BnMSL5UhaNsH8AAAk3/iurX/A3p2fmB4jZmI6ihYtibnTwnDr5mXT/XUH6xEoEOC4XL6nzHFP/5Yb4CYY/tDDj+DNN14X4HdesJxtT548kZ1pnhcstx563VNHQEfA6QjYAcdVZn7IcnMCXwTAgt3qhA5D56h/4dTxlUhcOs7WciQgE+x0M56CoLLUNff4g0ZtAUVxVIqi2tpEi501OJ4VOHLpklNXRUn0iElHERJS3LVybk9bz5dXvsReu3oC8TPbWHw6fHcjJyMvHrdteBEH9v7bdwfdwmsEsqsOFgzGuTNbRFuj4Lj8rjuZYf5lkuAyQWZmBDNrXUVmcEhIMYyYdAyZmbcwZ/L9AO44svuSU9SbmG5OZvxSQfFS2E1e4C2O7YLLFw/6DEcOULEMSctyROB8diwkDTQ4Hngb3bL9q2jc4ilYBcbMrkjqlqiqJpQVHlcup2PR7I4e3ZF0cFvXPYeD+78267Kl9nzv4PsHKZlIzWTWihQJAUFH/uaQ6sJuVbDR+VWA45xr0MhNKF22LjzxjjPTmRnPBFJXLhwqLmO1WYuArPZmYhwT5KwYL/x58c+9IA2pWZPVGyviB4A87trci0CBB8fzZoIztKRJCQ9vLOhRYkaOuisznH+X4Pnrr7ws6FhkVjn/lne8kKLF3NstPZOOgI6AqQhUqh2Oy2czcPO6ec6/7n2/RdUakUhaPg6nTySamjdv4yEP7EKJEhWxNI6lbgdsjRUIncnJPuyBPSgSUhTzv2thmUO1QuVW6D1oochuWBxb8DLCyldsDgJOly7sw7L5vZVtXfT4QwIAnfdtY0e5BJU5nM9ABMcr1mqIs0cK9yG+YuU2Qjzp/PfJWLlwsOWwk+po2Ji9ghJj7rT6lsdR0XHI6GSUKFlFlJVfvODM/vboNxNVqndB0rJxOH3S3ne0ijUH+xhdor5CzTr9sX71Yzh+ZJFYTunyVRFSvIT4HfVmLdr+FiztT0n+M1J2mqcGGhC9FqXLhir7jSxTrj76D09y/LeFtD41avURFEKkhfFkrAxpHfGWEBvdvvGlYH9MbPvftfdk1KjVC+tWPYoTRxf7HI8Zqi3bvYq0vZ9bLnH3OUkQNyA4XrlOGM6kO/M9G8Sh8Zvr9cInoV2n93A4bSq2rn/OcT/4XcfvvOXxvXHx/D4l8w0evQMlS1bGsvm9PArKRw2cLyoYVy+Owdkz5sE/K062aPsyGjX/ueC03rvLvBh9+QpNRRXPpQv7xbrcsvvKVUGxkqVw6Yy9TO72XT9EaIOx4nuQ34fS6oVNQLvO74vL4KRlY3D29Aa3llZg54ked1BQq8Z928i0bgCp1IaM3ilE4vmexn0xax17/BN16g7FxqQncexwrKnumbfNz2dqggLeuFCA47kzw7mfecHxqF597uIRzwuOJ6xcns1Bnhccr1a/VQF/RPTydASCNwIEb+9kWuOnbNbsNVSt2hN79ryJM2cSLAehdJn6iGj/BW7cOIf163O0DiwPGCAdm7d4C1Uqd0HK3ndw+tQyS17Vq/8IQus+iGPHvsOBA3+3NEYgdwopUgKR3eOReecGkhKHKHGVYjvdus7FnTu3kJg4SMmY/hzEzmfUn36rnLtEiSro3Hk6bt78HuvWjbU8dKlStdCx49e4fv0UNmzwb4Zlo8bPo2aNgTh48HMcPTrd8pq8dezcZQZKFK+E9RvG4cb1s47MUZgGbRT+LGrWGoLUtE9wPGNu1tKLFAH/z1MJd+7YtG79ASpUaI2dO1/EuXPmgZKWLd9BpUodsXvXqzj7/VrbYa9QoQ1at/4zLl7che3bn7E9Xn4DhIU/jdq1YpB24DNkHJvlsVmDBj/B/fePw6FD/8KRI/YEdx1biIsDh4U9gdq1R+PgwS9w9Og0nzNnP5epH+P48Tif7QtjgyIhxXDHAgBTGGPlxporVGyL1q3ex4ULyUhOftbxKbv3WIwiCBHnTJ43VVh4o1+hVs2h+X5OI7vNAxNlktYME3oKbhh/n/h9cOLkIuzf9yfTU9aoMRCNGz+PU6eWYu/ed033t9zB4O+or/Gl/2fPrsHu3a+J5pWrdEXzZm+gSJEi2JPyJs6cXuVrGP13AxFo1+5vKFu2EbZtexqXLu0x0COnSdWqUWjW7FWcO7cZO3f+xlRf2bh+vcdQN3QiDh/+D9LTzVVmnD60w9KculNWBAIaHM8rpJl30/IKZ3qiUHE6c1w/SDoCOgKBGwE7tCqSL8wur3Z4s5+idYc3kZ72LTateTpwg2XSs/rhE8Cyyoz0+ViX8JjJ3lnN+w1PQPmKTbFqUQyoyl0QbeiY3SAfb/x3rW2LlzI+ZcvVx4AR63H1ylEsnBUR1CHTtCpy+3LEEGd9XcsyBUTlqhHoNTge585uE3yT/jRJvXTm5BqsWjxSuSvMko8en4bbt68jdkqo8vEL44DNWj+HZm2eF6KwFIelGaFVEaXqE5hlVUrwjZN33KxJ7YnkTa8jdY/9i9K69UeiY4+/49jhOKxf9X9m3THc3gjvfeeen6NOvWhsTHwCRw56BtANT1gAGjZo9BDadXkfh9OmY/OaX/hcUc8Bc1C1RlesXjLadhWfz8mCsIGmVQm8TbuvTG2QPoiC9Tz7OWkUQaYYsuq5WEXUrc83gpeb/Ny5rUzZUAwcuRE/XD2OBTPbOrm8u8am0GT3/t/hzMm1WLV4hOl523T8A8Ka/h+SN70G8qm7ZapoVUipQmqVW7euCFqYKtU7o0e/70SG8/YNLyFt75duLanAz9Mh8lOENhyDzWt+KSpAzJjUANi17R0hUGrF6oWNQ0S3T5B+4DtsSvq5lSF0H4sRCGhw3OyaNOe42Yjp9joCBTsCdsBxCspRWI4gAcECq9a1139BzlEC4wTIC4qVKFkZw8buRubt65g7vREyb5vLVpEH+hvXv8e8b5tbBgQDPZ69hyxEpSrtkLBwuJJSx8rVOqDXoPkBAYDajb0Gx3MimC0APLOteOG0YpKb98Qx/3MbFy16H6InpIllzJ0appzbk4JaFNYiFyM5GbXZj0CDRg8LESm+CPKFkGYEHK9YpfX/6KP2Y8nc7pYcCWvyGNp0ekdQj2xd97ylMXJ3IsVLqwgC7f8EReqcMiO6Eryw4sVVwqJonD213ilXgmZcAjpRA+fi3NmtWBHvu/pp6JidKFmqmrIL5qAJlEFHNThuMFAuN5OCery85SWuUyYBY1Jp8Jypygi4UtS4aNFSyBI1zqnOUiFYaMVPau1Qc8eqnknUoHmoUq2jANYJsLtlqsBx+jt0zA5QnJOXvhFdPwITBVJ2fIjd21zMhHcrcH6cp3GLp9Gy/Svisp6X9masf/RqlKvQ2NZ7H59TPq9GfyfN+Kfbeo9AgQfHufzcApwE0N96+13Mi5srqFLyCnDmzTTPK8CZeyz9cOkI6AgEdgTsgOPhzX6G1h1+b+mHMXdUho/fj+LFyxfIF7se/WeiWs3uWLvy4WyOWqNPhMy4O5Q6GVvWOl92atQv1e2YvcgsRt78MwPArklxNxXijXZ9sdtfg+M5EZSXKCtyiSGajS95JyO6fYTDadOweY1zVBJG/eo5YDaq1uiG9QmP4Vj6fKPdDLULDRuLDt3+giMHZ2Jj4pOG+uhG3iPg6XLFCDjesPEjYKZUblDdbKyr1+qJ7v1m4NTxVUhcap9+rHWHN0Cu6h2b38D+3Z+Zdcdw+wqVmoPi3RfP7wVFOT1Z9sXXrHagwFdhN+qvDBu3Nzv70Vs8ihUvh+jxqYbaFta4anA8MHe+3/BVKF+xCZbG9cLF8+ZoGcysqF74RER0/dBwJYaZsalDUTt0sKjwYKWHNAkc8ruV37Fu2qiHTorp5kwOFZzOZixm4iHw4j52agPTPNJm5snbViU4zmxiZhVLO5w6BZvX/sqOe7qvhwjIyomTGeaEoEuWqoqhY3aJhJDYKda1f7IS0Pbg5o0LiJveWO+RixEoEOC4J/qVEydOZPOI5/17YuIqTBqfc/iWgHmZMmVF6PPStZCjvHv3rENv7nFd3Cc9lY6AjoCFCNgBxyX4YrT015N7UvH98sU0LI7tZmEFgd0lvOlPwHL4Q6lTsWVtVqahUes5MBZVq3fBmuWTwEzXgmrN276Ipq1+ZbsCQcYn+0WoAByINTie89R3ifo3mIW6LuFRZKTHW/o4yBfWfbs+xc4tb1oaQ2Wnxi2eQsv2r8KJCzDVnyuV6w7WsWQG+Pnvd2D5/H5iGUbAcfmyzktO7rUVkxmBBI8XzGpnZYi7+nTq8Q/cX38ENq5+HEcOzbY9Xn4DFCtWBtETDgighYCLJ5NgzqyvazjmR7ANbDQbXJ6hAoEqKlBjrMHxwNwZCSxTrDcjfYFjTsrfwj3b/4Q9ye8rnade2HhEdPtYnEl4NpHWIfKvCG34gF8qYvvHJKFc+XBRpURhTaPGPux76WIqlsRGGu2mpJ1KcFzuCR2jcDaTk7Spj4CksDFLYSkpBVVc9LNyo3iJCpj3bVPcuH5O/SL1iB4jUCDAcb23OgI6AjoCniJgBxyvWacfuvWZDDsZuk1a/gIt2v1W8MCRD66gmQQ0+KPNH2+jxpJAlgZK3jyj/YKxneRmt3PJknvdTVo+gxbtXsbenZ9g19Y/BGNIsn3W4HjO9rXp+DbCmv7YFm9kq4jfgRUZTmfLGn3oqCdAXQGrJdDe5ukS9SVqhw4VpcXkldZmPwKl7quBIQ8k4/q105g/o6UY0Ag4PiBmDcqWD8PSuChcPJ9i2ZERk9IRElJSZFsx68qOyctXN8rnmSXGbDHGjLHLbVZfsO2sPRj69ug/C9VqRmL1kjE4fSJ/Abm6DUahY/e/6QoRL5uqwfHAfOJJ60R6J6d/j+VFoKrqxNzRlFmwec/qfYYuRcXKrbA8vj/On012dQPIg86s3rUrHhLvZ0Yt+7vk0GxxaeqmqQTH+f7UvO3zKFq0NLas+7VrYqhuxitQ5pKVBnOnheHWzcuG3JK89nYpWTmZpGRbuXAovj9tXujckMO60T0R0OC4fih0BHQECmwE7IDjktv5+zObsXLBEEsx6tF/BqrV7In1CT/GsfR5lsYI9E59hiwBMw7NiGVJQS6nxdICIXaknSH9DLlmyTlr1yjuSpFXVcJ1dv2x01+D4znRo74BdQ7sXHrIbK68JdB29shuX0kpsXx+X5z/fqfd4bL7S07HZfP64MK5XcrGLdwD5QjDzplcF5mZN32C45L2IvP2NZE5fedOpuUQSoFmFXtK0TIC04tju+LyxQOWfTLSMUdXYpgQr8ttBIAJBKv6/jfiTzC0adf5PTRo/CMkb3wFqSmf5+ty87a/QdNWz4qMWGbGars3AhocD8yngs83n/ND+78RIKZT1nvIIrDCQpWuTV4/qXHD9yFZ5ZklwHxYiEDOmVLXtN6Q3ThYFdUkTSbpMp2+rPC0PpXguN346f7GI9B7yGJUqtJGYADEAoyYPMesWhSDM6fWGemSb5uO3T9D3Qaj76E1sjWo7uwzAhoc9xki3UBHQEcgWCNgBxwvW64hBoxYK16s+YJt1kJCimH4+AMoWrQk5k1vghs3zpsdIija88WVL7BpKV9g+8bfGvI5su9U1Kjdx/GSd0POONxICo9e++Gk4J23a6o5zO36Y6e/BsdzopejTD8Dm5KeshTWyL7TUKN274CiKmrf5c+o3+hB7Nr6Nvbu/NjSuvJ2KlKkKEZMOgL+12mxMyUOB9EgUuxrwf+EYX1ljkteztMnEsUFqR3rHPUl6iiqBhgx6Rj4G6wiC93Xmjr1+Cfurx/jUVcihxt/FjYmPuFrqELzd0nJ5kuAtXPPL1Cn3nBsWP0zHD00p9DEx8xCNThuJlrutWViDBNkVHw3evN62NgUlChZyTFdI1kBKz+rrBJitdDlS4eweE5n9wL6v5mYHMIkEbMVuT0HzEHVGl2RuOQBnDqx2lW/NTjuariVTUZdG/6GU6Ccmiq+jJ9Dfh7JhT93akNkZt7y1cXr35u1fg7N2jyPvTs+wq5t79gaS3c2HgENjhuPlW6pI6AjEGQRsAOOSzEMs5QhMkQyY4zZksyaLKhGwSEKDxkFf5lpOGzMbhQJKYq46U1w6+alghqa7HWNfDBDAHlWBITyBoeidRSvS1w6DqeOrwzq2GlwPGf75Iu0HZ5CWeq8In4gyNEbCEYedfKpq8ycLVuuPgaMWI+rV45h4az2gbDMAuODrARaET8I585u9Zk5LjN7efHBCxA7RgoyAjG7t72LlB0fWh6qZKkqGDpmN27evIi4aY0sj2O0I2muSHflifNXXh6riI9Rf4Khnfy+O3NyLUh9fTvwtwAAIABJREFUk59R7JSip+TAJxe+tnsjoMHxwHwqJKWSKh0FT6vMrtzJvC7Ol05YuQqNwUotecYnnRlpzTKOLMS6lT9yYkqvY+YIJS5H0rIJhueXFBn8TeBvg5umwXE3o61uLqmbk7rn76Ja15fxcp+X/KouxOrWHwkmRBWGKmtfsXXz7xocdzPaei4dAR0BVyNgBxwHckrMZ31dC8AdU75L0MDoj6qpwQOs8aBRm8EMaSOgHEXSyJF4MmMFkpaND7CVOOPOgJh1KFu+gWkBIU/e9Bu+EuUrNhMXLippKpxZufdRNTieEx/5AmpHLGrw6G24r3QtLJwVAYoIBYIVLXofoiekgaXYcdMaK3kplS/HvBziJZE2dRGQfK5SRM5X5rikDqMoGMXB7JjUZ0hP+1YIvVm1CpVaoO+w5bh0YR+WzO1hdRjD/eqHT0L7rh/gcNo0bF7zzF39ZOXE1vUv4OC+/xges6A3LFW6Jki5dP3aGcyf0SLf5cZMTBfVd7pCJP8nQoPjgftpkYkRTj2/5P3mpbjT33UDR25EmbKhWBE/QPB9+zObVQprXr54EItjuxjafFkJfOXSYSya08lQH5WNNDiuMprujZVzEWPsfVVS/qgSxyWlC6ldSB1Iujlt7kRAg+PuxFnPoiOgI+CHCNgDxyHKo1gmNe/bZrhx/XtTK4gaNA9VqnUMKIoDUwsw0bhl+1fBG3YjpV+de36OOvWisXXd82CZZmGw7v2mo3qtXliz/EGcOLbE1pKHjtmJkqWqOVZCa8s5k501OJ4TsOLFy2P4+P1C9IfiP1ZsxKSjCAkpjjmT7xd80YFi5Nwn9/76VT/BscNzbbsV3uxxtO7whikqJ9uTFpIBJJi7bf1vcGDfVz4zx6PHp4LZi/NnNMf1a2dtRalKtU6IGhQnuD2t6nzQgRq1+yKy7xScOp6AxKVjbflkpHP1mj3Qvf938JQFnfPdPwknji01MlyhaRM94QCKFSuT7/lKUpL9cPU4SPOjzXMENDgeuE9GjlhxT1w8v1e5ozKLm8KUFKh0yiRfN0E/Cm2T6oiilkcOzXZqynzHZRUmLx3u3LmN2d/UNjS/TMrxVwauBscNbVPANcqu/jD4GyQrnVYtHokzJ9fYXk+x4mURPT4Nt29fFxfE2tyJgAbH3YmznkVHQEfADxGwC44PiFmLsuUbYvGcrrh8ybioF1/4ho3bJ1Y8b3pjUOm9IFvlqhFCVfvShf0iOzo/o4BP9Lj9CCEP+7fNTV84BGsMpfgYOdnJzW7dZDVDkYADQK2sSYPjd0dNlv1a4UmW5dW3b10VwoiBZI2aP4lWEa97zKy14me7Lu+Dor7bN7wkeEe1qYsAMwLJc5my4wPs3vZHr+C4pNS6cjkdi2Z3tO1EyVJVMXTMLlsXRHQiJ5N7uhCyctq8vUD3j0kCMx2XxkXh4vkUp10JqvF7D16ASlXbIz/hsuq1otC937ewQzUVVAGx6KwGxy0GzoVu2ZU4K38kaEhUWzbtQ8rnQtzWKcuhidwhKjlY6bY0rhcunt/j1JRexx08aivuK1Nb/O7w98eX8fzBc8iurX8QoudumwbH3Y64uvlGTDwixGd5rub5Oj9TzTcu58lOiJrZBteunlC3MD1SvhHQ4Lh+OHQEdAQKbATsguNSpd2MUjWDKTPXzp7eIBTkC4MNeSAZpe6rIcRLKWLqyWrW6YdufSbj+9ObsHLh0MIQFrFGCQ7apdixy4MfaAHX4PjdO0IBYJb/Lo7thssX00xtV5ly9TBwxAbxoqgCqDQ1uY/GkjLGF4WC0Tl7DpiNqjW6IXHpGAGcaVMXAV468PLhUOpkbFn7rFdwvF74RER0/RBHDqoTm2T1BKso5n3bFNT7sGLNWv8azdq8IHjLyV/uho166KSYZtbXNe6aLvvCy8eLtRs+Btoc7bt+BFLpbFn3axza/8097oU1/THadHwbB/b+G9s2vBho7geMPxocD5ituMcRmXFNvmKe/1Rb285/RMPGj8B+4oVvz+R3s2yZ97vO9wjqWshqNKNngBytnrGiosht0+C42xFXN1/vIYtQqUpbrFgwGOfObMl34Nqhg9El6iuRMc7McVUmhWRXLxmF0yeSVA2rx/ESAQ2O68dDR0BHoMBGwC44LrM+WK7IskWjxpJ/lv7L7Duj/YK5ncyO9paZIUv2d2z+Pfbv/mswL9eU79mlr0cWgdy8Vk2CjKxiYDVDsJsGx+/ewR79Z4EZWolLHsCpE6tNbW/lah3AyzwKcZL7P9CM/MLkGV4e3x/nzybbck9m0pBqgZQL2tRFoFbdgeja6784mbEMScsmegXHCYwTIFcJzMgXUV6e8hLVisnKAgKqBFbdMF5M8YIq98WWvMy8eeMC4qY3dsONoJojR+zsH0je9No9vhMYJ0DOjNjUlM+Dam1uOqvBcTejbW4uecFDCkFSCao2VlawwsLsO4oVPygMSIFAmq8qUSvjm+kjf3uM0jNKYN8fYpxclwbHzexuYLWN6PYJ6oWNw+a1v8Lh1Cn5Ote6w5sIb/ZTj8LcdlYU0e0j1AubgK3rnsPB/V/bGUr3NRgBDY4bDJRupiOgIxB8EbALjnfo9heEho0VpdmH06YbDkCfoctQsXJLFKabXnJqk1/13NmtWBE/yEOsimDY2N0gYBBIgoGGN9VGQymaxLJ6ltdbNVnaevbUeiQsirY6TMD00+D43VvRsftnqNtgNDYlPYX0AzNM7ZMENclpT277QDN5eUaqDl4aWjXNwWg1csb6MUOKADXFfin6602Qs9/wVSC1ihEhZmOzA/IzYPY3N/f4eUVFjc5tp50UJuWFAi8WaPJ7/8K53Vg2r7ed4Qtk31r3D0DX3l8jP2FdCfwlLZuAkxnLC2QMVCxKg+MqoujMGDVq90Fk36mOUQMNGLEeZcvVF8LDFOV00iRvN+fwF3e3XF+Tlr9Ai3a/FUk2TLbxZrKqjiLlfPfwh2lw3B9RVzNno+Y/R6uI15C6x/Mlrpwl571/NE6fSFQzOYCcZ/0z7Nj8hrJx9UD5R0CD4/rp0BHQESiwEbALjlspiSxRoiKGjdsrBDTipjVEZuatAhvf3AujSM7wcXuFOFv8d61x7YesMnNpVap3RtTAuUKUaGlcz0IRE7lIKbaYmXkdcyZbF1WhkCkFTY+lz8f6hMeCPoYaHL97C6Ww7c4tb2Hfrr+Y2t8cnuVp2LzmGVN93WgswXu7lErkKCZXMbPPmYWuTW0EmN3PLP9r104jfkbLfMFxyXFP4de5UxsoE4Al3zl5z42IO+e3cvmSqhK09xVlT9nqsszaabE8X74F6t8J6hHc++FKBhbManePm4NGbUHpMnUM8woH6jqd9kuD405H2Pr48hl3CpilMCXP3jxX8nzppPE7n2d8zkdhzj3J7zs5ndexKQjauecXyEiPx7qER5W1dWpBGhx3KrLOjyvpQPO7xKUH1BkbPj4Vd+5kYu5Uvver+yzWCR2KzlFf4rjNymPnI1VwZtDgeMHZS70SHQEdgTwRsAuON2n1S7Ro+5Ip7lJJoeHth7SgblSHyE8R2nCM4AfNW87Om3fewO9J/jP2bH+voIYg33UNG7tHZM3Pn9Ec16+dtbT+hk0eRdtO7xYYDlYNjt/9GIQ1/T+06fgHQSFgVlxLZpcQVCe4HmhWtFhpxEw4KNwixQSpJqxYaMMH0CHyrzhycCY2Jj5pZQjdx0cEcvNn55c5Xr1WT5DHVbWuRvYF4OG5WL/qJ5b2auiYHShZqrrHS1pLAxroJClC9u/Oye6SlAoUjaV4rLZ7IzBiUjpCQkreI3bGf+Pf7F4oF4aYa3A8sHc5Pz0Cu15LIWCK9MXPbGN3OEP9SXVUoVIzcY5XmR1raPJcjViZy0vQC+d2Ydm8Pl67t2j3Mpq0fAa7tr0jLl39YRoc90fU1czJC1pe1F69cgwLZ7X3OKisglLNN87JpPA5K0NYIaLN+QhocNz5GOsZdAR0BPwUAbvgeIPGPwLpAMzwBeZwb7+NvTs/9tPK/TNtzsXAKiGWl9sGjdqM0mXux4r4ATh3drt/HPTjrCq4dCkyR7E5ZuwwcyfYTYPjd+9gndBh6Bz1L0uVAbLKhWWXBOgC0SRNwsbVj+PIodmWXORlJS8tC8pnwFIQHO6Um9O9SPFbKFq8JC6dOXrXrFL00q7IcN6lVKzSGn2GLIFVKpKQkGIYMSnL11lf1wJwx+FoZQ3vKZOxVcTv0Kj5E+KyymwliCtOB8AkfYctR4VKLe6h5uG/8W92qcgCYImOu6DBccdDbGuCATHrULZ8AyyJjcSli6m2xsrd2akLSmUOOjhQTuWS72rMHHqmHMorB13zOLQGx92OuNr5mNjBBI/YfIS15fnbieSvokVLImZiOu7cuY3Z39RWuzA9mscIaHBcPxg6AjoCBTYCdsFx+cJ7LH0e1if82FCc/r+9846Pqsze+EMCCSX0FnpJAoTeIZDQew0oiiDqurqurmWXdV1/1rW7Lqtr2XV13SYLgiiGXkJLCD20UEJJKKGFDqFIKOH3ORfvMJlMMv3OLc/7Twh5yznfc2fmznPf95xBiesQUbGpkndb8m9bqYWElsWo+/ejVEgo5s1sjps3LinuV6oSiwEjVympViTlihWbpEORXZGy21V2vXrT1AcvsgtRdiMavVEcLxxBtajmuTObsWrRMI/Ca8tXvvYZ5GR/69FYrTpHxz4B+RIh+dQlr7o3TY6XyjHTjaufwNFDSd5MwTEuCPQbvkzJly1pSfJvHnMqjvfoNw1y3HhD6mNK/ll/NfWLoKQlmzPd8xRU8gBWHsRq/Vmj5mq338kox/7lHoLXavFXR9eELyC5jNMd3rfUEwTHcxZgvQlSiPnr9eFsHorjgaTr+9ySc1xyj/u7aGbjmAchRe59+Tz13bvgzXD3NGZr5F87XawhajFOSRMm6cKC0SiOB4O6/9Z0tblJHujLg33ZFHbqRKr/Fv5ppqFjt6JchbpYktQVVy4d9vv8nLAwAYrjvCJIgARMS8BXcVzdmSHHB1cn3+OSU3jZmpBddzdvXsHcb6I027Xm0jANO8T1+RqSX9j+y66aR9abdBEamh7QpaR4kKS+kJQysrvAm6YKg/4WpLyxxR9jKI4XpqgKe8Xl4C2JuRTDlaK49gUB/REjf84RUSkKg0avRf61M1gwq7VX749qEUgpFilFI9n8T8BW0HLVw7iQt9mpOD5qfJZSX0JyRcv16s827N4MlC1XG4u+b48fr57waGr1AdP5s9sUcV+rFhZeFSPu21MoDYjkxpcc+SmLR+Ds6U1amWKoddQTCHt3foJdW9+x2W77/x1/UdIhsBVPgOK4vq8OSUUiKZYy0u8U9fNXs91TmuQkoadc+g5bjKrVO5T4/qqmxNAy9YwzPyiOexpdffXv1ONjNIoajy3rJuNQ1rRCxgUy37i6kKSwEz1izfLxOHl8pb7gmNAaiuMmDCpdIgESuEPAV3H8bl673Vg+v69LrA2j7kPnHp9aunCG3EDIjcTxnEVYn/KIwkzdiSgPGIKZp9BlAAPYQd3lczjb+4KJUtBUCpumLh0DyW1n9EZxvHAE1ZQQBQW3kDStvkficTCKEHpz/UmxRyn66G2xRLUAmewqlt3FbP4n0DHuQ0iB160bXsDJkwuLiOMRlZpi0Oh1Su0EqaHg79Zr0A+oUbsH0pLvxanc1R5Nr6YmOn5kMdavetijsb52Vncozv82Ftfzz0HNfe6NyO+rLUYZX1y8pK6A1Bdw3FFuFL+0tJPiuJa0PV8rOvYXaNv5Lb/XilFPI8opLNk9brXWJf5zNGgyVjmFVpz/dRsOQ/fe/0awiyJTHDf21RnT8im06fS68nBLHnLZNzXfuL/rr9ivYTs1vOllZO/5ytgwDWA9xXEDBIkmkgAJeEfAV3FcjjHJcSZ3dx2IMC4CeUb6q8jK/NI7ow0+SopOyu752wU3MHdmc4SFVYbsBJQUK5JqRfKmWbGppxDOnFyH1KWJXiFQU/Ykz43HpYv7vZpDT4MojheNxrBxO1G2bE1lZ3VJR4UdR6qisxQMksJBem3tur6HqOaPepUzvELFRhicuFHZqSw7ltkCQyC23e8gp33khMvhQ/8uIo6rD4GP5SzAhgCkvJBUAfIwUcT5g/v+65GTgRKi3DHCPh3NxfM7ldzn3jzocmcts/RRi41dzjuApXPibG6px9hXLhqK82e2mMXdgPhBcTwgWP02aWS9gZDTOKdOrELasvv9Nm/fYUtRtXo7pCweqRRGtlpzpwZPy/a/R4s2k7263/AnT4rj/qSp/Vy16/ZHz/7Tnb6GRTQX8XzPjo+we9v7ATFOTUkowvj2TS8HZA1OepcAxXFeDSRAAqYl4Ks4HhpaDqMnHELBretImt7AJSe1kNmyeb2VQlJWbQkDv0fNyHhl5175iEZKnmFfdkybgWOFiIYYPGaTkiZAdhJ600bevw9lwipD3ZnozRx6GkNxvGg01B3gKxYOxIWzGW6HS4S4kJAyyo7zgoIbbo/TuqPkqZZ81SJ4ifDlSVPHnjqRgrRl93kylH09IKAWoj6cNR2Zu98tIo637/ZHNG32CHZsfhP7d//Vg5nd61rSLi1XM7Tu+CqatXpaScWxd8dfXHX369+79/4XpCj1xtW/wIWz2zEocQOuXjmKxbM7+XUdM01WqlQoEiceUVxKmtbA9vB81PhslC4TgbkzonDzxmUzuex3XyiO+x2pXydU04lduZyDJT908dvcI+7fi7CwKkodH6mxYLXWKOp+dOrxiVLDR2r5OGsiaIqw6e98756ypjjuKTF99bfVMrmai4XftytknPogV+5J5d40EE3dnS4pVSS1CltgCVAcDyxfzk4CJBBEAr6K42J64oQjCAkNw5zpjXHr1o/FeiNFOGVn7/XrFzB/ZvMgeh38paNaPIZ2Xd7B4eyZqBDRQDkiL0K5HHW3alNFAPkpFcc93UEvwqcIoMBtzJ5ax6OUG3plTnG8aGTUfM+efJkrU6YSJKXDnVoHTfUabsUueS8ddX82RNCZN6MZbtzIc9veu7tn/ontm15yexw7ekZAakZI7YjcY8uwbfOvi4jj6g7p1CWjcebUes8md6P33fWTsXbFg26MuNtFLUy7ee1zygNZLZu6g2zX1nchRXXlIbEvJ4W0tD2Ya0kdAhEQ1U0F4WVrKSlp7tQmaBVM0wyxNsVxfYdJ7vkkHZg0b+79nHkn9R6k7kNBQT6SpnleuFjfxNyzTlIMSqrBkgqYqyfxgv0AgeK4ezHVc6/RDxxEaOnymPNNE9y6eVUxVYt847KOqi9IMU4pyskWWAIUxwPLl7OTAAkEkYA/xHG1SrSrvKFNYh5Ch+5/wpFDP2DT6l8G0evgLy3F1CSVighfItzJQ4V5M5orN/JWbrKTMKJiY+X4uBwj96SpTPOvncKCWW08GarbvhTHi4ZG3kPkvWTr+t/h4P6v3YpdRKUmGDR6vVLF3gg3zupuLtntJbu+3G0qm+0b/w/Ze//l7jD285BA1ertIbuh5OTC+jUTConj6mkqmTJpeiMU3Lrm4eyuu6s7LR1TbbgeCcQP/A61IhOwOnkcTuemujPEb33UHfcH90/FudOblF2NkgtXcuKyFU9AcgJLbmC10HSN2nHoNShJefAiD2DYSiZAcVz/V4icGpTTg97c+znzrkq1Nkotn7wLe7FsXi/9AwiAhepDtGvXTmOhUuC7cLt7z3z6pwLgATDCzSkpjrsJSsfd1ALbqxYPx7nT6YqlaroVKbgthbcD2cZOunM6ZPbU2oFchnMDoDjOy4AESMC0BPwhjvcfsRKVq7bEigX9ceHczmJZdev9T0hxqS3rf4tD+/9nWqbuOqbmQ5T+gcpN664teumXMHAWakZKxfEJOHl8uUdm3f0ylIll8/p4NFavnSmOF42Mfb7nzO0fuBW66jW7oPeQ+V6lKnFrAT93im7xONp2eRtHDs7GprQn3Z5dLdQYDOHTbSNN0FEKpkoOe8l5v3Jp30LiuJwCkjiIcC6pfwLR1J2WcrrGPtWGO2vdrcuQgEsX97kzxG99atXpg/gBM3HqRCrOntoAeS1LahdJ8cJWPIFW7f8Pzdv82pYXuEnMJHToPgWS1mfzut8QnQsCFMf1f4nED/gWter0xtoVE5UTOb62eo1Goluvr4JeaNJXP3wdnzgxByEh4cruecfNN2oqCuEt3IPZKI4Hk75/1u4Y9xc0jn4AW9ZNxqGsacqkahq3vTs/hpwYC2STDTCyESZ5Tk9cyssK5FKWn5viuOUvAQIgAfMS8Ic4rubPTls2TvnSW1xT8//Jzk3ZwWn11qLNb9Cy/YsKhpKqyVuJk3zhly/+3ux8rV23L3r2n6Fcg3ItmqFRHC8axcbRE9Ex7kMczv4Gm9f+2q0w120wBN37/NcwX5Tl9IScopCTJZJaRVIFudMk1YLsFpNinFKUky1QBEph7KQTyuSL57ZFaJkwXDojKZ2AZq2eQeuOr+DA3n9j28Y77++BaFJ4VQqwLk2Kw+VL7p+ykRohsrt93sxmuHH9YiBMK3ZO+xMcZ06uQaPoCR6dANHUWB0t1rDpvejc8684emiOkq+9bec3EB37y4DltNeR634xheK4XzAGdBK1TkPGpleQtecfPq+lvg9nZX6JjPRXfZ7PqBMMGLkKlarEOt28JEWl5QHlnh0fYve2PwbVRYrjQcXvl8VjWj6JNp3+gKzML5CR/poyZ99hi1G1egclD7jkAw9ks+XPX/UQThxZEsilLD83xXHLXwIEQALmJeAPcVx2Z8gujQ0pP8exnPlOYcnOctlhzuJbd/FUrNwMA0etVv5j3owYj3ILm/WKjGn5K7Tp9Br27/4cOzb/wSM3VQGhpOJDHk2og84Ux4sGQX0IIicL5ISBO01EuE5xHxlqp6W6w1eKckpxTldNivNJkT5J0ST1H9gCS0DSYsmxdNk5fvNWnk0cV1NgeJoSx1NrpWirFGD1ZKel7Rq5eVXJCxqMph59loeYterIKaEHcPL4imCYYpg11VNRF8/vwvL5/RDXdypk16cndRcM42wADKU4HgCofp5SrZchwrgI5L42W4qxTS8he88/fZ3OsONtKZlSHlVOqNo3qZsh9SvW6UBMpDhu2EvMZvjde/M7RTEl3/ioB+48uHdVk8wf3rft/CbkfSQj/XVkZf7dH1NyjmIIUBznpUECJGBaAv4Qx9UdHyXlAFZvfHkM2LSXkl8ck7Q7kn7neM4CrE951KM5bV+u7HYteDSBDjtTHC8aFNkFJbuhLp7fjeXz+7oVteatn0WrDi9j785PsGvrO26NCXantp3fQnTsL5C5/U9KOgVXzT4PdqDSebiywUp/7zcsGVWqt8W61Ptw+Uq2TRxXd+8H+oTU3S+Cryk7tdxptlzllw4oO86D0YaM3YzyFeorBbukeBePQLuOQkhoWSROOGwrLqg+OPP01IDrlczZg+K4/uPq7xQfkr5J0jhJweLcY8n6BxAgC9UiyDs2v4n9u/9aaJWh92xDufJ14KpeVIBMKzQtxXEtKAd2DbmW5Jr68eoJ5ZqqXbcfevb/RrN0hk2bPQLRIw7u+y+2bnghsM5afHaK4xa/AOg+CZiZgD/EcTUfphzLk+N5zpq6yy3Qu+nMHCsr+Fa1ejtILnZPhE+Vi5rbTvLXSh5bMzSK40WjGF62OoaP243r+ecx/9sWboVZFZrlNIKcSjBCU3fhnD+7DSsXDnZpcsOm49C552c4eigJG1c/4bI/O/hGQP1M27LxaZw9u04Rx0X0FfH35o1LmDsj2rcFXIyOav4o2nV9TylKKw+m3WlSz0HqOpw5uRapS8e4M8TvfdS8+OrEgSpa6nfDgzzhkDHpKB/RQHmoIeK4NBYecy8oFMfd4xTMXupJyst5B7F0TnefTVHTTiXP1b62gs/G+3ECVTCUOk9S70ltZcvWxLBxO39K3RbjxxW9m4riuHfc9DZq9AMHlYfecjJNUofKxpR9uz7Fzi1vB9xUqVkgtQtO56ZhdfI9AV/PygtQHLdy9Ok7CZicgD/Eccl9KTkw7fOM2WMLCSmNEffvU45YLZjVWilixkYCzgiEhVWB5KaXwkFSQMiT1qnHx2gUNb5QMRhPxuuxL8Vx51FJnHgM8r6SNK0eCgpuugxdl/jP0aDJWEPl9g8JDcOo+7MhPxfMaoX8a2dK9FPqF8iXEXd3mruExg4lEpA0PZKuZ1fGWzh+LEkRx+s3TkTXhC+UnYqyYzGQzZsvgo2i7kenHp94XOjVn36oRbtkzuvXL2D+zOb+nN60c6n5VOUBn+R1vZyXjaVzepjWX386RnHcnzQDM1doaDhGT8iBN0WGHS2SgsWJE49AfjorRBkYD/Q5q60Icu5qpCXfazNSUnLJA95TJ1Yhbdn9QTee4njQQ+AXA/oMXYhqNTph1eLhkNNt8m9JfyhpEAPd1M0J167mYuH37QK9nKXnpzhu6fDTeRIwNwF/iOPqF+6cA7MU8cmxVa/ZBb2HzMeli/uRPDfe3EDpnc8ERo7fjzJlKrklCNov1qPf/xBZb6Au8if6DOGnCSiOOyep7qJ0N3WF7CYRMdFo+Y3Vazp97TPIyf62xMuqe+9/oW7D4di0+pc4cugHf12CnKcYArHtXkBs298ia9/nOJj9lSKOqycUSjpF5S+g3nwRbN76ObTq8JJyvF6O2QejtWgzGS3b/15ZWs2hHQw7jLamCOJS8OzsqQ2oXqubUnBMcgWzuSZAcdw1Iz30GDp2K8pVqKvsHJcd5N42KVQsO8ev/XgSC79r6+00phinsnCs96S+D+/d+TF2bX036L5SHA96CPxigLppYPuml9Cuy53rau43TXHz5hW/zO9qEnnAJg/a5kxviFu38l1159+9JEBx3EtwHEYCJKB/Av4Qx9UdCCeOLlUKRDk22c0ouxr9VWhH/1RpoS8EJK2KpFeRVBLEvfwsAAAgAElEQVSSUsLdplZFd7eAobvzBrMfxXHn9HsNnoMatbojZfFInD290WWI+g1fjirVWmPFggG4cG6Hy/566aAeiRaxW0TvkprkYZd87CsW9MeFczv14oJp7WgS8xCk6NvRw98hc/d7ijjeZ8gCVKvZWdmhdyr3TrHlQLbEiTkICZEvgo2VQqyuWrsu7yCqxWNKwTv5PA5GU3fXy9rHjyzG+lUPB8MMw63ZKOoBdOpxN11YMB9wGA0exXFjRCx+wCylSK/sZJYdzd42mUPmOnNqPVKXjPZ2GtOMU4sg26dhKqlQZzAcpzgeDOr+X1Ot/ZR3YQ8qVWmhWb5x1ZMBI1OUdaUekaTnZAsMAYrjgeHKWUmABHRAwB/iuIgBIgqcP7MFIkw6toSBs1EzsifWp/wMx3MW6sBrmqBnAlKQUwpzeroDVi305u5uYj0zUG2jOO48St16/QP1Go3CxtW/wNFDc1yGcti9GShbrjYWze6AH68cd9lfLx3Klo/EsHu2/5QXtBmA28Waxh0z2katboMh6N7nvzh9MgXbtkzGlXMnMeqBgwgJKaPkG5e844Fud78I9lN2Ybtq3Xv/B3UbDsWG1Mdw7PA8V90D8nc5Zi1Hr6Vl7/knZIcZm2sC6gk8tafkD5Y8wmyuCVAcd81IDz06dv8zGsc8qLwnyHuDt61JzCR06D5FOW0lp66s3gYlbkBExcZKGiZJxyRtyNgtKF+hHpb80AVXLucEHRHF8aCHwC8GqEU41cm0fohru8dJ+TmO5cz3i0+cpCgBiuO8KkiABExLwB/ieETFpkqBKGeFdOR408jxBxASEoq530RpdrTKtAGzgGNqYc3d297Hnh0fue1x4sSjd4QpDY/wuW2clx0pjjsHJ7kMZYdKRvrryMr8u0u6YyflAiiFpGn1UVBww2V/PXUYOHoNKlaKLnGXvHp0+serJ7Do+/Z6Mt+0tlSt3h59hy1B3sVMbFj7IMqUilQeEudd2Itl83pp4ne33v9CvYbD3Ra71dM1KYtH4OzpTZrY6LhIeNmaGD7uzskGSe0iX57ZXBOQmi2jHjhg65i6NBFnTt4pzMlWMgGK48a4Qpq1ehpy/5eV+SUy0l/12ujWHV9Bs1bPIDNjilKDw+otfsBMSO7xtSsmIvfYMiVtoaQvvHEjD/NmBL8Yp8SH4rg5rlJJiyTpkdQmtVekBotWTf3+uGvbe9i74+5JK63Wt8o6FMetEmn6SQIWJOAPcTwsvBpG3JfptLhWzcheSBg4C+fPbsfKhYMsSJgue0pATVdwOPsbbF77a7eGq8KBCJ8igJqlURx3HsmYlk+hTac7wrgI5CW1MmGVMfL+fbh54zLmzogy3KWhPgiQB0XywMhZq123P6Rg3+ncVKxOHmc4H41ocLnydTD0nm24nn8GKSsGo3bNOwWoDmdNx+Z1v9HEpVYdXkbz1s8q14U7DxLlFIKcRlj8Q2dcvXxEExudLaKmg3H35EfQDNXZwvJQQR4uSGNxc/eDQ3HcfVbB7Fm34TBIug9fCxqrpw+lBpLUQrJ6a9/tj5AUbds3vYzsPV8pQrkI5qdOpCJtmT7uFyiOm+cqHf3AQYSWLo/btwswT07RaZRvXAg2jp6IjnEf4nD2TGxe+6x5oOrME4rjOgsIzSEBEvAfAX+I42KNs5x28v+Sa1xyju/b9Sl2bnnbf4ZzJtMSUB+oeHLjXj6iAaRIowg+IvyYpVEcdx7J+o1Ho2vCl0rhSVe5uCMqNcGg0etx+dIhLE3qZrhLQ82fWtIDxugWj6Ntl7eVL77yBZhNGwLq517yok6IjX0Ncl3KAz15sKdFaxQ1Hp16fIzD2TOwee1zLpcs7nPa5UA/d+jU4xNUiGiAbRtfQt6FTD/Pbt7p4gd+h1qRCbhx/SLmzZQ0S2zuEKA47g6l4PeRXMGSKupSXhaS5/T02iC1bs2qxcNx7nS61/OYZaCaBzor8wtkpL8GdYf+vl2fYeeWt3ThJsVxXYTBL0b0HjIfkgYsGJvipBaR1CSSwtUpS0b5xR9OUpQAxXFeFSRAAqYl4C9xXHaOyw7y+d+2wPX88zZefYcuQtUaHZXdjLKrkY0EXBGoENEQg8dswtUrR7F4didX3ZW/yzUm19r5s1uxcuEQt8YYoRPFcedRUm+AJa2ApBcoqak1ESSNhKSTMGKTdApyOqK43aJ3d4b5lqvViGyCafPwcTsQXrYWUlcMQeduX6F8hfpInpuASxf3aWKWmodaBCARgkpqajqTa9dOY+Gs1prYx0X8S6Bd1/cQ1fxRzYuc+dcL7WejOK49c29WDAkti8QJh5Wh9sUjPZ1rxP17ERZWBQtmtUH+tVOeDjdd/zoNBiOuz9c4cXQp1q2chG69vkK9RiOxIfVxHDs8Vxf+UhzXRRj8YoTs3JYd3Pt3f44dm//glzndnYT3Oe6S8q0fxXHf+HE0CZCAjgn4SxyXnOOSe3zpnDhczruTF7N0mYoYNT5L+fec6Y1x69aPOiZB0/REwNMdjnXqD0Jc36m2m389+eKLLRTHndNTc2w7q3PgOEItnHj8yGKsX/WwL+EI2lgp/Ch+yO5g2SXs2BIGfo+akfF8CKlxhPoNX4Yq1dpgy6Zn0bHLJ5qn7gkvWx3Dx+1WHkjLg+mSWpXqbdFvWDIunNuBFQsGaEyKy/mDQN2GwxHd4jGcOrEae3Z86I8pLTEHxXHjhNnX1E9qGrVbN69izjdNjON4AC2tVKU5BoxMVR7aysNbW4HOpG7KiTo9NIrjeoiCOWwYNT4bpctEaFYY3RzUPPOC4rhnvNibBEjAQAT8JY73GboQ1Wp0UnavqccY1d0KZ06tR+qS0QaiQlODTUBSpEiqFPuHLSXZdDfPnHvpBYLtn7vrUxx3TiokpDQSJx5DQcFNJE2rVyLOJjGT0KH7FCXVhbs57N2Nj1b91Dz8xw7PU4ovOrZh92agbLnaWDy7I65eOaaVWZZfp0e/aYisNwDHjs5FvfqjgpLzXf0iOP/bWFzPP1dsTNSHRFKQTQqzsZGAVQhQHDdOpHsNSkKN2nFIW3YfTp1I8dhwW6FkDQsje2ykxgNCQsIhdR6kSQFOKcYpm5Vk05JeGsVxvUTC+HaomxbkFLGcJmbzPwGK4/5nyhlJgAR0QsBf4rjs2pXdu/aVqdVCcpnbP0Bmxp914jHNMAKB+AGzILmW3U3HI0XppDjd3p2fYNfWd4zgols2UhwvHtOI+/YgLLwq5s9srhQDLq41b/0cWnV4SalcLxXsjdjU4o83buQpX27tm+yQEYG04NY1JE1vZET3DGtzx+5/RuOYB5XrT47xy+ecfN5p2dTUZSsXDVXSbRTX1AcsB/dPxdb1z2tpItcigaASoDgeVPweLa6mZNi64QUc3Pdfj8ZK53oNR0AKchr5pJjHTrsxQN2RL0VKO/f8DKdz07A6+R43RmrTheK4NpytsErXhC9Qv3EiNqU9iSMHZ1vBZc19pDiuOXIuSAIkoBUBf4njcrPVsOk4pTq0VImWJoV1pMCO7BqX3eNsJOAuAfUL0rYNv8eBff9xOaxt57cQHfsLJb+d5LkzS6M4Xnwk5ZiwHBdeNq9PiUX9pFClFKzMSH8dWZl/N+yloforOdYl17ra1J1yF8/vwvL5/QzrnxENb9n+92jRZrLNdMnnKnldtWxd4v+GBk3uKfTZ62x9tTh25vY/ITNjipYmci0SCCoBiuNBxe/R4urDbLV4pEeDAagbJbIyv0RG+queDjdtfylSKLVa5PNJNjLJvZDcE+mlURzXSySMb4d6Xyb3OXK/w+Z/AhTH/c+UM5IACeiEgL/EcXWXuFRCl5vasmVrYti4nWDeP50E2mBmqF9w9u36DDu3vOXSelUg2pT2FI4c/N5lf6N0oDhefKR69p+B2nX7Ys3y8Th5fGWxHc1ybbTp9BpiWv6qyA54EUbFx6OHkrBx9RNGubRNYWeTZg+jQ7e7O8UdC1Jr4WRs298itt0L2LPjI+ze9n6xS3bq8Rc0inoAW9ZNxqGsaVqYxjVIQBcEKI7rIgxuGaHu/D5xZAnWrXrIrTH2nSSFmqRS276JxantuXTq8TEaRY23/ZfedtVSHPf4UueAYgg0bHovOvf8K44c+gGbVv+SnAJAgOJ4AKByShIgAX0Q8Jc4Lrvn5GmtmrpAjjTJ0SYRrUS8YiMBTwjUbzwaXRO+xLGcBdiQ8qjLoWoaFldCqcuJdNaB4njxAVG/7EkeccknXlxLGDgLNSN7uRTRdRb6IuZIwU0pvHnx/G4sn9/X9nfbjmDuktE8hHUbDkX33ndOtrhTHDYQBqqftcdy5mNDys+LXSJ+wEzUqtNHyTcuecfZSMAqBCiOGyfSUuBYcgZfurgfyXPjPTZcvRcMxikej43VcID6HU1dUtgKY700iuN6iYTx7ZD6Z1IH7fzZ7Vi5cJDxHdKhBxTHdRgUmkQCJOAfAv4Sx5s2ewTtu/0RB/d/ja3rfwc1F+uOzW9i/+6/+sdYzmIZAmqqiAvndmLFgv4u/R4wchUqVYnFigUDcOHcDpf9jdKB4njxkbqbJqLkmgb9R6xE5aotsWLhQFw4m2GU0Bexs1SpUIx6IBuhoeWwYFYr5F87o/SR/Kqy205vO8EMC9oDw6tW74C+wxYrI3IOfIf0Nb/yYLR/ulap3hb9hiUXeWjiOLualkfeT+V9lY0ErEKA4rhxIh0aGo7RE3Jw+/Yt/PC/uh4brhZzT56bgEsX93k83qwDGjQegy4Jd9LK6a0Yp9hEcdysV572fql1eG7euIy5M6K0N8ACK1Ict0CQ6SIJWJWAv8Txeo1GoVuvf0DdvTY4cSMqVGykPLWVp7dsJOAJgbDwahhxXyacFSB0Ns/wcTsRXrYmFn7fDteu5nqylK77UhwvPjyOD+SK6zns3gyULVcbi75vjx+vntB1vF0Z1733v1G34bBCqTFsD4YMLv678l2Pfy9XoS6Gjt2qmLZ94/8he++/NDdTFZNu3crHnOkNi11/5P37UCascqEHK5obywVJIAgEKI4HAboPS6r3c4tnd8LVK0fdnkkeII958LjSP2laQxQU5Ls91uwd7R/knj29ESmLR+rKZYrjugqH4Y0Zcd8ehIVXxYJZrZF/7bTh/dGbAxTH9RYR2kMCJOA3Av4Sx2tFJiB+4Hc4lbtaKQwmgsGN6xcxb2Yzv9nKiaxFYNT4LJQuU1G5huRaKqmNnXRS+fPsqbVNBYniePHhlKJScX2nwlVuUjNdG42iJ6BT3Ec4nrMA639KN5Q4MQchIeGY800TpcYDm7YE1OsrmCcT1AdAxT0clOtDrhMzvkdqG22uZkQCFMeNFbXeg+eieq1uWJ18D07nprltfIWIhhg8ZpOyQULeC9nuEggLq4IR9+9V/sPbYqeB5ElxPJB0rTd3nyELUK1mZ+UhkDwMYvMvAYrj/uXJ2UiABHREwF/iuKQtkPQFF8/vglSJl3zA9gKOjlymKQYhIKkCJGXAyoWDcf7stmKtlt0Bskvgev55SEE8MzWK48VHU00nIdeGXCPOmuyUlR2z7p5A0Pu1IzvgRQi9eeMS5s6IRvmIBpBj5D9eOY5Fszvo3XxT2levyWCEhpVDzt6koPknueglJ31xYpKc4pLTXFcu52DJD12CZicXJoFgEKA4Hgzq3q+p1hPZuv55HNw/1e2JpLaI1Bg5c3IdUpcmuj3OKh3V00Ppa59BTva3unKb4riuwmF4Yzr3+BQNo+7DlnW/xqGs4msSGd7RIDlAcTxI4LksCZBA4An4SxwvV74Oht6zTUlbcDp3DaRa9LaNL+LA3n8H3gmuYEoC3Xv/C3UbDseG1Mdw7PC8Yn2sWCkaA0evweVLB7A0Kc5ULCiOFx/O8LK1MHzcDuRfO4UFs9o47RhRsSkGJa4LWrHEQFyM/UesQOWqrZC6dAwkpUbP/jNwOjcVq5PHBWI5zumCQPnKNRFaJhyXzrh//N/fUDt0n4ImMZOwdcMLOLjvv0Wmr1GrO3oNnqPsoNLbcXp/s+B8JOBIgOK4sa6JFm1+A6kpIvWKpG6Ru03eA+W98HD2TOUEK1thAk2b/wzh4dVxMOt/uks/SHGcV6s/CajvIXt3foxdW9/159ScC4ApxPHJz7+AJ596BmFhYUpQr1y5jFdeehGzv5+l/N6zZwI+/PgzREZGKr+npaVi4vi7X7TG3jMOb7/7PipUiFD+PnPGdLzw/G9sF8i0GbMQH99L+T03NxeTn3saa9as5gVEAiSgcwL+EsdDQssiccJhJcff9fwLSo7f5Dk9cSkvS+cEaJ5eCbTu+CqatXoau7a+g707PynWTFX4MeNuIYrjJV+drlKmVK/ZFb2HzMPZ05uQsniEXi91j+xq1eElNG/9HPbt+hTXrp5E2y5vK7muJec1m/YE9CCOx7R8Em06/QFZmX9HRvrrRSDUbzwaXRO+xLHDc7Eh9XHtIXFFEggiAYrjQYTvxdLq+9XxnIVYn/Izt2do3fEVNGv1DDK3l1yk2+0J2VEzAhTHNUNtiYXqNRqJbr2+stVBs4TTGjppCnH8gykfoV79+jbBe9nK1ahYsZJNxJbfpQ3omwBVCJ8/b64igKvCeVbWPmW8CO2PPf4EvvrHF/hwygeQuUeMHGUT2+3n0jBOXIoESMALAv4Sx2XpxAlHEBJ65wGcFMCQQhhsJOAtAbXg4qGsaUoBwuLa3ZugBdjwUx5mb9fU2ziK4yVHZNg921G2fKSSUkRSizg2KV4pRSxd5SXXW9xLskd9GJR3IRNnT21Ek2YPI2PTK8ja8w8juWEaW/UgjtdpMBhxfb5G7rFkrF3xYBG2MS2fQptOryspzzLSXzUNezpCAu4QoDjuDiX99KlavT36DluCvAt7sWzenY137jT1tGH6mqeRc+DO5j82YxCgOG6MOBnFyirV2qDf8GXIu7AHy+b1NorZhrHTFOK4I217QVv+9urrb2Dq1/9RxG5p9gK3iOGTHnoEb73xurLT3FEsl74nT+bahHdHsdwwkaahJGBBAv4Ux6UIZ7kKdRWKcmMqN6hsJOAtgVp1eiN+wLc4dSIVacuKTxmhiugH9v0H2zb83tvldDmO4njJYekzdCGq1eiElQuH4PzZrUU6N455EB27/xmuHrDoMvglGDVy/H6UKVMJl/OyEVEpCmnL7sOpEylGc8MU9upBHJdrYNDotcWmlmrb+Q1Ex/4SOzb/Aft3f24K7nSCBNwlQHHcXVL66CeF2KUge8Gta0ia3shto/oOW4qq1dth1aJhOHdms9vj2DH4BCiOBz8GZrIgtHR5jH7goMfvIWZiEEhfTCmOSxqU6Ohmys7xbnFxhXaCC0z7v48eM7bQznD5uyqev/7KS0o6FnVXufzNcWd5IIPDuUmABHwj4E9xXApySmFOaSyC4VtcOBqIqNQUg0avw9XLR7D4h87FIolt9zvEtn0emRlTkLn9T6ZCR3G85HDKrnDZHS4nBo7lLCjSuUWbyWjZ/vcwW97Bbr3/iXoN76aJWTy7E65eCV7Oa1O96Dx0Rg/ieKlSoRjz4HHcvn0LSdMaKD/tW7de/0C9RqOwKe1JHDk420MP2Z0EjE2A4rjx4jfivkyEhVfDou/bK7WM3GkiqIuwLjVIpBYJm3EIUBw3TqyMYqkUr5cUr4tnd8TVK8eMYrYh7DSdOO4oXjvuDJeoOIrjvfv0K5RH3FEcT1m1wpaD3HH+Go1aGSLQNJIErEhAvjTcLriJ27dv++x+27Z/RpUqHZR5Nm4Yj2v5vDn1GaqFJyiFECT0WobbKEBa6iDlp7MWE/Nr1KkzClnZn+L4sR/MRaxUKYSElkbBzRvm8stP3kRHP4u6dRORlfUpjh8vGvvo6GdQt+4YHDjwNxw9+p2fVg3+NJGRQ9Cs2QuKIQUFN5CWNjj4RlnUglIhoSilxKGwIK01jq5dpqFsuTrYtOkh/Phj4Qcl7dt/gkqVWiMjYzIuXNimtWlcjwSCTKAUQkuXxi1+jgY5Du4v36H9X1GxUqzb71mlS1dGjx4/oOD2daStHuL+QuypCwKlQkJQqlQICm7d1IU9NML4BNq1+wsqV26LjIznceHClkIOnTm8y/gOBtEDXYvjjoU0HTk5Fs5UC3P+MPu7YsVsmcOfO8dl5xsbCZCAPglUqdMUl8+ewM3rP/psYJf4L1C3wTBcuXwYy+bF+zwfJyCBgaM2oHyFusr1JNeVs9Yl4UvUrT8Um9Y8ieM5800FLTS0DCpHNsG5Y/tM5Ze/nGnW8mnEtvs99mf+Dbu3vVdk2s49/qrsmN287lkcPWSeBydh4dUxdOwdkVNyj69cNMhfSDmPhwTKVayGkDLhuHLOvd2NHk7vdnfJOV6rTl9sSP0Zco8tKzRu0Kh1KFehPpbN74Urlw66PSc7koAZCMgD5ip1onDu6F4zuGMJHzrFfYL6jcdg26bf43DWdJc+SzqVXoPmI+/iPqxc2N9lf3bQF4GyEdVQOiwcl4P8OaovKrTGFwLtu36ARlEPIGPTyziY9XWhqW7dvO7L1JYfq2tx3JPoOBPGZbwU4GTOcU9Isi8JmIeAP9OqtO/2R0j+54P7v8bW9b8zDyR6EjQC8QO/Q63IBKxOHofTualO7eg1KAk1aschdWkizpxcFzRbA7Ew06qUTLVh03Ho3PMz5GR/i/S1zxTpnDBwFmpG9irx+glE3LSYU82vevTQHGxc/QstluQaTgjoIa2KmNW285uIjn0CGemvISvzi0KWjp10Uvld8vdKHl82ErASAaZVMV60JVWepMzbu/MT7Nr6jksH1MLsx48sxvpVD7vszw76IsC0KvqKhxmsuVuI/O/ISH/dDC7pxgdTiOOu8oDbF+AUsfztd9/H/Hlzld3ljgU4HedyLMBpP5duokhDSIAEnBLwpzguC0RUbIybt67h2tVcEicBnwl0ivsIjaInYMu6yUpRRWdNCtFJQbrkOT1xKS/L5zX1NAHF8ZKjIQ9O5AGKPDiRByiOrf+IFahctRWWz++Hi+fNdYyyScxDqF6rK44c/AEnjy/X02VrKVv0Io43bf4ztO/6PhwLE4eFV8WI+/bg+vULmD+zuaViQ2dJQAhQHDfeddCgyVh0if8cx3MWYH3Koy4daN76WbTq8LLyYFAeELIZiwDFcWPFywjW1mkwGHKi7sTRpVi3cpIRTDaMjaYQxyVNSnx8ryLQ1bQrjulZ0tJSMXH83S+aqmBeoUKEModjuhb7+XNzcwvlJzdMpGkoCViQgL/FcQsipMsBJNCizW/Qsv2L2LfrM+zc8pbTlUbevw9lwipjwayWyL92NoDWaD81xfGSmVesHIOBo9JwOS8bS+f0KNJ5+LgdCC9bCwu/b8cHdtpfvpZYUS/ieK06vRE/4Fuczk3D6uR7bOzl4ZA8JLp0cR+S5yZYIiZ0kgTsCVAcN971ULVGR/QduggXz+/G8vl9XTrQMe5DNI6eiO2bXkb2nq9c9mcHfRGgOK6veJjBmoqVm2HgqNW4fOkAlibFmcEl3fhgCnFcNzRpCAmQgK4IUBzXVThojAOBBo3HoEvC33EsZz42pPy8CJ+QkDJInCjF525j9tQ6yk8zNYrjJUezdJmKGDU+C7du/Yg50xsX6Tx2kpxgKYWkafWVwpVsJOBvAnoRx8tXqI8hYzcrD4HkYZDaatftj579p+PUiRSkLbvP3+5zPhLQPQGK47oPUREDw8KrYcR9mbh1Kx9zpjd06UDCwO9RMzIea1c8iNxjyS77s4O+CFAc11c8zGBNaGg4Rk/Iwe3bt5A0rYHyk80/BCiO+4cjZyEBEtAhAYrjOgwKTbIRUHcPXTibgRULBxYhU7Z8JIbdsx35105jwazWpiNHcdx1SEdPOITQ0HKYOyMKN29ctg1Q00ncuJGHeTNiXE/EHiTgBQG9iONiunwRlC+EIiaJqCRNdlPKrsrD2TOxee2zXnjIISRgbAIUx40ZP3nwLQ/AF37XFtd+vFM3obgmDwblAWHy3HhcurjfmA5b2GqK4xYOfgBdHzImHeUjGmDpnO64nMdi5P5CTXHcXyQ5DwmQgO4IUBzXXUhokB2B8LI1MHzcLty4fhHzZjYrwqZKtdboN3w58i5kYtm8PqZjR3HcdUgHJa5DRMWmRXLOV6wUjYGj1yg3xHJjzEYCgSCgJ3F8wMgUVKrSolCOfSlqJ8Xt9u74C3Ztey8QCDgnCeiaAMVxXYenWOP6DluCqtXbuyy2XqpUKMY8eFyZJ2laQxQU3HkwyGYcAhTHjRMrI1kqqeYk5dzaFRORe2yZkUzXta0Ux3UdHhpHAiTgCwGK477Q41gtCCROzEFISLhSTE6Kytm3WnX6IH7ATJw6kYq0ZUULMmphXyDXoDjumq56nDot+V6cyl1tG1CjVnf0GjwHZ09vQsriEa4nYg8S8IKAnsTxbr3/hXoNh2ND6mM4dnie4k2H7lPQJGYStm18EQf2/tsLDzmEBIxNgOK4MePXNeEL1G+ciM1rf43D2d8U60REpSYYNHq9srtcdpmzGY8AxXHjxcwIFrfr+h6imj+KjPRXkZX5pRFMNoSNFMcNESYaSQIk4A0BiuPeUOMYLQn0H7ESlau2xMqFg3D+7PZCSzdsei869/wrjhz6AZtW/1JLszRZi+K4a8xd4v+GBk3uQfqap5FzYJZtgIiEIhYeP7IY61c97Hoi9iABLwjoSRxv1eFlNG/9LHZvex97dnykeNOj3/8QWW8g1qc8guM5i7zwkENIwNgEKI4bM34t2/8eLdpMxt6dH2PX1neLdaJ23b7o2X8Gzp7agJQlo4zprMWtpjhu8QsgQO5Hx/4CbTu/pWwMkA0CbP4hQHHcPxw5CwmQgA4JUBzXYVBoUiEC3Xv/B3UbDi20G1LtEB37S7Tt/IayI0B2BpitURx3HdHWHV9Fs1ZPY9fWd7B35ye2AU2aPYwO3T7Aoaxp2LJusuuJ2IMEvCCgJ3G8cfQD6A+xx3cAACAASURBVBj3F+Rkf4v0tc8o3kjaKUk/tXLhYJw/u80LDzmEBIxNgOK4MePXKOp+dOrxSbEF2VWvmjZ7BO27/bHQ+54xPbau1RTHrRv7QHrOguSBoUtxPDBcOSsJkIAOCFAc10EQaEKJBET8FhF855a3sW/Xp4X6tu74Cpq1ekbJpSs5dc3WKI67jmh0i8fRtsvbyN7zFbZvetk2ILbtbxHb7gXmWnaNkD18IKAncbx6za7oPWQezp3ZjFWLhileDRu3E2XL1nSrqJ0PGDiUBHRLgOK4bkNTomHq+9mFczuxYkH/Yvu26fQ6Ylo+hcztf0JmxhRjOmtxqymOW/wCCJD7asqlq1eOYvHsTgFaxXrTUhy3XszpMQlYhgDFccuE2rCOSr44yRt3cP9UbF3/fCE/ZJek7JaUncGyQ9hsjeK464jWazgC3Xr/E8dyFmBDyqO2Ae26vIuoFj9HRvpryMr8wvVE7EECXhDQkziuFjC+eeMy5s6IQkhIaSROPKp4NXtqHQC3vfCQQ0jA2AQojhszfuFla2L4uJ24dSsfc6Y3LNYJtdZC+ppfIefAd8Z01uJWUxy3+AUQIPelWG/ixCOQn/IeIu8lbL4ToDjuO0POQAIkoFMCFMd1GhiaZSOgHos7nZuK1cmFi26q+XTXrXoIJ44sMR01iuOuQ1qtZmf0GbIA589swcpFQ20DuiZ8ifqNR2NT2pM4cnC264nYgwS8IKAncVzMHzU+G6XLRGD+t7EoXbo8hozdzEJ1XsSVQ8xDgOK4cWM5ekIOQkPDsWBWa+RfO+3UETV1lBTelgLcbMYjQHHceDEzisWDEtchomJTLJvXC3kX9hrFbF3bSXFc1+GhcSRAAr4QoDjuCz2O1YJARKUoDBq9FlcuHcaSpK6Fluw7bAmqVm+PVYuH49zpdC3M0XQNiuOucZevUA9Dxm7Bj1eOY9HsDrYB8QO/Q63IBKQtuw+nTqS4nog9SMALAnoTx+3fE8Ud5cHR2W1KznE2ErAiAYrjxo16v+HLUKVaG6XQphTcdNYSJ+YgJEQE9DbIv3bKuM5a2HKK4xYOfoBdj+s7FXXqD8L6lJ/heM7CAK9mjekpjlsjzvSSBCxJgOK4JcNuKKflONyYB4/j9u1bSJrWQPmpNtkVWb5CfSxN6obLlw4Zyi93jKU47ppScakjBoxMQaUqLbB8fj9cPL/L9UTsQQJeENCbON4l/m9o0OQebF77LG7euKKkHDp+ZDHWr3rYC+84hASMT4DiuHFj2K3XV6jXaCQ2r30Oh7NnFHEkvGx1DB+3GwUF+UiaVnzqFeMSsIblFMetEedgeNm285uIjn0CO7e8hX27PguGCaZbk+K46UJKh0iABFQCFMd5LRiBwNB7tqFc+TpY8kMXXLmcYzNZ8umGhJRR8utKnl2zNYrj7kVULTpov3NMcpVKztKF37VV0kqwkUAgCOhNHFcL0e7Z8RGu559D285v4cDef2PbxhcD4T7nJAHdE6A4rvsQFWtgqw4voXnr5yDvZ7u3vV+kX9XqHdB32GIlXYKkTWAzJgGK48aMmxGsbtLsYXTo9gEOZ03H5nW/MYLJureR4rjuQ0QDSYAEvCVAcdxbchynJYFeg5JQo3Yc0paNw6kTqcrSpUtXwKgHDqCg4AaSptXX0hzN1qI47h5q9ej1ioUDceFsBoBSGDvphPJz9tRIFiJ0DyN7eUFAb+K45NmXfPvHDs/DlcuH0azV09i17T3s3fEXL7zjEBIwPgGK48aNYaOoB9Cpx19w9NAcbFz9iyKO1G+ciK4JXyg1Z6T2DJsxCVAcN2bcjGB1rTq9ED9gFs6cXIfUpYlGMFn3NlIc132IaCAJkIC3BCiOe0uO47Qk0KnHx2gUNR5b1v8Wh/b/T1m6QsVGGJy4EVevHMPi2R21NEeztSiOu4faVph15SScOLoUYeHVMOK+TNy4fhHzZjZzbxL2IgEvCOhNHJf8vPKwSFIJ5V3Y81OKFecpCbxwl0NIwHAEKI4bLmQ2g2VThGyOkIfe8vDbsTVv82u0av9/yMr8AhnprxnXUYtbTnHc4hdAAN0vV6Euho7dqtQjkNOlbL4ToDjuO0POQAIkoFMCFMd1GhiaVYiAmipg785PsGvrO8rfqtXohD5DF5q62BzFcfdeCB26T0GTmEnYuuEFHNz3X1SsHIOBo9JwOe8Als6Jc28S9iIBLwjoTRwXF8ZOupNG6HRuGmpGxmN18jiczr1z4oaNBKxGgOK4cSNetlxtDLs3AzdvXMLcGdFFHJFd5bK7fPuml5G95yvjOmpxyymOW/wCCLD7oyfkIDQ0HHOmN8StW/kBXs3801McN3+M6SEJWJYAxXHLht5QjjdoPAZdEv5e6GitVB+XKuS5x5KxdsWDhvLHXWMpjrtHSn14kpkxBZnb/4Tqtbqh9+C5OHtqA1KWjHJvEvYiAS8I6FEcFzFJRKUbN/JQpkwlJM+Nx6WL+73wjkNIwPgEKI4bO4ajHziI0NLlMf/bWKWOgn2LH/gdakUmYM3yCTh5fLmxHbWw9RTHLRx8DVzvP2IlKldtiRULBuDCuR0arGjuJSiOmzu+9I4ELE2A4rilw28Y56vV7Iw+QxYU2iXeKHoCOsV9hMPZM7B57XOG8cUTQymOu0fr7rXwDTav/TXqNhyO7r3/heM5i7A+5RH3JmEvEvCCgB7F8V6DfkCN2j1s3khqIUkxxEYCViRAcdzYUR8wchUqVYnFqsXDce50eiFnhozdgvIV6vEBoLFDDIrjBg+gzs3v1vtfqNdwuFK3QOoXsPlGgOK4b/w4mgRIQMcEKI7rODg0zUYgvGxNDB+3E9fzz2P+ty2U/2/e+jm06vAS9u36DDu3vGVKWhTH3Qtr7br90bP/dJw8vhJrlo9H02aPoH23Pyr56SVPPRsJBIqAHsXxjt3/jMYxd07TFBTcRNK0eoFyn/OSgO4JUBzXfYhKNFAVttLXPI2cA7NsfUuVCsWYB48rvydNa4iCAqZLMGqkKY4bNXLGsLtVh5fRvPWzyNz+ATIz/mwMo3VsJcVxHQeHppEACfhGgOK4b/w4WjsCiRNzEBISjnkzYpR0AW07v4no2CewY/MfsH/359oZouFKFMfdgy3HJeXYpBQgXDavN2LbPo/Ydr/Dnh0fYfe2992bhL1IwAsCehTHY1o+hTadXle8Yd59L4LKIaYiQHHc2OFs3fFVNGv1tCJqibiltoiKTTEocR2u/XgSC79ra2wnLW49xXGLXwABdl/qEkh9Anm4Jg/Z2HwjQHHcN34cTQIkoGMCFMd1HByaVojAgJEpqFSlhS1nXJf4z9GgyVjlRsd+N5GZsFEcdy+aYeHVMOK+TNvJgnZd30NU80eRkf4qsjK/dG8S9iIBLwjoURyv02Aw4vp8rXhz5uRapC4d44VnHEIC5iBAcdzYcZRTMHIa5sihH7Bp9S9tztSu2w89+3+DM6fWI3XJaGM7aXHrKY5b/AIIsPtqHaLzZ7Zg5aKhAV7N/NNTHDd/jOkhCViWAMVxy4becI6L2COiz/qUR3E8ZwESBs5CzcheShoNSadhxkZx3P2oJk48hpCQ0koKCXlwUq/RKOWLtHyhZiOBQBHQozhesVI0Bo5eo7h85OBsbEp7MlDuc14S0D0BiuO6D1GJBtaMjEfCwO8L1ZyRAU2b/wztu76Pw9kzsXnts8Z20uLWUxy3+AUQYPfV1Jw3b1zG3BlRAV7N/NNTHDd/jOkhCViWAMVxy4becI7fTaPyJvbv/quSRsPs1ccpjrt/mQ4eswkVIhpiaVI3dOj+Z8gX6tXJ43A6N9X9SdiTBDwkoEdxXHLxJk48Avkp75U7Nr/poVfsTgLmIUBx3NixLFehLoaO3YqbNy5h7oxomzNtOv0BMS2fROb2PyEzY4qxnbS49RTHLX4BaOD+qPHZKF0mAvO/jcX1/HMarGjeJSiOmze29IwELE+A4rjlLwHDAIhq8RjadXkHB/f9F1s3vIDh43YgvGwtLPy+Ha5dzTWMH54YSnHcfVq9Bs9BjVrdkbJkFDp0+xMqVWmO5fP74uL53e5Pwp4k4CEBPYrj4sKgxA2IqNgYGemvISvzCw+9YncSMA8BiuPGj+XoCTkIDQ0vJGx17/1v1G04DOlrfoWcA98Z30kLe0Bx3MLB18j1vsOWomr1dli1aBjOndms0armXIbiuDnjSq9IgAQAUBznZWAUArXr9kfP/tOVFCqSSmXspJOK6bOn1jaKCx7bSXHcfWRdE75A/caJ2JD6ONp3fRdyjHLBrDbIv3bK/UnYkwQ8JKBXcVwKclat3l4pYnc6N81Dr9idBMxDgOK48WOp1pxZuXCwkl5FWv8RK1C5aiuKXcYPLyiOmyCIOnfBCnWqtAoBxXGtSHMdEiABzQlQHNccORf0koCaR/dy3gGsWjxcKcB440Ye5s2I8XJG/Q+jOO5+jNp2fgPRsb/Ejs1/gBy3NvuDE/fJsGcgCehVHA+kz5ybBIxEgOK4kaLl3Fa15symtKdw5OD3SqfEiTkICQnnQ3Djh5fiuAliqHcXYtv9DrFtn8eeHR9h97b39W6uru2jOK7r8NA4EiABXwhQHPeFHsdqSUC+BMmXIWnJc3oqBecuXzqApUlxWpqh6VoUx93HLcK4COSHs2egUdR4XM8/j/nftnB/AvYkAS8IUBz3AhqHkICGBCiOawg7QEupD78lt7jkGA8vWwPDx+1CQUE+kqY1DNCqnFYrAtw5rhVp667ToMk96BL/Nxw7PFc5YcrmPQGK496z40gSIAGdE6A4rvMA0bxCBIbdsx1ly0cqOSY79/wrzp7aoOSYNmujOO5+ZCWliqRWuXh+l3LU+nJeNpbO6eH+BOxJAl4QoDjuBTQOIQENCVAc1xB2gJZq2uwRtO/2RyW3uNz/Va3REX2HLkLehT1YNq93gFbltFoRoDiuFWnrriNp5voOW4IL53ZixYL+1gXhB88pjvsBIqcgARLQJwGK4/qMC61yTqDXoCTUqB2H7D3/RFSLn+N4zgKsT3nUtLgojrsfWinGKUU51Xbm5DqkLk10fwL2JAEvCFAc9wIah5CAhgQojmsIO0BL1arTC/EDZuHc6XQlrZ76MPz4kcVYv+rhAK3KabUiQHFcK9LWXad0mYoYNT4LN29cxtwZUdYF4QfPKY77ASKnIAES0CcBiuP6jAutck6gU49P0Cjqfpw/u12pOn5w33+xdcMLpsVFcdz90EZUbIxBiRtsA47nLMT6lJ+5PwF7koAXBCiOewGNQ0hAQwIUxzWEHaClykc0wJAx6biefw7zv41FizaT0bL975GV+QUy0l8L0KqcVisCFMe1Im3tdSQVk6Rkmj21trVB+Og9xXEfAXI4CZCAfglQHNdvbGhZUQJSTEWKqqhNzT9pVlYUx92PrH1Oehll9gcn7pNhz0ASoDgeSLqcmwR8J0Bx3HeGephh7KSTihlShL1tlzfRKOoBbN/0knKSkM3YBCiOGzt+RrG+95B5qF6zK8VxHwNGcdxHgBxOAiSgXwIUx/UbG1pWlEDDpuPQuedntj+Y/YsRxXHPXgUj7t+LsLAqyqA9Oz7E7m1/9GwC9iYBDwlQHPcQGLuTgMYEKI5rDDxAy0kR9oqVorFy4SC06fQH1KjdA2tXPIjcY8kBWpHTakWA4rhWpK29TqceH6NR1HiK4z5eBhTHfQTI4SRAAvolQHFcv7GhZUUJyBN/efKvNqk4LpXHzdoojnsW2QEjU1CpSgtlUMamV5C15x+eTcDeJOAhAYrjHgJjdxLQmADFcY2BB2i5uL5TUaf+IGxc/QTadHwd5SrURfKcnriUlxWgFTmtVgQojmtF2trrNG/za7Rq/38Ux328DCiO+wiQw0mABPRLgOK4fmNDy4oSKFuuNobdm2H7w+rksTidu8a0qCiOexba+AEzUatOH2WQfIE+eijJswnYmwQ8JEBx3ENg7E4CGhOgOK4x8AAt17bzm4iOfQKSTk9S7Elj7uAAwdZ4WorjGgO36HL1Go5At97/5PuGj/GnOO4jQA4nARLQLwGK4/qNDS1zTiBxYg4kv7S05LkJuHRxn2lRURz3LLQd4/6CxtEPKIPSlo3DqROpnk3A3iTgIQGK4x4CY3cS0JgAxXGNgQdouajmj6Jd1/dw7nQ6qtXsjB+vnsCi79sHaDVOqyUBiuNa0rbuWpWrtkL/ESsojvt4CVAc9xEgh5MACeiXAMVx/caGljknMGBkKipVaa78cf63sbief860qCiOexba2HYvILbtb5VBy+b1Rt6FPZ5NwN4k4CEBiuMeAmN3EtCYAMVxjYEHaDk5FSanw9R25uRapC4dE6DVOK2WBCiOa0nbumuFhJZFh24fYPPaZ60LwQ+eUxz3A0ROQQIkoE8CFMf1GRdaVTwBNe8kcBuzp9aB/DRrozjuWWSbNnsE7bvdKcK5YFYb5F875dkE7E0CHhKgOO4hMHYnAY0JUBzXGHiAlouo1ASDRq+3zX44eyZFrgCx1npaiuNaE+d6JOA9AYrj3rPjSBIgAZ0ToDiu8wDRvCIE2nZ5G9EtHkf+tdNYMKu1qQlRHPcsvHUaDEZcn6+VQbOnRpr6wYlnZNg7UAQojgeKLOclAf8QoDjuH47BnqVUqVAkTjwC+Sktc/uflPzjbMYnQHHc+DGkB9YhQHHcOrGmpyRgOQIUxy0XcsM7HB37C7Tt/JaSMkNSZ5i5URz3LLpVq7dD32FLcT3/POZ/28KzwexNAl4QoDjuBTQOIQENCVAc1xB2gJeSneOyg1xa+ppfIefAdwFekdNrQYDiuBaUuQYJ+IcAxXH/cOQsJEACOiRAcVyHQaFJJRKoXqsbWrV/ERfO7UBG+mumpkVx3LPwSqHW6rU649bNazh3ZrNng9mbBLwgQHHcC2gcQgIaEqA4riHsAC/Vs/901K7bX1ll1aJh/JwPMG+tpqc4rhVprkMCvhOgOO47Q85AAiSgUwIUx3UaGJpFAgAojvMyIAF9E6A4ru/40DoSoDhunmugXZd3EdXi54pDklZP0uuxGZ8AxXHjx5AeWIcAxXHrxJqekoDlCFAct1zI6bCBCFAcN1CwaKolCVAct2TY6bSBCFAcN1CwXJiqptUrKMhH0rSG5nHM4p5QHLf4BUD3DUWA4rihwkVjSYAEPCFAcdwTWuxLAtoSoDiuLW+uRgKeEqA47ikx9icBbQlQHNeWdyBXi6w3AD36TcPF87uxfH7fQC7FuTUkQHFcQ9hcigR8JEBx3EeAHE4CJKBfAhTH9RsbWkYCFMd5DZCAvglQHNd3fGgdCVAc5zVAAvomQHFc3/GhdSRgT4DiOK8HEiAB0xKgOG7a0NIxExCgOG6CINIFUxOgOG7q8NI5ExCgOG6CINIFUxOgOG7q8NI5kxEwhTg+9p5xePvd91GhQoQSnitXLuOVl17E7O9nKb/37JmADz/+DJGRkcrvaWmpmDh+nC2UjuNnzpiOF57/je3v02bMQnx8L+X33NxcTH7uaaxZs9pklwLdIQHzEaA4br6Y0iPzEKA4bp5Y0hNzEqA4bs640ivzEKA4bp5Y0hNzEqA4bs640itzEjCFOP7BlI9Qr359m+AtYnZ0dDObiL1s5R0he0DfBKhC+Px5cxUBXBXOs7L2KeMnP/8CHnv8CXz1jy/w4ZQPIHOPGDnKJrbbz2XOS4JekYB5CFAcN08s6Yn5CFAcN19M6ZG5CFAcN1c86Y35CFAcN19M6ZG5CFAcN1c86Y25CZhCHHcMkb2gLX979fU3MPXr/yhitzR7gVvE8EkPPYK33nhd2WnuKJZL35Mnc23Cu6NYbu7Lg96RgLEJUBw3dvxovbkJUBw3d3zpnfEJUBw3fgzpgbkJUBw3d3zpnfEJUBw3fgzpgXUImFIcF0G7YsVKys7xbnFxhXaCS2jtd5aPHjO20M5we/H89VdeUtKxqLvK5W+OO8utc6nQUxIwHgGK48aLGS22DgGK49aJNT01JgGK48aMG622DgGK49aJNT01JgGK48aMG622JgFTieNqbnD7nOOOO8OdieO9+/QrlEdc3VmuiuMpq1bYcpA7iuNVIptY88qh1yRgAAJh5SJwI/9H3C64ZQBraSIJWItAqVIhKFMuAtev5lnLcXpLAgYhEFomHPI6vXn9R4NYTDNJwGIESpVCeLmKyOfnqMUCT3eNQkA2gpQKDcXNfH6OGiVmRrbzQu5BI5sfdNt1LY47FtJ0pOVYOFP9u33qk8ZNmgR053h4hSpBDyINIAEScE4gono9XMs7g5s38omIBEhAZwRCQksjolod5J0+ojPLaA4JkIAQCC9fCSGly+DHvLMEQgIkoEMCISGlEVGjLvJO5ejQOppEAiQQVr4SSpcOw9W8M4RBAgEnkH/lQsDXMPMCuhbHvQUvRTfVPOOHDh5kznFvQXIcCRicANOqGDyANN/UBJhWxdThpXMmIMC0KiYIIl0wNQGmVTF1eOmcCQgwrYoJgkgXLEPAFOK4pFM5dvSoLfWJ/N6hQ0e88tKLSpFN+wKcIpy//e77mD9vrtLfsQCnY9oUxwKc9nNZ5iqhoyRgUAIUxw0aOJptCQIUxy0RZjppYAIUxw0cPJpuCQIUxy0RZjppYAIUxw0cPJpuOQKmEMdF0H7yqWcQFhamBNA+57j87pieJS0tFRPHj7MFWxXMK1SIUP7PMV2Lmstc/pabm1soP7nlrhg6TAIGIkBx3EDBoqmWI0Bx3HIhp8MGI0Bx3GABo7mWI0Bx3HIhp8MGI0Bx3GABo7mWJmAKcdzSEaTzJEACxRKgOM6LgwT0S4DiuH5jQ8tIQAhQHOd1QAL6JkBxXN/xoXUkQHGc1wAJGIcAxXHjxIqWkgAJeEiA4riHwNidBDQkQHFcQ9hcigS8IEBx3AtoHEICGhKgOK4hbC5FAl4QoDjuBTQOIYEgEaA4HiTwXJYESCDwBCiOB54xVyABbwlQHPeWHMeRgDYEKI5rw5mrkIC3BCiOe0uO40hAGwIUx7XhzFVIwB8EKI77gyLnIAES0CUBiuO6DAuNIgGFAMVxXggkoG8CFMf1HR9aRwIUx3kNkIC+CVAc13d8aB0J2BOgOM7rgQRIwLQEKI6bNrR0zAQEKI6bIIh0wdQEKI6bOrx0zgQEKI6bIIh0wdQEKI6bOrx0zmQEKI6bLKB0hwRI4C4BiuO8GkhAvwQojus3NrSMBIQAxXFeBySgbwIUx/UdH1pHAhTHeQ2QgHEIUBw3TqxoKQmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQgJ8IUBz3E0hOQwIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkYBwCFMeNEytaSgIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIk4CcCFMf9BJLTkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJGIcAxXEAPXsm4MOPP0NkZKQtcjNnTMcLz//G9vu0GbMQH99L+T03NxeTn3saa9asLhRp6VO7diQG9E1wOs6+c1paKiaOH2ecK4WWkkAQCUx+/gU8+dQzCAsLU6y4cuUyXnnpRcz+fpbyu+NruLjX17KVq3HyZG6R1578f0xMM6dzB9FtLk0ChiHwwZSPcP/4CTZ7HT8nx94zDm+/+z4qVIhQ+jh+xsr/SZ9XX38DU7/+Dz6c8oFtLsex/Pw0zGVBQ3VCwJ37XPvXsONnrP1npLjk+Bp05/WtExQ0gwR0S8CXz1FX98mq086+q+oWCA0jAR0RCOTnqDtz6wgFTSEB0xKgOP7TF/Knnn4Wr7/ykiJ4y83JmLH34vO/fap8QZffR4wcZRPj5EuCNFUEt7+Z2b9/XyFx3PHKKe7Lv2mvMDpGAn4gIK+xevXr20RteQ1WrFjJ9pDK/jWpfkmfP2+u7QGX/cMtxy/18rfo6Ga2uRx/94P5nIIETE9AXjfHjh5VXnPqTf6lS3nK56H6e1bWPuU1LF/iH3v8CXz1jy+Uz1j7LwXXr1+3ffYKNGdj5UHZD7O/K/QA2/SA6SAJ+EBAPhdLus91fE3afw7Ksm+8/S7+9tknygNpVYRTX4OuXt8+mM2hJGApAr58jrq6T/bku6qloNNZEnCTQCA/R13N7aaJ7EYCJOAjAYrjTgA6imuOu00dxXJ1CneexrvTx8eYcjgJmJ6A/WtQnHXcber4AEsF4mznuLOHXfYPw0wPkw6SQAAI2Itr3eLiMOmhR/DWG68r4pqjmKYu7+zhsbPP2+Je3wFwg1OSgCkJON7nOt6bOorl9hCcieHuvL5NCZJOkUAACXjzOaqa48t31QC6xKlJwDQE/Pk56gjF2UYv04CjIySgYwIUx50Ex/5LwYZ165SUK+qON+le3JcGV8I3d43r+JVA0wxFwPELg/0uVHGkuN3fzsRxdRfc4cOHlF2uxaVeMRQgGksCQSZgL2C7K3C7K47zdEeQg8vlDU/A8T7W8YFTSV/MHf/m7uvb8NDoAAloTMCbz1HVxOI+J119V9XYRS5HAoYl4M/PUUcIJT2gNiwwGk4CBiBAcdwhSI47YtTfU1atsB3h9lYc5w2JAV4RNFH3BBxff/K7/a41T8Vx9TUeHh6GqlWrFclnrnsgNJAEdEbAUSyT33v36VeoVoez3d/OxPHi0iTZp0LSmfs0hwR0TcDZyQ3Hh8IliePOTlu58/rWNRQaRwI6I+Dt56i4UZKwxu+iOgs0zTEkAX9/jtpDKO50pSFB0WgSMBgBiuN2AXPMkyp/cvYG5Y04zieABntl0FxdEnDMdVrclwBPdo47igIytkOHjoUKfuoSBo0iAR0ScKzZISa6u7O0uNNVjkXKZE5X9T10iIYmkUDQCTi7zxWj3N057ljvw5PXd9CdpwEkYBACvnyOOrtPtneb4rhBLgKaqVsCgfgcVZ0tbm7dwqBhJGAyAhTHfwpoSW9G/sg5zhypJnvl0B3NCRR3dH35jwAADYZJREFUw+9MUHM357gnJ0M0d5gLkoDBCDj7Qi8uOJ7u8CTnuDME8vresjmdBTkNdn3Q3OASKOk+152c486EcU9e38H1nquTgDEI+PI56koYFwIUx41xHdBKfRII1OeoeEthXJ8xp1XWIkBxvJjd4faXgeOut+KEt+JuOLhr3FovKnrrfwKuXkP2r0lXx8FPnszFxPHjbEY6fuHnznH/x48zmp9AccW/7G/41dodxb2e3anLwXzj5r+W6KH/Cbg6pu34mnR8nZW0wcNZgU7HOiD+94gzkoD5CPjyOerqPlmlRXHcfNcNPdKGgJafo9p4xFVIgAQcCVAc/2lX25NPPYOwsLBCfOyPbcvNRHx8L+Xvubm5hXKnOjvyPXPGdGVXm6s3Ul6SJEACrgnYv/7sezu+ziIjI5U/p6WlFhLAHcdfv34dn//tU3w45QPba1Qde+XKZaZUcR0S9iCBQgREPIuJaVbo/+xfZ+pDqwoVIpQ+6mtX/q1+TqqvQcfPWfvXL9Op8MIjAc8JqDtKS7rPtb+Xtf8cdHztqqvb3wuX9Pr23FqOIAFrEvDlc9TVfXJJ31WtSZtek4BnBAL5OdotLg6utCjPrGVvEiABbwhQHPeGGseQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAkYmgDFcUOHj8aTAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAl4Q4DiuDfUOIYESIAESIAESIAESIAESIAESIAESIAESIAESIAESMDQBCiOGzp8NJ4ESIAESIAESIAESIAESIAESIAESIAESIAESIAESMAbAhTHvaHGMSRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAoYmQHHc0OGj8SRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAt4QoDjuDTWOIQESIAESIAESIAESIAESIAESIAESIAESIAESIAESMDQBiuOGDh+NJwESIAESIAESIAESIAESIAESIAESIAESIAESIAES8IYAxXFvqHEMCZAACZAACZAACZAACZAACZAACZAACZAACZAACZCAoQlQHDd0+Gg8CZAACZAACZAACZAACZAACZAACZAACZAACZAACZCANwQojntDjWNIgARIgARIgARIgARIgARIgARIgARIgARIgARIgAQMTYDiuKHDR+NJgARIgARIgARIgARIgARIgARIgARIgARIgARIgAS8IUBx3BtqHEMCJEACJEACJEACJEACJEACJEACJEACJEACJEACJGBoAhTHDR0+Gk8CJEACJEACJEACJEACJEACJEACJEACJEACJEACJOANAYrj3lDjGBIgARIgARIgARIgARIgARIgARIgARIgARIgARIgAUMToDhu6PDReBIgARIgARIgARIgARIgARIgARIgARIgARIgARIgAW8IUBz3hhrHkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJGJoAxXFDh4/GkwAJkAAJkAAJkAAJBJvAspWrERPTrJAZ169fx+d/+xQfTvnAI/OmzZiF6OhmmPzc01izZrVHY9mZBEiABEiABEiABEiABEjAMwIUxz3jxd4kQAIkQAIkQAIkQAIkUIiAiOMVK1YqJGh/MOUj3D9+Avbv34cBfRPcJkZx3G1U7EgCJEACJEACJEACJEACPhOgOO4zQk5AAiRAAiRAAiRAAiRgZQLOxHHhMfn5F/DkU89g48b1mDh+nILIcZf5lSuX8cpLL2L297OgCur2LNPSUp2O9XZnupXjRN9JgARIgARIgARIgARIwJEAxXFeEyRAAiRAAiRAAiRAAiTgA4HixHFVDLffVb5gUTKWL0+2pVtxHFvcznHpJ03dhS5C+pix93qVusUHVzmUBEiABEiABEiABEiABExFgOK4qcJJZ0iABEiABEiABEiABLQmUJI4LmJ3hw4dbbvDHW2T3eWTHnoEb73xurJ73Jk47thH5ujZMwEffvwZsrL22XaWa+031yMBEiABEiABEiABEiABoxOgOG70CNJ+EiABEiABEiABEiCBoBLwRBxXRe3IyEibzfYpUpyJ487SraiD7dOuBBUCFycBEiABEiABEiABEiABAxKgOG7AoNFkEiABEiABEiABEiAB/RBwN61Kt7g4JQf54cOHbOlRZFf4Y48/ga/+8YWSaqU4cXzEyFHF7j7XDwlaQgIkQAIkQAIkQAIkQALGIkBx3FjxorUkQAIkQAIkQAIkQAI6I+CqIOcPs7/DC8//Rim42btPP0x+7mmsWXMnh7ijOO5OH525T3NIgARIgARIgARIgARIwLAEKI4bNnQ0nARIgARIgARIgARIQA8EnInjaiqU/fv3FVtEU02xUq1aNVthTWeFNtV+FStGFNo9LrvMjx09qgjvbCRAAiRAAiRAAiRAAiRAAp4ToDjuOTOOIAESIAESIAESIAESIAEbARHHY2KaFSJin0fc/g8iaMfH91L+S/qkpqxCXI8etrQq8v/289nnFHdc58qVy0y1wuuQBEiABEiABEiABEiABHwgQHHcB3gcSgIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkYEwCFMeNGTdaTQIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIk4AMBiuM+wONQEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABYxKgOG7MuNFqEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABHwhQHPcBHoeSAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAkYkwDFcWPGjVaTAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAn4QIDiuA/wOJQESIAESIAESIAESIAESIAESIAESIAESIAESIAESMCYBCiOGzNutJoESIAESIAESIAESIAESIAESIAESIAESIAESIAESMAHAhTHfYDHoSRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAsYkQHHcmHGj1SRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAj4QoDjuAzwOJQESIAESIAESIAESIAESIAESIAESIAESIAESIAESMCYBiuPGjButJgESIAESIAESIAESIAESIAESIAESIAESIAESIAES8IEAxXEf4HEoCZAACZAACZAACZAACZAACZAACZAACZAACZAACZCAMQlQHDdm3Gg1CZAACZAACZAACZAACZAACZAACZAACZAACZAACZCADwQojvsAj0NJgARIgARIgARIgARIgARIgARIgARIgARIgARIgASMSYDiuDHjRqtJgARIgARIgARIgARIgARIgARIgARIgARIgARIgAR8IEBx3Ad4HEoCJEACJEACJEACJEACJEACJEACJEACJEACJEACJGBMAhTHjRk3Wk0CJEACJEACJEACJEACJEACJEACJEACJEACJEACJOADAYrjPsDjUBIgARIgARIgARIgARIgARIgARIgARIgARIgARIgAWMSoDhuzLjRahIgARIgARIgARIgARIgARIgARIgARIgARIgARIgAR8IUBz3AR6HkgAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJGJMAxXFjxo1WkwAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJkAAJ+ECA4rgP8DiUBEiABEiABEiABEiABEiABEiABEiABEiABEiABEjAmAQojhszbrSaBEiABEiABEiABEiABEiABEiABEiABEiABEiABEjABwIUx32Ax6EkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQALGJEBx3Jhxo9UkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAIkQAI+EKA47gM8DiUBEiABEiABEiABEiABEiABEiABEiABEiABEiABEjAmAYrjxowbrSYBEiABEiABEiABEiABEiABEiABEiABEiABEiABEvCBAMVxH+BxKAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQgDEJUBw3ZtxoNQmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQAAmQgA8EKI77AI9DSYAESIAESIAESIAESIAESIAESIAESIAESIAESIAEjEmA4rgx40arSYAESIAESIAESIAESIAESIAESIAESIAESIAESIAEfCBAcdwHeBxKAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRgTAIUx40ZN1pNAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiRAAiTgAwGK4z7A41ASIAESIAESIAESIAESIAESIAESIAESIAESIAESIAFjEqA4bsy40WoSIAESIAESIAESIAESIAESIAESIAESIAESIAESIAEfCFAc9wEeh5IACZAACZAACZAACZAACZAACZAACZAACZAACZAACRiTAMVxY8aNVpMACZAACZAACZAACZAACZAACZAACZAACZAACZAACfhAgOK4D/A4lARIgARIgARIgARIgARIgARIgARIgARIgARIgARIwJgEKI4bM260mgRIgARIgARIgARIgARIgARIgARIgARIgARIgARIwAcC/w+IZNd+0Jy+awAAAABJRU5ErkJggg==)" - ], - "metadata": { - "id": "g9QNkYPSNfC5" - } - }, - { - "cell_type": "markdown", - "source": [ - "# Implementing a ARIMA (Autoregressive Integrated Moving Average) Model\n", - "- to better understand the data or to predict future points in the series.\n" - ], - "metadata": { - "id": "Oi19dgnwRM_-" - } - }, - { - "cell_type": "markdown", - "source": [ - "## Select the optimal order using AIC" - ], - "metadata": { - "id": "zUMzIRr2lAXI" - } - }, - { - "cell_type": "code", - "source": [ - "def optimize_ARIMA(order_list, exog):\n", - " \"\"\"\n", - " Return dataframe with parameters and corresponding AIC\n", - "\n", - " order_list - list with (p, d, q) tuples\n", - " exog - the exogenous variable\n", - " \"\"\"\n", - "\n", - " results = []\n", - "\n", - " for order in tqdm_notebook(order_list):\n", - " try:\n", - " model = ARIMA(exog, order=order).fit(disp=-1)\n", - " except:\n", - " continue\n", - "\n", - " aic = model.aic\n", - " results.append([order, model.aic])\n", - "\n", - " result_df = pd.DataFrame(results)\n", - " result_df.columns = ['(p, d, q)', 'AIC']\n", - " #Sort in ascending order, lower AIC is better\n", - " result_df = result_df.sort_values(by='AIC', ascending=True).reset_index(drop=True)\n", - "\n", - " return result_df" - ], - "metadata": { - "id": "bQ1NBJKCe9ws" - }, - "execution_count": null, - "outputs": [] - }, - { - "cell_type": "code", - "source": [ - "ps = range(0, 8, 1)\n", - "d = 1\n", - "qs = range(0, 8, 1)\n", - "# Create a list with all possible combination of parameters\n", - "parameters = product(ps, qs)\n", - "parameters_list = list(parameters)\n", - "order_list = []\n", - "for each in parameters_list:\n", - " each = list(each)\n", - " each.insert(1, 1)\n", - " each = tuple(each)\n", - " order_list.append(each)\n", - "\n", - "result_df = optimize_ARIMA(order_list, exog= df['Close_diff'])\n", - "result_df" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 1000, - "referenced_widgets": [ - "2d12c002ccb64f0faf09a1dce1e103b0", - "3713652868294ce1876c9d7a04e3ce42", - "bc105f4b911e4eeeb4e0c5d3246a068a", - "a90550a9ce124f089e5baa9c850fef6f", - "ad002fdb6b5e41eeaa7e2cd02ccba541", - "1bbd3415268d44edb3ba7fdce43b816d", - "6199e690822a44d19623d7febd3c5e58", - "aface8e24692405baaa4e13c356d199f", - "ee66fb56cee04a1487557dfc74f1ccad", - "901b687c700c4bd9bbcc07f793eb72ca", - "bd7e7b51165946a5834fd688fdc6686c" - ] - }, - "id": "2N8bwlqmgh0l", - "outputId": "7f7b6549-866c-4f6c-8a21-a912cda578fc" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "display_data", - "data": { - "text/plain": [ - " 0%| | 0/64 [00:00\n", - "
\n", - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
(p, d, q)AIC
0(1, 1, 1)1173.487398
1(2, 1, 1)1173.782953
2(1, 1, 2)1174.070595
3(0, 1, 3)1174.126408
4(0, 1, 2)1174.267185
5(0, 1, 1)1174.458121
6(2, 1, 2)1175.781483
7(3, 1, 1)1175.781844
8(0, 1, 4)1175.993243
9(3, 1, 2)1177.455039
10(4, 1, 1)1177.757546
11(0, 1, 5)1177.791493
12(3, 1, 3)1178.185211
13(4, 1, 2)1179.382167
14(0, 1, 6)1179.727750
15(5, 1, 1)1179.743136
16(5, 1, 2)1181.345726
17(6, 1, 1)1181.725322
18(0, 1, 7)1181.725832
19(5, 1, 3)1183.357599
20(7, 1, 1)1183.613455
21(7, 1, 2)1184.133557
22(3, 1, 0)1184.463428
23(4, 1, 0)1184.717132
24(7, 1, 3)1184.986355
25(5, 1, 0)1185.454265
26(2, 1, 0)1186.435658
27(6, 1, 0)1186.771205
28(7, 1, 0)1187.679874
29(1, 1, 0)1190.687542
30(0, 1, 0)1227.389901
\n", - "
\n", - " \n", - " \n", - " \n", - "\n", - " \n", - "
\n", - " \n", - " " - ] - }, - "metadata": {}, - "execution_count": 192 - } - ] - }, - { - "cell_type": "markdown", - "source": [ - "## Model Training" - ], - "metadata": { - "id": "GA3lBkdClDrY" - } - }, - { - "cell_type": "code", - "source": [ - "def find_anomalies(squared_errors):\n", - " threshold = np.mean(squared_errors) + np.std(squared_errors)\n", - " predictions = (squared_errors >= threshold).astype(int)\n", - " return predictions, threshold" - ], - "metadata": { - "id": "jU31jW8WgwEn" - }, - "execution_count": null, - "outputs": [] - }, - { - "cell_type": "code", - "source": [ - "model = ARIMA(differenced_df['Close_diff'], order=(1, 1, 1))\n", - "arma_fit = model.fit()\n", - "squared_errors = arma_fit.resid ** 2\n", - "predictions, threshold = find_anomalies(squared_errors)" - ], - "metadata": { - "id": "MvOcQa4BiZXV" - }, - "execution_count": null, - "outputs": [] - }, - { - "cell_type": "code", - "source": [ - "#0 = normal observations ; 1 = anomalous observations\n", - "df['Anomaly'] = predictions\n", - "print(df)" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "s_cDYDpgimqd", - "outputId": "01a56090-6dd7-4b1d-9662-f15d97c93506" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "stream", - "name": "stdout", - "text": [ - " Close Close_diff Anomaly\n", - "Date \n", - "2017-01-01 23360.779297 -90.263959 NaN\n", - "2017-02-01 23740.730469 379.951172 0.0\n", - "2017-03-01 24111.589844 370.859375 0.0\n", - "2017-04-01 24615.130859 503.541015 0.0\n", - "2017-05-01 25660.650391 1045.519532 0.0\n", - "... ... ... ...\n", - "2022-05-01 21415.199219 325.808594 0.0\n", - "2022-06-01 21859.789063 444.589844 0.0\n", - "2022-07-01 20156.509766 -1703.279297 0.0\n", - "2022-08-01 19954.390625 -202.119141 0.0\n", - "2022-09-01 17222.830078 -2731.560547 1.0\n", - "\n", - "[69 rows x 3 columns]\n" - ] - } - ] - }, - { - "cell_type": "markdown", - "source": [ - "## Result Illustration" - ], - "metadata": { - "id": "SjGYmVfclHfi" - } - }, - { - "cell_type": "code", - "source": [ - "#Dont run first\n", - "import plotly.graph_objects as go\n", - "# create list of outlier_dates\n", - "\n", - "\n", - "# plot value on y-axis and date on x-axis\n", - "fig = px.line(df, df.index, y=\"Close\", title='Monthly Prices of Hang Seng Index - UNSUPERVISED ANOMALY DETECTION (ARIMA Model)', template = 'plotly_dark')\n", - "fig.update_traces(line_color='#22577A')\n", - "\n", - "outlier_dates = df[df['Anomaly'] == 1].index\n", - "\n", - "\n", - "# obtain y value of anomalies to plot\n", - "y_values = [df.loc[i]['Close'] for i in outlier_dates]\n", - "fig.add_trace(go.Scatter(x=outlier_dates, y=y_values, mode = 'markers',\n", - " text=outlier_dates.astype(str).to_list(),\n", - " name = 'Anomaly',\n", - " marker=dict(color='red',size=10)))\n", - "\n", - "for i in range(len(outlier_dates)):\n", - " fig.add_annotation(x = outlier_dates[i], y = y_values[i] ,\n", - " text= outlier_dates.astype(str).to_list()[i][:7],\n", - " showarrow=False,\n", - " yshift=20)\n", - "\n", - "fig.show()" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 542 - }, - "id": "c0ifCBxTjGd4", - "outputId": "a559f7de-adc7-4f66-a61b-0fb04548f88e" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "display_data", - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "\n", - "" - ] - }, - "metadata": {} - } - ] - }, - { - "cell_type": "markdown", - "source": [ - "![newplot (2).png](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABccAAAINCAYAAAD7vsd/AAAAAXNSR0IArs4c6QAAIABJREFUeF7s3Qe8FNX9///PbXv7pVi4IgpIsQtWRMBu7BpRlNiTaDR81fw1fo3xq19CNGqM5WcJidF87UZFIAFjNGIHsWMvdATxAoJwe9//4wzOZu4wszO7O7s75bWPRx6GuzNnznmes7O77zl7pqBPnz5x4YEAAggggAACCCCAAAIIIIAAAggggAACCCCAQIQECgjHI9TbNBUBBBBAAAEEEEAAAQQQQAABBBBAAAEEEEBAEyAcZyAggAACCCCAAAIIIIAAAggggAACCCCAAAIIRE6AcDxyXU6DEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBAjHGQMIIIAAAggggAACCCCAAAIIIIAAAggggAACkRMgHI9cl9NgBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAcJxxgACCCCAAAIIIIAAAggggAACCCCAAAIIIIBA5AQIxyPX5TQYAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAgHCcMYAAAggggAACCCCAAAIIIIAAAggggAACCCAQOQHC8ch1OQ1GAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQIBxnDCCAAAIIIIAAAggggAACCCCAAAIIIIAAAghEToBwPHJdToMRQAABBBBAAAEEEEAAAQQQQAABBBBAAAEECMcZAwgggAACCCCAAAIIIIAAAggggAACCCCAAAKREyAcj1yX02AEEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABwnHGAAIIIIAAAggggAACCCCAAAIIIIAAAggggEDkBAjHI9flNBgBBBBAAAEEEEAAAQQQQAABBBBAAAEEEECAcJwxgAACCCCAAAIIIIAAAggggAACCCCAAAIIIBA5AcLxyHU5DUYAAQQQQAABBBBAAAEEEEAAAQQQQAABBBAgHGcMIIAAAggggAACCCCAAAIIIIAAAggggAACCEROgHA8cl1OgxFAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQIxxkDCCCAAAIIIIAAAggggAACCCCAAAIIIIAAApETIByPXJfTYAQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAHCccYAAggggAACCCCAAAIIIIAAAggggAACCCCAQOQECMcj1+U0GAEEEEAA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)" - ], - "metadata": { - "id": "_E07k8m1Nish" - } - }, - { - "cell_type": "code", - "source": [ - "outlier_dates.astype(str).to_list()" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "4U5ZJ4yrkYKa", - "outputId": "8c272df7-9ead-4581-d1e1-62566fba6530" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "execute_result", - "data": { - "text/plain": [ - "['2018-01-01',\n", - " '2018-02-01',\n", - " '2018-06-01',\n", - " '2018-10-01',\n", - " '2019-01-01',\n", - " '2019-05-01',\n", - " '2019-08-01',\n", - " '2019-12-01',\n", - " '2020-03-01',\n", - " '2020-11-01',\n", - " '2021-07-01',\n", - " '2022-09-01']" - ] - }, - "metadata": {}, - "execution_count": 197 - } - ] - }, - { - "cell_type": "code", - "source": [ - "y_values" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/" - }, - "id": "FTDq9RA6m3i5", - "outputId": "41351507-292d-4b70-ba8e-3a84bc3787e3" - }, - "execution_count": null, - "outputs": [ - { - "output_type": "execute_result", - "data": { - "text/plain": [ - "[32887.269531,\n", - " 24979.689453,\n", - " 28633.179688,\n", - " 28542.619141,\n", - " 26906.720703,\n", - " 26312.630859,\n", - " 23603.480469,\n", - " 25177.050781,\n", - " 26341.490234,\n", - " 28283.710938,\n", - " 25961.029297,\n", - " 23475.259766]" - ] - }, - "metadata": {}, - "execution_count": 156 - } - ] - }, - { - "cell_type": "code", - "source": [], - "metadata": { - "id": "CY-XwxCnq3RB" - }, - "execution_count": null, - "outputs": [] - } - ] -} \ No newline at end of file diff --git a/Codes/Task 4/Part_C_Stock_Anomaly_Associated_Events_Analysis_.ipynb b/Codes/Task 4/Part_C_Stock_Anomaly_Associated_Events_Analysis_.ipynb deleted file mode 100644 index 8a5dee3..0000000 --- a/Codes/Task 4/Part_C_Stock_Anomaly_Associated_Events_Analysis_.ipynb +++ /dev/null @@ -1,2591 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": { - "id": "view-in-github", - "colab_type": "text" - }, - "source": [ - "\"Open" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "5c33f96b", - "metadata": { - "id": "5c33f96b", - "outputId": "560c037e-253a-4a43-e44d-57a3051f96d6" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Requirement already satisfied: plotly in c:\\users\\jane wong\\anaconda3\\lib\\site-packages (5.11.0)\n", - "Requirement already satisfied: tenacity>=6.2.0 in c:\\users\\jane wong\\anaconda3\\lib\\site-packages (from plotly) (8.0.1)\n", - "Note: you may need to restart the kernel to use updated packages.\n" - ] - } - ], - "source": [ - "pip install plotly" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "1a23ca7e", - "metadata": { - "id": "1a23ca7e", - "outputId": "f9f72459-d9d5-4187-acfc-0ac20ce8b75f" - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "Building prefix dict from C:\\Users\\Jane Wong\\OneDrive - HKUST Connect\\ESG\\dict.txt ...\n", - "Loading model from cache C:\\Users\\JANEWO~1\\AppData\\Local\\Temp\\jieba.u4dcdda7161e8cb4bbea6dffafa6acf12.cache\n", - "Loading model cost 1.510 seconds.\n", - "Prefix dict has been built successfully.\n" - ] - } - ], - "source": [ - "import statsmodels\n", - "import requests\n", - "from bs4 import BeautifulSoup\n", - "from selenium.webdriver import Chrome\n", - "from selenium.webdriver.common.keys import Keys\n", - "from selenium import webdriver\n", - "\n", - "import jieba\n", - "import jieba.analyse\n", - "jieba.initialize()\n", - "jieba.set_dictionary('dict.txt')\n", - "\n", - "import yfinance as yf\n", - "\n", - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "import pandas as pd\n", - "import random\n", - "\n", - "import numpy as np\n", - "import tensorflow as tf\n", - "import pandas as pd\n", - "pd.options.mode.chained_assignment = None\n", - "import seaborn as sns\n", - "from matplotlib.pylab import rcParams\n", - "import matplotlib.pyplot as plt\n", - "import plotly\n", - "import plotly.express as px\n", - "import plotly.graph_objects as go\n", - "import datetime as dt\n", - "\n", - "from sklearn.preprocessing import StandardScaler\n", - "from sklearn.feature_extraction.text import TfidfVectorizer\n", - "from sklearn.feature_extraction.text import CountVectorizer\n", - "import pyLDAvis\n", - "from __future__ import print_function\n", - "import pyLDAvis\n", - "import pyLDAvis.sklearn\n", - "pyLDAvis.enable_notebook()\n", - "from sklearn.datasets import fetch_20newsgroups\n", - "from sklearn.decomposition import LatentDirichletAllocation\n", - "from sklearn.preprocessing import StandardScaler\n", - "from sklearn.decomposition import PCA\n", - "from sklearn.covariance import EllipticEnvelope\n", - "from sklearn.ensemble import IsolationForest\n", - "\n", - "%matplotlib inline\n", - "\n", - "sns.set(style='whitegrid', palette='muted')\n", - "rcParams['figure.figsize'] = 14, 8\n", - "np.random.seed(0)\n", - "tf.random.set_seed(0)\n", - "\n", - "import warnings\n", - "warnings.filterwarnings('ignore')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ab11c0c8", - "metadata": { - "id": "ab11c0c8", - "outputId": "f23983a2-c0bf-4889-af27-6151c35ae229" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "C:\\Users\\Jane Wong\\anaconda3\\lib\\site-packages\\matplotlib\\mpl-data\\matplotlibrc\n" - ] - } - ], - "source": [ - "import matplotlib\n", - "print(matplotlib.matplotlib_fname())" - ] - }, - { - "cell_type": "markdown", - "id": "e5f09f18", - "metadata": { - "id": "e5f09f18" - }, - "source": [ - "# Import Preprocessed Headlines" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ef898947", - "metadata": { - "id": "ef898947", - "outputId": "3aac0a0c-75f4-4c63-cd91-65005c68f520" - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
dateheadlinesegmented headlinekeywords
02017-01-01房委會綠建環評社區獲鉑金評級房委會 綠建 環評 社區 獲 鉑金 評級房委會 綠建 環評 社區 鉑金 評級
12017-01-01發祥街西項目獲鉑金評級發祥 街西 項目 獲 鉑金 評級發祥 街西 項目 鉑金 評級
22017-01-01潘基文告別寄語聯國為無聲者吶喊潘基文 告別 寄語 聯國為 無聲 者 吶喊告別 寄語 聯國為 無聲 吶喊 潘基文
32017-01-01潘基文告別聯合國潘基文 告別 聯合國告別 聯合國 潘基文
42017-01-01兩岸國際潘基文告別寄語聯國為無聲者吶喊兩岸 國際 潘基文 告別 寄語 聯國為 無聲 者 吶喊兩岸 國際 告別 寄語 聯國為 無聲 吶喊 潘基文
...............
3219412022-09-30俄羅斯指西方涉蓄意破壞北溪天然氣管道美國稱推測元兇為時尚早俄羅斯 指 西方 涉 蓄意 破壞 北溪 天然氣 管道 美國 稱 推測 元兇 為 時尚 早俄羅斯 破壞 天然氣 美國 推測 元兇 時尚 北溪 蓄意 管道 西方
3219422022-09-30美國辦太平洋島國峰會被指抗衡中國影響力中方重申不搞經濟脅迫美 國辦 太平洋 島國 峰會 被 指 抗衡 中國 影響力 中方 重申 不 搞 經濟 脅迫國辦 島國 峰會 中國 影響力 經濟 脅迫 抗衡 重申 中方 太平洋
3219432022-09-30澳門旅議會料國慶訪澳旅客增至三萬恢復內地團後旅客人數將再增澳門 旅 議會 料 國慶 訪澳 旅客 增至 三萬 恢復 內地 團後 旅客 人數 將再 增旅客 澳門 議會 國慶 訪澳 三萬 恢復 內地 團後 人數 將再 增至
3219442022-09-30謝安琪與母女檔拍親子裝大讚囡囡表現專業謝安琪 與 母女 檔 拍 親子裝 大 讚 囡 囡 表現 專業謝安琪 親子裝 表現 專業 母女
3219452022-09-30有狂風雷暴日間短暫時間有陽光最高度有 狂風 雷暴 日間 短暫 時間 有 陽光 最 高度狂風 日間 短暫 時間 陽光 雷暴 高度
\n", - "

321946 rows × 4 columns

\n", - "
" - ], - "text/plain": [ - " date headline \\\n", - "0 2017-01-01 房委會綠建環評社區獲鉑金評級 \n", - "1 2017-01-01 發祥街西項目獲鉑金評級 \n", - "2 2017-01-01 潘基文告別寄語聯國為無聲者吶喊 \n", - "3 2017-01-01 潘基文告別聯合國 \n", - "4 2017-01-01 兩岸國際潘基文告別寄語聯國為無聲者吶喊 \n", - "... ... ... \n", - "321941 2022-09-30 俄羅斯指西方涉蓄意破壞北溪天然氣管道美國稱推測元兇為時尚早 \n", - "321942 2022-09-30 美國辦太平洋島國峰會被指抗衡中國影響力中方重申不搞經濟脅迫 \n", - "321943 2022-09-30 澳門旅議會料國慶訪澳旅客增至三萬恢復內地團後旅客人數將再增 \n", - "321944 2022-09-30 謝安琪與母女檔拍親子裝大讚囡囡表現專業 \n", - "321945 2022-09-30 有狂風雷暴日間短暫時間有陽光最高度 \n", - "\n", - " segmented headline \\\n", - "0 房委會 綠建 環評 社區 獲 鉑金 評級 \n", - "1 發祥 街西 項目 獲 鉑金 評級 \n", - "2 潘基文 告別 寄語 聯國為 無聲 者 吶喊 \n", - "3 潘基文 告別 聯合國 \n", - "4 兩岸 國際 潘基文 告別 寄語 聯國為 無聲 者 吶喊 \n", - "... ... \n", - "321941 俄羅斯 指 西方 涉 蓄意 破壞 北溪 天然氣 管道 美國 稱 推測 元兇 為 時尚 早 \n", - "321942 美 國辦 太平洋 島國 峰會 被 指 抗衡 中國 影響力 中方 重申 不 搞 經濟 脅迫 \n", - "321943 澳門 旅 議會 料 國慶 訪澳 旅客 增至 三萬 恢復 內地 團後 旅客 人數 將再 增 \n", - "321944 謝安琪 與 母女 檔 拍 親子裝 大 讚 囡 囡 表現 專業 \n", - "321945 有 狂風 雷暴 日間 短暫 時間 有 陽光 最 高度 \n", - "\n", - " keywords \n", - "0 房委會 綠建 環評 社區 鉑金 評級 \n", - "1 發祥 街西 項目 鉑金 評級 \n", - "2 告別 寄語 聯國為 無聲 吶喊 潘基文 \n", - "3 告別 聯合國 潘基文 \n", - "4 兩岸 國際 告別 寄語 聯國為 無聲 吶喊 潘基文 \n", - "... ... \n", - "321941 俄羅斯 破壞 天然氣 美國 推測 元兇 時尚 北溪 蓄意 管道 西方 \n", - "321942 國辦 島國 峰會 中國 影響力 經濟 脅迫 抗衡 重申 中方 太平洋 \n", - "321943 旅客 澳門 議會 國慶 訪澳 三萬 恢復 內地 團後 人數 將再 增至 \n", - "321944 謝安琪 親子裝 表現 專業 母女 \n", - "321945 狂風 日間 短暫 時間 陽光 雷暴 高度 \n", - "\n", - "[321946 rows x 4 columns]" - ] - }, - "execution_count": 50, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "#Import Pre-processed headliens\n", - "headline_df = pd.read_csv('headline_df.csv')\n", - "headline_df = headline_df.drop(columns = ['Unnamed: 0'])\n", - "headline_df['date'] = pd.to_datetime(headline_df['date'])\n", - "headline_df" - ] - }, - { - "cell_type": "markdown", - "id": "ae684a95", - "metadata": { - "id": "ae684a95" - }, - "source": [ - "# Data Partition" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "8dcbeb45", - "metadata": { - "id": "8dcbeb45" - }, - "outputs": [], - "source": [ - "sample_df = headline_df.groupby(\"date\").sample(frac = 0.01 , random_state=1).reset_index()\n", - "\n", - "# Anomaly1: 2018-01(up)\n", - "anomaly1 = headline_df[(headline_df['date']>='2017-12-01') & (headline_df['date']<='2017-12-31')]\n", - "\n", - "# Anomaly2: 2018-02(drop)\n", - "anomaly2 = headline_df[(headline_df['date']>='2018-1-01') & (headline_df['date']<='2018-1-31')]\n", - "\n", - "# Anomaly3: 2018-06(drop)\n", - "anomaly3 = headline_df[(headline_df['date']>='2018-5-01') & (headline_df['date']<='2018-5-31')]\n", - "\n", - "#Anomaly4: 2018-10(drop)\n", - "anomaly4 = headline_df[(headline_df['date']>='2018-9-01') & (headline_df['date']<='2018-9-30')]\n", - "\n", - "#Anomaly5: 2019-01(up)\n", - "anomaly5 = headline_df[(headline_df['date']>='2018-12-01') & (headline_df['date']<='2018-12-31')]\n", - "\n", - "#Anomaly6: 2019-05(drop)\n", - "anomaly6 = headline_df[(headline_df['date']>='2019-04-01') & (headline_df['date']<='2019-04-30')]\n", - "\n", - "#Anomaly7: 2019-08(drop)\n", - "anomaly7 = headline_df[(headline_df['date']>='2019-07-01') & (headline_df['date']<='2019-07-31')]\n", - "\n", - "#Anomaly8: 2019-12(up)\n", - "anomaly8 = headline_df[(headline_df['date']>='2019-11-01') & (headline_df['date']<='2019-11-30')]\n", - "\n", - "#Anomaly9: 2020-03(drop)\n", - "anomaly9 = headline_df[(headline_df['date']>='2020-02-01') & (headline_df['date']<='2020-02-29')]\n", - "\n", - "#Anomaly10: 2020-11(up)\n", - "anomaly10 = headline_df[(headline_df['date']>='2020-10-01') & (headline_df['date']<='2020-10-31')]\n", - "\n", - "#Anomaly11: 2021-07(drop)\n", - "anomaly11 = headline_df[(headline_df['date']>='2021-06-01') & (headline_df['date']<='2021-06-30')]\n", - "\n", - "#Anomaly12: 2022-09(drop)\n", - "anomaly12 = headline_df[(headline_df['date']>='2020-08-01') & (headline_df['date']<='2020-08-31')]\n", - "\n", - "positive_anomaly = pd.concat([anomaly1, anomaly5, anomaly8, anomaly10])\n", - "negative_anomaly = pd.concat([anomaly2 , anomaly3 ,anomaly4 , anomaly6 , anomaly7 , anomaly9 , anomaly11 , anomaly12])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "40e5343e", - "metadata": { - "id": "40e5343e", - "outputId": "0168385a-16bc-40c8-e054-89acb9735e5c" - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
indexdateheadlinesegmented headlinekeywords
0222017-01-01中國今發布南沙海洋環境預報中國 今發布 南沙 海洋環境 預報中國 今發布 海洋環境 預報 南沙
11132017-01-03辦理低保豈能成吃拿卡要的藉口辦理 低保 豈能 成 吃拿卡要 的 藉口吃拿卡要 辦理 豈能 藉口 低保
22462017-01-04國立傳統藝術中心颱風影響工程對外開放時程延後國立 傳統 藝術 中心 颱風 影響 工程 對外開放 時程 延後國立 傳統 藝術 颱風 影響 對外開放 時程 延後 工程 中心
33352017-01-05六成高空氣污染日數受內地影響環保署不排除霧霾襲港六成 高 空氣污染 日數 受 內地 影響 環保署 不 排除 霧 霾 襲港空氣污染 日數 內地 影響 環保署 襲港 六成 排除
43602017-01-06中國最安全城市排行榜香港第一拉薩第二中國 最 安全 城市 排行榜 香港 第一 拉薩 第二中國 拉薩 排行榜 香港 安全 第二 第一 城市
..................
32113212982022-09-28李家超指當局銳意發展創科注入新經濟動力李家 超指 當局 銳意 發展 創科 注入 新 經濟 動力超指 當局 銳意 發展 創科 經濟 動力 李家 注入
32123215432022-09-29級颶風撲佛州萬人疏散級 颶風 撲 佛州 萬人 疏散颶風 佛州 萬人 疏散
32133215522022-09-29綠色和平極端酷熱工友極危險拒絕紙老虎保障綠色 和平 極端 酷熱 工友 極 危險 拒絕 紙老虎 保障綠色 極端 酷熱 危險 拒絕 紙老虎 工友 和平 保障
32143218402022-09-30美國公布太平洋夥伴關係宣言所羅門群島簽署美國 公布 太平洋 夥伴關係 宣言 所羅門 群島 簽署美國 夥伴關係 所羅門 群島 簽署 宣言 太平洋 公布
32153218502022-09-30英皇集團加盟平台網上售戲飛捐支持植樹英皇 集團 加盟 平台 網上 售戲 飛捐 支持 植樹集團 網上 售戲 飛捐 植樹 英皇 加盟 平台 支持
\n", - "

3216 rows × 5 columns

\n", - "
" - ], - "text/plain": [ - " index date headline \\\n", - "0 22 2017-01-01 中國今發布南沙海洋環境預報 \n", - "1 113 2017-01-03 辦理低保豈能成吃拿卡要的藉口 \n", - "2 246 2017-01-04 國立傳統藝術中心颱風影響工程對外開放時程延後 \n", - "3 335 2017-01-05 六成高空氣污染日數受內地影響環保署不排除霧霾襲港 \n", - "4 360 2017-01-06 中國最安全城市排行榜香港第一拉薩第二 \n", - "... ... ... ... \n", - "3211 321298 2022-09-28 李家超指當局銳意發展創科注入新經濟動力 \n", - "3212 321543 2022-09-29 級颶風撲佛州萬人疏散 \n", - "3213 321552 2022-09-29 綠色和平極端酷熱工友極危險拒絕紙老虎保障 \n", - "3214 321840 2022-09-30 美國公布太平洋夥伴關係宣言所羅門群島簽署 \n", - "3215 321850 2022-09-30 英皇集團加盟平台網上售戲飛捐支持植樹 \n", - "\n", - " segmented headline keywords \n", - "0 中國 今發布 南沙 海洋環境 預報 中國 今發布 海洋環境 預報 南沙 \n", - "1 辦理 低保 豈能 成 吃拿卡要 的 藉口 吃拿卡要 辦理 豈能 藉口 低保 \n", - "2 國立 傳統 藝術 中心 颱風 影響 工程 對外開放 時程 延後 國立 傳統 藝術 颱風 影響 對外開放 時程 延後 工程 中心 \n", - "3 六成 高 空氣污染 日數 受 內地 影響 環保署 不 排除 霧 霾 襲港 空氣污染 日數 內地 影響 環保署 襲港 六成 排除 \n", - "4 中國 最 安全 城市 排行榜 香港 第一 拉薩 第二 中國 拉薩 排行榜 香港 安全 第二 第一 城市 \n", - "... ... ... \n", - "3211 李家 超指 當局 銳意 發展 創科 注入 新 經濟 動力 超指 當局 銳意 發展 創科 經濟 動力 李家 注入 \n", - "3212 級 颶風 撲 佛州 萬人 疏散 颶風 佛州 萬人 疏散 \n", - "3213 綠色 和平 極端 酷熱 工友 極 危險 拒絕 紙老虎 保障 綠色 極端 酷熱 危險 拒絕 紙老虎 工友 和平 保障 \n", - "3214 美國 公布 太平洋 夥伴關係 宣言 所羅門 群島 簽署 美國 夥伴關係 所羅門 群島 簽署 宣言 太平洋 公布 \n", - "3215 英皇 集團 加盟 平台 網上 售戲 飛捐 支持 植樹 集團 網上 售戲 飛捐 植樹 英皇 加盟 平台 支持 \n", - "\n", - "[3216 rows x 5 columns]" - ] - }, - "execution_count": 52, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "sample_df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "47bcedf7", - "metadata": { - "id": "47bcedf7" - }, - "outputs": [], - "source": [ - "def vectorize(df):\n", - "\n", - " texts = df['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - " vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', use_idf=False)\n", - "\n", - "# apply transformation\n", - " tf = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - " tf_feature_names = vectorizer.get_feature_names()\n", - "\n", - " return tf, tf_feature_names\n", - "\n", - "sample_df = headline_df.groupby(\"date\").sample(frac = 0.01 , random_state=1).reset_index()\n", - "tf_sample, tf_feature_names_sample = vectorize(sample_df)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "fb3e1e35", - "metadata": { - "id": "fb3e1e35", - "outputId": "f1e4163a-853c-4e80-b232-6e4505284b04" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Fitting 5 folds for each of 4 candidates, totalling 20 fits\n", - "Best Model's Params: {'learning_decay': 0.7, 'n_components': 2}\n", - "Best Log Likelihood Score: -10668.241981968877\n" - ] - } - ], - "source": [ - "from sklearn.model_selection import GridSearchCV\n", - "\n", - "# Options to try with our LDA\n", - "search_params = {\n", - " 'n_components': [2, 3, 4, 8],\n", - " 'learning_decay': [0.7]\n", - "}\n", - "\n", - "# Set up LDA\n", - "model = LatentDirichletAllocation(learning_method='online')\n", - "\n", - "# Try all of the options\n", - "gridsearch = GridSearchCV(model, param_grid=search_params, n_jobs=-1, verbose=1)\n", - "gridsearch.fit(tf_sample)\n", - "\n", - "print(\"Best Model's Params: \", gridsearch.best_params_)\n", - "print(\"Best Log Likelihood Score: \", gridsearch.best_score_)" - ] - }, - { - "cell_type": "markdown", - "id": "2f586351", - "metadata": { - "id": "2f586351" - }, - "source": [ - "# Anomaly Analysis" - ] - }, - { - "cell_type": "markdown", - "id": "2cf58c4e", - "metadata": { - "id": "2cf58c4e" - }, - "source": [ - "## Postive Anomaly" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "234e7c18", - "metadata": { - "id": "234e7c18", - "outputId": "b0620adf-9556-42e4-c057-56ab2990cc13" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 82, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = positive_anomaly['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_pos = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_namespos = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_pos)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_pos, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ecc0552b", - "metadata": { - "id": "ecc0552b", - "outputId": "fa8ca8c2-9f16-4263-ef46-956b70ffbb7d" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "['發展', '中國', '香港', '合作', '經濟', '持續', '習近平', '國際', '企業', '印尼', '全球', '海嘯', '創新', '綠色', '環保', '增至', '世界', '論壇', '投資', '深圳', '金融', '科技', '國家', '項目', '舉行', '推動', '市場', '美國', '社會', '地震']\n", - "[101.2411081 96.0707096 59.42785118 57.54349857 51.37339908\n", - " 50.76843273 46.13342008 44.28069624 43.60323667 40.75336758\n", - " 40.19445033 39.68266857 39.33392443 39.19353101 38.84124136\n", - " 38.45761399 36.06319632 35.28402145 34.40511358 33.58012288\n", - " 33.46073164 33.06982484 32.07327046 31.32372394 29.07798231\n", - " 29.00120612 28.38383962 27.2009543 26.44828704 26.34378019]\n", - "['天文台', '颱風', '風球', '天氣', '香港', '信號', '沙德爾', '三號', '浪卡', '熱帶', '年度', '日本', '風暴', '氣旋', '澳門', '強風', '改發', '考慮', '失蹤', '明日', '新聞', '天晴', '生效', '八號', '本港', '維持', '乾燥', '威尼斯', '暴雨', '氣溫']\n", - "[150.47104956 105.88991908 84.68617347 71.90992239 71.86424153\n", - " 64.58738544 55.39163987 54.99363986 54.42447449 49.14438078\n", - " 48.62528323 46.6395833 46.1875637 45.96217368 45.84951221\n", - " 44.01028648 43.82392868 43.71010794 43.09741272 42.24091468\n", - " 41.72430846 38.65664204 38.60991495 38.58352297 38.22411116\n", - " 36.90388171 36.8190931 36.76832535 36.6946579 35.5732837 ]\n" - ] - } - ], - "source": [ - "def plot_top_words(model, feature_names, n_top_words):\n", - " for topic_idx, topic in enumerate(model.components_):\n", - " #ID\n", - " top_features_ind = topic.argsort()[: -n_top_words - 1 : -1]\n", - " #Top Features\n", - " top_features = [feature_names[i] for i in top_features_ind]\n", - " print( top_features )\n", - " #Term Frequency\n", - " weights = topic[top_features_ind]\n", - " print( weights )\n", - "plot_top_words(lda_tfidf,tf_feature_namespos,30)" - ] - }, - { - "cell_type": "markdown", - "id": "0c5057bb", - "metadata": { - "id": "0c5057bb" - }, - "source": [ - "## Negative Anomaly" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "3e74bb35", - "metadata": { - "id": "3e74bb35", - "outputId": "3fe3a77c-94d5-4a49-8c6c-f2d2fb22d284" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 84, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = negative_anomaly['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_neg = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_namesneg = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_neg)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_neg, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "eeb059ad", - "metadata": { - "id": "eeb059ad", - "outputId": "f6bbdb19-00fe-4606-a47c-513154505470" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "['山竹', '颱風', '日本', '中國', '香港', '機場', '航班', '取消', '關西', '政府', '影響', '風災', '襲港', '服務', '市民', '暴雨', '居民', '北海道', '吹襲', '強颱風', '經濟', '停課', '美國', '中心', '地震', '交通', '大阪', '恢復', '傾瀉', '風暴']\n", - "[506.38146773 391.57701053 300.57730284 227.96251346 224.9981018\n", - " 221.75379882 209.6725619 205.21691106 184.88193729 177.37250973\n", - " 158.0544783 155.8690724 147.58390469 147.27878976 137.56808612\n", - " 128.45550673 125.56659391 121.34726591 120.54969733 118.26279574\n", - " 118.25879508 117.38318561 115.80386446 115.72894442 115.37733298\n", - " 114.62226182 114.05090662 111.74960918 109.65405764 107.00338141]\n", - "['天文台', '天氣', '山竹', '颱風', '驟雨', '警告', '雷暴', '酷熱', '暴雨', '風球', '信號', '香港', '最高', '持續', '生效', '發展', '本港', '今年', '氣溫', '未來', '熱帶', '死亡', '澳門', '下午', '今日', '明日', '狂風', '改發', '多雲', '襲港']\n", - "[644.88958065 506.62575646 385.47540092 314.86206047 314.11464705\n", - " 313.21622594 307.8966413 305.52522511 287.7213258 285.60528845\n", - " 264.38707162 256.8883382 241.94238129 230.64453552 214.91650521\n", - " 204.68042101 187.79002707 184.47034908 182.62945358 176.20520685\n", - " 160.57601183 159.07470141 155.52578288 149.4592725 148.39980017\n", - " 147.34587385 145.60530085 144.10603682 141.75708252 139.30459805]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_namesneg,30)" - ] - }, - { - "cell_type": "markdown", - "id": "8a779c47", - "metadata": { - "id": "8a779c47" - }, - "source": [ - "## Anomaly1" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "61b1aaf8", - "metadata": { - "id": "61b1aaf8" - }, - "outputs": [], - "source": [ - "texts = anomaly1['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_1 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names1 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_1)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "1c0fa1d7", - "metadata": { - "id": "1c0fa1d7", - "outputId": "1c952b33-221f-4b82-e7d8-a64f31b137d9" - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "Building prefix dict from C:\\Users\\Jane Wong\\OneDrive - HKUST Connect\\ESG\\dict.txt ...\n", - "Loading model from cache C:\\Users\\JANEWO~1\\AppData\\Local\\Temp\\jieba.u4dcdda7161e8cb4bbea6dffafa6acf12.cache\n", - "Loading model cost 1.502 seconds.\n", - "Prefix dict has been built successfully.\n" - ] - }, - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 53, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_1, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "fcca99fe", - "metadata": { - "scrolled": true, - "id": "fcca99fe", - "outputId": "177bb6c2-b666-49ed-a2fb-1fe26e9ae632" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 244 75 6015 33 2278 4808 5467 2040 8104 1282 5026 6230 926 4020\n", - " 508 6152 2809 3103 2474 2469 5346 1918 2084 2790 809 5428 893 4174\n", - " 3776 1933]\n", - "['中國', '一路', '經濟', '一帶', '天氣', '海洋公園', '發展', '報告', '香港', '加價', '澳門', '聯合國', '全球', '明年', '今年', '美國', '工作', '影響', '安排', '安全', '生態', '國家', '增長', '崔世安', '億元', '疏散', '內地', '最高', '政府', '國際']\n", - "[14.93233549 14.65068642 14.38716795 14.27596208 12.21832112 11.08610891\n", - " 10.7183718 10.44307966 9.75482772 9.69973329 9.0128817 7.8936319\n", - " 7.58349759 7.37509395 7.24714627 6.95038934 6.92315806 6.50409473\n", - " 6.46599433 6.13037681 5.9135075 5.8652221 5.76699568 5.71426195\n", - " 5.69323246 5.60521885 5.59778677 5.58425532 5.53228233 5.49487096]\n", - "[6461 244 8104 5467 2321 2287 4528 1663 5026 8022 6039 7946 2004 8032\n", - " 4087 3497 2933 221 1733 1476 2080 4020 1933 6215 5126 926 1241 6330\n", - " 562 6532]\n", - "['菲律賓', '中國', '香港', '發展', '失蹤', '天秤', '死亡', '合作', '澳門', '風災', '綠色', '項目', '城市', '颱風', '智慧', '持續', '年度', '世界', '吹襲', '南部', '增至', '明年', '國際', '聖誕', '熱帶風暴', '全球', '創新', '至少', '企業', '藍圖']\n", - "[29.01099883 24.19881731 22.80510549 20.91110496 18.71793268 18.39089697\n", - " 18.32998645 17.80649145 17.03970118 16.25548684 15.15205325 15.10880485\n", - " 15.04809374 15.01868758 14.89535574 13.44233067 13.40508341 13.30042488\n", - " 13.17984564 12.48771085 12.35592089 12.07720772 11.95639465 11.88260897\n", - " 11.3967091 11.34163453 10.65901807 10.6421779 10.44609119 10.27861333]\n" - ] - } - ], - "source": [ - "def plot_top_words(model, feature_names, n_top_words):\n", - " for topic_idx, topic in enumerate(model.components_):\n", - " #ID\n", - " top_features_ind = topic.argsort()[: -n_top_words - 1 : -1]\n", - " #Top Features\n", - " top_features = [feature_names[i] for i in top_features_ind]\n", - " print( top_features )\n", - " #Term Frequency\n", - " weights = topic[top_features_ind]\n", - " print( weights )\n", - "\n", - "plot_top_words(lda_tfidf,tf_feature_names1,30)\n" - ] - }, - { - "cell_type": "markdown", - "id": "d454922e", - "metadata": { - "id": "d454922e" - }, - "source": [ - "## Anomaly2" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "c65c7915", - "metadata": { - "id": "c65c7915", - "outputId": "45f1b068-57f5-477d-b3dc-7f01384a1948" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 54, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly2['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_2 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names2 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_2)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_2, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "62e847d6", - "metadata": { - "id": "62e847d6", - "outputId": "f18c69f7-998d-46de-d5a4-2bcc35b1922c" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 245 5615 794 3551 6188 2763 1454 3977 1356 8430 1951 6350 933 1400\n", - " 6213 2043 1246 3488 558 2124 3832 1292 8340 5816 5129 5643 68 4179\n", - " 1640 3042]\n", - "['中國', '發展', '傾瀉', '持續', '經濟', '山泥', '南加州', '新聞', '北極', '香港', '國際', '美國', '全球', '十大', '綠色', '城市', '創新', '投資', '企業', '增至', '政策', '加州', '風暴', '社會', '澳門', '白皮書', '一路', '暴雨', '合作', '建設']\n", - "[42.49585984 30.54598518 19.1661267 18.76194515 18.4235489 17.6693858\n", - " 17.49090193 15.83786441 13.80432049 13.77007552 13.24290763 12.85796231\n", - " 12.66589547 12.58630029 12.4619346 12.2420816 11.76736737 11.62151361\n", - " 11.61599877 11.56307189 11.45511977 11.30966067 10.93050839 10.88353691\n", - " 10.62521803 10.40936445 10.38885073 10.37054678 10.35008198 10.32093277]\n", - "[2313 1507 8430 2100 2843 4695 4686 6213 1640 2070 3124 4344 4252 7849\n", - " 1978 2311 4804 4240 4176 4714 4179 1268 4074 505 5931 6533 4675 216\n", - " 8412 4336]\n", - "['天氣', '去年', '香港', '塞納河', '巴黎', '水位', '氣溫', '綠色', '合作', '基金', '影響', '李克強', '會議', '金融', '團結', '天文台', '法國', '最高', '暴漲', '水浸', '暴雨', '劉怡翔', '昂坪', '今年', '空氣', '臭氧濃度', '氣候', '世界', '首次', '本港']\n", - "[23.52751378 18.43157945 18.2663389 16.43821411 15.38096033 12.43983824\n", - " 11.89169719 11.2883255 11.28324272 10.70551796 9.58600373 9.4118763\n", - " 8.91168984 8.67257947 8.57305055 8.47952376 8.42495104 8.4239795\n", - " 8.02321497 7.86370952 7.75669537 7.73984769 7.38107224 7.34727143\n", - " 7.24762137 7.16451806 7.14188279 7.02470619 6.97310905 6.45148573]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names2,30)" - ] - }, - { - "cell_type": "markdown", - "id": "087b7c2c", - "metadata": { - "id": "087b7c2c" - }, - "source": [ - "## Anomaly3" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "7ad35f6b", - "metadata": { - "id": "7ad35f6b", - "outputId": "78becb31-aceb-4aba-8cf7-c38e47b1cddf" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 56, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly3['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_3 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names3 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_3)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_3, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "0d70bf6d", - "metadata": { - "id": "0d70bf6d", - "outputId": "e3a556d5-6cae-4c3d-e229-6d032da7dfd0" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 5506 7477 805 6066 2012 11156 6694 8658 8381 6028 7820 6294\n", - " 559 10420 5217 4081 4412 10828 5507 3112 10824 10952 292 11027\n", - " 3612 3041 2633 325 5316 6264]\n", - "['暴雨', '發展', '佛誕', '死亡', '印度', '香港', '溫度', '至少', '美國', '正午', '科技', '沙塵暴', '亞洲', '金融', '新界', '影響', '成立', '雷雨', '暴雨成災', '失蹤', '雷暴', '項目', '世界', '風暴', '局部地區', '天氣', '地盤', '中國', '日間', '汶川']\n", - "[24.28740601 21.14360177 18.88467386 18.35668084 18.22759079 14.5546624\n", - " 14.06443187 12.86192157 12.64554883 12.1850168 11.30309085 10.82907425\n", - " 10.6882978 10.15619752 10.14174138 10.03907714 9.8357761 9.52841732\n", - " 9.32172913 9.27595875 8.93463286 8.91379079 8.87344842 8.80850052\n", - " 8.79972721 8.78237002 8.753038 8.59103156 8.44763888 8.38482953]\n", - "[10329 3041 3032 9422 11270 5578 8100 4656 668 11156 11221 325\n", - " 7309 6149 10048 3035 363 10467 7720 5570 11251 210 5577 3771\n", - " 10824 5717 3540 7477 5346 215]\n", - "['酷熱', '天氣', '天文台', '警告', '高溫', '最高', '紀錄', '持續', '今年', '香港', '驟雨', '中國', '生效', '氣溫', '連續', '天晴', '中暑', '錄得', '破紀錄', '最熱', '高度', '下午', '最長', '市區', '雷暴', '本港', '小時', '發展', '明日', '下周']\n", - "[111.2382204 87.42003248 56.73019548 54.16668249 44.15062768\n", - " 42.97947653 42.66026818 41.05118086 39.9255193 34.42157182\n", - " 33.30573076 31.33539454 31.15201748 31.09338257 30.62620406\n", - " 30.54574545 30.34491483 28.83935476 23.56543575 22.54559855\n", - " 21.76383381 21.47646041 21.4628062 21.4435854 19.62212761\n", - " 19.40473137 18.68333907 17.91688142 17.73795088 17.61849345]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names3,30)" - ] - }, - { - "cell_type": "markdown", - "id": "943b2d14", - "metadata": { - "id": "943b2d14" - }, - "source": [ - "## Anomaly4" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "4bf47677", - "metadata": { - "id": "4bf47677", - "outputId": "6b37f93f-f676-4849-88e3-42062cff8fd4" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 58, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly4['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_4 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names4 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_4)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_4, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "60395f70", - "metadata": { - "id": "60395f70", - "outputId": "bf8f500d-a3f5-47af-ccaf-1c2c92d5c999" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[13045 14694 25809 21242 4864 26922 27189 7279 4286 782 9831 10299\n", - " 6419 6201 26962 25816 16482 15470 12959 6753 2470 6216 9100 26978\n", - " 5476 13193 9760 8848 18249 26874]\n", - "['日本', '機場', '關西', '航班', '取消', '颱風', '香港', '大阪', '北海道', '中國', '影響', '恢復', '地震', '國泰', '飛燕', '關閉', '滯留', '沖繩', '旅客', '增至', '停課', '國際', '巴士', '飛燕襲', '吹襲', '明日', '強颱風', '山竹', '發展', '風災']\n", - "[222.8873012 180.85941396 165.2196237 164.43213342 155.90591351\n", - " 130.96400274 125.75119972 103.35845911 90.8505733 75.8147143\n", - " 74.37972297 72.89083047 71.37575718 69.37214146 67.42851832\n", - " 65.39225781 57.44292264 54.82319061 53.42587854 53.11996002\n", - " 52.79890227 52.62454285 52.08152787 50.80162706 50.09151207\n", - " 49.97479682 46.81709525 45.8977747 44.05611777 42.92340789]\n", - "[ 8848 26922 7340 22200 9760 26883 16705 27189 2216 26929 7348 12384\n", - " 9146 5542 15298 18222 8725 26874 20662 12316 14003 24665 16142 5476\n", - " 2444 9831 26862 14087 21516 7191]\n", - "['山竹', '颱風', '天文台', '襲港', '強颱風', '風球', '澳門', '香港', '信號', '颶風', '天氣', '政府', '市民', '周日', '水浸', '登陸', '居民', '風災', '考慮', '改發', '本港', '過後', '清理', '吹襲', '停工', '影響', '風暴', '杏花', '菲律賓', '大澳']\n", - "[629.36590181 332.78570904 249.55923198 214.23465192 155.34990893\n", - " 142.6569857 129.09738752 128.30647763 125.90398591 109.30295786\n", - " 107.95409816 107.20837103 107.1757171 103.39142871 94.29401813\n", - " 88.95754895 87.038806 84.30804647 82.87663529 80.74462563\n", - " 80.41941527 77.74724117 75.17291346 74.29801265 73.58574976\n", - " 73.09725966 70.48596158 68.30434697 66.92146896 66.43370714]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names4,30)" - ] - }, - { - "cell_type": "markdown", - "id": "f91e7c07", - "metadata": { - "id": "f91e7c07" - }, - "source": [ - "## Anomaly5" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ac87e27b", - "metadata": { - "id": "ac87e27b", - "outputId": "b0a84f57-b49b-4c7a-abad-2f0350b497f3" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 60, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly5['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_5 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names5 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_5)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_5, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "8a81f2fd", - "metadata": { - "id": "8a81f2fd", - "outputId": "ec32ff15-4fe1-4d96-cfde-23646674c183" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[8462 2794 250 2331 1510 1899 4939 1419 4662 2329 6374 3728 2215 3851\n", - " 2118 3831 8094 6339 2965 6186 6293 3350 3517 6663 8045 527 3835 977\n", - " 4738 1922]\n", - "['香港', '山竹', '中國', '天氣', '印尼', '回顧', '海嘯', '十大', '死亡', '天文台', '聖誕', '搜尋', '大事', '政府', '增至', '改革開放', '除夕', '習近平', '年度', '綠色', '美國', '應對', '投資', '菲律賓', '防災', '今年', '攻略', '全球', '氣候變化', '國家']\n", - "[26.16350118 15.93219474 15.71192651 14.80553179 13.5922339 13.38647755\n", - " 12.46470025 12.29179706 10.89120018 10.68089521 10.15828423 10.10409692\n", - " 10.0310155 9.86769705 9.84936839 9.5722952 9.52388233 9.38129367\n", - " 9.10540175 8.91291438 8.80975938 8.56707131 8.51698975 8.28683973\n", - " 8.14802489 8.09461029 8.07364506 8.06091575 8.04323432 7.73563762]\n", - "[5631 4939 1510 5128 250 2965 1874 6164 4072 854 2789 2004 6523 4665\n", - " 577 2794 5181 1942 2815 3588 3075 977 2118 5590 5509 5596 4051 1175\n", - " 5651 6186]\n", - "['發展', '海嘯', '印尼', '漢字', '中國', '年度', '四川', '經濟', '日本', '傾瀉', '山泥', '地震', '至少', '死傷', '企業', '山竹', '火山', '國際', '峰會', '持續', '引發', '全球', '增至', '當局', '生活', '當選', '旅遊', '出席', '發表', '綠色']\n", - "[22.15468715 19.44111526 18.85954736 17.76023775 16.77314962 16.18458003\n", - " 16.01604573 15.82165993 15.58162015 14.69878035 13.67532406 12.06063331\n", - " 11.92966998 11.07906751 10.99972475 10.11194325 10.05897911 9.24536309\n", - " 9.03069368 8.95239066 8.10419508 8.09869622 7.60291212 7.33238136\n", - " 7.01679216 6.79966834 6.44421468 6.31693421 6.24547089 6.17028543]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names5,30)" - ] - }, - { - "cell_type": "markdown", - "id": "13759f3a", - "metadata": { - "id": "13759f3a" - }, - "source": [ - "## Anomaly6" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "98a9f6cb", - "metadata": { - "id": "98a9f6cb", - "outputId": "57169532-4b56-473f-dd5a-c044d45821b4" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 62, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly6['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_6 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names6 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_6)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_6, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "65fb8dfb", - "metadata": { - "id": "65fb8dfb", - "outputId": "9a13651d-9f12-4292-94ff-134f4b505c6c" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 5873 11500 3264 3256 6942 11928 9937 5944 7509 3328 11506 6797\n", - " 4342 6585 3098 3793 2223 4268 217 6481 752 4220 6050 7698\n", - " 3946 3267 4996 11658 6688 2974]\n", - "['暴雨', '雷暴', '天氣', '天文台', '深圳', '驟雨', '警告', '最高', '狂風', '失蹤', '雷雨', '洪水', '影響', '氣溫', '多雲', '小時', '取消', '引發', '下午', '死亡', '今年', '廣東', '未來', '生效', '工人', '天氣預報', '持續', '預警', '沖走', '增至']\n", - "[80.14730256 69.19841187 64.66454106 60.50300652 55.38318192 46.55523157\n", - " 41.31013584 39.55962752 35.19916911 35.03906302 31.75496529 29.66662545\n", - " 25.61764013 23.28611946 22.48946187 22.31720267 21.87365709 21.40332862\n", - " 21.36404942 21.1913542 20.60469945 20.35374226 20.03894952 19.61908213\n", - " 19.33341744 18.70838894 18.68532794 18.29370358 17.48382603 17.14043636]\n", - "[ 44 101 374 7879 9891 2355 2733 8900 1354 11857 8698 1181\n", - " 11953 5415 4996 4883 336 8672 3908 11639 752 8558 3912 2714\n", - " 8011 10050 8424 7665 8853 1865]\n", - "['一帶', '一路', '中國', '發展', '論壇', '合作', '國際', '習近平', '全球', '香港', '綠色', '傾瀉', '高峰', '政府', '持續', '投資', '世界', '經濟', '山泥', '項目', '今年', '紀錄', '山竹', '國家', '直播', '財經', '第二屆', '環保', '美國', '加強']\n", - "[56.58768554 55.61086546 37.75481332 36.77002623 30.6649202 29.46361465\n", - " 25.65629583 24.46413834 22.65977204 22.56990189 20.06190696 19.67327291\n", - " 17.40492453 17.375606 16.27091727 15.26718626 14.7050081 14.68826655\n", - " 13.73991043 13.46706544 12.75128864 12.58748866 12.54904234 12.49551197\n", - " 12.27651102 12.14734424 12.13557703 12.08846158 11.62826634 11.59658445]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names6,30)" - ] - }, - { - "cell_type": "markdown", - "id": "232c3478", - "metadata": { - "id": "232c3478" - }, - "source": [ - "## Anomaly7" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e9402a6c", - "metadata": { - "id": "e9402a6c", - "outputId": "6947f387-608b-415f-b530-4e8e33f38b1e" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 64, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly7['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_7 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names7 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_7)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_7, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "8b441bea", - "metadata": { - "id": "8b441bea", - "outputId": "a3412a08-b18c-460a-eef0-15492cce9c5a" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 3010 3016 11325 10882 11133 10391 7132 5528 9484 7329 11265 11371\n", - " 751 2884 6131 10990 11123 6974 3912 5644 1012 11360 7499 4628\n", - " 853 10758 6793 3610 4967 755]\n", - "['天文台', '天氣', '驟雨', '雷暴', '風球', '酷熱', '狂風', '最高', '警告', '生效', '香港', '高溫', '今日', '多雲', '氣溫', '韋帕', '風暴', '熱帶', '幾陣', '未來', '信號', '高度', '發展', '持續', '低壓', '陽光', '澳門', '局部地區', '改發', '今晚']\n", - "[81.08519802 78.62173906 65.88753956 62.51523084 51.24063036 50.12059143\n", - " 41.45734927 39.56309969 39.52550759 36.70317792 34.09420719 31.25184303\n", - " 29.83696526 29.68123032 29.54941549 28.54509464 27.77997059 27.39388054\n", - " 27.02390937 24.49619645 24.33638384 24.00789788 23.60669081 23.10737434\n", - " 22.7881612 22.61440445 22.41667241 22.1482223 21.93279047 20.11575493]\n", - "[ 5456 11147 386 5275 6022 1150 529 3083 471 3671 4628 9616\n", - " 7484 6399 1993 2164 7489 747 8733 2556 11058 6403 7446 8915\n", - " 104 6216 2090 2756 5457 5181]\n", - "['暴雨', '颱風', '中國', '日本', '死亡', '傾瀉', '九州', '失蹤', '丹娜', '山泥', '持續', '貴州', '登陸', '洪水', '印度', '台灣', '發出', '今年', '至少', '國際', '預警', '洪災', '疏散', '萬人', '一號', '江西', '受災', '增至', '暴雨成災', '新聞']\n", - "[75.47626912 46.83493384 35.09184757 34.66534396 32.72957909 30.75619462\n", - " 29.83179268 29.77055511 29.42701363 28.99534563 27.78779164 24.07798372\n", - " 23.66037522 23.28507005 23.17703697 22.99701561 21.79499139 21.75229491\n", - " 21.13749142 20.60162986 19.16275552 18.52108681 18.43076774 18.31931034\n", - " 18.00965439 17.73830918 17.67791105 17.47224198 17.34663494 16.98952617]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names7,30)" - ] - }, - { - "cell_type": "markdown", - "id": "1dd4ae84", - "metadata": { - "id": "1dd4ae84" - }, - "source": [ - "## Anomaly8" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "71cf4371", - "metadata": { - "id": "71cf4371", - "outputId": "d12dccec-5194-4330-8383-b885b63f0677" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 66, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly8['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_8 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names8 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_8)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_8, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2cc57c73", - "metadata": { - "id": "2cc57c73", - "outputId": "b78f8756-84ec-419e-924c-5a2fb8af8688" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 242 1685 3426 4772 5575 7092 1277 5285 2407 6237 6614 798 5924 2991\n", - " 220 3353 1258 415 4650 5108 2396 3322 3696 3650 4256 1261 1951 3681\n", - " 1779 4821]\n", - "['中國', '國際', '日本', '發展', '舉行', '香港', '即位', '綠色', '巡遊', '路障', '金融', '全球', '解放軍', '持續', '世界', '新聞', '博會', '亮相', '環保', '第二屆', '峰會', '新世界', '東京', '未來', '清理', '博覽會', '大灣', '李克強', '基金', '皇德仁']\n", - "[19.99700114 15.46635722 14.86275929 13.95727344 13.79984252 13.58969697\n", - " 12.61303871 11.60960773 11.08670637 10.54175131 10.22782664 10.01259199\n", - " 9.1530986 8.93475159 8.7794381 8.70973799 8.63842259 8.53602654\n", - " 8.52214091 8.22636029 7.87527106 7.36476435 7.35475793 7.27939246\n", - " 7.25872653 7.09571926 7.06346343 6.8890057 6.79453215 6.78373445]\n", - "[2084 4772 2991 7092 492 1401 3994 242 3991 2772 1615 798 1685 2928\n", - " 3522 6392 5307 1993 5555 348 1996 3523 1038 6004 1954 3968 5460 397\n", - " 5263 1672]\n", - "['威尼斯', '發展', '持續', '香港', '企業', '合作', '水災', '中國', '水浸', '意大利', '嚴重', '全球', '國際', '投資', '暴雨', '進入', '緊急狀態', '天晴', '至少', '乾燥', '天氣', '暴雨成災', '創新', '論壇', '大獎', '氣溫', '聯合國', '亞洲', '經濟', '國家']\n", - "[29.8303799 17.951432 17.48022947 14.49244388 13.39118086 12.01547138\n", - " 11.93337545 11.89174197 10.81969295 10.02906022 9.89846029 9.79035057\n", - " 9.65436342 9.4141742 9.37864623 9.08470956 9.01935327 8.83581734\n", - " 8.57789919 8.51015941 8.23956323 7.98138637 7.9771269 7.65456297\n", - " 7.41762075 7.34388951 7.3255817 7.1622021 7.15780645 6.97610602]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names8,30)" - ] - }, - { - "cell_type": "markdown", - "id": "be15f31b", - "metadata": { - "id": "be15f31b" - }, - "source": [ - "## Anomaly9" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "47b97704", - "metadata": { - "id": "47b97704", - "outputId": "ed32ab90-36d5-454c-f462-e57b645ec521" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 68, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly9['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_9 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names9 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_9)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_9, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "cc584472", - "metadata": { - "id": "cc584472", - "outputId": "ad91fdeb-6773-486e-94bb-cecc8515ee58" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[4193 3054 1500 2352 3099 3652 4091 3623 4017 2608 5437 1434 5327 2677\n", - " 2817 4296 653 5516 3172 5492 625 5385 2918 3061 5068 2146 3780 391\n", - " 751 3482]\n", - "['肺炎', '武漢', '天氣', '持續', '氣溫', '發展', '罷工', '疫情', '經濟', '新冠', '風暴', '多雲', '雷暴', '日本', '最新', '英國', '全球', '驟雨', '法治', '香港', '內地', '項目', '東京', '死亡', '醫管局', '情人節', '確診', '企業', '冷鋒', '狂風']\n", - "[22.7117871 14.7962142 13.95923402 12.11395863 11.4467156 11.42776138\n", - " 11.0751255 11.00017054 10.68698703 10.47466373 10.29933445 9.96868688\n", - " 9.62183015 9.56760938 9.48042799 9.15872728 9.05108089 8.87426293\n", - " 8.71986076 8.51098414 8.40396877 8.2141112 8.18591121 8.1555543\n", - " 7.75654424 7.7231661 7.69543951 7.58740205 7.42240479 7.41505955]\n", - "[5395 1819 4680 3343 3623 4630 4028 2782 179 5492 1497 1349 2540 3097\n", - " 1828 2630 1032 2031 4463 2629 555 3271 5437 3568 3652 376 1679 309\n", - " 4549 1256]\n", - "['預算案', '山火', '財政', '澳洲', '疫情', '警告', '綠色', '暴雨', '中國', '香港', '天文台', '基金', '政府', '氣候變化', '岑智明', '新聞', '取消', '影響', '裁員', '新省', '億元', '減薪', '風暴', '生效', '發展', '以來', '寒冷', '交通', '計劃', '回應']\n", - "[18.65011177 13.65946084 13.4864836 13.20257306 9.72256163 9.63253825\n", - " 9.61575569 9.13329463 8.71260951 8.65674055 7.98492641 6.87273829\n", - " 6.51311878 6.50016791 6.37678562 5.89091673 5.86140892 5.81718975\n", - " 5.80779181 5.6925014 5.55840409 5.55113195 5.51076694 5.27471226\n", - " 5.24380575 5.21748959 5.14037173 5.13657866 4.96528318 4.93470888]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names9,30)" - ] - }, - { - "cell_type": "markdown", - "id": "8c621615", - "metadata": { - "id": "8c621615" - }, - "source": [ - "## Anomaly10" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "c289ef77", - "metadata": { - "id": "c289ef77", - "outputId": "b5be380a-be7e-4efb-839a-ac97ee9b9f2c" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 70, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly10['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_10 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names10 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_10)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_10, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "b87ab05e", - "metadata": { - "id": "b87ab05e", - "outputId": "314f623a-ef66-4c67-c608-a5e67c5699a2" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 2771 10115 10101 880 164 5750 5879 4569 3678 2777 6398 7766\n", - " 1264 6680 5651 7569 95 5262 4916 4780 10091 6840 5960 655\n", - " 1295 4315 5475 9239 5896 10212]\n", - "['天文台', '颱風', '風球', '信號', '三號', '沙德爾', '浪卡', '改發', '強風', '天氣', '熱帶', '考慮', '八號', '生效', '氣旋', '維持', '一號', '本港', '明日', '新聞', '風暴', '發出', '消息', '今日', '公里', '掛號', '機會', '逼近', '浪卡襲', '香港']\n", - "[116.02867242 75.27801599 75.15278519 59.3213883 51.8561299\n", - " 51.58829575 49.26837666 41.84094541 39.59446237 38.77571877\n", - " 38.63166269 36.91289835 35.7565145 35.55301688 34.6362126\n", - " 32.81276488 30.94523613 30.05853537 29.31787304 28.84127743\n", - " 28.3884404 26.77304337 26.58629385 25.4314269 25.39744584\n", - " 24.91795651 24.22357103 24.13429361 24.12318085 23.55347466]\n", - "[ 6844 337 10212 4231 6003 495 2011 2772 7743 2727 7559 1191\n", - " 9519 2339 5654 6805 2628 5206 6644 4140 7528 5129 719 10289\n", - " 2471 1551 8439 5098 9528 1272]\n", - "['發展', '中國', '香港', '持續', '深圳', '乾燥', '合作', '天晴', '習近平', '大致', '綠色', '全球', '金正恩', '國際', '氣溫', '疫情', '多雲', '服務', '環保', '投資', '經濟', '最高', '企業', '高度', '基金', '創新', '視察', '最低', '金融', '公司']\n", - "[37.03522628 36.87042448 30.5069981 26.84049652 25.47712694 21.95158618\n", - " 19.18957671 19.16189807 18.18166216 17.47402248 17.12388933 16.62115675\n", - " 15.80175442 15.37714642 14.72359882 14.58363692 14.25351759 14.23036963\n", - " 14.16530294 14.09826039 13.57178819 13.17237261 12.90190875 12.89796798\n", - " 12.03616497 12.02710229 11.87246362 11.79074695 11.46186608 11.29102309]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names10,30)" - ] - }, - { - "cell_type": "markdown", - "id": "d93114eb", - "metadata": { - "id": "d93114eb" - }, - "source": [ - "## Anomaly11" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "91d88c9e", - "metadata": { - "id": "91d88c9e", - "outputId": "19368920-1564-400a-8df1-fa12fd7235f8" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 72, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly11['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_11 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names11 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_11)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_11, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "46038a8f", - "metadata": { - "id": "46038a8f", - "outputId": "3b1b2092-533e-474c-e8ae-a2d7e10cedfb" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 2799 8466 5012 889 6602 2804 6745 10052 10229 5628 9746 2785\n", - " 6283 4764 3688 10242 10243 9721 649 84 5565 1922 2401 3253\n", - " 5196 5175 10013 1013 957 5587]\n", - "['天文台', '警告', '暴雨', '信號', '生效', '天氣', '發出', '香港', '黃色', '水浸', '雷暴', '大雨', '熱帶', '新聞', '影響', '黑色', '黑雨', '雨量', '今年', '一號', '毫米', '取消', '地區', '小時', '本港', '未來', '首個', '傾瀉', '停課', '氣旋']\n", - "[93.04562865 72.90236973 70.57353155 34.86067862 33.77397823 31.5481846\n", - " 29.03850943 26.10115796 25.35613051 23.90881811 23.8995282 23.30714026\n", - " 22.67480646 22.54769947 22.42485693 22.34676132 22.30998993 22.22541467\n", - " 22.09181568 20.92009677 20.91891708 20.90533795 19.92679985 19.92135594\n", - " 18.87782613 17.97653048 16.49850911 15.76361435 15.55697982 15.49121246]\n", - "[10104 5075 4222 2804 6752 9746 7455 5590 339 2649 9259 651\n", - " 4148 10052 9347 3309 4887 1163 9616 2474 10130 2029 8329 2763\n", - " 2360 3554 6558 7433 6955 2490]\n", - "['驟雨', '最高', '持續', '天氣', '發展', '雷暴', '綠色', '氣溫', '中國', '多雲', '酷熱', '今日', '投資', '香港', '金融', '局部地區', '明日', '全球', '陽光', '基金', '高度', '合作', '計劃', '大致', '國際', '幾陣', '環保', '經濟', '短暫', '報告']\n", - "[57.86270783 42.93529938 40.37357721 40.2562928 37.65618466 36.48167865\n", - " 35.64043528 34.78089752 28.4612732 27.75569876 25.73896605 24.93901288\n", - " 24.61601884 23.4075147 22.67568055 22.43042209 21.8638414 21.3668645\n", - " 19.86335499 19.62012992 18.28404394 18.26651518 18.23875818 18.09727007\n", - " 16.5995682 15.1803046 14.67150813 13.25882398 13.05720068 12.74019664]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names11,30)" - ] - }, - { - "cell_type": "markdown", - "id": "1854a071", - "metadata": { - "id": "1854a071" - }, - "source": [ - "## Anomaly12" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "7493cc2e", - "metadata": { - "id": "7493cc2e", - "outputId": "13c3718d-c394-4492-c3bb-d5520759ee7b" - }, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "\n", - "
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 80, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "texts = anomaly12['keywords'].astype(str).to_list()\n", - "#chinese_stopwords=[\"、\",\"。\",\"〈\",\"〉\",\"《\",\"》\",\"一\",\"一些\",\"一何\",\"一切\",\"一則\",\"一方面\",\"一旦\",\"一來\",\"一樣\",\"一般\",\"一轉眼\",\"七\",\"萬一\",\"三\",\"上\",\"上下\",\"下\",\"不\",\"不僅\",\"不但\",\"不光\",\"不單\",\"不只\",\"不外乎\",\"不如\",\"不妨\",\"不盡\",\"不盡然\",\"不得\",\"不怕\",\"不惟\",\"不成\",\"不拘\",\"不料\",\"不是\",\"不比\",\"不然\",\"不特\",\"不獨\",\"不管\",\"不至於\",\"不若\",\"不論\",\"不過\",\"不問\",\"與\",\"與其\",\"與其說\",\"與否\",\"與此同時\",\"且\",\"且不說\",\"且說\",\"兩者\",\"個\",\"個別\",\"中\",\"臨\",\"為\",\"為了\",\"為什麽\",\"為何\",\"為止\",\"為此\",\"為著\",\"乃\",\"乃至\",\"乃至於\",\"麽\",\"之\",\"之一\",\"之所以\",\"之類\",\"烏乎\",\"乎\",\"乘\",\"九\",\"也\",\"也好\",\"也罷\",\"了\",\"二\",\"二來\",\"於\",\"於是\",\"於是乎\",\"雲雲\",\"雲爾\",\"五\",\"些\",\"亦\",\"人\",\"人們\",\"人家\",\"什\",\"什麽\",\"什麽樣\",\"今\",\"介於\",\"仍\",\"仍舊\",\"從\",\"從此\",\"從而\",\"他\",\"他人\",\"他們\",\"他們們\",\"以\",\"以上\",\"以為\",\"以便\",\"以免\",\"以及\",\"以故\",\"以期\",\"以來\",\"以至\",\"以至於\",\"以致\",\"們\",\"任\",\"任何\",\"任憑\",\"會\",\"似的\",\"但\",\"但凡\",\"但是\",\"何\",\"何以\",\"何況\",\"何處\",\"何時\",\"余外\",\"作為\",\"你\",\"你們\",\"使\",\"使得\",\"例如\",\"依\",\"依據\",\"依照\",\"便於\",\"俺\",\"俺們\",\"倘\",\"倘使\",\"倘或\",\"倘然\",\"倘若\",\"借\",\"借儻然\",\"假使\",\"假如\",\"假若\",\"做\",\"像\",\"兒\",\"先不先\",\"光是\",\"全體\",\"全部\",\"八\",\"六\",\"兮\",\"共\",\"關於\",\"關於具體地說\",\"其\",\"其一\",\"其中\",\"其二\",\"其他\",\"其余\",\"其它\",\"其次\",\"具體地說\",\"具體說來\",\"兼之\",\"內\",\"再\",\"再其次\",\"再則\",\"再有\",\"再者\",\"再者說\",\"再說\",\"冒\",\"沖\",\"況且\",\"幾\",\"幾時\",\"凡\",\"凡是\",\"憑\",\"憑借\",\"出於\",\"出來\",\"分\",\"分別\",\"則\",\"則甚\",\"別\",\"別人\",\"別處\",\"別是\",\"別的\",\"別管\",\"別說\",\"到\",\"前後\",\"前此\",\"前者\",\"加之\",\"加以\",\"即\",\"即令\",\"即使\",\"即便\",\"即如\",\"即或\",\"即若\",\"卻\",\"去\",\"又\",\"又及\",\"及\",\"及其\",\"及至\",\"反之\",\"反而\",\"反過來\",\"反過來說\",\"受到\",\"另\",\"另一方面\",\"另外\",\"另悉\",\"只\",\"只當\",\"只怕\",\"只是\",\"只有\",\"只消\",\"只要\",\"只限\",\"叫\",\"叮咚\",\"可\",\"可以\",\"可是\",\"可見\",\"各\",\"各個\",\"各位\",\"各種\",\"各自\",\"同\",\"同時\",\"後\",\"後者\",\"向\",\"向使\",\"向著\",\"嚇\",\"嗎\",\"否則\",\"吧\",\"吧噠\",\"含\",\"吱\",\"呀\",\"呃\",\"嘔\",\"唄\",\"嗚\",\"嗚呼\",\"呢\",\"呵\",\"呵呵\",\"呸\",\"呼哧\",\"咋\",\"和\",\"咚\",\"咦\",\"咧\",\"咱\",\"咱們\",\"咳\",\"哇\",\"哈\",\"哈哈\",\"哉\",\"哎\",\"哎呀\",\"哎喲\",\"嘩\",\"喲\",\"哦\",\"哩\",\"哪\",\"哪個\",\"哪些\",\"哪兒\",\"哪天\",\"哪年\",\"哪怕\",\"哪樣\",\"哪邊\",\"哪里\",\"哼\",\"哼唷\",\"唉\",\"唯有\",\"啊\",\"啐\",\"啥\",\"啦\",\"啪達\",\"啷當\",\"喂\",\"喏\",\"喔唷\",\"嘍\",\"嗡\",\"嗡嗡\",\"嗬\",\"嗯\",\"噯\",\"嘎\",\"嘎登\",\"噓\",\"嘛\",\"嘻\",\"嘿\",\"嘿嘿\",\"四\",\"因\",\"因為\",\"因了\",\"因此\",\"因著\",\"因而\",\"固然\",\"在\",\"在下\",\"在於\",\"地\",\"基於\",\"處在\",\"多\",\"多麽\",\"多少\",\"大\",\"大家\",\"她\",\"她們\",\"好\",\"如\",\"如上\",\"如上所述\",\"如下\",\"如何\",\"如其\",\"如同\",\"如是\",\"如果\",\"如此\",\"如若\",\"始而\",\"孰料\",\"孰知\",\"寧\",\"寧可\",\"寧願\",\"寧肯\",\"它\",\"它們\",\"對\",\"對於\",\"對待\",\"對方\",\"對比\",\"將\",\"小\",\"爾\",\"爾後\",\"爾爾\",\"尚且\",\"就\",\"就是\",\"就是了\",\"就是說\",\"就算\",\"就要\",\"盡\",\"盡管\",\"盡管如此\",\"豈但\",\"己\",\"已\",\"已矣\",\"巴\",\"巴巴\",\"年\",\"並\",\"並且\",\"庶乎\",\"庶幾\",\"開外\",\"開始\",\"歸\",\"歸齊\",\"當\",\"當地\",\"當然\",\"當著\",\"彼\",\"彼時\",\"彼此\",\"往\",\"待\",\"很\",\"得\",\"得了\",\"怎\",\"怎麽\",\"怎麽辦\",\"怎麽樣\",\"怎奈\",\"怎樣\",\"總之\",\"總的來看\",\"總的來說\",\"總的說來\",\"總而言之\",\"恰恰相反\",\"您\",\"惟其\",\"慢說\",\"我\",\"我們\",\"或\",\"或則\",\"或是\",\"或曰\",\"或者\",\"截至\",\"所\",\"所以\",\"所在\",\"所幸\",\"所有\",\"才\",\"才能\",\"打\",\"打從\",\"把\",\"抑或\",\"拿\",\"按\",\"按照\",\"換句話說\",\"換言之\",\"據\",\"據此\",\"接著\",\"故\",\"故此\",\"故而\",\"旁人\",\"無\",\"無寧\",\"無論\",\"既\",\"既往\",\"既是\",\"既然\",\"日\",\"時\",\"時候\",\"是\",\"是以\",\"是的\",\"更\",\"曾\",\"替\",\"替代\",\"最\",\"月\",\"有\",\"有些\",\"有關\",\"有及\",\"有時\",\"有的\",\"望\",\"朝\",\"朝著\",\"本\",\"本人\",\"本地\",\"本著\",\"本身\",\"來\",\"來著\",\"來自\",\"來說\",\"極了\",\"果然\",\"果真\",\"某\",\"某個\",\"某些\",\"某某\",\"根據\",\"歟\",\"正值\",\"正如\",\"正巧\",\"正是\",\"此\",\"此地\",\"此處\",\"此外\",\"此時\",\"此次\",\"此間\",\"毋寧\",\"每\",\"每當\",\"比\",\"比及\",\"比如\",\"比方\",\"沒奈何\",\"沿\",\"沿著\",\"漫說\",\"焉\",\"然則\",\"然後\",\"然而\",\"照\",\"照著\",\"猶且\",\"猶自\",\"甚且\",\"甚麽\",\"甚或\",\"甚而\",\"甚至\",\"甚至於\",\"用\",\"用來\",\"由\",\"由於\",\"由是\",\"由此\",\"由此可見\",\"的\",\"的確\",\"的話\",\"直到\",\"相對而言\",\"省得\",\"看\",\"眨眼\",\"著\",\"著呢\",\"矣\",\"矣乎\",\"矣哉\",\"離\",\"秒\",\"竟而\",\"第\",\"等\",\"等到\",\"等等\",\"簡言之\",\"管\",\"類如\",\"緊接著\",\"縱\",\"縱令\",\"縱使\",\"縱然\",\"經\",\"經過\",\"結果\",\"給\",\"繼之\",\"繼後\",\"繼而\",\"綜上所述\",\"罷了\",\"者\",\"而\",\"而且\",\"而況\",\"而後\",\"而外\",\"而已\",\"而是\",\"而言\",\"能\",\"能否\",\"騰\",\"自\",\"自個兒\",\"自從\",\"自各兒\",\"自後\",\"自家\",\"自己\",\"自打\",\"自身\",\"至\",\"至於\",\"至今\",\"至若\",\"致\",\"般的\",\"若\",\"若夫\",\"若是\",\"若果\",\"若非\",\"莫不然\",\"莫如\",\"莫若\",\"雖\",\"雖則\",\"雖然\",\"雖說\",\"被\",\"要\",\"要不\",\"要不是\",\"要不然\",\"要麽\",\"要是\",\"譬喻\",\"譬如\",\"讓\",\"許多\",\"論\",\"設使\",\"設或\",\"設若\",\"誠如\",\"誠然\",\"該\",\"說\",\"說來\",\"請\",\"諸\",\"諸位\",\"諸如\",\"誰\",\"誰人\",\"誰料\",\"誰知\",\"賊死\",\"賴以\",\"趕\",\"起\",\"起見\",\"趁\",\"趁著\",\"越是\",\"距\",\"跟\",\"較\",\"較之\",\"邊\",\"過\",\"還\",\"還是\",\"還有\",\"還要\",\"這\",\"這一來\",\"這個\",\"這麽\",\"這麽些\",\"這麽樣\",\"這麽點兒\",\"這些\",\"這會兒\",\"這兒\",\"這就是說\",\"這時\",\"這樣\",\"這次\",\"這般\",\"這邊\",\"這里\",\"進而\",\"連\",\"連同\",\"逐步\",\"通過\",\"遵循\",\"遵照\",\"那\",\"那個\",\"那麽\",\"那麽些\",\"那麽樣\",\"那些\",\"那會兒\",\"那兒\",\"那時\",\"那樣\",\"那般\",\"那邊\",\"那里\",\"都\",\"鄙人\",\"鑒於\",\"針對\",\"阿\",\"除\",\"除了\",\"除外\",\"除開\",\"除此之外\",\"除非\",\"隨\",\"隨後\",\"隨時\",\"隨著\",\"難道說\",\"零\",\"非\",\"非但\",\"非徒\",\"非特\",\"非獨\",\"靠\",\"順\",\"順著\",\"首先\",\" \",\"︿\",\"!\",\"#\",\"$\",\"%\",\"&\",\"(\",\")\",\"*\",\"+\",\",\",\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\",\":\",\";\",\"<\",\">\",\"?\",\"@\",\"[\",\"]\",\"{\",\"|\",\"}\",\"~\",\"¥\"]\n", - "\n", - "# the vectorizer object will be used to transform text to vector form\n", - "vectorizer = TfidfVectorizer(tokenizer=jieba.lcut, token_pattern='\\w+|\\$[\\d\\.]+|\\S+', stop_words = [\" \"])\n", - "\n", - "# apply transformation\n", - "tf_12 = vectorizer.fit_transform(texts)\n", - "\n", - "# tf_feature_names tells us what word each column in the matric represents\n", - "tf_feature_names12 = vectorizer.get_feature_names()\n", - "\n", - "#Distribute topics\n", - "lda_tfidf = LatentDirichletAllocation(n_components=2, random_state=0)\n", - "lda_tfidf.fit(tf_12)\n", - "\n", - "#Display result\n", - "vis = pyLDAvis.sklearn.prepare(lda_tfidf, tf_12, vectorizer)\n", - "pyLDAvis.enable_notebook()\n", - "pyLDAvis.display(vis)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "6d21cf6b", - "metadata": { - "id": "6d21cf6b", - "outputId": "a6d51020-468b-4e7a-c3a0-c156deb16f0a" - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[ 6627 13337 9014 3022 13706 13236 7291 3797 2215 7740 6713 7746\n", - " 2416 4918 10134 5263 434 5615 13197 1529 6628 13174 8972 2564\n", - " 9406 13341 4949 10477 7786 9342]\n", - "['暴雨', '颱風', '登陸', '四川', '黑格', '預警', '死亡', '失蹤', '北京', '洪水', '最高', '洪災', '南韓', '強降雨', '美國', '應急', '中國', '持續', '響應', '內地', '暴雨成災', '韓國', '疫情', '受災', '福建', '颶風', '影響', '至少', '浙江', '確診']\n", - "[81.34192864 65.67391808 51.07854106 41.1277383 37.8975487 37.72706202\n", - " 36.60172303 33.10025266 32.66198876 32.62356581 31.05246951 29.06524999\n", - " 27.27813714 26.64633713 25.65122017 25.56340609 25.25798228 25.09534105\n", - " 24.55538506 23.97049293 23.80379168 23.60394405 23.53248114 23.49574483\n", - " 22.66771037 21.85447114 21.83324997 21.30591322 21.09383705 19.29984676]\n", - "[ 3724 13585 13322 1184 3730 13337 13540 12411 13479 13064 200 1667\n", - " 8814 6031 6298 11335 8432 839 6871 4919 434 11051 8252 3384\n", - " 8047 9026 271 6837 7433 13579]\n", - "['天文台', '高斯', '風球', '信號', '天氣', '颱風', '驟雨', '酷熱', '香港', '雷暴', '三號', '八號', '生效', '改發', '新聞', '警告', '熱帶', '今年', '本港', '強風', '中國', '襲港', '澳門', '增強', '港股', '發展', '下午', '未來', '氣旋', '高度']\n", - "[111.20777858 87.73500998 70.72879868 62.72377542 59.08685389\n", - " 52.70133643 49.99282774 42.31984129 42.20480964 39.70873062\n", - " 38.6318031 38.20356342 38.17447052 36.37993738 34.49663645\n", - " 34.25815842 33.24165752 33.22310064 32.19971281 31.75837627\n", - " 31.09523802 30.95715184 30.63384365 29.3477748 28.43147891\n", - " 28.24302655 26.02302687 25.56560093 25.38828359 25.19760987]\n" - ] - } - ], - "source": [ - "plot_top_words(lda_tfidf,tf_feature_names12,30)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "f41b8c49", - "metadata": { - "id": "f41b8c49" - }, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "bdf68720", - "metadata": { - "id": "bdf68720" - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "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.9.12" - }, - "colab": { - "provenance": [], - "include_colab_link": true - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} \ No newline at end of file