{ "cells": [ { "cell_type": "markdown", "id": "c3b90917-d8b3-4644-a485-b22d440272b9", "metadata": {}, "source": [ "## One-bin Association/Dissociation reaction `A + B <-> C`\n", "### with 1st-order kinetics for each species, taken to equilibrium\n", "\n", "Diffusion not applicable (just 1 bin)\n", "\n", "See also the experiment _\"reactions_single_compartment/react_3\"_ \n", "\n", "LAST REVISED: July 14, 2023" ] }, { "cell_type": "code", "execution_count": 1, "id": "a8f89c58-e3b5-4a07-96ec-6f7455db1bf5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Added 'D:\\Docs\\- MY CODE\\BioSimulations\\life123-Win7' to sys.path\n" ] } ], "source": [ "import set_path # Importing this module will add the project's home directory to sys.path" ] }, { "cell_type": "code", "execution_count": 2, "id": "f5117d69", "metadata": {}, "outputs": [], "source": [ "from experiments.get_notebook_info import get_notebook_basename\n", "\n", "from src.modules.chemicals.chem_data import ChemData as chem\n", "from src.life_1D.bio_sim_1d import BioSim1D\n", "\n", "import plotly.express as px\n", "from src.modules.visualization.graphic_log import GraphicLog" ] }, { "cell_type": "code", "execution_count": 3, "id": "ada82175-1d15-4213-b834-5a5d8e2dd31e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-> Output will be LOGGED into the file 'reaction_4.log.htm'\n" ] } ], "source": [ "# Initialize the HTML logging\n", "log_file = get_notebook_basename() + \".log.htm\" # Use the notebook base filename for the log file\n", "\n", "# Set up the use of some specified graphic (Vue) components\n", "GraphicLog.config(filename=log_file,\n", " components=[\"vue_cytoscape_1\"],\n", " extra_js=\"https://cdnjs.cloudflare.com/ajax/libs/cytoscape/3.21.2/cytoscape.umd.js\")" ] }, { "cell_type": "code", "execution_count": 4, "id": "d8f2d83d-97bc-4f57-8f71-c0923f0334ed", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of reactions: 1 (at temp. 25 C)\n", "0: A + B <-> C (kF = 5 / kR = 2 / Delta_G = -2,271.45 / K = 2.5) | 1st order in all reactants & products\n" ] } ], "source": [ "# Specify the chemicals\n", "chem_data = chem(names=[\"A\", \"B\", \"C\"]) # NOTE: Diffusion not applicable (using just 1 bin)\n", "\n", "\n", "# Reaction A + B <-> C , with 1st-order kinetics for each species\n", "chem_data.add_reaction(reactants=[\"A\" , \"B\"], products=[\"C\"],\n", " forward_rate=5., reverse_rate=2.)\n", "\n", "chem_data.describe_reactions()" ] }, { "cell_type": "code", "execution_count": 5, "id": "b351573c-275c-434f-8301-4ed54197e0cc", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0:\n", "1 bins and 3 species:\n", " Species 0 (A). Diff rate: None. Conc: [10.]\n", " Species 1 (B). Diff rate: None. Conc: [50.]\n", " Species 2 (C). Diff rate: None. Conc: [20.]\n" ] } ], "source": [ "# Initialize the system\n", "bio = BioSim1D(n_bins=1, chem_data=chem_data)\n", "\n", "bio.set_uniform_concentration(species_index=0, conc=10.)\n", "bio.set_uniform_concentration(species_index=1, conc=50.)\n", "bio.set_uniform_concentration(species_index=2, conc=20.)\n", "\n", "bio.describe_state()" ] }, { "cell_type": "code", "execution_count": 6, "id": "fdb1f449-8415-4fdf-b4a3-24220866c96c", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SYSTEM TIMEABCcaption
0010.050.020.0Initial state
\n", "
" ], "text/plain": [ " SYSTEM TIME A B C caption\n", "0 0 10.0 50.0 20.0 Initial state" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Save the state of the concentrations of all species at bin 0\n", "bio.add_snapshot(bio.bin_snapshot(bin_address = 0), caption=\"Initial state\")\n", "bio.get_history()" ] }, { "cell_type": "code", "execution_count": 7, "id": "25f70c0f-621e-413f-bc93-336d38d462d7", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[GRAPHIC ELEMENT SENT TO LOG FILE `reaction_4.log.htm`]\n" ] } ], "source": [ "# Send the plot to the HTML log file\n", "graph_data = chem_data.prepare_graph_network()\n", "GraphicLog.export_plot(graph_data, \"vue_cytoscape_1\")" ] }, { "cell_type": "markdown", "id": "356e4db3-02a6-40bd-a951-841bfc6c5522", "metadata": { "tags": [] }, "source": [ "### First step" ] }, { "cell_type": "code", "execution_count": 8, "id": "b8c0d439-13f7-459c-88e2-0ae357b46c18", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0.002:\n", "1 bins and 3 species:\n", " Species 0 (A). Diff rate: None. Conc: [5.08]\n", " Species 1 (B). Diff rate: None. Conc: [45.08]\n", " Species 2 (C). Diff rate: None. Conc: [24.92]\n" ] } ], "source": [ "# First step\n", "bio.react(time_step=0.002, n_steps=1)\n", "bio.describe_state()" ] }, { "cell_type": "markdown", "id": "4c074e7c-0308-4085-a2f9-2da055ffcef8", "metadata": {}, "source": [ "_Early in the reaction :_\n", "[A] = 5.08 , [B] = 45.08 , [C] = [24.92]" ] }, { "cell_type": "code", "execution_count": 9, "id": "386d8052-2d92-43b0-b817-ab4a1cce3ba0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SYSTEM TIMEABCcaption
00.00010.0050.0020.00Initial state
10.0025.0845.0824.92
\n", "
" ], "text/plain": [ " SYSTEM TIME A B C caption\n", "0 0.000 10.00 50.00 20.00 Initial state\n", "1 0.002 5.08 45.08 24.92 " ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Save the state of the concentrations of all species at bin 0\n", "bio.add_snapshot(bio.bin_snapshot(bin_address = 0))\n", "bio.get_history()" ] }, { "cell_type": "markdown", "id": "88ec4bcc-48dc-45eb-84fc-8e6e0b259612", "metadata": {}, "source": [ "### Numerous more steps" ] }, { "cell_type": "code", "execution_count": 10, "id": "8efdf9ef-bdca-48ff-b139-6e2d9952c1d8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "SYSTEM STATE at Time t = 0.06:\n", "1 bins and 3 species:\n", " Species 0 (A). Diff rate: None. Conc: [0.29487831]\n", " Species 1 (B). Diff rate: None. Conc: [40.29487831]\n", " Species 2 (C). Diff rate: None. Conc: [29.70512169]\n" ] } ], "source": [ "# Numerous more steps\n", "bio.react(time_step=0.002, n_steps=29, snapshots={\"sample_bin\": 0})\n", "\n", "bio.describe_state()" ] }, { "cell_type": "markdown", "id": "6b0be45c-ff0e-43d8-847a-b6e8d0e6e0ec", "metadata": { "tags": [] }, "source": [ "### Equilibrium" ] }, { "cell_type": "markdown", "id": "7f687d0d-75ab-4e29-8070-5b6f1fc80b4b", "metadata": {}, "source": [ "Consistent with the 5/2 ratio of forward/reverse rates (and the 1st order reactions),\n", "the systems settles in the following equilibrium: \n", "[A] = 0.29487831 , [B] = 40.29487831 , [C] = 29.70512169" ] }, { "cell_type": "code", "execution_count": 11, "id": "46a3ea5d-6516-4582-9958-6a80403e8f19", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "A + B <-> C\n", "Final concentrations: [C] = 29.71 ; [A] = 0.2949 ; [B] = 40.29\n", "1. Ratio of reactant/product concentrations, adjusted for reaction orders: 2.49999\n", " Formula used: [C] / ([A][B])\n", "2. Ratio of forward/reverse reaction rates: 2.5\n", "Discrepancy between the two values: 0.0003107 %\n", "Reaction IS in equilibrium (within 1% tolerance)\n", "\n" ] }, { "data": { "text/plain": [ "True" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Verify that the reaction has reached equilibrium\n", "bio.reaction_dynamics.is_in_equilibrium(rxn_index=0, conc=bio.bin_snapshot(bin_address = 0))" ] }, { "cell_type": "code", "execution_count": 12, "id": "6975a1e8-d708-401f-ab7f-78c183f765bf", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SYSTEM TIMEABCcaption
00.00010.00000050.00000020.000000Initial state
10.0025.08000045.08000024.920000
20.0042.88961642.88961627.110384
30.0061.75871241.75871228.241288
40.0081.13726241.13726228.862738
50.0100.78487440.78487429.215126
60.0120.58162540.58162529.418375
70.0140.46326640.46326629.536734
80.0160.39396040.39396029.606040
90.0180.35324840.35324829.646752
100.0200.32928840.32928829.670712
110.0220.31517140.31517129.684829
120.0240.30684940.30684929.693151
130.0260.30194040.30194029.698060
140.0280.29904540.29904529.700955
150.0300.29733640.29733629.702664
160.0320.29632840.29632829.703672
170.0340.29573440.29573429.704266
180.0360.29538340.29538329.704617
190.0380.29517640.29517629.704824
200.0400.29505340.29505329.704947
210.0420.29498140.29498129.705019
220.0440.29493940.29493929.705061
230.0460.29491440.29491429.705086
240.0480.29489940.29489929.705101
250.0500.29489040.29489029.705110
260.0520.29488540.29488529.705115
270.0540.29488240.29488229.705118
280.0560.29488040.29488029.705120
290.0580.29487940.29487929.705121
300.0600.29487840.29487829.705122
\n", "
" ], "text/plain": [ " SYSTEM TIME A B C caption\n", "0 0.000 10.000000 50.000000 20.000000 Initial state\n", "1 0.002 5.080000 45.080000 24.920000 \n", "2 0.004 2.889616 42.889616 27.110384 \n", "3 0.006 1.758712 41.758712 28.241288 \n", "4 0.008 1.137262 41.137262 28.862738 \n", "5 0.010 0.784874 40.784874 29.215126 \n", "6 0.012 0.581625 40.581625 29.418375 \n", "7 0.014 0.463266 40.463266 29.536734 \n", "8 0.016 0.393960 40.393960 29.606040 \n", "9 0.018 0.353248 40.353248 29.646752 \n", "10 0.020 0.329288 40.329288 29.670712 \n", "11 0.022 0.315171 40.315171 29.684829 \n", "12 0.024 0.306849 40.306849 29.693151 \n", "13 0.026 0.301940 40.301940 29.698060 \n", "14 0.028 0.299045 40.299045 29.700955 \n", "15 0.030 0.297336 40.297336 29.702664 \n", "16 0.032 0.296328 40.296328 29.703672 \n", "17 0.034 0.295734 40.295734 29.704266 \n", "18 0.036 0.295383 40.295383 29.704617 \n", "19 0.038 0.295176 40.295176 29.704824 \n", "20 0.040 0.295053 40.295053 29.704947 \n", "21 0.042 0.294981 40.294981 29.705019 \n", "22 0.044 0.294939 40.294939 29.705061 \n", "23 0.046 0.294914 40.294914 29.705086 \n", "24 0.048 0.294899 40.294899 29.705101 \n", "25 0.050 0.294890 40.294890 29.705110 \n", "26 0.052 0.294885 40.294885 29.705115 \n", "27 0.054 0.294882 40.294882 29.705118 \n", "28 0.056 0.294880 40.294880 29.705120 \n", "29 0.058 0.294879 40.294879 29.705121 \n", "30 0.060 0.294878 40.294878 29.705122 " ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Save the state of the concentrations of all species at bin 0\n", "bio.get_history()" ] }, { "cell_type": "markdown", "id": "8a4576cc-d927-4776-a691-2001bba5d1b7", "metadata": {}, "source": [ "## Note: \"A\" (now largely depleted) is largely the limiting reagent" ] }, { "cell_type": "markdown", "id": "d82cb7fe-0bd2-4b3e-bbec-6f5b70d0e5ae", "metadata": { "tags": [] }, "source": [ "## Plots of changes of concentration with time" ] }, { "cell_type": "code", "execution_count": 13, "id": "14d83e31-e46e-46aa-ac3a-5e45f3475bf0", "metadata": {}, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "hovertemplate": "Chemical=A
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "A", "line": { "color": "red", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "A", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.002, 0.004, 0.006, 0.008, 0.01, 0.012, 0.014, 0.016, 0.018000000000000002, 0.020000000000000004, 0.022000000000000006, 0.024000000000000007, 0.02600000000000001, 0.02800000000000001, 0.030000000000000013, 0.032000000000000015, 0.034000000000000016, 0.03600000000000002, 0.03800000000000002, 0.04000000000000002, 0.04200000000000002, 0.044000000000000025, 0.04600000000000003, 0.04800000000000003, 0.05000000000000003, 0.05200000000000003, 0.054000000000000034, 0.056000000000000036, 0.05800000000000004, 0.06000000000000004 ], "xaxis": "x", "y": [ 10, 5.08, 2.889616, 1.7587123297254401, 1.1372618579290796, 0.7848744219907284, 0.5816248769235214, 0.4632655516718558, 0.39396011908276785, 0.3532481852190526, 0.3292880755869499, 0.31517138668258465, 0.3068488164329863, 0.3019403326325966, 0.29904475860432483, 0.29733639845169046, 0.2963284041387654, 0.29573362363570993, 0.2953826559253961, 0.29517555379732074, 0.2950533439876077, 0.29498122825863154, 0.29493867279189473, 0.29491356077688685, 0.29489874213972356, 0.2948899976341194, 0.2948848374828887, 0.2948817924660286, 0.2948799955944733, 0.29487893525628817, 0.29487830954816896 ], "yaxis": "y" }, { "hovertemplate": "Chemical=B
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "B", "line": { "color": "violet", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "B", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.002, 0.004, 0.006, 0.008, 0.01, 0.012, 0.014, 0.016, 0.018000000000000002, 0.020000000000000004, 0.022000000000000006, 0.024000000000000007, 0.02600000000000001, 0.02800000000000001, 0.030000000000000013, 0.032000000000000015, 0.034000000000000016, 0.03600000000000002, 0.03800000000000002, 0.04000000000000002, 0.04200000000000002, 0.044000000000000025, 0.04600000000000003, 0.04800000000000003, 0.05000000000000003, 0.05200000000000003, 0.054000000000000034, 0.056000000000000036, 0.05800000000000004, 0.06000000000000004 ], "xaxis": "x", "y": [ 50, 45.08, 42.889616, 41.758712329725434, 41.137261857929076, 40.78487442199072, 40.58162487692351, 40.463265551671846, 40.393960119082756, 40.35324818521904, 40.32928807558694, 40.31517138668257, 40.306848816432975, 40.30194033263258, 40.29904475860431, 40.29733639845168, 40.29632840413875, 40.29573362363569, 40.29538265592538, 40.29517555379731, 40.2950533439876, 40.29498122825862, 40.294938672791886, 40.29491356077688, 40.294898742139715, 40.29488999763411, 40.294884837482876, 40.294881792466015, 40.29487999559446, 40.29487893525627, 40.29487830954815 ], "yaxis": "y" }, { "hovertemplate": "Chemical=C
SYSTEM TIME=%{x}
concentration=%{y}", "legendgroup": "C", "line": { "color": "green", "dash": "solid" }, "marker": { "symbol": "circle" }, "mode": "lines", "name": "C", "orientation": "v", "showlegend": true, "type": "scatter", "x": [ 0, 0.002, 0.004, 0.006, 0.008, 0.01, 0.012, 0.014, 0.016, 0.018000000000000002, 0.020000000000000004, 0.022000000000000006, 0.024000000000000007, 0.02600000000000001, 0.02800000000000001, 0.030000000000000013, 0.032000000000000015, 0.034000000000000016, 0.03600000000000002, 0.03800000000000002, 0.04000000000000002, 0.04200000000000002, 0.044000000000000025, 0.04600000000000003, 0.04800000000000003, 0.05000000000000003, 0.05200000000000003, 0.054000000000000034, 0.056000000000000036, 0.05800000000000004, 0.06000000000000004 ], "xaxis": "x", "y": [ 20, 24.92, 27.110384000000003, 28.241287670274563, 28.862738142070924, 29.215125578009275, 29.418375123076483, 29.53673444832815, 29.606039880917237, 29.646751814780952, 29.670711924413055, 29.68482861331742, 29.693151183567018, 29.698059667367406, 29.70095524139568, 29.702663601548313, 29.703671595861238, 29.70426637636429, 29.704617344074606, 29.704824446202682, 29.704946656012396, 29.705018771741372, 29.70506132720811, 29.705086439223116, 29.705101257860278, 29.70511000236588, 29.70511516251711, 29.70511820753397, 29.705120004405526, 29.70512106474371, 29.70512169045183 ], "yaxis": "y" } ], "layout": { "autosize": true, "legend": { "title": { "text": "Chemical" }, "tracegroupgap": 0 }, "template": { "data": { "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "barpolar": [ { "marker": { "line": { "color": "#E5ECF6", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "white", "linecolor": "white", "minorgridcolor": "white", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "contour" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmap" } ], "heatmapgl": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "heatmapgl" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2d" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "histogram2dcontour" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ], "sequentialminus": [ [ 0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "#E5ECF6", "showlakes": true, "showland": true, "subunitcolor": "white" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "#E5ECF6", "polar": { "angularaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "radialaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "yaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" }, "zaxis": { "backgroundcolor": "#E5ECF6", "gridcolor": "white", "gridwidth": 2, "linecolor": "white", "showbackground": true, "ticks": "", "zerolinecolor": "white" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "baxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" }, "bgcolor": "#E5ECF6", "caxis": { "gridcolor": "white", "linecolor": "white", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "white", "linecolor": "white", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "white", "zerolinewidth": 2 } } }, "title": { "text": "Reaction A + B <-> C . Changes in concentrations with time" }, "xaxis": { "anchor": "y", "autorange": true, "domain": [ 0, 1 ], "range": [ 0, 0.06000000000000004 ], "title": { "text": "SYSTEM TIME" }, "type": "linear" }, "yaxis": { "anchor": "x", "autorange": true, "domain": [ 0, 1 ], "range": [ -2.466517339921377, 52.76139564946955 ], "title": { "text": "concentration" }, "type": "linear" } } }, "image/png": "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QMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzHaq3AwWAQQQQAABBBBAAAEEEEAAAQQQQAABBBCwU4Aw28660WsEEEAAAQQQQAABBBBAAAEEEEAAAQQQQMApAcJsp8rNYBFAAAEEEEAAAQQQQAABBBBAAAEEEEAAATsFCLPtrBu9RgABBBBAAAEEEEAAAQQQQAABBBBAAAEEnBIgzNZQ7gNH+zW0QhMIuC3Q2VGQmX2T5PDbA25DMHoENAnMmd4jx06eleFSRVOLNIOAuwJ9vZ0ihYKcPDPkLgIjR0CTAHM+TZA0g0BNgDkflwICegXmz+rV2yCtaRcgzNZASpitAZEmnBdgYeP8JQCAZgEWNppBac5pAcJsp8vP4DULMOfTDEpzzgsw53P+EgBAswBhtmbQBJojzNaASpitAZEmnBdgYeP8JQCAZgEWNppBac5pAcJsp8vP4DULMOfTDEpzzgsw53P+EgBAswBhtmbQBJojzNaASpitAZEmnBdgYeP8JQCAZgEWNppBac5pAcJsp8vP4DULMOfTDEpzzgsw53P+EgBAswBhtmbQBJojzNaASpitAZEmnBdgYeP8JQCAZgEWNppBac5pAcJsp8vP4DULMOfTDEpzzgsw53P+EgBAswBhtmbQBJojzNaASpitAZEmnBdgYeP8JQCAZgEWNppBac5pAcJsp8vP4DULMOfTDEpzzgsw53P+EgBAswBhtmbQBJojzNaASpitAZEmnBdgYeP8JQCAZgEWNppBac5pAcJsp8vP4DULMOfTDEpzzgsw53P+EgBAswBhtmbQBJojzNaASpitAZEmnBdgYeP8JQCAZgEWNppBac5pAcJsp8vP4DULMOfTDEpzzgsw53P+EgBAs4CpYfYTu56R3c/tkXvW3SS9Pd2aR51ec88+v0/u27pTHtp0q8yY1jeuExNmj4tt5EknHzkp/edUpLykU8qzCxNsjacj4K4ACxt3a8/IkxFgYZOMK626KUCY7WbdGXUyAsz5knGlVXcFmPO5W3tGnoxAVmH2/tcOyJo77pM3Dx2tD+y8ubNk6+bbZdGC+ZJVmN0/MCh3b9ku8+bMlNvWrJwwOmH2hAkn3sDxPzleb6Q8q+CF2sPv7ZBKz8TbpgUEXBJgYeNStRlrGgIsbNJQ5hyuCBBmu1JpxpmGAHO+NJQ5h0sCzPlcqjZjTUMgizBbBdV3bd4uDz+wXi67ZHF9mCr4ffzJp727sb/zvd3cmV2T4c7sCX4llA6W5Oju09L545IUBqqNVYoi5QVFKS3plNIFRZHiBE/C0xFwQICFjQNFZoipCrCwSZWbk+VcgDA75wVmeKkKMOdLlZuTOSDAnM+BIjPEVAXSDrP9O7I3blg9KsgOD9q/M/v3fvtXZe36+72Hg3du+8f7wbj/cTAg9++K/sNP/a7c9l8fHNXGv734Ey9QV2/LliysbwPi35m9/NKlcu2Ky+vdCp/nc9et8O7cbnSH+Z/ccVP9udyZnerl3Pxkas/sQlmk49WyFPcOS8cbZZFK9Xh1h3bp4k4pLemQ8ky2ITGkZHTDQAEWNgYWhS5ZLcDCxury0XnDBAizDSsI3bFagDmf1eWj8wYKMOczsCh0yWqBtMNsFQrvfPLptntI++GxHxor5C9u3SkHDx+r76Md3ookHJSrIPnGWzZJuI0vPbZrzOdU+yqcbhRmh/usjvnmt/9BPn7Vr8uBQ0fkqe8/J//xD672roNGfWDPbAO+RMIvAFk8I1J8qSQde4ek+PZIB8vnFqS0uFNKahuSSQZ0nC4gYJAACxuDikFXciHAwiYXZWQQhggQZhtSCLqRCwHmfLkoI4MwSIA5n0HFoCu5EEg7zA4H0s0QG+2ZHbzLWT1vw73bZN3Nq7w9tv031b4fTDe6K7rd53omTfL2zPbvzD5+4qR3Z/jta1a2vJM8OA7VhwvPn+fdnc2d2YZ8mYTD7GC3igfL0rG3JB0/GZbCUPXObLUNSenCopSXdkrp/KIIN2wbUkm6kaUAC5ss9Tl3HgVY2OSxqowpKwHC7KzkOW8eBZjz5bGqjClLAeZ8Wepz7jwK2BpmH3v75JgXkPTr49+J3S64njGtz3tK8LhwmK3utN7y4A7ZeOdq8Y8PXwf+HeDBz7fqQ9zriD2z44o1OL5VmO0fXiiJdOxX25AMScfPa3uQiEh5skj5vR1SWtol5ekaOkMTCFgqwMLG0sLRbWMFWNgYWxo6ZqEAYbaFRaPLxgow5zO2NHTMUgHmfJYWjm4bK5B2mB1nm5Hdz+2pbykSDp1VmP35jdvkCxtWj7ozOwidRpit7sLe9b0fyNbNt9f70e7u8LgXA2F2XLFxhtnBpxVOVaRzn7pje1gKJ0eC7dKcgpTVi0Ze1CGVbg0dowkELBJgYWNRseiqFQIsbKwoE520RIAw25JC0U0rBJjzWVEmOmmRAHM+i4pFV60QSDvMbvUCkMG9qL/zvd3SKsxWuO22/9ARZrfaZsTfX/uTV18xagsSwmwDL/0od2Y367a6S9u7W3t/WdTd2+pNbUNSXtghw+pFI9/FNiQGlpwuJSDAwiYBVJp0WoCFjdPlZ/CaBQizNYPSnNMCzPmcLj+DT0CAOV8CqDTptEDaYbbC9l/c8eEH1tdDYD80vmD+HO9u7HZhttryo9Fd0SrAfuPA4ab7VbcLuMPbjKj+qvP88/P76i9a6YfuK678Vdn0Z1+VeXNmei8eqd7CLzrJntmGfHlNJMz2h6D201b7anfsKUnxULk+svIUkdLFHd4d2+VpbK5tSMnpRgICLGwSQKVJpwVY2DhdfgavWYAwWzMozTktwJzP6fIz+AQEmPMlgEqTTgtkEWYrcP8O7TcPHa37+/tM+4F3qzuz/f2r/WDcb+S8ubPqW360C66j7Jntt6sC7S89tmtMX/0Q/oW9r3iPqTH4byrgJsw25MtLR5gdHErxhLpbe1g69pWkeGbkkfLcopSWdEjpok6pdI1sT2IIA91AYEICLGwmxMeTERgjwMKGiwIBfQKE2fosaQkB5nxcAwjoFWDOp9eT1hDIKsxGProAe2ZHt2p6pO4wu36iikjHG2Up7hmWjp+WpVC7YbvSIVJaWJTyki4pvYu7tTWUkCYMEGBhY0AR6EKuBFjY5KqcDCZjAcLsjAvA6XMlwJwvV+VkMAYIMOczoAh0IVcChNnml5MwW0ONEguzA30rnBXpeLnkvWhk8cjIXdmVqQVKWVUUAAAgAElEQVQZvlgF251SPodgW0M5aSIjARY2GcFz2twKsLDJbWkZWAYChNkZoHPK3Aow58ttaRlYRgLM+TKC57S5FSDMNr+0hNkaapRGmB3sZvFYRYovDkvnyyVRIbf/Vj5PbUPSKaVFRal0aRgYTSCQogALmxSxOZUTAixsnCgzg0xJgDA7JWhO44QAcz4nyswgUxRgzpciNqdyQoAw2/wyE2ZrqFHaYbbfZbXtiNp+xNtf+/WySO2G7UqneIG2tw3JfO7W1lBimkhBgIVNCsicwikBFjZOlZvBJixAmJ0wMM07JcCcz6lyM9gUBJjzpYDMKZwSIMw2v9yE2RpqlFWYHex6oV+8F4zs2DckxeMjj1T6Ct7d2morEvV/3hAwVYCFjamVoV+2CrCwsbVy9NtEAcJsE6tCn2wVYM5na+Xot6kCzPlMrQz9slWAMNv8yhFma6iRCWF2cBjFg+VqsP3jYSkMVQPsSldFyud2iHSLlGcXpDKzKJUZRSnPIuDWcAnQhAYBFjYaEGkCgYAACxsuBwT0CRBm67OkJQSY83ENIKBXgDmfXk9aQ4Aw2/xrgDBbQ41MC7P9IaltSIr7y9Kxd0g6fjbyopHBIVeKIpXpBS/YrswuSnmmCroLUp5GyK3h0qCJGAIsbGJgcSgCEQRY2ERA4hAEIgoQZkeE4jAEIggw54uAxCEIxBBgzhcDi0MRiCBAmB0BKeNDCLM1FMDUMDs4tMKQSOFoWQrHK9774rGyFNQLSZ5pDFDpEKnMKHh3bldmdkhlVkHKMwpsVaLheqGJxgIsbLgyENArwMJGryetuS1AmO12/Rm9XgHmfHo9aQ0B5nxcAwjoFSDM1uuZRGuE2RpUbQizmw2zcFakcKwsxaMV770XcKv3A01CbrVdidqiZGZRZJa6k1v9vyDlyRogacJpARY2TpefwScgwMImAVSadFaAMNvZ0jPwBASY8yWASpNOCzDnc7r8DD4BAcLsBFA1N0mYrQHU5jC7acjdL17AXTxeFjmi7uSuSOF4WQqDTULuHqkH2yrort7RXZTKJA3ANOGEAAsbJ8rMIFMUYGGTIjanyr0AYXbuS8wAUxRgzpciNqdyQoA5nxNlZpApChBmj8Z+9vl9cuMtm+RP7rhJrl1xeYqVaH4qwmwNZchjmN005D6lAm61VYm6k7tUu6O7IoVS42eoO7a9O7dVsD2rKOIH3Z0a4GkiVwIsbHJVTgZjgAALGwOKQBdyI0CYnZtSMhADBJjzGVAEupArAeZ8uSongzFAgDB7dBG+uHWn94mDh4/JPetukt6e7syrRJitoQQuhdnNuIrvqHC7Ugu3S97/vf25y42fUemr7sGt7uCWWR31F55UL0jJm5sCLGzcrDujTk6AhU1ytrTsngBhtns1Z8TJCTDnS86Wlt0UYM7nZt0ZdXIChNkjtsdPnJSNf/qo/KcbrpHN//0xWXfzKlm0YH5y+BFbJsyOCNXqMMLs5jrF4+JtVaLCbXmr5P2/+Hbz48vTClJaVBSphdqFzqJUJhek0iPeP1H/7y1KpauioXI0YZIACxuTqkFf8iDAwiYPVWQMpggQZptSCfqRBwHmfHmoImMwSYA5n0nVoC95EMgszH71VZHXXkufcOFCkQsuaHhetcXI93/wQ7ltzUpRd2hfeP48I7YaIczWcJkQZsdHLB6p3bl9tFTdj1vd1f1OvIC6PEVEelW4rYJu9b4gBRV0q49rn/ceV4+xd3f8IqX8DBY2KYNzutwLsLDJfYkZYIoChNkpYnOq3Asw58t9iRlgygLM+VIG53S5F8gszP7850XuvTd93y98QeTOOxueVwXYH/nQB+SySxaLCrbv27pTHtp0q8yY1pd+PwNnJMzWwE+YrQFRxNt329uL+3RFCgMVKZwRqfSXpdBf+7hfRPorUjw9vvOp/btFBdve+2L1Tu8ptfe9BSn31j7vhePjOwfPGr8AC5vx2/FMBBoJsLDhukBAnwBhtj5LWkKAOR/XAAJ6BZjz6fWkNQQyC7P//M9FHn00/QL80R+JXH/9mPPuf+2AbHlwh2y8c7UXXqstR9auv19uX7PSC7ezfCPM1qBPmK0BMWYThaGCFLygW0RU8F0LutXnVODtfXy2IsUzInKm+QtUtjqtt7VJfYuTgrfFiUyuht/q7u/ynKKovb950yPAwkaPI60g4AuwsOFaQECfAGG2PktaQoA5H9cAAnoFmPPp9aQ1BDILsw2jf2LXM3LX5u1jevW561Z4245k+UaYrUGfMFsDYgpNFE5WQ+7CWZHCmYqICr69O8Brnx+o3vntheRD4w+pvS1NugpSUS/w2l2QSmdFKt0FkW6pv5fuokiX+rh2jHrfFThGPdaRAopBp2BhY1Ax6EouBFjY5KKMDMIQAcJsQwpBN3IhwJwvF2VkEAYJMOczqBh0JRcChNki/QODcveW7bL80qWj9sgO362dVcEJszXIE2ZrQDSwicIptb2JVP+pwHugIpUz1bvB1f9FheJnK1IYFJHBiheS637zgnEViHeJyCQVjI+E397namG4d4wfjHufr32sQnVLtkxhYaP76qE91wVY2Lh+BTB+nQKE2To1act1AeZ8rl8BjF+3AHM+3aK057oAYbaICq0/v3GbfGHDalm0YH79kvBD7k9efUWmW40QZge+Sv2iqE/ds+4m6e1R6aBI8Nb6q65cPuox9Thhtuvf6kaP3wu/BysiQ7WQ239fC71V8C2D1WO8O8C996FjNQfjpfnFmEWqiKg7w4sFqRRFCt77iohqpqPgvfc+3yFSKYgUOtUH1bvJC7XHvOcXCtXP1Y7zPycdlUC71bY6uwoy/ZxuOXpqsHpXuro5Xj1PBfi8IYBAbAEWNrHJeAICTQUIs7k4ENAnQJitz5KWEFACzPm4DhDQK0CYrdczidYIs2uqfpD97ad2SzCwDr9ap3olT/UW3B+GMDuJS5M21QtieqH30Ej4XQ/IVTCuAvCz5THHFIZrAbl3TDJ3jGdVHS/krgXd1ZC84IXpKhxXwbn3mPqcCt1V+F77XD2Q944bOcYL6dXnvGDeD+TVx9XA3gvuvZC+Ugv0a4G9+rxUPAbv/IFdaQrqnOo5/uf8x2tP8cL/2jFeG7XH68erRv1jav8Pn6P+nOrvC+pteP1xbHuarK5FG87LwsaGKtFHWwQIs22pFP20QYAw24Yq0UebBJjz2VQt+mqDAGG2+VUizK7VSIXUF54/z/to93N76ndf+5+/dsXl3mPhcFt9jjDb/AudHop44bj6VxYplEUqpYr3XsoFkXKl9ljoc+rYkkilol5EsyCVcvXxkeer54pUymXv+QXVVqnifc5r03t+ofb86rm9z6t01j+/16eKFCoFKVYKUhoqS0HlxKqdUqHaR94yEfB+KaDeglvIh7eT94rlHxdM9UNdHsn/G7bntTKm7WDTLdqu/2ohTl8D/fN+I9DkreXYR54T/mVEsDXvlxc+U4P26oKjulH7bLPz+5+vtzvWZ1JXUQZLZakEStSolg3tR/G0qmulPrTW10mgSKPG1OaaqV9bwQ7V/l8bVzN7z31UIYLXavWBdmNvOaZMviqTO2mhGPcveJLry5jvBTpPFfclMWqXjfp6Uv06O9jih1LctmOMa9R1HuN5kQ+N1ffgN5UIZ4jVdoT2mn1/ivfUaEfH6HtMlWjnH+9RMfod+xQa2i4WCzKlp1NOnlF3ZoTeNLTfdEwx245T0zE/c2LDtnhCzH6P/GCO2Im47Uds1jsswbbjf1+MU9Fk+67bZdrkbjk1MCQltaZqNa9tVLs4LAnW05uXJdk+bTf+yo3hEudSqX75x2g8zveVhL+3qJva5i6bHLdHHJ+yAGG2iATvtlZbivhhtqpFeMPzRvvGEGanfNVyulwKRLlLx9uOxQvEa2G3urG5FtBXg/Na8O6F6iOBuheWl2qBoheSixeYV7wAXr0vB0L+6mPe870Qv3ac/zkvpC9Uj/H/qaZVYqj64/+UDz7uV6x2jPehmq3Vjqn/mFdN+Mmj/1hw1uC36T2/9ksBP/NU/eUNAQQQQAABBBBAAAEEEEAAAQTGLTDjrhnjfi5PTEfA+TBbhdc/feNgfduQRmF2cGPzRmF2WYVbvCGAwIQFvBtY+XKasOO4GxgOPTMcpNceHhwuS1dn4DftTY4bc2dQxOPqgb46X7PntHosfA0FPvbb9nrf4rjxnHdUv+P0L3jntl+CJuNuatPgfPWbtyOOc9z9N6iuHl/E8UY+rlYT7y9QbHuL8/00zrFxHZJsu1HN4/av1fH1vof/HELDSRJ2GfM1raHL9SaS7Lutbad2LeospP8NLoE2/aabTOzU3aNarlFbr5ck+63xWlTLXLX73qi3JPueYNtarrdIPy8S+HpK0CX2nfxxhpdkvzVe5w2HlGDfuRabXESxzZO78/ucG/riXOkcm4GA82G2uiv7S4/tGkOv9s1e/5//QDb92Vdl+aVLxd9mpFGY/eax/gxKxykRyJeAujN7xtRJ8taJgXwNLKejSfTPxnJqlvawZk+bJMdPDUpJ/TUCbwggMCGBqb3qhRoKcupM+Ld+E2qWJyPgpECHN+frliMnNL/iuZOayQ46sJlYsiei9QkJnDutR46fOivDzPkm5MiTEfAFzpvZC4bhApmG2cdPnJS16++XF/a+MoZp2ZKF8tCmW2XGtHR/IxK8M7u3p9vbgkTtpc2e2YZfyXTPeoEo24xYP0gGgECKArwYUIrYnCr3ArwAZO5LzABTFGDOlyI2p3JCgDmfE2VmkCkK8AKQKWKP81SZhtnBvarH2X/tTwuH2eEXfGzUZ/bM1l4GGnRQgIWNg0VnyIkKsLBJlJfGHRMgzHas4Aw3UQHmfIny0riDAsz5HCw6Q05UgDA7UV4tjWcWZqu7sjfcu03W3bxKFi2Yr2UwOhoJh9mqTfW5uzZv95pX24/cs+4mUXdt+2+E2TrkacN1ARY2rl8BjF+3AAsb3aK057IAYbbL1WfsugWY8+kWpT3XBZjzuX4FMH7dAoTZukX1t0eYrcGUMFsDIk04L8DCxvlLAADNAixsNIPSnNMChNlOl5/BaxZgzqcZlOacF2DO5/wlAIBmAcJszaAJNJdZmK3GEt6POoHxpdIkYXYqzJwk5wIsbHJeYIaXugALm9TJOWGOBQizc1xchpa6AHO+1Mk5Yc4FmPPlvMAML3UBwuwqudp2+cZbNo3y/9x1K+S2NStTr0n4hJmG2ftfOyCPPvFdWbd21ahtOzJXidkBwuyYYByOQAMBFjZcFgjoFWBho9eT1twWIMx2u/6MXq8Acz69nrSGAHM+rgEE9AoQZo+E2fdt3SkPbbpVZkzrE7Vd9Nr198vta1bKZZcs1oses7XMwmwf4YW9rzTs8rIlC+tgMceU+uGE2amTc8IcCrCwyWFRGVKmAixsMuXn5DkTIMzOWUEZTqYCzPky5efkORRgzpfDojKkTAUIsxuH2f0Dg3L3lu2y/NKlcu2KyzOtUWZhdqaj1nxywmzNoDTnpAALGyfLzqATFGBhkyAuTTsnQJjtXMkZcIICzPkSxKVpJwWY8zlZdgadoEBWYXb57bKUT5QTHFnjpovTi1KcVhzzoNpmJHxn9oZ7t8m6m1fJogXzU+9n8ISE2Rr4CbM1INKE8wIsbJy/BADQLMDCRjMozTktQJjtdPkZvGYB5nyaQWnOeQHmfM5fAgBoFsgqzO7/+34Z+N8DmkfTvrne3+iVng/3NAyzw3tmnzd3lmzdfDthdqMNxR9+YH3m+6+0L/fIEYTZcbQ4FoHGAixsuDIQ0CvAwkavJ625LUCY7Xb9Gb1eAeZ8ej1pDQHmfFwDCOgVyCrMPvuvZ2XwhUG9g4nQ2qRfmiTdy7obhtnBO7PVAeG7tSM0n8ghmd6Z3QhBvSjkmjvuk5tvuCbzPViiihNmR5XiOASaC7Cw4epAQK8ACxu9nrTmtgBhttv1Z/R6BZjz6fWkNQSY83ENIKBXIKswW+8oJt5ao8xWvf6hCVuNZBZm+xuHf/LqK8bcha3AHn/yabln3U3S2zP2twMTL4neFgiz9XrSmpsCLGzcrDujTk6AhU1ytrTsngBhtns1Z8TJCTDnS86Wlt0UYM7nZt0ZdXIChNlV20ZhtvN3ZrdK89Xd2Vse3CEb71wtM6b1JXeFamqZMFsTJM04LcDCxunyM/gEBFjYJIBKk84KEGY7W3oGnoAAc74EUGnSaQHmfE6Xn8EnIECYPRJmh/fMXrZkoTy06dbMs1ruzNZw4RNma0CkCecFWNg4fwkAoFmAhY1mUJpzWoAw2+nyM3jNAsz5NIPSnPMCzPmcvwQA0CxAmK0ZNIHmMguz1Vie2PWM7Hzy6VGpPntmJ1BlmkTAAgEWNhYUiS5aJcDCxqpy0VnDBQizDS8Q3bNKgDmfVeWisxYIMOezoEh00SoBwmzzy5VpmK141H4r4dvWH35g/Zh9tE2m5M5sk6tD32wRYGFjS6Xopy0CLGxsqRT9tEGAMNuGKtFHWwSY89lSKfppiwBzPlsqRT9tESDMNr9SmYfZ5hO17yFhdnsjjkCgnQALm3ZCPI5APAEWNvG8OBqBVgKE2VwfCOgTYM6nz5KWEFACzPm4DhDQK0CYrdczidYIszWoEmZrQKQJ5wVY2Dh/CQCgWYCFjWZQmnNagDDb6fIzeM0CzPk0g9Kc8wLM+Zy/BADQLECYrRk0geYIszWgEmZrQKQJ5wVY2Dh/CQCgWYCFjWZQmnNagDDb6fIzeM0CzPk0g9Kc8wLM+Zy/BADQLECYrRk0geZSD7OPnzgpa9ffL3/4qd+VL3/9f8oLe19pOKxlSxaOemHIBMaurUnCbG2UNOSwAAsbh4vP0BMRYGGTCCuNOipAmO1o4Rl2IgLM+RJhpVGHBZjzOVx8hp6IAGF2IqxaG009zPZ7r0LtDfduk3U3r5JFC+aPGpR6UcjHn3xa7ll3k/T2dGsdcBKNEWYnoUqbrgmwsHGt4ow3aQEWNkkL075LAoTZLlWbsSYtwJwvaWHad02AOZ9rFWe8SQsQZictPPH2jQyz9792QLY8uEM23rlaZkzrm/goE26BMDthYJp3QoCFjRNlZpApCrCwSRGbU+VegDA79yVmgCkKMOdLEZtTOSHAnM+JMjPIFAUIs1PEHuepjAyzn9j1jOx+bg93Zo+zqDwNARsFWNjYWDX6bLIACxuTq0PfbBMgzLatYvTXZAHmfCZXh77ZKMCcz8aq0WeTBQizTa5OtW+ph9nqrus1d9wnbx462lTnvLmzZOvm28dsP2IqJ3dmm1oZ+mWTAAsbm6pFX20QYGFjQ5Xooy0ChNm2VIp+2iDAnM+GKtFHmwSY89lULfpqgwBh9ugqfXHrTvnSY7vqn7zqyuWZ33ycepjtj77Vntk2XNzBPhJm21Yx+muiAAsbE6tCn2wWYGFjc/Xou2kChNmmVYT+2CzAnM/m6tF3EwWY85lYFfpkswBhdrV6/QODcveW7d7/g69pqHbTOH/+HLnsksWZlTmzMDuzESdwYsLsBFBp0jkBFjbOlZwBJyzAwiZhYJp3SoAw26lyM9iEBZjzJQxM884JMOdzruQMOGEBwuwq8LPP75P7tu6UhzbdatzrGRJma/giIMzWgEgTzguwsHH+EgBAswALG82gNOe0AGG20+Vn8JoFmPNpBqU55wWY8zl/CQCgWSCrMPvVt1+V195+TfNo2je3cMZCuWDaBWMOVNuLqLfb1qxs30jKR2QaZrfaP3vZkoVGpv+N6kOYnfJVy+lyKcDCJpdlZVAZCrCwyRCfU+dOgDA7dyVlQBkKMOfLEJ9T51KAOV8uy8qgMhTIKsz+/Pc+L/d+/97UR/6F3/yC3PmROxuG2ReeP0+uXXF56n1qd8LMwmx/75Xlly6VX3zfe+TRJ74r69aukt6eblHp/0c+9IFM919pBxd8nDA7jhbHItBYgIUNVwYCegVY2Oj1pDW3BQiz3a4/o9crwJxPryetIcCcj2sAAb0CWYXZf/4vfy6PvvCo3sFEaO2PfvmP5Ppl1zcMs9UnuTM7QBN8AUj16S0P7pCNd6729mFR+7I8/uTTmb86ZoSae4cQZkeV4jgEmguwsOHqQECvAAsbvZ605rYAYbbb9Wf0egWY8+n1pDUEmPNxDSCgVyCrMFvvKCbeGntmNzAMhtkzp/fJxj99VDb88fVemK22HwmG2xMvQbItEGYn60vrbgiwsHGjzowyPQEWNulZc6b8CxBm57/GjDA9AeZ86VlzJjcEmPO5UWdGmZ4AYXbV2t9RQ/3/nnU3eTtpqLcndj0j58+fk+luGkZsM6L2X1Fbi/h7sSiY3c/t4c7s9L5WORMCmQvYvrA5WxqQilSkXClLpaLeV0SCH0u5/rh4j4987B1fe7xSf756XOrteZ8vBNuvPn/08bV2KrXPe49X21Bv6njvvXo88H/vc4WKeqD9cV6bY49Trftt++eqn6PVeWt9rF6ALfpXHW3T/gX73qh/Y8YbHIcae7XzY10ajne0pd/3MecN9jlgNua4crWWY/zCzg3a83oyqu16b2TypA7pPzssJf/xYHv+/2tjb3hNNKm139eG5hHbG6n1WMvqdR2qdYSxN722G7Tn1TrQ1/o12/BrwL88atdJ5t8t6UAWAp3FgkhBZLjEdZCFP+fMl0ChINLVUZTB4er8hDcEEJiYQHdnUYZKag0ysXZ4NgIIVAX+afUzUAQEVF77pcd21T9z1ZXLM89rMwuzw1eGulN77fr75YW9r8h5c2fJ1s23y6IF8624gLgz24oy0UnDBfww+2fHTshgaUiGSoMyVB6Uwdr7odKQDJYHvc9X3w+1ebx6jDp2cPhs7djqc/w2BofjnkP1p9pGPdAz3JXuIYAAAggggAACCCCAAAIIIIBANIHK3fxmKJpUdkcZE2ZnRzDxMxNmT9yQFpIXODN8uh7ujgTFo8Pd4dKwnC2frQbJbULjUmlYBkr99XC3UehcDaNHgumztVC5UTCt2srDW09HrxQKBSkWiuomPimo9/WPC1KU6sfe56V2XOhxCX7sHVs9Tt0W6D+/2v7I80e1539eHeE9T/VD9ca7sTDw/9rn1Dm8RwKPVdRdiP5zWhznnWPscdUzjT5X/RyBx4LnHfm/fyU0brtRX8N9UH0fc1yTvk5s7NW+jm5jAmMv1urVrq++YeC4oLnqz9TeTukfLEm5XPH616hOfr/rta5ENG/QXlPzQF/9ayJs7glW2UZZNqxhg/YaXm8Rr9/g2Jv1z/ere+XhmxVjiCWg/tJBXXpnBkqxnsfBCCAwVqCjKNI3uVvePjUIDwIIaBCYPrVbTp4ZlBJ/7KBBkyYQEPn4B34HBsMFMguzg3tm23IHdrNaEmYbfpVb1j0VOp8eOi1nhk5570/X3p8ZHPn4zNBpOTV4sv64+rh+nHf86GOHy8NWKKigqLOjS7qL3dLlvZ8k3R3d0lX/WH2+u/64+nzzx/02uqW7c5LXRndHV62txm00fLx+vmo/JnWq506ywpNOui3A/olu15/R6xVgz2y9nrTmtoDtW8u5XT1Gb6IAcz4Tq0KfbBZgz2zzq0eYraFGhNkaEC1sQm0zcWrwVC10robHYwLoWqisguczgyOBswqbgwF09eNTcmb4TH1/Y50kHYWO9oFwLTRWYW01PG4d+KqA2A+dm4XKwTaqx1bbbhQa93ZNkrnTpsrhtwd0Dp22EHBWgIWNs6Vn4AkIEGYngEqTzgoQZjtbegaekABzvoRgadZZAcJs80ufWZitaNQm4h/50AcyfQVMHSUizNahmH0bw+UhOdL/lhztP1L7p/7/lhw5U/3csYEjcvTMETmq3ve/Je+cPZHIvslqm4opXVNkStdUmdI9tfZ+ikxWH/ufV++7++ofT65/vnpM8Nip3X2iwmzT31jYmF4h+mebAAsb2ypGf00WIMw2uTr0zTYB5ny2VYz+mi7AnM/0CtE/2wQIs82vWKZh9v7XDsijT3xX1q1dJb093eZrNekhYbaZpRssn5XDpw+FguhqOH3MD6xrAfWxgbfk5ODJWANRW2KoEHkkSK4G0OrjqV2BoLl7iqhAORwyhz9WAfTU7qn1/WJjdSYHB7OwyUERGYJRAixsjCoHnbFcgDDb8gLSfaMEmPMZVQ46kwMB5nw5KCJDMEqAMNuocjTsTGZhttoze+36++WFva807NiyJQvloU23yoxpfcYrEmanU6JTQ6fkWPDOaf9O6f7DgbupR+6gVntPx3nrLHbKjJ5ZMqtntsyaPFtm9Zxbfd97rszqVe9ny+zec2Vm7eMZPTOdDZ7juEY9loVNVCmOQyCaAAubaE4chUAUAcLsKEocg0A0AeZ80Zw4CoGoAsz5okpxHALRBAizozlleVRmYXaWg9Z9bsLsiYu+eern8tKxPd6/Ayd/7m3jEdzWQz0+nre5U84bFU7P7J0t506ZIzNrofXMWmitQurpPTPGcwqeo0mAhY0mSJpBoCbAwoZLAQF9AoTZ+ixpCQHmfFwDCOgVYM6n15PWECDMNv8ayCzMVndmb7h3m6y7eZUsWjB/lNSzz++Tx598Wu5Zd5MV248QZke/0N/qPywvH90rLx17UfYeeVFePqb+v0dODr4TqZHzpv6CF057d0j7QfTk6p3TKqj276BWd1WfM2lapDY5yAwBFjZm1IFe5EeAhU1+aslIshcgzM6+BvQgPwLM+fJTS0ZihgBzPjPqQC/yI0CYbX4tjQyz1V7aWx7cIRvvXM02I+ZfQw17qMLpPUdf8ILrl4/tk71HfyR7jvxQTpx9u+Hxfd198t6ZS+XimUvl3dPfU9vmYyScVlt7TO2aaqkG3Y4iwMImihLHIBBdgIVNdCuORKCdAGF2OyEeRyC6AHO+6FYciUAUAeZ8UZQ4BoHoAoTZ0a2yOtLIMPuJXc/I7uf2cGd2VldFjPOqfalVYL3v2B7Zp+60Pr5H9mZ2mJEAACAASURBVB3dI4dOv9mwld7OyfLemYvlvTOXyOJZ75fFs5Z6/58/9V0xzsqheRRgYZPHqjKmLAVY2GSpz7nzJkCYnbeKMp4sBZjzZanPufMowJwvj1VlTFkKEGZnqR/t3KmH2equ6zV33CdvHjratIfnzZ0lWzffPmb7kWhDSv8oF7YZGSyf9e6wfumoCqtf9N6/fHyv/Oyd16UilTHoXR3dsmjaRbJ41vtk8ez31cLrpXLBOe/mRRPTv0StOCMLGyvKRCctEmBhY1Gx6KrxAoTZxpeIDlokwJzPomLRVSsEmPNZUSY6aZEAYbb5xUo9zPZJWu2ZbT7b6B7mKcweLg/J/uM/lpfUHdZHXpSX1J7WR/fIa++8IuVKeUxpOgodcuG0hXKxCq3VNiGz1VYh75OF098j6jHeEIgqwMImqhTHIRBNgIVNNCeOQiCKAGF2FCWOQSCaAHO+aE4chUBUAeZ8UaU4DoFoAoTZ0ZyyPCqzMDvLQes+t41htgqmf3pivxdUv3R8by243iOvvP0TUYF2+K0gBTm/b4FcrLYFmbVElsx6v/f/i6ZfLOoubN4QmKgAC5uJCvJ8BEYLsLDhikBAnwBhtj5LWkKAOR/XAAJ6BZjz6fWkNQQIs82/BgizNdTI9DB7oNQv//izf5C9R37kbRHy42P75EdH/q3pyOdOOU+WzHyfXKT2tZ79PrnY29/6faL2u+YNgaQEWNgkJUu7rgqwsHG18ow7CQHC7CRUadNVAeZ8rlaecSclwJwvKVnadVWAMNv8ymcaZqutRtauv19e2PvKGKllSxbKQ5tulRnT+oxXNDXM/peD/yxfe/HL8tc/+aacHjo1xnHapOmydPYH6mG1uuN66axl0td9jvHmdDB/Aixs8ldTRpStAAubbP05e74ECLPzVU9Gk60Ac75s/Tl7/gSY8+WvpowoWwHC7Gz9o5w90zD7i1t3en28bc3KKH019hiTwuzDZw7K43sfla/vfUT2v/3jutmCcxbKr73r1+ViFVjP/oBcNHOxnNs7x1hTOuaeAAsb92rOiJMVYGGTrC+tuyVAmO1WvRltsgLM+ZL1pXX3BJjzuVdzRpysAGF2sr46Ws8szOYFIHWUr9qG2uP6b1/9G9mx5xH5h9e/K6VKyfv85M4p8nsX/Qf51JLPyIfmf1jUvte8IWCqAAsbUytDv2wVYGFja+Xot4kChNkmVoU+2SrAnM/WytFvUwWY85laGfplqwBhtvmVI8zWUKOs7sxW+15//cVH5Fs//rocHzjmjUQF1h+c/2uyauln5apFH5MpXVM1jJAmEEhegIVN8sacwS0BFjZu1ZvRJitAmJ2sL627JcCcz616M9rkBZjzJW/MGdwSIMw2v96ZhdmKRm0zcuH58+TaFZebL9Wih2mG2W8PHJdvvvw12fHiI7Ln6Av1Xr2r7wL5xMWflk8t/YxccM67rfak824KsLBxs+6MOjkBFjbJ2dKyewKE2e7VnBEnJ8CcLzlbWnZTgDmfm3Vn1MkJEGYnZ6ur5UzD7P2vHZBHn/iurFu7Snp7unWNKfV2kg6z1bYhf//a38mOvY/Id3/6HRkqDXpj7O2cLB9d9PuyaskN8u/edTnbiKReeU6oU4CFjU5N2kJAhIUNVwEC+gQIs/VZ0hICzPm4BhDQK8CcT68nrSFAmG3+NZBZmK32zF67/n55Ye8rDZWWLVkoD226VWZM6zNeMakwW72A42Mvflm+8dJj8taZQ3WHy+b9qncH9tUXfUKmso2I8dcHHYwmwMImmhNHIRBVgIVNVCmOQ6C9AGF2eyOOQCCqAHO+qFIch0A0AeZ80Zw4CoGoAoTZUaWyOy6zMDu7Ies/s84w+9TQKfnLl7/uvZjjvx56tt7Z86b+greNiNoL+8Jpi/QPghYRyFiAhU3GBeD0uRNgYZO7kjKgDAUIszPE59S5E2DOl7uSMqCMBZjzZVwATp87AcJs80tKmK2hRhMNsytSkX/82T/Ijj0Py3f2PykDpX6vV5M6euSjC39fVi75jHzk/N+QYqGoobc0gYCZAixszKwLvbJXgIWNvbWj5+YJEGabVxN6ZK8Acz57a0fPzRRgzmdmXeiVvQKE2ebXLtMwu39gUO7esl2+/dRuOW/uLNm6+XaZP3e297nlly615oUhxxtm/+zk67Jjz1/Izn1flZ+ffKN+tfzS3Mu8O7CvueiT0td9jvlXET1EQIMACxsNiDSBQECAhQ2XAwL6BAiz9VnSEgLM+bgGENArwJxPryetIUCYbf41kGmY/cWtO+XC8+fJR39zuWx5aIdcf+1vyaIF8+XZ5/fJ408+Lfesu8mKF4aME2b3D5+Rb//kL70Xc9z98++Luitbvc2ZPE8+sfg6WbX0Rlk0/SLzrxx6iIBmARY2mkFpznkBFjbOXwIAaBQgzNaISVPOCzDnc/4SAECzAHM+zaA057wAYbb5l0BmYbZ6AcgN926TdTev8u7GDobZ+187IFse3CEb71ydmxeAfPbgP8nXX3xEnvzJN0Xti63euouT5HfefZX3Yo6/fsFvSUehw/wrhh4ikJAAC5uEYGnWWQEWNs6WnoEnIECYnQAqTTorwJzP2dIz8IQEmPMlBEuzzgoQZptfeiPD7DTvzA5udeKX6+EH1stllyyuV++JXc/IXZu3ex9fdeXyMXeMN7sz++DpA/KNfV/zXszx1RM/qbf3i3N+2dsH+9r3rpJzJk0z/yqhhwikIMDCJgVkTuGUAAsbp8rNYBMWIMxOGJjmnRJgzudUuRlsCgLM+VJA5hROCRBmm1/uzMJsRaNC4t3P7ZENf3y9/Nn2b3nbjMyc3idr198vK6++IpU9s9Ud4l/e8R1Ze8PHvC1NVJC+YeM2b/9uf8uT+7bulIc23erdJa62RlFvt61ZWa9uMMweKg3K/3z1SS/AfuaNp6RcKXvHnds7R669WG0jcoO8d+ZIUG7+JUIPEUhHgIVNOs6cxR0BFjbu1JqRJi9AmJ28MWdwR4A5nzu1ZqTpCDDnS8eZs7gjQJhtfq0zDbMVjwqPb7xl0yip8J3RaTKqcFuF6bevWendne3v633tisu9bqj+BsNt9TkVZv/wrX+Vr+95RL718tflxNm3vWM7i13yWxd+1Hsxx99c8O/ZRiTNQnIu6wRY2FhXMjpsuAALG8MLRPesEiDMtqpcdNZwAeZ8hheI7lknwJzPupLRYcMFCLMNL5CIZB5mm0ak9uv+/MZt8oUNq729vO/esl2WX7q0fpd48HF15/YDux+Qh579H/Lysb31oSydtUyue/+Ncu1Fq2R6zwzThkh/EDBSgIWNkWWhUxYLsLCxuHh03TgBwmzjSkKHLBZgzmdx8ei6kQLM+YwsC52yWIAw2/ziZRpmq7ueDx4+NmoPan8P62CAnBZj+Nz+x5+8+or6HtrhMLtwT8Hr3szeWfKppZ+Sm35ptSybsyytLnMeBHIjoL6SOjuLMjRc3ZqHN3MFSmWRjmL1ex9v5gp0q6+nUlkqFXP7SM8QsEWgU33PK4gMl/iCsqVm9NNcgUJBpKujKIPM+cwtUq1nw6WyqF8+8Ga2QFdnUYaHy8JPKLPrRO/sEZjU1WFPZx3taWZhdqOg2K9Bmi8A6Z/T78+8OTPr+2E3CtbDYfZ/+d5/kYumfUCues81jl5CDBsBPQIdHQU5p7dLjp8a1NMgrSQqUFArUd6MFpg+tVtOnhkU9csH3hBAYGICkyd1eGH2mYHSxBri2QggIB1Fkb7J3fI2cz7jrwYVjxZISI2v04yp3fJO/5CU+IWr8bWig3YIzJ42yY6OOtzLzMJstTf1hnu3ybqbV3kvtBh8U4Hxlgd3yMY7V3svupj0W6Mg2z9n1D2zk+4j7SOQdwH+5DTvFWZ8aQvwJ6dpi3O+PAuwzUieq8vY0hZgzpe2OOfLuwBzvrxXmPGlLcA2I2mLxz9fZmG2KXdmt9vWJPyCjyrcVm+3rVlZ11YvAMkbAghMTICFzcT8eDYCYQEWNlwTCOgTIMzWZ0lLCDDn4xpAQK8Acz69nrSGAGG2+ddAZmG2olFB8YaN22Tr5tvrd2eru7LX3HGf3HzDNfUXXUyS0T/fm4eOjjrN565bUQ+sn9j1jNy1ebv3+FVXLh+1x7f6HGF2khWibVcEWNi4UmnGmZYAC5u0pDmPCwKE2S5UmTGmJcCcLy1pzuOKAHM+VyrNONMSIMxOS3r858k0zFbdbhQmP/zA+voLLo5/aOk9kzA7PWvOlF8BFjb5rS0jy0aAhU027pw1nwKE2fmsK6PKRoA5XzbunDW/Asz58ltbRpaNAGF2Nu5xzpp5mB2ns6YeS5htamXol00CLGxsqhZ9tUGAhY0NVaKPtggQZttSKfppgwBzPhuqRB9tEmDOZ1O16KsNAoTZ5leJMFtDjQizNSDShPMCLGycvwQA0CzAwkYzKM05LUCY7XT5GbxmAeZ8mkFpznkB5nzOXwIAaBYgzNYMmkBzmYbZx0+clLXr75cX9r4yZmjLliyUhzbdKjOm9SUwbL1NEmbr9aQ1NwVY2LhZd0adnAALm+Rsadk9AcJs92rOiJMTYM6XnC0tuynAnM/NujPq5AQIs5Oz1dVypmH2F7fu9MZx25qVusaTSTuE2Zmwc9KcCbCwyVlBGU7mAixsMi8BHciRAGF2jorJUDIXYM6XeQnoQM4EmPPlrKAMJ3MBwuzMS9C2A5mF2equ7A33bpN1N6+SRQvmt+2oyQcQZptcHfpmiwALG1sqRT9tEWBhY0ul6KcNAoTZNlSJPtoiwJzPlkrRT1sEmPPZUin6aYsAYbb5lSLM1lAjwmwNiDThvAALG+cvAQA0C7Cw0QxKc04LEGY7XX4Gr1mAOZ9mUJpzXoA5n/OXAACaBQizNYMm0FxmYbYai9pm5MLz58m1Ky5PYGjpNUmYnZ41Z8qvAAub/NaWkWUjwMImG3fOmk8Bwux81pVRZSPAnC8bd86aXwHmfPmtLSPLRoAwOxv3OGfNNMze/9oBefSJ78q6taukt6c7Tr+NOpYw26hy0BlLBVjYWFo4um2sAAsbY0tDxywUIMy2sGh02VgB5nzGloaOWSrAnM/SwtFtYwUIs40tTb1jmYXZas/stevvlxf2vtJQadmShfLQpltlxrQ+4xUJs40vER20QICFjQVFootWCbCwsapcdNZwAcJswwtE96wSYM5nVbnorAUCzPksKBJdtEqAMNv8cmUWZptPE72HhNnRrTgSgWYCLGy4NhDQK8DCRq8nrbktQJjtdv0ZvV4B5nx6PWkNAeZ8XAMI6BUgzNbrmURrhNkaVAmzNSDShPMCLGycvwQA0CzAwkYzKM05LUCY7XT5GbxmAeZ8mkFpznkB5nzOXwIAaBYgzNYMmkBzmYfZzz6/T268ZdOooT38wHq57JLFCQw3mSYJs5NxpVW3BFjYuFVvRpu8AAub5I05gzsChNnu1JqRJi/AnC95Y87glgBzPrfqzWiTFyDMTt54omfINMxWQfZ9W3eO2htbvSjkmjvuk5tvuEauXXH5RMeXyvMJs1Nh5iQ5F2Bhk/MCM7zUBVjYpE7OCXMsQJid4+IytNQFmPOlTs4Jcy7AnC/nBWZ4qQsQZqdOHvuEmYXZ/QODcveW7fLJq68Ycxe2Crkff/JpuWfdTdLb0x17UGk/gTA7bXHOl0cBFjZ5rCpjylKAhU2W+pw7bwKE2XmrKOPJUoA5X5b6nDuPAsz58lhVxpSlAGF2lvrRzp1ZmH38xEnZcO82WXfzKlm0YP6o3qq7s7c8uEM23rlaZkzrizaSDI8izM4Qn1PnRoCFTW5KyUAMEWBhY0gh6EYuBAizc1FGBmGIAHM+QwpBN3IjwJwvN6VkIIYIEGYbUogW3cgszObObPMvDnqIQJoCLGzS1OZcLgiwsHGhyowxLQHC7LSkOY8LAsz5XKgyY0xTgDlfmtqcywUBwmzzq5xZmK1ontj1jOx88mn2zDb/OqGHCCQuwMImcWJO4JgACxvHCs5wExUgzE6Ul8YdE2DO51jBGW7iAsz5EifmBI4JEGabX/BMw2zFo/bHvvGWTaOkHn5g/Zh9tE2mZJsRk6tD32wRYGFjS6Xopy0CLGxsqRT9tEGAMNuGKtFHWwSY89lSKfppiwBzPlsqRT9tESDMNr9SmYfZ5hO17yFhdnsjjkCgnQALm3ZCPI5APAEWNvG8OBqBVgKE2VwfCOgTYM6nz5KWEFACzPm4DhDQK0CYrdczidYyDbO/uHWnHDx8TO5Zd5P09nR74/P30l5+6VK5dsXlSYxZe5uE2dpJadBBARY2DhadIScqwMImUV4ad0yAMNuxgjPcRAWY8yXKS+MOCjDnc7DoDDlRAcLsRHm1NJ5ZmM0LQGqpH40gkBsBFja5KSUDMUSAhY0hhaAbuRAgzM5FGRmEIQLM+QwpBN3IjQBzvtyUkoEYIkCYbUghWnQjszD7+ImTsuHebbLu5lWyaMH8UV3c/9oB2fLgDtl452qZMa3PeEXuzDa+RHTQAgEWNhYUiS5aJcDCxqpy0VnDBQizDS8Q3bNKgDmfVeWisxYIMOezoEh00SoBwmzzy5VZmM2d2eZfHPQQgTQFWNikqc25XBBgYeNClRljWgKE2WlJcx4XBJjzuVBlxpimAHO+NLU5lwsChNnmVzmzMFvRPPv8PtmwcZts3Xx7/e5sdVf2mjvuk5tvuIY9s82/fughAtoEWNhoo6QhBDwBFjZcCAjoEyDM1mdJSwgw5+MaQECvAHM+vZ60hgBhtvnXQKZhtuLxw+s3Dx2taz38wHq57JLF5uvVesg2I9aUio4aLMDCxuDi0DUrBVjYWFk2Om2oAGG2oYWhW1YKMOezsmx02mAB5nwGF4euWSlAmG1+2TIPs80nat9Dwuz2RhyBQDsBFjbthHgcgXgCLGzieXE0Aq0ECLO5PhDQJ8CcT58lLSGgBJjzcR0goFeAMFuvZxKtEWZPVPVb35KD779MyjNnTbQlno+A0wIsbJwuP4NPQICFTQKoNOmsAGG2s6Vn4AkIMOdLAJUmnRZgzud0+Rl8AgKE2Qmgam6SMHuioIWC18LAR39P+ld+Wvqv/thEW+T5CDgpwMLGybIz6AQFWNgkiEvTzgkQZjtXcgacoABzvgRxadpJAeZ8TpadQScoQJidIK6mpgmzJwr5iU+IfPOb9VbKM2fKmU9cJ/2fuVGGlrxvoq3zfAScEWBh40ypGWhKAixsUoLmNE4IEGY7UWYGmZIAc76UoDmNMwLM+ZwpNQNNSYAwOyXoCZyGMHsCeP5TD/7kgEz+xmPS+7WvSNcL/1ZvcWjZL0r/pz/jhdvlGTM0nIkmEMivAAub/NaWkWUjwMImG3fOmk8Bwux81pVRZSPAnC8bd86aXwHmfPmtLSPLRoAwOxv3OGclzI6j1eTY4AtAdr78kkz+ypdl8jd2SPGtw94zKt3dMvA7H5X+T39WBq78HZGODg1npQkE8iXAwiZf9WQ02QuwsMm+BvQgPwKE2fmpJSPJXoA5X/Y1oAf5EmDOl696MprsBQizs69Bux4QZrcTivB4MMyuH14qSc9Tfye9j31Fev52lxQGB72HyufOkTMrr5Mzn75Bhi9eHKF1DkHADQEWNm7UmVGmJ8DCJj1rzpR/AcLs/NeYEaYnwJwvPWvO5IYAcz436swo0xMgzE7PerxnIswer1zgeQ3D7MDjxXfekd7HH5PeHV+V7n99rv7I4C9dKv3XfUb6P/4pKU+bpqEnNIGAvQIsbOytHT03U4CFjZl1oVd2ChBm21k3em2mAHM+M+tCr+wVYM5nb+3ouZkChNlm1iXYK8JsDTVqF2YHT9G5/8cy+asPS+/Ox6Tj0EHvoUr3JBn46O95+2sPXHEl25BoqAlN2CfAwsa+mtFjswVY2JhdH3pnlwBhtl31ordmCzDnM7s+9M4+AeZ89tWMHpstQJhtdn1U7wizNdQoTphdP125LD1PP+W9aGTPd/5GCmcHvIdK887ztiHpV9uQvOciDb2jCQTsEGBhY0ed6KU9Aixs7KkVPTVfgDDb/BrRQ3sEmPPZUyt6aocAcz476kQv7REgzDa/VoTZGmo0rjA7cN7CqVMy+Ztf9/bX7v6//1x/ZPBXPui9aGT/xz4h5XPO0dBTmkDAXAEWNubWhp7ZKcDCxs660WszBQizzawLvbJTgDmfnXWj1+YKMOcztzb0zE4Bwmzz60aYraFGEw2zg13oeP2nMvmR7TJZbUNy4OfeQ5WeXhlYcbWc+fRn5ezlV4gUixp6TRMImCXAwsasetAb+wVY2NhfQ0ZgjgBhtjm1oCf2CzDns7+GjMAsAeZ8ZtWD3tgvQJhtfg0JszXUSGeYXe9OuSyTnnlaend8RXr/5q+lMNDvPVT6hXfJmZWf9vbXHn73Ig29pwkEzBBgYWNGHehFfgRY2OSnlowkewHC7OxrQA/yI8CcLz+1ZCRmCDDnM6MO9CI/AoTZ5teSMFtDjRIJswP9Kpw+Jb1/+U2Z/LWvSPcP/k/9kcEP/Ts58+nPSP/HPi6VKVM1jIQmEMhOgIVNdvacOZ8CLGzyWVdGlY0AYXY27pw1nwLM+fJZV0aVnQBzvuzsOXM+BQizza8rYbaGGiUdZge72PHG6zL5qw/L5J1fE/V/9VbpnSz9V18j/dd9Vs5++HKRQkHDqGgCgXQFWNik683Z8i/Awib/NWaE6QkQZqdnzZnyL8CcL/81ZoTpCjDnS9ebs+VfgDDb/BoTZmuoUZphdr27lYpM+sfvS+9jj0jvk38lhTOnvYdKFyzwtiE5c/0NUjr/Ag2jowkE0hFgYZOOM2dxR4CFjTu1ZqTJCxBmJ2/MGdwRYM7nTq0ZaToCzPnSceYs7ggQZptfa8JsDTXKJMwO9FsF2b1//S3pfeyrMun/fF+kUvHuzj77qx+W/k9/Vvqv+Q/e3du8IWCyAAsbk6tD32wUYGFjY9Xos6kChNmmVoZ+2SjAnM/GqtFnkwWY85lcHfpmowBhtvlVI8zWUKOsw+zgEDp+/jOZ/NhXvGC787VXvYcqk6fI6T+4Uc5e9ftS7uuT4YsXS2VSj4aR0wQC+gRY2OizpCUElAALG64DBPQJEGbrs6QlBJjzcQ0goFeAOZ9eT1pDgDDb/GuAMFtDjUwKs4PDmfRP/1t6Ht8hk7/x9fo2JP7jwwve7YXaQ4uXSOm9S7z3XsjNHdwargiaGI8AC5vxqPEcBJoLsLDh6kBAnwBhtj5LWkKAOR/XAAJ6BZjz6fWkNQQIs82/BgizNdTI1DDbH1rh7IBMeuZp6XrxR9Kx70Xp2rtHul58oeHI1T7bQxcvkWEv3F4iw++tBt6VKVM1SNEEAs0FWNhwdSCgV4CFjV5PWnNbgDDb7fozer0CzPn0etIaAsz5uAYQ0CtAmK3XM4nWCLM1qJoeZjccYrksna/u94Ltzpf2SueeF6XzpT3Suf8nUhgaGvOU0i+8qxpy+0G3F3IvlUpfnwZBmkBAhIUNVwECegVY2Oj1pDW3BQiz3a4/o9crwJxPryetIcCcj2sAAb0ChNl6PZNojTBbg6qVYXaTcasgu/MnP64G217AvbcaeP/0FZFyeWzIfd786nYl710ipcVLZOjixTK8+H1SnjZNgyxNuCTAwsalajPWNARY2KShzDlcESDMdqXSjDMNAeZ8aShzDpcEmPO5VG3GmoYAYXYayhM7B2H2xPy8Z+cpzG7GURg8K50v7fOC7fpWJS/tlY43XhepVMaG3HPmeiG3dyd37W7uIRVyz5ihQZwm8ijAwiaPVWVMWQqwsMlSn3PnTYAwO28VZTxZCjDny1Kfc+dRgDlfHqvKmLIUIMzOUj/auQmzozm1PMqFMLtpyH3m9KitSrrUHd0q8D74ZsOnlGfNHr0n98XVu7nL587RUAmasFmAhY3N1aPvJgqwsDGxKvTJVgHCbFsrR79NFGDOZ2JV6JPNAsz5bK4efTdRgDDbxKqM7hNhtoYauRxmN+MrvvOOdO55oXon98svSdeeH0nXiz+U4ttvNw65p0+X4YuXesH2wDUfF+ns9I4r9/V5QXfpvPkaKkUTJguwsDG5OvTNRgEWNjZWjT6bKkCYbWpl6JeNAsz5bKwafTZZgDmfydWhbzYKEGabXzXCbA01IsyOjlh867B0qe1KXvyhdOzbK1379nr7c6vwu91befr0arB97lwpzz5XyueeK+W587z/l7yP50h5zhzv/5UpU9s1x+OGCbCwMawgdMd6ARY21peQARgkQJhtUDHoivUCzPmsLyEDMEyAOZ9hBaE71gsQZptfQsJsDTUizJ44YseBn0vXvj3SuW+PFH/2M+l467AUjxwWFX53HD4sxWNHY52k0jvZC7tLKuBWAbgKu+fOk8rs2bXPzR0JwGfOjNU2BycjwMImGVdadVeAhY27tWfk+gUIs/Wb0qK7Asz53K09I09GgDlfMq606q4AYbb5tSfM1lAjwmwNiO2aKJelePSIdBx5S4oq3D7ylnS8dUgKhw9Jx1tvVUNv9ZgKwd96S9QLVkZ9q3R1idrL27uzW93lPaf6vjxnXu1O8Npd3+oxtbd3R0fUpjkuhgALmxhYHIpABAEWNhGQOASBiAKE2RGhOAyBCALM+SIgcQgCMQSY88XA4lAEIggQZkdAyvgQwmwNBSDM1oCouYniiRPVYPvoW9Jx+JAXcFeD7trd3kePSvHQwWogfupUrLOXZ8zwwu7BX/mglN51wdjn9vRKeepUb6uTypQptf9PGfm49vnK5Cmxzpv3g1nY5L3CjC9tARY2aYtzvjwLEGbnubqMLW0B5nxpi3O+vAsw58t7hRlf2gKE2WmLxz8fYXZ8szHPIMzWgJhxEx1vvB64s/uwd7e3d9e3d7f3oeqd4OqO8KNHtPZUBd7lKYGgu+8cqfT2VoPvqerzfVI+5xyRyZOrwbgfhPtBeeBj77G+Pq39S7MxFjZpanMuFwRYEgBsmAAAF2lJREFU2LhQZcaYlgBhdlrSnMcFAeZ8LlSZMaYpwJwvTW3O5YIAYbb5VSbMjlCjJ3Y9I3dt3u4dedWVy+WedTdJb093/ZmE2REQc3SIt6WJusP7+HEpvHNCiqdPS+H0qeq/M2ekcPIdKdQ+N/JY9Rjv41Pq2NNSODuQiEqlR4Xh1YBcBeXl2bNlcPmvxTuX2kqls0sq3V0iXV1S6ay97+qWSlfnyOe6u2uPdUrFeyxwfHfweerz1eeq/cwbvbGwiVcijkagnQALm3ZCPI5AdAHC7OhWHIlAOwHmfO2EeByBeALM+eJ5cTQC7QQIs9sJZf84YXabGjz7/D65b+tOeWjTrTJjWp98cetO7xm3rVlJmJ399Wt9D4rvqOC7Fm6rsPvMaSmcPDkSfNcek1MnA6H5aSn6gXjt8aLfxpnTVpmoYLsajnd7AXlhUreUOlTw3RkK0AOfqwfo1bC9HrSrwF197AXq3SLBoN17rBa2q5C+dk51rH+89znvMT94Hzlnpbu7/lhl6lSrjOmsuwIsbNytPSPXL0CYrd+UFt0VIMx2t/aMPBkB5nzJuNKquwKE2ebXnjC7TY1UeH3h+fPk2hWXe0eGw231Oe7MNv9Cd6mH9TvAAyF5YeCsFIaHRAYHq++HhqQwNCyFocHq//3PDQ6J+Md5jw0HHhv0HlPPk6FBKXhtVI8v1J7nfex9fuS5hUH/eeqx4cTuSM+yxt7d5h1Fqag72tW/YsfI/zs6pFKsfd4/pv5x7bjax9XnF702Rp4TPqb6ePgcoz+u9cU/j8IpFqtEhUL1n///8Ock8FjtuErw+Pr/a+Jt2qs/V7Xb6rxN2hl17gh9DZ5j5LnR+iqRxz7WaNTYwm5Rxl4fW6CvIuKNoZFbsK9N6jrjnEnyzplhGS5XRrcRsf4t7WsEza6nMc+NYhDq10TGPvq5retfmdST5bcPzm2JAGG2JYWim1YIEGZbUSY6aZEAYbZFxaKrVggQZptfJsLsFjXqHxiUu7dsl+WXLq2H2ftfOyCf37hNvrBhtSxaMN97NmG2+Rc6PTRPwAu5vVB82AvEO8vDMqNb5OjRU/XPjQThw6OD+DYBupw9GwjpG4f2I6F+LXivB/MjoX01nK8G92NC+0rFPFR6hAACCCCAAAIIIIAAAggggAAC4xdgrT9+u5SeSZgdIcz+5NVXyGWXLPaObBRmp1QrToMAAiYK9PeLlErm/iuXRdQ/9eb/UFbvg//3H+NzdrlQr/HXayCZ1yww8VsUfUIAAQQQQAABBBBAAIEYAoTZMbCyOZQwO0KY3e7O7GxKx1kRQAABBBBAAAEEEEAAAQQQQAABBBBAAAF3BAiz29SaPbPd+WJgpNkKsH9itv6cPX8C7J+Yv5oyouwE2DM7O3vOnD8B5nz5qykjylaAOV+2/pw9fwLsmW1+TQmz29Qo/IKPKtxWb7etWVl/Jntmm3+h00PzBVjYmF8jemiXAAsbu+pFb80WIMw2uz70zi4B5nx21Yvemi/AnM/8GtFDuwQIs82vF2F2hBo9sesZuWvzdu/Iq65cLvesu0l6e7oJsyPYcQgCUQVY2ESV4jgEogmwsInmxFEIRBEgzI6ixDEIRBNgzhfNiaMQiCrAnC+qFMchEE2AMDuaU5ZHEWZr0OfObA2INOG8AAsb5y8BADQLsLDRDEpzTgsQZjtdfgavWYA5n2ZQmnNegDmf85cAAJoFCLM1gybQHGG2BlTCbA2INOG8AAsb5y8BADQLsLDRDEpzTgsQZjtdfgavWYA5n2ZQmnNegDmf85cAAJoFCLM1gybQHGG2BlTCbA2INOG8AAsb5y8BADQLsLDRDEpzTgsQZjtdfgavWYA5n2ZQmnNegDmf85cAAJoFCLM1gybQHGG2BlTCbA2INOG8AAsb5y8BADQLsLDRDEpzTgsQZjtdfgavWYA5n2ZQmnNegDmf85cAAJoFCLM1gybQHGF2Aqg0iQACCCCAAAIIIIAAAggggAACCCCAAAIIIKBXgDBbryetIYAAAggggAACCCCAAAIIIIAAAggggAACCCQgQJidACpNIoAAAggggAACCCCAAAIIIIAAAggggAACCOgVIMzW60lrCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAgkIEGaPE/WJXc/IXZu3e8++6srlcs+6m6S3p3ucrfE0BPIpcPzESVm7/n55Ye8r3gAffmC9XHbJ4qaDjXL8/tcOyJYHd8jGO1fLjGl9+YRjVAg0EOgfGJS7t2yXbz+123v0T+64Sa5dcXlTq1bHhx+L8vVJURDIm8Czz++TG2/Z5A1r2ZKF8tCmW1v+XGk19ws+FuXrM2+WjAeBKHO4oFLU4/2v03ZzSCqAQJ4EdM75lMsXt+6ULz22axRRu3lknjwZCwI653xKU2USa+64T948dFTOmztLtm6+XRYtmA90igKE2ePAVl8I923dWV/0qB8O6u22NSvH0RpPQSCfAv4kbPmlS73ATX3D//zGbfKFDasbfqNvd3xw0RMldMinKqNyWSD4s8b/erh9zcqmvyBqdbx6/pd3fEfW3vAx7xex6ufaho3bmIi5fIE5NvbwzyQVRu9+bk/TmxNazf3Uz6+H/uIv5Q9XfdQLw6N8fTrGzXBzLtBuDhceftTjg+EDYXbOLyKGN0pA55zPD7PJK7jIXBXQOefzg+xWuYarzmmPmzB7HOLqh8uF58+r3xEXXuCMo0megkDuBMJ3UIcXLuEBRz2eO7Nzd6kwoAgCKhzbcO82WXfzqvovg1r9InU8x6u/omgVjkfoJocgYI2ACq9/+sbB+o0I7X7hGmfu1+7nnTVIdBSBiAJR53B+c1GO94+54/+5Tu7cuI2fTxFrwWH2C4xnDtdujsjNd/ZfF4xg/AI653w9kyZ5fyn7yauvaPkX5+PvLc+MKkCYHVWqdlyjBUq7BVDMU3A4ArkQaPRLnlYTqajHE2bn4vJgEDEFGv2caXUnqY7jY3aRwxGwSiD886jV3dRx537+n55u3LCahY5VVwWdHa9A1Dmc336744M/w2ZO7/O2rOOXreOtDs+zTUDHHC48RwxvM8IWI7ZdFfR3IgI653z+zyR/G1XVL7Ydnkh1xv9cwuyYdv6CJvibGMLsmIgc7oSAWqg8/uTTo/5ku12YHeV4wmwnLh8GGRJodN23C7PDe8s3O567SLncXBQI32kdJcxuN/cLbodFUODiVeXumHXO+dR2PcG7TNm2x93rytWRJznnU6b8wtXVK8vdceuc8ynF4BrLX0fNmzOTbYdTvsQIs2OCx707J2bzHI5AbgTa3XUTHmjU4wmzc3OJMJAYAkncpaNOzwQsRhE4NFcCOu/SCb/gD78gytWlwmAiCESdw/lNtTr+mt/9cP1FtcKnZt/sCMXgEOsFkprzBWHC4Z71aAwAgRYCOud84TBbfcy2w9lcfoTZ43CPs2/iOJrnKQjkQiDKfojBgUY9njA7F5cHg4gpkMT+iQTZMYvA4bkS0Ll/onrRx/BbuP1c4TEYBEICUedw/tPiHM+d2VxurgkkMecLGxJmu3ZVuT1enXM+JRneo77RXye5LZ7O6Amzx+Hc6hXtx9EcT0EglwLtXqk+/Cdu7Y5vtgDKJR6DQqCBQLtXtlePHzx8rL61T6vjuXOUS8x1gXavbK8WPjuffFoe2nSrqLC61dxPBQ9f3vEdWXvDx6S3p1v88G3l1VfUXyzcdW/Gn2+BdnO48c75lBphdr6vHUbXWEDnnE99De16ardcf+1veydji1SuOtcEdM75lF1wzaU+Vi8IufzSpcz5Ur6wCLPHCa4WOXdt3u49mw3fx4nI03IvENw/VA02+OehjfZra3V8+DHV3ueuW8HeVLm/ihigL+CHBd9+arf3qfCevOEwu9Xx/tffm4eOjgLma4rrzSUBFVDfeMsmb8jLliysB9fq43CY7X+u2dyPF9dy6cphrI0EdM75gu0TZnO9uSigc84Xbiu8JnPRlzG7J6Bzzhf+mmL9lM31RJidjTtnRQABBBBAAAEEEEAAAQQQQAABBBBAAAEEEIghQJgdA4tDEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBLIRIMzOxp2zIoAAAggggAACCCCAAAIIIIAAAggggAACCMQQIMyOgcWhCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAtkIEGZn485ZEUAAAQQQQAABBBBAAAEEEEAAAQQQQAABBGIIEGbHwOJQBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgWwECLOzceesCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAjEECLNjYHEoAggggAACCCCAAAIIIIAAAggggAACCCCAQDYChNnZuHNWBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgRgChNkxsDgUAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAIBsBwuxs3DkrAggggAACCCCAAAIIIIAAAggggAACCCCAQAwBwuwYWByKAAIIIIAAAggggAACCCCAAAIIIIAAAgggkI0AYXY27pwVAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAIIYAYXYMLA5FAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQyEaAMDsbd86KAAIIIIAAAggggAACCCCAAAIIIIAAAgggEEOAMDsGFocigAACCCCAAAIIIIAAAggggAACCCCAAAIIZCNAmJ2NO2dFAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQiCFAmB0Di0MRQAABBBBAAAEEEEAAAQQQ+P/bu58Qq6o4DuBnFUkN/gnK/lH+WahhCWHMKiRXGhIEiq0qw0zbNIniFJIRNTKiuVGZJLGFGBMIFonRP5ECMUpDyCCSQjATskIxbRXnxn2893xv/hzfOzPMfO5q5r17zu+cz71v8+XyuwQIECBAgACBkREQZo+Mu6oECBAgQIAAgXEn8Offl8LqDW+HU6fP1Oz9jfUrwqLHOsNrW/YUn7++bkWYcPNNlXN+/vVcWLV+a1jz9BPhycWPhoHmid9v6+sP7+4/1NR37uzpYdumF8P2dz4IH39+7LrzHl/YWawhHnFN8Zy92zeE+fNmVc795+q/Tb8rTzpw6GjY2Pv/nhodd95xW+jd+ELo3bG/YhLXtmtzV5g8saOyj+gT91V9lHssv6teT32tcj/VpuPu5rNhAgQIECBAgACBMSEgzB4Tl9EmCBAgQIAAAQKjW6A+kC5XGz/fd+CzsG718nD12rUi7F62ZEFNeBuD23i8vGpZGMo81aFtGXyvXbWsYRg99fYpxbyNjuqA+LmnFtec983JH8MzL20uhtUH3QPN1fnwnOuC6bJO/VrKwLo+jC4Nfvv9j1AfZg+0n9F9h1gdAQIECBAgQIAAgcEFhNmDGzmDAAECBAgQIEDgBgXiU8r9Hx2pPHXcbLoYEnf37A59vWvDjPvuCvH/rX39lXFDnaecvxVh9sxpd4fvTv0U1q1ZXqypDJ8fnDMj7O0/HHq6V9YE5a0Msy9fuRouX74Sli5ZUKkRQ+5bb5kQvvj6RCX4bxaI3+BlM5wAAQIECBAgQIDAqBIQZo+qy2ExBAgQIECAAIGxKVAfUg+0yxjWnr9wMXQ9vzR0bdpR86T2cOaJNVoRZsenqX85e75Ycvl0+Jad74f4tHYM3tsZZsea9987NRz79oei9Ul8er37rd1F7Rjyl0+xC7PH5u/GrggQIECAAAECBGoFhNnuCAIECBAgQIAAgbYLNOrp3KgXdFxIdRuN+hYbw5lnKGH2UHpmxzD7oQdmhld7doc3u1eGg4e/KgLm+Fns5d3uMPvZ5YuK9iuxVcrZcxeKYL38rD7MHmg/ema3/TZXgAABAgQIECBAoM0Cwuw2A5ueAAECBAgQIECgVqC633T8pr4fdfwsthPZ+d7BSruRRoZDmadVT2aXL5Y8fuJ0mDSxI/S8sjJc/OtSljA7Pg1etFf58MuCIQbqUyZ11PQX92S2XxkBAgQIECBAgMB4EBBmj4erbI8ECBAgQIAAgVEq0KxtSH2v7MGW32yeVobZ9S+fLP9v95PZMcwu9/HIvFlFq5Pyf21GBrszfE+AAAECBAgQIDCWBITZY+lq2gsBAgQIECBAYJQKHD32fZg7e3qYPLGjZoUxEC7bd8SXK5ZHszB7uPO0MsyOa9t34NOweGFnsY+cYXas/cmR42HmtHuKl1AKs0fpjW5ZBAgQIECAAAECbRUQZreV1+QECBAgQIAAAQJRILbJ2Ni7J+zdviHMnzerQClbY8S/48sNq3s6NwuzhztPq8Ps6quZO8yuri3M9rsiQIAAAQIECBAYjwLC7PF41e2ZAAECBAgQIDACAmUQXV26Ub/s+P1AbUaGM89gYfZQXwAZe2bXH60Is8v1nTp9ppg+Pr2+a3NX8eT3tr7+4rPYVqT+aBZmewHkCNzYShIgQIAAAQIECGQTEGZno1aIAAECBAgQIECAAAECBAgQIECAAAECBFIFhNmpcsYRIECAAAECBAgQIECAAAECBAgQIECAQDYBYXY2aoUIECBAgAABAgQIECBAgAABAgQIECBAIFVAmJ0qZxwBAgQIECBAgAABAgQIECBAgAABAgQIZBMQZmejVogAAQIECBAgQIAAAQIECBAgQIAAAQIEUgWE2alyxhEgQIAAAQIECBAgQIAAAQIECBAgQIBANgFhdjZqhQgQIECAAAECBAgQIECAAAECBAgQIEAgVUCYnSpnHAECBAgQIECAAAECBAgQIECAAAECBAhkExBmZ6NWiAABAgQIECBAgAABAgQIECBAgAABAgRSBYTZqXLGESBAgAABAgQIECBAgAABAgQIECBAgEA2AWF2NmqFCBAgQIAAAQIECBAgQIAAAQIECBAgQCBVQJidKmccAQIECBAgQIAAAQIECBAgQIAAAQIECGQTEGZno1aIAAECBAgQIECAAAECBAgQIECAAAECBFIFhNmpcsYRIECAAAECBAgQIECAAAECBAgQIECAQDYBYXY2aoUIECBAgAABAgQIECBAgAABAgQIECBAIFVAmJ0qZxwBAgQIECBAgAABAgQIECBAgAABAgQIZBMQZmejVogAAQIECBAgQIAAAQIECBAgQIAAAQIEUgWE2alyxhEgQIAAAQIECBAgQIAAAQIECBAgQIBANgFhdjZqhQgQIECAAAECBAgQIECAAAECBAgQIEAgVUCYnSpnHAECBAgQIECAAAECBAgQIECAAAECBAhkExBmZ6NWiAABAgQIECBAgAABAgQIECBAgAABAgRSBYTZqXLGESBAgAABAgQIECBAgAABAgQIECBAgEA2AWF2NmqFCBAgQIAAAQIECBAgQIAAAQIECBAgQCBVQJidKmccAQIECBAgQIAAAQIECBAgQIAAAQIECGQTEGZno1aIAAECBAgQIECAAAECBAgQIECAAAECBFIFhNmpcsYRIECAAAECBAgQIECAAAECBAgQIECAQDYBYXY2aoUIECBAgAABAgQIECBAgAABAgQIECBAIFVAmJ0qZxwBAgQIECBAgAABAgQIECBAgAABAgQIZBMQZmejVogAAQIECBAgQIAAAQIECBAgQIAAAQIEUgWE2alyxhEgQIAAAQIECBAgQIAAAQIECBAgQIBANgFhdjZqhQgQIECAAAECBAgQIECAAAECBAgQIEAgVUCYnSpnHAECBAgQIECAAAECBAgQIECAAAECBAhkExBmZ6NWiAABAgQIECBAgAABAgQIECBAgAABAgRSBYTZqXLGESBAgAABAgQIECBAgAABAgQIECBAgEA2AWF2NmqFCBAgQIAAAQIECBAgQIAAAQIECBAgQCBVQJidKmccAQIECBAgQIAAAQIECBAgQIAAAQIECGQTEGZno1aIAAECBAgQIECAAAECBAgQIECAAAECBFIFhNmpcsYRIECAAAECBAgQIECAAAECBAgQIECAQDYBYXY2aoUIECBAgAABAgQIECBAgAABAgQIECBAIFXgP1ZFjsUftaLoAAAAAElFTkSuQmCC", "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = px.line(data_frame=bio.get_history(), x=\"SYSTEM TIME\", y=[\"A\", \"B\", \"C\"], \n", " title=\"Reaction A + B <-> C . Changes in concentrations with time\",\n", " color_discrete_sequence = ['red', 'violet', 'green'],\n", " labels={\"value\":\"concentration\", \"variable\":\"Chemical\"})\n", "fig.show()" ] }, { "cell_type": "markdown", "id": "ea1bbd14-90d4-480d-946c-f0ce30d61df1", "metadata": {}, "source": [ "## For more in-depth analysis of this reaction, including variable time steps, see the experiment _\"reactions_single_compartment/react_3\"_ " ] }, { "cell_type": "code", "execution_count": null, "id": "57b81064", "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.8.10" } }, "nbformat": 4, "nbformat_minor": 5 }