{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Dimerization\n", "\n", "Make a model of dimerization (that is not reversible)\n", "- t is the time (which will be ignored, but scipy requires us to have it)\n", "- y is the vector of variables P1, P2, and P1P2\n", "- params is the vector of model parameters kbin\n", "\n", "Run the model with \n", "- an initial concentration of 2 for P1, 1 for P2, and 0 for P1P2\n", "- kbin=0.1\n", "- for time steps 0 to 10 (with a step of 0.1)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import scipy.integrate\n", "\n", "def dimer_model(t,y,params):\n", "\n", " kbin = params[0]\n", "\n", " P1 = y[0];\n", " P2 = y[1]\n", " P1P2 = y[2]\n", "\n", " dydt = np.zeros( (3,) )\n", " dydt[0] = - kbin * P1 * P2 \n", " dydt[1] = - kbin * P1 * P2\n", " dydt[2] = kbin * P1 * P2\n", " \n", " return dydt\n", "\n", "params = (0.1,)\n", "\n", "# This is a solution we developed in class.\n", "dm = lambda t,y: dimer_model(t,y,params)\n", "sol = scipy.integrate.solve_ivp( fun=dm, t_span=(0,10), y0=(2,1,0), \n", " t_eval=np.arange(0,10,.1) )\n", "\n", "# This works for people, but not all.\n", "#sol = scipy.integrate.solve_ivp( fun=dimer_model, t_span=(0,10), y0=(2,1,0), \n", "# t_eval=np.arange(0,10,.1), args=(params,))\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot the results, labeling as in HW2." ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "\n", "plt.plot( sol.t, sol.y.T )\n", "plt.xlabel( \"Time\")\n", "plt.ylabel( \"Concentration\" )\n", "plt.legend( [\"P1\",\"P2\",\"P1P2\"])\n", "plt.title( \"Dimerization\");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Reversible Dimerization\n", "\n", "Make a model of dimerization that includes the reverse reaction\n", "- t is the time (which will be ignored, but scipy requires us to have it)\n", "- y is the vector of variables P1, P2, and P1P2\n", "- params is the vector of model parameters kbin and kunbin\n", "\n", "Run the model with \n", "- an initial concentration of 2 for P1, 1 for P2, and 0 for P1P2\n", "- kbin=0.1, kunbin=0.05\n", "- for time steps 0 to 10 (with a step of 0.1)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "def dimer_model_with_reverse( t, y, params ):\n", " kbin = params[0]\n", " k2 = params[1]\n", "\n", " P1 = y[0]\n", " P2 = y[1]\n", " P1P2 = y[2]\n", "\n", " dydt = np.zeros( (3,) )\n", " dydt[0] = - kbin * P1 * P2 + k2 * P1P2\n", " dydt[1] = - kbin * P1 * P2 + k2 * P1P2\n", " dydt[2] = kbin * P1 * P2 - k2*P1P2\n", " \n", " return dydt\n", "\n", "params = (0.1,0.0)\n", "dm = lambda t,y: dimer_model_with_reverse(t,y,params)\n", "sol = scipy.integrate.solve_ivp( fun=dm, t_span=(0,10), y0=(2,1,0), \n", " t_eval=np.arange(0,10,.1) )\n", "\n", "#sol = scipy.integrate.solve_ivp( fun=dimer_model_with_reverse, t_span=(0,10), y0=(2,1,0), \n", "# t_eval=np.arange(0,10,.1), args=(params,))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot it." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAEWCAYAAAB8LwAVAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAABFQ0lEQVR4nO3dd5xV9Zn48c8zvffemGHoDIKCIKKIHY0lxh6T1WhC3I1J1iT+ErO7iSmbmJhkNRsTY5SosZANliB2BbFTpdeBGZhemV6Y8vz+OGeGAQdmgLlzpzzv1+u87rmn3eeMeJ/7Lef7FVXFGGOMOZqPtwMwxhgzNFmCMMYY0ytLEMYYY3plCcIYY0yvLEEYY4zplSUIY4wxvbIEYUYVEdkmIgvc9ftE5OnjHJsvIhd5MJYGERnrqesf9Vk/FJHHPHDdR0Tkvwb6umZo8PN2AGbkEJF8IBHoABqA14G7VLXBm3H1pKpTPf0ZbgJaATS5m2qAj4AHVHVtj1jCPB1Lj8/6xaleQ0RuA76qquf0uO6dp3pdM3RZCcIMtCvdL74ZwOnAvYP54SIyVH70FLt/h3DgLGAn8L6IXDjYgQyhv4kZZixBGI9Q1VLgDZxEAYCInCUiH4lIjYhs6lHVc6OIrOt5vojcLSLL3PVAEfmNiBwQkTK3WiPY3bdARApF5PsiUgr8VUTiRGS5+znVIvK+iPi4xx9dbRQkIn8XkXoR2SAi03u7HxHxEZEfiMheEakSkf8TkZh+/B1UVQtV9UfAY8CvelxTRWScu/6EiPxRRF5zq54+FJEkEXlQRA6KyE4ROb3HuSki8ryIVIhInoh8q8e++0RkqYg8LSJ1wG09q9NE5A/uZ3Qt7SJyn7uv6x7rRWS7iFzjbp8MPALMdc+p6RH3z3t89tdEJNf9uy8TkZSj7vdOEdnj/rd5WESkr7+h8R5LEMYjRCQNuAzIdd+nAq8APwdigO8Bz4tIPPAyMFFExve4xBeBZ931+4EJOMlmHJAK/KjHsUnuNccAi4DvAoVAPE6V1w+BY40pczXwD/f8Z4GXRMS/l+O+CXweOA9IAQ4CD/f1dzjKC8AZIhJ6jP03AP8JxAGtwMfABvf9UuB34CQrnL/ZJpy/xYXAv4vIpUfd11IgCnim54eo6l2qGuaWcM5x7+Wf7u69wLlAJPAT4GkRSVbVHcCdwMfuuVFHBy8iFwC/dO8jGdgPLDnqsCuAM4HT3OMuxQxZliDMQHtJROqBAqAc+LG7/UvAq6r6qqp2qupbwDrgclVtwvmCuhnATRSTgGXuL8xFwN2qWq2q9cAvgJt6fGYn8GNVbVXVZqAN5wtqjKq2qer7euxBx9ar6lJVbcP5Ag7CqRI62p3Af7ilgVbgPuC6E6y+KQYE50u7Ny+q6npVbQFeBFpU9SlV7QD+jlNlB84XbLyq/lRVD6nqPuAvHPk3+VhVX3L/1s29fZibnF8CvqmqnwKo6j9Utdg97+/AHmB2P+/vFmCxqm5w/0b34pQ4Mnscc7+q1qjqAWAlPUqYZuixBGEG2udVNRxYgPMlH+duHwNc71Yt1LhVFOfgfJGD8+v9Znf9i8BLbuKIB0KA9T3Oe93d3qXC/VLt8gBOyeVNEdknIj84TrwFXSuq2olT8kjp5bgxwIs9YtiB0xifeJxrHy0VpyRTc4z9ZT3Wm3t539WoPQZIOepv+cOjYingONxS0lLgWVVd0mP7v4jIxh7XzeHwf8O+pOCUGgBwOydU4dx3l9Ie60097skMQdZ4ZTxCVVeJyBPAb3CqZgqAv6nq145xyltAvIjMwEkUd7vbK3G+HKeqatGxPu6oz67HqWb6rojkACtEZK2qvtPLueldK27VTRrOL/2jFQC3q+qHx4ihP64BNqhq4ylcoyuWPFUdf5xj+hqm+X+BOpwqLQBEZAxOSeRCnBJIh4hsxCn19OeaxTjJq+t6oUAscKz/bmaIsxKE8aQHgYvdht+ngStF5FIR8RWRILeBOQ3AreL5B86v/xichNH1q/4vwP+ISAI47RlH1bcfQUSuEJFxbvVULc4v/c5jHD5TRL7gVhX9O07d/ye9HPcI8N/ulygiEi8iV/f1BxBHqoj8GPgqzi/9U7UGqBenYT7Y/XvmiMiZ/TlZRL6O05Zyi/v37RKKkwQq3OO+glOC6FIGpIlIwDEu/RzwFRGZISKBOFWBq1U1/0RuzgwdliCMx6hqBfAU8CNVLcBpOP0hzhdQAXAPR/4bfBa4CPiHqrb32P59nCqjT9xeOW8DE4/z0ePdYxpwGnr/qKorj3HsP4EbcRpqvwx8wU1WR3sIWIZTbVWPk0TmHCeGFBFpcGNYC0wDFqjqm8c5p1/cNokrcOrv83BKWY/hNCz3x83AWKC4R0+mH6rqduC3OH+zMjfmniWmFcA2oFREKnuJ623gv4DngRIgmyPbRcwwIzZhkDHGmN5YCcIYY0yvLEEYY4zplSUIY4wxvbIEYYwxplcj6jmIuLg4zczM9HYYxhgzbKxfv75SVeN72zeiEkRmZibr1q3r+0BjjDEAiMj+Y+2zKiZjjDG9sgRhjDGmV5YgjDHG9GpEtUEYY8yJaGtro7CwkJaWlr4PHuaCgoJIS0vD37+36U56ZwnCGDNqFRYWEh4eTmZmJiN5cjtVpaqqisLCQrKysvp9nseqmEQkXURWutMWbhORb/dyjIjI790pCjeLyBk99t3qTk24R0Ru9VScxpjRq6WlhdjY2BGdHABEhNjY2BMuKXmyBNEOfFdVN4hIOM6EL2+5I0Z2uQxn5M3xOCNj/gmYI85cvz8GZuEMP7xeRJap6kEPxmuMGYVGenLocjL36bEShKqWqOoGd70eZwau1KMOuxp4yp3Y/RMgSkSSceapfcudYvIgztwACz0V6+/f2cPGghpPXd4YY4alQenF5M5Jezqw+qhdqRw5NWKhu+1Y23u79iIRWSci6yoqKk44ttqmNp5dfYBr/vgh9y3bRkNre98nGWPMAPH19WXGjBnk5ORw/fXX09TUBMDtt99OQkICOTk5fVzBczyeIEQkDGcCkX9X1bqBvr6qPqqqs1R1Vnx8r0+LH1dkiD9vfmc+X5ozhic/zufi363ire1lfZ9ojDEDIDg4mI0bN7J161YCAgJ45JFHALjtttt4/fXXvRqbRxOEOzH688AzqvpCL4cU0WNOYJz5gIuOs90jIoL8+dnnc1h651zCg/z42lPr+NpT6yiqafbURxpjzGece+655ObmAjB//nxiYmK8Go/HGqnd+YAfB3ao6u+Ocdgy4C4RWYLTSF2rqiUi8gbwCxGJdo+7BLjXU7F2mTkmhle+dS6Pf5DHQ2/v4aLfruLbF43n9nlZBPjZM4XGjGQ/eXkb24sHtpJjSkoEP75yar+ObW9v57XXXmPhQo81t54wT/Zimoczx+8WEdnobvshkAGgqo8ArwKX48w33AR8xd1XLSI/w5nLF+CnqlrtwVi7+fv6cOd52VxxWjL3LdvO/a/t5B/rCvjJVTmcMz5uMEIwxowizc3NzJgxA3BKEHfccYd3A+rBYwlCVT8AjtuvSp0Jsb9xjH2LgcUeCK1f0qJDeOzWWazcWc59L2/jS4+v5rKcJH54+WTSY0K8FZYxxkP6+0t/oHW1QQxF9iR1H86flMDc7Fgee38fD6/cy4qd5Xx9/ljuXJBNSID9+YwxI5dVrPdDkL8vd10wnhXfO4+FOUn8fkUuF/xmFc+vL6SzU70dnjFmBLr55puZO3cuu3btIi0tjccff3zQYxCnlmdkmDVrlg7GhEHr8qv52fLtbCqsZVpqJP/5ucnMGRvr8c81xgysHTt2MHnyZG+HMWh6u18RWa+qs3o73koQJ2FWZgwv/ts8HrxxBpUNrdz46Cd89cl15JY3eDs0Y4wZMJYgTpKPj/D501NZ8d0F3HPpRD7ZV8WlD77HvS9soaxu5A8dbIwZ+SxBnKLgAF++cf44Vt2zgC/NyeAf6wo474GV/Or1ndQ2t3k7PGOMOWmWIAZIbFggP7k6h3e+ex6XTk3iT+/uZf6vV/LwylyaDtn4TsaY4ccSxAAbExvKQzedzivfOoeZY6J54I1dzP/1ShZ/kEdLW4e3wzPGmH6zBOEhU1MiWXzbmTz/r3MZnxDOT5dv57wHVvLUx/m0tluiMMYMfZYgPGzmmBieW3QWz35tDmNiQvnRP7ex4IF3eerjfCtRGGN6He67oKCA888/nylTpjB16lQeeughr8RmCWKQnJ0dx9+/fhZP3zGH1KhgfvTPbd1VT82HLFEYM1r1Nty3n58fv/3tb9m+fTuffPIJDz/8MNu3b+/7YgPMEsQgEhHOGR/HP+6cy7Nfm8PY+FB+unw75/xqBQ+vzKWuxXo9GTOadQ33nZyczBlnnAFAeHg4kydPpqjIYzMeHJMNJuQFIsLZ2XGcnR3HmrxqHl6ZywNv7OKRVXv5l7ljuO3sLOLDA70dpjGjy2s/gNItA3vNpGlw2f39OvRYw33n5+fz6aefMmfOnIGNrR8sQXjZ7KwYZmfNZkthLQ+vzOWP7+7lsffzuH5WGl87dyxjYkO9HaIxxoOON9x3Q0MD1157LQ8++CARERGDHpsliCFiWlokj3x5JnsrGvjLe/v4v7WFPLP6AAunJrFo/lhOz4ju+yLGmJPXz1/6A+1Yw323tbVx7bXXcsstt/CFL3xh8APDEsSQkx0fxv3XnsZ3Lp7AEx/l8/Qn+3ltaymzxkTz1XOzuHhKEr4+x51mwxgzzKkqd9xxB5MnT+Y73/mO1+LwWCO1iCwWkXIR2XqM/feIyEZ32SoiHSIS4+7LF5Et7j7PD886BCVEBPH/Fk7io3sv5EdXTKGsvoU7n97Agt+s5LH391mDtjEj2Icffsjf/vY3VqxYwYwZM5gxYwavvvrqoMfhseG+RWQ+0AA8pao5fRx7JXC3ql7gvs8HZqlq5Yl85mAN9+0NHZ3KW9tLefyDPNbmHyQ0wJfrZqbxL2dnkh0f5u3wjBmWbLjv4w/37ckpR98Tkcx+Hn4z8JynYhkJfH2EhTnJLMxJZkthLX/9KI/n1hTw5Mf7OXd8HLfOzeT8SQlW/WSMGTBefw5CREKAhcDzPTYr8KaIrBeRRX2cv0hE1onIuoqKCk+GOmRMS4vkdzfM4MMfXMD3LpnAnrIGvvrUuu7BASsbWr0dojFmBPB6ggCuBD5U1eoe285R1TOAy4BvuNVVvVLVR1V1lqrOio+P93SsQ0p8eCB3XTCeD75/Pn+65QzGxIbwwBu7mPvLd7jr2Q18tLeSkTRjoDFmcA2FXkw3cVT1kqoWua/lIvIiMBt4zwuxDQt+vj5cNi2Zy6Yls7eigWc+OcDzGwpZvrmErLhQbjoznWtnphEXZg/fGWP6z6slCBGJBM4D/tljW6iIhHetA5cAvfaEMp+VHR/Gj66cwuofXsjvbphObGgAv3xtJ2f94h3+9en1rNxVTkenlSqMMX3zWAlCRJ4DFgBxIlII/BjwB1DVR9zDrgHeVNXGHqcmAi+KSFd8z6rq656Kc6QK8vflC2ek8YUz0sgtr2fJmgKe31DIa1tLSYoI4tqZqVw/M53MOHtS2xjTO491c/WGkdzNdSC0tnfwzo5y/rGugFW7K+hUmDUmmutmpnH5aclEBPl7O0RjBtVQ6Obq6+vLtGnTaG9vZ/LkyTz55JOEhIRw++23s3z5chISEti69XAlym233caqVauIjIzEx8eHhx9+mLlz53LPPffw8ssvExAQQHZ2Nn/961+Jioo64rNOtJvrUGikNoMk0M+Xy6cl89evzOajH1zI9xdOoqa5jR+8sIUzf/42dz27gRU7y2jr6PR2qMaMGr0N9w1OInj99d4rTx544AE2btzI/fffz9e//nUALr74YrZu3crmzZuZMGECv/zlL085tqHQSG28ICkyiH9dkM2d541lU2Etz68v5OXNxSzfXEJsaABXnJbM1aencnp6FG51nzHGw84991w2b94MwPz588nPzz/u8fPnzyc3NxeASy65pHv7WWedxdKlS085HksQo5yIMCM9ihnpUfzXFVN4d1c5L35axHNrnYfwxsSGcNX0FK6ansL4xHBvh2uMx/xqza/YWb1zQK85KWYS35/9/X4de6zhvo/n5ZdfZtq0aZ/ZvnjxYm688cZ+X+dYLEGYbgF+PlwyNYlLpiZR19LG61tL+efGIh5emcv/rshlUlI4V05P4YrTkm0YcmMGyPGG+z6We+65h5///OfEx8fz+OOPH7Hvv//7v/Hz8+OWW2455dgsQZheRQT5c8OsdG6YlU55fQuvbi7h5c0lPPDGLh54YxfTUiO5fFoyn5uWTEZsiLfDNeaU9feX/kA71nDfx/PAAw9w3XXXfWb7E088wfLly3nnnXcGpGrYEoTpU0J4ELfNy+K2eVkU1TTz6uYSlm8p4Vev7+RXr+9kakoEl09LZmFOkg0caIyXvP766/z6179m1apVhIQMzI8268VkTkhqVDBfmz+Wf35jHh98/3z+4/LJ+Pv68MAbu7jwt6u45H9W8bs3d7G1qNaG+TDmFNx8883MnTuXXbt2kZaW9pmqpKPddddd1NfXc/HFFzNjxgzuvPPOU47BnoMwA6K4ppk3tpXy2tZS1uVX06mQFh3MJVOSuHhKImdmRuPna79HzNAyFJ6DGExDZrhvM7qkRAXzlXlZfGVeFlUNrby9o4w3tpXx9Or9LP4wj6gQfy6YmMBFUxI5d3wc4fZQnjFDniUIM+BiwwK58cwMbjwzg8bWdt7fU8Gb28pYsaucFz4twt9XOGtsLBdMSuDCSYnWyG3MEGUJwnhUaKBf90RH7R2dbDhQw9s7ynhnRxk/eXk7P3l5O9nxoVwwKYHzJyUwa0wMAX5WFWUGj6qOiodBT6Y5wdogjNfkVzbyzs5y3t1Vzup91Rzq6CQs0I9542I5b0ICCybGkxIV7O0wzQiWl5dHeHg4sbGxIzpJqCpVVVXU19eTlZV1xL7jtUFYgjBDQmNrOx/kVvLurgpW7SqnuLYFgHEJYcwfH895E+OZnRlDcICvlyM1I0lbWxuFhYW0tLR4OxSPCwoKIi0tDX//I9v/LEGYYUVVyS1v4N1dFby3p4LVedUcau8kwM+H2ZkxnDs+jnnj4piSHIGPzcFtzCmxBGGGteZDHazOq+KDPZW8v6eSXWX1AMSEBnB2dizzxsUxLzvOGruNOQnWzdUMa8EBviyYmMCCiQkAlNe18EFupbPsqWT55hLAee7i7OxYzs6OY252LIkRQd4M25hhz2MlCBFZDFwBlKtqTi/7F+BMNZrnbnpBVX/q7lsIPAT4Ao+p6v39+UwrQYw+qsreigY+zK3iw9xKPtlXRV1LOwBj40I5KzuWs8bGclZWDAmWMIz5DK9UMYnIfKABeOo4CeJ7qnrFUdt9gd3AxUAhsBa4WVW39/WZliBMR6eyo6SOj/ZW8sm+atbkVdPQejhhzBkbw5ysWGZnxVgPKWPwUhWTqr4nIpkncepsIFdV9wGIyBLgaqDPBGGMr4+QkxpJTmoki+Zn097RybbiOlbnVbF6XzXLN5fw3JoCwKmSmp0Zw6zMGGZnRZMdHzaiuzoac6K83QYxV0Q2AcU4pYltQCpQ0OOYQmDOsS4gIouARQAZGRkeDNUMR36+PkxPj2J6ehSL5mfT0ansLK1jTV41q/dVs2p3BS98WgRAdIg/M8fEMCszmlljoslJjSTI37rVmtHLmwliAzBGVRtE5HLgJWD8iV5EVR8FHgWnimlAIzQjjq+PMDUlkqkpkXxlXhaqSl5lI2vzq1mbf5D1+w/y9o4yAAJ8fchJjWDmmGjOyIjmjDHR1vBtRhWvJQhVreux/qqI/FFE4oAiIL3HoWnuNmMGnIgwNj6MsfFh3HimUwKtqG9lw4GDbNh/kHX7D/Lkx/v5y/tOX4rUqGBOz4ji9IxoTs+IYmpKBIF+VsowI5PXEoSIJAFlqqoiMhtnbooqoAYYLyJZOInhJuCL3orTjD7x4YFcOjWJS6cmAdDa3sG24jo27D/IpwU1fHqgprtrrb+vMCU5ghluNdb09CiyYkPtAT4zIngsQYjIc8ACIE5ECoEfA/4AqvoIcB3wryLSDjQDN6nTpapdRO4C3sDp5rrYbZswxisC/XydKqaM6O5tZXUtfHqgho0FNWwsOMg/1hfy5Mf7AQgP8mNaaiSnpUUxPS2S09KjSIkMsgZwM+zYk9TGDICOTud5jI0FNWwqqGFzYS07S+to63D+/4oJDWBaaiTT3B5W09IiLWmYIcGepDbGw3x9hAmJ4UxIDOeGWU4TWktbBztL69lS6CSMLUW1fJBbSUfn4aQxNSXCbTSPICc1kjExIVY9ZYYMSxDGeEiQvy8z0qOYkR7Vva2lrYPtJXVsLaplW1EdW4trefyDfd0ljbBAPyYnhzMlOYIpKRFMTo5gQmK4dbc1XmEJwphBFOT/2faM1vYO9pQ1sL24jm3FtWwvqWPp+kIaP+4AnNLJ2LhQJidHMCk5nMnJEUxOiiAxItCqqIxHWYIwxssC/Xy7n/7u6uHd2akcqG5iR0kdO0rq2F5Sx/r9B1m2qbj7vKgQfyYmhjMpKZyJSRFMTApjQmK4zfdtBowlCGOGIB8fITMulMy4UC6blty9vba5jZ0ldewqq2dHST07S93SxqGO7mNSo4KZkBjW3SYyITGccQlhNtmSOWGWIIwZRiKD/ZkzNpY5Y2O7t3V2KkU1zewqrWdXWT27y+rZVVrPB7mV3W0bIpAeHcL4hDDGJYYxPiGc8QlhZCeEERZoXwOmd/Yvw5hhzsdHSI8JIT0mhIumJHZvb+/oJL+qiT1l9ewua2BPeT17yhp4b09Fd+IASI4MYlxCGNnxTsLIjg9lXEIY8WHWxjHaWYIwZoTy8/VhXEIY4xLCuGza4e3tHZ3sr24it7zhiOX/1hXQ1KOqKjzQj7HxoWTHhzE2PtQdkiSUzNhQ61U1SliCMGaU8fP1cUoL8WFcOvXwdlWltK6FveWN5JbXs6+ykX0VjXy8r6p7xFtwqqtSIoMZGx9KVpyTMLLiQ8mKDSUtOhg/Xx8v3JXxBEsQxhjAGbgwOTKY5Mhgzhkfd8S+xtZ28iob2VvRQH5lE3mVDeyrbOTFDUXUuxMyAfi51V1jYkPIjA0lMzaEzLhQxrjJw9+Sx7BiCcIY06fQQL8eXXEPU1WqGg+RV9lIXmUj+ZWN5Fc1kl/ZxNq86iN6V/n6CClRQWTGhpLhJpGMmMProdZYPuT067+IiMQDXwMye56jqrd7JixjzHAgIsSFBRIXFsiZmTFH7FNVKhpaOVDVRH5VE/urGtnvvr6ypYSaprYjjo8LCyA9JoSMmBDSo53XtJhg0qNDSI4MsqorL+hvyv4n8D7wNtDRx7HGGIOIkBAeREJ4ELOOSh4AtU1tHKhu4kB1E/urGylw19fvP8jyzSXdY1bB4dJHWlQI6W7SSIsJJi06hLToYBLCg/C1MawGXH8TRIiqft+jkRhjRpXIEH+mhTgj2x6traOTkpoWCg42UVDd5L42U3iwiZW7Kqiobz3ieH9fp/0kLTqY1KhgUo96TY4MJsDPSiAnqr8JYrmIXK6qr3o0GmOMAfx9fciIDSEjNqTX/S1tHRTVNFN4sJmC6qbu9cKDTazaXUH5UQlEBOLDAkmNDiYlqitpBJESFUxKZDDJUUHEhgbYcx9H6dd8ECJSD4QCh4CuikNV1YjjnLMYuAIoV9WcXvbfAnwfEKAe+FdV3eTuy3e3dQDtxxqr/Gg2H4QxBpwBEEtrWyg62ExRjbMU1zRTXNPSvd7a3nnEOQF+PiRHBrlLcPd6Uo/1mBGYRE55PghVDT+Jz30C+APw1DH25wHnqepBEbkMeBSY02P/+apaeRKfa4wZ5QL9fBkT63Sv7Y2qUt14iOKaFoprmympaaa4toWS2hZKappZk1dNWV0L7Z1H/oAO8PMhMSKQ5IhgEiODSIoIJDEiiKTIIJIigkh0l5FSndXvfmUichUw3337rqouP97xqvqeiGQeZ/9HPd5+AqT1NxZjjDkVIkJsWCCxYYG9toGAM0tgVUOrkzRqmymtbaGkroXSWmfZXFjDm7UtnymJAMSGBpAQEURiRCCJ4c5rfEQQieGB3dvjwgKH/HMh/e3mej9wJvCMu+nbIjJPVe8doDjuAF7r8V6BN0VEgT+r6qPHiW0RsAggIyNjgMIxxox2vj5CQkQQCRFBTO8x6VNPqkpNUxtl9U7SKKtrobS2ldK6FirqWyira2VbcR1VDa0cVRhBBGJCAoh3k0ZCeGD3Eh8eREJEIPFhgcSHB3rtGZH+tkFsBmaoaqf73hf4VFVP6+O8TGB5b20QPY45H/gjcI6qVrnbUlW1SEQSgLeAb6rqe33FaW0QxpihqL2jk+rGQ5TWtVBe10p5/eEk0vW+or6VyobWz1RrAYQE+BIf7pQ6upJGXPerU1qZcYwk1peBmpM6Cqh213svk50gETkNeAy4rCs5AKhqkftaLiIvArOBPhOEMcYMRX6+Pt2lkePp7FQONh2iosFJGOV1rYfX61uprG9lb0UDn+RVHfGgYVxYAOv+8+KBj7ufx/0S+FREVuL0OpoP/OBUPlhEMoAXgC+r6u4e20MBH1Wtd9cvAX56Kp9ljDHDgY/P4baRSUnHP/ZQeydVja1U1h+i6VD78Q8+Sf3txfSciLyL0w4B8H1VLT3eOSLyHLAAiBORQuDHgL97vUeAHwGxwB/dbmNd3VkTgRfdbX7As6r6+ondljHGjGxOt1znIUBPOW4bhIhMUtWdInJGb/tVdYPHIjsJ1gZhjDEn5lTaIL6D00Pot73sU+CCU4zNGGPMEHXcBKGqi9zVy1S1pec+ETl+a4sxxphhrb9PaXzUz23GGGNGiOOWIEQkCUgFgkXkdJweTAARQO+jaBljjBkR+mqDuBS4DWcYjN/12F4P/NBDMRljjBkC+mqDeBJ4UkSuVdXnBykmY4wxQ0B/n4N4XkQ+B0wFgnpstwfYjDFmhOpXI7WIPALcCHwTpx3iemCMB+MyxhjjZf3txXS2qv4LcFBVfwLMBSZ4LixjjDHe1t8E0fUMRJOIpODMKpfsmZCMMcYMBf0drO9lEYkCHgA24DxF/RdPBWWMMcb7+kwQIuIDvKOqNcDzIrIcCFLVWk8HZ4wxxnv6rGJyJwl6uMf7VksOxhgz8vW3DeIdEblW3DG4jTHGjHz9TRBfB/4BtIpInYjUi0idB+MyxhjjZf19UC7c04EYY4wZWvr7oNw7/dnWyzGLRaRcRLYeY7+IyO9FJFdENvecmEhEbhWRPe5ya3/iNMYYM3COmyBEJEhEYnCmDY0WkRh3ycQZ5bUvTwALj7P/MmC8uywC/uR+bgzOFKVzgNnAj0Ukuh+fZ4wxZoD0VYL4OrAemOS+di3/BP7Q18VV9T2g+jiHXA08pY5PgCgRScYZRfYtVa1W1YPAWxw/0Zw8VVh6B2xa4qwbY4wB+kgQqvqQqmYB31PVsaqa5S7TVbXPBNEPqUBBj/eF7rZjbf8MEVkkIutEZF1FRcWJR9BSAzX74cWvw9+ugep9J34NY4wZgfrVBqGq/ysiZ4vIF0XkX7oWTwfXH6r6qKrOUtVZ8fHxJ36B4Gi4/Q24/DdQuA7+OBfe/x20Hxr4YI0xZhjpbyP134DfAOcAZ7rLrAH4/CIgvcf7NHfbsbZ7ho8vzP4afGM1jLsI3vkJ/PlcyP/QYx9pjDFDXX/HYpoFTFEd8Er6ZcBdIrIEp0G6VlVLROQN4Bc9GqYvAe4d4M/+rMhUuOkZ2PU6vHoPPHE5TP8iXPwTCEvw+McbY8xQ0t8EsRVIAkpO5OIi8hywAKcXVCFOzyR/AFV9BHgVuBzIBZqAr7j7qkXkZ8Ba91I/VdXjNXYPrIkLIWs+vPcAfPS/sPMVOP+HcOZXwbe/fzJjjBnepD+FAhFZCcwA1gCtXdtV9SqPRXYSZs2apevWrRvYi1bugdf+H+xdAQlT4bL7neRhjDEjgIisV9Vemwz6+3P4voELZ5iJGw9fegF2vAxv/gc8eSVMvhIu+TlEZ3o7OmOM8Zj+9mJaBeQD/u76Wpx5IUYHEZhyFXxjDVzwn5D7DvxhNrz1Y2ixIamMMSNTf3sxfQ1YCvzZ3ZQKvOShmIYu/2CYfw98cz3kfAE+fBB+fzqsWwwd7d6OzhhjBlR/R3P9BjAPqANQ1T3A6O3WE5EC1zwCX1vpVEEtvxv+NBd2vmpPYxtjRoz+JohWVe1+ckxE/HCmHR3dUs+Ar7wGNz4D2glLboa/Xg4HVns7MmOMOWX9TRCrROSHQLCIXIwzN8TLngtrGBGByVfAv30Cn/stVOXC4kvguZuhfIe3ozPGmJPW3wTxA6AC2IIzgN+rwH96KqhhydffeU7i2xudhuz8D5xhO15YZOM7GWOGpf4+BxEKtKhqh/veFwhU1SYPx3dCPPIcxMlqqoYP/gfW/AU62+D0L8G534Oo9L7PNcaYQXK85yD6PSc1ENzjfTDw9qkGNqKFxMAlP3NKFLNuh0+fcXo8vfJdqPXcsFLGGDNQ+psgglS1oeuNux7imZBGmPAkuPwB+NanTili/RPw+xlOoqgp6OtsY4zxmv4miMajpgOdCTR7JqQRKiodrnwQvrkBpt8M6590ShQvfxuq87wdnTHGfEZ/2yDOBJYAxYDgDNx3o6qu92x4J2ZItUH0pabAedBuw1PQ2QHTroNzvgMJk7wdmTFmFDleG0S/EoR7EX9govt2l6q2DVB8A2ZYJYgudcXw8cPO09htTTDpCpj375B+prcjM8aMAgOVIM4GMukxwJ+qPjUQAQ6UYZkgujRWweo/Ob2eWmpgzDkw79vOBEY+/a0JNMaYE3PKCcKdUS4b2Ah0uJtVVb81UEEOhGGdILq0NsCGJ51SRV0RxE+CuXfBaTeAX6C3ozPGjDADkSB24JkZ5QbUiEgQXdoPwbYX4aPfQ9lWCE2A2YucLrOhsd6OzhgzRDS1NVF/qJ7E0MSTOn8g5oM42RnlFgIPAb7AY6p6/1H7/wc4330bAiSoapS7rwPnyW2AA0NtciKP8wuA6Tc6JYd9K+HjP8LKn8P7v3G2zbkTEqd6O0pjjAe0dbRR1VJFRVMFlc2VVLZUUtlcSVVzFVXNVc56i7Pe1N5EQnAC79zwzoDH0d8EEQdsF5F+zyjnPm39MHAxUAisFZFlqrq9x/l39zj+m8DpPS7RrKoz+hnfyCUC2Rc4S8Uu+OSPsOnvTu+nrPkw++sw8TLw8fV2pMaYPjS1NVHRXEFFUwUVzRWUN5VT2VxJRXNFdwKoaK6gtrW21/OjAqOIC44jNiiWnLic7vWEEM8Mru3JGeVmA7mqug9ARJYAVwPbj3H8zThzVptjiZ8IVz4EF/7YaadY8xj8/RaITHeqns641aqfjPGCQx2Hur/wy5rKnATQVEF5c7nz6iaChraGz5zr7+NPfHA8cSFxjIkYw8zEmcQFxznbguOIDY7tfvX38R/U+zqRXkyJQFffyzWqWt7H8dcBC1X1q+77LwNzVPWuXo4dA3wCpPUY76kdp1G8HbhfVV86xucsAhYBZGRkzNy/f3+/7mdE6GiH3a/Bmkch7z3wDYSpn4dZd0D6bKf0YYw5JY1tjZQ1llHaVEpZYxllTc5S3lTuJITGMg62HvzMeQE+AcSHxBMfHE9CSALxIc4XfkJIAvHBzvb4kHgiAiIQL/6/esptECJyA/AA8C7Og3L/KyL3qOrSAYrxJmBpV3JwjVHVIhEZC6wQkS2quvfoE1X1UeBRcBqpByie4cHXz5kfe/KVUL4T1j0Om5bA5r9DYg7MvM1prwiK9HakxgxJTW1NlDaVUtrofPmXNpYe8b6sqazXX/0xQTEkhCSQEJJATlwOCSEJJIYkdm9LCE4gMjDSq1/8A6G/vZg2ARd3lRpEJB54W1WnH+ecucB9qnqp+/5eAFX9ZS/Hfgp8Q1U/Osa1ngCW95WQRlQvppPV2gBbl8K6v0LJRvALdqZHPeNWK1WYUaVTO6lsrqSksYSShhLn1V1KG0spaSzpta4/LjiOxJBEEkMSSQpNIjG0x7qbBAJ8A7xwR54xEL2YfI6qUqqi73Gc1gLjRSQLKMIpJXyxl+AmAdHAxz22RQNNqtoqInE4053+up+xjm6BYU7JYeZtUPypkyi2Pg8bn3GeqTj9yzD9JgiN83akxpyS9s52ypvKKWooorih2Fkai7vXS5tKae88cq748IBwkkKTSAlNYXr8dJJCk5wlJKk7Afj7Dm49/1DW3xLEA8BpwHPuphuBzar6/T7Ouxx4EKeb62JV/W8R+SmwTlWXucfchzNa7A96nHc28GegEycRPaiqj/cVp5UgjqG1Aba94AwQWLQOfPxgwkKYcQuMv9iZ7MiYIaZTO6loqqCooYiihiIKGwopbijuTgiljaV0HFErDfHB8aSEpZASmkJyWHL3a1dSCAsI89LdDF0n/aCciIwDElX1QxH5AnCOu6sGeKa3NgFvsgTRD+U7YePTTltFYwWExsO0G2DGzZA0zdvRmVGmqa2JwoZCCusLKagvoLC+sPt9cUMxhzoPHXF8fHA8qWGppISlkBqWesR6UmjSiKr6GSynkiCWA/eq6pajtk8DfqGqVw5opKfIEsQJ6GiDPW/Bpmdh1+vOrHeJOU6j9rTrISLF2xGaEUBVqW2t5UD9AQ7UH6CgvoCCugLntb6AqpaqI44P9w8nLTzNWcLSnCQQfjgRBPracDMD7VQSxFpV7XVYUbdX0ZD6yWkJ4iQ1VTvtFJuWOFVQiPMQ3rTrYcpV1gvK9KmmpYb8unwO1B9gf91+CuoKupNC/aH67uMEITE0kfTw9O4lLSzNeQ1PIzLQ/q0NtlNJEHtUdfwx9uWq6rgBinFAWIIYAJW5TjfZLf+Ag3nOsxXjL3aSxYRLwT+472uYEamprYkD9QfIr8tnf+1+9tc5S35dPnWH6rqP8xEfkkOTGRMxhvTwdDLCM8iIyCAjPIPU8FQrBQwxp5IgngNWqOpfjtr+VZxurzcOaKSnyBLEAFKFovWw+f+cQQMbyyEgDCZe7nSbzb7ARpcdgVSVsqYy8mrzyKvNI78uv/u1tLH0iGMTQxLJjMxkTPgYMiIyyIzIJCMig7SwNOsJNIycSoJIBF4EDgFds8fNAgKAa1S19FjneoMlCA/p7ID8951qqB0vQ/NBCIyESZfDlM9D9vmWLIaZts42CuoL2Fezj321zpJXm0d+bT5N7U3dx4X5h5EZkUlmZOYRrxkRGQT7WWlyJBiI4b7PB3Lct9tUdcUAxjdgLEEMgo422PeuU6rYuRxaaiEwwuk2O+UqyL4QAkK8HaVxtXW0sb9uP3tr97K3Zi+5Nbnsq9nH/vr9RzwjkBSaRFZEFmOjxpIVkUVWpLPEBccN+6eBzfENyIxyw4EliEHWfgjyVsG2l2DXK07Jwj/EmQVv8pUw/hIIjvJ2lKNCR2cHRQ1F7Dm4hz01e8itySX3YC776/bTrk4iEIT08HTGRo4lOyqb7KhsxkaOJTMyk1D/UC/fgfEWSxDG8zraIP8D2LEMdr4CDWXg4w9Z5zrtFhMvh8hUb0c5IlQ1V7GnZg+7q3ezp2YPew7uYW/NXlo6WrqPSQtLY1zUOMZFjyM7KptxUePIjMgkyC/Ii5GbocgShBlcnZ1Od9kdL8OuV6Eq19mePMOZu2LiZZB0mo0L1Ye2zjbya/PZdXAXu6t3O68Hd1PZXNl9TGxQLOOjxztL1HjGRTkJIcTfqvlM/1iCMN5Vsdtpr9j9OhSsARQiUp1usxMWOs9cjPLus01tTew+uJsd1TvYWb2TndU7yT2Y2/0ksb+PP9lR2UyInsDE6ImMjx7PhOgJxAbb/B/m1FiCMENHQwXsecNJFntXwqEG8AtyksT4S5xnLqIzvR2lR9W21rKzeic7qnawvXo7O6p2sL9uP4rz/2JUYBSTYiYxMXoiE2OcJSsya9AnizGjgyUIMzS1tzrtFnvecpJG9T5ne+x4p6F7/EUwZt6wLl3UH6pne9V2tlVtY1vlNrZXbaewobB7f1JoEpNiJjElZgqTYiYxOXYyiSGJ1nPIDBpLEGZ4qMyF3LechJH/AXS0OqWLMWc7CSP7AmfI8iH65dnS3sLO6p1srdzK1qqtbKvcRn5dfvf+lNAUpsZNZUrsFKbETGFy7GSig6K9F7AxWIIww9GhJtj/IeS+A3vfgcrdzvbwZCdRjF3gLGGemay9L53aSX5tPpsrN7OlYgtbKrew5+Ce7i6lCcEJTI2bSk5cDjmxOZYMzJBlCcIMfzUFsG8l7F3hPKjX7M4BnDAVxp4HWedB5jwIDPfIx9e21rK5YjObKzezucJJCvVtziB0Yf5hTI2bymlxpzkJwZ2C0pjhwGsJQkQWAg/hTBj0mKref9T+23Dmui5yN/1BVR9z990K/Ke7/eeq+mRfn2cJYpTo7IDSzU4j9753oWA1tLeA+ELqTKfBO+tcSJ9zUu0XqkpeXR6byjexsWIjG8s3sq/WaR/xER/GR43ntPjTnCXuNDIjM/GRviZYNGZo8kqCEBFfYDdwMVCIMwXpzaq6vccxtwGzVPWuo86NAdbhjPukOONAzVTVg8f7TEsQo1Rbi5Mk8lZB3vvOIIPaAb4BkDoLMs9xlrQzex0G5FDHIbZVbWND2QY2lm9kY8VGalprAIgMjGR6/PTuJScux546NiPKQMxJfTJmA7mqus8NYglwNbD9uGc5LgXeUtVq99y3gIUcnvLUmMP8g5xqprHnOe9b62H/x84Ag/nvw/u/gfd+7TzZnTqTxozZbIpKZB0tbKjaypaKLd3PG2RGZHJ++vnMSJjBjIQZZEVkWY8iM2p5MkGkAgU93hcCc3o57loRmY9T2rhbVQuOcW6v4zSIyCJgEUBGRsYAhG2GvcBwmHCJswB1dYV8umMp6wpWsa4+nx1FL9JRLPiqMkn9uDE0g5mpc5kx8QvExk30cvDGDB2eTBD98TLwnKq2isjXgSeBC07kAqr6KPAoOFVMAx+iGW4aDjWwvmw9a0vXsqZ0DTurd6Io/j7+TEs6jTviTmOmhDCjppSQgnWwezVsXwVv3Q8xYyFjrtN+kXGW80yGj7UvmNHJkwmiCEjv8T6Nw43RAKhqzwlpHwN+3ePcBUed++6AR2hGhJb2Fj4t/5Q1pWtYU7KGbVXb6NAO/H38mR4/nTun38mZSWcyLW5a74PVtR+Cko1w4GM4sNp5ynvjM86+oCin7SJ9tvOaNstjPaWMGWo8mSDWAuNFJAvnC/8m4Is9DxCRZFUtcd9eBexw198AfiEiXR3HLwHu9WCsZhjp6OxgR/UOPin5hI+LP2Zj+UYOdR7CT/zIicvhjml3MDtpNtPjp/dv9FK/ACcBpM+GeTiz6VXtdRq+Cz6BgrWQ+zZOfwmBhClOouhKGHETrZRhRiSPJQhVbReRu3C+7H2Bxaq6TUR+CqxT1WXAt0TkKqAdqAZuc8+tFpGf4SQZgJ92NVib0am4oZiPij/io+KPWF2yunsO5AnRE7hp0k3MSZ7DrMRZAzOKqQjEjXOW029xtjXXOCPUFq6DwrWw/SXY4Pa8DgiH1NOdLrapMyHlDIhIGbJPfBvTX/agnBmSmtubWVu6lg+LPuSj4o+6h6xIDElkbspc5ibPZU7yHO+NZtrZCdV7nYTRlTjKtkFnm7M/LNFJFKlnOK8pMyA0zjuxGnMc3urmaky/qSr5dfm8X/g+HxR9wPqy9RzqPESQbxAzk2Zyw8QbmJcyj6zIIdLt1McH4sY7y4ybnW1tLVC21XkOo2gDFG9w2jPcUVqJTIfk6U6ySD7dkoYZ8ixBGK9p7WhlXek63it8j/cK3+se5XRs5FhunHQj56Scw8ykmQT6Bno50n7yD3LbJnr8GGupg5JNUPyps5RsdObG6BKR6iSNpNMg+TTnNTLNqqfMkGAJwgyqyuZK3it8j1UFq/i45GOa25sJ8g1iTvIcbpt6G+eknUNq2AiamjQowhn2I+vcw9uaa5yhQko2OwmjZBPseo3ukkZwNCRNc5JFYo6zHjfBaUw3ZhBZgjAeparsq93HigMreLfwXbZUbEFRkkKTuCr7Ks5LO48zk84cXXMlB0e540XNP7ztUKPThlGyCUq3OMvax5wxpsB5Cjx+EiROhaQc5zUxx2uj2ZrRwRKEGXCd2smmik2sOLCCFQdWcKD+AABTY6fybzP+jfPTz2dC9ISh0ZYwVASEHu5q26Wj3ZnPu2yrkzDKtjrjTW1ecviYkDhInOKMapsw2Ukc8RPtWQ0zICxBmAHR1tnG2pK1vH3gbVYcWEFVSxV+Pn7MSZrDrVNv5by080gMTfR2mMOLrx8kTHKWadcd3t5YBeXbnBJH2VYo3+F0uW1rOnxMVAbET3aSRsJkp/QRN6HXwQqNORZLEOaktXW08XHJx7yZ/yYrC1ZSd6iOYL9gzk09lwszLuTctHMJD7BfsgMuNPazVVSdnVCT7ySL8u3u6w5n/oyurrcIRI9xkkX8RDdpTHR6YgVFeONOzBBnCcKckK6k8Eb+G6w8sJL6tnrC/cNZkL6Ai8ZcxNkpZ4+u9oShwsfHGUcqZixM+tzh7R1tzlzf5TugYhdU7IDync5Mfd2JAwhPgfgJhxNG3ATnNTzZelSNYpYgTJ/aO9tZU7qG1/Ne550D71B3qI7wgHAuyLiASzIv4azkswjwtR42Q5Kvv1taOGqU2o52OJgPFTuhchdU7HZeNz4Lh+oPHxcQ5iSK2HHOwIVx7mtsttNuYkY0SxCmV6rKpopNvLLvFd7c/ybVLdWE+odyQfoFLMxayNzkufj7+ns7THOyfP0ODyfCFYe3q0J9iVPaqMqFyj1QtccZxHDLUrq74oJT6ojNdpdxEOOuR2eC3zB5dsUclyUIc4S82jyW71vOK/teoaihiACfAM5LP4/Lsy7n3LRzh89Da+bkiDjjSEWkQPb5R+5ra3YGMazK7bHshe3LoLnnUGniPDUe61Z5xWRDTJazHp15UtPAGu+wBGE42HKQ1/Je4+W9L7O1ais+4sPspNncOf1OLsq4iLCAMG+HaIYC/2DnGYyknM/ua6p22jqq9jpjVFXvc5atL0BLzZHHhqc4CSM6C2IyndfoLGdbcLS1eQwhliBGqbbONt4vfJ9le5exqnAV7Z3tTIqZxPdmfY/Lsi4jIcQewDInICTGWdJ6GfOtqRoO5kHVPue1eh9U50HuW9BQduSxgRFOT6uoMU5pIzrTXR/jdN210segsgQxyuw5uIeXcl9i+b7lVLdUExsUyy2TbuGqcVcxIXqCt8MzI1FX8kid+dl9h5qgZr+TMA7mu0ue0/aR+/bhJ8m7hCUemTCiMpzqrKgxzhhW/taDbiBZghgFGtsaeS3vNV7Y8wJbKrfgJ34sSF/A58d9nnmp8/DzsX8GxksCQg4/zHe0zk5oLIeD+50kcnC/86zHwf3OZE5bXwDtOPKcsEQ3YaS7rxlO4ohMd16DowbjrkYM+2YYoVSVbVXbWLp7Ka/mvUpzezPZkdncM+sersi+gpigGG+HaMzx+fhAeJKzZMz57P6OdqfHVc0BqC1wXmv2Q02BM6bVzleg49CR5wRGuAkjzRlJ94j1VOfVemB182iCEJGFwEM4M8o9pqr3H7X/O8BXcWaUqwBuV9X97r4OYIt76AFVvcqTsY4UTW1NLN+3nKW7l7KjegfBfsEszFzItROu5bS402z8IzNy+Po5JYWo9N73d5VAagvdJFIIdUVOAqkrdObtaKr67Hmh8W5PrrTDPboie6yHp4yaqiyPzSgnIr7AbuBioBBn+tCbVXV7j2POB1arapOI/CuwQFVvdPc1qOoJdZ8ZzTPK5R7MZcmuJSzft5zGtkYmRk/k+gnXc/nYy224C2OO5VAT1BU7CaO20FnvSiS1RVBfDC21nz0vOMZNFskQkewkjSNekyEkdlj0yPLWjHKzgVxV3ecGsQS4GuhOEKq6ssfxnwBf8mA8I05bZxsrD6xkya4lrC1dS4BPAAuzFnLDxBustGBMfwSE9Hhg8BhaG5zEUV/sJhA3cdSVOImkZBM0VnDEQ4QAvgEQlnS4mqx7SXbaSsKTnfdDuGuvJxNEKlDQ430h0EtFYrc7gNd6vA8SkXU41U/3q+pLvZ0kIouARQAZGRmnEu+wUdNSw9I9S1mycwllTWWkhqVy98y7uWbcNUQHRXs7PGNGlsAwZ5yq+OP08ms/5HTZrS9xk0kJ1Je6S7HzZPq+VdDaS2nEx99NGIluQkl03h+xJDivgzxp1JBopBaRLwGzgPN6bB6jqkUiMhZYISJbVHXv0eeq6qPAo+BUMQ1KwF6SezCXp3c8zfJ9y2ntaOWs5LP4jzn/wfy0+fj6+Ho7PGNGL7+A47eHdDnU6CSNrmRSXwYNpe5rmdPF98DHRz2Z3kNQ1OGEERrvrsc7VVtdc6MP5G0N+BUPKwJ6/rXS3G1HEJGLgP8AzlPV1q7tqlrkvu4TkXeB04HPJIiRTlX5qPgjntr+FB8Vf0SQbxBXZl/JLZNuYVz0cYrFxpihJyD08PhVx9N+yKm2aiiFhgoneTSUQUO589pY4UxX21DhDK4YnjzsEsRaYLyIZOEkhpuAL/Y8QEROB/4MLFTV8h7bo4EmVW0VkThgHvBrD8Y65LR1tPFa/ms8se0J9hzcQ1xwHN88/ZtcP+F6q0YyZqTzC3C63Ub2Y372Q029N6QPRBgeuSqgqu0ichfwBk4318Wquk1EfgqsU9VlwANAGPAPt0G1qzvrZODPItIJ+OC0QWzv9YNGmMa2RpbuXspT25+ivKmccVHj+Nm8n3F51uU2pLYx5rMCQjw2U6DHurl6w3Du5lrdUs3T259mya4l1B+qZ3bSbG6behvnpJ5jvZGMMR7jrW6uph9KG0t5ctuTPL/neVraW7gw40Juz7mdafHTvB2aMWaUswThJcUNxTy+5XFezH2RTu3kc2M/xx05dzA2aqy3QzPGGMASxKArrC/kL1v+wrLcZSBwzbhruD3ndtLC07wdmjHGHMESxCApbijm0c2P8s/cf+IjPlw/8Xpuz7mdpNAkb4dmjDG9sgThYeVN5Ty6+VGe3/M8gnD9xOu5I+cOEkMTvR2aMcYclyUIDznYcpDHtzzOkl1L6Ojs4Jrx17DotEVWYjDGDBuWIAZYU1sTT21/iie2PUFzezNXjL2CO6ffSXp4H4/gG2PMEGMJYoC0dbbx/O7n+dOmP1HdUs0F6RfwrTO+RXZUH4/UG2PMEGUJ4hSpKisOrODBDQ+SX5fPzMSZ/P6C3zM9frq3QzPGmFNiCeIUbK3cygNrH2BD+QbGRo7lDxf8gflp8+3JZ2PMiGAJ4iSUNpby0IaHWL5vOTFBMfxo7o+4Ztw1+PnYn9MYM3LYN9oJaGlv4YltT7B462I6Ojv46rSvckfOHYQFnNDMqMYYMyxYgugHVeXtA2/zm7W/obixmIvHXMx3Z32X1LB+DMVrjDHDlCWIPuyr3ccvV/+ST0o+YUL0BBafs5gzk870dljGGONxliCOoamtiT9v/jNPbX+KYN9g7p19LzdMvMHaGYwxo4Z92/Vi5YGV/HLNLylpLOHq7Ku5e+bdxAbHejssY4wZVD6evLiILBSRXSKSKyI/6GV/oIj83d2/WkQye+y7192+S0Qu9WScXUobS/nWim/xrZXfItQ/lCcXPsnPz/m5JQdjzKjksRKEiPgCDwMXA4XAWhFZdtTUoXcAB1V1nIjcBPwKuFFEpuDMYT0VSAHeFpEJqtrhiVg7Ojv4+66/89CGh+jUTu6eeTdfnvJl/H38PfFxxhgzLHiyimk2kKuq+wBEZAlwNdAzQVwN3OeuLwX+IM5TZlcDS1S1FcgTkVz3eh8PdJC1rbX829v/xubKzZydcjb/ddZ/2dwMxhiDZxNEKlDQ430hMOdYx6hqu4jUArHu9k+OOrfXPqUisghYBJCRkXHCQUYERJAWnsbNk2/mc1mfs6egjTHGNewbqVX1UeBRgFmzZumJni8i/Gr+rwY8LmOMGe482UhdBPQc4zrN3dbrMSLiB0QCVf081xhjjAd5MkGsBcaLSJaIBOA0Oi876phlwK3u+nXAClVVd/tNbi+nLGA8sMaDsRpjjDmKx6qY3DaFu4A3AF9gsapuE5GfAutUdRnwOPA3txG6GieJ4B73fzgN2u3ANzzVg8kYY0zvxPnBPjLMmjVL161b5+0wjDFm2BCR9ao6q7d9Hn1QzhhjzPBlCcIYY0yvLEEYY4zplSUIY4wxvRpRjdQiUgHsP8nT44DKAQxnOBiN9wyj875H4z3D6LzvE73nMaoa39uOEZUgToWIrDtWS/5INRrvGUbnfY/Ge4bRed8Dec9WxWSMMaZXliCMMcb0yhLEYY96OwAvGI33DKPzvkfjPcPovO8Bu2drgzDGGNMrK0EYY4zplSUIY4wxvRr1CUJEForILhHJFZEfeDuewSAi6SKyUkS2i8g2Efm2t2MaLCLiKyKfishyb8cyWEQkSkSWishOEdkhInO9HZOnicjd7r/trSLynIgEeTsmTxCRxSJSLiJbe2yLEZG3RGSP+xp9stcf1QlCRHyBh4HLgCnAzSIyxbtRDYp24LuqOgU4C/jGKLlvgG8DO7wdxCB7CHhdVScB0xnh9y8iqcC3gFmqmoMz3cBN3o3KY54AFh617QfAO6o6HnjHfX9SRnWCAGYDuaq6T1UPAUuAq70ck8epaomqbnDX63G+MHqd83skEZE04HPAY96OZbCISCQwH2fuFVT1kKrWeDWoweEHBLszVYYAxV6OxyNU9T2cuXR6uhp40l1/Evj8yV5/tCeIVKCgx/tCRsEXZU8ikgmcDqz2ciiD4UHg/wGdXo5jMGUBFcBf3aq1x0Qk1NtBeZKqFgG/AQ4AJUCtqr7p3agGVaKqlrjrpUDiyV5otCeIUU1EwoDngX9X1Tpvx+NJInIFUK6q670dyyDzA84A/qSqpwONnEKVw3Dg1rlfjZMcU4BQEfmSd6PyDncK55N+lmG0J4giIL3H+zR324gnIv44yeEZVX3B2/EMgnnAVSKSj1OVeIGIPO3dkAZFIVCoql0lxKU4CWMkuwjIU9UKVW0DXgDO9nJMg6lMRJIB3Nfyk73QaE8Qa4HxIpIlIgE4DVnLvByTx4mI4NRJ71DV33k7nsGgqveqapqqZuL8d16hqiP+V6WqlgIFIjLR3XQhzlzvI9kB4CwRCXH/rV/ICG+YP8oy4FZ3/Vbgnyd7Ib8BCWeYUtV2EbkLeAOnp8NiVd3m5bAGwzzgy8AWEdnobvuhqr7qvZCMB30TeMb9EbQP+IqX4/EoVV0tIkuBDTg99j5lhA65ISLPAQuAOBEpBH4M3A/8n4jcgTP9wQ0nfX0basMYY0xvRnsVkzHGmGOwBGGMMaZXliCMMcb0yhKEMcaYXlmCMMYY0ytLEMacBBGJFZGN7lIqIkXueoOI/NHb8RkzEKybqzGnSETuAxpU9TfejsWYgWQlCGMGkIgs6JprQkTuE5EnReR9EdkvIl8QkV+LyBYRed0d7gQRmSkiq0RkvYi80TVMgjHeZgnCGM/KBi4ArgKeBlaq6jSgGficmyT+F7hOVWcCi4H/9lawxvQ0qofaMGYQvKaqbSKyBWc4l9fd7VuATGAikAO85QwbhC/OENXGeJ0lCGM8qxVAVTtFpE0PN/p14vz/J8A2VR3x04Ca4ceqmIzxrl1AfNc80SLiLyJTvRyTMYAlCGO8yp3q9jrgVyKyCdjI6Jq7wAxh1s3VGGNMr6wEYYwxpleWIIwxxvTKEoQxxpheWYIwxhjTK0sQxhhjemUJwhhjTK8sQRhjjOnV/weg9DpxQOe6jgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot( sol.t, sol.y.T )\n", "plt.xlabel( \"Time\")\n", "plt.ylabel( \"Concentration\" )\n", "plt.legend( [\"P1\",\"P2\",\"P1P2\"])\n", "plt.title( \"Reversible Dimerization\");" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.8.5" } }, "nbformat": 4, "nbformat_minor": 4 }