{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Imports and setup"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The autoreload extension is already loaded. To reload it, use:\n",
      "  %reload_ext autoreload\n"
     ]
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import matplotlib.cm as cm\n",
    "import matplotlib.gridspec as gs\n",
    "\n",
    "import matplotlib as mpl\n",
    "\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "\n",
    "%matplotlib inline\n",
    "%load_ext autoreload\n",
    "%autoreload 2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Set up colors and plot parameters"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Colors\n",
    "sred = '#ff595eff'\n",
    "sblue = '#1982c4ff'\n",
    "scharcoal = '#233d4dff'\n",
    "\n",
    "pagewidth = 336/ 72.0 #Paragraph width from point to inch\n",
    "gridAlpha = 0.5 \n",
    "\n",
    "def plotParams():\n",
    "    mpl.rcParams['text.usetex'] = True\n",
    "    mpl.rcParams['font.family'] = 'serif'\n",
    "    mpl.rcParams['font.sans-serif'] = ['Palatino']\n",
    "\n",
    "    mpl.rcParams['axes.labelsize'] = 10\n",
    "    mpl.rcParams['axes.titlesize'] = 10\n",
    "    mpl.rcParams['xtick.labelsize'] = 10\n",
    "    mpl.rcParams['ytick.labelsize'] = 10\n",
    "    mpl.rcParams['legend.fontsize'] = 10\n",
    "    mpl.rcParams['axes.facecolor'] = '#f2f2f2'\n",
    "    \n",
    "    mpl.rcParams['axes.linewidth'] = 1.2\n",
    "    mpl.rcParams['xtick.direction'] = 'in'\n",
    "    mpl.rcParams['ytick.direction'] = 'in'\n",
    "    \n",
    "    mpl.rcParams['xtick.major.size'] = 2\n",
    "    mpl.rcParams['xtick.major.width'] = 1\n",
    "    mpl.rcParams['ytick.major.size'] = 2\n",
    "    mpl.rcParams['ytick.major.width'] = 1\n",
    "\n",
    "\n",
    "\n",
    "#Run parameterset of choise\n",
    "plotParams()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Figures 1c and 1D"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1c"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, 'Amplitude (dBm)')"
      ]
     },
     "execution_count": 57,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 168x168 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "f1c_data = pd.read_csv(\"fig1c.csv\")\n",
    "\n",
    "frequency = f1c_data['frequency'] / 1e6\n",
    "amplitude = f1c_data['amplitude']\n",
    "\n",
    "fig = plt.figure(figsize = (pagewidth/2.0, pagewidth/2.0))\n",
    "\n",
    "cmap = plt.get_cmap('Blues')\n",
    "\n",
    "plt.plot(frequency, amplitude, color = cmap(0.9), linewidth = 1)\n",
    "\n",
    "plt.xlim(1.1, 1.5)\n",
    "plt.grid(alpha = 0.5)\n",
    "\n",
    "plt.xlabel(\"Frequency (MHz)\")\n",
    "plt.ylabel(\"Amplitude (dBm)\")\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1c"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-2.5, 2.5)"
      ]
     },
     "execution_count": 58,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 168x168 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "f1d_data = pd.read_csv(\"fig1d.csv\")\n",
    "\n",
    "fig = plt.figure(figsize = (pagewidth/2.0, pagewidth/2.0))\n",
    "\n",
    "f = f1d_data['detuning']\n",
    "vrefl = f1d_data['vrefl']\n",
    "fit = f1d_data['fit']\n",
    "\n",
    "lor = f1d_data['lorentzian']\n",
    "disp = f1d_data['dispersive']\n",
    "\n",
    "\n",
    "plt.plot(f/1e9, vrefl, '.', color = sred)\n",
    "plt.plot(f/1e9, fit, color = scharcoal, lw = 1.5)\n",
    "\n",
    "#def fiberRefl(delta, etaR, etaL, A, kappa):\n",
    "\n",
    "plt.plot(f/1e9, lor, ls = '--', color = scharcoal, lw = 1)\n",
    "plt.plot(f/1e9, disp, ls = 'dotted', color = scharcoal, lw = 1)\n",
    "\n",
    "\n",
    "plt.grid(alpha = gridAlpha)\n",
    "plt.xlabel(\"Detuning (GHz)\")\n",
    "plt.ylabel(\"Normalized reflection\")\n",
    "plt.xlim(-2.5, 2.5)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Figures 2b and 2c"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAU4AAAErCAYAAACxamqAAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nO3deXxU1fn48c+TkIQtMCFAIGENS1gFQtiRJRAWtS6saq27pBZsbWtFtP22v++3FYN+W/utbQ3axdpFTUCrVpEERFSULSgCGpWwSFglDCBrSM7vj3snDGEmyUBmJjPzvF+vvJh7Z+7Mc5Lw5Jx7z32OGGNQSilVd1HBDkAppUKNJk6llPKRJk6llPKRJk6llPKRJk6llPJRo2AHECgiEgP0Aw4BlUEORykVXFFAG2CLMabc14MjJnFiJc2iYAehlGpQ0oFNvh4USYnzEMDq1atJSkqq2rl//37atWsXtKACIdzbGO7tA21jfTtw4ABjxowBOy/4KpISZyVAUlIS7du3P7+zsvKC7XAU7m0M9/aBttGfH3spB+nFIaWU8lFYJU4RmWN/5YlIuqfXPPbH5yja8hl6q6lS6lKFzVDdTpQOY8wiESkEcoGs6q9bu+kTVm/8hK4dk7lj5rWk90oNeKxKqdAWNokTmA0UABhjSkQkw9OL/vW7X7H5i10seXMFG/cc5zNzinGVx2h0bB8D+/RERAIatFIq9IRT4kwFymp7UeO4OK7LGstak8q/th2BIyd5dstOovd8TO8Tf2L6lEyuybySFvHNAhCyUioUhVPiBGjl9thjEk1LS2Pu3Lns6P+dC/Z37dmbgSe+4d0P1vHB+o307t6VqWNHEhsb4894A8LpdAY7BL8K9/aBtrG+HTx48LKOD6fEWQY4antRcXEx7du3Z9PeE9y+tISz5wyxjYRfXtObQckZFG/fyZJlb7Pm40+597abEBE2fPIpPbt0CuleaEpKSrBD8Ktwbx9oG+tTVNTlXRcPp8RZAAwB8kXEARTW9OJByc3467RUCrftY2Kf9gxKtpJiWrcuPDz3DowxiAhnzp7lR//za86Wl5N15XCmT8lkQO8eei5UqQgWNonTGJMvIlkiMger5zm/tmMGJTejrWlCSvLFPUlXYoyLjWXxwkdYsmwlb779Pq+veJfunTvwwJzvMGxgv/puhlIqBIRN4gQwxmT74317devCI3Pv5Id33syy1R+wdNlKmjVpAsCu0n0cOXpce6FKRZCwSpz+1rRJY6ZNHs+0yeOr9v39lTfJf2MFPbp0ZNqUTK4eP4r45qF7LlQpVbtaz5CKSBcRuVtEHrD/HRiIwELF/XfcxM/uu4tGjRqR8/RzTLp1Hk8sfj7YYSml/Mhrj1NEJgA5WPMjS+wvB/CQiBgg1xjzRECibMCaNW3CtCmZTJuSybYvdrB02cqqKUzGGF4rXM34ERnaC1UqjHhMnCLyE6w5kROMMUe9vGa6iLwI3GOMOebHGENGnx5d6dPjrqrtrZ+X8PMnF7Pwj39l8pgRTJ+SSb+0bogIv/tgP0+tPT+XbN6wttw3IrzLhikVLi4aqotIS6DQGLPAW9IEMMYsMcbMxpoCpDzol9aNfzz5S64aN4rl737IrT/+ObPve5g9+w4yunM8Ufa1pMaNhNGd44MbrFKqzi5KnMaYo8aYqorIIvKiiMS7bU8XkbfcXr/C/2GGrj49uvKz799NwfO/56fz7iLR0YKk1q1Yt+cElXaFpvIKw7o9J4IcqVKqruoyfT4L2CkiA8DqaVLL5HJ1sWZNmzB9aiZ//OUCYmIasct5BrC6nBUGVn1SwvETJ4MbpFKqTuqSOBcC2cDbInJXbS9WdfPopI785boUslp/Q889BXy29HdM+s48XnhtebBDU0rVoi7zOI19V04RsFxEJgHr/RxXRBjZNZGRXUdivj2CbV+UsGTZSjq2t9ZD2nvwEO+t/5irxo+kedOmQY5UKeWuLolzkojku9W4zMOaphTxU5Hqi4jQt2c3+vbsVrXv7TUbeOKZv/Pkn//JlLHWFfk+PVL17iSlGoC6JM5s7JNxxhgnkCUij/k1KsXN101hQO+e1j3yqz7g5bdW0T+tG395/BdER4fViidKhRxv8zi7GGN2Ahhjdnh4ydP+DEpZvdB+ad3ol9aNH939bd5ctYaDX5dVJc2/5r/GkAF96dtDl/5QKtC89Tjn271Kb+PC+cC9/glJVRffrCmzrp5YtV3mPEruP1/mt395gd7dujBtaiZTx46kWdMmQYxSqcjhbcyXzfnbLEuA7dX+nROQ6JRHrRwtWf78Uzx0722cq6jgV0/9mUm3zmPdx1uDHZpSEcFbj3MR1jQksHqdj3G+vqVrWwVRfLOmzL5mErOuzmJL8XZeXv42vbt1AWDVhxs5fOQoU8aO0F6oUn7gLXHmut9uKSKm2naO3yNTdSIi9O/Vnf69ulftW/7uh7y5ag2//tM/mDp2JFOvzIiIZReUChSPidPLBaE6P6+C61cPfI/Z10xi6bKV/Oft9ygtLeW1VWv5xf16hkWp+lDXQsY6eTCEiAgDevdgQO8ePHDPLax4dw2OBGsB0KPHv+H3f8tj2pTx9LKH9kop33i8OCQid1fbZao9/4DfIlL1Kr55M4Zc0YdxwwcDVqm7Vwvf4abvP8K37/8ZS996m5OnTgc5SqVCi7er6otEZL3rC5hdbXtBAGNU9Wjk4CtY/rff82D2rZw5e5b/+b9nmXzrPJzHjgc7NKVChrehegnwUg3HzfZDLCpAWsQ346ZrJ3Pjtybx8adfsHHLpzhaxLNp7wn+7/UPGdg2jjlTMmjSuHGwQ1WqQfI6Ab6mOpt2wQ8V4kSEgX16MrBPTx5e/hVLth0B2rBmJ/zpFy9zU6fTTJuSSVpq52CHqlSD4q0C/KCaDnIlVXsht2l+ik0FUGdHXNXjKKBH22a8svwdbrzvYV56vSB4gSnVAF3U4zTGHBWRTXaV91ygyHXfOoCItAAygFnAEWOMnu8MA1ZhZUslkNZvEH++J5P/rHyPK4daf0fXbNzMO2s3Mn3qBHp27RSkSJUKPm/zOFeIyAasi0CLRKQr4MRa5RIgH3jMfYkNFdoendSRmf2sJT2GdmjGoGRrVc6br5tS9ZqS3aW8svwdXvpPIf17dWf6lEwmXTmcJo3jvL2tUmHJ6zxO+06hh+wvRGQQ4NTJ7+FrUPL5hOnJLTdM5VsTr+T1Fe+yZNlKfvHkYl54bTn/+r9fBTBKpYKvrhPg0d6lAmgZ35xvXz+Vm6+bwqatxVXrJJ0tL+dHv/wNk0YPI0t7oSrM1TlxKuVOREjv16tqe9/Bryndf5CfP7mYx5/5O1ePH82MqZl079IxiFEq5R9aSlzVi84p7Vn69OM8m/NTrhwykKXLVjJz7kN8+qWe2VHhR3ucqt6ICIP79WZwv978ZM6tvP3B+qr74Z967iVOnDrFjKkT6Na5Q3ADVeoy1djjFJEJIrKwptfUFxFJF5E8EZnotm+O/ZUnIune9tW0XwVHQst4pk3JrFpc7ug337DkzZXM+N58bn/gF7y24l1Onzkb5CiVujQ1Jk57ovuM6vvre9K7nSyzgVS3femAwxizGKuIco6nfd5eW5/xqcv3yNw7eetvT/HDu27Geewb/uvXT/Pkn/8V7LCUuiR1GaqLPRneCbhuIckGltZXEMaYQqBQRPLcds92fZ7b0sSe9nl7rWpgElrGc+u0q/nODVex8ZNPaZOYAMDmz77gN3/6J9OnZjJx1DAax8UGOVKlalbbUP0nQKExZjLWfE7BumtocQBiSwXK6rCvpv2qARIRMq7oQ+eU9gAc/+YkZc5j/Ox/n2byrfN4fPHzbN+9J8hRKuVdbT3OicBMqKr6/oz9FSit3B6X1bCvpv0XSEtLY+7cucybNw8Ap9N5uTE2eA29jV3at+YPv/gRO/fspWhrMZ9t38nv//wPJl03i08OVzCgbSP6JsZ4Pb6ht68+aBvr18GDBy/r+NoSZyIwyz7B/5Ix5tilfIiIzOH87ZruiuxhuidlHo7xtK+m/RcpLi6mffv2F+yLhPV4QqGNKSkpjBo2hDLnUeYv28UP3jlfI7Rn9GF+e11PUjt5bkcotO9yaRvrT1TU5c3ErC1xlhljnrUrJmWLSCqwER+TqH3RxlcFwBAgX0QcQKGXfd5eq0JUK0dLMlLbsXr/fmuHqWTX51uZfu+zDOqbxoypE5gwaghxsXouVAVHbYkzV0QyjTErgccBRGQ6kAdMrs9ARGQGkI6VoMuMMfkikuXWW51vjHFW3wfg6bX1GZsKPPdqTUgUWZOn0v90Z5Yue5tHnvgDcbH3M2HUECorK4MXpIpYYoyp/VVhQESSgdLqQ/XS0tKwHwKFahs37T1xUbWmyspK1m/eRnq/XsQ0akTuP5dSdvhrBvbvS+bI8O2FhurP0BeBbOO+fftIS0sDSDHG7PX1eL1zSDVYnqo1RUVFMWxgv6rtNokJ7Nq1m4cf/wOOFs25ZsKVTJucSdeOyYEOV0UQr4nTnuSeinUBZ6Xb/q7Al8aY6ADEp1SNpk0ez9C+Pbh2ykSWvLmCF15dTun+Q/z6pz8E4FxFBY2i9VdV1S+PiVNEHgMeBIqA74rIdnsuJ1hXsHWdddVgiAjDB/Vj+KB+HD5ylBOnTgGwe+9+bn/g/3FN5mimTRlPlw7aC1X1w1uPcw4w0xizBKruI38RcK23HhknRlXISUxoSWJCS8A6Hzq4Xy/+9epbPP/yG2T07820KZlMGDWE2Bjv80KVqk1Nk5mqVugyxhRh3Wa5CEjwd1BK1YcuHZJ5/OEf8OZf/4/7bpvNvoNf8/Pf5HLi5GkAzpzVIiPq0njrcb6E1et8wrXDGOME7hWRpwMRmFL1pXUrB3fOupbbZ1zD9t17SGgZD8B3H1lITKNGTJuSSebIDO2Fqjrz2OM0xnwX2CEimV6eC+Rtl0rVi6ioKHp0sVbnrKysZPSQgew9cIgFi55i8q338Zs//ZOv9h0IcpQqFFzU47QXZUtwnd/0xE6eSoWsqKgo7pp1HXfM+BZrP9pC/psr+ccrb5LSri0dr07izNmzREkUMTE6Y09dzNO66ptE5CcikgPkGmOeDUJcSgVEVFQUI9KvYET6FRwqO0KzJk0A+HfBap7+xxKumziGG6aMp1Nyu6pjPE3MV5HF27rqjwOPi8h0EVmOdX/6wkst8qFUKGjT6vx1z55dOzGoT0+ef/kN/rrkdYYO6Mv0qZmsOpXCkm1Hql43vU8Cj07SBekiTY3jEHu4vsQevj8rIgYrgX4UkOiUCpKBfXoysE9PDh4+wqsF77D0rbf5xyvLGDn7e1WviRbo7NBlkCNRnWorGWM2GWNmYRUzvlFE3qrv5TOUaojaJiZw943X89qzv+GJR35wQfGRCgNrivdQXn4uiBGqYPCpKJ0xZocx5iH7LqJuInJ3rQcpFQaio6No08oalv/pmhSubH6Y5M9fZfML/8uU2+/jt395gUNlR2p/IxUWLvmSoX0eVKmIM7p7IqO7j6eiYiwfbNrMkjdX8veX3+CGyeMAOHzkKC3imxHTSK/Ihyv9ySp1iaKjoxidMZDRGQM5cvR41cT6X/3+z2z+9AuuzRrDtMmZdGjfNsiRqvp2WYlTRLoYY3bWUyxKhSxX0gSYPiWTyspKnlvyOn/Je43hg/pxy/VXMSpjQBAjVPXJp8RpL6GxAOiKVSFpENDDD3EpFbJGZQxgVMYADnx9mFeWv8Mry1ex5fMvGZUxgPJz5zj4dRkp7bQXGsp87XHOAbYDuehyvErVKKl1Itk3T+Pu2ddztrwcgNVrN/GThb9l+KB+TJ8ygTHDBum50BDk61JvJUCBfXX9KFopSalaRUdH0aSxNd+zf6/uZN98AyW7S3ng0Se56vYf8NRzL3H6jFZqCiW+Js5CoNCex7kct9JzSqnatU1MIPvm6fznz7/ltz//MX16dGXlmvXExVqVmb7c+RXl53ReaEPn6xhhAZCDVXYOYGL9hqNUZIiOjmLM0HTGDE3nzNmziAhnzp7l7od+SUxMI67PGssNk8eTnNQm2KEqD3ztcRYA640xR+2h+kY/xKRURHGtzNkouhH//aNs+nTvyp/zXuWau37I3P/KYesXJUGOUFXna49zPpAhItuxrqp3BRLrPSqlIpB7L3Tfwa95ZfkqXlm+ioqKCgD2HfwagyG5rfZCg83XxFmCtRbRUQARmV7/ISml2rdtzb23zOCem24gOiqKvXv38qcX/83St95m5OArmD4lkyuHDtIVPIPEp8RpjPmuiAwUEacxZmdNxY6VUpfPPTHeNfs6EhNa8vLyVcz75zrOrY2tem7esLbcN6Kdp7dQfuD1HKeItBCRP4rIFyJSISLrRWQ81hBdz20qFWCuXugbf/ktP/rWMDAGMDRuJIzq3JwPijZzzh7WK//ytq56S2AH1tB8MeAEugGPAy+ik9+VCppG0dGcc3QE2Q9AeYXh30W7ePWPObRNTOD6SeO4ftI42rdtHeRIw5e3ofpDwHxjzEWLsolIOta0JKVUkAzt0IwogUoDMdHCtwZ2YtxPf8iSZSt55oVXeOaFVxg1eAA/u+8u2rZuFexww463xJngKWmCtca6iHT1Y0xKqVq8t+s4lcZ6fPqc4YOvTnDfiAzGj8hg74FDvLx8Fe+sLcJhFx8p2vIZyUltaNdGJ8HUB2+Js8aKrK6r6kqp4LhvRDuvF4OSk9ow9zsz+d4tMxARjDH84snFlB44yOiMgUybksmojAF6Rf4yeLs45AhoFEqpeiciVf8+/asF3DnzWrZ9sYP7//t/uebO+3lz1ZogRxi6vCXORBHp7O0gEXmxPoMQEYeI5IrIRhHJdds/x/7Ks8+tetxX036llN0LvXUWb/z1tzzx8P1069ShqvDIwa/LWL2uiIqKyiBHGTpquji0SUR+AqzAuoqeCmQAk4AJ9RzHHKxSdTlAnr2m+4uAwxizSEQKgVwRmV99H5BlJ8qL9tdzjEqFvJhGjZgwaggTRg2p2vdq4Wp+/3we7dokcv2ksVw/aRxJrfVcaE089jiNMSVYyexxrPqbR7Dmbg62V7uUeo4j3xhTZH/uQqwkPRsocosnw8s+ativlKrFbTOu4YmH76drx2Se/sdSrrrjBzzw6JNUVmoP1Buvdw4ZY/KBfLs3lwBsMMYcFZF7sOZ21hs72bkMweptzubi+aKpHvbVtP8iaWlpzJ07l3nz5gHgdDp9jjfUhHsbw7194P829uqSzCPf/Q5Hjh7no23FnD5zln379gHw8aefk9oxhfjmzfwaQyB/jgcPHrys4y9KnPaSv4WutYSMMUXuz3ubplQfRMRhf0a+iMwG3CeguRKjp3017b9AcXEx7du3v2BfSkrKJcUbSsK9jeHePghMG1NSoF+fXlXbB74+zE+f/BNRIlw5dBDTp2YyYtAVREf7Wlitrp8fmJ9jVNTlxe+pxznJGPMsVCXRhwCDNRQuMcb4PPldRObg+Up9kTGm0G17gTFmvv24zMMxnvbVtF8pdRmSWify6jO/ZulbK/l3wTus+nAj7du2ZtFD36dfWrdghxc0nhLniyLSBWs43hWY6Op9ikhXEVkILDTGHKvrhxhjah3ai0iOW9IEq/bnEKzTBQ6s6vOe9nl7rVKqHnRo35bv334j9357BqvWbuTfBe/QMTkJgLUfbaH83Dm/9kIboosSpzFmiYhMALLtXdnYt1gaY3YAC+zkWW+3XdpTkGbZPVOweo8JWFfMXb3V+cYYp4hcsM+OK9/TfqVU/YmJaUTW6GFkjR5Wte/5l9/g/Q0f075ta26YPI7rssbRNjH8lyITY0zNL7AKfjyDdXX9RaxiH4uNMSE1X0FEkoHS6uc4S0tLw/78WLi3MdzbBw23jeXl51j14Uby31zBuo+3Eh0VxW0zruG+22b7/F6BbOO+fftIS0sDSDHG7PX1+Frrcdq3V86yixYvsnc/5OsHKaXCT0xMI7KuHEbWlcPYvXc/Ly97m+6dOwJw/JsTvPh6AddNGkubVuHVC61zIWO7aLEWLlZKedQpuR0/uPOmqu11H2/j98/n8fQ/ljB2WDrTp04grl0qG0pPMrRDMwYl+3d6kz/5unSGUkrVyYRRQ3hl8RO8/Nbb/LtgNW86W1PR4fzz0/sk8OikjsEL8DJEzmUwpVTAdU5pz/133sxbf/sdU4f2xprZCNECZXt38kHR5pC8Q0l7nEopv4uNiSHOkQR7rYqVFQbWfbmPtXlPk5LUhhumjGf0wL5BjrLuNHEqpQLi0UkdmdmvFev2nGBoh2b0bdOblWs6suTNFTz13EsUfdSbq7PGc9X4UcEOtVaaOJVSATMo+cKLQlPGjmDK2BHs3LOXd97/kAG9ewCw/uOtfFK8neuyxpKY0DJY4XqliVMpFXRdOiQTM3oYKe3aArD2o6386aV/88e/5zNu+GCmT53A0AF9Lvse8/qiiVMp1eDMu20WV2eOZulbK3mt8F0K31/H0AF9yX304WCHBmjiVEo1UF07JvPju29h3q2zWLlmPa6bHMvLz/Gr3/+ZKWNHBq0XqolTKdWgxcXGMnXc+QtGJV+VsurD88VGpk0ez7UTx9DKEbhzoQ3jhEEQPfXUU8EOwe/CvY3h3j7QNrpLS+3MW3/7Hb964Hu0TnDw27+8wOTb7qNkd6mfIzyv1iIf4UJEOgBfrV69mqSkpKr9aWlpFBcXBy+wAAj3NoZ7+0DbWJNdpft5b8Mmbr52CiLCi68VIAKTrhyGo2ULj8ccOHCAMWPGAHQ0xuzx9TMjKXEOwl6XSCmlbOnGmE2+HhRJiTMG6AccAkLvHi+lVH2KAtoAW4wx5b4eHDGJUyml6kvEXxxSSilfRWziFJE59leevQRyyBIRh4jkishGexkS1/6L2hjK7bbbud1tO6zaByAiqSLyoIik2tth00a7XXNEJKemtoRE+4wxEfcFpAMP2o9TgYJgx3SZ7XnQblMqsBHI8dTGUG83MMf6lfX8MwyD9qUCuW7bYdNGYKJb3A4gL5TbF6k9ztnYV9iNMSVARnDDuWz5xpgiuy0LsX7hPLUxZNtt98BKAKe9K6zaZ8s1xmS7bYdbG2fbq9BmYCXJkG1fpCbOVKy12MOC/QvmMgRrUT1PbQzldk80xrgv+xxW7RORGUCJPZzNtf9QhE0b7Z/dBmAHkG2sJcNDtn2RmjgBWrk9bvA/qLqw/5pjjMm3d3lqY8i1W0QmAoUengqL9tmGYMW+GOt0y0Z7f1i00fW7CUwAUkWkwN4OyfZF6r3qZVjnWcLNAmOMa015T20M1XbPB5wiAuCw/9PtJXzaB1bcBcYYJ7BYRHKAk4RPG3OwTkUUAYNF5AjwEiHavkjtcRZg/YV3/SX01JsJKSKS45Y0wXMbQ7LdxpgsY8xMY8xMwGmMyQJeI0zaZ9sIdHPbLiP82ujek9xACP+ORuwEeHvazkasv26L7b/0Icluyyy3XQ4gAeuv/AVtDNV22/+JZgG52OfIPLUlVNsHF/xOdsPqnZWESxvtn5/772N+KLcvYhOnUkpdqkgdqiul1CXTxKmUUj7SxKmUUj7SxKmUUj7SxKmUUj7SxKmUUj7SxKlUNW63B4bE+6rA08SpAkJEJtr1Qrfb9Rhz7O2cYMfmzr4vfk4dXjfHbourIIdrf4GH12203zdVRB6s/6hVoOkEeBUwdtKYbYwZbG87gCNAVrXKR0Fhx5Nn39JZl9dvB3LsSj+u0nfbgZmuQiuuO2Zc5eLsPxQFDaG96tJpj1MFjX0rXQluRR1EJF1EZlxu5W+7kvoMH4fHC7Bu6XS9h6P68dW2CwH3JJtt75vttm8iVtFel4VYtx6qEKaJUwWNnYRaYRdysO9Rdm1nu4a9do3K7e7DXBHJc3ucIyIFbstN5GDVdSwENtrJ2HWq4EH7X1fZNnczsIvoisgcrN7wRHt7ol3Rx30Y76pY7uLAquTknrAv6E3bfyxS3Yf3KvRo4lQBZyeyOVg9rwl2YYeJQKoxptAY47SHthkiMsMYs8g+1JXUZmAlJ1fyWY81HC6xn6t6HyAfqyhIIVbFoSysmpALPYSW6ioKbQ+/i1xP2MdXH14XYSVBh/25eXbZtBIuLLpSXQl2QlahSROnCjh7mY/FxphsO9GAldBKqr20ELvEGNYQeqb9eAiwCGtoDDDErVc3BPsijJ2cXb1asJbdyLMTs6vYM2Alc84vy+FSvYjuBdt2knViLe/g3rPMxeoxp3O+ILG7C05PqNATqYWMVcNzmAuHve77weo5ulbxLMBKPq7t7W6vdwAb3HqpdeWk9mTWqtpngX1aAavX67IYqzedjefzmQ4uTtIqhGiPUzUUhcDEauf+UrGSkKt3V4Y1JC+0tzdg9SAXux1TAMyqNkWo1t6da4ju4bXuRXU9JfYCrHOjVTHYpwgKsdZJqt6LdrVrQ20xqYZLe5wqIOxzmLOxh9HVe4TGmCIRmQnk2hd+HFjTetx7Zvlc2OPL5cIr2Bhj8u2kmSciJVg901wRycBKfA4RKfEyHSgfa9jt/twce8idZ+/PEpF8t4S4ASg0FxfbzeX8aYaLuJ2iUCFI53EqZbMTZLbbnMuCus7p9OEzXBevfD2VoBoQHaorZbN7gU5fh/k+mq1JM/Rp4lTKjb3gnetcZr0Op+3TFffU53uq4NChulJK+Uh7nEop5SNNnEop5SNNnEop5SNNnEop5SNNnEop5SNNnEop5SNNnEop5SNNnEop5SNNnEop5aOIqY4kIjFAP+AQUBnkcJRSwRUFtAG2GGPKfT04YhInVtLUUl5KKXfpwCZfD4qkxHkIYPXq1SQlJV3wxP79+2nXrl1Qggq2SG47RHb7I7ntBw4cYMyYMWDnBV9FUuKsBEhKSqJ9+/YXPlFZedG+SBHJbYfIbn8kt93NJZ2204tDSinlI02cSinlI02cSinlI02cSinlI02cSinlI02cSinlI02cSinlI02cSinlI02cSinlo5C7c0hEHgQWVNt9BzDVbXu7MWZR4KJSSkWSkEucAMaYBNdjEckFNgMjgALAAZQEKTSlVAj45uSpyzo+FBNnvuuBiEwE8uzN9caYwuCEpJQKBecqKnhj5Xu8/BzARtwAABtISURBVEbBZb1PyCVOY4x7b3KmMSZbRFKBbBHJBlKBbG9JNC0tjblz5zJv3ryqfU6n068xN2SR3HaI7PZHYtvPnavgvfWb6JKSVPuLayDGmHoKKbBEZA5QYowpFBEHgDHGKSIzgGfch/P265OB0uLi4osqwpSWlpKSkhKo0BuUSG47RHb7I6Xt5yoqeHvNBkYPGUCTxo05dfoMziNlpKWlAaQYY/b6+p4h1+MEsBPlTGNMFlgJ0/WcMSZfRJ4JWnBKqQZjV+l+nlvyGl/tPUBsbAxjh6XTpHEcl9vXDsnECeQAua4NEZnoGpqLSDqwMFiBKaWCr/zcOV5f8R7L3llD82ZNufeWGaT361Vv7x9yidM+nznLGJPtttshIjnAYcCpU5GUimwvvlbAO2s3MnLwAGZdPZFmTZvU6/uHXOK0Lw4lVNuXj9vVdqVU5DlbXs6ZM2eJb96MqeNGMqB3D/r36u6Xzwq5xKmUUtUVl+ziuSWvk9Q6kR/ccSOJCS1JTGjpt8/TxKmUClmnTp9h6bKVrPpwI61bOZgyZnhAPrfWxCki9wBZWMtoJmDdlVMILDTGHPNveEop5dmu0v38/m8v4Tx2nKzRw7hu0ljiYmMD8tleE6eItASeAZZjJclN9v6uWJPMF4nIcmPM0oBEqpRSgDEGEaFNKwft27Ym+9vT6NapQ0BjqKnHOdEYM6v6TmPMDmAHsEJEBolIC+15KqX8rbKyklUfbmT95m38+J5baNqkMT+86+agxOK1rJwxZonrsYisF5F4+3FXEXnRfs0mTZpKKX/7at8BHvvjc/zr1beIjYnh1OkzQY2nrheHnECRiMwwxnwsIlpMQynld+Xl5/h34TsUvLuWZk2bcPeN1zN0QF9EJKhx1TVxvgisBJaLyGNAaN7grpQKKRIlbP28hJGDr2DG1An1PpH9UtU1cXYzxjwrIhnAS0BX4Fn/haWUilRHjh7ntRWrmTF1Ak2bNGbB924nNiYm2GFdoK6Js1BEuhhjdgKT7F6nUkrVm3MVFRS+t47XVqzGGMOgPmn079W9wSVNqHk6UqYxZiWAMWZFtaeX+zUqpVRE+Wz7Tv7572XsO/g1A3r3ZPa3smjTKqH2A4Okph7nYhE54mG/YA3VE/0TklIq0hS8t5byc+eYe+ssBvbpGexwalVT4izEWpZCgDm4lXEDZvozKKVUeHMVFx7YtydtWiVw+/RriIuLbZDDck9qSpzzjTFHAURkkPtwXUQ2+D0ypVRYKi7ZxT//vYy9Bw5xpvws12ReSXzzZsEOyydeE6crabo2a3hOKaVqVeY8ypJlK1n30VZaJbRk7q2zGNC7B7/7YD9PrT1Y9bp5w9py34h2QYy0djVdHHJdRffpOaWU8qTwvXVs2lrMNROuZOq4kVXD8vtGtGPdnhMAPD+zWzBDrLOahuo5rlsrgSEiMs3tudn2l1JKeWSMYd3HW2md4KBb5w5cnTmaCaOGeqyTefxMBcfPVrBp7wkGJTf8YXtNiXMwVhk517pGN9r/OrCuqiullEc79+zlhdeWs33XHoan96db5w40a9rE450/m/aeoPjwaSoN3L60hL9OS23wybOmxJntYf4mACIywU/xKKVCmPPYcV5+axVrNn5MfPNm3Dr9GkYNvqLGY9btOUGlfRWlvMKwbk/D73XWlDjXe3ui2hV2LSunlAJg/eZtrP1oC5PHjuDq8aNp0jiu1mOGdmhGlEClgZhoYWiHhp00oebEmSUiXY0xT3h60u51TjTGLPBPaEqphs4Yw9qPttCoUSMy+vdm/IgMBvTuSdvEut/1Myi5GWmJjTl+toInpnRq8L1NqHk60hK7UPFyzi+ZAVb1d4AXg5E0RcSBta66y3ZjzCIRmWNvZ2FVrC8KdGxKRZJPv9xB/hsr2L13P1f07kFG/940io72KWm6xMdFEx8XHRJJE2op8mEvlzEJrEnwQCugzLWMRpC0wrpgVYB1oapERNIBh51AC7HucsoKYoxKha29Bw+R958VbCn+klYJLblr9vUMG9j3kt/vdx/sZ12pNR0p7cnNoT2Ps7ogJ8vq1htjqoopi0gOViLFGFNil79TSvnBwa+PULJ7DzOumkDmiCHExFzeYrn3jWjX4BNldaG6PHC2iGRjnTZw/VsW3JCUCk+nTp9h2TsfEBcbw1XjRzGgdw8WPjiPpk0aBzu0oAnFxFkGzDTGOEVkBlYhkkKsIbz7azxKS0tj7ty5zJs3r2qf0+n09vKwF8lth8huf21tLz93jrUfb2PV2k2cOHmKjP69KO3Zpep5T6XTQsXBgwdrf1EN6rKu+iAgwVWbM9iMMU63x/ki8gxWonTU5fji4mLat29/0f6UlJR6izHURHLbIbLb763tW78o4bn81zly9Bhp3bowfUomXTsmBzg6/4mK8rpOZZ3UmjiNMZtEZD0wxLVPRAYaYz66rE++RCIy0XV+074otBDriv8QIN++6q6LySnlI2MMp8+cpUnjOJo3bUpCy3jumPktenfXGwWrq+tQXUTkj/bjjVj1OCf7J6RaOeyLQYcBpzFmkR1glj0lyQHMD1JsSoUcYwybP/uSl996m47JSdw16zo6p7TjoXtvD/pqkg1VXYbqDwC5xphnRKQrMBFY5PfIvDDG5AP5HvZnByEcpUJa8fadvLx8Fdt37aFNYgL9ep6vTqRJ07u69DizsCu+G2N2AM/4NSKlVECs2bSF5e+tx9Einu9Mu4qRgwfQKDo62GGFhLokzqNAhoh0wypoXKi1OJUKTV/s3E1sTCydU9rRt3tXHC0djB2e7nXJilAsMhwIdUmc64ESY8xKEWkJLBCRlsaYe/0cm1Kqnny+YzevFq6mePtOBvXtxfe+M4OW8c3o06vmhdFCschwINTlqvrjbo+PAg+JSCe/RqWUqhdf7vyKV5avorhkFy2aN2PW1VmMHZ7u03uEWpHhQKgxcYrIQqy7cl40xix1e2oHoCdDlGqgjDGICF/u2sO+Q4eZdU0WY4d5H5J7E4pFhgOhpjWHngYysOZJDhWRIW7VkHSxNqUaGGMMnxR/yRtvr2Hc8HSGD+pP5sgMMkdmXPKyu6FYZDgQaupxZgAz7AtBS0SkpYgstJOnqeE4pVQAVVRUsuGTbby5ag1rP9/DntMxPLevFZXvmMu+mBOKRYYDoabEuQG32xjt85sLROQxv0ellKqzP/w9j82ffkH7tq35r7tn8PsvGiNR0fVyMScUiwwHQk2Jcz4wR0Sc7tOPjDEP2bc1KqWC4NTpM6xeV8SYoek0aRzH+OEZjM4YyMA+PRERcrZ9zvGzZ+vtYk6oFRkOhJoqwB8FHvfy3Hf9FpFSyqOjx79hxZr1rPpgA6dOn8HRIp5hA/vRL+18z1Iv5gRGTReH7gZe0oXYlAqucxUVPL/0DdZ+tIXKykrS+/ViytgRdOlwcbWi+r6YE4rV2QOhpqH6CmCRiBzBuld9Z2BCUkoZYyjdf4gO7dvSKDqaEydPMWbYICaOHErb1q28HlffF3NCsTp7INQ0VN8BfNf9biEgr6HU5VQqHJWXn+PDTZ9Q8N5aDnxdxmPz7yOhZTxzb51Zp6IbejEnMOpy59BR4CEAEbnHXrKiwBjzrL+DUypSnDh5ihXvr2PV2iKOf3OCjslJ3DHzW8Q3bwr4VqlIL+b4n09LZxhjngGeEZEJdn3O3GAVNFYq1LkXDj595iz/eft9+qV1I2v0MNJSO19SWTc9JxkYl7TmkDFmBdY5UKWUj86Wl7Pu4628vWYDLZo34wd33kRiQktyHroPR4v4y3pvPScZGDVdVc90nc8M5lIZSoWLQ2VHeGdtEe+u+4iTp06RnNSGgX3Tqu4rv9ykqQLnosTpuhgEDLLX9GkNDCJ4S2UoFbKMMVRWGqKjo9iweRsF765lUN80xg8fTM9LHI6r4LsocRpjjopILpAOFNm7dc1ypXzgPHac9zd8zLvrP+KGyeMYNrAfY4cNZtig/rRq2SLY4anL5HGobk9F2iEiXextrYakVC1ci569u24TnxR/SWVlJWndutAyvjkATZs0pmmTxkGOUtWHms5xPobV69wuIgXu9TjthDoTSAS6GmNm+zlOpRqsU6fP0KRxHABLl63kmxMnmTxmOKMzBtY4WV2Frpquqq83xrjmb2ZWey4HeAxw+iswpRqy8nPn+PjTL3h//Uds372HRQt+QOO4WObdNouEli100bMwV1PiTBWRFlgV4GcC7ncMFRpjNoF1xd2P8V3ErsyUg1UvdIMxJtttn8t213rrStWng4ePsHz1h6zfvI2Tp07haBHPhFFDqaysBKBNqwSPx+miZ+GlpsSZj7V+uuHiddSzRGQGViX4rsAQ/4Tn0RwgFytR5olIjr3tBAqwaoiWBDAeFebKnEepqKykTasETp0+wwdFmxnYtycjBw+gd7cuREVF1foeuuhZeKkpcXZ1lY/z0KsscRvGd/VXcF7kG2NK7M9eCLjOr643xhQGOBYVpk6fOcumrZ/x/sbNfF6yixHpV3DHzG/RKTmJJx65v+qcpi900bPwcanzOFPtpAXWUD5gF4dcSdM2BHjRfpxt30efCmR7S6JpaWnMnTuXefPmVe1zOiP3VG2ktf2vW0/yt22nqrZnpQrVi8u+tvJ91n/yKeXl52jlaMHo9H4M6tOd0tLSS/7crYfL+ezr0xjgtiXbeWJsC/omXto6QPUl0n727g4ePFj7i2pwqfM41wOFWMPjiZcVwSVyVaE3xuTbj2caY5z2KYQ8wOPJpuLiYtq3b3/R/pSUFH+G26BFUtsfSYH1Bz+vqh6UWFGG8+QZNn/6BbOvySIqKork9u0Y17w5wwf1o3vnjvUySf310oMYrNK25yphx+mmTEppe9nve7ki6Wfvri6nV2ridR6nvcplbrVlgV3Pu1eGf+ayIrh0C4wx8+14qv502ok0WDGpBm7T3hN2z89wS94XDChbQ7MzZTSOi2P8iAzatUnk2olj6v1zddGz8FLTOc4dnpJmQyAiOa6kaW9PdA3N7dMLC70erCJSZWUlZ8vPsW7PCQwGEM5VGqRNV+4dl0n/tO7ExFxSzZs60TqZ4aWm35QvvT0hIl2CVRHePo0wS0Tm2LscwB321fXDgFOnIimwlpz47MudFG39jI+2fc7ojAEMvWIYgmAwxDWK5rYxvUnv1yUg8WidzPBRU+IcIiLTvDw3mwBeEHJnjMkGsoPx2Sp0PP/yG6z7aCunz5whLi6WK3r1IC21M32Tm9Gr9fmeX1sTmAskWiczvNSUOAdjXWCp/pvlwJq7qZRHgZ7sfeTocT4p/oLS/Ye46Vpr8ocgDO7fi/R+vejdresFw3D3nl9paWASp9bJDC81Jc5su2DxRURkgp/iUWEgEJO99x38mrUfbeGTz75k9979ALRKaMm1E8fQrGkTbrlhqsfjqvf8bu3ThEci88Kyugw1LdbmtcJ7Tc8pBfU/2fvU6dNs/byEbp07ktAynp179vLG2+/TrXMHpk3J5Ipe3UlOalPr1KHqPb/LmZupIpf/LiOqiLVp7wmKD5+m0sDtS0v467RUn5NnZWUlO/bsZdsXO9j2RQklu0uprKzk5uumMH5EBun9enFFrx40a9rET61QyjtNnKrerdtzgkpjPS6vMKzbU3uv0xjDocNHOH32LJ2S23Hq9Bly/vgcAJ2S2zF5zHD69+pOascOAMTFxhIX69dmKOWVJk5V7+o62dt57DjFJbsoLtnFti92cPiIkz49UvnhXTfTrGkTfnDnTXROaUfzpk0D3AKlaqaJU9U7b5O9vy5zUnrgEAN69wDgmRde4fOSXTSOi6NX9y5MHjOcvj1Sq97H/bFSDUnEJ85Ne09Q+OkpJopWrKlP8XHRNKk8xTd7PudP7+3m85JdlDmPERUVxW9//gCN42KZNnk8jRpF06FdEtHRl3fvsFKBFNGJ8+HlX7Fk2xEAnt2ynel9Enh0UscgRxWaTp0+TclXeynZXUqxpLCu9ATRB4qZu3wTXdu2YOrgnkweM4KeXTsTF2tVBerWuUOQo1bq0kR04uzsOF9TMVou3Fa1O3j4CMtWrWH77j3sO/h11frg37/9Rh7IvIKjx1M5eSqTdm0SdRlcFVYiOnFqxZranauooHT/Ib7at5/dpfvZvXc/o4cMZHTGQDCGjVs+I7VTChlX9CG1UwqpHZNp0thaybFlfPOqFR6VCicRnTjf23W8atrM6XOG93Ydj+jznCdPnWbvgUNER0fTtWMyZ86e5f7//l/OnasAoHFcHJ1S2tE41poH1CYxgSf/60fam1QRJ6ITp+suktLS0ogq6FpRUVl1MWbFmg2UHX+H0v2HcB47DkD/Xt35/u03Ehcby7UTx9A6wUGnlHa0TWx1QZLUhKkiVUQnzkiwffcedpfuZ/+hwxw8fIT9h76mWZMm/PS+uwDYWbofiYqmV/cuJLdtQ0q7NnRod74y+dRxo4IVulINlibOEFfmPErp/kMcdh7l6yNODhw6zPETp3jo3tsAKHxvHRs2byM2NoZ2rRPp0iGZzinnlw65c8bVdOigV7eV8oUmzgauzHmUnXv2cdh5lDLnUQ4fOUaZ8ygPzPkOjeNiWbFmPctXfwhAo0bRtGmVQFLrVpyrqKBRdDQzpk5g9jVZtIxv7nForcNtpXyniTNAKioqOXnqFN+cPMWJk6dITmpD0yaN+WrfAdZ+tIWjx77Befw4R499w9HjJ5h/760kt23Dpq2f88JrbwEQGxNDYkJLEh0tOXP2LI3jYhkzdBDpfXvRytGSlvHNLlqEKjGhZTCaq1RYi/jEWVFRifPYN8Q2OUJlZSUVFZVUVFbiiG9OfPNmnC0vZ+eefVRUVFjP22vXdEpuR9vEBMqcR1m9bhNnzp7lzJlyzpRb/04eO5weXTrx2fad/OH5PE6dPnPB595/18307ZHKocNHWPH+OlrGx+No0Zx2bVqTltqZ2EbWJPHB/XvRvUtHWjla0Lxpk4t6iEmtE0lqHbBvl1IKTZwcP3GCnMV/Jy7uwsnvs67OIuvKYZQ5j/F47t8uOu6WG66ibWICx0+c4o2337eq9cTFEBdj/Xv2bDkACS3jGZF+Bc2aNqF50yZV/3ZOsWpCDuzTkz/8z0Neh8yOFvE4WsTXc6uVUpcj4hNn0yaNmT55HG3btiEqKoroqCiioqKqriy3crTgx/fccsFzMY0a0crRAoBOyUnkPvqw18SX1DqxajkHTy53fWelVOBFfOKMjYkho38vr/M4Y2Ni6NWti9fj9eKKUpFHuzvAU089FewQgiaS2w6R3f5IbvvlEmNMsGMICBHpAHy1evVqkpKSLnguLS2N4uLi4AQWZJHcdojs9kdy2w8cOMCYMWMAOhpj9vh6fCQlzkFAUbDjUEo1KOnGmE2+HhRJiTMG6AccAiqDHI5SKriigDbAFmNMua8HR0ziVEqp+qIXh5RSykcRnThFZI79lSci6cGOxx9ExCEiuSKyUURy3fZf1PZw/n7Y34ftbtsR034RSRWRB0Uk1d6OpLY/aLcrp6a2+tx+Y0xEfgHpwIP241SgINgx+amdD9ptTQU2Ajme2h7u3w9gjvXr7vlnH67tt9uS67YdSW2f6NYuB5BXX+2P5B7nbOyr7MaYEiAjuOH4Tb4xpshu40KsXwxPbQ/b74fd0yoBnPauSGp/rjEm2207ktoOMFtEHFhtKqCe2h/JiTMVKAt2EP5m/yK4DAFexHPbw/n7MdEYU+i2HRHtF5EZQIk9XM21/4BERNsB7J/5BmAHkG2MWUw9tT+SEydAK7fHYfeL487+q4sxJt/e5antYff9EJGJQKGHpyKh/UOw2rQY6zTNRnt/JLS96ncemACkikiBvX3Z7Y/ke9XLsM57RIoFxpj59mNPbQ/X78d8wGnXFHDY/3n2Ehntd2Cdr3MCi0UkBzhJZLQdrPP5ucaYImCwiBwBXqIe2h/JPc4CrL/Irr9MnnolYUFEctySJnhue1h+P4wxWcaYmcaYmYDTGJMFvEZktH8j0M1tu4zIabuLe09yA/X0ux/RE+Dt6Tkbsf7aLLb/MocVu42z3HY5gASsv8YXtD1cvx/2f4ZZQC72uS5PbQ3H9ru1qRtW76skgtru4MLf8/z6an9EJ06llLoUkTxUV0qpS6KJUymlfKSJUymlfKSJU4UMf99D7Zr3JyLprvu6/fUZKrRp4lQhQUQexG1qiX0nzBH7K6ce3n8iMMe+2yYP6z7ni15jF0s5IiJz3Pan2kUkjNsdOt6k2m1RIUyvqquQICIbjTGD7cczsG6TW4yV4PKAmW53Rfn63g4gz57jiYjkYU0cX+zhtQ8Cs12xVHuPI0C3are5evq8HPv9w2m+ZETRHqdq8OxEmeu2y2mMWWSMcdrJsggrkVa9XkQK7N5hgXsPz+5ZVreg2vv720Ks+YUqRGniVAFhnzec41Yb9EH34W4tst17fx56ag4uXE/KdYdQLjAT6CYi2+16nFke3n8GXtajckvCPp1ftYfvBXY7H7SH93l2/E6sIbtfzqMq/4vke9VVgNjD2BXGmAR7Ow/rFrd76nBsOjUssmc/X+KeTI0xhW5FTZxAtogUuIbiHqR6Gl7bid3h4bhUcSsKXYNs+06VGfa2e3tLsE4zXHQ6QDV8mjhVIFTvWZUBG+t4W98CvCRYOzku8JIQ52AnJbtn5/Gz7MTr6bn5WD3XwR6eK6lW49IVS1UP2pWI7c9+BphQrb0lhGdhjYigQ3Xld3Z1mpfczjdudx96uy1tUOB+nGsoW0OCzcF7r7Wb23ETsQo5eOLEcwLL53w1pUtiJ9MCYL79PXDnwEsyVw2fJk4VKNuBHPuiziLXTns4XGJXb5pf7ZhsrAspF7GHyjn2Y4f7+UJ7aLzR7eWeeo3ABT3D6slzu31cq8tInnlAkeuPhNuQHaxe+IZLfF8VZJo4VaAMAQrc5l4W2MluJnbhWA+9snQP+1xJcw5Wcjtif213e0k2Vt1Fl41Y5zndE5e7fOzlEuyr7ul2XK3cpkDl2c/NptpcTLsdrqvk813zOrF6uutdF4jsuKp4apsKDTqPU/mdfR5xAXCPXcLLtXBWEdaQdbt7L9Q+5kGsnuglzc28hPiyq5+39OPnzcC6ILWo1herBkkvDqlAmM35SuTYybMA6xzfS0CeiHTjwgTqDETStOMpEhGniHi8uu4Hs+3CyipEaY9T+Z09lM3D6nEW2UPemYHq4dWViMzwd7K2274hHAoFRzJNnCog7OG5666dogD17JTyC02cSinlI72qrpRSPtLEqZRSPtLEqZRSPtLEqZRSPtLEqZRSPtLEqZRSPtLEqZRSPtLEqZRSPvr/KnvCphDpEpcAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 336x336 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#Load data\n",
    "#Units are watts for power in and angular frequency\n",
    "f2_data = pd.read_csv(\"fig2_data.csv\")\n",
    "f2_fits = pd.read_csv(\"fig2_fits.csv\")\n",
    "                      \n",
    "#Make a matplotlib figure\n",
    "\n",
    "fig = plt.figure(figsize = (pagewidth, pagewidth))\n",
    "gsF = gs.GridSpec(ncols=1, nrows=2, height_ratios = [1,1], hspace = 0.4)\n",
    "\n",
    "ax1 = plt.subplot(gsF[0])\n",
    "\n",
    "# Frequency shift data and fit line\n",
    "\n",
    "power_in = f2_data['p_in'] * 1e6\n",
    "delta_om = f2_data['delta_om'] / 2 /np.pi\n",
    "delta_om_err = f2_data['delta_om_err'] /2/np.pi\n",
    "\n",
    "ax1.errorbar(x = power_in, y =  delta_om, yerr = delta_om_err,\n",
    "             ls = '', marker = '.', color = sblue,\n",
    "             zorder = 10, capsize = 2.0)\n",
    "\n",
    "fit_power_in = f2_fits['p_in'] *1e6\n",
    "fit_delta_om = f2_fits['delta_om']/2/np.pi\n",
    "\n",
    "ax1.plot(fit_power_in, fit_delta_om, '--', color = scharcoal, zorder = 0)\n",
    "\n",
    "ax1.grid(alpha = 0.5)\n",
    "ax1.set_xlim(-20, 900)\n",
    "ax1.set_ylim(-2500, 200)\n",
    "\n",
    "\n",
    "ax2 = plt.subplot(gsF[1])\n",
    "\n",
    "g2 = f2_data['g_cooling']/2/np.pi / 1e3\n",
    "gamma_opt = f2_data['gamma_opt'] /2 /np.pi\n",
    "gamma_opt_err = f2_data['gamma_opt_err'] / 2/ np.pi\n",
    "\n",
    "\n",
    "ax2.errorbar(x = g2, y = gamma_opt, yerr = gamma_opt_err, \n",
    "             marker ='.', \n",
    "             ls = '', color =sblue, \n",
    "             label = \"Total linewidth\", alpha = 1, capsize = 2)\n",
    "\n",
    "g2_fit = f2_fits['g_cooling'] /2/np.pi/1e3\n",
    "gamma_opt_fit = f2_fits['gamma_opt'] /2 / np.pi\n",
    "\n",
    "ax2.plot(g2_fit, gamma_opt_fit, ls = '--', lw = 1.5, label = \"Expected total linewidth\", color = scharcoal, alpha = 0.75)\n",
    "ax2.set_xlim(-20, 800)\n",
    "ax2.grid(alpha  = 0.5)\n",
    "\n",
    "\n",
    "\n",
    "ax1.set_ylabel(\"$\\delta \\Omega_{\\mathrm{m}}/2 \\pi$ (Hz)\", fontsize = 13)\n",
    "ax1.set_xlabel(\"Power (µW)\", fontsize = 13)\n",
    "\n",
    "ax2.set_ylabel(\"$\\Gamma_{\\mathrm{m}}^{\\mathrm{tot}}/2\\pi$ (Hz)\", fontsize = 11)\n",
    "ax2.set_xlabel(\"g$_{\\mathrm{c}}/2\\pi$ (kHz)\", fontsize = 13)\n",
    "\n",
    "fig.align_ylabels()\n",
    "\n",
    "tickf = 11\n",
    "ax1.tick_params(axis='both', which='major', labelsize=tickf)\n",
    "ax1.tick_params(axis='both', which='minor', labelsize=tickf)\n",
    "ax2.tick_params(axis='both', which='major', labelsize=tickf)\n",
    "ax2.tick_params(axis='both', which='minor', labelsize=tickf)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Figure 3"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3b"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 168x168 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "mirror_response = pd.read_csv(\"fig3b_mirror_response.csv\")\n",
    "\n",
    "frequency = mirror_response['frequency']\n",
    "frame = mirror_response['frame']\n",
    "center = mirror_response['center']\n",
    "bg = mirror_response['background']\n",
    "\n",
    "\n",
    "plt.figure(figsize = (pagewidth/2.0, pagewidth/2.0))\n",
    "\n",
    "plt.plot(frequency/1e6, frame, color = sblue, zorder = 1, linewidth = 1, label = 'Mirror frame')\n",
    "plt.plot(frequency/1e6, center, color = sred, zorder = 2, linewidth = 1, label = 'Mirror center')\n",
    "\n",
    "plt.plot(frequency/1e6, bg, color = scharcoal, zorder = 0, alpha = 0.2, linewidth = 1, label = 'Noise background')\n",
    "\n",
    "\n",
    "plt.xlim(1.0, 2.0)\n",
    "plt.xlabel(\"Frequency (MHz)\")\n",
    "plt.ylabel(\"Amplitude (dbm)\")\n",
    "plt.ylim(-85, 10)\n",
    "\n",
    "plt.grid(alpha = 0.5)\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Figure 3c"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x1fe63152c08>]"
      ]
     },
     "execution_count": 61,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 168x168 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "mirror_noise = pd.read_csv(\"fig3c_mirror_noise.csv\")\n",
    "\n",
    "\n",
    "fig = plt.figure(figsize = (pagewidth/2.0, pagewidth/2.0))\n",
    "gsF = gs.GridSpec(ncols=1, nrows=1)\n",
    "ax1 = plt.subplot(gsF[0])\n",
    "\n",
    "frequency = mirror_noise['frequency']\n",
    "Svv = mirror_noise['Svv']\n",
    "\n",
    "ax1.plot(frequency/1e6, Svv, label = \"Mirror phase noise\", color = sred, lw = 0.6)\n",
    "\n",
    "ax1ylim1 = np.sqrt(10.)/(2 * np.pi)\n",
    "ax1ylim2 = np.sqrt(2e10)/(2 * np.pi)\n",
    "ax1.set_yscale('log')\n",
    "ax1.grid(alpha = 0.5)\n",
    "ax1.set_ylim(ax1ylim1, ax1ylim2)\n",
    "ax1.set_xlim(0,5)\n",
    "ax1.set_xlabel(\"Frequency (MHz)\")\n",
    "ax1.set_ylabel(r\"$\\sqrt{\\bar S_{\\nu\\nu}}(\\mathrm{Hz}/\\sqrt{\\mathrm{Hz}})$\")\n",
    "\n",
    "\n",
    "Sxx = mirror_noise['Sxx']\n",
    "ax2 = ax1.twinx()\n",
    "ax2.plot(frequency/1e6, Sxx, label = \"Mirror noise\", color = sred, lw = 0.6)\n",
    "ax2.set_yscale('log')\n",
    "\n",
    "ax2.set_ylim(2.459e-19, 1.0998e-14)\n",
    "ax2.axvspan(1.29,1.43,color = sred,alpha=0.15)\n",
    "ax2.set_ylabel(r\"$\\sqrt{\\bar S_{xx}}(\\mathrm{m}/\\sqrt{\\mathrm{Hz}})$\", color = sblue)\n",
    "ax2.tick_params(labelcolor = sblue)\n",
    "ax2.spines['right'].set_color(sblue)\n",
    "ax2.tick_params(color = sblue)\n",
    "ax2.grid(alpha = 0.2, color = sblue)\n",
    "\n",
    "\n",
    "freq_scaling_guide = mirror_noise['frequency_scaling']\n",
    "ax2.plot(frequency[1:]/1e6, freq_scaling_guide[1:],color = 'grey', lw = 2, ls = '--', label = 'noise $\\propto f^{-1}$')\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Figure 4"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, '$\\\\bar{n}$')"
      ]
     },
     "execution_count": 62,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcUAAADqCAYAAADTTF7TAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nOy9eXRcZ5mg/3xVtxZVaSlttrxbkuU1dhzb2YOTjpNAgHQ3GAWm+/QCAzF00jAzQCcNkx8waUgcGHoapukOy8CvGeiAnUCTkNVOQhYn3vdNsmTZ1r6Xaq+6937zxy1JpX1XSfL3nFOnqu76Vkm33vvuQkqJQqFQKBQKsKVbAIVCoVAoZgpKKSoUCoVCkUQpRYVCoVAokiilqFAoFApFEqUUFQqFQqFIoqVbgMlACOEArgFaADPN4igUI2EDCoFTUspEuoUZK+p6U8wixnytzQmliHWBHkm3EArFGNkEHE23EP0RQtwFlAMlwA4pZXW/TdT1pphtjPpamytKsQXgzTffZP78+eM6QGNjI0VFRZMq1GShZBsfM1W2pqYmtm7dCsn/2xlItZRyhxDiY1g/Jv2VYgvAo48+yo9/8lP+21e/ybqNmzl97DDf/eZX+eJ/+y/cd9990y60QtGf8Vxrc0UpmgDz589nwYIF4zuAaY5736lmpsnWFQO3Bk77zJMtlZksW5Jpdz0KITYBfw88JaXck1z2QHL13cDjUsojye3ullLuGOQwJsAvf/nv/I//+a9cf8tWABYuXoovL5/vfOPLPPDAA4PsplCkjVFfayrRRjFmWsNQ25VuKRRjJekW3YHlFu1etgnwSSl/CDwM7EyuqgZ2CSGeGup41dVVbLz+5j7LNl5/M5UV5ydbdIVi2lBKUaG4SpBS7klafqnu0I+TjA8mY4dbhBAlUsrObktyKEpKSjl28N0+y44dfJeylasmWXKFYvqYNUpRCFEihHhKCPF36Zblaka1yp1zlADt/ZZ9TAjxQNKt+vBQO37uc5/lGw8/xMF9b5JIJDi4702+8fBD/N2XvzSlAisUU8lsiynuwgr8K9LIuYrzSAklNymLYI6Ql/K6XUr55Gh2uu+++8jNzeXzn/lPhENBVq5azTe+9ijl5eVTJKZCMfVMm6UohNgkhNiVjGt0L3sg+diVjG0MSdK10/+OVpEGnn3uOX7z/HPKapwbtAO+8ey4atUqKisr8XoyuOmmmzh4YL9SiIpZz7RYiv3qnrqXdQf4nxRC7AGewsp+I5kKnsqI8Q3F9JCqB3VVtj0XeBW4HtgthPABo77Ozp8/z4IFC3j66acJBoNTJqBCMZ1Mi1JMKrQ9QohdKYs/jnVBIqWsFkJsSdl+93TIpZgYhrIUZx0ptYc7hBDtUsrdQoi7k/FDH8PEEIfC6/UqpaiYM6QzpjhYgH8k7gKuF0L4pJSdUyCTYgyYpjIVZxvJG87d/ZYNVos4avLz8/H7/ROSS6GYKaQ7+7RPgH+kjaWUT0opy5VCTB+G0asI4wk9jZIo0s2jjz7Kiy++SElJCYnErGvhqlAMSjotxXEH+Idi1apVPPjggzz00ENj3rezc+bq2ZkkWyyuo8ejANTXXkHq0TRLNDQz6XtLpbm5Od0iTAqPPfYYCxYsYN++fcpSVMwZ0qkUxx3gH4r777+frVu3smjRonHtP979poOZIps/GEFzugHwFcxDRrtmjGyDMRNls9nS7aCZXEKhENFolFAohNfrTbc4CsWEmDalOBUB/v5037kqpg7dMHpeJxKJWVfoqph8srKyAGhtbVVKUTHrmbZbVinlbillaTIm2N1WaoeU8ofJWOGEfV3dMQ7F1JHQe+OIKqZ4ddN9vfl8VhSktbU1zRIpFBNnTt3oK0tx6tETvZairuvgTKMwirTSfb01NTUBSikq5gZzK7ihmHJSLcWYshQVWCUZAG1tbWmWRKGYOHNKKSr36dSTqhR1XSlFBT2DnGOxWJolUSgmjnKfKsZEQu91n1oxRVf6hFHMCJYuXQqomyTF3EBZiooxkfrDpwq2FQB5eVYPjrlSf6m4uplTSvGxxx7j3nvvTbcYc5pU92mq1ai4+ui+CXU4HHg8Ho4fP55ukRSKCTOn3KeKqSdVESaUu+yqJjVckZmZSUdHR5olUigmzpyyFJX7dOpJVYSRmFKKCovs7OwZ21ZPoRgLc8pSVIk2U4+RYikGokopKix8Ph91dXXpFkOhmDBzylJUTD1xVZKhGITc3FwCgUC6xVAoJoxSiooxkUgW7DsdDhVTVPSwbNkywuGwmrGpmPXMKaWoYopTTzCawCYEbpcLaSileDWTer2VlZVhmqZKtlHMelRMUTEmuiI6muZA0+zKfXqVk3q9FRQUANDY2NjT9k2hmI3MKUtRMfUk9AQOh4ZT04ir4n1Fku4ZkWfOnEmzJArFxFBKUTEmEgkdh+bA6dBUTFHRw/LlywG4fPlyegVRKCaIUoqKMaF3W4oOTXW0UfRQXFwMoMoyFLOeOaUUVaLN1GMaOhkuBw5NQ9eV+1RhkZeXh8vloqGhId2iKBQTQiXaKMZEPJHAoWk4HBp6IJxucRQzCJ/Pp5qCK2Y9c8pSVEw9uq7jdDgspajryHQLpEgb/T0zS5YsIRqNplEihWLiKKWoGBOxuE5c2hFCI5HQkUorXrX0n0pTVlam6hQVsx6lFBVjIhqPozk0sNnRVfG+IoV58+bR2Nio6lcVsxqlFBWjxpQSXdfR7Bp2Lek+VZaiIomW/J+orq5OtygKxbhRSlExai52mOi6jsOhYbdryiJQ9KG0tBSA8+fPp1kShWL8zCmlqEoyppaobs1T1DQHwq5ZlqOhahUVFitXrgTgwoULaZZEoRg/qiRDMWoMwyAcCtHV1UXR/PkASikqeli9ejUAFy9eTLMkCsX4mVOWomJqicfj1DXU896B/dhsdgDV1UbRQ3Z2NpmZmVy5ciXdoigU40YpRcWoaetoB0AIQSLZzSaRUEpR0cvy5cuJRCLpFkOhGDdKKSpGTZffD4CwCeLxOECPclRcfQwWw1+5ciX19fVpkkihmDhKKSpGTTjYBYBN2CylKCEWV0rxaqV/8T5YluLly5cJhUJpkkqhmBizRikKIUqEEDuFEA+kW5arlUAgAIBTsxGLxQCIqZmKihRyc3MxTZPjx4+nWxSFYlzMGqUI3AU8DpQqxZgeuoJBBJDhdvW4T5WlqEhlw4YNAEopKmYt06YUhRCbhBC7hBB3pSx7IPnYJYTYNNz+UsofSik7gVenXFjFAKSUdAWC2O12sjMzSSQtxFhSOSoUANdddx0AZ8+eTbMkCsX4mJY6xaQiLAdKUpZtAnxSyieFEHuAp4C7k+s+1u8QnVLKPcnXd0spH54GsRUpGBKCoRB2u52c7Cyi8TgSiMaUpajoxefz4fP5qKqqSrcoCsW4mBZLUUq5R0q5A0htivhx4EhyfTWwJWX73f0ee8CyLJVCTA9SQjgcxm63k5eTRTQaASRxFVNUpLBr1y4k8Pbbb3P9DTeya9eudIukUIyJdHa0KQHaR7uxEOIpoEQIcTfQnlSyimlCAuFIBE3TyMvJ4nTVFTTNoWKKih527drF177+P/jm9/+Na7fcxPFD7/G1r/wtAOXl5WmWTqEYHelu85aX8npYBTkaJbhq1SoefPBBHnrooTEL0tnZOeZ9pouZIFvCkISDXTg0O1KPEw76yXC78fv91NXVpVu8QZkJ39tgzNXp9E9++zs88q3vs/nm9wGw+eb38ci3vs+T33xYKUXFrCGdSrEd8E3mAc+fPz+h3qeLFi2aRGkml3TL1hGMYCLweLNYvHgxmvM0TncmOhpFCxZhn6F5zOn+3gbDZpuhX9YEqaw4z7Vbbuqz7NotN1FZoaZmKGYP6bw6XwWuBxBC+IA9w28+MmpKxtQRCIYxTYknw0N2phcBCJuVfapGKioAylau4vih9/osO37oPcpWrkqTRArF2JnOkoyPAZuAHUKITVLK3YAvWXP4ADDhBJrBOmwoJoeuYAhTmng8GWRleq2FEuKJhBo0rADg7778JZ74yt9y+N230BMJDr/7Fk985W/5uy9/Kd2iKRSjZtTuUyHEnfQmx3RKKV8by4mSSnB3v2WTmizz6KOPsn37dqUYp4BAKIxpmHgyPOR0K0WSSjGNcinSR//rrTtu+OQ3H6bi/Dkys7L5X//4XRVPVMwqhlWKQojrsEoncrDKKaoBAWwWQtwPdAC/klIem2pBR4Oapzh1dFuKXq+XTE8GQlgF/bFYXFmKVymDXW/l5eWUl5fzV3/1Vzz33HPcd999aZJOoRgfQ7pPhRDbgFwp5SNSys9JKb8tpXwm+fi2lPKzUsq/B/KFEB+dPpGHRsUUp45gKIxpmmRnZeFwaLhdrmTxfkxZiooBXHfddei6zqFDh9ItikIxJoaLKR4ajYtUSrkX2Dt5Io0fFVOcOgJBa+qBx+NBAJleL6ZpktB1Egk9vcIpZhz33HMPADU1NekVRKEYI0MqRSmlf7QHGcu2itlJu78LzW7H47Zcp16PB8OwBgyHwmqorKIvq1evJjMzk6NHj6ZbFIViTIwr+1QIsU0I8YoQ4vHJFmgiKPfp1KCbkpb2Lux2OxmeDAAyM73oumUhhiLRdIqnmIHYbDZKS0t588030y2KQjEmxluS8QBWg+8fCiE+PYnyTAjlPp0aLneatPoDllLMyLDcpx5Pz6SMtoCyFBUDWbZsGdXV1T2zNxWK2cB4leJFKaVfSnmRSe5Ko5h5RHVJMBjEbtfIcLsRIhlTNAxMUxKOKKWoGMjmzZtJJBIcOHAg3aIoFKNmvEqxRAjxuBDiCeATydePJ2sZ04Zyn04NsWiUhJ5IWopuAFwZHoTdhmkahJX7VDEI27ZtA2DPngk3q1Iopo3x9j5tB36dfP2r5HMeVt1i2lB1ilNDOBLCNEw0u50MtxVT1JwebDY7cd0grBJtFIOwfv16srOzee+990beWKGYIYxXKZYAF6SUASHEv0gpPzeZQilmFqFgCNM0cLjduF0uAMqKMrEJAUIQUu5TxSAIIdiwYQNnzpxBSokQIt0iKRQjMl736RFgtxBiI6CmiM5xIpEQum7g9Xp7ftjyc6xWbw7NTps/pLraKAblIx/5CO3t7Vy6dCndoigUo2K8SvEgcD/wJDBjhv2qmOLUEI+GMQyDnJwcci3vKTlZHgBsNjuhUIhAPI0CKmYst9xyCwD79u1LsyQKxegYr1KUyezTe4DwZAo0EVRJxtTQ2RVCSklOdg45lvcUh92O2+3GZhMEQ0EMM70yKmYma9aswev18utf/3rkjRWKGcB4lWIpgBAiB5h5U1wVk0ogZLV4s9yn1jIhBB6PZS0GQyFsKlykGASbzcaqVas4ceIEUvnYFbOAcSlFKeW3hRD/ipWB+sDkiqSYaXQFAkgkmV5ruHA3Ho8XKa1Bw/GE8p8qBmfr1q20trZy7NiMGKajUAzLeNu8dftCfogq3p/ztLW3o9k1vJmZfTII5/mspuDQ2zBccfUw2hj+9u3bAXj22WenWiSFYsKM1336q+ToqGdIulJnAirRZvIxTRN/VxeapuH1ePus83o9Pf1PL7cqpXi1MdoY/rXXXktBQQF/+MMfpkEqhWJijNd9+sxgr9ONSrSZfPyBEPF4AoemkentqxQzPR6klJimSSgUol2VKyqG4I477uD8+fOqD6pixjOoUuxu8i2E+FJqw28hxEYhxKeFENnTJaAivXT4u9ANHU3TyMvJ7LMuJysTu92OntAJBoN0qm5viiEoLy8nEonw7rvvplsUhWJYhrIUNyefb5BS/hh6Mk33ArnATiHE8imXTpF22v1d6LqB0+Fg7cKsPutyfTnYbDaklHQFA2mSUDEb2Lp1K06nk927d6dbFIViWEZyn1anvC4HfiSl/HayrduMKdpXTB1tnV0k9AQ+nw+Xo++/S54vByHA4XTg93elSULFbMDr9bJu3Tqee+65nuHUCsVMZCil6E8+H0y6TIuBR4Cnp0csxUyhtsUPEvJycwesy066TzWbHX+XUoqK4bnvvvvo6Ojg5ZdfTrcoCsWQDKoUpZSPJJ+fAa4HngKeklIegx5X6ozJOlVMHXWt1v2RJyuL5y50EtV7W9fYhCArMxO7DTr9nekSUTFL+Iu/+AtsNpvqbqOY0YyYfSql/JGU8h4p5bdTFt9F78ioGYMqyZh82tvbAUg43ER1SVMo0Wd9dlYmccMkEo0Si6sCfsXQzJ8/n7Vr1/Lmm28qF6pixjLukoyZVIrRTTpLMqSEjghzqgeobhhW4b5Dw+GxMk9jhuSS30qrtwnIzsoiGouDBH+Xf7jDKRTcd999tLa28vbbb6dbFIViUMZbvK/oR1SHtoikJTR3+jtebvKTSCRwOBx4s6zM0+PNEQ40hAnGDQRWWYaUEsMwCAdUXFExPJ/85CfRNI1XX3013aIoFIMybqUohLhzMgWZ7bRHdI42d3K8JZhuUSaNmsYOdD2BKex4M/uWYwQTJtluQXZmFpqmYZg6bZ2daq6iYliKiop4//vfz69+9auebkgKxUxiWKUohMgRQrwshDgohPhSv9XqVi+F//3iaf7pZ2/T6J8xk7QmTGt7O4lEAs3pxNOvm81bV4JEdUlOdhZ2ux0ktLR1qLmKihHZvn07TU1N/PznP0+3KArFAEayFH+IVZ7xAOAXQvxKCNFtMkxrAEkIcZcQ4ikhxKtCiJLpPPdo+MlvjlBR08q/P3883aJMGvUt7Ugpyc7NQ9gG/qs0hhL4crIRQmDXHDS3tRJODHIghSKFD3/4w3g8Hn75y1+mWxSFYgAjKcXNwKellEellD/CUo5fSbZ5m25HWbWUcgdWecimaT73qOnsimDOERdiR2cHpoRs38AaRQCHTaBpGr6cHEK6QVV9E3GVVKgYAbfbzbZt2zh8+DDV1dUj76BQTCMjKcU9wJbuN1JKv5Ty74GvMMaRUUKITUKIXUKIu1KWPZB87BJCDKvopJTVyW3ullLO2F5R0Zg+J+JqCQNaW1uJGwZZOT4629s4tn8ftTW9P2L1wQS6KcnIzsEwDKKRMMFwdE5l4Cqmhi984Qvous73vve9dIuiUPRhJKX4MFDav89psrj/R6M9SVIR7gBKUpZtAnxSyh8mz7MzZd3H+j26FWk1sEsI8dRozz3d6HOg/iqcgHONYfx+P5rDgd1u57XnfkvFqRPs2/sK1efPAnC5K05bNI7Nm4WuJ5BS0tbePu0uBMXs44YbbqCsrIzf/e53xFV9q2IGoQ23UkrpZwjlJ6X87GhPIqXcA+wRQuxKWfxxksk6SSsw1SIdYAkKIUqklNXJ45SP9tzTTUyXs14pxA1obmkmnoijaQ4uVp7Dbrfz/u33c/CtNzi+/10WLl2GO8ODRJLty8Vms2PoOq1tbcDCdH8ExQykbOVKmhobB11+qaZm+gVSKAZhSKUohPiolHJUo7LHsm0KJUD7GLb/mBCiu5fYw2M815RimL3+QmOO+A4bm5uJx+OYNo2A38+W226neF4u6//kbnb+y8+4cOY012y+HpmMOdo1jXgsSmt725xwHysmn6bGRkrfd9+A5VVvPZcGaRSKwRlSKUopnxVCfBkroWZPd9/TbpIu1XJrU/mdcZ4/L+X1sApSSvnkSAdbtWoVDz74IA899NCYBensHH/vzrhusm211fFF0+zU19Vhn8S2CBORbTx0xeDSxQsYiQTYdLw5maxemMcKexfYYXFRITWnjrCxbCmaEaHA4UIzE2CDK5eqaagvm9TPP16m+3sbLc3NzekWYcaxd+9etm3blm4xFIoR3affTjb/fkAI8SSWghTJ51eB3VLKi+M8dztjTNYZifPnz7NgwYJx779o0aJx7dfSFWXvOato32638X8WLsJhH7cYgzJe2cZDrAP84TgmgrhusnzddUhfEYsWWVmoxdfewJWXf8/F1iAr5udgegvw5M2jq6Od9kCEeUULcTvEtMk7HNP5vY0W2yDlLVc7O3fu5M4770SImfF/o7h6GU1DcH9yhuI9Usr3pzx/ZwIKESylej2AEMKHlek6IdLVELwjpTjPm+me9THFRCJBc0szsXgMh9PJshVluFJMvwduX8eqIh+Nl6p6luUVFGIYOuFwmM7A3OnqM5NIlkL1PPdfPonnKRFC7BRCPDCZxx2OAwcOsH///uk6nUIxJNN2yyqE+BhWfeEOIcSmZDKNL3nhPcAkxAnT1RA8EO1tV2XoBuYsD6rVNTUTiUTQdZ2CeUVk5fhw2Xvv4F0OO5vWraLhyqWezMHcgkJMU6IbOrUNTekSfa7TnfR2RAjRluw09TiwJfk8WdwFPI6VeT5livHSgT098UTTNLnnnnvIzs6mbOXKqTqlQjEiwyXaFGMpq6eklDUTPVFSCe7ut2zHRI+byqOPPsr27dunXTH+r2etcGtefhbtbQGO1HZxy/KcaZVhstBNqK2vJxQKYxgGK9atB0Cz9XVrbbpmNb954wBXrlxhce5CfPkFOBwO4vEEtQ1NbFm3Ih3iXy3slFL+KHmN3gV8llE200iWQv091nW9J7msW/HdDTyeLJNCCPEqKWVUE2V+UdGApBqVeKOYaQxpKSZdoz8EPiuE+BchxMbpE2t8pMtSfPlADQDZ2R4Aattnb//TqA4NjQ1EIhE0h5PilasB6B/qWbZoARmZ2VyquQRAbn4BwmbDbtc4d1lZilNJUiF+Wkp5MTnv9H4p5cdH2m+s9cJYjTJ+OFlyV1ZU0NXV1fNQKGYiw7pPkxfdI1LKzwF3J3uffnSaZJt1eL0uABraI2mWZGJUXb5COBohb9583BkZANjoqxWFECxcXkJjUxOxaBSH00m2LxcdSW19PXKWu5BnKB0ASVdpbvJm9drR7iyl3JP0zqT2Vvs4cCS5vppkByshxANSyhlV+qRQTAejjikmk20+DgghxK+FEF+a7AD/RElXok033VmF8cTs7WoTCIaoq6/HNE2WreiN7QyWFLh+zUqkKam7ZOVbFcwvIhpP0BEI0tjSNl0iXzWkNMwQQGfy+SdCiEohxL+M87AD6oWTHaPKk+0X09I9So2VUqSLMSfaSCmfkVLeD+wFnpxJbtV0uU/7Y87ijuAXai4TCnRhs9tZuX5Dz/LBEuU/fO0ysrIyuXLRykItKFqAzW4jHk9QUVM7TRJflTyOVTv8WSnlFizrbiL9gPvUC0spd0gp75ZSlg8X91+1ahXf+ta3JnDaofn9738/JcdVKEZi2DrF4ZBSHsUK8M8Y0pVo05/ZnH16puoisWiULJ+PRUVFrMh1cao12sdSvOKPca41yt2lOaxbsZx3T1USi0YoLFqAZneAkaDiYi1br79W1Z1NAcn2i/5+7/eO83DjrheeaF3wYIk3AMJm44knnmDbtm1kZmaO+/gKxXiYU1XE6bYU8/OsQbyzudXb4RNnkNJk0bLl5GVoeBzWv4gtRbn97wPN7Km2EiW2bihDSsmlixexubx4MjOxaxonq2tpDs3e7+EqYtLrhUdL/8Sb7seXvvhFTp8+zfe///3pEkWh6GHUSlEIcacQ4tNCiI8KIe6cSqFmE1LC0oW55OdnsXC+dcM9W92nre2dXK6rR9hslK5e16c20T6IwWdKyfyCPDKzszl28hynG8MUFi1AT+gEurq40jwz26xdzUxHvfBEKS0txZOVzRNPPMGGjZvYtWvXyDspFJPEsEpRCHGdEOKJZBB/M1b2mwA2CyH+VQjx+EyKKaYj0UYCCd3A63Xj1CzNYcxSpXiiogp/V4AMr5cFS5ZiE4Il2U5W5DrZdaqd1y72TaM3TCsLdUlxKf6WBvRYlHkLFmKzCeKJOBeT5RqKmYOUcreUsjQZL+zOOt0hpfyhlPJJKeWo72Sm4nrbtWsXX/+Hb/Hgzqf413cqKf/SY3z1a99QilExbQxXvL8Nq9n3I8MdQAixbZxTMiadxx57bEIxjvEgJSQSBu5MG0671fDUkJKoDu5xR2zTw6vvHMaUJvmF88nK8eHWBDYhWOFzA/BadRd3FvcmHHfHThcXlyLfO0hnw2U2bFqJ5nCAYVBZfRH9jusGFP4r5gZTcb098eS3+Yuv7GT1llsAWL3lFv7iKzt54slvUF4+YyfGKeYQw1mKh6SUr410ACnlXsYf5J/1SCBhGGh2G/akjzGuG3TMslLFWDzBsTPnsdvsLCouIxyTrM63lOEvTljlFf0TiIzke19ePi5vNp31NbgyvOTlFyKFoObyZU43xonP3goVxTRTVVnBio3X91m2YuP1VFVWpEkixdXGcB1t/EOtm8i2c43zbRH0hIndbqctYtVWtQQTuGaJlSil5GRzmD0HTtKVdJ1GsxZytiXM4foQxxrDXOyMAWBIOFwf6tm3O59obUEGuYuWE2htIBIJk7dwMcFojHAsypXaWupU8xLFKCktW8mFYwf7LLtw7CC+vHyi0WiapFJcTYyYaCOEyE7GDl/u7miTdJlWToeAYyEdMcUzbVESuoFds2FLuglN05w1g3Y7Ywbn2mP8+pU3iekGrux8sgotl9juMx38+8m+Rfi/Pt1b530oqSCvKczAt3AZUkquXLxI0eIlOF0uYrE41RerZ/3UEMX08cjffZmff+thzh3ah64nOHdoHz/6/75AwN/Jrl27VKckxZQzUqJNDlADlGKlah8CPoHVOHjGpRamqyRD103sdhvl6/IBCMWNWaMIBGAkElyqrsKuaWQtWIbNPjoz96ULvQ6CjOw83Jk5XK6uJH/efNwZHhwOBxWVFZimKs2Yi0zFTWh5eTnf/MbX+O0/fYPP3baS3/7TN/jyf/0vCCH4x3/8R44cOTKp51Mo+jPSr98TwOb+cxOT9Ux3TZlUs4i6Rj+mlDgcdhbnOAGI62ayLGNmJ5hEdUlH1OTU0UPEYlEcniyyi5aO61hCCPKXrqDtwjFCgS4WF5dQdeIowWCQy7W1rMgf33EVM5epSmwrLy8fkFTjdrv44he/yHe/+11+9rOf4XA4Jv28CgWM7D71DzZIWErZmWwvdVUjpeRb//o6AIWFOWS7ktmnpiSmz3zrqKrdpCUkOXlwPyDw5BSQU7Rk3MfLW1KKsAmqz59lSXEpDqeTeDzOmXPnJk9oxf4LuOYAACAASURBVFXJpz/9ae69915eeuklTp8+nW5xFHOYkZRi67RIMUtJdZFmZDjJcFqGt2lKWsIzv6GxP6rz3ukK2pqbcLkzyFtUjF0b3x24TYDD7aFw0VJqKivILyhES7pQz1VUEIvP/O9DMXMRQvCDH/yAwsJCPvWpT/Huu++qpuGKKWEkpVg61IqZVLTfzXQn2iRSrEHNoWFPJtocPnSBX7x6ZtrkGC8vXmjh5VdfxTQNMrJyyFti/bmlYdB6qYKKt1/k5EtPc3rPs1w5/i7R4MAk42fPdnC6OUx3KeLC0lXEohEaaq+wtKSMUCxGMBTk5YMqpV4xMfLz8/nJT37CxYsX+fznP8+LL76oEm8Uk85ISrE6mXma1b0gmY36GWDGtZiY7kSbSEoBnsNh71GKAD9/8di0yTFWpJScb4vS5ffTXluNw+XGnplLZkERYX8bDftf4PKxfRiJODlFS8jIziVYX8251/+D5qozA36I/u14G933B/lFi/FmZlF55iQlq9cgNCfSlBw9cVzVK84x0pHt/def/CSGYXD+/Hn+/M//nJycHLKzsylbuXLknRWKUTBsoo2U8ttCiF1ApxCiezBpHlaSzVVbm9hNbBilCFa3m5k2JCKSkJxsjnEpEOHykTcxEnHcWXkULF9FV3MdFw++wUJfJtv/+MNUk98z5SJTxDnx3lvUnjpAPBJk0brrB52AIYSgbN16ju3fRyIep3DBAoJN9dRcvsLhCy3cvKpwuj+yYopIRweppsZGSt9334Dlg03bUCjGw4h1ilLKcqAMeAT4rJQyH0sxTls3/ZlKJNEb07DZbAOUROcMrDVuCZkYEgL+TpovnsOuOcnM8ZGb7aV6/17cmTn82SfuZ3lxcZ/PIzU3xTfcybySNTRXnaHt/OCp8aaE4pWrcTicVJw6QcnqtYR0k1A0ysFjR6frYyoUCsW4GNWUDClldXK48N7k+70j9US9GogmLJ/hbVvX9iz76B29bpxwYtpFGhUCOPj2H9BjURzuDHLnFVFxeB8eXwFlt30AX7Z3gNW7ZaEXIQRrt9xMYfFqmi6corXm/IBjS8DhdFKyag1XLlaRl19IhjcTQ9g4dfoU/kBowD4KhUIxUxhSKQohPjrag4xl27lEJGZZinZ779dYvCCn5/VMTAGQQGNjAxUnj2PTHGguN7VX6rC5vJTeuA275kAI0dPEWwB3lWRzb1kO/3DnYj55XSHbP/BHLFqylCsn3qOjrW+CsmFKpJSUrVuPEIKK0ydYec16TGkSDkd45Z1D0/+hFVcF+/fvV+UaigkzZExRSvmsEOLLWL+je6SUfTJHhBDLgXJrU/mdqRRyJtLQHuLhn+wDwG7rVYpep73ntTVsOL1znAMx6Iqa2GySLBe0R2K88MILxGMx7M4MjEQcW1YOpTffjeayGoDboEcpbl7o5e5SS9E77LAwy8n2dQW0Be+kruUZTh56j6W3L+rZtzGQIGFKivMyKV61hovnzrLtjz+CO8ODZhq8dfAY12/ZwvICb1q+D8Xc5aGHHqKuvp5gIDBg3fyiIiorVAa0YmRGk2iTAzwghHgSS0GK5POrwO7BivvTxaOPPsr27dunJQP14Z+8y7Eqy0qya72KL9PdW+f32X96hRe//oEpl2U4WsJQ0R4ikNDJ0GycPHGCC1WVOJwOIrEonoIiSm+6C5cns2cfIehjKQ7GqvnZFG+5nctv/QeXjr5NyY3bemKQbSGd4jxYu3ETNRXnqDx9khWr13HqyEESus7zr7/HQ+XbpvqjK+Yg84uKBk2qyfH5OH/ecuerRBzFRBhNoo1fSvltKeU9Usr3pzx/ZyYpRJjmkoyUJJRUSzErZYji4XMN0yPLCASSCUFtnV0cePM1dF0nFI6iudysuOX9eHKsnq1ZTutzFHodPXWHQ2XPbl2WxaMfXMeGjRvxN9XSfOFUn/XbV/nI8HhZseYaLl2ooGjJEjI8Xux2jWMnjtPc1j74gRWzhnSUZFRWVNDV1TXgceXyZZ544olplUUxNxmzby/pNr3qcaTEEVNjinnevh1hdJNpnZgR1U2ig7SYk1Ky/429tLe0WJ1AhKDs1g/0TMQA+OrWhTxy2wIWZzt7ZicOZSkKIZjndbDjns3kLlxO/dkjBNube9Z//Y06QnGD1ddeh8Pl4vThQ6zasBFTmsRiUX63561J/dyK6SddDfiH4m/+5m/SLYJiDjCegNdnhRC/FkL8S3KMVPbIu8w9NHuKpZiiFL39Bimeb05wpXPodlRxXfLc+Q7+z5GWccmx61wHx5vCgDUE+LkLfp5LTq8wU5Rx5emTXDh7GsPQMQ2DRWu3UFi8us+xhBDkZljyh5KZtRmO4f9FhBAs2XgLzgwvNYf+gB63Zi/GdEmjP47L7Wb9lhtpaWogIyODnBwfNpudo6fPs+/EwOxVhUKhSCdjVopSykeklPcDT2K1gft7IcSXrjblKMTglmJ3/9Nu/ui//F/u/OKvhjxOZbvJ25eD7KtoQUpJUyiBPza21i8VHTFMKTnb0tdCrG6XRBMGLY0NHHzrDcLBAIlEgsKFS1hx893DHjMjGSctyhy5F6rmcLJ8yx2QiHL56Ns9HW9cmg1NCAqWriDh8nH80AGWrd+ITQjaIjr/+sxL+IORMX1WhWK8dMccFYrhGPN8eCHE48mX3dNnN0kp3y+E2CiEqJZSTumcdSHEq1LK4X/Rp4FgvFcBpSpFp8M+YNuucHzYY9XXt/Pyi0e4yQcNpsbqkkLKV+eOKENqu7VEPz3aGIhzvCmK04zw+ssv0tjYiEwkyMjyUXz7nyJsw98P3bwkE59bY22he0Q5ALy5BazbdCNHD+yj5eJZ5pWsRQCLMzM42xxmybU3U7f/RZrqaikrK+PwqdPEu7r4xfN7+ZtPfHhU51AoRmKoRJzsnBx+//vfU1tby+23346mjfmnT3GVMB73aS3wOPAjYDfw2eTyUmBKx0kJIWbMDEeXs9eCEkKwrjADAIc29q/U32kVtH/lZ/v5/r+9Q2XN6IaTnGrtbZnTP2z546Ot7Ktp4bnn/oPai9XosRhOdwbLb9pGRnavwnUm3cBLkrMgu7EJwbp5GYO2cuvPdUUeAErXXENO0RLqTx8i1NFKQzDB7jPNCAEeXz6l6zdxufoCCxcuwpWRgd1u59CJ0zz9+nHqu0yiauiBYoL0T8T58Y9/jKZpFC9fTklJCcePH+fpp58mGp2B7aYUM4LxKMUlWArxCeA6khZjsuPNa0PtJITYJITYlarYhBAPJB+7hBCbRnn+zqFWGObUZrQ0BhP8pqID3ZTkZPdaUF/9o8X85cYCoG8CTirdrtFU6+5kS4SGUGSAQuvsGtqlWB8wudRpcLYlwqmWCM2BOKG4gZQQN0zCyX6s8USCi/tfo+LMaRKxCHank6K11zOv9Jo+x3Mm5b0mqdTHw/3X5PEPdy7CZhMsu+42NFcGNYf/gJ6wLOTOiCXT8jXXkj9vPm+88w6l11hDVmIG7HltLxVXmqgPWHWVreG+x5cS2iMQU0pTMUbuv/9+nn76aSoqKnj00UdZt24dBQUFuFyudIummKGMN6b4ccYQU0wqwh1AScqyTYBPSvlD4GFgZ8q6j/V73CWEuEtKOWy/1QvtJoHY4IoxFDdIGBNTmidbIugmtIYNXtxXCcDffuYuFuZ6erZxDmEpNoZ03rwS5Fxb7x3qubYoHbEEsp8yN4dR7h0RSWvY5GfHWrnQGuFyZ5yzTRGCcYN9Vzo50xQhGotT8e5rNFWdJhgMYNecFCxfzbLN7xtg+c1PZssuyBr/JHObEDjsNmxCoDldLN9yO/FwsE98EUAKwU133EVzSOfY8dMsL1tFNJEgEI3ym9/9B12BAC1h6IpZNxFmyr6dUagfWJOtSCPpKMkYD/fccw8vvvgi0WiUT33qU9jtdoQQ+P1+nn32Wdra2kY+iOKqYTwlGY8n44rbk4s2JTvalAylGKWUe6SUO4DqlMUfB44k11eT4nqVUu7u99gDbBJC7Ex5HpT4EIrvheou9tRMLNxpJm26tjC0+S1rLsPdV5nM82Xw1U9s5n039h1FeaLZMn9qA4OZO/1GMf32CBs+9yvWf+5p9hy9MnDrpLLo7r0K8H9PtNISiqMn4rz50vPUnjtGLBTArjnIXVxC2S13DzpA+MbFWTx4wzxWFYzfUuymOyE3M28ei9ZtobPhMg3nepuAmxK8WVksv/4OYqEuopEw+fPmYZqSTr+fp595psetdbAhwjPnO6nvknQk7yNmYtu8q5mZVpIxHJs2beL111+nuLiY8vJyHtixg1u33sEnP/kprr/5Vh577DESiRnarFgxrYzHfXoIy3U60ZhiCTDqCm4p5ZPAU8m3r47hPD0EEwPr9waeZ2g3XbfhEjN6j9NfCQsh+MKfbmB+QVaf5V3JxJzuEsLu/Q6fquPA/soB52rsCNPUEeHPdu4hFO17sXYbe6kGZUsoQSzURcVbL3DuxDGiwQDCZienaBllt96DyzvwfsU0dLI1g6U5Lpb95b/xP5+Z2AzIVCO0sGQtBcvKaKw4QfuVqqS8lsBZBUUsXn8TjbW1ZHiz8GRlY0hoaGri/+76Neeb27jUZZV2hPWZOW1EMftYvHgxL730Ehs2XMt/vPAKG//qq3zm6SPc8tl/4Kmf/ZzPf/7zXLhwId1iKtLMoEpRCPHpoXZIxg79ycfF7q42I8UUhyAv5fWICjI5raN0JDfqRGgNQ13AUl5xA0LJxNGEYSnFyppWwvFerekfQoPme/tmbV5psqzUg6dq2fG9NzjXYu33898OPoIpldfOt3G5K44prWbbkWSqabdSDAYiNNZUc/SVZ2m6cIZIOEwsAV1xD6cas7kwhIUcj4SJRy0LNhI32LlrYqOdUvu+CiFYvOEmsvKLuHxsH4HWRvSUG4jC4lWs2XQ99ZdryC0oxNQ07DYblZev8OyzzxCNWJZ4KK73ccHW+k2q2tW0YsX4yMzMpCsU5u7/+m0Wrb8Ru+Zg0fobuePBb7Hn9T9w6dKldIuoSDND5SVvBn4shPgS0Cml/DGAEGIjljX460kovWgHfBM8Rh/++Na1fOazf8N/+8LfDljnClk//ofP+wetvatraac+mEBgJ6qb2IMaHcl8l2y3lQBSV9XEyfeq0ALNbFtt9QpdLPzU1Q28t1iTHe3ZBuDg6wdYcd9GaisqCITi1NVU43LY+KNV3mTj8KHJtsc4VnmJJo+bzliCc61hFietMsMweHnvK3S2XgEzihGLozmc5Ob6KFyyFqfLC6EmFgvr/kNKSSQSx+NxkXBEiHa1U1cX75G1rq5uhG+5L52dvXlPmzMlxUsNTjSFrZIVOyy4cRMH33qdhv0vsVC7HWmbz2JhWb7zihdjD7Vz5sxZiormE+nqQjN1OpvqeOPZX3L7HbcTNudjavaetnPx5Hfljozs5EiVbSbR3Nw88kaKKaOmqpK71vTN6ytas4mWxnq2bt0KQG1tLUePHuW2224jN3fk8ijF3GGkYp0bkoX6JBuD78Vyne4UQuyUUtZM4NyvAtcDu4UQPiZhaPF3fn+Au69ZwQKfHVvqgFwp2RewfiCrJSzPyyY/o9equdwVp7ExzJGKKBkujZKl+RR5vXQkdOZlusj02iAueOOli+w9F2Tvud5u+0tvzWHRokUDZIlXxdl7Lthn2Uc/UcBvD1sG8Qe2efH4vLxRESLev8iwH7dtcdCiZ9MYsRFJOKmXllIPtjdz6fBbXLlUgU0mcLo0ooaDuPARiJdw7qIEgthsgnBugJLSIior6jmwv4KysgVsvm4x+fkFFBXm9sg62GcZidR9ioF3OhqpiyW4YZGXA3Uhim7+MJVvv8g7775Hs+1esny56KbE4XRRdvM2yMzj1JGDlCxcSKStjUQ0Qlc0zot7/oDz3nvZvG5tz3zHbit5QaGlFLv/zv6YQTBusCirt7TEMGHBwoV9/hdmArYRakQVU8vy0jIazx5h0fobe5Y1nj1Cdm4+kUgEh8OB3++npqaGCxcusHbtWm644QalHK8ShlKK/uRzamJMOfAjKeW3oaeI/+9HeyIhxMeATcAOIUS7lHK3EOJuIcQDWBbjw2OWvh+7vvdNYn9Szh9/+ENkuyVnWqPcvGjgiKK6LkmGJumMShZkCiLJWOMPfvEuAP/89T/lFydaCCdM/vLahSQMOHuplVfeGRj7G4o8z0BrNJ7idv3yP7/KP3/9T0dUiAAtwQQRV28DgHgkRP2ZwzRXnyXqb8cmLcsrHNeIOucRdC4F0av0TVPy7r5zNDZ09MT9KisbiHa08Z2GBr72V1tH/blGgyOZcZOZdKc6M7ysuOUeKt5+iQv7XqL05rvx5OSjm5LjDWHmF1/DFo+Hcwf2YdccZHgyCYcCGHqCF154nua6Wu6584+ImNacR5sQPH/Bj00IPlCSjWYTvHEpQNyUfGSlo2fCR1PIRO8wKckb2FBBcfXylUf+jof/+9e4dcc3KFqzicazR3jjf3+FQHsrt956K4FgkPZBMlJz8/K4VFMz/QIrppVBlaKU8pHky4NJl6kfeAT42HhPJKXcjZWYk7psx3iPNxjln/8qW1aUEIzD2fYQgbhJMG6SoQmklBjSGokkkVzxm+gmFHpET1ZpKuGkojSlJBzT+eQTA7tkbLl+xZCyZLoHfrXhfvHHd46MLn4RDEY5ebmatavn01x1hqYLp4j620nEIpimiYkd3e4l5FxKzJ435GiLQCBCOBLreV/XHODp5gBt4d7tP/jo83z1E5u5dd2CwQ4xKrprNVNLKlzebMpufT8X9r1C5dsvU3LjnSSylgDQEdbZsGoNZQuL+O3zzxGLRsjwZBIJh7A5HBw6dpSqS5eIL17PlrUruWFRDjFDApK6LpNlPjvxZIA1qptkOu2E49b7yCAh32NNYZpCCd5fktNneTAusQEe58yyLBWTy/3l5QB864mdPF9VyfLSMr6785ssW7qUz3zmM7S3tQ07fsowDGpqaiguLlZW/xxkpHmKzwghPoNlJT7VPWg46UotHW7fdLDre98k8ifl3HXPh3qyPAVWQkprSOdSR4x1RR4kENF1NGEnYQ5skQaWyzUctnqKvlE1eIcZuza0BVKYM7A92tf/6ZU+73/5u9ElttRUXeH8+cuEKxIkwgFCfj9Oh8But2Pa3EQcWYScSzFtwxckt7YOHgZ++XBv2cehyhY+8thLND/9yVHJNhiFHo3KNpiXMjFkY5GHY42w8n0f5MK+V6h671WybHdA3pKebYysXO76k49x4M3XaKqtxelyYRg6diFo62in8cqrdF6uQGzbSpvhpjWkc11hVp8pJN0NHC52Dh6njegmlR2xPsu6GwNUd0axCcHNiwdvbdcVA80G/Z0AUkokjMpNa5iS+q7h2/4ppp77y8t7lGMq77zzzoghhOrqap577jmysrLYsGED69evx+PxDLuPYvYwYgNAKeWPsMovUrkLGLrLdZoo//xXyS2cD/RmZkogaph0hC2TIZowCcR1GkNRCjNcvPvaFX535Aqfvmdpn2PV1DTzxmsnKUjE+M27VYOeb7gfwWWFmQOWJQYZ6dSfNWuXsHRpAS+/eBin0YXbaKWhJow3HqGzIYbAsBQ9LpzePFqCGSTsmWgygjRimMKJIZwg0ncH+8EyH8t9LjbMz+DXp60Yan5y+oYzw8vK2+6l+sBrnNr3Grkl11C8vjfpIcPjYev7P0RNxTmOHXgXwzQJGyY2rFhcW10NLz3TgC1/GUWrNhDRi2hPaQDUGoFB7kd6eP6Cf8Cy7pKP+pD1ojHgxGkX5Hn6/n27O+2UJENLuim52GHSFo1yJRAfVb/aiG7y02Oja+M305nOod7TRVZW1ojbfPBDH6KpsXHA8nnzi7hQWTHIHorZxLi64kopn5lsQSaDXd/7Jjfc88es/uOP9NQSvlMbJJgwqW/o4L3D1Swrv4FEcl1UN/jqT/cB8J9uLepzrI52K/HkB88cHPacn79x/qDLXZqNsrIFVFaOYdCwNClb4qTj8hHyI0exmXFsJIjoBpo0EYBEINGwOT10dIZxEcE1SDWLKRzoNi+6zUPCnoUh3ENPDJ5kHHbBtUV975xTR21pLjcrbn0/dScP0FR5kqi/jfw/upNFhT5q2qNkOu0Ur1pD0ZKlVB8/yrGTJwlFo8TjCewOy0xruXSe9toqdresYV7pKgoXLEQIQbBfRyPDlBxrCrO+MKMnWac/Uso+nX4ONQYpzvHiddpwaX0TtiysZcGYJG7AlYBl+SUMiWYTmBK6u/0Fk0ZhZjL/pys68o3RbOGxxx5jwYLxu9lnI1JKmhobh3Wvnjt3jqysLBYuXDiq3sGKmcWcahXfbSk2hHqrvbsL9l945TihUIymjjAdEYOSfDdxW+8PVELv9aG+drCGc2drRzyfTcCibOeg6xx2QWbWCF1iTAOHGcBttOMwutDMMCdfOIhp6DiNOIJu+QQmGrrNS1QrJGbPRaKB24YVBZMITIQ0sMkEdhnHLiNoZhhnohMSYNqcxO0+ovb8Ed2sU0K/sK3NZmfJtTeT4cun9uR+Xn52F++743b8noW0hnQKMh1EhYvI4o0szV5Gw7mjGPWX0KNhAv44pmnHZrNz4sxp7OfPk+3LZXnZKjzr1mKQjSv5GZsjViu9LKed5f2angdiEpdmxSEdKUo7Ylj/Cw0BndwMGzluO4YpiepmMonH2tak76SS9+oiLMy0mqgX+6x7kGar1zuZTqvO9UqX6sszm/nQhz407HopJW+++SbBYBCv10tpaSkrVqxgyZIl2O0q4Ws2MKeUYnNrgNzC+QQTfbMrHvz6b3teN/pjuKMmzQ1t/PtvDvUsT3VtPvP7wTu72GyiT1/SEt/QysUmRM9IKZdLIx6NoBkhnGZXjwK0yxhC9p7X4dAwEjGkaWKzgWHa0YWHxQsXc6ozB114RrT2NM1GPOWzCJnAafhxGn7cejPuRDO6PZOINg8D55DH+8YvDvLPz52aUGwxFc8Qw4oLlq0kM38+l468zYE/7MWRt5BF19zA8ux5VLVaGYAZ2bmU3HAn0YCfpgunSDRfJNTWQSIaRstw4cpw4+9o58i+tzh5aD95hfO46Zp1LPB5sM23SmGPNIU50tS307g/apKZTKox+xlwbeEE/1ZpDX7eefcSuvsOpDadjyRMQikB6cZwjGyXgyynA0m36uwllDCJ6arxwExnuPFTZ86cGXZfIQR//dd/TVVVFVVVVZw9e5YTJ06wefNmbr/9dkzTJBQKjcpNO1HKVq4c1M07v6iIygrl5h2KOaUU//173+JP/+zP2Pi+oSdM/eaZdwcsE9KgaYgklFT+/C/u4Of//+s979fNG2gJJhI6ja1tVF2qZaFexRrvRRKxEIFQp2X5SYkUNkzsmGgIDGwkrHWmxO50kuvzkbF4JQdPB4nbsrl2YTZ6V3DAuQaj/P7b+PdfvtnzXgoHMa2AmD0PIRO4jU5ceitZsWoM4bQsT1EwQDn+83OnAKucwzaE23EsbFnk5Q+XumiPDFQK7swcVt52L7KpgpNHDnP2td+y37wFM7+Y1KZL7qwcll13KxniBi5XXaD1UgWh1gbC7R3YhFX36DYyaG6o5+XGOpwCRKaP+YuXMG/BQvLnFeHNyupxaZ1vj2ACC70Z6P204gtJhQhWM3ktmWUoAcM0ebZiYGwSrDhjXSDCPI8Lj7NX9n21AQ43hHENMUVFMXMYTmF0dHSwbNmyYfd3Op2sWbOGNWvWoOs6ly9fJifHynRuaGjgV7/6FXl5eSxbtoxly5axYMECMjIm3nu4PyO5eUEpzsGYU0qxc942rrn1zp73LcEEVzpjw+xhIaTO6fP1w25z7cZ+6demSSzcyUtvvkvVpVqu1DXS0NJKe2cXsXgCwzSwCUGm04nfZkcXLoQ0saFjkzoaCQQSu91OwrARt2Xzl/ffy+rVazG8ubxTG+CdcyP3M/DleunsCPW8dzgH/5N21zJGHPOJaIW4jA58NKHFr+AyOwk5FmHYBmbQhaIJvv6Lg/x8bwWP/eUNBCIJ7n9fKacvt1O20MdIl/Lty7KwCwnS5N4yH784MfhEAmGzkbVsLWtzl1J/5jAHDx7Arx8ke9kaCkvWoDl6XZ+a001hibU8Guiks+EyDn8t9ZcvEejyk4jHyXC70GwCLabT3tbCuZPHCRs2CnyZzC9aQP68+fjy8snJy6Mow4VM2nUx3aQ5kOjj7X2huosPFPc2X2oMWgpUSolh9o2XNoaihHWDEy2Q63bijyWY53Gzp6qLUNxkUc7g7nbF7GCsBfyaplFS0jMciOzsbLZu3cpHProdf2fHgO3nzZ/PwQMH8Pl80xKPHI3ivNqYU0oxHtP57Wvnef3t8zyy4w6adW3UkxW8HgfICGBikwYiqbyEGWfLxiIInuPkC+9RELqCTcZxO2D3rkM9PjKHpuH1ZODLzsJmE8QTOqFwhEAoTCwSw2VaSkkikEIjLrKIa7k89d//ij9/8g9IofHQJz5IbZfJ2Zbw0IL247Z1i3j+7d47us9smcfCyBaiCYP/9ezAkg+bEJjYiGn5vPL9T3LTjqdwG23kRCuIaXk8+J8+yJPPnOrZ/vov7KY9YN1YPPpvBwB4MqVH6suPvo/rvvhT/ubD1/CD509x4gcfpyivV7l+cKWP5rYO2ju70GzDpIUCwbiJw+1h2ab3Ee5sJXz+OA3njtJ84TT5S0spWL4ad1YOMuWv6s7yUZTlY9Pim4lFwlRVX+ZsZTUddReJdrVitLdhGgbYbBjYMMIB/K1NIGy4XG40h4P3sjJxZftw5/jwm25MpxeXNxuXNxOb3bpEXr3oZ5E3g0yXRmtYEtdNLrbHCMQMNiz09MylDOu9fWlPt3YhgXy3Cz3pdk2t3VTMToZyr2qag127drF9+3ZWrV49rAXm7+wYUhn99Kc/5X9+9x8JdA30RqRacMrKmxrmukSoXQAAIABJREFUlFJMnPsP9hvNCM9yfvTLN7nrng0Yuo7D8COk0ZOMIjCwSRMhdYRMYDdjVJyspCASAWkipGlti/W6/lglCCteYJcJQJCdnU2W246e0IkmEoQjUbqCIauY3rSyGe12G15PBoVFRVQ2JIjZ84jb8/BkZxMMWYrmxmvKeOEfcmkPRHFpgtI8O6dbhv+cqdy7pbiPUlxVkMGqj6wnrg+hFG3wyj/cR16WG7tIENPyiGqFZBjN3FYMB955BZfu6mkC0K0Qh+J4tVVe8IPnLUVa3djVRymmoqW4YTOdNqs/6hB4fAWU3LiNsL+N5gunaa05T3P1WbIKFjB/eSmeeUv7WI/H60OsKMjAs6CY4pwlFG+5nYJoAza7jaa6Wi5evEhzYyOJaIh4WLfc2FJis9vpcrswEEhAlwJsDuxOJza7hsuTSYUnE4fbg8Pt4e7Vi9DcGbzXHMfuysDh9hDXzR6l2E1zME4oYeBx2qkL9taMKJ04++mvcKSUvPTSSzz22GP85//8n9m5c+eELLC77rqLr3/960Pu/8ILL5CXl6esvClizijFeauuQ5u/BndGHHfkNLa44MgLlTgcdrKibdgwQZrYMLAiQ1Zxg5XoIgl2CbRklxQL0fPaNBKWe01KbNJK4gl0thOx27Db7TiTVmK+L4dFRYWsLi1m/apSVpYsIzvTy65zHfxu/2Ve33uC/9femYfHUV2J/nereu+W1C3Jkizbsi3LMTYYYxkbByYmMTaBwMyQxMaTCUkeYTCELB+Z5MEjmQyTmRAwMyGzJC9jMnlDvo+EgBlCWJPYZCMswWBsFhuDJWxj2fKmXb133fdHVbWqW91abO2+v+/rT+qq6lunb9etU+fcc88xkmlcHhf0JiivKMGlwbL503K+y4KKIB15qVguvGghzz+3p9/3PquunAduXcsnNuVW0/K4dCpLffzNZQv57KULOeuz/w1AOiM5d24lAMdOmu4bKXSi7lo2fHQlu3Zu57XmV/DqbfS6Z5EZxLoboB5yP4KOYBtbOfzdqlq+9YfirutAWQVzlq0idc4KTh54m5MH32Hfy39E0zRKq2ZQVlNHSVUtHn+QvcdiOZ/1+QMckmUsWD6bmUvez6GOBOlEnFhXOxVGG8ePHKH9xDES3V10dneTTCZNi05KpDQAgdA0hNAQVtTp0Z0uDE0jaWhougtN19nr9xIKBfH6/fj8AZLCQwwPLo+XBdPLeNfjoa3bICPceBN+EtGhzQ8rJgdCCC6//HI+/OEP8/Of/5zvfOc7p9XeueeeO+D+lpYW3nrrrQGPefPNN09LhjOZKaMUfSURhOxBxmJ4DAMtI+k5dhKQeHFGAsrs/JGt+CTCij4UCFNVZve73C7cPi+ay42uuzjeniAt/Kz58HIuXzKb6opyqivLKY+U4SoScj0/4uVzl8yjpiaCYRg88Zi59vEjaxZTKIbFrWv82ewILl0jba2pXPf++oJK0e/RuWTpTB64dS1vHsxdr7j73k9k/6+vKaG5tZtz51bkHLPz++vZcPfv2XOwg6rKcr56/V+z+bfHCKQOU5bYS8xVTcxVVTQZwFByt9qEPBpSGiSjPdRMC/PIYzu4IJjmusbp/GjHwOax2+uj5n3nUj1/MdGOk7S3NNNx+AAdrWY2Hn9phNKqWoLl1QQj03D7+mY7u+IZWrtTCCFw+/y4fX7CodmE5i5hjVVcOZk22Ln/BJ0njhHtOE60s51ETwfJWJRUPEY6ESeTShBLJK3lO6alKSX0SoluzSsa0n6UMt/v0zU0TSMtsZSrpszFKYqmaXz84x/nYx/7WDawZjS4/vrrSaVS/MM//EPRY371q18RKiktaDWGIxF++9vfEgz2zws9Xjz00Ba+ecedHNrfzMw59dz+9du4+ur+GYfGgimjFHWPDzCwl/YZaKZyEwIpBaahZym97Fozc52frmsE/S6ORzU8/gDRhMQQbgzh4eIPLcbjDxKqqMbtD/Dj/zajTy/64CWsWVReTJwczqsOkDYkv9jTjqb1Kc4LZ0UKKsWQx6zn+MS/rGPD3z8GwPSgF7dLo6LUR2tb35xjXdhs75KlM7lk6cyiMvzP313Ga/tPsnB2Zc5idU3TkOmENU+q4/O4SLgqSOplBFMt+FOteDPt9Lhnkdb7Z+nJX2LgjA3o6u61LCz7e+lUeGHFrDDzp4W483AbN/777zj0k88M0Hu5CCEIRioJRiqZcfZy4t0ddB1roetYC8eb93B0n/mE7A2W0F5eQrK0lq7SCP7SCC6vP/u9j/eYc7wtnQnaomkSaYnmDRCZMYfIjDkFzy2lpDZg8M6hE8R7u0hGezh66Cj73j7Iwrow4aDgaFs3mVSSdCqBzGQwjAyGYSAyGaRhvoxMkSrWiinBYAEygy3rGApud/+CA04++9nPsm7dOrq6uggEAtTX1yOl5KGHHqKnp4c33niDVCpVVHGWlJTy/e9/H5/Px9KlS2lsbCSRSPDUU0/hdrtxuVzZV319PXV1dcTjcV5//XU0TUMIkf07c+ZMKirMCiT79+/Pru2V1hTG9u0vc9vtd5BasB7Pgnpa25v5wt/+H97d/y6rP/QhGhoaiEQinDhxgtdffx3DMMhkMtnXypUrqays5MCBA7zwwgukUilSqRTpdJqTBRK7D8aUUYqxzhMIbynCWwbeUkDDEDpSuJBCxyD3f0O4kcKFIdyUR/zMqvby9tsJKitK6D7ZnW03MmMuYN5kASrCAWbNrS6aHaUYjgDFrOJwayJHKcYTZvqTqqA5V9aZ0LjxEyvpeLeZGZUhnr77E0wv0fjTnkN89h5TOXtcpgWXti4Qr6dwdKOuayydZ7ppe2MxQo5cjfbaS7fV1r/d+GfUTQvx0X/6JW49QjB1iNLEPhKucqLuWqTou2ySqdx5QdsIau/sJpXOvfnrmuBLF9TQ3RvNWlaQO9cIkE4l0XWXaVUBScvdWFleRle8TwkLIfBbCq+64RyMTJpoZxu9bcfobTtO+/EWOt7rc826PF78JRE8wRDeYCmeQIjeQAneYAm6x8vxY520tnZw7pI5BfsQKelIuQhVVBOqMDMZtaUO0HPABTVzeP+qBt5p7UJ3ucik02i6jsvrw0iniXacJJNO4fJ46TnRyt5tWwqfYxIxFdO8jQUrV67E4/UVVEbVNTUFPjF8wuEw4XBuuVohBBs2bMi+T6VSXHfddei6TigUIpPJsHv3bhKJRM7Lzutqr7FMp9M5r5KSEurq6ojFYjz77LP9ZLnkkkuoqKigq6uLp59+ut/+//yv/ya1YD16xXwA9Ir5ZBZu4Hs/uBe3y0UkEiESidDT08Obb76JruvZl6ZpJJPJ7PdzuVz4/f6swi4vH5rh4mTKKMWTzbtxr/gc+CsxcKORzirB7J1aCJAZQMsxaQzh6rOc8nTdrFIv73UlzCf+TIZ7vvIRfre/A4+ee6CUkvaubkqCAdyu/t3qfHr84OrF7N97iA8uKs9Rrl095tIKn9dUbLPLvKw+uxo5w43HpeNx6QR9cMXy2WgyiUHf02Jbh7nOsqqiTykmUyk8gzxRAmSs/tEtJXTVyllkDINjP7uWLc828fnv/Q5/uhV/+jieTBe97lqSegSE4K33csPKk5blmEqnOXisi0TKYP6M/rWke6JxNCOJoXmyOWRbWk5y9bLpPLOvi4ym4Q2YlqlhrSGs8qYIerwc6UohpeRQ02GmzZyGz2d+Z013ESqvIlRehZQGs7Ru9id8xLraiXW1EetsI97dScfhA2RSyZxrQNN13j3QjoGbUOIsPP4ALq/patXdXrp6U8h0ivJpEYLhSjTLVa7p9kOJwYG2vkxK2XY1HeHWSEsXjz/5KpdduTL7gDXZORPTvA2VYhGq06qquelzN/LDH/6Qw4cPM2PGDK655ho+9alPUVdXN+jnnUpzKMcMhNvtznHz6rrO4sWLix7v9/u55ppriu4Ph8N88YtftIINDaSUGIaB12smOamoqODaa81kIEKI7Oub3/xHPOfU57SlRerpajvBF7/4RVzW/XTOnDl84QtfKHr+urq6nD4Ec13ocJkySjEV60EXHjTLZYo0F+VLNDSZ5PzlDbz08gE0mUYKDelQKNXVYcC0RrJRhFLygcU1XNZQwQ93HCYV6yXs1VlTHyJjpFlVF6Sru5eSUAAhBMlUinQ6Q280Rri08E3v5pXVeHSNu587wh3Xvp8yn3ljTaXTaAXm7Hw6nFfl57VOkXV5plNJYmmDm//yHLbt6h+ObZNMpejo6iHo9xEMDLya0LYUbQXd3WsGrIQCAWZVBkFoxCxFGEweIpQ8SFpvo8c9s185LNtyzGQMrrzdfCp87QcbyMfMDGOuX8xkDNLpDFuffpnmXSGE38c558zOKkUbmTHwWME63d0xtv1+D3UzWrnksmW5badTpOIxZDCDy+OlpLKGksoa4j19CRqMTBohNJLRbhK9XaTiUd557zU0mSLe3UH38cM5ivO9gycQGNTWlqPpGrrbi+720N2TojTeSVvTUZpT+0EIMypWaOgeDx5/ECE0Wg4dx53pYs+OXTTM7u+GVkwtBlsS8aUvfYknn3ySH//4x9x9993cfffdrF69ms985jN85CMfGdKSiom27EIIMaBb12VZffnMnGO6TG1LEcBoN+cWB3MTjwZTRikWRiIwLRfNYdkJaSAFWQsyFPJDj6kUbUtnWeNsvvuZc/HocNPyGk7GkgTdGrFolBWV0Gsd70t78LjdBecR0pkMKSvlnK5rhLQ0JYEAm9bOyjmuvbO732cBTrR34vN4iMaipDs6mF1VRjzaCwI+++FFbLxiMZ3dPZSV9L/J2ooukxk8AXUk5OXAsZ6sK9bJyoU1PHPXXzCzMsSlt/2cA0e9eI02AqkjhBN76Tjeg5BhJDogiadTGIbBPY8UTpVnY6fV02SKkx2dJBJJhEzT3NIBQDyeZM3llaTiUdyaIGVFhfZGc5eItLR2UFfm42Bnn5VmZOy1ghIEZFJJXvrT21REfNTNrjLPa0WOltWYv8Xbe1vo8ZjrwhauvoREbzdGJk0mlUR3udj90LNoRozaRWeZcyLSIJ1MEEufRIpuZCZNvKcTI51GSoNMKok0DISuY2TSxKMJQqle0q1HaelWC/jPdNxuN1dddRVXXXUVBw8e5P777+f+++/n05/+NBUVFXz0ox9lw4YNrFixYsonFb/967fxpa9+jdSC9WiReoz2Ztx7t3D7v3x7XOSZUkoxufdJXNPPQ6teAkAw6KUn2mfJlIS89HabARaNDZVMK/Ww9eX9WS+aZiQocXk5JiWlZX58brN7In6NiN9cmhBP9q+Fl85kSFvKVErT3ReNx3MK+mZlCOau4euNxvod40wyHU8msReKeEWCmGN8pNMZ0mRIZzI5nz3e1jFgWatMxuBke9/C4Hs2XsRvdrVQV1XYwj27LkLGMCjxCYTIkHBVktTLCKRa6eloJRw/QtxVSUIL09HRxYn2Tn7/xsAZgpw5RPccbONE67HcPjBMZZZJp9mwuJyn93Xy3Mvv8vTzB1m/4c84u9LL/2B2jPO71pZ4OBDv69P3Vfh57UAXb+8xCzrbShH6lKeUBi88t9sKG5XZ/jcVp4uHHnoBqXnJCA/lsxrQdB2PP0gqEScVPMEbR96iYno1DSvM9F/2nKKUkkcffYlF75vGnp3NCI+kpDrMjDml7Jj8U4qKEaKuro6vfe1r3HrrrTzzzDP89Kc/5f777+e//uu/mDNnDuvWrWPDhg0sWLBgvEUdFewo02/ecSeHXrKiT//l2+MWfTqlEjF6FlyBq2pR9v2FFy1ESPPGN6vUyxN/v5b/+/lVAGTSyexN0InXZVaduKRh6Omc2jq66LGUWyaTob2zu6BCzKe7N0pvrP88VE80RtSx3TbgYgWOhVzFmrHm3wbKnGKmoeuzICvL/Fy9qoFkKpVzXEdXNz3RKCfaO4nFEmhCIKTB569ciJAGUfd0quvOJq0FCKSOUJbcxzc2P8n6bz1FwrEw/6332mk50cOGO3/Nx7/1S4DsUhOADXdu5Xe/eSPn3H63YIbPYNn0ALPLvIh4nFd3m4o22hvvS8wuM/g0W7lJ1i+syEZ3XjqvDE8mRmaAJNxhn06itwdhJNFkEk2mcpK+m6dI5yyjMDIZ4j1dZFJJUgkzEjiTLPB7S0jGk+x8rQVD85LRfBxtS7P1t+8UlUdx5qLrOpdeein33Xcf+/bt4wc/+AH19fXcc889LF++nIsuuohNmzaxe/funAfnqcDVV6/nzV076Ozs4M1dO8ZNIcIUU4pfXb+U8vIgAoNg0IvL3bf8oXF6gIqQB5dVH69I0QaqyvxoMsXZVQMvWrfJvzgNKXMUTj7JVIp4IolhGMTihRVnLJ7IUZYlHqgO0r/sgkUi2afM7IAbm3gyOeQB1JGXdDyZSmeVezyZzJ7esKJKhczg8fjp9s6j2z0HQ7gJpFs52rSddM9hhJXo4Opv/5rLv/Ekv935HjvePsIbB06Szgwsk67BukVhLmsoI2MY/OCnL3KszQxE0jSNeWHTBSmMFBdWa8R7ukj0dtPR2Z39vkYqhUdk2Prr/pl9bAKZGE07m3KWDibjhR8+8omfbOf4MbO/W947yq6dzTz4wLOsqi3h7b0tPPdc/9D7REItx1AMTmlpKZ/85Cd59NFH2bt3L3fddRfBYJBvf/vbrFy5ksbGRm6//Xa2b9+eDURTjAxTyn16+bI6LvvAMjZvb8Hl0ok66ipeuMiMkrODPXUNzqkrZesrsO68Gl5rSvPRadO4+cqz+fWOQ8yvHdri287u3sEPcmArnsrI0Bf3CgHeCfBL2V5KnztXOwuZIq2H6NaDuIxefOkTeOKthNNHSOqlxPVyMsKPhqkQ/vqubfzTp5cPeK5k0mD5l/6Hv7p4HlevaujbISU3X1hDb9xsy5Dw+r5jLK0J0J3Mtfs1Ye7v7OzvorY5fLidl/fkunpfe/UdQkEf7e09NDcfzdmXSWd4661DzJ1TzeO/tqxbq3bjW3taALhx0+P0KyCpUJwi1dXV3HTTTdx00020trby5JNP8vjjj/Mf//EffPe736W2tpbLL7+ctWvXsmrVKkIhFch1OkyAW+3IUhPScLlMC9FpKVaUmpafsAvESsn/WrOAxoZKltRXsnymh8pp5jq+DRc3MJU43tYxIu28/6waXnu3jYvPreU/n3qTK1bMpqOtLacmZFoL0uMJEjPiePW2bC3HjPCQ0spI6qVkhJcDRwdOdRaLm3O3P/t9Ez/7fVN2uyaT9PbGSBoi69K888FX+LtPruCcWdXomqm4NF1DCPpZpJfNL+OX73SSTqUxpOTBR18mn71vtRSVa/ebB9m9+xBvvH6wb6PMf1JXClExOtTU1HDddddx3XXX0d7ezq9+9Ssef/xxHnzwQX70ox/h8Xi48MILWbt2LWvXrmXBggVTPlBnpJlS7lMgx8XotpTjJefNyG7L1gaUIDTBkvrK3O1jRLGI0/GmJ1q8Qsfnrjybp/7xChpqw2z/9/V8ZHld0WMzmo+ou5YO7wJ63bUYwo0vc5zSZBNlyX389IlncGe6snO++Rw9WdwC747GONnRiSZNxdlyMsrn/v13HGg5SiIW5eEtz/Py9n0IIYjGc+dJf/bkTi6q9fP4Yy/x8/95caCuKMju3Yf6bbPLcikUY0kkEuGv/uqv+MlPfsL+/ft54oknuPHGGzl69Chf//rXWbFiBeeccw433XQTDzzwAC0txR/2FH1MOUvRidA0nvrHK6iK9K3Ty86LjfNE9UDzjuPJQAFCmqYxc1qfa8bO9aprcMu6pdz5UIG5O6GR1CMk9QhCpvFkunAbPXgynXgz5sL/jPCS1vxkhJ+05sMQXjPpQhHSGYN0un//ff4/fpf9v7mplZ/+1k3FzNzUd7965RAtJ6Mkk0PP2apQTHQ8Hg+rVq1i1apVfOtb3+K9995j27ZtbNu2jSeeeIL7778fgPr6elatWsUHPvABVq1aRXV19ThLPvGYUkpx0513cMWVfwGevghU500cyObizI8wVAwft5XoIOhz84kPva+wUnQghYuEq5wE5SAlLhnFZfTiMmJ4Mt0I+ty8Ep2M5sUQHgxcGFZKPkO4uP2+Z9l4xWLTbVkkUTnAvsNd7DtxsN/2rujgkcH9hbevF2kVmZIIDJDWX3u7NKyU8hIwENL669gvjShDC+VRKE6NWbNmce2113LttddiGAavv/46zz77LH/4wx945JFHuO+++wBoaGjgggsuyL4WLFiQW0z9DGRKKcVbb/s61dXVVB2N8tjewvNos621eB//wLyxFG1KYivFU3I9C0FaBElrVqZ+KdEwa1tqMoEuk+gygcvotcp19T3EdB+GR594l0iiCxBINKTQs9Up7ETwxw752H8yif1YZEtZq4VpTzrS08m+UmI5f/O2jwRma8pKVYwdmqaxZMkSlixZwhe+8AXS6TS7du3i2Wef5YUXXuDpp5/mJz/5CQBlZWWcf/75rFixghUrVrB06dJTyh86mZlSStFmcXUAlyaI+Pq74MpLfAXTjimGT22FmYjA6yru6hwyQmDgwdA9QF4SASmtwtBpNJlCkGF2/SzeON5sFYTOZK22XCUmLCsOnJPNbx5sz76X1rmxykrbeXH7FKxm/hV2ZRW7tJi9TbMrc4KwKrNY24QQfdVa7Ol7ITDi/SuqKxRjhcvlYtmyZSxbtoybb74ZKSVNTU386U9/4qWXXuKll17irrvuyi5tmjNnDkuWLOG8887LvioqKgY5y+RlSipFgIXTBs73qTh9SoNerrxgNjfNKJwUes3SGWx7dQQm94VA4iIjXGQwo4iDkenEXd2Ul3hp6y7sDq2aWcYb3UNXQEvmlrPr3bbBDwSmVZVm1ygWY/V5M/jNThXcoJjYCCFoaGigoaGBT37ykwB0dnbyyiuvsGvXLnbu3Mmrr77KL37xi+xnZs2axZIlS1i8eDGLFi1i0aJFzJ07N5u8ezIz+b/BOKBr2oQNlBlrGhumUV5hVsF48bsfY+WXH8nuO7+hamSUYgGefcPMfr/yrGqe2t5/3nAoXLN6Pvf/pi+7zPL3VRdVigGvTjTR5/ZcfckSrlkQ4vdvHKa7N8Xmp/sv1P/yVecqpaiYlJSVlbF69WpWr16d3dbe3s5rr73Grl27ePXVV9m5cydPPvlk1qL0er0sWLCAhQsXsmjRouzfWbNmTaplIUopngIloUC/7C8KCPjclAXcdEbNJQqjOQ7ebTWXtFSHT90jsKS+kjcPtNFyIsqxzhghf/HhcMMVZ/PdR17Lvr++sZKqkIdPV5cCFFSKs6tLefT2y3h+dysvv3M8qyAnz+1hYFQ9xTOLSCTCxRdfzMUXX5zdFo1G2bt3L7t372bPnj3s3r2bP/7xjzz44IPZY4LBIPX19TQ0NDBv3jzmzZuXtUwnoht20ihFIcQ64Abr7VYp5d3D+bzLpWeTditGj5/ddimXf+NJoK9OI8A/X7eS//2jF1k8p5zX9w/NRWlTV2UG4xw81stfrJzDYy/uz+4rC55qxQlBOOjhx19dw5c3/5FndrZQEujf1n1fWU1NJEBteYANH2jIWsJVoaGdt76mjPqaMq5ZvYBzP2feKB79+8v48O/uOEW5Jw6qnqIiEAiwdOlSli5dmrO9o6Mjqyzfeustmpqa2LVrF4899hgZRwGDcDhMQ0MD9fX1zJ49m9mzZ2frIs6cORNPkaLpo8mkUYoAUsq1p/rZkmBgXBfMnyku1xmVZqznWbPC2UoY82eUZWM3Z1QEiyrF6RE/R9pjuHRwPr+cXVfOXde+nzffa8Oj6zlKMeTvP2hqywMcbstNQvBvN17Ez59/l9+9ZqZ0M4SbxfOmA5JEyjxZqd/NzVct5l8ffZ0LFlRx4aIaGhumZdvweQoHFPm9Hh78+hW4RJp7HtnFc7uL17kECAW8A+5XKCY74XA4u8zDSSqVYv/+/ezbt4+mpiaamprYt28fL7zwAg8//HBOHldN06itrc0qSfs1ffr07Ku8vHzEXbNjphSFEI3AbcBmKeU2a9tGa/da4E4p5Y5B2tgENAKb7DaGgt/rwe1y4fd5iybhHojycGlOom1dG360pa4XV4ouXcupGjGRmVYeHjRt3J/+9WPousZPfmMWQb1wYU1WQWpCsPP76znv8/1rJ5WFvBxpj7Hpby7mK5t/n92eMSRCE5wzu4L3juU+2NjLQmz+9YaLuHhxLU9tP8AzL+3Nbg/53HzvplV8/Fu/ZO+hDr597QXMqQlz7GR7toZmKOBheWUIeJ3V583kEx+cn9O2pmlWgWqNcGko60LXNI2VC6vp7O7lO9dfmDOvqlAo+nC73cyfP5/58+f325dKpTh8+DAHDx7k4MGDHDhwIPv/888/z0MPPdQv+bnX681RktOnT6e2tpaamppT9mKMiVIUQqwB1gP1jm2NQFhKebcQYhuwGVM52q5SJx1SyoeBh4UQYWALMGSlWBIKnpb8duYWm1NZl+d2uUimCldIKA+Xcexke8F9I81YWKx+rxuXS2fRnGoQgrNmhfuSJQiKLg7+5+vez8N/bObPV87h3NmlvPLOMf7Pf/8pp/aiPy8zejzZ16cBr87q88wMNn++ci7Hjx/nN3vM6NPuWIrycGk2k9HMir6kDolkBik0IqVBFs0s5YlvXs6syv61Jf0+L1KYlcCdT6fBgD9bdstl1flaNHvopccUCoWpMG0XaiFSqRRHjhzhyJEjHD58OOf/1tZWdu3axS9/+UuiA6SqHApjohQtq26bEMJpHmwAtlr7m4UQ5zuOfzi/DSFEWEppmygDWpQV4TJ0XSMWT+B2F/6KXo87p+RSMcrDpYMe48Sla5SVlNDe2ZWTSs7n9SKEyNZdzEdY+a39Xg+6rpNKp4ck33ApFiQkBAwl891QXRUCwZ+/fx6/KPMwtyrIL158F6Bo8eMXv/sxAj5Kf5NdAAATSUlEQVQ3X/n4eXhcOtWRAAGvqYCcSb39eS7MmEMpTi/Pffj58wvm0NwmeezF/bhdGpqmZZVzyO/OHpdMG0jhJhwy113WVZm/eWWkDE3T6IlGicYS6JrGv934Z5w1K5ztB783133rcenc97cfYsHM8JD6SaFQDA232511oRZDSklXVxdHjhyhtbWVt99+m69+9avDOs94zinWA8OJuLhaCNEGlEspbx3KB/y+4nM3ZSUhunujBd2pQkBpKIhLd6Hrw0t5VFZSgq5rVJaH+1l/Pq8nRymWh0uzSiJcUkJndw/BgB9N0+jsPv3o1opwGYY0cuZShRAF3bUCgRzB6g6hgBkVetasCIlkCl03LzXbyv7BF1bRHUtyy4/MpNwBX5+Ssquc6Lp5bMYha8DnQQo9m0j8oxfW88Keo8yrLeUza87KkUHXNb55zXI+snI+lyypAaC+poSmI105yr0mEuDNlhhlQS84ss3YFm3A50MaEr/Pm+NSDZeGcBdYl9U4v2rI/aRQKEYOIQRlZWWUlZVx1llnsWDBgkmlFAGc+YMGVJBSynsHa+yilSv4m+s38rdfvrmgRZMxjGxF+1Q8imFI4okEfp+XdDJB28kTgGnNJGO5Jnh3b9/7VDya895JItqTvZkmU6mstZeM9ZqWYm8sq3xS8f5tHImZ1SFi8QRpK0qrt8dUkLqm4Xa50HSNWCwxoBIL+Hy0Wu07ZY1He9A1jXgiSSqdJuD3YWQMEslU0fY0TWQtrPzvnkom6Opoz8rq7CPn9whpcVYvLON9VW56uzpZWOMG3Pz4iyto7Yhm+74kGOBoq3kOHzFWLyxjbo0ru9+tu1i9MMzMCg+XNs5CJnvY9KnF5klljLaTfQ8ddr8tnx2gq6ODro4OvnJlAx94Xyl1pWlaWlro7o1y61/O59MfnIMn001bV7Tfd7Dp6iw+l5rJZIgOMl+9eqFZQ7OrY2xc5QqFYviMp1JsA0bUx/Tciy9RXV2ddXsVwrbeqipy53yEEMyYMYNYPIHH7e5nIWYyBic7OrOfzbcCPW5zztB57lg8kVUg9vZEMpktTJwvg5Punl5iiWT2fUVlJdPK+44/0dYxYKUPZ9uxeIKeaBQpIVJWkrVuDMPIytrW0Zm1Hp2BRUKA1+0hnkwW/O6peJRpVVX9XLLTyk0XY2d3D4lkiq59UX6zp5OKadXMnTsn20Z5RWXOPKct97GT7ew7keY3ezpZnvFQXlGZ7ccH/mHugHOwHreLYMBPU/O7VFZOo7K87zKbVlVF/Zw6SkuC2fMAnLc4kvM+vw8Hw/m7FuPGj15AKmMQDhSeW1YoFOPPeKZD3wosB3O+kGEEzhTju/9yN396/rnTyvLu93kLukwHc6OGS0uoCBdXxjZej4eg30dJMDDgcaFggFDAT0XYtC6GU+nKlZeL1PxO/SNmnbK6LPem6TYeOLo2UtY/CCWffEtd01xIoeN2D33dUThopnSbPc08n9fjzspcaGrSZf1Gfp8Xt8uFz+MmnCerx+3OKsSBKDb3ORget4uSoL+fQg34vSyeO43FcybeYmWFQtHHWC7JWIe5nOIGIUSblPJhIcRaa1lGGBjSPOFA3HHHHeO6mHio84/BwOBZWIQQpmvzFCJFy8uGFxwEEAr60XSBzwoc8Xs9WUvV5dKhz2jF7XJRGSkjYxgci0dxu1xZS7kYV14wmye2H+TLHzuv3z6v100yle4XtPK+mWHuv+0KzqsPY6Rz23bpLlLWtpJgACnNOb9EMoXXWvDrdrsHVfD52EstvB734AcXQAiB3+frt93r9hDwaZxoV8nAFYqJzJgpRXtJRd62G4ocfkpM5LRTo1mjbFjZeopYnJqmEQr0Wa9+vy+rFP0+b7+oWU3THFabIFxqWmTF3JplQQ+PfKPvd6kIl5HOpBFC4HEXV0Brls4imUrR0dWTY705l8X4vJ6sZerznl4GDI/bTaS0pJ+1PRiFLPmSoJ9UKkM8mcz5/VUlT4Vi4jLegTYjysRLO2Xe/vItoOFQbAlEKBigNxqjIlKW3TYaax2lNGWw3bgjha5r6PrQ+sXjdlMSDOQovJJggETStLpGOqNFsWU8Q0E4Mpv6fT78PiiRAYQQ2cTJCoVi4jKlSix/4xvf4Omnnx619ktDwWGtW/R6PLhcOn5/f3fa6eLzenIU4mhjKrHBL5eSoB99hKxiZzt+nzdH+U2m6uC23KZr1Utp8PSSSSgUitFDWYrDoJBrblq5I1tLHpqmndL83mgghlmb4VStGtM6Ov2HgMpI2aQqNzNUSoIBerrUvKJCMVGZPI/bExQhxLAX+A+3/ZHAVujDlXWkrL7homnapFKKHrcLl0snEBh5r4BCoRg7ppSlOJRAm7KSYDZqcbLg0nXCpaHBDxwAv887YIaffGxlGPCfXkUHr8dDIpnKLvmYaNhZf06XieQVGCvu/H0LwfKRT0WoUIwUvW3Hhv2ZiXmnOkWG4j71ejzZkP3Jgt/nHTBC08brcWcTU58umqYNa/F6MXxez2lHhBajNBQkeZr5YXVdQ1cOk1Ni1ZxSyqtUjlfFxKXtWJz7hvmZKaUUz3TKSk7PmpxsjKbCVSgUZyZT6hF5tKNPFQqFQjG1mVKW4sRbp6hQKBSKycSUshQVCsXpI4SoF0JsFkLcMt6yKBRjjVKKCoWiEFsGP0ShmHpMKaWo5hQVioERQjQKIbYIIdY4tm20XluEEI1SymaGVwBcoZgyqDlFheIMwVKE64F6x7ZGICylvFsIsQ3YDKwdJxEVinFnSlmKCoWiOFLKbVZlmmbH5g3ADmt/M3D+eMimUEwUlFK0+N73vjes4/1eDyXBwesijgTDlW0sUbJNeuop7CpdAyy3CoAPygM/+M6ICjVaTAY5J4OMMHnkHC5iKpSzEULMBN77wx/+QHV19Sm1sWDBAvbu3Tuygo0QSrZTY6LKdvToUVatWgUwS0p5aKzPL4TYAmyWUm5z/m/ta5JSzhvk8zOB977zwNNEKqYB8NlLz+f//frl0Rb9tJkMck4GGWFyyNl+8jhf+cTlMIyxNlWU4lIsF5BCMYlolFK+OtYnzVOKm4GtVhHwoSpFNd4Uk40hj7WpEmjzBtAIHAdOP7uzQjG6aMA0zOt2vNkKLAcetlyl24bwGTXeFJOFYY+1KWEpKhSKoSGEWAdswrT07pRS7rCsxVeAMHCvlLJjPGVUKMaTKacUrRDz23DMkzj2hTFvCOcDL1uReFiZOzqAeZg3ig4hxEbrY2utbTusYwtuHyvZrMMLHWd/3qZJSnn3OMnWT4YJ0G8brTacrAdeLibz6crmkGM5povyXmtbv74YjevtTKfQb6P6UzEoUsop88KMmLOfetcU2H8Lptun3jpmk/XaaO1vxMzk0QjcYm2rx7yhUWz7GMvW7ziHPJus86zD9KGPtWwFZZgo/Zb3uc1j0G/rrFcY001py5rTF6NxvY3hmNtovbYMp+/GQK5+v81E7E/r2rDl3DyR+9W6frfYY2sCyxnGfLg9JRnH/QuMUqdsKXKTqnf8v846bquzo4B2+ybp3Gb9Lbh9jGXrd5z9eWDdOPdbQRkmYL+tcdwoR7Pfwo7/b7Hk69cXo3m9jeaLCahkBvptJmJ/UvihbsL1K0N8wBtvOS1ZNgLS+n/YMp5R6xSluTjZZjnwIKaLbQ1kM35A8bVbxbaPmWxFjrO5QQixVQjR5EzjNVayDSDDROu39TLX1Tla/dYhhAg7XKjbKNwXY369jRCTbeH/ROzPh6WUO6z+uxNTxonYr9uklA9Lc755K2YCiAknpxCiHlM2e1582DJOlejTYWEvSJZSPiyE2AFsEUIsxxww9sKbcsdHnAOp2PaxlC3nOIcs660bsW0xRcZYtoFkmCj9ZrtRnLKMar8B91p/n8EcsIX6Ylyut9NkIiqZwZhQ/VnkoW4DE0A2J/YDHqYVthzzmp5wcmJ6Au4VQtjvh32NnlGWooPbpJS3gnlRSimXSSnXA02Y/v02TDdBPsW2j6Vs/Y6zju2wnuKcinJMZRtAhgnRb9agzrESR7vf7PalGbzTSOG+GM/r7XSZUEpmECZsfxZ4yJ2o/XovsB3zAQ8mkJyWl6fQkqJhyXhGKEXLpLb/3+RUJo7tjcA866K0127ZF6vd0cW2j6VsBY/Lq3rQSF806JjJNoAME6LfMOdrNucdM2r95oh0tM9zL4X7YsyutxFmwiqZIkzk/nQ+5E7Ifh3iA954ciuwyUpOERZCbAWiDFfG8Z4UHekX5mRwE31RpPXAK9a+zZiBDfZLAnOwopPy2tlsbb+F3ICJgtvHSrYix4XpC+K4Jf+7jKFsRWWYAP1WT4HAilHuN9tVuxFHME+hvhiN622Mxpod/RzGET05EV75v81E7U+7Dydyv+aNJTuyd8LJ6ZDRDlYbtoxTbp2iQqEYO9TC/9PD6r+rHZvCmHPam5hA/Wp5PdZiWtttss9rNaF+f8sDcDWm0r5BmvOLw5JRKUWFQqFQKCzOiDlFhUKhUCiGglKKCoVCoVBYKKWoUCgUCoWFUooKhUKhUFgopahQKBQKhYVSigqFYkpiZ4lRKIaDUopjiBBijRDiFSv59C1CiM1CiKbxlmuksb5bvfV9m4QQm4oc1y6E2OI41u6bxry2pJVUe6BzrhnJZN6KiY/j+rLH0ybrGmq0roV3J4pitOQcFVlOtW17nI6wLJN+HKp1imOMlYLIWXB2jSxQnHayYg2Iesf324KZVSLiXDRrLQbeBFzvWAi8Bdgu84r8CiGklFIwCNbnrx/vBcSKsaPAeGoEmqWZwLoJWDac6+FUPjPEdutlbvLvcW07f5yOsDyTehyekVUyJhjNYLp6Cl1E1iAvdypO64JuxCyJ0ibNyu3hPKWT/z6nnWLncxy/EbNq/YOYqcsAOqSU26xqEsjCCbQ3SSmX5X2/bZiptZzKbh6O6hUOBs420ZexIotjYG/GVLQ3DNSGYkrTUey6LjKWste5lHIHucmjBx2XwMv2/kHGVE4i6gLnHYqsjZiVKU7mPTi2OY4ZcFw7yBmnA7TtlGnAe4yDST0Olft0fFhvu3uANdYF2S6E2Gi5Quqt12ZMpVJvJbfF+kwzZnLpW63Pr8PM+4l1zBbgh9b//dqxXJH2+bZar7B1fNg6fhvmxW3XI9syRIu2kBvnVuA2h3zryK0DWahvbnH0kZPzMWu73Wuda71j38tMgJpuijEnZzzl7ywyBvpd59bDZhgzqXTBcWm1t8Vqqxl4xmp/oDG1ztoXLjK+nLKGHe03WlMMm6xzn4+ZsH6tpVTz2y4qQwGy24u1nSdX0XtMASb3OBzvxK1n2gszOfEtjvcbrb9NmNZUPVbiWhzJpB37Nzk+u8nx+XbH9jWYSoxC7VjbJX3JqDfRV50626b1PuyQe519TJHv1kheZWv6kvG+4pDV3raV3ETZOX3j2C6LnKuJvKTOTIBq6uo1di/nNWONG+e12zTAWCp2nbfntZ8/Lm/JG4MbHWOt4JjKk6XgeR3vnWM3bI9Xx/5G67tsym97MBny2uhXgb5Q23n7C95jBjt2sr2UpTg+ZF0OMtenv02atQDt/VullPdKs+L1PGAZp0Z+O5DrZtqO6cqBvKKcjmPuBG6znjy3FzlPeZHtYFqLt1pP41sHOG5Q148lwzNYxYHzdk+IwArFmGLXw+yQxefI8sdAseu8EM5xOQ846djXTN81V2xMORnwvNL0xoQtq3cjlifECh6yi2MX87IMVYZ8F/FQ2x4Ok3YcKqU4PgzlgtlKrmsQTGvL6R5yRo61OSLJ1jrOUaidgWTYToG5AGnOe4QxnyKLFeNtzpPJ+fltmDevW+XAbtih9M0zVjs7LLeR7dYKMwSlqpja2HPeFuUUHgMFr3Pr8wNdg69gji+bRvoe8ga7dssHOq+DZuBOKeXdsm++8QZMxb4DsyZk/rlsRTeU8ZM/Tou2nRedWuwek1/fdFKPQxVoM4Y4AmTCQoht9gVvbS8H1gkh7rWeeB8WQqwVQryCOf/QJM0yKPa2/Ce6zcArQoiXMecA64UQjYXaccizzqHgzrei2O4WQsyz5jCbyZ1LzCnQm4+UslkI4ZyIX4M552lH2N6Zt+98oEMIsQNzkBbqm1vsv5Zsm61jneVs7OKs9cBDA8momDpYc372NWPfoJcDDzrHlHXd5I+lYtf5Q5jzhNdbn88fl/cKIZZZ1+FWTMvsXuccX/6YwrwunbIUG182azDHcgemVbkJ0625WQgxz9F2GHMM2TLaAT+FxnU2OjV/nA7Qtv1AYW8veI/BVIDO4yb1OFRLMiYxloulaQCX0Uifbx2mK2mwqNU2WdyaHDWsG9UmOUqh7wrFaGMp87VSylut9+uA22RuRPdInGfUxulkH4fKfTq5GWu/ff0gcy/2HOnyMZIni/VE/spkHYgKhcV6cufsmym8dOm0GK1xOhXGobIUJymW2+KHmINmVBfKWhZp/XDOI4a+XmpEyHcRKRSTEctteRt90xxhWWTd4EidbyTH6VQYh0opKhQKhUJhodynCoVCoVBYKKWoUCgUCoWFUooKhUKhUFgopahQKBQKhYVSigqFQqFQWCilqFAoFAqFxf8H12j3WIYkzzQAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 504x252 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#load data\n",
    "\n",
    "spectra = pd.read_csv(\"fig4_feedback_spectra.csv\")\n",
    "noise_bg = pd.read_csv(\"fig4_noise_background.csv\")\n",
    "\n",
    "#Set up figure\n",
    "fig = plt.figure(figsize = (1.5*pagewidth, pagewidth *0.75))\n",
    "fig.clf()\n",
    "\n",
    "cmap = plt.get_cmap('Blues')\n",
    "cols = [cmap(i) for i in np.linspace(0.2, 0.9, 17)]\n",
    "\n",
    "gS = gs.GridSpec(ncols=2, nrows=1, height_ratios = [1], wspace = 0.28)\n",
    "ax1 = plt.subplot(gS[0])\n",
    "\n",
    "\n",
    "frequency = spectra['frequency']\n",
    "\n",
    "ax1.semilogy(frequency/1e6, spectra['gain_0'], color = cols[0], \n",
    "             zorder = 0, label = \"Electronic gain: 0\")\n",
    "\n",
    "ax1.semilogy(frequency/1e6, spectra['gain_1'], color = cols[1], \n",
    "             zorder = 0, label = \"Electronic gain: 1\")\n",
    "ax1.semilogy(frequency/1e6, spectra['gain_5'], color = cols[4], \n",
    "             zorder = 0, label = \"Electronic gain: 5\")\n",
    "ax1.semilogy(frequency/1e6, spectra['gain_11'], color = cols[7], \n",
    "             zorder = 0, label = \"Electronic gain: 11\")\n",
    "ax1.semilogy(frequency/1e6, spectra['gain_35'], color = cols[16], \n",
    "             zorder = 0, label = \"Electronic gain: 35\")\n",
    "\n",
    "ax1.semilogy(noise_bg['frequency']/1e6, noise_bg['noise_background'], color = scharcoal, alpha = 0.1, zorder = 0)\n",
    "\n",
    "\n",
    "\n",
    "ax1.semilogy(frequency/1e6, spectra['fit_0'], \n",
    "             label = \"Fit\", linewidth = 1.5, color = scharcoal, zorder = 2000, alpha = 0.7)\n",
    "ax1.semilogy(frequency/1e6, spectra['fit_1'], \n",
    "             label = \"Fit\", linewidth = 1.5, color = scharcoal, zorder = 2000, alpha = 0.7)\n",
    "ax1.semilogy(frequency/1e6, spectra['fit_5'], \n",
    "             label = \"Fit\", linewidth = 1.5, color = scharcoal, zorder = 2000, alpha = 0.7)\n",
    "ax1.semilogy(frequency/1e6, spectra['fit_11'], \n",
    "             label = \"Fit\", linewidth = 1.5, color = scharcoal, zorder = 2000, alpha = 0.7)\n",
    "ax1.semilogy(frequency/1e6, spectra['fit_35'], \n",
    "             label = \"Fit\", linewidth = 1.5, color = scharcoal, zorder = 2000, alpha = 0.7)\n",
    "\n",
    "\n",
    "                                                                                                        \n",
    "                                                                                                        \n",
    "ax2 = plt.subplot(gS[1])\n",
    "occupation = pd.read_csv(\"fig4_occupation.csv\")\n",
    "occupation_theory = pd.read_csv(\"fig4_occupation_theory.csv\")\n",
    "\n",
    "nplot = [0, 1, 4, 7, 16] \n",
    "[ax2.semilogy(occupation['gain'][i], occupation['occupation'][i], marker='s', color = scharcoal, markeredgecolor='k', ls = 'None') for i in np.arange(0,17) if i not in nplot]\n",
    "[ax2.semilogy(occupation['gain'][i], occupation['occupation'][i], marker='o', color = cols[i], markeredgecolor='k', ls = 'None') for i in np.arange(0,17) if i in nplot]\n",
    "\n",
    "ax2.semilogy(occupation_theory['gain'], occupation_theory['occupation_theory'], \n",
    "             color='k', linewidth=1.5,zorder=0)\n",
    "\n",
    "ax2.semilogy(occupation_theory['gain'],occupation_theory['occupation_exp'], \n",
    "             color='gray', linestyle = '--', linewidth=1.5,zorder=-100)\n",
    "\n",
    "\n",
    "\n",
    "#filter limit\n",
    "filter_limit = 13.389\n",
    "ax2.axhline(filter_limit, ls='-', color = sblue, alpha = 0.35, linewidth = 1,zorder=1)\n",
    "ax2.axhspan(0,filter_limit, color = sblue, alpha = 0.3)\n",
    "\n",
    "tickf = 11\n",
    "ax1.tick_params(axis='both', which='major', labelsize=tickf)\n",
    "ax1.tick_params(axis='both', which='minor', labelsize=tickf)\n",
    "ax2.tick_params(axis='both', which='major', labelsize=tickf)\n",
    "ax2.tick_params(axis='both', which='minor', labelsize=tickf)\n",
    "\n",
    "ax1.set_xlim(1.289, 1.3)\n",
    "ax1.set_ylim(3e-6, 2e-1)\n",
    "ax1.grid(alpha = 0.5)\n",
    "\n",
    "ax2.set_xlim(-1, 40)\n",
    "ax2.set_ylim(10,1190)\n",
    "\n",
    "fsize = 11.5\n",
    "fsize_x = 11.5\n",
    "\n",
    "ax1.set_xlabel(\"Frequency (MHz)\", fontsize = fsize_x)\n",
    "ax1.set_ylabel(r'$\\bar{S}_{yy}(\\Omega)/(2 \\, \\bar{S}_\\mathrm{xzp})$', fontsize = fsize)\n",
    "\n",
    "ax2.set_xlabel(\"Electronic gain (a.u.)\", fontsize = fsize_x)\n",
    "ax2.set_ylabel(r'$\\bar{n}$', fontsize = 13)\n",
    "\n",
    "\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
