Files
felice-models/scripts/networks/test_methods.ipynb
F.M. Quintana Velazquez 9fabbdefc0 Initial commit
Co-authored-by: Aradhana Dube <a.dube@rug.nl>
Co-authored-by: Renzo I. Barraza Altamirano <r.i.barraza.altamirano@rug.nl>
Co-authored-by: Paolo Gibertini <p.gibertini@rug.nl>
Co-authored-by: Luca D. Fehlings <l.d.fehlings@rug.nl>
2026-02-27 17:43:31 +01:00

145 lines
58 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"id": "dbc7a212",
"metadata": {},
"source": [
"# Simultaneuos & sequential mode\n",
"\n",
"In this script we test that both simultaneous and sequential model perform the same output with the Boomerang neuron model"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "868157a6",
"metadata": {},
"outputs": [],
"source": [
"import jax.random as jrandom\n",
"import matplotlib.pyplot as plt\n",
"\n",
"from felice.networks.implicit import Boomerang"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "51adce89",
"metadata": {},
"outputs": [],
"source": [
"x = jrandom.randint(jrandom.key(0), (20, 1), 0, 15)\n",
"model = Boomerang(\n",
" d_model=1,\n",
" d_state=16,\n",
" d_inner=2,\n",
" max_iters=None,\n",
" dt=1e-3,\n",
" key=jrandom.key(42),\n",
")\n",
"out_parallel = model(x)\n",
"out_sequential = model.sequential(x)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "8af5dc49",
"metadata": {},
"outputs": [],
"source": [
"import equinox as eqx\n",
"import jax.numpy as jnp\n",
"\n",
"\n",
"def loss_fn(model, x):\n",
" output = model(x)\n",
" return jnp.sum(output[-1])\n",
"\n",
"\n",
"gradient = eqx.filter_grad(loss_fn)(model, x)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "3ab81e3c",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA0wAAAESCAYAAADOhlUZAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAX6lJREFUeJzt3Xd8FHX+x/HX7ia7KaQAIZXQewklaAhgJQiICnYUxV4QPQQLoD9BD4RTznJW1BNErMgpcoIgBAGRKr1DqKEkoaWXze7O7w/u4kUSIEgyKe/n4zEPyOx3vvOeYdjNZ2fmOxbDMAxERERERETkDFazA4iIiIiIiFRWKphERERERERKoYJJRERERESkFCqYRERERERESqGCSUREREREpBQqmEREREREREqhgklERERERKQUXmYHqCgej4cjR44QEBCAxWIxO46IiIiIiJjEMAyysrKIjIzEaj37OaQaUzAdOXKE6Ohos2OIiIiIiEglkZycTP369c/apsYUTAEBAcDpnRIYGGhyGhERERERMUtmZibR0dFFNcLZ1JiC6b+X4QUGBqpgEhERERGR87pVR4M+iIiIiIiIlEIFk4iIiIiISClUMImIiIiIiJRCBZOIiIiIiEgpVDCJiIiIiIiUQgWTiIiIiIhIKVQwiZRRdsoenNmnzI4hIiIiIhVABZNIGRzesRr7+5dy4O1rzY4iIiIiIhVABZNIGexY8g12i4vmBdtI3r7a7DgiIiIiUs5UMImcp5wCF08eSWCrpyEAqb9MMzmRiIiIiJQ3FUwi5+n7DUfIKnDxtvtmABoenYvhdpmcSkRERETKkwomkfNgeNz88OtaAGKuuoUMw596xkl2rfrR5GQiIiIiUp4uqGB69913adSoET4+PsTFxbF6den3clx55ZVYLJYzpn79+hW1MQyDMWPGEBERga+vLwkJCezevbtYPydPnmTQoEEEBgYSHBzMAw88QHZ29oXEFymz3Sv+zacZ9/Oa/UMGdWvB1jo9Ache84XJyURERESkPJW5YPr6668ZMWIEY8eOZd26dXTo0IHevXuTlpZWYvtvv/2Wo0ePFk1btmzBZrNx6623FrV59dVXeeutt5g8eTKrVq3C39+f3r17k5+fX9Rm0KBBbN26lQULFvDDDz+wdOlSHn744QvYZJGyy1/xIV4WD2EhdQny86ZWl0GkGLVZdaoWTpfH7HgiIiIiUk4shmEYZVkgLi6OSy65hHfeeQcAj8dDdHQ0TzzxBKNGjTrn8m+++SZjxozh6NGj+Pv7YxgGkZGRPPXUUzz99NMAZGRkEBYWxieffMLAgQPZvn07bdq0Yc2aNXTp0gWAefPmce2113Lo0CEiIyPPud7MzEyCgoLIyMggMDCwLJssNdzJI3sI+iAWm8Vg9y2JNG/XBbfbQ4+/LeBolosP7o6ld9tws2OKiIiIyHkqS21QpjNMTqeTtWvXkpCQ8HsHVisJCQmsWLHivPr4+OOPGThwIP7+/gDs27ePlJSUYn0GBQURFxdX1OeKFSsIDg4uKpYAEhISsFqtrFq1qsT1FBQUkJmZWWwSuRB7572LzWKwyTuG5u1OH4M2m5XrOzUAYNb6w2bGExEREZFyVKaC6fjx47jdbsLCworNDwsLIyUl5ZzLr169mi1btvDggw8WzfvvcmfrMyUlhdDQ0GKve3l5UadOnVLXO3HiRIKCgoqm6Ojoc2+gyB+4CwtocnAmADkx9xV7bUDHKGy4yd+xgMyTqWbEExEREZFyVqGj5H388ce0b9+eSy+9tNzXNXr0aDIyMoqm5OTkcl+nVD/bEj+jDhmkUZtOve4s9lqbyEC+qvUGU70msnvhVJMSioiIiEh5KlPBFBISgs1mIzW1+LfpqamphIef/R6OnJwcvvrqKx544IFi8/+73Nn6DA8PP2NQCZfLxcmTJ0tdr8PhIDAwsNgkUlaWDZ8BsDPqZnx8fM543dnoagACdn9XoblEREREpGKUqWCy2+3ExsaSmJhYNM/j8ZCYmEh8fPxZl/3mm28oKCjgrrvuKja/cePGhIeHF+szMzOTVatWFfUZHx9Peno6a9euLWqzaNEiPB4PcXFxZdkEkfO2/3gOd6Q/xouF99D4msdKbNPs6ntwGVZaFO4gZe+WCk4oIiIiIuWtzJfkjRgxgo8++ohp06axfft2hgwZQk5ODvfdd/r+jsGDBzN69Ogzlvv4448ZMGAAdevWLTbfYrHw5JNPMn78eGbPns3mzZsZPHgwkZGRDBgwAIDWrVvTp08fHnroIVavXs2vv/7K448/zsCBA89rhDyRC/H5qgNk4cf+ZndRv2HTEtuERTZgi09nAA4umVaR8URERESkAniVdYHbb7+dY8eOMWbMGFJSUujYsSPz5s0rGrTh4MGDWK3F67CdO3eybNkyfvrppxL7fPbZZ8nJyeHhhx8mPT2dHj16MG/evGKXQH3++ec8/vjj9OzZE6vVys0338xbb71V1vgi5yXfWciM3w4BcHfXhmdv2/oW2PAbUQdnY3hewWKt0FsDRURERKQclfk5TFWVnsMkZbHum1ewbf6KL31u4+VRo7BZLaW2zcxMx/ZaC/wtBey5YRZNO19VgUlFREREpKzK7TlMIjWCYVBvx3Q6WPfSr4HnrMUSQGBgMFsDLwfg0Jp/V0RCEREREakgZb4kT6S6S1ozj2buZHIMB237Pnxey3i6D+e6768gJa0VK90evGz6LkJERESkOtBvdSJ/kLPsAwA21u5Nnbr1zmuZ2EviOezbkuM5Tn7dc6I844mIiIhIBVLBJPI/MlIP0iZjKQDBVww57+W8bVau73B6xMbZ6w6USzYRERERqXgqmET+x+557+JtcbPFqw2tO5792WJ/dFP7Okzymszo7TeRk3GynBKKiIiISEVSwSTyH55CJw33zwAgs909WCxnH+zhjzo0CucS772EWDLY8fPn5RFRRERERCqYCiaR//hlz0meK7iX+XSl4zV3l3l5i9XK4QY3AOCzfebFjiciIiIiJlDBJPIf01cdYoGnCytjX8fPz/+C+mh45T0AtM7fyPEjey9mPBERERExgQomEeDQqVwW7UgF4K6uDS+4n/qNW7HVuy1Wi8GeRdMuVjwRERERMYkKJhFg37cv8hfbTPo1hqb1av2pvrKa3wRA6L5ZFyGZiIiIiJhJBZPUeAW5GXRKns6TXt9yb9PcP91fy56DcRpeNHbv58C2VRchoYiIiIiYxcvsACJm2/7TFDqSSzLhdLryxj/dX+26oSwI6s/mExYcSYUMbXMRQoqIiIiIKXSGSWo2wyB4y+l7jfY1HoiX18X5DsGZ8DJvuW/ii21OPB7jovQpIiIiIhVPBZPUaPvW/0wj1z7yDW9a93n0ovXbs3UoAQ4vDqfnsWa/HmIrIiIiUlWpYJIaLX3p+wCsD+pJvbCIi9avj7eNG9rWoY91NSkL375o/YqIiIhIxdI9TFJjZZ04QttTi8ACtS4bctH7v6P+cdpte5PsI77k5z6Nj9+fG31PRERERCqezjBJjTVvYzIz3Zex3taedl2uuOj9t4m7hqPUoxZ5bF8y46L3LyIiIiLlTwWT1EiGYfDBhnyecz3E5p7TsVgsF30dVpuNfZH9Tv99swomERERkapIBZPUSCv3niQpLRs/u40bO9cvt/VEXjYYgDY5q0k/drTc1iMiIiIi5UMFk9RIh3+cRIxlDzd2iiLAx7vc1tOodSy7bU3xtrjZ9fOn5bYeERERESkfKpikxjl+cAe3HH+fWfYx3Nu2/Mc9Od54AABBu78r93WJiIiIyMWlgklqnAPz3wJggyOW5i1al/v6ml19D27DQl5BAckpx8t9fSIiIiJy8ahgkhqlMD+HZoe/P/33zvdXyDrrRTZkeORnDHCO57utpypknSIiIiJycahgkhpl+4JPCCKbI9Sj09W3Vdh6r+jSEYBZ6w9jGEaFrVdERERE/hwVTFKj+G/6BICkBrdht5ffYA9/1KddOL7eNo4fT2Pbrt0Vtl4RERER+XNUMEmNkbz5F5oW7qLA8KJ5nyEVum5/hxfjIn5ljeMxshe+UqHrFhEREZELp4JJaoxfNmzniFGHdQFXEhEZXeHrb966Aw5LIc2P/UShs6DC1y8iIiIiZaeCSWqEnAIXE5MaclnBPzB6/82UDG173MAJgqhDJtuWfW9KBhEREREpGxVMUiN8v+EIWQUuousG0LVtM1MyeHnb2R3aG4DC9V+ZkkFEREREykYFkwk8HoN/rT3EiWxdllURDI+bnUtn4IWLu7o2xGq1mJalbvzdALTN/IWsjJOm5RARERGR86OCyQTPz9rMlJnfs/KzF82OUiMkrZzNSznj+NHxHLd2jjI1S7MOPThojcLX4mT7z1+amkVEREREzu2CCqZ3332XRo0a4ePjQ1xcHKtXrz5r+/T0dIYOHUpERAQOh4MWLVowd+7cotezsrJ48sknadiwIb6+vnTr1o01a9YU6+Pee+/FYrEUm/r06XMh8U13R0sL39v/j34p77Fr7c9mx6n28pd/BEBKSFeC/B2mZrFYrRxucAMAvttnmppFRERERM6tzAXT119/zYgRIxg7dizr1q2jQ4cO9O7dm7S0tBLbO51OevXqxf79+5k5cyY7d+7ko48+Iirq92/6H3zwQRYsWMD06dPZvHkz11xzDQkJCRw+fLhYX3369OHo0aNF05dfVs1v6GPatmdd7dPFnvXHp/G4XCYnqr5OHk6iTdZyAEKvGmpymtMaXnkf4wrv4oHMB0jJyDc7joiIiIicRZkLptdff52HHnqI++67jzZt2jB58mT8/PyYMmVKie2nTJnCyZMnmTVrFt27d6dRo0ZcccUVdOjQAYC8vDz+9a9/8eqrr3L55ZfTrFkzXnzxRZo1a8b7779frC+Hw0F4eHjRVLt27QvY5Mqh8cBXyDT8aOZK4rdZb5kdp9raN/8dbBaDjd4dadmus9lxAIhs1JJN0YNIM2oze+Phcy8gIiIiIqYpU8HkdDpZu3YtCQkJv3dgtZKQkMCKFStKXGb27NnEx8czdOhQwsLCaNeuHRMmTMDtdgPgcrlwu934+PgUW87X15dly5YVm7d48WJCQ0Np2bIlQ4YM4cSJE6VmLSgoIDMzs9hUmdQLb8DWlo8D0HzL62ScSDU5UfXjdubT5OC/AMjpcK+5Yf7gxk71Afhu/RGTk4iIiIjI2ZSpYDp+/Dhut5uwsLBi88PCwkhJSSlxmb179zJz5kzcbjdz587lhRde4LXXXmP8+PEABAQEEB8fz7hx4zhy5Ahut5vPPvuMFStWcPTo0aJ++vTpw6effkpiYiKvvPIKS5YsoW/fvkWF1x9NnDiRoKCgoik6uuIfVHouXW59hn3WhtQmix1fjjI7TrWzLfEzapNJGrXp3OtOs+MU0699BDd7Lef54yPZu+3s9wCKiIiIiHnKfZQ8j8dDaGgoH374IbGxsdx+++08//zzTJ48uajN9OnTMQyDqKgoHA4Hb731FnfccQdW6+/xBg4cyA033ED79u0ZMGAAP/zwA2vWrGHx4sUlrnf06NFkZGQUTcnJyeW9qWXm7W0nJ2EiAF2OfUfSllUmJ6pe0rYuBmBH1C34OMwd7OGPgvy8uTtwHT1sW0n5ZbrZcURERESkFGUqmEJCQrDZbKSmFr98LDU1lfDw8BKXiYiIoEWLFthstqJ5rVu3JiUlBafTCUDTpk1ZsmQJ2dnZJCcns3r1agoLC2nSpEmpWZo0aUJISAhJSUklvu5wOAgMDCw2VUbtuvVjadANjHXdy3NLnRiGYXakauHAiRweOH4H1zlfpnGfJ8yOUyIj5jYAmhydi6eUM6UiIiIiYq4yFUx2u53Y2FgSExOL5nk8HhITE4mPjy9xme7du5OUlITH4ymat2vXLiIiIrDb7cXa+vv7ExERwalTp5g/fz79+/cvNcuhQ4c4ceIEERERZdmESqn5/R/yL2sfVh/MZNYGDQJwMXy+6iAAIc0vJTq6oclpStbmytvIxI9wjrNt5Tyz44iIiIhICcp8Sd6IESP46KOPmDZtGtu3b2fIkCHk5ORw3333ATB48GBGjx5d1H7IkCGcPHmSYcOGsWvXLubMmcOECRMYOvT3IZ7nz5/PvHnz2LdvHwsWLOCqq66iVatWRX1mZ2fzzDPPsHLlSvbv309iYiL9+/enWbNm9O7d+8/uA9NFBPnyRM9mALw2ZyNZmenmBqri8nMymbdmGwB3d62cxRKAw8efHXV6ApCz5guT04iIiIhISbzKusDtt9/OsWPHGDNmDCkpKXTs2JF58+YVDQRx8ODBYvceRUdHM3/+fIYPH05MTAxRUVEMGzaMkSNHFrXJyMhg9OjRHDp0iDp16nDzzTfz8ssv4+3tDYDNZmPTpk1MmzaN9PR0IiMjueaaaxg3bhyOSnZvyoV6oEdj9q78gb/kvsPWzxPoOmTyuReSEm3/8X1+8kzis1o3c2XLa82Oc1YBl9wJ8/9N61OLyM/LwcfX3+xIIiIiIvI/LEYNuWkmMzOToKAgMjIyKu39TJsWzyRm8QO4DCuHBy6gYesuZkeqegyD5PHtiXYns6T5SK4Y9JzZic7K43ZzbHwLwozjrI17k9i+95kdSURERKTaK0ttUO6j5Mn5i7nyFjb4dcPL4iFr1lMY/3Pfl5yfPWvmEu1OJtvwoV2fh82Oc05Wm419kdfxq7stP+93mh1HRERERP5ABVMlE3rrGxQY3rQr2MC6edPMjlPl5Cz7AIANtXtTt26IyWnOT8gN4xlU+DyTk6M5kV1gdhwRERER+R8qmCqZyMatWN/gXgDqrx5HbnaGuYGqkIzUA7TJ+AWA2lcOMTnN+WsWFkBM/SBcHoM5m4+eewERERERqTAqmCqhjne8yBFLKGGcYOOXY8yOU2XsmfcuXhYPm73a0aZDV7PjlMmAjlHUI51jyz83O4qIiIiI/A8VTJWQj18tUuPHAnAqeQf7jmWbnKjy87jdRO7/FoDMdvdgsVhMTlQ2N7T041fHEzyV9SrJe7aZHUdERERE/kMFUyXVMeFO/hr2Dx5z/oWXfthGDRnM8IIt23OS6/Ne4g3jTjr1vsvsOGUWUi+MXb4dADi4RPeuiYiIiFQWKpgqKYvVyl233IK3zcLincdI3J5mdqRKbfrKAxwjmIzYx/Hz9TM7zgVxtrkFgPrJ/9YIiSIiIiKVhAqmSqxJvVo8eFkTQsjg2LfPkJ+XY3akSunwyWwSt6cCcFfXhianuXCtrrqTPMNOQ+MwO9b/YnYcEREREUEFU6X3+JVNmeE7gTtc37P+q7+aHadSSpkxnE+9Xuae+ik0C61ldpwL5hdQm+1BlwGQvmK6yWlEREREBFQwVXr+Pt6kdxkGQMf9Uziyf6fJiSqXgtwMWqb8mx62rfRrFWR2nD/N3vkOAFoen4+zQM9kEhERETGbCqYqoFPfB9hub4+vxcnRb542O06lsn3+x9QijwNE0unKAWbH+dNad+/PSQLxN3JZt2aZ2XFEREREajwVTFWAxWrFd8BruAwrsTlL2bh0ltmRKgfDoPbW0yPK7W88EG8vL5MD/Xk2bzuzW03ikoL3mH6gttlxRERERGo8FUxVRKM2cawNOz2KWvDPz+MsyDc5kfn2r0+koWs/eYad1n0fMTvORXPJ5X3JpBYLtqeSmV9odhwRERGRGk0FUxXS+s6JnCSQhsYh1nwzyew4pstY+j4A64J6ERoabnKai6dNRCAtwmrhdHmYv2G/2XFEREREajQVTFVIYHAIezqOZIqrDyN2tSElo+aeZco+cZg2p34GIKBH9Tm7BGCxWHi46Sm+s4+hxc8Pmx1HREREpEZTwVTFxN4wlDlRw0h1+jBh7naz45hm1vZsRhY+xA/evWl/yeVmx7noesS0pJM1iXb56zl6eL/ZcURERERqLBVMVYzVauGlG9piscDsjYf5bdtusyNVOMMw+GR1Ct96LufEVa9isVjMjnTRhTdqzU7vNtgsBnsXTTM7joiIiEiNpYKpCmoXFcTQjt586f0ytWfeiquwZg0MsHLvSZLSsvGz27ixc5TZccpNVsubAAjdNwvDMExOIyIiIlIzqWCqoh7q2Z42tgM09exj9czXzI5ToVzfD+MB21xujwki0Mfb7DjlpsXVgyk0bDT37GXP1jVmxxERERGpkVQwVVFBIRHsajscgHY73uJ46mGTE1WM4we2cVnmv3ne63MGtQ8wO065CqwTxvZacQCk/jrd5DQiIiIiNZMKpiqs843D2WtrQqAlh6SvRpodp0IcnP8OAOt9LqFZy3Ympyl/RsztADQ5Ohe3221yGhEREZGaRwVTFWbz8sLV51UALj35A9t/W2xuoHJWmJ9NsyOzAHB2vt/cMBWk9eW3Mp94xjnvZHnSMbPjiIiIiNQ4KpiquBaX9GJtcG+sFgPrvGeq9VmIHQs+IZAcDhFK56tvMTtOhbD7+rOs49+Z6+nKdxtTzI4jIiIiUuOoYKoGGg38O9n4gjOX75etMztO+TAMam2aCkBSg9tweFffwR7+aECn0yMBztuSQq7TZXIaERERkZpFBVM1UDe8AYviptDPOYG/LjnFqRyn2ZEuuuQty2hcmESB4U2LPo+aHadCdW4QTFxwFg+4v2HD4u/MjiMiIiJSo6hgqiauvaYPzcJrk55byN9/2ml2nItu9rZ0fnB3ZXVAApGR0WbHqVAWi4Wn6/7KU94zcayfanYcERERkRpFBVM14WWz8tINbbFTSODad9i9aaXZkS6aXKeLydvsPF74FzzXv2V2HFNEXH4vAO1zV3I8TfcyiYiIiFQUFUzVSFyTunwUMZuRXl/h/PcIPG6P2ZEuiu83HCGrwEWjun5c1rye2XFMUb9lLPtsTbBb3OxcpGcyiYiIiFQUFUzVTJubnyPPsNO2cCurf/jQ7Dh/muFx41k0gcaWo9zVtSFWq8XsSKY50XQAAMFJuo9JREREpKKoYKpm6tVvxuYmDwLQdP3fyEg/aXKiPydpxfcMyv+S7+xjuKVjqNlxTNX0qnvwGBbaurayP2mb2XFEREREagQVTNVQx9tf4LAlnHqcYsuX/2d2nD/FueL0WbJNIf0IDqhlchpz1Y5oxA7fjgAkL5lmbhgRERGRGuKCCqZ3332XRo0a4ePjQ1xcHKtXrz5r+/T0dIYOHUpERAQOh4MWLVowd+7cotezsrJ48sknadiwIb6+vnTr1o01a9YU68MwDMaMGUNERAS+vr4kJCSwe/fuC4lf7dl9/Dh1xTgALkn5ir3bq+Czmdwu9i/8gNZZpwevCL16iMmBKoeCNreSbfiQdPQEHo9hdhwRERGRaq/MBdPXX3/NiBEjGDt2LOvWraNDhw707t2btLS0Ets7nU569erF/v37mTlzJjt37uSjjz4iKiqqqM2DDz7IggULmD59Ops3b+aaa64hISGBw4cPF7V59dVXeeutt5g8eTKrVq3C39+f3r17k5+ffwGbXf21u/I2Nvl1xW5xc2rWSAyjivxy7fFwYMl0jk7sSKNlz2K1GKx0dKNV285mJ6sUWve6lyv5iJeyb2TtwVNmxxERERGp9ixGGX+TjouL45JLLuGdd94BwOPxEB0dzRNPPMGoUaPOaD958mQmTZrEjh078Pb2PuP1vLw8AgIC+P777+nXr1/R/NjYWPr27cv48eMxDIPIyEieeuopnn76aQAyMjIICwvjk08+YeDAgWf0W1BQQEFBQdHPmZmZREdHk5GRQWBgYFk2uco6um8b2z55nPHOOxk+8Fpu6BBpdqSz2nokg3/OW8XLB+7Cz1LAKaMWKyLuosttIwmtU8fseJXGM99s5Ju1h7jj0gZMvKm92XFEREREqpzMzEyCgoLOqzYo0xkmp9PJ2rVrSUhI+L0Dq5WEhARWrFhR4jKzZ88mPj6eoUOHEhYWRrt27ZgwYQJutxsAl8uF2+3Gx8en2HK+vr4sW7YMgH379pGSklJsvUFBQcTFxZW63okTJxIUFFQ0RUfXrIedAkQ0bsO2yz9gnxHBy3O2kVPgMjvSmQyDAxuX8uj0tfR7axnf7SrkPXd/5tW7n6xH13Lto6+oWPqDGztFAQZ7Nv1KgbPgnO1FRERE5MKVqWA6fvw4brebsLCwYvPDwsJISSn5YZp79+5l5syZuN1u5s6dywsvvMBrr73G+PHjAQgICCA+Pp5x48Zx5MgR3G43n332GStWrODo0aMARX2XZb2jR48mIyOjaEpOTi7LplYbD13ehAZ1/EjNLODj+We/16yiHVq/gKRXL6Phd9dzfNtiLBbo3zGSm4a9QZ+hb9AgItzsiJVSXJO6/Mt3IjMYyeals82OIyIiIlKteZX3CjweD6GhoXz44YfYbDZiY2M5fPgwkyZNYuzYsQBMnz6d+++/n6ioKGw2G507d+aOO+5g7dq1F7xeh8OBw+G4WJtRZfl423jx2makfPUXBqz9lQNtfqZhs7amZjqyZSlZP75Iy5zT/74Fhjc3RWcz8ebLaR4WYGq2qsBmtUBoK0jdgmvDV5Bwq9mRRERERKqtMp1hCgkJwWazkZqaWmx+amoq4eElnw2IiIigRYsW2Gy2onmtW7cmJSUFp9MJQNOmTVmyZAnZ2dkkJyezevVqCgsLadKkCUBR32VZr/zu6rb16VjrFH6WAo7/6ynTBoBI2bGKbX/vS+TM62mZsxanYePnwBs4ePev3PnYWBVLZVC3290AxGT9Qka6Bn8QERERKS9lKpjsdjuxsbEkJiYWzfN4PCQmJhIfH1/iMt27dycpKQmPx1M0b9euXURERGC324u19ff3JyIiglOnTjF//nz69+8PQOPGjQkPDy+23szMTFatWlXqeuV/WCwE3fQGhYaN2LwVrF04o0JXfzg9j+f+tQHnl3fRJns5LsPKL7X6sHfgUq4aMZ3mzVpWaJ7qoFHMFRyxRuBnKWDroi/NjiMiIiJSbZV5WPERI0bw0UcfMW3aNLZv386QIUPIycnhvvvuA2Dw4MGMHj26qP2QIUM4efIkw4YNY9euXcyZM4cJEyYwdOjQojbz589n3rx57Nu3jwULFnDVVVfRqlWroj4tFgtPPvkk48ePZ/bs2WzevJnBgwcTGRnJgAED/uQuqBmiWnRiQ+Tp0QRDl48lLze33Nd57MAOxn63gSsn/cwXaw7zj8KbWO53NbtuWchlT39Nq9btyj1DtWWxcLTB9QD47viXyWFEREREqq8y38N0++23c+zYMcaMGUNKSgodO3Zk3rx5RQMyHDx4EKv19zosOjqa+fPnM3z4cGJiYoiKimLYsGGMHDmyqE1GRgajR4/m0KFD1KlTh5tvvpmXX3652DDkzz77LDk5OTz88MOkp6fTo0cP5s2bd8boelK6dne+zPHX5tLAOMovX4/nsvsmlMt6jh/ezcFvXyLm+BzyXA9Q6L6Kbk3rMrDXSC5ppBHvLpYGV94Hn3xITMFaDh86QFT9hmZHEhEREal2yvwcpqqqLGOtV2cb53xAhzXPkms4OHX/cqIaNrtofZ9MOcDeb/9KTOp32C2nh41f6NsH/1veI75p3Yu2Hvld0oQ4mjl3sKTZs1xx1/NmxxERERGpEsrtOUxS9cX0fYid9rYU4M1XPyaee4HzkH7sCKs/GILf+7F0SZuJ3eJmk3cHNlwzg57PfqViqRwd7jSCe5wjGZ/S1bTBPERERESqs3IfVlwqF4vViuPWD+k1dSvH99ei8440rmoVekF9ZeQV8vGyfXRe9ghXWtaBBbZ5tabgsufoePn1WCyWi5xe/qjzVTfxyPKF5B/PZ8vhTNrXDzI7koiIiEi1ooKpBmrUvB039bDx4dK9vPTvrXRrVheHl+3cC/5HVsZJvlh5gHdXpJGZ76Kz5QYi/TLJjn+WTlffisWqE5cVJcDHm15twvn3xiN8u/6QCiYRERGRi0y/2dZQT1zdjNBadlqeWsIv37x9XsvkZGey/NMxuN6IgV8mkZnvokVYLR66cyDNnltD54TbVSyZ4NY2fozy+oL+a++n4D/PNhMRERGRi0NnmGqoAB9v3opNpeuqN8ja4cvRwzcREdWgxLZ5ubmsm/UmLXd9QDfSAbjavo2IW2LoF1Mfm1WX3pmpW8v6xHgtIZgsfp3/Od2vv8/sSCIiIiLVhk4H1GBx1wwkyas5AZY89n/1zBmv5+fns+zr18h4tT3dd71CCOkctYTyW8fxNB69mhs6RqtYqgS8fPzZ2/BWAAI3fqTBH0REREQuIhVMNZjF5oXtutcAiM+ax6YVPwHgdHmYvvIAX7w6lB7b/0o4xzlGHda2e4GQ0ZvpMuAJvLztZkaXP2h27XCcho32rq1sWrPY7DgiIiIi1YYuyavhGne8gnVLr6PzyR/wXTCSf7nDeX3ZcQ6n5xHKVfT1WcLhVvcS0384sb7+ZseVUgSGNWBDnQQ6nppP3pK34dKrzI4kIiIiUi3oDJPQ7M5JZOFHc89eLltw/eliKcDB0Bt6UOe5bXQZ+H/YVSxVenUTngQgNnsxyfuTzA0jIiIiUk2oYBICQyLZ034EAH6WAl5OqMfSZ6/inm6NcNh16V1VEd22Gzsd7fG2uNn/4z/MjiMiIiJSLeiSPAGg483PcLhVPHXqt2JQUIjZceQCueKHMX3hV3x5tBMxeYUE+XqbHUlERESkStMZJikS1bYHviqWqrQ2V9zCZ3WHsc0Zxow1yWbHEREREanyVDCJVCMWi4X7ezQC4JPl+3G5PeYGEhEREaniVDCJVDP9O0bRw+8go3NeYd2imWbHEREREanSVDCJVDM+3jaGh23kOttK7GveMzuOiIiISJWmgkmkGmrYbwRuw0JH53p2bFxldhwRERGRKksFk0g1FFK/BVsCLwfg1KI3zQ0jIiIiUoWpYBKppgKu/AsAndMXkHr0oMlpRERERKomFUwi1VSTzj1J8m6Bw1LIrjlvmR1HREREpEpSwSRSXVks5HR+BIDWh2aQl5trciARERGRqkcFk0g11i5hMButrXm/8DpmrdeDbEVERETKSgWTSDVm87az9uov+djdj3+uPIrHY5gdSURERKRKUcEkUs3ddkk0AQ4v9hzLYenuY2bHEREREalSVDCJVHO1HF4MjA2nv3UZ2T88b3YcERERkSrFy+wAIlL+7m9rJWLde5AF+3Y+TuOWHcyOJCIiIlIl6AyTSA0Q0bQ9m/y6ApDy05vmhhERERGpQlQwidQQ9sueAKDD8TmcOpFmchoRERGRqkEFk0gN0TLuWvbZGuNnKWDbD3qQrYiIiMj5UMEkUkNYrFZOtX8AgGb7vsBZUGByIhEREZHKTwWTSA3Srs8DnCCIME6w4adpZscRERERqfQuqGB69913adSoET4+PsTFxbF69eqztk9PT2fo0KFERETgcDho0aIFc+fOLXrd7Xbzwgsv0LhxY3x9fWnatCnjxo3DMH5/yOa9996LxWIpNvXp0+dC4ovUWHYfP/Y0HMhKT2v+tdtd7P+YiIiIiJypzMOKf/3114wYMYLJkycTFxfHm2++Se/evdm5cyehoaFntHc6nfTq1YvQ0FBmzpxJVFQUBw4cIDg4uKjNK6+8wvvvv8+0adNo27Ytv/32G/fddx9BQUH85S9/KWrXp08fpk6dWvSzw+Eoa3yRGq/ZLS8R/8piCtI83Lz/FJc2rmN2JBEREZFKq8wF0+uvv85DDz3EfffdB8DkyZOZM2cOU6ZMYdSoUWe0nzJlCidPnmT58uV4e3sD0KhRo2Jtli9fTv/+/enXr1/R619++eUZZ64cDgfh4eFljSwi/6NOgC83da7Pl6sPMmXZPhVMIiIiImdRpkvynE4na9euJSEh4fcOrFYSEhJYsWJFicvMnj2b+Ph4hg4dSlhYGO3atWPChAm43e6iNt26dSMxMZFdu3YBsHHjRpYtW0bfvn2L9bV48WJCQ0Np2bIlQ4YM4cSJE6VmLSgoIDMzs9gkIqfd370Rdcmg5c73OLJ/p9lxRERERCqtMp1hOn78OG63m7CwsGLzw8LC2LFjR4nL7N27l0WLFjFo0CDmzp1LUlISjz32GIWFhYwdOxaAUaNGkZmZSatWrbDZbLjdbl5++WUGDRpU1E+fPn246aabaNy4MXv27OG5556jb9++rFixApvNdsZ6J06cyEsvvVSWzROpMZqHBTAleAod8tew4kdvIodMNjuSiIiISKVU5kvyysrj8RAaGsqHH36IzWYjNjaWw4cPM2nSpKKCacaMGXz++ed88cUXtG3blg0bNvDkk08SGRnJPffcA8DAgQOL+mzfvj0xMTE0bdqUxYsX07NnzzPWO3r0aEaMGFH0c2ZmJtHR0eW8tSJVh+XSh2DpGtqlzCIrYwIBQbo0T0REROSPynRJXkhICDabjdTU1GLzU1NTS723KCIighYtWhQ7C9S6dWtSUlJwOp0APPPMM4waNYqBAwfSvn177r77boYPH87EiRNLzdKkSRNCQkJISkoq8XWHw0FgYGCxSUR+1+6KWzhojSLAksfWOe+bHUdERESkUipTwWS324mNjSUxMbFonsfjITExkfj4+BKX6d69O0lJSXg8nqJ5u3btIiIiArvdDkBubi5Wa/EoNput2DJ/dOjQIU6cOEFERERZNkFE/sNqs5HS6l4A6u/+FLfLZW4gERERkUqozM9hGjFiBB999BHTpk1j+/btDBkyhJycnKJR8wYPHszo0aOL2g8ZMoSTJ08ybNgwdu3axZw5c5gwYQJDhw4tanP99dfz8ssvM2fOHPbv3893333H66+/zo033ghAdnY2zzzzDCtXrmT//v0kJibSv39/mjVrRu/evf/sPhCpsdpf+ygZ+FPfSGHjoq/MjiMiIiJS6ZT5Hqbbb7+dY8eOMWbMGFJSUujYsSPz5s0rGgji4MGDxc4WRUdHM3/+fIYPH05MTAxRUVEMGzaMkSNHFrV5++23eeGFF3jsscdIS0sjMjKSRx55hDFjxgCnzzZt2rSJadOmkZ6eTmRkJNdccw3jxo3Ts5hE/gTfWoFsjLyZrkc+xfHbZLjmLrMjiYiIiFQqFsMwDLNDVITMzEyCgoLIyMjQ/Uwi/yPt0F78Popnjrsr7R7+J20b1DM7koiIiEi5KkttUOZL8kSkegmt34SXWn7LSNfDfLzisNlxRERERCoVFUwiwl2XtQXg35uOkJaZb3IaERERkcpDBZOI0CE6mC4Na9Pcs48Vcz4xO46IiIhIpVHuD64VkarhmRapxKU+x6mdgeTn3oWPXy2zI4mIiIiYTmeYRASA2Mv7cZR61CaTTXM/NDuOiIiISKWggklEAPDytnOg2d0AhG6bgnGWB0eLiIiI1BQqmESkSJvrHifH8KGRJ5ktv3xndhwRERER06lgEpEigcF12Rx6w+kfVrxnbhgRERGRSkAFk4gUU7/PcDyGhfb5v3Fw5zqz44iIiIiYSgWTiBRTv2kbNvh3J8Wozc+rfjM7joiIiIipNKy4iJzBc+1rXPbZTrx2O+if6yTYz252JBERERFT6AyTiJwhtm1LmkXUIa/QzZerk82OIyIiImIaFUwicgaLxcL93Rthw82BZV9RWJBndiQRERERU+iSPBEp0Q0dI2n+wy10dO1g3U+16Xz9Y2ZHEhEREalwOsMkIiVyeNnIaXg1AEEb/wmGYXIiERERkYqngklEStXqumHkGXaauvawc/U8s+OIiIiIVDgVTCJSqrr1wtlQpy8A+UvfNjmNiIiISMVTwSQiZxXa60kA2mcvJ2X/NnPDiIiIiFQwFUwiclZN23Rmg+MSrBaDQz++bnYckUrBVZDHprmTWfv+g6Qd3GF2HBERKUcqmETknIyup0fIK0zdQU5+oclpRMxz6she1k4ZTtbEFsSsHknzlDncO/U3Fm5LNTuaiIiUEw0rLiLn1OHyATyy+gTzT0Xy1/WHGRzfyOxIIhXHMNizei45y96nbeYyYi2nR4w8RjBf+9zKtozaPPjpb9zXvRGjejfDYXeYHFhERC4mnWESkXOy2qx0v7wXAFN/3Y/HoyHGpfrLL3Tz7bpDvPX6izT98U5isn7BZjHY5B3D8i5vEjB6Fw898wr3d28MwJ4V35P6SiyHd6w2ObmIiFxMFsOoGQ9XyczMJCgoiIyMDAIDA82OI1Ll5BS4iJ+YCPnpfHBjNPFx3cyOJFIuUvdu5qe1O3hzRzAncpwEkEui42l2176Culc/TquYS89YZuHWFKK+6UNr9lFgeLOjwyg63PgUWCwmbIGIiJxLWWoDXZInIufF3+HF/7VI5rqdz3EosQnErTQ7kshFY7hd7Fg6E2P1h7TJW0sHT2NOOMcTEeTLXV1bYu28le5BtUpdPqFtOCl1f2Dt1PuILVhNh03j2LxvMU0emIp/cL0K3BIREbnYdIZJRM7b0cMHqPNhZxwWF/sGzKZxxyvMjiTyp2SfSmXn3HeJSvqScCMNALdhYb1vV071eY+r2jfCy3b+V6+73R5++eyvdNv7FnaLm1RLCLnXf0jjzj3LaxNEROQClKU20D1MInLeIqIasj7o9C9+GYveNDeMyJ+QlJbNvI/+D+832xK7+x+EG2mcMgJYGnoXB+9aTpdR8+jVsUmZiiUAm83Klfe8yI5+35JMOGHGcaK/v4XvFyykhnw/KSJS7eiSPBEpk8CrhsH382mXsZiTR/ZQJ7Kp2ZFEzourII/FO44wdc0xfk06QS+rN33sheyyNiWt9T106HMflwdcnCsQYi69kpPNV7Dinw9yKKOQZxILmJuylldujiHYz35R1iEiIhVDl+SJSJltevkyYgo38VvUYLo89LbZcUTO6tSRveyZ9w5ND37DJ4W9+If7ZqwWSGgVwmMtsugQdzUWa/lccGF4PExdlsTE+UkUug3aBjl543Jo0f3GclmfiIicHw36ICLlKi/2UVj5GC0O/4uC3PE4/ILMjiRSnGGQtPpHcpe9T5vMZXSxeADo5b2Bgh7PMiiuAdF1/Mo9hsVq5f7LW3BJkzCe+OI3ns56hRYLNrJ++0Ji7nkdm7ee2SQiUtnpDJOIlFmhy0XKy+0I96Sxout7XN53oNmRRIDTz07aOuc96m3+kAbug0XzN3rFkNPxfjr3uhMfhzlFSlZOLus/eozL078DYI93C4Lvnk7dBq1MySMiUpNp0AcRKVfeXl6s6TiBHgX/YOKuKN3MLqY7nJ7Hq/N20P1vi9j5WyIN3AfJMRwsC+7P9ht/Iub5pXS77j7TiiWAAH8/Lhs2lWVd/kG64U/Twl04plzJtvkfm5ZJRETO7YIKpnfffZdGjRrh4+NDXFwcq1ef/anm6enpDB06lIiICBwOBy1atGDu3LlFr7vdbl544QUaN26Mr68vTZs2Zdy4ccV+CTMMgzFjxhAREYGvry8JCQns3r37QuKLyEVwda/ryPSux/ajmazYe8LsOFIDGW4X23/+im2vXM1jr/6T9xbv4USOkx98+/NL06fJ/8tWejz5Ka07xGGpJA+QtVgs9LjuXtIHL2KLrQ21yKPNihFsfPcuCvOyzI4nIiIlKHPB9PXXXzNixAjGjh3LunXr6NChA7179yYtLa3E9k6nk169erF//35mzpzJzp07+eijj4iKiipq88orr/D+++/zzjvvsH37dl555RVeffVV3n7795vJX331Vd566y0mT57MqlWr8Pf3p3fv3uTn51/AZovInxXsZ+fm2NP/j7//WQ+xlYqTfSqNtV+MJXV8a1oveYQ2eWu5y/oT8U3qMvmuznw66h4uu/sF6tatvA+MbdS0Fc2eXczPYffiMSwEp65i8D9Xknwy1+xoIiLyB2W+hykuLo5LLrmEd955BwCPx0N0dDRPPPEEo0aNOqP95MmTmTRpEjt27MDb27vEPq+77jrCwsL4+OPfL0u4+eab8fX15bPPPsMwDCIjI3nqqad4+umnAcjIyCAsLIxPPvmEgQPPff+E7mESufj2pGWy7+0bSLCt58jtPxHZOs7sSFKNJW9ZzvFFb9PmxAIclkIA0o1abA7rT1SvoTRp3tbkhBdm9aLveH3pUVbmNyTA4cXfbmpPv5gIqCRnxUREqqNyu4fJ6XSydu1aEhISfu/AaiUhIYEVK1aUuMzs2bOJj49n6NChhIWF0a5dOyZMmIDb7S5q061bNxITE9m1axcAGzduZNmyZfTt2xeAffv2kZKSUmy9QUFBxMXFlbregoICMjMzi00icnE1DQ2kVsDpEfLSFrxpbhiptlIy8nn8szXYvhlEp5NzcVhOPztpWZsXsT69ncsee6/KFksAl159I38fdi+dGwSTVeBi5YxX2PJGf/IydKmriEhlUKZhxY8fP47b7SYsLKzY/LCwMHbs2FHiMnv37mXRokUMGjSIuXPnkpSUxGOPPUZhYSFjx44FYNSoUWRmZtKqVStsNhtut5uXX36ZQYMGAZCSklK0nj+u97+v/dHEiRN56aWXyrJ5InIBfC57HOYvps2Jn8g8dojAevXNjiTVhMuZzycrD/PGwt3kON1EevWhZ3Aqju6PEnNpAi1s1Wfcovq1/fj6kXje+/E37l/zNQGZeaS+GcexAR/RoMNVZscTEanRyv3TxuPxEBoayocffkhsbCy33347zz//PJMnTy5qM2PGDD7//HO++OIL1q1bx7Rp0/j73//OtGnTLni9o0ePJiMjo2hKTk6+GJsjIn/QoWsCW22tsFtcJM150+w4Uk3sWj6blL91Ys28T8lxuuncIJgBj71C3NPf0jH+GqzVqFj6L2+blWHXXUpS3y9IJpww4xiR397Exi9ewHC7zI4nIlJjlekTJyQkBJvNRmpqarH5qamphIeHl7hMREQELVq0wGazFc1r3bo1KSkpOJ1OAJ555hlGjRrFwIEDad++PXfffTfDhw9n4sSJAEV9l2W9DoeDwMDAYpOIXHwWi4X0mAcBaLz/a1z5OSYnkqosPfUgG9+4kRY/3U19zxEet//A325sx8xHu9Emsma8j3fqejW+j//Kcr+r8LJ46LDrLXa+1ous4/riT6SycrlceNwes2NIOSlTwWS324mNjSUxMbFonsfjITExkfj4+BKX6d69O0lJSXg8vx9Eu3btIiIiArvdDkBubi5Wa/EoNputaJnGjRsTHh5ebL2ZmZmsWrWq1PWKSMWJ7TOYI9SjNpls+2mK2XGkCjLchayfMQGv9y+lQ8Yi3IaFX+rcQtQT8xkY1xCrtWYNgBASEkLXp77l51Yvkms4aJW7jvx3L2fT3iNmRxORP9j228+kjG/DwfHtWP/Lv82OI+WgzNc0jBgxgo8++ohp06axfft2hgwZQk5ODvfddx8AgwcPZvTo0UXthwwZwsmTJxk2bBi7du1izpw5TJgwgaFDhxa1uf7663n55ZeZM2cO+/fv57vvvuP111/nxhtvBE5/g/3kk08yfvx4Zs+ezebNmxk8eDCRkZEMGDDgT+4CEfmzfBwOdjW8EwDr5hkmp5GqZv+mZeyfeCmdtr1CLfLYbmvBjhv+zWV/+Zg6dUPMjmcaq83KVQOHs+/mOSRZGjHV2Yub/rmBD5fuwePRw6JFzGYYBr/O/AdN/30r9UmlkXGYTol38es/7iH91Emz48lFVKZBHwBuv/12jh07xpgxY0hJSaFjx47MmzevaECGgwcPFjtbFB0dzfz58xk+fDgxMTFERUUxbNgwRo4cWdTm7bff5oUXXuCxxx4jLS2NyMhIHnnkEcaMGVPU5tlnnyUnJ4eHH36Y9PR0evTowbx58/Dx8fkz2y8iF0nb6x7nuX/k8q/87sxITqdDdLDZkaSSy3W6+MfC3ez8dRmfeO8l3fBnU6snib91BN5eZf54qrbaxlxCRuNlHPh+B64taUyYu4M92zcwsl876tRvaXY8kRopv9DNi9+u5aGt7+OwFrLJvxuFvvWIPf493U/N4ug/lrH+2plcdWkns6PKRVDm5zBVVXoOk0j5G/H1Br5df5j+HSP5x0B9SEjJDI+HX1et4NnF+RzJOP3w8Zfrr+Lqmx4kIrKByekqL8Mw+GL1QV759wa+sT5HlPUkh3tMpGXCvWZHE6lRDqfnMeSztWw6lEFz62EmtNpHl7vGY7Ha2LXiB2r9NIK9rhDuKnyOvu0ieKl/W0ID9AV/ZVOW2kAFk4hcNFsOZ3Dd28vwthosG96VsHo193IqKVnK7nVkznyCyPwkehb8He/aUbx0Q1t6tg4798ICwO69eyj4fBDt3NsB2BTanzb3v4eXTy2Tk4lUf5tWLeJf8xYyLa87tf28efuOzvRoXvyzLj8nkymLNvPaigzcHoNIn0L+fkkW8dfehUUPpK40yu3BtSIiZ9MuKoiHIvYyz+tpjn7ztNlxpBJx5may/p+PE/JZT1oUbMGKwcgO+SwYfoWKpTJq3qQpTZ5ZTGK9e/AYFmLSvufopK6kJq0zO5pItWUYBku+foOWc2/j/zyTuaXeYWY/3uOMYgnAxz+Qx67vzuzHu9M2MpDHXJ/Sbc3jrJ7Un6NHDpqQXv4snWESkYtq9eLZXLr4bvKww5Pb8A2uZ3YkMZNhsHPxl9Re+gKhxnEAVvt0I/TWN2jUtJXJ4aq+5Qu/pdkvIwi1nCIfb/Z0fp621z8J+hZb5KLJy8tnzQePcHn6LAA21+pB80c/w6dW7XMuW+hys/HTZ+h4YCpeFg+njAC2dHiO7v0frZbPk6tKdEleCVQwiVQMt9vDnvGxtDD2sqHFE3S8c7zZkcQkxzLzSPnwFtpnLwPgMKEcjBtL1z6DdFnKRZR86CCp0+6jS+FvrPK04sfOH/JM37b4OzRwhsifdfjQAU5+cgftXVsBWN9kCB3vehmL1XaOJYtL3roC13eP0di1F4C1jjjq3fEeDRo1u+iZ5fzokjwRMY3NZiWl9enHDDTd9TF7574BLqfJqaQiuT0G01ceoOfrS1mRHoTTsLE4bDC1hv9GfF9dw3+xRddvQMyz85nfYDjDnEP5ZOUheryyiClzl5GZss/seCJV1voVC/H655W0d20lGz92XP0RnQb/rczFEkB023gajFzFuqZDcRpexBasovbUHvww6wtceuBtpaczTCJy0WXl5HD47z1oZZz+Ju2YLYysnq/QpNuNJieT8rZv9VxeW5HOD0eDAOgS6c24q+rQun0Xk5PVDD/vTOPF2Vs5cCKXV70+4EbbMraGXkv09c9Tt0Frs+OJVAmGYfDB0r2cWPAaz3t9TrKtPvZBXxHWpP1F6f/o7vXkzHiEOs7D9CqYRP36DXj1lg60DA+4KP3L+dEleSVQwSRSsdLSM1k1803ikj8m1JLOIOdoarVO4OlrWtI8TB8K1U3W8UPs+3w4Mad+4jdPC+63/JUR17Ti7vhG2Kw6o1SRXG4PczcfJvKHwXRxnR4Iwm1Y2FIngdBrnyeiuYb8FylNToGLZ2duYs7mo4DBPxqvovegEed1v1JZGG4XPy5ZxsilBWTlu/C2WZjUIYVrbxyM3VuX01YEFUwlUMEkYo5DqcdZPHsqL+xtg2GA1QIvN95Ez7jOhHbobXY8+ZMMt4vN379Bk02vU4tcPIaFZbX702rwPwitE2x2vBrNMAzWLpsHv7xGF+eaovmbAi4juM/zNGgbb2I6kcrn4MH9bJv+FE9l3YHT5sfY69syKK5BuV5GnJqZz/PfbcFr57+ZbH+TrbbW2Aa8S6v2seW2TjlNBVMJVDCJmGtXahav/bST1Vt384vjSWpZ8tlTqwu1bxhHnRbdzI4nF+DwlmU4vx9G48IkAHZYm5F3zd/p1PUqk5PJ/zIMg02//ULBolfokvsrVovBG66b2dlyKI9d1ZSY+sFmRxQx3W+//kT0gkcI4yQ/WK4k4t6pxDasUyHrNgyDDT9MpsXaF/EnnwLDm+XRDxF/94v4OBwVkqEmUsFUAhVMIpXDlqT9HJ41liuzfsBhcQGwq/YVRNz4MgENLs714VK+8gvd/HvW19y85TGsFoNMw4/fmv2Fbrc9hY/DbnY8OYsdm1ZzfMFrDD12ExmcftDtvQ2OcVuHurSO74fFqrGgpGbxeAwWffkal+2aiMPiItkWjd/gr6nbsG2FZzl1ZA9HP3+UNjmrAdhpbUpBv7eIie1R4VlqAhVMJVDBJFK5rN24kfS5f+XK/ERsFgMPFnaFXUuDWybiV6+h2fGkFEt2HWPM91s4dCKL7+0vkF6rGQ0GvkaDBo3MjiZlsCs1i8mL9/D9xsPM8BpLrHU3O7xbUxD/JDFX3qbCSWqErJwcfvvgUa7KnA3AtqDLaPbwZ9j9g80LZRhs/XEy9VePJ4hsCg0b8+s/zpWDx1BLjwq4qFQwlUAFk0jlYxgGK1Yux504nstcyyk0bNzi9RY3Xt2dO+Ia4PAq+9CtUj6O7d3Enu/Gcc+xOynATligg5f6NqF3x8YaJrwKS047xaEZT9H52GwclkIAkmxNSI8dRqfed2Oz6f+gVE/79u8je/qdtHdvw2NY2NryMdoPHA+V5MuCzGOHODh9CO0ylzLYOZKkgDgm3NSeK1uGmh2t2lDBVAIVTCKVl9tj8Mvin1i7IpG3s64AICrYl9da76ZLz1vxqlUx15HLmVx5WWz56gXa7v8Ub4ubN1y3kN31KYb3aqFvO6uR40cPkvT934g5OhM/SwEA+yzRJHcZRdfed2L3qhy/RIpcDD9tTWHCjMV8xShqWQpI6/UOTbrfbHasMxkGm1YtYuhSC8kn8wAY3iqde27sR3BQsLnZqgEVTCVQwSRS+RW6PXy9Jpm3EncTkr2TuY7nyMafw20fosUNz2Bx1DI7Yo2S9MsMAn5+njBPGgCr7XEE3/w6LVq2MzmZlJeMEynsmDWJNslfEEAuTzgf57eAq3nosiYMvDQaP7uKZKm6PB6DNxfu4q1FpweqGRh1nGdv6EIdE+5XKotcp4u/z9/FvOW/Md/+LKcsQRy5fBJdr77B7GhVmgqmEqhgEqk68gvdzJv3PW3WjqUFBwE4ZQnmeOe/0KzPUCzePiYnrN5O7t9MyrejaJO5DIAjhJAUO4Ye/QZj1TOVaoScjJNsnPM+I/Z2ISX79OAsg32Xk9DEhw79hxGkz1GpYjKyc/ht8iN8f7Ihsz3duK97I567tjXetqpz9nTHmkTqzn2IesYJAJYE9afN4NepVzfE5GRVkwqmEqhgEql6MnPzWfbdB7Tb9S4NLKkApNnCyIl/hsZX3w9W3V9xURgGRzNymb81jR+3pNAn+U3u85pHoWFjab2BdLxzPHXr6LLImqjA5eZfaw8zZfF2Pst9hHDLKY4bQWxueDft+48gpG5dsyOKnFPS3j3kfTaI9p7t5BgOFvddSL+uMWbHuiD5WafYOf1JOqTNAk5/obUnbgI9+tym+0nLSAVTCVQwiVRdJzKyWPmvf9DlwD8Js5zimBHImIaf80SfjrSJ1P/nC+Jxc3TLEo6t/obwIwt4Mv8hlntOX2oXa9nJswHz8e37V2I6xZkcVCoDlzOfrXPeJWzTZMKN05donjJqsT7idlr2f5qoiEiTE4qU7NfF82j286OEWU6RjR/He79Lo/ibzI71p+1fMwefH4cT7jn9ZeIS/z40e3AqUbX9TE5WdahgKoEKJpGq7+ixE6z/1ySWHnLzletKAG6ICWdUuwwi218F+nbtrAxXAcnrfyL9t2+pn7aIOkZ60WvT3NfwQ9RwercNp0+7cOrrQ1dK4Cl0sm3Bx9Re+zZR7sMAZBu+zIp+hq43PEKzUN1nKJWD22Mwf/okeu59BYfFxWGvBvjfM4Pg6NZmR7toCvOy2PbZM7Q/9BUfua/lLetgRl3bmkGXNtDl0+dBBVMJVDCJVB97j2Xz+oJd/LDpKNdaV/Ke/S32+Hcm6PpxhLTSA/7+l2EYbDyUwbK1G7hnw50EkFP0Wobhz2b/eFwtr6fNZf0JrVPbxKRSlRhuF7t+/gzfVW/SoHAf/QpeZhuN6dsunMeubEa7qCCzI0oNdiq7gLXv309Czg8A7Kx9BU0fmo6XX/U8LpM3LeHZZW5WHDw9kl6/aCfP3hBLw+gGJier3FQwlUAFk0j1s/VIBltmjGfAqSk4LKdvTN8ZfBlh/ccR3LiTyenM487LYO/yb9m1P5nxad05mpEPGPxifxJfi5MtgZdha3MD7Xv0IzhAZwTkT/B42LV2EZO2B7Ng2+lLg8Z4fUqjYBt1rhlJx5gOJgeUmmbrkQwemb6WQVlTeMT2A7va/oVWt7xYaZ6vVF7cHoNPV+zn7/O2M93yAo0tqaxrO5orbnoULz3TsEQqmEqggkmk+tq4ZRMn5ozjitwF2CwGHsPCztDeRN80jloRLcyOVyGcGWns/fUb2D6bJlm/YcdFuuFPl4L3cdgdXNUqlJsau4nrGIO/r8PsuFIN7UzJYvrCNbyw+1YcFhcuw8oy36vx6fkMcV3idEO6lLvv1ycz8tst5Bd6aFTbwSfXWGnU6WqzY1Wow8n7cH16Ew0L9wKwi4ZkedWm0OaHy8ufDcEJHKrTjVoOL0KtGbTO/BWbbwDePgF4+wXi8AvExz8Q31qB+AWF4O8fgK2aXt6ngqkEKphEqjfDMFjz20qcP42jR+GvAGyiOauunsHd8Q3x8a5+37DlOd3sTPwEv83TaZqzAZvl97fzfUSyJ6QnXpcPp2vrRtVy+6VySt2USOZPE2mevQYAj2Fhmb07mSGdSAu/HGtIc+rUclDPB+rUclA3qBa1/ezV9pcyKX8ut4cfP32VevtmMdg5ivgWkfxjYEeC/exmRzOF4Spgy4yXaLVrMt64i702pvAePnX3BuBSy3ZmOMaV2s+rhbfxnnsA/nYb7e1HeN39CgVWXwptvhTa/HB7+eHxroVh9+do6OWcirqCWg4vgm35RB1bht03AB//QHz8g/CpFYjdNwDs/mAPqBRn/MpSG+gJdCJSLVgsFi69JB5P7Bx++WUh9qUTeCfvGn6Zu52Pl+1j+BVR3NShHt61qvYwyFlHd/LzYS/mbk9n8a40hhi/MMxrPVhgB405FN6TOl1uoX2nOBpXoeeLSPURFtOTsJienNi5nBM/TqBF+i9cXrgMji7jkQM25nsKAYruP8ww/DhgBJFhDSLHK5g8ex0KfeqyN/Qa3CGtqVvLTqiPmxCHm6A6oYQE+BHo66UzVgLA8Yws1n/wCNfnzgErvNN6Gz3v7l+jC3CLl4P2d04gK+UBDu3+DWdeFq68TFz5WcQGXko9ezOyC1wEpBew+Ug3vFy5eLtzsLvz8DHy8DHy8TPyyOX0Mw9znG5chaeIdKSAG/5QgwGQmAzvrD79+drKcpB5jlGl5rvT931euvd6mocFlMfmlwsVTCJSrVitFi67oheuHj25ft1h9izcxZGMfJLn/p2CBXPYVf96bMHReAeG4ls7DP/aEQTUCcdau0HlHGXPMEjfv4Hk5TMI2j+PBoV7meMcznzPJQCsCrqaBfWiCe96C23bxNCqBv+SIJVL3ZbdqNvyBzL3refI0ilYslJoH9IZL3cEx7MLaHWqAPIhyJJLkCUXOAouTk+58EhKXeZ7Tp8Zvc66gnfsb+M2LJwigN0EkmkNJserNgWOOmwK6UdeSHvq1rITbi8g3JZFrTrh1K5Tjzq1HPjZbSqwqqFtu3bi+vJuehk78RgWktoN45qbR4HeBwEICG9KQHjTYvOK31XYGihliHXDYLTLxRMFHrILXORkdmRLWgecuZkU5mVRmJeFJz8bT0EWOHPwcXTiGlsY2QUugnMyWJ/VDocnD4cnD1/y8f/P5GXxsPuUgVcV+0JPl+SJSLVW4HLz+YoDdEgcRCzbSm5jeNPd6wvq1vKhjr+d+/Om0sCdjMu3LvjXw1YrBHtQGD7BYQTUiaBWw05YyvNyAsPg+K7lHF3xDSHJ84lwHyl6yWVY+cTnLjJiH6d323DaRgbqF0GpmjweyDuFKyuN7JMp5Jw6Sn56Gq6sNDzZaayoewu7jUiOZzuJPTaLR7PeLrWrh53D+ek/XyL8t7gCcBo2ThLISYLItgWR612bX2vfxKm6HanrbyfccoKo/D14Ofzw9vXH2+GP3dcfh28Avv7+OPyD8Pdx4Gf3wu5VtX7Bq+4SF/ybdsue+M/zlfzJuPY9oi4dYHYsKYHL7SHH6SY7v5CcnByyXBbaRtU2/VJx3cNUAhVMIjVbTr6TX/89FQ6twVFwEp/CUwS4TxFsZFBgeHOV842itv+yjyXWurvEfvINb9oVTqOOv4M6/naeKvyQpu59FPjUwe1TF/xDsAWE4ggKxTc4HP9WVxPg431eRc3+4znM25rCho3rmHzywaL5BYY36+2dyW7Slybdb6ZJAw0VKzWQuxByT1KQkUrWyaPknUolPyMFd+YxNoRcyz5POCdynLRK+Td3nHwXfyO3xG7+t7jqb13GP+zvlbrKJ52PMctz+lEFV9k2Md77YwosPjgtDlxWHwptPrhtPnhsvqwLuZ6U2l3ws9sIN9JoeWoxNrsfNoc/Xj7+eP2nGLP71MK7bkN8g8Pxc9jwthhgGGCrORf9eDwG+S43+YUe8gvdpyenC3fGYQoL8ih0FuAqyMNVmE9hQT5uZz6ZtiCSfVpSUOgm5OCP3HN0PHaLm8PeDQm6bwa1IluZvVlSxegeJhGRP/D3sXPNrY8AjxSb73R5OJXrZG62kxM5BZzMcZJ68Gnmp+/HyDmOV94J7AUn8Ss8RYA7nXzDhssDaVkFpGUVUMe+gybW3ZB/5jrzDDutC6Zit9mo429nAm/T0pNEnncdnD51cPvWxeJfDzKPkHwqjyGZ9/5nST/W2FtQ4BtBQfN+tOxxE13D65X3LhKp3GzeEBCGIyAMR/2YYi8V/1W5A/B/UJiPkXOM/PRUsk6mkHsqBWdGGtfXuZIORignsp1EHzvIgbRWeLnz8fLkY/fkYzcKcFCAFx5cVh/wnO61lpFNFMfA4PTk4fTlg//x1YmmfOsJAeAq63oG218rdVP+98b77l7b+dxrHIV4UYADl8ULNzY8ltPTd7VuZ2mta7FZLTR07efBE3/HY7Fh/Od1w+KFYT399421e7O9bi9sViu1XWlcefgDsJ5ug9ULrLaiP1PrxpEa2gOb1YKPO4tmB2disdqw2LyxWL2w2Lz+86eNzICmpAW0I7/QjTvvFM32TMdw5YOrANxOcDmxuAuwuJ1s8enET77XUlDowcuZzl/TR+NlFOJlFOJNId5GId64sFNIorsbz7geBcCPfLb53F/qPpvrvpS3Cp8EoKEliNvsDg7WjaPJg59i9dUX4VK+VDCJSI1m97ISFuhDWKDP7zM7Diy1fYHLzYocJyeynZzIcZJ5aDwLTx3ElXUca+4xbHkn8HGewLcwnQI3gAWn20NKZj617clEWZPBlQx5wKnf+21q2KllvYNOTaPo3Tachq2XEhrkW16bLVL9eftgCY7GNzga30a/zy7+oIE2wJAzlzUMcBfyjsXKG1jJdbrJy+xEclpvCvNycOZnU5ifg7sgF3fB6T+7BMUT4d2AnAI3dTJyWJPWE5s7H5s7Dy93Ad6efOzG6YIs2/L7ze5eHufpuLjwxnW6GIOiP9OOn2R56gkAci2HaeTYVeom/3Aymmm7Tm9hG8t+nnDMLbXtu3tOMckVDEBDSwpLHK+X2vZjV1/Gue4GIJwTrPT5oNS2O9Mt/OK6FIBAcmjms694g/852e6wFOJts+DjZcPPqxZOtxeFeOOy/Hey47Z647ba8avVmLuiG+DjZcPHuxn7wn6gY4fOlfPeU6l2dEmeiEg5yi90cyLHyYnsAnKP7qTg5CEKM9PwZB/Dknscr7zjeGw+eLW5lg7dryW4lp/ZkUWkAjhdHvKcbnLy88nPPkVBbjb5uTl43E7cbheGy4XhcZHjE06Oox5ujwdLXjq1T27A8Lgw3C7wuDDcbgzP6b+n+LUgxa8FLo+BT8Fx2hz7Ect/XsPjBo8Li3H6z52+ndjkG4fLY+BfeJybT36MxXBjNVz/+fP3v69xdOXngOvx8bYRZCvg9vR/Yljt4OUALweW/5lyg5uTGdYVH28bvjYPYSdW4mX3wcvug93ui7fDB4ePLw4fP+x+gXj51zb7n0JqKN3DVAIVTCIiIiIiAmWrDTTki4iIiIiISCkuqGB69913adSoET4+PsTFxbF69eqztk9PT2fo0KFERETgcDho0aIFc+f+fl1to0aNsFgsZ0xDhw4tanPllVee8fqjjz56IfFFRERERETOS5kHffj6668ZMWIEkydPJi4ujjfffJPevXuzc+dOQkNDz2jvdDrp1asXoaGhzJw5k6ioKA4cOEBwcHBRmzVr1uB2//7Y4C1bttCrVy9uvfXWYn099NBD/PWvfy362c9P1/qLiIiIiEj5KXPB9Prrr/PQQw9x3333ATB58mTmzJnDlClTGDVq1Bntp0yZwsmTJ1m+fDne3t7A6TNK/6teveLD5f7tb3+jadOmXHHFFcXm+/n5ER4eXtbIIiIiIiIiF6RMl+Q5nU7Wrl1LQkLC7x1YrSQkJLBixYoSl5k9ezbx8fEMHTqUsLAw2rVrx4QJE4qdUfrjOj777DPuv//+Mx70+PnnnxMSEkK7du0YPXo0ubklP5QOoKCggMzMzGKTiIiIiIhIWZTpDNPx48dxu92EhYUVmx8WFsaOHTtKXGbv3r0sWrSIQYMGMXfuXJKSknjssccoLCxk7NixZ7SfNWsW6enp3HvvvcXm33nnnTRs2JDIyEg2bdrEyJEj2blzJ99++22J6504cSIvvfRSWTZPRERERESkmHJ/cK3H4yE0NJQPP/wQm81GbGwshw8fZtKkSSUWTB9//DF9+/YlMjKy2PyHH3646O/t27cnIiKCnj17smfPHpo2bXpGP6NHj2bEiBFFP2dmZhIdHX0Rt0xERERERKq7MhVMISEh2Gw2UlNTi81PTU0t9d6iiIgIvL29sdlsRfNat25NSkoKTqcTu91eNP/AgQMsXLiw1LNG/ysuLg6ApKSkEgsmh8OBw+Eo+vm/j5vSpXkiIiIiIjXbf2uC83kkbZkKJrvdTmxsLImJiQwYMAA4fQYpMTGRxx9/vMRlunfvzhdffIHH48FqPX3L1K5du4iIiChWLAFMnTqV0NBQ+vXrd84sGzZsAE4XZOcjKysLQGeZREREREQEOF0jBAUFnbVNmS/JGzFiBPfccw9dunTh0ksv5c033yQnJ6do1LzBgwcTFRXFxIkTARgyZAjvvPMOw4YN44knnmD37t1MmDCBv/zlL8X69Xg8TJ06lXvuuQcvr+Kx9uzZwxdffMG1115L3bp12bRpE8OHD+fyyy8nJibmvHJHRkaSnJxMQEDAGYNJmOG/lwgmJyef8+nC8udpf1c87fOKp31esbS/K572ecXTPq9Y2t8VxzAMsrKyzrgNqCRlLphuv/12jh07xpgxY0hJSaFjx47MmzevaCCIgwcPFp1JgtNndObPn8/w4cOJiYkhKiqKYcOGMXLkyGL9Lly4kIMHD3L//fefsU673c7ChQuLirPo6Ghuvvlm/u///u+8c1utVurXr1/WzS13gYGB+g9RgbS/K572ecXTPq9Y2t8VT/u84mmfVyzt74pxrjNL/2UxzufCPbnoMjMzCQoKIiMjQ/8hKoD2d8XTPq942ucVS/u74mmfVzzt84ql/V05lek5TCIiIiIiIjWJCiaTOBwOxo4dW2wkPyk/2t8VT/u84mmfVyzt74qnfV7xtM8rlvZ35aRL8kREREREREqhM0wiIiIiIiKlUMEkIiIiIiJSChVMIiIiIiIipVDBJCIiIiIiUgoVTCIiIiIiIqVQwVSO3n33XRo1aoSPjw9xcXGsXr36rO2/+eYbWrVqhY+PD+3bt2fu3LkVlLRqmzhxIpdccgkBAQGEhoYyYMAAdu7cedZlPvnkEywWS7HJx8enghJXfS+++OIZ+69Vq1ZnXUbH95/TqFGjM/a5xWJh6NChJbbXMV52S5cu5frrrycyMhKLxcKsWbOKvW4YBmPGjCEiIgJfX18SEhLYvXv3Ofst62dBTXG2/V1YWMjIkSNp3749/v7+REZGMnjwYI4cOXLWPi/kvakmOdcxfu+9956x//r06XPOfnWMl+5c+7yk93WLxcKkSZNK7VPHecVTwVROvv76a0aMGMHYsWNZt24dHTp0oHfv3qSlpZXYfvny5dxxxx088MADrF+/ngEDBjBgwAC2bNlSwcmrniVLljB06FBWrlzJggULKCws5JprriEnJ+esywUGBnL06NGi6cCBAxWUuHpo27Ztsf23bNmyUtvq+P7z1qxZU2x/L1iwAIBbb7211GV0jJdNTk4OHTp04N133y3x9VdffZW33nqLyZMns2rVKvz9/enduzf5+fml9lnWz4Ka5Gz7Ozc3l3Xr1vHCCy+wbt06vv32W3bu3MkNN9xwzn7L8t5U05zrGAfo06dPsf335ZdfnrVPHeNnd659/r/7+ujRo0yZMgWLxcLNN9981n51nFcwQ8rFpZdeagwdOrToZ7fbbURGRhoTJ04ssf1tt91m9OvXr9i8uLg445FHHinXnNVRWlqaARhLliwptc3UqVONoKCgigtVzYwdO9bo0KHDebfX8X3xDRs2zGjatKnh8XhKfF3H+J8DGN99913Rzx6PxwgPDzcmTZpUNC89Pd1wOBzGl19+WWo/Zf0sqKn+uL9Lsnr1agMwDhw4UGqbsr431WQl7fN77rnH6N+/f5n60TF+/s7nOO/fv79x9dVXn7WNjvOKpzNM5cDpdLJ27VoSEhKK5lmtVhISElixYkWJy6xYsaJYe4DevXuX2l5Kl5GRAUCdOnXO2i47O5uGDRsSHR1N//792bp1a0XEqzZ2795NZGQkTZo0YdCgQRw8eLDUtjq+Ly6n08lnn33G/fffj8ViKbWdjvGLZ9++faSkpBQ7joOCgoiLiyv1OL6QzwIpXUZGBhaLheDg4LO2K8t7k5xp8eLFhIaG0rJlS4YMGcKJEydKbatj/OJKTU1lzpw5PPDAA+dsq+O8YqlgKgfHjx/H7XYTFhZWbH5YWBgpKSklLpOSklKm9lIyj8fDk08+Sffu3WnXrl2p7Vq2bMmUKVP4/vvv+eyzz/B4PHTr1o1Dhw5VYNqqKy4ujk8++YR58+bx/vvvs2/fPi677DKysrJKbK/j++KaNWsW6enp3HvvvaW20TF+cf33WC3LcXwhnwVSsvz8fEaOHMkdd9xBYGBgqe3K+t4kxfXp04dPP/2UxMREXnnlFZYsWULfvn1xu90lttcxfnFNmzaNgIAAbrrpprO203Fe8bzMDiByMQ0dOpQtW7ac81re+Ph44uPji37u1q0brVu35oMPPmDcuHHlHbPK69u3b9HfY2JiiIuLo2HDhsyYMeO8vhmTP+fjjz+mb9++REZGltpGx7hUF4WFhdx2220YhsH7779/1rZ6b/pzBg4cWPT39u3bExMTQ9OmTVm8eDE9e/Y0MVnNMGXKFAYNGnTOAXp0nFc8nWEqByEhIdhsNlJTU4vNT01NJTw8vMRlwsPDy9RezvT444/zww8/8PPPP1O/fv0yLevt7U2nTp1ISkoqp3TVW3BwMC1atCh1/+n4vngOHDjAwoULefDBB8u0nI7xP+e/x2pZjuML+SyQ4v5bLB04cIAFCxac9exSSc713iRn16RJE0JCQkrdfzrGL55ffvmFnTt3lvm9HXScVwQVTOXAbrcTGxtLYmJi0TyPx0NiYmKxb3z/V3x8fLH2AAsWLCi1vfzOMAwef/xxvvvuOxYtWkTjxo3L3Ifb7Wbz5s1ERESUQ8LqLzs7mz179pS6/3R8XzxTp04lNDSUfv36lWk5HeN/TuPGjQkPDy92HGdmZrJq1apSj+ML+SyQ3/23WNq9ezcLFy6kbt26Ze7jXO9NcnaHDh3ixIkTpe4/HeMXz8cff0xsbCwdOnQo87I6ziuA2aNOVFdfffWV4XA4jE8++cTYtm2b8fDDDxvBwcFGSkqKYRiGcffddxujRo0qav/rr78aXl5ext///ndj+/btxtixYw1vb29j8+bNZm1ClTFkyBAjKCjIWLx4sXH06NGiKTc3t6jNH/f3Sy+9ZMyfP9/Ys2ePsXbtWmPgwIGGj4+PsXXrVjM2ocp56qmnjMWLFxv79u0zfv31VyMhIcEICQkx0tLSDMPQ8V1e3G630aBBA2PkyJFnvKZj/M/Lysoy1q9fb6xfv94AjNdff91Yv3590ahsf/vb34zg4GDj+++/NzZt2mT079/faNy4sZGXl1fUx9VXX228/fbbRT+f67OgJjvb/nY6ncYNN9xg1K9f39iwYUOx9/aCgoKiPv64v8/13lTTnW2fZ2VlGU8//bSxYsUKY9++fcbChQuNzp07G82bNzfy8/OL+tAxXjbnel8xDMPIyMgw/Pz8jPfff7/EPnScm08FUzl6++23jQYNGhh2u9249NJLjZUrVxa9dsUVVxj33HNPsfYzZswwWrRoYdjtdqNt27bGnDlzKjhx1QSUOE2dOrWozR/395NPPln0bxMWFmZce+21xrp16yo+fBV1++23GxEREYbdbjeioqKM22+/3UhKSip6Xcd3+Zg/f74BGDt37jzjNR3jf97PP/9c4nvJf/erx+MxXnjhBSMsLMxwOBxGz549z/i3aNiwoTF27Nhi8872WVCTnW1/79u3r9T39p9//rmojz/u73O9N9V0Z9vnubm5xjXXXGPUq1fP8Pb2Nho2bGg89NBDZxQ+OsbL5lzvK4ZhGB988IHh6+trpKenl9iHjnPzWQzDMMr1FJaIiIiIiEgVpXuYRERERERESqGCSUREREREpBQqmEREREREREqhgklERERERKQUKphERERERERKoYJJRERERESkFCqYRERERERESqGCSUREREREpBQqmEREREREREqhgklERERERKQUKphERERERERK8f8aXrhOhnCLQgAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 1000x300 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"t = -1\n",
"fig, ax = plt.subplots(1, 1, figsize=(10, 3))\n",
"ax.plot(out_parallel)\n",
"ax.plot(out_sequential, \"--\")\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "0c2e88d4",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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iDM3B0dODs6cHJz5ffEMG4o9JaUHq+w4BRYREZFThD01lfjx44kfP76nh3LSaR0WERERsTwFFhEREbE8BRYRERGxPAUWERERsTwFFhEREbE8BRYRERGxPAUWERERsTwFFhEREbE8BRYRERGxvC4FlocffpiioiI8Hg8lJSWsWrXquNs+/vjjnH/++aSlpZGWlkZpaennbv/DH/4QwzC4//77uzI0ERER6YU6HVhefPFFZsyYwezZs1m3bh2jRo1iypQp1BzngUzLly9n6tSpLFu2jJUrV1JQUMDkyZMpLy8/atsFCxbw/vvvk5eX1/lKREREpNfqdGD5/e9/z/e+9z2uv/56zjzzTB599FHi4+P505/+dMztn3vuOX784x8zevRohg4dyhNPPEEkEmHp0qVHbFdeXs5NN93Ec889h9Pp7Fo1IiIi0it1KrAEAgHWrl1LaWnpZw3YbJSWlrJy5coOtdHc3EwwGCQ9Pb39vUgkwjXXXMPPf/5zhg8f3qF2/H4/DQ0NR7xERESkd+pUYKmrqyMcDpOdnX3E+9nZ2VRVVXWojdtvv528vLwjQs8999yDw+Hg5ptv7vBY5syZQ0pKSvuroKCgw/uKiIjIqeWk3iU0d+5cXnjhBRYsWIDH4wFg7dq1PPDAAzz99NMYhtHhtu644w68Xm/7a//+/bEatoiIiPSwTgWWzMxM7HY71dXVR7xfXV1NTk7O5+573333MXfuXBYvXszIkSPb3//nP/9JTU0N/fr1w+Fw4HA4KCsr47bbbqOoqOi47bndbpKTk494iYiISO/UqcDicrkYN27cERNmP51AO3HixOPud++993LXXXexaNEiiouLj/jsmmuuYcOGDaxfv779lZeXx89//nPeeOONTpYjIiIivZGjszvMmDGD6dOnU1xczIQJE7j//vvx+Xxcf/31AFx77bXk5+czZ84coG1+yqxZs3j++ecpKipqn+uSmJhIYmIiGRkZZGRkHNGH0+kkJyeHM844o7v1iYiISC/Q6cBy1VVXUVtby6xZs6iqqmL06NEsWrSofSLuvn37sNk+O3Ezf/58AoEAV1xxxRHtzJ49mzvvvLN7oxcREZHTgmGaptnTg4iGhoYGUlJS8Hq9ms8iIiJyiujo8VvPEhIRERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHLU2ARERERy1NgEREREctTYBERERHL61JgefjhhykqKsLj8VBSUsKqVauOu+3jjz/O+eefT1paGmlpaZSWlh6xfTAY5Pbbb2fEiBEkJCSQl5fHtddeS0VFRVeGJiIiIr1QpwPLiy++yIwZM5g9ezbr1q1j1KhRTJkyhZqammNuv3z5cqZOncqyZctYuXIlBQUFTJ48mfLycgCam5tZt24dv/rVr1i3bh2vvPIK27dv56tf/Wr3KhMREZFewzBN0+zMDiUlJYwfP5558+YBEIlEKCgo4KabbmLmzJkn3D8cDpOWlsa8efO49tprj7nN6tWrmTBhAmVlZfTr169D42poaCAlJQWv10tycnLHCxIREZEe09Hjd6fOsAQCAdauXUtpaelnDdhslJaWsnLlyg610dzcTDAYJD09/bjbeL1eDMMgNTW1M8MTERGRXsrRmY3r6uoIh8NkZ2cf8X52djbbtm3rUBu33347eXl5R4Sef9Xa2srtt9/O1KlTPzdp+f1+/H5/+9cNDQ0d6l9EREROPSf1LqG5c+fywgsvsGDBAjwez1GfB4NBvvWtb2GaJvPnz//ctubMmUNKSkr7q6CgIFbDFhERkR7WqcCSmZmJ3W6nurr6iPerq6vJ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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"ts, ys = model.get_z(x, t0=2, t1=4, num_points=1000)\n",
"plt.figure()\n",
"plt.plot(ys[:, :, 0], ys[:, :, 1])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "79112537",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "felice",
"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.13.5"
}
},
"nbformat": 4,
"nbformat_minor": 5
}