{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<span style=\"font-size:8pt\"><i>ENSAM-Bordeaux, Mathématiques et informatique. Date : le 17/11/22. Auteur : Éric Ducasse. Version : 1.3</i></span>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "import sympy as sb\n",
    "sb.init_printing()\n",
    "from IPython.display import display"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Version de sympy :  1.11.1\n"
     ]
    }
   ],
   "source": [
    "print(\"Version de sympy : \", sb.__version__) "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# <span style=\"color:#0066BB\"> **Calcul formel : TD n°2, seconde partie** </span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<div class=\"alert alert-block alert-danger\"> <span style=\"color:#800000\"> <b>Pour chaque exercice, faire exécuter la partie <i>exemples</i> cellule par cellule <tt>(Maj+Entrée)</tt>, avant de passer à la partie <i>Travail à faire</i>.</b> </span> </div>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## <span style=\"color: #0000BB\"> *Exercice 12* </span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### <span style=\"color:purple\"> 12.1 Objectifs </span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "####  <span style=\"color:#005500\"><i>Savoir définir et résoudre un système d'équations algébriques, en utilisant la fonction</i> <span style=\"color:#604000;font-size:12pt\"><tt><b>sympy.solve</b></tt></span> <i>;<br /> savoir utiliser le résultat d’un calcul symbolique pour créer une fonction, en maîtrisant la fonction</i> <span style=\"color:#604000;font-size:12pt\"><tt><b>sympy.lambdify</b></tt></span>. </span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Documentation sur les équations et les solveurs :<br />https://docs.sympy.org/latest/tutorial/solvers.html"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Documentation sur $\\mathtt{lambdify}$ :<br />https://docs.sympy.org/latest/tutorial/basic_operations.html#lambdify"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### <span style=\"color:purple\"> 12.2 Exemples </span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Problème à résoudre : déterminer les paramètres $a$ et $b$ d'une fonction paramétrée pour satisfaire des conditions initiales données."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<span style=\"color:#006020\">*$a)$ Définition d'une expression représentant une fonction de la variable $t$ avec 4 paramètres $a$, $b$, $\\omega$ et $\\tau$.*</span>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left(a \\cos{\\left(\\omega t \\right)} + b \\sin{\\left(\\omega t \\right)}\\right) e^{- \\frac{t}{\\tau}}$"
      ],
      "text/plain": [
       "                           -t \n",
       "                           ───\n",
       "                            τ \n",
       "(a⋅cos(ω⋅t) + b⋅sin(ω⋅t))⋅ℯ   "
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a,b,t = sb.symbols(\"a,b,t\", real=True)\n",
    "w,tau = sb.symbols(\"omega,tau\", positive=True)\n",
    "U_de_t = ( a*sb.cos(w*t) + b*sb.sin(w*t) ) * sb.exp(-t/tau)\n",
    "U_de_t"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<span style=\"color:#006020\">*$b)$ Valeurs initiales de la fonction et de sa dérivée.*</span>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAA/klEQVR4nJXRMSuFcRQG8N8VI9GtK+UOGGxMPgCbDMokgzIqk8mgTsegfAGrwcJXEDHrCiVFPoAMZkW9Bi+9983AWc7p/3+envOcp1EUhf9Wb/0hM1ewgBmM4ANP2I+IA2hUlTKzH6/o4B4vaGERTWxFxF5dqUA7Ip5r6tt4xBr2Gn/1lJkPGIqIVm/tYwgbpadJDKCnArnuOkRmTuEEw7jEUenvHWNYxW0XCYcYxGxEXNQ22CnHjm/pzGxjChe/EAbLA8DVDwlvZR/PzL4KoYljjPrK64ZKTpl5hrnS7KmvYOdxjiXcRcR0VQmWS19trGMCm9gtcZ1v4J9zqtYnMiBTlNZlcZcAAAAASUVORK5CYII=\n",
      "text/latex": [
       "$\\displaystyle a$"
      ],
      "text/plain": [
       "a"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "valeur_initiale = U_de_t.replace(t,0) ; valeur_initiale"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAGcAAAAUCAYAAACQ9yOWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAEeElEQVR4nO3ZW4id1RUH8N94S4iXxAu1SoMYhQQkabwkQpEStd7Qko4PtpZeUhSsocSQQkshdnXlIeIFDWJKEUwcpTX1wVRElLQk0aKQNjfRlmKrjj6kxlDBEMG0idOHvY89/WbmnEk4yYyQPwzr7PXttff69tp7rf/+pm9oaMgxTEwcN94OHMPoOGG8Hfi8ITMXYzVui4g1R3KuCROczDwbu7A6IpaMtz8dcEmV2470RBMprS1U/Fk/3o50waX4BH850hNNmJODfvwLLx+pCTJzEdbiyojYfBj2k3ARdkTEgd56Nxw9D05mfhs3Yh7OwQH8A7+MiLWj2EzFVfhNRBzMzLPwAfq6TPdvTI2IT3rlfxfMxonYlplzcTcWYDJewbKIeKNplJl34Fd4MCJ+PNrgmfk2zscXI2J3T9NaZp6KAczAH/EInqkTrsnMn45ieiNOqn3hFKxA1r+Bqt/WpktlMY5WYCgpDc5TgjGEx7Ad12BjZk5rN6i19F68j+gy/tYqv0LvT84QpkfE+w0Hl+NN/EBxtIl+fIzfQ0QM4hdt9rfj+1gXEQ/02OdDQSs4l+OKiNjRepCZT+C7WIyVbTY/x1TcHRH7uow/WOUsekwIImJfMzBV/0+FiZ3RfJaZk3E9XuhwCuZWubM3nh42WkztJ+2BqVhd5eyWoqbn27AXY6HdH1d5Oo2Tk5mDypEdK34dEd9psz8dP1LS1Eyc5v83QPOF4FoljXViaV+u8rWxOtblXTZlZlM3EBGLOox3orLw7+KJEbq0NuXkNt0tmISnI6K18DJzPpbh4Yh4ta3/lCr3MzytvaXQxLFiV9uEc7ABZ+NPWIcP8R+l5nzPyIvbrxT250eaIDP7MAe7ImLPIfi2CtMaurkKZR/wvxTSws4u481W6uJzozC11kZ4t023oMqXGn1vwjdxf0N/YZV/pxGciLi6i4Od8KSyGMNoamauqD+3NvTH4+vYGBEfjTLu+coJfOVQnImIVU1dpdIL8fhhUOlWShsc5Xl/lRvadDOr/Fuj73VVvtfm23G4ojZfpkc1JzOnK7t78wiBmaYQAYbfqr+KM3VOabOqHEZRjzJaZGCkunkO7lB2fHtwpla5r63vLMyvzf1tfb+GL2BLJUQ9IwStVDij5uaWI2fit/iSct/Z2bC7GZ/i2Q5jn1bl3p54evhoBefWzDy5pczMU5QaNAlLGimvlYbn1L59SirbXvUzq34K7qu6e1rGPaHSEbEnMzcqF8ktmfkH5QJ6AzYpAfjrCGzsG3g1InZ3GP7NKpdm5hn4c0Q81Qu/x4rMPEGpOTuUor0zM3+nBORmnIulEfFiw3Q9LsOqemm9uLavwWYMZOZzSqqdiUcj4rON2ksq/S2l7kzHnbhAYSQr6zzNejNPOVEdv6VFxHYsV4jFUuXljjYuUljYVlyN15U0tkj5xnZVRDw8gt39eAgH8UPlMFwbEVtq+2TcpRCixVX3GfrG659tmbkSP8OMiHhnXJyY4BjPr9L9eO1YYEbHuJ2cY+iO/wJG8mB9Ep6gDAAAAABJRU5ErkJggg==\n",
      "text/latex": [
       "$\\displaystyle - \\frac{a}{\\tau} + b \\omega$"
      ],
      "text/plain": [
       "  a      \n",
       "- ─ + b⋅ω\n",
       "  τ      "
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "derivee_initiale = U_de_t.diff(t).replace(t,0) ; derivee_initiale"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<span style=\"color:#006020\">*$c)$ Détermination des paramètres $a$ et $b$ qui permettent à la fonction de satisfaire des conditions initiales données.*</span>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAPgAAAAVCAYAAABrCyNXAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAH30lEQVR4nO2cf4wdVRXHP1ta2gDSUppSDA1QiUVKaykCiaJWEBTQ4DZGrPHHEozVxtTnqpia4pdDwpparbVYQzBAFyKiiW5NQ6DFlK1YkkJpd7X1x6K4mGb50UoiAikUWP84d3Zn5/2Yebvz3tuu75tszsy9d+6cN/ece8+Pe7dlcHCQJppoYmJicnRhZkuBR2J1f5N0br0ZaqKJCGa2EtgE3CDprkbzMx5hZrOAQ/EySS3R9eSiJ2An0A0crilnTTQMZnYaMABskrSq0fxUwJJAn2woF+MbrwIWrtuAM+OVpRS8W9LNteWpiQbjWmAS0NVoRlJwIXAEONBoRsYrJL0K3AxDVniqgjcx8dEK/Bv4fa1eYGZtwN3AhyR1j+L5qcACYJ+kN/Ll7v8HVSm4mX0GuAa4CDgdeAP4O/BTSXfnz14qP98BbgWWSepK1J0J9ANdkpbVm7d6odoxMbPpwGXAfZLeDGWzgBeAlmT7BF4Hpks6kt8vKIuFwBTgSTNbDNwELAWmAbuAdkn7kw+Z2QrgdmC9pG+U69zMngbOBuZIej537ku/czXQAaySdFuJ+nnAX4Be4BJJY46AT6qCubcBncA84FHgJ8Bv8I90l5l9e6zMjAKVfLT3BLqvTrzUHaMck2uA40O7CCcBt+C+nIU+wb+rxf7a66Tc4OY5uMm5CxgE7gT2AlcAO8xsRvyBEFtYCzwHKKX/PYG+Nyd+s6A30PPL1K/Fx+breSg3VLeCDwJzJT0XLzSzNUAfcH1gsCTMrADMqOJ9PZK2pLS5EDgs6V8l6ia8gjO6MWkFXgEejgok9RP8uPD8F4EvAPdL+kEtGM+ASMEvAS6VNDSOZnYP8DlgJb4iRvguMB24SdLLKf33B1o2U1QDmf1joAtKvOt9wCeBX0naVcU7KyKzgocPVvTRJD1rZgPAzJQuCiQCACnoBLaUqzSzmcBZwLYyTSIF31vFO48pVDsmZjYN+CjwYMpKvDjQnnw4HRUi6+zGuHIHbMIVfGFUENyMG4CXgCwptVcCPaVCmwI5yqykg2b2IgkFN7MWYD3wGpCrJZxZwc3sFOCruIk3HziZkSZ+xZVS0lmj4K8SIgHYU6H+BUkD8cKQW/0W7q8eAAqSHs2ZtyKYWT/VCcvPJX02pc9qx+RK3BxPi56/O9Deiq2G+ein/G97xMySZZ2S2ir0NwVX3meAe0o0iSyWabGyTwFT8RUwUl7M7GKgHdgo6bFY+xMCfa0cHzWQWfBVfKmZnSHpYChbDlwMrA3W1BDGKq+ZFNzMFgHbgdOAx4H7gReBo7i/93kyCkOOiEy4Iv87BCtmAg8lyq8Dfoybdn8AvgI8aGbnlTHz88Q/8JRPVgxUqhzlmLTigbIHKvTbAiwCBiQdKtcugQ0Um7KL8XRcJ8PmcISelP4W4r7o1jIR9GgyeSZWtjTQnYm2HwOuA9Ylys8J9KkUXvJGL87rAuBgsKo68CBn3N3IRV6zruD34gNYlPIws1vCZbmVNGpXIF9/5oJAS5ngVweaXMHagc2SfhbuV5nZVfiHW10Fb1VD0uU5d1nVmJjZccDHgR2S/lOh37NxSyCzHyhpQ7IspMmuxb93d7I+BZF11l+mvjXQ7bGy+YH+NdH2I4EOKYSZTQIuDbdlU4U1ihtFfvj5uHtZwCesFZJeSrQds7ymKriZzcVn9G0lBGkGHsiB9N1GBXL0Z/DgyFFJ8Vk8yp+uCLd7Y+XH46t+Mmi0nfpGUseMUY7JB4BTSTfPo6BTUQqqjoiss6K4jpmdjo/vU4xU8OmBvhxrey5u+sJIU/zDwGxgd9IkTqBAvjILsUi6mc3GFXU/niEYQl7ymmUFj8zKeWY2RdLRwMCpwH3AGXjutadSJzXwZ14HppjZOyX1BZ5OBO5gOA0RX8FnAccByZzn8/iAD8HMNuNR5Oslbc6Z7zwwmjFZBrwF/Dal75MDTa4m9USk4MvNrCPyqc3sJNwnn4rnkuPm+yFcGRcBvcHVWIdP8kvwFf4JMzsB+H545nuVmKiRD34AeBM30Q3/3u3RnoQYMstrJaQquKRDZrYD3xyx28x+hzv8V+GHU94C/lzH/GiEbfjmjp1m1oUHjy7HTaBn8SDK0yWeS+YXW0qURYGqcbmDapRj8gngsQybOvoCLYRMxROSfpHrD6gAM5uM++D78DHsMbMtuFIvA96OB5oeSjzahWdONoSNMReE+yvwsxWdZrYVdxvmA3dISpvscoekI2bWh09ES4AHJD1c4ZEs8loWWTe6fBr3+ebi9v87cP+gI/RR0f+uEW4FNuI/tg04D9+ssRyYg/tD8Q9xGJ855yT6mU3xLLkQ+C8VglHjAJnHxMwuwlf11L3nkvYCa/BgXYHhdGO9sACPju/BJ+w/4SZ5G776XSZpY4nn1gE/wsf4y/jidaWk3eH+ROBruOW3MpQ1Cr34hDUIfLNMm2rktSxaovPgseOiNlEPm5jZbqBX0pdiZX3AryWtDvcz8H3aP5R0Y0MYzRlm1oH7evMk/bPR/DSRDVnkNdG+G/hg2nFRmZmYmOfB1wP3mtnjeJR4BW7y3R5r83589Vpff/ZqhlZcUJrKfWwhVV5LnQePI67g/QyfK4UJeB5c0i9DIGoN7rPuB66OR+IlbWXkBopjHpLe1WgemqgeWeSVkefBi9DS/JdNTTQxcZH5NFkTTTRx7OF/9J8CgsA27IgAAAAASUVORK5CYII=\n",
      "text/latex": [
       "$\\displaystyle \\left[ a = u_{0}, \\  - \\frac{a}{\\tau} + b \\omega = v_{0}\\right]$"
      ],
      "text/plain": [
       "⎡          a           ⎤\n",
       "⎢a = u₀, - ─ + b⋅ω = v₀⎥\n",
       "⎣          τ           ⎦"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "u0,v0 = sb.symbols(\"u_0,v_0\")\n",
    "equations = [sb.Eq(valeur_initiale,u0), sb.Eq(derivee_initiale,v0)]\n",
    "equations"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left\\{ a : u_{0}, \\  b : \\frac{\\tau v_{0} + u_{0}}{\\omega \\tau}\\right\\}$"
      ],
      "text/plain": [
       "⎧          τ⋅v₀ + u₀⎫\n",
       "⎨a: u₀, b: ─────────⎬\n",
       "⎩             ω⋅τ   ⎭"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "regle_ab = sb.solve(equations, [a,b]) ; regle_ab"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<span style=\"color:#006020\">*$d)$ Solution du problème.*</span>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\frac{\\left(\\omega \\tau u_{0} \\cos{\\left(\\omega t \\right)} + \\left(\\tau v_{0} + u_{0}\\right) \\sin{\\left(\\omega t \\right)}\\right) e^{- \\frac{t}{\\tau}}}{\\omega \\tau}$"
      ],
      "text/plain": [
       "                                          -t \n",
       "                                          ───\n",
       "                                           τ \n",
       "(ω⋅τ⋅u₀⋅cos(ω⋅t) + (τ⋅v₀ + u₀)⋅sin(ω⋅t))⋅ℯ   \n",
       "─────────────────────────────────────────────\n",
       "                     ω⋅τ                     "
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "solu = U_de_t.xreplace(regle_ab).simplify()\n",
    "solu"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<span style=\"color:#006020\">*$e)$ Définition de fonctions utilisant le dernier résultat.*</span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "La fonction <span style=\"color:#604000;font-size:12pt\"><tt><b>lambdify</b></tt></span> est faite pour définir une fonction à valeurs numériques :"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Convert a SymPy expression into a function that allows for fast\n",
      "    numeric evaluation.\n",
      "\n",
      "    .. warning::\n",
      "       This function uses ``exec``, and thus should not be used on\n",
      "       unsanitized input.\n",
      "\n",
      "    .. deprecated:: 1.7\n",
      "       Passing a set for the *args* parameter is deprecated as sets are\n",
      "       unordered. Use an ordered iterable such as a list or tuple.\n",
      "\n",
      "    Explanation\n",
      "    ===========\n",
      "\n",
      "    For example, to convert the SymPy expression ``sin(x) + cos(x)`` to an\n",
      "    equivalent NumPy function that numerically evaluates it:\n",
      "\n",
      "    >>> from sympy import sin, cos, symbols, lambdify\n",
      "    >>> import numpy as np\n",
      "    >>> x = symbols('x')\n",
      "    >>> expr = sin(x) + cos(x)\n",
      "    >>> expr\n",
      "    sin(x) + cos(x)\n",
      "    >>> f = lambdify(x, expr, 'numpy')\n",
      "    >>> a = np.array([1, 2])\n",
      "    >>> f(a)\n",
      "    [1.38177329 0.49315059]\n",
      "\n",
      "   \n"
     ]
    }
   ],
   "source": [
    "print(sb.lambdify.__doc__[:817])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* <span style=\"color:#0050A0\"><b>Fonction à valeurs symboliques : on utilise <span style=\"color:#604000;font-size:12pt\"><tt>xreplace</tt></span></b></span>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\frac{\\left(\\pi f u_{0} \\cos{\\left(2 \\pi f t \\right)} + \\frac{\\left(\\alpha u_{0} + v_{0}\\right) \\sin{\\left(2 \\pi f t \\right)}}{2}\\right) e^{- \\alpha t}}{\\pi f}$"
      ],
      "text/plain": [
       "⎛                      (α⋅u₀ + v₀)⋅sin(2⋅π⋅f⋅t)⎞  -α⋅t\n",
       "⎜π⋅f⋅u₀⋅cos(2⋅π⋅f⋅t) + ────────────────────────⎟⋅ℯ    \n",
       "⎝                                 2            ⎠      \n",
       "──────────────────────────────────────────────────────\n",
       "                         π⋅f                          "
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "alpha,f = sb.symbols(\"alpha,f\", positive=True)\n",
    "solu.xreplace({tau:1/alpha, w:2*sb.pi*f}).simplify()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\frac{\\left(\\frac{\\sin{\\left(2 \\pi t \\right)}}{2} + \\pi \\cos{\\left(2 \\pi t \\right)}\\right) e^{- t}}{\\pi}$"
      ],
      "text/plain": [
       "⎛sin(2⋅π⋅t)               ⎞  -t\n",
       "⎜────────── + π⋅cos(2⋅π⋅t)⎟⋅ℯ  \n",
       "⎝    2                    ⎠    \n",
       "───────────────────────────────\n",
       "               π               "
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "def Us(time, initial_value=1, initial_derivative=0, frequency=1, time_constant=1, expression=solu) : \n",
    "    regle = {u0:initial_value, v0:initial_derivative, w:sb.pi*2*frequency, tau:time_constant}\n",
    "    return expression.xreplace(regle).simplify()\n",
    "# Remarque : on peut aussi définir une fonction lambda, avec des performances identiques\n",
    "Us(t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\frac{e^{- \\alpha t} \\sin{\\left(2 \\pi f t \\right)}}{2 \\pi f}$"
      ],
      "text/plain": [
       " -α⋅t             \n",
       "ℯ    ⋅sin(2⋅π⋅f⋅t)\n",
       "──────────────────\n",
       "      2⋅π⋅f       "
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Us(t, frequency=f, time_constant=1/alpha, initial_value=0, initial_derivative=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* <span style=\"color:#0050A0\">**Fonction vectorisée à valeurs numériques**</span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Avec <span style=\"color:#604000;font-size:12pt\"><b><tt>lambdify</tt></b></span>, on ne peut pas définir de valeurs par défaut.\n",
    "Si on veut le faire, il faut procéder en deux temps, comme ci-dessous."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "u_numerique = sb.lambdify( (t, u0, v0, w, tau), solu, \"numpy\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 0.          0.2         0.4         0.6         0.8         1.        ]\n",
      " [ 1.          0.37692918 -0.47959259 -0.49533868  0.07083745  0.36787944]]\n"
     ]
    }
   ],
   "source": [
    "T = np.arange(0, 1.01, 0.2)\n",
    "print( np.array( [ T , u_numerique(T, 1, 0, 2*np.pi, 1) ] ) )"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### <span style=\"color:#005000\"> Rappel : le mot-clef <span style=\"color:#803000;font-size:12pt\"><b><tt>lambda</tt></b></span> permet de définir une fonction autrement qu'avec un bloc <span style=\"color:#803000;font-size:12pt\"><b><tt>def</tt></b></span> :</span>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 0.          0.2         0.4         0.6         0.8         1.        ]\n",
      " [ 1.          0.37692918 -0.47959259 -0.49533868  0.07083745  0.36787944]]\n"
     ]
    }
   ],
   "source": [
    "Un = lambda t, u0=1, v0=0, w=2*np.pi, tau=1 : u_numerique(t, u0, v0, w, tau)\n",
    "print( np.array( [T, Un(T)] ) )"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### <span style=\"color:#005000\"> Définition standard avec un bloc <span style=\"color:#803000;font-size:12pt\"><b><tt>def</tt></b></span> :</span>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[ 0.          0.2         0.4         0.6         0.8         1.        ]\n",
      " [ 1.          0.37692918 -0.47959259 -0.49533868  0.07083745  0.36787944]]\n"
     ]
    }
   ],
   "source": [
    "def Un_classique(t, u0=1, v0=0, w=2*np.pi, tau=1) :\n",
    "    return u_numerique(t, u0, v0, w, tau)\n",
    "print( np.array( [T, Un_classique(T)] ) )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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F6anSN84J/3SMukb56RfWiZ941xP6ZfWRphsJBFcCCGEEMIFEjQJIYQQQrhAgiYvEBAQwPLlywkICOjqpnQ70jfOSb+0TPrGOemXlknfOOeL/SKJ4EIIIYQQLpCRJiGEEEIIF0jQJIQQQgjhAgmahBBCCCFcIEGTEEIIIYQLJGjqJl5++WUGDx5MYGAg48ePZ9OmTa1un5GRwfjx4wkMDGTIkCG8+uqrl6mll197+mbDhg3odLpmP4cPH76MLfa8jRs3cv3119O3b190Oh2ffvppm/v4wjXT3n7xlevlmWeeYeLEiYSFhREdHc2NN95ITk5Om/v5wjXTkb7xhevmlVdeYdSoUfbClampqaxcubLVfXzhepGgqRv44IMPeOihh3j88cfJysriqquuYt68eZw8edLp9nl5ecyfP5+rrrqKrKwsfv3rX/PTn/6Ujz/++DK33PPa2zc2OTk5FBQU2H+GDx9+mVp8eVRVVTF69Gheeukll7b3lWumvf1i09Ovl4yMDB544AEyMzNJT0+nvr6etLQ0qqqqWtzHV66ZjvSNTU++bvr378///u//snPnTnbu3MmsWbO44YYbOHDggNPtfeV6QRNdbtKkSdr999/v8FpiYqL26KOPOt3+V7/6lZaYmOjw2o9+9CNtypQpHmtjV2lv36xfv14DtJKSksvQuu4B0FasWNHqNr50zdi40i++eL1omqYVFRVpgJaRkdHiNr54zWiaa33jq9dNr169tDfeeMPpe75yvchIUxerq6tj165dpKWlObyelpbGli1bnO6zdevWZttfe+217Ny5E7PZ7LG2Xm4d6RubsWPHEhcXx+zZs1m/fr0nm+kVfOWa6Shfu17KysoA6N27d4vb+Oo140rf2PjKddPQ0MD7779PVVUVqampTrfxletFgqYudv78eRoaGoiJiXF4PSYmhsLCQqf7FBYWOt2+vr6e8+fPe6ytl1tH+iYuLo6///3vfPzxx3zyySckJCQwe/ZsNm7ceDma3G35yjXTXr54vWiaxrJly5g2bRrJycktbueL14yrfeMr182+ffsIDQ0lICCA+++/nxUrVjBy5Ein2/rK9eLf1Q0Qik6nc/hd07Rmr7W1vbPXe4L29E1CQgIJCQn231NTUzl16hR//vOfufrqqz3azu7Ol64ZV/ni9fLggw+yd+9eNm/e3Oa2vnbNuNo3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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "Vt = np.linspace(0, 3.2, 500)\n",
    "plt.plot(Vt, Un(Vt), \"-r\", linewidth=1.6, label=r\"$f$ = 1 Hz ; $\\tau$ = 1 s\")\n",
    "for fq,ct in ( (1,2), (2,1) ) :\n",
    "    plt.plot(Vt, Un(Vt, w=2*np.pi*fq, tau=ct), \"-\", linewidth=1.6, \\\n",
    "             label=r\"$f$ = {} Hz ; $\\tau$ = {} s\".format(fq,ct))\n",
    "plt.grid() ; plt.legend() ; plt.xlabel(\"Temps $t$ [s]\") ; plt.ylabel(\"$u(t)$\") ;"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### <span style=\"color:purple\"> 12.3 Travail à faire </span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "L'objet de cet exercice est de définir 4 fonctions $p$ polynomiales de degré 3, que l'on considère uniquement sur l'intervalle $[0,1]$ telles que l'une des valeurs parmi $[p(0),p^{\\prime}(0),p(1),p^{\\prime}(1)]$ est 1 et les trois autres sont 0."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$a)$ Soit l'expression $P=p(X)=a+b\\,X+c\\,X^2+d\\,X^3$. Déterminer la liste $[p(0),p^{\\prime}(0),p(1),p^{\\prime}(1)]$ en fonction des paramètres $a$, $b$, $c$ et $d$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle X^{3} d + X^{2} c + X b + a$"
      ],
      "text/plain": [
       " 3      2            \n",
       "X ⋅d + X ⋅c + X⋅b + a"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a,b,c,d,X = sb.symbols(\"a,b,c,d,X\")\n",
    "P =  a + b*X + c*X**2 +d*X**3\n",
    "P"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[ a = 1, \\  b = 0, \\  a + b + c + d = 0, \\  b + 2 c + 3 d = 0\\right]$"
      ],
      "text/plain": [
       "[a = 1, b = 0, a + b + c + d = 0, b + 2⋅c + 3⋅d = 0]"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "equations1 = [ sb.Eq( P.replace(X,0), 1 ) , \\\n",
    "               sb.Eq( P.diff(X).replace(X,0), 0 ) , \\\n",
    "               sb.Eq( P.replace(X,1), 0 ) , \\\n",
    "               sb.Eq( P.diff(X).replace(X,1), 0 ) ]\n",
    "equations1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[ a = 0, \\  b = 1, \\  a + b + c + d = 0, \\  b + 2 c + 3 d = 0\\right]$"
      ],
      "text/plain": [
       "[a = 0, b = 1, a + b + c + d = 0, b + 2⋅c + 3⋅d = 0]"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "equations2 = [ sb.Eq( P.replace(X,0), 0 ) , \\\n",
    "               sb.Eq( P.diff(X).replace(X,0), 1 ) , \\\n",
    "               sb.Eq( P.replace(X,1), 0 ) , \\\n",
    "               sb.Eq( P.diff(X).replace(X,1), 0 ) ]\n",
    "equations2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[ a = 0, \\  b = 0, \\  a + b + c + d = 1, \\  b + 2 c + 3 d = 0\\right]$"
      ],
      "text/plain": [
       "[a = 0, b = 0, a + b + c + d = 1, b + 2⋅c + 3⋅d = 0]"
      ]
     },
     "execution_count": 46,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "equations3 = [ sb.Eq( P.replace(X,0), 0 ) , \\\n",
    "               sb.Eq( P.diff(X).replace(X,0), 0 ) , \\\n",
    "               sb.Eq( P.replace(X,1), 1 ) , \\\n",
    "               sb.Eq( P.diff(X).replace(X,1), 0 ) ]\n",
    "equations3"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[ a = 0, \\  b = 0, \\  a + b + c + d = 0, \\  b + 2 c + 3 d = 1\\right]$"
      ],
      "text/plain": [
       "[a = 0, b = 0, a + b + c + d = 0, b + 2⋅c + 3⋅d = 1]"
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "equations4 = [ sb.Eq( P.replace(X,0), 0 ) , \\\n",
    "               sb.Eq( P.diff(X).replace(X,0), 0 ) , \\\n",
    "               sb.Eq( P.replace(X,1), 0 ) , \\\n",
    "               sb.Eq( P.diff(X).replace(X,1), 1 ) ]\n",
    "equations4"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$b)$ En déduire les expressions correspondants aux 4 fonctions cherchées."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left\\{ a : 1, \\  b : 0, \\  c : -3, \\  d : 2\\right\\}$"
      ],
      "text/plain": [
       "{a: 1, b: 0, c: -3, d: 2}"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dico1 = sb.solve( equations1, (a,b,c,d) )\n",
    "dico1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left\\{ a : 0, \\  b : 1, \\  c : -2, \\  d : 1\\right\\}$"
      ],
      "text/plain": [
       "{a: 0, b: 1, c: -2, d: 1}"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dico2 = sb.solve( equations2, (a,b,c,d) )\n",
    "dico2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left\\{ a : 0, \\  b : 0, \\  c : 3, \\  d : -2\\right\\}$"
      ],
      "text/plain": [
       "{a: 0, b: 0, c: 3, d: -2}"
      ]
     },
     "execution_count": 49,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dico3 = sb.solve( equations3, (a,b,c,d) )\n",
    "dico3"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left\\{ a : 0, \\  b : 0, \\  c : -1, \\  d : 1\\right\\}$"
      ],
      "text/plain": [
       "{a: 0, b: 0, c: -1, d: 1}"
      ]
     },
     "execution_count": 50,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dico4 = sb.solve( equations4, (a,b,c,d) )\n",
    "dico4"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left( \\left(X - 1\\right)^{2} \\cdot \\left(2 X + 1\\right), \\  X \\left(X - 1\\right)^{2}, \\  - X^{2} \\cdot \\left(2 X - 3\\right), \\  X^{2} \\left(X - 1\\right)\\right)$"
      ],
      "text/plain": [
       "⎛       2                     2    2             2        ⎞\n",
       "⎝(X - 1) ⋅(2⋅X + 1), X⋅(X - 1) , -X ⋅(2⋅X - 3), X ⋅(X - 1)⎠"
      ]
     },
     "execution_count": 52,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "P1 = P.xreplace( dico1 ).factor()\n",
    "P2 = P.xreplace( dico2 ).factor()\n",
    "P3 = P.xreplace( dico3 ).factor()\n",
    "P4 = P.xreplace( dico4 ).factor()\n",
    "P1,P2,P3,P4"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$c)$ Convertir ces expressions en 4 fonctions numériques et faire tracer leurs courbes représentatives sur l'intervalle $[0,1]$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [],
   "source": [
    "p1_num = sb.lambdify( X, P1, \"numpy\" )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [],
   "source": [
    "p2_num = sb.lambdify( X, P2, \"numpy\" )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [],
   "source": [
    "p3_num = sb.lambdify( X, P3, \"numpy\" )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {},
   "outputs": [],
   "source": [
    "p4_num = sb.lambdify( X, P4, \"numpy\" )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([0. , 0.2, 0.4, 0.6, 0.8, 1. ])"
      ]
     },
     "execution_count": 57,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Vx = np.linspace(0,1,6) ; Vx"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(array([1.   , 0.896, 0.648, 0.352, 0.104, 0.   ]),\n",
       " array([0.   , 0.128, 0.144, 0.096, 0.032, 0.   ]),\n",
       " array([0.   , 0.104, 0.352, 0.648, 0.896, 1.   ]),\n",
       " array([-0.   , -0.032, -0.096, -0.144, -0.128,  0.   ]))"
      ]
     },
     "execution_count": 58,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "p1_num( Vx ),p2_num( Vx ),p3_num( Vx ),p4_num( Vx )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAg0AAADsCAYAAAD3n5WaAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABnf0lEQVR4nO2dd3hURdvG77M1vZCEdEILHSGEFhAQgQRQwUKxgSiKgIX2KWBQwVfF8kIQFUQFsWBAX8SCoASlV4EgYOgkJKQQUkjP1vn+eMiGJZu4Gzb9+eWa65Sdc3bOZHfPfWaeIgkhBBiGYRiGYf4FWV03gGEYhmGYhgGLBoZhGIZhrIJFA8MwDMMwVsGigWEYhmEYq2DRwDAMwzCMVbBoYBiGYRjGKlg0MAzDMAxjFSwaGIZhGIaxCkVdN8BeGI1GpKWlwdXVFZIk1XVzGIZhGKbBIIRAQUEBAgICIJNVPp7QaERDWloagoOD67oZDMMwDNNgSUlJQVBQUKWvNxrR4OrqCoAu2M3NzS7n1Ol02LZtGyIjI6FUKu1yzqYM96f94T61L9yf9of71P7URJ/m5+cjODjYdC+tjEYjGsqmJNzc3OwqGpycnODm5sYfdjvA/Wl/uE/tC/en/eE+tT812af/Nr3PhpAMwzAMw1iFzaJh9+7duO+++xAQEABJkvDjjz/+6zG7du1CeHg4HBwc0Lp1a3zyyScV6mzcuBGdOnWCWq1Gp06dsGnTJlubxjAMwzBMDWKzaCgqKkK3bt3w0UcfWVU/MTERI0eOxIABAxAfH49XXnkFL774IjZu3Giqc+DAAYwfPx4TJkzA33//jQkTJmDcuHE4dOiQrc1jGIZhGKaGsNmmYcSIERgxYoTV9T/55BO0aNECy5YtAwB07NgRR44cwX//+1889NBDAIBly5Zh2LBhmD9/PgBg/vz52LVrF5YtW4bY2Fhbm8gwDMMwTA1Q44aQBw4cQGRkpNm+qKgorF69GjqdDkqlEgcOHMCsWbMq1CkTGnVCRgZkMTFof/kyZPHxgFoNKJWAQkFFqQScnQFX14rF3Z1e43gRDMMwTCUYjUB+PpCTA+TmAnl5QHExUFoKlJRQKVvXagGDgY7R6WQwGv0xcmTtt7nGRUNGRgZ8fX3N9vn6+kKv1yMrKwv+/v6V1snIyKj0vBqNBhqNxrSdn58PgKxKdTrd7Tf8yhUo33sPHap5uFCrAR8fwNsbwscH8PGhZfPmEMHBQHAwLQMCSIQ0Acr+L3b5/zAAuE/tDfen/WlqfSoEcPUqkJYGpKVJyMgA0tNpmZYm4epVICdHQm4ucP06IER1Hi7lGDzYz659au25auVudasLhxCiwn5Ldapy/Vi8eDEWLVpUYf+2bdvg5OR0O80FADhkZaHtvfdCMhohGQyQ6fWQjEZa3tiWazRQlJRUKDKjEZJGA1y5Aly5gqo+EkImQ6mnJ4p9fFDi44Mif38UBgSgKCAAhQEB0Lm43Pa11Dfi4uLqugmNDu5T+8L9aX8aU5/qdDKkpTkjI8MZV6864erVsiUVrda2W6tKpYeLiw7Ozjqo1QaoVAaoVMYbS1pXKIyQyYSphIZeR1xcvN2uqbi42Kp6NS4a/Pz8KowYZGZmQqFQwMvLq8o6t44+3Mz8+fMxe/Zs03ZZYIrIyEj7xWl45BHExcVh2LBhVvvCGoSAobgYuHYNUlYWcO0arZctMzJISKSk0FKng2N2Nhyzs4EzZyqcT3h7Q7RtC4SGQnTuDNG1K0SXLoCfX4Ob/tDpdDb3J1M13Kf2hfvT/jTkPi0sBM6elXD6NHD6tIQzZyScPi3h0iXAaKz891eSBPz8AH//siXg5ycQEAD4+gp4ewMeHgLNmgGenjT7Tbdj627J1Ken7NqnZaP1/0aNi4aIiAj88ssvZvu2bduGnj17mi42IiICcXFxZnYN27ZtQ79+/So9r1qthpp62gylUmn3D6bN51SpAA8PIDS06npGI41jJScDKSlAYiJw/jyVc+eAtDRIWVkkPg4eND/W2xu44w6ga1da9ugBdO5Mthb1nJr4HzV1uE/tC/en/anvfXrtGhAfDxw7Rsv4ePoprgw3N/qJb90aaNXKfNmihQSVCkCV48y3jz371Nrz2CwaCgsLceHCBdN2YmIijh8/jmbNmqFFixaYP38+UlNT8dVXXwEApk6dio8++gizZ8/GM888gwMHDmD16tVmXhEzZszAwIED8e6772L06NH46aefsH37duzdu9fW5jUsZDKSoP7+QJ8+FV8vLCwXEWfOAKdOASdO0HZWFvDnn1TKcHAAwsKA3r2BXr2otG1L78MwDMMAIIPDQ4eAAweAo0dJIFy5Yrlu8+ZAp05Ax47ly44d6We7gQ322gWbRcORI0cwePBg03bZFMETTzyBtWvXIj09HcnJyabXW7VqhS1btmDWrFn4+OOPERAQgOXLl5vcLQGgX79+WL9+PRYsWIBXX30Vbdq0wYYNG9DH0o20KeHiQiIgLMx8f0kJkJBAAqKsHD1K34QDB6iU4eFB4qF/f2DgQBIndrD5YBiGaQgYjTRwe+AAsH8/LRMSyGDxVkJDadA2LIyW3buTPTtTjs2i4a677jIZMlpi7dq1FfYNGjQIx44dq/K8Y8aMwZgxY2xtTtPE0REID6dShtFIIxB//QUcPkzL+Hgyz42LowLQ9EV4ODBgAJX+/YFmzerkMhiGYeyN0UjPUTt2UNm7l9wZb6V1ayAiggZme/QAunUjj3mmapqGr19TQCYD2ren8vjjtE+nA06eJHuIPXuopKbS9sGDwPvvU71u3YChQ6kMHMgjEQzDNBiEAP75p1wk7NpFcQ9uxsGBBlwjIspLFXb2TBWwaGjMKJUkoXv0AKZPp29XUlK5gNizBzh7Fvj7bypLlpARZ79+JCCGDaNRCbm8rq+EYRjGxNWrwO+/A7/9BmzfTkaMN+PiQgOpd91FJSysQdiINwhYNDQlJInMe1u1AiZOpH1Xr5I8376dpjCSk4GdO6ksWEA2EUOGAPfeC4wcSVZBDMMwtYheT4OjW7eSULh1ttvREbjzTmDwYCrh4SwSagoWDU0dX1/g4YepCAFcuEDiYft28sy4fh3YuJGKJNEE4L33UunWrWmaDzMMU+NkZQGbN1PZvp3svG8mPBwYPhyIiiL7bnJxZGoaFg1MOZJE5sOhoTSdodcDR46QvN+8meT9oUNUXn0VCAwE7rkHuO8+msqwEDeDYRjGWi5dAn78EfjpJzJgNBrLX/PyIoEwfDgQGck2CXUFiwamchQKoG9fKosWkRHlli3Ar7/SaERqKvDpp1RcXWn04cEHgREjKGEXwzBMFQhBzyJlQuHkSfPXw8KAUaNoZpTNq+oHLBoY6wkMBJ55hkppKdk9bN5M3/jUVCA2loqjIz0OPPQQCQl397puOcMw9QQhyCt8wwbgf/+jYLhlyOXAoEHA/feTWAgJqbNmMpXAooGpHg4OJAyGDweWL6dfgR9+INuHS5eATZuoKJXkifHwwzSVwTBMk6NsRGHjRuC774DLl8tfc3amn5H776cRBQ4bU79h0cDcPjJZ+TTGu++S+2aZ8eTp02QTsXUrFA4O6NmjByStluwgHBzquuUMw9QQQlCQpdhYGb76agjS08vdGZydaSRh/HiyU+CfgoYDiwbGvkgSxV7t3h34z39INHz/PfDtt5DOnkXg/v0Uy9XdnaYvHn2UHKl5spJhGgXJycA331A5fRoA5ABc4OgocM89EsaPpxEFjiHXMOFMRkzN0rEj8NprwOnT0B06hPP33w8RGEj+U2vW0NRFUBAwcyaFvWYYpsGRnw988QVw991khxAdTYJBpQLuu8+I2bOPIDVVj++/B8aMYcHQkGHRwNQOkgSEhSFh0iToL16kWK/PPksTmBkZwAcflGeIWbasYog3hmHqFXo9RWV87DHAzw946imKEweQMePq1UBmJrBxowEDB6bCxaVu28vYBxYNTO0jk1GOi08+AdLTgV9+AcaNo8eSv/8GZs0CAgKABx4Afv6ZcmgwDFMvOHMGeOkloEULMmD89ltKvNuuHfDmm0BiIjlWPfUUO041RtimgalbVKryCJM5OcD69TTOeeQIuXL++COFrn78ceDJJ4EuXeq6xQzT5CguJtOkzz+noEtleHmRY9TEiZQQigPENn54pIGpPzRrRpEo//qLorzMmUOCITMTWLoU6NqV4sWuWQMUFdV1axmm0XPsGH0l/f2BSZNIMMhk5Py0aROQlgZ89BFFl2fB0DRg0cDUT7p0Af77X+DKFZqiePBBivlw+DAweTIFmnrhBeDUqbpuKcM0Kq5fB1asIBOj8HBg5UoydGzVCnjrLfKO+PlniqvA+R6aHiwamPqNUkmPNRs3koB45x2gdWvyvvjoIxp96N8f+OormlhlGKZaHDsGPP00mRM99xw5M6lUwCOPAH/8QbnsXnmF9DrTdGHRwDQcmjcH5s4Fzp8Htm2jOA9yOcV9eOIJ+jWbObPMOZxhmH+htBT4+msgIoJGFVavJu3duTM5MaWlkaHj3XfTtATD8MeAaXjIZJRVsyxw/ZtvknN4bi65bnbqBAwZQhlwDIa6bi3D1DuSkoB584DgYDJiPHiQBvUefZTsFk6eBGbMIENHhrkZFg1Mw8bfnyLJXLxIGThHjSJR8eefNOnati3ZRuTm1nVLGaZOMRqB336jr0jr1hTxPSuLhMObb5L+XreOZvvYqJGpDBYNTONALqeU3D/9RAmz5s4lb4ykJHIqDwykYFJsOMk0MQoKaACufXv6ivzyC+WFGDqUPCAuXSLd7etb1y1lGgIsGpjGR0gIGUxeuUKO5d260UTtp5+S4eTdd9OvJU9dMI2YpCTyWi6L0n7hAgVbmjGDAjTFxdFgnIKj9TA2wKKBabw4OpJ7Znw8ha0eM4ZGJHbsIBfONm2AJUvIE4NhGgFCAPv20Ue9TRsKb5KfT6MMK1cCqalk4Ni+fV23lGmosGhgGj+SRGGrv/+eYtzOn08WXpcvA//3fzSpO2cOOaAzTANEpwNiYyn22Z13koey0Uj2wlu2AAkJwNSplJKaYW4HFg1M0yI4GHj7bbL6+vxz8rQoKKBHstatyXz86NG6biXDWEVODs3EtWpFH92//gLUaoq3cPIkeSaPGMHukoz94I8S0zQpm7o4eZIexe6+m2wcYmOBnj2BwYOBzZvpcY1h6hmXL5NtQnAwDZylppIh4xtvkB7+7DNO08LUDCwamKaNTEaPYn/8QSHxHn+cLMN27qRIlJ070y9waWldt5RhcOIEfUTbtAGWL6dEUt26AWvXkpB49VXAx6euW8k0ZqolGlasWIFWrVrBwcEB4eHh2LNnT6V1J02aBEmSKpTOnTub6qxdu9ZinVL+oWZqk7AwCo+XmEhumm5uZGY+ZQrlAX77bQrMzzC1iBCkYUeOJIGwbh0Nig0ZQtMP8fEUEFWtruuWMk0Bm0XDhg0bMHPmTERHRyM+Ph4DBgzAiBEjkFyJEdkHH3yA9PR0U0lJSUGzZs0wduxYs3pubm5m9dLT0+Hg4FC9q2KY2yEoCHjvPXLZjIkhwXDtGjmzt2hBMSAyMuq6lUwjx2AAfvgB6NuXZsu2bqWBsXHjKHP89u1k6MiBmJjaxGbRsHTpUkyePBlPP/00OnbsiGXLliE4OBgrV660WN/d3R1+fn6mcuTIEeTm5uLJJ580qydJklk9Pz+/6l0Rw9gLV1dycL94EfjmG5okLiggQdGyJTBtGkXGYRg7UlpKM2KdOlF6lcOHAQcH+ridOwds2EB5IhimLrBJNGi1Whw9ehSRkZFm+yMjI7F//36rzrF69WoMHToUISEhZvsLCwsREhKCoKAg3HvvvYiPj7elaQxTcygUwGOPAX//TTmBIyIAjQb45BMgNJReO3myrlvJNHAKCoD33ydPiClTSCB4egILFpC9wooVZMvAMHWJTbHAsrKyYDAY4HtLvFFfX19kWDFcm56ejq1bt+Lbb78129+hQwesXbsWXbt2RX5+Pj744AP0798ff//9N0JDQy2eS6PRQKPRmLbz8/MBADqdDjqdzpbLqpSy89jrfE2dRtGfw4cDUVGQ9uyB7L33INu2jdIAfvstjCNHwvjyyxD9+tVacxpFn9Yj6qI/r18HPv5Yhg8/lCEnh+YagoMFZsww4qmnjHBxKWtbrTXJrvBn1P7URJ9aey5JCCGsPWlaWhoCAwOxf/9+REREmPa/9dZb+Prrr3HmzJkqj1+8eDGWLFmCtLQ0qFSqSusZjUb06NEDAwcOxPLlyy3WWbhwIRYtWlRh/7fffgsnJycrr4hhbg/3ixcRunEjAg4cgHTjq5TVqRPOjR2La92784QzUyl5eSr88ksbbNnSCsXFSgBAQEAhHnroPAYNSoFCYfVPM8PcNsXFxXj00UeRl5cHNze3SuvZNNLg7e0NuVxeYVQhMzOzwujDrQghsGbNGkyYMKFKwQAAMpkMvXr1wvnz5yutM3/+fMyePdu0nZ+fj+DgYERGRlZ5wbag0+kQFxeHYcOGQalU2uWcTZlG258vvAD9+fOQL1kC6euv4Z2QAO9Fi2Ds3RvG6GiI4cNrTDw02j6tI2qjP9PTgZgYGT79VIbiYvpcdO4sMG+eAWPGqCGXdwHQeIIs8GfU/tREn5aN1v8bNokGlUqF8PBwxMXF4YEHHjDtj4uLw+jRo6s8dteuXbhw4QImT578r+8jhMDx48fRtWvXSuuo1WqoLfgYKZVKu38wa+KcTZlG2Z+dOgGrV1N0nf/+F/jkE8gOH4Zs9GiyWnvtNYr7UEPioVH2aR1SE/2ZnEw2tJ9/TiYxAH00FiwARo2SIJM17sxR/Bm1P/bsU2vPY7P3xOzZs/H5559jzZo1OH36NGbNmoXk5GRMnToVAI0ATJw4scJxq1evRp8+fdDFQpiyRYsW4ffff8elS5dw/PhxTJ48GcePHzedk2EaDIGB5KaZmEh5LZycKCz16NEUB+KHHzjKZBPjwgUK69ymDfDxxyQY+vUjF8q//qJMkxzmmWko2Cxtx48fj+zsbLzxxhtIT09Hly5dsGXLFpM3RHp6eoWYDXl5edi4cSM++OADi+e8fv06pkyZgoyMDLi7uyMsLAy7d+9G7969q3FJDFMP8PMjU/iXX6a8Fh99RN4XDz1Erpuvvkrrcnldt5SpIc6dA/7zH7KTLdOJQ4bQyMKgQWzuYg0Gg4ENKC2g0+mgUChQWloKg8Fg1TFKpRJyO/zeVGs8bPr06Zg+fbrF19auXVthn7u7O4qLiys9X0xMDGJiYqrTFIap3/j4AIsX06jDsmUU+/fUKWD8eKBjR7qDjB/P4qERcf48iYV168rFwj33UGywm+zHmSoQQiAjIwPXOQKrRYQQ8PPzQ0pKCiQb1KeHhwf8/PxsOuZWGvckGsPUF7y86E4yezYJh2XLgNOnKcbDokV0R3n0UYoJwTRILl6kf/E331A0R4DMWF5/nYMx2UqZYGjevDmcnJxu6ybXGDEajSgsLISLiwtkVsxtCSFQXFyMzMxMAIC/v3+135t/oRimNvH0pLvIzJk0ZbF0KY1jP/EE8NZb9BqPPDQoLl0C3nwT+OqrcrFwzz3AwoWUMJWxDYPBYBIMXl5edd2ceonRaIRWq4WDg4NVogEAHB0dAZC3Y/Pmzas9VcHmNwxTF7i70+hCUhJNX3h5kXh47DHgjjuA779ng8l6TlISGTi2bw988QUJhhEjgEOHKKs6C4bqUWbDwPF27E9Zn96OnQiLBoapS1xdgXnzyNvizTcBDw8gIYGyEvXoAfz0E6U5ZOoNly9TmOfQUPKy1euByEjgwAFgyxaA7bftA09J2B979CmLBoapD7i60shDYiJNUbi5kbfF/fcDvXrR3YjFQ52SnAxMnUpi4bPPSCwMHQrs2wf8/jtlo2SYxg6LBoapT3h40GR4YiLwyiuAszPFebjnHnLuj4tj8VDLpKcDzz8PtG0LrFpFOSDuvhvYs4f+HbWYaoRpIvz555/o0KEDjFZOUZ48eRJBQUEoKiqq4ZaxaGCY+kmzZmQYWRYkytEROHiQxsEHDQJ27arrFjZ6srOBuXPLgzLpdMBdd1HX//EHcOeddd1CpqHxww8/ICoqCt7e3pAkCcePH7dY7+WXX0Z0dLTVRo5du3ZF7969ayV0AYsGhqnP+PhQkKhLl4AZMwC1mh5x77oLGDIE0oEDdd3CRkdxsQJvvilD69YU9rmkhOIr/PEHsGMHMHBgXbeQaagUFRWhf//+eOeddyqts3//fpw/fx5jx4616dxPPvkkVq5caXWwp+rCooFhGgJ+fhTb4cIFYNo0QKkE/vwTikGD0Oc//wEqeWJhrKekhBJJPfvsULzxhhz5+UC3bsAvv5Ddwt1313ULmfrOXXfdheeffx7PP/88PDw84OXlhQULFqAsmfSECRPw2muvYejQoZWeY/369YiMjISDgwMAirEwdOhQDB8+3HSe69evo0uXLliwYIHpuKioKGRnZ2NXDY9CsmhgmIZEUBCwYgWFHXz6aQi5HH5Hj0LZuzfwyCO0n7EJrRZYuZJsFubOlaOgQI3QUIH164Fjx4B77+WQz3WKEEBRUd2UatgPffnll1AoFDh06BCWL1+OmJgYfP7551Yfv3v3bvS8yV9XkiR8+eWXOHz4MJYvXw4AmDZtGpo3b47XX3/dVE+lUqFbt27Ys2ePzW22BQ7uxDANkZAQ4LPPoJ81C1enTkXQnj3A+vUU3+GppyirZlBQXbeyXmMwUKjnMrtTAGjRQmD06ON4990ucHTkjIz1guJiwMWlbt67sJCMkW0gODgYMTExkCQJ7du3x8mTJxETE4NnnnnGquOTkpIQEBBgti8wMBCrVq3ChAkTcPXqVWzevBm7du2qkJkyMDAQSUlJNrXXVnikgWEaMqGhODpnDnSHD5OHhcFA/oBt2wJz5gBZWXXdwnqHEMDGjRRD64knSDD4+gIffgj8848eQ4YkczRvptr07dvXLB5CREQEzp8/b7WtQUlJiWlq4mbGjh2LBx98EIsXL8b777+Ptm3bVqjj6OhYZZ4ne8BfDYZpDHTvTmEI9+4lV809eyhE9WefkXiYPZtiQTRhhAC2baNwGEeP0j5PT/KQeP55eqDkhIr1ECcneuKvq/euZby9vZGbm1thf3FxMY4ePQq5XI4LFy5YPDYnJwdt2rSp0fbxSAPDNCbuvJN8ArduBcLCgIICGn9v3ZpERGlpXbewTti7lzxVhw8nweDiQtnJL10i0WDjCDRTm0gS/YPqolTDmOXgwYMVtkNDQ63O9RAWFoaEhIQK++fMmQOZTIatW7fiww8/xO7duyvUOXXqFMLCwmxusy2waGCYxoYk0d3xyBFgwwagXTuappgzxzycYRPg5EkyZBwwgAZf1GoadLl0CXjjDYqlxTD2JCUlBbNnz8bZs2cRGxuLDz/8EDNmzABAIwHHjx83iYKzZ8/i+PHjyMjIMB0fFRWFvXv3mp3z119/xZo1a7Bu3ToMGzYMc+fOxbRp08xGJJKSkpCamlqlZ4Y9YNHAMI0VmYxyWPzzD/D552QYeeUKJU7o1IkERSNNinX5MtkrdOsG/PorJQ2dMoU8VpcsofAXDFMTTJw4ESUlJejduzeee+45vPDCC5gyZQoA4Oeff0ZYWBjuueceAMDDDz+MsLAwfPLJJ6bjH3/8cSQkJODs2bMAgGvXrmHy5MlYuHAhevToAQB47bXX4O/vj2nTppmOi42NRWRkJEJCQmr0+lg0MExjR6EAJk8md8yYGMDbm9YffhgID6epjEYSmjori0YS2rWjVNVCAGPHUg6wVavYoYSpeZRKJVauXIm8vDzk5ORg8eLFJsPISZMmQQhRoSxcuNB0vKenJ55//nksXboUAODj44OMjAzMnz/fVEehUGD79u1Yv349AECj0WDlypV49dVXa/z6WDQwTFPBwQGYOZPG5hctIsPI48eBkSOBwYMpp3MDpaiIom63aUO6SKulSzp8GPjuOxIRDNNQiI6ORkhIiNUeF5cvX0Z0dDT69+9fwy1j0cAwTQ9XV4rjkJhIdg5qNRlP9u0LjBkD3BgWbQjodDSC0LYtsGABkJ9PjiS//UZhn3v1qusWMoztuLu745VXXrHaeLJdu3Z49tlna7hVBIsGhmmqeHkB//0vcO4cMGkSGVBu3Ah07gw8+yyQllbXLawUISiOVefOlK46IwNo1Qr49lvyjoiK4iiOTO2zc+dOLFu2rK6bUaOwaGCYpk6LFsAXXwAnTgD33UcBoj79lB7fo6OBvLy6bqEZf/4J9OlDNp7nz5NR44cfAmfOUCRtKxMDMgxTDfjrxTAM0aUL8PPP5JvYrx9lcHr77XoT4+H4cfIkHTIE+OsvirXw+uvAxYsUnEmlqtPmMUyTgEUDwzDm3HknRUP68UegY0cgJ4dsH9q3B778kkYiapFLl4DHHqNYVb//Tgk+X3iBxMLChU0+0CXD1CosGhiGqYgkAaNH05TF6tVAYCCQnEy2D2Uhq2vYTTMzE3jxRaBDB7JVAIBHH6VpiOXLgebNa/TtGYaxAIsGhmEqR6GgrJnnzwPvvUchFE+dItuHQYOAAwfs/pYFBeQR2qYN2SrodGTYeOwYZaVs3drub8kwjJWwaGAY5t9xdAReeonmCl5+mWI+lNk+PPAAcPr0bb+FVgt89BHZXy5cSDmKevYk18nffqPpCYZh6hYWDQzDWI+nJ/DuuzTyMHkyuSr8+CMZUT79NIWpthGjEYiNJfOJF16gaYm2bSko0+HDwN132/8yGKY+8+eff6JDhw4wWhnm/eTJkwgKCkJRUVENt6yaomHFihVo1aoVHBwcEB4ejj179lRad+fOnZAkqUI5c+aMWb2NGzeiU6dOUKvV6NSpEzZt2lSdpjEMUxsEBVE+i1OngPvvpzv/6tWUEGvePMBCal9LxMXRaMKjj9Ighp8fsHIlhX0eO5ZjLTCNB51Oh7lz56Jr165wdnZGQEAAJk6ciDQL8VBefvllREdHQ2al/3DXrl3Ru3dvxMTE2LvZFbBZNGzYsAEzZ85EdHQ04uPjMWDAAIwYMQLJyclVHnf27Fmkp6ebSmhoqOm1AwcOYPz48ZgwYQL+/vtvTJgwAePGjcOhBhzWlmGaBB07Aps2Afv2kddFaSmNRLRpA7z/PrltWuDIEWDoUCAyEoiPJw+IN9+khFJTp5KHBMM0JoqLi3Hs2DG8+uqrOHbsGH744QecO3cOo0aNMqu3f/9+nD9/HmPHjrXp/E8++SRWrlxpdejpaiNspHfv3mLq1Klm+zp06CDmzZtnsf6OHTsEAJGbm1vpOceNGyeGDx9uti8qKko8/PDDVrcrLy9PABB5eXlWH/NvaLVa8eOPPwqtVmu3czZluD/tT73qU6NRiF9+EaJzZyHIt0KIoCAhVq8WQqcTQghx7pwQ48aVv6xSCTFrlhDXrtVx229Qr/qzkWBrn5aUlIiEhARRUlJSwy2zP4MGDRLPPfeceO6554S7u7to1qyZiI6OFkaj0WL9w4cPCwDi8uXLpn0vvPCCGDNmjGnbaDSKIUOGiKioKNN5srOzRWBgoJg/f76pnkajEWq1Wvzxxx+Vtq+qvrX2HmrTSINWq8XRo0cRGRlptj8yMhL79++v8tiwsDD4+/tjyJAh2LFjh9lrBw4cqHDOqKiofz0nwzD1CEkC7r0X+PtvYO1aIDiYbBwmT0ZG5yGYPiIRnToJfPcdVZ04kSJYL11KiTcZxhJCCBRpi+qkiGq4FX/55ZdQKBQ4dOgQli9fjpiYGHz++ecW6+bl5UGSJHh4eJj27d69Gz179jRtS5KEL7/8EocPH8by5csBANOmTUPz5s3x+uuvm+qpVCp069atSnMBe6CwpXJWVhYMBgN8fX3N9vv6+iIjI8PiMf7+/vj0008RHh4OjUaDr7/+GkOGDMHOnTsxcOBAAEBGRoZN5wQoFahGozFt5+fnA6B5I51OZ8tlVUrZeex1vqYO96f9qbd9+uijwIMPonDZGix5W4eYc9NQfM4ZADCybzb+87EbunalqvWp6fW2PxswtvapTqeDEAJGoxFGoxFF2iK4vetWk02slPy5+XBWOdt0THBwMJYsWQJJkhAaGooTJ04gJiYGkydPNqtXWlqKefPm4ZFHHoGLi4vJ6DEpKQl+fn5mRpD+/v5YuXIlnnjiCWRkZGDz5s3YtWsXFAqFWb2AgAAkJiZWakBpNBohhIBOp6uQDMva/49NoqEM6RbrJCFEhX1ltG/fHu3btzdtR0REICUlBf/9739NosHWcwLA4sWLsWjRogr7t23bBicnJ6uuw1ri4uLser6mDven/alvfarTybB1a0v8739TkV+qBgD0kQ7iPfEyBh7cg/SpvbDn8cdREBJSxy21TH3rz8aAtX2qUCjg5+eHwsJCaLVaFOlq3iOgMvIL8mFQWm8joNfr0aNHDxQUFJj2devWDUuXLkVubq7pRq3T6TBp0iTodDosXrzY9NALACUlJRBCmO0DaPT93nvvxTvvvIMlS5agbdu2Zu8DUN/l5+dXOLYMrVaLkpIS7N69G3q93uy14uJiq67RJtHg7e0NuVxeYQQgMzOzwkhBVfTt2xfffPONadvPz8/mc86fPx+zZ882befn5yM4OBiRkZFwc7OPKtXpdIiLi8OwYcOgZMus24b70/7Utz41GIDYWAmLFslx+TKJ/vbtBd5804BRPf0hf7sDxJr98P/rL/gdOQIxYQIMr71GSbPqAfWtPxsDtvZpaWkpUlJS4OLiAgcHB7gKV+TPtXwTrGmclE5VPrzeikKhgFKpNLsHOTo6AgDc3Nwgl8tNguHKlSvYvn07vLy8zM7h7e2N0tLSCvex4uJinDx5EnK5HCkpKQAAV1dXs/YVFBSgTZs2ld4DS0tL4ejoiIEDB8LBwcHstcqERoVrtKrWDVQqFcLDwxEXF4cHHnjAtD8uLg6jR4+2+jzx8fHw9/c3bUdERCAuLg6zZs0y7du2bRv69etX6TnUajXUanWF/Uql0u5f9po4Z1OG+9P+1HWfCkEBmObNo8jTAEWeXrgQmDRJgkKhABBC2TPnzAGioyFt3Ajpq68g27CBMk7Nn0/puusBdd2fjRFr+9RgMECSJMhkMpPLoau84SQYOXTokJmr5OHDhxEaGgqlUgmdToeHH34YFy5cwI4dO+Dj41Ph+LCwMJw5c6aCu+VLL70EmUyGrVu3YuTIkRg8eDDuvfdes3r//PMPxo4dW6mrpkwmgyRJFv8XVn/eqzSTtMD69euFUqkUq1evFgkJCWLmzJnC2dlZJCUlCSGEmDdvnpgwYYKpfkxMjNi0aZM4d+6cOHXqlJg3b54AIDZu3Giqs2/fPiGXy8U777wjTp8+Ld555x2hUCjEwYMHrW4Xe0/Uf7g/7U996NODB4UYNKjcI8LDQ4h33hGiqMiKA++6q/xAd3ch3n7bigNrjvrQn42NpuY94eLiImbNmiXOnDkjvv32W+Hs7Cw++eQTodPpxKhRo0RQUJA4fvy4SE9PNxWNRmM6x/Lly0V4eLjZeTdv3ixUKpU4evSoEEKI6OhoERAQILKyskx1EhMThSRJpnuxJezhPWGzaBBCiI8//liEhIQIlUolevToIXbt2mV67YknnhCDBg0ybb/77ruiTZs2wsHBQXh6eoo777xT/PrrrxXO+f3334v27dsLpVIpOnToYCYqrIFFQ/2H+9P+1GWfnjkjxIMPlt/z1WohXnpJiOxsG05iNAqxdasQ3bqVn8jfX4hVq0xumrUJf0btT1MTDdOnTxdTp04Vbm5uwtPTU8ybN08YjUaRmJgoAFgsO3bsMJ0jJydHODo6ijNnzgghhMjMzBS+vr7i7bffNtXRaDQiPDxcjB071rTv7bffFlFRUVW2r85EQ32ERUP9h/vT/tRFn6amCjFlihByOd3jZTIhnnpKiOTk2zipwSDEN98I0bJluXho106I//2PhEUtwZ9R+9PURMOMGTNu+zwvvfSSmDJlSqWvGwwGkZubKwwGgxBCiNLSUhEcHCz27t1b5XlrPU4DwzBNl+vXgVdeobwQn35KRo+jRpVnzw4Ovo2Ty2TAY49R3usPPqDADefOAWPGAH37Ajt32ukqGKb+Ex0djZCQEKujO16+fBnR0dHo379/DbeME1YxDPMvlJYCS5ZQZOjFiykydL9+wN69wE8/AZ072/HN1GrgxReBixeB114DnJ0pa9XgwcDIkRQ4imEaOe7u7njllVcqxFKojHbt2uHZZ5+t4VYRLBoYhrGIwQB8+SXQrh3wf/8H5OQAnTqRUNi7F6jRhxo3N2DRIhIPzz0HKBTA1q2UH3vCBCAxsQbfnGGqx86dO7Fs2bK6bkaNwqKBYRgzhAA2bwa6dwcmTQJSUiip5erV9KA/alQtZp/09QU++gg4fRp4+GFq3DffAO3bAzNnAteu1VJDGIYBWDQwDHMT+/cDAwcC991HWa89PID33iPzgqeeogf+OqFtWyA2tjw9pk5Htg9t2gD/+Q9QWFhHDWOYpgWLBoZhcPo08MADNOWwdy/g4ADMnQtcugS89BJwI6hd3RMeDsTFAdu2AT16AAUFZPvQti2wYkX9SmTBMI0QFg0M04S5cgV4+mmgSxfgxx/JiWHyZOD8eeCddwBPz7puYSUMGwb89Rewfj2NNly9SrYPHTsCGzYAlSTsYRjm9mDRwDBNkOxsGkEIDSVbBaMRuP9+mpL4/HOyYaj3yGTA+PFAQgLw8cdk/3DxItk+9OoFbN9e1y1kmEYHiwaGaUIUFABvvAG0agX897/kTnnnncC+fcCmTfSg3uBQqYDp04ELF+jiXFyAY8doNCIyktYZhrELLBoYpglQWgrExACtWwOvv07ioXt3YMsWYPduirvQ4HFxAV59lQwxZswAlEqyfwgPp9GHCxfquoUMYxV//vknOnToAKOV02wnT55EUFAQiopqPo04iwaGacTo9TT90K4dMHs2kJVFUxLr1wNHjwIjRtSi+2Rt4eMDLFsGnD0LPP44XeCGDUCHDsCUKeRDyjB1wMKFC9GhQwc4OzvD09MTQ4cOxaFDhyrUe/nllxEdHV1ptspb6dq1K3r37o2YmBh7N7kCLBoYphFiNALffUfRGp9+ujzWwmefAf/8Q6YAVv4eNVxatQK+/hqIjyd1ZDBQB4SGArNmAZmZdd1CponRrl07fPTRRzh58iT27t2Lli1bIjIyEtduijeyf/9+nD9/HmPHjrXp3E8++SRWrlxpdejp6tLYfzYYpkkhBAVO7NmThMG5c5TGYelS8oh4+mkatW9SdOtG8zB791IQCo2GRiJatwYWLKCkGgxjB+666y48//zzeP755+Hh4QEvLy8sWLAAQggAwKOPPoqhQ4eidevW6Ny5M5YuXYr8/HycOHHCdI7169cjMjISDg4OAAAhBIYOHYrhw4ebznP9+nV06dIFCxYsMB0XFRWF7Oxs7Nq1q0avkUUDwzQS9u0DBg2iFA3x8YCra3kk5lmzKPZCk6Z/f0p89fvvpKqKioC33qIRicWLaZupdwhB/5q6KDfu0Tbx5ZdfQqFQ4NChQ1i+fDliYmLw+eefV6in1Wrx6aefwt3dHd26dTPt3717N3r27GnaliQJX375JQ4fPozly5cDAKZNm4bmzZvj9ddfN9VTqVTo1q0b9uzZY3ujbaCu4rsxDGMnLl1yw+jRcmzdSttqNfD888C8eTTKwNyEJJFHxbBhFJji1VdpvuaVV4APPoBs7lzIbitdJ2NviovJxrUuKCyknGm2EBwcjJiYGEiShPbt2+PkyZOIiYnBM888AwDYvHkzHn74YRQXF8Pf3x9xcXHwvumLmpSUhICAALNzBgYGYtWqVZgwYQKuXr2KzZs3Y9euXVDeMmwYGBiIpKSkal2rtfBIA8M0UM6dAx5/XI7Zswdj61YZ5HKy87twgdwpWTBUgSRRCMy//ya7h9atgatXIZ89G0OmT4f0xRdkRcowNtK3b19IN1kXR0RE4Pz58yZbg8GDB+P48ePYv38/hg8fjnHjxiHzJvuakpIS09TEzYwdOxYPPvggFi9ejPfffx9t27atUMfR0RHFxcU1cFXlsGhgmAbGpUvAk09STIXvvqOv8PjxRpw5A6xa1UACM9UX5HLysLjReSIwEE7XrkHx7LOU0nP9eo4uWcc4OdETf10UJyf7X4+zszPatm2Lvn37YvXq1VAoFFi9erXpdW9vb+Tm5lY4rri4GEePHoVcLseFStyHc3Jy4OPjY/9G3wSLBoZpICQn00hC+/bA2rV0Lxs50oiYmB34+msDLDx4MNaiVAJTpkCfkICTTz0F4e1NlqOPPELpuH/5pXoT3MxtI0k0RVAXpTruyAcPHqywHRoaCrlcbrG+EAIajca0HRYWhoSEhAr15syZA5lMhq1bt+LDDz/E7t27K9Q5deoUwsLCbG+0DbBoYJh6TmoqpVVo25Y8BvV6ICoKOHQI+PFHA1q1yq/rJjYeHB1xadQo6M+epeyZbm7AiROUDzwighJlsXhgqiAlJQWzZ8/G2bNnERsbiw8//BAzZsxAUVERXnnlFRw8eBCXL1/GsWPH8PTTT+PKlStm7pVRUVHYu3ev2Tl//fVXrFmzBuvWrcOwYcMwd+5cTJs2zWxEIikpCampqRg6dGiNXh+LBoapp2RkkNdDmzblCRzvvps8B3/7Dejdu65b2IhxdSV3zMREsih1ciKVFhVFcbe3b2fxwFhk4sSJKCkpQe/evfHcc8/hhRdewJQpUyCXy3HmzBk89NBDaNeuHe69915cu3YNe/bsQefOnU3HP/7440hISMDZs2cBANeuXcPkyZOxcOFC9OjRAwDw2muvwd/fH9OmTTMdFxsbi8jISISEhNTo9bH3BMPUM7KygPfeAz76CCgpoX133kkPvnfdVadNa3o0a0bumDNmAO++C3zyCbB/P3lf3Hkn+bQOHtwIw2oy1UWpVGLZsmVYuXKl2X4HBwf88MMP/3q8p6cnnn/+eSxduhSrVq2Cj48PMjIyzOooFAps374dbm5uAACNRoOVK1ciNjbWfhdSCTzSwDD1hJwcIDqawga8/z4Jhj59aER8924WDHWKnx8l77h0CXjxRfJr3bsXGDKE/jE1HFCHaVpER0cjJCTE6uiOly9fRnR0NPr371/DLWPRwDB1Tl4ePbC2agW8/TZZbffoAWzeDBw4QA+1/CBbT/D3Bz74gCJmPf88ZdgsU3R33w3UcGAdpmng7u6OV155pVLjyVtp164dnn322RpuFcGigWHqiNxcYOFCICSElvn5QNeulKL6yBHgnntYLNRbAgOBDz8k8TB9OomHHTsoTPXQoRSek2ly7Ny5E8uWLavrZtQoLBoYppbJziYbu5AQGmHIy6OYCxs2AMePA/ffz2KhwRAUBHz8MUXUmjqVXDf/+IPsHSIjaaiIYRoRLBoYppa4do0M8Vu2pJQHBQU0svDdd8CpU8C4cU0g82RjJTgYWLmSYjtMmQIoFEBcHNCvHzB8OI88MI0G/olimBomIwP4v/8jsfDuu2Sz0L078MMPNLIwdiyLhUZDSAiF5SxLKSqXU4KsO+8kL4s//mBXTaZBwz9VDFNDpKUBM2eSgeOSJZR4p2dP4OefgWPHKPUBi4VGSsuWFInr3DkaeVAqKcPm0KE0+vDrrywemAZJtX6yVqxYgVatWsHBwQHh4eFVpuL84YcfMGzYMPj4+MDNzQ0RERH4/fffzeqsXbsWkiRVKKWlpdVpHsPUKSkpZFjfujUZ2peWAn37Alu2AIcPA/fdxzYLTYbWrWnk4eJF4IUXKD/5wYPAvfcC4eHAxo2c24JpUNgsGjZs2ICZM2ciOjoa8fHxGDBgAEaMGIHk5GSL9Xfv3o1hw4Zhy5YtOHr0KAYPHoz77rsP8fHxZvXc3NyQnp5uVixl+mKY+sr588Azz1AEx48/BjQaGpWOi6N4QCNGsFhosgQHA8uXU4TJl16ixAbx8cCYMWTYsm4dZ9VkGgQ2i4alS5di8uTJePrpp9GxY0csW7YMwcHBFaJflbFs2TK8/PLL6NWrF0JDQ/H2228jNDQUv/zyi1k9SZLg5+dnVhimIRAfT0aM7dsDn39O4Z4HDQL+/JNc+IcOZbHA3MDPj8J9Xr4MvPoq4O4OJCRQps2OHYE1awCttq5bydQxf/75Jzp06ACjlaNQJ0+eRFBQEIqKimq4ZTaGkdZqtTh69CjmzZtntj8yMhL79++36hxGoxEFBQVo1qyZ2f7CwkJTBKzu3bvjP//5T5XZujQajVlmsPx8Stqj0+mg0+msvaQqKTuPvc7X1GlM/SkEsGePhPfek2HbtnLtPXKkEXPnGhERQfPVNf3w2Jj6tD5Qa/3p5kai4cUXIVu5ErIPPoB04QIweTLEokUwzpwJ45NP0ohEA8fWPtXpdBBCwGg0Wn3TbIhMnToVn332GZYuXYoZM2aYvfbyyy9j/vz5AGCxD8QNe5iyfurcuTN69eqFpUuXIjo6utL3NBqNEEJAp9NVCBxl7f/HJtGQlZUFg8EAX19fs/2+vr4VYmNXxpIlS1BUVIRx48aZ9nXo0AFr165F165dkZ+fjw8++AD9+/fH33//jdDQUIvnWbx4MRYtWlRh/7Zt2+Bk5yTocXFxdj1fU6ch96fRCBw54oeNG0Nx9iwJX5lM4M47r+DBB8+jZcsC5OaS/UJt0pD7tD5Sq/15xx2Qf/wxWv7+O9r++CMckpMhnz0bhtdfx6WRI5F4zz3Q3sgx0JCxtk8VCgX8/PxQWFgIbSMddfn1119x4MAB+Pv7o7S01PTQCwCHDh3CuXPnEBUVZbbfEgUFBab1cePGYc6cOZg+fXqlkSS1Wi1KSkqwe/du6G95oikuLraq7ZIQ1pvwpqWlITAwEPv370dERIRp/1tvvYWvv/4aZ86cqfL42NhYPP300/jpp5+qTN9pNBrRo0cPDBw4EMuXL7dYx9JIQ3BwMLKyskxJPG4XnU6HuLg4DBs2DEql0i7nbMo05P7U64ENGyS8/74cCQk016BWCzzxhBGzZxvRunXdtKsh92l9pM77s7QUsq++giwmBtLFiwAA4egI46RJMJa54jQwbO3T0tJSpKSkoGXLlg3Oru3uu+82Zaxct24d5HI5pk6dijfeeAPSjTnK1NRUREREYOvWrbjvvvswY8YMs5GGGTNmID09Hd999x0AGk2IioqCXC7Hli1bIEkScnNz0a1bN0yYMAFvvfUWABIEHh4e2Lx5M+6++26L7SstLUVSUhKCg4Mr9G1+fj68vb2Rl5dX5T3UppEGb29vyOXyCqMKmZmZFUYfbmXDhg2YPHkyvv/++3/N9y2TydCrVy+cP3++0jpqtRpqtbrCfqVSafcve02csynTkPqzqAj44gtymUxKon2urhQ5eOZMCX5+cgDWxYevSRpSnzYE6qw/lUrguecouuQPPwDvvgvp6FHIV66E/NNPyXjmpZeAKqZu6yvW9qnBYIAkSZDJZJDJZDQEX1w30xQyJ5npZm8tX331FSZPnoxDhw7hyJEjmDJlClq2bIlnnnkGRqMRTzzxBF566SV07doVAEzXWsaePXvwyCOPmO378ssv0bVrV3z00UeYMWMGpk+fjubNm2PhwoWmeg4ODujWrRv27dtX6T1WJqPrsfS/sPbzbpNoUKlUCA8PR1xcHB544AHT/ri4OIwePbrS42JjY/HUU08hNjYW99xzz7++jxACx48fN3Uqw9Q26emUmnrlSsoRAQA+PhR3Yfp0wMOjLlvHNHrkcor6NWYM5bR4911KdxobSyUyEnj5ZUqS1citbI3FRuxxqZtEYAMKB0DubNtDQXBwMGJiYiBJEtq3b4+TJ08iJiYGzzzzDN59910oFAq8+OKLlR6flJSEgIAAs32BgYFYtWoVJkyYgKtXr2Lz5s3YtWtXhRt9YGAgksqebmoIm70nZs+ejc8//xxr1qzB6dOnMWvWLCQnJ2Pq1KkAgPnz52PixImm+rGxsZg4cSKWLFmCvn37IiMjAxkZGcjLyzPVWbRoEX7//XdcunQJx48fx+TJk3H8+HHTORmmtjh1CnjqKYrN8/bbJBhatyYBkZQEvPIKCwamFpEkEga//05uOo88QhHBtm0jt5xevShpCbtr1hv69u1rNjoRERGB8+fP4+jRo/jggw9McYkqo6SkxOK0zNixY/Hggw9i8eLFeP/999G2bdsKdRwdHa22TaguNo00AMD48eORnZ2NN954A+np6ejSpQu2bNmCkJAQAEB6erpZzIZVq1ZBr9fjueeew3PPPWfa/8QTT2Dt2rUAgOvXr2PKlCnIyMiAu7s7wsLCsHv3bvTu3fs2L49h/h0hKLrvkiXAb7+V7+/XD5gzBxg9mh78GKZO6d4d+PZbSlyydCmwejVw9Cjw8MMUB+KFFyhQSCNTtTInGQYUDqiz97YXO3fuRGZmJlq0aGHaZzAYMGfOHCxbtsw0QuDt7Y3csuHNmyguLsbRo0chl8tx4cIFi++Rk5ODNm3a2K3NlrBZNADA9OnTMX36dIuvlQmBMnbu3Pmv54uJiUFMTEx1msIw1UarpYe0JUuAv/+mfTIZhXeeMwe4ydaXYeoPrVpRWu7XXqMoYitWUBjSl1+mtKmTJgEzZgCVeJ41NCRJsnmKoC45ePBghe3Q0FBMmjQJUVFRZq9FRUVhwoQJePLJJ037wsLCkJCQUOG8c+bMgUwmw9atWzFy5EjcdddduPfee83qnDp1CmPGjLHj1VSEI98zTY5r12jqoXVrYOJEEgxOTvSgdv488L//sWBgGgA+PsDChUByMo06dO1Klrsff0yRxkaNInsIznFRq6SkpGD27Nk4e/YsYmNj8eGHH2LGjBnw8vJCly5dzIpSqYSfnx/at29vOj4qKgp79+41O+evv/6KNWvWYN26dRg2bBjmzp2LadOmmY1IJCUlITU19V8dDW4XFg1Mk+HYMeDJJ2kkNzoaSE0F/P1JQKSkUJTfunKdZJhq4+BAhjh//w1s3w7ccw8JhV9+IXuIsDBg7VqKa87UOBMnTkRJSQl69+6N5557Di+88AKmTJli9fGPP/44EhIScPbsWQDAtWvXMHnyZCxcuBA9evQAALz22mvw9/fHtGnTTMfFxsYiMjLSZCpQU1RreoJhGgo6HXmuLV9O+R/K6NULePFFMlC34LnLMA0PSQKGDKFy9ixlS/vySxITTz4JzJtHGTeffRYIDKzr1jZalEolli1bVmlqhZux5Ong6emJ559/HkuXLsWqVavg4+NTIcyBQqHA9u3bTfEUNBoNVq5cidjYWLtcQ1XwSAPTKLl6FfjPf8gL4uGHSTAoFMCjj1KSwcOHKdw/CwamUdK+fbmtwzvvkEgo+1KEhJAr559/8tRFPSU6OtqUVsEaLl++jOjoaPTv37+GW8aigWlECEGCYOJEoEULshNLSwN8fYHXX6ep33XrgD596rqlDFNLNGsGzJ1L2TU3bAAGDgQMBkrJPWQI0KkTGVXe5ALP1D3u7u545ZVXKg0HfSvt2rXDs88+W8OtInh6gmnw5OcD33wDrFoFnDhRvr9PHzJuHDsWUKnqrn0MU+colRRNctw4CkayYgXw9dfAmTM0Tzd/Pg29PfccGVQy1cIab8GGDo80MA2WI0fILd3fn37rTpyg6YYJE2jE4eBB4LHHWDAwjBldupBoSE2lqGUdO5LXxapVwB13AAMG0JBcSUldt5Sph/BIA9OgKCyk+DarVpE3RBkdOpB918SJNCJ7Kxq9BgXaAhRoCkzLYl0xSvWlKNWXQmPQ0FKvsbitN+phFEYYhREGYTBfGs23JUiQy+SQSTLIJBnkktx8KSvflsvkUMvVUCvUcFA4mNZvXjooHMzWnVXOcFG5wEXlAhVUsCHnHMOU4+ZGanv6dGDXLnLV3LQJ2LuXiqcnjT48/TSJiVqGP9f2xx59yqKBqfcIARw6bMCqz7X4fr0KRYU0z6dQGtBt8Hl0HrEPLqHxOFSajd+25CJfk19BIOiM1uWKb4hIkOB82hnOynIx4aJyMYkLV5UrPBw8Ki3uand4OHjATe0GuazhBNFh7IQkAXfdRSU1Ffj8c2DNGjIC+vBDKr16kXh45BHK2FaDlOVTKC4uhqOjY42+V1OjLMT07SRjY9HA1BlCCORp8pBekI6MwgzzUpSBy1c0OPtnL1zbfw8MVzsAuPED0uwcEP4p9N3X4qhzNo7mAThi3Xs6KhzhqnaFq8oVzipn09N92dO82fZN+xUyhcWRAkvbAqJ8VMJY9aiE3qg3G93QGDTQ6DVmIx237ivSFqFQW4giXRH1IwQKtYUo1BbiatHV2/qfuKndTGLCy9EL3k7eZsXSPielk82ZAJl6SmAgWQ0vWEAxHz7/HPjpJ+Cvv6jMng2MH08Com/fGkmWJZfL4eHhgczMTACAkxN/vm7FaDRCq9WitLTULBtmZQghUFxcjMzMTHh4eFhtYGkJFg1MjaE1aJGan4rkvGQk5yUjMTcR+1L2YeX6lbhScAXJecko0BaYH6RXAufuA45PAs6PAMSNj6iiBOj4Axx7x6J5l3/g5dQMXo490MyxGbwcvWjp5AVPB0+4O7jDVeUKV7Wr6Um7bF0hazwfeaMwIr84Hz9t/Ql9BvaBVmhN4qFMWBRqC5GvyUeeJg/XS69XWkr0NH+dr8lHviYfyXnJ//Lu5TgoHCoICV9nX/g6+8LPxQ++LjeWzr5o7twcSjmn8K73yOVAVBSVzEwymvzsM4r/sGYNlY4daT7wsccoYpod8fPzAwCTcGDMEUKgpKQEjo6ONgkqDw8PU99Wl8bzC8rUCQWaAlzMvYgLORdwIecCLuZcxIVcWk/NT4WAhTm0bPNND7UnPK8Phu7Yo8g8GAltQfnwZ8fu1zHmsUI8/ogSrfzGQSl/rIavqOEgk2RwVjnDQ+mBNp5tbmvIUaPXmAmL3JJc5JTkIKs4q7yUZJlvF2dBa9CiVF+KK/lXcCX/ilXv5eXoBT8Xv3JB4WwuLPxc/BDgGgBvJ29+wqwPNG9OyVhmzwb27aPRh+++A06fJq+LV14BBg8mAfHgg3aZvpAkCf7+/mjevDl0usY7tVhddDoddu/ejYEDB1r9vVcqlbc1wlAGiwbmXzEYDUi6noSEawlIuJaA01mncT7nPC7mXPzX4XC1XI0W7i3Qwr0FglyDUHq1FEN6DkGrZq0gXW+Nvb8G4ftvVPjnn/Jj/P3p92fSJKBDBw8AHjV4dQwAqBVqNFc0R3Pn5lYfI4RAka6ogpC4VnQNV4uuIqMwo3xZeBWZRZkwCAOyS7KRXZKNf679U+X5VXIV/F38EegWiEDXQAS4BiDQNdB82y0QTkqn2718xhokCbjzTioffECxHr76iowo//yTyrRpJBwmTKDU3bd5k5LL5Xa50TU25HI59Ho9HBwcbuthoTqwaGBMGIwGXMi5YBIHCVm0PJN1BqX60kqP83byRttmbdG2WVu08WxjWm/l0QrNnZubnhZ1Oh2+/fYP5O4dhte+k+PAgfJzqFSUgnrSJCAykqI3MvUbSZJMRpctPVr+a32jMCK7OLuCmDDbLrqK9IJ0XCu+Bq1Bi8t5l3E573KV5/Vw8DATETcLjCC3IAS7B8PHyYdHLeyJuzvlu3jqKSApiVw0v/oKOHeO1tetI/X/8MOQHnqII082IvinuYlSrCvGyasnEZ8Rj+MZx3E84zhOXD1hmtu+FbVcjQ7eHdDJpxM6endEO692JBKatYGHg0eV75WfT55c69bJ8ccfUTAa6cdbkiifziOP0MOJp6e9r5KpT8gkGXycfeDj7IOuqDqAkNagRXpBOtIK0pBakIrU/FSkFqRW2C7WFZumVKoauVDL1QhyC0IL9xYIdg9GsFswrbsFI9id1t3Ubva+5KZBy5aUAe6VVyg++9dfA7GxQHo6EBMDRUwMhjZvDtmECRTHPSysRgwomdqBRUMTIF+Tj6NpR/FX2l8mkXAu+xyMwlihrpPSCR29O6KTTyez0sqjlU3ueLm5wObNNIL5229lCfbIyrdnTyMee0yGceOAgAA7XSTTqFDJVQjxCEGIR+UZ+4QQyNfkl4uJG0IiNT8VaYW0fSX/CjIKM6AxaHAx9yIu5l6s9HxuajcEuQbBQeOAzVs2I8QzxExYBLkFwUHhUBOX2ziQJArD2qcPsHQpsHUrsH49xC+/wDkzE1iyhErbthSZcvx4ij7JAqJBwaKhkaE36nHy6kkcTj2MQ6mHcDj1MBKuJVg0SPR19kWYfxi6+3ZHd7/uCPMPQxvPNtX21b92DfjxRxIKf/wB6PXlr7VvDzz8sAF+fjswefIgKJUcjJS5PSRJgruDO9wd3NHJp1Ol9bQGLdIK0pCcl4yUvBSk5KfQetkyLwW5pRTfI0GTAAA4dvyYxXM1d25ePjrh1sJkr1M2WuHn4geZxJ9t03zj6NHQ5+Uh/u230fPCBci2bgUuXKB89G+/TVHZxoyhuuHhLCAaACwaGjjXiq5hb/Je7E3ei0Oph3As/ZjFKYYQ9xD0CuyFcP9wdPcjkeDncnuuNwBw5Uq5UNi9GzDeNHjRuTPw0EM09XDHHYBeb8SWLUW3/Z4MYwsquQotPVpWaXdRqC1ESl4KEnMSsWXfFniEeCCtMM1MWJToS5BZlInMokwcTT9q8TxKmdI0DXJzKZsOaeHeAq7qmg2OVO9wckJ6v34wvPkmZBoN8MsvlDxr61bKffHmm1SCgkxCA4MGcfz3egqLhgbG5euXsSd5D3Zf3o09yXtwJutMhTruanf0CuyFPoF90CewD3oF9rKLQABIFPz1F009bN4MHD9u/np4OImEhx6i0QWGaQi4qFzQ0acj2nq0he6MDiMHjjSzShdCIKckxzRCkZJnPlqRnJeM1IJU6Iw6JF5PROL1xErfy8PBo1xQuJmPVLRwb4EA14BGFU/EDBcXMmJ65BHKrPnzzxQ86rff6Ank44+puLsDI0cC998PDB9OIa+ZekEj/WQ2DoQQuJh7EX9c+gO7k3djz+U9SMlPqVCvs09nDGgxABHBEegd2BvtvNrZdYg0Px/Yto1EwpYtNA1RhiQBERHlIwotW9rtbRmm3iBJErycvODl5IUw/zCLdfRGPdIL0k0iwlTyy9dvDqh14uoJi+eRSTIEugZWOlLRwr0FPBw8Gr43iLs7uWZOmEDJsf74gwTEzz9TQKnYWCpKJbl5Dh8OjBhBCbca+rU3YFg01DOuFl7Fn4l/4o/EP7D90vYK7mYKmQI9/HtgYIuBGBAyAP2D+8PLycuubTAYKBlUXByVvXvN7RPc3Oj7e++9tPTxsevbM0yDRCFTkGeGezD6o7/FOgWaArPRiZtL2QiGzqij9fwU7EvZZ/E8LiqXSgVFC/cWCHILgkregIb3HR3pB+Xee4FPPgEOHaJ5zx9/BM6fB3bsoDJ3LllPlwmIoUMBD486bnzTgkVDHVOkLcKuy7vwx6U/sD1xe4WnD6VMiYjgCAxuORgDWgxA36C+cFY527UNQgCXLpFA2L6dYrTk5prXad++/Dvdvz+Jf4ZhbMNV7WrySLKEURhxtfCqRUFRtn6t+BoKtYWmeCqWkCDBz8WvfOrDrUUFYVFvI27K5UC/flTee49Ew2+/kQ3Ejh1AWlp5KGu5nLw17r6bolJGRJAAYWoMFg11wMWci/j1/K/49fyv2Jm0E1qD1uz17n7dMbTVUAxpPQQDWgyoEZGQmAjs2UPljz8oPsvNuLvT93DoUAq21LatXZvAMIwFZJIM/q7+8Hf1R5+gPhbrFOuKcSX/irmoyEsxmwYp1ZcivTAd6YXpOJR6yOJ5HBQOlY5UlO13VNaDG3BoKJUXXqBpjD17SED89hsZUu7fT+XNN8l4MiKCBMTgwSQo1Oq6voJGBYuGWkBr0GLP5T0moXAu+5zZ6yHuIRjWehiGth6Ku1vdDR9n+473G43AqVPlImHPHhLrN6NU0ndt2DAq4eEclZFh6iNOSie082qHdl7tLL4uhEBWcZbFUYqykl6YjlJ9Kc5ln6vwe3Qz3k7eFYw2by6+Lr6162Lq6EhPMZGRQEwMPe1s314+fZGeTmGtd+0CFi4EHBzKRy0iIigzZ7NmtdfeRgjfFmqI3JJcbD63GT+e/RHbLm5DobbQ9JpCpsCAFgMwMnQk7gm9Bx28O9h1mDA9vTyT7eHDVK5fN6+jVAI9ewIDBpB308CBZNjMMEzDRpIkU+TN8IBwi3U0eg1SC1LLRyksGG0WagtN+USOpVuOW1HmYhrgGmAq/i7+5euu/vBx8IGoqTDSLVtSmu6nn6Yh1JvtH3bsIIPKsrwYZXToQAKiTEh07AhYkV6aIVg02JH0gnT8eOZHbDqzCTuSdkBvLLce9HX2NYmEoa2Hwt3B3S7vmZkJnDgBHDlC4uCvv8hz6VZcXOj7MWAAld69ASfO88MwTRK1Qo3Wnq3R2rO1xdeFELheer1So01bXEwBQCWpEHQ5CAFut4iKWwSGu9q9+g9QkgS0a0fl2WdJRJw+TUOrBw7QFMb58zSlceYM8MUXdJyLC9C9O4W3DgsDevQAOnViw61KYNFwm1zIuYBNpzdh05lNOHjloFnkxS7Nu+CBDg9gVPtR6OHf47aG8UpL6fN/4gSVkydpedVCkklJosBKvXqROOjVC+jWjacbGIaxDkmS4OnoCU9HT9zhe4fFOje7mKYXUp6QtII08/WCdOSW5kIrtLh0/RIuXb9U5fs6KBzQ3Lm5qfg6+5pt31x8nHyglFdxY5ckuvl36kQiAgCysoCDB8tFxOHDQGEhuYjt3Vt+rEpFIa7DwujHtFMnGpEICmry7p7Vuo2sWLEC77//PtLT09G5c2csW7YMAwYMqLT+rl27MHv2bPzzzz8ICAjAyy+/jKlTp5rV2bhxI1599VVcvHgRbdq0wVtvvYUHHnigOs2rcZLzkrH+1HqsP7Ue8RnxZq/1DeqLBzo8gAc6PIBQr1CbzmswAMnJJIbPnaNStp6UZB5tsQxJAlq3JhuEMpHQowdPNTAMU7Pc7GJaFfnF+YjdHIsOPTsgsySzorC4sX699DpK9aWmkQxraObYrIKQ8HL0QjPHZqbi5VS+7enpCWWZGxhAvuRnzwLx8eRnHh9PJS8POHqUys24uJB46NiRhETbtkCrVvQj3ERcP20WDRs2bMDMmTOxYsUK9O/fH6tWrcKIESOQkJCAFi1aVKifmJiIkSNH4plnnsE333yDffv2Yfr06fDx8cFDDz0EADhw4ADGjx+P//znP3jggQewadMmjBs3Dnv37kWfPpYtiGubq4VX8X3C91h/ar2Z77RckmNwq8F4oMMDGN1+NALdAi0ebzSSXUF6OpCSQiU5ueJSq7V4OACy37njDipdu9Kyc2fA2b7OFQzDMHbDUekIP7Uf+gX3M4uyeSsluhJkFGaYQnWbleJMXC28atq+VnwNRmFETkkOckpyLEbGrQw3tZu5qHD0QjPPZnAf6Q63ByLhpn4IbvkauKVkwi0xDW6XUuF2LhnuZ5PgVlwI9V9/Qfrrr4on9vAg8dCqFZUWLSg9uL8/xZbw9yfDzAaOJGy0UOnTpw969OiBlStXmvZ17NgR999/PxYvXlyh/ty5c/Hzzz/j9OnTpn1Tp07F33//jQMHDgAAxo8fj/z8fGzdutVUZ/jw4fD09ERsbKxV7crPz4e7uzvy8vLgZoeQo5piI87EX8Wq31fjgjwJh1OPQS8AYVTAKOS4w7cn+vtHobv3AEh6NxQWSSgoAAoKSKReu0YlM5OWWVnmAZIqQ6Ui8Vo2NRcaWr7u69uwR8Z0Oh22bNmCkSNHVvnjwVgP96l94f60PzXRp2WC4WYhUSYmyoREdkm2aT2nJAfXS6/b5b2VkgJuQgU3rQTXUgHHYi2cSvRw1AFON4qj/qb1m/cpnaBy84TS2Q1KZ1coXdxo3dUdSlcPKF09oHB0gtLBGUoHJygdXSBzcITMwRGSWg1JJockl6M0yYD4MwkYPe1xu/WptfdQm0YatFotjh49innz5pntj4yMxP79+y0ec+DAAURGRprti4qKwurVq6HT6aBUKnHgwAHMmjWrQp1ly5ZV2haNRgMN5VsGQBcM0AdUp9PZclkWWfvJfrSfIzAOdwK4E8DjldQsn57QQ4IOErSQQWcqEnSQQXujCIUEhaMMKicZVK4SHDzkcGwmg1tzOdz9ZGgWIIfCTQa5sxxyZzlkLjLIHeSQZ8tRpJFB7iqH3EVeP4Oy/Atl/xd7/H8YgvvUvnB/2p+a6lN3pTvcPd3RztOy6+mt6I16XC+9jpySHOSW5ppERW5JLnJKc1CgKUCeJg/5mnwUaAuQr8k3Wy/QFtB1CD2yoUe2CoAKgE3PqMU3Sqr5bgEg/0apBI9CD9z1z10YenIoOl/pjMvdT0D3tP361Nr/j02iISsrCwaDAb6+vmb7fX19kZGRYfGYjIwMi/X1ej2ysrLg7+9faZ3KzgkAixcvxqJFiyrs37ZtG5zs4BZQkqqAAc6wJUm0AgIKCDjCgvFBGXoABTfKLUaM//KZMSFkAsJZQDgJwBm0/m/FVUC4CQgXUefmr3FxcXXbgEYI96l94f60P/WxT5vd+GuDNrRDBsDxRrkFozCi1FiKYkMxSowlKDIUodRYCq1RC41RA41RQ+tCU3GfUQOdrhh6bRH0uhIYDToYDToYhB4Gox56YYAeBhhggE4S0EtG6CUBtcYFfc/diQEJdyEsMRxyQXckg2SAU4mHXfu0uLjYqnrVun3c+pQrhKjyyddS/Vv323rO+fPnY/bs2abt/Px8BAcHIzIy0i7TE2IEcHHORZz76yyGDh0KpUwJYRSAERAGQesGmO/TCwiNgFFjhFFjhNAKGEtvrFvaX2qEsdgIQ6EBhiIDjEUW1gsN5XUKDYARkIwSpAKJhEc1kHvIofRWQumlhMJLQUtv86XS+8Zr3koomikgyW5/ZEOn0yEuLg7Dhg3joV87wX1qX7g/7Q/3qW3oc/XI/jkbWf/LQt4feRD6cgsCl54u8HnYB+73u6PwVKFd+7RstP7fsEk0eHt7Qy6XVxgByMzMrDBSUIafn5/F+gqFAl5eXlXWqeycAKBWq6G2EB5UqVTarRPb+rTBOZyFSqWqFx92IQSMJUbo8/TQX7eh5Oqhy9FBn6MHBGC4boDhugGlF0qte2M5oGqugspPBZUvLZW+SrPtsqXCU/GvUyf2/B8xBPepfeH+tD/cp5Wju65D9k/ZyPwuE7lxuRC6cqHg3M0Zzcc2h89YHzi1o1F0nU4HnLJvn1p7HptEg0qlQnh4OOLi4szcIePi4jB69GiLx0REROCXX34x27dt2zb07NnT1MiIiAjExcWZ2TVs27YN/fr1s6V5jR5JkiB3kkPuJIfa3/Z46sIgoMvVQZdVXvTZerNts5Ktgz5XDxgAbboW2vQqXDvK2qiUKggLtb8aqkAVFL4KyBJl0GZooQi0z+gFwzBMQ6Q0uRRZP2ch+6dsXN953WxEwbmrM3zG+aD52OZwal+/ovDZPD0xe/ZsTJgwAT179kRERAQ+/fRTJCcnm+IuzJ8/H6mpqfjqq68AkKfERx99hNmzZ+OZZ57BgQMHsHr1ajOviBkzZmDgwIF49913MXr0aPz000/Yvn079t4cbIO5bSS5BJW3Cipv61PmGnVG6K7poM3QQntVa7bUXTXfr8/VQ+gENFc00FzRWDyfK1zx15y/ICkkqPxVUAWooA5Um8rN26pAFRQuHJGKYZiGjxAChccLkfUTCYXC44Vmrzt1dkLz8TSi4Nyh/vrR2/yLPH78eGRnZ+ONN95Aeno6unTpgi1btiAkJAQAkJ6ejuTk8sAcrVq1wpYtWzBr1ix8/PHHCAgIwPLly00xGgCgX79+WL9+PRYsWIBXX30Vbdq0wYYNG+pNjIamjEwpgzpADXXAv49sGDVGaDPNRYUmXQNtmhaaNBIS+ZfyIcuTQegFNCkaaFI0KKjCOEPuKjcJCHWgGupgNRyCHaBuUb6ucGdhwTBM/cNQYsD1XdeRvTkb2T9nQ5Ny08OUDHDv7w6vUV7wHuVtmnqo71Tr13b69OmYPn26xdfWrl1bYd+gQYNw7JjlhCdljBkzBmPGjKlOc5h6gkwtg0OwAxyCLQcwKfPXHhE5AiJHQJOqMRVtmrZ8PZVEhiHfAEOBAcVnilF8pnLLXrmb3KKYKFtXB6khd7DFD4ZhGMZ2hBAoPlOMnN9ykPNbDvJ258FYWu5NJ3OSoVlUM3iN8oLXPV5Q+Vg/6ltf4Ec0ptaRFJJp5KAq9AX6cjFxY6RCk6KBJlmD0pRSaFI00OfoYcg3oPifYhT/U7mwUDZXVi0s/NWQ5GxjwTCMbejz9Mj9M9ckFDTJ5lOz6mA1mo1oBu9R3vC42wNyx4b9AMOigam3KFwVULRXVGkIZCgymATEzWLCtJ6sgbHECF2mDrpMHQqPFlo+kRxQB6rh0IKEhEMLBxITLcr3Kdz/3TOEYZjGjb5Qj/x9+cjdkYvrO66j4GgBYCh/XVJL8BjkgWbDm6HZ8GZw6uDUqH43WDQwDRq5sxzOHZwrNRwSQkCfozcJCE2KpuL6FQ1gAO1LtmzACdywr7hJUJgJjBZkvClTVT+TKcMw9Q9DiQH5+28SCYcLzDwdAMCxnaNJJHgM8oDcqWGPJlQFiwamUSNJEgWr8lLCtburxTrCIKDN0JrERGmy+VKTooEuS0f2FVVNg0iAyl9lUVCULZVeykb11MEwjQ1tlhb5+/ORtz8P+fvykX84H0JrLhLUIWp4DvaEx2APeAz2qNSOqzHCooFp8khyyeTmib6W6xiKDTQykWxBWNzYLzQC2jQttGlaFByy7BEic5RVLiqCyb6ioc95MkxDQRjJcDFvX55JKJScK6lQTx2kNgkEj8EecGxpIc50E4FFA8NYgdxJDqf2TpXaVwghoLumszhKUbauzdDCWGJEybkSiz9MZSh9lBYFRdm2ylfFgbEYxkaEoBgyBUcLUHDkRjlUAP31iumHnTo5wb2fO9z6ucF9gDsc2zjyCOENWDQwjB2QJIlCbTdXAT0t1zFqjNBcuWmUwsJ0iLGIgmnprlVutCkpJZOIUAYpodaokZGWAadWTiaBoXDlrzbTtNGkaUgY3CQSdJkVMznKnGRw6+0Gt/5uJBT6ukHZjMNdVwb/sjBMLSFTy+DYxhGObSwPbQohoM/VWxylMO1L00DoBEovlaL0EuUOcYADLn5/0excCk9FlbYVKn8VZAo22mQaPoYSA4oTilF4ohBFJ4tMS0sCAXLAuYszXMNd4drTFa69XOHSzQUyJX8XrIVFA8PUEyRJgrKZEspmlRttGnVGaNPKjTaLE4txbu85+Mn8oE3RojS5FIY8A/S5lKis6ESR5TeTgyJ9WrKruBHOW+Wj4tgVTL3BqDGi5GIJis8Wo+hUEYpOFKHwZCFKzpcARgsHyADnTs4kDnq6wiXcBS7dXNhm6DZh0cAwDQiZUgaHEAc4hJC1tk6nw4kuJ9BpZCdTAjh9vr5yo81kCpJ1cxjv/H2VpMSVAypfFdQBN0SEf/m62v/GMkANpY+SbSwYuyCEgC5TR1Fgz95UzhSjNLHUsjgAoPRWwvkOZzh3dYZLVxda7+zcqF0f6woWDQzTyFC4KaDorIBz50piVxgEtFe1lXqCaNMofwgMMHmDVIkclM00QG0mLFT+ZOOhbK4kew9fFeTO/CPe1DEUG1CaVIrSxFKUJJagNLHUVEoSS2DIM1R6rNz1hkFyJye43OEC567OcL7DmYyD2VCxVmDRwDBNDEkulSchq8TF1KinKJqatBsiIl1rWr85CZkuU0fiIlULbeq/p06XOcnMhIRp6aussF/prWS7iwaGUWukz0lqeS6ZkpQSOB5xxInFJ1CaVArdVQu2BjcjAQ6tHEzeSo7tHWm9gxNUfiwO6hoWDQzDVECmsC67qVFvpGymaRozYaFNJ3Ghu6aD9iplPDWWGmEsNtJTZlKpVe2Qu8vJzsNLCUUzBZTNbixv3b6pjsJTwWLDjhi15NGjvaalcOxl69coNLs2o1wgWDQ+BKCCyiybrdxNDodWDnBs5QiHVg6m4tjKEQ5tHDjBXD2GRQPDMNVGppCVB8aqAiEEDEUGuslkas2XV7UV92fpACNgyDPAkGeg+Wxb2uUsg8JNAbmbHAp3Rfm6paX7jaWrHEalEbIUGUoTSyHcBWSOMsicZA1WhAgD9buh2ABjsZHW8w3QX9dDn6c3X960bsgzQJdF4qCq6QJLSCoayVIFqqAOUkPpr8TFvIvoHtkdLqEucGjlAIUn53FpqLBoYBimxpEkCQoXBRQuCji2/vdoesIgoMvRQZ+rhy5bB32OnrZzaPvm9ZtfKwvUYywyQlukBdJtb6srXHEUR83br5Agc5JB7iQ3CQm5oxySWoJMKYOklEylym0bDEaFUUDoqBh1RtO6xW0tCQJjsZEEQhEtbw1/XG3kZGyoaq6C0kcJpU/5usqXMtaWZa5VepuHStfpdDi95TS8R3qbjHWZhguLBoZh6h2SXILKh9w+bcGoN9KTcr4B+vyblnm3bFe2LDGgNK8UCr0CxuJyU32hFzDk01N6g0SCSfTI3eRQeChoBMZDYb5+Yyl3l1POlhviQOGhYA8ZBgCLBoZhGhEyhQwqbxXgXb3jdTodtmzZgpEjR0KhUMCoMZY/vZeYrxuK6En+1qd+oa98ZAC2PPhLqHzkQiGZ71PLIHeWl4+GONF22brMQcbTAYxdYNHAMAxjAUmSIHeQQ+4g57DCDHODhmndwzAMwzBMrcOigWEYhmEYq2DRwDAMwzCMVbBoYBiGYRjGKlg0MAzDMAxjFY3Ge0II8mXKz68kY1810Ol0KC4uRn5+PgclsQPcn/aH+9S+cH/aH+5T+1MTfVp27yy7l1ZGoxENBQUU1zw4OLiOW8IwDMMwDZOCggK4u7tX+rok/k1WNBCMRiPS0tLg6upqtyAm+fn5CA4ORkpKCtzc3OxyzqYM96f94T61L9yf9of71P7URJ8KIVBQUICAgADIZJVbLjSakQaZTIagoKAaObebmxt/2O0I96f94T61L9yf9of71P7Yu0+rGmEogw0hGYZhGIaxChYNDMMwDMNYBYuGKlCr1Xj99dehVqvruimNAu5P+8N9al+4P+0P96n9qcs+bTSGkAzDMAzD1Cw80sAwDMMwjFWwaGAYhmEYxipYNDAMwzAMYxUsGhiGYRiGsYomLxpWrFiBVq1awcHBAeHh4dizZ0+V9Xft2oXw8HA4ODigdevW+OSTT2qppQ0DW/rzhx9+wLBhw+Dj4wM3NzdERETg999/r8XWNgxs/YyWsW/fPigUCnTv3r1mG9jAsLU/NRoNoqOjERISArVajTZt2mDNmjW11NqGga19um7dOnTr1g1OTk7w9/fHk08+iezs7Fpqbf1m9+7duO+++xAQEABJkvDjjz/+6zG1el8STZj169cLpVIpPvvsM5GQkCBmzJghnJ2dxeXLly3Wv3TpknBychIzZswQCQkJ4rPPPhNKpVL873//q+WW109s7c8ZM2aId999Vxw+fFicO3dOzJ8/XyiVSnHs2LFabnn9xdY+LeP69euidevWIjIyUnTr1q12GtsAqE5/jho1SvTp00fExcWJxMREcejQIbFv375abHX9xtY+3bNnj5DJZOKDDz4Qly5dEnv27BGdO3cW999/fy23vH6yZcsWER0dLTZu3CgAiE2bNlVZv7bvS01aNPTu3VtMnTrVbF+HDh3EvHnzLNZ/+eWXRYcOHcz2Pfvss6Jv37411saGhK39aYlOnTqJRYsW2btpDZbq9un48ePFggULxOuvv86i4SZs7c+tW7cKd3d3kZ2dXRvNa5DY2qfvv/++aN26tdm+5cuXi6CgoBprY0PFGtFQ2/elJjs9odVqcfToUURGRprtj4yMxP79+y0ec+DAgQr1o6KicOTIEeh0uhpra0OgOv15K0ajEQUFBWjWrFlNNLHBUd0+/eKLL3Dx4kW8/vrrNd3EBkV1+vPnn39Gz5498d577yEwMBDt2rXD//3f/6GkpKQ2mlzvqU6f9uvXD1euXMGWLVsghMDVq1fxv//9D/fcc09tNLnRUdv3pUaTsMpWsrKyYDAY4Ovra7bf19cXGRkZFo/JyMiwWF+v1yMrKwv+/v411t76TnX681aWLFmCoqIijBs3riaa2OCoTp+eP38e8+bNw549e6BQNNmvt0Wq05+XLl3C3r174eDggE2bNiErKwvTp09HTk4O2zWgen3ar18/rFu3DuPHj0dpaSn0ej1GjRqFDz/8sDaa3Oio7ftSkx1pKOPWNNpCiCpTa1uqb2l/U8XW/iwjNjYWCxcuxIYNG9C8efOaal6DxNo+NRgMePTRR7Fo0SK0a9eutprX4LDlM2o0GiFJEtatW4fevXtj5MiRWLp0KdauXcujDTdhS58mJCTgxRdfxGuvvYajR4/it99+Q2JiIqZOnVobTW2U1OZ9qck+inh7e0Mul1dQw5mZmRVUWxl+fn4W6ysUCnh5edVYWxsC1enPMjZs2IDJkyfj+++/x9ChQ2uymQ0KW/u0oKAAR44cQXx8PJ5//nkAdNMTQkChUGDbtm24++67a6Xt9ZHqfEb9/f0RGBholjK4Y8eOEELgypUrCA0NrdE213eq06eLFy9G//798dJLLwEA7rjjDjg7O2PAgAF48803m/SIbXWo7ftSkx1pUKlUCA8PR1xcnNn+uLg49OvXz+IxERERFepv27YNPXv2hFKprLG2NgSq058AjTBMmjQJ3377Lc9p3oKtferm5oaTJ0/i+PHjpjJ16lS0b98ex48fR58+fWqr6fWS6nxG+/fvj7S0NBQWFpr2nTt3DjKZDEFBQTXa3oZAdfq0uLgYMpn5rUculwMof0JmrKfW70s1Yl7ZQChzFVq9erVISEgQM2fOFM7OziIpKUkIIcS8efPEhAkTTPXLXFtmzZolEhISxOrVq9nl8iZs7c9vv/1WKBQK8fHHH4v09HRTuX79el1dQr3D1j69FfaeMMfW/iwoKBBBQUFizJgx4p9//hG7du0SoaGh4umnn66rS6h32NqnX3zxhVAoFGLFihXi4sWLYu/evaJnz56id+/edXUJ9YqCggIRHx8v4uPjBQCxdOlSER8fb3Jhrev7UpMWDUII8fHHH4uQkBChUqlEjx49xK5du0yvPfHEE2LQoEFm9Xfu3CnCwsKESqUSLVu2FCtXrqzlFtdvbOnPQYMGCQAVyhNPPFH7Da/H2PoZvRkWDRWxtT9Pnz4thg4dKhwdHUVQUJCYPXu2KC4uruVW129s7dPly5eLTp06CUdHR+Hv7y8ee+wxceXKlVpudf1kx44dVf4u1vV9iVNjMwzDMAxjFU3WpoFhGIZhGNtg0cAwDMMwjFWwaGAYhmEYxipYNDAMwzAMYxUsGhiGYRiGsQoWDQzDMAzDWAWLBoZhGIZhrIJFA8MwDMMwVsGigWEYhmEYq2DRwDAMwzCMVbBoYBiGYRjGKlg0MAzDMAxjFf8PJIqVyZwxep0AAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 600x250 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "Vx = np.linspace(0,1,1000)\n",
    "plt.figure( figsize=(6,2.5) )\n",
    "plt.plot( Vx, p1_num(Vx), \"-r\", label=\"p1(x)\" )\n",
    "plt.plot( Vx, p2_num(Vx), \"-g\", label=\"p2(x)\" )\n",
    "plt.plot( Vx, p3_num(Vx), \"-b\", label=\"p3(x)\" )\n",
    "plt.plot( Vx, p4_num(Vx), \"-m\", label=\"p4(x)\" )\n",
    "plt.grid() ; plt.legend() ;"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## <span style=\"color: #0000BB\"> *Exercice 13* </span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### <span style=\"color:purple\"> 13.1 Travail à faire </span>"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "On s'intéresse à la solution $f$ du système différentiel $(1)$ suivant : $\\displaystyle \\left\\lbrace\\begin{array}{lll} \\forall r\\in]0,2], & \\displaystyle f^{\\prime\\prime}(r)+\\frac{1}{r}\\,f^{\\prime}(r)+25\\,f(r)=0&; \\\\ \\forall r\\in]2,5[ & \n",
    "\\displaystyle f^{\\prime\\prime}(r)+\\frac{1}{r}\\,f^{\\prime}(r)+4\\,f(r)=0&.\\end{array}\\right.$<br />la solution $f$ étant de classe $\\mathcal{C}^{1}$ sur l'intervalle $[0,5]$ et vérifiant les conditions aux limites : $f^{\\prime}(0)=0$ et $f(5)=1$."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "On admet que la solution générale de l'équation différentielle $\\displaystyle f^{\\prime\\prime}(r)+\\frac{1}{r}\\,f^{\\prime}(r)+k^2\\,f(r)=0$ est une combinaison linéaire des deux fonctions $r\\mapsto J_0(k\\,r)$ et\n",
    "$r\\mapsto Y_0(k\\,r)$, où $J_0$ et $Y_0$ désignent les fonctions de Bessel de première et de seconde espèces :"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left( J_{0}\\left(k r\\right), \\  Y_{0}\\left(k r\\right)\\right)$"
      ],
      "text/plain": [
       "(besselj(0, k⋅r), bessely(0, k⋅r))"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "r,k = sb.symbols(\"r,k\", real=True, nonnegative=True)\n",
    "S1,S2 = sb.besselj(0, k*r), sb.bessely(0, k*r)\n",
    "(S1,S2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[True, True]"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "[ (S.diff(r,2) + (1/r)*S.diff(r) + k**2*S ).equals(0) for S in (S1,S2) ]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "L'étude de ces deux fonctions en $r=0$ donne les résultats suivants :"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAHQAAAAUCAYAAABcbhl9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAEOElEQVR4nO2Za4hVVRTHf6N9SERHsCwoeviYIUwaSmiGamLUxj5EDSbUB3sSai9LssgK/vyFCrKcErJPA4MwUMJkQQYZKT0sm15SlKVpk1H2GAszS+gxfdjnOGfOnDvPe8/cYv5wWfesvffa67Aee619Krq7uxnD/wfjRluBMRQXJ2QxbW8ELgfOlnQ0X5XGMBBsXwC8D9wiqSU5VpFOubbnAh3AKknrEvzFwKVADXAeMAlok7SkpNqHvU8H1hCcbCpwEHgBsKRfSr1/OcL2ZqAWmCXpt5iflXIfAX4FnknxHwLuIBj029Ko2Re2ZwAfADcRHK0Z2A/cBbxje2peupQZHgVOBVYkmb0MarsKWABskvRHSsBKoAqYDNxaOj37YAMwDVghqUnS/ZLmEQxbDTycoy5lA0kdwOfAMtvjY346Qm8GKoDnMgRsl7RXUm5lse3pQCPQCTydVgk4Clxne2JeOpUZngXOIAQh0LcoWgD8DezMUan+MC+iWyX9kxyQdMT2DoLBa4HX8lZupLC9hJBhpgHtwFJJv9tuANYCMwi2WCbpQIaIHRG9DHgFEhEaeXkNsLuMKtvqiO4pML43olU56FJU2J4DPAncC1wF1AGbbc8GthCq2CbCuz9vuyJDzHsRrY8ZyQg9DRhPqCDLBZURPVxgPOZPKb0qRcdKYI2kTQC2rwQ+JGSaLZKWR/Net70TaAC2JQVIOmz7GCHtAr0NGleL/6U2IPbakp7rtjuBM4ewZDDt3LnAU/GDpE9ttwBLgftSc98CZpMyaISfgVPih6RB46r2xEEqnQfiCKwsMD45Na9U2AccG8L87wYxp4K+jrifkCVPBr5K8Lvpcd40JtBju14G/TGi5dTXfRHRQmfkrIgWOmOLAknzSyD2M+Bi4GMA25XA3UAX8JjthkRHUQ88kBZgexzhuDlu/KRBDwI/0VOIlAO2R7TR9rhkpWt7EnARwTvLpSofCpqBV213Ad8Tqt2vgeXAu0CL7Q3AIkLWzEq31YTI3RUzjle5kTe8AZxke2YxNLbdarvb9o3DWS9pH7AVOAu4PS0emAhsTFblI90zL0jaRYjItcDLwCFgkaRPgCsIUdlBaCWvLdD/10Y0dvw+fWg7cDWwEPgyOWC7iVBGQ7hyAqiz3Rr975K0KiUvdpi/+nm3gXAb8Daw3vZ8YDdwIaHq2wM8WII9c4GkNqAtg78NmJnOShloJNwbvBgz0jdF7cAPwPUZi2uAG6Lfwog3PcFbnLFmDnCE0FcNC1GUzgVaCYa8h9BwrwfqJB0q9p7lgv6MGZ25TcBLkr6J+VlfW1YTLujPl/TRcJWxPYWQRp6QlC7DS4LR2HO0YPtOglPXS3oz5md9bWkGDhA+V40ElwB/AusGmlhEjMaeucP2BGA10J40JmREaLSgnnBGPV5G14BjiGD7HOAaoFVSZ3LsX8aCYW94nRveAAAAAElFTkSuQmCC\n",
      "text/latex": [
       "$\\displaystyle \\left( 1, \\  0, \\  -\\infty\\right)$"
      ],
      "text/plain": [
       "(1, 0, -∞)"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "S1.replace(r,0), S1.diff(r).replace(r,0), S2.limit(r,0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "On en déduit la solution générale du problème différentiel :"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* Sur l'intervalle $[0,2]$ :"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAEEAAAAVCAYAAAAZ6IOkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAABJ0AAASdAHeZh94AAAEm0lEQVR4nOWYa4hWVRSGn5k0tcHyhtnFS1Zj1KSNVpikYWllERUVRZSgRGmEiRkUCa+vhBWoJXS/aU4/FJEIKknCazfNQdNMCUkjyLxQWSPJkE4/9j525syeGb8ZRKH3z/r2u/Y+e+31rbX2OqesoaGB/zvKT7YBpwI6nGwDbC8CbgYukHToBO4zDNgIPCTpnbyurL3pYHstMBIYIemrEtdeCWwApkuaV9DtBvo3s3SvpD5tsPUDYDhwsaS6jG9XJNguB64AjgDftuERs4E/gdea0R8EXkrwdQnuePAcsB6YEvcG2hkJti8BtgNbJQ0ucW0lsAN4W9LDCf1uAEkD2mxget/twBnAQElHIBEJtu8HbgWuAs4B/gF2Aq9KWlCYPizKjW2wZyJQBixpw9okbI8GVgJzgKXAM4RU7Q5USdoGLAZmAmOAT6HgBNtdgfcIh1oH7AN6A7cD79ruLemF3JL2OGEMIY2+bmFOJ9sPAP2AQ8AWYG32DyYwNMoqQsh/ArwR1++Iui+iHEvKCUAD0FfSr3nS9gzgB2AC0G4n2K4g1JLtrdwIfYCaArfL9gRJaxLzMydcC1wnKeXgb6IclRGN+gRJdUUHRH4P8AvQI3eQMqCakC5bWjhICucBpwF7WpizALiB4IgK4HLCvzoAWG57SGJN5oTHm3EAkg4ChwnRATRNh+7AY4SaMAg4k8aO2pT7PQjoCmyWdLjwnEeBJwk1ZRswVdK63JSeUf6eMjQa6wL1HTDJdh3wBCGv78ztWQFUElJ4YXPPjfgNODsbHDug7cGESj+LULAWA88DBhbFaflrMJkKtu8F5hOuoGpCDi633S837e8oO7dibAqvRzmqwA8hnOdjSUdbeUaXnA2NIqEG6AaMlrQ6v8L2rPgzf+Dm6sE0YKGkt+J4iu1xwGTg6cjti7InpSNbW1Hgs1RY39Li2Nt0A3ZlXHlU9AUGA6sTDuhGKIgAtTlVEyfYPj3yKwp7rwBG5MZ7gP2ElCoV10T5Y4HPnNBakR5EiPTNGZGlQ5bTA213zJS2exLu8fMJBXBz5LOiWA9szW3Qi1Dw9hY23ksocABIagDWAr1sX1S00vZltnsk+P7Ay3H4fkE9NGFPCsOjXJURHaJR+22vBK4H1tv+jFDUxsXJR4HvcwWwklAUayXVJzYqtqFlCW4ZcBdwE6EZy+Me4Cnbqwhh+xdwIaFgdybc/3OyybY7AZcCW5qxJ48bCf3JhxmRrwn3AXMJB59M8Oi0KO+mcZhdHWXxhelA3KD4ctObptGxLHLjgVcKulWEsK0mhH8F8AfwOaF21cRoylAFdKRxujaB7bOAO4CPJP2c8cecIGl/NCiFssJ4XJTL86Sketu1hG5saU41lnDo4tz5wGzb1ZI25XRrgFQzlISk2oSNKYwnRNLcPFnyW6TtakJk7CS2nQXMA2psbyBcj48A5/Lf1ZbHi8AkwrV8W6m2lALbXQi307JCz3J8X5Zsl9ueabsG+JIQ8hNTPbykJcBUYAahkI4EbpH0U2LuYeBBYGNsdk4kBgBvAtOLiuN6lbZdRWiNDxDC9FlJbfl+cEriX89xjXwoGwoGAAAAAElFTkSuQmCC\n",
      "text/latex": [
       "$\\displaystyle a J_{0}\\left(5 r\\right)$"
      ],
      "text/plain": [
       "a⋅besselj(0, 5⋅r)"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a,b,c = sb.symbols(\"a,b,c\", real=True)\n",
    "F1 = a*sb.besselj(0, 5*r) ; F1"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* Sur l'intervalle $[2,5]$ :"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle b J_{0}\\left(2 r\\right) + c Y_{0}\\left(2 r\\right)$"
      ],
      "text/plain": [
       "b⋅besselj(0, 2⋅r) + c⋅bessely(0, 2⋅r)"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "F2 = b*sb.besselj(0, 2*r) + c*sb.bessely(0, 2*r) ; F2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$a)$ Vérifier que la solution proposée satisfait bien la condition limite à gauche. Définir ensuite un système de 3 équations à 3 inconnues $a$, $b$ et $c$ à partir des conditions de raccordement en $r=2$ de la fonction et de sa dérivée, et de la condition limite à droite."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$b)$ En déduire les coefficients $a$, $b$ et $c$ qui satisfont le problème différentiel $(1)$, puis la solution sur chacun des intervalles $[0,2]$ et $[2,5]$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$c)$ Définir la solution sous forme d'une fonction numérique vectorisée <span style=\"color:#604000;font-size:12pt\"><b><tt>f_num</tt></b></span> puis faire tracer sa courbe représentative. Les fonctions de Bessel numériques se trouvent dans le module <span style=\"color:#604000;font-size:12pt\"><b><tt>scipy.special</tt></b></span> et se nomment <span style=\"color:#604000;font-size:12pt\"><b><tt>jn</tt></b></span> et <span style=\"color:#604000;font-size:12pt\"><b><tt>yn</tt></b></span>."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['numpy', {'besselj': <ufunc 'jv'>, 'bessely': <ufunc 'yn'>}]"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import scipy.special as sf\n",
    "M = [\"numpy\",{\"besselj\":sf.jn, \"bessely\":sf.yn}]\n",
    "M"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<u>Indication</u> : dans l'appel de la fonction <tt><b>sympy.lambdify</b></tt>, on remplacera la chaîne <tt><b>\"numpy\"</b></tt> par la liste <tt><b>M</b></tt> définie ci-dessus."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "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.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
