Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save mcmasterml/8a4ccc063bc21cc08cfdf5b79edeb9ad to your computer and use it in GitHub Desktop.
Save mcmasterml/8a4ccc063bc21cc08cfdf5b79edeb9ad to your computer and use it in GitHub Desktop.
Created on Skills Network Labs
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<a href=\"https://www.bigdatauniversity.com\"><img src=\"https://ibm.box.com/shared/static/cw2c7r3o20w9zn8gkecaeyjhgw3xdgbj.png\" width=\"400\" align=\"center\"></a>\n",
"\n",
"<h1><center>K-Means Clustering</center></h1>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"## Introduction\n",
"\n",
"There are many models for **clustering** out there. In this notebook, we will be presenting the model that is considered one of the simplest models amongst them. Despite its simplicity, the **K-means** is vastly used for clustering in many data science applications, especially useful if you need to quickly discover insights from **unlabeled data**. In this notebook, you will learn how to use k-Means for customer segmentation.\n",
"\n",
"Some real-world applications of k-means:\n",
"- Customer segmentation\n",
"- Understand what the visitors of a website are trying to accomplish\n",
"- Pattern recognition\n",
"- Machine learning\n",
"- Data compression\n",
"\n",
"\n",
"In this notebook we practice k-means clustering with 2 examples:\n",
"- k-means on a random generated dataset\n",
"- Using k-means for customer segmentation"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h1>Table of contents</h1>\n",
"\n",
"<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n",
" <ul>\n",
" <li><a href=\"#random_generated_dataset\">k-Means on a randomly generated dataset</a></li>\n",
" <ol>\n",
" <li><a href=\"#setting_up_K_means\">Setting up K-Means</a></li>\n",
" <li><a href=\"#creating_visual_plot\">Creating the Visual Plot</a></li>\n",
" </ol>\n",
" <li><a href=\"#customer_segmentation_K_means\">Customer Segmentation with K-Means</a></li>\n",
" <ol>\n",
" <li><a href=\"#pre_processing\">Pre-processing</a></li>\n",
" <li><a href=\"#modeling\">Modeling</a></li>\n",
" <li><a href=\"#insights\">Insights</a></li>\n",
" </ol>\n",
" </ul>\n",
"</div>\n",
"<br>\n",
"<hr>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Import libraries\n",
"Lets first import the required libraries.\n",
"Also run <b> %matplotlib inline </b> since we will be plotting in this section."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"import random \n",
"import numpy as np \n",
"import matplotlib.pyplot as plt \n",
"from sklearn.cluster import KMeans \n",
"from sklearn.datasets.samples_generator import make_blobs \n",
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h1 id=\"random_generated_dataset\">k-Means on a randomly generated dataset</h1>\n",
"Lets create our own dataset for this lab!\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"First we need to set up a random seed. Use <b>numpy's random.seed()</b> function, where the seed will be set to <b>0</b>"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"np.random.seed(0)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Next we will be making <i> random clusters </i> of points by using the <b> make_blobs </b> class. The <b> make_blobs </b> class can take in many inputs, but we will be using these specific ones. <br> <br>\n",
"<b> <u> Input </u> </b>\n",
"<ul>\n",
" <li> <b>n_samples</b>: The total number of points equally divided among clusters. </li>\n",
" <ul> <li> Value will be: 5000 </li> </ul>\n",
" <li> <b>centers</b>: The number of centers to generate, or the fixed center locations. </li>\n",
" <ul> <li> Value will be: [[4, 4], [-2, -1], [2, -3],[1,1]] </li> </ul>\n",
" <li> <b>cluster_std</b>: The standard deviation of the clusters. </li>\n",
" <ul> <li> Value will be: 0.9 </li> </ul>\n",
"</ul>\n",
"<br>\n",
"<b> <u> Output </u> </b>\n",
"<ul>\n",
" <li> <b>X</b>: Array of shape [n_samples, n_features]. (Feature Matrix)</li>\n",
" <ul> <li> The generated samples. </li> </ul> \n",
" <li> <b>y</b>: Array of shape [n_samples]. (Response Vector)</li>\n",
" <ul> <li> The integer labels for cluster membership of each sample. </li> </ul>\n",
"</ul>\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"X, y = make_blobs(n_samples=5000, centers=[[4,4], [-2, -1], [2, -3], [1, 1]], cluster_std=0.9)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Display the scatter plot of the randomly generated data."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x7f72147e1e10>"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(X[:, 0], X[:, 1], marker='.')"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2 id=\"setting_up_K_means\">Setting up K-Means</h2>\n",
"Now that we have our random data, let's set up our K-Means Clustering."
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"The KMeans class has many parameters that can be used, but we will be using these three:\n",
"<ul>\n",
" <li> <b>init</b>: Initialization method of the centroids. </li>\n",
" <ul>\n",
" <li> Value will be: \"k-means++\" </li>\n",
" <li> k-means++: Selects initial cluster centers for k-mean clustering in a smart way to speed up convergence.</li>\n",
" </ul>\n",
" <li> <b>n_clusters</b>: The number of clusters to form as well as the number of centroids to generate. </li>\n",
" <ul> <li> Value will be: 4 (since we have 4 centers)</li> </ul>\n",
" <li> <b>n_init</b>: Number of time the k-means algorithm will be run with different centroid seeds. The final results will be the best output of n_init consecutive runs in terms of inertia. </li>\n",
" <ul> <li> Value will be: 12 </li> </ul>\n",
"</ul>\n",
"\n",
"Initialize KMeans with these parameters, where the output parameter is called <b>k_means</b>."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"k_means = KMeans(init = \"k-means++\", n_clusters = 4, n_init = 12)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Now let's fit the KMeans model with the feature matrix we created above, <b> X </b>"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"KMeans(algorithm='auto', copy_x=True, init='k-means++', max_iter=300,\n",
" n_clusters=4, n_init=12, n_jobs=None, precompute_distances='auto',\n",
" random_state=None, tol=0.0001, verbose=0)"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"k_means.fit(X)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Now let's grab the labels for each point in the model using KMeans' <b> .labels\\_ </b> attribute and save it as <b> k_means_labels </b> "
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array([0, 3, 3, ..., 1, 0, 0], dtype=int32)"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"k_means_labels = k_means.labels_\n",
"k_means_labels"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"We will also get the coordinates of the cluster centers using KMeans' <b> .cluster&#95;centers&#95; </b> and save it as <b> k_means_cluster_centers </b>"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array([[-2.03743147, -0.99782524],\n",
" [ 3.97334234, 3.98758687],\n",
" [ 0.96900523, 0.98370298],\n",
" [ 1.99741008, -3.01666822]])"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"k_means_cluster_centers = k_means.cluster_centers_\n",
"k_means_cluster_centers"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2 id=\"creating_visual_plot\">Creating the Visual Plot</h2>\n",
"So now that we have the random data generated and the KMeans model initialized, let's plot them and see what it looks like!"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"Please read through the code and comments to understand how to plot the model."
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAWAAAAD7CAYAAABUt054AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAACOMElEQVR4nO39aXRc53klCu9TA2aAIAokJoKkCBIcJEqURVKkREqyJttyPKRz0+24u+3cuO3E+byS7iR2Or3u7W+5czvpdEvyvd917MSOHFsdS7YktyU5piyJkiWSIikO4gCCJIiJIKbCUABqPmM934/3vO85pwagAIIEKb57LS6KqKpTp4riPs/Zz372oxARJCQkJCSuP3xLfQISEhIStyokAUtISEgsESQBS0hISCwRJAFLSEhILBEkAUtISEgsESQBS0hISCwRJAFLSEhILBEkAUtcVyiKcllRlEddf/6coijTiqI8qCgKKYryQdbz6xVF0RVFuXzdT1ZC4hpDErDEkkFRlC8C+FsAnwQwYP+4UlGUO1xP+zyA/ut9bhIS1wOSgCWWBIqifAXAUwA+RkSHXQ/9TwBfdP35CwCezXpts6IoP1MUZUJRlH5FUf7I9dhORVGOKIoyoyjKqKIo31YUpcT1OCmK8geKonTblfffKoqi2I+tVxTlXUVRooqiTCqK8tNr8dklJDgkAUssBb4K4C8BPEJEJ7Ie+ycAn1MUxa8oymYA1QDe5w8qiuID8AsAZwC0AHgEwL9XFOVj9lMsAP8BQD2A3fbjf5j1Hr8BYAeAuwD8SwD8tX8J4A0AywGsAvD/XvUnlZCYBZKAJZYCjwE4CqAjz2NDALoAPApWCT+b9fgOACuI6L8QkU5EfQC+D+BzAEBEJ4noKBGZRHQZwN8DeDDrGP+NiGaI6AqAXwPYZv/cALAGQDMRqUR06Co/p4TErJAELLEU+AMA7QD+gd/+Z+FZAL8L4HfAKmI31gBotiWGGUVRZgD8JwANAKAoSruiKP+sKEpYUZQYgL8Cq4bdCLv+OwWgyv7vbwBQABxTFKVTUZTfW+gHlJAoBpKAJZYC42DSwF4A38nz+M/AGnN9RDSQ9dgggH4iqnX9qiaiJ+zHvwvgIoANRFQDRs75SD4HRBQmoi8TUTOA3wfwHUVR1s/700lIFAlJwBJLAiIaAfAwgI8rivKtrMeS9mP/Ls9LjwGIKYry54qilNta8R2KouywH68GEAOQUBRlE5jeXBQURfltRVFW2X+cBkBgmrKExDWBJGCJJQMRDYIR7f8G4K+zHjtBRL15XmMB+BSYbtsPYBLAPwBYZj/lz8Csa3EwbXg+ToYdAN5XFCUB4FUAf0xE0gIncc2gyEB2CQkJiaWBrIAlJCQklgiSgCUkJCSWCJKAJSQkJJYIkoAlJCQklgiSgCUkJCSWCIH5PLm+vp7Wrl17jU5FQkJC4sOJkydPThLRiuyfz4uA165dixMnsrNTJCQkJCRmg6Io2ROdAKQEISEhIbFkkAQsISEhsUSQBCwhISGxRJAELCEhIbFEkAQsISEhsUSQBCwhISGxRJAELCEhIbFEkAQsISExL5CpgQbfAZnaUp/KTQ9JwBISNyGWlARHj4B6XwZGj17/9/6QYV6TcBISEjcIbBJUoACt2UufrzGadrP3bdp1fd/3QwhJwBISNyPmSYJkasDoEfa6QOlVvbUSKL3+pP8hhZQgJCRuQiiBUiitDxZPplI2uCEhCVhC4kMKj07cdB+Utt/MWzE7z9Ov+zne6pAELCHxYYWr6lUCJYUr5kgnaOI0AEu6G64zJAFLSCwRrrmToWl3warX/f4IbYGy+YtAYhSUGgMSw3nOUQWNfSDOtdhzl5a12SEJWEJiqXCNddk5dWLx/u8DJdVA/AqUts8A2oxDmOI5R0DJEedcizh3skxg9LDUnmeBdEFISCwVltrO5X7/ybO2rY1ARhIKFFDodqBxJxQAaNoFJXIBCG0p/twnzwIN2+3X33vtP89NCFkBS0gsMoq97Z63k2Eex859nQ4yUp7Xet4/dLstV+yGUtkC1G8FIudA4x8Ate2AEgBKlwGMTos799DtwPQloOk+IJZ3IcQtD0nAEhKLjVluzwsRaNHEulDZIjEEhI+y10bO5zzsEGoZlIa7ofgDTBvOGEB5HRDtBfW9yo5TJJRAKVB/F3u/mrXzO99bBFKCkJBYbMx2e15ogk38HKDaDUB5PZRAae4AhevYZOrA6OGCwxVkakCkE6i/E6hqBSoboZTUAqHNrPk211DG6FFQ7ytQ4AOa74ey9StA+BioqqXoql3xB4CGu4t6rjjnRRoYuRkgCVhCYpEx66RY031QqlcDVau8P2/cCQUZoHEnaPwDKDM97BhZhO0+Ng2+A5o4zY5Xuy73vSKdwPINwMhB9r7BCqDhI+x1eS4CDvntYpJB0y5B9oo/ABo5dO3Hn5dyxHoJIAlYQuK6goD4FaCqxftjJQBUrwUUP5RAZXHNrqZdUBp3AlMXQZbJqk036u8ERg46VSwnNHHMe0FjHwChOwCfn2m+vAr3BaAEq6C4SbDpPvt1u+f+lAutZAtdoBYBZJmsMRi6/YaprqUGLCFxPVFAw1UCJVBq1zEttuFuQRDZzS6PVqwEgamLosolUwXFh9nvps4IOc8EHD8mIudBwwcAZFjFG7oDyuZ/y0iz4R5gpps177hfGAQ03w8gAxr8NchU5/0550aGXaCQmefrZgeZGrsTWL4hrwa+VJAVsITE9UQR9q1Zq0eXVozmPcytMPKeXeUqQHUrQBkgowOBktnlkPo7oVTZz49fBiobgRXboPj8bOjCSEBJTzAi5rJA4w4g/L79fgC1PAhMnM6tKhdqsRs9Yh+bgNaPzv/7mfO4AJr3zu+criEkAUtIXEcUlSQ2mw7KteKme4FoL1DT6vLq3gs6+/dQVmwDajeA/KUFCUo08Jr3ACOHQL2v2s22PaD0NHNA6FGgfAVQsRJKyTJbFvHb5AomRcxccqpKV7NtwYlpxRD3QnRi13FzpJolhJQgJCSWGDkWtKb7oGz7I+Z0cI3/AmCyw8rt7PdlbcDo+6CO7wHVqwH4oay4i72u+0U2hWaZed8LZLKx49SYPbL8WaBxOxvI8PmZA2LiDAALGHkPCG0GYv0ATMDSobR+FIgNgM7+HTB2glXis32mIqEEythFIXK+8Gub77elkuKHOxbiub4ekAQsIbFImI/HlyzTIddIZ5ZeSkIHpeEDWToqAelJgEyAwMh6xd1AVTMQ6wOa7wPgs4n4XgAEmupyiJhrs+FjUNb/JiNgxc9uyzMZILQVir+UVdUb/zXLh5g4zQh5pofd+gcr2bFq1tr68n25VaV7hHmmr/jMCMtkFfmFZ8Xndqe1MS33EFC3+UMx3HHj1OISEjc7EsPMFlbQ48t+zjTMw0DDdnbrXn+nt1Hm0nmVdZ/2OibIZHptVTNgJaGULnNsacs2AKkwUN7ACJXsrn/9nUC0B1Rzm0s+2AVE+5l8MHmGTa2Nn2SyQqwfFB+G0rIHmOpk/l/FDyV2GahZA8XnB1BYZiBTB5ruZe/TuBPU8T12kZhNLuCfuWRZrgzBH6teDcSvFNRyb0YPsSRgCYlFAJkaC7PZ+hVmKXMjL6E4JKL4Aw6JmobtvyX2fCXAZAHe5AofA02chdK4C5jpBdXfCRABo++x56fG2BCHvxQ0dhZY3s4qxqZdQOwylLqNQOtD7L2WtTH3hK8Eihi6UICWvVCWtQEjh0U+BGrbgdr1rOqGl+wAhV1QGney842cA810Q1n/WwCZTJNuupd9ttH38hMk/45CW3KJnT9WtQqoaims5d6EHmJJwBISiwHXP34l6x9/QULJRyKJQUCbYoE4kQtA6TLQhWehbP4iC8dpupdVgi77GZp2gVJjUBLDIDMFhTfE6rfaDTabWJvv974XgV0AKAMgI0ifuSDOAI07RBULBUDGYFJE8x4v2VW32v+dYV7m+juhlNay90hHQL6g81ns11Dz/faFgZHxbE27nMdaH2RyxOA7XjJf6nCjBUASsISECwsfICj+H/+sDoGqVWxkWE/YrgOFyROcTCdOQ9nwv9lDFg65Kut/Exg5DKVpN6D4QVNdrEnHz6txO5AaB6rdAyAmMHKUacWpMVBlI5TYAFC3kQ1ngICVdwO+EkCdBqY6bZmgxiVl7ATgs5t4dgVMtpe3sgEoD7GpPvdn8aSvLbBaHT2c8/qbcVedbMJJSLgxxwBBoUbbfLrsszkElEAJlGAFlNaH7MrQ3mThDwDNe6C0PACUr2Qk17iTEV/TLmDynL3VgpgMUbMWiA8AtrUMSsAerNBYUy6TYZ914jSQngIqGqEkw0DNGnEeIIvpwmQCZcvZ+2/+guP5Dd3OziPWD7TsZUTt8wORDrvRdxxQguJ7UQIlrAqPXWZSwyxh8XNijrD5mwWSgCUk3JjrH/ZihKjP8xhkGiAjxW7ZQ7cDig8Yfc+xnykBILSJuRYoA4AYecYHGHkqPmbrMhIsH6JmLZAxmXth61cASxPBO4icB2UskGUxvbn3VXaeqTEAzCUBELv9L6kG4oOsSTjTzd53gjX0lM1fYBUxWd4PM3kWdPa7QOSCIOa5LGv5Hr9RbWXzhZQgJCRcmPM2tmk369Rn+V7nhaKm4XRGnuFj7HlT551b7to2J+i8qokNZNSuB8pKGMGV1UGZuugZrkDoduaYqFoFGEmW7UskqmBl61eYtBDaAgwfZM21pl1OmDplmB+4eQ8wctSZxmt5AJg4xWxhI4eAxnuZPaxmrcf94A76UTZ/0cm6ALwOiHzJaVfRXLvRnRGSgCVuWSzkH6cSKAWFtjD9dYH/qD2JZiIgZiuAjOMsSE8CM102iQJo2cPINHQ7O0jkHCNDdZLJBpw0Q1ug8M+0+QtAXTvTb0sqWUVc2QSU1DDPL8ixiykBYMU2YOKUQ651t9uNOwUYtUN9SpZ5tmRgptvWo9/zuCiQIUa+OdY6b5OSTJ0dr7IJWLbODgfawux5XOoQF6zd8/87u8GdEZKAJW5dLPQf5wJeJ7J5Q7ezpZdVrWCEe5jlKyiwbV8ux0J5HSPdpl3AxFlGTLHLQM06oHY9aOhdKCs/YssH2T5ZmwiTYaCiwTtuXLsBqGxwVg8tW88cDMMH7Ar1C06FGu3zNvNCW1iF27IXmDjDHBp3/r6rWt5lZ0PcUSBJLavqHz3MHBxtn2EVdMN2NpiSHIWix3MjOMc+mN93f4M7IyQBS9y6WOg/zoW8LjEMKqmBQpY9SNEERC44ZFl3u3dIgiwgcoFNtkX7GNG1fRZU2QAlcg6o3wqlLMSqWY9PdpUd59gCZCym7xJ55QT4gJkeKDVr2cp6u+JmQyRg5EoEqBOMrDNs/BgtD0Dx+YC6jSDTBEKbWROweg2AgE3Kp0EX/ieUtt9kdjVYbOBjWZsgZCdI/j527olhV/g7WLMPPnERyJZjlM3/1rkTmAM3ujNCNuEkbim4GzrFNnK45zTvLrW5Xjf2AYttjF9hhJcMgybOsk3EYgJuN3MZRDpBRhJIR1iVfeFZYOQwIy/b7aAYKUZ89sogjBwC7I0VLKuBxzmKs2A/S42BatYCWgJIT4ixYpo4zch+pps15Jp2Mr/vyCGgdDmTGBQf4C8Fht9lUZdTXQDprEG34i72GEz2XLFbbhd778kOJpEkh0CWwSQGMtn7RjrZd1m7ztX8vA+KPwisuBOIXWYSjXud0uhRULCCXZxm+bu9WSArYIlbC/OQD4Te2Lgz/4jxXK9r2sUaYpFO9vqme13Tcn5WZdZvBeBjGydCdzD/b/kK5p8VwxpBoPUhlvU7fJA9x70to3YDYGmg9CSU5KgrrvJ+R/etWgVl4jQQagRQyxZvhjZDqV5jux3s16y8Gxi3deCSaldzbSdo4gwUgPmFw8egNOwAgtWMwPl03+YvACu3sS9i5KBr3HqrIzFMXYSy4V8C5XXeYQpeIWfYBQFVLXbi21rmjbblGM925gX+3d4okAQscWthPvLBbJkMc71u4jSUxp0sP6FpF5SKRpZcxjdOLN/IXAmTp4HGXaCMT5AQmTrTi5vvF5NyZGqsSr3z9wElyCSAxp3MuVAecqQEEJtoa9xpDzu4dN/l7YwMl93GKkwiRqAu/Zb0BBTemPMMewDKuk+xUeDUGJMJ+LmNfWC7MhSgbhNbqZQxPJICOxeub7PXisxhV5SlyMlo2s307mXrbTlk0h7b9hfeMde8xxWbeXNAErDELYV5aYLukeH5rtWpv5OtCnJ1/qk8JIhOMdPCZ6vAB6y4CxQoZ57bxp2g4QPsvTnZuIPYq1cDVc2g9BSU2jZvEy5jMG011u/4cevvBE2dh5IKM1IlYr9SY0BZLaDF2Wt8fijqJPP3Nt5rp63xvXD3skELI84q9MmzoPqt7DmhOxxXBllQAuVAaLtzoVMngeXtrNHWtIu9N+BkDoe2sJwIIw4EK0WlzTRnFvyD6hZbYjiY1wFxo9vNCkFqwBISBVCM1ptfdyTbWraFeV6b7mVaZuyyXdkNMDJr2uWQUqDKGxW54V+K7cVkao5G2riTrYcfPQpFUYBApf3YZ1iFXrOakeGyNkCbZs2qjA5FnbIbVwo7v4zu6LtlywHugqhZy7Ioxj9g8Za+EpY6ZhmsqReoZDkUoc2AHmPH8vkdX3TGYCSfCjNCTkeA0jogMcLC3qe7gEgHe27kPBv+0GIALJbKBoKy8fPse8pYrEq2TPb92ePHGD3Kfub+3hdjQGYJIAlYQuJqYEdQev7hCzJ4H0rD3QAUpodWtdjkuBbwlzhNt8h5ID3ObuNtQlaqmz3Ta2KPm+K308V2AxX1NmnxoB0/AB9Qcxsw2QEaO5nTwFL8AWaDEz97n5FwYpgFsI8eAcrqoazcxsh4+CBABtt8QSZ7r/o72e+TZyF2tyWH2eNjJ5gmXLXaJvku+8+rAMpA8ZexinfwHecCVV4nNGSMHoFSuZIFs0fOOYFDZEsu/IJlZ0mI7/0mHU2WEoSExAJRMIJy1vjJPXZjqY15ZfWEU5mK2/gMcxq4btEFUmFGtmQBI0dsW1nGDtXZBYLCmmehzVCClXa4T5PjJwacwB/47EpTB+KD9ufwMe+vLwhUNtrNR2KeYT1h50oowIjrMzXsYL7m4YOOTNK02yOxKK0PseZaVYvr+3CGMsi95ojDs9VZYZGYdnwnedwWN77drBAkAUtILBQFprvczTQa+8CroyZHgGXrnRhK91RY/VaWWDbTzZpTyVExfUah24WzAtq0uH1XqtfYwxd2s7B5D7OcjRyCsvoxVmWbKSi1G1hVCTtoByXMWZFh0oMgztoNQM0aduyKBrv52MwaZfxCMNPt8izvBhBgEZbNe6DUrgfKV4Dig04zr3GnaxBli3eyzTKYVS10B7DyHrAqnn8h5PruvNrufAh3PvpwvudeS31ZShASEgtF1m1vjh48eph5eUXwTBmUmjUAWfn9qiPvsV1ujTuh1G+1NeLPskrQLXWUhdgIcdtn2WaMRlu6aNzJbtVnupljIVjFquiMCZSHQFMXmRfXNNm5Gilg4jSee+cy7vzyzxBY+wi2bvsInvvu/8UsZk27mAQSG2D5E3Y4PKpa7Gm4B0RIj1gVVFYHAFBKKtneuurVLDRo9DAoOcIuWmMn2eAJMuw1yzew6h8EKArTd+PDLHDo7N8D1avnTXyeFUfz0YfzPfca6suyApaQWCByqrBsH6p7fNcNV/gMrbjTThC7gz2/sokNNlQ0MlJqus9eQ2RLHSAW2l65ilWrZAFTXXYuxIyT2QuwIQnbZobYACPOkUPsmHbWxHPf+x/4P39wDN//s4ewZ2szDnWM4Mt/8/dA3UZ8/tHbodRtYp5lxc8yJeo2AVPn7dwIexT5nq+7Vtfboew1a4AMAVVNtmbN/bubWeZwWW1uWHxGFwHzKF8OlNvVb7H2Pzf4eqh8K45mQ77nXsNxZoW4JaQIbN++nU6cOLHoJyEhcTOh0C0p+/nROW1rZGq2x3UdqyiXtwPTPVAa7mZTc4lhID7ICG3bHzkSQ9tnGakGyu2wmi3str7+TkBPAGYKKFsGhE/YZOFzPLW+gC01vMKO07wXyGjYumUj/p8/3ImP3t0qzu/Xpwbxx393Cmef/yOWP7ziLtBUF5MXQEB6gl0gyGSft3kPa9SNvm9r0n5mg1u2zk5q2+DYyfh3MPYBq3zHTtgyhh+InLXHmD/DrHbVa/KukHcPunhCe7IftwPimeSytFAU5SQRbc/+uayAJSTmiwITV8XokmRqrJFWs9aZDJu+BNTf5Rx74gyLhwTsfIcmVlk27rSzgG3f7+YvMMcDZUBqBEr1KlbpNt/PdNW6TSzohixgotOl27JtyVCncaFvBHu2NnvOcc/WZlzo+TmUO/+A/WD4IJSmXYAWBawkUNli755b6eRG8HHoyQ52YahZw/Tu6tWsOZdNhjzxrHkvoE4BpTVA/V1Q2uIOcWaRL5mafXHimjc5gUKhLU6SXKQzrzaf9+9iib3DUgOWkJgv5mF5ytGFI51sNJjbrsZOMuLhZNO0m62UV/x2ZVcCwMdu6xUfew3fhBHaAqW8jlnTqlsZodW2MS35wrPMT7z6MeZGuPAse7zlASB2BQCBRg5h8zomO7hxqGMEm9tWAUZKkD3TnuuAimbm9Z3pBmDb0gjsfPn7jh5lf65sEWPOCL8PWGmQnnDuAFbcxSrnqXO2RS3ANoEEK3KqVuED7nvVtQlkN5TKZuZBduu02VumC+EG8A7LClhCYp6Yl+Upu1quv5NVfK7Nx+5KTwmUgVoeAGZ6WHVrvx9Vr2ZTZg072M43XxBK7DJbNc/zKma6oVSt8kZD+oLOn0Ob2TDFsrXA5FkobZ/GX/xnFV/+iz/D9//0AUcDfuoA/vKv/7s9OLLLGW1WiG3AiA84OcXVrUyjpYD3fXkl3LTb/px8e7JtnatuZVGZM93ONGDrQ97YTrLsBLTdbFiDLwlV/Ladr4elwvkDto1Ncb5PT+ZwPmeD7s01XiJIApaQuJbIauAo/gCorI4NEhhJKJHzoOpWoKRGkIPi89uRjzrITNva6n3sePErLI+hZi1QsZJVnROnmc2s7bPeECAobLqtcSdQuwE0fQnK8o3MM9y4HYhdwef/1W8BAP74v/4lLnS/jM3t6/CX/+1pfP7BVnsb8xeYPKL4gZleoNrlK27cybZetOxlTbmMD2jZYzfn/qetNd/P1t6nJ22yfUUQN/X9Asqdvy9kEeFYMBIsJ8ND9KuB0mo2TadOQpnqsnXxz4Ca985+UcwnGY0eZt/buk8v6eiyJGAJiWuIfMSg+AOg+q2sMgxtZjqtOiVIVzTO9BhrxhkJKOkJ5u/1BRkhWRpbE9S0G0rjTlYpli0Xmb5K/Z2egQc074FSVufox3z90OgRfP5zv43feaAFSsv9LObRrj5Z1Xw7I1+A6bqR86yKb9kLZExGvqHbGdE372Fh7Ms3Ora4aB+Uus3MEicS3lg1rKy4G+BBQfCxLIim3cxz7Bkgudcm4h3MkqbFnMq8YTurtgsF9AAFnA33LdxhsYiQGrCExHUGW0PUYU/ABaCkp9jww+A7ACxQaow1m8rqmM4brGQBOKEtLOgGxELdyQKpUy6d9RgbnGjaBfDbcRGAYwFTF5yf1d/hLOIMH4PSuANIjIJ8AUbcHd9je+ZArFlIJsuFqGgAMhojXPhY5cv1bP6Zprvt/AiNNRv5yLKhAi17PdueEelk3meymB0Pij2+7WO2t+a97Dta9ylW/ZMFpW4jGypp3gtM9+Ta/LLgzvTgmjxAN8RST1kBS9wwMDMGRlOX0FTRjoAvuNSns2hwNMj7ABCrcO3VO6jfCvIFoIw6iy6V9b/FshWgsFBy98SbkYCiR50R39AWr/YKAmIDLBs4UM5kjnQESIXZmp9gpZ2IhlwNNH6FuR1YbWhLHIeF4wAtD9rrjQ4yp0b1GlYVu/3OWsw+vk2oIksZQPNutjHD3XTky0JFJrFiryEKAtW8OvWDBt/LkREUf2D2yjcfbrDMYEnAEjcMRlOX0Bs7AUBBa9XNk+maDdFIqr+TkQT/R+/Z2QZGyJPnWKRk7XrHagYwoht+l5HbnV9lE2+ukWA+2kxjJ6GUrwA1fASK4mfhPKE7oJTWASWV7JgVDUB5PRQ9xghTCTB/bmmdne0AYPiQY+3ylbCQ94zpahbuZoE8NWuA5gfYyPNkB5BpATIm05xjA0B5PTv/nCzlZtZ0W94OTJ4RJCwajFXNnosBmToLEqpaxRwRizUMcYPtiJMShMQNg6aKdrTV7EBTxYalPpV5Ia/VzE7xYlGS97OBiqpWl4XNDhwPbWYRj0rA3q1m5/RyeWD0CGtY9b7Cjl1aC0BhFTT8UDIGULMWiq/EHuvdyHTa8jp2zNAdtoRggVLjLBYSYERaUsWkhYmzzthz024mc5QtZwRsN9sQGwCd/TvWEIwPMCtaaAvzJU9fgrK8na2iv7KfVb/N97EGXtO9rIEW6QQqm5nneXm7890AACks7pI309iXCmhT7OKA4tdAzYXFOs5iQRKwxA2DgC+I1qotN5/8kO0nrb8TGDvBSDNyHs6etgz7h998PxuYWNbGyI4sNjlWvZqNFZfXu/Tb3WwooWEHI+Wx4+x4YyfY77XtrEnGCXvsBKu8fX5WOXIfb/gYlPW/aeuohpPeNnqUeXd5toOlMl/t1AUgWAlEOkDjpxnJb/4C0HwfKNrHrHQAMPKeneXQCfgCUFY9bCe1HWIXF18pGzm+8D9Zxez+bkaPsMwHhYDkqB13aSM+CIS2sljNm2jH23whJQiJWxqLojvns5o13cc6+PYuNHF737yXWdAuPMsqYfdut81fZMMJyTBgJNjutdgAEKwCUQZK024Wwj7ynkvG2AUaegdKy157G/Iq7wSZe9Py5DnHAbFiG4gstjappIpVxPZaeiRHmI2svJ5ptKNH2LFCdwAjh6G02EHrQrcmO3x9HChbYX9e29vbvMfRmkObWbXLv5umexnpjhxiGzhcq4lQs8b2N9tr6kuXMftdoOyqJ9huhAk4DknAErccOOk2V2xy6c5Ac8Um+LMyC7LhiVUUeQznPfvbAK/9jPgwArdM1d8J5Z5vsCYX4G1iTZxh64i2fgUKH0KAAiXSySrdybP2/jWIQQulcSeYM+IKW1U01WUPcZDYLQc9AdRtZFVsaAswfIAtCYUfqFmXQ6bK5n/LJAM32Tff7+QD2+8rLjzJETb5lhz2DJmALEBPenbIAWxQgizLtY6eWeUEXE1JNN8POvO3bEKw9aNX30i7gRpxkoAlZsWH0ZnASbfEV4GminYAQEP5OkyqV9BQcZvnuTmfnw8K6FE7pDxqB9z8Zs4/ZqfSup9ZprhNiyzW0CqrZZVtoBTUfD9rjIW2MPLyBYA6V8hMw90swKauHZi6ZAfggEkHNWs8YehUs5b5hi2NkbkeY883k6zCdgenr7gLCJTl+GopWAElOeI4LBq3s4ahvZxUSY2yEWj+mWvWsEWhlc3s9UYSSuQcUFrH1s7nfCf2YInLiSGWfFr29gvRlFQY+fKw9qtdvnkDNeKkBiwxKzhZjaa6Cz7HzBgYTHTCzBhFHXO+z7/a12WDN/tCZasQ8AXRXLER09oo6sqac56b8/mbdrOV7uL3+1iDzbXJgUwNNNPn0oYPs45/w922Lst3vx1lnX6A3bZffg0w04ykR95jk19uhO5g2m1prR2AYzI/cMa084E/bW9KXsY2JfMIy6bdjPTHP8h5LkpqGNkb9raL6Uv2RcDHyBQK06aVADuvanvnXEUjAB+b1ht8h6W4KXAq7WAVULcFqGoRwfR8Lx71vsw+9+hh22+8AYDiNDKjvQCINSXtUB6l9aOO/DByyPZEL0w+uJEacbIClpgVrEJUZnUmFLKPFaqeF2o3WyybGm/2cRCAUn8lFOTKD9mfXwmUOjplw91iLZFnooqvpd/6FVFpkWmwHF/uhABE6hd7o/uYlJAMA/Ez9m25z1tVK37HlytiKl1aa/VaQAlCKa9gZCYkhb3Oap+SZazq5c27jAWMvmdb4s4yrzAUVtFOXYCiTjlRmM17nOO0fYaNKGvT7LM27gRGD9mfyc5qUKdZ7u9kB2vUTZ5hwUMf+Q9ARROrpEGs6Th62JsNPNkhch68/xMUJx/cSDrvbJAELDErsskqHwqRdCHCLIbUgVwCL/Z1+V4722MBXwC1pQ2iwm6qaEdEHUSorHXuz5+PEPgtrhJwdp6ZaWbfqmpizofWhzyHUQIloMHDWcS92+MpBmWcW/aqFpd39l52kMomFk421eUdziD7nPj48bAdes4zeHtfsR+7HYoeF7f2SukyNlbM34PI1dTbDcAHBErZlJoYpCBGsuV1ICMOGnqbuS+ifUDdZjtwfbdIO6PmvazibdoNvrdu1gGLYuWDG0jnnQ2SgCWuGoVIqqliI6qD9agKhop6fjayCbzY1+V7bTGPuX/ugx8RdQihslWza+B5CCFvMMzo+06Fl0W+gK17ctJ0EzcPLrc3RVDfL6A07HBSvWo3MGKOnLGlCztjODXmzefVpoEVdzMJgE+m1W5gVWbbZ8VYtFgauqyNyQzpSdYEm7oARY2AUuNQVj9mywE6s83V32lXsxAh6RSsAKpaocQHAfKx47k3YNjfgeIPAHUb2ZfA9+gNvpO3chUXo6yGZ1407WbVfv3W2Z+3xJAELDFvFN+YI8SNSVQF6xb0PvOpeOfz2qaKjXkfa6xYb//eBtVMoiKwDCOpi7PKHkVHUzbutJ0B94of5Wx2qNtoN95cWbhZm4GVhh1MV40PA+UN9rjwIbshGHMcCy0POM22ts8yiSGju7Y4+wD4GNm27AWp01DUCAvNWdbGrHSGvVa+bDmUiiZgeTuU0aMA12KhMElFUVgc5cq7GfleeBZK22egtH7UcYKMfWDHSSr2kk49/6aK0cOFK1de1eZpeOb7e6HQFvbd3MAyhCRgiXmjWC023/Pm46rIV/EW+/rs15oZEwCJ1+YlU/hRHaxnv5ewi8bVXAS8Bw/aFek5tlI9UOq6TSZBoGje46kAnaxbiJ+RqTFiLK+D4i9nnmN7xZFSUsv8tulxlwyxG9Bn7E0R3FK2B0gO2bvbDCiRDiZ5DB+CkhpnEkD2WnktxqbyOr7H9rzVbmCbLIYPMIIPVLLmGB8gcSN0O6umq1eLKh4ud4TAbBKD0M53FCZwN24CGUISsMS8USwp5Xve1TbS5tvw4zAyaUyqV4Tnt7Xq9pzncC3Y+zPmkphUBxAqWw0AIFgIp3rmZc1TAkGnMdb2m8x2xte2N+1ilq26LSxyMps0IuftGMoMI+fGnaCJs1Dgs3MUVrNb/Mmzzn60QBM71+Y9zJtb0Qg03gueIcF2tbUBRhIY/0AQs9K4E/CXsIpVrIRnmRMI3c4GPewlm1ACrurcZ8smAebVRZ5GWDVzRCiVjYzcq1pyKlOPfzrr9Tw3gl0A7p6bVG8gu1khSAKWmDeK1WLzPe9qK8pCr4+ogzAyKiLqUI6XFwCCvnLh+eW/zwUzYyBhTCFuTKI3dgLbQh8HAPHneV9E3IQQtcPNq1sB+NiqHyUAlK/IXacTugNKYojpyBOnoVSvhrLht4HyOlB8CApMYOSISFijigagooHppCOHmG852McSzNZ9GkhPsZjIDFjV6qmwy5wLxeYvQml9EDR2UizLVFo/ykg9NcYkEDHVtjv38+apQEWz0d4KPWuaWb4KtqqFke8spOr2Gs+2E+5GgCRgiesKNykvZMjDW5G2iteFylqhp9IIla0q8Dr2vzqvfIt579HUJUykB7A19AgARTQTK4O1yL4IFHM8T3W3rI1Vu8lRKFrMzsC1ka8CrF3HKkYevm5vPWYh60e80oK93p2a7mMkFGEDIDyA3LNBePAdUMaE0rzbscRlDzqEbvfKChmXNhyssKfaTFY12xU4mbpT4WdLBrxBFtpcsOHGnscn6hzdvCjN/SaQHjjkIIbEkiHfkEcxwxYjqYu4MHPQ87piBkbmfm8TRkYT799UsRErytdCgd92YTCCUs0kmis25vU2F/v+bBquG8rKjwChLSDT8CaqAbkhP0rACV8fZUMcdGW/nbD2WccaFj5mh90cZaRXfxfEQAUU73k03Q9l1QNAfAggkxFiRveselcCZWIQAoDQhhE+BrIsNoQxctAO5TnPnhM5x2QLWzPG6GHQTB/ISAHwsQuOe+FnPkTOg3wlLHdirq/TnUjXdF/RS1OXGrIC/pBisUaIr+UocrEacSE/cGNFG8yMiYAvkHOsQudtZSyoVtLz/LFUH0JlrUibcczoo573z7WwdaE3dgJtNTsW5G0WEKvTM2yAwl+ae1ueE/LjB/ERXTvHQYkPAgiwFUF8kaeQBVzhQIOHvDvUhI0rA4wcFmE47nOi6tXM1uZu/kU6XdrwLvZ6z+qj++1KeAsLEuKSQeMOW7u9k33e2nWuz3evp3oWCN0BhUxG9OX1roWaeYYsXFWv0vrgDV/5ckgC/pBitmZXsaRqZaxFmT4zM4YYbPAOQOTTiHMtYvn8wNXBEDoib2FF+dq8HmEuH9SWNKG6pM7zmRPGJEr9q7GybC0i6iAuzBxEW80ONFdsRHmgKuf9veeXn2gLSSOFvov6FXfBF/wq04AVP8tV+Mh/ACoavLfl2USiBBiBgcVNUvP9TI+d6XZ024a7vTKGIE0ADfcA0R5QzVqWDSwC4hl5Km2fdSb0Js96b+VdqW0en7IIB9oNRPtE0pvQX21/r7Jim2f6j38+GvvAmw4nPqpLL3bLCbMNv9wEVa8bkoA/pJitIiuWVCfVATSUr7OPt3Ab1mjqEoyMCj2VLuqikI+Uswc6qoJ1WFG+dhai3Iimig0YTXWjPFCFiDokHBD8XJorNqGurMUOgV8PAgHwoToYAr9Vz52aK9yAnFQHYJKOtBnPIX1OyBF1EMtLmzCSuoim2nb4tQQQCNqLOO9zVcb59UslUOK1b40ccqbn8umqgjS/wKrkidMsU2L0MGvKucalQQrz8vpKWNUsLGW2BstJvG4jI/bYZTsN7gILU/cHQDW32eHzLZ6qVgmU5B1AAWBrzAUkg7wLNYscfrkJIAn4Q4rZiKLY2+VQWSsi6lDBmEYrYxWs+Bzy2WiP9g7ZDbKFXBRyBzrmcmIEfAEMJjpdUZMbxbaNiDqEutImRPUx1JU1o7miHZPqFdSXrUbciGAs1QtUALWlDTnnNdvdQ6hsNRQAKTMGM2Miog7mfKb6sjWe4Y5VFRuB4QNO9kMz356Rv5mYA77dV2FhP04GhD0lx+WCuk2gwV8zvTfa74z+uqfujBQwfhJo3AX4A0ySMJJQIheYLJKOeHzAZCSgGClvA1HEYjbZSWzxooYmCj0n71bpm5Rs80ES8C2I+djI8lm6AIdgG8rX5bV+ZRMXfzzf+5oZ055Cm5ucmys2siBxxS8uCoVI0amcl4Nc772ibA1m9DBqSlYAACbVKxhOXkSobBXixiTalu1ARB0UjTj3ebnzg1sqNmNCveyRVibVQdSVtQDIoL5sDdpqVM9n8vv84s+NFW1QfH4nvL1pFxsrzg73yQOPDuomI14dNu5gAw/Ne5mVzNSh+IIAAYpr9NcDPnhRUgtasY3puHrMcUOUrwDIFD5gJXIhNxIyZxfc0q59v9EhCViiIGar9rKDzLMxW5WdfdzRVBcm0gNYV3NPXu20qaIdJb4K1JetBoFACmE0ddH1eoegq4MhVAZrwZLNnMqZOxjclbkCRTTgKgK1GE11Z8kUak4jzu0lntFHkTSnXdKKI29UB+tR4isvcKHziYk7IMueNvjOrBIEmRqbKOOaL+C5tRe6qmk4ITnlIdfPC2ctuO1hGH4XaNwB1G5wuSFKALikhHweXpc8cKOO/95IkAQsURCzyQJugs2/RULxaKmzHZcfqyoY8hCkMzq8EfVlq225YxVUM4mJ9AB4Rcyr58aKNrsxtwZN5Rswmu72VM5mRsO42o+J9AAaK9ZjNNVjV/CDWFG2FuWBavGZmGTSmnPu7O6BeYlrSlbCyOgIlbUKjTqmj2NZyUrQLN9rvok754udo5kU6WQbiJt2wbNFOfvbDwTzrnKfLWuBR22yiwD3Fe+d5ZPke99ceSCfa4FM1fWzslmf+2GG9AHfpDDiaXT+3y/BiKev2XvMtqW40AJN7uMlWIhqYwBI+GrHUn3itt59XOdYASSMKaSMKBQ4TgYgg5HURSwvbUJEHYZFBraGHkFTRTtSZhR90ZOoLWmEAr/dmGuHllHRWLEebTXb0VjRBoCgZ5gcsHn5Xkypw+iNncBYug/1ZasxoQ7AyuhotiWHisAy9j1nNHHe2f5kR6JhlTZAqClZgZFUF9iYGZNX5hMiP2dYeGgLlFg/++/ajc7wRD407WZ75prv9/5sLo+seM59c6eOFYNsP7P42SuMbG2QZYoLREFv8IcMsgK+SXHpmV/i2J98F4CC2//9b12T95hP/CMHJ83qYD1aKjd7pAp+W99Qvg7NFRtzKmcrY0Gzkmhbth1RfQwN5etQHaz3SAPNFRtxJvIGWio3I1TWghl9FOuW3QOFgJg+hpaKTZhQL2M4eRF3hh4Vt/qT6hXMaGG0LduBSfUKmirasbn2AdSVNYNAdsORNeJGU10wMirqSpkmXMjBkT2qXB2sd40pA9XBepT6K2bxNW9E2oyhPFAjJJK5v+Cj8GYveKtGQLEdFbvzJoIV08Ba9CZXQScDvCPM2fvuFhE3amUtCfgmRfuXPglAQfuXnrjm7zWfYYwmWxIIp3pQFQzZVS6/rWcNKtVMoixQCb9rA0V2U6++bI1wJjD3g2JbxYAV5WtRX7ba5SZgxFxT0gCfz4dQ2WromTQAH/wKH1VejVJ/peeCUF+2WniJ60pXwcwYMDIamis2IaqPocrWk6fUETHizKt2K2OxRh3p4jNWBZeLc22saBMab/ZdBL9INVasx4w+irJAJYr+p5iPzNy+2OpWkReB2nU3xFhufidDmQjtEQjdbi843bs4lbcbN8D3kA8K0WxqlRfbt2+nEydOXMPTkbgRwe1c2dNfhYjZef52+BQ/aoIrUR6oRsKYQlWwDmPpXgSUUjRU3JZTRbbVbPfY3pidixHxePoyqoJ1qAzUwsxo8Pn8GE11o7FiPXRLQ6m/3D6fDUgZUaStuBiyyDdVB8A+pxAcvXkDFPiEhmtmVAR95UgaU6gM1mFSHUB92RrPn0Nlq4uvYJFbOWd/r8WATN3xDoPYLbudDwEy7LwIXhEfuaqm2I1aPc4H7DMcXbLmoKIoJ4loe/bPpQYsMScKacGF8g+c57cjoJSgPFCNlDGD6mA9AAWVgeUIlbXCylhIGFMYS/WiqWKDeE1UDwvNdDTVhQszBzGpXsGK8jWY0UeRgYWEOQW3myCgBFzn0wNF8SNU1iqOaWZ0DCY6ATDXRsqYARGTPBQontfGjQiADDQrhaPjP0NUD6MqGMKkOoALMwcR1cdQEazFSOoi6kqbEVGvwMpYnu/AylhCO85GwBdEbWnDrBr7nBBa6RFGKM33s4k3RfHkRSiBkqtfQJlPw73JcCMt4nRDShC3MBYabs7hdkI4leoapIwZNFe0gwDbvXAFobLV8Pv8MDO6bQ1bDoICzUpi/TK2ery+rBUxfRwzehhGRkdDxW22Ba08a4ABqAmuFPa1raFHMKOHXRaxDTAyOnx2iE7KiCKiDbn8u5tQFaxDzJiEmTFyJv56o8cRDy5Dc8UmfCT0BCqCtRhOXbB1471YVtLgGaZortgIggXAqdoTRgSh0lViKi7f982/V96om1feRrYUMXJIjAkv+ljuTTrmezNAVsA3IRbLATHvBK8suJ0QEfWKGLEtD9ZgUr0CK6NjJNWF4eRFECzbHUGYSA9gNNUDK2OgrrQZI6kuEDII+spRU9KAutJVCJW12kE7QYTKWjGpDoiKsbFiPSqDy9FcsQm3L38QU+owLswcREQdREvFZhhWGkFfKSww50KJvxJNFe3YFvo4mio2YkYPI4MM4sYkGipuQ6isFdPaKJoq2hHTJ9BcuQkN5euEDhzTx+2s4UEEfaVQrWSOwyKiDru+mQw0KwkoCmb0UVc1n//75gE/8/l7yKnouHPBXte+mNVevuM56WO6N4msAIp5zq0IScALxPWwgRUCd0BcembfVR3nqm6Bs1BftgbT2iiMjIopdRj1ZasR9JWiqWID1tXcg3CqB72xEwinerGu5h40VWyAnlERTveiN3YCMX0CPvgAmxgJFswM+8c6mrpkE+wQVpatRV/0JLg1zecLIFS2Gptr96KutBkT6mWU+qugWSkkjRlMpAcQUQcBwLaKZZC24h7JwcjoqC9bg4g6hOqSEMoDNVDNBGpKVmA4dQE1JSuFbFLqr0apvwJ8fREIolnoWPAIPsWfQ7iFvu/5/D0Uiuu87rfYXJZIDOWVKHII90MgY1wLSAligbgeNrBCKMYBYcTTuPTML9H+pU8iWF2e9zlXdQucBb/P7wpFZxNrI6kuNFW0u7ZRMLkiYzsIZrQw1i/bicpArSC7xor1niELwFmWWVfWDB/8aKho81jTqoP1qC1phE8JIFTaCot0lPorkDAmcVfocQCKRzIIlbagxF8B9/DGhmW7UOqvEK6IpvL1eS10K8vWAmCWt2UljZhUr9ijx+QZMFlZtga1pY0AgCb7/AtJOYu17fm6gssSVavsjcizODNaH5QyRgFIAl4grqcNLBvB6vI5SX8+Fwh+Czzff9S5I8WX8vhhFTSWr2fEWbYOMX0c1cF6hMpaUVfWgpFUF5orNnkIcl3NPbZGbCGuR1EeqEZ92Woo8GFKHUZNCct3cOxePoAyttbcirDd1OPyRnPFJs/GY81KIqaPo6ViIzLIYEX5GpT5K6Eoij3IsR6Az5NPwcOEuJXucvwMWio11JY0YDx1GeWBKo/lLuALwsqYCJWuAuAreIGbb97y1ax0ulo3Q87r3XaubGtXzgLND0+AzmJCEvACUQwJLiXmc4FY6D/qwiPFyz3eXcAnmlisgdUFHwLIwERv7ARKfBWec9As5uHVrJQtQ9SI4Qm/LwC/rwSskl0FHwJImVHM6KPwKX4xSWdkNMT0CXH8UNkq2zHhQ5mvCmX+GnsIYpmd43sFdaUtCJWuggI/RlIXRT6FAgUrytYgac5gOHkReka1LxLMvpaBiZqSlXBfwLKHLXhVnxvwfslzjm4yzkfOs1XLc5L51Xph5/H6eS/QvEUhNeA5sBCtdyn1YQ5+gcgnP3Ad0chootGVb6y40OvYindHu3Q2U7Cg9LOR/ayZVbEREXUIBMtuvF2CAkUQBH89z1yotgltKHEOQAal/jLbbpaBT/Ejog6hJrgSPvihWSkoCpMWuqNH0VSxAQ3l62xXxb1ImzGEylqxuXYvQmWroEBhVS58iGhDAAilgWoMpy6AQKgvW40pbQQl/nI7sawdK8rXoCpYB91KgZBBypwRI9C1pQ1ImzGPzuv2AkfUQUykB0CwMKOP2q/bkKPh8u+ATeB5NePFWLPkQTFjyLNhvq8vYoHmrQ5ZAc+B+dzKG/E0ps72YPJ415Lpw8XArW1WB+sLB8PkeR2f4BpMdKG5YiOqgyH0RU+iuXITqkvqUBUMYUX5Wo9Vq61mB9bV3IPKYC0yIGQyLKqRQKgOhqAAGLHPqa1mB1ZXb0XaTHjWA9WWNKI8UAOARDUNm8wB2OPGA8KJ0VixHhF1CLWlTQAIk/ZGjpHURRHAU1OywnP8+rJWqFbKdnWwLcsxfRw1JSsxkupCQ/k6TKkj9gCJiYpATc4GDXcVWhGoFc1HgMVXDqcuuHTitfD7SkRFm30n4rbVFYO57mSuVgaY7+ul7DA3JAHPgfncyl965pfof+FdPPbLvyr6NdcTRjyNwX1HsPq39yJ7XLYYNFW0ozpYjyl1GEZGRVQfR03JClQtWw6yQ3eaKjbYvljyaKialcZ4uh8BpQQrytaA4GjPm2sfyKOfWvaILtNtx9P9sMjwaMtcOmiuaEfSmMrxCvMm3oid7aCn0iKngl8ANtc+gPqyVgwlzqOsaiOmtEGU+jeKhiKXTLKjNwkWRlM94Bs8zIwJzUxhXO0X59dUvh7lrm0eGWRyRrPdW5yz5YWIOggfAoD4bgtLE/lez3Et9/pJXB0kAc+B+Wi9nKz9JSU3ZOXLq/kH8X9g3b/66NwvQO4/3trSBpgZA3oqjZqSFQj4gpjRxjwhNHz4gmuocWMS1cF6ZMhCqLzVDkNfKcgoVNaKTMb0BPQkjSlUBJe7Jt1KURUMsbzfQC2WlTQgqoc9+9wAuKrHDTAzOjR7AWfajKM8UOPKqaiDD36EylZhJNWFlqpNYm1Ria8CK8pWo6ViE3Q7Vc19bAAIp3oEmbM7iIxrGIQRLK+eeSYxz46oL2v17KLzjnebGE112RGca5Ayoy7HB9OQi1lc6sYN45yQyIEk4EXEtW7MFWMtmw38ArH6N+4r+jX51upkb6ioCtahMlgLd9OtuWIjSnwVqArWIW3GkW3pMjI6KgO1qCtdBYAwrY8gVNaKwQQLWq8ILkdMH0dtSSOsjInakpUgZDCa6kZTxUakzBhqShpwT/2nUB6ohgIFZEdAcufBuNovCHFGH0VFYBlGhSTAJu8m1Svizy0Vm7Bs5UoEfGWwYCKc6gEPbq8taQKIMKldsSf0Ngp3hJWxENMnEPSVQjMTaLGHPWb0MJLmjKd6TplRBH3lnl10gLPeqa6sBSkj6qmwmfSSLU3MvU2a42qcExLXFrIJdxMhewDDTGoYe68DZrK46SJ+gaBMZs4mIW8WsUbWA55/vO7BgaQxBc1MgDKEZSUNyGQswPYAh8paMJy44HrNdtbAKmlEqGwVpvURlNkJZUlz2tVEugQFQE1wBdJWAvAR0lYC4VS3p7FFsOCz83B5M02BH6X+Snz3h0/jge0fQ2mwDHfccTue/acf2dN0G+zzWI/xVD8aK9Zjc+1eNNuWtAmV5Q9PqcPivUZSF5nWa+dLALDzI7qRNKeRNKbscHYNpYEqDKcuoqZkJWpLmjyfm0CY0UcBEHwI2J5iH8yMIfKOp9QRrK7eKrRj3txzN0nzNU0Xkt0ssfSQFfANhtmq3Gw92tJ1TBy9gNotaxGoLN7XWUxjcbaKiq9gj+ph1JQ0ACBkMhYqAstgZNKYVp3mWV3ZKlQElsHv89sxj2HUljSJZhS3oDlLO4GG8nWYVAdRX7YaPkURt/tbQ4+gOljvamwpqAmuwJQ26GmmvfziL/E3/+Vb+NP/8UVs3bkBHce68dTXf4Q11Xfic7/zOTsUCGip2gTAh7qyVaJxlzKiSBjTqLfjK91NtOpgPaqD9dDMJDQrZY8uj6MqGMJw6kJWbjDE5oyWis1IWwnPeTZXbMS42m97oL0aM3dhzFa1zmdbs8QNDCIq+tc999xDErNDj6Xo3LdeJD2WIiOlUfjQWTISatGvP/etF+kHysPU8dQLZKp6Uc89962XFnCOL5EeSxV8jmHpdCXeSYaV/xwi6SGKpIcoZSTIsHSKaRHSLZWuxM+RYekUTvaRYelkWAZdiZ8j0zLpSvwc/Xr4hxRJD5FpmRRO9pFuqWRYBmlmmhLaFJmWQeFkr/1ajSLpIftczpFhGWRaJhmWJs7NebyTdEsl3VRpw+Z19PQLf06/Hv6h+PX0C39O7ZvXk26pdHL8l3Qlfo5SRowsyxLndSXeSaZ9voalk2Fqru9BI9MyKKqOk2okybAMmlbDZFiG+L74ebu/N37uuql6zjuc7KVfD/9QfE/Zrwkne8m0zIJ/P+5zlrjxAeAE5eFUKUEUiWK9vby6HNx3FBndwMTRC7B0vej3af/SJ7Hzqa+i7d88ioGXD8393Kf/UFTEZlKDNh33nGe+857NI8wx18ohccvtK0dEHUTG1kz5bXNDxW1i4WZv7IQYpLiz7lHb1nURobIW9EVPYjR1CX4lgNJAlZ2rsAY+sKzfGT0sLGER9QrY7bsfK8vWIqaPI20mkMlYqA6G0BF5C+F0D3q7LmPrTm/luHXnBvR09bqyKFjwTgaW5/ada8KjqW4kzGkALD0N8GEk1YWKYC1m9DAAQoZMKACSRgwKfGycOnEBtSWN4nvjdxLhdA8U+NFSsQk++BAqW4W2mu2oK2vO+a559gVbbZQfi5njIbF0kBJEkSjWD8xlgjWf3YOL330Fx7/+91D8/qKac9wmtukPP42ps31Y89k9sz4/u+kX6x3CyJsncfzrfy/OM995F5I55mryWRnL00yrDNQibUbtdT6DHm9uyoii1F8FvtY9VLYKAV8Qy0oaPWPHDRVtqAouhwIfRmxZoq1GRW1Jo0ea0FNpLC9twqQ6iNqSBviVAGpKVqC6hNniQmWt9hjxBrRvWo+OY924+/7N4tw7jnVjXTt73AcfJuxs37aa7agtaWLE6POJ4Y36stXoiR5DPDiJlopNrnFt1kSECjFK3Whr4ZXBOjvMp1rYxpy19uvZRmdkxIRcbUlTXhtgMU0zKTl8SJCvLC7061aWIIq5bc/3mt6fvD2nlMDR+5O3hKRgqrqQMtwwUhoZiTSNHjhLRiLtOrcXyUikSZuOe87TSKgUPtThkUG4dNH7k7fFa/n7zSZphJO9pJkpl8zQ65EWwsk+MkzdvtU+Z8sLui0bGJTUZ7IkBZ0syxI/c45p0OXoGTIsnVJGzJYeDIppETIsw5YwDDJMdpyLU++RaiTJsiwyLIOe/acfUfPqBnr6hT+nNy//Az39wp9T8+oG+tY//F8UTvZSUp/xyBaGZZBmsO8rqo6L8zcsjQzLoIQ2lSWveD+3W2Lx/pzJA9NqmE6O/5Km1bDnNZZlef9us6QWLmlI3PxAAQlCEvBVwK33FgIjwNl1YOc4SUGKbjJ2IzEySepUjDqe/CmpUzEiIgofOku/2P21vMRpJNScc9RjSTr3rZfISKkeMtZmErNeZLi2a1lWAQ1To6n0iIdkptUwxbQIxbQIxV0ab2/0BIWTfTSthkkzUxRO9pFqpFwkpGURoSYIUDdV8mrCuuexcLKX/o+//QNav+k28vl8tHFLOz37Tz8S5yhI1dTItEzPRSGXWA0y7HM2LZMMQ7OJXrdJOVvT7SXD0mx9WM8iU8OjA3P9mIO/r5eopcb7YUAhApYSxFWgGFnC7VRIjU6gvCGUc3svjkPA5j/6F/D5fVj9G/d79F2OshW1uPjtnwtpY9NXP43J41147Jd/BX9JiXgelxPWf/Fj6H/hXQAKNn31U7jwt69g0+9/Cqs+eS+O/vG3seNvvgJAQcvj23Hs63+HDV/8GILV5bA0A+GDZ9Dw8F2ebjtbww6x7oc5FxQ7x8GH6pJ6VJeE4EzaKVDgByGDmD6OctTYkoKKUFkLeqMnUFvaiBVla5GBV+KoDtZjIj2AlWVroWc0EWhTHQyJkei0mfSMLFcHQwiVteJrv/sN/H//4P+1A3eq4bPPgSemcW/thHqZWclsv26Jr1zc+jM3xhWU+ittuUJFqLQFpagSY9nrau6BZrEIzm2hj9sBPRmx9YNZ8rrt7y8AM2OiOhgCUQZT2oj4PgFHeqgKhlxhRrkjzm5dXk653eTIx8qFft0KFXAxVa37uUNvniDLKNytdt/WT3X05a1S9ViKzj3NKmAtmpjz/bVogjqefoG0aKJgpex+3/ChDtJjKZo81UO/2P015rDQDVYF25U5q5TZn/VYijqeeoH0eKqoSiy7cjs5/kvmijBVsmz5gd3a66ISdNwOmviz29Hg/NzMqoSZVDGthimc7CXdVF2VqCYcDm4phDsY+LkZluaRFNwVMJck2Pn1ifNw5ApNfBb+/ItT74n34u/DK+iYFhHVvvu7yidBzIZCfw+yUr45AClBFIf5Wrv0WJKRVSyZ93FtOk4dT71A2nSc0hMzBaUIyzBp8lQPdTz50xwdWJ2KideZqk5Dbx4nI6WSkVKZnGCTt/e8vJq1kdJcx0oX9R30Pv/WnHY0Irdlzcjz3+c8/62ZKYppEa9u7Hoskh4my7JySI4RayeZlklJfYZMy/SQ6rQaFvIB15259nol3kmamSbdUmlaDefc4pumQWkjLo7J3ttwZATTEMcKJ3vJsixK6VEail8UcoP383hlBn5O3u9Kz9HDZ0Ohv4di/n4klh6SgLNQqNJ1iCtJvT95a85KuOOpF4RvNx+cJlh6zuMZCZXUqZggTl7ddjz1AkW7B0Vlmhqbot7n3yJTN8jQDEoMT5KhajnHswzT1nsZ8f5i99eo9ydv5/kO+GdN0lRnf0FSLwamZVJCj3q01Ozmk9vLm09zVY0EmTYxcZJ0NFW3Rqy7yE6jhB6l3ugJiqSHs55n2J5eTZyb+3XuhhdvAmZXll6fL6+chz0+YF4lX5x6j6bVMFl5GnIcXAeXFeytgUIEfMtqwIXsWYP7jmDz1z6Lyz97F+/+zn/Fzqf/sKC+a6Z1bPzyJwFA/J6NQGUpGu6/A8P7T+D8//NzVK5aifKGWlSubgRZGViqhp4fvS6sX4HKUvF+rU/sxs6n/xDrv/g4ApVluPidV3D8z/4OALD5//NZkMlef/mFX6P9S0+g938dxOrf2I1gdQWMeBqR0z2InHSiMe/7u3+PmrYWaNNxzJy/LGIzKUNQJ6MAAas+cS+u/PMRtH/5kxg/eh4tj97DPmtSQ+T0JYQ+shGB8pK8n9WtR7o3DTuaJlsvpGdUmBkNPvihWklXQth6EIDL8TOoLW102bHWQ7Gfy6fJ+NYNJzTdj1J/OYK+8qytxWy6bFIbwowWRtuy7RhJsbyJFWWrAcATUWmSDkLGk+Q2lupjNreyNRh2HZdPugHe9U4VwVpUBZdjRg97ti27ESprBVRFaOju91lMLVdqxDc2blkCzhczKUj5eUWQ32yRkl1//yqmzw/grv/0r5EanUIFlJwGG2+Gbfzyb+DxfX+N7h/+Cu1fegID/+sAWn9jNxIDY6JJlk30wepyrP7s/Tj+599D8yMf8ZyzvzSIsfc6MHH0Ao5//e8FiaZHp7Dpq5/OG40ZrC7H2HsdSAyMQ48mseH3PmE/9gkM7nsfa35zDwZ+fhDTHf0AgDWf3QNLNxG9OIDK1pUwkipQqgiPq2YmUB5YBp+PzfPw+ETWlGpFRB0So7UA7FHkMSwraUDQV4oZfRSl/goAGawoW21vybBQW9qE+rJWEPgQBJA0ZzCSvIh1y+6B06habv93HQiEtBlHS8VGJIwpkaXLG2l8tNidLNZSscmVz8vOT7WSSBjTGEv1orlyE6yMIbZgrCxb68roZb/njgQHhD+3pmSl5ztwb8kI+IKoL1uNqB5GS8UmTKiX86ajXS1kEtoNjnxlcaFfHyYJIh/m6/Xlz+e39/l043PfepF+sftrFOsfFdpqz3P7aexIp+3ZfZG0mQQZqVwJgUsEbg3YDSOhuny/Sep5bj/psSSNHe0UVjM9kSJTc/RBI6Xl6NamblC0e5AM1X7safaYoerU+5O36Px3XmESRTxFV2JeKcHtVXXf9hcao3U/ZyhxgcLJPoppEbIsS2iwbssZ10m5NGBaBo2nLrP3NVkzbio94mqqea1l/PxGEt2uYzPpIapNeCQFw/PeGrk1aMMySDdUMYIdSQ8TUW4TzG1ZywbXq7kW7W5Y8kbfYmu5UiO+MYBbVQOej6uh2ONwb222gyDfexhpjbRogobePO7y+SZp9OBZp+H39It5nRT5GoLZn0f4jG0CH3rzOB388pNkqBpFzvSQHk/lkHuhRqORUoWmzR8zEqo9TKJRz3P7SVNTomHm6JidlDJiOTpvvkGCbA9wNnlnuwgi6aGsARBNkCV/nbupdyXeaTsvNEGEfHAju2GnmWkyLZNUIymadoV065gWEe/nJlhO/Lql2kSqkWE6DgvP92u7Nwq5MRaKYht5EkuHW5aAFxpYM9txwofOFnVMTpbadJzUSJR6nttPlmGIqpg13F70VK8cpm6IgQs97hC7+zwsw3QI82k2zWakNNJmEtTx1AukRqIUOdNT4LxeEoFBkTM9ZBkmRc70kBqJiurY3TQcP3ae1EiMht44LoJ0OBllW7H4YMVQ/KIgY45CZFHIRRBJD+c06liDi1m4wsleGk/1Z1WyTsUcVcftxhyviPvsStipbnVTFQ01570dRwevgInYpJw3MIi7JTThuJhWw7M21vhx803NLQSykXfj45Yl4IWMEOeDu8plli7vMfNV2m6yHD14NmfizEioZBkm9Ty3P4fQo92DpEUTlAxHPJIBm157yfYgH6fU2JRNtjEaP3ZBvK+X4L2f3dQMipzpIVM3SJuOCwcEv1iYmkFDbx73nBP3PJuqRuPHznsqdn77zCUCTsrMC5ymcLJXPNdtDXNsY277mi6cCtxRkUuGmphQMy2TYlpEVNYJPeqyjPW5CNIQBJtd3XJCT2hTnufn/f/AZZkLJ3spoUc9P8+WLub8/2oRJAIpM9z4uGUJ+GrhJlZTMwpayQrLBS+RNh0nI5EWeu6lH70uxogTg2OsYn3yp6RFEx5rmJFSyTJNGj1wlg5++UmR/xA+1EFERNpMgtnRVI0i5/rISKRp5tIgmZpOkTM93mhLjRGKqRnU+/xbpE7FKRWeonPfepGO/8X3c6SHQheu3p+8xUjf1om1aIIiZ3poWg2LKpgTmFuGYOTm1lQ1imkRUfVyRNJDNJ667HluVB1n526TLatYh0TFzTMnvISrCymCV6iqkfDosO7q1i1TZPuTeaWrGskcy5wjhXiJPh+JS6ng1oUk4CJQqIr9xe6vUfhQB6UnZuj0X/+YYv2j9vPdlWluVUzk5DQw+cEkQ9W9r9MMRqoHz5KpeQNxTM1wTcY5Xl2u6RqqTkZKpfFjF8iyLI/n10ipbGLOliKMpCoq4vTEDA29eUKE93BdmjcUjYRKhqpTrH+U9ETK0wA0Vd0je0ye6qbz33mFdMOZRstuQKVyfL3cC2xkEZ1XGuBTbe7jcRLO1oq5JOHWZA3T8PzZ6/817MafITTmhB4Vz8/2AvPXuvMf3Ch2YtDbdJNkfKugEAFflzzgYrN0lxrZK38AYOOXP4XHfvlXmDx+EYHyUtzxJ7+N8SOdyJgmur7/Sxz/s7/DpX/Yh0A5W8Sp+Hzo++nbMOIp9P30bdTd2YbbfvtBtH5yF3wBP3x+n3hd1/d/iUBJAFf++TCmOvqRvDLmyfiNXhzApe+zc+r6/i8xdaYPl555DYpPQd9P34YCIFBeitpNa3Dh//e/kDEt9L/wLrp/8BoiH3SjpKYSm7/2m/BXlmHy5CUMvXYM6fEZjOw/icYH70LX9/8ZbzzxFwh9ZAOU0iCaHt6GNz/5n9D1/X8GMhkM/OwAMrqJWO+Q+D4oQ2j/0hPsHP/dE1i2YRWstAZfxofqYAhnI/s9ObZmxoBmJTCpDqKhfJ1Yz+P3+RHwBdBQcZuwSiWMiJOfa+f2NlasR1QPI5Nh+94IGXsdEaGpYqOdiduOCfUyrIwlMonDqV5PRnE41QsAti1sIwK+AHw+lvF7YeYgxtJ9KPNXQoEf9WWrQYBYX9RY0QYzoyKiMi/xyrI1OZ7aYvJ5myo2YmvoEbFOaSI9gNFU9yL8nytx0yIfKxf6tdAKeLEaYdca/LY72/J17mmXpvr0i5Qam3KsXk+7q9MURc700PnvvEIdT71Av9j9NdJjSQofdKIjuRvCbQNzJuBeFLrw+LHzWfGSjoMi2jcitN/sGMnwoQ5Sp2KkRRPi/Ht/8hbpiZS38rYrcaf6ddLYjIRKkTM9wlpn6s6t9LlvvchcFin2nN6fvEXH/+L7rKI2tZzq0H3LzxpguW4Pt4XM3YBTjYS4pefVojt1jFe9MS3i0nydLAmnMdgpJI+LU+95nAeO/cs90eZYz7z6sfexhSDfdJ/7ffk5ifS1RXhPiaUHllKCWKxG2PWCx3JmE9XogWzbmPOPwR2IEz50lrSZBJmaTtHuwZyLj5FgGQ7qVIwMV06wp2F34CylxqZo6M0TRMRkjINffpLChzpo8lQP6bEkRc715YmRTJJp2KPJKZdsoBlkpDXqeNrReSOne8QFgJMoH1N2+4/1WNJzQdJjKQof6hBE7Cb1saOdnvcl8mqj3p97CYc/h5OqW9/lWjGXBrJHgnnTz/0eDmmzdUf5w3I6PeeTb2Sa5RHreZ0Y+T7LXCjUMHM3J2NahDQzlbdZKHFzohABX5dJuGu9rn2x4R5Tbnp4G85/+2Vs/6t/h9A2Np7a/qVP4PJLB9D6yV0IVleg5fEd2PHkH2D9Fx/Hm5/8T7jtXz6E+h3tqLtzPdq/9ATIymD9Fx8HwEaT9VgS3T94DRt+7xPw+X3wBfxo/9ITKGtYjrX/Yi/Gj5zH1JleNH30bgBA3Z1tqN20GnV3rsP7f/pd1G5ajS1//C/wLy49i4qmOkwe70L7lz+JmfP9qGlrweWf/hrt/45N8BnxNKbO9sBMa9jwxY9DUdj5n//blxEoY2PPrU/sQmo4gtYn7s35/HXb2jB1ulf8/QWry9Fw/x2ou7MNU2d7cemZfTj+Z38HRVGQnpjBxJEL4rlmxoQTzVjn+Y6zJ7RqSxtgZgwMpy6guWKTZ2KtWUgNG5A0prGibK1ngo0vw1xZdhsCPva/dES9Ah8CAAgpM4q4MemKm8y/1p0v/uSPESxMqlfQWLEempUWr2Mxm/6Cn8UN96QcoCCiDqK5YqOYDuTPiRuT2Bp6BAr8UKBgJHXRcz7Z73k1kOPJNxDysXKhXzdrE24+wxjuQBzuXsj26PY8v1805qLdg2Qk0hQ502MH7rxNRkqlg19+0nYfMEeCoRtkqhr1/uQtz+Rc/EqYTFWnyLk+0qJJCh86KxwQXJbQogl7Gu1tGj1gP57kwyBpMVFnqt4ql4g8lerY0U4xUMFlCP4c92u47KFOxXIm6fJ/t26JxPmOc1LH7FvqfMsridxe4PyP80rZG1GpezzJvKLOnjZze5Qj6aFZt1GoRpKm1JGcc88nn/D3yk2A0z2fiUsOjgMj/3O859NJ10J2kL7h6w/cyi6I+WjQkTM97Hb/4FmKdPTRzKVBig+MCTmAiMhIpAU5qlMxil4aFL5Y9/CFkdZopnvI/nnSSTKzidRIpMkyTBp8/RiZmp4TXemOpmSZvklKjEyS4XJLhA91CFeCs2LIkXu0aIJifSPU+5O3aPBXxzzpbZZhujzAjEQTg2NkGgaNHnS2bLCLgjMBWGxSnJecdE86mLMZOd8os5d0OTFmH5u7CVJGTGjDbqLjfmJuT+PvxwdF3EjoUYrrU65z0Dznw8ee822x4NN1/M9ucvPq29kyh5O0dj19vNI3fP1xSxNwUWvYXY0wbTrObFw8qyGaENqmHktRtHvQswZI6L66Qeeedsier/yxDFNUpqxxplFicMyjnybHIl4LmmEIG1l6YoYmT3VT9NIgpcan2UqclEqDrx8jI62RnuDNwzTFbQI1UirNXGLVOW8Ujh+7kKPZHv+L79Pg68fYlNubxyk9MSNI2V3Nn/vWSzR5qoeO/8X3qee5/UIzdvIo5o6vdOfszjUF5ibCy9EzeUd2+WoknsvrXh/vzdrVyDC1LNL35hWzcWSvPuweCHHb2XLPM3sNveMvzm7ksYvG4hGg9BbfHLilCbgYhA+d9VScyZFJT7VopJn3tvcnb1F6YkZUv1o0IYjYSGuOfBFNUs+P2YTb0JsnPI6JxPAEWablrUZN07PrLdo9SOp0XDTzDE1n+b+qJjZhuN0LfKrNLUt0PPWCI3c8zS4kU539ZBkmJUe9E3amYZBlmuICwt0awlesah75gk3FeQc++Hh0Ibkne7sFD14vFFyT3XjjxMgXdRJ5CcjxFjOHRPbtP5c3ZrQxTzaE1xWRnxznc9vuNNTOFfX/3tWQqJQTbg5IAp4D2WHo7oEJEYCuGWwQQeisL5KRTHuyE7g2zLMc+K29kdbEYIOps+ELNwHGLo+SkVJdww9pGvn1KdJmvKPCXOf1Tq+9SLH+UXEBCR866yHFyJkesQnDsKWO7Ofw0CB1KsbWLJmWEwj/NLsAuSUUDlMzci4cXA7h4J/T1I0cUnQnnnn+Prj9ykzbgxemIEbuerDsapaF+/QKKYKPCXudFo69jY8u53MaFFoTNJ+qdS5CnU0nni+knHBz4JYn4PmmopmaQUNvHCc9nmIpYPbILTuWU80OvXGcTFUjQzOc0eNoUvhkTd0gLZ70+Gr5uRz88pOUGJ6k1MQMqdNxNvX29Iu2DPA2pSZmKHzoLPMV26Tf89x+UiMxUYkKgnd5htlIszPZpsdTTEZ4+kVKjUbyWsiSoxEaPXCGLv3o9RxfME9zO/+dV2jyVI8Ya+Zwtn6oIj3NuWA4Fyz3iiP3pFskPZSlh7o3HmsesnJXwmkjnmNnM7N0ZsuySDPSNJ66LBLN+PvwoB83OeeDO0MiX+U9F5xwIFbpuwnfOZYk0Q8zbnkCzk4zm4uIRXzk82+xBtmMsyxz6M3jYvhg7EinqPaMhErR7kGyTIvGj52n8995xZYMXFKBppNpMLL2EpXmyW7gFbjQpO2VRqamU/xKmAxVI8MwKDkaEZm9iZFJGj1whn6x+2sUOdPj1akPMvfE4BvH2HDIoQ4aevM4Df7qGJMT7MaekdaEDNHx5E8p1j9Kqv3+4UNnmR5eYK9dvu87Z8yZj1G7hiv4CiEip6mVMmKU0KOzNKy0WT297hVDs5FldhMtH/I1zvKfV/734PkV2ePWknBvHdzyBFxMeLobpmaIZlP8ypj3dj2lilvumUuDovkkptzsoBpuTet5br9nks49pcZJcvD1Y6RFk3b2bq49zNQN0uMpT4Tl0JvHBTnzbAcue3in6NjFhksKg68fsy8C7kwKnQ5++UmPK8IdBO+WGdx3AoUWkmY3Pt0Xg9ngOCdypQP+eG4lmls9cg14rr1rxVSf3i3Jucs1iQoTOW/6uReLFkI6pdOvXumkdEqf9WcSNx9ueQLmcGIlHSuVO2A9O40scrrH5cnlcZTslluLJkiLJkQMpGWYHhfE6IEzjMSSqneSzpM49iIZSVXEPLrlDRbEw841crqHJk91e1LL+n92gCZPdZOeYCQX7R6kSEcf6S7SHz1wloUAuXKCjSSbxnN7hkcPnBX6NBGRZVqkzsRFxeqeljM13ePsOPf0i5QYnpzVBeGWKebCbIQ5H73U7REuNh6y0HHmqlizLxxEDnkmkqmcAPp8+NUrnfSFzzxLv3rlPHV1hknXTednr55f0LlL3Bi4JQh4Pjpv9vgw99S61wZx2UGbjlP/zw7QTPcQGSmNEsOTHr+wqbHVPe4K1F1p84hIN6ESOUlrnBj1eMpjVzv/nVdYQ88wyNQNevYHP6QNq9aSDwq1t95GP/r+M45LIeW1gxkJpzk49OYJGj1wli796HUyDZOMtCqyhM89zV5/8MtPerzNXPLQpuM5lrnxYxfsLc1OpaxOx6nnuf323wMLmDddm5rns2l5tqp0trzeQkTJE9TmM9TAj5XPLleoKnVHWRIRHTnQR1/4zLN05EBfweaeG+mUTr969Twl4ip98xv76MjBflJVg7rOj5GqyhyImxm3BAHPZ+DCsxXCroqdCvgljyZ77lsvUWJ4kjXU7OxeI5F26cKsicUJlVelvCFnGQZNdfazEJu0xqpq21Y2c2nQQ/ruxhqTJViV/Tf/+o+osXwZfR130/fwEH0dd1NDsIq+gi1Mq+0b9VTH8cExMjWdht44znRbVWMyhruBaGu/RkqlWJ+zs67jyZ/S6IGzdPwvvk/nvvUSjR3pdCr7p5lezStjLi1wfzMR0eDrx0Tzkl8M3Za7+SC7gTWXnpt/omyu6jX3Od5Qd+8FgVelRw725xxnLNnvIeiO0yPzlhFU1aBfvXqeVNXwvPbIgT4pRdykuKkJuNjKdjFCf4wUs4sZquZJItMTKc9iTXe17A63cTebjLRGPT9mDgrLMJm3dypGPT/e79GKWVg7cy8YOgvO6f3JWyLU59y3XqQWVNLXcTf9QHlY/Po67qbbljc6gyMilIfZ6ExNp9TEDBvMsDOHPZ5d0xSuh1ztNy0aaHyA49zTL9oDG2wqMNu65/w9OPY9/tzZ9GLx3echQvc+uOxq1NmowZ7PEtfYKiKOQs0yd3hPoQo3lcqfQJZO6XTkICPa117OJdZs2eBqZAT+2tde7qQXnv1AShE3KW5qAl6sOMtiiNzdbBr59SnSookc4uRuBE54XG7goevxwTE2FeeKbuQExx0U7lBzy7Jo5tKgmLhzV7ITJ7tIm0mQDwp9Dw95CPh7eIh8isLOsW+E9ESaIqd7bJ+xKpqAXFbgMgMf0IgPjovA9x8oD1PPj/dTcmSSLMMkdTpOkY4+QaCmbtif423SpuPi78X7+VLev6+nHXfHQrVf90BFdjXqtqQROXYxNynna5Zlp4vxypVX2cUS5msvO+ToBpcSODFn/9nzvDkqY/drOelL3Hy4qQk4X2W7kG3H+YjcPYLMrGGONswrUdMwxK32+LEL7OfPvyVWAPGRYTakwDIX2Jhu2vNYz3P7ydR0piXbxOheyDnTNeis/HHtgOv9yVvUvvq2/BVwXSNbqmmaLKM4nqL4lTFnMadLiw4fYvkTyZFJ0YiLnMmu3FVhmxPDGwlVbNaYuTRIph3FmRPTmWedkfv7nAtussxeK59PE86nB2dXyNkr4k0+Cp0xyco4uiwnQ+e2n2mxs2mvhSrgYnGjN9ikA2PxcFMTcD4spCr2Jnc5AeruEWResfHn8IEFngnhDdV5i4yUKrRUXnGOH7tARkplnlqXt1e3CZkdK0mWZYmFnGwc2RLar6nqNHa0k0YPMOL/4d//AzUEqzwacGN5Lf3Nv/4jV25vWgyGuKtoFuSTIsu0RMOQuyz4Lrr0+AwZSVXsieNacPhQB4XthaKORs0q2vjgGEU6+thuOpd9bq7vnIhyKnT3hdRZd+9tamVDVQ3q6gx7SNLKWJQ2EpTJWKRbKqlmkjKZzJz/b2STYVdnmL75jX2LQo6FiMxd3aqqsWCyu1ZEeaNfIG4mfOgIeD56r7B7uSxV7r1r7pFh3kCa6uwnPcZ0X05mbg2VN53GjnYKTy1fkGkZJg29eZwM3vSyj+0OaO946gWa6R7yaKN6glnc3I0yUzcocprlLXwFW+i25Y3kUxRa39RK/+3zf+Rqmp2h8MGzFO0d9lTRmn0MPZESVTEfJ+buj3PfeonOf+cV6nluv8fJwT3G/DPw7RvujctaNCEGS5yqOVdu4N85H1oR++ry+LK99jFvJCMnG8MwKRFXad/Pz1EirnkeWwgR6brpucXPrm513aSOU8Ok6041PSuxun5eDJEthk7Mz3+xyLiQdCIxf3zoCHg+cJOGN34xd+OvW7vs/clbwjnQ8dQLQlIQzag3jtNM1yCpdl6DIL0oS0YT5JRIk2WaFDndw2Imn3qBtJkEGSnmTIj1jbL84Cd/SsmRSU91zyfY9Lhrw3JSJSOtkjbj5PZq0YQnZ2LyVDfz65omRc700OiBM6LS73jqBVah280/PnJsqjqde5rpurH+UbIMg8aOdgo7nJFWc2QHHlQkciPs6blsZE/+eaWRjlkvpNlOgC985lka6J/y+GaJvD5aw8gN+Mk+JidYTXOqT06yRw700QvPfiBcDEfe7aOU6zWGYQoNOJs03ecxOhz1SBqaZuQlyashO/5a6Ru+cXFLE7B7jU52UEz28+bSLk07WN095WYaLKWMywXuKEq3w8DdwDM0nfR40kvcMwkyNN3TKONJZoaqU6xvlDRbOhAj0tEE6Yk0Ja6MMXK3nRXj759nSWq2B5lvSQ4f6iA9kRJTb2NHOinaPSg+nzvrmLk3DBFraaRZGtr577zi1bZ/vN/+vC95Pi+bDPQSa/b+uny6vpFQBUllk4qum16Llou0nIpYpanI7H5jdwNtOpL0OA1EJWm/35EDfXT2g2EP4Q70RSg6nc6rAWuqQYff6aVEXKX9+y7SQH9ESBpdnWFB7tk2tsWArFpvTNzSBMzhTMEVtxmjUJXM4yi16TjTiO2Fl2KPWjwloijPPf2i8NPy7RIsi+Gs3eBKe4YWjJTmNMrsCpV7jnlYe7R7UDT13ME5XE/mQyTZkZVGUhXvy6tR52dMNoic6fEEvLu9zoNvHHOaiWLDx9u2DY6df+R0j/AFD/7qmKcxN9vdB5FDzuFDHXluq50KshCYJsyGFubyzPJqNmVXswP9ETIMU1S8HKZpigrYXbmmkhodOdDvkSSInGo9mdRI0ww6crCfdN1g79EXITWleyrp+UL6gm9O3NIEXIxjwksQhZ/rjaN8SaSkeRp5WVGUPFHM1HSKnO7xWN0Sg2NOII49BmwkVJEZYdoDG9n+3Y6nsiMpnQaiqWqC+N2PuzMsiEhU7pOnum3HhRNJ6X6+c3zdyTa2c4f5nYD7e+buCf5cd2ZwobsP5/UvORWwq5LjFWQxOieXKWa7Ddc0g8bDcVJVgzTNoERczTmmqhqkqYaofI8c6KNYNE1H3u0T1Ww28kkAYiQ5rl61THCtfcHS+XBtcEsTcDGOiXPfepHOf+cVT5ZDIbiDfbh31z0EwWGZFhmqRunJGdKidnSl5l0jz/N9nWaXVx9NjkzS5CkvaWvRBJmqJgiO/9wyTer/2QFKjUXs0HYniYyHuLszgplTQxVDH4mRSTr45SdppmuQ9ESaDFXPO2gh9F77InDuWy8W/J55RnK+48wHxeqcmmZQKqnN6rtNJjQyDJMu90Zo/76L1NUZpn0/P8dI9fyYeH5XZ5gOv9PrkRp6Lk3Maj/LJwFwyeHwO7000B+5KvvaXL7gqyVQqSFfG9zSBFzsSiJ39TcXUYgR3Cd/aleBqhPXmNJcVbetiSZSZBnMq+teI89lg+wptdEDZ+xGnSrGkcOHOshIpr2ygqp5goH0RJoMjQ1NpO0puMiZHpdM8pKQTrJdETPdg64s4dzcBu9nepuczRia/XjutJup6mJ10WJhNp0zmdDoyIE+0uzKVpy77mqa2WE3qmrQ6HDUJm2dEnHNQ16GYVIqqQupwbD9z4bBjl2sBMAJN2U3/DpODYsGX87nmoU8VZVdXLKtd27k6OXzJGOpIV8b3NIEXCy4WyJ8qMMeUPCSMCMTO0EtxRpxpp2x4PbOpidnPGQ68utTIoqSV7rhQyx9jLsi9HiSrRF68qekx5KMPHWDep5nTa9oN3NbmJru2YRhmRapUzE6/dc/dl0M0p5gHk7CRkolyzCJ5wFnOxnGjnRS5EyPk3z2/Fs53092heuWd/iUH5cZFjIsUwizkVM+l8S+n58TiWJERB2nhoWWm0xq9My3D1MqqXvIrJCdKxZNUyqheQgzu1IsdH4e4nc9N5+UMpf3mFfqs1Wongq5CClG4vpAEnABuEnCSGlCWvjF7q/Zt/iONtzxtJNvYBmmGKpwh/ho03GhAXNpwDQcgs6udDmJx6+MsUWa9pr7c996kVXArlQzI6WKRhj3+Lof1xMpVhEfPJtjOePV+kzXIPMWn2GWOO435ss7s1clEbG7A15BOwlrx4Uv2K0RF8ozzvd9zwez3RpnV31HDvSTphqUSmh05GA/q2TdtjPVoIG+SAEf8XnS7KGIL3zmWXrtFdsZ4WrCqSprqnESNYw8Tg3bwXHkQF+OW8I0TUomtLyEn4hrBatbw+CvcypU/h75XiOr2RsHkoALwDtYYd96upwJ2c0u4Tx4+sW8QwSWYVLP8/tJjURp9ACTJIbeOO5pMGVLIqZmMB02mmC711xNPj6F1vHkT5kn2E4ZM9Js4IOHxvc8t5/JD8m0xzXB5QVeAeuJFIuk5FuVUyoZdvPuF7u/5klFY35oXfiIe368X1TGfCNINlkLK5mqC0J2k+18JhhzxoOzyIQPR+TNXrC1Xi4zuAl1/76LNB1J5viIB/oidPFcmJ759mFPU250JEqmadGRA6z5li1VcKcEJ0YnhrLf45bQdafZx8/tV696CX/Wytb+Ltw/e+1lm7TTC5+kk7j2uGUJeK6KS4+lcpZNcn9s7/NvZdm9Xsqp+rK9rENvsj1yrELU2GTdLAlg2e/PN2yIqpcnpdl6MB97tiyLIp19nudapsmcDbpBybGIJwSIDXJ4Q+e1GXt4wx4W8Q6qvCjOydSMLH3cGdxwB7UTOQE97rS33L+P4ppxs/llOflEp9M5Wmo2mbmn5lJ8qCKpsWadTYZETGNlBHme1LROpmkJh8SRA32k6yaNjkSdIY1TIx59d3Q46hq86KRUUqNEQqWuzjAZhumREF57uZMG+qZoOpK0CT9/47DQZ3L/7LWXO0lTjUUbnZZYfNyyBFzoNrj3J2+Jije7UnM35PJlHMxGIm7iSYYjNNXRN6u1LVuH5cMOvNJkVjEnZ0IEodvSQe/zb3lsZo6colLP8/vJsvVfZ2Nyh8vp8aI96ZfyWMWG3jxBlmVRYnAsZwFn7uf1fhfZ49tz5f/yijHbT8sfK+QWyCYfd2WYPVZM5MqNsBthPZcmSLWlCD41d+RAH+3fd5EmJxLi+QN9EbrcG6FYNO2ZnHvt5U6Pvvvay2w8+plvH6aBvggNXp4iXXMe5+HqrHo+T8kE8wmbJjvXbH8z/+yqyp4jqmV7ko43AF97hV2Ejhzop67zY7ICvkFxyxJwPrL0Jo7lr8T4oku+/6xYeKvjs4IUC912u1f16ImUqJjdxO/Zx9bR52nCce+vNpPwDH8YaY0OfvnJ3HyHaMJp/LniI8Wo9vPe4Q1n88X8dNti8n+JKK9GyjHbbTmXHXhDLV8zrOPUsCfRTNfZoIWqGhSLpmmgz0usqsoHJxhxPvPtw5ROsUadW8Lg1eaRA/2CBJkWbFDSrqpTSY1M0yoYsuPouYxks4OFXnu505Y7vP5kN+kfOdjPpBEZU3nD45Yl4HwwVd0zoECUK1UUSyBETqQlX8rpbuSxIQynKuYEx+EJ3jEMinYPkmmYQhc2Ne8QRnpyxkOQLDlNI0PVnHVIkShNnuphP4tEaexoJ1mmJc41u6oXDcRogsaOdHo06FjfyLx02/kiu4p028d41Tcbubi3R8SiaaG/vvZKJ539YJgOv9Pr8fYSMUdEKotYf/UKGy/mWm90Oi0ed+u+sWiaRoejNB1JkqoadOn8GBmGST1d4zlWt4G+iG1fM3MqfbccUaghmH1+05HkrBesawE5mLE4kASchezKOJtk5kM64UNnqefH+12Zv4Yn79dIqRQ+yBpyfEyXY/Sgs9LHSKmuBaAvUnpixpk8y7NPzRNlad9GW6Zpr0Nik3TJcMQli8xewXJydg+EOLviXiJtJj6nJLEQuPXcsx8MiSpytn/02U0pXk2mUrqoTHmAjq57A3BM0xIVZjLBtNdkQvNM2nH3hFsKMAyT1LTTSEvZVfNrtnuh44Nhik6nRQXsrq5nplKUSmqiWtZ1dqHpOD0iSN/dECTyuh5SSZ3UlG77nPs9DciFfufFEKsczFgcSAKeA/m0zPnkRmRvsjANtlooeww31jead3RXjURp8PVjpEZiHikhX8auc87O8supzn7nPFyLPU1Vo57n9+cdA86u+vkwiaEbIrOCV8aTp1m6Go/pXCx/rzgXl32smH/07tFkIoco9v38HI2PxWmgL5J/LdAr58k0mS2t44NhJ6PBlh+ydWNuP+s4NUJqWvd6cV/ppK7OsCeBjTsmPFLBgX6PHvyrV8+TaVrU0zXuIcKBvgip6dwLnIjC1AwKj0ZpKpKgw+/0XhUxFkus0sq2OJAEfB3gJm3e+OKOAC4VcJcBkbfK5tnA3kmzFBma4QnLyQbf9cYbdD3P7Sc1EvM4K5wmo6PlmppBHU+9IAZP+Pn8YvfXWAPPTj2LnOmhyVM94liWYeTIN4uJ0eEoxWOqION84TuOy0D3NKRYYI8mNFUuTRCR5xY/Hk1TZDLhqbyPHOj3HJ+nlu3fd5E16nSDOs+OsKk5l/PBbT9zZ0q4rXP5/MCc2I+861S+XZ1hSiU1Ed7DJYsj7/ZRIqZ69GDVzqiYixgLVbqSWK8vJAFfZ3AnRax/lMaPnSdtJp5jd+PNNW06LmQDMeFmmIKsuV832j1IhmaInF6TR1fygQ97AISPB8/mwY2c6SE1EhXWM1PVyUixsWbepGTVNYvO7PkxS1jj6+zzNTA9Qy0JdUFVMvfdJpOaRxN1g1dvXefHPMMM2TBNS5CcOyktp7FmOxo4jhzoo+OHL4tUNX4h6OmaEMTIhzM0zaCpSJKi0XROdTw2EqWB/ikyTYtJB+/2kW6PIvPnqGknqOeb39jnGfiITqep5yLTlrOPPdAXyWvRyyZccRHpn5rX30O+Y0ksHJKAC2C+t9Pzac7xY/N0suwwdD2REvm8/T874BkfdofDcw2Zb8vg76/az3eT6i92f43CB8+KZLXc83lJECQfO84mVLEZxFWRs0EOjXiwej5pJNsBcjVVcvaQhBu8euNkyp0LnsftCplXmNz7q2tMs3U7DJIJjTpOjYhmmtvHy3XcZFJjK6Rcj6uqIbInnEELptlyzZhb3NyWN+aMYLqzmtY9WjP/nTcSLcuinovjzFNse5TTrso7e29dPg90qghNPfu7k6PMiwtJwAVQqNlWiJiL9be6nRa8EuV2sYNffpLOPf2iyHhwb9zwvv9LIteB7W5LehpviZFJx3UxHWch6U+zYPdikc8RMtd3UwjZBJ9PQ5/1ltjVVCvWASEm4fKsAHJ7ddMpnQydabpsOGKM1DQjSZ5w1nFqWMRPfvMb+2g8HPdMtaVTOu3fd5FmplJkGCaZpkUdp4Y90sLocNRjMUvEVVE1u5830BcRVfFA35R43ehw1GNd4/JKx+mRnC0f+bIjsi9Or7mqa34xcwZOHDljtvD7fH8HsjqeHyQBF0ChZlthYi6uAs5XWfKJspw1QHMQXU58pf3+p//6x3ZK2lkRizl5uttD5HPBSGl5ozSJvP7jxUKh5k+23SvfP2yupbqJ9oVnP6DXXB5dXk1yPZgNO1hkGAZrpNlVq9srnE7pNDgwJdwIiZjqfY4d0s4JlQ9DZA9j8PPp6nSkkX0/P0cD/RGv3c5+3q9eOU+6xiriyYmEh9SmIok5K9DZBlU837WtL/OJv+xQH95I5BeZYrRh6Y6YHyQBzxPzcUHkAw8vZ9ayXB2zmPfiCWNcCtBmEjTy61OUnpyxN1l0eMh55tKgZyzYe/zCk3juRlx2OBEfElksFPoHnk7pHk03O06RN53co8eqaghy5E2xjlMjNNAXIcuyaCqSoGe+fZiOvNtHlmVRNJom0zQ9xLR/30WPCyERV2l0eCZHAsl2WQjt+d0+SiYce9nhd3oplWRbL/hFIJXUxJAGP0/+OkPPIx+80knHD18WFjn+Xbk/J6+q9++7SKnkbHcV50Vl7r674FJJOsW2exTS273H6vSci2ziFQ9JwNcROXLDAnVQz2iwaXmSz07/9Y9p8lSPkCDcaW7FVvPOuRb2Q8/n8y5a7GSeOEVRpWWtBiJiITr7911kTTHVoGe+fdjxBSc1T/VqGKwCfu1lpv2ODkeFzeuZbx8mXTcpkVA9++XcYTv5Fmt2nGLuCF03xDiwmmaErmvsfJiNjTUCNc3IkRrEZ3/lvO2EYJoyn47jWrTYYzeVyr1o2ZVuIVLk75ednKaq7LwLpbARyYr3aiEJuEgsBpnMFtYz/3PJT47u41qGmbMAM9eR4F6YOftqpvlW/gsh7dk0xHwpZ1wTzqtTutLFdN2g8XDM45ToODVMZz8YprMfDAni6+oM5xApryQdp8QYpZJOopog+gN9wj/Moi416r44Tj2XJoiIxMZktrZoTAT08Gbd5HiCTNNyNFybOA3DpKlIguIxlVW6SZ2e+fZheu1l5qhw29+4PY+PO3d1MuJ3a8KFtPGFkKiseK8OkoCLRLFkUoio+Vhy4bAe9960+d3a53Mg6LEUnXuaTc25pYdC64GK+Wzu4Pm5Pq/z2PxIu5h83yPv9pFpj1CL99INjxvA3SQjIk8ji2nChvDSplPe7N7sUV9eZb/2cif1XBz3EO6xw5dtgmZTaT1d415fr61NCx05oQo9W00zBwQn28u9EU9VnrLzLJIJLccex4OGuF7t/j64xS7lItqB/khOwLyHkPPEdkpSvfaQBFwkiiWTQkTN4xhj/aOzvq7jyZ/m1V2LO78X81bFbutZvs8x21ZoxzKXvym42HkQs1VUbr2X+1w5WSQTGr364lnSVINmplKUiKt0+J3eHEJLp3QavDwlqsbodNr24Zri+LzZxkmU2bXYOfV0eXe/GYZJM1MptoroXVbJvuYiSt5U49GXMdsXfPCtHrG+KBFny0a7L457puIM2+frNCJV4QPOnvTjfzYMdlHpvjjuGWMe6IsUrdN6Bk2yHBYSiwtJwIuMQkRtJFSXn7dwteiugOdDbtnPdbsyTN3IkSKc95yd4N3j0vk+29U2JYuB2+XAVsVP5VZzr5yn6SkWps79sW7JYd/Pz9HFc2F7rFf3VJO8YjR007NJgofcPPPtwzQejpFhGJ7X/uqVTvYazfBU5//4g2epuek28ik+Wr2qjX7wgx+Rrpt08K0ee5dcnyBxTqacOPnP+fp6d+6Dqhqka6ZwJRDlrjFS07qofFN28y8RV1lTsUiJwX3RklXwtYUk4OuIhfpnC0kSYstEnm0a7kD0yJkeMpLpHBdE9tqgQtLJtSbY2eAmKu5scKeH5UsL49GSvOoTo8hpZ0Q55aoCO04N24lp/SJsPR5NMx017V3K6QxZOCPRk+MJSiXZeX7/ez+k5bWN9Ph9/5H+zad+QI/f9x+pbnkjfeNP/jtpNlG/8OwHnsYZl0K+8JlnqadrgnTNznhwNQH5BcDQDbrcG6FU0kuMfApvoG/Kc1EaH4vnzbOYDe6LVlfn2KwNvPn8PUpZIxeSgK8j5vLPFqpIC/28GBeDZg9iTJ7qmTVAPlsHvhbBOvMBa3Z5dU93JKQ7BH2gP/+tsqYZIljHMEzPuiFOtjxIh5OrYTgNOL6m3l3xdnWGafDylGskWiXLYn5iTTVo9ao2evy+/0hf+Myz4tfj9/1Hqq1uoSMH+5nVLGvx5sxUihIxVUgYPOOBOx10W6pIJjShCzsXF68dr9CapmzwQKFCgfduq9xibNSQbon8kAQ8B66GiPKnihX2z/KV9sVOns11+29qbOuFFk3M2dibrYKe63NdC3gGMFxkUmibcL7qStMMse5d1wwy7dv5fT8/R6kks4Nl5ygk7BFiroHO2LYudkuuCe+su8ocHZ6hZEKjwctTpCg++jef+oGHgP/Np35AiuIjNc3cGNORJBkG+51XxZzsufzhruwH+iIiknMqkhQr6N2k5m4UTkUKDwO5Ly4J21UxJ1FnjXQvBNItkR+FCDgACQDApWd+iWN/8l0ACm7/9791Va8NVJai4f47AABGPI1Lz/wS7V/6JILV5TDiaUwe78Jjv/wr+EtKPMdp/9InASho/9ITnp8Hq8tnPSd/SQB1d7YVda7Zx2p9YhdSwxG0PnHvnJ/rWuChj7Xjtg31CJb48LFPbRY/7+ocw95H2gAFePDR9QCAd9/sxnM/OAlAwW3r67D6tjooPgVjIzGMDEWxZWsT3nrtEh58bD0CQR/aNq6A36+gobkGoRWV8Pl82PtIG/x+BYpPwbbtq/Dum91Y0VAFRVFw+sQQHv7ERnSdG8OGLSuxoqESDz62AYCCvY+04cn/8hbuvX8tNt/ZiNtuW4/xyCU0rtgiznk8cglNjWtARFCg4OK5MWz9SDNOvj8IQ7fw/D+eBADcflcT7rqnBdORFM6cGMJPfvgBfD4fAkEfDMPCI5/YiP7uSfT3RPD+ewP40//zEUBRxPfw+d/bjgcfW4+erglUVJaAMoR33+zGg49tgOJTMNAbQX9PxPNdPf+PJ6H4FM93zKGmDQwPzuCee1tx8ugVbNu+CmXlwQX9fZaVBz3voaYNcW4LPeaHGvlYudCvm7UCLqaSu5om02yvvZqg9+uB+QxpXAuIppKauxMtb8jOq+edbAO7IvzmN/aJPW3ZAT5cuzVNi+IxlWJRNlgx0BcRleXFc+EcR8NrrzAppOfiOKm2Bux2RDz77D9R3fImjwZcW9NAe+/5qrC08ZhLnjfM3QY9XePCW8w/f8plZXO2L6si12GgL0Ip3rCz5YtYNE2xaDqrSo967ihSSU00FGdzQyTiao7zZDEgJQkG3MoSxNWQ3tXehmeT2PUgtfngWp5PMQ2ZYjIgNM0ZnCDyBvVwjVNkQNjbLQzDJE0zPBss+LG5ZMHsYf0iV1gE4Nje2iPv9omNyCL+0X4v07ToG3/y36m2uoUUxUdt69rpmWd+RDzljEdLmqZFM1Mpz3nwEJ4Xnv2Aei6OM1K+yFLWBq9Mi0ZfOs3Ot+PUML3w7AdivZI7BD4WTXum9ngoPNfKuQ+aXwTyIXst1NXKEG5ISYLhlibgqyGZ+aalSTiYq/rRNNbQ8nT0szIg+P622bIKxFaLtE6GPUr8mm0dyw6eISLPDrZUUqNoNCW2WPRcHGdNwHed3XK6zlYR8QpxoH9KnJe7Ko7HWKNOTRvCgeFOP3N06POePXIi8eyDYftYbDSYX3D4RUHX7YuKfQHicZZMKx4TFyQePykS0YqobHlORTI5e26JxMJQiIBvCQ14Lg11NhTSZa+HPnqz48HHNni0y2wYuoUD+3vw0Y+3Y2Wjo7WePHoFz/3gJIiAltW1ePeNbqGTfuzTjr6oaSaICJaZwYWOMOpXViGd0nD00GUce28Aj36iHWvaQmhZXQufzyfOo7l1Gd7a1yWO+cgT7QCAt/Z14fl/PIn//N8/gW07VuHzv3cPHnxsA2IzKsbCMTz6yY24eG4c6zfWY2VDFXq6JvDYb2wEZQgnDl/Bth2rMB5OIJ3WseO+NXjzny8y7VUBHnliI0Irqth5PLYeigK0tNbirX1duO/BdTh9fAiV1aU4fXwIux64Des2hKBrFi73jGEqksKWO5vw1r4uPPT4BvRcnMDDH2+HogD7f9mFY4cH8LkvfgTvvdMH07Cwti2E535wErdtqEd/96TQnh95YmPBv6uSEj+23NUEv9+3SH/7EsXgliDgq0Eh8i5EzDcrspuFi4Hshkw2Dr3d6yHW29bX4Sf/eBL/6ov34PNf2o4HH12PnkuTeOhx1lzKJvKB3giIgL7uSfzkhx8AUPDIE+346Mface+etdC0DOIxFYMD09i8tVE0gQIBv2iu7Xl4HSyLMDEWw0OPb0BtXTlaWpcxkvvERlzpn8aadctRXhHEW/u68MCj60EZwpmTw9h+32oYeganjw9h245V6OmaxKY7ViKTqcCFs2GnifjYBgCEyEQCgaAPp08MY/vuVrzzZrcgx0c/uRGJmIaKKtaYnY6kEB6JYTycwAOPtOGt1y6J5wZL/CgpC6BmWRnue3AdAGD1bXWYiqSxbXsLiFijbs26OqxeuxwE4CH7HPLB3SgrLb02lCCbcQWQrywu9OtmlSAk5sb1ag66m255swlce9xmA7/VTiX5AAXLaOAbkN2B6KmkLsLb3SvieXLar145L3y5+TzIlmV5JJLxcMwO2gmL/GDu5SUikS08OZ6wR5hz18lzuSHb35tOsc/gnqLLFxrEh1T4yiL+u2F4vzvDMGk8HGOfs4AUNJtUtFiDFbd6Mw63sgQhMTeuV0UvrGQKs0S5K+TZKubsCurUsUEkEzpu39aExqYabN7agMPv9mHDphUorwji5NFBPP+PJ5HJENra61FTW4bVa+vQd2lSWLQ+/3vbseejbWhdW4uTR6/gu08fAnwK7tm1WsgRiqJg89YGj5xy+sQQ/uw/PwLFB6xrr4emmui9NImW1ctRWgqsaKiGrpmITCRQVV2CSxcncNc9LZgYS+LRT25EeDgGAjA8OIPHfmMT0mkTw/1TOHZ4AIoCPPrERvgDPlyxf1ZbV467d7bitvUhKD4FwwPT2LZ9FU4eYbJH17kx/I9vvoXf+d/vyZEZThy5gi1bm9C8allBKShbKnJ/16dPDHn+vhaKueSoWxb5WLnQL1kB37i4WZqC8+2KZ0/KuYcy3MMF7nB2MYLs2pmm66zCfObbhz3NsclxFtoukstUZlvjuQzuZZm8OnZbvrID3tmSzoQICdJUg2amU3mrXV4xuwdAeJCQe1knn9L75jf2iXwMd2ONuxiY7a0vx7o33wGLYtcSSRQPyAr4w42raQpeC/23EHiVq2kmXn/1PPY83IZA0I9TxwbzDgC8+2Z33mGEd239VFGcoYw77mrC66+ex3M/OImv/tle3PfQbTh68DIqq0qwanUtHnxsPQYHZnDmxBDiMQ2nTw7jIztWoamlBj4fG5DIWBmcODKABx5dj0c/2Q7TJOy8bw3u2rEKAGHr3c343O9+BHseXgddNzE6FMPeR9aDCHjg0TYQAfGohpGhcdz5kRZc7o1gTVsIp44NikrytrY6HDs8gAcfWw9dM/HOG44WHFpRichECretr8NzPziJZXUV2LVnLR7+RDv2ProeB/f3IFRfwSrj5eXYcf8a+P0+PPLERpw8yqrdk+8PYteeteL75v9dLNzVajDov6rKV2IO5GPlQr9kBXzj4lpY7a4lvEEwYdq/7yJ1nR/LeV4hXTjfUIb756LStKvagf4pj62LP8edMTE57qwaeu1lNrJs6IYng5eHn/OhiNHhKDuGPWRx5F023mwY3jFjwzAd65gdCN/VGabD7/QKbThpa9qqnQHMsyRE/KVr0GSgbypHn9V1s2AYT/YizoVABu0sHLiVfcASs2MphkO4hJBKOY0zdyOrWBSzPdlNHG6ydD/Ot1zwTGAuXRx8q4cScWf1vGGwKMvREWezBk9O48MUfJjBLU1YpiWC4nmwOidFnriWr1HGJ/M6PvD6jhN2k7HYxtZ4OObxQ7u91sUie0+eRPEoRMDS9CchrHaLJT+oaQO/euU81LTh+dnrrzo/O23LAGdODiMYDMCyMui9NAnTyBR1fH6s0tIAPvapzTnSBX+OYVii8ffu/h4AQOeZUWiqJZ57+sQQtmxtwv5fdgEA7tregtKyALovTGDjHQ3oODXMcib2dcEwMjB1C8uWlcE0LPucLaSSOta01Qlr2cmjg3jwsQ22l3g9pqfSqK4uRffFCdyxrRl+vw+njg3i6MHLWLu+DgTmC977cBs0zQQA6LqJBx/fgNa1tdh4RwPOHLelkxNDKCsL2Mffjj0fXSdeU+j76r00iYc+1s5yJB5dL7zW777ZU9xfKoA9D7fZ8ktxuSMSc0MSsMSig2ua77zRLX6WTYLbtq9CTW0Ztt3TAsDxBB96u3fO4/NjnT457CFjXTdx6fwYDN0Uzzn5vk2Etq/4g6ODnvcxTQv33NuKw+/24fl/PIkD+3tQV1+Bix1j2Ly1AStWVuGeXavF4+++0Y2J8QSCJX7XOfehLlQBQ7ew9+E2fP73tuOue1rQc3ECsaiG08eHUF1TCp9fwabbV4rPsW37KphGBsuXl8PvZ24LyhBOHRsCAHzw/iCe/8EJ3H5XM4JBP7btWIXqmlJs274Kfr8PZeVB3La+Dk/95ds4dXxo1u/ru08dwpkTQ3j0kxtRVh50adnFk2kg6EfbxhUIBCVtLBrylcWFfkkJQqIYZDsU+M9mkwrcj/OoxkKaI3+uJ8P31fOkqQbt+/k5SiY0Sqdz36/j1LDQW91juvGYSmra8EgPhTYWMz2XbSl2b1fW7OfzRZzOJuVOikVZxOR4OE6m6XUjsLFozbM2iWvLPHReBPYkNbajzjVS7NaKC0kK+caRi9mEXAjZ343E3IDUgBcfN4v162YCt3l51q3PonG6Mx3cFrF8we3uhhYReRpulsW2FD/z7cPU1clWGhV6b2cIRKOBPmYL44MTnPQTCdWja7sJ0p0HnBOEo7F1SMcOX6auzjHvEMgr5wVpZhPuXN9VvgadO4ci33dViGRv9aGKhUAS8DXAjRYt+WGA2/VQ7MYHHlwz1/P5Op+O0yNERKKCTdkBNNlOgdHhaF4i5wE/3/zGPhofc5wTRw70kWVZpOssMtLZvjwm4i49UZXuhaP2eXNXBZ/k466I7M+V3RBbSEVbzGbqgtNx0hs8L0gCvga40aIlP2xwuwwW63i8Cuw4New5frYNjQ9VZFeBpmmRLkaDz3ukDD5iHI+pYuURlzvi9laKpL36x71yPhumaeUQbDZ45c9J2y0L8P+eTcYhmp1IJckuLgoRsFTTrwKL7R6Q8OKd1y/hv/6nN2ZtMBUD3qijDGHXnrU4fWII6zeuwK9/xY7/69cvIWMRKqpK8MCj6/H539uOvY+24YP3B/H+ewO40j8F07Rw9GA/DN3C27+6BADYvLUBABt2+PhntqCnawL/45tv4XJPBIriQ8/FCcRjGk4dG8JUJImHP9EOhYCd96/Bg49twD/9w3FPo5LD7/fhwcc24HdsB8XRg/0eRwnAAnl2P3gbiAinjw/BNCy8/94A3t3fg4FeNmo90DclmpHvvNENw7A8x+BDMfnCcWZ7TGLxICfhJG5YPPjYBiyrq8C2e1rw+qvnF5yklZ0/cc+u1Th55IpIEtv7MIvADK2oQtvGepHK9jv/+z3YencLDr3dg1VrliOZ0IXDgwgIraxEeUUJLCuD5aEKrN+4Al/9s71Yv2kF3vzni3jw8Q1IxDVs296CsvIgNM3EmVMjeNTOa9hyV5NwgXCoaQNX+qcwFUmhpbUWp48P4btPH8Lnv7QdH/vUZk9OQ3VNGfb/8qKYCPzc796D1WuXQ/Ep+PyXXGloBNz34DrPhJzEDYJ8ZXGhX1KCkFgKXG3TJ980HXNb9Nsr4UdEalo8qgrpwLsp+bxrhZBXekildOq5NJFzvvwY2TpyPpcIh7OOSHPcDS4pwP1dDPRFxEqi2WSaQhNycrLt+gFSA5a4WbFYemQ28XV1hunVF8+Srpk00M92rh0/fNnTrHPsZ6pYEcThdi+YpiXWF/HXJJMapRJaziYKvo7oyLt93s9o74Y7/E4vpZJz2/W4pi3WMeXY5uZeB7WQC9us9kBJ6HlRiIClBCFxw2OuYHc3smMr1bSBd97oxkOPb8Dp40Mi9Objn9mC1bfVob93ChkirF5bB103cce2ZlhWBtFpFevb6z3DDvfev9azkeOhxzeI32em0rh0fgxDV6KoqinDxz69GZaVwYVzY7h7xyrPOW7bsQoz02lsc/3cvfH5I7ta4fMrRX0XXFJ4a1+XR2bJll3yYaERkYWOXcx7SmQhHysX+iUrYIkbHdlVnRNg0yk8t3NVhd/8xj66eC5MA/0RIipcgXecGqazHwxTx+kRliPhcj24q0FdNyiZdJaOCr+yq/K82io/+/Xuyn2xXCT53ivHcSGdE3kBKUFI3ArIR0RzkW7O6+2Jt7mIq5A+6x4iOXKwX6y0v94Zu12dYU9S3LWAHMooDoUIWGGPFYft27fTiRMnrlk1LiGxECzlvjHTtHDiyBXcvbMVlCG8u78HDz2+Qfz3wx9vFzm9h9/tw0OPX79zVNMG3t3fgwcfXb+g9yzme73a97hVoCjKSSLanv1z6QOWuOmRHfRzPcC9xZpq4o1/voh33ugW+mxpaQCKjwWvExG2bV+F8+fCeOSJjYtKUtkJc9m4Wi9vMd+r+z3mOh+JXMgmnMRNhXxVGW8m8abY1Ryr2Oe5m2Zf/dO9qFlW5nnNO69fYnvnbP/utfDfXuum13ybdLIJN39IApa4oZFNfvn+kfMqjFdgxUoRxRJGvudlL+nctt3rdJgvebk/p+JT8M7rl+b8HMW8x9XIM/NxnxR7PhJeSAKWuKGRTX6z/SOfbwVWLGHkex4np3OnR/Ddp9ik2sMfb8fbr3UJspsPebnP/ba2uqI+RzHvcT2r0vl+ZglIF4TEjY35WJuupw3KbTMTu9uy7GXzGUzIsXblWMrmDteZ67gSSwfIMB6JmxHzaSTN57nFNoxEsy1r5Y+7QbVrz1qUlQexbfsqsXkj+znzOffsNUv8OO5wnWIbjjJU58aGlCAkbknMR/99/70B7Hl4Pd553dGXZ5MlOK5GE3Vrtw99rB1QFBGuU+iYS2nHk1gYZAUsccPgWtmY8h3XvSdutuc/9LF2fO5378Ght3s8lScnW8WneI7tfm2x1We+83NXurwiLi0NzHrMpbDjSVwdZAUsccPgWjWMrvRP4f33BvI6J4o5j/bNKwtWnqeODbLFmyeHsWvP2gV9hrlcFsVCuhBuPshJOIkbBtdiqorflu95eD0CQR9KSwN5H3ffts/nPNxhP3wYIfu1c0kDcprsww85CSdxwyP79noxJAleXR76dW8O+bofd9+2F5IXCh3/+X/MlSbcRDqXNJDvNXKq7NaAlCAkblgsVJLgFedDH2uf87Z8tsf5NNvVRjouRBqQU2W3BiQBS9ywWKy8Wh6Is237qpxb/Nm04GLev5jhg4UMKEg999aA1IAlPnTI1lRff/W8J5dBQuJ6o5AGLCtgiQ8dFtOPKyFxLSGbcBIfelzvabDFbqDJhtyHF5KAJT70uN4EttgDEXLA4sMLKUFIfOhxvR0Fiy15SAnlwwtJwBIfelxvAlvsWEYZ8/jhhSRgiQ89JIFJ3KiQGrCEhITEEkESsISEhMQSQRKwhISExBJBErCEhITEEkESsISEhMQSQRKwhISExBJBErCEhITEEmFeaWiKokwAGLh2pyMhISHxocQaIlqR/cN5EbCEhISExOJBShASEhISSwRJwBISEhJLBEnAEhISEksEScASEhISSwRJwBISEhJLBEnAEhISEksEScASEhISSwRJwBISEhJLBEnAEhISEkuE/z+9sTZzUPEiEQAAAABJRU5ErkJggg==\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Initialize the plot with the specified dimensions.\n",
"fig = plt.figure(figsize=(6, 4))\n",
"\n",
"# Colors uses a color map, which will produce an array of colors based on\n",
"# the number of labels there are. We use set(k_means_labels) to get the\n",
"# unique labels.\n",
"colors = plt.cm.Spectral(np.linspace(0, 1, len(set(k_means_labels))))\n",
"\n",
"# Create a plot\n",
"ax = fig.add_subplot(1, 1, 1)\n",
"\n",
"# For loop that plots the data points and centroids.\n",
"# k will range from 0-3, which will match the possible clusters that each\n",
"# data point is in.\n",
"for k, col in zip(range(len([[4,4], [-2, -1], [2, -3], [1, 1]])), colors):\n",
"\n",
" # Create a list of all data points, where the data poitns that are \n",
" # in the cluster (ex. cluster 0) are labeled as true, else they are\n",
" # labeled as false.\n",
" my_members = (k_means_labels == k)\n",
" \n",
" # Define the centroid, or cluster center.\n",
" cluster_center = k_means_cluster_centers[k]\n",
" \n",
" # Plots the datapoints with color col.\n",
" ax.plot(X[my_members, 0], X[my_members, 1], 'w', markerfacecolor=col, marker='.')\n",
" \n",
" # Plots the centroids with specified color, but with a darker outline\n",
" ax.plot(cluster_center[0], cluster_center[1], 'o', markerfacecolor=col, markeredgecolor='k', markersize=6)\n",
"\n",
"# Title of the plot\n",
"ax.set_title('KMeans')\n",
"\n",
"# Remove x-axis ticks\n",
"ax.set_xticks(())\n",
"\n",
"# Remove y-axis ticks\n",
"ax.set_yticks(())\n",
"\n",
"# Show the plot\n",
"plt.show()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Practice\n",
"Try to cluster the above dataset into 3 clusters. \n",
"Notice: do not generate data again, use the same dataset as above."
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"k_means3 = KMeans(init = \"k-means++\", n_clusters = 3, n_init = 12)\n",
"k_means3.fit(X)\n",
"fig = plt.figure(figsize=(6, 4))\n",
"colors = plt.cm.Spectral(np.linspace(0, 1, len(set(k_means3.labels_))))\n",
"ax = fig.add_subplot(1, 1, 1)\n",
"for k, col in zip(range(len(k_means3.cluster_centers_)), colors):\n",
" my_members = (k_means3.labels_ == k)\n",
" cluster_center = k_means3.cluster_centers_[k]\n",
" ax.plot(X[my_members, 0], X[my_members, 1], 'w', markerfacecolor=col, marker='.')\n",
" ax.plot(cluster_center[0], cluster_center[1], 'o', markerfacecolor=col, markeredgecolor='k', markersize=6)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click __here__ for the solution.\n",
"\n",
"<!-- Your answer is below:\n",
"\n",
"k_means3 = KMeans(init = \"k-means++\", n_clusters = 3, n_init = 12)\n",
"k_means3.fit(X)\n",
"fig = plt.figure(figsize=(6, 4))\n",
"colors = plt.cm.Spectral(np.linspace(0, 1, len(set(k_means3.labels_))))\n",
"ax = fig.add_subplot(1, 1, 1)\n",
"for k, col in zip(range(len(k_means3.cluster_centers_)), colors):\n",
" my_members = (k_means3.labels_ == k)\n",
" cluster_center = k_means3.cluster_centers_[k]\n",
" ax.plot(X[my_members, 0], X[my_members, 1], 'w', markerfacecolor=col, marker='.')\n",
" ax.plot(cluster_center[0], cluster_center[1], 'o', markerfacecolor=col, markeredgecolor='k', markersize=6)\n",
"plt.show()\n",
"\n",
"\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h1 id=\"customer_segmentation_K_means\">Customer Segmentation with K-Means</h1>\n",
"Imagine that you have a customer dataset, and you need to apply customer segmentation on this historical data.\n",
"Customer segmentation is the practice of partitioning a customer base into groups of individuals that have similar characteristics. It is a significant strategy as a business can target these specific groups of customers and effectively allocate marketing resources. For example, one group might contain customers who are high-profit and low-risk, that is, more likely to purchase products, or subscribe for a service. A business task is to retaining those customers. Another group might include customers from non-profit organizations. And so on.\n",
"\n",
"Lets download the dataset. To download the data, we will use **`!wget`** to download it from IBM Object Storage. \n",
"__Did you know?__ When it comes to Machine Learning, you will likely be working with large datasets. As a business, where can you host your data? IBM is offering a unique opportunity for businesses, with 10 Tb of IBM Cloud Object Storage: [Sign up now for free](http://cocl.us/ML0101EN-IBM-Offer-CC)"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"--2020-08-02 06:19:33-- https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/ML0101ENv3/labs/Cust_Segmentation.csv\n",
"Resolving s3-api.us-geo.objectstorage.softlayer.net (s3-api.us-geo.objectstorage.softlayer.net)... 67.228.254.196\n",
"Connecting to s3-api.us-geo.objectstorage.softlayer.net (s3-api.us-geo.objectstorage.softlayer.net)|67.228.254.196|:443... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
"Length: 34276 (33K) [text/csv]\n",
"Saving to: ‘Cust_Segmentation.csv’\n",
"\n",
"Cust_Segmentation.c 100%[===================>] 33.47K --.-KB/s in 0.02s \n",
"\n",
"2020-08-02 06:19:34 (1.72 MB/s) - ‘Cust_Segmentation.csv’ saved [34276/34276]\n",
"\n"
]
}
],
"source": [
"!wget -O Cust_Segmentation.csv https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/ML0101ENv3/labs/Cust_Segmentation.csv"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"### Load Data From CSV File \n",
"Before you can work with the data, you must use the URL to get the Cust_Segmentation.csv."
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Customer Id</th>\n",
" <th>Age</th>\n",
" <th>Edu</th>\n",
" <th>Years Employed</th>\n",
" <th>Income</th>\n",
" <th>Card Debt</th>\n",
" <th>Other Debt</th>\n",
" <th>Defaulted</th>\n",
" <th>Address</th>\n",
" <th>DebtIncomeRatio</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>41</td>\n",
" <td>2</td>\n",
" <td>6</td>\n",
" <td>19</td>\n",
" <td>0.124</td>\n",
" <td>1.073</td>\n",
" <td>0.0</td>\n",
" <td>NBA001</td>\n",
" <td>6.3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>47</td>\n",
" <td>1</td>\n",
" <td>26</td>\n",
" <td>100</td>\n",
" <td>4.582</td>\n",
" <td>8.218</td>\n",
" <td>0.0</td>\n",
" <td>NBA021</td>\n",
" <td>12.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>3</td>\n",
" <td>33</td>\n",
" <td>2</td>\n",
" <td>10</td>\n",
" <td>57</td>\n",
" <td>6.111</td>\n",
" <td>5.802</td>\n",
" <td>1.0</td>\n",
" <td>NBA013</td>\n",
" <td>20.9</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>29</td>\n",
" <td>2</td>\n",
" <td>4</td>\n",
" <td>19</td>\n",
" <td>0.681</td>\n",
" <td>0.516</td>\n",
" <td>0.0</td>\n",
" <td>NBA009</td>\n",
" <td>6.3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>47</td>\n",
" <td>1</td>\n",
" <td>31</td>\n",
" <td>253</td>\n",
" <td>9.308</td>\n",
" <td>8.908</td>\n",
" <td>0.0</td>\n",
" <td>NBA008</td>\n",
" <td>7.2</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Customer Id Age Edu Years Employed Income Card Debt Other Debt \\\n",
"0 1 41 2 6 19 0.124 1.073 \n",
"1 2 47 1 26 100 4.582 8.218 \n",
"2 3 33 2 10 57 6.111 5.802 \n",
"3 4 29 2 4 19 0.681 0.516 \n",
"4 5 47 1 31 253 9.308 8.908 \n",
"\n",
" Defaulted Address DebtIncomeRatio \n",
"0 0.0 NBA001 6.3 \n",
"1 0.0 NBA021 12.8 \n",
"2 1.0 NBA013 20.9 \n",
"3 0.0 NBA009 6.3 \n",
"4 0.0 NBA008 7.2 "
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"cust_df = pd.read_csv(\"Cust_Segmentation.csv\")\n",
"cust_df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"pre_processing\">Pre-processing</h2"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"As you can see, __Address__ in this dataset is a categorical variable. k-means algorithm isn't directly applicable to categorical variables because Euclidean distance function isn't really meaningful for discrete variables. So, lets drop this feature and run clustering."
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Customer Id</th>\n",
" <th>Age</th>\n",
" <th>Edu</th>\n",
" <th>Years Employed</th>\n",
" <th>Income</th>\n",
" <th>Card Debt</th>\n",
" <th>Other Debt</th>\n",
" <th>Defaulted</th>\n",
" <th>DebtIncomeRatio</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>41</td>\n",
" <td>2</td>\n",
" <td>6</td>\n",
" <td>19</td>\n",
" <td>0.124</td>\n",
" <td>1.073</td>\n",
" <td>0.0</td>\n",
" <td>6.3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>47</td>\n",
" <td>1</td>\n",
" <td>26</td>\n",
" <td>100</td>\n",
" <td>4.582</td>\n",
" <td>8.218</td>\n",
" <td>0.0</td>\n",
" <td>12.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>3</td>\n",
" <td>33</td>\n",
" <td>2</td>\n",
" <td>10</td>\n",
" <td>57</td>\n",
" <td>6.111</td>\n",
" <td>5.802</td>\n",
" <td>1.0</td>\n",
" <td>20.9</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>29</td>\n",
" <td>2</td>\n",
" <td>4</td>\n",
" <td>19</td>\n",
" <td>0.681</td>\n",
" <td>0.516</td>\n",
" <td>0.0</td>\n",
" <td>6.3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>47</td>\n",
" <td>1</td>\n",
" <td>31</td>\n",
" <td>253</td>\n",
" <td>9.308</td>\n",
" <td>8.908</td>\n",
" <td>0.0</td>\n",
" <td>7.2</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Customer Id Age Edu Years Employed Income Card Debt Other Debt \\\n",
"0 1 41 2 6 19 0.124 1.073 \n",
"1 2 47 1 26 100 4.582 8.218 \n",
"2 3 33 2 10 57 6.111 5.802 \n",
"3 4 29 2 4 19 0.681 0.516 \n",
"4 5 47 1 31 253 9.308 8.908 \n",
"\n",
" Defaulted DebtIncomeRatio \n",
"0 0.0 6.3 \n",
"1 0.0 12.8 \n",
"2 1.0 20.9 \n",
"3 0.0 6.3 \n",
"4 0.0 7.2 "
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = cust_df.drop('Address', axis=1)\n",
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"#### Normalizing over the standard deviation\n",
"Now let's normalize the dataset. But why do we need normalization in the first place? Normalization is a statistical method that helps mathematical-based algorithms to interpret features with different magnitudes and distributions equally. We use __StandardScaler()__ to normalize our dataset."
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array([[ 0.74291541, 0.31212243, -0.37878978, ..., -0.59048916,\n",
" -0.52379654, -0.57652509],\n",
" [ 1.48949049, -0.76634938, 2.5737211 , ..., 1.51296181,\n",
" -0.52379654, 0.39138677],\n",
" [-0.25251804, 0.31212243, 0.2117124 , ..., 0.80170393,\n",
" 1.90913822, 1.59755385],\n",
" ...,\n",
" [-1.24795149, 2.46906604, -1.26454304, ..., 0.03863257,\n",
" 1.90913822, 3.45892281],\n",
" [-0.37694723, -0.76634938, 0.50696349, ..., -0.70147601,\n",
" -0.52379654, -1.08281745],\n",
" [ 2.1116364 , -0.76634938, 1.09746566, ..., 0.16463355,\n",
" -0.52379654, -0.2340332 ]])"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from sklearn.preprocessing import StandardScaler\n",
"X = df.values[:,1:]\n",
"X = np.nan_to_num(X)\n",
"Clus_dataSet = StandardScaler().fit_transform(X)\n",
"Clus_dataSet"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"modeling\">Modeling</h2>"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"In our example (if we didn't have access to the k-means algorithm), it would be the same as guessing that each customer group would have certain age, income, education, etc, with multiple tests and experiments. However, using the K-means clustering we can do all this process much easier.\n",
"\n",
"Lets apply k-means on our dataset, and take look at cluster labels."
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [],
"source": [
"clusterNum = 3\n",
"k_means = KMeans(init = \"k-means++\", n_clusters = clusterNum, n_init = 12)\n",
"k_means.fit(X)\n",
"labels = k_means.labels_\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2 id=\"insights\">Insights</h2>\n",
"We assign the labels to each row in dataframe."
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Customer Id</th>\n",
" <th>Age</th>\n",
" <th>Edu</th>\n",
" <th>Years Employed</th>\n",
" <th>Income</th>\n",
" <th>Card Debt</th>\n",
" <th>Other Debt</th>\n",
" <th>Defaulted</th>\n",
" <th>DebtIncomeRatio</th>\n",
" <th>Clus_km</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1</td>\n",
" <td>41</td>\n",
" <td>2</td>\n",
" <td>6</td>\n",
" <td>19</td>\n",
" <td>0.124</td>\n",
" <td>1.073</td>\n",
" <td>0.0</td>\n",
" <td>6.3</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2</td>\n",
" <td>47</td>\n",
" <td>1</td>\n",
" <td>26</td>\n",
" <td>100</td>\n",
" <td>4.582</td>\n",
" <td>8.218</td>\n",
" <td>0.0</td>\n",
" <td>12.8</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>3</td>\n",
" <td>33</td>\n",
" <td>2</td>\n",
" <td>10</td>\n",
" <td>57</td>\n",
" <td>6.111</td>\n",
" <td>5.802</td>\n",
" <td>1.0</td>\n",
" <td>20.9</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>4</td>\n",
" <td>29</td>\n",
" <td>2</td>\n",
" <td>4</td>\n",
" <td>19</td>\n",
" <td>0.681</td>\n",
" <td>0.516</td>\n",
" <td>0.0</td>\n",
" <td>6.3</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>5</td>\n",
" <td>47</td>\n",
" <td>1</td>\n",
" <td>31</td>\n",
" <td>253</td>\n",
" <td>9.308</td>\n",
" <td>8.908</td>\n",
" <td>0.0</td>\n",
" <td>7.2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Customer Id Age Edu Years Employed Income Card Debt Other Debt \\\n",
"0 1 41 2 6 19 0.124 1.073 \n",
"1 2 47 1 26 100 4.582 8.218 \n",
"2 3 33 2 10 57 6.111 5.802 \n",
"3 4 29 2 4 19 0.681 0.516 \n",
"4 5 47 1 31 253 9.308 8.908 \n",
"\n",
" Defaulted DebtIncomeRatio Clus_km \n",
"0 0.0 6.3 0 \n",
"1 0.0 12.8 2 \n",
"2 1.0 20.9 0 \n",
"3 0.0 6.3 0 \n",
"4 0.0 7.2 1 "
]
},
"execution_count": 34,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df[\"Clus_km\"] = labels\n",
"df.head(5)"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"We can easily check the centroid values by averaging the features in each cluster."
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Customer Id</th>\n",
" <th>Age</th>\n",
" <th>Edu</th>\n",
" <th>Years Employed</th>\n",
" <th>Income</th>\n",
" <th>Card Debt</th>\n",
" <th>Other Debt</th>\n",
" <th>Defaulted</th>\n",
" <th>DebtIncomeRatio</th>\n",
" </tr>\n",
" <tr>\n",
" <th>Clus_km</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>432.468413</td>\n",
" <td>32.964561</td>\n",
" <td>1.614792</td>\n",
" <td>6.374422</td>\n",
" <td>31.164869</td>\n",
" <td>1.032541</td>\n",
" <td>2.104133</td>\n",
" <td>0.285185</td>\n",
" <td>10.094761</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>410.166667</td>\n",
" <td>45.388889</td>\n",
" <td>2.666667</td>\n",
" <td>19.555556</td>\n",
" <td>227.166667</td>\n",
" <td>5.678444</td>\n",
" <td>10.907167</td>\n",
" <td>0.285714</td>\n",
" <td>7.322222</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>402.295082</td>\n",
" <td>41.333333</td>\n",
" <td>1.956284</td>\n",
" <td>15.256831</td>\n",
" <td>83.928962</td>\n",
" <td>3.103639</td>\n",
" <td>5.765279</td>\n",
" <td>0.171233</td>\n",
" <td>10.724590</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Customer Id Age Edu Years Employed Income \\\n",
"Clus_km \n",
"0 432.468413 32.964561 1.614792 6.374422 31.164869 \n",
"1 410.166667 45.388889 2.666667 19.555556 227.166667 \n",
"2 402.295082 41.333333 1.956284 15.256831 83.928962 \n",
"\n",
" Card Debt Other Debt Defaulted DebtIncomeRatio \n",
"Clus_km \n",
"0 1.032541 2.104133 0.285185 10.094761 \n",
"1 5.678444 10.907167 0.285714 7.322222 \n",
"2 3.103639 5.765279 0.171233 10.724590 "
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.groupby('Clus_km').mean()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now, lets look at the distribution of customers based on their age and income:"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {
"button": false,
"collapsed": false,
"deletable": true,
"jupyter": {
"outputs_hidden": false
},
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"area = np.pi * ( X[:, 1])**2 \n",
"plt.scatter(X[:, 0], X[:, 3], s=area, c=labels.astype(np.float), alpha=0.5)\n",
"plt.xlabel('Age', fontsize=18)\n",
"plt.ylabel('Income', fontsize=16)\n",
"\n",
"plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"from mpl_toolkits.mplot3d import Axes3D \n",
"fig = plt.figure(1, figsize=(8, 6))\n",
"plt.clf()\n",
"ax = Axes3D(fig, rect=[0, 0, .95, 1], elev=48, azim=134)\n",
"\n",
"plt.cla()\n",
"# plt.ylabel('Age', fontsize=18)\n",
"# plt.xlabel('Income', fontsize=16)\n",
"# plt.zlabel('Education', fontsize=16)\n",
"ax.set_xlabel('Education')\n",
"ax.set_ylabel('Age')\n",
"ax.set_zlabel('Income')\n",
"\n",
"ax.scatter(X[:, 1], X[:, 0], X[:, 3], c= labels.astype(np.float))\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"k-means will partition your customers into mutually exclusive groups, for example, into 3 clusters. The customers in each cluster are similar to each other demographically.\n",
"Now we can create a profile for each group, considering the common characteristics of each cluster. \n",
"For example, the 3 clusters can be:\n",
"\n",
"- AFFLUENT, EDUCATED AND OLD AGED\n",
"- MIDDLE AGED AND MIDDLE INCOME\n",
"- YOUNG AND LOW INCOME"
]
},
{
"cell_type": "markdown",
"metadata": {
"button": false,
"deletable": true,
"new_sheet": false,
"run_control": {
"read_only": false
}
},
"source": [
"<h2>Want to learn more?</h2>\n",
"\n",
"IBM SPSS Modeler is a comprehensive analytics platform that has many machine learning algorithms. It has been designed to bring predictive intelligence to decisions made by individuals, by groups, by systems – by your enterprise as a whole. A free trial is available through this course, available here: <a href=\"http://cocl.us/ML0101EN-SPSSModeler\">SPSS Modeler</a>\n",
"\n",
"Also, you can use Watson Studio to run these notebooks faster with bigger datasets. Watson Studio is IBM's leading cloud solution for data scientists, built by data scientists. With Jupyter notebooks, RStudio, Apache Spark and popular libraries pre-packaged in the cloud, Watson Studio enables data scientists to collaborate on their projects without having to install anything. Join the fast-growing community of Watson Studio users today with a free account at <a href=\"https://cocl.us/ML0101EN_DSX\">Watson Studio</a>\n",
"\n",
"<h3>Thanks for completing this lesson!</h3>\n",
"\n",
"<h4>Author: <a href=\"https://ca.linkedin.com/in/saeedaghabozorgi\">Saeed Aghabozorgi</a></h4>\n",
"<p><a href=\"https://ca.linkedin.com/in/saeedaghabozorgi\">Saeed Aghabozorgi</a>, PhD is a Data Scientist in IBM with a track record of developing enterprise level applications that substantially increases clients’ ability to turn data into actionable knowledge. He is a researcher in data mining field and expert in developing advanced analytic methods like machine learning and statistical modelling on large datasets.</p>\n",
"\n",
"<hr>\n",
"\n",
"<p>Copyright &copy; 2018 <a href=\"https://cocl.us/DX0108EN_CC\">Cognitive Class</a>. This notebook and its source code are released under the terms of the <a href=\"https://bigdatauniversity.com/mit-license/\">MIT License</a>.</p>"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python",
"language": "python",
"name": "conda-env-python-py"
},
"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.6.11"
},
"widgets": {
"state": {},
"version": "1.1.2"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment