{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Radiative losses analysis with ModeSolver\n",
    "\n",
    "`ModeSolver` can be used to simulate small radiative losses, without the need for a full FDTD simulation. Since these losses are often very small (on the order of $10^{-5}$ dB/cm), careful tuning of the parameters is necessary to ensure good convergence.\n",
    "\n",
    "In this notebook, we will benchmark the required parameters to accurately calculate the imaginary part of the effective index for two types of losses: substrate leakage and bend losses.\n",
    "\n",
    "For more information about the `ModeSolver` plugin, refer to this [tutorial](https://www.flexcompute.com/tidy3d/examples/notebooks/ModeSolver/)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "vscode": {
     "languageId": "plaintext"
    }
   },
   "source": [
    "## Substrate leakage losses\n",
    "\n",
    "In this example, we will simulate radiative losses into the substrate for a strip waveguide fabricated in SOI, where the SiO₂ layer is thin enough to allow losses into the Si layer.\n",
    "\n",
    "We will compare our results with the ones obtained in the paper of `P. Bienstman, S. Selleri, L. Rosa, H. P. Uranus, W. C. L. Hopman, R. Costa, A. Melloni, L. C. Andreani, J. P. Hugonin, P. Lalanne, D. Pinto, S. S. A. Obayya, M. Dems, and K. Panajotov, \"Modelling leaky photonic wires: A mode solver comparison\", Optical and Quantum Electronics 38:731–759, (2006).` [DOI: 10.1007/s11082-006-9025-9](https://link.springer.com/article/10.1007/s11082-006-9025-9), where the authors benchmarked the radiative losses of the structure depicted above, using different numerical methods. \n",
    "\n",
    "\n",
    "<img src=\"img/RadiativeLossesModeSolver.png\" width=\"450\" alt=\"Schematic\">"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">15:03:17 EST </span><span style=\"color: #800000; text-decoration-color: #800000\">WARNING: Configuration found in legacy location </span><span style=\"color: #008000; text-decoration-color: #008000\">'~/.tidy3d'</span><span style=\"color: #800000; text-decoration-color: #800000\">.       </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">Consider running </span><span style=\"color: #008000; text-decoration-color: #008000\">'tidy3d config migrate'</span><span style=\"color: #800000; text-decoration-color: #800000\">.                          </span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m15:03:17 EST\u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING: Configuration found in legacy location \u001b[0m\u001b[32m'~/.tidy3d'\u001b[0m\u001b[31m.       \u001b[0m\n",
       "\u001b[2;36m             \u001b[0m\u001b[31mConsider running \u001b[0m\u001b[32m'tidy3d config migrate'\u001b[0m\u001b[31m.                          \u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import tidy3d as td\n",
    "from tidy3d import web\n",
    "from tidy3d.components.mode.mode_solver import ModeSolver"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "vscode": {
     "languageId": "plaintext"
    }
   },
   "source": [
    "### Defining the simulation domain"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We start defining a function for creating the `ModeSolver` object.\n",
    "\n",
    "Since we are interested in losses, some attributes must be carefully defined.\n",
    "\n",
    "1. The default boundary condition (BC) for the `ModeSolver` object is PEC. To study losses, we need to define a PML layer. This requires adding a tuple to the `num_pml` argument of the `ModeSpec` object, specifying the number of PML layers in each plane dimension.\n",
    "\n",
    "   Note that the PML is added **inside** the simulation plane, so it is necessary to ensure that the simulation plane is large enough to prevent the PML from being too close to the structures. A good way to check this is by calling the `ModeSolver.plot()` method.\n",
    "\n",
    "2. To study low losses, we set the `precision` argument to `double`, so the results will have more than six significant digits."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# defining the function for creating the ModeSolver object\n",
    "\n",
    "\n",
    "def mode_solver_substrate_loss(\n",
    "    resolution,\n",
    "    npml,\n",
    "    delta_override=None,\n",
    "    size=(3, 4.3),\n",
    "    num_modes=3,\n",
    "    target_neff=2.41,\n",
    "    fields=[\"Ex\", \"Ey\", \"Ez\"],\n",
    "):\n",
    "    # waveguide structure\n",
    "    wg = td.Structure(\n",
    "        geometry=td.Box(size=(td.inf, 0.5, 0.22)),\n",
    "        medium=td.Medium(permittivity=3.5**2),\n",
    "    )\n",
    "\n",
    "    # SiO2 layer\n",
    "    box = td.Structure(\n",
    "        geometry=td.Box.from_bounds(rmin=(-td.inf, -td.inf, -100), rmax=(td.inf, td.inf, -0.11)),\n",
    "        medium=td.Medium(permittivity=1.45**2),\n",
    "    )\n",
    "\n",
    "    # Si substrate\n",
    "    substrate = td.Structure(\n",
    "        geometry=td.Box.from_bounds(rmin=(-td.inf, -td.inf, -100), rmax=(td.inf, td.inf, -1.11)),\n",
    "        medium=td.Medium(permittivity=3.5**2),\n",
    "    )\n",
    "\n",
    "    # mesh override region\n",
    "    if delta_override:\n",
    "        mesh_override = [\n",
    "            td.MeshOverrideStructure(\n",
    "                geometry=td.Box(center=(0, 0, 0), size=(0, 1.5, 1)),\n",
    "                dl=(delta_override,) * 3,\n",
    "            )\n",
    "        ]\n",
    "    else:\n",
    "        mesh_override = []\n",
    "\n",
    "    grid_spec = td.GridSpec.auto(\n",
    "        min_steps_per_wvl=resolution, wavelength=1.55, override_structures=mesh_override\n",
    "    )\n",
    "\n",
    "    sim = td.Simulation(\n",
    "        size=(4, size[0], size[1]),\n",
    "        grid_spec=grid_spec,\n",
    "        structures=[wg, box, substrate],\n",
    "        run_time=1e-12,\n",
    "        boundary_spec=td.BoundarySpec.all_sides(boundary=td.PML()),\n",
    "        symmetry=(0, -1, 0),\n",
    "    )\n",
    "\n",
    "    mode_spec = td.ModeSpec(\n",
    "        num_modes=num_modes,\n",
    "        target_neff=target_neff,\n",
    "        num_pml=(npml, npml),\n",
    "        precision=\"double\",\n",
    "    )\n",
    "\n",
    "    mode_solver = ModeSolver(\n",
    "        simulation=sim,\n",
    "        plane=td.Box.from_bounds(\n",
    "            rmin=(0, -size[0] / 2, -((size[1] - 0.3) / 2 + 0.3)),\n",
    "            rmax=(0, size[0] / 2, 2 + (size[1] - 0.3) / 2),\n",
    "        ),\n",
    "        mode_spec=mode_spec,\n",
    "        freqs=[td.C_0 / 1.55],\n",
    "        fields=fields,\n",
    "    )\n",
    "    return mode_solver"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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pgz5GQEGpU74n//5H+LxeFlcLgN54YUXaGlpYb/99it732WlVrOn2xvvvvuutLe3S0NDg1x00UXyk5/8RK644grZb7/9srHcmRn0oSJVLr/8cgHk2GOPlZtvvlkuvPBCMU1TDjnkEEkmkyIi8tvf/lZ22mknueiii+THP/6x3HjjjXLIIYeIbduyevVqERH5+te/LjNmzJBLL71Ubr/9dvne974nO+20k+y88855seIDKeQ813Xlk5/8pCil5NRTT5WbbrpJli5dKl/5yldkhx12yPu7LrvsMgFkzpw58qMf/UhuuukmWbBggVxyySXZNl/96ldFKSX/8R//Ib/85S+zK+OGigPP3LtZs2bJ0qVLZdGiRdLQ0CC77rprXqx8Jg58uPs7Eps2bZJx48bJLrvsItddd51cf/31MmPGDDnooIMG2XPNNdcIIN/4xjfknnvukd/97nfD9rtx40aZMGGCHHXUUdnIiU2bNklbW5vMnj27LCtOb7nlFgHks5/9rNx+++2yYMECAeR73/teXrvMfRgYY3/yySdnY7x/8pOfyJw5c8SyLHnyySfz2r3wwgsSDAbzVmKGQiE59thjC7LzggsukJ122mlQ/DUg4XBYjjvuOLn11lvlsssuk0gkIi0tLbL77rvLPffcIyLDf4Yyf9fAKKrh3g/777+/fOELXyjI5lqiBbyKvP3227JgwQKZOHGiBINB+chHPiLnn3/+oIU8Qwm4SDpscO+99xbbtqWtrU3OO++8PHF666235Etf+pLstttuEgqFZIcddpCjjjpKHn300WybVatWyYknniiTJ0+WQCAgkydPltNOO03+/ve/j2h7oeclk0n54Q9/KPvtt58Eg0EZN26czJw5U6688spBIXF33HGHzJgxI9vuiCOOkEceeSR7vKOjQ44//nhpbm4uaCHPfffdl+1vhx12GHEhz0AKEXARkWeffVYOO+wwCYfDMnnyZLn44ovlD3/4wyB7enp65N/+7d+ktbV11IU8n/nMZ6S5uVn+8Y9/5O1/8MEHBZAf/vCHo9pVCLfddpvstddeEggEZLfddpMbbrhhkFAOJ+B9fX3yrW99S9rb2yUYDMohhxwiK1euHPI6Tz/9tMyZM0dCoZBMnDhRzj//fIlGowXZ+OKLL2YX4uQCyMKFC+Xkk0+WcDgskyZNkptvvlmWLVsmDQ0N8uUv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otFo3qbRaLZPcn3erc5Wd4rfxT7lpm4EvKOjA4C2tra8/W1tbdljQzFr1iyWL1/OypUrufXWW1m3bh0f//jH6e7uzvYbCARobW311e+SJUtoaWnJblOmTCnyL9NoNGOZgROWA33itRTxmrlQ7r77bs4999zs64ceeqiofo477rjsvw888EBmzZrFLrvswq9+9SvOOuusou1btGgRCxcuzL6ORqPc8bNlKDOJMp2i+1VigmdjNGzSceDbAjof+DbNcNEmo4UYVouavfNOOOEEZs2alX2dSKRzY2/cuJFJkyZl92/cuJHp06cX3G9rayt77rknb7zxBgDt7e0kk0k6OzvzRuEbN24c1m8OEAwGCQaDeftEADERr/hvXBEjvTkhRGe1GvsYDkpX5NkmGS1UsB5EvGYC3tzcTHNzc/a1iNDe3s6qVauygh2NRnn++ec577zzCu63p6eHN998k9NPPx2AmTNnYts2q1at4qSTTgLgtddeY/369cyePduf0QLilZaISjwDBxtJNiGGXVJfmjrASKJ0QYdtjoThkTQYNVSw1iJeNz5wpRQXXXQRV199Nb/73e94+eWXWbBgAZMnT2b+/PnZdscccww333xz9vW3vvUtnnzySf7xj3/w3HPP8elPfxrTNDnttNOA9EToWWedxcKFC3n88cd54YUXOPPMM5k9e3bVI1BESKeT1cmsNJq6xVXpiJNC47xr6ROvK+fdxRdfTCwW45xzzqGzs5PDDz+clStXEgqFsm3efPNNNm3alH397rvvctppp7F582YmTpzI4Ycfzp/+9CcmTpyYbXPDDTdgGAYnnXQSiUSCefPm8eMf/7gIC4v/vhOBbgnhoghRvA9do9FUFlcJQZ+LdAaOxO0qfcSVaEdsQUSjUW64/kc0qiQR018ty63ibdBAAk8ZzA69RZOuiTn26a+JmXzjGCTRPHp7TV0TMz1Wt/YSdBVWEb+UhXQGw6QSLv2PK+jq6iISiVTA0jR140IZEwgksOjzCvdd54p3s4pj6gkvjaauMUv4iGZG4oYu6FCPeARx6JNAQSI+ULytEvKIazSasYFCEaxSfrO68oHXPQqCZgKbFH1eCHAJD1OUIS3eDbgoms2ereItBohCBXpQZl/1bNdUBsNJF/nQaHKoVpiCFnAfKAUolwYzgXI9er0wSjzCA3ziItDtNeFiELG6sYyt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VTWT4MAQQ0N5uJ5R/cyOOaKhxMXw3KqLxUARB6qfSXCAiHuGieG5VRPvDPXwPCqFFvACkX5xFmSIiAePdEBPZqHPUG1y+gJSrsIo55Jblfaup9z0hzNguTheDZLrKIeUm06rapspXFG4bnU/JIZySbomLmZ6nkEJKbcy90KRfvriJfNyogjgCRhOeuTnmhaqWtnzcnCUgeWmfxE5pg2ek1egoRq4GFheCsNz8ZSJiKCccs5DjE7Bz0O8dPEISnWHp0+udJS2jgMvkLfeeovddtut1mZoNJoxxJtvvslHPvKRivWvR+AFssMOOwCwfv16WlpaamxNYUSjUaZMmcI777xT0cUE5WKs2Qva5mow1uyFdC2DqVOnZnWjUmgBLxDDSP8Eb2lpGTNvogyRSGRM2TzW7AVtczUYa/bCVt2oWP8V7V2j0Wg0FUMLuEaj0YxRtIAXSDAY5PLLLx9c5KGOGWs2jzV7QdtcDcaavVA9m3UUikaj0YxR9Ahco9FoxihawDUajWaMogVco9FoxijbtYA/8MADHHvssYwfPx6lFC+99NKo5yxfvhylVN4WCoXy2ogIixcvZtKkSYTDYebOncvrr79eE3sB7r//fvbee29CoRAHHHAADz/8cFXsLbbvK664YtA93nvvvfPaxONxzj//fMaPH09TUxMnnXQSGzduLIvNt9xyC7vuuiuhUIhZs2bx5z//ecT2tby/fu2t5fs3w1NPPcWnPvUpJk+ejFKKFStWjHrOE088wUc/+lGCwSC77747y5cvH9TG73OrlL1PPPHEoHuslMrW+C2rvbIdc9ddd8mVV14pt99+uwCydu3aUc+58847JRKJyIYNG7JbR0dHXpsf/OAH0tLSIitWrJD/9//+n5xwwgkybdo06evrq7q9zz77rJimKddcc428+uqrcumll4pt2/Lyyy9X3N5i+7788stlv/32y7vHH3zwQV6br3zlKzJlyhRZtWqVrFmzRg477DCZM2dOyfbee++9EggE5I477pBXXnlFzj77bGltbZWNGzcO2b7W99evvbV8/2Z4+OGH5bvf/a488MADAshvf/vbEdu/9dZb0tDQIAsXLpRXX31VbrrpJjFNU1auXJlt4/c+VNLexx9/XAB57bXX8u6z67plt3e7FvAM69at8yXgLS0twx73PE/a29vl2muvze7r7OyUYDAov/zlL8tgrT97P/e5z8nxxx+ft2/WrFly7rnnVtzeYvu+/PLL5aCDDhr2eGdnp9i2Lffff39231//+lcBZPXq1SXZfOihh8r555+ffe26rkyePFmWLFkyZPta3t9i7K2H928uhQjixRdfLPvtt1/evlNOOUXmzZuXfe33PlTS3oyAb9myZdg25bJ3u3ahFEtPTw+77LILU6ZM4cQTT+SVV17JHlu3bh0dHR3MnTs3u6+lpYVZs2axevXqqtu6evXqPFsA5s2bl7WlkvaW0vfrr7/O5MmT+chHPsLnP/951q9fnz32wgsvkEql8vrde++9mTp1akk2J5NJXnjhhbx+DcNg7ty5w/Zby/tbjL0wtt6/MPo9LvY+VJrp06czadIkPvGJT/Dss89m95fTXi3gPtlrr7244447ePDBB/nFL36B53nMmTOHd999FyDr52pra8s7r62tbZAPrBp0dHSMaEsl7S2271mzZrF8+XJWrlzJrbfeyrp16/j4xz9Od3d3tt9AIEBra2tZbd60aROu6/qyt5b3txh7x9r7F4a/x9FolL6+vqLuQyWZNGkSy5Yt4ze/+Q2/+c1vmDJlCkceeSQvvvgiUNxzG47tRsDvvvtumpqastvTTz9dVD+zZ89mwYIFTJ8+nSOOOIIHHniAiRMn8pOf/KQu7a0mA21OpVJF9XPcccdx8sknc+CBBzJv3jwefvhhOjs7+dWvflVmi7c/qvX+3Z7Za6+9OPfcc5k5cyZz5szhjjvuYM6cOdxwww1lv9Z2k43whBNOYNasWdnXO+20U1n6tW2bGTNm8MYbbwDQ3t4OwMaNG5k0aVK23caNG5k+fXrV7W1vbx8UnbFx48asneWydyibE4lEWfpubW1lzz33zLvHyWSSzs7OvFF47t9VDBMmTMA0zRHv10CqeX/LYe9AKvX+LSfD3eNIJEI4HMY0zZLvQ6U59NBDeeaZZ4DyPLcM280IvLm5md133z27hcPlKWzrui4vv/xy9s0+bdo02tvbWbVqVbZNNBrl+eefZ/bs2VW3d/bs2Xm2ADzyyCNZW8pl71A277vvvmXpu6enhzfffDN7j2fOnIlt23n9vvbaa6xfv963zbkEAgFmzpyZ16/neaxatWrYfqt5f8th70Aq9f4tJ6Pd43Lch0rz0ksvZe9xWe31NeW5jbF582ZZu3atPPTQQwLIvffeK2vXrpUNGzZk25x++ulyySWXZF9feeWV8oc//EHefPNNeeGFF+TUU0+VUCgkr7zySrbND37wA2ltbZUHH3xQ/u///k9OPPHEsoRhFWPvs88+K5ZlyY9+9CP561//KpdffvmQYW6VsLfQvo8++mi56aabsq+/+c1vyhNPPCHr1q2TZ599VubOnSsTJkyQ999/P9vmK1/5ikydOlUee+wxWbNmjcyePVtmz55dsr333nuvBINBWb58ubz66qtyzjnnSGtrazbUrt7ur197a/n+zdDd3S1r166VtWvXCiDXX3+9rF27Vt5++20REbnkkkvk9NNPz7bPhBF++9vflr/+9a9yyy23DBlGONJ9qKa9N9xwg6xYsUJef/11efnll+XrX/+6GIYhjz76aNnt3a4F/M4770wXsBywXX755dk2RxxxhJxxxhnZ1xdddJFMnTpVAoGAtLW1ySc/+Ul58cUX8/r1PE8uu+wyaWtrk2AwKMccc4y89tprNbFXRORXv/qV7LnnnhIIBGS//faThx56qCr2Ftr3Lrvskvc3nHLKKTJp0iQJBAKy0047ySmnnCJvvPFG3jl9fX3y1a9+VcaNGycNDQ3y6U9/Ou+LrBRuuumm7DM+9NBD5U9/+lP2WL3dX7/21vL9myETZjdwy9h5xhlnyBFHHDHonOnTp0sgEJCPfOQjcueddw7qd6T7UE17f/jDH8puu+0moVBIdthhBznyyCPlscceq4i9OhuhRqPRjFG2Gx+4RqPRbGtoAddoNJoxihZwjUajGaNoAddoNJoxihZwjUajGaNoAddoNJoxihZwjUajGaNoAddoNJoxihZwjWYUfvazn3HsscdW/DorV65k+vTpeJ5X8Wtptg20gGs0IxCPx7nsssu4/PLLK36tf/mXf8G2be6+++6KX0uzbaAFXKMZgV//+tdEIhE+9rGPVeV6X/ziF7nxxhurci3N2EcLuGa74K677mL8+PHZHOUZ5s+fz+mnnz7seffeey+f+tSn8vYdeeSRXHTRRYP6+eIXv5h9veuuu3L11VezYMECmpqa2GWXXfjd737HBx98wIknnkhTUxMHHngga9asyevnU5/6FGvWrOHNN98s7g/VbFdoAddsF5x88sm4rsvvfve77L7333+fhx56iC996UvDnvfMM89w8MEHF3XNG264gY997GOsXbuW448/ntNPP50FCxbwhS98gRdffJHddtuNBQsWkJtPburUqbS1tY2JCkya2qMFXLNdEA6H+bd/+zfuvPPO7L5f/OIXTJ06lSOPPHLIczo7O+nq6mLy5MlFXfOTn/wk5557LnvssQeLFy8mGo1yyCGHcPLJJ7Pnnnvyne98h7/+9a+DKrNMnjyZt99+u6hrarYvtIBrthvOPvts/vjHP/Lee+8BsHz5cr74xS+ilBqyfV9fHwChUKio6x144IHZf2cK2B5wwAGD9r3//vt554XDYXp7e4u6pmb7YrupianRzJgxg4MOOoi77rqLY489lldeeYWHHnpo2Pbjx49HKcWWLVtG7dt13UH7bNvO/jvzJTHUvoFhgx9++CETJ04c9ZoajR6Ba7YrvvzlL7N8+XLuvPNO5s6dy5QpU4ZtGwgE2HfffXn11VcHHRvo9njrrbfKYl88HufNN99kxowZZelPs22jBVyzXfFv//ZvvPvuu9x+++0jTl5mmDdvXraaeC4PPvggDzzwAG+++Sbf+973ePXVV3n77bez7pli+dOf/kQwGKybYrya+kYLuGa7oqWlhZNOOommpibmz58/avuzzjqLhx9+mK6urrz9xx9/PNdccw377rsvTz31FD/+8Y/585//zM9//vOS7PvlL3/J5z//eRoaGkrqR7N9oGtiarY7jjnmGPbbb7+CF8ycfPLJfPSjH2XRokVAOg58+vTpLF26tKx2bdq0ib322os1a9Ywbdq0svat2TbRI3DNdsOWLVv47W9/yxNPPMH5559f8HnXXnstTU1NFbQszT/+8Q9+/OMfa/HWFIyOQtFsN8yYMYMtW7bwwx/+kL322qvg83bddVcuvPDCClqW5uCDDy560ZBm+0S7UDQajWaMol0oGo1GM0bRAq7RaDRjFC3gGo1GM0bRAq7RaDRjFC3gGo1GM0bRAq7RaDRjFC3gGo1GM0bRAq7RaDRjFC3gGo1GM0b5/wGslixfFUyuQgAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# visualizing the mode solver\n",
    "mode_solver = mode_solver_substrate_loss(\n",
    "    resolution=20,\n",
    "    npml=9,\n",
    "    delta_override=None,\n",
    ")\n",
    "\n",
    "mode_solver.plot()\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Next, we run the mode solver to analyze the modes:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:01:49 CET </span>Created task <span style=\"color: #008000; text-decoration-color: #008000\">'mode_solver_2026-02-20_10-01-48'</span> with resource_id    \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'mo-ffcd4669-2889-40af-85bd-0f80883e2f92'</span> and task_type            \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'MODE_SOLVER'</span>.                                                     \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:01:49 CET\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'mode_solver_2026-02-20_10-01-48'\u001b[0m with resource_id    \n",
       "\u001b[2;36m             \u001b[0m\u001b[32m'mo-ffcd4669-2889-40af-85bd-0f80883e2f92'\u001b[0m and task_type            \n",
       "\u001b[2;36m             \u001b[0m\u001b[32m'MODE_SOLVER'\u001b[0m.                                                     \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>View task using web UI at                                          \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><a href=\"https://tidy3d.simulation.cloud/workbench?taskId=mo-ffcd4669-2889-40af-85bd-0f80883e2f92\" target=\"_blank\"><span style=\"color: #008000; text-decoration-color: #008000\">'https://tidy3d.simulation.cloud/workbench?taskId=mo-ffcd4669-2889-</span></a>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><a href=\"https://tidy3d.simulation.cloud/workbench?taskId=mo-ffcd4669-2889-40af-85bd-0f80883e2f92\" target=\"_blank\"><span style=\"color: #008000; text-decoration-color: #008000\">40af-85bd-0f80883e2f92'</span></a>.                                           \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mView task using web UI at                                          \n",
       "\u001b[2;36m             \u001b[0m\u001b]8;id=860909;https://tidy3d.simulation.cloud/workbench?taskId=mo-ffcd4669-2889-40af-85bd-0f80883e2f92\u001b\\\u001b[32m'https://tidy3d.simulation.cloud/workbench?\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=41924;https://tidy3d.simulation.cloud/workbench?taskId=mo-ffcd4669-2889-40af-85bd-0f80883e2f92\u001b\\\u001b[32mtaskId\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=860909;https://tidy3d.simulation.cloud/workbench?taskId=mo-ffcd4669-2889-40af-85bd-0f80883e2f92\u001b\\\u001b[32m=\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=472694;https://tidy3d.simulation.cloud/workbench?taskId=mo-ffcd4669-2889-40af-85bd-0f80883e2f92\u001b\\\u001b[32mmo\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=860909;https://tidy3d.simulation.cloud/workbench?taskId=mo-ffcd4669-2889-40af-85bd-0f80883e2f92\u001b\\\u001b[32m-ffcd4669-2889-\u001b[0m\u001b]8;;\u001b\\\n",
       "\u001b[2;36m             \u001b[0m\u001b]8;id=860909;https://tidy3d.simulation.cloud/workbench?taskId=mo-ffcd4669-2889-40af-85bd-0f80883e2f92\u001b\\\u001b[32m40af-85bd-0f80883e2f92'\u001b[0m\u001b]8;;\u001b\\.                                           \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Task folder: <a href=\"https://tidy3d.simulation.cloud/folders/514fae1d-02fa-4a01-866b-fa885e2a3625\" target=\"_blank\"><span style=\"color: #008000; text-decoration-color: #008000\">'default'</span></a>.                                            \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mTask folder: \u001b]8;id=209947;https://tidy3d.simulation.cloud/folders/514fae1d-02fa-4a01-866b-fa885e2a3625\u001b\\\u001b[32m'default'\u001b[0m\u001b]8;;\u001b\\.                                            \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "333058aa3f0147108a4f275e851b4425",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:01:54 CET </span>Estimated FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.004</span>. Minimum cost depends on task     \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>execution details. Use <span style=\"color: #008000; text-decoration-color: #008000\">'web.real_cost(task_id)'</span> to get the billed  \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>FlexCredit cost after a simulation run.                            \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:01:54 CET\u001b[0m\u001b[2;36m \u001b[0mEstimated FlexCredit cost: \u001b[1;36m0.004\u001b[0m. Minimum cost depends on task     \n",
       "\u001b[2;36m             \u001b[0mexecution details. Use \u001b[32m'web.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32mtask_id\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed  \n",
       "\u001b[2;36m             \u001b[0mFlexCredit cost after a simulation run.                            \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:01:56 CET </span>status = success                                                   \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:01:56 CET\u001b[0m\u001b[2;36m \u001b[0mstatus = success                                                   \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "6fd88448d8084859bfad7e33b6ffc1ce",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:02:00 CET </span>Loading results from simulation_data.hdf5                          \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:02:00 CET\u001b[0m\u001b[2;36m \u001b[0mLoading results from simulation_data.hdf5                          \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# run the mode solver\n",
    "mode_data = web.run(mode_solver)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAY8AAAHWCAYAAACPGwXYAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAgMZJREFUeJztnXt8FNX5/z9nZm8hIUFAE4IgFC8gIKAgovhFIJoiVfFC0argFS94QRQVFVCrRbEqVRGqrdJaUWpVtKIogogKYrn96hXRInghIAqJBHLZmef3x8ycObM7m2STTXZDnjevJbNnzsyembM7z3me5zzPEUREYBiGYZgk0NLdAIZhGKb5wcKDYRiGSRoWHgzDMEzSsPBgGIZhkoaFB8MwDJM0LDwYhmGYpGHhwTAMwyQNCw+GYRgmaVh4MAzDMEnDwoNJGcuXL4cQAsuXL093U5hG4KOPPkIoFMKWLVua/LN/+uknZGdn4/XXX2/yz2b8YeHBJM3jjz+OefPmpbsZ9WL+/PmYNWtWupvh4a9//St69OiBSCSCww47DI8++midj62srMQtt9yCwsJCZGVlYeDAgViyZIlv3ZUrV2Lw4MFo1aoVCgoKcN1112HPnj11/qzbb78d5513Hg455JA6H5Mq2rVrh8suuwxTp05t8s9mEkAMkyQ9e/akIUOGxJUbhkH79u0jwzCavlF1ZOTIkXTIIYekuxmSuXPnEgA6++yz6YknnqALL7yQANB9991Xp+PPPfdcCgQCdNNNN9Gf//xnGjRoEAUCAXrvvfc89davX0+RSIT69etHc+bModtvv53C4TD9+te/rtPnrF+/ngDQypUrk77GVPHZZ58RAFq6dGna2sC4sPCoJ3v27El3E9JGIuHRHMgk4bF3715q164djRw50lN+/vnnU3Z2Nv388881Hr969WoCQA888IAs27dvH3Xr1o0GDRrkqTtixAjq0KEDlZaWyrInn3ySANCbb75Za1uvu+466ty5M5mmWZdLazR69epFF154YVrbwFiw8CCi7777ji655BLq0KEDhUIh6tKlC1155ZVUWVlJRERPP/00AaDly5fTVVddRQceeCC1adNGHj979mw68sgjKRQKUYcOHejqq6+mXbt2eT7jyy+/pLPOOovy8/MpHA5Tx44dacyYMbR7925Z56233qITTjiB8vLyKDs7mw4//HCaMmVKre2vy3EVFRU0bdo06tatG4VCITr44INp8uTJVFFREXe+Z555hgYMGEBZWVnUpk0bOvHEE+UD5pBDDiEAnpcjSN555x0CQO+8847nfP/85z/p6KOPpkgkQu3ataPzzz+fvvvuO0+dcePGUXZ2Nn333Xd0xhlnUHZ2NrVv355uvPFGikajtd6DhQsX0qmnnir78Fe/+hXdfffdnmOHDBkS1/aaBMlTTz1FAOivf/2rp/zee+8lALRo0aJa21UTixYt8j3PypUrCQA988wzNR4/efJk0nXdIxCIiP7whz8QANq6dSsREZWWllIgEKDJkyd76lVWVlJOTg5deumltba1c+fOdNFFF8WVA6Dp06fHlR9yyCE0btw4+d75Db333nt07bXXUvv27SkvL4/Gjx9PlZWVtGvXLrrwwgupTZs21KZNG5o8ebKvoLrhhhuoTZs2aRdiDFGgCS1kGckPP/yAY489Frt378b48ePRvXt3fP/99/jXv/6FvXv3IhQKybpXX301DjzwQEybNg3l5eUAgDvvvBN33XUXioqKcNVVV2Hjxo2YM2cO/vOf/+CDDz5AMBhEVVUViouLUVlZiWuvvRYFBQX4/vvv8dprr2H37t3Iy8vDp59+it/85jc46qijcPfddyMcDuOrr77CBx98UGP763KcaZo4/fTT8f7772P8+PHo0aMHPv74Yzz88MP48ssvsXDhQln3rrvuwp133onjjz8ed999N0KhEFavXo1ly5bhlFNOwaxZs3DttdciJycHt99+OwAgPz8/YfvmzZuHiy++GAMGDMCMGTOwfft2/OlPf8IHH3yA9evXo02bNrKuYRgoLi7GwIED8cc//hFvv/02HnzwQXTr1g1XXXVVjfdh3rx5yMnJwaRJk5CTk4Nly5Zh2rRpKCsrwwMPPADAstmXlpbiu+++w8MPPwwAyMnJSXjOiy++GC+99BImTZqEk08+GZ06dcLHH3+Mu+66C5deeilOPfVUWXfXrl0wDKPGNgJAq1at0KpVKwDA+vXrAQD9+/f31DnmmGOgaRrWr1+PCy64IOG51q9fj8MPPxy5ubme8mOPPRYAsGHDBtnmaDQa9zmhUAh9+/aV7UjE999/j61bt+Loo4+u9fpqw/n+33XXXfjwww/xxBNPoE2bNli5ciU6d+6MP/zhD3j99dfxwAMPoFevXhg7dqzn+GOOOQYPP/wwPv30U/Tq1avB7WEaQLqlV7oZO3YsaZpG//nPf+L2OaMbZ9Q0ePBgz0h2x44dFAqF6JRTTvHY+R977DECQE899RQRufbiF154IWE7Hn74YQJAP/74Y1Ltr8txzzzzDGmaFmcHd+ztH3zwARERbdq0iTRNozPPPDPOb6GO9BKZrWI1j6qqKjrooIOoV69etG/fPlnvtddeIwA0bdo0WTZu3DgCQHfffbfnnP369aNjjjmm5ptAlgkoliuuuIJatWrl0a6SNVtt27aN2rZtSyeffDJVVlZSv379qHPnznGjfT+NzO+ljtInTJhAuq77fu6BBx5I5557bo1t69mzJw0bNiyu/NNPPyUANHfuXCIieuGFFwgArVixIq7u6NGjqaCgoMbPefvttwkA/fvf/47bF3tNDok0j+LiYs93adCgQSSEoCuvvFKWRaNROvjgg32/Y45WtmDBghrbzDQ+LXq2lWmaWLhwIU477bS4URkACCE87y+//HLoui7fv/3226iqqsLEiROhaZqnXm5uLhYtWgQAyMvLAwC8+eab2Lt3r29bnBH4K6+8AtM063wNdTnuhRdeQI8ePdC9e3fs3LlTvoYNGwYAeOeddwAACxcuhGmamDZtmud6gPh7URfWrFmDHTt24Oqrr0YkEpHlI0eORPfu3eX9Ubnyyis970888UT873//q/WzsrKy5PYvv/yCnTt34sQTT8TevXvxxRdfJN12h4KCAsyePRtLlizBiSeeiA0bNuCpp56KG+0/++yzWLJkSa0vdSS9b98+j2arEolEsG/fvhrbtm/fPoTDYd9jnf3q30R1a/ucn376CQBwwAEH1FivLlx66aWe79LAgQNBRLj00ktlma7r6N+/v2+/O23YuXNng9vCNIwWbbb68ccfUVZWVmf1t2vXrp73znz3I444wlMeCoXwq1/9Su7v2rUrJk2ahIceegjPPvssTjzxRJx++um44IILpGAZM2YM/vKXv+Cyyy7DrbfeiuHDh+Oss87COeecE/cgV6nLcZs2bcLnn3+OAw880PccO3bsAAB8/fXX0DQNRx55ZJ3uR20kuj8A0L17d7z//vueskgkEtfGAw44ALt27ar1sz799FPccccdWLZsGcrKyjz7SktLk226h3PPPRf/+Mc/sGjRIowfPx7Dhw+Pq3PCCSckfd6srCxUVVX57quoqPAIxETHV1ZW+h7r7Ff/Jqpb2+c4UAoWHe3cubPnvfP979SpU1y5X787bajPYIZJLS1aeCRLXX9kfjz44IO46KKL8Morr+Ctt97CddddhxkzZuDDDz/EwQcfjKysLKxYsQLvvPMOFi1ahMWLF2PBggUYNmwY3nrrLY/GE9um2o4zTRO9e/fGQw895HuO2B9uukh0jbWxe/duDBkyBLm5ubj77rvRrVs3RCIRrFu3DrfccktSmpwfP/30E9asWQMA+Oyzz2CaZpxA//HHH+vk88jJyZF+lg4dOsAwDOzYsQMHHXSQrFNVVYWffvoJhYWFNZ6rQ4cO+P777+PKt23bBgDy+A4dOnjKY+vW9jnt2rUDgDoJcYdEgiZRH/uV+53DaUP79u3r3BamcWjRZqsDDzwQubm5+OSTT+p1vBMstXHjRk95VVUVNm/eHBdM1bt3b9xxxx1YsWIF3nvvPXz//feYO3eu3K9pGoYPH46HHnoIn332Ge69914sW7ZMmpUSUdtx3bp1w88//4zhw4ejqKgo7uVoBt26dYNpmvjss89q/Ly6jvoS3R+nLFXBZsuXL8dPP/2EefPm4frrr8dvfvMbFBUV+ZpZ6jNinTBhAn755RfMmDED77//vm+Q4YABA9ChQ4daX3/84x/lMX379gUAKZgc1qxZA9M05f5E9O3bF19++WWcprV69WrP+Xv16oVAIBD3OVVVVdiwYUOtn9O9e3cAwObNm333//LLL3Fljjabapw29OjRo1HOz9SdFi08NE3DqFGj8O9//zvuhwXUrqYXFRUhFArhkUce8dT961//itLSUowcORIAUFZWhmg06jm2d+/e0DRNmhJ+/vnnuPM7P2o/c4NDXY777W9/i++//x5PPvlkXN19+/bJmWOjRo2Cpmm4++6740br6vVlZ2dj9+7dCdvk0L9/fxx00EGYO3eu5xreeOMNfP755/L+NBRn1Kq2saqqCo8//nhc3ezs7KTMWP/617+wYMEC3Hfffbj11ltx7rnn4o477sCXX37pqVcfn8ewYcPQtm1bzJkzx3OuOXPmoFWrVp77s3PnTnzxxRcen9k555wDwzDwxBNPyLLKyko8/fTTGDhwoNQo8/LyUFRUhH/84x+eB/0zzzyDPXv2YPTo0TXeg44dO6JTp06+vxEAcelo3njjDVRUVKTEzBXL2rVrkZeXh549e6b83EySpMtTnyl89913VFBQQK1ataKJEyfSn//8Z7rzzjupZ8+eMlbDmSniNyNr+vTpBIBOOeUUeuyxx+jaa68lXddpwIABVFVVRUREL7/8MnXs2JEmTpxIjz/+OD3yyCM0YMAACgaDtGrVKiIiuv7666lfv350xx130JNPPkn33nsvdezYkQ4++GBPLEgsdTnOMAw69dRTSQhB5557Lj366KM0a9YsuvLKK6lt27ae65o6dSoBoOOPP57++Mc/0qOPPkpjx46lW2+9Vda5+uqrSQhBv//97+m5556TEb9+cR7OvRs4cCDNmjWLpkyZQq1ataIuXbp4YmGcOI9E97cmdu7cSQcccAAdcsgh9OCDD9JDDz1E/fr1oz59+sS1Z+bMmQSAbrjhBpo/fz69+uqrCc+7fft2at++PQ0dOlTOENq5cyfl5+fToEGDUhJJP3v2bAJA55xzDj355JM0duxYAkD33nuvp55zH2JjaEaPHi1jOP785z/T8ccfT4FAgN59911PvbVr11I4HPZEmEciETrllFPq1M5rrrmGOnbsGBdfAYCysrJoxIgRNGfOHJo6dSrl5uZSXl4eHXrooTR//nwiSvwbcq4rdrZgou9Dr1696IILLqhTm5nGpcULDyKiLVu20NixY+nAAw+kcDhMv/rVr2jChAlxQYJ+woPImprbvXt3CgaDlJ+fT1dddZXnwfi///2PLrnkEurWrRtFIhFq27YtDR06lN5++21ZZ+nSpXTGGWdQYWEhhUIhKiwspPPOO4++/PLLGtte1+Oqqqro/vvvp549e1I4HKYDDjiAjjnmGLrrrrvipp0+9dRT1K9fP1lvyJAhtGTJErm/pKSERo4cSa1bt65TkOCCBQvk+dq2bVtjkGAsdREeREQffPABHXfccZSVlUWFhYV0880305tvvhnXnj179tDvfvc7atOmTa1BgmeddRa1bt2avvnmG0/5K6+8QgDo/vvvr7VddeGJJ56gI444gkKhEHXr1o0efvjhuId0IuGxb98+uummm6igoIDC4TANGDCAFi9e7Ps57733Hh1//PEUiUTowAMPpAkTJlBZWVmd2rhu3ToZ5KcCgCZNmkSjR4+mrKws6tChAz322GM0d+5catWqFV122WVElBrh8fnnnxMAz++GSR+CqBF0S4Zh9juGDx+OwsJCPPPMM7JM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DJOZ1EnzePTRR3HLLbfg6quvxsknn4z+/fujsLAQkUgEu3btwmeffYb3338fn376Ka655hpcddVVjd1uhmGYlJIqs1UmqR5du3atl9UoZbmthg8fjjVr1uD999/HggUL8Oyzz2LLli3Yt28f2rdvj379+mHs2LE4//zzccABByTdUIZhmHSTOrNVcucwDAN33nkn/vGPf6CkpASFhYW46KKLcMcddzTYXTBv3rx6HdelS5da6yTlMB88eDAGDx5cr8YwDMNkMlaEedN/7v333485c+bgb3/7G3r27Ik1a9bg4osvRl5eXq2j/9oYMmRIiloZT8qCBBmGYZjkWblyJc444wyMHDkSgDXqf+655/DRRx+luWU1wwuRMwzDwPV5NPUytMcffzyWLl2KL7/8EgDw//7f/8P777+PESNGNMJVpg7WPBiGYeCkZE9NSEI0GkVZWZmnLBwOIxwOx9W99dZbUVZWhu7du0PXdRiGgXvvvTfjk8yy5sEwDJNili1bhry8PM9rxowZvnX/+c9/4tlnn8X8+fOxbt06/O1vf8Mf//hH/O1vf2viVicHax4MwzBIbYT5sGHD8OKLL3rK/bQOAJg8eTJuvfVWnHvuuQCA3r17Y8uWLZgxY0a9lpFtKpLWPIYNG4a77rorrnzXrl0YNmxYShrFMAzT1KQiHbsJS3gEAgHk5uZ6XomEx969e6Fp3kexruuNFhmeKpLWPJYvX46PP/4Y69evx7PPPovs7GwAQFVVFd59992UN5BhGKYpSFVKdiTpNznttNNw7733onPnzujZsyfWr1+Phx56CJdcckkK2tJ41Mvn8fbbb6OkpATHHXccvvnmmxQ3iWEYpuXw6KOP4pxzzsHVV1+NHj164KabbsIVV1yB3//+9+luWo3Uy+fRoUMHvPvuu7j44osxYMAAvPDCC+jRo0eq28a0YI4++uh0N0Gybt26dDeBaQKclQRTcZ5kaN26NWbNmoVZs2al4NObjqQ1DydcPhwOY/78+bj++uvx61//Go8//njKG8cwDNNUOBHmDX1lUm6rxiRpzSN2/ds77rgDPXr0yOhZAQzDMLWRqud+C5EdyQuPzZs348ADD/SUnX322ejevTvWrFmTsoYxDMMwmUvSZqtDDjnEN9Njz549U6Z9zJ49G126dEEkEsHAgQNrzfHywgsvoHv37ohEIujduzde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Fn73u9/h6aeflmX/+Mc/0LlzZ5x00km+x+zevRulpaUoLCys12eeeuqpuOKKK3DYYYdh2rRpKCsrw4ABAzB69GgcfvjhuOWWW/D555/HraZXWFiILVu21OszGWZ/goUHkxFcfvnleOutt/D9998DAObNm4eLLroIQgjf+vv27QMARCKRen3eUUcdJbfz8/MBAL17944r27Fjh+e4rKws7N27t16fyTD7E7yGOZMR9OvXD3369MHf//53nHLKKfj000+xaNGihPXbtWsHIQR27dpV67kNw4grCwaDctsRUH5lsVNzf/75Zxx44IG1fibD7O+w5sFkDJdddhnmzZuHp59+GkVFRejUqVPCuqFQCEceeSQ+++yzuH2xpqb//e9/KWlfRUUFvv76a/Tr1y8l52OY5gwLDyZj+N3vfofvvvsOTz75ZI2Ocofi4mK8//77ceWvvPIKXnrpJXz99de499578dlnn2HLli3SJFZfPvzwQ4TDYQwaNKhB52GY/QEWHkzGkJeXh7PPPhs5OTkYNWpUrfUvvfRSvP766ygtLfWUjxw5EjNnzsSRRx6JFStW4PHHH8dHH32EZ555pkHte+6553D++eejVatWDToPw+wP8BrmTEYxfPhw9OzZs87BeKNHj8bRRx+NKVOmALDiPPr27YtZs2altF07d+7EEUccgTVr1qBr164pPTfDNEdY82Aygl27duHll1/G8uXLMWHChDof98ADDyAnJ6cRW2bxzTff4PHHH2fBwTA2PNuKyQj69euHXbt24f7778cRRxxR5+O6dOmCa6+9thFbZtG/f/96ByQyzP4Im60YhmGYpGGzFcMwDJM0LDwYhmGYpGHhwTAMwyQNCw+GYRgmaVh4MAzDMEnDwoNhGIZJGhYeDMMwTNKw8GAYhmGShoUHwzAMkzT/H6K/97cL63khAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZwAAAHWCAYAAABDgj8zAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAh1BJREFUeJztnXl8FdX5/z9n5m5ZSBDBhLDI4gICAiLGUPy6EInIV8WFIrWAilotWCl1wyLgVlyqqAVFrUClIkh/in7FYhFBVBDL9qp7kSIIkiAWEglkuTPP74+ZOXPmLkluuLk3wPP2NTJ35szMOZM795nnOc8iiIjAMAzDME2Mlu4OMAzDMMcGLHAYhmGYlMACh2EYhkkJLHAYhmGYlMACh2EYhkkJLHAYhmGYlMACh2EYhkkJLHAYhmGYlMACh2EYhkkJLHCYpLFq1SoIIbBq1ap0d4VpAj755BMEAgFs37495df+8ccfkZWVhbfffjvl12aSBwscJmGeeeYZzJs3L93daBQLFizAk08+me5ueHjxxRfRvXt3hEIhnHzyyfjTn/7U4GOrq6tx1113oaCgABkZGSgsLMTy5ctjtl2zZg0GDhyIzMxM5Ofn4ze/+Q0OHDjQ4Gv9/ve/x8iRI3HiiSc2+Jhkcfzxx+OGG27Avffem/JrM0mEGCZBevToQeeee27UdsMw6NChQ2QYRuo71UCGDh1KJ554Yrq7IZk9ezYBoCuvvJKef/55GjVqFAGghx9+uEHHX3311eTz+ej222+n5557joqKisjn89EHH3zgabdp0yYKhULUt29fevbZZ+n3v/89BYNBuuiiixp0nU2bNhEAWrNmTcJjTBZffPEFAaAVK1akrQ/M4cECp5EcOHAg3V1IG/EEzpFAcxI4Bw8epOOPP56GDh3q2X7NNddQVlYW/fe//63z+HXr1hEAeuyxx+S2Q4cOUdeuXamoqMjTdsiQIdS2bVsqLy+X21544QUCQO+88069ff3Nb35DHTt2JNM0GzK0JqNnz540atSotPaBaTwscIho586ddP3111Pbtm0pEAhQp06d6Oabb6bq6moiIpo7dy4BoFWrVtEtt9xCbdq0oZYtW8rjZ82aRaeddhoFAgFq27Yt/frXv6Z9+/Z5rvHvf/+brrjiCsrLy6NgMEjt2rWjESNG0P79+2Wbf/zjH/Szn/2McnNzKSsri0455RSaNGlSvf1vyHFVVVU0ZcoU6tq1KwUCAWrfvj3dcccdVFVVFXW++fPnU//+/SkjI4NatmxJ55xzjvxROvHEEwmAZ3GEz8qVKwkArVy50nO+V199lc444wwKhUJ0/PHH0zXXXEM7d+70tBkzZgxlZWXRzp076bLLLqOsrCxq3bo1/e53v6NwOFzvPViyZAldfPHF8m/YpUsXuv/++z3HnnvuuVF9r0v4zJkzhwDQiy++6Nn+0EMPEQBaunRpvf2qi6VLl8Y8z5o1awgAzZ8/v87j77jjDtJ13SNEiIj+8Ic/EADasWMHERGVl5eTz+ejO+64w9OuurqasrOzaezYsfX2tWPHjnTttddGbQdAU6dOjdp+4okn0pgxY+Rn5xn64IMP6NZbb6XWrVtTbm4u3XTTTVRdXU379u2jUaNGUcuWLally5Z0xx13xBRuv/3tb6lly5ZpF3xM4/Cl0HrXLPn+++9x1llnYf/+/bjpppvQrVs37Nq1C3/7299w8OBBBAIB2fbXv/412rRpgylTpqCyshIAMG3aNNx3330oLi7GLbfcgq+//hrPPvss/vnPf+Kjjz6C3+9HTU0NSkpKUF1djVtvvRX5+fnYtWsX3nrrLezfvx+5ubn4/PPP8b//+784/fTTcf/99yMYDOKbb77BRx99VGf/G3KcaZq49NJL8eGHH+Kmm25C9+7d8emnn2LGjBn497//jSVLlsi29913H6ZNm4YBAwbg/vvvRyAQwLp16/Dee+9h8ODBePLJJ3HrrbciOzsbv//97wEAeXl5cfs3b948XHfddejfvz+mT5+OsrIyPPXUU/joo4+wadMmtGzZUrY1DAMlJSUoLCzEH//4R7z77rt4/PHH0bVrV9xyyy113od58+YhOzsbEydORHZ2Nt577z1MmTIFFRUVeOyxxwBYcxDl5eXYuXMnZsyYAQDIzs6Oe87rrrsOr732GiZOnIgLL7wQHTp0wKeffor77rsPY8eOxcUXXyzb7tu3D4Zh1NlHAMjMzERmZiYAYNOmTQCAM88809OmX79+0DQNmzZtwi9/+cu459q0aRNOOeUU5OTkeLafddZZAIDNmzfLPofD4ajrBAIB9OnTR/YjHrt27cKOHTtwxhln1Du++nC+//fddx8+/vhjPP/882jZsiXWrFmDjh074g9/+APefvttPPbYY+jZsydGjx7tOb5fv36YMWMGPv/8c/Ts2fOw+8OkmHRLvHQzevRo0jSN/vnPf0btc96inLezgQMHet6Y9+zZQ4FAgAYPHuyZt5g5cyYBoDlz5hCRa/9evHhx3H7MmDGDANAPP/yQUP8bctz8+fNJ07Qou74zf/DRRx8REdGWLVtI0zS6/PLLo+Zh1DfKeCa1SA2npqaGTjjhBOrZsycdOnRItnvrrbcIAE2ZMkVuGzNmDAGg+++/33POvn37Ur9+/eq+CWSZpyL51a9+RZmZmR4tLlGT2u7du6lVq1Z04YUXUnV1NfXt25c6duwYpVXE0vxiLao2MG7cONJ1PeZ127RpQ1dffXWdfevRowddcMEFUds///xzAkCzZ88mIqLFixcTAFq9enVU2+HDh1N+fn6d13n33XcJAP3f//1f1L7IMTnE03BKSko836WioiISQtDNN98st4XDYWrfvn3M75ij/S1atKjOPjPNk2PaS800TSxZsgSXXHJJ1NsfAAghPJ9vvPFG6LouP7/77ruoqanBhAkToGmap11OTg6WLl0KAMjNzQUAvPPOOzh48GDMvjhv+m+88QZM02zwGBpy3OLFi9G9e3d069YNe/fulcsFF1wAAFi5ciUAYMmSJTBNE1OmTPGMB4i+Fw1h/fr12LNnD379618jFArJ7UOHDkW3bt3k/VG5+eabPZ/POecc/Oc//6n3WhkZGXL9p59+wt69e3HOOefg4MGD+OqrrxLuu0N+fj5mzZqF5cuX45xzzsHmzZsxZ86cKK3i5ZdfxvLly+td1Df2Q4cOeTRolVAohEOHDtXZt0OHDiEYDMY81tmv/huvbX3X+fHHHwEAxx13XJ3tGsLYsWM936XCwkIQEcaOHSu36bqOM888M+bf3enD3r17D7svTOo5pk1qP/zwAyoqKhqsmnfu3Nnz2YlHOPXUUz3bA4EAunTpIvd37twZEydOxBNPPIGXX34Z55xzDi699FL88pe/lMJoxIgR+POf/4wbbrgBd999NwYNGoQrrrgCV111VdSPv0pDjtuyZQu+/PJLtGnTJuY59uzZAwDYunUrNE3Daaed1qD7UR/x7g8AdOvWDR9++KFnWygUiurjcccdh3379tV7rc8//xyTJ0/Ge++9h4qKCs++8vLyRLvu4eqrr8Zf//pXLF26FDfddBMGDRoU1eZnP/tZwufNyMhATU1NzH1VVVUeIRrv+Orq6pjHOvvVf+O1re86DpSE4sAdO3b0fHa+/x06dIjaHuvv7vShMS9ATPo5pgVOojT0wYzF448/jmuvvRZvvPEG/vGPf+A3v/kNpk+fjo8//hjt27dHRkYGVq9ejZUrV2Lp0qVYtmwZFi1ahAsuuAD/+Mc/PJpVZJ/qO840TfTq1QtPPPFEzHNEPuzpIt4Y62P//v0499xzkZOTg/vvvx9du3ZFKBTCxo0bcddddyWkMcbixx9/xPr16wEAX3zxBUzTjHoJ+OGHHxo0h5OdnS3njdq2bQvDMLBnzx6ccMIJsk1NTQ1+/PFHFBQU1Hmutm3bYteuXVHbd+/eDQDy+LZt23q2R7at7zrHH388ADRI8DvEE07x/saxtsc6h9OH1q1bN7gvTPPhmDaptWnTBjk5Ofjss88adbwTAPf11197ttfU1GDbtm1RAXK9evXC5MmTsXr1anzwwQfYtWsXZs+eLfdrmoZBgwbhiSeewBdffIGHHnoI7733njR5xaO+47p27Yr//ve/GDRoEIqLi6MWRwPp2rUrTNPEF198Uef1Gvp2Ge/+ONuSFUC4atUq/Pjjj5g3bx5uu+02/O///i+Ki4tjmoAa82Y8btw4/PTTT5g+fTo+/PDDmIGj/fv3R9u2betd/vjHP8pj+vTpAwBSmDmsX78epmnK/fHo06cP/v3vf0dpdOvWrfOcv2fPnvD5fFHXqampwebNm+u9Trdu3QAA27Zti7n/p59+itrmaM3JxulD9+7dm+T8TNNyTAscTdMwbNgw/N///V/UwwjUb0IoLi5GIBDA008/7Wn74osvory8HEOHDgUAVFRUIBwOe47t1asXNE2TZo7//ve/Ued3fghimUIcGnLcz3/+c+zatQsvvPBCVNtDhw5Jj7thw4ZB0zTcf//9UVqBOr6srCzs378/bp8czjzzTJxwwgmYPXu2Zwx///vf8eWXX8r7c7g4b8dqH2tqavDMM89Etc3KykrIxPa3v/0NixYtwsMPP4y7774bV199NSZPnox///vfnnaNmcO54IIL0KpVKzz77LOecz377LPIzMz03J+9e/fiq6++8swBXnXVVTAMA88//7zcVl1djblz56KwsFBqrrm5uSguLsZf//pXj3CYP38+Dhw4gOHDh9d5D9q1a4cOHTrEfEYARKUy+vvf/46qqqqkmOAi2bBhA3Jzc9GjR4+kn5tJAenyVmgu7Ny5k/Lz8ykzM5MmTJhAzz33HE2bNo169OghY2kcD5tYnmxTp04lADR48GCaOXMm3XrrraTrOvXv359qamqIiOj111+ndu3a0YQJE+iZZ56hp59+mvr3709+v5/Wrl1LRES33XYb9e3blyZPnkwvvPACPfTQQ9SuXTtq3769J1YnkoYcZxgGXXzxxSSEoKuvvpr+9Kc/0ZNPPkk333wztWrVyjOue++9lwDQgAED6I9//CP96U9/otGjR9Pdd98t2/z6178mIQQ98MAD9Morr8jI71hxOM69KywspCeffJImTZpEmZmZ1KlTJ0+skhOHE+/+1sXevXvpuOOOoxNPPJEef/xxeuKJJ6hv377Uu3fvqP48+uijBIB++9vf0oIFC+jNN9+Me96ysjJq3bo1nX/++dKzau/evZSXl0dFRUVJyagwa9YsAkBXXXUVvfDCCzR69GgCQA899JCnnXMfImOchg8fLmNsnnvuORowYAD5fD56//33Pe02bNhAwWDQk2kgFArR4MGDG9TP8ePHU7t27aLiXwBQRkYGDRkyhJ599lm69957KScnh3Jzc+mkk06iBQsWEFH8Z8gZV6SXZbzvQ8+ePemXv/xlg/rMND+OeYFDRLR9+3YaPXo0tWnThoLBIHXp0oXGjRsXFfgZS+AQWW7Q3bp1I7/fT3l5eXTLLbd4fkz/85//0PXXX09du3alUChErVq1ovPPP5/effdd2WbFihV02WWXUUFBAQUCASooKKCRI0fSv//97zr73tDjampq6JFHHqEePXpQMBik4447jvr160f33XdflIvvnDlzqG/fvrLdueeeS8uXL5f7S0tLaejQodSiRYsGBX4uWrRInq9Vq1Z1Bn5G0hCBQ0T00Ucf0dlnn00ZGRlUUFBAd955J73zzjtR/Tlw4AD94he/oJYtW9Yb+HnFFVdQixYt6Ntvv/Vsf+ONNwgAPfLII/X2qyE8//zzdOqpp1IgEKCuXbvSjBkzon7Y4wmcQ4cO0e233075+fkUDAapf//+tGzZspjX+eCDD2jAgAEUCoWoTZs2NG7cOKqoqGhQHzdu3CgDN1UA0MSJE2n48OGUkZFBbdu2pZkzZ9Ls2bMpMzOTbrjhBiJKjsD58ssvCYDnuWGOLARRE+i9DMMcdQwaNAgFBQWYP3++3CaEwNSpUzFt2rQmv/6ECROwevVqbNiwgb3UjlCO6TkchmEazh/+8AcsWrQobeUJ/vznP+PBBx9kYXMEw27RDMM0iMLCwrhxQ03N8ccfn1ApBaZ5whoOwzAMkxJYw2EYptHwFDCTCKzhMAzDMCmBBQ7DMAyTEtik1kBM08T333+PFi1asJcMwzQBRISffvoJBQUFdSasZY5cWOA0kO+//77ZJLlkmKOZ7777Du3bt093N6K45poLsXPXD1i1chO/dDYSFjgNpEWLFvaaBoC/bAyTfAiAqTxrzYe1a9fijTc+RIsWmVi8eDF+/vOfp7tLRyTNTm999tlncfrppyMnJwc5OTkoKirC3//+9zqPWbx4Mbp164ZQKIRevXrh7bff9uwnIkyZMgVt27ZFRkYGiouLsWXLloT65b7RCF544aXJFjQ77YGI8Lvbb8RvJ/4cDzwwFpMm/bbOhLpMfJqdwGnfvj0efvhhbNiwAevXr8cFF1yAyy67DJ9//nnM9mvWrMHIkSMxduxYbNq0CcOGDcOwYcM8JQceffRRPP3005g9ezbWrVuHrKwslJSUyEJVDMMw8ViyZAn+s/V73H771Rg9pgRZWSE88+zv0t2tI5IjIpdaq1at8Nhjj3nK0DqMGDEClZWVeOutt+S2s88+G3369MHs2bNBRCgoKMDvfvc73H777QCsCpB5eXmYN28err766gb1oaKiwq5OqMN5E2MYJpkQAAPl5eVRJbzTRW1tLXr06ILf/nY4bvrVpQCAZcs+wehRD2Hr1u2yxDvTMJqdhqNiGAYWLlyIyspKFBUVxWyzdu1aFBcXe7aVlJRg7dq1AKyCTaWlpZ42ubm5KCwslG1iUV1djYqKCs/CMMyxxeznboeua7h+rFubqKSkP/r0PQkP/eGWNPbsyKRZCpxPP/0U2dnZCAaDuPnmm/H666/jtNNOi9m2tLQUeXl5nm15eXkoLS2V+51t8drEYvr06cjNzZULe6gxzLFFRUUFHrj/JUyffhN8PrcEthACjzxyM2bNfD0tiUyPZJqlwDn11FOxefNmrFu3DrfccgvGjBlTb9njZDNp0iSUl5fL5bvvvkvp9RmGSS/TH/41unXviP+9ZEDUvr59T8aVV/4Pfv/7G9PQsyOXZukWHQgEcNJJJwEA+vXrh3/+85946qmn8Nxzz0W1zc/PR1lZmWdbWVkZ8vPz5X5nW9u2bT1t6qrlHgwGEQwGD3coDMMcgezcuRNPP/X/sOK9GXG95u5/YCx6nDYGmzZtQt++fVPcwyOTZqnhRGKaZlw3xKKiIqxYscKzbfny5XLOp3PnzsjPz/e0qaiowLp16+LOCzEMc2xz77034pJLBqB//25x23TsmIfxt16B2++4gZOYNpBmp+FMmjQJQ4YMQceOHfHTTz9hwYIFWLVqFd555x0AwOjRo9GuXTtMnz4dAHDbbbfh3HPPxeOPP46hQ4di4cKFWL9+PZ5//nkAlr11woQJePDBB3HyySejc+fOuPfee1FQUIBhw4ala5gMwzRT/vWvf2Hhwvfwr0/n1tv2rrt+gVNPuQbLli3DkCFDUtC7I5tmJ3D27NmD0aNHY/fu3cjNzcXpp5+Od955BxdeeCEAYMeOHZ48SwMGDMCCBQswefJk3HPPPTj55JOxZMkS9OzZU7a58847UVlZiZtuugn79+/HwIEDsWzZMoRCoZSPj2GY5s0dd9yAX918Kbp0Kai3bcuW2fj95FG4885xGDx4C3Rdr/eYY5kjIg6nOcBxOAzT1KQ/Dmf58uX4+c+vwL+3vIxWrRrWh5qaWvTqeS3uuusXuPHGx5q4h0c2R8QcDsMwTFNjGAbuuOMWTLrnlw0WNgAQCPjx0EM3YurUuaisrGzCHh75sMBhGIYBMH/+ZOzffwDjxl2e8LFXXnUuOnQ8AY8/8Zsm6NnRAwschmGOeQ4dOoQpU+bggQfGIhQKJHy8EAKPPnoLHnv0lagwDcaFBQ7DMMc8M568DW3a5OLqkYMafY6BA3th0KB+mDbtpiT27OiCnQYaCDsNMExTkx6ngQMHDqBdu3z87f/djwsuOOOwzvX11zvQ74wb8eWXX6NTp07J6eBRBGs4DMMc05SXl6OiohLnndfnsM916qkd0aZNS3z//feH37GjkGYXh8MwDJMWTDPdPTjqYQ2HYRiGSQms4TAMwwBJ1HB4WjweLHAYhmGA5AkcljdxYYHDMAwDAETWwjQZPIfDMAzDpATWcBiGYQD2UksBLHAYhmEAFjgpgAUOwzAMwF5qKYDncBiGYZiUwAKHYRgGsDScZCwJKjirV6/GJZdcgoKCAgghsGTJEs9+IUTM5bHH4hd7mzZtWlT7bt26NeKmJBc2qTEMwwBpm8OprKxE7969cf311+OKK66I2r97927P57///e8YO3YsrrzyyjrP26NHD7z77rvys8+X/p/79PeAYRimGSDIhEjD9MuQIUMwZMiQuPvz8/M9n9944w2cf/756NKlS53n9fl8UcemGzapMQzDHCGUlZVh6dKlGDt2bL1tt2zZgoKCAnTp0gXXXHMNduzYkYIe1g1rOAzDMEBSvdRqampQUVHh2RoMBhEMBg/rzH/5y1/QokWLmKY3lcLCQsybNw+nnnoqdu/ejfvuuw/nnHMOPvvsM7Ro0eKw+nA4sIbDMAwDACYlZyFg/vz5yM3N9SzTp08/7C7OmTMH11xzDUKhUJ3thgwZguHDh+P0009HSUkJ3n77bezfvx+vvvrqYffhcGANh2EYJsmMGjUKM2bM8Gw7XO3mgw8+wNdff41FixYlfGzLli1xyimn4JtvvjmsPhwuLHAYhmGApHqpBQKBpJfJfvHFF9GvXz/07t074WMPHDiArVu3YtSoUUntU6KwSY1hGAZIXhxOghw4cACbN2/G5s2bAQDbtm3D5s2bPZP8FRUVWLx4MW644YaY5xg0aBBmzpwpP99+++14//338e2332LNmjW4/PLLoes6Ro4cmXD/kglrOAzDMABAiQdtJoP169fj/PPPl58nTpwIABgzZgzmzZsHAFi4cCGIKK7A2Lp1K/bu3Ss/79y5EyNHjsSPP/6INm3aYODAgfj444/Rpk2bphtIAxBEXACiIVRUVCA3NxeADkCkuzsMcxRCAAyUl5cn3RxVF7t27UL79u1R++1foGmHb/TpdPYELFz8JgYMGJCE3h1dsIbDMAwDcPLOFMACh2EYBrBcmpMhLFjexIUFDsMwDMD1cFIAe6kxDMMwKYE1HIZhGIA1nBTAAodhGAaAMM0k+Z/yJE48WOAwDMMAAJG1ME0Gz+EwDMMwKYE1HIZhGCB5czisJMWFBQ7DMAzATgMpgE1qDMMwTEpgDYdhGAZIXqYBJi4scBiGYQA2qaUAFjgMwzBAEp0GWEuKB8/hMAzDMCmBNRyGYRiAAz9TAAschmEYgOdwUgALHIZhGIC91FIAz+EwDMMwKYE1HIZhGIBNaimABQ7DMAzAbtEpgAUOwzAMwHM4KYDncBiGYZiUwBoOwzAMAJDJCk4TwwKHYRgGYJNaCmCTGsMwDJMSWMNhGIYB2C06BbDAYRiGAZJnUmOrXFxY4DAMwwC2wEmGlsMSJx48h8MwDMOkBNZwGIZhAFvDYZoSFjgMwzCAHYcj0t2LoxoWOAzDMABrOCmg2c3hTJ8+Hf3790eLFi1wwgknYNiwYfj666/rPW7x4sXo1q0bQqEQevXqhbffftuzn4gwZcoUtG3bFhkZGSguLsaWLVuaahgMwzBMBM1O4Lz//vsYN24cPv74Yyxfvhy1tbUYPHgwKisr4x6zZs0ajBw5EmPHjsWmTZswbNgwDBs2DJ999pls8+ijj+Lpp5/G7NmzsW7dOmRlZaGkpARVVVWpGBbDMM0dk5KzsKIUF0HUvHNp//DDDzjhhBPw/vvv43/+539ithkxYgQqKyvx1ltvyW1nn302+vTpg9mzZ4OIUFBQgN/97ne4/fbbAQDl5eXIy8vDvHnzcPXVV9fbj4qKCuTm5gLQAbCdl2GSDwEwUF5ejpycnJRdddeuXWjfvj3Cr90FTTv8Z/vEG57Bwjf+jgEDBiShd0cXzU7DiaS8vBwA0KpVq7ht1q5di+LiYs+2kpISrF27FgCwbds2lJaWetrk5uaisLBQtomkuroaFRUVnoVhGIZpPM1a4JimiQkTJuBnP/sZevbsGbddaWkp8vLyPNvy8vJQWloq9zvb4rWJZPr06cjNzZVLhw4dDmcoDMM0d5JlUkvQprZ69WpccsklKCgogBACS5Ys8ey/9tprIYTwLBdddFG95501axY6deqEUCiEwsJCfPLJJwn1qylo1gJn3Lhx+Oyzz7Bw4cKUX3vSpEkoLy+Xy3fffZfyPjAMk0KSJnASo7KyEr1798asWbPitrnooouwe/duubzyyit1nnPRokWYOHEipk6dio0bN6J3794oKSnBnj17Eu5fMmm2btHjx4/HW2+9hdWrV6N9+/Z1ts3Pz0dZWZlnW1lZGfLz8+V+Z1vbtm09bfr06RPznMFgEMFg8DBGwDDMEYVpIinzswnKnCFDhmDIkCF1tgkGg/J3rCE88cQTuPHGG3HdddcBAGbPno2lS5dizpw5uPvuuxPrYBJpdhoOEWH8+PF4/fXX8d5776Fz5871HlNUVIQVK1Z4ti1fvhxFRUUAgM6dOyM/P9/TpqKiAuvWrZNtGIZhkkVNTU3UHHB1dXWjz7dq1SqccMIJOPXUU3HLLbfgxx9/rPPaGzZs8MxZa5qG4uLiuHPWqaLZCZxx48bhr3/9KxYsWIAWLVqgtLQUpaWlOHTokGwzevRoTJo0SX6+7bbbsGzZMjz++OP46quvMG3aNKxfvx7jx48HAAghMGHCBDz44IN488038emnn2L06NEoKCjAsGHDUj1EhmGaI0TJWQDMnz/fMwecm5uL6dOnN6pbF110EV566SWsWLECjzzyCN5//30MGTIEhmHEbL93714YhpHQnHWqaHYmtWeffRYAcN5553m2z507F9deey0AYMeOHdA0V1YOGDAACxYswOTJk3HPPffg5JNPxpIlSzyOBnfeeScqKytx0003Yf/+/Rg4cCCWLVuGUCjU5GNiGOYIIImZBkaNGoUZM2Z4tjXWRK+GbfTq1Qunn346unbtilWrVmHQoEGH1c9U0+wETkPCglatWhW1bfjw4Rg+fHjcY4QQuP/++3H//fcfTvcYhjlaSaLACQQCTRZL1KVLF7Ru3RrffPNNTIHTunVr6Lpe57x2umh2JjWGYRgmPjt37sSPP/7ocYBSCQQC6Nevn2fO2jRNrFixIu1z1s1Ow2EYhkkLyfJSS9BN7cCBA/jmm2/k523btmHz5s1o1aoVWrVqhfvuuw9XXnkl8vPzsXXrVtx555046aSTUFJSIo8ZNGgQLr/8cjlvPXHiRIwZMwZnnnkmzjrrLDz55JOorKyUXmvpggUOwzAMkDyTWoKnWb9+Pc4//3z5eeLEiQCAMWPG4Nlnn8W//vUv/OUvf8H+/ftRUFCAwYMH44EHHvDMCW3duhV79+6Vn0eMGIEffvgBU6ZMQWlpKfr06YNly5ZFORKkGhY4DMMwQNrKE5x33nl1zl2/88479Z7j22+/jdo2fvx4qfE0F3gOh2EYhkkJrOEwDMMAXIAtBbDAYRiGAUAmcSmbJoZNagzDMExKYA2HYRgGsFPTJOM8STjHUQoLHIZhGIDncFIACxyGYRiABU4K4DkchmEYJiWwhsMwDAOwhpMCWOAwDMMASRQ4LLjiwQKHYRgGSYzDYXkTF57DYRiGYVICazgMwzAAz+GkABY4DMMwAAucFMACh2EYBmCBkwJ4DodhGIZJCazhMAzDAJxLLQWwwGEYhgFAJsuKpoZNagzDMExKYA2HYRgGYKeBFMACh2EYBmCBkwJY4DAMw4DncFIBz+EwDMMwKYE1HIZhGMByizaTdB4mJixwGIZhAEvYiHR34uiGBQ7DMAzs8gQscJoUnsNhGIZhUgJrOAzDMACb1FIACxyGYRiAfaJTAAschmEYJG8Oh53U4sNzOAzDMExKYA2HYRgG4DmcFMACh2EYBnZqGxY4TQqb1BiGYZiUwBoOwzAMwCa1FMACh2EYBkk0qbGXWlzYpMYwDANYGk4ylgRZvXo1LrnkEhQUFEAIgSVLlsh9tbW1uOuuu9CrVy9kZWWhoKAAo0ePxvfff1/nOadNmwYhhGfp1q1b4p1LMixwGIZh0khlZSV69+6NWbNmRe07ePAgNm7ciHvvvRcbN27Ea6+9hq+//hqXXnppveft0aMHdu/eLZcPP/ywKbqfEGxSYxiGgRWwmQ5r2JAhQzBkyJCY+3Jzc7F8+XLPtpkzZ+Kss87Cjh070LFjx7jn9fl8yM/PT2pfDxfWcBiGYWDP4SRhaWrKy8shhEDLli3rbLdlyxYUFBSgS5cuuOaaa7Bjx46m71w9sIbDMAwDJNVLraamBhUVFZ5twWAQwWDwsM5bVVWFu+66CyNHjkROTk7cdoWFhZg3bx5OPfVU7N69G/fddx/OOeccfPbZZ2jRosVh9eFwYA2HYRgmycyfPx+5ubmeZfr06Yd1ztraWvz85z8HEeHZZ5+ts+2QIUMwfPhwnH766SgpKcHbb7+N/fv349VXXz2sPhwurOEwDMMguW7Ro0aNwowZMzybD0e7cYTN9u3b8d5779Wp3cSiZcuWOOWUU/DNN980ug/JgDUchmEY2E4DSVgAIBAIICcnx7M0VuA4wmbLli149913cfzxxyd8jgMHDmDr1q1o27Zto/qQLFjgMAzDAIApkrMkyIEDB7B582Zs3rwZALBt2zZs3rwZO3bsQG1tLa666iqsX78eL7/8MgzDQGlpKUpLS1FTUyPPMWjQIMycOVN+vv322/H+++/j22+/xZo1a3D55ZdD13WMHDnysG/T4cAmNYZhmDSyfv16nH/++fLzxIkTAQBjxozBtGnT8OabbwIA+vTp4zlu5cqVOO+88wAAW7duxd69e+W+nTt3YuTIkfjxxx/Rpk0bDBw4EB9//DHatGnTtIOpBxY4DMMwSF+26PPOOw9UR9W2uvY5fPvtt57PCxcuPNxuNQkscBiGYQAQCRBn72xSeA6HYRiGSQms4TAMwyB5JrUGWMCOWVjgMAzDgCt+pgIWOAzDMEjmHA5LrXjwHA7DMAyTEljDYRiGAUCmAAnWTpoSFjgMwzBIXz2cYwkWOAzDMOA4nFTQ7OZw6qrvHY9Vq1bhjDPOQDAYxEknnYR58+ZFtZk1axY6deqEUCiEwsJCfPLJJ8nvPMMwDBOXZidw6qrvHYtt27Zh6NChOP/887F582ZMmDABN9xwA9555x3ZZtGiRZg4cSKmTp2KjRs3onfv3igpKcGePXuaahgMwxxhkCmSsrBdLj7NzqRWV33vWMyePRudO3fG448/DgDo3r07PvzwQ8yYMQMlJSUAgCeeeAI33ngjrrvuOnnM0qVLMWfOHNx9993JHwTDMEccPIfT9DQ7DSdR1q5di+LiYs+2kpISrF27FoBV6nXDhg2eNpqmobi4WLZhGIYhEslZ0j2QZkyz03ASpbS0FHl5eZ5teXl5qKiowKFDh7Bv3z4YhhGzzVdffRX3vNXV1aiurpafI+uTMwzDMIlxxGs4TcX06dM99cg7dOiQ7i4xDNOEmKZIysLE54gXOPn5+SgrK/NsKysrQ05ODjIyMtC6dWvouh6zTX5+ftzzTpo0CeXl5XL57rvvmqT/DMM0D5JZYpqJzREvcIqKirBixQrPtuXLl6OoqAiAVVu8X79+njamaWLFihWyTSyCwWBUTXKGYRim8TS7OZwDBw7gm2++kZ+d+t6tWrVCx44dMWnSJOzatQsvvfQSAODmm2/GzJkzceedd+L666/He++9h1dffRVLly6V55g4cSLGjBmDM888E2eddRaefPJJVFZWSq81hmEYDvxsepqdwKmrvve8efOwe/du7NixQ+7v3Lkzli5dit/+9rd46qmn0L59e/z5z3+WLtEAMGLECPzwww+YMmUKSktL0adPHyxbtizKkYBhmGOXpAkcNqvFRVBDCmYzqKioQG5uLgAdnH6cYZoCAmCgvLw8pSbsXbt2oX379vjP0JugJSF554B3X8biFe9gwIABSejd0cURP4fDMAzDHBk0O5MawzBMOuDyBE0PCxyGYRgkL7UNz1HEhwUOwzAMAJMEeH62aeE5HIZhGCYlsIbDMAwDjsNJBSxwGIZhwCa1VMACh2EYBqzhpAKew2EYhmFSAms4DMMwAMwknYfdouPDAodhGAacSy0VsEmNYRiGSQms4TAMw4C91FIBCxyGYRiwl1oqYIHDMAwDwOS5lyaH53AYhmGYlMAaDsMwDJJpUmOzXDwS0nBM08TKlStx//33Y+zYsRg5ciR+85vfYO7cufjuu++aqo8MwzBNjgmRlCVRy9zq1atxySWXoKCgAEIILFmyxLOfiDBlyhS0bdsWGRkZKC4uxpYtW+o976xZs9CpUyeEQiEUFhbik08+SbBnyadBAufQoUN48MEH0aFDB1x88cX4+9//jv3790PXdXzzzTeYOnUqOnfujIsvvhgff/xxU/eZYRgm6RAlZ0mUyspK9O7dG7NmzYq5/9FHH8XTTz+N2bNnY926dcjKykJJSQmqqqrinnPRokWYOHEipk6dio0bN6J3794oKSnBnj17Eu9gEmmQSe2UU05BUVERXnjhBVx44YXw+/1RbbZv344FCxbg6quvxu9//3vceOONSe8swzDM0caQIUMwZMiQmPuICE8++SQmT56Myy67DADw0ksvIS8vD0uWLMHVV18d87gnnngCN954I6677joAwOzZs7F06VLMmTMHd999d9MMpAE0SMP5xz/+gVdffRUXX3xxTGEDACeeeCImTZqELVu24IILLkhqJxmGYZoak0RSlmSybds2lJaWori4WG7Lzc1FYWEh1q5dG/OYmpoabNiwwXOMpmkoLi6Oe0yqaJCG07179waf0O/3o2vXro3uEMMwTDowkbzAz5qaGlRUVHi2BYNBBIPBhM5TWloKAMjLy/Nsz8vLk/si2bt3LwzDiHnMV199ldD1k02jvNSqqqrwr3/9C3v27IFpelPeXXrppUnpGMMwzJHK/Pnzcf7553u2TZ06FdOmTUtPh5oJCQucZcuWYfTo0di7d2/UPiEEDMNISscYhmFSCVHy8m6OGjUKM2bM8GxLVLsBgPz8fABAWVkZ2rZtK7eXlZWhT58+MY9p3bo1dF1HWVmZZ3tZWZk8X7pIOPDz1ltvxfDhw7F7926YpulZWNgwDHOkksw5nEAggJycHM/SGIHTuXNn5OfnY8WKFXJbRUUF1q1bh6KiopjHBAIB9OvXz3OMaZpYsWJF3GNSRcIaTllZGSZOnBhlH2QYhjmSISQn8DNRLenAgQP45ptv5Odt27Zh8+bNaNWqFTp27IgJEybgwQcfxMknn4zOnTvj3nvvRUFBAYYNGyaPGTRoEC6//HKMHz8eADBx4kSMGTMGZ555Js466yw8+eSTqKyslF5r6SJhgXPVVVdh1apV7BjAMAyTBNavX++Z75k4cSIAYMyYMZg3bx7uvPNOVFZW4qabbsL+/fsxcOBALFu2DKFQSB6zdetWzzTHiBEj8MMPP2DKlCkoLS1Fnz59sGzZsrQrCoIosVClgwcPYvjw4WjTpg169eoV5Sb9m9/8JqkdbC5UVFQgNzcXgA5OXcEwTQEBMFBeXo6cnJyUXXXXrl1o3749Vg24HZo4/Gf7qn/Oxusrl2HAgAFJ6N3RRcIaziuvvIJ//OMfCIVCWLVqFYTyBxJCHLUCh2GYoxuuh9P0JCxwfv/73+O+++7D3XffDU3jZNMMwxwdJGsOh4lPwhKjpqYGI0aMYGHDMAzDJETCUmPMmDFYtGhRU/SFYRgmbZiUnIWJT8ImNcMw8Oijj+Kdd97B6aefHuU08MQTTyStcwzDMKkieW7RbJaLR8IC59NPP0Xfvn0BAJ999lnSO8QwDJMOWDuxWL16daOO69SpEzp27Fhnm4QFzsqVKxvVGYZhGKb5M2bMmISPEUJgwoQJ9XopJ63E9Pbt2/HYY49h5syZyTolwzBMymC3aItt27Y12bkTFjjnn3++J/bGYffu3di9ezcLHIZhjkgIyUveycQmYS+1Pn36oHfv3nLp2bMnMjMz8c0338QtkcowDMMcObz66quoqamRn3fu3OkpRXPw4EE8+uijCZ834dQ28fjzn/+MF198Me0V5ZoKTm3DME1NelPb/F//SUlJbXPt5plYsvLvR3RqG13XsXv3bpxwwgkAgJycHGzevBldunQBYCVxLigoSLhCQNKiNwcNGoTNmzcn63QMwzApxUzScjSY5SL1kCTpJclzGnjvvfeiKtwxDMMcKRBxapumJmGBc8UVV0RtKysrw7p163D++ed79r/22muH1zuGYRjmqCFhgWPNY0RvO+WUU5LSIYZhmHRg1t/kmOKdd96Rv/dOxVAn2H///v2NOmfCAmfu3LmNuhDDMExzhjMNeIkMAP3Vr37l+RwrPKY+GiRwiKhRJ2cYhjlS4PIELqoLdDJpkJdajx49sHDhQo9fdiy2bNmCW265BQ8//HBSOscwDMMcPTRIw/nTn/6Eu+66C7/+9a9x4YUX4swzz0RBQQFCoRD27duHL774Ah9++CE+//xzjB8/HrfccktT95thGCapJMukliQP4rTRuXPnRlm0kpZLbdCgQVi/fj0+/PBDLFq0CC+//DK2b9+OQ4cOoXXr1ujbty9Gjx6Na665Bscdd1zCHWUYhkk3bFKzmDdvXqOO69SpU71tEnIaGDhwIAYOHNiozjAMwzRn2GnA4txzz22yc3OdaIZhGCYlJC3TAMMwzJEMazhNDwschmEY8BxOKmCTGsMwDJMSWMNhGIYBm9RSQcIazgUXXID77rsvavu+fftwwQUXJKVTDMMwqYbLEzQ9CWs4q1atwqeffopNmzbh5ZdfRlZWFgCgpqYG77//ftI7yDAMkwq4PEHT06g5nHfffRelpaU4++yz8e233ya5SwzDMMzRSKPmcNq2bYv3338f1113Hfr374/Fixeje/fuye4bcwxzxhlnpLsLko0bN6a7C0wK4PIETU/CGo6TYycYDGLBggW47bbbcNFFF+GZZ55JeucYhmFShUnJWZj4JKzhRNa2njx5Mrp37x5VO4FhGOZIgsAT/k1NwgJn27ZtaNOmjWfblVdeiW7dumH9+vVJ6xjDMAxzdJGwSe3EE0+Mmbq6R48eSdNyZs2ahU6dOiEUCqGwsBCffPJJne0XL16Mbt26IRQKoVevXnj77bc9+4kIU6ZMQdu2bZGRkYHi4mJs2bIlKX1lGObowDKJicNeWEuKT7PLNLBo0SJMnDgRU6dOxcaNG9G7d2+UlJRgz549MduvWbMGI0eOxNixY7Fp0yYMGzYMw4YNk7W3AeDRRx/F008/jdmzZ2PdunXIyspCSUkJqqqqUjUshmGaOZSkhYlPsxM4TzzxBG688UZcd911OO200zB79mxkZmZizpw5Mds/9dRTuOiii3DHHXege/fueOCBB3DGGWdg5syZACzt5sknn8TkyZNx2WWX4fTTT8dLL72E77//HkuWLEnhyBiGac6w00DT06wETk1NDTZs2IDi4mK5TdM0FBcXY+3atTGPWbt2rac9AJSUlMj227ZtQ2lpqadNbm4uCgsL454TAKqrq1FRUeFZGIZhmMbTrATO3r17YRgG8vLyPNvz8vJQWloa85jS0tI62zv/JnJOAJg+fTpyc3Pl0qFDh4THwzDMkUOyUtskSqdOnSCEiFrGjRsXs/28efOi2oZCoUZcOfVw8s44TJo0CRMnTpSfKyoqWOgwzFEMUXrmYP75z3/CMAz5+bPPPsOFF16I4cOHxz0mJycHX3/9tfwcy5GrOdKsBE7r1q2h6zrKyso828vKypCfnx/zmPz8/DrbO/+WlZWhbdu2njZ9+vSJ25dgMIhgMNiYYTAMwzSYyDCThx9+GF27dq2z1LMQIu5vYnOmWZnUAoEA+vXrhxUrVshtpmlixYoVKCoqinlMUVGRpz0ALF++XLbv3Lkz8vPzPW0qKiqwbt26uOdkGObYw4RIykIQqKmpiZoDrq6urrcPNTU1+Otf/4rrr7++Tq3lwIEDOPHEE9GhQwdcdtll+Pzzz5N5K5qMZiVwAGDixIl44YUX8Je//AVffvklbrnlFlRWVuK6664DAIwePRqTJk2S7W+77TYsW7YMjz/+OL766itMmzYN69evx/jx4wFYbwITJkzAgw8+iDfffBOffvopRo8ejYKCAgwbNiwdQ2QYphlClJwFBMyfP98zB5ybm4vp06fX24clS5Zg//79uPbaa+O2OfXUUzFnzhy88cYb+Otf/wrTNDFgwADs3LkzeTejiWhWJjUAGDFiBH744QdMmTIFpaWl6NOnD5YtWyYn/Xfs2AFNc+XkgAEDsGDBAkyePBn33HMPTj75ZCxZsgQ9e/aUbe68805UVlbipptuwv79+zFw4EAsW7bsiJloYxim6Ulm8s5Ro0ZhxowZnm0NMdG/+OKLGDJkCAoKCuK2KSoq8lhnBgwYgO7du+O5557DAw880PhOpwBBkcnRmJhUVFQgNzcXgA5wzYwmh7NFH4sQAAPl5eXIyclJ2VV37dqF9u3b44/dp0ITh2/0uf/fT2Dp+29jwIABCR23fft2dOnSBa+99houu+yyhI4dPnw4fD4fXnnllYSOSzXNzqTGMAyTDtId+Dl37lyccMIJGDp0aELHGYaBTz/91OMU1Vxpdia15o6u+44YF8QjmX/961/p7oLE5+PHJBUQkcc9OOXXR/pS05imiblz52LMmDFR37fRo0ejXbt2cg7o/vvvx9lnn42TTjoJ+/fvx2OPPYbt27fjhhtuSEfXE4KfJIZhGCQvLU1jTvPuu+9ix44duP7666P2Rc5b79u3DzfeeCNKS0tx3HHHoV+/flizZg1OO+20w+h1amCBwzAMk2YGDx4cVWvMYdWqVZ7PM2bMiHJIOFJggcMwDIP0ZRo4lmCBwzAMg+S6RTOxYYHDMAwDLi2QCtgtmmEYhkkJrOEwDMOAK3amAhY4DMMwYJNaKmCTGsMwDJMSWMNhGIYBQHZpgcM/DxMPFjgMwzCw4nDYNbppYYHDMAwDaw6HsyQ2LTyHwzAMw6QE1nAYhmHAcy+pgAUOwzAMkmhSY8kVFxY4DMMwAIhDP5scnsNhGIZhUgJrOAzDMEieSY11pPiwwGEYhgELilTAAodhGAYch5MKeA6HYRiGSQms4TAMw8BKbcM0LSxwGIZhYOVRY5Na08ImNYZhGCYlsIbDMAwDdotOBSxwGIZhwHM4qYAFDsMwDHgOJxXwHA7DMAyTEljDYRiGAZvUUgELHIZhGLBJLRWwwGEYhgFAlKzyBKwqxYPncBiGYZiUwBoOwzAMOA4nFbDAYRiGAQuKVMAmNYZhGCYlsIbDMAyDJNbDYVUpLixwGIZhwAXYUgELHIZhGDiKCasnTQnP4TAMw6SJadOmQQjhWbp161bnMYsXL0a3bt0QCoXQq1cvvP322ynq7eHDAodhGAaWSS0ZS6I6Uo8ePbB79265fPjhh3HbrlmzBiNHjsTYsWOxadMmDBs2DMOGDcNnn312eINPESxwGIZhYOVSS8aSKD6fD/n5+XJp3bp13LZPPfUULrroItxxxx3o3r07HnjgAZxxxhmYOXPmYYw8dbDAOQxEIxeGOdo4Gp4FE5SUJVG2bNmCgoICdOnSBddccw127NgRt+3atWtRXFzs2VZSUoK1a9cmfN10wE4DDMMwSaampgYVFRWebcFgEMFg0LOtsLAQ8+bNw6mnnordu3fjvvvuwznnnIPPPvsMLVq0iDpvaWkp8vLyPNvy8vJQWlqa/EE0AazhMAzDILkmtfnz5yM3N9ezTJ8+PeqaQ4YMwfDhw3H66aejpKQEb7/9Nvbv349XX301xaNPDazhMAzDILnlCUaNGoUZM2Z4tkVqN7Fo2bIlTjnlFHzzzTcx9+fn56OsrMyzraysDPn5+Y3vbAphDSdBkmF/bqy9O10Lk3rS/TdP1XekOX3XiCgpCwAEAgHk5OR4loYInAMHDmDr1q1o27ZtzP1FRUVYsWKFZ9vy5ctRVFR0+DcgBbDAYRiGSRO333473n//fXz77bdYs2YNLr/8cui6jpEjRwIARo8ejUmTJsn2t912G5YtW4bHH38cX331FaZNm4b169dj/Pjx6RpCQrBJjWEYBukpT7Bz506MHDkSP/74I9q0aYOBAwfi448/Rps2bQAAO3bsgKa5esGAAQOwYMECTJ48Gffccw9OPvlkLFmyBD179kxCz5seFjgMwzCw3KJTbdZbuHBhnftXrVoVtW348OEYPnx4E/WoaWGBkyhCWAuAxCySZlP0JnnUEbHW2IewIW966bbbHw5pG59o7netkc9FY6ImmSMKFjgMwzBgeZcKWOAwDMMgPSa1Yw0WOAzDMEiihsOaUlxY4CSMBuHYqBOxpVN63p2ood/+mN1LYN4pxtPa6BE3xzmKtI3v8CIXRDre2RvxXBCoef7dmaTCAodhGAbJM6mxghMfFjgMwzAATOI5nKaGBU6CCOGDkIFYOkQMMwDFMgZ7mhlN0bWY123YAxTHdBbHDBjTTOdp2hgX8PpNR6kwD8U1QTbx+OKOLa6ZqXGmtljf1+SgJ3xdIgKE4XxAUz0XDaXB5mem0XBqG4ZhGCYlNCuB89prr2Hw4ME4/vjjIYTA5s2bG3RcfTW+iQhTpkxB27ZtkZGRgeLiYmzZsqUJRsAwzJGKmaSFiU+zEjiVlZUYOHAgHnnkkQYf05Aa348++iiefvppzJ49G+vWrUNWVhZKSkpQVVXVFMNgGOYIJHkVP9k0Fw9BMScc0su3336Lzp07Y9OmTejTp0+dbUeMGIHKykq89dZbctvZZ5+NPn36YPbs2SAiFBQU4He/+x1uv/12AEB5eTny8vIwb948XH311Q3qU0VFBXJzcxEMtoYm/AAATfPFtL3HsgUTxX73ibe9fhL/s1Hc96/o7d6vhVHHvhjHN+Yr1cC5iqabg2jAuNyGiZ88Zr81ZXfkfr2Ofd5jPZdp1Dtk4+6pEHH6EGN7vOfENMP2ugHTrEVNzT6Ul5cjJyenUX1qDLt27UL79u0xKOeOpHy/Pqh4Fu99uAwDBgxIQu+OLpqVhtMY6qvxvW3bNpSWlnra5ObmorCw8IipA84wDHM0cMR7qdVX49v5N9E64NXV1aiurpafI+uTMwxzdMGpbZqetGk4L7/8MrKzs+XywQcfpKsrMZk+fbqnHnmHDh3S3SWGYZqQ5M3hMPFIm4Zz6aWXorCwUH5u165do85TX41v59+ysjJP2daysrI654cmTZqEiRMnys8VFRXo0KEDfHomfJpVKlbX/DHt1eq8jDovEGsOJe7cTiP8XeIdE3OaTu2j8pDI/ojIvpG8hmvmNmOc35BTAvVNDx7OvEXj5ipi49w365INmM8S8fZF4x2HHmNfrDEJpY0We13tRKw5kzhzEY25b/GOiT1XE3teKt5zYpi1AACDamGgOqoNc3SRNg2nRYsWOOmkk+SSkZHRqPPUV+O7c+fOyM/P97SpqKjAunXr6qwDHgwGo2qSMwxz9JIc/YYdo+uiWc3h/Pe//8WOHTvw/fffAwC+/vprAJaW4mgqo0ePRrt27TB9+nQAVo3vc889F48//jiGDh2KhQsXYv369Xj++ecBWG9ZEyZMwIMPPoiTTz4ZnTt3xr333ouCggIMGzYs4T4G9Az49EwAgE+EoNky23mDU7UCU/HM925XtZ7o6Op6I54b4NlWnzZFRJ42zj7PNlWDkfvJbUuOZqCORwc8GkN9xNNahH2OBrzhq8TxnLI6F0+bjKHhoa7xOZgNHCPgSfrqdlaOSQjNHZPQpHYgYtwf733Q6tUkGqzV1HHvYt1vodwLLaZWpsnnQ93n3FcTJsKaFZpgmNWoTfMMCs/hND3NSuC8+eabuO666+Rnx2V56tSpmDZtGoDG1fi+8847UVlZiZtuugn79+/HwIEDsWzZMoRCodQMjGGYZg8n72x6mmUcTnPEicNpndsXGbplXvOJEHRbZguyNRxh2pqNraLH0RwiNZCoz/VoMWZc1b1uzcbRrlTNiqBqMK724nw1Isch25iGPD6WZpBIEeZITUZ923e3i5hv/J6z1fGWHuueRv1d1MchhlbnPU/jx2ftERCabq9rHg3GXVe0IFkWQ/NoHI6mEVvLUIl9byK1kKgRRJwr8r6LCO0t1jikJYA0kLDun4EwwmRpONVmJWqNn7Dvp6/TFoczIOe2pMTh/LPiRazkOJyYNCsNh2EYJl2YMJOUIJbf4ePBAidB+vU6Cy18bQAAQcqAL8YtdOYEDBjybc7SC5w348h5nhgajoj+0ppxsunGzmxgxNzvaDaWpuNqM5H9MMmQba03/LBsK23wZMhjYs/3RHvrRb5Bet7alXkL71ty9Jt75DyG96Qx3tgpvkYZOSfljjmGVhdnfOo4PXMqccbn/KsJ3R2nHJubwUJAd9so2oJ3nsRt615XvWfRmZzj/bBqMbI+C4r9N/NqRu422R/SoMPpe/T1wgijWhwCAFShAgdr9uG9NV/H7FcqIGFyEbgmhgVOgoSQgyxqAQDIpBB88kfErVwoxQoRTPuH1vpJJ6VNtIBRBYMZ0/wT+83JEWrWdbxtvNeJMPfZQs0QYSmgpLAUYTgCyaAwCJbAMQXBtNc1RQh5hI+IL3AAxPxBFsqPqCZ0rxlJNUHFMB+hLuHj7vAKCNXMKFwzo7zHpAqZho9PiIaNz2qrQQifPR6f+0MtfNCF82hqrtlW7tcVU66IEADe8WvQ5Au3x+RG8VLjRP/gqoJFQEQJIEvECHkNTfZHQBPOdvd45x6HiXDQ+QkSQLWWXrdodhpoeo741DYMwzDMkQFrOAkSpAxkkuXdlqH74Hc0HPtfy93YwiAoGg7Jt2DlPdp98yd4NCCVWJqNR5Oh6HZSk/G49LqalSmMCO3LSaJoazUiDNPWYDShw7TfuIlMGLaWYdpfH1OEIWKY3DyT7TFeHVVzWZ0mJeXN3/O2rZiVINfiv6N67plwtRdd7jel6dAU5JoUBSV9fFZffVLb0eFzNSDo0Ox7qwkfdHI0HHs/+bxaBDlanxaloQgSURpKJLHuWdR5FA3GHZ/zNwJ0uM+B00YTArrj+6Ec43zna4kAw3qWDBg4JNLrNZq8ORwmHixwEiRAAQRsz6KQpsGnR5vUHBliEMG0zQ8muQYYIlc4OG1VgeQVHNFEih/VXBVpUrMEoCL0nHUyYcr5JROm/cMXtn9kBWlymwFd/uAaIgzduYTzbBJgyh8WV3iBTDl/4Fw3cj4mluks0rzkjXVyf2iFMj8Qa54iEqcFkSvySRjynukwQdIEZoKcvx3IMz5ShFWkEYZAMeecNOHzjM/appjGhE+ua+o6ucLH55gTSXcFDrmxLgLuj72I+Ne5Z26/YgkZL96oqGiBIoS7z1nXANeMJgBdRLd17r1uEAxbWAbMAAKUXoFjPaGHL3DYZSA+LHAYhmEAmMJMUvkLFjnxYIGTID7o8NuBpz5dSJOaZn9PTRJSKxECirYDmIrpy3kzdt6cNRLS/KWGgsRKBhgZOqXO4ZpS04pur3rKCQho9sSxIQx5gM8+V1g9iYBHmzHsdY+m42hqIizfyEm45idnkj463sb14pJv/hCK2UmdWI+t1Xjf4uNrOo6XnxA+RcO03rmtoRkwHS2EwtKMaDlHqOZDZdyRkBmRPSDG+DxmNJ9c19R1aSbzeTQba78OndyxSxOW6iHmcVxw7g2UbTE0nIgfW69G5B6najPO+UUcrcYxtTnPhyYgtX7ogN/+DvpMvc6/HXN0wAKHYRgGPIeTCljgJIga6y4g5JubfMPzTOYLGPbrsEYCzquxCVf1cc5lCkhVRQh3zkOHiCowaUY+E8p+5/qeuR+nbwSpWWlKG0ECmswFZ/dLkOwdkWtqqO+BdPWFiO115TiLPG+c/GlqOyH0mJpNpMuuiqNZmDDcY4UOSJfniP5KhwBNtok3vnj9jex33OPs/5wxuE4BmnRhdqP13bYaItaViXw57hh9iGU6iqXRRB/n1Wycc0kNRtGAdOX5UJ8T5ztqjdO9Rl0OH6mABU7TwwInQdQ4G4LrFKALtY2FCa9TgPQmUzzZVEcC9RqxEg55kn7GaOBNx+n2RTWpqedyJ87rtznLtvXYp+tNPJogpJioPOcnwxIW8P4gNmQs6nlUB4LI6yYT14gaf39D7x0JUv6mrtnKBEGT5j5X8Dgj0RSHhlhxUZbLhLNfuaBQj1PMwLJDBEf8mIKk0DdFbKujalr2PEs893HUwwKHYRgGyfNSY+LDAidBDJhu/IoJmPZrHpnuhL8BZb/yJqquk/KW5xwXT4OJHYcDZb+yHqH5eDQZ5S2SQJazgLNuT6g720yEYcB1hXYzERjy6jKLAZkyZiUyQr9eTUE+3xogzyGkI4T1Bu9cT4Mm0/u4pjAIXfa1LpOItwyBkrYnRrofU0lno46PlPfyRMYnyHLBdsYHWF5RztgIhnTDNiybatQ5nG06dPl30kmHYZ9Dg5B6lKNlaB7tz/Xu8JjcPG71ziVVpwP3ODXSR15LKKZYxVxMAnASGpA0F7vau/p8GEoWjHThMbUeBsnW8o8mWOAkSFiEUWtnSa4VQnqFqQ+2fIgigkBl2hiKjrlpqACx2sYPDI38sntib5R0NqqQIWHK+BuZzgZhO70NYFJYxtaYMGDIIMiwbEtq6hclN1mdD5/nxzoM2F5aBsIQjpeWgLyeBk16kUEx/wjVPNRQgdOAnHKmImTdF4Nw48anePKpXn6Gut/tXJSQASDjpgimkp3cNXepcz8xAzUpUoh40SI6Ied5iCIElPccQgjXM41c87Iggq6Y1+Q4nOfAJPkshUUYBmqj+pRKWMNpeji1DcMwDJMSWMNJEANh1Nhvrj7Trf+oeqcZjsmAXBOWSa7BINZEfjwtJWYcTpQWoySRFNHaj/vWTnGzVzsmKZnQE25qG2ufksjTs92ZeLfPa4YVbSB2yV3HN8l6kVe99ewMBdDccRCgyXQ7Xo8tRzsQwkBi705eU5gnUzap98fNmBAzkacnu3TscTrjE2RC03xyTNZ43FgmwzpAXluXZilXQ3U1FDdrgQFDyS6gJtH0ajre42PXwInUerQ4GlGk9iQgECbnvJAej5ripaYL9Tttj9kk+SyFRRhhkV4NJ2mBn6wkxYUFToLUihrU2j9E1aTBb7oPF2D/UMkfrYhcanHmUqz9sYVGPJNNLHu3R2jFyCCtlrxW5yhIkEd4WPvDbh/Jnc8BmVFtCSZM08nFFjutv7efTvCpm8nYhPWjDHgDJk2hzBWQ7gofQP7oqpmP6yom5rnHyvyMep/qK8nQkPFFDNZCaPIeqYJHNa+F7XPp8MntpJSJUNMESU8wKGWchbseMzO0iGdKq9+VO5awkoJHcdO2Aood13ohzW+qEHK+V7VkymepVlTLF5x0kaw5HMR5Zhk2qTEMwwBwXyAOd0mE6dOno3///mjRogVOOOEEDBs2DF9/XXdNoHnz5tmVYN0lFEpvHrqGwhpOghgII2xPpodJLXjlomo1MjtzHZP38jjPG3gMU5qI/WU245zD2aLuU7UaU3mbd94u3cl0Q77JGwhLTSDSQQCIb0aLKtkciToeghvwGelMAHeCXGo70KGphdCkiakBD3wdWo1aXC2Wc0AyxufRdDzmNdtpQkmQaqpBsM61hBporMt+WlqhfQ15lAbYHm2qJuNxclEK+8WqkyPgBtRo0KCmR7KO8ToryFQ75Kba0TzfbYswGfJZMhCWTizHEu+//z7GjRuH/v37IxwO45577sHgwYPxxRdfICsrK+5xOTk5HsGUnBxwTQ8LHIZhGAAmJcktOgGL2rJlyzyf582bhxNOOAEbNmzA//zP/8Q9TgiB/Pz8xnYxbbBJLcl4XJoTsOXWpd2QMKO0G1WJj3WOyHN74kqU61hzEsl9s2yMaaExeMZPJiLLSEd3LNIpoOlt7U1xL5zsCNF1k0z5XyzU7bG+P0Ds71o8LbzefqpzimjIzEZ643DSYVKLpLy8HADQqlWrOtsdOHAAJ554Ijp06IDLLrsMn3/++WFdN1WwhpMgViZfO8Ot0OFTYhEAy/vMmV8V0ONmao4O0DTjOwuQLts4qG8Kbt41PYZgUrOmQa6bZLpeUcKtUeKkHdHgxk7o5JMxOYL0qBiRyLxjHrNMHDMg4HhVqZmVhbvekBLT9ZSWVs0/Tt+sbptKWhYTbgk2AyQdERARG+OOz/PLWc/45HrE+OT4ZXoeXfYvshibHLNwS01riK6N4y1EV4fzAOLHK9XnvRZZ0M3tj+sdp2as1iPOoRZgg9Dls6RHFNdLB5ZpNTlOAzU1NaioqPBsDQaDCAaDcY8yTRMTJkzAz372M/Ts2TNuu1NPPRVz5szB6aefjvLycvzxj3/EgAED8Pnnn6N9+/ZJ6H/TwRoOwzBMkpk/fz5yc3M9y/Tp0+s8Zty4cfjss8+wcOHCOtsVFRVh9OjR6NOnD84991y89tpraNOmDZ577rlkDqFJYA0nQfwUQAast5SQpsMXkZ3XjVu3nAfcejhuNUkT7kuyqgHVn86m7pgcE6Y8cSxtyYQy+S2UFD0Iu84NSrS/5rhIi7B8W7ecBpwULNb5NaF5XIjldclUYm7UiW2LurQa9c1fvqUr7tJWnRz1fSn2hLhbPlq9d173aKeCEUF3TW5qiWkYMat8ErSo1DbW+aKzXWtCjyoxbelrSsVPWffHrfIplKqgailpT+0gUifsGx5/05hy056qosp3X836rMtxKtU/5X7VaYBAhvUs1VItfEdRielRo0ZhxowZnm11aTfjx4/HW2+9hdWrVyespfj9fvTt2xfffPNNo/qaSljgJEiQQsjQrdsW0jVZjM1J5xE/l5rW4FxqUQXWIgRNpBEnZiocGd8SO/7HIEMJ8nQLkhlw43DUXGqOF5smdCmUhJLixnBMijDkD6s311h0cS2PkBE+JZZDl6UEBDT5QwzVXAO3PIFaXjrhXGqKYDFB0kRmUBhOWK8JNxbGytSsxOdEXU/pSxwhWp+Q0YRPeqzp5JPb1aJrulKOQVfMjJGlpeOVlY51l+oq0OZ6xbnlB9z77x6rCeFd15y74rZ1AqNrTRPOT1CNETpqSkwDQCAQQE5OTv3XJMKtt96K119/HatWrULnzp0TvpZhGPj0009x8cUXN6arKYUFDsMwTJoYN24cFixYgDfeeAMtWrRAaWkpACA3NxcZGRkAgNGjR6Ndu3bSJHf//ffj7LPPxkknnYT9+/fjsccew/bt23HDDTekbRwNhQVOgmQKH0K69dqW7dcRsN/gZCE1QNbIscpKk1w3FK1GKiKKJuJqJdFajnWciyfZp+pfEOl1pGhO3vQ6fhjSY8v0aD6AlWrEtOM3wmTASfMSFjUebQcADE/8h1cbUONagIjJfcWkpivpWiInzVXzkvvmrktTkSAN3gnnWFOTDYtHcjQfTejKdje7Ash0tTllfA4ek5pqMlS0NkfD0YXfo9X4KGCtk7estM/RdhRNxhmvLlwdJjKtjHXP3L5FFlKLdbdivd8LRWuBiD63UDIY6MLV9jUhlHX3Ws4dqzFdbbDW9KOSMmJcPXVYf/vUZhp49tlnAQDnnXeeZ/vcuXNx7bXXAgB27NgBTXP/Svv27cONN96I0tJSHHfccejXrx/WrFmD00477bB73tSwwEmQgO5Dls/642f54Aocx+OLXE8vA67wMU3IfFMm3Cqe0sxG3kqSpAifSLymIe8xUfM8ZGWntlbd8DuTCIZt+zfJDf0zbLONn3yotQWLT5gyz5VGPhioAQC5zTJvOQF8Na4pigyZkl+opqYYnmaWkHHnJWKZlyzB4rRRzGukIfZ8RISXmnL/ZE45UoNzw1IQqWZEaw7LZx/rBqKCTJgygDf2OL2mwYAcqzM2H/mtbRSQQsZHfum95YfPI1ys413BogvhmSdx7oLu2r2U+yG8AijilkXlUovRTkARHsIVPE5bn4A0o2nCNTCqlT+d58NvAmSPs8b0IVgbQDpJR8XPOgOHbVatWuX5PGPGjKj5oSMFFjgMwzBInls0Z1KLDwucBAlpGjJ81pcy0wcE69Bwwqq2o0VqPk57x9tA9W7zXjPKSUDxOop0GHDO53rBxfaaszQcx1HAdWgI28E3BjT5lh1WIrA1GAhHJM0MC+F6QgnISXUhNBCinQUc4pnO4mk1PugeT6266sDEIqa3nhIfZQpd1gUSpIHgpppxtR0R4XnnJJyM4RQB19QnhA8++OX4AMBHAfgQsNd90mTmU0xqPqHJCXef5ni8uXqUquHE9Apzs9JAE3U7DsQzsznHyu2RZrIITUY1o/litHW+3z4TMOzvzaGwhoCI/11hjg5Y4DAMw8Bx6U+tSe1YgwVOggR0gZD9+pelA0E7/7pwbPkk5DuvQQJhW70wFU3DUDUfJ0s+3P2ESEcALx4NiFQNSMTUjpxtpDguGCRkzRVD0YycN2TDJPmWq5GQtVFq1QdSCT4K2+s+srQAa7eBWCWY3fgZNbmjz/PmH0+rkZHpSnyOUNyBrXbRPxqe8t1KzJNVPNpxi9ZkBH+kthNWxirPKTT4HG0nzjhlRoCI8VljC0iHAB/54FfG7MR3+YQOXXPWnb+RO0ejTszrigbj0Uic+xKpwUTcJi3Gn9Yah6IlKft0da5GuZ5zHp/m1sHxyXOR1NB9QqDWnjwM6gIBLb0aTvLmcNioFg8WOAni1wRC9l0LaoSQbv3QaMKd/HfMBGEihO0fAJOAMLnr0mPNfmgNUmNzXEzyCh8AUCxqniBSIPocpummqDHJNcWYBCkMNRIwbKnk/ECFNcgyz8I0Iy7i7Y8pTPgcM6JA1I9yJLFiaTxeWvB6aTmmJp0sMWO18aZQUX8QYyMiBLorcJzzGGTCsJ0cQK45KAzEHJ+VEMgJjo09zpheaHCFjCNw/MqY/UKT5jOfEIqgsT3BNFfI+DThES6RgkbTXAERNfkfdYeUdRFbAAlFuLgOCoqQEeRZd+6hI3g04b7cABpCdgN/2B1nukielxoTD05twzAMw6QE1nASJKBMhPo1QsA2qTlvcGrsjU5C1jUJm0JqQWES7huzM4Eq1DgdF5OiFfRIc5tqMnNeHp23eU1326umPBOAsF9FhUnQNEcrg2wgcwQITUnuqUmNw9nmg+5WqySfzGCgkaUFWG2VmitOlDyENDNZEfWaPJ9jRtOhywh7XZmEV+NPdAjPZHg8k5rzdkVEMi2PgIitvSmajE/AMz7n9JYjgWMyiz0+mV0gYnxybHDNhc4bvi40qc34hIhpUvNpTtuIyXtnXIoWoqaVEUrbupwGBGJrOLqyzXkOICxtBvbd8NnPhKXhOJqNczwpZl2SY7KeqzRrOEnMNMDEhgVOgmiaZZsGAL9mSoHjzOHoiunMM6GiAU56Mw1uHjIoXmoqMmuz8nsom4iIUzunUISTZ95G+RGSAkedctAEwtKkJmS3nDkeUrzQdKHJEtrONg26a1KEKeNMDAFAlj6ITj8jhC7nOCyPLtUzzRYsEWY0NRZFzUCsBiPGssMLKLFNAvJFgEBwC78pBxDcInlEUjCaMGWfrcDPuscn09go43OEqeVd595X17zomj41Nc5GMaNJk5rwxr24QhjyfjjHqQJHvUMxTWdx9vuEu1NXhIzz99cV4eMTJJ8VZ5sQ5L6Ekel63mmuyTBdsNNA08MCh2EYBsmLw2GngfiwwEkQa9LUfZuTb3YyCzPBMWKYQkCTZifA49Yl41YckxNkbZ14FVZUrUZ9GVSsYB6LkNUf94Sex0m4phYTillG1QIcjzWQ1CwMMqT2of6r1kNRSxa7l3M77GaCFoqWpCbm9CahVBNRCuV8QpqgRMT5oy4PkPC83cseKmY/DQIUpw/q+GRJZyEAJ3akniJ2kffI3ebED7mZBIRy772JMd3xae6N8GglMj5Hc7d5zGsxNJx42oy6ze0DyfPpyjZX4yL5TGgebcdJbeRq3LoQijOBm+iTOXphgcMwDIPkmdRYv4kPC5wEUUzYVqJC++ul26qBYQp3PkcAbu0USG3HJPd9XNaaFO5+y+JvUV/BWlXr0ZX5Hs8bvPNGSW7nSf7PenuVsTOOrR1uW41c12pN1bLiPJwyqaaiAcQqY23F0LsxOe52TdF8FE1DSSLpmbeBN0dYzNSdaldJub8C0GLMVWmq9iVUrU2tyaO7ST3V8cfQ4GLhjR1SJvStnfa5FA1FySKgaj1yQh6ImqOJ5cbsrMfTZtQ+OY2d76YQyvyQ51zKfmWOx/N9gv2cmM5+7zlSnccsEp7DaXpY4CSIDvWBIylo1AfKiQEk4SbkJCIpfKwH0hU+8nj5o05SAKg/8OqzoDoVRG5zr2EJHreAsns+EsqPMEVPFrsJXFyTk7vd+1BaP6xuhuRYNKRmjVoCWfMIIPce1Wc6UwMTI7erwlt4xu6c343JMZU+mDCV8XkFp+xPvWlZNE+htOixKeOK2B75t1E/qOYuj3CRP/qRgiFGz+IJaykAySPIhDxOMS3b23QQ1EDUyBcyoa6bbuIjPXJ8zFEJCxyGYRikJ1v0sQYLnASxTByq04C9XcabuPE2Gki6QgvFgcBp56xZ/7h6hCnU81nlDKzzuYfIZKHwajuRqW10AcUY5LoGq2+7PuUZU01npnxbFp5xyEl8WY9GeF5PVZOTWmsmEjXpZmTp48jKlU7/PZUnpaktMtYkxo8GuXE4poB02tA8YyapBcXvg2vQIjJjvpZ7avbEMPB5zHbSlOk1HarmNTeGxfrX5/neqRqHV7OJtR/KelTPPJqOV6tR76/qFGBdizwmNemEEeFAYB3v1fSlyU0Zc7pInkmNZ3HiwQInQaw4A2vdJ0zotveNpggcx92GDJKpa6xfMlfIODfecH6clIA4ESF8NEX4qP/areuc7zGVeRu7o7KxDBcS7kndmA/y/FA5P2Dq/JP7w6p51tUfZKcejOq5psbeQAoc5QeXvPMzMhuyYs7TlB8oa+4iQihHItzUNkIJ/NQgXJkPN02MqfaBhEfQmdKzTMm9Fmt8EQLVe4+85jIN3mJlaoBmVHyKInB0xM9p5myDsh5rXka5RTG/KpYQd1+ynDZquhrVS80J/NShxuE4XmokX6CstD161HnTBae2aXrYEZFhGIZJCazhJIhPc1N3WKltbA3H3maaAsKxa+m6XBeaJs1SOglZi8bxkDLJfbuOzBjgOh64Ng439sad8Sco0fROolDFzCbgmteEOouuvnY4Dg+aUJwfFLOTsPpvNbVjc2C66W6IYMq3WQ3OSWTlS8VryxOHoqTM0ZWknrpwjW1qyhfvm7b7IVZaGxclSkl6pjl3xjra8abThSYTfOrQ3fo55JqJoMTkOBkFSJDrpadocLqShNQtq+3WulEzCuhKwk5vok73X+fB9Wlek1usks5ec5eLqsE4qF5l3gwFJI9RnQWcfzUZb0NSm/FpgN92snCeGU0jmPaXKaxpbhocjVPbHAuwwEkQn3BLEoT0MII+yy1WdYv2mbYZxXQDJnUT0J3iZkJIgeDmlVLSzgjXzq3mTTPlj577UBCUNDZQ3LCd3G5wi1xp5KZ0MRR3aWHGcC5TokHVHG0kSGZGNpygVtLljzMJgjMTEpYngkyHA0AxM/mUPGnenGnS1ALIdU0IJfuw++upK+a1uiZ93Vxq8NgnHQOmVUhaCeSUQZ0AkZrOBs7FlNvlpPtR56M0b940+xwyE7YQ8vvhE+4Prk8ImSvNJ9RUSoja5osQMuq8inP/pAk0wkwaeaeEIM+7h3tPyWOi0yMEjiZIeqP5NIJPcwSOKV/IdPkvwbCfA5OAoOaLGke6SNocTgPKRh+rsMBhGIYBx+GkAhY4CRLQCRmaZSYI+Qxk+K33eNWkFjYcrUZDrWm9zYZNE4at+YRJUwqw2ZoOXEcBg4SrMSgPgKvJUITmA9nWOc7RagiQ5juThMwGbSqZrHUBaE5tHPtcmmp/090JdxPCLpQMmPZ4LFOePXlObnJLn3DNbqpLgxbDzOQtq6zLND+60DzZkt03eCWpJRA1OR6Jde8cU6A7EW8q9ktBarZsHcLRyoTu9dgQMdZjjE+DcIvHkaLtSK1Gg9/J+qy5WaH9uqvJBXTAH2FS82uq44pqzoo2dwm4GonHg0y5N7FS31if3eN0xdQWGVtjpbBxNRnX5GzA72g7umt6dkxqRAIZdgW2oK4jwBWmj3pY4DAMwyB5czhsUIsPC5wECWmEDJ/1VpYZqEVGRi0AQNhvcmRqCNv1iP1hHwzDaltr6ggbzryNhrCj2WhOUkw3caSpzOdEztcAlpahfqlJTuK71RRNqdW4rtcGkZxHMklJvmgKr2YDQChTGFa6Andi3XEEMJ1si4o/NikagwlNlm/W4b6+upPm3nkNZ67GBxGz4qWuCY/TgDuH4I1biYfUBMm9P4ZSPtskkpqeVfHUGZ/pmc+RGpGSCidWnJEOXZbE9sMnx+e3NRy/5tbA8Wsagro7bxO0L+cXgF9ZB+zJeGeyHYqGoylR/nC1D7dejjsXI4TbX8VlIqYDgXoOAVLmcJy5GnLXdYLftgDoOsFnz3H6fI7zjAky3b9SRq2lL4c0kuNLF2xSa3pY4CRISDeR6bMeroyMWgSzLYHjlGM3DQP+Wtt0VmvACNs/MmEDhm1qCxsaDPuHyJ1AFYqwEK4DgSKIHAiuF5plRlO3u8cBlrAxlPOGlSJwTt0eH4Ba50fJ7o+A5UwgUcxr8mfdsIWs4tFFimAxyJTxK84PsppfzDKoOYLFNaP5Nd11DtDUCXR3XY0pUWu0xJoMj7w3ILdmka5sD5uueQmmO36h6YBp3wDFvCbIjaSRtXNArkBVavn44I7PZwucgBDw20E0QcWMFtSBgGI+c9ad2kt+EbvImeWx5ggDNxZGDb50HQi8AZqA976JiOPcdXe7Y1LThSlNZrpuwmc/H7rPgM9vH+e3TWq69Yw4ZFZbz0+GHpCl25mjF/4TMwzDgDWcVMACJ0GyNANZQctMEMyuhT/X2i6c11MDMKps80ItYNRY60atkNqOERbSgcDRekxT0XAgXDMZuSYzV5MRMlobpMTc2J8BuBqUojmFTQFDlpIWqLW1mVohpGbjml9EVEyHMz7H0iRNgACkgU4pyqNqM6qGo9aFcSbQ/UKTb/5+zWtGc97wdc01/fm0CHdgONdEzBQpkeW3VffwsOMwoQvojlYDNxWRIJLjE4p7t5oRwaQYGg40qeH4hQa/rQY7jgI+3R2bakYLRWk4jmZj/RvQSJrU/Jqr4ViR/V6tRReuuQvKfdIEKbFLzt9GSWcjSKm/Q7KNJkg6yOiOVqOZ0G2Tme4zoNtajR4gCNvDRA9JWx9IembUIuuQpeFkVRkIpj0MnVPbNDUscBIk5DPlvI0/F9Bb2k+UEyRRa0Jk2PnDqgharf3wVRFMe90MCxj2PI+pChwn0JKE6wFGrsnMkydNMZO5cz+KKU56v2luoJ0pEFYEUY30lnJ/4KudGCLUFUQZYeJT+kXQ5GRJvQJHCClkVI8tVeCoHls+4aZxUfOJqTntIsslq7fMVO6joazLzNomELZPIARQ65zHcxI155sq7GMIHKG5ZjTNOz4ACGrCXdctQQNYwiaomNEcgRO0J5j8isAJaKY0n/mE6QmwBAAdplxXTWOqyUwdoFrkTc7haKay7p5bcwSOj6D5HNMZQQvZ5/ILCFvQCMcFza8BtY7QrkXGAdukVpl+gcMaTtOT9ncKhmEY5tiANZwEyfSFEcyyswvk+qDl2q9zjoZjEKjK2k/BMES1HacTJFCNreHUEGznHZi2Pcc0hKxSbJquVgMS0SY1UtLOQPFSMzW5bs/nwzS9DgqOhhM2BHTHK0y465qTlkYoFXEUG5Waasd5GzRI6ZsQkLWCTRNCuLE6zhGuWcdrRvMrzgF+xWPLeTn2JE5VTWrwajix3qLUrNomuR5rBrkxSGEBt/6Q6plnwHtSRctxMgw4Jk41NEdXvO38ihapajoBRatxzGhBHQg65jPdREhqM86/hqLhGPDproajTuQDlnYiy00LgqaZcl06ECj7VZOao/lYf1J7XQc0+3qOViN8gBawjwsIiICt1QR9ELYngPMvdOFqOEQI7rcehMz9YYT09L7/cmqbpocFDsMwDNiklgpY4CRI0BeGr4X9ZpcTAo7Lsnb47FfVsAERqrH2V4VdbacqDLKjqkU1yZB20/6Xwm6lUBiuFy5UbUYmNIOyTXEqMBVnA2cOx3Dng8KGgGFnPqgVGnz2K3+NoSkT8G4eMM3RAww3QyRBSRDqTGyr80xw+wtNsyfcId2m1dLQam40dR4pXqS9X/PmEFO1GjUSPp6GI5UXj9u5koTSVKYXdHhdwe11Eq4LNKBJzcbNc0fSFTwyCWfkHI5PAwKKK7QzhxEUhJA9PxLQ3HVnDiegGQjobr4yv5y8d7UdR5PRdXeSXwiCUNcdbUbxuJDJOzVIDUdTytwKzdJoAEBTJtdE0NZq/LpXq3E0m6CtAvl0IGw/BybB1+IAACDkCyOoOTks0kWyyhOw00A8WOAkSChQCy3b9ljKyQBybIHjt29lbRioth8ufxVEwBI4IlALqrGdCYJhkO29pjkuUmHImWwyCZrzY2cqgkj+eEPNZ+MRTqYdXKqa5xzHBF9YwLA9E/SwhlrD6rMmCJrh/BCpXwnboQGmTN8YJiEDEZUuuj/gSmAo4AZ5kmdi2vHisgIeAfsHOYYZzS9ca6VfMaNZ2YVJnidWrIkKQe0jZD2cMAnXycFjNoMbGauY15zqR9YHE4ZTq0faDIXiNACogZ2RSTj9mhvU6ROKyUw35XpINxWBE5b7HSHj18PwO3EvireYpqSScWJWNZ28QsS5UarlVBVCznYdEKqHhv0VEfaARECDCNhCJqADIVtwBH1Ahm1yDjrONT7rGQEgag1o2QetcQZrEdLSa1Jjmp5m8xeura3FXXfdhV69eiErKwsFBQUYPXo0vv/++3qPnTVrFjp16oRQKITCwkJ88sknnv1VVVUYN24cjj/+eGRnZ+PKK69EWVlZUw2FYZgjECIzKQsTn2aj4Rw8eBAbN27Evffei969e2Pfvn247bbbcOmll2L9+vVxj1u0aBEmTpyI2bNno7CwEE8++SRKSkrw9ddf44QTTgAA/Pa3v8XSpUuxePFi5ObmYvz48bjiiivw0UcfJdxPf8CAlm2/teVkADnZAADy2W94hglUVdmNdaDKMq8h4IOostPg1OiutmObFxAmkK3tCMN0nQbCUGxY9jZyTVQw3YluChM0mRXU3m24Zjs9DBkLpGkmdNtxQRN6RLIcgMin5KvUZJxJEIorsPOiT8o2IphK/Wu19LaDW1UUMmFlQPM6BKhmNI9GoKR0UWNO3GSVVIdJzXFycFMA6Sag2xqAE5fkOcgZp6wTBNRIM5pbelv9mZFOA0IoiUdVZwHIMTvjDOquq3NQIwQVM5qj2QR1648a8JkI2OmVfL6wTBuj+wxo0tzlRvbHMocJxfYoS3Kr9kihaDIC0h9d+Nw/lLDNyCKgA7aGg5Df1WZCAVfDCVn/kq5BhO0vXm0ttGyrbSBgwK97v4Oph+dwmppmI3Byc3OxfPlyz7aZM2firLPOwo4dO9CxY8eYxz3xxBO48cYbcd111wEAZs+ejaVLl2LOnDm4++67UV5ejhdffBELFizABRdcAACYO3cuunfvjo8//hhnn312Qv30h0xo2UHrQ3Y2qEULa90WOGSYcl34fIDPET7V7jxPTRiixjYrhF3BI5yAOMO0zgPY7lVOnja7E0SysBuRkoLGIHeuwTGR1bpmOzMMaHZwidCEdCaz7PZ2/2VMj+GZ8zDsixukKcGj9tCFa6IyNHd+BMoPtalsghQsbnCprrnzNupcjVfgkAx+tGrCOCY1UmJyKG7gpxN7o8Ptr4BiDlM7BzV3nfvB1AR0x7SpCYTtwcoAULi/2boST+TTvPFEVl+VAE/hFvPzaxRzviZgC5GgPwy/385XFpE+RpPmLntIfkC4CdY8rn3yPinBN+4UnqaY1DRPAJQjaOT3OeCLEDj285ERAtmCBhkZzk0B2QJHVNdCy95vjTn0E4Kam/ImLbDTQJPTbExqsSgvL4cQAi1btoy5v6amBhs2bEBxcbHcpmkaiouLsXbtWgDAhg0bUFtb62nTrVs3dOzYUbZhGIZhmp5mo+FEUlVVhbvuugsjR45ETk5OzDZ79+6FYRjIy8vzbM/Ly8NXX30FACgtLUUgEIgSWnl5eSgtLY17/erqalRXV8vPFRUVAAA9RECm9QZH2VmgFnbfbK0GRthd9/ssLcdeh88+X00YqKl11wEI0wBsLzZPvhW4M/JCCY+XXl9q2DyR1GycbXotyVQioto1tVgaTnwThgkBCjsxPQKmnZYlTISwfe2AUrXU0XZ0crUT03SDYtRLafJl2VvZUs0iEMuM5heu2clKWmm31yjCSy16XKYQcIyEBgl5e4XmloT2qCeKkdEk13zoM+ExGSr+A9bY4GoOmhDyXujq+BSTmrdcubU9KNxKmQGfiaBtPgvatZf8fgN+2xlF9xP0oBIPYysXMtWSX0gNR+jC7ZySnkG4HfbmC4JjOlO8Nfy6m6nW0WoCfkXDCbrms4wQKGRrNo5pTfcBjkmtqhrCfpb0jAqpyaWLWBm/G3smJjZp03BefvllZGdny+WDDz6Q+2pra/Hzn/8cRIRnn302Lf2bPn06cnNz5dKhQwcAgJ4BIDsDyM6wzGkBv7U4Odz9fiCnBZDTApSVbQml7CxQViaQnWUvGdFLZkhZD0Jk20umsmQHrCUrAC3TWkRmACLLby2ZAWiZfmsJ+awlS4fI0CAyNOhZAnoG7IXgC1qLP2CZaPx+AwGftYR8YQR1A0HdMun4NWsJCMus5RdkeYppbkEwp/SxU0zMKZvsE8JOieKamXx2rjb1OGfdcz7len6NEBDW4sxzBHUTAWHCby9BzURAp6glqLltAsKUxwaVczomO7+dgTlmf5R1XRmfM2ZNc7f5hHIvIsbnmA2d61nXt++xbsp7H/KF5d/E+Rv5A2H5t9MzyP2bZgn5t9aydGsJ+eR3Ivq7Yn+HsuwlOxDxfbMWZAZjf089i/XdpqxM5TufLZ8F+P3Wogn5zFCLFvJ4PQNyXip9mElaEqc+x6dIFi9ejG7duiEUCqFXr154++23G3XdVJM2gXPppZdi8+bNcjnzzDMBuMJm+/btWL58eVztBgBat24NXdejPM7KysqQn58PAMjPz0dNTQ32798ft00sJk2ahPLycrl89913jRwpwzBMfBzHp6lTp2Ljxo3o3bs3SkpKsGfPnpjt16xZg5EjR2Ls2LHYtGkThg0bhmHDhuGzzz5Lcc8TJ20mtRYtWqCFM+Fu4wibLVu2YOXKlTj++OPrPEcgEEC/fv2wYsUKDBs2DABgmiZWrFiB8ePHAwD69esHv9+PFStW4MorrwQAfP3119ixYweKiorinjsYDCLoTH4qaBma9VYGWG9udZGVCfJbXjjC5wMFLJOaqKoGAo5JzfZiqw3LgDgYJuDUDCFS89TY2+Ca2UxDydNiuOY1xftNc/LohE2Ydl0Sn04wHDuXIFjucC7WZW0PMnJr6oQ1gYBtUqslx7wl3Mw+btc8k+pObIqAknRTmUjXFTOao0kAThyObcITlrZitSFZ1tiy+DgRMkpSSgWT3AzbVgE8J8BRcyfPlRQ2RMLrhaeYzpw+m5pw/w7OfZMjjXAU0Lzjc8YQUExq0lFAN+B3PNJ0AwHbfOaY0XwhE7pjoQoJwE6QqQVcbwsnLsYzya8L1yVPg2sac6urufZOXfEq0HXFHqi7MWcBJ97MDwrZz0owCMrItPfXE8iZ00I+S1qmhoCebg2H0mINq8/xKZKnnnoKF110Ee644w4AwAMPPIDly5dj5syZmD17dkr7nijNxmmgtrYWV111FdavX4+XX34ZhmGgtLQUpaWlqHF+lAEMGjQIM2fOlJ8nTpyIF154AX/5y1/w5Zdf4pZbbkFlZaX84+Xm5mLs2LGYOHEiVq5ciQ0bNuC6665DUVFRwh5qDMMczVBS/gMsh6aKigrPos4JOzTE8SmStWvXetoDQElJyRHhBNVsnAZ27dqFN998EwDQp08fz76VK1fivPPOAwBs3boVe/fulftGjBiBH374AVOmTEFpaSn69OmDZcuWeRwJZsyYAU3TcOWVV6K6uholJSV45plnGtVPkekDsrIafoD9lke+HCBQ5W6r8Wo4IhyWEdgIh101wTBczUaqDqZXq3FicgxTakNurIMhU8NTjSG1HdINWc9EaAQhfavD7iWcaqSmkKWww5pbKTRoXzdMAj7HRdr0xueoKXEcNPmG73UUUCfTA0KZTJeJLAkB4boO+2yNwCdMN82NRrGdBiDc8ZAp6/DoJmQtIOia61auKRkeNOFJ9qk6EMiJd+WSbhyOkooHyrrjHKCpsTeuo0BQM9yYG39Yajb+DDujQAagZdjXDWkQQScexuctAwBYk/yO44rq3iwitB3ACtRxb6SyX3gcYZyYM6nhBPygoJNRIOStEVEf9rMksvwIBA41/LgkEmlpOTysv+drr72G888/37Nn6tSpmDZtmmdbQxyfIiktLY3Zvi4nqOZCsxE4nTp1coMZ6+Dbb7+N2jZ+/HhpQotFKBTCrFmzMGvWrMPpIgBAyw6CcuPPK8U/UMhYBAqGgGpL+Ahb4FA4DIRtIRQ2IRyTmmlEm9RMJZ+NSa75zVRMcY7HW9j1fhM1YaDKNrnoYZAT+SnUyU475keJwzFJwJCpbTTppSa91UxCWOZBc7vgU+JwVHzK77snT5ridabWgHHMaEFhyuBAv3DjU3Th1nzRtciC3BYEpZy3KeCz+14DgrBzvwjDdH+QFRc0E4BPCXaVX1NNyTQd45qRzl0yP5xQzWiuMJXeaD4DwaBdcyloeAQNYJmftEz77xj0WSlkAIiQ4i3mV2JlnHVdV0xmuiJcFMGimtTs7aTrirT0uzFnjsBJVMgoOM+Slh2EL3CgUec4XKx5YgE7hxEOLxbHiuV57LHH8OCDD3r2xDLRH2s0G4HDMAyTLn76qcLWdAiNFzgEgPDdd9/FnQOOpCGOT5Hk5+cn1L45wQInUbKDoNzcwzuHqu04Edi1tW58gmG4aoJhWrE9gGI6MzzmNeFoQIbhmuUcDag2bJ0bsDIcOG/A1TXAIeutVdPCgObkubFNVmS4GXXMsJxwD5tuDEtYOhKQkshTqOVi5IuvWq1UvvUL9+U7oFnpXQDH1ORMoBOCwlk35cRyQM2SLEw3O7LmZjxWIRIRNYLctDianPjXlQzRmqx14zXSKUmA1Do5apxRzEwC7vhc7Y0QsKPrg3oYIdvcGQyE4Q9Y2/0ZBnTbgutoNVqmzzLtAhAZfjcTs0fDUZJlOhqM3yfNZKRrbrZS2WFdcRTwSW2PdN01r/l87rmTgPMsiRYh+EPpi8PJzs7G7NmzcfPNN8POP5HgGQhOtun27ds3+KiGOD5FUlRUhBUrVmDChAly2/Lly+t0gmousMBJlBYJzN8kghOnYCN/v0xSBI69zYic43EElWpSc1LnhF1PuOoawDbV4JAPwm97zflq3R9OW/D4rJzK9nXVEgcaDHvdtFNShzW4pauV+Q7AjV9V05Q5SZj9SumBgDpXo5kI2T/OIc2QecUCmiJwdAM+J0W/z3CzRevxU9s4mbRNEgjbOeV0oUEz7PxycLNOW0G2Tk9NmPb4SHPzxqklDFSLknMrVc+0gB1zA7hlBkKaITNBh3TDNakFwwhk2rnSsgEt2xU0gGV+QqaTrywIZNhv0gFF+NjmLvL5XK8yxduMNJ93jgawhIycgPI12kzWKHKy4MtO3eViMXbsWFvgNEbLsf625eX7E77uxIkTMWbMGJx55pk466yz8OSTT3ocn0aPHo127dph+vTpAIDbbrsN5557Lh5//HEMHToUCxcuxPr16/H8888nfO1UwwKHYRgGgM/nw5tvvolLL70UiWk5BMDEzJkz64wbjEd9jk87duyAppRuGDBgABYsWIDJkyfjnnvuwcknn4wlS5agZ8+eCV871QhqyEw9g4qKCuTm5mL/5r8gu9dp6e5ObAzFwcA2o4naao9HnKi2tZ1DVcAh203zYBVQaTkx0AFrv/FTDcwD1rnCPwlUHbDeTQ4e8uNgjfX2/FOt9e/BsI5Ku+bOwbCGKludqTFdDSeWl5pfuHVvQh6txkTI1gIyfK7HVtBnwG87OgT8BnS7ve4zpNOAWudFCPIUrZN+FqaQWbMNQ6Cm1i5KZ/hQbW+vNnQcsterTA1VtlZXZQi5XmMAtW62IYkbh+Oa1EIaIdNOK5RlazWZPgMt/Nb9zgzUIDPD+juFst0if1q2Br2FdZ9Ftq29ZIWsiH/A0m7stDEUDHg8xwCA/EFXc9YVz7Nmhvbtt9j39w04fvzDKC8vb9QPdzIgIvvHXcDVcOvDcrqpqamBP4nmxqMR1nAShFqkWe+vC9XW7vzgINMVOFVVrnec36+YWjT3R9o+lUYEmNZxethEwA4kNZSqoTW2KS9sxp/PcaYJVIGjZk2O5bEV1EyEHPOSamryheGX+cRM6E7hsYBSyVKHLDimXpkMtygdmQJGjZ1XLazJOR8nk7b3SIDCamkDyFIN0ITMEReOIXB0NWhV9UhT5m3k2AJhBEJ2BugMcudrsv2uoHHKYmRnAllOjrIMkBQ4IZnHrN6gy2YGtWgBLSv9fRZC4J///Cf69++PhpnWLO3mtddeY2HTAJpN4CfDMExzwEqzJdCwvGhWG2fCn6kb1nAShIIZ6e5C4jhvu0LRNIistDiAHavjBooCdvlfp0hctQmtypmgJ+j2G7rPLr7i0yA9vXwawWeb1AwlDsd0lQIltY2b5dlnJ8wE7KBOmbbGhN+5ns9Qio2Z0AO2ZuInt7CYD3GdBsjxvVDVEZjS7EZkyOBQQxNyHH7NjT3yCSDslLbW3OBY50EySQls1dztPs1NueMGgCr30kfQ7LRDWhDQQnacTcjnFjRzHAKCAblOoaAbdJkRSqoHWSqhUIbrstgM+M9/tqJLly6oW8ux3KDXrl3rZtxm6oQ1HIZhmAg6d+6M+rUcK8iTU2Q1HNZwEkTURudDavY4cTjV1RC1ttNATQ1QXevulxqO/W+1AbPGjkOpBcyw7fYcdl2k3VQxrquwUnTU3m6v29tUFxWDXBdqk4ScBwmrqXSIpMu1buiu27ImIJzwfkFumW3TDS9RIcXL2yq7bffXEDDkui6vFSYNhrNuuul8TBLKWN3qprIkkfyf7dEu3P1uGW7I++fcSyMs5D2mWlPee73aAIIRf5vaWqDaSc5ZA+HE1qhuzEeYpiNqq5UaUM2DH3/caycQ9hRKsrG0my1btqS+Y0cwLHASRHz3PdCx4YFdh00D4nCEk/QrHK47Dqem1orFASwPtSrHS60W5kFru3mg1v7XRNjONFJT6cOhQ5YJp7Laj8pa68fsoO3FdSCs46DtpXbI1FBtd0H1UlN/StQ4nBrbFFFLGmrsMdXoQLX9Yx8yNFTZ1wnpBnyade1AlQG/4zSgJx6HY9ixN7VhDTX2etjUUGU4XmoaqmzniCpDoMoeX7UpUGU4fVZq5inXUuNwamU5bh1hOzVR2PTZ/wrUSo83HVl2aqOM6hoEDtrxUAeqoP1k/W20bMvhQ8uslHE4QonDEcGAaz6NF4fjpKURWrOKwxHbdyK8Oz251OLRqlUruHXSI92krW0nnXRSOrp2xMImNYZhmDhUVR2017zzfgDhhx9i16th4sMaToLUfvQtNCdau1tXUMvjohs5WkblQYgq661NVFUDTnry6hrXVVlmiDaUGjZK6ho1OaebTRPk2mWUzNEmSKa5sfabYRPkBIvUEkx73awCjGr77btGQ2217epca01AV4d9OFRrfT0OGT4cst/wK8OaXHfe+g8akFpNtQFUO6FAJimmJveB1e03RSsS31kXCNrrAV1DUE6s+xFUnAlkyhsN0slAEwQdDU/eacA1i4VJoEb2V0Ot3aZaKUNdbVoxN856WBmfs24o43Mq4lhu0XZmbQ0I2t8b599M3SczDWToAWQdstd/MpFhxxtl+MMI+pzYI9slPHgQvoCt3QUJmu0zoPmFTN0gnH+VDKJCyRYtNMhEnUIm8RSKhqMm9xRWElDA+tdZl3VxlAwHwaCsjUOhDCAr0z1fBGL/Poivtlr38pNd+H5r8ws5CAaDWLBgAX7xi1/AvTmWia1169Zp7NmRCQucBFm3OQ89vqsAALQ67kMEcuwU//bzRAZg2lYro1aDUWv/yIU1hJ15EEOHYTjzAE6aGCF/EIncuA8TAiBdtrG2QZknELItqW2UORW5DoGw6f7QOvMStaaQP7Q19jY1qLFGESI1JlBjS5EaW7jVmCZqHXMYGQjbJr4wDCloTMWoptmKtQ4NPtvAZpVkttb9dhlqwC1JDVhCSbc94zS48TyaklW/LiOQIq9l4u0wqfKalDxxJgx7TGEiOb4wGW62bBgw7KNjjU9AKOPTEFDGBwABTUNAd4SsTwaJBjU3IFYNjg14BG+0d59PcwWvY2LUhbuuCVcYC7VQnXMfleMgAM0ekwBB2BNmuuJt5xS903WCrjvedkp8lJ+gO553tjwSuhsPVVOh4b/7rFRR3/7UFv8uj5VzO/2MGDHCFjjuS8XBg+nJbH2kwyY1hmGYOtA0DStXroSTUeAvf/kLMjKOwPCIZgBrOA3EyQC0ZHsVPvzBUv2zfSGZnNGZqCa4nlhhEx4vJjnnT+R527aOc9+eiLzeXGZkQTHyfnD2q1mK5PmV/hBIZkkmco8zCfJN3f3XgGm/wRqiFmF7WtxALQz7bdegWtmW7CAXE2GZ1JMUDScWAgK68xUUGjR7XQifm0sUPmjC0Wp0CFsDs45z9RlHq9Dq0HHMGNqW1Uu76JwgmPY4TQrDhDMmeMbnVGYzEK53fMLWcDShe8ZnjUGHLqxJfp180GGt+6BDJ2tdIw26fQ5d0QyltQtCxoDoQrilvBWtRb0jTtuYb5pC/s9zH4XwxjY511C1St1uYK1D7vdFPB8C7vex1gQO2K6JFTWH8EPNfwGgQXWxUo1VAFIAIPzyl79Mc2+OXDiXWgPZuXMnOnTokO5uMMxRz3fffZdQin/myIEFTgMxTRPff/89WrRo0WyiiisqKtChQwd89913aUt22Jzh+xOf5nhviAg//fQTCgoKPNmRmaMHNqk1EE3Tmu1bV05OTrP50WiO8P2JT3O7N7mHW9yQadbwawTDMAyTEljgMAzDMCmBBc4RTDAYxNSpUxEMBtPdlWYJ35/48L1h0gE7DTAMwzApgTUchmEYJiWwwGEYhmFSAgschmEYJiWwwGlmvPbaaxg8eDCOP/54CCGwefPmBh23ePFidOvWDaFQCL169cLbb7/t2U9EmDJlCtq2bYuMjAwUFxcfccWjZs2ahU6dOiEUCqGwsBCffPJJne2PhXsCAKtXr8Yll1yCgoICCCGwZMmSeo9ZtWoVzjjjDASDQZx00kmYN29eVJtE7zfD1AcLnGZGZWUlBg4ciEceeaTBx6xZswYjR47E2LFjsWnTJgwbNgzDhg3DZ599Jts8+uijePrppzF79mysW7cOWVlZKCkpQVVVVVMMI+ksWrQIEydOxNSpU7Fx40b07t0bJSUl2LMndk2SY+GeOFRWVqJ3796YNWtWg9pv27YNQ4cOxfnnn4/NmzdjwoQJuOGGG/DOO+/INoneb4ZpEMQ0S7Zt20YAaNOmTfW2/fnPf05Dhw71bCssLKRf/epXRERkmibl5+fTY489Jvfv37+fgsEgvfLKK0ntd1Nx1lln0bhx4+RnwzCooKCApk+fHrP9sXBPYgGAXn/99Trb3HnnndSjRw/PthEjRlBJSYn8nOj9ZpiGwBrOUcDatWtRXFzs2VZSUoK1a9cCsN5oS0tLPW1yc3NRWFgo2zRnampqsGHDBk//NU1DcXFx3P4f7ffkcKjv3jTmfjNMQ2CBcxRQWlqKvLw8z7a8vDyUlpbK/c62eG2aM3v37oVhGAn1/2i/J4dDvHtTUVGBQ4cONep+M0xDYIGTRl5++WVkZ2fL5YMPPkh3lxiGYZoMzhadRi699FIUFhbKz+3atWvUefLz81FWVubZVlZWhvz8fLnf2da2bVtPmz59+jTqmqmkdevW0HW9zjFGcrTfk8Mh3r3JyclBRkYGdF1P+H4zTENgDSeNtGjRAieddJJcGlu2tqioCCtWrPBsW758OYqKigAAnTt3Rn5+vqdNRUUF1q1bJ9s0ZwKBAPr16+fpv2maWLFiRdz+H+335HCo79405n4zTINIt9cC4+XHH3+kTZs20dKlSwkALVy4kDZt2kS7d++WbUaNGkV33323/PzRRx+Rz+ejP/7xj/Tll1/S1KlTye/306effirbPPzww9SyZUt644036F//+hdddtll1LlzZzp06FBKx9dYFi5cSMFgkObNm0dffPEF3XTTTdSyZUsqLS0lomPznjj89NNPtGnTJtq0aRMBoCeeeII2bdpE27dvJyKiu+++m0aNGiXb/+c//6HMzEy644476Msvv6RZs2aRruu0bNky2aa++80wjYEFTjNj7ty5BCBqmTp1qmxz7rnn0pgxYzzHvfrqq3TKKadQIBCgHj160NKlSz37TdOke++9l/Ly8igYDNKgQYPo66+/TsGIksef/vQn6tixIwUCATrrrLPo448/lvuO1XtCRLRy5cqY3xnnfowZM4bOPffcqGP69OlDgUCAunTpQnPnzo06b133m2EaA2eLZhiGYVICz+EwDMMwKYEFDsMwDJMSWOAwDMMwKYEFDsMwDJMSWOAwDMMwKYEFDsMwDJMSWOAwDMMwKYEFDsMwDJMSWOAwRzQvvvgiBg8e3OTXWbZsGfr06QPTNJv8WgxztMIChzliqaqqwr333oupU6c2+bUuuugi+P1+vPzyy01+LYY5WmGBwxyx/O1vf0NOTg5+9rOfpeR61157LZ5++umUXIthjkZY4DBp56WXXsLxxx+P6upqz/Zhw4Zh1KhRcY9buHAhLrnkEs+28847DxMmTIg6z7XXXis/d+rUCQ8++CBGjx6N7OxsnHjiiXjzzTfxww8/4LLLLkN2djZOP/10rF+/3nOeSy65BOvXr8fWrVsbN1CGOcZhgcOkneHDh8MwDLz55pty2549e7B06VJcf/31cY/78MMPceaZZzbqmjNmzMDPfvYzbNq0CUOHDsWoUaMwevRo/PKXv8TGjRvRtWtXjB49Gmpu244dOyIvL48rszJMI2GBw6SdjIwM/OIXv8DcuXPltr/+9a/o2LEjzjvvvJjH7N+/H+Xl5SgoKGjUNS+++GL86le/wsknn4wpU6agoqIC/fv3x/Dhw3HKKafgrrvuwpdffhlV9bKgoADbt29v1DUZ5liHBQ7TLLjxxhvxj3/8A7t27QIAzJs3D9deey2EEDHbHzp0CAAQCoUadb3TTz9drufl5QEAevXqFbVtz549nuMyMjJw8ODBRl2TYY51fOnuAMMAQN++fdG7d2+89NJLGDx4MD7//HMsXbo0bvvjjz8eQgjs27ev3nMbhhG1ze/3y3VHqMXaFukG/d///hdt2rSp95oMw0TDGg7TbLjhhhswb948zJ07F8XFxejQoUPctoFAAKeddhq++OKLqH2RZrD//Oc/SelfVVUVtm7dir59+yblfAxzrMECh2k2/OIXv8DOnTvxwgsv1Oks4FBSUoIPP/wwavsbb7yB1157DVu3bsVDDz2EL774Atu3b5fmusby8ccfIxgMoqio6LDOwzDHKixwmGZDbm4urrzySmRnZ2PYsGH1th87dizefvttlJeXe7YPHToUjz76KE477TSsXr0azzzzDD755BPMnz//sPr3yiuv4JprrkFmZuZhnYdhjlUEqX6fDJNmBg0ahB49ejQ4wHL48OE444wzMGnSJABWHE6fPn3w5JNPJrVfe/fuxamnnor169ejc+fOST03wxwrsIbDNAv27duH119/HatWrcK4ceMafNxjjz2G7OzsJuyZxbfffotnnnmGhQ3DHAbspcY0C/r27Yt9+/bhkUcewamnntrg4zp16oRbb721CXtmceaZZzY6yJRhGAs2qTEMwzApgU1qDMMwTEpggcMwDMOkBBY4DMMwTEpggcMwDMOkBBY4DMMwTEpggcMwDMOkBBY4DMMwTEpggcMwDMOkBBY4DMMwTEr4//15+iQiCd5xAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot the fields\n",
    "for i in range(mode_solver.mode_spec.num_modes):\n",
    "    mode_solver.plot_field(\"E\", \"abs\", mode_index=i)\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As one can note, the use of PMLs can lead to non-physical solutions. In this particular case, the physical mode is only the third one. Hence, when dealing with lossy structures, where PMLs are needed, it is important to carefully analyze the fields to exclude the non-physical ones. One way to achieve this is by looking at the effective index, which is approximately 2.4 for the real mode. Hence, we can just look at the mode closest to this value:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "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></th>\n",
       "      <th>wavelength</th>\n",
       "      <th>n eff</th>\n",
       "      <th>k eff</th>\n",
       "      <th>loss (dB/cm)</th>\n",
       "      <th>TE (Ey) fraction</th>\n",
       "      <th>wg TE fraction</th>\n",
       "      <th>wg TM fraction</th>\n",
       "      <th>mode area</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>f</th>\n",
       "      <th>mode_index</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th rowspan=\"3\" valign=\"top\">1.934145e+14</th>\n",
       "      <th>0</th>\n",
       "      <td>1.55</td>\n",
       "      <td>2.818499</td>\n",
       "      <td>3.787846e-01</td>\n",
       "      <td>133368.966975</td>\n",
       "      <td>1.00000</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>1.405865</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1.55</td>\n",
       "      <td>2.732204</td>\n",
       "      <td>4.492293e-01</td>\n",
       "      <td>158172.359263</td>\n",
       "      <td>1.00000</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>1.245057</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1.55</td>\n",
       "      <td>2.405265</td>\n",
       "      <td>3.473457e-08</td>\n",
       "      <td>0.012230</td>\n",
       "      <td>0.97956</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>0.185759</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                         wavelength     n eff         k eff   loss (dB/cm)  \\\n",
       "f            mode_index                                                      \n",
       "1.934145e+14 0                 1.55  2.818499  3.787846e-01  133368.966975   \n",
       "             1                 1.55  2.732204  4.492293e-01  158172.359263   \n",
       "             2                 1.55  2.405265  3.473457e-08       0.012230   \n",
       "\n",
       "                         TE (Ey) fraction wg TE fraction wg TM fraction  \\\n",
       "f            mode_index                                                   \n",
       "1.934145e+14 0                    1.00000           None           None   \n",
       "             1                    1.00000           None           None   \n",
       "             2                    0.97956           None           None   \n",
       "\n",
       "                         mode area  \n",
       "f            mode_index             \n",
       "1.934145e+14 0            1.405865  \n",
       "             1            1.245057  \n",
       "             2            0.185759  "
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mode_data.to_dataframe()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In most cases, the effective index is not known beforehand. To automatically filter the correct mode, we will create an auxiliary function that will compares the field energy around a given radius at the center of the simulation plane with the fields outside it, and return `True` if the field energy inside is higher than the energy outside, and `False` otherwise. Also, we will define a function to iterate through the modes and return the first valid mode."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "# function to decide if a mode is a valid solution\n",
    "def isMode(mode_data, mode_index, radius=1, freq_index=0):\n",
    "    E = abs(mode_data.Ex**2 + mode_data.Ey**2 + mode_data.Ez**2)[0, :, :, freq_index, mode_index]\n",
    "    center = (\n",
    "        E.y.min() + (E.y.max() - E.y.min()) / 2,\n",
    "        E.z.min() + (E.z.max() - E.z.min()) / 2,\n",
    "    )\n",
    "\n",
    "    bmInside = (abs(E.y) < (center[0] + radius)) & (abs(E.z) < (center[1] + radius))\n",
    "\n",
    "    if E.values[bmInside].sum() > E.values[~bmInside].sum():\n",
    "        return True\n",
    "    else:\n",
    "        return False\n",
    "\n",
    "\n",
    "# function to find the first valid mode\n",
    "def findMode(mode_data, radius=1):\n",
    "    for i in range(mode_data.Ex.shape[-1]):\n",
    "        if isMode(mode_data, i, radius):\n",
    "            return i\n",
    "    return None"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# testing\n",
    "idx = findMode(mode_data)\n",
    "mode_solver.plot_field(\"E\", \"abs\", mode_index=idx)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Convergence tests\n",
    "\n",
    "First, we will analyze the convergence of the effective index as a function of the plane size:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "e107c646f1864474b77f4ea59d996eca",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:02:34 CET </span>Started working on Batch containing <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">7</span> tasks.                       \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:02:34 CET\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch containing \u001b[1;36m7\u001b[0m tasks.                       \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:02:46 CET </span>Maximum FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.034</span> for the whole batch.                \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:02:46 CET\u001b[0m\u001b[2;36m \u001b[0mMaximum FlexCredit cost: \u001b[1;36m0.034\u001b[0m for the whole batch.                \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Use <span style=\"color: #008000; text-decoration-color: #008000\">'Batch.real_cost()'</span> to get the billed FlexCredit cost after    \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>completion.                                                        \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mUse \u001b[32m'Batch.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed FlexCredit cost after    \n",
       "\u001b[2;36m             \u001b[0mcompletion.                                                        \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "9c3b8e2ba4034a7082c7c731c235fdd0",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:03:06 CET </span>Batch complete.                                                    \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:03:06 CET\u001b[0m\u001b[2;36m \u001b[0mBatch complete.                                                    \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sizes = np.arange(1, 4.5, 0.5)\n",
    "\n",
    "# create a list with the mode solver objects\n",
    "mode_solvers = {}\n",
    "for s in sizes:\n",
    "    mode_solver = mode_solver_substrate_loss(\n",
    "        resolution=30,\n",
    "        npml=9,\n",
    "        delta_override=None,\n",
    "        size=(s, s + 1.3),\n",
    "    )\n",
    "    mode_solvers[str(s)] = mode_solver\n",
    "\n",
    "# run in batch\n",
    "batch_data = web.Batch(simulations=mode_solvers, folder_name=\"radiative_losses\").run(\n",
    "    path_dir=\"radiative_losses\"\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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MzPd2g3D0IIFCxQXF6fw8HClpaXp2LFjru27du2SyWSq93Xw4EFXv+3bt2vYsGGKiIhQt27d9NBDD+nEiRM3etpAwNh3rKTOHajvMiSdOlehfcdKWqwmAGgt/BqiCgsLZbVatW/fPuXn5+vSpUsaM2aMampqrvvZEydOaPbs2br77rvrbFuyZIleffVVLV++XPv371enTp2Unp6uixcvSpKGDx+u06dPu72mTZumxMREDR48WJJUVlam8ePH695771VJSYm2b9+ub775Rj/+8Y+bdxAAP6q0n23WfgDQnvh1YnleXp7b+7Vr18psNuvQoUMaOXJkg59zOBz62c9+phdeeEG7d+9WVVWVa5thGHr55Zc1b948jR8/XpL05ptvymKxaPPmzZo4caJCQkIUGxvr+sylS5e0ZcsWzZw5UyaTSZJ06NAhORwOLV68WEFBV7Lm7NmzNX78eF26dEkdO3asU1dtba1qa2td7+12e9MHBWhB5siuzdoPANqTgJoTZbPZJEldunRptN+iRYtkNpv16KOP1tlWVlam8vJypaWludqioqI0dOhQ7d27t979vfvuuzp79qweeeQRV9ugQYMUFBSkNWvWyOFwyGaz6fe//73S0tLqDVDSlceTUVFRrldCQsJ1zxnwp2G9khXX2SxTA9tNkuKjLRrWK7kFqwKA1iFgQpTT6VR2drZGjBih/v37N9hvz549Wr16tVauXFnv9vLyckmSxWJxa7dYLK5t11q9erXS09PVo0cPV1tiYqLef/99PffccwoNDVXnzp319ddf6+23326wtrlz58pms7leJ0+ebLAvEAiCg4K1eMJTklQnSF19/+LD2awXBQD1CJgQZbVadeTIEW3YsKHBPtXV1Zo0aZJWrlypmJiYZjnu119/re3bt9e5q1VeXq7HHntMWVlZOnjwoAoLCxUSEqL/9b/+lwyjvu8ySaGhoYqMjHR7AYEuY+BorXoiR7GdzW7tcdEWrXoih3WiAKABAbHY5owZM7R161YVFRW53Q261vHjx3XixAmNGzfO1eZ0OiVJHTp0UGlpqWuuU0VFheLi4lz9KioqlJycXGefa9asUdeuXfXggw+6tefm5ioqKkpLlixxtb311ltKSEjQ/v37NWzYMK/OFQhEGQNH64GkkaxYDgBN4NcQZRiGZs6cqU2bNmnXrl1KTExstH+fPn10+PBht7Z58+apurpar7zyihISEtSxY0fFxsaqoKDAFZrsdrv279+v6dOn1zn+mjVrNHny5DrznC5cuOCaUH5VcPCVPyhXgxvQlgQHBWtE70H+LgMAWg2/hiir1ar169dry5YtioiIcM1ZioqKUnh4uCRp8uTJ6t69u3JychQWFlZnvlTnzp0lya09OztbixcvVq9evZSYmKj58+crPj6+znpSO3bsUFlZmaZNm1antoyMDC1dulSLFi3ST3/6U1VXV+u5555Tz549NXDgwGYcBQAA0Br5dU7UsmXLZLPZNGrUKMXFxbleGzdudPX56quvdPr06Sbt99lnn9XMmTP1+OOPKyUlRefPn1deXp7CwsLc+q1evVrDhw9Xnz596uzj3nvv1fr167V582YNHDhQDzzwgEJDQ5WXl+cKeAAAoP0yGQ3NksYNs9vtioqKks1mY5I5AACthKd/vwPm23kAAACtCSEKAADAC4QoAAAALxCiAAAAvECIAgAA8AIhCgAAwAuEKAAAAC8QogAAALxAiAIAAPACIQoAAMALhCgAAAAvEKIAAAC8QIgCAADwAiEKAADAC4QoAAAALxCiAAAAvECIAgAA8IJfQ1ROTo5SUlIUEREhs9mszMxMlZaWevz5DRs2yGQyKTMz063dMAwtWLBAcXFxCg8PV1pamo4dO+bavmvXLplMpnpfBw8elCT94he/qHd7p06dmuXcAQBA6+bXEFVYWCir1ap9+/YpPz9fly5d0pgxY1RTU3Pdz544cUKzZ8/W3XffXWfbkiVL9Oqrr2r58uXav3+/OnXqpPT0dF28eFGSNHz4cJ0+fdrtNW3aNCUmJmrw4MGSpNmzZ9fp07dvX/3kJz9p3kEAAACtkskwDMPfRVx15swZmc1mFRYWauTIkQ32czgcGjlypKZOnardu3erqqpKmzdvlnTlLlR8fLyefvppzZ49W5Jks9lksVi0du1aTZw4sc7+Ll26pO7du2vmzJmaP39+vcf8y1/+ouTkZBUVFdUb3Opjt9sVFRUlm82myMhIjz4DAAD8y9O/3wE1J8pms0mSunTp0mi/RYsWyWw269FHH62zraysTOXl5UpLS3O1RUVFaejQodq7d2+9+3v33Xd19uxZPfLIIw0ec9WqVfrBD37QaICqra2V3W53ewEAgLYpYEKU0+lUdna2RowYof79+zfYb8+e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lJyc7NZWXFxcp23AgAGu/z84OFhdu3bVHXfc4WqzWCySpMrKSldbeHi4JLndnQLgH0wsB9CqhYWF6f7779f999+v+fPna9q0aVq4cKGmTJlSb//Fixdr+/btOnDggOtbe+fPn5ckbdu2Td27d3frHxoa2uCxY2JidO7cObc2h8OhI0eO1LkT9cknn+ihhx5ya+vYsaPbe5PJ5NZmMpkkXZmvddU//vEPSVK3bt0arAtAyyBEAWhT+vbtq82bN9e77Y9//KMWLVqk9957T9///vfdPhMaGqqvvvpK99xzj8fHGjhwoN566y23ttLSUl28eNHtMd/evXv13//933XuRHnjyJEj6tGjh2JiYm54XwBuDCEKQKt09uxZ/eQnP9HUqVM1YMAARURE6OOPP9aSJUs0fvz4Ov2PHDmiyZMn69///d/Vr18/15yikJAQdenSRbNnz9ZTTz0lp9Opu+66SzabTR9++KEiIyOVlZVVbw3p6emaO3euzp07p+joaElXHuVJ0u9+9zv9/Oc/1xdffKGf//znkqRvv/32hs979+7dGjNmzA3vB8CNY04UgFbppptu0tChQ7V06VKNHDlS/fv31/z58/XYY4/ptddeq9P/448/1oULF7R48WLFxcW5Xj/+8Y8lSS+++KLmz5+vnJwc3X777XrggQe0bds2JSYmNljDHXfcoTvvvFNvv/22q62kpETp6en6+9//rjvuuEPPP/+8XnjhBUVGRurVV1+9oXO+ePGiNm/erMcee+yG9gOgebBiOQDcgG3btumZZ57RkSNHFBQUpPT0dKWkpGjx4sXNfqxly5Zp06ZNev/995t93wCajjtRAHADMjIy9Pjjj+u///u/JV1Z3uC737BrTh07dtTvfvc7n+wbQNNxJwoAmkl5ebni4uJ09OhR9e3b19/lAPAxQhQAAIAXeJwHAADgBUIUAACAFwhRAAAAXiBEAQAAeIEQBQAA4AVCFAAAgBcIUQAAAF4gRAEAAHiBEAUAAOAFQhQAAIAX/j9erg+Vd8FZuwAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# analyzing the results\n",
    "Real = []\n",
    "Imag = []\n",
    "\n",
    "for mode_data in batch_data.values():\n",
    "    idx = findMode(mode_data)\n",
    "\n",
    "    Real.append(float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).real))\n",
    "    Imag.append(float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).imag))\n",
    "\n",
    "fig, ax = plt.subplots(2, 1)\n",
    "ax[0].plot(sizes, Imag, \"o\")\n",
    "ax[0].set_ylabel(\"k\")\n",
    "ax[0].set_yscale(\"log\")\n",
    "\n",
    "ax[1].plot(sizes, Real, \"o\")\n",
    "ax[1].set_ylabel(\"n\")\n",
    "ax[1].set_xlabel(r\"Size ($\\mu$m)\")\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It is possible to note that the simulation size makes little difference in the results for the real part of the effective index. However, to achieve precise results for the imaginary part, it is important to fine-tune the mode plane size."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Next, we will run a sweep varying the resolution, analyze the behavior of both the real and imaginary parts of the effective index, and compare the results with the most precise values reported in the reference paper."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "7b6c3f7b8379446c9e767ca6b02931db",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:03:23 CET </span>Started working on Batch containing <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">6</span> tasks.                       \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:03:23 CET\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch containing \u001b[1;36m6\u001b[0m tasks.                       \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:03:34 CET </span>Maximum FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.275</span> for the whole batch.                \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:03:34 CET\u001b[0m\u001b[2;36m \u001b[0mMaximum FlexCredit cost: \u001b[1;36m0.275\u001b[0m for the whole batch.                \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Use <span style=\"color: #008000; text-decoration-color: #008000\">'Batch.real_cost()'</span> to get the billed FlexCredit cost after    \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>completion.                                                        \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mUse \u001b[32m'Batch.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed FlexCredit cost after    \n",
       "\u001b[2;36m             \u001b[0mcompletion.                                                        \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "25f5ffa2914f46df89ba2264998a5ed9",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:03:59 CET </span>Batch complete.                                                    \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:03:59 CET\u001b[0m\u001b[2;36m \u001b[0mBatch complete.                                                    \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "resolution = [20, 60, 100, 140, 180, 200]\n",
    "mode_solvers = {}\n",
    "for r in resolution:\n",
    "    mode_solver = mode_solver_substrate_loss(\n",
    "        resolution=r, npml=9, delta_override=None, size=(4, 5.3)\n",
    "    )\n",
    "    mode_solvers[str(r)] = mode_solver\n",
    "\n",
    "batch_data = web.Batch(simulations=mode_solvers, folder_name=\"radiative_losses\").run(\n",
    "    path_dir=\"radiative_losses\"\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It is notable that the results converge well toward the most precise values reported in the paper, although high resolution is needed for optimal accuracy."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkgAAAHACAYAAABZFZeHAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAARfZJREFUeJzt3Xt0FGW+7vGnEyAESSck0LlAuIgIKrfIuEIGRZQMl8MgbB1FhgMoeGMHFBUHMwMoyBgEldEzsxEVAZcDKHMEHBhhuIQgEBAwQVB3BjhA3ObmwCQdgkDofs8f7vS2KwkJIenO5ftZq9cib73d9atKmXp8q+ptmzHGCAAAAB4B/i4AAACgviEgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJCu0a5duzRy5EjFxMTIZrNp/fr1dbo+l8ul2bNnq0uXLgoODlbXrl310ksviW+MAQCg9jTzdwENXUlJifr06aNJkybp3nvvrfP1vfLKK1qyZIlWrlypW265RQcPHtTDDz+s0NBQPfnkk3W+fgAAmgIC0jUaPny4hg8fXunyixcv6ne/+51Wr16twsJC9ezZU6+88ooGDRpUo/Xt3btXo0aN0ogRIyRJnTt31urVq/X555/X6PMAAEB5XGKrY1OnTlV6errWrFmjL7/8Uvfff7+GDRumY8eO1ejzfv7zn2v79u36xz/+IUk6fPiwdu/efcWQBgAArg4jSHUoOztby5cvV3Z2tmJiYiRJM2bM0ObNm7V8+XK9/PLLV/2Zzz//vJxOp3r06KHAwEC5XC79/ve/17hx42q7fAAAmixGkOrQkSNH5HK5dOONN6p169aeV1pamk6cOCFJ+s///E/ZbLYrvp5//nnPZ3700Uf685//rFWrVumLL77QypUr9eqrr2rlypX+2kwAABodRpDq0Llz5xQYGKhDhw4pMDDQa1nr1q0lSddff72++eabK35ORESE59/PPfecnn/+eT344IOSpF69eun06dNKSUnRxIkTa3kLAABomghIdSguLk4ul0sFBQW64447KuzTokUL9ejRo9qfef78eQUEeA/8BQYGyu12X1OtAADgfxCQrtG5c+d0/Phxz88nT55UZmamwsPDdeONN2rcuHGaMGGCXnvtNcXFxen777/X9u3b1bt3b8+T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KSYmRhMmTFBOTo7XZ1R07CxYsMDHW3JtqjoWHnrooXLbOGzYMK8+jflYkFTh3webzaZFixZ5+jT0Y6E658TqnBOys7M1YsQItWrVSg6HQ88995wuX75c7ToISPVAWlqakpKStG/fPm3dulWlpaUaMmSISkpKvPo9+uijys3N9bwWLlzop4rrxi233OK1fbt37/Yse/rpp/XXv/5Va9euVVpamnJycnTvvff6sdq6ceDAAa99sHXrVknS/fff7+nT2I6DkpIS9enTR3/6058qXL5w4UK9+eabeuutt7R//35dd911Gjp0qC5cuODpM27cOH311VfaunWrNm7cqF27dumxxx7z1SZcsyvtg/Pnz+uLL77Q7Nmz9cUXX+jjjz9WVlaW7rnnnnJ9582b53VsTJs2zRfl15qqjgVJGjZsmNc2rl692mt5Yz4WJHlte25urt577z3ZbDbdd999Xv0a8rFQnXNiVecEl8ulESNG6NKlS9q7d69WrlypFStWaM6cOdUvxKDeKSgoMJJMWlqap+3OO+80Tz31lP+KqmMvvPCC6dOnT4XLCgsLTfPmzc3atWs9bd98842RZNLT031UoX889dRTpmvXrsbtdhtjGv9xIMmsW7fO87Pb7TZRUVFm0aJFnrbCwkITFBRkVq9ebYwx5uuvvzaSzIEDBzx9Pv30U2Oz2cx3333ns9pri3UfVOTzzz83kszp06c9bZ06dTKLFy+u2+J8qKL9MHHiRDNq1KhK39MUj4VRo0aZu+++26utsR0L1nNidc4Jf/vb30xAQIDJy8vz9FmyZImx2+3m4sWL1VovI0j1UFFRkSQpPDzcq/3Pf/6z2rZtq549eyo5OVnnz5/3R3l15tixY4qJidH111+vcePGKTs7W5J06NAhlZaWKjEx0dO3R48e6tixo9LT0/1Vbp27dOmSPvjgA02aNMnrC5Eb+3HwUydPnlReXp7X7z40NFTx8fGe3316errCwsL0s5/9zNMnMTFRAQEB2r9/v89r9oWioiLZbDaFhYV5tS9YsEARERGKi4vTokWLrupyQkOxc+dOORwOde/eXVOmTNGZM2c8y5rasZCfn69NmzZp8uTJ5ZY1pmPBek6szjkhPT1dvXr1UmRkpKfP0KFD5XQ69dVXX1VrvXxZbT3jdrs1ffp0DRgwQD179vS0//rXv1anTp0UExOjL7/8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OtWrX2pqqk6cOKHU1FStXLlSK1as8AQuAP7BJTYA9VK3bt20cOFCSdL8+fMVFxenl19+2bP8vffeU2xsrP7xj3/o3Llzunz5su6991516tRJktSrVy9P31dffVUzZ87Ugw8+KEl65ZVXlJqaqj/84Q/605/+dNW1BQcHq3Xr1mrWrNkVL6mtWrVKFy5c0Pvvv6/rrrtOkvTHP/5RI0eO1CuvvKLIyEhJUps2bfTHP/5RgYGB6tGjh0aMGKHt27fr0UcfveraANQORpAA1Ev9+vXz/Pvw4cNKTU1V69atPa8ePXpIkk6cOKE+ffpo8ODB6tWrl+6//3698847+te//iVJcjqdysnJ0YABA7w+f8CAAfrmm2/qdBu++eYb9enTxxOOytbrdruVlZXlabvlllsUGBjo+Tk6OloFBQV1WhuAK2MECUC99NNQce7cOc+oi1V0dLQCAwO1detW7d27V3//+9/1f/7P/9Hvfvc77d+/XxEREVe97oCAAM/luTJ1eU9Q8+bNvX622Wxyu911tj4AVWMECUC9d+utt+qrr75S586ddcMNN3i9yoKUzWbTgAEDNHfuXGVkZKhFixZat26d7Ha7YmJitGfPHq/P3LNnj26++eYK19euXTsVFxd7bvKWVG6OpBYtWsjlcl2x7ptuukmHDx/2+pw9e/YoICBA3bt3v5pdAMDHCEgA6r2kpCSdPXtWY8eO1YEDB3TixAlt2bJFDz/8sFwul/bv36+XX35ZBw8eVHZ2tj7++GN9//33uummmyRJzz33nF555RV9+OGHysrK0vPPP6/MzEw99dRTFa4vPj5erVq10m9/+1udOHFCq1atKnfTdOfOnXXy5EllZmbqn//8py5evFjuc8aNG6eWLVtq4sSJOnr0qFJTUzVt2jSNHz/ec/8RgPqJgASg3isbAXK5XBoyZIh69eql6dOnKywsTAEBAbLb7dq1a5f+1//6X7rxxhs1a9Ysvfbaa54JG5988kk988wzevbZZ9WrVy9t3rxZn3zyibp161bh+sLDw/XBBx/ob3/7m3r16qXVq1frxRdf9Opz3333adiwYbrrrrvUrl07rV69utzntGrVSlu2bNHZs2d122236Ve/+pUGDx6sP/7xj7W+jwDULpuxXmgHAABo4hhBAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAW/x8Lob/XA23Q4AAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "Real = []\n",
    "Imag = []\n",
    "\n",
    "\n",
    "for mode_data in batch_data.values():\n",
    "    idx = findMode(mode_data)\n",
    "\n",
    "    Real.append(float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).real))\n",
    "    Imag.append(float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).imag))\n",
    "\n",
    "\n",
    "fig, ax = plt.subplots(2, 1)\n",
    "ax[0].plot(resolution, Imag, \"o\")\n",
    "ax[0].hlines(2.913e-8, xmin=0, xmax=300, color=\"black\", ls=\"--\", lw=0.4)\n",
    "ax[0].set_xlim(15, 205)\n",
    "ax[0].set_ylabel(\"k\")\n",
    "\n",
    "\n",
    "ax[1].plot(resolution, Real, \"o\")\n",
    "ax[1].hlines(2.41237, xmin=0, xmax=300, color=\"black\", ls=\"--\", lw=0.4)\n",
    "ax[1].set_xlim(15, 205)\n",
    "ax[1].set_ylabel(\"n\")\n",
    "ax[1].set_xlabel(\"resolution\")\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Real part\n",
    "\n",
    "One can note that the imaginary part of the effective index converges better than the real part in the plot shown above. It is worth mentioning that, for calculating the real part, placing a mesh override region around the waveguide improves the convergence speed without requiring a high mesh density across the entire simulation plane. However, in this case, the imaginary part may exhibit greater error."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "49827a2023534f698d4b02a7d707cca9",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:05:17 CET </span>Started working on Batch containing <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">5</span> tasks.                       \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:05:17 CET\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch containing \u001b[1;36m5\u001b[0m tasks.                       \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:05:25 CET </span>Maximum FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.051</span> for the whole batch.                \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:05:25 CET\u001b[0m\u001b[2;36m \u001b[0mMaximum FlexCredit cost: \u001b[1;36m0.051\u001b[0m for the whole batch.                \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Use <span style=\"color: #008000; text-decoration-color: #008000\">'Batch.real_cost()'</span> to get the billed FlexCredit cost after    \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>completion.                                                        \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mUse \u001b[32m'Batch.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed FlexCredit cost after    \n",
       "\u001b[2;36m             \u001b[0mcompletion.                                                        \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fc8c98e437794cf1ba43d857091cf851",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:05:39 CET </span>Batch complete.                                                    \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:05:39 CET\u001b[0m\u001b[2;36m \u001b[0mBatch complete.                                                    \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "grid_step = [0.1, 0.05, 0.01, 0.005, 0.002]\n",
    "mode_solvers = []\n",
    "for dl in grid_step:\n",
    "    mode_solver = mode_solver_substrate_loss(\n",
    "        resolution=20,\n",
    "        npml=9,\n",
    "        delta_override=dl,\n",
    "        size=(4, 5.3),\n",
    "    )\n",
    "    mode_solvers.append(mode_solver)\n",
    "\n",
    "batch_data = web.Batch(\n",
    "    simulations=mode_solvers,\n",
    "    folder_name=\"radiative_losses\",\n",
    ").run(path_dir=\"radiative_losses\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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aWFAIiIiItLCgERERESkhQGJiIiISAsDEhEREZEWBiQiIiIiLQxIRERERFoYkIiIiIi0MCARERERaWFAIiIiItLCgERERESkhQGJiIiISAsDEhEREZEWBiQiIiIiLQxIRERERFoYkIiIiIi0MCARERERaWFAIiIiItLCgERERESkhQGJiIiISAsDEhEREZEWBiQiIiIiLSYfkL755huEhobC2dkZzs7OiIyMxG+//XbXbdauXYuQkBDY2dmha9eu+PXXX5upWiIiIjIFJh+Q/Pz88PHHH+PYsWP4448/8PDDD2P48OH4888/613/wIEDePrppzFp0iSkp6cjLi4OcXFxOHXqVDNXTkRERMZKIgiCIHYR+ubm5oYFCxZg0qRJdT576qmnoFQqsXXrVs2y3r17Izw8HIsXL9b5GHK5HFKpFKWlpXB2dtZL3URERGRYun5/m/wI0r+pVCqsXr0aSqUSkZGR9a5z8OBBxMbG1lo2aNAgHDx48K77rqiogFwur/VDRERE5sksAlJmZiYcHR1ha2uLF198EUlJSejUqVO96xYUFMDT07PWMk9PTxQUFNz1GAkJCZBKpZoff39/vdVPRERExsUsAlJwcDAyMjJw+PBhvPTSSxg3bhxOnz6t12PMnDkTpaWlmp/Lly/rdf9ERERkPKzELkAfbGxs0K5dOwBAjx49cPToUSxatAhLliyps66XlxcKCwtrLSssLISXl9ddj2FrawtbW1v9FU1ERERGyyxGkLSp1WpUVFTU+1lkZCSSk5NrLdu5c2eDPUtERETU8pj8CNLMmTMxZMgQBAQEQKFQIDExESkpKdi+fTsAID4+Hr6+vkhISAAAvPLKK+jXrx8+/fRTDB06FKtXr8Yff/yBpUuXinkaREREZERMPiAVFRUhPj4e+fn5kEqlCA0Nxfbt2zFgwAAAQG5uLiws/hkoe+ihh5CYmIhZs2bh7bffRvv27bFx40Z06dJFrFMgIiIiI2OW8yA1B86DREREZHpa5DxIRERERPrAgERERESkhQGJiIiISAsDEhEREZEWBiQiIiIiLQxIRERERFoYkIiIiIi0MCARERERaWFAIiIiItLCgERERESkhQGJiIiISAsDEhEREZEWBiQiIiIiLQxIRERERFoYkIiIiIi0MCARERERaWFAIiIiItJiJXYBpm7mzJmwtbXF7NmzMWfO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StjY2MDLy0vsUojIRHEEiYiMmkKhwJgxY+Dg4ABvb28sXLgQMTExmDZtmmadoKAgfPjhh4iPj4ezszOef/75em+x/frrr+jQoQPs7e3Rv39/5OTk3PXYgiDg/fffR0BAAGxtbeHj44OXX34ZABATE4NLly7h1VdfhUQigUQi0Wy3b98+9O3bF/b29vD398fLL78MpVJZp96nn34aDg4O8PX1xVdffaWXPy8i0g8GJCIyatOnT8f+/fuxefNm7Ny5E2lpaTh+/Hid9T755BOEhYUhPT0d7777bp3PL1++jCeeeALDhg1DRkYGnn32WcyYMeOux16/fj0WLlyIJUuWIDs7Gxs3bkTXrl0BABs2bICfnx/mzJmD/Px85OfnAwDOnz+PwYMHY8SIETh58iTWrFmDffv2YcqUKbX2vWDBAk29M2bMwCuvvIKdO3c29Y+JiPRNICIyUnK5XLC2thbWrl2rWVZSUiI88MADwiuvvKJZFhgYKMTFxdXa9uLFiwIAIT09XRAEQZg5c6bQqVOnWuu89dZbAgDhxo0b9R7/008/FTp06CBUVlbW+3lgYKCwcOHCWssmTZokPP/887WWpaWlCRYWFkJZWZlmu8GDB9da56mnnhKGDBlS73GIqPlxBImIjNaFCxdQVVWFBx98ULNMKpUiODi4zro9e/a8677OnDmDiIiIWssiIyPvus2oUaNQVlaGNm3a4LnnnkNSUhKqq6vvus2JEyewcuVKODo6an4GDRoEtVqNixcvNnjsyMhInDlz5q77JqLmw4BERGbBwcFB7/v09/dHVlYWvv76a9jb2+P//u//EB0djaqqqga3uXnzJl544QVkZGRofk6cOIHs7Gy0bdtW7zUSkWEwIBGR0WrTpg2sra1x9OhRzbLS0lKcPXu20fvq2LEjjhw5UmvZoUOH7rmdvb09hg0bhi+++AIpKSk4ePAgMjMzAQA2NjZQqVS11u/evTtOnz6Ndu3a1fmxsbFp8NiHDh1Cx44dG31eRGQYDEhEZLScnJwwbtw4vPHGG9izZw/+/PNPTJo0CRYWFrWeGtPFiy++iOzsbLzxxhvIyspCYmIiVq5ceddtVq5cieXLl+PUqVO4cOECfvzxR9jb2yMwMBDA7afR9u7diytXruDatWsAgLfeegsHDhzAlClTkJGRgezsbGzatKlOk/b+/fsxf/58nD17Fl999RXWrl2LV155pVHnRESGw4BEREbts88+Q2RkJB599FHExsaiT58+6NixI+zs7Bq1n4CAAKxfvx4bN25EWFgYFi9ejP/973933cbFxQXLli1Dnz59EBoail27dmHLli1wd3cHAMyZMwc5OTlo27YtWrVqBQAIDQ1Famoqzp49i759+6Jbt26YPXs2fHx8au37tddewx9//IFu3bph7ty5+OyzzzBo0KBGnRMRGY5EEARB7CKIiHSlVCrh6+uLTz/9FJMmTRK7nCYJCgrCtGnTas3lRETGhTNpE5FRS09Px19//YUHH3wQpaWlmDNnDgBg+PDhIldGROaMAYmIjN4nn3yCrKws2NjYoEePHkhLS4OHh4fYZRGRGeMtNiIiIiItbNImIiIi0sKARERERKSFAYmIiIhICwMSERERkRYGJCIiIiItDEhEREREWhiQiIiIiLQwIBERERFp+X9EjxVFHFV4EAAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "real = []\n",
    "imag = []\n",
    "\n",
    "for mode_data in batch_data.values():\n",
    "    idx = findMode(mode_data)\n",
    "\n",
    "    real.append(float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).real))\n",
    "    imag.append(float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).imag))\n",
    "\n",
    "fig, ax = plt.subplots(2, 1)\n",
    "ax[0].plot(grid_step, imag, \"-o\", lw=0.4)\n",
    "ax[0].hlines(2.913e-8, xmin=0, xmax=300, color=\"black\", ls=\"--\", lw=0.4)\n",
    "ax[0].set_xlim(0.11, 0.0019)\n",
    "ax[0].set_xscale(\"log\")\n",
    "ax[0].set_ylabel(\"k\")\n",
    "\n",
    "ax[1].plot(grid_step, real, \"-o\", lw=0.4)\n",
    "ax[1].hlines(2.41237, xmin=0, xmax=300, color=\"black\", ls=\"--\", lw=0.4)\n",
    "ax[1].set_xlim(0.11, 0.0019)\n",
    "ax[1].set_xscale(\"log\")\n",
    "ax[1].set_ylabel(\"n\")\n",
    "ax[1].set_xlabel(\"grid step\")\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Bent SiN waveguide\n",
    "\n",
    "Next, we will study radiative losses in a bent SiN waveguide."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "# function to define the mode solver\n",
    "def mode_solver_SiN_wvg(\n",
    "    resolution,\n",
    "    npml,\n",
    "    delta_override=None,\n",
    "    size=(20, 15),\n",
    "    nun_modes=10,\n",
    "    target_neff=1.547,\n",
    "    bend_radius=None,\n",
    "    bend_axis=1,\n",
    "    symmetry=(0, 0, 1),\n",
    "    fields=[\"Ex\", \"Ey\", \"Ez\"],\n",
    "):\n",
    "    siN = td.Medium(permittivity=2**2)\n",
    "    sio2 = td.Medium(permittivity=1.444**2)\n",
    "\n",
    "    structures = [td.Structure(geometry=td.Box(size=(100, 0.6, 0.4)), medium=siN)]\n",
    "\n",
    "    mode_spec = td.ModeSpec(\n",
    "        num_modes=nun_modes,\n",
    "        target_neff=target_neff,\n",
    "        precision=\"double\",\n",
    "        bend_radius=bend_radius,\n",
    "        bend_axis=bend_axis,\n",
    "        num_pml=(npml, npml),\n",
    "    )\n",
    "\n",
    "    if delta_override:\n",
    "        mesh_override = [\n",
    "            td.MeshOverrideStructure(\n",
    "                geometry=td.Box(center=(0, 0, 0), size=(0, 2 * 0.6, 2 * 0.22)),\n",
    "                dl=(delta_override,) * 3,\n",
    "            )\n",
    "        ]\n",
    "    else:\n",
    "        mesh_override = []\n",
    "\n",
    "    grid_spec = td.GridSpec.auto(\n",
    "        min_steps_per_wvl=resolution, wavelength=1.55, override_structures=mesh_override\n",
    "    )\n",
    "\n",
    "    sim = td.Simulation(\n",
    "        size=(10, size[0], size[1]),\n",
    "        center=(0, 0, 0),\n",
    "        grid_spec=grid_spec,\n",
    "        structures=structures,\n",
    "        sources=[],\n",
    "        monitors=[],\n",
    "        run_time=1e-12,\n",
    "        boundary_spec=td.BoundarySpec.all_sides(boundary=td.PML()),\n",
    "        symmetry=symmetry,\n",
    "        medium=sio2,\n",
    "    )\n",
    "\n",
    "    plane = td.Box(center=(0, 0, 0), size=(0, size[0], size[1]))\n",
    "\n",
    "    mode_solver = ModeSolver(\n",
    "        simulation=sim,\n",
    "        plane=plane,\n",
    "        mode_spec=mode_spec,\n",
    "        freqs=[td.C_0 / 1.55],\n",
    "        fields=fields,\n",
    "    )\n",
    "\n",
    "    return mode_solver"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmkAAAHWCAYAAAAsBR7vAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAmqVJREFUeJzsnXmcHFW99p/aep/umUyWSSBARCQICBggBvGiEA3KvRBFBF40yEU2w2ZEEGUR5BoWgSggEWTRK1y48VW8yqIhLLIEFAjvFRBEQEBkAjPM9L7Uct4/qquX6a5epnumu5Pn+/n0J5mqU/U71b+qOk+fqvMcSQghQAghhBBCugq50xUghBBCCCGVUKQRQgghhHQhFGmEEEIIIV0IRRohhBBCSBdCkUYIIYQQ0oVQpBFCCCGEdCEUaYQQQgghXQhFGiGEEEJIF0KRRgghhBDShVCkEUK6koceegiSJOGhhx7qdFXIFPDHP/4RHo8Hr7/++rTHHh0dRTAYxD333DPtsQlpBoo0QkhH+dGPfoRbb72109WYFLfffjvWrFnT6WqUcdNNN2GXXXaBz+fDTjvthGuuuabhbbPZLM455xzMmzcPfr8fixcvxvr166uWffzxx7H//vsjEAhgaGgIp59+OhKJRMOxvv3tb+Poo4/G9ttv3/A27WJwcBBf+cpXcP755097bEKaQhBCSAfZddddxQEHHFCx3DRNkU6nhWma01+pBjnkkEPE9ttv3+lqFFi7dq0AIA4//HBxww03iC996UsCgLj00ksb2v6oo44SqqqKs846S/z4xz8WS5YsEaqqikceeaSs3KZNm4TP5xN77bWXuP7668W3v/1t4fV6xcEHH9xQnE2bNgkA4vHHH2/6GNvFCy+8IACIDRs2dKwOhNSDIo2QLiCRSHS6Ch3DTaT1At0k0lKplBgcHBSHHHJI2fJjjjlGBINB8d5779Xc/sknnxQAxBVXXFFYlk6nxY477iiWLFlSVvbTn/60mDt3rohGo4VlN954owAgfve739Wt6+mnny622247YVlWI4c2Zey2227iS1/6UkfrQEgt+LiTkDbz1ltv4fjjj8e8efPg9XqxYMECnHLKKcjlcgCAW2+9FZIk4eGHH8ZXv/pVzJ49G9tuu21h+x/96EfYdddd4fV6MW/ePKxcuRLj4+NlMV5++WUcfvjhGBoags/nw7bbboujjjoK0Wi0UGb9+vXYf//90d/fj1AohJ133hnf+ta36ta/ke2y2SwuvPBCvP/974fX68X8+fNx9tlnI5vNVuzv5z//Ofbdd18EAgEMDAzgX/7lX/D73/8eALDDDjvg+eefx8MPPwxJkiBJEj7+8Y8DcH8nbd26dVi0aBH8fj9mzpyJL37xi3jrrbfKynz5y19GKBTCW2+9heXLlyMUCmHWrFk466yzYJpm3e/g17/+NQ455JBCDnfccUd897vfLdv24x//OO6++268/vrrhbrvsMMOrvu85ZZbIEkSbr755rLl3/ve9yBJUsvvRz344IMYHR3FV7/61bLlK1euRDKZxN13311z+1/84hdQFAUnnnhiYZnP58Pxxx+PjRs34s033wQAxGIxrF+/Hl/84hcRDocLZVesWIFQKIT//u//rlvXu+66CwceeCAkSSpbLkkSvvOd71SU32GHHfDlL3+58LdzDT366KM4/fTTMWvWLPT39+Okk05CLpfD+Pg4VqxYgYGBAQwMDODss8+GEKJiv5/85Cfxm9/8puo6QroBtdMVIGRL4p///Cf23XdfjI+P48QTT8TChQvx1ltv4Re/+AVSqRQ8Hk+h7Fe/+lXMmjULF1xwAZLJJADgO9/5Di666CIsXboUp5xyCl566SVcf/31+NOf/oTHHnsMmqYhl8th2bJlyGazOO200zA0NIS33noLv/3tbzE+Po5IJILnn38e//qv/4oPfehDuPjii+H1evG3v/0Njz32WM36N7KdZVk49NBD8eijj+LEE0/ELrvsgj//+c+4+uqr8de//hV33XVXoexFF12E73znO9hvv/1w8cUXw+Px4Mknn8QDDzyAT33qU1izZg1OO+00hEIhfPvb3wYAzJkzx7V+t956K4477jjss88+WL16NTZv3owf/OAHeOyxx7Bp0yb09/cXypqmiWXLlmHx4sX4/ve/j/vvvx9XXnkldtxxR5xyyik1v4dbb70VoVAIq1atQigUwgMPPIALLrgAsVgMV1xxBQD7napoNIp//OMfuPrqqwEAoVDIdZ/HHXccfvnLX2LVqlX45Cc/ifnz5+PPf/4zLrroIhx//PH4zGc+Uyg7NjbWkJgMBAIIBAIAgE2bNgEA9t5777IyixYtgizL2LRpE774xS+67mvTpk34wAc+UCa8AGDfffcFADz77LOFOhuGURHH4/Fgzz33LNTDjbfeegtvvPEGPvzhD9c9vno45/9FF12EJ554AjfccAP6+/vx+OOPY7vttsP3vvc93HPPPbjiiiuw2267YcWKFWXbL1q0CFdffTWef/557Lbbbi3Xh5C20+muPEK2JFasWCFkWRZ/+tOfKtY5j3ZuueUWAUDsv//+wjCMwvp33nlHeDwe8alPfarsPaxrr71WABA333yzEKL4Ps+6detc63H11VcLAOLdd99tqv6NbPef//mfQpbliveUnPehHnvsMSGEEC+//LKQZVl89rOfrXivrPQxl9vjzgcffFAAEA8++KAQQohcLidmz54tdtttN5FOpwvlfvvb3woA4oILLigsO/bYYwUAcfHFF5ftc6+99hKLFi2q/SUI+9HhRE466SQRCAREJpMpLGv2cefbb78tZsyYIT75yU+KbDYr9tprL7HddtuVPTYUQojtt99eAKj7ufDCCwvbrFy5UiiKUjXurFmzxFFHHVWzbrvuuqs48MADK5Y///zzAoBYu3atEEKIdevWCQDiD3/4Q0XZI444QgwNDdWMc//99wsA4je/+U3FuonH5LD99tuLY489tvC3cw0tW7as7FxasmSJkCRJnHzyyYVlhmGIbbfdtuo59vjjjwsA4s4776xZZ0I6BR93EtImLMvCXXfdhX/7t3+r6GUAUPFo54QTToCiKIW/77//fuRyOZx55pmQZbmsXDgcLjyuikQiAIDf/e53SKVSVevi9Cj9+te/hmVZDR9DI9utW7cOu+yyCxYuXIiRkZHC58ADDwRgP3YD7EdalmXhggsuKDseoPK7aISnnnoK77zzDr761a/C5/MVlh9yyCFYuHBh1cd5J598ctnfH/vYx/Dqq6/WjeX3+wv/j8fjGBkZwcc+9jGkUim8+OKLTdfdYWhoCNdddx3Wr1+Pj33sY3j22Wdx8803V/Re3XbbbVi/fn3dT2nPUDqdLuupLcXn8yGdTtesWzqdhtfrrbqts770X7ey9eKMjo4CAAYGBmqWa4Tjjz++7FxavHgxhBA4/vjjC8sURcHee+9dNe9OHUZGRlquCyFTAR93EtIm3n33XcRisYYfmyxYsKDsb8cvaueddy5b7vF48L73va+wfsGCBVi1ahWuuuoq3HbbbfjYxz6GQw89FF/84hcLAu7II4/ET37yE3zlK1/BN7/5TRx00EH43Oc+h89//vMVgqmURrZ7+eWX8Ze//AWzZs2quo933nkHAPDKK69AlmV88IMfbOj7qIfb9wMACxcuxKOPPlq2zOfzVdRxYGAAY2NjdWM9//zzOO+88/DAAw8gFouVrSt9728yHHXUUfj5z3+Ou+++GyeeeCIOOuigijIf/ehHm96v3+8vvPc4kUwmUyY83bav9k5hJpMprC/9161svTgOog3vgW233XZlfzvn//z58yuWV8u7U4fJ/GggZDqgSCOkQzTamFXjyiuvxJe//GX8+te/xu9//3ucfvrpWL16NZ544glsu+228Pv9+MMf/oAHH3wQd999N+677z7ceeedOPDAA/H73/++rAdvYp3qbWdZFnbffXdcddVVVfcxsYHsFG7HWI/x8XEccMABCIfDuPjii7HjjjvC5/PhmWeewTnnnNNUz2Q1RkdH8dRTTwEAXnjhBViWVSGc33333YbeSQuFQoX34ObOnQvTNPHOO+9g9uzZhTK5XA6jo6OYN29ezX3NnTu3YgAGALz99tsAUNh+7ty5Zcsnlq0XZ3BwEAAaEssOboLOLcfVllfbh1OHmTNnNlwXQqYTPu4kpE3MmjUL4XAYzz333KS2d0w9X3rppbLluVwOr732WoXp5+67747zzjsPf/jDH/DII4/grbfewtq1awvrZVnGQQcdhKuuugovvPAC/uM//gMPPPBA4XGkG/W223HHHfHee+/hoIMOwtKlSys+Tk/XjjvuCMuy8MILL9SM12gvhtv34yxrlynqQw89hNHRUdx6660444wz8K//+q9YunRp1cdzk+mBWblyJeLxOFavXo1HH320qhnuPvvsg7lz59b9fP/73y9ss+eeewJAQQA6PPXUU7Asq7DejT333BN//etfK3oOn3zyybL977bbblBVtSJOLpfDs88+WzfOwoULAQCvvfZa1fXxeLximdM7226cOuyyyy5Tsn9CWoUijZA2Icsyli9fjt/85jcVDRhQ//HO0qVL4fF48MMf/rCs7E033YRoNIpDDjkEgG2BYBhG2ba77747ZFkuPIJ67733KvbvNJ7VHlM5NLLdF77wBbz11lu48cYbK8qm0+nCSNXly5dDlmVcfPHFFb1PpccXDAYrLEaqsffee2P27NlYu3Zt2THce++9+Mtf/lL4flrF6YUprWMul8OPfvSjirLBYLCpx5+/+MUvcOedd+LSSy/FN7/5TRx11FE477zz8Ne//rWs3GTeSTvwwAMxY8YMXH/99WX7uv766xEIBMq+n5GREbz44otl7zR+/vOfh2mauOGGGwrLstksbrnlFixevLjQQxqJRLB06VL8/Oc/LxNU//mf/4lEIoEjjjii5newzTbbYP78+VWvEQAVliv33nsvMpnMlNhkPP3004hEIth1113bvm9C2kKnRiwQsiXyj3/8QwwNDYlAICDOPPNM8eMf/1h85zvfEbvuuqsYGxsTQhRHplUbAXrhhRcKAOJTn/qUuPbaa8Vpp50mFEUR++yzj8jlckIIIX71q1+JbbbZRpx55pniRz/6kfjhD38o9tlnH6Fpmti4caMQQogzzjhD7LXXXuK8884TN954o/iP//gPsc0224htt91WjI+Pu9a/ke1M0xSf+cxnhCRJ4qijjhLXXHONWLNmjTj55JPFjBkzyo7r/PPPFwDEfvvtJ77//e+La665RqxYsUJ885vfLJT56le/KiRJEt/97nfFf/3XfxUc4CeO7iz97hYvXizWrFkjzj33XBEIBMQOO+xQ+H6FsEd3BoNB1++3FiMjI2JgYEBsv/324sorrxRXXXWV2GuvvcQee+xRUZ/LL79cABBf+9rXxO233y7+53/+x3W/mzdvFjNnzhSf+MQnCiMSR0ZGxJw5c8SSJUvaMrPCddddJwCIz3/+8+LGG28UK1asEADEf/zHf5SVc76H0mMRwh6dqaqq+MY3viF+/OMfi/3220+oqioefvjhsnJPP/208Hq9ZTMO+Hw+8alPfaqhep566qlim222qTCzBSD8fr/49Kc/La6//npx/vnni3A4LCKRiHj/+98vbr/9diGE+zXkHNfE0clu58Nuu+0mvvjFLzZUZ0I6AUUaIW3m9ddfFytWrBCzZs0SXq9XvO997xMrV64U2WxWCFFbpAlhW24sXLhQaJom5syZI0455ZQyAfLqq6+Kf//3fxc77rij8Pl8YsaMGeITn/iEuP/++wtlNmzYIA477DAxb9484fF4xLx588TRRx8t/vrXv9ase6Pb5XI5cdlll4ldd91VeL1eMTAwIBYtWiQuuuiiCjuJm2++Wey1116FcgcccIBYv359Yf3w8LA45JBDRF9fnwBQsEqoJtKEEOLOO+8s7G/GjBnimGOOEf/4xz/KyrQi0oQQ4rHHHhMf+chHhN/vF/PmzRNnn322+N3vfldRn0QiIf7P//k/or+/XwCoacfxuc99TvT19Ym///3vZct//etfCwDisssuq1uvRrjhhhvEzjvvLDwej9hxxx3F1VdfXSGG3ERaOp0WZ511lhgaGhJer1fss88+4r777qsa55FHHhH77bef8Pl8YtasWWLlypUiFos1VMdnnnlGAKiwcQEgVq1aJY444gjh9/vF3LlzxbXXXivWrl0rAoGA+MpXviKEaI9I+8tf/iIAlF03hHQbkhC0WiaEEDK9HHTQQZg3bx7+8z//s7BMkiRceOGFVWcdaDdnnnkm/vCHP+Dpp5/m6E7StfCdNEIIIdPO9773Pdx5550Fa5XpZHR0FD/5yU9wySWXUKCRroYWHIQQQqadxYsXu/q6TTWDg4NIJBIdiU1IM7AnjRBCCCGkC2FPGiGEkK6Ar0gTUg570gghhBBCuhCKNEIIIYSQLoSPOxvEsiz885//RF9fH0cDEUIIIVsJQgjE43HMmzevYp7dqYYirUH++c9/4ic/+cmUvTMxUfjVimOa5pTUQ5blsnpYljXt74hIklR2EQghWp7QejJMnKC5kcmu2w3zUYT5sGE+ijAfRbbkfEiSVHF89cqX0q5z4uKLL8abb76Jbbfdti37axSKtAbp6+uDEAKqqkJV2/+1maZZuLAURal6Ugp7hgj09/dD07S218GyLIyNjQEAPB4P+vr62h6jEeLxeGFo/sDAwLT/cgHsuRqdeQn7+vrg8XimvQ7MRxHmowjzYcN8FNmS86HrOsbHxyFJUkNPsUptXVRVbUs+nLmSO3GOUaQ1iHNyqKradoFkGAYsyyrEsCyrqhi0LAuWZSEUCrX9IrQsC6Ojo/B4PPB6vchkMgCm/6SMx+MQQqCvrw/ZbBa5XA6Dg4PTeuNzbniBQACAPcn0dN/4mI8izEcR5sOG+SiypefDOT5Zlut+r9lsFoDdq+f0amqa1rZ8dOJVJw4c6DCGYSCXy0GSJPh8Pvh8PkiShFwuV1DvU41zgem6jpkzZ2JwcBDhcBixWKzw62w6iMfjiMViCIfDGBwcxMyZM6HrOkZHR6ftEUIul8PIyAg0TcPMmTMxc+ZMaJqGkZGRaTPeZD6KMB9FmA8b5qMI81Ekm83CMAyoqgq/3w+PxwMhBLLZbEceQbcLirQOUirQvF5v4ZeC1+udNqE28QJzfn319fVN64VWesNzfn15PJ5pvfGV3vCcX8OyLGNwcHDabnzMRxHmowjzYcN8FGE+ipQKNK/XC8B+6rUlCDWKtA5RTaA5TJdQc7vAHKbrQqt2w3OYrhtftRuew3Td+JiPIsxHEebDhvkownwUqSbQHLYEoUaR1gFqCTSHqRZq9S4wh6m+0Grd8Bym+sZX64bnMNU3PuajCPNRhPmwYT6KMB9Fagk0h14XahRp00wjAs1holBr17DqRi8wh6m60Bq54TlM1Y2vkRuew1Td+JiPIsxHEebDhvkownwUaUSgOfSyUKNIm0aaEWgOE4VaqydXsxeYQ7svtGZueA7tvvE1c8NzaPeNj/kownwUYT5smI8izEeRZgSaQ68KNYq0JpAkadKJnYxAcygVaoZhQNf1SdVhsheYQ7sutMnc8BzadeObzA3PoV03PuajCPNRhPmwYT6KMB9FJiPQHHpRqFGkNYnjadbsNpMVaA6lQm1sbKzpC63VC8yh1QutlRueQ6s3vlZueA6t3viYjyLMRxHmw4b5KMJ8FGlFoDn0mlCjSGsCZ3qJZhLbDoHm4EyPoapqUxdauy4wh8leaO244TlM9sbXjhuew2RvfMxHEeajCPNhw3wUYT6KOAPoWhFoDr0k1CjSmkRRlIYT206B5iDLcmFaqEYutHZfYA7NXmjtvOE5NHvja+cNz6HZGx/zUYT5KMJ82DAfRZiPIoZhwDTNtgg0h14RahRpTaIoSkOJnQqB5tDohTZVF5hDoxfaVNzwHBq98U3FDc+B+SjCfBRhPmyYjyLMR5FG85FMJmFZFhRFaZtAc2hUqHViwnoHirRJUC+xUynQHOpdaFN9gTnUu9Cm8obnUO/GN5U3PAfmowjzUYT5sGE+ijAfRRrJRyKRgCzLU1aHRtpzirQexC2x0yHQHNwutOm6wBzcLrTpuOE5uN34puOG58B8FGE+ijAfNsxHEeajSL18hEIhqKo6pXWo1553kqk98i0c58TJ5XLIZrPQNG3aBJqDc6GNjo5iZGQEg4ODiMVi03aBOTg3tVgsVlg2XTc8B+fGNzIygtHRUYTDYYyOjk7LDc+B+SjCfBRhPmyYjyLMR5Fa+fB6vWXLp4pa7bmiKFMe37VeHYu8heAkNpvNIpvNTqtAc3AutJGREYyMjAAAZs2aNW0XmMPEC206b3gOzo3v3XffnbZfpBNhPoowH0WYDxvmowjzUcQtH9PZk+XWnvNxJyGEEEIIKYMirUWcZ9aO2SzQnI9aO3DeITAMo9BFPRWT6taj9J2OqZxUtxbOOx3OL1TDMKZkkuNaMB9FmI8izIcN81GE+SjSDfnohvZ8IhRpLTBxkEAnfFcmvuTp9XqnZFLdekx86XaqJtWtxcSXbr1e75RMclwL5qMI81GE+bBhPoowH0Vq5SOZTE5LHWq154ZhTEsdqkGRNkncRnFOp1BzG4XT7kl16+E2Kmo6b3xuo6LaPclxLZiPIsxHEebDhvkownwUqZePRCIx5SKpXnveSSjSJkE9m43pEGr1hklP14VWb9j6dNz46g1bn44bH/NRhPkownzYMB9FmI8ijeQjFArBsqwpq0Mj7XknR3dSpDWJaZoN2WxMpVBr1Mdmqi+0Rn2FpvLG16iv0FTe+JiPIsxHEebDhvkownwUaTQfwWAQsizDNE1ks9m21qFRX1OKtB7CNM2GbTamQqhZloXx8fGGfWym6kJr1vhxKm58zRo/TsWNr1njR+ajCPNRhPmwYT6KMB9FnN4swzDaJtSm03i+FbqzVl2KJEkA0FRC2ynUhBAwTbNsFE4jtPtCm6wzdztvfJN15m7njW+yztzMRxHmowjzYcN8FGE+ing8Hqiq2hah1isCDaBIaxpVVZtOaDuEmmVZyGazEEJgYGCg6ZcZ23WhtTp1SjtufK1OndKOG1+rU6cwH0WYjyLMhw3zUYT5KOKMumxFqPWSQAMo0ppCCDHphLYi1EoFmqqq0DRtUnVo9UJr19x2rdz42jW3XSs3vnbNbcd8FGE+ijAfNsxHEeajSCtCrdcEGkCRNq1MRqiVCjSPx9PySTXZC63dkw9P5sbX7smHJ3Pja/fkw8xHEeajCPNhw3wUYT6KTEao9aJAAyjSpp1mhNpEgdauESbNXmjtvsAcmrnxtfuG59DMja/dNzwH5qMI81GE+bBhPoowH0WaEWq9KtAAirSO0IhQmyjQnIlf20WjF9pUXWAOjdz4puqG59DIjW+qbngOzEcR5qMI82HDfBRhPoo0ItR6WaABFGkdo5ZQm2qB5lDvQpvqC8yh1o1vqm94DrVufFN9w3NgPoowH0WYDxvmowjzUaSWUOt1gQYAU9P6b8EIIdpmLCjLMjRNQy6XQyaTKVxMuVyu7B00J55lWRBCQNf1tsR3CIfDGBsbwzvvvIOBgQFomoZkMolEIoFQKASv1zvlU4N4vV4EAgGMj4/DMAwEg0Houo6xsTGoqopwODwt86dFIpGy7wIAxsbGYBhG4e+p/i6YjyLMhw3zUYT5KLI15EPX9brtrqZphTk2nbaz1HjeGWw32bZbCDGp7dqBJDoZvYeIxWK48sor2/pumINlWTAMo+DD5ozinKj6HZHW39/f9t41IURBHDruzpqmTVkvnhuGYUDXdSiKAsuyIEkSPB5P4buZDpwpSErz0Y5BG83AfBRhPoowHyjEZD5stvR8GIaB8fFxSJJU95gMwyjkQQgBSZKgqmrL+TBNE+eddx6i0SjC4XBL+2qWrutJe+utt3DOOefg3nvvRSqVwvvf/37ccsst2HvvvV23eeihh7Bq1So8//zzmD9/Ps477zx8+ctfLitz3XXX4YorrsDw8DD22GMPXHPNNdh3332bqpthGJgzZw6CweBkDq0muVwOY2NjAODqg6brOrLZLD7zmc8gEom0vQ6EEEJINxGNRnHPPffA6/U2ZD81Pj5eeOw5e/bstgjmZDLZ8j4mS1eJtLGxMXz0ox/FJz7xCdx7772YNWsWXn755UK3bTVee+01HHLIITj55JNx2223YcOGDfjKV76CuXPnYtmyZQCAO++8E6tWrcLatWuxePFirFmzBsuWLcNLL72E2bNnN1VH512ydmJZFqLRaOFXQjqdRiAQqPqrwTRNRCIRzJgxo611IIQQQroRxx+0Xtuby+VgGEah7czlcm15H67dc4Y2Q1eJtMsuuwzz58/HLbfcUli2YMGCmtusXbsWCxYswJVXXgkA2GWXXfDoo4/i6quvLoi0q666CieccAKOO+64wjZ33303br75Znzzm9+coqNpjNKXPGfNmgUAGBkZwejo6JS+eEoIIYRsKUwctJFMJhGLxQBgSgcuTDVdpQD+53/+B3vvvTeOOOIIzJ49G3vttRduvPHGmtts3LgRS5cuLVu2bNkybNy4EYCduKeffrqsjCzLWLp0aaFMp6g2CmcqJtUlhBBCtlSqjapt59yrnaSrRNqrr76K66+/HjvttBN+97vf4ZRTTsHpp5+On/70p67bDA8PY86cOWXL5syZg1gshnQ6jZGREZimWbXM8PCw636z2SxisVjZp53UGiZNoUYIIYTUp5btyZYg1LpKpFmWhQ9/+MP43ve+h7322gsnnngiTjjhBKxdu3ba67J69WpEIpHCZ/78+W3bdyM+NhRqhBBCiDuN+NL1ulDrKpE2d+5cfPCDHyxbtssuu+CNN95w3WZoaAibN28uW7Z582aEw2H4/X7MnDkTiqJULTM0NOS633PPPRfRaLTwefPNNydxRJU0YzQ4UajRLYUQQghpzji4l4VaV4m0j370o3jppZfKlv31r3/F9ttv77rNkiVLsGHDhrJl69evx5IlSwDYQmfRokVlZSzLwoYNGwplquH1ehEOh8s+rTIZJ+hSoTY2NkahRgghZKtmMjM79KpQ6yqR9rWvfQ1PPPEEvve97+Fvf/sbbr/9dtxwww1YuXJlocy5556LFStWFP4++eST8eqrr+Lss8/Giy++iB/96Ef47//+b3zta18rlFm1ahVuvPFG/PSnP8Vf/vIXnHLKKUgmk4XRno3SykjLVqbqcISaM8UFIYQQsjXSytRbvSjUusqCY5999sGvfvUrnHvuubj44ouxYMECrFmzBsccc0yhzNtvv132+HPBggW4++678bWvfQ0/+MEPsO222+InP/lJwX4DAI488ki8++67uOCCCzA8PIw999wT9913X8VggnpIkoR0Ot30cN52zKXm8XgwMDDQUVM9QgghpFO0Y25Up/3uFXsOTgvVILFYDFdccQUCgQAGBwcbTmw7J7vN5XJIpVI48sgjaWZLCCFki+e9997DunXroCgKotFo2yavb2YC+Hg8jpNOOonTQnU7lmUhEAg0rMDbKdAcaG5LCCFka8KyLMRiMXi93raZvPdKjxpFWpP4/X74/f66iZ0KgUYIIYRsbeRyOaiq2vZZeBoVap20wKJImwT1EkuBRgghhLQHSZIwMDAwJU+SGmnPE4lE2+M2CkXaJHFLLAUaIYQQ0j48Hg8kSZqy/ddrzw3DmLLY9aBIa4GJiQ0GgxRohBBCSBuZSoHmUKs97+T7ahRpLVKa2FgsBkmSKNAIIYSQHsOtPc9msx2rE4cKtoFgMFj4v9frpUAjhBBCepBua88p0lrEeWYtSRJ8Ph8ymUzPOBkTQgghxKYb23M+7myBaoMEHIM8oHt9VwghhBBSpFZ7rmlax+pFkTZJ3EZx9opBHiGEENILTLVPWb32fHR0dErj14IibRLUs9mgUCOEEELaQy6Xg6ZpU/J+WCPteTqdbnvcRqFIa5JGfdAo1AghhJDWkSQJY2NjbRdqjbbnfr+/bTGbhQMHmiSRSDTsg9bX14dwOIxYLNbxlw8JIYSQXsTj8UBVVYyMjCCXy7Vln71iPE+R1gSKosAwjKYS2m6h1knnY0IIIWS6caaF0jStLUKtVwQaQJHWNH19fU0ntF1CLZlMQtf1SW9PCCGE9CKSJGFwcLBlodZLAg2gSGsKy7ImPRS3VaEWj8eRSCQ6OhSYEEII6RSyLLck1HpNoAEUaU0hhGhp+8kKNcerJRQKQVU51oMQQsjWyWSFWi8KNIAibdppVqg5Ai0cDpdNV0EIIYRsjTQr1HpVoAEUaR2hUaFWKtBo4UEIIYTYNCrUelmgARRpHaOeUKNAI4QQQtypJ9R6XaABFGkdxU2oUaARQggh9XETaluCQAM440DHmTgzgfN/CjRCCCGkPo5QGx0dxcjICAYHBxGLxXpeoAEUaV3BRKFGgUYIIYQ0jiPURkZGMDIyAgCYNWtWTws0gI87CSGEEEK6Eoq0LqD0HTTO9UkIIYQ0h/MOWunUje2c67NTUKR1mImDBDgpOyGEENI4EwcJeL3etkwh1Q1QpHUQt1GcFGqEEEJIfdxGcbY6hVS3QJHWIerZbFCoEUIIIe7Us9nYEoQaRVoHaNQHjUKNEEIIqaRRH7ReF2oUadNMs0a1pUItmUxOQw0JIYSQ7qVZo9peFmoUaU0gSVJL2092JgFHqCUSCRiG0VIdCCGEkF5lsjMJ9KpQo0hrAlmWoev6pLZtdaqnvr4+hEKhSccnhBBCeplWp3rqRaFGkdYk8Xi86cS2ay7OYDAITdMmvT0hhBDSiwgh2jIXZ68JNYq0JjBNE6qqNpXYdk+WrqqcyYsQQsjWgxACY2NjbZuLs5eEGkVak4RCoYYT226BRgghhGxt5HK5spkE2kGvCDWKtCZpNLEUaIQQQkjrCCEwMDDQ9snSG23P0+l0W+M2A0XaJKiXWAo0QgghpD14PJ4pex+7kfY8lUpNSexGoEibJG6JpUAjhBBC2ocsT61UqdeeBwKBKY1fC76F3gJOYkdHRzEyMgKv14tMJkOBRgghhPQQtdrzjtaro9G3AJzECiGQyWTg8/ko0AghhJAeoxvbc4q0NlA6XVM2m+3aUSKEEEIIcafb2vOuFmmXXnopJEnCmWeeWbPcunXrsHDhQvh8Puy+++645557ytYLIXDBBRdg7ty58Pv9WLp0KV5++eW21LH0HbS5c+d2/XBeQgghhFTi1p53cqafrhVpf/rTn/DjH/8YH/rQh2qWe/zxx3H00Ufj+OOPx6ZNm7B8+XIsX74czz33XKHM5Zdfjh/+8IdYu3YtnnzySQSDQSxbtgyZTKalOk4cJNArviuEEEJIryCEmPIYtdrzeDw+5fHd6EqRlkgkcMwxx+DGG2/EwMBAzbI/+MEPcPDBB+Mb3/gGdtllF3z3u9/Fhz/8YVx77bUA7OSuWbMG5513Hg477DB86EMfws9+9jP885//xF133TXpOrqN4qRQI4QQQtpHLpebUqFWrz3v5Ew/XSnSVq5ciUMOOQRLly6tW3bjxo0V5ZYtW4aNGzcCAF577TUMDw+XlYlEIli8eHGhTDWy2SxisVjZx6GezQaFGiGEENIenGmhLMtq+74bac9DoVDb4zZK14m0O+64A8888wxWr17dUPnh4WHMmTOnbNmcOXMwPDxcWO8scytTjdWrVyMSiRQ+8+fPB2A7Dzfig0ahRgghhLSOx+OBYRgYHR1tq1Br1Nd0qn3aatFVIu3NN9/EGWecgdtuuw0+n6+jdTn33HMRjUYLnzfffBOyLCOVSjXsgzYVQm0qfkkQQggh3YosyxgYGICu620Tar1iPN9VIu3pp5/GO++8gw9/+MNQVRWqquLhhx/GD3/4Q6iqCtM0K7YZGhrC5s2by5Zt3rwZQ0NDhfXOMrcy1fB6vQiHw2UfSZIQCASaSmg7hZqu6+yRI4QQstWhaRpmzpzZFqHWKwIN6DKRdtBBB+HPf/4znn322cJn7733xjHHHINnn30WiqJUbLNkyRJs2LChbNn69euxZMkSAMCCBQswNDRUViYWi+HJJ58slGkUIQT8fn/Tx9UOoZbL5TA2NgZJkprelhBCCOl1PB5Py0KtlwQa0GXTQvX19WG33XYrWxYMBjE4OFhYvmLFCmyzzTaFd9bOOOMMHHDAAbjyyitxyCGH4I477sBTTz2FG264AQAKPmuXXHIJdtppJyxYsADnn38+5s2bh+XLlzdVv1aU+8QpJ2bOnAmPx9PQtrlcDiMjI1BVteFtCCGEkC0NR6iNjIxgdHQUg4ODDb8z1msCDeiynrRGeOONN/D2228X/t5vv/1w++2344YbbsAee+yBX/ziF7jrrrvKxN7ZZ5+N0047DSeeeCL22WcfJBIJ3HfffdP+3ttketQcgaZpGgYGBtiTRgghZKtmMj1qvSjQAEAS0+EStwUQi8Vw2WWXYfvtt285wZZlYXR0FLqu1+xRKxVog4ODMAwDmUwGRxxxBGbMmNFSHQghhJBu57333sO6devg8/kq2sqJbaRbj1qrAi0ej+Okk05CNBqd9gnXe64nbUugkR61Rk8+QgghZGukkR61Xu1Bc2DL3yFqCTUKNEIIIaQ+tYRarws0gCKto1QTahRohBBCSONUE2pbgkADumx059ZI6ajPd999F4B9wlGgEUIIIY1ROurTGVzY6wINYE9aVyDLctnLiOFwmAKNEEIIaQKPxwOv11v4OxgMdrA27YFKoAvI5XIYHR2FpmnQNA2jo6OcWYAQQghpgng8jkwmA5/PB0mS2j7XZyegSOswpe+gzZw5EzNnzuSk7IQQQkgTlL6DNjg42LYppDoNRVoHqTZIYComZSeEEEK2VKoNEmjHFFLdAEVah6g1ipNCjRBCCKlPrVGcW4JQo0jrAI3YbFCoEUIIIe40YrPR60KNIm2aacYHbaJQ03V9GmtKCCGEdCfN+KD1slCjSJtGJmNUWyrUxsbGeurkIoQQQtrNZIxqe1WoUaQ1gaIok05sKzMJOEJNVVU+9iSEELLV0spMAr0o1CjSmiSRSDSd2HZM9STLMgYGBiBJUtPbEkIIIb1OO6Z66jWhRpHWBJZlwTCMphLbzrk4JUmCx+OZ9PaEEEJIL5JMJts2F2cvCTWKtCYQQqCvr6/hxE7FZOnsSSOEELI1YRgGEolEW+fi7BWhRpHWJM7MAPUSOxUCjRBCCNna0HUdoVCo7ZOlNyrUOumsQOUwCeollgKNEEIIaQ+apk3ZZOmNtOfxeHxKYjcC1cMkcUssBRohhBDSPlRVndL912vPpzp+LaggWmBiYrPZLAUaIYQQ0mPUas9DoVDH6kUV0SJOYksVNwUaIYQQ0lt0Y3tOJUEIIYQQ0oVQpLWIo7gdBd6sjxohhBBCOk83tucUaS0wcZCA1+vtCd8VQgghhBSp1Z4nEomO1YsibZK4jeLsFYM8QgghpBcwDGNK91+vPZ/q+LWgSJsE9Ww2KNQIIYSQ9qDrOpLJ5JTsu5H2vN0mus1AkdYkuq43ZLNBoUYIIYS0jqZpSCQSbTeVbdTXVNO0tsZtBoq0JpAkCfF4vGEftKkQakKIlvdBCCGE9AqqqiIUCiEWi7VNqPWK8Xx31qpLkWW5ad+Udgo1IQRyudyktyeEEEJ6kWAwiHA43Bah1isCDaBIa5pQKNR0Qtsh1CzLwtjYGHvSCCGEbJX09fW1LNR6SaABFGlNYZrmpBPailCzLAujo6MwDAMej2dS8QkhhJBepxWh1msCDaBIm1YmI9QcgabrOgYGBnripCKEEEKmiskItV4UaABF2rTTjFArFWgzZ87s6AgTQgghpFtoRqj1qkADKNI6QiNCbaJA42NOQgghpEgjQq2XBRpAkdYxagk1CjRCCCGkPrWEWq8LNIAiraNUE2oUaIQQQkjjVBNqW4JAAwC10xXY2nGE2sjICEZGRgDY85RRoBFCCCGN4UzdFIvFkMvlkM1me16gAexJ6wo8Hg8GBweh6zp0Xcfg4CAFGiGEENIEfX198Pl8yGQyEEL0vEADKNK6AsuyEIvFCn/HYjHO9UkIIYQ0gdOD5jBVk7JPJxRpHab0HbRZs2Zh1qxZnJSdEEIIaYLSd9Dmzp3btimkOk3XibTVq1djn332QV9fH2bPno3ly5fjpZdeqrvdunXrsHDhQvh8Puy+++645557ytYLIXDBBRdg7ty58Pv9WLp0KV5++eWpOoyGqDZIYComZSeEEEK2VKoNEmjHFFLdQNeJtIcffhgrV67EE088gfXr10PXdXzqU5+q2W35+OOP4+ijj8bxxx+PTZs2Yfny5Vi+fDmee+65QpnLL78cP/zhD7F27Vo8+eSTCAaDWLZsGTKZzHQcVgW1RnFSqBFCCCH1qTWKc0sQapLo8hm73333XcyePRsPP/ww/uVf/qVqmSOPPBLJZBK//e1vC8s+8pGPYM8998TatWshhMC8efPw9a9/HWeddRYAIBqNYs6cObj11ltx1FFH1a1HLBbDZZddhu23374wimSyNGqzMfHkMwwDmUwGRxxxBGbMmNFSHQghhJBu57333sO6devg8/kq2spGbTbi8ThisRjC4fCk2u94PI6TTjoJ0WgU4XB4UscxWbquJ20i0WgUAGqKko0bN2Lp0qVly5YtW4aNGzcCAF577TUMDw+XlYlEIli8eHGhzESy2SxisVjZpx0044M2sUety/U0IYQQMi0044PWyz1qXS3SLMvCmWeeiY9+9KPYbbfdXMsNDw9jzpw5ZcvmzJmD4eHhwnpnmVuZiaxevRqRSKTwmT9/fiuHAmByMwmUCrWxsTEKNUIIIVs1kzGq7VWh1tUibeXKlXjuuedwxx13THvsc889F9FotPB58803W/JbaWUmAUeoGYaBXC436ToQQgghvUwrMwn0olDrWpF26qmn4re//S0efPBBbLvttjXLDg0NYfPmzWXLNm/ejKGhocJ6Z5lbmYl4vV6Ew+GyjyRJSKfTTR9LO6Z68ng8GBgYYE8aIYSQrZJ2TPXUa0Kt60SaEAKnnnoqfvWrX+GBBx7AggUL6m6zZMkSbNiwoWzZ+vXrsWTJEgDAggULMDQ0VFYmFovhySefLJRptG6pVKqpxLZzLk5N0zgTASGEkK0OXdfbNhdnLwm1rpu7c+XKlbj99tvx61//Gn19fYV3xiKRCPx+PwBgxYoV2GabbbB69WoAwBlnnIEDDjgAV155JQ455BDccccdeOqpp3DDDTcAACRJwplnnolLLrkEO+20ExYsWIDzzz8f8+bNw/Llyxuum2VZCAQChUEE9UaJTMVk6b0+xQUhhBDSDM6sPF6vt21TPZXO9Vn6d7fRdSLt+uuvBwB8/OMfL1t+yy234Mtf/jIA4I033ihL0n777Yfbb78d5513Hr71rW9hp512wl133VU22ODss89GMpnEiSeeiPHxcey///6477774PP5mqqf3++H3++vm9ipEGiEEELI1kYul4Oqqm2fi7NRodZJr9KuE2mNvHP10EMPVSw74ogjcMQRR7huI0kSLr74Ylx88cWtVA9A/cRSoBFCCCHtQZIkDAwMTMmTpEba80Qi0fa4jdJ1Iq1XcEssBRohhBDSPjweDyRJmrL912vPDcOYstj1oEhrgYmJDQaDFGiEEEJIG5lKgeZQqz3v5PtqFGktUprYWCwGSZIo0AghhJAew609z2azHasThwq2gWAwWPi/1+ulQCOEEEJ6kG5rzynSWsR5Zi1JEnw+HzKZTNf7rhBCCCGknG5sz/m4swWqDRKIx+Nd77tCCCGEkCK12nNN0zpWL4q0SeI2irNXDPIIIYSQXmCqfcrqteejo6NTGr8WFGmToJ7NBoUaIYQQ0h5yudyUTYvYSHs+mTm72wVFWpM06oNGoUYIIYS0jiRJGBsba7tQa7Q9d6ak7AQcONAkiUSiYR+0XprElRBCCOlGPB4PVFXFyMgIcrlcW/bZK8bzFGlNoCgKDMNoKqHtFmqddD4mhBBCphtnWihN09oi1HpFoAEUaU3T19fXdELbJdSSySR0XZ/09oQQQkgvIkkSBgcHWxZqvSTQAIq0prAsa9JDcVsVavF4HIlEoqNDgQkhhJBOIctyS0Kt1wQaQJHWFEKIlrafrFBzvFpCoRBUlWM9CCGEbJ1MVqj1okADKNKmnWaFmiPQwuFw2XQVhBBCyNZIs0KtVwUaQJHWERoVaqUCjRYehBBCiE2jQq2XBRpAkdYx6gk1CjRCCCHEnXpCrdcFGkCR1lHchBoFGiGEEFIfN6G2JQg0gDMOdJyJMxM4/6dAI4QQQurjCLXR0VGMjIxgcHAQsVis5wUaQJHWFUwUahRohBBCSOM4Qm1kZAQjIyMAgFmzZvW0QAP4uJMQQgghpCuhSOsCSt9B41yfhBBCSHM476CVTt3Yzrk+OwVFWoeZOEiAk7ITQgghjTNxkIDX623LFFLdAEVaB3EbxUmhRgghhNTHbRRnq1NIdQtNDRywLAsPP/wwHnnkEbz++utIpVKYNWsW9tprLyxduhTz58+fqnpucdSz2Zg4mIADCQghhJAi9Ww2Jo767MWRng31pKXTaVxyySWYP38+PvOZz+Dee+/F+Pg4FEXB3/72N1x44YVYsGABPvOZz+CJJ56Y6jr3PI36oLFHjRBCCKmkUR+0Xu9Ra6gn7QMf+ACWLFmCG2+8EZ/85CehaVpFmddffx233347jjrqKHz729/GCSec0PbKbgk0a1Rb2qMWCASgKMpUV5EQQgjpWpo1qu3lHrWGRNrvf/977LLLLjXLbL/99jj33HNx1lln4Y033mhL5boNSZJa2n6yMwk4ZcfHxznJOiGEkK2Wyc4k0KtCraHHnfUEWimapmHHHXecdIW6GVmWoev6pLZtdaqnvr4+hEKhSccnhBBCeplWp3rqxUefk5pxIJPJ4H//93/xzjvvwLKssnWHHnpoWyrWrcTjcYRCoaZOjnbNxRkMBiGEmPT2hBBCSC8ihGjLXJy91qPWtEi77777sGLFisK0C6VIkgTTNNtSsW7ENE2oqtpUYts9WbqqciYvQgghWw9CCIyNjcGyrLaIql4Sak37pJ122mk44ogj8Pbbb8OyrLLPlizQHEKhUMNdpe0WaIQQQsjWRi6XK5tJoB30yqPPpkXa5s2bsWrVKsyZM2cq6tP1NJpYCjRCCCGkdYQQGBgYaHtvV6PteTqdbmvcZmhapH3+85/HQw89NAVV6R3qJZYCjRBCCGkPHo+nqvVXO2ikPU+lUlMSuxGafsHp2muvxRFHHIFHHnkEu+++e8UXd/rpp7etct2M2zNtCjRCCCGkfcjy1M5gWa89DwQCUxq/Fk2LtP/6r//C73//e/h8Pjz00ENl3mGSJG01Ig2oTKzX60Umk6FAI4QQQnqIWu15R+vV7Abf/va3cdFFFyEajeLvf/87XnvttcLn1VdfnYo6djVOYoUQyGQy8Pl8FGiEEEJIj9GN7XnTIi2Xy+HII4+c8u7HXiKZTBb+n81mu3aUCCGEEELc6bb2vGmldeyxx+LOO++cirr0JKXvoM2dO7frh/MSQgghpBK39ryTM/00/U6aaZq4/PLL8bvf/Q4f+tCHKgYOXHXVVW2rXLdTbZBArxjkEULKOeXmDS1tf/2/H9SmmhBCSpmOmXZqtefxeHzK47vRdE/an//8Z+y1116QZRnPPfccNm3aVPZpB9dddx122GEH+Hw+LF68GH/84x9rll+3bh0WLlwIn8+H3XffHffcc0/ZeiEELrjgAsydOxd+vx9Lly7Fyy+/3FId3UZx9opBHiGEENIL5HK5KRVq9drzTs7003TkBx98cCrqUeDOO+/EqlWrsHbtWixevBhr1qzBsmXL8NJLL2H27NkV5R9//HEcffTRWL16Nf71X/8Vt99+O5YvX45nnnkGu+22GwDg8ssvxw9/+EP89Kc/xYIFC3D++edj2bJleOGFF+Dz+ZquYz2bjV6acoIQQgjpZpxpoWbPnt329+Ebac9DoVBbYzZD24729ddfx6mnntryfq666iqccMIJOO644/DBD34Qa9euRSAQwM0331y1/A9+8AMcfPDB+MY3voFddtkF3/3ud/HhD38Y1157LQA7uWvWrMF5552Hww47DB/60Ifws5/9DP/85z9x1113NV2/dDrdkA8ae9QIIYSQ1vF4PDAMA6Ojo7Asq237bdTXtJMDJZvuSfvEJz5R5o3m8Pbbb+Ptt98uiKPJkMvl8PTTT+Pcc88tLJNlGUuXLsXGjRurbrNx40asWrWqbNmyZcsKAuy1117D8PAwli5dWlgfiUSwePFibNy4EUcddVTD9ZNlGalUCoODgw0Ny52KHrV2nqCEEEJItyPLMgYGBhCNRjE6OorBwcGWhVOvGM83LdL23HPPsr9N08Srr76Kv/3tb7j11ltbqszIyAhM06yYF3TOnDl48cUXq24zPDxctfzw8HBhvbPMrUw1stksstls4e9YLAZJkuDz+REIBGGajYul/v4BjI29h3ffHcGMGTMmLdSy2Swy2SzSOROprDGpfRBCquNTlZa25zVJSPtJ50xYQsCjqBgYmIH33nsPIyMjGBiYMWmhlkjEEY/H0dfX11B7blpTP3DBjaZF2tVXX111+U9+8hNce+21OOaYY1quVDewevVqXHTRRWXLLvzOdyAUD6KpHIQAIAQkubJXEQAgAEsIyJIESIDiCyGrR7H53REE+yJQVA3CEoAkoUrHpL2LkhimoSMRHYOqefDi6+8hMGqfuLphQVNlO04VcoYJWZKgKtVPZsO07AvApYFiDMbYWmLsOmdWxXpFliBLEnSXm7gkAZqsQLdM/L+/jXTFcTAGY2xJMWLRcaQyBnQrB0XV4An0IRmPIvvOuwj0RSBBLmtrq1Ha1mbTSWTSSfj8QZiyt6H2PJszq+94GmjbkIWDDjoIp512Wkv7mDlzJhRFwebNm8uWb968GUNDQ1W3GRoaqlne+Xfz5s2YO3duWZmJvYKlnHvuuWWPUWOxGH7yk5sgSYAsSTCFgAVAcznxBASEBUiyPV0WJAWhcD+SsShS8SiC4X4ISYEMuJ68TgzJNJCKR6EoKjRNg6rI0FQZhmkhZVjweRTXEzyVNeBRJWiq+0VmmAJBn/t6xmCMrSGGblbeiBVZzYu06jdpRZLgV1VkdMu1nlvid8UYjDFdMQC7w0KS7B9MsubJt6XjSMdjCPSFIYRUbGuroENABpDLpJBNp+APhODzBwvr67XnLtpvWmibSHvggQfwiU98oqV9eDweLFq0CBs2bMDy5csB2O9gbdiwwXVQwpIlS7BhwwaceeaZhWXr16/HkiVLAAALFizA0NAQNmzYUBBlsVgMTz75JE455RTXuni9Xni93rJlAoAECZIkQYKABPeTAgAgCbtsvowkKQhF+pGIjSMZH4cvEIaieVz3IUHAMnRkUjEoqgpfIAhT16EqcuGEl2Wp7O+JyLIERXb/laLIUmEfbjAGY2wNMcwqQ/wtISCAquscnPXdchyMwRhbWgxIKGtLNc2DUHgAifgYUvEYPME+SJJaoy0Fcukkstm8QAsEJ6yv0553UKU1LdI+97nPVSzbvHkznnzySXziE58oW//LX/6y6QqtWrUKxx57LPbee2/su+++WLNmDZLJJI477jgAwIoVK7DNNttg9erVAIAzzjgDBxxwAK688koccsghuOOOO/DUU0/hhhtuAGB/6WeeeSYuueQS7LTTTgULjnnz5hWEYKNIkn3TNk2rcNN2e5bt3NJNS0BC+Q3eHwwjlYgilYjCH4rAg+rvqOX0HNKJKFRVhT8YhmWasCyBdNaApOkw8s/JU1kDqks3rWUJpGt01TrrUpnqjsqMwRhbSwy/Vnk79OX9kaqtAwBFkvPrNdd6bInfFWMwxnTFyOim/fqQacGUiu2tJCsIBCNIJqIwEzHIfRHIUnWhl82kkMs/4tS8/op2u157bk2Dma4bTYu0SCRSddkHPvCBtlToyCOPxLvvvosLLrgAw8PD2HPPPXHfffcVXvx/4403yl4W3G+//XD77bfjvPPOw7e+9S3stNNOuOuuuwoeaQBw9tlnI5lM4sQTT8T4+Dj2339/3HfffU17pEmQIIQoS5hb8kTJ+spTU4IvGEYqEUM6EYUUst9RK8U0dKQTUciKCl8wDAEJlgAsADnTgmJYsPIXgG5YMN3ejcuTNWq/GOm2njEYY2uJoSnuAwfc1inOL3tFnnQ9663vxu+KMRhjumNYApAmtLdSvn1MJ6JIxqMIhMKQJgg1R6B5/EFovkBNweW6rnMaDZKYjvkWtgBisRiuvOpqDAzOhs8fgJl/YVJzeWFSCAHdtKApsmsXak7XkUnGYFkmQn0DUPNTbBm6jkR8DLKswBcMw+MsN3QYuSz2+djBCPZFYJgWoskcIkGPa1fxWCILryoj4NOqrk9ldGQNCwMhb9X1jMEYjMEYjMEYnYoxMjKKZ59YD5/PB1WtLCOEQCabRTZpvxYUCvcXhFomlUQ6nYDmDcDvD0JxqUO99jydTmLV6SsRjUYRDoerlpkq3B8kl0AdNzVIkoxAKAJFUZGIj8HQ9YJAUxQVgVCk4lcBIYQQQoooqoZguB+maSARG4cQVkGg+f0heH2BTldx0jSkAHbddVfccccddV3zX375ZZxyyim49NJL21K5rQFJkhEK90NRVMRj7yEeew+KUv5rgBBCCCHuqKqGUN8ATNPA+HvvFgTaxEECvUZD76Rdc801OOecc/DVr34Vn/zkJ7H33ntj3rx58Pl8GBsbwwsvvIBHH30Uzz//PE499dSaoyZJJZIkwxcIIREbAwD4AqG8QOPsAoQQQkgjqJoGVfVA120jeq/f3+EatU5DIu2ggw7CU089hUcffRR33nknbrvtNrz++utIp9OYOXMm9tprL6xYsQLHHHMMBgYGprrOWxyGriMZH4ei2OlIxscR6huAJLfmgE4IIYRsLWRSSeh6FprmhWHkkIiNIxTu73S1WqKp0Z37778/9t9//6mqy1aJaehIJaOFR5wAkIiNIxEfQyAYgaS0zcqOEEII2SLJ5GcScB5xOu93J2Lj8Ab6AKk3Oz2oAJpAQn4mgbzBpT2ThIsFR355rUEXhmGP7lQVFcG+CBzHvGBfBMlYFMlEFL5guDAqRggBIRyXZ/sDoPBvNSxLwLCEaxnDEnYZt/WMwRiMwRiMwRgdimFaAhBO+1fZngohkMukoGeS8AVC8PoDEEJAUVUE++yZCVKJGIJ9EcjCbYag2u05LTh6gFgshquvXoNQ/yA0b+vPuUt90PxVvF2EsJBOxGCZBvx5HzXTMGDqOSzc+0D4g9M7DJgQQgiZbtLJGF586gEomgeKWtmvlCvxQfNUGcVZr61tBD2bxllnntoRCw72pDWBEAKyLEFTZJiWbWqrufiuCGH/OlBlqcInzTB0ZJMxyPkeNLWqUaYMuS9iTySbjCEY7oeqSIApoc+vIRj0wDAtJDMGgj7V1YMmmsxBU2UEvNVTncoa0A0LkWD1WQ8YgzEYgzEYgzE6FcPI2NupSuXUUZl0EnrGFmiBQLCqJ6mmeAFEkEnGkEvGEQxXWlvVa8/NWtM/TjEUaU3Q9NydKJ+7EygZJKCq8Ab6IEvuZreyJCMQCiObiiMZH4ff3wdJQsU8aPXmRVNrzIumyhLMOnOvMQZjMAZjMAZjdCJGtbk7AXuQQCZtP+JUPP6K9WXxVQ3BUASppD0zwUSLq26eu5NGXNNIqVFtoz5opT5qqWQUwqItByGEkK2XUqNan78xHzSlxEfNMbztBZoWaQceeCAuuuiiiuVjY2M48MAD21KpbsUZODAZJiPQCnHzQk1WVBhG9YlsCSGEkC2dMoHWpFGtqvWeUGtapD300EO49tprsXz5ciSTycLyXC6Hhx9+uK2V60YyqUTTiW1FoDnYU0j11Xm8SgghhGyZtCLQHHpNqE3qcef999+P4eFhfOQjH8Hf//73NlepexEAhGU2lVjDaF2gOUiSDEWt/oImIYQQsqWSTafbNtVTLwm1SSmGuXPn4uGHH8buu++OffbZBw899FCbq9W9eP0hmKaBVCJaN7GmoSMZG2/rXJzsSCOEELI1YZkGsplkW+fiLBVqjbTnnaJpnzRFUfD2229j9uzZAIBLLrkEl1xyCc455xxccsklME1zSiraaUp90hRFRSrvuxJw8V0xSrxZ3Mo4X7yb7pq43jQMGEYOH9znIPiDYVhWMXWyXH0vTplW1zMGYzAGYzAGY0x3jGQ8iuc23mv7nAX7KtaXCphG29JSTEOv256nUwmc8/UzesMnbaKmO++887DLLrvg2GOPbVuluhWRt9TQNA/8oQjSiSgyyRgCoXLfFTM/k4Djgya79KCZ+e9Sdukem7heSHbXp0eR4VVlGJaAbljQVBmqywmeztmi2atWr0O99YzBGIzBGIzBGJ2KkQQgywp8Pn/VtlIAsISALEmuIq1WWys30J7rmWTFdtNF0yLttddew6xZs8qWHX744Vi4cCGeeuqptlWsGxHCTrKiyPDAAykUQSYVQzoZKzzONHR7Lk5VUeEJ9kFVFNeX/S3DLOyvKqYFS4jCeiFkyKYEv1dFwKfBMC1EjRwCXnejwKxhwavKCPg01+PKGpbresZgDMZgDMZgjE7FSGkKZFWFrMhV20ohBCxTQJHdfdLqtbX12nNZ7ty8n02LtO23377q8l133RW77rpryxXqJRzfFWcSV18gZBvV5nvQjO58xE0IIYSQEmq154qvcwP2aGbbIs7Lh4ahIxEbgywrbRskQAghhJDpwb0979yIPSoJQgghhJAuhCKtRRyjWlXVEAoPwGrSR40QQgghnce9PZ/cTEPtgCKtBcwJRrWa5in4riRj3eu7QgghhJAitdrzbKqHRnduzUiSPdTXNC3k9BzSiShUVc17lgGABUlWEAhGkExEYSZikGtYcAjkhwab1cWcM2zYzK+3TAuWJZDOGpA0HUbeXyaVNVyHN1uWKAxxroazLpWpPicoYzAGYzAGYzBGp2JkdBOWYcAyLZhSZVvp9HGZloDkMrd2vba2Xnsej4661m+qoUhrAgkShBDQ8wmVFRW+YBgiv7xQLr88nYgiGY+6GuQ5WHW6Up31lgAsADnTgmJYBRNA3bBgulwADtk6Q03d1jMGYzAGYzAGY3QyhmWZyGTS8AcrJYvTelpCuPqkoaTMRMwS43m39lzztWeWg8lAkdYElhCAsJBJxaCqdkI9WnVvF9sTJoJsMoZsKl51xKdex7vFzPukaart0SLBAiwJkYAHwZDX9qBJ5hAJelw9aMYS2doeNBkdWcPCQMhbdT1jMAZjMAZjMEanYpgZBbKiwMilYWpaxbRQQgjopgVNkV1HYbq1tYauN9SeG1rnpBLfSWuSbDoBRVErXImroagaguH+tk7i2sH3FwkhhJBpR1ZUeH1BpNMJZNr0fpgzSKDR9rxTdGetuhQJgNSkD5qqFidxbVWoCWHBNHKT3p4QQgjpRbx+P/z+UFuEWqlA63Zf0+6tWZfiC4SaTqhjkNeKUBPCQioR7+hQYEIIIaRT+ALBloVaLwk0gCKtKQTswQOToRWhJoSFRGwclmlAVd3nUCOEEEK2ZFoRar0m0ACKtGllMkLNEWimaSAQjECSmTJCCCFbL2VCLd2YUJvog9YLAg3g6M6mkAAICAghIGD3rLk9fnSWT1yvqCqCff1IxsaRSsQQ7ItAFi7+McJCKhEDLBPBcD8AwMiZMEyr8AFQ+LfqPiwBwxKuZQxL2GXc1jMGYzAGYzAGY3QohmkJQNhtaWl76vUHICCQSSWgWQJqwN0mwzB0ZJIxqIqKYF8EmGCzUa89d7FfmxYkwZecGiIWi+Hqq9cg1D8IzetveX+l3iz+Kj5qQlhIJ2KwTAP+UASKqsE0DJh6Dgv3PhD+YLjlOhBCCCHdTDoZw4tPPQBF80BRK/uVcpkUcukkPP4gPL5Axfp6bW0j6Nk0zjrzVESjUYTD09v2sietCYQQkGUJmiLDtITtYebi/SKE/etAlaWq3i2a4gUQQSYZQy4ZRzBcHAIshIVkLA5hmfCHIvB5bQ8aSUiAKaHPryEY9MAwLSQzBoI+1dWDJprMQVNlBLzVU53KGtANC5Ggp+p6xmAMxmAMxmCMTsUwMvZ2qiJV3YfTg6ZnklBkCT5/sUfNMHRkkzHI+R40VVGqxqjXnpsu/mvTAUVaEzgDByRJggTb3djNPM/ZQpKqizTAtucIhiJIJe2ZCUL5R5rJeBSmZSAYikBS1ML29r5so9zSk3Xi36XIsgRVrn5yA4AqSzBrrGcMxmAMxmAMxuhUDEWWAAk121KPLwBFlpBJJyFBgi8QhKHrSMbHoagqvIE+yJK72W3d9rxzGo0irdMoeR+1RHwM8egYAHsKjFDfACRZqTtlFCGEELK14/MHIUFCOp2AYegwjFxhkIBh9m472hvDG7ZwVE1DsM+emcA0DQT7+qG6TE9BCCGEkEp8gSA0zQtdz0II0VOjON3o7dpvIQhhIZNKFP7OpBJtmUKKEEII2VowdLsHzSGbTnewNu2Bjzs7jO2DFoNpGugLzwAAJOJjSMTG8yM4O/gwnBBCCOkBDCP/Dlr+EWc2nUY6bXd+KB5fh2s3ediT1kHsqZ6iME0Dob4BqJpWZnibSkTZo0YIIYTUwDR0JGPjZUa1pYa32Uyq01WcNPRJa5BSnzSP11/wtnPr5yr9UquVEXmjWss0EMj7oJViGjpSeW+XQN7bxTQMGEYOH9znIPiDYVhWMYosuxji5su0up4xGIMxGIMxGGO6YyTjUbz41ANQXXzSjBIftEAVH7RsiY+at4qPGoC67XmOPmmArus477zzcM899+DVV19FJBLB0qVLcemll2LevHk1t73uuutwxRVXYHh4GHvssQeuueYa7LvvvoX1mUwGX//613HHHXcgm81i2bJl+NGPfoQ5c+Y0VUeRt9SQJQlmXtvKLkN2BQBLCMhS5WyfQlhIJ4tGtZpW6TEjax74QxGkE1FkkjEEQhHIkt316VFkeFUZhiWgGxY0VYbqcoKncyYAwKtW7zStt54xGIMxGIMxGKNTMZxJn2Spsr018zMJOD5ocpVBAv68b1ounYQMwOuvnJmgXntOCw4AqVQKzzzzDM4//3zsscceGBsbwxlnnIFDDz0UTz31lOt2d955J1atWoW1a9di8eLFWLNmDZYtW4aXXnoJs2fPBgB87Wtfw913341169YhEong1FNPxec+9zk89thjTdVRCDuJiiIDpgVLCPv/VcsKWKaAIpd7uzjvoFmWiUBeoLntwwMPpFAEmVQM6WQMvkAQsizB71UR8GkwTAtRI4eA190oMGtY8KoyAj730aJZw3JdzxiMwRiMwRiM0akYKU0BJEBW5LK20tB1pJJRqIoKT7APqqK4+px5fQHIALLZFGTZfhRaRp323FW8TQNdI9IikQjWr19ftuzaa6/FvvvuizfeeAPbbbdd1e2uuuoqnHDCCTjuuOMAAGvXrsXdd9+Nm2++Gd/85jcRjUZx00034fbbb8eBBx4IALjllluwyy674IknnsBHPvKRqT2wEkonSw/1DUA0MDS41EctlYjD08MvQBJCCCGtYujFydKDfREYDby67fUHIctyYTBBhVDrUrp64EA0GoUkSejv76+6PpfL4emnn8bSpUsLy2RZxtKlS7Fx40YAwNNPPw1d18vKLFy4ENttt12hTKO0oqUnCrRmfNCcwQSWacAsGV5MCCGEbE2UCrRmfdBKBxNkUsn6G3QBXdOTNpFMJoNzzjkHRx99tOuLeiMjIzBNs+Ldsjlz5uDFF18EAAwPD8Pj8VQIvTlz5mB4eNg1fjabRTabLfwdi8UAALlcBj5/9ZcP3WhFoDmomoZAMIJctndHqRBCCCGTpZpAa3bso9OD1is9ah3rSbvtttsQCoUKn0ceeaSwTtd1fOELX4AQAtdff31H6rd69WpEIpHCZ/78+XbdspmmFHg7BJqDoqlQ1clvTwghhPQipm5MugdtIr3Uo9YxkXbooYfi2WefLXz23ntvAEWB9vrrr2P9+vU1h7vOnDkTiqJg8+bNZcs3b96MoaEhAMDQ0BByuRzGx8ddy1Tj3HPPRTQaLXzefPNNCACa12f7rqTrJ1YIC8lYtC0CzUGSu/oJNSGEENJehIVUMtoWgeZQ5qPWQHveKTr2uLOvrw99fX1lyxyB9vLLL+PBBx/E4OBgzX14PB4sWrQIGzZswPLlywEAlmVhw4YNOPXUUwEAixYtgqZp2LBhAw4//HAAwEsvvYQ33ngDS5Yscd231+uF1+stWyZJgKp5oSoaMukkLAByleG8AGAJC+lEDMIyEQxFIMkKTLP87UaB/NBfs/pbj86wYGc7y7RgWQLprAFJ02Hk/WVSWcN1eLNlicIQ52o461IZvep6xmAMxmAMxmCMTsXI6CYMXYckK3l/UAAotpnOw07TEpBQ/dGnW1uref2wLKt+e251zlS+a95J03Udn//85/HMM8/gt7/9LUzTLLwzNmPGDHg8tpfYQQcdhM9+9rMFEbZq1Soce+yx2HvvvbHvvvtizZo1SCaThdGekUgExx9/PFatWoUZM2YgHA7jtNNOw5IlS5oe2SlBghACHl8AFmzfFQAVBnmlRrX+UASSosKq8dy81rrS9ZawT82caUExrIIJoG5YMF0uAIdsneEvbusZgzEYgzEYgzE6GUOSJHh8QYh8G1yK85clRN3BfdXaWq2B9jyb6ty74F0j0t566y38z//8DwBgzz33LFv34IMP4uMf/zgA4JVXXsHIyEhh3ZFHHol3330XF1xwAYaHh7HnnnvivvvuKxtMcPXVV0OWZRx++OFlZrbNYgkBRZahqUpBcevZFNQS3xX7HbQ4YJnwhyLweb2u3i26YRZ916pg5r1bNFUBAEiwAEtCJOBBMOS1PWiSOUSCHlcPmrFEtrYHTUZH1rAwEPJWXc8YjMEYjMEYjNGpGGZGgaJq0DQVar4tLEUIAd20oCnypNvaeu25gHtP31TTNSJthx12aGiUxt///veKZaeeemqhZ60aPp8P1113Ha677rpWqliB1xeAWuK74vX7C4MEguF+CKnyhCKEEEJIE0yDmWyt9tznC015fDe6RqT1KqXDedPpBCRJQqhvAIqqQnd514wQQggh3YVbe6530J+UQwXbgNfvL/xfVT1tGcVJCCGEkOml29pzirQWcXzQJEmCpnmh69mu910hhBBCSDnd2J7zcWcLOC8VlvqgZVJJpNMJCAgoHn/9nRBCCCGko9RqzxWlc1KJIq0JJAACAkIIWHmbDVgmguF+KKoKIQS8/gAEBDKpBDRLQK0x5YRwPi4DJiauF0JACHvEjPMBUPi3GpYlYFjCtYxhCbuM23rGYAzGYAzGYIwOxTAtAWFZ+favsq0sbR/dqNfW1mvPU/GY676nGkk0O/HVVkosFsPVV69BqH8QqseLdIkPmlJlqqZcJoVcOgmPPwiPr7m5Pt0wDQOmnsPCvQ+EP+g+EwMhhBCyJZBOxvDcxnuheX3QvO1/OiXyxvO12vNUfAznnn0WotFozVmQpgL2pDWBEAKSBOSScYgSH7RqOD1oeiYJRZbgq+JkrJuW7d3iYvJnWsL2Sct7u0hCAkwJfX4NwaAHhmkhmTEQ9KmuHjTRZA6aKiPgrZ7qVNaAbliIBD1V1zMGYzAGYzAGY3QqhpGx/c9yqQQ8Hk/F/NVC2D1xqiy5+6S5tLX21I3123PvFIjDRqFIawIBIJtOQpIke6onRXU9KQDA4wtAkSVk0klIkArDex0k5+OyDwmibL0kSfbUVIpcdsJP/LsUWZagypLrelWWYNZYzxiMwRiMwRiM0akYiizle7cEkvFxl3mwRb59dGtLK9taISwk41GYllG/PZ96mzZXOLqzCSQAwjLzPmiNDcv1+YuTuLZjlIhpds75mBBCCJl2JAmBUB8URUUiPgZDrz5XaKM4ozidQQKNtuedgCKtSbz+UNO+Kb5Ae4RaNp2GaRqT3p4QQgjpRSRJRijc37JQmyjQOu2DVg+KtCYQwKSH4rYq1DKpJLKZZEeHAhNCCCGdolWh1msCDaBIm1YmK9QcrxavLwhF4XyghBBCtk4qhJrRmFDrRYEGUKRNO6VCLZtJ1S2fzaSQTifg94fKpqsghBBCtkZKhVoyNg6zjlATwkIqEe05gQbQJ61hSn3SPF4/nC/NbdBH6ZdarUy2xEfN6+KjNrGMaRgwjBw+uM9B8AfDsKxiFNnFxsMp0+p6xmAMxmAMxmCM6Y6RjEfx4lMPQNU8UNTy131E3oTW8TibaM8xsUzAxQetXnuey6Zx1pmn0iet2xH5Yb6yJMHMa1vZZciuAGAJAVmSqiben/dNy6WTkAF4J/ioZdPJgkBzygrJ7vr0KDK8qgzDEtANC5oqQ3U5wdM5ezSoV63eaVpvPWMwBmMwBmMwRqdiOC8GyVKV9lZSEOyLIBmPIpOMIThBhAlhIZ0sijhNq+7nVq8976QFB0VaEwhhJ1FRZMC0YAlh/79qWQHLFFBkd+8Wry8AGUA2m4IsywUftUwqiWw2BZ8/CM0XKMQQQoZsSvB7VQR8GgzTQtTIIeB1NwrMGha8qoyAz717N2tYrusZgzEYgzEYgzE6FSOlKYAEyIpctb2VhQR/KIxcMo5UMlp4nGm/gxaDZZkI5AWaW3tdrz13FW/TAEVah/H6g5BlGel0orDMeQdN8/ph8Wk0IYQQ4ookyQiG7R61RHwMwb5+ZFKJwjtoQurd1+8p0roApwfNEWp+fwi+QBBmjUlpCSGEEGLjDCaIR8eQiI0BAPrCM6BqGnSjd03ge1deEkIIIYRswVCkdQGOD5rfH2rrFFKEEELI1oDjg2ZZJkLhAaiq1pYppDoNH3d2mGzaHiTgPOJ0SKcTsCwLmos9ByGEEELyk6XH4jCtog+aGu5HIjaORHwMvkAYssvIzm6HIq0JJMm21TBNqzBk1+29Med1f9MSkFD95X/HB83nD0Lz+gv70rx+WJaFTDoJC4Cct+CwTAuWJZDOGpA0HUbeXyaVNVyHN1uWKAxxroazLpWp/muDMRiDMRiDMRijUzEyugkIu/0zpcr21hIW0okYhGUiGIpAkpVCW+oPhpFKRJFKROEPReBBbQsOt/a8kwP4KNKaQIJkW2uUJMwteaJkfT0zW80XqNiP5gvAgu2jBth2HZaAvcy0oBhWwQRQNyyYLhdAIZ5RexCC23rGYAzGYAzGYIxOx7AEIE1oJyea2UqKOqEtleALhpFKxJBORCG5mNkWY7iIsQ6aLFCkNYElBBRZhqbaSt0SAppafS5NIQR004KmyBU+aZlUEno2VTCqdfVmyfeg6dkUVFmG6vEAloRIwINgyGt70CRziAQ9rh40Y4lsbQ+ajI6sYWEg5K26njEYgzEYgzEYo1MxzIztk6aqMtSS9tZ+By0OWCb8oQh8Xq+LJ6kChMLIJGPIpGJVp4Wq154beud80jhwYJopHSTgNh1UKV5foDjXZzo9DTUkhBBCupfSydKD4f6avWOAbc8RCEWKk7L30GACirRppFSglQ4SqIczKXs2k4Rp9q7fCyGEENIKpQIt1DdQdb7OapROyt5LQo0irQkkAKZpTGrbyQo0B18gCK8vOOn4hBBCSC9TIdC0xgSaQy8KNYq0JsmmE00ntlWB5uD1+6EofI2QEELI1kWrAs2h14QaRVoTCACSrCARH4NpNJbYTLo9As1BUaq/2EgIIYRskQiBVCLeskBzmCjUGm3POwG7ZZpAgj0hupnLIZmIwhcMu45YEUIgl0lBzyThC4Tg9QcgJg4fdj41bDxK1wshIIQ9Ysb5ACj8Ww3LEjAs4VrGsIRdxm09YzAGYzAGYzBGh2KYloBp6LAMA6H+GVBUtazNLG0f3aje1koI9kWQjEXrtuedtOCQRK0jIwVisRiuvnoNQv2DUD1epEu8WaqNLMmV+KB52jRrgGkYMPUcFu59IPzBcFv2SQghhHQr6WQMz228F5rXB83rb/v+Rd4Mt1Z7noqP4dyzz0I0GkU4PL1tL3vSmkAIAVmW4FFVyH0RJONRZJMxBMP9ZSNMMukk9Iwt0AKBoIt3C6CbFmRJguJi8mdatnGullf3kpAAU0KfX0Mw6IFhWkhmDAR9qusvgGgyB02VEfBWT3Uqa0A3LESC1Z2YGYMxGIMxGIMxOhXDyMhQVA0eT3WvNSHsnjhVlibZ1sp123Mzl6u63+mAIq0JBOxZByRJgizJCITCyKbiSMbHC8/JM6kkMmn7Eafi8UOS3E8cyfm4rhdl6+19Aaoil52sE/8uRZYlqLLkul6VJZg11jMGYzAGYzAGY3QqhiJLkGS5ZlsKiJba2nrtueatbtY7HVCktYDz8qEziauqeqDrWduo1h+AXuM5PCGEEEK6g1rtuejchAMc3dkqTmKFEND1LDTN25ZRnIQQQgiZPrqxPadIawOl0zUZRq7rfVcIIYQQUkm3tecUaS1SalTbP2NW0SCvi31XCCGEEFKOW3tuGZ2bjpEirQWymVSZUW2pQV4yNt7VBnmEEEJITzANTmG12vNMJjHl8d2gT1qDlPqkebx+ZEt80LwTfNCEsJAq8V1xmwDW+eLdx6uUrzcNA4aRwwf3OQj+YBiWVUyd7GLj4ZRpdT1jMAZjMAZjMMZ0x0jGo3j+ifvg8QWgapVWH+X2tNWp19bWa88T4+/h2986hz5p3Y7ID/PVSxLq91d5qVBSbCfjeBSZZAxBF4M8M6+PZZdhwRPXC8nu+vQoMryqDMMS0A0LmipDdTnB0zm7m9arVu80rbeeMRiDMRiDMRijUzGSsL3QsukENG0AklReTgCwhIAsSa4irFZbm00n67bn3kB7DOknA0VaEwgBGHoWpqHD5w9C8wWguHm/CAn+UBi5ZBypZLTqfGOWYdoGe24eM6YFS4jCeiFkyKYEv1dFwKfBMC1EjRwCXnejwKxhwavKCPjc5zrLGpbresZgDMZgDMZgjE7FSGkKVE2Dnk0jnYwhFO4vE2pCCFimsP3UXDo83NraTCqJbDZVvz2XO/dmWNe+k3byySdDkiSsWbOmbtnrrrsOO+ywA3w+HxYvXow//vGPZeszmQxWrlyJwcFBhEIhHH744di8eXPTdZIA6NlM3get/rBcSZIRDEeKgwnaMEpEWPReI4QQshUhyQgEIzBNA4nYOIRovR0sHSTQSHveKbpSpP3qV7/CE088gXnz5tUte+edd2LVqlW48MIL8cwzz2CPPfbAsmXL8M477xTKfO1rX8NvfvMbrFu3Dg8//DD++c9/4nOf+9yk6qZ5fU35ppS+fNiqUDN1g6NGCSGEbHUomopQ30BbhFqpQOu0D1o9uk6kvfXWWzjttNNw2223QdPcu1gdrrrqKpxwwgk47rjj8MEPfhBr165FIBDAzTffDACIRqO46aabcNVVV+HAAw/EokWLcMstt+Dxxx/HE0880XT9PB5f09u0Q6gZuo5UMlpjWgxCCCFky0XVtJaFWi8JNKDLRJplWfjSl76Eb3zjG9h1113rls/lcnj66aexdOnSwjJZlrF06VJs3LgRAPD0009D1/WyMgsXLsR2221XKFONbDaLWCxW9mllGGwrQs3QdSTiY5AVFYpafSJbQgghZEunFaHWawIN6DKRdtlll0FVVZx++ukNlR8ZGYFpmpgzZ07Z8jlz5mB4eBgAMDw8DI/Hg/7+ftcy1Vi9ejUikUjhM3/+/OYOpgoThVojPmqmYQs0RVERCPWBHWmEEEK2ZkqFWjIWbUioZdO9J9CADo7uvO2223DSSScV/r777rvxgx/8AM8880xXPNI799xzsWrVqsLfsVgMP7npJlhCwDStwpBe02USdafXzbQEpAl9cP5gGKlEFKlEFP5QBB5U7x3L6TmkE1Goqmr7opkmLEsgnTUgaTqMvL9MKmu4Dm+2LFEY4lwNZ10qU10wMgZjMAZjMAZjdCpGRjcBAVimBVMqtreSrCAQjCCZiMJMxCD3RSBLLiNI87ZZPn8Qmtdf0W7Xa8+tDtrJdkykHXrooVi8eHHh73Xr1uGdd97BdtttV1hmmia+/vWvY82aNfj73/9esY+ZM2dCUZSKkZqbN2/G0NAQAGBoaAi5XA7j4+NlvWmlZarh9Xrh9XrLlkmQ7OG+JQlzS54oWV95akrwBcNIJWJIJ6KQqviomYaOdCIKWVHhC4YhIMESgAUgZ1pQDKtgAqgbFkyXC8Aha9T+peG2njEYgzEYgzEYo9MxLAFIE9pbKd8+phNRJONRBELhCh+1UqNazReoKbhc13XQ8r9jIq2vrw99fX2Fv0888UT827/9W1mZZcuW4Utf+hKOO+64qvvweDxYtGgRNmzYgOXLlwOw32vbsGEDTj31VADAokWLoGkaNmzYgMMPPxwA8NJLL+GNN97AkiVLmqqzJQQUWYamKjDzHmaaqlQtK4SAblrQFNmlZ1ABQmFkkjFkUrEyHzVD15FJxaCq9gnoyS+XYAGWhEjAg2DIa3vQJHOIBD2uHjRjiWxtD5qMjqxhYSDkrbqeMRiDMRiDMRijUzHMjAJIgKrKUKu0t/Z+I8gmY8im4mU+aplUEno2VTCqdfNBq9eeG3rnnu51jZnt4OAgBgcHy5ZpmoahoSHsvPPOhWUHHXQQPvvZzxZE2KpVq3Dsscdi7733xr777os1a9YgmUwWhF0kEsHxxx+PVatWYcaMGQiHwzjttNOwZMkSfOQjH5m+A6yCJMkIhCJIJ2NIxMcQ6hsAgMI7aP58DxohhBBCqqOoGoLhfiTj40jExhEK9yObThfeQVMm4crQLXSNSGuUV155BSMjI4W/jzzySLz77ru44IILMDw8jD333BP33Xdf2WCCq6++GrIs4/DDD0c2m8WyZcvwox/9qBPVr8AZTJCIjSMeew8AoKoaQuF+WJbdI0cIIYQQd1TVHkyQiI9h/L13AaAwSEA33N9563a6WqRVew+t2rJTTz210LNWDZ/Ph+uuuw7XXXddG2vXPiRJhi8QQiI2BgDwBUL57lrOLkAIIYQ0gqppUFUPdD0LAPD6/R2uUet0lQXH1oqh60jGx6EoKhRFRTI+3pYppAghhJCthUwqCV3PQtO8kCSpbVNIdRKKtA5T6oPWFxlAX2SgKR81QgghZGsnU+KDFgr3t20KqU7T1Y87uw0JgICAEAIC9qhct3fGnOW13ikzDB2ZZAyqoiLYF8lHAIJ9ESRjUSQTUfiC4cKoGCEEhLBHzDgfAIV/q2FZAoYlXMsYlrDLuK1nDMZgDMZgDMboUAzTEoBw2r/K9lQIgVwmBT2ThC8QgtcfgBACiqoi2NePZGwcqUQMwb4IZFF9IF699ryTFhyS4JvpDRGLxXD11WsQ6h+E5m39OXepD5q/ireLEBbSiRgs04A/76NmGgZMPYeFex8IfzDcch0IIYSQbiadjOHFpx6AonmgqJX9SrkSHzSPL1Cxvl5b2wh6No2zzjwV0WgU4fD0tr3sSWsCIQRkWYKmyDAt29RWc/FdEcL+daDKUoVPmmHoyCZjkPM9aKpSzZtFhtwXQTIeRTYZQzDcD1WRAFNCn19DMOiBYVpIZgwEfaqrB000mYOmygh4q6c6lTWgGxYiweqzHjAGYzAGYzAGY3QqhpGxt1MVqWIfmXQSesYWaIFAsKonqaZ4AUSQScaQS8YRDEcqhFq99tzs4CxIFGlNIGDPOiBJEqS8g1ntKayEXbakTGGQgKrCG+iDLLmZ3QKyJCMQCiObiiMZH4ffb8/dqSpy2ck68e+yfcgSVLny5C5sK0swa6xnDMZgDMZgDMboVAxFlgAJFW1pJpVEJm0/4lQ8/or1ZfFVDcFQBKmkPTNBqeEtgPrteQftSjlwYBox9OIggYkniRulk7KnklEIq3dfgCSEEEJaJZMqmSzd39hk6Yqq9eRgAoq0JnAGDkyGyQi0Qty8UJMVFQZHfBJCCNlKKRNogcYEmoOq9Z5Qo0hrkkwq0XRiWxFoDvYUUn11Hq8SQgghWyatCDSHXhNqFGlNIAAIy2wqsYbRukBzkCQZilr9BU1CCCFkS6V0Ls7JCjSHXhJqFGlN4vWHYJoGUolo3cSaho5kbLwtAs2BHWmEEEK2JizTQDaTbItAcygVao20552CPmkNUuqTpigqUnnflYCL74pR4s3iVsb54t1018T1pmHAMHL44D4HwR8Mw7KKqZPl6ntxyrS6njEYgzEYgzEYY7pjJONRPLfxXtvnLNhXsb5UwDTalpZiGnrd9jydSuCcr59Bn7RuR+QtNTTNA38ognQiikwyhkCo3HfFzM8k4PigyS49aGZeH8su3WMT1wvJ7vr0KDK8qgzDEtANC5oqQ3U5wdM5EwDgVavXod56xmAMxmAMxmCMTsVIApBlBT6fv2pbKQBYQkCWJFeRVqutlRtoz/VM0mXPUw9FWhMIYSdZUWR44IEUiiCTiiGdjBUeZxq6jlQyClVR4Qn2QVUU15f9LcMs7K8qpgVLiMJ6IWTIpgS/V0XAp8EwLUSNHAJed6PArGHBq8oI+DTX48oalut6xmAMxmAMxmCMTsVIaQpkVYWsyFXbSiEELFNAkd190uq1tfXac1muZjg/PfCdtBaY6Lui67nCIIFqrsaEEEII6T5qtefeNr0HNxmoIlrEefnQMHQkYmOQZaVtgwQIIYQQMj24t+edG7FHJUEIIYQQ0oVQpLWIY1SrqhpC4QFYTfqoEUIIIaTzuLfnnTPBoEhrAXOCUa2meQrPtJOx7vVdIYQQQkiRWu15NsXRnT2BJNlDfU3TQk7PIZ2IQlXVvGcZAFiQZAWBYATJRBRmIga5hgWHQH5osFldzDnDhs38esu0YFkC6awBSdNh5P1lUlnDdXizZYnCEOdqOOtSmepzgjIGYzAGYzAGY3QqRkY3YRkGLNOCKVW2lU4fl2kJSC5za9dra+u15/HoqGv9phqKtCaQIEEIAT2fUFlR4QuGIfLLC+Xyy9OJKJLxqKtBnoNVpyvVWW8JwAKQMy0ohlUwAdQNC6bLBeCQNWr36rmtZwzGYAzGYAzG6GQMyzKRyaThD1ZKFqf1tIRw9UlDSZmJmCXG827tuebr3OhOirQmsIQAhIVMKgZVtRPq0ap7u9ieMBFkkzFkU/GqIz71Ot4tZt4nTVNtjxYJFmBJiAQ8CIa8tgdNModI0OPqQTOWyNb2oMnoyBoWBkLequsZgzEYgzEYgzE6FcPMKJAVBUYuDVPTKqaFEkJANy1oiuw6CtOtrTV0vaH23NA6J5X4TlqTZNMJKIpa4UpcDUXVEAz3t3USV07iRQghZGtCVlR4fUGk0wlk2vR+mDNIoNH2vFN0Z626FAmA1KQPmjrBIK8VoSaEBdPITXp7QgghpBfx+v3w+0NtEWqlAq3bfU27t2Zdii8QajqhjkFeK0JNCAupRLyjQ4EJIYSQTuELBFsWar0k0ACKtKYQsAcPTIZWhJoQFhKxcVimAVV1n0ONEEII2ZJpRaj1mkADKNKmlckINUegmaaBQDACSWbKCCGEbL2UCbV0Y0Jtog9aLwg0gKM7m0ICICAghICA3bPm9vjRWT5xvaKqCPb1IxkbRyoRQ7AvAlm4+McIC6lEDLBMBMP9AAAjZ8IwrcIHQOHfqvuwBAxLuJYxLGGXcVvPGIzBGIzBGIzRoRimJQBht6Wl7anXH4CAQCaVgGYJqDUmQTcMHZlkDKqiItgXASbYbNRrz13s16YFSfAlp4aIxWK4+uo1CPUPQvP6W95fqTeLv4qPmhAW0okYLNOAPxSBomowDQOmnsPCvQ+EPxhuuQ6EEEJIN5NOxvDiUw9A0TxQ1Mp+pVwmhVw6CY8/CI8vULG+XlvbCHo2jbPOPBXRaBTh8PS2vexJawIhBGRZgqbIMC1he5i5eL8IYf86UGWpqneLpngBRJBJxpBLxhEMF4cAC2EhGYtDWCb8oQh8XtuDRhISYEro82sIBj0wTAvJjIGgT3X1oIkmc9BUGQFv9VSnsgZ0w0Ik6Km6njEYgzEYgzEYo1MxjIy9napIVffh9KDpmSQUWYLPX+xRMwwd2WQMcr4HTVWUqjHqteemi//adECR1gTOwAFJkiDBdjd2M89ztpCk6iINsO05gqEIUkl7ZoJQ/pFmMh6FaRkIhiKQFLWwvb0v2yi39GSd+HcpsixBlauf3ACgyhLMGusZgzEYgzEYgzE6FUORJUBCzbbU4wtAkSVk0klIkOALBGHoOpLxcSiqCm+gD7LkbnZbtz3vnEajSOs0St5HLREfQzw6BsCeAiPUNwBJVupOGUUIIYRs7fj8QUiQkE4nYBg6DCNXGCRgmL3bjvbG8IYtHFXTEOyzZyYwTQPBvn6oLtNTEEIIIaQSXyAITfNC17MQQvTUKE43erv2WwhCWMikEoW/M6lEW6aQIoQQQrYWDN3uQXPIptMdrE174OPODmP7oMVgmgb6wjMAAIn4GBKx8fwIzg4+DCeEEEJ6AMPIv4OWf8SZTaeRTtudH4rH1+HaTR72pHUQe6qnKEzTQKhvAKqmlRnephJR9qgRQgghNTANHcnYeJlRbanhbTaT6nQVJw190hqk1CfN4/UXvO3c+rlKv9RqZUTeqNYyDQTyPmilmIaOVN7bJZD3djENA4aRwwf3OQj+YBiWVYwiyy6GuPkyra5nDMZgDMZgDMaY7hjJeBQvPvUAVBefNKPEBy1QxQctW+Kj5q3iowagbnueo09abyDylhqyJMHMa1vZZciuAGAJAVmqnO1TCAvpZNGoVtMqPWZkzQN/KIJ0IopMMoZAKAJZsrs+PYoMryrDsAR0w4KmylBdTvB0zgQAeNXqnab11jMGYzAGYzAGY3QqhjPpkyxVtrdmfiYBxwdNrjJIwJ/3Tculk5ABeP2VMxPUa89pwdEjCGEnUVFkwLRgCWH/v2pZAcsUUORybxfnHTTLMhHICzS3fXjggRSKIJOKIZ2MwRcIQpYl+L0qAj4NhmkhauQQ8LobBWYNC15VRsDnPlo0a1iu6xmDMRiDMRiDMToVI6UpgATIilzWVhq6jlQyClVR4Qn2QVUUV58zry8AGUA2m4Is249Cy6jTnruKt2mA76RNI6WTpYf6BioecVbD8VGz31GLgw+nCSGEbM0YenGy9NLZemrh9ZdMyp5qbFL2bqDrRNpf/vIXHHrooYhEIggGg9hnn33wxhtv1Nxm3bp1WLhwIXw+H3bffXfcc889ZeuFELjgggswd+5c+P1+LF26FC+//HLTdWtFS08UaM34oDmDCSzTgFkyvJgQQgjZmigVaM36oJUOJugVodZVIu2VV17B/vvvj4ULF+Khhx7C//7v/+L888+Hz+c+fPbxxx/H0UcfjeOPPx6bNm3C8uXLsXz5cjz33HOFMpdffjl++MMfYu3atXjyyScRDAaxbNkyZDKZpuuYyzW/TSsCzUHVNASCEXCcByGEkK2RVgSaQ68Jta56J+3b3/42PvOZz+Dyyy8vLNtxxx1rbvODH/wABx98ML7xjW8AAL773e9i/fr1uPbaa7F27VoIIbBmzRqcd955OOywwwAAP/vZzzBnzhzcddddOOqoo5qqo57NIJNKQvP6GyovhGXPxdmCQHNQNBWqyZkICCGEbF2YuoF0Ot6SQHNw3klzfNQabc87Qdf0pFmWhbvvvhsf+MAHsGzZMsyePRuLFy/GXXfdVXO7jRs3YunSpWXLli1bho0bNwIAXnvtNQwPD5eViUQiWLx4caFMNbLZLGKxWNlHANC8Ptt3JV1fgQthIRlrj0BzkOSuSRkhhBAy9QgLqWS0LQLNocxHrYH2vFN0TU/aO++8g0QigUsvvRSXXHIJLrvsMtx333343Oc+hwcffBAHHHBA1e2Gh4cxZ86csmVz5szB8PBwYb2zzK1MNVavXo2LLrqobNmF3/kOVM0LVdGQSSdhAZCrDOcFAEtYSCdiEJaJYCgCSVZgmuXGtAL5ob9mdcNaZ1iws51lWrAsgXTWgKTpMPL+Mqms4Tq82bJEYYhzNZx1qYxedT1jMAZjMAZjMEanYmR0E4auQ5KVvD8oABTbTOcFINMSkFD9dSC3tlbz+mFZVv323OqcqXzHRNptt92Gk046qfD33XffDQA47LDD8LWvfQ0AsOeee+Lxxx/H2rVrXUXaVHHuuedi1apVhb9jsRhuuulmCCHg8QVgwfZdAVBhkFdqVOsPRSApKqwa75LVWle63hL2qZkzLSiGVTAB1A0LpssF4JA1ap9kbusZgzEYgzEYgzE6GUOSJHh8QQhIFe9lO39ZQtQd3FetrdUaaM+zqc7NWNAxkXbooYdi8eLFhb9nzZoFVVXxwQ9+sKzcLrvsgkcffdR1P0NDQ9i8eXPZss2bN2NoaKiw3lk2d+7csjJ77rmn6369Xi+8Xm/ZMksIKLIMTVUKilvPpqCW+K7YgwTigGXCH4rA5/W6erfohln0XauCmfdu0VQFACDBAiwJkYAHwZDX9qBJ5hAJelw9aMYS2doeNBkdWcPCQMhbdT1jMAZjMAZjMEanYpgZBYqqQdNUqPm2sBQhBHTTgqbIk25r67XnAu49fVNNx15w6uvrw/vf//7CJxKJYJ999sFLL71UVu6vf/0rtt9+e9f9LFmyBBs2bChbtn79eixZsgQAsGDBAgwNDZWVicViePLJJwtlJovXFygbJVI6ijMY7m/IB40QQgghNZgGM9la7bnPF5ry+G50zTtpAPCNb3wDRx55JP7lX/4Fn/jEJ3DffffhN7/5DR566KFCmRUrVmCbbbbB6tWrAQBnnHEGDjjgAFx55ZU45JBDcMcdd+Cpp57CDTfcAMDuJj3zzDNxySWXYKeddsKCBQtw/vnnY968eVi+fHnLdS4dJZJOJyBJUt6oVoXu8q4ZIYQQQroLt/Zc76A/aVeJtM9+9rNYu3YtVq9ejdNPPx0777wz/u///b/Yf//9C2XeeOMNyCUjHPfbbz/cfvvtOO+88/Ctb30LO+20E+666y7stttuhTJnn302kskkTjzxRIyPj2P//ffHfffdV9N/zQ3TNGAYuv0Sv7AfQSqaCpG0BZmieQDJnvTVNAUkIbl2wZqGBSEBQlTv0CyNYZc3YJomUsk4ALsrOZ3WoVqaa1dyOpWDqcgQevVUp7MGcqYFj6icP5QxGIMxGIMxGKOjMVJxWKYJ0zCqrhdCtLWtrdaeW2bnHndKgu6oDRGLxXDVVVdDUVXIslQ2PZNlGhDC7rUTwoIsy5BlBQL5WQpcemqdfbj15E5cL4T9jDwYDENWFNiDVez5QS3LhGkakCUZQliQJAmK6oEpBGQAco2RNRbgOvKmNIZbPQ3LjiFBwDD0sgqrqgaRl5ntiFHvOBRJgmnkIISAJMmwhAVFUSHLSttiNHIczAfzMfE4mA/mY+JxMB/182FaFtLJOCRZrr4Pgba1tUD19hyShAvOPx/RaBThcLj6TqaIrupJ6xUkSQYkAWGhME2TomqQZdnuZbMsCACKoroqexsBSIDkdmZJ9tlX3Id9KqqaB7Kq2qNcTAFLzyCbScHrC8Lr98PUDaSSUZiWBY8vCEWWIbv8inF+Qaiq+0TxMAVUxf1XCgwLwjKQScUhKyoCQfv5fSoRRyaTgi/QB1VWW44h5yfZdTsO07KQyyRhmQYCwQgUTUU2nUY2k4TXF4Ci+VqO0ch3xXwwHxOPg/lgPiYeB/NRPI5a+fB4A4Bkb191HxIAIVpua2u1552EIq1J7BNFhrCsQkJVTYMs21+lpnlhGDm7exYmNE2D+6yfdU6c/ODi4slnAUKCrChQFFukZbNJ6Nk0/ME++PIjVBRFhawqSMbGkc2kEOyLQFEqR8XYOxeAEK6jXoQQEJLzS8ht5EwWmXQSquopm+y2LzKAZCyKTDoJXzAMRal+ujUSw4Jlj85x+8UGE9lUArAshCIzoOYHbQRCfZAVGZlUApokw+sJTjpGI98V85HfB/NRgPkoHgfzkd8H81GgXj6ymVShZ6u6ia3deSHV6kqr09Y20p53Coq0JpCk/PNvy4Kp5wAIKKoGSVLKvFsURbMfTVomdB2FC7AqAhAuBnyFIvl9i3y3rmEKWJKFXCaFXDoJjz8IxeMvH6ggKfAGw0gnokjGo/CHwjVdmusNcrBNCSvraRo60okoZEWFJ9gHY4LRoCfYBzMRQzoRBRCpOeLVLYaDJQQss3K9yBsHO750QlLKjkfx+KFZouCD45ngg9NIjFLcvivmw4b5KMJ8FGE+bJiPIo3kw4iNQ1hZmCagKO69ZXYzWeO7cGlrLSHqtucUaT2CyCfZMooJdfu1pWkadN0WaqYJqGrli5VC1FH3qPK4UwCqIkHPpaFn7AssEKj+a0tTvAAiyCRjyCXjZb9SHExL2F5sNX4JGZaAWuWXkGHoyCZjkBUVwb4I1Kq/tmTIfREk41FkkzEEw/0VorVWDAfdrP6r0Z56Kw5R4ktXDTU/akfPJKHIUuFXYyMxHGp9V5l0kvkA81EK81GE+XC2ZT4cGs2HCIaRy6RgmQZkWSr0cpVEyfe0AW49aW5trRBOD1rt9ryTdloUaU0i8opaVTVIslKjd1WyX3o07ZEhBnJQtQlCzRHrtZ92FtcLCZCAXDaNbDYDXyAExeN3f1afr2cwFEEqaf8imjjvmQTbpbne8/yJMQxdRzI+DkVV4Q30QZbcjQRlSUYgFEY2FUcyPu4yj2lljFIk51OyvjB5vWXYU2/VeQfQ4wtAkSVk0klIkArDrWvFKF9f/bvKpJL2IxLmg/nIw3wUYT7yWzAfhSVN5UO2X/GxTHt6KFWz/y7uXkJh6ECjbSnsR5y6noMzQKFme95BOmZm28uomgeS2zP6iWVVT8kJ1rrXimlayKTT8PtDVX9dVUNRNYT6BmCaBhKxcQjR2ouQhq4jER9rarJbSZIRCvdDUVQk4mMw9OpzvTVKqdGg7UvX2C8dnz9YZljYKplUEul0gvlgPgowH0WYDxvmo8jk8iHZQlmSYOitvyNWJtCaaM87AUVak0iyUq7iG0DV2iPUDEOHsEz4/P6KX1X169CeC20yF5hDu258E294lb9ya+MLtOfGV3bDYz6YDzAfpTAfNsxHkVbzoWmeloXaRIHWbHs+3VCkNUmpkW4ztCrUDD0HYZmQZKViAtjG69DahdbKBebQ6o2v1RueQ6s3vlZueA7MRxHmw4b5KMJ8FGE+bCS5NaHWawINoEibViYr1JyTUZIV16HOjddhcheaYbR+gTlU3PiMxm587brhOUz2xteOG54D81GE+bBhPoowH0WYD5sKoWZVn4lgIsISPSfQAIq0aadMqDVwsdtTUJmQFaW2lUdTdSheaKlEtO6FZho6krHxtlxgDqU3vmRsHGad70IIC6lEtG03PIfSG182k6pbPptJte2G58B8FGE+bJiPIsxHEebDplyo6bCs2j1qQggYRu8JNICjO5vC8UkTVtFDpfT/1RCOuVkJpT5qRg0fNecdNLsHTbNjC3votQWzsFvdtGoOajGFgGVMOIklGb5AGKlEFKlEDHDxwTFKfGy8gT4YpgBQvi/XGCXrAUCvst4b6EOqxJeo2ndh3/BsX6FAKAIhyRX7qhWjbH2V70rx+KBZVsGXyO1xcrbMV8jnXgfmg/loJMbEejIfzMfE9cwHLMvxCRWlFmoAJKiqB4aeK4hmWa4UX0KI/JMrxwdNdm23XZeL6sunA4q0JhCArdScEb9A7SG7wn29qmkw8j5qhoGKX1qGXhRozrr8LFGQJQmyJEHANuKTJfc5C8z8ySVXGd4sax74QxGkE1FkkjEEQuU+OKahI1PiYyO7/AKqFaPueklBMO9LlEnGEAyVG0gKYSGdLBo/ahNtTBqsQ73vyp8f6ZRLJyED8E4Y+ZRNJws3PL/LqCjmo/E6MB8Nrmc+CjAfRbaqfOT/rWaDZo/6LAo1SUXZSE1h5XvQ8gLNtQetXnveQWsOirRmEEVfmkqj2cqyAsI2z3MTaqoGw7CFmmmg4KNWOkhAVbVCjLxNGhRZgqLIEHm36ZrTkximbXjo8i6bBx5IoQgyqRjSyVihO9rQdaSSUah5J2hVUSYdA6YFq8bUIbKQ4A+FkUvGkUpGC48H7Hc6YrAsE4H8DW+yMRr5rry+AGQA2WwKsiwXHg9kUklksyn4/EFovkBLMZgPG+ajBOajAPNhw3wUMc38di5+bpIsQdE8MI0cDEOHKtk+asKyCo84HYHmVod67bm7jJ16+E5ah1E1rWwwgTNIQFaUtr3HUI+JPji6niu85FnNZXoqkCQZwXCk8HKurucm5SvUKt4JvkSlL91O/LU6VTAfRZgPG+ajCPNRhPmwkSWpfDCBYZQPEqjyGLRXoEjrAkoHExQFWvVu8qmrg32hGYaORGwMsqy07SXPRnFezpVlBYmYPYqqnS/dNkrpy7ntfum2UZiPIsyHDfNRhPkownzYlPmoGXpPDhKoBkUaIYQQQkgXQpHWBZQ+4mznFFLN1cH2sVFVDaHwACzLbMsUIM3g+ApZlolQeACqqrVlSpZmKX1k0M4pWZqB+SjCfNgwH0WYjyLMh40Q5XNxtmsKqU5DkdZhDF0ve8RZbng7PRe7OcFoUNM8hXcMkrH6PjjtQAgLyVjRV0jTPGUGkvV8idpFNl1u/FjmS5Senhsf81GE+bBhPoowH0WYDxtLTDCqVdUJhre9K9Q4urMZJHukbqn3WT3/FGfUSDXKfNBUrbAv+/9V7DnyPmmmJQDTKuzWtAQklyCOBw3M6hdKTs8hnYhCVVX4g2FYFgBYkGQFgWAEyUQUZiIGucYQ6noxnCHWpst6S1hIJ2IQlolgKAJJVgpl/UHHiycKfygCD2oPaXeL0ch35fgK+fxBaF5/YV+a1w/LspBJJ2EBkGsMaa8Xg/ko1hFgPgDmY2IZ5oP5KMXxSXPav4rtLQEz74Omqhok2XY+gJT3UTNKfNTqWHC4tefCrRGfBijSmkACgInmtPVy14BAU1WtolypPYdjeOsUsYSAJET533WqYVU5+cwSo0FfMAwBqewklfLL04kokvEoAi6GhbVi1FtfavzoD0UgKeqEchJ8wXDBQFKa4EvUaB3qfVelxo+aL1CxH80XgAXUNJBkPhqvA/PR2HrmowjzUWRrzIeA7RVatmyiUa2slLWlktSY4W1ZkGaWTwMUaU0g8j4qkiwVetMkuYZPmhC278qEImU+aFrRB20ipYa3pmnPVAAAmiJDURUIIaCbFjRFdt2H7uJBY+g6MqkYVNW+kDwuI5JURQYQQTYZQzYVrzpixy2Gg5n3BNLU8ovDfqcjDlgm/KEIfF6vy3EoQCiMTDKGTCpWdQSVW4xiLPfvKpNKQs+mCsaPrv5I+V+kejYFtcSXqJEYDsyHE4v5cGA+ijAfTizmo1DP/KNKp+0tLrfKjGoVRa3qSSpBgopij5qkSRU9avXac8miT9pWQ5kPWgNeOqpa4qPWpvccnJc8FUWtcImuhqJqCIb7m55Utxalkw8Hw/11fYUkSUYgVPQlatf7emW+Qi7Tq5Ti9QXa/nIu81GE+bBhPoowH0WYDxthlQwS0LS6PmhOj1ovDiagSJtGyo1qG/dBcwYT2D1qrZ3gpRdYMz426gTDwlYutNIbXqhvoOGJ40snOW7Hja/0hteMr1Dpy7mt3viYjyLMhw3zUYT5KMJ82JQLNA9kubEHgpI8wfC2R4QaRVqTWNbkTq7JCjQHVfNAkm2hls2kJlmHyV1gxTq0fqFV3PCaNH5s141vsjc8h3bc+JiPIsyHDfNRhPkownzYVAi0Jo1qJVnuOaFGkdYkwjKbTmyrAs1Bzb8YmUmnm77QWr3ACnVo4UJr9Ybn0OqNr9UbnkMrNz7mowjzYcN8FGE+ijAfNmU+aC3MJNBrQo0ibRIYeg6iwcQaRnsEmoOiyPD5/faF1qAPzkQfm1an6pjMhdauG57DxBtfo75EmXR7bngOZTc+5oP5APNRCvNhw3wUmVw+hC1u2zTV00Sh1mh73gk4urNJJEXJjyrRoaiAIrl9haJgs2EPEvBMfnivKPmPADxev92jlkpAswTUGhevYejIJGNQFRXBvggwYZi0cD5uQ8HzyyeuV1QVwb5+JGPjSCViCPZFIIvqI2Cs/LB1WGb+pVu1vA4uMSZ+BZX1lBDsiyAZiyKZiMIXDOdHE1U/jlwmBT2ThC8QgtcfqIhX97twWe/1ByAgmA/mowDzUYT5cGA+HJrKhyXyvV0lgwTKdieK/7rso6IoinN96nqugfa8c3RfjboY201Dgqx6YNbxXSkzqlU09wtaoK5RXvFEt88xwxRQPH5olij44HiqjPQp9bHxBPtg5I0Gq6HXGZBgWM7lWIKkwFvig+Ov4oMj8saPjq+QkBTXWFVjlGAJAcusXO8J9sHM+xIB1X2JciW+QorH71oHtxilVNuW+SjCfORhPgowH0WYjzyN5iMZAwDIigpJUmoIQlTGKCtQra2VoDTQnk/XDBLVoEhrAscnTZFlSFrRIE/SUDbCxDCKPmiapqGqeQvy4isv/Kquz/ecFT1s7L9VxfaUcX4B6ZkkFFmCr8RZ2jB0ZJMxyPlfQKpL97BpCduvp8YvOsMSUGWpqpeOpngBRJBJxpBLxhEMF4dk21OnxCFKfIUmEwOwbwKyJEGp6mMjQ+6LIBmPIpuMIRjuLxuBlUknoWfsG14gEJxkjPrfFfPhwHw4MB9FmA8H5sOh0XzYnR2Ky3ch8m0zMJm2VpGkuu15J6FImwySPZxX1WyDPEPXoeYN8koHCdjms5VmtgVEcX8NrRf2viSpeMJ7fAEosoRMOgkJEnyBIAxdRzI+DkVV4Q30QZbczQol2G7TbuudipTGnIiqagiGIkgl7V9EoXA/ACAZj8K0DHvqFEVtKYbkfFzWy5KMQCiMbCqOZHy88B5JJpVEJm0/MlA8/pZiNPJdMR82zEcR5qMI82HDfBSplw9/MIxkfAyubamQYDeWk29r67XnnYQirQUkSSo+09ZzkAwZQliFd9DqzevZLnz+ICRISKcTMAwdhpErvORp1OkKbxdK3gcnER9DPDoGALAsE6G+AUiyUnfKj3bgvJybiI0jER+Dqnqg61nb+NEfqNsl3y6YDxvmowjzUYT5sGE+itTKx3TkAqjdnrc6WKIVKNIaxBFclmUCRl6Y56d9kmUFlmkURqlIkgzTNFCYFqrWPiW3h50lMfJTUth1EMhm0pAVHQICliVg5ruSJUkueKh5/UFkMxmYlmXX0aUelhAQQsDU3Sa/LYnhUtPSGJrmQyadAAD4/CEYhg5L5Noao+ZxyDJUjxe5eAamYdjve0gSMplU+2I0chzMB/NR5TiYD+aj7DiYj7r5MA0DlmXZ7anL9Exta2td2nMrPzXVdHW8lCKJTkTtQV599VXsuOOOna4GIYQQQjrAK6+8gve9733TGpM9aQ0yY8YMAMAbb7yBSCTS4dpMP7FYDPPnz8ebb76JcDjc6epMOzx+Hj+Pn8fP4986jz8ajWK77bYr6IDphCKtQWTZ7s6NRCJb5UnqEA6Hefw8/k5Xo2Pw+Hn8PP6t9/gdHTCtMac9IiGEEEIIqQtFGiGEEEJIF0KR1iBerxcXXnghvC4Gh1s6PH4eP4+fx8/j5/FvjXTy+Dm6kxBCCCGkC2FPGiGEEEJIF0KRRgghhBDShVCkEUIIIYR0IVuNSPvlL3+JT33qUxgcHIQkSXj22WcrymQyGaxcuRKDg4MIhUI4/PDDsXnz5pr7FULgggsuwNy5c+H3+7F06VK8/PLLZWXee+89HHPMMQiHw+jv78fxxx+PRCLRzsObFM6ktxM/V1xxhes23/nOdyrKL1y4sKzMZL7HTvDlL3+54lgOPvjguttdd9112GGHHeDz+bB48WL88Y9/LFvfC8ev6zrOOecc7L777ggGg5g3bx5WrFiBf/7znzW325LyXy+PE1m3bh0WLlwIn8+H3XffHffcc0/Z+kbuBd3A6tWrsc8++6Cvrw+zZ8/G8uXL8dJLL9Xc5tZbb63Iu8/nKyvTK8ffyDk8kS0l9wCwww47VL3vr1y5smr5Xs/9H/7wB/zbv/0b5s2bB0mScNddd5Wtn2zdp60dEFsJP/vZz8RFF10kbrzxRgFAbNq0qaLMySefLObPny82bNggnnrqKfGRj3xE7LfffjX3e+mll4pIJCLuuusu8f/+3/8Thx56qFiwYIFIp9OFMgcffLDYY489xBNPPCEeeeQR8f73v18cffTR7T7Epnn77bfLPjfffLOQJEm88sorrttceOGFYtdddy3b7t133y0rM5nvsRMce+yx4uCDDy47lvfee6/mNnfccYfweDzi5ptvFs8//7w44YQTRH9/v9i8eXOhTC8c//j4uFi6dKm48847xYsvvig2btwo9t13X7Fo0aKa220p+W8kj6U89thjQlEUcfnll4sXXnhBnHfeeULTNPHnP/+5UKaRe0E3sGzZMnHLLbeI5557Tjz77LPiM5/5jNhuu+1EIpFw3eaWW24R4XC4LO/Dw8NlZXrl+Bs5h0vZknIvhBDvvPNO2bGvX79eABAPPvhg1fK9nvt77rlHfPvb3xa//OUvBQDxq1/9qmz9ZOo+ne3AViPSHF577bWqIm18fFxomibWrVtXWPaXv/xFABAbN26sui/LssTQ0JC44ooryvbj9XrFf/3XfwkhhHjhhRcEAPGnP/2pUObee+8VkiSJt956q41H1jqHHXaYOPDAA2uWufDCC8Uee+zhun4y32OnOPbYY8Vhhx3W1Db77ruvWLlyZeFv0zTFvHnzxOrVq4UQvXX8E/njH/8oAIjXX3/dtcyWkv96eZzIF77wBXHIIYeULVu8eLE46aSThBCN3Qu6lXfeeUcAEA8//LBrmVtuuUVEIhHX9b10/PXO4YlsybkXQogzzjhD7LjjjsKyrKrrt6TcTxRpk637dLYDW83jzno8/fTT0HUdS5cuLSxbuHAhtttuO2zcuLHqNq+99hqGh4fLtolEIli8eHFhm40bN6K/vx977713oczSpUshyzKefPLJKTqa5tm8eTPuvvtuHH/88XXLvvzyy5g3bx7e97734ZhjjsEbb7xRWDeZ77GTPPTQQ5g9ezZ23nlnnHLKKRgdHXUtm8vl8PTTT5cdmyzLWLp0aeHYeu34S4lGo5AkCf39/TXL9Xr+G8njRDZu3FhWHgCWLVtWKN/IvaBbiUajAFB3XsJEIoHtt98e8+fPx2GHHYbnn3++sK7Xjr/WOTyRLTn3uVwOP//5z/Hv//7vkCTJtdyWlPtSJlP36W4HKNLyDA8Pw+PxVDRQc+bMwfDwsOs2Thm3bYaHhzF79uyy9aqqYsaMGa777QQ//elP0dfXh8997nM1yy1evBi33nor7rvvPlx//fV47bXX8LGPfQzxeBzA5L7HTnHwwQfjZz/7GTZs2IDLLrsMDz/8MD796U/DNM2q5UdGRmCaZt1898rxl5LJZHDOOefg6KOPrjk335aQ/0byOJHh4eG6eXeWNbrPbsCyLJx55pn46Ec/it1228213M4774ybb74Zv/71r/Hzn/8clmVhv/32wz/+8Q8AvXX89c7hiWypuQeAu+66C+Pj4/jyl7/sWmZLyv1EJlP36W4HtkiRdttttyEUChU+jzzySKer1HHqfSc333wzjjnmmIoXQify6U9/GkcccQQ+9KEPYdmyZbjnnnswPj6O//7v/57K6rdMteM/6qijcOihh2L33XfH8uXL8dvf/hZ/+tOf8NBDD3W6um2nVv51XccXvvAFCCFw/fXX19xPr+afVGflypV47rnncMcdd9Qst2TJEqxYsQJ77rknDjjgAPzyl7/ErFmz8OMf/3iaato+eA4Xuemmm/DpT38a8+bNcy2zJeW+F1E7XYGp4NBDD8XixYsLf2+zzTZ1txkaGkIul8P4+HiZ+t28eTOGhoZct3HKzJ07t2ybPffcs1DmnXfeKdvOMAy89957rvudCmp9J4888gheeukl3HnnnU3vt7+/Hx/4wAfwt7/9DcDkvsfpoJFz4n3vex9mzpyJv/3tbzjooIMq1s+cOROKolSM0Ck9tl47fkegvf7663jggQdq9qJVo1fyX0ojeZzI0NBQ3bw7y9zuBd3Gqaeeit/+9rf4wx/+gG233bapbTVNw1577VWWd6C3jt9h4jk8kS0x9wDw+uuv4/7778cvf/nLprbbknI/mbpPdzuwRfak9fX14f3vf3/h4/f7626zaNEiaJqGDRs2FJa99NJLeOONN7BkyZKq2yxYsABDQ0Nl28RiMTz55JOFbZYsWYLx8XE8/fTThTIPPPAALMsqazSnmlrfyU033YRFixZhjz32aHq/iUQCr7zySuEEn8z3OB00ck784x//wOjoaNnFWorH48GiRYvKjs2yLGzYsKFwbL10/I5Ae/nll3H//fdjcHCw6f32Sv5LaSSPE1myZElZeQBYv359oXwj94JuQQiBU089Fb/61a/wwAMPYMGCBU3vwzRN/PnPfy7kvZeOfyITz+GJbEm5L+WWW27B7NmzccghhzS13ZaU+8nUfdrbgaaGGfQwo6OjYtOmTeLuu+8WAMQdd9whNm3aJN5+++1CmZNPPllst9124oEHHhBPPfWUWLJkiViyZEnZfnbeeWfxy1/+svD3pZdeKvr7+8Wvf/1r8b//+7/isMMOq2rBsddee4knn3xSPProo2KnnXbqCgsOIYSIRqMiEAiI66+/vur6Aw88UFxzzTWFv7/+9a+Lhx56SLz22mviscceE0uXLhUzZ84U77zzTqFMI99jp4nH4+Kss84SGzduFK+99pq4//77xYc//GGx0047iUwmUyg38fjvuOMO4fV6xa233ipeeOEFceKJJ4r+/v6yIem9cPy5XE4ceuihYttttxXPPvts2fD6bDZbKLel5r9eHr/0pS+Jb37zm4Xyjz32mFBVVXz/+98Xf/nLX8SFF15Y1Yah3r2gGzjllFNEJBIRDz30UFneU6lUoczE47/ooovE7373O/HKK6+Ip59+Whx11FHC5/OJ559/vlCmV46/3jm8JefewTRNsd1224lzzjmnYt2Wlvt4PC42bdokNm3aJACIq666SmzatKkwir2RuneyHdhqRNott9wiAFR8LrzwwkKZdDotvvrVr4qBgQERCATEZz/72TIRJ4Q9hPeWW24p/G1Zljj//PPFnDlzhNfrFQcddJB46aWXyrYZHR0VRx99tAiFQiIcDovjjjtOxOPxqTzchvnxj38s/H6/GB8fr7p+++23L/uOjjzySDF37lzh8XjENttsI4488kjxt7/9rWybRr7HTpNKpcSnPvUpMWvWLKFpmth+++3FCSecUOH/M/H4hRDimmuuEdttt53weDxi3333FU888UTZ+l44/v/f3v2ERNXFYRx/Bl4tY7CFxIDQZIgKin8mbCEuEhITRRRkNqbjUIoLEdxFi2pji2qRuHDTQtFCEVEURqyNki4kBl1lqxEFXWThqAv/LOy2EAcnNX0np653vh8YGM/cc37neofx4d65x4OlaI57HF4vyarH3zB+fxzv3Llj1NfXh20/MDBgpKenG/Hx8UZWVpbh8/nCXj/LZ4EZnHTcD3+u/br/ra2tod+Vw+EwysrKjNnZ2bBxL8r+n/YetvKxP/D+/XtD0rFztNqxn5iYOPb9frCPZ5n7v/w7YDMMw/h/594AAAAQbZb8ThoAAMBFR0gDAAAwIUIaAACACRHSAAAATIiQBgAAYEKENAAAABMipAEAAJgQIQ0AAMCECGkAoP3/YVtSUhL1OuPj48rLy9OPHz+iXgvAxUZIAxDzdnZ29OTJEz179izqtUpLSxUXF6d3795FvRaAi42QBiDmDQ4OKjExUYWFhX+lntfrVUdHx1+pBeDiIqQBsIyenh4lJSVpd3c3rL2qqkp1dXUn9uvv71dFRUVYW1FRkVpbW4+M4/V6Qz+npKSora1NHo9HdrtdN27c0OjoqL59+6bKykrZ7Xbl5OTI7/eHjVNRUSG/369AIBDZjgKICYQ0AJbhdru1t7en0dHRUNvq6qp8Pp8ePHhwYr/p6Wnl5+dHVPP169cqLCzU3NycysvLVVdXJ4/Ho9raWs3Ozio1NVUej0eGYYT6OJ1OORwOTU1NRVQTQGwgpAGwjISEBNXU1KirqyvU9vbtWzmdThUVFR3bZ319XRsbG0pOTo6oZllZmZqampSWlqanT59qc3NTt2/fltvtVnp6uh49eqQvX77o69evYf2Sk5O1tLQUUU0AsYGQBsBSGhsb9eHDB62srEiSuru75fV6ZbPZjt1+e3tbknT58uWI6uXk5ISeOxwOSVJ2dvaRttXV1bB+CQkJ2traiqgmgNjw37+eAACcJ5fLpdzcXPX09KikpESfP3+Wz+c7cfukpCTZbDYFg8FTx97b2zvSFhcXF3p+EASPa/t1yY21tTVdu3bt1JoAYhdn0gBYTkNDg7q7u9XV1aXi4mJdv379xG3j4+OVmZmp+fn5I6/9eolyYWHhXOa3s7OjQCAgl8t1LuMBsCZCGgDLqamp0fLyst68efPbGwYO3Lt3T9PT00faR0ZGNDQ0pEAgoOfPn2t+fl5LS0uhS6mRmpmZ0aVLl1RQUPBH4wCwNkIaAMu5evWqqqurZbfbVVVVder2Dx8+1NjYmDY2NsLay8vL9fLlS2VmZurjx4/q7OzUp0+f1Nvb+0fz6+vr0/3793XlypU/GgeAtdmMw/eFA4BF3L17V1lZWWdeNNbtduvWrVt6/PixpP110vLy8tTe3n6u8/r+/bsyMjLk9/t18+bNcx0bgLVwJg2ApQSDQQ0PD2tyclLNzc1n7vfq1SvZ7fYozmzf4uKiOjs7CWgATsXdnQAsxeVyKRgM6sWLF8rIyDhzv5SUFLW0tERxZvvy8/MjXjgXQGzhcicAAIAJcbkTAADAhAhpAAAAJkRIAwAAMCFCGgAAgAkR0gAAAEyIkAYAAGBChDQAAAATIqQBAACYECENAADAhH4Ch3TaZ2fe0s4AAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# visualizing the mode solver\n",
    "ms = mode_solver_SiN_wvg(10, 12)\n",
    "ms.plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plane Size\n",
    "\n",
    "Due to the relatively low index contrast between core and clad, the evanescent fields are long, so it is necessary to carefully define the simulation size. Evanescent fields in the [PML can lead to artificial gain](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.PML.html) and yield inaccurate results. This issue becomes more significant for larger bend radii, as the losses are smaller. \n",
    "\n",
    "To study this issue, we will test the plane size for several bend radii and choose the minimum value that yields positive results, meaning that the PML error contribution becomes smaller than the physical losses."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:06:03 CET </span><span style=\"color: #800000; text-decoration-color: #800000\">WARNING: </span><span style=\"color: #008000; text-decoration-color: #008000\">'ModeSolver'</span><span style=\"color: #800000; text-decoration-color: #800000\">: The mode solver pml in tangential axis </span><span style=\"color: #008000; text-decoration-color: #008000\">'0'</span><span style=\"color: #800000; text-decoration-color: #800000\">  </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">covers more than </span><span style=\"color: #008000; text-decoration-color: #008000\">'50%'</span><span style=\"color: #800000; text-decoration-color: #800000\"> of the mode plane cells. Consider using a   </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">larger mode plane or smaller </span><span style=\"color: #008000; text-decoration-color: #008000\">'num_pml'</span><span style=\"color: #800000; text-decoration-color: #800000\">.                            </span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:06:03 CET\u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING: \u001b[0m\u001b[32m'ModeSolver'\u001b[0m\u001b[31m: The mode solver pml in tangential axis \u001b[0m\u001b[32m'0'\u001b[0m\u001b[31m  \u001b[0m\n",
       "\u001b[2;36m             \u001b[0m\u001b[31mcovers more than \u001b[0m\u001b[32m'50%'\u001b[0m\u001b[31m of the mode plane cells. Consider using a   \u001b[0m\n",
       "\u001b[2;36m             \u001b[0m\u001b[31mlarger mode plane or smaller \u001b[0m\u001b[32m'num_pml'\u001b[0m\u001b[31m.                            \u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">WARNING: </span><span style=\"color: #008000; text-decoration-color: #008000\">'ModeSolver'</span><span style=\"color: #800000; text-decoration-color: #800000\">: The mode solver pml in tangential axis </span><span style=\"color: #008000; text-decoration-color: #008000\">'1'</span><span style=\"color: #800000; text-decoration-color: #800000\">  </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">covers more than </span><span style=\"color: #008000; text-decoration-color: #008000\">'50%'</span><span style=\"color: #800000; text-decoration-color: #800000\"> of the mode plane cells. Consider using a   </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">larger mode plane or smaller </span><span style=\"color: #008000; text-decoration-color: #008000\">'num_pml'</span><span style=\"color: #800000; text-decoration-color: #800000\">.                            </span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING: \u001b[0m\u001b[32m'ModeSolver'\u001b[0m\u001b[31m: The mode solver pml in tangential axis \u001b[0m\u001b[32m'1'\u001b[0m\u001b[31m  \u001b[0m\n",
       "\u001b[2;36m             \u001b[0m\u001b[31mcovers more than \u001b[0m\u001b[32m'50%'\u001b[0m\u001b[31m of the mode plane cells. Consider using a   \u001b[0m\n",
       "\u001b[2;36m             \u001b[0m\u001b[31mlarger mode plane or smaller \u001b[0m\u001b[32m'num_pml'\u001b[0m\u001b[31m.                            \u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "td.config.logging.warn_once = True\n",
    "\n",
    "radius = np.arange(20, 130, 20)\n",
    "sizes = []\n",
    "loss = []\n",
    "\n",
    "for r in radius:\n",
    "    l = -1\n",
    "    size = 1\n",
    "    while l < 0:\n",
    "        size += 2\n",
    "        mode_solver = mode_solver_SiN_wvg(\n",
    "            resolution=10,\n",
    "            npml=12,\n",
    "            nun_modes=5,\n",
    "            bend_radius=r,\n",
    "            bend_axis=1,\n",
    "            size=(size, size),\n",
    "        )\n",
    "\n",
    "        mode_data = web.run(mode_solver, verbose=False)\n",
    "\n",
    "        idx = findMode(mode_data, 0.4)\n",
    "\n",
    "        l = mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"]\n",
    "\n",
    "    loss.append(l)\n",
    "    sizes.append(size)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As we can see, the plane size needed for physical results increases approximately linearly with the bend radius.\n",
    "\n",
    "For simplicity, we conducted the tests with the same size for the y and z dimensions. However, since the bend is in the y dimension, the size in the z dimension can be smaller."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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mDZtGqTSkv93lI2NDezs7LBmzRq4uLggMTERU6ZMKfVnvf/++1i/fj18fX1hbW2NGTNmwMDAQLn+3LlzOHr0KDp37gxHR0ecO3cOT548Qd26dV+7vy5duiAkJATp6emwsbEB8PKUFAAsX74cgYGBuH37NgIDAwFo5jb3kydPonPnzqXeD5G+YrkhqkCGDh2KFy9eoFmzZjAwMMD48eMxcuRIAMCcOXPg4OCAsLAw3L17F9bW1mjUqBGmTp1aos9YuHAhsrKy4OvrCwsLC3z55ZfIzMwscVapVIqtW7ciMDAQ9erVQ+3atREeHo727duX6rNCQkKQkJCAjz76CFZWVpgzZ47KkRtLS0ucOHECS5cuhUwmg7u7OxYtWoRu3bq9dn/e3t5o1KgRtm/fjlGjRgF4WW66dOmCu3fvwtvbG15eXpg1axbGjBmD8PBwbNy4scTj8Upubi52796NgwcPqr0PIn0nEf598pmIiEpk//79mDRpEq5duwapVIouXbqgadOmmDt3rsY/a+XKlYiIiMDhw4c1vm8ifcFrboiISql79+4YOXIkHj16BAC4fPmyyl1PmmRkZITly5eXyb6J9AWP3BARaVBKSgpcXFxw/fp1eHl5iR2HqEJiuSEiIiK9wtNSREREpFdYboiIiEivsNwQERGRXmG5ISIiIr3CckNERER6heWGiIiI9ArLDREREekVlhsiIiLSKyw3REREpFdYboiIiEiv/B98utTcekTfCwAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "ax.plot(radius, sizes, \"--o\")\n",
    "ax.set_xlabel(\"bend radius ($\\\\mu$m)\")\n",
    "ax.set_ylabel(\"minimum plane size ($\\\\mu$m)\")\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "After defining an appropriate plane size that can handle large bend radii, we will analyze the losses as a function of the bend radius using two different resolution parameters: 10 and 50."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c39827df95b3402187a7ce20020843eb",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:11:26 CET </span>Started working on Batch containing <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">6</span> tasks.                       \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:11:26 CET\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch containing \u001b[1;36m6\u001b[0m tasks.                       \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:11:36 CET </span>Maximum FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.032</span> for the whole batch.                \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:11:36 CET\u001b[0m\u001b[2;36m \u001b[0mMaximum FlexCredit cost: \u001b[1;36m0.032\u001b[0m for the whole batch.                \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Use <span style=\"color: #008000; text-decoration-color: #008000\">'Batch.real_cost()'</span> to get the billed FlexCredit cost after    \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>completion.                                                        \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mUse \u001b[32m'Batch.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed FlexCredit cost after    \n",
       "\u001b[2;36m             \u001b[0mcompletion.                                                        \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "196d541820d9472ca5a496db369bc75b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:11:53 CET </span>Batch complete.                                                    \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:11:53 CET\u001b[0m\u001b[2;36m \u001b[0mBatch complete.                                                    \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# creating the mode solver objects and running in batch\n",
    "mode_solvers = []\n",
    "for r in radius:\n",
    "    mode_solver = mode_solver_SiN_wvg(\n",
    "        resolution=10,\n",
    "        npml=12,\n",
    "        nun_modes=5,\n",
    "        bend_radius=r,\n",
    "        bend_axis=1,\n",
    "        size=(20, 15),\n",
    "    )\n",
    "\n",
    "    mode_solvers.append(mode_solver)\n",
    "\n",
    "batch_data = web.Batch(\n",
    "    simulations=mode_solvers,\n",
    "    folder_name=\"radiative_losses\",\n",
    ").run(path_dir=\"radiative_losses\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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r7909UyFhYW1LgwAAKC+qNUcIQAAgMagVkHo1ltv1fPPP1+l/YUXXtCoUaMuuCgAAABfqFUQys7O1g033FClfdiwYcrOzr7gogAAAHyhVkHoyJEjatasWZX2pk2bym63X3BRAAAAvlCrINS7d29lZmZWaX/nnXfUs2fPCy4KAADAF2r11NisWbM0cuRI/fTTT7r22mslSVlZWfrHP/6h9957z6sFAgAA1JVaBaGUlBStWLFCzz33nN5//321aNFCffr00aeffqprrrnG2zUCAADUiRotqPjzzz/roosuqst66h0WVAQAoOHx9Pe7RnOE+vTpo169eumxxx7Tpk2bLrhIX9izZ48GDRqknj17qk+fPty6AwAALjW6InT8+HGtXbtWH374oVauXCmLxaIbb7xRI0aM0JAhQ9S8efO6rLVWioqKVFJSotjYWBUXFys+Pl4//vijWrVq5dHfc0UIAICGx9Pf71q9a0ySDMNQTk6OPvroI3300UfavXu3kpKSNGLECKWkpKh9+/a1Lr4uxcTEaOXKlYqOjvaoP0EIAICGp05ujZ3JYrHoyiuv1Lx58/Tdd98pLy9PV199tZYtW6aOHTtq0aJFHh0nOztbKSkpioqKksVi0YoVK6r0WbRokbp06aLmzZsrMTFRubm5tap569atcjgcHocgAADQuHntXWPdunXTQw89pOzsbO3bt09Dhw716O8qKioUExNz1uCUmZmptLQ0Pfnkk9q2bZtiYmKUnJys0tJSV5/Y2Fj16tWrymffvn2uPgcPHtS4ceO0ZMmSC/uiAACg0ajVrbEDBw4oLCxM0m+TkV9//XUdO3ZMI0aM0NVXX137YiwWLV++XDfffLOrLTExUX379tXChQslSU6nU9HR0Zo8ebJmzJjh0XErKys1ZMgQ3X333brjjjvO27eystK1bbfbFR0dza0xAAAakDq5NfbNN9+oS5cuCg8PV/fu3ZWfn6++ffvq5Zdf1pIlSzR48OBqb23V1okTJ7R161YlJSX9/4IDApSUlKScnByPjmEYhsaPH69rr732vCFIktLT0xUcHOz6cBsNAIDGq0ZB6NFHH1Xv3r2VnZ2tQYMG6cYbb9Tw4cNVXl6uQ4cOadKkSZo3b57Xivv111/lcDhks9nc2m02m4qLiz06xpdffqnMzEytWLFCsbGxio2N1TfffHPW/jNnzlR5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ECUkJLj6JCUlKSAgQJs2bfJ5zY1JeXm5LBaLQkJCJPl2rHnpqg85nU5NnTpVAwcOVK9evSRJxcXFatasmeu//NNsNpuKi4v9UGXD9M4772jbtm3avHlzlX2Msff8/PPPevXVV5WWlqbHHntMmzdv1pQpU9SsWTOlpqa6xtNms7n9HWNdMzNmzJDdblf37t1ltVrlcDj07LPPauzYsZLEONcBT8a0uLhY4eHhbvubNGmitm3bMu4X4Pjx45o+fbrGjBnjevGqL8eaIORD999/v7Zv364NGzb4u5RGZc+ePXrwwQe1du1aNW/e3N/lNGpOp1MJCQl67rnnJElxcXHavn27Fi9erNTUVD9X13i8++67evvtt/Xf//3fuvzyy5Wfn6+pU6cqKiqKcUajcvLkSd12220yDEOvvvqqX2rg1piPPPDAA1q5cqXWrVunjh07utojIiJ04sQJlZWVufUvKSlRRESEj6tsmLZu3arS0lJdccUVatKkiZo0aaL169drwYIFatKkiWw2G2PsJZGRkerZs6dbW48ePbR7925Jco3n75/IY6xr5pFHHtGMGTP0xz/+Ub1799Ydd9yhadOmKT09XRLjXBc8GdOIiAiVlpa67T916pQOHjzIuNfC6RC0a9curV271nU1SPLtWBOE6phhGHrggQe0fPlyffbZZ+ratavb/vj4eDVt2lRZWVmuth07dmj37t0aMGCAr8ttkK677jp98803ys/Pd30SEhI0duxY139mjL1j4MCBVZZ/+PHHH9W5c2dJUteuXRUREeE21na7XZs2bWKsa+Do0aMKCHD/59lqtcrpdEpinOuCJ2M6YMAAlZWVaevWra4+n332mZxOpxITE31ec0N2OgQVFBTo008/VVhYmNt+n461V6deo4p7773XCA4ONj7//HOjqKjI9Tl69Kirz5/+9CejU6dOxmeffWZs2bLFGDBggDFgwAA/Vt3wnfnUmGEwxt6Sm5trNGnSxHj22WeNgoIC4+233zZatmxpvPXWW64+8+bNM0JCQowPP/zQ+N///V/jpptuMrp27WocO3bMj5U3LKmpqUaHDh2MlStXGoWFhcYHH3xgtGvXznj00UddfRjnmjt8+LCRl5dn5OXlGZKMl156ycjLy3M9qeTJmF5//fVGXFycsWnTJmPDhg1Gt27djDFjxvjrK9Vb5xrrEydOGCNGjDA6duxo5Ofnu/02VlZWuo7hq7EmCNUxSdV+3njjDVefY8eOGffdd58RGhpqtGzZ0rjllluMoqIi/xXdCPw+CDHG3vPPf/7T6NWrlxEYGGh0797dWLJkidt+p9NpzJo1y7DZbEZgYKBx3XXXGTt27PBTtQ2T3W43HnzwQaNTp05G8+bNjYsuush4/PHH3X4kGOeaW7duXbX/HqemphqG4dmYHjhwwBgzZozRunVrIygoyJgwYYJx+PBhP3yb+u1cY11YWHjW38Z169a5juGrsbYYxhlLlQIAAJgIc4QAAIBpEYQAAIBpEYQAAIBpEYQAAIBpEYQAAIBpEYQAAIBpEYQAAIBpEYQAAIBpEYQAAIBpEYQAAIBpEYQAVDFo0CBNnTq10Z/79+fyxbkPHDig8PBw/fLLL3V6Hkn64x//qPnz59f5eYCGrIm/CwCA+uKDDz5Q06ZN6/Qczz77rG666SZ16dKlTs8jSU888YT+8Ic/6K677lJwcHCdnw9oiLgiBKBBO3HihNeO1bZtW7Vp08Zrx/u9o0eP6q9//asmTpxYZ+c4U69evXTxxRfrrbfe8sn5gIaIIASgWqdOndIDDzyg4OBgtWvXTrNmzZJhGJIkp9Op9PR0de3aVS1atFBMTIzef/99t78fNGiQpkyZokcffVRt27ZVRESEnnrqKbc+FRUVGjdunFq3bq3IyEiPbuMMGjRIDzzwgKZOnap27dopOTlZkrR69WpdddVVCgkJUVhYmG688Ub99NNPNTrX72+NdenSRRkZGW59YmNj3b7H+++/r969e6tFixYKCwtTUlKSKioqqq39448/VmBgoPr37+/WvmHDBjVt2lTHjx93tf3yyy+yWCzatWuXBg0apMmTJ2vq1KkKDQ2VzWbT66+/roqKCk2YMEFt2rTRJZdcok8++aTKOVNSUvTOO++cdTwBsyMIAajW3//+dzVp0kS5ubn6y1/+opdeeklLly6VJKWnp+vNN9/U4sWL9e2332ratGm6/fbbtX79+irHaNWqlTZt2qQXXnhBzzzzjNauXeva/8gjj2j9+vX68MMPtWbNGn3++efatm2bR7U1a9ZMX375pRYvXizpt6CTlpamLVu2KCsrSwEBAbrlllvkdDov6FznUlRUpDFjxujOO+/U999/r88//1wjR450Bcbf++KLLxQfH1+lPT8/Xz169FDz5s1dbXl5eQoNDVXnzp1d37ldu3bKzc3V5MmTde+992rUqFG68sortW3bNg0dOlR33HGHjh496nbsfv36KTc3V5WVlRf0XYFGywCA37nmmmuMHj16GE6n09U2ffp0o0ePHsbx48eNli1bGl999ZXb30ycONEYM2aM2zGuuuoqtz59+/Y1pk+fbhiGYRw+fNho1qyZ8e6777r2HzhwwGjRooXx4IMPnrO2uLi4836H/fv3G5KMb775xuNzXXPNNW7bnTt3Nl5++WW348bExBhPPvmkYRiGsXXrVkOS8csvv5y3HsMwjJtuusm48847q7Tfddddxrhx49zaZs+ebQwaNMhV15ljeerUKaNVq1bGHXfc4WorKioyJBk5OTlux/n6669rVCNgNlwRAlCt/v37y2KxuLYHDBiggoIC7dy5U0ePHtWQIUPUunVr1+fNN990uxUlSX369HHbjoyMVGlpqSTpp59+0okTJ5SYmOja37ZtW1122WXnra26qyoFBQUaM2aMLrroIgUFBbkmI+/evfuCznUuMTExuu6669S7d2+NGjVKr7/+ug4dOnTW/seOHXO76nNafn6+YmNj3dry8vLc2s4cS6vVqrCwMPXu3dvVZrPZJMk1vqe1aNFCkqpcKQLwG54aA1AjR44ckSStWrVKHTp0cNsXGBjotv37J7AsFovrVtWFaNWqVZW2lJQUde7cWa+//rqioqLkdDrVq1evC5pMHRAQUOU218mTJ13/2Wq1au3atfrqq6+0Zs0avfLKK3r88ce1adMmde3atcrx2rVrVyUoORwObd++XXFxcW7t27Zt06233urarm4sz2w7HVp/P74HDx6UJLVv3/683xcwI64IAajWpk2b3LY3btyobt26qWfPngoMDNTu3bt1ySWXuH2io6M9Pv7FF1+spk2bup3n0KFD+vHHH2tc64EDB7Rjxw498cQTuu6669SjRw+3wFHbc7Vv315FRUWubbvdrsLCQrc+FotFAwcO1NNPP628vDw1a9ZMy5cvr/Z4cXFx+u6779zaduzYoePHjysqKsrVlpOTo71791a5SlQb27dvV8eOHdWuXbsLPhbQGHFFCEC1du/erbS0NE2aNEnbtm3TK6+8ovnz56tNmzZ6+OGHNW3aNDmdTl111VUqLy/Xl19+qaCgIKWmpnp0/NatW2vixIl65JFHFBYWpvDwcD3++OMKCKj5/z8LDQ1VWFiYlixZosjISO3evVszZsy44HNde+21WrZsmVJSUhQSEqLZs2fLarW69m/atElZWVkaOnSowsPDtWnTJu3fv189evSo9njJycmaOXOmDh06pNDQUEm/3RaTpFdeeUVTpkzRzp07NWXKFEneWRrgiy++0NChQy/4OEBjRRACUK1x48bp2LFj6tevn6xWqx588EHdc889kqQ5c+aoffv2Sk9P188//6yQkBBdccUVeuyxx2p0jhdffFFHjhxRSkqK2rRpo4ceekjl5eU1rjUgIEDvvPOOpkyZol69eumyyy7TggULNGjQoAs618yZM1VYWKgbb7xRwcHBmjNnjtsVoaCgIGVnZysjI0N2u12dO3fW/PnzNWzYsGqP17t3b11xxRV69913NWnSJEm/BaHk5GT9/PPP6t27t3r27Kmnn35a9957rxYsWKD/+q//qvF4nHb8+HGtWLFCq1evrvUxgMbOYvz+BjgAoM6sWrVKjzzyiLZv366AgAAlJyerb9++mjt3rtfP9eqrr2r58uVas2aN148NNBbMEQIAHxo+fLjuuece7d27V5L09ddfuz395U1NmzbVK6+8UifHBhoLrggBgJ8UFxcrMjJS3377rXr27OnvcgBTIggBAADT4tYYAAAwLYIQAAAwLYIQAAAwLYIQAAAwLYIQAAAwLYIQAAAwLYIQAAAwLYIQAAAwLYIQAAAwLYIQAAAwrf8HGgOkRlBhyToAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "loss_10 = []\n",
    "\n",
    "for mode_data in batch_data.values():\n",
    "    idx = findMode(mode_data, 0.4)\n",
    "    loss_10.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])\n",
    "\n",
    "fig, ax = plt.subplots()\n",
    "ax.plot(radius, loss_10, \"o\")\n",
    "ax.set_yscale(\"log\")\n",
    "ax.set_xlabel(\"bend radius ($\\\\mu$m)\")\n",
    "ax.set_ylabel(\"Loss (dB/cm)\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As we can note, the losses decrease exponentially as a function of the bend radius.\n",
    "\n",
    "Next, we will perform the same analysis using a finer resolution."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "f126c8e08b47465d9131a768422c4334",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:12:10 CET </span>Started working on Batch containing <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">6</span> tasks.                       \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:12:10 CET\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch containing \u001b[1;36m6\u001b[0m tasks.                       \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:12:21 CET </span>Maximum FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.262</span> for the whole batch.                \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:12:21 CET\u001b[0m\u001b[2;36m \u001b[0mMaximum FlexCredit cost: \u001b[1;36m0.262\u001b[0m for the whole batch.                \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Use <span style=\"color: #008000; text-decoration-color: #008000\">'Batch.real_cost()'</span> to get the billed FlexCredit cost after    \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>completion.                                                        \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mUse \u001b[32m'Batch.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed FlexCredit cost after    \n",
       "\u001b[2;36m             \u001b[0mcompletion.                                                        \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "7c93d0f28c4448599efed95bdcd3d52e",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:12:50 CET </span>Batch complete.                                                    \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:12:50 CET\u001b[0m\u001b[2;36m \u001b[0mBatch complete.                                                    \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "loss_50 = []\n",
    "\n",
    "mode_solvers = {}\n",
    "for r in radius:\n",
    "    mode_solver = mode_solver_SiN_wvg(\n",
    "        resolution=50,\n",
    "        npml=12,\n",
    "        nun_modes=5,\n",
    "        bend_radius=r,\n",
    "        bend_axis=1,\n",
    "        size=(20, 15),\n",
    "    )\n",
    "\n",
    "    mode_solvers[str(r)] = mode_solver\n",
    "\n",
    "batch_data = web.Batch(\n",
    "    simulations=mode_solvers,\n",
    "    folder_name=\"radiative_losses\",\n",
    ").run(path_dir=\"radiative_losses\")\n",
    "\n",
    "for mode_data in batch_data.values():\n",
    "    idx = findMode(mode_data, 0.4)\n",
    "    loss_50.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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cXYPxtk9GGf3aM5xNgxD+/btU2RkpHx8Tj4TiCtCp+Hj46Nu3bo12/H9/f35P5mbMNbuwTi7B+PsHoyzezTXOJ/qStAxTJYGAACmRRACAACmRRDyED8/Pz388MPy8/PzdCmtHmPtHoyzezDO7sE4u4c3jDOTpQEAgGlxRQgAAJgWQQgAAJgWQQgAAJgWQQgAAJgWQaiZZWRkaMCAAerUqZNCQ0M1ZswYbd261anPoUOHdPfddys4OFgdO3bUddddp7KyMg9V3PItWLBAFotF06ZNc7Qxxq6zc+dO3XTTTQoODlb79u0VExOjjRs3OvYbhqG5c+cqIiJC7du31/Dhw1VUVOTBilueuro6zZkzR7169VL79u11zjnnaN68eU7vTGKcGy83N1cpKSmKjIyUxWLRsmXLnPY3ZEwrKyt14403yt/fX4GBgbr11lu1f/9+N36LluFUY33kyBHNnDlTMTEx6tChgyIjIzVhwgTt2rXL6RjuGmuCUDNbs2aN7r77bq1fv16rVq3SkSNHNGLECNXU1Dj6TJ8+XR9//LHee+89rVmzRrt27dLYsWM9WHXL9c033+jll19W//79ndoZY9fYu3evhgwZorZt2+qzzz7TDz/8oIULFyooKMjR56mnntLzzz+vrKwsbdiwQR06dFBycrIOHTrkwcpblieffFIvvfSSXnzxRf3444968skn9dRTT+mFF15w9GGcG6+mpkaxsbFatGjRCfc3ZExvvPFGff/991q1apU++eQT5ebm6o477nDXV2gxTjXWBw4c0ObNmzVnzhxt3rxZH3zwgbZu3arRo0c79XPbWBtwq/LyckOSsWbNGsMwDKOqqspo27at8d577zn6/Pjjj4YkIy8vz1Nltkj79u0zoqOjjVWrVhmXXnqpce+99xqGwRi70syZM42LL774pPvtdrsRHh5uPP300462qqoqw8/Pz/jHP/7hjhJbhVGjRhm33HKLU9vYsWONG2+80TAMxtkVJBlLly51bDdkTH/44QdDkvHNN984+nz22WeGxWIxdu7c6bbaW5o/j/WJ5OfnG5KM7du3G4bh3rHmipCbVVdXS5I6d+4sSdq0aZOOHDmi4cOHO/r07t1b3bt3V15enkdqbKnuvvtujRo1ymksJcbYlT766CMlJibq+uuvV2hoqOLj4/Xqq6869hcXF6u0tNRprAMCApSUlMRYN8JFF12knJwc/fzzz5Kkb7/9VuvWrdPIkSMlMc7NoSFjmpeXp8DAQCUmJjr6DB8+XD4+PtqwYYPba25NqqurZbFYFBgYKMm9Y81LV93Ibrdr2rRpGjJkiPr16ydJKi0tla+vr+N//GPCwsJUWlrqgSpbpnfeeUebN2/WN998U28fY+w6v/76q1566SWlpaXpwQcf1DfffKOpU6fK19dXqampjvEMCwtz+jvGunFmzZolm82m3r17y2q1qq6uTo8//rhuvPFGSWKcm0FDxrS0tFShoaFO+9u0aaPOnTsz7mfg0KFDmjlzpsaPH+948ao7x5og5EZ33323tmzZonXr1nm6lFalpKRE9957r1atWqV27dp5upxWzW63KzExUU888YQkKT4+Xlu2bFFWVpZSU1M9XF3r8e677+rtt9/W//zP/+iCCy5QYWGhpk2bpsjISMYZrcqRI0d0ww03yDAMvfTSSx6pgVtjbnLPPffok08+0erVq9WtWzdHe3h4uA4fPqyqqiqn/mVlZQoPD3dzlS3Tpk2bVF5ergsvvFBt2rRRmzZttGbNGj3//PNq06aNwsLCGGMXiYiIUN++fZ3a+vTpox07dkiSYzz//EQeY904M2bM0KxZs/TXv/5VMTExuvnmmzV9+nRlZGRIYpybQ0PGNDw8XOXl5U77jx49qsrKSsa9CY6FoO3bt2vVqlWOq0GSe8eaINTMDMPQPffco6VLl+qLL75Qr169nPYnJCSobdu2ysnJcbRt3bpVO3bs0ODBg91dbot0+eWX67vvvlNhYaHjk5iYqBtvvNHxz4yxawwZMqTe8g8///yzevToIUnq1auXwsPDncbaZrNpw4YNjHUjHDhwQD4+zv96tlqtstvtkhjn5tCQMR08eLCqqqq0adMmR58vvvhCdrtdSUlJbq+5JTsWgoqKivT5558rODjYab9bx9qlU69Rz5133mkEBAQYX375pbF7927H58CBA44+f/vb34zu3bsbX3zxhbFx40Zj8ODBxuDBgz1Ydct3/FNjhsEYu0p+fr7Rpk0b4/HHHzeKioqMt99+2zjrrLOMt956y9FnwYIFRmBgoPHhhx8a//d//2dcc801Rq9evYyDBw96sPKWJTU11ejatavxySefGMXFxcYHH3xghISEGA888ICjD+PcePv27TMKCgqMgoICQ5Lx7LPPGgUFBY4nlRoypldeeaURHx9vbNiwwVi3bp0RHR1tjB8/3lNfyWudaqwPHz5sjB492ujWrZtRWFjo9NtYW1vrOIa7xpog1MwknfDzxhtvOPocPHjQuOuuu4ygoCDjrLPOMq699lpj9+7dniu6FfhzEGKMXefjjz82+vXrZ/j5+Rm9e/c2XnnlFaf9drvdmDNnjhEWFmb4+fkZl19+ubF161YPVdsy2Ww249577zW6d+9utGvXzjj77LONhx56yOlHgnFuvNWrV5/w38epqamGYTRsTCsqKozx48cbHTt2NPz9/Y1JkyYZ+/bt88C38W6nGuvi4uKT/jauXr3acQx3jbXFMI5bqhQAAMBEmCMEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEoJ6hQ4dq2rRprf7cfz6XO85dUVGh0NBQ/fbbb816Hkn661//qoULFzb7eYCWrI2nCwAAb/HBBx+obdu2zXqOxx9/XNdcc4169uzZrOeRpNmzZ+svf/mLbrvtNgUEBDT7+YCWiCtCAFq0w4cPu+xYnTt3VqdOnVx2vD87cOCAXnvtNd16663Ndo7j9evXT+ecc47eeustt5wPaIkIQgBO6OjRo7rnnnsUEBCgkJAQzZkzR4ZhSJLsdrsyMjLUq1cvtW/fXrGxsXr//fed/n7o0KGaOnWqHnjgAXXu3Fnh4eF65JFHnPrU1NRowoQJ6tixoyIiIhp0G2fo0KG65557NG3aNIWEhCg5OVmStGLFCl188cUKDAxUcHCwrr76av3yyy+NOtefb4317NlTmZmZTn3i4uKcvsf777+vmJgYtW/fXsHBwRo+fLhqampOWPunn34qPz8/DRo0yKl93bp1atu2rQ4dOuRo++2332SxWLR9+3YNHTpUU6ZM0bRp0xQUFKSwsDC9+uqrqqmp0aRJk9SpUyede+65+uyzz+qdMyUlRe+8885JxxMwO4IQgBP6r//6L7Vp00b5+fn6+9//rmeffVaLFy+WJGVkZOjNN99UVlaWvv/+e02fPl033XST1qxZU+8YHTp00IYNG/TUU0/pscce06pVqxz7Z8yYoTVr1ujDDz/UypUr9eWXX2rz5s0Nqs3X11dfffWVsrKyJP0RdNLS0rRx40bl5OTIx8dH1157rex2+xmd61R2796t8ePH65ZbbtGPP/6oL7/8UmPHjnUExj9bu3atEhIS6rUXFhaqT58+ateunaOtoKBAQUFB6tGjh+M7h4SEKD8/X1OmTNGdd96p66+/XhdddJE2b96sESNG6Oabb9aBAwecjj1w4EDl5+ertrb2jL4r0GoZAPAnl156qdGnTx/Dbrc72mbOnGn06dPHOHTokHHWWWcZX3/9tdPf3Hrrrcb48eOdjnHxxRc79RkwYIAxc+ZMwzAMY9++fYavr6/x7rvvOvZXVFQY7du3N+69995T1hYfH3/a77Bnzx5DkvHdd981+FyXXnqp03aPHj2M5557zum4sbGxxsMPP2wYhmFs2rTJkGT89ttvp63HMAzjmmuuMW655ZZ67bfddpsxYcIEp7a5c+caQ4cOddR1/FgePXrU6NChg3HzzTc72nbv3m1IMvLy8pyO8+233zaqRsBsuCIE4IQGDRoki8Xi2B48eLCKioq0bds2HThwQFdccYU6duzo+Lz55ptOt6IkqX///k7bERERKi8vlyT98ssvOnz4sJKSkhz7O3furPPPP/+0tZ3oqkpRUZHGjx+vs88+W/7+/o7JyDt27Dijc51KbGysLr/8csXExOj666/Xq6++qr179560/8GDB52u+hxTWFiouLg4p7aCggKntuPH0mq1Kjg4WDExMY62sLAwSXKM7zHt27eXpHpXigD8gafGADTK/v37JUnLly9X165dnfb5+fk5bf/5CSyLxeK4VXUmOnToUK8tJSVFPXr00KuvvqrIyEjZ7Xb169fvjCZT+/j41LvNdeTIEcc/W61WrVq1Sl9//bVWrlypF154QQ899JA2bNigXr161TteSEhIvaBUV1enLVu2KD4+3ql98+bNuu666xzbJxrL49uOhdY/j29lZaUkqUuXLqf9voAZcUUIwAlt2LDBaXv9+vWKjo5W37595efnpx07dujcc891+kRFRTX4+Oecc47atm3rdJ69e/fq559/bnStFRUV2rp1q2bPnq3LL79cffr0cQocTT1Xly5dtHv3bse2zWZTcXGxUx+LxaIhQ4bo0UcfVUFBgXx9fbV06dITHi8+Pl4//PCDU9vWrVt16NAhRUZGOtry8vK0c+fOeleJmmLLli3q1q2bQkJCzvhYQGvEFSEAJ7Rjxw6lpaVp8uTJ2rx5s1544QUtXLhQnTp10v3336/p06fLbrfr4osvVnV1tb766iv5+/srNTW1Qcfv2LGjbr31Vs2YMUPBwcEKDQ3VQw89JB+fxv/3WVBQkIKDg/XKK68oIiJCO3bs0KxZs874XJdddpmWLFmilJQUBQYGau7cubJarY79GzZsUE5OjkaMGKHQ0FBt2LBBe/bsUZ8+fU54vOTkZKWnp2vv3r0KCgqS9MdtMUl64YUXNHXqVG3btk1Tp06V5JqlAdauXasRI0ac8XGA1oogBOCEJkyYoIMHD2rgwIGyWq269957dccdd0iS5s2bpy5duigjI0O//vqrAgMDdeGFF+rBBx9s1Dmefvpp7d+/XykpKerUqZPuu+8+VVdXN7pWHx8fvfPOO5o6dar69eun888/X88//7yGDh16RudKT09XcXGxrr76agUEBGjevHlOV4T8/f2Vm5urzMxM2Ww29ejRQwsXLtTIkSNPeLyYmBhdeOGFevfddzV58mRJfwSh5ORk/frrr4qJiVHfvn316KOP6s4779Tzzz+v//7v/270eBxz6NAhLVu2TCtWrGjyMYDWzmL8+QY4AKDZLF++XDNmzNCWLVvk4+Oj5ORkDRgwQPPnz3f5uV566SUtXbpUK1eudPmxgdaCOUIA4EajRo3SHXfcoZ07d0qSvv32W6env1ypbdu2euGFF5rl2EBrwRUhAPCQ0tJSRURE6Pvvv1ffvn09XQ5gSgQhAABgWtwaAwAApkUQAgAApkUQAgAApkUQAgAApkUQAgAApkUQAgAApkUQAgAApkUQAgAApkUQAgAApkUQAgAApvX/euWDGbFSOWoAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "ax.plot(radius, loss_50, \"o\")\n",
    "ax.set_yscale(\"log\")\n",
    "ax.set_xlabel(\"bend radius ($\\\\mu$m)\")\n",
    "ax.set_ylabel(\"Loss (dB/cm)\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Next, we will analyze the deviation between the two resolutions:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "ax.plot(\n",
    "    radius,\n",
    "    100 * np.sqrt((np.array(loss_50) - np.array(loss_10)) ** 2) / np.array(loss_50),\n",
    "    \"-o\",\n",
    ")\n",
    "\n",
    "ax.set_xlabel(\"bend radius ($\\\\mu$ m)\")\n",
    "ax.set_ylabel(\"error (%)\")\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It can be noted that the error for the lower resolution can reach up to 43% for low losses.\n",
    "\n",
    "To analyze the convergence, we will plot the loss as a function of resolution for a fixed bend radius of 120 μm."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "6fcbe61540854d6582f74abeb17b3c29",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:32:05 CET </span>Started working on Batch containing <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">6</span> tasks.                       \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:32:05 CET\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch containing \u001b[1;36m6\u001b[0m tasks.                       \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:32:17 CET </span>Maximum FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.791</span> for the whole batch.                \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:32:17 CET\u001b[0m\u001b[2;36m \u001b[0mMaximum FlexCredit cost: \u001b[1;36m0.791\u001b[0m for the whole batch.                \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Use <span style=\"color: #008000; text-decoration-color: #008000\">'Batch.real_cost()'</span> to get the billed FlexCredit cost after    \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>completion.                                                        \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mUse \u001b[32m'Batch.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed FlexCredit cost after    \n",
       "\u001b[2;36m             \u001b[0mcompletion.                                                        \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a095e52ca83445858fc2fecf0cee8ae2",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:44:24 CET </span>Batch complete.                                                    \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:44:24 CET\u001b[0m\u001b[2;36m \u001b[0mBatch complete.                                                    \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "loss = []\n",
    "\n",
    "resolution = np.linspace(20, 100, 6)\n",
    "mode_solvers = {}\n",
    "for r in resolution:\n",
    "    mode_solver = mode_solver_SiN_wvg(\n",
    "        bend_radius=120,\n",
    "        npml=12,\n",
    "        bend_axis=1,\n",
    "        resolution=r,\n",
    "        nun_modes=10,\n",
    "        size=(20, 15),\n",
    "    )\n",
    "\n",
    "    mode_solvers[str(r)] = mode_solver\n",
    "\n",
    "batch_data = web.Batch(\n",
    "    simulations=mode_solvers,\n",
    "    folder_name=\"radiative_losses\",\n",
    ").run(path_dir=\"radiative_losses\")\n",
    "\n",
    "for mode_data in batch_data.values():\n",
    "    idx = findMode(mode_data, 0.4)\n",
    "    loss.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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fRUREeFaVqxY4WqTlZVVaixNVFSUNm7cqF27dum2227T448/rokTJ2ry5Mme6AIAADc1Xx9fzRwxSZKuCDgl6zMeSKjW+W5qzIDi6lKRAUkAAKB8yprnJrJeuGY8kOCWeW4q8v1NuAEAAG5RlTMUe92vpQAAgPfz9fG9oZ97u0uNmcQPAADAHQg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVDwabpKSktSzZ08FBQXJarUqLi5OmZmZ1zxmyZIlslgspZaAgIBqqhgAANR0Hg03aWlpstls2r59u5KTk1VcXKwBAwbowoUL1zwuODhYOTk5ruXkyZPVVDEAAKjpannywzds2FBqfcmSJbJardqzZ4/69Olz1eMsFosaNWpU1eUBAAAvVKPG3BQUFEiS6tevf812hYWFatasmaKionTffffp66+/ro7yAACAF6gx4cbpdCohIUGxsbHq1KnTVdu1a9dOixYt0po1a7R06VI5nU7dcccd+s9//lNm+6KiItnt9lILAAAwL4thGIani5CkRx99VOvXr9eWLVvUpEmTch9XXFysDh06aOTIkZoxY8YV+6dNm6bp06dfsb2goEDBwcE3VDMAAKgedrtdISEh5fr+rhF3buLj47V27VqlpKRUKNhIUu3atRUdHa0jR46UuT8xMVEFBQWuJTs72x0lAwCAGsqjA4oNw9CECRO0atUqpaamqkWLFhU+h8Ph0P79+zV48OAy9/v7+8vf3/9GSwUAAF7Co+HGZrNp2bJlWrNmjYKCgpSbmytJCgkJUWBgoCRp9OjRaty4sZKSkiRJf/3rX9W7d2+1bt1a+fn5+tvf/qaTJ09q/PjxHusHAACoOTwabhYsWCBJ6tu3b6ntixcv1tixYyVJWVlZ8vH5v6dn586d0x/+8Afl5uaqXr166t69u7744gt17NixusoGAAA1WI0ZUFxdKjIgCQAA1AxeN6AYAADAXQg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVAg3AADAVDwabpKSktSzZ08FBQXJarUqLi5OmZmZ5T5++fLlslgsiouLq7oiAQCAV/FouElLS5PNZtP27duVnJys4uJiDRgwQBcuXLjusSdOnNBTTz2lO++8sxoqBQAA3qKWJz98w4YNpdaXLFkiq9WqPXv2qE+fPlc9zuFwaNSoUZo+fbo+//xz5efnV3GlAADAW9SoMTcFBQWSpPr161+z3V//+ldZrVb9/ve/v+45i4qKZLfbSy0AAMC8aky4cTqdSkhIUGxsrDp16nTVdlu2bNEbb7yhhQsXluu8SUlJCgkJcS1RUVHuKhkAANRANSbc2Gw2ZWRkaPny5Vdtc/78eT344INauHChGjRoUK7zJiYmqqCgwLVkZ2e7q2QAAFADeXTMTYn4+HitXbtWmzdvVpMmTa7a7ujRozpx4oSGDh3q2uZ0OiVJtWrVUmZmplq1alXqGH9/f/n7+1dN4QAAoMbxaLgxDEMTJkzQqlWrlJqaqhYtWlyzffv27bV///5S25555hmdP39e8+bN45ETAADwbLix2WxatmyZ1qxZo6CgIOXm5kqSQkJCFBgYKEkaPXq0GjdurKSkJAUEBFwxHic0NFSSrjlOBwAA3Dw8Gm4WLFggSerbt2+p7YsXL9bYsWMlSVlZWfLxqTFDgwAAQA1nMQzD8HQR1clutyskJEQFBQUKDg72dDkAAKAcKvL9zS0RAABgKoQbAABgKoQbAABgKoQbAABgKoQbAABgKoQbAABgKoQbAABgKoQbAABgKjXixZkAAFQlh9Oh7YfTlWf/VtbgMPVu01W+Pr6eLgtVhHADADC1dXtT9MyKl5WTn+faFhFq1cwRkzQkup8HK0NV4bEUAMC01u1N0fhXE0sFG0nKzc/T+FcTtW5viocqQ1Ui3AAATMnhdOiZFS+rrBcolmx79t2/y+F0VGdZqAaEGwCAKW0/nH7FHZsfMyR9c+60th9Or7aaUD0INwAAU8qzf+vWdvAehBsAgClZg8Pc2g7eg3ADADCl3m26KiLUKstV9lskRdYLV+82XauxKlQHwg0AwJR8fXw1c8QkSboi4JSsz3gggfluTIhwAwAwrSHR/fT6I0lqFGottT2iXrhefySJeW5MymIYRlm/kjMtu92ukJAQFRQUKDg42NPlAACqATMUe7+KfH8zQzEAwPR8fXwV2667p8tANSHcAICHcDcBqBqEGwDwAN53BFQdBhQDQDXjfUdA1SLcAEA14n1HQNUj3ABANeJ9R0DVq/CYm4MHD2r58uX6/PPPdfLkSV28eFENGzZUdHS0Bg4cqOHDh8vf378qagUAr8f7joCqV+47N19++aX69++v6OhobdmyRb169VJCQoJmzJih3/3udzIMQ1OnTlVkZKTmzJmjoqKiqqwbALwS7zsCql6579wMHz5cTz/9tFauXKnQ0NCrttu2bZvmzZunuXPnasqUKe6oEQBMo+R9R7n5eWWOu7Hoh9lzed8RUHnlnqG4uLhYtWvXLveJK9q+ujBDMQBPK/m1lKRSAafkfUe8FgC4UkW+v8v9WKqiQaUmBhsAqAl43xFQtSr9bqldu3YpJSVFeXl5cjqdpfa99NJLbimuKnDnBkBNwQzFQPlV+bulZs2apWeeeUbt2rVTeHi4LJb/e5n8j/8MALg63ncEVI1KhZt58+Zp0aJFGjt2rJvLAQAAuDGVmsTPx8dHsbGx7q4FAADghlUq3EyaNEnz5893dy0AAAA3rFKPpZ566ikNGTJErVq1UseOHa/4ZdQHH3zgluIAAAAqqlLh5vHHH1dKSor69eunsLAwBhEDAIAao1Lh5s0339T777+vIUOGuLseAACAG1KpMTf169dXq1atbvjDk5KS1LNnTwUFBclqtSouLk6ZmZnXPOaDDz5Qjx49FBoaqjp16qhr1656++23b7gWAABgDpUKN9OmTdNzzz2nixcv3tCHp6WlyWazafv27UpOTlZxcbEGDBigCxcuXPWY+vXra+rUqdq2bZu++uorPfTQQ3rooYe0cePGG6oFAACYQ6VmKI6OjtbRo0dlGIaaN29+xYDiL7/8slLFnDlzRlarVWlpaerTp0+5j+vWrZuGDBmiGTNmXLctMxQDAOB9qnyG4ri4uMocdl0FBQWSfrg7Ux6GYeizzz5TZmam5syZU2aboqIiFRUVudbtdvuNFwoAAGqsSr9byt2cTqeGDRum/Px8bdmy5ZptCwoK1LhxYxUVFcnX11f/+7//q3HjxpXZdtq0aZo+fXqZ5+DODQAA3qEid24qFW527dolp9OpXr16ldq+Y8cO+fr6qkePHhU9pR599FGtX79eW7ZsUZMmTa7Z1ul06tixYyosLNSmTZs0Y8YMrV69Wn379r2ibVl3bqKiogg3AAB4kYqEm0oNKLbZbMrOzr5i+6lTp2Sz2Sp8vvj4eK1du1YpKSnXDTbSD69/aN26tbp27aonn3xSv/71r5WUlFRmW39/fwUHB5daAFybw+nQ1sw9WrXrE23N3COH0+HpkgCg3Co15ubAgQPq1q3bFdujo6N14MCBcp/HMAxNmDBBq1atUmpqqlq0aFGZcuR0OkvdnQFQeev2puiZFS8rJz/PtS0i1KqZIyZpSHQ/D1YGAOVTqTs3/v7+On369BXbc3JyVKtW+fOSzWbT0qVLtWzZMgUFBSk3N1e5ubm6dOmSq83o0aOVmJjoWk9KSlJycrKOHTumgwcPau7cuXr77bf1u9/9rjJdAfAj6/amaPyriaWCjSTl5udp/KuJWrc3xUOVAUD5VSrcDBgwQImJia5fN0lSfn6+pkyZonvuuafc51mwYIEKCgrUt29fRUREuJYVK1a42mRlZSknJ8e1fuHCBT322GO69dZbFRsbq/fff19Lly7V+PHjK9MVAP+fw+nQMyteVlmD8Eq2Pfvu33lEBaDGq9SA4lOnTqlPnz769ttvFR0dLUlKT09XeHi4kpOTFRUV5fZC3YV5boCybc3co+EvX3/M3PuT5iu2XfdqqAgA/k+Vz3PTuHFjffXVV/rXv/6lffv2KTAwUA899JBGjhx5xYR+ALxDnv1bt7YDAE+pULj5y1/+ovvuu0/du3dXnTp19PDDD1dVXQCqmTU4zK3tAMBTKjTm5j//+Y8GDRqkJk2auOaluXz5clXVBqAa9W7TVRGhVlmust8iKbJeuHq36VqNVQFAxVUo3CxatEi5ubl65513FBQUpISEBDVo0EDDhw/XW2+9pbNnz1ZVnQCqmK+Pr2aOmCRJVwSckvUZDyTI18e3WusCgIq64dcvHDx4UB999JHWrFmjPXv26Pbbb9ewYcM0cuRINW7c2F11ug0DioFrK2uem8h64ZrxQALz3ADwmCp//cLV5OXl6aOPPtKHH36oO++8U0899ZS7Tu02hBvg+hxOh7YfTlee/VtZg8PUu01X7tgA8CiPhRtvQLgBAMD7VOm7pVJSUjR37lxt3bpVkvTqq6+qadOmatiwof7whz+Uml0YAACgulXop+ALFy7Uo48+qhYtWmjq1Kl67rnn9Pzzz+vBBx+Uj4+Pli5dqrCwMM2ePbuq6gUAALimCj2W6tSpkx555BFNmDBBGzZs0NChQ/X6669rzJgxkqT33ntPiYmJOnLkSJUVfKN4LAUAgPepssdSx44d07BhwyRJ9957rywWi26//XbX/l69eik7O7sSJQMAALhHhcLNd999p8DAQNe6v7+//P39S61///337qsOAACggio05sZisej8+fMKCAiQYRiyWCwqLCyU3W6XJNd/AQAAPKVC4cYwDLVt27bUeslbwUvWLZarTd4OAABQ9SoUblJSUqqqDgAAALeoULi56667qqoOAAAAtyh3uKnIeBp+Yg0AADyl3OEmNDS03ONpHA5HpQsCAAC4EeUONz8eb3PixAlNnjxZY8eOVUxMjCRp27ZtevPNN5WUlOT+KgEAAMqpUi/OvPvuuzV+/HiNHDmy1PZly5bptddeU2pqqrvqcztmKAYAwPtU6YszpR/u0vTo0eOK7T169NDOnTsrc0oAAAC3qFS4iYqK0sKFC6/Y/vrrrysqKuqGiwIAAKisCv0UvMTLL7+s4cOHa/369erVq5ckaefOnTp8+LDef/99txYIAABQEZW6czN48GAdPnxYw4YN09mzZ3X27FkNHTpUhw4d0uDBg91dIwAAQLlVakCxN2NAMQAA3qdKBhRnZWVVqIhTp05VqD0AAIA7lDvc9OzZU4888oh27dp11TYFBQVauHChOnXqxNgbAADgEeUeUHzgwAE9//zzuueeexQQEKDu3bsrMjJSAQEBOnfunA4cOKCvv/5a3bp10wsvvMDYGwAA4BEVHnNz6dIlrVu3Tlu2bNHJkyd16dIlNWjQQNHR0Ro4cKA6depUVbW6BWNuAADwPhX5/mZAMQAAqPGqfIZiAACAmopwAwAATIVwAwAATIVwAwAATIVwAwAATKVS4ebNN9/UunXrXOt/+tOfFBoaqjvuuEMnT550W3EAAAAVValwM2vWLAUGBkqStm3bpvnz5+uFF15QgwYNNGnSJLcWCAAAUBGVCjfZ2dlq3bq1JGn16tUaPny4Hn74YSUlJenzzz8v93mSkpLUs2dPBQUFyWq1Ki4uTpmZmdc8ZuHChbrzzjtVr1491atXT/3799fOnTsr0w0AAGBClQo3devW1bfffitJ+uSTT3TPPfdIkgICAnTp0qVynyctLU02m03bt29XcnKyiouLNWDAAF24cOGqx6SmpmrkyJFKSUnRtm3bFBUVpQEDBvCiTgAAIKmSMxSPGjVK//73vxUdHa133nlHWVlZCgsL04cffqgpU6YoIyOjUsWcOXNGVqtVaWlp6tOnT7mOcTgcqlevnl555RWNHj36uu2ZoRgAAO9T5TMUz58/XzExMTpz5ozef/99hYWFSZL27NmjkSNHVuaUkn54q7gk1a9fv9zHXLx4UcXFxRU6BgAAmFeNebeU0+nUsGHDlJ+fry1btpT7uMcee0wbN27U119/rYCAgCv2FxUVqaioyLVut9sVFRXFnRsAALxIld+52bBhQ6kAMn/+fHXt2lW//e1vde7cucqcUjabTRkZGVq+fHm5j5k9e7aWL1+uVatWlRlspB8GLYeEhLiWqKioStUHAAC8Q6XCzdNPPy273S5J2r9/v5588kkNHjxYx48f1xNPPFHh88XHx2vt2rVKSUlRkyZNynXMiy++qNmzZ+uTTz7RbbfddtV2iYmJKigocC3Z2dkVrg81h8Pp0NbMPVq16xNtzdwjh9Ph6ZIAADVMrcocdPz4cXXs2FGS9P777+sXv/iFZs2apS+//FKDBw8u93kMw9CECRO0atUqpaamqkWLFuU67oUXXtDzzz+vjRs3qkePHtds6+/vL39//3LXhJpr3d4UPbPiZeXk57m2RYRaNXPEJA2J7ufBygAANUml7tz4+fnp4sWLkqRPP/1UAwYMkPTDQOCSOzrlYbPZtHTpUi1btkxBQUHKzc1Vbm5uqZ+Tjx49WomJia71OXPm6Nlnn9WiRYvUvHlz1zGFhYWV6Qq8xLq9KRr/amKpYCNJufl5Gv9qotbtTfFQZQCAmqZS4eZnP/uZnnjiCc2YMUM7d+7UkCFDJEmHDh0q92MlSVqwYIEKCgrUt29fRUREuJYVK1a42mRlZSknJ6fUMZcvX9avf/3rUse8+OKLlekKvIDD6dAzK15WWSPfS7Y9++7feUQFAJBUycdSr7zyih577DGtXLlSCxYsUOPGjSVJ69ev17333lvu85Tnh1qpqaml1k+cOFGRUmEC2w+nX3HH5scMSd+cO63th9MV26579RUGAKiRKhVumjZtqrVr116x/eWXX77hgoCfyrN/69Z2AABzq1S4kX6YGXj16tU6ePCgJOnWW2/VsGHD5Ovr67biAEmyBoe5tR0AwNwqFW6OHDmiwYMH69SpU2rXrp2kH+aTiYqK0rp169SqVSu3FombW+82XRURalVufl6Z424skiLqhat3m67VXBkAoCaq1IDixx9/XK1atVJ2dra+/PJLffnll8rKylKLFi30+OOPu7tG3OR8fXw1c8QkST8EmR8rWZ/xQIJ8fbhrCACo5OsX6tSpo+3bt6tz586ltu/bt0+xsbE1+mfZvDjTe5U1z01kvXDNeCCBeW4AwOQq8v1dqcdS/v7+On/+/BXbCwsL5efnV5lTAtc1JLqf7u3SR9sPpyvP/q2swWHq3aYrd2wAAKVUKtz84he/0MMPP6w33nhDt99+uyRpx44d+uMf/6hhw4a5tUDgx3x9fPm5NwDgmio15uYf//iHWrVqpZiYGAUEBCggIECxsbFq3bq15s2b5+4aAQAAyq1Sd25CQ0O1Zs0aHT58WP/+978lSR06dFDr1q3dWhwAAEBFVXqeG0lq06aN2rRp465aAAAAbli5w80TTzxR7pO+9NJLlSoGAADgRpU73Ozdu7dc7SyWn85EAgAAUH3KHW5SUlKqsg4AAAC3qNSvpQAAAGoqwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVwg0AADAVj4abpKQk9ezZU0FBQbJarYqLi1NmZuY1j/n66681fPhwNW/eXBaLRX//+9+rp1gAAOAVPBpu0tLSZLPZtH37diUnJ6u4uFgDBgzQhQsXrnrMxYsX1bJlS82ePVuNGjWqxmoBAIA3qOXJD9+wYUOp9SVLlshqtWrPnj3q06dPmcf07NlTPXv2lCRNnjy5ymsEAADexaPh5qcKCgokSfXr13fbOYuKilRUVORat9vtbjs3AACoeWrMgGKn06mEhATFxsaqU6dObjtvUlKSQkJCXEtUVJTbzg0AAGqeGhNubDabMjIytHz5creeNzExUQUFBa4lOzvbrecHAAA1S414LBUfH6+1a9dq8+bNatKkiVvP7e/vL39/f7eeEwAA1FweDTeGYWjChAlatWqVUlNT1aJFC0+WAwAATMCj4cZms2nZsmVas2aNgoKClJubK0kKCQlRYGCgJGn06NFq3LixkpKSJEmXL1/WgQMHXH8+deqU0tPTVbduXbVu3dozHQEAADWGxTAMw2MfbrGUuX3x4sUaO3asJKlv375q3ry5lixZIkk6ceJEmXd47rrrLqWmpl73M+12u0JCQlRQUKDg4ODKlg4AAKpRRb6/Pf5Y6np+GliaN29eruMAAMDNqcb8WgoAAMAdCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUCDcAAMBUPBpukpKS1LNnTwUFBclqtSouLk6ZmZnXPe69995T+/btFRAQoM6dO+vjjz+uhmoBAIA38Gi4SUtLk81m0/bt25WcnKzi4mINGDBAFy5cuOoxX3zxhUaOHKnf//732rt3r+Li4hQXF6eMjIxqrBwAANRUFsMwDE8XUeLMmTOyWq1KS0tTnz59ymwzYsQIXbhwQWvXrnVt6927t7p27ap//vOf1/0Mu92ukJAQFRQUKDg42G21AwCAqlOR7+8aNeamoKBAklS/fv2rttm2bZv69+9fatvAgQO1bdu2Kq0NAAB4h1qeLqCE0+lUQkKCYmNj1alTp6u2y83NVXh4eKlt4eHhys3NLbN9UVGRioqKXOt2u909BQMAgBqpxty5sdlsysjI0PLly9163qSkJIWEhLiWqKgot54fAADULDUi3MTHx2vt2rVKSUlRkyZNrtm2UaNGOn36dKltp0+fVqNGjcpsn5iYqIKCAteSnZ3ttroBAEDN49FwYxiG4uPjtWrVKn322Wdq0aLFdY+JiYnRpk2bSm1LTk5WTExMme39/f0VHBxcagEAAObl0TE3NptNy5Yt05o1axQUFOQaNxMSEqLAwEBJ0ujRo9W4cWMlJSVJkiZOnKi77rpLc+fO1ZAhQ7R8+XLt3r1br732msf6AQAAag6P3rlZsGCBCgoK1LdvX0VERLiWFStWuNpkZWUpJyfHtX7HHXdo2bJleu2119SlSxetXLlSq1evvuYgZAAAcPOoUfPcVAfmuQEAwPt47Tw3AAAAN4pwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATIVwAwAATKWWpwswC4fToe2H05Vn/1bW4DD1btNVvj6+ni4LAICbDuHGDdbtTdEzK15WTn6ea1tEqFUzR0zSkOh+HqwMAICbD4+lbtC6vSka/2piqWAjSbn5eRr/aqLW7U3xUGUAANycPBpuNm/erKFDhyoyMlIWi0WrV6++7jHz589Xhw4dFBgYqHbt2umtt96q+kKvwuF06JkVL8soY1/Jtmff/bscTkd1lgUAwE3No+HmwoUL6tKli+bPn1+u9gsWLFBiYqKmTZumr7/+WtOnT5fNZtNHH31UxZWWbfvh9Cvu2PyYIembc6e1/XB6tdUEAMDNzqNjbgYNGqRBgwaVu/3bb7+tRx55RCNGjJAktWzZUrt27dKcOXM0dOjQqirzqvLs37q1HQAAuHFeNaC4qKhIAQEBpbYFBgZq586dKi4uVu3atcs8pqioyLVut9vdVo81OMyt7QAAwI3zqgHFAwcO1Ouvv649e/bIMAzt3r1br7/+uoqLi/Xf//63zGOSkpIUEhLiWqKiotxWT+82XRURapXlKvstkiLrhat3m65u+0wAAHBtXhVunn32WQ0aNEi9e/dW7dq1dd9992nMmDGSJB+fsruSmJiogoIC15Kdne22enx9fDVzxCRJuiLglKzPeCCB+W4AAKhGXhVuAgMDtWjRIl28eFEnTpxQVlaWmjdvrqCgIDVs2LDMY/z9/RUcHFxqcach0f30+iNJahRqLbU9ol64Xn8kiXluAACoZl415qZE7dq11aRJE0nS8uXL9Ytf/OKqd26qw5Dofrq3Sx9mKAYAoAbwaLgpLCzUkSNHXOvHjx9Xenq66tevr6ZNmyoxMVGnTp1yzWVz6NAh7dy5U7169dK5c+f00ksvKSMjQ2+++aanuuDi6+Or2HbdPV0GAAA3PY+Gm927d6tfv/97bPPEE09IksaMGaMlS5YoJydHWVlZrv0Oh0Nz585VZmamateurX79+umLL75Q8+bNq7t0AABQQ1kMwyhrgl3TstvtCgkJUUFBgdvH3wAAgKpRke9vrxpQDAAAcD2EGwAAYCqEGwAAYCqEGwAAYCqEGwAAYCqEGwAAYCqEGwAAYCpe+fqFG1EyrY/dbvdwJQAAoLxKvrfLMz3fTRduzp8/L0mKiorycCUAAKCizp8/r5CQkGu2uelmKHY6nfrmm28UFBQki8Xi1nPb7XZFRUUpOzvblLMfm71/kvn7SP+8n9n7SP+8X1X10TAMnT9/XpGRkdd9WfZNd+fGx8fH9UbxqhIcHGzaf7SS+fsnmb+P9M/7mb2P9M/7VUUfr3fHpgQDigEAgKkQbgAAgKkQbtzI399fzz33nPz9/T1dSpUwe/8k8/eR/nk/s/eR/nm/mtDHm25AMQAAMDfu3AAAAFMh3AAAAFMh3AAAAFMh3FRQUlKSevbsqaCgIFmtVsXFxSkzM7NUm++++042m01hYWGqW7euhg8frtOnT3uo4opbsGCBbrvtNtccBTExMVq/fr1rv7f376dmz54ti8WihIQE1zZv7uO0adNksVhKLe3bt3ft9+a+/dipU6f0u9/9TmFhYQoMDFTnzp21e/du137DMPSXv/xFERERCgwMVP/+/XX48GEPVlx+zZs3v+IaWiwW2Ww2Sd5/DR0Oh5599lm1aNFCgYGBatWqlWbMmFFqWn1vvn4lzp8/r4SEBDVr1kyBgYG64447tGvXLtd+b+rj5s2bNXToUEVGRspisWj16tWl9penL2fPntWoUaMUHBys0NBQ/f73v1dhYWHVFGygQgYOHGgsXrzYyMjIMNLT043BgwcbTZs2NQoLC11t/vjHPxpRUVHGpk2bjN27dxu9e/c27rjjDg9WXTEffvihsW7dOuPQoUNGZmamMWXKFKN27dpGRkaGYRje378f27lzp9G8eXPjtttuMyZOnOja7s19fO6554xbb73VyMnJcS1nzpxx7ffmvpU4e/as0axZM2Ps2LHGjh07jGPHjhkbN240jhw54moze/ZsIyQkxFi9erWxb98+Y9iwYUaLFi2MS5cuebDy8snLyyt1/ZKTkw1JRkpKimEY3n8Nn3/+eSMsLMxYu3atcfz4ceO9994z6tata8ybN8/VxpuvX4kHHnjA6Nixo5GWlmYcPnzYeO6554zg4GDjP//5j2EY3tXHjz/+2Jg6darxwQcfGJKMVatWldpfnr7ce++9RpcuXYzt27cbn3/+udG6dWtj5MiRVVIv4eYG5eXlGZKMtLQ0wzAMIz8/36hdu7bx3nvvudocPHjQkGRs27bNU2XesHr16hmvv/66qfp3/vx5o02bNkZycrJx1113ucKNt/fxueeeM7p06VLmPm/vW4k///nPxs9+9rOr7nc6nUajRo2Mv/3tb65t+fn5hr+/v/HOO+9UR4luNXHiRKNVq1aG0+k0xTUcMmSIMW7cuFLbfvWrXxmjRo0yDMMc1+/ixYuGr6+vsXbt2lLbu3XrZkydOtWr+/jTcFOevhw4cMCQZOzatcvVZv369YbFYjFOnTrl9hp5LHWDCgoKJEn169eXJO3Zs0fFxcXq37+/q0379u3VtGlTbdu2zSM13giHw6Hly5frwoULiomJMVX/bDabhgwZUqovkjmu4eHDhxUZGamWLVtq1KhRysrKkmSOvknShx9+qB49euj++++X1WpVdHS0Fi5c6Np//Phx5ebmlupnSEiIevXq5VX9lKTLly9r6dKlGjdunCwWiymu4R133KFNmzbp0KFDkqR9+/Zpy5YtGjRokCRzXL/vv/9eDodDAQEBpbYHBgZqy5YtpuhjifL0Zdu2bQoNDVWPHj1cbfr37y8fHx/t2LHD7TXddO+Wcien06mEhATFxsaqU6dOkqTc3Fz5+fkpNDS0VNvw8HDl5uZ6oMrK2b9/v2JiYvTdd9+pbt26WrVqlTp27Kj09HRT9G/58uX68ssvSz3/LuHt17BXr15asmSJ2rVrp5ycHE2fPl133nmnMjIyvL5vJY4dO6YFCxboiSee0JQpU7Rr1y49/vjj8vPz05gxY1x9CQ8PL3Wct/VTklavXq38/HyNHTtWkvf/+5SkyZMny263q3379vL19ZXD4dDzzz+vUaNGSZIprl9QUJBiYmI0Y8YMdejQQeHh4XrnnXe0bds2tW7d2hR9LFGevuTm5spqtZbaX6tWLdWvX79K+ku4uQE2m00ZGRnasmWLp0txu3bt2ik9PV0FBQVauXKlxowZo7S0NE+X5RbZ2dmaOHGikpOTr/i/KjMo+b9fSbrtttvUq1cvNWvWTO+++64CAwM9WJn7OJ1O9ejRQ7NmzZIkRUdHKyMjQ//85z81ZswYD1fnXm+88YYGDRqkyMhIT5fiNu+++67+9a9/admyZbr11luVnp6uhIQERUZGmur6vf322xo3bpwaN24sX19fdevWTSNHjtSePXs8XZrp8ViqkuLj47V27VqlpKSUest4o0aNdPnyZeXn55dqf/r0aTVq1Kiaq6w8Pz8/tW7dWt27d1dSUpK6dOmiefPmmaJ/e/bsUV5enrp166ZatWqpVq1aSktL0z/+8Q/VqlVL4eHhXt/HHwsNDVXbtm115MgRU1w/SYqIiFDHjh1LbevQoYPr8VtJX376CyJv6+fJkyf16aefavz48a5tZriGTz/9tCZPnqzf/OY36ty5sx588EFNmjRJSUlJksxz/Vq1aqW0tDQVFhYqOztbO3fuVHFxsVq2bGmaPkrlu16NGjVSXl5eqf3ff/+9zp49WyX9JdxUkGEYio+P16pVq/TZZ5+pRYsWpfZ3795dtWvX1qZNm1zbMjMzlZWVpZiYmOou122cTqeKiopM0b+7775b+/fvV3p6umvp0aOHRo0a5fqzt/fxxwoLC3X06FFFRESY4vpJUmxs7BVTMBw6dEjNmjWTJLVo0UKNGjUq1U+73a4dO3Z4VT8XL14sq9WqIUOGuLaZ4RpevHhRPj6lv358fX3ldDolmef6lahTp44iIiJ07tw5bdy4Uffdd5+p+lievsTExCg/P7/UXavPPvtMTqdTvXr1cn9Rbh+ibHKPPvqoERISYqSmppb6qebFixddbf74xz8aTZs2NT777DNj9+7dRkxMjBETE+PBqitm8uTJRlpamnH8+HHjq6++MiZPnmxYLBbjk08+MQzD+/tXlh//WsowvLuPTz75pJGammocP37c2Lp1q9G/f3+jQYMGRl5enmEY3t23Ejt37jRq1aplPP/888bhw4eNf/3rX8Ytt9xiLF261NVm9uzZRmhoqLFmzRrjq6++Mu67774a+zPbsjgcDqNp06bGn//85yv2efs1HDNmjNG4cWPXT8E/+OADo0GDBsaf/vQnVxtvv36GYRgbNmww1q9fbxw7dsz45JNPjC5duhi9evUyLl++bBiGd/Xx/Pnzxt69e429e/cakoyXXnrJ2Lt3r3Hy5EnDMMrXl3vvvdeIjo42duzYYWzZssVo06YNPwWvKSSVuSxevNjV5tKlS8Zjjz1m1KtXz7jllluMX/7yl0ZOTo7niq6gcePGGc2aNTP8/PyMhg0bGnfffbcr2BiG9/evLD8NN97cxxEjRhgRERGGn5+f0bhxY2PEiBGl5n/x5r792EcffWR06tTJ8Pf3N9q3b2+89tprpfY7nU7j2WefNcLDww1/f3/j7rvvNjIzMz1UbcVt3LjRkFRmzd5+De12uzFx4kSjadOmRkBAgNGyZUtj6tSpRlFRkauNt18/wzCMFStWGC1btjT8/PyMRo0aGTabzcjPz3ft96Y+pqSklPndN2bMGMMwyteXb7/91hg5cqRRt25dIzg42HjooYeM8+fPV0m9vBUcAACYCmNuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAACAqRBuAHitEydOyGKxKD09/YbPZbFYtHr16hs+DwDPI9wAuKlMmzZNXbt2vWJ7Tk6OBg0aVP0FAXC7Wp4uAIB5Xb58WX5+fp4uo1waNWrk6RIAuAl3bgC4Td++fRUfH6+EhAQ1aNBAAwcOVEZGhgYNGqS6desqPDxcDz74oP773/+6jlm5cqU6d+6swMBAhYWFqX///rpw4YIkyel06q9//auaNGkif39/de3aVRs2bLjq5y9ZskShoaGltq1evVoWi8W1f/r06dq3b58sFossFouWLFki6crHUvv379fPf/5zV10PP/ywCgsLXfvHjh2ruLg4vfjii4qIiFBYWJhsNpuKi4tv8G8RwI0i3ABwqzfffFN+fn7aunWrZs+erZ///OeKjo7W7t27tWHDBp0+fVoPPPCApB8eBY0cOVLjxo3TwYMHlZqaql/96lcqeZ/vvHnzNHfuXL344ov66quvNHDgQA0bNkyHDx+uVG0jRozQk08+qVtvvVU5OTnKycnRiBEjrmh34cIFDRw4UPXq1dOuXbv03nvv6dNPP1V8fHypdikpKTp69KhSUlL05ptvasmSJa6wBMBzeCwFwK3atGmjF154QZI0c+ZMRUdHa9asWa79ixYtUlRUlA4dOqTCwkJ9//33+tWvfqVmzZpJkjp37uxq++KLL+rPf/6zfvOb30iS5syZo5SUFP3973/X/PnzK1xbYGCg6tatq1q1al3zMdSyZcv03Xff6a233lKdOnUkSa+88oqGDh2qOXPmKDw8XJJUr149vfLKK/L19VX79u01ZMgQbdq0SX/4wx8qXBsA9+HODQC36t69u+vP+/btU0pKiurWreta2rdvL0k6evSounTporvvvludO3fW/fffr4ULF+rcuXOSJLvdrm+++UaxsbGlzh8bG6uDBw9WaR8OHjyoLl26uIJNyec6nU5lZma6tt16663y9fV1rUdERCgvL69KawNwfdy5AeBWPw4EhYWFrrsdPxURESFfX18lJyfriy++0CeffKL/+Z//0dSpU7Vjxw6FhYVV+LN9fHxcj7RKVOUYmNq1a5dat1gscjqdVfZ5AMqHOzcAqky3bt309ddfq3nz5mrdunWppSQEWSwWxcbGavr06dq7d6/8/Py0atUqBQcHKzIyUlu3bi11zq1bt6pjx45lfl7Dhg11/vx514BkSVfMgePn5yeHw3HNujt06KB9+/aVOs/WrVvl4+Ojdu3aVeSvAIAHEG4AVBmbzaazZ89q5MiR2rVrl44ePaqNGzfqoYceksPh0I4dOzRr1izt3r1bWVlZ+uCDD3TmzBl16NBBkvT0009rzpw5WrFihTIzMzV58mSlp6dr4sSJZX5er169dMstt2jKlCk6evSoli1bdsUA3+bNm+v48eNKT0/Xf//7XxUVFV1xnlGjRikgIEBjxoxRRkaGUlJSNGHCBD344IOu8TYAai7CDYAqU3LnxeFwaMCAAercubMSEhIUGhoqHx8fBQcHa/PmzRo8eLDatm2rZ555RnPnznVNpvf444/riSee0JNPPqnOnTtrw4YN+vDDD9WmTZsyP69+/fpaunSpPv74Y3Xu3FnvvPOOpk2bVqrN8OHDde+996pfv35q2LCh3nnnnSvOc8stt2jjxo06e/asevbsqV//+te6++679corr7j97wiA+1mMnz6gBgAA8GLcuQEAAKZCuAEAAKZCuAEAAKZCuAEAAKZCuAEAAKZCuAEAAKZCuAEAAKZCuAEAAKZCuAEAAKZCuAEAAKZCuAEAAKZCuAEAAKby/wD7Tx33PIMDPgAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "ax.plot(resolution, loss, \"o\")\n",
    "ax.set_xlabel(\"resolution\")\n",
    "ax.set_ylabel(\"loss (dB/cm)\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As we can see, the loss values converge for high resolutions.\n",
    "\n",
    "In conclusion, the general behavior of the losses can be captured with a reasonable resolution. However, if a very precise result is desired, a very high resolution is required."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Losses in a bent optical fiber\n",
    "\n",
    "Finally, we will estimate the bend losses in an optical fiber."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfEAAAHWCAYAAABnm7DzAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAXw1JREFUeJzt3Xl8U2XePv4raZYuSbcEuiCUnSK7gLWK4wiVoo6CII84jCzDgCIwYh91RBHE0WFkFBgUZYZRGB1Rhvk5uCEuKJsUFIRHZROQRZYWkqbN0uUkzf37g28ODd3SkuQk7fV+vfKCnnOfk8/JSXLlrLdKCCFAREREUUetdAFERETUPAxxIiKiKMUQJyIiilIMcSIioijFECciIopSDHEiIqIoxRAnIiKKUgxxIiKiKMUQJyIiilIMcaIotXnzZqhUKmzevFnpUigEvv76a+h0Opw8eTLsz221WpGQkIANGzaE/bmpaRjiRBHulVdewerVq5Uuo1nWrFmDpUuXKl2Gn9deew09e/ZEbGwsunXrhpdeeingaauqqvCHP/wBmZmZiIuLQ05ODj777LM62+7YsQNDhgxBfHw80tPT8fvf/x5OpzPg53ryySdx7733IisrK+BpgsVkMuF3v/sdnnrqqbA/NzWRIKKI1qtXL3HTTTfVGl5dXS0qKipEdXV1+IsK0O233y6ysrKULkO2YsUKAUCMGTNG/P3vfxf33XefACD+/Oc/BzT9uHHjhEajEY888oj429/+JnJzc4VGoxHbtm3za7d3714RGxsrBgwYIF599VXx5JNPCr1eL0aMGBHQ8+zdu1cAEDt27GjyMgbLgQMHBACxadMmxWqgxjHEKSo4nU6lS1BMfSEeDSIpxMvLy4XJZBK333673/Dx48eLhIQEUVJS0uD0u3btEgDEX/7yF3lYRUWF6NKli8jNzfVre+utt4qMjAxRVlYmD1u5cqUAID755JNGa/39738vOnToILxebyCLFjK9e/cW9913n6I1UMMY4hR2p0+fFr/97W9FRkaG0Ol0omPHjuKBBx4QVVVVQgghVq1aJQCIzZs3i+nTp4s2bdqI5ORkefrly5eLq6++Wuh0OpGRkSEefPBBYbPZ/J7jxx9/FKNHjxZpaWlCr9eLdu3aiXvuuUeUlpbKbT799FNxww03iKSkJJGQkCC6d+8u5syZ02j9gUxXWVkp5s2bJ7p06SJ0Op246qqrxKOPPioqKytrze/NN98UgwcPFnFxcSI5OVnceOON8hd9VlaWAOD38AX6l19+KQCIL7/80m9+//73v8U111wjYmNjhclkEuPHjxenT5/2azNx4kSRkJAgTp8+LUaOHCkSEhKE2WwW//u//ys8Hk+jr8H69evFbbfdJq/Dzp07i2eeecZv2ptuuqlW7Q0F+uuvvy4AiNdee81v+HPPPScAiI8++qjRuhry0Ucf1TmfHTt2CADizTffbHD6Rx99VMTExPgFsxBC/OlPfxIAxKlTp4QQQpSVlQmNRiMeffRRv3ZVVVXCYDCIKVOmNFprhw4dxKRJk2oNByDmz59fa3hWVpaYOHGi/LfvM7Rt2zYxa9YsYTabRVJSkpg2bZqoqqoSNptN3HfffSI5OVkkJyeLRx99tM4fDA8//LBITk5W/McE1U8Txj33RDh79iyuvfZalJaWYtq0acjOzsaZM2fwn//8B+Xl5dDpdHLbBx98EG3atMG8efPgcrkAAE8//TQWLFiAvLw8TJ8+HYcPH8arr76Kb775Bl999RW0Wi0kSUJ+fj6qqqowa9YspKen48yZM/jwww9RWlqKpKQk7N+/H7/61a/Qt29fPPPMM9Dr9Th69Ci++uqrBusPZDqv14s777wT27dvx7Rp09CzZ098//33WLJkCX788UesX79ebrtgwQI8/fTTuP766/HMM89Ap9Nh165d+OKLLzB8+HAsXboUs2bNgsFgwJNPPgkASEtLq7e+1atXY/LkyRg8eDAWLlyI4uJi/PWvf8VXX32FvXv3Ijk5WW5bXV2N/Px85OTk4IUXXsDnn3+OF198EV26dMH06dMbfB1Wr14Ng8GAgoICGAwGfPHFF5g3bx7sdjv+8pe/ALh4TLesrAynT5/GkiVLAAAGg6HeeU6ePBnvvvsuCgoKcMstt6B9+/b4/vvvsWDBAkyZMgW33Xab3NZms6G6urrBGgEgPj4e8fHxAIC9e/cCAAYNGuTXZuDAgVCr1di7dy9+85vf1DuvvXv3onv37khMTPQbfu211wIA9u3bJ9fs8XhqPY9Op0P//v3lOupz5swZnDp1Ctdcc02jy9cY3/t/wYIF2LlzJ/7+978jOTkZO3bsQIcOHfCnP/0JGzZswF/+8hf07t0bEyZM8Jt+4MCBWLJkCfbv34/evXtfcT0UAkr/iqDWZcKECUKtVotvvvmm1jjfr33fVsSQIUP8tuzOnz8vdDqdGD58uN9x4JdfflkAEK+//roQ4tLxxHXr1tVbx5IlSwQAceHChSbVH8h0b775plCr1bWOk/qOx3711VdCCCGOHDki1Gq1uOuuu2od16655VPf7vTLt8QlSRJt27YVvXv3FhUVFXK7Dz/8UAAQ8+bNk4dNnDhRABDPPPOM3zwHDBggBg4c2PCLIC7umr7c/fffL+Lj4/32NjR1d/q5c+dEamqquOWWW0RVVZUYMGCA6NChQ62t37r2UNT1qLnVOmPGDBETE1Pn87Zp00aMGzeuwdp69eolhg4dWmv4/v37BQCxYsUKIYQQ69atEwDE1q1ba7UdO3asSE9Pb/B5Pv/8cwFAfPDBB7XGXb5MPvVtiefn5/u9l3Jzc4VKpRIPPPCAPMzj8YirrrqqzveYby/F2rVrG6yZlMOz0ylsvF4v1q9fjzvuuKPWVgoAqFQqv7+nTp2KmJgY+e/PP/8ckiRh9uzZUKvVfu0SExPx0UcfAQCSkpIAAJ988gnKy8vrrMW3Rfree+/B6/UGvAyBTLdu3Tr07NkT2dnZsFgs8mPo0KEAgC+//BIAsH79eni9XsybN89veYDar0Ugdu/ejfPnz+PBBx9EbGysPPz2229Hdna2/PrU9MADD/j9feONN+Knn35q9Lni4uLk/zscDlgsFtx4440oLy/HoUOHmly7T3p6OpYvX47PPvsMN954I/bt24fXX3+91tbvW2+9hc8++6zRR80ty4qKCr89PTXFxsaioqKiwdoqKiqg1+vrnNY3vua/9bVt7HmsVisAICUlpcF2gZgyZYrfeyknJwdCCEyZMkUeFhMTg0GDBtW53n01WCyWK66FQoO70ylsLly4ALvdHvBuuU6dOvn97btetkePHn7DdTodOnfuLI/v1KkTCgoKsHjxYrz11lu48cYbceedd+I3v/mNHPD33HMP/vGPf+B3v/sdHn/8cQwbNgyjR4/G3XffXStQawpkuiNHjuDgwYNo06ZNnfM4f/48AODYsWNQq9W4+uqrA3o9GlPf6wMA2dnZ2L59u9+w2NjYWjWmpKTAZrM1+lz79+/H3Llz8cUXX8But/uNKysra2rpfsaNG4d//etf+OijjzBt2jQMGzasVpsbbrihyfONi4uDJEl1jqusrPT7YVLf9FVVVXVO6xtf89/62jb2PD5CiIDaNaRDhw5+f/ve/+3bt681vK717quhOT8qKTwY4hSxAv2yq8uLL76ISZMm4b333sOnn36K3//+91i4cCF27tyJq666CnFxcdi6dSu+/PJLfPTRR9i4cSPWrl2LoUOH4tNPP/XbA3B5TY1N5/V60adPHyxevLjOeVz+BaqU+paxMaWlpbjpppuQmJiIZ555Bl26dEFsbCy+/fZb/OEPf2jSno26WK1W7N69GwBw4MABeL3eWj+sLly4ENAxcYPBIB+Hz8jIQHV1Nc6fP4+2bdvKbSRJgtVqRWZmZoPzysjIwJkzZ2oNP3fuHADI02dkZPgNv7xtY89jMpkAIKAfUz71BX5967iu4XXNw1eD2WwOuBYKL+5Op7Bp06YNEhMT8cMPPzRret9NLw4fPuw3XJIkHD9+vNZNMfr06YO5c+di69at2LZtG86cOYMVK1bI49VqNYYNG4bFixfjwIEDeO655/DFF1/Iu7vr09h0Xbp0QUlJCYYNG4a8vLxaD9+WcpcuXeD1enHgwIEGny/QraD6Xh/fsGDdNGTz5s2wWq1YvXo1HnroIfzqV79CXl5enbt/m7MFN2PGDDgcDixcuBDbt2+v82YxgwcPRkZGRqOPF154QZ6mf//+ACD/QPDZvXs3vF6vPL4+/fv3x48//lhrz8OuXbv85t+7d29oNJpazyNJEvbt29fo82RnZwMAjh8/Xud4h8NRa5hv706w+Wro2bNnSOZPV44hTmGjVqsxatQofPDBB7W+4IDGdx/m5eVBp9Nh2bJlfm1fe+01lJWV4fbbbwcA2O12eDwev2n79OkDtVot7+IsKSmpNX/fl2tdu0F9Apnuf/7nf3DmzBmsXLmyVtuKigr5TPtRo0ZBrVbjmWeeqbX1WnP5EhISUFpaWm9NPoMGDULbtm2xYsUKv2X4+OOPcfDgQfn1uVK+rbiaNUqShFdeeaVW24SEhCbtXv/Pf/6DtWvX4s9//jMef/xxjBs3DnPnzsWPP/7o1645x8SHDh2K1NRUvPrqq37zevXVVxEfH+/3+lgsFhw6dMjvnIq7774b1dXV+Pvf/y4Pq6qqwqpVq5CTkyPvYUlKSkJeXh7+9a9/+QXum2++CafTibFjxzb4GrRr1w7t27ev8zMCoNZtdj/++GNUVlYGZff75fbs2YOkpCT06tUr6POmIFHqjDpqnU6fPi3S09NFfHy8mD17tvjb3/4mnn76adGrVy/5Wm/fmbV1ncE+f/58AUAMHz5cvPzyy2LWrFkiJiZGDB48WEiSJIQQ4r///a9o166dmD17tnjllVfEsmXLxODBg4VWqxWFhYVCCCEeeughMWDAADF37lyxcuVK8dxzz4l27dqJq666yu9a8ssFMl11dbW47bbbhEqlEuPGjRMvvfSSWLp0qXjggQdEamqq33I99dRTAoC4/vrrxQsvvCBeeuklMWHCBPH444/LbR588EGhUqnEH//4R/H222/Ld9Cq6zpx32uXk5Mjli5dKubMmSPi4+NFx44d/a6l910nXt/r2xCLxSJSUlJEVlaWePHFF8XixYvFgAEDRL9+/WrVs2jRIgFAPPzww2LNmjXi/fffr3e+xcXFwmw2i5tvvlk+o9pisYi0tDSRm5sblDvTLV++XAAQd999t1i5cqWYMGGCACCee+45v3a+1+Hya/DHjh0rXwP+t7/9TVx//fVCo9GILVu2+LXbs2eP0Ov1fndsi42NFcOHDw+ozpkzZ4p27drVuj4bgIiLixO33nqrePXVV8VTTz0lEhMTRVJSkujatatYs2aNEKL+z5BvuS6/uqK+90Pv3r3Fb37zm4BqJmUwxCnsTp48KSZMmCDatGkj9Hq96Ny5s5gxY0atm73UFeJCXLykLDs7W2i1WpGWliamT5/uF1A//fST+O1vfyu6dOkiYmNjRWpqqrj55pvF559/LrfZtGmTGDlypMjMzBQ6nU5kZmaKe++9V/z4448N1h7odJIkieeff1706tVL6PV6kZKSIgYOHCgWLFhQ63Kp119/XQwYMEBud9NNN4nPPvtMHl9UVCRuv/12YTQaA7rZy9q1a+X5paamNnizl8sFEuJCCPHVV1+J6667TsTFxYnMzEzx2GOPiU8++aRWPU6nU/z6178WycnJjd7sZfTo0cJoNIoTJ074DX/vvfcEAPH88883Wlcg/v73v4sePXoInU4nunTpIpYsWVIrLOsL8YqKCvHII4+I9PR0odfrxeDBg8XGjRvrfJ5t27aJ66+/XsTGxoo2bdqIGTNmCLvdHlCN3377rXyzlpoAiIKCAjF27FgRFxcnMjIyxMsvvyxWrFgh4uPjxe9+9zshRHBC/ODBgwKA3+eGIo9KiBDsgyEioisybNgwZGZm4s0335SHqVQqzJ8/H08//XTIn3/27NnYunUr9uzZw7PTIxiPiRMRRaA//elPWLt2rWJdkf7jH//As88+ywCPcLzEjIgoAuXk5NR7XXuomUymJnWbSsrhljgREVGUirgQ37p1K+644w5kZmZCpVL5dRYBAJMmTYJKpfJ7jBgxotH5Ll++HB07dkRsbCxycnLw9ddf+42vrKzEjBkzYDKZYDAYMGbMGBQXFwdz0YiIrogQIizHwyl6RFyIu1wu9OvXD8uXL6+3zYgRI3Du3Dn58fbbbzc4z7Vr16KgoADz58/Ht99+i379+iE/P9/vBgkPP/wwPvjgA6xbtw5btmzB2bNnMXr06KAtFxERUbBF9NnpKpUK//3vfzFq1Ch52KRJk1BaWlprC70hOTk5GDx4MF5++WUAFzviaN++PWbNmoXHH38cZWVlaNOmDdasWYO7774bAHDo0CH07NkThYWFuO6664K5WEREREERlSe2bd68GW3btkVKSgqGDh2KZ599Vr7f8OUkScKePXswZ84ceZharUZeXh4KCwsBXLwrkdvtRl5entwmOzsbHTp0aDDEq6qq/O6M5fV6UVJSApPJxDM6iYhaESEEHA4HMjMzG+xEKdiiLsRHjBiB0aNHo1OnTjh27BieeOIJ3HrrrSgsLKzzpv4WiwXV1dVIS0vzG56WliZ3mVhUVASdTid3M1mzTVFRUb21LFy4EAsWLPAbNn/+/AZvf1hdXV3n+MtrD6Rzh2BTq9V+Pz68Xm9IbuXYEJVK5fcBEEJccYcazcH1cRHXxyVcH5e01vWhUqlqLXvNGhYsWICff/4ZV111VUjrqCnqQnzcuHHy//v06YO+ffuiS5cu2Lx5c51dFobSnDlzUFBQIP9dVlaGf/zjH9BoNNBo/F9acfHueEhOToZWq601L0mS5PssG43Gevs9DiWv1yv3WqTT6WA0GsNeA3CxgwffpTUpKSlh/VXrw/VxCdfHRVwfl7TW9eF2u1FaWiqfVA2g1mWA4X5fRF2IX65z584wm804evRonSFuNpsRExNT60zz4uJipKenAwDS09MhSRJKS0v9tsZrtqmLXq+HXq+vNVyj0dQKaq/XC6/XC4PBUOsN7/tAxMfHA7i4mz7cHwyv1wur1QqdTge9Xi/3kRzuN6TD4YAQAkajEVVVVZAkCSaTKaxfVFwfl3B9XMT1cUlrXh++ZVer1X4dKqnVanmPSLgPpUbc2elNdfr0aVitVrkP38vpdDoMHDgQmzZtkod5vV5s2rQJubm5AICBAwdCq9X6tTl8+DBOnToltwkVSZJgsVig1WphNpthNpuh1WphsVjCdqMH3wfC7XbDbDbDZDIhMTERdru9zm4PQ8XhcMButyMxMREmkwlmsxlutxtWqzVsuwy5Pi7h+riI6+MSro9Lqqqq4PF4oNFoEBcXV2/f7aEWcSHudDqxb98+7Nu3D8DF/mz37duHU6dOwel04tFHH8XOnTtx4sQJbNq0CSNHjkTXrl2Rn58vz2PYsGHymegAUFBQgJUrV+Kf//wnDh48iOnTp8PlcmHy5MkALnYdOGXKFBQUFODLL7/Enj17MHnyZOTm5ob0zPSaHwjfr2m1Wg2TyRS2D8blHwjfr2mj0RjWD0bNLyjfr2mdThfWLyquj0u4Pi7i+riE6+MSSZLkAPftjVUqxCNud/ru3btx8803y3/7jjlPnDgRr776Kr777jv885//RGlpKTIzMzF8+HD88Y9/9NutfezYMVgsFvnve+65BxcuXMC8efNQVFSE/v37Y+PGjX4nuy1ZsgRqtRpjxoxBVVUV8vPz6+wfOVjq+kD4+D4YVqsVFovF780aTPV9IHx8XxZ2u93v72Cr6wvKx/dFZbFYYLVaQ7brkOvjEq6Pi7g+LuH6uMTj8aC6utovwJUU0deJRxu73Y4XX3wRer2+1oltvjMn27RpAwCw2WzQaDRISUmp9xiKEAI2mw0ejwcpKSl1nhDXXE2Zt8vlgtPphMFgQEJCQtBqaMq83W53QK9ZcwQ6b66PS7g+LuH6uKg1rA+73Y6SkhKo1epaAe7xePDkk0+irKwMiYmJQX3ehkTclnhLUNdlH74Qr6ysRHV1NfR6PXQ6nd915nWJi4uDJElwuVzQ6XRB+ZUthIAkSVCr1TAYDKiurm7wEpGYmBgkJCRAkiQIIWr9QGkuj8cDt9uNhIQExMTEyCen1MdgMECSJNjtduh0uqB8UXm9XkiSxPUBrg8fro9LuD4u8a0PtVqNmJiYWt/xSm0PM8SDzOPxIC0trdYvQLfbjYqKCtx+++1ISkpSqDoiImqusrIybNiwAXq9vtbeAJfLpUhNDPEQ0Gg0tY7XuN1ueL1eJCUlITU1VaHKiIjoSvguIb78O76xvRShEnFnp7dEkiTBZrPxVqxERBRUDPEQ853VWdfWORER0ZVgiIdQzcsygn3GKBEREUM8RC6/rpIBTkREwcYT20LA7XbD4XDUeWMEIiKiYGG6BJlKpWKAExFRWDBhgkytVkOj0TDAiYgo5JgyIWAwGBjgREQUckwaIiKiKMUQDwGn0xm2/n2JiKj1YogHmdfrhcfjCUv/vkRE1LoxxINMCAGj0Qi3280gJyKikGKIh4BWq4XZbGaQExFRSDHEQ0Sn0/kFuVJ9zRIRUcvFEA+hmkFus9kY5EREFFQM8RDzBbnH44EkSUqXQ0RELQhDPAx0Oh1SUlK4JU5EREHFEA8TrVbL/sSJiCioGOJhxFuxEhFFN4/Ho3QJfpgqREREAXK73XC5XEqXIWOIExERBUir1cLpdMLhcChdCgCGOBERUcA0Gg0MBgPsdntEBLlG6QKIiIiiSUJCAjQaDex2OwDIt9pWAkOciIioiYxGIwDAbrdDkiQ4nU5F6mCIExERNYPRaIQkSaisrFTsPiA8Jk5ERNQMkiShqqpK0RoY4kRERE0kSRIsFgu0Wi0yMjIQHx+vSB3cnU5ERNQEbrcbZWVl0Gq1MJlMUKvViIuLU6QWhjgREVGAvF4v7HY79Hq9HOBK4u50IiKiAEmSBI1GExEBDjDEiYiIAqZSqZCSkhIRAQ4wxMOKXZESEUU3nU4HlUqldBkyhniYCCEgSZLSZRAR0RWIpAAHGOJh4fV6YbPZuCVORERBxRAPMa/XC6vVCo/HA51Op3Q5RETUgjDEQ8gX4G63O6JOhCAiopaB14mHSM0AN5vNAIDq6mqFqyIiopaEm4YhcHmAczc6ERGFArfEQ8DpdEKlUjHAiYgopLglHmQxMTHweDwMcCIiCjmGeAgYjUYGOBERhRxDPAS0Wq3SJRARUSvAEA+BiooKpUsgIqJWgCEeZEIIlJeXw+FwKF0KERG1cAzxIPN6vYiPj4fdbmeQExFRSPESsxCIi4tDXFwc7HY7gIsnuhEREQUbQzxEfMHtC3K9Xq9kOURE1AIxxEOoZpDHx8cjJiZG4YqIiKglYYiHmC/IS0tLkZCQoHA1RETUkjDEw8BoNMLj8UCSJKVLISKiFiTizk7funUr7rjjDmRmZkKlUmH9+vV+44UQmDdvHjIyMhAXF4e8vDwcOXKk0fkuX74cHTt2RGxsLHJycvD111/7ja+srMSMGTNgMplgMBgwZswYFBcXB225EhISeBMYIiIKqogLcZfLhX79+mH58uV1jl+0aBGWLVuGFStWYNeuXUhISEB+fj4qKyvrnefatWtRUFCA+fPn49tvv0W/fv2Qn5+P8+fPy20efvhhfPDBB1i3bh22bNmCs2fPYvTo0UFdNo2GOz6IiKKZ1+tVugQ/ERfit956K5599lncddddtcYJIbB06VLMnTsXI0eORN++ffHGG2/g7NmztbbYa1q8eDGmTp2KyZMn4+qrr8aKFSsQHx+P119/HQBQVlaG1157DYsXL8bQoUMxcOBArFq1Cjt27MDOnTtDtahERBRlJEmC2+1WugxZxIV4Q44fP46ioiLk5eXJw5KSkpCTk4PCwsI6p5EkCXv27PGbRq1WIy8vT55mz549cLvdfm2ys7PRoUOHeucLAFVVVbDb7X4PIiJquVQqFWw2W8Sc4xRVIV5UVAQASEtL8xuelpYmj7ucxWJBdXV1g9MUFRVBp9MhOTk54PkCwMKFC5GUlCQ/2rdv39RFIiKiKKLT6aDRaGCxWCIiyKMqxCPNnDlzUFZWJj9+/vlnpUsiIqIQUqlUSElJgVar9QtypY6VR1WIp6enA0Cts8aLi4vlcZczm82IiYlpcJr09HRIkoTS0tKA5wtcvAtbYmKi34OIiFo2lUoFk8kkB3lVVRWcTqcitURViHfq1Anp6enYtGmTPMxut2PXrl3Izc2tcxqdToeBAwf6TeP1erFp0yZ5moEDB0Kr1fq1OXz4ME6dOlXvfImIqPVSq9UwmUzyrnWlTnaLuGuenE4njh49Kv99/Phx7Nu3D6mpqejQoQNmz56NZ599Ft26dUOnTp3w1FNPITMzE6NGjZKnGTZsGO666y7MnDkTAFBQUICJEydi0KBBuPbaa7F06VK4XC5MnjwZwMWT46ZMmYKCggKkpqYiMTERs2bNQm5uLq677rqwLj8REVGgIi7Ed+/ejZtvvln+u6CgAAAwceJErF69Go899hhcLhemTZuG0tJSDBkyBBs3bkRsbKw8zbFjx2CxWOS/77nnHly4cAHz5s1DUVER+vfvj40bN/qd7LZkyRKo1WqMGTMGVVVVyM/PxyuvvBKGJSYiomjj9XphtVrh8XhgNpv9MiecVEIIocgzt0B2ux3PP/88srKyanU/KkkSKisrMXbsWKSmpipUIRERNVdJSQnWrVsHvV4Pu90Ot9sNs9kMnU6HsrIyTJ8+HWVlZWE9PyritsSJiIgilRACNpsNXq9XDnDg4jFyJUTViW1ERERKkiRJ3oXuC3AlMcSJiIgCJIRASkpKRAQ4wBAnIiIKmE6ni6geKRniYeTxeJQugYiIroBSx77rE1nVtGAulyuier4hIqLoxxAPA4fDAafTGVG7YIiIKPrxErMQczgcsNvtMBgMiImJUbocIiJqQbglHkK+AE9MTERCQoLS5RARUQvDEA+RmgF++d3biIiIgoG700OgoqICbrebAU5ERCHFLfEgU6vVKC8vZ4ATEVHIMcSDTKVSIT4+ngFOREQhxxAPgbi4OKVLICKiVoAhHgK8qQsREYUDQzwEHA4HJElSugwiImrhGOJBVl1dDY1GA4vFwiAnIqKQYoiHgMFggFarZZATEVFIMcRDQK1Ww2QyMciJiCikGOIhcnmQ82Q3IiIKNoZ4CNUMcpvNBq/Xq3RJRETUgjDEQ8wX5BqNhrvViYgoqBjiYaBWq5GSkgKVSqV0KURE1IIwxMNEpVJBp9MpXQYREV0BIYTSJfhhiIcRt8SJiKKbJEkRFeQMcSIiogAJISLqRGWGOBERUYB0Oh08Hg+sVmtEBDlDnIiIKEC+E5XdbndEBDlDnIiIqAm0Wi3MZrNfkFdUVChSC0OciIioiXQ6nRzk586dQ3l5uSJ1MMSJiIiaQafTQa/XK1oDQ5yIiKgZHA4HKisrERsbq9glxBpFnpWIiCiKORwO2O12JCYmwmg0MsSJiIiigcvlQnl5uRzgwMWT3ZTA3elEREQB8ng8cDqdfgGuJIY4ERFRgNxuNwwGQ0QEOMAQJyIiCphWq0VCQoLSZcgY4mGk9J19iIjoymg0kXUqGUM8TNxuNyRJUroMIiJqQRjiYSBJEmw2G7siJSKioGKIh5gkSbBYLNBoNNDpdEqXQ0RELQhDPIR8Aa7VapGSksItcSIiCiqGeIjUDHCTycQAJyKioIus0+xaCLfbDYfDIQe4Ws3fSkREFHxMlyBTqVQMcCIiCgsmTJCp1WpoNBoGOBERhRxTJgQMBgMDnIiIQo5JQ0REFKUY4iHgdDp5i1UiIgo5hniQeb1eeDweWK1WBjkREYUUQzzIhBAwGo1wu90MciIiCimGeAhotVqYzWYGORERhRRDPER0Op1fkAshlC6JiIhamKgL8aeffhoqlcrvkZ2d3eA069atQ3Z2NmJjY9GnTx9s2LDBb7wQAvPmzUNGRgbi4uKQl5eHI0eOXHGtNYPcZrMxyImIKKiiLsQBoFevXjh37pz82L59e71td+zYgXvvvRdTpkzB3r17MWrUKIwaNQo//PCD3GbRokVYtmwZVqxYgV27diEhIQH5+fmorKy84lp9Qe7xeNifOBERBVVUhrhGo0F6err8MJvN9bb961//ihEjRuDRRx9Fz5498cc//hHXXHMNXn75ZQAXt8KXLl2KuXPnYuTIkejbty/eeOMNnD17FuvXrw9KvTqdDikpKdwSJyKioIrKED9y5AgyMzPRuXNnjB8/HqdOnaq3bWFhIfLy8vyG5efno7CwEABw/PhxFBUV+bVJSkpCTk6O3KY+VVVVsNvtfo/6aLVa9idORERBFXUhnpOTg9WrV2Pjxo149dVXcfz4cdx4441wOBx1ti8qKkJaWprfsLS0NBQVFcnjfcPqa1OfhQsXIikpSX60b9++wfa8FSsRUXTzeDxKl+An6lLl1ltvxdixY9G3b1/k5+djw4YNKC0txb///e+w1zJnzhyUlZXJj59//jnsNRARUfi43W64XC6ly5BFXYhfLjk5Gd27d8fRo0frHJ+eno7i4mK/YcXFxUhPT5fH+4bV16Y+er0eiYmJfg8iImq5tFotnE5nvXt/wy3qQ9zpdOLYsWPIyMioc3xubi42bdrkN+yzzz5Dbm4uAKBTp05IT0/3a2O327Fr1y65DREREXDxxGqDwQC73R4RQR51If7II49gy5YtOHHiBHbs2IG77roLMTExuPfeewEAEyZMwJw5c+T2Dz30EDZu3IgXX3wRhw4dwtNPP43du3dj5syZAACVSoXZs2fj2Wefxfvvv4/vv/8eEyZMQGZmJkaNGqXEIhIRUQRLSEhAYmKiX5C73W5FatEo8qxX4PTp07j33nthtVrRpk0bDBkyBDt37kSbNm0AAKdOnfI7gez666/HmjVrMHfuXDzxxBPo1q0b1q9fj969e8ttHnvsMbhcLkybNg2lpaUYMmQINm7ciNjY2LAvHxERRT6j0Qjg4p5bSZLgdDoVqUMlePFy0Njtdjz//PPIysqSV7CPJEmorKzE2LFjkZqaqlCFRETUXCUlJVi3bh1iY2PlS4atVisqKyvhdrvxxBNPoKysLKznR0Xd7nQiIqJIIEkSqqqqFK2BIU5ERNREkiTBYrFAq9UiIyMD8fHxitQRdcfEiYiIlOR2u1FWVgatVguTyQS1Wo24uDhFamGIExERBcjr9cJut0Ov18sBriTuTieioBBCsJMfavEkSYJGo4mIAAe4JU5Ejaj2elFcVo6zNhfO28thcVSgxFkJe4WE8io3Kt3VkDzV8MW3WqWCXhuDOK0GCbFaJMfrkZKgR5vEeKQnxSMzxYCUBD1UKpWiy0XUHCqVCikpKRER4ABDPKy4lULRQPJU48dzNhwpKsWx4lKcsjrgrvYGPL1XCFRIHlRIHpS4KvGztfZdrQyxWnRqk4SuacnokZmC9iYj1Ax1igI6nS6ifoAyxMNECAFJkpQug6hOzkoJe09cwL6TF/BjkQ2eJoR2857Pje9/tuD7ny0ALoZ6n/ZmDMhqi57tUqGJiYytHKLLRVKAAwzxsPB6vbDZbBGz+4UIuLib/Pufrdjx41nsP22FV8E9Rc5KNwqPnEPhkXOI12kwqHMahvRoh/YmY+MTE7ViDPEQ83q9sFqt8Hg8MBgMSpdDBFeVG9sOncGWg6dRWq7sjSrqUi55sPXQGWw9dAad2iRiWK8O6N+xDWL4I5ioFoZ4CPkC3O12IyUlBdXV1UqXRK2Ys1LCZ9+fwpaDp1HliY734vELdvxj8w9oY4zDiH4dkdM1nWFOVANDPERqBrjZbAYAhjgpQvJU4/MfTuGz70+i0h2d78ELjgq8uf0gPvnuJO4a1AX9stpE3LFJIiUwxEPg8gDX6XQ8qY3CTgiBvSfO4z9fH4HNFXm7zZvjvL0cf/vie3TPSMG467ojI4WHqKh1Y4iHgNPphEqlkgOcKNxsrkqs2XEIP/xsVbqUkPjxnA3Pvfc18vt2xK39OvJsdmq1GOJBFhMTA4/Hg4yMDAY4KeLrY0V4p/AwKiSP0qWEVLVXYMO+4/ju1AVMuqkX2nGrnFoh/nwNAaPRyACnsKtyV2P11v1YtWV/iw/wmk6XOPH8+99g26EzvKEStTrcEg8BrVardAnUylywl2PFpu9w1uZSuhRFuKu9WLPjEH46X4ZfX98DWk2M0iURhQW3xEOgoqJC6RKoFfnxnA3Pf/BNqw3wmnYePYclH38Le0XLOJGPqDEM8SATQqC8vBwOR+37RRMF2zc/FWHZJ3vhqmo9u88bc/yCHYs+2I3zZeVKl0IUcgzxIPN6vYiPj4fdbmeQU0htPXQaqzbvR7WXx4EvZ3VW4oWPduN0HZ2vELUkDPEQiIuLQ2JiIoOcQmbzgZ/x9o7DYHzXz1HpxtKN39bZixpRS8EQDxGj0cggp5DYfvgM1u78UekyooKryoNln+zFuVKeL0AtE0M8hGoGucvFLxG6cvtOnMeaHYeULiOqOCvdeOmTvShxVipdClHQMcRDzBfkTqcTHg9PPqLmO3GhDK9v2Q9eCt10NlcVXvns/1Dp5meQWhaGeBgYjUYYDAa43W6lS6EoVeqqxKuffwd3tVfpUqLWGZsTq7bsV7TfdKJgY4iHSUJCAm8CQ83iqfZi5Zc/wF7BTnSu1HenLNj4fyeULoMoaBjiYaTR8AZ51HTv7TmGn86XKV1Gi/Hhtz/hx3M2pcugKOX1RtbeMIY4UQQ7eKYEn/9wSukyWhQBYNWW/XBV8fAWNZ0kSRF1aJQhThShKiQP3tx+QOkyWqTS8iqs42V61AwqlQo2mw2SFBmHtxjiRBFq/e6jsLl4D/BQ2XWsCPtPt8z+1il0dDodNBoNLBZLRAQ5Q5woAp24UIZth84oXUaL907hYUieaqXLoCiiUqmQkpICrVbrF+RKHStniBNFGK8QWLvzR95SNQwsjgps4jkH1EQqlQomk0kO8qqqKjidTkVqYYgTRZhvj5/HiQt2pctoNT757iQv36MmU6vVMJlM8q51pU52Y4gTRZBqrxfvf3tM6TJalSpPNa8dp6jFECeKIF8fK8YFe4XSZbQ62w6fQVk5TyKkwHm9XlitVng8HpjNZsVu5sUQJ4oQXiHw6XcnlC6jVfJUe7FpP4+NU2CEELBarXC73TCbzdDr9TAYDIrUwhAnihD7f7aiqKxc6TJarW2HzrCDFGqUEAI2m00OcJ1OB+DiMXIlNOk+oF6vF1u2bMG2bdtw8uRJlJeXo02bNhgwYADy8vLQvn37UNVJ1OJtPviz0iW0apXuauw6WoSbel6ldCkUwSRJgsfjQdu2beUAV1JAPx0qKirw7LPPon379rjtttvw8ccfo7S0FDExMTh69Cjmz5+PTp064bbbbsPOnTtDXTNRi2NxVODAmRKly2j1th8+A8FezqgBQgikpKRERIADAW6Jd+/eHbm5uVi5ciVuueWWOg/gnzx5EmvWrMG4cePw5JNPYurUqUEvlqil2nn0nNIlEIDTJU6cLnGivcmodCkUoXQ6XUT1SBlQiH/66afo2bNng22ysrIwZ84cPPLIIzh1iieI1MXj4fE2qk0IgW+OFSldBv0/Xx8rYohTvZQ69l2fgKppLMBr0mq16NKlS7MLaqlcLldE9XxDkeNMiRPneVlZxPj2xHnuUqeo0awOrisrK/Hdd9/h/Pnzte4Xe+eddwalsJbE4XDA6XQiISFB6VIoAv3fqQtKl0A1lDgruUudokaTQ3zjxo2YMGECLBZLrXEqlQrV1exMoCaHwwG73Q6DwYCYmBily6EI9AN70oo4+09bGeIUFZq8c3/WrFkYO3Yszp07B6/X6/dggPvzBXhiYiK3wqlOFZIHJy28T3qkOXiWVwpQdGhyiBcXF6OgoABpaWmhqKfFqBngRiN/0VPdjhaXgodfI8/x82XwVCvTtSRRUzQ5xO+++25s3rw5BKW0HBUVFQxwCshP58uULoHq4K724nSJQ+kyiBrV5GPiL7/8MsaOHYtt27ahT58+ta6X+/3vfx+04qKRWq1GeXk5TCYTA5wadYq70iPWSYsDHdskKV0GUYOaHOJvv/02Pv30U8TGxmLz5s1QqVTyOJVK1epDXKVSIT4+ngFOATld4lS6BKrHaSu3xCnyNTnEn3zySSxYsACPP/54xF30Hini4uKULoGigKvKDXuFpHQZVI9zpS6lSyBqVJNTWJIk3HPPPQzwBvCmLhSI8+yxLKKdt3P9UORrchJPnDgRa9euDUUtLYbD4YAkcQuLGmZ1VipdAjXAUemG5OFlsxTZmrw7vbq6GosWLcInn3yCvn371jqxbfHixUErLhpVV1dDo9HAYrH49TVLdLnS8iqlS6BGlJZXoW1ivNJlENWryVvi33//PQYMGAC1Wo0ffvgBe/fu9XuEy/Lly9GxY0fExsYiJycHX3/9dYPt161bh+zsbMTGxqJPnz7YsGGD33ghBObNm4eMjAzExcUhLy8PR44caVZtBoMBWq0WFouFW+RULwePh0c8riOKdE3eEv/yyy9DUUeTrF27FgUFBVixYgVycnKwdOlS5Ofn4/Dhw2jbtm2t9jt27MC9996LhQsX4le/+hXWrFmDUaNG4dtvv0Xv3r0BAIsWLcKyZcvwz3/+E506dcJTTz2F/Px8HDhwALGxsU2qT61Ww2QywWq1ylvkRJcrr+K5E5GuXGLPgxTZgnZ22smTJzFz5sxgza5BixcvxtSpUzF58mRcffXVWLFiBeLj4/H666/X2f6vf/0rRowYgUcffRQ9e/bEH//4R1xzzTV4+eWXAVzcCl+6dCnmzp2LkSNHom/fvnjjjTdw9uxZrF+/vlk1+oLct0XOk93ocpU83hrxqtxcRxTZmrwlfvPNN/tdG+5z7tw5nDt3Tg7GUJEkCXv27MGcOXPkYWq1Gnl5eSgsLKxzmsLCQhQUFPgNy8/PlwP6+PHjKCoqQl5enjw+KSkJOTk5KCwsxLhx45pVa80tcpvNBoPB0Kz5UMvE23pGPjfXEUW4Jod4//79/f6urq7GTz/9hKNHj2L16tVBKqt+FosF1dXVte7dnpaWhkOHDtU5TVFRUZ3ti4qK5PG+YfW1qUtVVRWqqi6dnGS31777li/Iz58/z+Pj5Id9Vkc+riOKdE0O8SVLltQ5/B//+AdefvlljB8//oqLihYLFy7EggUL/IY98cQTtdqp1WqkpKTUGfLUetW1R4siC9cRRbqgHRMfNmwY9u3bF6zZ1ctsNiMmJgbFxcV+w4uLi5Genl7nNOnp6Q229/3blHkCwJw5c1BWViY/fv7553rbqlQqXm5GfjS8YVLE08QwxMlfpO2dCdq3yBdffIGbb745WLOrl06nw8CBA7Fp0yZ5mNfrxaZNm5Cbm1vnNLm5uX7tAeCzzz6T23fq1Anp6el+bex2O3bt2lXvPAFAr9cjMTHR79EQ/qqnmmK1MUqXQI2I1TR5ZyW1cJIkRVSQN/kdOnr06FrDiouLsWvXLtx8881+4999990rq64eBQUFmDhxIgYNGoRrr70WS5cuhcvlwuTJkwEAEyZMQLt27bBw4UIAwEMPPYSbbroJL774Im6//Xa888472L17N/7+978DuBius2fPxrPPPotu3brJl5hlZmZi1KhRIVkGoni9tvFGpKh4PUOc/AkhYLPZ0LZt24i4/XiT36FJSbW75ktKSkL37t2DUlAg7rnnHly4cAHz5s1DUVER+vfvj40bN8onpp06dcrvxb3++uuxZs0azJ07F0888QS6deuG9evXy9eIA8Bjjz0Gl8uFadOmobS0FEOGDMHGjRubfI04UaAMsQzxSGeM5SEw8qfT6eB0OmG1WmEymRQPcpWIpP0CUc5ut+P5559HVlZWra5IJUlCZWUlxo4di9TUVIUqpEjyzbEivL5lv9JlUAOW3vdL6HnYg/6fkpISrFu3DjExMSgrK4NWq5WD3OFw4P7770dZWVmjh1aDKaCfEMx5ouAzGdllbSQzxGoZ4FQnrVYLs9kMt9sNq9UKr9eLiooKRWoJKMR79eqFd955p9HrnI8cOYLp06fjz3/+c1CKI2rJ2iYyxCMZOz6hhuh0OjnIz507h/JyZbquDeiY+EsvvYQ//OEPePDBB3HLLbdg0KBByMzMRGxsLGw2Gw4cOIDt27dj//79mDlzJqZPnx7quominiFWB0OsFs5K3pI3EqUnJyhdAkU4nU4HvV6PykrluhUOKMSHDRuG3bt3Y/v27Vi7di3eeustnDx5EhUVFTCbzRgwYAAmTJiA8ePHIyUlJdQ1E7UYV6UacehsidJlUB2uSuVtkqlhDocDlZWViI2NhcejTGc5TTo7fciQIRgyZEioaiFqdbLMDPFIlWUO38lJFH0cDgfsdjsSExNhNBoVuw8IL4IkUlCntrUv2STladQqtDcZG29IrZLL5UJ5ebkc4MDFk92UoPyV6kStWNe0ZPA+fpGnU9skaGP49Ui1eTweOJ1OvwBXEt+lRApK0Gu5xReBsjN5Lweqm9vthsFgiIgABxjiRIrr3d6kdAl0mV5XcZ1Q3bRaLRISIufKBYZ4GHm9XqVLoAjUt0MbpUugGpLj9dw7QvXSRFinOE0O8aFDh9bqQxsAbDYbhg4dGpSiWiK3293ozXKodepgMsJk4D36I8WAjm2hZo+DFCWaHOKbN2/Gyy+/jFGjRsHlcsnDJUnCli1bglpcSyFJEmw2G7sipTqpVCoM7lx/v/UUXtd2SVO6BKKANWt3+ueff46ioiJcd911OHHiRJBLalkkSYLFYoFGo4FOxx6RqG653TKULoEAZCQn8PpwiirNCvGMjAxs2bIFffr0weDBg7F58+Ygl9Uy+AJcq9UiJSWFW+JUr7ZJ8eiewbsdKu2GHpn8nFJUaXKI+97ger0ea9aswUMPPYQRI0bglVdeCXpx0axmgJtMJn4xUKN+2fMqpUto1fSaGOR25R4Rii5NPs3u8m5J586di549e2LixIlBKyraud1uOBwOv75miRrTr0MbtDHG4YJDmS4NW7vru2ciXq/MXbeImqvJ6XL8+HG0aeN/ScyYMWOwa9cuvP7660ErLFqpVCoGODWLWq3CLX2ylC6jVYpRq5DXu4PSZRA1WZO3xLOy6v6S6dWrF3r16nXFBUU7tVoNjUbDAKdmye2WgY3fnUCJU7muDVuj67tlIpWX+VEUYsqEgMFgYIBTs2hi1PjVgM5Kl9GqaGPUuK1/R6XLIGoWJg1RhMnpks6+rMMor3cHJCdwK5yiE0M8BJxOJ2+xSs2mVqvwP9d1V7qMViElQY/8vh2VLoOo2RjiQeb1euHxeGC1Whnk1Gzd0lN4A5gw+J/rekCvjVG6DKJmY4gHmRACRqMRbrebQU5XZMy13ZAYx7v8hco1HduifxY7n6HoxhAPAa1WC7PZzCCnK5Kg1+I3N/RUuowWyRirxbjcHkqXQXTFGOIhotPp/IL88pvkEAWiTwczfpHdTukyWpwJN14NI/dyUAvAEA+hmkFus9kY5NQsd1/bjf1bB9HwPlno3d6sdBlEQcEQDzFfkHs8HvYnTs2i1cRg2tA+SOAtQa9YdmYq7hzI6/Cp5WCIh4FOp0NKSgq3xKnZzMY4TBvaBzFqdqTTXG0T4/G7m3sjhjdiohaE7+Yw0Wq17E+crkj3jBTcN4QnujWHIVaLmcP7cW8GtTgM8TDirVjpSuV0zcDdOd2ULiOqxGpj8Pv8AWiTGK90KdQCeDwepUvww1QhijLDenXAyIFdlC4jKsRqYzArfwBPDKSgcbvdcLlcSpchY4gTRaER/TrirsFdlS4josXpNPh9/gB0bpukdCnUgmi1WjidTjgcDqVLAdCMrkiJKDIM75OFeJ0Ga3YcAs+Z9JcUr8fM4f1wVSq3wCm4NBoNDAYD7HY7AMBoVPY9xhAnimJDerRDUrwer335A6o81UqXExHapRjw4C392D84hUxCQgI0Go1fkLvdbkVq4e50oijXp70Zj94xCG2McUqXorj+WW3wyK8GMsAp5IxGIxITE2G322G1WhXbvc4QJ2oB2qUY8Pidg9GvQ+vs0EOtUuGuwV0xbWgfxGq5g5HCw2g0IjY2FpWVlYrdB4TvdqIWIl6vxf3D+mDb4TP4/74+AsnTOjreaZsYh8k39ULHNjyBjcJLkiRUVVUpWgNDnKgFUalU+EX2VcjOTMW/th/EkaJSpUsKGRWAm3u1x8iBXaDTsE9wCi9JkmCxWKDVamEymWCxWBSpgyFO1AK1TYzH7Fuvwc4j5/Df3UfhrFTmpJtQyTIbMS43Gx3bJCpdCrVCbrcbZWVlcoCr1WrExSlzTgpDnKiFUqtUuL57JvpntcHH/3cCmw+ehqc6unexpyToccc1XZDTNR1qFe8jT+Hn9Xpht9uh1+vlAFcSQ5yohYvXazHm2m64+er2+OS7E9jx41l4vNF1YXlSnA7D+2bhxh7toOWuc1KQJEnQaDQREeAAQ5yo1Ug1xOLe67Nxa/9O2HzgZ2w/fAauqsi6D/TlMpITMLRXe+R0SWd4U0RQqVRISUmJiAAHGOJhxa5IKRIkx+sxalBX3Na/E749fh47jpyNqBPgtDFqDOjYFjd0z0S39GSouNucIohOp4uo9yRDPEyEEJAkSekyiGQ6TQyu65aB67plwOqswLfHz2PfyQs4fr4M4f65qdfEoGe7VAzo2BZ9O5h5rTdFrEgKcIAhHhZerxc2my1idr8QXc5kiMMtfbJwS58sOCslHD5rw+EiG34qLsPZUmfQ782u06iRZU5El7RkZGemoHPbZGhj+PkgaiqGeIh5vV5YrVZ4PB4YDAalyyFqlCFWh4Gd0zCwcxoAoMpdjTM2J87anCguK4fFUQGbqwqOCgmuKned92xXAYjVaWCI1SI5Xo+UhFi0McYhLTke7VIMSEuKRwx/1BJdMYZ4CPkC3O12IyUlBdXV7KCCoo9eG4PObZPq7dLT6xVwV3tR7fVCpVIhRq2CNkYdcbsdiVoihniI1Axws9kMAAxxapHUahX06hgAPHucKNy4PysELg9wnU6ndElERNQCcUs8BJxOJ1QqFQOciIhCilviQRYTEwOPx8MAJyKikGOIh4DRaGSAExFRyDHEQ0Cr1SpdAhERtQJRF+KTJk2CSqXye4wYMaLR6ZYvX46OHTsiNjYWOTk5+Prrr/3GV1ZWYsaMGTCZTDAYDBgzZgyKi4ubVWNFRUWzpiMiImqKqAtxABgxYgTOnTsnP95+++0G269duxYFBQWYP38+vv32W/Tr1w/5+fk4f/683Obhhx/GBx98gHXr1mHLli04e/YsRo8e3eTahBAoLy+Hw+Fo8rRERERNEZUhrtfrkZ6eLj9SUlIabL948WJMnToVkydPxtVXX40VK1YgPj4er7/+OgCgrKwMr732GhYvXoyhQ4di4MCBWLVqFXbs2IGdO3c2qTav14v4+HjY7XYGORERhVRUhvjmzZvRtm1b9OjRA9OnT4fVaq23rSRJ2LNnD/Ly8uRharUaeXl5KCwsBADs2bMHbrfbr012djY6dOggt2mKuLg4JCYmMsiJiCikou468REjRmD06NHo1KkTjh07hieeeAK33norCgsLERNT+45RFosF1dXVSEtL8xuelpaGQ4cOAQCKioqg0+mQnJxcq01RUVG9tVRVVaGqqkr+2263y/83Go1+w/R6fdMWlIiIqBERvSX+1ltvwWAwyI9t27Zh3LhxuPPOO9GnTx+MGjUKH374Ib755hts3rw57PUtXLgQSUlJ8qN9+/Z+441Go7xF7nK5wl4fERG1bBEd4nfeeSf27dsnPwYNGlSrTefOnWE2m3H06NE652E2mxETE1PrTPPi4mKkp6cDANLT0yFJEkpLS+ttU5c5c+agrKxMfvz888+12viC3Ol0wuPxNLbIREREAYvoEDcajejatav8iIuLq9Xm9OnTsFqtyMjIqHMeOp0OAwcOxKZNm+RhXq8XmzZtQm5uLgBg4MCB0Gq1fm0OHz6MU6dOyW3qotfrkZiY6PeobzkMBgPcbndAy01ERBSIiA7xyzmdTjz66KPYuXMnTpw4gU2bNmHkyJHo2rUr8vPz5XbDhg3Dyy+/LP9dUFCAlStX4p///CcOHjyI6dOnw+VyYfLkyQCApKQkTJkyBQUFBfjyyy+xZ88eTJ48Gbm5ubjuuuuCUntCQgJvAkNEREEVVSe2xcTE4LvvvsM///lPlJaWIjMzE8OHD8cf//hHvxPHjh07BovFIv99zz334MKFC5g3bx6KiorQv39/bNy40e9ktyVLlkCtVmPMmDGoqqpCfn4+XnnllaDWr9FE1ctNRESX8Xq9SpfgJ6pSJS4uDp988kmj7U6cOFFr2MyZMzFz5sx6p4mNjcXy5cuxfPnyKymRiIhaMEmSoNVqI6Z/jKjanU5ERKQklUoFm80GSZKULgUAQ5yIiChgOp0OGo0GFoslIoKcIU5ERBQglUqFlJQUaLVavyBX6lg5Q5yIiKgJVCoVTCaTHORVVVVwOp2K1MIQJyIiaiK1Wg2TySTvWlfqPiAMcSIioijFECciImoir9cLq9UKj8cDs9ms2M28ouo6cSIiIqUJIWC1WuF2u2E2m6HT6WAwGBSphSFOREQUICEEbDYbvF6vHODAxWPkSuDudCIiogBJkiTvQo+Eu7YxxImIiAIkhEBKSkpEBDjAECciIgqYTqeLqB4pGeJh5PF4lC6BiIiugFLHvusTWdW0YC6XS7GbARARUcvEEA8Dh8MBp9MZUbtgiIgo+vESsxBzOByw2+0wGAyIiYlRuhwiImpBuCUeQr4AT0xMREJCgtLlEBFRC8MQD5GaAW40GpUuh4iIWiDuTg+BiooKuN1uBjgREYUUt8SDTK1Wo7y8nAFOREQhxxAPMpVKhfj4eAY4ERGFHEM8BOLi4pQugYiIWgGGeAjwpi5ERBQODPEQcDgckCRJ6TKIiKiFY4gHWXV1NTQaDSwWC4OciIhCiiEeAgaDAVqtlkFOREQhxRAPAbVaDZPJxCAnIqKQYoiHyOVBzpPdiIgo2BjiIVQzyG02G7xer9IlERFRC8IQDzFfkGs0Gu5WJyKioGKIh4FarUZKSgpUKpXSpRARUQvCEA8TlUoFnU6ndBlERHQFhBBKl+CHIR5G3BInIopukiRFVJAzxImIiAIkhIioE5UZ4kRERAHS6XTweDywWq0REeQMcSIiogD5TlR2u90REeQMcSIioibQarUwm81+QV5RUaFILQxxIiKiJtLpdHKQnzt3DuXl5YrUwRAnIiJqBp1OB71er2gNDHEiIqJmcDgcqKysRGxsrGKXEGsUeVYiIqIo5nA4YLfbkZiYCKPRyBAnIiKKBi6XC+Xl5XKAAxdPdlMCd6cTEREFyOPxwOl0+gW4khjiREREAXK73TAYDBER4ABDnIiIKGBarRYJCQlKlyFjiIeR0nf2ISKiK6PRRNapZAzxMHG73ZAkSekyiIioBWGIh4EkSbDZbOyKlIiIgoohHmKSJMFisUCj0UCn0yldDhERtSAM8RDyBbhWq0VKSgq3xImIKKgY4iFSM8BNJhMDnIiIgi6yTrNrIdxuNxwOhxzgajV/KxERUfAxXYJMpVIxwImIKCwiKmHeffddDB8+XN79vG/fvlptKisrMWPGDJhMJhgMBowZMwbFxcUNzlcIgXnz5iEjIwNxcXHIy8vDkSNH/NqUlJRg/PjxSExMRHJyMqZMmQKn09nkZVCr1dBoNAxwIiIKuYhKGZfLhSFDhuD555+vt83DDz+MDz74AOvWrcOWLVtw9uxZjB49usH5Llq0CMuWLcOKFSuwa9cuJCQkID8/H5WVlXKb8ePHY//+/fjss8/w4YcfYuvWrZg2bVqzlsNgMDDAiYgo5CLqmPh9990HADhx4kSd48vKyvDaa69hzZo1GDp0KABg1apV6NmzJ3bu3Inrrruu1jRCCCxduhRz587FyJEjAQBvvPEG0tLSsH79eowbNw4HDx7Exo0b8c0332DQoEEAgJdeegm33XYbXnjhBWRmZoZgaYmIiK5MVG0u7tmzB263G3l5efKw7OxsdOjQAYWFhXVOc/z4cRQVFflNk5SUhJycHHmawsJCJCcnywEOAHl5eVCr1di1a1eT63Q6nbzFKhERhVxEbYk3pqioCDqdDsnJyX7D09LSUFRUVO80vjb1TVNUVIS2bdv6jddoNEhNTa13vgBQVVWFqqoq+W+73Q6v1wuPxwOr1crj4kREFFKKJcxbb70Fg8EgP7Zt26ZUKc22cOFCJCUlyY/27dtDCAGj0Qi32w2r1cotciIiChnFQvzOO+/Evn375EfNXdn1SU9PhyRJKC0t9RteXFyM9PT0eqfxtalvmvT0dJw/f95vvMfjQUlJSb3zBYA5c+agrKxMfvz8888ALnZVZzabGeRERBRSioW40WhE165d5UdcXFyj0wwcOBBarRabNm2Shx0+fBinTp1Cbm5undN06tQJ6enpftPY7Xbs2rVLniY3NxelpaXYs2eP3OaLL76A1+tFTk5OvfXo9XokJib6PXx0Op1fkAshGl0+IiKipoioY+IlJSU4deoUzp49C+BiQAMXt5TT09ORlJSEKVOmoKCgAKmpqUhMTMSsWbOQm5vrd2Z6dnY2Fi5ciLvuugsqlQqzZ8/Gs88+i27duqFTp0546qmnkJmZiVGjRgEAevbsiREjRmDq1KlYsWIF3G43Zs6ciXHjxl3Rmem+ILdYLLDZbAH9UCEiIgpURIX4+++/j8mTJ8t/jxs3DgAwf/58PP300wCAJUuWQK1WY8yYMaiqqkJ+fj5eeeUVv/kcPnwYZWVl8t+PPfYYXC4Xpk2bhtLSUgwZMgQbN25EbGys3Oatt97CzJkzMWzYMHn+y5Ytu+Jl8gX5+fPn2Z84EREFlUpwP2/Q2O12PP/888jKyoLRaPQb53K54HK5cN999yE1NVWhComIqLlKSkqwbt06xMbG1upa2uFw4P7770dZWZnfodVQ4/VPYaLVatmfOBERBRVDPIx4zTgRUXTzeDxKl+CHqUJERBQgt9sNl8uldBkyhjgREVGAtFotnE4nHA6H0qUAYIgTEREFTKPRwGAwwG63R0SQR9QlZkRERJEuISEBGo0GdrsdAORbbSuBIU5ERNREvsuI7XY7JEmC0+lUpA6GOBERUTMYjUZIkoTKykrFbq3NY+JERETNIEmSX3fUSmCIExERNZEkSbBYLNBqtcjIyEB8fLwidXB3OhERURO43W6UlZVBq9XCZDJBrVYr1sEVQ5yIiChAXq8Xdrsder1eDnAlcXc6ERFRgCRJgkajiYgABxjiREREAVOpVEhJSYmIAAcY4mHFXl+JiKKbTqeDSqVSugwZQzxMhBCQJEnpMoiI6ApEUoADDPGw8Hq9sNls3BInIqKgYoiHmNfrhdVqhcfjgU6nU7ocIiJqQRjiIeQLcLfbHVEnQhARUcvA68RDpGaAm81mAEB1dbXCVRERUUvCTcMQuDzAuRudiIhCgVviIeB0OqFSqRjgREQUUtwSD7KYmBh4PB4GOBERhRxDPASMRiMDnIiIQo4hHgJarVbpEoiIqBVgiIdARUWF0iUQEVErwBAPMiEEysvL4XA4lC6FiIhaOIZ4kHm9XsTHx8NutzPIiYgopHiJWQjExcUhLi4OdrsdwMUT3YiIiIKNIR4ivuD2Bbler1eyHCIiaoEY4iFUM8jj4+MRExOjcEVERNSSMMRDzBfkpaWlSEhIULgaIiJqSRjiYWA0GuHxeCBJktKlEBFRC8IQD5OEhAQIIZQug4iIWhBeYhZGGg1/MxERRTOv16t0CX4Y4kRERAGSJAlut1vpMmQMcSIiogCpVCrYbLaIOceJIU5ERBQgnU4HjUYDi8USEUHOECciIgqQSqVCSkoKtFqtX5ArdaycIU5ERNQEKpUKJpNJDvKqqio4nU5FamGIExERNZFarYbJZJJ3rSt1shtDnIiIKEoxxImIiJrI6/XCarXC4/HAbDZDq9UqUgfvPkJERNQEQghYrVa43W6YzWbodDoYDAZFamGIExERBUgIAZvNBq/XKwc4cPEYuRK4O52IiChAkiTJu9B9Aa4khjgREVGAhBBISUmJiAAHGOJEREQB0+l0ip3EVheGeBh5PB6lSyAioiug1LHv+kRWNS2Yy+WKqJ5viIgo+vHs9BDweDx+N8Z3uVyw2+2Ij49HWVmZgpUREVFzlZWVwePx1LlBptSeVoZ4kGk0GthsNtjtdgAXV6zX64VKpYLD4cCGDRug0VzZy+57E2m12oDm5fV6IUkSVCoVdDodVCrVFT1/c+YphIAkSRBCQKfTBWWXVHPm2dTXLhBcH82fJ9fHRVwfl0Ty+vB4PCgtLYVKpar1elZXV19xnc3BEA8B3wqWJAnV1dWIiYmBRqOBEAJ6vT4oJ0W4XC44nU4YDAYkJCTU287tdsNut0Oj0SAlJSUoHwgfrVYLm82G6urqBuftu67S4/HIvf8ES2xsLGw2G5xOZ6PzdrlccLlcjb5mzcH1cRHXxyVcH/7zbgnrw+12Q61W1xniSvViFlEh/u6772LFihXYs2cPSkpKsHfvXvTv39+vzS9/+Uts2bLFb9j999+PFStW1DtfIQTmz5+PlStXorS0FDfccANeffVVdOvWTW5TUlKCWbNm4YMPPoBarcaYMWPw17/+tVl34VGpVHC73aiuroZGo4Fer4fX64XX64VWqw3KpQm+Pm19b3ij0VirjSRJKCsrg16vh8lkCvoJGb6zNC0WC+x2e53P4bs1odfrRdu2bUNyWUbbtm1htVpRVlZW77WbDocD5eXlSE5OrvO1ulJcH5dwfVyqgevjopa0PnwBfvm0wfzB0RQRdWKby+XCkCFD8PzzzzfYburUqTh37pz8WLRoUYPtFy1ahGXLlmHFihXYtWsXEhISkJ+fj8rKSrnN+PHjsX//fnz22Wf48MMPsXXrVkybNq1Zy+F2u+HxeOQADxWj0YjExETY7XY4HA6/cZIkwWKxQKvVhuQD4aPT6WA2m+F2u+U3v4/vA1Hz1oSh4OtN6PL+fX0cDgfsdjsSExND8gXlw/VxEdfHJVwfl3B9hEZEbYnfd999AIATJ0402C4+Ph7p6ekBzVMIgaVLl2Lu3LkYOXIkAOCNN95AWloa1q9fj3HjxuHgwYPYuHEjvvnmGwwaNAgA8NJLL+G2227DCy+8gMzMzICXQaVSQQgR8gD38X3ofMfgjUZj2D4QPr4PhsVigdVqhclkAoCwfiB8X1RWqxUWi0V+znB9QflwfVzE9XEJ18clXB/BF1Fb4oF66623YDab0bt3b8yZMwfl5eX1tj1+/DiKioqQl5cnD0tKSkJOTg4KCwsBAIWFhUhOTpYDHADy8vKgVquxa9euJtenUqnCEuA+NX/h+j6k4fpA+NT8hWuxWOT+dcP5gbh8i8NqtYb1C8qH6+Miro9LuD4u4foIrojaEg/Er3/9a2RlZSEzMxPfffcd/vCHP+Dw4cN4991362xfVFQEAEhLS/MbnpaWJo8rKipC27Zt/cZrNBqkpqbKbepSVVWFqqoq+W/f5WO+Y+I1CSEghIDT6QzZ3X58Z8ADQEJCAlwuV0iepyF6vV6uwWg01nqNwkGn08HlckGSJPkDefnuu3Dg+riI6+MSro9LonF9+M518l1xVJPvEjMhROgKroNiIf7WW2/h/vvvl//++OOPceONNzY6Xc3j1H369EFGRgaGDRuGY8eOoUuXLiGptT4LFy7EggULwvqcREQUuaxWK5KSksL2fIqF+J133omcnBz573bt2jVrPr55HD16tM4Q9x07Ly4uRkZGhjy8uLhYPvM9PT0d58+f95vO4/GgpKSkwWPvc+bMQUFBgfx3aWkpsrKycOrUqbCuxEhht9vRvn17/Pzzz0hMTFS6nLDj8nP5ufytd/nLysrQoUMHpKamhvV5FQtxo9EYlOMw+/btAwC/gK6pU6dOSE9Px6ZNm+TQttvt2LVrF6ZPnw4AyM3NRWlpKfbs2YOBAwcCAL744gt4vV6/HxqX0+v1dR77TkpKapVvYp/ExEQuP5df6TIUw+Vv3csf7nurR9Qx8ZKSEpw6dQpnz54FABw+fBjAxS3l9PR0HDt2DGvWrMFtt90Gk8mE7777Dg8//DB+8YtfoG/fvvJ8srOzsXDhQtx1111QqVSYPXs2nn32WXTr1g2dOnXCU089hczMTIwaNQoA0LNnT4wYMQJTp07FihUr4Ha7MXPmTIwbN65JZ6YTERGFU0SF+Pvvv4/JkyfLf48bNw4AMH/+fDz99NPQ6XT4/PPPsXTpUrhcLrRv3x5jxozB3Llz/eZz+PBhv3uUP/bYY3C5XJg2bRpKS0sxZMgQbNy4EbGxsXKbt956CzNnzsSwYcPkm70sW7YsxEtMRETUfBEV4pMmTcKkSZPqHd++fftad2ury+VnB6pUKjzzzDN45pln6p0mNTUVa9asCbjWuuj1esyfPz+sl5dFEi4/l5/Lz+Xn8od3+VUi3OfDExERUVBE5c1eiIiIiCFOREQUtRjiREREUYohXsO7776L4cOHw2QyQaVSydeg1/TLX/4SKpXK7/HAAw80OF8hBObNm4eMjAzExcUhLy8PR44c8WtTUlKC8ePHIzExEcnJyZgyZQqcTmcwF69RgSx/ZWUlZsyYAZPJBIPBgDFjxqC4uLjB+UbL8tdl0qRJtdb3iBEjGp1u+fLl6NixI2JjY5GTk4Ovv/7ab3xzXsdwa2wZLrdu3TpkZ2cjNjYWffr0wYYNG/zGB/I+iBRPP/10rfWenZ3d4DTRvPxbt27FHXfcgczMTKhUKqxfv95vfHNrj5bPQWPLH9HfA4Jkb7zxhliwYIFYuXKlACD27t1bq81NN90kpk6dKs6dOyc/ysrKGpzvn//8Z5GUlCTWr18v/u///k/ceeedolOnTqKiokJuM2LECNGvXz+xc+dOsW3bNtG1a1dx7733BnsRGxTI8j/wwAOiffv2YtOmTWL37t3iuuuuE9dff32D842W5a/LxIkTxYgRI/zWd0lJSYPTvPPOO0Kn04nXX39d7N+/X0ydOlUkJyeL4uJiuU1zXsdwCmQZavrqq69ETEyMWLRokThw4ICYO3eu0Gq14vvvv5fbBPI+iBTz588XvXr18lvvFy5cqLd9tC//hg0bxJNPPineffddAUD897//9RvfnNqj6XPQ2PJH8vcAQ7wOx48fbzDEH3rooYDn5fV6RXp6uvjLX/4iDystLRV6vV68/fbbQgghDhw4IACIb775Rm7z8ccfC5VKJc6cOdPs5Wiu+pa/tLRUaLVasW7dOnnYwYMHBQBRWFhY57yicflrmjhxohg5cmSTprn22mvFjBkz5L+rq6tFZmamWLhwoRCiea9juDW2DJf7n//5H3H77bf7DcvJyRH333+/ECKw90EkmT9/vujXr1/A7VvS8l8eYs2tPVo/B/WFeKR+D3B3ejNEeleoobJnzx643W6/ZcnOzkaHDh3kZblcS1j+zZs3o23btujRowemT58Oq9Vab1tJkrBnzx6/5VWr1cjLy5OXtzmvYzgFsgyXKyws9GsPAPn5+XL7QN4HkebIkSPIzMxE586dMX78eJw6dareti1x+X2aU3tL+BxcLlK/ByLqZi/RIJK6Qg23oqIi6HQ6JCcn+w2vuSx1TeNrU980kbz8I0aMwOjRo9GpUyccO3YMTzzxBG699VYUFhYiJiamVnuLxYLq6uo6l/fQoUMAmvc6hlMgy3C5oqKiRtexb1h9bSJJTk4OVq9ejR49euDcuXNYsGABbrzxRvzwww919vnQ0pa/pubU3hI+BzVF8vdAqw3xltAV6pVo7vK3ZHW9Jr5b/wIX13ffvn3RpUsXbN68GcOGDVOiTAqDW2+9Vf5/3759kZOTg6ysLPz73//GlClTFKyMlBDJ3wOtdnf6nXfeiX379smPmrtym6JmV6h1qdkVak3FxcXyuOZ2hXolmrP86enpkCQJpaWlfsNrLktd0/ja1DeNEstfl0Bek86dO8NsNte7vs1mM2JiYhpd3qa+juEUyDJcLj09vdFl9g0LdJ6RJDk5Gd27d2/wc95Sl785tbeEz0FDIul7oNWGuNFoRNeuXeVHXFxcs+bTlK5QfXxdoebm5gLw7wrVJ5CuUK9Ec5Z/4MCB0Gq1fsty+PBhnDp1Sl6Wy0Xq8tclkNfk9OnTsFqt9a5vnU6HgQMH+i2v1+vFpk2b5OVtzusYToEsw+Vyc3P92gPAZ599JrcP5H0QyZxOJ44dO1bvem/Jy9+c2lvC56AhEfU90KTT7Vo4q9Uq9u7dKz766CMBQLzzzjti79694ty5c0IIIY4ePSqeeeYZsXv3bnH8+HHx3nvvic6dO4tf/OIXfvPp0aOHePfdd+W///znP4vk5GTx3nvvie+++06MHDmyzkusBgwYIHbt2iW2b98uunXrFvZLrBpbfiEuXhLRoUMH8cUXX4jdu3eL3NxckZub6zefaF3+yzkcDvHII4+IwsJCcfz4cfH555+La665RnTr1k1UVlbK7YYOHSpeeukl+e933nlH6PV6sXr1anHgwAExbdo0kZycLIqKiuQ2gbyOSmpsGe677z7x+OOPy+2/+uorodFoxAsvvCAOHjwo5s+fX+clVo29DyLF//7v/4rNmzeL48ePi6+++krk5eUJs9kszp8/L4RoecvvcDjE3r17xd69ewUAsXjxYrF3715x8uRJIURgtUfz56Ch5Y/07wGGeA2rVq0SAGo95s+fL4QQ4tSpU+IXv/iFSE1NFXq9XnTt2lU8+uijta4TByBWrVol/+31esVTTz0l0tLShF6vF8OGDROHDx/2m8ZqtYp7771XGAwGkZiYKCZPniwcDkeoF9lPY8svhBAVFRXiwQcfFCkpKSI+Pl7cddddfiEvRPQu/+XKy8vF8OHDRZs2bYRWqxVZWVli6tSpfh9CIYTIysrye42EEOKll14SHTp0EDqdTlx77bVi586dfuMDeR2V1tAy3HTTTWLixIl+7f/973+L7t27C51OJ3r16iU++ugjv/GBvA8ixT333CMyMjKETqcT7dq1E/fcc484evSoPL6lLf+XX35Z52fft4yB1B7Nn4OGlj/SvwfYixkREVGUarXHxImIiKIdQ5yIiChKMcSJiIiiFEOciIgoSjHEiYiIohRDnIiIKEoxxImIiKIUQ5yIiChKMcSJKGCvvfYahg8fHvLn2bhxI/r37w+v1xvy5yKKZgxxIgpIZWUlnnrqKcyfPz/kzzVixAhotVq89dZbIX8uomjGECeigPznP/9BYmIibrjhhrA836RJk7Bs2bKwPBdRtGKIE7Uyb7zxBkwmE6qqqvyGjxo1Cvfdd1+9073zzju44447/Ib98pe/xOzZs2vNZ9KkSfLfHTt2xLPPPosJEybAYDAgKysL77//Pi5cuICRI0fCYDCgb9++2L17t9987rjjDuzevRvHjh1r3oIStQIMcaJWZuzYsaiursb7778vDzt//jw++ugj/Pa3v613uu3bt2PQoEHNes4lS5bghhtuwN69e3H77bfjvvvuw4QJE/Cb3/wG3377Lbp06YIJEyagZn9MHTp0QFpaGrZt29as5yRqDRjiRK1MXFwcfv3rX2PVqlXysH/961/o0KEDfvnLX9Y5TWlpKcrKypCZmdms57zttttw//33o1u3bpg3bx7sdjsGDx6MsWPHonv37vjDH/6AgwcPori42G+6zMxMnDx5slnPSdQaMMSJWqGpU6fi008/xZkzZwAAq1evxqRJk6BSqepsX1FRAQCIjY1t1vP17dtX/n9aWhoAoE+fPrWGnT9/3m+6uLg4lJeXN+s5iVoDjdIFEFH4DRgwAP369cMbb7yB4cOHY//+/fjoo4/qbW8ymaBSqWCz2Rqdd3V1da1hWq1W/r/vh0Jdwy6/pKykpARt2rRp9DmJWituiRO1Ur/73e+wevVqrFq1Cnl5eWjfvn29bXU6Ha6++mocOHCg1rjLd4H/9NNPQamvsrISx44dw4ABA4IyP6KWiCFO1Er9+te/xunTp7Fy5coGT2jzyc/Px/bt22sNf++99/Duu+/i2LFjeO6553DgwAGcPHlS3lXfXDt37oRer0dubu4VzYeoJWOIE7VSSUlJGDNmDAwGA0aNGtVo+ylTpmDDhg0oKyvzG3777bdj0aJFuPrqq7F161a88sor+Prrr/Hmm29eUX1vv/02xo8fj/j4+CuaD1FLphI1r+kgolZl2LBh6NWrV8A3VRk7diyuueYazJkzB8DF68T79++PpUuXBrUui8WCHj16YPfu3ejUqVNQ503UknBLnKgVstls+O9//4vNmzdjxowZAU/3l7/8BQaDIYSVXXTixAm88sorDHCiRvDsdKJWaMCAAbDZbHj++efRo0ePgKfr2LEjZs2aFcLKLho0aFCzbyxD1JpwdzoREVGU4u50IiKiKMUQJyIiilIMcSIioijFECciIopSDHEiIqIoxRAnIiKKUgxxIiKiKMUQJyIiilIMcSIioij1/wPpbz9izdpcmwAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def mode_solver_fiber(\n",
    "    resolution,\n",
    "    npml,\n",
    "    delta_override=None,\n",
    "    size=(30, 30),\n",
    "    num_modes=10,\n",
    "    bend_radius=None,\n",
    "    symmetry=(0, 0, 0),\n",
    "    target_neff=1.41,\n",
    "    fiber_radius=4.1,\n",
    "    coreIndex=1.45213,\n",
    "    cladIndex=1.44692,\n",
    "    fields=[\"Ex\", \"Ey\", \"Ez\"],\n",
    "):\n",
    "    fiberDiameter = 2 * fiber_radius\n",
    "\n",
    "    fiber = td.Cylinder(axis=0, radius=fiberDiameter / 2, center=(0, 0, 0), length=td.inf)\n",
    "\n",
    "    structures = [td.Structure(geometry=fiber, medium=td.Medium(permittivity=coreIndex**2))]\n",
    "\n",
    "    mode_spec = td.ModeSpec(\n",
    "        num_modes=num_modes,\n",
    "        target_neff=target_neff,\n",
    "        precision=\"double\",\n",
    "        bend_radius=bend_radius,\n",
    "        bend_axis=1,\n",
    "        num_pml=(npml, npml),\n",
    "    )\n",
    "\n",
    "    if delta_override:\n",
    "        mesh_override = [\n",
    "            td.MeshOverrideStructure(\n",
    "                geometry=td.Box(center=(0, 0, 0), size=(1, 3 * fiber_radius, 3 * fiber_radius)),\n",
    "                dl=(delta_override,) * 3,\n",
    "            )\n",
    "        ]\n",
    "    else:\n",
    "        mesh_override = []\n",
    "\n",
    "    grid_spec = td.GridSpec.auto(\n",
    "        min_steps_per_wvl=resolution, wavelength=1.55, override_structures=mesh_override\n",
    "    )\n",
    "\n",
    "    sim = td.Simulation(\n",
    "        size=(10, size[0], size[1]),\n",
    "        center=(0, 0, 0),\n",
    "        grid_spec=grid_spec,\n",
    "        structures=structures,\n",
    "        sources=[],\n",
    "        monitors=[],\n",
    "        run_time=1e-12,\n",
    "        boundary_spec=td.BoundarySpec.all_sides(boundary=td.Absorber(num_layers=20)),\n",
    "        symmetry=symmetry,\n",
    "        medium=td.Medium(permittivity=cladIndex**2),\n",
    "    )\n",
    "\n",
    "    plane = td.Box(center=(0, 0, 0), size=(0, size[0], size[1]))\n",
    "\n",
    "    mode_solver = ModeSolver(\n",
    "        simulation=sim,\n",
    "        plane=plane,\n",
    "        mode_spec=mode_spec,\n",
    "        freqs=[td.C_0 / 1.55],\n",
    "        fields=fields,\n",
    "    )\n",
    "\n",
    "    return mode_solver\n",
    "\n",
    "\n",
    "ms = mode_solver_fiber(20, 10, delta_override=0.01)\n",
    "ms.plot()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Due to the low index contrast, a fiber is more sensitive to losses; hence, larger bend radii can be analyzed.\n",
    "\n",
    "Again, we need to define a proper plane size. To do so, we will benchmark the losses for a 30 mm bend radius as a function of the plane size. As observed, physical values are obtained only for sizes up to 100 μm."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "7321044fd9e348be88623b7e688438cf",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:46:55 CET </span>Started working on Batch containing <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">5</span> tasks.                       \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:46:55 CET\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch containing \u001b[1;36m5\u001b[0m tasks.                       \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:47:05 CET </span>Maximum FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.486</span> for the whole batch.                \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:47:05 CET\u001b[0m\u001b[2;36m \u001b[0mMaximum FlexCredit cost: \u001b[1;36m0.486\u001b[0m for the whole batch.                \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Use <span style=\"color: #008000; text-decoration-color: #008000\">'Batch.real_cost()'</span> to get the billed FlexCredit cost after    \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>completion.                                                        \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mUse \u001b[32m'Batch.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed FlexCredit cost after    \n",
       "\u001b[2;36m             \u001b[0mcompletion.                                                        \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "1e7cb311d30141d8b364704a992691b0",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:49:34 CET </span>Batch complete.                                                    \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:49:34 CET\u001b[0m\u001b[2;36m \u001b[0mBatch complete.                                                    \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "loss = []\n",
    "sizes = [40, 60, 80, 100, 120]\n",
    "mode_solvers = {}\n",
    "for size in sizes:\n",
    "    mode_solver = mode_solver_fiber(\n",
    "        bend_radius=30000,\n",
    "        npml=12,\n",
    "        resolution=10,\n",
    "        size=(size, size),\n",
    "        target_neff=1.449,\n",
    "        symmetry=(0, 0, 1),\n",
    "        delta_override=0.05,\n",
    "        num_modes=10,\n",
    "    )\n",
    "\n",
    "    mode_solvers[str(size)] = mode_solver\n",
    "\n",
    "batch_data = web.Batch(\n",
    "    simulations=mode_solvers,\n",
    "    folder_name=\"radiative_losses\",\n",
    ").run(path_dir=\"radiative_losses\")\n",
    "\n",
    "for mode_data in batch_data.values():\n",
    "    idx = findMode(mode_data, 3)\n",
    "    loss.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Size (μm)\tLoss (dB/cm)\n",
      "40\t\t-0.001954\n",
      "60\t\t-0.000029\n",
      "80\t\t-0.000001\n",
      "100\t\t0.000000\n",
      "120\t\t0.000000\n"
     ]
    }
   ],
   "source": [
    "# print the results\n",
    "print(\"Size (μm)\\tLoss (dB/cm)\")\n",
    "for i, s in enumerate(sizes):\n",
    "    print(f\"{s}\\t\\t{loss[i]:.6f}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Finally, we will analyze the imaginary part of the effective index as a function of the bend radius and compare the results with the analytical model developed by Dietrich Marcuse published in the work \"Curvature loss formula for optical fibers\" [DOI: https://doi.org/10.1364/JOSA.66.000216](https://doi.org/10.1364/JOSA.66.000216).\n",
    "\n",
    "In this model, the loss coefficient $\\alpha$ is given by:\n",
    "\n",
    "$2\\alpha = \\frac{\\sqrt(\\pi)k^2e^{-(2/3)(\\frac{\\gamma^3}{\\beta_g^2})R}}{e_\\nu \\gamma^{3/2}V^2\\sqrt{R}K_{\\nu-1}(\\gamma a)K_{\\nu+1}(\\gamma a)}$\n",
    "\n",
    "where: \n",
    "\n",
    "$k = \\sqrt{(n_1 2\\pi/\\lambda)^2 -\\beta_g^2}$\n",
    "\n",
    "$\\gamma = \\sqrt{(\\beta_g^2-(n_2 2\\pi/\\lambda)^2)}$\n",
    "\n",
    "$e_\\nu = 1$ for $\\nu = 0$ else 2\n",
    "\n",
    "$V^2 = (a 2\\pi/\\lambda)^2(n_1^2-n_2^2)$\n",
    "\n",
    "and $n_1$ is the core index, $n_2$ is the clad index, $a$ is the core radius, $R$ is the bend radius, $\\beta_g$ is the constant of a straight waveguide, and $K_\\nu$ is the modified Hankel function."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "388fd26272b34506b0880139beb51cb5",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:51:53 CET </span>Started working on Batch containing <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">6</span> tasks.                       \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:51:53 CET\u001b[0m\u001b[2;36m \u001b[0mStarted working on Batch containing \u001b[1;36m6\u001b[0m tasks.                       \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:52:03 CET </span>Maximum FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.430</span> for the whole batch.                \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:52:03 CET\u001b[0m\u001b[2;36m \u001b[0mMaximum FlexCredit cost: \u001b[1;36m0.430\u001b[0m for the whole batch.                \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Use <span style=\"color: #008000; text-decoration-color: #008000\">'Batch.real_cost()'</span> to get the billed FlexCredit cost after    \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>completion.                                                        \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mUse \u001b[32m'Batch.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed FlexCredit cost after    \n",
       "\u001b[2;36m             \u001b[0mcompletion.                                                        \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "0b702ea0afab426b8a7e8a025f4cac38",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">10:57:11 CET </span>Batch complete.                                                    \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m10:57:11 CET\u001b[0m\u001b[2;36m \u001b[0mBatch complete.                                                    \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "loss = []\n",
    "keff = []\n",
    "\n",
    "radius = [5000, 10000, 15000, 20000, 25000, 30000]\n",
    "mode_solvers = {}\n",
    "for r in radius:\n",
    "    mode_solver = mode_solver_fiber(\n",
    "        bend_radius=r,\n",
    "        npml=12,\n",
    "        resolution=10,\n",
    "        size=(100, 100),\n",
    "        target_neff=1.449,\n",
    "        symmetry=(0, 0, 1),\n",
    "        delta_override=0.05,\n",
    "        num_modes=5,\n",
    "    )\n",
    "\n",
    "    mode_solvers[str(r)] = mode_solver\n",
    "\n",
    "batch_data = web.Batch(\n",
    "    simulations=mode_solvers,\n",
    "    folder_name=\"radiative_losses\",\n",
    ").run(path_dir=\"radiative_losses\")\n",
    "\n",
    "for mode_data in batch_data.values():\n",
    "    idx = findMode(mode_data, 4)\n",
    "\n",
    "    loss.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])\n",
    "    keff.append(mode_data.to_dataframe().iloc[idx][\"k eff\"])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As we can see, the simulated results, with proper simulation size, match very well the analytical results up to $k_{eff}$ at the order of $10^{-12}$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# function for calculation alpha\n",
    "def alpha(R, a=4.1, nmode=1.449156, n1=1.45213, n2=1.44692, lda0=1.55, mode=0):\n",
    "    beta = 2 * np.pi * nmode / lda0\n",
    "    ev = 2 if mode == 0 else 1\n",
    "    k0 = np.pi * 2 / lda0\n",
    "    gamma = np.sqrt(beta**2 - (n2**2) * (k0**2))\n",
    "    k = np.sqrt((n1**2) * k0**2 - beta**2)\n",
    "    Vsquare = (k0**2) * (a**2) * (n1**2 - n2**2)\n",
    "\n",
    "    from scipy.special import kv\n",
    "\n",
    "    up = np.sqrt(np.pi) * (k**2) * np.exp(-(2 / 3) * ((gamma**3) / (beta**2)) * R)\n",
    "    down = (\n",
    "        ev\n",
    "        * (gamma ** (3 / 2))\n",
    "        * Vsquare\n",
    "        * np.sqrt(R)\n",
    "        * kv(mode - 1, gamma * a)\n",
    "        * kv(mode + 1, gamma * a)\n",
    "    )\n",
    "\n",
    "    return np.real((1 / 2) * (up / down))\n",
    "\n",
    "\n",
    "fig, ax = plt.subplots()\n",
    "\n",
    "ax.plot(radius, keff, \"o\", label=\"Simulated\")\n",
    "ax.plot(\n",
    "    radius,\n",
    "    [alpha(r) * 1.55 / (4 * np.pi) for r in radius],\n",
    "    \"*\",\n",
    "    label=\"Analytical model\",\n",
    ")\n",
    "ax.set_yscale(\"log\")\n",
    "ax.set_xlabel(r\"Bend radius ($\\mu$m)\")\n",
    "ax.set_ylabel(\"$k_{eff}$\")\n",
    "ax.legend()\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "description": "This notebook demonstrates how to use the mode solver in Tidy3D to analyze losses in waveguides.",
  "feature_image": "./img/RadiativeLossesModeSolver.png",
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "keywords": "mode solver, modes, Tidy3D, FDTD",
  "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.11.8"
  },
  "title": "Using the Mode Solver in Tidy3D to Analyze Radiative Losses | Flexcompute"
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
