{ "cells": [ { "cell_type": "markdown", "id": "489ba1ac", "metadata": {}, "source": [ "# Event detection\n", "\n", "When integrating systems of ODEs, the need often arises to detect the occurrence of specific\n", "conditions (or *events*) in the state of the system. Many real systems, for instance, are described by equations\n", "that change discontinuously in response to particular conditions\n", "(e.g., a spacecraft entering the cone of shadow of a planet,\n", "or a thermostat switching on once the temperature reaches a certain level). In other situations,\n", "detection of specific system states may suffice (e.g., in the computation of\n", "[Poincaré sections](https://en.wikipedia.org/wiki/Poincar%C3%A9_map)).\n", "\n", "An event in a system of ODEs can be defined by an *event equation* of the form \n", "\n", "$$\n", "g\\left( t, \\boldsymbol{x} \\left( t \\right) \\right) = 0,\n", "$$\n", "\n", "where, as usual, $t$ is the independent variable (time) and $\\boldsymbol{x} \\left( t \\right)$ the state vector of the system.\n", "As a concrete example, the collision between two spheres of radius 1 moving in a three-dimensional space can be described\n", "by the event equation\n", "\n", "$$\n", "\\left( x_1 - x_0 \\right)^2 + \\left( y_1 - y_0 \\right)^2 + \\left( z_1 - z_0 \\right)^2 - 4 = 0,\n", "$$\n", "\n", "where $\\left( x_0, y_0, z_0 \\right)$ and $\\left( x_1, y_1, z_1 \\right)$ are the Cartesian coordinates\n", "of the spheres' centres.\n", "\n", "heyoka.py features a flexible and accurate event detection framework in which the [expression system](<./The expression system.ipynb>)\n", "can be used to formulate arbitrary event equations. The event equations are then added to the ODE system and\n", "integrated together with the other equations, so that, at every timestep, a Taylor series expansion of the event equations\n", "in powers of time is available. Polynomial root finding techniques are then employed\n", "on the Taylor series of the event equations to accurately locate the time of occurrence of an event within the timestep.\n", "\n", "Like many other ODE integration libraries, heyoka.py makes a fundamental distinction between two types of events, *terminal* and *non-terminal*.\n", "We will begin with non-terminal events, as they are conceptually simpler.\n", "\n", "## Non-terminal events\n", "\n", "Non-terminal events are events that do not modify the state of an ODE system. That is, the occurrence of a non-terminal event does not\n", "change the system's dynamics and it does not alter the state vector of the system. A typical use of non-terminal events is to detect and log\n", "when the system reaches a particular state of interest (e.g., flagging close encounters between celestial bodies, detecting when\n", "a velocity or coordinate is zero, etc.).\n", "\n", "As an initial example, we will turn to our good ole friend, the simple pendulum:\n", "\n", "$$\n", "\\begin{cases}\n", "x^\\prime = v \\\\\n", "v^\\prime = -9.8 \\sin x\n", "\\end{cases}.\n", "$$\n", "\n", "Our goal will be to detect when the bob reaches the point of maximum amplitude, which corresponds to the angular velocity\n", "$v$ going to zero. In other words, out (very simple) event equation is\n", "\n", "$$\n", "v = 0.\n", "$$\n", "\n", "We begin, as usual, with the definition of the symbolic variables:" ] }, { "cell_type": "code", "execution_count": 1, "id": "9b98f7e1", "metadata": {}, "outputs": [], "source": [ "import heyoka as hy\n", "\n", "x, v = hy.make_vars(\"x\", \"v\")" ] }, { "cell_type": "markdown", "id": "384fdfe3", "metadata": {}, "source": [ "Next, we create a list into which we will log the times at which $v = 0$:" ] }, { "cell_type": "code", "execution_count": 2, "id": "5c75ac89", "metadata": {}, "outputs": [], "source": [ "zero_vel_times = []" ] }, { "cell_type": "markdown", "id": "89e84aed", "metadata": {}, "source": [ "We can now proceed to create a non-terminal event:" ] }, { "cell_type": "code", "execution_count": 3, "id": "796e8baf", "metadata": {}, "outputs": [], "source": [ "# Define a callback for the event.\n", "def cb(ta, time, d_sgn):\n", " # Compute the state of the system when the\n", " # event triggered and print the value of x.\n", " ta.update_d_output(time)\n", " print(\"Value of x when v is zero: {}\".format(ta.d_output[0]))\n", "\n", " # Add the event time to zero_vel_times.\n", " zero_vel_times.append(time)\n", "\n", "\n", "ev = hy.nt_event(\n", " # The left-hand side of the event equation\n", " v,\n", " # The callback.\n", " callback=cb,\n", ")" ] }, { "cell_type": "markdown", "id": "a14dc1b6", "metadata": {}, "source": [ "Non-terminal events are represented in heyoka.py by the ``nt_event`` class. The first mandatory argument for the construction of a non-terminal event is the left-hand\n", "side of the event equation, which in this case is simply $v$.\n", "The second mandatory construction argument is a callback function that will be invoked when the event is detected.\n", "The callback function can be a lambda, a regular function, or a function object - the only requirement is that the\n", "callback is a callable object. The callback will be invoked with a reference to the integrator object as first argument, \n", "the absolute time at which the event was detected (i.e., the trigger time) as second argument, and the sign of the derivative\n", "of the event equation at the trigger time as third argument (-1 for negative derivative, 1 for positive derivative and 0 for\n", "zero derivative).\n", "\n", "```{note}\n", "\n", "Callbacks are always {func}`deep-copied ` when an event object is created or copied. This behaviour\n", "is meant to help preventing data races in stateful callbacks during multi-threaded {ref}`ensemble propagations`.\n", "You can disable the deep-copying behaviour by providing a custom implementation of the ``__deepcopy__`` method\n", "for the callback, as explained in the documentation of the {mod}`copy` module.\n", "```\n", "\n", "Because non-terminal event detection is performed at the end of an integration step,\n", "when the callback is invoked the state and time of the integrator object are those *at the end* of the integration\n", "step in which the event was detected. This bears repeating, as it is often a source of confusion\n", "and bugs when implementing callbacks for non-terminal events:\n", "\n", "```{warning}\n", "\n", "When the callback of a non-terminal event is invoked, the state and time\n", "of the integrator object are those *at the end* of the integration\n", "step in which the event was detected.\n", "```\n", "\n", "When integrating an ODE system with events, the ``taylor_adaptive``\n", "class ensures that the Taylor coefficients are always kept up to date (as explained in the tutorial about\n", "[dense output](<./Dense output.ipynb>)), and thus in the callback function it is always possible to use the ``update_d_output()``\n", "function to compute the dense output at any time within the last timestep that was taken (including the event\n", "trigger time).\n", "\n", "In this example, we perform two actions in the callback ``cb``:\n", "\n", "- first, we compute the dense output at the event trigger time and print\n", " the value of the ``x`` coordinate,\n", "- second, we append to ``zero_vel_times`` the trigger time.\n", "\n", "We are now ready to create our first event-detecting integrator:" ] }, { "cell_type": "code", "execution_count": 4, "id": "3fbec49b", "metadata": {}, "outputs": [], "source": [ "ta = hy.taylor_adaptive(\n", " # Definition of the ODE system:\n", " # x' = v\n", " # v' = -9.8 * sin(x)\n", " ((x, v), (v, -9.8 * hy.sin(x))),\n", " # Initial conditions\n", " # for x and v.\n", " [-0.05, 0.0],\n", " # Non-terminal events.\n", " nt_events=[ev],\n", ")" ] }, { "cell_type": "markdown", "id": "19f41646", "metadata": {}, "source": [ "The list of non-terminal events is passed to the constructor of the\n", "integrator via the ``nt_events`` keyword argument. Note how we\n", "set up the initial conditions so that the bob is at rest at an\n", "angle of amplitude $0.05$.\n", "\n", "Let us now integrate for a few time units and plot the evolution of the system\n", "together with the times at which the event triggers:" ] }, { "cell_type": "code", "execution_count": 5, "id": "abfe3ecf", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Value of x when v is zero: -0.05\n", "Value of x when v is zero: 0.049999999999999996\n", "Value of x when v is zero: -0.05\n", "Value of x when v is zero: 0.05\n", "Value of x when v is zero: -0.049999999999999996\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA/0AAAINCAYAAABs2h/NAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAACoSUlEQVR4nOzdd3hc5Zk+/vtMVR/1YhVbkuVesbEtd8CYHnoIJCTZABvCpgDJ5huS7C5JNvBLYBOTZIEsZWFTCAECJGDABuMu927LRZZkyep1VEbStPP7Y+aMbCzbkjwz7yn357p8XUIeSY/Mo6P3ecvzSrIsyyAiIiIiIiIi3TGJDoCIiIiIiIiIIoNFPxEREREREZFOsegnIiIiIiIi0ikW/UREREREREQ6xaKfiIiIiIiISKdY9BMRERERERHpFIt+IiIiIiIiIp1i0U9ERERERESkUxbRAeiB3+9HfX09EhMTIUmS6HCIiIiIiIhI52RZRnd3N8aMGQOT6fzr+Sz6w6C+vh75+fmiwyAiIiIiIiKDqa2tRV5e3nn/nkV/GCQmJgII/GMnJSUJjmZoPp8Pe/fuBQDMnj0bZrNZcERE52KekhYwT0ntmKOkBcxTokvX1dWF/Pz8UD16Piz6w0DZ0p+UlKTaot/tdmPTpk0AgMWLF8NmswmOiOhczFPSAuYpqR1zlLSAeUoUPhc7Ys5GfkREREREREQ6xaKfiIiIiIiISKdY9BMRERERERHpFIt+IiIiIiIiIp1i0U9ERERERESkUyz6iYiIiIiIiHSKV/YZhMViwd133x16m0iNmKekBcxTUjvmKGkB85QoeiRZlmXRQWhdV1cXHA4HnE4nkpKSRIdDREREREREOjfcOpTb+4mIiIiIiIh0intpDMLn8+HgwYMAgOnTp8NsNguOiOhczFPSAuYpqR1zlLSAeUoUPSz6DcLn8+Hdd98FAEyZMoUPVlIl5ilpAfOU1I45SlrAPCWKHm7vJyIiIiIiItIpFv1EREREREREOsWin4iIiIiIiEinWPQTERERERER6RSLfiIiIiIiIiKdYtFPRMLJsowGZx92VLWH3re/thNtPQMCoyIi0h6X24sj9V2h/95e1YaTLT3w+WWBURERacuA1wenyyM6jLCRZFnmb4FL1NXVBYfDAafTiaSkJNHhDMnv96O8vBwAMHnyZJhMnO8hsdxeP9YcacSHhxqxpaIVHS4PJMgYa+oAAJzyp0CGhLyUWCydkIEbp+dgQVEaTCZJcORkdHyektqcaOrGW3vqsOF4C8obuoZ8lsbZzLisIAXXTsvGjTNykBxnExw1GR2fpaQ2vQNevH+gAWuONGHryVbcM68AP75xiuiwLmi4dSiL/jDQQtFPpBYutxevbK3GS5uq0NbrDr3fbJKQnxKLpFgrAKC1ewD1zv6zPrYkMwFfX1aMW2fnwszin4gMbltlG3699ji2n7FLCgDS4m3ISoqBzWJCd78H9Z396PP4Qn8fazXjjjl5+JcrxiPbERPtsImIVKWj143nN5zEn7bXoGfAG3r//MJUvP71UoGRXRyL/ihi0U90cbIs4/2DDXj870fQGty2n5Vkx+2X5eHKSZmYkZcMm+XsWf6ufg92n+rAR4ca8d6BhtCDeOqYJPz05mmYMzYl6t8HEZFo9Z19+Pd3D+Hj8mYAgUnTqyZl4oYZOVhYnI6MRPtZr/f5ZVQ09+DTY814d189yhsC2/9jrWY8tLwYDy4vhtXMVVYiMhafX8YfyqrxX2uOozs4xixMj8ftl+Vi+cRMTB2TBElS9yITi/4o0kLRzy1UJJLT5cH339qPjw43AQAKUuPwyNUluGnGGFjOGGheKE+7+j3407YaPLu+At39Xpgk4BvLi/HwigkcrFJU8XlKIr21+zT+/d1D6HX7YDFJ+MK8fPzLFeOR44gNveZCOSrLMspOtuG/1h7H7lOBIwDTcpPw68/PQklWYnS/GTI0PktJpLrOPnzntb3YFXwOTslJwveumYArJmaqvtA/03DrUP50GYTX68Wbb76JN998E16v9+IfQBQmh+uduOG3m/DR4SZYzRIeXlGCtY8uxa2z884q+IEL52lSjBXfWF6M9d9bjttm58IvA//96Ul88cXtoZ0DRNHA5ymJ4Pb68YO3DuC7b+xHr9uHOWNT8MF3luA/b5l+VsEPXDhHJUnCwvHpePPBUjzzhVlIjrPiUF0Xbv7vLfjwUEM0vyUyOD5LSZSNx1tw4282YdepDiTYLfjPW6bhvW8txpWTsjRV8I8Ei34iipitFa246/fbcLqjDwWpcXj7oUV4eMUE2C3mUX/OtAQ7fnXXLDz7xcuQYLdgR1U7bv7dFpxs6Qlj5ERE6tE74MV9r+7EX3bWQpKAR1ZMwF+/XnpJK/OSJOHmWbn46OGlKC1Kg8vtw4N/3IPn1p8MY+REROrytz2n8U+v7ESHy4PpuQ588J0l+NKCsbpvFM2in4gi4v0DDfjq/+5Ez4AXC4pS8Y9vLca0XEfYPv/103Pwzr8sRGF6POo6+/D558twqM4Zts9PRKQGbT0DuOeFbdh0ohVxNjNe/url+M6KkrA1M81KisEf7puHf1o0DgDwiw+P4snV5eDpTyLSmxc3VeLRv+6Hzy/j1tm5ePMbpchPjRMdVlSw6CeisFt9sAHffG0P3D4/rp+ejVf+aR4cwa784TQ+MxFvPliKablJaOt144svbsfxpu6wfx0iIhGcLg+++OJ27D/tREqcFX9+YAGumJgZ9q9jMZvwHzdNxQ+vnwQA+P3GSjz10bGwfx0iIlH+Z+NJ/Of7gR4S9y0uxH/dOfOSdp5qDYt+IgqrTSda8J2/7IUsA3fNzcdv774MMdbIPVTTEux47YEFmJWfDGefB/e+tB217a6IfT0iomjoc/tw36s7cbSxG5mJdrzx4ELMyk+O6Nf856XF+Pmt0wAAz64/id9v4FZ/ItK+N3bV4onVRwEAj149AT++YbLut/N/Fot+IgqbfbWd+PofdsPjk3H99Gw8cdv0sG1BvZDEGCte+afLMSErAU1dA7j3JTb3IyLt8vj8+Jc/78GuUx1IirHg/+6bh/GZCVH52l+cPxY/uC6w4v/kB0fx1521Ufm6RESR8PGRJvzgbwcBAF9fWoRvX1Wi22Z9F8Kin4jCormrHw/83y643D4sKUnHr++aFZWCX5EcZ8Mf7puPvJRYVLe58NCf9sDj80ft6xMRhcsTq8ux7mgzYqwmvPzVyzEpO7rXAT+4rBgPLisGAPzonYPYVd0e1a9PRBQORxu78K3X9sLnl3HHnLzQhKYRWUQHQNFhNptx8803h94mCie3149v/GkPWroHMCErAc99ac6ozkldap5mJcXglX+ah1v+ewt2VLXj5++X4/HPTR3x5yG6ED5PKZLe3nsa/7ulGgDwzBdmY+641BF/jnDk6P+7diJq2114/2ADvvGnPfjHNxcj2xEzqs9FNBQ+SymSnH0efP0Pu9HnCSxG/X+3TTfkCr9Cktme9ZJ1dXXB4XDA6XQiKSm6s/FEavDjdw7ij9tqkBhjwd+/uRiF6fFC41l7pAkP/N8uAMDTd87EHXPyhMZDRDQch+uduP25rej3+PGtK8fjuysnCo2nd8CL25/biqON3ZiVn4zXv77AUI2viEib/H4Z9//fLqw72oy8lFj845uLkRJvEx1WRAy3DuX2fiK6JO8dqMcft9VAkoBnvjBLeMEPAFdPycJ3rioBEJiQqGjuERwREdGF9Q548dCf9qDf48eyCRl4eMUE0SEh3m7B7++dA0esFftqO/Ffa46LDomI6KKe33gS6442w24x4fkvzdFtwT8SLPoNwu/34/jx4zh+/Dj8fp5zpvBodPbjR28fAgD8y/LxuHJS1iV9vnDm6XeuKsGSknT0e/x4+PW9cHuZ9xQefJ5SJPzsvSM41ebCGEcMnvnCpfVECWeOjk2Lx9N3zgQAvLCpElsrWi/p8xEp+CylSDhU58SvghOUP7tlGqblOgRHpA4s+g3C6/Xitddew2uvvQav1ys6HNIBv1/G997YD2efBzPyHPjOipJL/pzhzFOTScJTd8yEI9aKQ3VdeOYTrlBRePB5SuG29kgT/rKzFpIE/NfnZyE57tJWpcKdo1dPycLd8wogy8B339gPp8tzyZ+TiM9SCrd+jw+PvL4PXr+M66Zl404e7wxh0U9Eo/JqWTU2V7QixmrCr++aBatZfY+TbEcMnrxtOgDgufUn2YGaiFSntWcAP3jrAADggSVFKC1OExzR0P7txskoTI9Hg7Mf//buIdHhEBGd45cfHsOJ5h5kJNrx81uN3bjvs9Q3Sici1attd+GXHx4DAPzo+skozojO/dGjcf30HNx2WS78MvCDvx3kNn8iUpWf/uMI2nrdmJSdiO+uFH+O/3zibBasCl7F+vf99fj0aLPokIiIQnaf6sDLW6oAAL+8YwZSeY7/LCz6iWhEZFnGv797CH0eH+YVpuJLC8aKDumi/v3GKUhPsKGiuQe/33BSdDhERACAjcdb8Pf99TBJwFN3zFR9Z/yZ+cn42qJxAIAfv3MILje3ZBOReB6fHz96+yAA4I45ebhiYqbgiNSHRT8RjcgHhxrx6bEWWM0Snrh1mia2TiXH2fBvN04BAPz20wpUtfYKjoiIjK7f48OP3wlsk//KwnGYnqeNZlOPXD0BucmxqOvsw6/XslcKEYn30uYqHG3sRkqcFT+8frLocFSJRT8RDVtXvweP//0wAOAby8djfGai4IiG73Mzx2BJSTrcXj9+/M5ByLIsOiQiMrDfrjuBmnYXspNi8N2VE0WHM2xxNgv+85ZpAAID7cP1TsEREZGR1ba7sOrjwATkD6+fzG3958Gin4iG7XfrKtDcPYDC9Hg8tLxYdDgjIkkSfn7LdNgtJmypaMNHhxtFh0REBnWqrRf/s7ESAPCTm6ciwW4RHNHIXDEpEzfMyIFfDvQk4CQqEYnyn+8fQb/Hj/mFqbiD3frPS1u/ZWjUzGYzrrvuutDbRCN1qq0X/xtskPLvN05BjDX8eRTpPC1Ii8PXlxbhN+sq8MTqo7hiUqbqz9CS+vB5SpfqydVH4fHJWDohA9dMzQ77549Gjv7o+sn4pLwJ26va8dHhRlw7LSciX4f0i89SulTbKtvw0eEmmE0SfnaLNo6cisKi3yDMZjPmzZsnOgzSsDMHqcsnZkTka0QjT7++rBh/2VmLmnYXXtlSja8v09aOBRKPz1O6FNsq2/Dh4UaYJODHN0Tm7Gk0cnRMciz+eUlgEvXnq8s5iUojxmcpXQq/X8Z/vn8EAHD3vHxMyNLOkVMRuL2fiC6q7GRgkGo2SfjxDZM1PZMab7fg+9dOAgD8dl0FWroHBEdEREZx9iC1QPOD1K8vK0ZWkh217X343y3VosMhIgN5a89pHKrrQqLdgkdWqPe6U7Vg0W8Qfr8f1dXVqK6uht/Pe8pp+GRZxhOrywFEfiY1Wnl62+xcTM91oGfAi2c+YfdpGhk+T2m03t5bFxqkPnp15Aap0crReLsF378mMIn63+sq0NHrjtjXIv3hs5RGq8/tw9NrjgEAvnnleKQl2AVHpH4s+g3C6/Xi1Vdfxauvvgqvl/fq0vB9eKgRB+uciLeZIz6TGq08NZmk0JUuf9lRi9p2V8S+FukPn6c0Gm6vH78Odph+6IrIDlKjmaO3zs7F5JwkdA948fzGkxH9WqQvfJbSaL1aVo2mrgHkpcTiq4vGiQ5HE1j0E9F5+fwy/it4D/N9iwt1NZNaWpyGJSXp8PplrPr4hOhwiEjnXt9Vi9MdfchItOOrC8eJDidsTCYJ/3pNYEL41a3VaO7qFxwREelZd78Hz28ITDA+vGICe4kME4t+Ijqvd/fVoaK5B45YK+5fWiQ6nLBT7sZ+e+9pVDR3C46GiPSq3+PD79YFJhe/ecV4xNr0NUi9YmImLitIRr/Hj999WiE6HCLSsZc2V6HT5UFxRjxunZ0rOhzNYNFPREPy+PyhFfCvLytCUoxVcEThNys/GSunZMEvA79ay7P9RBQZfyg7haauAeQmx+IL8/JFhxN2kiThX4Nn+1/bUcMjU0QUER29bry0KXB99CNXT4DZpN3G0tHGop+IhvTW7tOoaXchPUFfW1E/67srJ0KSgNUHG1He0CU6HCLSGZfbi+eCW1G/c1WJbreiKkemPD4Z/83VfiKKgBc2VaJ7wIvJOUm4flqO6HA0hUU/EZ3D55dD56UeXFaEOJtFcESRMzE7EddPD/zi4ECViMLttR21aO91Y2xaHG67TN9bUR9eUQIgcJVWfWef4GiISE+cfR78X9kpAMAjK0pg4ir/iLDoJ6JzrD7YgOo2F1LirLh7XoHocCLuX5aPBwC8f7ABlS09gqMhIr1we/14YWMlAODrS4thMet72DVnbCoWFKXC45PxP8Hvm4goHP5QVo2eAS8mZiVixeQs0eFojn6X7+gsZrMZK1asCL1NdD6yPLg186sLCxFvj95jQlSeThmThKsmZeKTo814bv1JPHXnzKh9bdIePk9puN7eexqNXf3ITLTj9jnRW+UXmaPfurIE2yq347UdNfiXK8YjI1E/t75QePFZSsPV5/bh5S3VAIBvLC/mKv8osOg3CLPZjEWLFokOgzTg02PNONrYjXibGV9ZODaqX1tknv7LlePxydFmvL23Dt9ZUYK8lDghcZD68XlKwxE4JhVY7X5gSVFUz/KLzNGFxWmYlZ+MfbWdeHFzJR67brKQOEj9+Cyl4Xp9Zw3ae93IT43FjTN4ln809L3PjIhGJLDKHzjL/8UFY5EcZxMcUfRcVpCCRePT4PXLoe24RESj9eGhRlS19sIRa8U98/V/TEohSRK+dWXgyNQfy07B2ecRHBERaZnb6w8dF/pnAxyTihT+qxmE3+9HXV0d6urq4Pf7RYdDKrWjqh27T3XAZjbh/sWFUf/6ovP0oeDZ/r/uOg2niwNVGproPCX1k2UZz65XjkmNi+oxKUB8jl45KRMTshLQ6/bh9Z01Uf/6pA2i85S04d19dah39iM9wY475+SJDkezWPQbhNfrxYsvvogXX3wRXq9XdDikUsq1UnfMzUNmUkzUv77oPF1YnIZJ2Yno8/jw5x0cqNLQROcpqd/GE604XN+FOJtZyJWnonNUkiTcv7gIAPDKlmp4fSzo6Fyi85TUz3/GbVL3LylEjJW9H0ZLc0X/s88+i8LCQsTExGDOnDnYtGnTBV+/YcMGzJkzBzExMSgqKsLzzz9/3tf+5S9/gSRJuOWWW8IcNZH6VTT3YP2xFkgS8M9LikSHI4QkSbg/+L2/urUaHg5UiWgUXt5cBQD4wuUFSIk3zjGpM31u1hikJ9hQ7+zHB4caRYdDRBq04UQLTrb0ItFuwRcNdEwqEjRV9L/++ut4+OGH8aMf/Qh79+7FkiVLcN1116GmZugVuaqqKlx//fVYsmQJ9u7dix/+8If49re/jbfeeuuc1546dQrf+973sGTJkkh/G0Sq9OrWagDAVZMyMS49XmwwAt00MwcZiXY0dvVj9cEG0eEQkcZUNPdgw/HABKqIVX61iLGace+CcQCAFzdVQpZlsQERkeb8b7Bj/+cvz0dijFVsMBqnqaL/V7/6Fe677z7cf//9mDx5MlatWoX8/Hw899xzQ77++eefR0FBAVatWoXJkyfj/vvvx9e+9jU8/fTTZ73O5/Phi1/8In7yk5+gqMiYK5xkbM4+D97acxoA8LVF0T/LryZ2ixlfKQ3cWvACB6pENELKBOqKyVkoSDP2LSBfWlAAm8WE/aed2H2qQ3Q4RKQhFc092BicQP1K6TjR4WieZop+t9uN3bt3Y+XKlWe9f+XKldi6deuQH1NWVnbO66+55hrs2rULHs9gk66f/vSnyMjIwH333Rf+wIk04K87a+Fy+zAxKxGlxWmiwxHunvljYbeYcKiuCzuq2kWHQ0QaceYE6j8tGic2GBVIS7Dj9styAQAvbqoSHA0RaQknUMNLM0V/a2srfD4fsrKyznp/VlYWGhuHPivW2Ng45Ou9Xi9aW1sBAFu2bMFLL72EF154YdixDAwMoKur66w/RFrl88t4tawaQGCQKkmS2IBUIDXehtuDHWJf2syBKhENz1kTqEWcQAUGd499dKQRp9p6BUdDRFpw1gSqgY9JhZNmin7FZwsSWZYvWKQM9Xrl/d3d3fjSl76EF154Aenp6cOO4cknn4TD4Qj9yc/PH8F3QKQua4804XRHH1LirLhldq7ocFRDGaiuLW9CbbtLcDREpHacQB1aSVYilk3IgCwDf9x2SnQ4RKQBb+ziDtRwi+7FsZcgPT0dZrP5nFX95ubmc1bzFdnZ2UO+3mKxIC0tDYcPH0Z1dTVuuumm0N8r94RaLBYcO3YMxcXF53zexx57DI8++mjov7u6ulRf+JvNZixbtiz0NpHif7cEVrLvnlcg/CoUNeXp+MwELClJx6YTrXhtRw2+f+0kofGQeqgpT0k9Pi5XzwSq2nL0y6VjseF4C97YfRrfXTlR+O8aUge15SmpAydQI0MzRb/NZsOcOXOwdu1a3HrrraH3r127FjfffPOQH1NaWop//OMfZ71vzZo1mDt3LqxWKyZNmoSDBw+e9fc//vGP0d3djWeeeea8hbzdbofdbr/E7yi6zGYzli9fLjoMUpmjjV3YXtUOs0nCvcHmdSKpLU+/OL8Am0604q+7avHwigmwWTS3OYoiQG15SuqgnD9VywSqmnJ0+cRM5CbHoq6zD6sPNuC2y/JEh0QqoLY8JXVYd7QZte19SI6z4uZZ3IEaLpoawT766KN48cUX8fLLL6O8vByPPPIIampq8OCDDwIIrMB/+ctfDr3+wQcfxKlTp/Doo4+ivLwcL7/8Ml566SV873vfAwDExMRg2rRpZ/1JTk5GYmIipk2bBpvNmHfrknG8tj1w3eXKKVnIccQKjkZ9rpqchawkO1p73PjoMO+ZJqKhVbb0YOvJNpgk4EsLxE+gqo3ZJOGe4B3b3OJPRBfyp+2BZ8Rdl+cj1sYdIOGiqaL/rrvuwqpVq/DTn/4Us2bNwsaNG7F69WqMHRv4BdvQ0ICamprQ6wsLC7F69WqsX78es2bNws9+9jP85je/we233y7qWxBGlmU0NzejubmZV5ARAKDP7cPf9tYBQGgwJpra8tRqNuGuyzlQpbOpLU9JvL/srAUAXDExE2OSxU+gqjFH75ybB4tJwp6aThypZwNkUmeeklinO1zYcLwFAHD35eoYm+qFZrb3Kx566CE89NBDQ/7dK6+8cs77li1bhj179gz78w/1OfTA4/HgueeeAxDYEcFdDPTegXp093tRkBqHRcXDb2QZSWrM07vn5eN3605ge1U7TjR1oyQrUXRIJJga85TEGfD68ObuQJfpu+epY5CqxhzNTIzBNdOy8f6BBvxx+yk8cet00SGRYGrMUxLr9Z21kGVg0fg0jEuPFx2OrmhqpZ+IwufPOwK7Yr4wLx8mE5uknE+OIxZXTQ40C/3T9pqLvJqIjOajw01o73UjOykGyydmiA5H1b40P7Az8929degZ8AqOhojUxOvz4/Xgrql75vGYVLix6CcyoPKGLuyt6YTFJOHOOeq+eUINlDO6b+05DZebA1UiGqT0Rrnr8nxYzBxWXciColQUZ8Sj1+3D28HjZUREQKCBX3P3ANLibbh6ytA3s9Ho8bcTkQG9FlzlXzk1CxmJ2rqJQoQl49NRkBqH7n4v3tvfIDocIlKJypYelFUGGvh9/nJOoF6MJEn4YnC1/8/cOUVEZ1B2oN4xN4+3JUUA/0WJDKbP7cPbe4IN/Lh9alhMJgl3BQf0b+yuFRwNEamF0sBPuZKOLu62y3JhM5tQ3tCFQ3VO0eEQkQqc2cDvC2zgFxEs+okM5h8H6tE9EGjgt7A4TXQ4mnH7ZXkwScDO6g5UtvSIDoeIBDuzgd89KmngpwXJcTasnBrYuvvGLk6iEhHw12ADv4XFaShkA7+IYNFPZDBv7goMUu+6nA38RiLbEYOlEwJNupSBPhEZ17ryZrT3upGVZGcDvxG6c25g59S7++sx4PUJjoaIRPL5ZbyhshtQ9EhzV/bR6JjNZpSWlobeJmM61daLHdXtMEmBlWu1UXue3jknH+uPteBve+rw3ZUTYeakiSGpPU8pOpTJv9suy1NdAz+15+ji8enIccSgwdmPj48044YZOaJDIgHUnqcUHVtPtqLB2Q9HrDW0C4jCj0W/QZjNZqxcuVJ0GCTYW8Gz/ItLMpDtiBEczbnUnqcrpmQiOc6Kxq5+bDrRguUTM0WHRAKoPU8p8lq6B7A+eP5UrROoas5Rs0nC7Zfl4XefVuCvu2pZ9BuU2vOUouOt4ATqTTNzYLdw8idS1DU1TUQR4/fLoQfr7ZflCo5Gm+wWM26ZFfi3e2MXt/gTGdW7++rg88uYlZ+M8ZkJosPRpDvmBCZLNp1oQYOzT3A0RCRCd78HHx5uBADcwSukI4pFv0HIsozOzk50dnZClmXR4ZAA26vaUdfZh0S7BddMzRYdzpC0kKfKQHXtkSZ0utyCoyERtJCnFDmyLIe29ivPA7XRQo6OS4/HvMJU+GXgb8FdaGQsWshTiqzVBxvQ7/GjOCMeM/McosPRNRb9BuHxePDMM8/gmWeegcfjER0OCaAMUm+cmYMYqzq3T2khT6flOjAlJwlunx/v7qsXHQ4JoIU8pcg5XN+Fo43dsFlMuGnGGNHhDEkrOfr5YEO/N3bVsugzIK3kKUXOW7sDE363z8mDJLFPUiSx6CcygN4BLz441ABAvStTWnLn3MC/Ibv4ExnPW3sCP/dXT86CI84qOBptu356NuJtZlS3ubD7VIfocIgois5sLn3bbI5NI41FP5EBfHCoES63D4Xp8bisIEV0OJp386xcWEwSDtY5UdHcIzocIooSt3dwhw8nUC9dnM2Ca6cFmvi9s49b/ImMRGkuvWh8uiqbS+sNi34iA3hzdy2AQAM/bp+6dKnxNiydELiX+10OVIkMY/2xZrT3upGRaMeSknTR4ejCLbMDRyTeP9AAt9cvOBoiiga/X8bf9qi7N4resOgn0rkGZx+2V7UDAG5V4dVSWnXzrMBA9d199TyLSmQQymr0LbPGwGLmECocFhanIyPRjg6XBxuD1yASkb7tOtWB0x3qbi6tN/yNRaRz7+1vgCwD88alIjc5VnQ4urFySuAsak27C3tqOkWHQ0QR1t3vwcflzQCAW2bz2tNwMZskfG5mYBKVW/yJjEHZJXnttGzVNpfWGxb9RDr37v7Ag/WmWersMq1VsTZzaHb6nb0cqBLp3UeHm+D2Bq6WmpKTJDocXbllVmASZe2RJnT3s4s7kZ55fH6sPhhoLn3zLE6gRotFdAAUHSaTCXPnzg29TcZQ2dKDQ3VdMJskXD9N/duntJanN8/Oxd/21uH9gw3495umwMrtvoagtTyl8FBWpm6epf7eKFrL0Wm5SSjKiEdlSy8+OtzEM74GobU8pfDYfKIVHS4P0hPsKC1OEx2OYbDoNwiLxYIbbrhBdBgUZX/fH+gyvXh8OtIS7IKjuTit5emi4jSkJ9jR2jOATSdacOWkLNEhURRoLU/p0rV0D2DryTYACG1FVzOt5agkSbh1Vi7+a+1xvLO3jkW/QWgtTyk8lAnUG2fkwGxS9wSqnnBajUinZFkOFf03c2t/RFjMJtw0M3Dd1Nt76wVHQ0SRsvpgA3x+GTPzHBiXHi86HF1StvluPdmKpq5+wdEQUST0uX1Yc6QJAPA5jk2jikW/QciyjN7eXvT29rLTuEEcru9CZUsv7BYTVmqkM6oW83TwLGojega8gqOhaNBintKlUVamPqeR86dazNGCtDjMGZsCvwz8Yz8nUY1Ai3lKl+bj8ia43D7kp8Zidn6y6HAMhUW/QXg8Hjz99NN4+umn4fGwSY4RKIOmqyZnIsGujZM8WszTGXkOFKbHo9/jxyflTaLDoSjQYp7S6NUGb+iQJOCmGTmiwxkWreaosivtvQMNgiOhaNBqntLovbsvuAN1pvp7o+gNi34iHfL7B7f2a+H8qZZJkoQbpgcKgfc5UCXSHeVZurA4DZlJMYKj0bdrp2VDkoB9tZ2obXeJDoeIwqjT5caG44FrT7m1P/pY9BPp0K5THWhw9iPRbsHyiZmiw9G9G4Krf+uPt/C6KSKd+fs+TqBGS2ZiDOYXpgIAPjjESVQiPfnwUCM8PhmTshMxIStRdDiGw6KfSIf+vj9w/vSaadmIsZoFR6N/k7ITUZQRD7fXj3VHm0WHQ0RhUtHcjWNN3bCaJVw7VRtb+7UutHPqYKPgSIgonJRjOzdxAlUIFv1EOuPx+bE6OFjiylR0nLnFn2dRifRDeZYuHp8OR5xVcDTGcM20bJgkYD+3+BPpRnuvG2WVgWtPlfESRReLfiKd2VbZhvZeN9LibVhYnCY6HMNQtvhvOMYt/kR6sfpgYBLvOg5SoyawxT/wu0v59ycibVt7pBE+v4wpOUm89lQQFv1EOqOsTF0zLRsWM3/Eo2ViViKKM+Lh9vnxMbv4E2leZUsPjjZ2w2KSsHJKluhwDEWZRH2fRT+RLijHdW7QyA0oeqSNe7zokplMJsycOTP0NumTzy9jzeHAg/W6admCoxk5LeepssX/N+sq8P6BRtw6O090SBQhWs5TGr4PDgWepQvHpyM5ziY4mpHReo5eOy0b//7uIRw47URNmwsFaXGiQ6II0Hqe0vB0utzYWtEKQJtjU71g0W8QFosFt9xyi+gwKMJ2VLWjrdcNR6wVC4q0t7Vf63l6w4wx+M26Cmw83oKufg+SYngGWI+0nqc0PMoVnDdM194gVes5mp5gx4KiNGw92YbVhxrw4LJi0SFRBGg9T2l41h5pgtcvB5seJ4gOx7A4rUakIx8GrzhaOSULVm7tj7oJWQkYn5kQ2OJ/hFv8ibSqurUXRxq6YDZJuHqK9op+PQht8WdzVCJNU3ZNXTeNW/tFYlVgELIsw+12w+12Q5Zl0eFQBPj98uCDVYMrU4D281SSJFw/nQNVvdN6ntLFrQ5OoJYWpSE1Xltb+wF95Oi1UwNd/A/WOXGqrVd0OBQBeshTujBnnwebTrQAAG6Yoc2xqV6w6DcIj8eDJ598Ek8++SQ8HnYW16O9tR1o7h5Aot2CRePTRYczKnrI0xuDq1ObTrTC2afN74EuTA95Shf2QbDp1PUa7dqvhxxNS7CjNHgDDRv66ZMe8pQu7JPyJnh8MkoyEzA+M1F0OIbGop9IJ5Su/VdNzoTdYhYcjXFNyErkFn8iDatpc+FgnRMmCVg5lV37Rbph+hgAvLqPSKuUsSmvPRWPRT+RDsiyjA8P8cGqFtcHu9N+FLxJgYi044Pg1v4FRWlIT7ALjsbYVk7NgkkCDtV1oa6zT3Q4RDQC3f0ebFS29nNsKhyLfiIdOHDaibrOPsTZzFg2IUN0OIa3cmqg6N94ogV9bp/gaIhoJJRVZU6gipeeYMfcsakAELqOloi0Yd3RZri9fhRlxGNCFrv2i8ain0gHlAZ+V0zMRIyVW/tFmzomCbnJsej3+EOz3ESkfqc7XNh/2glJCjSSI/GUIxbcOUWkLcoE6vXTciBJkuBoiEU/kcbJshzajqrVrv16I0kSB6pEGrQ22Ifj8rGpyEjk1n41uCY4+bKjqh3tvW7B0RDRcPS5fdhwPLDoce00jk3VgEU/kcaVN3TjVJsLdosJV0zMFB0OBSkD1U/Km+H1+QVHQ0TDoRT9bOCnHvmpcZickwS/HOgETkTqt+lEC/o9fuQmx2LqmCTR4RAAi+gAKDpMJhOmTJkSepv048PgSvLSCRmIt2v7R1pPeTp3bApS4qzocHmwo6odCzV6jSKdS095SoM6XW5sr2oHAFw9RdtFv95y9JqpWShv6MJHh5tw59x80eFQmOgtT2mQMoF69ZQsbu1XCW1XCDRsFosFd955p+gwKAKUa+FWanyQCugrTy1mE1ZMzsIbu0/jo8ONLPp1RE95SoPWHW2Gzy9jUnYixqbFiw7nkugtR1dOycaqj09g04kWuNxexNk4fNUDveUpBXh9fnxczl1TasNpNSINO93hwpGGLpgk4KrJfLCqjbLFf82RJsiyLDgaIrqQNYcHV6ZIXSbnJCI/NRYDXj82HGNzVCI1232qAx0uDxyxVswblyo6HApi0U+kYcoq/9yxqUiNtwmOhj5rcUk64mxmNDj7cbDOKTocIjqPfo8vdNPGyilsOqU2kiThmimDk6hEpF7K1v6rJmXCYmapqRb8P2EQbrcbP/nJT/CTn/wEbje73+rF2nJ9rUzpLU9jrGYsm5ABYHAVkbRPb3lKwJaKVrjcPuQ4YjAtV/tNp/SYo9dMU5qjNsHD5qi6oMc8NTpZlkMTc9zary4s+ok0ytnnwfZKfTSd0jNliz+v7iNSL2VSbiWbTqnWZQUpSIu3oavfi22VbaLDIaIhHGvqRk27CzaLCUtKMkSHQ2dg0U+kUeuPNcPrl1GSmYBx6dpuOqVnV0zKhMUk4URzDypbekSHQ0Sf4fPL+OSosmuKW/vVymySQhPc3DlFpE5rgz+bS8ana/5GKb1h0U+kUWuO6Gtrv145Yq0oLU4DAHzEgSqR6uyt6UBrjxuJMRbML2LTKTUbbI7aCL+fzVGJ1IZjU/Vi0U+kQQNeX6iDMR+s6rcyOFBVrrAhIvVYc0bTKSubTqnawvFpiLeZ0dQ1gEP1bI5KpCb1nX04WOeExBulVIm/3Yg0aHtlO3oGvMhMtGNmXrLocOgirpqUCQDYU9OBtp4BwdEQkUKWZawJ9tvg1n71s1vMoXPCn5Q3C46GiM6kLGzMKUhBRqJdcDT0WSz6iTQodB3K5CyYTGw6pXZjkmMxJScJsgys5x3TRKpR0dyD6jYXbGYTlk1k0yktuHJyYBJV6cNAROqg9NrgDlR1YocFgzCZTCgpKQm9Tdoly3JoNnWlzh6ses7TqyZn4khDFz452oTb5+SJDocugZ7z1GiUa08Xjk9Dgo6aTuk5R6+clAlJAg7VdaHR2Y9sR4zokGiU9JynRtPV7wndqsGiX5308xuOLshiseCee+4RHQaFwaG6LjQ4+xFnM4caxOmFnvP0qslZ+O26Cmw83gq31w+bhQMcrdJznhrNuuAWcb2dP9VzjqYn2DErPxl7azqx7mgz7plfIDokGiU956nRbDreCq9fRlFGPIoyEkSHQ0PgqJNIY9YeCZw/XTYhAzFWs+BoaLhm5DqQnmBHz4AXO6raRYdDZHgdvW7sqekAEFg9Ju1YEZyk+YTNUYlUQTlucxWfparFop9IYz45GliZWqGzlSm9M5kkXDkpcGaYXfyJxNtwvAV+GZiUnYjc5FjR4dAIXBU817+5ohV9bp/gaIiMzeeXQzdKXcGiX7VY9BuE2+3GE088gSeeeAJut1t0ODRKTV39OFzfBUkCluuw6ZTe81TZQvzJ0SbIMu+Y1iq956lRKBOoelzl13uOTswKTNQMeP3YUtEqOhwaJb3nqVHsP92Jtl43Eu0WXD4uVXQ4dB4s+g3E4/HA4/GIDoMuwafBQerMvGSkJejzOhQ95+mSknTYLCbUtvfhRHOP6HDoEug5T43A6/NjwzH9Fv2AvnNUkqTQar8yeUPapOc8NQplbLp0QgasZpaWasX/M0Qask7HK1NGEGezYGGw+SLvmCYSZ/epDnT1e5EcZ8XsghTR4dAoKDun1nHnFJFQyniGY1N1Y9FPpBEDXh82B7cx8sGqXUqTGzagIhJnXXCVf/mEDJhNkuBoaDQWFKUi3mZGU9cADtV1iQ6HyJAanf040qDfY6d6wqKfSCN2VLXD5fYhM9GOqWOSRIdDo3RlcHVqT00H2nt5hpFIBOWqvivZEFWz7BYzlpSwOSqRSMoO1Fn5+j12qhcs+ok0QnmwLp+YAUniypRW5SbHYnJOEvzy4Dk4Ioqe2nYXTjT3wGySsKyEK1NadmXwXP86PkuJhAgdO53IHahqx6KfSCM+5Xl+3VjBgSqRMMrP3ZyxKXDEWQVHQ5fiykmZkCTgYJ0TTV39osMhMpR+jy90e4YyAUfqxaLfICRJwtixYzF27FiuEmtQZUsPqttcsJolLNbxypRR8lSZuNl4vAUen19wNDRSRslTvVK6vV+l4wlUo+RoeoIds/KTAQDrj3ESVWuMkqd6ta2yDX0eH7KTYjAlh8dO1c4iOgCKDqvViq9+9auiw6BR+vRYCwBgXmEqEuz6/bE1Sp7OzEtGarwN7b1u7D7VgQVFaaJDohEwSp7qUe+AF9tOtgHQ964pI+Xo8gmZ2FvTiU+PtuCuywtEh0MjYKQ81SNl19QVkzI5aaMBXOkn0gBla/8VPDOlCyaThKUl6QCA9cEJHSKKvC0VrXD7/MhPjcX4zATR4VAYKB3Dt1S0cucUUZTIssxrpDWGRT+RyvUMeLG9Sv8rU0azPDiBwy2pRNHz6bHBplNcmdKH6bkOpMXb0D3gxe5THaLDITKEE809ON3RB5vFhEXjuVtRC1j0G4Tb7cZTTz2Fp556Cm43rwnTks0nWuHxyRiXFoeiDH2vTBkpT5dOyIAkAUcbu9HoZAMqLTFSnurJWStTOr+qz0g5ajJJWDYhsNrPnVPaYqQ81RvlWVpalIY4m36PneoJi34DcblccLlcosOgEfr0jDNTRmCUPE2Nt2FmXjIAYMNxrvZrjVHyVE8O13ehqWsAsVYz5hemig4n4oyUo8smKkU/n6VaY6Q81ZN15cGGqOzarxks+olUTJblwe2oBin6jUQ5i/rpUa5OEUWaMoG6aHw6YqxmwdFQOC0tyYApuHOqwdknOhwiXXO6PNhdEzhKw15T2sGin0jFDtd3obl7AHE2M+YZYGXKaJRz/WxARRR5G44HJteumKTfa0+NKiXehpnBq/s2cIs/UURtrmiFzy9jfGYC8lPjRIdDw8Sin0jF1p2xMmW3cGVKb2awARVRVDhdHuwJrkwtLWHRr0dXhJqjsugniiTlSOLyCXyWagmLfiIVW8+t/bpmMklYygZURBG35WQr/DJQnBHPlSmdUo5Lba5ohdvLnVNEkSDLcmjX1FIW/ZrCop9IpTpdbuyr7QSAUGdi0p/lbEBFFHEbg4PUZRM4gapX08Y4kJ5gQw93ThFFzLGmbjR1DSDGauKxU43hHQsGIUkSxowZE3qb1G9zRWBlqiQzAWOSY0WHExVGzNMlJWdf3ZftiBEdEl2EEfNUy85cmVK6vOudEXPUZJKwtCQDf9tbh/XHm1FazLvD1c6Ieap1ygTqgqI0NkTVGM2t9D/77LMoLCxETEwM5syZg02bNl3w9Rs2bMCcOXMQExODoqIiPP/882f9/QsvvIAlS5YgJSUFKSkpWLFiBXbs2BHJb0EIq9WKBx54AA888ACsVqvocGgYBlemjDFIBYyZp2de3cfVfm0wYp5q2YnmHjQ4+2G3mAxxVR9g3BxdHjwKt543omiCUfNUyzYYcGyqF5oq+l9//XU8/PDD+NGPfoS9e/diyZIluO6661BTUzPk66uqqnD99ddjyZIl2Lt3L374wx/i29/+Nt56663Qa9avX4+7774bn376KcrKylBQUICVK1eirq4uWt8W0TmMuDJlZGxARRQ5Sjd3rkzp39KSdJikwBbk+k5e3UcUTr0DXuysChydYdGvPZoq+n/1q1/hvvvuw/3334/Jkydj1apVyM/Px3PPPTfk659//nkUFBRg1apVmDx5Mu6//3587Wtfw9NPPx16zZ/+9Cc89NBDmDVrFiZNmoQXXngBfr8fn3zySbS+LaJznHlm6vJxxliZMjLlXD+v7iMKPzadMo7kOBtmKVf3HeckKlE4batsg9vnR15KLArT40WHQyOkmaLf7XZj9+7dWLly5VnvX7lyJbZu3Trkx5SVlZ3z+muuuQa7du2Cx+MZ8mNcLhc8Hg9SU/VVaHk8HqxatQqrVq067/dO6mHUM1NGzdPpvLpPU4yap1rkcnuxo6odgLFWpoyco8tDO6d4XErtjJynWnTmsVP2YNAezRT9ra2t8Pl8yMrKOuv9WVlZaGxsHPJjGhsbh3y91+tFa2vrkB/zgx/8ALm5uVixYsV5YxkYGEBXV9dZf9ROlmU4nU44nU7Isiw6HLoIo56ZMmqe8uo+bTFqnmrR9sp2uH1+5CbHojjDOCtTRs5R5bjU5hO8uk/tjJynWmTUsaleaKboV3x2ZkmW5QvONg31+qHeDwC//OUv8dprr+Fvf/sbYmLO30H7ySefhMPhCP3Jz88fybdAdEEu9+CZKW5HNQ5e3UcUfmf2RuHKlDFMHZOE9AQbet0+7DrVLjocIl2obu1FdZsLFpOEhePTRYdDo6CZoj89PR1ms/mcVf3m5uZzVvMV2dnZQ77eYrEgLe3sq1yefvppPPHEE1izZg1mzJhxwVgee+yx0Myk0+lEbW3tKL4joqGdeWaqiGemDGPpGVf3NXf1iw6HSBe4MmU8ytV9ALDpxNC7OoloZDaeCDxL545LQYKdN75rkWaKfpvNhjlz5mDt2rVnvX/t2rVYuHDhkB9TWlp6zuvXrFmDuXPnnnU1yFNPPYWf/exn+PDDDzF37tyLxmK325GUlHTWH6JwUTpN88yUsaTE2zAj1wGAA1WicDjV1ouq1t7AyhTvbDeUJRMCK5GbTvC4FFE4bGRDVM3TTNEPAI8++ihefPFFvPzyyygvL8cjjzyCmpoaPPjggwACK/Bf/vKXQ69/8MEHcerUKTz66KMoLy/Hyy+/jJdeegnf+973Qq/55S9/iR//+Md4+eWXMW7cODQ2NqKxsRE9PT1R//6IAGBjsODjg9V4lgRXpzZyoEp0yZRB6pyxKUiM4R3gRrJ4fOBZeqiuC209A4KjIdK2Aa8PW0+2AeCuKS3TVNF/1113YdWqVfjpT3+KWbNmYePGjVi9ejXGjh0LAGhoaEBNTU3o9YWFhVi9ejXWr1+PWbNm4Wc/+xl+85vf4Pbbbw+95tlnn4Xb7cYdd9yBnJyc0J8zr/UjihauTBnbkpLA6tTmE63w+9nUiOhSbDjOCVSjyki0Y0pOYBfm5grunCK6FLurO+By+876uSLt0dyhjIceeggPPfTQkH/3yiuvnPO+ZcuWYc+ePef9fNXV1WGKTN0kSUJGRkbobVIno69MGT1PZxekIN5mRluvG0caujAtuN2f1MXoeaoFbq8fW08Gij0jrkwxRwNb/I80dGHj8VbcPCtXdDg0BOapNii9UQK9h/j/Sas0V/TT6Fit1vNOlpB6GH1lyuh5arOYUFqcho/Lm7HpRCuLfpUyep5qwa5T7XC5fUhPMObKFHM0UKD8fkMlNp1ouehNTyQG81QbzrwFhbRLU9v7ifTM7fWjzMArUxSwJNR1muf6iUYrtDI1IR0mE4s9I5ozNgUxVhOauwdwvIl9mohGo6mrH0cbuyFJwBJe1adpLPqJVGL3qQ70GnhligKUXR67qjvgcnsFR0OkTWfegkLGFGM1Y35hoDcOJ1GJRkeZQJ2Rl4yUeJvgaOhSsOg3CI/Hg2effRbPPvssPB6P6HBoCINnpoy7MsU8BcalxSEvJRZunx/bK9tFh0NDYJ6q21krUyXGLPqZowFKc9SNvAZVlZin6hfa2s8JVM1j0W8QsiyjpaUFLS2Bs22kPrwDlXkKBJoZ8eo+dWOeqtvGM1amUg26MsUcDVB+n26vbEO/xyc4Gvos5qm6+fwyNp/gsVO9YNFPpAKtPQM40tAFAFhcwjNTRrc0mAObuDpFNGLKFW08f0olmQnITorBgNePXdUdosMh0pSDdU44+zxIjLFgZh4bC2sdi34iFdgSHKROzklCeoJdcDQk2sLidJgkoKK5B/WdfaLDIdIMv18OPU85gUqBnVPKJCp3ThGNxObgz8zC4jRYzCwZtY7/B4lUQNk+tYSDVALgiLNiZn4ygMHcIKKLO9rYjdYeN+JsZlxWkCI6HFKBJcFtycrZZCIaHmW34WKD9kbRGxb9RILJshzajrqY21EpiOf6iUZuc0Xg52V+YSpsFg5xKPB7VZICE0LNXf2iwyHShN4BL/bUBI7E8KiUPvA3IpFgla29aHD2w2YxYV5hquhwSCWUc/2bK1rh87PBEdFwcGWKPis13oZpYwLnkZUJdiK6sB1V7fD4ZOSlxGJsWpzocCgMWPQbhCRJcDgccDgckCRjXgenVsr27bljUxBjNQuORizm6aBZ+clItFvQ6fLgUJ1TdDh0BuapOvV7fNhZHbjm0uhHpZijZ1vC5qiqxDxVr1BD1JJ0/r/RCYvoACg6rFYrHn74YdFh0BAGV6aMPUgFmKdnsphNWDg+DR8dbsKmEy2hM/4kHvNUnfac6kC/x4/MRDtKMhNEhyMUc/RsS0oy8Oz6k9h0ohV+vwyTiUWMGjBP1UtZkFrErf26wZV+IoE8Pj+2VbYBAJaM53ZUOtvguX6uThFdzKYzeqNwZYrONGdsCuJsZrT2DOBoY7focIhUrbmrH8eauiFJwKJiFv16waKfSKD9tZ3oGfAiJc6KqWOSRIdDKrM0WPTvOdWBngGv4GiI1G0zd03RedgsJpQWpQHg1X1EF6Ns7Z82xoGUeJvgaChcWPQbhMfjwQsvvIAXXngBHo9HdDgUpGztXzg+ndsNwTz9rIK0OIxNi4PXL2PbyTbR4VAQ81R9OnrdOFQf6H3BW1CYo0NRzvXzRhT1YJ6qU+hGKU6g6grP9BuELMuor68PvU3qsIVX9Z2FeXquJSXpONVWg00nWrBiSpbocAjMUzXaerINsgxMyEpAZlKM6HCEY46ea8mEwM6pnVUd6HP7EGszduNcNWCeqo8sy4O7pjg21RWu9BMJ0t3vwd7aTgB8sNL58Vw/0cVtrgis3i5mbxQ6j6L0eOQmx8Lt82N7FXdOEQ3lRHMPmrsHYLeYMGdsiuhwKIxY9BMJsq2yHT6/jHFpcchP5R2oNLTS4jSYJKCqtRd1nX2iwyFSHVmWQ0eljH5VH52fJElYND5wrn8rj0sRDUl5ls4rTDX8NdJ6w6KfSJDNwXOFPDNFF5IUYw1d16ccByGiQafaXDjd0QerWcL8olTR4ZCKKdePbebOKaIhKWNTTqDqD4t+IkEGr5fidlS6MOX4B4t+onMpz9LLClIQZ2OrIjq/hcHrx440dKG91y04GiJ1cXv92F7VDmBwgoz0g0U/kQD1nX2obOmFSQps3ya6EGWguqWijc2OiD4jtGuKg1S6iIxEOyZlJwIAtp7kJCrRmfbWdMDl9iEt3obJ2bxGWm9Y9BtIXFwc4uJ4dlwNlK2FM/KS4Yi1Co5GXZin57psbDJirCa09gzgeFOP6HAIzFO18Pnl0PlsHpU6G3N0aIu4c0pVmKfqoVzVt4jXSOsS98EZhM1mw7/+67+KDoOClAcrz0ydjXk6NLvFjHmFadh4vAWbK1oxMbhSRWIwT9XjwOlOdPd7kRRjwYy8ZNHhqAZz9PwWj0/HS5urQr+HSRzmqbooTfw4gapPXOknijK/Xw6tMHA7Kg3XouAxkK0cqBKFKLumFhanw8yVKRqGeYWpsJgk1Lb3oabNJTocIlVwujw4cLoTAMemesWinyjKyhu70NbrRpzNjNkFvAOVhkfZkrqtsg0en19wNETqEGqIypUpGqZ4uwWzC5IBAFt4rp8IAFBW2Qa/DBRlxGNMcqzocCgCWPQbhMfjwSuvvIJXXnkFHo9HdDiGpqxMLShKg83CH8EzMU/Pb0pOElLirOh1+7C/tlN0OIbGPFWH3gEv9tZ0AODK1GcxRy8sdHUfd04JxTxVj80Vwav6+CzVLVYcBiHLMk6dOoVTp06x+7dgZzZKobMxT8/PZJLO6uJP4jBP1WFHVTs8Phl5KbEYm8ZGYGdijl6YMkm0taIVfj//fURhnqrH5tB5fl4jrVcs+omiqN/jw47gHahs4kcjxa7TRIOUplNLStIhSTzPT8M3Mz8Z8TYzOlwelDd2iQ6HSKjadheq21wwmyQsKEoVHQ5FCIt+oijafaoDA14/spLsKMlMEB0OaYyyOrWnpgO9A17B0RCJpWxHXTyeK1M0MlazCfOLAs1ROYlKRqfsQJ2Vn4zEGF4jrVcs+omiSFmZWjSeK1M0cgVpcchLiYXXL2NHdbvocIiEae7qx/GmHkgSsDB4swXRSAye6+dxKTK2zbxRyhBY9BNFUdlJPljp0ii5s+UEV6fIuJSu61PHJCEl3iY4GtIi5Vm6o6oNA16f4GiIxPD75dBVwLwFRd9Y9BNFibPPg4N1TgAINWQjGil2nSYCtgZXZxfxWUqjNCErAekJdvR7/Nhb0yk6HCIhjjZ2o8PlQZzNjJl5yaLDoQhi0W8gVqsVVivP6oiy7Yw7ULMdMaLDUS3m6YUpW5mPNnajtWdAcDTGxTwVR5ZlbD0ZKPoXctfUeTFHL0ySJCwaz3P9ojFPxdoa3DU1rzCV10jrnEV0ABQdNpsNP/zhD0WHYWhlyiCV50/Pi3l6cWkJdkzOSUJ5Qxe2nmzD52aOER2S4TBPxappd6Gusw9Ws4TLx6WIDkeVmKPDs2h8Ot7dV4/NFa347sqJosMxHOapeFs5NjUMTukQRYmyksDtqHSpFiurUzzXTwa0Jbi1f3Z+CuJsXLug0VOOS+2v7URXv0dwNETR5fH5sb1SKfo5NtU7Fv1EUdDc3Y8TzYFO0wuKOJtKl2bhGef6ZVkWHA1RdCnbUUu5MkWXKDc5FkXp8fDLwPZK3ohCxnLgtBO9bh+S46yYkpMkOhyKMBb9BuH1evHnP/8Zf/7zn+H18n7vaFO29k/JYafpC2GeDs+8camwmiXUdfahpt0lOhzDYZ6K4/fLoefpIp7nPy/m6PAt5Ll+YZinYild+0uL0mAy8RppveO+OIPw+/04ceJE6G2KLqXTNM9MXRjzdHji7RbMLkjBjqp2bK5oxdi0eNEhGQrzVJzjzd1o63Uj1mrGrPxk0eGoFnN0+BaPT8cft9XwRhQBmKdi8Ty/sXClnygKlDul2WmawkW5Y5qrU2Qkynn+y9lpmsKktCgdkgRUNPeg0dkvOhyiqOj3+LC7pgMAx6ZGwd+YRBFW2+7C6Y4+WEwS5o1LFR0O6YRy1dTWk23w+3mun4yhTJlA5coUhYkjzooZuQ4Ag/0iiPRu96kOuL1+ZCXZUZTO3YJGwKKfKMKUldhZ+cmIt/NEDYXHjLxkJNgt6HR5cKShS3Q4RBHn9flDzdZ4CwqF05nNUYmM4MwbpSSJ5/mNgEU/UYTxzBRFgtVswoKiwM4RDlTJCA7WOdE94EVSjAVTxrDTNIXPmceleCMKGUFobMqt/YbBop8ogmRZ5oOVIka5V5fn+skIlGdpaXEazOw0TWE0Z2wKbBYTmroGUNnaKzocoojq6vfgwOlOAFyQMhIW/UQRdKK5B609A4ixmjC7IFl0OKQzypVlu6oDZ/OI9Gxr6Dw/J1ApvGKsZswdmwJgcHKJSK92VLbDLwOF6fEYkxwrOhyKEh4wNgibzYb/+I//EB2G4SgrsJePS4XdYhYcjfoxT0dmQlYC0uJtaOt1Y19tJ+YVslFkNDBPo6/f48Ou6kCnaaWJJZ0fc3TkFhanYevJNpSdbMW9C8aKDscQmKdiKDdKlXKV31C40k8UQWduRyUKN0mSQrnFrtOkZ3tqOjDg9SMz0Y7ijATR4ZAOlQZ3kJTxRhTSubLg2JQNUY2FRT9RhHh9fmyr5IOVIkvZ6swtqaRnWysGG6Ky0zRFwow8B+JtZnS4PChv5I0opE+tPQM42tgNAKFmwGQMLPoNwuv14o033sAbb7wBr9crOhxDOFzfhe5+LxJjLJgWvAOYLox5OnJKE569NR3oc/sER2MMzNPo43n+kWGOjpzVbAodkSrjJGpUME+jT8ntyTlJSEuwC46GoolFv0H4/X4cOXIER44cgd/Phl/RoJyZWlDETtPDxTwdubFpcRjjiIHHJ2PXqXbR4RgC8zS6uvs92H/aCQBYyPP8w8IcHR3unIou5mn0DU6g8llqNCz6iSJEmU3lg5UiKXCunwNV0q+d1e3w+WUUpMYhLyVOdDikY0qPlO2VbfD4WISS/ijjBDZENR4W/UQRMOD1YWd1YNVVuVaNKFIWhpr5segn/dlSwUEqRceUnCQ4Yq3odftwsM4pOhyisDrd4cKpNhfMJgmXj+N5fqNh0U8UAXtOdaLf40d6gh0lmew0TZGlbHk+eLoTzj6P4GiIwmvwFhROoFJkmUwSSosCz1Oe6ye9UZ6lM/McSIyxCo6Goo1FP1EElJ1xZoqdpinSchyxKEqPh18GdlTxXD/pR1vPAMobAp3UlWKMKJKUHSW8BpX0ZmsFG6IaGYt+ogjYwvP8FGWlxRyokv5sqwxMYk3MSkRGIjtNU+QpO0p2VXeg38MbUUgfZFkOrfSzIaoxsegnCrOeAS/213YC4Hl+ih5l5p5bUklPlFtQOEilaCnOiEdmoh0DXj/21nSKDocoLE629KC5ewB2iwmXFaSIDocEsIgOgKLDarXiscceC71NkbOzqh1ev4z81Fjkp7LT9EgwT0dvQVGgKc/Rxm609gwgnffvRgzzNHoGb0HhBOpIMEdHT5IkLCxOwzv76rH1ZGtoFxWFH/M0epRV/rnjUhBjNQuOhkTgSr9BSJIEm80Gm83GM+YRFroDtYiD1JFino5eWoIdk7ITAQDbKrnaH0nM0+io7+xDVWsvTBIwv4idpkeCOXppFvIa1KhgnkbPFp7nNzwW/URhplwvxe2oFG0cqJKeKHk8PS8ZSew0TVGkrO7vr+1Ez4BXcDREl8bnl0P9UdhryrhY9BuE1+vFO++8g3feeQdeL3+BRUpHrxtHlE7TfLCOGPP00ii/zHmuP7KYp9GhdJpexGfpiDFHL01+ahzyU2Ph9cvYWc0bUSKFeRodR+q74OzzINFuwfRch+hwSBAW/Qbh9/uxf/9+7N+/H36/X3Q4ulUW3FY9ISsBmYkxgqPRHubppZlXlAqTBFS19qK+s090OLrFPI08WZYHm/hxO+qIMUcvnXJEj5OokcM8jQ7l2On8olRYzCz9jIr/54nCaCsHqSRQUowV0/OSAXCLP2lbZWsvmroGYDObMHccO01T9ClH9HgNKmmdco10KcemhsainyiMtirn+bkdlQRRco8DVdIyZWv/ZWOT2WmahFCO6B2u70Knyy04GqLRcXv92FkVOKKyiL2mDI1FP1GYNDj7UBnqNM0HK4mxqHhwS6osy4KjIRodZafKIq5MkSCZiTEoyUyALCPUBI1Ia/bVdqLP40NavA0TMhNFh0MCsegnChNllX96rgOOWHaaJjHmjE2BzWxCg7Mf1W0u0eEQjZjfL4f6o/AWFBJpsDkqd06RNim7/kqL02Ay8VpEI2PRTxQmW3lmilQg1mbG7IJkANziT9p0pKELnS4P4m1mzAj2qCASQfl9voU9UkijBo+dcmxqdCz6icJAluVQgcUzUySa8sudzfxIi5Rn6bzCVFjZaZoEWlCUCkkCKpp70NzVLzocohFxub3YW9sBgGNTAiyiA6DosFqt+N73vhd6m8Krus2FBmd/oNP02FTR4WgW8zQ8Fo5Pw68/BradbIPfL3NLX5gxTyMrdJ5/PFemRos5Gh7JcTZMHZOEQ3VdKKtsw82zckWHpCvM08jaWd0Bj09GbnIsClLjRIdDgnEK3SAkSUJ8fDzi4+MhSSwAwm1LsNP07IJkxNrYaXq0mKfhMTMvGbFWM9p63Tje3C06HN1hnkaO2+vHjmCn6VLegjJqzNHwCe2cquDOqXBjnkbW4DXSafz3JRb9ROEw+GDlyhSJZ7OYcHlhYMcJB6qkJQdOd8Ll9iElzorJ2UmiwyEKTT5trWSPFNKW0Hl+bu0nsOg3DK/Xi/fffx/vv/8+vF6v6HB0xe+XURbajsoH66VgnoaP0nWazfzCj3kaOVsqlIao7DR9KZij4XP5uFRYTBJq2/tQ284bUcKJeRo5TpcHh+qdALggRQEs+g3C7/dj165d2LVrF/x+v+hwdKW8sQsdLg/i2Gn6kjFPw0cp+rdXtsPr479lODFPI4e7psKDORo+CXYLZuYnA0Bogp/Cg3kaOWWVbZBloDgjHllJMaLDIRVg0U90iZRBwLzCVNgs/JEidZg6xoGkGAu6B7w4VN8lOhyii+pz+7C3phPA4KQVkRos4s4p0piy0I1SnEClAFYoRJdI6TTNQSqpidkkYUERB6qkHbtOtcPt8yM7KQaF6fGiwyEKKT3jGlRZlgVHQ3RxWzg2pc/QXNH/7LPPorCwEDExMZgzZw42bdp0wddv2LABc+bMQUxMDIqKivD888+f85q33noLU6ZMgd1ux5QpU/D2229HKnzSGY/Pj+2VyoOVs6mkLsove25JJS0ITaCOZ6dpUpfZBcmwW0xo7h7AyZZe0eEQXVBzVz8qmnsgSQhN/hNpquh//fXX8fDDD+NHP/oR9u7diyVLluC6665DTU3NkK+vqqrC9ddfjyVLlmDv3r344Q9/iG9/+9t46623Qq8pKyvDXXfdhXvvvRf79+/Hvffei89//vPYvn17tL4t0rCDdU70un1wxFoxJYedpkldFga39e2sbseA1yc4GqILG9w1xQlUUpcYqxlzx6UA4M4pUr+y4GLU1DFJSI6zCY6G1GLERf/HH3983r/7/e9/f0nBXMyvfvUr3Hfffbj//vsxefJkrFq1Cvn5+XjuueeGfP3zzz+PgoICrFq1CpMnT8b999+Pr33ta3j66adDr1m1ahWuvvpqPPbYY5g0aRIee+wxXHXVVVi1alVEvxfSh60VgV/+pUXsNE3qU5KZgPQEG/o9fuwLnpUmUqOufg8Onu4EwO2opE7KZBSvQSW1C13VxwlUOsOIi/4bbrgB3/3ud+F2u0Pva2lpwU033YTHHnssrMGdye12Y/fu3Vi5cuVZ71+5ciW2bt065MeUlZWd8/prrrkGu3btgsfjueBrzvc5ic505nZUIrWRJOmss6hEarWjsh1+GShMj8eY5FjR4RCdo1Q5LlXZBr+f5/pJvbZWBhekOIFKZ7CM9AM2btyIe++9Fx9//DH+/Oc/o7q6Gl/72tcwZcoU7N+/PxIxAgBaW1vh8/mQlZV11vuzsrLQ2Ng45Mc0NjYO+Xqv14vW1lbk5OSc9zXn+5wAMDAwgIGBgdB/d3WpvzO21WrFd77zndDbdOn6PT7sOtUBgCtT4cI8Db+FxWn4x/56lJ1swyNXi45GH5in4bflJAep4cQcDb8ZuQ4k2C1w9nlwpKEL03IdokPSPOZp+NW2u1Db3geLScK8camiwyEVGfFK//z587F3717MmDEDc+bMwa233orvfve7WLduHfLz8yMR41k+29xHluULNvwZ6vWfff9IP+eTTz4Jh8MR+hON7/tSSZKE5ORkJCcns0FSmOyp6YDb60dGoh3FGQmiw9EF5mn4KRNSe2s74HJ7BUejD8zT8Ctjp+mwYo6Gn8VswrzCQBHF5qjhwTwNPyU3Z+UnI94+4rVd0rFRNfI7duwYdu7ciby8PFgsFhw9ehQulyvcsZ0lPT0dZrP5nBX45ubmc1bqFdnZ2UO+3mKxIC0t7YKvOd/nBIDHHnsMTqcz9Ke2tnY03xJp3JmDVP6yIrUqSI1DbnIsPD4ZO6s7RIdDdI7WngEcbewGwE7TpG7KpBSb+ZFaKbumOIFKnzXiov//+//+P5SWluLqq6/GoUOHsHPnztDKf1lZWSRiBADYbDbMmTMHa9euPev9a9euxcKFC4f8mNLS0nNev2bNGsydOze0jeh8rznf5wQAu92OpKSks/6onc/nw5o1a7BmzRr4fOziHQ7KGelFbJQSNszT8Auc6+dANZyYp+G1LdhpelJ2ItIT7IKj0QfmaGQoz9IdVe3w+PyCo9E+5ml4ybIcGpuWcmxKnzHiov+ZZ57BO++8g9/+9reIiYnB1KlTsWPHDtx2221Yvnx5BEIc9Oijj+LFF1/Eyy+/jPLycjzyyCOoqanBgw8+CCCwAv/lL3859PoHH3wQp06dwqOPPory8nK8/PLLeOmll/C9730v9JrvfOc7WLNmDX7xi1/g6NGj+MUvfoGPP/4YDz/8cES/l2jz+XwoKytDWVkZH6xh0DPgxf7aTgA8gxpOzNPIWBRsNMktqeHBPA0vXtUXfszRyJicnYSUOCt63T4cOO0UHY7mMU/D62RLD1q6B2C3mDC7IFl0OKQyIz7scfDgQaSnn/2L2Wq14qmnnsKNN94YtsCGctddd6GtrQ0//elP0dDQgGnTpmH16tUYO3YsAKChoQE1NTWh1xcWFmL16tV45JFH8N///d8YM2YMfvOb3+D2228PvWbhwoX4y1/+gh//+Mf4t3/7NxQXF+P111/H/PnzI/q9kLbtrGqH1y8jPzUW+alxosMhuqDSosAz+1CdE06XB444Nkwi9eB5ftIKkymwc2r1wUaUnWzFnLEpokMiClEmUOeOS0GM1Sw4GlKbERf9ny34z7Rs2bJLCmY4HnroITz00END/t0rr7xyzvuWLVuGPXv2XPBz3nHHHbjjjjvCER4ZhLJNemERV6ZI/bIdMSjKiEdlSy+2V7Vh5dRs0SERAQDqO/tQ1doLkwTMK2KnaVK/0uJ0rD7YiK0n2/DNK0tEh0MUsrWCu6bo/EbVyI/I6ELbUcdzZYq0YbABFbf4k3oo+Tg9LxlJMdyBQuqnPEt3nepAv4db0kkd/H4ZZZXcNUXnx6KfaIQ6et040tAFAChlp2nSCGXmn+f6SU22stM0aUxRejyykuxwe/3Yc4o3opA6HGnogrPPgwS7BdNzHaLDIRVi0U80Qtur2iDLQElmAjKTYkSHQzQsylVox5q60dI9IDgaokCnaZ7nJ62RJCk0icqdU6QWygTq/MJUWMws7+hczAqiEdrKQSppUGq8DZNzAteLKlsAiUSqbnOhwdkPm9mEuWN5np+0Q7m1ZwuvQSWVGLyqj2NTGtqIG/mRNlmtVnzjG98IvU2jxztQI4d5GlkLi9NQ3tCFspOt+NzMMaLD0SzmaXgoK1OzC5IRa2On6XBijkaWMul/4LQT3f0eJLIfxagwT8PD4/NjR1U7ADbxo/PjSr9BSJKEzMxMZGZmQpIk0eFoVnNXPyqaeyBJwAJ2mg475mlkLQo2ntxSwZX+S8E8DY/BXVMcpIYbczSy8lLiMDYtDj6/jJ3V7aLD0SzmaXgcON0Jl9uHlDgrJmUnig6HVIpFP9EIKIPUqWOSkBxnExwN0chcPi4VZpOEmnYXattdosMhA/P7zzjPz1tQSIOU1X5OopJoylV9pcVpMJk4eUJDY9FvED6fD+vXr8f69evh8/GKmdEa7DTNlalIYJ5GVmKMFTPzAl192cV/9Jinl+5YUzfae92ItZoxMy9ZdDi6wxyNPGUcsKWC5/pHi3kaHtw1RcPBot8gfD4fNmzYgA0bNvDBegnYKCWymKeRt2h8cKDKBlSjxjy9dMqz9PLCVNgsHIqEG3M08pRxwNHGbrT18EaU0WCeXrp+jw+7awJXR7LBNF0If9MSDVNtuwunO/pgMUmYN47n+UmblIHq1pNtkGVZcDRkVGXBSadFHKSSRqUn2EPnp3kjComy+1QH3F4/spNiUJgeLzocUjEW/UTDpGztn5WfjHg7L74gbbqsIAV2iwkt3QOoaO4RHQ4ZkNfnx/ZKdpom7Rvc4s+in8QYPHaaxmaIdEEs+omGafDMFFemSLtirGZcHtypwrOoJMKh+i50D3iRFGPBlDFJosMhGjXlRpQyHpciQXjslIaLRT/RMMiyfMaDlStTpG1nbvEnijZlZWpBURrM7DRNGjavMHAjSnWbC3WdfaLDIYPp7vfgwGknABb9dHEs+omGoaK5By3dA7BbTJhdkCw6HKJLojTz21bZBp+f5/opupTrpbhrirQuMcaKGcEbUbZy5xRF2c7qdvj8MsamxSEvJU50OKRyLPqJhkFZEZ07LgUxVrPgaIguzbQxSUiMsaCr34tDdU7R4ZCBDHh92FkdPM8/nrumSPsWcucUCbKlglf10fCxG5lBWCwW3H///aG3aWQGG6XwwRpJzNPosJhNmF+Yho/Lm7D1ZBtm5ieLDklTmKejt7emEwNeP9IT7CjJTBAdjm4xR6NnUXE6/vvTk9hS0QpZltlMbQSYp5eGvaZoJPgTZhAmkwm5ubmiw9Akn1/GtlCnaT5YI4l5Gj2LxitFfyu+sbxYdDiawjwdvTMHqSyOIoc5Gj2XjU2BzWJCc/cATrb0Yjwns4aNeTp67b1ulDd0AQj0RyG6GG7vJ7qI8oYuOPs8SLBbMD3XITocorBQzvXvrG7HgNcnOBoyirIzrpci0oMYqxlzx6YAGNwVSBRp2yoDE6gTsxKRkWgXHA1pAYt+g/D5fNiyZQu2bNkCn48D/JFQfonPL0yFxcwfmUhinkZPSWYC0hPs6Pf4sbemU3Q4msI8HR2X2xvKNR6ViizmaHQpk6i8BnVkmKejp4xN2bWfhosVjEH4fD58/PHH+Pjjj/lgHSHegRo9zNPokSRpsAEVB6ojwjwdnZ3VHfD6ZeQmxyI/NVZ0OLrGHI0u5Vm6rbKdN6KMAPN09Hien0aKRT/RBbi9fuyoUs7zc2WK9GXReHadpuhRJpd4np/0ZnquA4l2C5x9Hhyp7xIdDulco7MflS29MEnAfJ7np2Fi0U90AQdOd8Ll9iE13oZJ2YmiwyEKK2Uia19tJ3oHvIKjIb1TJpcW8ao+0hmL2YT5RakAgC08108Rpmztn57rgCPWKjga0goW/UQXENraX5QGk4krU6Qv+alxyE+Nhdcvh3a0EEWC0+XBoXonAB6VIn0qDU6icucURdrgsVNOoNLwsegnugA2SiG9WxQaqHJ1iiJnW1UbZBkozohHVlKM6HCIwk45LrWzqh1ur19wNKRXsiyjjOf5aRRY9BOdR7/Hhz2nOgHwwUr6pUxobang6hRFzuAglStTpE8TsxKRFm9Dn8eHvTUdosMhnappd6Gusw9Ws4S541JEh0MawqKf6Dx2n+qA2+dHdlIMCtPjRYdDFBFKEXakoQsdvW7B0ZBeKTtJOIFKeiVJUmgSlVv8KVKU3Jqdn4I4m0VwNKQlzBaDsFgs+MpXvhJ6my7uzEEqO01HB/M0+jIS7ZiQlYDjTT0oq2zD9dNzRIekeszTkWnu7sfxph5IErCAnaajgjkqxqLx6XjvQAO2nmzFI1dPEB2O6jFPR47XSNNo8SfMIEwmE8aNGyc6DE3hgzX6mKdiLCxOx/GmHmypaGXRPwzM05FRtvZPyUlCSrxNcDTGwBwVQ+mRsremEy63lyuxF8E8HZnAef7AghRvQaGR4vZ+oiF093tw4HSg0/RCPlhJ55TBQxm3pFIEsOkUGUV+aixyk3kjCkXG8aYetPa4EWM1YVZ+suhwSGNY9BuEz+fDjh07sGPHDvh8PtHhqN6Oqnb4/DLGpcUhNzlWdDiGwTwVY15hKkwSUNnaiwZnn+hwVI95OjJb2cQv6pijYkiSFOriz3P9F8c8HRnl2Onl41Jhs7CEo5FhxhiEz+fDBx98gA8++IAP1mHg1n4xmKdiOGKtmJ6XDIBd/IeDeTp8te0u1LS7YDZJuLwwVXQ4hsEcFWchr0EdNubpyHAClS4Fi36iIWyp4JkpMpZFoa7THKhS+Cj5NDPPgQQ7zzeT/inHWA7Xd6HTxRtRKDy8Pj+2VfKoFI0ei36iz2ju7sfRxm4AnE0l4witTlW0QZZlwdGQXmwO7hxZXJIhOBKi6MhMikFJZgJkmX1SKHwO1jnR3e9FUowF03IdosMhDWLRT/QZyi/pqWOSkMpO02QQc8elwGYxobGrH1WtvaLDIR3w+2VsDe6aWsxdU2QgC4t5rp/CS9mBurA4HWYTr5GmkWPRT/QZm09wkErGE2M1Y05BCgBgCweqFAbHmrrR1utGrNXMTtNkKMqtP1t4XIrCZLNy7LSEY1MaHRb9RGeQZXlwNpVFPxlMaHWqggNVunTKs3R+ETtNk7EsKEoL3IjS0otGZ7/ocEjjXG4v9pzqBMAFKRo9/hYmOkN1mwv1zn7YzCZcPi5FdDhEUaVMdJVVtsHv57l+ujSbubWfDMoRaw2du2ZzVLpUO6s74Pb5kZsci3FpcaLDIY1iK12DsFgsuPvuu0Nv09CUQeplY5MRZ+O/U7QxT8VSOqx3ujw40tDFZkHnwTy9OLfXj+2V7QB4C4oIzFHxFhan48BpJ7ZUtOG2y/JEh6NKzNPhGbxRKg2SxPP8NDr8CTMIk8mECRMmiA5D9bbwPL9QzFOxLGYT5hWmYt3RZmw92cqi/zyYpxe3t6YDfR4f0hNsmJiVKDocw2GOirewOA3PbziJspOtkGWZxdoQmKfDw2ukKRy4vZ8oyOeXQ9vw+GAlo2LXaQqHMztNm9hpmgzo8nGpsJlNqHf2o7rNJToc0qj2XjcO13cB4DXSdGlY9BuEz+fDvn37sG/fPvh8PtHhqNKhOie6+r1IjLFgOlc4hWCeiqdMeO2oaofb6xccjToxTy+O5/nFYo6KF2szY3ZBMoDBSTA6G/P04pTFqEnZichItAuOhrSM2/sNwufz4d133wUATJkyBWazWXBE6qNcrVNalAaLmfNhIjBPxZuYlYjUeBvae904cLoTc8elig5JdZinF9bd78H+004AwMLxaYKjMSbmqDosLE7H9qp2lJ1sw5cWjBUdjuowTy+OW/spXFjZEAXxwUoEmEwSSoNb/LdUcIs/jdz2ynb4/DLGpcUhL4Wdpsm4Fo1Xjku18kYUGhXumqJwYdFPBKDf48PO6g4ALPqJFgXPDXJLKo3GZk6gEgEAZuYnI95mRkfwRhSikahpc6G2vQ8Wk4R5hdx1R5eGRT8RgF3VHXB7/chOikFxRrzocIiEWlISKNb21HSgZ8ArOBrSmi1cmSICAFjNJiwoCqz2bzrBSVQamdA10gUpiLfzRDZdGhb9RDh7ZYrX6pDR5afGoSA1Dl6/jO2V3OJPw9fU1Y8TzT2QJISOiRAZ2eLgJOrmihbBkZDW8NgphROLfiKcsTJVwkEqETA4UOXqFI2E8iydnutAcpxNcDRE4ik7p3ZWd6Dfww71NDz+M66R5tiUwoFFPxlep8uNQ/WBTtOLeAcqEQBgyXhldYpFPw0fz/MTna04IwHZSTFwe/3YWd0uOhzSiCMNXehweRBvM2NGXrLocEgHeEDEICwWC+64447Q2zSo7GQbZBkoyUxAZlKM6HAMjXmqHguL02GSgIrmHjQ4+5DjiBUdkmowT4cmyzK2Bm984ASqWMxR9ZAkCYtL0vHm7tPYfKIVS0oyRIekGszT81N2TS0oSoOV10hTGPAnzCBMJhOmTp0qOgxV4sqUejBP1cMRZ8X0vGTsr+3E5hOtuHNuvuiQVIN5OrSTLb1o7OqHzWLC3HEposMxNOaouiwJFv2bTrTiMdHBqAjz9Pw4NqVw49QRGR47TRMNjVv8aSSUZ+nl41IQYzULjoZIPZTC7UhDF1p7BgRHQ2oXuEY6cBRE6a9DdKlY9BuE3+/H4cOHcfjwYfj9ftHhqEZtuwvVbS6YTRLmF/EOVNGYp+qiDDa2VLTC75cFR6MezNOhcWVKPZij6pKeYMfknCQAg5NjxDw9nz01Hej3+JGRaEdJZoLocEgnWPQbhNfrxZtvvok333wTXi/v3VYonVFn5ScjMcYqOBpinqrLZQUpiLOZ0drjxtHGbtHhqAbz9Fxenx/bTgbO83PXlHjMUfVRuvhv5o0oIczToZ25A5XXSFO4sOgnQ9usNJ3iIJXoHDaLCfMLAztgeMc0XciBOie6B7xwxFoxdYxDdDhEqrP4jONSssydU3R+HJtSJLDoJ8Py+2Vs5Xl+ogtaHOw0vYmrU3QBW4L5sbA4DWYTV6aIPmteYSpsFhManP042dIrOhxSKWefBwdPdwIAFo1PExsM6QqLfjKsY03daOt1I9Zqxqz8ZNHhEKmSsiV1R1U7+j0+wdGQWm0JHpVayAlUoiHFWM24PHirxeYT3DlFQ9tW2Qa/DBRlxPOqXAorFv1kWJuCv3TnFwVm34noXCWZCchKsmPA68fuUx2iwyEVcrm92HOqEwB3TRFdyOLxgZ1TvBGFzkfp+bComM9SCi9WOmRYynblpcHty0R0LkmSQucKucWfhrKtsg1unx95KbEYlxYnOhwi1VJ2Tm2rbIfHx271dC5lQWoJr+qjMGPRT4bU7/Fhe1XgDtSlE/hgJbqQUNdpNvOjIWw8HpgMWlKSwU7TRBcwJScJKXFW9Ax4sa+2U3Q4pDI1bYFrpC0mCaXFPM9P4WURHQBFh9lsxs033xx62+i2V7XD7fUjxxGD4gzegaoWzFN1Ulb6D9d3ob3XjdR4m+CIxGKenk1ZmVrGCVTVYI6qk8kkYeH4dLx/oAGbTrTi8nGpokMSinl6to3BZ+llBSm8RprCjkW/QZjNZsyaNUt0GKqx6fjg9imuTKkH81SdMhNjMCk7EUcbu7GlohU3zRwjOiShmKeD6jr7cLKlFyYJKOUZVNVgjqrXkmDRv/lECx69eoLocIRinp5NmUDlDlSKBG7vJ0MKneefwPP8RMMRumOa5/rpDMoE6qz8ZDhiuTJFdDGLg8el9p92oqvfIzgaUguPz4+tFW0AAkeliMKNRb9B+P1+HD9+HMePH4ffb+zmMU1d/TjW1A1JYndUtWGeqtfi0Ln+VsiyLDgasZingziBqk7MUfXKS4lDYXo8fH4ZZSfbRIcjFPN00P7aTnQPeJEcZ8W0XIfocEiHWPQbhNfrxWuvvYbXXnsNXq9XdDhCbQyuTM3IdSDF4GeT1YZ5ql7zC9NgM5tQ19mHqtZe0eEIxTwN8Pnl0NVjXJlSF+aounHnVADzdNDGYC4sHp8Os4nHTin8WPST4XBlimjkYm1mzBmbAoB3TFPAgdOdcPZ5kBhjwcw8rkwRDdeZO6eIgMEFKV4jTZHCop8Mxc+VKaJRUwaqmwy+OkUBm85YmbKYOZwgGq7S4jSYTRKqWntxusMlOhwSrNPlxoHTnQCAJWziRxHC39JkKEcaAleOxdvMmF2QLDocIk1RtqRuO9kGr8/Y5y9pcGWKE6hEI5MUYw3tjtnC1X7D21LRBr8MlGQmIMcRKzoc0ikW/WQoG4KD1NLidFi5MkU0ItNyHXDEWtE94MX+4KoEGVNXvwd7azsBBK4+JaKRWRycLNvInVOGp1zVxwlUiiRWPWQoyoN1GbdPEY2Y2SSFVvs3HOdA1ci2VrTB55dRlB6P/NQ40eEQac7S4GTZlopW+PzGvhHFyGRZDh2V4tZ+iiQW/WQYvQNe7D7VAYCzqUSjtTQ4KFG2dpMxDa5McZBKNBqz8pORGGNBp8sTOs9NxnOypRd1nX2wmU1YUJgmOhzSMYvoACg6zGYzrrvuutDbRrStsg0en4z81FiMTePKlBoxT9VPufVi/+lOdPS6DXntJfN0sIkfJ1DViTmqfhazCYvHp+ODQ43YcLwFswtSRIcUdczTwQnUywtTEGsz5r8BRQeLfoMwm82YN2+e6DCECl3VV5IBSeIdqGrEPFW/HEcsJmYl4lhTNzZVtOJzM8eIDinqjJ6n1a29qGl3wWqWUFrMlSk1MnqOasWyCRn44FAjNh5vwcMrJogOJ+qYp2ePTYkiidv7yTA2slEKUVgsmxj4GdpwjFv8jUhZmbqsIAXxdq4dEI2WsnNqX20nOl1uwdFQtA14fSg72QaAY1OKPM0U/R0dHbj33nvhcDjgcDhw7733orOz84IfI8syHn/8cYwZMwaxsbFYvnw5Dh8+HPr79vZ2fOtb38LEiRMRFxeHgoICfPvb34bT6YzwdxN9fr8f1dXVqK6uht9vvKu2Tne4UNnSC7NJwsLxXJlSK6PnqVYsm6B0nW6BLBuvAZXR81TpNq4ULKQ+Rs9RrRiTHIsJWQnwy8BmA17dZ/Q83X2qA30eH9IT7JiUnSg6HNI5zRT999xzD/bt24cPP/wQH374Ifbt24d77733gh/zy1/+Er/61a/wu9/9Djt37kR2djauvvpqdHd3AwDq6+tRX1+Pp59+GgcPHsQrr7yCDz/8EPfdd180vqWo8nq9ePXVV/Hqq6/C6/WKDifqlO1Ts/OTkRRjFRwNnY/R81Qr5o5LQazVjJbuAZQ3dIsOJ+qMnKcenz+0MsXtqOpl5BzVGmUS1Yg7p4yepxuPK1v702Ey8dgpRZYmiv7y8nJ8+OGHePHFF1FaWorS0lK88MILeO+993Ds2LEhP0aWZaxatQo/+tGPcNttt2HatGl49dVX4XK58Oc//xkAMG3aNLz11lu46aabUFxcjCuvvBI///nP8Y9//MOQDx894x2oROFjt5hDZ7k3sIu/oeyt6UTPgBcpcVZMHZMkOhwizVs2IRNA4FlqxJ1TRhYam/KqPooCTRT9ZWVlcDgcmD9/fuh9CxYsgMPhwNatW4f8mKqqKjQ2NmLlypWh99ntdixbtuy8HwMATqcTSUlJsFh4TlEvfH4Zm3kHKlFYhVanjjcLjoSiSRmkLi7J4MoUURjMHZeCGKsJzd0DONpovJ1TRtXaM4DD9V0AgMXjuSBFkaeJor+xsRGZmZnnvD8zMxONjY3n/RgAyMrKOuv9WVlZ5/2YtrY2/OxnP8PXv/71C8YzMDCArq6us/6Qeu0/3Ymufi+SYiyYkesQHQ6RLihF/67qDvQMcGeUUWwM7uxYWsIJVKJwiLGaUVoU2Dm1kTunDENZjJqSk4SMRLvgaMgIhBb9jz/+OCRJuuCfXbt2AcCQV6zJsnzRq9c++/fn+5iuri7ccMMNmDJlCv7jP/7jgp/zySefDDUUdDgcyM/Pv9i3SgKtPza4td9i1sQ8F5HqjUuPx9i0OHj9MrYasAGVEbX1DOBAXaDRLY9KEYXP4M4pFv1Gofy/5g5UihahFdA3v/lNlJeXX/DPtGnTkJ2djaampnM+vqWl5ZyVfEV2djYAnLOq39zcfM7HdHd349prr0VCQgLefvttWK0XbvT22GOPwel0hv7U1taO5NumKFt/LLD9ePlEDlKJwunMLv6kf4HbGoDJOUnIdsSIDodIN5ZNDOxm3Vndjl7unNI9v18OFf1XTDx3JzNRJAg9uJ6eno709IvPcJWWlsLpdGLHjh2YN28eAGD79u1wOp1YuHDhkB9TWFiI7OxsrF27FrNnzwYAuN1ubNiwAb/4xS9Cr+vq6sI111wDu92Ov//974iJufhAxm63w27nVhwtaOkewIHTgZWpZSz6icJq2YQM/F/ZKaw/1jKsnVekbZ8eVQapfJYShdO4tDgUpMahpt2FspNtWDFl6AUt0ocDdU6097qRaLdgztgU0eGQQWiiW93kyZNx7bXX4oEHHsDvf/97AMA///M/48Ybb8TEiRNDr5s0aRKefPJJ3HrrrZAkCQ8//DCeeOIJlJSUoKSkBE888QTi4uJwzz33AAis8K9cuRIulwt//OMfzzqfn5GRAbPZHP1vNkLMZjNWrFgRetsolPNx03KTkJnIlSm1M2qeatWCojTYzCac7uhDVWsvijISRIcUFUbMU59fDu3oWM6VKdUzYo5qmSRJWDYhA3/YdgobjrcYpug3ap5+ejSwA3VxSTqsPHZKUaKJoh8A/vSnP+Hb3/52qBv/5z73Ofzud7876zXHjh2D0+kM/ff3v/999PX14aGHHkJHRwfmz5+PNWvWIDExEQCwe/dubN++HQAwfvz4sz5XVVUVxo0bF8HvKLrMZjMWLVokOoyoWx8s+pdP4CBVC4yap1oVb7dg7rgUbD3Zhg3HWwxV9BstT/fVdqLT5UFijAWXFSSLDocuwog5qnVLg0X/+uPNhtk5ZdQ8DY1NuWuKokgzRX9qair++Mc/XvA1n73fVJIkPP7443j88ceHfP3y5ct5J6qOeX3+0Er/FZP4YCWKhGUTMkJF/z8tKhQdDkXIhmBvlKVsiEoUEaXFabCaJdS296G6zYXC9HjRIVEEtPUM4MDpTgDcNUXRxd/cBuH3+1FXV4e6ujr4/X7R4UTF/tOdcPZ54Ii1YlY+z0xpgRHzVOuUXhnbKtvQ7/EJjiY6jJinnx7jypSWGDFHtS7BbsHcsakAjHN1nxHzVGmIOiUnCVlJPHZK0cOi3yC8Xi9efPFFvPjii/B6jdEZVmk6tXRCBswm/W+T0wMj5qnWTcxKRFaSHf0eP3ZWt4sOJyqMlqct3QM4WMeGqFpitBzVC+XnS7l1SO+MmKfK2JQTqBRtLPpJt9YfD17VN4EPVqJIURpQAYODGdKXDWyIShQVyrO0zEA7p4zkzIaoV0zi1n6KLhb9pEvN3f04VBe4iYErU0SRpdwz/KlBVqeMRll1ZENUosialJ2IHEcM+j1+lJ1sEx0OhZnSEDUpxoLZ+cmiwyGDYdFPurQheP50Rp4D6Ql2wdEQ6Vvg2iEJVa29qGzpER0OhREbohJFjyRJoRXgdUc5iao3ygTqkglsiErRx4wjXVp/jPdJE0VLYowV8woDDag4UNWXfbWd6Or3siEqUZRcOXGw6OcNU/oSGpvy2CkJwKKfdMfr84fOTLFRClF0cIu/Pin/P9kQlSg6Fo5Pg81iQl1nH040c+eUXjR397MhKgnFop90Z09NJ7r7vUiJs2JmXrLocIgM4crgltQdVe3oGTBGF2Yj4MoUUXTF2SwoLUoDwJ1TerLxeCsAYHqugw1RSQiL6AAoOsxmM5YtWxZ6W8/Wc2VKs4yUp3pTlJGAcWlxqG5zYfOJFlw7LUd0SBFjlDxt7urH4Xo2RNUio+SoXl01ORMbjrdgXXkzHlxWLDqciDFSniq7prgDlURh0W8QZrMZy5cvFx1GVHx6jFv7tcpIeapHV07KwstbqvBJebPui34j5On642yIqlVGyVG9ChyXOozdNR1wujxwxFlFhxQRRslTr8+PTcfZa4rE4vZ+0pVGZz/KG7ogScDSEhb9RNGkbPH/9FgL/H42oNK60FV9HKQSRVV+ahxKMhPg88vYEOxRRNq1N9gQNTnOilm8qo8EYdFvELIso7m5Gc3N+u4Gq2yfmpGXjDSuTGmOUfJUr+YVpiLeZkZrzwAO1TtFhxMxRshTj8+PTScCZ1C5a0p7jJCjeheaRNXxuX6j5Kny/3BpCY+dkjgs+g3C4/Hgueeew3PPPQePxyM6nIj5pLwJAHDVJK5MaZFR8lSvbBYTFpekA9B3Ayoj5OnOqnZ093uRFm9jQ1QNMkKO6t0VwXHM+mPN8Ol055RR8vST8sDvwysmcQKVxGHRT7rR7/Fhc0VgZeqqySz6iUS4alIWAH0X/UbwcWiQmsmVKSIB5oxNQVKMBR0uD/bVdogOh0aptt2FY03dMEnA8gkcm5I4LPpJN7ZUtKLf48cYRwym5CSJDofIkJYHVzIOnHaiubtfcDQ0GrIs45OjgV1TKziBSiSE1WzC0uBVmZxE1S5lB+rccalIibcJjoaMjEU/6YayMnXl5ExIElemiETITIzB9FwHgME73klbTrb04FSbCzazCUvYEJVIGOVc/7qjfJZq1SfBCRtOoJJoLPpJF2RZxrrgytRVk7MER0NkbFcYoAGVnikTqAuK0xBv582+RKIsm5ABSQLKG7rQ4OwTHQ6NUHe/B9sq2wBwbErisegnXThU14WmrgHE2cwoLUoTHQ6RoSmNNDedaIXb6xccDY2Ush2VK1NEYqUl2ENXvH3K1X7N2XSiFR6fjML0eBRnJIgOhwyORT/pwsfBQeri8emIsZoFR0NkbNNzHUhPsKNnwIud1e2iw6ERaO91Y/epQNOwK3kLCpFwV4W2+DcJjoRG6mPeKEUqwn17BmE2m1FaWhp6W28Gm05x+5SW6T1PjcJkkrB8Ygbe3H0an5Q3Y9H4dNEhhZWe8/TTo83wy8Ck7ETkpcSJDodGSc85ajRXTMrE02uOY3NFK/o9Pl0tbOg5T31+OXTEjVv7SQ1Y9BuE2WzGypUrRYcREY3Ofhyq64IkDZ4lJm3Sc54azYrJmXhz92msLW/Ev904WVfNNfWcp5xA1Qc956jRTMlJQm5yLOo6+7D5RCtWTNHPz6ae83RPTQc6XB4kxVgwd1yK6HCIuL2ftE8ZpM7MS0ZGol1wNEQEAEsnZMBuMaG2vQ/HmrpFh0PD4Pb6sfF4KwDgKp7nJ1IFSZJC/TXWHuEWf61QtvYvn5gJq5nlFonHLDQIWZbR2dmJzs5OyLIsOpyw+qSc16HohZ7z1GjibBYsDm7rX3tYXwNVvebp9qo29Ax4kZ5gx8y8ZNHh0CXQa44a1dVTsgEECkmfXz//P/Wcp8rYlBOopBYs+g3C4/HgmWeewTPPPAOPxyM6nLDpc/uwpUJZmdLPljej0mueGtXVwW2oa3S2OqXXPFUGqVdOyoDJpJ/jGEak1xw1qvlFqUiMsaCt1429NR2iwwkbvebpqbZeVDT3wGKSsHwCi35SBxb9pGmbK1ox4PUjNzkWk7ITRYdDRGe4anIWJAk4WOfkHdMqJ8tyaDsqz/MTqYvVbArdpsEt/ur3cXAC9fJxqXDEWQVHQxTAop807ePgL7+rJmfqqlEYkR5kJNpxWUGggdHHHKiq2vGmHpzu6IPNYsLiEn3dtkCkB2funNLbVni9+aR8cGxKpBYs+kmzfP7BlamVwfNuRKQuet3irzcfHW4EACwZn444Gy/2IVKbZRMyYDVLqGrtxcmWHtHh0Hl09LqxvaodwODvPyI1YNFPmrWruh1tvW44Yq2YX5QqOhwiGsLK4KBnW2Ubuvr1c2ZTbz48FCj6r5nKCVQiNUqMsaK0OLALh5Oo6vXJ0Wb4/DImZSdibFq86HCIQlj0k2Z9dHhw+xSvQyFSp6KMBBRnxMPjk7H+WIvocGgIte0uHGnogknidlQiNVNWjnmuX72UXVOcQCW1YaVEmiTLMh+sRBqhXDfFgao6Kc/Sy8elIi3BLjgaIjqfq4NNNvfVdqK5q19wNPRZLrcXG48HJrc5NiW14cE9gzCZTJg7d27oba07XN+Fus4+xFhNWFqSITocChO95SkFrJyahec3nMT6o81we/2wWbT9/1ZvebomuGvq2mkcpOqF3nKUArIdMZiZ58D+0058XN6Me+YXiA7pkugtTzcca8GA14/81FhMzuGNUqQuLPoNwmKx4IYbbhAdRtgoK1PLJmQg1mYWHA2Fi97ylAJm5SUjI9GOlu4BbKtsw9IJ2p6o01OetnQPYOepQNOplVyZ0g095Sid7eopWdh/2om1Rxo1X/TrLU9DO1CnZPNGKVId7U+rkSFxaz+RdphMElZM5h3TavRxeRNkGZie60BucqzocIjoIpTjUltOtqFnwCs4GlK4vX58crQZAHdNkTqx6DcIWZbR29uL3t5ezd/vWtXai+NNPbCYJFw1ideh6Ime8pTOplyrueZII/x+bf+/1VOeDk6g8lmqJ3rKUTrbhKwEjE2Lg9vrx/pjzaLDuSR6ytOyyjZ093uRnmDHZQUposMhOgeLfoPweDx4+umn8fTTT8Pj0fa1WcogdUFRGhxxVsHRUDjpKU/pbAvHpyHRbkFT1wD21naIDueS6CVPu/s92FrRBoC7pvRGLzlK55IkCddNywEAfHCwUXA0l0ZPeaqMTa+ekgWTiVv7SX1Y9JPmhFamuH2KSDPsFjNWBK+bWq3xgapefHqsBW6fH0UZ8RifmSA6HCIapuunB8Y/6442o8/tExwN+f1y6Ogat/aTWrHoJ01p6urH3ppOAMDKKdyOSqQl1wUHQx8cbND8Vk49OLM3CptOEWmH0oOjz+PDhuAVcSTO3toOtHQPIDHGgtKiNNHhEA2JRT9pyprgTOrsgmRkJcUIjoaIRmLphAzE28yod/Zj/2mn6HAMrd/jw/pg0ylu7SfSlsAW/+Ak6qEGwdHQh4cCE6hXTsrU/JW0pF/MTNKUjw6xaz+RVsVYzbhycmCHzgcHOVAVaUtFK3rdPmQnxWBGrkN0OEQ0QtdND5zr/6S8Gf0ebvEXRZZlfHQ4uLWfY1NSMRb9pBltPQMoqww0neKDlUiblNWp1Ye4xV+k94OTLtdMZdMpIi2anZ+M7KQY9Ax4sflEq+hwDOtwfRdq2l2wW0xYOiFDdDhE58WinzTjo8NN8PllTMtNwrj0eNHhENEoLJ+YgRirCbXtfThc3yU6HEMa8PqwNrgydePMMYKjIaLRMJmkUNO41dziL4wygXrlpEzE2y2CoyE6P2anQZhMJsycOTP0tha9f7AeAHDDdA5S9UoPeUoXFmez4IqJmfjgUCNWH2zANA1uLdd6nm463oruAS+ykuyYw/ukdUnrOUrDc/30HLyytRofH2mC2+vX3HlyreepLMt470BwbDojR3A0RBfGot8gLBYLbrnlFtFhjFpL9wDKTga29t/IB6tuaT1PaXium54TKvr/9ZqJmuscr/U8VVamrp+ew639OqX1HKXhmTM2BRmJdrR0D2DryVYsn5gpOqQR0XqeHqxzora9D7FWM66cpK1/ezIe7U2rkSF9eLgRfhmYmedAfmqc6HCI6BIoHY6r21w42tgtOhxD6ff4QvdJ3ziDu6aItMxskkI9jj442Cg4GuN570Bwa//kTMTZuI5K6sai3yBkWYbb7Ybb7dZk86z3uX3KELSepzQ8CXYLlgUbHmmxi7+W83TD8Rb0DHgxxhGD2fnJosOhCNFyjtLIXDc9UPR/dKQRHp9fcDQjo+U8lWUZ7weL/ps4NiUNYNFvEB6PB08++SSefPJJeDwe0eGMSHN3P7ZXtQMIbEcl/dJyntLIXB8cqL6vwaJfy3mqDFK5tV/ftJyjNDLzxqUiNd6GTpcH24I3HGmFlvN0b20n6jr7EGcza+5YBRkTi35SvQ8PNUKWgdkFychL4dZ+Ij24anIWbGYTTrb04mgju/hHQ5/bh4/L2bWfSE8sZhOuCW7xf2+/9iZRtUqZQF0xOQsxVrPgaIgujkU/qZ7yS+wGrvIT6UZSjBXLJga2+P99X73gaIxh/bFmuNw+5CbHYmae9m5NIKKh3TQzMD764FADBrw+wdHon98/uLWfzaVJK1j0k6o1Ovux8xS39hPp0eeCq83/OFCvufOcWvTewcFBqtZuTCCi85tfmIbMRDu6+r3YeLxVdDi6t6emA41d/Ui0W7A02J+GSO1Y9JOqfXCoAbIcuJZmTHKs6HCIKIxWTM5CnM2M2vY+7K3tFB2OrrncXqwrbwbArv1EemM2SaGf67/v586pSFO69l89hVv7STtY9JOqcfsUkX7F2sy4ekoWAG7xj7R1R5vR5/GhIDUO03KTRIdDRGH2uVmBov/jI01wub2Co9Evn1/G6uCuKd4oRVrCop9U63SHC7tOdUCSgOum8cFKpEfKFv/3DzbA5+cW/0j5x/7Ba0+5tZ9If2bmOTA2LQ59Hh/WHmkSHY5u7axuR3P3ABJjLFhSwq39pB0W0QFQdJhMJkyZMiX0tha8G1z5W1CYhmxHjOBoKBq0mKd0aZaUZMARa0VL9wC2VbZh0fh00SFdlNby1Ony4NOjLQCAm2dxa78RaC1H6dJJkoSbZozB7z6twD/21+PmWbmiQ7ooLebpO3vrAADXTs2GzaKNmIkAFv2GYbFYcOedd4oOY9hkWcbbwQfrrbPV/4uLwkNreUqXzmYx4frpOXhtRw3+vq9eE0W/1vJ09aEGuH1+TMpOxKRsbu03Aq3lKIXH52YFiv4Nx1vQ6XIjOc4mOqQL0lqe9nt8eD+4tf/Wyzg2JW3hFBWp0uH6LlQ098BmMeHa6dmiwyGiCFK2+PO6qcjgBCqRMUzISsSk7ER4fDI+PNQoOhzd+fRoM7r7vchxxGBBYZrocIhGhEU/qdK7+wKD1KsnZyEpxio4GiKKpHmFqchKClw3teFYi+hwdOV0hws7qtohSYONvohIv5Sf83fZHDXslAnUm2flwmRibxTSFhb9BuF2u/GTn/wEP/nJT+B2u0WHc0E+vxz6ZXULV6YMRUt5SuFjNgXOogKDgyo101KeKs/S0qI05Dh47alRaClHKbyUnVPbqtpQ19knOJoL01Kedrrc+PRY4NpT7poiLWLRT6pTdrINzd0DSI6zYtkEdkYlMoLb5+QBAD4pb0anS92DP604szcKJ1CJjCEvJQ4LilIhy4NN5+jSvX+wAR6fjMk5SZiYnSg6HKIRY9FPqqMMUm+ckcPOqEQGMTknCZNzkuD2+UPXy9GlUXqj2C0mXDuNvVGIjOL2ywKTqG/tPg1Z5lWo4fBOqDcKj0mRNrGiIlXpc/vw4aFgZ1SuTBEZyu3Bbshv7eHqVDgog9QVU9gbhchIrpueg1irGZWtvdhb2yk6HM2rbXdhZ3VHoDfKTI5NSZtY9JOqrDnSiF63D/mpsbisIEV0OEQURTfPyoXZJGFfbSdOtvSIDkfTvD4/3g3umLhVA/d1E1H4JNgtod09f9tzWnA02qc0l15YnIZsR4zgaIhGh0U/qcqbuwO/nG6dnQdJYmdUIiPJSLRjebCPx1u7OVC9FBtPtKClewCp8TYsZW8UIsNRtvj/Yz+vQr0UsiyHxqa3cAKVNIxFP6nG6Q4XNle0AgDuDDb1IiJjuS04UH17bx18fp5FHa2/7lQmUHPZG4XIgEqL05CdFANnnweflDeLDkezdlS1o7rNhXibGddPzxEdDtGoWUQHQNFhMplQUlISeluN3tpdB1kGFo1PQ35qnOhwSAAt5ClF1lWTM5EUY0GDsx/bKtuwaHy66JDOofY8be0ZwMflTQCAz8/NFxwNiaD2HKXIM5sk3HpZLp5bfxJ/23NalQWrFvL0r7sCE6g3zhiDeDvLJtIuZq9BWCwW3HPPPaLDOC+/X8Ybu2sBcJBqZGrPU4q8GKsZN80cgz9tr8Gbu0+rsuhXe56+s7cOXr+MmXkOXi1lUGrPUYqO24NF/6fHAsd9MhLtokM6i9rztLvfg9UHA82lP385x6akbeqcViPD2VbZhtMdfUiMseCaqbxaisjIbg8e7/ngUAOcfR7B0WiLLMt4fWdgAvVOTqASGdr4zETMyk+Gzy+zod8ovHegAX0eH4oz4nFZQbLocIguCYt+UoW/7goMUm+eNQYxVrPgaIhIpNn5yZiYlYh+jz/UNZmGZ/9pJ04098BuMeFzs3ifNJHR3T0vMPn3l521kGX2SRkJZQL183Pz2VyaNI9Fv0G43W488cQTeOKJJ+B2u0WHcxZnnwcfHGoEwK39RqfmPKXokSQJXwgOVP+8vUZ1A1U156kySL1+eg6SYqyCoyFR1JyjFF03zhiDeJsZVa292FbZLjqcs6g5T483dWNfbSfMJinUYJZIy1j0G4jH44HHo76tsn/fX48Brx+TshMxPdchOhwSTK15StF16+xc2C0mHG3sxv7TTtHhnEONedrn9uEf++sBAHfO5SDV6NSYoxR98XYLPhe8au4vO2sER3MutebpG8EdqFdOylRdLwSi0WDRT0IFzp8Gfgndye1TRBSUHGcLdZt+bbv6BqpqtPpgA3oGvMhPjcWCwjTR4RCRStwzrwAA8MHBRnT0qmtFXY3cXj/+tidwtIw7UEkvWPSTUPtPO3Gorgs2iwm3zs4VHQ4RqcjdwYHqPw7Uo7tffStBavPH7acAAHfNzYfJxAlUIgqYnufA1DFJcPv8+Nte9km5mA8PN6Kt143MRDuWT8wQHQ5RWLDoJ6H+UBYYpN44Iwep8TbB0RCRmlw+LgXFGfFwuX34e3DbOg3tUJ0Te2s6YTVLuOvyAtHhEJHKfCE4ifqXHerrk6I2f9wWGJvePa8AVjNLJdIHZjIJ09HrxnsHAgP5Ly0YKzgaIlIbSZJCq/1/2VErOBp1Uwap107L4flTIjrHzbPGINZqxonmHuw+1SE6HNU61tiNHVXtMJsGf/8Q6YFmiv6Ojg7ce++9cDgccDgcuPfee9HZ2XnBj5FlGY8//jjGjBmD2NhYLF++HIcPHz7va6+77jpIkoR33nkn/N8AnePN3acx4PVj6pgkzM5PFh0OEanQbZflwWY24WCdEwdOd4oOR5WcfR68uy8wgXovJ1CJaAhJMVbcOCPQJ0WZJKRzKf82K6dkIdsRIzgaovDRTNF/zz33YN++ffjwww/x4YcfYt++fbj33nsv+DG//OUv8atf/Qq/+93vsHPnTmRnZ+Pqq69Gd3f3Oa9dtWqVrpvISZKEsWPHYuzYsar4Pv1+OXT+9EsL1BETiae2PCXxUuNtuH56NgDgla3VYoMJUlue/m3PafR5fJiYlYjLx6WIDodUQG05Supwb2lgUvD9gw1o7u4XHI368rRnwIu/7TkNgBOopD+SrIGDPeXl5ZgyZQq2bduG+fPnAwC2bduG0tJSHD16FBMnTjznY2RZxpgxY/Dwww/j//2//wcAGBgYQFZWFn7xi1/g61//eui1+/fvx4033oidO3ciJycHb7/9Nm655ZZhx9fV1QWHwwGn04mkpKRL+2YNYuPxFnz55R1ItFuw/UdXIc5mER0SEanUvtpO3PLfW2Azm7DlB1dy+/oZZFnGil9twMmWXvzslmkcqBLRBd327BbsqenEIysm4DsrSkSHoyp/2HYK//bOIRRlxOOTR5epYiKC6GKGW4dqYqW/rKwMDocjVPADwIIFC+BwOLB169YhP6aqqgqNjY1YuXJl6H12ux3Lli0762NcLhfuvvtu/O53v0N2dnbkvgk6yx+C26dun5PHgp+ILmhWfjJm5SfD7fPjtR28vu9MZZVtONnSi3ibmTegENFFfWXhOACB2z7cXr/YYFRElmX8KTg2vZc7UEmHNFH0NzY2IjMz85z3Z2ZmorGx8bwfAwBZWVlnvT8rK+usj3nkkUewcOFC3HzzzcOOZ2BgAF1dXWf9oeGr6+zDJ+VNAIAvLWCTFCK6uH9aNA5A4LwlB6qDlBtQbr0sFwl2TqAS0YVdNy0HmYl2tHQP4INDDaLDUY2d1R042tiNWKsZt12WJzocorATWvQ//vjjkCTpgn927doFAEPOuMmyfNGZuM/+/Zkf8/e//x3r1q3DqlWrRhT3k08+GWoo6HA4kJ+fP6KPF8HtduOpp57CU089BbfbLTSW/91cBb8MLCxOw/jMRKGxkLqoKU9JXa4LdqVv7h7Ah4eHnuyNFrXkaW27Cx8F/y3uXTBOWBykPmrJUVIfm8UUujHpf7dUC41FTXn68uYqAMAts8fAEWsVGgtRJAgt+r/5zW+ivLz8gn+mTZuG7OxsNDU1nfPxLS0t56zkK5St+p/dCdDc3Bz6mHXr1uHkyZNITk6GxWKBxRJYJbn99tuxfPny88b92GOPwel0hv7U1mrjKimXywWXyyU0hu5+D/6yM/Dv9cCSIqGxkDqpIU9JfWwWE740PzBQfWVLleBo1JGnL28JTKAuKUnHxGxOoNLZ1JCjpE53zyuAzWzCvtpO7KvtFBqLGvK0urUXHx0J1AtfW1QoNBaiSBG6FzA9PR3p6ekXfV1paSmcTid27NiBefPmAQC2b98Op9OJhQsXDvkxhYWFyM7Oxtq1azF79mwAgRnFDRs24Be/+AUA4Ac/+AHuv//+sz5u+vTp+PWvf42bbrrpvPHY7XbY7WwkNRqv76xFz4AX4zMTsGxChuhwiEhD7p6fj999egJ7ajqxv7YTMw181afT5cHrnEAlolHISLTjxhk5+NveOry6tRqz7polOiShXt5SBVkGrpiYgZIsTqCSPmniTP/kyZNx7bXX4oEHHsC2bduwbds2PPDAA7jxxhvP6tw/adIkvP322wAC2/offvhhPPHEE3j77bdx6NAhfPWrX0VcXBzuueceAIHdANOmTTvrDwAUFBSgsJAzfeHm9flDW8nuX1wIk4lNUoho+DITY3DjjDEAgJc2i1/tF+nPO2rgcvswKTsRS0ouPnlORHSmrwb7pLx3oB4Nzj6xwQjU0evGG7sC1/RxApX0TBNFPwD86U9/wvTp07Fy5UqsXLkSM2bMwB/+8IezXnPs2DE4nc7Qf3//+9/Hww8/jIceeghz585FXV0d1qxZg8REzuKJsPpQI+o6+5AWb8Mt7DJNRKNw3+LAhOx7B+pR02bMrcturx+vbA1Mety3uJBdpoloxGbkJWN+YSo8PhkvbTLuJOqftp9Cn8eHKTlJKC1OEx0OUcRoptVvamoq/vjHP17wNbIsn/XfkiTh8ccfx+OPPz7sr/PZz0HhIcsyXtxUCQC4t3QsYqxmwRERkRZNy3Vg6YQMbDzeghc2VeJnt0wTHVLUvXegHk1dA8hMtONzs8aIDoeINOrB5cXYXtWOP++owTevHI/kOJvokKJqwOvDq8EbUP55aREnUEnXNLPST9q2s7oDB047YbeYcG+waywR0Wh8Y1kxAOCvu2rR0j0gOJrokmUZLwRX5b6ycBzsFk6gEtHoLJ+QgUnZiXC5ffi/YPFrJO/uq0dL9wByHDG4YUaO6HCIIopFv0FIkoQxY8ZgzJgxQmYyn1tfAQC47bI8pCWwCSINTXSekjYsKErFrPxkDJyxzT2aRObpxhOtKG/oQqzVjC/OL4jq1ybt4LOUhkOSJHxjeWAS9ZWt1ehz+6L+9UXlqd8v4382BnagfnXhOFjNLIlI3ySZ+9kvWVdXFxwOB5xOJ5KSkkSHozoHTztx0+82wyQB6767HOPS40WHREQa99HhRnz9D7uRGGPB1h9cicQY/d+rLMsy7ny+DLtOdeBriwrx7zdNER0SEWmc1+fHFf+1HrXtffjJ56biKwvHiQ4pKlYfbMBDf9qDxBgLtvzgSiQZ4HcI6dNw61BOa1HE/XbdCQDAzbNyWfATUVhcPTkLxRnx6O734s/ba0SHExVllW3YdaoDNosJX1/GLtNEdOksZhP+eWlgtf9/NlbC4/MLjijy/H4Zv/kkMDb9p0WFLPjJEFj0U0SVN3RhzZEmSBLwL1eMFx0OEemEySThweDZ/hc3V6HfE91tqSL89pPAMam75uYjKylGcDREpBd3zslDeoINdZ19eHdfvehwIu7j8iYcbexGvM2MrwWvLiTSOxb9BuHxeLBq1SqsWrUKHo8nal/3d58GBqnXT8/B+MyEqH1d0iZReUradPOsXOQmx6KlewB/3Ba9JlQi8nRXdTvKKttgNUt4MHgGl+h8+CylkYixmnF/8I7633xyImqr/SLyVJZl/HZdYGz6lYXjDHdjARkXi36DkGUZTqcTTqczatcSHmvsxuqDDQCAb3KVn4ZBRJ6SdtksJnz7qsCz5bn1J9E74I3K1xWRp88Et6LeflkecpNjo/I1Sbv4LKWR+nLpWKQn2FDT7sKbu09H5WuKyNNPjzXjYJ0TsVYz7ltcGJWvSaQGLPopYp5ecwyyDFw3LRuTc9jgkIjC77bL8jAuLQ5tvW68srVadDgRsbWiFZtOtMJqlnhMiogiIs5mwTeWB54vv/3kBAa8+jsy5ffLeOqj4wACkxy8TYqMhEU/RcSemg6sPdIEkwR8d+VE0eEQkU5ZzSZ8Z0UJgEATqq5+fW1llmUZv/joGADg7nkFyE+NExwREenVF+cXICvJjnpnP17fWSs6nLD7x4F6lDd0ITHGErqqkMgoWPRT2MmyjKc+DAxS75iTx7P8RBRRn5uZi/GZCXD2efBC8N5lvVhzpAn7azsRazXjm1dylZ+IIifGag7tJvrtuoqoHZmKBo/Pj1+tDazyf31pEc/yk+Gw6Kew21zRirLKNtjMJnxnxQTR4RCRzplNEr4X3FH0wqZKNDj7BEcUHj6/jKeDq/xfWzwOmYns2E9EkXXX5fkoSI1DS/cA/kdHk6iv76zFqTYX0hPs+KdFPMtPxsOin8LK55fx8/fLAQBfWjCWDaeIKCqumZqFy8eloN/jx9PBM5ta98auWpxo7oEj1hq6R5uIKJLsFjP+37WTAASOTDV19QuO6NL1DHhDzVC/fdV4xNstgiMiij4W/QYhSRIyMjKQkZEBSZIi9nX+srMGRxu74Yi14lvcikojFK08Jf2RJAk/umEKAOBve0/jUJ0zol8r0nna1e/BU8FV/m9dOR6OWGtEvg7pE5+ldCmun56NywqS0efx4b/WHIvY14lWnv523Qm0dA9gXFocvnB5QcS+DpGaSTLvcrlkXV1dcDgccDqdSEoybpd6p8uD5U9/ig6XB4/fNAVf5fYpIoqyb7+2F3/fX4/SojT8+YH5mi14fv7+EbywqQrFGfH48OGlsJo5R09E0bP7VAduf24rJAl471uLMXWMQ3RIo1LV2ouVv94Aj0/GS1+Zi6smZ4kOiSishluHchRBYfPMJyfQ4fKgJDMBX1wwVnQ4RGRA3792ImwWE8oq2/DegQbR4YzKyZYe/O+WagDAv904hQU/EUXdnLEpuHFGDmQZ+Ld3DsHv1+Ya4c/fPwKPT8ayCRm4clKm6HCIhOFIgsLiWGM3/q+sGgDw7zdxkEpEYuSlxP3/7d15dFXlvcbxZ2cOSc6BhIQQSBglBMIYEALKFQcqRSTSOlBKQ7GttOjCUrWK3oqWgr22LvViLGBBtGigIjhUudIqCYNICASQScKUhAAJYEbIePb9A4xNkTEn2Wf4ftbKWskh2XnO4schT/be76tp5/ea/v2Hu91uCz/TNPXMB7tV5zB1c88o3RTPD6kArPHkmASFBPhqa16Jlm9xvy38PttXpH/uKZKfj6H/vqOX2175BTgDzcxL1NbWKi0tTWlpaaqtde4PwfUOU79dsUN1DlOjerXTjddFOvX48B7NOafwHlNv6qoubUNUVF6tFz5x/qJ+zTmn728vVOZXxQrw9dFTYxKcemx4D15L4Qzt7cH69W3ndmF6bvVena6scerxm3NOK6vr9NTKLyVJqcM6s300vB6l30uYpqni4mIVFxfL2cs4vPn5YeXklygs0E/Pjkt06rHhXZpzTuE9Av189fvzr0VvfH5YOwucu6hfc83p6coaPfPBbknnFu/rGskPqbg2vJbCWSYP66ye0WEqOVOrOR/tceqxm3NO//zJVzpaclYdWgdrxm1sHw1Q+tEkR0vONqww/djonoq2s480AOvdcF1bje0XI4cpPfrOdlXX1Vsd6bJmf7hbpytrFN8uTA/8F1v0AbCen6+P/nBXH0nSO9kFWruvyOJEl7ct72st3nhIkvSHuxLZog8QpR9N4HCYeuLdnaqsqdegTm008Xq2QQHgOp4e20vhIQHae7xcL/5zv9VxLumzvUV6d9tRGYb03A/6KMCP/54BuIakTm300+GdJUm/XbFDpWdc95aRqtp6Pb5ip0xTumtAB9ZFAc7jpwpcs8UbDyvzq2IF+vnouR/0kY8PC6QAcB1tQwM15/wZqvkZB5R95LTFib5bcXm1Hn1nuyTpp8O6aEBcG4sTAUBjj32vp7q2DdGJsmo9/f6XVse5qD+u3qt9J8oVERKg/76jl9VxAJdB6cc12V1Ypj9+vFeS9NSYBHWPCrM4EQBc6PbEaI0f0EEOU/rN8u0qd7HV/B0OU4/8fbtOVtSoZ3SYHrs93upIAHCB4ABf/fmefvIxpFU5hfpge6HVkS7w2d6ihu1O/3R3P4WHBFgbCHAhlH5ctbM19Zqevk019Q7dmhClHw/tZHUkALiop+/srRh7kA6fOqPH3tnhUgubLd54WBnnr5h66b4BCvL3tToSAHynAXFtNG3kuS1RH1+xQ7lFFRYn+lZRedW3V0wN76yRPbmsH/h3lH4vYRiG7Ha77HZ7k/YpNU1Tj76zXfuLKhQZFqg//qAv+57CaZw1p8C/swf7a97EgfL3NfTxl8f11/WHmnQ8Z83pFwdPae751bCfGpOg+GiumIJz8FqK5jL9lus0tGu4Kmvq9cu/Zauyuu6aj+WsOa2pc2ja0q06WVGjhPY2/fb2ntd8LMBTGaYrnfJwU2VlZbLb7SotLZXNZrM6TrNKW5ur/1m9T34+hpb+bIiGdI2wOhIAXJE3Pj+s3723S77nX7+GWvj6lX/6jMa9skGnK2t0R9/2+t8JAyhnANxCcXm1xry8TkXl1Za/fpnmuUWl07PyFRbkp1XThqsb253Ci1xpD+VMP67Yv/acaNieb9advSn8ANzKpKGdlNI/RvUOUw+8ma39J8otyVFZXaefv7FFpytrlNjBpud/2I/CD8BtRIYFKm3iQPn5GPpwx7GGnw2tsGTjYaVn5cvHkF6eMIDCD1wEpR9XZPOh05r21laZpjRxSBz38QNwO4ZhaO74vhoQ11qlZ2uVumizjpdWtWiGqtp6PfBmtvYeL1fb0EAtmDRIwQHcxw/AvQzqHN6wO0ra2gNasvFwi2f4YHuhnv1wtyTpidEJGsn2fMBFUfq9RG1trRYuXKiFCxeqtvbqVq/eUVCiKa9nqarWoZviI/X02N7NlBLerilzClyJ4ABf/TV1sLpGhqiwtEqpizbrVEX1VR3jWue0tv7cfafrc08qJMBXC3+SpJjWwVf7FIDL4rUULeGewbGacVsPSdKsD3bpvZyjV/X1TZnTf+4+oV8vy5HDlCZcH6uf3djlqr4e8DaUfi9hmqYKCwtVWFh4VStX7ywo1U8WbVZFdZ2Gdg3XX36cpAA/xgbN41rnFLga4SEBWvLT6xUVFqh9J8p174JNV3XG/1rmtLru3K4n/9pbpEA/H72WOlgD4tpc61MALonXUrSUh27urh8NiZNpSg8vy1H65rwr/tprndPP9hXpV0u3qs5hKqV/jGan9OEWKeAyaG+4qHX7i3Xfgs9VcqZW/WNb67XUwWwnBcAjxIa30ls/H6r29iDlFlXoh3/ZqMMnK5vle5VX1WrK61n6aOdx+fsa+sukJCV3Y00UAO7PMAz9flyiJlx/rvg//u5OvbbuYLP9sumd7AL9fMkW1dQ7dHvvaP3p7n7y9aHwA5dD6ccFTNPUa+sOavLiLFXW1Gt49wi9ef/1Cg30szoaADhN96hQ/X1qsjpHtFLB12c17pUNyviq2KnfI7eoQnelbdSG3FMKOX9rAfedAvAkvj6G5tyVqAdGdJUkzf7HHj2+Yqeqauud9j3q6h2a89EePfL37Q1n+F+eMEB+vlQZ4ErwLwWNFJdXa+rfsjX7H3tU7zB114AOWjR5sMKC/K2OBgBO17FNKy2fmqx+secW95u8eLPmfrynyT+smqapZVl5Snllg3KLKtTOFqj0XyRrRI9IJyUHANdhGIYeH91TM7/fUz6GtGxLvsanbdSeY2VNPvbhk5WasHCTFmQelCT98qZueuGe/txuClwFTt1C0rkFpt7enKcX1nylkjO18vMx9NSYBKUO68x9UgA8WlRYkJY/MFSz3t+ttzfnaX7GQa3ZfUJPfj9BN/eMuurXwF2FpfrDP/Zo44FTkqQhXcI170cDFRkW2BzxAcAlGIahX4zopp7RNk1P36bdx8p057z1mjK8i341srvswVd3AulMTZ3+uu6QXlmbq6pah0ICfPX83f30/T7tm+kZAJ6L0u/lTlfW6N2tBVry+WHlnz4rSerV3qY/3d1PvWJsFqcDgJYR6OerueP7aGR8pGau/FIHiyt1/5It6hfbWlOGd9aoXtGX3Fqvrt6hzw+e0pufH9Enu0+cP6aPfjOqh+6/oSv3nALwGiN6ROr/fj1CT678Umt2n9D8zIN6e3OeJgyJ04TBcercNuSSX19YclbLsvK19IsjOllRI0ka3j1Cz43vq9jwVi3xFACPQ+n3Iv6BQTJN6e3NeTrydY22F5RoW97Xcpxfa6VtaICm33Kd7rs+Tv7cIwWLtGrFf+iwzqje0RrSNUKvrj2gRRsOaXt+iaan5yjI30dDukQosYNNMWH+8gsIkilpfsYB7S06qw0HTqrkzLdbTt3ZL0aPjIpXXATzDGvwWgorRYUFacGkJH22r0hzPtqr3KIKzc84qPkZB9WjXaiSOrVRt4gg+QYESZKWfnFEB09VK/vI19r9b7cEdIpopd+MitfYvu258hRoAsNkL5cmKysrk91uV2lpqWw21z07Pmzuv1T4HdtSJXaw6UfXd1LKgBi1CuD3QAAgnVvj5O3NeVq+JV8FX5+97Ofbg/11Z78YpQ7rpO5RYS2QEABcX73D1Kd7i/TmpiPamHtSdY5LVw/DkAZ3DtekoZ30vd7R3LsPXMKV9lBKvxO4S+mftnSrTlVWKyzIXx3bBCuhvU3Du7dVh9bBVkcDAJdlmqb2HCtX9pHT2n2sXMXlVSqvqlNwgK/CWwUoPjpM/WNbK6lTG1aSBoBLKD1Tqw0HTurLo6U6fKpSJWdqZRhSaKCfOrcNUa/2Nt3Qva0iQlkDBbgSlP4W5C6lHwAAAADgGa60h3Itt5eora3V0qVLJUkTJ06Uvz9b8MH1MKdwB8wpXB0zCnfAnAIth9LvJUzT1JEjRxreB1wRcwp3wJzC1TGjcAfMKdByuPkQAAAAAAAPRekHAAAAAMBDUfoBAAAAAPBQlH4AAAAAADwUpR8AAAAAAA/F6v1ehK1Q4A6YU7gD5hSujhmFO2BOgZZhmOyR0WRlZWWy2+0qLS2VzWazOg4AAAAAwMNdaQ/l8n4AAAAAADwUpR8AAAAAAA/FPf1eoq6uTsuXL5ck3XPPPfLz468eroc5hTtgTuHqmFG4A+YUaDn86/ISDodD+/fvb3gfcEXMKdwBcwpXx4zCHTCnQMvh8n4AAAAAADwUpR8AAAAAAA9F6QcAAAAAwENR+gEAAAAA8FCUfgAAAAAAPBSr9zuBaZqSpLKyMouTXFxNTY2qqqokncsZEBBgcSLgQswp3AFzClfHjMIdMKdA033TP7/poxdjmJf7DFxWQUGBYmNjrY4BAAAAAPAy+fn56tix40X/nNLvBA6HQ4WFhQoLC5NhGFbHuaiysjLFxsYqPz9fNpvN6jjABZhRuDpmFK6OGYU7YE7h6txlRk3TVHl5uWJiYuTjc/E797m83wl8fHwu+ZsVV2Oz2Vx6eAFmFK6OGYWrY0bhDphTuDp3mFG73X7Zz2EhPwAAAAAAPBSlHwAAAAAAD0Xp9yKBgYF6+umnFRgYaHUU4Dsxo3B1zChcHTMKd8CcwtV52oyykB8AAAAAAB6KM/0AAAAAAHgoSj8AAAAAAB6K0g8AAAAAgIei9AMAAAAA4KEo/V4kLS1NXbp0UVBQkJKSkrRu3TqrIwGSpMzMTI0dO1YxMTEyDEOrVq2yOhLQyNy5czV48GCFhYUpKipKKSkp2rdvn9WxgAavvvqq+vbtK5vNJpvNpuTkZH388cdWxwIuau7cuTIMQw8//LDVUQBJ0qxZs2QYRqO36Ohoq2M5BaXfSyxbtkwPP/ywnnzySW3btk033nijRo8erby8PKujAaqsrFS/fv00b948q6MA3ykjI0PTpk3Tpk2btGbNGtXV1WnUqFGqrKy0OhogSerYsaOee+45bdmyRVu2bNHNN9+scePGadeuXVZHAy6QlZWlBQsWqG/fvlZHARrp3bu3jh071vC2c+dOqyM5BVv2eYkhQ4Zo4MCBevXVVxseS0hIUEpKiubOnWthMqAxwzC0cuVKpaSkWB0FuKji4mJFRUUpIyNDI0aMsDoO8J3Cw8P1/PPP6/7777c6CtCgoqJCAwcOVFpammbPnq3+/fvrxRdftDoWoFmzZmnVqlXKycmxOorTcabfC9TU1Cg7O1ujRo1q9PioUaO0ceNGi1IBgPsqLS2VdK5UAa6mvr5e6enpqqysVHJystVxgEamTZumMWPG6NZbb7U6CnCB/fv3KyYmRl26dNF9992ngwcPWh3JKfysDoDmd/LkSdXX16tdu3aNHm/Xrp2OHz9uUSoAcE+maWrGjBm64YYblJiYaHUcoMHOnTuVnJysqqoqhYaGauXKlerVq5fVsYAG6enp2rp1q7KysqyOAlxgyJAheuONN9SjRw+dOHFCs2fP1rBhw7Rr1y5FRERYHa9JKP1exDCMRh+bpnnBYwCAS3vwwQe1Y8cOrV+/3uooQCPx8fHKyclRSUmJVqxYodTUVGVkZFD84RLy8/M1ffp0ffLJJwoKCrI6DnCB0aNHN7zfp08fJScnq1u3blqyZIlmzJhhYbKmo/R7gbZt28rX1/eCs/pFRUUXnP0HAFzcQw89pPfff1+ZmZnq2LGj1XGARgICAtS9e3dJ0qBBg5SVlaWXXnpJ8+fPtzgZIGVnZ6uoqEhJSUkNj9XX1yszM1Pz5s1TdXW1fH19LUwINBYSEqI+ffpo//79VkdpMu7p9wIBAQFKSkrSmjVrGj2+Zs0aDRs2zKJUAOA+TNPUgw8+qHfffVeffvqpunTpYnUk4LJM01R1dbXVMQBJ0i233KKdO3cqJyen4W3QoEGaOHGicnJyKPxwOdXV1dqzZ4/at29vdZQm40y/l5gxY4YmTZqkQYMGKTk5WQsWLFBeXp6mTp1qdTRAFRUVys3Nbfj40KFDysnJUXh4uOLi4ixMBpwzbdo0vfXWW3rvvfcUFhbWcOWU3W5XcHCwxekAaebMmRo9erRiY2NVXl6u9PR0rV27VqtXr7Y6GiBJCgsLu2AdlJCQEEVERLA+ClzCI488orFjxyouLk5FRUWaPXu2ysrKlJqaanW0JqP0e4l7771Xp06d0rPPPqtjx44pMTFRH330kTp16mR1NEBbtmzRyJEjGz7+5r6p1NRUvf766xalAr71zXanN910U6PHFy9erMmTJ7d8IOA/nDhxQpMmTdKxY8dkt9vVt29frV69WrfddpvV0QDALRQUFGjChAk6efKkIiMjNXToUG3atMkj+pJhmqZpdQgAAAAAAOB83NMPAAAAAICHovQDAAAAAOChKP0AAAAAAHgoSj8AAAAAAB6K0g8AAAAAgIei9AMAAAAA4KEo/QAAAAAAeChKPwAAaFazZs1S//79rY4BAIBXMkzTNK0OAQAA3JNhGJf889TUVM2bN0/V1dWKiIhooVQAAOAblH4AAHDNjh8/3vD+smXL9Lvf/U779u1reCw4OFh2u92KaAAAQFzeDwAAmiA6OrrhzW63yzCMCx77z8v7J0+erJSUFM2ZM0ft2rVT69at9cwzz6iurk6PPvqowsPD1bFjRy1atKjR9zp69KjuvfdetWnTRhERERo3bpwOHz7csk8YAAA3Q+kHAAAt7tNPP1VhYaEyMzP1wgsvaNasWbrjjjvUpk0bffHFF5o6daqmTp2q/Px8SdKZM2c0cuRIhYaGKjMzU+vXr1doaKhuv/121dTUWPxsAABwXZR+AADQ4sLDw/Xyyy8rPj5eU6ZMUXx8vM6cOaOZM2fquuuu0xNPPKGAgABt2LBBkpSeni4fHx+99tpr6tOnjxISErR48WLl5eVp7dq11j4ZAABcmJ/VAQAAgPfp3bu3fHy+PffQrl07JSYmNnzs6+uriIgIFRUVSZKys7OVm5ursLCwRsepqqrSgQMHWiY0AABuiNIPAABanL+/f6OPDcP4zsccDockyeFwKCkpSUuXLr3gWJGRkc0XFAAAN0fpBwAALm/gwIFatmyZoqKiZLPZrI4DAIDb4J5+AADg8iZOnKi2bdtq3LhxWrdunQ4dOqSMjAxNnz5dBQUFVscDAMBlUfoBAIDLa9WqlTIzMxUXF6fx48crISFBU6ZM0dmzZznzDwDAJRimaZpWhwAAAAAAAM7HmX4AAAAAADwUpR8AAAAAAA9F6QcAAAAAwENR+gEAAAAA8FCUfgAAAAAAPBSlHwAAAAAAD0XpBwAAAADAQ1H6AQAAAADwUJR+AAAAAAA8FKUfAAAAAAAPRekHAAAAAMBDUfoBAAAAAPBQ/w/mYrcHBI0cwAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "from matplotlib.pylab import plt\n", "\n", "# Construct a time grid from t=0 to t=5.\n", "t_grid = np.linspace(0, 5, 1000)\n", "\n", "# Propagate over the time grid.\n", "x_hist = ta.propagate_grid(t_grid)[5][:, 0]\n", "\n", "# Display the time evolution for the x variable.\n", "fig = plt.figure(figsize=(12, 6))\n", "plt.plot(t_grid, x_hist)\n", "plt.xlabel(\"Time\")\n", "plt.ylabel(\"x\")\n", "\n", "# Put vertical lines in correspondence of\n", "# the detected events.\n", "for ev_time in zero_vel_times:\n", " plt.axvline(x=ev_time, linestyle=\"--\", color=\"gray\")" ] }, { "cell_type": "markdown", "id": "0e9e88e5", "metadata": {}, "source": [ "As expected, $v$ is zero at the points of maximum amplitude for the angle,\n", "and in these points the absolute value the $x$ angle corresponds to the\n", "initial amplitude of $0.05$.\n", "\n", "Let us now print the event times:" ] }, { "cell_type": "code", "execution_count": 6, "id": "3cd54c77", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.0, 1.003701787940065, 2.00740357588013, 3.011105363820195, 4.01480715176026]\n" ] } ], "source": [ "print(zero_vel_times)" ] }, { "cell_type": "markdown", "id": "8765f7ce", "metadata": {}, "source": [ "We can see how the the initial condition $v_0 = 0$ immediately\n", "and correctly triggers an event at $t = 0$. Physically, we know that the time\n", "interval between the events must be half the period $T$ of the pendulum,\n", "which can be computed exactly via elliptic functions. With the specific\n", "initial conditions of this example, $T = 2.0074035758801299\\ldots$, and\n", "we can see from the event times printed to screen\n", "how the event detection system was accurate to machine precision.\n", "\n", "### Event direction\n", "\n", "By default, heyoka.py will detect all zeroes of the event equations regardless\n", "of the *direction* of the zero crossing (i.e., the value of the time derivative\n", "of the event equation at the zero). However, it is sometimes useful to trigger the detection\n", "of an event only if its direction is positive or negative. Event direction is represented\n", "in heyoka.py by the ``event_direction`` enum, whose values can be\n", "\n", "- ``event_direction.any`` (the default),\n", "- ``event_direction.positive`` (derivative > 0),\n", "- ``event_direction.negative`` (derivative < 0).\n", "\n", "Event direction can be specified upon construction:" ] }, { "cell_type": "code", "execution_count": 7, "id": "14e6e7b3", "metadata": {}, "outputs": [], "source": [ "# Redefine ev to detect only events\n", "# in the positive direction.\n", "ev = hy.nt_event(\n", " v,\n", " callback=lambda ta, time, d_sgn: zero_vel_times.append(time),\n", " # Specify the direction.\n", " direction=hy.event_direction.positive,\n", ")\n", "\n", "# Reset zero_vel_times and the integrator.\n", "zero_vel_times.clear()\n", "ta = hy.taylor_adaptive(((x, v), (v, -9.8 * hy.sin(x))), [-0.05, 0.0], nt_events=[ev])" ] }, { "cell_type": "markdown", "id": "93188401", "metadata": {}, "source": [ "In this specific case, constraining the event direction to be positive is equivalent\n", "to detecting $v = 0$ only when the pendulum reaches the maximum amplitude on the left.\n", "Let us take a look at the plot:" ] }, { "cell_type": "code", "execution_count": 8, "id": "fcff6b83", "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Propagate over the time grid.\n", "x_hist = ta.propagate_grid(t_grid)[5][:, 0]\n", "\n", "# Display the time evolution for the x variable.\n", "fig = plt.figure(figsize=(12, 6))\n", "plt.plot(t_grid, x_hist)\n", "plt.xlabel(\"Time\")\n", "plt.ylabel(\"x\")\n", "\n", "# Put vertical lines in correspondence of\n", "# the detected events.\n", "for ev_time in zero_vel_times:\n", " plt.axvline(x=ev_time, linestyle=\"--\", color=\"gray\")" ] }, { "cell_type": "markdown", "id": "e57e0720", "metadata": {}, "source": [ "Indeed, the event now triggers only 3 times (instead of 5). Let's take a loot at the event times:" ] }, { "cell_type": "code", "execution_count": 9, "id": "bc53abfb", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.0, 2.00740357588013, 4.01480715176026]\n" ] } ], "source": [ "print(zero_vel_times)" ] }, { "cell_type": "markdown", "id": "1a83f139", "metadata": {}, "source": [ "The times confirm that the event is detected only when $v$ switches from negative to positive, i.e.,\n", "at $t=0$, $t=T$ and $t=2T$.\n", "\n", "### Multiple events\n", "\n", "When multiple events trigger within the same timestep (or if the same event triggers\n", "multiple times), heyoka.py will process the events in chronological order\n", "(or reverse chronological order when integrating backwards in time).\n", "\n", "Let us demonstrate this with another example with the simple pendulum.\n", "We will now aim to detect two events defined by the equations:\n", "\n", "$$\n", "\\begin{cases}\n", "v = 0 \\\\\n", "v^2 - 10^{-12} = 0\n", "\\end{cases}.\n", "$$\n", "\n", "In other words, we are looking to determine the time of maximum amplitude ($v = 0$) and\n", "the time at which the absolute value of the angular velocity is small but not zero. Because\n", "of the closeness of these events, we can expect both events to be detected during the same timestep,\n", "with the second event triggering twice.\n", "\n", "Let's begin by defining the two events:" ] }, { "cell_type": "code", "execution_count": 10, "id": "e88f6283", "metadata": {}, "outputs": [], "source": [ "# Define two close non-terminal events.\n", "ev0 = hy.nt_event(\n", " v, lambda ta, time, d_sgn: print(\"Event 0 triggering at t={}\".format(time))\n", ")\n", "ev1 = hy.nt_event(\n", " v * v - 1e-12,\n", " lambda ta, time, d_sgn: print(\"Event 1 triggering at t={}\".format(time)),\n", ")" ] }, { "cell_type": "markdown", "id": "d15712eb", "metadata": {}, "source": [ "This time the events' callbacks just print the event time to screen, without\n", "modifying the ``zero_vel_times`` list.\n", "\n", "We can then reset the integrator, propagate for a few time units and check the screen output:" ] }, { "cell_type": "code", "execution_count": 11, "id": "b5ff7697", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Event 0 triggering at t=0.0\n", "Event 1 triggering at t=2.0416669147618175e-06\n", "Event 1 triggering at t=1.0036997462725616\n", "Event 0 triggering at t=1.003701787940065\n", "Event 1 triggering at t=1.0037038296081024\n", "Event 1 triggering at t=2.0074015342133102\n", "Event 0 triggering at t=2.00740357588013\n", "Event 1 triggering at t=2.0074056175472714\n", "Event 1 triggering at t=3.0111033221532955\n", "Event 0 triggering at t=3.011105363820195\n", "Event 1 triggering at t=3.0111074054870994\n", "Event 1 triggering at t=4.0148051100933335\n", "Event 0 triggering at t=4.01480715176026\n", "Event 1 triggering at t=4.014809193427186\n" ] }, { "data": { "text/plain": [ "(,\n", " 0.17033435611316083,\n", " 0.17602774916423602,\n", " 29,\n", " None,\n", " None)" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Reset the integrator.\n", "ta = hy.taylor_adaptive(\n", " ((x, v), (v, -9.8 * hy.sin(x))), [-0.05, 0.0], nt_events=[ev0, ev1]\n", ")\n", "\n", "# Propagate for a few time units.\n", "ta.propagate_until(5.0)" ] }, { "cell_type": "markdown", "id": "8517d247", "metadata": {}, "source": [ "Note how the events are indeed processed in chronological order, and how the event detection system is able to\n", "successfully recognize the second event triggering twice in close succession.\n", "\n", "## Terminal events\n", "\n", "The fundamental characteristic of terminal events is that, in contrast to non-terminal events,\n", "they alter the dynamics and/or the state of the system. A typical example of a terminal event is the\n", "[elastic collision](https://en.wikipedia.org/wiki/Elastic_collision) of\n", "two rigid bodies, which instantaneously and discontinuously changes the bodies' velocity vectors.\n", "Another example is the switching on of a spacecraft engine, which alters the differential\n", "equations governing the dynamics of the spacecraft.\n", "\n", "Terminal events are represented in heyoka.py by the ``t_event`` class. Similarly to\n", "the ``nt_event`` class, the construction of a ``t_event`` requires\n", "at the very least the expression corresponding to the left-hand side of the event equation.\n", "A number of additional optional keyword arguments can be passed to customise the behaviour\n", "of a terminal event:\n", "\n", "- ``callback``: a callback function that will be called when the event triggers. Note that,\n", " for terminal events, the presence of a callback is optional (whereas it is mandatory for\n", " non-terminal events). Like for non-terminal events, the callback of a terminal event\n", " (if present) is deep-copied into the event object during construction;\n", "- ``cooldown``: a floating-point value representing the cooldown time for the terminal event\n", " (see below for an explanation);\n", "- ``direction``: a value of the ``event_direction`` enum which, like for non-terminal\n", " events, can be used to specify that the event should be detected only for a specific direction\n", " of the zero crossing.\n", "\n", "It is important to understand how heyoka.py reacts to terminal events. At every integration timestep, heyoka.py\n", "performs event detection for both terminal and non-terminal events. If one or more terminal events\n", "are detected, heyoka.py will sort the detected terminal events by time and will select the first\n", "terminal event triggering in chronological order (or reverse chronological order when integrating\n", "backwards in time). All the other terminal events and all the non-terminal events triggering *after*\n", "the first terminal event are discarded. heyoka.py then propagates the state of the system up to the\n", "trigger time of the first terminal event, executes the callbacks of the surviving non-terminal events\n", "in chronological order and finally executes the callback of the first terminal event (if provided).\n", "\n", "In order to illustrate the use of terminal events, we will consider a damped pendulum with a small twist:\n", "the friction coefficient $\\alpha$ switches discontinuously between 1 and 0 every time the angular\n", "velocity $v$ is zero. The ODE system reads:\n", "\n", "$$\n", "\\begin{cases}\n", "x^\\prime = v \\\\\n", "v^\\prime = - 9.8\\sin x - \\alpha v\n", "\\end{cases},\n", "$$\n", "\n", "and the terminal event equation is, again, simply $v = 0$.\n", "\n", "Let us begin with the definition of the terminal event:" ] }, { "cell_type": "code", "execution_count": 12, "id": "25b73228", "metadata": {}, "outputs": [], "source": [ "# Clear up zero_vel_times.\n", "zero_vel_times.clear()\n", "\n", "\n", "# Callback for the terminal event.\n", "def t_cb(ta, d_sgn):\n", " # NOTE: the value of the drag coefficient\n", " # is stored as the first (and only) runtime parameter\n", " # of the integrator.\n", " if ta.pars[0] == 0:\n", " ta.pars[0] = 1\n", " else:\n", " ta.pars[0] = 0\n", "\n", " # Append the event time to zero_vel_times.\n", " zero_vel_times.append(ta.time)\n", "\n", " # Do not stop the integration.\n", " return True\n", "\n", "\n", "# Define a terminal event that turns air drag on/off\n", "# whenever the velocity goes to zero.\n", "t_ev = hy.t_event(\n", " # The event equation.\n", " v,\n", " # The callback.\n", " callback=t_cb,\n", ")" ] }, { "cell_type": "markdown", "id": "cb7c460f", "metadata": {}, "source": [ "Like in the case of non-terminal events, we specified as first construction argument\n", "the event equation. As second argument we passed a callback function that will be invoked\n", "when the event triggers.\n", "\n", "As you can see from the code snippet, the callback signature for terminal events\n", "differs from the signature non-terminal callbacks. Specifically:\n", "\n", "- the event trigger time is not passed to the callback. This is not necessary\n", " because, when a terminal event triggers, the state of the integrator is propagated\n", " up to the event, and thus the trigger time is the current integrator time\n", " (which can be fetched via ``ta.time``);\n", "- whereas non-terminal event callbacks do not return anything, terminal event callbacks\n", " are required to return ``True`` or ``False``. If the callback returns ``False`` the integration\n", " will always be stopped after the execution of the callback. Otherwise, when using the\n", " ``propagate_*()`` family of functions, the integration will resume after the execution\n", " of the callback.\n", "\n", "```{versionchanged} 4.0.0\n", "\n", "The signature of callbacks for terminal events used to include an extra\n", "``bool`` argument which has been removed in version 4.0.0.\n", "```\n", "\n", "Note that, for the purpose of stopping the integration, an event *without* a callback is considered\n", "equivalent to an event whose callback returns ``False``.\n", "We thus refer to terminal events without a callback or whose callback returns ``False``\n", "as *stopping* terminal events, because their occurrence will prevent the integrator from continuing\n", "without user intervention.\n", "\n", "Like for non-terminal events, the last callback argument is the sign of the time derivative\n", "of the event equation at the event trigger time.\n", "\n", "In this example, within the callback code we alter the value of the drag coefficient $\\alpha$\n", "(which is stored within the runtime parameters of the integrator): if $\\alpha$\n", "is currently 0, we set it to 1, otherwise we set it to 0.\n", "\n", "Let us proceed to the construction of the integrator:" ] }, { "cell_type": "code", "execution_count": 13, "id": "9aa86e4a", "metadata": {}, "outputs": [], "source": [ "# Construct the damped pendulum integrator.\n", "ta = hy.taylor_adaptive(\n", " [\n", " (x, v),\n", " # NOTE: alpha is represented as\n", " # the first (and only) runtime\n", " # parameter: par[0].\n", " (v, -9.8 * hy.sin(x) - hy.par[0] * v),\n", " ],\n", " [0.05, 0.025],\n", " # The list of terminal events.\n", " t_events=[t_ev],\n", ")" ] }, { "cell_type": "markdown", "id": "52552430", "metadata": {}, "source": [ "Similarly to the non-terminal events case, the list of terminal events\n", "is specified when constructing an integrator via the ``t_events`` keyword argument.\n", "\n", "If a terminal event triggers within the single-step functions (``step()`` and ``step_backward()``),\n", "the outcome of the integration will contain the index of the event that triggered. Let us see a simple example:" ] }, { "cell_type": "code", "execution_count": 14, "id": "f90d1825", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Event index: 0\n" ] } ], "source": [ "# Propagate step-by-step until the event triggers.\n", "oc, h = ta.step()\n", "while oc == hy.taylor_outcome.success:\n", " oc, h = ta.step()\n", "\n", "# Print the outcome to screen.\n", "print(\"Event index: {}\".format(int(oc)))" ] }, { "cell_type": "markdown", "id": "59ef83e2", "metadata": {}, "source": [ "The screen output confirms that the first (and only) event triggered. For stopping terminal events,\n", "the numerical value of the outcome is the opposite of the event index minus one.\n", "\n", "Because here we used the single step\n", "function, even if the event's callback returned ``True`` the integration was stopped in correspondence of the\n", "event. Let us now use the ``propagate_grid()`` function instead, so that the integration resumes after the\n", "execution of the callback:" ] }, { "cell_type": "code", "execution_count": 15, "id": "2b6d0469", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Final time: 10.0\n" ] }, { "data": { "image/png": "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TZgwQU888YTWrFmjH/zgB/rxj3+s3bt3210aIElauHCh7r//fi1btkwLFixQTU2Nhg4dqoqKCrtLA05o5cqVevnll3XhhRfaXQrQSFlZmS677DJFRETogw8+0Ndff60//vGPSkxMtLs0IGDKlCn6y1/+ooKCAm3cuFFTp07VH/7wBz3//PN2l4YQVlFRoYsuukgFBQUn/P3UqVM1bdo0FRQUaOXKlUpPT9eQIUNUXl7ewpWeOx7Z50ADBgxQ37599eKLLwa29ejRQzfeeKPy8/NtrAw4sQMHDig1NVULFy7UFVdcYXc5QCPffvut+vbtqxkzZujpp59Wnz59NH36dLvLAiRJjz/+uJYsWcIVfWjVhg8frrS0NL366quBbbfccotiY2P1xhtv2FgZUM/lcmnevHm68cYbJdXP8mdkZGjChAl67LHHJEnHjh1TWlqapkyZorFjx9pY7Zljpt9h/H6/Vq1apaFDhzbaPnToUC1dutSmqoBT83q9kqSkpCSbKwGauv/++3Xdddfphz/8od2lAE2899576t+/v37yk58oNTVVubm5mjlzpt1lAY1cfvnl+vjjj7VlyxZJ0tq1a/X555/r2muvtbky4MR27NihkpKSRj1VVFSUrrzyyqDsqcLtLgDmOnjwoGpra5WWltZoe1pamkpKSmyqCjg5wzA0ceJEXX755crJybG7HKCRt956S6tXr9bKlSvtLgU4oe3bt+vFF1/UxIkT9atf/UorVqzQ+PHjFRUVpZ/+9Kd2lwdIkh577DF5vV51795dYWFhqq2t1TPPPKORI0faXRpwQg1904l6ql27dtlR0jmh6Xcol8vV6M+GYTTZBrQGDzzwgNatW6fPP//c7lKARoqKivTQQw/po48+UnR0tN3lACdUV1en/v37a/LkyZKk3NxcbdiwQS+++CJNP1qNuXPn6s0339ScOXPUq1cvFRYWasKECcrIyNBdd91ld3nASTmlp6Lpd5iUlBSFhYU1mdUvLS1t8k0VYLcHH3xQ7733nhYtWqTMzEy7ywEaWbVqlUpLS9WvX7/AttraWi1atEgFBQU6duyYwsLCbKwQkNq1a6eePXs22tajRw+98847NlUENPXII4/o8ccf1+233y5J6t27t3bt2qX8/HyafrRK6enpkupn/Nu1axfYHqw9Fff0O0xkZKT69eunBQsWNNq+YMECDRo0yKaqgMYMw9ADDzygv//97/rkk0+UlZVld0lAE9dcc43Wr1+vwsLCwE///v11xx13qLCwkIYfrcJll13W5JGnW7ZsUadOnWyqCGiqsrJSbnfjtiMsLIxH9qHVysrKUnp6eqOeyu/3a+HChUHZUzHT70ATJ07U6NGj1b9/fw0cOFAvv/yydu/erXHjxtldGiCpfmG0OXPm6N1331V8fHzgyhSPx6OYmBibqwPqxcfHN1ln4rzzzlNycjLrT6DVePjhhzVo0CBNnjxZt956q1asWKGXX35ZL7/8st2lAQHXX3+9nnnmGXXs2FG9evXSmjVrNG3aNN1zzz12l4YQ9u2332rr1q2BP+/YsUOFhYVKSkpSx44dNWHCBE2ePFnZ2dnKzs7W5MmTFRsbq1GjRtlY9dnhkX0ONWPGDE2dOlX79u1TTk6OnnvuOR6FhlbjZPdCzZo1S2PGjGnZYoAzMHjwYB7Zh1bn/fff16RJk/TNN98oKytLEydO1L333mt3WUBAeXm5fv3rX2vevHkqLS1VRkaGRo4cqSeffFKRkZF2l4cQ9dlnn+mqq65qsv2uu+7Sa6+9JsMw9Jvf/EYvvfSSysrKNGDAAL3wwgtB+cU/TT8AAAAAAA7FPf0AAAAAADgUTT8AAAAAAA5F0w8AAAAAgEPR9AMAAAAA4FA0/QAAAAAAOBRNPwAAAAAADkXTDwAAAACAQ9H0AwAAS+Xl5alPnz52lwEAQEhyGYZh2F0EAAAITi6X65S/v+uuu1RQUKBjx44pOTm5haoCAAANaPoBAMBZKykpCbyeO3eunnzySW3evDmwLSYmRh6Px47SAACAuLwfAACcg/T09MCPx+ORy+Vqsu37l/ePGTNGN954oyZPnqy0tDQlJibqN7/5jWpqavTII48oKSlJmZmZ+utf/9roXHv37tVtt92mNm3aKDk5WSNGjNDOnTtb9gMDABBkaPoBAECL++STT1RcXKxFixZp2rRpysvL0/Dhw9WmTRstX75c48aN07hx41RUVCRJqqys1FVXXaW4uDgtWrRIn3/+ueLi4jRs2DD5/X6bPw0AAK0XTT8AAGhxSUlJ+vOf/6xu3brpnnvuUbdu3VRZWalf/epXys7O1qRJkxQZGaklS5ZIkt566y253W698sor6t27t3r06KFZs2Zp9+7d+uyzz+z9MAAAtGLhdhcAAABCT69eveR2fzf3kJaWppycnMCfw8LClJycrNLSUknSqlWrtHXrVsXHxzc6TlVVlbZt29YyRQMAEIRo+gEAQIuLiIho9GeXy3XCbXV1dZKkuro69evXT7Nnz25yrLZt21pXKAAAQY6mHwAAtHp9+/bV3LlzlZqaqoSEBLvLAQAgaHBPPwAAaPXuuOMOpaSkaMSIEVq8eLF27NihhQsX6qGHHtKePXvsLg8AgFaLph8AALR6sbGxWrRokTp27Kibb75ZPXr00D333KOjR48y8w8AwCm4DMMw7C4CAAAAAACYj5l+AAAAAAAciqYfAAAAAACHoukHAAAAAMChaPoBAAAAAHAomn4AAAAAAByKph8AAAAAAIei6QcAAAAAwKFo+gEAAAAAcCiafgAAAAAAHIqmHwAAAAAAh6LpBwAAAADAoWj6AQAAAABwqP8PnYDZz93R5WEAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Construct a time grid from the current time to t=10.\n", "t_grid = np.linspace(ta.time, 10, 1000)\n", "\n", "# Propagate over the time grid.\n", "x_hist = ta.propagate_grid(t_grid)[5][:, 0]\n", "\n", "# Display the time evolution for the x variable.\n", "fig = plt.figure(figsize=(12, 6))\n", "plt.plot(t_grid, x_hist)\n", "plt.xlabel(\"Time\")\n", "plt.ylabel(\"x\")\n", "\n", "# Put vertical lines in correspondence of\n", "# the detected events.\n", "for ev_time in zero_vel_times:\n", " plt.axvline(x=ev_time, linestyle=\"--\", color=\"gray\")\n", "\n", "print(\"Final time: {}\".format(ta.time))" ] }, { "cell_type": "markdown", "id": "49c4ea5a", "metadata": {}, "source": [ "The screen output confirms that indeed the integration continued up to the final time $t = 10$.\n", "\n", "The plot shows how the event correctly triggered at $v=0$ and how, in the time intervals in which $\\alpha = 1$, the motion of the pendulum was damped by the air drag.\n", "\n", "### Cooldown\n", "\n", "One notable complication when restarting an integration that was stopped in correspondence of a terminal event\n", "is the risk of immediately re-triggering the same event, which would lead to an endless loop without any progress\n", "being made in the integration.\n", "\n", "In order to avoid this issue, whenever a terminal event occurs the event enters\n", "a *cooldown* period. Within the cooldown period, occurrences of the same event are ignored by the event detection\n", "system.\n", "\n", "The length of the cooldown period is, by default, automatically deduced by heyoka.py, following a heuristic\n", "that takes into account:\n", "\n", "* the error tolerance of the integrator,\n", "* the derivative of the event equation at the trigger time.\n", "\n", "The heuristic works best under the assumption that the event equation does not change (much) after the\n", "execution of the event's callback. If, for any reason, the automatic deduction heuristic is\n", "to be avoided, it is possible to set a custom value for the cooldown.\n", "A custom cooldown period can be selected when constructing\n", "a terminal event via the ``cooldown`` keyword argument.\n", "\n", "Note that manually modifying the integrator's time or state does **not** automatically reset the cooldown values\n", "for terminal events. This could in principle lead to missing terminal events when the integration restarts.\n", "For this reason, a method called ``reset_cooldowns()`` is available to clear the cooldown timers of\n", "all terminal events.\n", "\n", "## Limitations and caveats\n", "\n", "### Badly-conditioned event equations\n", "\n", "Because heyoka.py's event detection system is based on polynomial root finding techniques, it will experience\n", "issues when the Taylor series of the event equations have roots of multiplicity greater than 1. This is usually\n", "not a problem in practice, unless the event equations are written in such a way to always generate polynomials\n", "with multiple roots.\n", "\n", "For instance, an event equation such as\n", "\n", "$$\n", "\\left[ g\\left( t, \\boldsymbol{x} \\left( t \\right) \\right) \\right]^2 = 0\n", "$$\n", "\n", "will be troublesome, because both the event equation *and* its time derivative will be zero\n", "when the event triggers. This will translate to a Taylor series with a double root in correspondence\n", "of the event trigger time, which will lead to a breakdown of the root finding algorithm.\n", "This, at best, will result in reduced performance and, at worst, in missing events altogether.\n", "Additionally, in case of terminal events the automatically-deduced cooldown value in correspondence of\n", "a double root will tend to infinity.\n", "\n", "As a general rule, users should then avoid defining event equations in which the event trigger times\n", "are stationary points.\n", "\n", "Note that missed events due to badly-conditioned polynomials will likely be flagged by heyoka's logging system.\n", "\n", "### Event equations and timestepping\n", "\n", "As explained earlier, the differential equations of the events are added to the ODE system and\n", "integrated together with the original equations. Because of this, event equations influence the\n", "selection of the adaptive timestep, even if no event is ever detected throughout the integration.\n", "\n", "For instance, the absolute value of the left-hand side of the event equation at the beginning of the timestep is taken\n", "into account for the determination of the timestep size in relative error control mode. Thus, if\n", "the typical magnitude of the left-hand side of the event equation throughout the integration is much larger than the typical\n", "magnitude of the state variables, the integration error for the state variables will increase with respect\n", "to an integration without event detection.\n", "\n", "As another example, an event equation which requires small timesteps for accurate numerical propagation\n", "(e.g., a highly-stiff equation) will inevitably slow down also the propagation of the ODEs." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.13" } }, "nbformat": 4, "nbformat_minor": 5 }