Untitled1.ipynb 55.1 KB
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "a1e66bad-47aa-49b5-ac59-a2183646e74e",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "0dbacf2a-1b98-4a20-89f7-1b46ac725a13",
   "metadata": {},
   "outputs": [],
   "source": [
    "x = np.linspace(0,1)\n",
    "y = x*(1-x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "178862b2-2fc8-42ec-b8e9-ceb8b78ea7a9",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x7f7473269e80>]"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x,y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "id": "26e02fe3-a079-4b64-b986-56f37f967e85",
   "metadata": {},
   "outputs": [],
   "source": [
    "from sympy import pprint, symbols, expand, factor, simplify, collect, cancel, apart, Matrix, solve, Poly, roots, degree\n",
    "from sympy.printing.latex import latex\n",
    "from sympy.plotting import plot"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "id": "baf8a3e6-0a39-410a-85c8-8c536b7603ae",
   "metadata": {},
   "outputs": [],
   "source": [
    "t,x = sympy.symbols(\"t x\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "5d570fe9-37cf-4680-a608-99e015d9b977",
   "metadata": {},
   "outputs": [],
   "source": [
    "Z = 8.8 + t*(1-t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "de141bca-0e2a-42c7-86a3-355a1eda8287",
   "metadata": {},
   "outputs": [],
   "source": [
    "pa = 0.7/Z"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "0194f6b5-c206-47d7-bc0d-8b1617186d46",
   "metadata": {},
   "outputs": [],
   "source": [
    "T = 1 - t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "id": "d1b858fc-2432-42e7-ba79-e012e76a6a99",
   "metadata": {},
   "outputs": [],
   "source": [
    "s = Matrix([\n",
    "    37,\n",
    "    9,\n",
    "    9,\n",
    "    3,\n",
    "    3,\n",
    "    0,\n",
    "    0,\n",
    "    2,\n",
    "    1])\n",
    "m = Matrix([\n",
    "    0.0,\n",
    "    0.0,\n",
    "    0.7,\n",
    "    0.3 * t,\n",
    "    0.3 * T,\n",
    "    0.7 + 0.3 * t,\n",
    "    0.7 + 0.3 * T,\n",
    "    0.3 * t * T,\n",
    "    0.7 + 0.3 * t * T\n",
    "])\n",
    "z = (s.T * m)[0,0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "id": "2b461810-5bbe-4e4c-a938-b3c916dd95ee",
   "metadata": {},
   "outputs": [],
   "source": [
    "z = (s.T * m)[0,0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "id": "3946e0dc-fc81-4030-9cac-ccdccf05b9e1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/latex": [
       "$\\displaystyle - 0.9 t \\left(t - 1\\right) + 7.9$"
      ],
      "text/plain": [
       "-0.9*t*(t - 1) + 7.9"
      ]
     },
     "execution_count": 51,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simplify(z)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "id": "a34c1fc2-3810-4054-bcee-b3d8db7b852f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/latex": [
       "$\\displaystyle - 7.9 \\cdot \\left(0.113924050632911 t^{2} - 0.113924050632911 t - 1.0\\right)$"
      ],
      "text/plain": [
       "-7.9*(0.113924050632911*t**2 - 0.113924050632911*t - 1.0)"
      ]
     },
     "execution_count": 68,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "factor(z)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "id": "89ac28fa-0c47-4a27-a0cc-f7fe0ddf63bd",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/latex": [
       "$\\displaystyle - 0.9 t^{2} + 0.9 t + 7.9$"
      ],
      "text/plain": [
       "-0.9*t**2 + 0.9*t + 7.9"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "expand(z)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "id": "f575ba56-647a-4e01-8c0f-39499abf6300",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'- 1.3 t^{2} + 1.3 t + 7.5'"
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "latex(expand(z))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "id": "a4c62a99-9ad7-4b79-9dda-a28092383a07",
   "metadata": {},
   "outputs": [],
   "source": [
    "zx = z.replace(t,x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "id": "9d67f9d2-48d9-454e-bbfa-4d185eb86200",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAHWCAYAAAD6oMSKAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA06UlEQVR4nO3deXRUZZ7/8U/tSSAJYkgggCyKItigElFAWu1RUBHRHlRGh4PaqBywhebYLfxcgG4xo55hWgUUaQZnmkWO3YKeHhWYOcri0gLCjMq4gyANgyJkIUklVfX8/qglVdnIXqmH9+uce+69z31u1Te5SeVzn3ur4jDGGAEAACDlOZNdAAAAAFoHwQ4AAMASBDsAAABLEOwAAAAsQbADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIdItht3bpV48ePV35+vhwOhzZs2JCw3Rij+fPnKz8/X+np6bryyiv16aefJqdYAACADqpDBLuTJ09q6NChWrx4cZ3bn3rqKS1atEiLFy/Wjh071L17d11zzTUqKSlp50oBAAA6LocxxiS7iHgOh0Pr16/XTTfdJCk8Wpefn69Zs2bpoYcekiT5/X7l5eXpySef1H333ZfEagEAADqODjFi15B9+/bpyJEjGjNmTKzN5/Ppiiuu0HvvvVfvfn6/X8XFxbGpqKhI33//vTpYjgUAAGg1HT7YHTlyRJKUl5eX0J6XlxfbVpfCwkJlZ2fHpi5duig3N5fLtwAAwFodPthFORyOhHVjTK22eHPnzlVRUVFsOnjwYFuXCAAAkFTuZBdwKt27d5cUHrnr0aNHrP3o0aO1RvHi+Xw++Xy+Nq8PAACgo+jwI3b9+vVT9+7dtXnz5lhbZWWltmzZopEjRyaxMgAAgI6lQ4zYlZaW6quvvoqt79u3T3v27FHXrl111llnadasWXriiSc0YMAADRgwQE888YQyMjJ0++23J7FqAACAjqVDBLudO3fqqquuiq3Pnj1bkjRlyhS99NJL+s1vfqPy8nJNnz5dx48f16WXXqpNmzYpMzMzWSUDAAB0OB3uc+zaSnFxsbKzs1VUVKSsrKxklwMAaCOhUEiVlZXJLgOnOY/HI5fL1e7P2yFG7AAAaA2VlZXat2+fQqFQsksB1KVLF3Xv3r3BT/FobQQ7AIAVjDE6fPiwXC6XevfuLaezw78/EJYyxqisrExHjx6VpIRP9WhrBDsAgBUCgYDKysqUn5+vjIyMZJeD01x6erqk8Mez5ebmtttlWU5nAABWCAaDkiSv15vkSoCw6AlGVVVVuz0nwQ4AYJX2vJ8JaEgyfhYJdgAAAJYg2AEAAFiCYAcAAGAJgh0AAKexY8eOKTc3V/v37092KQkmTpyoRYsWJbuMlEOwAwCgA1i6dKn69euntLQ0DRs2TNu2bWuwf0lJiWbNmqU+ffooPT1dI0eO1I4dO5r8vIWFhRo/frz69u0rSdq6davGjx+v/Px8ORwObdiwoRlfTcs99thjWrhwoYqLi1v9sfv27SuHw1FrmjFjRr37tNb3u60R7AAASLJ169Zp1qxZevjhh7V7926NHj1a1113nQ4cOFDvPlOnTtXmzZv1xz/+UR9//LHGjBmjq6++WocOHWr085aXl2vFihWaOnVqrO3kyZMaOnSoFi9e3KKvqaWGDBmivn37avXq1Y3qf+WVV+qll15qVN8dO3bo8OHDsWnz5s2SpFtuuaXefVrj+90uzGmiqKjISDJFRUXJLgUA0AbKy8vN3r17TXl5ebJLabLhw4ebadOmJbQNHDjQzJkzp87+ZWVlxuVymb/85S8J7UOHDjUPP/xwbH3NmjXG5/OZ7777Ltb2i1/8wvzkJz8xJ06cMH/+859NTk5OvXVJMuvXr2/GV3Rqp6rNGGPmz59vRo8e3ajHu+KKK8zKlSubVcvMmTPN2WefbUKhUJ3bG/v9rikZP5OM2AEArGSMUVllICmTMabRdVZWVmrXrl0aM2ZMQvuYMWP03nvv1blPIBBQMBhUWlpaQnt6erq2b98eW580aZLOO+88FRYWSpIWLFigjRs36s0331R2dra2bt2qgoKCRtfamk5VmyQNHz5cH374ofx+f5vVUVlZqVWrVunuu++u93PnGvv97gj4l2IAACuVVwU16LGNSXnuvb8dqwxv4/7E/vDDDwoGg8rLy0toz8vL05EjR+rcJzMzUyNGjNDvfvc7nX/++crLy9PatWv117/+VQMGDIj1czgcWrhwoSZOnKj8/Hw988wz2rZtm3r27ClJ2r9/v/Lz85v5VbbMqWqTpJ49e8rv9+vIkSPq06dPm9SxYcMGnThxQnfeeWe9fRr7/e4IGLEDAKADqDlaZIxp8D8X/PGPf5QxRj179pTP59Ozzz6r22+/vdb/JL3hhhs0aNAgLViwQOvXr9fgwYNj28rLy2uNQjXV/Pnz63wjQvy0c+fOOvdtqDap+v+tlpWV1dr3iSeeUOfOnWPTtm3bNG3atFptp7JixQpdd911pwy4jf1+JxsjdgAAK6V7XNr727FJe+7GysnJkcvlqjU6d/To0VqjePHOPvtsbdmyRSdPnlRxcbF69Oih2267Tf369Uvot3HjRn322Wd1jgrm5OTo+PHjja61Lvfff78mTZrUYJ/oO25raqg2Sfrxxx8lSd26dau1bdq0abr11ltj63fccYf+/u//Xj//+c9jbfGjf3X59ttv9Z//+Z969dVXG+wnNf77nWwEOwCAlRwOR6MvhyaT1+vVsGHDtHnzZt18882x9s2bN2vChAmn3L9Tp07q1KmTjh8/ro0bN+qpp56Kbfvoo490yy23aNmyZXr55Zf16KOP6pVXXoltv+iii7Rq1aoW1Z+Tk6OcnJwm73eq2iTpk08+Ua9evep8/K5du6pr166x9fT0dOXm5uqcc85pdA0rV65Ubm6uxo0b1+h9Gvp+dwQd/yceAADLzZ49W5MnT1ZBQYFGjBihF198UQcOHNC0adMkSYsXL9b69ev1X//1X7F9Nm7cKGOMzjvvPH311Vf69a9/rfPOO0933XWXpPD9c+PGjdOcOXM0efJkDRo0SJdccol27dqlYcOGSZLGjh2ruXPn6vjx4zrjjDMkSaWlpfrqq69iz7Nv3z7t2bNHXbt21VlnndUqX29japOkbdu21XpTSWsJhUJauXKlpkyZIre7dhyq+T0/1fe7w2i3998mGR93AgB2S+WPOzHGmCVLlpg+ffoYr9drLr74YrNly5bYtnnz5pk+ffok9F+3bp3p37+/8Xq9pnv37mbGjBmxjwk5duyYGThwoLn33nsT9rnxxhvN2LFjE9ouu+wy88ILL8TW3377bSOp1jRlypRW+TobW1t5ebnJysoy77//fqMet6kfd7Jx40YjyXz++ed1bq/5PW/o+12fZPxMOoxpwnuyU1hxcbGys7NVVFSkrKysZJcDAGhlFRUV2rdvX+y/N6Bx3njjDT344IP65JNP5HR2nPdULlmyRK+99po2bdqU7FKaLRk/k1yKBQDgNHb99dfryy+/1KFDh9S7d+9klxPj8Xj03HPPJbuMlEOwAwDgNDdz5sxkl1DLvffem+wSUlLHGXMFAABAixDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEsQ7AAAACxBsAMAALAEwQ4AAMASBDsAAABLEOwAAEgBx44dU25urvbv35/sUmqZOHGiFi1alOwyIIIdAAApobCwUOPHj1ffvn0lSVu3btX48eOVn58vh8OhDRs2JK22xx57TAsXLlRxcXHSakAYwQ4AgA6uvLxcK1as0NSpU2NtJ0+e1NChQ7V48eIkVhY2ZMgQ9e3bV6tXr052Kac9gh0AAEm2du1apaWl6dChQ7G2qVOnasiQISoqKtKbb74pt9utESNGxLZfd911evzxx/Xzn/88qbVF3XjjjVq7dm2b1oJTI9gBAOxkjFR5MjmTMU0qddKkSTrvvPNUWFgoSVqwYIE2btyoN998U9nZ2dq6dasKCgra4rvU4tqihg8frg8//FB+vz8pdSLMnewCAABoE1Vl0hP5yXnu//c3ydup0d0dDocWLlyoiRMnKj8/X88884y2bdumnj17SpL279+v/PzkfC2nqi2qZ8+e8vv9OnLkiPr06ZOUWsGIHQAAHcINN9ygQYMGacGCBVq/fr0GDx4c21ZeXq60tLQWPf78+fPlcDganHbu3Nnk2qLS09MlSWVlZS2qEy3DiB0AwE6ejPDIWbKeu4k2btyozz77TMFgUHl5eQnbcnJydPz48RaVdP/992vSpEkN9om+47YptUX9+OOPkqRu3bq1qE60DMEOAGAnh6NJl0OT6aOPPtItt9yiZcuW6eWXX9ajjz6qV155Jbb9oosu0qpVq1r0HDk5OcrJyWn12qI++eQT9erVq1nPgdZDsAMAIIn279+vcePGac6cOZo8ebIGDRqkSy65RLt27dKwYcMkSWPHjtXcuXN1/PhxnXHGGZKk0tJSffXVV7HH2bdvn/bs2aOuXbvqrLPOarfaorZt26YxY8a0yvOi+RzGNPGtOymquLhY2dnZKioqUlZWVrLLAQC0soqKCu3bt0/9+vVr8f1o7eXHH3/UqFGj9NOf/lTLli2LtU+YMEF+v19vvfVWrG3EiBG68847dd9990mS3nnnHV111VW1HnPKlCl66aWX2rW2iooK5eXlaePGjbrsssta/Ny2SMbPJMEOAGCFVAx2TfHGG2/owQcf1CeffCKns2O993HJkiV67bXXtGnTpmSX0qEk42eSS7EAAKSA66+/Xl9++aUOHTqk3r17J7ucBB6PR88991yyy4AIdgAApIyZM2cmu4Q63XvvvckuAREdaywXAAAAzUawAwAAsATBDgAAwBIEOwCAVU6TD3tACkjGzyLBDgBgBZfLJUmqrKxMciVAWPT/5no8nnZ7Tt4VCwCwgtvtVkZGhr7//nt5PJ4O91lvOH0YY1RWVqajR4+qS5cusZOO9kCwAwBYweFwqEePHtq3b5++/fbbZJcDqEuXLurevXu7PifBDgBgDa/XqwEDBnA5Fknn8XjadaQuimAHALCK0+m08l+KAY3BDQgAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWcCe7AAD2M8bIGClojIKh6uWQMQqFwm0ho/B6pE8oFF4PGiNjjIKRdRPpJyWum7jnCZnwcshIRuG2+H4hYyQTqS26oHCf+Hl4e+LXUbMtyiHJ4XDELUcmOWIdon0c0X0i2x2RbXJITocjMoX7OuPaHNFlp2r0qe7nqOMxXM64KW49uh2APQh2QAdjjFFV0KgqGFJlIKTKuHm0Lbo9EDSqCoXngWC4TyBoFAiF+wSCIQVCpro9GFJVKDKv6zEi+4VCRoFI4AqEQpF5zfbq7aGQEvoFg5F5JKQFQ3VFIXQETofkdjrldEouh0NOp0PuWPALLztrhEK3yxnr43FF587wNmdkm8shj9Mhl9NZRx+H3K5wX48r3O52OeV1hR/b46puD29zyBt5To/bKY/TKY87vL/XFV72upzyuiOTy0lgxWkrJYJdIBDQ/PnztXr1ah05ckQ9evTQnXfeqUceeUROJ1eT0ToCwZD8gegUlL8qbjkQiqwH695eR9/KYHUoi4W0yLI/2hYX1OJD3OkqOorkdFQHC6dDsWVHbBQqMjqlyAhYjdGq6hGzSP/oqFjc/tG2qIQYELfBUXdzQns0tsYGAuNG9oypHhWMjhxW969ulxJHFKMjjOFRzeoRyFB0JDJudNPEtcfvG4wsNyRkpMpgSAo23C/VeFw1wp47HBK9Lqd87sQQ6Inr56uzzaU0T3juczvl8zSyzR0OrEB7Solg9+STT+qFF17Qv/3bv2nw4MHauXOn7rrrLmVnZ2vmzJnJLg9tJBQyKq8KqqIqGJmHVBFZr6gKJWzz19FWURWSP7Zc92NUB7VQhx1Vio6KRP9IeWqMaMSPfLidzsiIRmRExBVejo6IeGqNkkTmTkdsu8vpkMcZGVlxVY/aRNddTmfcyE3NkZxo30ifyHp1UFN49Cd6qTA6ShQZKULriwbC6MhpdBQ1OvoaihtVDZnqkdn40dZgrF/cyGx0VDYyyhsMhUeAgyGjqpBRMDJaHB3ZjW0LhvcJhOJGjKOjx6GQKgPVy1WB8GhytF9lrH8oMiUuxwtvC+pkZXITq8vpkM/tVJqnOuyleVyRKbycHrfuc7uU7nUpLRISo8u+Ovqme8J90z0uZXjd8rmd/B4hNYLd+++/rwkTJmjcuHGSpL59+2rt2rXauXNnkis7vRkTfqEt8wdVVhVUeWVAZZVBlVWGQ1R5dLm+9qq49sqgyioDqqgKqSzS35/EkavoWb0v7uzb63bKF/fi7Iu82MaW4/p7XY7YaIDX7QoHs8h+nriAVt3HmRDc4tddvFCjBRwOh1yRUU+bhSK3HFTWGB2vjJy41TV6XhkZPa+rveZ2fyB8UhgekQ/WMbpfPXJfGax+7QqGTOx1rj2keZzK8LoTQl9iAHQpLW45w+uOzCPLPpcyPC518rlrtTH6mBpSIthdfvnleuGFF/TFF1/o3HPP1X//939r+/bt+v3vf5/s0lJKZSCkUn9AJ/0BnawM6KQ/HKZi88qgyvzx84b7nPQHFGinUS6v2xk5U3XGzlh9HpfS6ziLjZ4Np9dYr9UWd9kkdvnEEw5UnPUCqcXpdCjNGf49T7ZQyNR5G0dFVUgVgeorBvVdcYj1qwxG+odUHrccvRIRPVGOPwkOP25lm3xdXrdTGV6XOnndSve61MnriszdyvC5leFxKcMXXu/kc6uzLxwMw8tudfK51NkX7tvZG14nLLa+lAh2Dz30kIqKijRw4EC5XC4Fg0EtXLhQ//AP/1DvPn6/X36/P7ZeXFzcHqW2uvgwVlIRDlulFQGV+gOJ7ZEgFl0Obw+q1F+lk/6gSisCCWeRrc3rCl8yyIj8omdEzxS9kV/2+PbI2WR8W7i/O9YWvz3N7SJoAUgZTqcj/DrmbZ+QGQyZWEgsj1wZiV4JqaiKv1oSiMxDKqsKxK6eRK+ShK++BFTmD+pk3JWW6G0q0RHNE2VVrVa7z+2MhL7w6390ORoEO/ncykzzKCvNrcw0tzr7PMqMLIen8Hq6x8UbZiJSItitW7dOq1at0po1azR48GDt2bNHs2bNUn5+vqZMmVLnPoWFhVqwYEE7V5qoMhBSSUWVSioCKo7MSyqqVFwRDmDF5dVtNfuURPq0RRiL/iJFz6wyvOFfnk7euLaa23xudfJGz74S5xlelzycdQFAUricjtjrdGurectNmT8c+E5WhoNh9CpONCBG10v9wbirQ+GrPqVx69F7IsMjm5U6drJlo4wup0OdfdHw51ZWJPB1jguA4fbq5fhgGN3PhhFEhzGnes9U8vXu3Vtz5szRjBkzYm2PP/64Vq1apc8++6zOfeoasevdu7eKioqUlZV1yucMBMMjZcXltQNXfevF8W3lVa16j1i6x6XOaYnD2Z1jZzXhH97O3rjluG2ZaZF2hr4BAB1AZSAUu7oUDXul/mgojF6FCqqkIqBSf/VgR2nc39xSf/hvbmveEZTucdUaDcxMcyvT50kIiZlxwbBzWjgwdsnwKist+eEwJUbsysrKan2sicvlUihUf3Dy+Xzy+Xy12l/bfUhVrmM6UV6l4vIqFZVX6URZpYrKE0Naa97oWn1mED+k7KleT08cag6faXiqg5yXMAYAsEf4o2S8OqOTt0WPY0z4zSnRkFccCX/RwZdSf/WgS6zdX71cHAmOFVXhPBG9d/Foif8Uz1y/zj63stM9yk73qEuGJ7acHVnuku6NbRt1Tk6Lvv66pESwGz9+vBYuXKizzjpLgwcP1u7du7Vo0SLdfffdTX6shzd8Iqcvo9H949N7VronFsiy6gtpcetZkXBm+7vRAABIBoej+jJ0XlZasx8nej97XSOC0eVYe0Vie+zWKn9AkmL3wB86UX7K593/T+OaXXN9UiLYPffcc3r00Uc1ffp0HT16VPn5+brvvvv02GOPNfmxRpx9prp17ZKQpLuke5WVHh45y4oLaZlpbu4dAwDAcl63U13dXnVtwQhiIBhScUUg4UpgbCqr0oka60XlrfcmlHgpcY9dayguLlZ2dnaj77EDAABINQxHAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYImWC3aFDh/SP//iPOvPMM5WRkaELL7xQu3btSnZZAAAAHYY72QU0xvHjxzVq1ChdddVVevPNN5Wbm6uvv/5aXbp0SXZpAAAAHUZKBLsnn3xSvXv31sqVK2Ntffv2TV5BAAAAHVBKXIp9/fXXVVBQoFtuuUW5ubm66KKLtHz58mSXBQAA0KGkRLD75ptv9Pzzz2vAgAHauHGjpk2bpgceeED//u//Xu8+fr9fxcXFCRMAAIDNHMYYk+wiTsXr9aqgoEDvvfderO2BBx7Qjh079P7779e5z/z587VgwYJa7UVFRcrKymqzWgEAAJIlJUbsevTooUGDBiW0nX/++Tpw4EC9+8ydO1dFRUWx6eDBg21dJgAAQFKlxJsnRo0apc8//zyh7YsvvlCfPn3q3cfn88nn87V1aQAAAB1GSozY/epXv9IHH3ygJ554Ql999ZXWrFmjF198UTNmzEh2aQAAAB1GStxjJ0l/+ctfNHfuXH355Zfq16+fZs+erXvuuafR+xcXFys7O5t77AAAgLVSJti1FMEOAADYLiUuxQIAAODUCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFjC3ZKdq6qqdOTIEZWVlalbt27q2rVra9UFAACAJmryiF1paamWLVumK6+8UtnZ2erbt68GDRqkbt26qU+fPrrnnnu0Y8eOtqgVAAAADWhSsPuXf/kX9e3bV8uXL9fPfvYzvfrqq9qzZ48+//xzvf/++5o3b54CgYCuueYaXXvttfryyy/bqm4AAADU4DDGmMZ2vuWWW/TYY4/pJz/5SYP9/H6/VqxYIa/Xq6lTp7a4yNZQXFys7OxsFRUVKSsrK9nlAAAAtLomBbt4JSUlyszMbO162gzBDgAA2K7Z74odPXq0jhw50pq1AAAAoAWaHewKCgp06aWX6rPPPkto3717t66//voWFwYAAICmaXaw+8Mf/qC7775bl19+ubZv364vvvhCt956qwoKCuTz+VqzRgAAADRCiz7Hbt68efJ6vbrmmmsUDAY1duxY7dixQxdffHFr1QcAAIBGavaI3eHDh/XAAw/od7/7nQYNGiSPx6NJkyYR6gAAAJKk2cGuf//+2rZtm1555RXt2rVLr776qqZPn64nn3yyNesDAABAIzX7UuzKlSs1adKk2PrYsWP19ttv64YbbtC3336rpUuXtkqBAAAAaJxmf45dffbv36/rr79ee/fubc2HbTE+xw4AANiu2Zdi69O3b1+9++67rf2wAAAAOIUmBbsDBw40qt8ZZ5whSTp06FDTKwIAAECzNCnYXXLJJbrnnnv04Ycf1tunqKhIy5cv1wUXXKBXX321xQUCAACgcZr05okJEyYoMzNT1157rTwejwoKCpSfn6+0tDQdP35ce/fu1aeffqqCggI9/fTTuu6669qqbgAAANTQpDdPeL1eHTx4UFlZWcrLy9Ott96qY8eOqby8XDk5Obrooos0duxYXXDBBW1Zc7Pw5gkAAGC7Jo3Y9ezZU7t379a1116r0tJSPfHEE8rNzW2r2gAAANAETbrH7sEHH9SNN96okSNHyuFwaPXq1dqxY4fKy8vbqj4AAAA0UpM/x+7TTz/Va6+9pkceeUT9+/fX/v375XA4dM4552jo0KG68MILNXTo0A53fx2XYgEAgO2a/QHF55xzjj744AN16tRJ//M//6M9e/bEpk8++UQlJSWtXWuLEOwAAIDtWv0/T0iSMUYOh6O1H7ZFCHYAAMB2rf6fJyR1uFAHAABwOmiTYAcAAID2R7ADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEsQ7AAAACxBsAMAALAEwQ4AAMASBDsAAABLEOwAAAAsQbADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEsQ7AAAACxBsAMAALAEwQ4AAMASKRnsCgsL5XA4NGvWrGSXAgAA0GGkXLDbsWOHXnzxRQ0ZMiTZpQAAAHQoKRXsSktLdccdd2j58uU644wzkl0OAABAh5JSwW7GjBkaN26crr766lP29fv9Ki4uTpgAAABs5k52AY318ssv66OPPtKOHTsa1b+wsFALFixo46oAAAA6jpQYsTt48KBmzpypVatWKS0trVH7zJ07V0VFRbHp4MGDbVwlAABAcjmMMSbZRZzKhg0bdPPNN8vlcsXagsGgHA6HnE6n/H5/wra6FBcXKzs7W0VFRcrKymrrkgEAANpdSlyK/bu/+zt9/PHHCW133XWXBg4cqIceeuiUoQ4AAOB0kBLBLjMzUxdccEFCW6dOnXTmmWfWagcAADhdpcQ9dgAAADi1lLjHrjVwjx0AALAdI3YAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJYg2AEAAFiCYAcAAGAJgh0AAIAlCHYAAACWINgBAABYgmAHAABgCYIdAACAJQh2AAAAliDYAQAAWIJgBwAAYAmCHQAAgCUIdgAAAJZIiWBXWFioSy65RJmZmcrNzdVNN92kzz//PNllAQAAdCgpEey2bNmiGTNm6IMPPtDmzZsVCAQ0ZswYnTx5MtmlAQAAdBgOY4xJdhFN9f333ys3N1dbtmzRT3/600btU1xcrOzsbBUVFSkrK6uNKwQAAGh/7mQX0BxFRUWSpK5du9bbx+/3y+/3x9aLi4vbvC4AAIBkSolLsfGMMZo9e7Yuv/xyXXDBBfX2KywsVHZ2dmzq3bt3O1YJAADQ/lLuUuyMGTP0H//xH9q+fbt69epVb7+6Rux69+7NpVgAAGCtlLoU+8tf/lKvv/66tm7d2mCokySfzyefz9dOlQEAACRfSgQ7Y4x++ctfav369XrnnXfUr1+/ZJcEAADQ4aREsJsxY4bWrFmj1157TZmZmTpy5IgkKTs7W+np6UmuDgAAoGNIiXvsHA5Hne0rV67UnXfe2ajH4ONOAACA7VJixC4FsicAAEDSpdzHnQAAAKBuBDsAAABLEOwAAAAsQbADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEsQ7AAAACxBsAMAALAEwQ4AAMASBDsAAABLEOwAAAAsQbADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEsQ7AAAACxBsAMAALAEwQ4AAMASBDsAAABLEOwAAAAsQbADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEsQ7AAAACxBsAMAALAEwQ4AAMASBDsAAABLEOwAAAAsQbADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEsQ7AAAACxBsAMAALAEwQ4AAMASBDsAAABLEOwAAAAsQbADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEsQ7AAAACxBsAMAALAEwQ4AAMASBDsAAABLuJNdAIDTRCgkhQKSCUqhYPU8YTkgmVBkMnHLoXCfhPUa20MNbJcJr8fmSmyTGtiuuO1xHI4ay44a7Y76l+P3cTgkhzOy7Kxej83jt8VPkTanS3K44padNZZd1X2c0ckdWXdLTs7vAZsQ7ICOzhgpWCkF/HFzvxSojJtHplAgslwVnkKReWxbVe1+9S0n7B/ZFpuCcctVNdZrbo8EN3RcTnftsJew7pJcHsnpCa+73PUse6ofq9ayJ9zX5ZVcvnCbyxs3b8Gy2xeuEQDBDmiQMeFwEqiQqirC84BfCpRH5vHt8ZNfqorrU197sKpGSPPXDnGhqmR/F9pe/MiS0117xKrOyVG9X4PboyNiUvXIWR2jZvVul2qNttUczZPqGekzjdhWz+hiQ6OTsbZg3EhlZB6KX47b1pBoCE9lTnc4MLojk8srudMkd2Te4LZIOHSnRebp4bknvXrdkxbZHpni1z3pkZ9bx6nrBNoYwQ6pKxiQqk5KlWVSVVk4MFWVxy3XmAcq6thWc7lGW6A88se2A4n9AfPGzeNGMJzREQ134rLLmzhq4vRERjw89fSL3xZtd1eP4MSWo+ueGuvxl/xqXAqsK8Sh7USDYexyd3RENVQd6mq2mRqjrrFR26q49ara24JxI7nB6GhuVY0R4crq0eNGLce1RUeoa57wRGutOpmc77HDGQmA6ZInIxz8osvutEhbJCBGl2v1z5C8narn8cvRffhdwSkQ7ND2glWSv0SqLI3MT4anqrIay2XhPnUtV0X6xZbLwiNc7c3liztb9yWewdc8w3f7apzZ12iPjRzUmNdqiw9vPu6JQtM5HNVhWt5kV9M6jKke8Q5WxY2mx92qEKioHgk/1bZgZR2j6uW1R+RrrsfqCYVfm9o0WDrqD36nXM6QvJ3rX3Z52rButCeCHWozJvyC5S+VKkvC8/hgFlsujcyL45ajfUuq2+Jf/NqCwxV58Yo/+42bJ5wtZ8T1q69/tD2yXzSIEaqAjsPhiFxKTWJQNSbx1oyqsnDwi472x0b/KxKvAlTVs62qLO7E9mT1SWygPPqE4dfUylKptfOj0xN+HfVlhoOeL1PyReeZkjezRltW7X7RPm4fI4tJRLCzSSgUDlkVReEpuhwLaHFhq2ZASxhRK22b+21cvvALgLdzM842G1h2eXkRAdD+HI7ICWBa2z5PKNjIKxk1rmrEh8P45arI41SWVV/SDlVJFSfCU0s5PbXDXl0B8FTB0ZfJSGIzpFSwW7p0qZ5++mkdPnxYgwcP1u9//3uNHj062WW1nkBlXCA7EQlodQS1+tr9xa1fk6dT3C9j59pnc974X8zONX5xa2znFxQAms7pqn4dVV7rPnagMjH81TrxL6m+KlNfW7S9sjT8mKEqqfx4eGopT4aU1kVKy27i1EVKyzot/+6kTLBbt26dZs2apaVLl2rUqFFatmyZrrvuOu3du1dnnXVWsssLC1ZJ5Seqf6Bjwauo4UAWbY8Nt7eQOy18tpOWHf7BTghj8QEsq3rZG1mPLUfmfIQAANgrejk7/YyWP1YoGA6HCcGwuPpqUew2nZIabXX0i/49jF6eLvlb82rydAr/LUzv0vRg6MsKv3EsxTiMqfme/Y7p0ksv1cUXX6znn38+1nb++efrpptuUmFh4Sn3Ly4uVnZ2toqKipSVldVw56qK6nDWqOlEeF5Z0sKvMsKXFRfMIuEsLbvutrRsyZed2O72tU4dAAAkQ/RNdxXxAyMnaqw3MEVHD1vK2zkx7KWfEZ4yIvP0rlJG1+rl9DPC65701nn+ZkiJKFpZWaldu3Zpzpw5Ce1jxozRe++917QH+2iV5KoZ3E4krrdo5MwRd3bQpZ4AFt9WI6z5shglAwCc3lyecEDK6Nq8/YOBGrc1NWIqj+sbfXdz9BJz8aGmPb87LTHopXepsR4Jguff0Lyvr6GnbvVHbAM//PCDgsGg8vIS7y3Iy8vTkSNH6tzH7/fL76/+OIyioiJJUvHrD0m+xtxo76oOZ/HzutrSukjp0Wv62c0PZlVK3mcwAQBgFbfkzpE650idm7hrsEqqKJH8JyK3UBWHb6uKDQSdCIfGhPXI3AQkf7l08pCkUwTCud8pMzNTjlZ8A2BKBLuoml+4Mabeb0ZhYaEWLFhQq733vzRlePZEE/oCAAA0wT9l6+jRo+rWrVurPWRKBLucnBy5XK5ao3NHjx6tNYoXNXfuXM2ePTu2fuLECfXp00cHDhxQdnZ2m9aL1lNcXKzevXvr4MGDp743Eh0Gxy01cdxSE8ctNUWPm9fbup/FmBLBzuv1atiwYdq8ebNuvvnmWPvmzZs1YcKEOvfx+Xzy+Wq/iSA7O5sf/BSUlZXFcUtBHLfUxHFLTRy31NSal2GlFAl2kjR79mxNnjxZBQUFGjFihF588UUdOHBA06ZNS3ZpAAAAHULKBLvbbrtNx44d029/+1sdPnxYF1xwgd544w316dMn2aUBAAB0CCkT7CRp+vTpmj59erP29fl8mjdvXp2XZ9FxcdxSE8ctNXHcUhPHLTW11XFLmQ8oBgAAQMOcyS4AAAAArYNgBwAAYAmCHQAAgCWsCnZLly5Vv379lJaWpmHDhmnbtm0N9t+yZYuGDRumtLQ09e/fXy+88EI7VYp4TTlur776qq655hp169ZNWVlZGjFihDZu3NiO1SKqqb9vUe+++67cbrcuvPDCti0QdWrqcfP7/Xr44YfVp08f+Xw+nX322frXf/3XdqoWUU09bqtXr9bQoUOVkZGhHj166K677tKxY8faqVps3bpV48ePV35+vhwOhzZs2HDKfVotkxhLvPzyy8bj8Zjly5ebvXv3mpkzZ5pOnTqZb7/9ts7+33zzjcnIyDAzZ840e/fuNcuXLzcej8f86U9/aufKT29NPW4zZ840Tz75pPnwww/NF198YebOnWs8Ho/56KOP2rny01tTj1vUiRMnTP/+/c2YMWPM0KFD26dYxDTnuN14443m0ksvNZs3bzb79u0zf/3rX827777bjlWjqcdt27Ztxul0mmeeecZ88803Ztu2bWbw4MHmpptuaufKT19vvPGGefjhh82f//xnI8msX7++wf6tmUmsCXbDhw8306ZNS2gbOHCgmTNnTp39f/Ob35iBAwcmtN13333msssua7MaUVtTj1tdBg0aZBYsWNDapaEBzT1ut912m3nkkUfMvHnzCHZJ0NTj9uabb5rs7Gxz7Nix9igP9WjqcXv66adN//79E9qeffZZ06tXrzarEfVrTLBrzUxixaXYyspK7dq1S2PGjEloHzNmjN57770693n//fdr9R87dqx27typqqqqNqsV1Zpz3GoKhUIqKSlR165d26JE1KG5x23lypX6+uuvNW/evLYuEXVoznF7/fXXVVBQoKeeeko9e/bUueeeqwcffFDl5eXtUTLUvOM2cuRIfffdd3rjjTdkjNH//d//6U9/+pPGjRvXHiWjGVozk6TUBxTX54cfflAwGFReXl5Ce15eno4cOVLnPkeOHKmzfyAQ0A8//KAePXq0Wb0Ia85xq+mf//mfdfLkSd16661tUSLq0Jzj9uWXX2rOnDnatm2b3G4rXnZSTnOO2zfffKPt27crLS1N69ev1w8//KDp06frxx9/5D67dtKc4zZy5EitXr1at912myoqKhQIBHTjjTfqueeea4+S0QytmUmsGLGLqvmPdI0xDf5z3br619WOttXU4xa1du1azZ8/X+vWrVNubm5blYd6NPa4BYNB3X777VqwYIHOPffc9ioP9WjK71soFJLD4dDq1as1fPhwXX/99Vq0aJFeeuklRu3aWVOO2969e/XAAw/oscce065du/TWW29p3759/G/1Dq61MokVp845OTlyuVy1zl6OHj1aKwFHde/evc7+brdbZ555ZpvVimrNOW5R69at0y9+8Qu98soruvrqq9uyTNTQ1ONWUlKinTt3avfu3br//vslhQODMUZut1ubNm3Sz372s3ap/XTWnN+3Hj16qGfPnsrOzo61nX/++TLG6LvvvtOAAQPatGY077gVFhZq1KhR+vWvfy1JGjJkiDp16qTRo0fr8ccf54pUB9SamcSKETuv16thw4Zp8+bNCe2bN2/WyJEj69xnxIgRtfpv2rRJBQUF8ng8bVYrqjXnuEnhkbo777xTa9as4Z6RJGjqccvKytLHH3+sPXv2xKZp06bpvPPO0549e3TppZe2V+mnteb8vo0aNUp/+9vfVFpaGmv74osv5HQ61atXrzatF2HNOW5lZWVyOhP/vLtcLknVo0DoWFo1kzT57RYdVPTt4CtWrDB79+41s2bNMp06dTL79+83xhgzZ84cM3ny5Fj/6FuLf/WrX5m9e/eaFStW8HEnSdDU47ZmzRrjdrvNkiVLzOHDh2PTiRMnkvUlnJaaetxq4l2xydHU41ZSUmJ69eplJk6caD799FOzZcsWM2DAADN16tRkfQmnpaYet5UrVxq3222WLl1qvv76a7N9+3ZTUFBghg8fnqwv4bRTUlJidu/ebXbv3m0kmUWLFpndu3fHPqKmLTOJNcHOGGOWLFli+vTpY7xer7n44ovNli1bYtumTJlirrjiioT+77zzjrnooouM1+s1ffv2Nc8//3w7VwxjmnbcrrjiCiOp1jRlypT2L/w019Tft3gEu+Rp6nH73//9X3P11Veb9PR006tXLzN79mxTVlbWzlWjqcft2WefNYMGDTLp6emmR48e5o477jDfffddO1d9+nr77bcb/FvVlpnEYQzjsgAAADaw4h47AAAAEOwAAACsQbADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEsQ7AAAACxBsAMAALAEwQ4AGmHt2rVKS0vToUOHYm1Tp07VkCFDVFRUlMTKAKCawxhjkl0EAHR0xhhdeOGFGj16tBYvXqwFCxboD3/4gz744AP17Nkz2eUBgCTJnewCACAVOBwOLVy4UBMnTlR+fr6eeeYZbdu2jVAHoENhxA4AmuDiiy/Wp59+qk2bNumKK65IdjkAkIB77ACgkTZu3KjPPvtMwWBQeXl5yS4HAGphxA4AGuGjjz7SlVdeqSVLlujll19WRkaGXnnllWSXBQAJuMcOAE5h//79GjdunObMmaPJkydr0KBBuuSSS7Rr1y4NGzYs2eUBQAwjdgDQgB9//FGjRo3ST3/6Uy1btizWPmHCBPn9fr311ltJrA4AEhHsAAAALMGbJwAAACxBsAMAALAEwQ4AAMASBDsAAABLEOwAAAAsQbADAACwBMEOAADAEgQ7AAAASxDsAAAALEGwAwAAsATBDgAAwBIEOwAAAEv8f2NOLTnGmcXPAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "p1 = plot(zx, xlim=(0.0, 1.0), ylim=(0,10), show=False, legend=True)\n",
    "p2 = plot( (t*T).replace(t, x), xlim=(0.0,1.0), show=False)\n",
    "p1.append(p2[0])\n",
    "p1.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 78,
   "id": "27da5481-766b-4062-a947-aa1d565a6735",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{-2.50462606288666: 1, 3.50462606288666: 1}"
      ]
     },
     "execution_count": 78,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "roots(z, t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "id": "6927383c-e62a-436e-bbc9-79bbe7f4273f",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.3⋅t⋅(1 - t) + 0.7\n",
      "───────────────────\n",
      "0.9⋅t⋅(1 - t) + 7.9\n",
      "----------------------------------------------------------------------------------------------------\n",
      "0.3⋅t⋅(t - 1) - 0.7\n",
      "───────────────────\n",
      "0.9⋅t⋅(t - 1) - 7.9\n",
      "----------------------------------------------------------------------------------------------------\n",
      "               2                                                          \n",
      "          0.3⋅t                    0.3⋅t                     0.7          \n",
      "- ────────────────────── + ────────────────────── + ──────────────────────\n",
      "         2                        2                        2              \n",
      "  - 0.9⋅t  + 0.9⋅t + 7.9   - 0.9⋅t  + 0.9⋅t + 7.9   - 0.9⋅t  + 0.9⋅t + 7.9\n",
      "----------------------------------------------------------------------------------------------------\n",
      "                   ⎛                   2                            ⎞\n",
      "0.0886075949367088⋅⎝0.428571428571429⋅t  - 0.428571428571429⋅t - 1.0⎠\n",
      "─────────────────────────────────────────────────────────────────────\n",
      "                              2                                      \n",
      "           0.113924050632911⋅t  - 0.113924050632911⋅t - 1.0          \n",
      "----------------------------------------------------------------------------------------------------\n",
      "t⋅(0.3 - 0.3⋅t) + 0.7\n",
      "─────────────────────\n",
      "t⋅(0.9 - 0.9⋅t) + 7.9\n",
      "----------------------------------------------------------------------------------------------------\n",
      "     2              \n",
      "0.3⋅t  - 0.3⋅t - 0.7\n",
      "────────────────────\n",
      "     2              \n",
      "0.9⋅t  - 0.9⋅t - 7.9\n",
      "----------------------------------------------------------------------------------------------------\n",
      "                                   0.244725738396624                \n",
      "0.333333333333333 + ────────────────────────────────────────────────\n",
      "                                       2                            \n",
      "                    0.113924050632911⋅t  - 0.113924050632911⋅t - 1.0\n",
      "----------------------------------------------------------------------------------------------------\n"
     ]
    }
   ],
   "source": [
    "e = (0.7 + 0.3 * t * T)/z;\n",
    "for ei in (e, simplify(e), expand(e), factor(e), collect(e, t), cancel(e), apart(e)):\n",
    "    pprint(ei, use_unicode=True)\n",
    "    print(100*\"-\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 102,
   "id": "ba9fc88f-028c-476f-aa94-22c2e15d6e2c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "sympy.core.add.Add"
      ]
     },
     "execution_count": 102,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "z.func"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 103,
   "id": "b4bc5ad7-3bb9-44d0-9b70-d27d6c9876f2",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(7.90000000000000, 0.9*t*(1 - t))"
      ]
     },
     "execution_count": 103,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "z.args"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "74c9de1c-01fe-42b6-9b92-a787cfc246b2",
   "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.9.15"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}