diff options
Diffstat (limited to 'datasets/Talluri2021/other notebooks')
3 files changed, 0 insertions, 2653 deletions
diff --git a/datasets/Talluri2021/other notebooks/4.failures from reports.ipynb b/datasets/Talluri2021/other notebooks/4.failures from reports.ipynb deleted file mode 100644 index 45248a6..0000000 --- a/datasets/Talluri2021/other notebooks/4.failures from reports.ipynb +++ /dev/null @@ -1,1920 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "import pandas as pd\n", - "from plotnine import *\n", - "import numpy as np" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "or_events = pd.read_parquet('./outage_report_2019-20')" - ] - }, - { - "cell_type": "code", - "execution_count": 104, - "metadata": {}, - "outputs": [], - "source": [ - "filtered_or_events = or_events[(or_events['vendor'] != '') & (or_events['vendor'] != 'overview')].reset_index(drop=True)\n", - "filtered_or_events.loc[filtered_or_events['status_code'] <= 2, 'status_code'] = 0\n", - "filtered_or_events = filtered_or_events.drop_duplicates(subset=['vendor', 'event_time', 'status_code'])\n", - "filtered_or_events = filtered_or_events.groupby(['vendor', 'event_time'])['status_code'].max().reset_index()" - ] - }, - { - "cell_type": "code", - "execution_count": 105, - "metadata": {}, - "outputs": [], - "source": [ - "filtered_or_events['evtime'] = pd.to_datetime(filtered_or_events['event_time'], unit='s')" - ] - }, - { - "cell_type": "code", - "execution_count": 106, - "metadata": {}, - "outputs": [], - "source": [ - "def proper_vendor_names(series):\n", - " return series.str.capitalize().replace(['Apple-servers', 'Facebook-messenger', 'Youtube'], ['Apple', 'FB Msgr', 'YouTube'])\n", - "\n", - "filtered_or_events['vendor_proper'] = proper_vendor_names(filtered_or_events['vendor'])\n", - "\n", - "vendor_list = list(filtered_or_events.groupby('vendor_proper')['status_code'].sum().reset_index().rename(columns={'status_code':'count'}).sort_values('count')['vendor_proper'])\n", - "\n", - "filtered_or_events['vendor_cat'] = pd.Categorical(filtered_or_events['vendor_proper'], ordered=True, categories=vendor_list)" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "facebook_reports = filtered_or_events[filtered_or_events['vendor'] == 'facebook'].reset_index(drop=True)" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [], - "source": [ - "sorted_facebook_reports = facebook_reports.sort_values('event_time').reset_index(drop=True)" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>event_time</th>\n", - " <th>status_code</th>\n", - " <th>vendor</th>\n", - " <th>monitor</th>\n", - " <th>evtime</th>\n", - " <th>vendor_proper</th>\n", - " <th>vendor_cat</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>0</th>\n", - " <td>1.555241e+09</td>\n", - " <td>210.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2019-04-14 11:20:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " <tr>\n", - " <th>1</th>\n", - " <td>1.555242e+09</td>\n", - " <td>299.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2019-04-14 11:40:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " <tr>\n", - " <th>2</th>\n", - " <td>1.555243e+09</td>\n", - " <td>813.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2019-04-14 12:00:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3</th>\n", - " <td>1.555244e+09</td>\n", - " <td>874.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2019-04-14 12:20:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4</th>\n", - " <td>1.555246e+09</td>\n", - " <td>891.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2019-04-14 12:40:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " <tr>\n", - " <th>...</th>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " </tr>\n", - " <tr>\n", - " <th>43674</th>\n", - " <td>1.604180e+09</td>\n", - " <td>0.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2020-10-31 21:40:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " <tr>\n", - " <th>43675</th>\n", - " <td>1.604182e+09</td>\n", - " <td>0.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2020-10-31 22:00:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " <tr>\n", - " <th>43676</th>\n", - " <td>1.604183e+09</td>\n", - " <td>0.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2020-10-31 22:20:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " <tr>\n", - " <th>43677</th>\n", - " <td>1.604184e+09</td>\n", - " <td>0.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2020-10-31 22:40:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " <tr>\n", - " <th>43678</th>\n", - " <td>1.604185e+09</td>\n", - " <td>0.0</td>\n", - " <td>facebook</td>\n", - " <td>Outage Report</td>\n", - " <td>2020-10-31 23:00:00</td>\n", - " <td>Facebook</td>\n", - " <td>Facebook</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "<p>43679 rows × 7 columns</p>\n", - "</div>" - ], - "text/plain": [ - " event_time status_code vendor monitor evtime \\\n", - "0 1.555241e+09 210.0 facebook Outage Report 2019-04-14 11:20:00 \n", - "1 1.555242e+09 299.0 facebook Outage Report 2019-04-14 11:40:00 \n", - "2 1.555243e+09 813.0 facebook Outage Report 2019-04-14 12:00:00 \n", - "3 1.555244e+09 874.0 facebook Outage Report 2019-04-14 12:20:00 \n", - "4 1.555246e+09 891.0 facebook Outage Report 2019-04-14 12:40:00 \n", - "... ... ... ... ... ... \n", - "43674 1.604180e+09 0.0 facebook Outage Report 2020-10-31 21:40:00 \n", - "43675 1.604182e+09 0.0 facebook Outage Report 2020-10-31 22:00:00 \n", - "43676 1.604183e+09 0.0 facebook Outage Report 2020-10-31 22:20:00 \n", - "43677 1.604184e+09 0.0 facebook Outage Report 2020-10-31 22:40:00 \n", - "43678 1.604185e+09 0.0 facebook Outage Report 2020-10-31 23:00:00 \n", - "\n", - " vendor_proper vendor_cat \n", - "0 Facebook Facebook \n", - "1 Facebook Facebook \n", - "2 Facebook Facebook \n", - "3 Facebook Facebook \n", - "4 Facebook Facebook \n", - "... ... ... \n", - "43674 Facebook Facebook \n", - "43675 Facebook Facebook \n", - "43676 Facebook Facebook \n", - "43677 Facebook Facebook \n", - "43678 Facebook Facebook \n", - "\n", - "[43679 rows x 7 columns]" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "sorted_facebook_reports" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# An event has start, end, peak, median, mean" - ] - }, - { - "cell_type": "code", - "execution_count": 107, - "metadata": {}, - "outputs": [], - "source": [ - "def extract_failures_from_reports(partial_df):\n", - " event_start = None\n", - " prev_event_time = None\n", - " num_reports_list = []\n", - " failure_events = []\n", - " for _, report_event in partial_df.sort_values('event_time').iterrows():\n", - " num_reports = report_event['status_code']\n", - " event_time = report_event['event_time']\n", - "\n", - " if num_reports == 0:\n", - " if event_start is not None:\n", - " failure_events.append({\n", - " 'start_time': event_start,\n", - " 'end_time': prev_event_time,\n", - " 'peak': np.max(num_reports_list),\n", - " 'median': np.median(num_reports_list),\n", - " 'mean': np.mean(num_reports_list)\n", - " })\n", - " event_start = None\n", - " num_reports_list = []\n", - " else:\n", - " if event_start is None:\n", - " event_start = event_time\n", - " \n", - " num_reports_list.append(num_reports)\n", - "\n", - " prev_event_time = event_time\n", - " \n", - " return pd.DataFrame(failure_events)" - ] - }, - { - "cell_type": "code", - "execution_count": 284, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>start_time</th>\n", - " <th>end_time</th>\n", - " <th>peak</th>\n", - " <th>median</th>\n", - " <th>mean</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>2053</th>\n", - " <td>1.564102e+09</td>\n", - " <td>1.564102e+09</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4601</th>\n", - " <td>1.582679e+09</td>\n", - " <td>1.582679e+09</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4600</th>\n", - " <td>1.582675e+09</td>\n", - " <td>1.582675e+09</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>2433</th>\n", - " <td>1.565659e+09</td>\n", - " <td>1.565659e+09</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>2434</th>\n", - " <td>1.565664e+09</td>\n", - " <td>1.565664e+09</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>...</th>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3965</th>\n", - " <td>1.574808e+09</td>\n", - " <td>1.574808e+09</td>\n", - " <td>215.0</td>\n", - " <td>215.0</td>\n", - " <td>215.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3994</th>\n", - " <td>1.574950e+09</td>\n", - " <td>1.574952e+09</td>\n", - " <td>415.0</td>\n", - " <td>322.0</td>\n", - " <td>274.571429</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3996</th>\n", - " <td>1.574958e+09</td>\n", - " <td>1.574964e+09</td>\n", - " <td>550.0</td>\n", - " <td>345.0</td>\n", - " <td>253.454545</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3995</th>\n", - " <td>1.574953e+09</td>\n", - " <td>1.574957e+09</td>\n", - " <td>553.0</td>\n", - " <td>453.0</td>\n", - " <td>463.363636</td>\n", - " </tr>\n", - " <tr>\n", - " <th>402</th>\n", - " <td>1.557258e+09</td>\n", - " <td>1.557259e+09</td>\n", - " <td>952.0</td>\n", - " <td>908.0</td>\n", - " <td>622.666667</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "<p>5490 rows × 5 columns</p>\n", - "</div>" - ], - "text/plain": [ - " start_time end_time peak median mean\n", - "2053 1.564102e+09 1.564102e+09 3.0 3.0 3.000000\n", - "4601 1.582679e+09 1.582679e+09 3.0 3.0 3.000000\n", - "4600 1.582675e+09 1.582675e+09 3.0 3.0 3.000000\n", - "2433 1.565659e+09 1.565659e+09 3.0 3.0 3.000000\n", - "2434 1.565664e+09 1.565664e+09 3.0 3.0 3.000000\n", - "... ... ... ... ... ...\n", - "3965 1.574808e+09 1.574808e+09 215.0 215.0 215.000000\n", - "3994 1.574950e+09 1.574952e+09 415.0 322.0 274.571429\n", - "3996 1.574958e+09 1.574964e+09 550.0 345.0 253.454545\n", - "3995 1.574953e+09 1.574957e+09 553.0 453.0 463.363636\n", - "402 1.557258e+09 1.557259e+09 952.0 908.0 622.666667\n", - "\n", - "[5490 rows x 5 columns]" - ] - }, - "execution_count": 284, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# Validate this later by plotting both the intervals and direct from reports.\n", - "# To check if the failure creation algorithm is correct\n", - "facebook_failures = extract_failures_from_reports(sorted_facebook_reports)\n", - "facebook_failures.sort_values('median')" - ] - }, - { - "cell_type": "code", - "execution_count": 285, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>start_time</th>\n", - " <th>end_time</th>\n", - " <th>peak</th>\n", - " <th>median</th>\n", - " <th>mean</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>2053</th>\n", - " <td>1564101600</td>\n", - " <td>1564101600</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4601</th>\n", - " <td>1582678800</td>\n", - " <td>1582678800</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4600</th>\n", - " <td>1582675200</td>\n", - " <td>1582675200</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>2433</th>\n", - " <td>1565659200</td>\n", - " <td>1565659200</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>2434</th>\n", - " <td>1565664000</td>\n", - " <td>1565664000</td>\n", - " <td>3.0</td>\n", - " <td>3.0</td>\n", - " <td>3.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>...</th>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " <td>...</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3965</th>\n", - " <td>1574808000</td>\n", - " <td>1574808000</td>\n", - " <td>215.0</td>\n", - " <td>215.0</td>\n", - " <td>215.000000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3994</th>\n", - " <td>1574949600</td>\n", - " <td>1574952000</td>\n", - " <td>415.0</td>\n", - " <td>322.0</td>\n", - " <td>274.571429</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3996</th>\n", - " <td>1574958000</td>\n", - " <td>1574964000</td>\n", - " <td>550.0</td>\n", - " <td>345.0</td>\n", - " <td>253.454545</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3995</th>\n", - " <td>1574953200</td>\n", - " <td>1574956800</td>\n", - " <td>553.0</td>\n", - " <td>453.0</td>\n", - " <td>463.363636</td>\n", - " </tr>\n", - " <tr>\n", - " <th>402</th>\n", - " <td>1557258000</td>\n", - " <td>1557259200</td>\n", - " <td>952.0</td>\n", - " <td>908.0</td>\n", - " <td>622.666667</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "<p>5490 rows × 5 columns</p>\n", - "</div>" - ], - "text/plain": [ - " start_time end_time peak median mean\n", - "2053 1564101600 1564101600 3.0 3.0 3.000000\n", - "4601 1582678800 1582678800 3.0 3.0 3.000000\n", - "4600 1582675200 1582675200 3.0 3.0 3.000000\n", - "2433 1565659200 1565659200 3.0 3.0 3.000000\n", - "2434 1565664000 1565664000 3.0 3.0 3.000000\n", - "... ... ... ... ... ...\n", - "3965 1574808000 1574808000 215.0 215.0 215.000000\n", - "3994 1574949600 1574952000 415.0 322.0 274.571429\n", - "3996 1574958000 1574964000 550.0 345.0 253.454545\n", - "3995 1574953200 1574956800 553.0 453.0 463.363636\n", - "402 1557258000 1557259200 952.0 908.0 622.666667\n", - "\n", - "[5490 rows x 5 columns]" - ] - }, - "execution_count": 285, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "facebook_failures['start_time'] = facebook_failures['start_time'].astype(np.int64)\n", - "facebook_failures['end_time'] = facebook_failures['end_time'].astype(np.int64)\n", - "facebook_failures.sort_values('median')" - ] - }, - { - "cell_type": "code", - "execution_count": 109, - "metadata": {}, - "outputs": [], - "source": [ - "failure_df_list = []\n", - "\n", - "for vendor in filtered_or_events['vendor_cat'].unique():\n", - " partial_df = filtered_or_events[filtered_or_events['vendor_cat'] == vendor].reset_index(drop=True)\n", - " \n", - " partial_failure_df = extract_failures_from_reports(partial_df)\n", - " partial_failure_df['vendor_cat'] = vendor\n", - " \n", - " failure_df_list.append(partial_failure_df)\n", - " \n", - "failure_df = pd.concat(failure_df_list)\n", - "failure_df['vendor_cat'] = pd.Categorical(failure_df['vendor_cat'], ordered=True, categories=vendor_list)" - ] - }, - { - "cell_type": "code", - "execution_count": 235, - "metadata": {}, - "outputs": [], - "source": [ - "failure_df['duration'] = failure_df['end_time'] - failure_df['start_time']\n", - "filtered_failure_df = failure_df[failure_df['duration'] >= 0].reset_index(drop=True) # filters 5 events for now\n", - "filtered_failure_df.loc[filtered_failure_df['duration'] == 0, 'duration'] = 1200 # 0 means the event lasted less than 20 minutes. round it up to 20\n", - "filtered_failure_df = filtered_failure_df.reset_index(drop=True)" - ] - }, - { - "cell_type": "code", - "execution_count": 282, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\\begin{tabular}{llrr}\n", - "\\toprule\n", - "{} & vendor\\_proper & count\\_events & count\\_failures \\\\\n", - "\\midrule\n", - "0 & Apple & 811 & 38 \\\\\n", - "1 & Skype & 2103 & 89 \\\\\n", - "2 & Github & 2974 & 68 \\\\\n", - "3 & Gmail & 6227 & 426 \\\\\n", - "4 & FB Msgr & 7948 & 210 \\\\\n", - "5 & Whatsapp & 21235 & 884 \\\\\n", - "6 & Snapchat & 52620 & 2549 \\\\\n", - "7 & Netflix & 59595 & 3388 \\\\\n", - "8 & Facebook & 60375 & 4069 \\\\\n", - "9 & Twitter & 123862 & 2908 \\\\\n", - "10 & YouTube & 132760 & 4219 \\\\\n", - "11 & Instagram & 175702 & 3926 \\\\\n", - "\\bottomrule\n", - "\\end{tabular}\n", - "\n" - ] - } - ], - "source": [ - "event_count_df = filtered_or_events.groupby('vendor_proper')['status_code'].sum().reset_index().rename(columns={'status_code':'count'})\n", - "failure_count_df = filtered_failure_df.groupby('vendor_cat')['duration'].count().reset_index().rename(columns={'duration':'count'}).set_index('vendor_cat')\n", - "\n", - "joined_count_df = event_count_df.join(failure_count_df, on='vendor_proper', lsuffix='_events', rsuffix='_failures')\n", - "joined_count_df['count_events'] = joined_count_df['count_events'].astype(int)\n", - "\n", - "print(joined_count_df.sort_values('count_events').reset_index(drop=True).to_latex(float_format=\"%.2f\"))" - ] - }, - { - "cell_type": "code", - "execution_count": 283, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "646212\n", - "22774\n" - ] - }, - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>count</th>\n", - " </tr>\n", - " <tr>\n", - " <th>vendor_cat</th>\n", - " <th></th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>Apple</th>\n", - " <td>38</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Github</th>\n", - " <td>68</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Skype</th>\n", - " <td>89</td>\n", - " </tr>\n", - " <tr>\n", - " <th>FB Msgr</th>\n", - " <td>210</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Gmail</th>\n", - " <td>426</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Whatsapp</th>\n", - " <td>884</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Snapchat</th>\n", - " <td>2549</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Twitter</th>\n", - " <td>2908</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Netflix</th>\n", - " <td>3388</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Instagram</th>\n", - " <td>3926</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Facebook</th>\n", - " <td>4069</td>\n", - " </tr>\n", - " <tr>\n", - " <th>YouTube</th>\n", - " <td>4219</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " count\n", - "vendor_cat \n", - "Apple 38\n", - "Github 68\n", - "Skype 89\n", - "FB Msgr 210\n", - "Gmail 426\n", - "Whatsapp 884\n", - "Snapchat 2549\n", - "Twitter 2908\n", - "Netflix 3388\n", - "Instagram 3926\n", - "Facebook 4069\n", - "YouTube 4219" - ] - }, - "execution_count": 283, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "print(joined_count_df['count_events'].sum())\n", - "print(joined_count_df['count_failures'].sum())\n", - "failure_count_df.sort_values('count')" - ] - }, - { - "cell_type": "code", - "execution_count": 292, - "metadata": {}, - "outputs": [], - "source": [ - "# Compute all CDFs\n", - "\n", - "def compute_cdf(partial_df, variate):\n", - " count_df = partial_df.groupby(variate)['start_time'].count().reset_index().rename(columns={'start_time':'count'}).sort_values(variate).reset_index(drop=True)\n", - " count_df['prop'] = count_df['count'] / count_df['count'].sum()\n", - " count_df['cdf'] = count_df['prop'].cumsum()\n", - " return count_df\n", - "\n", - "duration_cdf_df_list = []\n", - "peak_cdf_df_list = []\n", - "median_cdf_df_list = []\n", - "mean_cdf_df_list = []\n", - "ia_cdf_df_list = []\n", - "ia_count_df_list = []\n", - "\n", - "for vendor in filtered_failure_df['vendor_cat'].unique():\n", - " partial_df = filtered_failure_df[filtered_failure_df['vendor_cat'] == vendor].reset_index(drop=True)\n", - " \n", - " partial_duration_cdf_df = compute_cdf(partial_df, 'duration')\n", - " partial_duration_cdf_df['vendor_cat'] = vendor\n", - " duration_cdf_df_list.append(partial_duration_cdf_df)\n", - " \n", - " partial_peak_cdf_df = compute_cdf(partial_df, 'peak')\n", - " partial_peak_cdf_df['vendor_cat'] = vendor\n", - " peak_cdf_df_list.append(partial_peak_cdf_df)\n", - " \n", - " partial_median_cdf_df = compute_cdf(partial_df, 'median')\n", - " partial_median_cdf_df['vendor_cat'] = vendor\n", - " median_cdf_df_list.append(partial_median_cdf_df)\n", - " \n", - " partial_mean_cdf_df = compute_cdf(partial_df, 'mean')\n", - " partial_mean_cdf_df['vendor_cat'] = vendor\n", - " mean_cdf_df_list.append(partial_mean_cdf_df)\n", - " \n", - " # Compute interarrival time\n", - " sorted_partial_df = partial_df.sort_values('start_time').reset_index(drop=True)\n", - " ia_arr = sorted_partial_df['start_time'].values - np.roll(sorted_partial_df['start_time'].values, 1)\n", - " partial_ia_df = pd.DataFrame({'ia': ia_arr[1:], 'count':1})\n", - " partial_ia_df['vendor_cat'] = vendor\n", - " ia_count_df = partial_ia_df.groupby('ia')['count'].count().reset_index()\n", - " ia_count_df['prop'] = ia_count_df['count'] / ia_count_df['count'].sum()\n", - " ia_count_df['cdf'] = ia_count_df['prop'].cumsum()\n", - " ia_count_df['vendor_cat'] = vendor\n", - " ia_count_df_list.append(partial_ia_df)\n", - " ia_cdf_df_list.append(ia_count_df)\n", - " \n", - "duration_cdf_df = pd.concat(duration_cdf_df_list).reset_index(drop=True)\n", - "duration_cdf_df['vendor_cat'] = pd.Categorical(duration_cdf_df['vendor_cat'], ordered=True, categories=vendor_list)\n", - "\n", - "peak_cdf_df = pd.concat(peak_cdf_df_list).reset_index(drop=True)\n", - "peak_cdf_df['vendor_cat'] = pd.Categorical(peak_cdf_df['vendor_cat'], ordered=True, categories=vendor_list)\n", - "\n", - "median_cdf_df = pd.concat(median_cdf_df_list).reset_index(drop=True)\n", - "median_cdf_df['vendor_cat'] = pd.Categorical(median_cdf_df['vendor_cat'], ordered=True, categories=vendor_list)\n", - "\n", - "mean_cdf_df = pd.concat(mean_cdf_df_list).reset_index(drop=True)\n", - "mean_cdf_df['vendor_cat'] = pd.Categorical(mean_cdf_df['vendor_cat'], ordered=True, categories=vendor_list)\n", - "\n", - "ia_cdf_df = pd.concat(ia_cdf_df_list).reset_index(drop=True)\n", - "ia_cdf_df['vendor_cat'] = pd.Categorical(ia_cdf_df['vendor_cat'], ordered=True, categories=vendor_list)\n", - "\n", - "ia_count_df = pd.concat(ia_count_df_list).reset_index(drop=True)" - ] - }, - { - "cell_type": "code", - "execution_count": 260, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>vendor_cat</th>\n", - " <th>duration</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>2</th>\n", - " <td>Github</td>\n", - " <td>7200.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>0</th>\n", - " <td>Apple</td>\n", - " <td>10800.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3</th>\n", - " <td>Gmail</td>\n", - " <td>21600.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>1</th>\n", - " <td>Skype</td>\n", - " <td>22800.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4</th>\n", - " <td>FB Msgr</td>\n", - " <td>30000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>5</th>\n", - " <td>Whatsapp</td>\n", - " <td>40800.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>8</th>\n", - " <td>Facebook</td>\n", - " <td>75600.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>6</th>\n", - " <td>Snapchat</td>\n", - " <td>108000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>7</th>\n", - " <td>Netflix</td>\n", - " <td>117600.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>10</th>\n", - " <td>YouTube</td>\n", - " <td>146400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>11</th>\n", - " <td>Instagram</td>\n", - " <td>171600.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>9</th>\n", - " <td>Twitter</td>\n", - " <td>238800.0</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " vendor_cat duration\n", - "2 Github 7200.0\n", - "0 Apple 10800.0\n", - "3 Gmail 21600.0\n", - "1 Skype 22800.0\n", - "4 FB Msgr 30000.0\n", - "5 Whatsapp 40800.0\n", - "8 Facebook 75600.0\n", - "6 Snapchat 108000.0\n", - "7 Netflix 117600.0\n", - "10 YouTube 146400.0\n", - "11 Instagram 171600.0\n", - "9 Twitter 238800.0" - ] - }, - "execution_count": 260, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "duration_cdf_df.groupby('vendor_cat')['duration'].max().reset_index().sort_values('duration')" - ] - }, - { - "cell_type": "code", - "execution_count": 279, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>vendor_cat</th>\n", - " <th>level_1</th>\n", - " <th>duration</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>3</th>\n", - " <td>Gmail</td>\n", - " <td>0.96</td>\n", - " <td>2400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>5</th>\n", - " <td>Whatsapp</td>\n", - " <td>0.96</td>\n", - " <td>2400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>6</th>\n", - " <td>Snapchat</td>\n", - " <td>0.96</td>\n", - " <td>4800.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>1</th>\n", - " <td>Skype</td>\n", - " <td>0.96</td>\n", - " <td>6000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>2</th>\n", - " <td>Github</td>\n", - " <td>0.96</td>\n", - " <td>6000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4</th>\n", - " <td>FB Msgr</td>\n", - " <td>0.96</td>\n", - " <td>6000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>8</th>\n", - " <td>Facebook</td>\n", - " <td>0.96</td>\n", - " <td>6000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>0</th>\n", - " <td>Apple</td>\n", - " <td>0.96</td>\n", - " <td>7248.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>10</th>\n", - " <td>YouTube</td>\n", - " <td>0.96</td>\n", - " <td>8400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>7</th>\n", - " <td>Netflix</td>\n", - " <td>0.96</td>\n", - " <td>12624.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>9</th>\n", - " <td>Twitter</td>\n", - " <td>0.96</td>\n", - " <td>20400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>11</th>\n", - " <td>Instagram</td>\n", - " <td>0.96</td>\n", - " <td>20400.0</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " vendor_cat level_1 duration\n", - "3 Gmail 0.96 2400.0\n", - "5 Whatsapp 0.96 2400.0\n", - "6 Snapchat 0.96 4800.0\n", - "1 Skype 0.96 6000.0\n", - "2 Github 0.96 6000.0\n", - "4 FB Msgr 0.96 6000.0\n", - "8 Facebook 0.96 6000.0\n", - "0 Apple 0.96 7248.0\n", - "10 YouTube 0.96 8400.0\n", - "7 Netflix 0.96 12624.0\n", - "9 Twitter 0.96 20400.0\n", - "11 Instagram 0.96 20400.0" - ] - }, - "execution_count": 279, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "failure_df.groupby('vendor_cat')['duration'].quantile([0.96]).reset_index().sort_values('duration')" - ] - }, - { - "cell_type": "code", - "execution_count": 280, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>vendor_cat</th>\n", - " <th>ia</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>11</th>\n", - " <td>Instagram</td>\n", - " <td>297600.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>9</th>\n", - " <td>Twitter</td>\n", - " <td>1011600.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>10</th>\n", - " <td>YouTube</td>\n", - " <td>1018800.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>8</th>\n", - " <td>Facebook</td>\n", - " <td>1386000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>7</th>\n", - " <td>Netflix</td>\n", - " <td>1776000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4</th>\n", - " <td>FB Msgr</td>\n", - " <td>2221200.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>6</th>\n", - " <td>Snapchat</td>\n", - " <td>2451600.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3</th>\n", - " <td>Gmail</td>\n", - " <td>2532000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>2</th>\n", - " <td>Github</td>\n", - " <td>3805200.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>5</th>\n", - " <td>Whatsapp</td>\n", - " <td>5170800.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>1</th>\n", - " <td>Skype</td>\n", - " <td>6337200.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>0</th>\n", - " <td>Apple</td>\n", - " <td>11250000.0</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " vendor_cat ia\n", - "11 Instagram 297600.0\n", - "9 Twitter 1011600.0\n", - "10 YouTube 1018800.0\n", - "8 Facebook 1386000.0\n", - "7 Netflix 1776000.0\n", - "4 FB Msgr 2221200.0\n", - "6 Snapchat 2451600.0\n", - "3 Gmail 2532000.0\n", - "2 Github 3805200.0\n", - "5 Whatsapp 5170800.0\n", - "1 Skype 6337200.0\n", - "0 Apple 11250000.0" - ] - }, - "execution_count": 280, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ia_cdf_df.groupby('vendor_cat')['ia'].max().reset_index().sort_values('ia')" - ] - }, - { - "cell_type": "code", - "execution_count": 295, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.5 6000.0\n", - "0.9 27600.0\n", - "Name: ia, dtype: float64" - ] - }, - "execution_count": 295, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ia_count_df['ia'].quantile([0.50, 0.90])" - ] - }, - { - "cell_type": "code", - "execution_count": 297, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>vendor_cat</th>\n", - " <th>level_1</th>\n", - " <th>ia</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>2</th>\n", - " <td>Facebook</td>\n", - " <td>0.75</td>\n", - " <td>8400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>6</th>\n", - " <td>Netflix</td>\n", - " <td>0.75</td>\n", - " <td>8400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>11</th>\n", - " <td>YouTube</td>\n", - " <td>0.75</td>\n", - " <td>8400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>8</th>\n", - " <td>Snapchat</td>\n", - " <td>0.75</td>\n", - " <td>9600.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>5</th>\n", - " <td>Instagram</td>\n", - " <td>0.75</td>\n", - " <td>12000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>9</th>\n", - " <td>Twitter</td>\n", - " <td>0.75</td>\n", - " <td>12000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>10</th>\n", - " <td>Whatsapp</td>\n", - " <td>0.75</td>\n", - " <td>41400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4</th>\n", - " <td>Gmail</td>\n", - " <td>0.75</td>\n", - " <td>98400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>1</th>\n", - " <td>FB Msgr</td>\n", - " <td>0.75</td>\n", - " <td>306000.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>7</th>\n", - " <td>Skype</td>\n", - " <td>0.75</td>\n", - " <td>668400.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3</th>\n", - " <td>Github</td>\n", - " <td>0.75</td>\n", - " <td>820200.0</td>\n", - " </tr>\n", - " <tr>\n", - " <th>0</th>\n", - " <td>Apple</td>\n", - " <td>0.75</td>\n", - " <td>1306800.0</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " vendor_cat level_1 ia\n", - "2 Facebook 0.75 8400.0\n", - "6 Netflix 0.75 8400.0\n", - "11 YouTube 0.75 8400.0\n", - "8 Snapchat 0.75 9600.0\n", - "5 Instagram 0.75 12000.0\n", - "9 Twitter 0.75 12000.0\n", - "10 Whatsapp 0.75 41400.0\n", - "4 Gmail 0.75 98400.0\n", - "1 FB Msgr 0.75 306000.0\n", - "7 Skype 0.75 668400.0\n", - "3 Github 0.75 820200.0\n", - "0 Apple 0.75 1306800.0" - ] - }, - "execution_count": 297, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ia_count_df.groupby('vendor_cat')['ia'].quantile([0.75]).reset_index().sort_values('ia')" - ] - }, - { - "cell_type": "code", - "execution_count": 242, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:727: PlotnineWarning: Saving 14 x 3 in image.\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:730: PlotnineWarning: Filename: plots/failure_duration_ia_cdf.pdf\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/geoms/geom_path.py:81: PlotnineWarning: geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/geoms/geom_path.py:81: PlotnineWarning: geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<Figure size 1400x300 with 12 Axes>" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "<ggplot: (311683578)>" - ] - }, - "execution_count": 242, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "dummy_df = duration_cdf_df.loc[:1, :].copy()\n", - "dummy_df.loc[0, 'dummy'] = '0'\n", - "dummy_df.loc[1, 'dummy'] = '1'\n", - "\n", - "marker_df = pd.DataFrame({\n", - " 'sec': [60*60, 60*60*4, 60*60*24, 60*60*24*4],\n", - " 'y': [1, 1, 1, 1],\n", - " 'text': ['1 hour', '4 hours', '1 day', '4 days']\n", - "})\n", - "\n", - "plt = ggplot(median_cdf_df) +\\\n", - " geom_line(aes(x='duration', y='cdf'), data=duration_cdf_df, color='black') +\\\n", - " geom_line(aes(x='ia', y='cdf'), data=ia_cdf_df, color='#0280c9') +\\\n", - " geom_line(aes(x='duration', y='cdf', color='dummy'), data=dummy_df) +\\\n", - " scale_x_log10(breaks=[1000, 10000, 100000, 1000000], labels=lambda l: list(map(lambda x: '$10^{}$'.format(int(np.log10(x))), l))) +\\\n", - " geom_vline(aes(xintercept='sec'), data=marker_df, linetype='--') +\\\n", - " facet_wrap(facets='vendor_cat', nrow=2) +\\\n", - " ylab('ECDF') +\\\n", - " xlab('Time (in seconds)') +\\\n", - " scale_color_manual(['black', '#0280c9'], labels=['Duration', 'Interarrival time']) +\\\n", - " guides(color=guide_legend(title='')) +\\\n", - " theme_classic(base_size=12, base_family='sans-serif') +\\\n", - " theme(figure_size=(14, 3),\n", - " axis_text_y=element_text(margin={'r': 5}),\n", - " panel_grid_major_x=element_line(size=0.7, color=\"gainsboro\"),\n", - " text=element_text(size=12),\n", - " legend_box_spacing=0.01,\n", - " legend_box_margin=0,\n", - " legend_margin=0,\n", - " legend_key=element_blank(),\n", - " legend_entry_spacing=5,\n", - " legend_background=element_rect(fill=(0,0,0,0), color=(0,0,0,0)),\n", - " legend_position='top')\n", - "\n", - "plt.save('plots/failure_duration_ia_cdf.pdf', limitsize=None)\n", - "plt" - ] - }, - { - "cell_type": "code", - "execution_count": 243, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:727: PlotnineWarning: Saving 14 x 3 in image.\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:730: PlotnineWarning: Filename: plots/failure_mean_peak_cdf.pdf\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/geoms/geom_path.py:75: PlotnineWarning: geom_path: Removed 1 rows containing missing values.\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/geoms/geom_path.py:81: PlotnineWarning: geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/geoms/geom_path.py:75: PlotnineWarning: geom_path: Removed 1 rows containing missing values.\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/geoms/geom_path.py:81: PlotnineWarning: geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABJYAAAF1CAYAAAC6f2D4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAA9hAAAPYQGoP6dpAADfY0lEQVR4nOzdd1QUVxsG8GdhKUuR3pFqARVEsKFYsUSDLWLvLSZGjT12YxKjiSVqEnvvLYq9l1gx9ti7YAXpve3e7w8+Nq6AAqJLeX7n7NGdvTPzznJ3dvadWyRCCAEiIiIiIiIiIqJ80lB3AEREREREREREVDwxsURERERERERERAXCxBIRERERERERERUIE0tERERERERERFQgTCwREREREREREVGBMLFEREREREREREQFwsQSEREREREREREVCBNLRERERERERERUIEwsERERERERERFRgTCxREREREREREREBcLEEhERERERERERFQgTS0REREREREREVCBMLBERERERERERUYEwsURERERERERERAXCxBIRERERERERERUIE0tERERERERERFQgTCwREREREREREVGBMLFEREREREREREQFwsQSEREREREREREVCBNLRERERERERERUIEwsERERERERERFRgTCxREREREREREREBcLEEhERERERERERFQgTS0REREREREREVCBMLBERERERERERUYEwsURERERERERERAXCxBIRERERERERERUIE0tERERERERERFQgTCwREREREREREVGBMLFEREREREREREQFwsQSEREREREREREVCBNLRERERERERERUIEwsERERERERERFRgTCxREREREREREREBcLEEhERERERERERFQgTS0REREREREREVCBMLBERERERERERUYEwsURERERERERERAXCxBIRERERERERERUIE0tERP+3atUqSCQSSCQSnDhxItvrQgiUK1cOEokEDRs2/OTxFXe9e/eGgYGBusPIs82bN6Ny5cqQyWSQSCS4evWqukMqND///DOCgoLUsu8rV66gQYMGMDIygkQiwdy5c3Mt++TJE3z++ecwNTWFRCLBsGHD8rUvJycn9O7dW2V7EokEq1atKlDsJcmb5zuJRAKpVAp7e3v06dMHz58//2j7/f777yGRSBAREfHR9vEpnThxAhKJBNu2bVN3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mjZtKgwNDYWJiYno0KGDCA0NzXUWtjdnxIqJiRF169YVpqam74wnt9m0cprFMjY2VvTv319YWVkJfX190apVK/HkyZM8xSNE7ufgt885WeeKtWvXiqFDhwoLCwuho6Mj6tWrp/L+ZLl27Zro2LGjsLS0FFpaWsLa2lo0btxYLFq0KNvx5OVvkyUkJER07dpVmJmZCS0tLVGxYkUxc+bMbLPt5XdWuA+p7/l9b/Jybn7XjGqpqamif//+wsLCQkgkEmWd2LNnj2jRooWws7MT2trawtLSUrRs2VKcOnXqve9BXs+3hTErXF6vD/IyK5wQQrx8+VIEBgYKU1NTYWRkJLp37y4uXryY5+sNIfJ+bUNEJBGiCPQ3ISIiKsV69+6Nbdu2ISEhQd2hEBEVihMnTqBRo0bYunUrAgMD1R0OERF9RHmf25WIiIiIiIiIiOgNTCwREREREREREVGBsCscEREREREREREVCFssERERERERERFRgTCxREREREREREREBcLEEhERERERERERFQgTS0REREREREREVCBMLBERERERERERUYEwsURERERERERERAUiVXcAxV1oaCgiIiLUHQZRvpmbm8PBwSHH11ivqbhivaaSiPWaSiLWayqJWK+pJHpXvc7CxNIHCA0Nhbu7O5KSktQdClG+6enp4fbt29lOEqzXVJyxXlNJxHpNJRHrNZVErNdUEuVWr9/ExNIHiIiIQFJSEtatWwd3d3d1h0OUZ7dv30b37t0RERGR7QTBek3FFes1lUSs11QSsV5TScR6TSXRu+r1m5hYKgTu7u7w9vZWdxhEhYr1mkoi1msqiVivqSRivaaSiPWaSioO3k1ERERERERERAXCxBIRERERERERERUIE0tUqJYvXw47Ozs0btz4k+0zMDAQgYGBn2x/VPJdvnwZ/fr1Q40aNeDs7IyqVauiVatWmDp1qrJMrVq10LNnTzVGSZR3t27dwsiRI1GnTh24urrC1dUVdevWxZgxY3Dt2jVludmzZ8POzk5l3VWrVmHz5s3Ztnn27FnY2dlhz549hRbnx9gmlR55reefkp2dHWbPnq18nlXHz549q5Z4SP02b94MOzu7HB8//PCDslytWrVUXnNxcUHdunXx/fffIyoq6r37yaprdnZ2OZ7DAaBDhw6ws7NDrVq1Cu34qOTZs2cP7OzssHPnzmyv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LgAAjhw5giNHjqhs09LSEsuWLQMAmJiYQFNTE5s3b0ZcXBwkEglsbGzQtWtXtGvXjjPCERERERERERHlU5FJLMlkMgwYMAADBgzItcywYcMwbNgwlWVZiaP3sbW1xeTJkz8kRCIiIiIiIiIiegOb6RARERERERERUYEwsURERERERERERAXCxBIRERERERERERUIE0tERERERERERFQgTCwREREREREREVGBMLFEREREREREREQFwsQSEREREREREREVCBNLRERERERERERUIEwsERERERERERFRgTCxREREREREREREBSJVdwCfWnJyMtatW4czZ84gPj4e9vb2aN++PerXr6/u0IiIiIiIiIiIipVSl1iaPn067t+/j169esHW1hYnT57ErFmzIIRAgwYN1B0eEREREREREVGxUaoSSxcvXsTVq1cxcuRIZRLJ09MT4eHhWLlyJfz8/KCpqanmKImIiIiIiIiIiodSNcZScHAwZDIZ/Pz8VJb7+/sjKioK9+7dU1NkRERERERERETFT6lKLIWEhMDe3j5bqyRnZ2fl60RERERERERElDelKrEUHx8PAwODbMuzlsXHx3/qkIiIiIiIiIiIiq1SNcYSAEgkkgK9luXly5d4+fIlAOD27duFFhcRERERERERUXFTqhJLhoaGObZKSkhIAIAcWzO9bfHixZg6dWqhx0ZEREREREREVNzkqyvcmDFj8OzZM5VlCoWiUAP6mBwdHfHs2TPI5XKV5U+ePFG+/j4DBw7EpUuXcOnSJaxbt+5jhElEREREREREVCzkK7E0e/ZsvHjxQvlcLpdDS0sLly9fLvTAPgZfX18kJyfj7NmzKsuPHTsGU1NTVKhQ4b3bsLGxgbe3N7y9veHu7v6xQiUiIiIiIiIiKvLy1RVOCJGnZUWVj48PvLy8sHDhQiQlJcHGxgYnT57E5cuXMWLEiGyzxb1PcnIyAPWPtfTs2TPExMSoNYYPUdzjB4rvMbi5uUFPT09lGet14Sju8QPF9xhYrz+e4h4/UHyPgfX64ynu8QPF9xhYrz+e4h4/UHyPgfX64ynu8QPF9xhyqtdvKlVjLAHAuHHjsG7dOmzYsAHx8fGwt7fHqFGjUL9+/XxvK6sLXffu3Qs5SqJP49KlS/D29lZZxnpNxR3rNZVErNdUErFeU0nEek0lUU71+k0SkY8mRxoa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ZKsaWPmD+S5DHF+SiMh+sKBEjs4uCkvAnT9M5f2giaKIb775BsePH8c777xTaiT9YcOsxxNo27Yt/P39sXjxYvz777/luqQnLS0NaWlpAICkpKRyxUXkTGoHBWDNkgW2DoOIiMppy9kcxF/RYKDwHyb9+CPWrFkDhUJh67CIiIjISdhFFx2VSlVmr6S8vDwA5ftWTRRFfPvtt9i9ezfeeOONMi+DK0vx3SSSk5PLNf/ChQvRpk0btGnTplShioiIiMiemHsrXUbfWiJmT52AsWPH4qmnnrJ1WERERORE7KKwFBYWhkuXLsFoNFq1p6SkWKbfSXFRafv27Xj11VfRvXv3CsdQ3l5R48aNQ0JCAhISEhATE1Ph9RARERHdL3+dyUFimgaav79HYGAg5syZY+uQiIiIyMnYRWEpKioKWq0W+/bts2rfsWMHfH190bBhw9u+VhRFfPfdd9i+fTtefvll9OrVq0Lr3rFjBwCgUaNG5Zo/KCgIkZGRiIyMrNCA4kRERET3U3FvpeEtfLBrw69499134eXlZeuwiIiIyMnYxRhLbdq0QatWrTB//nxoNBoEBQUhNjYWiYmJmDhxouVucd988w127NiBH374Af7+/gCAH374AVu3bkWvXr0QFhaGkydPWpYrl8tRr149AMDx48excuVKREVFISAgAAaDAQkJCfj777/RokULtG/f/v5vOBEREVE12XwqC4ev5sP9z0/g4uKCHj162DokIiIickJ2UVgCgKlTpyImJgbLly+HWq1GSEgIJk+ejC5duljmMZlMMJlMEEXR0nbw4EEAwLZt27Bt2zarZfr7++PHH38EAPj4+EAqleK3335Dbm4uBEFAUFAQhgwZggEDBvCOcERERORULlxOg277DziQsAn79+8vdVMTIiIioqpgN4UlNzc3jBkzBmPGjLntPBMmTMCECROs2ooLR3cTHByM6dOn30uIRERERA5jVKf66PTN6wgO/gw1atSwdThERETkpOymsEREREREVcfFxQUtWrSwdRhERETk5Hj9FxERERERERERVQoLS0REREREREREVCksLBERERERERERUaWwsERERERERERERJXCwhIREREREREREVUKC0tERERERERERFQpLCwREREREREREVGlsLBERERERERERESVIrN1APebVqtFTEwM9u7dC7VajZCQEAwc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1KpVC5mZmUhKSkJiYiJWrVpVqXW/+eab+L//+z/07dsXH330EcLCwvDHH3/g+++/x/jx49GwYcOq2kwAwNdff43o6Gh07twZ48ePR3h4ONRqNc6cOYNNmzaVGtPpbu+NRCLBnDlzMHToUPTr1w/jxo2DTqfD559/juzsbHz22Wfliqt58+YAzHnx6KOPQiqVokWLFvj4449x6dIl9OzZEyEhIcjOzsbXX38NuVyOrl27Vul7Q0RERNWHhSUiIiKqUq1bt8Zzzz1XZsFo3rx5AIA5c+YgLy8PPXr0wO+//47w8PBqieXTTz/FwYMH8cILLyA3Nxft27fHr7/+inr16lnm6d69Ow4cOIBPPvkEEyZMQFZWFvz8/NCkSRMMGjSo0uuuWbMm9u3bh6lTp2Lq1KnIzc1F3bp1MWfOHEycOLEqNs9KkyZNkJiYiJkzZ+K9995Deno6vL290aBBA8s4SyWV570ZMmQI3N3dMWvWLAwePBhSqRQdOnTAzp070bFjx3LFNWTIEOzduxfff/89PvroI4iiiPPnz+Ohhx5CfHw8pkyZguvXr8Pb2xtt27bFjh07rAqSREREZN8EsWTfZiIiIiJyart27UL37t2xatUqPP3007YOh4iIiBwcx1giIiIiIiIiIqJKYWGJiIiIiIiIiIgqhZfCERERERERERFRpbDHEhERERERERERVQoLS0REREREREREVCksLBERERERERERUaWwsERERERERERERJXCwhIREREREREREVUKC0tERERERERERFQpLCwREREREREREVGlsLBERERERERERESV8v9Tfd9CWwhpgwAAAABJRU5ErkJggg==\n", - "text/plain": [ - "<Figure size 1400x300 with 12 Axes>" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "<ggplot: (314657497)>" - ] - }, - "execution_count": 243, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "dummy_df = mean_cdf_df.loc[:1, :].copy()\n", - "dummy_df.loc[0, 'dummy'] = '0'\n", - "dummy_df.loc[1, 'dummy'] = '1'\n", - "\n", - "plt = ggplot(median_cdf_df) +\\\n", - " geom_line(aes(x='mean', y='cdf'), data=mean_cdf_df, color='black') +\\\n", - " geom_line(aes(x='peak', y='cdf'), data=peak_cdf_df, color='#0280c9') +\\\n", - " geom_line(aes(x='mean', y='cdf', color='dummy'), data=dummy_df) +\\\n", - " scale_x_log10() +\\\n", - " scale_y_continuous(limits=[0, 1]) +\\\n", - " facet_wrap(facets='vendor_cat', nrow=2) +\\\n", - " ylab('ECDF') +\\\n", - " xlab('Number of reports') +\\\n", - " scale_color_manual(['black', '#0280c9'], labels=['Mean number of reports of failure', 'Peak number of reports of failure']) +\\\n", - " guides(color=guide_legend(title='')) +\\\n", - " theme_classic(base_size=12, base_family='sans-serif') +\\\n", - " theme(figure_size=(14, 3),\n", - " axis_text_y=element_text(margin={'r': 5}),\n", - " panel_grid_major_x=element_line(size=0.7, color=\"gainsboro\"),\n", - " text=element_text(size=12),\n", - " legend_box_spacing=0.01,\n", - " legend_box_margin=0,\n", - " legend_margin=0,\n", - " legend_key=element_blank(),\n", - " legend_entry_spacing=5,\n", - " legend_background=element_rect(fill=(0,0,0,0), color=(0,0,0,0)),\n", - " legend_position='top')\n", - "\n", - "plt.save('plots/failure_mean_peak_cdf.pdf', limitsize=None)\n", - "plt" - ] - }, - { - "cell_type": "code", - "execution_count": 246, - "metadata": {}, - "outputs": [], - "source": [ - "filtered_failure_df['parsed_start_time'] = pd.to_datetime(filtered_failure_df['start_time'], unit='s')\n", - "precovid_failure_df = filtered_failure_df[(filtered_failure_df['parsed_start_time'].dt.year == 2019)\n", - " & (filtered_failure_df['parsed_start_time'].dt.month >= 4)\n", - " & (filtered_failure_df['parsed_start_time'].dt.month <= 8)].reset_index(drop=True)\n", - "covid_failure_df = filtered_failure_df[(filtered_failure_df['parsed_start_time'].dt.year == 2020)\n", - " & (filtered_failure_df['parsed_start_time'].dt.month >= 4)\n", - " & (filtered_failure_df['parsed_start_time'].dt.month <= 8)].reset_index(drop=True)" - ] - }, - { - "cell_type": "code", - "execution_count": 247, - "metadata": {}, - "outputs": [], - "source": [ - "def compute_ia(partial_df):\n", - " sorted_partial_df = partial_df.sort_values('start_time').reset_index(drop=True)\n", - " ia_arr = sorted_partial_df['start_time'].values - np.roll(sorted_partial_df['start_time'].values, 1)\n", - " partial_ia_df = pd.DataFrame({'ia': ia_arr[1:], 'count':1, 'vendor_cat': partial_df.loc[0, 'vendor_cat']})\n", - " return partial_ia_df\n", - "\n", - "precovid_ia_partial_df_list = []\n", - "covid_ia_partial_df_list = []\n", - "\n", - "for vendor in precovid_failure_df['vendor_cat'].unique():\n", - " precovid_partial_df = precovid_failure_df[precovid_failure_df['vendor_cat'] == vendor].reset_index(drop=True)\n", - " covid_partial_df = covid_failure_df[covid_failure_df['vendor_cat'] == vendor].reset_index(drop=True)\n", - " \n", - " # Compute interarrival time\n", - " precovid_ia = compute_ia(precovid_partial_df)\n", - " covid_ia = compute_ia(covid_partial_df)\n", - " \n", - " precovid_ia_partial_df_list.append(precovid_ia)\n", - " covid_ia_partial_df_list.append(covid_ia)\n", - "\n", - "precovid_ia_df = pd.concat(precovid_ia_partial_df_list)\n", - "covid_ia_df = pd.concat(covid_ia_partial_df_list)" - ] - }, - { - "cell_type": "code", - "execution_count": 249, - "metadata": {}, - "outputs": [], - "source": [ - "precovid_ia_quantiles = precovid_ia_df.groupby('vendor_cat')['ia'].quantile([0.50, 0.95]).reset_index().sort_values('ia').pivot(index='vendor_cat', columns='level_1')\n", - "covid_ia_quantiles = covid_ia_df.groupby('vendor_cat')['ia'].quantile([0.50, 0.95]).reset_index().sort_values('ia').pivot(index='vendor_cat', columns='level_1')\n", - "# precovid_ia_quantiles" - ] - }, - { - "cell_type": "code", - "execution_count": 250, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead tr th {\n", - " text-align: left;\n", - " }\n", - "\n", - " .dataframe thead tr:last-of-type th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr>\n", - " <th></th>\n", - " <th colspan=\"2\" halign=\"left\">duration</th>\n", - " <th colspan=\"2\" halign=\"left\">ia</th>\n", - " <th colspan=\"2\" halign=\"left\">duration_covid</th>\n", - " <th colspan=\"2\" halign=\"left\">ia_covid</th>\n", - " </tr>\n", - " <tr>\n", - " <th>level_1</th>\n", - " <th>0.50</th>\n", - " <th>0.95</th>\n", - " <th>0.50</th>\n", - " <th>0.95</th>\n", - " <th>0.50</th>\n", - " <th>0.95</th>\n", - " <th>0.50</th>\n", - " <th>0.95</th>\n", - " </tr>\n", - " <tr>\n", - " <th>vendor_cat</th>\n", - " <th></th>\n", - " <th></th>\n", - " <th></th>\n", - " <th></th>\n", - " <th></th>\n", - " <th></th>\n", - " <th></th>\n", - " <th></th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>Apple</th>\n", - " <td>0.333333</td>\n", - " <td>2.500000</td>\n", - " <td>98.000000</td>\n", - " <td>560.033333</td>\n", - " <td>0.500000</td>\n", - " <td>0.650000</td>\n", - " <td>899.666667</td>\n", - " <td>899.666667</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Skype</th>\n", - " <td>0.333333</td>\n", - " <td>4.633333</td>\n", - " <td>99.333333</td>\n", - " <td>416.800000</td>\n", - " <td>0.333333</td>\n", - " <td>1.483333</td>\n", - " <td>178.666667</td>\n", - " <td>1070.333333</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Github</th>\n", - " <td>0.333333</td>\n", - " <td>1.000000</td>\n", - " <td>60.666667</td>\n", - " <td>308.600000</td>\n", - " <td>1.000000</td>\n", - " <td>1.666667</td>\n", - " <td>158.333333</td>\n", - " <td>646.066667</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Gmail</th>\n", - " <td>0.333333</td>\n", - " <td>0.666667</td>\n", - " <td>5.000000</td>\n", - " <td>62.333333</td>\n", - " <td>0.333333</td>\n", - " <td>2.000000</td>\n", - " <td>26.666667</td>\n", - " <td>583.733333</td>\n", - " </tr>\n", - " <tr>\n", - " <th>FB Msgr</th>\n", - " <td>0.333333</td>\n", - " <td>1.200000</td>\n", - " <td>5.666667</td>\n", - " <td>186.200000</td>\n", - " <td>0.333333</td>\n", - " <td>0.533333</td>\n", - " <td>11.000000</td>\n", - " <td>221.350000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Whatsapp</th>\n", - " <td>0.333333</td>\n", - " <td>0.666667</td>\n", - " <td>4.333333</td>\n", - " <td>26.200000</td>\n", - " <td>0.333333</td>\n", - " <td>0.666667</td>\n", - " <td>11.166667</td>\n", - " <td>376.150000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Snapchat</th>\n", - " <td>0.333333</td>\n", - " <td>1.333333</td>\n", - " <td>1.333333</td>\n", - " <td>6.666667</td>\n", - " <td>0.333333</td>\n", - " <td>1.333333</td>\n", - " <td>1.666667</td>\n", - " <td>126.500000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Netflix</th>\n", - " <td>0.333333</td>\n", - " <td>3.416667</td>\n", - " <td>1.333333</td>\n", - " <td>8.333333</td>\n", - " <td>0.333333</td>\n", - " <td>2.766667</td>\n", - " <td>2.000000</td>\n", - " <td>65.916667</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Facebook</th>\n", - " <td>0.333333</td>\n", - " <td>2.000000</td>\n", - " <td>1.333333</td>\n", - " <td>5.000000</td>\n", - " <td>0.333333</td>\n", - " <td>1.266667</td>\n", - " <td>1.666667</td>\n", - " <td>69.566667</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Twitter</th>\n", - " <td>0.666667</td>\n", - " <td>5.666667</td>\n", - " <td>1.666667</td>\n", - " <td>10.666667</td>\n", - " <td>0.333333</td>\n", - " <td>7.866667</td>\n", - " <td>5.000000</td>\n", - " <td>92.550000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>YouTube</th>\n", - " <td>0.333333</td>\n", - " <td>2.333333</td>\n", - " <td>1.333333</td>\n", - " <td>6.333333</td>\n", - " <td>0.333333</td>\n", - " <td>1.666667</td>\n", - " <td>2.000000</td>\n", - " <td>44.700000</td>\n", - " </tr>\n", - " <tr>\n", - " <th>Instagram</th>\n", - " <td>0.333333</td>\n", - " <td>6.000000</td>\n", - " <td>2.000000</td>\n", - " <td>8.633333</td>\n", - " <td>0.333333</td>\n", - " <td>3.333333</td>\n", - " <td>3.000000</td>\n", - " <td>29.733333</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " duration ia duration_covid \\\n", - "level_1 0.50 0.95 0.50 0.95 0.50 \n", - "vendor_cat \n", - "Apple 0.333333 2.500000 98.000000 560.033333 0.500000 \n", - "Skype 0.333333 4.633333 99.333333 416.800000 0.333333 \n", - "Github 0.333333 1.000000 60.666667 308.600000 1.000000 \n", - "Gmail 0.333333 0.666667 5.000000 62.333333 0.333333 \n", - "FB Msgr 0.333333 1.200000 5.666667 186.200000 0.333333 \n", - "Whatsapp 0.333333 0.666667 4.333333 26.200000 0.333333 \n", - "Snapchat 0.333333 1.333333 1.333333 6.666667 0.333333 \n", - "Netflix 0.333333 3.416667 1.333333 8.333333 0.333333 \n", - "Facebook 0.333333 2.000000 1.333333 5.000000 0.333333 \n", - "Twitter 0.666667 5.666667 1.666667 10.666667 0.333333 \n", - "YouTube 0.333333 2.333333 1.333333 6.333333 0.333333 \n", - "Instagram 0.333333 6.000000 2.000000 8.633333 0.333333 \n", - "\n", - " ia_covid \n", - "level_1 0.95 0.50 0.95 \n", - "vendor_cat \n", - "Apple 0.650000 899.666667 899.666667 \n", - "Skype 1.483333 178.666667 1070.333333 \n", - "Github 1.666667 158.333333 646.066667 \n", - "Gmail 2.000000 26.666667 583.733333 \n", - "FB Msgr 0.533333 11.000000 221.350000 \n", - "Whatsapp 0.666667 11.166667 376.150000 \n", - "Snapchat 1.333333 1.666667 126.500000 \n", - "Netflix 2.766667 2.000000 65.916667 \n", - "Facebook 1.266667 1.666667 69.566667 \n", - "Twitter 7.866667 5.000000 92.550000 \n", - "YouTube 1.666667 2.000000 44.700000 \n", - "Instagram 3.333333 3.000000 29.733333 " - ] - }, - "execution_count": 250, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "precovid_duration_quantiles = precovid_failure_df.groupby('vendor_cat')['duration'].quantile([0.50, 0.95]).reset_index().sort_values('duration').pivot(index='vendor_cat', columns='level_1')\n", - "covid_duration_quantiles = covid_failure_df.groupby('vendor_cat')['duration'].quantile([0.50, 0.95]).reset_index().sort_values('duration').pivot(index='vendor_cat', columns='level_1')\n", - "covid_table = precovid_duration_quantiles.join(precovid_ia_quantiles).join(covid_duration_quantiles, rsuffix='_covid').join(covid_ia_quantiles, rsuffix='_covid') / 3600\n", - "covid_table" - ] - }, - { - "cell_type": "code", - "execution_count": 251, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\\begin{tabular}{lrrrrrrrr}\n", - "\\toprule\n", - "{} & \\multicolumn{2}{l}{duration} & \\multicolumn{2}{l}{ia} & \\multicolumn{2}{l}{duration\\_covid} & \\multicolumn{2}{l}{ia\\_covid} \\\\\n", - "level\\_1 & 0.50 & 0.95 & 0.50 & 0.95 & 0.50 & 0.95 & 0.50 & 0.95 \\\\\n", - "vendor\\_cat & & & & & & & & \\\\\n", - "\\midrule\n", - "Apple & 0.3 & 2.5 & 98.0 & 560.0 & 0.5 & 0.7 & 899.7 & 899.7 \\\\\n", - "Skype & 0.3 & 4.6 & 99.3 & 416.8 & 0.3 & 1.5 & 178.7 & 1070.3 \\\\\n", - "Github & 0.3 & 1.0 & 60.7 & 308.6 & 1.0 & 1.7 & 158.3 & 646.1 \\\\\n", - "Gmail & 0.3 & 0.7 & 5.0 & 62.3 & 0.3 & 2.0 & 26.7 & 583.7 \\\\\n", - "FB Msgr & 0.3 & 1.2 & 5.7 & 186.2 & 0.3 & 0.5 & 11.0 & 221.3 \\\\\n", - "Whatsapp & 0.3 & 0.7 & 4.3 & 26.2 & 0.3 & 0.7 & 11.2 & 376.1 \\\\\n", - "Snapchat & 0.3 & 1.3 & 1.3 & 6.7 & 0.3 & 1.3 & 1.7 & 126.5 \\\\\n", - "Netflix & 0.3 & 3.4 & 1.3 & 8.3 & 0.3 & 2.8 & 2.0 & 65.9 \\\\\n", - "Facebook & 0.3 & 2.0 & 1.3 & 5.0 & 0.3 & 1.3 & 1.7 & 69.6 \\\\\n", - "Twitter & 0.7 & 5.7 & 1.7 & 10.7 & 0.3 & 7.9 & 5.0 & 92.5 \\\\\n", - "YouTube & 0.3 & 2.3 & 1.3 & 6.3 & 0.3 & 1.7 & 2.0 & 44.7 \\\\\n", - "Instagram & 0.3 & 6.0 & 2.0 & 8.6 & 0.3 & 3.3 & 3.0 & 29.7 \\\\\n", - "\\bottomrule\n", - "\\end{tabular}\n", - "\n" - ] - } - ], - "source": [ - "print(covid_table.to_latex(float_format=\"%.1f\"))" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.1" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/datasets/Talluri2021/other notebooks/5.covid period comparison.ipynb b/datasets/Talluri2021/other notebooks/5.covid period comparison.ipynb deleted file mode 100644 index 15eaf77..0000000 --- a/datasets/Talluri2021/other notebooks/5.covid period comparison.ipynb +++ /dev/null @@ -1,229 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "import pandas as pd\n", - "from plotnine import *" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [], - "source": [ - "or_events = pd.read_parquet('./outage_report_2019-20')" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [], - "source": [ - "filtered_or_events = or_events[(or_events['vendor'] != '') & (or_events['vendor'] != 'overview')].reset_index(drop=True)\n", - "filtered_or_events = filtered_or_events.drop_duplicates(subset=['vendor', 'event_time', 'status_code'])\n", - "# Combine events with the same event_time, but different status_code with max\n", - "filtered_or_events = filtered_or_events.groupby(['vendor', 'event_time'])['status_code'].max().reset_index()" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "filtered_or_events['evtime'] = pd.to_datetime(filtered_or_events['event_time'], unit='s')" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "def proper_vendor_names(series):\n", - " return series.str.capitalize().replace(['Apple-servers', 'Facebook-messenger', 'Youtube'], ['Apple', 'FB Msgr', 'YouTube'])\n", - "\n", - "filtered_or_events['vendor_proper'] = proper_vendor_names(filtered_or_events['vendor'])" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "['Apple',\n", - " 'Github',\n", - " 'Skype',\n", - " 'FB Msgr',\n", - " 'Gmail',\n", - " 'Whatsapp',\n", - " 'Snapchat',\n", - " 'Netflix',\n", - " 'Facebook',\n", - " 'Twitter',\n", - " 'YouTube',\n", - " 'Instagram']" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "vendor_list = list(filtered_or_events.groupby('vendor_proper')['status_code'].sum().reset_index().rename(columns={'status_code':'count'}).sort_values('count')['vendor_proper'])\n", - "vendor_list" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [], - "source": [ - "filtered_or_events['year'] = pd.Categorical(filtered_or_events['evtime'].dt.year, ordered=True)\n", - "filtered_or_events['month'] = pd.Categorical(filtered_or_events['evtime'].dt.month, ordered=True)\n", - "filtered_or_events['vendor_cat'] = pd.Categorical(filtered_or_events['vendor_proper'], ordered=True, categories=vendor_list)" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "367336.0" - ] - }, - "execution_count": 16, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "reports_per_month = filtered_or_events.groupby(['year', 'month', 'vendor_cat'])['status_code'].sum().reset_index().rename(columns={'status_code':'count'})\n", - "subset_reports_per_month = reports_per_month[(reports_per_month['month'] > 3) & (reports_per_month['month'] < 9)]\n", - "subset_reports_per_month['count'].sum()" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [], - "source": [ - "report_count_df_list = []\n", - "\n", - "for vendor in subset_reports_per_month['vendor_cat'].unique():\n", - " partial_df = subset_reports_per_month[subset_reports_per_month['vendor_cat'] == vendor].reset_index(drop=True)\n", - " max_reports = partial_df['count'].max()\n", - " partial_df['prop'] = partial_df['count'] / max_reports\n", - " report_count_df_list.append(partial_df)\n", - " \n", - "reports_per_month_with_prop = pd.concat(report_count_df_list)" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:727: PlotnineWarning: Saving 14 x 3 in image.\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:730: PlotnineWarning: Filename: plots/covid_comparison.pdf\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/layer.py:467: PlotnineWarning: geom_bar : Removed 1 rows containing missing values.\n", - "/Users/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/layer.py:467: PlotnineWarning: geom_bar : Removed 1 rows containing missing values.\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABJYAAAF1CAYAAAC6f2D4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAA9hAAAPYQGoP6dpAAC+xUlEQVR4nOzdZ1QUSdsG4JsgiGEVVJBBRZIKoqCIkkyIadcM5hzQXSPmHNA1Yw6YI0YUxIxxDRhWQXfNOSdEUVGCAv398Jt+aWaAGYIIe1/nzDlMd3V1zVDTXf10VbWGIAgCiIiIiIiIiIiI1KSZ2wUgIiIiIiIiIqK8iYElIiIiIiIiIiLKFAaWiIiIiIiIiIgoUxhYIiIiIiIiIiKiTGFgiYiIiIiIiIiIMoWBJSIiIiIiIiIiyhQGloiIiIiIiIiIKFMYWCIiIiIiIiIiokxhYImIiIiIiIiIiDKFgSUiIiIiIiIiIsoUBpaIiIiIiIiIiChTGFgiIiIiIiIiIqJMYWCJiIiIiIiIiIgyhYElIiIiIiIiIiLKFAaWiIiIiIiIiIgoUxhYIiIiIiIiIiKiTGFgiYiIiIiIiIiIMoWBJSIiIiIiIiIiyhQGloiIiIiIiIiIKFMYWCIiIiIiIiIiokxhYImIiIiIiIiIiDKFgSUiIiIiIiIiIsoUBpaIiIiIiIiIiChTGFgiIiIiIiIiIqJMYWCJiIiIiIiIiIgyhYElIiIiIiIiIiLKFAaWiIiIiIiIiIgoUxhYIiIiIiIiIiKiTGFgiYiIiIiIiIiIMoWBJSIiIiIiIiIiyhQGloiIiIiIiIiIKFMYWCIiIiIiIiIiokxhYImIiIiIiIiIiDJFO7cLQERERHmblu/fOZp/0uSaOZp/bhh7516O5j+zolWO5k9EREQkxx5LRERERERERESUKQwsERERERERERFRpjCwREREREREREREmcLAEhERERERERERZQoDS0RERERERERElCkMLBEREVGec+LECfTq1QuVKlVC4cKFYWJigpYtWyI8PFwhbUREBDw8PFCkSBEUL14cbdq0wcOHDxXSLVy4EG3atIGZmRk0NDRQr169NPcfGhoKV1dX6OnpoVixYmjevDlu3LiRnR8xR2T393b37l2MGDECDg4OKF68OAwMDODq6opdu3Yp3X9kZCR69OiBkiVLolChQnB2dsbx48dz5LMSERHRj8HAEhEREeU5/v7+ePz4MYYMGYKDBw9i0aJFiIyMhJOTE06cOCGmu337NurVq4evX79i586dWLduHe7evYvatWvj7du3kjxXrFiBJ0+ewN3dHaVKlUpz3yEhIWjatCkMDQ2xe/durFixAvfu3UPt2rXx4MGDHPvM2SG7v7cjR47gwIED8PT0RGBgILZs2QIrKyu0bdsWU6dOlew7ISEBDRo0wPHjx7Fo0SKEhITAyMgITZo0walTp37Yd0BERETZS0MQBCG3C0FERER5l5bv3zmaf9LkmgrLIiMjYWhoKFn2+fNnWFpawtbWFseOHQMAtGvXDidPnsSDBw/wyy+/AACePHkCKysrDB06FLNnzxa3T05Ohqbm93tutra2KFmyJP766y+FfVeqVAm6urq4evUqNDQ0xDwrVKgALy8vbNmyJcPPNPbOPdU+fCbNrGildHl2f29RUVEoUaKE+D3INWvWDCdPnsT79++hq6sLAFi+fDkGDBiAc+fOwdnZGQCQmJgIOzs7FClSBBcvXsy+L4CIiIh+GPZYIiIiojwndXAEAIoUKQIbGxs8e/YMwPegxf79++Hp6SkGRwDA1NQU9evXR3BwsGR7eVApPe/evcOdO3fQtGlTSTDF1NQUtra22LNnD5KSkjL7sXJcdn9vJUuWVAgqAUDNmjURGxuL9+/fi8uCg4NRsWJFMagEANra2ujSpQv+/vtvvHjxIls+IxEREf1YDCwRERFRvvDx40dERESgcuXKAIAHDx4gLi4OVatWVUhbtWpV3L9/H/Hx8Wrt4+vXrwAg9sJJSVdXF7GxsT/9cLjUcuJ7O3nyJEqVKiUJZF2/fj3NPAHkiTmqiIiISBEDS0RERJQvDBgwAF++fMH48eMBfO9dBAAGBgYKaQ0MDCAIAqKjo9Xah5GREQwMDBAWFiZZ/uHDB1y/fl2y37wiu7+3NWvW4K+//sKECROgpaUlLn/37l2aeabcLxEREeUtDCwRERFRnjdx4kRs2bIFCxYsgIODg2SdsqFaqqxTRlNTEwMGDMDx48cxbdo0REZG4v79++jSpQtiY2PFNHlFdn9vhw4dwoABA+Dl5YVBgwapvF1G64iIiOjnlXdaPkRERERK+Pr64s8//8T06dMxcOBAcXmJEiUAKO8J8/79e2hoaKB48eJq72/SpEkYOnQo/vzzTxgZGcHK6vtE2T179gQAmJiYZOJT/HjZ/b2FhoaiTZs2aNiwIbZs2aIQKCpRokSaeQLKe0gRERHRz4+BJSIiIsqzfH19MWXKFEyZMgXjxo2TrLOwsICenh6uXbumsN21a9dgaWmJggULqr1PbW1tzJ8/H+/evcO///6Lly9fYv/+/Xj69CnMzMxQpkyZTH+eHyW7v7fQ0FC0atUKdevWxe7du6Gjo6OwbZUqVdLME/j+JD4iIiLKexhYIiIiojxp2rRpmDJlCiZMmIDJkycrrNfW1kbz5s0RFBSEmJgYcfnTp09x8uRJtGnTJkv7L1KkCKpUqQJjY2NERETg+PHjGDJkSJby/BGy+3s7cuQIWrVqBTc3N+zZs0fpxOYA0Lp1a9y+fRsXL14UlyUmJiIgIAC1atWCTCbLpk9IREREP5KGIAhCbheCiIiI8i4t379zNP+kyTUVls2bNw8jRoxAkyZNlAZHnJycAAC3b9+Go6MjqlevjjFjxiA+Ph6TJk3C+/fvcfXqVZQqVUrc5vLly3j8+DEAYNiwYShatCh8fX0BAI6OjjA1NQUA/PXXX7h06RKqVq0KQRDw999/Y/bs2ahfvz5CQkIkE1anZeyde2p/D+qYWdFK6fLs/t7Onj2LRo0awcjICOvWrYOenp4kPxsbG/zyyy8AgISEBDg4OODTp0+YNWsWDA0NsXz5cuzbtw/Hjh1D3bp1s/MrICIioh+EgSUiIiLKktwILNWrVw+nTp1Kc5uUzZvw8HCMHj0a58+fh7a2Ntzd3eHn5wcLCwvJNj169MDGjRuV5rd+/Xr06NEDAHDu3DkMGzYMt27dQkJCAqysrNCjRw8MHjwYBQoUUOkz5VZgKbu/tylTpojBN2VOnjyJevXqie/fvHmDUaNGYf/+/YiNjYW9vT2mTZsGDw8PNT4dERER/UwYWCIiIqIsyY3AUl6XW4ElIiIiouzGOZaIiIiIiIiIiChTGFgiIiIiIiIiIqJMYWCJiIiIiIiIiIgyhYElIiIiIiIiIiLKFAaWiIiIiIiIiIgoUxhYIiIiIiIiIiKiTNEQBEHI7UIQEREREREREVHewx5LRERERERERESUKQwsERERERERERFRpmjndgHyuqdPnyIqKiq3i0GktpIlS6JcuXJK17FeU17Fek35Ees15Ues15QfsV5TfpRevZZjYCkLnj59Cmtra8TGxuZ2UYjUVqhQIdy6dUvhIMF6TXkZ6zXlR6zXlB+xXlN+xHpN+VFa9TolBpayICoqCrGxsQgICIC1tXVuF4dIZbdu3UKXLl0QFRWlcIBgvaa8ivWa8iPWa8qPWK8pP2K9pvwovXqdEgNL2cDa2hrVq1fP7WIQZSvWa8qPWK8pP2K9pvyI9ZryI9Zryq84eTcREREREREREWUKA0tERERERERERJQpDCz9BNauXQsTExO4u7v/0P16eXnBy8sr2/MdNmwYOnfunO35/gxmzZqFRo0aoXLlyjA3N4ezszNGjRqF58+fK01/+/Zt9O3bF1WqVIGZmRlq1aqFsWPHStLMmzcPJiYmCi9zc3NJug8fPsDa2hqHDx/Osc9HRLkjIiICvXv3hqOjI8zMzGBnZ4fmzZvD19dXkq5WrVro1q1bLpUya9q1a4fRo0eL79M69slfISEhYtpatWqlmS71sRIA3r9/j0mTJqFWrVri99mlSxdER0eLabZt2wYHBwdOpJqGHTt2pPmdT506VUyX+n9jbm4OV1dXTJkyBe/fv89wP+fOnRO33bFjh9I0bdu2hYmJCWrVqpVtny+7KGvzrF69Gn369IGTkxNMTEwy1dZ6/vw5hg0bhurVq8PMzAwODg7o3bu3Qrq//voLLVu2hIWFBSpVqoTu3bvjzp07CumOHj2KwYMHo0GDBjA1NYWJiYnS/Z45cwZWVlZ49eqV2mUmouy1f/9+hfOhnIeHB0xMTPDXX38prHNxcUHjxo3F9yYmJhg/fny2lev169eYN28erl+/nm15/gweP34MMzMzXL58WbJcEATs2LEDv/32GywtLVGxYkU0btwYoaGhGea5Z88etGnTBnZ2djAzM0P16tXRvXt3XLp0SWn6kJAQNGzYEObm5qhevTomTZqEL1++SNJcv34dXbt2haOjIywsLFC5cmU0b94cu3fvVsivTZs2mDRpkhrfQuYxsPQT2L59OwDgzp07iIiIyOXSZM3169cRGBiIUaNG5XZRcsSnT5/QqlUrLFiwAAEBAejXrx+OHTuGZs2aKTSgw8LC8Ntvv+Hz58+YNWsWtm7dipEjR0JXV1dp3lu2bMHevXvFV+qDQ/HixeHt7Y1p06bh69evOfYZc8vNmzcxfPhwuLi4wMLCAhYWFnB1dcWoUaPwzz//SNLKL0hT2rBhg9KLEvlFy/79+7OtrNmVZ2BgIKpUqYLPnz+Ly1Rt/Kfn9OnTaN68OSwsLGBrawsfHx+lj7d99OgRBg0aJJ6YXFxc0rwYDAoKQqNGjWBubg5bW1sMGDAAL168kKRh8DNzjh07hpYtWyImJgYTJkzA1q1bMXXqVDg6OmLv3r25XbxsERoaisuXL8PHx0dc1rFjR8kxT/6qVKkSChYsiHr16olp165dq5DO398fANCkSRPJvl6/fo1mzZrh5MmT8PHxwbZt2zBz5kyUL18e3759E9O1bdsWenp6WL58eY5+9rxu/vz5Ct996gCHvK7u3bsXmzdvRpcuXRAQEKDWTaYiRYqI7aGUnj59ivPnz6No0aJZ/izZLa02z+bNm/H8+XO4urqiRIkSaud7+/ZtNGnSBHfu3MHEiROxbds2TJo0CcWKFZOkCw0NRZcuXVCyZEmsWrUKs2bNwqNHj9CmTRs8fvxYkvbw4cOIiIiAlZUVbGxs0tx37dq1YW9vj1mzZqld7vxGnXbJj2RiYoJ58+aJ7+VtknPnzqm0feq2R0xMDBYtWgQvLy/Y29vDysoKDRo0wLJlyxAfH69SnqreeP33338xbtw4NGjQABUqVICdnR3at2+Ps2fPKs33yZMn6NOnD6ytrWFlZYUOHTrg2rVrkjT5ue3h4uICDQ0Nhf9tdHQ0bt++jUKFCimse/nyJZ48eQIXF5ccK9ebN28wf/583LhxI8f2kRumTZuG2rVro0aNGpLlY8aMwdixY+Hm5ob169dj5cqVaN26NeLi4jLMMzo6Go6OjpgxYwa2bt2KyZMnIyoqCp6enjh//rwkbVBQEPr37w97e3ts3rwZQ4cORWBgIPr06SNJ9+nTJ8hkMowZMwabNm3CwoULUbZsWQwePBgLFy6UpB05ciQ2bdqE+/fvZ+5LUYdAmRYeHi4AEMLDwzOdx9WrVwWZTCZ07dpVkMlkwsiRI7OxhOnz9PQUPD09szXPfv36Cc2aNcvWPH92x48fF2QymbBt2zZxWWxsrFCtWjWha9euQnJycrrb+/n5CTKZTHj37l2G+4qMjBTKlSsnBAUFZanM6dXd7KjX6tq0aZNQrlw5oX79+sKaNWuE06dPC2fOnBHWr18vtGzZUpDJZMKjR4/E9C9evBAuX74syaN+/fpK63NYWJggk8mEffv2ZVt5syPP2NhYoXr16oK/v79k+bBhwwRXV1ehX79+QpMmTQSZTKZWvufOnRPKlSsn9OzZUzh16pSwe/duoXr16oK7u7sQHx8vpouKihIqV64sODk5CTt27BDOnj0rrFixQrCyshIaNmwoJCUliWnXrl0ryGQyYcSIEcLJkyeFrVu3CtWqVRNq1qwpREdHS/Y/b948wcXFRUhISFD/S8min61eq6pNmzaCi4uL8O3bN4V1Kf8PgiAINWvWFLp27fqjipZtfvvtN+GPP/7IMN3Tp08FExMTYeDAgRmmnTdvniCTyYTTp09Llvfs2VOoXr26Qt1Uxt/fX6hUqZIQGxubYdrcklv1evv27YJMJhOuXr2abrq06uScOXMEmUwm3L9/P93t5cfTESNGCDKZTHjw4IFk/ezZswUHBwehS5cuQs2aNdX/IFmQUb1Iq82T8neb1rkpLcnJyULDhg2Fhg0bSo7ZytSuXVto0KCBpJ3x7NkzoXz58sKAAQPSLNO4cePSPbfs379fKFu2rPD8+XOVy62un/14rW675Ee6fPmy8OLFC/G9/DcUFhaW4bbK2h63bt0SbG1thcmTJwuhoaHCmTNnhHnz5gnm5uZCu3btMmzHCoIgjB07Vli2bJkQGhoqhIWFCevXrxeqVasm2NnZSdq3vr6+QtOmTYWVK1cKZ86cEUJDQ4UuXboIMplM2LlzpyTPqKgooXr16kL9+vWFAwcOCMeOHRNatWolVKhQQbh3754kbW62PVLKiXrdoEEDoXbt2pJlBw8eFExNTYWJEycKv/32m2RdYGCgIJPJhCNHjojLZDKZMG7cOLX2mx759ev27duzLc/cdvfuXUEmkwknT56ULD906JAgk8mEkJCQbNvXx48fBVNTU2HQoEHissTERKFatWpCx44dJWmDgoIEmUwmHD9+PMN8f/vtN6FGjRoKy93d3bMUY1C17rLHUi7btm0bAGDcuHGoUaMGQkJCFKKfz549g4mJCZYvX45FixbB0dER5ubmaNq0Kc6cOSNJK+/Jcf36dfTp0wcVK1ZEpUqVMGjQILx79y7D8nz9+hULFy5EnTp1YGZmhipVqmDo0KEqbfv27VscPnwYnp6ekuXyOynBwcGYPn06qlWrBisrK3Tv3h1v377F58+fMWrUKNja2sLW1hZDhw5V6PK3YcMGtGnTBlWrVoWlpSUaNGiA5cuXS+4+P3z4EBUrVkTfvn0l2549exZly5bFnDlzMvwMmSG/G6mlpSUu27dvH968eYM//vgDGhoa2bavUqVKoU6dOti8eXO25ZnbLl26hHHjxqF+/fo4fPgwevfujdq1a8PNzQ09evTAnj17sGLFChQsWFDcRiaTwcHBIRdLnXU7d+7Ehw8f0LFjR8nyuXPn4uzZs1ixYkWmnhry559/wtzcHKtWrUKdOnXQpk0brFixArdv35b0BggNDUV0dDTmzJmDdu3awdXVFf369cOgQYNw48YN3Lx5EwCQkJCAuXPnomHDhpg7dy7q1auHjh07YtWqVXj+/DlWrFgh2X/Xrl3x/PlzHDhwIBPfyn9TdHQ09PX1oa2t+KBWTc2MT9MbNmxAuXLl4OfnhwULFqBcuXIKvcmA70N2KleuLN6Blg+rO3ToEDw8PMS7zGvXrlXYNiYmBlOnToWTkxPKly8PBwcHTJo0SaVhZNevX8eVK1cUzg3KbN++HYIgoFOnTummE/6/W7qpqSnc3NzE5c+ePcORI0fQuXNnFC9ePMP9tWnTBjExMUqHGVDWyHsYFShQQKX0tWvXhkwmk/Q8TU5ORmBgINq2bav0XLpv3z40a9YMlSpVgoWFBZydnTFs2DBJmjt37qBjx46wsLBAlSpVMG7cOBw7dkyhh4eXlxfc3d1x4cIFtGjRAhYWFgp5pZRWmwdQ7XeblgsXLuDGjRvo06dPmj2cge/DPR88eAB3d3fJd1OmTBlUrFgRhw8fRlJSUqbK1LBhQxQuXBhbt27N3IfI4zLTLvmRHBwcIJPJMrWtsrZHuXLlcPHiRUyZMgWNGjWCm5sbhg0bhpEjR+Ls2bNpDtlJacaMGejfvz8aNWoEFxcX9OjRA35+fnj79i2OHDkipuvfvz8OHjyIvn37ws3NDY0aNcKGDRtgbW2t0NPC398f7969w6ZNm/Drr7+iQYMG2LRpE3R0dODn5ydJm5/bHi4uLnjw4AHevHkjLjt//jzs7Ozg7u6Of//9V9Lz/fz589DS0lI6dHjXrl2oW7cuLCws4OHhgaNHj0rWP3r0CEOHDoWrqyssLCzg4OCA7t2749atW2Kac+fO4ddffwXwvV0hH8os70X35MkT/PHHH+IwXjs7O7Rr104ybC4kJAQdO3ZEtWrVYGFhgbp162LGjBkKbQofHx9YWVnhzp07aNeuHSwtLVGlShWMHz9e4XpZPtxv8+bNcHNzg5mZGerVq6fy+X3Tpk0wNDREnTp1JMvXrFmDsmXLokWLFirlo4oiRYpAV1dX0u6LiIjAmzdv0L59e0naZs2aoXDhwir1yDMwMFDalvT09ERwcLCknuQEBpZyUVxcHEJCQmBvb49KlSqhQ4cO+Pz5M/bt26c0/fr16/HXX3/B19cXixcvhqamJrp27aowDhQAevfujfLly2PVqlUYNmwYDh8+jE6dOkkCMaklJyejV69eWLZsGVq3bo2NGzdi3LhxOH36NLy8vDLs7nfq1Cl8+/YNrq6uStfPmjULUVFRWLBgASZNmoTz58+jf//+8Pb2RtGiRbF8+XL0798fu3fvVuiC/fjxY7Rq1QqLFy/Gxo0b0aFDB/j7+0vm6zA3N8ecOXNw4MAB8cIoMjISAwcORK1atTB8+HDJZ01MTMzwlbJRllJiYiLi4uJw/fp1TJ48Gebm5uJBFgAuXrwIAEhKSkKrVq1Qvnx52NjYoH///nj9+rXSPBs0aICyZcvCzs4OgwcPVnphCADOzs64dOkSPn78qHR9XrN48WJoaWlh9uzZ0NHRUZqmefPmKF26tPg+9VC4WrVq4c6dOzh//rx4gkt9Qk1MTMSsWbNQvXp1VKxYEe3bt1foFlqrVi3JUB25tOYjS0hIwJQpU2Bvbw8LCwt4enqqPN588+bN8PDwUBjakJULklevXuHq1avw9PSUnFjkweiUJyX5+l9++UWSh/y9/ILmzp07+PTpk8IccDVq1EDx4sVx8OBByfL8GPzMaQ4ODrhy5QomTpyIiIiIdI/TKQmCgKlTp2LKlCmYO3cuRowYga5du0JbWxsBAQGStNHR0WJDLuXF0I0bNzB58mR4e3tjzZo1qFGjBiZNmiQJGMbFxcHT0xOBgYHo1asXNm/ejP79+yMwMBA9evSAIAjplvPo0aPQ0tKCk5NTuumSk5Oxc+dOlC9fHs7OzummPXPmDJ4/f4727dtLLqovXrwIQRBgZGSE/v37w8rKCubm5vDy8lJ6rjQ0NISlpSWOHz+e7v7+y5KSkhTOjakJgiCu+/LlC8LCwrBmzRo4OjqiXLlyKu1HU1MT7dq1w65du8Rz76lTp/Dq1SuFhjYAXL58GX/88QfKlSuH5cuXY9OmTfDx8ZGU782bN/D09MSDBw8wc+ZMLFq0CJ8/f8aECROUluHNmzcYNGgQWrdujc2bN6N79+5pljejNk9mXbhwAcD3C4+uXbvC3NwcVlZW6Natm+ScJT9OKDtv6ujoIC4uTmE4nKp0dHRQo0aN/+zvIjPtEvkF8P3799GpUydYWlqiWrVqWLp0KQAgPDwcrVq1gqWlJdzc3LBz505Jfu/evcPYsWNRr149WFlZoWrVqmjbtq3Ynkwp9VA4dShrexQqVAiFChVSSGtvbw/g+9CqzFB247VkyZIK6bS0tFC1alWF/Rw6dAiurq4oU6aMuKxo0aJo2rQpjh49Kvmt5+e2h3xIW8phU+fOnYOTkxMcHR2hoaEhqSfnzp1DlSpVFNp3x48fx4YNGzBixAisXr0axYsXR58+ffDkyRMxzZs3b6Cvr49x48Zhy5YtmD59OrS1tdGsWTPx+FOlShXMnz8fADBkyBBxGLQ8WNm1a1f8+++/GD9+vDgU3dbWFp8+fRL38+jRI7i7u8PPzw8BAQHo06cP9u3bp/SYm5iYiK5du8LNzQ3r1q1Dz549ERAQgN9//10h7ZEjR7Bu3TqMHDkSK1euRJkyZdC/f3+Vpq44fvw4atWqJWmHJyYmIiIiAra2tli5ciVq1qyJsmXLwtnZGStWrMiw/ZNSUlISvn37hmfPnmHMmDEQBAE9evQQ19++fRsAYG1tLdmuQIECsLS0FNenJL+efffuHTZs2IBTp06hf//+CumcnZ0RGxur8nDZzFIMadEPc+DAAXz69AkdOnQAALRo0QKTJ0/G9u3b0a5dO4X0ycnJ2LZtm3hRUK9ePdSqVQt+fn4K8xI0bdpUbDjVrVsXpUqVwsCBA7Fv3z60adNGaXn27duHkydPYvXq1ZIgiY2NDX799Vfs3Lkz3UZWeHg4ChYsCEtLS6Xrra2tsWDBAvH9/fv3sWbNGvTu3RsTJ04EANSpUwfh4eEICgrCtGnTxLRTpkyRfA+1atWCvr4+hg0bhkmTJol3plu2bIkLFy7gzz//hL29PWbPng1BELBs2TLJiW3YsGEIDAxM87PIOTs7Y9euXZJlkZGRqFatmvi+WrVqCAwMROHChcVl8uBR37590blzZ4wcORIPHz7E7Nmz4enpiWPHjkFPTw8AYGpqitGjR8PW1ha6urq4evUqli9fjtOnT+PQoUMwNjaW7N/W1hbJycmIiIhA/fr1M/wMP7OkpCScO3cOVatWhZGRUabzWbt2Lfr27YuiRYtixowZAKBwp3fWrFlwdHTE3Llz8fnzZ0yfPh09evTAqVOnJHVDHbNmzUKVKlUwd+5cxMTEYN68efDy8kJoaChMTU3T3O7ly5e4desWunbtmqn9pkU+YWvqk5J8WcoL6yZNmsDPzw9Tp07FjBkzUKZMGVy7dg3Lli1Dw4YNYWVlBQDifF7K7pzr6uri0aNHiI+PlwQrnJ2dMXPmTHz8+FEhcEaKxo4di/v372PdunVYt24dChQoADs7OzRs2BA9e/aUHFvk4uLiMHjwYJw9exabN29G7dq1AXxvtLdo0QJbt27F0KFDxYuibdu24evXrwrH8Ddv3iA0NBSVK1cGALi7uyMqKgoLFy5E9+7doaenh7Vr1+LWrVvYv38/7OzsAHzvXVK6dGn07dsXJ0+eTPfhExERETAzM1P6OVI6deoUXr58qfCAA2W2bdsGLS0thXOl/Ng7bdo0uLi4YPXq1YiNjcX8+fPRvn177Nu3T2F+mSpVqij0/qX/ad68ucKyJ0+eSILXJ06cUDjmVatWDatWrVJrX+3bt8eiRYtw8uRJeHh4YPv27WIvudQuX74MQRAwa9YsyQVUyiDU6tWr8eHDBwQFBaFChQoAvtfxzp0749mzZwp5fvjwAStXrpT0gktLRm2ezJLX4WHDhqFZs2bYuHEjIiMjMWfOHLRu3RrHjh2DkZERSpUqheLFiyv0Jvn48aN4Lkg5Wb26bG1tsXTpUsTGxioNOuRXWWmXJCYmok+fPujatSt+//137NmzBzNnzkRMTAwOHjyIAQMGwNjYGOvWrcPQoUNRqVIlVK1aFcD//ldDhw6FoaEhvnz5gsOHD8PLyws7duzIlvly1G17hIWFAYD421FFYmIivn37hgcPHii98ZrWNhcvXpTsJy4uDk+ePEHTpk0V0tvY2GDLli148uQJLCwsxOX5te3h5OQETU1NnDt3Dq1atcL79+9x+/ZtTJgwAYULF0aVKlVw7tw5NGjQAC9evMDTp0/RrFkzhXzi4+Oxfft2FClSBMD3c1/16tWxb98+DBw4UNxXyptASUlJaNCgAerXr4+AgABMmTIFRYsWRaVKlQB8v4ZJOYJA3pPS19dX0pszdR1IeRNXEAQ4OjrCysoKnp6euHnzpuQ8/fXrV/Tr10+c269OnTrQ1tbG7NmzcenSJTg6Okr2f/DgQZQqVQrA95v27u7umDlzptLvRC4qKgpPnjxRmBfw/fv3SEhIwNmzZ3H16lWMHj0axsbG2L9/P6ZNm4YPHz5gzJgxaeabUv369fHgwQMAgJGREbZs2SL+/oH/HQOU9bYuXry40nPW2LFjxRuJOjo6mDp1qtLft62tLTQ0NHD58mU0atRIpfJmBgNLuWj79u0oWLAgWrZsCQAoXLgwmjVrhh07duDhw4cKT7pp2rSp5OKtSJEiaNiwIUJCQpCUlCS5OE4dPGrevDl8fHxw7ty5NANLx44dQ7FixdCwYUPJXYDKlSvD0NAQ58+fTzew9ObNG5QoUSLNoV8eHh6S9/IL1wYNGkiWW1pa4vDhw/jy5Yt4IXL9+nX4+fnh0qVL+PDhgyT9w4cPJUOGpkyZgoiICLRr1w5fv37Fli1bFBoHw4cPR8+ePdP8LHLKLoQMDAxw8OBBfP36Fffu3cPy5cvRtm1b7Nq1S9xPcnIygO/fu/wpDK6urjA0NESvXr0QHBwsDvVI3RPG1dUVLi4uaNGiBfz9/SVP3wH+d7cnrZ5Pecn79+8RHx8vuRsll5SUJLkToKWllWbdsrW1RcGCBVG0aNE0h8hZWVlhyZIl4ntNTU38/vvvuHr1aqaH1ZUoUQJr164Vy1WzZk24ublh6dKlmDt3bprbyQM8VapUydR+05LRSSnlRcYvv/yCffv2wdvbWxIUaNasGRYvXiy+t7CwgKamJi5duiS5YHv8+LHYLfvjx4+SY1N+Cn7+CAYGBggODsY///yDs2fP4p9//sH58+cxc+ZMBAQE4ODBgzAwMBDTR0dHo127dnj9+jWCg4PFBp5cnz59EBgYiP3796NNmzZITk7Gpk2bxF6RKVWsWFEMKsm1atUKp0+fxrVr11CzZk0cO3ZMTJfy3FCvXj1oaGjg/Pnz6QaWXr9+rfQudWrbtm2Dtra20hsrKUVHRyM0NBT16tVTCLzLj73GxsZYvXq1eF50cHCAq6sr/P39JccB4PvvOCoqComJiUq7kP/XLVq0SDxfy6X+nmrWrCneAPr69SsePHiARYsWoV27dggKCpLU3/SUK1cOzs7O2LFjB6pXr44jR46keSyV96b4/fff0aFDBzg6OirUhwsXLqBSpUoKF8YtW7ZU+iSl4sWLqxRUAjJu82SW/Lzn4OAgGe4jfwrRhg0bMHr0aGhqaqJHjx5YuHAhFixYgK5duyImJgaTJ08We5hnpQdsyZIlkZycjMjISKWBvfwqK+2Sr1+/YtSoUeJFtIuLC44dO4alS5ciNDQUtra2AICqVavCzs4OwcHB4oWlpaUlZs6cKdlXvXr18OzZM6xbty5bAkvqtD1u3ryJ5cuXo2nTpulO9p6SKjdelZk3bx4eP36MdevWics+fvwIQRDSbM8AioHT/Nr2KF68OGxsbMQeSxcuXICWlpYYUHFychKDgPIeKcrqi4uLixhUAr738ipZsqRkgvXExEQsX74cQUFBePz4saQHtSqTP+vr66N8+fLw9/dHUlISXF1dYWNjo3AsevLkCebMmYOwsDBERUVJflf37t1TqHOtW7dWeD979myEhYVJAktubm5iUAn4/htt0aIF5s+fj5cvX6Y5hFR+TZW6rSJvU8TExGDLli3i9YKbmxvevn2L1atXY9CgQRnWcQDija4XL16ID7lYv369wv8qrXOKsuWDBw9Gp06dEBUVhaNHj2LChAmIi4tT6M1VoEABFCtWLMef9smhcLnk0aNHuHDhAho0aABBEPDx40d8/PgRv/32GwAofbpVyh+KnKGhIb5+/aowJ1HqtNra2tDX10/37tXbt2/x8eNHlC9fHqamppJXZGRkho8Njo+PT3c+gNQnB/m8C6mXy++wJyQkAABevHiB1q1b4/Xr15g6dSqCg4Nx8OBBTJ8+XdxvSrq6umjdujXi4+NRuXJlhbGywPduxJUrV87wZWZmprCttrY27Ozs4OjoiE6dOmHnzp14+vQpli1bJqbR19cHAMlTjYDvvcc0NDQUnmiRWrVq1WBubq70KYHy71jVJ3XkVU2aNJHUwZUrV2Ypv9QRenmvntRPLFFHq1atFOa2qFGjRoZdTeUBGVUutjNDlZPShw8f0KtXL3z+/BlLly5FUFAQZsyYgUuXLqFnz55iAEFfXx+tW7fGrl27sHnzZkRHR+PmzZsYOHCgeNGeusGQn4KfP5KdnR0GDBiAVatWISIiAt7e3nj27JnCU8sePnyIK1euoH79+gpBJeB747pWrVrYsGEDgO83DZ49e6Y0mJ7WeQX4X6P97du3uHXrlsJ5oUKFChAEIcvnBuD7xdzRo0fRoEEDcf9pCQoKQkJCgtJ5mOTH3tq1a0tuthgZGcHGxkbpsVdXVxeCIIjnHJKysrKCnZ2d5JVa0aJFxXWOjo7o0KEDli5dinv37ql97O7YsSOOHj2KVatWoWDBgmK7KDUnJyesW7cOiYmJ8PHxQY0aNeDu7o49e/aIaaKjo5UeZ5XVewAZ1r2UVKnXmSGvw3Xr1pUst7W1hZGRkWS49dChQ+Ht7Y3FixfDzs5ODIrJbwKkHKqlrv9KW0MdGbVLNDQ0JEF2bW1tlC9fHkZGRmJQCfj+P059QQ98n+OlcePGMDc3R7ly5WBqaoqzZ8/i3r172VJ+Vdsez549Q/fu3SGTydK9SZaa/Mbrnj17MHfuXHz48AFt27aVzA2U2tatW7F48WL069cPjRs3VlifXuA29br83PZwcXHBw4cP8fr1a3GomzyY4eTkhOvXr+PTp084d+4ctLW1UbNmTYU85MeWlHR0dCS/cV9fX8ydO1cMYu/fvx8HDx6EjY2NSscCDQ0N7NixA/Xq1YO/vz8aN26MKlWqYOLEieL8Pl++fEGbNm1w5coVjBo1Crt27cLBgwexZs0aAIrHHG1tbYWbE/JjeOrrWmXH8LTSpiTfZ+pjerFixaChoaH0xnX9+vURHx+Pu3fvpplvShUrVkS1atXQrFkzbNmyBWXKlMGkSZPE9fL/j7JyfvjwQWmQ1cTEBHZ2dmjQoAFmzZqFzp07Y+bMmUrnRtbV1c3x4zlvzeUS+QSlBw4cUDrRnPzxtSkbxm/fvlVIFxkZCR0dHYVI6du3byV37hITE8UJYtNiYGAAfX19bNmyRen6jKKxBgYGGQZMMuPw4cOIjY3FmjVrJHeQ0nrE5e3btzF37lzY29vj6tWrWLlyJfr16ydJk5WhcKnJZDIYGRnh4cOH4jJra+t0J4tT5S6iIAhKT6jyHluq3gH+mRkYGKBgwYJKgzvLli1DXFwc3rx5o1LvsoykrvvZ0WhO6wQmn/g6LWmdwLJKnZPS8uXLcePGDVy8eFHsaVerVi1YWlqKvQzkPUdmzZoFQRAwbtw4jBkzBpqamvD09ESpUqVw6tSpHPlu/+sKFCiAYcOGYfXq1eKwFjkHBwc0a9YMI0aMAPD9/5P6mNKrVy/069cP165dw/r162Fubq40yJ7WeQX4X30yMDCAnp5emnN6ZHQsMjAwUOhpmtquXbvw9etXhcnsldm2bRtKlSql0AsWUD4MVE4QBKXH3g8fPkBXV1elO46kOvkd54yOh6k1bdoU48ePx7Jly9CpUydx2LgyjRs3RuPGjZGQkICIiAgsXboUAwYMEIP8+vr6iIqKUthOXsdTU6f3UU61eTKqwynLqK2tjSlTpmDkyJF4+vQpDAwMYGRkhE6dOqFcuXKZnuAZyF9tDXVkpV2ip6enMKG3jo6O0gvCAgUKSILZK1euFIexjBw5EgYGBtDS0sLcuXOzLbCkStvj+fPnaNu2LbS1tbFjx450rxtSk994Bb7P7VivXj04Oztj2bJlCr3vge830UePHo3OnTuLU2LIyS/o02rPAIo3pvNz28PFxQWrVq3C+fPnFXoJy4NIFy5cECf1zuz5LCgoCF5eXgpD0t+/f6/y8MIyZcqI7YUHDx5g3759mD9/Pr5+/Sr2Mnr9+jV27dolmU8xrbljExMT8f79e8mxSN52SV0/lR3b00qbkjzv1G0VPT09mJmZKW0ryXtZZaZnqLa2NmxtbSVzP8lvFN66dUvSyzYxMRH3799Hq1atMsy3WrVq2Lx5M548eSLOcSb38ePHHD+es8dSLkhKSsKuXbtQvnx5BAYGKrz69euHN2/e4MSJE5LtDh06JDlYfv78GUePHkXNmjUV5ogJCgqSvN+3bx8SExPTnRDVw8MD0dHRSEpKUrg7aWdnl+E8AhYWFoiOjpZMzpYd5I2olBMoCoKg9GklsbGx6NevH8qWLYvAwED07NkTM2fOVOj5M3z4cBw8eDDDV+pJxJV59OgRXr16Jekq3rRpU2hoaODkyZOStCdPnoQgCBk+7Ss8PByPHj1Smu7p06cAoDA0IS/S0tKCq6sr/v33X4U7WhUqVICdnV26jezspqurK84plFJaPTLSOoFl1BBL6wSWVRUrVgQApRP83b59W1wPfA/Mli5dWmGYqHx4ScpgRqFChbBkyRJcu3YNR48exT///IOFCxfiwYMHcHBwUBgW81+9IMmstO7myi8mlM3z0a5dOyxfvhw7d+7EkCFDFB400LRpU5iYmMDX1xdnzpxB9+7dlV4037lzRyFIv2fPHhQpUkQcLuHh4YHHjx9DX19f6bkh9fC61CwtLSWTgyqzfft2lC5dOt0hdQDwzz//4NatW+KFT2rVq1eHsbExTp06JflOXr9+jZs3b6Z5TM0Px9OfjbxnTerGbUb09PTg4+ODhg0bolu3bipto6urC2dnZ4wbN06ybycnJ9y+fVvhjvLevXvVKpMyOdXmqV+/PvT09BTaD9euXUNkZKTSOly4cGFYW1vDyMgI165dw9mzZ8X5SDLr6dOn0NfXT7N3V36VW+2SoKAgODs7Y9asWfDw8ED16tVhZ2eXrU9xyqjt8fz5c3h5eUEQBAQGBmYpMAkov/Eqt2PHDowYMQJt27bF7NmzFc5Penp6KF++vNL2zK1bt1CwYEGFed3yc9vDyckJWlpaOHDgAO7cuSO5nvvll19QuXJlBAYG4tmzZ1keNpl6wvpjx44p9AKTp8koiGdhYQEfHx9UqlRJ4eE2qfeT+qEjKQUHByt9n/qznj17VhIESkpKwt69e1G+fPl063OZMmVQsGBBpQ88+PXXXxETE6Mwn92JEydQuHBhteYgk4uPj0dERITk2rF69eowMjJS6Phw4MABfPnyRel8Y6mFhYVBU1NT4bfx+vVrxMfHZ6qs6mCPpVxw4sQJvH79GuPHj1f6469UqRI2bNiA7du3o2HDhuJyTU1NdOzYEX379kVycjKWL1+Oz58/i3etUzp06BC0tbVRp04d3LlzB3PnzoWNjY3SSTjlWrZsieDgYHTt2hV9+vSBvb09tLW18erVK5w7dw6NGzdOt1K7uLjAz88PV65cUejCnRV16tSBjo4O+vfvj/79+yMhIQGbNm1SemIcPXo0Xrx4gQMHDqBQoUKYNGkSwsPD0b9/f4SGhorR9rJly2Z4MZTazZs3MWXKFPz2228wNTWFpqYmbt26hdWrV0NfX18yntXS0hI9evTAxo0bUbhwYdSvXx8PHz7E3LlzYWtrK/k/eHh4wNPTE5aWluLk3StWrIChoaHSmf0jIiKgr6//QwMuOWnQoEE4efIkxowZg1WrVqn8aOrUUnfnzYyyZctKHqkKfL/b8uDBA6UNlZCQEPTr109sED1//hyXL19W+gS5lORB2idPnkiCPVllbGyMatWqISgoCL///rsYcA4PD8eDBw/Qp08fMa2RkRHOnj2LV69eSXo3hoeHi3mlVrx4cfEO4ZEjR/DgwQNxDrGU8lPw80fo3LkzjI2N4eHhAUtLSyQnJ+PGjRtYtWoVChcunOYFYrNmzaCnp4e+ffsiPj4ey5YtExtqWlpa6NGjB6ZPn45ChQqlOW+RkZERevbsieHDh8PQ0BBBQUE4ffo0xo8fL/YU8fb2xsGDB9GmTRt4e3vD2toagiDgxYsXOHXqFPr165dusNzZ2Rnbt2/HgwcPJBOtykVERODOnTsYNGhQhhPpb9u2DQDEh16kpqmpiSlTpuD3339Hz5490a1bN8TGxmLRokXQ0dERJyiVS05OxtWrV9PMj1Tz6dMn8diRmJiIe/fuYcmSJdDV1ZU89UZV/fr1U+hpnNrcuXPx6tUruLm5wdjYGJ8+fcKaNWtQoEAB8aKrT58+2L59O7p06YIRI0agVKlSCA4OFucKycocROm1ef755x9xotWYmBgIgiDemba3txd7Xz979gxOTk5o27at+Kj1YsWKYcSIEZg2bRp8fHzQqlUrREZGYu7cuTAxMZHMdXnu3Dn8888/4m/y6tWrWLZsGerVq6fQo+b58+e4evUqAIiBXnmZ5E+kTSkiIgLOzs7ZPodUXpBd7RJ1aGhoKPQkunnzJsLDw7Mc4JFLr+3x4sULeHl5iTe/lc0xpS75jdfUUxHIg0pt2rSBn59fmnWsadOmWLNmDV68eCE+Cfjz5884dOgQGjVqpHBzIT+3PYoWLYoqVarg8OHD0NTUlMwrBHwPPMmHkmUlsOTh4YHAwEBYWlrC2toa165dg7+/v0KbsHz58ihYsCCCg4NhZWWFwoULw8jICO/fv8eECRPQrFkzmJmZoUCBAggLC8OtW7cwYMAAAP97qvCYMWMwbNgwaGtrIzg4OM3erTo6Oli5ciW+fPkCe3t7XL58GYsWLYK7u7vCkD8DAwO0a9cOPj4+0NPTw6ZNm3D//n2FKQWU7cPBwUHpFCS///47goOD8fvvv2PkyJEwNjbGgQMHcOTIEUycOFHSq9bHxweBgYG4cOGCeJ3ZokULNGrUCFZWVihatCiePXsm9iqS/8+A7+228ePHY/DgwRg1ahRatWqFR48eYfr06ahTp45k3rBRo0ahSJEisLe3R6lSpfD+/Xvs378fe/fuxR9//KFwQ0f+ubJjrrb0MLCUC7Zv3w4dHR2lj88Fvv8omjRpggMHDkiirj179kRCQgImTpyId+/eoUKFCti0aZPCwQUA1qxZg3nz5mHTpk3Q0NBAw4YN4evrm+ZjU4HvFXr9+vVYs2YNdu/ejaVLl0JLSwvGxsZwcnJSOpdHSo6OjihbtixCQ0OzNbBkaWmJVatWYc6cOfD29kbx4sXRunVr9O3bF126dBHTbd26FUFBQZg/f754wtTR0YG/vz+aNGmCYcOGYe3atZkuR6lSpWBkZIRVq1bhzZs3SEpKEi8GBw0aJJ705Hx9fWFsbIytW7di/fr1MDAwQIsWLTBmzBjJ/6FChQoICAhAZGQkvn37BiMjI7Ro0QJDhw5V6KkgCAKOHDmC1q1b55vGnqOjI6ZPn46JEyeiSZMm6Ny5MypUqABNTU1ERkaKQ0VTTjioTKVKlbB3716EhITA1NQUurq6agffPD09MWjQIIwdOxa//vorXrx4geXLl6d5xz0qKgq9e/dGp06dEBMTAz8/P+jq6ipcvKZWrVo1FCxYEOHh4QoNLnUa/7Vq1QIAyWNmx40bh44dO6Jfv37o1q0b3r17hxkzZqBSpUqSY06PHj0QHByMjh07YsCAAZDJZLhz5w4WLVqEUqVKSSb5P3DgAN68eQNLS0skJCTg/PnzWLt2Lbp27ap0ToT8FvzMaYMHD8aRI0ewevVqREZG4uvXrzA0NISbmxsGDRqUbiO5QYMG2Lx5M3r06IFevXph9erVYiOnRYsWmD59Ojw9PRUeOyxXuXJltG/fHvPmzcOjR49gZGSEyZMno2/fvmKaQoUKITg4GEuXLsWWLVvw7NkzFCxYECYmJnBzc8swSN+4cWMULlwYR44cwR9//KGwfvv27dDQ0MhwGFxcXBxCQkLg5OSkNEAl16xZM6xdu1act0NHRwdOTk7w9/dXmIT43Llz+PTpU5oPtSDVXLp0CS1atADwvS1RunRp2NvbY/DgwZK5ZbJTtWrV8O+//2L69Ol4//49fvnlF1StWhU7d+4U2wClS5fG7t27MXnyZIwdOxYFCxZE06ZNMWLECPj4+KT5u1BFem2e9evXK9x1lgfK5E8oBCDOj5n6XP/777/jl19+wdq1axESEiLeoBo7dqykR2yBAgVw4MABLFq0CF+/foWZmRlGjBiB3r17KwRpw8LCMGzYMKVlShnYAr4/nOHWrVsK6f8rsqtdog4PDw8sXLgQfn5+cHJywoMHD7Bw4UKUK1dO8tCErEir7REVFYW2bdsiMjISfn5+iIqKkgwhNTY2lgS3Urc91Lnxum/fPowYMQKVK1dGly5dcOXKFUkZ5U9IBr7/Dnbv3o3u3btjxIgR0NHRwbJly5CQkIDhw4crfL783vZwcXHB1atXYWtri6JFi0rWOTs7Y/Xq1dDR0VF6XaiqqVOnokCBAli6dCm+fPmCKlWqYM2aNZgzZ44knZ6eHubPn4/58+ejU6dO+PbtG4YNG4bu3bvD1NQUGzduxMuXL6GhoYFy5cph0qRJ6NWrF4Dv17kbN27E1KlTMWjQIBQqVAiNGzfGihUrlLYptbW1sXHjRkycOBGLFi1CwYIF0alTJ4Xhk8D3+VQrVKiAOXPm4MWLFzA1NcXSpUvFB2Wlp02bNhg1ahTevHkjOSbr6+sjODgY06dPx7Rp0xAbGwsLCwvJsVzuy5cvKFiwoOTcUqNGDYSEhOD58+eIjY2FgYEBHBwcMHnyZIX/laenJ7S0tLB06VIEBgaiePHi8PLywujRoyXpHBwcsGPHDgQGBuLTp08oXLgwbGxssHjxYsnT+OQOHz4Ma2vrnP9tCJRp4eHhAgAhPDw8R/fz9OlTQSaTCf7+/hmm9fPzE2QymfDu3bscLVNa/P39BRsbGyE2NjZX9p/fnT59WihTpoxw7969LOWTXt39UfU6tevXrwtDhw4VnJycBDMzM8Hc3FxwcXERBg8eLJw5c0aSVl7PU3r27JnQsWNHoUKFCoJMJhNq1qwpCIIghIWFCTKZTNi3b58kvfx3tX37dnFZcnKysHz5csHZ2VkwNzcXmjZtKpw9e1bw9PQUPD09xXTyPHft2iVMnDhRqFKlimBmZia0bt1a+Oeff1T6vIMGDRLq1aunsHz79u2CTCZT+hoyZIgkra2trdCsWTOFPE6dOiU0a9ZMMDc3F2xsbITBgwcLb9++VUh37do1oXfv3oKDg4NgZmYmODs7CyNGjBCeP38uSXfo0CGhYcOGgqWlpfi9bNu2TUhOTlbIMzk5WahZs6YwYcIElb6H7PQz1uvctHbtWkEmkwm3b99Wur5mzZpC165df0hZxo8fL9StW1dpnclNAwcOFFq0aJHbxUgX63X2GzlypGBlZSUkJCRkKZ+stnnWr18vWFpaCpGRkVkqR3abPXu24OjoKHz79i3H9pEX6rU67ZIhQ4YIlpaWCnl4enoK9evXV1ie+vibkJAgTJ06Vahevbpgbm4uNG7cWDh8+LAwZMgQsT0jJ5PJBD8/P/G9vE0SFhaW4WdS1vaQb5/WK+W+BEGx7REZGSkMHDhQcHFxESwsLITy5csLzs7OwujRoxXaE0OGDEl3X0+fPpWkf/TokdCrVy+hYsWKgoWFhdCuXTvh33//Vfhcudn2SCkv1Ou8JK3flTIymUwYN25cpvcVFxcnVKlSRVi6dGmm87CzsxOmTp2a6e1zwqdPnwRLS0shICAg03moWncZWMoCBpYUxcXFCbVq1VKprKQ+T09PYcSIEVnOhye+3Hf16lVBJpNl+nu+c+eOIJPJhKNHj2ZzybImu4KfmcF6/d21a9eEAwcOCLa2tkLPnj3TTPcjA0uRkZFCxYoVFQK8uenRo0eCqampcPHixdwuSrpYr7Nm/vz5wpYtW4QzZ84IoaGhwsiRIwUTExNhzpw5Wc47q20eb29vYcaMGVkuR3b68OGDYGNjI+zevTtH98N6nTvY9shZrNfZ60cGlgRBEDZs2CBUrVpV+PLli9rb3r59W6hQoUKuXYOnZd68eULdunWzdKNA1brLoXCUrQoWLIjFixcrTNBGWffhwwc4OztL5legvMvOzg7NmzfHwoULsWnTJrW3P3fuHBwcHJQ+GSs3LVq0CB06dMhwsn/KOb1798bbt29Rs2ZNlR5A8COUKlUKS5YsSfOpL7nhxYsX+PPPP5U+lpnyD21tbfj7++PVq1dISkqCmZkZJk+eLJlzLrOy2uZZtWpVlsuQ3Z49e4aBAweidevWuV0UygFsexClrUuXLvj06ROePHmi9rCxihUrKjzF92dQpEgRLFiwQOkDT7IbA0t5QNmyZfHixQuV0g4fPlzpuOMfqWbNmmyo54DixYvn+v+WstekSZOwfft2fP78We25Gnr06JGpSXFzEoOfP4eUc25lR7rskvJhFD8DV1dXuLq65nYxKIcNGjQIgwYNyrH881ubx9bWNsfmxaKfA9selFcsXLhQMv9belS9Vk6PlpZWjp4vckPKOTNzGgNLRES5RCaT5avJURn8JCIi+rmx7UFEOeE/F1iKjY3Fjh078OjRIzx8+BCfPn1Chw4d0KlTp9wuGhERERERERFRnqKZ2wX40WJiYnDkyBF8+/YNTk5OuV0cIiIiIiIiIqI86z/XY8nQ0BBbt26FhoYGPn36hCNHjmQ6r7i4OADA1atXs6l0RD/GrVu30lzHek15Fes15Ues15QfsV5TfsR6TflRevU6pf9cYElDQyPb8vrw4QOA70/gIcprChUqhJIlSyosZ72mvIz1mvIj1mvKj1ivKT9ivab8KK16ndJ/LrCUnYyNjQEAAQEBaj+SkCi3lSxZEuXKlVNYznpNeRnrNeVHrNeUH7FeU37Eek35UVr1OiUGlrKBtbU1qlevntvFIMpWrNeUH7FeU37Eek35Ees15Ues15RfMbCkplevXuHVq1cAVB9vSERERERERESUHzGwpKaVK1fC19c3t4uhEi3fvzO9bdLkmtlYEqLsw3pNP4uxd+5letuZFa2ysSREUjxOEuUc/r6I8jf+xjNHM7cLkNf069cP4eHhCA8PR0BAQG4Xh4iIiIiIiIgo12Spx9Lbt2/FRyemlNHETnmZsbGxOPkaEREREREREdF/mdqBpZiYGAwdOhTbtm1DfHy80jRJSUlZLlhOCg8PR3x8vBgUe/bsGcLCwgAANWrUgK6ubm4Wj4iIiIiIiIgoT1A7sOTj44OtW7eid+/eqFq1ap4Mwvj7+yMyMlJ8HxYWJgaWVq9eDSMjo9wqGhERERERERFRnqF2YOnAgQOYNWsWhgwZkhPl+SHWrFmT20UgIiIiIiIiIsrz1J68Oz4+HlWqVMmJshARERERERERUR6idmDp119/xZkzZ3KiLERERERERERElIeoNBTu/fv34t8TJkyAl5cXihYtiubNm6NEiRIK6Q0MDLKvhERERERERERE9FNSKbBUsmRJaGhoiO8FQcDIkSMxcuRIpel/9qfCERERERERERFR1qkUWJo0aZIksERERERERERERKRSYGnKlCk5XAwiIiIiIiIiIspr1J68u1evXnj06JHSdU+ePEGvXr2yXCgiIiIiIiIiIvr5qR1Y2rBhA96+fat0XVRUFDZu3JjlQhERERERERER0c9P7cBSet6/fw9dXd3szJKIiIiIiIiIiH5SKs2xdPr0afz111/i+zVr1uDw4cOSNHFxcQgJCYGNjU22FpCIiIiIiIi+0/L9O9PbJk2umY0lISL6TqXA0smTJ+Hr6wsA0NDQwJo1a5SmMzU1xbJlyzJVkLi4OAQEBCAsLAwxMTEoU6YMPD09UadOnXS3GzduHK5fv57m+o0bN0JfXz/dtNWqVRM/HxERERERERERqUalwNKoUaMwcOBACIIAQ0NDhIaGonr16pI0urq6KFKkSKYLMnPmTNy7dw/du3eHTCbD6dOn4efnB0EQULdu3TS3+/333xEbGytZlpCQAF9fX1hYWIhBJbnSpUtj2LBhkmVZKTcRERERERER0X+VSoElPT096OnpAQAePXoEY2Nj6OjoZFshLl++jKtXr2L48OFiEKlq1aqIjIzE+vXr4ebmBi0tLaXblitXTmHZ8ePHkZiYiIYNGyqs09HRQaVKlbKt7ERERERERERE/1UqBZZSMjU1zfZCXLhwAXp6enBzc5Msb9CgAebNm4e7d+/C2tpa5fyOHj0KPT091K5dO7uLSnkUx6ITERERERERZT+1nwr37ds3/Pnnn7CxsUHhwoWhpaUleWlrqx2rwpMnT1CmTBmFXklmZmbielW9fPkSN2/eRO3atcVeVim9fv0anTp1QqtWrdC3b19s3rwZCQkJapeZiIiIiIiIiOi/Tu0o0NixY7FgwQI0bdoUrVq1gq6ubpYLERMTAyMjI4Xl8rmPYmJiVM7r6NGjAAAPDw+FdTY2NnBzc0OZMmXw9etXhIeHIygoCDdv3sT06dOhqal2nI2IiIiIiIiI6D9L7cDSzp07MWnSJEyePDlbC6KhoZGpdSklJSXhxIkTKFeunNJ5lLp06SJ5X6NGDRgaGmL9+vW4ePEinJ2dM9zHq1ev8OrVKwDArVu3VCoXEREREREREVF+pHZgKTo6GnXq1MnWQhQtWlRpr6TPnz8DUP2pbZcvX0Z0dDTatGmj8r7r1auH9evX486dOyoFllauXAlfX1+V8yciIiIiIiJKjfPAUn6h9tivOnXq4OrVq9laCFNTUzx//hxJSUmS5Y8fPxbXq+Lo0aPQ1tZG/fr11S6Dqr2i+vXrh/DwcISHhyMgIEDt/RARERERERER5RdqB5YWL16MtWvXIigoCF+/fs2WQjg7OyMuLg7nzp2TLD9x4gQMDAxQoUKFDPOIjo5GeHg4nJyc8Msvv6i87xMnTgAAKlasqFJ6Y2NjVK9eHdWrV1frSXVERERERERERPmN2kPh7O3t8e3bN7Rt2xYaGhooVKiQZL2GhgY+fvyoVp4ODg6wt7eHv78/YmNjYWxsjNOnTyMiIgLDhg0Tnxa3ePFinDhxAqtWrYKhoaEkjxMnTiApKQkNGzZUuo8bN25g586dcHZ2hpGREb59+4bw8HCEhoaiatWqqFmTXQmJiIiIiIiIiNShdmDJ09NT5WFj6hg7diwCAgKwdetWxMTEoEyZMhgxYoRkPqfk5GQkJydDEASF7Y8dOwZDQ0PY29srzV9fXx9aWlrYsWMHPn36BA0NDRgbG6NTp05o3bo1nwhHRERERERERKQmtQNLGzZsyIFiAHp6evD29oa3t3eaaXx8fODj46N0nb+/f7r5y2QyTJo0KStFJCIiIiIiIiKiFNhNh4iIiIiIiIiIMiVTgaUHDx6ga9eukMlk0NXVhYmJCbp3744HDx5kd/mIiIiIiIiIiOgnpfZQuNu3b8PZ2Rnx8fFwd3eHTCbDy5cvsXPnTuzfvx9hYWGoVKlSTpSViIiIiCjP0fL9O9PbJk3mA2aIiOjnpnZgady4cShRogT++usvlClTRlz+/PlzuLu7Y/z48di9e3e2FpKIiIiIiIiIiH4+ag+FO3XqFHx9fSVBJQAoU6YMJk2ahJMnT2Zb4YiIiIiIiIiI6Oeldo+l2NhYlChRQum6kiVLIi4uLsuFIqL8Zeyde5nedmZFq2wsCREREREREWUntQNLFStWxJYtW9CkSROFddu2beP8SkRERD8QA7dERERElJvUDiwNHjwYffr0wcePH9G9e3cYGxvj1atXCAgIwN69e7FmzZqcKCcREREREREREf1k1A4s9erVC2/evMGff/6JAwcOAAAEQYCenh6mT5+Onj17ZnshiYiIiIiIiIjo56N2YAkAxo4di/79++P8+fN49+4dSpQoAWdnZxQrViy7y0dERERERERERD+pTAWWAKBYsWJK51nKrLi4OAQEBCAsLAwxMTEoU6YMPD09UadOnXS3O378OBYtWqR03caNG6Gvry9ZdvXqVWzZsgWPHj2Crq4uHB0d0aNHDxQvXjy7PgoRERERERER0X9CpgNLN27cwJMnTxAfH6+wrk2bNmrnN3PmTNy7dw/du3eHTCbD6dOn4efnB0EQULdu3Qy3HzJkCExMTCTLihYtKnl//fp1+Pr6okaNGhg/fjw+fvyIjRs3YuLEiZg/fz4KFCigdrmJiIiIiIiIiP6r1A4sPXjwAF5eXvj3338BfJ9fKSUNDQ0kJSWplefly5dx9epVDB8+XAwiVa1aFZGRkVi/fj3c3NygpaWVbh7lypWDlVX6T7dZv349ZDIZxowZI+ZnZGSE0aNH4+jRo/j111/VKjcRERERERHlHi3fvzO9bdLkmtlYEqL/LrUDS3379sXr16+xYMECWFtbQ0dHJ8uFuHDhAvT09ODm5iZZ3qBBA8ybNw93796FtbV1lvbx7t073Lt3D926dZMEqaytrWFiYoILFy4wsEREeQobUkRERERElNvUDiz9/fffWL16NTp06JBthXjy5AnKlCmj0CvJzMxMXJ9RYGnatGn49OkTChUqBFtbW3Tu3BmmpqaSfQBA+fLlFbY1NTXF7du3s/gp/ocXe0RERERERET0X6B2YKlUqVLZ/vS3mJgYGBkZKSwvUqSIuD4txYsXR7t27VCxYkXo6enhyZMn2L17N0aOHInZs2eLwSl5HvI8UypatCg+ffqUHR+FiIiIsoA3Z4iIiIjyFrUDS3/88QdWr16Npk2bZmtBNDQ0MrXOwcEBDg4O4ntbW1vUqFEDgwcPxpYtWzBhwgSV8kpvHym9evUKr169AgDcunVLpW2IiIiIiIiIiPIjtQNLI0eOxPDhw+Hg4ICmTZvCwMBAsl5DQwNDhw5VK8+iRYsq7ZX0+fNnAMp7GaXHyMgI1tbWuHPnjmQfgPLeTzExMQpPkEvLypUr4evrq1Z5iIiIiIiIiIjyI7UDSxcvXsTGjRvx/v17XLlyRWF9ZgJLpqamOHPmDJKSkiTzLD1+/Fhcry5BEKCpqSnZB/B9rqUaNWpI0j558gTlypVTKd9+/fqhRYsWAL73WOrSpYvaZSMiIiIiIiIiyg/UDiwNHDgQJUuWxLp167LtqXDOzs44cuQIzp07h9q1a4vLT5w4AQMDA1SoUEGt/F6/fo3bt2/Dzs5OXFaiRAlUqFABf/31F1q1aiUGsG7fvo0XL16IwaKMGBsbw9jYWK3y/JdxrgwiIiIiIiKi/EvtwNKNGzewfft2lQMxqnBwcIC9vT38/f0RGxsLY2NjnD59GhERERg2bJgYBFq8eDFOnDiBVatWwdDQEAAwceJEVK5cGeXLlxcn7w4KCgIAdO7cWbKf7t27Y9KkSZg9ezZ+/fVXfPz4ERs3boSpqSk8PDyy7fMQEREREeUnY+/cy/S2MytaZWNJiIh+Tv/l46TagaVy5cpBEIRsL8jYsWMREBCArVu3IiYmBmXKlMGIESNQp04dMU1ycjKSk5Ml+5cPowsODsbXr19RrFgxVK1aFe3bt4eJiYlkH1WqVMGkSZOwdetW/Pnnn9DV1UWNGjXQs2dPFChQINs/ExEREREREf2c/suBAKLspHZgacyYMfDz80Pjxo1RsGDBbCuInp4evL294e3tnWYaHx8f+Pj4SJb16dNHrf1Uq1YN1apVy0wRiYiIiIiIiIgoBbUDSxEREXjx4gUsLCxQv359pU+FW7RoUbYVkIiIiIiIiIiIfk5qB5aWLl0q/r1161aF9QwsEaWNk5kTERERERFRfqJ2YCk5OTknykFERERERDkoKze4RnXQz8aSEBFRfqJSYCkkJARNmjSBrq5uTpeHiIiIiIhIgr2+iYh+XpqqJGrbti1KliyJ9u3bIzAwEF++fMnpchERERERERER0U9OpR5Lb968wZ49e7B792507doVmpqaaNSoEby8vNC8eXMUK1Ysp8tJRERERHkIe5gQERH9N6gUWNLX10fPnj3Rs2dPxMTEYO/evdi9ezf69euH3r17w93dHV5eXmjZsiVKliyZ02UmIiIiylEMihARERGpRu3Ju4sWLYrOnTujc+fOiI2Nxf79+xEUFIShQ4fi999/R+3ateHl5YX+/fvnRHmJiIiIiIgolzEAT0RyKs2xlJZChQqhXbt22L59O96+fYvAwECYmJhgwoQJ2VU+IiIiIiIiIiL6SandYyktgiCgVatWaNWqFb59+6b29nFxcQgICEBYWBhiYmJQpkwZeHp6ok6dOulud+7cOYSFheHevXt4//49ihcvDmtra3Ts2BEymUySdty4cbh+/bpCHtWqVYOvr6/aZc4JY+/cy/S2MytaZWNJiIiIiPI29qgggO1roozwWElZpXZgaceOHXj37p041O3+/fto0aIF7ty5AxcXF+zduxf6+vpqF2TmzJm4d+8eunfvDplMhtOnT8PPzw+CIKBu3bppbhcUFITixYujXbt2KF26NN6+fYtdu3Zh6NChmDt3LsqVKydJX7p0aQwbNkyyrEiRImqXl4iIiIjyr6wEIwAGJIiI6L9D7cCSn58f2rVrJ74fOXIkoqOjMWTIEGzevBkzZszA3Llz1crz8uXLuHr1KoYPHy4GkapWrYrIyEisX78ebm5u0NLSUrrthAkTULx4ccmyqlWrwtvbGyEhIRg0aJBknY6ODipVqqRW+YiIiIiIiIgoZ7DXVN6mdmDp4cOHsLW1BQDEx8cjNDQUK1asQLdu3VCxYkX4+fmpHVi6cOEC9PT04ObmJlneoEEDzJs3D3fv3oW1tbXSbVMHlQCgRIkSKFGiBKKiotQqBxERUW7ISmNqVAf1ewkTERER0c8rrwXa1A4sxcbGonDhwgCAixcvIiEhAU2bNgUA2NjY4MWLF2oX4smTJyhTpoxCryQzMzNxfVqBJWVev36Nt2/fwsnJSem6Tp06ITY2FoaGhqhduzbatWsHXV1dtctNRERERERERPRfpnZgydjYGFevXkWdOnVw+PBhVKxYEaVKlQIAREdHo1ChQmoXIiYmBkZGRgrL5XMfxcTEqJxXUlISlixZgoIFC6JFixaSdTY2NnBzc0OZMmXw9etXhIeHIygoCDdv3sT06dOhqZmlh+QREREREREREf2nqB1YatOmDcaPH49Tp07h0KFDGD16tLju33//hYWFRaYKoqGhkal1KQmCgMWLF+PGjRsYM2aMGPCS69Kli+R9jRo1YGhoiPXr1+PixYtwdnbOcB+vXr3Cq1evAAC3bt1SqVxEREQ/u7zW5ZqIKK/h0+mIKL9SO7A0bdo0fP78GefOnUOnTp0watQocd3+/fvh4eGhdiGKFi2qtFfS58+fAaj21DZBELBkyRKcOnUKQ4YMUToMTpl69eph/fr1uHPnjkqBpZUrV8LX11elvClr+DQWIiIiIiIiop+b2oElPT09rFixQum6CxcuZKoQpqamOHPmDJKSkiTzLD1+/Fhcnx55UOn48eMYNGgQ6tevr3YZVO0V1a9fP3GI3a1btxR6QRFR/seeHURERERERN+pPamQu7s7bt++rXTd3bt34e7urnYhnJ2dERcXh3PnzkmWnzhxAgYGBqhQoUKa2wqCgKVLl+L48ePo37+/2j2mTpw4AQCoWLGiSumNjY1RvXp1VK9eXa0JxYmIiIiIiIiI8hu1eyz99ddf+PTpk9J1MTExOHXqlNqFcHBwgL29Pfz9/REbGwtjY2OcPn0aERERGDZsmNiLafHixThx4gRWrVoFQ0NDAMCqVatw9OhReHh4wNTUVBL0KlCggDjn040bN7Bz5044OzvDyMgI3759Q3h4OEJDQ1G1alXUrMleBERERERERERE6lA7sJSeV69eZeqpcAAwduxYBAQEYOvWrYiJiUGZMmUwYsQI1KlTR0yTnJyM5ORkCIIgLrt06RIA4NixYzh27JgkT0NDQ6xZswYAoK+vDy0tLezYsQOfPn2ChoYGjI2N0alTJ7Ru3ZpPhCOiH4JzhxERERERUX6iUmApJCQEISEh4vtp06YpPHEtLi4Of/31F6pVq5apgujp6cHb2xve3t5ppvHx8YGPj49kmTxwlBGZTIZJkyZlqmz/RXxqBRER0X8Pz/9ERESkLpUCSzdv3kRgYCCA75NcnzhxQqGHj66uLqpUqYJFixZlfymJiIiIiIiIiOino1JgaezYsRg7diwAQFNTEydPnuScRPSfwbu3RERERERERMqpNbFQfHw8Ro8eLU6mTURERERERERE/11qBZYKFiyIRYsW4cuXLzlVHiIiIiIiIiIiyiPUfipcpUqV8OjRI8nT2oiIiIiIiIiIfjQ+dTn3qR1YmjhxIkaNGgU3NzdYWFjkRJmIiIiI6D+M8xsSEaWPx0n6magdWFq/fj1iY2NhbW2NqlWrwtjYGBoaGuJ6DQ0NhISEZGshiYgnDyIiIiIiIvr5qB1Y+vfff6GjowMTExO8e/cO7969k6xPGWQiIqKfU3YGKrV8/850XkmT+YRRIiIiIqK8TO3A0uPHj3OgGERERERERPRfwJ74RPmL2oElIiIiIiL6MXgBTtmJkxxTduMxioBMBpa+ffuGTZs24fjx43j37h1KliwJDw8PdOnSBQUKFMjuMmaruLg4BAQEICwsDDExMShTpgw8PT35lDsiov+grAzjG9VBPxtLkrf9LBcqbNwSERER/XhqB5Y+fvyIBg0aICIiAoULF0bp0qVx7tw5bNu2DcuXL8fx48fxyy+/5ERZs8XMmTNx7949dO/eHTKZDKdPn4afnx8EQUDdunVzu3hElIN40UlEPwKPNURERPRfoqnuBuPHj8edO3ewY8cOxMTE4N69e4iJicHOnTtx584djB8/PifKmS0uX76Mq1ev4vfff0eTJk1QtWpVDBw4EPb29li/fj2SkpJyu4hERERERERERHmG2oGlPXv2YOrUqWjbtq1kuZeXF6ZMmYLg4OBsK1x2u3DhAvT09ODm5iZZ3qBBA7x//x53797NpZIREREREREREeU9ag+Fe/v2LapWrap0nZ2dHaKiorJcqJzy5MkTlClTBlpaWpLlZmZm4npra+vcKBoRERERERERUZbkxpB8tXssmZiY4OzZs0rXhYWFQSaTZaogP0JMTAyKFCmisFy+LCYm5kcXiYiIiIiIiIgoz1K7x1L79u0xY8YMFC1aFN27d0eJEiXw7t07BAQEYMaMGRg2bFhOlDPbaGhoZGqd3KtXr/Dq1SsAwK1bt7KtXERE/0Wc5JiIiIiIKG/TEARBUGeDhIQEtGzZEkeOHIGGhga0tbWRmJgIQRDQuHFjhISEQEdHJ6fKmyUjR45EcnIy5s2bJ1n+9OlTDBw4EP3790eTJk3SzWPKlCnw9fWVLAsPD0f16tWzvbxEuSEiIgIODg6s15SvsF5TfsR6TfkR6zXlR6zXlN+p3WNJV1cXhw8fRmhoKE6cOIH379+jRIkSaNCgARo2bJgTZcw2pqamOHPmDJKSkiTzLD1+/Fhcn5F+/fqhRYsWAL73WOrSpUuOlJWIiIiIiIiI6GendmBJrnHjxmjcuHF2liXHOTs748iRIzh37hxq164tLj9x4gQMDAxQoUKFDPMwNjaGsbFxThaTiIiIiIiIiChPyHRg6fz58zh58iTevXuHEiVKoF69enBxccnOsmU7BwcH2Nvbw9/fH7GxsTA2Nsbp06cRERGBYcOGKTwtLiNxcXEAONcS5V2VKlVCoUKFJMtYrymvY72m/Ij1mvIj1mvKj1ivKT9SVq8lBDXFxsYKLVq0EDQ1NQUNDQ3xpampKTRr1kyIjY1VN8sfKjY2Vli1apXQrVs3oXXr1sKgQYOEU6dOZSqvgIAAAQBffOXZV3h4OOs1X/nuxXrNV358sV7zlR9frNd85ccX6zVf+fGlrF6npPbk3YMGDcLKlSvh6+uLTp06oXTp0nj9+jW2bNmCKVOmoF+/fliyZIk6WeZZUVFRCA0NRfny5aGnp5fbxSFSm7LIM+s15XWs15QfsV5TfsR6TfkR6zXlRxn1WFI7sGRoaIhBgwZh4sSJCut8fX2xdOlSvH37Vv2SEhERERERERFRnqKp7gaxsbFpzqXk6uoqjh8lIiIiIiIiIqL8Te3AkpOTEy5duqR03aVLl1CzZs0sF4qIiIiIiIiIiH5+aj8VbvHixfjtt99QtGhRdOrUCfr6+oiOjsaWLVuwatUq7N+/PyfKSUREREREREREPxm151gqWrQovn37hm/fvgEAtLW1kZiYCAAoUKAAdHR0/pe5hgY+fvyYjcX9+Tx9+hRRUVG5XQwitZUsWRLlypVTuo71mvIq1mvKj1ivKT9ivab8iPWa8qP06rWc2j2WPD09oaGhkelC5SdPnz6FtbU1YmNjc7soRGorVKgQbt26pXCQYL2mvIz1mvIj1mvKj1ivKT9ivab8KK16nZLagaUNGzZkpUz5SlRUFGJjYxEQEABra+vcLg6Rym7duoUuXbogKipK4QDBek15Fes15Ues15QfsV5TfsR6TflRevU6JbUDS6TI2toa1atXz+1iEGUr1mvKj1ivKT9ivab8iPWa8iPWa8qv1H4qHADcvn0bHTt2hLGxMXR0dBAREQEA8PX1xcmTJ7O1gERERERERERE9HNSO7B09epVODo64tSpU6hXrx6SkpLEdZ8/f8aKFSuytYBERERERERERPRzUjuwNGbMGFStWhX379/H5s2bkfKhcjVr1sSlS5eytYBERERERERERPRzUjuwFBYWhlGjRqFQoUIKT4czMjLC69evs61w+VFERAR69+4NR0dHmJmZwc7ODs2bN4evr29uF00tO3bsgImJCf75559sy/P48eOYN2+e2tu1a9cOo0ePliybPXs2unXrBgcHB5iYmMDHx0fptlu3bkWvXr1Qq1YtWFhYwNXVFWPGjMGbN29U3v+TJ0/Qp08fWFtbw8rKCh06dMC1a9cU0tWqVQsmJiYKr9RlB4Dr16+jV69eqF69OiwsLFCnTh0sWLAAcXFxknRt2rTBpEmTVC7rz0pen8zNzfH8+XOF9V5eXnB3d89U3sHBwVi9erXSdc+ePUPXrl1RuXJlmJiYYNKkSXj27BlMTEywY8cOhfI9e/YsU2VIy7Bhw9C5c2fJsjdv3sDHxwdVq1aFubk5PDw8sG3bNpXyi42NxR9//IHatWujQoUKsLS0RP369bFw4UKFp5AcPHgQ/fv3h6urKywsLFCrVi0MHDgQDx8+lKSLiYnBokWL4OXlBXt7e1hZWaFBgwZYtmwZ4uPjJWnPnDkDKysrvHr1KhPfxs9F/j9X9po6dWqulatWrVro1q1bruzbxMQE48ePz/T2Hz9+hK2tLUJCQsRlL1++xKRJk+Dp6Qlra2uF356cOvUwLUePHsXgwYPRoEEDmJqawsTEJM20Dx48gLe3N2xsbGBhYYFmzZrhyJEjCunmzZuntI6Ym5tL0n348AHW1tY4fPiwSmXNbWnV/dSvc+fOqZXvuXPnFLZL79y/ePHiXPnOlNVVVY+ZqcXFxcHNzQ0mJiYq9+pPSEiAv78/3N3dYWlpCTs7O3Tp0kXpzVtV2zuAau2VvFZX09KtWzdYW1vjxYsXCuuio6NRrVo1tGzZEsnJyVneV1rHgdQvLy8vlfLLSpsnM5S1RVavXo0+ffrAyckp3bKregzPSGhoKDw9PVGxYkWx7RIQECBJM2vWLDRq1AiVK1eGubk5nJ2dMWrUKKXtRlV/F4MGDUKvXr3ULm9OyYnrq5Tu3r2LefPmZXt7Nq8KDAxElSpV8PnzZ3GZOvUspdOnT4u/9ffv32e47xcvXqB3795wdnaGpaUlKlWqhEaNGmH9+vVITExUSC8IAnbs2IHffvsNlpaWqFixIho3bozQ0FCFtCEhIWjYsCHMzc1RvXp1TJo0CV++fJGk2bZtGxwcHLL1KYVqT94tCAJ0dHSUrouOjoaurm6WC5VfHTt2DD179oSzszMmTJgAQ0NDREZG4p9//kFISAgmT56c20XMVSdOnMCGDRswfPhwlbcJDQ3F5cuXsWjRIsny1atXw9raGg0bNkz3BDdv3jy4uLhgzJgxKF26NB48eICFCxfiyJEjCA0NRalSpdLd/7t379CmTRsUK1YM8+bNg66uLpYuXQovLy8cOHAAlpaWkvSOjo6YOHGiZFnqfdy9exctW7aEubk5pkyZAgMDA1y8eBELFizAv//+i/Xr14tpR44ciY4dO6Jbt24K+8qLEhISMHv2bCxZsiTb8gwODsadO3fg7e2tsG7KlCm4cuUK5s2bh1KlSsHIyEjSC1POw8MDe/fuhaGhYbaV6/r16wgMDMT+/fvFZZ8+fULr1q3x9etXjB8/HkZGRtizZw9GjBiBT58+oV+/funm+e3bNwiCgL59+6JcuXLQ0NDAxYsXsXDhQpw/f17yW1i+fDlKlSqFwYMHo1y5cnj58iWWLFmCJk2aYN++fahYsSKA7ye+NWvWwNPTE3379kWhQoXw999/Y/78+Th9+jS2b98u3mSoXbs27O3tMWvWLIXfZF41f/58hd9W6dKlc6k0edv8+fNRunRptGjRQlz2+PFjBAcHo3LlynB3d8eePXuUbqtOPUzL4cOHERERAVtbW+jo6ODff/9Vmu7Zs2do0aIFjIyMMHPmTBQuXBibNm1Cr169sHLlSvz2228K22zZsgVFixYV32tqSu/bFS9eHN7e3pg2bRrc3d3TbEf9LPbu3St5v3DhQpw7dw47d+6ULK9QoYJa+VapUgV79+6VbJfeuX/JkiX47bff0KRJE7X2k1XK6qqqx8zU5s6dq3BTKCMjR45EcHAwBg4cCFdXV3z48AHLli2Dl5cX9uzZg2rVqolpVW3vqNpeyWt1NS1+fn5wd3fHyJEjsXXrVsm6CRMm4PPnz1i4cKHCbzUzOnbsiHr16onvIyMj0adPH/Tq1QutWrUSl6c8RvwslLVFAGDz5s0oVKgQXF1dcfTo0TS3V/UYnp6lS5di9uzZ6Nq1KwYOHAhtbW08ePAA3759k6T79OkTWrVqBUtLSxQpUgR3797F4sWLceTIEZw4cQIGBgZiWlV/F8OHD0fdunVx9uxZuLm5qV32vObu3buYP38+nJ2dUbZs2dwuTq6Ki4vDrFmzMGDAABQpUkRcrk49k/vy5QtGjRqF0qVLq9zJJi4uDkWKFIGPjw9kMhm+ffuGEydOYMKECbhx4wb8/Pwk6ceMGYPAwEB4e3tjzJgxSEpKwu3btxXOL0FBQRg0aBA6deqEKVOm4OHDh5gxYwbu3bsnuVHdtm1bLFu2DMuXL8eIESPU+erSJqjJ2dlZ8Pb2FgRBEBITEwUNDQ0hPDxcEARB+P3334UGDRqom2WeFR4eLgAQP39G2rRpI7i4uAjfvn1TWJeUlJTdxctR27dvF2QymXD16tVsy3PcuHGCTCZTa5vffvtN+OOPPxSWp/w+LS0thSFDhijd/u3btwrLrl69KshkMmHBggUZ7n/atGmCqamp8OzZM3HZp0+fBFtbW6Ffv36StDVr1hS6du2aYZ6zZs0SZDKZ8OjRI8nykSNHCjKZTIiOjpYsd3d3F0aOHJlhvimlV3fVrdfZQV6fOnfuLJQpU0a4fv26ZL2np6dQv379TOXdtWtXoWbNmkrXubi4CF26dJEse/r0qSCTyYTt27dnan+q6tevn9CsWTPJsiVLlggymUz4559/JMs7duwoWFpaCh8+fMjUvv78809BJpMJjx8/Fpcpq/uvXr0STE1NheHDh4vLvnz5Inz58kUhrb+/vyCTyYSLFy9Klu/fv18oW7as8Pz580yVNSuys17nxDEuO6h6HMkJMplMGDduXKa2ff/+vWBubi5s2rRJsjzlsVp+7FX221O3HiqTcl/pnW9GjRolmJubCy9fvhSXJSYmCnXr1hVq1KghycfPz0+QyWTCu3fvMtx/ZGSkUK5cOSEoKCjDtCn9DMfrIUOGCJaWljmSd3r/i/TO35mVmJgoxMfHp7k+rbqq6jEzpYiICKF8+fLCvn37BJlMJvj7+2dYvvj4eKFs2bLCwIEDJctfv34tyGQyYeLEiZLlqrZ31GmvZLauquNH1OuQkBBBJpNJ/pcHDx4UZDKZsGHDhizlnR55O0KV/7cyWWnzqEtZW0QQpPWqfv36gqenp9LtVT2Gp+Wff/4RypQpIyxbtkyNUv/P8ePHBZlMJmzbti3NcmV0HOnWrZvQoUOHTO0/tazW65xue8iPRWFhYTmSf0aSk5OF2NjYXNl3ahs2bBDMzc1ValunVc/kxo0bJzRq1EiYPXu2ym2CtPTr108oV66c5Dx16NAhQSaTCSEhIelum5iYKFSrVk3o2LGjZHlQUJAgk8mE48ePS5b7+/sLlSpVyvB/ouoxWe0w/ZAhQ7B27VoMHTpU7Kb39OlT+Pn5Yd26dRgyZEi2BLzyo+joaOjr60NbW7GjWOo7JvLhDidPnkTjxo3F4VDbt2+XpHv37h3Gjh2LevXqwcrKClWrVkXbtm1x8eJFSTr58J7ly5dj0aJFcHR0hLm5OZo2bYozZ84olOf+/fvo378/7OzsYGZmBkdHRwwePBgJCQmSdJ8/f8aYMWNga2uLypUro0+fPgqR2pCQEHTs2BHVqlWDhYUF6tatixkzZki63vn4+GDDhg0ApF3w0+uqef36dVy5cgWenp4Zfp9pKVmypMKyqlWrQktLCy9fvsxw+0OHDsHV1RVlypQRlxUtWhRNmzbF0aNHlXZlzEiBAgUAAL/88otkebFixaCpqalw99DT0xPBwcGSbpx51R9//AF9fX3MmDEjw7SCIGDDhg1o2LAhLCwsYGNjA29vbzx58kRM4+XlhePHj+P58+cKwzdMTEzw+PFjnDhxIsP6lnoo3MOHD1GxYkX07dtXku7s2bMoW7Ys5syZk27Z3759i8OHDyvU3UuXLqFUqVKoWrWqZLmHhwdiY2Px119/Zfi9KFOiRAkAkBx7lNX90qVLw9jYWFL3CxUqhEKFCimktbe3BwCF30nDhg1RuHBhhTvE+c2jR48wdOhQcViMg4MDunfvjlu3bimk/fjxI3x9feHs7AwzMzNUrVoVXbt2xf3798U0X79+xcKFC1GnTh2YmZmhSpUqGDp0KN69e6d0/4cOHYKHh4fYTXvt2rUKaV68eIFBgwahatWqMDMzQ926dbFixQqFoR/R0dEYO3YsHBwcUL58eTg7O2PWrFkKx/vUBEHAzJkzYWpqii1btqSbdufOnUhKSpL0AAFUP1arWw+VUXVfly9fhrW1NYyNjcVlWlpaqF+/Pl6+fIkrV66olE9qpUqVQp06dbB58+ZMbf8z6du3L+rXry9Z1r17d5iYmGDfvn3ismvXrsHExEQcRph6KFx6534TExPExsYiMDBQ6VCiyMhIjBo1Sqy3Tk5OmD9/vuS8m7Lts3DhQjg5OcHMzCzdIXxp1VVVj5lyX79+xfDhw9G9e3fY2dmlub/UNDU1oampqdAGKFq0KDQ1NRVGBqhar9Vpr+SXutqiRQu0bNkS06ZNw7Nnz/D+/XuMGTMGderUQffu3XHkyBE0b94cFhYWqFChAjp06IDLly9L8vDx8UGtWrUU8pYPf1NVWkPqlQ0Plbt48SKaNWsmnmPmzJkjeWgSoP65I6W02iKA6vUqqz2+1q9fDx0dHfTs2TNT28vbN1paWpkul6enJ86cOYPHjx9nqgw5zcfHB1ZWVnj06BG6du0KKysr1KhRA76+vgrn6Y0bN8LDwwNWVlaoUKEC6tSpg5kzZwL4XgflPd/btm0rHlflPbpOnz6Nnj17wsHBAebm5nB1dcWoUaOUDusKDQ2Fh4cHzMzM4OzsjDVr1ij9TciH0G/atAl169aFmZkZAgMDAXzvGdqsWTNUrlxZHNa1bds2hZED8mvio0ePolGjRuK1pLwn3Y4dO1C3bl1YWlrit99+U3kY4ebNm+Hh4YFixYplmDategZ8/51u2bIFfn5+Sterq0SJEtDU1JTktWbNGpQtW1bhvJRaREQE3rx5g/bt20uWN2vWDIULF1YY4tymTRvExMRIhn1nhdpHg/bt22PatGlYtmwZHB0dAXz/QY4fPx6+vr5o3rx5thQsP3JwcMCVK1cwceJEREREKHTxTO3mzZuYOnUqvL29sW7dOlhbW2P48OG4cOGCmCY6OhoAMHToUGzatAnz58+HqakpvLy8lJ6k1q9fj7/++gu+vr5YvHgxNDU10bVrV8mJ9MaNG/j1118RERGBESNGYPPmzRg7diy+fv2qUOaRI0eiQIECWLZsGSZMmIDz589j0KBBkjSPHj2Cu7s7/Pz8EBAQgD59+mDfvn3o3r27mMbHx0ccXrB3717xld7Qo6NHj0JLSwtOTk7pfo/qOn/+PJKSktLs1i4XFxeHJ0+ewNraWmGdjY0N4uPjJUEO4PvBp0KFCjA1NUW9evWwYsUKhUZC27ZtUaxYMYwZMwZPnjzB58+fcfToUQQEBKBHjx4KF1fOzs6IjY1Ve66Ln1GRIkUwZMgQ/PXXXzh79my6aUePHo0pU6agdu3aWLt2LWbMmCEOI3z79i0AYMaMGXB0dIShoaGkXsmHYxgaGsLR0VGl+paSubk55syZgwMHDogX9JGRkRg4cCBq1aqV4XDOU6dO4du3b3B1dZUs//btm9JhB/JlN2/eVKl8giAgMTERMTExOHnyJFauXIlWrVpl2Ah+8uQJnj9/rtLwlrCwMACKQ2F0dHRQo0YNHD9+XKWy/uySkpKQmJgoeQHf58LS19fHuHHjsGXLFkyfPh3a2tpo1qyZJGD0+fNntG7dGgEBAWjXrh02bNiAWbNmwczMTJzLLTk5Gb169cKyZcvQunVrbNy4EePGjcPp06fh5eWl0M35xo0bmDx5Mry9vbFmzRrUqFEDkyZNkszf8u7dO7Ro0QKnTp3CyJEjsX79etSuXRvTpk2TzJMUHx+Ptm3bYteuXfD29samTZvQpk0b+Pv7o0+fPml+LwkJCRgwYAA2bNiADRs2KMzPkdrx48dha2urUgNOHWnVw6z4+vWr0mH98t+hsuBhgwYNULZsWdjZ2WHw4MFK53UBvh+vL126hI8fP2ZbeXND7dq1cffuXbEOJyYm4sKFCyhYsKDkZtWZM2egra0NFxcXpfmkd+7fu3cvChYsCHd3d3G5/KZDZGQkfvvtN5w6dQpDhw7F5s2b0aFDByxduhQjR45U2M/atWsRFhaGiRMnIiAgIN2h4+rU1fSOmQsWLEBsbCxGjRqVYT4pFShQAN26dUNgYCAOHz6MmJgYPHv2DCNHjsQvv/yCTp06qZUfkLn2Sn6pq9OnT0eRIkUwbNgwjBs3Dt++fcO8efMQHByMnj17omjRoli+fDn8/Pzw8eNHtG3bFn///XduFxuRkZHo378/2rRpg3Xr1uG3337DokWLJPNqqnvuSC2ttsiPdPHiRVhZWeHgwYOoXbs2ypYtCwcHB8yYMQNfv35Vuk1iYiLi4uJw/fp1TJ48Gebm5vj1118zXQYXFxcIgoATJ05kOo+clpiYiJ49e8LV1RXr1q1Dhw4dsHr1aixfvlxMExISgnHjxok3m9auXQtvb2+xHnh4eGDMmDEAvv8u5MdVDw8PAN+HNTo4OGDmzJnYunUrfHx8cOXKFbRq1Upy/Xfy5En06dMHxYsXh7+/P8aPH489e/aIAaPUDh8+jE2bNmHo0KHYsmWLGKh99uwZunTpAn9/f6xevRpNmzbFhAkTsHDhQoU8bt68KQ5bW716NYoWLQpvb2/4+flh27ZtGDNmDJYuXYpPnz6he/fuGdb9ly9f4tatW2mem+TfeUb1LC4uDsOHD0efPn1QpUqVdPeZFnmb/cOHDwgJCcHOnTvRt29f8WZwYmKiOIx/5cqVqFmzJsqWLQtnZ2esWLFCEoi7ffs2ACgc6wsUKABLS0txvZyhoSEsLS2zrc2u9hxLX79+xZgxY9CtWzeEhobizZs3KFmyJBo3bgxTU9NsKVR+NXbsWNy/fx/r1q3DunXrUKBAAdjZ2aFhw4bo2bMnChcuLEkfHR2NkJAQ8WKwVq1aOHv2LIKDg8VgiqWlpRiJBr5fBNWrVw/Pnj3DunXrFH4wycnJ2LZtGwoWLAgAqFevHmrVqgU/Pz+xN5Svry+0tbVx4MABMUILfI9qplavXj1MmzZNfP/hwwf8+eefiIyMFC/SU06YJwgCHB0dYWVlBU9PT9y8eRM2NjYoX768ONeQg4ODSt9nREQEzMzMFL63rPj8+TPGjRsHmUyGDh06pJv248ePEAQBxYsXV1gnXyYP/AHfLzzs7OxgamqKjx8/Yv/+/Zg2bRpu3LghmVOobNmy2Lt3L3r37i35//Xu3VvpJO+2trbQ0NDA5cuX0ahRIzU/8c+na9euYqDowIEDSudNCQ8Px5YtWzBp0iTJvEM1a9ZE7dq1sWrVKowfPx4VKlTAL7/8Ah0dHYV65eDgAB0dHfzyyy8q17mUWrZsiQsXLuDPP/+Evb09Zs+eDUEQsGzZsgzvWISHh6NgwYIKFzdWVlY4c+YMXrx4IQkCyRu5KetTevbu3Yv+/fuL79u3b59hL6rExEQMHz4chQsXVjofVUo3b97E8uXL0bRpU9jY2Cist7W1xdKlSxEbG6u0l0leouxmyZMnT+Dk5CQJaiclJaFBgwbihKNTpkwB8H2ehzt37mDbtm2oU6eOmD5l42Tfvn04efIkVq9eLVluY2ODX3/9FTt37pQE4t+8eYPQ0FBUrlwZAODu7o6oqCgsXLgQ3bt3h56eHlatWoXXr19j//794nws9erVQ1JSEjZv3ow+ffrAwsICgYGBuHXrFlasWCF+1jp16qBw4cKYPn06Tp8+LSk38L0e9urVC0+fPkVQUJBYjvRERESoPHGtqjKqh5lVoUIFnD9/Hl++fJGcX+QTJ6f8HZqammL06NGwtbWFrq4url69iuXLl+P06dM4dOiQpNcT8P23kZycjIiICIUeP3lJ7dq1AXwPHHl5eeHKlSv4/Pkz+vfvL5mr5cyZM7C3t5fMX5FSeud+BwcHaGpqokSJEgrr5s2bh48fP+LkyZPisbJ27dooWLAgpk2bhj/++EMS7ClYsCC2bt0q9ghOj6p1Nb1j5vXr1+Hv748NGzagUKFCKvUeScnX1xe//PILvL29xR6G8p4FZmZmauUFqN9eAfJPXdXX14efnx+6du0K4PuE8KVLl8aff/4Ja2trBAQEiL1bGjRoABcXF0yfPj3b7uBnVnR0NNavXy+26+rWrYv4+Hhs2rQJ/fv3F3sHqnPuSC2ttsiP9Pr1a7x79w6TJk3CyJEjYWVlhbNnz2LZsmV4+fIlli5dKkkfGRkpmWOsWrVqCAwMzNK1QMmSJVG6dGlcunTpp5rIOyV5D0j5ebp27dr4559/EBwcjKFDhwL4fo4qVqyY5LpMfqwGvveEkR8/KlSooHBcTflgEEEQUKNGDbi4uKBmzZo4efKkWBf9/PxQunRpbN26VbzhUr9+faU9+4DvD5Y5fvy4wvFnwYIF4t/JycligG/t2rXw8fGRtP+jo6Oxb98+8ZxqZGSERo0aYevWrQgLC4Oenh4AQENDA7169cKZM2fSvSaSd6hIKxikaj2bO3cukpOT1ZofOLVly5aJ1/IaGhoYNGiQ5MFO79+/R0JCAs6ePYurV69i9OjRMDY2Fq8jP3z4IAYM5cfxtI71ykZmVKlSRenopcxQq8dSfHw89PT0EBISgjJlyqB3794YN24c+vbty6CSCgwMDBAcHIyDBw9i3LhxaNSoER4+fIiZM2eiQYMGCl0NbWxsJBeXBQsWhLm5ucKd0E2bNqFx48YwNzdHuXLlYGpqirNnz+LevXsKZWjatKkYVAK+9xBp2LAhLl68iKSkJMTFxeHChQto1qyZJKiUltQ/WnmENOXM+U+ePMGAAQNgb2+PsmXLwtTUVOx2q6yMqnr9+rXSrumZFR8fjz59+uD58+dYuXKlyiep9CaMTbluxowZaN++PZycnNC4cWMsWbIEPXv2RFBQEK5fvy6me/bsGbp37w59fX2sWrUKu3fvxoQJE7Bz506lk6sVKFAAxYoVyxdP4gK+9woYNWoU/vnnH4UJZOWOHTsGDQ0NeHp6SnqSGBoawsbGBufPn/8hZZ0yZQoqVKiAdu3a4fz581iyZAmMjIwy3O7NmzcoUaKEQt3p0qULChQogIEDB+LOnTt4//49NmzYIA4tUbVrd926dXHw4EHs3LkTo0ePxsGDByUXKKkJgoDhw4fj77//xqJFi9Lt2SSvnzKZDHPnzlWapmTJkkhOTkZkZKRK5f2ZLVq0CAcPHpS8tLW1kZiYiMWLF6NevXooX748ypUrh/Lly+PRo0eSHksnT56Eubm5QnAmpWPHjqFYsWJo2LChpD5XrlwZhoaGCvW5YsWKCsGcVq1aISYmRnzCU1hYGCpUqCBpGAHfn6IpCILY0ycsLAyFChVCs2bNFNIBUOg5+PTpU7Ro0QIxMTHYt2+fSkGljx8/Ii4uLluP16rUw8zq0aMHPn36hCFDhuDJkyd4+/Yt5syZIzZEU/4Ovby8MHjwYLi7u8PV1RUDBgxAQEAA3r17B39/f4W85d9BXn+Cbvny5VG2bFmxMXr69GlYW1ujTZs2ePr0KR4/foyEhAT8/fffkgub7HLs2DG4uLjAyMhI8puRP0kr9W+mYcOGKgWVVK2r6R0z5QGn5s2bSyZ0VseiRYuwYsUKDBs2DIGBgVi/fj0sLCzQsWNHSXtBXaq2V4D8U1eB78H36tWrw8zMDJ6ennjw4AFev34NT09Pye+5cOHCYo99dSdcz25FihRRaGO3atUKycnJ4sgFdc8dqaXVFvmRkpOT8fnzZ8yYMQM9evSAq6srRo8ejZ49eyI4OBiPHj2SpDcwMMDBgwexZ88ezJ07Fx8+fEDbtm3VepqzMiVLlvyp67qGhgYaNmwoWWZjYyO5JrS3t8fHjx/Rv39/hIaGqvRkspSioqIwevRo1KhRQ7yerFmzJoD/Xa/Fxsbin3/+QZMmTSQ97AsXLqxQPjlXV1elgY6zZ8+iffv2qFSpknh96Ofnh+joaERFRUnSVq5cWXKjxsrKCsD3npXyoBIAMUiaVq9hOXl9SetYr0o9u3LlCtasWYNZs2ZJyqCudu3a4eDBg9i6dSv69++PFStWYMKECeJ6eds9JiYGK1euRNu2beHm5oZZs2ahSZMmWL16tcIT39L6TStbXqJECURFRWVq+pbU1OqxVLBgQZQoUSJbe4j8F9nZ2Ynj7b99+4bp06eL3RlTViR9fX2FbXV1dSWPVl65ciWmTp2Krl27YuTIkTAwMICWlhbmzp2rNGij7ClnhoaG+Pr1K758+YIvX74gKSlJ4S5rWlKXUX6QkZfxy5cvaNOmDXR1dTFq1CiYm5tDT08PL1++RJ8+fVR+TLQy8fHxGT61TVUJCQno06cPLl26hA0bNqB69eoZblOsWDFoaGgo7UXy4cMHAMojxim1adMG69evR3h4OGxtbQF8D0DJh7/Je3s4OTnBwMAAw4YNg5eXF5ydnSX5pK4XeV3Lli2xYsUKzJkzR2n35qioKAiCkOa8FT8q0K2rq4vWrVtj2rRpqFKlSrrBg5Ti4+OVDrWxsrLCmjVrMHr0aPECSSaTYdKkSZgwYYLKTyMrXry4WPdcXV1hamoqNjSaNm0qSSsIAkaMGIGgoCAsXLgQjRs3TjPf58+fo23bttDW1saOHTuUHqMAiJ8tP9RJKysrpfXM19cXGzZsQP/+/eHs7CzOgTZixAjJ53737l2GQxDfvn2Ljx8/onz58krXp24cpnUcB/53tyo6Oloyl4qcPPCZMp2hoaHSi0ptbW2F49vVq1fx/v17jB49GjKZLN3PJSf/PrLrqbGq1sPMql27NubPn4+pU6eKvUYrVKiAkSNHYtasWRn+DqtVqwZzc3NEREQorMtPvw03NzecPHkSwPeeSbVr14a1tTVKlSqFM2fOwMzMDPHx8TkSWIqKisLRo0fTPNan/s2oEvAHVKurGR0z16xZg6dPn2LFihXiMLKYmBgx/48fP6JIkSJp9my9d+8e/Pz8MGHCBPz+++/i8vr166NevXqYMmUKdu3apdLnkctMeyU/1VXg++eRt1Hl34Oy4e9GRkZITk7Ghw8fsnSxmFXKLnhTH+fVPXekllZb5EfS19dHZGQk6tatK1nu7u6ONWvW4Nq1a5Jeetra2uI52dHREfXq1YOzszOWLVuGqVOnZrocP3s7Wk9PT9IxAPh+zZWyzF5eXkhKSsKWLVvEm4n29vYYNWpUhu3T5ORkdOzYEW/evIGPjw8qVaqEQoUKITk5Gc2bNxf38+HDBwiCoLR+pnVNpux3duXKFXTq1AnOzs6YM2cOjI2NoaOjg8OHD2Px4sUK/4vUxyf5bzmt5RnNEZnRsV6VejZ8+HA0bdoUdnZ24rFevt+YmBjo6Oik2Vs3JUNDQ/E7qlu3LooVK4YZM2agQ4cO4rBsDQ0NFClSRKGXWf369XH48GHcvXsX1apVE9tD0dHRCv+PDx8+KL0u1dXVhSAISEhIUDoPtDrU3rp58+YIDg7OF0NufgYFChTAsGHDxOES6goKChInWk0prYmc5XPPpBQZGQkdHR0ULlwYBQoUgJaWVrb1fgkLC8Pr16+xa9cuSTAkO8bsGxgYiA2irEhISEDv3r1x7tw5rFu3TuVGsJ6eHsqXL68wXhX4PgdHwYIFMwxwyMfFprxjduPGDVhZWSkMIZIf4O7cuaMQWPr48aPSx1/mVRoaGhg3bhw6duyodFJgAwMDaGhoIDg4ON05iXLa7du3MXfuXNjb2+Pq1atYuXKlZGheWgwMDMSeJam5u7vj77//xqNHj5CUlARzc3Oxx1Jm5xOT91p5+PChZLn8AmnHjh2YN2+e0gk85Z4/fw4vLy8IgoBdu3alG1SQ/y7zU51MLSgoCF5eXhg7dqxk+fv37yVzs5QoUSLD46mBgQH09fXTnAA79c2ctI7jwP+C/fLGemryu23y/42+vj6uXLkCQRAkwSX53avU/8MWLVqgVKlSmD17NpKTkyVDndMiL1N2HK/VqYdZ0a5dO7Rp0waPHj2CtrY2zMzMsGTJEmhoaKTZ3T+l1N+nXH76bbi5uWHbtm24cuUKrly5Ij68xdXVFadPn8bz589RuHBhlW7UqMvAwADW1taS4QIppQ4kqdojI6O6qsox8/bt2/j06ZPSR5fPnTsXc+fORWhoqHgzKbWbN28qvXFSoEAB2NjYSObZVFVm2iv5qa6mJv8/p3WM1NTUFC/AdHV1lc71o25vEHlQIPUFb1r5pO6xkbK88vKre+5ILb22yI9ibW2t9P+grH2sjEwmg5GRkUL7Rl0fPnxA2bJls5THz6B9+/Zo3749YmNjceHCBcybNw/du3fHmTNnlN5skrt9+zZu3ryJBQsWiD2WASj0GCtevDg0NDTSrZ+pKTv+hoSEoECBAti4caMkYJZ6cumcIj+uffjwQaUbD8rq2Z07d3Dnzh3J8G85FxcX2NjYiBOMq0P+UJIHDx7A1tYWenp6MDMzU9r2S/07qVSpEoDvx/WUw8ETExNx//59tGrVSiGPDx8+QFdXN1s6Dqk9eXeHDh1w4MAB9OrVC/v370d4eDgiIiIkL1IurW6a8p5Fqt5RS0lDQ0Mh2nrz5k2Eh4crTX/o0CFJFFjeM6ZmzZrQ0tKCnp4enJyccODAAbVPmulJfaEfEBCQZhpVux9bWloqTDapLnlPpbCwMKxatUrtbutNmzZFWFiYpMvl58+fcejQITRq1CjDyK/8rmPKhreRkRHu3r2r0K1R/j9N3Zvs9evXiI+Pz9bJa38GderUQZ06dbBgwQKF78LDwwOCIODVq1diD8CUr5ST1uXUXajY2Fj069cPZcuWRWBgIHr27ImZM2eqdAy0sLBAdHQ0Pn36pHS9hoYGzM3NYWVlhaSkJKxZswaVK1fOdGBJPrF7yruagiBg5MiR2LFjB2bPnq3wBImUXrx4Id4J27lzZ7qNE+D7cCl9ff1s61H4s0p9XDt27JhCV/r69evj4cOH6U5G7+HhgejoaCQlJSmtz6nnv7hz5w5u3LghWbZnzx4UKVJEnC/A1dUVd+/eVbho2LVrFzQ0NMSeOG5ubvjy5YtCY05+bFI2qauPjw98fX3h5+cnmeMvLTo6OjA1Nc3y8VrdephV2trasLKygpmZGT59+oQtW7agcePGGe43PDwcjx49UhpQefr0KYD/dePPy9zc3KChoYG5c+dCU1NTPD7Vrl0b586dw5kzZ1CrVq0Mh6Cld+5PfUdezsPDA3fu3IGpqanS34yqvTuV7S+tuqrqMXPgwIEIDAyUvOQT7Hbt2hWBgYHpzpMkbwumPpckJCTg+vXrKvcoT03d9kp+qqupWVhYoHTp0ggODpZMfBsbG4uDBw/CwcFB7K1UtmxZREVFSS7qvn79qvZTWuXHjdST/8ufmJja58+fFdbt2bNH8ltT99yRWkZtkR9B3itd3vtR7sSJE9DU1BQvstPy6NEjvHr1Ks1eW6pITEzEy5cv81VdL1SoENzd3TF48GB8/fpV7LyQemSJnDz4k/qaMvX1WqFChWBnZ4fDhw9LAq5fvnzBsWPHVC6fhoYGtLS0JD034+LisHv3bpXzyAr5b0PVdomyepb6OB8YGIi2bdsCANatWwc/P79MlU3eZk95nvj1118RExMjzvUod+LECRQuXFi8BqxevTqMjIwUJlI/cOAAvnz5ojBqAfh+rM+uuq92jyV5l98NGzZg48aNknXyO3Spn3JF33Xu3BnGxsbw8PCApaUlkpOTcePGDaxatQqFCxdG79691c7Tw8MDCxcuhJ+fH5ycnPDgwQMsXLgQ5cqVUzpWUlNTEx07dkTfvn2RnJyM5cuX4/Pnz5K5eyZPnozWrVujWbNmGDBgAMqXL4+oqCgcOXIEs2fPVqlbn1yNGjVQvHhxjBkzBsOGDYO2tjaCg4OVPt1KHmVdvnw56tevDy0tLVhbW6fZ+8TZ2Rnbt2/HgwcPYGFhIVl3/vx5cbLM5ORkPH/+XIwoOzs7i/NH9e3bFydOnMDgwYOhr68vCcgVLVpUEqzx8fFBYGAgLly4IN7V+P3337F79250794dI0aMgI6ODpYtW4aEhATJRG7yubU8PDxgYmKCT58+Yf/+/QgJCUG7du0k85R4e3ujV69e6NChA7y9vWFgYICIiAgsXboUFSpUUJhEU974TO/JBnnV+PHj0aRJE0RFRUme0ufo6IjOnTtj2LBh+Pfff1GrVi0UKlQIkZGR+Pvvv1GpUiVxwspKlSrh4MGD2LhxI6pWrQpNTU21Hv2cltGjR+PFixc4cOAAChUqhEmTJiE8PFwccpbeE4VcXFzg5+eHK1euKHT/njBhApydnaGvr4+nT59i7dq1ePXqlcLJ9tmzZ3ByckLbtm3FJ2hs3rwZf//9N+rUqQOZTIbY2Fj8/fffWLduHWrUqCEZsjFx4kRs27YNHTp0QKVKlSR1X1dXV7ybHhUVhbZt2yIyMhJ+fn6IioqS3KkyNjZW6DUSEREBZ2fnXJ23Iad5eHggMDAQlpaWsLa2xrVr1+Dv769w0eft7Y19+/ahV69eGDBgAKpVq4b4+HicP38eHh4ecHV1RcuWLREcHIyuXbuiT58+sLe3h7a2Nl69eoVz586hcePGksaAkZERevbsieHDh8PQ0BBBQUE4ffo0xo8fL14M9e3bF7t27UK3bt0wYsQIlClTBsePH8fGjRvRrVs38Zjp5eWFDRs2wMfHB8+ePUOlSpVw6dIlLFmyBO7u7ml2n+/Tpw8KFy6MUaNG4cuXL5g2bVq6/29nZ2eFCwc5+bFZfiH777//infO5HM/qVsP5b2KLl68KC57/vw5rl69CuB/jUn5vuVPdJPva+XKlXB0dEThwoVx//59+Pv7Q1NTE9OnT5eU3cPDA56enrC0tBQn716xYgUMDQ0lE+jLRUREQF9fX+nTufKakiVLolKlSjh16hRcXFzEule7dm18+PABHz58wOTJkzPMJ71zv7W1Nc6f/7/27jws6nLv4/hnxAVUTFHZJNDjSikqqEnh9qhZVpZpmUtiLmkdV9JScUNzK5c0S7MSVCQ1lzrlMVHR6Eh1ih4rdyq1TTPRBAQ3nOcPHybHQZ0ZBhiG9+u6uK68f9sX+zgM37l/9+9zJSYmysfHR5UqVVK9evU0duxYJScn69FHH9XAgQNVt25dXbx4Ub/88ouSkpI0Z84cu2ez3Syr1r5m1qtXz+IX+rwFU2vXrm3xs/rGrLZq1UrNmjXTggULlJOTo3vuuUeZmZlasWKFfv75Zy1evNjseGvf71j7fiWPK2X1RmXKlNGkSZM0fPhw9e/fX08//bQuXryoZcuWKSMjQxMnTjTt261bN82bN0/PPfecnnvuOV28eFErVqy46ZqFN9OsWTPVrVtXM2bMUG5uru644w5t3brV4hfFPNWqVdOECRP022+/6R//+Id27typNWvWqH///qbbq2392XGjW70X+fbbb025zczMlNFoNOWqWbNmZg12a17DpWuL7i9YsEDvv/++6d9Br169FB8fr4kTJ+rMmTOmxbvj4uIUGRlpus6BAwc0bdo0PfTQQwoKClKZMmV08OBBvf3226pWrZrZbaOS9f8upGvNvpycnBL/PnrcuHFyd3dXixYt5OPjo1OnTmnJkiWqUqWKqUGX93q7Zs0aVa5cWRUqVNCdd96pevXqqXbt2po1a5Zpof/t27crOTnZ4jpjx45V//791adPHw0ePFi5ublaunSpKlWqZPXM5I4dO2r58uX65z//qX79+uns2bNatmxZkd1x0Lx5c7m7uys1NdXsLixbcpZfXvLWNWvZsqXZbM+UlBQ98cQTioqKMr3ezps3T3/++adat24tX19fZWRkaNeuXUpISNDDDz+skJAQ0/HDhg3T5s2bNWzYMI0bN05+fn7asmWLEhMTNXnyZNPPXzc3N0VHR2vkyJF68cUX9dhjj+no0aOaOXOm2rZta/E75NWrV7V3797bPrDKWjY3lmJjYx1y4dJo5MiRSkxM1Ntvv61Tp07p0qVL8vb2VkREhEaMGGFXt3DkyJHKycnRe++9p6VLl6p+/fqaM2eOtm7dmu+ifc8884wuXryoyZMnKz09XQ0aNNCqVavUsmVL0z533323tmzZYvo0+vz586pZs6buu+8+qxa/vJ6Xl5dWrlyp6dOna8SIEapYsaK6dOmiZcuWWaxL0L17d3399ddauXKlFi5cKKPRaNbEuVGXLl1UqVIlJSYm6rnnnjPbNn/+fLPv//PPPzf9+fofaHnd9cWLF1u8WQsPDzdbx+D8+fNyd3dXlSpVTGPVq1fXpk2bNGPGDI0ePVpXrlxRWFiYNmzYYPbGMjAwUBkZGZozZ47Onj2rsmXLqmHDhpo1a5bpSSV57r//fq1bt05vvPGGpk6dqoyMDPn7+6tfv34aPny4xYvuJ598ouDgYJd889e4cWM99thj2rx5s8W2V155RWFhYVq9erVWrlypq1evytfXVy1atDBbsHjQoEE6fPiw5s6dq4yMDBmNxtsu6nc7CQkJ2rRpkxYsWGBqeJUvX15Lly7VAw88oKioKL377rs3Pb5ly5a68847tW3bNos3c7///rsmT56sM2fOqFq1amrfvr1iY2MtZknkzeK6fqZjo0aNtGPHDs2ZM0dnzpyRm5ub6tSpoxEjRmjo0KFmn0jnTc9du3at6YmQeQICAky/5Bw5csT0S/iIESMsvpfrf0hK1x5Xe/DgQUVFRd30+3cF06dPV7ly5bRkyRKdP39eTZo00TvvvGPx9L3KlStr8+bNmj9/vtasWaOFCxfqjjvuUNOmTdW3b19J194IxMbG6p133tHGjRu1ZMkSubm5yc/PT61btza9Ecxz9913q1evXpo/f76OHj0qHx8fTZ06Vc8++6xpn+rVq+tf//qXZs+erdmzZysrK0uBgYGaNGmS2X7u7u56//33NXfuXC1btkzp6eny9fXV0KFDb/v/sHfv3qpYsaJGjhyp7OxszZs376a3LXTv3l1r167V3r17LT6BvvH20bi4OMXFxUn6ewFOW3OYnZ1t8Qn2nj17LL6nvGtf36B1c3PT/v37tW7dOmVkZMjb21tdunTRmDFjLG4LatCggeLj43Xq1CldvnxZPj4+6tatm8aMGWMxC9loNCoxMVHdu3d3maZrRESEDh48aHYLea1atVSnTh0dPXrUqlvLb/WzPyYmRtHR0Xr++eeVk5Nj+rns4+OjrVu36rXXXtOyZct04sQJVapUSYGBgWrfvv1t1ze8XT35ZdXa10xb3ZjVMmXKmN7Tffzxx1q2bJkqVaqk+vXra/Xq1ab19/JY+37H2vcrkmtm9Ubdu3dXxYoV9frrr+u5555TmTJlFBoaqvXr15u9Jw4MDNSKFSs0Z84cPfvss/Lx8dGzzz6r9PR0LViwwOrrubm5KS4uTpMmTdL48eNVvnx5Pfroo3r55ZfNnsaVx9vbWzNnztSMGTN06NAhVa1aVSNGjDD7INjWnx03utV7kdjYWItZD3mvlwsWLDCbsWfNa7h07X2LwWAwW3OnXLlyeu+99zRnzhy9/vrrplvS8h4OladmzZry8fHR8uXL9ccff5jWg+3UqZNGjBhhsZahtf8upGvvo728vCz+DkqaVq1aaf369froo49MS2S0bNlSixYtMjXSAgMDFRMTo3fffdc0Azjv/2dcXJymTJmil156SWXLllVERITWrl1rWsA7T4cOHfT222+bGq41a9ZUZGSk/vjjD6tnHEVERGjBggV64403NGDAAPn6+qpPnz6qUaNGgZ6wZq3y5cvroYceUmJiotmSBrbmzFp579mvz35ISIhWrFihbdu26ezZs6pQoYIaNGigadOmWbwmVKtWTZs3bza9JmRnZ6tu3boW/xYlqUePHnJzc9OSJUv0/vvvq2rVqurZs2e+t46npKQoIyMj3ye/28UIu6WmpholGVNTU4u7lNv6+eefjf7+/salS5cWdykOFR0dbWzXrp3x6tWrhX6tpk2bGqdPn17o17FFRkaGsV69esb4+HibjrtVdktSrkuypUuXGu+66y5jdna2XcfHxsYa69WrZzx16pSDKyuYuXPnGlu2bGm8fPlykV+bXDu3jh07Gl966aVCv87hw4eN/v7+xu3btxf6tWyRnJxsDAgIMKalpdl0HLkuemTVvqzaglw7h4K+F7FF165djUOGDCn069jiypUrxnvuucc4e/Zsh5yvtOb60qVLxvbt2xufeuqp4i7Fanv37jX6+/sXyf+PGTNmGMPCwow5OTmFfi1bDB8+3NitW7fb7mdtdm1eYwlwJqNGjdLJkye1ZcuWQr3O4cOHlZOTo3/+85+Feh1bvf3226pVq9Yt18eBcxowYIA8PT0tbim2VkpKigYOHOhU6xidO3dOK1eu1Pjx4wv8ZAm4nujoaL3//vv6/fffC/U6KSkpCgsLU6dOnQr1OrZatGiRnnrqqduue4LiR1bJamlR0Pci1srMzNSBAwc0bty4Qr2OrTZu3Kjz589b3PmAW3vhhRf04Ycf6vPPP9eHH36o3r17Ky0trUT9PTZt2lSPPPKIabZyYUpJSdHo0aMtnuxXnI4dO6aPPvpI0dHRDjsn7/xRotWsWVOvv/66Q54ydysNGza066l9ha1y5cpauHAhv8SXQO7u7lq8eLH27dtn1/HLly93cEUF98svv2j48OHq3r17cZcCJ9ShQwdNmjRJv/zyS6E9zU269ovSgAED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\n", - "text/plain": [ - "<Figure size 1400x300 with 12 Axes>" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "<ggplot: (323781768)>" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "vendor_maxes = reports_per_month_with_prop.groupby('vendor_cat')['count'].max()\n", - "\n", - "def label_func(vendor):\n", - " if vendor == 'Apple':\n", - " return vendor + ' (max={:,})'.format(int(vendor_maxes.loc[vendor]))\n", - " else:\n", - " return vendor + ' ({:,})'.format(int(vendor_maxes.loc[vendor]))\n", - "\n", - "plt = ggplot(reports_per_month_with_prop) +\\\n", - " theme_classic(base_size=12, base_family='sans-serif') +\\\n", - " theme(figure_size=(14, 3),\n", - " axis_text_y=element_text(margin={'r': 5}),\n", - " panel_grid_minor_x=element_line(size=0.7, color=\"gainsboro\"),\n", - " panel_grid_major_x=element_blank(),\n", - " text=element_text(size=12),\n", - " legend_box_spacing=0.01,\n", - " legend_box_margin=0,\n", - " legend_margin=0,\n", - " legend_key=element_blank(),\n", - " legend_entry_spacing=5,\n", - " legend_background=element_rect(fill=(0,0,0,0), color=(0,0,0,0)),\n", - " legend_position='top',) +\\\n", - " facet_wrap(facets='vendor_cat', nrow=2, labeller=label_func) +\\\n", - " geom_bar(aes(x='month', y='prop', fill='year'), stat='identity', position='dodge') +\\\n", - " scale_fill_manual(['#0280c9', '#78d8da']) +\\\n", - " guides(fill=guide_legend(title='')) +\\\n", - " xlab('Month') +\\\n", - " ylab('Normalized reports/month')\n", - "\n", - "plt.save('plots/covid_comparison.pdf', limitsize=False)\n", - "plt" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.5" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/datasets/Talluri2021/other notebooks/8.analyze experiment results.ipynb b/datasets/Talluri2021/other notebooks/8.analyze experiment results.ipynb deleted file mode 100644 index 59abcd6..0000000 --- a/datasets/Talluri2021/other notebooks/8.analyze experiment results.ipynb +++ /dev/null @@ -1,504 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "import pandas as pd\n", - "from plotnine import *" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "# results_df = pd.read_csv('structures_experiment_results_1.csv')\n", - "results_df = pd.read_csv('./experiment_results/long_chain_results_sin1.csv')" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [], - "source": [ - "results_df['cat_retries'] = pd.Categorical(results_df['retries']).rename_categories({100: 'Fail'})\n", - "# results_df['fraction'] = results_df['reqs'] / (365*24*60*60)\n", - "results_df['fraction'] = results_df['reqs'] / (365*24*60*60/2) # For sin stuff\n", - "min_max_per_exp = results_df.groupby(['vendor', 'experiment', 'cat_retries'])['fraction'].agg(['min', 'max', 'mean']).reset_index().fillna(0)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>Unnamed: 0</th>\n", - " <th>vendor</th>\n", - " <th>reqs</th>\n", - " <th>retries</th>\n", - " <th>iteration</th>\n", - " <th>experiment</th>\n", - " <th>cat_retries</th>\n", - " <th>fraction</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>0</th>\n", - " <td>0</td>\n", - " <td>uniform</td>\n", - " <td>1.499495e+07</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>0</td>\n", - " <td>9.509732e-01</td>\n", - " </tr>\n", - " <tr>\n", - " <th>1</th>\n", - " <td>1</td>\n", - " <td>uniform</td>\n", - " <td>7.501410e+05</td>\n", - " <td>1</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>1</td>\n", - " <td>4.757363e-02</td>\n", - " </tr>\n", - " <tr>\n", - " <th>2</th>\n", - " <td>2</td>\n", - " <td>uniform</td>\n", - " <td>2.239900e+04</td>\n", - " <td>2</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>2</td>\n", - " <td>1.420535e-03</td>\n", - " </tr>\n", - " <tr>\n", - " <th>3</th>\n", - " <td>3</td>\n", - " <td>uniform</td>\n", - " <td>4.870000e+02</td>\n", - " <td>3</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>3</td>\n", - " <td>3.088534e-05</td>\n", - " </tr>\n", - " <tr>\n", - " <th>4</th>\n", - " <td>4</td>\n", - " <td>uniform</td>\n", - " <td>1.100000e+01</td>\n", - " <td>4</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>4</td>\n", - " <td>6.976154e-07</td>\n", - " </tr>\n", - " <tr>\n", - " <th>5</th>\n", - " <td>5</td>\n", - " <td>uniform</td>\n", - " <td>1.000000e+00</td>\n", - " <td>5</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>5</td>\n", - " <td>6.341958e-08</td>\n", - " </tr>\n", - " <tr>\n", - " <th>6</th>\n", - " <td>6</td>\n", - " <td>uniform</td>\n", - " <td>1.608636e+01</td>\n", - " <td>100</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>Fail</td>\n", - " <td>1.020190e-06</td>\n", - " </tr>\n", - " <tr>\n", - " <th>7</th>\n", - " <td>0</td>\n", - " <td>instagram</td>\n", - " <td>1.565882e+07</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>0</td>\n", - " <td>9.930757e-01</td>\n", - " </tr>\n", - " <tr>\n", - " <th>8</th>\n", - " <td>1</td>\n", - " <td>instagram</td>\n", - " <td>1.052420e+05</td>\n", - " <td>1</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>1</td>\n", - " <td>6.674404e-03</td>\n", - " </tr>\n", - " <tr>\n", - " <th>9</th>\n", - " <td>2</td>\n", - " <td>instagram</td>\n", - " <td>1.953000e+03</td>\n", - " <td>2</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>2</td>\n", - " <td>1.238584e-04</td>\n", - " </tr>\n", - " <tr>\n", - " <th>10</th>\n", - " <td>3</td>\n", - " <td>instagram</td>\n", - " <td>3.320000e+02</td>\n", - " <td>3</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>3</td>\n", - " <td>2.105530e-05</td>\n", - " </tr>\n", - " <tr>\n", - " <th>11</th>\n", - " <td>4</td>\n", - " <td>instagram</td>\n", - " <td>1.656685e+03</td>\n", - " <td>100</td>\n", - " <td>0</td>\n", - " <td>deep chain</td>\n", - " <td>Fail</td>\n", - " <td>1.050663e-04</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " Unnamed: 0 vendor reqs retries iteration experiment \\\n", - "0 0 uniform 1.499495e+07 0 0 deep chain \n", - "1 1 uniform 7.501410e+05 1 0 deep chain \n", - "2 2 uniform 2.239900e+04 2 0 deep chain \n", - "3 3 uniform 4.870000e+02 3 0 deep chain \n", - "4 4 uniform 1.100000e+01 4 0 deep chain \n", - "5 5 uniform 1.000000e+00 5 0 deep chain \n", - "6 6 uniform 1.608636e+01 100 0 deep chain \n", - "7 0 instagram 1.565882e+07 0 0 deep chain \n", - "8 1 instagram 1.052420e+05 1 0 deep chain \n", - "9 2 instagram 1.953000e+03 2 0 deep chain \n", - "10 3 instagram 3.320000e+02 3 0 deep chain \n", - "11 4 instagram 1.656685e+03 100 0 deep chain \n", - "\n", - " cat_retries fraction \n", - "0 0 9.509732e-01 \n", - "1 1 4.757363e-02 \n", - "2 2 1.420535e-03 \n", - "3 3 3.088534e-05 \n", - "4 4 6.976154e-07 \n", - "5 5 6.341958e-08 \n", - "6 Fail 1.020190e-06 \n", - "7 0 9.930757e-01 \n", - "8 1 6.674404e-03 \n", - "9 2 1.238584e-04 \n", - "10 3 2.105530e-05 \n", - "11 Fail 1.050663e-04 " - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "results_df" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/home/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:719: PlotnineWarning: Saving 6.4 x 4.8 in image.\n", - "/home/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:722: PlotnineWarning: Filename: deep chain comparison.png\n", - "/home/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/pandas/core/series.py:726: RuntimeWarning: divide by zero encountered in log10\n", - "/home/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:719: PlotnineWarning: Saving 6.4 x 4.8 in image.\n", - "/home/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/plotnine/ggplot.py:722: PlotnineWarning: Filename: deep chain comparison.pdf\n", - "/home/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/pandas/core/series.py:726: RuntimeWarning: divide by zero encountered in log10\n", - "/home/sacheendra/miniconda3/envs/thesis/lib/python3.8/site-packages/pandas/core/series.py:726: RuntimeWarning: divide by zero encountered in log10\n" - ] - }, - { - "data": { - "image/png": "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GzeuhMMtuzhnq3RiTsSYEzHmRIw5EWNOxKSeE23nbOl0N+J3332HJUuWYOLEifjtt980TmZnZ4fevXtjx44duhyaiIiIqEzRaWRrzZo1GDJkCL799lvEx8eL9jds2BAHDx585eCMCedslU7MiRhzIsaciDEnYsyJmNRzotd1th49egRvb+8i91tZWSElJUWXQxMRERGVKToVWy4uLnj06FGR+y9cuIBq1arpHBQRERFRWaHT2Fzv3r2xcuVKDB06FHZ2dgD+P5R2+PBhBAcH44svvii5KI0AJ8iXTsyJGHMixpyIMSdizImY1HOi1wnyM2fORKVKlfDmm29iyJAhkMlkCAoKQqtWrdClSxc0bNgQkydP1uXQRERERGWKzivI//7771i4cCG2b98Oc3NznDx5EjVr1sT06dPx+eefw8LCoqRjLdM4Qb50Yk7EmBMx5kSMORFjTsSknhO9LWqalZWF1atX480338SUKVMwZcqUYgdHREREZCyKfRnR3NwcX375JSIjI/URDxEREVGZotOcLS8vL9y/f7+EQyEiIiIqe3QqtubMmYNVq1bhyJEjJR0PERERUZmi06yzpUuXwtHREZ06dYK7uzvc3d1FE+JlMhn27NlTIkEaAy79UDoxJ2LMiRhzIsaciDEnYlLPibZLP+hUbF25cgUymQzVqlWDUqnEnTt3RH20naFPREREVJbpVGxxvlbJ49IPpRNzIsaciDEnYsyJGHMiJvWc6PXZiERERESkHemWiwaQm5uL5cuX4/Lly0hPT0fVqlUxbNgw1K1b19ChERERUSnFYutflEolKlSogKCgIDg5OeHMmTOYPXs21q5dyxXxiYqgTE2BKidHva1KSkSuuZl6W25qCoWNrSFCIyKSBBZb/2Jubo7+/furt99++2389NNPiI2NRa1atQwYGZE0KVNTED1mBPCfO3Ie/HtDJoP7D6tYcBGR0ZJksZWZmYldu3YhMjISUVFRSEtLw9ixY9G+fXtR39zcXGzevBknTpxAWloa3NzcMHDgQDRq1OiV4/j777+RmpqKSpUqAQDi4+OxbNkyXL9+HeXLl0dAQACaN2+u8ZqzZ89ixYoVWLlyJaysrF45BiIpU+XkiAotEUGAKicHitcTEhGR5Gg1Qb537944ffq0evvUqVN49uyZ3oJKSUlBWFgYYmJi4O7u/sK+ixcvxp49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\n", - "text/plain": [ - "<Figure size 640x480 with 1 Axes>" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "<ggplot: (8794108912409)>" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "experiment = 'deep chain'\n", - "specific_min_max = min_max_per_exp[(min_max_per_exp['experiment'] == experiment)]\n", - "plt = ggplot(specific_min_max) +\\\n", - " theme_light(base_size=12, base_family='sans-serif') +\\\n", - " theme(text=element_text(size=12), legend_position=(0.3, 0.25)) +\\\n", - " geom_point(aes(x='cat_retries', y='mean', color='vendor', group='vendor'), size=3, shape='s') +\\\n", - " scale_y_log10(limits=[1, 1e-8], breaks = [0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001, 0.0000001, 0.4e-8],\n", - " labels=['10%', '1%', '0.1%', '$10^{-2}$%', '$10^{-3}$%', '$10^{-4}$%', '$10^{-5}$%', '0']) +\\\n", - " guides(color=guide_legend(title='Workload'), fill=guide_legend(title='Workload')) +\\\n", - " scale_color_discrete(labels=['Instagram trace', 'Constant']) +\\\n", - " xlab('Number of retries')+\\\n", - " ylab('Fraction of requests')\n", - "\n", - "plt.save(f'{experiment} comparison.png', dpi=300)\n", - "plt.save(f'{experiment} comparison.pdf')\n", - "plt" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [], - "source": [ - "# experiment = 'monolith'\n", - "# specific_min_max = min_max_per_exp[(min_max_per_exp['experiment'] == experiment)]\n", - "# plt = ggplot(specific_min_max) +\\\n", - "# theme_light(base_size=12, base_family='sans-serif') +\\\n", - "# theme(text=element_text(size=12)) +\\\n", - "# geom_line(aes(x='cat_retries', y='mean', color='vendor', group='vendor')) +\\\n", - "# scale_y_log10(breaks = [0.01, 0.0001, 0.000001, 1e-8], labels=['1%', '0.01%', '$10^{-4}$%', '$10^{-6}$%']) +\\\n", - "# guides(color=guide_legend(title='Workload'), fill=guide_legend(title='Workload')) +\\\n", - "# scale_color_discrete(labels=['Instagram trace', 'Constant']) +\\\n", - "# scale_fill_discrete(labels=['Instagram trace', 'Constant']) +\\\n", - "# xlab('Number of retries')+\\\n", - "# ylab('Fraction of requests')\n", - "\n", - "# plt.save(f'{experiment} comparison.png', dpi=300)\n", - "# plt" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [], - "source": [ - "# experiment = 'fanout'\n", - "# specific_min_max = min_max_per_exp[(min_max_per_exp['experiment'] == experiment)]\n", - "# plt = ggplot(specific_min_max) +\\\n", - "# theme_light(base_size=12, base_family='sans-serif') +\\\n", - "# theme(text=element_text(size=12)) +\\\n", - "# geom_line(aes(x='cat_retries', y='mean', color='vendor', group='vendor')) +\\\n", - "# geom_ribbon(aes(x='cat_retries', ymin='min', ymax='max', fill='vendor', group='vendor'), alpha=0.5) +\\\n", - "# scale_y_log10(breaks = [0.01, 0.0001, 0.000001], labels=['1%', '0.01%', '0.0001%']) +\\\n", - "# guides(color=guide_legend(title='Workload'), fill=guide_legend(title='Workload')) +\\\n", - "# scale_color_discrete(labels=['Instagram trace', 'Constant']) +\\\n", - "# scale_fill_discrete(labels=['Instagram trace', 'Constant']) +\\\n", - "# xlab('Number of retries')+\\\n", - "# ylab('Fraction of requests')\n", - "\n", - "# plt.save(f'{experiment} comparison.png', dpi=300)\n", - "# plt" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": {}, - "outputs": [], - "source": [ - "# const_results_df = pd.read_csv('const_experiment_results_1.csv')\n", - "# const_results_df['cat_retries'] = pd.Categorical(const_results_df['retries']).rename_categories({100: 'Fail'})\n", - "# const_results_df['cat_prob'] = pd.Categorical(const_results_df['prob']).rename_categories({100: 'Fail'})\n", - "# const_results_df['fraction'] = const_results_df['reqs'] / (365*24*60*60)\n", - "# const_results_df.columns" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [], - "source": [ - "# experiment = 'deep chain'\n", - "# specific_const_results = const_results_df[(const_results_df['experiment'] == experiment)]\n", - "# plt = ggplot(specific_const_results) +\\\n", - "# theme_light(base_size=12, base_family='sans-serif') +\\\n", - "# theme(text=element_text(size=12)) +\\\n", - "# geom_line(aes(x='cat_retries', y='fraction', color='cat_prob', group='cat_prob')) +\\\n", - "# scale_y_log10(limits=[1, 1e-6], breaks = [0.01, 0.0001, 0.000001, 1e-8], labels=['1%', '0.01%', '$10^{-4}$%', '$10^{-6}$%']) +\\\n", - "# guides(color=guide_legend(title='Workload'), fill=guide_legend(title='Workload')) +\\\n", - "# xlab('Number of retries')+\\\n", - "# ylab('Fraction of requests')\n", - "\n", - "# plt.save(f'const comparison.png', dpi=300)\n", - "# plt" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [], - "source": [ - "# experiment = 'deep chain'\n", - "# specific_const_results = const_results_df[(const_results_df['experiment'] == experiment) & (const_results_df['cat_prob'] == 0.01)]\n", - "# plt = ggplot(specific_const_results) +\\\n", - "# theme_light(base_size=12, base_family='sans-serif') +\\\n", - "# theme(text=element_text(size=12), axis_text_y=element_text(size=35)) +\\\n", - "# geom_point(aes(x='cat_retries', y='fraction', group='cat_prob'), size=3, shape='s') +\\\n", - "# scale_y_log10(limits=[1, 1e-6], breaks = [0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001],\n", - "# labels=['10%', '', '0.1%', '', '$10^{-3}$%', '']) +\\\n", - "# xlab('')+\\\n", - "# ylab('')\n", - "\n", - "# plt.save(f'low const.png', dpi=300)\n", - "# plt.save(f'low const.pdf')\n", - "# plt" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": {}, - "outputs": [], - "source": [ - "# experiment = 'deep chain'\n", - "# specific_const_results = const_results_df[(const_results_df['experiment'] == experiment) & (const_results_df['cat_prob'] == 0.25)]\n", - "# plt = ggplot(specific_const_results) +\\\n", - "# theme_light(base_size=12, base_family='sans-serif') +\\\n", - "# theme(text=element_text(size=12)) +\\\n", - "# geom_point(aes(x='cat_retries', y='fraction', group='cat_prob'), size=3, shape='s') +\\\n", - "# scale_y_log10(limits=[1, 1e-6], breaks = [0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001],\n", - "# labels=['', '', '', '', '', '']) +\\\n", - "# xlab('')+\\\n", - "# ylab('')\n", - "\n", - "# plt.save(f'25 const.png', dpi=300)\n", - "# plt.save(f'25 const.pdf')\n", - "# plt" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": {}, - "outputs": [], - "source": [ - "# experiment = 'deep chain'\n", - "# specific_const_results = const_results_df[(const_results_df['experiment'] == experiment) & (const_results_df['cat_prob'] == 0.5)]\n", - "# plt = ggplot(specific_const_results) +\\\n", - "# theme_light(base_size=12, base_family='sans-serif') +\\\n", - "# theme(text=element_text(size=12)) +\\\n", - "# geom_point(aes(x='cat_retries', y='fraction', group='cat_prob'), size=3, shape='s') +\\\n", - "# scale_y_log10(limits=[1, 1e-6], breaks = [0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001],\n", - "# labels=['', '', '', '', '', '']) +\\\n", - "# xlab('')+\\\n", - "# ylab('')\n", - "\n", - "# plt.save(f'50 const.png', dpi=300)\n", - "# plt.save(f'50 const.pdf')\n", - "# plt" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": {}, - "outputs": [], - "source": [ - "# experiment = 'deep chain'\n", - "# specific_const_results = const_results_df[(const_results_df['experiment'] == experiment) & (const_results_df['cat_prob'] == 0.75)]\n", - "# plt = ggplot(specific_const_results) +\\\n", - "# theme_light(base_size=12, base_family='sans-serif') +\\\n", - "# theme(text=element_text(size=12)) +\\\n", - "# geom_point(aes(x='cat_retries', y='fraction', group='cat_prob'), size=3, shape='s') +\\\n", - "# scale_y_log10(limits=[1, 1e-6], breaks = [0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001],\n", - "# labels=['', '', '', '', '', '']) +\\\n", - "# xlab('')+\\\n", - "# ylab('')\n", - "\n", - "# plt.save(f'75 const.png', dpi=300)\n", - "# plt" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": {}, - "outputs": [], - "source": [ - "# print(pd.pivot_table(min_max_per_exp[['vendor', 'experiment', 'cat_retries', 'mean']], values='mean', index=['vendor', 'experiment'], columns=['cat_retries']).to_latex(float_format=\"{:0.2e}\".format))" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.1" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} |
