From 026413dbd493d4ce3f955755c90d5a391d7f1744 Mon Sep 17 00:00:00 2001 From: Roger Labbe Date: Sun, 11 Jan 2015 00:13:12 -0800 Subject: [PATCH] Added Adaptive Filtering chapter. Still a lot of work to be done on it. This is just an initial commit. --- .../Extended_Kalman_Filters.ipynb | 2 +- .../Adaptive_Filtering.ipynb | 1097 +++++++++++++++++ README.md | 4 + report.tplx | 2 +- table_of_contents.ipynb | 11 +- 5 files changed, 1110 insertions(+), 6 deletions(-) create mode 100644 15_Adaptive_Filtering/Adaptive_Filtering.ipynb diff --git a/09_Extended_Kalman_Filters/Extended_Kalman_Filters.ipynb b/09_Extended_Kalman_Filters/Extended_Kalman_Filters.ipynb index 69716b2..2e84bc6 100644 --- a/09_Extended_Kalman_Filters/Extended_Kalman_Filters.ipynb +++ b/09_Extended_Kalman_Filters/Extended_Kalman_Filters.ipynb @@ -1054,7 +1054,7 @@ "\n", " for i in range(int(20/dt)):\n", " z = radar.get_range()\n", - " rk.update(array([[z]]), HJacobian_at, hx)\n", + " rk.update(array([z]), HJacobian_at, hx)\n", " rk.predict()\n", " \n", "Putting that all together along with some boilerplate code to save the results and plot them, we get" diff --git a/15_Adaptive_Filtering/Adaptive_Filtering.ipynb b/15_Adaptive_Filtering/Adaptive_Filtering.ipynb new file mode 100644 index 0000000..f5e6005 --- /dev/null +++ b/15_Adaptive_Filtering/Adaptive_Filtering.ipynb @@ -0,0 +1,1097 @@ +{ + "metadata": { + "name": "", + "signature": "sha256:f928a92fe960eb385a50a836c0b47cedfffbe6063f78ac7a646541eb2cb1a951" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[Table of Contents](http://nbviewer.ipython.org/github/rlabbe/Kalman-and-Bayesian-Filters-in-Python/blob/master/table_of_contents.ipynb)" + ] + }, + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Adaptive Filtering" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#format the book\n", + "%matplotlib inline\n", + "from __future__ import division, print_function\n", + "import sys\n", + "\n", + "sys.path.insert(0,'../code') # allow us to import book_format\n", + "import matplotlib.pyplot as plt\n", + "import book_format\n", + "book_format.load_style()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "html": [ + "\n", + "\n" + ], + "metadata": {}, + "output_type": "pyout", + "prompt_number": 1, + "text": [ + "" + ] + } + ], + "prompt_number": 1 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Introduction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "So far we have considered the problem of tracking objects that are well behaved in relation to our process model. For example, we can use a constant velocity model track an object moving in a straight line. So long as the object moves in a straight line at a reasonably constant speed, or varies it's track and/or velocity very slowly this filter will perform very well. Suppose instead that we are trying to track a manuevering target, by which I mean an object with control inputs, such as a car along a road, an aircraft in flight, and so on. In these situations the filters perform quite poorly. Alternatively, consider a situation such as tracking a sailboat in the ocean. Even if we model the control inputs we have no way to model the wind or the ocean currents. \n", + "\n", + "A first order approach to this problem is just to make the process noise $\\mathbf{Q}$ larger to account for the unpredictability of the system dynamics. While this can *work* in the sense of providing a non-diverging filter, the result is typically far from optimal. The larger $\\mathbf{Q}$ results in the filter giving more emphasis to the noise in the measurements. We will see an example of this shortly.\n", + "\n", + "So in this chapter we will discuss the concept of an *adaptive filter*. This means about what it sounds like. The filter will *adapt* itself when it detects dynamics that the process model cannot account for. I will start with an example of the problem, and then discuss and implement various adaptive filters.\n" + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Manuevering Targets" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "So let's begin by writing a simulation of a manuevering target. We are not interested in modeling anything with high fidelity, nor do we really care about 3 dimensions, so I will just implement a simple 2D model that you can provide steering inputs into. You can provide a new speed and/or direction, and it will modify its state to match." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import sin, cos, radians\n", + "\n", + "def angle_between(x,y):\n", + " return min(y-x, y-x+360, y-x-360, key=abs)\n", + "\n", + "class ManueveringTarget(object): \n", + " def __init__(self, x0, y0, v0, heading):\n", + " self.x = x0\n", + " self.y = y0\n", + " self.vel = v0\n", + " self.hdg = heading\n", + " \n", + " self.cmd_vel = v0\n", + " self.cmd_hdg = heading\n", + " self.vel_step = 0\n", + " self.hdg_step = 0\n", + " self.vel_delta = 0\n", + " self.hdg_delta = 0\n", + " \n", + " \n", + " def update(self):\n", + " vx = self.vel * cos(radians(90-self.hdg))\n", + " vy = self.vel * sin(radians(90-self.hdg))\n", + " self.x += vx\n", + " self.y += vy\n", + " \n", + " if self.hdg_step > 0:\n", + " self.hdg_step -= 1\n", + " self.hdg += self.hdg_delta\n", + "\n", + " if self.vel_step > 0:\n", + " self.vel_step -= 1\n", + " self.vel += self.vel_delta\n", + " return (self.x, self.y)\n", + " \n", + "\n", + " def set_commanded_heading(self, hdg_degrees, steps):\n", + " self.cmd_hdg = hdg_degrees\n", + " self.hdg_delta = angle_between(self.cmd_hdg, self.hdg) / steps\n", + " if abs(self.hdg_delta) > 0:\n", + " self.hdg_step = steps\n", + " else:\n", + " self.hdg_step = 0\n", + " \n", + " \n", + " def set_commanded_speed(self, speed, steps):\n", + " self.cmd_vel = speed\n", + " self.vel_delta = (self.cmd_vel - self.vel) / steps\n", + " if abs(self.vel_delta) > 0:\n", + " self.vel_step = steps\n", + " else:\n", + " self.vel_step = 0\n", + " " + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 2 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now let's implement a simulated sensor with noise." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from numpy.random import randn\n", + "\n", + "class NoisySensor(object):\n", + " def __init__(self, noise_factor=1):\n", + " self.noise_factor = noise_factor\n", + "\n", + " def sense(self, pos):\n", + " return (pos[0] + randn()*self.noise_factor, \n", + " pos[1] + randn()*self.noise_factor)" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 3 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now let's generate a track and plot it to test that everything is working and to see what we will be trying to track. I'll put the data generation in a function so we can create paths of different lengths (why will be clear soon)." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from numpy import array\n", + "\n", + "noise_factor = 2.\n", + "\n", + "def generate_data(steady_count, noise_factor):\n", + " t = ManueveringTarget(x0=0, y0=0, v0=0.3, heading=0)\n", + " xs = []\n", + " ys = []\n", + "\n", + " for i in range(30):\n", + " x,y = t.update()\n", + " xs.append(x)\n", + " ys.append(y)\n", + "\n", + " t.set_commanded_heading(310, 25)\n", + " t.set_commanded_speed(1, 15)\n", + "\n", + " for i in range(steady_count):\n", + " x,y = t.update()\n", + " xs.append(x)\n", + " ys.append(y)\n", + "\n", + " ns = NoisySensor(noise_factor=noise_factor)\n", + " pos = array(list(zip(xs, ys)))\n", + " zs = array([ns.sense(p) for p in pos])\n", + " return pos, zs\n", + "\n", + "pos, zs = generate_data(50, noise_factor)\n", + "plt.plot(*zip(*pos))\n", + "plt.axis('equal')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\nAAAAAElFTkSuQmCC\n", + "text": [ + "" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And here is the track vs the simulated sensor readings." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "plt.plot(*zip(*pos), lw=4, label='track')\n", + "plt.plot(*zip(*zs), label='measurements')\n", + "plt.axis('equal')\n", + "plt.legend()\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "iVBORw0KGgoAAAANSUhEUgAAAx0AAAGNCAYAAAB0YBz5AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlcVXX+x/HX94Jw2VEUcV9BXEpNKy2X1NQ0s6ysNJua\nSmuyRqsZp13tZ5plju2LM1NOpqXt5RLmuGaLlJkrbriiuAECst/v74+rV2+45kUQ3s/H4z7kfs/3\nnPM5HBDefM/3HGOttYiIiIiIiJQQR2kXICIiIiIi5ZtCh4iIiIiIlCiFDhERERERKVEKHSIiIiIi\nUqIUOkREREREpEQpdIiIiIiISIlS6BARERERkRLl09AxatQoHA6H16tmzZrF+tSqVYvg4GC6dOnC\n2rVrfVmCiIiIiIiUMT4f6YiPj2fPnj2e16pVqzzLxo8fz8SJE3nttddYvnw50dHRdO/enaysLF+X\nISIiIiIiZYTPQ4efnx/R0dGeV1RUFADWWiZNmsTjjz9Ov379aN68OVOmTCEzM5Np06b5ugwRERER\nESkjfB46tmzZQq1atWjYsCEDBgwgOTkZgOTkZFJTU+nRo4enr9PppFOnTixbtszXZYiIiIiISBnh\n78uNtWvXjilTphAfH09qaipjxozhiiuuYM2aNezZsweA6tWre60THR1NSkqKV1tGRoYvyxIRERER\nkfMkIiKiWJtPQ8c111zj+bhFixa0b9+eBg0aMGXKFC6//PKTrmeM8WUZIiIiIiJShpToLXODg4Np\n3rw5mzZtokaNGgCkpqZ69UlNTSUmJqYkyxARERERkVLk05GO38vNzWXdunV07dqVBg0aEBMTQ0JC\nAm3atPEsX7p0KRMmTDjpNk40PFOeJSYm0rZt29IuQ0qIzm/5pXNbvun8ll86t+Wbzu/5c7rpET4d\n6fjb3/7G4sWLSU5O5scff+Tmm28mJyeHO++8E4Dhw4czfvx4PvvsM1avXs1dd91FWFgYAwcO9GUZ\nIiIiIiJShvh0pGPXrl0MGDCA/fv3U61aNdq3b88PP/xAnTp1ABgxYgQ5OTkMHTqUtLQ02rVrR0JC\nAiEhIb4sQ0REREREyhCfho7p06efts/IkSMZOXKkL3crIiIiIiJlWIlOJBcREREREVHoEBERERGR\nEqXQISIiIiIiJapEb5krIiIiUtG4XC7y8/NLuwwB6tWrR25ubmmXccELCAjA4Ti3sQqFDhEREREf\ncblc5OXl4XQ6McaUdjkVntPpLO0SLnjWWnJzcwkMDDyn4KHLq0RERER8JD8/X4FDyhVjDE6n85xH\n7xQ6RERERHxIgUPKG198TSt0iIiIiIhIiVLoEBERERGREqXQISIiIiIiJUqhQ0RERETKvFGjRuFw\nONi7d29plyJ/gEKHiIiIiJzWsmXLGD16NBkZGaVdilyAFDpERERE5LQUOuRcKHSIiIiIyBmz1p62\nT05OznmoRC4kCh0iIiIickqjRo1ixIgRADRo0ACHw4HD4WDRokXUr1+fXr16MX/+fC6//HKCgoJ4\n4YUXAPjyyy+57rrrqFOnDk6nk/r16zNixAjy8vKK7WPDhg0MGDCA6OhogoKCiIuL4+GHHz5lXSkp\nKTRr1oy4uDh27tzp+wMXn/Ev7QJEREREKqrW728ssW2vuCPWZ9u66aab2LhxI9OnT2fSpElUrVoV\ngKZNm2KMYdOmTfTv358hQ4YwePBg6tatC8B7771HUFAQw4YNIyIigu+//55//vOf7Nixg+nTp3u2\nv2bNGq688kr8/f0ZMmQIDRs2JDk5mRkzZvDPf/7zhDVt27aNbt264XQ6WbJkCdWrV/fZ8YrvKXSI\niIiIyClddNFFtG7dmunTp3PDDTd4QgW4L7favHkzX375JX369PFa74MPPiAoKMjzfvDgwcTGxvLU\nU0/x4osvUrt2bQCGDh2Ky+Xi559/pl69ep7+zz333Anr2bRpE926dSMqKop58+YRFRXly8OVEqDL\nq0RERETknNSpU6dY4AA8gcPlcpGRkcH+/fu58sorsdayYsUKAPbt28fixYu56667vALHyaxdu5ZO\nnTpRo0YNFixYoMBxgVDoEBEREZFz0rBhwxO2r169mt69exMWFkblypWJjo7mqquuAvDcBWvLli0A\ntGjR4oz21bdvX4KDg/n222+JiIg49+LlvNDlVSIiIiKlxJfzLkrT8ZdQHZWRkUGXLl0ICwtj7Nix\nNG7cmKCgIHbu3Mldd92Fy+X6Q/vq378/7777Lu+99x4PPvjguZYu54lCh4iIiIicljHmrPovWLCA\nAwcO8Omnn9KxY0dP+7x587z6NWrUCIBVq1ad0XbHjRuH0+lk2LBhhIaGctddd51VXVI6dHmViIiI\niJxWSEgIAAcPHjyj/n5+fgBeIxoul4uJEyd69atatSqdO3fmvffeY+vWrV7LTvZMkNdff5077riD\n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\nv39/O2bMGGstY1vT3XPPPfass86qtJ7xDR886QgT+/fv14gRIzRlypRyO7dL3vLCDRo08C03LEnp\n6emqX7++MjIyQtlV/Ez5+fmqV6+eYmJiJDG2NVlRUZGWLFmiQYMG+ZUPGjRICxcurKZeIRD27dsn\n13XVqFEjSdKGDRuUm5vrN9ZRUVHq27cvY11DjB49Wpdffrn69esnW2Y6K2Nbs7333nvq2bOnhg8f\nrqSkJHXr1k0vvPCCr57xDR+EjjBx/fXXa+jQoTr//PMrrM/JySkXRowxSkxMVE5OTii6iADYu3ev\n7r33Xo0ePVqO4/34MbY1165du1RcXKykpCS/csau5rv11lvVrVs3338MODqejHXNNGXKFK1fv17j\nx4+X5P/6MmNbs61fv16TJk1S27ZtNWvWLN166626++67fcGD8Q0fhI4gGjdunBzHqfLPvHnz9MYb\nb+jbb7/VY489Jkm+/wJjWVgsbB3L2P5wEltBQYGGDRumlJQU31gDCD+33367Fi5cqGnTppWbW1eR\nY2mD6rNmzRr96U9/0j/+8Q/fnElr7TH9G8vYhj/XddW9e3dNmDBBp512mq6++mrdcsstfk87KsP4\nhlbANgdEeWPHjvXtUVKZlJQUvfbaa1q5cqUaNGjgVzd8+HClp6dr/vz5Sk5O1s6dO/3qrbXasWOH\nkpOTA953VO1Yx/aogoICDR06VI7j6MMPP1RkZKSvjrGtuU466SRFREQoNzfXrzw3N1dNmzatpl7h\n5xg7dqzeeecdzZ07V61atfKVH/1ZzM3NVYsWLXzlubm5/JyGuYyMDO3atUudOnXylRUXF+uzzz7T\n5MmTtXz5ckmMbU3VrFkznXrqqX5lHTp0UHZ2tiR+dsMJoSOIEhISlJCQ8KPtJkyYoDvuuMN3bK1V\nly5d9OSTT+qiiy6SJPXp00cFBQXKyMjwPe7PyMjQgQMHlJ6eHpwbQKWOdWwlb77OkCFDZIzR//73\nP99cjqMY25orMjJS3bt316xZs3TZZZf5ymfPnq3LL7+8GnuGn+LWW2/Vv/71L82dO1ft2rXzq2vd\nurWSk5M1a9Ysde/eXZJUWFioBQsW6IknnqiO7uIYXXLJJerZs6fv2Fqra665Ru3atdMf//hHpaam\nMrY12JlnnqnVq1f7la1du9b3Hw342Q0j1TaFHVX64epV1lo7ZMgQ26VLF5uRkWEXLlxoO3fubC+8\n8MJq6iGOxb59+2zv3r1tp06dbFZWlt2+fbvvT1FRka8dY1tzTZ061UZGRtpXXnnFrly50t5yyy22\nYcOGNjs7u7q7huNw44032tjYWDtnzhy/n9OCggJfm0cffdTGxcXZf//733bZsmV2+PDhtnnz5n5t\nUDP069fP3nzzzb5jxrbmWrx4sa1bt66dMGGCzcrKsu+8846Ni4uzkyZN8rVhfMMDoSNMVRQ68vLy\n7FVXXWVjY2NtbGysHTlypM3Pz6+mHuJYzJ071xpjrOM41hjj++M4jp03b56vHWNbs02aNMm2atXK\n1qtXz6alpdnPPvusuruE41TRz6kxxj7wwAN+7e6//37btGlTGxUVZfv3729XrFhRTT3Gz1F2ydyj\nGNua66OPPrKnnXaajYqKsu3bt7fPP/98uTaMb/Uz1jJbGQAAAEDwsHoVAAAAgKAidAAAAAAIKkIH\nAAAAgKAidAAAAAAIKkIHAAAAgKAidAAAAAAIKkIHAAAAgKAidAAAAAAIqv8Hzb9piGUJkQIAAAAA\nSUVORK5CYII=\n", + "text": [ + "" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This may appear to be an extreme amount of noise, but it will allow us to see the effect of various design choices more easily.\n", + "\n", + "Now we can implement a Kalman filter to track this object. First let's implement a constant velocity filter. But let's make a simplification first. The *x* and *y* coordinates are independent, so we can track each independently. In the remainder of this chapter we will only track the *x* coordinate to keep the code and matrixes as small as possible. " + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from filterpy.kalman import KalmanFilter\n", + "from filterpy.common import Q_discrete_white_noise\n", + "\n", + "dt = 0.1\n", + "cvfilter = KalmanFilter(dim_x = 2, dim_z=1)\n", + "cvfilter.x = array([0., 0.])\n", + "cvfilter.P *= 3\n", + "cvfilter.R *= noise_factor\n", + "cvfilter.F = array([[1, dt],\n", + " [0, 1]], dtype=float)\n", + "cvfilter.H = array([[1, 0]], dtype=float)\n", + "\n", + "cvfilter.Q = Q_discrete_white_noise(dim=2, dt=dt, var=0.02)" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 6 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Just to be clear about the dimension reduction, if we wanted to track both *x* and *y* we would have written\n", + "\n", + " cvfilter = KalmanFilter(dim_x = 4, dim_z=2)\n", + " cvfilter.x = array([0., 0., 0., 0.])\n", + " cvfilter.P *= 300\n", + " cvfilter.R *= 1\n", + " cvfilter.F = array([[1, dt, 0, 0],\n", + " [0, 1, 0, 0],\n", + " [0, 0, 1, dt],\n", + " [0, 0, 0, 1]], dtype=float)\n", + " cvfilter.H = array([[1, 0, 0, 0],\n", + " [0, 0, 1, 0]], dtype=float)\n", + "\n", + " q = Q_discrete_white_noise(dim=2, dt=dt, var=0.020)\n", + " cvfilter.Q[0:2, 0:2] = q\n", + " cvfilter.Q[2:4, 2:4] = q" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# extract the x coordinates\n", + "import numpy as np\n", + "\n", + "xs = pos[:,0]\n", + "z_xs = zs[:,0]\n", + "# plot the results\n", + "kxs, _, _, _ = cvfilter.batch_filter(z_xs)\n", + "t = np.arange(0, len(z_xs) * dt, dt)\n", + "plt.plot(t, xs)\n", + "plt.plot(t, kxs[:,1], ls=':')\n", + "plt.xlabel('time (sec)')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\nAOVltlgIpz7Nt38bJHr3gzJukhaHhkGxKw6u+9hubpyFmYiIiG5pLC5IFyL+QSjvfaQNbXtsP2RZ\n8TX2ujHybAlkYz8PIQTkuVKHpk/KhLcd5kwgIiIiIudgcUG6aepALMuKYZ31GnDC1vdBni+HZYLW\nxEeeL4flhcFa3FAPS+okbRQmKSFP/ISrkWs/cej4rIx5FSKW410TERERGY3FBenP0xPiuTdssxYD\ngJRAjTbkKqQEqqu0uKwYyD+kNfkpL4N12vPa5ucrYP1LmhqLAU86jFAl2t0NEarNfkxERERExmBx\nQboTdwRAeeBRbYGvP5Ql/3SMP/6HFvsFQHltlhZXnYeIteuEXXoGcv0abUjYe2KgPPfGTcqeiIiI\niG4UR4uim04oCmD2cYy922ix2QeI6aHFkXdDvDlXO0BQKJSZS3Ub5YqIiIiIbg4WF3TLE/6BgH+g\n0WkQERER0TWwWRQREREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQUR\nEREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQURERER\nEemCxQUREREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQUREREREemC\nxQUREREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQUREREREemCxQUR\nEREREelCt+Kib9++UBTF4euZZ57R6/BERERERHSLc9frQEIIjB8/Hqmpqeoys9ms1+GJiIiIiOgW\np1txAdiKiZCQED0PSUREREREtwld+1ysXr0awcHBiI2NxZtvvomLFy/qeXgiIiIiIrqFCSml1ONA\nS5cuRVRUFMLCwrBv3z5MmTIF99xzD7799luH7SorK/U4HREREREROZmfn1+z65stLqZNm+bQh+JK\n/vWvf+FXv/rVZct37tyJhIQE7Nq1C3FxcepyFhdERERERLenn1VcnD17FmfPnm32AJGRkVfsuG21\nWmEymbBq1SoMHz5cXc7igoiIiIjo9nSt4qLZDt1BQUEICgq6oRPv3bsXFosFd91113UlRERERERE\ntydd+lzk5eVh5cqVePzxxxEUFIQDBw7g9ddfh4+PD7KzsyGE0CNXIiIiIiK6helSXJw8eRKjR4/G\nvn37cPHiRURGRmLw4MH44x//CH9/fz3yJCIiIiKiW5xuo0UREREREVHrpus8Fy2Rnp6ODh06wGw2\nIz4+Hlu3bnV2Cq1KVlYWhgwZgoiICCiKgoyMDKNTahVmz56NXr16wc/PDyEhIRgyZAj2799vdFou\nLy0tDd26dYOfnx/8/PyQmJiI9evXG51WqzJ79mwoioJXXnnF6FRc3vTp06EoisNXWFiY0Wm5vDNn\nzmDs2LEICQmB2WxGTEwMsrKyjE7LpUVFRV32s64oCgYPHmx0ai6toaEBU6dORXR0NMxmM6Kjo/Hu\nu+/CYrE0u59Ti4s1a9bgtddew7Rp07Bnzx4kJiZi4MCBOHHihDPTaFWqqqpw3333YeHChTCbzez/\n4iSbN2/G73//e2zfvh2bNm2Cu7s7BgwYgPLycqNTc2mRkZH44IMPkJOTg127dqF///4YNmwYcnNz\njU6tVdixYweWLl2K++67j79rnKRz584oKipSv/bu3Wt0Si6toqICffr0gRAC69evx6FDh/DRRx8h\nJCTE6NRc2q5duxx+znfv3g0hBEaOHGl0ai4tNTUVS5YsweLFi3H48GEsXLgQ6enpmD17drP7ObVZ\nVO/evdG9e3csWbJEXdaxY0c8/fTT15xPg34+X19fpKWl4Te/+Y3RqbQ6VVVV8PPzw5dffonHH3/c\n6HRalaCgIMyZMwfPP/+80am4tMrKSvTs2RPLli3D9OnT0bVrVyxatMjotFza9OnT8fnnn7OgcKKp\nU6diy5Yt2LJli9GptGqzZs3C/PnzcebMGZhMJqPTcVlPPPEE2rZti+XLl6vLxo4di/Lycnz11VdX\n3c9pby7q6uqwe/duPPLIIw7LH3nkEWzbts1ZaRAZ4vz587BarQgICDA6lVbDYrFg9erVqKmpueJE\nn6SvCRMmYPjw4UhKSgK78jlPXl4ewsPDER0djeTkZOTn5xudkkv74osvkJCQgJEjRyI0NBRxcXFI\nS0szOq1WRUqJZcuWYfTo0SwsbrKBAwdi06ZNOHz4MADgwIEDyMzMxKBBg5rdr9l5LvRUVlYGi8WC\n0NBQh+UhISEoKipyVhpEhkhJSUFcXBzuv/9+o1NxeXv37sX999+P2tpamM1mrF27Fp06dTI6LZe2\ndOlS5OXlYdWqVQDAJlFO8stf/hIZGRno3LkziouL8f777yMxMRH79+9HYGCg0em5pLy8PKSnp2Py\n5MmYOnUqcnJy1P5FL7/8ssHZtQ4bN25EQUEB30Y7wUsvvYSTJ0/i3nvvhbu7OxoaGjBt2jRMnDix\n2f2cVlwQtVaTJ0/Gtm3bsHXrVt50OUHnzp3x448/orKyEp999hlGjRqFzMxMxMfHG52aSzp8+DDe\neecdbN26FW5ubgBsTxb59uLme+yxx9TvY2Njcf/996NDhw7IyMjApEmTDMzMdVmtViQkJGDWrFkA\ngG7duuHo0aNIS0tjceEkS5cuRUJCArp27Wp0Ki5v0aJFWL58OVavXo2YmBjk5OQgJSUFUVFRGD9+\n/FX3c1px0bZtW7i5uaG4uNhheXFx8WWzeBO5ikmTJmHt2rXIzMxEVFSU0em0Ch4eHoiOjgYAxMXF\nITs7G2lpaQ5tRkk/27dvR1lZGWJiYtRlFosFW7ZswZIlS1BVVQUPDw8DM2w9vL29ERMTg2PHjhmd\nissKCwtDly5dHJZ17twZhYWFBmXUupSUlOCrr75Cenq60am0CrNmzcK0adMwYsQIAEBMTAyOHz+O\n2bNnN1tcOK3PhaenJ3r27IkNGzY4LN+4cSMSExOdlQaR06SkpGDNmjXYtGkTOnbsaHQ6rZbFYoHV\najU6DZf15JNPYt++fcjNzUVubi727NmD+Ph4JCcnY8+ePSwsnKimpgYHDx7kA7ubqE+fPjh06JDD\nsiNHjvDhkZOsWLECXl5eSE5ONjqVVkFKCUVxLBUURbnmm2mnNouaPHkyxowZg4SEBCQmJuLjjz9G\nUVHRNdtu0Y2rqqrC0aNHAdhe5x4/fhx79uxBUFAQIiMjDc7Odb388stYuXIlvvjiC/j5+an9inx9\nfeHj42Nwdq7r7bffxuDBgxEREYELFy5g1apV2Lx5M7755hujU3NZTXOK2PP29kZAQMBlT3hJX2+8\n8QaGDBmCyMhIlJSUYObMmaiursbYsWONTs1lTZo0CYmJiUhNTcWIESOQk5ODxYsXX3NoTvr5pJT4\n05/+hFGjRsHb29vodFqFYcOGYc6cOejQoQO6dOmCnJwcfPjhh9f+HSOdLD09XUZFRUmTySTj4+Pl\nli1bnJ1Cq5KZmSmFEFIIIRVFUb//7W9/a3RqLu0/r3fT14wZM4xOzaWNGzdOtm/fXppMJhkSEiIf\nfvhhuWHDBqPTanX69u0rX3nlFaPTcHmjRo2SYWFh0tPTU4aHh8unn35aHjx40Oi0XN7XX38tu3Xr\nJr28vGSnTp3k4sWLjU6pVdi0aZNUFEVmZ2cbnUqrcfHiRfn666/LqKgoaTabZXR0tHznnXdkbW1t\ns/s5dZ4LIiIiIiJyXU6doZuIiIiIiFwXiwsiIiIiItIFiwsiIiIiItIFiwsiIiIiItIFiwsiIiIi\nItIFiwsiIiIiItIFiwsiIiIiItIFiwsiIhfQt29f9OvXz+g0LnPq1CmYzWZkZmYalkNaWhrat2+P\nuro6w3IgImotWFwQEd0mtm3bhhkzZqCysvKydUIICCEMyKp5M2bMQPfu3Q0tfJ577jnU1tZiyZIl\nhuVARNRasLggIrpNNFdcbNy4ERs2bDAgq6srLS1FRkYGJk6caGgeXl5eGDt2LObPnw8ppaG5EBG5\nOhYXRES3mSvdILu7u8Pd3d2AbK5u5cqVAIAnn3zS4EyAkSNHorCwEJs2bTI6FSIil8bigojoNjB9\n+nS89dZbAIAOHTpAURQoioKsrCwAl/e5KCgogKIomDt3LtLT0xEdHQ0fHx8MGDAAhYWFsFqtmDlz\nJiIiIuDt7Y2hQ4fi7Nmzl513w4YNSEpKgq+vL3x9fTFw4EDk5ua2KOcvvvgCvXr1wh133OGwvLi4\nGL/73e8QGRkJLy8v3HnnnRg0aBAOHDhwQ+c+cuQIkpOTERISArPZjI4dO2LSpEkO2/To0QOBgYFY\nt25di3InIqIbc2s95iIioit66qmncPToUfz1r3/FggUL0LZtWwDAvffeq25zpT4Xq1evRm1tLV59\n9VWcO3cOH3zwAYYPH46+fftiy5YtmDJlCo4dO4ZFixZh8uTJyMjIUPddtWoVxowZg0ceeQRz5sxB\nTU0NPvnkEzz44IPIzs5Gp06drppvfX09srOzMWHChMvWPf3009i3bx9eeeUVdOjQASUlJcjKysLR\no0fRpUuX6zr3/v370adPH7i7u2PChAmIjo5Gfn4+1q5diw8//NDhvD169MD3339/HVediIiumyQi\notvCvHnzpBBCHj9+/LJ1SUlJsl+/fmqcn58vhRAyODhYVlZWqsunTp0qhRCya9eusqGhQV3+zDPP\nSE9PT1lTUyOllPLixYsyICBAPvfccw7nKS8vlyEhIfKZZ55pNtdjx45JIYRcuHDhZfsLIeT8+fOv\nuu/1nDspKUn6+vrKgoKCZvORUsoJEyZIk8l0ze2IiOjGsVkUEZELe+qppxyaJSUkJAAARo8eDTc3\nN4fl9fX1OHHiBABbB/GKigokJyejrKxM/WpoaMADDzxwzaFlm5pYBQQEOCw3m83w9PREZmYmysvL\nr7hvS89dWlqKrKwsjBs3Du3bt7/mtQgICEBdXR0uXrx4zW2JiOjGsFkUEZELa9eunUPs5+cHAIiM\njLzi8qYb/iNHjgAAHn744Sse174waY78j87nJpMJc+fOxRtvvIHQ0FD07t0bgwYNwpgxYxAREXFd\n587LywMAxMbGXlcut+KQvUREroLFBRGRC7taEXC15U034FarFQCQkZGB8PDw6z5vU5+QK72dSElJ\nwdChQ/Hll19i48aNmDlzJlJTU/HPf/4TSUlJP/vcV1NeXg6TyQQfHx/djklERI5YXBAR3Sac+cT9\n7rvvBmArEvr373/d+7dr1w7e3t7Iz8+/4vqoqCikpKQgJSUFp06dQvfu3TFr1iwkJSW1+NxN2+3d\nu7dFOeXn5zt0gCciIv2xzwUR0W2i6Yn7uXPnbvq5HnvsMfj7+yM1NRX19fWXrS8rK2t2f3d3d/Tu\n3RvZ2dkOy6urq1FdXe2wLDw8HMHBwerkgI8++miz5y4tLQVgKz6SkpKwYsUKFBQUOGzzn82xAGD3\n7t1ITExsNm8iIvp5+OaCiOg20atXLwDAlClTkJycDE9PTzz00EMIDg4GcOUb6hvl6+uLjz/+GM8+\n+yzi4uLUeSQKCwvxzTffIDY2FsuXL2/2GEOHDsWbb76JyspKtU/H4cOH0b9/f4wYMQJdunSByWTC\n+vXrcejQIcyfPx8AcMcdd7T43IsXL8YDDzyAnj174oUXXkCHDh1QWFiINWvWqH03AGDXrl0oLy/H\nsGHDdLtGRER0ORYXRES3iZ49e2L27NlIT0/H+PHjIaVEZmYmgoODIYRocbOpq233n8tHjBiBsLAw\npKamYv78+aipqUF4eDj69OmDiRMnXvM8zz77LN566y2sW7cO48aNA2BrLjV69Gh89913WLVqFYQQ\n6NSpEz799FN1m+s5d2xsLHbs2IF3330XS5YsQXV1Ndq1a4chQ4Y45LJ27Vq0a9cOAwYMaNE1IiKi\nGyOkno+6iIiI7EycOBG5ubnYvn27YTnU1NQgKioKU6dOxauvvmpYHkRErQH7XBAR0U3z3nvvITc3\n95rzYtxMy5Ytg5eXF1588UXDciAiai345oKIiIiIiHTBNxdERERERKQLFhdERERERKQLFhdERERE\nRKQLFhdERERERKQLFhdERERERKQLFhdERERERKQLFhdERERERKSL/wPfva2TywcnZAAAAABJRU5E\nrkJggg==\n", + "text": [ + "" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can see from the plot that the Kalman filter was unable to track the change in heading. Recall from the **g-h Filter** chapter that this is because the filter is not modelling acceleration, hence it will always lag the input. The filter will eventually catch up with the signal if the signal enters a steady state. Let's look at that." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "# reinitialize filter\n", + "cvfilter.x = array([0., 0.])\n", + "\n", + "pos2, zs2 = generate_data(250, noise_factor)\n", + "xs2 = pos2[:,0]\n", + "z_xs2 = zs2[:,0]\n", + "t = np.arange(0, len(xs2) * dt, dt)\n", + "# plot the results\n", + "kxs2, _, _, _ = cvfilter.batch_filter(z_xs2)\n", + "\n", + "plt.plot(t, xs2, label='track')\n", + "plt.plot(t, kxs2[:,0], label='filter')\n", + "plt.xlabel('time (sec)')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "iVBORw0KGgoAAAANSUhEUgAAAyQAAAGkCAYAAADAJeH1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl0VWWe7//3Ppnnk0AGIBECBBJUEEFBFGRGEJkFCYqW\nlnZXW5a0Xddfe1ffxlVl27fu9da1uVVWV1eXSkESkBlkCgjIqAIKCCSMAWRImHJO5uTk7Of3x0GU\nVkuGE06Gz2utWkue8+yzv7v2IuSz9n6+j2WMMYiIiIiIiASAI9AFiIiIiIhIy6VAIiIiIiIiAaNA\nIiIiIiIiAaNAIiIiIiIiAaNAIiIiIiIiAaNAIiIiIiIiAaNAIiIiIiIiAXPdgeRf//Vfue+++4iL\niyMpKYkxY8Zw4MCB78x7/fXXadeuHZGRkQwaNIiDBw9e83ltbS0vvfQSiYmJREdHM3bsWM6cOXPr\nVyIiIiIiIk3OdQeSjz/+mJ///Ofs2LGDDRs2EBwczNChQyktLb065ze/+Q2//e1v+d3vfsfOnTtJ\nSkpi2LBhVFRUXJ0zY8YMFi9ezLx589iyZQtlZWWMHj0a27b9e2UiIiIiItLoWTe7U3tlZSVxcXEs\nW7aMRx99FGMMbdu25Re/+AWvvfYaADU1NSQlJfHWW2/xwgsv4Ha7SUpK4v3332fq1KkAnD59mvbt\n27N69WqGDx/uvysTEREREZFG76bXkJSVlWHbNvHx8QAUFRVRUlJyTagIDw9nwIABbN++HYDdu3fj\n8XiumZOamkpWVtbVOSIiIiIi0nIE3+yBL7/8Mj179uSBBx4AoLi4GIDk5ORr5iUlJXH27Nmrc4KC\ngmjVqtU1c5KTkykpKbn6Z7fbfbNliYiIiIhIAMXFxd3Q/JsKJK+88grbt29n69atWJb1o/OvZ46I\niIiIiLQ8N/zK1t///d8zf/58NmzYQIcOHa6Op6SkAFzzpOPrP3/9WUpKCl6vl0uXLl0zp7i4+Ooc\nERERERFpOW7oCcnLL7/MggUL2LhxI126dLnms/T0dFJSUsjPz6dXr16Ab1H71q1beeuttwDo1asX\nISEh5OfnX7OovbCwkH79+n3vOW/0kY80Xbt27aJ3796BLkNuM933lkf3vOXRPW+ZdN9blltZcnHd\ngeTFF19k7ty5LF26lLi4uKtrRmJiYoiKisKyLGbMmMGbb75JZmYmGRkZvPHGG8TExJCdnQ34wsVz\nzz3Hq6++SlJSEgkJCbzyyiv06NGDoUOH3vRFiIiIiIhI03TdgeQPf/gDlmUxZMiQa8Zff/11/vmf\n/xmAV199lerqal588UVKS0vp27cv+fn5REVFXZ3/9ttvExwczJQpU6iurmbo0KHMnTtX60xERERE\nRFqg6w4k17tx4cyZM5k5c+YPfh4aGsqsWbOYNWvW9Z5aRERERESaqZveh0RERERERORWKZCIiIiI\niEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjA\nKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCI\niIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiEjAKJCIiIiIiNxGxusNdAmN\nigKJiIiIiMhtYNfWcDxvDhefGYX75IlAl9NoBAe6ABERERGR5srYNnUH93ByzSoSdm+gfXUpAHsX\nL+Tev/9lgKtrHBRIRERERET8zFRVUL52GZ4VeTgvn6HTlfEi5x0UPfIsvceMCmh9jYkCiYiIiIiI\nn5hTx7i0NI+IrauIqqsGoDiiFZ9n9KfV4BHc99D9dA7WqolvUyAREREREbkFxuPB/mQDrmXzcB7d\nQ/yV8c9bZ3Gg7wTueXQEo1OisSwroHU2VgokIiIiIiI3wVSWU7NqAfXLc4ksv4QTqAwOJ7/Dw1QO\nmcCw/j25Lzok0GU2egokIiIiIiI3wBw/RNmaJYR8vIKw2ipCgWOxaazrNorkkWMY2S2FqBC9lnW9\nFEhERERERH6EcV3GbF5FZf4yIk8fJfrK+K7EO9nRdzI9hw3iZ2nROPRa1g1TIBERERER+R7G44Hd\nW/B+tByzeysO20sk4A6JYt0dD1H64GgGD7qPGfFhgS61SVMgERERERG5whgDxwsxG1fg3bQKR4Ub\nC/BaDram3MvHGYNpN2gwE7MSSYjQr9L+oP8XRURERKTFM9VVmM2rMWsXwvFCABzA0dg0VrQfyJG7\nhzC6Vzr/vUM0oUFaH+JPCiQiIiIi0mKZr45hVi/AbFoJVRUAuEKjWZP2EB+2H0ibu+8iu1s8/5AU\noba9DUSBRERERERaFGMM7PsUe9F7sO+zq+N7W3VlYcdh7Gj/AKO6JvK/MuNIiwkNYKUtgwKJiIiI\n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\nxo8fr/3792vp0qUyxuj+++/XxIkT9c9//rOuygAAAABwBamzQCIFAkhSUtJpt23fvl1Lly7VZ599\npr59+0qS5s2bp+uvv167du1Shw4d6rIUAAAAAFeAOp1DsmjRIiUmJiozM1OPPfaYysrKaretW7dO\n0dHRuvbaa2vbsrKyFBUVpXXr1tVlGQAAAACuEHV2hWT8+PFq27atUlJStHXrVs2YMUObN2/W0qVL\nJUl5eXlKTEwMOsayLCUlJSkvL++M78sck8ajffv29HcjRL83PvR540OfN070O87XWQPJk08+GTQn\n5HQ+/fRT3XDDDfrZz35W29alSxe1a9dOffr00caNG9WtW7e6qRYAAABAg3LWQDJt2jTdddddZ32D\n1NTU07b36NFDTqdTu3fvVrdu3ZScnKyCgoKgfYwxOnTokJKTky+wbAAAAAANwVkDSdOmTdW0adOL\neuMtW7bI5/OpRYsWkqRrr71WZWVlWrduXe08knXr1qm8vFxZWVlBx8bFxV3UOQEAAABcWSxjjLnU\nN9m7d6/eeecd3XjjjWratKm2bdumX/7yl4qKitL69etlWZYkaeTIkdq/f7/mz58vY4wmT56s9PR0\nffjhh5f8DwEAAABw5amTQLJ//37deeed2rp1q8rKypSamqqbbrpJTz31lOLj42v3Kyoq0kMPPVT7\n3JHRo0fr9ddfV2xs7KWWAAAAAOAKVCeBBAAAAAAuRp0+h6SuzJ07V2lpaYqIiFCvXr20Zs0au0tC\nPZk5c6YcDkfQKyUlxe6yUIdWrVqlUaNGqVWrVnI4HFqwYMEp+8ycOVMtW7ZUZGSkBg4cqG3bttlQ\nKerSufp90qRJp4z9H88nxJXjueeeU+/evRUXF6ekpCSNGjVK33zzzSn7MdYblvPpd8Z6wzJnzhz9\n5Cc/UVxcnOLi4pSVlaUlS5YE7XMx4/yyCySLFy/WI488oieffFIbN25UVlaWRowYodzcXLtLQz3p\n2LGj8vLyal9btmyxuyTUofLycl199dV69dVXFRERUTun7IQXXnhBL7/8sl5//XWtX79eSUlJGjJk\nSNCDVXHlOVe/W5alIUOGBI39H/9PDVeO//73v3rwwQe1bt06rVixQi6XS4MHD1ZhYWHtPoz1hud8\n+p2x3rCkpqbqxRdf1Ndff60vv/xSgwYN0s0336xNmzZJuoRxbi4zffr0MZMnTw5qa9++vZkxY4ZN\nFaE+PfXUUyYzM9PuMhAi0dHRZsGCBbU/+/1+k5ycbGbNmlXbVlFRYWJiYsy8efPsKBH14Mf9bowx\nd999t7nppptsqgj1rayszDidTvPRRx8ZYxjrjcWP+90Yxnpj0KRJEzN//vxLGueX1RWS6upqffXV\nVxo6dGhQ+9ChQ7V27VqbqkJ927t3r1q2bKn09HSNGzdO2dnZdpeEEMnOzlZ+fn7QmPd4PLrhhhsY\n8w2cZVlas2aNmjdvroyMDE2ePPmUZ1XhylVSUiK/36+EhARJjPXG4sf9LjHWGzKfz6dFixapsrJS\nN9xwwyWN88sqkBw+fFg+n0/NmzcPak9KSlJeXp5NVaE+XXPNNVqwYIGWLl2qP/zhD8rLy1NWVpaO\nHj1qd2kIgRPjmjHf+AwfPlx/+ctftGLFCs2ePVtffPGFBg0apOrqartLQx2YOnWqunfvXvvcMcZ6\n4/DjfpcY6w3Rli1bFB0dLY/Ho8mTJ+u9995TRkbGJY3zsz4YEahvw4cPr/0+MzNT1157rdLS0rRg\nwQJNmzbNxspgtx/POUDDcvvtt9d+36VLF/Xs2VNt2rTRv//9b91yyy02VoZLNX36dK1du1Zr1qw5\nr3HMWG8YztTvjPWGp2PHjtq8ebOKi4v1/vvv64477tDKlSvPesy5xvlldYWkWbNmcjqdys/PD2rP\nz8+vfeI7GrbIyEh16dJFe/bssbsUhEBycrIknXbMn9iGxqFFixZq1aoVY/8KN23aNC1evFgrVqxQ\n27Zta9sZ6w3bmfr9dBjrV76wsDClp6ere/fumjVrlq655hrNmTOn9rP6xYzzyyqQuN1u9ezZU8uW\nLQtqX758OUvENRKVlZXavn07AbSRSEtLU3JyctCYr6ys1Jo1axjzjUxBQYEOHDjA2L+CTZ06tfZD\naYcOHYK2MdYbrrP1++kw1hsen88nv99/SePcOXPmzJn1XOcFiY2N1VNPPaWUlBRFRETo2Wef1Zo1\na/T2228rLi7O7vJQxx599FF5PB75/X7t2rVLDz74oPbu3at58+bR3w1EeXm5tm3bpry8PL311lvq\n2rWr4uLi5PV6FRcXJ5/Pp+eff14ZGRny+XyaPn268vPzNX/+fLndbrvLx0U6W7+7XC498cQTio2N\nVU1NjTZu3Kj7779ffr9fr7/+Ov1+BfrFL36hP//5z3r//ffVqlUrlZWVqaysTJZlye12y7IsxnoD\ndK5+Ly8vZ6w3ML/61a9qP7fl5ubqlVde0cKFC/Xiiy+qXbt2Fz/O63spsIsxd+5c07ZtWxMeHm56\n9eplVq9ebXdJqCd33HGHSUlJMW6327Rs2dKMHTvWbN++3e6yUIdWrlxpLMsylmUZh8NR+/0999xT\nu8/MmTNNixYtjMfjMQMGDDDffPONjRWjLpyt3ysqKsywYcNMUlKScbvdpk2bNuaee+4x+/fvt7ts\nXKQf9/OJ19NPPx20H2O9YTlXvzPWG55JkyaZNm3amPDwcJOUlGSGDBlili1bFrTPxYxzyxhjQper\nAAAAAOCky2oOCQAAAIDGhUACAAAAwDYEEgAAAAC2IZAAAAAAsA2BBAAAAIBtCCQAAAAAbEMgAQAA\nAGAbAgkANCIDBgzQwIED7S7jFAcOHFBERIRWrlxpWw1z5sxRmzZtVF1dbVsNANAYEUgAoIFZu3at\nnn76aRUXF5+yzbIsWZZlQ1Vn9/TTT6tbt262hqX77rtPVVVVmjdvnm01AEBjRCABgAbmbIFk+fLl\nWrZsmQ1VnVlBQYEWLFigKVOm2FqHx+PR3XffrdmzZ8sYY2stANCYEEgAoIE63Ydql8sll8tlQzVn\n9s4770iSbrnlFpsrkW6//Xbl5ORoxYoVdpcCAI0GgQQAGpCZM2fq8ccflySlpaXJ4XDI4XBo1apV\nkk6dQ7Jv3z45HA698MILmjt3rtLT0xUVFaXBgwcrJydHfr9fzzzzjFq1aqXIyEiNHj1aR44cOeW8\ny5YtU//+/RUTE6OYmBiNGDFCmzZtOq+a//GPf6h3796KjY0Nas/Pz9f999+v1NRUeTweJScna+TI\nkdq2bdtFnXvXrl0aN26ckpKSFBERoQ4dOmjatGlB+/To0UNNmjTRBx98cF61AwAu3eX1ZzIAwCUZ\nM2aMdu/erXfffVevvPKKmjVrJknq1KlT7T6nm0OyaNEiVVVV6eGHH9bRo0f14osv6tZbb9WAAQO0\nevVqzZgxQ3v27NFrr72m6dOna8GCBbXHLly4UBMnTtTQoUP1/PPPq7KyUvPnz9f111+v9evXKyMj\n44z1er1erV+/XpMnTz5l29ixY7V161Y99NBDSktL06FDh7Rq1Srt3r1bnTt3vqBzf/PNN7ruuuvk\ncrk0efJkpaenKzs7W++9955+97vfBZ23R48e+uyzzy7gtw4AuCQGANCgvPTSS8ayLPPdd9+dsq1/\n//5m4MCBtT9nZ2cby7JMYmKiKS4urm1/4oknjGVZpmvXrqampqa2ffz48cbtdpvKykpjjDFlZWUm\nISHB3HfffUHnKSwsNElJSWb8+PFnrXXPnj3Gsizz6quvnnK8ZVlm9uzZZzz2Qs7dv39/ExMTY/bt\n23fWeowxZvLkySY8PPyc+wEA6ga3bAEANGbMmKBbpvr06SNJuvPOO+V0OoPavV6vcnNzJQUmyRcV\nFWncuHE6fPhw7aumpkb9+vU75zK+J27/SkhICGqPiIiQ2+3WypUrVVhYeNpjz/fcBQUFWrVqlSZN\nmqQ2bdqc83eRkJCg6upqlZWVnXNfAMCl45YtAIBat24d9HNcXJwkKTU19bTtJ0LCrl27JElDhgw5\n7fv+MMycjfnRBPzw8HC98MILevTRR9W8eXP17dtXI0eO1MSJE9WqVasLOvfevXslSZmZmRdUy+W4\nPDIANEQEEgDAGYPDmdpPfGj3+/2SpAULFqhly5YXfN4Tc1xOdxVk6tSpGj16tD788EMtX75czzzz\njGbNmqWPPvpI/fv3v+Rzn0lhYaHCw8MVFRVVZ+8JADgzAgkANDCh/Mt+u3btJAWCxaBBgy74+Nat\nWysyMlLZ2dmn3d62bVtNnTpVU6dO1YEDB9StWzf99re/Vf/+/c/73Cf227Jly3nVlJ2dHbQIAACg\nfjGHBAAamBN/2T969Gi9n2v48OGKj4/XrFmz5PV6T9l++PDhsx7vcrnUt29frV+/Pqi9oqJCFRUV\nQW0tW7ZUYmJi7QMfhw0bdtZzFxQUSAoElv79++tPf/qT9u3bF7TPj28Vk6SvvvpKWVlZZ60bAFB3\nuEICAA1M7969JUkzZszQuHHj5Ha79dOf/lSJiYmSTv8h/GLFxMTozTff1IQJE9S9e/fa53zk5OTo\n448/VmZmpt5+++2zvsfo0aP12GOPqbi4uHaOys6dOzVo0CDddttt6ty5s8LDw7VkyRLt2LFDs2fP\nliTFxsae97l///vfq1+/furZs6d+/vOfKy0tTTk5OVq8eHHtXBRJ+vLLL1VYWKibb765zn5HAICz\nI5AAQAPTs2dPPffcc5o7d67uvfdeGWO0cuVKJSYmyrKs876l60z7/bj9tttuU0pKimbNmqXZs2er\nsrJSLVu21HXXXacpU6ac8zwTJkzQ448/rg8++ECTJk2SFLiV684779Qnn3yihQsXyrIsZWRk6I9/\n/GPtPhdy7szMTH3++ef69a9/rXnz5qmiokKtW7fWqFGjgmp577331Lp1aw0ePPi8fkcAgEtnmbr8\nUxkAABdhypQp2rRpk9atW2dbDZWVlWrbtq2eeOIJPfzww7bVAQCNDXNIAAC2+81vfqNNmzad87kl\n9emtt96Sx+PRAw88YFsNANAYcYUEAAAAgG24QgIAAADANgQSAAAAALYhkAAAAACwDYEEAAAAgG0I\nJAAAAABsQyABAAAAYBsCCQAAAADb/H/39Q0hQrYOowAAAABJRU5ErkJggg==\n", + "text": [ + "" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The underlying problem is that our process model is correct for the steady state sections, but incorrect for when the object is manuevering. We can try to account for this by increasing the size of Q, like so." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "cvfilter.Q = Q_discrete_white_noise(dim=2, dt=dt, var=2.0) # var was 0.02\n", + "\n", + "# recompute track\n", + "cvfilter.x = array([0., 0.])\n", + "kxs2, _, _, _ = cvfilter.batch_filter(z_xs2)\n", + "\n", + "plt.plot(t, xs2, label='track')\n", + "plt.plot(t, kxs2[:,0], label='filter')\n", + "plt.legend(loc=4)\n", + "plt.xlabel('time (sec)')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\nERG5YnX8285qO/Z3o1pX2bE6dOhAx44dWbBgAUOGDPEnHFAxhetf//oXH3zwAbfddlvAfv/7v/9L\nSEiI//24ceNo3bo1Tz75JC+++CItWrQA4OGHH8bn8/HNN9+QkJDgr//ss89WGs+uXbvo168f0dHR\nLFu2jOjo6Cq71oulKVsiIiIiIjaLj48/IxkB/MmIz+cjPz+f3NxcevbsiTGG7777DoCcnBxWrlzJ\n6NGjA5KRs9m2bRs33ngjTZs2Zfny5bYmI6AREhERERG5glXlKIadkpOTKy3fsmULU6ZM4fPPPz9j\nofupu3Xt3r0bgJSUlAs61+DBg/F4PHzyySeEh4dfRtRVQyMkIiIiIiI2++W0rFPy8/NJS0vj+++/\nJzMzk//7v//jk08+4c033wQqRk0uxbBhw9i9e7f/OHbTCImIiIiISA2wLOui6i9fvpyjR4/yj3/8\ng969e/vLly1bFlCvVatWAGzevPmCjvvcc8/hdruZNGkS4eHhjB49+qLiqmoaIRERERERqQFhYWEA\nHDt27ILqO51OIHAkxOfzMXPmzIB6MTExpKam8uabb7Jnz56Az872zJPZs2czatQoxo0bxzvvvHOh\nl1AtNEIiIiIiIlIDbrjhBgCmTp3K8OHDcblc9O3b96z1e/XqRXR0NPfffz+PPPIIQUFBvPvuuxQW\nFp5R909/+hO9evWiU6dOPPTQQyQlJbF3714WLVrEjh07Kj3+G2+8QUFBASNHjiQsLIxBgwZVzYVe\nJI2QiIiIiIjUgE6dOvHcc8+xbds2xo4dy7333sv27dvPOpWrUaNGfPjhh8THx/P000/z/PPPc+21\n1/LXv/71jLopKSl8+eWX9O3bl7lz5zJp0iTeeecdBg8e7K9jWVbAuRwOBwsWLKBfv34MGzaMFStW\nVPk1XwjLXMiz62vYqTsGAERFRdkYidSk9evX07lzZ7vDkBqmdq9/1Ob1j9q8frrUdvd6vbjd7mqI\nSC7H+drlcn6/a4RERERERERso4RERERERERso4RERERERERso4RERERERERso4RERERERERso4RE\nRERERERso4RERERERERso4RERERERERso4RERERERERso4RERERERERso4RERERERERso4RERERE\nRERso4RERERERKSGfPfdd/Tu3ZuIiAgcDgdDhgzB4Qj8Sd6nTx/S0tJsirDmBdkdgIiIiIhIfeDz\n+bj77rsBmDlzJmFhYXz99ddYlhVQz7KsgLKioiJeeOEF0tLSSE1NrdGYa4ISEhERERGRGnDw4EF2\n7drFyy+/zLhx4wC4++67mT59ekA9Y0xAQlJYWMj//M//4HA46mRCoilbIiIiIiI14MiRIwBERkb6\ny5xOJy6X64L2N8ZUaTwlJSWUl5dX6TEvhRISEREREZFqNnr0aDp37gzAmDFjcDgcpKWlkZGRccYa\nkl/as2cPHo8HgGnTpuFwOHA4HIwZM8Zf59ChQzz44IPExcXhdrtp164dr732WsBxVqxYgcPh4K23\n3iIjI4OWLVsSGhrKgQMHquFqL46mbImIiIiIVLPx48fzq1/9iqeeeoqHHnqI3r1706RJE1atWnXO\n/TweD6+++ioTJkzgjjvu4I477gCgVatWQMWoS7du3TDGMHHiRDweD5988gn/8R//wdGjR/mv//qv\ngONlZmbidDqZPHkyxhjCwsKq54IvghISEREREblilQ/pWG3Hdi7+rsqO1a1bN4KCgnjqqafo3r07\nI0aMADhvQhIaGsrQoUOZMGEC11xzjX+/U5588klKS0vZvHkz0dHRAKSnp5Oenk5mZiYTJ04kKirK\nX7+goIDt27cTEhJSZdd2uTRlS0RERETkCmSM4d133+XWW2/FGENubq5/69+/P0VFRXz11VcB+9x3\n3321KhkBjZCIiIiIyBWsKkcxrjQ5OTkcP36cefPmMW/evDM+tyyLnJycgLJTU71qEyUkIiIiIiJX\nIJ/PB8CIESMYO3ZspXXatWsX8L62jY6AEhIRERERkVrt9AcnnhIbG0tERASlpaX07du3hqOqOlpD\nIiIiIiJSi4WGhgJw7NixgHKn08mdd97J4sWL2bRp0xn7nT5dq7bSCImIiIiISC3zy4cghoSE0L59\nexYuXEibNm1o3LgxycnJdOnSheeff54VK1bQvXt3xo0bR7t27cjLy2PDhg0sXryYoqIiG6/iwigh\nERERERGpIadPv7Is64LK5s2bx6OPPsrvfvc7iouLGT16NF26dCE2NpavvvqKZ555hsWLF/Pqq6/S\nuHFj2rVrx8yZM8957trCMlX9DPoqkJ+f73/9y/smS922fv16/xNMpf5Qu9c/avP6R21eP11qu3u9\nXtxudzVEJJfjfO1yOb/ftYZERERERERso4RERERERERso4RERERERERso4RERERERERso4RERERE\nRERso4RERERERERso4RERERERGqVWvhUinqtuttDCYmIiIiI1Boulwuv16ukpJYwxuD1enG5XNV2\nDj2pXURERERqDYfDQXBwMMXFxXaHIj8LDg7G4ai+cQwlJCIiIiJSqzgcDj2tvR7RlC0REREREbGN\nEhIREREREbFNlSUkffr0weFwBGwjRowIqJOXl8eoUaNo2LAhDRs25L777iM/P7+qQhARERERkStM\nla0hsSyLsWPHkpmZ6S8LCQkJqDNixAj279/PkiVLMMbw4IMPMmrUKD744IOqCkNERERERK4gVbqo\nPSQkBI/HU+ln27dvZ8mSJXzxxRd07doVgLlz59K7d2927NhBmzZtqjIUERERERG5AlTpGpKFCxcS\nGxtLSkoKv//97ykoKPB/tnbtWsLDw+nevbu/rEePHoSFhbF27dqqDENERERERK4QVTZCMmLECBIT\nE2nWrBlbtmxh6tSpbNq0iSVLlgCQnZ1NbGxswD6WZeHxeMjOzj7rcbXGpP5o3bq12rseUrvXP2rz\n+kdtXj+p3eVCnTMhefLJJwPWhFRmxYoV3HjjjYwbN85f1r59e1q1akWXLl3YsGED1113XdVEKyIi\nIiIidco5E5LJkydz3333nfMA8fHxlZZff/31OJ1Odu7cyXXXXUdcXBw5OTkBdYwxHDlyhLi4uIsM\nW0RERERE6oJzJiTR0dFER0df0oE3b95MeXk5TZs2BaB79+4UFBSwdu1a/zqStWvXUlhYSI8ePQL2\njYqKuqRzioiIiIjIlcUyxpjLPcju3bv5+9//zq233kp0dDTbtm3jd7/7HWFhYaxbtw7LsgAYNGgQ\n+/fv5/XXX8cYQ3p6OsnJybz//vuXfSEiIiIiInLlqZKEZP/+/YwcOZItW7ZQUFBAfHw8t912G08/\n/TQNGzb01zt+/DiPPPKI/7kjt99+O6+88gqRkZGXG4KIiIiIiFyBqiQhERERERERuRRV+hySqjJn\nzhySkpIICQmhc+fOrF692u6QpJpkZGTgcDgCtmbNmtkdllShlStXMnjwYFq0aIHD4WD+/Pln1MnI\nyKB58+aEhoaSlpbGtm3bbIhUqtL52n306NFn9P3T1xPKleO5557jhhtuICoqCo/Hw+DBg9m6desZ\n9dTX65YLaXf19bpl9uzZXHvttURFRREVFUWPHj346KOPAupcSj+vdQnJokWL+O1vf8uTTz7Jhg0b\n6NGjBwMHDmTfvn12hybV5KqrriI7O9u/bd682e6QpAoVFhZyzTXX8PLLLxMSEuJfU3bKCy+8wMyZ\nM3nllVdYt24dHo+H/v37BzxYVa4852t3y7Lo379/QN8//T81uXJ8/vnnTJw4kbVr1/LZZ58RFBTE\nTTfdRF5enr+O+nrdcyHtrr5et8THxzN9+nS+++47vvnmG/r27cuQIUPYuHEjcBn93NQyXbp0Menp\n6QFlrVu3NlOnTrUpIqlOTz/9tElJSbE7DKkh4eHhZv78+f73Pp/PxMXFmczMTH9ZUVGRiYiIMHPn\nzrUjRKkGp7e7Mcbcf//95rbbbrMpIqluBQUFxul0mn/+85/GGPX1+uL0djdGfb0+aNy4sXn99dcv\nq5/XqhGSkpISvv32WwYMGBBQPmDAANasWWNTVFLddu/eTfPmzUlOTmb48OFkZWXZHZLUkKysLA4f\nPhzQ591uNzfeeKP6fB1nWRarV6+mSZMmtG3blvT09DOeVSVXrhMnTuDz+WjUqBGgvl5fnN7uoL5e\nl5WXl7Nw4UK8Xi833njjZfXzWpWQ5ObmUl5eTpMmTQLKPR4P2dnZNkUl1albt27Mnz+fJUuW8Oc/\n/5ns7Gx69OjBsWPH7A5NasCpfq0+X//ccsst/O1vf+Ozzz5jxowZfP311/Tt25eSkhK7Q5MqMGnS\nJDp27Oh/7pj6ev1weruD+npdtHnzZsLDw3G73aSnp/P222/Ttm3by+rn53wwokh1u+WWW/yvU1JS\n6N69O0lJScyfP5/JkyfbGJnY7fQ1B1K33H333f7X7du3p1OnTiQkJPDhhx/ym9/8xsbI5HI99thj\nrFmzhtWrV19QP1ZfrxvO1u7q63XPVVddxaZNm8jPz+edd97hnnvuYfny5efc53z9vFaNkMTExOB0\nOjl8+HBA+eHDh/1PfJe6LTQ0lPbt27Nr1y67Q5EaEBcXB1Bpnz/1mdQPTZs2pUWLFur7V7jJkyez\naNEiPvvsMxITE/3l6ut129navTLq61e+Bg0akJycTMeOHcnMzKRbt27Mnj3b/1v9Uvp5rUpIXC4X\nnTp1YunSpQHly5Yt0y3i6gmv18v27duVgNYTSUlJxMXFBfR5r9fL6tWr1efrmZycHA4cOKC+fwWb\nNGmS/0dpmzZtAj5TX6+7ztXulVFfr3vKy8vx+XyX1c+dGRkZGdUc50WJjIzk6aefplmzZoSEhPCH\nP/yB1atX85e//IWoqCi7w5Mq9vjjj+N2u/H5fOzYsYOJEyeye/du5s6dq/auIwoLC9m2bRvZ2dnM\nmzePDh06EBUVRWlpKVFRUZSXl/P888/Ttm1bysvLeeyxxzh8+DCvv/46LpfL7vDlEp2r3YOCgnji\niSeIjIykrKyMDRs28OCDD+Lz+XjllVfU7leghx9+mL/+9a+88847tGjRgoKCAgoKCrAsC5fLhWVZ\n6ut10PnavbCwUH29jvnP//xP/++2ffv2MWvWLN566y2mT59Oq1atLr2fV/etwC7FnDlzTGJiogkO\nDjadO3c2q1atsjskqSb33HOPadasmXG5XKZ58+bmzjvvNNu3b7c7LKlCy5cvN5ZlGcuyjMPh8L8e\nM2aMv05GRoZp2rSpcbvdpk+fPmbr1q02RixV4VztXlRUZG6++Wbj8XiMy+UyCQkJZsyYMWb//v12\nhy2X6PR2PrVNmzYtoJ76et1yvnZXX697Ro8ebRISEkxwcLDxeDymf//+ZunSpQF1LqWfW8YYU3N5\nlYiIiIiIyL/VqjUkIiIiIiJSvyghERERERER2yghERERERER2yghERERERER2yghERERERER2ygh\nERERERER2yghERERERER2yghERGpR/r06UNaWprdYZzhwIEDhISEsHz5cttimD17NgkJCZSUlNgW\ng4hIfaSERESkjlmzZg3Tpk0jPz//jM8sy8KyLBuiOrdp06Zx3XXX2ZosPfDAAxQXFzN37lzbYhAR\nqY+UkIiI1DHnSkiWLVvG0qVLbYjq7HJycpg/fz7jx4+3NQ63283999/PjBkzMMbYGouISH2ihERE\npI6q7Ed1UFAQQUFBNkRzdn//+98B+M1vfmNzJHD33Xezd+9ePvvsM7tDERGpN5SQiIjUIRkZGUyZ\nMgWApKQkHA4HDoeDlStXAmeuIdmzZw8Oh4MXXniBOXPmkJycTFhYGDfddBN79+7F5/PxzDPP0KJF\nC0JDQ7n99ts5evToGeddunQpqampREREEBERwcCBA9m4ceMFxbx48WJuuOEGIiMjA8oPHz7Mgw8+\nSHx8PG63m7i4OAYNGsS2bdsu6dw7duxg+PDheDweQkJCaNOmDZMnTw6oc/3119O4cWPee++9C4pd\nREQuX+36M5mIiFyWoUOHsnPnThYsWMCsWbOIiYkB4Oqrr/bXqWwNycKFCykuLubRRx/l2LFjTJ8+\nnWHDhtGnTx9WrVrF1KlT2bVrF3/84x957LHHmD9/vn/ft956i1GjRjFgwACef/55vF4vr7/+Or17\n92bdunW0bdv2rPGWlpaybt060tPTz/jszjvvZMuWLTzyyCMkJSVx5MgRVq5cyc6dO2nXrt1FnXvr\n1q307NmToKAg0tPTSU5OJisri7fffpuXXnop4LzXX389X3zxxUV86yIiclmMiIjUKS+++KKxLMv8\n+OOPZ3yWmppq0tLS/O+zsrKMZVkmNjbW5Ofn+8ufeOIJY1mW6dChgykrK/OXjxgxwrhcLuP1eo0x\nxhQUFJhGjRqZBx54IOA8eXl5xuPxmBEjRpwz1l27dhnLsszLL798xv6WZZkZM2acdd+LOXdqaqqJ\niIgwe/bsOWc8xhiTnp5ugoODz1tPRESqhqZsiYgIQ4cODZgy1aVLFwBGjhyJ0+kMKC8tLWXfvn1A\nxSL548ePM3z4cHJzc/1bWVkZvXr1Ou9tfE9N/2rUqFFAeUhICC6Xi+XLl5OXl1fpvhd67pycHFau\nXMno0aNJSEg473fRqFEjSkpKKCgoOG9dERG5fJqyJSIitGzZMuB9VFQUAPHx8ZWWn0oSduzYAUD/\n/v0rPe4vk5lzMactwA8ODuaFF17g8ccfp0mTJnTt2pVBgwYxatQoWrRocVHn3r17NwApKSkXFUtt\nvD2yiEhdpIRERETOmjicrfzUj3afzwfA/Pnzad68+UWf99Qal8pGQSZNmsTtt9/O+++/z7Jly3jm\nmWfIzMzkn//8J6mpqZd97rPJy8sjODiYsLCwKjumiIicnRISEZE6pib/st+qVSugIrHo27fvRe/f\nsmVLQkNDycrKqvTzxMREJk2axKRJkzhw4ADXXXcdzz77LKmpqRd87lP1Nm/efEExZWVlBdwEQERE\nqpfWkIiI1DGn/rJ/7Nixaj/XLbfcQsOGDcnMzKS0tPSMz3Nzc8+5f1BQEF27dmXdunUB5UVFRRQV\nFQWUNW/enNjYWP8DH2+++eZznjsnJweoSFhSU1N588032bNnT0Cd06eKAXz77bf06NHjnHGLiEjV\n0QiJiEgdc8MNNwAwdepUhg8fjsvlol+/fsTGxgKV/wi/VBEREbz22mvce++9dOzY0f+cj7179/Lx\nxx+TkpLCX/7yl3Me4/bbb+f3v/89+fn5/jUqP/zwA3379uWuu+6iXbt2BAcH89FHH/H9998zY8YM\nACIjIy/43H/605/o1asXnTp14qGHHiIpKYm9e/eyaNEi/1oUgG+++Ya8vDyGDBlSZd+RiIicmxIS\nEZE6plOnTjz33HPMmTOHsWPHYoxh+fLlxMbGYlnWBU/pOlu908vvuusumjVrRmZmJjNmzMDr9dK8\neXN69uzJ+PHjz3uee++9lylTpvDee+8xevRooGIq18iRI/n000956623sCyLtm3b8sYbb/jrXMy5\nU1JS+PLLL/nv//5v5s6dS1FRES1btmTw4MEBsbz99tu0bNmSm2666YK+IxERuXyWqco/lYmIiFyC\n8ePHs3HjRtauXWtbDF6vl8TERJ544gkeffRR2+IQEalvtIZERERs99RTT7Fx48bzPrekOs2bNw+3\n282ECRNsi0FEpD7SCImIiIiIiNhGIyQiIiIiImIbJSQiIiIiImIbJSQiIiIiImIbJSQiIiIiImIb\nJSQiIiIiImIbJSQiIiIiImIbJSQiIiIiImKb/w+Fuw325CskmAAAAABJRU5ErkJggg==\n", + "text": [ + "" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can see that the filter reacquired the track more quickly, but at the cost of a lot of noise in the output. Furthermore, many tracking situations could not tolerate the amount of lag shown between seconds 4 and 8. We could reduce it further at the cost of very noisy output, like so:" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "cvfilter.Q = Q_discrete_white_noise(dim=2, dt=dt, var=20.0) # var was 0.02\n", + "\n", + "# recompute track\n", + "cvfilter.x = array([0., 0.])\n", + "kxs2, _, _, _ = cvfilter.batch_filter(z_xs2)\n", + "\n", + "plt.plot(t, xs2, label='track')\n", + "plt.plot(t, kxs2[:,0], label='filter')\n", + "plt.legend(loc=4)\n", + "plt.xlabel('time (sec)')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\nREREpIqcffuVZVllKpszZw4PP/wwf/jDHygoKGDUqFF06dKFyMhIvv76a55++mkWLVrEK6+8Qv36\n9YmPj2fGjBnnbbu6sExFP4O+AmRnZ3vf//p3k6Vm+/bbb71PMJXaQ/1e+6jPax/1ee10sf2en5+P\ny+WqhIjkUlyoXy7l+l1rSERERERExDZKSERERERExDZKSERERERExDZKSERERERExDZKSERERERE\nxDZKSERERERExDZKSERERESkWqmGT6Wo1Sq7P5SQiIiIiEi14XQ6yc/PV1JSTRhjyM/Px+l0Vlob\nelK7iIiIiFQbDoeDgIAACgoK7A5FfhYQEIDDUXnzGEpIRERERKRacTgcelp7LaJbtkRERERExDZK\nSERERERExDYVlpD06dMHh8Ph8xoxYoRPnaysLEaOHEm9evWoV68e99xzD9nZ2RUVgoiIiIiIXGYq\nbA2JZVncd999pKamessCAwN96owYMYL9+/fzySefYIzhgQceYOTIkXz44YcVFYaIiIiIiFxGKnRR\ne2BgIG63u9RtW7du5ZNPPuHLL7/k2muvBWD27Nn06tWLHTt20KpVq4oMRURERERELgMVuobk7bff\nJjIykoSEBP74xz+Sk5Pj3bZ69WpCQkLo1q2bt6x79+4EBwezevXqigxDREREREQuExU2QzJixAhi\nYmJo3LgxmzZtYtKkSWzYsIFPPvkEgPT0dCIjI332sSwLt9tNenr6OY+rNSa1R8uWLdXftZD6vfZR\nn9c+6vPaSf0uZXXehGTy5Mk+a0JKs2zZMnr37s2YMWO8ZW3atKFFixZ06dKFdevW0a5du4qJVkRE\nREREapTzJiQTJkzgnnvuOe8BoqOjSy3v0KEDfn5+7Ny5k3bt2hEVFUVmZqZPHWMMhw8fJioqqpxh\ni4iIiIhITXDehCQiIoKIiIiLOvDGjRspLi6mUaNGAHTr1o2cnBxWr17tXUeyevVqcnNz6d69u8++\nYWFhF9WmiIiIiIhcXixjjLnUg+zevZu33nqLm2++mYiICLZs2cIf/vAHgoODWbNmDZZlAXDTTTex\nf/9+XnvtNYwxJCUlERcXxwcffHDJJyIiIiIiIpefCklI9u/fz913382mTZvIyckhOjqaW265hSef\nfJJ69ep56x0/fpyHHnrI+9yRwYMH8/LLL1O3bt1LDUFERERERC5DFZKQiIiIiIiIXIwKfQ5JRZk1\n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\nFBTE4MGDOXr0aIl2Fy9eTGJiIqGhoYSGhjJw4EDWr19fppgXLVpE586dqVu3rk95RkYGDzzwANHR\n0bhcLqKiorjpppvYsmXLRbW9Y8cOhg8fjtvtJjAwkFatWjFhwgSfOh06dKB+/fq8//77ZYpdREQu\nXfX6mkxERC7J0KFD2blzJ/Pnz+eFF16gQYMGAFx11VXeOqWtIXn77bcpKCjg4Ycf5tixY0ybNo1h\nw4bRp08fVqxYwaRJk9i1axd/+9vfePTRR5k7d65333nz5jFy5Eiuv/56nnnmGfLz83nttdfo1asX\na9asoXXr1ueMt6ioiDVr1pCUlFRi22233camTZt46KGHiI2N5fDhwyxfvpydO3cSHx9frrY3b95M\njx498Pf3Jykpibi4ONLS0li4cCHPP/+8T7sdOnTgyy+/LMdfXURELokREZEa5bnnnjOWZZkff/yx\nxLbExETTt29f7+e0tDRjWZaJjIw02dnZ3vLHH3/cWJZl2rZta06dOuUtHzFihHE6nSY/P98YY0xO\nTo4JDw83999/v087WVlZxu12mxEjRpw31l27dhnLssyLL75YYn/Lssz06dPPuW952k5MTDShoaFm\nz549543HGGOSkpJMQEDABeuJiEjF0C1bIiLC0KFDfW6Z6tKlCwB33303fn5+PuVFRUXs27cPOL1I\n/vjx4wwfPpwjR454X6dOnaJnz54X/BnfM7d/hYeH+5QHBgbidDpZunQpWVlZpe5b1rYzMzNZvnw5\no0aNonnz5hf8W4SHh1NYWEhOTs4F64qIyKXTLVsiIkKzZs18PoeFhQEQHR1davmZJGHHjh0ADBgw\noNTj/jqZOR9z1gL8gIAAnn32WR577DEaNmzItddey0033cTIkSNp2rRpudrevXs3AAkJCeWKpTr+\nPLKISE2khERERM6ZOJyr/MxFu8fjAWDu3Lk0adKk3O2eWeNS2ixIcnIygwcP5oMPPmDJkiU8/fTT\npKam8p///IfExMRLbvtcsrKyCAgIIDg4uMKOKSIi56aERESkhqnKb/ZbtGgBnE4s+vXrV+79mzVr\nRlBQEGlpaaVuj4mJITk5meTkZA4cOEC7du3461//SmJiYpnbPlNv48aNZYopLS3N50cARESkcmkN\niYhIDXPmm/1jx45Vels33ngj9erVIzU1laKiohLbjxw5ct79/f39ufbaa1mzZo1PeV5eHnl5eT5l\nTZo0ITIy0vvAxxtuuOG8bWdmZgKnE5bExETeeOMN9uzZ41Pn7FvFAL7//nu6d+9+3rhFRKTiaIZE\nRKSG6dy5MwCTJk1i+PDhOJ1O+vfvT2RkJFD6RfjFCg0N5dVXX+Wuu+6iffv23ud87N27l48//piE\nhARef/318x5j8ODB/PGPfyQ7O9u7RmX79u3069eP22+/nfj4eAICAvjoo4/Ytm0b06dPB6Bu3bpl\nbvull16iZ8+edOzYkQcffJDY2Fj27t3LggULvGtRAL777juysrIYMmRIhf2NRETk/JSQiIjUMB07\ndmTq1KnMmjWL++67D2MMS5cuJTIyEsuyynxL17nqnV1+++2307hxY1JTU5k+fTr5+fk0adKEHj16\nMHbs2Au2c9dddzFx4kTef/99Ro0aBZy+levuu+/ms88+Y968eViWRevWrfnHP/7hrVOethMSEvjq\nq6/4n//5H2bPnk1eXh7NmjVj0KBBPrEsXLiQZs2acd1115XpbyQiIpfOMhX5VZmIiMhFGDt2LOvX\nr2f16tW2xZCfn09MTAyPP/44Dz/8sG1xiIjUNlpDIiIitnviiSdYv379BZ9bUpnmzJmDy+Vi3Lhx\ntsUgIlIbaYZERERERERsoxkSERERERGxjRISERERERGxjRISERERERGxjRISERERERGxjRISERER\nERGxjRISERERERGxjRISERERERGxzf8DHS8jjNchCmsAAAAASUVORK5CYII=\n", + "text": [ + "" + ] + } + ], + "prompt_number": 10 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Manuevers imply acceleration, so let's implement a constant acceleration Kalman filter and see how it fairs with the same data." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "cafilter = KalmanFilter(dim_x = 3, dim_z=1)\n", + "cafilter.x = array([0., 0., 0.])\n", + "cafilter.P *= 3\n", + "cafilter.R *= 1\n", + "cafilter.F = array([[1, dt, 0.5*dt*dt],\n", + " [0, 1, dt], \n", + " [0, 0, 1]], dtype=float)\n", + "cafilter.H = array([[1, 0, 0]], dtype=float)\n", + "\n", + "cafilter.Q = Q_discrete_white_noise(dim=3, dt=dt, var=0.02)" + ], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 11 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "kxs2, _, _, _ = cafilter.batch_filter(z_xs2)\n", + "plt.plot(t, xs2, label='track')\n", + "plt.plot(t, kxs2[:,0], label='filter')\n", + "plt.legend(loc=4)\n", + "plt.xlabel('time (sec)')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "iVBORw0KGgoAAAANSUhEUgAAAyQAAAGkCAYAAADAJeH1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl4lNWhx/HvOzPZ94QsJIEQIJCwQ1D2fRFEwQVFcMHW\nK9aqLaUt1ba3eK3aa2u9SKtdtCoVEFwQFFCjIAICSoKgQBISlgAJCZB9X2bO/QOLUmvLEpgk8/s8\nD4/hfc8Mv3nOk2R+znvOaxljDCIiIiIiIm5gc3cAERERERHxXCokIiIiIiLiNiokIiIiIiLiNiok\nIiIiIiLiNiokIiIiIiLiNiokIiIiIiLiNiokIiIiIiLiNudcSH7zm99wxRVXEBISQlRUFFOnTmXv\n3r3fGPfwww8TFxeHv78/Y8aMYd++fWedr6+v54EHHiAyMpLAwECmTZtGfn7+xb8SERERERFpdc65\nkHz00Ufcf//9bNu2jQ0bNuBwOBg/fjylpaVnxjzxxBM89dRT/PGPf2THjh1ERUUxYcIEqqqqzoyZ\nO3cuK1euZPny5WzevJmKigquueYaXC5X874yERERERFp8awLvVN7dXU1ISEhrF69milTpmCMITY2\nlh/84Ac89NBDANTV1REVFcWTTz7JnDlzKC8vJyoqipdeeomZM2cCcOzYMRISEnjnnXeYOHFi870y\nERERERFp8S54DUlFRQUul4uwsDAADh06RFFR0VmlwtfXl5EjR7J161YAMjIyaGxsPGtMfHw8KSkp\nZ8aIiIiIiIjncFzoA3/4wx/Sv39/hgwZAkBhYSEA0dHRZ42LioqioKDgzBi73U5ERMRZY6Kjoykq\nKjrz9/Ly8guNJSIiIiIibhQSEnJe4y+okMybN4+tW7eyZcsWLMv6j+PPZYyIiIiIiHie875k60c/\n+hErVqxgw4YNdOrU6czxmJgYgLM+6fjH3/9xLiYmBqfTSXFx8VljCgsLz4wRERERERHPcV6fkPzw\nhz/ktdde48MPP6Rbt25nnUtMTCQmJoa0tDRSU1OB04vat2zZwpNPPglAamoqXl5epKWlnbWoPSsr\ni6FDh/7Lf/N8P/KR1is9PZ2BAwe6O4ZcZpp3z6M59zyac8+kefcsF7Pk4pwLyX333ceSJUtYtWoV\nISEhZ9aMBAUFERAQgGVZzJ07l8cff5zk5GSSkpJ49NFHCQoKYtasWcDpcnHXXXcxf/58oqKiCA8P\nZ968efTt25fx48df8IsQEREREZHW6ZwLyZ/+9Ccsy2LcuHFnHX/44Yf51a9+BcD8+fOpra3lvvvu\no7S0lMGDB5OWlkZAQMCZ8QsXLsThcDBjxgxqa2sZP348S5Ys0ToTEREREREPdM6F5FxvXLhgwQIW\nLFjwree9vb1ZtGgRixYtOtd/WkRERERE2qgLvg+JiIiIiIjIxVIhERERERERt1EhERERERERt1Eh\nERERERERt1EhERERERERt1EhERERERERt1EhERERERERt1EhERERERERt1EhERERERERt1EhERER\nERERt1EhERERERERt1EhERERERERt1EhERERERERt1EhERERERERt1EhERERERERt1EhERERERER\nt1EhERERERERt1EhERERERERt1EhERERERERt1EhERERERERt1EhERERERG5DIwxbD9ew7yNBZTV\nO90dp8VwuDuAiIiIiEhbVtfkYt2hSpZllnGgvIG4qiLeiPDlrt7h7o7WIqiQiIiIiIhcAidrmng1\nu4zXc8opq3cBcMfRD7g//W/Ud/lv6D3NzQlbBhUSEREREZFmtK+4jmWZZbyXV0lseQFjTu4jwdfF\nGGc+cZ++A4B/cYGbU7YcKiQiIiIiIhfJ6TJsPFbN0sxSPjtRR1LZYX6d/Sbjjm3HhvlqoMOBde8v\nsY3TpyP/oEIiIiIiInKBKhucrMqtYHlWGQXVTfQsyeHp7DcZVpB+eoDDgTV4LIRGgJcP1pBxWN16\nuTd0C6NCIiIiIiJyno5UNLA8u5zVueVEluYzKX87Ewt30LX4wOkB3r5YE2/Auu4OrHbR7g3bwqmQ\niIiIiIicA2MM6UW1LM0sY9Oxanya6rhvzyvMOPDuV5dl+QVgXX0z1rW3YYVqF61zoUIiIiIiIvJv\nNDhdvHu4iqWZpeSU1JFYmc/04mzmHHiLsPJCsNmxRk3GGjIO+g7G8vF1d+RWRYVEREREROSfmPo6\nyo4X8vkHH2H/bAsDSg8ztKkef2c9Ps6GrwZ26obtB/+D1TnZfWFbORUSEREREfFopuQkJn0z7P8C\ncyATV34etoY6goHh/+oBEVFYyf2gz5VY46ZiObwuc+K2RYVERERERDyOaWzEbFyD2fAWZO0G89XW\nvDagweagzDuIE7HdCR42ioTBQ7ACgsDHF8vP333B2yAVEhERERHxGKaxAfPu65hVi6H4BABOhxcZ\n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\nXLVr1+aTTz4hKiqK5557jpdffpkbbriB9957r1jdmJgYvv76a/r27cucOXOYOHEiS5cuZfDgwa46\nlmW5tWWz2Vi4cCH9+vVj+PDhrFmzpszPuTQsU5p311ewc08MAAgODvZgJFKRvvvuO9q3b+/pMKSC\nqd9rHvV5zaM+r5mutN9zcnJwOBzlEJFcjUv1y9Vcv2uGREREREREPEYJiYiIiIiIeIwSEhERERER\n8RglJCIiIiIi4jFKSERERERExGOUkIiIiIiIiMcoIREREREREY9RQiIiIiIiIh6jhERERERERDxG\nCYmIiIiIiHiMEhIREREREfEYJSQiIiIiIuIxSkhERERERCrI1q1b6dGjB4GBgdhsNoYOHYrN5n5J\n3rt3b/r06eOhCCuet6cDEBERERGpCZxOJyNGjABgxowZ+Pv78+2332JZlls9y7LcyrKzs3nllVfo\n06cPvXr1qtCYK4ISEhERERGRCnD8+HEOHDjA66+/zrhx4wAYMWIE06ZNc6tnjHFLSLKysvjrX/+K\nzWarlgmJbtkSEREREakAJ0+eBCAoKMhV5uXlhd1uL9X+xpgyjScvL4/CwsIyPeaVUEIiIiIiIlLO\nxowZQ/v27QEYO3YsNpuNPn36EB8fX2wNyW8dOnSIsLAwAKZOnYrNZsNmszF27FhXnRMnTvDQQw8R\nERGBw+GgVatWvP32227HWbNmDTabjQULFhAfH0+jRo3w8/Pj2LFj5XC2l0e3bImIiIiIlLPx48dz\nzTXX8Oyzz/Lwww/To0cPwsPDWbdu3UX3CwsL46233mLChAnccccd3HHHHQA0a9YMKJp16dy5M8YY\nHn30UcLCwvj888/5/e9/z6lTp/jzn//sdryEhAS8vLyYNGkSxhj8/f3L54QvgxISEREREamyCoe2\nK7djey3bWmbH6ty5M97e3jz77LN06dKFUaNGAVwyIfHz82PYsGFMmDCB66+/3rXfOc888wz5+fns\n2LGDunXrAhAXF0dcXBwJCQk8+uijBAcHu+pnZmayZ88efH19y+zcrpZu2RIRERERqYKMMXzwwQfc\neuutGGNITU11ffr37092djbffPON2z733XdfpUpGQDMkIiIiIlKFleUsRlWTkpLC6dOnmTt3LnPn\nzi223bIsUlJS3MrO3epVmSghERERERGpgpxOJwCjRo3igQceKLFOq1at3P6ubLMjoIRERERERKRS\nO//FieeEhoYSGBhIfn4+ffv2reCoyo7WkIiIiIiIVGJ+fn4ApKWluZV7eXlx5513smzZMr7//vti\n+51/u1ZlpRkSEREREZFK5rcvQfT19aV169YsWrSIFi1aUKdOHaKjo+nYsSMvv/wya9asoUuXLowb\nN45WrVqRnp7Otm3bWLZsGdnZ2R48i9JRQiIiIiIiUkHOv/3KsqxSlc2dO5fHH3+cp556itzcXMaM\nGUPHjh0JDQ3lm2++4fnnn2fZsmW89dZb1KlTh1atWjFjxoyLtl1ZWKas30FfBjIyMlzff/vcZKne\nvvvuO9cbTKXmUL/XPOrzmkd9XjNdab/n5OTgcDjKISK5Gpfql6u5ftcaEhERERER8RglJCIiIiIi\n4jFKSERERERExGOUkIiIiIiIiMcoIREREREREY9RQiIiIiIiIh6jhEREREREKpVK+FaKGq28+0MJ\niYiIiIhUGna7nZycHCUllYQxhpycHOx2e7m1oTe1i4iIiEilYbPZ8PHxITc319OhyC98fHyw2cpv\nHkMJiYiIiIhUKjabTW9rr0F0y5aIiIiIiHiMEhIREREREfGYMktIevfujc1mc/uMGjXKrU56ejqj\nR48mJCSEkJAQ7rvvPjIyMsoqBBERERERqWLKbA2JZVk88MADJCQkuMp8fX3d6owaNYqjR4+yfPly\njDE89NBDjB49mo8++qiswhARERERkSqkTBe1+/r6EhYWVuK2PXv2sHz5cr766is6deoEwJw5c+jR\nowf79u2jRYsWZRmKiIiIiIhUAWW6hmTRokWEhoYSExPDH//4RzIzM13bNm7cSEBAAF26dHGVde3a\nFX9/fzZu3FiWYYiIiIiISBVRZjMko0aNokmTJjRo0ICdO3cyZcoUvv/+e5YvXw5AUlISoaGhbvtY\nlkVYWBhJSUkXPK7WmNQczZs3V3/XQOr3mkd9XvOoz2sm9buU1kUTkmeeecZtTUhJ1qxZQ8+ePRk3\nbpyrrHXr1jRr1oyOHTuybds22rZtWzbRioiIiIhItXLRhGTSpEncd999Fz1AVFRUieU33ngjXl5e\n7N+/n7Zt2xIREUFKSopbHWMMJ0+eJCIi4jLDFhERERGR6uCiCUndunWpW7fuFR14x44dFBYWUr9+\nfQC6dOlCZmYmGzdudK0j2bhxI1lZWXTt2tVt3+Dg4CtqU0REREREqhbLGGOu9iAHDx7k/fff59Zb\nb6Vu3brs3r2bp556Cn9/fzZt2oRlWQAMGjSIo0eP8s4772CMIS4ujujoaP773/9e9YmIiIiIiEjV\nUyYJydGjR7n33nvZuXMnmZmZREVFcdttt/Hcc88REhLiqnf69Gkee+wx13tHhgwZwptvvklQUNDV\nhiAiIiIiIlVQmSQkIiIiIiIiV6JM30NSVmbPnk3Tpk3x9fWlffv2rF+/3tMhSTmJj4/HZrO5fRo0\naODpsKQMrV27lsGDBxMZGYnNZmP+/PnF6sTHx9OwYUP8/Pzo06cPu3fv9kCkUpYu1e9jxowpNvbP\nX08oVcdLL71Ehw4dCA4OJiwsjMGDB7Nr165i9TTWq5fS9LvGevUya9YsbrjhBoKDgwkODqZr1658\n+umnbnWuZJxXuoRk8eLFPPHEEzzzzDNs27aNrl27csstt3DkyBFPhybl5NprryUpKcn12bFjh6dD\nkjKUlZXF9ddfz+uvv46vr69rTdk5r7zyCjNmzODNN99k06ZNhIWF0b9/f7cXq0rVc6l+tyyL/v37\nu4398/+nJlXHl19+yaOPPsrGjRtZtWoV3t7e3HTTTaSnp7vqaKxXP6Xpd4316iUqKopp06axdetW\nNm/eTN++fRk6dCjbt28HrmKcm0qmY8eOJi4uzq2sefPmZsqUKR6KSMrTc889Z2JiYjwdhlSQgIAA\nM3/+fNffTqfTREREmISEBFdZdna2CQwMNHPmzPFEiFIOzu93Y4y5//77zW233eahiKS8ZWZmGi8v\nL/Pxxx8bYzTWa4rz+90YjfWaoE6dOuadd965qnFeqWZI8vLy2LJlCwMGDHArHzBgABs2bPBQVFLe\nDh48SMOGDYmOjmbkyJEkJiZ6OiSpIImJiSQnJ7uNeYfDQc+ePTXmqznLsli/fj3h4eG0bNmSuLi4\nYu+qkqrrzJkzOJ1OateuDWis1xTn9ztorFdnhYWFLFq0iJycHHr27HlV47xSJSSpqakUFhYSHh7u\nVh4WFkZSUpKHopLy1LlzZ+bPn8/y5cv5+9//TlJSEl27diUtLc3ToUkFODeuNeZrnoEDB/LPf/6T\nVatWMX36dL799lv69u1LXl6ep0OTMjBx4kTatWvneu+YxnrNcH6/g8Z6dbRjxw4CAgJwOBzExcWx\nZMkSWrZseVXj/KIvRhQpbwMHDnR9j4mJoUuXLjRt2pT58+czadIkD0Ymnnb+mgOpXkaMGOH63rp1\n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\ncmFKSEREqpmK/Jf9Zs2aAUWJRd++fS97/0aNGuHn50diYmKJ25s0acLEiROZOHEix44do23btrz4\n4ov06tWr1G2fq7djx45SxZSYmOj2EAARESlfWkMiIlLNnPuX/bS0tHJva+DAgYSEhJCQkEB+fn6x\n7ampqRfd39vbm06dOrFp0ya38uzsbLKzs93KGjZsSGhoqOuFjzfffPNF205JSQGKEpZevXoxb948\nDh065Fbn/FvFALZs2ULXrl0vGreIiJQdzZCIiFQzHTp0AGDKlCmMHDkSu91Ov379CA0NBUq+CL9S\ngYGBvP3229xzzz20a9fO9Z6Pw4cP89lnnxETE8O777570WMMGTKEP/7xj2RkZLjWqOzdu5e+ffty\n11130apVK3x8fPj000/54YcfmD59OgBBQUGlbvtvf/sb3bt3JzY2locffpimTZty+PBhFi9e7FqL\nArB582bS09MZOnRomf1GIiJycUpIRESqmdjYWF566SVmz57NAw88gDGG1atXExoaimVZpb6l60L1\nzi+/6667aNCgAQkJCUyfPp2cnBwaNmxIt27dGD9+/CXbueeee5g8eTIffvghY8aMAYpu5br33nv5\n4osvWLBgAZZl0bJlS/7xj3+46lxO2zExMXz99df85S9/Yc6cOWRnZ9OoUSMGDx7sFsuSJUto1KgR\nN910U6l+IxERuXqWKct/KhMREbkC48ePZ/v27WzcuNFjMeTk5NCkSROefvppHn/8cY/FISJS02gN\niYiIeNyzzz7L9u3bL/nekvI0d+5cHA4HEyZM8FgMIiI1kWZIRERERETEYzRDIiIiIiIiHqOERERE\nREREPEYJiYiIiIiIeIwSEhERERER8RglJCIiIiIi4jFKSERERERExGOUkIiIiIiIiMf8f4H3HTCZ\nnJrOAAAAAElFTkSuQmCC\n", + "text": [ + "" + ] + } + ], + "prompt_number": 12 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The constant acceleration model is able to track the manuever with no lag, but at the cost of very noisy output during the state state portion of the filter. The noisy output is due to the filter being unable to distinguish between the beginning of an manuever and just noise in the signal. Noise in the signal implies an acceleration, and so the acceleration term of the filter tracks it. \n", + "\n", + "It seems we cannot win. A constant velocity filter cannot react quickly when the target is accelerating, but a constant acceleration filter misinterprets noise during zero acceleration regimes as acceleration.\n", + "\n", + "Yet there is an important insight here that will lead us to a solution. When the target is not manuevering (the acceleration is zero) the constant velocity filter performs optimally. When the target is manuevering the constant acceleration filter performs well, as does the constant velocity filter with an artificially large process noise $\\mathbf{Q}$. If we make a filter that adapts itself to the behavior of the tracked object we could have the best of both worlds." + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Detecting a Manuever" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Before we discuss how to create an adaptive filter we have to ask *how do we detect a manuever?* We cannot reasonably adapt a filter to respond to manuevers if we do not know when a manuever is happening.\n", + "\n", + "We have been defining *manuever* as the time when the tracked object is accelerating, but in general we can say that the object is manuevering with respect to the Kalman filter if its behavior is different than the process model being used by the filter. \n", + "\n", + "What is the mathematical consequence of a manuevering object for the filter? The object will be behaving differently than predicted by the filter, so the *residual* will be large. Recall that the residual is the difference between the current prediction of the filter and the measurement. " + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from mkf_internal import show_residual_chart\n", + "show_residual_chart()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\n+vUTdnZ2wtjYWDRs2FAMGDBA4/ai+/fvF126dBFWVlal+m6I+Ph4MXDgQOHg4CAsLCyEp6enWLNm\njUhKStL6vCvcv9qWXfic1/ZcjYuLE3369BFWVlbCyspK+Pn5iZiYGNWxLuntZgvFxMSIESNGCCcn\nJ2FiYiLMzc1Fs2bNxLRp07R+74cQT283K5PJRE5OjpgzZ45wcXERJiYmonHjxmLhwoUiLy9P63wb\nNmwQbdu2FaampsLBwUG8/fbbIiUlpcjjVtr3nfJ+/RBRxZCE0P1nuZ07d8LExARubm5QKpUICQnB\nkiVLcOLECa1jMxcvXoysrCz07dsXdevWRXh4ON5//338/PPPePPNNyssIBEREVHZuLi4IDk5udoO\nOSSiylVssNDGzs4On376KcaNG1ei/m+88QYKCgoqZVgFERERlQyDBRGVRaku3i4oKMDGjRuRnZ2t\n9W4ORUlPT4etrW2piyMiIiIiouqhRBdvnzt3Dp06dUJOTg7MzMwQGhoKd3f3Eq1g165dOHjwoOrW\nds969o4TREREVLkKBzHw9zMRFUfbF9+WaChUXl4ekpOTkZ6ejs2bN2PFihWIjIyEp6enzvmOHDmC\nfv36YcmSJXj33Xc1pvONi4iIiIio+nnhYPE8Pz8/NGjQAMHBwUX2iY6ORv/+/bFw4UL8+9//1tqH\nwYKIiIiIqPrRFixe6HssCgoKtH7pTaHDhw/D398fH3/8cZGhoiTFUfUWGxtb7Fkt0l88/jUbjz/x\nOVCz8fjrp+JOChQbLGbPng1/f380aNAAjx8/xq+//opDhw6pvqxnzpw5OHHiBCIiIgAAUVFR6N+/\nPyZPnow333wTCoUCAGBgYAB7e/uybg8REREREVVBxQaLO3fuYOTIkVAoFJDL5WjdujXCw8Ph5+cH\nAFAoFEhISFD1X7t2LbKzs7F06VIsXbpU1e7i4qLWj4iIiIiI9EexwULXdRTapgcHBxc7DxERERER\n6ZdSfY8FERERERGRNgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERU\nZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwW\nRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERE\nRERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERU\nZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwW\nRERERERUZgwWRERERERUZgwWRERERERUZgwWRERERERUZgwWREREVCP4z/kVQZ/tUD32mRqCf3+9\np0zLDPx0Owb8d0NZSyPSC4aVXQARERHRyyBJEqRnHm9fNBxGBiX7G2vU6ST0nL4W97f/B7bWZqr2\nFf/uCyHKuVCiaorBgoiIiKqN3LwCGBsZlMuyalmalnoe8VyKsDI3KZdaiPQBgwURERFVGp+pIXjV\nuTaMDQ2wbv9ZAMDYfm3x2bu+kCQJLsO/QlBfD1xXpOO36Evo7dkYm+YNxdHzyZjzwwHE/nUbNpam\nGOjtjs/e9VV90H+SnYeJX4Vh6+GLsDA1wpTXOwIAxHPrbtnIASv+3Q/A09AyPyQKvx44B8WDDNS3\nt8bU1ztioLc7ek5fCwCwH7wUABD4mgd+mhWAwE+3I/VRFn7/5E0AQE5uPmZ9H4GNB88jPTMHHk3q\n4PMJfujc0gnAP2c+Ij4fhTk/HMD5pLto5myP72f4o41b3Qrf30QViddYEBERUaVaH3EOABDzzVh8\nN90f3++Kw1dbYlTTv9gcg2Yu9oj7bjw+GdsT5xLu4LX//IJBXdxx9scJ2PbxGzh9TYExS3aq5pm5\nah8i4hKw7eNhOLBsFE5dUeDw2etqQ6GeDo36p2X0p9uxbv9ZfDnpNVz6eTLWzh4EWyszNHSQY+uC\nYQCA+JBJUGydieXv9/lnGc8s9D/f7Udo1AUEzwrA6R/eRUtXB/SZtR6KBxlq2/zfHw9gybu+OPnd\neNhZm+Gt/20rr91JVGl0BotvvvkGrVu3hlwuh1wuh7e3N3bv3q1zgefOnUP37t1hbm6OBg0aYOHC\nheVaMBEREemXenZWWP5+XzRtaId/+TTHB8O98cXmf4KFT2sXzHzDG43q2aBxfVss3XgUb/Rojmn/\n6oTG9W3R4dX6+HZqf2w9HI/76U+QkZWLn/acwtIJfvDzbIzmrg4InhUA2bMJ4DlXbqZiU+R5rPlg\nIAZ3fRUudWqhS0snvOXXCjKZBBurp9dVONSygIONherMiBBCdY1FZlYuVv8ehyXv+qFvRze4O9XG\n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\nyCPuLgMAALfxc3cBAFAfm82m7t27u7uMOrKysrR27Vp98skntdpffPFFfeUrX3H5+hMTE/XRRx/p\nT3/6k8vXBQBASxAsAHQon332mTp37qyQkJA2WU576YghCACA9sSlUABcZvLkyVq1apWSkpLUs2dP\n9ezZU4899pgcDofRp1+/ftq4caOWLl2qHj166Hvf+56kupdCnTt3TrGxsQoICFCvXr20ZMkSVVVV\nGe8nJibqm9/8prZs2aKIiAj17du3wboKCws1adIkBQYGKiIiQg8//HCtMxBWq1XR0dEKCgpS9+7d\nNXbsWJWWlur48eNaunSpqqurZTabZTabtWnTJmNb165dW2u70tLSlJiYqODgYPXt21f79+/X9evX\nNW/ePAUFBWnw4MHKy8sz5rHb7fr+97+vAQMGKCAgQIMGDVJ6errx/Xrqqaf0m9/8Rn/+85+N9Vut\nVknSBx98oO9+97vG93n27Nm6ePFiq/YbAACtQbAA4FI5OTmSpFOnTun555/X7t27tX379lp9MjIy\nNHToUJ0+fVpPP/10nWVUV1dr+vTpCg4O1ptvvqnDhw+rsLBQS5curdXvxIkTOn/+vF599VW9/vrr\n9dZz7tw5TZ8+XQkJCTp79qwOHTqkkpISY1m3bt3SnDlz9OCDD+rs2bN64403lJycrE6dOmn8+PHa\nvn27AgICZLPZZLPZtH79ekmSyWSSyWSqta7t27crOjpab731lubNm6fExEQtWLBA8fHx+tvf/qaJ\nEydq0aJFunnzpqTPg0VERIQOHDigt99+Wz/72c/09NNPKzMzU5L06KOPat68eZo2bZqx/piYGH36\n6aeaMmWKAgICZLVaderUKfXp00exsbH6z3/+09JdBgBAq3ApFACXCgsL044dOyRJgwYN0rvvvquM\njAwlJycbfSZPnmz8gl6f3/72t/r000+1d+9eBQYGSpJ2796tKVOmqLy8XAMGDJAk+fv7a8+ePY3e\n65Cenq758+cb6//qV7+qnTt3KjIyUhUVFTKbzaqsrNTs2bPVv39/o+47goODZTKZmnWp1je+8Q2t\nXLlSkrRx40ZlZGTovvvu0+LFiyVJP/nJT7Rnzx6VlpYqMjJSfn5+2rhxozF/3759dfr0ae3bt09L\nly5VYGCgunbtWudSsb1790qS9uzZY7Q999xzCg0N1ZEjRzR37twmawUAwFmcsQDgMiaTSdHR0bXa\n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\n", + "text": [ + "" + ] + } + ], + "prompt_number": 13 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To confirm this, let's plot the residual for the filter during the manuever. I will reduce the amount of noise in the data to make it easier to see the residual." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "pos2, zs2 = generate_data(250, noise_factor=0.2)\n", + "xs2 = pos2[:,0]\n", + "z_xs2 = zs2[:,0]\n", + "\n", + "# reinitialize filter\n", + "cvfilter.x = array([0., 0.])\n", + "cvfilter.Q = Q_discrete_white_noise(dim=2, dt=dt, var=0.02)\n", + "xs = []\n", + "res = []\n", + "for z in z_xs2:\n", + " cvfilter.predict()\n", + " cvfilter.update([z])\n", + " xs.append(cvfilter.x[0])\n", + " res.append(cvfilter.y[0])\n", + "xs = np.asarray(xs)\n", + "plt.subplot(121)\n", + "plt.plot(t, z_xs2, label='measurment')\n", + "plt.plot(t, xs, label='filter')\n", + "plt.legend(loc=4)\n", + "plt.subplot(122)\n", + "# plot twice so it has the same color as the plot to the left!\n", + "plt.plot(t, res)\n", + "plt.plot(t, res)\n", + "plt.ylabel('residual')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "iVBORw0KGgoAAAANSUhEUgAAAyQAAAGNCAYAAADghrULAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd4VGXCxuHftPQeUoBQovQiUuyKooAFBFnXdXf1U1AX\nCyqIioAIrBRFURELorsK9nVX17JrYV1UQBQIApZA6C0hCenJZDKZzMz3x0DWCEib5MxMnvu6vCZn\n5szMc0CSefK+7zkmr9frRURERERExABmowOIiIiIiEjzpUIiIiIiIiKGUSERERERERHDqJCIiIiI\niIhhVEhERERERMQwKiQiIiIiImIYFRIRERERETHMMReSRx55hDPOOIP4+HhSU1MZNmwYP/300yH7\nTZ8+ndatWxMVFcWAAQPIzs5u8LjT6eSuu+4iJSWFmJgYhg8fTm5u7skfiYiIiIiIBJ1jLiRfffUV\nd955J9988w1Lly7FarUycOBASktL6/eZM2cOTz75JM8++yxr1qwhNTWVQYMGUVVVVb/PuHHjeO+9\n93j77bdZvnw5FRUVDB06FI/H498jExERERGRgGc60Su12+124uPj+eCDDxgyZAher5dWrVpx9913\nM2nSJABqampITU1l7ty5jB49mvLyclJTU1m0aBF/+MMfANi7dy/t2rXjk08+YfDgwf47MhERERER\nCXgnvIakoqICj8dDYmIiADt27KCgoKBBqYiIiKB///6sXLkSgLVr1+JyuRrsk5GRQdeuXev3ERER\nERGR5sN6ok8cO3YsvXv35pxzzgEgPz8fgLS0tAb7paamkpeXV7+PxWIhOTm5wT5paWkUFBTUb5eX\nl59oLBEROYr4+HijIxhOP2dERBrP8f6cOaFCMn78eFauXMmKFSswmUxH3f9Y9hERERERkebnuKds\n3XPPPfztb39j6dKltG/fvv7+9PR0gAYjHQe3Dz6Wnp6O2+2muLi4wT75+fn1+4iIiIiISPNxXCMk\nY8eO5e9//ztffPEFnTp1avBYZmYm6enpLFmyhL59+wK+Re0rVqxg7ty5APTt2xebzcaSJUsaLGrf\ntGkT55577mHfM5SnFmRlZdGvXz+jYzQqHWNo0DEGP01ROjL9nAluOsbQoGMMfifzc+aYC8mYMWN4\n/fXXef/994mPj69fMxIbG0t0dDQmk4lx48Yxe/ZsunTpQseOHZk5cyaxsbH88Y9/BHzf9G+++WYm\nTJhAamoqSUlJjB8/nl69ejFw4MATPggREREREQlOx1xIFixYgMlk4pJLLmlw//Tp05k6dSoAEyZM\nwOFwMGbMGEpLSzn77LNZsmQJ0dHR9fvPmzcPq9XKtddei8PhYODAgbz++utaZyIiIiIi0gwdcyE5\n1gsXTps2jWnTph3x8bCwMObPn8/8+fOP9a1FRERERCREnfB1SERERERERE6WComIiIiIiBhGhURE\nRERERAyjQiIiIiIiIoZRIREREREREcOokIiIiIiIiGFUSERERERExDAqJCIiIiIiYhgVEhERERER\nMYwKiYiIiIiIGEaFREREREREDKNCIiIiIiIihlEhERERERERw6iQiIiIiIiIYVRIRERERETEMCok\nIiIiIiJiGBUSERERERExjAqJiIiIiIgYRoVEREREjtmGj/7Nno2bjY4hIiHEanQAERERCQ6bV66i\nx1+n+DbeX2dsGBEJGRohERExmLuinILPPzU6hshRlWf/aHQEEQlBGiERETGQo6iIggdG07p4J2UW\nEwkDLjU6ksgReWtrjI4gIiFIIyQiIgbxFhdS+cBNtCneQW5cS/JadTE6ksivczqNTiAiIUgjJCIi\nBijfs5vaKbeSXJ7Plvh2WKc/T7fMVkbHEvl1Tkf9l263G4vFYmAYEQkVGiEREWliVTu3UTvxJpLK\n88lOPJUt45+hg8qIBAFLVXn917XVmr4lIv6hQiIi0oTWfLuemok3k2Qv5qfUbiTPeYkre7UxOlbI\nqKurY/LkyZxyyilERkZyyimn8NBDD+F2u42OFhJsVaX1XzuqqgxMIiKhRFO2RESayLfLVtPpmfHE\nu+z8kHE6KdPn06pFrNGxQsrs2bNZuHAhr776Kj179mTDhg2MHDmS8PBwpkyZYnS8oBdpL6v/2ldI\n0owLIyIhQ4VERKQJrP7vCrotmEB0nYPtnc+l54wnsYSFGx0r5KxZs4Zhw4YxZMgQANq2bcvQoUNZ\nvXq1wclCQ0z1/wpJrb3awCQiEko0ZUtEpJGt+Wwp3Z+/l+g6B1t6DODUmU+pjDSSyy+/nKVLl5KT\nkwNAdnY2X3zxBVdccYXByYKfx+MhvuZna0jsdgPTiEgo0QiJiEgjyvrXZ3R/+SHCPS429b6Mrg/O\nwGzVt97Gcscdd7B37166du2K1Wqlrq6OKVOmcNtttxkdLeg5quxEuF312y671pCIiH/op6KISCPw\ner0s/8eHnPnmDGxeNz+dMYweE6di1mlSG9X8+fN55ZVXePvtt+nevTvr1q1j7NixtG/fnptuuumw\nz8nKymrilE3LX8dXVVjEBT/bzt2xg5oA+bML9b9D0DGGilA+xo4dO57wc1VIREQawX9e/zsXvjcH\nq9fDD+deQ6/7J2EymYyOFfJmzZrFlClT+N3vfgdA9+7d2bVrF4888sgRC0m/fv2aMmKTysrK8tvx\nbfl2TYPtFrGx9A2APzt/HmOg0jGGhlA/xvLy8qPvdAQqJCIifrbq9TcZ8O5czHjZNvgGet0+TmWk\niXi9XszmhssjzWYzXq/XoEShw1Fc1GDb49CidhHxDxUSERE/+um1xfR7dx4A2ZfdQs/bxhicqHm5\n6qqrePTRR8nMzKRbt26sW7eOp556ihtvvNHoaEHPmbe3wbbXoUXtIuIfKiQiIn7g8nj57qWF9Ptk\nIQDfXnYH5932J4NTNT9PPfUUcXFxjBkzhoKCAlq2bMno0aOZOnWq0dGC3749AJSFx5HgrIAajZCI\niH+okIiInCS7y8O/5zzJ1VlvALDyyrGcf5N+I2+E6Oho5s6dy9y5c42OEnIi9/tGSPalnkrCnnWY\nahwGJxKRUKHrkIiInAS328NXc+ZwddYbuE1mtlw/iQtuHqk1IxJykkpzAahu4zuTjtmpQiIi/qFC\nIiJygrxeLxsen82lWe/gNpkpv/3PdPnt74yOJeJXPy75nJzRvyetqhA3JmyZnQAw11RTUVzK7p82\nGpxQRIKdComIyAnwejzse/Jhen37Li6ThZ2jZ5IyeKjRsUT8ymG3k/LKI3QozAFgf0wqtvh4AKxO\nB7un30valOtVSkTkpKiQiIgcpwpHLTkzJpO2/H2cZhtLr3uYTpdfbnQsEb/7YfEiWjhK6rdrbRHY\noqIBSCzNpeuedVi9Hgq+Xm5URBEJASokIiLHwe5w8v2U++i47jMclnBevHIal/5GZURCU/yGFQ22\nK+NTCYuOAqBlZX79/WE565s0l4iEFp1lS0TkGFXaHWyaMp5zdnxLtS2S7299jDsGnIvFrAXsEppi\n7b7Rkc1j51P9349Iv2H0YffL2PsTHo8Hs9nMjnUbSGrbhvjkpKaMKiJBTIVEROQYuBw1bJl0N312\nZ1EVFo1j8jOcd3pvo2OJNBqPx0NCdSkA7fv1IXLABQAU7/vfyIjDEk6tNYwEZwV7c7ZQ56ih3cMj\n2ZPQhvhFHxqSW0SCjwqJiMhROCrt5E65k16711MeHod76vOkd+9udCyRRuHxeFg/aTwmj5vTPC7s\n1kjiYqPrH49NTKDKFkWMq5rddzyK87P3OG3zcvavzcJdVEA7oE3ZHuMOQESCjgqJiMiv2F9Uxr7J\nd9C9cCNFEQmUTXyWziojEsLKC4volfPV/7ajEoj72eNhERHsn7kYZ2QE3dpmsGbbZti8HO/mHyAy\npn6/g1O4RESORt8pRESOoLKklJJJo+leuJHi6GT2T36BzqerjEhoK9mzt8F2VXTiIfu07tyB1LYZ\nAMT3PB2A5D0bsZUW1u9TUVTaiClFJJRohERE5DAqi4rY/8BoOhTvID8mjZhHXqRHm7ZGxxJpdJV5\nuQ22a2KTf3X/tqf1oM5kIaN0D7a62vr7S/P2kZD6688VEQGNkIiIHKIsv4DS+2+iXfEOcuNaYZn1\nF+JVRqSZqM3Pa7BdF//rpSIiOoo9ye0x421wKmB7Yf6vPEtE5H9USEREfuab77dTdv8oWpfuYVdC\nG8Jm/4X0dhlGxxJpMqb9+xpsexNaHPU5pW26HnJfTWGB3zKJSGhTIREROWDrpm1kzLmNNpX72NPi\nFKIe/SvpGS2NjiXSpMJKGo5sWJOOXkiShl59yH2eosLD7CkicigVEhERoC5/H3F/Hk0r+372tuxM\n26deJj09xehYIk0upqzhyEZY8tELyal9T2f9NffjwURZuO+cXOay/Y2ST0RCjwqJiDR77m2b6Pz6\nXJIdJWxs2YOWj7+EOTbe6FgihkiubFgkIuITjul5fa/7I1Uvfkbu/z0AQFhZkd+ziUhoUiERkWbN\nvel7ah78E3E1FaxueTrJs54nLCbW6FgihqgqKyfWZafGEkZ+TBoAaZ07HPPzE1NTiG7pm+YYXalC\nIiLHRqf9FZFmq3D1KqIeH0ekq4YvWp1B7ANzaJmkMiLNV0luHq2B4ugWpCx4hwp7NYkJxzdamNDK\nV0haVBTgdtVhsemjhoj8Oo2QiEizU1nr5t13PiF6zt1Eumr4MvMCtv7mNs5qd+gF4ESaE0dpGQDV\nUfFERkeTmHr866gS01LJi21JjKuaravW+DuiiIQgFRIRaXb+9vqHXPH2VCLctSzvMoizHplLvwSP\n0bFEDOcs9xUSZ+SJjxSazWb2dTsXgPKvl/oll4iENhUSEWlWvn//Q/7vo1mEeerIv+i3nD/zEWIi\nwoyOJRIQXOXlANRFxZ3U68SdPwCA9J9WnnQmEQl9KiQi0mxsee8fdFk0HavXzcb+v6fV2MlYrRaj\nY4kEDHelr5C4Y06ukHQ4+0yqbFG0rshjf+6+oz9BRJo1FRIRaRaK3n+bU16dhQUvyy/4P7qOux+T\nyWR0LJHAcqCQEH1yp7222mzsS24PwP5NOScZSkRCnQqJiIQ0l8fLf559gcRFcwD49wU3ceH4e7CY\n9e1P5JdM9goAzHEnN0ICUNnyFADs2zaf9GuJSGjTT2QRCVl1Hi+fzZ3HxZ8vBOCdC27lkrvHaGRE\n5AisBwqJxQ8XBjW1O9V3u2fbSb+WiIS2Yy4ky5YtY9iwYWRkZGA2m1m8eHGDx0eOHInZbG7w37nn\nnttgH6fTyV133UVKSgoxMTEMHz6c3Nxc/xyJiMjPeL1eVj/xOJevfBUPJvbeOJk/3Hsb0Tb9Hkbk\nSGzVlQCExZ98IYk5tRMA8fk7Tvq1RCS0HfNPZrvdzmmnncbTTz9NZGTkIb9hNJlMDBo0iPz8/Pr/\nPv744wb7jBs3jvfee4+3336b5cuXU1FRwdChQ/F4dLpNEfEfh8vNylkzOOvrt6gzmdlz8zTajbjG\n6FgiAS+ixldIIuITTvq10rt2BqBlyW7cbvdJv56IhK5jvnzq5ZdfzuWXXw74RkN+yev1EhYWRmpq\n6mGfX15ezssvv8yiRYu45JJLAHjttddo164dn3/+OYMHDz6B+CIiDXncbtbNmMrZ33+My2Thhxun\nc8aVQ42OJRIUog4UksjEky8kCS2SKYxMJNlRSuHOPbQ8tf1Jv6aIhCa/zV0wmUysWLGCtLQ0Onfu\nzOjRo9m/f3/942vXrsXlcjUoHhkZGXTt2pWVK3WechE5eZ46FzkzJnPW9x/jtNjYP/ZxzrhKZUTk\nWEU7qwCISUz0y+sVJWYAULJD07ZE5Mj8Vkguu+wyXnvtNZYuXcoTTzzB6tWrufjii6mtrQUgPz8f\ni8VCcnJyg+elpaVRUFDgrxgi0ky5XbVkP3QfndYvwWEJJ/u2x2hz0QCjY4kEDVdtLTGuajyYiE44\n+bNsATiS0n23eVovKiJHdsxTto7m2muvrf+6e/fu9O3bl3bt2vHvf/+bESNGnPDrZmVl+SNewAr1\n4wMdY6gI5GP0uFzY3voLp+3+Drs1ki9G3EPrxJjjzhzIx3iyOnbsaHQECXBVZeXEAVVh0SRa/HPB\nUHdKKwA8hSokInJkfiskv9SyZUsyMjLYunUrAOnp6bjdboqLixuMkuTn59O/f/8jvk6/fv0aK6Lh\nsrKyQvr4QMcYKgL5GD011eQ8cBeddn9HRVg0+8Y/zfCz+x736wTyMfpDeXm50REkwFWXHigk4bH4\nZ8IWWNN9hcRapKu1i8iRNdr5L/fv309ubi4tW7YEoG/fvthsNpYsWVK/z969e9m0adMhpwcWETkW\nXoedogfH0GnXd5SGx1E4aQHdTqCMiDR3m1euIv0B35no6qw2v71uVCvfGpLoUk3NFpEjO+YRErvd\nzpYtWwDweDzs2rWL9evXk5ycTFJSEtOmTeO3v/0t6enp7Ny5k0mTJpGWllY/XSs+Pp6bb76ZCRMm\nkJqaSlJSEuPHj6dXr14MHDiwcY5OREJWVWkZxQ/eTkbeJgojEskZ+zQX9e5pdCyRoOT4x6L6r6ti\nU/z2uolt2wCQVJ5PVVk52QufJX3Yb2l74JTAIiJwHCMka9asoU+fPvTp04eamhqmTZtGnz59mDZt\nGhaLhR9//JHhw4fTuXNnRo4cSdeuXfnmm2+Ijo6uf4158+YxYsQIrr32Ws4//3zi4uL46KOPdNVk\nETkurrISiibcQkbeJvKiUnj9urlceHYPo2OJBKWK4lI671gDQE6rHpiHXee3127RqiV1JgtJNWXs\nnDKOvt/8A9fcyX57fREJDcc8QnLRRRf96gUMP/3006O+RlhYGPPnz2f+/PnH+rYiIg3k7dmHa+pt\ntCndzd6YdOqmvcD9HdsZHUskaG359BNO97rZmHE6PZ59xa+vbbFZyY9uQXpVAV33rgegffF2v76H\niAS/RltDIiLib459ebgfvIWM0t3sim+DY/pLnKoyInJSvFt+BMBx+nmN8vpl8WkNtgtiDn8BZRFp\nvlRIRCQo7N26g4oJo2hVkceOpExSnniZLh0yjI4lEvTMjmoArInJR9nzxFT3alh0EqtLcLvdjfJe\nIhKcVEhEJOAVbN6C9aFbaFFZyMbkjlhmLCS2RQujY4mEBKvTDoAtOqZRXv+M0aPZPf01vht6J06z\njTBPHeWFRY3yXiISnFRIRCSglW3ehHXqn0hxlLClZXcy5r5EZmv/nQVIpLkLqzkwQvKzk9D4W+bp\nPTjjlpvZl9AagNK8vEZ7LxEJPo12YUQRkZO1/pu1tJ83jgRnFRta9aLjnOeIjW28D00izcmav/wV\ny9YfSaqpAiA8NrbR39MelwolO6nK2wd9ezf6+4lIcFAhEZGA9N1X33DqM/cSU+dgbZt+nDJznsqI\niB9lfPE2qfb/TZ2KaIJC4kxMhZ1QW6Art4vI/6iQiEjAcaxbRadnxhNZV8Pmrv3pOfUxIiPDjY4l\nElKiaqsbbEc2QSHxJvvOsOUtzm/09xKR4KE1JCISUPYu+xLvzLuJrKtheYeL6PjwXJURET9zu+qI\ncTUsJFFxjT8CaU1NByCsMLfR30tEgocKiYgEjKoV/6XFvPsJd9fyeZfBZE55BKvNZnQskZBjr6hs\nsO002wiLiGj0903o0AmAntu+YfWcRxr9/UQkOKiQiEhAcHz5CWFPTMDmqeOzHldy0czZtEto/A9I\nIs1RdVl5w21bZJO87yl9evHdsLsB6LHqn7hqa5vkfUUksKmQiIihXB4vBR+9i3Xeg1i8Hv7W4zec\n/sAUwq0Wo6OJhCxHRcNCUhMW1WTvfcZNo8iPSSPc4yJ305Yme18RCVwqJCJimH12Fy8+uoAWf52J\nGS+v9/4j/R+YSKvYMKOjiYS0moqKBtvOJiwkAPvTOwBQnP1Tk76viAQmFRIRMURNnYfP5y/gttUv\nAfBR/1u48oF7yIjVmhGRxuaq/MUakvCmLSS17TsD4Nm2qUnfV0QCk077KyJNzuPxsGLePP646jUA\nam6eyFVXXmtwKpHmo+4XhcTVxIUkqlNX+Bxi9uY06fuKSGBSIRGRJlVS7SLrice5ZO3fcZtMFI16\nkFZXXm10LJFmxV3VcMqWO6JpLzraqmdPAFrv34Hb7cZi0ZoxkeZMU7ZEpMm43W6+e3TGgTJiJufG\nabQapjIi0tS89oYjJE1dSJJaplEWHkd0nYOS/MImfW8RCTwqJCLSJLxuN1semcqA7z+i1mzFPm4O\nPa8abnQskWbJZK9qsO2NbNpCAlAclwZAyc5dTf7eIhJYVEhEpNF53XVsmzGRjlkfU2O2sfHWR0m8\ncKDRsUSaLbOjYSEhqukLiT2ppe927+4mf28RCSwqJCLSqLwuFzum3kvm+s+ptoSz+k+P0efSS4yO\nJdKsWX9RSExRMU2ewZXSCoC6fblN/t4iEli0qF1EGo231knRn++h3U/fUGmLYsOtjzNg4LlGxxJp\n9my/KCSW6KYfITGnZ/jee78KiUhzpxESEWkUVRVVbL3/dpJ++oaysFi+/NMTXKgyIhIQwp2+QuK0\n+K77Y41u+hGSqNZtfLcl+5r8vUUksKiQiIjflZSUsev+0Zyyax3F4fH8/f8eZ9igs4yOJSIHRDrt\nAGxt0xuXyUJy585NniGpbVvfbXl+k7+3iAQWTdkSEb9yV5RRNnE0XQq3UByVjHPqAm7r0tHoWCLy\nM5G11QC0nTybujArrRPimzxDi7atqTOZSaouxelwEB4Z2eQZRCQwaIRERPymIK+AveNvol3hFvZF\np2Ka9RfaqIyIBJTamhqia30jJNEJscQYUEYArDYbxdEtMOOlaLfWkYg0ZyokIuIXnuJCah/8ExlF\nO9gd25LcSS+Qktne6Fgi8gs7132PBS97EtpgCwszNIs90leGHGXlhuYQEWOpkIjISavZl0v5/aNo\nVbqHHfFtiXvsZc7qkWl0LGmm9u3bx4033khqaiqRkZF0796dZcuWGR0rYJStzwKgqH0Pg5OAM9x3\ndi9nZYXBSUTESFpDIiInpXzXThyTR5Ni38/GhEx23/MUV7RMNzqWNFNlZWWcd9559O/fn48//piU\nlBS2b99Oamqq0dECRkTOBgDM3foYnATqIqIAcFVVGpxERIykQiIiJ2zbD5uIf+QOUqpLyUnpxM67\nn2BIj9ZGx5Jm7LHHHqN169YsWrSo/r527doZFyjAuN1u2uRlA9DqzDMNTgPuSN/pht32qqPsKSKh\nTFO2ROSErP12PXEzbyWxupTv03rQ4tEXGdozA5PJZHQ0acbef/99zjzzTK699lrS0tLo3bs3zz33\nnNGxAkbhzj3E1VZRHJlIevu2RsfBE+mbsuVRIRFp1lRIROS4bV29llOevJMkZwXbMvvSYe4LpCYb\nc6YekZ/bvn07zz//PB06dGDJkiWMHTuWiRMnqpQcUF1WBkBlVKLBSXy8B0ZIvCokIs2apmyJyHHJ\nW7Oa1MfGEV3nYFOHc+g6+ynMYeFGxxIBwOPxcOaZZzJr1iwAevXqxZYtW3juuecYM2bMYZ+TlZXV\nlBGb3M+Pr2TTZtoD1dbwgDjuclcdAI6iwpPKEwjH0th0jKEhlI+xY8cTP82/ComIHLMdy5aR8vQE\nIt1O1na8gN6z5mI2+LShIj/XqlUrunXr1uC+Ll26sHv37iM+p1+/fo0dyzBZWVkNju/7gv0AeKJi\nA+K41+ZsBiDG7KXvCeb55TGGIh1jaAj1YywvP/HTd2vKlogck83/+Zy0efcR6XayqutAes58wvBr\nGIj80nnnncemTZsa3Ld582bat29vTKAAU3dgapQ7ItrgJD6WmFjfrUNTtkSaMxUSETm6H76j7YJJ\nhHtcrO41hDNmPEpkuM3oVCKHuOeee/j222+ZPXs2W7du5e9//zvPPPPMEadrNTeeACsktmjfGhJb\njd3gJCJiJBUSEflVjqX/4rQPF2Lz1PFVnxGcOe1hbFaL0bFEDqtfv368//77vPPOO/Ts2ZOHHnqI\nmTNncvvttxsdLSB47L4P/t7IwCgk4bFxAIQ5VUhEmjOtIRGRI9r17t9o9doczHh5t9c1DJn4ABaz\nfo8hge2KK67giiuuMDpGYHIc+OAfFSCFJM43ZSvcWW1wEhExkj5ZiMhhbX1jMRmvPYoZLwt7/J6z\n772P6DCNjIgEM9OBQmKKijE4iU9knG+EJLJWhUSkOVMhEZFDFLz+Epl/nwfAfy65jY5DBtI2TgvY\nRYKd5cBaDUt0YIyQRB8YIYl22XHY7ax98y1K8wsNTiUiTU2FRETqeTweNsx/ihb/eB4PJt666E4G\n3zmaRJvX6Ggi4gcHC4k1OjBGSMKjI6kzmQl3u9h31/Wc/s5jbHnlRaNjiUgTUyEREQC8Xi+rH3uE\nHktfxY2Jfw+9l6vvHIXZZDI6moj4ia3GNzXKFhtrcBIfs9lMtS0KgHYlOwFI2rbewEQiYgQtahcR\nvB4Pm+Y8zBmrPqDOZGHjjVO56qphRscSET8LO7BWIywmMAoJgCMsirja/12HpM6iU4qLNDcqJCLN\nnNftZvPsKXRa+ym1Zis/jHqYM6+83OhYItIIDp7NKiI2MKZsAYS5ahpsx1SXGZRERIyiQiLSjHnr\nXOTNnkyH7z6nxhLGuptmc/6QS4yOJSKNJNLlKySRATJlCyDRWQGAGxMWvMQ7Sg1OJCJNTWtIRJop\nl9PJtinjSf/uc+zWCFbcNEdlRCTERR2YshUVFziFZEtaFwA2XDYap9lGVJ0TR6UulCjSnKiQiDRD\nlVV2frxvDJmbVlBhi+azkY8z+IoLjY4lIo2otqaGcI+LOpOFsMgIo+PUS37wcX4Y9TB9R4+mLDIB\ngLLC/QanEpGmpEIi0sx4HdUUTB7DaXvWUh4eR96EZ7lm6PmYdDYtkZBWXeEbdai2RWI2B86P/5S2\nGZw+/ErMZjNVUb5C4p06mjUvLDA4mYg0lcD5jiQijc5rr6Rw4mgyd2+gKCKB6qkL6X7G6UbHEpEm\n4Kis9N2GRRmc5MgcMYkApNn30+dTXY9EpLlQIRFpJrwVZRTcfwstdv1EfmQyq+98hozuXYyOJSJN\npOZAIanpD4DZAAAgAElEQVQJ4ELiiktusF1WVGxQEhFpSiokIs2Au6SIovtvIiVvM3uj08ge/xxX\nnt/D6Fgi0kRq7NVULH4WgNoALiSe+KQG2/u3bjcoiYg0JRUSkRDnKSqg8N5RJBXsYGdMK34c9yyD\nzuhsdCwRaUI//vOf9NixGoDKlpkGpzkyU1xig+3K3TuNCSIiTUrXIREJYd6CPCom3UJq6T62xbel\ndOKzDOnaxuhYItLEPPl7Afiu9xB6T55mcJpfUVfbcHPvLoOCiEhT0giJSIjy5O6icsJIYkv28VPi\nqRRMXMBZKiMizZKltAgAc4duWG02g9Mc2SnDR1AQncLe+NYA2Ar2GJxIRJqCColICHLt3ErlhFFE\nl+9nQ3JnfrrrKS7o2sroWCJikPAK3+Lw8JRUg5P8uuSW6bR6YwnO26cCEFuca3AiEWkKmrIlEmKq\ncn7CPe0OYmoqyErtgf2+ufyhU5rRsUTEQDGVvkISk55ucJJjk9rhVADSynLxeDwBdd0UEfE//QsX\nCSHFG9bheWg0MTUVrG7Zm6hpz3CxyohIs5dg9xWShPSWBic5NgktkqmyRRFVV0NFSanRcUSkkamQ\niISI8rWrCJ9xB9G11axqexZtZz1Dz9YJRscSEYM57HZiXXZqzVbiWiQe/QkBojS6he92b57BSUSk\nsamQiIQA++oV2GbfTWRdDStO7U/3R5+mdVK00bFEJACU7ivw3UYlBdXUp8r4FN9tntaRiIS64PnO\nJCKHVbNyKZZH7yHcXct/Og6kx8OPER8VbnQsEQkQlfm+QlIRnXSUPQNLTaJvuqkzf5/BSUSksamQ\niAQx17JPMT9+PzZPHR92voLTHppJcrTKiIj8T3WBr5A44loYnOT4eJN9C/C9RfkGJxGRxqazbIkE\nqZol72NZMAOL18Nb3UZw3oQHaBWnMiIiDdUVF/puE4KrkFjTfIXEWlxgcBIRaWwqJCJBqPz9t4hZ\n9BgAf+n5ey4YezeZCSojInIob+l+321icBWSqDTfGcGiylRIRELdMU/ZWrZsGcOGDSMjIwOz2czi\nxYsP2Wf69Om0bt2aqKgoBgwYQHZ2doPHnU4nd911FykpKcTExDB8+HByc7VYTeR4ON9dVF9GXj9r\nFJeMH0e3FpEGpxKRQGWpqvDdxgfPGbYA4jMyfLeVRQYnEZHGdsyFxG63c9ppp/H0008TGRmJyWRq\n8PicOXN48sknefbZZ1mzZg2pqakMGjSIqqqq+n3GjRvHe++9x9tvv83y5cupqKhg6NCheDwe/x2R\nSIjyer0ULXoe62tPA/D8WaMZds8YOiRqZEREjsxaXem7jYs3OMnxSW6djgcTydXF1LlcRscRkUZ0\nzIXk8ssvZ+bMmVx99dWHnDbQ6/Uyb948Jk2axIgRI+jevTuLFy+msrKSN998E4Dy8nJefvll5s6d\nyyWXXELv3r157bXX+P777/n888/9e1QiIcbr9VL4whMkvv8Sbkws6H83V95xM4kRFqOjiUiAC6v2\njZCExcUZnOT4hEVEUBYRjwUvRbs1m0IklPnlLFs7duygoKCAwYMH198XERFB//79WblyJQBr167F\n5XI12CcjI4OuXbvW7yMih/J6PPzw6J9p8dkb1JksvHrZBP409kbax4cZHU1EgkBEjW+mQkR88F0o\nNT/1VAD2fbfW4CQi0pj8Ukjy832n5EtLS2twf2pqav1j+fn5WCwWkpOTG+yTlpZGQYEWrIkcjtft\npuTJaXRf9QG1Ziuf/m4a19/yO8ItOmO3iBybSKevkEQmBNeULYCabn0BcP+wxuAkItKYGv0sW79c\na3K8srKy/JQkMIX68YGO8YR53CS++wrtc1ZRYwnjzcHj6N2xJT+u/87/73UM9PcY3Dp27Gh0BDFI\ndK2vkMQmBdeidoCkM86GT1+k9/efsf/3q9jReyA9bh9LVFyM0dFExI/8UkjS033nCi8oKCDjwFkx\nDm4ffCw9PR23201xcXGDUZL8/Hz69+9/xNfu16+fPyIGpKysrJA+PtAxnihvnYu8GfeTnrMKuzWC\nJy+dyoSRlxJlM2ZkRH+Pwa+8vNzoCGIAd10dUXVO6kxmImOijY5z3Nqf1rP+66SaMpK++QdrbeGc\nOf4+A1OJiL/55dNNZmYm6enpLFmypP6+mpoaVqxYwbnnngtA3759sdlsDfbZu3cvmzZtqt9HRMDr\ncrF/xn2kb/iKKmskH98whwdvusywMiIiwavWXg1AVVjMISekCQYWm5UN3S4GYGtqZwDMZcVGRhKR\nRnDMIyR2u50tW7YA4PF42LVrF+vXryc5OZk2bdowbtw4Zs+eTZcuXejYsSMzZ84kNjaWP/7xjwDE\nx8dz8803M2HCBFJTU0lKSmL8+PH06tWLgQMHNs7RiQQZr6uW0hn3kvz9Cips0fxn5GP8fogKu4ic\nGJfdAUB1eDTJR9k3UHV7cAb5eXdQvX49vDETs9NhdCQR8bNjLiRr1qzh4ot9v6UwmUxMmzaNadOm\nMXLkSF5++WUmTJiAw+FgzJgxlJaWcvbZZ7NkyRKio/83RDxv3jysVivXXnstDoeDgQMH8vrrr5/0\nOhORUOBx1rD3obG03ryasrAYFv12NvdccY7RsUQkiLmrfSMkjvDgXXMRER1F646nUnzgl6JWZ7XB\niUTE3465kFx00UVHvYDhwZJyJGFhYcyfP5/58+cfe0KRZqDGbmfX5LvosGsdpWGxfDbyce6+7EzM\nKusichI8BwqJMzK4rkFyOLYDv+C0qZCIhJxGP8uWiPw6b42DXRPH0GHPBkrC49l2z3yuO/s0o2OJ\nNIoBAwYc16i41+vFZDKxdOnSRkwVwhy+D++uqOAdITkoLMZ3DGG1mrIlEmpUSEQM5HVUU/aQr4wU\nRyRQNWUBZ/foYnQskUbj9Xob3ErjMh0oJO6o4B8hCYvyjZCEuVRIREKNComIQWorK9g54XZO3ZdN\nYUQiX9/6FL9VGZEQ9+WXXxodoVmx1PgKiTc61uAkJy8y1jdCEqEREpGQE3znABQJAV57JYUTb+PU\nfdkURCXz5nVzGda/59GfKCJyHKwOu++LmOAfIYk4cB2ViDoVEpFQoxESkSbmKC2jcNKtZORvJi8q\nBfuUF7i32ylGxxIxXGVlJeXl5Yc9gUrbtm0NSBT8bE5fIbHExhuc5ORFHljUHlXnxO12Y7FYDE4k\nIv6iQiLShNzlpRQ+MJqMwq3kRaeycex8BquMSDO3cOFC5s6dy7Zt2zCZTPXrSw5+bTKZcLvdBqcM\nTpHVFQDY4oO/kFhsVqos4US6ndTYq4mOC/5paCLioylbIk3EW15C8QN/IqNwK3tj0nE//BKDz+xs\ndCwRQ/31r3/l9ttv55RTTmHWrFl4vV7uueceJk2aRGpqKqeffjp//etfjY4ZlDweD22LdwCQ2qWr\nwWn8w2GLBKC6ssrgJCLiTyokIk3AW1ZC2QO3kJy/jV0xLSmYtID2p2oKisjTTz/NJZdcwmeffcaf\n/vQnAIYMGcKsWbPIzs6mrKyMsrIyg1MGp8Idu0lwVlIWHkdqZmh8v6k5UEicKiQiIUWFRKSReUv2\nU3L/KOLyd7A9tjVr73qGM7u3NzqWSEDYsmULV111FQBms+9HUm1tLQCJiYnccsstPP/884blC2b7\n1q8HILdl5/o/22BXG3agkNjtBicREX8Kje9QIgHKtb+Asgk3kbB/N1vj2rDxnme55qxTjY4lEjBi\nYmLq14zExsZisVjIy8urfzwpKYk9e/YYFS+ouTb/AEBNZjeDk/hPbVgEAMVf/ofczVsNTiMi/qJC\nItJIKnNzKbh3FHFFe8mJb8fGcc8wrE97o2OJBJTOnTuTnZ0NgM1mo1evXrz66qvU1tbicDh4/fXX\nyczMNDhlcIrbtQmA6O6nGZzEf1zhUQD0Xf4m6ROu0ckOREKEColII8jdvgv7xJtpWbGPbUmZ5E94\nlqv6tDM6lkjAGTFiBB999BE1NTUAPPTQQyxbtoykpCRSUlJYuXIlkyZNMjhlcIq2lwKQ0CY01o8A\nuA8UkoO2frPaoCQi4k867a+In/3441YSZt9BSvV+cpI7kPTIC1ycmmx0LJGAdO+993LvvffWbw8f\nPpxly5bxj3/8A4vFwrBhw7jwwgsNTBi8wtxOAGyREQYn8Z9fFpLKzz+Cob8xKI2I+IsKiYgf7du6\nnRazbyOlupjdLbvQ4uHnSU1JNDqWSFA5//zzOf/8842OEfTC6nwnBwiLiDQ4if94f3Esp2xcwXYV\nEpGgp0Ii4ifZP+SQPPsOWjhK2JrelVMfX4g1RhfuEhFjhLl9hSQ8hEZIvBHRDbbjnZV43B6D0oiI\nv6iQiPjB7uxNtJh1O8k1ZWxt1YNWjz6vMiJyDDIzMxtcnf0gk8kEUH+l9u3btxsRL2h5PB4i3AdH\nSMINTuM/pqioQ+6rc9YakERE/EmFROQkOfPyiHrzSRJrytnSphcd5zyP5TA/NEXkUIdbH+J2u9m1\naxdff/01PXr0oE+fPgYkC24upxMr4DJZiLCF0I96y/+OpTw8lnhnJe5aFRKRYBdC36VEml7V5o10\nfWMu8c5Kfso4nU6PPqsyInIcFi1adMTHNmzYwKWXXsp1113XdIFChLO6BivgtIQROhO2wFtWUv+1\nwxblKyROp4GJRMQfdNpfkRO0d8P3uB+6lXhnJd9l9KHdI88RER199CeKyDHp1asXt956Kw888IDR\nUYJObY3vQ3qtNczgJP5laeO7Jo0HE7U2X9Vya8qWSNDTCInICfjh27W0eWIsMS4737Tqw6kz5xMf\nq5EREX9LTU3lp59+MjpG0HEduK5LrSW0Ckmvq0ewrtZJq3PPo/axyQB4NGVLJOipkIgcp51r1tLm\nibuJdVXz06nn4Ln6BlomaGRExN+Kiop4+eWXycjIMDpK0HHVOIDQKyRWm41+N/wfAD+F+UZIvBoh\nEQl6KiQix8H543ckP3YXUS4HP3U6n+6znmDdhu+NjiUStAYMGFB/Rq2fKy0tZdOmTbhcLl599VUD\nkgW3gyMkrhCbsvVzdWG+a5J4XVpDIhLsVEhEjlHhmlVEzxlHVF0NyzPP56yHn8BiC90f9iJN4eDp\nfn9+2l+TyURmZiaDBg3ipptuokuXLkbFC1p1jgOFxGIzOEnjcR8YIUGL2kWCngqJyDGoWruK6Dlj\niahz8uUpF9Ju8iwiI1RGRE7Wl19+aXSEkFR3YISkLoRHSDzhvhESk9aQiAQ9nWVL5Ch2LV+Gefbd\nvjLS8WLOmv0YHVpozYhIMHjkkUcwm83cddddRkdpUm7ngUISwiMk3nDfCIlJU7ZEgp5GSESOwOv1\n8u47n3DF36YT7nHxeadBnPbQDGI0MiJywhYvXnzYNSNHc8MNNxz3c7799lteeuklTjvttBN6z2Dm\nPnDa3zprKBcS3wiJuVaFRCTYqZCIHMHyDz5lyN+mEeapY0OfofR/YBqR4fonI3IyRo0adULPO95C\nUl5ezvXXX88rr7zC9OnTT+g9g5n3wId0dwhP2eJgIdEIiUjQ06crkcPYueQzzlz8EDavm90XXE3v\n8Q82u9+wijSG7du3N9guKyvjxhtvJDk5mTFjxtCxY0cANm/ezHPPPUdpaSmLFy8+7vcZPXo011xz\nDRdeeGGDBfPNhefAlK1QLiSmSN+1nywqJCJBT4VE5Ge8Xi8/fvRvOr0yHavXTdaZv+FMlRERv2nf\nvn2D7ZEjR5KWlsann36K2fy/ZY2nnXYav/nNb7j00kt56qmnWLRo0TG/x0svvcT27dt58803AZrl\nv9+DIySeEJ6yZY70jZCokIgEPy1qFznA6fbw9ivv0umVaVi9bj45/Tf0maAyItKYPvjgA6666qoG\nZeQgs9nMVVddxQcffHDMr5eTk8ODDz7IG2+8gcViAXy/aGhuoyReZ+hP2bJE+AqJVYVEJOhphETk\ngI/e/he/+ehRrF4P2Rddx6A778FmVWcXaUwej4fs7OwjPp6dnX1cZeKbb76hqKiI7t2719/ndrtZ\nvnw5CxcuxG63Y7M1HDXIyso6/uABrqqkCACv1RaSxwdQXFpGT8Dmqg3ZY/w5HWNoCOVjPDjl9kSo\nkIgAm7/4kiHvzsDqdVN06XX0uO1ejYyINIERI0bwwgsv0L59e26//Xaio32n1K6qqmLBggUsXLiQ\n66677rhe78wzz6zf9nq9jBo1ik6dOjF58uRDyghAv379Tv5AAszq/3wKgMdmC8njA9hodwBgq3PS\nM0SP8aCsrKyQ/Xs8SMcY/MrLy0/4uSok0qx5vV4++GApg16dRJinjvVnDKePyohIk5k3bx47duxg\nwoQJTJo0ifT0dLxeL/n5+Xg8Hs477zzmzZt3zK8XHx9PfHx8g/uioqJITEykW7du/o4fsEwH1pB4\nQ3jKlu3AovYwV43BSUTkZKmQSLPl8Xr554dfMfi1B4nwuPih9+X0nDBFZUSkCSUkJPDll1/y4Ycf\n8vHHH7Nr1y4AhgwZwpAhQ7jyyitP+t+kyWRqdv+uzXW+q5d7baH7Yz4s2ldIOpTsIPuOG2g7+xli\nEuKP8iwRCUSh+51K5Fc43R7m/+1LRr83hSi3k339LqXX5JmYDrOwVkQal8lkYvjw4QwfPrxRXv+L\nL75olNcNZAdHSAjhEZKwA9P7ADrn/cC6Dz+i3w3XG5hIRE6UPn1Js+P2eHn+nyu55Z9TialzUNT3\nElpPUhkRkdBRfyrcw6yZCRURUdEN7zA3r1EwkVCiERJpVrxeL698vIYb3plMnMuOvc+FpE56BJNF\n/xREmsKAAQMwmUwsWbIEq9Vav30kXq8Xk8nE0qVLmzBl8DtYSEy20B0hiYiObLDtrbYblERETpY+\nhUmz8rcvNnDlaxNIqK2kvMc5JE56DFMIXzhMJND88hS+B7eb23VCGpulLvRHSMIiI/j5/zXeilLD\nsojIyVEhkWahxFHHoqU/8PvX76OFs5zSzv1InvpUSP/2UCQQffnll7+6Lf5hPbCo3RzChcRsNuP+\n+XZFmWFZROTkaNK8hLxdFbWM/8d3XPPGA6Q5Sig+pRfJf56PKSzc6GgiIo3C5vIVElMIF5JfstlP\n/BoIImIsFRIJaT/sr+He9zYw/dOptKreT22HHqTMeg5TROTRnywijS47O5sPPvigwX1fffUVgwcP\n5qyzzuKpp54yKFlwsx2YsmUJC+1C8t3QMeyJbQVAuF0jJCLBSoVEQtbeShdT/v0Tj/73z7SxF+DJ\n7ELE9OcxRUYf/cki0iTuu+8+XnzxxfrtvXv3MnToUNatW0dlZSX33nsvixYtMi5gkLK6XQCYrKE9\nM/uMW25h+29vByDKUWFwGhE5USokEpK2lTl58JNNPLb0z2RW5uJt1wHrnxdgiok1OpqI/Mx3331H\n//7967dfe+013G4369evJzs7myuvvJLnn3/ewITBKcztm7JlCQv9dXK2GN8vmWJqVEhEgpUKiYSc\nbWVObnt/ExM+nkaHij14WrfH8ueFmOISjI4mIr9QVlZGampq/fbHH3/MxRdfTOvWrQG44ooryMnJ\nMSpeUPJ4PITXT9kK7RESgLCYKDyYiHVW4XbVGR1HRE6AComElMpaN7O+2MHjy2bRpWwHnvQ2WGcs\nxJSQZHQ0ETmMlJQUduzYAUBpaSmrVq1i0KBB9Y87nU6dEvg4lewrJNzjoiIsBmszOJOgxWKhKiwa\nM14qSnXqX5FgFPq/OpFmY0WunVlf7WTGf2fSs2QLnpRWWGe8iCkp9ehPFhFDXHrppTzzzDMkJCTw\nxRdf4PV6GT58eP3j2dnZtGnTxsCEwWf/5i0kAgWJGZiaydXLKyPiiKutonJ/MYmpKUbHEZHjpEIi\nIWHp7ioe+mIXc1c8Su/iTdQlpRI280VMKelGRxORXzFr1ixycnK47777CAsLY+7cubRv3x4Ah8PB\nO++8w/XXX29syCBj37UNgKrUtgYnaTrVUfFQkUd1SYnRUUTkBKiQSNArrXEze2Ues755kjP3/wiJ\nLQib8SKmtNZGRxORo0hLS2P58uWUlZURGRlJeHjD6wMtXbqUtm2bzwdrf/Du8U2B87bOpHmMj4Az\nKh6AmuIig5OIyInQGhIJanUeL3/+Oo/xK57mgvzvIDYB859fwNS6ndHRROQ4JCQkHFJGIiMjOf30\n00lK0hqw4xFZsBuAiHaZBidpOs7UDABa/u1pcjdvNTiNiBwvFRIJWqU1biZ8lce5/5rPpXtX4omI\nwjztWUxtTzU6mogch5ycHK677jpatWqFzWZj6dKlABQVFTFq1ChWrVplcMLgklLiKyRJHToYnKTp\ndLrpNrakd6WFo4S8v79hdBwROU4qJBKU/ru7iqs/3EW3T//C1Ts+x2MNw/rg05g6dDc6mogchw0b\nNnDGGWfw+eefc8455+B2u+sfa9GiBT/++CMLFiwwMGFwsVdU0qK6hFqzlfT2zWekOCE1mdphNwD/\nGyESkeChQiJB561NZdz31T6Gff8uo3Lex2uxYH3gcUw9+xkdTUSO08SJE2nZsiU5OTksXLjwkMcv\nu+wyvv76awOSBaf9O3cBUBibhsXWvJaJJp3iGx1PLMk1OImIHC8VEgkqb24s5bE1+7l6+xLu+vFN\nMJkwj52B6Yz+R3+yiAScFStWMHr0aBISDn/h0rZt25Kbqw+Yx6rywJ9VZXyawUmaXlr7dtSZzKRW\nFeJ0OIyOIyLHQYVEgoLL7WXumv08nlXEpbtXMHH9XwEw3ToJc//LDU4nIicjIiLiiI8VFhb+6uPS\nkDM/D4CaxOZXSGwRYRTGpGHGS8H2nUbHEZHjoEIiAc/r9TLl63ze2FTGRfuymLH2WUxeL6Yb7sZ8\n2TVGxxORk9CnTx/+9a9/HfYxl8vFW2+9xdlnn93EqYKXZ3++77ZFS4OTGKM02Xe2rdLt2+vvKysq\nZtvadUZFEpFjoEIiAc3j9fLk2iKW7Kri3NKNPLZ6HmaPB9PVozD/ZpTR8UTkJD344IN89tln3HLL\nLWzYsAGA3NxcPvnkEy6++GJycnKYPHmywSmDh63YV0isac3zorA1aW0AcO7eWX+fZ8wI2s+4iR3r\nfzAolYgcTfNa8SZBpbLWzfRvCli6206X8p08ufIxzHW1mC69GtP1dxkdT0T8YPDgwbz++uvceeed\nvPzyywDceOONgO/aJG+88Qbnn3++kRGDSlRZoe+2ZfO8MKy5dXsAojZm4Xa7sVgsxDsrASjJ/pHM\n03samE5EjkSFRAKSy+3l5s/2sqWslg7O/by8eg7WGjucOxDT6EmYTM3l+sMioctut9OzZ0/GjRvH\nnj17+M9//sPmzZvxeDx06NCBSy+9lNjYWKNjBpWESl8hSchonoUko/+F2D9cQNe961n79FP0vuPu\n+qkgtoREQ7OJyJGpkEhA+seWcraU1dLNWs3LXz+KtaIYep6B+Z5ZmCwWo+OJiB9ER0dTVlZGWFgY\n0dHRXHXVVUZHCmqumlqSqktxYyK5dfNcQ5Levi3ZdzxC5/nj6PH1O+y+cCDtDzzmdXuMjCYiv0Jr\nSCTgrN5XzYINxUTW1fDcN49izd8DmZ0xT3wCky3M6Hgi4kdDhgzh448/NjpGSCjOzcOMl5KoJGxh\nzfd7ZbeLL2Rjm96Eu13YX3u+/n6PU6cCFglUfi0k06dPx2w2N/ivVatWh+zTunVroqKiGDBgANnZ\n2f6MIEHM4/WycEMxt32ei6Omlr+sm0fs7k2Q1hrz1GcxRWvqhkiomThxItu3b+eaa65h6dKl7Nq1\ni8LCwkP+k6Mr27vXdxubYnAS43kvvxaA7jvX1N/ncTqNiiMiR+H3KVtdunThyy+/rN+2/Gx6zZw5\nc3jyySdZvHgxnTp14uGHH2bQoEHk5OQQExPj7ygSZJ7MKuKNTWWYvR5e2/oXOu7+DuITMU9/HlNi\nC6PjiUgj6NnTt8g4Ozubd99997D7mEwm3G53U8YKStUHrkFS3QyvQfJL3QZdQtniOBKcFfX3eWtV\nSEQCld8LicViITU19ZD7vV4v8+bNY9KkSYwYMQKAxYsXk5qayptvvsno0aP9HUWCyJsby3hjUxlW\nk5f3Sv9Jqx+WQkQU5oeexdSyrdHxRKSRTJ069aj76CQWx6auwHfK37qk5nnK35+z2KzsyuxNwqav\n6u/zaoREJGD5vZBs376d1q1bEx4ezllnncXs2bPJzMxkx44dFBQUMHjw4Pp9IyIi6N+/PytXrlQh\naaY+2lbBv7ZXsCbfN7d3Uc0XtFr6N7BaMU96AlOHbgYnFJHGNH36dKMjhAxz0T7fbWrzXNB+iF7n\nwM8LiUZIRAKWX9eQnH322SxevJjPPvuMl156ifz8fM4991xKSkrIz/f95iYtreFQcmpqav1j0rzk\nlDh5+NsCVuc78AJzWUeXf70AgGnsDEy9dHVmEZFjFVFa4LtNb3WUPZuHNv37N7xDhUQkYPl1hOSy\nyy6r/7pHjx6cc845ZGZmsnjxYs4666wjPu/XhuOzsrL8GTHghPrxweGPsarOxGO7oqnzWDgnvpY/\nVK7j7HfnAbB30O/YH9kCgujPprn+PYaaUD7Gjh07Gh1BGllchW/xf2zr5nkNkl9Kad2S7zpfSK+c\nA6MkLhUSkUDVqNchiYqKonv37mzdurX+/PIFBQVkZGTU71NQUEB6+pHnu/br168xIxoqKysrpI8P\nDn+MlbVubv1PLvtqnZwSH8aTXeqwTXsBPG5Mw66n3U330s6gvCeiuf49hppQP8by8nKjI0gj8ng8\nJFftByC5jQrJQX3mzCNr0SJ6v/80ptpao+OIyBE06nVIampq2LhxIy1btiQzM5P09HSWLFnS4PEV\nK1Zw7rnnNmYMCSAOl4e7l+axscRJm1gbC3uZsD1yNzjsmC64FNPIe4yOKCISdMqLiolw11JliyIm\nId7oOAHFFBYOgFkjJCIBy6+F5L777mPZsmXs2LGDVatW8dvf/haHw8GNN94IwLhx45gzZw7//Oc/\n+TL/n0QAACAASURBVPHHHxk5ciSxsbH88Y9/9GcMCVA1dR7GfZnH+v01pEdZWXhWNImPjYXSIuh5\nBqa7H8Zk1rU6RUSOV8meXACKYw89y2VzZw6P8N2qkIgELL9O2crNzeUPf/gDRUVFpKSkcM455/Dt\nt9/Spk0bACZMmIDD4WDMmDGUlpZy9tlns2TJEqKjo/0ZQwJQmdPN2C/y+H5/DckRFl64MJnUx++C\n3J3QrqOuwi4ichKq8nzXIKmKUyH5JUv4wRESTdkSCVR+LSRvvfXWUfeZNm0a06ZN8+fbSoBzuDzc\n9d9cfix2kh5t5bmL0sh44UHI+R5apOsq7CIiJ6l2n+8q7c5kXRTxl8wHpmxZNEIiErA0P0Ya1Z4a\nM//3yf+zd9/xbdTnA8c/p2END3nPDGcnziDBIewdCGWUH5uyyl4JZRYoewZK2dAESqFQUmhCSlNo\nwx6BNJTE2WQvJ3HiPWTJ2tL9/jhZsiI7OOBYtvO8Xy9e1n11d3rOjvE993zHTn6o91KYbOCtKf0o\nnvMcLP4aUtLQPfgySpY80RNCiJ+lWuuyRV6/ve93ADJYtC5b+oBUSIToqfbrLFviwFbnDvD8jmSa\ngz4GpBp58YRCsj9+G/XjuWBMQnfP8yj9hyQ6TCGE6PVM9VqXLVNR/wRH0vMYkrSExCAJiRA9liQk\nosupqspf1jQyd6Od5qCO0jwLL59QSNJ3n6K+/RIoCrpbH0cpmZDoUIUQok+wNWqrtKf1H5DgSHoe\ng0XrsmUISJctIXoqSUhEl3tuWR1vr20CIMcY5Imj8jFtWEHohQcAUC6/FeWIyYkMUQgh+oxgMEiO\nQ1sUMbe4N63i1D2M5tYKiT/BkQghOiIJiehSH21r5u21TRh08NiR+dhqN5DdWEHoydsg4Ec59QKU\nX16S6DCFEKLPaKysJiPkp9FsIzstJdHh9DitCUlSUCokQvRUMqhddAl/SGXOhiamf6+tFHzXIblM\nKU7F7HIQeuQmcNhh4jEoV92BoigJjlYIIfqO+vLt2te0/ARH0jMlmS0AGINSIRGip5IKifjZVFXl\noUXVzN/mAOD4/smcMywN1eth8JyXoboChoxCd8eTKHr5JyeEEF3JWbETgJbMggRH0jMlmbUxJEky\nqF2IHkvuDsXP9ufVjczf5sBiULjv0FxOKk4FVSX03L0k79oKOfno7n0BJfyUSgghRNcJVmlrkARy\nChMcSc+UFB7Ubgr6CIVC6HTSOUSInkZ+K8XP8tG2ZmasrEcBnjgqn1MHp2HUKahvPQ//+5KAyYLu\n/pdRMnMSHaoQQvRN7hbta0paYuPooQxGIwFFjw6VoC+Q6HCEEO2QhET8ZHM32rl3YTUAt5Rmc2x/\nbTBlaP5s1H+9DXoD2869AWWArDUihBD7i+LTuiLpkpISHEnP5dVr3xuPx53gSIQQ7ZEuW2KfqarK\nn1c3MmNlPQA3HpTFpaPStfcWL0D981MAKFPvx5kmXQiEEGJ/0oXHRihJpgRH0nP5DEkkB9z43G5I\ntyU6HCHEHqRCIvaJqqr8oayOGSvr0Slw36G5XDMuE0VRUDevIfTM3RAKoVx4PboTfpnocIUQos9T\n/Np0tjpJSDrk1xu1rx6Z+leInkgqJGKfvLvezrvrmzDqFKYflcfkgakAqDW7CT12M3g9KMefjnLB\ntQmOVAghDgw6v3TZ+jF+g5as+TyeBEcihGiPJCSiU1RVZd7mZp5bpq0z8njbZMTpIPToTdBUD2Mn\nodz4gKw1IoQQ3UQf7rKlN5kTHEnP1VohCUpCIkSPJF22RKf8ZU0jj/yvhkAIfl2SwUmtyYjfT+j3\nt8POrdB/MLq7nkYxGhMcrRBCHDj0AW3BP51Jumx1JBCukAx4+HJWzPsgwdEIIfYkCYn4UQt2Onl5\nuTa17wOH5XJLaTagVU3UGY/A6iWQkY3u/pdQUlITG6wQQhxgWiskBklIOhQ0Rr83Y998kOX/mAfA\nuq++ZeWH8xMVlhAiTBISsVfrGzzc+99qVODG8VmcNSw6O4n691dRv/o3mMzawoe5MqOWEEJ0N0Ok\ny5YkJB1RQsGYbd3CjwAY/sJvGPP6vTTW1CYiLCFEmIwhEe3yh1R+v7iG9zc1owInD0zhqjEZkfdD\nX36AOvtV0OnQ3f4kytCSxAUrhBAHMENQS0iMZklIOjK8ck3Mdoq9hqA/ukiivaqGjFxZwFeIRJEK\niYjj8oe45avd/GNTMwadwrnDbTx0RF5koLq68nvUPz4KgHL1nSiTjk1kuEIIcUAzhMeQSJetjm3K\nGwnAmuJJAGQ5anG1tETed9XVJSQuIYRGKiQihtMX5MYvdrO6zkO6Sc/LJxQyOjs6c4u6fTOh398B\nwQDKmZeiO/WCBEYrhBDCENQSkiSzzLLVkfQ7n2DZF58y/rLL8Vx8NKn+Fip27sIaft9TW53Q+IQ4\n0ElCIiLcgRB3LKhkdZ2HwmQDMyYXMTAtOq+92lCjTe/rcsLhJ6L8+pYERiuEEAIgKdxlyyBdtjqU\nP6SY/CHa+liVKTkU2XfRsHED/cLvB+plDIkQiSRdtgQAde4AV3xcwfdVbjLNel49qV9sMuJuIfTI\nTVBXBSMPQnfLYyg6+ecjhBCJZgxXSEyyDkmnNKflAuDftjHSpjRKly0hEknuKAW+YIjbvq5kQ6OX\n/qlG/nRSEf1So2uJqAE/od//Fso3QuEAdPc8hyJ/+IQQIuFCoVCkQmI0y0rtneHJzAfAtGtrpM3Q\nJAmJEIkkXbYOcCFV5cFF1ayu85BvNfDmlH5kWqL/LFRVRZ35OKz4DmwZ6O5/GSUtYy9nFEII0V2C\ngQB6VAKKHpMsStspoewCAHJqyyNtFkd9gqIRQoBUSA5o3mCIBxdV83G5E6tB4bnjC2KSEQB1zmuo\nX/wLksJrjRT0T1C0Qggh9uTzeLWveklGOsuQp1VI8pw1kbZUZ0OiwhFCIAnJAcvuDXLtZ7v491YH\nZr3Cs8cVMjIzthtW6MsPUN+dGV5rZDrK8LEJilYIITrviSee4JBDDsFms5Gbm8svf/lL1qxZ8+MH\n9kI+jwcAvyQknWYtKIpry3A3EAqFEhCNEAIkITkg1bgCXP1pBatqPeQnG3jzlP4cWmCN2Udd+b/Y\ntUYOPT4RoQohxD5bsGAB06ZN47vvvuPLL7/EYDAwefJkGhsbEx1al/OHKySSkHReWkF+XJsp6MfZ\naE9ANEIIkDEkB5xVtW7u+raKqpYAg2xJzDyxkLzk2D9kavlGQk+G1xr5v8tkrREhRK/y8ccfx2y/\n/fbb2Gw2Fi1axGmnnZagqPYPf6RCIgPaOyujIK/d9sbdlaRlyRhJIRJBKiQHkKXVbq76pIKqlgBj\ns828MaVffDJSV62tNeJuQTnyZJTLbk5QtEII0TWam5sJhUJkZPS9m83WCklAEpJOsyQn4zAmx7Xb\nt5d3fzBCCEASkgNGnTvA776tJKDC2UPTeP3kfqSb9DH7qC0OLRmpr4FRE1BufkTWGhFC9Ho333wz\nEyZM4PDDD090KF0u6A132TJIl6190ZScGXlda80CwFO+JVHhCHHAky5bB4A6d4BrP9tFrTvIhFwz\nvzs0F4NOidlH9fsJPfVb2L4Jioq1tUaSZNVfIUTvdtttt7Fo0SIWLlyIoijt7lNWVtbNUXWdhk1b\nKAZ8ir7D6+jN19dZ+3qNRouN/k07AdiRM4Sc7fUEt23o0d+rnhxbV5Fr7N2GDRv2k4+VhKSP22r3\nMe2LXVS2BBiansTTxxTEJyOhEOrLD8HK78GWie6Bl1FSbYkJWAghusitt97KnDlz+OqrryguLu5w\nv4kTJ3ZfUF1srd2pvTBZ2r2OsrKyXn19nfFTrnHp+3lQ+YO2UXIwbF/MpC3/ZddL5finPcKQQw7e\nD5H+dPJz7Bv6+jXa7T99Ygjpj9OHbbX7uObTCirDY0ZePakofp0RVUV981nUBfPBbEV3/4soefFT\nIgohRG9y8803M3v2bL788kuGDx+e6HD2m9YuW0GDjCHZF8H07Mhr25iDIq+L7Lto+dvMRIQkxAFN\nKiR9VLndx3WfVdDgCXJYgZVnjyvAYojPP9V/voX6wd/AYEB39zMoQ0cnIFohhOg6U6dOZdasWcyb\nNw+bzUZVVRUAqampJCfHD2buzYI+LSEJSUKyT5TMnMjrzP79Yt4LGs177i6E2M+kQtIHbW/2cc1n\nFdS5g0zKt/BcB8lI6IsPUP/6AigKys2Poow/LAHRCiFE15o5cyZOp5MTTzyRwsLCyH/PPPNMokPr\ncqHWhMQoCcm+MObkRl5b0lJj3ktyO7o7HCEOeFIh6UOavUHuWVjF4io3/pDKxDwLzx9fiLm9ysiS\nb1D/+AgAylW/RXf0Kd0drhBC7BcH0orbqs8HSEKyryxZ0S5bltQUVv/6IQa98xQpfhcpjroERibE\ngUkqJH3I9MU1/He3C39I5egiKy8cX9h+N631Kwj94S4IBVHOuxrd6b9KQLRCCCF+rlB4DIkqCck+\nMaWlRV7r9XrGn3Umyiv/BiCjpSFRYQlxwJIKSR8xb7OdT8qdmPUK7542gGJb+3+c1B1bCD12M/g8\nKCedhXLRjd0cqRBCiC7jb01IZJr2fdF/9EhWDzkcX24Rk8JtKRk2PHojyQE3Lc0OkvfoyiWE2H8k\nIekD/rurhce/rwHg7kk5HScjNbsJPTwVnM1w6PEo19/T4bz8Qggher7WLltIhWSf6PV6xj8zI6ZN\np9PRYM2iwFFF4+4qSUiE6EbSZauXe3+TnZu/2k0gBL8amc6ZQ9tfP0RtqCF0/3VQXw0lE9DdNh1F\nL/moEEL0auFB7UiFpEs4UrRV2x2VVQmORIgDiyQkvdj7m+w8+r8agipcNSaDOyZmt7ufam8g9MD1\nUF0BQ0vQ3fsCikmmNRRCiN5szedfUrrwXQCUJKmQdAW3Tfs76q6VhESI7iSPyHup5TVungh307pj\nYjYXj8podz/V2UzowRugYhsMGIrugT+iJEsZWggheruRL98e3UiSCklXCKRr65MEamsSHIkQBxZJ\nSHoZVVV5/YdGXlvVQECFS0vSO05G3C2EHpkG5RuhcCC6R15BSUvv5oiFEEJ0tapt28lpsy0Vkq7R\numCi0lCd4EiEOLBIl61e5o0fGvnjinp8IZVfDknlNxM66KbldRN67DewcTXkFqJ75FWU9KxujlYI\nIcT+sOv772O2Qw57giLpW6yDhwGQvn1tgiMR4sAiCUkv8m1FCy+vqEcBnjomn4ePyMegi58lS/V6\nCD1xO6xZBpk5WjKSndf9AQshhNg/1iyN2cw8+NAEBdK3DD58El6dkeK6rTTV1Cc6HCEOGJKQ9BIb\nG73c/19tkN20CVmcNLD9cSCq101o+i2w4juwZWjJSH6/7gxVCCHEfpZXvgqArXf/iV1P/J2hh5Ym\nOKK+wZKczNbC0ehQKV/4baLDEeKAIQlJLzB/azO//mgndl+Io4qsXD66gzEjHjehR38DK7+H9Cx0\nj72G0m9QN0crhBBifwoGg+Q6tDEOxeMPYsCoEQmOqG9xjT4EgODShQmORIgDhyQkPdzbaxu597/V\neILamJE/HFOArp3FDLUB7FPhhzLIyNaSkf5DEhCxEEKI/cnZZEePitNoxWiWwexdreC4yYRQGLP2\nK7YsXZHocIQ4IEhC0kM5fEH+tdnOi8vqAPjdpBweOjwPsyH+R6a6nNoK7GuXQ1Yuusf/LJURIYTo\no5x1DQA4zGkJjqRv6j9qOMsPPQuDGsL/2lOJDkeIA4JM+9sDNXgCXDJ/J5UtAQAuGpnO+SPan65X\nbazTpvbdtgGy89E9+ieUgv7dGa4QQohu1NKgJSQuiyQk+8vwa26E79+nsK480aEIcUCQhKSHafYG\nufObKipbAgxKM3Lq4DQuK+kgGancQeihqdoK7AX90T00EyWvqJsjFkII0Z08jVpC4rHaEhxJ35WW\nmYFXZyA54MbT4sKcbE10SEL0aZKQ9CD17gBXfFLBToefLLOemZOLyEs2truvumWdVhmxN8DQEnT3\nvYSSntnNEQshhOguQX+Apc/+AWODNuOiP0UWut1fdDoddrONHFc99rp6SUiE2M8kIekhnL4gd31b\nxU6Hn+EZSTx3XGHHych3XxB6/j7weuCgw9Dd/TSKJbmbIxZCCNGd1nz2OaXfzYlsB1OlQrI/tVi0\nhMRZV0feQOkKLcT+JAlJD7Bodwv3LqymyRsk26Ln5ROKyLHG/2hUVUV978+o78wAQDnuNJSpD6IY\n209chBBC9B1qMBjbkCoVkv3JnZwO9eCqkwUShdjfJCFJsI+2Obj/v1UEVTgox8y9h+a2n4x43Kh/\nfBj1209AUVAuuxnl/y5DaWcKYCGEEH2P3mSO3ba1vyaV6BreFO3762+QhESI/U0SkgRRVZVvGo28\ns15LRi4fncFNE7LaX2Nk2wZCT98Nu8rBbEV3+xMohxzT/UELIYRImJDfF7NtTJeEZH8Kpmnf30CT\nJCRC7G+yDkkCqKrK3d9W8XaVlaAKV4/N5OaDs+OSEVVVCf3n74TuvExLRvoPRvfUXyUZEUKIA1DI\nF5uQmDNkIpP9qrUCZW8EYN2Cb9l0zXlsW/FDAoMSom+SCkkCfLjVwafbnZh1Kvcens9pg1Lj9lFr\nqwi98jgsXQiAcvI5KFfdjmKydHe4QggheoA9KyTWTElI9idDehYA+mYtIcmbcS82r4Pqp2+HWZ8k\nMjQh+hxJSLqR0xfk1VUN/H19EwC/ynNz+uDYha3UUAj14/dQ//oieFyQnIruxvtRjjwpESELIYTo\nIfaskKRkS0KyPxkztYTE5NQSErPfA0CesyZhMQnRV0lC0g2CIZUPtzbzxxX11LmDKMClJekcHrLH\n7KduXE3ojWdg/Uqt4bAT0F17N0pmTvcHLYQQomfZo0KSapNpf/cna7aWkFhatIeI9cnZFDoqAQiF\nQuh00utdiK4iCcl+Vm73cfe3VWxo9AIwLsfM3YfkMCrLTFnZdgDU3dsJzXoZFn2uHZSRrSUih5+Y\nqLCFEEL0MKrfH7OtN8qf8P0pJTtb++rWEpKAISnyXs2OCvKLByQkLiH6ooSk9zNmzGDQoEFYLBYm\nTpzIwoULExHGfucNhrhjQSUbGr3kWw1MPyqPv0zpx6gsbepGS9UOQi/cT+imc7VkJMmEcs6V6F5+\nX5IRIYQQMdRwl60dGQPYcverCY6m77OFKyQ2t51QKITV44i8V/ODDGwXoit1++OV2bNnc8sttzBz\n5kyOOuoo/vjHP/KLX/yCtWvX0r9/714JtcUfAuCfm+z8Z5uDzY1eAioMTDPyzqkDsBp12noiSxcS\n+mgOI38oQwXQ6VBOPBPlVzegZOcl9BqEEEL0UAEtIakddyyTDpuU4GD6PnOyFbvRSorfRXNdI2ne\n5sh7no3rgFMTF5wQfUy3JyTPPvssV1xxBVdddRUAL774Ih9//DEzZ85k+vTp3R1Ol1lb7+GqTyrw\nBNWY9gKLjmcGOjF/8neCqxbDiv+BT+u+FUwyYTj5HJTTf4WS3y8RYQshhOgtWrtsGY2JjeMA0pic\nTUrTDqo3bWJoKBBp19dXJTAqIfqebk1IfD4fy5Yt484774xpP/nkk1m0aFG7x3xb0UKWRc+gtCQs\nxmgPsxpXgHK7j4NyzZj00XZVVfEGVUIqKEAISA4f5/KH2NbkJceiI8eih5BKKBhEQWVjg4cBKUY8\n/gBLq91Y9HBkoRXUEFVOPx9tsXNwrpmiFANrat24/UGMOvh2p4MVNW4IBBjtbqDQVcuoYD3HGO3k\nOmvQVWwFh52YNGXEWJQjp/BDZn8OPkrWFBFCCNEJ4QoJxqS97ye6jDMtG5p20LxhXUy7scXewRFC\niJ+iWxOSuro6gsEgeXmx3ZJyc3Opqmr/acOYW6cA4AH8ioqCAqiYQiojAC/gVUBRVUBFUUFRQyho\nXw2AHxVFVTGhMjJ83lCbz1CBYeHXJuCEPfbJBX7dZv+j27w+vjMXnp2PMnYijJmIMv5wlKxc7fxl\nZZ05WgghhEAJV0gUSUi6jSc9F3aAUr4hpt3kambxk49jGDyCg88/N0HRCdF39PgpOtL8LV1+zhAK\nIUWB8FcVBTX8dc/21m2dTsGvavvpFQUUCCk6DAoYdApedJCaBhnZ+NKz8Nqy8KVn483IxW/LhNZV\n2Lft0P4LKzsAkhK5xr5BrrF3GzZs2I/vJHo0JVwh0SVJQtJdQpnaA0Tb7s0A1FizyXXVUVy7GUPN\nBupWZYIkJEL8bN2akGRnZ6PX66muro5pr66upqCgoN1jdG9/DYpCIKiysdGLK6hi0ivkWI3kWfXU\ne7Q6hlGvYDLoSDLo0ekUUHSgKFS7gszf5iSIwhH9khmdbWFDvYfNTT4G25LITzawrsHLmCwzy2rc\nFCQbKMky88YPDXxT0cLU8VmMyTZjMejwh1QUtASkK5SVlTFx4sQuOVdPJdfYN8g19n52u3Qx6e10\ngdYKiYwh6S76HK1Hx4D6bQDUZ/Yj11WHQQ0CkOFqJOgPyBTMQvxM3foblJSURGlpKZ9++innnHNO\npP2zzz7jvPPOa/cYJVVb+MkIjG5nDaiclL1/Zr4NrhxviWkryTJTEp56F+DoIu3bcOKA6MmuHJPJ\nlWNiV8E1dlEiIoQQQuyrSIVEumx1G3Oe9rDUoGoPP905RVCxIvK+HpWGmlpyitp/qCqE6JxuT+lv\nu+02Lr30UiZNmsQRRxzBK6+8QlVVFddff313hyKEEEL0Gq0VEumy1X1S9+i9odqyaE5KIc3njLTt\n+OpLqjKzGXvqlO4OT4g+o9sTkvPPP5/6+noee+wxKisrGTt2LPPnz+/1a5AIIYQQ+5NeEpJul9W/\nKGZbSUvHaUqNSUjGz30agIrBg+k3UsZqCfFTJGSl9htuuIFt27bh8XhYsmQJRx11VCLCEEIIIXoN\nXVBbB0NvNCU4kgNHcloqHn00ATTYMnBbUtvdt3pZ350UQ4j9TUZhCfEzhEIhioqK8Hg8iQ5lvxo4\ncKBcYw+WlJSETpeQ50uiG+nCY0j0JqmQdKedOUMYVrUOp9FKwcETqPn2P+3up25cDfyqe4MToo+Q\nhESInygUCuH1esnPz0dR+vaEB2az+cd36uV66zWqqorH48FkMklS0sfpg1qXLUlIulf63U+ybuNG\nhh19JDaLhV3J7cywA2TsWNduuxDix0lCIsRP5PP5MJvNfT4ZET2boiiYzWa8Xm+vTapE5xhaExKZ\n9rdb5RcPIL94QGQ7mNJ+QtKvcQduRwuW1OTuCk2IPkMepwnxM0gyInoC+XfY9zXV1UcSEkOSjCFJ\nqJT0uKYQCgY1xPYVK9o5QAjxYyQhEUIIIXqwsrf+SurVkylsrgTAIF22EkqXplVIXIZoRXJdsbao\navOyJQmJSYjeThISIYQQogeb8M/nYralQpJYBptWIanK6MfutAJqrVmox58BQMqGpYkMTYheS8aQ\nCCGEEL2I0SwVkkTKGT0an85AU/FYxt5yB4pOweJyE/qLwqCq9XhaXJiTrYkOU4heRRISIYQQohdJ\nkgpJQhUNG0LLm19SmpIcmdnOZLGwJauY4vptbFhcRsnxxyQ4SiF6F+myJYQQPdA777zDCy+8kOgw\nRA8kFZLES05LjZtmu2HgGABaNq1PREhC9GqSkAghRA/0zjvv8Pzzzyc6DNHDBFEwyLS/PZKanq19\ntTcmOBIheh9JSIQQB6yWlpZEh7BXMp2vcDU7Y7b9eklGeipdeob21SEJiRD7ShISIUTEQw89hE6n\nY/369VxyySWkp6eTk5PDvffeC8DOnTs588wzsdls5Ofn8/TTT8cc7/V6efjhhxk2bBhms5l+/fpx\n22234Xa7Y/Z78803mTx5MgUFBZjNZoYPH86TTz6Jqqox+23evJnzzz+fwsJCzGYzRUVFnHvuuVRV\nVQFQXl6OTqfjrbfeirsWnU7Hww8/HHdta9as4dJLLyUzM5OxY8cCcNxxxzFq1ChWr17NscceS3Jy\nMkOGDGH27NkALFiwgEMPPRSr1crIkSP59NNP4z6vsrKSq6++mvz8fMxmMyUlJbzyyisx+3z99dfo\ndDr+/ve/M336dPr164fFYmHy5Mls2bIlst9xxx3H/PnzI9fX+p/o24L+QFxbY/jfeiu/ThKSnsqY\nkal9dTYlOBLRE3jdblZ+OD/uoYJonwxqF0LE+dWvfsWoUaP4/e9/z3/+8x+eeOIJbDYbf/7zn5k8\neTJPPfUUs2bN4s4776S0tJTjjz8eVVU566yz+Oabb7j22mspKSlh7dq1zJgxgzVr1vDJJ59Ezj9j\nxgxKSko4/fTTMZvNfP7559xzzz3Y7XaeeOIJAPx+P1OmTMHr9TJt2jQKCgrYvXs3n3zyCZWVleTn\n50fO11Elob32Cy64gMGDBzN9+nR8Pl+k3W63c/rpp3PBBRdwwQUXMHPmTC655BJ8Ph933HEHU6dO\n5eKLL+bpp5/mvPPOY+fOnaSlpQFQU1PDYYcdhqqqTJs2jdzcXD7//HNuvPFG6uvrIwldq6eeegqD\nwcCdd95JU1MTTz31FBdffDH/+9//ALjvvvu48847qaiokG5bB4gd6zaQfv8VbJh8GYdcf32k3VFd\nQ36b/QI6ffcHJzrFnJmlfW2xJzgS0ROsnj2HCfOeZ+n2q5g0bVqiw+nxJCERohtMeHvTfj3/8kuH\nden5Jk6cyGuvvQbANddcQ3FxMXfffTePP/44v/vd7wC48MILKSws5I033uD444/n3Xff5ZNPPuHr\nr7/m6KOPjjnXJZdcwmeffcZJJ50EwDfffIPZHF1U7Prrr+e6667j5Zdf5pFHHsFoNLJ27Vq2bdvG\n3LlzOfvssyP77nlzv69GjRrFe++9F9deVVXF22+/zcUXXwzA5MmTGTlyJJdffjkLFy7k8MMPjxw/\nZcoU3nvvPa666ipASyD8fj+rV68mK0u7Kbn22mu59tprmT59OtOmTcNms0U+y+v1snjxYgwGtuF4\nnwAAIABJREFU7X/BGRkZ3HzzzaxZs4bRo0czefJkCgsLaWpq4qKLLvpZ1yt6h7oVKygKuDGtXxbT\n7qmrjdk2huKrKKJnSA7/7ie7pELSk4RCIZY+8Shk5cUk+/v9c2u16qbSUNNtn9mbSR8AIUScq6++\nOvJap9NRWlqKoiiRG3AAm83GiBEj2LZtGwBz5sxh+PDhlJSUUFdXF/nvmGOOQVEUvvrqq8ixrclI\nMBiksbExsl9LSwvr12sz1LRWHz7++GNcLleXXdsNN9zQbrvVao0kIwDDhw+PXGNrMgIwadIkgMh1\nq6rK3LlzOe2001BVNebaTzrpJNxuN99//33MZ1122WWRZATgqKOOijmnOPAEHdpT9STPHmNG6mMT\nEnPA220xiX2TmqMlJKme5kjb4pdeYsnrbyQqJAFsW76Kg5fM4+CPX+3Wz1Vc2u+yztN1f7/6MqmQ\nCNENurqCsb8NGDAgZttms2E0GsnNzY1pT0tLo7ZWu2HauHEjGzZsICcnJ+58iqJE9gNYuHAh99xz\nD4sXL47pNgVa1ymAQYMGcdttt/Hss88ya9YsjjzySM444wwuueQSMjMzf/K1DRkypN32oqKiuDab\nzUb//v3j2gAaG7WBq7W1tTQ1NfH666/z+uuvx51jz2uH+O9vRkZGzDlF37d58VJaqqs46IzTAFCb\ntafqZk/sRAtqY33MtkENdk+AYp+lpNsIKDpS/C58Hg87Vq6h9AstGfFdfBFJbarCovs0bUjMNMx6\ntwMAg1cSks6QhEQIEUevj++n3tE4jdaB6KFQiNGjR3e4dkZhYSEAW7dujXSHev755xkwYABms5ml\nS5dy1113EQqFIsc8/fTTXHnllXzwwQd8+umn3H777Tz22GMsWLCAUaNGdRhTMNjxTZvFYun0Ne+t\nve11A1x00UVceeWV7e5bUlKyT+cUfd+g6VoVsm7CBLL7FaK0aE/VLT7tqWpTTT1+jxt9Y22H5xA9\ni16vp8GURqaniZrynbjejT6Rr91eQdGIoQT9AbYuXU7x+INkPZluEtwRnTDE7/NhTOqe77sh/HBB\nEpLOkYRECNElhgwZwrJlyzjhhBP2ut8HH3yAz+fjww8/jKk+tJ1lqq2SkhJKSkq4++67Wb16NaWl\npTz33HP86U9/ilQWmppi+2xv3779Z15N5+Xk5JCamorf7//Ra98XMuVv39VYU0ta+LXHGb5pCSck\nVp+27bv5PLLcjXjSChIRoviJnBYtISm4+3za/uQat2+naMRQlr7xOqUfvcKy0jM45P5HEhbngSR5\n58bIa0+Lq9sSkiS39nDBKAlJp8gYEiFEp/zYDfKFF15IdXU1M2fOjHvP6/XidGr/c26tDrSthHi9\nXl5++eWYYxwOB4FA7ADekSNHYjabI9260tLSyM7OZsGCBTH7zZgxo5NX9fPp9XrOPfdc5s2bx6pV\nq+Le37O7VmclJydLF65usuye26kq3xHfPuc9yi8/s933fo6qNdEuJAGfNibE6NK6d1gDXhyNTWS5\ntZ99YXMlAC6DqUtjEPuHy5rebrtn904Air79JwAHL/2w22I6EG3832K2XnkWG/77P4pqog+7PC73\nXo7qWuZwImLyd91nLn72GRb//vEuO19PIhUSIUSndNSdqLX9kksuYe7cuUydOpUFCxZw5JFHoqoq\nGzZs4L333mPu3Lkcc8wxnHLKKSQlJXH66adz3XXX4fF4ePvtt+O6MX3xxRdMnTqV8847j+HDh6Oq\nKrNnz6alpYULLrggst/VV1/Nk08+yTXXXENpaSnffPMNmzbt+6xmP6e71JNPPsnXX3/N4YcfzjXX\nXENJSQmNjY2sWLGCefPmxa3D0hmHHHIIc+bM4ZZbbmHSpEnodDouvPDCnxyj6NhBa7+k7p4V8M4X\nMe2GRZ/Sv2kHK7/7jvziAR0c3XnN9Y2kZNhwbtkQaQt4tITE7HFE2ipWrGZ4m+MazTZazKlYmyp+\ndgxi//KlRBOStTf8Afem9ZR+/jqh6l0ANKdmke+sTlR4B4ymb76ktKGc1e//lVR/dFyWrxsXw23t\nfmn2xVdI/D4fNdt2UDRiaKfP11hTS+k3swCw19+ALeunj6XsiSQhEUJEKIrSbiWkM+2KovD+++/z\n/PPP89Zbb/Gvf/0Li8XCkCFDmDp1amQRwmHDhjFv3jzuuece7rzzTnJycrjssss49thjmTJlSuTc\n48eP59RTT2X+/Pm89tprmM1mxowZw7x58zjjjDMi+z3wwAPU1tYyd+5c5syZw6mnnspHH30UNwC/\no2v4sevrjJycHL7//nseffRR5s2bx8yZM8nMzKSkpIRnn332J53zxhtvZPXq1cyaNYuXXnoJQBKS\n/Sjb1RDX1rqeRKCpPu69vdm+ei0AA8dGxw7tWLOO/Hsvpuywc9C5oslHwOsBwOqOzszkWBdbaavJ\nGojR2303UuKnU5Vox5OhRxzOhhbtpjSpdjcA3uRowuJqdmJNS8HV7MTn8ZKem9W9wfZhuvDilAMq\nfohp97VTIVm/YCG5w4eRWZDXpTFYw4mI2e+Je2/Vw/cyfs3nrL7uScb+Ykrc++3ZuaSM0eHX9qpq\nSUiEEH3Xgw8+yIMPPhjX/pe//IW//OUvce1tp/IFrfvS7bffzu23377XzznllFM45ZRT4trbDkYv\nLi6OrIWyN2azmddeey1u37ZdwqDja4P462jV0TS8e54bIDs7mxdeeKHDQf2grcDe3oD74uLiuHNa\nLBbefPPNDs8lul5zfSNpWRmR7eTWJMHe+a5zrmYn/e7Xpo8O/qMsUvmrX7eWIlSSd24kyRe9KQp6\ntQpJijc63a9xW+ysQC35xaTs3rxvFyMSIqnNKu2W1GRS+2uVtbzdG9m46HsMvujN6e51Gxh6aCnO\n635JursJ99++xZKc3O0x90VGp/YwweZ1xLT795hCfv23/2XYczdhN6XC7G+67PMDfj/WgPaztvjd\nhEIhdLposjp+zecAqJ/MhU4mJJ4fomsUOauqYfSoLou3J5AxJEIIIQSwY0lZzHbrehKG5vjqSUc2\nf/tt5LXLEU0yAs3aucweJwUN0TEpQa8Xv89HciCapORVRgfhAij9B+M6+nQA1vWf0OlYRPez/Pom\nGk1p/HCV1s8/a9BAAHJddQx56noG71od2bdp03qa6xvJcjeiR6V2h3TJ6yoml73d9sAe3WebV2o3\n+XsmLp3RUFnNkscfZteGzbianZTN+hurP/oEgJbm6Pn0qHhb2u+2GzB1nIDu2rSFpffcQfV2bfyR\nbUv03467tu8ttigVEiGEEAJwrVoKp5wEgM/jiSQJSY7OV0h8S6IJSUuTndR0bd0a1aklJJmOGizB\n6OKGQY8XZ0NTZNYtgDxn7M2GbWQJQyaVsnnwEIaMHY3ouYYccjDMXkB2eDstM4O2o9NMQX/ktbp9\nM7t/WEPrKlWeRlnhfU/BYJClL76AeUQJ406Nr6p3pG0XyLYC7tgKiWIw/uTYNs/7B6VL5rHSaSdp\n23ImeJpwGUyEppyEq6mZlDb7upwOLKla8tFUU09qJADtSygUouyF59Hn5FF6iVZhzb7zAvLVIKtm\n+LE98AQDa6NV0mB4wdSK9Ztoee4BgudfR8mJx/3ka+kJpEIihBBCACnlayKvm+uiVRGLK/ZGcfHz\nz7L4icfiutmFQiH6bVwc2XY3tbkpCk/rm+aLXYld9XlxdnAjuvaGP7DqkvsYdtgh6HQ6hh82Sbr0\n9DI6nY6lx/+63fdMtbtxbIp2z3PX79tYpZ7O3dLCyttvZPk//vmTz/HDv+dTuuBtRv/pd/t0XLIn\ntuLhMmiLUgb3nGDEEH0uv7f1q9qj1Ggz4A3fuIhMj/Y7bA148ba48TTHVmg8baql1W0mXTGHq6/b\nV62ldMHbjJ/7NO6WFiq3lEcWQdUF/NSUb8fYZlFUJbw+kf/3v2Vo9XqKXrk38t6K9+ex9N47WDbn\nvX2+pkSShEQIIUSfM2PGDAYNGoTFYmHixIksXLjwR4/pX7OJoF+batrRJiFJadP9o2ZHBaVfv03p\n9/9g7efa2KOAX3vqXbNtBzmu6E2l12GndkcFi199FWND+10sQl4P7namd/bpDJSccBwTzj3nxy9W\n9GiTbr6FpcddFtducjejK492z/M39q2EZM0/5zFmy3eMe/unr7fiXbsirq2ppp7lc/+B3+Pjh48/\no7k+9vcn6A+QukcXrKr0Iu29PRIS1RMd0+Ooj30w0Pp73RFTo/Y73bbiCdBit+Npjq3QeJ3RSSkc\n26LTEKc4tZ9548Z1kbYtd00j9/azItu+1Ayad+2OOZ/BXo+zyc6ARm3NrRS/i4DfTygUYsDsZxm/\n5gsOemc6mxb9b6/X0JNIQiKEEKJPmT17Nrfccgv33XcfK1as4IgjjuAXv/gFO3fubHf/RlMa1ck5\nWANedm3Unl66G6MJSbrHHqmG7Pjis0i74f03WPL6G/guOJJ1C77FsceaM77mZloemErpR68wblP7\nCZHq8+Jtiq+Q7M4YgN4ovar7Cl1G/AxaVred9MpoN5xQ076tO1RXsRu/z/ezY9tv2lQQWxN9rTmE\nu5PT76buiE6R7WrWqgzV909j3KzHKJ92EaNeuRPHzb+KOcZht6Mndhp3R442uYDq3aNC4o7G0Vxf\nR82OCjZ/v5Tl7/0D34VHsvbL2DWu2kppbv8hg8tux++ITYh8bbZDO6OTpWSEZ/cLblobaRtVEZuE\n6T0uvDVVAFSlaDOBWZrrWP/vf8fst3XpcnZt2BwzHqalg//n9USSkAghhOhTnn32Wa644gquuuoq\nRowYwYsvvkhBQUG7i3YCtFjSqC4aAUDtypUAeBuiCYlBDeIId6syL4uOERlWtZaDP3wJU8iPc+GX\ncYmF3+Ggf9PeF1VUfV58zfEDcBv7jejElYrewpiZHXntV7SZ12yuJgobozeMyj5MnlC+ag0Z005j\n3Z3Tui7IrhaKdheqaTNgf/nf55B08VGs+bz92Q1bed1uBlZHK0iN1dr6LUOrtW5ug+u0SkO+szry\n+wngrIv9Pnr1RgKZ2o1824oIgOKKdqVy1dWT8ZtfMuiJq7F8PhdT0I+z7LsO48tw1rXb7rE343fG\nds30t0nAzNXbI6+tAQ8tzQ7SdsTOrNeW3usiGE5IqvuNBCCtpQH9ytjqx5Anr6PwdxfEtAUbftrC\nvIkgCYkQQog+w+fzsWzZMk4++eSY9pNPPplFixa1e4zLYiMwWFszJLRJW7cgsMdUv801dezevJWh\nFasIorD87NsI0nZNGQXfHseEnO0PrI3h9aCu1Wb6cRqt0fYhfWtKzwOdJTuakNSk5RNCITngJikU\nrRzoHXsf1O5osrP2ywUE/H5q5s8DYHT5kv0TcBcItUm069uMmxg/5/cAZP5l+l6P37q4DFMo2m3K\nWd3xzFIbP/k08trVEJuQ1FuzwWTRNryxg9r17mji4K6pRheurAwLJz3Gut388OkXNFRqyZCjyU5D\nZTWuZmfceLBaq1YF8zU3x/3uB9okPukNsd2v6nfuon/dlpi2JlMaG27WppA3+jzoG7TPDw7RJrVI\ndzVSVKGNeVt67KXsqdGsTaahNLafNPVEkpAIIYToM+rq6ggGg+TlxS5ylpubS1VVVbvHeJPTSR2l\nLdyZXqE9kVWbY5OLph078D92M0Y1yJrhRzHxskvZcN0TuAwmAHQtzQTtsTeU6l7GBATCT8nHLZzN\nhFWfEEJh4+jjIu9njB7TiasVvUVKTjQhcVnScCbFT05gckb/zYVCIZa9O5uNi76PtG14ZjojXryF\nyivPxFy198rbT7HktdfYdsWZNNV1zVgWxRlNSFzbt8a97zOY8Hk8bL76XJY89hAAa79cQNlD9+Bo\nsuP4/r8x+7vrOn7ab/zf55HXnsbYhMSRmo1i1ga1K97YConBE01QAmuWx5133MZvGTXjDpp/dy1L\nHnsI4xUnYpl6Oj/8aUbcvtUFwwHwO5pRW2KTlWB4/ZNQKEROeBa98qzB2nH//HvM7GsATcmZJIUn\nsDD6XJibwuNVBg7GabRiCvnJcjfSnJTCuGuvZ9nEM6lOzokcXz7yCO369qHqlmjSQVUIIcQBrUXR\n0aIGGQYUNOxg8eLFeKpjn2Kmv/00hc5qttv64T79PMrKyiAni0W/uJ7JH76AYq/HUbkLAKfBQkrA\nTdLWNe18mqbOkkG+qy4yc87XR1xIKCsXwt3Ha70eGsvKOjx+X5R10Xl6sp5+jT6Ph9YUucVgotmU\nGnnCXmXNJt9Vh7mlMXIdTeU7OX72kwB8OeGXpJ12BlnbtX9PhY5KCh2VkXMvXrw4ZtG9PTV++SWo\nIdSCfljXLEN3xtkkhW/Q2zr4P9pN9tczX8b2i9N+9jX766MJhG/LOsrKyvA6Wzgs3BZS4at35zC5\nbguD6raw/JTTKZh5L2n+FpbdX0umIzy1bWoB/RyV1K37gf9mpEeObyu9bmfke1e/ZTOj0caGZXib\nqU/LxR1eod1rb4z5t2J2RSsZOZuXdngt/Zt20L8snASqULrw3Zj3q63ZNIcrnLU7tmMKT2IRREGP\nSmPlLsrKynA32kkKBWgw2ahLzaG4fisHl/0LAI8+CXNQGxNkt6TTVFXJIMDocZHk0bp8VbtdWK2Z\npNi1BGdr7lDUdWtRTjmdTROPIO+Vu7TvQf/hsOIjkppqKCsrIxQMEZz9Fo7+Q8k8+ugOr/PnGjZs\n2I/v1AFJSIQQQvQZ2dnZ6PV6qsP9zVtVV1dTUFDQ7jFWncKE446l9pV0Mj1NDMjKpTJ8Y+A0Wknx\nuyh0aucLTX2IIyaVRo7d6A/Bh9osN0G05KLOVkBK/VYG1m+L/7AwR6p2E9oqf8xB2AYVw4cvEETh\nsCMO/ymXH6esrIyJEyd2ybl6qt5yjcGnta+GJBMeqw3CSUVdwTDyt9SR5nEwJHwdq6qjN/OHrvqY\nH6b8ggJH+xW+EUOGYsvKbPc9v8eH7rFrYtqWm81MfDi+u1TriI80vdIl389Vs/4UeZ3dXMPIiRNZ\nvyA6uUO2qw57RnrMMWl+7cb74J1a0uDWm6g+6Dj6LXyX479/D+ey/7T7Wak+JwPCMS9eok29vXX8\nZKylRzD+kFI2f/4FAFYdHNzm2rbOiFZM+jfHPoRoT4vBwvpJZ1C6aA4ADmMyqf4WGrL6Y8rWKhRD\n1i6kKLz46a6M/gxo3IEtKYmJEyfy2Tt/B6DBlo8uOx/KtfOuHHkcoRHjmPCvFwEIZRcwdvx4ACwB\nDynh5PXQY49hQ4uTgXOeAiA4fDyT2lzPakVLTEcPHAgfvkC6287oiRNZt+Bbhm9dBFsXob/11h+9\nzp/Kbm9/QcrOkC5bQggh+oykpCRKS0v59NNPY9o/++wzjjjiiHaP0Ye7cdRka6tq127cQFKL9od1\n66Bo8rF87MkMbZOMAFgzMgCweBwYwsc0ZxYC8WuOtOW2ZcdsG5OTGTBqBJt/O5Pml//dwVGiL9AF\nAnis0aUwvf2HApDmbY6sG+Fr0+3IHPTRvG0HRjW4x7glTXNNx+MEmmrix12MXv1ZO3u24e+ambtM\n7uhsT7mNFSx57TWGPXdTpM0a8OKriA7w9nu9kQH/rbb2H4c+vyiyneKPHQMSafe1RGfyah27kpbJ\nmJNPJDUjHb1FG0Oi92m/6+Wr1rDijqkMbCjfp2tqttgYdc0Nke1tg0tZeug5mC6+AZK15Q6L67dh\nVIMsG38qtZOmaDuGKxyheu1n1ZJZgOngw/DqjCw99GzGPfoUxuzcyHlDGTmY07TzZbsbMAd92sOR\ndBsTLryAFWNPxq/oyTv+pJj4xk6ZzNgpk0nP186V76xm8Yw/4t4dTbZaZyvraaRCIoQQok+57bbb\nuPTSS5k0aRJHHHEEr7zyClVVVVx//fXt7h869lQAXAWDoGIl7k3rGVxXDkDWr29kt24aHrudg8Yf\nFHdscqb2hDfF46A5vPihP6cINsXtGiNgy4nZTkrVbj5GHNlehxTRl+iDfny26DTAhryiyJN2R2MT\n6dlZcVMA6zdq3bXWF09k6M4VMWMOXO0sqBgMBln25lvoU1LYs3aSFApQt6uK7KL8duPT/UhC4mp2\nsvHLLxlx0okxC3Uufv45slZ9Q/7zfyU5LRVLm9XSbV4H4+a/Gncuy6aVkdctlTUY1SBenZEfDjub\n9E3LSDrn1yiOvd9A+3QGkkIBHI120nOzMNZrlSedLVp90Zu1hMQQTkhqP/wHB29uf5KLvXGbkumX\nkc7iE6+k9Is3ME05mwknHAtA2cYNMfsWX3kD27/WZhIzhhcyNITHlQVyCjn41FPwTz6BSUlJ2vci\nK/qQQpediyXZGnO+xuRsbGiLbU54+Al8bg8D99inlTUtFZfehCXopfTTP8e8V7V5C4MPjv9/WaJJ\nQiKEiLN8+XJ+85vfsGLFClpaWvjlL3/JBx98ELMy9XHHHYeiKHz11d6nbhSiu51//vnU19fz2GOP\nUVlZydixY5k/fz79+/dvd/9xZ54BgNJ/CCyBMV//DVPIz46MAQwcNXyv/fNTw11OUnwtWMMLKOoL\n2/+cttTM2AqJKTWlU9cmej9d0E8wJXqzbMrJxWFJI9XfQnNtHenZWeCITUiKtmuzv3kKB9NStQlT\nMDqBgqc+vkKy7K2/cvCHL3UYQ/kXn5N92SWRbb/PF+kyo9tzrY42GqtqaPrdtYxt3M7SzeuYdMdd\nkfdKv/4rAMv/+U8m/voykr1aItFotpHhsUdWHq9KycNpTWdozQYG7oquvxHarY3B2pU5gEl33h1p\n37JkWYfxuAwmmiyZFDoqqbp/GoGm3YzzNhNCoWDSoZH9jFbtxr01ITE2tN/9rTkpZa+VTZ9Z+z2d\ndNNNNF90CSVZGZH3DOGHCqBNWpFZkE9FuGoybuO3LH72Gax2LTHRF/TT4ggnIwApudGHFObcPAxG\nIy1txpU409okLDod5g6Skdb37ZZ0LM7quPfs27ZBD0xIpMuWECJGKBTiggsuoLq6mmeffZZZs2ZR\nXFyMosR2FVAUJabN7Xbz0EMPsWBBxwtJCdFdbrjhBrZt24bH42HJkiUcddRRHe7bmnCkDdUGZLZO\nNVp/7Fl7TUYADEYjTqMVHSo5zdpNjrVowI/GZ8yOnQXM2uZmRvRNK0tOAMB1wlmQGu2ylZKXhzNZ\nq2M0bdtG2ay/kVSnPeVvnY1taIM2S5WheAhuU+wMXWP+8gDL7rol5oGReUXsDFVxtq6N2Wxpjnav\nMjs7nplp859ejqwOXrz0k0gXs7ZCzXaCwWBktfTd+dE1dXZkDKRo1sfYh08AIDkQTX5M1dpaJS5b\nLm2l5sVut9VsTsdt0X53hlWvJ8OrVWV+GHE0RcOHRvZrTUiMAW1V9WR7bFe2QHjsRcNdL9Gc1PHD\nAb85+l5am2QEwNjmZ1qXnI3eaKD46CPZlaZ14SxY8QW2Zi0hSS6Kf2iRnhu9zpR8rXrlNloibd60\n+MU190ZV4rv3AfgryvfpPN1FEhIhRIzdu3ezefNmbrrpJq655houuuginnnmGdzu2Kdmqhq7Em5L\nSwuPPPKIJCSi1yoaUxJZC6TJlMbI/zurU8c5TdoNkSWo3exkDBoYea86OYcWgyXuGHNu7E2WRSok\nfd7Yh56g4tG/Mf7cc9DbojezGYUFtORoN6h5s/7AhLlPM3aLtiDfjuzBMefIGDYc52V3ANGbaICD\nNiyIWRwwzd5+BaCVbdfmmG23PZqQJLd0vB5KSmV0+t4sdyMr//E+wWAQtyO68J+urpJlb/0VPSot\nBgueguLIe03h69T3GxR37ow6bZFIX2Zssp6R23FC4kjOiBmPA9pCiJmXXBfTlmTVfgeT/FqFJMMR\nnTSgwZzOttteZNfj7zKkdDwNKVolYunxv2bF2Nj1jALWjh8cmNKicdjTcsKx55D+3CwA0tx2spza\n56YPjH9oYU1LoTkphSAKmUXauBlPm4QkmL5vCUlHkyAYKre3255okpAIIWLUhAdBprX5n6teryep\nTWl5b/ZMVH4un8/X7lM4Ibpacloqnqf/zpa7XsUw45+kpNs6dZzLEv1d8ekMZBdFZ/OqLhyB3Ro7\nk5DLYCYpJbZ7R5IlfhpW0bcYk5IYOLYEnU6HYmzTVSfDhlqoJbHZrtjqhL0o+pTfo0+i3+hRlJx4\nHI4/fc6qX8TedLeuUN7S7KDAvvcZo4oaygn4/YRCIUKhEO42syPZ3B0nJLZm7e/D6qFHAnDQO9NZ\n9btbaaqJ3uBPWPkRB3+gzRblNKWgK4hWA/z52nXmjB0Xd+5+4VXr1ezYsS1GcxJVT73HypHHxR3j\nScnAb43+nu5M74/v1Y8YOLYkZj9TuEJi8nvwtLgilRQAnRpi5NFHMmC0tgp6c7bWnco6aiylj/6e\nrTnRn0EoueMHBxZbNA53RjSpSsmwEVD0pPhdZLqbCKGQVdj++J1dVz/ImkvujVRfvEnRhERJz273\nmI4sPeL8dttT6yv26TzdRRISIUTE5ZdfHpnu8YorrkCn03H88cfz0EMP7bXrSnl5Obnhp1gPP/ww\nOp0OnU7HFVdcEdmnsrKSq6++mvz8fMxmMyUlJbzyyisx5/n666/R6XS88847PPTQQwwYMACr1cqu\nXbv2w9UKES9vYH+GHz6pw2lU2+O1RJOLZlMaBqMxsu0vHIT/lieoSO/H0hO03wenKQWj2RTZx2W0\n/GjXMNG3tO3uqtPpMA+MrxgAMGhk5OWO3GGRMQfpuVkYsmInRmgJr1C+fclS9LT/YKjRbKM6JRdT\n0E/58lVUXH4GjguORvfiA5F9UvwuvOGKeMX6TTiatGQl4PeT5aonhELu9bexJUfr4jhm40Iqyxa3\n+3kuSxrW/tFqgLG/dp1Fw4fiMsQm4TafVqVJyo2/WS8aPpTg4FFx7f60TEIp0QcCzel52hicPZjC\n4y1MAS/1FXusMeSNXVW94MbfsvKCuxl1vDZY3Wtqk4TsUY1py2qLvhfMij6U0Ol0NIVhUaOuAAAW\nNUlEQVRXTtehYjenxYwdaWvMyZOZcO45kW1fm4TEmJ3T3iEdGjf1Zrbc/SpevTGm3ZW2b+fpLjKo\nXQgRcf311zN06FAeeOABrrvuOo4++mjy8vL49ttv93pcbm4uM2fO5IYbbuDss8/m7LPPBmDIkCGA\nVnU57LDDUFWVadOmkZuby+eff86NN95IfX099957b8z5pk+fjl6v59Zbb0VVVZKT41c1FqKn8LW5\nSXGZY7t0JA0eps1o8+aHZDbZaV74HpX9RlNgjt5ouJOsxPZGF33diClT2P7RLOrGHMUkIHPo0Hb3\nSx85OvLaMWh0zHumjNikuXWF8pZN6zr8XI/RQn3uIPKcNTTN/wcTwmtvpDTFrvxevnQFtqJCcu++\ngI39xzPmpTeoq9hNjhqizppJ4dDB8Noclt5/F+NXf0r+B39u7+NIdTWiDiqObKcN1v4m6I0GatPy\n2512N7mgsN1z6VJif7d8OgOGMRPx74rG7k1vv3tX6wBwU9BLRUUF7dcnNPnFA8gvjiZRAXP0748u\npeMKSXJ6m14FebFrHjmt6WS7tZ+PPTmTztY6/KbowHVLTsdd19pjTrYy/LBJ7LZkkBdeHX7nI29z\n0Lgx+3Se7iIJiRDdIPh/E/br+fXzlnfJeQ477DAMBgMPPPAAhx9+OBdddBHAjyYkVquVc845hxtu\nuIFx48ZFjmt133334ff7Wb16NVlZ2tOra6+9lmuvvZbp06czbdo0bG3K3U6nk3Xr1mGxxPe9F6Kn\nCSZHb0Tc4e5bSydfiWnLD4yeMiXyXmq6De9bnzLeZKK+Mjr7jdco/84PNNa0FAa/8U9aR4jkFQ+I\nTF/bVt7wIZHX5pLYmZHM6bFdAf2tUwXXVNIRb5IF74DhsOU7itd3PO3t0KdvZO3AUnJQKarW5rBu\n2rGTHKAxLS+y6nzGWRfB6k/Ja6lt9zzZrgYoKsRptGIM+skfFr0eZ1outJOQZA5sf5Y6Q2r0b8QP\ngw+jZPoLTDAnUfbmW5F2Nav9VMOYlIRH0WNUg7h27tsYioA1moToUzuukCSZzZHFJY3psY8Y3Mnp\nEJ6d2ZXS+eprsE1CsrfB/XvjSM6MJCTJWfs2DqU7SY1YCLFfqarK3LlzOe2001BVlbq6ush/J510\nEm63m++//z7mmMsuu0ySEdFrqG26X7SM0xZfnDTtJg567lWM5tiuGSaL1j0rqU2XLa+p4+k7xYHB\nYDRSnVYQ157cphtQYXjl7lY5g4tjtoNN2hN4U3hK2y25w+PO50uyYBqstWd49r6qdsn2pYC2wKej\nsQlXeFpeV0b0pr94/FgaTfE36Q5jMk6jlRXn/Ra90UD1rc+y/aZnSE6LVjl8B8fPfOcwJpPRwY13\n20HjQbM18rtlaLveSE5e3HGt7OFuU0l7zEDW2vWsI6E2A9nbJkV7k7JHlcebGk1QvLbOjwUJmqJ/\nBzPyOr62vXGnRD87vQcnJFIhEaIbdFUFozeqra2lqamJ119/nddffz3ufUVRqK2NfbrW2tVLiN5A\nlxddSXr8lVd26hiTOdp/3i8JiQAacwfSv2lnTJtOp2PDb2dSvnEjU/rF3uSmptuo++NHbP3bm5Qu\nmg0ObTB6WpNWfWsaMg5qNsYc4zdZyR4en6j8mJqt5QSqtYQkkB07PqIyfxgZ4eRle2YxVo+D4IOv\nUDBsMKXhsVHDjzg07pwHX3Ixy3U6gvYmSj/TunxVZ/QjvYPxVKY2iUfbykFSm2qENS8+qWu1Y8yx\nZC/5J6PLlwCw7Iyb0JnNFJ9wwt4vvk2FpG1S1J7Vlz2Ib2c5k/ZY5yOYFo0xlN75MRxKmwldLKk/\nreuyPzxdsNNoxWbu3OQ0iSAJiRBiv2qdG/+iiy7iyg5u1kpKYmdEkeqI6E1Kzj6Xpa4Wik8/k9xO\nzkbXdlB7QBISAWRdMY2l/+5HztrvImt9AIw48jAcpvZv17KL8tkeXvfG0Pj/7d19UFTnfgfw756F\nXXZ5WV6XZQF5E1BBRUEUbkKJNxqTWBNvncZYNZpR/qjG12QSc52CTQaN0zixg6bqOBkSx/rSzjWZ\nJB20g5oQSWI1RBSsRr2t2AuioLgogrtP/wCXXV4XWDyc9fuZYYYczi6/x585v/15zvM89bj5vzUI\n6dgMz2d8OlD+b07nW7V6mOJj8VDytu+3czl8DBLrLgIAzkz9A+BrQHrpZ06vu/2f3yC9472kcOfG\n6EHMWKCjIbk3dzni//oll8YrSRLSF/4dLp4sA461H7OEx/R6vj6o8+6E0DnMrQjq/LAfYO69ITHO\nmQec/hMAwAoVzM/kIDK557k7jlS+nXdIfPppSNL+8GrP72HovDMhhbjekKj72KTSVaJjuWCL1h+u\n3d+RBxsSInKLrhsnPhYWFgZ/f3+0tbVhen//EkWkQPoAP2T+/YoBvUatVtufNxde3n2eS0+HUWOT\nMWrsuzh76DBG7S9E5ehspPX/Mnh3TG6fePEksKp9HyiLtx7RkyejrWPexGNWrR5qby/8JSgKsbev\nAQCaEicBHQ2JOjoekxa8jqbvD8G/rXNvkXSHxkYf0XlHEAB8kscB37V/rwsb2NK0AKB1mD9oNffe\nkPgFOcyZcZhornc4HhzVe0MSM34cqiInYPSNSlQv3YSJLjQjAKB2mMiuc3Ep8G7v4bAAgWYAq2V5\ntQ69IVF3NEDN+pHcjrAhISI30Xes897Q4LyOvlqtxrx587Bv3z6cO3cOEyY4rz9fX1+PsLCRuQwh\n0ZMg1CzF1Clt3t/gyqhYJHfZS6M3PkHdJ0nf9jci3mTEnzcVo+FiFSbuLwQA2HTtH+TvhscBt6/h\ngVoLnzGpQFn769S+fpAkCTcDzfCvv9ztfSvG/R4TfpftdMw8sfPxpIABrgQFOH/I18X0/riuzs8X\nbSoJXsIGlb7zDkmgsbMJ0vWzImPM5iI01N/GxIRYl+PzcpjI7j/IhkQb0hmjr9H1uSCtut43YnSV\nzty+r0pzLyuQjRS8ChLRoDlugqjT6ZCSkoIDBw4gKSkJwcHBiI+PR2ZmJrZs2YITJ04gKysLy5cv\nx7hx49DY2IiKigocOXKk2y7wRE8TGxsSciBJEhKnTXH5fN/g7g2JJaD9w2fshBS03b/f+YOOR50e\nRcYDVaWoDwiHn7nzjod3x4dvS2gU0KUhOfPcG8hcvabb7wo2m/AXv3BoHj1ESGTPS/b2xXED0uDR\nvTckkiTBovFD4MMmSPrOxkOr0+HWjv+At4+m30eSfAP8nSbWu0LT8WfSKnlBO8gNTPUOk8kNEX0t\nOuwsasXbqP6ne1DPXYLuu7C4JvmvnsGvt/6IyKnd5/GMJLwKElE3XR+/UqlULh3bu3cvVq1ahfXr\n1+Phw4dYsmQJMjMzERYWhp9++gkffPABjhw5gk8//RTBwcEYN24ctm3b1ufvJvJ4bEhoCPxCuzck\n2vudK2hp/R32zui4Q2KYOBk4BjREJiPeYbK8tuPD9yPTKKC6fdWrx49umZ6f1ePvlyQJwZ/+O4QQ\n3VaVc4U+wN++jWN4XO+PbAHAfa0vAh82Qa13vhMSGun6h/yBevxn0qzxhW6QG5j6dWwcbIMKgeGu\nPxFgHBUF4z93XwxmINRqNSb/7bwhvceTwKsgETnJyMiA1WFlDwDIz89Hfn6+07Hjx493e21mZiZ+\n/PHHHt83NDQU27dvx/bt23v93bm5ud1+N5GnE14sxTR4fj08RtQ05ff277UOcyCkjoYk+ZksXFLv\nQmJSIvyCDPaGQOXV/oFbG58IHAeuxU2CtrkJrT6+SEvp3DW+q8GuAAW0NzS1H/8JF//7InK9+55P\n9aBj13Qv/ZNbCCI0Nhr3vXxQFxrr8oaGXQWbjLhiTEKT1h8Z/YzxacWrIBERkZx4h4SGwHGBhDM5\nC6Ebk4pJMzoXENE5NCRqhzkWSVmZ9u8vh41GZMP/wNyxJHDKrJn4pbEBUc/mwNTPXQt3MCXEoqbx\nVr/n3UnJQsOP9YgY/+R2G/cPNODOzq8x2n/wTZBarcbof/lXnD171o2ReRZeBYmIiOTEVbbITYJ/\nl4vRU9OdjukDOhuS3u4sxO3cj7aWVvudDi9vb2QsXjR8gQ5S5pq1sNlWQxrko1ODFWgc+oaCTzpm\npWFDQkREJIOzU+Ziwn99hdh58+UOhRTu/zYfxJ0/X8P4Ls0I0N5c3Fd7Q2ttg7fD3ZKu53gp5FEi\nfrD3TGxIiIiIZDDlj/+Attb3XN5Mkag30WOTED229x3Y73vpoLW2QePbc0NCJDe2mURERDLxZjNC\nT0CTb/tKXAFG7vlEIxPvkBARERF5MNWqf8T569cxMWrg+4QQPQlsSIiGQAjBfTNIdo4bVBIRdRWX\nNh5IGy93GES94iNbRIOk0WjQ0tLCD4MkKyEEWlpaoOGjP0REpFC8Q0I0SJIkQavVora2FkFBQXKH\nM6zu3bsHf39/ucMYVkoeo1ar5cozRESkWGxIiIZAkiTcuHEDERERcocyrM6fP4+MjAy5wxhWT8MY\niYiIRiL+kxoREREREcmGDQkREREREcnGbQ1Jbm4uJEly+lqwYIHTOY2NjVi0aBECAwMRGBiIxYsX\n4+7du+4KgYiIiIiIFMZtc0hUKhXefPNNFBYW2o/pdDqncxYsWICamhqUlJRACIFly5Zh0aJF+Oqr\nr9wVBhERERERKYhbJ7XrdDoYjcYef1ZdXY2SkhL88MMPmDp1KgBg165dePbZZ3Hp0iUkJSW5MxQi\nIiIiIlIAt84hOXDgAMLCwpCamop33nkHFovF/rPy8nL4+fkhKyvLfiw7Oxu+vr4oLy93ZxhERERE\nRKQQKuGmXd327NmD2NhYmM1mnD9/Hhs2bEBiYiJKSkoAAIWFhdi7dy+uXLni9LqEhATk5eXh3Xff\ntR/jvBIiouFjMBjkDkF2rDNERMNnoHWmz0e2Nm7c6DQnpCcnTpxATk4Oli9fbj+WkpKChIQEZGZm\noqKiAmlpaQMKioiIiIiIng59NiRr167F4sWL+3yD6OjoHo9PnjwZarUaly9fRlpaGkwmE+rr653O\nEULg5s2bMJlMAwybiIiIiIg8QZ8NSUhICEJCQgb1xpWVlbBarfYdrLOysmCxWFBeXm6fR1JeXo7m\n5mZkZ2c7vZaPExAR0XBinSEiGjncMofk6tWr2LdvH15++WWEhISgqqoK69evh6+vL06fPg2VSgUA\neOmll1BTU4Pdu3dDCIG8vDzEx8fjyy+/HPJAiIiIiIhIedzSkNTU1GDhwoU4f/48LBYLoqOjMXv2\nbOTn5yMwMNB+3p07d/DWW2/Z9x155ZVXUFRUhICAgKGGQERERERECuS2VbaIiIiIiIgGyq37kLjL\nzp07ERcXB51Oh4yMDJSVlckdktsUFBRAkiSnL7PZLHdYQ/Ldd99hzpw5iIqKgiRJKC4u7nZOQUEB\nIiMjodfr8dxzz6GqqkqGSAevvzEuWbKkW167zo0ayTZv3owpU6bAYDDAaDRizpw5uHDhQrfzlJxH\nV8ao9Dzu2LEDEydOhMFggMFgQHZ2Nr799lunc5ScQ3dinVEW1hnlX59YZ9opPY/DVWdGXENy8OBB\nrFmzBhs3bkRFRQWys7Px4osv4vr163KH5jZjxoxBbW2t/auyslLukIakubkZEyZMwPbt26HT6exz\nhh776KOPsG3bNhQVFeH06dMwGo2YMWOG08aZI11/Y1SpVJgxY4ZTXrv+DzqSnTx5EitXrkR5eTlK\nS0vh5eWF559/Ho2NjfZzlJ5HV8ao9DxGR0dj69at+OWXX3DmzBlMnz4dr776Kn799VcAys+hu7DO\nKA/rjPKvT6wz7ZSex2GrM2KEyczMFHl5eU7HEhMTxYYNG2SKyL3y8/NFamqq3GEMGz8/P1FcXGz/\nb5vNJkwmkygsLLQfe/DggfD39xe7du2SI8Qh6zpGIYR44403xOzZs2WKyP0sFotQq9Xi66+/FkJ4\nZh67jlEIz8ujEEIEBweL3bt3e2QOB4t1RtlYZzwD64zncEedGVF3SFpbW3H27FnMnDnT6fjMmTNx\n6tQpmaJyv6tXryIyMhLx8fF4/fXXce3aNblDGjbXrl1DXV2dU059fHyQk5PjUTlVqVQoKytDeHg4\nkpOTkZeX123fHSVpamqCzWZDUFAQAM/MY9cxAp6VR6vVigMHDqClpQU5OTkemcPBYJ3xPE/L321P\nuj4BrDOekEd31pkR1ZDcunULVqsV4eHhTseNRiNqa2tlisq9pk2bhuLiYpSUlGDPnj2ora1FdnY2\nGhoa5A5tWDzOmyfnFABmzZqFL774AqWlpfj444/x888/Y/r06WhtbZU7tEFZvXo1Jk2aZN8zyBPz\n2HWMgGfksbKyEn5+fvDx8UFeXh4OHTqE5ORkj8zhYLDOeJ6n5e+2J1yfHLHOKDePw1Fn+twYkdxv\n1qxZ9u9TU1ORlZWFuLg4FBcXY+3atTJG9uR1fT5WyV577TX79ykpKUhPT0dMTAy++eYbzJ07V8bI\nBm7dunU4deoUysrKXMqREvPY2xg9IY9jxozBuXPncPfuXRw+fBjz58/H8ePH+3yNEnNIvWOd6eRJ\nf7c94fr0GOtMO6XmcTjqzIi6QxIaGgq1Wo26ujqn43V1dfYd3z2NXq9HSkoKfvvtN7lDGRYmkwkA\neszp4595ooiICERFRSkur2vXrsXBgwdRWlqK2NhY+3FPymNvY+yJEvPo7e2N+Ph4TJo0CYWFhZg2\nbRp27Nhhv4Z6Qg6HgnXG83jS9WkglHh9AlhnulJiHoejzoyohkSj0SA9PR1Hjx51On7s2DFFLYk2\nEC0tLaiurvbYQhgXFweTyeSU05aWFpSVlXlsTgGgvr4eN27cUFReV69ebb+AJiUlOf3MU/LY1xh7\nosQ8dmW1WmGz2Twmh0PFOuN5nta/20q8PrHOdKfEPHbljjqjLigoKBjmOAckICAA+fn5MJvN0Ol0\n+PDDD1FWVobPPvsMBoNB7vCG7O2334aPjw9sNhsuXbqElStX4urVq9i1a5dix9fc3IyqqirU1tZi\n7969GD9+PAwGA9ra2mAwGGC1WrFlyxYkJyfDarVi3bp1qKurw+7du6HRaOQO3yV9jdHLywvvv/8+\nAgIC8OjRI1RUVGDZsmWw2WwoKipSxBhXrFiBzz//HIcPH0ZUVBQsFgssFgtUKhU0Gg1UKpXi89jf\nGJubmxWfx/fee89+fbl+/To++eQT7N+/H1u3bkVCQoLic+gurDPKwzrDOuMJY2Sd6WN8w70U2GDs\n3LlTxMbGCq1WKzIyMsT3338vd0huM3/+fGE2m4VGoxGRkZFi3rx5orq6Wu6whuT48eNCpVIJlUol\nJEmyf7906VL7OQUFBSIiIkL4+PiI3NxcceHCBRkjHri+xvjgwQPxwgsvCKPRKDQajYiJiRFLly4V\nNTU1coftsq7jevy1adMmp/OUnMf+xugJeVyyZImIiYkRWq1WGI1GMWPGDHH06FGnc5ScQ3dinVEW\n1hnlX59YZ1hn+qISQogn11cRERERERF1GlFzSIiIiIiI6OnChoSIiIiIiGTDhoSIiIiIiGTDhoSI\niIiIiGTDhoSIiIiIiGTDhoSIiIiIiGTDhoSIiIiIiGTDhoSIiIiIiGTz/+5haWliNX/IAAAAAElF\nTkSuQmCC\n", + "text": [ + "" + ] + } + ], + "prompt_number": 31 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can see from the residual plot that we have our work cut out for us. We can clearly see the result of the manuever in the residual plot, but the amount of noise in the signal obscures the start of the manuever. This is our age old problem of extracting the signal from the noise. " + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Adjustable Process Noise" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The first approach we will consider will use a lower order model and adjust the process noise based on whether a manuever is occuring or not. When the residual gets *large* (for some reasonalbe definition of large) we will increase the process noise. This will cause the filter to favor the measurement over the process prediction and the filter will track the signal closely. When the residual is small we will then scale back the process noise.\n", + "\n", + "There are many ways of doing this in the literature, I will consider a couple of choices." + ] + }, + { + "cell_type": "heading", + "level": 3, + "metadata": {}, + "source": [ + "Continuous Adjustment" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The first method normalizes the square of the residual using the following equation:\n", + "\n", + "$$ \\epsilon = \\mathbf{y^\\mathsf{T}S}^{-1}\\mathbf{y}$$\n", + "\n", + "where $\\mathbf{y}$ is the residual and $\\mathbf{S}$ is the measurement covariance, which has the equation\n", + "\n", + "$$\\mathbf{S} = \\mathbf{HPH^\\mathsf{T}} + \\mathbf{R}$$\n", + "\n", + "Both $\\mathbf{y}$ and $\\mathbf{S}$ are attributes of `filterpy.KalmanFilter` so implementation is of this computation will be straightforward.\n", + "\n", + "Let's look at a plot of $\\epsilon$ against time." + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from filterpy.common import dot3\n", + "from numpy.linalg import inv\n", + "\n", + "cvfilter.x = array([0., 0.])\n", + "cvfilter.R = np.eye(1)*0.2\n", + "cvfilter.Q = Q_discrete_white_noise(dim=2, dt=dt, var=0.02)\n", + "epss = []\n", + "for z in z_xs2:\n", + " cvfilter.predict()\n", + " cvfilter.update([z])\n", + " y = cvfilter.y\n", + " S = cvfilter.S\n", + " eps = dot3(y.T, inv(cvfilter.S), y)\n", + " epss.append(eps)\n", + "\n", + "plt.plot(t, epss)\n", + "plt.ylabel('$\\epsilon$')\n", + "plt.xlabel('time (sec)')\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "metadata": {}, + "output_type": "display_data", + "png": "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\ndDotSerp6ZHf71dzc/OU92ttbVVvb68TS4bH2MFFkhKFao7drhYN5r991rZVFZ/jNybeXiohzuUA\nAADMiKunq91www3FX69cuVJr1qzR4sWL9dRTT+n6668/5Y+7Y8eOUiwPZeJ0Xu+heK3snwW8sOMV\nNQQtdfVVSwqqZ/9e7RjOqnbcLyl/NqfaZ+rll18+/UVP4rfya3jp5VdUFyDoTAff45WJ173y8JpX\nHl7zyrJ8+fJTfl9Xh5wjLViwQJ2dnXr33XclSW1tbcrlchoYGJhSzenp6dH69euP+3HWrl0762uF\nO+zYseOUX2/LspR4693i75ed+yGdUR9ScKhLGkto9TnLtbY9qvOyph7sel8Z01JzNKy1a88u1fIl\nSdF9exWLZ7XiQ6u0IBos6cf2otN5zVG+eN0rD6955eE1rzwjIyOn/L6ublc7Ul9fn7q7u7VgwQJJ\n0po1axQMBrV58+bic7q6urRnz56jRk0DM5XMWZp0PU7xrpyJdrX8gIHJ53LqSjh0wMZdOQAAADPj\naCVnfHxc77zzjiTJNE3t27dPO3fuVHNzs5qamrRp0yZ95jOfUVtbmz744APdddddam1tLbaq1dfX\n65ZbbtGdd96plpYWNTU16Y477tDq1au1YcMGJz81eMDk8zjSxF05xZAzacDA2rYq/eJwoqRDB2zh\nwNFnchJZU4fjWS2uC5X8zwMAACh3jlZytm/frgsuuEAXXHCBksmkNm3apAsuuECbNm2S3+/Xrl27\ndN111+nss8/WzTffrBUrVuiFF15QNBotfowHHnhA119/vW644QZdfPHFqqur0/e///2j7twBZsqe\nrGazw83k6Wq2q86oVXPEr4s7oiq1hsLlos92xSTlA87NPzqgT/37Pu0bTZf8zwMAACh3jlZyLrnk\nkhNe2vmjH/3opB8jFArpwQcf1IMPPljKpQFHVXLskBM/YrqaJC2pD+npX106K+v4H+c1antvQn/3\n2qDWtUf1rbeG9fZQPty8OZCimgMAAHCEsjqTA8ylsczRISdnWopnLRmSqgJzUy28sD2qX1/RoJwl\n/e5PuvUf748VH+uKZeZkDQAAAOWEkAMcx1hqartaPGsqnp2o4vjmsCXy9vObtbwhVKwufbRwN0/X\nGCEHAADgSIQc4DiOruRYR10EOlfCfp+++ok2nVkf0q2rmvTfz2uSJO0f40wOAADAkcrqnhxgLtlV\n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\nyjO+nyLzAAAAAElFTkSuQmCC\n", + "text": [ + "" + ] + } + ], + "prompt_number": 33 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This plot should make clear the effect of normalizing the residual. Squaring the residual ensures that the signal is always greater than zero, and normalizing by the meausement covariance scales the signal so that we can distinguish when the residual is markedly changed relative to the measurement noise. The manuever starts at t=3 seconds, and we can see that $\\epsilon$ starts to increase rapidly not long after that. \n", + "\n", + "We will want to start scaling $\\mathbf{Q}$ up once $\\epsilon$ exceeds some limit, and back down once it again falls below that limit. We multiply $\\mathbf{Q}$ by a scaling factor. Perhaps there is literature on choosing this factor analytically; I just derive it experimentally. We can be somewhat more analytical about choosing the limit for $\\epsilon$ (named $\\epsilon_{max}$) - generally speaking once the residual is greater than 3 standard deviations or so we can assume the difference is due to a real change and not to noise. However, sensors are rarely truly Gaussian and so a larger number, such as 5-6 standard deviations is used in practice.\n", + "\n", + "I have implemented this algorithm using reasonable values for $\\epsilon_{max}$ and the $\\mathbf{Q}$ scaling factor. To make inspection of the result easier I have limited the plot to the first 10 seconds of simulation. " + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from filterpy.common import dot3\n", + "from numpy.linalg import inv\n", + "\n", + "cvfilter.x = array([0., 0.])\n", + "cvfilter.R = np.eye(1)*0.2\n", + "cvfilter.Q = Q_discrete_white_noise(dim=2, dt=dt, var=0.02)\n", + "\n", + "Q_scale_factor = 1000.\n", + "eps_max = 4.\n", + "\n", + "epss = []\n", + "xs = []\n", + "count = 0\n", + "for i,z in zip(t,z_xs2):\n", + " cvfilter.predict()\n", + " cvfilter.update([z])\n", + " y = cvfilter.y\n", + " S = cvfilter.S\n", + " eps = dot3(y.T, inv(cvfilter.S), y)\n", + " epss.append(eps)\n", + " xs.append(cvfilter.x[0])\n", + "\n", + " if eps > eps_max:\n", + " cvfilter.Q *= Q_scale_factor\n", + " count += 1\n", + " elif count > 0:\n", + " cvfilter.Q /= Q_scale_factor\n", + " count -= 1\n", + " \n", + "plt.plot(t[0:100], z_xs2[0:100], label='measurement')\n", + "plt.plot(t[0:100], xs[0:100], label='filter')\n", + "plt.ylabel('$\\epsilon$')\n", + "plt.xlabel('time (sec)')\n", + "plt.legend(loc=4)\n", + "plt.show()" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "4.0 1\n", + "4.1 2\n", + "6.9 1\n" + ] + }, + { + "metadata": {}, + "output_type": "display_data", + "png": "iVBORw0KGgoAAAANSUhEUgAAAzsAAAGkCAYAAAAWgDuQAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd8VuXB//HPuTNJCGGGsJcgikrduFBEqdaJxVapA7VS\nFRVsrUqH0Eq1VOuDe2tx4N4bBw6KKIhsRBFEBBIghJA97vv8/kh/POWpWkTCyfi8X6+8TM65zp0v\n4TLkm3POdYIwDEMkSZIkqZGJRR1AkiRJkuqCZUeSJElSo2TZkSRJktQoWXYkSZIkNUqWHUmSJEmN\nkmVHkiRJUqNk2ZEkSZLUKDWYsjN+/HhisdhWbx07dvyPMZ06dSIjI4NBgwaxePHiiNJKkiRJilqD\nKTsAffv2JS8vb8vbggULtuybOHEiN954I7feeiuzZs0iJyeHo48+mpKSkggTS5IkSYpKgyo7SUlJ\n5OTkbHlr06YNAGEYMmnSJMaOHcvQoUPp168fkydPpri4mClTpkScWpIkSVIUGlTZWb58OZ06daJn\nz56cfvrprFixAoAVK1aQn5/PkCFDtoxNT09n4MCBzJgxI6q4kiRJkiKUHHWAbTVgwAAmT55M3759\nyc/PZ8KECRx88MEsWrSIvLw8ANq3b7/VMTk5OaxZs2arbUVFRTstsyRJkqQdJzs7+3uNbzBl55hj\njtny/h577MFBBx1Ejx49mDx5MgceeOC3HhcEwc6IJ0mSJKmeaVCXsf27jIwM+vXrx7Jly+jQoQMA\n+fn5W43Jz88nNzc3iniSJEmSItZgzuz8XxUVFSxZsoQjjzySHj16kJuby9SpU9l333237J8+fTo3\n3HDDt77G9z0NJv03s2fPZr/99os6hhoZ55XqgvNKdcW5pR3th9yG0mDO7Fx++eW89957rFixgg8/\n/JBhw4ZRXl7O2WefDcCYMWOYOHEizz77LAsXLmTEiBFkZWUxfPjwiJNLkiRJikKDObOzevVqTj/9\ndDZs2EC7du046KCDmDlzJl26dAHgiiuuoLy8nFGjRlFYWMiAAQOYOnUqmZmZESeXJEmSFIUGU3Ye\nffTR/zpm3LhxjBs3biekkSRJklTfNZjL2CRJkiTp+7DsSJIkSWqULDuSJEmSGiXLjiRJkqRGybIj\nSZIkqVGy7EiSJElqlCw7kiRJkholy44kSZKkRsmyI0mSJKlRsuxIkiRJapQsO5IkSZIaJcuOJEmS\npEbJsiNJkiSpUbLsSJIkSWqULDuSJEmSGiXLjiRJkqRGybIjSZIkqVGy7EiSJElqlCw7kiRJkhol\ny44kSZKkRsmyI0mSJKlRsuxIkiRJapQsO5IkSZIaJcuOJEmSpEbJsiNJkiSpUbLsSJIkSWqULDuS\nJEmSGiXLjiRJkqRGybIjSZIkqVGy7EiSJElqlCw7kiRJkiJTWp2os9e27EiSJEmKxBsri/npk0t5\nZ1VJnby+ZUeSJEnSTrWpMs5V763hjUeeYfLzF7LinXfq5PMk18mrSpIkSdI3eHdVCXe9vYiRH9zN\nYXlzADhr/Qzg+B3+uSw7kiRJkupccVWcGz7Mo9mbT3PnokfJrKkg0SyTpBFjCI4+pU4+p2VHkiRJ\nUp36YE0p/3hlFhfOuJ09N35eu3HAkSSPvJKgdU6dfV7LjiRJkqQ68/iCdRQ9chc3L32e5DBOvGVb\nUi4YSzDgyDr/3JYdSZIkSTtcGIY8++xb7P/MjXQrWVu77cfDSDnrUoLMrJ2SwbIjSZIkaYeqKSpk\n3g1/5aQFUwEobt+N7NHjCHbfe6fmsOxIkiRJ2iHCMKTqnVcov/t6flReRFUsmbxjR9B9xPkEKak7\nPY9lR5IkSdIPFuavpur2v5A87wOygHntdqfZpX9ktz37RpbJsiNJkiRpu4XV1YQvPkzisbtIrqpk\nc0omD+x7Nif/6kx6tkqPNJtlR5IkSdJ2CefOpPruv5K0ZiUB8Hrng3n60PO59oR+tM9MiTqeZUeS\nJEnStltXVsOiT78k5/Gb6Lt0OknAyuYd+NuPzqVyjwO5aVBHWqQlRR0TsOxIkiRJ+i+Kq+LcMW8j\nM7/axBFznuHcT5+lWbyS8qQ0Ju/+UxYfMowDO2dzet+WpCfHoo67hWVHkiRJ0reav76cse/n0fWL\n2dww74Etz8z5co/DqTxzDCN36UZKUhBxym9m2ZEkSZL0HxJhyORFhUz5cAWj5/6DY1dNByDs1J2k\nkVfSq/+AiBP+d5YdSZIkSVvZUF7DH6fn0eqj13ls3mRaVhUTpqYTO20ksRPOIEiJfvGBbWHZkSRJ\nkrTFB2tKufn1BVw4824Oyf+kduOeB5B00R8IOnSJNtz3VH/uHvoerrvuOmKxGJdccslW28ePH0+n\nTp3IyMhg0KBBLF68OKKEkiRJUsNSnQi5eXY+7951H3e/NIZD8j8hkZFFcPE4Yn++s8EVHWiAZWfm\nzJncc8897LXXXgTB/94INXHiRG688UZuvfVWZs2aRU5ODkcffTQlJSURppUkSZLqv7zSav742AwO\nvf1SfjvvATLilTBgMMm3Pk3sqJO3+rm7IWlQZaeoqIgzzjiDBx54gFatWm3ZHoYhkyZNYuzYsQwd\nOpR+/foxefJkiouLmTJlSoSJJUmSpPrtg5Ubee26vzH+ydH03/gZ1dltiV31d5KuuoGgdbuo4/0g\nDarsjBw5klNPPZXDDz+cMAy3bF+xYgX5+fkMGTJky7b09HQGDhzIjBkzoogqSZIk1WvxRMjzz71F\n+9+fwZkLnyIljFM1eChptz1DMODIqOPtEA1mgYJ77rmH5cuXbzlT8++n0vLy8gBo3779Vsfk5OSw\nZs2anRdSkiRJagAKNxSw8O8TOX7JG7Uft+tKqzHjaNZvn4iT7VgNouwsXbqU3//+90yfPp2kpCSg\n9tK1fz+7822+6/rC2bNn77CM0v/nvFJdcF6pLjivVFecW/VYGFI5Zza7vv04B1cWURVLZsmBxxMe\nPoQvyxNQD//uevfuvd3HNoiy88EHH7Bhwwb69eu3ZVs8Huf999/nrrvuYuHChQDk5+fTuXPnLWPy\n8/PJzc391tfdb7/96i60mqTZs2c7r7TDOa9UF5xXqivOrforvuYr1vzPBDp+PguApR36kfPr8ezT\ne5eIk323oqKi7T62QZSdoUOHcsABB2z5OAxDzjnnHPr06cPvfvc7evfuTW5uLlOnTmXfffcFoKKi\ngunTp3PDDTdEFVuSJEmKXFhdRcGU+8h84R90jFexOSWTj348kiNH/IKU5KSo49WpBlF2srOzyc7O\n3mpbRkYGrVq1YvfddwdgzJgxXHvttfTt25fevXszYcIEsrKyGD58eBSRJUmSpMhVfTKT4lv/QquC\nrwF4q8dAMn75G37cr2vEyXaOBlF2vkkQBFvdj3PFFVdQXl7OqFGjKCwsZMCAAUydOpXMzMwIU0qS\nJEk7X1i4gYI7/karj96gJbAiqxMzjruUk4cOpkVa4z6b8+8abNmZNm3af2wbN24c48aNiyCNJEmS\nFL0wHqfi5cdJPHIbrSrLqIil8PSPfsYe543krE4too630zXYsiNJkiTpf8U/W0jRzRPI/nopANM7\n7MNXP7uMnw/cnbSkBvV4zR3GsiNJkiQ1YIniIlbfNYnc6c+TTUheszY8NXAkx592Ioe3So86XqQs\nO5IkSVIDFIYhXzz3DG0ev4WOFUXUBEk8s/sJNDt9JJf0yyX2Hc+bbCosO5IkSVIDs3TuIsK7r6P3\nmkUAzM/ZndXDL+fkw/o32UvWvollR5IkSWogVq4r4vO7buGwOc+RHMYpTGvBguMv4sCfD2Pv1Kaz\nytq2suxIkiRJ9VxRZZw3nn6FAS/dzKCyDSQIWLDfCfS88DIGtWkVdbx6y7IjSZIk1VPViZCXZy0j\n++EbGbpqJgB57XuRcckf+dEe/SNOV/9ZdiRJkqR66J+rNrPokYf4+exHaF5TTkVyOsXDfkXHU88g\nSPLH+G3hV0mSJEmqR1ZuruLRlz/gJ1Nv4bzCLwDYsNdhtLtkLJntOkScrmGx7EiSJEn1xMzl61lx\n1838eunLJBFSmt2O9Auuov1BR0YdrUGy7EiSJEkRC8OQd59/jV2euJH9yzaQCGJUHns6WWdeRNAs\nM+p4DZZlR5IkSYpQ9YZ1fHbDBA779H0A1nfoTbvfjCNjl34RJ2v4LDuSJElSBMJEgvJXniL+4M30\nrSqlPCmNlcf/kt3PGuECBDuIX0VJkiRpJwu/+oLyW/5M2ufzAfiw4760uvR39OvbM+JkjYtlR5Ik\nSdpJwvIywifvIf78w6TFa9iQls0jh5zP6eeeSofmqVHHa3QsO5IkSVIdC8OQ8J9vUHXf30kpXAcE\nPN3jKOb8+HyuHrwLGSmxqCM2SpYdSZIkqQ4lvvqCwtuuo+XSj0kBFrXqxd/3OY/9D92fv/RvQ1Is\niDpio2XZkSRJkupAdUkJX957G13ffZKWYZxNqc25d69fkP7joVzfrw05Gf4oXtf8CkuSJEk7UCKR\n4ONnX6DrU7fQs3wjCQJe7j2E0p9dyEX9u5CVmhR1xCbDsiNJkiTtIOVff8XKv1/DPitmA/B5297k\nn3E5xx62PylJXq62s1l2JEmSpB8orK6m4PEHyHz2PnrHqyhOyWTFSRew1+mn0zfJMzlRsexIkiRJ\nP0C4+BM23/RnWuV/CcB7vQ6n++gr2btrh2iDybIjSZIkbY9w8yZqJk8i9tbzNAe+yszl7Z9cyuk/\n+7FLSdcTlh1JkiTpewgTCcK3X6Bm8k0kFW+iKpbMQ31Ppt0vzufc3dsRBN6bU19YdiRJkqRtFC5b\nTOLuv8JnC0gCZrfrxwOHXMDoE/ZjtzbpUcfT/2HZkSRJkv6LsLiI8JFbCV9/GsKQ9emtmLTnmVQf\nPITrD8l1Oel6yrIjSZIkfYswkSB88znCh26B4k3EgxiP9j6O+3YfxrkHdOHs3Vt52Vo9ZtmRJEmS\nvkH4+aLaS9Y+XwjAgtw9uGbPc9jYrht/O6wDAzpkRJxQ/41lR5IkSfo34YZ8woduIXz3ZQAqWrTl\nut3P4OWOB7Fbm3QeObwDHZunRJxS28KyI0mSJAFheRnhs/8gfO4hqKogTE5h9v5D+U274yhLacZJ\nvVow9sB2pCW5rHRDYdmRJElSkxYmEoTTXiR8+FYo3ADAkt0GcsOupzMvqQ3JMfj9/jn8tHcL789p\nYCw7kiRJarLChbOpvOcGUlYuBWBxq178fa+zmde2LwAdM5O57rBc9mrXLMqY2k6WHUmSJDU58Y3r\nWXvLRDp88hYpQF6zNty6x3Be73IIu7dtxgWdMjm0cya7tU4j5tmcBsuyI0mSpCYjUVPD8icfJefZ\nO+lQVUZFUiqP7DaUlYN+zkHd23B5xwzaNPNH5MbCv0lJkiQ1CV/MmQd3/oUe6z4H4KNO+7D5rN9y\nzv67khLz7E1jZNmRJElSo/b1uo0sv/NmBsx5gSRC1jdrzaKhl3LI0ONJT0mKOp7qkGVHkiRJjVJx\nZQ1vPfECB758K4dUFFITxJhz4Cn0ueBSBrdsEXU87QSWHUmSJDUqYRjy1pwvSL9/Iiesng3A1x12\nJePiP7J/v34Rp9POZNmRJElSo/F5QRkf3f8AJ3z4MJk1FZSlZlDy81F0HXoaQcyHgTY1lh1JkiQ1\neMVVcZ55fRZ7P3MDpxV+AcDavQ6nw+jfkdUmJ+J0ioplR5IkSQ1WGIa8vnQ9hQ/ewWlLXiA5TLA5\nqy1pF46l88FHRh1PEbPsSJIkqUHaWFHDY4+9znFTb6Zz2ToSBGw66me0Pu9SgmaZUcdTPWDZkSRJ\nUoPzwdLVbL7zen614l0ANnfoRYsx42iz654RJ1N9YtmRJElSg1FRHef1h57kkNdup1VVMVVJqVQN\nO5+Wp55NkJwSdTzVM5YdSZIkNQjLPlvBppsmcPzqOQDk9fwRub8eT7PO3SJOpvrKsiNJkqR6LV5d\nw+wH7qff6/fTI15JSWpzSn9xKR1PHEYQBFHHUz1m2ZEkSVK9FIYhCz78hIz7rmO/9csAWLLb4fT6\nze/Jbtsu4nRqCCw7kiRJqlfCMGTWig0UPHArgxe8SBIh6zPasOGsK9jjmCFRx1MDYtmRJElSvRCG\nIR/mlfPhcy8z7L272Le8gHgQY/FBp9DrgtHktsiKOqIamFjUAbbVbbfdRv/+/cnOziY7O5uDDz6Y\nV155Zasx48ePp1OnTmRkZDBo0CAWL14cUVpJkiR9Hx+tLePyZz6h9M+jufj1a8ktL2BDp12p+euD\n7HnFH8iw6Gg7NJgzO126dOFvf/sbvXv3JpFI8I9//IOTTz6ZWbNm0b9/fyZOnMiNN97I5MmT6dOn\nD3/+8585+uijWbp0Kc2bN486viRJkr5BZTzB9TPzSHv9ccYvepyMeCVVaRkEvxhFznE/J0hKijqi\nGrAGU3ZOPPHErT6eMGECd9xxBx999BF77bUXkyZNYuzYsQwdOhSAyZMnk5OTw5QpUxg5cmQUkSVJ\nkvQd1pRUM+nZDzjj7ZvpV/gFAPEDB5M+8gqCNjkRp1Nj0GDKzr+Lx+M8+eSTVFRUMHDgQFasWEF+\nfj5DhvzvDWvp6ekMHDiQGTNmWHYkSZLqmZkrC1lyzx1cs+gZksM41a3bk3bh70jaf2DU0dSINKiy\ns2DBAg466CAqKytp1qwZTzzxBLvuuiszZswAoH379luNz8nJYc2aNVFElSRJ0jdIhCEvvDqD3R+b\nyFmbVwFQffQw0s4ZTZDhrQfasRpU2enbty/z58+nqKiIJ598ktNOO41p06Z95zHf9aCp2bNn7+iI\nkvNKdcJ5pbrgvFJd+ba5VVFRSfErL3Pc4teIEVKQ3Z4NJ55FWbc+sPjTnZxSDUXv3r23+9gGVXZS\nUlLo2bMnAHvvvTezZs3itttu4+qrrwYgPz+fzp07bxmfn59Pbm7ut77efvvtV7eB1eTMnj3beaUd\nznmluuC8Ul35trm16p//JHbXNeQW5xMPYqw+6nS6/PISctLSI0iphqSoqGi7j20wS09/k3g8TiKR\noEePHuTm5jJ16tQt+yoqKpg+fToHH3xwhAklSZKatnhhAcvG/5aO119MbnE+K1t3p3D8/XQd9VsC\ni47qWIM5s3PVVVdx/PHH07lzZ4qLi5kyZQrvvvsur732GgBjxozh2muvpW/fvvTu3ZsJEyaQlZXF\n8OHDI04uSZLU9ISJBJtefpqkh2+mR2UJFbEUZh4ynEMuupD0ZmlRx1MT0WDKTn5+PmeccQZ5eXlk\nZ2fTv39/XnvtNY4++mgArrjiCsrLyxk1ahSFhYUMGDCAqVOnkpmZGXFySZKkpiWxYikFk66h9cpF\nAMzu0B/OH8vgfXaNOJmamgZTdh544IH/OmbcuHGMGzduJ6SRJEnS/xVWlNN26lPUzHqD1mGCDekt\nef3IX3H8mT+ldbOUqOOpCWowZUeSJEn1UxiG8NE7lN05kS6F+SQIeKb3sWSNuJgzd+/wnavjSnXJ\nsiNJkqTtFq5dRdHt15G14APSgU9b9uD5oy7mnKGH0SHTszmKlmVHkiRJ31tYWUHeQ/fQ6tWHyIpX\nU5ySwX17nk7NAYdw1Y9/RMyzOaoHLDuSJEn6Xpa/+SaZD95AzuZ8AF7rfjj5Px3FeQf0ZNmCTyw6\nqjcsO5IkSdomny1ZTtndE9lzxUcAfJHdlQVDxzD42IG0TEuKOJ30nyw7kiRJ+k6rC8uZe/89HDHj\nEdLjVZQmN+OTwSPof/bZ/DTDZ+ao/rLsSJIk6Rttrozz4uv/ZN+nb+SYopUAfLbHIDpcdAWHd8yN\nOJ3031l2JEmStJXqeMiz878macrt/Ozz14kRsjE7l9gFY9ntoIFRx5O2mWVHkiRJQO3zct5cWcys\n517mnJn3kFNRSDyIsfGYM2g74kKCtGZRR5S+F8uOJEmSWF5UxR1vLebYN27jyrWzASjuvjstRl9N\nux67RpxO2j6WHUmSpCasvCbBvfM3UPLSk/xh/iM0rymnOj2T5DMvIfuYYQRJrrKmhsuyI0mS1ES9\nu6qEh9+cy8h/3s4+G5YAUL3/EaRdMJagTU7E6aQfzrIjSZLUxKwpqeaGmWvpNu0xblryFGmJaqpb\ntCbtgqtIO+goAh8KqkbCsiNJktREbK6M8+jSTcx4/2Ou/OgOdi36EoBw0AmknfsbgqzsaANKO5hl\nR5IkqZFbU1LNI0s28fKn6zhzwZPc/fmLJIcJ4u06knLRHwj2PijqiFKdsOxIkiQ1UksKKpi8uJA3\nV5aw5/ol3P/xnXQrWUsYBAQn/IKU4RcRNMuIOqZUZyw7kiRJjUgYhsxYU8aDiwv5KK+cjOpyfrvo\nEYZ9MbV2QJeeJF08jmDXvaINKu0Elh1JkqRGojKe4E8z1vHql8UAHL5+HuPm3kOLzesgKZngp+cQ\nnPpLgpTUiJNKO4dlR5IkqREoKK/hsnfWsmBDBe3jJdy08jF2+eRfZ3N67Ubs4nEEPhxUTYxlR5Ik\nqYH7vLCSS6etIa+0hhM3zuF3H99N8uaNkJJKcPqFBCedQZDkj31qepz1kiRJDdj7X5dy1ftrCcpL\nuXHpwwxc+mbtjt32rj2b06lbtAGlCFl2JEmSGqAwDHlkySb+Z84G9lq/hOs/uZ1Wm/Nrz+aceSnB\n8acTxGJRx5QiZdmRJElqYKoTIRM/WscLnxZw8eLHOfPzFwnCEHruRuyyawi69Io6olQvWHYkSZIa\nkK+Lqxn/QT6bly7hodm3skvRVxCLEQw7j+BnIwlSUqKOKNUblh1JkqQGoCYR8vCSQu79ZD3DPn2B\nCxY/QUqiBjp0ITZmgs/Nkb6BZUeSJKmeW1RQwTUfrIMVn3LXx3fSd9MKAIJjTiUYcRlBerOIE0r1\nk2VHkiSpniqrTnD7vAKeWbSOXy56gjM+f4mkMAHtOhC76A8Eex8cdUSpXrPsSJIk1UPTV5dy7Yfr\n6PjlPB6ZcxddS/IIg4Dg+OEEvxhF0Cwj6ohSvWfZkSRJqkeWF1Vxy5wNzF6+jtELHmLol2/X7ui6\nC0kXX03QZ89oA0oNiGVHkiSpHlhXVsNd8wp4blkRh6/+iKfm3k/bikLC5BRip/6S4JRzXGlN+p4s\nO5IkSREqqYozefEmHl5cSIviDVw/7z4OXzO7dmff/iSN+qPPzZG2k2VHkiQpAtXxkKc/L+Lu+Rsp\nqqjmp8unMnrxo6RXlUOzTIIzL6ldbS0Wizqq1GBZdiRJknaiMAx586sSbvmkgFXF1fQq+oo7F9xD\nr/yltQMOOILYyKsI2raPNqjUCFh2JEmSdpK568r5nzkbmL++gtR4FVctf45TFj5LLBGHVm2J/Wos\nwYAjo44pNRqWHUmSpDq2cnMVN3+ygbe/KgXg8KJPGT/3HrI2rAL+9XDQMy8hyMyKMqbU6Fh2JEmS\n6sjGihrunr+Rpz8roiaEtvEybvzqCXaf80rtgM49iI26mmC3H0UbVGqkLDuSJEk7WBiGPP35Zm6a\ns4GS6gQBcGV8Pj995w5imwogOZlg2C8JfnoOQUpq1HGlRsuyI0mStANtqozz5w/ymbaq9pK1Y1uU\ncdW8B8ic827tgF33Inbx1S4nLe0Elh1JkqQdZFZeGb+fnsf68jhZyXBb4kN2f/wuKCuB9AyCs0YT\nHDPM5aSlncSyI0mS9ANVJ0LunFfAAwsLCYEfJ29g3Cd3kfrZvNoB+w8kNnIsQbvcSHNKTY1lR5Ik\n6Qf4anMVv5uex6KCSlLDGm4ufJ19359CUFMN2a0Jzr+S4JCjCYIg6qhSk2PZkSRJ2g5hGPLi8mIm\nfrSOspqQI0qXMWHePaSvXQFAMPgkghGXEWRlR5xUarosO5IkSd9TXmk11364jvdXl5FZXcYtK59i\nwPyXCcIQOnQhdtEfCfbcP+qYUpNn2ZEkSdpGiTDk6c+LuGlOAaXVCX687mP+MP9+mhWth6RkgpPP\nIvjZ+QRp6VFHlYRlR5IkaZus3FzFNTPX8XF+OR1K13H7Zw/Rb/mHtTt796t9OGj3PpFmlLQ1y44k\nSdJ3qEmETFmyidvnFRCvrubCFS8zYtFTJFVXQrNMgl9cRHDszwmSkqKOKun/sOxIkiT9SxiGFFbG\nWVtaQ15pDWtLqnn1y2IWF1Sy77qFTFj0AO02rgIgOOzHBOf8mqB1TsSpJX0by44kSWqyquMh9y/c\nyLz1FawtrSavtIaKeLjVmDYVm7h+8cMMWvFe7YaO3Yj96iqC/gMiSCzp+2gQj++97rrr2H///cnO\nziYnJ4cTTzyRRYsW/ce48ePH06lTJzIyMhg0aBCLFy+OIK0kSWoIyqoTjJ62hjvnb+SDtWV8ubma\ninhI85QYvVulckSHdP66+R1efOuy2qKTmkYw/CJiNz1h0ZEaiAZxZufdd9/l4osvZv/99yeRSHD1\n1Vdz1FFHsXjxYlq1agXAxIkTufHGG5k8eTJ9+vThz3/+M0cffTRLly6lefPmEf8JJElSfVJYEefS\nt1ezsKCSVmlJXHVAO3pkp5KbmUxWahLhkrkk7roOvvys9oB9DyV2/pUEuZ2jDS7pe2kQZee1117b\n6uOHHnqI7OxsZsyYwXHHHUcYhkyaNImxY8cydOhQACZPnkxOTg5Tpkxh5MiRUcSWJEn10NrSai56\nczVfbq6mQ2YydxzViW4tUgEICzeQuOMmwmkv1Q5u14HYeb+FA48gCIIIU0vaHg3iMrb/a/PmzSQS\niS1ndVasWEF+fj5DhgzZMiY9PZ2BAwcyY8aMqGJKkqR65otNlYx47Wu+3FxN75ap/OOYLnRrkUoY\nryHxwiMkRg2tLTopqQQ/O5/YrU8TDBhk0ZEaqO99ZufTTz+lb9++dZFlm40ePZq9996bgw46CIC8\nvDwA2rdvv9W4nJwc1qxZs9PzSZKk+mfe+nIufXsNm6sS7J2Tzk2DOtZesrZoDom7/worP68duN9h\nxM77LUGHLtEGlvSDfe8zO9dee+2W95955pkt7xcUFHDzzTfvmFTf4de//jUzZszg6aef3qbfsvib\nGEmSNH11KRe8sZrNVQkGds7k9sGdaB6vIHHnX0j8/rzaotO+E7HfTSLpDzdbdKRG4nuf2SkvL9/y\n/osvvshWD5vyAAAgAElEQVQpp5wCQJs2bVi/fv2OS/YNLrvsMp544gmmTZtG9+7dt2zPzc0FID8/\nn86d//fGwfz8/C37vsns2bPrLKuaLueV6oLzSnWhqcyr9wtTeCSvGXECDsmuYnjzIlY+/QZdX36Q\n1M0bScSSyD/kWPIPPpYwlgpN5OtSl5rK3NLO0bt37+0+9nuXnaysLF5++WWOO+64/9iXVIdPDh49\nejRPPvkk06ZNo0+fPlvt69GjB7m5uUydOpV9990XgIqKCqZPn84NN9zwra+533771VleNU2zZ892\nXmmHc16pLjSFeVVek2DiR+t5Pm8zACP6teKSPqnwwI2Ebz1fO6jXbiRf8ic6d++N66ztGE1hbmnn\nKioq2u5jv3fZ+dOf/sSAAQM4+OCDKSwsZNWqVaSlpTF16lRWrVq13UG+y6hRo3j44Yd57rnnyM7O\n3nKPTlZWFpmZmQRBwJgxY7j22mvp27cvvXv3ZsKECWRlZTF8+PA6ySRJkuqvrzZXcfl7a/m8sIr0\npICxB+Zwwsa5JC6dABvX1y5AcNqvCE4+iyCpQSxOK2k7fO//u7t06cK7777LBRdcwNtvv023bt0A\nGDx4MI899tgODwhwxx13EAQBgwcP3mr7+PHjufrqqwG44oorKC8vZ9SoURQWFjJgwACmTp1KZmZm\nnWSSJEn109tflTBuRj4l1Qm6ZqXw930z6PnU30i8+3LtgF33JHbxeIIuPaMNKqnObdevMnbZZRfe\nfPNN1qxZw8qVK+nYseOW0lMXEonENo0bN24c48aNq7MckiSp/qpOhNzyyQYeWrwJgCO7ZHBN9WzS\nfj+JcPMmSE0nOGMUwXGnE9ThpfeS6o8fdN62Y8eOdOzYcUdlkSRJ2i7rymq46v21fLKugqQA/tC1\nnBPeuB4WzKodsMd+xC76A0HHuvvlrKT6x4tUJUlSg1UVT/DUZ0Xcs6CQTZVxOqYmuLvkDXJvfhBq\nqiGrJcG5vyY44ngfRyE1QZYdSZLU4MQTIS+vKOaOeQXkldYAcEZ8GZe8exdJa1YCEAw+ieDsMQQt\nWkYZVVKELDuSJKnBCMOQt1eVctvcAlYUVQGwT1oZ1yx7jPYfvVY7qHMPYhf8jmAPlz+WmjrLjiRJ\nahA+XFvGrZ9sYGFBJQBdMgImlP2Tfs/fB6XFtctJn/pLgqFnE6SkRpxWUn1g2ZEkSfXa6uJqJs5a\nx/urywBok57Eldl5DHr1FoIVn9YO2vtgYudf4QIEkrZi2ZEkSfVSdTzkoSWF3DN/IxXxkOYpMX7V\nPeBnHz1I0iPP1w5ql0vsvN/CgYNcgEDSf7DsSJKkeufj/HKu/XAdy/91X85PumZwZdF0Mm+9HUo2\nQ3IywclnEww7jyC9WcRpJdVXlh1JklRvFFbEuWnOBp7/YjMAXbNSuCZ3I/2eGg/LFtcO6j+A2Mgr\nCTp1jyynpIbBsiNJkiIXhiEvfLGZ//l4A0VVCVJiARf0SuHMuVOITX4SwhDa5BA773I46CgvWZO0\nTSw7kiQpUpXxBH+ZuY4XlxcDcED7dK5JzKXNnTfBpgKIJRGcOJzgtF8RNMuMOK2khsSyI0mSIpNf\nWs1v3l3LooJK0pMCJnQv54hXr4cFs2oH9O1f+8yc7n0izSmpYbLsSJKkSMxdV87l766loCJO97Q4\nd29+ndY3Pgw1NZDVkuDs0QRHnkgQi0UdVVIDZdmRJEk73VOfFTFx1jpqEnBuxUIueP8+YutWAxAc\ndTLBWZcStGgVcUpJDZ1lR5Ik7TTV8ZCJs9bx9OebaV+2gZu+eJhdPptRu7Nb79pL1nb7UbQhJTUa\nlh1JkrRTrCmp5g//zGN+XgnnLHuFXy19iuSqCkjPIBh+IcFxpxEk+aOJpB3H7yiSJKnOFFfFeXNl\nCa+sKGZ2fjl7r1/ME/Puo1vRKgCCg48mOO9ygjY5ESeV1BhZdiRJ0g5VnQiZsbqUV1YU8+7XpVTG\nQ9qVb2TCwkc45qv3awd16EJs5FUEex8cbVhJjZplR5Ik7RAlVXHunL+Rl5cXs6kyDkBqvIo/rnmN\n4z55iuTqCkhJJRh2LsHQEQSpaREnltTYWXYkSdIPtmB9BWOnr2V1SQ0APVukcGHFPAa+eRdJ69fW\nDjpoMLERlxG07xRhUklNiWVHkiRtt0QY8o9Fhdwxt4CaEHZrncafO22mx1N/g4Wzawd13YXYL39L\nsNcB0YaV1ORYdiRJ0nZZV1bDH/+Zx0d55QCc1z2JXy16mNh9T0MiAVnZBKdfRPDjU1xlTVIk/M4j\nSZK+t/e+LmHcjHVsqozTOi3G7clz2eXe26CoEGJJtctIn3YBQVZ21FElNWGWHUmStM2q4gkmzSng\n0U83AXBSWgFXzb2XlMUf1w7otw+xkWMJuu0SYUpJqmXZkSRJ22R9WQ2/fmcNCwsqyYxXclvhq+zx\nzyegpgZatCQYcRnBoBMIgiDqqJIEWHYkSdI2WLqxkjHT1pBXVsOJhXO5av4DpG6oXWUtGPJTgjMv\n8ZI1SfWOZUeSJH2nd1eVMHZ6Hq2K8rn704fZ58uZtTu69yF24e8Jdt0r2oCS9C0sO5Ik6RuFYcjD\nSzZx+0drOHPp85z7+fOk1FRBegbB8IsIjvu5q6xJqtf8DiVJkv5DdSLkrzPzKXj/bR6f9w86la0H\nIDj8JwRnjyZonRNxQkn67yw7kiRpK5sr4/zthY8Z8uYdHJI/t3Zj997Ezr+SoN++0YaTpO/BsiNJ\nkgCoSYS881k+Gx+5h98veoHURA3xZs1JPmMUwTHDvGRNUoPjdy1Jkpq48uoEz3+2kYLnn+Bn8x6n\ndeXm2u1HnEjmiNEELVtHnFCSto9lR5KkJmpjeQ2PfbqJNW+9zrlzH6FbSe1S0gXd+pF9wW9pvlv/\niBNK0g9j2ZEkqYlZVVzFQ2vTKZ3xOhfNe4j+BUsBKMvpQsaI0bQ76EgfDCqpUbDsSJLURKwvq+Ge\nBRuZ9clSLlzwCINXfwhAdVZLUk+/gOZDTiFITok4pSTtOJYdSZIaueKqOJMXFfLCvK85Y+FT/PqL\n10gJ4yRS00g66UzShp5NkNE86piStMNZdiRJaqQqahI8vrSIyfPXcfSnU3l0yZO0rComDAIK+h9C\nu0uvJmjj83IkNV6WHUmSGpkwDHl22WbunLuBPitmc/eCh+hRvLp25x77kXTub/hqYwk5Fh1JjZxl\nR5KkRqQ6HvKnD/L5dO4ixs1/kAHr5tfu6NCF2NmXwYFH1C4+sHF2tEElaSew7EiS1EgUV8UZ/9qn\nHDBtMld/+SZJYQgZzQl+PpLgJ6cRpLj4gKSmxbIjSVIjsG5zOa/cdg9/nPM4WdVlhLEkgmOHEZz2\nK4IWraKOJ0mRsOxIktSAhWHI2nfeoub+GzmzuPahoJV7DqDZyMsJuvSKOJ0kRcuyI0lSAxWuXMam\nO/9G+yWzAFjbshPZF/yW5gcO9KGgkoRlR5KkBidcv5bwiXtJvPkcLcIEm1MymXbwL/jJheeSnp4W\ndTxJqjcsO5Ik1VMbK2pYW1rDpoo4myrjVK7Lo9ebD7PbnFdJStQQD2I80/PHbDjpl1x0WC+SYp7N\nkaR/Z9mRJKmeCcOQ+xcWcvu8AhIhtCkvZMTS5zhlxZukJapJEPBal0O4p+8wThnUn4t3a+lla5L0\nDSw7kiTVI+XVCcZ9kM8bK0toU7GJ0Stf5qglr5IarwJg+R6Hs2zICFK69uLvLVPp1dLL1iTp21h2\nJEmqJ1YXV3PZu2v4ckMpI5e/zHmfPkNSVUXtzgFHEjvtV/Tu3ofe0caUpAbDsiNJUj3w4doyrnxv\nLX1XfcIN8x+g0+Y1tTv2H0js9AsJevaNNqAkNUCxqANsq/fee48TTzyRzp07E4vFmDx58n+MGT9+\nPJ06dSIjI4NBgwaxePHiCJJKkrTtwjDkkSWF/OnFeYx97wZum/6X2qLTuQexP91J0u9vsuhI0nZq\nMGWntLSUvfbai5tuuolmzZr9x42YEydO5MYbb+TWW29l1qxZ5OTkcPTRR1NSUhJRYkmSvltFTYI/\nvf816x+5lydev4yjVs+EtHSCsy4l9j+PE/Q/MOqIktSgNZjL2I499liOPfZYAEaMGLHVvjAMmTRp\nEmPHjmXo0KEATJ48mZycHKZMmcLIkSN3dlxJkr5VdSLk1RXFzH79bc6ecQ/dS/51ydrBRxE75zcE\n7XKjDShJjUSDKTvfZcWKFeTn5zNkyJAt29LT0xk4cCAzZsyw7EiS6oWqeIIXvyjm7emf8PMPJzMu\nf27t9vZdSb/gKoK9D4o4oSQ1Lo2i7OTl5QHQvn37rbbn5OSwZs2aKCJJkrRFRU2C55Zt5oVZX/DT\nj6fwP19OI4mQ6vRMkoedR/pJvyBISY06piQ1Oo2i7HyX73rI2uzZs3diEjUVzivVBedVw1QTwrSN\nqbybF3LSpy9x92cv0ixeSTyWxLp9BpJ/2AnUZGbBvPmR5HNeqa44t7Qj9e69/QvuN4qyk5tbe21z\nfn4+nTt33rI9Pz9/y75vst9++9V5NjUts2fPdl5ph3NeNUwby2u48p3VdPnoFSYvfpy2lUW1OwYc\nScqZl9KhUzc6RJjPeaW64tzSjlZUVLTdxzaKstOjRw9yc3OZOnUq++67LwAVFRVMnz6dG264IeJ0\nkqSmZnFBBQ9NeZXLZz3ALptX1W7sswexEb8m2H3vaMNJUhPSYMpOaWkpn3/+OQCJRIKVK1cyd+5c\n2rRpQ5cuXRgzZgzXXnstffv2pXfv3kyYMIGsrCyGDx8ecXJJUlPy9gcLSXpwEhPWfgxAvF1Hks++\nlOCQId95abUkacdrMGVn1qxZHHnkkUDtfTjjxo1j3LhxjBgxgvvvv58rrriC8vJyRo0aRWFhIQMG\nDGDq1KlkZmZGnFyS1BRUF21i7q03c8jsF0gO41SmZpBy6rmknHQGQWpa1PEkqUlqMGXniCOOIJFI\nfOeY/1+AJEnaWcKaakpfeoL4o3exT2UxCQJWHHA8vS4aQ9CyTdTxJKlJazBlR5Kk+iSMxwnfe5Xy\nR++m2bra+3Lmtt+DzJGX03ff/hGnkySBZUeSpO8lUVPD2qmvkPb0vbQqWEU68FVmLs8eci5nnH0y\nOZkpUUeUJP2LZUeSpG2worCCZa+8RJ+pk+lc9DUAX2fk8Hj/U8k46gRG/agdaUmxiFNKkv6dZUeS\npG8RhiHTVhYz98WXOW7Woxz5r2Wk8zLbMefwM+hw/Mn8JjeLpJirrElSfWTZkSTpGyzaUMELL07j\nuPfuY3ThFwBsapHDxuPPpvtJwzghLTXihJKk/8ayI0nSv1lTUs1jb82j/2t3ccXa2QCUZ7Uh7bTz\naT1kKG1SLDmS1FBYdiRJAoqr4jz64XJaPncfo5a/QXKYoDolnXDo2WSecjZBerOoI0qSvifLjiSp\nSUuEIc8vWsf6Jx/k54uepXlNOYkgRtmgoTQ/80KC1u2ijihJ2k6WHUlSk/XVpnKmPvgEx37wELnl\nBQCU7HkwLc7/NVlde0WcTpL0Q1l2JElNTjwR8vaLb9Ll2ds4Z9NKAIo79abFyF+T3X9AxOkkSTuK\nZUeS1KR8tWAhG++6kSO//gSATVntSDvrYrIHH08Q8zk5ktSYWHYkSU1C9fp8vrhjEr3mvE4nQkpT\nMlh/7Jn0/MUIgrT0qONJkuqAZUeS1KhVbdrI1w/dS+47T9M7XkVNkMTH+xxHvwsvoVfbtlHHkyTV\nIcuOJKlRWrZ6A3mPTmavmU/TraYcgBldB9D8vDEM6L9rxOkkSTuDZUeS1GgUV8WZ+uk6ql+cwo/n\nPkuP6lIA5nbeh/Unnc/AIw4gI8X7ciSpqbDsSJIavJpEyC0friZ47UnOWPIsraqKAfiq614w/CL2\nOfAAgiCIOKUkaWez7EiSGrSq6hqevPcxfv7eA7Qv3wjApu79aH72xfTY22WkJakps+xIkhqsivkf\ns+bWiZy27nMAyrv0IXPEJbTe5xDP5EiSLDuSpIYnzPuaqgf+h5QP36YbsKFZa+LDL6bDcSf5rBxJ\n0haWHUlSgxGWFhM+eS+Jlx4luaaaiqRUnu53ModffBHdcrKjjidJqmcsO5Kkei/MX0345nOErz8F\nmzcRAC91HcizB57FtSftRcfmKVFHlCTVQ5YdSVK9FFZXw6x3SEx9FubNhDAEYFHObvx1j7Oo7rEb\ndxzVibbN/KdMkvTN/BdCklSvhKtXEr7xLOG0F6CosHZbSiqr9xzITW0GMi1rV/Zom84dgzuRnZYU\ncVpJUn1m2ZEkRS6sqYaP3iHx6pOwYNaW7aUdevD2rkdza/YACpKbA7Bf+2ZMGtSRTB8OKkn6Lyw7\nkqTIhBvXEU59lnDq07BxPQCJ1HQW9h3IPe0P54OsXeBfS0jv174ZP+mRxXE9s0hNsuhIkv47y44k\naacKwxAWfkz46hOEH06DeA0Am9p25cleQ3i4/aGUpmQAsEvLVI7rmcUx3bPIzXQRAknS92PZkSTt\nFGFFOeE7LxG+8jh89UXttlgS83c5hLs6Duajtv0gCMjJSGZY9yx+0jOLPq3SIk4tSWrILDuSpDoV\nrltD+MoThG88A6XFAJQ2b82zPQbzSJfBrG/WmuQABndpzsm7tOCgDhkkxYKIU0uSGgPLjiRphwvD\nEBbPIfHSo/DhNEgkAFjeflfu7XYMb3U6kHgsme4tUjhjl2yO65lFG5eQliTtYP7LIknaYcKaasL3\nXyN8cQos/xSAeCyJt7seysO9fsKi1ruQnhTwk27NGdo7mx+1SycIPIsjSaoblh1J0g8WVlYQvvU8\n4bP/gPV5ABSlt+DJ7kfxVM8hbGjWmv7t0vljrxYM6dac5qk+H0eSVPcsO5Kk7RaWlRC+9iTx5x4m\ntnkjAF8278iDu57Ia10OpWVWBif2zOLEXi3o1iI14rSSpKbGsiNJ+t7Coo2UPPsIya89TmpFKTFg\nScsePNB3KDM7H8ChXVtwY68WDHCxAUlShCw7kqRtFlZXse7he8h6+SEyaioB+Ljt7jy8+ymk7DOA\nId1bcE2nTDJSfOinJCl6lh1J0jYJ582k9La/0Hbd1wBM77Avnxx6GrsefADXdW5OpgVHklTPWHYk\nSd8pLNxAeP/fCd9/jWbA8qxOvPOTSzntp4M53IUGJEn1mGVHkvSNwnic8PWnCB++FcpKqEhK5Z7d\nhhGc+Asu2b8DMZeMliTVc5YdSdJWwspyWLqAxIM3wbLFAEzP3Zu//eg8Thu4O2fu3irihJIkbRvL\njiQ1YWF5KSxfSrj8U/hice1/v14BiQQARc3bMGGPEbzf6QD+dEguP+nZIuLEkiRtO8uOJDUxYRgS\nvvks4fMPw+ovIQy3HhBLItF1F95q9yOu6XQCYbMMbjq8Awd3zIwkryRJ28uyI0lNRCIMWbtiFSl3\nT6DNp7MAqIkls6ZNV75suwvL2/ZkWaueLMvuyoZEMpsqE7RMS+LWIzvSr216xOklSfr+LDuS1Eit\nKKpi7rpylhZWsrSggj4fv8JFcx+keU05m1Kb8/f+I3iz00FUJ6VsfWA5QIIuWSnccmRHurVIjSK+\nJEk/mGVHkhqRkqo4r39ZwnPLilhYUPvQz/ZlG/jDx3dx0Lp5AMzvOYA5Qy/jsM65HJMSIzUpRmos\nIDXpX2//ej8nI5nkmCuuSZIaLsuOJNVj5dUJNlYH1CTCby0eYRgyZ10Fzy0r4s2VJVTEa+/BaZ4c\ncGnB+xz//r2kVpaRaJ5N0sgr+dFhx7C3y0ZLkpoAy44k1VMz15Tym3fXUlbTgtgXy2iTnkRORjLt\nM5Jp96//VidCXlpezKri6i3H7de+GcM6BRz51HXEPvln7cYDB5F8we8IWrWN6E8jSdLOZ9mRpHro\n7a9KuOr9PKoTIZlJCcriMdaXx1lfHmfRvy5P+3c5Gcmc2DOLE3q1oEv5BhITLoFVyyErm+D8KwkO\nO4bAszmSpCbGsiNJ9czLyzczbkY+8RBO79uSI1jJ3vvuS0F5DfllNawrqyG/tIZ15TWUVSc4vEtz\nDu6QQVIsIFy2iMSE0bCpALr2IvbHWwjadYj6jyRJUiQsO5JUjzyxdBPXfbQegF/u2ZqL+rfm449X\nkhILyM1MITcz5VuPDT96h8Tfx0JlBex1ALErbyDIzNpZ0SVJqncsO5JURwrKa/hgbRmz8sponZ7M\nMd2z6NMq9VsvJ3tg4UZu/qQAgNH7tGFEv9bb/LkSL00hvO8GCEOCwScRXPB7gpRvL0aSGqcwDKmq\nqiL8vw8L3om6detGRUVFZJ9fDUtqaiqxWKzOXr/RlZ3bb7+d66+/nry8PPr168ekSZM49NBDo44l\nqQmoSYQs3FDBP1eX8s81ZSzZuPW9Nf9YVEiPFikc0yOLY7pn0fVfz68Jw5Db5hZw38JCAmDsge04\ntU/LbfqcYTxO+MCNhC9NASAYfhHBqb/0/hypCUokElRWVpKamkpSUlJkOdLTfQixtk0YhlRUVJCW\nllZnhadRlZ3HH3+cMWPGcMcdd3DooYdy2223ceyxx7J48WK6dOkSdTypUQjDkIKKOPllNezSMpW0\npLr7bcy/K6qM88bKEt5fXUrHzGRO3iWbXVun7bDX31QZZ31ZDW2bJdMyLfZfy0I8EbK2tIblRZWs\nKKpmUUEFM9eWUVyV2DImNRawX24zBnTI4OviaqauLGHF5mrumLeRO+ZtZI82aRzTI4uvNlfzxGdF\nJAXwp//X3p3HR1Xd/x9/3TuTZCZhkrAkrAIBCRBQQZBVDFFUxAVFBEEQ3FgqiuJXvxWpBdQAfsXd\nKFqrPEpRKb+KtkWBVhCoaKECCpStLEEhLJKdJLPd3x+TjAxhCRAcMryfD+7jTs7c5TM3d8L53HPu\nuT3qc2OL+BPu1/L74UgRFORCQR7+j2fDN0vBHoXx0GTM9H7VdkxEpGZxu904HA5d7JAawzAMHA4H\nZWVl5yxJNqxwtnNWs65du9KhQwdmzZoVLEtNTWXgwIFkZmYCkJ+fH3wvISGhStt1+/yszilh2Q/F\n7M53U9tho47DRj2n/ee500Y9h406TjtR58FD+Eq9fr7ed4Rle4rZke/m0noOujWKpVN9J077L1M5\njWR+yyKvzMdPJT5+KvFyqNRHkdtP3E87uLnn5eEODwCPz2LVvmKK3H6uahJHrejTu8rn8VvszHez\nu8DNrnxPYF7gZneBhyJPoELf1BXF81c1rNak42ilXj8rfixm4Y5CVu4txusPfb9tnRhuvTieG1Jc\nuKr4+Xx+i+xCD1tzy46a3Bw44g0uE1P+QM0GsXbqxwWGeE6OtZNX5mNnvpsd+YHjUOar/OezqSuK\nno3j6HGc75vHb/GvfUf4bFchy3YXUObxYfP7cPjcJHkKebK1jY4xJVj5hyH/MOT9hJWfS9GPe6hl\neaEwDwrzwX/MgagVj/nrmRjtO1f94MoFb82aNXTurHMmkpSWlqpVRWqkU527Z1J/rxAxyY7b7SYu\nLo4PP/yQ22+/PVg+btw4NmzYwLJly4DQgzV3Wwlt6jpoXddBg7goDDNwNdfy+SgocfPVnnxWZRfw\n772FeDxebH4fdsuHafkxLT82y4+BFZhbgbmJRUKMSd2YQOJTJ8akjtNGnRgbdZ026teKweWwg2kD\nwwjMTfOo6ehy4+efjfL3MQLlFWUGgbnfT8GRMr7eU8CqHwpYt7cQr9eL3e/DRqBiZGFgMw3a1o2h\nY3IslyXH0jwhGiOYnFVs1wi8Li/iOFeILMvC47dw+8Dj8+P2W3i8FXMLj2VR6vVRWOolv8xLQamX\nwlIvBWUeispfW5aFw27gNMFhM3DYIMYEp80gxmZgNwIPUbQbBCdb+eS3LNxeP26vD7fPj8frC+zf\n58eyLC6uG8fljVwkxsWA3Q72KLDZA69t9qNe235+bZb/DGD5wW+B5afM4+WbvcUs31PIrrwy8o64\nKSz1YPh85eeBD3v5OeE3TFKTYumTkkivpvE4oqN+3o9plv/OzPLfoQmGcdwrcF6fnx8Kyvhvbik7\ncsvwGQYd6sdxWXIszqgTJ6uWZbHpcBl/3Z7P4p0FgTixiLLbuSYlnttaJXJZ0omv+vn8Ft8eKGHR\nrkL+vquQojIvdsuH3e8l6qipts2H0/Bz0G3gj4rmvk4NublNEkaMA+M0uk5YloXPCnT/qph7/Rbb\n89x8trOQf2QXUVLmIcrvwWF56VrHRu+G0ezMK+PLH4op9AT+fEXZDHo0jOO65i4uSYqhzONnf7Gb\nA0VuDh7xcLDYw6FiDwePuMkpKMXvDXwOu99XPvcSa/qpa7c4UubB4w39nlfM7X4fduvn4xBv+qhr\nt6hj91Pb5ifZdOP0lUFpCZSVQMmRwLy0FLwe8PnA7w3Mz+ZPb2wtcCVCfCJGUkOMoWMxmqSc+fbk\ngqRkJ/Io2ZGaSslOFezdu5cmTZqwfPnykHt0pk6dyty5c9m8eTMQerBqjej9S4cpUolVnrhaloVp\n+U+6rB8Df3nSZNjtmKaJYbPh9/vxeb1YPh+mP5B8HY/XMPGbNgybDbvdHkhMLAufz4fP68Py+zH9\n5UkcZ/inwW6HaAdERRFMmivit6DU58ft9XN0hMYxf4ZMy0+030u0z33mcZzvKi5u2GyBZDyhNiTU\nhYTaGIl1IKEOJNTFSKjNlpwDtL6iG7gSoFaCBh6QaqFkJ/Io2ZGa6lwmOxF1z87p8pq28kqWhe2o\nypYfA69pwyqfTFugQhn42cQqb2UJVlLLr9JbhoFlmIEr1BZ4LSMwYeC1wOcPXLk2LD9mecXWLG8N\nCrYUnajFqLysolIY+JnAtrDwGyZew4ZlK6/IHhMzBCqUfgvc/p+nilzXgMAoTlj83M5jVaqEHs0I\neWFgAJZRUW6UNxAFjo1hGpiGgWEGWjLM8tapwKcqr8Rj4g++NrCMQGtUxfsVr4MRmwYGP2/TMMAs\n32aR20+Zp7zVpfwqfCxeauElGh+Gz4fhD0ym34dRUcn3+wL7NwL78wd/r4H4TcMIHGPTDBxXwyw/\nxrRzX7UAACAASURBVBUJix+3N9DKZfn92P1ebJafKCvQKkj578ywAsfWrDjGlo9j21oCx6Cile3n\nlkPT7wN84PMElzXLp6NZhoFllrey+APnkN3yB05EnwfcPy9rK5+OZRkGls2OZbPjt9kCr82KuYnh\n9+F1e/G53cT43Dh8bvB6wVt03HPGBGLLp6oKxBCF327Hskfht9kD59XR31kLyvxQ5jewrMD34ehz\nzSyf2wwDm73iu2HHsgW+M0d/Jsu0hX6vj/7Om+XL2+z4bfbg6+AxiorGF+3AHxWNPzomMEWVT/ao\n8u2bP7fyVVWz2vz7QC4cyD2NIydyamvWrAl3CFKNmjVrpmRHaqTCwkI2bNhwwvdbtWp1xtuOmGSn\nXr162Gw29u/fH1K+f/9+GjY8/gP1Yv4c+CNvWRY5R7xs/qmM7bllNImP5srGsVW+B+B0WJbFoRIf\nuwvdZBcE7oPYXeAhu9BDidcPFoEKf3lFzm8F6nSGAXFRZuhkN4mLNqkVZdIqMZorG8eREHN6XYh2\nFnjIK/WVJxEW5f+wyucG4LAbOOwmTruBw1Y+t5vYz4N7k06m0O1j2Z5iFu0q5Jt9R/CeZgPBZUkO\nrmlai2ua1qJRrapdST/6Sum23DI+3l7A33YUUOA+fktLLbtB/Vgb9R0mzRNjaJkYQ8vagfnx7rEp\nLPWwLqeIb3OKWZdTzI7DJYFEzWajexMXfS9OoFtjV6DV5phRTSzLwuv1sjK7gL9szWXN3iJMy4dl\nmNRx2undLJ5rmyfQJskZaPExbVW+yXV3gZuxy/ex9XAZcXh57BIXtzRzsmrfEf7ftny+OxgYgtQ0\noEejWAamJtK6Tgy28gQSCG0EMkyIioboaAxb1f5M1SLwvSlw+0mIPvUAAzWJrsDLuaDzKvJouGep\nqVwu10n/Hh3dsnO6IqYbG0C3bt247LLLKg1QcMcdd/Dcc88BZ9cMJjVXXpmPL7KLWLK7iJxiD1E2\ngyjTwG4G5oHX4LCZdG7gJOOiWiTHnv61gONVHkq9fpbtKWb/ES9JThvJsXaSYu0kO+0nvf+mKgrd\nPrblurk4MZr400h0AfYVe/jnj0donhDF5cnOn5OOM1Tm8zNzzSH+tDXwHUuMMckrCyR5cVEmt14c\nz5DWiTR2qQvW6VKlVM4FnVeRR93Y5HyxcOFCVq9ezW9/+9sqLa9ubFU0YcIEhg8fTpcuXejRowdv\nvfUWOTk5jBkzJtyhSZglxtgY0CqBAa1++QTXYTfpm3JunmLvirZxeX3nGa3bMC6KganVdzxibCYT\nuybTub6TqV8fIK/MT+Nadoa0SaR/y/jTHg1OREREaqaFCxeSlZVV5WTnXIqoZGfQoEH89NNPPPvs\ns+zbt49LLrmEhQsX6hk7Ir+g65q7uDTJwa4CD1fUd2I7z7s7ioiInE+Ki4uJi4sLdxhn7XzpTh5x\nD1wZO3YsO3fupLS0lNWrV4eMzCYiv4wGcVF0axirREdERM7a5MmTMU2TzZs3M2zYMBITE0lKSuKp\np54CYM+ePfTv35+EhAQaNGjACy+8ELJ+WVkZU6ZMoVWrVjgcDpo0acKECRMoKSkJWe7999+nT58+\nNGzYEIfDQWpqKtOnT+fYOz62b9/OoEGDaNSoEQ6Hg8aNGzNw4EBycnIA2LVrF6ZpMnv27EqfxTRN\npkyZUumzbdy4keHDh1OnTh0uueSS4PuLFy8mPT0dl8uFy+XihhtuYP369SHbHDlyJE6nkz179nDT\nTTfhcrlo3Lgxr776KgDfffcdV199NbVq1aJZs2bMmTOnUlz5+flMmDCBpk2bEhMTQ8uWLXn22Wfx\nH/Vct4rPNWPGDN555x1atmyJw+GgS5cuIYOdjBw5kqysrMAos6YZnLKzs4/z2z33IqplR0REREQi\n05AhQ2jbti0zZszgb3/7G9OmTSMhIYHf/e539OnTh+eff545c+bwxBNP0KlTJzIyMrAsi9tuu43l\ny5czatQo0tLS2LRpE1lZWWzcuJFFixYFt5+VlUVaWho33XQTDoeDv//970ycOJH8/HymTZsGgMfj\n4frrr6esrIxx48bRsGFD9u7dy6JFi9i3bx8NGjQIbu9ELRvHKx88eDAtWrQgMzMTtzswXOrcuXMZ\nPnw41113HdOnT6e0tJS3336bXr16sXr1alq3bh1c3+/3069fP6688kpeeOEF5syZwyOPPILT6eS3\nv/0tw4cPZ+DAgbz55puMHDmS7t2707JlSwBKSkrIyMggOzubMWPG0Lx5c7755hsmT57M7t27eeed\nd0Ji/eijjygqKmLs2LEAPP/88wwYMIAdO3Zgt9sZM2YM+/btY8mSJSGJVb169U7r911dlOyIiIiI\nXIA6/mHbOd3+2uFnPlzw8XTu3DlY8X7ggQdo3rw5v/71r3nuued48sknAbjzzjtp1KgRv//978nI\nyOCDDz5g0aJFLFu2jF69eoVsa9iwYSxZsoRrr70WgOXLl4fcJD9mzBhGjx7N66+/ztSpU4mKimLT\npk3s3LmT+fPnM2DAgOCyFa1MZ6pt27b86U9/Cv5cXFzMuHHjuOeee/jd734XLL/vvvto3bo1U6dO\n5Y9//GOw3OPxcOeddwbjqDgOo0eP5o9//CNDhgwBoE+fPrRp04b333+fZ555BoCXXnqJLVu2sHbt\nWlJTUwG4//77SUlJYdKkSTz++OPBcoAffviBbdu2BQcKaN26Nf3792fRokXceOONdOvWjVatWrFk\nyRKGDh16VselOkRcNzYRERERiTz3339/8LVpmnTq1AnDMLjvvvuC5QkJCbRu3ZqdO3cCMG/ePFJT\nU0lLS+PQoUPB6aqrrsIwDJYuXRpctyLR8fl85ObmBpcrLi4OPpw+Pj4egM8//5wjR45U22eraCWp\nsGTJEvLy8hgyZEhI3F6vlyuvvDIk7gpHH5+EhARSU1OJjY0NJjoQGKU4MTExeHwgcIx69epF3bp1\nQ/Z1zTXXALBs2bKQ/dx+++0hI6JV3DJy9DbPJ2rZEREREbkAVXfLy7nWtGnTkJ8TEhKIiooiOTk5\npDw+Pp6DBw8CsHXrVrZs2UJSUlKl7RmGEVwOYOXKlUycOJF//etfwa5kFSqGPk5JSWHChAm8+OKL\nzJkzh549e3LzzTczbNgw6tSpc8afraJLWYWtW7cCBFudjmWzhY5wGh0dTf369UPKEhISaNy4caV1\n4+Pjyc39+SHVW7du5bvvvqvSMYLKv4fatWsDhGzzfKJkR0RERETOe8dW8OHE98VUDCrg9/tp164d\nr7zyynGXa9SoEQA7duwIdvF6+eWXadq0KQ6Hg3//+9/87//+b8iN+i+88AL33nsvn376KYsXL+ax\nxx7j2Wef5csvv6Rt27YnjMnn853wszmdoY+RqNjf7Nmzj5uwHOtE+zzeMQNCBl2wLItrrrkm2BXw\nWCkpKae9zfOJkh0RERERiUgtW7bk22+/5eqrrz7pcp9++ilut5u//OUvIY8s+e9//3vc5dPS0khL\nS+PXv/4133//PZ06deKll17i7bffDrZ05OXlhayze/fuKsd98cUXA4Gb+k8V+9lq2bIlBQUF1bqf\n82XYadA9OyIiIiJSQ52qUn3nnXeyf/9+3nzzzUrvlZWVUVRUBPzcWnF0C05ZWRmvv/56yDqFhYV4\nvd6QsjZt2uBwOIJd3eLj46lXrx5ffvllyHJZWVlV/FRw/fXXk5iYSGZmJh6Pp9L7x3YtO5vkYvDg\nwaxevZrPPvus0nuFhYWVuvRVRcVzgo5N+MJBLTsiIiIiUiOdqOtURfmwYcOYP38+Dz74IF9++SU9\ne/bEsiy2bNnCn/70J+bPn89VV11F3759iY6O5qabbmL06NGUlpbyhz/8oVKXrX/84x88+OCD3HHH\nHaSmpmJZFh999BHFxcUMHjw4uNz999/P9OnTeeCBB+jUqRPLly9n27aqj37ncrl46623uOuuu+jY\nsSNDhgwhOTmZ7OxsPv/8c9q3b897771X5eNwMo8//jh/+ctf6N+/PyNGjODyyy+npKSEDRs2MH/+\nfDZs2FDpPp1TueKKKwAYN24cffv2xW63c8sttxAbG3ta26kOSnZERERE5LxlGMZxWy6qUm4YBn/+\n8595+eWXmT17Np988glOp5OWLVvy4IMPBh/g2apVKxYsWMDEiRN54oknSEpK4u677yY9PZ3rr78+\nuO0OHTrQr18/Fi5cyDvvvIPD4aB9+/YsWLCAm2++Objc008/zcGDB5k/fz7z5s2jX79+fPbZZ5UG\nUzjRZwCCDy7NzMxk5syZlJaW0rhxY3r27MmYMWPO6vgczeFwsGzZMqZNm8a8efP4wx/+gMvlIjU1\nlaeffrrSwAdVMWDAAB555BE++OADPvjgAyAwWtvpJk3VwbDO17uJzpGKJkYgZNg8keqwZs0aOnfu\nHO4wJMLovJJzQedV5CktLQ15ToxITXGqc/ds6u+6Z0dERERERCKSkh0REREREYlISnZERERERCQi\nKdkREREREZGIpGRHREREREQikpIdERERERGJSEp2REREREQkIinZERERERGRiKRkR0REREREIpKS\nHRERERERiUhKdkREREREJCIp2RERERERkYikZEdEREREzntr166lV69euFwuTNPk1ltvxTRDq7K9\ne/cmIyMjTBHK+cge7gBERERERE7G7/czePBgAF588UXi4uL417/+hWEYIcsZhhFSVlJSwowZM8jI\nyCA9Pf0XjVnOD0p2REREROS8tnfvXrZv384rr7zCAw88AMDgwYN5/vnnQ5azLCsk2SkuLmbq1KmY\npqlk5wKlbmwiIiIicl47cOAAAPHx8cEym81GdHR0lda3LKta43G73fh8vmrdppwbSnZERERE5Lw1\ncuRIOnfuDMA999yDaZpkZGQwefLkSvfsHG3Xrl0kJycDMGXKFEzTxDRN7rnnnuAy+/bt4/7776dB\ngwY4HA7S0tJ46623QrazbNkyTNNk7ty5TJ48maZNmxIbG8uPP/54Dj6tVDd1YxMRERGR89aYMWO4\n+OKLefrppxk9ejS9evWifv36rFix4qTrJScn8+abbzJ27FgGDBjAgAEDAGjZsiUQaC3q1q0blmUx\nbtw4kpOT+fvf/86vfvUrfvrpJ5566qmQ7WVmZmKz2Xj00UexLIu4uLhz84GlWinZEREREbkA+W7t\neE63b1uwtlq2061bN+x2O08//TTdu3dn6NChAKdMdmJjY7n99tsZO3Ysl156aXC9CpMmTcLj8fD9\n999Tt25dAEaNGsWoUaPIzMxk3LhxJCQkBJcvKiriP//5D06ns1o+l/wy1I1NRERERC4olmUxf/58\nbrzxRizL4tChQ8Hp2muvpaSkhG+++SZknbvvvluJTg2klh0RERGRC1B1tbzURAcPHiQvL493332X\nd999t9L7hmFw8ODBkLKK7m9SsyjZEREREZELit/vB2Do0KHce++9x10mLS0t5Ge16tRMSnZERERE\nJCId+9DRCklJSbhcLjweD1dfffUvHJX8knTPjoiIiIhEpNjYWAAOHz4cUm6z2Rg4cCALFizgu+++\nq7TesV3YpOZSy46IiIiIRIyjHyDqdDpp164dH374IampqdSpU4cWLVrQpUsXpk+fzrJly+jevTsP\nPPAAaWlp5Obmsm7dOhYsWEBJSUkYP4VUFyU7IiIiInLeO7ZLmmEYVSp79913efjhh3nssccoKytj\n5MiRdOnShaSkJL755hueeeYZFixYwJtvvkmdOnVIS0vjxRdfPOm+peYwrKPT3wtAfn5+8PXRY6eL\nVIc1a9YEn/IsUl10Xsm5oPMq8pSWluJwOMIdhshpO9W5ezb1d92zIyIiIiIiEUnJjoiIiIiIRCQl\nOyIiIiIiEpGU7IiIiIiISERSsiMiIiIiIhFJyY6IiIiIiEQkJTsiIiIiEeICe6KIRIBzfc4q2RER\nERGJANHR0ZSWluLz+cIdikiVWJZFaWkp0dHR52wf9nO2ZRERERH5xZimicPhwO124/F4whZHYWEh\n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\n8tprr2mIYDkrt956K9OnTyclJYW0tDTWrl3LSy+9xIgRI8IdmtQgxcXFbNu2DQh0ud29ezfr1q2j\nbt26XHTRRTzyyCNkZmbSpk0bWrVqxbPPPovL5WLo0KEn37B1gcnKyrKaN29uxcTEWJ07d7ZWrFgR\n7pCkBjMMwzJN0zIMI2SaMmVKuEOTCNO7d2/roYceCncYEgH+9re/WZdddpnlcDis1q1bW6+99lq4\nQ5IarqioyHrssces5s2bW06n02rRooX11FNPWWVlZeEOTWqQpUuXButRR9et7rnnnuAykydPtho2\nbGg5HA6rd+/e1saNG0+53QvqOTsiIiIiInLhuGDu2RERERERkQuLkh0REREREYlISnZERERERCQi\nKdkREREREZGIpGRHREREREQikpIdERERERGJSEp2REREREQkIinZERGRatG7d28yMjLCHUYlP/74\nI06nk6VLl4YthjfeeINmzZrhdrvDFoOIyIVIyY6IiFTZV199xZQpU8jPz6/0nmEYGIYRhqhObsqU\nKXTo0CGsidh9991HWVkZs2bNClsMIiIXIiU7IiJSZSdLdpYsWcLixYvDENWJHTx4kNmzZzNmzJiw\nxuFwOBgxYgQzZ87EsqywxiIiciFRsiMiIqfteBV2u92O3W4PQzQnNmfOHABuu+22MEcCgwcPJjs7\nmy+++CLcoYiIXDCU7IiISJVMnjyZJ554AoCUlBRM08Q0TZYvXw5Uvmdn165dmKbJjBkzyMrKokWL\nFsTFxdGnTx+ys7Px+/0888wzNGnShNjYWPr3789PP/1Uab+LFy8mPT0dl8uFy+XihhtuYP369VWK\necGCBVxxxRXEx8eHlO/fv5/777+fiy66CIfDQYMGDejXrx+bNm06o31v3bqVIUOGkJycjNPpJDU1\nlUcffTRkmcsvv5w6derw8ccfVyl2ERE5e+fXJTgRETlv3X777Wzbto0PPviAl19+mXr16gHQtm3b\n4DLHu2fnww8/pKysjIcffpjDhw/z/PPPc8cdd9C7d29WrFjBk08+yfbt23n11VeZMGECs2fPDq47\nd+5chg8fznXXXcf06dMpLS3l7bffplevXqxevZrWrVufMF6Px8Pq1asZNWpUpfcGDhzIhg0beOih\nh0hJSeHAgQMsX76cbdu2kZaWdlr73rhxIz179sRutzNq1ChatGjBzp07mTdvHi+99FLIfi+//HL+\n+c9/nsZRFxGRs2KJiIhU0f/93/9ZhmFYu3fvrvReenq6lZGREfx5586dlmEYVlJSkpWfnx8snzhx\nomUYhnXJJZdYXq83WD506FArOjraKi0ttSzLsoqKiqzatWtb9913X8h+cnNzreTkZGvo0KEnjXX7\n9u2WYRjWK6+8Uml9wzCsmTNnnnDd09l3enq65XK5rF27dp00HsuyrFGjRlkxMTGnXE5ERKqHurGJ\niMg5dfvtt4d0I+vSpQsAw4YNw2azhZR7PB727NkDBAY8yMvLY8iQIRw6dCg4eb1errzyylMOJV3R\nJa527doh5U6nk+joaJYuXUpubu5x163qvg8ePMjy5csZOXIkzZo1O+WxqF27Nm63m6KiolMuKyIi\nZ0/d2ERE5Jxq2rRpyM8JCQkAXHTRRcctr0hAtm7dCsC111573O0enSidjHXMYAoxMTHMmDGD//mf\n/6F+/fp07dqVfv36MXz4cJo0aXJa+96xYwcA7du3P61YzschukVEIpGSHREROadOlJScqLwiIfD7\n/QDMnj2bxo0bn/Z+K+4pOl7rzfjx4+nfvz+ffPIJS5Ys4ZlnniEzM5O//vWvpKenn/W+TyQ3N5eY\nmBji4uKqbZsiInJiSnZERKTKfskWiZYtWwKBpOXqq68+7fWbNm1KbGwsO3fuPO77zZs3Z/z48Ywf\nP54ff/yRDh068Nxzz5Genl7lfVcs9/3331cppp07d4YM6CAiIueW7tkREZEqq2iROHz48DnfV9++\nfUlMTCQzMxOPx1Pp/UOHDp10fbvdTteuXVm9enVIeUlJCSUlJSFljRs3JikpKfiw1Ouvv/6k+z54\n8CAQSIbS09N5//332bVrV8gyx3afA/j222/p0aPHSeMWEZHqo5YdERGpsiuuuAKAJ598kiFDhhAd\nHc0111xDUlIScPwK/plyuVy89dZb3HXXXXTs2DH4HJvs7Gw+//xz2rdvz3vvvXfSbfTv35/HH3+c\n/Pz84D1BW7Zs4eqrr2bQoEGkpaURExPDwoUL2bx5MzNnzgQgPj6+yvt+7bXXuPLKK+nUqROjR48m\nJSWF7OxsPvroo+C9PwD//ve/yc3N5dZbb622YyQiIienZEdERKqsU6dOTJs2jaysLO69914sy2Lp\n0qUkJSVhGEaVu7mdaLljywcNGkSjRo3IzMxk5syZlJaW0rhxY3r27MmYMWNOuZ+77rqLJ554go8/\n/piRI0cCge5tw4YN4x//+Adz587FMAxat27N73//++Ayp7Pv9u3b8/XXX/Ob3/yGWbNmUVJSW3bM\nGgAAAL1JREFUQtOmTbnllltCYpk3bx5NmzalT58+VTpGIiJy9gyrOi/DiYiInGfGjBnD+vXrWbVq\nVdhiKC0tpXnz5kycOJGHH344bHGIiFxodM+OiIhEtKeffpr169ef8rk859K7776Lw+Fg7NixYYtB\nRORCpJYdERERERGJSGrZERERERGRiKRkR0REREREIpKSHRERERERiUhKdkREREREJCIp2RERERER\nkYikZEdERERERCKSkh0REREREYlI/x9mhmfvw4Nt/QAAAABJRU5ErkJggg==\n", + "text": [ + "" + ] + } + ], + "prompt_number": 40 + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The performance of this filter is markedly better than the constant velocity filter. The constant velocity filter took roughly 10 seconds to reacquire the signal after the start of the manuever. The adaptive filter takes under a second to do the same. " + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + }, + { + "cell_type": "code", + "collapsed": false, + "input": [], + "language": "python", + "metadata": {}, + "outputs": [], + "prompt_number": 16 + } + ], + "metadata": {} + } + ] +} \ No newline at end of file diff --git a/README.md b/README.md index e3bb1a2..75d7c81 100644 --- a/README.md +++ b/README.md @@ -160,6 +160,10 @@ Kalman filters are recursive, and thus very suitable for real time filtering. Ho +* [**Chapter 15: Adaptive Filtering**](http://nbviewer.ipython.org/urls/raw.github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python/master/15_Adaptive_Filtering/Adaptive_Filtering.ipynb) + +Kalman filters assume a single process model, but manuevering targets typically need to be described by several different process models. Adaptive filtering uses several techniques to allow the Kalman filter to adapt to the changing behavior of the target. + * [**Chapter XX: Numerical Stability**](not implemented) Not written yet. diff --git a/report.tplx b/report.tplx index cf0332e..746dc1a 100644 --- a/report.tplx +++ b/report.tplx @@ -18,5 +18,5 @@ %((* endblock predoc *)) ((* block docclass *)) -\documentclass[20pt]{book} +\documentclass[4pt]{book} ((* endblock docclass *)) diff --git a/table_of_contents.ipynb b/table_of_contents.ipynb index ec4d8d0..d57a4d8 100644 --- a/table_of_contents.ipynb +++ b/table_of_contents.ipynb @@ -92,8 +92,14 @@ "\n", "\n", "[**Chapter 14: Smoothing**](http://nbviewer.ipython.org/urls/raw.github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python/master/14_Smoothing/Smoothing.ipynb)\n", - " \n", + "\n", "Kalman filters are recursive, and thus very suitable for real time filtering. However, they work well for post-processing data. We discuss some common approaches.\n", + "\n", + "\n", + "[**Chapter 15: Adaptive Filtering**](http://nbviewer.ipython.org/urls/raw.github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python/master/15_Adaptive_Filtering/Adaptive_Filtering.ipynb)\n", + " \n", + "Kalman filters assume a single process model, but manuevering targets typically need to be described by several different process models. Adaptive filtering uses several techniques to allow the Kalman filter to adapt to the changing behavior of the target.\n", + "\n", " \n", "[**Chapter XX: Numerical Stability**](not implemented)\n", "\n", @@ -108,9 +114,6 @@ "*This is not implemented, and I have not decided if I want to make it part of this book or not.*\n", " \n", "\n", - "[**Chapter XX: Multihypothesis Tracking**](not implemented)\n", - " \n", - "*Not implemented yet.*\n", "\n", "\n", "[**Appendix: Installation, Python, NumPy, and filterpy**](http://nbviewer.ipython.org/urls/raw.github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python/master/Appendix_A_Installation/Appendix_Installation.ipynb)\n",