{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "a1b2c3d4",
   "metadata": {},
   "source": [
    "# Getting Started with Non-Sequential Ray Tracing\n",
    "\n",
    "This notebook introduces the core workflow of the Optiland non-sequential (NSQ) ray tracer.\n",
    "In sequential ray tracing, rays travel through surfaces in a fixed order. In **non-sequential**\n",
    "tracing, rays propagate freely through a scene, bouncing, refracting, and scattering on any\n",
    "surface they encounter, in any order.\n",
    "\n",
    "This makes NSQ tracing ideal for:\n",
    "- Illumination design and uniformity analysis\n",
    "- Stray light and ghost image analysis\n",
    "- Scatter and diffuse surface modeling\n",
    "- Non-imaging optics (concentrators, light pipes)\n",
    "\n",
    "By the end of this notebook you will know how to:\n",
    "1. Create an `NSQScene` and populate it with a source, a lens, and a detector\n",
    "2. Run a Monte Carlo ray trace\n",
    "3. Inspect the `SimulationResult` and visualize the irradiance map"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "b2c3d4e5",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-08-18T17:44:09.694425Z",
     "iopub.status.busy": "2026-08-18T17:44:09.693321Z",
     "iopub.status.idle": "2026-08-18T17:44:12.639326Z",
     "shell.execute_reply": "2026-08-18T17:44:12.639326Z"
    }
   },
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "\n",
    "from optiland.coordinate_system import CoordinateSystem\n",
    "from optiland.nonsequential import (\n",
    "    NSQScene,\n",
    "    Spectrum,\n",
    "    PointSourceConfig,\n",
    "    LensConfig,\n",
    "    IrradianceDetectorConfig,\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c3d4e5f6",
   "metadata": {},
   "source": [
    "## 1. Describing a Wavelength with `Spectrum`\n",
    "\n",
    "Every NSQ source needs a `Spectrum` — a probability distribution over wavelengths\n",
    "(in **micrometres**). The simplest case is monochromatic light:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "d4e5f6a7",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-08-18T17:44:12.641339Z",
     "iopub.status.busy": "2026-08-18T17:44:12.641339Z",
     "iopub.status.idle": "2026-08-18T17:44:12.645590Z",
     "shell.execute_reply": "2026-08-18T17:44:12.645590Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Wavelength: 0.550 µm\n"
     ]
    }
   ],
   "source": [
    "# 550 nm = 0.55 µm — green light\n",
    "spec = Spectrum.monochromatic(0.55)\n",
    "print(f\"Wavelength: {spec.wavelengths[0]:.3f} µm\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e5f6a7b8",
   "metadata": {},
   "source": [
    "## 2. Building the Scene\n",
    "\n",
    "An `NSQScene` contains three kinds of objects:\n",
    "- **Sources** — emit rays into the scene\n",
    "- **Components** — optical elements that redirect rays (lenses, mirrors)\n",
    "- **Detectors** — record rays that hit them\n",
    "\n",
    "Each object has a **`CoordinateSystem`** that defines its position and orientation.\n",
    "All coordinates are in **millimetres**; rotations `rx`, `ry`, `rz` are in **radians**.\n",
    "\n",
    "Here we set up a simple system:\n",
    "```\n",
    "Point source  →  Biconvex lens  →  Irradiance detector\n",
    "   z = -100         z = 0              z = 92\n",
    "```\n",
    "\n",
    "Two choices in that layout are worth spelling out, because getting either wrong\n",
    "is the most common way a first NSQ scene produces a meaningless picture.\n",
    "\n",
    "**The source has to fit the lens.** A point source 100 mm from a lens with a\n",
    "12.5 mm semi-diameter fills the aperture at `atan(12.5/100)` = 7.1°. Ask for a\n",
    "wider cone and the surplus rays sail straight past the glass to the detector,\n",
    "where they swamp the image with light that never went through the lens. We use\n",
    "6°, which underfills the aperture slightly.\n",
    "\n",
    "**The detector has to be at the image.** This lens has f = 49.1 mm, so an object\n",
    "100 mm in front of it images to roughly 96 mm behind it. Spherical aberration\n",
    "pulls the tightest spot slightly inside that, to about z = 92 mm. Put the\n",
    "detector at, say, z = 200 mm instead and you measure a defocus blur.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "f6a7b8c9",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-08-18T17:44:12.646595Z",
     "iopub.status.busy": "2026-08-18T17:44:12.646595Z",
     "iopub.status.idle": "2026-08-18T17:44:12.695776Z",
     "shell.execute_reply": "2026-08-18T17:44:12.695776Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Scene components: ['L1']\n",
      "Sources         : ['S1']\n",
      "Detectors       : ['D1']\n"
     ]
    }
   ],
   "source": [
    "scene = NSQScene()\n",
    "\n",
    "# --- Source -----------------------------------------------------------------\n",
    "# PointSource at z = -100 mm, emitting a 6-degree cone toward +z. At 100 mm\n",
    "# that is a 10.5 mm beam radius, just inside the lens semi-diameter of 12.5 mm.\n",
    "scene.add_source(\n",
    "    'S1',\n",
    "    CoordinateSystem(z=-100),\n",
    "    PointSourceConfig(spectrum=spec, total_flux=1.0, half_angle_deg=6.0),\n",
    ")\n",
    "\n",
    "# --- Lens -------------------------------------------------------------------\n",
    "# Biconvex N-BK7 lens at z = 0 mm\n",
    "# r1 = 50 mm (front), r2 = -50 mm (back), center thickness = 5 mm\n",
    "# semi-diameter = 12.5 mm\n",
    "scene.add_lens(\n",
    "    'L1',\n",
    "    CoordinateSystem(z=0),\n",
    "    LensConfig(r1=50, r2=-50, thickness=5, material='N-BK7', front_aperture_radius=12.5),\n",
    ")\n",
    "\n",
    "# --- Detector ---------------------------------------------------------------\n",
    "# 4 x 4 mm irradiance detector at the image plane. Sized to the spot, not to\n",
    "# the lens: the image is a few tenths of a millimetre across, so a 20 mm\n",
    "# detector would spend 128 pixels resolving mostly empty space.\n",
    "scene.add_detector(\n",
    "    'D1',\n",
    "    CoordinateSystem(z=92),\n",
    "    IrradianceDetectorConfig(width=4, height=4, num_pixels_x=128, num_pixels_y=128),\n",
    ")\n",
    "\n",
    "print(\"Scene components:\", scene.component_names)\n",
    "print(\"Sources         :\", scene.source_names)\n",
    "print(\"Detectors       :\", scene.detector_names)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4e097b37",
   "metadata": {},
   "source": [
    "### View the current scene\n",
    "\n",
    "`scene.view()` draws a cross-section through the scene and overlays a sample of\n",
    "traced rays. `color_by='bounce'` gives each leg of a ray path its own colour, so\n",
    "you can see the beam enter the glass, leave it, and converge on the detector —\n",
    "the non-sequential path, rather than a surface-by-surface list.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "771812fb",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-08-18T17:44:12.697781Z",
     "iopub.status.busy": "2026-08-18T17:44:12.697781Z",
     "iopub.status.idle": "2026-08-18T17:44:12.922154Z",
     "shell.execute_reply": "2026-08-18T17:44:12.922154Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAADLCAYAAABzqfCdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAADr9UlEQVR4nOy9d7xdR3ku/Mzqu5x+JFnNDTdcABsRaogxoRmDqQZiuBQbLnAvPRQHPmNIghNI4JdAbsw1CQYHTEhwAGNCwiWhB2NDCNiE4iLLkmVJp+6z22oz3x8z76xZa+99dGRLtmTm0e9o773qrJlZe6/nfd7ChBACFhYWFhYWFhYWFhYWFhYWBx3OA90ACwsLCwsLCwsLCwsLC4sHKyzptrCwsLCwsLCwsLCwsLA4RLCk28LCwsLCwsLCwsLCwsLiEMGSbgsLCwsLCwsLCwsLCwuLQwRLui0sLCwsLCwsLCwsLCwsDhEs6bawsLCwsLCwsLCwsLCwOESwpNvCwsLCwsLCwsLCwsLC4hDBkm4LCwsLCwsLCwsLCwsLi0MES7otLCwsLCwsLCwsLCwsLA4RLOm2sLCwsLCwsDgCcdlll+FZz3rWA90MCwsLC4v9wHugG2BhYWFhcXjjuuuuw/ve9z4EQYAvfvGLWL9+fWn9a17zGiwtLeHzn/+8XpamKf7xH/8R1113HXbt2gXGGNavX4+HP/zhuPDCC3HssceWjnHbbbfhqquuwk033YSlpSVMTEzgUY96FF75ylfi+OOPX1M7FxcX8Td/8zf4j//4D9xzzz2o1+vYuHEjtm3bhosvvhj1ev0+98WRjO3bt+NLX/oSbrjhBuzcuRO1Wg2nnHIK/uf//J849dRTS9tedtll+MpXvqI/12o1TE9P4+STT8bTnvY0POlJT4LjrN1u/8tf/hJ/93d/hx//+MdYWFjQ537605+OZz7zmXBd96Bd56FEt9vF1VdfjW984xu4++67EYYhNmzYgLPOOgsvf/nLsW7duoN+zn379uHaa6/F2WefjZNPPvmgH9/CwsLC4tDDkm4LCwsLizUhSRJcddVVeMc73rHfbd/xjnfg+9//Pp761Kfiuc99LrIsw/bt2/Hd734XD3vYw0qk+9/+7d/w7ne/G+Pj4zj//POxadMm7N69G1/60pfwjW98Ax/4wAdw9tlnr3q+5eVlvOxlL0On08Gzn/1sHHvssVheXsavf/1rfOELX8ALXvCC33jS/cUvfhFf+tKXcM455+AFL3gB2u02rr32Wrzyla/EX/7lX+LRj350afsgCPCe97wHABDHMXbv3o3vfOc7eOc734lHPvKR+PM//3M0m801nffyyy/H9PQ0zj33XGzduhXdbhc33ngj/vAP/xBzc3N41atedUiu+WAiyzK8+tWvxvbt23HeeefhRS96EXq9Hm677TZ87Wtfw9lnn33ISPeVV16JTZs2DZDu97znPeCcH/RzWlhYWFgcXFjSbWFhYWGxJpx00kn44he/iFe+8pWrkotbbrkF3/nOd/D6179+gEzleY6VlRX9eefOnbj00kuxefNmXHnllZiamtLrXvKSl+Diiy/GpZdeimuuuQabN28eec4vfelLuOeee/A3f/M3ePjDH15a12634fv+gV7ugw5Pe9rT8JrXvKZkfHj2s5+NF77whfi///f/DpBu13Vx7rnnlpa9/vWvx1VXXYWPfexj+OM//mNcfvnlq57zZz/7GS6//HKcccYZ+Iu/+As0Gg297vd+7/fw85//HLfddtvI/bMsgxDisBi/b37zm/jlL3+JP/qjP8LTn/700ro4jpGm6f3eJs+zj3EWFhYWRwJsTLeFhYWFxZrwqle9Cnme46qrrlp1u507dwLAAPkFJJGbnJzUnz/96U+j3+/j3e9+d4lwA8Dk5CT+4A/+QLv07u+cruvijDPOGFjXbDYRhmFp2c0334w3vvGNeNKTnoQnPOEJePGLX4xrrrmmtM327dvxjne8A+eccw4e97jH4WUvexm+9a1vlba57rrrsG3bNvzkJz/Bhz/8Yfzu7/4unvCEJ+D3f//3sbi4ONCW733ve7j44ovxhCc8AU984hPxpje9aVXSeTDx0Ic+dEDtn5ycxCMe8Qhs3759zcd5xStegcc85jH4f//v/+HOO+9cddsrr7wSAPBHf/RHJcJNOPXUU3VM8t13341t27bh6quvxmc/+1mcf/75eNzjHofbb78dAHDjjTfqvjv77LPx1re+FXfccUfpeJ1OB3/+53+OZz3rWXjsYx+LpzzlKXj961+PX/ziF3qbHTt24O1vfzue9rSn4XGPexzOPfdcXHLJJWi326tey2rzOgzDAdV/LfMHAFZWVkptPvfcc3HppZdiaWkJN910E/7H//gfAID3ve992LZtG7Zt24brrrsOwPCY7l6vh4985CN45jOficc+9rF43vOeh6uvvhpCiNJ227Ztw5/+6Z/im9/8Ji644AI89rGPxQUXXIDvf//7q/aDhYWFhcWBw5JuCwsLC4s1YdOmTXjmM5+JL37xi9i3b9/I7TZu3AgA+NrXvoYsy1Y95ne+8x1s2rQJZ5555tD1Z511FjZt2oTvfOc7qx5n48aNyPMcX/3qV/dzFcAPfvADvPrVr8Ydd9yBF7/4xXjzm9+Mbdu2lc5x22234RWveAW2b9+Ol7/85Xjzm9+MWq2G3//938e///u/DxzzQx/6EH7961/j1a9+NV7wghfgO9/5Dj74wQ+Wtrn++uvx5je/GfV6HW94wxtw0UUX4Y477sDFF1+Mu+++e7/tPlSYn5/HxMTEAe1z7rnnQgiBG264YeQ2/X4fP/zhD3HWWWfhqKOOWvOxr7vuOvz93/89nvvc5+LNb34zJiYmcMMNN+B//+//jYWFBbzmNa/BhRdeiJ/+9Ke46KKLSn13+eWX4x//8R9xzjnn4J3vfCde+tKXIgxDTc7TNMUb3vAG3Hzzzbjgggvwjne8A8997nOxa9eukgfGMNA1XH/99QMEtoq1zp9ut4uLL74Yn//85/GYxzwGb3vb2/C85z0P27dvx549e3Dcccfhta99LQDguc99Lt7//vfj/e9//8j7RQiBt771rfjsZz+Lxz72sXjLW96CY445Bn/xF3+BD3/4wwPb/9d//Rf+5E/+BE996lPxxje+EXEc4x3veAeWlpZWvT4LCwsLiwOD9UuysLCwsFgzXvWqV+H666/Hpz71Kfz+7//+0G3OOOMMnHXWWfinf/onfPvb38a2bdvwiEc8Ar/9279dIl/tdhv79u3D7/zO76x6zhNOOAHf/va30el0hqqlgHST/uxnP4vLLrsMV111FR75yEfizDPPxBOe8ISSApnnOS6//HLMzs7is5/9LMbGxvQ6k0j9+Z//OY466ih8+tOfRhAEAIAXvvCFuOiii/DRj34UT3rSk0rnn5iYwF/91V+BMQYA4Jzj7//+79Fut9FsNtHtdvFnf/ZneM5znoN3v/vder/zzjsPz3/+8/HJT36ytPz+wn/+53/iZz/7GS666KID2u8hD3kIgEL9HYa77roLWZbhhBNOOKBj79mzB1/84hdLng9vfetbMTExgU9+8pPaQHD22WfjwgsvxMc//nG8733vAwB897vfxXOe8xy85S1v0fu+/OUv1+9vv/127Nq1C3/yJ3+C3/3d39XLX/3qV++3XWeffTaOOeYYXHHFFfjSl75UmtfT09Olbdc6f66++mrcdttt+NCHPlSaUxdffDGEEGCM4XGPexyuuOIKPOxhDxtw96/iW9/6Fm688Ua87nWv02N6wQUX4J3vfCc+97nP4UUvehG2bNmit7/jjjvwD//wD3rZtm3b8JKXvAT/8i//ghe96EX77RMLCwsLi7XBKt0WFhYWFmvGli1bcO655+Kf/umfMDc3N3Qbxhg+9rGP4XWvex3GxsbwL//yL/jTP/1TnHfeebjkkku0otjpdABgvwnOiGh3u92R28zMzOCaa67B85//fKysrOALX/gC3vOe9+ApT3kKPvGJT2hC/ctf/hK7du3CS17ykhLhpnYDMinbjTfeiN/93d9Ft9vF0tISlpaWsLy8jMc+9rHYsWMH9u7dW9r3ec97nt4fAM4880zkeY7du3cDAG644QasrKzgaU97mj7e0tISXNfF6aefjptuumnVPjgUWFhYwHve8x5s2rRJuzCvFTRmq43JWse3inPOOadEuOfm5vCrX/0K5513XkmRP/HEE/HoRz8a3/ve9/SysbEx3HLLLSM9McgA84Mf/AD9fv+A2hVFET71qU/hZS97GQCpyP/hH/4hnv70p+ODH/wgkiQBcGDz5xvf+AZOOumkASMOgNJ8Wiu+973vwXVdvPjFLy4tf+lLXwohRKmvAOC3fuu3SiT8xBNPRKPRwK5duw743BYWFhYWo2GVbgsLCwuLA8JFF12Er371q7jqqqtGqt1BEOCiiy7CRRddhLm5OfzoRz/C5z73OXz961+H53n4wz/8wzWRaUCSN8ZYKRZ8GGZnZ3HJJZfgXe96F3bs2IH/+I//wKc//WlcccUVmJ2dxXOe8xytzJJSOwx33XUXhBC44oorcMUVVwzdZmFhoVQ6reo+TYS+1WoBkHHEALSrcBWjFHxAqvPV+HAin8vLy6XlU1NTayq/1ev18OY3vxmdTgef+MQnDpgY05ittt9ax7eKasI8Mlwcc8wxA9see+yx+I//+A/0ej3UajW88Y1vxGWXXYZnPvOZOOWUU/D4xz8ez3zmMzWx3Lx5My688EJ85jOfwT//8z/jzDPPxBOf+ESce+65mpAvLy+XkqJFUaTXNZtNvOlNb8Kb3vQm7N69Gz/84Q/xd3/3d/j85z+PZrOJ17/+9Qc0f3bt2oVzzjnngPpnNdxzzz2YnZ0dmE/HHXecXm9imNv/+Pj4fl3tLSwsLCwODJZ0W1hYWFgcEEy1+xWveMV+t5+dncXTnvY0PPnJT8YFF1yAr3/963jve9+LZrOJdevW4dZbb111/1tvvRXr169fcwZrxhiOOeYYHHPMMXjCE56A5z3vefjnf/5nPOc5z1nT/qSKv+xlL8NjHvOYodts3bq19HlUzWo6Fr2+//3vx8zMzMB2qxHlPXv24NnPfnZpGZG5Kon/8pe/jE2bNo08FiDjmt/+9rfj1ltvxUc/+tEDdv8GoJO/VfvBxNatW+G67n7Ht4pq0rsDwVOe8hSceeaZ+Pd//3f84Ac/wNVXX41Pf/rT+OAHP4jHP/7xAIC3vOUteNaznoVvfvObuOGGG/Bnf/ZnuOqqq/DJT34SGzZswNvf/nb8+Mc/1sc877zzcNlllw2ca+PGjTj//PPxpCc9Ceeffz6+9rWv4fWvf/29mj8PFPY3by0sLCwsDg4s6bawsLCwOGCQ2v2pT31qzft4nocTTjgBO3bswNLSEmZnZ/Hbv/3buPbaa/GTn/wEj3jEIwb2+c///E/cfffduPDCC+9VO7ds2YKxsTHtCk+K52233TZQIotASqvneSO3uTftAIDp6ekDPubMzAz+6q/+qrTspJNOAoCB5cMIvQnOOS699FLceOONuPzyy/HIRz7ygNpC+OpXvwrG2KrXEkURHvWoR+HGG2/EPffcc0DJ1ExQYr5hmdLvvPNOTE5Oolar6WWzs7N44QtfiBe+8IVYWFjAS1/6Uvzt3/6tJt2AzBNwwgkn4OKLL8Z//dd/4aKLLsIXvvAFvP71r8db3vIW7aEAYL+1t8fHx7FlyxZtiDiQ+bN58+b9Zq8/EDfzo446Cj/84Q8H8h9Qdvp7OwYWFhYWFvcNNqbbwsLCwuKAQWr3tddei/n5+dK6HTt2DLixArI00s9+9jOMj4/rmN2XvexliKIIH/jABwYyJi8vL+Pyyy9Ho9HABRdcsGp7br75ZvR6vaHLl5eXtWvyKaecgs2bN+Oaa64ZcKEldW96ehqPfOQjce211w6NWx9WCmx/eMxjHoNGo4G//du/HZrRfbVjhmGIRz/60aW/8fFxjI+PDyzfn0r8oQ99CF//+tfxzne+8167NV911VX4wQ9+gKc85Sk4+uijV92WEpRdeumlQ93M//u//xtf+cpXVj3G7OwsTjrpJFx//fWlMbv11lvxgx/8QJPpPM8Hyn5NT09jdnZWu4u32+2B/j/hhBPgOI7e5qEPfWipT48//ngAwK9+9auhWb13796N22+/Xc+xA5k/T37yk/GrX/1qaEZ8mo9kUFiLy/fjH/945HmOz3/+86Xln/nMZ8AYKxkeLCwsLCzuP1il28LCwsLiXuFVr3oVvvrVr+LOO+/UxASQ5OQ973kPHve4x+HMM8/E+Pg49u3bh6985SvYt28f3va2t2l36q1bt+J973sf3v3ud+PFL34xzj//fGzatAm7d+/Gl770JbRaLXzgAx8YiPOt4vrrr8fXvvY1nH322XjoQx8K3/dxxx134Mtf/jLCMMSrXvUqANKd9l3vehfe8pa34Pd+7/fwrGc9C7Ozs9i+fTtuv/12fOxjHwMAvPOd78TFF1+MF73oRXjuc5+LzZs3Y35+Hj/72c+wd+/egZre+0Oz2cQll1yCSy+9FBdeeCGe+tSnYmpqCvfccw+++93v4uEPfzje+c53HtAxDxSf/exn8Q//8A942MMehiiKBsqrPelJTyopxmYJtiRJsHv3bnz729/Gr3/9a2zbtm1N2dYf/vCH4x3veAf+9E//FC94wQtw7rnnYuvWreh2u/jRj36Eb3/723jd61633+O86U1vwhvf+Ea88pWvxPnnn484jvH3f//3aDabeM1rXgNAxo6fe+65ePKTn4wTTzwR9XodP/zhD/Hzn/8cb37zmwEAN910Ez74wQ/iyU9+Mo455hhkWYavfvWrcBxnv0aIG264AR//+MfxxCc+EWeccQZqtRp27dqFL3/5y0jTVLcDWPv8ednLXoZvfOMbeNe73oVnP/vZOOWUU9BqtfDtb38bl1xyCU466STtrfGFL3wB9XodtVoNp59++tB74olPfCK2bduG//N//g/uvvtunHTSSfjBD36Ab33rW3jJS15SSppmYWFhYXH/wZJuCwsLC4t7ha1bt+IZz3jGgFJ51lln4bWvfS2+//3v4zOf+QwWFxfRaDRw8skn4w1veAOe/OQnl7YnAnTVVVfhi1/8IhYXF8E5RxiGuPrqq0uEfhSe//znI4oi3Hjjjfj2t7+NdruNqakpPOYxj8ErXvEKnHLKKXrbxz72sbjiiitw5ZVX4jOf+Qw459iyZUsp5vv444/Hpz/9aVx55ZW47rrrsLy8jOnpaZx88sm4+OKL71V/Pf3pT8fs7Cw+9alP4eqrr0aapli3bh3OPPPMgZjtQ4Ff/epXAICf/vSn+OlPfzqw/stf/nKJdCdJgksvvRSAdBWfnp7GKaecgosvvhhPetKTRsYDV/H85z8fp512Gv7u7/4O119/PRYXF1Gv13HKKafg0ksv3W8ZLAB49KMfjY9+9KP4+Mc/jiuuuAKe5+Gss87CG9/4Rk0+oyjCC17wAtxwww3493//d3DOsXXrVrzrXe/CC17wAgAyO/djHvMYfOc738G1116LKIpw4okn4i//8i9xxhlnrNqGc845B91uFz/4wQ9w0003YXl5GePj4zjttNPw0pe+FNu2bdPbrnX+1Ot1XHnllfj4xz+Ob37zm/jKV76C6elpPOpRj9KJ+jzPw2WXXYa/+qu/wuWXX448z/He9753KOl2HAcf/vCHccUVV+DrX/86rrvuOmzatAlvetOb8NKXvnT/g2VhYWFhcUjAhM2WYWFhYWFxmOErX/kK3ve+9+EZz3gG3v/+9z/QzbGwsLCwsLCwuNewSreFhYWFxWGH8847D3Nzc/jYxz6GDRs24H/9r//1QDfJwsLCwsLCwuJewSrdFhYWFhYWFhYWFhYWFhaHCDZ7uYWFhYWFhYWFhYWFhYXFIYIl3RYWFhYWFhYWFhYWFhYWhwiWdFtYWFhYWFhYWFhYWFhYHCJY0m1hYWFhYWFhYWFhYWFhcYhgs5dXwDlHu91GEARgjD3QzbGwsLCwsLCwsLCwsLB4gCCEQJIkaDabcJx7p1lb0l1Bu93GRz7ykQe6GRYWFhYWFhYWFhYWFhaHCd7ylrdgfHz8Xu1rSXcFQRAAkJ0ahuED3JrhEEKg3W6j2WxaNf4whx2rIwd2rI4c2LE6cmDH6siBHasjB3asjhzYsTpysNpYxXGMj3zkI5on3htY0l0BdXIYhoc16U7TFGEY2hv4MIcdqyMHdqyOHNixOnJgx+rIgR2rIwd2rI4c2LE6crCWsbovY2gTqVlYWFhYWFhYWFhYWFhYHCJYpdvCwsLCwsLifoUQAr/+9a8Rx/HIbcbGxnDsscfef42ysLCwsLA4RLCk28LCwsLCwuJ+xc6dO3HNNdfsd7u3ve1taDab90OLLCwsLCwsDh0s6bawsLCwsLC4X7F9+3b4vo8LLrhgaIxcr9fDF77wBezYsQOnnnrqA9BCCwsLCwuLgwcb021hYWFhYWFxv+LOO+/E+vXr4fs+PM8b+BsbG8PY2BjuvPPOB7qpFhYWFhYW9xmWdFtYWFhYWFjcb+CcY8eOHTjqqKNW3W7Dhg2WdFtYWFhYPChgSbeFhYWFhYXF/Ybdu3cjTVNs2LBh1e02bNiAPXv2oN/v308ts7CwsLCwODSwpNvCwsLCwsLifsOOHTvgeR5mZmZW3Y5I+Y4dO+6PZllYWFhYWBwyWNJtYWFhYWFhcb9h586dmJmZgeu6q243NjaGer1uXcwtLCwsLI54HFGk+8c//jHe8pa34OlPfzq2bduGb37zm6X1QghcccUVeNrTnobHP/7xeP3rX28t5BYWFhYWFocRdu7cidnZ2f1uxxjD+vXrsXPnzvuhVRYWFhYWFocORxTp7vV6OPHEE/HOd75z6PpPfepT+NznPodLLrkEV111FaIowhve8AbEcXw/t9TCwsLCwsKiina7jVarhXXr1q1p+9nZWezevRuc80PcMgsLCwsLi0OHI6pO9+Mf/3g8/vGPH7pOCIFrrrkGF110Ec4++2wAwPvf/3489alPxTe/+U087WlPux9bamFhYWFhYVEFqdZrJd0zMzNI0xRzc3NYv379oWyahYWFhYXFIcMRRbpXw65duzA/P4/f+q3f0suazSZOP/10/OxnPxtJupMkQZIk+jOp4kIICCEObaPvJahth2v7LArYsTpyYMfqyIEdqyMH1bHauXMn6vU66vX6mvanZGu7du1aM1G3uHew99WRAztWRw7sWB05WG2sDsb4PWhI9/z8PAAMZEOdnp7W64bhk5/8JK688kr92fM8POMZz0C73UaapoemsfcRQgj0ej0AMubN4vCFHasjB3asjhzYsTpyUB2rHTt2YHZ2ds3jFgQBJiYmcOedd+KEE044lE39jYe9r44c2LE6cmDH6sjBamN1MEKVHzSk+97ila98JS688EL9OY5jfOxjH0Oz2UQYhg9gy0aDrC3NZtPewIc57FgdObBjdeTAjtWRAxqrRqOBOOPYs2cPjj96E9DaBddhAOiPXhigx5Qh4RnGx0Pcc89uNBoNO96HEPa+OnJgx+rIgR2rIwerjZXv+/f5+A8a0k0K9/z8fCkr6sLCAk466aSR+wVBgCAI9GfqVMbYYX1zUPsO5zZaSNixOnJgx+rIgR2rwwNJxtGJUyz1Usy3Eyx0Eix2Eyx1U7T6KZZ7KRbbffRzwOnMY0uSwN/+DYwvfQY1VyZHK5z2mObf9GYny7C7O4N0+VS8+RtvwnhtAuPhOCbDSUyFU5ipzWC2Not1tXWYjCYRuZGdE/cB9r46cmDH6siBHasjB6PG6mCM3YOGdG/evBkzMzO48cYbcfLJJwOQWVJvvvlmPP/5z3+AW2dhYWFhYXFkIOcC3STDci/FfCfBYkeS6aVugqVuhlY/xUo/RTvO0EtypDkHV8yZMcB3HUSeg0bkYyx0sWkixLqJBrzlDu7aB2w588noTQSIGcAEB4RAiXrrZUBNJDhz3z7cuJzhtOhUdGo9LPeXsbu9G92sizRPIdS+LnMReRHGgjFMBBOYjCYxGU1iJprBTDSD9fX1mAqnUPfr9uHXwsLCwuJ+xRFFurvdLu666y79edeuXfjlL3+JiYkJHHXUUXjJS16Cv/mbv8HWrVuxefNm/PVf/zXWrVuns5lbWFhYWFj8JkIIgV6aY6WXYb6bYKEdY6GbYrGTYLknVemVXoaVOEU3zpHkHDkviLDvOvA9hrHQRzPysG4sxEPWNzFVCzDZ8DFdDzDTCDDVCNAIPYSeA8YYhBBot9toNpv4znd2YW8YYv2pv4P0AEjvCRtj3HjLNXjsxOPxsIc9TC9PeYp20sZcbw77uvsw35/HQn8BS/0lLCfLuHXpVrSTNpI80cTcYQ5CN9TEfCKcwFQ0henaNGbCGayrr8NsbRYN37qyW1hYWFgcPBxRpPvnP/85Xvva1+rPH/nIRwAA5513Hi677DK8/OUvR7/fxwc+8AGsrKzgEY94BP7yL//ysI3NtrCwsLCwuLcQQiDJOTr9DAvdFPOdGIvtBAtdSaSXeylavRQr/QydJEOccWR5QaRdh8F3HTRCF2Ohh7HIx+apGibrPqZqPqYaIWaaPqYbIcYiD5HnwnH2T0RzLtBJcnSTDN04w9xSG85Ciltu3QE/8HHXD7+IU9Y3BlzJRSWeG5Ck/Ue9W+FHNdyy/RY0jm6g4TdQ9+uoe3VMRVOYiqZw4tSJI9qSo522Md+bx1xvDnP9OSz2FrHQX8Bysow7W3fi5rmbEfO4lJ2WiPl4OI6JQBHzaBqz0SxmalI1HwvGLDG3sLCwsFgTjijSvW3bNtx0000j1zPG8NrXvrZEzC0sLCwsLI4kZDlHJ86w2E2x0Emw0Imx2E2x2E3Q6km373YsVek44Uhzrp2zHcbguwy1wEVTEenj10WYqPmYrPuYbgRSlW4GGK/5qAeeSmg2GkII9FOOxW6CbpKjl+boKlLd6WdYUuS+1U/R6mfoxBnSXCDLZdt6cQrHdXH0ru2YcPvw77kL9U57P73AAAgk4IixgsQ5DT+9dQHfa3wPgRPAd314joeG3yhcycNJTEfTaPgN/Vf363KbcALHTx4/8vq6aRfz/XmtmM/357HYX8RyvIy7O3fjl4u/RC/rlYi57/iSmAfjmAgn5Plr05iJZrCutg7r6uswEU7AYc7aB9/CwsLC4kGJI4p0W1hYWFhYHIngXLp3L1PCsW6MhU6KpW6C5W6K5b5UpNv9FN1KnDQABK6D0HfQCD2MRx42TUaYqI1hshZgsu5jphlguhFgqhagEXnw3dFEjxTyXpJjT6svibQi0e04K6nkRKKTTBLolEsynanGOWDwXKmY+y6D5zqoBy7WNT2M1XyMRx5ClmNmLMK3Pp/j5JOOwzEPeTRasiGldjH9ufz6JCGQ3nI7ds/FeOLxZ2n38eV4Ge2kjeV4Gbct34Y0T5FyGePtMhe+48N3ffiOj4bfwHggE7AROR8Px0vkfFNzE44eP3pkv8VZjLn+HOa6UjGf70livhQvYV93H25bvg3dtAsuuN7Hczw0/SbGg3GdAG46UsS8vg6z9VlMh9NwHXetU8nCwsLC4giEJd0WFhYWFhb3AkIIxBlHqydduxc6KRY6MZa6aUFc+xnaRFwrcdKewxB4Lpqhi2bkYaYR4PjZBibrPibrUpGebgSYbgZoGnHSw5DmHL1UkufFxR66iUxy1o6lEr3cVSQ6TtHuZ4jTConOBYRKHu67Dnzleu65DDXfxeR4hImah/HIx0RdkulG6CHyXdQDD/XAVe/dEuEXQmBlZQWLSy18C0B9ehPS+oxWf4UuF1a5LsPNXAiB6Q0Z7rjrv3HOpnNKIWNccPSyHrppF520g27WRSfpYDlZxlJ/CUvJEpbjZbTiFna1d2H78nakPEXCE+Qih8e8Ejk3CfJUNIWpcAqT0STG/DHU/TrGgjFsqG+A5wx/fErzFAv9Bezr7cNcbw4LvQUsxAtYjBex1F/CjtYOtNN2iZg7zNFGAVLMp6IpmQCuNoP1tfWYrc+OPKeFhYWFxeEP+w1uYWFhYWFhIMk4ukmG+U6M+bYk0oudFMv9BMs6e3eGdpwOxEk7jCHwpNo7Fqk46ckIE7UAU3UfUw1FpBsBJmo+ar47lEjnShmXcdE55toxukmu3blNJXqln6KX5Mg4R5oLpESi1bF8tyDQvuMg8h3MjgUYjwJJpGs+Jmo+mqGHWuCipog0vQ+8MolOco5+okg+Ef1ugr5yPadlfeWGvtzpAcu7AQDZL76KeqsGz92/S/u8iLGdt7E9b2Ox5wI4Gfv27cOWLVuM/na0Wr0O61Y9XsITdNOuJOZpp0TOF2PpSt5KWri7czfubN2JhCdIeYqMZyOV84lwooj5rk1jIphA3a/jmPFj8NDphw5VsHOea3V8X28f5nvzWIgXsNxfxlKyhN2d3ViJV5CJTO/DwDTpnwwnMRFOYDqalqp5Tbmz19Yh9GwOGwsLC4vDEZZ0W1hYWFg86JFzgU6c6jjp+bYsgbWoyOtyryDS/UqcNAPgew5qvoqTrnk4dqaBibqHqbpy726EmGlKIj0sTpriortJhm6SY6WfYU8rRle5cy/pNlA7MhUTXZDoXAhZkstxDJduWZ5rphlgLFIEOpJtakaeItAuaoGLui+JtO8ynVk8zSW57yui3EtzLPVS3LPc1wS6n0qCTaTaVOsBgYwLOGBwHfnHmDQ+yLBsAQcAX9kNlwlsnW6AsbzwLGdmHzEs8D628w625ytoiRSh4+IYp4kTaj6+BeDfbv5nHCtORs2voe7VUfNqqHk1RF6EmldD6IZDjRiMMYRuiNANMYWp/cyVHN2sWyLoS/GSdiVfipewEq9gb28vdq7s1OQ85SkcOPAcD4EbaHKuibKKPZ8KZVK2yWgSm8c2o+7VB8g55xzLybJWzMmVfbG/KDOzL96KVtpCmqel/ep+HWO+SgAXTsha5koxn63NYn19PWpezSaAs7CwsLifYUm3hYWFhcURCSqD1VJx0vOdBItdqUpTcq+VuHDvrsZJ+66D0HPQjDyMhR42Tsg46YmaTDg21Qgw2wwwVZdlsKpu0xQX3VV/i50UOxd6WOolisibqniGJMuLBGNcaPLqOQWB9l2G0HMxXQ+0Uj5Z9zBRCzAW+QWBVip0LXARqHZVCXQ/k6/3tFK1rFCnhxFoISSBFqpNriOVZOLPOZcGgCTnSDOBJM8RpzkSZRhIMoE4U+XGcoALgVxw5HmOh67MYYPoItj9IwReFx7j2oO8gxxzyLGADD1wBGB4LDzMwkcTDAwMP3YyCGcaN95xE76afQMuc+E4DgIWIHADhF6IyJXEeywY00r0eDiO8WAcdb+uiTmR9ciLEDjBAAF1HRdjwRjGgrH9zr84jwfc2hd6CyXlfClewu727hI5F0IMuLVTUrbJUNYXn46mMRVN4fiJ43HG7BkD5FwIgU7awd7uXk3M5/vz2jBwZ+tO3BzfjH7eL7U7ciM0g6ZW6elcM9EMGqKBo/2jMR6OW2JuYWFhcRBhSbeFhYWFxWEDIrMr/Qzz7Vhl706w2JVJx1q9DMv9FEvtHmLOkGTlOGnXYQhcB83QQ7Mmlehjp+uYVIr0dEPWk55uhBireQjcIk7ajIum7NxzKzFu29uRmcNVLetWX2YP13HRKrFYqtzMtQrtyMRioefIklyTESYiX7tzkypOJJriokPPQabcy6su261+ir0rfak+J3mJZGe8SECWcYE8F+AAfEcq246qyCUAZIr8E2GO1XEyIRSh5kizHAmXqmvOhVSnZVJxSag5kOV5cVDIbQQEBBiEGs885xB5hiVRx035Q3Bq8gtsitqIkaCNFJkQcBmwFT6azEON0aMJxzzj+LETY084jtzrwI8D5DxHznKIXKCHIqM4B4cQAq7jwoULRt4GQhoPXOYicBVJV6p3zathPBzXJHs8kCS94TdKCjqRdc/x9HxhjCHyIkRehBnMrDqvM55p9byTdLAYL2rleilZQitpoRW3sKe7B0muyHluJIWruLUPS8x29PjRMilchZz30h729vZirjsnM7P35mWMebyEXe1d+MXiL9BNu2qscriui8ALpGJuZmaPpjFbm8VsfRbrauswHozbBHAWFhYWa4Ql3RYWFhYWhxxZztHuZ1joKkVa/ZnxyaRK97N8IE7adxkaoafKYHmYXdfAuokGpho+puohZhqBcu8OEPmSSHMdF62IdCrrRu9a6uOWu1tYUu7clOysl+RIVVw0lbsSYEqJLuKiA9dFM3KxfjzCeORpAi3jon3UAge1wENdKdEOA/oZRz/NB2Kh59qxfk8Eup/mmsCT+kzu7p7D4DD5BwhJnrmQ7c444pSjn+VSSVeKeppJdTrLBbgQhdovpMu6Js9UL1sI4tAQTH7mYIAQ4Fzuz0URM06klzg5tc9xmOToXKAu+khEjpa3gJ+GDD/3BOrMxXoRYiP3MM0cuIrRC123GwgAHMMCJLnAdreNsD+liR4XHJnIwDmH4zhw4EAwIUk5cjjqHwDkIkeCBN2sa1yjABdcknTmFqW9BOA4DlxIsksEPXADNIOmTLamiPpEMCFJetDQ5Nwk677jA5BZzIksozH6PhFCyMRwWRfdpIuFeAEL/QWpXvdVUri0he2t7ehlvRI5Z2DwHR+BG+j4bx13rlzNNzU34fTZ0zEejKPm1XRfJlmCfb19uHP+TnRZFwv9Be1Ov7e7F7ct3YZuVs7MbrrP0/Gnoinpyh5JV/aJcAK+66/1a8LCwsLiQQtLui0sLCws7hU4F+gmsp70fCfBQlvVk+4laBllsFb6GfqqDJYZDey7DmqBK1XgyMPR03VVT1omHSMiPVkPUA88SV5Tjk6cYn55BcwLZaKuforb9rXxox2KvKvkYh11zkypueRe7hmZuX3Xkcp45GG6EZRU6Imaj7HIzMztIXAZuBCSRJvu2up1qdsdSCYmCbR0JyeSzIWAqwg0YwAXhft2lnPEmSTPccIlMSYCnUu3bs6hybMQ8rrSnGtSrDiyWl+QYgFFmDmQC6VeQxQx1mobUsUL93K5gVwGMC7Vc8YEIBwwR0g1HQyOIxN/gQEuY/B5Bi8TmHB3YkN6D45DCxvgYgw+HAZA5BAshzk5yLG5CYGtIsNNjkDqdeB3N6OX9UrkT3Ahr1Fdt86MngsIJuRnBjDBNFFnYHCYA4c54IIj57n+zBhDznMkQpJ0of5BQJNb15EknaFQvV3manJOarqZDZ3U9IlwAk2/WSLpRNQ9x0Pdr6Pu14EacDRGlzBL81S7tS/Gi7q2+FJcKOd3t+/Grxd/LV3bFTkHpBFAk2Z/DGOhNCBEIsKGiQ04aeokzNRmMBlMou5L5TzJEiwmi9jXUQngjFrmS7HMzN5JO8hFrtvoOZ70Jqgo5mYCuKloamQsvoWFhcWDBZZ0W1hYWFhoUBmspW6i6kkrVbqbqlhl5V5tlMEyCZvnMERGwrGjxiOctMHT9aSnGyFmmvK1EbgQQCkuuptkOrHZLXe3JHHvZViJM3TiFIlSbeM4BWcOci7PaSYW8z2GZuBh00SEMeXOPVnzMVn3S3HRviuJF12zqThTrPieVr9IJJbmSDKu1WeKzRZCElHXYYo8S3fslAukKdfHztTyPFfKNLmAC/knlIKc5RyZAHguTM9ton5qnCTpFkqthmDmWj0mROrplektimRnTBFSxwEcSAJJKjVT+7mOoxKlyf1claU98GSfB540XniuXOeohGqewyDac8DtwL6NT8KY83hMdW7A5g01xM4wklWu3b3EE3w1uQud8eNQWxkDbvVx1vRZYD5DLnJwLkl0kif6L+YxsjxDLnJkIkPO5XaaDAogE5lWu+U1MoCra4ejibpWxDkvlqnPDEyTbQggFalW0ovxktdDSjoZBBhYkXDN9RE6IUJPkvSJYEKq1Iaa3gyaqPv1Mkl3I61ibxrbNPKe5oKjn/XRTtpYjBeLMmYqKdtKvIJ93X24Y/kOdOIO+N3lcma+4+sEbUTOKXv6cePHYbom3dubQRO5kJnZ57pzmOvJPzIELMfLuLt9NzppBykvEsC5zNWx+OQyrxPA1QtiXvNqhTeChYWFxREGS7otLCwsfgOQqjjpOR0nLetJU03pcsKvcpw0lcEi1+6puo9jplU96ZqP6WagY6XrgYuMU6buXGbn7svzLHZT3LnQrcRF50WGbqUEuw4zkosx+J6DRuBh/Vikk4tFLMNR0+MyLtqsYa3ITqzcuU237X3tGDsWegaBlonEMq1Ay+t2HflgL+OWOXIOJFmOOONIlAt3Jjg4R4l8c+V+LYRUkbNcqdS8UGGFIsqCMTBhKM/K7ZuU5+J/SZSJADtVoiqkmizJs1Kf1ZhRJnFAGgRctcwx3ksjhYNAq/4yDp32p208h8FTWdNdhyH0HES+q93uXTNuHMV5GYCVW2/FDgAv3xJjLPLhscchdVSNbmFcCO2kLAYMDBEEnsXPQgJgp2jj37GCE9hmhDOTJUKcI0fOc2Q8K5X6yrgk3SlPZQkuodzSeYaUp4jzWJJ1Lgk7F5Kc50Iej4PrNmYig+DSJV3HdStF32EOmCC3eKFfmfrHWUHSiXynWYpO2tHbFh4JMo7bZW7pPJR4LXBUTLoXohk0tYpM7uukpFdJ+mx9Fusb60d+R3DOsdhaBAJgMVnUCeFIzW4lLSz3l7FrZRe6WbeknAOFu7npcj4RTmBTcxNOmz0Ns7VZTIfTaAQNtJO2JuXz/XnpQt+XCeB+3f01OmkHSZ6UjBbaKGG4y1Nm9nW1dZiMJtHwG7aeuYWFxWEJ+81kYWFhcYQi5wLtviyBNUcx0kqRXu5lytVakttyoi1JhmQ9aQ/NyMN45GHDeKSItHTvnm6EmGr4CF0HAsq1O5HkfKmTYqmfYPdyH7/as4KVWLqRF/Wii9hoxgoC7TmOjs+eaQRKifYwEfmYqEvX8prvKvfmMonWKnSSY6mdYddSD7ft66CXyizaRIApqRkXAo5y3eZcKsIU3xxnXO8j3bcL9Tqn2GUAec41MZde4hTvzAxyJVEQZ0ooNgjGAAcMzCHfb6U+K7dtOACDA4dJ1dkxXNAdxuC6jiTMTK6jxHGk8PuuqxK4FaSZ1nuKPLsqRl3W4HbhOErJVn1e8Hqmr04YBgKu+iPOpGFlFFxHGmt4pwWHAbNiEW5MSmW1dyqfDfcJD0ANQB8yC/dyawnOeFZyMS+dl7k6mRiRXtN1mQuuCTuRciLaRMgzIQl7lmc6QVsuck3U01wRdp4U+6vXjGf6PPoPXLuiy55lunvpPQPTyjsX0pBAyx3mIOMZOlmnRM7pOlzmFtfLWBHf7QQld3eTDDcDqaqPh+PStdyLIGKBmXAGm5ub8ZCJh4x0+c55jk6q3NpV1vTleFm7mq8kK9jb3TtAnvX4+PWBjO0nTJ0gy6mpeuehE2IxWdSZ2XWcebKE7cvbcUt6C+I81vOAEuVRsrnJcBJT0RSmwinM1mcxW5vFVDiFZtBE4AZDr8vCwsLiUMGSbgsLC4vDCEII9JIci91EqdIpFruJVqSXDSIty2CVyYrnMtQDF81QxiNvma5jIvIw1ZCx0VM1H+ORh9CXD+j9LC/qRHdTLPcS3DHXwc/iFO1+LutFc7NeNAdQTizmu5K8T9R8bJmsqbho+Xm8FiBwC9JDJNh056Z46MW5LnppSxsISH1Oc6kWC+U2nXOBfhxDME8S6DRHkknyLEkTwFUMdw5FuA1FWyhlGYzpbNsSTBPm3IxzFhVCSMSZ1FzGdBIxBoA5UsV2HAYmBBzXAYOQybkYNHGWhBrKEOHoPvWV2uwrxTnwZAZ03yDNnivV5sB14HmOSl5GBE0ZLBi1nWk1XUD2X84FkkwgibOh85AxIPRcfe5QuZKHnovQdxC6jnwtbeMa20mSL4TAV1o/R7KyhN6pz71P90ZdCDg/vRrb1j0Rj3rYo5CJDHEWI86H/O1nuRl3TGPoQHpLBG6gia4eX1EQ3KoaTvNHE3aeaQJPy0zX9yRPSkQ/zdPC3V0I7TJvElXN13kxtjqeHAw5cjDOdJw5YwxxHst9tJdFEZvOGBswSviODxcuan4NgRcgcqNSsriJaEJ/nggndIb34yaOw6kzpw6Ny6bEcAv9hbJbuyLorbSFO1fuxC3zt6CX9QbGpO7VNYkmg8HRY0djKprCZDSJyI3AGMNyvKyJ+UJ/AcvxMna2d+IXi79AkifaEOIwRyaa8+q6fjoRc6plPh1Noxk09bEtLCwsDgYs6bawsLA4xKAyWEvdFPPtuMje3ZVu3S31uhIX7t0mz3Mdhsh3NJFeNxbixA1NTNQkiR6reaj5LiLfg+dA1oxWJF3Wq06w954VFRctj28mFxMCJQItSbSMy94wHmKs5ksluiaTivmeqxRbaJfoJOel8lWtfoZ7WjE6cVZSn4lEUxbtPJeZyhOVICzOiizbuVKhs6xQm7kRTy3AILjQiiElCoPKus15QTTL41Goy5JwkBuwcvuGUGq0Up/JLViNRfHnFDHORq3tcskwme3c9yRRDbwiNlrW5Pa0Kk3EuWiXuhZTZRYCnEP3DfVbFUPJcoU4B0OJcxGffTAIhxACy8stRLUalnoZRG8Rbt7DVM1HwSTLb/UHdf6FZBksaMIPJlGv19FqtSRJZD78wEcTzQNuV8pTJHmCftaXr3nldZXlAgIe8+DBg3CEVsUp/pmUZhO5kIniSAkn13MOqdJyLsk5h0zqxgVHzMuKepqnZSVeqfBE7mm/YWNAbSLvETDA4Y42NoBBXpsQWEqWBjwDHDhgTmGYYJDGCVLSQzdE5EVaPZ8ICwWdXN+bYRPrG+tH1khP8gSLfalsL8TS3dyMO9/d2Y1fLf5KJrerGMIiL0LTb+rzH9U4CqfMnKJrtPvMR8qlOz8R/6V4CXu6e3Db0m3Se0HFmTvMkS78Xqjd9auZ2aeiKYwFY6j7dRtnbmFhsSasiXR/+MMfPuADX3TRRZiYmDjg/SwsLCyOFGQ5x0o/xVwnwYJOOkYJx1Qpql6GlThFXImTJiWxEboYC2Wyry3TdUzWZLKvRijLTkWeC0Cgk0hFermbotWTGcN3LPTQ6WeIs3JcdM6FJH6GglpTJHrdTB1jUYCxyEPNlwp1oJRScibmXCDOyzHRe1f6uH0u0+ozkfY445pApzlHlnHEal2S58i5qTQr9TnnyAXTLt/S/Ztr5RlAiSxzw61bO3SrlaQs03vqXEcRC5cZeiCDdqH2XKZUY6dQnF1Hu797hiu87zqIPAeBIq6eW5TtIvLqe46OpWa6MeQwXCQ9oyzl0vVdKuRy7Ax3akcd13EQBu4I4lwhy76D0C3I9EDs9wGAK9fxJJcx7Ekmxy0ZWCYJv1wuytupbdOMo7V7Hjxo4J9unsfJre/jIfnt2Lqutub2XBffjpXGBmTNTcjcDD+680e46+a7NNnT7tNOOJA9fGAbN0TgBDI+WsUgHygynq1ZUa/+ZTxT84Aj5akm4Y7rwHf9kts5uY+Te3oucjmjhCLsokgOR2Sd2kZx6ilPkeWGuzzPCpIuchmjDq4VcEEWKSHLphEYmCTpYHp5L+sVMeeiyNJHJF9ngzeUdCKzgSuVdMrsPhVOaSWbPm9pbhlaIz3nuU4IZ9YcJ/V8X08lhcs6yHnZIBW4gSTnyrX9+InjMR6Oo+7W4Xs+mGBIeIJe1sNyvKxj2ne0duh+FRCamAduoBPATYWFYj5Tm8F0NI2xYMzGmVtYWABYI+m+5pprcMYZZ8D311Zr8Sc/+QkuuOACS7otLCyOOFAZrPlOgvmOTDpmundTCax2nKIbl+OkAYqTdtGMpBv3unUNqRD7LmqhfPU8QHAmM3X3M5XILMPeVozb97bRSwdJtE5opcg0kejNUzWMhR7qoYfId1ScbplE51wq7f00RzfOsRJLxT3VCnQR4ywEkFJysLwgXBkXiiQDmaoDTSW4ZPkqoUpQGTWe1fmpnBNXy02HbkApzzoRGGSCMVZk0mYAZDlh+VTvMumuTS7YLmNwFRGmuGUi1Z5SnEPfRaSIKSnLjAGB55YSiFHCMlTap13bVUyzVLeLNlFdcYehRISlmjxIlsMRxDlQsdcHAqG8AqSrPUernxakOCuTZZM807ibyykWfzV4KlZbZy1Xyng9cBG4vkrM5iDw5Jz96n/G2LRhM04+ZQohfxIiPAEroVt07vCL0m9/O11G33ERux7+a+y/ILjAGbNnaGJJZKidtEvx1lUXcgIDKyUkG0bM9ecR21DCsAMFuZqbyvlaSTu5Ses/UZBoj3nS+GRmXFfkmlR1Ita5KGLFBRfIULi/95IecpZLoq7OkeZp4S4PLhV2dVw5VsUdbcaUS6NXEWfeQ0+Temb80wnnFFE3Y9LNsaAM5xPBBCajSZ04bjwcx9FjR+sM71Qj3WUuWkmr5HZOydpaSQvLyTJ2tWVSuCRPSuNUytgejGFTcxPqXl27nJPHQTfrop20sZzIzOzUj7nItecDzZdSAjilmM9EM2gEDRlnXlH+LSwsHlxYs+ntz/7szzA9Pb2mbZ/4xCfe6wZZWFhYHGwIIRCn0uVaZ+/uSvduqRxL9+7lTh/9nCHNyy6ansNQCzw0QxdjkYeNEyEaYQP1QKrFgXK3FgLop7kk5rGsFb1zsYtf3pNpckvxyQ4rx0XXfBeN0MP68UjXha6Ryqm2oTJRXMhjteMcK/0UC90Ee1ZiTZziTKqPdM4skyWqklwmEpMlr+T6RMVpm+S5iP9lyo1TxgRTX+reKfGlIi66cJGWn5n67FLiKCbJretIAu15kiBTorCCNFPWbKn8RjpW2IXIMwSBr0mz78gs5y6p3qbLuaAyT4B0SofOkG76NQsB6QY+SkmuxC8Pc+H2jfj1/c1JqRRzndytrUqwjVSX86qSXJBqPoq8KgSaCBdk2XcZxiOvWGasDyuk2lzmHoCKzjnHF/s9bJhq4qixAIBMYDU8BdpwjGEWY+r97onduPvuu7HtqG373a8US61Ia5zHJbdtrQrnCVaSlWJblc18FIbV5DaV9NWU9tANMeVNHTDBousxifj+3ON7eQ/dtIte1isRdkoKxx2OANK4IDyBptsEcwv3eFLWKZmczF8g51qap0iFdNOPM+merbPGK4OAVuo518cwXcNNZR8qC7xZ/7y6nbncrKvuMAce83TpNSK62t09kjXCJ4IJbBnbgvFwHOO+dD0P3RC5yNGKW6Va54vxIlpxC62khb3dvZqckws/lX0LXZlFfl1tnSTmXgSPedrwkfIUvayHTtbB3u5ebRhKeSpzCKj5QvXMJ6NJTAUyoRzFmJNiXvNqlphbWByhWBPpfu9734tmc+0xU3/wB3+AmZmZe90oCwsLi7UgHRonrVRpKoGlymDFWV4S1Rym4qQjD81AlsFaV3Mw3qwj8hw4DjkHA0nGZby1OtZcp4vUUAVzLomcGc8b+bLM1UTdx4bxCJFSO6NAkhdXxVFS5uxummGln6MTS5WdSlTFqVSoU5UELOXShVuqzzKLMJW0SpUqTmWptEuzumZdrgpm7WdA/19x2WZalVJ7MJWwS2VYBqTa6zqAxxy45LLtupos07JAqcmhKjPlOa5U741yVbLvGGT0tDASWEmSRrWsXQbw3EUtCmWtaQUi52shx9WYZjJurOaWzZWRoqoad5PMUIwVEc5lcjeTVNM+cVbE0o+Cwxh8T/ZbWCLKDup1r0SiKTu5mXCNSPWBxGeTYk7GGJrjrV6q4/WpDFwnztFJMl1bXYYhcPQzmUk+VvXJ0VvAcUJg303X4thbduCYsG2ccUSbRrT1e26K27tHo7tyIl739dfpslmRF6HmFm7IdV/+jQVjaHgN1Hy5jtRGKr1FLuaj+oYIk0nMS+TdUNVjLj+vJCulbUZlWCe1fS2qepXQh66MNXYdd79jSsh5vn9FPYux1FkC8xm6WRedtINO2kE/60tXeOW+ToTac2Vce82tQQSSYDrMKbL6k/GOCe1+ruuqZyqpHE8K93f1SuScXOA5VyS3Mk6MMVlfng2f39XYeoc5sqa6Ivce87Sbe+iGqAdS2Z4IC4K+cXqjjksfC8bgMEcbaJaT5VIN8lbSwu7ObnSyTil5G4217/gygVs0hsiNZDgBk94GZATpZT3ML80jyWUMf8KTAdf8iWACE8EEak4NG8c2YqY+g5loBuPhOBp+Q2fut7CwOLywJtJ93nnnHdBBn/70p9+rxlhYWFjkXGCln0r37nZRT3qxm8ikY71MZe/O0UsymN7dDEDoyzjpeuCi7nuYmKwh9IsyS0LyOaSZQDeVSnGrn2FfO0YvTgHW1S7jZlx0qFy3I9/BZL2GwCuUV1l2SVL0NAPiXJKTTpwhTiRpIfLcS/OCPOdFjedcqZjk2p3nUpUlwgmlQAMqPhhFaaph0C7bkP7a5GxuZteGcrF24cBxAY8VCjO5s7uKOLuURVu5P5M7tucooqeza0sVGZSwCWYtaqhs3YWiTaTZjI8eldyrIMcMWdLH9MRYkU3bc4cqsFleEOE4z/X7NOdYTlLEK2X1OM3LynLZ9Xr/btd+hQwHngwFGHd9TYTlNbiaVA9ToT1ntGJOKrnMJi8QZzn6mYy/n+9k6CUZuokixnGOTpKil+Tophz9JEcvy9BPipCC2DAMZEbpNMr2TqEDVINcVIw05g2o55kKC5jMV3AcgCTuIRUtuOmeVftQS54gY0+BOHDQ42NgwsMv536B3ClqaMs9y9sT4XIcBw4cXVbLYx5814fLXHiON6BCR26E0AsLEu/V0QikO3nTk8m66l4d49E4Ij8aIPEUvyuE0O7ZVVWdsphXCX0raQ3UDh8Fz/HWpKpX3bSbfhPT0fSAwUEIgXa7jWazWVpOhH1/Ced6WQ/tpK3JejcbVNgzJ4PDHbiOi5qo6VJqpqs5hQWQy3kpA7xKKEfEP+e5JOrkSq9Ku3FhlGgzlHQ9JypqOsVpDyPppKRTSbLQk3Ok4TWkYh6MYyqawgkTJ+ha4ZEbwXM8JHmCbtbFSrqCVtwq6p0ny+hkHUmsVZw4kXOPefAdH82oidAN4cCBYIXHANU47yd9sH0MqUghhCiFTDSDZikBnKmYN/0mGn4Dvru2kFELC4uDg/uU2aHb7WoLJOFAFHELC4vfDAgh0I1zzKkYaXLvXu6mWOomaPUVke7n6KaZjo8l+KoMVk25XE/WA8w2JYlmjiR3lO26l3J04gxL3RRzeaLjkQEMxEVHvvybHQsQeA6QZ2jWIoSuC9cRSLksbRVnUt2LMy4J+kqslb/UIClpliMTAmlmkGmVSEww6d5M/cGNOGHA4A4Db5jmr8peoOKOZdkqONC1lWUZKkmeXZfp+GCqwUzXHniOMiao7TwXoUoGRnHQxF+LzNmSMJNbtvkKFGWtQt81ykmNyJxtxjf7rlJqmVa2iVBWXas1We5laLVj7O1CuVyPTuhlJq8bBq0Iu45yVZfXMhZ5JXW5qiyby0e5Xee8yBCfKnLcTTL0U1lzfKFLxFjmCOglHN0404pxX82xOJP7lhRzbbQRyDnVFjcynFeC5gUz6UShMetEWMxcVmRP17W+HUePP5U78xxZG9yMU49UToFIjWvQZuj9Ejhq67GoTx2LdkANGzIuQy1IxbLNeRv3LKW4qw08ffPTkQU5enlPq7VEAGMeI8uzUlkvqnud8xyJSCCyogSYWVKLgw9tmtlxDgq3Zo95cB0XPvOl8ut4Oo43dEJZesuLELkRIi9C3atLMu/LUliU1GuyNqnjkQM30MdwmSurH6ikaAPkPS+T937ex3KyXFLjq5m+i0thZaLuBOApx0RjQrpoOxXyrpT5iXAC69x1CJxgv4oqF3zVxHK9rIdO2sFKslKQ9bRbIuw5lypw6IX6vVnqzEw4R8SZiHrKpVpMLvV5niNHrj9r93fBkYp0wIVd2iyZUYIPhZovilJzggk9L2RpQFeSdNWHlF2dSPrWsa2YCCdQ82oInKDoKx6jm0ovg1bSQjtpo521tTt6xjPp1s48CCEQOFKp95invz85OJb6S9jb3VtOmmcQ88ANUPfrMj4+nMR0NK0TwJEre9NvDi0DZ2Fhce9wwKR7165d+OAHP4gf/ehHSJLCAkuxPj/84Q8PagMtLCwOX8RpjoVOgnlFpBdV9u7lXoJlpUivxBk6fRmrasJhQETJrXwXPmOYbgaYRaC9SynTc5JxdNMcy/0Mc53ESFrFdFIsTyXLCj0HjdDDdCPQZMhxAMGlK7dUmyWRjtNcus5muVT+0hQCDtJcJQrLCrWPSjSZSbWIkFaTh1Xkt6ICkqG8UDSxTiCmrsckNp7Kou2qBGGukU3bV2px4JEC7SLwmN7GdWTctG4voFy+nYIwmwr2QEIvd7/JwHQ9ZsakscGMPc6KEmCkLq/0M8xniXavrsYpr8XtmjEgcB2IPEWznqk4atmuet0riHEpTlmW7Sq5XCvDA2Mo4u1Vm3sq4Vw/k4S41UvR7hfqcS/L0E2katzPcvQTFQqQccQ5R6Ji6qk0G8XPU9ZyIseiMl8KMwtK71gxbQrPBTVXHOXB4SoXflkHXCWVcxh8z0WoiHHke8pDQ913XnlcI+N9zXdl8jml1Ieeq3MNRL6Dui9Lx+0vvvvnPwf+4ZfAQ554IdwoQmvVrVfHJIAz9u7FXXd9FS8/+RXYsGHD0O1I/eynUn3tZT30cvnaz/r6tZ/3R7pa0zZxHqOf99HP+prwUY1tIjNpniIWMUSqasmjiFs23wPFs5IJM4mYwxx4jqdVeJ8pFd31tQIfuiEix1Dj/bp2n2/6TcyGsxgLJXGqu3W4rltSggWEJqRm/Ho/66OVtLAULyHtFW71VEprGCimmch5VVUfprw3/IZ+TxnJh4EIe1VRj7MYnUwS9ZVkBd20i3baRjfr6vj1qsKe8qIWOhF2HafuSDd1mjdmAjnTWEOl3ihWWwhRlCw0xtJMKkekXa83SrcxFGNO406kmEj6RDiBmXAGTV8mifNdXyfD6/V7EK5AL+9pg0XKU03QBQRc5upjO5AGAQ6ujR2727tVicXC+GCOmY4zV8R8OpJx5mOhDN1oBk3UvJotm2ZhsQYcMOn+//6//w8AcOmll2J6etpawCwsHmRIsxzL/RTzK4pMU4x0VxLploqV7sQZ+kacNGWlNWNQpULGEDZ99ZAjfaWJoKW5wEo/w0JHPtRRgivHkUQiMFTRdUGgSzUB0uU6zTh6WY4klaRnuZsoZVAeO1MZuzOu6jznQCY4OC+IsiQ/rPKgbGThGoLie4/caKmus1QHpSuiVJ2lwszgea4kz0pN9lUCMV+p76FSCANyu1bEmNpCJMp1qi7gMsnbWspKRUSmfUclEZMPhrLeczn22Ezo1Y4zLHSSckKvkvq8uprsOkVsMdWr9j2GyHcxXvM1ES4l73LLybs8p5BikzTHwvIKWBChn3J0YzUnkxwL7RidJFcu1nlhZEklQY4zoVyqi7jjzHCrJjdqSlhnuvDrq1TTgxnvSSGjZSSMUWkx14EaV0crxTT2gRFXTsnzIt9FZLjOk+cAKciSFBfb1Sj5ngqDqAWuvgcfyN/pTqcDxhjCMDwox4uiCID0tBsF13HhQiY6m8DEQTmvTD5YZB7vZt0Sge9lPU3OicwnWdkdu5f10EslISQyn+apJoWkzlIsOdUEN0keYLr3VxKSyTf6c4nQManCkxLvOR4CL0DNreka26EbwhUuJqIJHRc/FU2h4TXkeieE53pa6S3FXas2J7kst7UUL5Wyy49U2xkbSD5nqurVePaaV8NkOFki8sMIHxe8nHQui9HNumjFLbTTNlaSFUnUFWHvZSrhXC7H0yTrREYpYzsRdxqbUqy7yMBz2SdE1sllnhR4HedvEHLBxFADLRkI6PuF3N1d5sKBIz0SvACRE+mM+tPRNGpeTZegq5aTo8z+RMypbYwxuHC1ot5Nu1jEIu7id+m2CEglPXCLuRN4AcZ96WI/GU1iJpqRxFy5spNXhy2bZvGbjgO+A37961/j6quvxrHHHnsImmNhYXEowM046U6MhY6MkV5WZbBavVQnCusacdIyPk7Fqmqip9wSPYbA9dUDIQyyItCJcwhkEIJqI0sCatY5Dj1Pu7HKB1qBOM2QZEDKOToq2zjFnJLLcE7Ks0GOzPhmXW/WuP5hj3uaMEHGjhbKc1GDWSYNAxxXEiTHYar9SnV2mFznMoSeVAUpttml/ZUBgWKYTbdsX5VZipSqWGTNHkwGRrWji5hENbZCIOWilKSLiHAnzrHYTZBmohS3uxa3azMJlxmn3AyNbNdexd3aYSWSRy7/ScbRUSpxu5+hk2RY7qboJj100xy9WHoeUMw7xRrTe60ac+lKnXEgz3MIxiBINUZh+IEoyhDJB1vpXg0oF31WlCMjtZjmqecwOEq9l8nMaAwYQl+WZYs8B1HgoabIcK0yfhERYk8S4ihwDIXYQxTI18B74EnxoUa320UYHjwXVSLvvV7voBxvrWCMacW5gQZmcHCSxZJ6rsl82pUEPe1pot7P++inhSqvFfos1kSxm3YLpZ7HJXdkIsb9vA+RFXW/iQgTCTQJZdXNuqTOKvdpj3nwXKnKDyvvVfNq2rXedGEPPPWqiLbLXE3mcpGjk3bAExXHrUg7JSUbBu3Ov4Z49g2NDdjqbi1tT67ZBJOw97LeAFGvxq1rdV2FOiQ8kWRbxZdTLXYznCGHTBCXC6muU810Iuucc12KjQsuwx8gy7vRWAEA0sJ7QhN1VhB2ikV3mIyjp4Rs5hiRgq5d88G10YH6g7wiHObAFS7STBqFqBnURkpuBwZ4zNPl20I3xHg4jolwAtOhdGWfCqcwEU1oD42G30DgBgfhrrKwODxxwKT71FNPxZ49eyzptrB4gCGEQD/JMddJMG+UwaJ60q1+ipWezLbdSWScNMUS5yq42HUluXAdBuZIq7vnOMr6LRVgF9JFOck4esoi7jiSqJAa6TiAr9QGzoHMlZmbKRlTL+M6GzcppVku3Xq5QdZHxjmrNig+VVphut4CBalylV3e0aWo5ENjSKWlXDPxl1KYmUAt9FVss1PEs+qkYdJtm1yzI89FPXTRUO63OgGYW7hlUxZ0R7uRS/dgIoYZH6yl3IlzLHXTAdV5v27X1XhjSuRVK+KryTWdUSw4hI49z5U7eDeRHgKdJEOnn2Opm6Cn4pB7yi1fxiVnJWIcZ1x6FeTSm4HG1YxhNw0ihrBDV1EoxWqdTFAHPeccxuA7gO+48DwXvsO0MScKHESudKOOfIZ66CFUKnCNSLFShsmduuYXJFkqxJ5Siz3tEfBgJsWHGnEcIwgO3oN0EMhaxqsp3UcSXEcmd4u8COMYPyjHLMUzZ0nJvb6XSWJoKvNm+bHl7jIyJysRSVLsszwrx0eLHP2sP6AES4em4j1hqFu9IvEOc+DClXHxTP75nl+UAFOxy74rl5EBhDKQkyu+67g63l7XFVftdTA6y/kwVb1K5ImwVwl94AZabRdCoJ/10U7baCWtocr6AFnPCu8Hyj+glXaVJK2a0Z2Ua6Ag8GQ84aIg7Ga/F9+/hVJfVdJ10kHH1a8e82RYgxMWfe36CFmox5riyaltpKC3khYW+4s6OR4ArdZDAJ7raU+LuicrDkxFU0UCuGhWZ2VvBk2dpM5+J1scibhX7uUf+MAHsG/fPjzkIQ+B55UPceKJJx60xllY/CYiyXIsdGQ96UVNpCWZpoRj2r07le7d5D6dc+hs0xQfDED9MCqLOKBdtPNcIIfQhJDih2WGaUeqiqq2s1SWZXIw6aqr4p0zjkwwRZ55uUwVPXNJjglWfgYrYCZxMhZLNVKquvLBTF6br9RiqRQqN2ulQvuKgJFLsu9JUhZQ3WcV7xx4UmWuBy4agSRYIkvQrNelosyKPiyIYBGvB1HEAhPp7CUcy4osUxzzaiC368Klmmky2Iw8I1GZ7MAcHFmqam5nHP2UI+EqA3XGsdKXWarjlKObqjJOCSnGlIyLkr9R+R6VIZ2yo2vPgVUabpJiRi71hWHBYZCqt1JyA5Wtm1yho4AIriTIdd9FFBABlmMRunJ9qOKPZeZ45UbtOciTPmYmx1SNdPsAdrgiSZKB54T7AsYYgiBAv98/aMd8sMFhjiaKDb+BKUytab9R2ctpHcU5a2VeudITaTTd7ONMkngzMVgn7ZQIpll2jdyzc54jFcqlO+ElAqlJvYGqGg8V3kPxyx7zdNb6arZ6IuyBE0gC73g6MZ65D5FRCBnDbqrHRPAp+d2oePaNzY1Dy8KRK73HPGQ8k0Q9aWElXkEraRVJ5rIOOkkHnayjXeFb/RZSpDoDOhlaUp6Wcg5UwwDMP0CRZiEVbp4XHhCqU+X4k+dQpd9JHXeZWxhPVN9RH5t9aWZiFxByPuUpWklLx9RTGTjqW5e5pWSE5EI/E83ocmkT4YR2ryeXdhtnbnG44YB/CRcXF7Fr1y68733v08vIwmUTqVlYDEeecyzHmYqTjrHYTbHYSbDUk6r0inbvTtFNclkySkArxURopOonSZhJjAQos7T8zLkAV3HAjiO3k4nAOLJMqtgy83Gu1Ely2YZO9lTEPBfEmTCKjzHzjTAThSl3aAatFHsqc7bvMviOq96XlVpdksvIcO0phboWOKgHniRvvivVayJ/Sh01szBzQXWfZRN1KSlFmlv9FJ1eH24rQ5n6l0Fu12bsMSV085is/Z1zrjNwF3WZBdIsR6KW91OOfkp1jqURI04yJLnQ2+famGJ4AojK2AsATKgSYUwPFlOWApMIm+7UlLAtcAr38UgpwURsa4EkxLXAQS30UPeVChx4pWRboTJgRJ6DUJVqqwWOVpQPNimW5CCzhPtegKu4dZpXGadEdtIzRdchV4aaNM8Rp0LFw+e69F0/40hSru+fOMtVuTVpiKN5vvmeX6MR70XrH/8XHtKIi4aMHLchy41F380XEGdPxtd+/gV8If2CLtPlO36hiKoM4FT+K/IivUwnI1OqHZX6IuLlO4VaWnU7/k0GY0wmdXMObpkpIlpE5s0kdr20p2Osdby8IvbdrIt2UiRP0wYApcyTaz2p3Gk2JDbbJPKiuE6gQuZVhnLmsCJDuXLXdqEIpsrk7ju+drun+HlzHzN7OJF8z5Xbkbs3JcujObypuWkgxt13fGT9DBNjMmcB5xzttI3lZFlmPFfqOhk7dAm3tIdO1pGhCDzWng5JLl3iKf6bC64Tz5X6jVzkUTaEZDwDcpTWFb9HEkKIIs+A4wzNO2ASdzKepEzWL9fHUec1ExCSAYVc2et+HZPhJGZrs1hfX4/Z2qwu52a6s9s4c4v7Ewc8297//vfjpJNOwh//8R/bRGoWv9EQQiYBm+vEWGjL7N1L3QSLXRkjvaxU6cV2D70MKpNxQXBhkB9tTVakCsIkSHI9FwDPZeQblaGiB2Z6eM4yoVy2lXIJUjEHlcvVI3oLFLHOxavLGByXFGapivsuU/HMRdmlyHDTJbdr31UJvTxZoinyCpXXcaTVgAii6X/MeZE8iAshS0Pl0hV7pT863o8xWSrLN9V/FYMujQ+KgGeyXBPLgDSXCeXizMh0rhJwJTlHnHKYpaCIxFBGanql9g7ra7q00aRYGgs8l2mjglnDuuZLo0M9kC7RzcBFLZSEuR54KkO1q2KQ5fLQd1Dz5HaRykYtwwPs9/jBQhHCYZJaSWgpO7vO1p5y9PNchl6kHN1E5i+IjWzoSSYJbpoLxKn8Dkm4nK/0faJrdnOTTIuSwaZ4b2bfH3T7N/MjAGTDEfp9daYUJKVYWSwR2CiW4Yk+gvZOxP0+XJEiYDk8tr+sCwVSCMQAmOOiyTIIxFhuz+E/77lD7V3sX002VsWwuFedUdqMWzbIgFbvSLFTLreUZZwSk5GKSnW7AzdAwGRdZ034yRDgF8pdNSmVGXfrOd6D2ghgJr07WKCkd6T6UlK6qhpvfu6mXZ1UzVTkS4nxlJqsFfk8RV/0NTElQkr/hk5BBl2CTM83RerJtbuUwZ6Ud1LfmStj4lkARzioBXLehJ78a/gNXVu+7texvr4eda+uiTyRfoc5JUIdZzE6uVTTV9IVdJIO2lm71C+UBJBi1/tZX8avG6o6xanTMgC6P8gTIYcs3WaW6zPd4Tk4HDiqu8p9RJ4MDEafkSqu7tvS/GKuNPZT36n7kAxx48E4ZmozWFdbh6MaR2GmNqPL+NX9OppBE4ETPOjuu8MNNFce7N4JB0y6d+/ejQ9/+MPYunXroWiPhcUDjl6SY6ETY75dlMJa7qVY6iVo9TJdDqvVS9FPMxWbzDXZLQij/AnJ8xyMOaXSUIwBQmXxltlP1UOzUri5UjkzUdR25urHaVi881pQIs+KOGuXcuWu7TuS1HlukcCrplyBQ89VNZ5dlQV7MNM0Hdvwai9UWUVGSWUnELmgPbiQVnvGZFXqQplT/az6RpZ3IkIslboky7VrN/Vnyos62kSGKOGaUMYIst2bSYQK5QO6JjZjRoyx4X0QqIzkoSvJcaH4OqiHUvmtBy6aoYdG6GuVPiJFmRJ0GTHGRRyya0lxBTrxXpaDC5nFnrwWkjxHlkFmJycPgpRi0bmOQe+nsqxXP8uRphwJNzK4Kxd8IssZGbWoJrtBaCWRNe5bI7yCDEQmoYWgGtpDchfQMyjNP1aQSMAkvKwQillBcuX9LYMgQN81+j0DY0LvQAYfxwGYcMqE2fie0Qu5KKnTgtxflHFMU93SNTE4GeCzDM3ARQ91jGULYHTiNSIVOfrIIbwAG4QPznI4QpLcUhk+QddWdoMVEJpkVNfrTNRMaIOnYEZWapHpz3q9Saz0uCliIVh5ne4mptU//T2jx6+sqlYNAKTm0auLIjGWScZM5ZSMAoETFC7VFKds1uD2ZPkxMgIgBSaaE9II4BVZzY8kI4CZ9O5ggpLe0V+SJzI+Pi+XouumXe0G3k7b0i1cEXkz632JyBtx8gmXrvsUx22S+GGZ62kOleaNYTwyE6oxxkpqfOAG8JkvM6C7USnbeMNvYCaawdFjR6PpNxF5kZ5jFDOfi1wnnetnfXSyjvZAIDf5YQYMfb1m+T2lsHMUZJ2u1YxrL267yn2moMk5HE326f7R95OxDd1LDhx9r5ju7E2/KePLa7NYX1uP9Y31mI6m0QyaWjGvebXD8l44EsAFh/t+FwCQX5o/qIn3AZPuRz3qUfjVr35lSbfFEYUs55hXRHqhk2KhE2Opl2C5m2GpJ9XpJUWuu0mOlHPkRgkhSf+IoJV/8LQqpB5UuX4ol6WpckFkr0yUD5Q0mzs5gFbByZ2a4n8pfjlSiqgmgb5UNQvl2dEZycltm2K9TUIKSMILUMkjSpgir7PTT7GYF2oaXXOuSEyiXFRJ3SMykypCnJNCJwTy3FDpRZkUw+h/k50QSTCzUZuvlDk88t2SkYBU3yh00fA8NEIXgZNjstlAM3LRCHzUQ1fFEqts1Uo1rgfSrbqu3Kv3V6v4SITphpzlsv50pmpZk6Gjnylim8o66pLMZogzgX6aqeRqwqhbLetg09hnObk0C5WArSC0lGSPspVz/Rk6f4DMXi5K85Xuq6obPifLz1D1iea9kVuAATprnxGmQDSO4JBDBlNmLaELzoEWyc0pDIsyzxfWKWmjI+olKskCWdEWw6CF8iGMExVZjE35WRJyxzC8keILUKK/6ueS54VD8fvynpIJCs2SaOVs/Y76Pgp3MPgswNjGh2jDXwqG4ZWfhwyOABwINNS3QACO8B6GcXcMp82cVlbZlGpnKm5azUM5lpVINL1ycF22Sa9noijlRE0zCE6p680mK3JvkoMSSrsamfYr25hEP0Mmt6UJrQwywkiUYRKz6jlHlewqn1Ie33XkA3AxR4rrJRJn1hU3PQHovVZqXaPmuBEKUPIGcApDALn+Uw1y7XLthFqdJG+B0AvvVyOATnqH6KAd00x6V4qXz8sknog8kdpO0sFydxkpS6XbuJk9vaLIZzyTCeXyrJS5fiiZ1+aysieIuaw05k5RT95zvPK4uTU0gyZmohnt0UFKO7ndA5DhBTxFP++jFbewlCxJVV0p60TUdciAui59nyPXxLzk+q7Iey7yojSbcV8Myw9gesJUvWDMee45MjN73a+j4TXQCBqypnokVfPZ2iyma9M63hwpUOM1eK51Z69irjtXer++sf4BbM2hxQGP/m//9m/jwx/+MG699VaccMIJAwlSfud3fuegNc7CYjVwzrHUSxWRlgnHFhVxLpbFWO7KDN5SRRZaraIfGx0nqx/Sy7GzOX3mUr3ifOij4QFDP/wCoDq+FBtM5DBSLthUtkmXlzJqGnvKzdtzKNpb9Y8hORGJlYog0E8zrPRl7GXKZSZxcnstlD2hjA8y2zmRYlKdq0oxUCbF+tmQFY+TjJUTb9GrbL+DKFQx3nT9lEAr8NBQCc/GIvnXDF00ggCNyC2SbKmEXFSaqeZLY4Pn7t9yuloSoUOBshuyEfedK5fitCibRUnR+pksq9ZPBRJVd1rHgGfSNTnVMbWF0k/x4RmX45wbRpJMG0vMMmzlMSa1lnIFFFOreK+vS/9XcNYSB9Qbmi4RRGxRGFJKDBjEffUCIbhUTMnapbYr7gFW2t0h4kCiLgMK4ZeV9i+1ozhl8RjKCnKqPTuMz0UZMiKvBTk1Y+qZSVaZ8j6hsmuQn3WJOZVpX2fQd6VnisMYPE8uI7JbrJMGJ1ef19Fqt8HHB4g7Y4NLqZtL9gA94qx4URuRjeOuPeNYah6HT0+ej1Pn/hkPmY4wFrnFrgMTYzhuz5bw42Qf0o3bwDormIwCnL5lK0jFNptSjSUtKduV2bHaQ7iZDZoyM2c80wp4LnJkeaZJA5EnWp/xDHleJAYjsjAqqVUupMst54WRoJq5mj6b5Lrk1ixGXA/dT2LINVeIOp2PiMqgPYCVDQuV9RRvCxRkXxg3sGloGFm/25x/ZiiASYpYUbdax12rZWbMtU6oZiRTG6hZ7pQJIbli65AARfZrXg2RK8tg1YO6jruuuTVNLA/ECGAmvcMBCPMHkvSO5ibVUKe/lWRFknnlSt5O2+gmktx3sy66WbeUEI8S3un7gGLlicRXSG91rmlvD/pXUZ7NevK+55fCLOq+6mtHhWDAh+d6yJEjy7JS+6jMnPYkMIwP5E1ABjnT8Ga2VddSF4PfCxpmigrzn2GQ8pin58d4OI7p2rSOM5+OZOm06WhaJ4Zrhs2DnjfhcIepbD+YVW7gXpDuyy+/HADwiU98YmCdTaRmcV8hhEAnzjDXVmWwurKe9EI7wb6VGHPtGAudGC2VvVsSi8IFNOeAUK6epEBzVFVTGKThvqNQjqTaSg/JlPDLd4Ao8HQWZiKHgXLX9lSQMReFSs7VA1aWcSQcyJRCuNTlyHhcqlVturnqhFsU1w1DidfXSz+GxjUYcZkD7tRaSXcQ+KSMUwkqhsj3UPMcGUscemhGLsYiD+Ohj2bkYSwK0FCKcT3wENK2ql5xTSnFh4LoCtU/FAZAimucF4S2lxCp5VhaaYO5oSSzGZfJopS7cVG6q0iQRiSZlFl6r2PseUGqTWJLpFdneqf5qdpNBhNRGqfBn36V2HcgJ5Xmssb7KoOsbiNE+TiaXLHq1mp/BhWbWKZnmtRVyKhugmFogppnRJQcZqqsag468rxEmnX4Brh84NaKKx1DPYw7VB++8AJxIeuqSxILeMzRBh+6b0mhrRrCdJw9oMj+IFcUxhvqS7N/C9JjPJTq7yRzPhRHo7eKwxY5Air78Ywjgah8xxVqvzaOGcfS9zuNQWmqkFWiMCYMGFCMycVMVqdJFeAmXdR7CR7SXUKTJfDjNlwjq//AXT/ie2CSxzhepEgW7sBPMhedFR+3LSdF34uiDJJpGaBrpvfDSEHVTbyq7q0W/y2bLB+yKdFVVSUDoN1XS67iSumjDNnaYIAK6TQMBCUvhgGDlygp+1meaWXQTCxGtbszkSHLCyKS8Qz9tA/mFK7DtO0A8afs1wwl7wFzvdmekkeBSciGkJqqC7U2Bohi3tA6PeZrhWHoMefGwPnNL09RkPzqmBT3TqGGmt4AZBQw1X9NypVKT0STXLe1IUDlByCFmDwAfMdHza3JUIAxGQoQ+RHqbh01f9AroOk39bnvy+9sNekd/cW5zFBPCdw6qYwNb6fFZ0rgRsncelmvqMGuDFe5kO77fd4HTytJ2ypzwRyH6ljQfab7nXnauKGz0aMIqSkMhaKUSI6DS48qIWQcumEoqxoYTIOV/oJVaGdt+aYLYLHcp9QW13HhM1+P10x9BkfVjsKmsU0y1rw+o4n5uto61P36g8advebVhr5/MOKASfeNN954KNph8SBHP80x345ljHRbZvDe24pxT6uPuU6iXbvbcYY4zQvVVZEZoRMAGQ+pB7F95sMmYzLc0GOKYHpMk8zQd7XS5DpSzsm5dPHjOZBDZiovEhkpN9p+hpbIVO1r04W6IMVV1dB8gKcHYq0as7I7taNULtdhCF1Znsn3GALXReiyotSS76IZuGhEPsYjF+ORj7FagPHIRTPydfxxRBmrlVrsuaMzUBORTJVqTrGyvThH1yC2C50Eu5d66Knsx7GKn+2r5GRJxisu6EqlzThyrsguLxLRZXleGB5MA4Qw3NM5xdYapEO12Zw/w8SWUfNrkH6ugtJD2vCjVxPGlYgPkVIY6pBBYh23UF2JbDJjbhAJBZMhElqZZUx+duQrPexr12Gm3IMVaZUqrKw5Luca0/PNdQpi6zjMqPsuSSs9EjmMaRJt8gVOfEeRSW6SSuO+KE0/IZBmGQLfNwakIHyMSXqiH9QMglolrLmQ9yzjcjkzxq1sUKB+l40hUlk2OWCQ8BUjh2KgBahOu0l4q+q56QLuGPe++V1QNk6wIduWj8cAZVSQKjhQKO/kfULbkSFDQGgjnNkmulyzLXQ+utLbbgFmay5OWNeEkx6DHBlS/8DVDD/v4jjmAX4Nd3jz6HMXD5k5tfQwPuo9BIo4UUMVNh+gB+ogK9dV0xWXjkPHpgdsvS+KMkwlBXrUa2VZ6cag/lUeIeb1DFPpCVXFrkQsDXJIBgHf9RGwQB8z93L4vl8yLuj2DCH5jDG4cPWxqwmtzPjiqrpphgAQoTP7v+QZwFVtamRyP55LImRk3K56D5B3wgD5Nz5Tn1WNCjrUwBhj2ta8/qoBodTvq6CkAO/HcFDKAVCBJpyrGARcxx0wApSSAzIjOaDyCND1uFU2f/ICoBrdOieAqgIQemEpD8CGxgYc6x4rjQFevWQEoJACyhxeTXpHJdA6qZHULW1r1/p2IjOzr6QrpQz2ugQdLxR5zjliHpc8R0qGNmNMq884o/rWnOfD7lmC+V1gzr3qPKB5nCBBJ+9gIVnAjs6OkePtwNHVGsaCMcyEM1jfWI+NjY04fuJ4HDt5LDbUN2CmNmNrmh9msMEFFvcaec6x0E0wt5JgvtPH3Usx7lnuYU8rxrzK6L3cl5m8e5pIK5KK4mH7UKB4YFTxz4bLJrl0AtDqDT2g00M4IL+IM86RxIBADlJvyj+s9H/xk6gfWo0Haekm6uga2p4qjeU5DkKfIfJUZmlfJd0KpVo8FvoYr3mYiDw0Ih+RL+OvyTVXcIGccSSZSkiWcPSyDHEi1dxEkdt+ahJajr0rfexalEmlMi7jbjNyR6ZkUZrIch1Hm+XVcmKmklb0xkjjQQUjpwAb+ra875CdB7YdIE3FRkx/VkSQMTAhDKLK4EDIxGn0QGkkUWNqcBnKKiwYJakrjCJMkSKHyK5Bhl1SUJ2yd0FBnoq5BBTxtaYBRr5o9jnQE1UyOLLDtIFHP/EPPOxVD0PHFlCqPoS0Ppli0RqIoL5Gfa2sIHbqXpYiOlP9UN7XZOUyC3C5dFwxduRmXeRFgBqX4fORqLYoGqPmPSXNoo4QpclO5elIpSu+O+jekd8p6uGMDHDq6jmXJCxXFiPy2gGXtz/P5ZG4apvg9ODP1ENeYWyAoLAAMvAx7RGj72Ne3M+5GScP6OswPxeKvElsodtK3wZnJRy3z3WxsrgLj3BuwyZnEWNRoVCvFT91+tjnedjlOFjonwXOm/jhf1+jR8gkcwPLzPdO8dmF4ZpMtZ2N2sDmvuZDNoNcDyh3SKHmlHFsqjXMIH+E6Pi6bU6hdJfcKx0HjkpsVyK+6sYzXXQJA+p4ybYj9NyisSK1WRsVeGEwiJMYnu9pwqBJsciLsTagE1/xYt29MThU1+nrAIrvKQZZosuVJJC2q44x9clqRHUUyR22nKkvuByyD8x+o3hiTfYN8l4KERjlDSAKA5AeG8NAoLcxtgOgVVg9Dhg0IFAfZjwr+oosYiOudS0Ytd+w/q4aAEpjpeatzgdg3n/DQgFU3DjlAqAyaxPhhAwHoDrpXig9BlxfVhdwfXhCliOjRIaZyHQZOp2dPeuV6smbbvVE5M1xLinelXvsUMEk6f2kj+VkGTvbO4H54ds7kIkXQy9E3atjLBjDdG0aGxsbcdzkcThp4iScMH0CNtQ36FwOFocO94p033LLLbjpppuwuLhYuukB4K1vfetBadh9wec//3lcffXVmJ+fx4knnoi3v/3tOP300x/oZh0R4Jyj1c8w306we6mLHYs97Frs4p5WjD3LPexbibHUTdFOZJKknKsHrfsBBekoPjOGStKhMhmTirJMxJMZLF8/rGuSU5CZQMVASgVPEiFXuaQ6TLmOK8XPZ/RARQmV5A8aF9CxslmWyc9cIOPylXOBTpaVE0OROisobrzy4AvjOiuk9hDaL2R/7W9ZhTCZihdAD4VigHhVk54xczmMZeo4lOhtQOVjhnuxQbQ0oSXSZxDbEmFTjCnLc7iuW7ow3V5mLqWHF6EJm+apBWsc8ci3H9DDsigG25wDuYobYGq+MUXT5HnV47ig9Ua7zWUCEIyhqNokNDmjHeRcZKXzcxRxmKb3gCRihQEGKN6XvDiM6xCc60dm2ocLoe5n2QbZHAHj+VEfg+c5HMcp3xLqXESAS8t021A5nigfw1hv3lmi/LHoWDFku2HQ/UIkvrw1Q9lBe5BxDDs63Q+VTQ5w/hX7M+N/GAYQc1n5vhnYll7VVHJFho18D87xf4Zprw8fOViar7FlBR4JgTjOMMc4/jHvo88jrCQrpQfckvuxInH0HkDJjVStKK03960sUIalguSVYpGN36BRpI1GvnSMyrbV7czvkoFjCplxnfYzj6HbVF1mvB/mPk/XSjWUaTv6Z5L9EtEXxmdStgUrLzP2MzNHl85RMZyUMk7TcjJwoDBGCCEgHBWDTm0xfxjZ8P42r6c0R4z19Epqs3Yf1r9JKkRgCGHRRnqaH/TdjsF5aBobqvO2SmapPXmew1HeKiWPCQy6/FdVfvMVAtoQY+4/yjBSDReg/U3PAU1Ezesyjl9dN7Tv1ohRxpW1bF+amygMA2ZZMjNGn94DKNz11bjScjMXBAS06/yohI5mf5rXfjDIuzoj0ixFO2tjb38vbmvdtmrfUIhD3atjPBjHuto6bGhuwNbmVhw7cSyOHT8WRzWOQjNoHpTEcN20W3rfCBr3+ZiHKw64t/72b/8Wf/3Xf41jjjlmoE734eDC8K//+q/4yEc+gksuuQSnn346rrnmGrzhDW/AF77wBUxPTz/QzXvA0Ikz3LPcx+37VnDrvhX84u4V3D7XwZ6VGO1eijgvFN7DHVUVlZK3stKDT/EeDDByYqjX8mN2+dIP/IHwYGLgLqo8dzFAJYMyH5CF7gDtjmwQX3pPx3JY8YBP2w6eX5I4+iwJLxFjdb8zAYc6nxFtKEAutWUFRp5ZmA3QP9DldhQkSBJAwSrjNoQc6eVESk0FHkQ4i/MxtYNgkmg6pasoHmDLyroYmIfmB1G6gGF9YjYUlfWVD2v8Wq08190rlChXZU4MS3jEhmxXmkGVicvKawfmtv5gPsQb+9I6+SLgMF6c1ZjjtJ/DAFH5zASU/z1tXzyCkZGHOpKJ4rwya79pSJKtMEkO2SxMIlqsNO4baq/Zd8rLQh+7dM8yQ+mXx9PN1OcTumHVKVM0w1D06XjmdubQmycYCWoHkYPy3GcARM/FXn8Tvj1+HB4V7cQ462PaP3Cle69IkLke4AZwdoUI8joeueGRA9sNJdCiTLDoYVgOS/nBX2fDNwmQQZBMFbbksm7cH5wVSuMwglMiMRVyokkdyuekc1VLkgkICF60UZc+ozaaLtRMJjgz3eM1MVTXozM9M6OfjOuotqva50NJ6wgia7aldIwRx6uuG7XNqO3uC9ZM7NjobYcqweYzdOm3AYPfh6y8neACjqO8IkT52COPC5SOIyDgCKf4ba0ca8AoQ04ZxvfwMKPAwGtlOMz7aJTBQWBICT4xYt5V7yVRPnf1GOY6bkhHQ+fbA/tIeL9CQCAV0sW/m3cxF8/h9pXbgb2j9yHjhMc8hH6IhtvAWDim48+PahyFzWObsbGxERubG3FU/SiEnsx9kfK0RLrrfv1+uMoHDgdMuj/3uc/h0ksvxbOe9axD0Z77jM985jN4znOeg2c/+9kAgEsuuQTf/e538eUvfxmveMUrHtjGHWQstjr42s/vwb/+9z7cumcFC90U/fT+U57vb4jK68CHUb+xB/e3d79Y409zaXthvB+AKG9bLBbl1UrJz9fUKQeG6nP3SC7IBlcOWbTamYz/q0tXW1AsZwMbGhSaDT9+saVJogaNCHrf0vUNsM6CXDJo1lciWEwaHZhTflwZxnOqateQxzaYxpGyFb98zoH9DSKn1w6cqzx6rHLcKskrEbchozHi+a9oz5A7YphRKOccruMYx9zfDFt9FlbPOvKeZNXeGLKO7f+6gYKkA5Dlz2h7QQ0w2L9xCAZhnKLaR0Kfr/TozOQJ6fmxGCdjf8PIoB/0i2fxgYd+2rbwQKmcj8nr2hUch1uwBfUcOIntwsTk1GBn7AffTe7Evlod2djR4MsZvI6DmcZk6Stu1EP+WsnhWpcPO9cosj9wnCHLB/Yd4aY6cvmIc41ClSiZ+2RpBs/ztBv7wI0gDMJs/KN1pesaQc6JwFcNAKYaPRCTb7hV6zYwJt3e1XmrcdelOFqBkjJbarsYVHpNQ4resqImD7w3zlNaZh5D/U4Xht/hZFOPjTKkQKDUbrpe09t0FBkddi9U5+youUjbDuyPIcvE4PLVPAkONdZyL5geFKPWH8hxD7ax50iAQJFoLk5itNDC7t7uNe9f9Zh+MOOASTdjDA9/+MMPRVvuM9I0xS9+8Qu88pWv1Mscx8Fv/dZv4ac//enQfZIkQZIUVvc4ljUAqpbrwwXHXfLVB7oJv/FYhe8NFYUGH4CLDYeSS/VflYyZb1hlB1b+qIlaeXlxTrOtxfuqimfsr12/i8+0nUkwtRoOgMIUyXmrlBTK6BNG8bV0TUrFL7lsq20H1fbiHEVW6/Jyek+1kWm/4lqLfsnzHL7v6fYW14vyMkbXofZ1iizc5nmHkZLhMcyGyy4dl1H8tzkmRT1lyv7NzPNVxgUD+xfHLvpkcFyL4xpzw9yukr1blyk3+2RgLIzjVvq21EdqjVPJtcXM8wqg3++jVosq/WBcAwbJoDnW5fnPStdgjp+eQ2b/lY5Ju1W8SoDS52H30sj+ND4zYx/zGsztqwS83K7qNuX2lfcqH39wv/I2bMh21XUf+8jX8bSTp3DiyUfDydfBExyte5FI7XF5H5wxCC/Cj3f/GMvZMl760JcCWBvJM3HA2x+i465l2/0R7zVvt4bthRDo9rqo1YoMwgNkbITBYJgnwND9V2nbfT32mo+7xvEpuQmjTL51n2EEGTeW63MQaTaW7+/YoxLzUfx94AeFd4MYkjDQ8KgonVtU2lnxqjDjyM1jcM4Hj2fuK8peHmYiQu1OzYt+HUhuN2x709W92j9kRBGVNg3r3xHeJQMGniHGG5pH5niWvFuM86z2amLYst90PNDcS8/7Vb6r7wsOmHT/3u/9Hv7hH/4Bb3vb2+7zyQ82lpaWkOf5gBv59PQ0tm/fPnSfT37yk7jyyiv1Z8/z8IxnPAPtdhtpmh7K5t4rzAKY2+9WFocS1duOmctFZTmD9iAW5nJyWUT54VswKFGr4mpKRGQouSmOW2SKNYiiU3l41+vkBhRn7ZhkgMgCK+KrndI+FFenyKdjvC8RBLWvOneJ0JjEwyAmphsdPZpXj1cQIVZsVyVeFWLjVI9rEi21XZ4DnucWyc9Y9bgVUmGQR32OIWNSXjaC8OxvPQBWiuEUxj5i1XOYkPMP2rpfImWiWK+PPUypz1FZVjSWHL6FWi9Ue8zPpfbs57qr55DtFEjTpDBiVI8x2Cy17ypksbKgev5R7Vltm1HjUF2/lvMMrK9cU/kahm8zeOzRxxhsD6vss/920Fg5/UVMJobyYdS3XSua9CbtgWUdJEkXdy/eDeBekK7K9oSDfpwDOM8D3lZFSOI4RhiHhbvxqOOs8TxVYnG4j9GBtHeA0EJoJVu77sN4kK/+UzF9OfJimRA6sd0wgmcq/uSVUC3DViX7VaNA1Z26FNIwbP9h12Eca+D6hhH+CpEeZQyo7mNec4k0D2mrTkhp9gUGj2eO8X7niXH8YfNHn6+6fNi2FkNh5uKYW56DqD2wpLvX6wEY/M0jUfa+4IBJ98te9jK8+c1vxvnnn4/jjz8enlc+xIc+9KH73Kj7E6985Stx4YUX6s9xHONjH/sYms0mwjB8AFs2HDdefi6EEGi322g2m3pS3LW3hX/++R58//YFbJ9rY6GXop/IOsH2dj+0ECPelxYMG4T9DsyqRz6oqHIzzbmGkDaIVdaNOF5pxRDDxMh9DTJeJRIAK5EHprcvH2lwubmsOKgkmwKMXJZpWza4j1ad1TJTRUfFeAGUM2QTEWdgSiFX6xSBHEgip843uLx4b9a6lp8H26ETyBmvMNZr0m0YCcy+L2wWhdGErtqBMhiZ28A0HFU8JYxl+rNqDMUcV9tIrw5k/GGaJAiDItu8gDJ6CFEyupjjLI8ndHsdxopa43ICQB0CDnP0fSD0coMmG3OZEgXSIv3KzJhViaoRbrhFnbYRI/ZZ+74POHgGcc/NaPg/O2iHbC1l6CQR/u2efztox7w3qGYNH8giPmq7yvbD9jEhYCRho4d8unfEYIIwACUSo0mW2peDgwlWcukmhTJOY4RJqJfp/Zgozi9kfLhJcLTiaGRLL5EdViFFMAjdEAKrr2EEgTSPU1V3TcI1QL6Mm0nvZ24nCsJrnr+UadwsI2Yev0rQR6jK1Wsv7VNZZt7j1W244JXvmBGkskJEhx5v2Paqn8AwcA5zXlaPW93O/EzzreR2Xpm+A+0Sg+tGYS3fe4fNd+ODGNL70NF10kNX1Y53I/iOL5POqR/KbtLFL/ALAECtXkOz0Vz94IcQNM9NfkXwff8+H/+ASfeHPvQh3HTTTdi2bRsmJiYGGvVAYnJyEq7rYmFhobR8YWEBMzMzQ/cJggBBEOjP1KlmOYPDEVrRVG08esME/ueGCfzPJ43eJ89z7F2J8ct7VvCjO+fxs50t3LXYx1ynj16SI8vvezy4foBXrw4zl8nHaco2LujHW+2nvKNKD5j2q/H+gSbZClphRnkMtLosoFVXfYBhO6hlzNhnoFScJi6Dhxv48VevRIRGXYA+lig3TW/KhrdVCICxvHT+1YwLozCiG0ZsV3ncrm5YIrKD2w0/Liv3x4hGMqNXSqqrHKziAck8XMEoSyS6eEO6dtFmVhmb0vXQdayixg5z9edClGK6mXkMo72OeVw26NpfbWPZGFExcJjnUscbFgJQ3YcUeYdVsuerMdDflcZnOk6x/fD20D66RKIaNxjfv9DLy9dBxqJiO1XKDqK0fcmF32wnoPMS0LmBsiFpuxvg1tqJmAuORy1bRDNvY0t2J2YbLmre/t3MF/M29uVt3BOOo+9HyPwIK3uX4QmBqWiqpNQNq8MshNDutyZpGqXaVcsAmTW4TfJUdXk13WJHqnqrbFsilxWiScvMz9XtzM/DiNrAcUe8z/NchzsMWz/sc+k8oiBjQ8kTG30tJoGk9QKiyNQuKssxfPvq8YYR2mF9S0YGOq55PIpxN0n7sD4etqx6naO2JeNE6Zve6M/SjxiGLEd5ffWc5rkZyn1K3+u6b1k5076ZXM28Hm3QGfajZ0CT7FUMBMOOb24/dE79BsA01g0Y9MD0PKffP+qbUbXB7835XbiIvAgNv4HpaBqbGptwzMQx2DK2BZsamzBTm0Hdr6Pm1RB5EWpeTddh3x/2dvZiw883yHMdBtyryq/M5fcVB0y6r7/+enzwgx/EE57whPt88oMN3/dxyimn4Ic//CHOPvtsADJA/8Ybb8QFF1zwwDbuMIDrutg4WcfGyTrOPmXDyO2yLMfuVoztc23cureNX+1ZwW372tjT6mO5n6GX5EgzMZSgm6R58D4v9qAHVYcBvqPqVnuyBrWsX02lnxgo3bD8TpfltnIAPJc1gXkuS3FxwZELWT+c2iF/OInQC9U2daQhZE+/Z0yXXSo9YELAcYicVeiSIpby2Ip2MFWPlzFZd1cYpFMUfWgsKqtaQ3jtofqpEcPeDyXIgw8dQw8C9SxQvRAMPiOstrxEiFhBbDRZq25PX5ilpwmTVJUJnnlsIYSu4YzKdkIAOuuYfngst0E+GND78nNI5XmpgBD6eoquEsUqtRdjVB5rcFLoczCG8jOdqLwbfDKie4IBRvm96kO3OSfUVQqus18L6jDqI01ohjRlxOCbi4uHz8H+YiqsQQgOShxQ3nfE81/p2bSsWBf9ahoSzN5mpf2Z+b/5FaCPQvOJvj9kHzEUyhAYSnOS/mMoyKs+vpBv5LGEnsPFucpGiVILq+cQ5jbGNZfWla/JaMTQ6xx2DYRH5MCOfQnm2h08Jv1PnIzbMYVfYzxyEXn7f4jp8z480cctjQb2RE0sRePY0N+EMIvw/+78f6VtRz1cjlKRBRODWZ8rD/ZkMDQJCFDMUePkmpSZrtlE9ATUcj6osMrficItzST4tF1VIRXqpqRzDVNV6VqEKMhZlXgS+dJE03h4L/WpKK55gFAa59THF5X9ixPqazHrk5vH00RSlJeX+h9lEjZwHPOLoPrlO+JLunRMR3nVGF9+DmQJMw5eeijXbR7xHUfrTXJk7qPfAwPGBbPd1T4eRU6pj6sGg6qRQhNvYCAhm7ld1UNB7zuq74csX434rZUUHiyiPZS46u8249mCMb2u9J4+M6bnBBNMq7eF4bYoPQYAvuPre81lribFhFJ9dbpmUdR8z0VREz7nslZ3xjNkIhu4r9faDx7zEHkRJoIJbKhvwLETx+LEqRNx/MTxWN9Yj/Fg/IBJ9IHC/B4Y9p3wYMIB9+D4+Di2bNlyKNpyUHDhhRfisssuw6mnnorTTjsNn/3sZ9Hr9Q7bbOuHIzzPxdbpOrZO1/HbJ60fuV2cZNi13MeO+Q7uXOjiroUedsy3cXerj7lWgk6SIU65rEtd2ZcDgAByAaRcAFkOxIN1GeihTj6IAp4i5L7nIHQdhL6LMHAQ+g5810HouYg8B4EribyjCZhMzOQwFDWzc440F0gyjiTnSOlzzpFmAhnnyHJZ3zvnHLmQRJ1rFYPpzxLF1ycr/Rgqgs4kYfAdVROcQatIjlrmObI+uOdII4nrMHhS7oKrfuZIrZPP4fI4QhE1IWQtZZELZALIhawVzrlAnnPkkMu4WsYBcE6GCbo+GJ+FJlx0nSYBEzCJobEQxvf/wMPTiN+G1X4wBtYNbsxWWTeKUAzbn1F+Z1ZeDgwSLDAi5sWjIIxPenvjwU//IOvfdtk4fTx9LoPo0RymH361kVM5ljnftSqqf/yL47PijSr5Rv1DLVKPaNXrVS2VP/DFRRHBpmsoDFrFB6GOy4sPxivT683RKx5AiDwU/cU5B3Oc8nyrPECTFUEfs/QArsiGKO9bPJzStoaBDipmXZSJWenidWNUn+jjlk6iSDhdJ0rXkemkPLoJ+my0PZHuEszrG4UBEiKKtpgHrBDK4nqKayypjEPuFwA4U2Q4KtmOh4ufYiYUEMJHJ3UxmffAxP59qwRyLLAUp2XAQ7td/GplL7rJJARnWOovlYmH2YkMg8tRafOI5dV19FkTDZonZGglImncQyVUvgPXvG5IewbITmXfEnlAQRxK69W9T/vTMauKGVDU0qZ9TOKhPxuExDxPleyRkYNXngj0scza3sbx6Tqor0vKX1WBRkE4zbEaqFNd8TgwPRzM/Tm4cVsX5zHjoOmcepxK30HF2JnHLZF0oGyoqWQr14q9YWCh41cJZNVAYy43PgzM7yr2Z9QwMcqotdr2pXE15pWuj82cgfcuc+EyV7+n5Z7jye0ctY9Q74WjE7MKCL0P9WfOc+SQxJX6hYwqpveDOSd0X6o+pHXyWUyen4g4EUiHOQAHQj/Utb51PwuBlKeIsxi9rCff5zH6eR9xFiMTklQfKFy4CNwADb+BddE6PGTiIXj4hofj9NnTsXlsM8aCsUNGog8UNa829P2DEQfc4695zWvw8Y9/HO9973sRRdGhaNN9wlOf+lQsLi7iiiuuwPz8PE466SR89KMfHelebnHvEQYejl/XxPHrVo+/6MQpdi32sWOxi12LXexc7GH3ch97Wn3Mt2Ms91J0kxxpzsF5mZSZpE4SdPVjPYKgaxdNxuAySWBJPQ88+Rd6LgLPQeS78F0HgccwEQTwicx7DnxPknvPdeAxSPXdY6WfOPpSlsQWyHKuCXycyb9+mqPXT5AKhn7KEWc5kowjzjnyXBokhAByLpAKgV6J2BsdQaRIvS9It3ntZFyQXgJ0/a5673kuGuq6XFd6FXiOA9eBIvuO2g9wHfoBLFQQpq61eBiSgyOUuiqEzCGQcY6cS8t5pgh9zuWoyuVQFlpZ9innQC7k2EsLruoT5RWg+0O9QkjDAPWRMMaC2qHnjtGHQj84GVzPeEYfZTzYPzQNNeaiwdJKy4eAwai/XGxXEJxi1il+WjqOSZYG1zFNusGMsRtCpunRiZpiPOOW1uuxJ+XWVGX1eqaPQQYB3RbdniLpnmOeTyu69EBWxM7rmHfGIHgOz3UHjAwOeTkoIuA4xbGKV5PCFv1DD11y3lTZqbEX3XxCAExAcNn3ZMCSD87QxFT7P+g5Sw9thTFBGPe8OZdKc7gyy2huFGcwSA6E3sI4UgnV6zbPKlUwFN87MOaXJgbVGV30GfWht8Ax7vTwkKgD32VoZkvyO5a5EAOqRvX6gHHBsFlwtHKOlHkYY3XcwAViZLLWq3H3mSqV2RxSekvuxiPIrknWjG4uWqWOQcurpKREPEv3RplMmstMNcwknVVFjbYrbWOqpnRc0wJCpNokbOaNbjSfC44sy+C4TkE0iJwaBEMIWSIIAshFrgkrZaMuue8bRJb6V7ej0t+lc6yyz0DfMwx1fybjmL5+mg9ElGjuGOdmxpeoSWpLxha6byv7VrerzqXqXFmLoYfGeRjBrsI0nlThwCnmyBDDhSa85ntIJdRxCsLrOi48RxJHj3nwmAff9eE5HiIngu/5CJwAoRvK2F048FwPLnP1GDjMkYngeIac50h5ilzI10xkhYLLM/l7r+ZTLmRZKs65TD4ninlBfUUhAjlXz4jGo6JpZKG5wCBVZyLJjMlrdpkkraEbInRD1LyafO+FiNwIgRsMkGw6fz/ro5N2sNRfwkq6gm7aRStrodVroZt2keQJkixBJrJSwry1gMYkciNMhBPY0tyCU2dOxWOPeixO33A6msEDFw9tsX/cqzrdu3btwlOf+lRs3LhxIJHaZz7zmYPWuHuLF73oRXjRi170QDfDQqER+jjpKB8nHTU2chshBFq9FDuXpGK+e6mHu5f72NOKsa8VY7GbYKmfoBvniNNcqrdikKDnBtNKR3yRVcmAwwxi6sr3kqC7CMjd3ZUkPfQcRL4k7qEnibjH6AtXxpiGnotG6GlCmyQJ6rUINbW/JP1S1dbuaYq4E7nMhFTis1ygn+XoJTm6SY5unKGb5ujGOXqp7It+VpD5VBF5IqVJxsE1eVUP/Kt9v6tncE3mFeFhjiTgRMhdR/UVkwReK/SMwTMMFvXAhecy5Xngwld967oMLuQxmFL4pQoq3fDl+ArllcBLLsN0LZp4q1d6n1eCxgvPBEmKzP7I1bkoLCFOM7iui5xzfXzpKVB4CORC6PNxOp8grwEYHgOiaC9EQfD1A5j54KnvhPKcFrRfsd0wrrAf6jN8qIkhm8cwOEs1xrq0bvBAql2CnukMYjHYSmbuVzUAmBdpimwli4IcU5eSsRRPybqd++urYYYDMgwYz6bFOm0cIOOBSeKhyL1J/FGKdzYNA7SdS+qII9/TPq42MJSP7TrFcujjVowhaoVD42ESPwbAICLSOKGuXBnQzJuNA9qzRX9/8MJbge45aIMDzf1i+3wpxJw3jv9snAYAePzKv8CvT8CJGmvKIRIAmGNd/NTlyJqbAQBxqw7mBFhXX1cioloZo4dgJsmGI+Wu0raaTJnKbnHjFA/C9MIMokaqo1o34A5uqKdmWST9XhHUXOQ6jpxzPlJ5NY8zoNgOe0WFsGojSbmNRMKqKrFj1OvTRM+4maqGDq1CG/1mHrtEeulYRt+aBEjvRyTKTPZWicU3S1AN64vSOBrXp99Xv3mr7VsjCkN0hRwLFEqu8R1TmodEcsmowgqi6zAHLlz5Hg5cxy1tBw4EXgDPUcSXefq9yyQ59pkPz5MkLXRD/eq7PkI3ROAGkhArUkvuykSI6X2WZ0hFioxnSPIEuciR8AQZz5DmKVKRIskTdNIOVsTKgEJMRFnPE3UPle7H6v2n5qvOq6ASx5l9qA0FTJJnz/U0UQ6cAKEX6uuO3Egm81Lu0nWvjppfQ82toebLz57jaUNTnMfopl10sy4W+4vY3d6NPd092NPZg1bcQi/roZt10Ut76Od9JHmiDQi5yA+ITANSnfYdHzWvhploBlvHt+Lk6ZPxqPWPwmnrTkMjaBzYxLQ47HDApPvss88+BM2w+E0HYwwT9QAT9QCnbZocuR3nAovdBHctdLFrqYvdSzH2rPSxZ7mP+U6CxW6ClX6GTpwhySQBJdImjN9UbjIbCMXWh7SL/sglXLVVqsWKZLoOPJchNIi6r4h64EpX8bFaiprvIfSl2u45VK6KaQIpBOC5ZTJOCDwH68Y8hNN1RdyVKz0ZAHypXLtMPmpzReJzzpHnAt0sRy9RynsqSXwvzdCJJZkvlmfopXK7OONIqQ9zrpVnzgWyjKObEIkvyDyj1/Lvp35vKvPMYTpJFLnbew6RdiLu5G5P5NzR/eu7DIHnwveAmqe8FlxHk37az1UqPhEfMIP4Gg+hORfo9fpwvQCJNl4U11wm0so93zAAaEOOQapg9oFAZV+DzAuBLJfHznLzQaUcAiA/y23JGJBybhgHpAGBk+cAeRoYRgnTQAFRNgqYt4RQo6YNBuZ60MN0+TlVmINeuosADDyAiNI2zFheIvysWFuxE8BhXBEr40iK2JoEvHoMujIwpkv00baOo1zdi/p9pbZpuZcmudxYv3WKLcGEzIZP90T5StU59SHpvNBfPEJQEqlKt7Jiu5J9wiD1Mku7Qc5ZWScr7lHTs6Bood6HyTCGUqI2w+PAfCXPBddx4DDAZQ4ilmCKtfAE8RO08l2YHHeQMhdzcODBhc8c+HDhaQOKATVFHgUP2ziwc3EPUq+G6/MZJI50uUzztKy2oqy6lshuhcyWyFmFtMnTl4krvV9N6aZtBpRtMZqcVWN8zX6gZVpVq6iRALSiS8SW9hFOWR3V2a65uk5HFGq26p88z+XcY9L9VvcX9Wkl2VzVLXug31Dup5Ixo0L4TTJfuv7ygoF1w/qRDAclJRfOAFlzmVsmtErVlb9PxTau45bdmyufaTsyHDDG4LkePAwqxbQ9nZdUYXoNXEmkzT/f8fW5AOlJttJdgR/6kvjyVBI+nkvyJ1KkeYqEJ0hz6bK8nCxjb7ZXKq1qORHn0vw1xtOMOzb7zpzT1OdVYxDddwRpYCwbvqjffNdH6Egl2Xd8nemaSDK912TZq6Hu11H36mj4Df3ec7yB56c0T9HNuppAd9MuWkkLC70F7GzvxJ7uHix0F7CULKGbdRFnMfpZH728p4l0xrPSPXCghNqBg8iNUPfrmAqnsLm5GSdMnYBTZ07F6bOn46jGUUM9FH4T0E27pfcPZuPCvXIvt7B4oOA4DDPNEDPNEI84emrkdmmWY6GTKJd26c6+byXGvnYfC+0Ui70U7V6Kbird2nMVu10iJCieqcGBzHhsGPbVSA+qVB7KZVS/WsBzHbhMurpLMujCdQDfUM4DRd5910XNd1APPNQDGbcuH2xcpDlHh9pEVmBFnLKcD/3SZkyS9kiR89Bz0RzzEHo1GRNvkPjQLxT9UJFfQMa595JckXSZTK+bKrKeSMLeT3P0FWHv0vIkR6yU+n7K0c9kf8tYeV5Sn3MBJLlAnGWKnJpXIfQ1F4yDVjEwgxzpuGYGgwiQKs+0K71Jyj0VRw8h0KgFpT4J9Bg5RU4BpyD3niNJBiDbQY8fjDEVBy8fCU0lnvIEpIo8k2Ej4wUBIKXdJMsFaS5i7MlgQe/pGb9QYs0Zaj4El9uklXz1Ps9F8WhhnK8g98K4FijvAHW8XMj7hUvynwEQOpRAjbcyLuSl6zQ8WJRBQxsH9EyAJgG5GDTuwHjIW53mj142CgWBhxpvWjaoaIM+57wwxgjozNClsRE0ZzSHV0S9iDsHKydYg0M0vVDgi1bKjslhdpAiZJrQo7A+qWsZNKAUc8ZURotWFNepJxXto9x91+UO4tzHTxYZOgHHWLoMhgS+W37QZ2AIAUQCiETxPgRDghwec3Gr56HDA/TyoxG7MXau7CkRLqhmDCW2kH1pxorS9RAZM2Mx6Xgll25RnMeM+WSOIrKGmqwVWaWQ51wqX6SAlUisoXLnkO6zpXWGQWFY1vShpNZoIy03yZHZ78ZGcpthvyO0HUOpz83luv9QxLJW3eNdKFdex4HHvILUKmXWNCxU3Xep/JDruNq9mQhtNc7XbJv2ajCy2JvEt2rQoHMSGfQdf4AEm2TYdwqVmf7Iu0LPPTX2aS7JcMol4e2nfcRcxvD2sz5W0hUkeYI4ixHnMRKeSJKs/khFzXmOPM/hqhAbGm8qB2deS9W7g8aO5oHHvJIxxYxpJpW9Oidc5sJ1Xa2Wk7psloaKvAg1t4bIjwqi7NU1QW4GTe2qbcY5rwXkxk0kekdrBxbjRSz2FzHXm8N8bx5zvTks9hfRSTsyRjqPdT8SkS6FQxgGg7WQavoOcRwHAQskoY6msLG+EVvGtuDEyRNx8szJOH78ePCEDy1DZQGsa6yDeO+BGTGOVBweUfQWFgcZvudiw0QNGyZqeNSxo7frpxnm2gl2zHdw93If9yz3MbcSY66TYKGToNVLsdJP0Uul63auyJIQhkLIi7JnkkTKZGYZACYfe8FYQQRKKpIQKpGaUooUCZQu7w5cBviuo5d76o/i0wOvIMi1QLq115WiTmTeU8RfPjQK6ZKe5IroCqQ51wnvhsFhTJH1wq2eyHsj9DDdCEvLNGFV5L3qRp9xec4k49JlXpH4DqnsSnnvJjn6mSTrMRH8tFDr+6l0qe+nOVKVKC7NRZHwzjCikBIsMlKhUDyi6qRYDIJzFcduKE5CFCReJbSTBMjRZJcxc9wgQwuU+z252tPySPVN5LuIAgd130XouaiHLkJX5hOgkAZP5SRwHKV2OfTgj+KBjlQutSgXhRKejiD3VaIvhgx94YFReYWA6xAhUWTTKUpnaaVVz/XioXyAl5nnAiBUu2ieEInX5NwwCPSTBK7raQ8MCknIcnmvyeMV4QVqMbKc4gNV1QPyhuECGXkfcPJI4MrFWhTeBoD2kDA9AMjjgxtklhTS4jqN/h12s+n9CoJfRkX3IwJsWB4GSD+KMSkp3rQOTI8fGJUZUw/pShmVarbpLSIHkKahACs/TAoG4hwpC5HDxU/dR8LNHo5ndP4FW915bKwx9AH0GRAzgR7ka58BfSawCKDvADE45pHCcRga6x8GgMFbqMOp5Th2/Fj9gCy/h8tu2ERaiciSIk5xoZQRWGcDVoTYdAEf9rn6YG6q48X4lo0VQ4kufREZ9rABI8KQ9/phv2JAqJJIQJIjIrgmuXTgSMKGwYRPgRdoUlUiuswtnZ9ie33mayJcOoepjNI9o/qT+sgkO5SduUq4TQJp9uEoEqzfM3/kOv3HPH28klKr2pPwBL20h16m/vIe4izGSrKCfiaJXD/rI+FlopzxTJNjPecqiQOrxh9S3fX9R/exmhOeI5VzLjiEK5CyFI7jlNRXB45O/kZEX3W2NkoEblAiyoEbFKqyG6Hm17QqO0CW1bLQDYeqyvcVpEovx8tY7C9iMV7EQn8Bc905/X4xXsRKvFIi0mZ/m54vw+ZbNZFfFcz4R4aXulfHRDCB2fosjmochePGj8NxE8fhhMkTsKm5CZ47mk4JIdBO2ge1nyyOTKyJdJ9zzjm49tprMTk5uaaDPvOZz8QnPvEJbNy48b60zcLikCPyPWyZ8rBlqj5yGyEEekmOPa0+7lrs4e6lHva0etjXTrDQTrDUS7DczdCOU/QzjkwlhMu1cqcInSYQsqQZuSfnEEAuBl1IUVYrtWsnANeVBM9TcdSOUzxQeypBWuGSXcRgy4RyLkKPKeXbRTP0MBZ5qAcuaoGrE8wxFO6iRV/IZ8M4zbHSzxArN/R+yrUSWoXrMBUL7w4h564m9FP1EEcN2Y4I3mrjk+ZkPChU9m4i49/7CUc3yUqkPc7ktr3K+04vRiYc7V5OpJRyCHCDfJmqLBNFbLcmWDCVpsGnawHKFIxyDG9F0WTGMq3Wl1R7Nd7KiyJyHYSBi5oi9oWXA5PkPvIQeS6iQGb6lwYBVhprlzFNjjXJEoV6L/tGqKR5opTlnwh+OoTcF5/F0PnClDcIIGN59T0DZZxixTxPEw9RFJQ8GzSJZELfOwUfHUw4pue0MmRokg9KBAiV4LEwCpC7/1DvAG4YeNQkMOeBJu6m14LxPUBGB64NJtCGBDPPgWmM0OcTNC8LA4Awrk9ek2yUMOap7oMB0qjGxDAaqL2L7ylSf2mKoySOA4zhcc4KJtHGM7qfxxRaGHNiBELA6QoEAMYHZkEZZOjoIcee5a9h2fVwa/pizPfvwY133zqg5g68N9TpYaiqf7SsMFwwnVVblwQyPpPbsjS8FQmZzD+tyKJMTImQukyqfNr11iDURHbJFZlItHZXJpXY9TSx1q7PymW64PhlVZv6iYxDHBxxHMP3/UKhN8oUcW2EKSd0GwaT1FKiLR1zbBLjEURYK8hqGRF+ajPnHJko3KrTPNVu1nEuM0HHeYyVviTH/byvM0JT/C0RZJMYDyPK5jiR8ktzozqWDEzHYcuOgPaCqCaco6RhHMroh8Es1XRez/EkWTbilB3uYKw2Jmsju9L1uubXUHfriDxJmht+Aw2vgZpf0+7rB6oq31dwwdGKW1jsL2IhXsBiT5JpUqKX42UsJ8toxS10s24RG20YwmgsqA/puKbRTffxcJNmcW+ZnhOOjHcfC8YwEcqyWVuaW3D0xNE4duxYHDd5HGZqNhGzxcHBmkj3ysoKvve976HZXFtWvOXlZRkXZGHxIABjDPXQw3HrmjhulUztnAusxBn2LPewc7GHu5d72LPcx+7FDlZSmShuuSfjzeMs1w/XuoQS5Bt6QBakqkOAkraTqseKfCSaMABF3KV0eaLEZ1JldYiQM6bjqaHIjOfKhGgUt+4q4u4opd1UrokUNyNfE/YN41KtpazpjlO4WMO4vpQL7W6+2E0Qp5TpPR+qtgKA77ISOTfVdtNl3iTx0n1exr87+yHtuueFQLvdRrPZhBDQZeSSjOs4+G6sSH2aabf6XqKS2Sn3+jgjIi/f0zrKMZDzQdd6k+wBhWs9U0o7wJBxjhQAMpRIU8XTvkT0qkSVDDgmzLhcHQPPCnXeJ1d8pbzTOETK9V7OC6Zd8Wu+NOaM1SS5J6XfN2LxPZUpn9yiBYQk+oZaXCbtqoSf8X6l3YUfhrJygCL/kvCb25UJfzXJ3v7gOQy1wJWhIkrpLbnz032kFGLqT+piVmKgQNnoUoyVVgEVoTYNFHmp7YMJBItXod33NUHnxdwuzQ8hjXwkvOn9SemnnAAoDAycC+SQXgZUdSDNaf4WiQdl/gMmdTcusJjMIOA59olJjAWA53YAxtaURM3stRAcngP8OMghkgBxFGA6mgYTrBQnS+SMyJsZj0txuqYrslYXyXhTIdwEk/RW1WPTJZnId+AEJcJoujwXbvqscp1GdnUaN1YuW1RNxkbqfiayEhnhgiPl6dD+rJJbM2Y493I0a82CKJtkWSXrGkaUzWUOHEmIlRu1SYzJrddcnuSJVo77eV8nporzuPRHJKxKjM3Perwq7uY6/l15A5hj6Ls+KPzAvF+IDHNwTQJTniIRyYCKasI8N6nKkRPJzNdekdCs5tUkYfaK93W/jobXkHHKXl3GOKt+N+ej+Xv1QLgsJ1mClXQFCz2pPC/FS9qtezFeRCtuYSVZQTtto522C9d4XpToYoyV57ThCUGGFQiUMpUPU6n1PQVoA5ZOJKdU6vFgHLO1Wayvr5ekevxoSaybx6IWPLjLVFkcPlize/lll112CJthYXHkw3EYJmo+Jmo+TjpK6jfDfhiznGO5n+KepR52LfVx93IPe1sx5toyS/tyL8OKKqOW5LlOmMWhEsQUPp0oSmjRgzkHaTycC6QCoGhY+tGiHyeHQWdXJtXcdGP3XUeRdpkQSWg5S+jkZK4i1w5ztAJLxzCTvQWerKNeC1yMhR6akYex0MdUPUCkyDO5YzOD1FC740wUZDbjaMcZ5jsFYY/T0Y/wQcXdvaqwmy7xWdLDjPD1ts3QA4sOzgMNqb9xxpFkRkI7pcR3ldu/qcj3M7Usk+Rfl5xTf1lFkS8roETolKcFivHXJJzJ7Rmkkp3mAnEKPYcoJIH2F+o91y6gg+7MJqTxpyCi5Th6R6v1NN88RcxpzAJXeWX4LoJK4kAByNJTLlUDcLQ3R+Gar0i+eqXEfVzIBHR5LuRrRa0fRdrJEFC463Ptyp/pz1wbCChXxIHArdyDNZ8qBUgX7yKhmeEGrj0SUEqeNhysROoovMIk+ZkK18gFdH+MuhYz7GBYOAK/cxeSVoZ/3fhOTAcZzlz6Oo6fcDAZDrarZKBg+gT4Rd7Cj8QyetOnYCldgfvjEMfNnoiTjz5tIDZ3gDiDFWWO1IM4kUiTRBMJrhJhfZ3KQqLjgg0SXCXERIIpgVXK05Iivxp0Gw0XaXLlHUWChynGA8TYIMvlcJ+sRH6XVpYQRIEu4WSu66SdEoEm12pdV1h9NlXKUQqy2af0fiA2G0WdZTKgUE3magw/jQll4NZlp5QanvGsGCcjZrmYbkzPB1KVQzdE5EuXa50FW8Upk6Jc8yVZNpN5RV6kE6KZLvGHM9I8RS/v6VJXS/GSdOvuzWGhv4DlvlSj20kbnayDbtqV3gWU6VzkJbXfJM9m/gEyGGnl2hgL0+BkGqeAIj+AB6/kdRC6IZp+E1PRFNbV1uGoxlHY1NyELc0tOG7iOGxqbILr3r/KvoXFKKyJdN94442Huh0WFr8x8FwHM40QM40Qp20evV2ScSx1E+xe7mHXoiyhtnclxnw7xlIvVfHmGXpJhiQvMmID0KTKY8WPFpX0oRhWUrKEco3tpVw/95pe0USqzOzFpfrfKms4JYmTSqAk4qTeCUASckWsgeI4hXuzVNUlSXf1MQPPQSPwMFbz0Ag81AIX4zUfkU8u1A5C19Eu93T9ORdKeR5Un1v9FPFKQeKTTBorkiRBECxCOyQz6Nru1Vj1kst8lcT7RBqLBDSyz6TLN+Df53lkxsenyijRT1VsfMKNrPSZIvhcl5jrK0MFhQckKq4/yblSMQvSWSLyMLiQ8Z7CHzShV5OHSL1sL1PZ9NVyFA/+pG7rxGkwXOyLKVy+fs7heW6h5IPmpbzHdGUBh+mqAK5KaBh4rJQPQScR1EYiVyvzZAiIfLdkHKDEh57jlLd1yt4VNE6rkfZsgMDz/cblawNBXjYS0LYHAu3tYuSN8FwHkcPgOp40wKmkgSbxr4656dLvQGZdv703hd3tPTjxhK1gPAXqZyGZ8NALzQfhqkdAGWGyhGPyJSRTp4Bzjpv5zThh9gRs2ripMCCgIMNVN95c5JoEExHrp/1SMqW19ZOzqmu0SYKr2wwjwdVkXKTYV0EkZZgrtfnXy3r6vS7lxMvqcpIn2vW6n/UHSHE/6cNxnVK8u2mIKKnwKKu6lL3bcRwIIWSdZuVeDz0/CgNeJmTf05iYRDnLM50x2nQvNmESZZ0BW8UpN/2mJsumqqz//EJVpmWBGwxVlY9EEInupbKsVTtpS/fu/gLm+/OSSMfLaCWtUnx6whPZ94bnhJlMTRpoB2tn0/uMZzqHAt2LzPiuJ2IuIJSR0FHG/4Jk01xyHVer1FPRFNbX1mNDYwM2Nzdj6/hWHDd+HKaiqSN+rCx+c2ATqVlYHKYIPAfrxyOsH4/w8K1TQ7cRQqCf5ljspti9VJDzfe0YC+0Yi70UK70U7ViqpmnGIRwha4u7UK6QhQs6Q5EIihKtZRnXNahTVTosyYyYXMMt2nz4JtdmSiCma6CTMulS7KIkpJQkjNxUAWj1vfgxVu7ORjyzw6hcm1NyX46Uqt4IvRJBH49ClcjM0XHPoScT/XS6bQRRHUlJWTfcxhWJX+omJRI/iuQ4jP3/7Z15lFxlmf+/d7+1d3d1pzudzkJMJEIgCgyyyE9GUBETN4Y4LnMcB0ejhJFRMogoRETZBOJEEAbFg4gII+PBMCM6MwICMyxRHMMWICZAQq/VS613v78/3vu+dauXbKS7U+T5cPp0V9Wtqrf73kvqe5/n+X5j7ueTzbSPq8BrijBaG29CNx4+/6wpMhuAPkBC3vWZW70bVeQtN2DZ8A6PlGMCnpvZ1fPifdaR4PqxqnwojhnWiSEzz4OQVdDZR+joGJAAVtYKRfdF3IWeS2+eP+37gKzI0brrIi8MQziuDxsxp/eoZbrh78c/Ck7y5+UVet5KzoVlXJzy44zdlqOxCkQpBdFFl+iCENuviogM5MkADZX5SLAbmoyUrDZU6DW5Lv65AN7TfqxX38PGin5MtMfn8ier3je0+AcBLDeEH3jCuFC8frTtZMVcuxrAdWw808diYZaWSkgMvIiOOXvf0vmw9RJqmXnwiiFC1r6DXdYuDA0NiW1kSW4Ut+NmiU3FRFpLTxC6U4ngSdum96Jqydu6x4teLparbnWvWq7jzx1vFDVeKHPRI4i1rk9mWhZvuxZCWWLiJ6kmkTSTbC5ZklllP2Cu6vH2bi/04Pu+uBjA18iFNK9sctf2OPGW/3hVOaklGwy9TK1eVRbfeVU5Mvji7dtc4L9RiYtobuo2WByEU3BYa7dVn48uOkVU3apwPrd9W1xcileSxSiGVD+2FURjGKEs9iU/FhtMyvg//NGxxs3yZLBjRvgbhLIYIeLwY09XdKS0FHJ6DvlEXlSq56XnYWF2IRZmFlLrN/GGgkQ3QTQxkiQhoatI6Cq6WxI4dtHk2wVBiKrjYbjiYNdoFa+NMqd2Js4djFpeJM49+F4gZjVDALKiQJUAHrWlKhIUoKGlLwgkNv/s+whCwPMROaP7cHzA9vg/0uPzaetVdCUSWGqDwGCzwprKMsgVWYLn+4DHtpeluiFdEIYxoSQJwyNe+dSUeks8b6fXVBlabF4ZgYeWdALpSKjXv1i1PZ+KzOZU5jxuRmJKAqtI2m6sijxJhZ3fV7a8yICO3TfVrHG9TT8uzmMz7ZPcFxf0qrJvH0IlUQWWgQntv/tHEIRiPp61r9fFetWJt9nHoudiM/L87+l4Pmy/3lbvgGVg8w4PN4xSBaIPgw2z6gqgQREXd3imddwDoV67r3885PnsSmTNzuenfS+E5UTmadEcNK/Yx9vtgXrbd/wDqpgN58crAIm30caM8eLxdiLdgHeXRGaIfK7e1CQYisKO6UicqxMEe5R1H7XjG4bMIpHGbbu7iz1TwdvJxxvoPbNlDA/s+CPevSSLUJIhV94Kw3sTqpnYRaIJ79V4+y/styI0WiCbbbBKFh7Eg3jP0vdg0aJFYhZ5X82heKV1QjXYdxvbqHdTWZ5MVIvW6VgVcLxQ5sfnpH/jsC6Q41FG4yvKmqxBgwYoYA7istbY1hvW48e80BPf/YAJZsd36tX/mFB2XAcoTzTWi+dMK5LS4ICdNbKiqpxQ6jPKpmo2RESltJTYjrdfxw3SDiXGi2jLt1Dzaqi6VZScEqtIR/PRY/YYqm5VzLaL2CvfBeSogiyxi9bcsE9TNDGaoMu6OB55PrcXeuJnN3QbM9nj/w+NzP0USYEcMl8DUY2GIubgeWUbqLukm6opWr/ziTzaE+3oTnWjJ9ODRdlFmJuau1vXb4J4o0FHO0EcAsiyxIzPTA0L8qkpt/ODEGXbxWDRRu+YhV2jNQwUI3FecTFac1C2PDZv7gZRmzprE+MGQmZsjlaJ3NWBAJAkVnGLhJMbcFdmwAujGdIghBPldAN1kynWhgZAihy85Xo1nbeg67FZYF4NlKQQQShF1WgJEoLIQKpuYiccwwH4gQ9VrUaihwvyeiu9JLGugHiVk1U1FST1uiO4EOaagoQuoyWpIaGbDRV3MzKe4+3H3EXd9hpn1cdX2y3Xx1jNbRD0UznHc+Oz3YvzxtZ4kRuv7rmiurfHnina6g8MrudjpFiCYSbhRlVWyw1Qtb3Ivb7uXF/PkPdFe/34iyKOV88Qj+eQ87Z6dgjyWfi6JJRlCZqkgGW1866MeF46f2Y9Zxwx4zPu/h3dLcY/aq4Pz+aO5RDu4vW2fUQ/obEzm49/SPVZehkYN1dfb4tX4sI/PjYigx0DCj92JOiaIs6x+rEftdWPb7GPzdQbJqtUGX4ZLUkDerIVQGujT/OE+dpG5iXnAAhR8y3sqrGKeaiFGKgOTNlOPaVgjlWWJzi2jxfKCOpO3agbrcW3F//FRDKvBMZFMq+Us/8LBQ0z6HGhPV6o85lZ13dhBRbcMGqRjyrf8VnZ8VVl8f6xqjJvv07qyYY8Zf5d9mS0pFvqM8paEgkl0SCU3+hV5f2BR11ZniUq0dwUruaxWWne1j1qj6Li1LOjbW9izFiDk37Usm/IzFQto2egQIHruwhlZjjm+A7sgFW0rcBC0Smy4zy64FL35GDwlnHuhK/LuhDT/LH4ce0FXkPOvSqrSKgJ5IwcWswW5M085iTmoDvdjfmZ+ViUW8SMDg/BCyoEMRV7LboHBwfR0dExnWshCGKWUWQJuYSOXELHks7MlNs5XoCS5WKoZGHXmIXeUQv9RSsyg3MxWnNRtlxUHS8SNJHrOuotuqamQDc1VoHmJmxSVKsJJThB3DSsPovu8tlVP4AbArbLPmbW87ZjLe5cRACQYuZUXJybqgxdU6BKMhQFkH0mIIIQ8DwfXqxlOQzZ1XxArouvWOWSzbZLQqzXRRhbFxcmYs5YliKRzqPa6s7fiViFvSWpNVTc43PiQL0lnAvIeiRavLpeF/QVx8dw5BxvRcZsU3k8CRO6qcznhKP9RBGvK3vvHL+vqAr7W6UT2gH5UDdhPt5nIwNWLH5OuNWLlnom9GuuB8utG91xEV8/7oOGeLF6U0NkRsdFtATxs8xd0yNhrMr1C03RpszYMJAAOYxa9SX2+tF7AZKogPG5fD9ka6w4kRt6yHPH6zFgE6r0/IewXmnnQl3iHSqQIMWq9vy8kyUJqjUME8ATD/8ab0qWsSCnQZVCtKguNHnfZs8fdXZhe7UFQAceHHgQ8qgshGrcPXy8OBZzxDHhERfIcfdkLio0VRNCm7+HJLE4qHh0VdwUavx8qx3YQjRz4R+fN+fbT+a6LSK/JFkIZVMz0aK2MIEczSmLFuzI+ZrPKXOXbC6SdYW5qe/pPJhNR+yDiT2J6JpfQ8WpCMOxslNmsWRe3XWdi+i40VjcAE5VVBiSAV3VkdEzUGVVdCrw+XYncFgOuO+g6BWFMR8/pgB2LEtR5mjcQV+RFCTkBBSVHUsqVDaSIzw6gob1sWWxY1pWZNb6beTQarSiPcHyqbtT3ViUXYSeTA+SWvKQP04IYl/Ya9G9evVqXHjhhTjjjDOmcz0EQTQBuiojnzaQTxs4fG5u0m2Y63iAsZqLwZKF10Yt9DY4tbsYi1raLcsTbam8AMhNnQxVQUuCzYFzszZFloQI8AMmyquOB8cP4HjRbGpsbjUI2YyyzefP+dx4JPK5mJElQFUUkZutq/IkwpNVARWufoBI0IRwPMDxPCFkuMDiedx8hp2/n6bI0FQm1tmcsMKKn9H64i7W8XbjuECPV88TsZb4bEKFqRnivqmq1nw/TVZdb4g+EyZ0HmzPqZuweXt2jq9nr+/BQT5WlR9/cWE6mY75eJa1zS4SuV4UP+eziyJVh31ZsZb6qqjGB/X8+Ib9EcDlaQZ8Rn6CkIdoRRe57wAQjYewzgdFXORSlSh/WI5MErnhkRRACmWWHR61z/POFIB/MK8f90EAFiUWMkd4dhEsas13AxwG4AlvCR6xskg4AbLOAP520TB6Eg09LZMy4FfwnDuEastijHopwIkMmHRZiNfxGc7cLblBjHOzJt5dEF1E8zCu9ToSM8LMKxLNQgzF5qg5Da3f46rKpmIio2UmGHrxFmxeSeaVZd62rcv1WWUSNq+fvRHRNY8JaW4uxrfhQjouovlXPUGA7SPuH5BSU9BVXcxLs4SAeveC4zuoulVU/SpGndEGMR2/eMMvHvE2bx5dZ6omlFCBruqi3Z93H4hxAngi5oxHncmBLFq/c1oOWSOLNrMNHYkOzE3PRU+6BwuzC9GV7IKu6rO2vwjijchei+4vfOEL+Pa3v40HHngAX/3qV5HLTf5BmyAIAmAf+rkA7MyaWD6FUztvpx2rOhgoWXhtzELvmMXEecXGaMVF0XJRslnVnItzIOaALsswdAkpXUM+JYt8blUCG5YNAUliBnBVx48qvMzoyxOZw34k0EO4AYtKqrmeEBesFZ2Pn8bj0errMFXmfG3qrBU3LjiV2JxsEIYI/BBeyGacbZdXW/nFAAABE0qSLIkqqCxBiHQxtxstKu4yPr41HuCGbrH29uhnIybW+fesqQlBvKcP/HxmO15ZtyYVjey+sarbsN1UJnSShCln1XVVRuDaaM16Uwp6Tdn3ueQDiSxLMGQFhooDNh/PDcu40Z3r89b6uNFdPVe+JmLn+D7hF0qY6V3J9sQxL/LAxwl5Xs1mVe7GWXmFd45o9Z+5+aEamTPCM+ANAEcb/WhvKcMMbeTHnkV7NYTqYeI897jDwfAryLqjyChJqL6FWkWHq2VheVY9GiqMCeUgFhEVM/MSEUUht+9rdL6OzyrH3a9563VCTbDvkZkXn1FOaOz+eEWZm68R0wOPOtsbEV1za6h4FZH9zbe3PKthxj0upMMwrEeWSaxN31TYfLqmaMKEj3dBcJOyAAEs10LJLaFslUXFm89Qc8EuxHSsMh03F+NRcdxkTpeZq3oYhnBCRxjYOb4DHz4s30LFqwCILiDKGkzVRKvWihajBfkEa/3mrt8L0gvQmmjdZx8EgiBeH3v9r8LZZ5+Nk046Cd/85jexevVqXHzxxfh//+//TefaCII4BJBlCanIZby7NYm3TrGdH4SoOB5GKg4GizZeG6sxcV6yMVyxMVpl4nyozJzF/cg1m4sE3t7NLwTkotgxXak7p9uuA03V4Ecz1pWoPd7xfbgeRByTcHgOoxzjqOJWtiTW2iuMkkLRfl6fl2UVSD4vy3PMVYXNeadNVcylA0x/+5FzPMuWDlD1gTD04Idg2cnCpCsS6lI9ckuRWdXY0Oru7oosiSi3IBJZvO1fiCWwdU4l0McLeFNTkDRUtKX2zcCN/a33bD7HK+2VigfL9VGq1hD2W1Oa0MmSJC4c7HamfZyg59vuqwndTNAYO/f64S7nwrE++nKiv3+Vu9W7ARP0kZDnF0wsL4Dl+BMutjRU4/0Ah0FGZuQ5HOfswOKUyxoJypPVt6UJN+eCfWHXU/gFxjBaPhKSYmLb6DZRWdZkZhiVUBIwjHF5yryqrDGhzI29TNVsqCZTVXn22FcRXfNqzEgsFoFm+Y0XYfiFF8d3GqLPuFu7cE1XDWTlrHC61yR2DPCOhhChMNcru2VYNUvMYo/PqQ7CQPy/OB6fJksyNElDQk0wMa2o4pg1FDYrH4YhnMAR89N8jr/qVTHmjyGIXCF4F0VCTaDNaEN7qh3tiXZ0JjsxPzMf8zPz0Z3uRkbP0LFMEAcZ+3Qpdt68ebjppptw1113Yd26dTjssMMmhM7fcccdB3SBBEEQABMcWVND1tSwcDdmcI4XoGK7GK46GBhj4ry/aGOgZGOk4mC06mDMcjFWcyInbCYQ+Dw5y2hmZmgJXUFbyoiM0WSRU+z6PqtKRy3EThSrxdrbfXg+GqKYvJijs+OxD2aV0BPZ1MD4iKy6oRWf6zU0GcmopZzPjic0JtJ1rV71liQJXuQUzuaKmeGdY/liPXWf7RAy6vnMokVSkYTwN1QlakOWIpEUzQdHwopnOsuxD3jxtnJRRdejHGxhMlc3nEvoClqSey944rOn/AJJvLI+wUE+9nPRckVrvLUXJnRTmc+JOfZJWuQNdep2/oMJiV9oUYAEDpyQ58c5F/C33vI7uNk3o3rEGRhK5yCNN+Hag3s5f3yFW0TpyReh6imsO2WdqAJSxe7gYl9FtOVbDQLW9d26iB7Xzu36LuzArs/hh7E5/Cjr3JANJPSEOD549JskSaLdms9LV9wKRqwRll0eMFMzO7Dh+76ohMdj1/h7SRIT8KqkQlfrF2/4l6EaYqYegHC257+j4zuoeBUM28MN1W9ZjqK01BTmpOaIfOq56bmYl56HBZkF6Eh2wFRMVCoVmr8niCZin/ufent78cADDyCbzeKd73znBNFNEAQxm7A5bAOtKQNv6pjcDI7PMZctF4WKg4GijV2jVbw6VELRCZk4r7koWR6GSnZD9U6RJCgx07SUpiBpKMgmNKR0FQmdZTMDUpRtHInvaCbWcln0lRvNQ/OsY89nFwDcIBC50p4fshi2IEBYYxnmUshM4eJO2gqPc5PrEWkJTUFSV8U6dVVGUleQMesu1LoqQ5YgKp2OG8AJfIQBUHN9lKP2Yy9gM+k8mlWJWteF+Z0EqGqUSa0q8MMAri+jbHvR35s7Q7P5X0iANi6WSpIQRbBFYlxTYHCTudh9iagS7dkejEQAXVXYftiPFu7xJnQTHORjP/MW7pHIhI6L+KlM6HjcnRE51U8lzsfPt5uRS/h0mdBNNw3z8YjGHRIyCm4Zv3GfQaKUQJfZxb4SXUiqyb1+7TQAz/0zujrbkTNoxG2miIto3pothHT0c9WrNohqPpMcd47nM/hxce0ErGJt+3UhzavSXEirMstcT2pJmGbUyq9oLItdZv4L3L2bC/aaV8OoNcpayn2LiWnfbsgXF5FsYciyqbmbN9i4QVJKNmS6a4rWMG9vKOx/OtyEzw99eL4n3n/YHobjOfX57MjgjI8vzE/MZ63fybrr97z0PLSZbdCU3ftKhFP9j4cgiIOWfRLdv/jFL7BhwwYcf/zxuPvuu9Ha2jpd6yIIgpg24vPm7RkTh3dN7twbhmwGvGS5KJQd9Jds9I7W0F+yMFSyMRLFqBUqDl4bs2KO1dwEjWUiM/GoIm0oSOkKOkwDSY0JSoCZUFlRCzWvEnpBCMf165Vcn7WWewGEi7sfCXTe7m75QVQ9d8FHpfksOM+IlmVuyFavcOtq3ZiNm5gZkdDVE/XWay0S6aIl2WNz70HA7iu5HkYCh1XTw3oBMwwRzfxGUXJsJ4i/jRlV6l2fZXCXbZ51zH4fPmusCMOiEI7jQNd1qDJbp6FNZignj2uFr4t2ORL9PJd8aq/+qQnDaJ7dm2KmfZyDfMnyMOQ5DRX4qRAGflOYz+0po/1gqn4taF+AocIQ3tb5NvRZfeir9WF7eTsAIKtl0ZVgInyOOUcImamoVCrkKfM6mUpEV90qRsojwDAmVKa5cVwQBkJIc2HMq9FcXNtePUvah9/g1s6FNP9KqAnk5Bxr949VplVZhR/6sDwLVb/KxLRnoeSUUPWqsD0bNb/WIKbjM9lcCLOEgFhlWlaha7oQ7HxGW5EUGKohRLahGlAllY0KQUIgBULQV90qxpwxWJ7VED8ng+XeG4qBrJ5Fd7qbuX4nu9CT7UFPqgdd6S5k9Sx1ZxDEIchei+7zzjsPzzzzDNatW4eVK1dO55oIgiAOCiSpPm/elUvgyCm24/PmxZqLQtlG/5iF3qKN/qKF4QrLOB+ruegbsyIX6sipHcykSo1VRdO6ipTB2sbzKR1pU0VSUyDLbLbbcn2ULQ9OZKLlRq3kQVQZtz0fjh/lnocs09r1I5fpMIyELdsuBBBGVfUwjCKf5HrYEjfLUmNCXY0ZxLHINR6/xrLKDU0TYlGTZZFF7gqzNdb+HUQXE8q2z6r8YVh3z44a2VW5nvfMDesMTYGpsgsJhqqIiwBV20MlqqwH0YUPL+ARURMF6EQDuYkCfXyM23hzNkmK9puqAOa+H1+TmdDV59cnzrcXay7sUl3ET+UcL0lctCvjBPoeHOSjqvyBNqFLp9N49dVX0Z3sRneyGwBg+Rb6rX701/rRW+vFC8UXIEkS2vQ2dJld6Ex0osPoaDAk830ftVqNRPc49rcSzeGiGQB814dpmOycjWamncARbdeu54pccD47LaOxIi0c2zVDmMxxMStDhu3bYq08p7pYLbJZ7SgiK+4Y7gUe3NAVM9NBGIhM6XhFPKEkoOoqFInN+fPRAz6zr8iR6JbrWeOqokKGDDdwmemaW8GYPYZahf3t3NAVs93caC+pJtFitKAtx1y/u1Jd6Mn0YH5mPvJmHmmdWr4JgpjIXotu3/dx5513orOzczrXQxAE0XTE5817WpPA/Mm3c/0AFdvDaM3BUMnBQNESZnBxp/bhisNa0CNxzlvItVibeNpQoy8FHWkNGVOFGbWThwCqtoey7aHi+CJ/2o1i1CQwEzjL8+G6zHCOR6yx92QinQn2EK7vw/Yi47WAfeiVx0VS1avoiLLImWO7rkh1ARiJWO6knjJUJnZVdp9wa48i0xyvnoXNneaLNRcFP0DNdqCpbsM4cAiIGXNNkaDJLH89oaowdTm6zar1UpRjXYnEehBFvPG4ucn82RRZEgLdGFc9bxDtUUs8vz3VfLcsSzCFMdq+x5T5UVfEVPFu42faR6pOw3ZTOcfHTeh2azg37j4u6OP+AACQyWRQrVZFiy0AmIqJhamFWJhaCAAou2X0W/3os/rw5/Kf8czYM5AlGR1GB7oSXeg0O6HbbD72jS66X6+I5pVeXt3lM8gIIYS0HbAKseVaIj/cDVxYroVQCoULNhfThmKgVW+FmTRFVdqQDWhKfVba9m3UvBrKbpnlSttF9Hv9qHk10UJe82pwPNZSzmPZfPh1MR3BZ6dVWYWhGsjILMdalmTh5q1IClRFhS6xuCxFUcRjmsTEP6+YV70qym4ZZaeMgltA1a2KmC7+vvz3TGkpzEnOQT6RR2eyk7V+p+djbnouWkyWk06imiCIfWWvRfeNN944nesgCIJ4w6MpMlqSOlqSOhblJ9+Gz5tXbA+jVReDJRsDpSjjvOxguMyc2scsF/1FS5jB+WEIGUzIcbfypK4iaypIRxcEMqaBtKGKSDMAcPwAZcuLoryCmIt1ZLgWiVHbjS4CRAKdu7gHQQg/lOB4vnie6/sIhVEcAISinRthCEliwldU0RVJuKyr0TwwF+O8SmvqLMrM1JnAg+8hadY//HK3bNtjcVkVh1XQLSdEybKFmR03q+Pz6Wy/sFEA/t6aLCFpykioKmuH59nXkUV8CKDm+Kg6HvyAV6xZBN1k8Pb9BkO5eDU9ZijHzOb2LqdckSVh+Lc/eLw1fg8Z7fy+kuU1zLlP5RyvyFJDvJvVX0QQBKg98x9oT2lo8C2PZlOTAOYAOAohwtDEaBCizyvitdIzeMn7Xzwb+pAqbCtdb6551tcrovlriIgzmTljM+tHVoHlYtryLNT8msgY5+3PbuACYDnSYk45mpNOaSkRiRb6ITKJDGRJFi3htm+j4lRQckuoeBWM2COsGh0ZoDmB0+Aozk3KuNFZGIaie4VXpxWZCeSkkYShGsxRXFKFIZkiKWJum7uBC6d5WRcO9CFCJvSdMkpOCSPWCCpeBRW3Asd3hBkbby03VVaFX5BdgI5EBzpTnehJ96A73Y3OVCdyem6P89QEQRD7AwVJEgRBHETE583zaQNvmpOedLswZPnmJcuNxLmD/rEa+oo2Bsv1GLWhiotdoxZsl7mYB9GsNatCM0GbMliEWi6hI2MqyJkJpEy2Bk2VIYWAHwIVx8VoxUPZdusxU9H8OStQhwgDwPLYbLYfCWHHD+D7TLzz6DPH9eEGIWwvRM1lc+jczZ3HqoWRURyvqvNIM1WWICOAoWvR71GPXzOirPSUoSKX0JDUVRHLJhzWo9z1MLqAULaZaZzjsbVZbojhKu8K4DsGDVpRi10gUGW2z9IGq9hrCqtus+Q1JvL5BYyqzcYD+Fx8LZrbHw+Pa6sL8UZDOSbS5brZXFRx3xfXdFWRX5cJncf9BuLmc9xBPhYtNpJmaQPlSg0dZqwlvuGigtTwU6tsolU38RZ9DgIABb+CP5ZLeBFAe8sUV6xmiAMhogGwtmtJrTtiR2I0radF5Zi3Wle9asPctBvU2555RZhXpnVFR0uyBSkthaSaZFFViia6O3h2ueVbKDpFlJwSyjVWnS5bZXhg1WfXd4WYdgIHru+yNu8gEEKaz07z34HPNWe0DAyFzUjLMqtO8zlq5qWgQ4Einhs3KMvoGSTVJGRZhu0xwT/mjqFklzDkDqHklMS6+Dw1F+UJNYGckUNPugcdiQ7MTc1FT6YHXakutCfakdEzNE9NEMSsQKKbIAiiCZEkCUldRVJX0ZlN4PCuybfzgxBVx0PZ8lCo2BgqO+gvWugbszBUdjBcsdm8edHCjkJVxIwFYT26TFdlmKqMlKmiJaGhJakjm1DRkkgIx3ZNkVmUWBjCctn88ViNZWrzCrjjRx/Qo4oxa4/24QU805m5t/sBN2sLhLB3eH50GERV7QCS5EFCGAlN1uouSRJkOWrHj6rXvJKuyawFns+gGxoT6IYqI2OqaEvpolVcU+VIEzK1HYY80xzRxQ4PFYe5uztegIrjo79Yv6ghjdsHfB5ei76rsoSkriBlKDB1FarEKuo8Mi721vBDoOp4KNbY38SKRO1k6Gr9AoSonu9mXp13Euxru2zcpTxtTP1RIgxDjHYbeP7xhzDWtgKVJUv36X04KQDJylNIpV6CmW7Zr9fY3RrdwBXCeTIhPV5gTyaiee4yr0YDQEJjWeFcoHIhW/FYVJUQs5GQjrdYj69KZ40ssnoWaS2NhMYynyWZVby567cXeKh5NYw5Yxi1RzFQHWDt5JGAD8KgPqPt23ACB57vCRHPf68w+o/PTPNs64SSgKmbouosyyyDWlPYjDSvUPMqPG8H1xX2ldWzQvj6gY+aV0PRLqLoFDFij6Bkl1BySrB8C07gwA98Fm0nqzBk1vrdZrbVW79T3ehOd7PWb6MFSS0JeXwkHUEQxEEAiW6CIIg3MIosIWNqyJga5rYkptyOz5szp3YXQyULfSUbA0ULQ2UbwxUHYzUXO0dq2DZYiRzWmbGRFLWJ8xngtKmiNaGhNcVa6XMJNn9uagp0VUIYSvCDEFaUqT5WY+/rxszhPD+MxaJJCIIAlsfM4QI/gOW6CCEhCCX40fw3/7J9P4pb8xDa7EJACLD2ewlRizkTtrLMWl41BVBlZiLGnd3rJnfcjIxllrOZeg3taQPJqBLNzceibnogmpvnFxbKNutK4PnVNTdA0XIn/J7smUzc8zl+ValfQEgaCtK6imzCYEZ10UWGulBnFwhCsIi5iu2hUGHV6JrDLnCMh8e1jZ9Nj9+X0Bpb4k1NEbFge0JVVWQyGZRKpX05dCdQLBaRz++5yn0gRTSfXxbmXIaOrJEVkU1+6AsTrrJbxkB1gAnouJBGACmUhJt2fFbaVEzMScxB1mBilJt/SSFzzA4CdqHK9V2U3TJG7VG8UnpFvIflM8OxIAjghnXncDdwhaD3g3o8FjdB467evEKtKzrSehoaNJi62SD4FVkR1XRFVqLRjLBhvtqQDeTMHHJaDqqqQoLEqtSRMRm/ADDmjKHiVmB79XlqPpttKibSWhrzMvPQnmzH3ORcdKe70Z3qRkeyA1kjS/PUBEE0LSS6CYIgiIZ58/ltk28TnzfnGeZDFRv9kVN7oWxjuOqiWHOxY7iKrf0l1loeAEAIWaqbwZmqjIypoSWpIZ/SkU/rrB3cUIVTOCAhCELUovcsW7x67qFq2YCsRrPniFq5mXD1Q1YdZ+3t9Ui1IAxF9rnt1ivpnh+g5gNB6IuKtiSxOW4u0gEWv6bIEpSYQFcVicWy8exyWapX0RXWAZA0VGRMFe1pHSlDhaHyqjZ7Xd65zuPmbDcQUXVVx48i4phQH6k6CAJ2sYDPmMcr8byiz8W6KrMqfkJX0JExRJu9LCHmVB9V88FGrP0gwGjVQc3xYUUt4pPFAmuKNKVAN0S1XUbgWsjmchgdGYbkViH69BtedOJ9UuyxIAwwOlpA57wubB/b/rpEdEJJQFd0pNQU0lpaVGV5NdoPfHihxyK0rBFU3Eq9rdt3hdM3J0AgWqe5g3fOyCGn55AzckiqSSiSEl2UYb8fr0zbvo2iU8SYPYadpZ11x3DfgeVb9YiuWKa140diOvRFBjTPiUZYNyETrt5GQlThuajn61UkhV00k1RIkgTXdSGrcsN8taEY7PcxcjBUg817BwFqXg0lp4RhaxjD9jC2jW5D0S0KV3I/8MUsuq7oSCgJZI0supNMRM9Nz0V3qhtd6S60GW3IGTRPTRDEGxcS3QRBEMReMX7efFF7atLt+Lx52WYxakNlB0MlC/0lGwNFOxLnDkqWh0LFwbO9RbgeaxsHWOVWk+uO2FlTRUtKRz6loyNjYEGbCSUw0ZZLQVUUACF8n7mxV2xmcFa0Jq+eyxKrzEuiGlx3K/eCMMpCj+LVghCOG0RZ3D6r7vshXDdECGYiFwZgYl+SoMhMKEpRNrocCXLehq0pclTVrkewcdM4Ngsui3btrKmiNaVjQZsKXWPRaDL4fDjqQstnM/Q1x0PVic2mRyZpZd/DUNluuHgQ+dkJoR6vpmuKBC1yyE/qKtqSOgyNudEz8zv2AlKUxMZfwwvYWMFojYn1eqQZy1Q3KmX4pSFkn35hv469WuBjZCwJJ19EYfsIACaiE2pCmIC1Gq2QzKjjIIyJ24DFW/GM5V21XaK1mlekvdCDzC7dMPkd1qvSvOKb1JNCfKa0FAzZgCzLQrQzr4BAtE2POUxIl91yg5i2fbsupkOXtXfHRDWvAMfFNF8PdyNXoNRdxJV6NJciKcI0jAtvRWaCn7/m+BnqnJFDVs8iqSbhOR6SZpKZp3kVjNqjGLFG8Pzw8xixRlByS6yaHjjwQ1+0nZuKiYSaQKvRiqUtSzEnOQfdKdb2PSc5B61mK9JamuapCYI4ZCHRTRAEQRxQ4vPmczImlsyZfLsgyjev2D5Gqw6GyjaGyjb6ihaGSg4KZRsjNRajNlCyI6f2IIr3CoVINVRWVc0mNLSmNLSnDHRkDMxrySBtsHUoChNiPOu84vgs29vxUaq5sFw/qnqz2XP2ezABzYWu7wdibp0LdD+qDHuR6HdEhjaL5PIDH5bHK8jcwZlVmeVofhtgUWus4shmvvXINZ3HoCmxeXQjJtB1lYl0ZoSnYV6LCV1VRNv5+JZ1L+AxbL5wYK9GTu9uEDLX91qIIFon//0BJq55IVqNt75H600arNqdS2hIRA75sgRYloWR6kK8PFbEYO4IZE0ubvemTZi94c5SAQgGsbjnzWhp64Qf+qKqXXSK2OXsEm3VvCLNRSGvMPP2al7l1WQNaT2NtJZGVs8ipTPjMS6mxXEaVaXdwEXFZUK0t9wrorFE9Tmai/YC5hzuB75o8+amX/y1ArCLAQHYsaZIChQobEZaZnFXhmJAV3WYssnypKPKdTwGjM8v899vvKDmM9RpPY2EkhDimzt+F6wCdpZ2Yqg2hDGbmZW5IbsIwV9PkzWYqomUmsK89Dzh+t2dYo7fc5JzmGineWqCIIgpIdFNEARBzApybN68K2dOuZ3rB8z12/EwUnEwWLSwq1DEmAsMlti8+WjVxUjFQd+YBdsbbcigliWeFS4LUdia0tGe1tGRNrG0M81asDUFajSn7AWhEKW8el5xmPN4vS2dVdFluV6FBnieOW/5Zu31rh/Cj372gnocl+MGsKPXC7wATsjmhIMgFDPAChfpYMJclti8uSxLrJWcZ2NHaxAz6ZFI5wJdU6Soc0BDNsGEeneLCV2VxevJkBBKrILPZolDIdAt10fVYT87se4By3WZ03spilZj1xGAkF3osB0HRtWEFgR46bmnsDzvI6X4qNc8x/eu1287QYAiXPyuVAWwBH+yt0Le9WJ9y1gmtahIq0kYpoGMlmEO3loSSTUJXdHrojBWlbZ8CxWXGZvtsHewynRUAedimlemuZj2A58ZkkVVa25CxivTfuhDCqXG6rSkIKEmYKisMp1QEmJmWpEV8TNvya7/NUIx+xyfoc4YGaS1NNJ6Gik1Jarbju+IWereSi9eGn0Jw9Ywik4RlmfVW78j129DMVgWtp5Bh9GB7iyrUHelutCZ7ESb2Ubz1ARBEK8TEt0EQRDEQY2myMglZeSSGua1JBB2Z1EuJ5FOp4UICENWoa7YrHI9XHVQqDgYKloYKDuROLcxWnMxWLbx6kg1MoOrC7x6vjSr2LYk2cx5e8bAnIyBhfkkWhM6EoYMVZIRSkDgh6i6TJSX7Xr1vGKx3PN4e3sIxKrbdWnpByxjPUAYCflQxLt5kSC33Hocl+MFcIIAoReiGlXeeQY5F+hKNK/NxTQ3htMiES7Ffuf4lx4T6JrCIsqYSNeQS6jozJowNRY1JkOCJLNfRJKYcZvtBeMEuoexigzPbEftFWCzvAKJgYexNK8jrfOqaLSaCYJOwsso4XfeACr60QCA+Z3zkTKYkE6pKSS0BHRZbzgOuPFY1asyc7MKM/DiYtoJWNXZC+rVaF7ZDQJW0bYDW8x284q0ENZRqzeP+5IkCbqsI6NmmKBWzXp1GrKoqkOqG5DxDgRe9RZGbVGVOq2nkdHZRYO0loapmJAlWeRSl5wS+qv92Da6DYPVQTZ77leEkRp3QefZ1Lz9Pt+SF63fnalOdCY7RXu5Kqsol8sN5xVBEARxYCDRTRAEQTQ9kiTBUJnDeFtKx0JMPW9uuQFKtouy5WG4Um9rHyjZGCo5GK6yGLXeooUdhQpsj81vcxRFFm3eSV1FLqGiLWWgPaOjI62jp8VEPp1F2lCZq7gkwQsCVJ1AVM4rtieq51XbgxdwcR5C9QMoMn8uX3e9vVuOhK4XsFZ23w9Fmztvb7di2dmuH8DxJIRhAC9kVXjuwabKMhTufi6hnoMuR5noChPu/AmaLEFWWBu8HBPxXKQnI5GeS2jIJDR0ZHQgpyKb7sRvtqiYn5ahtr8Lfk5DVZER+b1PqHVz2jwbxzoDeH6HhFLOwlva34KKV0HFrWBnaSdG7VFhdCbcuqNKMxfWvKrtBR4cn8VQuWE959oLPCGmITEjMm4spkgKklqSGbBFs+OaoonZaV1hxmRhECKUJhHUYdDQ8q0pWr06HQnqpJqEobKwdM/3UHSKGKoNoa/ah4HqAIZqQyjazKDM8i1h5CZBYlVvxUBSTTKX76j1e26KzVK3J9rFDLoq7/4jH5+DJwiCIA48JLoJgiCIQwZJkpDQWX71nAywuGPy7eLz5kXLZeZvZQeDZQcDJQuFKOO8ZHvYNWrhz4MV1iIeEy5qZAZnagqSuoJc5NTekTbRntExN5dAPq0ja6rCzdz1A9ScABXHa2ht51V0LszdaO5c0SQopiyyzwHecs2+q2wwW+R7BwET6EEYwvZ8UUG3nLpZnA0uGAE/QCSMeTV8XPU8Eu2KxKrkslyvkMqRYVwY+jA0DXklgf6Xt2JZYRvaWn1MkNohhAjnZBDgl+EghgeOQZDU8a8v/CszIAtcsQ1v9RZC2/dYZTq6zau+MmQRfyVJEnRFh6mYMDWTCV/FYI9DhqawqrMMGV7giZg5GbJo924Q1JoOVVGZI3pMUKd1Jqq52VrNq2GwNojB6iBeKb6CgeoARqwRlN0yal6NXRSInNdlSRaO6ykthbnpuehIdKArzdq+O5OdyJt5ZPQMzVMTBEEc5JDoJgiCIIhxTJg378xMup0XtbSXHe7UzmbMh0q2EOcjVQdl28crhSpe7C8LV2+ukjUlqtJrMlK6gpakjra0jjlpA/k0M4Vb1mWgJakJB3TXYxFiZdubMHdesT3UHJ85sEciXYKElK5GYhkApFj1nFXQNYUJdMdjAp2Ldy8I4XosPsx2WRW95rG5brgBAjCDuvgFBzlyc1dkZnGuKg4yoQR4FrLBGORKOdqSB6ZBfJfELQlSGOJtQQUPWCZGckPoLRVEm7cf+kL48sqzBAmKrLDWczWBhMJmqLkLOReymqyxOe3QE3FeXBjzGW0JzL08qSXFa3JBndEySOlMWGsyi7nyAg8Fq4CB6gB6y73oq/RhqDaEUWsUVb8Ky7PgBq6oKCuywkS/aiJn5PCmljdhTmKOENedyU7kzBwyeobmqQmCIJocEt0EQRAEsZ+o4+bNp8KO4swqtofRaN68ULYxWLYxWLJRKDMzuKrjYbhawXO9JVbNliDiuTSlXjlPGQpaEpqomreldOTTBt7caSCX0GBGMWOuzzK/eZxYg0CP1uMFbCacz49LkoS0oQpxziPGgmh2XJZ4PjmLK3OiTPQgALwwhOf5UYt7gJrroWK78AOgILciFY4irBSgStYUf6mJwrI39CGFOsoJh8WEGQkhqDWViWkVKiRZQlJJQpZlYX4mnL4hMcfwSFAHCKApGpIy254L6rTGvrigTqgJqLIKL/BQtIsYqLF27z+P/lm0fpfdMqpeFbZnwwujDO8QrJIetaXPTc1Fe6IdXckudKY60ZHsQEeiAxk9g4yega7or/NIJAiCIA5mmkZ0//CHP8Sjjz6KrVu3QtM0PPjggxO26evrwxVXXIHNmzcjmUxi5cqVOPfcc6GqTfNrEgRBEG9A4vPm89uSk27D583LtoeK7WEkilEbrjAjuKGSg0KFzZuXLA9DJRtPv1ZkzuHRa0gANFWGqSpCnLcmdeTTOjrSBtrSBvIpDYs7UsiaGlI6c2z3gjCaM/dZa7sdE+nR3HnVYW3PfjR/bgUBFElCyozmz/nvAdaezwQ6EAYedE2HVXAQvPQyim1Ho9bqR/pamkRmR9XvMHJoG7WBIrBi8QpICQlO4Ih5aynKc+MVajdwoQTMkVuRFCGo46ZkXFCntTRM1YQXeKg4FRTsAgarg9gxtgP91X4M1Fjrd8WtwPIt2J7N8rijVXMX8qSWRFeqi7V+R9/nJOegLdHGosj2Yp6aIAiCeGPTNP8KeJ6H0047DUcddRTuvffeCY/7vo8vfvGLyOfzuPXWWzE0NIRLL70Uqqri3HPPnYUVEwRBEMTeE58378gYWDSFGVwQMMf0is1a2kerbOa8EDOFK1QclKLH+sYsUY0W7wXA0BRROU+bKloTOjoyrGLeltKRTzHH9oypIm2oMFQFfsjEuRDo0ffxVXTXD6Nc9AAVN0AoB1BTeTgARsIsQsMHL+M3+nfxtvtQrLTiaZBkH47mQA2ZGzcX3JMJah4VltLY36/iVpg5WXUIg9Ygnht+Dv2VfgxZMYMy3vodva8iKaJKnTNyWGwuFm7f7Yl2zEnOQYvRQvPUBEEQxF7RNKL7c5/7HABg06ZNkz7+2GOPYfv27bjxxhuRz+dx+OGHY82aNdi4cSM++9nPQtO0mVwuQRAEQUwLsszav9MGi/CaCs8PWLa47aFsuRiusLb24YqNwRJrbx+uuCjZTLS/NlKD7QUNLtbMFZ4Jc1NTkDEVtCUN5DM68ql6W3t3SxppU0NaV5HQZYRAVC13MThSAlQdVSfA/zyvYlTJw823IQQP9QaY0JbqP8ZixJzXXkGuVcGpi98rBHVaZ7PUPD5r1BrFYG0QO4d3YrA2iIHqAArVAipeBZZnwfIt+IEv9Lwma0JUd6aYkO5KdKEj1cFEdWIOMkaG5qkJgiCIA0LTiO49sWXLFixZsgT5fF7cd+KJJ+LKK6/Etm3bsGzZskmf5zgOHMcRt23bBhBlfR6k8RmhML45ONdH1KF91TzQvmoeaF/tHYosIWuqyJoqkJtanMfnzYuROB8us1Z2Vj13MFJxULE99Bc9vFKowfaDqP0bQBjLONcUmJqMrKmhNaWjPaUjpYaY25ZBPm2gvasHw8UROPm3sDcPQ4iqtviZ3wb80EOx8iq6l8zBrtIuDNWGxCz1iDWCmlcTrt+iQC5BuH4n1SQ6k53CmIxXqVsTrchoez9PfSgca3ReNQ+0r5oH2lfNw+721YHYf28Y0V0oFNDW1tZwHxfghUJhyuf96Ec/wi233CJuq6qK973vfSiXy3Bdd8rnzSZhGKJWqwEAXX0/yKF91TzQvmoeaF8deHQAug606goWZhMAGk3hwjCE5QVR+7iPkuVhuOpgpOJiuOqgUGWZ56M1F5bjYWfVwUsDJbhR5ZxHiR1b60MmqCD13xfClIPGiLC4AGd34KVAhWW9Fw8O3Y+BPzLzNRmymKdOqSnMT85Hu9mOfCKPdrMd7Yl2ZPUsMloGSTU59Ty1Dzg1Bw6cyR8/xKDzqnmgfdU80L5qHna3r3hR9vUwq6J748aNuO2223a7zc9//nMsWrRo2tbw6U9/Gp/4xCfEbdu28b3vfQ/pdBqGYUzb+74e+NWWdDpNJ/BBDu2r5oH2VfNA+2p2yACYItZcEJ83L9sexqoudg2NoRrIGK44sLftRHHXdgwkDsfcpAs21y1H34FQkgBE89GShP4xBRgD3r7sOMyZd3ijqKZ56gMKnVfNA+2r5oH2VfOwu311IMaUZ1V0f/KTn8SqVat2u828efP26rXy+TyeeeaZhvt4hTvecj4eXdeh6/XWMv5HlSTpoD45+PoO5jUSDNpXzQPtq+aB9tXBiaJIyCgyMib7tzQMQ7w5r4kPMfZJC3DllVfilcUfg7F06R5fb2TzZqTLO/DZd355updOgM6rZoL2VfNA+6p5mGpfHYh9N6uiu7W1Fa2trQfktY466ijceuutGB4eFm3mjz/+OFKpFBYvXnxA3oMgCIIgiP3HMAzk83kMDQ1h6V6I7qGhIfT09MzAygiCIAhi+mianqy+vj5s3boVfX19CIIAW7duxdatW1GtVgEAJ5xwAg477DBccskleOGFF/C///u/+P73v4/Vq1c3VLIJgiAIgpg9FixYgIGBgT1uFwQBCoXCXne8EQRBEMTBStMYqd1000247777xG0+h33TTTfhuOOOg6Io2LBhA6644gp8+tOfRiKRwMqVK0XUGEEQBEEQs8/ChQvx1FNPwbIsmObUruojIyNwXZcq3QRBEETT0zSie/369Vi/fv1ut5k7dy7++Z//eWYWRBAEQRDEPrNw4UIAwMDAABYsWDDldv39/VAUhSrdBEEQRNPTNO3lBEEQBEE0Py0tLchms+jv79/tdv39/eju7j4grrEEQRAEMZuQ6CYIgiAIYkZZuHDhbkV3GIbo7++f1shQgiAIgpgpmqa9nCAIgiCINwZdXV3YsmULXnrpJajqxI8ilmXBsiwS3QRBEMQbAhLdBEEQBEHMKC0tLQCARx55ZMptTNMkEzWCIAjiDQGJboIgCIIgZpRly5bhC1/4AtLp9JTbaJo2aRWcIAiCIJoN+teMIAiCIIgZRZZldHR0zPYyCIIgCGJGICM1giAIgiAIgiAIgpgmSHQTBEEQBEEQBEEQxDRB7eXjCMMQAGDb9iyvZGrCMIRt29A0DZIkzfZyiN1A+6p5oH3VPNC+ah5oXzUPtK+aB9pXzQPtq+Zhd/uK60KuE/cHEt3jcBwHAHD99dfP8koIgiAIgiAIgiCIgwHHcWCa5n49Vwpfj2R/AxIEAcrlMnRdP2ivSJXLZbz//e/Hv//7v+/W+ZWYfWhfNQ+0r5oH2lfNA+2r5oH2VfNA+6p5oH3VPOxuX4VhCMdxkE6nIcv7N51Nle5xyLKMbDY728vYLa7rwvM8GIYBwzBmeznEbqB91TzQvmoeaF81D7SvmgfaV80D7avmgfZV87CnfbW/FW4OGakRBEEQBEEQBEEQxDRBopsgCIIgCIIgCIIgpgkS3U2Iruv4+7//e+i6PttLIfYA7avmgfZV80D7qnmgfdU80L5qHmhfNQ+0r5qH6d5XZKRGEARBEARBEARBENMEVboJgiAIgiAIgiAIYpog0U0QBEEQBEEQBEEQ0wSJboIgCIIgCIIgCIKYJkh0EwRBEARBEARBEMQ0oc72Aoip+eEPf4hHH30UW7duhaZpePDBByds09fXhyuuuAKbN29GMpnEypUrce6550JV67t28+bNuP766/HnP/8ZnZ2dOOecc7Bq1aoZ/E0OPTZv3ow1a9ZM+thtt92GI488Eq+99ho+8IEPTHj8Rz/6EY466qjpXiIRY9WqVejt7W24b+3atfjbv/1bcfvFF1/EVVddhWeffRatra1YvXo1PvWpT83wSg9tXnvtNfzgBz/A5s2bUSgU0N7ejjPPPBN/93d/B03TxDZ0Xh0c3H333bj99ttRKBSwdOlSrFu3DsuXL5/tZR3S/OhHP8IDDzyAHTt2wDAMHH300TjvvPOwaNEisc1nP/tZ/OEPf2h43kc+8hF89atfneHVHtrcfPPNuOWWWxruW7hwIe655x4AgG3b2LBhA37zm9/AcRyccMIJ+MpXvoJ8Pj8byz2kmewzBACcffbZuPDCC+mcmkX+8Ic/4Pbbb8dzzz2HoaEhfOc738Gpp54qHg/DEDfffDN+8YtfoFwuY8WKFfjKV76CBQsWiG3GxsZwzTXX4OGHH4YkSXjXu96FCy64AMlkcp/WQqL7IMbzPJx22mk46qijcO+990543Pd9fPGLX0Q+n8ett96KoaEhXHrppVBVFeeeey4AYNeuXTj//PNx1lln4fLLL8cTTzyByy+/HO3t7TjxxBNn+lc6ZFixYgXuv//+hvtuuukmPPnkkzjiiCMa7r/xxhuxePFicbulpWUmlkiMY82aNfjQhz4kbqdSKfFzuVzG2rVrcfzxx+Oiiy7CSy+9hMsuuwyZTAYf+chHZmG1hyY7duxAGIb46le/ip6eHmzbtg3f+ta3UKvVcP755zdsS+fV7PKb3/wG119/PS666CIsX74cd955J8477zzcc889aGtrm+3lHbL84Q9/wNlnn40jjjgCvu/jhhtuwNq1a/Gv//qvSCQSYrsPf/jD+NznPidum6Y5G8s95Fm8eDFuvPFGcTteULnuuuvwyCOP4Morr0Q6ncbVV1+NdevW4dZbb52NpR7S/PjHP4bv++L2tm3bcO655+K0004T99E5NTvUajUsXboUH/jAB7Bu3boJj99222342c9+hvXr12PevHn4/ve/j/POOw933303DMMAAHz961/H0NAQbrjhBnieh2984xv41re+hW9961v7tBYS3Qcx/OTctGnTpI8/9thj2L59O2688Ubk83kcfvjhWLNmDTZu3IjPfvaz0DQN99xzD7q7u/GP//iPAIDDDjsMf/zjH/HTn/6URPc0omka2tvbxW3P8/DQQw/hox/9KCRJatg2l8s1bEvMDslkcsr9cP/998N1XVxyySXQNA1vetOb8MILL+COO+4g0T2DnHTSSTjppJPE7Z6eHrz88su45557JohuOq9mlzvuuAMf+tCHRNfBRRddhEceeQS//OUvGzpIiJll48aNDbfXr1+Pd7/73XjuuedwzDHHiPtN06Tz5yBAVdVJ90O5XMa9996Lyy+/HH/xF38BALj00kvxV3/1V9iyZQt19cwwra2tDbdvu+029PT04NhjjxX30Tk1O5x88sk4+eSTJ30sDEPceeedOOecc0T1+7LLLsN73vMePPjgg3jve9+L7du343/+53/w4x//WBTN1q1bhy9+8Ys4//zz0dHRsddroZnuJmbLli1YsmRJQyvRiSeeiEqlgm3btolt3v72tzc878QTT8Sf/vSnGV3roc5DDz2EsbGxSdv6v/SlL+Hd7343zjnnHDz00EOzsDoCYP9Innbaafj4xz+OH//4x/A8Tzz2pz/9CW9729tECzPAzqOXX34ZxWJxNpZLRJTLZWSz2Qn303k1e7iui+eff77h3x5ZlnH88cfTvz0HGeVyGQAmnEO/+tWvcNppp2H16tX43ve+B8uyZmN5hzyvvPIKzjjjDHzwgx/E1772NfT19QEAnnvuOXie13COLVq0CF1dXXSOzTKu6+I//uM/8IEPfKChyELn1MHHrl27UCgUcPzxx4v70uk0li9fji1btgBgn/8ymUxDl+rxxx8PWZbx9NNP79P7UaW7iSkUChPa9LgALxQKU27T1taGSqUCy7KovWWGuPfee3HCCSegs7NT3JdMJnH++efjrW99KyRJwm9/+1tccMEF+M53voN3vvOds7jaQ4+PfvSjWLZsGXK5HP7v//4PN9xwA4aGhvClL30JADuPuru7G57Dz6tCoTCp6COmn1dffRV33XVXQ5WbzqvZZ3R0FL7vT/pvz44dO2ZnUcQEgiDAtddeixUrVmDJ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",
      "text/plain": [
       "<Figure size 1000x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "scene.view(num_rays=80, color_by='bounce')\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a7b8c9d0",
   "metadata": {},
   "source": [
    "## 3. Running the Monte Carlo Trace\n",
    "\n",
    "`scene.trace()` launches the simulation. Key parameters:\n",
    "\n",
    "| Parameter | Meaning | Default |\n",
    "|---|---|---|\n",
    "| `num_rays` | Total rays launched | — |\n",
    "| `max_depth` | Maximum surface hits per ray | 16 |\n",
    "| `min_flux_fraction` | Russian-roulette threshold, relative to a ray's initial flux: below it a ray is killed with an unbiased probability and survivors' flux is boosted to compensate, rather than being truncated outright | 1e-6 |\n",
    "| `seed` | RNG seed for reproducibility | None |\n",
    "\n",
    "A `SimulationResult` is returned with per-detector results and global statistics."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "b8c9d0e1",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-08-18T17:44:12.924159Z",
     "iopub.status.busy": "2026-08-18T17:44:12.923159Z",
     "iopub.status.idle": "2026-08-18T17:44:13.310053Z",
     "shell.execute_reply": "2026-08-18T17:44:13.310053Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Trace time          : 0.38 s\n",
      "Rays launched       : 100,000\n",
      "Rays on detector    : 91,712\n",
      "Total flux in       : 1.0000 W\n",
      "Flux on detector    : 0.9165 W\n",
      "Flux escaped        : 0.0828 W\n",
      "Flux conservation   : 8.33e-17 (relative error)\n",
      "\n",
      "Most of the launched flux escapes: the source emits into a 6-degree cone\n",
      "but the detector is only 4 mm across, so it collects the image and\n",
      "nothing else. Flux conservation is the number to check, not the fraction\n",
      "landing on any one detector.\n"
     ]
    }
   ],
   "source": [
    "result = scene.trace(num_rays=100_000, seed=42)\n",
    "print(f\"Trace time          : {result.trace_time_sec:.2f} s\")\n",
    "print(f\"Rays launched       : {result.num_rays_total:,}\")\n",
    "print(f\"Rays on detector    : {result.detectors['D1'].num_rays_hit:,}\")\n",
    "print(f\"Total flux in       : {result.total_flux_in:.4f} W\")\n",
    "print(f\"Flux on detector    : {result.total_flux_detected:.4f} W\")\n",
    "print(f\"Flux escaped        : {result.total_flux_escaped:.4f} W\")\n",
    "print(f\"Flux conservation   : {result.flux_conservation_error:.2e} (relative error)\")\n",
    "print()\n",
    "print(\"Most of the launched flux escapes: the source emits into a 6-degree cone\")\n",
    "print(\"but the detector is only 4 mm across, so it collects the image and\")\n",
    "print(\"nothing else. Flux conservation is the number to check, not the fraction\")\n",
    "print(\"landing on any one detector.\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "63b5efef",
   "metadata": {},
   "source": [
    "### `result.report()` — read this first\n",
    "\n",
    "Every `SimulationResult` carries a `diagnostics` object that catches the\n",
    "failure modes that would otherwise show up as a silently wrong-looking plot:\n",
    "rays killed by the `max_depth` cap before they resolved, flux lost to\n",
    "Russian-roulette termination, scene geometry no ray ever reached, and\n",
    "detectors sampled too sparsely to trust. `result.report()` prints all of it\n",
    "with threshold-based warnings — running it is the first thing to do after\n",
    "every trace, before looking at any plot."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "2757796f",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-08-18T17:44:13.312259Z",
     "iopub.status.busy": "2026-08-18T17:44:13.312259Z",
     "iopub.status.idle": "2026-08-18T17:44:13.315076Z",
     "shell.execute_reply": "2026-08-18T17:44:13.315076Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "NSQ trace diagnostics:\n",
      "  depth_truncated_flux_fraction: 0.0000%\n",
      "  rr_killed_flux_fraction:       0.0000%\n",
      "  flux_conservation_error:       0.0000%\n",
      "  unreached_geometry:            ['L1.edge']\n",
      "  medium_stack_underflows:       0\n",
      "  split_budget_saturated:        False\n",
      "  detectors:\n",
      "    D1: 91712 hits, 5.60 mean hits/pixel [undersampled]\n",
      "Warnings:\n",
      "  - 1 component(s) were never hit by any ray: L1.edge. Check placement/orientation, or ignore if intentionally unused.\n",
      "  - Detector 'D1' is undersampled: 5.6 mean hits/pixel (< 10), shot noise dominates the map; ~7,145,847 rays would bring it to ~5% relative error.\n"
     ]
    }
   ],
   "source": [
    "print(result.report())"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "91ffa777",
   "metadata": {},
   "source": [
    "Two warnings show up here, and both are expected for this particular scene\n",
    "rather than something to fix:\n",
    "\n",
    "- **`L1.edge` unreached** — the lens edge (its cylindrical barrel) is only hit\n",
    "  by rays wide enough to miss both curved faces. A 6° cone underfilling a\n",
    "  12.5 mm aperture never comes close, so the edge going unused is exactly\n",
    "  what should happen. If a *curved face* were reported unreached, that would\n",
    "  mean the beam is missing the lens.\n",
    "- **`D1` undersampled** (5.6 mean hits/pixel) — 100,000 rays spread over a\n",
    "  128×128 grid is a deliberately small trace for a fast-running tutorial;\n",
    "  `report()` estimates the ~7 million rays a production-quality, low-noise\n",
    "  map would need. Scale `num_rays` up for a publication-quality figure."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c9d0e1f2",
   "metadata": {},
   "source": [
    "## 4. Visualizing the Irradiance Map\n",
    "\n",
    "Each detector in `result.detectors` holds a result object. For an\n",
    "`IrradianceDetector` the result is an `IrradianceMap` with a `.plot()` method."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "d0e1f2a3",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-08-18T17:44:13.317083Z",
     "iopub.status.busy": "2026-08-18T17:44:13.317083Z",
     "iopub.status.idle": "2026-08-18T17:44:13.443941Z",
     "shell.execute_reply": "2026-08-18T17:44:13.443420Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "irr_map = result.detectors['D1']\n",
    "\n",
    "fig = irr_map.plot(cmap='hot')\n",
    "plt.tight_layout()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e1f2a3b4",
   "metadata": {},
   "source": [
    "## 5. Inspecting the Raw Irradiance Array\n",
    "\n",
    "`IrradianceMap.irradiance` is a 2-D NumPy array of shape `(ny, nx)` in W/mm².\n",
    "You can compute statistics directly:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "f2a3b4c5",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-08-18T17:44:13.445048Z",
     "iopub.status.busy": "2026-08-18T17:44:13.445048Z",
     "iopub.status.idle": "2026-08-18T17:44:13.448215Z",
     "shell.execute_reply": "2026-08-18T17:44:13.448215Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Array shape    : (128, 128)\n",
      "Peak irradiance: 18.4647 W/mm²\n",
      "Mean irradiance: 0.057283 W/mm²\n",
      "Total flux     : 0.9165 W\n"
     ]
    }
   ],
   "source": [
    "E = irr_map.irradiance\n",
    "print(f\"Array shape    : {E.shape}\")\n",
    "print(f\"Peak irradiance: {E.max():.4f} W/mm²\")\n",
    "print(f\"Mean irradiance: {E.mean():.6f} W/mm²\")\n",
    "print(f\"Total flux     : {irr_map.total_flux:.4f} W\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a3b4c5d6",
   "metadata": {},
   "source": [
    "## 6. Cross-Section Plot\n",
    "\n",
    "Take a horizontal slice through the centre of the irradiance map:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "b4c5d6e7",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-08-18T17:44:13.450332Z",
     "iopub.status.busy": "2026-08-18T17:44:13.449436Z",
     "iopub.status.idle": "2026-08-18T17:44:13.519452Z",
     "shell.execute_reply": "2026-08-18T17:44:13.519452Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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hgwZYvD59u/fj7S0NBw8eBCrVq3CkiVL8Pjjj6NFixY4evQoXnzxRbzwwgtITU3VOG7JkiV45513cPLkSdja2uLZZ5/Fm2++iX/84x/4/fffkZiYiMWLFzfWxyYiMikWskRERjJy5EjMnDkTkyZNwosvvggnJyesWLGiQefy8PDAmjVrEBERgWnTpiEiIgIlJSV4++23ER4ejoULF8LOzg6HDh3SOG7BggUYNmwYHnjgAbz66qs4ceIEFi1ahD59+uDBBx/E9OnTERsb2xgfl4jI5DhHlojIiD755BN07NgR3377LU6cOAG5XN6g83To0AFS6d2xBx8fH3Ts2FH9s42NDTw9PZGVlaVxXOfOnTWOAYBOnTppbLv3GCIiS8ERWSIiI0pKSkJaWhqUSiWuXbvW4PPIZDKNnyUSSZ3blEql1uMkEkmd2+49hojIUnBElojISBQKBZ577jlMmDABERERmDFjBv766y94e3ubOzQiomaBI7JEREby97//Hbdv38aaNWvwt7/9DW3btsW0adPMHRYRUbPBQpaIyAji4uLw6aef4quvvoKrqyukUim++uor/P777/j888/NHR4RUbMgEUIIcwdBRETVvV9DQkJw6tQpsy1Rq9K6dWvMmzcP8+bNM2scRES6cESWiKiJ6d27N3r37m2W916+fDmcnZ2RkpJilvcnIjIER2SJiJqIyspKdWcDuVyOwMBAk8eQl5eHvLw8ANWLOri5uZk8BiIifbGQJSIiIiKLxKkFRERERGSRWMgSERERkUViIUtEREREFomFLBERERFZJBayRERERGSRWMgSERERkUViIUtEREREFomFLBERERFZJBayRERERGSR/h/aW8BaJ8UPNAAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 700x300 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "ny, nx = E.shape\n",
    "centre_row = E[ny // 2, :]\n",
    "\n",
    "fig, ax = plt.subplots(figsize=(7, 3))\n",
    "ax.plot(irr_map.x_coords, centre_row)\n",
    "ax.set_xlabel('x [mm]')\n",
    "ax.set_ylabel('Irradiance [W/mm²]')\n",
    "ax.set_title('Horizontal cross-section at y = 0')\n",
    "ax.grid(True, alpha=0.4)\n",
    "plt.tight_layout()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c5d6e7f8",
   "metadata": {},
   "source": [
    "## Summary\n",
    "\n",
    "The minimum NSQ workflow is:\n",
    "\n",
    "```python\n",
    "scene = NSQScene()\n",
    "scene.add_source(name, cs, SourceConfig(...))\n",
    "scene.add_lens(name, cs, LensConfig(...))\n",
    "scene.add_detector(name, cs, DetectorConfig(...))\n",
    "result = scene.trace(num_rays=N, seed=42)\n",
    "print(result.report())          # check for warnings before trusting the plot\n",
    "result.detectors[name].plot()\n",
    "```\n",
    "\n",
    "Continue to the next notebooks to learn about the different source types,\n",
    "component options, detectors, and advanced features."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": ".venv",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.4"
  },
  "nbsphinx": {
   "execute": "never"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
