{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "cell_style": "center",
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "![CDS 411 logo](../../img/cds-411-logo.png)\n",
    "\n",
    "# Class 16: Data-driven modeling III\n",
    "\n",
    "---\n",
    "\n",
    "![CC BY-SA 4.0 license](../../img/cc-by-sa.png)\n",
    "\n",
    "This notebook is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](http://creativecommons.org/licenses/by-sa/4.0/)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "cell_style": "center",
    "slideshow": {
     "slide_type": "slide"
    }
   },
   "source": [
    "## Load packages"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "cell_style": "center",
    "slideshow": {
     "cell_style": "split",
     "slide_type": "-"
    }
   },
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "\n",
    "from pathlib import Path\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import seaborn as sns\n",
    "from sklearn.linear_model import LinearRegression\n",
    "from sklearn.model_selection import cross_val_score, RepeatedKFold"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Select a random seed for notebook reproducibility."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "np.random.seed(6262009)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Load data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Epilogue: The *Filip* dataset\n",
    "\n",
    "Source: <https://www.itl.nist.gov/div898/strd/lls/data/Filip.shtml>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Last class, we built a workflow for fitting a series of polynomial summation models to the *Filip* dataset. Using cross-validation, we were able to score and rank the models relative to one another. This let us discern a credible point at which we can stop adding additional terms to the polynomial summation model.\n",
    "\n",
    "Let's review that workflow one more time. First we load the dataset from our CSV file into `pandas`, and make a copy of the dataset so that we can \"rewind\" back to our original state, if necessary:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "filip_csv_path = Path(\"../../data/nist/filip.csv\")\n",
    "filip_df = pd.read_csv(filip_csv_path)\n",
    "filip_df_poly = filip_df.copy()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We perform our fits using `scikit-learn`. This requires us to create columns that represent the terms in the polynomial summation, for example $x^2$, $x^3$, $x^4$, and so on. We easily generate these columns using a loop:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "for n in np.arange(2, 16):\n",
    "    filip_df_poly[f\"x**{n}\"] = filip_df_poly[\"x\"] ** n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We select our class of model from the `scikit-learn` package, which in this instance is linear regression."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "lm = LinearRegression()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We set up the data structures that will store our results and the variables we use to specify our polynomial summation model:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "independent_var = \"y\"\n",
    "dependent_vars = [\"x\"]\n",
    "\n",
    "filip_poly_cv_scores = {\n",
    "    \"n\": [],\n",
    "    \"mse_trace\": [],\n",
    "    \"mse_mean\": [],\n",
    "    \"mse_sd\": [],\n",
    "    \"r**2_trace\": [],\n",
    "    \"r**2_mean\": [],\n",
    "    \"r**2_sd\": [],\n",
    "}"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Finally, run the loop where we use repeated k-fold cross validation to score the models:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "for n in range(1, 16):\n",
    "    if n > 1:\n",
    "        dependent_vars.append(f\"x**{n}\")\n",
    "        \n",
    "    rkf = RepeatedKFold(\n",
    "        n_splits=10,\n",
    "        n_repeats=100,\n",
    "        random_state=int(np.round(np.random.uniform(0, 2**31), decimals=0)),\n",
    "    )\n",
    "    \n",
    "    # Cross-validated mean-squared error score\n",
    "    mse_cv_score = cross_val_score(\n",
    "        lm,\n",
    "        filip_df_poly[dependent_vars],\n",
    "        filip_df_poly[independent_var],\n",
    "        scoring=\"neg_mean_squared_error\",\n",
    "        cv=rkf,\n",
    "        n_jobs=-1,  # Use all processors during cross-validation run\n",
    "    )\n",
    "\n",
    "    # Cross-validated R**2 score\n",
    "    r2_cv_score = cross_val_score(\n",
    "        lm,\n",
    "        filip_df_poly[dependent_vars],\n",
    "        filip_df_poly[independent_var],\n",
    "        scoring=\"r2\",\n",
    "        cv=rkf,\n",
    "        n_jobs=-1,  # Use all processors during cross-validation run\n",
    "    )\n",
    "\n",
    "    filip_poly_cv_scores[\"n\"].append(n)\n",
    "    filip_poly_cv_scores[\"mse_trace\"].append(mse_cv_score)\n",
    "    filip_poly_cv_scores[\"mse_mean\"].append(np.mean(mse_cv_score))\n",
    "    filip_poly_cv_scores[\"mse_sd\"].append(np.std(mse_cv_score))\n",
    "    filip_poly_cv_scores[\"r**2_trace\"].append(r2_cv_score)\n",
    "    filip_poly_cv_scores[\"r**2_mean\"].append(np.mean(r2_cv_score))\n",
    "    filip_poly_cv_scores[\"r**2_sd\"].append(np.std(r2_cv_score))\n",
    "\n",
    "# Convert dictionary to data frame\n",
    "filip_poly_cv_scores_df = pd.DataFrame(filip_poly_cv_scores)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's see how the various models perform:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>n</th>\n",
       "      <th>mse_mean</th>\n",
       "      <th>mse_sd</th>\n",
       "      <th>r**2_mean</th>\n",
       "      <th>r**2_sd</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>-0.000387</td>\n",
       "      <td>0.000116</td>\n",
       "      <td>0.811523</td>\n",
       "      <td>0.226243</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>-0.000299</td>\n",
       "      <td>0.000109</td>\n",
       "      <td>0.870893</td>\n",
       "      <td>0.111087</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>-0.000219</td>\n",
       "      <td>0.000072</td>\n",
       "      <td>0.895758</td>\n",
       "      <td>0.127610</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>-0.000092</td>\n",
       "      <td>0.000035</td>\n",
       "      <td>0.959789</td>\n",
       "      <td>0.031457</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>-0.000102</td>\n",
       "      <td>0.000079</td>\n",
       "      <td>0.951594</td>\n",
       "      <td>0.106321</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>6</td>\n",
       "      <td>-0.000040</td>\n",
       "      <td>0.000028</td>\n",
       "      <td>0.981081</td>\n",
       "      <td>0.027850</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>7</td>\n",
       "      <td>-0.000046</td>\n",
       "      <td>0.000062</td>\n",
       "      <td>0.979090</td>\n",
       "      <td>0.037265</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>8</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>0.000087</td>\n",
       "      <td>0.983968</td>\n",
       "      <td>0.044927</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>9</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>0.000103</td>\n",
       "      <td>0.985711</td>\n",
       "      <td>0.088136</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>10</td>\n",
       "      <td>-0.000026</td>\n",
       "      <td>0.000072</td>\n",
       "      <td>0.987502</td>\n",
       "      <td>0.047938</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>11</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>0.000019</td>\n",
       "      <td>0.992882</td>\n",
       "      <td>0.012742</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>12</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>0.000007</td>\n",
       "      <td>0.994882</td>\n",
       "      <td>0.004686</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>13</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>0.000015</td>\n",
       "      <td>0.994247</td>\n",
       "      <td>0.006974</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>14</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>0.000018</td>\n",
       "      <td>0.992826</td>\n",
       "      <td>0.024782</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>15</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>0.000022</td>\n",
       "      <td>0.992930</td>\n",
       "      <td>0.010183</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     n  mse_mean    mse_sd  r**2_mean   r**2_sd\n",
       "0    1 -0.000387  0.000116   0.811523  0.226243\n",
       "1    2 -0.000299  0.000109   0.870893  0.111087\n",
       "2    3 -0.000219  0.000072   0.895758  0.127610\n",
       "3    4 -0.000092  0.000035   0.959789  0.031457\n",
       "4    5 -0.000102  0.000079   0.951594  0.106321\n",
       "5    6 -0.000040  0.000028   0.981081  0.027850\n",
       "6    7 -0.000046  0.000062   0.979090  0.037265\n",
       "7    8 -0.000037  0.000087   0.983968  0.044927\n",
       "8    9 -0.000030  0.000103   0.985711  0.088136\n",
       "9   10 -0.000026  0.000072   0.987502  0.047938\n",
       "10  11 -0.000015  0.000019   0.992882  0.012742\n",
       "11  12 -0.000012  0.000007   0.994882  0.004686\n",
       "12  13 -0.000013  0.000015   0.994247  0.006974\n",
       "13  14 -0.000015  0.000018   0.992826  0.024782\n",
       "14  15 -0.000016  0.000022   0.992930  0.010183"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "filip_poly_cv_scores_df[[\"n\", \"mse_mean\", \"mse_sd\", \"r**2_mean\", \"r**2_sd\"]]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Visualize the relative performance. Let's try and add some error bars to the plot using the standard deviations we computed during the cross-validation runs:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA7QAAAFcCAYAAAD4T/JoAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAASdAAAEnQB3mYfeAAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvqOYd8AAAIABJREFUeJzs3Xl81NW9//HXZ7ITCIQlbEEJgogsQrCCWhRLi9rlWnvd2nJbqrWL7W21dvXW7tcut1b9ddNqLfZSrYpt9V5bq41K8dZgNaAEkUXWsIUlISQhy8yc3x/fmTgMM9lmJpMJ7+fjMY/JnO85Z853snzz+Z7NnHOIiIiIiIiIZBpfuhsgIiIiIiIi0hsKaEVERERERCQjKaAVERERERGRjKSAVkRERERERDKSAloRERERERHJSApoRUREREREJCMpoBUREREREZGMpIBWREREREREMpICWhEREREREclICmhFREREREQkIymgFRERERERkYyUkQGtmb3fzNaaWYuZHTSzZWY2vBvlrjezDWbWamZ7zOxOM8uPyjPBzFaYWb2ZHTOzF83swt7UFco3xMyuNbO/m9lHEztzERGR9DGz083sNjPb1Y28Zmb/YWbbzKzNzLab2TfMzBeV78tm5mI8fp+6MxERkYEiO90N6CkzOx94DPgTcCtwCnBb6PkdnZS7BvgVcC9wM3AW8G2gCLg2lCcb+AswFPgc0AjcBPzVzGY55zb1oK4RwB3AvwK5eJ/1/cn5FERERPqOmb0L7zp3LuCne/8/fAX4LvBD4O/AQuBboWPficg3HngTWBpV/kBv2ysiIicPc86luw09YmaPAOcAk5xzwVDaR4AHgLOcc6/FKfcS0OKcuyAi7Rt4QfEY59whM3s38CSwyDn3bCjPEKAG+LVz7gs9qOss4OfAb4HVwFrgY865Zcn7NERERFLPzL6Ld+P4t8AFwDecc9ZJfgP2Ak875z4SkX4/8D5gdMQ1/DFgkHPu0hSegoiIDFCZOOR4PvBM+EIY8kzo+ZxYBcwsF5gD/DXq0DN4d5nnRNTdBjwXzuCcOwpUhuvubl3OuVedc293zv0KONKD8xMREelXnHO3Ouc+6pyrALpzJ7wMGE3sa+VIYFJE2nigyyHMIiIisWRiQDsGqI1KC78uiVNmJF6w2VW5McBBd2K3dW1Enu7WJSIicrIaE3ruzrVyPHCeme0wM7+ZvWlmH0t5C0VEZEDIuDm0QA7QHpngnAt4o5vIjVMmnN4elR6IOp4bI084X25U3q7q6jUzKwFGRSUPBk4HqvF6kUVEpH/LBSYAK51zJ9tInZ5cKw8Bh4GvhvLfANxvZnudc0/FewNdK0VEBoyErpeZGNB2prcTgrtTrrt1J2NS8g3AN5NQj4iIpN9lwBPpbkQ/03GtdM7NjjxgZn8D1gFfA+IGtOhaKSIy0PTqepmJAW07UBCZEJrXCtAap0z4Lm1BVHp0ubYYecL5IvN0p65E/AJ4NCrtDGDFn/70JyZPnpyEtxCRRC1dupSXX36Zs88+m2XLlqW7OdLPbNmyhfe///1wcs4P7fW1MjTq6mng37p4D10rB6CbH1nLazVHmFU6lNuvmt11AUmKVH7uulZKVxK9XmZiQHuAt+bmhI0OPe+NU+YQEOxGuQPACDPLcc61R+UL5+luXb3mnKslat5RaEg1kydPZvr06Ym+hYgkQWFhYcezfi+lEyfj0NfwljudXivNbApwHrDcOReIyJdFFyOedK0cmIaOayC39TBDxw3X97APpfJz17VSeqBX18tMXBTqReBiM8uJSLs49FwZq4BzrhVYA7w36tDFeB/cmoi6s4COrQPMrAhv373KHtYlIiJysnoTL6h9X1T6xcAeYGfo9UhgGd4etUDHlj/vwJsHKyIi0qlM7KG9E7gceMLMfgmMA34A/Nk5txHAzHx4w442R/S03g48aGbLgYeAM4EvAfc55xpCeZ4C1gP3mdnX8Hpjb8K7S3xPRBu6U5eIiMhJIXSTeQrwhnMu6JwLmtkdwG1mdife9j0LgA8BX4nYTWA18DzwQGg/9/3Ax/Cuq+/q49MQEZEMlHEBrXPuBTP7APBtvLkzR4EVwM0R2c7BC06vBf4QKveQmQ0O5bsKOAj8FLglom6/mV0C3AH8BG+uTxWw2Dm3PSJfl3WJyMC3dOlSFi5cyMSJE9PdFJF0uwy4D1gMvBRK+wFgwCfwFnDaA/wH8ONwoVDg+wHgu8C38IYkvwFc45z7W181XkRSR9dKSbWMC2gBnHOPA493crwSGBYj/V7g3i7qrgGu7EYbuqwrIu92vIu6iAwgS5cuTXcTRPqcc+5beMFnZNoKvJvLkWkOuC306Ky+OuCzoYeIDDC6VkqqZeIcWhEREREREREFtCIiIiIiIpKZMnLIsYhIf7Bs2TK2b9/OxIkTNaRKREQkBl0rJdUU0IrIgPXoy7uoqTtGaXEBV549Ien1L1u2jJUrV3LhhRfqIi0iIhKDrpWSahpyLCID1opXarirYjMrXqlJd1NEREREJAUU0IqIiIiIiEhG0pBjERERkRhSPW1BREQSpx5aERERkRg0bUFEpP9TQCsiIiIiIiIZSQGtiIiIiIikxIGjrcc9iySbAloREREREUkJBbSSaloUSkSkl2bPnn3cs4iIiBxv2IQpNLS0M2zClHQ3RQYoBbQiklaZvIronXfeme4miIiI9GtzrrqRtm2HmVM2PN1NkQFKQ45FJK20iqiIiIiI9JZ6aEVEeimTe5dFREREBgIFtCIivXTvn57lta17mDVpHFee/dF0N0dERKTfqdu1iZade6jLHgecm+7myACkgFZEpJfWPnIXBzavYe2UOfA9BbQiIpIamTwiSNdKSTXNoRURERER6ce03oRIfApoRUREREREJCMpoBUREREREZGMpIBWREREREREMpICWhEREREREclIWuVYREREZADJ5BVxRUR6Sj20IiIiIgOIVsQVkZOJAloRERERERHJSBpyLCJd0vC12C66+ees3naYeWXD090UERGRfknXSkm1jOyhNbP3m9laM2sxs4NmtszMuvwtMbPrzWyDmbWa2R4zu9PM8qPyTDCzFWZWb2bHzOxFM7swlXWJ9HcaviYiIiIi/VHGBbRmdj7wGPAmcCXwTeByYEUX5a4BfgWsCuX/KXAD8IuIPNnAX4B5wOeADwN+4K9mdnoq6hIREREREZHeycQhx58HdgFXOueCAGZ2FHjAzGY5516LU+4LwCrn3CdCr/9sZjnArWb2JefcIWAxMB1Y5Jx7NlT3M0AN8KlQHcmuS0REREREJClOtqliGddDC8wHngkHsyHPhJ7PiVXAzHKBOcBfow49gxfUz4mouw14LpzBOXcUqAzXncy6RCSzPXf7Z9jxw/fy3O2fSXdTJAkefXkXdzyziUdf3pXupohIBtLfkNh0rex7J9tUsUzsoR0D1EalhV+XxCkzEu9cuyo3BjjonHMx8s1LQV0iIjGdbHdXuyuVn8uKV2o6Fi7RZy4iPaW/ISLpkYkBbQ7QHpngnAuYGUBunDLh9Pao9EDU8dwYecL5cqPyJqOumMysBBgV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\n",
      "text/plain": [
       "<Figure size 960x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(ncols=2, dpi=120, figsize=(8, 3), sharex=True)\n",
    "facets_info = [(\"mse\", 0, r\"Mean-squared error\", (-0.0006, 0.0001)),\n",
    "               (\"r**2\", 1, r\"$R^{2}$\", (0.80, 1.05))]\n",
    "\n",
    "for facet in facets_info:\n",
    "    facet_var, facet_id, facet_label, facet_ylim = facet\n",
    "    sns.scatterplot(\n",
    "        x=\"n\",\n",
    "        y=f\"{facet_var}_mean\",\n",
    "        data=filip_poly_cv_scores_df,\n",
    "        ax=ax[facet_id],\n",
    "    )\n",
    "    ax[facet_id].errorbar(\n",
    "        filip_poly_cv_scores_df[\"n\"],\n",
    "        filip_poly_cv_scores_df[f\"{facet_var}_mean\"],\n",
    "        yerr=filip_poly_cv_scores_df[f\"{facet_var}_sd\"],\n",
    "    )\n",
    "    ax[facet_id].axvline(x=10, linestyle=\"--\", color=\"k\")  # \"True\" polynomial degree\n",
    "    ax[facet_id].set_ylim(facet_ylim)\n",
    "    ax[facet_id].set_xlabel(r\"Polynomial degree\")\n",
    "    ax[facet_id].set_ylabel(facet_label)\n",
    "\n",
    "fig.tight_layout();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Is there anything you notice about the error bars?**"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We stored the trace for the MSE and $R^2$ cross-validation scores for all the polynomial summation fits. Let's extract those into their own data frame for further investigation. These are stored as lists *within* the data frame:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>n</th>\n",
       "      <th>mse_trace</th>\n",
       "      <th>mse_mean</th>\n",
       "      <th>mse_sd</th>\n",
       "      <th>r**2_trace</th>\n",
       "      <th>r**2_mean</th>\n",
       "      <th>r**2_sd</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>[-0.0002655000840979049, -0.000309608785706866...</td>\n",
       "      <td>-0.000387</td>\n",
       "      <td>0.000116</td>\n",
       "      <td>[0.9353067868727876, 0.8848520918188416, 0.887...</td>\n",
       "      <td>0.811523</td>\n",
       "      <td>0.226243</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>[-0.00035093502422535417, -0.00036404505354861...</td>\n",
       "      <td>-0.000299</td>\n",
       "      <td>0.000109</td>\n",
       "      <td>[0.8408292357153826, 0.8818539134095313, 0.955...</td>\n",
       "      <td>0.870893</td>\n",
       "      <td>0.111087</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>[-0.0003450857688101075, -0.000116658859101333...</td>\n",
       "      <td>-0.000219</td>\n",
       "      <td>0.000072</td>\n",
       "      <td>[0.8944191578158613, 0.961863453035723, 0.8439...</td>\n",
       "      <td>0.895758</td>\n",
       "      <td>0.127610</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>[-6.66109435229475e-05, -0.0001151911752646528...</td>\n",
       "      <td>-0.000092</td>\n",
       "      <td>0.000035</td>\n",
       "      <td>[0.9683861428046507, 0.9618946871441366, 0.970...</td>\n",
       "      <td>0.959789</td>\n",
       "      <td>0.031457</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>[-8.291874961374096e-05, -5.835601456815859e-0...</td>\n",
       "      <td>-0.000102</td>\n",
       "      <td>0.000079</td>\n",
       "      <td>[0.959740135547202, 0.9828188896657719, 0.9857...</td>\n",
       "      <td>0.951594</td>\n",
       "      <td>0.106321</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   n                                          mse_trace  mse_mean    mse_sd  \\\n",
       "0  1  [-0.0002655000840979049, -0.000309608785706866... -0.000387  0.000116   \n",
       "1  2  [-0.00035093502422535417, -0.00036404505354861... -0.000299  0.000109   \n",
       "2  3  [-0.0003450857688101075, -0.000116658859101333... -0.000219  0.000072   \n",
       "3  4  [-6.66109435229475e-05, -0.0001151911752646528... -0.000092  0.000035   \n",
       "4  5  [-8.291874961374096e-05, -5.835601456815859e-0... -0.000102  0.000079   \n",
       "\n",
       "                                          r**2_trace  r**2_mean   r**2_sd  \n",
       "0  [0.9353067868727876, 0.8848520918188416, 0.887...   0.811523  0.226243  \n",
       "1  [0.8408292357153826, 0.8818539134095313, 0.955...   0.870893  0.111087  \n",
       "2  [0.8944191578158613, 0.961863453035723, 0.8439...   0.895758  0.127610  \n",
       "3  [0.9683861428046507, 0.9618946871441366, 0.970...   0.959789  0.031457  \n",
       "4  [0.959740135547202, 0.9828188896657719, 0.9857...   0.951594  0.106321  "
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "filip_poly_cv_scores_df.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "How can we extract these into a usable data frame without too much effort? We can extract an individual column as follows:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0    [-0.0002655000840979049, -0.000309608785706866...\n",
       "1    [-0.00035093502422535417, -0.00036404505354861...\n",
       "2    [-0.0003450857688101075, -0.000116658859101333...\n",
       "3    [-6.66109435229475e-05, -0.0001151911752646528...\n",
       "4    [-8.291874961374096e-05, -5.835601456815859e-0...\n",
       "Name: mse_trace, dtype: object"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "filip_poly_cv_scores_df[\"mse_trace\"].head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can use the `.tolist()` method to generate a list of these traces:\n",
    "\n",
    "```python\n",
    "filip_poly_cv_scores_df[\"mse_trace\"].tolist()\n",
    "```\n",
    "\n",
    "If we pass this into `pd.DataFrame()`, then we get the following:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "      <th>5</th>\n",
       "      <th>6</th>\n",
       "      <th>7</th>\n",
       "      <th>8</th>\n",
       "      <th>9</th>\n",
       "      <th>...</th>\n",
       "      <th>990</th>\n",
       "      <th>991</th>\n",
       "      <th>992</th>\n",
       "      <th>993</th>\n",
       "      <th>994</th>\n",
       "      <th>995</th>\n",
       "      <th>996</th>\n",
       "      <th>997</th>\n",
       "      <th>998</th>\n",
       "      <th>999</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-0.000266</td>\n",
       "      <td>-0.000310</td>\n",
       "      <td>-0.000337</td>\n",
       "      <td>-0.000653</td>\n",
       "      <td>-0.000298</td>\n",
       "      <td>-0.000556</td>\n",
       "      <td>-0.000298</td>\n",
       "      <td>-0.000465</td>\n",
       "      <td>-0.000446</td>\n",
       "      <td>-0.000272</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000455</td>\n",
       "      <td>-0.000326</td>\n",
       "      <td>-0.000377</td>\n",
       "      <td>-0.000279</td>\n",
       "      <td>-0.000418</td>\n",
       "      <td>-0.000349</td>\n",
       "      <td>-0.000544</td>\n",
       "      <td>-0.000475</td>\n",
       "      <td>-0.000351</td>\n",
       "      <td>-0.000312</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>-0.000351</td>\n",
       "      <td>-0.000364</td>\n",
       "      <td>-0.000131</td>\n",
       "      <td>-0.000279</td>\n",
       "      <td>-0.000191</td>\n",
       "      <td>-0.000481</td>\n",
       "      <td>-0.000400</td>\n",
       "      <td>-0.000228</td>\n",
       "      <td>-0.000265</td>\n",
       "      <td>-0.000296</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000251</td>\n",
       "      <td>-0.000388</td>\n",
       "      <td>-0.000300</td>\n",
       "      <td>-0.000239</td>\n",
       "      <td>-0.000404</td>\n",
       "      <td>-0.000140</td>\n",
       "      <td>-0.000368</td>\n",
       "      <td>-0.000187</td>\n",
       "      <td>-0.000459</td>\n",
       "      <td>-0.000199</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-0.000345</td>\n",
       "      <td>-0.000117</td>\n",
       "      <td>-0.000318</td>\n",
       "      <td>-0.000110</td>\n",
       "      <td>-0.000236</td>\n",
       "      <td>-0.000163</td>\n",
       "      <td>-0.000301</td>\n",
       "      <td>-0.000214</td>\n",
       "      <td>-0.000204</td>\n",
       "      <td>-0.000155</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000227</td>\n",
       "      <td>-0.000231</td>\n",
       "      <td>-0.000217</td>\n",
       "      <td>-0.000254</td>\n",
       "      <td>-0.000189</td>\n",
       "      <td>-0.000215</td>\n",
       "      <td>-0.000243</td>\n",
       "      <td>-0.000130</td>\n",
       "      <td>-0.000171</td>\n",
       "      <td>-0.000371</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>-0.000067</td>\n",
       "      <td>-0.000115</td>\n",
       "      <td>-0.000096</td>\n",
       "      <td>-0.000123</td>\n",
       "      <td>-0.000043</td>\n",
       "      <td>-0.000045</td>\n",
       "      <td>-0.000095</td>\n",
       "      <td>-0.000116</td>\n",
       "      <td>-0.000138</td>\n",
       "      <td>-0.000044</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000077</td>\n",
       "      <td>-0.000101</td>\n",
       "      <td>-0.000132</td>\n",
       "      <td>-0.000139</td>\n",
       "      <td>-0.000082</td>\n",
       "      <td>-0.000101</td>\n",
       "      <td>-0.000061</td>\n",
       "      <td>-0.000110</td>\n",
       "      <td>-0.000078</td>\n",
       "      <td>-0.000050</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-0.000083</td>\n",
       "      <td>-0.000058</td>\n",
       "      <td>-0.000071</td>\n",
       "      <td>-0.000083</td>\n",
       "      <td>-0.000070</td>\n",
       "      <td>-0.000117</td>\n",
       "      <td>-0.000101</td>\n",
       "      <td>-0.000068</td>\n",
       "      <td>-0.000136</td>\n",
       "      <td>-0.000192</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000059</td>\n",
       "      <td>-0.000076</td>\n",
       "      <td>-0.000151</td>\n",
       "      <td>-0.000113</td>\n",
       "      <td>-0.000180</td>\n",
       "      <td>-0.000124</td>\n",
       "      <td>-0.000069</td>\n",
       "      <td>-0.000052</td>\n",
       "      <td>-0.000049</td>\n",
       "      <td>-0.000122</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>-0.000078</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000038</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000246</td>\n",
       "      <td>-0.000038</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000048</td>\n",
       "      <td>-0.000036</td>\n",
       "      <td>-0.000053</td>\n",
       "      <td>-0.000072</td>\n",
       "      <td>-0.000023</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000055</td>\n",
       "      <td>-0.000023</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>-0.000049</td>\n",
       "      <td>-0.000035</td>\n",
       "      <td>-0.000039</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000040</td>\n",
       "      <td>-0.000041</td>\n",
       "      <td>-0.000031</td>\n",
       "      <td>-0.000049</td>\n",
       "      <td>-0.000046</td>\n",
       "      <td>-0.000042</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000059</td>\n",
       "      <td>-0.000044</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>-0.000052</td>\n",
       "      <td>-0.000043</td>\n",
       "      <td>-0.000052</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000030</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000131</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000031</td>\n",
       "      <td>-0.000029</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000022</td>\n",
       "      <td>-0.000102</td>\n",
       "      <td>-0.000033</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000023</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000062</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000026</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000027</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000466</td>\n",
       "      <td>-0.000064</td>\n",
       "      <td>-0.000019</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000009</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000055</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000019</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000858</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>-0.000011</td>\n",
       "      <td>-0.000054</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000022</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000031</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000008</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000011</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000002</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000028</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000121</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000027</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000144</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000017</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000027</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000022</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000035</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000009</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>15 rows × 1000 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "         0         1         2         3         4         5         6    \\\n",
       "0  -0.000266 -0.000310 -0.000337 -0.000653 -0.000298 -0.000556 -0.000298   \n",
       "1  -0.000351 -0.000364 -0.000131 -0.000279 -0.000191 -0.000481 -0.000400   \n",
       "2  -0.000345 -0.000117 -0.000318 -0.000110 -0.000236 -0.000163 -0.000301   \n",
       "3  -0.000067 -0.000115 -0.000096 -0.000123 -0.000043 -0.000045 -0.000095   \n",
       "4  -0.000083 -0.000058 -0.000071 -0.000083 -0.000070 -0.000117 -0.000101   \n",
       "5  -0.000020 -0.000030 -0.000078 -0.000024 -0.000038 -0.000008 -0.000246   \n",
       "6  -0.000049 -0.000035 -0.000039 -0.000024 -0.000040 -0.000041 -0.000031   \n",
       "7  -0.000020 -0.000131 -0.000021 -0.000021 -0.000009 -0.000013 -0.000031   \n",
       "8  -0.000006 -0.000010 -0.000062 -0.000008 -0.000050 -0.000026 -0.000014   \n",
       "9  -0.000013 -0.000055 -0.000017 -0.000010 -0.000017 -0.000006 -0.000003   \n",
       "10 -0.000011 -0.000054 -0.000012 -0.000009 -0.000010 -0.000022 -0.000010   \n",
       "11 -0.000013 -0.000008 -0.000012 -0.000015 -0.000007 -0.000012 -0.000014   \n",
       "12 -0.000024 -0.000012 -0.000002 -0.000009 -0.000010 -0.000003 -0.000004   \n",
       "13 -0.000013 -0.000010 -0.000027 -0.000014 -0.000004 -0.000005 -0.000005   \n",
       "14 -0.000014 -0.000027 -0.000014 -0.000007 -0.000022 -0.000004 -0.000016   \n",
       "\n",
       "         7         8         9      ...          990       991       992  \\\n",
       "0  -0.000465 -0.000446 -0.000272    ...    -0.000455 -0.000326 -0.000377   \n",
       "1  -0.000228 -0.000265 -0.000296    ...    -0.000251 -0.000388 -0.000300   \n",
       "2  -0.000214 -0.000204 -0.000155    ...    -0.000227 -0.000231 -0.000217   \n",
       "3  -0.000116 -0.000138 -0.000044    ...    -0.000077 -0.000101 -0.000132   \n",
       "4  -0.000068 -0.000136 -0.000192    ...    -0.000059 -0.000076 -0.000151   \n",
       "5  -0.000038 -0.000050 -0.000037    ...    -0.000024 -0.000048 -0.000036   \n",
       "6  -0.000049 -0.000046 -0.000042    ...    -0.000059 -0.000044 -0.000037   \n",
       "7  -0.000029 -0.000018 -0.000015    ...    -0.000022 -0.000102 -0.000033   \n",
       "8  -0.000007 -0.000027 -0.000009    ...    -0.000012 -0.000024 -0.000466   \n",
       "9  -0.000009 -0.000016 -0.000020    ...    -0.000018 -0.000015 -0.000005   \n",
       "10 -0.000004 -0.000016 -0.000007    ...    -0.000008 -0.000014 -0.000004   \n",
       "11 -0.000010 -0.000015 -0.000014    ...    -0.000005 -0.000012 -0.000014   \n",
       "12 -0.000016 -0.000028 -0.000016    ...    -0.000014 -0.000015 -0.000009   \n",
       "13 -0.000015 -0.000021 -0.000013    ...    -0.000006 -0.000016 -0.000009   \n",
       "14 -0.000006 -0.000008 -0.000018    ...    -0.000008 -0.000021 -0.000008   \n",
       "\n",
       "         993       994       995       996       997       998       999  \n",
       "0  -0.000279 -0.000418 -0.000349 -0.000544 -0.000475 -0.000351 -0.000312  \n",
       "1  -0.000239 -0.000404 -0.000140 -0.000368 -0.000187 -0.000459 -0.000199  \n",
       "2  -0.000254 -0.000189 -0.000215 -0.000243 -0.000130 -0.000171 -0.000371  \n",
       "3  -0.000139 -0.000082 -0.000101 -0.000061 -0.000110 -0.000078 -0.000050  \n",
       "4  -0.000113 -0.000180 -0.000124 -0.000069 -0.000052 -0.000049 -0.000122  \n",
       "5  -0.000053 -0.000072 -0.000023 -0.000017 -0.000050 -0.000055 -0.000023  \n",
       "6  -0.000052 -0.000043 -0.000052 -0.000020 -0.000037 -0.000021 -0.000030  \n",
       "7  -0.000020 -0.000017 -0.000013 -0.000018 -0.000011 -0.000016 -0.000023  \n",
       "8  -0.000064 -0.000019 -0.000021 -0.000005 -0.000013 -0.000009 -0.000009  \n",
       "9  -0.000019 -0.000021 -0.000013 -0.000016 -0.000006 -0.000004 -0.000858  \n",
       "10 -0.000015 -0.000015 -0.000006 -0.000018 -0.000031 -0.000003 -0.000008  \n",
       "11 -0.000024 -0.000004 -0.000003 -0.000008 -0.000011 -0.000014 -0.000011  \n",
       "12 -0.000008 -0.000008 -0.000020 -0.000012 -0.000006 -0.000006 -0.000121  \n",
       "13 -0.000007 -0.000017 -0.000144 -0.000013 -0.000014 -0.000008 -0.000017  \n",
       "14 -0.000035 -0.000013 -0.000018 -0.000006 -0.000010 -0.000015 -0.000009  \n",
       "\n",
       "[15 rows x 1000 columns]"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.DataFrame(filip_poly_cv_scores_df[\"mse_trace\"].tolist())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can work with this! We just need to reshape the data. First, we need to restore the polynomial degree column `n`. We can use the `.assign()` method to achieve this:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "      <th>5</th>\n",
       "      <th>6</th>\n",
       "      <th>7</th>\n",
       "      <th>8</th>\n",
       "      <th>9</th>\n",
       "      <th>...</th>\n",
       "      <th>991</th>\n",
       "      <th>992</th>\n",
       "      <th>993</th>\n",
       "      <th>994</th>\n",
       "      <th>995</th>\n",
       "      <th>996</th>\n",
       "      <th>997</th>\n",
       "      <th>998</th>\n",
       "      <th>999</th>\n",
       "      <th>n</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-0.000266</td>\n",
       "      <td>-0.000310</td>\n",
       "      <td>-0.000337</td>\n",
       "      <td>-0.000653</td>\n",
       "      <td>-0.000298</td>\n",
       "      <td>-0.000556</td>\n",
       "      <td>-0.000298</td>\n",
       "      <td>-0.000465</td>\n",
       "      <td>-0.000446</td>\n",
       "      <td>-0.000272</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000326</td>\n",
       "      <td>-0.000377</td>\n",
       "      <td>-0.000279</td>\n",
       "      <td>-0.000418</td>\n",
       "      <td>-0.000349</td>\n",
       "      <td>-0.000544</td>\n",
       "      <td>-0.000475</td>\n",
       "      <td>-0.000351</td>\n",
       "      <td>-0.000312</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>-0.000351</td>\n",
       "      <td>-0.000364</td>\n",
       "      <td>-0.000131</td>\n",
       "      <td>-0.000279</td>\n",
       "      <td>-0.000191</td>\n",
       "      <td>-0.000481</td>\n",
       "      <td>-0.000400</td>\n",
       "      <td>-0.000228</td>\n",
       "      <td>-0.000265</td>\n",
       "      <td>-0.000296</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000388</td>\n",
       "      <td>-0.000300</td>\n",
       "      <td>-0.000239</td>\n",
       "      <td>-0.000404</td>\n",
       "      <td>-0.000140</td>\n",
       "      <td>-0.000368</td>\n",
       "      <td>-0.000187</td>\n",
       "      <td>-0.000459</td>\n",
       "      <td>-0.000199</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-0.000345</td>\n",
       "      <td>-0.000117</td>\n",
       "      <td>-0.000318</td>\n",
       "      <td>-0.000110</td>\n",
       "      <td>-0.000236</td>\n",
       "      <td>-0.000163</td>\n",
       "      <td>-0.000301</td>\n",
       "      <td>-0.000214</td>\n",
       "      <td>-0.000204</td>\n",
       "      <td>-0.000155</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000231</td>\n",
       "      <td>-0.000217</td>\n",
       "      <td>-0.000254</td>\n",
       "      <td>-0.000189</td>\n",
       "      <td>-0.000215</td>\n",
       "      <td>-0.000243</td>\n",
       "      <td>-0.000130</td>\n",
       "      <td>-0.000171</td>\n",
       "      <td>-0.000371</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>-0.000067</td>\n",
       "      <td>-0.000115</td>\n",
       "      <td>-0.000096</td>\n",
       "      <td>-0.000123</td>\n",
       "      <td>-0.000043</td>\n",
       "      <td>-0.000045</td>\n",
       "      <td>-0.000095</td>\n",
       "      <td>-0.000116</td>\n",
       "      <td>-0.000138</td>\n",
       "      <td>-0.000044</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000101</td>\n",
       "      <td>-0.000132</td>\n",
       "      <td>-0.000139</td>\n",
       "      <td>-0.000082</td>\n",
       "      <td>-0.000101</td>\n",
       "      <td>-0.000061</td>\n",
       "      <td>-0.000110</td>\n",
       "      <td>-0.000078</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-0.000083</td>\n",
       "      <td>-0.000058</td>\n",
       "      <td>-0.000071</td>\n",
       "      <td>-0.000083</td>\n",
       "      <td>-0.000070</td>\n",
       "      <td>-0.000117</td>\n",
       "      <td>-0.000101</td>\n",
       "      <td>-0.000068</td>\n",
       "      <td>-0.000136</td>\n",
       "      <td>-0.000192</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000076</td>\n",
       "      <td>-0.000151</td>\n",
       "      <td>-0.000113</td>\n",
       "      <td>-0.000180</td>\n",
       "      <td>-0.000124</td>\n",
       "      <td>-0.000069</td>\n",
       "      <td>-0.000052</td>\n",
       "      <td>-0.000049</td>\n",
       "      <td>-0.000122</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>-0.000078</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000038</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000246</td>\n",
       "      <td>-0.000038</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000048</td>\n",
       "      <td>-0.000036</td>\n",
       "      <td>-0.000053</td>\n",
       "      <td>-0.000072</td>\n",
       "      <td>-0.000023</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000055</td>\n",
       "      <td>-0.000023</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>-0.000049</td>\n",
       "      <td>-0.000035</td>\n",
       "      <td>-0.000039</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000040</td>\n",
       "      <td>-0.000041</td>\n",
       "      <td>-0.000031</td>\n",
       "      <td>-0.000049</td>\n",
       "      <td>-0.000046</td>\n",
       "      <td>-0.000042</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000044</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>-0.000052</td>\n",
       "      <td>-0.000043</td>\n",
       "      <td>-0.000052</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000131</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000031</td>\n",
       "      <td>-0.000029</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000102</td>\n",
       "      <td>-0.000033</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000023</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000062</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000026</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000027</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000466</td>\n",
       "      <td>-0.000064</td>\n",
       "      <td>-0.000019</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000055</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000019</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000858</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>-0.000011</td>\n",
       "      <td>-0.000054</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000022</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000031</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>12</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000002</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000028</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000121</td>\n",
       "      <td>13</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000027</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000144</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>14</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000027</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000022</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000035</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>15</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>15 rows × 1001 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "           0         1         2         3         4         5         6  \\\n",
       "0  -0.000266 -0.000310 -0.000337 -0.000653 -0.000298 -0.000556 -0.000298   \n",
       "1  -0.000351 -0.000364 -0.000131 -0.000279 -0.000191 -0.000481 -0.000400   \n",
       "2  -0.000345 -0.000117 -0.000318 -0.000110 -0.000236 -0.000163 -0.000301   \n",
       "3  -0.000067 -0.000115 -0.000096 -0.000123 -0.000043 -0.000045 -0.000095   \n",
       "4  -0.000083 -0.000058 -0.000071 -0.000083 -0.000070 -0.000117 -0.000101   \n",
       "5  -0.000020 -0.000030 -0.000078 -0.000024 -0.000038 -0.000008 -0.000246   \n",
       "6  -0.000049 -0.000035 -0.000039 -0.000024 -0.000040 -0.000041 -0.000031   \n",
       "7  -0.000020 -0.000131 -0.000021 -0.000021 -0.000009 -0.000013 -0.000031   \n",
       "8  -0.000006 -0.000010 -0.000062 -0.000008 -0.000050 -0.000026 -0.000014   \n",
       "9  -0.000013 -0.000055 -0.000017 -0.000010 -0.000017 -0.000006 -0.000003   \n",
       "10 -0.000011 -0.000054 -0.000012 -0.000009 -0.000010 -0.000022 -0.000010   \n",
       "11 -0.000013 -0.000008 -0.000012 -0.000015 -0.000007 -0.000012 -0.000014   \n",
       "12 -0.000024 -0.000012 -0.000002 -0.000009 -0.000010 -0.000003 -0.000004   \n",
       "13 -0.000013 -0.000010 -0.000027 -0.000014 -0.000004 -0.000005 -0.000005   \n",
       "14 -0.000014 -0.000027 -0.000014 -0.000007 -0.000022 -0.000004 -0.000016   \n",
       "\n",
       "           7         8         9 ...       991       992       993       994  \\\n",
       "0  -0.000465 -0.000446 -0.000272 ... -0.000326 -0.000377 -0.000279 -0.000418   \n",
       "1  -0.000228 -0.000265 -0.000296 ... -0.000388 -0.000300 -0.000239 -0.000404   \n",
       "2  -0.000214 -0.000204 -0.000155 ... -0.000231 -0.000217 -0.000254 -0.000189   \n",
       "3  -0.000116 -0.000138 -0.000044 ... -0.000101 -0.000132 -0.000139 -0.000082   \n",
       "4  -0.000068 -0.000136 -0.000192 ... -0.000076 -0.000151 -0.000113 -0.000180   \n",
       "5  -0.000038 -0.000050 -0.000037 ... -0.000048 -0.000036 -0.000053 -0.000072   \n",
       "6  -0.000049 -0.000046 -0.000042 ... -0.000044 -0.000037 -0.000052 -0.000043   \n",
       "7  -0.000029 -0.000018 -0.000015 ... -0.000102 -0.000033 -0.000020 -0.000017   \n",
       "8  -0.000007 -0.000027 -0.000009 ... -0.000024 -0.000466 -0.000064 -0.000019   \n",
       "9  -0.000009 -0.000016 -0.000020 ... -0.000015 -0.000005 -0.000019 -0.000021   \n",
       "10 -0.000004 -0.000016 -0.000007 ... -0.000014 -0.000004 -0.000015 -0.000015   \n",
       "11 -0.000010 -0.000015 -0.000014 ... -0.000012 -0.000014 -0.000024 -0.000004   \n",
       "12 -0.000016 -0.000028 -0.000016 ... -0.000015 -0.000009 -0.000008 -0.000008   \n",
       "13 -0.000015 -0.000021 -0.000013 ... -0.000016 -0.000009 -0.000007 -0.000017   \n",
       "14 -0.000006 -0.000008 -0.000018 ... -0.000021 -0.000008 -0.000035 -0.000013   \n",
       "\n",
       "         995       996       997       998       999   n  \n",
       "0  -0.000349 -0.000544 -0.000475 -0.000351 -0.000312   1  \n",
       "1  -0.000140 -0.000368 -0.000187 -0.000459 -0.000199   2  \n",
       "2  -0.000215 -0.000243 -0.000130 -0.000171 -0.000371   3  \n",
       "3  -0.000101 -0.000061 -0.000110 -0.000078 -0.000050   4  \n",
       "4  -0.000124 -0.000069 -0.000052 -0.000049 -0.000122   5  \n",
       "5  -0.000023 -0.000017 -0.000050 -0.000055 -0.000023   6  \n",
       "6  -0.000052 -0.000020 -0.000037 -0.000021 -0.000030   7  \n",
       "7  -0.000013 -0.000018 -0.000011 -0.000016 -0.000023   8  \n",
       "8  -0.000021 -0.000005 -0.000013 -0.000009 -0.000009   9  \n",
       "9  -0.000013 -0.000016 -0.000006 -0.000004 -0.000858  10  \n",
       "10 -0.000006 -0.000018 -0.000031 -0.000003 -0.000008  11  \n",
       "11 -0.000003 -0.000008 -0.000011 -0.000014 -0.000011  12  \n",
       "12 -0.000020 -0.000012 -0.000006 -0.000006 -0.000121  13  \n",
       "13 -0.000144 -0.000013 -0.000014 -0.000008 -0.000017  14  \n",
       "14 -0.000018 -0.000006 -0.000010 -0.000015 -0.000009  15  \n",
       "\n",
       "[15 rows x 1001 columns]"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.DataFrame(filip_poly_cv_scores_df[\"mse_trace\"].tolist()) \\\n",
    "    .assign(n=range(1, 16))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We add a `score` label so that we know which cross-validation score we're dealing with:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>0</th>\n",
       "      <th>1</th>\n",
       "      <th>2</th>\n",
       "      <th>3</th>\n",
       "      <th>4</th>\n",
       "      <th>5</th>\n",
       "      <th>6</th>\n",
       "      <th>7</th>\n",
       "      <th>8</th>\n",
       "      <th>9</th>\n",
       "      <th>...</th>\n",
       "      <th>992</th>\n",
       "      <th>993</th>\n",
       "      <th>994</th>\n",
       "      <th>995</th>\n",
       "      <th>996</th>\n",
       "      <th>997</th>\n",
       "      <th>998</th>\n",
       "      <th>999</th>\n",
       "      <th>n</th>\n",
       "      <th>score</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-0.000266</td>\n",
       "      <td>-0.000310</td>\n",
       "      <td>-0.000337</td>\n",
       "      <td>-0.000653</td>\n",
       "      <td>-0.000298</td>\n",
       "      <td>-0.000556</td>\n",
       "      <td>-0.000298</td>\n",
       "      <td>-0.000465</td>\n",
       "      <td>-0.000446</td>\n",
       "      <td>-0.000272</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000377</td>\n",
       "      <td>-0.000279</td>\n",
       "      <td>-0.000418</td>\n",
       "      <td>-0.000349</td>\n",
       "      <td>-0.000544</td>\n",
       "      <td>-0.000475</td>\n",
       "      <td>-0.000351</td>\n",
       "      <td>-0.000312</td>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>-0.000351</td>\n",
       "      <td>-0.000364</td>\n",
       "      <td>-0.000131</td>\n",
       "      <td>-0.000279</td>\n",
       "      <td>-0.000191</td>\n",
       "      <td>-0.000481</td>\n",
       "      <td>-0.000400</td>\n",
       "      <td>-0.000228</td>\n",
       "      <td>-0.000265</td>\n",
       "      <td>-0.000296</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000300</td>\n",
       "      <td>-0.000239</td>\n",
       "      <td>-0.000404</td>\n",
       "      <td>-0.000140</td>\n",
       "      <td>-0.000368</td>\n",
       "      <td>-0.000187</td>\n",
       "      <td>-0.000459</td>\n",
       "      <td>-0.000199</td>\n",
       "      <td>2</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-0.000345</td>\n",
       "      <td>-0.000117</td>\n",
       "      <td>-0.000318</td>\n",
       "      <td>-0.000110</td>\n",
       "      <td>-0.000236</td>\n",
       "      <td>-0.000163</td>\n",
       "      <td>-0.000301</td>\n",
       "      <td>-0.000214</td>\n",
       "      <td>-0.000204</td>\n",
       "      <td>-0.000155</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000217</td>\n",
       "      <td>-0.000254</td>\n",
       "      <td>-0.000189</td>\n",
       "      <td>-0.000215</td>\n",
       "      <td>-0.000243</td>\n",
       "      <td>-0.000130</td>\n",
       "      <td>-0.000171</td>\n",
       "      <td>-0.000371</td>\n",
       "      <td>3</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>-0.000067</td>\n",
       "      <td>-0.000115</td>\n",
       "      <td>-0.000096</td>\n",
       "      <td>-0.000123</td>\n",
       "      <td>-0.000043</td>\n",
       "      <td>-0.000045</td>\n",
       "      <td>-0.000095</td>\n",
       "      <td>-0.000116</td>\n",
       "      <td>-0.000138</td>\n",
       "      <td>-0.000044</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000132</td>\n",
       "      <td>-0.000139</td>\n",
       "      <td>-0.000082</td>\n",
       "      <td>-0.000101</td>\n",
       "      <td>-0.000061</td>\n",
       "      <td>-0.000110</td>\n",
       "      <td>-0.000078</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>4</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-0.000083</td>\n",
       "      <td>-0.000058</td>\n",
       "      <td>-0.000071</td>\n",
       "      <td>-0.000083</td>\n",
       "      <td>-0.000070</td>\n",
       "      <td>-0.000117</td>\n",
       "      <td>-0.000101</td>\n",
       "      <td>-0.000068</td>\n",
       "      <td>-0.000136</td>\n",
       "      <td>-0.000192</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000151</td>\n",
       "      <td>-0.000113</td>\n",
       "      <td>-0.000180</td>\n",
       "      <td>-0.000124</td>\n",
       "      <td>-0.000069</td>\n",
       "      <td>-0.000052</td>\n",
       "      <td>-0.000049</td>\n",
       "      <td>-0.000122</td>\n",
       "      <td>5</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>-0.000078</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000038</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000246</td>\n",
       "      <td>-0.000038</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000036</td>\n",
       "      <td>-0.000053</td>\n",
       "      <td>-0.000072</td>\n",
       "      <td>-0.000023</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000055</td>\n",
       "      <td>-0.000023</td>\n",
       "      <td>6</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>-0.000049</td>\n",
       "      <td>-0.000035</td>\n",
       "      <td>-0.000039</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000040</td>\n",
       "      <td>-0.000041</td>\n",
       "      <td>-0.000031</td>\n",
       "      <td>-0.000049</td>\n",
       "      <td>-0.000046</td>\n",
       "      <td>-0.000042</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>-0.000052</td>\n",
       "      <td>-0.000043</td>\n",
       "      <td>-0.000052</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>7</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000131</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000031</td>\n",
       "      <td>-0.000029</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000033</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000023</td>\n",
       "      <td>8</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000062</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000026</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000027</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000466</td>\n",
       "      <td>-0.000064</td>\n",
       "      <td>-0.000019</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>9</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000055</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000019</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000858</td>\n",
       "      <td>10</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>-0.000011</td>\n",
       "      <td>-0.000054</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000022</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000031</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>11</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>12</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000002</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000028</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000020</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000121</td>\n",
       "      <td>13</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000027</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000021</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000144</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>14</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000027</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000007</td>\n",
       "      <td>-0.000022</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.000008</td>\n",
       "      <td>-0.000035</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000018</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>-0.000010</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000009</td>\n",
       "      <td>15</td>\n",
       "      <td>mse</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>15 rows × 1002 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "           0         1         2         3         4         5         6  \\\n",
       "0  -0.000266 -0.000310 -0.000337 -0.000653 -0.000298 -0.000556 -0.000298   \n",
       "1  -0.000351 -0.000364 -0.000131 -0.000279 -0.000191 -0.000481 -0.000400   \n",
       "2  -0.000345 -0.000117 -0.000318 -0.000110 -0.000236 -0.000163 -0.000301   \n",
       "3  -0.000067 -0.000115 -0.000096 -0.000123 -0.000043 -0.000045 -0.000095   \n",
       "4  -0.000083 -0.000058 -0.000071 -0.000083 -0.000070 -0.000117 -0.000101   \n",
       "5  -0.000020 -0.000030 -0.000078 -0.000024 -0.000038 -0.000008 -0.000246   \n",
       "6  -0.000049 -0.000035 -0.000039 -0.000024 -0.000040 -0.000041 -0.000031   \n",
       "7  -0.000020 -0.000131 -0.000021 -0.000021 -0.000009 -0.000013 -0.000031   \n",
       "8  -0.000006 -0.000010 -0.000062 -0.000008 -0.000050 -0.000026 -0.000014   \n",
       "9  -0.000013 -0.000055 -0.000017 -0.000010 -0.000017 -0.000006 -0.000003   \n",
       "10 -0.000011 -0.000054 -0.000012 -0.000009 -0.000010 -0.000022 -0.000010   \n",
       "11 -0.000013 -0.000008 -0.000012 -0.000015 -0.000007 -0.000012 -0.000014   \n",
       "12 -0.000024 -0.000012 -0.000002 -0.000009 -0.000010 -0.000003 -0.000004   \n",
       "13 -0.000013 -0.000010 -0.000027 -0.000014 -0.000004 -0.000005 -0.000005   \n",
       "14 -0.000014 -0.000027 -0.000014 -0.000007 -0.000022 -0.000004 -0.000016   \n",
       "\n",
       "           7         8         9  ...         992       993       994  \\\n",
       "0  -0.000465 -0.000446 -0.000272  ...   -0.000377 -0.000279 -0.000418   \n",
       "1  -0.000228 -0.000265 -0.000296  ...   -0.000300 -0.000239 -0.000404   \n",
       "2  -0.000214 -0.000204 -0.000155  ...   -0.000217 -0.000254 -0.000189   \n",
       "3  -0.000116 -0.000138 -0.000044  ...   -0.000132 -0.000139 -0.000082   \n",
       "4  -0.000068 -0.000136 -0.000192  ...   -0.000151 -0.000113 -0.000180   \n",
       "5  -0.000038 -0.000050 -0.000037  ...   -0.000036 -0.000053 -0.000072   \n",
       "6  -0.000049 -0.000046 -0.000042  ...   -0.000037 -0.000052 -0.000043   \n",
       "7  -0.000029 -0.000018 -0.000015  ...   -0.000033 -0.000020 -0.000017   \n",
       "8  -0.000007 -0.000027 -0.000009  ...   -0.000466 -0.000064 -0.000019   \n",
       "9  -0.000009 -0.000016 -0.000020  ...   -0.000005 -0.000019 -0.000021   \n",
       "10 -0.000004 -0.000016 -0.000007  ...   -0.000004 -0.000015 -0.000015   \n",
       "11 -0.000010 -0.000015 -0.000014  ...   -0.000014 -0.000024 -0.000004   \n",
       "12 -0.000016 -0.000028 -0.000016  ...   -0.000009 -0.000008 -0.000008   \n",
       "13 -0.000015 -0.000021 -0.000013  ...   -0.000009 -0.000007 -0.000017   \n",
       "14 -0.000006 -0.000008 -0.000018  ...   -0.000008 -0.000035 -0.000013   \n",
       "\n",
       "         995       996       997       998       999   n  score  \n",
       "0  -0.000349 -0.000544 -0.000475 -0.000351 -0.000312   1    mse  \n",
       "1  -0.000140 -0.000368 -0.000187 -0.000459 -0.000199   2    mse  \n",
       "2  -0.000215 -0.000243 -0.000130 -0.000171 -0.000371   3    mse  \n",
       "3  -0.000101 -0.000061 -0.000110 -0.000078 -0.000050   4    mse  \n",
       "4  -0.000124 -0.000069 -0.000052 -0.000049 -0.000122   5    mse  \n",
       "5  -0.000023 -0.000017 -0.000050 -0.000055 -0.000023   6    mse  \n",
       "6  -0.000052 -0.000020 -0.000037 -0.000021 -0.000030   7    mse  \n",
       "7  -0.000013 -0.000018 -0.000011 -0.000016 -0.000023   8    mse  \n",
       "8  -0.000021 -0.000005 -0.000013 -0.000009 -0.000009   9    mse  \n",
       "9  -0.000013 -0.000016 -0.000006 -0.000004 -0.000858  10    mse  \n",
       "10 -0.000006 -0.000018 -0.000031 -0.000003 -0.000008  11    mse  \n",
       "11 -0.000003 -0.000008 -0.000011 -0.000014 -0.000011  12    mse  \n",
       "12 -0.000020 -0.000012 -0.000006 -0.000006 -0.000121  13    mse  \n",
       "13 -0.000144 -0.000013 -0.000014 -0.000008 -0.000017  14    mse  \n",
       "14 -0.000018 -0.000006 -0.000010 -0.000015 -0.000009  15    mse  \n",
       "\n",
       "[15 rows x 1002 columns]"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.DataFrame(filip_poly_cv_scores_df[\"mse_trace\"].tolist()) \\\n",
    "    .assign(n=range(1, 16), score=\"mse\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We need to reshape the data frame so that the columns labeled 0 through 999 become rows. In the R `tidyverse` world, this is called `gather()`. In `pandas`, this is called `melt`:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>n</th>\n",
       "      <th>score</th>\n",
       "      <th>cv_run</th>\n",
       "      <th>value</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000266</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000345</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000067</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000083</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>6</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000020</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>7</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000049</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>8</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000020</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>9</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000006</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>10</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000013</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>11</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000011</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>12</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000013</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>13</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000024</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>14</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000013</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>15</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000014</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>1</td>\n",
       "      <td>-0.000310</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>2</td>\n",
       "      <td>mse</td>\n",
       "      <td>1</td>\n",
       "      <td>-0.000364</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>3</td>\n",
       "      <td>mse</td>\n",
       "      <td>1</td>\n",
       "      <td>-0.000117</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>4</td>\n",
       "      <td>mse</td>\n",
       "      <td>1</td>\n",
       "      <td>-0.000115</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>5</td>\n",
       "      <td>mse</td>\n",
       "      <td>1</td>\n",
       "      <td>-0.000058</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     n score cv_run     value\n",
       "0    1   mse      0 -0.000266\n",
       "1    2   mse      0 -0.000351\n",
       "2    3   mse      0 -0.000345\n",
       "3    4   mse      0 -0.000067\n",
       "4    5   mse      0 -0.000083\n",
       "5    6   mse      0 -0.000020\n",
       "6    7   mse      0 -0.000049\n",
       "7    8   mse      0 -0.000020\n",
       "8    9   mse      0 -0.000006\n",
       "9   10   mse      0 -0.000013\n",
       "10  11   mse      0 -0.000011\n",
       "11  12   mse      0 -0.000013\n",
       "12  13   mse      0 -0.000024\n",
       "13  14   mse      0 -0.000013\n",
       "14  15   mse      0 -0.000014\n",
       "15   1   mse      1 -0.000310\n",
       "16   2   mse      1 -0.000364\n",
       "17   3   mse      1 -0.000117\n",
       "18   4   mse      1 -0.000115\n",
       "19   5   mse      1 -0.000058"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.DataFrame(filip_poly_cv_scores_df[\"mse_trace\"].tolist()) \\\n",
    "    .assign(n=range(1, 16), score=\"mse\") \\\n",
    "    .melt(id_vars=[\"n\", \"score\"], value_vars=list(range(1000)),\n",
    "          var_name=\"cv_run\", value_name=\"value\") \\\n",
    "    .head(20)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can use sorting so that we see all the cross-validation scores for a single polynomial model together in one chunk:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>n</th>\n",
       "      <th>score</th>\n",
       "      <th>cv_run</th>\n",
       "      <th>value</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000266</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>1</td>\n",
       "      <td>-0.000310</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>2</td>\n",
       "      <td>-0.000337</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>3</td>\n",
       "      <td>-0.000653</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>4</td>\n",
       "      <td>-0.000298</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>5</td>\n",
       "      <td>-0.000556</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>6</td>\n",
       "      <td>-0.000298</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>7</td>\n",
       "      <td>-0.000465</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>8</td>\n",
       "      <td>-0.000446</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>1</td>\n",
       "      <td>mse</td>\n",
       "      <td>9</td>\n",
       "      <td>-0.000272</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   n score cv_run     value\n",
       "0  1   mse      0 -0.000266\n",
       "1  1   mse      1 -0.000310\n",
       "2  1   mse      2 -0.000337\n",
       "3  1   mse      3 -0.000653\n",
       "4  1   mse      4 -0.000298\n",
       "5  1   mse      5 -0.000556\n",
       "6  1   mse      6 -0.000298\n",
       "7  1   mse      7 -0.000465\n",
       "8  1   mse      8 -0.000446\n",
       "9  1   mse      9 -0.000272"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.DataFrame(filip_poly_cv_scores_df[\"mse_trace\"].tolist()) \\\n",
    "    .assign(n=range(1, 16), score=\"mse\") \\\n",
    "    .melt(id_vars=[\"n\", \"score\"], value_vars=list(range(1000)),\n",
    "          var_name=\"cv_run\", value_name=\"value\") \\\n",
    "    .sort_values([\"score\", \"n\", \"cv_run\"]) \\\n",
    "    .reset_index(drop=True) \\\n",
    "    .head(10)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Having pieced together the proper way to reshape this data, we repeat the same procedure for the `r**2_trace` column as well, then concatenate the two data frames together:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "filip_cv_scores_dist_df = pd.concat(\n",
    "    [\n",
    "        pd.DataFrame(filip_poly_cv_scores_df[\"mse_trace\"].tolist()) \\\n",
    "        .assign(n=[f\"{x}\" for x in range(1, 16)], score=\"mse\") \\\n",
    "        .melt(id_vars=[\"n\", \"score\"], value_vars=list(range(1000)),\n",
    "              var_name=\"cv_run\", value_name=\"value\") \\\n",
    "        .sort_values([\"score\", \"n\", \"cv_run\"]) \\\n",
    "        .reset_index(drop=True),\n",
    "        pd.DataFrame(filip_poly_cv_scores_df[\"r**2_trace\"].tolist()) \\\n",
    "        .assign(n=[f\"{x}\" for x in range(1, 16)], score=\"r**2\") \\\n",
    "        .melt(id_vars=[\"n\", \"score\"], value_vars=list(range(1000)),\n",
    "              var_name=\"cv_run\", value_name=\"value\") \\\n",
    "        .sort_values([\"score\", \"n\", \"cv_run\"]) \\\n",
    "        .reset_index(drop=True),\n",
    "    ]\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We now have a convenient data frame for accessing all of the cross-validation scores. We can look at the distribution of cross-validation scores to better understand what is going on. First, we look at the mean-squared error scores:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "mse_scores_dist = filip_cv_scores_dist_df \\\n",
    "    .query(\"score == 'mse' & n != '1'\") \\\n",
    "    .loc[:, [\"n\", \"value\"]] \\\n",
    "    .rename(columns={\"n\": \"Degree\"}) \\\n",
    "    .reset_index(drop=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Faceting over degrees 2 through 15, the distributions evolve as follows:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAv8AAAL2CAYAAADW9PnqAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAASdAAAEnQB3mYfeAAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvqOYd8AAAIABJREFUeJzs3X+UnWV56P3vRUIMDqIRGbCGmpGWWBJKSa2JaA7WEZAXXxGtHn9VsS0ci9ZWlPMCbxE8R9FVq0Lt6w/gKFgP2KqtuPxFcwJ1DUsm67TDaTMU448O1AhxCAaBEROSXO8fzzPpZmfPJJnsmT1739/PWqy99/3cz73vm7n2zvXcz/08OzITSZIkSb3vkE53QJIkSdLcMPmXJEmSCmHyL0mSJBXC5F+SJEkqhMm/JEmSVAiTf0mSJKkQJv+SJElSIUz+JUmSpEKY/EuSJEmFMPmXJEmSCmHyL0mSJBViYac7oJmJiHOBpcAvgKyLFwO3Z+a3O9WvToqIU4CXAI9NFgF/mZm/6FyvZKzuLSJeAJwG7AAeBw4DPpeZ/97RjhXOWJ1eRCwAvgH858x8qNP9KZmxureIeCuwhOp7tdFQZv5zB7o0b5n8d7e/bP4CjoizI+JNmfn5TnWqEyLiucAJmfn+hrKjgT8CPtyxjmmSsVqLiJXAisz8bw1lhwBXRMT7MnNX53onjNXpnA/c1ulOaA9j9Ymelpkf7XQnuoHLfnpMZt4MPCkifrXTfZlj/1dmXtdYkJk/oZpV1TxUcKye1SJWdwO3A8s70yVNp+BY3SMiTgAeBrZ0ui+aWuGxurvTHegWzvz3ps8Bf0LDjHdEvB44hv9YYnBHZt7esP25wKuACaqDwoeBbcBIZt4TEcuA3wCeBfQBmzPzxnrflwO/QvXBWwh8LzO/1tD2kcCbgAVUpyifAlyXmQ+2ccx3TFEebXwPtV+JsfrnU5QfDmxv4/uovUqM1cn3WgC8PjMvq5ebaH4rNVZz31UEJv89KTMfj4idk68j4tXArfVM+GTZWyLiwcy8OyIWAq/KzCsbth8DfAIYaWj6DcDFmflvDfVeyt4f9DMi4iWZeWtEHAq8Evh4PbtJRDwJuKRe4tCWD2tmTpX8L2hH+5odhcbqXst66qVAx2bm37bjPdR+JcZqg7cB17a5Tc2SgmN1UUS8hWrd/2HAVuCGzGy+BqB4Jv+9KwEi4inAo40feoDMvCEi3g7cTXW0f1PT9i0RcWtTm2NNH/oAnpqZ32va95aIeAdwK3AW1Ydvd8P27RHxbeAE4K7mjtczFEe3GNPuzPyLfYy7sZ1zgG/ub311TJGxWp+Wfy3wm8A48I7p6mteKC5WI2JFPVYvRu8uxcVq7RuZ+UDdzrOBPwXeu499imPy37smj6ZfCPxWRPxaizqTR8PPysy/abF9c9Pr4abXy4EXRcSxLfZdXD+eBCyrviOe4DCqL4a9O555U6vyA1EnVodn5l5fLJp3iozVzPw+8AGAiDiO6oLf9zb+I6l5p6hYrZf7/C5wyYHuq44rKlbr/f686fW9EfHViDgtM9fNpM1eZfLf+44Crmk+6p+h5tNzRwFfyMwN0+wzkZlXteG991u9vvDs5i8CzXvFxeqkzPxhRNwEvAL4Sif6oANSSqy+HfjULCwj0twpJVZbysx/jIg/Bkz+G5j896B6/d7knZy2AscB033wd06zbTpbgZOB6T74Tz3QRg9yKcWTqP7BunK6epofSozViDgzM1stR/tX4KUH2gfNjdJiNSKeTLUs45CmWdvnA8+MiMeoLtp89ED7otlVWqzW+xwJ7MrWvz/h2dQmJv+96Y3A5MU3t1OtefvONPV/HBHPzsx7m8oP28f7fJdqnfKN09S5JyKel5n/uI+29pjpKb96/eF/Ba7OzJl+mWlulRirv0Xra1GOBu6bQXuaG0XFamb+nOpC3yeI6m4/X5kiydL8UFSs1g4FzgSe8PsGEXEU8NMZtNfTvM9/j4nqllu76vXEZOYjwI8i4rSmeic0rAG8GXhd0/Yjmsua1aeC10fEm5v2fWZUv7YL1S3Hzo+IJU11Xn1gI9svF1JdWPSzWWhbbVZwrH4zIv6o6T0CeDPw9Ta/l9qg4FhVlyk1VjNzCzBQn7FqdC7gXdSahEv5ulM9+/JM4LHJIqqj9O9k5j+0qP8G4JeByVO0D2TmXzdsXw6cQ3UP3kOoTgNuBW7LzPujvsdvZu61HjkizqQ69fdwXfQY8NmG23odQfVLuxNU9xheBPx9Oy/GjYjfoVovPdJi892ZeUu73ksHxljdW0Q8D3gZ1QV3v6jf54stZt40h4zVfXPmf34wVvcW1Z2Nzqv7vpjq/8fXMvOf2vk+vcDkX1OKiPOo1nQaJJrXjFV1C2NV3cJY7V0u+xERcUhEvKyp7HDYc1pPmheMVXULY1XdwlgtjzP/AiAiXgScAmwHdlGdNvtM+st4mmeMVXULY1Xdwlgti8m/JEmSVAiX/UiSJEmFMPmXJEmSCmHyL0mSJBXC5F+SJEkqhMn/FCJicUSsiIjFne6LNB1jVd3CWFW3MFbVyxZ2ugPz2HHA6OjoaKf7od4WbWjDWNVcMFbVLYxVdYt2xOoBc+ZfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpEDNO/iNiYURcGBF3R8TPI+KHEfHBiOhrqHNsRHwpIh6KiMci4o6IOLVFW+fV7WyPiPsi4qqIWNxUp21tSZIkSSU6mJn/TwHvBz4LnA1cBfwh8EmoDg6AbwKrgXcCbwR2ArdExPGTjUTE64BrgCHgHODjwAXAJxrqtK0tSZIkqVQLZ7JTRDwFOBf4YGb+WV28LiKOBC6NiD8AXgqsAAYz89Z6v3XAZuBtwIX1fhcCQ5l5fv36GxFxKHBZRFyUmQ8Cp7exLUmSJKlIM535nwCWAlc2lT9KdUBxGLAG2AHcNrkxMx8BhoHnA0TEIuBk4JamdtbV7Zxcv25nW5IkSVKRZjTzn5m7gS0AEbEAWAycArwH+Exm/iwijgG2ZmY27T5OtXwH4Bl1H8Zb1AHorx/b2dZeIqIfOKqp+Lip6kudYqyqWxir6hbGqkozo+S/yT9TLckB+BbVun+ARcDjLervqrfR8Nhcb1fT9na21coFwOWtNgwPD7NlyxaWLl3KwMAAQ0NDe7YNDg6yceNGxser44vly5fT19fHyMgIAH19faxZs4bh4WEmJiYAWLVqFRMTE2zatAmA/v5+TjzxRNavX7+n3bVr1zI2NsbmzZsBGBgYoL+/nw0bNlQDWbSItWvXMjIywrZt2wBYuXIlAKOjowAsWbKEVatWMTQ0xI4dOwBYvXo14+PjjI2NATimeTCmwcFBDpCx6piMVf+ujslYLe7v2otjmkGstkXsPZl+gA1ErACWUM38v5dq5v+dEXE98OLMXNZU/3rg1MwciIhlwBjw1sy8vqHOZPm5mXlDO9uaYgxTHfXfPDo6yooVK1rsJbVFHFBlY1WdY6yqWxir6hYHFKvtctAz/5l5V/309og4BPhARHyIao3+YS12WQRsr5/vqB+b603O0jfWa1dbrcYwTtNyoYiO/D2kaRmr6hbGqrqFsarSzOiC34g4JiLeFhHHNm36l7rNZwMPAEfWd9tpdDRwf/38QWA31Zr+5jo01GtnW5IkSVKRZnq3nydR3c//jU3lJ9WP9wJ3AAuAMyc3RsQRwAuo7tJDZm4H7gRe3tTOGVQz+XfWr9vZliRJklSkmd7t596I+Buq++cD/BNV4n8p8FeZeV9EjAN3AddFxCVUM/PvAhL4dENzHwFujIjPAzcBJwAXAddl5sN1nW+1sS1JkiSpSAez5v93gXcDb6W60PffgQ9QJeBk5s6IeBnwMeCjVGvvR4DTM/OeyUYy86aIOLxu67XAVqpf5r20oU7b2pIkSZJKNePkPzN3AB+s/5uqzmbgNfvR1rXAtfuo07a2JEmSpBLNdM2/JEmSpC5j8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCzDj5j4hDIuKiiPheRGyPiHsi4uqIeFpDnWMj4ksR8VBEPBYRd0TEqS3aOi8i7q7buS8iroqIxU112taWJEmSVKKDmfm/Cng/8NfAK4Crgd+rXxMRC4FvAquBdwJvBHYCt0TE8ZONRMTrgGuAIeAc4OPABcAnGuq0rS1JkiSpVAtnslNEHAW8HfhgZl5WF98SEQuAD0fEs4EV9X+DmXlrvd86YDPwNuDCer8LgaHMPL9+/Y2IOBS4LCIuyswHgdPb2JYkSZJUpJnO/D8VuAn4clP5v9aPTwfWADuA2yY3ZuYjwDDwfICIWAScDNzS1M46qgOTk+vX7WxLkiRJKtKMZv4z8wfAm1ps+m3gJ8BdwB8CWzMzm+qMUy3fAXhG3YfxFnUA+uvHY9rY1l4ioh84qqn4uKnqS51irKpbGKvqFsaqSjOj5L+ViPhNqvX478rMHfVM/OMtqu4CFtXPJx+b6+1q2t7Otlq5ALi81Ybh4WG2bNnC0qVLGRgYYGhoaM+2wcFBNm7cyPh4dXyxfPly+vr6GBkZAaCvr481a9YwPDzMxMQEAKtWrWJiYoJNmzYB0N/fz4knnsj69ev3tLt27VrGxsbYvHkzAAMDA/T397Nhw4ZqIIsWsXbtWkZGRti2bRsAK1euBGB0dBSAJUuWsGrVKoaGhtixYwcAq1evZnx8nLGxMQDHNA/GNDg4yAEyVh2Tserf1TEZq8X9XXtxTDOI1baIvSfTZ9BIxLHAHcA/Aa/MzIyI64EXZ+ayprrXA6dm5kBELAPGgLdm5vUNdSbLz83MG9rZ1hT9n+qo/+bR0VFWrFix7/8J0szEAVU2VtU5xqq6hbGqbnFAsdouBz3zHxFPp1pnfx/whoalOTuAw1rssgjY3lCHFvUmZ+kb67Wrrb1k5jhNy4UiOvL3kKZlrKpbGKvqFsaqSnNQP/IVEU8Gvg4kcGZmTjRsfgA4sr7bTqOjgfvr5w8Cu6nW9DfXoaFeO9uSJEmSinQwP/K1EPgiVbJ9WovbaN4BLADObNjnCOAFVHfpITO3A3cCL2/a9wyqmfw7Z6EtSZIkqUgHs+znOuA04DzgORHxnIZtPwO+RXXXn+si4hKqmfl3UZ0l+HRD3Y8AN0bE56luH3oCcBFwXWY+XNdpZ1uSJElSkQ4m+X9L/Xh9i23fzswXR8TLgI8BH6Vaez8CnJ6Z90xWzMybIuJw4N3Aa4GtVL/Me2lDnZ3takuSJEkq1YyT/8zc59UwmbkZeM1+1LsWuHau2pIkSZJKdFAX/EqSJEnqHib/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgqxsNMdkCRJ3WvZxV+fcts9HzprDnsiaX8c1Mx/RBwfEVdGxI9abDs2Ir4UEQ9FxGMRcUdEnNqi3nkRcXdEbI+I+yLiqohYPFttSZIkSaWa0cx/RJwGvA94AbCzuZ2IWAh8E3gq8E7gUeBdwC0R8euZ+b263uuAa4BrgXcDJ9XtHgH8XrvbkiRJkpqVdAZrpst+/hPwfeCy+vl7m7afDqwABjPzVoCIWAdsBt4GXFjXuxAYyszz69ffiIhDgcsi4qLMfLDNbUmSJKlA0yX4JZnRsp/MvCwz35KZ64FsUWUNsAO4rWGfR4Bh4PkAEbEIOBm4pWnfdVQHJSfPQluSJElSsWbrgt9jgK2Z2XxgMA6srp8/o37/8RZ1APpnoa2WIqIfOKqp+Ljp9pE6wVhVtzBW1S2MVZVmtpL/RcDjLcp31dtoeGyut6tpezvbmsoFwOWtNgwPD7NlyxaWLl3KwMAAQ0NDe7YNDg6yceNGxserY4zly5fT19fHyMgIAH19faxZs4bh4WEmJiYAWLVqFRMTE2zatAmA/v5+TjzxRNavX7+n3bVr1zI2NsbmzZsBGBgYoL+/nw0bNlSDWbSItWvXMjIywrZt2wBYuXIlAKOjowAsWbKEVatWMTQ0xI4dOwBYvXo14+PjjI2NATimeTCmwcFBDpCx6piMVf+u82pMl5y0k7//8SE88IvgjcdV/+xu/UVw7aYFfOCzX+UZi6u5u//5wwUctTg5/Vm7AThl5XOM1Xn8d+3FMU0Xq+ct3zVlrG7cuHG+xGpbxN4T6gfYQMQVwOWZGQ1l1wMvzsxlTXWvB07NzIGIWAaMAW/NzOsb6kyWn5uZN7SzrWnGMNVR/82jo6OsWLFiyvFLByn2XaWhsrGqzjFW1dJM11HP4kWUxqpa6vZYbZfZmvnfARzWonwRsL2hDi3qTc7SN9ZrV1stZeY4TUuGIjry95CmZayqWxir6hbGqkozW7/w+wBwZH23nUZHA/fXzx8EdlOt6W+uQ0O9drYlSZIkFWu2kv87gAXAmZMFEXEE1e8CDANk5nbgTuDlTfueQTWTf+cstCVJkiQVa7aW/XwLuAu4LiIuoZqZfxfVbUE/3VDvI8CNEfF54CbgBOAi4LrMfHgW2pIkSZKKNSvJf2bujIiXAR8DPkq19n4EOD0z72mod1NEHE71i7yvBbYCHwcunY22JEmSpJIddPKfmVcAV7Qo3wy8Zj/2vxa4dh912taWJEmSVKrZWvMvSZIkaZ4x+ZckSZIKYfIvSZIkFcLkX5IkSSrEbN3qU5Ik9YBlF3+9012Q1EbO/EuSJEmFcOZfkg7CdLOi93zorDnsiSSVzbNU+8fkX5Km4T8mkqRe4rIfSZIkqRDO/EsqnrP7kqRSOPMvSZIkFcLkX5IkSSqEyb8kSZJUCNf8SyqC6/ql+WVfn0lvlSvNDpN/HVRSNN2Xs/c/lyRJml9M/nVQnE3VfGI8SpLardfOUpn8S9Is8eyXuoUHzlI5TP57iF/ekiRJmo7JvyR1QK+dRpYkdQeT/y7SSzP7Jj6SJElzz+R/numlBP9guFZarfj5kCTp4Jj8S5IkqSs4CXTwTP47wMCVJEkl8wx/5/Rc8h8RrwSuAJ4LPAp8DbgwM3/ayX6pffzCkCRJmpmeSv4j4oXAl4GvAJcBvwxcWT++pINdk7SfPDMmSdLs6ankH/hj4EfAazJzN0BEPALcEBG/npn/0q43MkGZn7yLUHfw87NvnuFSu/m501w6mHgzVmdXryX/a4BbJhP/2rr68flA25J/dScTqrnhF7fUGX72JO1LryX/xwDjTWWTr/un2iki+oGjmoqfC/CDH/yg5T47Hrh3Zj3UvHXXXXdNue20j3572n3XXXjqjN5z5cqVK4AfZuYv9qf+TGK1E/x8zK7pYnW29Gqs9ppe+uzNNM6N1bmzr38bS/FLv/+JKbdNlx8caKy2S2TmXL7frIqIBN6XmVfsT3nD9iuAy2e7f9IUVmbmfv0rZ6yqw4xVdQtjVd1iv2O1XUpK/q/IzPdNsV+ro/7DgeOBUWBH+3t7QI4DbgbOBn7Y4b60Wy+PDfZvfAc7Q2Wszo1eHhsYq72kl8cGxmov6eWxQZtjtV16bdnP48BhjQURsah+un2qnTJznL2XCwFsaF/XZi4iJp/+cK6PDmdbL48N2j8+Y7VzenlsYKx2si/t1stjA2O1k31pt14eG8zf8R3S6Q602QNU6/4bHV0/3j/HfZEkSZLmlV5L/u8AzoiIQxvKzqgfhzvQH0mSJGne6LXk/yqqdXtfjYhXRMTbgD8HvpGZmzrbNUmSJKmzeir5z8zbgVcBzwS+CLwf+BLwhk72qw0eAN5XP/aaXh4b9P74mvXyeHt5bND742vWy+Pt5bFB74+vWS+Pt5fHBvN0fD11tx9JkiRJU+upmX9JkiRJUzP5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpEAs73QHNTEScCywFfgFM3q91MXB7Zn67U/3qtIhYArwFWATsAq7KzF2d7VXZjNX/EBFPAv5wis1PB+7JzM/MYZfUwFjdW0ScCpwK/LwuOgK4NjN/1LleyVjdW0SsBl4KbAeCKgf4eGY+3tGOzUPe579L1R/8r2TmQ03lZwNPyczPd6RjHRQRz6H6QberMvPRTvdHFWN1/0TEecDnM/OxTvelVMbqE0XECuCUzLy2oexQ4ErgTzNze8c6Vzhj9Yki4rnAaZn58Yayo4DzMvPKzvVsfnLZT4/JzJuBJ0XEr3a6Lx3w+sx8v4l/dyg8Vp+gTqgWmPjPTwXH6kuB/9FYUM+ifhlY1ZEeaVoFx+qrgL9sLMjMB4At9UGAGrjspzd9DvgT4MOTBRHxeuAY4HHgMOCOzLy9YftzqT48E1QHhQ8D24CRzLwnIpYBvwE8C+gDNmfmjfW+Lwd+BdhNFVPfy8yvNbR9JPAmYAHVKcqnANdl5oPtGnBEvAT4arva05wpLlan8CrgK7P8Hjo4JcbqbqollL9oKn8y8NDe1TVPlBirj2XrpSz/G3ge8M02vlfXM/nvQZn5eETsnHwdEa8Gbs3MnzSUvSUiHszMuyNiIfCqxlNjEXEM8AlgpKHpNwAXZ+a/NdR7KXt/0M+IiJdk5q31jOYrqdbd7a63Pwm4JCLeN8WHdSZWAp+MiDcC/cDhwL8DfzX5vpp/Co3VVo7OzC2z2L4OUqGx+j+BiyLiY5NnVCPi2cDqzPxgm95DbVZorE7Vzn1UBy1qYPLfuxIgIp4CPNr4oQfIzBsi4u3A3VRH+zc1bd8SEbc2tTnW9KEP4KmZ+b2mfW+JiHcAtwJnATc0JuCZuT0ivg2cANzV3PF6huLoFmPanZl/McV4jwD+mCrZ/0ndzkrgPcCfTbGP5ofSYrW5jd8Gbtufuuq4omI1M38aEZ8D/jYiNgJPq/8fXNCqvuaVomIVWBgRizJzR1P5abjEfS8m/71r8ij4hcBvRcSvtagz+SF5Vmb+TYvtm5teDze9Xg68KCKObbHv4vrxJGBZ9R3xBIdRfTHs3fHMm1qV78NzgP+SDVf1Z+ZoRBwfEcc3fzlpXiktVpudlJlXtaEdzb6iYrVe6vFm4NWZ+UhddizwXyPiz1okWpo/iopV4K+ASyPiysm4jIizqA4i7p9Bez3N5L/3HQVc03zUP0PNp9WOAr6QmRum2WdijhKbf8nWt/MaojryN/mf/0qJ1T0iYjnVzJu6Symx+gbgA9lwu+TM/FFEfJrqoOC6OeiDDk4RsZqZP4mITwEX1AcaC4F/AB6kum5FDUz+e1C9fm/yNNdW4Dhgug/+zmm2TWcrcDIw3Qf/qQfa6AxP+T1pivKdVDMMmocKjdVGZwAf32ctdVyhsbojW/xOSmY+EBFPO9A+aG4UGqvU10094UAjIt6FB6l7MfnvTW8EJi++uR34U+A709T/cUQ8OzPvbSrfV9L8XeAdwI3T1LknIp6Xmf+4j7b2mOEpv0cj4qmZ+bOm8jXAP82gPc2NEmMVgIh4BvDgLF9IrPYpMVZb9rVe6z3VhIs6r8RY3UtEPBl42uSSNf0HL4LoMVHdcmtXZn4foA76H0XEaU31TmhYA3gz8Lqm7Uc0lzWrk5b1EfHmpn2fGRGn1C8/B5wf1S/vNtZ59YGNbJ9uBN5T31lg8j0WAy/KzP/T5vdSGxQcq5NeTXW/dM1zBcfqv0bEK1qUX4S3pp2XCo7VJ6j7/99puve/Kv7Cb5eK6tf9nglM/ihQUB2lfycz/6FF/TcAvwxM/gDWA5n51w3blwPnUN2D9xCq04Bbgdsy8/76wq/fyMy9vvAj4kyqU38P10WPAZ9tuK3XEcAfUd0/+HGq9Xd/n5l7XeV/MOqLjt5MdRHTz6n+f1yTmQ9Pu6NmlbG6t4hYBPxeZn6qne3q4Bire6v7cVI9hqS6jfLXMvOf2/k+OjDG6t6iug3t/123H8BnMnNbO9+jV5j8a0oRcR7VD3EYJJrXjFV1C2NV3cJY7V0u+xERcUhEvKyp7HDYc1pPmheMVXULY1XdwlgtjzP/AiAiXgScAmwHdlGd8vuM93HWfGOsqlsYq+oWxmpZTP4lSZKkQrjsR5IkSSqEyb8kSZJUCJN/SZIkqRAm/5IkSVIhTP6nEBGLI2JF/Sux0rxlrKpbGKvqFsaqetnCTndgHjsOGB0dHe10P9Tbog1tGKuaC8aquoWxqm7Rjlg9YM78S5IkSYUw+ZckSZIKYfIvSZIkFcLkX5IkSSqEyb8kSZJUCJN/SZIkqRAm/5IkSVIhTP4lSZKkQpj8S5IkSYUw+ZckSZIKYfIvSZIkFcLkX5IkSSqEyb8kSZJUCJN/SZIkqRAm/5IkSVIhTP4lSZKkQpj8S5IkSYUw+ZckSZIKYfIvSZIkFcLkX5IkSSqEyb8kSZJUCJN/SZIkqRAm/5IkSVIhTP4lSZKkQpj8S5IkSYUw+ZckSZIKYfIvSZIkFWLGyX9ELIyICyPi7oj4eUT8MCI+GBF9DXWOjYgvRcRDEfFYRNwREae2aOu8up3tEXFfRFwVEYub6rStLUmSJKlEBzPz/yng/cBngbOBq4A/BD4J1cEB8E1gNfBO4I3ATuCWiDh+spGIeB1wDTAEnAN8HLgA+ERDnba1JUmSJJVq4Ux2ioinAOcCH8zMP6uL10XEkcClEfEHwEuBFcBgZt5a77cO2Ay8Dbiw3u9CYCgzz69ffyMiDgUui4iLMvNB4PQ2tiVJkiQVaaZr4GN0AAAgAElEQVQz/xPAUuDKpvJHqQ4oDgPWADuA2yY3ZuYjwDDwfICIWAScDNzS1M66up2T69ftbEuSJEkq0oxm/jNzN7AFICIWAIuBU4D3AJ/JzJ9FxDHA1szMpt3HqZbvADyj7sN4izoA/fVjO9vaS0T0A0c1FR83VX2pU4xVdQtjVd3CWFVpZpT8N/lnqiU5AN+iWvcPsAh4vEX9XfU2Gh6b6+1q2t7Otlq5ALi81Ybh4WG2bNnC0qVLGRgYYGhoaM+2wcFBNm7cyPh4dXyxfPly+vr6GBkZAaCvr481a9YwPDzMxMQEAKtWrWJiYoJNmzYB0N/fz4knnsj69ev3tLt27VrGxsbYvHkzAAMDA/T397Nhw4ZqIIsWsXbtWkZGRti2bRsAK1euBGB0dBSAJUuWsGrVKoaGhtixYwcAq1evZnx8nLGxMQDHNA/GNDg4yAEyVh2Tserf1TEZq8X9XXtxTDOI1baIvSfTD7CBiBXAEqqZ//dSzfy/MyKuB16cmcua6l8PnJqZAxGxDBgD3pqZ1zfUmSw/NzNvaGdbU4xhqqP+m0dHR1mxYkWLvaS2iAOqbKyqc4xVdQtjVd3igGK1XQ565j8z76qf3h4RhwAfiIgPUa3RP6zFLouA7fXzHfVjc73JWfrGeu1qq9UYxmlaLhTRkb+HNC1jVd3CWFW3MFZVmhld8BsRx0TE2yLi2KZN/1K3+WzgAeDI+m47jY4G7q+fPwjsplrT31yHhnrtbEuSJEkq0kxn/p9EdT//S4APNZSfVD/eC9wBLADOBL4KEBFHAC8ArgbIzO0RcSfwcp643u4Mqpn8O+vX7WxLkiRJaotlF399ym33fOisOezJ/pnp3X7ujYi/obp/PsA/USX+lwJ/lZn3RcQ4cBdwXURcQjUz/y4ggU83NPcR4MaI+DxwE3ACcBFwXWY+XNf5VhvbkiRJkop0MGv+fxd4N/BWqgt9/x34AFUCTmbujIiXAR8DPkq19n4EOD0z75lsJDNviojD67ZeC2yl+mXeSxvqtK0tSZIkqVQzTv4zcwfwwfq/qepsBl6zH21dC1y7jzpta0uSJM1v3baUQuoWM/2FX0mSJEldxuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklSIhZ3ugNQNll389Wm33/Ohs+aoJ5IkSTPnzL8kSZJUCGf+JamHeJZKkjSdGc/8R8QhEXFRRHwvIrZHxD0RcXVEPK2hzrER8aWIeCgiHouIOyLi1BZtnRcRd9ft3BcRV0XE4qY6bWtLkiRJKtHBLPu5Cng/8NfAK4Crgd+rXxMRC4FvAquBdwJvBHYCt0TE8ZONRMTrgGuAIeAc4OPABcAnGuq0rS1JkiSpVDNa9hMRRwFvBz6YmZfVxbdExALgwxHxbGBF/d9gZt5a77cO2Ay8Dbiw3u9CYCgzz69ffyMiDgUui4iLMvNB4PQ2tiVJkiQVaaYz/08FbgK+3FT+r/Xj04E1wA7gtsmNmfkIMAw8HyAiFgEnA7c0tbOO6sDk5Pp1O9uSJEmSijSj5D8zf5CZb8rMO5s2/TbwE+Au4Bhga2ZmU51xoL9+/gyqxHy8RR0a6rWzLUmSJKlIbbvbT0T8JtV6/Hdl5o56Jv7xFlV3AYvq55OPzfV2NW1vZ1ut+t4PHNVUfNxU9aVOMVbVLYxVdQtjVaVpS/IfEccCNwPfAj65H7s0z+AfTL12tHUBcHmrDcPDw2zZsoWlS5cyMDDA0NDQnm2Dg4Ns3LiR8fHq5MLy5cvp6+tjZGQEgL6+PtasWcPw8DATExMArFq1iomJCTZt2gRAf38/J554IuvXr9/T7tq1axkbG2Pz5s0ADAwM0N/fz4YNGwBYtGgRa9euZWRkhG3btgGwcuVKAEZHRwFYsmQJq1atYmhoiB07dgCwevVqxsfHGRsbA3BMBzCmc569i7+7dwGXnLRzT7tX37WAFx2d/OYzdrN+/foZjWlwcJADZKw6JmO1wL9riWO65KSdDG05hO/+LDhveTWP9/OdcPVdC43VLv679uKY5jBW2yL2XklzgA1EPB24HXgU+O3MnKjLrwHOzsyjm+rfCKzKzOdGxC8BPwYuyMxPNtQ5HtgEvD4zv9DOtqYYw1RH/TePjo6yYsWKA/3foh4zi/dOjwOqbKxqH4xV9YrpYnkfcWysak7NVay2y0HN/EfEk4GvU82qnzmZ+NceAI6MiEMzs3EpztHA/fXzB4HdVGv6aapDQ712trWXzByn6VqBiI78PaRpGavqFsaquoWxqtIczI98LQS+SJVsn9biNpp3AAuAMxv2OQJ4AdVdesjM7cCdwMub9j2D6u4+kxcUt7MtSZIkqUgHM/N/HXAacB7wnIh4TsO2n1Gt/78LuC4iLqGamX8X1VmCTzfU/QhwY0R8nur2oScAFwHXZebDdZ12tiVJkiQV6WCS/7fUj9e32PbtzHxxRLwM+BjwUaq77YwAp2fmPZMVM/OmiDgceDfwWmAr1S/zXtpQZ2e72pIkSZJKNePkPzP3uSAuMzcDr9mPetcC185VW5IkSVKJZrzmX5IkSVJ3MfmXJEmSCmHyL0mSJBXC5F+SJEkqhMm/JEmSVAiTf0mSJKkQJv+SJElSIUz+JUmSpEKY/EuSJEmFMPmXJEmSCmHyL0mSJBXC5F+SJEkqhMm/JEmSVAiTf0mSJKkQJv+SJElSIUz+JUmSpEKY/EuSJEmFMPmXJEmSCmHyL0mSJBXC5F+SJEkqhMm/JEmSVAiTf0mSJKkQJv+SJElSIQ4q+Y+I4yPiyoj4UYttx0bElyLioYh4LCLuiIhTW9Q7LyLujojtEXFfRFwVEYtnqy1JkiSpVDNK/iPitIj4DrAJuAhY2rR9IfBNYDXwTuCNwE7glog4vqHe64BrgCHgHODjwAXAJ2ajLUmSJKlkC2e4338Cvg9cVj9/b9P204EVwGBm3goQEeuAzcDbgAvrehcCQ5l5fv36GxFxKHBZRFyUmQ+2uS1JkiSpWDOa+c/MyzLzLZm5HsgWVdYAO4DbGvZ5BBgGng8QEYuAk4FbmvZdR3VQcvIstCVJkiQVa6Yz//tyDLA1M5sPDMaplu8APKN+//EWdQD6Z6GtliKiHziqqfi46faROsFYVbcwVtUtjFWVZraS/0XA4y3Kd9XbaHhsrreraXs725rKBcDlrTYMDw+zZcsWli5dysDAAENDQ3u2DQ4OsnHjRsbHq2OM5cuX09fXx8jICAB9fX2sWbOG4eFhJiYmAFi1ahUTExNs2rQJgP7+fk488UTWr1+/p921a9cyNjbG5s2bARgYGKC/v58NGzZUg1m0iLVr1zIyMsK2bdsAWLlyJQCjo6MALFmyhFWrVjE0NMSOHTsAWL16NePj44yNjQE4pgMY0znP3sXf3buAS07auafdq+9awIuOTn7zGbtZv379jMY0ODjIATJWHZOxWuDftcQxXXLSToa2HMJ3fxact7z65/znO+HquxYaq138d+3FMc1hrLZF7D2hfoANRFwBXJ6Z0VB2PfDizFzWVPd64NTMHIiIZcAY8NbMvL6hzmT5uZl5QzvbmmYMUx313zw6OsqKFSumHL/KsOzir0+7/Z4PnTXTpmPfVRoqG6vaB2NVvWK6WN5HHBurmlNzFavtMlsz/zuAw1qULwK2N9ShRb3JWfrGeu1qq6XMHKdpyVBER/4e0rSMVXULY1XdwlhVaWbrR74eAI6s77bT6Gjg/vr5g8BuqjX9zXVoqNfOtiRJkqRizdbM/x3AAuBM4KsAEXEE8ALgaoDM3B4RdwIv54lr7c6gmsm/cxbakmbFQZzykyRJmjOzlfx/C7gLuC4iLqGamX8X1W1BP91Q7yPAjRHxeeAm4ASqHw27LjMfnoW2JKloHqhKUtlmJfnPzJ0R8TLgY8BHqdbejwCnZ+Y9DfVuiojDgXcDrwW2Uv0y76Wz0ZYkSZJUsoNO/jPzCuCKFuWbgdfsx/7XAtfuo07b2pIkSZJKNVsX/EqSJEmaZ0z+JUmSpEKY/EuSJEmFMPmXJEmSCmHyL0mSJBVitu7zL0maJdPdq1/qFsaxukWvxaoz/5IkSVIhTP4lSZKkQpj8S5IkSYVwzb9U67U1fZIkSc2c+ZckSZIKYfIvSZIkFcLkX5IkSSqEyb8kSZJUCJN/SZIkqRAm/5IkSVIhTP4lSZKkQpj8S5IkSYUw+ZckSZIK4S/8SpIkqWjLLv56p7swZ0z+JUnSlPaVFN3zobPmqCeS2sFlP5IkSVIhTP4lSZKkQvTcsp+IeCVwBfBc4FHga8CFmfnTTvZLkqT5qqT1zlLpeir5j4gXAl8GvgJcBvwycGX9+JIOdk3zhP/ASZKkkvVU8g/8MfAj4DWZuRsgIh4BboiIX8/Mf+lo7yRJkqQO6rU1/2uAdZOJf21d/fj8DvRHkiRJmjd6beb/GGC8qWzydf9UO0VEP3BUU/FzAX7wgx+0rXPqvB0P3Dvn73nXXXdNuW3lypUrgB9m5i/2p61uidXTPvrtabevu/DUOepJ99rX/8PZUGKslmS2Ymq6uJnOwXwfG6tqt9nKD9oZq+0SmTmX7zerIiKB92XmFftT3rD9CuDy2e6fNIWVmblf/3oaq+owY1XdwlhVt9jvWG2XkpL/KzLzfVPs1+qo/3DgeGAU2NH+3h6Q44CbgbOBH3a4L+3Wy2OD/Rvfwc5QGatzo5fHBsZqL+nlsYGx2kt6eWzQ5lhtl15b9vM4cFhjQUQsqp9un2qnzBxn7+VCABva17WZi4jJpz+c66PD2dbLY4P2j89Y7ZxeHhsYq53sS7v18tjAWO1kX9qtl8cG83d8vXbB7wNU6/4bHV0/3j/HfZEkSZLmlV5L/u8AzoiIQxvKzqgfhzvQH0mSJGne6LXk/yqqdXtfjYhXRMTbgD8HvpGZmzrbNUmSJKmzeir5z8zbgVcBzwS+CLwf+BLwhk72qw0eAN5XP/aaXh4b9P74mvXyeHt5bND742vWy+Pt5bFB74+vWS+Pt5fHBvN0fD11tx9JkiRJU+upmX9JkiRJUzP5lyRJkgph8i9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpEAs73QHtW0ScCywFfgFM3pt1MXB7Zn67U/3qtIhYCZwKkJn/X4vtRwO/DzwGBNXB7sczc/tc9rMkxmpr+4rVus5zgNOBJZn5wTnsXpGM1db243v114DXAhNU/9+eBHwiMx+ay36WxFhtbT9j9TXA48B24MnA32XmXXPZz/nI5L97/GXzl2tEnB0Rb8rMz3eqU50QEQPA7wB3Ap8E3tmiziF1+Xszc1dd9nTgXcCH5q63RTJWa/sZq0+nOkj9PvA/gLfPZR8LZ6zW9jNWjwJekZnvayh7MvD/AJfPUVdLZazW9jNWjwbOzsz/1lR+SURszsyfzUln5ymX/XSxzLwZeFJE/Gqn+zKXMnMsMz+cmf8rM3dPUe0lwLcmE/96v58Cj0ZE/5x0VHsYq1PHamb+tK7zlcx8fK77qCcyVqf9Xv0d4C+a9vs5sCUiFs16J/UExuq0sfoqoNVZ1i8DL5y93nUHZ/673+eAPwE+PFkQEa8HjqE61XUYcEdm3t6w/blUH4wJqgPAh4FtwEhm3hMRy4DfAJ4F9AGbM/PGet+XA78C7KaKn+9l5tca2j4SeBOwgOoU5VOA6zLzwVkY+3Sel5mtZvjXAacAX5nj/shYVfcwVlv7P5n5WIvyR+s++dmZe8Zqa9c0Tv41OJyqX0Uz+e9ymfl4ROycfB0RrwZuzcyfNJS9JSIezMy7I2Ih8KrMvLJh+zHAJ4CRhqbfAFycmf/WUO+l7P1BPyMiXpKZt0bEocArqdbV7663Pwm4JCLel5nJ3JnqvX5MdVZAc8xYVbcwVlvLzDum2HS0B82dYay21irxrw9qXgYUf02VyX9vSICIeArwaOOHHiAzb4iItwN3Ux3t39S0fUtE3NrU5ljThz6Ap2bm95r2vSUi3gHcCpwF3NB4Gi4zt0fEt4ETgL0usqlnKI5uMabdmfkXLcr3V8uLejPz0frLSJ1hrKpbGKv7ISJeQLX2Wp1jrE6hXub7+8CJVGcjft/JHZP/XjEZyC8EfiuqK9yb7agfn5WZf9Ni++am18NNr5cDL4qIY1vsu7h+PAlYVn1HPMFhVF8Me3c886ZW5epZxqq6hbG6DxHxDOC3PPjtOGN1Cpk5Tj3TX5/huCQirszMidl83/nO5L+3HEW1zu0n+6y5b81HxkcBX8jMDdPsM5GZV7Xhvduh5cVn9czIjlbbNKeMVXULY7WFiFgM/Be8e9p8YqxOoz7D8WHgXFpfDFwMk/8uV6/fm7xr01bgOGC6D/7OabZNZytwMjDdB/+pB9roLJ7ym+pOVs8C7j+IdjVDxqq6hbG6z/YDeA9w9RQXVWqOGKtTtntmZn6zuTwzHwrvTGXy3wPeCExefHM78KfAd6ap/+OIeHZm3ttUftg+3ue7wDuAG6epc09EPC8z/3Efbe0xi6f8/ndEvDgz/6Gp/HSg1SlPzT5jVd3CWJ3en1Ct7X5klt9H+2astnZSRPyvbLp9ckQsYIprAkviff67WFS33NqVmd8HqL+IfxQRpzXVO6FhDeDNwOuath/RXNasvkBmfUS8uWnfZ0bEKfXLzwHnR8SSpjqvPrCRtcWtwBn1rMhkP54OPC0zt3SgP0UzVtUtjNXpRcRbgH/IzB914v31H4zVaX0B+H+j+sHPRucDf9uB/swr4UXP819UP+39TGDy/spBdZT+nRYz20TEG4Bfprr3MsADmfnXDduXA+dQ3ev2EKrTgFuB2zLz/vp2WL+RmXvdCz8izqQ69fdwXfQY8NmG23odAfwR1f2DH6dae//3OYs/px0Rf9JqnWFUv/B3ft2XoDrTdXVmFn+P39lirE5vqlg90Do6eMbq9FrFYUSsBi4Fbmuxy48z84uz1Z+SGavTmyYH+FXgtVTje6zuyy2ZuXG2+tItTP4FQEScR/VDHAaE5jVjVd3CWFW3MFbL4rKfwkTEIRHxsqayw2HPaT1pXjBW1S2MVXULY1XgzH+RIuJFwClUF73sojol9pnM9BaYmleMVXULY1XdwliVyb8kSZJUCJf9SJIkSYUw+ZckSZIKYfIvSZIkFcLkX5IkSSqEyf8UImJxRKyIiMWd7os0HWNV3cJYVbcwVtXLFna6A/PYccDo6Ohop/uh3hZtaMNY1VwwVtUtjFV1i3bE6gFz5l+SJEkqhMm/JEmSVAiTf0mSJKkQJv+SJElSIUz+JUmSpEJ4tx9JkjTvLLv461Nuu+dDZ81hT6Te4sy/JEmSVAiTf0mSJKkQLvuRJEmSZqjblqg58y9JkiQVwuRfkiRJKoTJvyRJklQIk39JkiSpECb/kiRJUiFM/iVJkqRCmPxLkiRJhTD5lyRJkgrhj3xJUkG67cdoJEnt5cy/JEmSVAiTf0mSJKkQJv+SJElSIUz+JUmSpEJ4wa/UBl5EKUmSuoEz/5IkSVIhTP4lSZKkQpj8S5IkSYWYcfIfEQsj4sKIuDsifh4RP4yID0ZEX0OdYyPiSxHxUEQ8FhF3RMSpLdo6r25ne0TcFxFXRcTipjpta0uSJEkq0cHM/H8KeD/wWeBs4CrgD4FPQnVwAHwTWA28E3gjsBO4JSKOn2wkIl4HXAMMAecAHwcuAD7RUKdtbUmSJEmlmtHdfiLiKcC5wAcz88/q4nURcSRwaUT8AfBSYAUwmJm31vutAzYDbwMurPe7EBjKzPPr19+IiEOByyLiosx8EDi9jW1JkiRJRZrpzP8EsBS4sqn8UaoDisOANcAO4LbJjZn5CDAMPB8gIhYBJwO3NLWzrm7n5Pp1O9uSJEmSijSj5D8zd2fmlsx8LCIWRERfRJwGvAf4TGb+DDgG2JqZ2bT7ONBfP38GVWI+3qIODfXa2ZYkSZJUpHb8yNc/Uy3JAfgW1bp/gEXA4y3q76q30fDYXG9X0/Z2trWXiOgHjmoqPm6q+lKnGKvqFsaquoWxqtK0I/n/z8AS4BTgvcBHqC7KnU7zDP7B1GtHWxcAl7faMDw8zJYtW1i6dCkDAwMMDQ3t2TY4OMjGjRsZH69OLixfvpy+vj5GRkYA6OvrY82aNQwPDzMxMQHAqlWrmJiYYNOmTQD09/dz4oknsn79+j3trl27lrGxMTZv3gzAwMAA/f39bNiwAYBFixaxdu1aRkZG2LZtGwArV64EYHR0FIAlS5awatUqhoaG2LFjBwCrV69mfHycsbExAMfUxjFdctJOhrYcwnd/Fpy3vDre/PlOuPquhdOOaXBwkANkrDomY9W/axFjMlZ78+/ai2Oaw1hti9h7Jc1BNBZxMfAB4FjgCuDszDy6qc6NwKrMfG5E/BLwY+CCzPxkQ53jgU3A6zPzCxFxTbvamqLfUx313zw6OsqKFSta7CX9h2UXf33Kbfd86Kzpdo0DeR9jVQfLWFW3MFbVLeYqVttlpnf7OQZ4JfD1zP+/vbuPs6ssD73/u/IyQoMgIAPWUDPSkmpCOeQ8h4RqDtgIiCCiFh8rHsVaLKJHBUsf8SkCrYpaRahKj0I1VgVf0KM+RcU0UBzbTM5pBy0TMYgm1hTiEA5vjZBJwvX8sdbQ1ZU9L5nZk5nZ6/f9fNZnz17rvq+97qwL5tr33Hvt/Hnl0D9TfI7gWcD9wKERMT8zq0txDgfuK39+AHiCYk0/tTZU2rUz1h4yc5DaZwUipuV6SKMyVzVbmKuaLcxVNc1E7/bzFIr7+Z9T239s+fgzYB0wFzht+GBEHAicQHGXHjJzB3AHcEYtzqkUd/e5o3zezliSJElSI01o5j8zfxYRX6K4fz7AP1EU/u8CPpuZ90bEILABuD4iLqGYmb+QYu39JyrhPgzcEBGfA24EngtcDFyfmY+Ubb7dxliSJElSI03mA7//DXgH8HqKD/r+C8V6/w8DZOauiHgR8BHgKoq77fQDp2Tm5uEgmXljRBxQxnolsI3im3nfVWnTtliSJElSU024+M/MIeDKchupzRbg7HHEug64bow2bYslSZIkNdFE1/xLkiRJmmUs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhrD4lyRJkhrC4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhrD4lyRJkhpiwsV/RMyJiIsj4u6I2BERmyPimoh4WqXNkRFxU0Q8FBGPRcS6iDixRazzIuKuMs69EXF1ROxXa9O2WJIkSVITTWbm/2rgPcAXgTOBa4DfL58TEfOAbwHLgbcC5wC7gFsi4ujhIBHxKuCTQC/wMuCjwAXAtZU2bYslSZIkNdW8iXSKiMOANwNXZual5e5bImIu8OcR8SxgSbmtysxby35rgC3A+cBFZb+LgN7MfGP5/JsRMR+4NCIuzswHgFPaGEuSJElqpInO/B8E3Ah8pbb/h+XjIcAKYAi4bfhgZj4K9AHHA0REF3AccEstzhqKNybHlc/bGUuSJElqpAnN/GfmPcBrWhx6AfALYAPwJmBbZmatzSDF8h2Ap5fnMNiiDUB3+XhEG2PtISK6gcNqu48aqb00XcxVzRbmqmYLc1VNM6Hiv5WI+M8U6/EvzMyhciZ+Z4umu4Gu8ufhx3q73bXj7YzVygXAZa0O9PX1sXXrVhYuXEhPTw+9vb1PHlu1ahV33nkng4PF+4vFixezYMEC+vv7AViwYAErVqygr6+P7du3A7Bs2TK2b9/Oxo0bAeju7uaYY45h7dq1T8ZduXIlmzZtYsuWLQD09PTQ3d3N+vXri4F0dbFy5Ur6+/t58MEHAVi6dCkAAwMDABx88MEsW7aM3t5ehoaGAFi+fDmDg4Ns2rQJwDG1cUyXHLuL3q1z+NHDwXmLi5T75S64ZsO8Uce0atUq9pK56pjMVa9rI8Zkrnbmde3EMe3DXG2L2HMyfQJBIo4E1gH/BJyVmRkRq4GTMnNRre1q4MTM7ImIRcAm4PWZubrSZnj/uZn5mXbGGuH8R3rX//WBgQGWLFky9j+CGm3RO28e8djm958+WtfYm9cxVzVZ5qpmC3NVs8W+ytV2mfTMf0QcQrHO/l7g1ZWlOUPA/i26dAE7Km1o0W54lr7arl2x9pCZg9SWC0VMy/WQRmWuarYwVzVbmKtqmkl9yVdE/ApwM5DAaZm5vXL4fuDQ8m47VYcD95U/PwA8QbGmv96GSrt2xpIkSZIaaTJf8jUP+DJFsX1yi9torgPmAqdV+hwInEBxlx4ycwdwB3BGre+pFDP5d0xBLEmSJKmRJrPs53rgZOA84NkR8ezKsYeBb1Pc9ef6iLiEYmb+Qoq/Enyi0vbDwA0R8TmK24c+F7gYuD4zHynbtDOWJEmS1EiTKf5fVz6ubnHs9sw8KSJeBHwEuIpi7X0/cEpmbh5umJk3RsQBwDuAVwLbKL6Z912VNrvaFUuSJElqqgkX/5k55qdhMnMLcPY42l0HXLevYkmSJElNNKkP/EqSJEmaPSz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhrD4lyRJkhrC4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhrD4lyRJkhrC4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGmJSxX9EHB0R74uIn7c4dmRE3EOw2jMAACAASURBVBQRD0XEYxGxLiJObNHuvIi4KyJ2RMS9EXF1ROw3VbEkSZKkpppQ8R8RJ0fEPwAbgYuBhbXj84BvAcuBtwLnALuAWyLi6Eq7VwGfBHqBlwEfBS4Arp2KWJIkSVKTzZtgv/8K/Bi4tPz53bXjpwBLgFWZeStARKwBtgDnAxeV7S4CejPzjeXzb0bEfODSiLg4Mx9ocyxJkiSpsSY085+Zl2bm6zJzLZAtmqwAhoDbKn0eBfqA4wEiogs4Dril1ncNxZuS46YgliRJktRYE535H8sRwLbMrL8xGKRYvgPw9PL1B1u0AeieglgtRUQ3cFht91Gj9ZGmg7mq2cJc1Wxhrqpppqr47wJ2tti/uzxG5bHebnfteDtjjeQC4LJWB/r6+ti6dSsLFy6kp6eH3t7eJ4+tWrWKO++8k8HB4j3G4sWLWbBgAf39/QAsWLCAFStW0NfXx/bt2wFYtmwZ27dvZ+PGjQB0d3dzzDHHsHbt2ifjrly5kk2bNrFlyxYAenp66O7uZv369cVgurpYuXIl/f39PPjggwAsXboUgIGBAQAOPvhgli1bRm9vL0NDQwAsX76cwcFBNm3aBOCY2jimS47dRe/WOfzo4eC8xUXa/XIXXLNh3qhjWrVqFXvJXHVM5qrXtRFjMlc787p24pj2Ya62Rew5ob6XASIuBy7LzKjsWw2clJmLam1XAydmZk9ELAI2Aa/PzNWVNsP7z83Mz7Qz1ihjGOld/9cHBgZYsmTJiOOXABa98+YRj21+/+mjdY3RDu7R2FzVJJmrmi3MVc0W+ypX22WqZv6HgP1b7O8CdlTa0KLd8Cx9tV27YrWUmYPUlgxFTMv1kEZlrmq2MFc1W5irapqp+pKv+4FDy7vtVB0O3Ff+/ADwBMWa/nobKu3aGUuSJElqrKkq/tcBc4HThndExIHACRR36SEzdwB3AGfU+p5KMZN/xxTEkiRJkhprqpb9fBvYAFwfEZdQzMxfSHFb0E9U2n0YuCEiPgfcCDyX4kvDrs/MR6YgliRJktRYU1L8Z+auiHgR8BHgKoq19/3AKZm5udLuxog4AHgH8EpgG8U3875rKmJJkiRJTTbp4j8zLwcub7F/C3D2OPpfB1w3Rpu2xZIkSZKaaqrW/EuSJEmaYSz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhrD4lyRJkhrC4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIaYt50n4AkqX0WvfPm6T4FSdIM5sy/JEmS1BAW/5IkSVJDWPxLkiRJDeGaf6k02lrpze8/fR+eiSRJ0tSw+JfGwQ9RSpKkTuCyH0mSJKkhLP4lSZKkhui44j8izoqI70fE4xGxLSJWR8Qh031ekiRJ0nTrqOI/Ip4HfAX4CXA2cBnwMuCm6TwvSZIkaSbotA/8vg34OXB2Zj4BEBGPAp+JiN/KzH+e1rPTtPODu5IkaW90Wu3QacX/CuCW4cK/tKZ8PB6w+JckaQbotIJKmi06rfg/Ahis7Rt+3j1Sp4joBg6r7f5NgHvuuadtJ6fpN3T/z/b5a27YsGHEY0uXLl0C/CQzHx9PLHNVACdfdfuUxDVXtS9N5v/H5qpaGev/jWsuOnHCfSeqnbnaLpGZ+/L1plREJHBFZl4+nv2V45dTfD5Amg5LM3Pk/ztUmKuaZuaqZgtzVbPFuHO1XZpU/F+emVeM0K/Vu/4DgKOBAWCo/We7V44Cvg68lOLDzJ2kk8cG4xvfZGeozNV9o5PHBuZqJ+nksYG52kk6eWzQ5lxtl05b9rMT2L+6IyK6yh93jNQpMwfZc7kQwPr2ndrERcTwjz/Z1+8Op1onjw3aPz5zdfp08tjAXJ3Oc2m3Th4bmKvTeS7t1sljg5k7vo661SdwP8W6/6rDy8f79vG5SJIkSTNKpxX/64BTI2J+Zd+p5WPfNJyPJEmSNGN0WvF/NcW6vW9ExJkRcT7wIeCbmblxek9NkiRJml4dVfxn5veAlwPPAL4MvIfi231fPZ3n1Qb3A1eUj52mk8cGnT++uk4ebyePDTp/fHWdPN5OHht0/vjqOnm8nTw2mKHj66i7/UiSJEkaWUfN/EuSJEkamcW/JEmS1BAW/5IkSVJDWPxLkiRJDWHxL0maFSLi4Ij4q4i4PyIej4gfRMQrxtHvyIi4KSIeiojHImJdRJzYot15EXFXROyIiHsj4uqI2G8isSrt55RtMiIWzfaxRcR+EXFlRGwuz/PHEXF5i1hnRcT3yzbbImJ1RBwyjvG07RpMxfUcr9lyPWvtzdWm5Gpmurm5ubm5zfgN+DbwEPAm4CXA14AngJNG6TMPGAB+DryW4nbQvcDjwNGVdq8CEvgk8GLgEmAI+NTexqq9/lvKuAksmu1jA74BPAxcDJwCXAbsBD5ZafM8YDfwlXIsby773DrG9W3neU7J9TRXZ8/YzNVRzn8yye22bzbgXOBPgD8C3lFu/y9w4nSf2zT/uywt/0N98zjbXw/8p+k+707ezNUR/11GzVXgBcB7y1++1e35033uM2UDnlv+gvz9yr45wI+Br47S78Vlv9+p7Htq+Qv+qsq+/wV8t9b33WWxcOjexKoce2Z57HuMUlDNlrEBy8o2f1CL9TFgBzC/fP4lYDMwp9LmtWXf3xplPG27BlNxPc3V2TM2c3X0zWU/s8fHMvNDmfnhcnsv8LSIeM10n9i+FhE9EXExcATwl8D8cfR5BfDPU31uAszVJ+1Frj4DuCYzP1bbvrfPTnbmW1E+3jK8IzOfAG4Fjh+j3xBwW6Xfo0DfcL+I6AKOq8YuraGYcTtuvLFqPg7cCfzVqCObPWN7CvB5ipnfqh8CXcABlVhryjFUX4+RxtPO85zC6zles+V6Vpmr//H1GGk8nZCrFv+zWGZ+HXhKRPzGdJ/LvpSZmzLzzzPzb2v/wbYUEYcDC7H4nzbm6pi5+nRm2DdAzkBHlI+Dtf2DQPcY/bZlOVU2Qr+nU/yibRWbSrvxxAKenHB4MfBGihm70cyKsWXmusx8TWZuqbV5AfD9zHywEmus16tr5zVo+/XcS7Pieg4zV5uXq/P2toNmnL8G3g78+fCOiPg9ikTZCewPrKvOIEbEb1KsF9tO8QbwEeBBoD8zN5cf9PlPFH8GXABsycwbyr5nAL9Osb5vHnB3Zv5NJfahwGuAuRRr0Z4KXJ+ZD0zB2MfrAoolFb89jecgc3VULf6n3igR8QzgoBEO/5Rito7M3Fk7tpvR//rXRZFfdbuHY1YeW8Wm1m6sWETEQcBfAB/IzB9GxMnloaPqH+Jjlo2tLiJeAvwucEZl9/x6rMzcHRHV16tr53lO9ZjN1Vkwtrom5upILP5nuczcGRG7hp+X7+BvzcxfVPa9LiIeyMy7ImIe8PLMfF/l+BHAtUB/JfSrgXdm5k8r7V7IngXUqRHxO5l5a0TMB84CPjo8yxkRTwEuiYgrpqO4iYizgf8vM4fK/5g1TczVUUWZq8+k+HP1Y8Cnyz/rNsWVwOtGOPacKXrN8V7n8bSrtvkAxRvW95bPzy4f/7ZFv9k2tidFxLEUSys+mpk3t/m8JtJvysdcMlfby1zdN7GeZPHfGRIgIp4K/Fu1mALIzM9ExJuBuyhmUW+sHd8aEbfWYm6qFVMBHJSZd9f63hIRb6FY73c68Jnq8obM3BERt1N8SGhD/cTLmd/DW4zpicz8izHGPapyuc+vZeaXJxNHbWWutrYD+MfhXI2IpwOXRsS7MnPX6F07Q2aeS/GB8ZYiYqh83D8zH6sc6qL49xvJEMVfleqq/YbKx3q74Rm1artRY0XE84DzgNOAXeWb2E9R3FXk14HNmbm72nm2jK12zj0U66n/Driwdnj4L3nV9vXXq2vneU7JmIeZqzN/bLVzbmyujsTivzMMv+t7HvBfIqLVu/PhBHtmZn6pxfH6uri+2vPFwPMj4sgWfYf/NHgssKjFDPv+FAXXnieeeWOr/W3yVuBPpzC+9p652jr2/6g93xYR11D8VeOvp+p1Z5nhz0QcAWyq7D8cuG+MfodGxPzaUoVqvwcolocdUes7/GZvuN14Yv0JxRK1+gf4AO4BbgdOanGOMPPHBkBEdAPfATYCr6wXiGWssV6vrp3n2fYx76XZcj3N1YbmqsV/ZzmM4v61vxiz5djqf0Y6DPhCZq4fpc/2zLy6Da89aRHxfwPfyMy9fkesfcJcHUNm/muM44tmGmRd+fgSijXKRMQc4GTg78foN5didvMbZb8DgROAa+DJv/rcQbEW+LJK31Mp3ozeMd5YFJ9reWrtHIbjngnczZ5my9iIiAOAb1LcYvAlmfn4COd1aq1QObV8rL9Zp93n2e4xT8BsuZ7malNzNSd4H1u3fbdR/HnxaSMcmwdcWP58GvDbY8T67yPsP4vyvr7AIuCs2vHnAK8eI/afTWBsv0fxP6D69ta9iPH2Fvs+3iLmxyg+bPp24Fen+7p24maujhmjVa7uP1I+jvRv0NSNYoby34C3Ufyy/AqwC1hRaXMYsLCWdwMUd8V4Q5k/t1Osc15Uu74JfI5iWdjFFH9O//jexmpx3ucy9hcnzfixUXw4cg1FMXUW8Pza9htlu+dTfBDxWxRF5PkUXwp1c+X15lAssZs/FddgKq+nuTrzx4a5Onp+TsX/oN3auzF6QfW6ShI/leIT+6PFejnwrBb7f4/RC6qoJuIIsd8A/F/T8O+zR0E1QruT8Eu+pvpamKujv26r4n/uCPvnM84vsGvKBjyN4j7k28pfjncAZ9ba/E+Kz09U9y0EvkxRCDxGMUP5vBbxzwN+RDHjdi/wIaBrIrFqfc5l7IJqxo+t/O8tR9lWV9q+FPh+OZZtFF+yeFDl+AqKIuvlU3UNpup6mqszf2zm6uhblAE1g0XEucDXMvOh2v4zKAqtz1X2vQXYmJlrKvueS3EnwbsiYi7wR5n5gcrxA4HPAm/Lyu0TM/Nrtdd7OXBAZv51Zd8zgJ7M/IfyDiofB/6f/Pd76BIRr8jMr0z6H2IEEfH2HMcSjog4CXgoM78/VefSdObq6EbK1Yi4ELgh/+Odj86jmH26d6rOR5LUPBb/s0BZUD2D4p0eFDOb+wP/kJl/16L9q4Ffo/izHMD9mfnFyvHFwMso7m0+h+LPdduA2zLzvpEKqrLvaRTfOPdIuWv4loTDt0s8EPjvFH+K2knxSfTvZOYed09pF4v/mcNcHd0oxf98ipmf+eW2P9BXfWMkSVI7WPwLeHKW8fo0ITTDmauSJE3cnOk+Ae1bETEnIl5U23cA+A2jmlnMVUmS2s+Z/waKiOcDv03x4ZbdFEspPpWZQ6N2lPYxc1WSpPay+JckSZIawmU/kiRJUkNY/EuSJEkNYfEvSZIkNYTFvyRJktQQFv8jiIj9ImJJROw33ecijcZclTpPRFweEd6RQzOeuTr7zJvuE5jBjgIGBgYGpvs81NmiDTHMVe0L7chVSdI0c+ZfkiRJagiLf0mS2igiPhIRD0fEUyr75kXEAxFxbUTMjYg/jogfRsTjEbGl3H/gKDFXR8Tm2r6TIiIj4qTKvsMj4rPlaz0SEV+NiCOnYpya/czVZrL4lySpvT4PHAicWtl3InAIcCPwQeBy4FPA6cC7gVcA107mRSPiqcDfAycAbwHeADwH+E5EdE0mtjqWudpArvmXJKmNMvMfI+Ju4HeBb5S7Xw78C/A94BHg05k5ABARc4HFwB9O8qXfBjwLWJKZd5exNwAbgDOBmyYZXx3GXG0mZ/4lSWq/G4AzI6IrIgI4C/hCZiZwJ3BCRPRHxKPALuCPgYMm+ZovAvqBn5ZLN+YBdwMPAMdPMrY6l7naMBb/kiS13+cpCqQXAiuAX6UosgD+DPgE8F3gbIpi57o2vOYRZaydte3QcpNaMVcbxmU/kiS1WWbeExH/m2I5xTbgrsz8QXn4jcDnM/Ptw+0j4vSxQo7jZR+lKNLe0eLYtnH0VwOZq81j8S9J0tT4PMUHJB8CPl3ZP5diLXXVMWPE2gocFhHzM3Nnua+71uZ24Bzgp5n5f4Z3RsQzM/Nf9/bk1SjmaoO47EeSpKnxBYrlFM+muHPKsK8B50bEmyLitIj4IsWHLIfvgtLKd4BfAf4yIl4YERcAH6+1+SCwG/huRLw2IlZFxBUU66pPbN+w1IHM1Qax+JckaQpk5i+AtcD6zPxJ5dDbKGZa/xT4IvAExe0ONwJHjxDrNoolEicDXwVeDVxaa3Mvxa0TNwDXAH9DcXvGczLz9rYNTB3HXG2WKD7MrbqIWAIMDAwMsGTJkuk+Hc1wi95584jHNr9/1OWRMdnXNle1j0w6VyVJ08+Zf0mSJKkhLP4lSZKkhrD4lyRJkhrCW31KUoNM4vMpkqQO4My/JEmS1BAW/5IkSVJDWPxLkiRJDWHxL0mSJDWExb8kSZLUEBb/kiRJUkNY/EuSJEkNYfEvSZIkNYTFvyRJktQQFv+SJElSQ1j8S5IkSQ0x4eI/IuZFxEURcVdE/DIifhIRV0bEgkqbIyPipoh4KCIei4h1EXFii1jnlXF2RMS9EXF1ROxXa9O2WJIkSVITTWbm/38A7wE+DbwUuBp4E/CXULw5AL4FLAfeCpwD7AJuiYijh4NExKuATwK9wMuAjwIXANdW2rQtliRJktRU8ybSKSKeCpwLXJmZHyx3r4mIQ4F3RcQfAC8ElgCrMvPWst8aYAtwPnBR2e8ioDcz31g+/2ZEzAcujYiLM/MB4JQ2xpIkSZIaaaIz/9uBhcD7avv/jeINxf7ACmAIuG34YGY+CvQBxwNERBdwHHBLLc6aMs5x5fN2xpIkSZIaaUIz/5n5BLAVICLmAvsBvw38EfCpzHw4Io4AtmVm1roPUizfAXh6eQ6DLdoAdJeP7Yy1h4joBg6r7T5qpPbSdDFXJUnSZEyo+K/5AcWSHIBvU6z7B+gCdrZov7s8RuWx3m537Xg7Y7VyAXBZqwN9fX1s3bqVhQsX0tPTQ29v75PHVq1axZ133sngYPH+YvHixSxYsID+/n4AFixYwIoVK+jr62P79u0ALFu2jO3bt7Nx40YAuru7OeaYY1i7du2TcVeuXMmmTZvYsmULAD09PXR3d7N+/fpiIF1drFy5kv7+fh588EEAli5dCsDAwAAABx98MMuWLaO3t5ehoSEAli9fzuDgIJs2bQJwTG0c0yXH7qJ36xx+9HBw3uIi5X65C67ZMG/UMa1atYq9ZK46ptmSq5KkGSj2nEzfywARS4CDKWb+300x8//WiFgNnJSZi2rtVwMnZmZPRCwCNgGvz8zVlTbD+8/NzM+0M9YIYxhpNvXrAwMDLFmypEUv6d8teufNIx7b/P7TR+sae/M65qoma1/lqiRpZpr0zH9mbih//F5EzAHeGxHvp1ijv3+LLl3AjvLnofKx3m54lr7arl2xWo1hkNpyoQh/z2nmMVclSdJkTOgDvxFxREScHxFH1g79cxnzWcD9wKHl3XaqDgfuK39+AHiCYk1/vQ2Vdu2MJUmSJDXSRO/28xSK+/mfU9t/bPn4M2AdMBc4bfhgRBwInEBxlx4ycwdwB3BGLc6pFDP5d5TP2xlLkiRJaqSJ3u3nZxHxJYr75wP8E0Xh/y7gs5l5b0QMAhuA6yPiEoqZ+QuBBD5RCfdh4IaI+BxwI/Bc4GLg+sx8pGzz7TbGkiRJkhppMmv+/xvwDuD1FB/0/RfgvRQFOJm5KyJeBHwEuIpi7X0/cEpmbh4Okpk3RsQBZaxXAtsovpn3XZU2bYslSZIkNdWEi//MHAKuLLeR2mwBzh5HrOuA68Zo07ZYkiRJUhNNdM2/JEmSpFnG4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhrD4lyRJkhrC4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhJlz8R8SciLg4Iu6OiB0RsTkiromIp1XaHBkRN0XEQxHxWESsi4gTW8Q6LyLuKuPcGxFXR8R+tTZtiyVJkiQ10WRm/q8G3gN8ETgTuAb4/fI5ETEP+BawHHgrcA6wC7glIo4eDhIRrwI+CfQCLwM+ClwAXFtp07ZYkiRJUlPNm0iniDgMeDNwZWZeWu6+JSLmAn8eEc8ClpTbqsy8tey3BtgCnA9cVPa7COjNzDeWz78ZEfOBSyPi4sx8ADiljbEkSZKkRprozP9BwI3AV2r7f1g+HgKsAIaA24YPZuajQB9wPEBEdAHHAbfU4qyheGNyXPm8nbEkSZKkRprQzH9m3gO8psWhFwC/ADYAbwK2ZWbW2gxSLN8BeHp5DoMt2gB0l49HtDHWHiKiGzistvuokdpL08VclSRJkzGh4r+ViPjPFOvxL8zMoXImfmeLpruBrvLn4cd6u9214+2M1coFwGWtDvT19bF161YWLlxIT08Pvb29Tx5btWoVd955J4ODxfuLxYsXs2DBAvr7+wFYsGABK1asoK+vj+3btwOwbNkytm/fzsaNGwHo7u7mmGOOYe3atU/GXblyJZs2bWLLli0A9PT00N3dzfr164uBdHWxcuVK+vv7efDBBwFYunQpAAMDAwAcfPDBLFu2jN7eXoaGhgBYvnw5g4ODbNq0CcAxtXFMlxy7i96tc/jRw8F5i4uU++UuuGbDvFHHtGrVKvaSueqYZkuuSpJmoNhzMn0CQSKOBNYB/wSclZkZEauBkzJzUa3tauDEzOyJiEXAJuD1mbm60mZ4/7mZ+Zl2xhrh/EeaTf36wMAAS5YsGfsfQY226J03j3hs8/tPH61r7M3rmKuarH2Vq5KkmWnSM/8RcQjFOvt7gVdXluYMAfu36NIF7Ki0oUW74Vn6art2xdpDZg5SWy4U4e85zTzmqiRJmoxJfclXRPwKcDOQwGmZub1y+H7g0PJuO1WHA/eVPz8APEGxpr/ehkq7dsaSJEmSGmkyX/I1D/gyRbF9covbaK4D5gKnVfocCJxAcZceMnMHcAdwRq3vqRQz+XdMQSxJkiSpkSaz7Od64GTgPODZEfHsyrGHgW9T3PXn+oi4hGJm/kKKvxJ8otL2w8ANEfE5ituHPhe4GLg+Mx8p27QzliRJktRIkyn+X1c+rm5x7PbMPCkiXgR8BLiKYu19P3BKZm4ebpiZN0bEAcA7gFcC2yi+mfddlTa72hVLkiRJaqoJF/+ZOeanDDNzC3D2ONpdB1y3r2JJkiRJTTSpD/xKkiRJmj0s/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhrD4lyRJkhrC4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhrD4lyRJkhpiUsV/RBwdEe+LiJ+3OHZkRNwUEQ9FxGMRsS4iTmzR7ryIuCsidkTEvRFxdUTsN1WxJEmSpKaaUPEfESdHxD8AG4GLgYW14/OAbwHLgbcC5wC7gFsi4uhKu1cBnwR6gZcBHwUuAK6diliSJElSk82bYL//CvwYuLT8+d2146cAS4BVmXkrQESsAbYA5wMXle0uAnoz843l829GxHzg0oi4ODMfaHMsSZIkqbEmNPOfmZdm5usycy2QLZqsAIaA2yp9HgX6gOMBIqILOA64pdZ3DcWbkuOmIJYkSZLUWBOd+R/LEcC2zKy/MRikWL4D8PTy9QdbtAHonoJYLUVEN3BYbfdRo/WRpoO5KkmSJmOqiv8uYGeL/bvLY1Qe6+121463M9ZILgAua3Wgr6+PrVu3snDhQnp6eujt7X3y2KpVq7jzzjsZHCzeYyxevJgFCxbQ398PwIIFC1ixYgV9fX1s374dgGXLlrF9+3Y2btwIQHd3N8cccwxr1659Mu7KlSvZtGkTW7ZsAaCnp4fu7m7Wr19fDKari5UrV9Lf38+DDz4IwNKlSwEYGBgA4OCDD2bZsmX09vYyNDQEwPLlyxkcHGTTpk0AjqmNY7rk2F30bp3Djx4OzltcpN0vd8E1G+aNOqZVq1axl8xVxzRbclWSNAPFnhPqexkg4nLgssyMyr7VwEmZuajWdjVwYmb2RMQiYBPw+sxcXWkzvP/czPxMO2ONMoaRZlO/PjAwwJIlS0YcvwSw6J03j3hs8/tPH61rjHZwj8bmqiZpX+WqJGlmmqqZ/yFg/xb7u4AdlTa0aDc8S19t165YLWXmILUlQxH+ntPMY65KkqTJmKov+bofOLS8207V4cB95c8PAE9QrOmvt6HSrp2xJEmSpMaaquJ/HTAXOG14R0QcCJxAcZceMnMHcAdwRq3vqRQz+XdMQSxJkiSpsaZq2c+3gQ3A9RFxCcXM/IUUtwX9RKXdh4EbIuJzwI3Acym+NOz6zHxkCmJJkiRJjTUlxX9m7oqIFwEfAa6iWHvfD5ySmZsr7W6MiAOAdwCvBLZRfDPvu6YiliRJktRkky7+M/Ny4PIW+7cAZ4+j/3XAdWO0aVssSZIkqammas2/JEmSpBnG4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhrD4lyRJkhrC4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpIeZN9wlIktpn0Ttvnu5TkCTNYM78S5IkSQ1h8S9JkiQ1RMcV/xFxVkR8PyIej4htEbE6Ig6ZZ9tuGgAACi5JREFU7vOSJEmSpltHrfmPiOcBXwG+BlwK/BrwvvLxd6bx1DTLuY5akiR1go4q/oG3AT8Hzs7MJwAi4lHgMxHxW5n5z9N6dpIkSdI06rRlPyuANcOFf2lN+Xj8NJyPJEmSNGN0WvF/BDBY2zf8vHsfn4skSZI0o3Tasp/5wM7qjszcHREAXSN1iohu4LDa7t8EuOeee9p8ipqsk6+6fbpPYa9s2LBhxGNLly5dAvwkMx8fTyxzdd+brnxbc9GJE+o3dP/PJvya7cxVSdLMFJk53efQNhGRwBWZeXmL/Zdn5hUj9LscuGzKT1BqbWlmjlx1VZirmmbjzlVJ0szUaTP/O4H9qzsiYnjGf8co/a4FvlzbdwBwNDAADLXrBCfoKODrwEuBn0zzubRbJ48Nxje+vRm3uTp9Onls0P5clSTNQJ1W/N9Pse6/6vDy8b6ROmXmIHt+VgBgfZvOa1LKZUtQ/Mm9o2bdOnls0P7xmavTp5PHBp0/PklSodM+8LsOODUi5lf2nVo+9k3D+UiSJEkzRqcV/1dTfBjyGxFxZkScD3wI+GZmbpzeU5MkSZKmV0cV/5n5PeDlwDMo1kW/B7gJePV0npckSZI0E3Tamn8y8+sUH1rrJPcDV5SPnaaTxwadP766Th5vJ48NOn98kiQ67FafkiRJkkbWUct+JEmSJI3M4l+SJElqCIt/SZIkqSEs/iVJkqSGsPifIhFxcET8VUTcHxGPR8QPIuIV4+h3ZETcFBEPRcRjEbEuIk5s0e68iLgrInZExL0RcXVE7DeRWJX2c8o2GRGLZvvYImK/iLgyIjaX5/njiLi8RayzIuL7ZZttEbE6Ig4Zx3jadg2m4nqO12y5nrX25moDc1WS1AaZ6TYFG/Bt4CHgTcBLgK8BTwAnjdJnHjAA/Bx4LcV3FvQCjwNHV9q9Ckjgk8CLgUuAIeBTexur9vpvKeMmsGi2jw34BvAwcDFwCnAZsBP4ZKXN84DdwFfKsby57HPrGNe3nec5JdfTXJ09YzNX3dzc3Nz21TbtJ9CJG/Dc8hfk71f2zQF+DHx1lH4vLvv9TmXfU8tf8FdV9v0v4Lu1vu8ui4VD9yZW5dgzy2PfG62gmi1jA5aVbf6gFutjwA5gfvn8S8BmYE6lzWvLvr81ynjadg2m4nqaq7NnbOaqm5ubm9u+3Fz2MzVWlI+3DO/IzCeAW4Hjx+g3BNxW6fco0DfcLyK6gOOqsUtrKGbcjhtvrJqPA3cCfzXqyGbP2J4CfJ5i5rfqh0AXcEAl1ppyDNXXY6TxtPM8p/B6jtdsuZ5V5up/fD1GGk+H5aokqQ0s/qfGEeXjYG3/INA9Rr9tmZmj9Hs6xS/aVrGptBtPLADKNdAvBt5IMWM3mlkxtsxcl5mvycwttTYvAL6fmQ9WYo31enXtvAZtv557aVZcz2HmaqNzVZLUBvOm+wRmo4h4BnDQCId/SjFbR2burB3bDcwfJXQXxZ/P63YPx6w8topNrd1YsYiIg4C/AD6QmT+MiJPLQ0fVP8THLBtbXUS8BPhd4IzK7vn1WJm5OyKqr1fXzvOc6jGbq7NgbHVNzFVJ0r5h8T8xVwKvG+HYc6boNcea5dybdtU2HwC2A+8tn59dPv5ti36zbWxPiohjKZZWfDQzb27zeU2k35SPuWSutpe5um9iSZKmiMt+JiAzz83MGGH7EcV6VyJi/1rXLooP8I1kCKj3qfcbKh9bxabWbtRYEfE84DyKO6fsioh5wKfKdr8OzJutY6uKiB6K9dR/B1xYO7yzHqtc21x9vbp2nueUjHmYuTrzx1bV5FyVJO0bFv9T4/7y8Yja/sOB+8bod2hE1JckVPs9QHGrwlaxqbQbT6w/ociBWygKi538+4co7wHWjnCOjPD6M2lsAEREN/AdYCPwyszcXetz/zher66d59n2Me+l2XI9zVVzVZLUBhb/U2Nd+fiS4R0RMQc4meKOF6P1mwucVul3IHDCcL/M3AHcwX9cCwxwKsWM2x3jjQW8Hfgvte2K8tiZwB/O4rEREQcA36S4xeBLMvPxEc7r1Fqhcmr52HI87TzPdo95AmbL9TRXzVVJUjtM971GO3WjmKH8N+BtFL8svwLsAlZU2hwGLKw8H/5ynEHgDcBZwO0U65wXVdr9HsXa2c8Bp1N8MdAO4ON7G6vFeZ/L2F+cNOPHRvHhyDUUxdRZwPNr22+U7Z5P8UHEb1EUkedTfCnUzZXXm0Nxz/j5U3ENpvJ6mqszf2yYq25ubm5u+3Cb9hPo1A14GsWyhG3lL8c7gDNrbf4n8I+1fQuBL5eFwGPA3wPPaxH/PGB4XfO9wIeAronEqvU5l7ELqhk/NmAR//4NsK221ZW2LwW+X45lG3A9cFDl+IqyyHr5VF2Dqbqe5urMH5u56ubm5ua2L7fI9OYLkiRJUhO45l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf01aRFweEX5VtGY8c1WS1HQW/5IkSVJDWPxLkiRJDWHx33AR8ZGIeDginlLZNy8iHoiIayNibkT8cUT8MCIej4gt5f4DR4m5OiI21/adFBEZESdV9h0eEZ8tX+uRiPhqRBw5FePU7GeuSpI0eRb/+jxwIHBqZd+JwCHAjcAHgcuBTwGnA+8GXgFcO5kXjYinAn8PnAC8BXgD8BzgOxHRNZnY6ljmqiRJkzRvuk9A0ysz/zEi7gZ+F/hGufvlwL8A3wMeAT6dmQMAETEXWAz84SRf+m3As4AlmXl3GXsDsAE4E7hpkvHVYcxVSZImz5l/AdwAnBkRXRERwFnAFzIzgTuBEyKiPyIeBXYBfwwcNMnXfBHQD/y0XLoxD7gbeAA4fpKx1bnMVUmSJsHiX1AspzgIeCGwAvhViiIL4M+ATwDfBc6mKHaua8NrHlHG2lnbDi03qRVzVZKkSXDZj8jMeyLif1Msp9gG3JWZPygPvxH4fGa+fbh9RJw+VshxvOyjFEXaO1oc2zaO/mogc1WSpMmx+Newz1N8QPIh4NOV/XMp1lJXHTNGrK3AYRExPzN3lvu6a21uB84BfpqZ/2d4Z0Q8MzP/dW9PXo1irkqSNEEu+9GwL1Asp3g2xZ1Thn0NODci3hQRp0XEFyk+ZDl8F5RWvgP8CvCXEfHCiLgA+HitzQeB3cB3I+K1EbEqIq6gWFd9YvuGpQ5krkqSNEEW/wIgM38BrAXWZ+ZPKofeRjHT+qfAF4EnKG53uBE4eoRYt1EskTgZ+CrwauDSWpt7KW6duAG4BvgbitsznpOZt7dtYOo45qokSRMXxU0yJEmSJHU6Z/4lSZKkhrD4lyRJkhrC4l+SJElqCIt/SZIkqSEs/iVJkqSGsPiXJEmSGsLiX5IkSWoIi39JkiSpISz+JUmSpIaw+JckSZIawuJfkiRJagiLf0mSJKkhLP4lSZKkhvj/AdeRHrn/zb3jAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 720x720 with 14 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "g = sns.FacetGrid(\n",
    "    mse_scores_dist,\n",
    "    col=\"Degree\",\n",
    "    col_wrap=4,\n",
    "    col_order=[f\"{n}\" for n in range(2, 16)],\n",
    "    sharex=True,\n",
    "    sharey=True,\n",
    ")\n",
    "\n",
    "g = g.map(plt.hist, \"value\", density=True, bins=np.linspace(-0.0005, 0, 20))\n",
    "\n",
    "g.fig.set_dpi(120)\n",
    "g.fig.set_size_inches(6, 6);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can make a similar series of plots for the $R^2$ score as well. First we query the data for those scores:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "r2_scores_dist = filip_cv_scores_dist_df \\\n",
    "    .query(\"score == 'r**2' & n != '1'\") \\\n",
    "    .loc[:, [\"n\", \"value\"]] \\\n",
    "    .rename(columns={\"n\": \"Degree\"}) \\\n",
    "    .reset_index(drop=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Faceting over degrees 2 through 15, the distributions evolve as follows:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x720 with 14 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "g = sns.FacetGrid(\n",
    "    r2_scores_dist,\n",
    "    col=\"Degree\",\n",
    "    col_wrap=4,\n",
    "    col_order=[f\"{n}\" for n in range(2, 16)],\n",
    "    sharex=True,\n",
    "    sharey=True,\n",
    ")\n",
    "\n",
    "g = g.map(plt.hist, \"value\", density=True, bins=np.linspace(0.5, 1.0, 20))\n",
    "\n",
    "g.fig.set_dpi(120)\n",
    "g.fig.set_size_inches(6, 6);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We notice in both instances that the distributions are very skewed. They are not normally distributed, so it doesn't make sense to try and use the standard deviation we computed for our error bars. Instead, we can use **resampling**, also known as **bootstrapping**, to determine our error bars.\n",
    "\n",
    "We use resampling to construct the bootstrap distribution of the mean score in the following way:\n",
    "\n",
    "1.  For a given polynomial degree and score, randomly sample 1000 times with replacement from the `value` column.\n",
    "2.  Compute the mean value and save the result.\n",
    "3.  Repeat this many times, storing each mean value. We will repeat it 1000 times.\n",
    "4.  Move on to the next polynomial degree, and repeat steps 1 through 3, storing the mean value each time.\n",
    "\n",
    "The code to do this is given below:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "bootstrap_results = {\n",
    "    \"n\": [],\n",
    "    \"sample\": [],\n",
    "    \"mean\": [],\n",
    "}\n",
    "\n",
    "for n in range(2, 16):\n",
    "    bootstrap_series = filip_cv_scores_dist_df \\\n",
    "        .query(f\"score == 'mse' & n == '{n}'\") \\\n",
    "        .sample(frac=1000, replace=True).loc[:, \"value\"]\n",
    "    bootstrap_df = pd.DataFrame(bootstrap_series) \\\n",
    "        .assign(sample_id=[f\"{x}\" for x in range(1000) for _ in range(1000)])\n",
    "    bootstrap_mean_samples = bootstrap_df \\\n",
    "        .groupby([\"sample_id\"]) \\\n",
    "        .mean() \\\n",
    "        .loc[:, \"value\"] \\\n",
    "        .values\n",
    "\n",
    "    bootstrap_results[\"n\"].extend(1000 * [f\"{n}\"])\n",
    "    bootstrap_results[\"sample\"].extend(list(range(1000)))\n",
    "    bootstrap_results[\"mean\"].extend(bootstrap_mean_samples)\n",
    "\n",
    "filip_cv_scores_bootstrap_df = pd.DataFrame(bootstrap_results)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We now have a data frame containing our bootstrap distributions for the mean-squared error score for polynomial degrees 2 through 15:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>n</th>\n",
       "      <th>sample</th>\n",
       "      <th>mean</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2</td>\n",
       "      <td>0</td>\n",
       "      <td>-0.000299</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>-0.000296</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>-0.000299</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>-0.000297</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2</td>\n",
       "      <td>4</td>\n",
       "      <td>-0.000301</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   n  sample      mean\n",
       "0  2       0 -0.000299\n",
       "1  2       1 -0.000296\n",
       "2  2       2 -0.000299\n",
       "3  2       3 -0.000297\n",
       "4  2       4 -0.000301"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "filip_cv_scores_bootstrap_df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>n</th>\n",
       "      <th>sample</th>\n",
       "      <th>mean</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>13995</th>\n",
       "      <td>15</td>\n",
       "      <td>995</td>\n",
       "      <td>-0.000016</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13996</th>\n",
       "      <td>15</td>\n",
       "      <td>996</td>\n",
       "      <td>-0.000015</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13997</th>\n",
       "      <td>15</td>\n",
       "      <td>997</td>\n",
       "      <td>-0.000016</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13998</th>\n",
       "      <td>15</td>\n",
       "      <td>998</td>\n",
       "      <td>-0.000016</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13999</th>\n",
       "      <td>15</td>\n",
       "      <td>999</td>\n",
       "      <td>-0.000015</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        n  sample      mean\n",
       "13995  15     995 -0.000016\n",
       "13996  15     996 -0.000015\n",
       "13997  15     997 -0.000016\n",
       "13998  15     998 -0.000016\n",
       "13999  15     999 -0.000015"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "filip_cv_scores_bootstrap_df.tail()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now we group over the `n` column, and within each group, determine the 2.5th and 97.5th percentiles. This gives us the upper and lower bounds of our 95% confidence intervals for our mean-squared error scores:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "filip_mse_ci_95 = filip_cv_scores_bootstrap_df \\\n",
    "    .loc[:, [\"n\", \"mean\"]] \\\n",
    "    .groupby([\"n\"]) \\\n",
    "    .quantile([0.025, 0.975])\n",
    "filip_mse_ci_95 = filip_mse_ci_95[\"mean\"] \\\n",
    "    .unstack() \\\n",
    "    .reset_index() \\\n",
    "    .rename(columns={0.025: \"lower\", 0.975: \"upper\"})"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Finally, we merge this back together with our original data frame of cross-validation scores:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "filip_cv_final_df = filip_poly_cv_scores_df.copy().loc[:, [\"n\", \"mse_mean\"]].query(\"n > 1\")\n",
    "filip_cv_final_df[\"n\"] = filip_cv_final_df[\"n\"].astype(str)\n",
    "filip_cv_final_df = filip_cv_final_df.merge(filip_mse_ci_95, on=[\"n\"])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We compute the length of the y error bars from the mean, which is needed for `matplotlib`:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [],
   "source": [
    "filip_cv_final_df[\"yerr_lower\"] = np.abs(filip_cv_final_df[\"mse_mean\"] - filip_cv_final_df[\"lower\"])\n",
    "filip_cv_final_df[\"yerr_upper\"] = np.abs(filip_cv_final_df[\"mse_mean\"] - filip_cv_final_df[\"upper\"])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The data frame is now as follows:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>n</th>\n",
       "      <th>mse_mean</th>\n",
       "      <th>lower</th>\n",
       "      <th>upper</th>\n",
       "      <th>yerr_lower</th>\n",
       "      <th>yerr_upper</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2</td>\n",
       "      <td>-0.000299</td>\n",
       "      <td>-0.000305</td>\n",
       "      <td>-0.000292</td>\n",
       "      <td>6.772445e-06</td>\n",
       "      <td>6.800843e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>3</td>\n",
       "      <td>-0.000219</td>\n",
       "      <td>-0.000224</td>\n",
       "      <td>-0.000214</td>\n",
       "      <td>4.658103e-06</td>\n",
       "      <td>4.502134e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>4</td>\n",
       "      <td>-0.000092</td>\n",
       "      <td>-0.000094</td>\n",
       "      <td>-0.000090</td>\n",
       "      <td>1.961853e-06</td>\n",
       "      <td>2.176045e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>5</td>\n",
       "      <td>-0.000102</td>\n",
       "      <td>-0.000108</td>\n",
       "      <td>-0.000098</td>\n",
       "      <td>5.558076e-06</td>\n",
       "      <td>4.332210e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>6</td>\n",
       "      <td>-0.000040</td>\n",
       "      <td>-0.000042</td>\n",
       "      <td>-0.000039</td>\n",
       "      <td>1.927361e-06</td>\n",
       "      <td>1.607447e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>7</td>\n",
       "      <td>-0.000046</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000042</td>\n",
       "      <td>4.524589e-06</td>\n",
       "      <td>3.728316e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>8</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>-0.000043</td>\n",
       "      <td>-0.000032</td>\n",
       "      <td>6.117658e-06</td>\n",
       "      <td>4.830110e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>9</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>-0.000036</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>6.297591e-06</td>\n",
       "      <td>5.490149e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>10</td>\n",
       "      <td>-0.000026</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>-0.000022</td>\n",
       "      <td>4.592369e-06</td>\n",
       "      <td>4.160836e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>11</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>1.233232e-06</td>\n",
       "      <td>1.056722e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>12</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>4.323257e-07</td>\n",
       "      <td>4.078795e-07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>13</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>1.036394e-06</td>\n",
       "      <td>9.129739e-07</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>14</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>1.162491e-06</td>\n",
       "      <td>1.035416e-06</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>15</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>1.370976e-06</td>\n",
       "      <td>1.274378e-06</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     n  mse_mean     lower     upper    yerr_lower    yerr_upper\n",
       "0    2 -0.000299 -0.000305 -0.000292  6.772445e-06  6.800843e-06\n",
       "1    3 -0.000219 -0.000224 -0.000214  4.658103e-06  4.502134e-06\n",
       "2    4 -0.000092 -0.000094 -0.000090  1.961853e-06  2.176045e-06\n",
       "3    5 -0.000102 -0.000108 -0.000098  5.558076e-06  4.332210e-06\n",
       "4    6 -0.000040 -0.000042 -0.000039  1.927361e-06  1.607447e-06\n",
       "5    7 -0.000046 -0.000050 -0.000042  4.524589e-06  3.728316e-06\n",
       "6    8 -0.000037 -0.000043 -0.000032  6.117658e-06  4.830110e-06\n",
       "7    9 -0.000030 -0.000036 -0.000024  6.297591e-06  5.490149e-06\n",
       "8   10 -0.000026 -0.000030 -0.000022  4.592369e-06  4.160836e-06\n",
       "9   11 -0.000015 -0.000017 -0.000014  1.233232e-06  1.056722e-06\n",
       "10  12 -0.000012 -0.000012 -0.000011  4.323257e-07  4.078795e-07\n",
       "11  13 -0.000013 -0.000014 -0.000012  1.036394e-06  9.129739e-07\n",
       "12  14 -0.000015 -0.000016 -0.000014  1.162491e-06  1.035416e-06\n",
       "13  15 -0.000016 -0.000017 -0.000015  1.370976e-06  1.274378e-06"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "filip_cv_final_df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We visualize our mean-squared error scores, this time with proper error bars representing the 95% confidence interval for the mean scores:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdQAAAFcCAYAAABxxE/ZAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAASdAAAEnQB3mYfeAAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvqOYd8AAAIABJREFUeJzs3Xt8lNWd+PHPNzdCwi1cQoCARFGQAEJUwFpaFUXc1WK1XvqqvVhr17W7drVrf9WtVnux3e5ate7WFi+1Xaq1aqu2WhVRNFqD2giSiKAQLgFCIAQIIdeZ7++P80wchpnJJM+EZJLv+/XKa5LnOefMeUZffOc85zzfI6qKMcYYY/xJ6+0OGGOMMf2BBVRjjDEmCSygGmOMMUlgAdUYY4xJAguoxhhjTBJYQDXGGGOSwAKqMcYYkwQWUI0xxpgksIBqjDHGJIEFVGOMMSYJLKAaY4wxSZCSAVVELhSR1SLSLCJ7RORhERmZQL2rRWSdiLSIyA4RuVtEsiPKTBSRJ0Rkn4g0icibIvLp3m7LGGNM35ZyAVVETgeeBDYClwDfAz4LPNFJvcuBpUCpV/5e4FrgF2FlMoC/AvOA64AvAO3ACyJyQm+1ZYwxpu+TVNttRkT+AMwFjlXVoHfsS8BvgJNU9b0Y9d4CmlX1U2HHbgVuAQpUtU5E/gF4Flioqi97ZYYC1cCDqnpDb7Tl8yMzxhhzFKTcCBWYDywPBVPPcu91brQKIpIFzAFeiDi1HMjwzoXabgVeCRVQ1QagLNR2L7VljDGmj0vFgFoA1EYcC/2dH6POaFyA6qxeAbBHjxy214aV6Y22jDHG9HEZvd2BbsgE2sIPqGpARACyYtQJHW+LOB6IOJ8VpUyoXFZE2aPZ1hFEJB8YE3F4CHACUIEbHRtjjElcFjAReFVV93e1cioG1Hi6OyGcSL1E2z5abV2LW5BljDEmuZYAz3S1UioG1DZgcPgBby4SoCVGndBobXDE8ch6rVHKhMqFlznabUXzC+DxiGPTgCeeeuoppkyZEqeqMcaYSB999BEXXnghwLbu1E/FgLobNz8Zbqz3ujNGnTogmEC93cAoEclU1baIcqEyvdHWEVS1loi5V++2N1OmTKG4uDhWVWOMMfF1a8osFRclvQmcKyKZYcfO9V7LolVQ1RbgXeD8iFPn4j64d8PaTgfOCxUQkWHAaaG2e6ktY4wxfVwqjlDvxiVAeEZE7gPGAz8BnlPV9QAikoa7/flh2OjwTuAREVkGPApMB24EHlDVA16Z54FK4AERuQk3grweN5f5q7A+HO22jDEGgLZAkPQ0IU2EoCqBoJKZnopjo/4n5QKqqr4uIhcBt+PmEBtwWZK+FVZsLi6gfRX4o1fvUREZ4pW7FNiDy0p0c1jb7SKyGLgL+BluLrMcWKSqm8PKHdW2jDEGIKjKinW7WFa2lW31h5iYl8MV8yexqLiANG/Kxw8L1v6kXKYkE5uIFAMVFRUVNodqTD8TVOX6x1bz9OodR5xbMns8d10221dQDaryYmVNjwVr6PsBu7KykhkzZgDMUNXKrtZPuRGqMcb0ZT0RNNoCQV56vyZqMAV4evUOPjllFOfNGEfuoIyOBYqJihast9Qd4vWP9iQlWIfeo7+Pri2gGmNMkvgJGsGgUtvQwvZ9h6iub2L7via2h71u3H0wbv0bn1jLjU+sJT1NyM1KZ8igDHIGZZA7KIPcrHRyB2W4Y965XO/3wZnpbNpzMG6wPm9GAQtPHNvtANXTAbung3WiLKAaY0wSdBY0/vPiWew60Mz2+iaqI4Ll9n1N7NzfRFvA/xRcIKgcaG7nQHO777ZCvvHIu+QPHeSC86AMhgxKJzcroyMwD8n2fg8L3KGygzPTWL1tX48F7KMxuk6UBVRjjPGpLRBkxbpdcYPGM6t3dDmV2/DBmUwYMZgJeYOp2L6fnfubY5Y9dnQuF508gUMtAQ61BjjY0k5jSzuNrQH32tJOY2s7jS3uXGt7MGZbkQJBjfvefn3nybXMLdruAnBWOrlZ6eRkZZA76OPXwZmH/52blUFmhvDWpr09OrruCguoxhjjU3swyD0rPoxbJlowzR86iAl5gzuCZqH3OmFEDhPyBjNkkPsnOhSwr1lWHrP9by+e2qXA0RYIcqglwIGWNr756LuUb90Xs+y44dl8YsooDrWEBerQ763tHGxupz3Y/dH1vqY2Xnx/V7frx7OsbCuLiiNz5/QMC6jGGNMN7YEgZZv28sya7TxfUdPpLdbhgzP4j3+Y3hFAx43IZlBGekLvlZmexqLiApbMHh9zlW9X5wsz09MYnpNGzqB0vv6pY+MG6+9dMD1usFZVWtqDRwbaFhds71nxIR/Vxp4DHpqdwYQRgznUGuCQN4puagvELN8V1fWH7JavMcb0NcGgUr61nj+v2cGza3ey52DiGepmThjB504p7PY/7mki3HXZbM6bUcCysq1U1x+iMAmLb5IRrEWE7Mx0sjPTGTXk8HNtgSCZ6RI3YP/X52YdEbCDQaWpLUBjazuHWrxX7/Z1U2uAxtYAB1vaePiNzWyuOxSz7cK8HIKqRyWoWkA1xpg4VJXKHQf485od/OW9nWzf13TY+cx04VPHj2Hy6BwefH1zzHaumD+JQFBJS+/+P+xpIiw8cWxHgAs9HuI3WPRUsIbuB+y0NOlY2MTQ6G23BYIUDMuOG6yT8bknygKqMWbASeSZxY9qD/LnNTv483s72LS78bBzaQKnTxnNBSeN59zpBQzPySSoyp6DrUm7JRtLeD/TRJIWKHoqWIfa7quj62SyTEn9iGVKMqZz8TIC7djXxF/e28kzq3fw/s4jU2mfckwen5k9nvNmjGPM0EFx207mKK+/6KnkC8n63C1TkjHGJCjeM4sjczPZ29h2RJ0ZE4ZxwazxnH/SeCaMiLbF8cd6cpTXH6Ti6LorLKAaY/qc3kjfFx5MjxuTy2dOmsD5J43juDFDopaPpaeChomvL3zuFlCNMX1KKI3cnS9uoLahmfyh2Xxr0QkJp+/bfbCF6nqXvu/jn0Ns39fE5j2NcesXjhjMr750MtPHDetyPlxjLKAaY/qMaLdk9zcd5Jpl5SyZPZ7/vuQk9hxs6QiS1Xtd2r7Q3zv2NdMaSDwDUKSMdKF4/PBkXIoZgCygGmP6hETS9/15zQ66mpAnLyeTwrwcxo/IZu32/ezYFzuF3tF8ZtH0PxZQjTG9bteBZt7cWMdP/vpB3HLRgumo3CwK87zUfXk5FOYNdn93I33f0Xxm0fQ/FlCNMUdddf0hVm3ay6qqOlZV7WVLnEw34YZlZ3Dj4mkU5g1mYt5gxo8YTE5WYv+M9bVnFk3/YwHVGNMtia7EVVW21B1ywXPTXlZV7T0i21BImkQfhYbMKhzBF+ZN6nPp+4wBC6jGmG6ItxJXcFmGVlW54PlWVR27DrREbSc3K52TJ49kXtFITjkmj90NzfzLo6tjvm9fTt9njAVUY3pJT2WN6WnxVuKOG55Na3uQusboSeOHZmcwd/JI5h07krlFo5gxfhgZ4QnRVVmyrjZl0/eZgc0CqjG9IDTCi5b+ri+PlDpbiRu5CXVeTiZzi0Yyr2gUc4tGcuK4YaSnxb6+8Fuy337iPQ40tzMsO4Offm5Wn/9sjLGAasxRFi/93ZLZ47nrstl9LnA0twUo21THyvW7eeztbXHLjh6Sxb+edTzzjx3F8flDSIsTQKMJ3ZL97vnT2V7fxIS8wSw8cWyf+0yMiWQB1ZijKJFnLc+bURB3M+ejZfOeRlaur2Xlht2UbaqjuS2xhAlDBmXw5U9M9vXemelpXHrKRF9tGHO0WUA15ihKTxOWlW2NW+bHz31Aepowffxwxg/P7nYKvK7O0Ta3BXhzUx2vrt/NyvW1UTdtTk8TcrPSOdDcHrMdS45gBioLqMYcRWkibKuP/8zllr2HuPq3fwfcIp4TC4YxbdxQpnmvU8cOdZsux5HoHG1VaBS63o1CW9qPHIWOHTaIM07I54ypY5h37EjeqtpryRGMicICqjFHUVCViXk5CScyaGhu563Ne3lr897Djk8amcO0gqFMGzeME73XSSNzSE+TuHO0/zirgIvmFPLaht2s3LA7aj8y0oSTj8njjKkuiE4rGHrYKNmSIxgTXcptMC4iecB/A58BhgLrge+r6pOd1JsI3AWcDQwCVgPfUdVXI8pdDdwAHAvUAX/wyjX3UFuXAo9F6fIqVZ0f98M48hptg/E+LpH0d3deMouxw7P5aNdBPqhpYF1NAxtqGmhqC8Rte3BmOsePHcLQQRm8sbGuS/0qGJbNGVPHcMbUMZw+ZTRDszPjlg9t6NydHWGM6asG4gbjjwLzgZuAauAq4HEROUtVV0arICIZwF+B4cB1wEHgeuAFEZmlqhu8cpcDS4H7gW8BJwG3A8OArya7Lc8EoBFYHNHtA13/aExfF0p/d8zIHLbsPXJ0uGT2eD5bUkiaCJ+cMqbjeDCobN17iA9qDrBuZwMf1Bzgg5qGw0aYTW0B3qven1A/MtKEUyeP9IJoPieMHdKluVpLjmDMkVIqoIrIdOBc4CpVfcg79ixulHodsDJG1UVAMbBQVV/26i3HBeRrcKNIvNdSVf269/dzIpIJ3CIiN6pqXZLbAigEtqnq6939XExq2bGvqSP13sicLIYNzug0/V1amjB5dC6TR+eyeMa4juONLe1s2NXABzUNfLDzAOtqGnhn89646fvGDM3ilX8/syNpfHdZcgRjDpdSARU3MgV4IXRAVYMi8jLwj53UawVeCavXICJlwFwAEckC5gC3RdRdjhtZzgFeSnJb4Eao8R/sM/3KL1ZupN2LeA9deQqzJ+Z1e4SXOyiDOZPymDMpD3C3Yr/4wKq4t3ynjh1GTlZ69y/AGBNV389zdrgC77U24ngtkN9JvT165IRxeL3RuC8Y0domrFwy2wIXUI8TkfUi0i4i1SLy/+Jci0lh2/c18fg77vvTmVPHMHuiC4RpIkl57jQQVL542jFxy4RW4RpjkqtPjVBFZBxubjKaTUAWgKq2RZwLAPFWUWQBkXVC9bLCyhClXCDifDLbAtgH5AA/BvYCXwB+IiL7VPVXUd4HABHJB8ZEHD4uVnnTN/xy5UbaAi6YffPsE5Levm1RZkzv6VMBFRdUvhzj3Ik99J6JflVPpFyX21LVCyLOveytIr4ZiBlQgWuB70U7UVZWRk1NDYWFhRQVFVFaWtpxbuHChaxdu5baWjdYnjp1Krm5uZSXu1Wnubm5zJ8/n7KyMhobGwEoKSmhsbGR9evXA5Cfn8/MmTNZsWJFR7sLFiygqqqK6upqAIqKisjPz2fVqlUAZGVlsWDBAsrLy6mvrwcIraajoqICgLy8PEpKSigtLaW11SVXnzdvHrW1tVRVVQGk9DXVHGjh0VVu15W5E3Op2/B3VmzomWv6zBg4Z/Eo7ilvYVxaA6MGw5kTM1m0cDofbthg/53smuyaolzTmjVr8COlHpsRkZuBHwE5qtoUdvwO4AZVzY5RbymwRFXHRhx/BChR1WkiMh7YDlyrqveFlTkBt+jp86r6+2S2Fec6/w33WM4wVW2IUSbWCPVpe2ymb7rtmUoe/ttmAJ78509w8jF5Pfp+qbqbjTG9ZaA9NrPbey0AqsKOjwV2dlJvlIhkRtwuDq9XBwT5eJ42vAxh5ZLWlneL+1zgT6oa/rxDpytGVLWWiDna7qaoMz1v14FmHnnLpRxccPzoHg+mYKtwjTnaUu3r6pvea8dtUhFJA84Byjqplw6cF1ZvGHBaqJ6qtgDvAudH1D0Xt6r33R5oC+DXwOciyp0NbIk1OjWp55evbqTVS+t33cLje7k3xpiekFIjVFWtEJEXgTvEDcc2AlcC44F7QuVEZAwwSFWrvUPPA5XAAyJyE24EeT1uLjN8nvJO4BERWYZLIDEduBF4QFUPJLstVd0pIr8F/ltEcoENwBJckoerfX1Yps+obWjmkVVudPqJ40Zx6uSRvdwjY0xPSKmA6rkMF6xuwaUefB+4SFXDR6hLgYnAKQCq2i4ii3Hzkj/DrbItBxap6uZQJVV9VESG4DIbXQrsAe7FLRAi2W15rgG2At/EJXnYAlynqg907+Mxfc3SVzd1JJ3/po1Ojem3UmpRkonPcvn2PXsOtvDJ/3yZ5rYg84pG8tg/ndbbXTLGxOB3UVKqzaEak1Luf21Tx8bc3zzbRqfG9GcWUI3pIXUHW/jtm1sAmDt5JKcdO6qXe2SM6UkWUI3pIQ+8XtWx5dp1C4+3x5qM6ecsoBrTA+obW/mtl8Th5GPyOH2KjU6N6e8soBrTAx58vYrGVhudGjOQWEA1Jsn2HWrtSDE4e+IIPnX86N7tkDHmqLCAakySPfR6FQdb2gG3stdGp8YMDBZQjUmi/U1t/PqNzQDMKhzOGSdE7l9gjOmvLKAak0S/fqOKhtDo1OZOjRlQLKAakyQHmtt46HW3CdKMCcM4a1p+L/fIGHM0WUA1Jkl+88ZmDjS70el1Z9no1JiBxgKqMUnQ0NzGA97odPq4YZwzfWwnNYwx/Y0FVGOS4LdvbmF/k9tv3p47NWZgsoBqjE+NLe08ULoJgGkFQ1lko1NjBiQLqMb49H9lW6g/9PHoNC3NRqfGDEQWUI3x4VBrO/e/5kanJ4wdwuLigl7ukTGmt1hANcaHZWVbqGtsBeBfz7LRqTEDWbcCqoikichDInJisjtkTKpoag2w1BudTskfwj/MHNfLPTLG9KZuBVRVDQKLgWOS2x1jUsfvVm1hz8HQ6HQK6TY6NWZA83PL92HgGyKSkaS+GJMymtsC/MobnR47JpfzZ43v5R4ZY3qbn2B4CXAssFNEGqKcV1U9zkf7xnSqLRAkPU1IEyGoSiCoZKb3/NKAR9/ayu6GFsBGp8YYx09Afd37MaZXBFVZsW4Xy8q2sq3+EBPzcrhi/iQWFReQ1oOJFZrbAvzy1Y0ATB6VwwU2OjXG4COgquqVyeyIMV0RVOX6x1bz9OodHce21B3i9Y/2sGT2eO66bHaPBdU/vLONXQfc6PRfzjqejKMwIjbG9H2+5z9F5FhgITAa2A2sUNUqv+0aE0tbIMiKdbsOC6bhnl69g/NmFLDwxLFJv/3b0h7gvpVudDppZA4XzrbRqTHG8RVQReRu4F84fHGTisj/qup1vnpmTAzpacKysq1xy/zfm1tY1ANJFv7wTjU79zcD8C9nTrHRqTGmQ7f/NRCRG3HB9AdAETAYOA64DbhGRK5PRgejvG+eiDwoIrtFpFlE1ojIxQnUmygiT4jIPhFpEpE3ReTTUcpdLSLrRKRFRHaIyN0ikt2dtryyJSLycxF5J8b5YhF5QUQOej/LRWRWop/HQJQmwrb6Q3HLlG2q45anKij9cDdtgWBS3re1Pch9r3wEQGHeYD5bMiEp7Rpj+gc/I9SvA/+pqreHHasCfiAiWcA1wF1+OhfDo8B84CagGrgKeFxEzlLVldEqeI/2/BUYDlwHHASuB14QkVmqusErdzmwFLgf+BZwEnA7MAz4ajfauhmYCbQD26P0aziwAner/Ku4Lzi3ACtEZKqq7u32p9SPBVWZmJfDlrrYQTWg8LtVW/ndqq0My87g7OljWVxcwKdOGEN2Znq33veJv1ezwxudfuPMKUdlNbExJnX4CaiFQGmMc28A/+6j7ahEZDpwLnCVqj7kHXsWWI8LbitjVF0EFAMLVfVlr95yXEC+BrjBK3cDUKqqX/f+fk5EMoFbRORGVa3rQltn4z6fq4F/Bs6I0q8vAPnA6aq60WurDNgEXAH8PNHPZiAJBJUr5k/i9Y/2xCxTPH4YG3Y10BZQDjS388fy7fyxfDuDM9M5c9oYzi0u4Kxp+QzNzkzoPdsCQf7XG51OGDGYi0sKk3Itxpj+w09A3QJ8Ang+yrnTiDIiS4L53usLoQOqGhSRl4F/7KReK/BKWL0GL3jNBfBG1XNwt6zDLceNUucALyXSlnfsa6HfReSf4/RrYyiYevU2i8iH4W2Zw2Wmp7GouIAls8dHXZgUWuXb0NzOKx/U8nxFDSs31NLcFqSpLcBza2t4bm0NWelpnD5lFItnFHD2iWMZNWTQEW2FnnP9Y3k12/c1AXDtmceRlWGjU2PM4fwE1PuA/xKRVmAZLoCOxY26voO7dZlsoVUmtRHHa3EjvXj19qiqRqk3z/t9NO7ziNY2Ye0n0laiCqK8X6iteNcz4KWJ8LNLT+KVD2o50NxOTlY6JZPyDnsOdfjgTC6cM4EL50ygqTXAqxt280JlDS+t20VDczutgSCvrN/NK+t3kyZrmVs0ksXFBZw7o4Bxwwd3POf63y+sZ+OeRgDycjK5yOZOjTFR+HkO9R4RmYwbvd0ecfqXqvrTrrYpIuNwc5PRbAKyvPduizgXAOLdu8sCIuuE6mWFlSFKuUDE+UTaSlS32xKRfGBMxOEBlZlqS90hDjS3A/D/Fk/ji6cdQyCoUZ8/HZyVzuIZBSyeUUBre5A3N9XxfEUNy9+vYc/BVoIKZZv2UrZpL7f9+X1OKhxOWyDI+zsPTwJWf6iN7zy5tkefczXGpCZfj82o6vUicg9wDu4f972451A/7GaTPwa+HONcT+1sEznS9FMu0baS8X7XAt+LdqKsrIyamhoKCwspKiqitPTjqe6FCxeydu1aamvdwHjq1Knk5uZSXl4OQG5uLvPnz6esrIzGRjcqKykpobGxkfXr1wOQn5/PzJkzWbFiRUe7CxYsoKqqiurqagCKiorIz89n1apVAGRlZbFgwQLKy8upr68HYMaMGQBUVFQAkJeXR0lJCaWlpbS2uqTz8+bNo7a2lqoq92hz+DW9Vt3e8f557XW88vLGLl3TcXPzOGvYLj7al8W6hkG8U9PWsehoTfX+iP8UgqCMHATTdSt/+WstI4YM5lOf+lRSr6k//neya7JrSpVrWrNmDX7IkXcuE6gkkgZ8F/i/o5nEQURuBn4E5KhqU9jxO4AbVDU7Rr2lwBJVHRtx/BGgRFWnich43G3ra1X1vrAyJ+AWPX1eVX+fSFtR3v9h4AxVnRxx/EVguKrOizj+N+CAqi6O81nEGqE+XVFRQXFxcayq/cYNj63mj+9uZ1h2BqtvXeR7L1JVZe32/fy1ooaH39hMU1sgZtlPThnNb6+aa6NUY/qRysrKUBCfoaqVXa3frRGqtxDoOuBvuEdljpbd3mtBxPuOBXZ2Um+UiGRG3C4Or1cHBPl4nja8DGHlEmkrUbuBqVGOj8UF8ZhUtZaI+VcZYP+4v7XZPVV06uSRSdnYW0SYVTiCWYUjePa9HWzd2xSzbHX9IQumxpjD+Fmq+EfcAqSj6U3v9YLQAW+0fA5Q1km9dOC8sHrDcKuRywBUtQV4Fzg/ou65uFW97ybaVhevZ1J4IgcROR63i09X2xpQtu9rorreBby5RSOT2nZQlUkjc+OWKczLIdiNuzvGmP7LzxzqVOCTInIyEO2BQFXVhT7aj9ZghXeb9A5xw7GNwJXAeOCeUDkRGQMMUtVq79DzQCXwgIjchBuNXo+bHPtV2FvcCTwiIstwCSSmAzcCD6jqgS62lYhluFvnT4rIrbgEELcCNd77mxjervo450WyA2oiz7leMX+SWwCVbqNUY4zjZ4SqwGu4gCJRfnrqQb3LgMdwj+U8iRvNXaSq4SO6pcBTHR1VbQcWA68CP8MFqwxgkapuDiv3KC4D1CnAn3CB8l7vtUttJUJV9+E2FtgEPAD8GtiBSxpxIF7dgW6VF1AHZ6YzY0KsheHdE/6cazRLZo9nUXGBZUoyxhymW4uSTN8kIsVAxUBYlHT2z17lo9qDnD5lFL/72vzOK3RDUJUXK2u488UN1DY0kz80m28tOqHH91s1xvSOXlmU5M1bbgCuiBgZGtPj9hxs4aPagwDMnTyqx94nTYSFJ47tCKBB1ZjPuRpjTLfuWalqEJd8YFJyu2NM597Z3HPzp5Ey09M6AmiaiN3mNcbE5GdR0i+B27y8s3XRCqhq/E0rjemG0PxpZrowZ9KIXu6NMcY4fgLqnd5r1H0+Pd3bJ8uYON72RqizCkd0eys2Y4xJNj8B9cqk9cKYBB1obuP9HW4BdE/f7jXGmK7wkxz/N8nsiDGJ+PuWeoLewnQLqMaYvsTXCgsROV5Efi4iZSKyQUSKRSRTRL7rrQQ2Jqne8uZPReDkY/J6uTfGGPOxbgc9EfkksAa4EKjGJWYfhNt+7Vrg28nooDHhQhmSpo8bxrDseDv2GWPM0eVnFPlfwIu4QHo5LjsSqroHuA34qt/OGROuuS3Amup9gN3uNcb0PX4WJc3GpfxrE5HIpZYbsWdUTZK9u3UfbQE3gTrPAqoxpo/xM0KtBY6PcW4WEVuLGePXW2EJ8U+ZbAHVGNO3+AmoDwM/EJEvATneMfXmVv8D+L3PvhlzmNDzp8eNyWX0kEG93BtjjDmcn4D6fdxWZg/zcaakV72f93DbkBmTFG2BIH/fUg/A3KKey99rjDHd5ec51ABwmYjci9uEuwBowAXUZ9S2sTFJVLF9P01tAcDmT40xfZOfRUkAqOrrwOtJ6IsxMYXPn55qAdUY0wdZ8gWTEkLzpxNGDGbCiMG93BtjjDmSBVTT5wWD2jFCtdu9xpi+ygKq6fPW72rgQHM7YAkdjDF9lwVU0+e9vdnmT40xfV+XFiWJyKe6Ul5VX+tad4w5UmhD8dFDsjh2dG4v98YYY6Lr6irflUBXHoex3Z+NL6ofz5/OLRqJiPRyj4wxJrquBtQzw34/HfgmbmeZPWHHxwL/A3zXX9eMgc11h9jd0ALAqZZu0BjTh3UpoKrqq6HfReQ/gZtV9cnIciIyAvgasNR3D82A9nbY86e2IMkY05f5WZQ0G9gR49w2YKaPto0BPp4/HZqdwbSCYb3cG2OMic1PQN0OfCnGuSuIHWyNSdhbm12a6FMnjyQ9zeZPjTF9l5/Ugz8BfiUixwN/AnYBo4ElwDzgKv/dMwPZzv1NbNvbBNj8qTGm7+v2CFVV7wcu9P68DTdf+n1AgPNV9de+exeFiOSJyIMisltEmkVkjYhcnEC9iSLyhIjsE5EmEXlTRD4dpdzVIrJORFpEZIeI3C0i2d1pyytbIiI/F5F3Ypz/toiYti8yAAAgAElEQVRolJ8Bv/3dWzZ/aoxJIb6S46vqM8AzIpIOjAF2e7vQ9KRHgfnATUA1biT8uIicpaoro1UQkQzgr8Bw4DrgIHA98IKIzFLVDV65y3FfDO4HvgWcBNwODAO+2o22bsbNJbfjbpFHMwHYCHwl4vjuRD+Q/ioUULMz05g5YXgv98YYY+LzvduMiJQAc4FRwINAjYgcq6qb/LYd5b2m47aKu0pVH/KOPQusxwW3lTGqLgKKgYWq+rJXbzkuIF8D3OCVuwEoVdWve38/JyKZwC0icqOq1nWhrbOBUuBq4J+BM2L0rRD40Nu1x4QJBdSSSXlkZVhSL2NM39btf6VEZLiIvAS8DfwCd7t3vIiMByq6mlUpQfO91xdCB1Q1CLyMC+rx6rUCr4TVawDKQvVEJAuYE962Zznui8ecRNvyjn1NVb+hqqs6uaYJuFXRJszexlY+rD0I2PypMSY1+PnafxcwDfhHYCRu7hRV3YG7Zfp93707UoH3WhtxvBbI76TeniibnofXG40LnNHaJqxcIm11xQTgEyKyRUTaRWSjiFzZjXb6lfD8vbbDjDEmFfi55fsZ4HpVfd6bQw33Z7w5x64QkXG4ucloNgFZAKraFnEuAGTGaToLiKwTqpcVVoYo5QIR5xNpqyvqgL3Ad7x2rwUeEpGdqvp8rEoiko+btw53XDfev08K3e7NSBPmTMrr5d4YY0zn/ATUTGB/jHMjgWA32vwx8OUY507sRnuJSDQ3cSLlupLn2FVQnR3+t3cbfS1u0VXMgIoLvN+LdqKsrIyamhoKCwspKiqitLS049zChQtZu3YttbVu4D116lRyc3MpLy8HIDc3l/nz51NWVkZjYyMAJSUlNDY2sn79egDy8/OZOXMmK1as6Gh3wYIFVFVVUV1dDUBRURH5+fmsWuXueGdlZbFgwQLKy8upr68HYMaMGQBUVFQAkJeXR0lJCaWlpby0pgGA4vFD2Vm9haqqKoCUvqbW1lYA5s2bR21trV2TXZNdUx+7pjVr1uCHHHnnMsGKIk8B43GLdBpwo6uTccHgFWC/qp7vq3dHvufNwI+AHFVtCjt+B3CDqmbHqLcUWKKqYyOOPwKUqOo0b+53O3Ctqt4XVuYE3KKnz6vq7xNpK8r7PwycoaqTE7zOu4EvquqoOGVijVCfrqiooLi4OJG36pMamts46fYXCSr806eP5abzeuq7lDHGfKyysjIUxGeoamVX6/sZof47biHOR7iFO+odmw1MBD7po+1YQo+SFABVYcfHAjs7qTdKRDIjbheH16vDjaoLIuqGAmeoXCJtJcRLivEJYFnE40bpdDLaVdVaIuZ7+8tOLOVb9xH0rt7mT40xqcJPYoePcM9pPoULnkHgPGAD8AlVfS8pPTzcm97rBaEDIpIGnIML7vHqpXv9C9UbBpwWqqeqLcC7QOSo+lzcqt53E22rC0YDDxP2SI24qHgWUNHFtvqNt6pcukEROPkYC6jGmNTgN7HDdtyuMkeFqlaIyIvAHV7g2Qhcibv1fE+onIiMAQaparV36HmgEnhARG7CjUavx40CfxX2FncCj4jIMlwCienAjcADqnqgi20lYhXu2dnfiMituPSNV3rve04X2+o3QguSTiwYxvDB8daaGWNM39GtgOqNCpuBc1X1lc7KJ9lluMB3CzAUeB+4SFXDR4dLcbedTwFQ1XYRWYx71OdnuNW45cAiVd0cqqSqj4rIEFyWpEtx+7zei8t4RFfaSoSqBkXkIuAHuPSNY4EPgMtV9aWutNVfNLcFWLPNrXWzdIPGmFTSrYDqBYIPgElJ7k8i770Pl24wZvJ9Vf1slGPVwCUJtH8/7jnaeGUSaius/FfinKsH/sX7GfDWbNtHa8AtELeAaoxJJX5u+f4e+JGIHMDd9jyCqr7mo30zAIUnxLcMScaYVOInoP7Qe32SI1ekincsMuGDMXG95WVIOnZMLmOGDurl3hhjTOL8BNQzk9YLY4D2QJC/b3EPdM+10akxJsV0O6Cq6qvJ7IgxlTsOcKjVPY5r86fGmFTj67EZERkFnA6MiDg1FBirqrf6ad8MLLahuDEmlXU7oIrIXNxG23m4+dLwND2KS0xgAdUkbJUXUCeMGExhXk4v98YYY7rGz/ZtP8ElJpiBC6YXAEXAEqAR+K7v3pkBIxjUji3bTp1su8sYY1KPn4Bagkt6sA43It2jqltU9c+4RAVRd0IxJpoPaw+yv8mlRp5bFHNPAGOM6bP8BFQBgt5G27uAY8LOrcalzzMmIaH8vWDzp8aY1OQnoJYBXxGRTOAt4F9FJNvLsfsFYEsyOmgGhtD86ajcLI4bk9vLvTHGmK7zs8r3R8BLuNu+twN/A/YCLbhVvrE2CjfmMKrascL31Mkj+802dMaYgcXPc6iveSt9d6rqLu/3L+FGvc/Yc6omUVv3HqK2oQWw273GmNTld/u21WG/r8VtdWZMl6yy50+NMf2An+dQv9RZGVX9bXfbNwNH6Hbv0EEZnDhuWC/3xhhjusfPCPXhOOdCyfItoJpOhQLqyZPzSE+z+VNjTGryE1CLYhwfCzyK2wDcmLhq9jezde8hwG73GmNSm59FSbEei9kiIj8Argce6W77ZmAIbdcGMM8CqjEmhfl5DjWe7cDUHmrb9COhhA6DMtKYOSFyjwVjjEkdSQ+oIjIO+AawI9ltm/4nNH86Z9IIsjJ66vudMcb0PD+rfIN8vPgoUgD3TKoxMdU3trJh10HA8vcaY1Kfn0VJ3+fIgKpADfCyqn7ko20zALxt86fGmH7Ez6Kk25LYDzMAhW73ZqQJcybZ/KkxJrX5ueU7qSvlVXVrd9/L9E+hFb4zJgwnJ8tX0i5jjOl1fv4V20zsOdRo0n28l+lnDra0U7njAGC3e40x/YOfgPod4GZcAocDYcfzcLvP/ByweVQTVfmWegJB933MEjoYY/oDP88pLAa+q6r3qupvwn7uxgXZk8OPJ6e7ICJ5IvKgiOwWkWYRWSMiFydQb6KIPCEi+0SkSUTeFJFPRyl3tYisE5EWEdkhIneLSHZX2/L2hv2xiGz2+vmhiNwWpa1iEXlBRA56P8tFZFZ3P59UEZo/FYFTjrGAaoxJfX4C6mnAhzHOrffO94RHgYuBW4FLgCrgcRE5I1YFEckA/grMA67DbYDeDrwgIieElbscWAqUAp/F7fV6LfCLrrYF/MGr+7/AZ4BlwH/gRu6htoYDK4DxwFeBr3m/rxCRfh1lQgF16tihDM/J7OXeGGOMf35u+e4FLgJeiHJuCXDIR9tRich04FzgKlV9yDv2LC6AXwesjFF1EVAMLFTVl716y4Fq4BrgBq/cDUCpqn7d+/s5EckEbhGRG1W1LpG2RKQEuAC4WlUf8Np6UUTGAFeLyDdUtQ0XjPOB01V1o9dWGbAJuIKw4NufNLcFWF29D7D5U2NM/+FnhHo/Ljg8LSJfFJFzROTzIvIE8E+EjeqSaL732hHEVTUIvAzM7aReK/BKWL0GoCxUT0SygDkc+QVhOe6Lx5xE2wIGAb8Dno9o630gCxgS1tbGUDD12tqMG/nHu56U9l71flrbg4AldDDG9B9+Rqi340ahN+JGYyG7gBtU9R4/HYuhwHutjTheixvpxau3R1UjVyXX4m7dAozGfR7R2ias/U7bUtU3gTej9ONMYLWq1oe1Ffl+obbiXU9KC+XvBTi1KK8Xe2KMMcnjJ7GDAj8VkTuBSbht23YC27xRY5d5eYCHxzi9CTe6w7tdGi4AxJuIywIi64TqZYWVIUq5QMT5RNo6gohcAHwOOL+L/YrVXj4wJuLwcfHq9BWrvPnTotG55A/N7qS0McakBt9P06tqALcwqArcKlygPm6l2H4MfDnGuRO72WZnEn2WNpFyUcuIyEm4W8D3quqzSXq/a4HvRTtRVlZGTU0NhYWFFBUVUVpa2nFu4cKFrF27ltpaNzCeOnUqubm5lJeXA5Cbm8v8+fMpKyujsbERgJKSEhobG1m/fj0A+fn5zJw5kxUrVnS0u2DBAqqqqqiurgagqKiI/Px8Vq1aBUBWVhYLFizg7Xf+zlub9gAws2Awu3btoqKiAoC8vDxKSkooLS2ltbUVgHnz5lFbW0tVVRVAn7ym8vJy6uvd//IzZswAsGuya7JrSsFrWrNmDX7IkXcuE6zoHv+4Fxiuqpd6mZOWA1OAd4Alqlrjq3dHvufNwI+AHFVtCjt+B+42c9Thjogs9fozNuL4I0CJqk4TkfG4beeuVdX7wsqcgFv09HlV/X0ibUUcLwL+BrwNfNb7AhI69yLu85sXUedvwAFVXRzns4g1Qn26oqKC4uLiWFV71XvV+/jM/7wBwJ2XnMTFJxf2co+MMcaprKwMBfEZqlrZ1fp+FiXdhluJ+rr3908BwW0sPho32ky23d5rQcTx0O3mePVGeSt2Y9WrA4Ix2iasXCJtAR1B70VcQL40PJiGtRX5flHbiqSqtapaGf4DbIxXpy8IPS4DltDBGNO/+AmolwE3q+rPRWQQ7lnLf1PVn+NuRZ6bjA5GCC306VgEJSJpwDm4Vbbx6qUD54XVG4Z7VrYMQFVbgHc5fI4T3HW0eucSass7NgR4DtgPXKCqzTH6NSk8kYOIHA8c28n1pKzQ/Om44dkU5g3u5d4YY0zy+JlDHQO85/0eSuIQumG+E5eCMKlUtcK7TXqHiAhuRHYlLhlCx6pi73nPQapa7R16HqgEHhCRm3Cj0etx85S/CnuLO4FHRGQZLoHEdNwq5gdU9UCibXmj1z8Bx+PmhE9y3e2wS1U/xCV7+C7wpIjciksQcStuC7xHfXxUfVIwqLzjJcSfWzSSiM/EGGNSmp+A+hFulLYCt5l4qTfKAzibnsvjexku8N0CDMU923mRqoaP6JYCE4FTAFS1XUQWA3cBP8OtoC0HFnnPfeKVe9QbWX4LuBTYg5snvjmsTCJtTcB9BuACa6TfAF9R1X0istBr5wFcUH4DuCwsgPcbH+0+SP0ht6jZbvcaY/obPwH1p8AyEfkKbjR6AYCI3I8bNX7Dd++iUNV9wFXeT6wyn41yrBqXqrCz9u/HJa2IVyZuW15gTWj45c199sTt8T5nVZVtKG6M6b/8PIf6iIgcwAWDlar6nHdqJHC9qv4qdm0zEIUWJI3MzeK4MUM6KW2MManF13OoqvoX4C8Rxzrd+cUMPKrK215APXVyns2fGmP6HT+rfAEQkUEiEvASwhsT1ba9TdQccAudLX+vMaY/8h1QPTbcMDG1BYKUheXvPXnSiF7sjTHG9IxkBdTupVsy/V5QlRXrdvHDv7wPQJrAjn1NBLuZocsYY/oqG6GaHhNU5frHVnPNsnIONLd7x+DaR97l+sdWW1A1xvQrvgOqqraoapqqliejQ6Z/aAsEebGyhqdX74h6/unVO3ixsoa2QLc2JjLGmD7H1ypfL8HBGbisSZGjVFXVmM+Kmv4tPU1YVrY1bpllZVtZVBwtlbExxqSebgdUL1XebcBBXPq9SHY/bwBLE2Fb/aG4ZarrD5Fmj88YY/oJPyPUq3Ep/q7t7obipv8KqjIxL4ctdbGDamFeDkFVC6rGmH7BzxzqSOBxC6YmmkBQuWL+pLhlrpg/iUDQbmQYY/oHPwF1JTA7Sf0w/UxmehpnTcsnOzP6/2JLZo9nUXEBmenJWmhujDG9y88t34eAh0SkFVgTrYCqvuajfZPi3viojuY2dwNjypghtAeDFOblcMX8SSwqLrBbvcaYfsVPQH3ce72HIxcgiXcs3Uf7JsX94Z1tAAzOTOfJa09j+OAsgqoEgjZvaozpf/wE1DOT1gvT79QdbOGldbsA+IeZ4xg+OAtwq3/T0i2YGmP6Hz/bt72azI6Y/uWp1TtoC7gbF5eeUtjLvTHGmJ7nN7HDKOB0IDLb+VBgrKre6qd9k5pUlce9272TR+Uw1zYTN8YMAH4SO8wF/grk4eZLw+/jKVABWEAdgNZu388HNQ0AXHLKRNv71BgzIPh5ZuEnwCpgBi6YXgAUAUuARuC7vntnUlJoMVKawMUldrvXGDMw+AmoJcC9wDrciHSPqm5R1T8DPwC+l4T+mRTT3BboSIj/6RPGUDA8u5d7ZIwxR4efgCpAUFUV2AUcE3ZuNTDdT8dManqhsoYGb6u2S0+Z2Mu9McaYo8dPQC0DviIimcBbwL+KSLa4CbMvAFuS0UGTWkK3e0fmZrHwxLG93BtjjDl6/Kzy/RHwEu627+3A34C9QAtule+XfffOpJRtew/xxkdu46ELZ08gK8PSChpjBg4/z6G+5q303amqu7zfv4Qb9T5jz6kOPE/8vbrj90tPtcVIxpiBxddzqKq6Ouz3tcCNvntkUlIwqB0BdVbhcKYVDOvlHhljzNHl656ciBwvIj8XkTIR2SAixSKSKSLfFRG73zeA/G1jHdv3NQHu2VNjjBlouh30ROSTuF1mLgSqgeOAQcBw4Frg28noYJT3zRORB0Vkt4g0i8gaEbk4gXoTReQJEdknIk0i8qaIfDpKuatFZJ2ItIjIDhG5W0Syu9qWt0DrxyKy2evnhyJyW5S2vi0iGuXn9939jHpDaDHSoIw0PnPS+F7ujTHGHH1+bvn+F/AicAnuOdRWAFXdIyK3Af+OS/6QbI8C84GbcIH8KuBxETlLVVdGqyAiGbisTsOB64CDwPXACyIyS1U3eOUuB5YC9wPfAk7CLbgaBny1K20BfwA+DfwQ98XjNFyyi/HA18O6NwHYCHwlotu7u/ax9J79h9p4vrIGgMUzChg+OLOXe2SMMUefn4A6G7hIVdtEJHKbto3AJB9tRyUi04FzgatU9SHv2LPAelxwWxmj6iKgGFioqi979ZbjAvI1wA1euRuAUlUNBbznvMeCbhGRG1W1LpG2RKQElznqalV9wGvrRREZA1wtIt9Q1TbveCHwoaq+7uez6U3PrNlOa7vb99SePTXGDFR+5jlrgeNjnJvlnU+2+d7rC6EDqhoEXgbmdlKvFXglrF4D7lnauQAikgXMCW/bsxz3xWNOom3hbn3/Dng+oq33gSxgSNixCcC2OH3v8x7zbvdOGDGY044d1cu9McaY3uEnoD4M/EBEvgTkeMfUm1v9D6An5gALvNfIYF0L5HdSb4+X1SlWvdG4wBmtbcLKddqWqr6pqleoanVEmTOB1apaH3ZsAvAJEdkiIu0islFEroxzLX1K5Y79VGw/AMAlpxSSlmaJ8I0xA5OfW77fB6bhAmvotuarQK732uWdZkRkHG5uMppNuNEdYbdLQwJAvIm7LCCyTqheVlgZopQLRJxPpK0jiMgFwOeA8yNO1eESYnzHa/da4CER2amqkSPc8PbygTERh4+LVb6nPP5Otdcf+NzJ9uypMWbg8pPYIQBcJiL34uY1C4AGXDB9JsoILhE/JnaGpRO71dHOJdrPRMpFLSMiJ+FuAd+rqs8eVkF1dkTZl4C1uEVXMQMqLvBG3YCgrKyMmpoaCgsLKSoqorS0tOPcwoULWbt2LbW1buA9depUcnNzKS8vByA3N5f58+dTVlZGY2MjACUlJTQ2NrJ+/XoA8vPzmTlzJs8vf4nH324B4LSikTTWbmNFuQuwRUVF5Ofns2rVKgCysrJYsGAB5eXl1Ne7AfqMGTMAqKioACAvL4+SkhJKS0tpbW0FYN68edTW1lJVVQXQ49e0YsWKjnYXLFhAVVUV1dV2TXZNdk0D4ZrWrFmDH9K9uNc7RORmXMrDHFVtCjt+B3CDqkbd2kRElgJLVHVsxPFHgBJVnSYi44HtwLWqel9YmRNwi54+r6q/T6StiONFuLSMbwOf9b6IdHaddwNfVNWYE5JxRqhPV1RUUFxc3Nnb+Pbsezv5xiPuf8h7Lp/NktkTevw9jTGmp1RWVoaC+AxVrexq/S6NUEVkVlfKq+p7XetOp0KPkhQAVWHHxwI7O6k3SkQyI24Xh9erA4J8PE8bXoawcom0BXQEvRdxAfnSyGAqIscDnwCWRZxLp5MRsarWEjHfe7Q38g49ezosO4NziyM/NmOMGVi6uihpNfBu2E/k35HHk+1N7/WC0AEvI9M5uFW28eqlA+eF1RuGeza0DEBVW3B9jpzjPBe3qjd0PZ225R0bAjwH7AcuUNXmKP0ajZuDPiOsngBnARVxrqfX7djXxGsfuu83S2ZPIDsz8skpY4wZWLo6h9qKW3izEzcnWIpbDDTIe+3RIZKqVojIi8AdXuDZCFyJS5ZwT6ic97znoLBVts8DlcADInITbjR6PW4U+Kuwt7gTeEREluESSEzH5Sd+QFUPJNqW9+zqn3CPFX0ZOCli9LhLVT8EVuGenf2NiNyK21f2Su99z+n+J9Xz/lheTWi2wJ49NcaYrgfUcbgAcRUuE9JFuMxCD3u3II+Gy3CB7xbcNnHv4xJMhI9QlwITgVMAVLVdRBYDdwE/w30pKAcWqermUCVVfdQbWX4LuBTYg9ue7uawMom0NQE42/v9T1Gu4TfAV1Q1KCIXAT8AbsPdNv4AuFxVX+rqB3O0BIPKH7zVvdMKhjJjgiXCN8aYbi9KEpHTgatxj4JkAk8BS1V1RdyKpseISDFQ0dOLkso21XH5Uvf95dbzp/PVTxb12HsZY8zR4ndRUrcTO6jqG6r6Fdzt1utxtzeXi8hHXsL3eIkWTAoLLUbKTBcunGMre40xBnxu3wagqgdU9ReqWoJLvbcN9zzpVr9tm76nobmN59a6xcznTB/LyNyYuSyMMWZA8bXBeIiIDMLtOnM1sAC3uObXyWjb9C1/eW8nzW0uEb7te2qMMR/zFVC9OburgS8CI3BJ6i8FnlLVdv/dM31N6HZvwbBsPnV8ZF4JY4wZuLocUL0Nsi/D7el5Gi7RwQO4BUkbk9s905d8uKuBd7fuA+DikyeQbonwjTGmQ1czJf0P8AXchtuv4ALrn2w0OjA8/vePN8+55GS73WuMMeG6OkK91nvdDYzC7TjzU2/UmsXhiR00Xi5ak1raAkH+6CW+n1c0ksmjc3u5R8YY07d0NaD+lsR3ZzH9yCsf1LLnoNvdwTIjGWPMkboUUL3nTs0AFMqMNGRQBufNtET4xhgTyfdzqKb/q21o5pX1LrPkBSeNIycrKU9bGWNMv2IB1XTqT+XbCQTdnX579tQYY6KzgGriUtWOZ0+n5A9hzsQRvdwjY4zpmyygmrjKt+5j4+5GAC49pfCob2JujDGpwgKqietxb3SaniZ8dk5hL/fGGGP6LguoJqZDre38ec0OAM6als+YoYN6uUfGGNN3WUA1MT373k4aWwOAPXtqjDGdsYBqYnrce/Z09JBBnDHVEuEbY0w8FlBNVJt2H+StzXsBuLhkApnp9r+KMcbEY/9KmqieCE+Ef4otRjLGmM5YQDVHaA8EedJLhF8yaQRT8of2co+MMabvs4BqjlD64R52HWgBbDGSMcYkygKqOUIoM9LgzHT+cda4Xu6NMcakBguo5jB1B1t4ad0uAP5h5jiGZmf2co+MMSY1WEA1h3lq9Q7aAi4R/qW2GMkYYxJmAdV0UNWOVIOTR+Uwt2hkL/fIGGNSR8oFVBHJE5EHRWS3iDSLyBoRuTiBehNF5AkR2SciTSLypoh8Okq5q0VknYi0iMgOEblbRLK72paI5IrID0XkIxE55LV5o4hkRJQrFpEXROSg97NcRGZ19/PpjrZAkD+8s42b/riWD2oaALdNmyXCN8aYxKXiTtGPAvOBm4Bq4CrgcRE5S1VXRqvgBbG/AsOB64CDwPXACyIyS1U3eOUuB5YC9wPfAk4CbgeGAV/tSlvAU8Bs4HvAh8ApwI+AocCtXlvDgRXAbq/9NOAWYIWITFXVvT4/q04FVVmxbhc//Mv7HGhux/ULLpwzvqff2hhj+pWUCqgiMh04F7hKVR/yjj0LrMcFt5Uxqi4CioGFqvqyV285LiBfA9zglbsBKFXVr3t/PycimcAtInKjqtYl0pbXz7OBr6nqg15by0VkKvBlvIAKfAHIB05X1Y1eW2XAJuAK4Ofd+qASFFTl+sdW8/TqHYcdV4WfPr+euy6bTZqNUo0xJiGpdst3vvf6QuiAqgaBl4G5ndRrBV4Jq9cAlIXqiUgWMCe8bc9y3BePOYm2hRuRjgP+L6Ktg7gRani/NoaCqdfWZq9+vOvxrS0Q5MXKmiOCacjTq3fwYmUNbYFgT3bDGGP6jVQLqAXea23E8VrcSC9evT2qqnHqjcYFzmhtE1au07ZUtU1Va1S1VUTSRWSYiHwO+Arws4h+Rb5fItfjW3qasKxsa9wyy8q2kp5mI1RjjElEn7rlKyLjcHOT0WwCssAFrIhzASDeA5NZQGSdUL2ssDJEKReIOJ9IW+H2A7ne7w+q6g+72K+oRCQfiNwC5rh4dcKlibCt/lDcMtX1h+yWrzHGJKhPBVTgx7g5xmhO7KH3jBxp+ikXrcwC3JeEs4HviMj7qvqzKOW6+n7X4hY8HaGsrIyamhoKCwspKiqitLS049zChQtZu3YttbW1fO3YJp4SZXezEAjC9kPC6EHKnhbh6qkBJg1rZMWKFZSUlNDY2Mj69esByM/PZ+bMmaxYseLji1ywgKqqKqqrXQ7goqIi8vPzWbVqFQBZWVksWLCA8vJy6uvrAZgxYwYAFRUVAOTl5VFSUkJpaSmtra0AzJs3j9raWqqqqgA6vSaAqVOnkpubS3l5OQC5ubnMnz+fsrIyGhsbAeya7JrsmuyajrimNWvW4Icceeey7xKRm3ErZXNUtSns+B3ADaqaHaPeUmCJqo6NOP4IUKKq00RkPLAduFZV7wsrcwJu0dPnVfX3ibQVp/+/xC1EylPVdhF5ERiuqvMiyv0NOKCqi+O0FWuE+nRFRQXFxcWxqgJuDnXFul1cs6w8ZplfXlHCwhPH2tZtxpgBobKyMhTEZ6hqZVfrp9q/lLu914KI42OBnZ3UG+Wt2I1Vrw4IxmibsHKdtiUix1fdq8MAABewSURBVIvINSIyIqLMe8AQPg6Eu6O8XyLXg6rWqmpl+A+wMV6dcJnpaSwqLmDJ7OiPxyyZPZ5FxQUWTI0xJkGp9q/lm97rBaEDIpIGnINbZRuvXjpwXli9YcBpoXqq2gK8C5wfUfdc3KredxNtCxgP3AdEjjBPwq303RPW1qTwRA4icjxwbCfXkxRpItx12Wx+eUUJw7Ld3f9h2Rn88ooSe2TGGGO6qK/NocalqhXebdI7xKXx2QhciQtg94TKifz/9u48XI6qzOP492cWQDaVJcGQCaMjjqjgjMoAgoCQACMzKMgiOA6IAg6DTIJhBFnFBcYVdBQxxrDJ7grKJkQUHUQZ2QcIGhYhQAIBwpJA8s4f7+lQVPoufbtuci/8Ps9TT9+uPvVWdXXffqtOnTpH6wArRURrlOxLgVuBaZKOIM9GJ5PXKb9dWcWXge9LOovsQGIjYCowLSKe6CDWr8iE+A1JawN3AluSnTd8odKo6izgKOAiSccAz5P3qM4p6x90r5DY7k1jOGrnjfjLY88w7tWrsN2bxjiZmpl1aFgl1GJPMvEdTd7TeRuwa0RUz+hOA8aTvRNRrlfuCHyVvG1lNHADMKnc90kpd46k1chekvYgzyS/DhxZKdNnrIhYImkSmRynkFW4s8iGRNMqseZL2q7EmUYm5WuBPSsJfNCNGvEKj3tqZtalYdUoyXon6c3ALf1plGRmZi/2cmuUZGZmNiQ5oZqZmTXACdXMzKwBTqhmZmYNcEI1MzNrgBOqmZlZA5xQzczMGuCEamZm1gAnVDMzswY4oZqZmTXACdXMzKwBTqhmZmYNcEI1MzNrgBOqmZlZA5xQzczMGuCEamZm1gAnVDMzswY4oZqZmTXACdXMzKwBTqhmZmYNcEI1MzNrgBOqmZlZA5xQzczMGuCEamZm1gAnVDMzswY4oZqZmTVg2CVUSa+W9F1Jj0h6VtKNknbrx3LjJV0oab6kZyT9VtLWbcp9TNLtkhZKekDS1ySt3GksSatK+qykWZKeLjGnShpZK3e4pGgznTvQfWRmZsvfyL6LDDnnAJsBRwD3A/sDF0h6T0TMbLdASWI/B9YEPgEsACYDl0naOCLuLOX2Ak4DvgMcBmwCHA+sAXykk1jAj4C3AccCdwHvAD4HrA4cU9m8ccDdwL61zX6ks91iZmYr0rBKqJI2AnYA9o+I6WXeJcAdZHKb2cOik4A3A9tFxFVluSvIhHwQMKWUmwL8KiIOKM9/JmkUcLSkqRExrz+xynZuD3w0Ir5bYl0h6Y3Av/LihLo+cFdE/HqAu8XMzIaA4Vblu1l5vKw1IyKWAFcBm/ax3CLg6spyTwL/01pO0mjg76qxiyvIA4+/628s8ox0PeDMWqwF5Blq1Tjgvl623czMhoHhllDHlseHa/MfBtbtY7m5ERG9LLc2mTjbxaZSrs9YEfFcRMyJiEWSRkhaQ9IHyGrdr9SWGwdsIekeSc9LulvSfr28FzMzG4KGVJWvpPXIa5Pt/AkYDZmwaq8tBkb1Eno0UF+mtdzoShnalFtce70/saoeB1Ytf383Ij5be30e8CjwqRL334Dpkh6MiEvbxANA0rrAOrXZfwswa9asnhYzM7MeVH472/2W92lIJVTgC+Q1xnbeNEjrrJ9pdlOuXZmtyIOE7YFPSbotIpaepUbE26qFJV0J3Ew2uuoxoZKJ99h2L7zvfe/rx6aamVkPxgP/2+lCQyqhRsS+LNvadSlJi8rjKhHxTOWl0cDCXkIvAlZpM7+63KLyWC/XOlKplusr1lIR0fpQZkpaGzhe0ikR8Xy7DY2IxZIuB/6l3esV3wQuqM1bDdgQuIUX3k9/vR74MbAL2eq4aYMZ39v+0ozvbV8x8V/O2z6aTKa/HMjKh1RC7YfWrSRjgT9X5o8BHuxjubUkjapVF1eXmwcs4YXrtNUyVMr1GUvSG4DtgHMjYn6lzE3AgWRV7YOl3BbAWRGxuFJuBH2cEUfEwyx7vRfgut6W64mk1p93R8StA4mxouJ721+a8b3tKya+t73zM9OW4dYo6bfl8Z9aMyS9AphItrLtbbkRwE6V5dYANm8tFxELyR25c23ZHcizvdZO7jMW8FrgW8COtVibkC1955bnawMzgG0qsQS8hzzLNDOzYWJYnaFGxC2lOvTzJfHcDexHJrCTW+UkrQOsFBH3l1mXArcC0yQdQZ6NTibPAr9dWcWXge9LOovsQGIjYCowLSKe6CDWr8jk+o1SzXsnsCXZOcQXKme215H3zp4u6RjgofJ+NiIPEszMbJgYVgm12JNMfEeT93TeBuwaEdUz1NPIevB3AETE85J2BL5K3rYyGrgBmBQRs1sLRcQ5klYje0nagzyT/DpwZKVMn7EiYomkSWQHDlPI6uBZZEOiaZVYSyTtCpwAHFfK/R+wV0Rc2eV+MjOz5WjYJdRyTXL/MvVU5v1t5t0P7N6P+N8hux7srUyfsUpnD1PL1Fu5x4B/L9OK9AjZzeJgdXk4mPG97S/N+N72FRPf2z5AWrZ/AjMzM+vUcGuUZGZmNiQ5oZqZmTXACdXMzKwBTqgvc5JeUQY+v7MMqj5b0smSXtVQ/JGSppQB1p8unf9/QdKqfS/d8brOL4Ozb9NgzJ/1MAD8QQ3Ff6OkGZLuldSuo46BxNy3h21uTdMbWs8Bkm6W9JSkP0s6qanPVdI+JfazkmZJ+kSX8TaU9HlJy4zsJGm8pAslzZf0jKTfStq6idjl9dUlfUTSNZJ66lp1oNv+Lkm/kLRA0jxJV0h6Z8OxH5P0sKSfSnprU9teK7dT+W7OaGjb9+jhu99bfwXdiwhPL+MJOIXsMvEEshOLycCTwGUNxZ8GPA0cTt5bewgwHzij4ffxXvJe4AC2aTDujWQXj1vWprENxN6u7JubgIOBbRva5nXbbO+WwF5l/+zewDoOLLG+Vr43U4FnyF6/uo3d2s7vlc/16+X55AHEmgj8piz/XP7kvej1kWQnKvcBHwZ2Je8jfxbYsMvYawFnAE+1Xgf2bXDbNyv/u5cB7y/T9WTnMd1u+9Zl/oXlM9i1lH8EGNPtttfKrgrMLmVnNBGb/B1b0OZ/YONuv5+9bttgBvc0tCeyC8TFwGdr8z9ZvqwTuoy/OvA8cEJt/nFk71OjG3ofqwH3AL+m+YQ6D/jPQdj3q5NdVf4QGLmcPu8vlf00ooFY1wLX1OZ9vvzArdxl7NuAq2vzziMPxDqKTR4onk4evBzfJnH8Y/nOvKf22TwOfKXL2JuU7+QB5e9OE2pf8X9CGYWrMm9M+Z87tsvY55ckN6Iyb4PyHvbrdttrZb9CdtLzAP1LqH3GJvsquL3b73mn07C7D9UatSbZI9RFtfm3lcfXkD/AA/UUsD7541S1gDwzWIXOO/Fv53PkD/nngJ81EA8ASSuT+2AwBoDfk+x68oDoYaCEJpXuMT9GHtws7qt8P7wSuL82bx75ua5EnuF1TNKa5MhS9Wrp6WRnK+8kzyD7JSKOrsTeqk2Rzcjv4NWVZZ4sVYObdhM7Im4kz4qQtEF/t7m/8YE7gCsjYlFlmYckPUp+b7uJfSB5W2X1u7KgPK7ewLa3Xns78AnywOa0vuJ2EHscg/N/2ytfQ30Zi4hZEfGheGFEnJZtyW4Qu+q4OiKWRA60/oxyoPVVJU0kz4CnR0Q90XasXC86GPg4WeXYpHHl8d/L9annJP2PpM0aiL09cDtwgqRHS+yZkgZrmMIDyD6op/VVsJ++DewoaW9Ja0jaHDiUHBCim8915fJYT8izy+P6XcRuZywwN8ppTcXDZNX5kBURUyPilOo8SW8ha56u6jL2YxHxqNIoSX9DfnfmkAfhXZM0guxE59yIuLyJmBXjgNdLukPS85Lul/SfDa9jGU6o9iKVI8bPVI98G3AjeYR7OTnQwMe7DShpJPkPeU5EXNFtvDZWJs/CbgY+AHwQWAO4TDnAezfeALyVHG5vnxJ7AvDzcmbcGEmjyGT3vXjx6EcDFhGnAqcCZ5M1EL8hzwj27TL0I8Bj5GATVa1E2nSt2miydqNuMQMcZHpFkTSaPMu7DvhpQ2EPI8/g7wLeDewQEU31QjSF/M5PaShe1fwyfRqYRF5nPlHSgYOwrqVc5WtLSRpPjiV4KTlaTpP2BF5NDld3DHmNo6uWm+SZ7ngGaSCByOGfxlfnSfoD2d/ywfQwwHs/rUk2htkhymAJku4lfwz3Ztkqz27sRQ4gcUpfBftL0l7AQeR10yuAN5NV7ieSDUIGJLJ/6xnAIZJ+AfyA7JN7Riny5MC3uvPNWY7rasJpwBuBzSJiSUMxzyTHBt2A7NP8R5I2jYi5vS7VB0l/TbalOCRyKMpGRcQ/1WZdVX7fjuTFA6I0ygnVAJD0GvIo7gFg7zZVYF2JF8Ym/LVyyL3PSToxIh4YSDxJrycT86HAY+VsdUR5eYSkEQ1dK3yRiPizpNuBtzQQ7saojKkbEb+T9Dh55tqkw4BLIuKuJoKVz+9rwJkR8ekye6akp4Hpkk6LiNu7WMVR5Bnpd8v0INnS9/O8UPXblEXktfy60WQL2mFB0knkQesOTX3OkNdkycs/10u6lqyx2R84qcvQp5KDipxZ/ndbVJ4vbvo3iGxfMVHS6pF9rTfOVb6GpFcCl5BH5DtFxFMNxR0r6aByZFh1E/ndm9BF+E+SP4SnkVV2zwGtEXquJFsNdkXSVpLe2+alPgeA74cHgL9qt1raV0EOSLlmvQk5OlJT1iVbk/6+Nv935XHjboJHxNMRsQewHnngMoGsBn6cLq/rt/EIsFapFq8aQybyIU/SZLLadPeIuKahmB+UtH11Xjn4nQu8rsvY/0BWw25JHtC0/n8nkLcuPUfetjPQ+Osp78Ves/bSiLYLNMgJ9WWuHA1eQDbOmBgR8xoMvxJZdbxPbf4m5bGbFsQnkS0+q1Ors4WDqAxC34UtgXNV6eSiHBy8ke4HgL8M2ELS0h+n0thpDeCPXcaumgrcFBFX91my/x4jGw1tUpv/tvI4p4mVlAZtt5KtSg8jrwE3drBR/Jb8od2pNaO0iN6cHNN4SJO0N/BF8nacixsMfQBwcqmNaK1rHNkyfXaXsW9j2f/dd5IHMBeXv//Q5Tq+R7Z7qNoeuGewzk7BVb6WLfcmkrdUvK76Aw88HhE3DzRwRNwj6XzgaEmQ/ySbkNcxzhxodW+JPZvaP7ZyLFuAO7rZ7orpwH8Al0j6IjCKrI58CvjvLmN/A/gocKlycPmR5DXIW8l7ALsmaWPys92viXgtEbFQ0jeBQyXNJa+xvYG8J/B6OritpSeSXkvetvJW8lr7fWQVf9MuJff5NElHkLf+TCZrIAbtWlsTlGMuzyBb3d4jactakesjYqDV1l8iGzZdIOl7ZG3Qp8gz1K6u75eEVq/dQNIiYF5ELPNah/EflHQG8CVlz113ArsAO5K/c4Nned/46mloTbzQu1C7aWYD8UcDR5D3zD1NNuj5FDBqEN7LNjTfscPfkg215pKJ9Erg7xuKPYFsdLMAeILslWb9Brf9DPL610qDsK9HkGP43lz2y5/IauVXNRT/0LJfbijfn1c2EPM42ncCsD5ZS/M4eevVtcC7mohdeX0DOuzYoa/4ZDLt7f93gy73y7bkwdJ88uzxvP7G7GTfVMrNph8dO/Rz21chO4C4m7wWfifZAKrr72Zvk8dDNTMza4CvoZqZmTXACdXMzKwBTqhmZmYNcEI1MzNrgBOqmZlZA5xQzczMGuCEamZm1gAnVDMzswY4oZqZmTXACdVskEmaISkq0xJJ90n6oaSOh2qTNFPSzEHY1EEj6eQylmwnyxwnqeOu3Mo+Pq7T5cy65c7xzZaPOcDulefjyP5qr5e0TUQM+ZFNunQ8OWqM2UuWE6rZ8rEwIn5dnSHpYnKwgE/TzHBzQ1ZEPAo8uqK3oynK4ZMUEUtW9LbY0OEqX7MVJHIg9+uADVvzJK0u6RRJD0h6VtLvJe3cUwxJP5b0sKQRlXl/U6o9J5fnIenTkr4laZ6kRyWdXR+AWdKOkn4j6SlJD0k6tTYW7L4l1u6S/iBpoaR7JX1c0jhJ50maX+JfKGlsZdkZkmZXno+QdLik28r7vF/SN8tYpP0maYuyjxZKulvSR3so9wlJd5V13STpfbXXx0v6iaSny/78qqQLqlXr5b1/W9KV5Ag77y7zV5P0dUlzyvJXSHpzLf4YSWeW/f+EpB+UsXXtJcQJ1WzFeh3wMICkUcAvgL3Joaf2IIe0+omk+mDJLTOAdcih61p2ARYD51bmHUOO5/rBEntP8syYsu73A5eQ447uBXyGrKK+QtLo2jqPJwe1fj85LNZ/kwcG95VtPoYcsPvkXt73f5FDb00H3luW2Q34Zi/LvIik9YDLyaHkPgQcDny8TbmTgC8DZ5dtvh64SNI25XWRA1u/C5gCfJiskt+tzWr3A64GdgZuKgcyl5X3fRS5f18JXC1prRJ/dXJIuM3JIe/2B94EXN5m39pwNtjjw3ny9HKfyKQ3m7zEMpJMbBPI8UMD+Ggpt295vnVt+auBe2DpcIszKWPVlliPAKdWyl8DXF55HsAPazF/Dvyu/C3gz8DVtTLblGU/Utu+t1fK/FUP8b8DPFLfB5XnmwBvqTwfAZwEzK/MO47exxj9EvAsMKYyb+2yPcdVtm8xcHxt2euAi8vfu5Rldqm8LnKs15m1/fiNWpwPlfnb1rbhKeCT5flRwHPAhpUyG5XlPrCiv5+empt8hmq2fEwgf1SfAxaRCfaDwMERMa2UmQTcFxG/rC17OpkYNqzNJyKeA84Bdi3VqGsDWwBn1YreWHv+EHlmC/AGcgDsM2uxZ5KJfGJt2XmVMvf2EP8vZGLpyc3A5pJukPQk8Dx5hrlmL8vUvRO4NiIeqmzP3FqZSWRN3PmSRrYm8oxx01Lm7eTn8tNKnKDyPivq8Xck9+WvKrHnk9fGN62UuQH4U6XMnSX+pthLhhslmS0fDwL/XP5eUp7PKT/cLeuQiahuTnlcG7ijzeunA4cAW5OJdyHwg35skyrrpZd195YYB+oE4AjgFOBIMrl8rEz9NRbo61ac1nXcW9q81mpQtC4wNwbWwGgsMIZMyHXzK2Ve30OZtQawThuinFDNlo9FEfH7Pso8Sv7w1r22PNbPjgCIiD9IuoW85jkW+HFELOhg21qtb8f0sO5rO4jVXwcAZ0fEf7RmSHpvhzEepO9k/2R5fE/l77oHgNdIUu0Apz+eBO4ir3v3tO4nyWr4w9qUafuZ2vDkKl+zoeNK4K8lbV6bvw/Z4OfOXpY9nWxEM4llq3v78n/A/WU9S0naChhftqtpI4AnavM67eTiOuBdrcY/AJLWrZVpVZ+Pj4jftyZyX7bO9q8HVgL+sRJHvHDm3ptfktX582vx/8ILn9cvyWumf6qVeTAiZnfwfm2Ic0I1GzrOAP4X+JGkAyXtLOkcYFuygUtvZ09nAa8BFpAtX/utxP0kMFHS98t6DwQuAv5I7dpqQ34E7FtuudlJ0nnArrC0VWx/fJWstr1M0m6SdiNb3C4VEa3t/5akYyVNlPQhMom2WiFfSu73GZI+JmlH4HwyCfblO8DdwFXlM9tO0hQyWf9LKfNfZMOoayR9uJQ5nrymunU/36sNA67yNRsiImKhpO2BE4HPAquSjXf+OSIu7mPZOZLuAH4REc8PYN3nSXqWvH3lIrIa+ELgyIhY1Gm8fjiUbIj0GfLs8BLylpJDyMZXfXZTWN7zDuR12HPIs8KTSsyq/cgE9xHyVqGHgPOAY0uckLQLecvOyWSr6bPJM+Bn+tiGpyS9m/zMTiAbVc0CDo+IM0qZB0qtw4kl/srArcA+bRqg2TCmzi8ZmNlQI2ljsqXtphFx/YrenuFG0qsj4rHK85WBe8nrvJNX3JbZcOKEajaMSZpAVglPJVuqugqxQ5JWIqttLyarolcCDiY7etg4Iu5egZtnw4ivoZoNb5sBp5K3t7RraWp9iIiFZF/K48iq4Onlpa2cTK0TPkM1MzNrgM9QzczMGuCEamZm1gAnVDMzswY4oZqZmTXACdXMzKwBTqhmZmYNcEI1MzNrgBOqmZlZA5xQzczMGuCEamZm1gAnVDMzswb8P7fArtEcjIW2AAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 480x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(dpi=120, figsize=(4, 3))\n",
    "facet_var, facet_id, facet_label, facet_ylim = (\"mse\", 0, r\"Mean-squared error\", (-0.00035, 0.0))\n",
    "sns.scatterplot(\n",
    "    x=\"n\",\n",
    "    y=f\"{facet_var}_mean\",\n",
    "    data=filip_cv_final_df,\n",
    "    ax=ax,\n",
    ")\n",
    "ax.errorbar(\n",
    "    filip_cv_final_df[\"n\"],\n",
    "    filip_cv_final_df[f\"{facet_var}_mean\"],\n",
    "    yerr=[filip_cv_final_df[\"yerr_lower\"], filip_cv_final_df[\"yerr_upper\"]],\n",
    ")\n",
    "ax.set_ylim(facet_ylim)\n",
    "ax.set_xlabel(r\"Polynomial degree\")\n",
    "ax.set_ylabel(facet_label)\n",
    "\n",
    "fig.tight_layout();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The error bars are very tiny, smaller than the size of the points."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To look at the spread of the cross-validation scores, we just need to compute the lower and upper bounds for the middle 95% of the values in the `filip_cv_scores_dist_df` data frame. The code below finds those percentiles and joins them into the data frame."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [],
   "source": [
    "filip_cv_final_df2 = filip_cv_scores_dist_df \\\n",
    "    .query(\"score == 'mse'\") \\\n",
    "    .loc[:, [\"n\", \"value\"]] \\\n",
    "    .groupby([\"n\"]) \\\n",
    "    .quantile([0.025, 0.975]) \\\n",
    "    .loc[:, \"value\"] \\\n",
    "    .unstack() \\\n",
    "    .reset_index() \\\n",
    "    .rename(columns={0.025: \"dist_lower\", 0.975: \"dist_upper\"}) \\\n",
    "    .merge(filip_cv_final_df, on=\"n\") \\\n",
    "    .assign(yerr_dist_lower=lambda x: np.abs(x.dist_lower - x.mse_mean),\n",
    "            yerr_dist_upper=lambda x: np.abs(x.dist_upper - x.mse_mean),\n",
    "            n=lambda x: x.n.astype(int)) \\\n",
    "    .sort_values([\"n\"]) \\\n",
    "    .reset_index(drop=True) \\\n",
    "    .loc[:, [\"n\", \"mse_mean\", \"lower\", \"upper\", \"yerr_lower\", \"yerr_upper\",\n",
    "             \"dist_lower\", \"dist_upper\", \"yerr_dist_lower\",\n",
    "             \"yerr_dist_upper\"]]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Our data frame now looks as follows:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>n</th>\n",
       "      <th>mse_mean</th>\n",
       "      <th>lower</th>\n",
       "      <th>upper</th>\n",
       "      <th>yerr_lower</th>\n",
       "      <th>yerr_upper</th>\n",
       "      <th>dist_lower</th>\n",
       "      <th>dist_upper</th>\n",
       "      <th>yerr_dist_lower</th>\n",
       "      <th>yerr_dist_upper</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2</td>\n",
       "      <td>-0.000299</td>\n",
       "      <td>-0.000305</td>\n",
       "      <td>-0.000292</td>\n",
       "      <td>6.772445e-06</td>\n",
       "      <td>6.800843e-06</td>\n",
       "      <td>-0.000526</td>\n",
       "      <td>-0.000106</td>\n",
       "      <td>0.000227</td>\n",
       "      <td>0.000193</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>3</td>\n",
       "      <td>-0.000219</td>\n",
       "      <td>-0.000224</td>\n",
       "      <td>-0.000214</td>\n",
       "      <td>4.658103e-06</td>\n",
       "      <td>4.502134e-06</td>\n",
       "      <td>-0.000372</td>\n",
       "      <td>-0.000105</td>\n",
       "      <td>0.000153</td>\n",
       "      <td>0.000113</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>4</td>\n",
       "      <td>-0.000092</td>\n",
       "      <td>-0.000094</td>\n",
       "      <td>-0.000090</td>\n",
       "      <td>1.961853e-06</td>\n",
       "      <td>2.176045e-06</td>\n",
       "      <td>-0.000171</td>\n",
       "      <td>-0.000036</td>\n",
       "      <td>0.000079</td>\n",
       "      <td>0.000056</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>5</td>\n",
       "      <td>-0.000102</td>\n",
       "      <td>-0.000108</td>\n",
       "      <td>-0.000098</td>\n",
       "      <td>5.558076e-06</td>\n",
       "      <td>4.332210e-06</td>\n",
       "      <td>-0.000221</td>\n",
       "      <td>-0.000038</td>\n",
       "      <td>0.000119</td>\n",
       "      <td>0.000065</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>6</td>\n",
       "      <td>-0.000040</td>\n",
       "      <td>-0.000042</td>\n",
       "      <td>-0.000039</td>\n",
       "      <td>1.927361e-06</td>\n",
       "      <td>1.607447e-06</td>\n",
       "      <td>-0.000084</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>0.000044</td>\n",
       "      <td>0.000026</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>7</td>\n",
       "      <td>-0.000046</td>\n",
       "      <td>-0.000050</td>\n",
       "      <td>-0.000042</td>\n",
       "      <td>4.524589e-06</td>\n",
       "      <td>3.728316e-06</td>\n",
       "      <td>-0.000085</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>0.000039</td>\n",
       "      <td>0.000031</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>8</td>\n",
       "      <td>-0.000037</td>\n",
       "      <td>-0.000043</td>\n",
       "      <td>-0.000032</td>\n",
       "      <td>6.117658e-06</td>\n",
       "      <td>4.830110e-06</td>\n",
       "      <td>-0.000142</td>\n",
       "      <td>-0.000006</td>\n",
       "      <td>0.000105</td>\n",
       "      <td>0.000031</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>9</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>-0.000036</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>6.297591e-06</td>\n",
       "      <td>5.490149e-06</td>\n",
       "      <td>-0.000066</td>\n",
       "      <td>-0.000005</td>\n",
       "      <td>0.000036</td>\n",
       "      <td>0.000025</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>10</td>\n",
       "      <td>-0.000026</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>-0.000022</td>\n",
       "      <td>4.592369e-06</td>\n",
       "      <td>4.160836e-06</td>\n",
       "      <td>-0.000083</td>\n",
       "      <td>-0.000004</td>\n",
       "      <td>0.000058</td>\n",
       "      <td>0.000022</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>11</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>1.233232e-06</td>\n",
       "      <td>1.056722e-06</td>\n",
       "      <td>-0.000041</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>0.000026</td>\n",
       "      <td>0.000013</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>12</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>-0.000011</td>\n",
       "      <td>4.323257e-07</td>\n",
       "      <td>4.078795e-07</td>\n",
       "      <td>-0.000024</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>0.000013</td>\n",
       "      <td>0.000009</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>13</td>\n",
       "      <td>-0.000013</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>-0.000012</td>\n",
       "      <td>1.036394e-06</td>\n",
       "      <td>9.129739e-07</td>\n",
       "      <td>-0.000030</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>0.000017</td>\n",
       "      <td>0.000010</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>14</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000014</td>\n",
       "      <td>1.162491e-06</td>\n",
       "      <td>1.035416e-06</td>\n",
       "      <td>-0.000034</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>0.000019</td>\n",
       "      <td>0.000012</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>15</td>\n",
       "      <td>-0.000016</td>\n",
       "      <td>-0.000017</td>\n",
       "      <td>-0.000015</td>\n",
       "      <td>1.370976e-06</td>\n",
       "      <td>1.274378e-06</td>\n",
       "      <td>-0.000035</td>\n",
       "      <td>-0.000003</td>\n",
       "      <td>0.000019</td>\n",
       "      <td>0.000013</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     n  mse_mean     lower     upper    yerr_lower    yerr_upper  dist_lower  \\\n",
       "0    2 -0.000299 -0.000305 -0.000292  6.772445e-06  6.800843e-06   -0.000526   \n",
       "1    3 -0.000219 -0.000224 -0.000214  4.658103e-06  4.502134e-06   -0.000372   \n",
       "2    4 -0.000092 -0.000094 -0.000090  1.961853e-06  2.176045e-06   -0.000171   \n",
       "3    5 -0.000102 -0.000108 -0.000098  5.558076e-06  4.332210e-06   -0.000221   \n",
       "4    6 -0.000040 -0.000042 -0.000039  1.927361e-06  1.607447e-06   -0.000084   \n",
       "5    7 -0.000046 -0.000050 -0.000042  4.524589e-06  3.728316e-06   -0.000085   \n",
       "6    8 -0.000037 -0.000043 -0.000032  6.117658e-06  4.830110e-06   -0.000142   \n",
       "7    9 -0.000030 -0.000036 -0.000024  6.297591e-06  5.490149e-06   -0.000066   \n",
       "8   10 -0.000026 -0.000030 -0.000022  4.592369e-06  4.160836e-06   -0.000083   \n",
       "9   11 -0.000015 -0.000017 -0.000014  1.233232e-06  1.056722e-06   -0.000041   \n",
       "10  12 -0.000012 -0.000012 -0.000011  4.323257e-07  4.078795e-07   -0.000024   \n",
       "11  13 -0.000013 -0.000014 -0.000012  1.036394e-06  9.129739e-07   -0.000030   \n",
       "12  14 -0.000015 -0.000016 -0.000014  1.162491e-06  1.035416e-06   -0.000034   \n",
       "13  15 -0.000016 -0.000017 -0.000015  1.370976e-06  1.274378e-06   -0.000035   \n",
       "\n",
       "    dist_upper  yerr_dist_lower  yerr_dist_upper  \n",
       "0    -0.000106         0.000227         0.000193  \n",
       "1    -0.000105         0.000153         0.000113  \n",
       "2    -0.000036         0.000079         0.000056  \n",
       "3    -0.000038         0.000119         0.000065  \n",
       "4    -0.000014         0.000044         0.000026  \n",
       "5    -0.000014         0.000039         0.000031  \n",
       "6    -0.000006         0.000105         0.000031  \n",
       "7    -0.000005         0.000036         0.000025  \n",
       "8    -0.000004         0.000058         0.000022  \n",
       "9    -0.000003         0.000026         0.000013  \n",
       "10   -0.000003         0.000013         0.000009  \n",
       "11   -0.000003         0.000017         0.000010  \n",
       "12   -0.000003         0.000019         0.000012  \n",
       "13   -0.000003         0.000019         0.000013  "
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "filip_cv_final_df2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The visualization below shows the mean-squared error scores along with error bars that represent the spread of the cross-validation results (specifically, the middle 95%)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 480x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(dpi=120, figsize=(4, 3))\n",
    "facet_var, facet_id, facet_label, facet_ylim = (\"mse\", 0, r\"Mean-squared error\", (-0.0006, 0.0))\n",
    "sns.scatterplot(\n",
    "    x=\"n\",\n",
    "    y=f\"{facet_var}_mean\",\n",
    "    data=filip_cv_final_df2,\n",
    "    ax=ax,\n",
    ")\n",
    "ax.errorbar(\n",
    "    filip_cv_final_df2[\"n\"],\n",
    "    filip_cv_final_df2[f\"{facet_var}_mean\"],\n",
    "    yerr=[filip_cv_final_df2[\"yerr_dist_lower\"], filip_cv_final_df2[\"yerr_dist_upper\"]],\n",
    ")\n",
    "ax.set_ylim(facet_ylim)\n",
    "ax.set_xlabel(r\"Polynomial degree\")\n",
    "ax.set_ylabel(facet_label)\n",
    "\n",
    "fig.tight_layout();"
   ]
  }
 ],
 "metadata": {
  "celltoolbar": "Slideshow",
  "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.6.5"
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}