{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "(root-finding-by-interval-halving)=\n",
    "# Root Finding by Interval Halving (Bisection)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**References:**\n",
    "\n",
    "- Section 1.1 *The Bisection Method* in *Numerical Analysis* by Sauer {cite}`Sauer`\n",
    "- Section 2.1 *The Bisection Method* in *Numerical Analysis* by Burden, Faires and Burden {cite}`Burden-Faires`\n",
    "\n",
    "(See the [Bibliography](../bibliography.ipynb).)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Introduction\n",
    "\n",
    "One of the most basic tasks in numerical computing is finding the roots (or \"zeros\") of a function — solving the equation $f(x) = 0$ where $f:\\mathbb{R} \\to \\mathbb{R}$ is a continuous function from and to the real numbers.\n",
    "As with many topics in this course, there are multiple methods that work, and we will often start with the simplest and then seek improvement in several directions:\n",
    "- **reliability** or *robustness* — how good it is at avoiding problems in hard cases, such as division by zero.\n",
    "\n",
    "- *accuracy* and guarantees about accuracy like estimates of how large the error can be — since in most cases, the result cannot be computed exactly.\n",
    "\n",
    "- *speed* or *cost* — often measure by minimizing the amount of arithmetic involved, or the number of times that a function must be evaluated."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "```{prf:example} Solve $x = \\cos x$\n",
    ":label: bisection-x-cosx\n",
    "This is a simple equation for which there is no exact formula for a solution,\n",
    "but we can easily ensure that there is a solution, and moreover, a unique one.\n",
    "It is convenient to put the equation into \"zero-finding\" form $f(x) = 0$, by defining\n",
    "\n",
    "$$f(x) := x - \\cos x.$$\n",
    "\n",
    "Also, note that $|\\cos x| \\leq 1$, so a solution to the original equation must have $|x| \\leq 1$.\n",
    "So we will start graphing the function on the interval\n",
    "$[a, b] = [-1, 1]$.\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "```{prf:remark} On Python\n",
    ":label: numpy-matplotlib\n",
    "\n",
    "This is our first use of two Python packages that some of you might not have seen before: *Numpy* and *Matplotlib*.\n",
    "If you want to learn more about them, see for example the Python Review sections on\n",
    "[Python Variables, Lists, Tuples, and Numpy arrays](../python-tutorial/python-variables-lists-tuples-numpy-arrays.ipynb)\n",
    "and\n",
    "[Graphing with Matplotlib](../python-tutorial/graphing-with-matplotlib.ipynb)\n",
    "\n",
    "Or for now, just learn from the examples here.\n",
    "```"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "# We will often need resources from the modules numpy and pyplot:\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# We can also import items from a module individually, so they can be used by \"first name only\".\n",
    "# Here this is done for mathematical functions; in some later sections it will be done for all imports.\n",
    "from numpy import cos"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "def f(x):\n",
    "    return x - cos(x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "a = -1; b = 1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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r9e2wmIFmH300vW9NaJ7tLvLOmfe0qdTV3bXh8tnfTeZTDVeG4ZRa1ldPvroI02dOlWff/65oqP/+49m0KBBGjRokPP1kCFD1L9/f82YMUN/+9vf6tyWxWKRxWKptdxsNnt0I3/Om2ptqeiRd6BP3oE+eT565B3ok3egT56vOfVo79FS3fLuKuWcKFdEsL/+7+Y09e/Q2t1lNQpP71NDanNZUI+KipKvr2+ts+f5+fm1zrL/0rx583Tbbbfp448/1ogRI8441sfHR+edd5527979q2sGAAAAgOZqVdYJ/f6DNSoss6lDRJBm3XqeOrYJcXdZqIPLZn339/dXamqqMjMzayzPzMzU4MGDT7veRx99pFtuuUVz5szR5Zdffta/xzAMbdiwQXFxcb+6ZgAAAABojv698bB++38rVVhmU9/4Vpp/12BCugdz6aXvkydP1oQJE5SWlqb09HS99dZbys7O1p133imp+t7xQ4cO6f3335dUHdJvuukmvfLKKxo0aJDzbHxgYKDCw8MlSdOmTdOgQYPUpUsXFRcX629/+5s2bNig1157zZW7AgAAAABexzAMvbF0n55duEOSdEnPGL18Qz8F+vu6uTKciUuD+g033KDjx4/rySefVG5urlJSUrRgwQIlJCRIknJzc2s8U/3NN99UVVWV/vjHP+qPf/yjc/nNN9+sWbNmSZIKCwv1+9//Xnl5eQoPD1e/fv303XffacCAAa7cFQAAAADwKlV2h57411Z9uLI6c/1uSJIeuby7fH3OPmcY3Mvlk8nddddduuuuu+p871T4PmXJkiVn3d5LL72kl156qREqAwAAAIDm6aS1Svd8tF7f7siXySQ9dnkP/e78JHeXhXpyeVAHAAAAADSd/OIK/e691dpyqFgWPx+9Mq6fRqXEurssNABBHQAAAACaiV1HSnTru6t1qLBckT89fq1fM3n8WktCUAcAAACAZmDZ3mO644O1KqmoUlJUsGbdep4SIoPdXRbOAUEdAAAAALzc/PUH9dAnm2SzG0pLaK23b0pT62B/d5eFc0RQBwAAAAAvZRiGZny7Ry9m7pIkXd47Ti9c30cBZh6/5s0I6gAAAADghWx2hx6Zv1n/WHNQknTHhR31p1HJ8uHxa16PoA4AAAAAXqakwqa7Plyn73cfk49JmjampyakJ7q7LDQSgjoAAAAAeJHconLd+u5q7cgrUaDZV6+O76fh3WPcXRYaEUEdAAAAALzE9txi3fruauUVVygqxKJ3bklT7/at3F0WGhlBHQAAAAC8wJKd+bp7znqVWqvUOTpE795ynuIjgtxdFlyAoA4AAAAAHm72igN64l9bZXcYGpgUobcmpCk8yOzusuAiBHUAAAAA8FAOh6HpX27X299nSZKu7d9e06/pJX8/HzdXBlciqAMAAACAByqvtGvSvPX6ausRSdIDI7vq7os7y2Ti8WvNHUEdAAAAADxMfkmFJr63RhsPFsnf10d/vb63ruzbzt1loYkQ1AEAAADAg+zMK9HvZq3WocJytQ4y662b0nReYoS7y0ITIqgDAAAAgIf4fvdR3TV7nUqsVUqKCtY7t5ynpKhgd5eFJkZQBwAAAAAP8NGqbD36zy2yOwwNSIzQmxNS1TrY391lwQ0I6gAAAADgRg6HoWe/2qE3l+6TJF3Vt62eva63LH6+bq4M7kJQBwAAAAA3qbDZdf+8DfpyS54kadKILrpveBdmdm/hCOoAAAAA4AZHS6ya+P4abcgplNnXpOeu662r+7V3d1nwAAR1AAAAAGhiu4+U6NZZq3WwoFytgsx687epGtgx0t1lwUMQ1AEAAACgCf2455junL1WJRVVSowM0ju3nKeObULcXRY8CEEdAAAAAJrIP1bn6M/zN6vKYSgtobXeuilNEczsjl8gqAMAAACAizkchp7/eqdeX7JXkjSmT1s9d11vBZiZ2R21EdQBAAAAwIXKK+164OMNWrC5emb3ey/urPtHdmVmd5wWQR0AAAAAXCS/uEK3v79Gmw4Wyexr0vRreuu6VGZ2x5kR1AEAAADABbYeLtLt761RblGFWgeZ9QYzu6OeCOoAAAAA0Mgytx3RfXPXq6zSrk5tgvXOLecpITLY3WXBSxDUAQAAAKCRGIaht7/fp+lf7pBhSOd3jtJrN/ZXeKDZ3aXBixDUAQAAAKARVFY59PjnWzR3dY4kafzADpo2pqfMvj5urgzehqAOAAAAAL9SYVml/jB7nZbvOy4fk/To5T1065BEZnbHOSGoAwAAAMCvkHXspG6btVr7jp1UsL+vZozvp4uTY9xdFrwYQR0AAAAAztHyvcd15+y1Kiq3qV2rQP3fzWnqHhfm7rLg5QjqAAAAAHAO5q3O1iPzt6jKYahvfCu9dVOqokMD3F0WmgGCOgAAAAA0gN1h6LmFO/Tmd/skSaN7x+n56/sowOzr5srQXBDUAQAAAKCeTlqrNGneBmVuOyJJum94F00a0YVJ49CoCOoAAAAAUA+5ReW6bdYabcstlr+fj/56XW9d2bedu8tCM0RQBwAAAICz2HSwULe/t0b5JVZFBvvrrZtSlZoQ4e6y0EwR1AEAAADgDL7ckqeHPtuiCptDXWNCNPPm8xQfEeTustCMEdQBAAAAoA6GYWhhjklfLt8kSRratY1eHd9PoQFmN1eG5o6gDgAAAAC/UF5p1wP/2KQvD1bP5P67IUn682XJ8vP1cXNlaAlc/q/s9ddfV1JSkgICApSamqrvv//+jOOXLl2q1NRUBQQEqGPHjnrjjTdqjfn000/Vo0cPWSwW9ejRQ/Pnz3dV+QAAAABamLyiCo19c7kWbDkiX5Ohp67socev6EFIR5Nx6b+0efPmadKkSXrkkUe0fv16XXDBBbr00kuVnZ1d5/isrCxddtlluuCCC7R+/Xr9+c9/1r333qtPP/3UOWb58uW64YYbNGHCBG3cuFETJkzQ2LFjtXLlSlfuCgAAAIAWYENOoca8+oM2HypS6yCz7uph19i09u4uCy2MSy99f/HFF3Xbbbfp9ttvlyS9/PLL+uqrr/T3v/9d06dPrzX+jTfeUIcOHfTyyy9Lkrp37641a9bo+eef17XXXuvcxsiRIzVlyhRJ0pQpU7R06VK9/PLL+uijj1y5O03OMAydrDypCnuFTlaelNngXhhPZLPZ6JEXoE/egT55PnrkHeiTd6BPnuc/mw7r0X9ukbXKoS7RwXrlhhRtXfk9PfJwp44lwzDcXUqjcVlQr6ys1Nq1a/Xwww/XWJ6RkaFly5bVuc7y5cuVkZFRY9kll1yimTNnymazyWw2a/ny5br//vtrjTkV7utitVpltVqdr4uLiyVVN9RmszVkt5rUycqTav186+oXm91bC+qBHnkH+uQd6JPno0fegT55B/rkWczVHzklUq//+2kZPfIK+Rfnq5WplbvLOK2GZE+XBfVjx47JbrcrJiamxvKYmBjl5eXVuU5eXl6d46uqqnTs2DHFxcWddszptilJ06dP17Rp02ot//rrrxUU5LmPVaiwV7i7BAAAAADwCt9++60CfAPcXcZplZWV1Xusy2d9N5lMNV4bhlFr2dnG/3J5Q7c5ZcoUTZ482fm6uLhY8fHxysjIUFhY2Nl3wk0Mw1D+xfn69ttvdfHFF8ts5nIbT2Sz2eiRF6BP3oE+eT565B3ok3egT+6XW1Sue+Zt0q4jpTL7mvT45cm6sk9b5/v0yDuc6tPoS0bL39/f3eWc1qkru+vDZUE9KipKvr6+tc505+fn1zojfkpsbGyd4/38/BQZGXnGMafbpiRZLBZZLJZay81ms8cfcK1MrRTgG6BWwa08vtaWymaz0SMvQJ+8A33yfPTIO9An70Cf3GvtgRO644MtOlZapeiQML05IVWpCRE1xtAj73CqT/7+/h7dp4bU5rJZ3/39/ZWamqrMzMwayzMzMzV48OA610lPT681/uuvv1ZaWppzp0435nTbBAAAAICf+3TtQf3mrZU6Vlqp7nFh+vzu82uFdMCdXHrp++TJkzVhwgSlpaUpPT1db731lrKzs3XnnXdKqr4k/dChQ3r//fclSXfeeadeffVVTZ48WRMnTtTy5cs1c+bMGrO533fffbrwwgv17LPP6sorr9Tnn3+uRYsW6YcffnDlrgAAAADwcnaHoee+2qE3l+6TJF3SM0Yvju2rYIvL7wgGGsSl/yJvuOEGHT9+XE8++aRyc3OVkpKiBQsWKCEhQZKUm5tb45nqSUlJWrBgge6//3699tpratu2rf72t785H80mSYMHD9bcuXP16KOP6rHHHlOnTp00b948DRw40JW7AgAAAMCLlVqrdN9H6/XNjnxJ0j0Xd9b9I7rKx+f0c10B7uLy/zq66667dNddd9X53qxZs2otGzp0qNatW3fGbV533XW67rrrGqM8AAAAAM1czoky3f7eGu08UiJ/Px/99breurJvO3eXBZwW13gAAAAAaLZW7juuO2evVUGZTdGhFr11U5r6xrdyd1nAGRHUAQAAADRLs1cc0NR/bVWVw1CvduF6+6Y0xYZ77nO2gVMI6gAAAACalcoqh6b+e6vmrKyeD2t07zj99bo+CvT3dXNlQP0Q1AEAAAA0G8dKrbpr9jqt2n9CJpP0P5d00x+GdpLJxKRx8B4EdQAAAADNwpZDRbrjg7U6VFiuUIufXvlNX12cHOPusoAGI6gDAAAA8Hr/3nhY//PJRlXYHEqKCtbbN6Wqc3Sou8sCzglBHQAAAIDXcjgMvZC5U68t3itJurBrG80Y10/hQWY3VwacO4I6AAAAAK9UUmHT/fM2aNH2fEnSHRd21EOjkuXrw/3o8G4EdQAAAABeJ+vYSU18f4325JfK389Hz17bS1f3a+/usoBGQVAHAAAA4FW+23VUd89Zp+KKKsWEWfTWhDT1iW/l7rKARkNQBwAAAOAVDMPQzB+y9PSC7XIYUv8OrfTGb1MVHRbg7tKARkVQBwAAAODxKmx2/Xn+Zn227pAkaWxae/3lqhRZ/HzdXBnQ+AjqAAAAADxaXlGF7vhgjTYeLJKvj0mPXt5dtwxOlMnEpHFongjqAAAAADzWuuwC3fnBWuWXWNUqyKzXxvfXkM5R7i4LcCmCOgAAAACP9PGaHD0yf4sq7Q51jQnR/910njpEBrm7LMDlCOoAAAAAPIrN7tD//meb3lt+QJKU0SNGL97QVyEW4gtaBv6lAwAAAPAYR0us+uOH67Rq/wlJ0n3Du+i+4V3k48P96Gg5COoAAAAAPMLGnELdOXutcosqFGLx00s39NXIHjHuLgtocgR1AAAAAG73jzU5evSfW1RZ5VCnNsF6c0KaOkeHuLsswC0I6gAAAADcprLKob/8Z5s+WFF9P/qI7jF66YY+Cg0wu7kywH0I6gAAAADcIr+kQn/8cJ1W7y+QJN0/oqvuubgz96OjxSOoAwAAAGhy67ML9IfZ65RXXKFQi59eHtdXw7tzPzogEdQBAAAANLF5q7P12D+3qtJefT/6WzelqVMb7kcHTiGoAwAAAGgSlVUOPfmfrZq9IltS9fPRXxjL/ejALxHUAQAAALhcfkmF7pq9TmsOFMhkkiaP6Ko/XsT96EBdCOoAAAAAXGpddoH+MHutjhRbFWrx0yu/6auLk7kfHTgdgjoAAAAAl5m7KluPf159P3qX6BC9OSFVHbkfHTgjgjoAAACARldZ5dDUf2/VnJXV96Nf0jNGL4ztqxALEQQ4G44SAAAAAI3qSHGF7vpwndb+dD/6AyO76q5h3I8O1BdBHQAAAECjWbnvuP44Z72OlVoVGuCnv43rp4uSo91dFuBVCOoAAAAAfjXDMDTzhyxN/3KH7A5D3WJC9caEVCVFBbu7NMDrENQBAAAA/ConrVV66NNN+mJTriTpyr5tNf2aXgryJ24A54IjBwAAAMA523u0VHd+sFa780vl52PSo5d3182DE2UycT86cK4I6gAAAADOycIteXrw440qtVYpOtSi12/sr7TECHeXBXg9gjoAAACABqmyO/T817v0xtK9kqQBiRF69cZ+ig4NcHNlQPNAUAcAAABQb8dLrbrno/Vatve4JOm285P08KXJMvv6uLkyoPkgqAMAAAColw05hfrD7LXKLapQkL+vnr22t67o09bdZQHNDkEdAAAAwBkZhqGPVuVo6r+2qtLuUMeoYL0xIVVdY0LdXRrQLBHUAQAAAJxWhc2ux/65RR+vPShJyugRo+fH9lFYgNnNlQHNF0EdAAAAQJ1yTpTpztlrtfVwsXxM0v9ckqw7h3bk0WuAixHUAQAAANSyZGe+7pu7QUXlNkUE+2vGb/ppSOcod5cFtAgEdQAAAABODoehVxfv0UuLdskwpD7tw/X6b1PVrlWgu0sDWgyXPUOhoKBAEyZMUHh4uMLDwzVhwgQVFhaedrzNZtOf/vQn9erVS8HBwWrbtq1uuukmHT58uMa4YcOGyWQy1fgYN26cq3YDAAAAaDEKTlbqtvdW68XM6pA+fmAH/ePOdEI60MRcdkZ9/PjxOnjwoBYuXChJ+v3vf68JEybo3//+d53jy8rKtG7dOj322GPq06ePCgoKNGnSJI0ZM0Zr1qypMXbixIl68sknna8DA/nGAQAAAPwaG3IK9ccP1+lQYbksfj76y5UpGntevLvLAloklwT17du3a+HChVqxYoUGDhwoSXr77beVnp6unTt3qlu3brXWCQ8PV2ZmZo1lM2bM0IABA5Sdna0OHTo4lwcFBSk2Nrbe9VitVlmtVufr4uJiSdVn8W02W4P2ramdqs/T62zJ6JF3oE/egT55PnrkHeiTd/CUPhmGoQ9X5ejpL3fKZjfUISJQM8b1UY+4MLfX5m6e0iOcmbf0qSH1mQzDMBq7gHfeeUeTJ0+udal7q1at9NJLL+nWW2+t13YWLVqkjIwMFRYWKiwsTFL1pe9bt26VYRiKiYnRpZdeqieeeEKhoad/huPUqVM1bdq0WsvnzJmjoKCg+u8YAAAA0IxY7dLcvT5ad7z6jtjeEQ6N7+RQIDNZAY2urKxM48ePV1FRkTPfno5LDsG8vDxFR0fXWh4dHa28vLx6baOiokIPP/ywxo8fX2MnbrzxRiUlJSk2NlZbtmzRlClTtHHjxlpn439uypQpmjx5svN1cXGx4uPjlZGRcdYvkLvZbDZlZmZq5MiRMpt5VqUnokfegT55B/rk+eiRd6BP3sHdfdp9pFR3z92ofcdPys/HpP/J6KJbByfw6LWfcXePUD/e0qdTV3bXR4OC+unOTP/c6tWrJanOA9wwjHod+DabTePGjZPD4dDrr79e472JEyc6P09JSVGXLl2UlpamdevWqX///nVuz2KxyGKx1FpuNps9upE/5021tlT0yDvQJ+9AnzwfPfIO9Mk7uKNP/1x/SFM+26xym10xYRa9Nr6/0hIjmrQGb8Kx5B08vU8Nqa1BQf3uu+8+6wzriYmJ2rRpk44cOVLrvaNHjyomJuaM69tsNo0dO1ZZWVn69ttvz3rGu3///jKbzdq9e/dpgzoAAAAAqcJm11/+s00frsyWJJ3fOUovj+urqJDaJ7UAuE+DgnpUVJSioqLOOi49PV1FRUVatWqVBgwYIElauXKlioqKNHjw4NOudyqk7969W4sXL1ZkZORZ/66tW7fKZrMpLi6u/jsCAAAAtDA5J8p014frtPlQkUwm6Z6Lu+i+4V3k68Ol7oCncclz1Lt3765Ro0Zp4sSJWrFihVasWKGJEydq9OjRNWZ8T05O1vz58yVJVVVVuu6667RmzRp9+OGHstvtysvLU15eniorKyVJe/fu1ZNPPqk1a9Zo//79WrBgga6//nr169dPQ4YMccWuAAAAAF5v0bYjuvxv32vzoSK1DjLr3VvO0+SRXQnpgIdy2XyOH374oe69915lZGRIksaMGaNXX321xpidO3eqqKhIknTw4EH961//kiT17du3xrjFixdr2LBh8vf31zfffKNXXnlFpaWlio+P1+WXX64nnnhCvr6+rtoVAAAAwCtV2R16/utdemPpXklSvw6t9Nr4/mrbKtDNlQE4E5cF9YiICM2ePfuMY37+ZLjExESd7Ulx8fHxWrp0aaPUBwAAADRn+cUVuuej9VqZdUKSdOuQRE25tLv8/VxyUS2ARsQTEgEAAIBmZvne47rno/U6VmpVsL+vnruujy7vzZxOgLcgqAMAAADNhMNh6I3v9ur5r3bKYUjdYkL1+m/7q1ObEHeXBqABCOoAAABAM1BwslIPfrxR3+zIlyRd07+dnrqqlwL9mcsJ8DYEdQAAAMDLrT1wQvfMWa/DRRXy9/PRk2N66obz4mUyMas74I0I6gAAAICXcjgMvfX9Pv31q52yOwx1jArWq+P7q0fbMHeXBuBXIKgDAAAAXujEyUpN/scGLdl5VJI0pk9bPX1NL4VY+BUf8HYcxQAAAICXWb2/+lL3vOIKWfx8NHVMT43jUneg2SCoAwAAAF7i1KzuL3y9y3mp+2s39lf3OC51B5oTgjoAAADgBY6XWjX5Hxu1dFf1pe5X9W2r/72aS92B5oijGgAAAPBwq7JO6N6P/nup+5NX9tTYNC51B5orgjoAAADgoRwOQ39fulcvZlZf6t6pTfWl7smxXOoONGcEdQAAAMADHS+16v5/bNR3P13qfnW/dvrfq1IUzKXuQLPHUQ4AAAB4mJX7juveuet1pNiqALOPnhyTouvT2nOpO9BCENQBAAAAD+FwGHp9yR69mLlLDkPq1CZYr9+Yqm6xoe4uDUATIqgDAAAAHuBYqVX3z9ug73cfkyRd27+9/nJVTwX58ys70NJw1AMAAABu9uOeY5o0b4OOllRf6v6XK1N0fVq8u8sC4CYEdQAAAMBN7A7phczdevP7LBmG1CU6RK/d2F9dY7jUHWjJCOoAAACAGxwsKNfftvpqf2mWJOk3Azro8dE9FOjv6+bKALgbQR0AAABoYl9sytXDn21SSYVJoQF+euaa3rq8d5y7ywLgIQjqAAAAQBMpr7Tryf9s1UerciRJiSGG3v19upKiw9xcGQBPQlAHAAAAmsCOvGLdM2e9dueXymSS7rwgSV2su9W+daC7SwPgYQjqAAAAgAsZhqHZK7P1v//ZJmuVQ21CLXr5hr4akBCuBQt2u7s8AB6IoA4AAAC4SGFZpR7+dLMWbs2TJF3UrY2ev76PIkMsstlsbq4OgKciqAMAAAAusHr/Cd330XodLqqQ2dekP41K1u+GJMnHx+Tu0gB4OII6AAAA0IjsDkOvLd6jlxftksOQEiODNOM3/dWrfbi7SwPgJQjqAAAAQCPJK6rQpHnrtWLfCUnSNf3a6cmrUhRi4dduAPXHdwwAAACgESzadkT/88lGFZTZFOTvq/+9KkXX9G/v7rIAeCGCOgAAAPArVNjseubLHZq1bL8kKaVdmGb8pr+SooLdWxgAr0VQBwAAAM7RriMluvej9dqRVyJJuu38JD00qpssfr5urgyANyOoAwAAAA1kGIbeX35ATy/YLmuVQ1Eh/vrrdX10UXK0u0sD0AwQ1AEAAIAGOFpi1UOfbNTinUclScO6tdFfr+ujNqEWN1cGoLkgqAMAAAD1tHhHvv7nk406Vlopfz8fPXJZd92UniCTiWejA2g8BHUAAADgLH45YVxybKheGddP3WJD3VsYgGaJoA4AAACcwfbcYt03d712HSmVJN06JFF/GpWsADMTxgFwDYI6AAAAUAeHw9CsZfv1zMIdqqxyKCrEouev761h3ZgwDoBrEdQBAACAX8gvrtCDn2zSd7uqJ4wbnhyt567rrcgQJowD4HoEdQAAAOBnMrcd0Z8+3aQTJytl8fPRo6N76LcDOzBhHIAmQ1AHAAAAJJVX2vW/X2zThyuzJUnd48L0t3F91SWGCeMANC2COgAAAFq8rYeLdN/cDdqTXz1h3MQLkvTgJd1k8WPCOABNj6AOAACAFsvhMDTzhyw999UO2eyGokMtemFsH13QpY27SwPQghHUAQAA0CIdKizX/3y8Ucv2HpckjewRo2ev7a2IYH83VwagpfNx1YYLCgo0YcIEhYeHKzw8XBMmTFBhYeEZ17nllltkMplqfAwaNKjGGKvVqnvuuUdRUVEKDg7WmDFjdPDgQVftBgAAAJoZwzA0f/1BjXr5Oy3be1yBZl89fXUvvTUhlZAOwCO4LKiPHz9eGzZs0MKFC7Vw4UJt2LBBEyZMOOt6o0aNUm5urvNjwYIFNd6fNGmS5s+fr7lz5+qHH35QaWmpRo8eLbvd7qpdAQAAQDNRcLJSd89Zr/vnbVRJRZX6xrfSgvsu0HhmdQfgQVxy6fv27du1cOFCrVixQgMHDpQkvf3220pPT9fOnTvVrVu3065rsVgUGxtb53tFRUWaOXOmPvjgA40YMUKSNHv2bMXHx2vRokW65JJLGn9nAAAA0Cws2Zmvhz7ZpPwSq/x8TLp3eBfdNayT/Hxddu4KAM6JS4L68uXLFR4e7gzpkjRo0CCFh4dr2bJlZwzqS5YsUXR0tFq1aqWhQ4fqqaeeUnR0tCRp7dq1stlsysjIcI5v27atUlJStGzZstMGdavVKqvV6nxdXFwsSbLZbLLZbL9qX13tVH2eXmdLRo+8A33yDvTJ89Ej70CfaiqvtOvZr3bpw1U5kqSOUcF6/roU9WoXLsNhl83hnisz6ZPno0fewVv61JD6XBLU8/LynOH656Kjo5WXl3fa9S699FJdf/31SkhIUFZWlh577DFdfPHFWrt2rSwWi/Ly8uTv76/WrVvXWC8mJuaM250+fbqmTZtWa/nXX3+toKCgBuyZ+2RmZrq7BJwFPfIO9Mk70CfPR4+8A32SDpRIs/f4Kr+i+rL2C2MduqJDkXI2/qicjW4u7if0yfPRI+/g6X0qKyur99gGBfWpU6fWGXh/bvXq1ZJU5z0+hmGc8d6fG264wfl5SkqK0tLSlJCQoC+++ELXXHPNadc723anTJmiyZMnO18XFxcrPj5eGRkZCgsLO+P+uJvNZlNmZqZGjhwps9ns7nJQB3rkHeiTd6BPno8eeQf6JNnsDv196T69vjJLdoehmFCLnrkmRed3jnR3aU70yfPRI+/gLX06dWV3fTQoqN99990aN27cGcckJiZq06ZNOnLkSK33jh49qpiYmHr/fXFxcUpISNDu3bslSbGxsaqsrFRBQUGNs+r5+fkaPHjwabdjsVhksVhqLTebzR7dyJ/zplpbKnrkHeiTd6BPno8eeYeW2qe9R0s1ed4GbTxYJEm6ok9b/eXKnmoV5JkzurfUPnkTeuQdPL1PDamtQUE9KipKUVFRZx2Xnp6uoqIirVq1SgMGDJAkrVy5UkVFRWcM1L90/Phx5eTkKC4uTpKUmpoqs9mszMxMjR07VpKUm5urLVu26LnnnmvIrgAAAKCZMQxDH6w4oKcXbFeFzaGwAD/95aoUXdm3nbtLA4AGcckUl927d9eoUaM0ceJErVixQitWrNDEiRM1evToGhPJJScna/78+ZKk0tJSPfjgg1q+fLn279+vJUuW6IorrlBUVJSuvvpqSVJ4eLhuu+02PfDAA/rmm2+0fv16/fa3v1WvXr2cs8ADAACg5TlSXKGb312txz/fqgqbQ+d3jtJX919ISAfglVwymZwkffjhh7r33nudM7SPGTNGr776ao0xO3fuVFFR9SVJvr6+2rx5s95//30VFhYqLi5OF110kebNm6fQ0FDnOi+99JL8/Pw0duxYlZeXa/jw4Zo1a5Z8fX1dtSsAAADwYP/ZdFiPzN+ionKbLH4+mnJpsm5KT5SPD89FB+CdXBbUIyIiNHv27DOOMQzD+XlgYKC++uqrs243ICBAM2bM0IwZM351jQAAAPBeReU2PfH5Fv1zw2FJUq924Xrphj7qHB16ljUBwLO5LKgDAAAArrJ011H96ZNNyiuukI9JuvuizrpneBeZfV1yZycANCmCOgAAALxGqbVKT32xTR+typEkJUYG6YWxfZWa0PosawKA9yCoAwAAwCss23NM//PJJh0qLJck3TI4UX8alaxAf+YqAtC8ENQBAADg0coqq/TMlzv0/vIDkqT2rQP11+v6KL1TpJsrAwDXIKgDAADAY63ef0IPfrxRB46XSZLGD+ygP1/WXSEWfo0F0HzxHQ4AAAAep8Jm1/Nf7dTMH7NkGFJceICevba3Luzaxt2lAYDLEdQBAADgUdZnF+jBjzdq79GTkqTrU9vrsSt6KCzA7ObKAKBpENQBAADgEaxVdr28aLfeXLpXDkNqE2rRM9f00vDuMe4uDQCaFEEdAAAAbrflUJEe+MdG7TxSIkm6sm9bTRvTU62C/N1cGQA0PYI6AAAA3MZmd+jVb/fotcV7VOUwFBnsr6euTtGolDh3lwYAbkNQBwAAgFvsyCvWA//YqK2HiyVJl/WK1V+uTFFkiMXNlQGAexHUAQAA0KSq7A69+d0+vbxol2x2Q62CzHryyhRd0TtOJpPJ3eUBgNsR1AEAANBkth0u1kOfbtSWQ9Vn0Ud0j9bT1/RSdGiAmysDAM9BUAcAAIDLVVY59OriPXr9p3vRwwPNenx0D13Tvx1n0QHgFwjqAAAAcKmNOYV66JNNzhndL+kZo79clcJZdAA4DYI6AAAAXKLCZtdLi3bp7e/2yWFIkcH+mnZlT13ei3vRAeBMCOoAAABodGv2n9BDn2zSvmMnJUlj+rTVE1f0YEZ3AKgHgjoAAAAaTVlllZ5buFPvLd8vw5CiQy3636tSlNEz1t2lAYDXIKgDAACgUSzbc0x/+myTck6US5LGprXXI5f1UHiQ2c2VAYB3IagDAADgVymusGn6gh36aFW2JKldq0BNv6aXLuzaxs2VAYB3IqgDAADgnC3eka8/z9+s3KIKSdKEQQn606XJCrHwayYAnCu+gwIAAKDBCssq9eR/tumzdYckSQmRQXr22t4a1DHSzZUBgPcjqAMAAKBBFm7J06P/3KJjpVaZTNJtQ5L0QEY3Bfr7urs0AGgWCOoAAAColyPFFXri861auDVPktQ5OkTPXttbqQmt3VwZADQvBHUAAACckcNh6KPV2Xrmyx0qqaiSr49Jd1zYUfcO76IAM2fRAaCxEdQBAABwWnvyS/XnzzZr1f4TkqQ+7cP1zLW91T0uzM2VAUDzRVAHAABALZVVDv19yV69tniPKu0OBfn76sGMbrp5cKJ8fUzuLg8AmjWCOgAAAGpYe+CEHv50s3bnl0qSLurWRn+5KkXtWwe5uTIAaBkI6gAAAJAklVTY9NzCnZq98oAMQ4oM9tfjV/TQmD5tZTJxFh0AmgpBHQAAAPp6a54e/3yr8oorJEnXpbbXI5d1V+tgfzdXBgAtD0EdAACgBcsvrtAT/9qqL7dUP3ItITJIT1/dS0M6R7m5MgBouQjqAAAALZDDYWju6hxN/3K785FrEy/oqEkjeOQaALgbQR0AAKCF2Xu0VFM+26xVWdWPXOvdPlzTr+mlnm3D3VwZAEAiqAMAALQYlVUOvbl0r2Z8W/3ItUCzrx7I6KpbhyTxyDUA8CAEdQAAgBZgxb7jevSfW7Tnp0euDe3aRv97VYriI3jkGgB4GoI6AABAM3a81KqnF+zQp+sOSuKRawDgDQjqAAAAzZDDkP6x5qCe+3q3isptMpmk8QM66KFLkhUeZHZ3eQCAMyCoAwAANDM780r0t62+ylqxTZLUPS5MT12dov4dWru5MgBAfRDUAQAAmomyyiq98s1uzfw+S1UOk4L8fTV5ZFfdMjhRfr4+7i4PAFBPBHUAAIBmIHPbEU3911YdKiyXJPWOcOjV312oDlGhbq4MANBQBHUAAAAvdqiwXFP/tVWZ245Iktq1CtTjo5NVsXe14sID3FwdAOBcENQBAAC8kM3u0Ls/ZumlzN0qt9nl52PSxAs76p6LO8tsMrRgr7srBACcK5fdrFRQUKAJEyYoPDxc4eHhmjBhggoLC8+4jslkqvPjr3/9q3PMsGHDar0/btw4V+0GAACAx1l74ISumPGDnl6wQ+U2u85LbK0F912gP41KVpA/52EAwNu57Dv5+PHjdfDgQS1cuFCS9Pvf/14TJkzQv//979Ouk5ubW+P1l19+qdtuu03XXnttjeUTJ07Uk08+6XwdGBjYiJUDAAB4psKySj27cIc+WpUjSWodZNaUy7rruv7t5ePDM9EBoLlwSVDfvn27Fi5cqBUrVmjgwIGSpLffflvp6enauXOnunXrVud6sbGxNV5//vnnuuiii9SxY8cay4OCgmqNPROr1Sqr1ep8XVxcLEmy2Wyy2Wz13o47nKrP0+tsyeiRd6BP3oE+eT565B4Oh6F/bjysZ7/apRMnq7/21/Vvp//J6KKIYH/Z7VWy2/87nj55B/rk+eiRd/CWPjWkPpNhGEZjF/DOO+9o8uTJtS51b9WqlV566SXdeuutZ93GkSNH1L59e7333nsaP368c/mwYcO0detWGYahmJgYXXrppXriiScUGnr6GU2nTp2qadOm1Vo+Z84cBQUF1X/HAAAAmtjBk9InWb7KKqk+Yx4baGhsR7s6hbm5MABAg5SVlWn8+PEqKipSWNiZv4m75Ix6Xl6eoqOjay2Pjo5WXl5evbbx3nvvKTQ0VNdcc02N5TfeeKOSkpIUGxurLVu2aMqUKdq4caMyMzNPu60pU6Zo8uTJztfFxcWKj49XRkbGWb9A7maz2ZSZmamRI0fKbDa7uxzUgR55B/rkHeiT56NHTaeo3KaXv9mjOZtz5DCkIH9f3TW0o24dnCB/vzNPM0SfvAN98nz0yDt4S59OXdldHw0K6qc7M/1zq1evllQ9MdwvGYZR5/K6vPPOO7rxxhsVEFDzsSITJ050fp6SkqIuXbooLS1N69atU//+/evclsVikcViqbXcbDZ7dCN/zptqbanokXegT96BPnk+euQ6DoehT9Ye1DMLd+jEyUpJ0ujecXrk8u6KC2/YvDz0yTvQJ89Hj7yDp/epIbU1KKjffffdZ51hPTExUZs2bdKRI0dqvXf06FHFxMSc9e/5/vvvtXPnTs2bN++sY/v37y+z2azdu3efNqgDAAB4g80Hi/TY51u0IadQktQ5OkRPjumpwZ2j3FsYAKBJNSioR0VFKSrq7D8o0tPTVVRUpFWrVmnAgAGSpJUrV6qoqEiDBw8+6/ozZ85Uamqq+vTpc9axW7dulc1mU1xc3Nl3AAAAwAMVllXqr1/t1JxV2TIMKdjfV5NGdNUtQxJl9nXZ03QBAB7KJfeod+/eXaNGjdLEiRP15ptvSqp+PNvo0aNrzPienJys6dOn6+qrr3YuKy4u1scff6wXXnih1nb37t2rDz/8UJdddpmioqK0bds2PfDAA+rXr5+GDBniil0BAABwGYfD0Lw1OXpu4Q4VlFXPBnxl37b682XdFRMWcJa1AQDNlcueo/7hhx/q3nvvVUZGhiRpzJgxevXVV2uM2blzp4qKimosmzt3rgzD0G9+85ta2/T399c333yjV155RaWlpYqPj9fll1+uJ554Qr6+vq7aFQAAgEa3IadQT3y+RRsPVv8u1C0mVNOu7KlBHSPdXBkAwN1cFtQjIiI0e/bsM46p68lwv//97/X73/++zvHx8fFaunRpo9QHAADgDidOVuq5hTs0b02ODEMKtfhp0siuuik9gcvcAQCSXBjUAQAA8F92h6GPVmXrr1/tVFF59WXu1/Rrp4cvS1Z0KJe5AwD+i6AOAADgYuuyC/T451u05VD1M3STY0P1l6tSdF5ihJsrAwB4IoI6AACAi+QVVei5hTv02fpDkqTQAD89MLKrfjsoQX5c5g4AOA2COgAAQCOrsNk184csvbZ4j8oq7ZKk61Pb66FRyWoTanFzdQAAT0dQBwAAaCSGYWjhljw9tWC7DhaUS5L6d2ilJ67oqT7xrdxbHADAaxDUAQAAGsG2w8V68j9btWLfCUlSbFiAplyWrDF92spkMrm5OgCANyGoAwAA/ArHS616MXOXPlqVLYchWfx8dMfQTrpzaEcF+fOrFgCg4fjpAQAAcA5sdoc+WH5ALy/apeKKKknS5b3jNOXSZLVvHeTm6gAA3oygDgAA0EBLdubrL//Zpr1HT0qSesSF6Ykremhgx0g3VwYAaA4I6gAAAPW072ip/veL7fp2R74kKTLYXw9e0k1j0+Ll68N96ACAxkFQBwAAOIviCptmfLNb7/64X1UOQ34+Jt06JFH3DO+isACzu8sDADQzBHUAAIDTsDsM/WNNjp7/aqeOn6yUJF2cHK1HLu+uTm1C3FwdAKC5IqgDAADU4btdR/X0gu3akVciSerYJliPje6hi7pFu7kyAEBzR1AHAAD4mZ15JXpqwXZ9t+uoJCk80Kx7h3fRTekJMvv6uLk6AEBLQFAHAACQlF9SoZcyd2ne6hw5DMnsa9JN6Ym65+LOahXk7+7yAAAtCEEdAAC0aOWVdr39/T69sXSvyirtkqRLU2L1p1HJSowKdnN1AICWiKAOAABaJIfD0GfrD+n5r3Yqr7hCktQ3vpUevby70hIj3FwdAKAlI6gDAIAWZ9meY/rfL7ZrW26xJKldq0D96dJkXdE7TiYTz0MHALgXQR0AALQYe/JLNH3BDn2zI1+SFBrgp7sv6qybBycqwOzr5uoAAKhGUAcAAM3esVKrXl60Sx+typHdYcjPx6QbB3bQfSO6KiKYieIAAJ6FoA4AAJqtCptd7/yYpdcX71WptUqSNLJHjB6+NFmd2oS4uToAAOpGUAcAAM2O3WHon+sP6cXMXTpUWC5JSmkXpkcu66H0TpFurg4AgDMjqAMAgGbDMAwt2XlUzy7coR15JZKkuPAAPTSqm67s004+PkwUBwDwfAR1AADQLKzLLtAzX+7QqqwTkqonivvDsE763ZAkJooDAHgVgjoAAPBqe/JL9devduirrUckSf5+Prp1cKL+MKyTWgUxURwAwPsQ1AEAgFfKK6rQy4t26R9rcuQwJB+TdF1qe00a0VVtWwW6uzwAAM4ZQR0AAHiVojKb/r50r979MUvWKoek6pnc/+eSbuoaE+rm6gAA+PUI6gAAwCtU2Ox6b9l+vb5kr4rKbZKk8xJb60+jkpWWGOHm6gAAaDwEdQAA4NGq7A59tu6QXlq0S7lFFZKkrjEheuiSZA3vHi2TiZncAQDNC0EdAAB4JMMwlLntiP761U7tzi+VJLUND9D9I7vqmv7t5cuj1gAAzRRBHQAAeJxVWSf07MIdWnugQJLUKsisPw7rrAnpCTxqDQDQ7BHUAQCAx9iYU6gXMnfpu11HJUkBZh/9bkiS7hjaSeGBZjdXBwBA0yCoAwAAt9uRV6wXvt6lzG3Vz0L38zFp7Hnxum94F8WEBbi5OgAAmhZBHQAAuM3eo6V6edFu/WfTYRk/PQv9qn7tNGl4V3WIDHJ3eQAAuAVBHQAANLmcE2X62ze79em6g3IY1csu7x2n+0d0UedonoUOAGjZCOoAAKDJHCmu0Ixvd2ve6hzZ7NUJfUT3aN0/sqt6tg13c3UAAHgGgjoAAHC546VW/X3JXn2w4oCsVQ5J0vmdozQ5o6v6d2jt5uoAAPAsBHUAAOAyRWU2vf39Pr3zY5bKKu2SpLSE1nogo5vSO0W6uToAADwTQR0AADS6UmuVZv2Ypbe+26fiiipJUq924Xogo6uGdm0jk8nk5goBAPBcBHUAANBoyiqr9OGKbP196V6dOFkpSeoaE6LJI7vpkp4xBHQAAOqBoA4AAH61ssoqzV5xQG99t0/HSqsDelJUsCaN6KLRvdvK14eADgBAffm4asNPPfWUBg8erKCgILVq1ape6xiGoalTp6pt27YKDAzUsGHDtHXr1hpjrFar7rnnHkVFRSk4OFhjxozRwYMHXbAHAADgbE5aq/TG0r264NnFenrBDh0rrVR8RKCeu7a3Mu+/UFf2bUdIBwCggVwW1CsrK3X99dfrD3/4Q73Xee655/Tiiy/q1Vdf1erVqxUbG6uRI0eqpKTEOWbSpEmaP3++5s6dqx9++EGlpaUaPXq07Ha7K3YDAADU4aS1Sn9fslcXPLdYz3y5Q8dPViohMkjPXddb3z4wTGPPi5efr8t+zQAAoFlz2aXv06ZNkyTNmjWrXuMNw9DLL7+sRx55RNdcc40k6b333lNMTIzmzJmjO+64Q0VFRZo5c6Y++OADjRgxQpI0e/ZsxcfHa9GiRbrkkktcsi8AAKBaqbVKmYdMmvri9yoos0mSEiKDdM/FXXRV37aEcwAAGoHH3KOelZWlvLw8ZWRkOJdZLBYNHTpUy5Yt0x133KG1a9fKZrPVGNO2bVulpKRo2bJlpw3qVqtVVqvV+bq4uFiSZLPZZLPZXLRHjeNUfZ5eZ0tGj7wDffIO9MlzlVRU6YMV2Xpn2X4VlftKsikxMkh3De2oK3rHys/XR4bDLpuDK9w8AceSd6BPno8eeQdv6VND6vOYoJ6XlydJiomJqbE8JiZGBw4ccI7x9/dX69ata405tX5dpk+f7jzD/3Nff/21goKCfm3pTSIzM9PdJeAs6JF3oE/egT55jvIq6bs8k5Yc9lGZvfpe8+gAQxntHeofVSzf3A36OtfNReK0OJa8A33yfPTIO3h6n8rKyuo9tkFBferUqXUG3p9bvXq10tLSGrLZGn752BbDMM76KJezjZkyZYomT57sfF1cXKz4+HhlZGQoLCzsnGttCjabTZmZmRo5cqTMZrO7y0Ed6JF3oE/egT55jpIKm2Ytz9asZQecz0HvGBWkOy9IlDl3ky7JoEeejGPJO9Anz0ePvIO39OnUld310aCgfvfdd2vcuHFnHJOYmNiQTTrFxsZKqj5rHhcX51yen5/vPMseGxuryspKFRQU1Dirnp+fr8GDB5922xaLRRaLpdZys9ns0Y38OW+qtaWiR96BPnkH+uQ+ReU2vftjlt75IcsZ0DtHh+ieiztrdO+2ctirtGDBJnrkJeiTd6BPno8eeQdP71NDamtQUI+KilJUVFSDC6qPpKQkxcbGKjMzU/369ZNUPXP80qVL9eyzz0qSUlNTZTablZmZqbFjx0qScnNztWXLFj333HMuqQsAgJbgeKlV7/64X+8t36+SnwJ6l+gQ3Tu8iy7rFed8xBq3oAMA4Houu0c9OztbJ06cUHZ2tux2uzZs2CBJ6ty5s0JCQiRJycnJmj59uq6++mqZTCZNmjRJTz/9tLp06aIuXbro6aefVlBQkMaPHy9JCg8P12233aYHHnhAkZGRioiI0IMPPqhevXo5Z4EHAAD1d7iwXG9/v08frcpWhc0hSeoaE6L7hnfVpSmx8uEZ6AAANDmXBfXHH39c7733nvP1qbPkixcv1rBhwyRJO3fuVFFRkXPMQw89pPLyct11110qKCjQwIED9fXXXys0NNQ55qWXXpKfn5/Gjh2r8vJyDR8+XLNmzZKvr6+rdgUAgGZn39FSvbF0r+avPySb3ZAk9Wkfrrsu6qyR3WMI6AAAuJHLgvqsWbPO+gx1wzBqvDaZTJo6daqmTp162nUCAgI0Y8YMzZgxoxGqBACgZdl6uEivL9mrBZtzderHcHrHSP3xos4a0jnyrBO4AgAA1/OYx7MBAADXWbP/hF5bvEeLdx51LhvRPVp/GNZZqQmtz7AmAABoagR1AACaKcMw9N3uY3pt8R6tyjohSfIxSaN7t9UfhnVS9zjPfkQpAAAtFUEdAIBmxuEw9NXWPL22ZI+2HKp+ZqvZ16TrUtvrjgs7KTEq2M0VAgCAMyGoAwDQTNjsDn2+4bD+vmSP9h49KUkKNPtq/MAOuv2CJMWFB7q5QgAAUB8EdQAAvNxJa5X+sSZH//d9lg4VlkuSwgL8dMvgRN0yJEkRwf5urhAAADQEQR0AAC+VX1Kh95bt1+wV2Soqt0mSokIsuv2CJN04sINCA8xurhAAAJwLgjoAAF5mT36p/u/7ffps3SFV2h2SpMTIIN12QUddn9peAWZfN1cIAAB+DYI6AABewDAMrd5foLe+26tF2/Ody/t1aKU7LuyokT1i5evDM9ABAGgOCOoAAHgwu8PQ11vz9OZ3+7Qhp1CSZDJJI7rH6I4LOyotMcK9BQIAgEZHUAcAwAOVV9r1ybqDmvn9Pu0/XiZJ8vfz0bX92+n2CzqqU5sQN1cIAABchaAOAIAHOV5q1fvLD+iDFQd04mSlJCk80Kyb0hN0U3qi2oRa3FwhAABwNYI6AAAeYP+xk/q/H/bp4zUHZa2qniCufetA3X5+ksaeF68gf35kAwDQUvBTHwAANzEMQ6uyTuidH7P09bYjMozq5b3ahev3F3bUpSmx8vP1cW+RAACgyRHUAQBoYtYqu/69MVfv/JClbbnFzuUXdWuj31/YSYM6RshkYgZ3AABaKoI6AABN5GiJVbNXHNCHKw/oWGn1/ecBZh9d3a+9bh2SqK4xoW6uEAAAeAKCOgAALrblUJHe/XG//r3xsCrt1fefx4UHaEJ6gn5zXge1DvZ3c4UAAMCTENQBAHABu8NQ5rYjeufHLK3KOuFc3q9DK/1uSJJGpcTKzP3nAACgDgR1AAAaUVG5TR+vydGsZft1sKBckuTnY9JlveJ065BE9evQ2s0VAgAAT0dQBwCgEWQdO6lZP2bp47UHVVZplyS1DjJr/MAOmjAoUbHhAW6uEAAAeAuCOgAA58jhMPTj3mN698f9+nZHvnN515gQ/W5Ikq7q104BZl83VggAALwRQR0AgAYqKrfpk7UH9eGKA9p37KRz+fDkaN06JElDOkfyeDUAAHDOCOoAANTT1sNFmr3igP65/rDKbdWXt4dY/HRt/3a6eXCiOrYJcXOFAACgOSCoAwBwBtYqu77cnKf3l+/XuuxC5/JuMaGakJ6gq/q1U4iFH6cAAKDx8JsFAAB1OFRYrg9XHNC81Tk6frJSUvXs7aNSYnVTeqLOS2zN5e0AAMAlCOoAAPzE4TD0/Z5j+mD5AX2744gcRvXy2LAAjR/YQePOi1d0GLO3AwAA1yKoAwBavKIymz5em6PZKw5o//Ey5/LBnSJ1U3qCRnSPkZ+vjxsrBAAALQlBHQDQYm05VKQPlh/Q5xsPqcLmkCSFWvx0bWp7/XZQB3WODnVzhQAAoCUiqAMAWpRSa5X+teGwPlqVrc2HipzLk2N/mhyubzsFMzkcAABwI34TAQA0e4ZhaOPBIs1dla1/bTysssrqR6uZfU0alRKnm9ITlJbA5HAAAMAzENQBAM1WUblNn284pDkrs7Ujr8S5vGNUsH4zoIOu6d9OkSEWN1YIAABQG0EdANCsGIahtQcK9NGqHH2x+bDz3nN/Px9d3itO486L14CkCM6eAwAAj0VQBwA0CwUnK/XZ+kOauypbu/NLncu7xoToNwM66Op+7dQqyN+NFQIAANQPQR0A4LUMw9CKfSc0d3W2vtySp8qq6rPnAWYfXdG7rcYN6KD+HVpx9hwAAHgVgjoAwOscLbHqs3UHNW91jvYdO+lc3iMuTL8Z2EFX9m2rsACzGysEAAA4dwR1AIBXqKxy6NsdR/TJ2oNavPOo7A5DkhTs76sxfdvpNwPi1atdOGfPAQCA1yOoAwA82pZDRfpk7UF9vuGQCspszuV941tp3HnxuqJPW557DgAAmhV+swEAeJzjJyv1xZaD+mTtQW3PLXYujw616Jr+7XVdajt1jg51Y4UAAACuQ1AHAHgEm92hRdvz9X87fPTAyqWq+unSdn9fH43sGaPrUtvrgs5R8vP1cXOlAAAArkVQBwC41fbcYn2y9qD+uf6Qjp+slOQjyVDv9uG6PrW9rujTlseqAQCAFoWgDgBocidOVupfGw7pk3UHteXQfy9tjwrxV+/QCj1w7RD1bB/hxgoBAADch6AOAGgSFTa7Fu/I1z83HNK3O/Jls1df2m72NWlE9+pL29OTWinzq4XqGsP95wAAoOUiqAMAXMbhMLQi67g+X39YC7bkqqSiyvleSrswXde/vcb0baeI4OpL22022+k2BQAA0GK4LKg/9dRT+uKLL7Rhwwb5+/ursLDwjONtNpseffRRLViwQPv27VN4eLhGjBihZ555Rm3btnWOGzZsmJYuXVpj3RtuuEFz5851xW4AABrIMAxtzy3R5xsO6fMNh5VXXOF8Ly48QGP6ttVVfdupe1yYG6sEAADwXC4L6pWVlbr++uuVnp6umTNnnnV8WVmZ1q1bp8cee0x9+vRRQUGBJk2apDFjxmjNmjU1xk6cOFFPPvmk83VgYGCj1w8AaJiDBWX6fMNhfb7hkHYdKXUuDw3w0+W94nRl33YamBQhHx+TG6sEAADwfC4L6tOmTZMkzZo1q17jw8PDlZmZWWPZjBkzNGDAAGVnZ6tDhw7O5UFBQYqNja13LVarVVar1fm6uLh64iKbzebxl1meqs/T62zJ6JF3oE+uUVhm05db8/Svjblac6DQudzsa9JF3dpoTO84DesaJYvZV5Jkt1fJbj/99uiT56NH3oE+eQf65PnokXfwlj41pD6TYRiGC2vRrFmzNGnSpLNe+l6XRYsWKSMjQ4WFhQoLq75EctiwYdq6dasMw1BMTIwuvfRSPfHEEwoNPf3EQ1OnTnX+x8HPzZkzR0FBQQ2uCwBaskq7tLXQpLVHTdpWaJLdqD5DbpKhTmGG0qIM9Yk0FMQsKAAAAE5lZWUaP368ioqKnPn2dDw2qFdUVOj8889XcnKyZs+e7Vz+9ttvKykpSbGxsdqyZYumTJmizp071zob/3N1nVGPj4/XsWPHzvoFcjebzabMzEyNHDlSZrPZ3eWgDvTIO9CnX8dmd2j5vhP6YnOevt6Wr1LrfyeFS44N1Zg+sRrdK05x4QG/7u+hTx6PHnkH+uQd6JPno0fewVv6VFxcrKioqHoF9Qad7zjdmemfW716tdLS0hqy2VpsNpvGjRsnh8Oh119/vcZ7EydOdH6ekpKiLl26KC0tTevWrVP//v3r3J7FYpHFYqm13Gw2e3Qjf86bam2p6JF3oE/1V2V3aPm+4/piU64Wbs1TYdl/L9dq1yrQOSlct9jGf5QaffJ89Mg70CfvQJ88Hz3yDp7ep4bU1qCgfvfdd2vcuHFnHJOYmNiQTdZis9k0duxYZWVl6dtvvz3r/zT0799fZrNZu3fvPm1QBwDUj91haOW+4/rP5lwt3JKnEycrne9Fhfjr0pQ4je4dp/MSmRQOAADAVRoU1KOiohQVFeWqWpwhfffu3Vq8eLEiIyPPus7WrVtls9kUFxfnsroAoDmzOwyt2X9C/9mUqy+35OlY6X9vFYoI9teolOrL2gd2jJQv4RwAAMDlXDbVT3Z2tk6cOKHs7GzZ7XZt2LBBktS5c2eFhIRIkpKTkzV9+nRdffXVqqqq0nXXXad169bpP//5j+x2u/Ly8iRJERER8vf31969e/Xhhx/qsssuU1RUlLZt26YHHnhA/fr105AhQ1y1KwDQ7DgchtZlF+g/m3K1YHOu8kv+G85bBZk1qmesLu8dp/SOkfLz9XFjpQAAAC2Py4L6448/rvfee8/5ul+/fpKkxYsXa9iwYZKknTt3qqioSJJ08OBB/etf/5Ik9e3bt8a2Tq3j7++vb775Rq+88opKS0sVHx+vyy+/XE888YR8fX1dtSsA0CwYhqH1OYX6z8bqcJ5XXOF8LzTAT5f0jNXo3nEa0jlKZsI5AACA27gsqM+aNeusz1D/+YTziYmJOtsE9PHx8Vq6dGljlAcALcKpy9oXbs3T11uP6FBhufO9EIufMnrEaHSfOJ3fuY38/QjnAAAAnoCn3AJAM2OtsmvZnuP6amueMrcd0fGfTQgX7O+rET1idHmvOF3YtY0CzFyNBAAA4GkI6gDQDJy0VmnJzqNauDVPi3fUfM55eKBZw7tHa1TPWMI5AACAFyCoA4CXKjhZqcztR/T11jx9t/uYKqsczveiQy26pGesLukZq4EdI7jnHAAAwIsQ1AHAi+QWlevrrUe0cEueVu0/Ibvjv3N7JEQGaVTPWF2SEqu+7VvxnHMAAAAvRVAHAA9mGIb2Hi1V5rZ8Ldyap405hTXe7x4X9lM4j1G3mFCZTIRzAAAAb0dQBwAPU1nl0Or9J7Ro+xF9uyNfB46XOd8zmaT+HVpXh/OeseoQGeTGSgEAAOAKBHUA8AAFJyu1eGe+vtmer+92HVXJzyaD8/f10aBOkcroEaOMHjGKDgtwY6UAAABwNYI6ALiBYRjak1+qRdvz9e2OI1p7oEA/u91cUSH+uqhbtIZ3j9H5XaIUYuHbNQAAQEvBb34A0EQqqxxalfXfS9qzT5TVeD85NlQjusfo4u7RTAYHAADQghHUAcCFjpdatWTnUX2z44i+23WsxvPN/X19lN4pUsO7R+vi5Gi1b8395gAAACCoA0CjqrI7tCGnUEt3HdXSXUe1+VCRjNNc0n5BlygFc0k7AAAAfoHfEAHgV8otKtd3PwXz73cfU0lFVY33u8eFaXhytIZ3j1YfLmkHAADAWRDUAaCBrFV2rdlfUH3WfOdR7TxSUuP98ECzLugSpaFd2+jCrm0UwyztAAAAaACCOgDUw4HjJ53BfNne4yq32Z3vmUxSn/atNLRrGw3t1kZ92reSL2fNAQAAcI4I6gBQh1JrlVbuO+68pH3/8ZoztEeFWJzB/ILOUWod7O+mSgEAANDcENQBQNWPTlufXaAf9xzTj3uPa2NOoap+9mBzPx+TUhNaa2i3NhratY26x4ZxrzkAAABcgqAOoEVyOAxtyy3Wsr3H9MOe41qddaLG5eyS1CEiSEM6R2lYtzYa3ClSoQFmN1ULAACAloSgDqBFMAxDR8ulj1bnaGVWoZbtPaaCMluNMVEh/krvFKXzO0dqcKcoxUfwXHMAAAA0PYI6gGbraIlVy/Yeq76cfc8xHSr0kzZsd74f7O+rgR0jNbhTpM7vEqVuMaEymbicHQAAAO5FUAfQbBwtsWpV1gmtzDqulftO1Hpsmq/JUP+ECJ3fuY2GdI5Un/hWMvv6uKlaAAAAoG4EdQBeK6+oojqUZ53Qyn3HtffoyVpjesSF6fwuURqY2ErHd6zS1VecJ7OZe80BAADguQjqALzGwYIyrdx3whnOD/zikWmSlBwbqkEdIzUgKUKDOkYq4qfHptlsNi3Y3dQVAwAAAA1HUAfgkQzD0IHjZc7L2FdmndChwvIaY3xMUo+2YRqYFKmBSREakBShVkE8zxwAAADejaAOwCPYHYZ25BVr3YECrd5foJVZx3Wk2FpjjK+PSb3ahWtgxwgNSopUamJrhfHINAAAADQzBHUAblFcYdP67EKtPVCgdQcKtD67QCcraz7H3N/XR33iw6vPmHeMUP8OrRVs4dsWAAAAmjd+4wXgcoZhKPtEmdYeKNCan4L5ziMlMoya40IsfurXoZVSE1prQFJ1MA8w+7qnaAAAAMBNCOoAGp21yq4th4q19sAJrT1QoLUHCnWs1FprXIeIIKUltFb/hNZKTWitrjGh8vXhOeYAAABo2QjqAH4VwzB0sKBcGw8WamNOodZlF2rzwSJV2h01xpl9q+8vT/0plPdPaK3o0AA3VQ0AAAB4LoI6gAYpLKvUxoNF2phTHcw3HizUsdLKWuMig/2dZ8rTElorpV04l7EDAAAA9UBQB3BaFTa7th4udgbyjTmF2l/Hs8v9fEzqHhemvvGt1Ce++h7zxMggmUxcxg4AAAA0FEEdgCTJ4TC092ipNjhDeZG25xarymHUGpsUFaw+7cPV56dg3iMujLPlAAAAQCMhqAMtUJXdoT1HS7XlULG2HCrS1sNF2na4uNbj0aTqS9hPnSnvG99KvduHq1WQvxuqBgAAAFoGgjrQzFXY7Np1pKQ6lB8u0tbDxdqRWyxrlaPW2ECzr3q1D68O5u1bqU98uNq1CuQSdgAAAKAJEdSBZqSsskrbc4udZ8q3HC7W7iMldV6+HmLxU4+2YUppG66UdmFKaReujlHB8vP1cUPlAAAAAE4hqANeyDAMHSm2antesXbmlWh7brG2Hi7W3qOlMmpncrUOMiulXbh6ngrlbcPVISJIPjyzHAAAAPA4BHXAw5VXVl+6viOvWNtzq//ckVeiwjJbneNjwixKaRuunu3CldI2TD3bhatteACXrwMAAABegqAOeAiHw9DBgnJtzyvWjp8F8v3HT9Z5ltzXx6SOUcFKjgtTcmyoerQNU8+2YYoODWj64gEAAAA0GoI60MQMw1B+iVV78ku1+0iJduWXakdu9SXsdc26LklRIRZ1jwtVcmyousVWB/PO0SE8Eg0AAABohgjqgIsYhqHDRRXafaTkp1Beqt35JdqdX6qSiqo61/H381HXmBB1iwn7KZiHqVtsqNqEWpq4egAAAADuQlAHfiW7w9CxCumbHfnKOl6h3fnVwXxvfulpz5D7+piUEBmkzm1C1CUmRMmx1cE8MZJZ1wEAAICWjqAO1FNxhU1ZR08q69hJ7TtW/efe/FLtPVoqa5WftH5DrXXMviYlRQWrS3T1pepdYkLUJTpUiVFBsvhx2ToAAACA2lwW1J966il98cUX2rBhg/z9/VVYWHjWdW655Ra99957NZYNHDhQK1ascL62Wq168MEH9dFHH6m8vFzDhw/X66+/rvbt2zf2LqAFslbZlXOiTHt/CuQ/D+bHSq2nXc9sMtQpJkxdY0LV5adA3jk6VAmRQTJzhhwAAABAA7gsqFdWVur6669Xenq6Zs6cWe/1Ro0apXfffdf52t/fv8b7kyZN0r///W/NnTtXkZGReuCBBzR69GitXbtWvr6cocTZ2R2GcovKtf9YmfYdK9W+U6H82EkdLCiTo44Z1k9pE2pRUlSwOrUJVlJUsJKiQpQUGaDNy5do9OXpMpvNTbcjAAAAAJollwX1adOmSZJmzZrVoPUsFotiY2PrfK+oqEgzZ87UBx98oBEjRkiSZs+erfj4eC1atEiXXHLJr6oZzcdJa5WyT5RVfxyv/vPAiTLlnCjTwYIy2eynT+MhFr+fQniwOv4UyDtGhSgxKkihAbWDuM1m01YeUQ4AAACgkXjcPepLlixRdHS0WrVqpaFDh+qpp55SdHS0JGnt2rWy2WzKyMhwjm/btq1SUlK0bNmy0wZ1q9Uqq/W/ly0XFxdLqg5YNpvNhXvz652qz9PrbGqnHnGWU1Cu7BNlyjlRruwT5copKFP2iXIdP1l5xvXNvibFtw5UUlSwEiOD1DEqWIlRQUqKDFZUiL9MprqTd119oEfegT55B/rk+eiRd6BP3oE+eT565B28pU8Nqc9kGMYZLvT99WbNmqVJkybV6x71efPmKSQkRAkJCcrKytJjjz2mqqoqrV27VhaLRXPmzNGtt95aI3RLUkZGhpKSkvTmm2/Wud2pU6c6z/D/3Jw5cxQUFHRO+wXXchhScaVUUCmdsJp0wioV/OzP41bJ5jjzaewgP0NRFikywFBUgBRp+enPAEOt/CUfzoIDAAAAaCJlZWUaP368ioqKFBYWdsaxDTqjfrrA+3OrV69WWlpaQzbrdMMNNzg/T0lJUVpamhISEvTFF1/ommuuOe16hmGc9gyoJE2ZMkWTJ092vi4uLlZ8fLwyMjLO+gVyN5vNpszMTI0cObJZ3f9cWeVQXnGFDhdW6FBh+U8fFTr80595xRVnvDxdqg7abVsFqkPrQMVHBCm+daA6RASqw0+fhwU2zderufaouaFP3oE+eT565B3ok3egT56PHnkHb+nTqSu766NBQf3uu+/WuHHjzjgmMTGxIZs8o7i4OCUkJGj37t2SpNjYWFVWVqqgoECtW7d2jsvPz9fgwYNPux2LxSKLxVJrudls9uhG/pw31WqzO5RfYlVeUbnyiqzKLSpXXlF1+M4tqtChgnIdKanQ2a7l8PUxKTYsQO1aB6p9q0C1ax2odj/9Gd86SO1aB3rUjOre1KOWjD55B/rk+eiRd6BP3oE+eT565B08vU8Nqa1BQT0qKkpRUVENLuhcHT9+XDk5OYqLi5Mkpaamymw2KzMzU2PHjpUk5ebmasuWLXruueearK6WrMJmV15RdeDOKy5XblGFjjhfVyivqEJHS61nDeGSZPHzcQbvdq0Ca37eOlCxYQHy86AgDgAAAABNwWWTyWVnZ+vEiRPKzs6W3W7Xhg0bJEmdO3dWSEiIJCk5OVnTp0/X1VdfrdLSUk2dOlXXXnut4uLitH//fv35z39WVFSUrr76aklSeHi4brvtNj3wwAOKjIxURESEHnzwQfXq1cs5CzwazjAMlVqrlF9i1dESq/JLrMovrg7cR4utOlpqVX6xVUdKKlRYVr8JEMy+JsWEBSg2LECx4QGKCw9QbHig8wx5u1aBZ5y0DQAAAABaKpcF9ccff1zvvfee83W/fv0kSYsXL9awYcMkSTt37lRRUZEkydfXV5s3b9b777+vwsJCxcXF6aKLLtK8efMUGhrq3M5LL70kPz8/jR07VuXl5Ro+fLhmzZrFM9TrYK2y68TJSh0vrXSG7vySCmcYd4bykgpV2Bz13m6g2fen4P3TR1jNIB4bHqDIYH/5MFsbAAAAADSYy4L6rFmzzvoM9Z9POB8YGKivvvrqrNsNCAjQjBkzNGPGjF9botex2R0qOFmp4z+F7+Mnrc4/T5ys1LHSSh0vtTrDeYm1qkHbD7H4KTrUoqhQi6JDLYoODVCbnz5vE2pRdJhFceGBCgvw40w4AAAAALiIxz1HHf/1xaZcvfvjPmUf8dXjG75VUXnDgrck+fmYFBHsr6iQ6qDd5qc/fxnC24RaFOTPPwcAAAAAcDeSmQc7UVapNQcKJZkkVYd0H5MUEeyvyGBL9Z8h1SH81OeRwf6K/Ol1VLBFYYGc/QYAAAAAb0JQ92AXdonS327ord2b1+nS4RcqtlWwWgWaufcbAAAAAJoxgroHS4gMVtswfxnZUpfoEI9+JiAAAAAAoHHwkGoAAAAAADwIQR0AAAAAAA9CUAcAAAAAwIMQ1AEAAAAA8CAEdQAAAAAAPAhBHQAAAAAAD0JQBwAAAADAgxDUAQAAAADwIAR1AAAAAAA8CEEdAAAAAAAPQlAHAAAAAMCDENQBAAAAAPAgBHUAAAAAADwIQR0AAAAAAA9CUAcAAAAAwIMQ1AEAAAAA8CAEdQAAAAAAPIifuwtwB8MwJEnFxcVuruTsbDabysrKVFxcLLPZ7O5yUAd65B3ok3egT56PHnkH+uQd6JPno0fewVv6dCp/nsqjZ9Iig3pJSYkkKT4+3s2VAAAAAABakpKSEoWHh59xjMmoT5xvZhwOhw4fPqzQ0FCZTCZ3l3NGxcXFio+PV05OjsLCwtxdDupAj7wDffIO9Mnz0SPvQJ+8A33yfPTIO3hLnwzDUElJidq2bSsfnzPfhd4iz6j7+Pioffv27i6jQcLCwjz6Hx3okbegT96BPnk+euQd6JN3oE+ejx55B2/o09nOpJ/CZHIAAAAAAHgQgjoAAAAAAB6EoO7hLBaLnnjiCVksFneXgtOgR96BPnkH+uT56JF3oE/egT55PnrkHZpjn1rkZHIAAAAAAHgqzqgDAAAAAOBBCOoAAAAAAHgQgjoAAAAAAB6EoA4AAAAAgAchqAMAAAAA4EEI6m721FNPafDgwQoKClKrVq3qtY5hGJo6daratm2rwMBADRs2TFu3bq0xxmq16p577lFUVJSCg4M1ZswYHTx40AV70PwVFBRowoQJCg8PV3h4uCZMmKDCwsIzrmMymer8+Otf/+ocM2zYsFrvjxs3zsV703ydS59uueWWWj0YNGhQjTEcS42roX2y2Wz605/+pF69eik4OFht27bVTTfdpMOHD9cYx/H067z++utKSkpSQECAUlNT9f33359x/NKlS5WamqqAgAB17NhRb7zxRq0xn376qXr06CGLxaIePXpo/vz5riq/RWhIjz777DONHDlSbdq0UVhYmNLT0/XVV1/VGDNr1qw6f05VVFS4eleatYb0acmSJXX2YMeOHTXGcSw1vob0qa7fFUwmk3r27Okcw/HUuL777jtdccUVatu2rUwmk/75z3+edZ1m+XPJgFs9/vjjxosvvmhMnjzZCA8Pr9c6zzzzjBEaGmp8+umnxubNm40bbrjBiIuLM4qLi51j7rzzTqNdu3ZGZmamsW7dOuOiiy4y+vTpY1RVVbloT5qvUaNGGSkpKcayZcuMZcuWGSkpKcbo0aPPuE5ubm6Nj3feeccwmUzG3r17nWOGDh1qTJw4sca4wsJCV+9Os3Uufbr55puNUaNG1ejB8ePHa4zhWGpcDe1TYWGhMWLECGPevHnGjh07jOXLlxsDBw40UlNTa4zjeDp3c+fONcxms/H2228b27ZtM+677z4jODjYOHDgQJ3j9+3bZwQFBRn33XefsW3bNuPtt982zGaz8cknnzjHLFu2zPD19TWefvppY/v27cbTTz9t+Pn5GStWrGiq3WpWGtqj++67z3j22WeNVatWGbt27TKmTJlimM1mY926dc4x7777rhEWFlbr5xXOXUP7tHjxYkOSsXPnzho9+PnPF46lxtfQPhUWFtboT05OjhEREWE88cQTzjEcT41rwYIFxiOPPGJ8+umnhiRj/vz5ZxzfXH8uEdQ9xLvvvluvoO5wOIzY2FjjmWeecS6rqKgwwsPDjTfeeMMwjOpvKGaz2Zg7d65zzKFDhwwfHx9j4cKFjV57c7Zt2zZDUo2DePny5YYkY8eOHfXezpVXXmlcfPHFNZYNHTrUuO+++xqr1BbtXPt08803G1deeeVp3+dYalyNdTytWrXKkFTjlyqOp3M3YMAA484776yxLDk52Xj44YfrHP/QQw8ZycnJNZbdcccdxqBBg5yvx44da4waNarGmEsuucQYN25cI1XdsjS0R3Xp0aOHMW3aNOfr+v7egfpraJ9OBfWCgoLTbpNjqfH92uNp/vz5hslkMvbv3+9cxvHkOvUJ6s315xKXvnuZrKws5eXlKSMjw7nMYrFo6NChWrZsmSRp7dq1stlsNca0bdtWKSkpzjGon+XLlys8PFwDBw50Lhs0aJDCw8Pr/bU8cuSIvvjiC91222213vvwww8VFRWlnj176sEHH1RJSUmj1d6S/Jo+LVmyRNHR0eratasmTpyo/Px853scS42rMY4nSSoqKpLJZKp1uxDHU8NVVlZq7dq1Nf6NS1JGRsZpe7J8+fJa4y+55BKtWbNGNpvtjGM4bhruXHr0Sw6HQyUlJYqIiKixvLS0VAkJCWrfvr1Gjx6t9evXN1rdLc2v6VO/fv0UFxen4cOHa/HixTXe41hqXI1xPM2cOVMjRoxQQkJCjeUcT+7TXH8u+bm7ADRMXl6eJCkmJqbG8piYGB04cMA5xt/fX61bt6415tT6qJ+8vDxFR0fXWh4dHV3vr+V7772n0NBQXXPNNTWW33jjjUpKSlJsbKy2bNmiKVOmaOPGjcrMzGyU2luSc+3TpZdequuvv14JCQnKysrSY489posvvlhr166VxWLhWGpkjXE8VVRU6OGHH9b48eMVFhbmXM7xdG6OHTsmu91e58+U0/UkLy+vzvFVVVU6duyY4uLiTjuG46bhzqVHv/TCCy/o5MmTGjt2rHNZcnKyZs2apV69eqm4uFivvPKKhgwZoo0bN6pLly6Nug8twbn0KS4uTm+99ZZSU1NltVr1wQcfaPjw4VqyZIkuvPBCSac/3jiWzs2vPZ5yc3P15Zdfas6cOTWWczy5V3P9uURQd4GpU6dq2rRpZxyzevVqpaWlnfPfYTKZarw2DKPWsl+qz5iWor49kmp/raWGfS3feecd3XjjjQoICKixfOLEic7PU1JS1KVLF6WlpWndunXq379/vbbd3Lm6TzfccIPz85SUFKWlpSkhIUFffPFFrf9Yach2W5qmOp5sNpvGjRsnh8Oh119/vcZ7HE+/TkN/ptQ1/pfLz+XnFE7vXL+eH330kaZOnarPP/+8xn+UDRo0qMbkmUOGDFH//v01Y8YM/e1vf2u8wluYhvSpW7du6tatm/N1enq6cnJy9PzzzzuDekO3ifo516/prFmz1KpVK1111VU1lnM8uV9z/LlEUHeBu++++6yzDScmJp7TtmNjYyVV/89RXFycc3l+fr7zf4liY2NVWVmpgoKCGmcC8/PzNXjw4HP6e5ub+vZo06ZNOnLkSK33jh49Wut/5ery/fffa+fOnZo3b95Zx/bv319ms1m7d+8mWPykqfp0SlxcnBISErR7925JHEv11RR9stlsGjt2rLKysvTtt9/WOJteF46n+omKipKvr2+tMwo//5nyS7GxsXWO9/PzU2Rk5BnHNOR4RLVz6dEp8+bN02233aaPP/5YI0aMOONYHx8fnXfeec7vf2iYX9Onnxs0aJBmz57tfM2x1Lh+TZ8Mw9A777yjCRMmyN/f/4xjOZ6aVnP9ucQ96i4QFRWl5OTkM3788uxqfZ26tPPnl3NWVlZq6dKlzuCQmpoqs9lcY0xubq62bNlCuPhJfXuUnp6uoqIirVq1yrnuypUrVVRUVK+v5cyZM5Wamqo+ffqcdezWrVtls9lq/AdMS9dUfTrl+PHjysnJcfaAY6l+XN2nUyF99+7dWrRokfOH7plwPNWPv7+/UlNTa90ikJmZedqepKen1xr/9ddfKy0tTWaz+YxjOG4a7lx6JFWfSb/llls0Z84cXX755Wf9ewzD0IYNGzhmztG59umX1q9fX6MHHEuN69f0aenSpdqzZ0+dcw79EsdT02q2P5eaevY61HTgwAFj/fr1xrRp04yQkBBj/fr1xvr1642SkhLnmG7duhmfffaZ8/UzzzxjhIeHG5999pmxefNm4ze/+U2dj2dr3769sWjRImPdunXGxRdfzCOlztGoUaOM3r17G8uXLzeWL19u9OrVq9bjpH7ZI8MwjKKiIiMoKMj4+9//Xmube/bsMaZNm2asXr3ayMrKMr744gsjOTnZ6NevHz06Rw3tU0lJifHAAw8Yy5YtM7KysozFixcb6enpRrt27TiWXKihfbLZbMaYMWOM9u3bGxs2bKjx2Bur1WoYBsfTr3XqUUUzZ840tm3bZkyaNMkIDg52zmj88MMPGxMmTHCOP/UYnPvvv9/Ytm2bMXPmzFqPwfnxxx8NX19f45lnnjG2b99uPPPMMx7/GBxP1tAezZkzx/Dz8zNee+210z6ycOrUqcbChQuNvXv3GuvXrzduvfVWw8/Pz1i5cmWT719z0dA+vfTSS8b8+fONXbt2GVu2bDEefvhhQ5Lx6aefOsdwLDW+hvbplN/+9rfGwIED69wmx1PjKikpcWYiScaLL75orF+/3vm0l5byc4mg7mY333yzIanWx+LFi51jJBnvvvuu87XD4TCeeOIJIzY21rBYLMaFF15obN68ucZ2y8vLjbvvvtuIiIgwAgMDjdGjRxvZ2dlNtFfNy/Hjx40bb7zRCA0NNUJDQ40bb7yx1qNUftkjwzCMN9980wgMDKzzWc7Z2dnGhRdeaERERBj+/v5Gp06djHvvvbfWM7xRfw3tU1lZmZGRkWG0adPGMJvNRocOHYybb7651nHCsdS4GtqnrKysOr9H/vz7JMfTr/faa68ZCQkJhr+/v9G/f39j6dKlzvduvvlmY+jQoTXGL1myxOjXr5/h7+9vJCYm1vkfkh9//LHRrVs3w2w2G8nJyTXCBxquIT0aOnRoncfMzTff7BwzadIko0OHDoa/v7/Rpk0bIyMjw1i2bFkT7lHz1JA+Pfvss0anTp2MgIAAo3Xr1sb5559vfPHFF7W2ybHU+Br6Pa+wsNAIDAw03nrrrTq3x/HUuE49uvB038Nays8lk2H8dKc9AAAAAABwO+5RBwAAAADAgxDUAQAAAADwIAR1AAAAAAA8CEEdAAAAAAAPQlAHAAAAAMCDENQBAAAAAPAgBHUAAAAAADwIQR0AAAAAAA9CUAcAAAAAwIMQ1AEAAAAA8CAEdQAAAAAAPMj/AzvyF/DjYs1NAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 1200x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x = np.linspace(a, b)  #50 equally sapce valued from a to b\n",
    "\n",
    "plt.figure(figsize=(12,6)) # Create an \"empty\" graph, 12 wide, 6 high\n",
    "plt.plot(x, f(x))\n",
    "plt.plot([a, b], [0, 0], 'g')  # Mark the x-axis in green\n",
    "plt.grid(True);  # Add a graph paper background"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[-1.         -0.95918367 -0.91836735 -0.87755102 -0.83673469 -0.79591837\n",
      " -0.75510204 -0.71428571 -0.67346939 -0.63265306 -0.59183673 -0.55102041\n",
      " -0.51020408 -0.46938776 -0.42857143 -0.3877551  -0.34693878 -0.30612245\n",
      " -0.26530612 -0.2244898  -0.18367347 -0.14285714 -0.10204082 -0.06122449\n",
      " -0.02040816  0.02040816  0.06122449  0.10204082  0.14285714  0.18367347\n",
      "  0.2244898   0.26530612  0.30612245  0.34693878  0.3877551   0.42857143\n",
      "  0.46938776  0.51020408  0.55102041  0.59183673  0.63265306  0.67346939\n",
      "  0.71428571  0.75510204  0.79591837  0.83673469  0.87755102  0.91836735\n",
      "  0.95918367  1.        ]\n"
     ]
    }
   ],
   "source": [
    "# If you want to see what `linspace` gives, run this cell\n",
    "print(x)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This shows that the zero lies between 0.5 and 0.75, so zoom in:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1200x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "a = 0.5; b = 0.75\n",
    "x = np.linspace(a, b)\n",
    "plt.figure(figsize=(12,6))\n",
    "plt.plot(x, f(x))\n",
    "plt.plot([a, b], [0, 0], 'g')\n",
    "plt.grid(True);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "And we could repeat, geting an approximation of any desired accuracy.\n",
    "\n",
    "However this has two weaknesses: it is very inefficient (the function is evaluated about fifty times at each step in order to draw the graph), and it requires lots of human intervention.\n",
    "\n",
    "To get a procedure that can be efficiently implemented in Python (or another programming language of your choice),\n",
    "we extract one key idea here: finding an interval in which the function changes sign, and then repeatedly find a smaller such interval within it.\n",
    "The simplest way to do this is to repeatedly divide an interval known to contain the root in half and check which half has the sign change in it.\n",
    "\n",
    "Graphically, let us start again with interval $[a, b] = [-1, 1]$, but this time focus on three points of interest: the two ends and the midpoint, where the interval will be bisected:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "a = -1\n",
    "b = 1\n",
    "c = (a+b)/2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1200x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "acb = [a, c, b]\n",
    "plt.figure(figsize=(12,6))\n",
    "plt.plot(acb, f(acb), 'b*')\n",
    "# And just as a visual aid:\n",
    "x = np.linspace(a, b)\n",
    "plt.plot(x, f(x), 'b-.')\n",
    "plt.plot([a, b], [0, 0], 'g')\n",
    "plt.grid(True);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "```{prf:remark} On Python\n",
    ":label: numpy-math-functions\n",
    "\n",
    "Note on line 3 above that the function `cos` from Numpy (full name `numpy.cos`) can be evaluated simultaneously on a list of numbers; the version `math.cos` from module `math` can only handle one number at a time.\n",
    "This is one reason why we will avoid `math` in favor of `numpy`.\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$f(a)$ and $f(c)$ have the same sign, while $f(c)$ and $f(b)$ have opposite signs, so the root is in $[c, b]$;\n",
    "update the a, b, c values and plot again:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "a=0.0, b=1, c=0.5\n"
     ]
    }
   ],
   "source": [
    "a = c  # new left end is old center\n",
    "b = b  # redundant, as the right end is unchanged\n",
    "c = (a+b)/2\n",
    "print(f\"{a=}, {b=}, {c=}\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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xnHxxRczaNAgZs2aRZcuXejWrRuLFi0q8/53332Xrl278uqrrzJz5kwOOuggjj76aGbNmpXIMiVJkiRVUsuXl+56fs45YfYboHZt6NIl2tqksiQ0hA8fPpwzzzyTs846i1atWjFixAiaNGnCPffcU+b9I0aM4PLLL2ffffdl55135sYbb2TnnXfm5ZdfTmSZkiRJkiqZoiK4777w3Pe994bw3bw5rFwZdWXShiVsd/RVq1Yxc+ZMrrzyyrXGc3JymDRp0kb9GsXFxaxYsYJtttlmvfcUFBRQUFCw5jo/Px+AwsJCCgsLN6HyilNSX7LXqdRljyrZ2aNKdvaokl1l7dFp02JcdFEaM2eGOcXWrePcfnsRXbqEafBK9uVoAypLj5anvoSF8GXLllFUVET9+vXXGq9fvz5LlizZqF/j1ltv5ZdffqF79+7rvWfo0KEMGTJknfEJEyZQs2bN8hUdkdzc3KhLkDbIHlWys0eV7OxRJbvK0qM//VSNxx7blTfeaApAzZqFnHTSfzjiiIWsWBHn1VcjLlAJk+w9urIcSzASfk54LBZb6zoej68zVpYnnniCwYMH8+KLL1KvXr313jdw4EAGDBiw5jo/P58mTZqQk5ND7dq1N73wClBYWEhubi5du3YlMzMz6nKkddijSnb2qJKdPapkV1l6dPVquO++NAYPTuOnn0KW6NOnmBtugPr1WwItoy1QCVNZerRkRfbGSFgIr1u3Lunp6evMei9dunSd2fH/NW7cOM4880yefvppDj300A3em5WVRVZW1jrjmZmZSf2H9HuVqValJntUyc4eVbKzR5XskrlHJ04MZ35/+GG43msvuPNO6NQpDU9cTh3J3KNAuWpLWNdWq1aNtm3brrNsIDc3l06dOq33c0888QSnnXYaY8eO5cgjj0xUeZIkSZKS3JdfwoEHhgD+pz/BPffA9OmwgTghJb2ELkcfMGAAvXv3Zp999qFjx47cd999LFq0iHPPPRcIS8kXL17Mo48+CoQA3qdPH26//XY6dOiwZha9Ro0aZGdnJ7JUSZIkSUkgHoeSp1ebNg3Hj61eHc77rls32tqkLSGhIbxHjx4sX76cv//973z77be0bt2aV199laZNw0YK33777Vpnht97772sXr2a888/n/PPP3/N+Kmnnsro0aMTWaokSZKkiL31FgwYAE8+CbvsEsbu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433++dC+PfToAdWqRVufJElSMjOES5I22kcfQZs2IWh36wYNGoTxO++Mti5JkqTKwhAuSVqv1atD8N5zz3DdujV06QING4aN2CRJklQ+hnBJ0jpWroSHH4bhw8Nma199BdtsE9574w3IzIy2PkmSpMoqLVG/8I8//kjv3r3Jzs4mOzub3r1789NPP/3h5+bNm8cxxxxDdnY2tWrVokOHDixatChRZUqSfmfZMhg8GHbYAfr3h88/hxo1wmx4CQO4JEnSpktYCO/VqxezZ89m/PjxjB8/ntmzZ9O7d+8NfmbBggXst99+tGzZkrfffps5c+ZwzTXXUL169USVKUkCFiwIoXuHHWDIEFi+HJo3D896L1oE++8fdYWSJElVQ0KWo8+bN4/x48czZcoU2rdvD8D9999Px44dmT9/PrvsskuZnxs0aBBHHHEEw4YNWzO24447JqJESRIweTLccgs8/zzE42GsbVu4/HL4y18gw4eWJEmStqiE/O/V5MmTyc7OXhPAATp06EB2djaTJk0qM4QXFxfzr3/9i8svv5zDDjuMWbNm0bx5cwYOHMhxxx233t+roKCAgoKCNdf5+fkAFBYWUlhYuOW+qAQoqS/Z61TqskerpqIiePnlGLfdlsbkyaULorp1K+bii4s58MA4sVgI5cn+R2+PKtnZo0p29qiSXWXp0fLUF4vHS+Y+tpwbb7yR0aNH8+mnn6413qJFC04//XQGDhy4zmeWLFlCw4YNqVmzJtdffz0HHXQQ48eP56qrruKtt97igAMOKPP3Gjx4MEOGDFlnfOzYsdSsWXPLfEGSVIVMmtSQYcPaAZCRUcQBB3zNsccuYIcdVkRcmSRJUuW0cuVKevXqRV5eHrVr197gveWaCV9f4P296dOnAxCLxdZ5Lx6PlzkOYSYc4Nhjj+WSSy4BYM8992TSpEmMGjVqvSF84MCBDBgwYM11fn4+TZo0IScn5w+/+KgVFhaSm5tL165dyXSnIyUhe7RqWLoUFiyI0bFj+DvXrl1h/Pg43boV069fMQ0bNgIaRVvkJrJHlezsUSU7e1TJrrL0aMmK7I1RrhDev39/evbsucF7mjVrxocffsh33323znvff/899evXL/NzdevWJSMjg1133XWt8VatWvHee++t9/fLysoiKytrnfHMzMyk/kP6vcpUq1KTPVp5TZwYQnf9+vDf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Ro2qoEqVqsrTo8899xxdu3Zlu+22o3bt2nTs2JHXX3+9AqtVKirv99ES77//PhkZGey5556JLVApr7w9WlBQwKBBg2jatClZWVn8+c9/5qGHHqqgapWKytujY8aMoU2bNtSsWZOGDRty+umns3z58gqqVqnm3Xff5eijj6ZRo0bEYjFeeOGFP/xMZc9MhvAEGjduHBdffDGDBg1i1qxZdOnShW7durFo0aIy71+4cCFHHHEEXbp0YdasWVx11VVceOGFPPvssxVcuVJFeXv03XffpWvXrrz66qvMnDmTgw46iKOPPppZs2ZVcOVKFeXt0RJ5eXn06dOHQw45pIIqVaralB7t3r07b7zxBg8++CDz58/niSeeoGXLlhVYtVJJeXv0vffeo0+fPpx55pl8/PHHPP3000yfPp2zzjqrgitXqvjll19o06YNd95550bdXyUyU1wJ065du/i555671ljLli3jV155ZZn3X3755fGWLVuuNXbOOefEO3TokLAaldrK26Nl2XXXXeNDhgzZ0qVJ8Xh803u0R48e8auvvjp+3XXXxdu0aZPACpXqytujr732Wjw7Ozu+fPnyiihPKneP3nzzzfEdd9xxrbGRI0fGGzdunLAapRJA/Pnnn9/gPVUhMzkTniCrVq1i5syZ5OTkrDWek5PDpEmTyvzM5MmT17n/sMMOY8aMGRQWFiasVqWmTenR/1VcXMyKFSvYZpttElGiUtym9ujDDz/MggULuO666xJdolLcpvToSy+9xD777MOwYcPYfvvtadGiBX/729/49ddfK6JkpZhN6dFOnTrx9ddf8+qrrxKPx/nuu+945plnOPLIIyuiZOkPVYXMlBF1AVXVsmXLKCoqon79+muN169fnyVLlpT5mSVLlpR5/+rVq1m2bBkNGzZMWL1KPZvSo//r1ltv5ZdffqF79+6JKFEpblN69LPPPuPKK69k4sSJZGT4nzgl1qb06Oeff857771H9erVef7551m2bBn9+vXjhx9+8LlwbXGb0qOdOnVizJgx9OjRg99++43Vq1dzzDHHcMcdd1REydIfqgqZyZnwBIvFYmtdx+Pxdcb+6P6yxqUtpbw9WuKJJ55g8ODBjBs3jnr16iWqPGmje7SoqIhevXoxZMgQWrRoUVHlSeX6PlpcXEwsFmPMmDG0a9eOI444guHDhzN69Ghnw5Uw5enRTz75hAsvvJBrr72WmTNnMn78eBYuXMi5555bEaVKG6WyZyanCRKkbt26pKenr/O3jEuXLl3nb25KNGjQoMz7MzIy2HbbbRNWq1LTpvRoiXHjxnHmmWfy9NNPc+ihhyayTKWw8vboihUrmDFjBrNmzaJ///5ACDzxeJyMjAwmTJjAwQcfXCG1KzVsyvfRhg0bsv3225Odnb1mrFWrVsTjcb7++mt23nnnhNas1LIpPTp06FA6d+7MZZddBsAee+zBVlttRZcuXbj++usrxSyjqraqkJmcCU+QatWq0bZtW3Jzc9caz83NpVOnTmV+pmPHjuvcP2HCBPbZZx8yMzMTVqtS06b0KIQZ8NNOO42xY8f6fJgSqrw9Wrt2bebOncvs2bPX/Dj33HPZZZddmD17Nu3bt6+o0pUiNuX7aOfOnfnmm2/4+eef14x9+umnpKWl0bhx44TWq9SzKT26cuVK0tLWjgjp6elA6WyjFKUqkZki2hAuJTz55JPxzMzM+IMPPhj/5JNP4hdffHF8q622in/xxRfxeDwev/LKK+O9e/dec//nn38er1mzZvySSy6Jf/LJJ/EHH3wwnpmZGX/mmWei+hJUxZW3R8eOHRvPyMiI33XXXfFvv/12zY+ffvopqi9BVVx5e/R/uTu6Eq28PbpixYp448aN43/961/jH3/8cfydd96J77zzzvGzzjorqi9BVVx5e/Thhx+OZ2RkxO++++74ggUL4u+99158n332ibdr1y6qL0FV3IoVK+KzZs2Kz5o1Kw7Ehw8fHp81a1b8yy+/jMfjVTMzGcIT7K677oo3bdo0Xq1atfjee+8df+edd9a8d+qpp8YPOOCAte5/++2343vttVe8WrVq8WbNmsXvueeeCq5YqaY8PXrAAQfEgXV+nHrqqRVfuFJGeb+P/p4hXBWhvD06b968+KGHHhqvUaNGvHHjxvEBAwbEV65cWcFVK5WUt0dHjhwZ33XXXeM1atSIN2zYMH7yySfHv/766wquWqnirbfe2uD/X1bFzBSLx11XIkmSJElSRfCZcEmSJEmSKoghXJIkSZKkCmIIlyRJkiSpghjCJUmSJEmqIIZwSZIkSZIqiCFckiRJkqQKYgiXJEmSJKmCGMIlSZIkSaoghnBJkiRJkiqIIVySJEmSpApiCJckSZIkqYL8Hz7myvVygzQiAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 1200x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "acb = [a, c, b]\n",
    "x = np.linspace(a, b)\n",
    "plt.figure(figsize=(12,6))\n",
    "plt.plot(acb, f(acb), 'b*', x, f(x), 'b-.')\n",
    "plt.plot([a, b], [0, 0], 'g')\n",
    "plt.grid(True);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Again $f(c)$ and $f(b)$ have opposite signs, so the root is in $[c, b]$, and ..."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "a=0.5, b=1, c=0.75\n"
     ]
    }
   ],
   "source": [
    "a = c  # new left end is old center again\n",
    "# skipping the redundant \"b = b\" this time\n",
    "c = (a+b)/2\n",
    "print(f\"{a=}, {b=}, {c=}\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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JEmSMlRFBYwaBa1bw+mnw9dfw623Vr1fVAS5TktJSqKEfssZPXo0ffv25ZJLLmHKlCnsv//+HHbYYcyePXut97/22msceuihPP/880yePJk//OEPHHnkkUyZMiWRbUqSJCnDRBH861+wxx7wl7/A559D/fowbBj84x9xdycpmyV0Y7abbrqJnj17csoppwAwdOhQXnzxRe644w6GDBmyxv1Dhw5d7frqq6/m6aef5tlnn6VNmzaJbFWSJEkZIIpg3Di49FJ4551Qq1MHLrwQzj7bZ78lxS9hIXzFihVMnjyZ/v37r1YvLS1lwoQJG/RzVFZWsnjxYrbccst13rN8+XKWL1/+83VZWRkA5eXllJeXb0TnybOqv1TvU9nLMapU5xhVqnOMJtcbb+Rw+eW5jB8fFntutlnEWWdV0q9fJVtsEe7xt2J1jlGlunQZo9XpL2EhfMGCBVRUVNCgQYPV6g0aNGDevHkb9HPceOONLFmyhK5du67zniFDhjBo0KA16mPHjqVWrVrVazom48aNi7sFab0co0p1jlGlOsdoYn32WQkPPdSad98Nf+/Mz6+gU6eZHHvsdOrUWcHEiTE3mAYco0p1qT5Gly5dusH3Jvyc8JycnNWuoyhao7Y2Dz/8MAMHDuTpp5+mfv3667xvwIAB9OvX7+frsrIymjZtSmlpKcXFxRvfeBKUl5czbtw4Dj30UPLz8+NuR1qDY1SpzjGqVOcYTY6uXfN4991c8vIiTj65kgEDKmnatBnQLO7WUp5jVKkuXcboqhXZGyJhIbxevXrk5eWtMes9f/78NWbH/9fo0aPp2bMnjz32GIcccsh67y0sLKSwsHCNen5+fkr/Jv1SOvWq7OQYVapzjCrVOUY3rS++CLuaN24crq+6CjbbDAYOzGG77fKAvFj7S0eOUaW6VB+j1ektYbujFxQU0LZt2zWWDYwbN44OHTqs83MPP/wwf/3rX3nooYc44ogjEtWeJEmS0tBtt0GrVnD55VW1nXeGBx+E7baLry9J2lAJXY7er18/evTowV577UX79u25++67mT17Nr169QLCUvKvv/6aBx54AAgB/MQTT2TYsGG0a9fu51n0mjVrUlJSkshWJUmSlAbatoWVK2HevHAGeJ6T3pLSTEJD+PHHH893333H4MGDmTt3LrvssgvPP/8822yzDQBz585d7czwu+66i5UrV9K7d2969+79c/2kk07i/vvvT2SrkiRJSjELF8KNN4agPXBgqLVvD//9L+yyS5ydSdLGS/jGbGeeeSZnnnnmWt/732D9yiuvJLodSZIkpbgff4Rbb4XrrgtBvKgIevWChg3D+wZwSeks4SFckiRJ2hDLlsGdd8KQITB/fqjtvDNceSX8yr6+kpQ2DOGSJEmK1YoVcN99IWx//XWobbttWIL+5z/73LekzGIIlyRJUiwqKmDUqBC2Z8wItaZNw87nJ50EKXwakSRtNEO4JEmSkqqyEp54IoTtTz4JtQYN4OKL4bTTwjPgkpSpDOGSJElKqqefhq5dw+sttoCLLoKzzoLNNou3L0lKBkO4JEmSEu6bb6o2V/vjH2HffaFTJzj3XCgpibc3SUomQ7gkSZIS5uuv4cQTYdo0+OyzsNQ8Lw8mToScnLi7k6Tky427AUmSJGWuunVh+nT49tsQvFcxgEvKVoZwSZIkbTIffwznnAMrV4broqKwA/qnn8If/hBvb5KUClyOLkmSpN/ss89g0KAQuKMI9twzHDMGcMAB8fYmSanEEC5JkqSNNns2XHkl3HdfOPcb4JhjYO+94+1LklKVIVySJEnVNncuXH013H03rFgRaocfDoMHQ9u28fYmSanMEC5JkqQNtmABXHst3HYbLFsWagcdFGbDO3SItzdJSgeGcEmSJP2qhQvhxhth6FD48cdQa98erroqhHBJ0oYxhEuSJGm9VqyAnXeGOXPC9Z57hvDdqZNHjUlSdXlEmSRJktaw6jlvgIIC6N49BPEnnoBJk+CwwwzgkrQxDOGSJElazd13Q4sW8MYbVbVBg+D998PO54ZvSdp4hnBJkiStZtKksPT89turajVrQl5efD1JUqbwmXBJkqQsVlEBjzwCe+wRlpsDXHYZ7L47nHJKrK1JUkZyJlySJCkLVVbC44/DbrvBX/4SgvcqTZtC795QWBhff5KUqZwJlyRJyiJRBP/+dwjd778fanXqwN57h/d83luSEssQLkmSlAWiCMaNC+H77bdDrXZtOPfc8FWnTqztSVLWMIRLkiRluFdfDeF7/PhwXasW9OkD558PdevG25skZRtDuCRJUoaaODGE7//8J1wXFsIZZ0D//tCgQby9SVK2MoRLkiRloMsvhyuvDK/z88NO55dcAltvHW9fkpTt3B1dkiQpQ0RR1euOHcO53n/7G0yfDsOHG8AlKRU4Ey5JkpTmPv00zHw3awbXXhtq++0Hs2YZvCUp1TgTLkmSlOamT4dHHoHbboNFi6rqBnBJSj2GcEmSpDQzezY8/3zV9eGHw4UXwhtvQElJfH1Jkn6dy9ElSZLSxJw5cPXVcM894ZixGTPC+d45OVXL0CVJqc0QLkmSlOLmz4drroE77oBly0Jtv/3g++9DCJckpQ9DuCRJUor67ju4/nq49VZYujTU9tsvHD32hz/E25skaeMYwiVJklLMwoVw001w883w44+htvfeIXyXlobl55Kk9GQIlyRJShGLF8OwYXDjjSGIA+yxBwweDJ07G74lKRMYwiVJklLA5MnQsWNYgg6w884waBB06QK5nmcjSRnDEC5JkpQCdt4Ziopghx1g4EDo2hXy8uLuSpK0qRnCJUmSkmz58nDM2JNPwrhxIWwXFcFLL0HLllDDv6FJUsZycZMkSVKSLV8OV1wBL78Mjz1WVd9hBwO4JGU6v81LkiQlWHk5PPMMHHNM2FytuBiGDIGKivDMtyQpexjCJUmSEqSiAl5+uQnnnVeDzz8PQfzII8N7p50Wb2+SpHgYwiVJkjaxykp49FG44ooaTJ/eFoCttqo681uSlL0M4ZIkSZtIZSU89VR43vujjwByqF17Bf3759GnTx6bbx53h5KkuBnCJUmSfqMogmefhcsvh/ffD7U6daBv3wp22GEcxx1XSn6+541JktwdXZIkaaNFEbzwAuyzDxx1VAjgtWuHMD5jBlx8cSW1aq2Mu01JUgpxJlySJGkjrFwJBx0E48eH6802gz594LzzoG7dUCsvj68/SVJqMoRLkiRthBo1wrnekybBmWfChRdC/fpxdyVJSnUuR5ckSdoA48eHme///reqdtVV8MUXcMMNBnBJ0oYxhEuSJG2AW26Bl18OwXuVhg3DlyRJG8rl6JIkSWvx1lvQqBE0axauBw6EevXg4otjbUuSlOacCZckSfqFyZOhc2do1w4GD66q77wz3HEHNG0aX2+SpPRnCJckSQLeew+OPhr22gueew5ycyEnJxxDJknSpmIIlyRJWe3DD+G446BNG3j66RC+e/SATz6Be+4JQVySpE3FZ8IlSVJWmjoVBg2CRx8Ns905OXDCCXD55bDjjnF3J0nKVIZwSZKUVaZNC896P/xw1VLzP/0JrrgiPPctSVIiGcIlSVLWuPLKsMt5ZWW4PuaYEL532y3WtiRJWcQQLkmSskabNiGAH3VUCON77BF3R5KkbGMIlyRJGWnGDLjqKmjVCi68MNSOOAI++AB23TXe3iRJ2cvd0SVJUkaaMAFGjoRrr4WlS0MtJ8cALkmKlyFckiRlhNmz4ZVXqq5POAFOPTWc+V2rVmxtSZK0GpejS5KktPbVVzBkSDjTe6ut4PPPoagI8vLg7rvj7k6SpNU5Ey5JktLSnDnQpw9suy0MHw7l5eH572+/jbszSZLWzZlwSZKUVubODc9533UXLFsWagccAIMGwe9/H2trkiT9KkO4JElKC/PmwXXXwR13VIXv/fYL4fugg8Kma5IkpTpDuCRJSmnffFMVvn/6KdTatw/h+5BDDN+SpPRiCJckSSnr//4Pjjqq6oixffcN4bu01PAtSUpPhnBJkpRSoqgqYO+9NxQUwC67hPDdsaPhW5KU3gzhkiQpJfzwQ9hw7Z13wgx4Tg6UlMDkydCiheFbkpQZPKJMkiSlhPJyuOUWeOklePXVqnrLlgZwSVLmMIRLkqRYfP89jBhRdV2/Plx/PTz9NBx4YHx9SZKUSC5HlyRJSfXDD3DzzTBsGJSVQatW8Lvfhfd69463N0mSEs0QLkmSkuKHH2Do0PBVVhZqu+8eNmKTJClbGMIlSVJCLVxYFb4XLQq1XXeFgQPh6KMh14fjJElZxBAuSZISYl3h+4oroEsXw7ckKTsZwiVJ0ia1tvC9yy4hfB9zjOFbkpTdDOGSJGmT+e472G67EMTB8C1J0v8yhEuSpN9kxQooKAiv69aFgw6CadNC+D72WMO3JEm/5B+LkiRpo1RUwODB0KQJzJpVVb/3XvjgA/jTnwzgkiT9L/9olCRJGyUvD157Db79NgTvVbbYwvAtSdK6uBxdkiRtkEWL4NZb4bTToH79UBsyBGbMgOOOi7c3SZLShSFckiSt16JFMGwY3Hxz2HCtrAyuuy68t/fe4UuSJG0YF4tJkiQAJk0Km6pNmhSuFy4Mz3w3bx42WVu4EFq3hn33jbFJSZLSnDPhkiQJgAcegJdfDs93P/dcmPledc73TjvB5ZeHZed5efH2KUlSOjOES5KUxWbNggULICcHHn441O6+G6IovN5+e7jqqhC+3WxNkqTfzhAuSVIWa958zdqqAA7w6afQtWvS2pEkKeP5b9qSJGWxBx9c93s1aqz/fUmSVH2GcEmSsswPP8Dy5eF19+4waNDa73vrrfC+JEnadAzhkiRlkVtuCUvQ77uvqnbYYeHHVc98++y3JEmJ4x+zkiRlkdzccM73s89W1Ro1goYNoW1buPPO8GPDhlC/fnx9SpKUqdyYTZKkDPXdd3DTTdCmTdjdHOCUU2DrreGoo6rua9IEZs6EgoKwS/ppp8GKFVBYGEvbkiRltITPhA8fPpwWLVpQVFRE27ZtGT9+/Hrvf/XVV2nbti1FRUW0bNmSO++8M9EtSpKUURYsgAEDwrLzq6+GSy+FiorwXlERdOmy5pLzwsIQwCH8aACXJCkxEhrCR48eTd++fbnkkkuYMmUK+++/P4cddhizZ89e6/0zZszg8MMPZ//992fKlClcfPHF9OnThyeeeCKRbUqSlBG+/Rb69w/h+5pr4Mcfwyz4Ndf4nLckSakiocvRb7rpJnr27Mkpp5wCwNChQ3nxxRe54447GDJkyBr333nnnTRr1oyhQ4cC0Lp1ayZNmsQNN9zAsccem8hWky6KIpasWMKyimUsWbGE/Cg/7pakNZSXlztGldIco8H8b2HYMLj7bvhpaajtvjdcPAAOPzzMbC8tj7fHbOUYVapzjCrVrRqjURTF3comk7AQvmLFCiZPnkz//v1Xq5eWljJhwoS1fmbixImUlpauVuvYsSMjRoygvLyc/Pw1vzEsX76c5avOWQHKysqA8JtVXp66f+NYsmIJW9ywRbj4b7y9SL/KMapU5xiFzYBzqy7fB47/APggpn60OseoUp1jVClu/kHzqZNTJ+421qk62TNhIXzBggVUVFTQoEGD1eoNGjRg3rx5a/3MvHnz1nr/ypUrWbBgAY0aNVrjM0OGDGHQWg44HTt2LLVq1foNv4LEWlaxLO4WJEmSJCktvPTSSxTlFcXdxjotXbp0g+9N+O7oOat2efn/oihao/Zr96+tvsqAAQPo16/fz9dlZWU0bdqU0tJSiouLN7bthIuiiPkHzeell17ioIMOWussvxS38vJyx6hSWraO0csuy+W22/IA2LNtJf0vquSQQyLW88erYpKtY1TpwzGqVLdqjHbu2JmCgoK421mnVSuyN0TCQni9evXIy8tbY9Z7/vz5a8x2r9KwYcO13l+jRg3q1q271s8UFhZSuJYtXPPz81P+G0mdnDoU5RVRZ7M6Kd+rslN5ebljVCktW8bonDmwZAlsv324vuRC+HAKXHQRdOyI4TuFZcsYVfpyjCrVrRqjBQUFKT1Gq9NbwvZKLSgooG3btowbN261+rhx4+jQocNaP9O+ffs17h87dix77bVXSv8fLklSojz8MLRsCWefXVVr2BBefhk6dTKAS5KUbhJ6YEm/fv249957GTlyJFOnTuXcc89l9uzZ9OrVCwhLyU888cSf7+/VqxezZs2iX79+TJ06lZEjRzJixAjOP//8RLYpSVJK+eUGsPvuCytXhpnwJUvi60mSJG0aCX0m/Pjjj+e7775j8ODBzJ07l1122YXnn3+ebbbZBoC5c+eudmZ4ixYteP755zn33HO5/fbbady4MbfcckvGHU8mSdLazJwJQ4aEsP3gg6HWsiV8+CG0auWstyRJmSDhG7OdeeaZnHnmmWt97/7771+jduCBB/Luu+8muCtJklLHF1/A1VfDP/4RZr1zcuDKK6FFi/D+jjvG258kSdp0ErocXZIkrdtnn8HJJ8MOO8CIESGAH3oovPZaVQCXJEmZJeEz4ZIkaXXTp8NVV8GoUVBZGWqdOsHll0P79vH2JkmSEssQLklSkkydGsL3I49Uhe/DDw/he9994+1NkiQlhyFckqQE+/TTELRHj67a+fzII0Ntr73i7U2SJCWXIVySpASbMyfMfgMcfXQI323axNqSJEmKiSFckqRNbMoU+Phj6N49XB94YAjeXbrAHnvE2pokSYqZIVySpE3orbegXTvYbDPo2BHq1Qv1QYPi7UuSJKUGQ7gkSb/RN99Agwbh9T77hOe8W7WC5cvj7UuSJKUeQ7gkSRtp/HgYPBjefRdmzoTatSEnB954AwoK4u5OkiSloty4G5AkKZ1EEbzyCvzhD3DAAfB//wdlZfDaa1X3GMAlSdK6GMIlSdoAURQC94EHhgD+yiuQnw+nnQbTp8MRR8TdoSRJSgcuR5ckaT2iCF58MSw7nzgx1AoK4NRT4cILoVmzePuTJEnpxRAuSdJaRBE891wI3++8E2pFRXD66XDBBbD11vH2J0mS0pMhXJKk//HZZ9C1azjvG6BWLTjjDDj/fGjYMN7eJElSejOES5L0P7beGubMCWd99+4N550H9evH3ZUkScoEhnBJUlZbuRIeeQQefxyeeALy8qBmzfB6xx2hbt24O5QkSZnE3dElSVlt6VI4+2x4+ukQvFfZbz8DuCRJ2vScCZckZZXly+Ff/wrPfOfkQHExXHEFLFsGnTrF3Z0kScp0hnBJUlb46Se491647jr46isoKakK3X37xtqaJEnKIoZwSVJGW7IE7roLrr8e5s0LtcaNwzJ0SZKkZDOES5Iy0uLFMHw43HgjfPttqDVrBv37w8knhzO/JUmSks0QLknKKIsWwa23ws03w/ffh1rLlnDxxdCjBxQUxNufJEnKboZwSVJG+P57GDoUbrklBHGA7beHSy+Fbt2ghn/iSZKkFOBfSSRJaW/xYth2W1i4MFzvtFMI3127hnO/JUmSUoUhXJKUlhYuhM02C69r14Y//hE++CCE7y5dIDc31vYkSZLWyhAuSUorlZXQpw+MHAlvvllVv/32EMpzcuLrTZIk6dc4TyBJSiu5uTBnTjj3+4knqv4Y23xzA7gkSUp9hnBJUkqbOhVOOglmzqyqXXUVvPwyXHJJZWx9SZIkbQyXo0uSUtIHH4Sw/fjjEEVQqxbccUd4b6edwld5ebw9SpIkVZchXJKUUiZNCuH76aerakcdBT17xteTJEnSpmIIlySlhDfeCOF7zJhwnZMDxx0Xdjvfbbd4e5MkSdpUDOGSpNhEUXi2+8or4ZVXQi0vD7p1gwEDoHXrWNuTJEna5AzhkqSkiyJ44YUw8z1xYqjl54cN2Pr3h223jbc/SZKkRDGES5JicemlMGUKFBbCqafCBRdAs2ZxdyVJkpRYhnBJUsJVVIRdzg8/HGrXDs97DxoEr74K550HjRrF3aEkSVJyeE64JCnhjj4aTjgB7ryzqnbkkXDDDQZwSZKUXQzhkqRNbvlyWLGi6vrYY2HLLaGoKL6eJEmSUoEhXJK0ySxdCsOGQcuWMGJEVb17d5g5E84+O7bWJEmSUoIhXJL0m5WVwTXXQPPm0LcvzJkDo0ZVvZ+fH54FlyRJynZuzCZJ2mjffx9mvm+5BRYuDLUWLcIZ3yeeGGtrkiRJKckQLkmqtm++gZtuguHD4ccfQ23HHeHii+HPf4Ya/ukiSZK0Vv41SZK0wb78Eq6/Hu65B5YtC7Xddw9nfnfpAnl58fYnSZKU6gzhkqQNcuGFMHQolJeH6333DeH7iCPCud+SJEn6dYZwSdIGqVUrBPDf/z6E74MOMnxLkiRVl7ujS5LWMGUKHHccjBlTVevTB8aPh5dfhoMPNoBLkiRtDGfCJUlrePBBeOKJsAFbp06htuWW8LvfxduXJElSujOES1KWiyJ46SWoWxf22CPUzjsPvv02PAcuSZKkTcfl6JKUpaIInn0W2reHQw4JZ3uv0rgxPPAA7LJLfP1JkiRlImfCJSnLVFTA44/D1VfDBx+EWlERbL99eM9jxiRJkhLHEC5JWaK8PDzrfc01MH16qG2+OZx5JvTrBw0axNufJElSNjCES1KG++knGDkSrrsOZs8OtS22gHPOgbPPDhuuSZIkKTkM4ZKUoRYvhjvvhBtvDLucQ5jtPu886NULateOtz9JkqRsZAiXpAzVuzf885/hdbNmYafzv/0NataMty9JkqRsZgiXpAzxy9luCMvN33oL+veH7t2hoCC+3iRJkhR4RJkkZYC77oLmzWHgwKpa27YwdSqcfLIBXJIkKVUYwiUpTUVR1esdd4Rly0Lorqysquf6XV6SJCml+NczSUoz778Pxx8PF19cVTvgAHjzTXj5ZYO3JElSKvOvapKUJiZMgM6dYY894NFH4fbb4ccfw3s5ObDvvuFHSZIkpS5DuCSlsCiCcePgD3+A/faD554LM91//jO8/jpsvnncHUqSJKk63B1dklJQZSU88wxcfTW8806o5efDSSeFo8a23z7e/iRJkrRxDOGSlEJWroTRo2HIEPjoo1CrWRNOOw3OOw+aNo23P0mSJP02hnBJShFPPAEXXAAzZoTr4mI46yzo2xe22irW1iRJkrSJGMIlKUX8+GMI4PXqwbnnQu/eUFISd1eSJEnalAzhkhSD77+H226DbbYJz3kDdOsWzvru0QNq1Yq3P0mSJCWGIVySYvDII3DFFSGEd+sWNl3Lz4fTT4+7M0mSJCWSR5RJUhJ88QVMnFh1ffLJcMghcO214cgxSZIkZQdnwiUpgT76CK65Bh5+GHbYAT78MITumjXD+d+SJEnKLs6/SFICvP02HH007LILPPggVFRAs2bhWXBJkiRlL0O4JG0iUQQvvRSWme+7Lzz9NOTkwLHHwqRJMGZM2PlckiRJ2cvl6JL0G1VWwrPPwtVXhxlwgBo14C9/gYsugh13jLc/SZIkpQ5DuCRtpJUrYfRoGDIkPPsNUFQEp5wC558fdj6XJEmSfskQLkkbacgQuPzy8Lq4GHr3hnPOgQYN4u1LkiRJqctnwiVpA5WVwcyZVdc9e0KTJvD3v8OsWWE5ugFckiRJ6+NMuCRtgGefhRNPDBuujRkTao0bh1Celxdra5IkSUojzoRL0jpEUdXrnXcOM+GzZoUfVzGAS5IkqToM4ZL0P6ZOhb/+Fbp1q6q1bAlvvhk2YCsujq01SZIkpTlDuCT9f++8A8ccE2a9//GPsPP5rFlV7++9N+T6XVOSJEm/gX+dlJTVogheegkOPRT22QeeeirUjj4aJk70mDFJkiRtWm7MJikrVVaGzdauvhrefjvU8vKge3e46CLYaad4+5MkSVJmMoRLyirl5fDww3DttfDxx6FWVBSOGzv/fGjePNb2JEmSlOEM4ZKyxr//Db17w+zZ4bq4OFyfc47ne0uSJCk5DOGSskZxcQjg9evDuefCGWdASUncXUmSJCmbGMIlZaS5c+Hmm6FWLRg4MNT23x8efRQ6d4aaNWNtT5IkSVnKEC4pI02ZAtdfD5ttFpabb7EF5OTAn/4Ud2eSJEnKZh5RJikjvPcePPFE1fVhh8Hf/hbO+q5TJ66uJEmSpNU5Ey4pbUURjB8PQ4bAmDFhtrtjR9h88zDrPWJE3B1KkiRJqzOES0o7lZXw3HMhfE+cGGq5udCpEyxeHEK4JEmSlIoM4ZLSRnk5PPIIXHcdfPhhqBUWwsknwwUXQMuW8fYnSZIk/RpDuKSUt3RpWFp+ww1VZ3zXrg1nngl9+0LDhrG2J0mSJG2whG3M9sMPP9CjRw9KSkooKSmhR48eLFy4cJ33l5eXc9FFF7Hrrruy2Wab0bhxY0488UTmzJmTqBYlpbjvv4fBg2GbbaBPnxDAGzQIy9Bnz4ZrrjGAS5IkKb0kLIR369aN9957jzFjxjBmzBjee+89evTosc77ly5dyrvvvstll13Gu+++y5NPPsn06dP54x//mKgWJaW40aPhiitgwYKw1PyOO2DGDOjf3x3PJUmSlJ4Sshx96tSpjBkzhjfffJN9990XgHvuuYf27dszbdo0WrVqtcZnSkpKGDdu3Gq1W2+9lX322YfZs2fTrFmzRLQqKYVMnRoC9/77h+u//hWeeiocNXbccVDDB2gkSZKU5hLyV9qJEydSUlLycwAHaNeuHSUlJUyYMGGtIXxtFi1aRE5ODnXWM+W1fPlyli9f/vN1WVkZEJa3l5eXb9wvIElW9ZfqfSp7JXOMPvVUDieckMcOO8D7768kNzeE7ueeC+9HUdiYTfolv48q1TlGleoco0p16TJGq9NfQkL4vHnzqF+//hr1+vXrM2/evA36OZYtW0b//v3p1q0bxcXF67xvyJAhDBo0aI362LFjqVWr1oY3HaP/XQEgpZpEjNEogrKyAkpKVgBQUVGDzTY7lDp1vuOxx6ZQu3Zqf6NVavH7qFKdY1SpzjGqVJfqY3Tp0qUbfG+1QvjAgQPXGnh/6Z133gEgJydnjfeiKFpr/X+Vl5dzwgknUFlZyfDhw9d774ABA+jXr9/P12VlZTRt2pTS0tL1hvdUUF5ezrhx4zj00EPJz8+Pux1pDYkYoxUV8OSTOVx/fR45OfDmmytZ9W3h4INhiy3qAYdukv8tZT6/jyrVOUaV6hyjSnXpMkZXrcjeENUK4WeddRYnnHDCeu9p3rw5H3zwAd98880a73377bc0aNBgvZ8vLy+na9euzJgxg5deeulXg3RhYSGFhYVr1PPz81P6N+mX0qlXZadNMUaXLYN//AOuvx4+/zzUatWCWbPy2X77cL2WBTTSBvH7qFKdY1SpzjGqVJfqY7Q6vVUrhNerV4969er96n3t27dn0aJFvP322+yzzz4AvPXWWyxatIgOHTqs83OrAvinn37Kyy+/TN26davTnqQUtHBh2NV82DBY9W9zW24Zjhw76yzwP3NJkiRlk4QcUda6dWs6derEqaeeyptvvsmbb77JqaeeSufOnVfblG3HHXfkqaeeAmDlypUcd9xxTJo0iVGjRlFRUcG8efOYN28eK1asSESbkhJozhy48EJo1gwuvjgE8KZNYejQcMb3FVcYwCVJkpR9Enbgz6hRo+jTpw+lpaUA/PGPf+S2225b7Z5p06axaNEiAL766iueeeYZAPbYY4/V7nv55Zf5/e9/n6hWJW1C06aFJef//Ces+veznXeGiy6CE06AFF5FJEmSJCVcwkL4lltuyYMPPrjee6Io+vl18+bNV7uWlH7uuQdOPz3sfA7wu9+F8H344ZCbkHU3kiRJUnpJWAiXlPmiCBYvhlX7Jx58MOTlwWGHhfC9337x9idJkiSlGkO4pI0ycSKceSa0aAFPPhlqLVvCrFnQuHG8vUmSJEmpyhAuaaOUlMB774Xjxr7/Pux4DgZwSZIkaX18SlPSr/r+e7jqKjj33KraTjvBQw/BzJlVAVySJEnS+jkTLmmdvvwSRo7cme7da7BkSXjeu29f2Gab8P6f/xxre5IkSVLacSZc0ho+/BBOOglatarBM89sx5IlOey2G/zjHy43lyRJkn4LZ8IlAWGn89dfh2uvheeeW1XNYdddv+Xqq7fgiCNqkJMTZ4eSJElS+jOES1mushKeeQauuy7seA6QkwPHHAP9+q3k228n0LHj4QZwSZIkaRNwObqUxV54IWyw1qVLCOCFhXDaaTBtGjz+OOy9dxR3i5IkSVJGcSZcynLTpoXjxs48E/r0gYYN4+5IkiRJylyGcClLzJsHQ4dC3bpwwQWh1qkT3HMPdO0KxcWxtidJkiRlBUO4lCVWbbq2xRZwxhmw+ebh2e9TTom7M0mSJCl7+Ey4lKEmToSnnqq67tIlnOt9//1Qq1ZsbUmSJElZzZlwKYNUVobjxa67Lsx8N2wIhx8eNlzLy4OHHoq7Q0mSJCm7GcKlDLB8eQjY118PU6eGWn5+COA//hhCuCRJkqT4GcKlNLZoEdx9d9hwbc6cUCsuhl694JxzoHHjWNuTJEmS9D8M4VIamjMHhg2DO++EsrJQa9wY+vYN53yXlMTaniRJkqR1MIRLaeSTT8KS83/+E8rLQ61163DkWLduLjuXJEmSUp0hXEojzz0HI0eG1/vvDxdeGJ77zvWcA0mSJCktGMKlFFVZCc88A7Vrw8EHh9qpp8LkyXD22dC+fbz9SZIkSao+Q7iUom69NTzjveeeMGkS5OSETdc8ZkySJElKXy5ilVLEDz/AtGlV13/5S9hsrbQUVqyIry9JkiRJm44z4VLMZs0KR4zdcw+0aQPjx4d63brhvRr+VypJkiRlDP96L8XkvffCTuejR0NFRaiVlcHChVCnTrg2gEuSJEmZxeXoUhJFEYwbF5aYt2kTnu+uqIBDDoEXXwzBfFUAlyRJkpR5nGeTkqC8HB57LMx8v/deqOXlQdeucP75YfM1SZIkSZnPEC4l0I8/wogRcNNNMHt2qNWqBaecAueeC82bx9qeJEmSpCQzhEsJdOGFcMcd4XX9+uF87zPOCJuuSZIkSco+hnBpE5o6FQoLoWXLcH3WWfCf/0C/fnDiiVCzZrz9SZIkSYqXG7NJm8gNN8BOO8HAgVW1nXaCTz6B0083gEuSJEkyhEsbraIiHCm2yu9/Dzk5sGwZVFZW1XNykt6aJEmSpBRlCJeqaelSuP122GGH8Mz3KnvtBTNnwqOPQq7/ZUmSJElaC58JlzbQ/Plw220wfDh8912o/fvfsGIFFBSE62bN4utPkiRJUupzvk76FdOnQ69esM02cOWVIYC3bBkC+bRpVQFckiRJkn6NM+HSOkyYANdfD08/DVEUanvvDRdcAMccA3l58fYnSZIkKf0YwqVfqKiAZ54JO51PmFBV79w5hO/993ejNUmSJEkbzxAu/UL37jB6dHhdUAA9eoQzvnfaKd6+JEmSJGUGnwlXVps/f/Vjxo47DrbYAi65BGbNgnvvNYBLkiRJ2nQM4cpa11wTdjMfPryq1qULzJ4NV10FDRvG15skSZKkzGQIV9aIovDM9yqNG8Py5fDmm1W1vDzYfPPk9yZJkiQpOxjClfFWroTHHoN27Vaf9T7hBBg/Hp56Kr7eJEmSJGUXN2ZTxvrxR7jvPrj5ZpgxI9QWL4azzgo7nBcUwO9+F2+PkiRJkrKLIVwZZ948uPVWuOMO+OGHUKtbN4TvM8/0iDFJkiRJ8TGEK2N89BHceCOMGgUrVoTadtvBeefBiSdCrVrx9idJkiRJhnCltSiC//wnhO8xY6rq7dvDBRfAH/8YNluTJEmSpFRgCFda69QJxo4Nr3NzwxFj550XQrgkSZIkpRp3R1daWbgQKiurrjt0CMvMzzoLpk+Hxx83gEuSJElKXYZwpY0rroCmTeG556pqffvCl1+Gjdi23Ta21iRJkiRpgxjClTaWLQvHjv3rX1W1khLYcsvYWpIkSZKkajGEK+VUVsLTT8MBB4RN11Y555yw+dq998bXmyRJkiT9Fm7MppSxdCk88ADcfHN4vhtg6FA4+ODwunHj8CVJkiRJ6coQrth98w3cfjsMHw7ffRdqdepAr15hwzVJkiRJyhSGcMXmo4/gppvgwQdhxYpQa948bLbWsydsvnmc3UmSJEnSpmcIV1JFEfzf/8GNN8KLL1bV27UL53sffTTUcFRKkiRJylDGHSXNihXhDO933w3XubnQpQv06xfO+5YkSZKkTGcIV0ItWQKbbRZeFxTAdtvBtGnwt7+FZectW8baniRJkiQllUeUKSEqK+Hss6Fhw6qdzgFuuAG+/BJuucUALkmSJCn7GMKVELm5MGMG/PgjjB5dVW/aFLbYIr6+JEmSJClOhnD9ZitXhqDdoQPMmlVVv/JK+M9/4NJL4+tNkiRJklKJz4Rroy1aBPfeG5aWz54darfeGpacA7RpE19vkiRJkpSKDOGqthkzQvC+996w3Bxgq63gzDPDlyRJkiRp7Qzh2mATJ8JNN8GTT4aN1wB22ikcMda9OxQVxdufJEmSJKU6Q7jWa+VK+Ne/4MYb4c03q+qlpSF8l5ZCTk5s7UmSJElSWjGEa52++gr23x9mzgzXBQXwl7+E87133TXOziRJkiQpPRnCtZolS2CzzcLrrbcOr+vVq3reu0GDePuTJEmSpHRmCBcAP/wAZ5wBL70EX3wBm28elpk/8QQ0awY1a8bdoSRJkiSlP88JFwDFxTB5Mnz7LYwdW1Vv1coALkmSJEmbiiE8C5WVwdCh0L49LF8eanl5cOed8N57cMwxcXYnSZIkSZnL5ehZZObMqvO9Fy8OtUcegZNOCq8PPji21iRJkiQpKxjCs8Dazvdu3Trsct61a6ytSZIkSVJWMYRnqJUrw6ZqN98Mb71VVT/00KrzvXN9GEGSJEmSksoQnmEWLgzLzW+9FWbPDrXCQuje3fO9JUmSJCluhvAM8sor0LlzOOsbYKutoHfvcPRY/fqxtiZJkiRJwhCe1qIIvv8e6tYN13vuGZaY77wznHtumP0uKoq3R0mSJElSFUN4mvrww7CreRSF871zcqrO+t5uu3AtSZIkSUothvA0EkVV4bpRI5g6NdQ+/zwEb4Dtt4+vP0mSJEnS+rk/dhr4+GM4/fSwo/kqdeuG3c+//LIqgEuSJEmSUpsz4SkqimDs2HDE2IsvVtXffx923z28PuyweHqTJEmSJG0cZ8JjNHlyDpdd1oHJk6se4P7pJ7j77rC5WqdOIYDn5ECXLvDaa7DbbjE2LEmSJEn6TZwJj9GDD+bw3/9uxahRFTRrBrffDnfdBd99F96vXRt69oSzz4aWLePtVZIkSZL02xnCk2zWLFiwIMxuP/poWIhwzz253HknrFwZ7mneHPr0CQG8uDi+XiVJkiRJm5YhPMmaN1+ztnz56ueJffYZ5OUlpx9JkiRJUvL4THiSPfgg1Pj5nz5WD981aoT3DeCSJEmSlJmcCU+y7t2hdWto23bN9956C/bcM/k9SZIkSZKSw5nwGOXmRqv9KEmSJEnKbM6Ex6B+fWjYELbeOmKffd7n7bd34+uvc6hfP+7OJEmSJEmJZAiPQZMmMHMm5ORU8MILsxg6dGeiKJfCwrg7kyRJkiQlksvRY1JYGI4pg/CjAVySJEmSMp8hXJIkSZKkJDGES5IkSZKUJAkL4T/88AM9evSgpKSEkpISevTowcKFCzf486effjo5OTkMHTo0US1KkiRJkpRUCQvh3bp147333mPMmDGMGTOG9957jx49emzQZ//1r3/x1ltv0bhx40S1J0mSJElS0iVkd/SpU6cyZswY3nzzTfbdd18A7rnnHtq3b8+0adNo1arVOj/79ddfc9ZZZ/Hiiy9yxBFHJKI9SZIkSZJikZAQPnHiREpKSn4O4ADt2rWjpKSECRMmrDOEV1ZW0qNHDy644AJ23nnnDfrfWr58OcuXL//5uqysDIDy8nLKy8t/w68i8Vb1l+p9Kns5RpXqHKNKdY5RpTrHqFJduozR6vSXkBA+b9486tevv0a9fv36zJs3b52fu/baa6lRowZ9+vTZ4P+tIUOGMGjQoDXqY8eOpVatWhv888Rp3LhxcbcgrZdjVKnOMapU5xhVqnOMKtWl+hhdunTpBt9brRA+cODAtQbeX3rnnXcAyFl1CPYvRFG01jrA5MmTGTZsGO++++4671mbAQMG0K9fv5+vy8rKaNq0KaWlpRQXF2/wzxOH8vJyxo0bx6GHHkp+fn7c7UhrcIwq1TlGleoco0p1jlGlunQZo6tWZG+IaoXws846ixNOOGG99zRv3pwPPviAb775Zo33vv32Wxo0aLDWz40fP5758+fTrFmzn2sVFRWcd955DB06lJkzZ671c4WFhRQWFq5Rz8/PT+nfpF9Kp16VnRyjSnWOUaU6x6hSnWNUqS7Vx2h1eqtWCK9Xrx716tX71fvat2/PokWLePvtt9lnn30AeOutt1i0aBEdOnRY62d69OjBIYccslqtY8eO9OjRg5NPPrk6bUqSJEmSlJIS8kx469at6dSpE6eeeip33XUXAKeddhqdO3debVO2HXfckSFDhtClSxfq1q1L3bp1V/t58vPzadiw4Xp3U5ckSZIkKV0k7JzwUaNGseuuu1JaWkppaSm77bYb//znP1e7Z9q0aSxatChRLUiSJEmSlFISMhMOsOWWW/Lggw+u954oitb7/rqeA5ckSZIkKR0lbCZckiRJkiStLmEz4XFZNbtenS3i41JeXs7SpUspKytL6Z3+lL0co0p1jlGlOseoUp1jVKkuXcboqvz5a6u9IQND+OLFiwFo2rRpzJ1IkiRJkrLJ4sWLKSkpWe89OdGGRPU0UllZyZw5c6hduzY5OTlxt7NeZWVlNG3alC+//JLi4uK425HW4BhVqnOMKtU5RpXqHKNKdekyRqMoYvHixTRu3Jjc3PU/9Z1xM+G5ubk0adIk7jaqpbi4OKUHlOQYVapzjCrVOUaV6hyjSnXpMEZ/bQZ8FTdmkyRJkiQpSQzhkiRJkiQliSE8RoWFhVxxxRUUFhbG3Yq0Vo5RpTrHqFKdY1SpzjGqVJeJYzTjNmaTJEmSJClVORMuSZIkSVKSGMIlSZIkSUoSQ7gkSZIkSUliCJckSZIkKUkM4ZIkSZIkJYkhPMGGDx9OixYtKCoqom3btowfP36d977yyivk5OSs8fXJJ58ksWNlm+qMUYDly5dzySWXsM0221BYWMi2227LyJEjk9StslF1xuhf//rXtX4f3XnnnZPYsbJNdb+Pjho1it13351atWrRqFEjTj75ZL777rskdatsVN0xevvtt9O6dWtq1qxJq1ateOCBB5LUqbLRa6+9xpFHHknjxo3JycnhX//6169+5tVXX6Vt27YUFRXRsmVL7rzzzsQ3ugkZwhNo9OjR9O3bl0suuYQpU6aw//77c9hhhzF79uz1fm7atGnMnTv356/tt98+SR0r22zMGO3atSv/+c9/GDFiBNOmTePhhx9mxx13TGLXyibVHaPDhg1b7fvnl19+yZZbbsmf/vSnJHeubFHdMfr6669z4okn0rNnTz766CMee+wx3nnnHU455ZQkd65sUd0xescddzBgwAAGDhzIRx99xKBBg+jduzfPPvtskjtXtliyZAm77747t9122wbdP2PGDA4//HD2339/pkyZwsUXX0yfPn144oknEtzpJhQpYfbZZ5+oV69eq9V23HHHqH///mu9/+WXX46A6IcffkhCd1L1x+gLL7wQlZSURN99910y2pOqPUb/11NPPRXl5OREM2fOTER7UrXH6PXXXx+1bNlytdott9wSNWnSJGE9KrtVd4y2b98+Ov/881ernXPOOdF+++2XsB6lVYDoqaeeWu89F154YbTjjjuuVjv99NOjdu3aJbCzTcuZ8ARZsWIFkydPprS0dLV6aWkpEyZMWO9n27RpQ6NGjTj44IN5+eWXE9mmstjGjNFnnnmGvfbai+uuu46tt96aHXbYgfPPP5+ffvopGS0ry/yW76OrjBgxgkMOOYRtttkmES0qy23MGO3QoQNfffUVzz//PFEU8c033/D4449zxBFHJKNlZZmNGaPLly+nqKhotVrNmjV5++23KS8vT1iv0oaaOHHiGmO6Y8eOTJo0KW3GqCE8QRYsWEBFRQUNGjRYrd6gQQPmzZu31s80atSIu+++myeeeIInn3ySVq1acfDBB/Paa68lo2VlmY0Zo1988QWvv/46H374IU899RRDhw7l8ccfp3fv3sloWVlmY8boL82dO5cXXnjBZb5KmI0Zox06dGDUqFEcf/zxFBQU0LBhQ+rUqcOtt96ajJaVZTZmjHbs2JF7772XyZMnE0URkyZNYuTIkZSXl7NgwYJktC2t17x589Y6pleuXJk2Y7RG3A1kupycnNWuoyhao7ZKq1ataNWq1c/X7du358svv+SGG27ggAMOSGifyl7VGaOVlZXk5OQwatQoSkpKALjppps47rjjuP3226lZs2bC+1X2qc4Y/aX777+fOnXqcPTRRyeoMymozhj9+OOP6dOnD5dffjkdO3Zk7ty5XHDBBfTq1YsRI0Yko11loeqM0csuu4x58+bRrl07oiiiQYMG/PWvf+W6664jLy8vGe1Kv2ptY3pt9VTlTHiC1KtXj7y8vDX+lXH+/Plr/MvN+rRr145PP/10U7cnbdQYbdSoEVtvvfXPARygdevWRFHEV199ldB+lX1+y/fRKIoYOXIkPXr0oKCgIJFtKottzBgdMmQI++23HxdccAG77bYbHTt2ZPjw4YwcOZK5c+cmo21lkY0ZozVr1mTkyJEsXbqUmTNnMnv2bJo3b07t2rWpV69eMtqW1qthw4ZrHdM1atSgbt26MXVVPYbwBCkoKKBt27aMGzdutfq4cePo0KHDBv88U6ZMoVGjRpu6PWmjxuh+++3HnDlz+PHHH3+uTZ8+ndzcXJo0aZLQfpV9fsv30VdffZXPPvuMnj17JrJFZbmNGaNLly4lN3f1v36tml1cNZMjbSq/5ftofn4+TZo0IS8vj0ceeYTOnTuvMXalOLRv336NMT127Fj22msv8vPzY+qqmuLZDy47PPLII1F+fn40YsSI6OOPP4769u0bbbbZZj/v0tu/f/+oR48eP99/8803R0899VQ0ffr06MMPP4z69+8fAdETTzwR1y9BGa66Y3Tx4sVRkyZNouOOOy766KOPoldffTXafvvto1NOOSWuX4IyXHXH6Cp/+ctfon333TfZ7SoLVXeM3nfffVGNGjWi4cOHR59//nn0+uuvR3vttVe0zz77xPVLUIar7hidNm1a9M9//jOaPn169NZbb0XHH398tOWWW0YzZsyI6VegTLd48eJoypQp0ZQpUyIguummm6IpU6ZEs2bNiqJozTH6xRdfRLVq1YrOPffc6OOPP45GjBgR5efnR48//nhcv4RqM4Qn2O233x5ts802UUFBQbTnnntGr7766s/vnXTSSdGBBx748/W1114bbbvttlFRUVG0xRZbRL/73e+i5557LoaulU2qM0ajKIqmTp0aHXLIIVHNmjWjJk2aRP369YuWLl2a5K6VTao7RhcuXBjVrFkzuvvuu5PcqbJVdcfoLbfcEu20005RzZo1o0aNGkXdu3ePvvrqqyR3rWxSnTH68ccfR3vssUdUs2bNqLi4ODrqqKOiTz75JIaulS1WHdP8v18nnXRSFEVr/z76yiuvRG3atIkKCgqi5s2bR3fccUfyG/8NcqLItU+SJEmSJCWDD3ZIkiRJkpQkhnBJkiRJkpLEEC5JkiRJUpIYwiVJkiRJShJDuCRJkiRJSWIIlyRJkiQpSQzhkiRJkiQliSFckiRJkqQkMYRLkiRJkpQkhnBJkiRJkpLEEC5JkiRJUpL8PyJ3Cwjyvh5iAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 1200x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "acb = [a, c, b]\n",
    "x = np.linspace(a, b)\n",
    "plt.figure(figsize=(12,6))\n",
    "plt.plot(acb, f(acb), 'b*', x, f(x), 'b-.')\n",
    "plt.plot([a, b], [0, 0], 'g')\n",
    "plt.grid(True);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This time $f(a)$ and $f(c)$ have opposite sign, so the root is at left, in $[a, c]$:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "a=0.5, b=0.75, c=0.625\n"
     ]
    }
   ],
   "source": [
    "# this time, the value of a does not need to be updated ...\n",
    "b = c  # ... and the new right end is the former center\n",
    "c = (a+b)/2\n",
    "print(f\"{a=}, {b=}, {c=}\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+oAAAH5CAYAAAAWQ8TOAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABd4klEQVR4nO3deXhU5fn/8fcQQhCUCEQ2BUFBQEULKBCoSisGUEq1VaRoKq3GWhdU3FhElqoo7oKK4i602lb51a9VBDdaZBVERRE3UBGCoJCASAhkfn+ckhADSCSTc5K8X9eViznPnBnuKXcHP5znPE8sHo/HkSRJkiRJkVAt7AIkSZIkSVIRg7okSZIkSRFiUJckSZIkKUIM6pIkSZIkRYhBXZIkSZKkCDGoS5IkSZIUIQZ1SZIkSZIipHrYBYShoKCAVatWccABBxCLxcIuR5IkSZJUycXjcTZu3EiTJk2oVm3P18yrZFBftWoVTZs2DbsMSZIkSVIV8+WXX3LIIYfs8ZwqGdQPOOAAIPgfqE6dOiFXs2f5+flMnz6djIwMkpOTwy5HKsEeVdTZo4o6e1RRZ48q6ipKj+bm5tK0adPCPLonVTKo75juXqdOnQoR1GvVqkWdOnUi3XSquuxRRZ09qqizRxV19qiirqL16N7cfu1icpIkSZIkRYhBXZIkSZKkCDGoS5IkSZIUIQZ1SZIkSZIixKAuSZIkSVKEGNQlSZIkSYoQg7okSZIkSRFiUJckSZIkKUIM6pIkSZIkRYhBXZIkSZKkCDGoS5IkSZIUIQZ1SZIkSZIixKAuSZIkSVKEGNQlSZIkSYoQg7okSZIkqcJauDDGiBFdWbgwFnYpZcagLkmSJEmqsCZPjvHeewcxZUrlCerVwy5AkiRJkqTS+PxzWLcOYjH4+9+D68/PPFONP/wB4nFIS4NDDw25yH1gUJckSZIkVSjNmxc9jv3vQvq6ddCxY9F4PF6uJZUpp75LkiRJkiqUJ56A6v+77ByPx4r9Wr06TJ4cVmVlwyvqkiRJkqQKYeNGuOsuePRReOUV6N695Dnz5kGHDuVeWpkyqEuSJEmSIm3LFnjgAbj55mCKO8D//V/wa7VqcQoKYoW/VgYGdUmSJElSJG3bFkxzHz0avvwyGDviCPjLX6BLF5gyBQ4+OE6nTu8wf/4xfPVVjAYNwq25LBjUJUmSJEmRUlAAzz4LI0bAsmXB2CGHwMiRMHBg0f3pK1ZALLadl176nLvvPop4vBopKWFVXXYM6pIkSZKkSIjHYfp0GDYMFi0KxurXD44vvhhq1ix+fkoK5OcHj2MxqFGjfOtNFIO6JEmSJCl0c+bA0KEwc2ZwvP/+cNVVMHgw1KkTbm3lzaAuSZIkSQpVfj6cdRZ89VVwlfzii4PQftBBYVcWDoO6JEmSJKncLV8OzZpBUhIkJ8OYMcFV9RtugKZNw64uXNXCLkCSJEmSVLUMHRqs3v7XvxaN/fGPMGmSIR0M6pIkSZKkcnbggcHWa7NmhV1JNDn1XZIkSZKUMBs3wt13w/HHQ69ewdhll0HXrnDCCaGWFlkGdUmSJElSmduyBSZOhJtvhrVr4ZhjICMDqlWDWrUM6XtiUJckSZIklZlt2+DJJ2HUKPjyy2CsZcvgvnTtHYO6JEmSJGmfFRTAs8/CiBGwbFkwdvDBMHIkDBwYrOyuvWNQlyRJkiT9ZPE4vPwyDB8OixYFY/Xrw7BhwX7oNWuGW19FlPBV3++//35atGhBzZo16dixI//973/3eP7MmTPp2LEjNWvW5LDDDmPixIklznn22Wc58sgjSUlJ4cgjj2Tq1KmJKl+SJEmStBuzZ0P37tC7dxDS998/uIL+2WcweLAh/adKaFB/5plnuOKKKxg+fDhvv/02J5xwAr179+aLL77Y5fnLly/n1FNP5YQTTuDtt99m2LBhDBo0iGeffbbwnDlz5nD22WeTmZnJO++8Q2ZmJv369WPevHmJ/CiSJEmSpJ3cey906wb/+Q+kpATBfPny4N70OnXCrq5iS+jU9zvvvJPzzz+fCy64AIC7776bl19+mQceeICxY8eWOH/ixIk0a9aMu+++G4C2bdvy1ltvcfvtt/Pb3/628D1OOeUUhv5vJYKhQ4cyc+ZM7r77bv72t78l8uOUu3g8zndbv2PL9i18t/U7kuPe1KHoyc/Pt0cVafaoos4eVdTZo9pZQUGwajtAxmlQayT06wdDhwT3owN8t7V8a9rRo/F4vHx/4wRKWFDfunUrCxcuZMiQIcXGMzIymD179i5fM2fOHDIyMoqN9ezZk0ceeYT8/HySk5OZM2cOV155ZYlzdoT7XcnLyyMvL6/wODc3Fwj+QPPz80vzscrVd1u/o+7tdYOD98KtRfpR9qiizh5V1Nmjijp7VLtyBTwOPP5kyHUAX//yaw6MHRh2GbtVmuyZsKC+bt06tm/fTsOGDYuNN2zYkOzs7F2+Jjs7e5fnb9u2jXXr1tG4cePdnrO79wQYO3Yso0ePLjE+ffp0atWqtbcfqdxt2b4l7BIkSZIkqUJ47bXXqJkU3ZviN2/evNfnJnzV91gsVuw4Ho+XGPux8384Xtr3HDp0KIMHDy48zs3NpWnTpmRkZFAnwjdPxONxvv7l17z22mv88pe/JNn9DBRB+fn59qgizR5V1Nmjijp7tGrKyYVZs2KcdmrRdPJ7761Gp85xunSO1hTzHT3ap2cfatSoEXY5u7VjZvfeSFhQT0tLIykpqcSV7q+//rrEFfEdGjVqtMvzq1evTv369fd4zu7eEyAlJYWUlJQS48nJyZH/sjkwdiA1k2pyYO0DI1+rqqb8/Hx7VJFmjyrq7FFFnT1atWzeDPfdB7fcAjk58MEHcMQRwXM3DA23tt3Z0aM1atSIdI+WpraErfpeo0YNOnbsyIwZM4qNz5gxg65du+7yNenp6SXOnz59Oscdd1zhh9rdObt7T0mSJEnSnm3dCg88AC1bwrXXwrffBgH9m2/CrqxqSujU98GDB5OZmclxxx1Heno6Dz30EF988QUXXXQREExJ/+qrr3jyyWDlgYsuuogJEyYwePBgsrKymDNnDo888kix1dwvv/xyTjzxRG699VZ+/etf869//YtXXnmFWbNmJfKjSJIkSVKls307/O1vRXufAxx6KIweDeeeC0lJ4dZXVSU0qJ999tl88803jBkzhtWrV3P00Ufz4osvcuihhwKwevXqYnuqt2jRghdffJErr7yS++67jyZNmnDvvfcWbs0G0LVrV55++mmuv/56RowYweGHH84zzzxD586dE/lRJEmSJKnSiMfh+efh+uthyZJgrGFDGDECLrgg2Bdd4Un4YnIXX3wxF1988S6fe/zxx0uMnXTSSSxatGiP73nmmWdy5plnlkV5kiRJklSlvPoqDBsG8+cHxwceCNddB5ddBrVrh1qa/ifhQV2SJEmSFL4NG+C3v4XXXguOa9WCK66Aq6+GunXDrEw/ZFCXJEmSpCogNRW++w5q1IA//QmGDw+muyt6ErbquyRJkiQpPJ98AllZwTZrALEYTJoEH30E995rSI8yr6hLkiRJUiUTjwfT3N99Fxo3hjFjgvF27cKtS3vHK+qSJEmSVAmsWwdbtgSPYzG44QY49VQ444xw61LpGdQlSZIkqQLLyQn2QW/RAiZOLBr/zW/g3/+G9u3Dq00/jUFdkiRJkiqgzZvhttvgsMOCqe2bNsHLLxc9H4uFV5v2jUFdkiRJkiqQrVvhgQegZUu49lr49lto0wb++U948cWwq1NZcDE5SZIkSaoAtm+Hv/41mOa+fHkwduihMHo0nHsuJCWFW5/KjkFdkiRJkiIsHoepU2HECPjgg2CsUSO4/nq44AJISQm3PpU9g7okSZIkRdRrr8F118FbbwXHdesG090vuwxq1w63NiWOQV2SJEmSImrevCCk164NgwcHPwceGHZVSjSDuiRJkiRFxNtvB4vFde4cHA8aFKzmfvnl0KBBuLWp/LjquyRJkiRFwFNPQYcOcNFFUFAQjNWuDTfdZEivagzqkiRJkhSSHYEc4NRTg2ntRx4ZXEVX1eXUd0mSJEkqZ9nZwZXyZcvg5ZchFoP69eHTT6FevbCrU9gM6pIkSZJUTr79FsaNg3vvhe+/D8bmzy+6J92QLnDquyRJkiQl3MaN8Je/QIsWcOutQUjv0gVefbUopEs7eEVdkiRJkhLk++/hgQdg7FhYty4YO+aYYNr7aacFU96lHzKoS5IkSVIZy8+HRx8NrqJ/9VUw1qoVjB4NZ58N1ZzbrD0wqEuSJElSGdm+Hf72Nxg5Ej77LBhr2jQ4Pu88qG4C016wTSRJkiSpjHz8Mfz+9xCPB3ufDx8Of/oTpKSEXZkqEoO6JEmSJP1E8TgsXRrsfQ7Qpg1ccgk0aQKDBkHt2uHWp4rJoC5JkiRJP8HmzdC7N7z5ZhDWW7UKxsePD7cuVXwuYSBJkiRJP0GtWrD//sF95wsWhF2NKhODuiRJkiTthaVLYcAAWL26aOzee+GTT4Jxqaw49V2SJEmS9mD58mBbtaeegoICqFcPJkwInjv88HBrU+VkUJckSZKkXVi1Cm68ER5+ONgXHeCMM+Cii8KtS5WfQV2SJEmSdrJuHdxyC9x3H2zZEoxlZMBf/gKdOoVbm6oGg7okSZIkATk5cMcdcNddsGlTMNatG9x0E5x0Uri1qWoxqEuSJEmq0r77LthSbdw4WL8+GOvQIZj23qsXxGLh1qeqx6AuSZIkqUrr0wfeeCN4fOSRMGYM/OY3BnSFx6AuSZIkqUrJz4d4HGrUCI4vvhi++AJGjQq2WUtKCrU8yX3UJUmSJFUdzz8fXDV/4IGisd/+Fj78EDIzDemKBoO6JEmSpCpjzRr45BOYNCm4qg5QrRokJ4dbl7Qzp75LkiRJqpTicZgxA7Zvh969g7GBA2HzZjj/fO9BV3R5RV2SJElSpTNrFnTvDj17wiWXwNatwXhyMlx+Oey/f6jlSXtkUJckSZJUabz1VrCl2gknwH/+Aykp8OtfQ15e2JVJe8+p75IkSZIqvCVL4IYbYOrU4Lh6dfjjH2HECDjkkHBrk0rLoC5JkiSpwvrkExg5Ev72t+Ce9FgMzj03GDv88LCrk34ag7okSZKkCueLL+Avf4HHHgsWi4Ngm7UxY4Lt16SKzKAuSZIkqUJ5/nk466yiBeJOPTUI7R06hFuXVFYStpjc+vXryczMJDU1ldTUVDIzM9mwYcMeXxOPxxk1ahRNmjRhv/32o3v37rz//vvFzunevTuxWKzYT//+/RP1MSRJkiRFTNeuwSJx3bsHq7v/+9+GdFUuCQvqAwYMYPHixUybNo1p06axePFiMjMz9/iacePGceeddzJhwgQWLFhAo0aNOOWUU9i4cWOx87Kysli9enXhz4MPPpiojyFJkiQpRBs3BtPZTz89uAcdIC0N3n0XXnsNunULtTwpIRIy9X3p0qVMmzaNuXPn0rlzZwAmTZpEeno6y5Yto3Xr1iVeE4/Hufvuuxk+fDi/+c1vAHjiiSdo2LAhf/3rX/nTn/5UeG6tWrVo1KhRIkqXJEmSFCHr18NNNwXT3GfNCrZdA2jePNSypIRKSFCfM2cOqamphSEdoEuXLqSmpjJ79uxdBvXly5eTnZ1NRkZG4VhKSgonnXQSs2fPLhbUp0yZwuTJk2nYsCG9e/dm5MiRHHDAAbutJy8vj7ydNk7Mzc0FID8/n/z8/H36rIm2o76o16mqyx5V1Nmjijp7VFFX3j2alwevvhrj1FODy+eNG8Po0dVo1ixOp05x/L+KfqiifI+Wpr6EBPXs7GwaNGhQYrxBgwZkZ2fv9jUADRs2LDbesGFDPv/888Ljc845hxYtWtCoUSOWLFnC0KFDeeedd5gxY8Zu6xk7diyjR48uMT59+nRq1aq1V58pbHv6fFIU2KOKOntUUWePKuoS3aPbt8d47bWm/P3vrVm7tha33/4GLVvmANC2bXDOtGkJLUEVXNS/Rzdv3rzX55YqqI8aNWqXgXdnCxYsACAWi5V4Lh6P73J8Zz98/oevycrKKnx89NFH06pVK4477jgWLVpEh92sIDF06FAGDx5ceJybm0vTpk3JyMigTp06e6wnbPn5+cyYMYNTTjmF5OTksMuRSrBHFXX2qKLOHlXUJbpHt2+Hv/89xl/+ksQnnwT/3d+kSZyWLX9eeFVd2pOK8j26Y2b33ihVUL/00kt/dIX15s2b8+6777JmzZoSz61du7bEFfMddtxznp2dTePGjQvHv/76692+BqBDhw4kJyfz8ccf7zaop6SkkJKSUmI8OTk50n+QO6tItapqskcVdfaoos4eVdSVdY/G4/D//h+MGAE7NnpKS4OhQ+HPf46x337uJK3Sifr3aGlqK1X3p6WlkZaW9qPnpaenk5OTw/z58+nUqRMA8+bNIycnh65du+7yNTums8+YMYP27dsDsHXrVmbOnMmtt96629/r/fffJz8/v1i4lyRJkhRN8Ti8/DJcfz0sXBiMpabCNdfAoEGwh6WnpCojIduztW3bll69epGVlcXcuXOZO3cuWVlZ9OnTp9hCcm3atGHq1KlAMOX9iiuu4Oabb2bq1KksWbKEgQMHUqtWLQYMGADAp59+ypgxY3jrrbdYsWIFL774ImeddRbt27enm/sySJIkSZE2cyaceCL07h2E9Nq1YfhwWL48+NWQLgUSNp9kypQpDBo0qHAV9759+zJhwoRi5yxbtoycnJzC42uvvZbvv/+eiy++mPXr19O5c2emT59euKJ7jRo1ePXVV7nnnnvYtGkTTZs25bTTTmPkyJEkJSUl6qNIkiRJ2gfffw99+8IrrwTHNWvCJZfAddfBQQeFW5sURQkL6vXq1WPy5Ml7PCceL744RCwWY9SoUYwaNWqX5zdt2pSZM2eWVYmSJEmSysF++0FycvCTlQXDhsHBB4ddlRRdCZn6LkmSJKnq+vBDOPdcWL26aOyee+Cjj+C++wzp0o9xKUVJkiRJZSorC2bNgrp1Yfz4YKxVq3BrkioSr6hLkiRJ2idffgk7LT3F6NHw618HgV1S6RnUJUmSJP0ka9bAFVdAy5Zwxx1F47/8ZbBH+jHHhFWZVLE59V2SJElSqXzzDdx2WzCtffPmYOztt4M90mOxcGuTKgODuiRJkqS9kpMDd90Fd94JGzcGY507w403wsknG9KlsmJQlyRJkrRHW7Ykcdtt1bjjDvj222Ds2GODgH7aaQZ0qawZ1CVJkiTt0pYtcP/91Rgzpgc5OUkAtG0LY8bAb34D1VzxSkoIg7okSZKkEp5+Gq6+Gr76KglI4rDD4owaFWPAAEhKCrs6qXIzqEuSJEkqIScHvvoKDjkkTt++73DbbUdRq1Zy2GVJVYJBXZIkSariCgrgH/+AWrXgV78Kxv7wh2Bqe//+23jttc9JTj4q3CKlKsS7SiRJkqQqbtIk6N8/2BM9Pz8Yq1EDsrKgZs1QS5OqJIO6JEmSVMXE48Fe6Ducey4ccQScdx5s2xZeXZICTn2XJEmSqpA33oDrr4dNm2DRomB6e+3a8MEHLhInRYVX1CVJkqQqYM4c6NEDfvELePNNWLYM3nuv6HlDuhQdBnVJkiSpElu0CE47Dbp2hVdfheRkuOQS+PRTOPbYsKuTtCtOfZckSZIqoSVLYORIeO654DgpCQYOhBEj4NBDQy1N0o8wqEuSJEmVyEcfwahR8PTTwaJxsRgMGBCE9latwq5O0t4wqEuSJEmVwKpVwSJxTzwR7IsOcOaZQWg/yi3QpQrFoC5JkiRVAtu2wZQpQUjv0wfGjIH27cOuStJPYVCXJEmSKqA1a+Df/4Y//jE4btYM7rkHfvYz6NIl1NIk7SODuiRJklTBfPttcL/5xo3Byu0dOwbjF10Ubl2SyoZBXZIkSaoA8vIgJSV4XK8e9O0Ln3wSLBgnqXJxH3VJkiQpwjZuhJtugkMOgY8/Lhp/8EGYMweOOy682iQlhkFdkiRJiqDNm+H22+Gww4LV3Netg0mTip6vXTvYek1S5ePUd0mSJClC8vLgoYfg5pshOzsYa9Uq2Gbt7LNDLU1SOTGoS5IkSRGQnw+PPQY33ghffhmMNW8ON9wAmZlQ3f9yl6oM/+8uSZIkhWjH/udjxsBnnwVjBx8cTHf/4x+hRo1w65NU/gzqkiRJUgjicXj66WBK+0cfBWMNGsCwYfCnP0HNmqGWJylEBnVJkiQpJPfcE4T0+vXh2mvhkkuCReIkVW0GdUmSJKkcxOPw73/Dz38OBx4YrNg+diy8+SYMGgR16oRdoaSocHs2SZIkqRwMHAi/+hXcdVfR2C9+EdyLbkiXtDODuiRJkpQgBQVFj/v0gVq1XL1d0o8zqEuSJEllbM4c6NEjuAd9h9/+FpYvhxEjwqtLUsVgUJckSZLKyMKFcNpp0LUrvPoq3HlnsP0aQLVqwarukvRjDOqSJEnSPnrvPTjjDDjuOHjxRUhKgvPPh1mznOouqfT82pAkSZJ+oqVLg33Q//734DgWg3PPhRtugJYtQy1NUgVmUJckSZJK6eOPYcwY+OtfixaMO+ssGD0a2rYNtzZJFZ9BXZIkSdpLy5fDX/4CTz4J27cHY6efHgT0Y44JtTRJlYhBXZIkSdpLTz8Njz0WPD711OCqeseO4dYkqfIxqEuSJEm7sXo1fP01HHtscHzZZfD223DllZCeHm5tkiovg7okSZK0Cy++GOx93qZNsO1atWqw//5FC8dJUqIkbHu29evXk5mZSWpqKqmpqWRmZrJhw4Y9vua5556jZ8+epKWlEYvFWLx4cYlz8vLyuOyyy0hLS6N27dr07duXlStXJuZDSJIkqUqJx4sed+4Mycmw337wzTfh1SSp6klYUB8wYACLFy9m2rRpTJs2jcWLF5OZmbnH13z33Xd069aNW265ZbfnXHHFFUydOpWnn36aWbNmsWnTJvr06cP2Hat5SJIkSaW0YUOwzdrppxeF9fr1g2nub74JBx0UYnGSqpyETH1funQp06ZNY+7cuXTu3BmASZMmkZ6ezrJly2jduvUuX7cjyK9YsWKXz+fk5PDII4/w1FNP0aNHDwAmT55M06ZNeeWVV+jZs2fZfxhJkiRVWhs3wr33wu23B2EdgmD+858Hjw8/PLTSJFVhCQnqc+bMITU1tTCkA3Tp0oXU1FRmz56926D+YxYuXEh+fj4ZGRmFY02aNOHoo49m9uzZuw3qeXl55OXlFR7n5uYCkJ+fT35+/k+qpbzsqC/qdarqskcVdfaoos4eDcd338EDD1Tjjjuq8c03MQDato1zww3bOf74OP5xFLFHFXUVpUdLU19Cgnp2djYNGjQoMd6gQQOys7P36X1r1KhB3bp1i403bNhwj+87duxYRo8eXWJ8+vTp1KpV6yfXU55mzJgRdgnSHtmjijp7VFFnj5aPvLxqvPxyc559thU5OckANGmyibPP/pCf//wrkpJg2rSQi4woe1RRF/Ue3bx5816fW6qgPmrUqF0G3p0tWLAAgFgsVuK5eDy+y/F99WPvO3ToUAYPHlx4nJubS9OmTcnIyKBOnTplXk9Zys/PZ8aMGZxyyikkJyeHXY5Ugj2qqLNHFXX2aPnIy4NHH63GrbdWY9Wq4L8bDzsszrBh2xkwIIXq1Y8Fjg23yIiyRxV1FaVHd8zs3hulCuqXXnop/fv33+M5zZs3591332XNmjUlnlu7di0NGzYszW9ZTKNGjdi6dSvr168vdlX966+/pmvXrrt9XUpKCikpKSXGk5OTI/0HubOKVKuqJntUUWePKurs0cTYuhUefxxuvBG+/DIYa9YMRoyA886LkZzsbsV7yx5V1EW9R0tTW6m+mdLS0khLS/vR89LT08nJyWH+/Pl06tQJgHnz5pGTk7PHQP1jOnbsSHJyMjNmzKBfv34ArF69miVLljBu3Lif/L6SJEmqnD75BC66KFjJ/eCDYfhwOP98qFEj7MokafcS8k+Ibdu2pVevXmRlZfHggw8CcOGFF9KnT59iC8m1adOGsWPHcsYZZwDw7bff8sUXX7Bq1SoAli1bBgRX0hs1akRqairnn38+V111FfXr16devXpcffXVtGvXrnAVeEmSJFVd27fD/PmQnh4cH3kkDBoEhx0GF14INWuGW58k7Y2E7aM+ZcoU2rVrR0ZGBhkZGRxzzDE89dRTxc5ZtmwZOTk5hcfPP/887du357TTTgOgf//+tG/fnokTJxaec9ddd3H66afTr18/unXrRq1atfi///s/kpKSEvVRJEmSVAHk5kK7dnDCCcGV9B3uvjsI64Z0SRVFwm7KqVevHpMnT97jOfF4vNjxwIEDGThw4B5fU7NmTcaPH8/48eP3tURJkiRVInXqQIsWkJ0NH34ILVuGXZEk/TQJu6IuSZIkJUo8Di+8AN26werVReMPPAArVkCfPqGVJkn7zKAuSZKkCiMeD/Y579wZfvUrmD0bbrut6PlmzYIr65JUkbkfhSRJkiIvHofXXoMbbgjCOUCtWnDppXDNNeHWJkllzaAuSZKkSJs5Mwjo//lPcFyzJlxyCVx7LTRoEG5tkpQIBnVJkiRF0uzZQUB/9dXgOCUF/vQnGDIEGjcOtzZJSiSDuiRJkiJl/vwgoL/8cnCcnAxZWTB0KBxySLi1SVJ5MKhLkiQpMgoKYOBAWLoUqleHP/4Rhg2DQw8NuzJJKj+u+i5JkqRQvfMObNkSPK5WDUaPhj/8AZYtgwcfNKRLqnoM6pIkSQrN5ZfDz34WBPIdzjoLHn0UDjsstLIkKVQGdUmSJIXmqKMgFoNPPw27EkmKDoO6JEmSysXHH0NmJjz1VNHYwIHw3ntw772hlSVJkWNQlyRJUkJ99llwz3nbtjB5cnAP+vbtwXM1agRX1SVJRQzqkiRJSogVK4Jt1Vq3hscfD8J5nz7wzDOQlBR2dZIUXW7PJkmSpDL15Zdw003BgnD5+cFYr17BlfROncKtTZIqAoO6JEmSysRXX8HYsTBpEmzdGoz16BEE9K5dw61NkioSg7okSZL2SXY23HILTJwIeXnBWPfuQUA/8cRQS5OkCsmgLkmSpH1y991wzz3B45//HMaMgV/8ItSSJKlCM6hLkiSpVNatgw0boGXL4Pjqq+Gtt+C664Kp7rFYqOVJUoXnqu+SJEnaa88/Dy1awIUXFo2lpcErr8AppxjSJaksGNQlSZK01372s2ChuA0bgh9JUtlz6rskSZJ2KScnuPd8+XJ47LFgrFkzWLAA2rXz6rkkJYpBXZIkScVs3Aj33gt33AHr1wdjV14JxxwTPN7xqyQpMQzqkiRJAmDTJpgwAW67Db79Nhhr2xZGjYKjjw61NEmqUgzqkiRJVdx338H998O4ccGK7gCtW8PIkdCvHyQlhVufJFU1BnVJkqQq6vvvYeJEuOUW+PrrYKxlyyCg/+53BnRJCotBXZIkqYrZsgUeegjGjoXs7GDssMNgxAg491yo7n8hSlKo/BqWJEmqYt5+Gy6/PHjcvDlcfz38/veQnBxqWZKk/zGoS5IkVXJbt8LChZCeHhynp8P550OnTjBwINSoEWp5kqQfMKhLkiRVYqtWBcF87Vr47DNo1CgYf/jhcOuSJO1etbALkCRJUuI0bgxNmsCBB8LHH4ddjSRpbxjUJUmSKolt2+Cxx+C442DDhmAsFoO//Q0+/RROOCHU8iRJe8mgLkmSVMFt2wZPPglt2sAf/xjcj37//UXPN28O++0XWnmSpFLyHnVJkqQKavv24Gr5mDFF09oPOgiuvRb+/Odwa5Mk/XQGdUmSpApm+3b4+9+DgP7hh8FY/fpwzTVwySWw//7h1idJ2jcGdUmSpAqioAD+8Q8YPRqWLg3G6tWDq6+GSy+FAw4Itz5JUtkwqEuSJEVcQQE891wQ0JcsCcYOPBCuugoGDYI6dUItT5JUxgzqkiRJEZefD1deCStXQmoqDB4Ml18ePJYkVT4GdUmSpIiJx+GllyAjA6pXh5QUuPFG+OyzILAfeGDYFUqSEsmgLkmSFDG9esH06cGWa5mZwdh554VbkySp/LiPuiRJUsji8eBnh1/8Ili5PScnvJokSeHxirokSVJI4nF48cUY11xzItu3x/jtb4Pxyy6DCy6AtLRw65MkhcMr6pIkSeVsxz3oXbrA6adX55NP6nLnnUX/WVa7tiFdkqqyhAX19evXk5mZSWpqKqmpqWRmZrJhw4Y9vua5556jZ8+epKWlEYvFWLx4cYlzunfvTiwWK/bTv3//xHwISZKkMhSPw8svQ3o6nHoqzJ8P++0X5/TTP+bvf98ednmSpIhIWFAfMGAAixcvZtq0aUybNo3FixeTuWM1lN347rvv6NatG7fccssez8vKymL16tWFPw8++GBZli5JklSm4nGYMQO6dQsWips3D/bbL9gH/aOPtjFw4Ac0aBB2lZKkqEjIPepLly5l2rRpzJ07l86dOwMwadIk0tPTWbZsGa1bt97l63YE+RUrVuzx/WvVqkWjRo3KtGZJkqSyFo/Da6/ByJHw5pvBWM2a8Oc/w7XXQqNGwR7pkiTtLCFBfc6cOaSmphaGdIAuXbqQmprK7NmzdxvU99aUKVOYPHkyDRs2pHfv3owcOZIDDjhgt+fn5eWRl5dXeJybmwtAfn4++RH/23FHfVGvU1WXPaqos0cVljfeiDF6dDXefDOYwJiSEufCCwu4+uoCGjcOzsnPt0cVffaooq6i9Ghp6ktIUM/OzqbBLuZvNWjQgOzs7H1673POOYcWLVrQqFEjlixZwtChQ3nnnXeYMWPGbl8zduxYRo8eXWJ8+vTp1KpVa5/qKS97+nxSFNijijp7VOXtvvuO5c03m5OcvJ2ePVfwm998Qr16W3j7bXj77ZLn26OKOntUURf1Ht28efNen1uqoD5q1KhdBt6dLViwAIBYLFbiuXg8vsvx0sjKyip8fPTRR9OqVSuOO+44Fi1aRIcOHXb5mqFDhzJ48ODC49zcXJo2bUpGRgZ16tTZp3oSLT8/nxkzZnDKKaeQnJwcdjlSCfaoos4eVXmZOTNGw4Zx2rQJjo88Eu69dztXX11AkybNgGa7fJ09qqizRxV1FaVHd8zs3hulCuqXXnrpj66w3rx5c959913WrFlT4rm1a9fSsGHD0vyWP6pDhw4kJyfz8ccf7zaop6SkkJKSUmI8OTk50n+QO6tItapqskcVdfaoEmnMmOA+9N/+Fv75z2CsVSsYPx4gaa/ewx5V1Nmjirqo92hpaitVUE9LSyNtLzb1TE9PJycnh/nz59OpUycA5s2bR05ODl27di3Nb/mj3n//ffLz82m842YvSZKkcrB1K9SoETz+7W9h7NhgcbiCAqiWsH11JElVQUL+Gmnbti29evUiKyuLuXPnMnfuXLKysujTp0+xheTatGnD1KlTC4+//fZbFi9ezAcffADAsmXLWLx4ceF97Z9++iljxozhrbfeYsWKFbz44oucddZZtG/fnm7duiXio0iSJBXz3//CySfDRRcVjR11FKxaBRMmGNIlSfsuYX+VTJkyhXbt2pGRkUFGRgbHHHMMTz31VLFzli1bRk5OTuHx888/T/v27TnttNMA6N+/P+3bt2fixIkA1KhRg1dffZWePXvSunVrBg0aREZGBq+88gpJSXs3rUySJOmnePNN6NEDTjwx2HLt6afh22+Lnq9bN7zaJEmVS0JWfQeoV68ekydP3uM58Xi82PHAgQMZOHDgbs9v2rQpM2fOLIvyJEmS9srs2TBqFOxYTLh6dfjjH2HYMKhXL9TSJEmVVMKCuiRJUkU2Z04Q0KdPD46rV4c//CEI6M2bh1mZJKmyM6hLkiTtZM4cGD0aXn45OK5eHc47D4YPhxYtwq1NklQ1GNQlSZKAxYthyJCigJ6UBAMHBlfQDzsszMokSVWNQV2SJIlg1faXXzagS5LCZ1CXJElV0ty58PnncPbZwXHv3sGU93PPNaBLksJlUJckSVXOq68GW63VrQu9ekFqKsRicMMNYVcmSZJBXZIkVRHfflu0nVr37nD00XD88ZCXF2pZkiSVYFCXJEmV2vz5wZT2xYvh00+hZs3gPvSFC6FGjbCrkySppGphFyBJkpQICxbAaadB587w4ouwZg385z9FzxvSJUlRZVCXJEmVyoIF0KcPdOoUBPSkpGAf9A8/hIyMsKuTJOnHOfVdkiRVCgsWBFPc//3v4LhatWAF9xEjoGXLcGuTJKk0DOqSJKlC21VAz8yE4cOhVatwa5Mk6acwqEuSpArpiy/g4osN6JKkysegLkmSKqQDD4TZsw3okqTKx6AuSZIqhPnz4emn4Y47IBaDOnXgiSegTRsDuiSpcjGoS5KkyMvJgV/8AjZvhpNPDrZdA/jVr8KtS5KkRDCoS5KkSPrgAzjyyOBxaipcfjmsWgVt24ZblyRJieY+6pIkKVLmzw+umB91FPznP0XjN90Ejz8Ohx0WWmmSJJULg7okSYqEefPg1FOhc2d48UVISgq2XtshFguvNkmSypNT3yVJUqjmzg32QZ82LThOSipaxb1ly3BrkyQpDAZ1SZIUijlzgoD+8svBcVIS/P73QUA//PBwa5MkKUwGdUmSVK7mzIFRo2D69ODYgC5JUnEGdUmSVC7y84Pt1Ha+gn7eeTBsmAFdkqSdGdQlSVK5SE6G/fcPAvrAgUFAdwV3SZJKctV3SZKUEG++Cb17w4oVRWPjxsFHH8HDDxvSJUnaHYO6JElKiB0rud98c9HYYYcZ0CVJ+jFOfZckSWXiP/+B1q2hYcPgeNQoaN48mOIuSZL2nlfUJUnSXnvrLfjlL4Nfd5g5Mxg76SS47bai8a5d4aGHgrAuSZL2nlfUJUnSXnvySXj9dXjqKdi0KbhqPnNm8FxyMhQUhFqeJEmVgkFdkiTt0eefw7p1EIvB008HYw88APfeGzxOToYLLoAhQ6BZs/DqlCSpsjCoS5KkPdrV1PX8/OKP77+/3MqRJKnS8x51SZK0W/F4cKV8d6pXh8mTy68eSZKqAq+oS5Kk3frDH+CJJ3b//Lx50KFD+dUjSVJV4BV1SZJUKB6H7duLjk8+GWrWhN/9LjiuVq34r5Ikqez516wkSQKC1dy7doUHHywa+93v4LPPYNw4aNQIOnaEiRODXxs1ggYNwqtXkqTKyqnvkiQJgA8+gLlz4Ztv4M9/DlZ5r14dGjcOnl+xAmrUCMYvvBC2boWUlFBLliSpUjKoS5JUBcXj8MILQRDv3TsYO/98WLMGLr44COM/tHMoj8UM6ZIkJYpT3yVJqkLicfjXv+C446BvX7jiiqJ70mvWhDFjgintkiQpPAZ1SZKqgIICmDo1WKH99NNh0SKoXTt4nJcXdnWSJGlnTn2XJKkS2xHQx4yBd98NxvbfHy67DAYPhrS0cOuTJEklGdQlSaqECgrg2WfhL3+B994Lxg44AAYNgiuvhPr1w61PkiTtnkFdkqRKZPt2+Oc/g4D+/vvBWJ06cPnlwf3o9eqFWp4kSdoLCbtHff369WRmZpKamkpqaiqZmZls2LBht+fn5+dz3XXX0a5dO2rXrk2TJk34/e9/z6pVq4qdl5eXx2WXXUZaWhq1a9emb9++rFy5MlEfQ5KkCmXcOOjfPwjpqakwcmSwrdqYMYZ0SZIqioQF9QEDBrB48WKmTZvGtGnTWLx4MZmZmbs9f/PmzSxatIgRI0awaNEinnvuOT766CP69u1b7LwrrriCqVOn8vTTTzNr1iw2bdpEnz592L5jyVpJkqqQbdvg66+Ljv/wB2jSBEaPDgL6qFFQt25Y1UmSpJ8iIVPfly5dyrRp05g7dy6dO3cGYNKkSaSnp7Ns2TJat25d4jWpqanMmDGj2Nj48ePp1KkTX3zxBc2aNSMnJ4dHHnmEp556ih49egAwefJkmjZtyiuvvELPnj0T8XEkSYqk2bNh4EBo3hymTw/GGjWCzz8P9keXJEkVU0L+Gp8zZw6pqamFIR2gS5cupKamMnv27F0G9V3JyckhFotx4IEHArBw4ULy8/PJyMgoPKdJkyYcffTRzJ49e7dBPS8vj7yd9p7Jzc0Fgun2+fn5pf145WpHfVGvU1WXPaqoq8w9mpYGy5dX59tvYeXKbTRsWPRcJfy4lVZl7lFVDvaooq6i9Ghp6ktIUM/OzqZBgwYlxhs0aEB2dvZevceWLVsYMmQIAwYMoE6dOoXvW6NGDer+YA5fw4YN9/i+Y8eOZfTo0SXGp0+fTq1atfaqnrD9cLaBFDX2qKKuovdofn6MN95oyhdf1OH885cUjg8Z0oCjjvqWhQu3hVidykJF71FVfvaooi7qPbp58+a9PrdUQX3UqFG7DLw7W7BgAQCxWKzEc/F4fJfjP5Sfn0///v0pKCjg/vvv/9Hzf+x9hw4dyuDBgwuPc3Nzadq0KRkZGYX/CBBV+fn5zJgxg1NOOYXk5OSwy5FKsEcVdRW9R7duhSeeqMa4cdX4/PPg77pRo5rRrl3w/KmnhlicykRF71FVfvaooq6i9OiOmd17o1RB/dJLL6V///57PKd58+a8++67rFmzpsRza9eupeHO8/J2IT8/n379+rF8+XJee+21YkG6UaNGbN26lfXr1xe7qv7111/TtWvX3b5nSkoKKSkpJcaTk5Mj/Qe5s4pUq6ome1RRV9F6NC8PHnkEbrkFvvwyGGvUCK69Ftq0SaYCfRTtpYrWo6p67FFFXdR7tDS1lSqop6WlkZaW9qPnpaenk5OTw/z58+nUqRMA8+bNIycnZ4+BekdI//jjj3n99depX79+sec7duxIcnIyM2bMoF+/fgCsXr2aJUuWMG7cuNJ8FEmSImnLFnj44SCgf/VVMNa4MQwZAllZsN9+4dYnSZISLyH3qLdt25ZevXqRlZXFgw8+CMCFF15Inz59ii0k16ZNG8aOHcsZZ5zBtm3bOPPMM1m0aBEvvPAC27dvL7zvvF69etSoUYPU1FTOP/98rrrqKurXr0+9evW4+uqradeuXeEq8JIkVUTffw8PPQS33gqrVwdjBx8MQ4fC+edDzZrh1idJkspPwjZvmTJlCoMGDSpcob1v375MmDCh2DnLli0jJycHgJUrV/L8888D8LOf/azYea+//jrdu3cH4K677qJ69er069eP77//npNPPpnHH3+cpKSkRH0USZISZvNmmDgRxo2DHXeNNW0aBPQ//hF2ceeWJEmq5BIW1OvVq8fkyZP3eE48Hi983Lx582LHu1OzZk3Gjx/P+PHj97lGSZLCtnAhXHVV8PjQQ2HYMDjvPAO6JElVWcKCuiRJKik3F956C375y+D4hBNg4EDo1g1+/3uoUSPU8iRJUgQY1CVJKieffQbHHRes6L5iBRx0UDD+2GOhliVJkiKmWtgFSJJUmW3fXvS4RQs47DA45BD44ovwapIkSdFmUJckKQG++QZGjIBWrYLp7gCxGPzrX/DBB9CxY7j1SZKk6DKoS5JUhtatCxaEa94cbrwRli+HKVOKnj/4YHCjEkmStCfeoy5JUhlYswbuuAPuvx+++y4YO/ZYuOEGOP30UEuTJEkVjEFdkqR9kJ0d7IE+cSJ8/30w1qEDjBwJv/pVMN1dkiSpNAzqkiT9BF99FQT0hx6CLVuCseOPDwL6qaca0CVJ0k9nUJckqRQ2bIDhw+Hhh2Hr1mCsS5cgoPfsaUCXJEn7zqAuSVIp1KwJU6cGIf3nPw8C+sknG9AlSVLZMahLkrQHn34aXD2/8cZgtfaaNWHCBKhXD046yYAuSZLKnkFdkqTd2LoV0tNh7dpgBff+/YPx3/wm3LokSVLl5j7qkiTt5JNPIB4PHteoAZddBr17wxFHhFuXJEmqOgzqkiQB770HZ58dBPKXXioaHz4cXnwx2HJNkiSpPBjUJUlV2uLF8NvfwjHHwN//HlxNnzOn6Plq/k0pSZLKmfeoS5KqpLfegr/8BZ5/PjiOxeCss+D666Fdu3BrkyRJVZtBXZJUpcyZEwT0HdPbq1ULFokbPhyOPDLc2iRJksCgLkmqImbNinHzzfDKK8FxUhKccw4MGwatW4dbmyRJ0s4M6pKkSm37dhg5Mp133gn+yqteHc47D4YOhcMPD7k4SZKkXTCoS5IqtaQkqF9/C8nJcf74xxhDhkDz5mFXJUmStHuuZStJqlRefBHS02HJkqKxc85ZyocfbmPiREO6JEmKPoO6JKlSefRRmDsXbr21aKx+/S00bRpeTZIkSaXh1HdJUoVVUADPPgvHH190pXzECDjsMLjqqlBLkyRJ+sm8oi5JqnC2b4e//S3Y77xfPxg7tui5Y4+FceOgYcPw6pMkSdoXXlGXJFUY+fnw17/CTTfBxx8HY6mp0KxZuHVJkiSVJYO6JCnytm6FJ54IrpwvXx6M1asHgwfDpZcGYV2SJKmyMKhLkiJry5ZgcbhbboEvvwzGDjoIrr4a/vxnOOCAcOuTJElKBIO6JClyNm+GSZOCe81XrQrGGjeGa6+FCy+EWrXCrU+SJCmRDOqSpMj57W9h2rTg8SGHwJAhcP75ULNmuHVJkiSVB4O6JCl0ubmQlAS1awfHf/oTfPghDB0K550HKSnh1idJklSe3J5NkhSqBx+EQw+F8eOLxvr2hY8+Cqa5G9IlSVJVY1CXJIWqVi3YsAFeegni8WCsWjVITg61LEmSpNA49V2SVG6ys+GOO6BNm+Cec4Df/S5Yvb1vX4jFwq1PkiQpCgzqkqSEW7kyWMF90qRgy7VDDoHMTKhRA6pXh9NPD7tCSZKk6DCoS5IS5vPPgz3QH30Utm4Nxjp3hhEjnNouSZK0OwZ1SVKZ++QTGDsWnnwStm0Lxk44IQjoPXo4xV2SJGlPDOqSpDKzdCncfDP89a9QUBCM9egRBPQTTwy3NkmSpIrCoC5J2mfvvQc33gj/+EfRyu2nngrXXw/p6eHWJkmSVNEY1CVJ++y55+Dvfw8en356ENA7dgy1JEmSpArLoC5JKrW5c4P7zDt3Do4HDYLPPoOrroJjjgm3NkmSpIquWtgFSJIqlokTg+nsV1xRNM29bl144glDuiRJUlkwqEuS9igeh5ycouPTT4cDDoCjjgr2RJckSVLZSlhQX79+PZmZmaSmppKamkpmZiYbNmzY7fn5+flcd911tGvXjtq1a9OkSRN+//vfs2rVqmLnde/enVgsVuynf//+ifoYklRlxePwf/8HXbrAWWcVjTdqBCtXwsMPw377hVefJElSZZWwoD5gwAAWL17MtGnTmDZtGosXLyYzM3O352/evJlFixYxYsQIFi1axHPPPcdHH31E3759S5yblZXF6tWrC38efPDBRH0MSapyCgrgn/+E9u2hb1+YPx9mzQrC+Q516oRXnyRJUmWXkMXkli5dyrRp05g7dy6d/7fS0KRJk0hPT2fZsmW0bt26xGtSU1OZMWNGsbHx48fTqVMnvvjiC5o1a1Y4XqtWLRo1apSI0iWpytq2LVi5/aab4IMPgrHateGSS2DwYGjYMNz6JEmSqoqEBPU5c+aQmppaGNIBunTpQmpqKrNnz95lUN+VnJwcYrEYBx54YLHxKVOmMHnyZBo2bEjv3r0ZOXIkBxxwwG7fJy8vj7y8vMLj3NxcIJhun5+fX4pPVv521Bf1OlV12aMVX34+/PWvMW69NYlPPokBkJoa55JLCrjssgLq1y86ryKyRxV19qiizh5V1FWUHi1NfQkJ6tnZ2TRo0KDEeIMGDcjOzt6r99iyZQtDhgxhwIAB1NlpjuU555xDixYtaNSoEUuWLGHo0KG88847Ja7G72zs2LGMHj26xPj06dOpVavWXtUTtj19PikK7NGKJz+/Gq++2oxnn23F2rXBd+EBB2ylb99P6d37M/bffxvz5oVcZBmyRxV19qiizh5V1EW9Rzdv3rzX55YqqI8aNWqXgXdnCxYsACAWi5V4Lh6P73L8h/Lz8+nfvz8FBQXcf//9xZ7LysoqfHz00UfTqlUrjjvuOBYtWkSHDh12+X5Dhw5l8ODBhce5ubk0bdqUjIyMYv8IEEX5+fnMmDGDU045heTk5LDLkUqwRyuml16KcfnlSaxaFXwnN2gQ58orC/jTn2Lsv39LoGW4BZYhe1RRZ48q6uxRRV1F6dEdM7v3RqmC+qWXXvqjK6w3b96cd999lzVr1pR4bu3atTT8kZsc8/Pz6devH8uXL+e111770SDdoUMHkpOT+fjjj3cb1FNSUkhJSSkxnpycHOk/yJ1VpFpVNdmjFUvTprBqFRx8MFx7LWRlxdhvvyQgKezSEsYeVdTZo4o6e1RRF/UeLU1tpQrqaWlppKWl/eh56enp5OTkMH/+fDp16gTAvHnzyMnJoWvXrrt93Y6Q/vHHH/P6669Tf8eNkXvw/vvvk5+fT+PGjff+g0hSFbJhA0yYAN99B2PHBmPt28MLL0CPHrCLf8eUJElSiBKyPVvbtm3p1asXWVlZzJ07l7lz55KVlUWfPn2KLSTXpk0bpk6dCsC2bds488wzeeutt5gyZQrbt28nOzub7Oxstm7dCsCnn37KmDFjeOutt1ixYgUvvvgiZ511Fu3bt6dbt26J+CiSVOG99x6MGAF33FF8i7XTTjOkS5IkRVHC9lGfMmUK7dq1IyMjg4yMDI455hieeuqpYucsW7aMnJwcAFauXMnzzz/PypUr+dnPfkbjxo0Lf2bPng1AjRo1ePXVV+nZsyetW7dm0KBBZGRk8Morr5CUVHmna0pSaWRnB1fLdzjhBMjKgieeACcfSZIkRV9CVn0HqFevHpMnT97jOfF4vPBx8+bNix3vStOmTZk5c2aZ1CdJlc2XX8Jtt8GkSVCtGnz+Oey4W+mhh8KtTZIkSXsvYUFdklQ+PvsMbrkFHn+8aK/zLl1g7dqioC5JkqSKI2FT3yVJifXhh/D738MRRwRX0fPzoXt3ePVVmD0b2rYNu0JJkiT9FF5Rl6QK5t134aab4B//gB13DPXqBcOHw89/Hm5tkiRJ2ncGdUmqIBYsgBtvhOefLxr79a/h+uvhuOPCq0uSJElly6AuSRXA9OnQs2fwOBaDfv1g2DA45phw65IkSVLZM6hLUgTF47B6NTRpEhz/8pfBvejp6TB0KLRuHW59kiRJShyDuiRFzPLl8LvfwapV8MknUKMGVK8e3JuekhJ2dZIkSUo0V32XpIhp3DjYA33tWli4sGjckC5JklQ1GNQlKUTbtsFTTwWLwm3fHozVrAnPPAMrVgRT3SVJklS1OPVdkkKQlwdPPgm33AKffRaMPftssEgcwIknhlebJEmSwmVQl6Ry9P338PDDMG4crFwZjB10EAweHOyFLkmSJBnUJakcbNwIEyfCHXfAmjXBWJMmcM01cOGFUKtWuPVJkiQpOgzqkpRAGzbA+PFw993w7bfB2KGHwpAhMHBgcD+6JEmStDODuiQlwPr1cPvtMGEC5OYGY61awbBhcM45kJwcbn2SJEmKLoO6JCVAXh7ceSds2QJHHw3Dh8NZZ0FSUtiVSZIkKeoM6pJUBlasgH/9Cy6/PDhu1ChY0b15c/jVr6Cam2FKkiRpLxnUJWkfrV8PbdsGV8/T06FTp2B8R2iXJEmSSsOgLkk/weefB4vCAdStC/37w6pVkJISbl2SJEmq+JyMKUmlMG8e9O0Lhx0G779fNP7QQ/Dyy3DsseHVJkmSpMrBoC5JPyIeh5kz4ZRToEsX+L//C8beeKPoHFdxlyRJUllx6rsk7UY8Hlwlv/FGePPNYKx6dcjMDPZBP+KIcOuTJElS5WRQl6QfKCgIVnC/6SZYuDAYS0mB88+Ha68tujddkiRJSgSDuiT9z7Zt8MwzMHZs0f3ntWrBRRfBVVdBkybh1idJkqSqwaAuScA330DnzvDpp8FxaipceilccQWkpYVamiRJkqoYg7qkKqugAKr9b0nN+vXh4IMhJweuvBIuuSQI65IkSVJ5M6hLqnLy8+GOO4It1ebPL7pi/sQTcNBBULt2uPVJkiSpanN7NklVTvXq8M9/wvLl8PDDRePNmxvSJUmSFD6DuqRKLzsbhg2D3NzgOBaDW24JrqBfdVW4tUmSJEk/5NR3SZXWF1/AuHHBVfO8vOCe8+uuC57r0SPc2iRJkqTdMahLqnQ++ii4Yv7UU8GWawDp6dCxY7h1SZIkSXvDoC6p0nj3Xbj5ZvjHP4IV3QFOPhmGD4fu3YMp75IkSVLUGdQlVXhz5wYB/f/+r2jsV78K7kvv0iW8uiRJkqSfwqAuqUKKx+H11+Gmm+C114KxWAz69QsC+jHHhFufJEmS9FMZ1CVVSFu3wrnnwurVwXZrmZkwZAgccUTYlUmSJEn7xqAuqULYvh1eeAH69IGkJEhJCe49//BDuOYaaNYs7AolSZKksmFQlxR58TiccALMmQPPPBNMbwe45JJw65IkSZISoVrYBUjSrmzZEgR0CO4979kT6taFjRvDrUuSJElKNIO6pEjZuBFuuw2aN4eXXioaHzwYPv8czj8/tNIkSZKkcuHUd0mR8O23cO+9wc/69cHYY4/BqacGjw84ILzaJEmSpPJkUJcUqtWr4c47YeJE2LQpGDviCBg6FM45J9zaJEmSpDAY1CWFYsUKGDcOHn0U8vKCsZ/9LNgD/Te/CVZ2lyRJkqoig7qkcvXhhzB2LEyZEmy5BtC1a7DVWu/ewcJxkiRJUlWWsMXk1q9fT2ZmJqmpqaSmppKZmcmGDRv2+JpRo0bRpk0bateuTd26denRowfz5s0rdk5eXh6XXXYZaWlp1K5dm759+7Jy5cpEfQxJZSQeh9/9Do48Ep58Mgjpp5wCb7wBs2YF96Ib0iVJkqQEBvUBAwawePFipk2bxrRp01i8eDGZmZl7fM0RRxzBhAkTeO+995g1axbNmzcnIyODtWvXFp5zxRVXMHXqVJ5++mlmzZrFpk2b6NOnD9t3XJqTFEmxGNSsGQT200+H+fNh+nQ46SQDuiRJkrSzhAT1pUuXMm3aNB5++GHS09NJT09n0qRJvPDCCyxbtmy3rxswYAA9evTgsMMO46ijjuLOO+8kNzeXd999F4CcnBweeeQR7rjjDnr06EH79u2ZPHky7733Hq+88koiPoqkn2j6dOjeHZYsKRobORLeew+mToXjjw+tNEmSJCnSEnKP+pw5c0hNTaVz586FY126dCE1NZXZs2fTunXrH32PrVu38tBDD5Gamsqxxx4LwMKFC8nPzycjI6PwvCZNmnD00Ucze/Zsevbsucv3ysvLI2/HalVAbm4uAPn5+eTn5/+kz1hedtQX9TpVde2uRydOTGLmzGrccksBjz0WzHg5+OAdrynXElXF+T2qqLNHFXX2qKKuovRoaepLSFDPzs6mQYMGJcYbNGhAdnb2Hl/7wgsv0L9/fzZv3kzjxo2ZMWMGaWlphe9bo0YN6tatW+w1DRs23OP7jh07ltGjR5cYnz59OrVq1dqbjxS6GTNmhF2CtFvbtsUYNmwpRx75LQ0bbgbghBNS2batKb/85Se8+OKWkCuU/B5V9Nmjijp7VFEX9R7dvHnzXp9bqqA+atSoXQbenS1YsACA2C5uOo3H47sc39kvfvELFi9ezLp165g0aRL9+vVj3rx5uwz+e/u+Q4cOZfDgwYXHubm5NG3alIyMDOrUqbPHesKWn5/PjBkzOOWUU0hOTg67HKmYLVvg0Ufj3HxzPl9/XZsLL9zOhAkFhc9feilAs9Dqk8DvUUWfPaqos0cVdRWlR3fM7N4bpQrql156Kf3799/jOc2bN+fdd99lzZo1JZ5bu3YtDRs23OPra9euTcuWLWnZsiVdunShVatWPPLIIwwdOpRGjRqxdetW1q9fX+yq+tdff03Xrl13+54pKSmkpKSUGE9OTo70H+TOKlKtqvw2boQHH4Q77oBgMksNDjooTuvWSSQnuwG6osnvUUWdPaqos0cVdVHv0dLUVqqgnpaWVjgNfU/S09PJyclh/vz5dOrUCYB58+aRk5Ozx0C9K/F4vPD+8o4dO5KcnMyMGTPo168fAKtXr2bJkiWMGzeuVO8rqfS++QbGj4d774X164Oxpk3j9Or1Hrfd1pbU1Oh+MUqSJEkVRUJWfW/bti29evUiKyuLuXPnMnfuXLKysujTp0+xheTatGnD1KlTAfjuu+8YNmwYc+fO5fPPP2fRokVccMEFrFy5krPOOguA1NRUzj//fK666ipeffVV3n77bc4991zatWtHjx49EvFRJAGrV8PVV8Ohh8Lo0UFIP+IIePRRWLp0G6edtpwKstyDJEmSFHkJWUwOYMqUKQwaNKhwhfa+ffsyYcKEYucsW7aMnJwcAJKSkvjwww954oknWLduHfXr1+f444/nv//9L0cddVTha+666y6qV69Ov379+P777zn55JN5/PHHSUpyuq1U1j77DG67LQjkW7cGYz/7GQwbBr/5DSQluYK7JEmSVNYSFtTr1avH5MmT93hOPB4vfFyzZk2ee+65H33fmjVrMn78eMaPH7/PNUras3POgblzg8fdusHw4dCrF/zImpCSJEmS9kFCpr5LqpgWLICdF6O89lro2RNmzoRZs6B3b0O6JEmSlGgGdUkAXHIJdOoE999fNHbGGTBtGpx4Ynh1SZIkSVWNQV2qouJx2Lat6Lhz5+Ce87Vrw6tJkiRJkkFdqnK2bYO//Q2OPTbYC32H3/0OPvkk2BtdkiRJUngM6lIVkZcHkyZBmzYwYAC89x5MnBhcWQdITobmzUMtUZIkSRIJXPVdUjRs2gQPPRRcKV+1KhirXx+uvDK4L93F4SRJkqRoMahLldS338KECXDPPcFjgIMPhmuugQsugNq1w61PkiRJ0q4Z1KVKZvVquPPOYFr7pk3BWMuWMGQInHsupKSEW58kSZKkPTOoS5XIsGHBFPetW4PjY4+FoUPhzDODFd0lSZIkRZ9BXapEatYMQnrXrjB8OPTu7T3okiRJUkXjqu9SBbVgAZx+Ovz730Vjl14KM2fCrFlw6qmGdEmSJKki8oq6VEH94x/wr3/BN9/AaacFY/XqwYknhluXJEmSpH1jUJcqgIKCIJQfcggcf3wwduWVwWru11wTbm2SJEmSypZT36UIy8+HJ5+Eo4+G3/wGrr++6LnGjeHhh6F16/DqkyRJklT2vKIuRdD338Ojj8Jtt8Hnnwdjqalw3HHB1fVq/hObJEmSVGkZ1KUIycmBBx6Au+6Cr78Oxho0CKa5//nPQViXJEmSVLkZ1KUI+PpruOcemDABcnODsUMPhWuvhT/8AfbbL9z6JEmSJJUfg7oUoi++gNtvD+41//77YKxtWxg6FPr3h+TkcOuTJEmSVP4M6lKIrrkG/v734HGnTkFA79vXe9AlSZKkqsygLpWjt94K7jlv1iw4vu46WLcOhg2DX/4SYrFw65MkSZIUPq/bSeVkxIhgD/Sbbioa69ABXn0VTj7ZkC5JkiQpYFCXEqSgADZvLjrOyICkpOBxPB5OTZIkSZKiz6AulbH8fHjySWjXLriKvsMJJwSLxz34oFfPJUmSJO2eQV0qI99/D/fdB61awXnnwQcfwDPPBMF9hyZNwqtPkiRJUsVgUJf2UU4OjB0LzZvDpZfC558HC8aNHQvvv+8Wa5IkSZJKx1XfpZ9ozRq4+264/37IzQ3GmjcPtlz7wx9gv/3CrE6SJElSRWVQl0ppxQq47TZ49FHYsiUYO+ooGDIEzj7bK+iSJEmS9o1BXSqFkSOD7dW2bw+OO3eGoUPhV7+Cat5IIkmSJKkMGNSlH1FQUBTCDz88COkZGUFAP+kkV3CXJEmSVLa8Bijtxn/+A927Byu57/C738HChfDyy8FzhnRJkiRJZc2gLu3G++/DzJlw770QjwdjycnQoUO4dUmSJEmq3Jz6LgF5efDUU5CWBqefHowNHAhffgkXX+yVc0mSJEnlx6CuKm3jRnjoIbjzTli1Clq3DhaGS0oKtle7+eawK5QkSZJU1RjUVSWtWwfjxwc/69cHY02awIUXBovFJSWFW58kSZKkqsugrirliy+Cq+eTJsHmzcFYq1Zw3XVw7rmQkhJufZIkSZJkUFeVsHQpjBsHkyfDtm3BWIcOwRZrZ5zhFXRJkiRJ0WFQV6W2YAGMHQv/7/8Vrdz+i18EAb1HDxeJkyRJkhQ9BnVVav/4B0ydGjw+/XQYMgQ6dw61JEmSJEnaI4O6Ko3t24NQ3qwZdOoUjF15ZbBw3DXXQNu24dYnSZIkSXujWtgFSGVlzBg46ywYMaJorHFjePRRQ7okSZKkisOgrgpr40ZYubLoeOBAOOgg6NIFCgpCK0uSJEmS9olT31XhrF0b7H8+YUKwMNyzzwbjLVoEwb1GjXDrkyRJkqR9kbAr6uvXryczM5PU1FRSU1PJzMxkw4YNe3zNqFGjaNOmDbVr16Zu3br06NGDefPmFTune/fuxGKxYj/9+/dP1MdQhHzxBVx+ORx6KPzlL7B+PXzwQdF+6GBIlyRJklTxJSyoDxgwgMWLFzNt2jSmTZvG4sWLyczM3ONrjjjiCCZMmMB7773HrFmzaN68ORkZGaxdu7bYeVlZWaxevbrw58EHH0zUx1AEvP8+nHceHH443HsvfP89dOwI//wnLFkCtWqFXaEkSZIklZ2ETH1funQp06ZNY+7cuXT+315YkyZNIj09nWXLltG6detdvm7AgAHFju+8804eeeQR3n33XU4++eTC8Vq1atGoUaNElK4ImTMHbrkFnn++aOzkk4Mt1k4+2T3QJUmSJFVOCQnqc+bMITU1tTCkA3Tp0oXU1FRmz56926C+s61bt/LQQw+RmprKscceW+y5KVOmMHnyZBo2bEjv3r0ZOXIkBxxwwG7fKy8vj7y8vMLj3NxcAPLz88nPzy/txytXO+qLep1lJR6H6dNj3HZbNf7zn2DCRywW5/TT41xzTQHHHRcHYNu2MKvUzqpaj6risUcVdfaoos4eVdRVlB4tTX0JCerZ2dk0aNCgxHiDBg3Izs7e42tfeOEF+vfvz+bNm2ncuDEzZswgLS2t8PlzzjmHFi1a0KhRI5YsWcLQoUN55513mDFjxm7fc+zYsYwePbrE+PTp06lVQeZN7+nzVSaTJrXj3/8+DIDq1Qvo3v1LzjjjEw4+eBNffw0vvhhygdqtqtKjqrjsUUWdPaqos0cVdVHv0c07L671I0oV1EeNGrXLwLuzBQsWABDbxbzkeDy+y/Gd/eIXv2Dx4sWsW7eOSZMm0a9fP+bNm1cY/LOysgrPPfroo2nVqhXHHXccixYtokOHDrt8z6FDhzJ48ODC49zcXJo2bUpGRgZ16tTZYz1hy8/PZ8aMGZxyyikkJyeHXU6Z+/572LoVUlOD49TUGG+8EefCCwsYNKiAgw9uAjQJtUbtWWXvUVV89qiizh5V1NmjirqK0qM7ZnbvjVIF9UsvvfRHV1hv3rw57777LmvWrCnx3Nq1a2nYsOEeX1+7dm1atmxJy5Yt6dKlC61ateKRRx5h6NChuzy/Q4cOJCcn8/HHH+82qKekpJCSklJiPDk5OdJ/kDurSLXuraefDlZxP/dcuOOOYKx7d/jqK0hNTQKSwixPpVQZe1SViz2qqLNHFXX2qKIu6j1amtpKFdTT0tKKTUPfnfT0dHJycpg/fz6dOnUCYN68eeTk5NC1a9fS/JbE4/Fi95f/0Pvvv09+fj6NGzcu1fsqfAceCF9/DdOmwbhxkPS/XL7j6rokSZIkVUUJ2Z6tbdu29OrVi6ysLObOncvcuXPJysqiT58+xRaSa9OmDVOnTgXgu+++Y9iwYcydO5fPP/+cRYsWccEFF7By5UrOOussAD799FPGjBnDW2+9xYoVK3jxxRc566yzaN++Pd26dUvER1EZ+eQTuOgiuOmmorGePeG552Dx4qKQLkmSJElVXUIWk4NgZfZBgwaRkZEBQN++fZkwYUKxc5YtW0ZOTg4ASUlJfPjhhzzxxBOsW7eO+vXrc/zxx/Pf//6Xo446CoAaNWrw6quvcs8997Bp0yaaNm3KaaedxsiRI0ky6UXSokVw663BnucFBVC3LlxxBdSuHWyvdsYZYVcoSZIkSdGSsKBer149Jk+evMdz4vF44eOaNWvy3HPP7fH8pk2bMnPmzDKpT4kTj8Prrwd7oO+88OKpp8J110EFWWhfkiRJkkKRsKCuqmf7dvjXv4KA/r/F/0lKgv794dpr4Zhjwq1PkiRJkioCg7r2WV4eTJ4cLAj30UfBWM2acP75cNVV0KJFuPVJkiRJUkViUNc+efxxGD4cVq0Kjg88EC69FC67DBo0CLMySZIkSaqYDOraJ1u2BCG9SRMYPBguvBAOOCDsqiRJkiSp4jKoa68tXw533AFdusC55wZjAwcG09x/9ztISQm1PEmSJEmqFBKyj7oqp+eeg/vugxtvDLZagyCkDxxoSJckSZKksuIVde1SPA4zZwZ7nZ90UjB24YUwe3ZwD3osFm59kiRJklRZGdRVTEFBsMXarbfCvHnQvj0sXBgE8wMOgGefDbtCSZIkSarcDOoCgi3WpkwJtlhbtiwYS0mBzp2DBeP22y/c+iRJkiSpqjCoV3EbN8KDD8JddxVtsZaaCpdcAoMGQcOG4dYnSZIkSVWNQb2KWrMG7r0X7r8fNmwIxpo0gSuvDO5Fr1Mn1PIkSZIkqcoyqFcxn30Gt98Ojz0WTGkHaN0arr0WzjnH1dslSZIkKWwG9SrmzjvhgQeCx506wZAh8OtfQzU36pMkSZKkSDCoV2LxOLz+OjRoAEcfHYxdfTUsXw7XXBNsu+Y2a5IkSZIULV5HrcTGjIGTT4Ybbigaa94c/v1v6N7dkC5JkiRJUWRQr0S2bIG1a4uO+/WDWrXg4IOD/dElSZIkSdFnUK8EcnLg1luhRQsYPLhovG1bWL0axo/3HnRJkiRJqii8R70CW7UK7r4bJk4M9kMHePPN4Mp6zZrBsdusSZIkSVLF4nXWiFu4MMaIEV1ZuLDohvJly+CCC4Ir6LfdFoT0o46CJ54IntsR0iVJkiRJFY9X1CNu8uQY7713EFOmbCcWC6a4/7//F6zoDvDzn8N118Gppzq9XZIkSZIqA4N6BH3+OaxbF6zK/swzQfp+8MFqTJhQdE7fvkFA79o1pCIlSZIkSQlhUI+g5s1LjuXnF99L7V//Kp9aJEmSJEnly8nSETR5MlQv/CeU4gG9evXgeUmSJElS5eQV9Qg655xga7WOHUs+N28edOhQ/jVJkiRJksqHV9Qjrlq1eLFfJUmSJEmVm1fUI6pBA2jUCA4+OE6nTu8wf/4xfPVVjAYNwq5MkiRJkpRIBvWIOuQQWLECYrHtvPTS59x991HE49VISQm7MkmSJElSIjn1PcJSUoIt2iD41ZAuSZIkSZWfQV2SJEmSpAgxqEuSJEmSFCEGdUmSJEmSIsSgLkmSJElShBjUJUmSJEmKEIO6JEmSJEkRYlCXJEmSJClCDOqSJEmSJEWIQV2SJEmSpAgxqEuSJEmSFCEGdUmSJEmSIsSgLkmSJElShBjUJUmSJEmKEIO6JEmSJEkRUj3sAsIQj8cByM3NDbmSH5efn8/mzZvJzc0lOTk57HKkEuxRRZ09qqizRxV19qiirqL06I78uSOP7kmVDOobN24EoGnTpiFXIkmSJEmqSjZu3Ehqauoez4nF9ybOVzIFBQWsWrWKAw44gFgsFnY5e5Sbm0vTpk358ssvqVOnTtjlSCXYo4o6e1RRZ48q6uxRRV1F6dF4PM7GjRtp0qQJ1art+S70KnlFvVq1ahxyyCFhl1EqderUiXTTSfaoos4eVdTZo4o6e1RRVxF69MeupO/gYnKSJEmSJEWIQV2SJEmSpAgxqEdcSkoKI0eOJCUlJexSpF2yRxV19qiizh5V1NmjirrK2KNVcjE5SZIkSZKiyivqkiRJkiRFiEFdkiRJkqQIMahLkiRJkhQhBnVJkiRJkiLEoC5JkiRJUoQY1MvZ/fffT4sWLahZsyYdO3bkv//9727PfeONN4jFYiV+Pvzww2LnPfvssxx55JGkpKRw5JFHMnXq1ER/DFViZd2jjz/++C7P2bJlS3l8HFVCpelRgLy8PIYPH86hhx5KSkoKhx9+OI8++mixc/weVVkq6x71e1RlrTQ9OnDgwF3231FHHVXsPL9HVZbKukcr4veoQb0cPfPMM1xxxRUMHz6ct99+mxNOOIHevXvzxRdf7PF1y5YtY/Xq1YU/rVq1Knxuzpw5nH322WRmZvLOO++QmZlJv379mDdvXqI/jiqhRPQoQJ06dYo9v3r1amrWrJnIj6JK6qf0aL9+/Xj11Vd55JFHWLZsGX/7299o06ZN4fN+j6osJaJHwe9RlZ3S9ug999xTrO++/PJL6tWrx1lnnVV4jt+jKkuJ6FGogN+jcZWbTp06xS+66KJiY23atIkPGTJkl+e//vrrcSC+fv363b5nv3794r169So21rNnz3j//v33uV5VPYno0cceeyyemppahlWqKittj7700kvx1NTU+DfffLPb9/R7VGUpET3q96jKUml79IemTp0aj8Vi8RUrVhSO+T2qspSIHq2I36NeUS8nW7duZeHChWRkZBQbz8jIYPbs2Xt8bfv27WncuDEnn3wyr7/+erHn5syZU+I9e/bs+aPvKf1QonoUYNOmTRx66KEccsgh9OnTh7fffrtMa1fV8FN69Pnnn+e4445j3LhxHHzwwRxxxBFcffXVfP/994Xn+D2qspKoHgW/R1U29uXv+h0eeeQRevTowaGHHlo45veoykqiehQq3vdo9bALqCrWrVvH9u3badiwYbHxhg0bkp2dvcvXNG7cmIceeoiOHTuSl5fHU089xcknn8wbb7zBiSeeCEB2dnap3lPanUT1aJs2bXj88cdp164dubm53HPPPXTr1o133nmnxBR5aU9+So9+9tlnzJo1i5o1azJ16lTWrVvHxRdfzLffflt4D7DfoyoriepRv0dVVn5Kj+5s9erVvPTSS/z1r38tNu73qMpKonq0In6PGtTLWSwWK3Ycj8dLjO3QunVrWrduXXicnp7Ol19+ye23314Ygkr7ntKPKese7dKlC126dCk8p1u3bnTo0IHx48dz7733JuATqLIrTY8WFBQQi8WYMmUKqampANx5552ceeaZ3Hfffey3336lfk/px5R1j/o9qrL2U7/zHn/8cQ488EBOP/30MntPaVfKukcr4veoU9/LSVpaGklJSSX+Jejrr78u8S9Ge9KlSxc+/vjjwuNGjRrt83tKkLge/aFq1apx/PHH7/EcaVd+So82btyYgw8+uDAAAbRt25Z4PM7KlSsBv0dVdhLVoz/k96h+qn35uz4ej/Poo4+SmZlJjRo1ij3n96jKSqJ69IcqwveoQb2c1KhRg44dOzJjxoxi4zNmzKBr1657/T5vv/02jRs3LjxOT08v8Z7Tp08v1XtKkLge/aF4PM7ixYv3eI60Kz+lR7t168aqVavYtGlT4dhHH31EtWrVOOSQQwC/R1V2EtWjP+T3qH6qffm7fubMmXzyySecf/75JZ7ze1RlJVE9+kMV4nu0/Nevq7qefvrpeHJycvyRRx6Jf/DBB/ErrrgiXrt27cIVCYcMGRLPzMwsPP+uu+6KT506Nf7RRx/FlyxZEh8yZEgciD/77LOF57z55pvxpKSk+C233BJfunRp/JZbbolXr149Pnfu3HL/fKr4EtGjo0aNik+bNi3+6aefxt9+++34H/7wh3j16tXj8+bNK/fPp4qvtD26cePG+CGHHBI/88wz4++//3585syZ8VatWsUvuOCCwnP8HlVZSkSP+j2qslTaHt3h3HPPjXfu3HmX7+n3qMpSInq0In6PGtTL2X333Rc/9NBD4zVq1Ih36NAhPnPmzMLnzjvvvPhJJ51UeHzrrbfGDz/88HjNmjXjdevWjf/85z+P//vf/y7xnv/4xz/irVu3jicnJ8fbtGlTLCRJpVXWPXrFFVfEmzVrFq9Ro0b8oIMOimdkZMRnz55dXh9HlVBpejQej8eXLl0a79GjR3y//faLH3LIIfHBgwfHN2/eXOwcv0dVlsq6R/0eVVkrbY9u2LAhvt9++8Ufeuih3b6n36MqS2XdoxXxezQWj8fjYV/VlyRJkiRJAe9RlyRJkiQpQgzqkiRJkiRFiEFdkiRJkqQIMahLkiRJkhQhBnVJkiRJkiLEoC5JkiRJUoQY1CVJkiRJihCDuiRJkiRJEWJQlyRJkiQpQgzqkiRJkiRFiEFdkiRJkqQI+f+kOmlN53GgGQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 1200x600 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "acb = [a, c, b]\n",
    "x = np.linspace(a, b)\n",
    "plt.figure(figsize=(12,6))\n",
    "plt.plot(acb, f(acb), 'b*', x, f(x), 'b-.')\n",
    "plt.plot([a, b], [0, 0], 'g')\n",
    "plt.grid(True);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## A first algorithm for the bisection method\n",
    "\n",
    "Now it is time to dispense with the graphs, and describe the procedure in mathematical terms:\n",
    "- if $f(a)$ and $f(c)$ have opposite signs, the root is in interval $[a, c]$, which becomes the new version of interval $[a, b]$.\n",
    "- otherwise, $f(c)$ and $f(b)$ have opposite signs, so the root is in interval $[c, b]$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Pseudo-code for describing algorithms\n",
    "\n",
    "As a useful bridge from the mathematical desciption of an algorithm with words and formulas to actual executable code,\n",
    "these notes will often describe algorithms in *pseudo-code* —\n",
    "a mix of words and mathematical formulas with notation that somewhat resembles code in a language like Python.\n",
    "\n",
    "This is also preferable to going straight to code in a particular language (such as Python) because it makes it easier if, later, you wish to implement algorithms in a different programming language.\n",
    "\n",
    "Note well one feature of the pseudo-code used here:\n",
    "**assignment** is denoted with a left arrow:\n",
    "\n",
    "$x \\leftarrow a$\n",
    "\n",
    "is the instruction to cause the value of variable `x` to become the current value of a.\n",
    "\n",
    "This is to distinguish from\n",
    "\n",
    "$x = a$\n",
    "\n",
    "which is a **comparison**: the true-or-false assertion that the two quantities _already_ have the same value.\n",
    "\n",
    "Unfortunately however, Python (like most programming languages) does not use this notation:\n",
    "instead assignment is done with `x = a` so that asserting equality needs a differnt notation:\n",
    "this is done with `x == a`; note well that double equal sign!\n",
    "\n",
    "Also, the pseudo-code marks the end of blocks like `if`, `for` and `while` with a lines `end`.\n",
    "Many programming languages do something like this, but Python does not:\n",
    "instead it uses only the end of indentation as the indication that a block is finished."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "With those notational issues out of the way,\n",
    "the key step in the bisection strategy is the update of the interval:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "```{prf:algorithm} one step of bisection\n",
    ":label: bisection-step\n",
    "\n",
    "$\\displaystyle c \\leftarrow \\frac{a + b}{2}$\n",
    "<br>\n",
    "if $f(a) f(c) < 0$ then:\n",
    "<br>\n",
    "$\\quad$ $b \\leftarrow c$\n",
    "<br>\n",
    "else:\n",
    "<br>\n",
    "$\\quad$ $a \\leftarrow c$\n",
    "<br>\n",
    "end\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This needs to be repeated a finite number of times, and the simplest way is to specify the number of iterations.\n",
    "(We will consider more refined methods soon.)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "```{prf:algorithm} bisection, first version\n",
    ":label: bisection-for\n",
    "\n",
    "- Get an initial interval $[a, b]$ with a sign-change: $f(a) f(b) < 0$.\n",
    "\n",
    "- Choose $N$, the number of iterations.\n",
    "\n",
    "- for i from 1 to N:\n",
    "<br>\n",
    "$\\quad$ $\\displaystyle c \\leftarrow \\frac{a + b}{2}$\n",
    "<br>\n",
    "$\\quad$ if $f(a) f(c) < 0$ then:\n",
    "<br>\n",
    "$\\quad$$\\quad$ $b \\leftarrow c$\n",
    "<br>\n",
    "$\\quad$ else:\n",
    "<br>\n",
    "$\\quad$$\\quad$ $a \\leftarrow c$\n",
    "<br>\n",
    "$\\quad$ end\n",
    "<br>\n",
    "end \n",
    "\n",
    "- The approximate root is the final value of $c$.\n",
    "```"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A Python version of the iteration is not a lot different:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "    for i in range(N):\n",
    "        c = (a+b)/2\n",
    "        if f(a) * f(c) < 0:\n",
    "            b = c\n",
    "        else:\n",
    "            a = c"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "(If you wish to review for loops in Python, see the Python Review section on\n",
    "[*Iteration with for*](../python-tutorial/iteration-with-for.ipynb))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Exercise 1\n",
    "\n",
    "Create a Python function `bisection1` which implements the first algorithm for bisection abive,\n",
    "which performd a fixed number $N$ of iterations;\n",
    "the usage should be:\n",
    "`root = bisection1(f, a, b, N)`\n",
    " \n",
    "Test it with the above example:\n",
    "$f(x) = x - \\cos x = 0$, $[a, b] = [-1, 1]$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "(If you wish to review the defining and use of functions in Python, see the Python Review section on\n",
    "[Defining and Using Python Functions](../python-tutorial/functions.ipynb))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Error bounds, and a more refined algorithm\n",
    "\n",
    "The above method of iteration for a fixed number of times is simple, but usually not what is wanted in practice.\n",
    "Instead, a better goal is to get an approximation with a guaranteed maximum possible error:\n",
    "a result consisting of an approximation $\\tilde{r}$ to the exact root $r$ and also a bound $E_{max}$ on the maximum possible error; a guarantee that $|r - \\tilde{r}| \\leq E_{max}$.\n",
    "To put it another way, a guarantee that the root $r$ lies in the interval $[\\tilde{r} - E_{max}, \\tilde{r} + E_{max}]$.\n",
    "\n",
    "In the above example, each iteration gives a new interval $[a, b]$ guaranteed to contain the root,\n",
    "and its midpoint $c = (a+b)/2$ is with a distance $(b-a)/2$ of any point in that interval, so at each iteration, we can have:\n",
    "- $\\tilde{r}$ is the current value of $c = (a+b)/2$\n",
    "- $E_{max} = (b-a)/2$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Error tolerances and stopping conditions\n",
    "\n",
    "The above algorthm can *passively* state an error bound, but it is better to be able to solve to a desired degree of accuracy;\n",
    "for example, if we want a result \"accurate to three decimal places\", we can specify $E_{max} \\leq 0.5 \\times 10^{-3}$.\n",
    "\n",
    "So our next goal is to *actively* set an accuracy target or *error tolerance* $E_{tol}$ and keep iterating until it is met.\n",
    "This can be achieved with a `while` loop; here is a suitable algorithm:"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "```{prf:algorithm} bisection with error tolerance\n",
    ":label: bisection-while\n",
    "\n",
    "- Input function $f$, interval endpoints $a$ and $b$, and an error tolerance $E_{tol}$\n",
    "\n",
    "- Evaluate $E_{max} = (b-a)/2$\n",
    "\n",
    "- while $E_{max} > E_{tol}$:\n",
    "<br>$\\quad c \\leftarrow (a+b)/2$\n",
    "<br>$\\quad$ if $f(a) f(c) < 0$ then:\n",
    "<br>$\\quad\\quad b \\leftarrow c$\n",
    "<br>$\\quad$ else:\n",
    "<br>$\\quad\\quad a \\leftarrow c$\n",
    "<br>$\\quad$ end\n",
    "<br>$\\quad E_{max} \\leftarrow (b-a)/2$\n",
    "<br>end\n",
    "\n",
    "- Output $\\tilde{r} = c$ as the approximate root and $E_{max}$ as a bound on its absolute error.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "(If you wish to review while loops, see the Python Review section on\n",
    "[Iteration with while](../python-tutorial/iteration-with-while.ipynb))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Exercise 2\n",
    "\n",
    "Create a Python function implementing this better algorithm, with usage\n",
    "`root = bisection2(f, a, b, E_tol)`\n",
    "\n",
    "Test it with the above example: $f(x) = x - \\cos x$, $[a, b] = [-1, 1]$,\n",
    "this time accurate to within $10^{-4}$.\n",
    "\n",
    "Use the fact that there is a solution in the interval $(-1, 1)$."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "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.9.18"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
