mirror of
https://github.com/donnemartin/data-science-ipython-notebooks.git
synced 2024-03-22 13:30:56 +08:00
233b197660
Source: https://github.com/jakevdp/PythonDataScienceHandbook unmodified
1377 lines
181 KiB
Python
1377 lines
181 KiB
Python
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"<!--BOOK_INFORMATION-->\n",
|
||
"<img align=\"left\" style=\"padding-right:10px;\" src=\"figures/PDSH-cover-small.png\">\n",
|
||
"*This notebook contains an excerpt from the [Python Data Science Handbook](http://shop.oreilly.com/product/0636920034919.do) by Jake VanderPlas; the content is available [on GitHub](https://github.com/jakevdp/PythonDataScienceHandbook).*\n",
|
||
"\n",
|
||
"*The text is released under the [CC-BY-NC-ND license](https://creativecommons.org/licenses/by-nc-nd/3.0/us/legalcode), and code is released under the [MIT license](https://opensource.org/licenses/MIT). If you find this content useful, please consider supporting the work by [buying the book](http://shop.oreilly.com/product/0636920034919.do)!*\n",
|
||
"\n",
|
||
"*No changes were made to the contents of this notebook from the original.*"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"<!--NAVIGATION-->\n",
|
||
"< [Aggregation and Grouping](03.08-Aggregation-and-Grouping.ipynb) | [Contents](Index.ipynb) | [Vectorized String Operations](03.10-Working-With-Strings.ipynb) >"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"# Pivot Tables"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"We have seen how the ``GroupBy`` abstraction lets us explore relationships within a dataset.\n",
|
||
"A *pivot table* is a similar operation that is commonly seen in spreadsheets and other programs that operate on tabular data.\n",
|
||
"The pivot table takes simple column-wise data as input, and groups the entries into a two-dimensional table that provides a multidimensional summarization of the data.\n",
|
||
"The difference between pivot tables and ``GroupBy`` can sometimes cause confusion; it helps me to think of pivot tables as essentially a *multidimensional* version of ``GroupBy`` aggregation.\n",
|
||
"That is, you split-apply-combine, but both the split and the combine happen across not a one-dimensional index, but across a two-dimensional grid."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"## Motivating Pivot Tables\n",
|
||
"\n",
|
||
"For the examples in this section, we'll use the database of passengers on the *Titanic*, available through the Seaborn library (see [Visualization With Seaborn](04.14-Visualization-With-Seaborn.ipynb)):"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 1,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [],
|
||
"source": [
|
||
"import numpy as np\n",
|
||
"import pandas as pd\n",
|
||
"import seaborn as sns\n",
|
||
"titanic = sns.load_dataset('titanic')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 2,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>survived</th>\n",
|
||
" <th>pclass</th>\n",
|
||
" <th>sex</th>\n",
|
||
" <th>age</th>\n",
|
||
" <th>sibsp</th>\n",
|
||
" <th>parch</th>\n",
|
||
" <th>fare</th>\n",
|
||
" <th>embarked</th>\n",
|
||
" <th>class</th>\n",
|
||
" <th>who</th>\n",
|
||
" <th>adult_male</th>\n",
|
||
" <th>deck</th>\n",
|
||
" <th>embark_town</th>\n",
|
||
" <th>alive</th>\n",
|
||
" <th>alone</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>0</td>\n",
|
||
" <td>3</td>\n",
|
||
" <td>male</td>\n",
|
||
" <td>22.0</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>7.2500</td>\n",
|
||
" <td>S</td>\n",
|
||
" <td>Third</td>\n",
|
||
" <td>man</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>Southampton</td>\n",
|
||
" <td>no</td>\n",
|
||
" <td>False</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>1</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>female</td>\n",
|
||
" <td>38.0</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>71.2833</td>\n",
|
||
" <td>C</td>\n",
|
||
" <td>First</td>\n",
|
||
" <td>woman</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>C</td>\n",
|
||
" <td>Cherbourg</td>\n",
|
||
" <td>yes</td>\n",
|
||
" <td>False</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>1</td>\n",
|
||
" <td>3</td>\n",
|
||
" <td>female</td>\n",
|
||
" <td>26.0</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>7.9250</td>\n",
|
||
" <td>S</td>\n",
|
||
" <td>Third</td>\n",
|
||
" <td>woman</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>Southampton</td>\n",
|
||
" <td>yes</td>\n",
|
||
" <td>True</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>1</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>female</td>\n",
|
||
" <td>35.0</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>53.1000</td>\n",
|
||
" <td>S</td>\n",
|
||
" <td>First</td>\n",
|
||
" <td>woman</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>C</td>\n",
|
||
" <td>Southampton</td>\n",
|
||
" <td>yes</td>\n",
|
||
" <td>False</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>0</td>\n",
|
||
" <td>3</td>\n",
|
||
" <td>male</td>\n",
|
||
" <td>35.0</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>8.0500</td>\n",
|
||
" <td>S</td>\n",
|
||
" <td>Third</td>\n",
|
||
" <td>man</td>\n",
|
||
" <td>True</td>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>Southampton</td>\n",
|
||
" <td>no</td>\n",
|
||
" <td>True</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" survived pclass sex age sibsp parch fare embarked class \\\n",
|
||
"0 0 3 male 22.0 1 0 7.2500 S Third \n",
|
||
"1 1 1 female 38.0 1 0 71.2833 C First \n",
|
||
"2 1 3 female 26.0 0 0 7.9250 S Third \n",
|
||
"3 1 1 female 35.0 1 0 53.1000 S First \n",
|
||
"4 0 3 male 35.0 0 0 8.0500 S Third \n",
|
||
"\n",
|
||
" who adult_male deck embark_town alive alone \n",
|
||
"0 man True NaN Southampton no False \n",
|
||
"1 woman False C Cherbourg yes False \n",
|
||
"2 woman False NaN Southampton yes True \n",
|
||
"3 woman False C Southampton yes False \n",
|
||
"4 man True NaN Southampton no True "
|
||
]
|
||
},
|
||
"execution_count": 2,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"titanic.head()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"This contains a wealth of information on each passenger of that ill-fated voyage, including gender, age, class, fare paid, and much more."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"## Pivot Tables by Hand\n",
|
||
"\n",
|
||
"To start learning more about this data, we might begin by grouping according to gender, survival status, or some combination thereof.\n",
|
||
"If you have read the previous section, you might be tempted to apply a ``GroupBy`` operation–for example, let's look at survival rate by gender:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 3,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>survived</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>sex</th>\n",
|
||
" <th></th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>female</th>\n",
|
||
" <td>0.742038</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>male</th>\n",
|
||
" <td>0.188908</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" survived\n",
|
||
"sex \n",
|
||
"female 0.742038\n",
|
||
"male 0.188908"
|
||
]
|
||
},
|
||
"execution_count": 3,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"titanic.groupby('sex')[['survived']].mean()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"This immediately gives us some insight: overall, three of every four females on board survived, while only one in five males survived!\n",
|
||
"\n",
|
||
"This is useful, but we might like to go one step deeper and look at survival by both sex and, say, class.\n",
|
||
"Using the vocabulary of ``GroupBy``, we might proceed using something like this:\n",
|
||
"we *group by* class and gender, *select* survival, *apply* a mean aggregate, *combine* the resulting groups, and then *unstack* the hierarchical index to reveal the hidden multidimensionality. In code:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 4,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th>class</th>\n",
|
||
" <th>First</th>\n",
|
||
" <th>Second</th>\n",
|
||
" <th>Third</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>sex</th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>female</th>\n",
|
||
" <td>0.968085</td>\n",
|
||
" <td>0.921053</td>\n",
|
||
" <td>0.500000</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>male</th>\n",
|
||
" <td>0.368852</td>\n",
|
||
" <td>0.157407</td>\n",
|
||
" <td>0.135447</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
"class First Second Third\n",
|
||
"sex \n",
|
||
"female 0.968085 0.921053 0.500000\n",
|
||
"male 0.368852 0.157407 0.135447"
|
||
]
|
||
},
|
||
"execution_count": 4,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"titanic.groupby(['sex', 'class'])['survived'].aggregate('mean').unstack()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"This gives us a better idea of how both gender and class affected survival, but the code is starting to look a bit garbled.\n",
|
||
"While each step of this pipeline makes sense in light of the tools we've previously discussed, the long string of code is not particularly easy to read or use.\n",
|
||
"This two-dimensional ``GroupBy`` is common enough that Pandas includes a convenience routine, ``pivot_table``, which succinctly handles this type of multi-dimensional aggregation."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"## Pivot Table Syntax\n",
|
||
"\n",
|
||
"Here is the equivalent to the preceding operation using the ``pivot_table`` method of ``DataFrame``s:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 5,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th>class</th>\n",
|
||
" <th>First</th>\n",
|
||
" <th>Second</th>\n",
|
||
" <th>Third</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>sex</th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>female</th>\n",
|
||
" <td>0.968085</td>\n",
|
||
" <td>0.921053</td>\n",
|
||
" <td>0.500000</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>male</th>\n",
|
||
" <td>0.368852</td>\n",
|
||
" <td>0.157407</td>\n",
|
||
" <td>0.135447</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
"class First Second Third\n",
|
||
"sex \n",
|
||
"female 0.968085 0.921053 0.500000\n",
|
||
"male 0.368852 0.157407 0.135447"
|
||
]
|
||
},
|
||
"execution_count": 5,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"titanic.pivot_table('survived', index='sex', columns='class')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"This is eminently more readable than the ``groupby`` approach, and produces the same result.\n",
|
||
"As you might expect of an early 20th-century transatlantic cruise, the survival gradient favors both women and higher classes.\n",
|
||
"First-class women survived with near certainty (hi, Rose!), while only one in ten third-class men survived (sorry, Jack!)."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Multi-level pivot tables\n",
|
||
"\n",
|
||
"Just as in the ``GroupBy``, the grouping in pivot tables can be specified with multiple levels, and via a number of options.\n",
|
||
"For example, we might be interested in looking at age as a third dimension.\n",
|
||
"We'll bin the age using the ``pd.cut`` function:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 6,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>class</th>\n",
|
||
" <th>First</th>\n",
|
||
" <th>Second</th>\n",
|
||
" <th>Third</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>sex</th>\n",
|
||
" <th>age</th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th rowspan=\"2\" valign=\"top\">female</th>\n",
|
||
" <th>(0, 18]</th>\n",
|
||
" <td>0.909091</td>\n",
|
||
" <td>1.000000</td>\n",
|
||
" <td>0.511628</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>(18, 80]</th>\n",
|
||
" <td>0.972973</td>\n",
|
||
" <td>0.900000</td>\n",
|
||
" <td>0.423729</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th rowspan=\"2\" valign=\"top\">male</th>\n",
|
||
" <th>(0, 18]</th>\n",
|
||
" <td>0.800000</td>\n",
|
||
" <td>0.600000</td>\n",
|
||
" <td>0.215686</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>(18, 80]</th>\n",
|
||
" <td>0.375000</td>\n",
|
||
" <td>0.071429</td>\n",
|
||
" <td>0.133663</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
"class First Second Third\n",
|
||
"sex age \n",
|
||
"female (0, 18] 0.909091 1.000000 0.511628\n",
|
||
" (18, 80] 0.972973 0.900000 0.423729\n",
|
||
"male (0, 18] 0.800000 0.600000 0.215686\n",
|
||
" (18, 80] 0.375000 0.071429 0.133663"
|
||
]
|
||
},
|
||
"execution_count": 6,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"age = pd.cut(titanic['age'], [0, 18, 80])\n",
|
||
"titanic.pivot_table('survived', ['sex', age], 'class')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"We can apply the same strategy when working with the columns as well; let's add info on the fare paid using ``pd.qcut`` to automatically compute quantiles:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 7,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr>\n",
|
||
" <th></th>\n",
|
||
" <th>fare</th>\n",
|
||
" <th colspan=\"3\" halign=\"left\">[0, 14.454]</th>\n",
|
||
" <th colspan=\"3\" halign=\"left\">(14.454, 512.329]</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th></th>\n",
|
||
" <th>class</th>\n",
|
||
" <th>First</th>\n",
|
||
" <th>Second</th>\n",
|
||
" <th>Third</th>\n",
|
||
" <th>First</th>\n",
|
||
" <th>Second</th>\n",
|
||
" <th>Third</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>sex</th>\n",
|
||
" <th>age</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 rowspan=\"2\" valign=\"top\">female</th>\n",
|
||
" <th>(0, 18]</th>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>1.000000</td>\n",
|
||
" <td>0.714286</td>\n",
|
||
" <td>0.909091</td>\n",
|
||
" <td>1.000000</td>\n",
|
||
" <td>0.318182</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>(18, 80]</th>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>0.880000</td>\n",
|
||
" <td>0.444444</td>\n",
|
||
" <td>0.972973</td>\n",
|
||
" <td>0.914286</td>\n",
|
||
" <td>0.391304</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th rowspan=\"2\" valign=\"top\">male</th>\n",
|
||
" <th>(0, 18]</th>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>0.000000</td>\n",
|
||
" <td>0.260870</td>\n",
|
||
" <td>0.800000</td>\n",
|
||
" <td>0.818182</td>\n",
|
||
" <td>0.178571</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>(18, 80]</th>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.098039</td>\n",
|
||
" <td>0.125000</td>\n",
|
||
" <td>0.391304</td>\n",
|
||
" <td>0.030303</td>\n",
|
||
" <td>0.192308</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
"fare [0, 14.454] (14.454, 512.329] \\\n",
|
||
"class First Second Third First Second \n",
|
||
"sex age \n",
|
||
"female (0, 18] NaN 1.000000 0.714286 0.909091 1.000000 \n",
|
||
" (18, 80] NaN 0.880000 0.444444 0.972973 0.914286 \n",
|
||
"male (0, 18] NaN 0.000000 0.260870 0.800000 0.818182 \n",
|
||
" (18, 80] 0.0 0.098039 0.125000 0.391304 0.030303 \n",
|
||
"\n",
|
||
"fare \n",
|
||
"class Third \n",
|
||
"sex age \n",
|
||
"female (0, 18] 0.318182 \n",
|
||
" (18, 80] 0.391304 \n",
|
||
"male (0, 18] 0.178571 \n",
|
||
" (18, 80] 0.192308 "
|
||
]
|
||
},
|
||
"execution_count": 7,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"fare = pd.qcut(titanic['fare'], 2)\n",
|
||
"titanic.pivot_table('survived', ['sex', age], [fare, 'class'])"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"The result is a four-dimensional aggregation with hierarchical indices (see [Hierarchical Indexing](03.05-Hierarchical-Indexing.ipynb)), shown in a grid demonstrating the relationship between the values."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Additional pivot table options\n",
|
||
"\n",
|
||
"The full call signature of the ``pivot_table`` method of ``DataFrame``s is as follows:\n",
|
||
"\n",
|
||
"```python\n",
|
||
"# call signature as of Pandas 0.18\n",
|
||
"DataFrame.pivot_table(data, values=None, index=None, columns=None,\n",
|
||
" aggfunc='mean', fill_value=None, margins=False,\n",
|
||
" dropna=True, margins_name='All')\n",
|
||
"```\n",
|
||
"\n",
|
||
"We've already seen examples of the first three arguments; here we'll take a quick look at the remaining ones.\n",
|
||
"Two of the options, ``fill_value`` and ``dropna``, have to do with missing data and are fairly straightforward; we will not show examples of them here.\n",
|
||
"\n",
|
||
"The ``aggfunc`` keyword controls what type of aggregation is applied, which is a mean by default.\n",
|
||
"As in the GroupBy, the aggregation specification can be a string representing one of several common choices (e.g., ``'sum'``, ``'mean'``, ``'count'``, ``'min'``, ``'max'``, etc.) or a function that implements an aggregation (e.g., ``np.sum()``, ``min()``, ``sum()``, etc.).\n",
|
||
"Additionally, it can be specified as a dictionary mapping a column to any of the above desired options:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 8,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr>\n",
|
||
" <th></th>\n",
|
||
" <th colspan=\"3\" halign=\"left\">fare</th>\n",
|
||
" <th colspan=\"3\" halign=\"left\">survived</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>class</th>\n",
|
||
" <th>First</th>\n",
|
||
" <th>Second</th>\n",
|
||
" <th>Third</th>\n",
|
||
" <th>First</th>\n",
|
||
" <th>Second</th>\n",
|
||
" <th>Third</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>sex</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>female</th>\n",
|
||
" <td>106.125798</td>\n",
|
||
" <td>21.970121</td>\n",
|
||
" <td>16.118810</td>\n",
|
||
" <td>91.0</td>\n",
|
||
" <td>70.0</td>\n",
|
||
" <td>72.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>male</th>\n",
|
||
" <td>67.226127</td>\n",
|
||
" <td>19.741782</td>\n",
|
||
" <td>12.661633</td>\n",
|
||
" <td>45.0</td>\n",
|
||
" <td>17.0</td>\n",
|
||
" <td>47.0</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" fare survived \n",
|
||
"class First Second Third First Second Third\n",
|
||
"sex \n",
|
||
"female 106.125798 21.970121 16.118810 91.0 70.0 72.0\n",
|
||
"male 67.226127 19.741782 12.661633 45.0 17.0 47.0"
|
||
]
|
||
},
|
||
"execution_count": 8,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"titanic.pivot_table(index='sex', columns='class',\n",
|
||
" aggfunc={'survived':sum, 'fare':'mean'})"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Notice also here that we've omitted the ``values`` keyword; when specifying a mapping for ``aggfunc``, this is determined automatically."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {
|
||
"collapsed": true
|
||
},
|
||
"source": [
|
||
"At times it's useful to compute totals along each grouping.\n",
|
||
"This can be done via the ``margins`` keyword:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 9,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th>class</th>\n",
|
||
" <th>First</th>\n",
|
||
" <th>Second</th>\n",
|
||
" <th>Third</th>\n",
|
||
" <th>All</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>sex</th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>female</th>\n",
|
||
" <td>0.968085</td>\n",
|
||
" <td>0.921053</td>\n",
|
||
" <td>0.500000</td>\n",
|
||
" <td>0.742038</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>male</th>\n",
|
||
" <td>0.368852</td>\n",
|
||
" <td>0.157407</td>\n",
|
||
" <td>0.135447</td>\n",
|
||
" <td>0.188908</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>All</th>\n",
|
||
" <td>0.629630</td>\n",
|
||
" <td>0.472826</td>\n",
|
||
" <td>0.242363</td>\n",
|
||
" <td>0.383838</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
"class First Second Third All\n",
|
||
"sex \n",
|
||
"female 0.968085 0.921053 0.500000 0.742038\n",
|
||
"male 0.368852 0.157407 0.135447 0.188908\n",
|
||
"All 0.629630 0.472826 0.242363 0.383838"
|
||
]
|
||
},
|
||
"execution_count": 9,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"titanic.pivot_table('survived', index='sex', columns='class', margins=True)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Here this automatically gives us information about the class-agnostic survival rate by gender, the gender-agnostic survival rate by class, and the overall survival rate of 38%.\n",
|
||
"The margin label can be specified with the ``margins_name`` keyword, which defaults to ``\"All\"``."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"## Example: Birthrate Data\n",
|
||
"\n",
|
||
"As a more interesting example, let's take a look at the freely available data on births in the United States, provided by the Centers for Disease Control (CDC).\n",
|
||
"This data can be found at https://raw.githubusercontent.com/jakevdp/data-CDCbirths/master/births.csv\n",
|
||
"(this dataset has been analyzed rather extensively by Andrew Gelman and his group; see, for example, [this blog post](http://andrewgelman.com/2012/06/14/cool-ass-signal-processing-using-gaussian-processes/)):"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 10,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [],
|
||
"source": [
|
||
"# shell command to download the data:\n",
|
||
"# !curl -O https://raw.githubusercontent.com/jakevdp/data-CDCbirths/master/births.csv"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 11,
|
||
"metadata": {
|
||
"collapsed": true
|
||
},
|
||
"outputs": [],
|
||
"source": [
|
||
"births = pd.read_csv('data/births.csv')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Taking a look at the data, we see that it's relatively simple–it contains the number of births grouped by date and gender:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 12,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>year</th>\n",
|
||
" <th>month</th>\n",
|
||
" <th>day</th>\n",
|
||
" <th>gender</th>\n",
|
||
" <th>births</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>1969</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>F</td>\n",
|
||
" <td>4046</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>1969</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>M</td>\n",
|
||
" <td>4440</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>1969</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>2</td>\n",
|
||
" <td>F</td>\n",
|
||
" <td>4454</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>1969</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>2</td>\n",
|
||
" <td>M</td>\n",
|
||
" <td>4548</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>1969</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>3</td>\n",
|
||
" <td>F</td>\n",
|
||
" <td>4548</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" year month day gender births\n",
|
||
"0 1969 1 1 F 4046\n",
|
||
"1 1969 1 1 M 4440\n",
|
||
"2 1969 1 2 F 4454\n",
|
||
"3 1969 1 2 M 4548\n",
|
||
"4 1969 1 3 F 4548"
|
||
]
|
||
},
|
||
"execution_count": 12,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"births.head()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"We can start to understand this data a bit more by using a pivot table.\n",
|
||
"Let's add a decade column, and take a look at male and female births as a function of decade:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 13,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th>gender</th>\n",
|
||
" <th>F</th>\n",
|
||
" <th>M</th>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>decade</th>\n",
|
||
" <th></th>\n",
|
||
" <th></th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>1960</th>\n",
|
||
" <td>1753634</td>\n",
|
||
" <td>1846572</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1970</th>\n",
|
||
" <td>16263075</td>\n",
|
||
" <td>17121550</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1980</th>\n",
|
||
" <td>18310351</td>\n",
|
||
" <td>19243452</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1990</th>\n",
|
||
" <td>19479454</td>\n",
|
||
" <td>20420553</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2000</th>\n",
|
||
" <td>18229309</td>\n",
|
||
" <td>19106428</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
"gender F M\n",
|
||
"decade \n",
|
||
"1960 1753634 1846572\n",
|
||
"1970 16263075 17121550\n",
|
||
"1980 18310351 19243452\n",
|
||
"1990 19479454 20420553\n",
|
||
"2000 18229309 19106428"
|
||
]
|
||
},
|
||
"execution_count": 13,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"births['decade'] = 10 * (births['year'] // 10)\n",
|
||
"births.pivot_table('births', index='decade', columns='gender', aggfunc='sum')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"We immediately see that male births outnumber female births in every decade.\n",
|
||
"To see this trend a bit more clearly, we can use the built-in plotting tools in Pandas to visualize the total number of births by year (see [Introduction to Matplotlib](04.00-Introduction-To-Matplotlib.ipynb) for a discussion of plotting with Matplotlib):"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 14,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"image/png": "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\nJfd0uLtWowm/plapGR86BgeNPd9e2M4/D7/JncFDubvdsCZ5fiyar0JDEQeyDrP/0iHyKq4A4OXo\nST/fXvTxjcLd3q3JYzIrCpt2neW7n9Jw09oxb2IPAr21ANzVO5D8ogq2J2aw7LOjzJvUA43N709g\nGvWnwtHREQC9Xs+cOXOYO3cu/v7++Pv7X5co6PV6XFz++wzFyckJvV5PaWkpWu3VDjs7O1NSUnLd\nsWvH09PTcXBwwN3d/brj19q41va1NoQQzZe+spRdGXtxtXMhxq9PndpQqVSM7nAXHdzasTZ1M99d\n2E5SzlGmdplAe7fgBo5YNGdV5iqO5p1kX9ZBTuafQkHBVm1LH58o+vn2IsS9vcXqIFSZzHywNZX9\nxy/j4+HEvEndaePmWP15lUrF5OGhXCmp4MjpPD7YepJHRt/2u+Nt9PQ5KyuL2NhYpk6dysiRI294\njlarRa/XV39cWlqKq6srWq2W0tLS6mMuLi7VCcCvz3Vzc8PW1rb6XLiafLi6ulaf7+HhcV3ScCs6\nnRMaTe2fK3l51W+iSHPQGvoIraOfzb2PP6Rsp9JUyZSIsfj73Hi3vdr2cbBXNL07dmNtyhdsOxPH\nkoQVjAgbygPh9+Cgse65TM39+1gblu5jbmk+L+54jdyyq6MHoR7tGNqhP/2DonGydazh6tqrSz/L\nDVW88vEhElNz6BSk428z+uCmvfHf2Wce7sP/rdzH/uPZBPq6MW1El991r0ZNFPLy8pgxYwaLFi2i\nb9++Nz0vIiKCpUuXUllZicFg4Ny5c4SGhhIZGUlcXBzh4eHExcURHR2NVqvFzs6O9PR0AgIC2LNn\nD7GxsdjY2PDqq6/y8MMPk5WVhaIouLu707NnT+Lj4xk3bhzx8fFER0fXGHdBQVmt++jl5WL1xTLq\nqzX0EVpHP5t7H/XGUr49tRNXOxe6u/a4YV/q0sd7gkZxm+ttrDm5ka2ndnAwLYkpne+nk0dIQ4Xe\noJr797E2LN3HiioDryWuILfsCjF+fRgSEIOf1geA0sIqSmmY2OrSz+KySt7YmMz5rBLCO3jy+Lhu\nVJZXklteedNrZo3tysurE9jw4ykcNCqG9PD/TRw306iJwqpVqyguLmbFihUsX74clUrFe++9h53d\n9cVO2rRpw7Rp05gyZQqKojBv3jzs7OyYPHkyCxYsYMqUKdjZ2bFkyRIAnn/+eebPn4/ZbCYmJoaI\n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\n",
|
||
"text/plain": [
|
||
"<matplotlib.figure.Figure at 0x1173ed940>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"%matplotlib inline\n",
|
||
"import matplotlib.pyplot as plt\n",
|
||
"sns.set() # use Seaborn styles\n",
|
||
"births.pivot_table('births', index='year', columns='gender', aggfunc='sum').plot()\n",
|
||
"plt.ylabel('total births per year');"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"With a simple pivot table and ``plot()`` method, we can immediately see the annual trend in births by gender. By eye, it appears that over the past 50 years male births have outnumbered female births by around 5%."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Further data exploration\n",
|
||
"\n",
|
||
"Though this doesn't necessarily relate to the pivot table, there are a few more interesting features we can pull out of this dataset using the Pandas tools covered up to this point.\n",
|
||
"We must start by cleaning the data a bit, removing outliers caused by mistyped dates (e.g., June 31st) or missing values (e.g., June 99th).\n",
|
||
"One easy way to remove these all at once is to cut outliers; we'll do this via a robust sigma-clipping operation:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 15,
|
||
"metadata": {
|
||
"collapsed": true
|
||
},
|
||
"outputs": [],
|
||
"source": [
|
||
"quartiles = np.percentile(births['births'], [25, 50, 75])\n",
|
||
"mu = quartiles[1]\n",
|
||
"sig = 0.74 * (quartiles[2] - quartiles[0])"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"This final line is a robust estimate of the sample mean, where the 0.74 comes from the interquartile range of a Gaussian distribution (You can learn more about sigma-clipping operations in a book I coauthored with Željko Ivezić, Andrew J. Connolly, and Alexander Gray: [\"Statistics, Data Mining, and Machine Learning in Astronomy\"](http://press.princeton.edu/titles/10159.html) (Princeton University Press, 2014)).\n",
|
||
"\n",
|
||
"With this we can use the ``query()`` method (discussed further in [High-Performance Pandas: ``eval()`` and ``query()``](03.12-Performance-Eval-and-Query.ipynb)) to filter-out rows with births outside these values:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 16,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [],
|
||
"source": [
|
||
"births = births.query('(births > @mu - 5 * @sig) & (births < @mu + 5 * @sig)')"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Next we set the ``day`` column to integers; previously it had been a string because some columns in the dataset contained the value ``'null'``:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 17,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [],
|
||
"source": [
|
||
"# set 'day' column to integer; it originally was a string due to nulls\n",
|
||
"births['day'] = births['day'].astype(int)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Finally, we can combine the day, month, and year to create a Date index (see [Working with Time Series](03.11-Working-with-Time-Series.ipynb)).\n",
|
||
"This allows us to quickly compute the weekday corresponding to each row:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 18,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [],
|
||
"source": [
|
||
"# create a datetime index from the year, month, day\n",
|
||
"births.index = pd.to_datetime(10000 * births.year +\n",
|
||
" 100 * births.month +\n",
|
||
" births.day, format='%Y%m%d')\n",
|
||
"\n",
|
||
"births['dayofweek'] = births.index.dayofweek"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Using this we can plot births by weekday for several decades:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 19,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"image/png": "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\nHCMi8XvqGQJnv4Hr7cNRrKzIX/8zx1/+F6femE3hzh2Nui1yez9nZk3uSd+wVpzIKmLWF4ls2pNp\nko2VjFYIrFq1Cnd3d/r27Yter6empoYXX3yR559/Hju7P5ZPFBcX1+lJYG9vT3FxMSUlJbUTFB0c\nHCg2k60ohRDCUrnYOPNA5wno9Do+PbCEkqpSU4fU6DSeXniOuYe2b/4PnymPYx/aibLDaWR98iEZ\nz07nwtfLqDyX1SjnsrNR8+AdnZgysjNqlYovf07j/W/2U9jEk0mNM02Si4WAoihs3bqV1NRU7rzz\nTvz8/HjllVeoqKjg2LFjzJ49m169etX5kC8pKcHJyQmtVktJSUntbX+ngVFDr5dYCsmT4SRXhpE8\nGaY558nTsztZVcP4OuVHlh37huf6TUGlGG9w2ZS58vIZDLcPpuzMGbJ+Xs/5XzeR9/M68n5eh3OX\ncFrddgtuvXqism7Y5kzDPR3pGe7LO8t2s/doNrM+T+TJcd2ICPFupL/k+gzafbChYmJiePXVV2u3\nLs7MzOTpp59m2bJlZGdnM3nyZFauXElFRQVjx45l9erVLFmyhJKSEqZOncqPP/7Irl27mDlzpkHn\na44TcZpac52wZAqSK8NIngzTEvKk0+v4YO+npOYdYVS7YdwSEG2U85hbrnRVVRTvTqJg82+UHU4D\nwMrRCad+/XGOGoDGs2GtmHV6PT8nnGTV5nRqdHoGR/hxT3Q7NNbXX2Zo9MmCjUFRlGte9/Dw8CAm\nJoYJEyag1+uZPn06Go2G8ePHM2PGDCZMmIBGo2HevHlNEaoQQoh6qBQV93cez+yEd/g+fR2BTm0I\ndm1r6rCMTmVtjVOv3jj16k3l2TPkx2+mcNsW8tb+SN7aH7HvHIZzVDTarjfdUF8ClaJwe68AOgW4\n8fGaFDYmnSb1RB4Pj+hEG2/jjYw0yYhAUzOnCtJcmVulbc4kV4aRPBmmJeXpaH4G7+75CEdrB17o\n+RSOmsZtPNcccqWrqqR41y4K4jdRduQwAFbOLjhfGiWwdve4oeNWVNXw9W9H+XV3JmorhdFR7bi1\npz+qqyzbNHpnweaouXTtMqXm1N3M1CRXhpE8GaYl5cnN1hVrlZp92SmcKsqkR6tujdpfoDnkSrGy\nwsbfH+d+/dFG9EBRqag4kUHpwRTyN66nPCMdla0t1p5eKCrD51KorVR0aedBkI8jB9Jz2X0kmyOn\n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\nz7DXppEAAAAASUVORK5CYII=\n",
|
||
"text/plain": [
|
||
"<matplotlib.figure.Figure at 0x1179ace80>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"import matplotlib.pyplot as plt\n",
|
||
"import matplotlib as mpl\n",
|
||
"\n",
|
||
"births.pivot_table('births', index='dayofweek',\n",
|
||
" columns='decade', aggfunc='mean').plot()\n",
|
||
"plt.gca().set_xticklabels(['Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat', 'Sun'])\n",
|
||
"plt.ylabel('mean births by day');"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Apparently births are slightly less common on weekends than on weekdays! Note that the 1990s and 2000s are missing because the CDC data contains only the month of birth starting in 1989.\n",
|
||
"\n",
|
||
"Another intersting view is to plot the mean number of births by the day of the *year*.\n",
|
||
"Let's first group the data by month and day separately:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 20,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/plain": [
|
||
"1 1 4009.225\n",
|
||
" 2 4247.400\n",
|
||
" 3 4500.900\n",
|
||
" 4 4571.350\n",
|
||
" 5 4603.625\n",
|
||
"Name: births, dtype: float64"
|
||
]
|
||
},
|
||
"execution_count": 20,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"births_by_date = births.pivot_table('births', \n",
|
||
" [births.index.month, births.index.day])\n",
|
||
"births_by_date.head()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"The result is a multi-index over months and days.\n",
|
||
"To make this easily plottable, let's turn these months and days into a date by associating them with a dummy year variable (making sure to choose a leap year so February 29th is correctly handled!)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 21,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"text/plain": [
|
||
"2012-01-01 4009.225\n",
|
||
"2012-01-02 4247.400\n",
|
||
"2012-01-03 4500.900\n",
|
||
"2012-01-04 4571.350\n",
|
||
"2012-01-05 4603.625\n",
|
||
"Name: births, dtype: float64"
|
||
]
|
||
},
|
||
"execution_count": 21,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"births_by_date.index = [pd.datetime(2012, month, day)\n",
|
||
" for (month, day) in births_by_date.index]\n",
|
||
"births_by_date.head()"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"Focusing on the month and day only, we now have a time series reflecting the average number of births by date of the year.\n",
|
||
"From this, we can use the ``plot`` method to plot the data. It reveals some interesting trends:"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 22,
|
||
"metadata": {
|
||
"collapsed": false
|
||
},
|
||
"outputs": [
|
||
{
|
||
"data": {
|
||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAskAAAEMCAYAAAA2+Ct3AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsvXl8XOV59n+d2XfNjGa077LkVd4BOwbHIZCQkDYp4CZ2\nYkrrX9/ShOZ9S0ISSt9A2iahbQjk80l4myakrQ117IQlYQkBUjAGGxuvsqzV2tfRaPZ9Pb8/zpyj\nmdFskiXLku/vP5jRmZnnmZlzzvXcz3XfN8OyLAuCIAiCIAiCIAREiz0AgiAIgiAIgrjWIJFMEARB\nEARBEGmQSCYIgiAIgiCINEgkEwRBEARBEEQaJJIJgiAIgiAIIg0SyQRBEARBEASRhqSQg+666y5o\nNBoAQFVVFb73ve8BAF5++WU899xz+OUvfwkAOHLkCA4fPgypVIr7778fu3btQigUwkMPPQSbzQaN\nRoPHH38cBoNhgaZDEARBEARBEFdOXpEcDocBAAcOHEh5vL29Hc8//7zw/1NTUzh48CBefPFFBINB\n7NmzBzt27MChQ4fQ3NyMBx54AK+99hqefvppPPLII/M8DYIgCIIgCIKYP/LaLTo7O+H3+7F//37c\nd999uHDhApxOJ5566qkUsdva2ootW7ZAIpFAo9Ggrq4OnZ2dOHPmDHbu3AkA2LlzJ06cOLFwsyEI\ngiAIgiCIeSBvJFmhUGD//v3YvXs3BgYGsH//fjQ1NeFb3/oWZDKZcJzX64VWqxX+X6VSwev1wufz\nCVYNtVoNr9e7ANMgCIIgCIIgiPkjr0iuq6tDbW2t8O+xsTGIxWI89thjCIVC6O3txfe//33cdNNN\nKQLY5/NBp9NBo9HA5/MJjyUL6WywLAuGYeY6J4IgCIIgCIK4IvKK5Oeffx7d3d149NFHYbFYUF9f\nj1dffRUMw2B0dBRf+9rX8PDDD2NqagpPPfUUwuEwQqEQ+vr60NTUhE2bNuHo0aNoaWnB0aNHsXXr\n1ryDYhgGVqtnXiZ4rWI2a5fdHJfjnNJZznNcznPjWc5zXM5zA5b//IDlPcflPDee5TzH5T63bOQV\nyffccw8efvhh7N27FyKRCN/73vcyRnlNJhP27duHvXv3gmVZPPjgg5DJZNizZw+++c1vYu/evZDJ\nZHjiiSeubDYEQRAEQRAEscAwLMuyiz2ITCzXFQvPclyVLcc5pbOc57ic58aznOe4nOcGLP/5Act7\njst5bjzLeY7LfW7ZoGYiBEEQBEEQBJEGiWSCIAiCIAiCSINEMkEQBEEQBEGkQSKZIAiCIAiCINIg\nkUwQBEEQBEEQaZBIJgiCIAiCIIg0SCQTBEEQxHVEPM7iR7+6gNdPDhV0fCgSQ2uvDS8d64PF4V/g\n0RHEtUPeZiIEQRAEQSwfJux+XOi1oXfMjdtvqIJYlD1eFonG8Xf//gEcnhAAYHjSi7+5e/3VGipB\nLCoUSSYIgiCI64hBC9cUwhuIoGfYlfPY7mEnHJ4Q1tYbUWZUobXXBm8gcjWGSRCLDolkgiAIgriO\nGLJMd047223NeeyF3ikAwKduqsEtG8oRi7P4sHNyQcdHENcKJJIJgiAI4jpicIITyUq5GGe6rWBZ\nNuuxrb02KGRiNFfrsW1NGRgAJ9omrtJICWJxIZFMEARBENcJLMti0OJFqVGFjSvMcHhCGJjwZDx2\nwu7HpCOAtXVGSMQiGLRyrK4z4PKoC5POwFUeOUFcfUgkEwRBEMR1gtUVRCAURW2pBpubzQCA01ns\nE62XOavF+sZi4bFta8oAAB92WBZ4pASx+JBIJgiCIIjrhKFE1Li2TIuWBiOUcglOXJpAPD7TcnE+\ng0je2GQCwwAXem1XZ8AEsYiQSCYIgiCIJczZbivOdOVOwOPhK1vUlmohk4px0+oSOL1hXBqwIxSO\noWvIAZZl0T3sROeQE83VehRp5MLzNUopVlQWoXfUBY8/vCDzIYhrBaqTTBAEQRBLmP96vRPhSBwb\nVtwCiTh37IsXyTWlWgDAjvXleOf8GN4+O4rfvt+P3lE3bt9ajcujXGm4e3Y1zniNDStM6Blx4WKf\nDR9ZVz7PsyGIaweKJBMEQRDEEiUQisLjjyAUiaFvzJ3z2DjLon/MDVORAhqlFADQUK5DebEK5y9P\noXfUDalEhDdPD6N/3I2tq0qworJoxutsSNgvzvVM4cV3+/CTFy5mtGsQxFKHRDJBEARBLFGsSVUm\nLvXbcx47MumFLxjFqhqD8BjDMLi5hYsGr6414Pv/axvKi1WQSUUZo8gAUGFSw1SkwJkuK14+PoAz\n3VaMWL3zMBuCuLYguwVBEARBLFGSRXL7gB1/srMh67Edgw4AnBhO5ratVdCopNi6sgRKuQSP/fmN\n8AcjKV7kZBiGweZmM974cBgGrRwOTwh9Y27BwkEQywWKJBMEQRDEEoWvVyxiGPSNu+EPZm8ZzYvk\nVWkiWSoR45b1FVDKJYn/F2UVyDx37WzA1z6/Ef/7nvUAkNHqEWdZTDr8OZuVEMS1TEGR5Lvuugsa\njQYAUFVVhXvvvRf/+I//CLFYDJlMhn/5l3+B0WjEkSNHcPjwYUilUtx///3YtWsXQqEQHnroIdhs\nNmg0Gjz++OMwGAx53pEgCIIgiHxYnUEAwKYmE850W9E55BTqHycTjcXRNexEqVEFgza3AC4EmVSM\ntfVGxOMs5DIxesdcKX9//+I4XjkxCIvdj/s/uxZ3luiu+D0J4mqTVySHw1yJlwMHDgiP7du3D9/+\n9rexcuVKHD58GD/72c+wf/9+HDx4EC+++CKCwSD27NmDHTt24NChQ2hubsYDDzyA1157DU8//TQe\neeSRhZsRQRAEQVwnWB1+AMBHN1bgTLcVlwbsGUXy4IQHoXBshtXiShGJGNSXadE55IQ/GIFKIUX/\nuBvPvNoBEcMAANr67Lhz57y+LUFcFfLaLTo7O+H3+7F//37cd999uHDhAp588kmsXLkSABCNRiGT\nydDa2ootW7ZAIpFAo9Ggrq4OnZ2dOHPmDHbu5M6OnTt34sSJEws7I4IgCIK4TrA6g9CpZVhVa4BM\nIsLlEVfG47L5keeDxkQFjP5xrrxcWx/XaOQv/2gNlHIxekYzj4kgrnXyimSFQoH9+/fjmWeewWOP\nPYavf/3rMBqNAICzZ8/iv//7v3HffffB6/VCq5027atUKni9Xvh8PsGqoVar4fVSBixBEARBXCmx\neBw2dxBmvQISsQg1ZVqMWn0IhWMzjuXrHq+s1s/7OBrKOStFX8Jy0THoAANgbb0RDRVFsNj9cHlD\n8/6+BLHQ5LVb1NXVoba2Vvi3Xq+H1WrFmTNn8NOf/hT//u//DoPBAI1GkyKAfT4fdDodNBoNfD6f\n8FiykM6F2bz8s2SX4xyX45zSWc5zXM5z41nOc1zOcwOW//yA2c1xwuZDLM6iulQHs1mLtQ0mXB5x\nwRWKYW1lqhj2BCJQysVorCvO8mpz5wa5FHjhIoan/NAWKXF51I36yiLU1xixobkEl/rt6Byw46br\noPHIcv6NLue5ZSOvSH7++efR3d2NRx99FBaLBT6fDydPnsThw4dx8OBB6HTcCnL9+vV46qmnEA6H\nEQqF0NfXh6amJmzatAlHjx5FS0sLjh49iq1btxY0MKvVc2Uzu8Yxm7XLbo7LcU7pLOc5Lue58Szn\nOS7nuQHLf37A7OfYNcDVRdYpJbBaPSjTKwAA5zomUKKVpRxrcwagU8sX7DM06xVovWzF7471IRqL\no7myCFarB+UGbkwdA3Y0lGoW5L2vFZbzb3S5zy0bee0W99xzDzweD/bu3Yuvfe1r+O53v4vvfve7\n8Pv9+MpXvoJ7770XP/7xj2EymbBv3z7s3bsX9913Hx588EHIZDLs2bMHPT092Lt3L371q1/hgQce\nmNfJEQRBEMRsiMbieP5or1A+banCj9+sVwIA6iu4oFX/eGo5tmgsDrc/AoMmVTjPJ5/ZXodwJI4D\nv+8CAKyu47zPDeU6MAwnkgliqZE3kiyVSvGDH/wg5bGTJ09mPHb37t3YvXt3ymMKhQI/+tGPrmCI\nBEEQBDF/XOy14dUTg4jG4vj8rU0L9j7RWBxObwimIuWCvL41TSSbE+2m02sWu31clSp9ntrHV8KO\n9eV4t3UMvaNuiEUMmqs4u4dSLkG1WYOeYSci0TikEmrPQCw+gxMe/MdrHfjyXS1XFkkmCIIglhcs\ny+ZsOrHcGU60UOZrDC8UrxwfwMM//QCjC9SymR8/L5IZhkF9uQ5TriCc3hAGJzxgWRaORNJc0QJG\nkkUMg32fWAkRw6CpqghymVj424qqIkSicQxZlud2PbH0ONY6hqFJLy6POHMeRyKZIAjiOoFlWZzu\nnMSjv/gQf/PUMQxOXHuiJc6y89KhLRyJYWzKl/FvI5OcaJ2ahd0iEo2hf9yN+CzGdmnAjlicxeku\na8HPmQ0ubwgMAxSpp8VvfTkXFfvOf36I7/znhzjbbYXTs/CRZACoKdXikXu34P/7zJqUxxuy2EAI\nYrHoGuLEcSgSz3kciWSCIIjrhJ4RF55+qQ0jVi9YAN15oihXm0Aoisd+cQo/ebHtil/rN+/149vP\nnMKUa6YQHrZy4tnqCuQV5CzL4qVjffjaT47jH//rNJ55pQOxeO4bKwBEonEMTnBi/FzPwohkbyAC\ntUIKkYgRHqtPlGNzeTlh3D/ugcvHRZIXWiTz72/UKWY8xo+FIBYbty+M0cQCOlO5xGRIJBMEQVwn\n2Fzc9vzODVwprgmbv+Dnun1hoUnEQvHfb3ZjxOrD+Z4pBELRK3qtnhEX4iwLiz1VJIciMUzauXkH\nQjH4grnfp33Qgd++PwAAKC9W4cSlCTz9YlveiPLwpBfRGCemhyxe2N3zb+3w+CPQqqQpj62tN+LO\n7bX480+vAgBM2P1wenmRvHB2i1yUGlVQyiUYmKBIMrH4dA1PBwfCURLJBEEQBLhauQCwssYABsC4\nLbMdIRP/9XonfnjkAoYnC/fXvnNuFIfe6ino2FMdFrzfNgGG4SwX3cNzj3LHWVYYp8OT2sRibMqH\nZHmbKdKcDO+j/bM7VuL//tlWNFfrca5nCj15xtebaKzRWMlFUc/1TM1mCnmJsyx8wQg0ylSRLBGL\ncPdHG3FzSzmUcjEnknm7hXbhI8mZEDEMVlTpMWHzX/HihyCulM5E90mAWzTngkQyQRDEdYI3wIml\nYp0CxUUKjNsLiyQ7vSFcuMxFkVt7CxN7cZbFi8f68Obp4YLE+GsfDEIiZvClT6wEMN1GeS5YnQHh\n5udI6/TG+5ErTGoAwFSe5D3++KoSDRQyCW7bUgVguoNdNnoTf79rZyMA4Pzl+RXJ/mAULIsZIpmH\nYRiUGlSYdPhh93Bz1KsXRyQDQFO1HiyAgWvQB09cX3QOTV9bwmHyJBMEQRAAvH4ukqxRSlFWrILL\nG4Y/j90AAI63TQj2got9hdW7HbZ44Um8Hy+wsxGOxDAy6UNtmRY71pVBIhalRHtmy7BlOtrtTIsk\n85UtNjWZAEyXUcv6WpM+yKQioYJEY2URAKB3NLd1oG/MDY1SilU1etSWatE56JhXy4U3MP1dZqOs\nWIVojEX/uBtKuTil4sTVpqmGKwk3QMl7xCLi8oYwbvOjJHE+UySZIAiCADBtt9CopCgzqgBwntVc\nsCyLY63jkEpEqDCp0TvqKkhYX0pqHnE+T+La0KQXcZZFfZkOMqkYKyp1GJr0wuMP530ffoxTzgBa\ne6cQisQwlGQJcWaJJG9oTIhkV3bhGo3FMW7zocqsgYjhkuMMWjmKdXJcHnVlTfpzeUOYcgXRUKED\nwzC4bWsVYnEWv3mvv6D5FIKw4FHlEMmJ7zgQil2VpL1cNFVzzUWowgWxmPQlfn/rGowAyJNMEARB\nJPD6I2AAqBUSlBdzdoN8VoieERcsdj+2rDRj60ozYnG2ICvEpX5OJJcXq9Az6hIin5noTzS/4Ksg\nrK7jbmB8maaccwpE8OgvPsQ3/u0EnvpVK379di+GEz5ihkn1JLMsixGrDyV6JSrNvN2CiyTHWRZv\nfjiMl9+fFrLjNj9icRZV5tR2yo2VRfAGIlk79vHNPPio8/a1ZagwqfHexfFZ+cBz4UlYZ7TK7Ml4\nvEgGrk5li1yUGJTQKKVktyAWlZFEZRv+3KTqFgRBEAQAwBuMQKWQQCwSobzASHJPokzc1pUlWNdQ\nDABo689tnwhFYugZcaKmRIOPrCsDy+b2Mvcnqh7UJWr8rq7loo7tBYjxX/6hByNWL9bUGaDXyLiu\nb2NuFGlkKNYpUjzJ7QMOeAMR1JRpoZRLoFFKYXUF4faH8eTh8zj0hx68eKxfsEXwUefqkjSRXMFb\nLjL7kgcTIr2+jJuPSMTgT25pAMsCLx6bn2gyv+hQK7M3zk0VyYtT2YInudFJvmRJglgo+MY+fO1u\nslsQBEEQALhIskbFiaXyYk5AjecpA8eLMb1GjoZyHdQKCS722XLWF+4ZdiIaY7G23oiNTWYAwPkc\n1R36xz1QyiUoTYi6ujItZFJR3goSrb1TON42gdoyLf72Tzfgzu11iETj8AYiqC7RwKCVw+0LIxaP\nIxSJ4cDvOyFiGNy5rRYAYNYrYHMF8NPfXMKlAYfQlINPyuP9y1WJqDNPPl/ycAZxvbnZhOoSDc51\nWwu2keSC/15yRZJLDddOJBngPgMAONluWeSRENcro1M+yGVimPVKSMQMNRMhCIIgOKuBNxCBJhF5\n1KllUMolebf/vUk+ZpGIwdp6I+zuEMZyiOsLvVykeW29ERXFKhTrFOgccmasLewPRmCx+1FXphV8\nvxKxCI0VRRid8mW1aYTCMRz4fRfEIgZ/8enVEItEuHl9uZDIVlOihUErB8tyjTVefn8AVmcQn7ih\nGrWJCK+pSIlojLOPbGgsxl9/bh2AafGbXNkimZpSDaQSUdZI8vCkF1qVFLqkTngMw2D72rJ568BX\niCdZLhPDqOPE8bUgkm9YVQKJWITjbRPz0lWRIGZDNBbHhM2PSpMaIoaBXComTzJBEATBJW/F4qwQ\neWQYBuXFKkw6Ajk7yAliTMGJsXX1CctFlsYigVAUx9vGUaSWoblaD4Zh0FzNeXgzNS/hPaq8H5mn\nqYqL1mYrtfa7k4Owu0P45I01QsRWLhXj9huqAQCNFTpBGNrdIfzh7AgMWjk+e3O98BomPdcZTiET\nY98nV6KuTAuxiEmJJBt1cqgVM2sR15dpMWz1zlhkBEJRTLmCqC7RgGGYlL/duLoEwPxEUj1CJDm7\nSAamLRdFi2y3AACVQoqNK4oxbvNjyFJ4vW2CmA8m7FyOQWWi/KNMKiZPMkEQBDFdIzm5ZFhFsRqx\nOCu0T874vGAEYhEDpZwrH8ZnhWcTye9dHEcgFMOtmyshEXO3mKYqrvxXT4Y22Hy1g/qEH5mnqXr6\nOdFYHOe7J4VI9JQrgN+dHEKRRobPfKQ25Xl3bqvFN/duwsYmkyCSL/ROIRSOYUNjcUoZtNpS7j3/\n9GMrYNQpIJOKUVOqxZDFg8EJD1zeMKrTkvZ4br+hBiwL/Ort3pTHRwSLxsznGXUKNFcVoWfYecXl\n4AqJJAMQEjTTW0UvFtvXlgHgygoSxNVkNJG0x5+bcqkYYfIkEwRBEMnl33i2ruL8wu9dHM/6PK8/\nArVSKkRF9Ro5qks06Bp2zojCxONchQipRIRdmyqFx/mocM/IzKjwYCKSXFeWGkluKNdBxDDoGXHh\n1+/04v/+9ATOJmwKLx3rRyQax+5djVDIUhPXRCKG6yjIMDAkOsx92DHJjSMhvKfnX4J/uX97ylgb\nK3WIxVn87JV2AMDN6ysyfi6bm01ortbj/OUpdCSVu8vkR07mpjWlYAGcSoxprniDETAMoJRnT9wD\ngE/dVIO9tzWhsUKX87irRUtjMdQKCU53TZLlgriq8AtYvrKNTCoiTzJBEAQxHXlM3p5fW2+EXiPD\nyfaJrFnenI85NVq5rsGIaIxN6VwFAK29Nky5gti+tgxa1fT2frlJDbVCkjGSPDzphUouEbyzPEq5\nBNWlGvSPufGHMyMAgO5hJ1iWRWuvDQatHNsSUcls8CKZL9XGi3UeEcPAlGgqwLMikZQ3NuVDpUmN\nTYlks3QYhsEXPr4CDIAXjvUJj2eriMGzdVUJxCLmin25Xj/3vYjSLB3pGHUK3La1eob1Y7GQiEVY\nWWOAwxOa0TKcIBYSPpJcSZFkgiAIIplMHdrEIhF2tJQjEIoJUdpk4nEW/mB0hkhez5eCS+u+x3t5\nt60pTXlcxDBorCyC1RlMae4RCscw6QigpnSmfxfgRG0sziIW58Rk75gLE3Y/vIEImqv1eQWiXjst\nvI06OUxFyhxHc/AiGQDu/EhtzveoK9NhZY0efaNu4fMdnvRCLGIEm0M6WpUMG1aYMGL1YtDigd0d\nxKG3enLWkc5EpsXLUoG31iQ3FvEHI3jpWB/c81D5gyAyMTrFJdTyVWzkUjHyLVNJJBMEQVwHeLJ4\nWG9ZXw4AONY6NuM5vmAELGa2Pm6sLIJCJsbFtHrJlkTNZb68XDJCIl6S5WLE6gWLmdUjeJoTXuY1\ndQY0VesxZPEKjUySxWw29EnVJXhfdD6MOgUqTGpUmtW4cVVp3uNX1RjAgotyxxPNSsqKVZBKst9e\nb+Y/8wvj+MVrHXjz9DDOdhde8SIeZ+ELRPIm7V2rNCSSNPuSRPKRt3vx2/cH8Ms/9CzWsIhlTCgS\ng9UZFJL2AE4k54NEMkEQxHVAtrq6JQYVVlQVoWvIOaPd9HT0OdX3KhGLsLrWgElHABbHdMWKCbsf\nSrk4pfQZDy9S3zozIjQwyeff3dhkwu6PNWL/nWuwqs6IWJwVrBfp1olMyKRiqBXc2JsLOJ7n7760\nBX/3pS0QifJbFFYlGp90DDpgdQQQisSyzoenpcGIIo0MR8+PoX2AE/0ub+HWA2Hxolr8ihVzoa5c\nBwbTnRaHLB4cu8At0j64ZBF86gQxX7h93A5FcgKrTJpfApNIJgiCuA4QqltkqIbQXKUHC6Bv3JX2\nHF4kzxRjLWmWi3ichcURQKlBldE60VChQ3O1Ht3DTjzysw9wpssqiOSaEu2M4wFOjH/qploYtHJB\njI7bOCGeqXpEJnhfcqGRZABQKSR5E+J46st1kElE6Bxy4P02LgGyOc97iUUi3NxSjjjLgv+kXL7C\nbQbZFi9LBaVcgnKTGv0THsTjLH75hx6wAD61rQYAcOTty5TUR8wrviB3zqgU0+dMIZHkgs6wu+66\nCxoNd0GqqqrC/fffj29961sQiURoamrCo48+CgA4cuQIDh8+DKlUivvvvx+7du1CKBTCQw89BJvN\nBo1Gg8cffxwGg2HWEyQIgiBmMmH34we/PId4HNCppPjqPeszlvsS7BYZtugbK7nt795Rt1AHGcjs\nY+bhS8Fd7LPh41uqYHMHEY3FUZbBagFwgvcbezfhbJcVP/3tJfzmvX4oZGKIGAYVpszPSWZlrVH4\nd0NFUUFRXgDYsMIElVyCCnNmj/CVIpWIsKKqCO0DDtjdQWiUUmxflzuhEAA+urECH1yawM6NlXjx\n3b45iuSlGUkGOF/y2JQPLx7rQ+eQE+sbi7F71wqMTPpwsc+G7mEnVtaQViDmB19il0yTVPNcNh92\ni3CYO3EPHDiAAwcO4Hvf+x6+//3v48EHH8Szzz6LeDyOt956C1NTUzh48CAOHz6Mn//853jiiScQ\niURw6NAhNDc347nnnsNnP/tZPP3003OdI0EQBJHG+xfHYXeHEInFMTTpzdp8wxvgSoYlR1J4Giv4\nNsvZIskzRbKpSInyYhU6hxyIRGOCH7nMkF3wihgGW1eVYHOzGSNWL3pHXSgvVkEqyX+zKjEohYSb\nQqwWPHd/tBHf+tKWvEl+V8KqhJgLhGK4bWtVQREqU5ES//rlHbhzG5ccmEkku31hPPtGF85fTm3p\n7c2x4Fkq8L7kV08MQiYVYe/tzQCATyeiye9eyF6WkCBmC28lm20kOa9I7uzshN/vx/79+3Hffffh\nwoULaG9vx9atWwEAO3fuxPHjx9Ha2ootW7ZAIpFAo9Ggrq4OnZ2dOHPmDHbu3Ckce+LEiTlNkCAI\ngkiFZVmc7pyETCrCX36Wa6nMR4zT8QYiUCsylwzTqWUo0SvRO+ZOaR2dSyQDnOUiHImje9iF8YRI\nLjXmjwrftrWKGz+y+5HTYRIVMgCgqYCkvasJbwWRS8W4dXPVrJ4rEjHQqqVwe1NF8qUBO779i1P4\nn7OjeCmpxByQ1G0vTyORa5n6pLrN93y0ESWJUnzN1XqUGJQ40zU5wyNPEHPFlzhn1CmR5HnwJCsU\nCuzfvx/PPPMMHnvsMXz9619P8Qqp1Wp4vV74fD5otdO+MpVKJTzOWzX4YwmCIIgrZ9Tqg8URwPqG\nYpQkxKk7y7a9xx/JKaoaK3UIhKIYT2odnU8k85aLC71T05HkAkTyisoiodtdoSIZAD7zkVp8alsN\nmmsK9xdfDerLtdjQWIy7Ptowp+hukVqWEkm2u4P48fMX4QtEoFNJMTLpS2ncku97WQpUmTUo0siw\nutaAW7dMLywYhsHNLeUIR+M41XHl7bsJApj2JKuV8+xJrqurQ21trfBvvV6P9vb26Tf2+aDT6aDR\naFIEcPLjPp9PeCxZSOfCbC7suKXMcpzjcpxTOst5jst5bjzLaY5vnh0FANx6Q63QgjkcZ2fMkat3\nHEFNmTbr/DesLMWJSxZMukPYuJrz1MZYLupcU6WHOUOi3A69Cj97uQMn2ydRXcr9fW1zSUFJb1/6\n9Go88dwZ3LKluuDv5IaWStzQUpn/wEXgn75885yfazaoMGTxIhCKwmzW4he/60QoEsPf/OlGjEx6\n8eI7l+EIRNFSyS0OgokuYdUVRUvq95w+1p/93e2QSkRC+3KeP961Ai8d68MHHRbs/sSqqznEK2Yp\nfR+zZSnPjWW431hl2fQ5YzLmz1PIeyV7/vnn0d3djUcffRQWiwVerxc7duzAqVOncOONN+Ldd9/F\ntm3b0NLSgieffBLhcBihUAh9fX1oamrCpk2bcPToUbS0tODo0aOCTSMfVuvyLgFjNmuX3RyX45zS\nWc5zXM5Zl6RMAAAgAElEQVRz41luc3z37AgkYhFqzSoUJUTypM03Y47eQARxFpBLRFnnX5roeHe+\n04JNiQix1c4FOMKBcNbn7dxQjldPDKK93w69RgavO4BC9gsbSzX4yd/uBMMwBX0ny+27S0aZiGg5\nPEGcarXhvQtjaKjQYUO9AfEIZzk4fWkcZUVysCyLExfHoZCJoZWJl8xnMtvvb219MS722dDWbUFp\nDp/7tcRy/o0u9blNORLXsuD0tSwcyt/AJ69Ivueee/Dwww9j7969EIlEePzxx6HX6/H3f//3iEQi\naGxsxB133AGGYbBv3z7s3bsXLMviwQcfhEwmw549e/DNb34Te/fuhUwmwxNPPHGFUyUIgiDs7iBG\np3zYuMIEpVwitCjO5En2B2f68dKpKlFDLhWjO6nZh49P9ssRGf7Ypkr87oMhxFm2IKtFMtdKq+TF\npkjDJSQ63CG8fnIIAPClTzQLnQqB6aTKQYsHNncQ29aU5mxYstTZ3GzCxT4bWi/bcPsNKpzttsJU\npEBN6dKNZhKLB1/dIsWTXEDCcF6RLJVK8YMf/GDG4wcPHpzx2O7du7F79+6UxxQKBX70ox/lHQhB\nEARROHxDDt7TKxIx0KqkGdv6BhN+VoUs+01BLOIahJy/PIVJhx8lBhU8fLJfjnJrRp0CW1eZcapj\nctYimeDgm684PSEMWTwwFSlQV8Yltuk1cpiKFOgdc4NlWZxJtA/fstK8aOO9GqxvNAHowoXeKaxr\nMOLHL1zEymo9vvnFzYs9NGKBaeuzobxYjeKimaUs5wqfuJda3YKaiRAEQSxLrM4AAMCcqAoAcGLL\nk0EkhyKcSJbnEMkAsL6Rq5F8MdEgxBeIQF1ActgdN9VALhVjdZ0x77HETPjSdv1jLrj9kRmNUhor\ni+ANRDDpCOB0lxUyqQjrGoozvdSywaCVo7ZUi64hJ149MQgAsLmDizwqYqGxOPz44ZELePy5MylJ\nyJdHXPjvt7oRi8fn9Lr+YBRymTjF/y7Lcz0ESCQTBEEsSaZcnGAw66ejLTqVFIFQDJFoLOVYvjJC\nvmxuvotea68NLMvCG4hCW4BIrivT4Sd/uxM3rCqZ1RwIDl4kn+/mosRVaRU/GhPl0g78vgsWux/r\nG4oLysxf6qxvLEYszuJ42wQAwOEJpZQoJJYffAdPmzuEH794EZFoHPE4i2de68Bbp0fQPz43X7Qv\nGBVa1PPMS51kgiAI4tojUyRZmxBb6b7kQiPJxUUKVJrV6BxywOULI86yBZcZK7QDHjETPumyZ9gB\nYGZZvNV1RjAAOga5vxfS0W85sGGFSfi3iGEQi7NCIxViedLWZwMArKkz4PKICwd/34VTHRahxORE\nUonK2eALRqCSp17LCum4tzQbvxMEQVznWJ1BSMSMUPoNAHQqTiS7/eGU1tSCJ7mAm8L6hmL87uSQ\n4H1NritKLAx8JDmeCJJWpbXQrjSp8fj92xEMx6CSS+bVq3ktU1euRZFaBn8oii0rzfjgkgUOT0jw\ncBPLi0g0js4hJ8qMKnz17vV4/LmzeO/iOD7smhSO4XMxZkMsHkcwHINGSZFkgiCI6wKrM4DiImVK\nBJdvFpLeUKTQSDIw7Uvmu7xplSRIFhqFTAxZolKFVCJCiUE54xizXonqEs11I5ABLnr8N3evx4N/\nukGIrts9M33JHYMO/Oqdy4jG5uZXJa4NLo84EYrEsK7eCJlUjL+5ez2KNDKEwjHhujQXkTzdkjo1\nkkyJewRBEMuQQCgKbyACc5pgEiLJvjS7RYGeZABoqtLjY5srEUkIDnMGwUbMLwzDCNHRCpMaYhHd\nmnkaKnRYWWOAIbFj4vSEZhzz8vv9+N0HQ3jm1Q7yLC9h2vo5PzLfydOgleNvd2/AzS3l+LM7VkEp\nF2Pc5pv16/oEkZwaSSa7BUEQxDJkOmkvVcBOe5JTI8mFlIDjEYkY7PvESvzpx1ZgxOoV2kcTC4te\nI8eUK4jqDJ0NCU4wAYA9TSSzLItBC9e+5mS7BcU6Be7Z1XjVx0dcOZf67ZCIRVhZbRAeqynV4i/u\nXA2Aa3k/ZPEiFo/PaiHJt6TWpEWSRQyTt9Y4LVcJgiCWGJmS9oBpb2t6reTZ2C145FIxGiuKZrQM\nJhYG/rtL9yMTHIaEx96RJpKtriACoSjW1Rth0Mrx1plhsBRNXnLEWRajUz5Ul6izXqfKjCrE4qwQ\nJCgUf5ZIMpB/d42ufgRBEEsMXiSb0uwW057kLNUtroOyYUsVvuteevk3gsPAdyVME8lDE1xJsNW1\nBjRWFiEcicPpnVkrnLi28QYiiMVZGLTZPfdlxdwCcrYVLvhGIplqvufzJZPdgiAI4hqBZVn8z9lR\nFOsU2LCiOGvb5ilnFruFKrPdYjaeZGJxuHVzFcxGNVbW6Bd7KNckUokYGqV0pkie5ERyTakW/hAX\nMbTY/YI9g1ga8F5zvSZ7onB5oqPnhN2PDbN47emW1DMlbz5fMolkgiCIa4TeUTeee7MbAFBbqsVX\n/mQdTPqZiXNWV2a7hVwqhlwmnmG3mI0nmVgcKkxqbFhdBqt1bs0SrgeMWjksjgAGJtx48sgF/OVn\n1mBwgvMj15RqBAE94fBjVa0h10sR1xh89D+5pGU6ZUkieTb4gzNbUvPkE8lktyAIgrhGuJgopF9b\npsWgxYNXTgxkPM7qDECtkGS86OtU0qwl4ArJ5iaIaxW9Vo5QJIbffTAEjz+CX7/TiyGLB0adHFqV\nDKVGbtE4aQ8s8kiJ2eL0cgucXDsAJQYlGMzBbiFEkjPZLUgkEwRBLAna+m0Qixg89IWN0GtkON1p\nRSSaWvt1yOLBpCOA0kRUJR2dSgaPP5KSvBSKxCARiygJj1jSGBMC6nSiucTQpBcuX1iowFJq4M4J\ni2NuXdmIxWPabpFdJMukYhQXKTA+y0gyX90ik92CRDJx1ekeduKhp49jbGr29QwJ4nrF4w9jYNyD\nFZVFUCmk2LamDP5QFK29NuGYSDSGn73cjlicxR/vqMv4OlqVDLE4K/gzAc6TXEjhfIK4luGjjCwL\nrErybtckRLJWJYVSLobFcf1Fkpd6IxU+kpzLkwxwtiS3LwyXr/DkzGzNRID8iXt01VxmWJ0B/Ofv\nOhEMR/MfvEBc6rfD5g7iVIdl0cZAEItJJBrDibYJ/PDwefz+1FBBz7k0YAeL6UL629aWAgA+aJ8A\nwLVWPfhGN0anfLh1cyXWN5oyvg7fRprfYgQ4TzL5kYmljj5pK/5ztzRgQ6ILGx9JZhgGJQYVJh2B\nvE1F3r0whjcKPDevdY6eH8WXf3gU7QP2xR7KnBE8yXkSLhsqdACAvjFXwa/tC0TAAFDJyZN83XOy\n3YJ3L4yhrW9+ThaL3Y9vP3MKHbM4+fjkifZBx7yMgSCWGj95sQ0/e6Udbf12vHJ8APF4/rqt/Dm7\nrp678VeXaFBhUuPCZRuOtY7hqV+14r3WcVSZNdj9sRVZX0easFTEkiJLoUgMchnlaRNLG2OiPJhe\nI8OKqiLs++RK3LWzAS2NRuGYUoMS0Vgcdnf2WrouXxjPvtGFI2/3IhBavIDSfOANcN7saIzFgde7\nEE7kHyw1HN4QpBJRRiGbzLRIdhf82r5QFEq5BCLRzGpBmfI6kiGRvMzgt1g9gUieIwvjt+8PYMTq\nxcmOyYKf4/BwF6f+MfeiRrQJYrEYGHdDr5FhU5MJvmAU/RO5L+gsy+JSvx06tQzVpVydXIZhsKOl\nDNFYHP/xWicu9duxvrEY3/ri5pw+OnFCJEdjqZ5kKv9GLHUqTGpIxCLcvL4CIoaBUafAZz5Sl9J9\nbdqXnN1y8fbZEURjLOIsi97RwiOSs8UfjOKJw+dntasaZ1kMWTwFt9d+6VgffMEoyowqTDoDePn4\nwBxHu7g4vSHoNbKsZS95GsrnIJIDkaxi+BM3VOd8LonkZQa/KvbMwq+TjSlXACfbuZN70FJ4WSK+\nbWgszqJ72HnF4yCIpUQoEoPbH0F5sRrb15YBQN6dnQm7Hy5fGKtq9BAl3SQ+cUM1vrFnE+771Cr8\nrz9ag6/evT5v5EMqiGQukhyLxxGJxsmTTCx5DFo5nvjKR/C5m+uzHjNd4SJzclckGsPb50aF/+9a\nwHvU2+dGcKnfjtc+GCzo+ClXAD84dA6P/ceHOJo0xmxY7H68c24MpUYV/v7eLSjWKfD6ySFYZpnY\nttjE4nG4fWEYciTt8agUUpQZVegfdxe0QwcA4Ug8q93MVDSzxGYydNVcZggi2X/lkeQ3Tg0jzrIQ\nixiMWr0FJwY4vSHhRt8+QJYLYnlgcwULqs/Jb/MWFymwps4AEcOgrX86+S4ai+NyWvSqZ4T7/5XV\nqY0kxCIRVtUasHNDBbatLcu4XZiOWMwI7wMAoTD3XwXZLYhlgFYly3ke5Iskf3DJAo8/go9troSI\nYdA1tDAiORSJ4Y0PhwEAQxav0CUzG95ABP/wn6fRmRjPxQIsk+0DdsRZFp+6qQYqhRSfv3UFYnEW\nLx7ru/IJJPH6ySHsfvgVHHyjC7ZZtoQuBLcvApbN70fmaazQIRiOYdxWWHGASCw+58o+JJKXASOT\nXqGjFp/Fmd5MYLYEQlG8e2EMxTo5tq8rQzTGYtSa/wcZCEURCMXQXF0EiViEjgX0Jf/2vX788Mj5\ngrelCOJKeOrXF/D4s2fyRi/4m4ipSAGVQoqGCh36xtxCGaK3To/gewfPoGto+tzgb9RN1VfebU2S\nZrcQWlJT4h5xHcCXRmwfcMzoPAkAJy5xibB3bqtFbZkG/eNu4RzJxYjVi9+8149LBebnHLswBo8/\nglIDF6k8123NeXzHoAPeQAS3b62GWa9A97Az772N3+GtT1gQtqw0o7ZMi1Mdkxiaxe5vPs73WBEM\nx/D22VE8/tzZeb/nTle2KEwkz8aXzLIsotE4pJIFFMk2mw27du1Cf38/Ojs78fnPfx5f/OIX8cgj\njwjHHDlyBHfffTe+8IUv4J133gEAhEIhfPWrX8UXv/hF/NVf/RUcjsWPKk45Ayn1Q5cyU64AfvzC\nRXz7F6fw66O9AJIjyTMvDoFQFP966Bzevzie97UHJzwIR+O4YXUpGhM/yEIsF3zSXolBhaaqIgxP\nemc0NpgvTndNoq3PjvFZFhYniNlidQYwavXB7Y/kLW04xUeSdVyS0bp6I1gW6EjsqvAWpIGJ6fOp\nZ8QJtUKCCpP6iscqSYsk83kB5Ekmrgc0Sim2rDRjxOrFo784heFJr/C3cCSGy6Nu1JRoYNQpsLLa\ngFg8vy/5v17vxLefOYXfvNePg6935R0Dy7J448NhyCQifOWuFjAAzuQRyZ2JgNINq0vQXK2HPxTN\nG5ganPBCIhahvJhbGDAMg7s/2gAA+PXR3nnROizLYtjqRaVZjY0rTLC5g3mj4rOlkBrJyTRUFAEA\n+sbzi+RYnAULLFwkORqN4tFHH4VCwV3wf/zjH+OBBx7Ac889h1AohHfeeQdTU1M4ePAgDh8+jJ//\n/Od44oknEIlEcOjQITQ3N+O5557DZz/7WTz99NNzGuR80TXkwDf+7QROzSIJ7Vpl3ObDd/7jQ5xN\nnHj8Fq8/h93i6PkxdAw6ChLJ/IWlpkSDujJOJCff1LPBi2SjVo6WBi5L/1xP7ovDXOHfq4d8z8QC\n09Y/HT1Kt0qkkxxJBoC1iZJubf02sCwrXNh5sW13BzHlCqKpKtWPPFckaZ7kcIS3W5BIJq4P/vpz\n6/AnOxvg9IbxuyQ/cM+oC9FYHKvruJbVzYmdm1yWiylnAO+eH0OpQYnaUi0mnYG8lgNvIIIpVxBr\n6oyoMmuwoqoIl0dcOWv7dg45IJeKUVemFcaVK6cnGotjdMqLKrM6RQCurTNida0BbX12HG+byDnO\nQphyBREIxdBQqUdTNSdOhy3ePM+aHYXWSOapNKshlYjQX4BI5q+DCxZJ/ud//mfs2bMHJSUlAIA1\na9bA4XCAZVn4fD5IJBK0trZiy5YtkEgk0Gg0qKurQ2dnJ86cOYOdO3cCAHbu3IkTJ07MaZDzBX9z\nuzyycNmsVwOXN4Qnj1yALxjFno83gWG4kxKYjiSn2y0i0Tje+JCrCTlk8eZdYfIimS9DJRYxGMyT\noQ9MC1eDVo6tK80AgNNd8y+Sw5GYUAe2e4RE8nJhwu7H3//8JAYLWJDN6fVtPrzwbt+sq6609U17\ninvyXD/4GygfSa4v00GtkKAtUT+c31kZS/jp+Bth8zxYLYBpkRxL2C34uVJLauJ6QcQw+Mz2Wijl\nkpQdUL6O8Jo6buHaXF0EBrnF6Lut42AB3Lm9Dh9ZxyXitg/mtlxMJiKtJQmrxZZmM1hwtoVMuLwh\njNv8aKribIp8bkKupMKxKR+iMRa1ZdqUxxmGwZ9/ahWUcjGefbMbk1fYfZDXAvUVOlSbNSmP5aJ/\n3I1THZaCotmOWdotJGIRDFq5UFs5F7ztbEEiyS+88AKKi4uxY8cOsCwLlmVRW1uL7373u7jzzjth\nt9tx4403wuv1Qqud/qJUKhW8Xi98Ph80Gu5DVavV8Hrnd/UxW/h+3+P2pd0J7sDvuzDlCuJzN9fj\n9huqoVZIBcEYCHHeKm8gkuKd/ODSBJzeMBiGizbnWwkPT3LbOGXFKkglIlSZNRie9OVN3uPLvxm0\ncpj0StSVadEx4BBE/HzBrzwBiiQvJ1ovT2Fsypd3a3KuvPDOZbxyfAAvvttf8HOisTg6Bh0o0Suh\nVkjybs1OuYMQMQwMOu6CLxIxWFtvhN0dwvGL05GdsSk/WJZFd0J081GaK4W3W0T4xL2E35IiycT1\nBMMwqC3VYMLmFxaKHQMOiEUMmqs4EapSSFFdokHvmBuR6Exfciwex3utY1DKxbhhVYkQge7Mk2sz\n6UgVyetXcI1/LmVJZOfF8Kpa7vXNeiX0Ghm6h51ZRSYv/vlGKsmY9Ep86faVCIVjOPw/l3OONR+8\nt7m+ogjVJZyeG7Hm13LPvtGNf/vNJTz9UpuQK5UNp4cTu4YCE/cAQKeSweuP5PVHR6LcdZC/Ls6W\nnOnOL7zwAhiGwfvvv4+uri5885vfREdHB37zm9+gsbERzz33HB5//HHccsstKQLY5/NBp9NBo9HA\n5/MJjyUL6XyYzYUfWyhTiSinxREo+PUnbD68eWoIn7+ted4jMXOdY9+4G2XFKvzF51rAMAyKNDL4\ng1EYjWrhhsiygEItR1FiZfbW2VFIxAw+ua0Or77fD2cwitVZ3j8Wi2PM5kNtuRZlpdyNe1W9EYMW\nD4JxoL4s+7gDUe4H21BrhNmsxa4t1fjPV9txedyD22+qndN8M2FxT4tkmzsEVixGSSJhY6FZiN/m\ntcJiz82RsAnZPKEFGUtbosXzH84M485bGtBYlT9629Y7hWA4httuKMOE3Y/THRZIFFIYEo0N0nF6\nQijWK4RzBwC2r6/AqY5JvHVmBACXxe30hCCWS9Ez4oJcJsbWdRVzjnbwmM1aGPTceaBSyWA2ayEb\n5XaATAbVon+/V8pSH38hLOc5Xu25raovRueQE55wHAaDHIMWD9bUF6Oqcvq837iyBEPH+mD3R7Gu\nMfV6cCoRXPrUR+pQValHZUUR9Bo5uoadMJk0GWv6ms1a+MJjAICmumKYzVqYTBqY9Ep0DTlRXKyZ\nUZ1j4ChXjWLb+grhM1q/wox3z48iDAZVGT43q4u7B25YVZrxc/2jXRoceecyJp3BK/rcJxMBtYbK\nIhh1Cug1coza/Hlfk/ctn+myYnjSi6/csxGbV3GOhLEpL577XSf+6q710Kll8CcKDzTWFUOZp5kI\nj8mgxOVRF5RqBXTq7DaNWKKGtlYjn9PnkHM0zz77rPDve++9F9/5znfwla98RYgOl5aW4ty5c2hp\nacGTTz6JcDiMUCiEvr4+NDU1YdOmTTh69ChaWlpw9OhRbN26teCBWa3zu93KsixGEisimyuIoRFH\n3i+DZVn8y3Nn0TPigk4hxkfWlc/beMxm7Zzm6AtG4PKGUVuqxdQUtzBRSMWYsPkxNJoaUe0fdqDS\npIbDE8KwxYMNjcVortThVQBtPVasyCJ2R61eRKJxlBtUwhhNiRXexe5JaLLUWzWbtRibTMwpEoPV\n6sGqRHTs7dPD2NhgzPg8ADjeNo5Db/UgFImh0qTB3+3bDKkk+6Kkf4RbkZfolZh0BvDBhVFsT2yF\nLSRz/d6WAtfC3AYSUdqBMde8j8XtD2PY4oFBK4fDE8KPfnkOj9y7Ja8P+L1znLBtKNdCKmZwugM4\n1TqGzc3mGcdGY3HY3EE0VRaljL8mkZDnTbRHvXFVCd74cBh/ODmIUasXG1eY4LjCHS7++/P7uZun\nwxmA1eqBNXGdiISji/79XgnXwu9zoVnOc1yMuZkTuzkXOi0YGnWBZYGmCl3KOKoT5+bJi2Mo1aVG\nMl97nxOvNzabhec0VxfhVMckLnZZUF6cmmjLz7E/YQGUM6zwvFXVerx3cRxnL40jGoujfdCBO7fX\nQsQwONc1CblMjCKFWDi+poR77VOtY5BvqMDghAf+YASrE1aRzgE7RAwDtYTJ+rkqZBJ4fKEr+twv\nDzuhVUlh0MphtXpQaVLh0oADg8OOrDXb/cEIvIEI1tYb0VCuw6snBvHoz05gz21NuH1rNX79Vg/e\nPT+KpkoddrSUw2LzQSmXwOsOoFC/gTzhMe4fsudMeLYkcj9iCU2SiVziedZhi3/6p3/C//k//wf7\n9u3DoUOH8OCDD8JkMmHfvn3Yu3cv7rvvPjz44IOQyWTYs2cPenp6sHfvXvzqV7/CAw88MNu3mzc8\ngYhgSQBQUEWEDzsnBf9hcuJOPnhrykLAW0bKkqKmaqUUsTgrZIjy8A1F+DIpjZVFqElszQzlMN4n\n+5F5+DI21hxdjAAuiiaXiqGUcwK3RK9ETYkG7QP2nO0yz3RZ4QtGoddwq/03T4/keR9ubjeu4Vam\ns/UlW+z+vFtAxNVnPFGHeNIRKLgud6F0J5Jzdm2qxNaVZvSPuwvqtsVvazZX6bGiklv0ZctrcHhC\nYFmuRnIyBq0clWbuQl5hUgsljH5/issT2LCieA4zyowkETlJt1tQdQvieoO3IgxaPELXu7X1qcGa\n5kQgJz15LxKNo63fjhKDEjWl0/dC3s+cqwfApNMPsYhJuQ6sSVg1Wvts+OlvL+HFd/vQ2mtD/7gb\nFrsfa+uMKZ0DhWtN4hr1/37Thh8euQCHJ4R4nMXwpBflJlXOHW61QgJfMDpnPeIPRjHlCqK6ZDpq\nXl3Cfaa5LBdWJxd9LjOo8Cc7G/Dt+7ZCJhXhnUSDlK5h7rPjG4/ZPUEYdYVbLQCuXjaQuZJXMvx9\nZK67dAVXlz9w4AAAoL6+HocOHZrx9927d2P37t0pjykUCvzoRz+a08DmG15c8j+acZtPuFFlIhSJ\n4cjblyERM5BLxbjUzxXtLiT7/IV3+/DBpQn8w/6bCt46KBS+mUGKSE6s5qwuTsCKRQxicVZoTd03\nxp1kjRU6FKllKFLLMDSZfWUpVLZIujCYeZGcp/SL3ROCQStP2YZqrtFjaNKLgQlP1uSkSWcACpkY\nj/75DXj4px/gleMD2NFSjqIs2yh8guCGRhPePD2C1l4bogUWDHf5wvj2L05hU5MJ9392Xd7jiauD\nPxgRktpicRaTjsC8lETj4W+CK6v1qC/X4nSXFafaJ9GUsFx4AxE8+otTuHN7LW7dXCU8b8oZhEYp\nhUohQUO5DmIRg9Y+G+75WOOM68GUa7qRSDot9cUYtfpQX65DRSICxXsX1zea5m2eEklq4h7VSSau\nV8qMKsikIrQPOOD2hVFlVs+472tVMlSa1OhNVL7g7yFdQw6EwjFs3GBKuZ/xYvdUhwUf31KFTFgd\nARTrFCmid3XCb/zq8QGEEz7Zt04PC13mdm2qSHmNSrMacpkYl0ddmHQGhGvF0fOjqC/XIRSJob4s\nu4YBAJVCglicRTgSn9P5zwvhmpLpSCsfPBue9Ga9n/M6waznroM1pVqsrjHgQq8NQxaPUB3D7g4K\nvRWMWexr2dCqpAAAd57GaYIneSHrJC8HeHHJ34zyRZJPtE3A7g7h9huqsbHJBI8/UlDZk0mHH6+f\nHILNHSooQ79z0IFnXmnHobd68hYbT55HaVokGeBu5gBn2gcgCI6+MTcYAHWJguM1pVrY3aGsyXS8\nSK5KiiQX6xRgmOms3UyEIzF4A5EZ5nt+RZyt8HecZWF1BFBiUEKtkOKzN9cjGI7ht+9lT67is2GL\nixS4ZX05HJ4Qjl0Yy3p8Mu39di5K0GcvuK0lsfDwUWT+JlVoN6VC6Rp2QCYVo75ch9W1BmiUUnzY\naUEszl1Eu4edcHhCaO2drmQRZ1lMuYKC6JXLxLhxdQnGpny4cHlqxntMl3+b2er0xjUlEIsYbGwy\nodSoAn/frSnVzCphJR8z6yRTJJm4PhGJGNSUaOHwhBCLs7h1S1VGH3FzjR7haBw9Iy6MWLnqT+cT\n5/eGFakLWFOREusajOgZcWW8xwdCUbj9ESFpj6dIw+0mhaNci+S6Mi3aBxz4oN2CUqNKiFDziEUi\nNJTrMG7z43TndNnad86N4vD/XAbDcG3rc6FWcNqAb2Q0WzLtKieL5GzwATuzfvozWJcoCfvCu33g\n77p2d0goXzvbSLLuKkWSrzuRvLmZF8m5b8DH2ybAALhtSzXW1XNfbnJr2Wy8dKwfsYTwGspTJsXh\nCeEnL17E+20TePP0MJ5+qQ0ubyjncywZIsmaxInAr954a4THH0YsHkf/hBsVZrUQ1eYjxKe7JjGV\nJHr9wQhefr8f3SNOFOvkwgkGcD+wYp0ip0jmBYIx7YbPr9x7xzJvUbu8YYSjcZQk2ol+dGMFtCpp\nilhJx+nhWl/rVDLcub0OMqkILx8fyGnp4OE7JvlD0YIapBBXB363Z11iOzRf047Z4A1EMGL1YVWt\nAVKJCGKRCDesKoHbHxEizHwd8OR2ti5vGNFYHOakyPCnt9cBAF45PjhjG9OW1kgkmboyHf7t6x/F\n5ouPTzAAACAASURBVGYzpBKR8HvfMI9RZGDabjHdlpqqWxDXL3yJNKVcgu1rMuet8CXX/vXQOXz7\nmVM48PsuXLg8BaVcgqaqmVVnbtvCidO3zgzP+Js1rfxbMmtquWvbHTfW4M7EdSQWZ3HrpsqMu9R8\ngOmNhC1r4woT3P4IJux+7NpYmRLIygTvGZ6rtZDXSck7emXFKkjEDAZy1Ci2pgXsAKAlkZOUfF+3\nu4OwJZLwjRmumbnQ8ZHkPM3KIgtdJ3m5wN+Am6r1UCskGMsRSbY4/Lg86sLqOgMMWjnW1hvBAGjL\n00t9yOLBB+0WISo0nEOAsSyL/3itA75gFLt3NeJzt9QjFmdxrDV3o48Jux9ymTil6DYfSZ4WydzN\n1+OPYNTqQzgSF7rmAdM+rQOvd+Eb/3ZC8Dw982oHXjzWD7FIhLt2Ns54b7NeCZc3nLGFZygSw0tH\nuVIzhrQVYbFOgSK1DL2jrozeKL6OIy/uJWIRSgzKxOo/sy/V4QmhSCODSMSgSC3DbVuq4fSG8XbC\n85QNlmVT2ormK+WTiUKEODF7+IXspubCdntmA+895qMZAHDjas7PznsVBxJ1wKecAeF3N5WIiCRf\n7CtNamxp5jzN7Wm/H/6mksluASBl+7UyceNZP49+ZGB6W3FGW2qKJBPXIXUJkXxzS3lWy8HaeiNK\nDUpUl2hQalTh6Pkx2NwhtDQYM0Yg1zUYUWpU4WS7ZYZIE8q/6WeK5E9vq8HujzXijptqsKnJBLNe\nAblMjB0tmcX7ioRAd/sjMOrk2Hsb1xdBKZfgc7fU5527KhEYm2skmQ/KJQt+vo7z0KQ3JciWDK9F\nTEnXwRKDSvhMJGIGpQYl7J4g7J7MwbV8aNV8JDn33KKJiltSiiTnZsLuh1ohgVYpRVmxCtYciUEn\nEl1q+MLhGqUUdeVaXB515WxC8PpJbrV37ydXQiYVYTCHPePouVG09duxrsGIO26qwW1bqiGTinD0\n/FhWC0CcZWFxBFBmUKVsGfGeZN4PWWqcjiTzFge+jSMAbGwy4e6PNmBLIju/LyFeu4acMBUp8IMv\nfyRjpQj+REk/MaKxOL574DReOz4As16Bm9eneqsYhkFjZRGc3rDgJU7GkuGiUqxTIM6ycGUoFh5n\nWTi9oZQt6jtuqoFcKsZbp4dzWihGp3xwecOCP6xjliL5XNck/vqJo0u+Ic21yLgQSS6GTCIqOJIc\nicbydsHjf3flSRGRpmo99BoZznRZEYnGMTDOLWpjcVbYFeHPKXOa6L1jWw2A6WsFwN0YznRZUWpU\nZbxBpvO5W+qx7xPNaCjP7SucLel2C/IkE9czN60pxRdvb84pKtUKKb7/V9vxnb+4Ed/64mbh/N24\nIvMuj4hh8PHNlYjGWHzYmdrB1+LgheXMkqRFGjk+dVMtZFIxRCIGD31hE/5+3xaoknZtk0kObq2p\nNcKkV+LLn2vB/75nvZC4lgt+N3iukeQJux96jWxGbtXWRCm3bI3CppwBaFXSGc9bl4gmN1QUodSo\nQiAUw1ii9fbsI8nc/NMbp6UzbbeYW53k60IkR2NxWJ0BlBVz4rK8WC0IznRYlsWJSxOQSUUpJZ5W\nVOoRi7NZe6m7vCF82DmJCpMa6xuLUW3WYNzmE0zj6VxKdPC6a2cDGIaBSiHBtjWlsLmDWStp2N1B\nRKJxQQTzCJFkPupVpAQDbvU5LZKnTzaJWIQ7t9cJF43RKR9cvjD8oShqSrVZkw35C0e65WLC7seI\n1YdNzWb8w/6bMgqERsFyMXOLhl95J/us+UjcVIamJ15/BLE4m9KdR6OUYvu6MtjcoZw2jfbEZ7t9\nbRkqTGp0jzhnVUWhc9ABFtPZucT8MWH3QynndknKilUYt/sL8oy/8eEwvnfwTM6FC38hLUr6zYgY\nBjeuLoUvGMW7F8ZSPPr8tYFfEJrSftP1ZTrIJCKMJFmqXjk+gFicxR/vqJtRBzUTVWYNPrY5s0fy\nSuDtFtMd9yiSTFy/SMQifHxLVcFJ9EVqGb6xdxM+f+sKQQxmYmUNF2gZTSS3RWNxTDr8wrXDnMFu\nkY5Jr0SlObtlQqWQCjtOfMLglpXmgrtz8nYL3xxEcjgSg80dSrF28mxuNkPEMPiwcxKjUz58/9kz\nQtfCeJzL4zBn0AEbm7hFx9p6oxA57kkEOGbrSdYopWAwXcUrG5S4VwDDk17E4qzwZfM/utEMJUzO\nX56C1RnEluYSKGTTJ1VVonzTaJbo1tELY4jFWXx8cyUYhkF1qRaxOJs1GjZs8YABhCx3APjoxkoA\nwLtZEtAsdu7kS//RahIiORzhfgxqpQRqpRQ2VxAXeqegkktS3oen1KiCWMRgzOYTxllhyt6Qg//R\np5eB46N0axuLs96IeZHePmCHxeFPWTxMOmZu6fCeTt7jmen9DGktLD+2ifv8/ufsCOJxVkgISKYt\nYbVYW2/E6hoDwpF41oRCHpsrKOwg2BILEf67IOaHWDwOi92PMqMaDMOgoliNSDSe0wPPw3uJe3KU\nAfT4OAGsT9vSu2lNKQDgt+9zSaI1CY8fv81oFRLxUqMcIhGDcpMaYzY/YnHu5vj+xQmUF6tw0+rS\nvGNeSMTpHfdIJBPErDDqFPjkjTU5k73KjEowDATr5pG3L2P/P72J91rHwQAo0c8uMpqNjU0mqOQS\nrKnP3mcgG/wusz80e5HMi/1MIlmrkmFVrR7942788PB59Iy4BN3CJ0lmEsnr6ovxrS9uxh031giR\nY74gwmztFiIRA41K+v+3d+eBUZVX/8C/d/aZTCYJ2SGQsIRVUHYUTVFRcUFUQEMwuLZoF+gLtUDV\nUrEu6BuXtsKL0lpZZKnGirbVX1FBQTZxYTMgJLIECNkgmclk1vv7Y+bezExmJpMEsky+n3+EkMDz\nmMydc889zzlyF69Q5JpklluE9ol3ytWoAZ67wl4+vRN9udxuvLPlGAQBuPVK/+lw0t1esN6ATpcb\nW74phV6rlMsUpMNxJ0LUJZ86V4ukeJ1fj8Pe6SakdjPg4I9VQbObwdq/AQ0vBIlBq4IpRoPKmnrU\n1jkwcVRG0MyWVPt7uqJODv6DBdOS5BCZZCloDfaikGSlm6AQBGz99jQWrdiJuX/6Ais2HUR1rQ3n\nqq3QqBV+7d6kILmqph52hwvrNv8gBy7ynPdY/8dNPVOMyM6Iw4GSKjyxchd+s+xLv/rj6lobio5X\nIyM5BgmxWnkE6MEwPbAt9Q488dddeHvzDwAaMovSIzW6OM5VW/1uZKXDMq+9tx/f/lCB59fsxZ/f\n3Re0pl26wQt3CDNYJhnw1Csmx+vkujYpaG6USQ5SY5yRHAOny42yKiu+2HcGblHEbVdFlkW+lKQ3\nA5fU3cLhgkataPd1EUUTtUqJ5Di9fA7h++PVUCkVSE80YPSglLDDsJrjzmv6oOAX4+XyguYwyOUW\nza9JDtYkwJcUT0nv/0UnqiGKYqP2b4H694yHWqWQM8duUUSsQd2i/18mg6bJg3tOHtwLr7rWhl2H\nypCeaMDQvp4DMg0BrH/Au33/WZyprMM1w7o36s8qZViDlVt8+nUpzpvtuOqydDn7LPUVDNbhwmz1\nTM0LnNYDeB6p2OwulAQ5OSoPEkkMCJL1/vVMeq2n9hrwBNA3ju7V6O9q2FcMrDYnvvc2Rg/Xl1bK\n9AYGyVLGNjFI2yuJVq1E7vX9MHZwKq66LA1GvRq7DpVh9ceHUXbeipR4/zprqdyi8kI9vj1agf9+\ndRL/2XUcAOShKcHaZl07wpNNlm4o9h1tKL34f3tOwOkS5d6Wg7MSoFIKcqufYI6VXoDN7sKJsw3T\nGgEELdUJVHHeijf//X2TL2Jq6GEsPXH4yfAeuH5EBkrLLfjTu/tw5NQFfPNDRaNyHc8jTs/34scw\nLRelNkGB40sFb8mFRPq1dBNUcaEecUZN0At4hs+N8+ET56EQhJA1jG1J6Q2Snd5SFbvDxSwy0SWQ\nnmhAbZ0DVTX1OF1hQXbPeDzz03EXtf++QiG0+DxBTCvKLc4EaTfra8SAZBi0KowemIKR/ZNRVWND\n+Xmrz6G98OUmvh2AmluPLIk1qGGpd4YtmXQ6u2gLuBqLHY+/sRPbmugG8cneU3C5Rdw4uqfcYiVG\np0ZSnA4nymrlzJRbFPH+thJoVApMubpxgb9Oo0JSnK5Ricbxs7V4Z8tRxBrUftnnjOQYCELwTHJD\naUOQIFk6UBZkmk/RyWqoVYpG2V69VgXfska9ViWf/LxpTK+QoyOBhszxgZIqCELou0bp7zXq1XJ7\nF4k0NSewbjPQxFE9Mfv2IXj4tsFY+siV6JcRh2+PVsBmd8mdLSTSC6iipl7OEB4s8dyphiq3AICx\ng1Lx8zsuw9MPj4VKKciP4M1WB7Z8exrxRo08XlyvVWFQZjecPGcOOSTlWKknKCu/YIUoinJmscZi\nhzXMIyxRFPH3j4rwxb4z2HHwbMjPC2S2OvD1kfJLNrGxo5Lq8KWDHQpBQN4N2Zj6kz4YkpWA6dd6\nuq189rX/JMYybwYa8GSj6+qd2F9cib0BB0pq6xyI0amCXiil8oiUBD0S43QwGdQ4V+XpcFFVY0Ny\niIu9FCQXn65ByZkaZKaFrudvS/LBPWdDn2QGyUQXn3QQePf35yCKQL8Ia4XbSkMLuFZkkhODxwQm\ngwYv/XI8HpkyBIOyGg7CB+uRHEyCb5Dcwj7x0uHFUDMfgIZyiy4XJO/6vgxnKuuw9/C5kJ9TV+/E\nlm9KEWtQy50qJL1SY1Fb58B5b/eEU+fMqK61YfTAlJCN/TOSjaipa5gK5nC68X/vH4DTJeLh2wb7\nHSTTqJVIT4zBiXPmRoePpMcz6UF++Ab0SoAANGotVXmhHqXlFgzKTGg0hlIhCPIpVqVCgEalwLjB\nqRjRPxkTRwWfCCSRRuU6XW4kx+vDjrgEPD/4Feet+OZIuXwDUF0TespYKIIg+N2MBPaU1GtVMGhV\nqPIZylJZU49z1VYUe7PswV6EgiBg1MAU9EiKQVaaCSfKzKi3O/Hp16dgs7tw05hefo9dpHZj3/xQ\n4clKBgTL0rRCq82F6lr/ASznwmST9x4ul8eWBnsqEIwoilix6SD+UrhfPgTRGblFEa8V7pcz/01x\nutz4/ngVkuN1cvtCwPO9vPXKLMzPHY5JY3ohrZsBe4rO+TWPP+O94ZR6AB85dR7L/3kAf/3XIb8b\njZo6e8jT4D2SY3DzuF64fXwWACClmwEVF+pRfr4eblFEUojHhtI5hS8PnIXLLWJAr47xBim9Gfj2\nSWaPZKKLT3oP3+lNhPTt0bincntqGCbS/Ezy2SrPaO1gpWYSjVoJQRAw0HuI8bujldhxoAxKhdDk\ntFTfJFdLM8lyh4swT2ul80/qrtbdYs/3nuA41EE6wPN4vc7mxI2jezZ6XCqVXEhZSulxr1SnGkyP\ngMN7nkNoVky4ojuG9mnc67RPdxNsdlejNZ6u8NyhBav/NerV6JUWKz/ml+w75ikJGNY3eE9V6bGK\nJ6ssYET/ZPzyrqF+hw+D8V1DuHpkSWo3PVxuEX8u3I/n1n4Np8uNqlobYnSqJv+tQIMzE+Q+kMEe\n6STG6VB5od5vqtHn+07jUEkV+vYwNZm5zu4ZB7cooujEeXyy9xRidCr85Ar/9nTD+yVBgKdX7tK3\nv8bvVuyUD/K5RVEOyAHIgauUtQ9Vl2xzuLDh0x+gUgrQaZRNHgyUfHesUq6P3lfc9OAaidPlbnGL\nn0iYrY4mpxr5OlFWi71HyvHhl8fhcDbdU7r4dA2sNpc8tCcYQRBw7XBPyyXfp0fSU5mRAzydaN7d\ncgz1dhfq7S75hsbtFmGuc8jN54P93dMn9JOfMKQm6D0/N94b1VCPDU0xGhj1avnfGdjRgmR3Q5/k\npm5+iaj5pPdMqayyb0bHuAZIdBolFILQ7PcHURRxtrIOKQl6v97uoaQnGhAXo8G3RytQWVOPSWN7\n+Z0xCkatajiH1NzOFpLYGM81PdzhPalffJfqblFVUy/3Ra3w6Tzgy2x14L9fnUSsQR10vrp0eE+q\nNS064XlDDJcNkoJk6fDed95WY+OGhGgE7r2rDOzh2pBJDh6UDs5MgMst4ojPaX3p3woZJHtrkPXa\n5r0Z+o7HberODwBuGZeJG0f3lG8AzlbWobrWhoRmzl0HPMHJzIn9MTgrIehNRqJJB5vDBUu9U56a\n9PGukxAB5AT0Yg4m23vB2vDpUdTWOZBzRfdGgXycUYu+PeJQfLoGx0pr4BZFfOydbnSmwgKrzQWl\n98CTFCRLzenLqurgdLkb/fztP1aJyhobrhuRgeyMeFRcqI+ol+P6T36AQhCgUgrYfyz84Bpfb3xw\nCAtX7Ahb/tEar77zHea/9iU+/PLHiNrl7fcO3bHanNgXsI9gZSRyqUUTp7fHD02DRq3A5r2n5HWc\n9r6WrvK+Bn1vSKX2gWarAyIams83Rcpmf7HPc1o7sEeyRBAEOZssCA0/b+1N6VNu4XaLcLlFaFr4\nBkFEofm+h6tVCr/xzR2B1F62ucNEaq0O1Nmcfk/2mvp3pNgpKU6H267KiujrpOC4WwviB8BnNHWY\nTHKXPLi325tFllqfSZlZXx/vPgGrzYVbxmUGzXBm+nS4cIsijpz0DNIIV2yekeR5AZSWWyCKIvYd\nq0CMToW+PYIPA5CD5FONg+RuJl3IWmGpvkea8Gd3uFB0vBo9kmJCrk96rGLQBs+WheI7Hjdc+zdJ\nRrIRuddnY5y3C8CRU+dRb3e1+E4wMy0Wv8kdHrTExbewf/TAFCTFeQaMaDVKjB4Uun+lROqQUFZV\n523+Hrz0ROqHPTw7CT1TjNh7uBwVF6zyIbEh3uDtiPf7KD1aKqu2Ytl7B7Do9Z1+weN+bxZ4zKBU\n9E73/JyVNJFN3nu4HOeqrbh2eA8M6JWAU+XmoINXApVV1WFP0TmYrY6wXTpayi2KOH62Fk6XG4Wf\nF2PZewearJc+6JMF33XI8xiy4rwVy97bj7l/2tbopvFgSSWUCiHsUxzAc1J7whU9UF1rw5feIR6n\nK+qgVSsxoFeCXA8s3dRIdebSDUqkp8OlWuMS73CRcKNfpc/NDNNfvK0pBAFKhQCn2w27N5PPTDLR\nxWfQqRDnnX6bkWyUD812JAatqtmZ5KbqkYMZPTAVKqWAWZMGRHwGQiqzSGzxwT1poAhrkv3sKToH\nhSDghtGe+emlFY07SOw6VIYYnUrunRso3qiByaDGiTIzTp0zw1LvbLKmMC3R01e4tMKM0nILqmps\nGNK7W8jHEWmJBsToVPJIXACotztRWWNDz9TQb7wDesYj1qDG9v1nYLU5UXSiGnanW+7OEYxRL5Vb\nNP/NUOobHSqzHYx0xywN7mhp4X04vjXOmWmxcrA6dlBqRKUdMTq1nP0fNTA5ZN3T9SMz8Ku7huLR\nOy7DjaN7wi2K+H97TsrBnHRDID3az86Ih0IQsO9YJb49WoELZrvcz1kURRwoqfJMaUyLlbs1NFWX\nLJVuXJ6diKHefR4oabrkYvPehoNs4bp0tFStxQ6nS8SQrAQM6BmPb49WhD2IWFfvxNHSGvTtbkJ6\nogHfHq3Ev3b8iMdX7sJXh8thtjqw/J8H5MC1ts6OH8/Uom93U0RBpqd3qYB/7zgOh9ONs1V1SE80\nQKEQkOl9TUklNVImWWrvFhui3CLQsL6J+NXUofjV1KH4wwOj0TvMRDwpgJZunDoKlVIBp0uE3dm6\nLAoRhZfuLRWUnjB2NJ5McvOCZLmTVpiD/IFGDkjGsnk/CVs2F+iKfknolWKU36ebyySVW4R5Uut0\ndrE+yWarAyVnatC/ZxwGyRNv/Gt+bQ4XKi7Uo2eKMWQGRRAE9EqLRWVNPd7ZegxA0290KqUCPZJi\nUHK6Fhs/OwoAuDxMyyeFdxzzufNWXPA+DpBak/VMDf2CUquUuH5kBupsngNn72wpBgB5jHQwUia5\nJdmsm8f2wi3jMuWShkhIQbI01jnUYcfW8M1OZ6bGIufy7uiVasRNY3pG/HcMyeoGAZBvqIJRqxQY\n3j8ZKqUCYwenIs6oweavTmHbvjPQqpWNvsdJ8TokxeuCHuI7XWFBda0Ng7MSoFAIcoBV3ESQLHfs\niNXJN0NS2UIodfVObNt/BgmxWsQbNdh3rBIud+TTAyNR4Q3+eyQb8dCtg6BVK7Fu8w+4YA6e5f7+\neBXcoojL+iRi3OBUOF1uvLu1GHqNEj+dPBh35fRBda0Nb2w6CFEU8b13guGQIOU2wSTEanH1sO44\nd96Kv/7rEJwut1wmNOXq3rh9fBZyLg8Mkj2vvUjGuAKelkvDs5MxPDtZLssKZdSAFORcno7rRga/\nGW8vKqUAp8sNu3ckNcstiC4NqcNFc94/21KMTuV3LYjE2ermB8lA87O144em4w8PjmnxU7iIDu51\ntUyydIirb484uTwgcKqd9Kigqczo5KuyYNCq5LKGARG0b7n3xgFQqxRyy7RgtbS+pNOuUjZZmi7T\nKy10dgoArhuRAY1agcKtxThVbkbO5d3DnpyVapINLfhh69sjDtMm9JVb5EXCoFMj0aSVT4629HRq\nOFImOSlOB6Nejd7pJvzhgTHNynjfmdMHSx4ag77dIzt1rFIq8PCtgzFmUAr69jDh5rG9oNeq/A4h\ndIvVyrVaGrXnJST9zEmBrfRzEWvQIDleh5LTNWHLFKQguVusFmndDEg06XCopCps0PvlgTOw2V24\nbkQPXJGdDLPVIbesC+U/O4/j+TV7G9UWV1ywysMnfFXVeNaVaNIhKV6PaRP6wlLvxKbtPwb9+6X9\nX9anG666LB1GvRrDs5Ow5KGxuHJIGm65MhNDenfDwR+rcbT0gvzaa6oe2dct43oh1qCWy66kIHlA\nrwTccU0fueuJb7s+oHGP5IvBoFPh/psHNdkTtK0pvZlk6fXJcguiS2PMwBRkpcU2GQu0F4NPh4u6\negfcPu9Dod6TWpJJbg9G79PBcC3gnF1tLPWPZz1BQO90Eww6NRJitY27R4RpseYrOyMev79/FPp0\nN2FQZkKT3RIAoF9GHOZOGwaNSoGBvRLkuuiQnx9weK/EG+Q3dcjHqFcj5/LuEAGkxOuRe32/sJ/v\n292irfRMabhzvhSZ5NQEA1RKQe6A0RJatVKelhipIb274ZEpl+Hx/FG43dumTgq8dBol9FoVMtNi\nIQC465o+ABoyyQe9JRJDfIK+3ukmWOqdYQeQVNfa5L9bEAQM6Z2AOpuz0cAbX0XejizjBqfJQyy+\n+aE85OcDntaJR05dwGGfFnMnymqx8P92Ys1HRY0+XxqeIt2wXDu8B+KMGuw6VNaoc4XD6ca3P5R7\nbmjSTEiM0+HVOVfjV1OHyQGqQhAwaaxnuM22fWdwoKQSRr26WVmYpDg9np99JR694zLcPLYXrhmW\n7vfncj9v79qlerVQ3S2ikVopwOVyy6PqWW5BdGkM6JWA398/+pK8B14MUmxw6Mcq/OqVL/DrP23D\n/67/BvNf247Hln8ZtF65rNrqmbfQwa+Zeq0KAsK3uJO6W3SZcosfvYdppPqfHkkxqK61+TXLlu6C\nIsk4piQY8MSsUfhN7hURr2FgZgKe/dk4/OLOpqfq9PGOY5Y6I5ScroFKqUBmmDpHya3jMjF6YAoe\nveOyJmtwjfqWl1u0lO+BpktxgTDq1Xhi1ijkTex/0f/u5pJGbCbG6SEIAm67MhNPPzwWV3sDtHPn\nrbA7XDh88gJ6pRj9emYPzvIEzN8cCR3AejqENHyNVPojdV0J5sezNTDFaNDNpMWgzARoNUq5RjwY\ntyjK5T7f/tBQv7zNO1L5/+063ijDLNVaSwcrFAoBVw1JQ53NiW9+8K+B3nnwLGrqHLhmWLo8AlkI\n8nRiUGYCEk1afHngLM6b7RjSu1uznmIAnp/z0QNTMP3afkHLKJLidKi8YIVbFJtdbhENlEoFHC53\nQyb5Io3IJaLORcokf/HdaYjwZI8P/VgNs9WBqhpbo4PUbreIc9V1SOtmCHr97kgUggC9VhV2WIpD\n7m7RRfokl3gDAymgCOxdDABn5CA58kcFzf1h8HSnaPouS6tRom8PE0rO1KC61oZT5Wb0SjVGlNmJ\nM2rx6B2XRZRl65FshIDwJ/Evtl4+/1ZLW7g0+W+kxjaZrW8LUiZZGiyhUSvRPSkGBp0aRr0aZdVW\nlJypgdPlbtSlYUT/ZCgVAnYXBR98Y3d4evr6Bcnev6Po+Hm4RRFvbz6Cr3y+vsZiR1WNDVlpsRAE\nAWqVAv26m3Cmsi5ku5/qGpucWfz2hwqIoginy41d35fJf+d3R/2D7MBMMgBcNdRzY7B9f8MBPrco\n4qPdJ6BUCJg4KnzNuEIQcNVl6fKkvOaUWkQqKV4Pp0vEBbO92Qf3ooFKqYDLJcLmZE0yUVcmZZJ/\nOHUBSoWAF39+Ff7y6xz8/A5Pki/wUHlFTT2cLhFp3TpWCVkoMfrwBxOlcouWdh7pVFfOCwGBAdBQ\nj+gfJFugVSs7zOOPoX0SIYrAf3Ydh8stoncT9cgt0TPFiD//+hqMGhD6cN/FJgXkMTpVi2fLdxZS\nkJwYpPY0NcEzhVAqfwgspTHq1RiUlYDjZ2sbTfQDgGqzdGiv4ec13uipTT5y6jy+OVKOzV+dwvvb\nSuQ///Gs/xMVAOjt7aQhPW0JdKaq4TVSWVOPU+UWHCipQm2dA4O8Qfk2b29gSVVNPTRqhXyhBTxP\nb3qnm3CgpBLnvWs/UFyJM5V1GDs4NaLX3XifEokhlyBIlnobV1ywoqbODkFoqNvvCqSDew4Ha5KJ\nujKp1awIT/mnTqOCQaeSD5UHBsmdpR5ZYtCpw/aBdrjcUCqEZj+tlEQUJFdWVmLChAkoKSlBVVUV\nfv7znyM/Px95eXk4efIkAGDjxo2YOnUqcnNzsWXLFgCAzWbDnDlzMHPmTMyePRvV1aEfHUfiuLce\n2TcwSO/mCZKlg1Nut4izVVakJXacRwVSQf/Wbz0BSFb6pTkFa9Cp23TPKfF6xOhUQaflRRup0kFa\nvwAAIABJREFUH26wTH1KgmcK4c5DnoxsdpAa6tEDPX2dvwqSTa6uaehs4Wtgr3jY7C6s+e8RAJ4b\nQalLyo/ya6Hhhku6+QrVSUO6+En1y3sPn8N27/S6aRP6ol9GHPYXV/l1rqisqUeiSdfo5+rqYekQ\nRWD1x4dx3mzD25t/AADcGKaLiK+UeD1yLu+OcUNS/UpTLpYk+fBePWotnpHULb1IdkYNLeA8mWTW\nJBN1TTE+T7wH+yQkTDEaJJp0KA44VC7FUp3lfT1Gp4Ld4Q456MrpdLfq+tfkVzqdTixevBg6necN\n/MUXX8Ttt9+O1atXY+7cuSguLkZFRQVWr16NDRs2YOXKlSgoKIDD4cC6devQv39/rF27FlOmTMGy\nZctavFCgIUPm27c0xftIQDo45XlU4G5WqcWl1ivViLgYjVwfGK7vameiUAh4bMZw/PS2we29lEsu\nMy0Wj88aidtz+jb6M6nTRVlVHVK7GYJ2UZBKLrZ8U4pN20r87t59O1v4kkouLpjt8oAMaVSy9FrI\nDJJJDjW45Iz34nfD6J5QCAI2bf8Re4+UI62bAVlpsZg4uhfcoiiXhVhtTljqnUEbvV8zLB2DMhPw\nzQ8VePyNnThXbcWtV2Y22TLN1/03D8TPJg+J+PObI8mbSS6/YEVNmJHU0UqlkFrASTXJDJKJuiLf\noWWBpW29u5tgtjrkdplAQ5vazpRJBkIf3nO43C1u/wZEECQvXboUM2bMQEqKJxP29ddf4+zZs3jg\ngQfw4YcfYuzYsdi3bx9GjhwJlUoFo9GIrKwsFBUVYe/evcjJyQEA5OTkYMeOHS1eKBD8EXOsXg29\nVil3DjjjLbtI70DfYEEQ5GyyTqNs1hSbjq5XamynueNsrb7d44JOEkpJaCjBCJZFBjx381f0S0LF\nhXr8c1sJlq79Wr4YVdV6LlCBZQoDfPp233GNp8uG1Jf6eFkt4oyaRiUaCbFalJzxZAaKjlcHPdDa\np7sJt1yZieyMOIy/LA0P3DIQgiBgzBBPCYTUlq3KG7wnBhnLrFIq8Is7hyIjOQZWmws/uaI77srp\nE3Tv7UEKks9W1sFqc3apQ3tAQ7sjq3dkOsstiLomKZMco1PJk4YlfYKUXEjvS5GOpG5vUimgJUQb\nOKfrEmaSCwsLkZiYiPHjx0MURYiiiNLSUsTHx+PNN99EWloaXn/9dZjNZsTGNvzPNxgMMJvNsFgs\nMBq9dasxMTCbQ7ezaorV5sT3J6qRFKdDnM/jWUEQkJJgwLlqz0n2M83obNGWpAERWWmxXeqxb1eQ\n4nMxCRUkA8DPbh+MJ+8bhRnXZ8PudGPlh4fgcrt9Bon4B8lxMRoMyUrAwF7xmOTt11x0vBoXzDZU\n19qC1rb3STfhgsWOD7/8ES+s+wbPr/1a7iF5ptKCRJMWWrUSd+X0waJ7R+Kh2wbLNdTJCXr0SIrx\nTHh0uORDe6F6YBt0Kvw2bwR+cedlyL9xQIcpbwI8QbJCEOQSmK50aA9oaJxvtXmDZGaSibqkOKMG\nguA5+yF1HZL09pZ+BgbJ3UzaTnPOSLoJCDV62+kSoVK2/L0pbL+wwsJCCIKA7du34/Dhw1iwYAGU\nSiWuvfZaAMB1112Hl19+GUOHDvULgC0WC0wmE4xGIywWi/wx30C6KcnJ/p/7nx0/wmZ3Ydp12Y3+\nLDPNhONnayGoVaj21mwOzk5u9HntaUKsDl/sP4ObxmbK6+pI67tYonFPgQL3qI9pCG7HDeuB5DB9\nmbunx2PMsB44U23Flq9P4YsDZbDYPHWj2b2TGpVqPP+rHIiiCEEQMKxfEnYdPIvPvvPUEQ/um9Ro\nLZdlJ2PvkXK894XnkN+pcgv+VLgfTzwwBufNdgzvH/51MeaydLy35SjKauywe8vUemfEh/yaZAC9\ne138g3cXw//kjcDHO3/EoZIqXD4gJapfdxJpbwbpkKLCExwnJRmjYt/RsIemRPMeo3lvko62x+Tk\nWDzz6Hj0So31SzACgNGkh0L4Bqcq6pCcHIt6mxPVtTZcnt34vUX6uzqaFG9CVKVVBV2f0yXCaFC3\neO1hg+Q1a9bIv541axaeeuopvPLKK9iyZQumTJmCPXv2IDs7G0OHDsXLL78Mu90Om82G4uJiZGdn\nY/jw4di6dSuGDh2KrVu3YtSoUREvrLy84YS+KIr44PNjUAgCRvRN9PszoGFIwPdHy3GopBIalQIa\niI0+r73Nm345AM/ekpNjO9z6Wisa9xQo1B5NBs+hSZXojuj/wdSc3vjq+zIUfnYUcUYN1CoF6i31\nsNUFH/cMAH3SY7Hr4Fls+qIYWo0SgzJMjf6tFJ9R3ndf2w+nKy3Ytu8MHl+2HQCQGKsNub7k5Fj0\nTfME+F98c1IuLVF3wNdSJIb0jMOQnpfD7RahUAhR+7qT+O7N5T3/UOkdL2u12Dr9vqP5eyeJ5j1G\n894kHXWPaSYt7FY7yq2NxzenJ8Xgh5PVKDtXI08EDvY+0VH3Jro8SaYzZbUoT25cQWB3uiAAYdce\nLoBu9uSJBQsW4IknnsD69esRGxuLgoICxMbGyt0uRFHEvHnzoNFoMGPGDCxYsAB5eXnQaDQoKCho\n7j8HwHNa/+Q5M0b2Tw7aXirVWxN67HQNSsstGJSZ0KpCbaLmevSOy6BUKiIuOYjRqXHNsHT8Z9cJ\nmK0OpCTom/za4f2S8P4XJeiXEYdZNw0IWgaRlRYLjVqBtG4G3DA6A4Cn17FUyxzJFEqtWolvf6iQ\n+1MHq0nuTAIfMXYF0vWvTiq3UPN6SESN9UwxorTcgvLzVpRWeILkHkkdq1w1HKncwhyiDZzT6W7x\ntD2gGUHyqlWr5F//7W9/a/Tn06dPx/Tp0/0+ptPp8Oqrr7Z4cZJt3jZVE0b0CPrn0sGx7fs9nzeg\nZ/iRz0QXm+8hu0hNGN4DH+06ARFAQgRt0JLi9fjTr68JW9Ou16qw+P7RMMVooPQ+an9kyhAs+ftX\nqKypR1oTtfpqlQKDMhPw7dEKVFyox8Be8ZdsUAxdOlINnlSTrObEPSIKQgqIS8stOF3hefLUvVMF\nyZ4wNlhNslsU4XKLrUqatt0M41Y4VnoBWrUSg0IEIlJ3AakN3IBeDJKp40uO12NY30R8d6wSCabI\negVHcugz8NBqrEGDefdcjr2HyyO6gbxpTE84XG5cMywdowam8KBpJyRnkut5cI+IQpNmAJwqN+O0\ntztYZwqSG1rANc4ku7y9k1WtuP51+CDZ4XThTGUdstJjQz429bSBU8Fqc0KlFKKmDzFFv4mje+K7\nY5WXvBtLemIMbrsqsn9jQK+EFmXGqeNgdwsiikSP5IZMcmmFGbEGdadqmRkukyzNpmiTcov2crqi\nDi63iF4poQurBUFAaoIeP56tRZ90E3uCUqcxJKsbFt8/Oqp6Z1P7k8otGmqSeU0kosYSTTroNEqU\nnKlB5YX6TvckXs4kB+mT7HB5WjS1JpPc4dMLJ855TiT2TA3dVgtoqEvu38m+wUSZabFBh5QQtZQy\noNyCY6mJKBhBENAjOQYVF+ohwtPtojPRa5VQCAIstsaZZKecSW55yWCHv3JKLUnCZZIBzwlNwJOZ\nIyLqyqQ3BZdbhEIQ2O2HiELK8Ont35k6WwCeIN+gUwUtt3BKNcnRXG5x4pwZgtBQNxPKxJEZ6J8R\nj35hJp4REXUFvm8KbP9GROH4BsbdO9i04kgYdKqgB/ccF+HgXoe+eoqiiJPnapHWzdDk42iNWskA\nmYgIDeUWAA/tEVF4vpnk7k0kJDuimBCZ5ItxcK9DXz0rLtTDanPJpRRERNQ0lU8NHnskE1E40pN6\no14NUyfqbCEx6NRwON2wO1x+H5fKLVpzJqNDl1ucPOetR07tePPCiYg6KpZbEFGkYg0aDOndDSnx\n+vZeSotIbeAs9U6/Tj7Swb2orUkuLfcEyb6PAoiIKDzfTLKGmWQiasL8e65o7yW0mDSauq7egYTY\nhsFccgu4aO1uYfHWmJhi1O28EiKizsM3c6JmJpmIopjBJ5PsSy63iNaa5Hq7Z8N6TYdOeBMRdSgq\nHtwjoi4iJsRoaungXtR2t7DaPEXYOg0fFxIRRYrlFkTUVYQaTd0FMslSkMxMMhFRpJQ8uEdEXYQ8\nmjogSI76Psn1dicEgRd5IqLmUCl8W8Dx+klE0csgZ5L9yy2c0d4n2WpzQadRQRBafjKRiKir8c2c\nsNyCiKKZNGzO7g2KJU65u0WUBsn1difrkYmImkml8OluwUwyEUUxqdogcJiIw+n5vUoVpS3g6u0u\nBslERM3kd3BPzWsoEUUv6Rpnd/hnkqU+yVFbbuEJknloj4ioOfzLLTr0ZZ6IqFW03muc3Rl8LHVU\nHtxzutxwutzQa5kFISJqDt9yCwbJRBTN1KrgmeQ2O7hXWVmJCRMmoKSkRP7YBx98gNzcXPn3Gzdu\nxNSpU5Gbm4stW7YAAGw2G+bMmYOZM2di9uzZqK6ujnhhbP9GRNQyLLcgoq5CrkkOlUm+lEGy0+nE\n4sWLodPp5I8dOnQI7777rvz7iooKrF69Ghs2bMDKlStRUFAAh8OBdevWoX///li7di2mTJmCZcuW\nRbywepun3x1rkomImsf38SIP7hFRNFMpFVAqhMY1yVIm+VKWWyxduhQzZsxASkoKAOD8+fN45ZVX\n8Pjjj8ufs2/fPowcORIqlQpGoxFZWVkoKirC3r17kZOTAwDIycnBjh07Il6Y1c5pe0RELeFXbsFM\nMhFFOY1a0bi7xaXOJBcWFiIxMRHjx4+HKIpwuVx4/PHHsXDhQuj1evnzzGYzYmNj5d8bDAaYzWZY\nLBYYjUYAQExMDMxmc8QLq7d7Msl6LcstiIiaQ6nkMBEi6jo0KiVsIfokt+YaGDYCLSwshCAI2L59\nO4qKinD77bcjIyMDf/jDH2Cz2XDs2DE899xzGDt2rF8AbLFYYDKZYDQaYbFY5I/5BtJN0eo1AIDE\nBAOSkyP/us4kGvcVjXsKFM17jOa9SaJ5j9LeRFGUP5aSZIyaPUfLPsKJ5j1G894k0bzHjrw3vU4F\np9Ptt0aFN4OclmpqccI17FetWbNG/nV+fj6efvppZGVlAQBKS0sxf/58LFq0CBUVFXjllVdgt9th\ns9lQXFyM7OxsDB8+HFu3bsXQoUOxdetWjBo1KuKFlZV7gm6Xw4Xy8toWbK1jS06Ojbp9ReOeAkXz\nHqN5b5Jo3mPg3lRKBZwuN+ostqjYczR/7yTRvMdo3pskmvfY0femVAiotTn91mipswMAzldbYA5T\nchEu+I84tBYEwS874SspKQn5+fnIy8uDKIqYN28eNBoNZsyYgQULFiAvLw8ajQYFBQWR/nOw8uAe\nEVGLqZQCnC62gCOi6KdRKYOMpXZDgCeAbqmIg+RVq1b5/b5Hjx5Yv369/Pvp06dj+vTpfp+j0+nw\n6quvtmhhbAFHRNRynsMqLtYkE1HU06oVcDjdcIsiFIInKHa6RKhUCghCFI6llg7u6ThMhIio2aRe\nyVp2tyCiKCd18XH4tIFzudx+PeNbouMGyTa2gCMiaimp7REzyUQU7dRBRlM7XG4oFa27/nXYq6ec\nSWa5BRFRsym9QbJGxUQDEUU3TZDR1C6XGMWZZG9Nsp6ZZCKiZlN73xzU6g57mSciuii0QUZTO93u\nVg0SATpwkNzQ3YKZZCKi5lKrlNCoFfIhFiKiaCXVJPtmkp0usdVBcoeNQOs5lpqIqMXuyumD82Zb\ney+DiOiS03gzyTaf0dROpxsqQ+uSBB06SNaoFVC0or8dEVFXNaR3t/ZeAhFRm5BrkgPKLZTRWm5R\nb3dCz1ILIiIiIgojWLmFyyVCHa1BstXuYqkFEREREYUllVvYveUWblGEyx3V3S2cPLRHRERERGFp\n5XILTybZ5fL8NyrLLVxuEXaHG3pO2yMiIiKiMAIzyU6XCABQtfJcW4cMktn+jYiIiIgioQ7IJDu9\nmWRVKyeOdswguV4KkplJJiIiIqLQtKEyydFYbmG1OQAwSCYiIiKi8AK7W8iZ5Kgut9Cy3IKIiIiI\nQtN4yypsTimTHMUH9+pYbkFEREREEWjIJHuCZJe33CIq+yTz4B4RERERRaJRuYVbyiRHc7kFM8lE\nREREFIZUbiEf3HNG8cE9S73n4J6BNclEREREFIbcJzmwBVxUZpKlmmQOEyEiIiKiMJQKBVRKoSGT\n7JaC5DbIJFdWVmLChAkoKSnB999/j5kzZ2LWrFl4+OGHUVVVBQDYuHEjpk6ditzcXGzZsgUAYLPZ\nMGfOHMycOROzZ89GdXV1RIuSDu7pWZNMRERERE3QqJQ+meQ2KrdwOp1YvHgxdDodRFHEs88+i9//\n/vdYtWoVbrjhBrzxxhuoqKjA6tWrsWHDBqxcuRIFBQVwOBxYt24d+vfvj7Vr12LKlClYtmxZRIuq\n89Yk61luQURERERNUKsVPjXJbXRwb+nSpZgxYwZSUlIgCAJefvllDBgwwLsIJzQaDfbt24eRI0dC\npVLBaDQiKysLRUVF2Lt3L3JycgAAOTk52LFjR0SLqvPWJDNIJiIiIqKmaH0zyW1RblFYWIjExESM\nHz8eouhJXSclJQEAvv76a7z99tu4//77YTabERsbK3+dwWCA2WyGxWKB0WgEAMTExMBsNke0KPZJ\nJiIiIqJIaXwyyS653KJ1meSwqdrCwkIIgoDt27ejqKgICxYswPLly7Fr1y6sWLECr7/+OhISEmA0\nGv0CYIvFApPJBKPRCIvFIn/MN5AOx2pzQhCAjO7xULRypGBHlpwc2f+PziQa9xQomvcYzXuTRPMe\no3lvQPTvD4juPUbz3iTRvMeOvrcYvQZl1VYkJ8dCb6gEAHSLN7Rq3WGD5DVr1si/zs/Px5IlS7Bt\n2zZs3LgRq1evhslkAgAMGzYMr7zyCux2O2w2G4qLi5GdnY3hw4dj69atGDp0KLZu3YpRo0ZFtKi6\negd0GiUqKyPLPHdGycmxKC+vbe9lXFTRuKdA0bzHaN6bJJr3GM17A6J/f0B07zGa9yaJ5j12hr0J\nEOFwulFWVoPq81YAQF2dvcl1hwuiIy76FQQBLpcLzz77LLp3745f/OIXEAQBY8aMwS9/+Uvk5+cj\nLy8Poihi3rx50Gg0mDFjBhYsWIC8vDxoNBoUFBRE9G9Z6p2ctkdEREREEZGn7jldDX2SW1mNEHEk\numrVKgDArl27gv759OnTMX36dL+P6XQ6vPrqq81elLXegViDptlfR0RERERdj+9oajlIVkXhxL26\neif0HCRCRERERBHQ+oymlg/utTKT3CGDZJdb5CARIiIiIopIQ7mFGw6X1Cc5CjPJAKBjj2QiIiIi\nioBG7c0kO30yydEaJOvZI5mIiIiIIqBWBalJvtQT99oLp+0RERERUSS06oaaZKc7yjPJnLZHRERE\nRJHQeDPJNocLTiczyURERERE0Gp8yi3cUpAcpZlkBslEREREFAmtt7tFvcMFZ9Qf3GOQTEREREQR\nkDLJNrsLrqg/uMeaZCIiIiKKgE7KJNud7JNMRERERAT4ZJJ9J+4xk0xEREREXZnOp9zC6XJDEACl\nIkozyaxJJiIiIqJIBB7ca+2hPaADB8k6DYNkIiIiImpaYCa5taUWQEcOkrUstyAiIiKipmnkg3ue\nILm1pRZABw2S9VoVFELr7wCIiIiIKPqplAqolAr54J5aFaVBskHHUgsiIiIiipxOo/SUW7jdUCqi\ntNyCQTIRERERNYdWrfSUWzjd0Xtwz6BVt/cSiIiIiKgT0WqUsMndLdook1xZWYkJEyagpKQEJ06c\nQF5eHu6991489dRT8uds3LgRU6dORW5uLrZs2QIAsNlsmDNnDmbOnInZs2ejuro6okXpmUkmIiIi\nomaQM8nuNsokO51OLF68GDqdDgDw3HPPYd68eVizZg3cbjc2b96MiooKrF69Ghs2bMDKlStRUFAA\nh8OBdevWoX///li7di2mTJmCZcuWRbSoGB0zyUREREQUOZ1GCafLDYejjYLkpUuXYsaMGUhJSYEo\nijh06BBGjRoFAMjJycGXX36Jffv2YeTIkVCpVDAajcjKykJRURH27t2LnJwc+XN37NgR0aJYk0xE\nREREzSENFBHR+pHUQBNBcmFhIRITEzF+/HiIomcOttvtlv88JiYGZrMZFosFsbGx8scNBoP8caPR\n6Pe5kejdPa7ZGyEiIiKirksaKAIAyouQSQ6bsi0sLIQgCNi+fTsOHz6MBQsW+NUVWywWmEwmGI1G\nvwDY9+MWi0X+mG8gHc7ka/qgvLy2JfshIiIioi5I6xMkqy91kLxmzRr517NmzcJTTz2FF154AXv2\n7MHo0aPx+eefY9y4cRg6dChefvll2O122Gw2FBcXIzs7G8OHD8fWrVsxdOhQbN26VS7TiERycmQB\ndWcWjXuMxj0FiuY9RvPeJNG8x2jeGxD9+wOie4/RvDdJNO+xM+wtIU4v/9pgULd6zc0u/l2wYAGe\nfPJJOBwO9O3bF5MmTYIgCMjPz0deXh5EUcS8efOg0WgwY8YMLFiwAHl5edBoNCgoKIj434n2THJy\ncmzU7TEa9xQomvcYzXuTRPMeo3lvQPTvD4juPUbz3iTRvMfOsje30yX/2uV0R7TmcIF0xEHyqlWr\n5F+vXr260Z9Pnz4d06dP9/uYTqfDq6++Guk/QURERETUIr7lFqponbhHRERERNQcOrVPkKyK0ol7\nRERERETN4Z9JZpBMRERERAStuqGKWNlWY6mJiIiIiDoy3z7JbTJxj4iIiIioo/Mrt2AmmYiIiIio\nYSw1wEwyERERERGAwEwyg2QiIiIiIr8WcDy4R0REREQE/0yymplkIiIiIiJAo1JAyh8zk0xERERE\nBEAQBDmbzJpkIiIiIiIvBslERERERAGkw3vsk0xERERE5MVMMhERERFRADmTrGAmmYiIiIgIAKDV\nqAAASmaSiYiIiIg8pHILtYpBMhERERERgIZyCyXLLYiIiIiIPHqlGmHQqtDNpGv136W6COshIiIi\nImp3E0f1xLUjekCpaH0euMkg2e1244knnkBJSQkUCgWeeuopOJ1OLF68GCqVCllZWXjmmWcAABs3\nbsSGDRugVqvxyCOPYMKECbDZbHjsscdQWVkJo9GI559/HgkJCa1eOBERERFRoIsRIAMRlFt8+umn\nEAQB69atw9y5c/HSSy/htddewy9/+UusXbsWNpsNW7ZsQUVFBVavXo0NGzZg5cqVKCgogMPhwLp1\n69C/f3+sXbsWU6ZMwbJlyy7KwomIiIiILpUmg+SJEyfi6aefBgCUlpYiLi4OgwYNQnV1NURRhMVi\ngUqlwr59+zBy5EioVCoYjUZkZWWhqKgIe/fuRU5ODgAgJycHO3bsuLQ7IiIiIiJqpYjy0QqFAgsX\nLsQzzzyDyZMnIzMzE8888wxuvfVWVFVVYcyYMTCbzYiNjZW/xmAwwGw2w2KxwGg0AgBiYmJgNpsv\nzU6IiIiIiC6SiA/uPf/886isrMS0adNgs9nw9ttvo2/fvli7di2ef/55XHPNNX4BsMVigclkgtFo\nhMVikT/mG0iHk5wc2ed1ZtG4x2jcU6Bo3mM0700SzXuM5r0B0b8/ILr3GM17k0TzHqN5b6E0mUl+\n//338frrrwMAtFotFAoF4uPjERMTAwBITU1FTU0Nhg4dir1798Jut6O2thbFxcXIzs7G8OHDsXXr\nVgDA1q1bMWrUqEu4HSIiIiKi1hNEURTDfYLVasWiRYtQUVEBp9OJn/3sZ4iPj8eLL74IlUoFjUaD\np59+Gt27d8c//vEPbNiwAaIo4tFHH8XEiRNRX1+PBQsWoLy8HBqNBgUFBUhMTGyr/RERERERNVuT\nQTIRERERUVfDiXtERERERAEYJBMRERERBWCQTEREREQUgEEyEREREVGAdg+S8/PzUVJS0t7LuOhK\nS0sxcuRIzJo1C/n5+Zg1a1bIkdyd5f/B7t27MXDgQPz73//2+/jkyZOxaNGidlrVpfPGG2/g6quv\nht1ub++ltFpX+94Bned11VLh9nfdddd12p/baHrdBfP666/jgQceQH5+Pu677z4cPHiwvZd0UZ06\ndQpz5szBrFmzkJeXhyVLlsizEgKdOXMGn332WRuvsOV2796NUaNGoaysTP5YQUEB/vnPf7bjqi6O\n3bt346qrrpJjlhkzZuA///lPey+r3UU8TISaLzs7G6tWrWrvZVxUffr0wb///W/ccsstAIAjR46g\nvr6+nVd1aXzwwQe47bbb8K9//Qt33nlney+n1brS966rEwShvZfQYtH2uvN17NgxfPrpp1i/fj0A\noKioCAsXLoyKIAsAbDYbHn30UTz77LMYOnQoAOCf//wn5s+fj//7v/9r9Pk7d+5EcXExrr322rZe\naotpNBosWrQIf/vb39p7KRfdlVdeiYKCAgBAXV0d7r33XvTu3RsDBw5s55W1n3bPJANAVVUVHnnk\nETz00EOYPHkyPvnkEwDA7bffjj/+8Y9yJrazjbQO1l3vpZdewsyZM5Gbm4uPP/5Y/virr76K++67\nDz/72c9QXV3dlstsloEDB+L06dPy92LTpk24/fbbAQBr167Ffffdh3vuuQePPPIInE4n3nvvPdx7\n772YOXMmdu7c2Z5Lb5bdu3cjMzMTubm5ePvttwF4MneLFy9Gfn4+8vPzUVlZid27d+Puu+/Gvffe\ni02bNrXzqsNrzvfO4XBg/vz58iCgY8eOYfbs2e229pb685//jA0bNgAAiouLkZ+fD6DzX1skofbX\nWTt7hnrdSRnz9evX4y9/+QsA4LXXXsNdd92Fhx56CDNnzsSePXvabd2RMhqNOHv2LN555x2UlZVh\n4MCB+Mc//oEjR45g1qxZmDVrFubMmQOz2Yzdu3fjwQcfxEMPPYQ77rgDa9eube/lN2nLli0YO3as\nHCADwB133IHz58/j+PHjyM/PR25uLh544AFUVlbi9ddfx7/+9a9OlU0eN24c4uLiGn0ChvTWAAAJ\n1klEQVQ/3nzzTUybNg25ublyoDl16lScPn0aAPDxxx/j2WefbfP1tpTBYMCMGTPw0Ucf4aWXXkJe\nXp5f3PLdd98hNzcX99xzD+bMmRO1T346RJBcVFSEhx56CH/961+xZMkS+eJoNpsxefJkrF69Gikp\nKfj888/beaXNc/ToUb9yiw8++ACnTp3C2rVrsWrVKixfvhy1tbUAgJtuuglvvfUWJkyYgBUrVrTz\nysO78cYb8d///hcAsG/fPgwfPhxutxvnz5/HW2+9hQ0bNsDhcGD//v0AIF9Qxo0b157LbpZ//OMf\nmDZtGrKysqBWq7Fv3z4AwMiRI7F69WrccsstWL58OQDAbrdjzZo1csDZkUX6vTtw4ADuuecevPfe\newCAd999F9OnT2/PpbdIYEZV+n1nv7ZIQu2vswr2ugu2p6KiImzbtg2FhYVYtmwZKioq2mG1zZea\nmorly5fj66+/Rm5uLm655RZ89tlnePLJJ7F48WKsWrUKOTk5eOONNwAA586dw4oVK7Bhwwa89dZb\nqKqqaucdhHfy5En07Nmz0cd79OiBqVOn4pFHHsH69esxa9YsHD58GLNnz8Ztt93WqTLJgiDgD3/4\nA9566y2cOHECgOd68tFHH2Hjxo1Yv349jh8/ji1btmD69OnyNbSwsBB33313ey692bp164aPPvoI\npaWlePvtt/3ilsWLF+O5557Dhg0b8JOf/ATHjh1r7+VeEu1SblFXVwetVgulUgnAE3i88cYbeOed\ndwAADodD/txBgwYBANLT0zvdnUpgucXKlStx8OBBzJo1C6IowuVyobS0FADkcd0jRozo0G/YgiDg\ntttuw+LFi5GRkYHRo0dDFEUoFAqo1WrMmzcPer0e586dg9PpBAD07t27nVfdPDU1Nfj8889RVVWF\n1atXw2w2Y82aNRAEAWPHjgUADB8+XH7i0Vn219zv3ZgxY/D000+jqqoK27dvx/z589t7C00KvLb4\nCsyudsZrS3P219mEet35kvZYXFyMYcOGAQC0Wi2GDBnS5uttiRMnTiAmJkbOKB48eBAPP/ww7HY7\nnnrqKQCA0+lEZmYmAM91RqVSQaVSITs7GydPnkS3bt3abf1NSU1NlRMKvo4fPw6bzYbLL78cAOSg\nWAogO5u4uDgsWrQICxYswMiRI+W9KRSevOOIESNw9OhR5ObmIi8vD9OnT4fFYkG/fv3aeeXNc/r0\naUyePBmbNm1qFLdUVFTI731Tp05t55VeOu2SSV64cCH27t0Lt9uNqqoqPP/887jjjjuwdOlSjB07\nttNf7CWB++jTpw/Gjh2LVatWYdWqVZg0aZJ81y1dWL766itkZ2e3+VqbIyMjA1arFatXr5azp2az\nGZ988gleeuklPPnkk3C5XPL+pQtHZ/H+++9j2rRp+Otf/4qVK1di48aN2L59O6qrq+VDNnv37pW/\nT51pf8393k2ZMgXPPPMMrr766qCBWUcTeG0ZMGAAzp07BwBRcUAqmvcX6nWnVCrlPR46dAgA0K9f\nP/lJld1ulz/e0R0+fBhLliyRE0GZmZkwmUzIzMzECy+8gFWrVuE3v/mNHEQeOnQIoijCarXi6NGj\ncvDcUV1//fXYsWOH/L0BPE8HunXrhgkTJsgf/+CDD7B27VoIggCXy9Vey22Va6+9Fr1790ZhYSG0\nWi327dsHt9sNURTx1VdfISsrC0ajEUOGDMFzzz2Hu+66q72X3CTfmMVsNmPjxo0wmUxB45aUlBQ5\nk/7GG29g8+bN7bXsS6pdMskPPvggnn76aQiCgEmTJqFv375YunQpXn/9daSkpOD8+fMA/B8ddsbH\niIFrvu6667B7927MnDkTVqsVEydORExMDARBwObNm/H3v/8dsbGxWLp0aTutOHK33HILNm3ahMzM\nTJw4cQIqlQp6vR4zZswAAKSkpMhvbJ3Nu+++ixdeeEH+vU6nw4033oh33nkH7733Ht58800YDAa8\n8MILOHz4cDuutGWa872788478corr+DDDz9szyVHzPfacvPNN+PWW2/F3LlzsWfPHr9sY2e9trRk\nf51FsNfdTTfdhLS0NCxZsgTp6elITU0FAPTv3x85OTm4++67kZCQALVaDZWq459Dv+GGG1BcXIxp\n06YhJiYGbrcbv/3tb5Geno7HHnsMLpcLCoUCzzzzDMrKyuB0OvHwww/j/Pnz+PnPf474+Pj23kJY\nBoMBy5cvx7PPPosLFy7A5XJhwIABeOmll1BVVYXf//73WL58OfR6PV588UWUlpZixYoVGDJkiHyg\nuDP53e9+h507d8JoNGLSpEnIzc2FKIoYOXIkJk6cCAC4++678dOf/hTPPfdcO6+2abt27cKsWbOg\nUCjgcrkwd+5cTJw4Ec8//3yjuOWpp57CokWLoFAokJKSgvvvv7+9l39JCGK0pG2JLrH8/HwsWbKk\n05RXXAxlZWVYuHAh3nzzzfZeCpGsqqoKH330EfLy8mC32zF58mS89dZbSEtLa++lXTS7d+/Ghg0b\n5ENgRNT2Ov6tN1EH0Rmzc63x3//+F3/+85/lWkmijiIhIQH79+/HtGnToFAoMH369KgKkImoY2Am\nmYiIiIgoQJtlkp1OJ373u9+htLQUDocDjzzyCPr164eFCxdCoVAgOzsbixcvlj+/qqoKM2bMwAcf\nfACNRgOz2Yzf/OY3sFgscDgcWLhwIa644oq2Wj4RERERdSFtFiRv2rQJCQkJeOGFF1BTU4MpU6Zg\n4MCBmDdvHkaNGoXFixdj8+bNmDhxIrZt24aCggJUVlbKX//mm2/KIxNLSkowf/58FBYWttXyiYiI\niKgLabPeVTfffDPmzp0LAHC5XFAqlTh06JDcHzgnJwc7duwAACiVSvz9739HXFyc/PUPPPAAcnNz\nAXiy0lqttq2WTkRERERdTJsFyXq9HgaDAWazGXPnzsX//M//+PXki4mJkafPXXnllYiLi/P7c6PR\nCI1Gg/Lycvz2t7/tFIMNiIiIiKhzatMpCGfOnMF9992HO++8E7feeqvfEAaLxQKTyeT3+YHdBA4f\nPowHH3wQ8+fPlzPQREREREQXW5sFyRUVFXjooYfw2GOP4c477wTgGQu7Z88eAMDnn3+OkSNH+n2N\nbyb56NGj+PWvf43//d//xdVXX91WyyYiIiKiLqjNDu6tWLECNTU1WLZsGV577TUIgoDHH38cf/zj\nH+FwONC3b19MmjTJ72t8M8kvvfQS7HY7nnnmGYiiCJPJhNdee62tlk9EREREXQj7JBMRERERBWjT\nmmQiIiIios6AQTIRERERUQAGyUREREREARgkExEREREFYJBMRERERBSAQTIRERERUQAGyURERERE\nARgkExEREREF+P/ODMa/AE3zGwAAAABJRU5ErkJggg==\n",
|
||
"text/plain": [
|
||
"<matplotlib.figure.Figure at 0x117326a20>"
|
||
]
|
||
},
|
||
"metadata": {},
|
||
"output_type": "display_data"
|
||
}
|
||
],
|
||
"source": [
|
||
"# Plot the results\n",
|
||
"fig, ax = plt.subplots(figsize=(12, 4))\n",
|
||
"births_by_date.plot(ax=ax);"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {
|
||
"collapsed": true
|
||
},
|
||
"source": [
|
||
"In particular, the striking feature of this graph is the dip in birthrate on US holidays (e.g., Independence Day, Labor Day, Thanksgiving, Christmas, New Year's Day) although this likely reflects trends in scheduled/induced births rather than some deep psychosomatic effect on natural births.\n",
|
||
"For more discussion on this trend, see the analysis and links in [Andrew Gelman's blog post](http://andrewgelman.com/2012/06/14/cool-ass-signal-processing-using-gaussian-processes/) on the subject.\n",
|
||
"We'll return to this figure in [Example:-Effect-of-Holidays-on-US-Births](04.09-Text-and-Annotation.ipynb#Example:-Effect-of-Holidays-on-US-Births), where we will use Matplotlib's tools to annotate this plot.\n",
|
||
"\n",
|
||
"Looking at this short example, you can see that many of the Python and Pandas tools we've seen to this point can be combined and used to gain insight from a variety of datasets.\n",
|
||
"We will see some more sophisticated applications of these data manipulations in future sections!"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"metadata": {},
|
||
"source": [
|
||
"<!--NAVIGATION-->\n",
|
||
"< [Aggregation and Grouping](03.08-Aggregation-and-Grouping.ipynb) | [Contents](Index.ipynb) | [Vectorized String Operations](03.10-Working-With-Strings.ipynb) >"
|
||
]
|
||
}
|
||
],
|
||
"metadata": {
|
||
"anaconda-cloud": {},
|
||
"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.4.3"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 0
|
||
}
|