{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import re\n", "import pandas as pd\n", "import numpy as np\n", "import statsmodels.api as sm # for datasets\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "# Hide Numpy warnings from Statsmodels\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", "\n", "# Sequence of Appelpy imports\n", "from appelpy.eda import statistical_moments\n", "from appelpy.utils import DummyEncoder\n", "from appelpy.linear_model import OLS\n", "from appelpy.diagnostics import heteroskedasticity_test" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This notebook shows how to make a simple **model pipeline** with Appelpy, using the [Cars93 dataset](https://stat.ethz.ch/R-manual/R-devel/library/MASS/html/Cars93.html).\n", "\n", "There is data available about 93 cars. One variable of interest to model is the price of the cars.\n", "\n", "It can be particularly challenging to fit models with many **categorical variables**. If you fit models on data that come from a database, where categories of a variable may shift over time, then model pipelines can help to make the modelling process more robust and easier to maintain.\n", "\n", "**Notebook workflow:**\n", "- Load data\n", "- Explore data\n", "- Transform data (set up functions for transforming the raw data)\n", " - Column renaming\n", " - Dummy column encoding\n", " - Log variables\n", "- Fit model\n", " - Initial model: set up a basic `ModelPipeline` and fit `model1` using it. Run model diagnostics.\n", " - Second model: fit `model2` with the pipeline. Run model diagnostics.\n", " - Second model with different base levels for categorical variables." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Load data" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "df_raw = sm.datasets.get_rdataset('Cars93', 'MASS').data" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(93, 27)" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_raw.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Explore data" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
meanvarskewkurtosis
Min.Price17.125876.4931.163820.9016
Price19.509793.30461.508243.18369
Max.Price21.8989121.6712.000916.9816
MPG.city22.365631.58231.676823.72841
MPG.highway29.08628.42731.209972.41192
EngineSize2.667741.076120.8454940.297016
Horsepower143.8282743.080.9363080.98822
RPM5280.65356089-0.254344-0.451623
Rev.per.mile2332.22465190.2769840.145034
Fuel.tank.capacity16.664510.75430.1063940.0566398
Passengers5.086021.079480.0615040.822782
Length183.204213.23-0.08863490.361628
Wheelbase103.94646.50790.111884-0.819052
Width69.376314.28070.25975-0.297207
Turn.circle38.95710.3894-0.131405-0.757256
Rear.seat.room27.82978.934550.07696360.781057
Luggage.room13.89028.98780.2253450.444448
Weight3072.9347978-0.141341-0.873658
\n", "
" ], "text/plain": [ " mean var skew kurtosis\n", "Min.Price 17.1258 76.493 1.16382 0.9016\n", "Price 19.5097 93.3046 1.50824 3.18369\n", "Max.Price 21.8989 121.671 2.00091 6.9816\n", "MPG.city 22.3656 31.5823 1.67682 3.72841\n", "MPG.highway 29.086 28.4273 1.20997 2.41192\n", "EngineSize 2.66774 1.07612 0.845494 0.297016\n", "Horsepower 143.828 2743.08 0.936308 0.98822\n", "RPM 5280.65 356089 -0.254344 -0.451623\n", "Rev.per.mile 2332.2 246519 0.276984 0.145034\n", "Fuel.tank.capacity 16.6645 10.7543 0.106394 0.0566398\n", "Passengers 5.08602 1.07948 0.061504 0.822782\n", "Length 183.204 213.23 -0.0886349 0.361628\n", "Wheelbase 103.946 46.5079 0.111884 -0.819052\n", "Width 69.3763 14.2807 0.25975 -0.297207\n", "Turn.circle 38.957 10.3894 -0.131405 -0.757256\n", "Rear.seat.room 27.8297 8.93455 0.0769636 0.781057\n", "Luggage.room 13.8902 8.9878 0.225345 0.444448\n", "Weight 3072.9 347978 -0.141341 -0.873658" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "statistical_moments(df_raw)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Exploratory data analysis and causal reasoning are not the focus of this notebook.\n", "\n", "We are interested in **modelling the `Price` of cars based on these independent variables:**\n", "- `Type` (categorical variable)\n", "- `MPG.city` (continuous variable)\n", "- `Airbags` (categorical variable)\n", "- `Origin` (categorical variable)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Transform data" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Rename columns" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The source dataset has columns in camel case. As we're using Python let's get it closer to **snake case**." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "def _rename_columns(df):\n", " \"Make column names lowercase and more like snake-case.\"\n", " return (df\n", " .rename(columns=lambda x: re.sub(\"[ ,.,-]\", '_', x))\n", " .rename(columns=str.lower))" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['Manufacturer', 'Model', 'Type', 'Min.Price', 'Price', 'Max.Price',\n", " 'MPG.city', 'MPG.highway', 'AirBags', 'DriveTrain', 'Cylinders',\n", " 'EngineSize', 'Horsepower', 'RPM', 'Rev.per.mile', 'Man.trans.avail',\n", " 'Fuel.tank.capacity', 'Passengers', 'Length', 'Wheelbase', 'Width',\n", " 'Turn.circle', 'Rear.seat.room', 'Luggage.room', 'Weight', 'Origin',\n", " 'Make'],\n", " dtype='object')" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_raw.columns" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "df_raw = df_raw.pipe(_rename_columns)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Clean the column names by using the `rename_columns` method." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['manufacturer', 'model', 'type', 'min_price', 'price', 'max_price',\n", " 'mpg_city', 'mpg_highway', 'airbags', 'drivetrain', 'cylinders',\n", " 'enginesize', 'horsepower', 'rpm', 'rev_per_mile', 'man_trans_avail',\n", " 'fuel_tank_capacity', 'passengers', 'length', 'wheelbase', 'width',\n", " 'turn_circle', 'rear_seat_room', 'luggage_room', 'weight', 'origin',\n", " 'make'],\n", " dtype='object')" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_raw.columns" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Encoding of columns" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There are many categorical variables in the dataset, so for a linear regression model we will need to encode dummy variables from each categorical variable." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "def _process_data(raw_df, cat_base_levels):\n", " \"Transform raw dataset by encoding columns, e.g. dummy columns from categorical variables.\"\n", " return (df_raw\n", " .pipe(_rename_columns)\n", " .pipe(DummyEncoder,\n", " categorical_col_base_levels=cat_base_levels)\n", " .transform()\n", " .pipe(_rename_columns))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here is an example of a categorical variable in the dataset and its values:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array(['None', 'Driver & Passenger', 'Driver only'], dtype=object)" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_raw['airbags'].unique()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The raw dataset comes with category values that have capital letters and whitespace. When encoding dummy columns from them, it is desirable to have the new columns as close to snake case as possible. The **encoder** will process the columns so that they are more like snake case." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For demonstration, see the columns from a transformed dataset below." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['manufacturer', 'model', 'min_price', 'price', 'max_price', 'mpg_city',\n", " 'mpg_highway', 'drivetrain', 'cylinders', 'enginesize', 'horsepower',\n", " 'rpm', 'rev_per_mile', 'man_trans_avail', 'fuel_tank_capacity',\n", " 'passengers', 'length', 'wheelbase', 'width', 'turn_circle',\n", " 'rear_seat_room', 'luggage_room', 'weight', 'make', 'type_large',\n", " 'type_midsize', 'type_small', 'type_sporty', 'type_van',\n", " 'airbags_driver_&_passenger', 'airbags_driver_only', 'origin_non_usa'],\n", " dtype='object')" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_raw.pipe(_process_data, {'type': 'Compact',\n", " 'airbags': 'None',\n", " 'origin': 'USA'}).columns" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Log variables" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Create a basic function for generating log transformations of variables. This will be particularly useful for positively-skewed variables." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "def _create_log_variables(raw_df, cols_list):\n", " \"Transform dataset to include log variables of the variables in cols_list.\"\n", " df = raw_df.copy()\n", " for col in cols_list:\n", " df['ln_' + col] = np.log(df[col])\n", " return df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "These data cleaning functions could be gathered in a specific class, e.g. `Transformer`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Fit model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Initial model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's set out these key things for a linear model, from the raw dataset:\n", "- Dependent variable (`raw_y_list`)\n", "- Independent variables (`raw_X_list`) and the base levels for the categorical variables." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "raw_y_list = ['price']\n", "raw_X_list = ['type', 'mpg_city', 'airbags', 'origin']\n", "cat_base_levels = {'type': 'Compact',\n", " 'airbags': 'None',\n", " 'origin': 'USA'}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice how many of the variables in `raw_X_list` are categorical variables." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "type object\n", "mpg_city int64\n", "airbags object\n", "origin object\n", "dtype: object" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_raw[raw_X_list].dtypes" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "type 6\n", "mpg_city 21\n", "airbags 3\n", "origin 2\n", "dtype: int64" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_raw[raw_X_list].nunique()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "One trick is to make another representation of the independent variables – an X_list – where the categorical variables have the `DummyEncoder` separator appended to them." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['type_', 'mpg_city', 'airbags_', 'origin_']" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "[str(x + '_') if x in cat_base_levels.keys()\n", " else x for x in raw_X_list]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### `ModelPipeline`" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can transform the raw dataset, given lists of its y & X variables (and base levels), and make a dataset to use for modelling.\n", "\n", "Let's set up a **`ModelPipeline` class**, which takes those variables from the raw dataset and does the following:\n", "- Get a final dataset to use for modelling (`get_dataset` method)\n", "- Get an Appelpy model object that consumes the final dataset (`get_model` method)." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "class ModelPipeline:\n", " def __init__(self, raw_df, raw_y_list, raw_X_list, cat_base_levels):\n", " self.raw_df = raw_df\n", " self.raw_y_list = raw_y_list\n", " self.raw_X_list = raw_X_list\n", " self.cat_base_levels = cat_base_levels\n", "\n", " # Transformed dataset and its columns\n", " self.df = None\n", " self.y_list = None\n", " self.X_list = None\n", "\n", " def get_dataset(self):\n", " \"Return processed dataset, ready to use for modelling\"\n", " df = (self.raw_df\n", " .pipe(_process_data, self.cat_base_levels)\n", " .pipe(_create_log_variables, ['price', 'mpg_city']))\n", "\n", " # Append separator to columns that represent categorical variables: \n", " X_list_prefixes = [str(x + '_') if x in self.cat_base_levels.keys()\n", " else x for x in self.raw_X_list]\n", "\n", " # Get column names to use in model dataset:\n", " self.y_list = self.raw_y_list\n", " self.X_list = df.columns[df.columns.str.startswith(tuple(X_list_prefixes))]\n", " # and filter the source dataset on those columns:\n", " filter_condition = df.columns.str.startswith(tuple([*self.y_list, *self.X_list]))\n", " self.df = df.loc[:, filter_condition]\n", " return self.df\n", "\n", " def get_model(self):\n", " \"Return OLS Appelpy model instance (not fitted)\"\n", " if self.df:\n", " return OLS(self.df, self.y_list, self.X_list)\n", " else:\n", " self.df = self.get_dataset()\n", " return OLS(self.df, self.y_list, self.X_list)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This is useful, as it will make it easier to run different specifications of models and inspect the dataset used for modelling." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Model results" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
OLS Regression Results
Dep. Variable: price R-squared: 0.616
Model: OLS Adj. R-squared: 0.574
Method: Least Squares F-statistic: 14.79
Date: Fri, 03 Jan 2020 Prob (F-statistic): 5.17e-14
Time: 21:40:32 Log-Likelihood: -297.87
No. Observations: 93 AIC: 615.7
Df Residuals: 83 BIC: 641.1
Df Model: 9
Covariance Type: nonrobust
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
coef std err t P>|t| [0.025 0.975]
const 29.6931 4.723 6.288 0.000 20.300 39.086
mpg_city -0.7957 0.191 -4.162 0.000 -1.176 -0.415
type_large 3.0755 2.774 1.109 0.271 -2.442 8.593
type_midsize 5.1573 2.183 2.362 0.020 0.815 9.499
type_small -0.2819 2.598 -0.109 0.914 -5.449 4.885
type_sporty 0.3151 2.329 0.135 0.893 -4.318 4.948
type_van -0.8718 2.904 -0.300 0.765 -6.647 4.903
airbags_driver_&_passenger 8.9089 2.284 3.900 0.000 4.365 13.452
airbags_driver_only 4.5643 1.672 2.730 0.008 1.239 7.890
origin_non_usa 5.1411 1.439 3.573 0.001 2.280 8.003
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
Omnibus: 43.351 Durbin-Watson: 1.962
Prob(Omnibus): 0.000 Jarque-Bera (JB): 123.544
Skew: 1.620 Prob(JB): 1.49e-27
Kurtosis: 7.624 Cond. No. 195.


Warnings:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified." ], "text/plain": [ "\n", "\"\"\"\n", " OLS Regression Results \n", "==============================================================================\n", "Dep. Variable: price R-squared: 0.616\n", "Model: OLS Adj. R-squared: 0.574\n", "Method: Least Squares F-statistic: 14.79\n", "Date: Fri, 03 Jan 2020 Prob (F-statistic): 5.17e-14\n", "Time: 21:40:32 Log-Likelihood: -297.87\n", "No. Observations: 93 AIC: 615.7\n", "Df Residuals: 83 BIC: 641.1\n", "Df Model: 9 \n", "Covariance Type: nonrobust \n", "==============================================================================================\n", " coef std err t P>|t| [0.025 0.975]\n", "----------------------------------------------------------------------------------------------\n", "const 29.6931 4.723 6.288 0.000 20.300 39.086\n", "mpg_city -0.7957 0.191 -4.162 0.000 -1.176 -0.415\n", "type_large 3.0755 2.774 1.109 0.271 -2.442 8.593\n", "type_midsize 5.1573 2.183 2.362 0.020 0.815 9.499\n", "type_small -0.2819 2.598 -0.109 0.914 -5.449 4.885\n", "type_sporty 0.3151 2.329 0.135 0.893 -4.318 4.948\n", "type_van -0.8718 2.904 -0.300 0.765 -6.647 4.903\n", "airbags_driver_&_passenger 8.9089 2.284 3.900 0.000 4.365 13.452\n", "airbags_driver_only 4.5643 1.672 2.730 0.008 1.239 7.890\n", "origin_non_usa 5.1411 1.439 3.573 0.001 2.280 8.003\n", "==============================================================================\n", "Omnibus: 43.351 Durbin-Watson: 1.962\n", "Prob(Omnibus): 0.000 Jarque-Bera (JB): 123.544\n", "Skew: 1.620 Prob(JB): 1.49e-27\n", "Kurtosis: 7.624 Cond. No. 195.\n", "==============================================================================\n", "\n", "Warnings:\n", "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", "\"\"\"" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model1 = (ModelPipeline(df_raw, raw_y_list, raw_X_list, cat_base_levels)\n", " .get_model()\n", " .fit())\n", "model1.results_output" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Unstandardized and Standardized Estimates
coef t P>|t| coef_stdX coef_stdXy stdev_X
price
mpg_city-0.7957-4.1620.000-4.4719-0.46305.6198
type_large+3.0755+1.1090.271+0.9986+0.10340.3247
type_midsize+5.1573+2.3620.020+2.2036+0.22810.4273
type_small-0.2819-0.1090.914-0.1185-0.01230.4204
type_sporty+0.3151+0.1350.893+0.1133+0.01170.3595
type_van-0.8718-0.3000.765-0.2591-0.02680.2973
airbags_driver_&_passenger+8.9089+3.9000.000+3.3806+0.35000.3795
airbags_driver_only+4.5643+2.7300.008+2.2880+0.23690.5013
origin_non_usa+5.1411+3.5730.001+2.5831+0.26740.5024
" ], "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model1.results_output_standardized" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Access the dataset used for modelling from the model pipeline." ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "df = (ModelPipeline(df_raw, raw_y_list, raw_X_list, cat_base_levels)\n", " .get_dataset())" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
pricempg_citytype_largetype_midsizetype_smalltype_sportytype_vanairbags_driver_&_passengerairbags_driver_onlyorigin_non_usa
015.92500100001
133.91801000101
229.12000000011
337.71901000101
430.02201000011
515.72201000010
620.81910000010
723.71610000010
826.31901000010
934.71610000010
\n", "
" ], "text/plain": [ " price mpg_city type_large type_midsize type_small type_sporty \\\n", "0 15.9 25 0 0 1 0 \n", "1 33.9 18 0 1 0 0 \n", "2 29.1 20 0 0 0 0 \n", "3 37.7 19 0 1 0 0 \n", "4 30.0 22 0 1 0 0 \n", "5 15.7 22 0 1 0 0 \n", "6 20.8 19 1 0 0 0 \n", "7 23.7 16 1 0 0 0 \n", "8 26.3 19 0 1 0 0 \n", "9 34.7 16 1 0 0 0 \n", "\n", " type_van airbags_driver_&_passenger airbags_driver_only origin_non_usa \n", "0 0 0 0 1 \n", "1 0 1 0 1 \n", "2 0 0 1 1 \n", "3 0 1 0 1 \n", "4 0 0 1 1 \n", "5 0 0 1 0 \n", "6 0 0 1 0 \n", "7 0 0 1 0 \n", "8 0 0 1 0 \n", "9 0 0 1 0 " ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Model diagnostics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's gather the main residual plots in one place and examine whether the assumptions of OLS hold in the model." ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAALICAYAAABiqwZ2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nOzdeZyVddnH8c81Iy6AS+CUiaJCLhmWLbj1FKjggrvmmoLKo2lmppZluVtqVpaWqSQoue+KiguKYOZjYZpraEIKuOQAKgIuMOf3/HEf8DDMwMzhzDlzZj7v12tec5b7nHPdDNaX31z39YuUEpIkSZIyNZUuQJIkSWpPDMiSJElSAQOyJEmSVMCALEmSJBUwIEuSJEkFDMiSJElSAQOy2r2IGBgRM8r0WZ+JiEcj4v2I+E05PjP/uZdHxOnLeD5FxOdK8DlnRcS1K/o+kiR1ZAZktUpEvBoRH0TE3Ij4b0RcHRHdmzn28IhoyB87JyL+GRG7r+ixy6nv6oj4eWtfV+BoYCawRkrp5Gbe/+N8nbMjYlxEbLYCnwdASumYlNK5K/o+kiRpxRmQVYw9Ukrdga8AXwNOW8ax/5c/di1gJHBzRHyqBMe2lQ2AF9Oyd9C5MF9nL+B1slolSVIHYUBW0VJKrwP3Af1acGwOGAWsBvRdkWMj4vMRMSEi3o2IFyJiz/zjRwPfBk7Jr/De3dT7R8R2ETEpIt7Lf98u//jVwLCC1w9aTp0fADcDWzZ6/yMj4l8R8U5EPBARG+Qfj4j4bUS8nV8lfy4i+i367MKV74j4UUS8GRFvRMSRjd5/QkT8b8H9wyPisYL7F0fE9Pxn/CMivtHMn8OqEXFtRMzK/1lOiojPLOucJUnqDAzIKlpErA8MAZ5uwbErAf8LzAX+XeyxEdEFuBt4EPg0cDxwXURsmlIaAVxHfoU3pbRHE+/dA7gXuAToCVwE3BsRPVNKhzd6/UPLqbMbcDDwSsFjewE/BfYF6oC/ADfkn94J+CawCbAmcAAwq4n33QX4ITAY2BhYZlBvwiSy0N4DuB64JSJWbeK4Yfk61if7szgG+KCVnyVJUodjQFYx7oyId4HHgInAecs4dpv8sW+Rhcl9UkrvrcCx2wDdgQtSSh+nlMYD9+SPb4ndgH+nlK5JKS1MKd0ATAaWCtPL8MN8ne8D/wMcVvDcMcD5KaV/pZQWkv3ZbJlfRV4ArA5sBkT+mDebeP8DgKtSSs+nlOYBZ7WiNlJK16aUZuXP7zfAKsCmTRy6gCwYfy6l1JBS+kdKaU5rPkuSpI7IgKxi7J1SWiultEFK6bsppQ8i4hv5toS5EfFCwbFP5I9dO6W0zXJWZVty7LrA9HwbxiKvkfUDt8S6+eMLteb1AL9OKa0FbEi24loYPjcALs63LLwLzAYC6JUP838ALgXejogREbFGMzVOb1Rfi0XED/MtHu/la1gTWLuJQ68BHgBuzLdyXJhfoZckqVMzIKskUkp/ybcldE8pfaENP+oNYP2IKPy725vsYjmAZV1ct+j1GzR6rPD1LZZSmgacQBaIV8s/PB34Tj7oL/paLaX0eP41l6SUvgpsTtZq8aMm3vpNsraHwvoKzQO6FtxfZ9GNfL/xKWSr0J/KB/n3yEJ64/oXpJTOTiltDmwH7A4MbeHpS5LUYRmQVW3+Bswnu5CuS0QMJGuPuDH//H+BPst4/Vhgk4g4JCJWiogDycLqPcUUk1IaRxa6j84/dDlwakR8ASAi1oyI/fO3+0fE1vlV2nnAh0Cuibe9GTg8IjaPiK7AmY2e/yewb0R0jWw28vCC51YHFgL1wEoRcQbQ1Co1EbF9RGwREbXAHLKWi6bqkSSpUzEgq6qklD4mC8S7ks0r/iMwNKU0OX/ISGDzfIvDnU28fhbZSunJZBfInQLsnlKauQJl/YossK+SUroD+CVZ28Ic4Pl8rZAF1T8B75C1TczKv7ZxjfcBvwPGk10AOL7RIb8FPib7x8BosgsLF3kAuB94Of8ZH7Jku0ahdYBbycLxv8j6ya9p6UlLktRRxbLHvUqSJEmdiyvIkiRJUoGyBuSIGJXfJOH5Zp6PiLgkIl6JiGcj4ivlrE+SJEkq9wry1cAuy3h+V7KNETYmu+jpsjLUJEmSJC1W1oCcUnqUbC5sc/YC/pwyTwBrRcRny1OdJEmSBCtVuoBGerHkFfcz8o8ttdtYRBxNfrTWaqut9tU+fZY12avjaWhooLa2ttJllI3n2/FV+zm/9u7HfNzwyUXPQdNDubt9/AEbvvMGT6c0M6VUV7YCJUkt1t4CcoullEYAIwD69euXnn++ybbmDmvy5MlsttlmlS6jbDzfjq/az7nvqWNpWM5UoG1fe4aRt53DzLXXY4P66a3aIVGSVD7tbYrF6yy5g9h6FLHDmSSVW5+6btTk9yusCehSG4vvB7D9a09x1a1n89+e61IzcWLF6pQkLV97C8hjgKH5aRbbAO+llJZqr5Ck9mbksP70retObQR967pzzZFbL77/7ZnPMur2n7Nqv83Z6Lm/s97nN6p0uZKkZShri0VE3AAMBNaOiBlkW+h2AUgpXU62DfAQst3D5gNHlLM+SSpW755dGXfSgCUeG3fSALjjDjjwTPjSl+CBB6BHjwpVKElqqbIG5JTSwct5PgHHlakcSWpbN90E3/42bLUV3HcfrLlmpSuSJLVAe2uxkKSO4Zpr4JBD4Otfz1aODceSVDUMyJJUaqNGwbBhMHAgjB0Lq69e6YokSa1gQJakUrrsMhg+HHbeGe65B7p1q3RFkqRWMiBLUqlcfDF897uwxx5w552w2mqVrkiSVISq3ShEkipt2qz5DB89ian18/jJc2M46t4rYL/94PrrYeWVK12eJKlIriBLUpGGj57ElPq5fPex6znq3it4ZMsd4MYbDceSVOVcQZakVihcNW7I5Tj5L9dy/P/dxG39duAnO/2Af6/k/6xKUrXzf8klqRUWrRrncolTJ1zFd/5+Ozd8cSdO2/V79Pn0GpUuT5JUAgZkSWqFqfXzyOUSZz48giP+cTejv7Ib5w4+hj6fXp2Rw/pXujxJUgkYkCWpFfr2XI3Dr7uQQ/55P1f235ubDjyBV04eWOmyJEklZECWpJZqaOD2p6+i+z/v54/bHsAd+x3LyMO3qnRVkqQSc4qFJC3HtFnz2flXD3PnlwbR/fprePeUn/Hdv97IuJMH0rtn10qXJ0kqMQOyJC3H0aP+j++POou9X5jArwYMZf/PDIaISpclSWojtlhIUhMWjXOb8ea7/O6uC9j5309w7vbDGbnVPtTWz6t0eZKkNmRAlqQmDB89ielvzuaPt5/HDlOf5IxB3+HPX92DmoA+dd0qXZ4kqQ0ZkCWpCW+8MYsRt/2c/3n1n5y68/e4YctdqI2gT103x7lJUgdnQJYkltwhb/M1gmvvOJcvvfoMpww5gdu/OIiN67oz7qQBlS5TklQGBmRJ4pMd8rp+OJ8zrz2LL74xmQu+/TPuWH9b+rpqLEmdigFZUqdVuGrckBJrfDiXP998Bl/47xS+v+ePufTac/lppYuUJJWdAVlSp7Vo1TiXYK0P5nDtTaezSf1rHLf3qfzn64MqXZ4kqUIMyJI6ran188gl6DnvXa696TT6zH6dY/Y7nenbDLClQpI6MQOypE6rT1035vxnGtfe8DPWe+9tTv/f8xl1+cmVLkuSVGEGZEmd1tWD1yXtcCifmjOT047+JSecc1SlS5IktQMGZEmd02uv0WvvXeDjOTDhYX6z3XaVrkiS1E4YkCV1PlOmwA47wJw58NBD0N9+Y0nSJwzIkjqXl16CHXeEDz+E8ePhy1+udEWSpHbGgCyp83jxxWzlOCV45BHYYotKVyRJaodqKl2AJJXFs8/CwIFQUwMTJhiOJUnNMiBL6vieegq23x5WWQUmToTPf77SFUmS2jEDsqSO7W9/y9oqVl8dHn0UNt640hVJkto5A7Kkjuuxx2DQIFh77Swcb7RRpSuSJFUBA7KkjumRR2DnnaFXr6ytonfvSlckSaoSBmRJHc+DD8KQIbDhhtkFeb16VboiSVIVMSBL6ljuvRf22AM23TQLx+usU+mKJElVxjnIkjqOO+6AAw+EL30JHngAevRY6pBps+YzfPQkptbPo09dN0YO60/vnl0rUKwkqb0yIEvqGG6+GQ45JNs2+v77Yc01Fz9VGIpramBhLpESTKmfy/DRkxh30oAKFi5Jam9ssZBU/a69Fg4+GLbbLus/LgjHAMNHT2JK/VwaUmJBQxaOAXIJptbPq0DBkqT2zIAsqbqNGgVDh2a75N13XzbvuJGp9fPIpaVfWhPQp65b29coSaoqBmRJ1evyy2H4cNhpJ7jnHujWdNjtU9eNmshuB9ClNqiNoG9dd0YO61++eiVJVcEeZEnV6ZJL4IQTYPfd4ZZbYNVVmz105LD+XpgnSWoxA7Kk6vOrX8Epp8C++8INN8DKKy/xdFOTKrwQT5LUUrZYSKouP/95Fo4POghuvHGpcAxLXpS3aFKFJEktZUCWVB1SgtNPz74OOyybXNGlS5OHFl6U56QKSVJr2WIhqf1LCX7846y1YvhwuOIKqK1d4pDGs45zuexlTqqQJLWWAVlS+5YSnHgiXHwxHHss/OEPUJP98qu5DUByDbBSbZDLsbgHWZKkljIgS2q/cjk47rhsnNsPfgAXXQQRi59e1GucS9DQ8MnLUv6lU84fUv6aJUlVzx5kSe1TQwMcdVQWjn/yk6XCMbgBiCSpbRiQJbU/CxfC4Ydnu+SdeSacd95S4RjcAESS1DZssZDUvixYAIceCjffDL/4Bfz0p0s8Xdh3vH6P1ejdoyvTZ3/gBiCSpJIxIEtqPz7+OJtvfMcd8Otfw8knL3VIYd/xtNnz6VvX3V5jSVJJlT0gR8QuwMVALXBlSumCRs/3BkYDa+WP+UlKaWy565RUXvHRR9nOePfem20jffzxi58rXDVuSJ80HTvjWJLUFsoakCOiFrgUGAzMACZFxJiU0osFh50G3JxSuiwiNgfGAhuWs05JZTZ/Pr2OOw7++le44gqm7Xcowy+auHir6AUNOabNnr/UBXlejCdJagvlXkHeCnglpTQVICJuBPYCCgNyAtbI314TeKOsFUoqr3nzYI896Pb449lFeUccwfCLJi5uo1j0vbHaCGccS5LaRLkDci9gesH9GcDWjY45C3gwIo4HugGDmnqjiDgaOBpgnXXWYfLkySUvtj2bOXNmpzpnz7djqpk7l/WOOYbVnn6al087jbTttjB58hKheNH3IPvXcwDrr9mFEfv0BmB+/TQm11eieklSR9UeL9I7GLg6pfSbiNgWuCYi+qWUcoUHpZRGACMA+vXrlzbbbLMKlFo5kydPpjOds+fbAb37LuyyCzzzDNx4I2mLLRafc9+6/y4OyTUBvXt0pUttzeKWC6dVSJLaUrkD8uvA+gX318s/Vmg4sAtASun/ImJVYG3g7bJUKKntzZoFO+0Ezz0Ht94Ke+0FBSvmI4f1X3xRnoFYklRu5Q7Ik4CNI2IjsmB8EHBIo2OmATsCV0fE54FVAX+BKnUUb78NgwfDSy/BnXfCkKVHtPXu2ZVxJw2oQHGSJJU5IKeUFkbE94AHyEa4jUopvRAR5wBPppTGACcDf4qIE8laDg9PKTVxiY6kqvPmmzBoEPznP3D33VlQliSpnSl7D3J+pvHYRo+dUXD7ReDr5a5LUht7/XXYYYfs+333wQBXiCVJ7VN7vEhPUkfz2mtZOK6vhwcegK/7b2BJUvtlQJbUtqZOhe23hzlz4KGHYKutKl2RJEnLZECW1HZefjlbOf7gA3j4YfjKVypdkSRJy2VAltQ2XnwRdtwRGhpgwgTYYotlHv7m+ws4vmB7aUe7SZIqpabSBUjqgJ59FgYOzG63IBwDnPnQm0ypn0tDSkypn8vw0ZPatERJkppjQJZUWk89lfUcr7wyTJwIm2/eopfNmLNgie2lp9bPa8MiJUlqni0Wkkrnb3/Lto9ec00YPx769Fnm4dNmzV+8Y15NZIPPU3576T513cpTsyRJjbiCLKk0Hnss2/ijR49s5Xg54Rhg+OhJi9sqFuZgpZqgNoK+dd0ZOax/GYqWJGlpriBLWnETJsDuu0OvXtnKca9ezR5auGrc0GiTzFwOppy/9NbTkiSVkyvIklbMuHEwZAhssEG2cryMcAxLrhoXCmyrkCS1DwZkScUbOxb22AM22SRbRV5nneW+ZGr9vMUX4y1SG8H6a3axrUKS1C4YkCUV5847Ye+9oV+/rK2irq5FL+tT142ayG7XBGz86e5MOX8II/bp7dxjSVK7YECW1Hq33AL77w9f/Wq2fXSPHi1+6chh/elb192L8SRJ7ZYX6Ulqneuug6FDYbvtshaL1Vdf7ksKL8xzlzxJUnvnCrKklrvqKjjsMBgwAO6/v0XhGJa8MM9d8iRJ7Z0BWVLLXHEFHHlkNuv4nnugW8snThRemOcueZKk9s6ALGn5fv97OOYY2G03uOsu6Nq69ojGF+Y5zk2S1J4ZkCUt269/Dd//PuyzD9x+O6y6aqvfwgvzJEnVxIv0JDXvF7+A006DAw+Ea66BLl2KepvePbsy7qQBJS5OkqS24QqypKWlBGeckYXjww6Da68tOhxLklRtXEGWtKSU4Cc/gQsvzC7KGzECamsrXZUkSWVjQJb0iZTgxBPh4ovh2GPhD3+AGn/RJEnqXPx/PkmZXA6OOy4LxyecAJdeajiWJHVK/r+fJGhogKOPhssugx//GH77W4iodFWSJFWELRZSZ7dwYdZrfM012YV5Z521wuHYraUlSdXMgCx1ZgsWZFMqbroJfv5z+NnPin6rwlBcUwMLc4mUWLy1tGPeJEnVwoAsdVYffwwHHQR33AG/+hX88IetfovmQnFDwyfHuLW0JKnaGJClzujDD2H//eGee7KL8r7//aLeZvjoSUypn0uuUSgu5NbSkqRqY0CWOpsPPoC994YHH4TLL4fvfKfot5paP49cWvrxAFaqDXI5FvcgS5JULQzIUmcybx7ssQdMmACjRsERR7T6LRq3VeRy2fjkpkKxF+ZJkqqRAVnqLObMgd12g8cfhz//GQ49tMUvba7XONdgKJYkdTwGZKkzePdd2GUXePJJuOEGOOCAVr28uV7jRLaCPOX8IaWtV5KkCjIgSx3d7Nmw007w7LNw661Z/3ErNddr7AV4kqSOqKiAHBHdgA9SSrmI2ATYDLgvpbSgpNVJWjH19TBoELz0UjbObbfdWvSyxht9rN9jNabNnk+umV5jSZI6kmJXkB8FvhERnwIeBCYBBwLfLlVhklbQW2/BjjvCf/4DY8Zkq8gtVNhSMaV+Lr17dKVvXXd3xpMkdQrFBuRIKc2PiOHAH1NKF0bEP0tZmKQV8PrrsMMO2fexY2HgwFa9vLClIpdg+uwP7DOWJHUaNUW+LiJiW7IV43vzj9WWpiRJK2TaNBgwAN58Ex54oNXhGLLWiZrIbttnLEnqbIoNyD8ATgXuSCm9EBF9gEdKV5akokydCt/8JsycCePGwde/XtTbjBzWn7513amNoG9dd/uMJUmdSlEtFimlicDEiOiavz8VKG6vWkml8e9/Z20V8+fD+PHwla8U/Va9e3Zl3EkDSlicJEnVo6gV5IjYNiJeBCbn738pIv5Y0soktdy//pWtHH/0ETzyyAqFY0mSOrtiWyx+B+wMzAJIKT0DfLNURUlqheeey3qOIdtC+otfrGg5kiRVu2IDMiml6Y0eamjyQElt5+mnYfvtYeWVYeJE2HzzSlckSVLVK3bM2/SI2A5IEdEFOAH4V+nKkrRcf/877LwzrLFG1nPct+8KvV3jzUGcdSxJ6qyKXUE+BjgO6AW8DmyZvy+pHP7612yHvB494NFHVzgcwyebgzSkxJT6uQwfPakEhUqSVH2KnWIxE3fNkypjwgTYfXfo1QsefhjWW6/otypcNW5IafHjuZRtFiJJUmfUqoAcEafkd837PZAaP59SctSb1JYeegj23BM22ii7/dnPtvotCkNxTQ0szCVSo/+a3RxEktSZtXYFeVGf8ZOlLkTScowdC/vuC5tskoXjT3+6qLdZ1EqRS9DQxKW1tRGLe5AlSeqMWhWQU0p352/OTyndUvhcROxfsqokLemuu2D//WGLLeDBB6Fnz6Lfamr9PHJL/f4nWzXuW9fdDUIkSZ1esRfpndrCxyStqFtugW99K9v84+GHVygcQ9Y6URPZ7QC61IZbSkuSVKC1Pci7AkOAXhFxScFTawALS1mYJOD66+Gww2C77eDee7ORbito5LD+jnOTJGkZWtuD/AZZ//GewD8KHn8fOLElbxARuwAXA7XAlSmlC5o45gDgLLILAZ9JKR3Syjql6nf11XDkkTBwIIwZA927l+Rte/fsahuFJEnL0Noe5GeAZyLiupRSq1eMI6IWuBQYDMwAJkXEmJTSiwXHbEzWrvH1lNI7EVHclUhSFVvz5pvhzDNh8GC4807o6gqvJEnl0toWi5tTSgcAT0dEU2Pevrict9gKeCWlNDX/fjcCewEvFhxzFHBpSumd/Hu+3Zoapar3hz/w2TPPhN12g1tvhVVXrXRFkiR1Kq1tsTgh/333Ij+vFzC94P4MYOtGx2wCEBF/JWvDOCuldH/jN4qIo4GjAdZZZx0mT55cZEnVaebMmZ3qnDvL+fa46io+feGFzPrGN6g/7zx49dVKl1Q2neVnLElq/1rbYvFm/vtrbVMOkNW0MTAQWA94NCK2SCm926iWEcAIgH79+qXNNtusDUtqfyZPnkxnOudOcb7nnQcXXggHHED9aaex2RZbVLqisuoUP2NJUlVo1Zi3iHg/IuY08fV+RMxpwVu8DqxfcH+9/GOFZgBjUkoLUkr/AV4mC8xSx5RS1m/8s5/BoYfCdddBly6VrkqSpE6rtSvIq6/g500CNo6IjciC8UFA4wkVdwIHA1dFxNpkLRdTV/BzpfYpJTj1VPjlL+GII+BPf4La2pJ+ROHW0o51kyRp+Vq7grxG/nuPpr6W9/r85IvvAQ+QbVt9c0rphYg4JyL2zB/2ADArIl4EHgF+lFKa1Zo6paqQEpx0UhaOjzkGrryy5OEYPtlauiElptTPZfjoSSX/DEmSOpLWXqR3PdkFev8gm1EcBc8loM/y3iClNBYY2+ixMwpuJ+Ck/JfUMeVycPzx8Mc/wve/D7/7HUQs/3VFKNxaOpey+5IkqXmtbbHYPf99o7YpR+oEcjn4zneyFeMf/ShbQW6jcAzZ1tJT6ueSS1AT2X1JktS8VrVYFIqIfSPiooj4TUTsXcqipA6roSHrNb7ySjj99DYPx5BtLd23rju1EfSt687IYf3b9PMkSap2rW2xACAi/gh8Drgh/9AxETE4pXRcySqTOpoFC2DoULjxRjj3XDjttLJ8rFtLS5LUOkUFZGAH4PP5fmEiYjTwQsmqkjqajz+Ggw+G22/PZh3/6EeVrkiSJDWj2BaLV4DeBffXzz8mqbGPPoJvfSsLx7/7neFYkqR2rlUryBFxN9m0itWBf0XE3/P3twb+XvrypCr3wQewzz7wwANw2WXZODdJktSutbbF4tdtUoXUEc2bB3vuCY88AiNHwpFHVroiSZLUAq0d8zaxrQqROpT334fddoO//hX+/OdsC2lJklQViupBjohtImJSRMyNiI8joiEi5pS6OKkqvfsu7LQTPP44XH+94ViSpCpT7BSLPwAHAbcAXwOGApuUqiipas2enYXjZ5+FW27J+o8rYNqs+QwfPYmp9fPoU9eNkcP607tn14rUIklStSl6o5CU0itAbUqpIaV0FbBL6cqSqlB9PeywAzz3XDaxokLhGGD46ElMqZ9LQ0pMqZ/L8NGTKlaLJEnVptgV5PkRsTLwz4i4EHiTFQjbUtV76y0YNAimTIG7785WkStoav08cim7nUvZfUmS1DLFhtrD8q/9HjCPbA7yfqUqSqoqr78OAwfCf/4DY8dWPBwD9KnrRk1+B+uayO5LkqSWKSogp5ReA3LAhsDtwE/yLRdS5zJtGgwYAG+8kc063n77SlcEwMhh/elb153aCPrWdWfksP6VLkmSpKpRVItFROwGXA5MAQLYKCK+k1K6r5TFSe3af/6T9Ry/8w6MGwdbb13pihbr3bMr404aUOkyJEmqSsX2IP8G2H7RqnFE9AXuBQzI6hz+/e8sHM+fDw8/DF/9aqUrkiRJJVJsQH6/UUvFVOD9EtQjtX//+hfsuCMsWADjx8OXvlTpiiRJUgm1KiBHxL75m09GxFjgZiAB+wPOkVLH9/zzWTiOgAkT4AtfqHRFkiSpxFq7grxHwe3/AouaHOuBVUtSkdRePf00DB4Mq6ySrRxvummlK5IkSW2gVQE5pXREWxUitWuTJmXj29ZYIwvHfftWuqKluHueJEmlUdSYt4hYLyLuiIi381+3RcR6pS5Oahcefzxrq/jUp+DRR9tlOAZ3z5MkqVSKvUjvKuB6st5jgEPzjw0uRVFSuzFxIuy2G6y7brZyvF77+ndg4apxQ0qLH3f3PEmSilfsTnp1KaWrUkoL819XA3UlrEuqvIcegl13hd69s6DczsIxLLlqXMjd8yRJKl6xAXlWRBwaEbX5r0OBWaUsTKqo++6D3XeHz30um1bx2c9WuqImTa2fR27JbOzueZIkraBiWyyOBH4P/JZszNvjgBfwqWMYMwb23x/69YMHH4SePStdUbP61HVjSv1ccilbNe5b190d9CRJWkGtXkGOiFpg35TSnimlupTSp1NKe6eUprVBfVJ53Xor7LcfbLlltkNeOw7HACOH9advXXdXjSVJKqFWryCnlBoi4mCy1WOp47j+ehg6FLbZBsaOzUa6tXO9e3Z1xViSpBIrtsXirxHxB+AmYPGl8imlp0pSlVRuo0fDEUfAgAFw993QvXulK1qs8Xzjc/fqx+l3Pe+8Y0mS2kixAXnL/PdzCh5LwA4rVo5UAX/6E3znOzBoENx5J3RtX2Fz0aSKXIIp9XM5bNTfaMilxfeHj57kKrIkSSVUVEBOKW1f6kKkirj0Uvje92DIELjtNli1/e2YXjipIpcg1+C8Y0mS2lKrLtKLiK0j4nKEOH8AACAASURBVJmImBsR/xcRn2+rwqQ2d9FFWTjeay+4/fZ2GY4hm1RRE9ntmoAutbHEfecdS5JUWq2dYnEp8EOgJ3AR8LuSVySVw/nnw8knZ+PcbrkFVlml0hU1q/GkimuO3NrJFZIktaHWtljUpJTG5W/fEhGnlrogqU2lBGefnX19+9tw9dWwUrGt+G3nzfcXcPxFE5u9EM+eY0mS2k5rk8FaEbFvc/dTSreXpiypDaQEP/0pXHABHH44XHkl1NZWuqrFCqdVRCQaUlayF+JJklRerQ3IE4E9mrmfAAOy2qeUspaK3/42m1jxxz9CTbE7rZdOYSiuqYGFuURKZP815XkhniRJ5dWqgJxScjtpVZ9cDr7//WxixfHHw8UXQ0TFymkuFDc0NH28F+JJklRe7a/5UiqlXC5bMb7ySvjhD+HCC8sejhtv9LGgIce02fPJLSMUQzatIpdjcQ+yJEkqDwOyOq6GBhg+PNsl77TT4JxzKrJy3Hijj1xq+rgAVsqH4l5rrMS1R/+PO+RJklQBBmR1TAsXwtChcMMNWTA+/fSyfnzhqnFDWnJjD8jaJnJpyVBcOK1i8uTJhmNJkiqkqIAcEV2Bk4HeKaWjImJjYNOU0j0lrU4qxscfwyGHZDvj/fKXcMopbfZRhUF4/R6rATB99gdLXnBXoCagd4+udKmtaXaEmyRJqqxiV5CvAv4BbJu//zpwC2BAVmV99FG2+cfdd2cTK37wgzb9uML2iVdnzV/8eFO9xbURBmJJkqpAsQG5b0rpwIg4GCClND+igmMBJIAPPoB994X778/GuB17bJt8THPtE82pCehb1905xpIkVYliA/LHEbEa+WmtEdEX+KhkVUmtNW8e7LUXjB+fTawYPrzNPqpw1bg5TfUWS5Kk6lBsQD4TuB9YPyKuA74OHF6qoqRWef992H13eOyxbGLFYYe16cdNrZ+3VDiujViiB9lWCkmSqldRATmlNC4ingK2IVssOyGlNLOklUkt8d57sOuu8Pe/w/XXw4EHluRtm7v4rk9dN9bvsdriOca2T0iS1PG0KiBHxFcaPfRm/nvviOidUnqqNGVJLTB7Nuy8MzzzDNx8c9Z/vAKa2+Gu8OK7KfVz6d2jK33rui8xhUKSJHUcrV1B/s0ynkvADitQi9RyM2fC4MHw4otw++1Zi8UKKuwtbm6Hu1zKVpKnnD9khT9PkiS1T60KyCml7duqEKnF/vtf2HFHmDIFxozJVpGLVMxEij513Yr+PEmS1P4Vu1HIqsB3gf8hWzn+C3B5SunDEtYmLe2NN7JwPG0a3Hsv7LBiv7RobiJF4RSKpi6+kyRJHVexUyz+DLwP/D5//xDgGmD/5b0wInYBLgZqgStTShc0c9x+wK1A/5TSk0XWqY5k+vQsEL/1Vjbr+BvfaNHLlnXBXVPh2A09JEnq3IoNyP1SSpsX3H8kIl5c3osioha4FBgMzAAmRcSYlNKLjY5bHTgB+FuR9amD6TJjBhx1FLzzDowbB9tss8zjW3rBXW1NQC45kUKSJC1WbEB+KiK2SSk9ARARWwMtWeXdCnglpTQ1/7obgb2AxuH6XOCXwI+KrE8dySuv0HvoUPjwQ9687V6GPv4RU+8aS5+6bpy7Vz9Ov+v5pVaHC0Pxsi64oyHR99NOpJAkSZ8oNiB/FXg8Iqbl7/cGXoqI54CUUvpiM6/rBUwvuD8D2LrwgPwoufVTSvdGhAG5s5s8mYUDt2fe+x/w7QN/zsvj31scfKfUz+WwUX+jIb8CXLg63FwoLuSKsSRJakqxAXmXklaRFxE1wEW0YFe+iDgaOBpgnXXWYfLkyW1RUrs1c+bMDn/OK7/8Mr2PPJL3Pspx8EHn8XLdBtDwScNwLkGuYfmTJwBWqsmOX6d79lf+rbkLWW+NLvz0Gz3a5Z9jZ/j5NtYZz1mS1D4Vu5PeaxHxKWD9wvdowUYhr+dfs8h6+ccWWR3oB0yICIB1gDERsWfjC/VSSiOAEQD9+vVLm222WTGnUrUmT55Mhz7nf/4TjjwSVlmFA/c9k1d69FrqkJqA2ppYvIJcqHAKRTVecNfhf75N6IznLElqn4od83Yu2SrvFLIxb9CyjUImARtHxEZkwfggsgkY2Ruk9B6wdsHnTAB+6BSLTmbSpGy2cffuMH48MeZ14u25JJYOvs31IFdjKJYkSe1DsS0WBwB9U0oft+ZFKaWFEfE94AGyMW+jUkovRMQ5wJMppTFF1qOO4vHHYdddoWdPGD8eNtyQkcPW5dARj/H6nIVNBl97iCVJUikVG5CfB9YC3m7tC1NKY4GxjR47o5ljBxZTnKrUo4/CkCGw7rrw8MOwftaN07tnV0bs09tfv0uSpLIoNiCfDzwdEc8DHy16MKW0Z0mqUufz8MOwxx6wwQbZyvFnP1vpiiRJUidVbEAeTTan+DkgV7py1Cndfz/ssw987nPw0EPwmc9UuiJJktSJFRuQ56eULilpJeqc7r4bvvUt+MIX4MEHYe21l/8aSZKkNlRsQP5LRJwPjGHJFovljXmTPnHbbXDQQfCVr2SryJ/6VKUrkiRJKjogfzn/fZuCx1oy5k3K3HADHHYYbL013HcfrLHGEk9PmzWf4aMnLd4C+qff6IGX6EmSpHIodqOQ7UtdiDqR0aOzTUC+8Q2mj76ZI698eqk5xjU1LLGl9JkPfcT2/beocOGSJKkzKHYFmYjYDfgCsOqix1JK55SiKFW/whXgwuB7zL/Hc/LtF/H4Bl/igl1OZe7NLzBt9nxyCV6dNX/x6xsaPnmvXIIZcxaU+xQkSVInVexOepcDXYHtgSuBbwF/L2FdqnLDR09iSv3cJYLvYU/dw4/GXc4jfb7KMfv8jAXvLSSXFi73vWoC1lujS1uXLEmSBEBNka/bLqU0FHgnpXQ2sC2wSenKUrWbWj+PXPrk/vBJd3LuuMt5cONt+M4+p/HRSisvfr4mln59AF1qg9oI+tZ15+xBzkWWJEnlUWyLxQf57/MjYl1gFmCC0WJ96rotXkE+9olb+PHE0dy76dc5YY8fsbA2+2tXE9C7R1e61NYs1YrReEvpyZMnV+xcJElS51JsQL4nItYCfgU8RTbB4k8lq0pVb+Sw/gy/+u/sdueV/OCx6xi35Y6cuNMJrLd2d6DpECxJktQeFDvF4tz8zdsi4h5g1ZTSe6UrS9VoidFsa3fl1hn3suZj18HhhzP4yit5uba20iVKkiQtV6sCckT0B6anlN7K3x8K7Ae8FhFnpZRmt0GNqhKLL8zLJQ686WLWnHQnHH00XHYZ1BTb7i5JklRerU0tVwAfA0TEN4ELgD8D7wEjSluaqs3U+nmkXI6zHrqC/510J3/+yu5w+eWGY0mSVFVam1xqC1aJDwRGpJRuSymdDnyutKWp2vTtuRrnPXAphz91D3/aah+uOeRkiCZGVEiSJLVjre1Bro2IlVJKC4EdgaNX4L3UkTQ0cPs/RtL9mQe4dLsDuXPfYxh5+FaVrkqSJKnVWhtqbwAmRsRMslFvfwGIiM+RtVmoM1q4EIYNo/uN18M553Dc6adzXKVrkiRJKlKrAnJK6RcR8TDZzOMHU0qLtoKoAY4vdXGqAgsWwCGHwK23wgUXwI9/XOmKJEmSVkir2yJSSk808djLpSlHVeWjj+CAA2DMGLjoIjjxxEpXJEmStMIcL6DifPAB7LMPjBnDJfv+gL5vb8rgiyYybdb8SlcmSZK0QgzIar3582HPPeH++7lo/x/yu00G0ZASU+rnMnz0pEpXJ0mStEKcPKHWef992H13eOwxuPpqLv3X2uTyrei5lM1CliRJqmauIKvl3nsPdt4Z/vpXuO46GDqUPnXdqMmPOq4J6FPXrbI1SpIkrSADslrmnXdg8GDSpEmcfegZ9H1mDQZfNJFz9+pH37ru1EbQt647I4f1r3SlkiRJK8QWCy3fzJkweDC8+CJnDD2H6z79RXL5nuPT73qecScNqHSFkiRJJWNA1rL9978waBC88grcdRfXT8zZcyxJkjo0WyzUvDfegIEDyU2ZwinDfkHfiTlqaiDsOZYkSR2YK8hq2vTpsMMO8NZb/PCIC7hzjb7kUiLXACvVBrlcFo7tOZYkSR2NAVmLTZs1n+GjJ/HRv6dy480/Y435czh8/7N5cvW+kN9UPAG5HEw5f0hFa5UkSWorBmQtNnz0JBa+/DI3XP8zui74gIMP+DnPfXbjJY6xrUKSJHV0BmR9YvJkbrjhp3RpWMghB53Hi5/ps8TTtRG2VUiSpA7PgKzM889z042n0pASBx98Hi/Xbbj4qZqAvnXdHecmSZI6BQOy4JlnYNAg1ui6CkcP+yVTatZmwx6rATB99geuGkuSpE7FgNyJTZs1n1/+/Bp+cfkP+XjVriwc+yCj+m9R6bIkSZIqyoDcySyaVDG1fh5feeNfjLzpDN5bdXUOOeg8Vv3LbMa5UCxJkjo5A3InM3z0JKbUz+Vr055n1K1nU99tLQ456DzeXKOOWnfFkyRJcie9zmZq/Ty2+c8/ufqWM3mre08OPPgC3lyjzvFtkiRJeQbkTuaAWS8w6rZzmLbmOhx8yPm8s9ba1EbQt667F+JJkiRhi0WnsKjveMPHx3Ppnefz2mc24NBvncOnNliX24b1p3fPrpUuUZIkqd0wIHcCw0dP4nOPPcgld/2SFz/Th7OP/Q1PnrZHpcuSJElqlwzIHVThtIohL0zgt/f8hn+uuylH7H8W8+fVVro8SZKkdsuA3EEtmlax93MP86uxF/Pkeptz5H5n8MGqXenrxXiSJEnNMiB3IIWrxg0pccAzD3LB/b/n8Q2+yFH7ns7Hq6xGX3fFkyRJWiYDchUrDMR96rqxoCHHtNnzySU49Kl7+fm4y5iw0Vc5dt+fst66PRl30oBKlyxJktTuGZCrzKJQPKV+LrU1U1mYS6QEU+rnkkvZMUdOuoszxv+JcZ/bmu/vfSrrfXYtV40lSZJayIBcZRaF41yCXENa/PiicHzs327lxxOu5r5Nt+OSI8/mX6cMqlClkiRJ1cmAXAUa9xY3pYbEaU/dxpETrmbM5gO49PDT+dOR25a5UkmSpOpnQK4ChavGhQJYqTbINSTOffImDnn4Whg2jD1HjmTPWke5SZIkFcOtpqvA1Pp5S4XjmoDPfbo7D584gCkLH8nC8VFHwahRYDiWJEkqmivI7UhhK8X6PVYDYPrsD6ipgVwOUsqCcd+67vx+yGfYbNNN4YQT4Pe/h+OOg0sugRr/zSNJkrQiyp6mImKXiHgpIl6JiJ808fxJEfFiRDwbEQ9HxAblrrFSFrVSNKTEq7Pm8+qs+TSkxMKGxEo1QW0Efeu6ZxMpcjk45pgsHJ90UvbdcCxJkrTCyrqCHBG1wKXAYGAGMCkixqSUXiw47Gngayml+RFxLHAhcGA56yyXxnOMm+ozBkhkeXjK+UOyBxoaePeo0+COO+DUU+EXv4CIstYuSZLUUZV7yXEr4JWU0tSU0sfAjcBehQeklB5JKc3P330CWK/MNZZN4YpxNtc4qGki59YE9Fm0PfTChTB0KGvdcQecfbbhWJIkqcTK3YPcC5hecH8GsPUyjh8O3NfUExFxNHA0wDrrrMPkyZNLVWObevP9BZz50JvMmLNgidXiXILUkFh/zS7MmLOAdbpnP5q35i5kvTW68NNv9GDyc8+x7imnsMb99/Pqd77DhwccAC+9VKEzKa+ZM2dWzc+4FDrb+ULnPGdJUvvUbi/Si4hDga8BTe6PnFIaAYwA6NevX9pss83KWF3xjr9o4lLhGD65+K7Z7aA/+ggOPBDuvx8uuogPd92VajnnUpg8ebLn28F1xnOWJLVP5W6xeB1Yv+D+evnHlhARg4CfAXumlD4qU21l0dTItiUuvmvKhx/CvvvCXXfBH/4AJ57Y9oVKkiR1UuVeQZ4EbBwRG5EF44OAQwoPiIgvA1cAu6SU3i5zfW2u8GK85a4aA8yfD3vtBQ8/DCNGZLOOJUmS1GbKuoKcUloIfA94APgXcHNK6YWIOCci9swf9iugO3BLRPwzIsaUs8a2NnJYf/rWdV/+qjHA3LkwZAiMHw9XXWU4liRJKoOy9yCnlMYCYxs9dkbB7UHlrqmcevfsuuwV40Xeey8Lx3/7G1x7LRx8cNsXJ0mSpPZ7kV5H0nje8chh/ends2vzL3jnHdh5Z3j6abjpJthvv/IVK0mS1Mm59VoZNJ53PHz0pOYPnjkTdtwRnnkGbrvNcCxJklRmriCXQeHkilzK7jfp7bdh0CB4+eVsYsUuu5SvSEmSJAGuIJdFn7pui3fIW2JXvEJvvgkDB8Irr8C99xqOJUmSKsSAXAbLnVwxYwYMGADTp2cbgey4Y2UKlSRJki0W5bDMyRWvvgo77ACzZsGDD8K225a1NkmSJC3JgNxGWjS5YsqULBzPmQMPPQT9lzETWZIkSWVhQC6hwlBcUwMLc4mUWDy5YolV5JdeysLxRx/BI4/AlltWrnBJkiQtZkBeAY1XiRc05Jg2ez65BA0Nnxy31OSKF17I+oxTggkToF+/stcuSZKkphmQW2lZq8SLRrk1tsTkimeeyUa5demSbSG92WblK16SJEnLZUBugeZCceNVYsjCcC5BACvVBrkci3uQefJJ2Gkn6NYtC8cbb1yR85EkSVLzDMgtsGgnvMatE4VqAnr36EqX2pqmL8x74ols++gePbJwvNFG5TsBSZIktZgBuQUKd8Ir1NQq8VKTKgD+8hcYMgQ+85ksHPfu3eY1S5IkqTgG5BboU9dt8Qpyi0PxIuPHwx57wPrrZ7fXXbdsdUuSJKn1DMgtMHJY/+XPNG7KAw/A3ntD377w8MPZCrIkSZLaNQNyCyxzJ7zm3HMP7LcffP7zMG4c1NW1TXGSJEkqKQNyM1q0E15z7rgDDjwQvvSlbBW5R4+2LVaSJEkl06kDcmEIXr/HagBMn/3BUpt+NLkTXnNuugm+/W3Yaiu47z5Yc802PgtJkiSVUqcOyIXj216dNX/x4403/VhqJ7zmXHMNHH44/M//ZC0Wq69e+qIlSZLUpjpdQC5cNW5ITW9913jTjyV2wmvOqFHwv/8L228PY8Zkm4FIkiSp6tRUuoByW7Rq3Fw4hiwQb9izK33rulMbQd+67tlOeM257DIYPjzbCOSeewzHkiRJVazTrSA3telHbcRSPcgtvijv4ovhBz/IZh3fcgusskobVC1JkqRy6XQBuXDTj5qAvnXdWz/CbZELL4Qf/zgb53b99bDyyqUtVpIkSWXX6VosRg7r3/LWiWU599wsHB90ENx4o+FYkiSpg+h0K8hFbfpRKCU4/XT4xS9g6NDs4rza2tIVKEmSpIrqdAF5haQEp5wCv/51NrHiiiugptMtwkuSJHVopruWSim7GO/Xv4bvftdwLEmS1EGZ8Foil4Njj4VLLoETT4Q//MFwLEmS1EGZ8panoeGTdoqf/AR+8xuIqHRVkiRJaiP2IC/LwoXZ1tHXXQdnnQVnnGE4liRJ6uA6RUAu3F66xZuALFgA3/52tvnHeefBqaeWp1hJkiRVVIcNyIWhuKYGFuYSKcGU+rkMHz1p2aPePvoom298551ZS8VJJ5WvcEmSJFVUhw3Iw0dPWrxjXkPDJ4/nUrbddLM+/DDbGW/sWPj97+F732v7YiVJktRudNiAPLV+Hrm09OM1kW033aT582HvveGhh7KL8o4+um2LlCRJUrvTYadY9KnrRk3+eroAutTGsreXnjsXdtstC8ejRhmOJUmSOqkOu4I8clj/ll+YN2cODBkCTzwB114LhxxS3mIlSZLUbnTYgNy7Z9dlX4i3yDvvwC67wFNPwY03wre+1fbFSZIkqd3qsAG5RWbNgsGD4fnn4dZbYa+9Kl2RJEmSKqzDBORWzzp++20YNAhefhnuugt23bV8xUqSJKnd6jAX6S0a69aQ0uJZx816800YOBBeeQXuucdwLEmSpMU6zApy4Vi3Zc46njEDdtgB3ngD7rsPBrSgT1mSJEmdRodZQS4c69bsrOPXXssC8X//Cw8+aDiWJEnSUjpMQB45rD9967o3P+t4yhT45jdh9uxs1vF221WmUEmSJLVrHabFYplj3V56CXbcMdtGevx4+PKXy1ucJEmSqkaHCcjNevHFrOc4JXjkEdhii0pXJEmSpHasw7RYNOnZZ7NpFTU1MGGC4ViSJEnL1XED8j/+AdtvD6usAhMnwuc/X+mKJEmSVAU6ZkB+4oms53j11eHRR2HjjStdkSRJkqpExwvIjz2WbR+99tpZON5oo0pXJEmSpCrSsQLyI4/AzjtDr15ZW0Xv3pWuSJIkSVWm7AE5InaJiJci4pWI+EkTz68SETfln/9bRGzYojd+8EEYMgQ23DC7IK9Xr5LWLUmSpM6hrAE5ImqBS4Fdgc2BgyNi80aHDQfeSSl9Dvgt8MvlvW/N++/DHnvApptm4XiddUpcuSRJkjqLcq8gbwW8klKamlL6GLgR2KvRMXsBo/O3bwV2jIhY1puuPH16NsJt/Hioqyt50ZIkSeo8yr1RSC9gesH9GcDWzR2TUloYEe8BPYGZhQdFxNHA0fm7H8U//vE8PXu2SdHt1No0+jPp4Dzfjq+znfOmlS5AktS0qt1JL6U0AhgBEBFPppS+VuGSyqqznbPn2/F1tnOOiCcrXYMkqWnlbrF4HVi/4P56+ceaPCYiVgLWBGaVpTpJkiR1euUOyJOAjSNio4hYGTgIGNPomDHAsPztbwHjU0qpjDVKkiSpEytri0W+p/h7wANALTAqpfRCRJwDPJlSGgOMBK6JiFeA2WQhenlGtFnR7VdnO2fPt+PrbOfc2c5XkqpGuDgrSZIkfaJj7aQnSZIkrSADsiRJklSgqgJym21T3U614HxPiogXI+LZiHg4IjaoRJ2ltLxzLjhuv4hIEVHVY8Facr4RcUD+5/xCRFxf7hpLqQV/p3tHxCMR8XT+7/WQStRZKhExKiLejojnm3k+IuKS/J/HsxHxlXLXKElaWtUE5Lbaprq9auH5Pg18LaX0RbJdBy8sb5Wl1cJzJiJWB04A/lbeCkurJecbERsDpwJfTyl9AfhB2QstkRb+fE8Dbk4pfZnsAt0/lrfKkrsa2GUZz+8KbJz/Ohq4rAw1SZKWo2oCMm20TXU7ttzzTSk9klKan7/7BNlc6WrWkp8xwLlk//j5sJzFtYGWnO9RwKUppXcAUkpvl7nGUmrJ+SZgjfztNYE3ylhfyaWUHiWbxtOcvYA/p8wTwFoR8dnyVCdJak41BeSmtqnu1dwxKaWFwKJtqqtRS8630HDgvjatqO0t95zzv4JeP6V0bzkLayMt+RlvAmwSEX+NiCciYlmrke1dS873LODQiJgBjAWOL09pFdPa/84lSWVQtVtN6xMRcSjwNWBApWtpSxFRA1wEHF7hUsppJbJfvw8k+w3BoxGxRUrp3YpW1XYOBq5OKf0mIrYlm4neL6WUq3RhkqTOo5pWkDvbNtUtOV8iYhDwM2DPlNJHZaqtrSzvnFcH+gETIuJVYBtgTBVfqNeSn/EMYExKaUFK6T/Ay2SBuRq15HyHAzcDpJT+D1gVWLss1VVGi/47lySVVzUF5M62TfVyzzcivgxcQRaOq7k3dZFlnnNK6b2U0toppQ1TShuS9V3vmVJ6sjLlrrCW/J2+k2z1mIhYm6zlYmo5iyyhlpzvNGBHgIj4PFlAri9rleU1Bhian2axDfBeSunNShclSZ1d1bRYtOE21e1SC8/3V0B34Jb8tYjTUkp7VqzoFdTCc+4wWni+DwA7RcSLQAPwo5RSVf5WpIXnezLwp4g4keyCvcOr+B+5RMQNZP/AWTvfV30m0AUgpXQ5WZ/1EOAVYD5wRGUqlSQVcqtpSZIkqUA1tVhIkiRJbc6ALEmSJBUwIEuSJEkFDMiSJElSAQOyJEmSVMCArFaJiJ4R8c/811sR8Xr+9rv5UWTlrGXLiBhScH/PiPhJke/1an7OcFOPPxcRz0bEgxGxTinedxnHnxURP2zi8XUj4tb87YERcU/+9uJzjoi9I2Lzgteck99IRpIktYIBWa2SUpqVUtoypbQlcDnw2/ztLYGSbwec3xGxOVuSzZBdVNuYlNIFpa4B2D6l9EXgSeCnjZ+MiNo2+MwlpP9n787joyqvP45/TkIwbAqyiAZQQWuqtm5Ya2sRF1q1bv11RWtppUKrtO5braBQW62Kuy24VESL1VoVra2ismgriqhVwVgLIqBoEgwQCJBkcn5/3Bu4CZNkQmZL5vt+vfKamTtz7z13Jrlz8tzzPI/7x+7+nTjLo8d8KrBv5Lnx7v5cqmMTERHpaJQgSzLlm9ldZrYobG3tAmBmQ8zsn2a20MxeNLPicPkeZvZC2Dr7vJkNCpffZ2Z/NLNXgN+bWTczu9fMXjWzN8zslHAmtonA98MW7O+b2Y/N7PZwG7uY2WNm9p/w5yvh8sfDOBaZ2ZhWHt88YK9wO+vN7EYz+w9wuJkdE8b2dhjrDpH1LgmXv2pm9eufZGavhOs8Z2a7RF5/gJm9bGbvm9lZkffqncYB1R9zeHwnA9eH78eQ8H38Tvi6Q8xsbnjsz5jZruHyX5rZ4vAzeKiV74eIiEiHpARZkmlv4A533w9YA3w7XD4V+IW7HwJcBNwZLr8NmBa2zj4I3BrZ1gDgK+5+AXAFwbThXwKOIphBsAAYD/wlbNH+S6NYbgXmuvsBwMHAonD5mWEcQ4FfmlnvVhzficDb4f1uwCvh9l8D7gO+7+5fIJih8ueR9daGy28Hbg6XvQR82d0PAh4CLom8/ovA0cDhwHgz262lwNz93wTTFl8cvh9L6p8zswKC9/o74bHfC1wTPn0ZcFD4GfwsoXdBRESkg2s3U01Lu/CBu78Z3l8I7GFm3YGvsHU6bID61tXDgf8L708Hfh/Z1iPuHgvvfx04OVKbWwgMaiGWo4EfAYTbWRsuXkKm3AAAIABJREFU/6WZfSu8P5AgqW9p6ubZZhYD3gJ+HS6LAY+G9/chOPb/ho+nAeewNRmeEbm9Kbw/APhL2JLbGfggsr8n3H0jsNHMZgNfAt5k++0D7A/MCj+DfGBV+NxbwINm9jjweBv2ISIi0mEoQZZk2hy5HwO6EFylWBPWKbfGhsh9A77t7u9FX2Bmh7Vmg2Y2HDgWONzdq8xsDkGy3ZKj3L280bJNkQS+JR7n/m3AZHefGcZ1VROvj/e4tQxY5O6Hx3num8Aw4CTgCjP7grvXtnF/IiIi7ZpKLCSl3H0d8IGZfRfAAgeET/8b+EF4/3TgxSY28wzwCwubP83soHB5JdCjiXWeJyxzMLN8M9sJ2AmoCJPjYuDL239kDbxH0Fq+V/j4DGBu5PnvR25fDu/vBHwU3h/VaHunmFlhWP4xHFiQYBxNvR/vAX3N7HAISi7MbD8zywMGuvts4NIwpu4J7ktERKTDUoIs6XA6MDrs0LYIOCVc/gvgJ2b2FkFSeW4T608iqDl+y8wWhY8BZgP71nfSa7TOucBRZvY2QbnHvsA/gU5m9i5wLTA/GQfn7puAnxCUkbxNMJrHHyMv6RUe47nA+eGyq8LXLwQat06/FR7bfGCSu3+cYCgPAReHHf+GROKrBr4DXBd+Bm8SlL3kAw+EMb8B3OruaxLcl4iISIdl7m29eisiIiIi0nGoBVlEREREJEIJsoiIiIhIhBJkEREREZEIJcgiIiIiIhFKkEVEREREIpQgi4iIiIhEKEEWEREREYlQgiwiIiIiEqEEWUREREQkQgmyiIiIiEiEEmQRERERkQglyCIiIiIiEUqQpV0xszlm9tM07evnZvapma03s95p2uegcH/5TTx/lZk9kKR9uZntlYxtiUhymNkiMxvexHPDzWxlkvaTtnNpa4Tnv8Ep3H7SzqHp3Pb2yNbPuL1QgiwJM7Mfm9nbZlZlZp+Y2Z1mtlML6+xgZr8zs+VmttHM3jezi8zMmllnWfja9WGCep+ZdW9lrHuECWCn1qwXWb8AmAx83d27u/vqJra/PvxZZmaXbc++otx9ebi/WFu3JSKp0+g89cn2nKficff93H1OEkLMWmHitily/lxvZocDhOe/peHr7jOz3zRad5mZHZuCmIrMrNbMhsR57jEzuyHZ+0yGbPi+7KiUIEtCzOxC4DrgYmAn4MvAHsCzYTLZlEeAY4ATgB7AGcBY4MYWdnmSu3cHDgaGAr9uS/zbYRegEFjUwut6hnF+B7jSzEakPDIRyRb156kDgYOAyzMcT3syLkyG639ezmQw7v4R8DzBd9QWZrYzwffXtEzElaBMf192SEqQpUVmtiNwNfALd/+nu9e4+zLge8Bg4LQm1jsG+DrwbXd/x91r3X0+8EPg3EQuo4UnrX8A+8fZfp6Z/drMPjSzUjO7P9KiPS+8XRNtnWi0/g5mdrOZfRz+3Bwu+xzwXmT9FxKI8zWCZPrAyPZ3M7NHzazMzD4ws19GnvuSmb1mZuvC//onh8sb/CdvZnua2VwzqzSzWUCfyDa2udwabV0J9/Gyma0xs1VmdruZdY4Xv5mdYGaLw/18ZGYXtXTMIhJw90+AZ2j497+Dmd0QXj371Mz+aGZdwuf6mNlT4d/mZ2b2opnlhc9F/4a7hC2CFWa2GDg0ul9rVCYVbXE1s17hPsrC9Z8yswHx4jezvcLzzFozKzezvzTxun+Y2bhGy/5jZv9ngZvCc/E6C642bnPebkn9MZnZGOB04JLwHP6kmU0HBgFPhssuCdf5spn9O3w//2OREpXmzqFxTKNRggz8AFjs7m+H27vFzFaEx7jQzL7WxHG0dH7OM7PLzGyJma02s4ctSMYxs0IzeyBcvsbMFpjZLi29d6n8vsxFSpAlEV8haE39W3Shu68HniZIguMZAbzi7isarfcKsJKgZblZZjaQ4L/3N+I8/ePw5yiCRL07cHv43LDwtmczrRNXELSEHwgcAHwJ+LW7/xfYL7L+0QnE+WWCk9L/wsd5wJPAf4AigmM9z8y+Ea5yC3CLu+8IDAEebmLTfwYWEpzUJwGjWoolIgacH657eBjD2U289h5grLv3CI+jxX8KRCQQJp7HE/79h64FPkdwftmL4DwwPnzuQoJzYF+Cq1W/AjzOpicQnB+GAN+gdX//ecCfgN0JksqNbD0/NjYJeBboBQwAbmvidTOAkfUPzGzfcPt/J/geGEZwzDsRNKCsjrONhLj7VOBB4PfhOfwkdz8DWE7YYuruvzezonD/vwF2Bi4CHjWzvuGmWnMOfQzoY2ZHRJadQcPW4wUEn+nO4bYfMbPC7TjEXwCnAkcCuwEVwB3hc6MI3sOBQG/gZwSfX7NS/H2Zc5QgSyL6AOXuXhvnuVUEJ/mm1lvVxHPNrQfwuJmtAV4C5gK/jfOa04HJ7r40TNYvB35giddRnQ5MdPdSdy8jaCVv3HrQknIz2wi8DNwJPB4uPxTo6+4T3b06rKm7i6A1AqAG2MvM+rj7+rBlvQEzGxRu50p33+zu8wiS7oS4+0J3nx+23C8DphCcjOOpAfY1sx3dvcLdX090PyI57HEzqwRWAKUECS1mZsAY4Hx3/8zdKwnOYdG//12B3cMrci+6e7wE+XvANeE2VgC3JhqYu69290fdvSrc/zU0//e/O7Cbu29y95eaeN1jwIFmtnv4+HTgb+6+OdxGD6AYMHd/192bOv8D3Bq2jq4xs7acb34IPO3uT7t7nbvPAl4DTmjtOdTdNxKUBf4IwMz2Bg4hSITrX/NA+N7WuvuNwA7APtsR98+AK9x9Zfj+XQV8J/z+qiFIjPdy91h4Ll/XzLbS8X2Zc5QgSyLKCf6rjveHtGv4fH3v4/qfQeHyXZvY5pb1mnCqu/d0993d/ezwxNXYbsCHkccfAp0IWmQSEW/93RJct14fgv/ELwSGA/X12LsDu0W+ANYQtBLVxzaaoKWlJLx8dmIT8VW4+4ZGMSbEzD4XXlb9xMzWEZw0m7q8+G2ClocPw8uRusQm0rJTw6suwwkSw/q/r75AV2Bh5O//n2xtFLieoLX5WTNbak138N2NIPmu15q//65mNiW8pL6O4DJ6T4s/Qs4lgAGvWjCKxpnxthkm2n9na6I/kqCVF3d/gaBF8g6g1MymWlCe15Rfhuf4nu5+cKLHFcfuwHcbnWuPIPiO2Z5z6LRwe4UEDSbPuHtp/ZMWdDJ/14JylDUELb3NlW00F/djkZjfJbjqtwswnaBk5yELyv9+b8339UnH92XOUYIsiXgZ2Az8X3ShBT1ljwfmwJbex/U/y4HngMPCyz7R9Q4juOQ3t41xfUxwkqk3CKgFPiX+5cpE1v+4tUGE/+FPBjaxtYRhBfBB5Augp7v3cPcTwnXed/eRQD+Czo9/NbNujTa9CujVaPmgyP0NBF/CAIRffNFW+T8AJcDeYSnHrwi+BOMdwwJ3PyWM53GaLvkQkUbcfS5wH1A/0kE5wSXx/SJ//zuFHalw90p3v9DdBwMnAxdY0GejsVUEl9nrDWr0fBWRcwDQP3L/QoKWzcPCv//6y+jbnAPc/RN3P8vddyPoRH2nNT0E5AxgZPhPdCEwO7KdW939EGBfggaAi5vYRqLinccbL1sBTG90ru3m7tfS8jk0npeAz4BTCFqnt5RXhPXGlxC07Pdy957AWuKfV1s6P68Ajm8Ud6G7fxReVbja3fclKHE8kbBVuw3a+n2Zc5QgS4vcfS1B+cFtZnacmRWY2R4ESVQ5YQtCnPWeI+gV/KiZ7Wdm+WGt7gPA/e7+Xrz1WmEGcH7YCaM7QQvpX8JSkDKgjqDWqrn1f21mfc2sD0F9YFvGsLyWoENJIfAqUGlml1rQ0SbfzPY3s0MBzOyHZtbX3euANeH6ddGNufuHBJcKrzazzmFd3EmRl/wXKDSzb4atC78muNxXrwewDlhvZsXAz+MFHW77dDPbyd1rwnXq4r1WRJp0MzDCzA4I/67vAm4ys36wZRixb4T3T7SgI5oRJFgx4v/NPQxcbkGHuwEEdatRbwKnheeX42hYQtGDIElfY0HnrwlNBW5m37WtHfgqCBKmps4BTxMkWhMJzrd14TYONbPDwnPRBoIGg7aeRz5l23N442UPACeZ2TfC96HQgg5yAxI4h24jLHW5n6DhoicNSzJ6ECSVZUAnMxsPNNVK3tL5+Y/ANfXlKuH30Cnh/aPM7AthUr2OoOSire9lW78vc44SZEmIu/+eoAXyBqAS+IDgv+NjG12+auzbBC0M/yQ4Yb4c3h+ThLDuJbgUNS+MZxPhF4i7VxHU3P0rvIT15Tjr/4bg5PkW8Dbwerhse/2d4MvlLA/GMT6RoDPHBwT/SNxNcDkO4DhgkZmtJ+iw94MmLoudBhxG0KIxgeDETXiMawlarO8GPiL4Uor2mr4oXL+S4Ms6bs/00BnAsvBS7M8I6tVEJEEe9GO4n60d8S4lKKOYH/5dPcfWWtW9w8frCfsvuPtstnU1waXwDwg60U1v9Py5BAnfGoK/2ccjz90MdCE498wnOO825VDglfB8NBM418OxiOMc52aCDtvHEqnNJUgU7yI4B35I0EHv+mb2mYh7CPpGrDGz+mP7HUHDxhozuyiszT6F4PupjKBl9mK25jdNnkObcT9BC+tfwuOt9wzB+/hfgmPcRMMSmC0SOD/fQvBeP2tBHfv8ME4IrgT8lSA5fpfgamvjz7612vp9mXMsfr8AkeaZ2U8IWhC+GpZTJLreNIJaqG+6e3Wq4hMRERHZXkqQZbuZ2RlAjbs/1Ip1CoALgLkeZ+QGERERkUxTgiwiksPCmvl5BPWRnYC/uvsEM9sTeIhguKmFwBm66iMiuSJjNchhIf2rFsx6s8jMrg6X72lmr5jZ/8zsL9bEzF8iIpIUm4Gj3f0Agpr548IaxOuAm9x9L4K60tEZjFFEJK0y2UlPJ2URkQzzwPrwYUH448DRBB2FIBjq6tQMhCcikhEZm0ElHEqlqZPyaeHyaQSzy/yhuW316dPH99hjj5TEWa+6uprOnXOzMVvHrmPPNek49oULF5a7e3OzSaZNOJzUQoIpke8AlgBrfOvsmSsJpkqOt+4YwlFpunbtesiee+6Z+oAjYrEY+fnx5r7InGyMCbIzrmyMCbIzLsWUuNbEtWjRorjn4oxOMZisk3JRUREPPNCW4WtbVl5eTp8+2zNZTvunY9ex55p0HPvnP//5hGdFS7VwWMIDzawnwXTCxa1YdyowFWDo0KH+2muvpSbIJpSUlFBcnHC4aZGNMUF2xpWNMUF2xqWYEteauMws7rk4owlyMk/Kqf6AsvWXIB107Dr2XJOrx+7ua8xsNnA4wbTEncIGiwEEY7mKiOSErJgoxN3XEEwmseWkHD6lk7KISAqFM3j1DO93AUYQTE4wG/hO+LJRwBOZiVBEJP0yOYqFTsoiIpm3KzDbzN4CFgCz3P0pgpngLjCz/xEM9XZPBmMUEUmrTJZY7ApMC+uQ84CH3f0pM1sMPGRmvwHeQCdlEZGUcfe3gIPiLF8KfCn9EYmIZF4mR7HQSVlEREREsk5W1CCLiIiIiGQLJcgiIiIiIhFKkEVEREREIjI6DrKIiIiISEvmlJQyZd5SVlRUMbBXV8YOG8zw4n4p258SZBGRFFi+uorR0xawtGwDg/t2455RhzKod9dMhyUi0u7MKSll/MxFFOQbPbsUUFq5ifEzFzERUpYkq8RCRCQFRk9bwJKy9cTcWVK2ntHTFmQ6JBGRdmnKvKUU5BtdO3fCLLgtyDemzFuasn0qQRYRSYGlZRuo8+B+nQePRUSk9VZUVNGlIL/Bsi4F+aysqErZPpUgi4ikwOC+3ciz4H6eBY9FRKT1BvbqysaaWINlG2tiDOiVurI1JcgiIilwz6hDGdK3O/lmDOnbnXtGHZrpkERE2qWxwwZTE3OqqmtxD25rYs7YYYNTtk910hMRSYFBvbsy64IjMx2GiEi7N7y4HxMJapFXVlQxQKNYiIiIiEiuG17cL6UJcWMqsRARERERiVCCLCIiIiISoQRZRERERCRCCbKIiIiISIQSZBERERGRCCXIIiIiIiIRSpBFRERERCKUIIuIiIiIRChBFhERERGJUIIsIiIiIhKhBFlEREREJEIJsoiIiIhIhBJkEREREZEIJcgiIiIiIhFKkEVEcpiZDTSz2Wa22MwWmdm54fKrzOwjM3sz/Dkh07GKiKRLp0wHICIiGVULXOjur5tZD2Chmc0Kn7vJ3W/IYGwiIhmhBFlEJIe5+ypgVXi/0szeBYoyG5WISGYpQRYREQDMbA/gIOAV4KvAODP7EfAaQStzRZx1xgBjAIqKiigpKUlbvADl5eVp32dLsjEmyM64sjEmyM64FFPikhGXEmQREcHMugOPAue5+zoz+wMwCfDw9kbgzMbruftUYCrA0KFDvbi4OH1BAyUlJaR7ny3JxpggO+PKxpggO+NSTIlLRlzqpCcikuPMrIAgOX7Q3f8G4O6funvM3euAu4AvZTJGEZF0UoIsIpLDzMyAe4B33X1yZPmukZd9C3gn3bGJiGSKSixERHLbV4EzgLfN7M1w2a+AkWZ2IEGJxTJgbGbCExFJPyXIIiI5zN1fAizOU0+nOxYRkWyhEgsRERERkQglyCIiIiIiEUqQRUREREQilCCLiIiIiEQoQRYRERERiVCCLCIiIiISoQRZRERERCRCCbKIiIiISIQSZBERERGRCCXIIiIiIiIRSpBFRERERCKUIIuIiIiIRChBFhERERGJUIIsIiIiIhKhBFlEREREJEIJsoiIiIhIhBJkEREREZEIJcgiIiIiIhFKkEVEREREIpQgi4iIiIhEKEEWEREREYnIWIJsZgPNbLaZLTazRWZ2brh8ZzObZWbvh7e9MhWjiIiIiOSeTLYg1wIXuvu+wJeBc8xsX+Ay4Hl33xt4PnwsIiIiIpIWGUuQ3X2Vu78e3q8E3gWKgFOAaeHLpgGnZiZCEREREclFnTIdAICZ7QEcBLwC7OLuq8KnPgF2aWKdMcAYgKKiIkpKSlIaY3l5ecr3ka107Dr2XJPLxy4iIlmQIJtZd+BR4Dx3X2dmW55zdzczj7eeu08FpgIMHTrUi4uLUxpnSUkJqd5HttKx69hzTS4fu4iIZHgUCzMrIEiOH3T3v4WLPzWzXcPndwVKMxWfiEhHpw7TIiLbyuQoFgbcA7zr7pMjT80ERoX3RwFPpDs2EZEcog7TIiKNZLIF+avAGcDRZvZm+HMCcC0wwszeB44NH4uISAqow7SIyLYyVoPs7i8B1sTTx6QzFhERaR8dphvLxg6V2RgTZGdc2RgTZGdciilxyYgr4530REQk89pLh+nGsrFDZTbGBNkZVzbGBNkZl2JKXDLi0lTTIiI5Th2mRUQaUoIsIpLD1GFaRGRbKrEQEclt9R2m3zazN8NlvyLoIP2wmY0GPgS+l6H4RETSTgmyiEgOU4dpEZFtqcRCRERERCRCCbKIiIiISIQSZBERERGRCCXIIiIiIiIRSpBFRERERCKUIIuIiIiIRGiYNxGRRlZV1vCLyXNZWraBwX27cc+oQxnUu2umwxIRkTRRC7KI5ITlq6sYMXkuQy5/mhGT57J8dVWTr53w3CqWlK0n5s6SsvWMnrYgjZGKiEimKUEWkZwwetqChJPeletqqPPgfp3D0rINaYpSRESygRJkEckJS8s2JJz0DtixgLxwbrk8g8F9u6UhQhERyRZKkEUkJwzu2y3hpPfqY3dlSN/u5JsxpG937hl1aJqiFBGRbKBOeiKSE+4ZdSijpy1o0PGuKbv2KGDWBUemMToREckmSpBFJCcM6t1VSa+IbLc5JaVMmbeUFRVVDOzVlbHDBjO8uF+mw5IUUYIsIiIi0ow5JaWMn7mIgnyjZ5cCSis3MX7mIiaCkuQ4OsI/E6pBFhEREWnGlHlLKcg3unbuhFlwW5BvTJm3NNOhZZ36fyZKKzc1+GdiTklppkNrFSXIIiIiIs1YUVFFl4L8Bsu6FOSzsqLp8dRzVUf5Z0IJsoiIiEgzBvbqysaaWINlG2tiDOilGTYb6yj/TChBFhEREWnG2GGDqYk5VdW1uAe3NTFn7LDBmQ4t63SUfyaUIIuIiIg0Y3hxPyaevB/9ehSydmMN/XoUMvHk/dpdx7N06Cj/TGgUCxEREZEWDC/up4Q4AcOL+zGRoBZ5ZUUVA9rpKBZKkEVEREQkaTrCPxMqsRARERERiVCCLCIiIiISoQRZRERERCRCCbKIiIiISIQSZBGRHGZm95pZqZm9E1l2lZl9ZGZvhj8nZDJGEZF0U4IsIpLb7gOOi7P8Jnc/MPx5Os0xiYhklBJkEZEc5u7zgM8yHYeISDZRgiwikirPPAOXXJLpKLbXODN7KyzB6JXpYERE0qnFiULMbAiw0t03m9lw4IvA/e6+JtXBiYi0S8uXw/nnw9/+Bp/7HFxxBey0U6ajao0/AJMAD29vBM6M90IzGwOMASgqKqKkpCRdMQJQXl6e9n22JBtjguyMKxtjguyMSzElLhlxJTKT3qPAUDPbC5gKPAH8GVCnDRGRqOpqmDwZJk0Cd7jmGrjwQthhh0xH1iru/mn9fTO7C3iqmddOJfhuYOjQoV5cXJz6ACNKSkpI9z5bko0xQXbGlY0xQXbGpZgSl4y4EkmQ69y91sy+Bdzm7reZ2Rtt2quISEfz3HMwbhy89x6ceircfDPsvnumo9ouZraru68KH34LeKe514uIdDSJJMg1ZjYSGAWcFC4rSF1IIiLtyMqVQSvxww/DkCHw97/DCe3nApuZzQCGA33MbCUwARhuZgcSlFgsA8ZmLEARkQxIJEH+CfAz4Bp3/8DM9gSmpzYsEZEsV1MDt9wCV10FsRhMnAgXXwyFhZmOrFXcfWScxfekPRARkSzSYoLs7ovN7FJgUPj4A+C6VAcmIpK15syBc86BxYvhxBODRHnw4ExHJSIiSdLiMG9mdhLwJvDP8PGBZjYz1YGJiGSdVavg9NPhqKOgqgpmzoQnn1RyLCLSwSQyDvJVwJeANQDu/iagbwMRyR21tUGnu332gb/+Fa68Mmg9PumkltcVEZF2J6FOeu6+1syiy+pSFI+ISHZ56SU4+2x4+2047ji47TbYa69MRyUiIimUSAvyIjM7Dcg3s73N7Dbg3ymOS0Qksz79FEaNgq99DdauDSb9ePppJcciIjkgkQT5F8B+wGZgBrAOOC+VQYmIZExtLT0ffDAop5gxA371q6Cc4lvfgoZX0kREpINKZBSLKuCK8EdEpON6+WU4+2z6v/kmHHss3H57kCiLiEhOaTJBNrMnCQaJj8vdT05JRCIi6VZWBpddBvfeC0VFfHTTTRSde65ajEVEclRzLcg3pC0KEZFMiMXgrruCMorKSrjkErjySipXrlRyLCKSw5pMkN19bjoDERFJq1dfDUanWLgwGNf49tth330zHZWIiGSB5kosHnb375nZ28QptXD3L6Y0MhGRVFi9Gi6/HO6+G/r3hz//GX7wA7UYi4jIFs2VWJwb3p6YjkBERFKqri6oMb7sMlizBs47D666CnbcMdORiYhIlmlymDd3XxXePdvdP4z+AGenJzwRkSRYuBAOPxzOOisoo3jjDZg8WcmxiIjElcg4yCPiLDs+2YGIiCRdRQWccw4ceigsWwb33w9z58IXvpDpyEREJIs1V4P8c4KW4sFm9lbkqR7Av1IdmIhIayxfXcXoaQtYWraBIb27MKPwv/SeeGVQczxuHEycCD17ZjpMERFpB5qrQf4z8A/gd8BlkeWV7v5ZSqMSEWml0dMWsKRsPcWfLGXi9D/Q+6N3g7KKZ5+FAw/MdHgiItKONFeDvNbdl7n7SGAlUEMwmkV3MxuUjJ2b2b1mVmpm70SW7Wxms8zs/fC2VzL2JSLt3/LVVYyYPJchlz/NiMlzWb66astzpStKuXLWFJ6cdh57fvYRl5xwHrz0UodKjs3sq2bWLbz/QzObbGa7ZzouEZGOpsUaZDMbB3wKzAL+Hv48laT93wcc12jZZcDz7r438DwNW69FJIfVtxLH3FlStp7R0xaAO0yfzux7xjJq4VP8+cDjOHbMFN445lTIS6SbRbvyB6DKzA4ALgSWAPdnNiQRkY6nuRKLeucB+7j76mTv3N3nmdkejRafAgwP708D5gCXJnvfItL+LC3bQF04KnudQ6fFi2D4eJg3j24HD2XcsLN4pnAAg/t2455Rh2Y22NSodXc3s1OA2939HjMbnemgREQ6mkQS5BXA2lQHErFLZIi5T4Bd4r3IzMYAYwCKioooKSlJaVDl5eUp30e20rHr2LNF0Y6dWLG2hq6bqzj/X3/mxwtnEuvRg9Krr2btd77DL/Py+GX42qqy5ZSUbd9+svHYQ5VmdjnwQ2CYmeUBBRmOSUSkw0kkQV4KzDGzvwOb6xe6++SURbV1H25m28ziFz43FZgKMHToUC8uLk5pLCUlJaR6H9lKx65jzxYPnDWQ6edfx+jH76Tfhs+o+uGP6X7T9ezauze7JnE/2Xjsoe8DpwGj3f2TsD/I9RmOSUSkw0kkQV4e/nQOf1LtUzPb1d1XmdmuQGka9iki2e7ddxk0bhxXvPACHHww3Pl3uh92WKajSit3/wSYHHm8HNUgi4gkXYsJsrtfnY5AImYCo4Brw9sn0rx/Eckm69fDpEnBzHfdu8Odd8KYMZCfn+nI0sbMKglGEdrmKYKLbZoSUEQkiVpMkM2sL3AJsB9QWL/c3Y9u687NbAZBh7w+ZrYSmECQGD8cdjz5EPheW/cjIu3L8tVVjL7vVT730rNMmH03/daWwZlnwrXXQt++mQ4v7dy9R6ZjSIU5JaVMmbeUFRVVDOzVlbHDBjO8uF+mwxIRSajE4kHgL8CJwM8IWnW3s+tLQ+EYy/Eck4zti0j7NP6Gv3HlXyYz7IM3WNxvT64ZN4Fbbjsn02GxnZYwAAAgAElEQVRlDTPrR8MGi+UZDGe7zCkpZfzMRRTkGz27FFBauYnxMxcxEZQki0jGJZIg9w6HEjrX3ecCc81sQaoDE5HcEJ0i+vM75fNg6fNMufUmNud35qpjxjD94G9CfiduyXSgWcDMTgZuBHYj6J+xO/AuwRW+dmXKvKUU5BtdOwdfQ107d6KqupYp85YqQRaRjEskQa4Jb1eZ2TeBj4GdUxeSiOSS0dMWsKS0kmP/O58Jz09lp3VlzDrk61xx+BmUdutFnsGQvt0yHWa2mAR8GXjO3Q8ys6MIhnzbbmZ2L8EVwlJ33z9ctjPBlcM9gGXA99y9oi37aWxFRRU9uzQcoa5LQT4rK6qaWEMkd8QrP+qf6aByTCLTTP3GzHYimLXpIuBu4PyURiUiHVbj6aJr/vs+dz9yNVMfu4bKzl35wWnXsc8zj7HTngPJN2NI3+4dddKP7VETTtqUZ2Z57j4bGNrGbd5HBmY0HdirKxtrYg2WbayJMaBX12TvSqRdqS8/Kq3c1KD8aFn5hkyHllMSGcWiflrptcBRqQ1HRDq6+umiC6o3c9LfHmDs/L9Snd+JSUf/lOmHnMju/XsyqHdXZl1wZKZDzUZrzKw7MA940MxKgTZ9a2ZqRtOxwwYzfuYiqqpr6VKQz8aaGDUxZ+ywwcncjUi701T50cIPKzjuiAwHl0MSGcXiT8QZXsjdz0xJRCLSYUTri+unf15atoHh77/KVc9NYdDaT3li3yOZ8Z1fsKC6S0eeIjpZTgE2EVzFOx3YCZiYgv0kNKNpWwwv7sdEgmRgZUUVAzSKhQjQdPnRuk0bMxRRbkqkBvmpyP1C4FsEdcgiIs2qby2uc1hStp4rJs/kgZm3cfjif/Pf3oMYOfK3lA/9ilqLE+Tu0dbiaWnaZ5MzmgKY2RhgDEBRUVGrpujuD0wY1hPoGS75jJKSz1oVXzZOC56NMUF2xpWNMUFm4zp+QB0bqjdQkL+1CrYmVsee3T3r3quO/PklUmLxaPRxOHbxS23aq4jkhKVlG6hz2KG2mjGvPMo58x+h8w4FTD3xZ9z4+eMZ1H8ntRi3QqMJQzoDBcCGFEwUkvCMpu4+FZgKMHToUE/3FN3ZOC14NsYE2RlXNsYEmY3rq+y8ZQjEaPnRsL13zLr3qiN/fom0IDe2N6BrYCLSosF9u1H0ylwmzPoje1asYu4BwznyqemMGTAgaHKUVolOGGJmRlBy8eUU7EozmopkSFPlR/1p3dUVaZtEapDrWywsvP2EJHfWEJEOaPlynnhhMl3/PpOlOxdx2ZjrOfu3Z0NvjVKQDO7uwONmNoE2jDKhGU1Fss/w4n7b1OO3tvwokzrCLJmJlFh0yClORSRFqqvhxhth0iS6Avz2twy+4AKu3WGHTEfW7pnZ/0Ue5hEM8bapLdvUjKYikkwdZZbMZhNkM+tC0FN633DRa8Bf3b061YGJSDv03HMwbhy89x5861tw880waFCmo+pITorcryWYxOOUzIQiIu1Julp1O8osmU0myGb2BYI6tHnAwnDxN4DzzWwEcJG7/zr1IYpI1lu5Ei64AB55BIYMgaefhuOPz3RUHY67/yTTMYhI+5POVt2OMktmcy3ItwJj3H1WdKGZHQu8AyxKZWAi0g5UV8Mtt8DVV0MsBhMnwsUXQ2FhpiPrUMzsNuKMR1/P3X+ZxnBEpJ1JZ6vuwF5dKa3ctGVf0D5nyWxuquldGyfHAO7+HFBDMB6yiOSq2bPhwAPhkkvgmGNg8WK48kolx6nxGsGVvELgYOD98OdAguHeRKQdmVNSysip8zniuhcYOXU+c0qaHEkxKVZUVNGlIL/BslS16o4dNpiamFNVXYt7cNseZ8lsLkHOM7NtetWYWSFQ4+7tq61cRJLj44/htNPg6KNh0yZ48kl44gnYc89MR9Zhufs0d58GfBEY7u63ufttBB3pDsxsdCLSGvXlDqWVmxqUO6QySR7Yqysba2INlqWqVXd4cT8mnrwf/XoUsnZjDf16FDLx5P3aVf0xNF9icT/wqJmd4+4fApjZHgSlF9NTH5qIZJWaGrj9dpgwISitmDABLr2U5VXO6Mlzt0wnPemU/bnyiXcaTC89SEO7JUsvYEfYMiBq93CZiKRRWzq8ZaIT29hhgxk/cxFV1bUNJh9JVatuvGHq2psmW5Dd/TfAP4EXzazczMqBucAsd5+UrgBFJAvMmwcHHxx0xDviCHjnHbjqKujSZct00jF3lpSt54x7X2nwePS0BZmOviO5FnjDzO4zs2nA68BvMxyTSE5pawtwOssd6nWUVt10anaYN3e/HbjdzHqEjyvTEpWIZIdPPglqjKdPD4Zre+wxOOUUMNvykvrppAHqHOpiW/uS1XnwvCSHu//JzP4BHBYuutTdP8lkTCK5pq0twJnqxNYRWnXTqbka5C3cvVLJsUgOqa2l1wMPwD77wEMPweWXB53wTj0VzFi+uooRk+cy5PKnycvbmi/nGRTkG3mRx4P7dsvccXQQZlYc3h4M7AasCH92C5eJSJq0tQW4o3Ri6+hanElPRHLMv/8N55zDLm++CSNGBHXHn/tcg5fUl1UELcbQKd+oq6PJGmRpswuAMcCNcZ5z4Oj0hiOSu9raAjy8uB8TCVqiV1ZUMaCdTsXc0SlBFpFAWRlcein86U8wYAAf3XwzsdN/yuj7X2Np2f8YuHMXAFZ8tpGYby2jcKCuDpb87oQty2ZdcGS6o+/Q3H1MeHtUpmMRyXXJ6PCmcofs12KJhZl1NbMrzeyu8PHeZnZi6kMTkbSIxeAPfwhaiadPD5Lkd9+l8hvfYPT9r23pcLdsdRXLVlc1SI5BZRTpZGbfre8TYma/NrO/mdlBmY5LJJeow1tuSKQF+U8EA9QfHj7+CHgEeCpVQYlImrz6Kpx9NixcCEcdBXfcwfJ+uzN66tYSiubkm6mMIr2udPdHzOwI4FjgeuCPbO20JyJpoBbgji+RBHmIu3/fzEYCuHuVWaQLu4i0P6tXBx3v7r4b+venfOp9jFy3O0vv/4C8vA+orXO8meQ4z2BI3+4qpUi/+pH+vwlMdfe/m9lvMhmQiEhHlEiCXG1mXQhKDTGzIcDmlEYlIqlRVxckxZdfDmvXsu5n4zhjwHH8Z4kDwXBssdi2q+WbNahBVqtxxnxkZlOAEcB14WynCY1GJCIiiUskQZ5AMGHIQDN7EPgq8ONUBiUiKbBwYVBO8eqrMGwY3HEH3352NUvK1je5ilqKs873gOOAG9x9jZntClyc4ZhERDqcFlse3H0W8H8ESfEMYKi7z0ltWCKSNBUVQWJ86KHw4Ydw//0wZw7sv3+DST7qGVvHMh7St7tairOIu1cBpcAR4aJa4P3MRSQi0jE12YIcZ/D5VeHtIDMb5O6vpy4sEWmzujqYNi0YlWL1avjFL2DiRNhppy0vGdy32zad8fbqFyTFVWXLKS4uzkDg0hQzmwAMBfYh6EBdADxAcGVPstScklKmzFvKiooqBmrMW0kB/Y4lX3MlFvEGpK+ngelFstmbb8I55wSTfnzlKzBrFhxwwDYvu2fUoYyetqDBpB6DegeD3ZeUpTtoScC3gIOA1wHc/eP6Yd8kO80pKWX8zEUU5Bs9uxRQWrmJ8TMXMRGUwEhS6HcsNZpMkDUgvUg7tGYNjB8Pd9wBvXsHk3786EeQt7WaavnqqiaTYsl61e7uZlbfaVoDUGe5KfOWUpBvW2Zd69q5E1XVtUyZt1TJiySFfsdSo8VOemZWCJxNUPPmwIvAH919U4pjE5FEucMDD8DFF0NpKfz85/Cb30CvXlteUp8Yv1+6tVPekrL1jJ62QJ3w2o+Hw1EseprZWcCZwN0ZjkmasaKiip5dChosq43V8fryCo647gVdDpc2i/c71qUgn5UVVRmKqGNIZBSL+4FK4Lbw8WnAdOC7qQpKRFrh7beDcooXX4QvfQmefhoODroQRFuL8/KgtlGPvDqHpWUbMhG1bAd3v8HMRgDrCOqQx4cdqSVLDezVldLKTVta9yo31fDRmk100uVwSZLGv2MAG2tiDOilK4Ntkcj4mfu7+2h3nx3+nAXsl+rARKQF69bBBRfAQQfB4sVw113w8stbkmOA0dMWbJkquia27eQfmia6/XH3We5+sbtfBDxvZqdnOiZp2thhg6mJOVXVtbg7n6wNLr7u0qMQs+CyeEG+MWXe0gxHKuk0p6SUkVPnc8R1LzBy6nzmlJRu97Ya/45VVddSE3PGDhucxIhzTyIJ8utm9uX6B2Z2GPBa6kISkWa5w4wZUFwMN98Mo0fDe+/BT3+6pdZ4+eoqRkyey/ulzU8XrWHc2gcz29HMLjez283s6xYYBywlGBtZstTw4n5MPHk/+vUoZO3GGhwo6lnIjpFL4rocnn2WlW9IWgLbWH2nutLKTQ2uImzvPhr/jvXrUcjEk/fTFYk2SqTE4hDg32a2PHw8CHjPzN4G3N2/mLLoRKShxYth3DiYPRsOOQQefzwoq2ikvuU4yoBO+UZdHeqc1/5MByqAl4GfAr8i+EhPdfc3MxmYtGx4cb8tycrIqfMprWzYhUeXw7PLnJJSZr9XSmlll5SUwaSiU130d0ySI5EE+biURyEizVu/PhjD+KaboEcPuPNOGDMG8vPjvjzeBCD14xsrKW6XBrv7FwDM7G6CcekHqbN0+zN22GDGz1xEVXUtXQry2VgT0+XwLDNl3lL2LEjdqBArKqrIN1hatp7qWB2d8/Po072zriJkmRYTZHf/0Mx6AQOjr9dEISJp4A5//Sucfz589BGceSZcey307dvsatEJQDRddIdQU3/H3WNmtjIdybGZLSPopB0Dat19aKr3mW2SPQHD8OJ+TCRIwlZWVDEgh0axiPde9s90UHGsqKhi7/7WYFkyy2C6d87nf2UbyDcj34zamPPRmk3spf4gWSWRYd4mEUwzvYRgmDfQRCEiqffee8Hsd7NmwYEHwiOPwOGHN3hJ/SgVS0rXk58fnGg7RW6pc9UZdwwHmNm68L4BXcLHRlDqtmMK932Uu5encPtZK1UTMOTi5fCm3stffWVHsm2+zoG9ulJbt6bBsmSWwZiFybeFPwAeWS5ZIZESi+8BQ9y9OtXBiAiwYQNccw3ccAN07Qq33hqMa9wp+HONN3SbA3Wx4P/XmvA2FibHajlu/9w9fi2NpJQmYEiept7LhR9WcNwRGQ6ukbHDBvOPfy1MWRlM5eZainoWUr6+ekuJRf8dd2D95tqkbF+SI5EE+R2gJ5C8Lpwisi33oNPdeefB8uXBDHi//z3ssgsQf6KPWKzpzWmMY0kCB54NZ+6b4u5TG7/AzMYAYwCKioooKSlJa4Dl5eUp2+fA/Ar27pOH2db2IXdnc+3GZveZypjaIpNxNfVe7pRXnXXvVX/gawN3YMfCWtZt2siOhQUcsnsv+vMZJSWftXn7xw+oY0N1LQX986gfTKwmVk23zp3a3e9VNsYEyYkrkQT5d8AbZvYOsLl+obuf3KY9i8hW778Pv/wl/POf8IUvwLx58LWvAfET40RojGNJgiPc/SMz6wfMMrMSd58XfUGYNE8FGDp0qBcXp/eCeUlJCana54p5ayhd03AChqrqWvr1KGx2n6mMqS0yGVdT7+XR/fOz8r0COPHrqYnrq+y8pdwk2kI98eT9KG7mykQ2/l5lY0yQnLgSGQd5GnAdcC1wY+RHRNpq40YYPx723x/+9S+YPBlef31Lcgzxh2yrZ0BBvpEX3m55bBrjWNrO3T8Kb0uBx4BtxxTswDQBQ/I09V4esnuvTIeWdhq3uH1IpAW5yt1vTXkkIrnmySeDVuNly+C004Ka41133eZl8YZsq6eh2yRVzKwbkOfuleH9rwMTMxxWWrVmxInoCA3HD6jjq+yshCeiqfeyP20vWWiPcrGjZnuTSIL8opn9DphJwxILDfMmsj0++CBIjJ96CvbdN5j0Y/jwuC9dvrqKvLxta433VmIsqbcL8FjYs74T8Gd3/2dmQ0q/RBKZxiM0bKjekNSJJTqKeO9lMmp6JXOWlW/g6qnzkzYMYjZJJEE+KLz9cmSZhnkTaa1Nm+D66+G3vw0m+Lj+ejj3XCjYOuVs42Hb6kekqFeQbzx/wXAlxpJy7r4UOCDTcbQHjUdoKMjPoyDfNNqFdGipnnEw3v6SOSZ5SxKZKOSolO1dJFf84x/BmMZLlsD3vhfUGhcVbfOy+nrjOrYO2xZVV4eSY5Ess6Kiip5dChosS+bEEiLZKNUzDkalakzy5iTSgoyZfRPYDyisX+buOVWLJrJdPvwwGLbt8cdhn33guefgmGOafHlz9cYalUIkOw3s1ZXSyoYjNCRzYont1bjFbdS+BVk3KYe0X6mecTAqE2OStziKhZn9Efg+8AuCTvPfBXZPSTQiHcXmzUEpxec/D88+C7/7Hbz1VrPJMQQJcF4TkylpVAqR7NR4hIaaWF3GR7uob3Errdy0pcVt9nulzCnRlAaSHMGMgw1bdFL1j+GKiiq6FDScLynVV2kSGebtK+7+I6DC3a8GDgc+l7KIRNq7WbPgi1+EK66A44+Hd9+Fyy6Dzp2bXGX56ipGTJ4b1B7nNRyube9+3Zl38VHMuuBIlVeIZKHGw3Z169wp48N2RVvczILb/LygLlokGcYOG0ysLj3DIA7s1ZWNNQ17q6f6Kk0iJRYbw9sqM9sNWA1sOxaVSK5buRIuuAAeeQT22iuoOz7uuIRWjdYeU+fs1U9TRIu0J9ERGoJJCjLbOS9eXXSnPFNdtCTN8OJ+bCrvx/LFNS0Og9hWY4cNZvzMRSmb/jueRBLkp8ysJ3A98DrBCBZ3pSwikfamuhpuvhkmTgzGY5s0CS66CAoLW143FK091hTRItJW8eqia+s843XR0rHs0acbM8akvrK9NWOSJ0sio1hMCu8+amZPAYXuvjZlEYm0J7NnwznnBGUUp5wCN90Ee+7Z6s0M7tstaEF2dcYT6ejSMVxVvBa3WF3Q4pbu4bIkczrSZ53uyVWarEE2s0PNrH/k8Y+Ah4FJZrZzOoITyVoffwwjR8LRRwfjGz/1VDBSRSuT48a1x5oiWqRji9d5bvzMRUnvPBdvOuOj9gmSi0T2P6eklJFT53PEdS8wcup8de5rh9L1u9ZRNdeCPAU4FsDMhgHXEoxkcSAwFfhOyqMTyTY1NXDbbTBhQnB/wgS49FLo0mW7Nte49nhIX9Uei7RHiU41nc7hqhq3uJWUlHB1AvvPxJizknyZGBqtI2luFIt8d6+fA/L7wFR3f9TdrwT2SnVgZnacmb1nZv8zs8tSvT+RFs2bBwcfDBdeCMOGwaJFcNVV250cg2qPRTqCxi11G6prm2ypy8RwVa3df7wRMOpnBsxV7bFFPdO/a+1dswmymdW3MB8DvBB5LqEJRraXmeUDdwDHA/sCI81s31TuU6RJn3wCZ5wBRx4JlZVBKcVTT8GQIdu9yfrSiphvHUNStcci7VPjhDI61XRjmRiuqrX7V2LVUHstVcj071p711yCPAOYa2ZPEAz19iKAme0FpLqT3peA/7n7UnevBh4CTknxPkUaqq2l1/TpwQx4Dz8cjGu8eHHQGc+amM2jBfWJ8bDrZ/N+6foGz6n2WKR9ak1C2XhSkVSOHRtPIvtXYtVQe21Rz/TvWnvXZEuwu19jZs8TjHn8rPuWpq48glrkVCoCVkQerwQOS/E+Rbb617/g7LPZ5a234OtfD+qOP9f2+XHqa44byzdT7bFIO9WaqaYzMVxVa/efiTFns1m8MaVT1aKezFEnMv271t41Wyrh7vPjLPtv6sJJnJmNAcYAFBUVUVJSktL9lZeXp3wf2SqXjj1/9Wr63ngjPR97jJr+/fnfpEnYt78NdXWwne/BqsoaJjy3ihVra/A4zxtQtGOnrHuPc+lzbyyXj11ar3FC2dJU0+kerqq1++8IiVUyE83W/APUFqnoHJnp37X2LKW1xG3wETAw8nhAuGwLd59KMJoGQ4cO9eLi1A5UHcyMlPrBsLNRThx7LAZTpgRlFBs2wKWXUvDrX2MrV7b62JevrgpaikvXk59v1MTipcVb7dUvKK3Itmmkc+Jzb0IuH7u0XuOEslvvzE813VapSKziJa39W15tu/aTzEQzXS3qGnUiu2RrgrwA2NvM9iRIjH8AnJbZkKTDeuUVOPtseP31YFzjO+6ABJOjxslwbcwbtBLXtZAcz7v4qKxLjEWk9bJtquls01TS+quv7Eiy/xVNdqKZrhb1dJZySMuyMkF291ozGwc8A+QD97r7ogyHJR1NeTlcfjncfTfsthvMmAHf/36THfDamgxH1U8IouRYRHJBU0nrwg8rOO6I5O4rFYlmOkoV0lXKIYnJygQZwN2fBp7OdBzSAdXVBUnx5ZfDunXBuMYTJkCPHnFfXp8YR0edaE0yHFWQb8TCCUE0YoWI5IqmktZ1mzYmfV/tNdFU58jskrUJskhKvPYanHMOvPpqMK7x7bfD/vtv87L6pPh/petxlrRpl9Hpo9ViLCK5qD5pjdU5ZZWbqY7VkW/GQXs1N9rs9mmviWZH6BzZkShBltzw2WdBB7wpU6BfP3jgATjttAblFMtXV/Gje19h2ertvwxnQKdGrcRKikUk140dNpiL//ofKqpqyLPgXFlb52yormVOSWlSk8D2nGhq1InsoQRZOra6OrjvPmKXXAqffcb9B5/ErUf+kDVvdyX/iqeprQteVpBn1NQlXjZRENYgKxkWEWnZ8OJ+9O7WmcrNtcTqnM75efTpvgOFBZtTMkqDEk1pKyXI0mGtmv1vPvvJGPb7cBGvF+3L+B+P591+Wy+x1SfHQMLJcUG+8fwFw5UIi4i00vrqGHv17Y5Frtx1yqvWKA2SlZQgS8ezZg1ceSX97riTgi49uOiE83h0/6Nx275at8Yd65Qci4i0XrzOc7V1nvWd5yS7pWp8bSXI0nG4w/TpcPHFUF7OgwedwA1f+yHrCrtv1+b26N2VCcP7cNShX0hyoCIiuSde57lYXfZ3npPslcrxtZUgS8fw9ttsGvMzCuf/m9d324erf3wF/+k7pMmXG5CfR4Ma5Jhv20qs6YZFRJIjXue5o/bpoVph2W6pHF9bCbK0K40n6yis2sAF/3qQM157kqrC7ow/7pc88sVjtymnUJmEiEjmNe48p0YIaYtUjq+tBFnaldHTFrCkbD117pz49hx+/cI99NmwhhkHfoPfDxvF2i7bTvaRb8b715yQgWhF2jczOw64hWBG07vd/doMh5Tz4tVbqgU2e+nzSq2mJoXZsbCgmbUSk/wRukVSYPnqKkZMnsv7pesZXLacGQ/9ilufvIFVPfpw6o9u5IpvjIubHOcZDO7bLQMRi7RvZpYP3AEcD+wLjDSzfTMbVW6rr7csrdzUoN5yTklppkOTOPR5pd7YYYOpiTlV1bW4B7c1MeeQ3Xu1edtqQZZ2YfS0Baz6qIzLX5rBma89wYbOXbj8G+P4yxdHUJeXH3ed6Ax2ItJqXwL+5+5LAczsIeAUYHFGo8phTdVbJmsc4fbQ2tkeYqyX6s9Lmp4Upj+ftXnbSpAl+7lTPO+f3P/8Xey6fjUPffHrXHfkKNb36InHXJN2iKRGEbAi8nglcFjjF5nZGGAMQFFRUdprSsvLy7OujjVVMQ3Mr2DvPnmYVW9Z5u5srt2Y0P6ai2tZ+QZmv1fKngXG3v2N2ro1/ONfC9lU3o89+qTuKlxr3qt0xpiMz7Ctn1cqYkq2bIipPzBhWE+gZ7jks6TEpQRZstrH899g1Y/O4rb3F/LOLkM4+9TL+c+AYob07c4bFxyZ6fBEcp67TwWmAgwdOtSLi9s6uFLrlJSUkO59tiRVMa2Yt4bSNQ3rLauqa+nXozCh/TUX19VT51Na2WXLttdtrOHTyk08/kEpBw/qlbKW2ta8V41jhOD4ly+uYcaY7X+/446j24c2f4Zt/bway6Xf9bZKRlxKkCU7bdjA2ism0Oe2W+hesANXjvgZDx54PHV5+eytsgmRdPgIGBh5PCBcJhkSbxzhmlhyxhGOjgawbmMNH6/diAF17pRWbuLiv/6H3t06s746lrHShqZGLGjLTHzNjaP7SRvLOVL5eclWmihEcoM7Zfc/hJ93Hv3WlPLI/sdy7fAfs7pbcOkk34xZajkWSYcFwN5mtidBYvwD4LTMhpTbmqq3TEaiGh0NoHz9ZvIwMNghP4/1m2opW19N2fpquhbkEaurY/zMRUwMY0qXpkYsaMtMfNE64cpNNZRVbmZTbYy/v72e+as/Y8cuBQ0S59Yccyo/LwloohDp0OrHNo6VvMdVz09h2NLXebfvHpx9+nW8NmC/Bq/ViBQi6eHutWY2DniGYJi3e919UYbDynmNxxFOhjklpVRs2Myy1RsoyMujps7JN8CN7jt0orRy85bXxhxWr6+hd3fS3tksFS2y9a3SlZtq+HjNJsygU17Qr6WiqoZuO3TCzLa7g932fl6pahXtaDRRiHRoZ9/1Iic/+SfGvPIo1fkFTDz6LKYdciKxRqNTFOSbSitE0sjdnwaeznQckjrRFrgBPbuwau0mYnVODCjsZKzdWIOHr80zyDOjDmdtVQ0r87a/tGF7RFtk3/90HdUxp3OnPKbMW7rl+daqb5Uuq9yM1R9fOMNqnkFZ5WZ6hGPqtrWcI1GpbBXtaDRRiHQo0dnwRix5hT/Mmvr/7d17nJR13f/x12dmdzksIGdMwBAkSU25FbzV1LDDrWm3h7tMybv01kJv0TLTyrNplmXpLw+peLjFStJKwkpDRdG0UMQ8gC4ewBRUFpAzC7s78/n9cV27XDvM7GF2dq7Z4f18PNadueaaaz7Xxc762e98vp8vI9et4I97foqrDz+dlX0GbvecsUPVmUJEpNCiI3Drw2Q4YeAOKXcaUt68b9IMADPYmkp3qrQhX01J8GUPLmKnpNGrMplX+UOTbaPSKQjP28cXmygAACAASURBVIBEIjjX+lS6ed/OlnO0V1eOipabrlwoRAmyFN3p0+dT/8abTHv0Nj771nxeH7QrJ07+Mc/u+ont9lViLCLSdaIjcE21x8kKo74xTVUyQUMqhUHz6Kq7k3KnIpGIbbJZIfsLTxo3lC8tW8t1j70B2/4WIJV2GlOOA6+9v46KRIK+PSu49OjW18opRJ/mrhwVLTe5ym60UIh0K++s3sz/3vE0R/1pOmfN+x0NyQp+ePhp3L3/MTQmgx/FSvUyFhEpmugIXH0qTdIM9yAhGz2kD+vr6lm2dgtD+lSxYUsjWxvTJBPG1EljClp/3JHEstDdLB565X2SFtRXw7Y8OQ1UJS24b8H2l5etDUo8ajdQ35imMml8bFi/5j8Wzv/9S2zc2kgq7azauJXzf/8SP/vSvu26Vk3XYOWGrazauJVhfXvSLzzPQo2KlhstFCLdVlM5xZKVmzh8yXx++citfHTtB/xp3KH88NOns6LvYGDbqnfqUCEiUjzREbiqZIL6VBrDGNK3BwAVyQQfG9qH/r2ruqwTQ66a21wlE4XuZrF09WaSCSOJ0ZhO45GR5D127td8e+WGLdw89y0GVleybnMDGNQ1wNJVG7nswUWkUynWbm4gaRb8oZGGtZsbuObh19q8XtFrsHO/Hixfu4Xla+sApyKZKNioaDnKNhGypkYJspSIaF1xMrKyXUPKGb6ull/OmcYRb8zjzYEj+MqJP+Tvo8YD248Yi4hI8URH4NZtrqcx7QysrqRPj6BsoSHlXHr0uC7tVtHRkomu6i+cTBjJ5snhQWlJ1IYtjTSm06yvaySRsHBCn7NhSyM771TBkjVbqUxYc/2yGXjaWbq67ZHtzGtgZnywbgsfrN/avFBLIUZFpf2UIEveoqPDiQQ0poN6rXT4OZVtrWfqcw9w9j/uxw2u+dSp3DnxWBqSlRoxFhEpEdERuKaP+YvZt7ejJROF7i88enA1b9RuxNyDpDYcQa5MtkyRtzam6RGOsicjSXB9Kk2vymSLkeeOyrwGfXsGf6Ssq2tgxpQDgcKMikr7KUGWDmtKjN+o3di8LZVquc+hS1/gB4/eyug17/HQxw7mqs98gw/6DaEiaSTTQT9jjRiLiJSWruiz3JbWSiZy1SYXMs7vHTmOC37/UjBCnEpTkUjQszJBv16VLUapkwljp96VrK9rpDG9LZmuSiaoa0jRuypJfWO6RaKddhg7pLrNGutClo0UYqKgKEGWdso2WpzNR9av5NI5t3PU639nyYBd+NoJP+Cp0fsD6kghIiLby1UycdDogR2qTY7KTBIPGj2Qfyz5MGvSOGncUK790r4tRqSP3LOS4waPbLHt2H134fcvLKdfL1i1oZ60Bf8f7NuzkoaUc+Zho/nVvH+1SLQH9K7k83vv3OZ5FKpspKP13J319qpN/GDavLJMxpUgS07NdcUrN5JMLAlKKHz70WKAqlQDX1/wIFOfnkHCnWsP+xp3H/hf1CUqGKuOFCIikkOukol827llJolLV23kubc/ZGjfKgZV98iaNGaOSNfU1DAuyyj1PiP6c9tTS2hIbQhb4Rm7De7TnBg2Pd7R8yhU2UghW+C1ZW5NLU8srqV2Q6+iJOPFpgRZtpOthCKdyl1cddC/XuInj9/GrrXvwHHHwfXXc8GoUVxQjGBFRKTby1YyccmshXm1c8tMEjdsaSRhsL6ukcF9ena6b3Jrz8l8fG5NLS+8s4ZUOk2PiiRD+vagb8/KrOdRiLKRQrfAa81tTy1ht8riJONxSMQdgJSeplHjXIxg8sIuG1fzf7OvY8ZvL2bXPhXw5z/DzJkwalTRYhURkfI0ckBv6hpafmTZnrrcd9dspldlsvl+fSpNwlquileMZaObRrKbFllpTDvvrd3Chi0NXbYqX77XLB/vrtlMRaLlRMZiLcddDEqQBQhGjT933ZOMufAh3qjdSGaJcVNSnDRjj0E9ea7HS/x9+lQOf+0ZuPxyWLgQjj46lthFRKT8nHHYaBpSzub6Rty9ue1cW3W5mUliVTJBOpxM16QYy0Y3jWQP69szWGwk/M8H67YUpC1dNvles3yMHNB7u/lIxVqOuxhUYiHAtlHjHHPv2L1pgt3C+TB1KixaBEcdBTfcAGPGFDdYERHpNvLtqpBvXW7mhLe+PStYubGefr0qcPeC9U1uS1O5g1UFo6yrNm6lPly++spj9uqSMoRCt8BrzRmHjebhZxYUvB91qVCCLAAsWblpu+Q4acboIdVcdOhADh85BM49A379a/joR2HWLPjP/wyaQIqISFkodIuwznZVyKcuNzNJ3G1wH75yQNDFopj9naOt2/r1qmxuGze0b88ufe1iteqbNG4oW1YN5Z1XG4p6XYtFCbIAQV/iphHkFot4NDay4rLL4OabYcsWuPhiuOgi6F0eH6GIiEigK1qEFbOrQlS2JPGbXfZq2XXVin+lZNTgamZMGRd3GF1CCfIOJNrLeOTAXgC8+2Edo4dUc9Wxe3PprIUsWblp2yIezzwDZ53FsJdfhiOOgBtvhLFjYz4LERHpCkH7shSrNzZSn0pTlUzQr1dFp5LZfLoq5BrF7m4LYBSz3EEKTwlymYkmwZmJb/Ny0A5vR9aGf2vlRi6dtXDbss+1tfCds2D6dBg5kmW/+AUjzjlH5RQiImXsjdoNrNvcQCJhJBNB14VVG+ppSG3I+5gdXSEu1yj2l5at5fcvLC/aAhiFEsfKhFIYSpC7ucyEuCGV5p0PN5P2IPH96l3Pkko76RwLfECwFOaSlZuCHW69FS65BDZtggsvhIsvZuO77yo5FhEpc/WNaQhbkkHwaz9tHmzPU2aZwaqNW1mzuYF1dQ1MnjaPU/asJPoBfa6SjDueXsqQvj3KtueulB4lyN1ctPtEZheKtLe+wEeThMHRm9+GAw6AF16Az3wGbroJxpVnXZGIiGyvMmnUNUA67ZiBh//7qEq2f4AkWxnElcfsxW1PLeGNFevZsDXFwOrK5hXtnli8hp6Da5uT3FwlGZvqU+wa6W3ctL1ceu5K6VEf5G4u2n2i6XtT3+6EBb/wmu5HexmPGtSbUYN6M7huPTc9cQs33DAVPvgA7rsPHn1UybGIyA7mY8P6Mai6ioqkkXKnImkMqq5i7LB+7Xp+U3lE7YYtLcogAGZMOZCxw/oxYkAvBvfpiVkwSpxMGLc9taT5GLkWuqiuShZtAQwRUILc7Y0eUt0iIR41qDdjhvQhacaYIX341Wn/3nx/96F9mHPeJN768VHMPe8w5u70Bs//+myOWjAbLrgAamrgy19WOYWIyA7ojMNGU1WRZOederLHsL7svFNPqiqS7e66EC2PaEqAK5PbEuDMFe4AKhLWYhQ410IXXz9kt6ItgCHt9/aqTUyeNo9DfvI4k6fNY25NbdwhFYxKLGKWWUN85ykT2XVQ76zbge223XnKxKzPj2qefNdkfrjYx/z5MGlSUE6x115FOmMRESlFne260FbHimwT9hrT3mIUuCmGax5+jTdqNwIwenA1+4zozz4j+qsjRAmZW1PLE4trqd3Qq1tNnGwvJcgxy6whPn36fB4971NZtwNZ990uAc5l9eqgj/G0aTBsGPzmNzB5skaMRUQE6FzXhdY6VsytqWXNpq28vXoTlYkEw/r1oCKZIJXeNgrcVL/8+or1bIzUKtc1pILE65i9mDHlwIKcp3TebU8tYbfK4ve4LhaVWBTJO6s387nrnmTMhQ/xueue5J2wzVpmDfGSlZtybs+1b5vSabjzTthjD7jjDvjWt2DxYvjKV5Qci4hIQeQqjzho9EAue3ARDWlnRP9eYLBs7RaqkgkO32Noc4/jpvrlLQ1p0u6s3tjAxq2N25VqFMOzS1azzxWzGXPRQ+xzxWxueOz1or12d/Hums1UJFrmEOU0cVIJcpE0jQin3FuMCGfWEI8eUp1ze659W/XCC/DJT8LXvw4f/3hw//rroV/7Jl2IiIi0x6RxQ7nymL0Y2rcn6+oaGNq3J1cesxf/WPJhc21yv15VjB3al1GDetO/dxWjBgf/H4vWL9en0iTNMIOVG7YCxU28bnjsdZ5d+iF1DSkqEsEo+C8ef1NJcoaRA3rTmG7ZKaucJk6qxKJIco3+Zqshbm17tm1ZrVkDl14Kt9wCgwbB3XfD176mEWMREeky2Uo0Lpm1sJXa5P5Ay/rlqmSCxpRjCahPBT2Yuzrxirane3/dFo4Y7lQkgjHEhEFjOs0dTy9troPuLqv5daUzDhvNw88sKNultJUgF8noIdXN9cPR0d9dB/XOWkOca3ub9cbucM89QVeK1avhrLPgqqugf/+CnIeIlD8zuwL4BrAy3HSRuz8UX0TSnbVnNb3oPoP79OC9dXWQhsqEdXnHiszV+5atqQsW10o7yfBj24TBhi2NWVf568yktO62fHbUpHFD2bJqKO+82lCWEydVYlEkd54ysUX7tVZHf/P18stw2GFw6qkwZgw8/zzceKOSYxHJx/XuPj78UnIsectVmxxNeKP79O1ZwaDqKhJm9O5R0Vyq0VWJV2Z7uqZSxsb0thUE0w6JhLXaxq6jcvWNzmyVNremlsnT5nHXM0tLrpXaqMHVzJhyIH/73qeZMeXAskmOQSPIRZNrRLgg1q2Dyy8P2rUNGBBMyDv1VEjo7x8REYlXa+3jamo+zLrPboP7cE2RRiMz29MNrq4CglHktKfD71Bdldyuj3NnaqNzLasd7QIRHd0eOzhB7dryaqVWypQgd2fucO+9cP75sGIFnHkm/PCHMHBg3JGJSPd3tpl9DXge+I67r8m2k5lNAaYADB8+nJqamiKGCKtWrSr6a7alFGOCeOPaGbj8sP401RzDh9TUfNgiplz7dLXPj0izqX4TlclwUGknGJiEhAUjyJVJY79dB7BsTV3L/YCGVJrqQRV5XdeRyTWMHZzArL55m7uztbGu+XjPLFjGIUMaqUwm+EiPRg4ZYjSk0jyz4GV2ZkQnzrowyvlnXQlyd7VoUbDYx5NPwsSJ8Kc/wYQJcUclIt2EmT1GkJNkuhi4BbgK8PD7z4HTsh3H3acB0wAmTJjg44q8TH1NTQ3Ffs22lGJMUBpxZdbcnrJnLw6JOaZPMrB5lLZpstmE/im+/Jn9W4zSRkdzo5PSrjxmL8blMZr77lNrqV3bsjZ7c30jQ/v2bP53enjWe/TvVY2Zsd9Om3lhXW/cnXV1DVx8cvw/Y6XwM5VNIeLSZ/AFkKvHcZfYsCEYMR4/Hl55JVj0Y948Jcci0iHu/ll33zvL1yx3X+HuKXdPA7cDB8Qdr3R/2Wpun1hcG3tNbbb2dE39mdvarzO10e2pzR45oDd1DakWzyunVmqlTCPIOWQu9XzRoQPJ9bdIrtXwCsod7r8fzjsP3nsPvvEN+NGPYPDgwr6OiOzwzOwj7v5+ePd4YGGc8Uh5yFZzm0xYSay8ltmeLtfH851ZaTDbsdpa2vuMw0Zz2YOLWk2ipWsoQc4hM+m9/LGtHD7xE1n3zXuFu/aqqYGzz4Y5c2C//eAPf4ADtdymiHSZn5rZeIISi7eBM+INR8pB5mQ4gIqElc3Ka/loK+GOJtFbG+sY2rdnWbVSK2VKkHPITHqXrW/IuW+uHsedtmlT0MP4uuuguhpuvhnOOAOSybafKyKSJ3f/atwxSPnJ1g+5Me07dLlAe/ogNyXRpVrvW66UIOeQmfSO6FeZc99cq97lzR0eeAC+/W149134n/+Ba66BofqLUUREuqdouUDTJLdUujzKBfJZ8CNzgZJCLDzSlfEWS6nEpgQ5h8yk96JDc7dOK2iP4zfegHPOgdmzYd99YcYM+OQnC3NsERGRmGSruT18j74lk5jlK99Etz19kNt63XwSyTgT8+4UmxLkHDKT3i7v87d5czDp7tproWdP+MUvgmWiK/RPJCIi5aG9k+G6k3wT3Ww12e1deKQziWRnE/OuVEqxxdLmzcxOMLNFZpY2swkZj11oZm+a2WIzOyKO+IrKHWbNgj33hKuvhhNPhMWL4ZvfVHIsIiJS4t5dszmvFfY608Itc3nsjix7nW+8xVBKscXVB3kh8F/AU9GNZrYncBKwF3Ak8EszK98ZaW+9BV/4Ahx3HPTpA3Pnwj33wM7ZeveLiIhIqck30W1PH+RcOpNIlnJv5VKKLZYE2d1fc/fFWR46Fvitu29196XAm5Rjg/q6OrjiCthrL3jqKfj5z+Gf/4RPFbh3soiISBmaW1PL5GnzOOQnjzN52rxYFxvJN9HtzMIjnUkkO5OYd7VSiq3UPsMfDsyL3F8WbuuQzEU+7jxlIrsOiv8vIwD+8pegfGLJEjjppCA53mWXuKMSERHpFkppIhe0vuBHWxPpcvVBzva86GfL2TqCtDeRbM8CJXEppdi6LEE2s8eAbLUCF7v7rAIcfwowBWD48OEtCv2nzHyHd9c14MCbtRv572lPM+34XTv1eqtWrerUZILK5csZ+uMf03fOHLaOHs2Ku+5i80EHwfr1wVcJ6+y5d2c6d527iJSWUprI1SRboptvIp/reRcd3K95Rd/OJpKFXBGw0Eolti5LkN39s3k8bTkwMnJ/RLgt2/GnAdMAJkyY4NHm2cvXL8Gb9gOWr2/sdHPtvBt0b90KP/tZMAHPDK65hh7f/ja7VlV1Kp5i2pGbk+vcde4iUlo60/2hmPJN5HM9b8G/1nDkIdvv79tvkgKIa5JeLg8CJ5lZDzPbDRgLPNfRg4weUk3CgtsFXdmuo2bPhr33hksugaOPDpaM/t73oBslxyIiIqWklCZytSbfiXS5nrd+y7YVfZtGmWs3bGkxyhxnLXa5iavN2/Fmtgw4CPiLmc0GcPdFwP3Aq8Bfganunsp9pOzuPGUiY4b0IWnGmCF9Or+yXUe98w588Ytw5JHBqPHs2fC738HIkW0/V0RERHIqpYlcrck3kc/1vH49t42ad6bNm7RPLJP03H0mMDPHY1cDV3fm+AVd2a4j6uvhuuvgqquC/sZXXw3f+Q706FH8WERERMpQKU3kak2+E+lyPW//jw5o3qe7lJl0Z6XWxaL7mjMHpk4NFvk47ji4/noYNSruqERERMpOqUzkak2+iXyu5+3Mh837jBzQm9oNW5rrlKE0y0y6MyXInbV8OZx3Htx/P4weHbRxO+qouKMSERGRmOWbyGd7Xk3NtgS5M23epH1KbZJe99HQEHSn2GMPePBB+MEPYNEiJcciIiLSpTqzyIi0j0aQ8zF3blBO8eqrwVLRv/hFMHosIiIiUgTdocykO9MIcke8/z6cfDIcfjhs3hyMHP/pT0qORURERMqIRpDbo7GRAdOnw803Bwt/XHopfP/70FvF8CIiIpKftpailvgoQW7L00/DWWcx7JVXgr7GN94Iu+8ed1QiIiLSjeW7FHVHX0MJeH5UYpHLihVwyilw6KGwbh3LbrgBHnpIybGIiIh0Wlcv9qHV9jpHCXKmxka46aagO8WMGXDhhfDqq2z83OeCVfFEREREOinfpajbS6vtdY4S5Kh//AMmToRzzgm+v/IK/OhHUF0dd2QiIiJSRvJdirq9ujoBL3dKkAFWroTTT4eDDw5u338/PPJIMIosIiIiUmBnHDaahpSzub4R9+B7IRf76OoEvNzt2AlyKgW33hokwvfcAxdcADU1cMIJKqcQERGRLtPVi310dQJe7nbcLhbz58NZZ8Hzz8OkSUELtz33jDsqERER2UF05WIfk8YN5UqCWuRlazYzQl0sOmTHS5BXr4aLLoLbb4edd4Z774WTTtKIsYiIiJQVrbaXvx2nxCKdhjvuCMop7rwTzj03KKeYPFnJsYjskMzsBDNbZGZpM5uQ8diFZvammS02syPiilFEJA47xgjyggUwdSo8+2zQ1/jmm+ETn4g7KhGRuC0E/gu4LbrRzPYETgL2AnYBHjOzj7l7avtDiEhnaUGP0lPeI8hr1gSJ8cSJsHRpMBHvySeVHIuIAO7+mrsvzvLQscBv3X2ruy8F3gQOKG50IjsGLehRmspzBNkdpk+H7343qDk++2y48kro3z/uyEREuoPhwLzI/WXhtu2Y2RRgCsDw4cOpqanp+ugiVq1aVfTXbEspxgSlGVcpxgTFjeuZBcs4ZEgjlcltY5YNqTTPLHiZnRkRS0ztVYoxQWHiKs8E2QweeCBYFvqRR2D8+LgjEhGJhZk9Buyc5aGL3X1WZ4/v7tOAaQATJkzwcePGdfaQHVJTU0OxX7MtpRgTlGZcpRgTFDeuh2e9R/9e1VhkPpS7s66ugYtP3hZDKV6rUowJChNXeSbIAL/6FfTtC4nyriIREWmNu382j6ctB0ZG7o8It4lIgY0c0JvaDVvoXbUtJdOCHvEr3+xxp52UHIuI5OdB4CQz62FmuwFjgedijkmkLGlBj9KkDFJEZAdlZseb2TLgIOAvZjYbwN0XAfcDrwJ/Baaqg4VI1+jqFfUkP+VbYiEiIq1y95nAzByPXQ1cXdyIRHZMWtCj9GgEWUREREQkQgmyiIiIiEiEEmQRERERkQglyCIiIiIiEUqQRUREREQilCCLiIiIiEQoQRYRERERiVCCLCIiIiISoQRZRERERCTC3D3uGDrNzFYC/+rilxkMrOri1yhVOvcdk869a33U3Yd08WsUVZF+F2cqxZ/TUowJSjOuUowJSjMuxdR+HYkr6+/iskiQi8HMnnf3CXHHEQedu859R7Mjn3t3U4r/VqUYE5RmXKUYE5RmXIqp/QoRl0osREREREQilCCLiIiIiEQoQW6/aXEHECOd+45J5y7dQSn+W5ViTFCacZViTFCacSmm9ut0XKpBFhERERGJ0AiyiIiIiEiEEuQOMLNrzazGzF42s5lm1j/umIrFzE4ws0Vmljazkpux2hXM7EgzW2xmb5rZ9+OOp1jM7C4zqzWzhXHHUmxmNtLMnjCzV8Of92/FHZPkVorvUTN728xeMbMXzez5GOPY7n1sZgPN7FEzeyP8PqAEYrrCzJaH1+tFMzuqyDFlfc/Hea1aiSnua9XTzJ4zs5fCuH4Qbt/NzJ4N34f3mVlVCcR0t5ktjVyr8R0+tkos2s/M/gN43N0bzewnAO7+vZjDKgoz+ziQBm4Dznf32H7xF4OZJYHXgc8By4D5wGR3fzXWwIrAzA4DNgL3uPveccdTTGb2EeAj7v6CmfUFFgDH7Qj/7t1Nqb5HzextYIK7x9obNtv72Mx+Cnzo7teEf1AMKOb/w3LEdAWw0d1/Vqw4MmLK+p4HTiWma9VKTF8m3mtlQLW7bzSzSuBp4FvAecAD7v5bM7sVeMndb4k5pjOBP7v77/M9tkaQO8DdH3H3xvDuPGBEnPEUk7u/5u6L446jiA4A3nT3Je5eD/wWODbmmIrC3Z8CPow7jji4+/vu/kJ4ewPwGjA83qgkhx32PdoeOd7HxwLTw9vTCZKuuGOKVSvv+diuVan+HvLAxvBuZfjlwKeBpkS02NcqV0ydpgQ5f6cBD8cdhHSZ4cC7kfvLKIFfUFI8ZjYK+Dfg2XgjkRxK9T3qwCNmtsDMpsQdTIZh7v5+ePsDYFicwUScHZYu3lXsso+ojPd8SVyrLL+HYr1WZpY0sxeBWuBR4C1gbWTwsOjvw8yY3L3pWl0dXqvrzaxHR4+rBDmDmT1mZguzfB0b2edioBH4TXyRFl57zl1kR2BmfYA/AOe6+/q445Fu5RB33w/4PDA1LCsoOR7UV5ZCjeUtwBhgPPA+8PM4gmjtPR/XtcoSU+zXyt1T7j6e4BP0A4BxxY4hU2ZMZrY3cCFBbBOBgUCHy2MqChplGXD3z7b2uJmdCnwB+IyXWQF3W+e+g1kOjIzcHxFukzIX1rH9AfiNuz8QdzySU0m+R919efi91sxmEiQRT8UbVbMVZvYRd38/rHOtjTsgd1/RdNvMbgf+XOwYcrznY71W2WIqhWvVxN3XmtkTwEFAfzOrCEeRY3sfRmI6MlKnvdXM/g84v6PH0whyB5jZkcB3gWPcfXPc8UiXmg+MDWfnVgEnAQ/GHJN0sXDCx53Aa+5+XdzxSKtK7j1qZtXhpCrMrBr4D6CUusE8CJwS3j4FmBVjLEDzhLQmx1Pk69XKez62a5UrphK4VkMs7N5lZr0IJsi+BjwBfCncrdjXKltMNU3XKryWx5HHtVIXiw4wszeBHsDqcNM8dz8zxpCKxsyOB24EhgBrgRfd/Yh4o+paFrTQ+X9AErjL3a+OOaSiMLMZwCRgMLACuNzd74w1qCIxs0OAvwGvEHRtAbjI3R+KLyrJpdTeo2Y2GpgZ3q0A7o0rpmzvY+CPwP3ArsC/gC+7e9EmzeWIaRJByYADbwNnRGp/ixFT1vc8Qc1vLNeqlZgmE++12odgEl6SYID1fne/Mvy5/y1BKcM/gf92960xx/Q4Qb5iwIvAmZHJfO07thJkEREREZFtVGIhIiIiIhKhBFlEREREJEIJsoiIiIhIhBJkEREREZEIJcgiIiIiIhFKkKVgzGyQmb0Yfn1gZsvD22vN7NUixzI+bAHVdP8YM/t+nsd628wGZ9m+k5ndY2ZvmtlbZvabrlj6s7VzMbMrzKzDDdBFREQkNyXIUjDuvtrdx4dLPt4KXB/eHs+2Xo4FY2atrQQ5HmhOKt39QXe/psAh3Akscffd3X0M8CZwd4FfA4pzLiIiIhJSgizFkjSz281skZk9Eq54g5mNMbO/mtkCM/ubmY0Lt48ys8fN7GUzm2Nmu4bb7zazW83sWeCn4cpVd5nZc2b2TzM7NlxV60rgxHAE+0QzO9XMbgqPMczMZprZS+HXweH2P4ZxLDKzKa2djJntDuwPXBXZfCWwr5ntYWaTzOzPkf1vCpcpx8wuM7P5ZrbQzKaFK/1gZnPN7CfhubxuZoe2dS4ZMeW6lieEr/WSmZXKkrciIt2OmX0i/IT0E3HHIl1LCbIUy1jgZnffi2Alvi+G26cB57j7/gRrpf8y3H4jqHlDggAABglJREFUMN3d9wF+A9wQOdYI4GB3Pw+4GHjc3Q8ADgeuBSqBy4D7whHt+zJiuQF40t33BfYDFoXbTwvjmAB808wGtXI+exKsJphq2hDe/ifw8TauxU3uPtHd9wZ6AV+IPFYRnsu5BCvY1bdxLlG5ruVlwBHh+R7TRmwiIpLbRcDB4XcpY0qQpViWuvuL4e0FwCgz60Pwi+Z3ZvYicBvQtNb8QcC94e1fAYdEjvW7SGL6H8D3w+fPBXoSLA3amk8Dt0CQ1Lr7unD7N83sJWAeMJIgqe8Kh5vZs2b2ShjLXpHHHgi/LwBGtfeAbVzLZ4C7zewbBMtxioi0YGapyBySF8NP8f4ePtbfzM6K7NvifgdeI+ucCTN7wsyOyNh2rpnd0sbxOrR0cEeYWS8ze9LMWvzOdPfJ7r7E3SebWZWZPdVGuZ90U/pHlWKJrsueIhg5TQBrwzrljtgUuW3AF919cXQHM/v3jhzQzCYBnwUOcvfNZjaXINnO5VVgvJkl3D0dHiMB7Au8QJCkR/8A7Rnu05NgZHeCu79rZldkvE7TdUrRsfdnzmvp7meG1+NoYIGZ7e/uqztwbBEpf3VZfn8cHH7vD5zFtk+lMu931gzgJGB2ZNtJwHcLdPx8nAY8EP2UMJO715vZHOBEgk86pYxoBFli4+7rgaVmdgKABfYNH/47wS9IgJOBv+U4zGzgnEgd77+F2zcAfXM8Zw7wv+H+STPbCdgJWBMmx+OAA9uI/U2CcopLIpsvAea4+zvAv4A9zayHmfUHPhPu05QMrwpHfb/U2uu041ya4sl5Lc1sjLs/6+6XASsJRsdFRFoVGaG9BhgTjixfm+U+Zvbf4fyJF83stqaRVzO7OJxT8TSwR46X+j1wdDjnAjMbBewC/K2tuSHhSPfCyP3zw4GHpvvbxWXB3JW/hPMyFprZiVliOhmYFR5j76bR9PD+fmFiDPDHcF8pM0qQJW4nA6eHpQ2LgGPD7ecA/2NmLwNfBb6V4/lXEdQcv2xmi9g2ae4JggT1xSy//L5FUObwCkEpw57AX4EKM3uN4Jf/vHbEfhow1oIWbysJkuozAdz9XeB+YGH4/Z/h9rXA7eH22cD8drxOa+cSletaXmtmr4T/E/k78FI7XlNEdiy9IuUVMzMe+z7wVjgP4oLM+2b2cYJR1E+Go9Ap4GQz259goKOpE8/EbC/s7h8CzwGfDzedBNzv7k7H5oa0kCsu4EjgPXffN5wL8teM51UBo9397XDTq8DoSLnFdcAF4e2Fuc5LujcLfv5EpDPMbA/gL8A33f2huOMREekIM9vo7n2ybQtHdP8cJpNkuX82waS12vCpvQjKJtYCA8NPrzCz6wgS059lef2TgS+Etb0vAqe7+4JwNPj4cLdRBBOO5zXFB+ydEcv5QB93v6KVuO4FHgHuC5/b4hNKM9uFYPL3uMi2OcC3CeamHOPup0QeWw6Mc/cNua+wdDeqQRYpgLAGeve44xARiYERdB26sMVGs3M7cIxZwPVmth/QO0yOJ9H23JBGssz3aC2uMLb9CEa1f2hmc9z9ysjDdVleZx7wSYLa6yMzHusBbGn7FKU7UYmFiIiItCZzHkTm/TnAl8xsKICZDTSzjwJPAceFHSH6Av+Z6wXcfSNBOdldBKO80L65ISuAoRas5NqDlm0zs8YVjhBvdvdfE7QG3S8jljUEvfujSfI84IfATHdf3rQxLPlY5e4Nuc5NuieNIIuIiEhO7r7azJ4J5zE8HNYdZ96/BHjEgm4+DcBUd59nZvcRzHuope05FzOAmWyboP1X4MxwbshisswNcfcGM7uSoIZ5OVATeezVbHERJN7Xmlk63Pa/WWJ5hKC96GPh/RqCLkM/ydjvcILyOikzqkEWERERiQhLML7t7l8N798EzHf36Rn7PQB8391fjyFM6UIqsRARERGJcPcXgCfMbIyZ1QC9siTHVcAflRyXJ40gi4iIiIhEaARZRERERCRCCbKIiIiISIQSZBERERGRCCXIIiIiIiIRSpBFRERERCKUIIuIiIiIRChBFhERERGJUIIsIiIiIhLx/wE7kfJ/i95LOgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, axarr = plt.subplots(2, 2, figsize=(10, 10))\n", "model1.diagnostic_plot('pp_plot', ax=axarr[0][0])\n", "model1.diagnostic_plot('qq_plot', ax=axarr[1][0])\n", "model1.diagnostic_plot('rvf_plot', ax=axarr[1][1])\n", "axarr[0, 1].axis('off')\n", "plt.tight_layout()" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(8, 5))\n", "model1.resid_standardized.hist(ax=ax)\n", "ax.set_title('Histogram of standardized residuals')\n", "ax.set_xlabel('Standardized residuals')\n", "ax.set_ylabel('Frequency')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "From the residual plots, it is clear that the assumptions of OLS do not hold in the model:\n", "- Residuals are not normally distributed (for y-values close to mean and ones near the tails)\n", "- RVF plot has a funnel pattern. Perhaps there is heteroskedasticity in the dataset." ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Breusch-Pagan test (studentized) :: chi2(1)\n", "Test statistic: 10.6543\n", "Test p-value: 0.3002\n" ] } ], "source": [ "bps_stats = heteroskedasticity_test('breusch_pagan_studentized', model1)\n", "print('Breusch-Pagan test (studentized) :: {}'.format(bps_stats['distribution'] + '({})'.format(bps_stats['nu'])))\n", "print('Test statistic: {:.4f}'.format(bps_stats['test_stat']))\n", "print('Test p-value: {:.4f}'.format(bps_stats['p_value']))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Second model" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The functional form of the first model may be inappropriate.\n", "\n", "In the statistical moments dataframe we see that the dependent variable `price` is positively skewed. The model estimates were worst at the tail end of the `price` distribution and the residuals did not appear normally distributed.\n", "\n", "Let's use the log-transformed price (`ln_price`) as the dependent variable in a second model." ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "def log_plots(df, col, figsize=(11,5)): \n", " plot_df = (df[col].to_frame()\n", " .pipe(_create_log_variables, [col]))\n", " \n", " fig, axarr = plt.subplots(1, 2, figsize=figsize)\n", " \n", " plot_df[col].hist(ax=axarr[0])\n", " axarr[0].set_title('Histogram of {} values'.format(col))\n", " axarr[0].set_ylabel('Frequency')\n", " axarr[0].set_xlabel('Value')\n", " \n", " plot_df['ln_' + col].hist(ax=axarr[1])\n", " axarr[1].set_title('Histogram of ln_{} values'.format(col))\n", " axarr[1].set_ylabel('Frequency')\n", " axarr[1].set_xlabel('Value')\n", "\n", " return fig" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "log_plots(df_raw, 'price')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "log_plots(df_raw, 'mpg_city')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The log-transforms of the continuous variables in the model have a more normal distribution than their original variables. However, they still have a slight positive skew. There are a few particularly influential points in the data." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`model2` arguments" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "raw_y_list = ['ln_price']\n", "raw_X_list = ['type', 'ln_mpg_city', 'airbags', 'origin']\n", "cat_base_levels = {'type': 'Compact',\n", " 'airbags': 'None',\n", " 'origin': 'USA'}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Model results" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
OLS Regression Results
Dep. Variable: ln_price R-squared: 0.789
Model: OLS Adj. R-squared: 0.766
Method: Least Squares F-statistic: 34.46
Date: Fri, 03 Jan 2020 Prob (F-statistic): 1.98e-24
Time: 21:40:33 Log-Likelihood: 14.159
No. Observations: 93 AIC: -8.318
Df Residuals: 83 BIC: 17.01
Df Model: 9
Covariance Type: nonrobust
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
coef std err t P>|t| [0.025 0.975]
const 6.3091 0.559 11.286 0.000 5.197 7.421
type_large 0.0889 0.099 0.895 0.374 -0.109 0.286
type_midsize 0.1393 0.078 1.790 0.077 -0.015 0.294
type_small -0.1280 0.090 -1.428 0.157 -0.306 0.050
type_sporty -0.0140 0.082 -0.172 0.864 -0.176 0.148
type_van -0.1196 0.107 -1.114 0.268 -0.333 0.094
airbags_driver_&_passenger 0.3635 0.080 4.550 0.000 0.205 0.522
airbags_driver_only 0.2386 0.058 4.088 0.000 0.122 0.355
origin_non_usa 0.2322 0.050 4.632 0.000 0.132 0.332
ln_mpg_city -1.2106 0.178 -6.789 0.000 -1.565 -0.856
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
Omnibus: 5.184 Durbin-Watson: 1.891
Prob(Omnibus): 0.075 Jarque-Bera (JB): 4.821
Skew: 0.555 Prob(JB): 0.0898
Kurtosis: 3.101 Cond. No. 86.9


Warnings:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified." ], "text/plain": [ "\n", "\"\"\"\n", " OLS Regression Results \n", "==============================================================================\n", "Dep. Variable: ln_price R-squared: 0.789\n", "Model: OLS Adj. R-squared: 0.766\n", "Method: Least Squares F-statistic: 34.46\n", "Date: Fri, 03 Jan 2020 Prob (F-statistic): 1.98e-24\n", "Time: 21:40:33 Log-Likelihood: 14.159\n", "No. Observations: 93 AIC: -8.318\n", "Df Residuals: 83 BIC: 17.01\n", "Df Model: 9 \n", "Covariance Type: nonrobust \n", "==============================================================================================\n", " coef std err t P>|t| [0.025 0.975]\n", "----------------------------------------------------------------------------------------------\n", "const 6.3091 0.559 11.286 0.000 5.197 7.421\n", "type_large 0.0889 0.099 0.895 0.374 -0.109 0.286\n", "type_midsize 0.1393 0.078 1.790 0.077 -0.015 0.294\n", "type_small -0.1280 0.090 -1.428 0.157 -0.306 0.050\n", "type_sporty -0.0140 0.082 -0.172 0.864 -0.176 0.148\n", "type_van -0.1196 0.107 -1.114 0.268 -0.333 0.094\n", "airbags_driver_&_passenger 0.3635 0.080 4.550 0.000 0.205 0.522\n", "airbags_driver_only 0.2386 0.058 4.088 0.000 0.122 0.355\n", "origin_non_usa 0.2322 0.050 4.632 0.000 0.132 0.332\n", "ln_mpg_city -1.2106 0.178 -6.789 0.000 -1.565 -0.856\n", "==============================================================================\n", "Omnibus: 5.184 Durbin-Watson: 1.891\n", "Prob(Omnibus): 0.075 Jarque-Bera (JB): 4.821\n", "Skew: 0.555 Prob(JB): 0.0898\n", "Kurtosis: 3.101 Cond. No. 86.9\n", "==============================================================================\n", "\n", "Warnings:\n", "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", "\"\"\"" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model2 = (ModelPipeline(df_raw, raw_y_list, raw_X_list, cat_base_levels)\n", " .get_model()\n", " .fit())\n", "model2.results_output" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Unstandardized and Standardized Estimates
coef t P>|t| coef_stdX coef_stdXy stdev_X
ln_price
type_large+0.0889+0.8950.374+0.0289+0.06350.3247
type_midsize+0.1393+1.7900.077+0.0595+0.13090.4273
type_small-0.1280-1.4280.157-0.0538-0.11840.4204
type_sporty-0.0140-0.1720.864-0.0051-0.01110.3595
type_van-0.1196-1.1140.268-0.0355-0.07820.2973
airbags_driver_&_passenger+0.3635+4.5500.000+0.1379+0.30330.3795
airbags_driver_only+0.2386+4.0880.000+0.1196+0.26300.5013
origin_non_usa+0.2322+4.6320.000+0.1166+0.25650.5024
ln_mpg_city-1.2106-6.7890.000-0.2710-0.59610.2239
" ], "text/plain": [ "" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model2.results_output_standardized" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Model diagnostics" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, axarr = plt.subplots(2, 2, figsize=(10, 10))\n", "model2.diagnostic_plot('pp_plot', ax=axarr[0][0])\n", "model2.diagnostic_plot('qq_plot', ax=axarr[1][0])\n", "model2.diagnostic_plot('rvf_plot', ax=axarr[1][1])\n", "axarr[0, 1].axis('off')\n", "plt.tight_layout()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The residual plots look much better for this model:\n", "- The residuals are closer to the 45-degree lines in the P-P and Q-Q plots.\n", "- The funnel-like appearance of the RVF plot has disappeared." ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(8, 5))\n", "model2.resid_standardized.hist(ax=ax)\n", "ax.set_title('Histogram of standardized residuals')\n", "ax.set_xlabel('Standardized residuals')\n", "ax.set_ylabel('Frequency')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Breusch-Pagan test (studentized) :: chi2(1)\n", "Test statistic: 5.8346\n", "Test p-value: 0.7564\n" ] } ], "source": [ "bps_stats = heteroskedasticity_test('breusch_pagan_studentized', model2)\n", "print('Breusch-Pagan test (studentized) :: {}'.format(bps_stats['distribution'] + '({})'.format(bps_stats['nu'])))\n", "print('Test statistic: {:.4f}'.format(bps_stats['test_stat']))\n", "print('Test p-value: {:.4f}'.format(bps_stats['p_value']))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Second model - change base levels" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Suppose we want to run a model with different base levels for the categorical variables.\n", "\n", "This is relatively easy now that we have made the `ModelPipeline`.\n", "\n", "It's possible to do so without the model pipeline class, e.g. by manually listing the final columns in an `X_list`, but it is difficult to check whether column names are correct or if columns are missing, especially for datasets where there are multiple categorical variables or categorical variables that have multiple values." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's set up different base levels for categorical variables in an alternative form of model 2, `model2_alt`." ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [], "source": [ "raw_y_list = ['ln_price']\n", "raw_X_list = ['type', 'ln_mpg_city', 'airbags', 'origin']\n", "cat_base_levels = {'type': 'Small', # changed level\n", " 'airbags': 'None',\n", " 'origin': 'USA'}" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
OLS Regression Results
Dep. Variable: ln_price R-squared: 0.789
Model: OLS Adj. R-squared: 0.766
Method: Least Squares F-statistic: 34.46
Date: Fri, 03 Jan 2020 Prob (F-statistic): 1.98e-24
Time: 21:40:34 Log-Likelihood: 14.159
No. Observations: 93 AIC: -8.318
Df Residuals: 83 BIC: 17.01
Df Model: 9
Covariance Type: nonrobust
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
coef std err t P>|t| [0.025 0.975]
const 6.1811 0.602 10.271 0.000 4.984 7.378
type_compact 0.1280 0.090 1.428 0.157 -0.050 0.306
type_large 0.2169 0.127 1.703 0.092 -0.036 0.470
type_midsize 0.2673 0.104 2.574 0.012 0.061 0.474
type_sporty 0.1140 0.099 1.153 0.252 -0.083 0.311
type_van 0.0085 0.131 0.065 0.949 -0.252 0.269
airbags_driver_&_passenger 0.3635 0.080 4.550 0.000 0.205 0.522
airbags_driver_only 0.2386 0.058 4.088 0.000 0.122 0.355
origin_non_usa 0.2322 0.050 4.632 0.000 0.132 0.332
ln_mpg_city -1.2106 0.178 -6.789 0.000 -1.565 -0.856
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
Omnibus: 5.184 Durbin-Watson: 1.891
Prob(Omnibus): 0.075 Jarque-Bera (JB): 4.821
Skew: 0.555 Prob(JB): 0.0898
Kurtosis: 3.101 Cond. No. 95.1


Warnings:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified." ], "text/plain": [ "\n", "\"\"\"\n", " OLS Regression Results \n", "==============================================================================\n", "Dep. Variable: ln_price R-squared: 0.789\n", "Model: OLS Adj. R-squared: 0.766\n", "Method: Least Squares F-statistic: 34.46\n", "Date: Fri, 03 Jan 2020 Prob (F-statistic): 1.98e-24\n", "Time: 21:40:34 Log-Likelihood: 14.159\n", "No. Observations: 93 AIC: -8.318\n", "Df Residuals: 83 BIC: 17.01\n", "Df Model: 9 \n", "Covariance Type: nonrobust \n", "==============================================================================================\n", " coef std err t P>|t| [0.025 0.975]\n", "----------------------------------------------------------------------------------------------\n", "const 6.1811 0.602 10.271 0.000 4.984 7.378\n", "type_compact 0.1280 0.090 1.428 0.157 -0.050 0.306\n", "type_large 0.2169 0.127 1.703 0.092 -0.036 0.470\n", "type_midsize 0.2673 0.104 2.574 0.012 0.061 0.474\n", "type_sporty 0.1140 0.099 1.153 0.252 -0.083 0.311\n", "type_van 0.0085 0.131 0.065 0.949 -0.252 0.269\n", "airbags_driver_&_passenger 0.3635 0.080 4.550 0.000 0.205 0.522\n", "airbags_driver_only 0.2386 0.058 4.088 0.000 0.122 0.355\n", "origin_non_usa 0.2322 0.050 4.632 0.000 0.132 0.332\n", "ln_mpg_city -1.2106 0.178 -6.789 0.000 -1.565 -0.856\n", "==============================================================================\n", "Omnibus: 5.184 Durbin-Watson: 1.891\n", "Prob(Omnibus): 0.075 Jarque-Bera (JB): 4.821\n", "Skew: 0.555 Prob(JB): 0.0898\n", "Kurtosis: 3.101 Cond. No. 95.1\n", "==============================================================================\n", "\n", "Warnings:\n", "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", "\"\"\"" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model2_alt = (ModelPipeline(df_raw, raw_y_list, raw_X_list, cat_base_levels)\n", " .get_model()\n", " .fit())\n", "model2_alt.results_output" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "With the alternative base levels, of course we still have the same model performance (e.g. R-squared) but different dummy columns are shown." ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Unstandardized and Standardized Estimates
coef t P>|t| coef_stdX coef_stdXy stdev_X
ln_price
type_compact+0.1280+1.4280.157+0.0486+0.10690.3795
type_large+0.2169+1.7030.092+0.0704+0.15490.3247
type_midsize+0.2673+2.5740.012+0.1142+0.25120.4273
type_sporty+0.1140+1.1530.252+0.0410+0.09010.3595
type_van+0.0085+0.0650.949+0.0025+0.00550.2973
airbags_driver_&_passenger+0.3635+4.5500.000+0.1379+0.30330.3795
airbags_driver_only+0.2386+4.0880.000+0.1196+0.26300.5013
origin_non_usa+0.2322+4.6320.000+0.1166+0.25650.5024
ln_mpg_city-1.2106-6.7890.000-0.2710-0.59610.2239
" ], "text/plain": [ "" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model2_alt.results_output_standardized" ] } ], "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.7.5" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": true } }, "nbformat": 4, "nbformat_minor": 2 }