{ "cells": [ { "cell_type": "markdown", "id": "3e41715a", "metadata": {}, "source": [ "# Ensemble experiments with random Boolean functions\n", "\n", "In this tutorial, we explore how BoolForge’s random Boolean function generator \n", "can be used to generate large ensembles of Boolean functions with prescribed structural properties,\n", "whose statistical and dynamical characteristics can then be studied.\n", "\n", "## What you will learn\n", "In this tutorial you will learn how to:\n", "\n", "- compute the prevalence of canalization, $k$-canalization, and nested canalization,\n", "- determine distributions of canalizing strength and normalized input redundancy,\n", "- investigate correlations between absolute bias and canalization,\n", "- generate and analyze dynamically distinct nested canalizing functions.\n", "\n", "It is strongly recommended to complete the previous tutorials first.\n", "\n", "## Setup" ] }, { "cell_type": "code", "execution_count": 1, "id": "d9515f50", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:19:48.064462Z", "iopub.status.busy": "2026-03-14T21:19:48.064118Z", "iopub.status.idle": "2026-03-14T21:19:49.954780Z", "shell.execute_reply": "2026-03-14T21:19:49.954417Z" }, "lines_to_next_cell": 2 }, "outputs": [], "source": [ "import boolforge as bf\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n", "import scipy.stats as stats" ] }, { "cell_type": "markdown", "id": "374fb20d", "metadata": {}, "source": [ "## Prevalence of canalization\n", "\n", "Using random sampling, we estimate how frequently Boolean functions of degree $n$\n", "exhibit a given canalizing depth." ] }, { "cell_type": "code", "execution_count": 2, "id": "95a99989", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:19:49.956950Z", "iopub.status.busy": "2026-03-14T21:19:49.956724Z", "iopub.status.idle": "2026-03-14T21:19:50.602497Z", "shell.execute_reply": "2026-03-14T21:19:50.602181Z" }, "lines_to_next_cell": 2 }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " k=0 k=1 k=2 k=3 k=4 k=5 k=6\n", "n=2 0.208 0.000 0.792 0.000 0.000 0.0 0.0\n", "n=3 0.607 0.095 0.000 0.298 0.000 0.0 0.0\n", "n=4 0.954 0.024 0.005 0.000 0.017 0.0 0.0\n", "n=5 1.000 0.000 0.000 0.000 0.000 0.0 0.0\n", "n=6 1.000 0.000 0.000 0.000 0.000 0.0 0.0\n" ] } ], "source": [ "n_simulations = 1000\n", "ns = np.arange(2, 7)\n", "canalizing_depths = np.arange(max(ns) + 1)\n", "\n", "count_depths = np.zeros((len(ns), max(ns) + 1))\n", "\n", "for _ in range(n_simulations):\n", " for i, n in enumerate(ns):\n", " f = bf.random_function(n)\n", " count_depths[i, f.get_canalizing_depth()] += 1\n", "\n", "count_depths /= n_simulations\n", "\n", "fig, ax = plt.subplots()\n", "for i, depth in enumerate(canalizing_depths):\n", " ax.bar(\n", " ns,\n", " count_depths[:, i],\n", " bottom=np.sum(count_depths[:, :i], axis=1),\n", " label=str(depth),\n", " )\n", "\n", "ax.legend(\n", " frameon=False,\n", " loc=\"center\",\n", " bbox_to_anchor=(0.5, 1.1),\n", " ncol=8,\n", " title=\"canalizing depth\",\n", ")\n", "ax.set_xticks(ns)\n", "ax.set_xlabel(\"Number of essential variables\")\n", "ax.set_ylabel(\"Proportion of functions\")\n", "plt.show()\n", "\n", "out = pd.DataFrame(\n", " count_depths,\n", " index=[\"n=\" + str(n) for n in ns],\n", " columns=[\"k=\" + str(k) for k in canalizing_depths],\n", ")\n", "\n", "print(out.to_string())" ] }, { "cell_type": "markdown", "id": "d6a33d5c", "metadata": {}, "source": [ "We see that hardly any Boolean function with $n\\geq 5$ inputs is canalizing, let alone nested canalizing. \n", "This makes the finding that most Boolean functions in published Boolean gene regulatory network models\n", "are nested canalizing very surprising (Kadelka et al., Science Advances, 2024)." ] }, { "cell_type": "markdown", "id": "bd630b57", "metadata": {}, "source": [ "### Restricting to canalizing functions\n", "\n", "To zoom in on the few functions that are canalizing for higher $n$, we can simply require `depth=1` and repeat the above analysis." ] }, { "cell_type": "code", "execution_count": 3, "id": "02ae7733", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:19:50.604024Z", "iopub.status.busy": "2026-03-14T21:19:50.603930Z", "iopub.status.idle": "2026-03-14T21:19:51.438281Z", "shell.execute_reply": "2026-03-14T21:19:51.437938Z" }, "lines_to_next_cell": 2 }, "outputs": [ { "data": { "image/png": "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zz6b4nn0C/D99983r/PDDz/IwIED5fHHH/eEtpdeekl+/PFH+fzzz2Xfvn0yffp0E8rUG2+8IcuXL5ePPvrINK3Nnz/fK0Q+8sgjcurUKfNcDWK1atWSZs2ayR9//OFVO6Vf8itWrDCbvq676VLfo17Dnj17mvegm4aFpC5fviy1a9eWlStXmnCpTUwaKrdu3Zqmz/rOO++UOnXqmPInpvuPPfaYJyRq0Pz444/N9Rg+fLi88MIL5r0nps2Lei2+/PJL835Ski1bNnPt9HrrZ60/a88//7zXYy5evGhClH42+nOgPzsaDFOjZdUy6XP0c9J/B/rZ6fnT8lkBjtNV3QGkT9euXV1t27Y1t++++25X9+7dze2lS5e6Ev+zGjFihCsiIsLruZMnT3aVKVPG61y6Hx8f7zlWoUIFV8OGDT37165dc+XOndv14Ycfmv2jR4+a1xk/frznMVevXnWVKlXKNWHCBLM/evRoV4sWLbxeOzo62jzvwIEDZr9x48aumjVr/uX7LVGihGvs2LFex+666y7X008/7dnX96nvNzWXL192hYWFuTZt2uR1vEePHq5OnTqZ223atHF169Ytxef369fP1bRpU1dCQkKy+7755htXvnz5zGskdvvtt7veeecdc1vLpq8fExPjuf+5555z1atXz7Ov16N///5e54iKijLX7OzZs6m+t9atW7sGDx583fMk/RnQsrnp56GvsW/fvlSf06dPH1f79u29fm7Cw8NdcXFxXo/TnyU9f2o+/vhjV6FChTz7c+fONa+9ZcsWzzEthx777rvvUvw51rIvWLDA67z68xYZGfmXnxXgD6j5AW6S9vvRv3j1L+AbpbUm+he6mzZRaVNF4lom7UejNRuJaU2FW44cOUyNgrsc2uQTFRVlmrzcmzZPuGtA3LQW43piYmJMrVSDBg28jut+et7zoUOHTA3Dfffd51UmrW1wl6d3796ycOFC0zyltRObNm3yaubR0W3avPPMM8/IF1984blP36s25eg1Snzuo0ePer1XrX3ImzevZ1+bZZJe07+iTVKjR482n482SerrrFmzRo4dO5bmc2itijapbdmyxexrzYjWVLk/HzVt2jTz2Wgznr7GzJkzk72GlkFr7a7nq6++MjVg2kyn711rqbR2UD+LxD87d911l2dfy6HNryl9vrGxseaaarNc4ms9ZswYz7W+3mcF+IMcThcAyOoaNWpkmoGGDRtmfuknpoHG5dI/ov/n6tWryc6RM2dOr33tE5LSMW0OSSsNA9oMpuEsKf3Sd9O+IJnB3c9Em4v0izgx7UektH/Sf/7zH1m1apVpytEv7T59+pjmNg0HGma0WUu/0LX5TvtdaZ8hPbe+J+2fk1TiYdw3e03Va6+9ZprItF+Nuy+N9plKT2dx7SumTZILFiww0wPo/zX4uWkA1KZDbWrUgKuhRV9Xm0AT+6vPTgOWNp/qubWJSsPaxo0bTXDR8t5Ix2j35zhr1iypV6+e130a0tX1PivAHxB+AB/QfiNaW+HudOqmf7WfOHHCBCD3aCFfzs2jNQcavpR2kNa+LtrR1P0FtGTJElPboX/Z3yjtPKwdarUvSOPGjT3Hdb9u3bppPk/lypVNyNHai8TnSUqvWdeuXc3WsGFD069Jw4+7LB07djTb3//+d7n//vtNnx59r3qd9X3eTN8SrUXRmp3r0ffdtm1b01dJaXjSTsz6/tJDO3Zr7ZZ2nj5y5IhXHxt9De3Irp2T3RLXYKWV/jxo+TREuWsWk/Ybcv/saL8w9+ep/XS03492aE5KayX150HLrO8hNal9VhrAAKcRfgAf0BoA/SLQjp6J6Wiq06dPy6uvvmq+ALTTsf41rF8MvqBNIzpCR7+kdLSQjpbq3r27uU9rTPSvc/1y1S9Z/dLRpietVdCROu6/0tNCA4h2wtbRSBrydASWhriknXavR2svtDZDOznrF7IOiz9//rz5otfroWFHO9FqU482A8bFxZlOvO4vYO0IrrU72oFbv8i1M7DWoGjNjtYqaA2Jjn7Sa62dirWpTmuZHnroIdMcmBYanLR2RWtMtCknpS9qvd5ag6FNctohXculHcnTG34efvhhUyOj27333msCReLX0OZAbU7TEV86Qk3n79Hb6VG+fHlT06id8rUWMLVO7Voj1q9fP/PzqwFSA7TWSKUWbkeNGmWas3TEnIYa/aw0POnP36BBg677WQH+gD4/gI/oMO+kTSj6xa1DgDWk6LBuHRGU2kioG61x0k3Prc0ZOsLGPTrKXVujNRktWrQwAU2bZ/QLKHH/orTQLzr9UtPRXHoeDXH6WvolnR7aV0ZHBemoL702+sWpAcX9pa41L9p8WL16dVOjpQFNw5o7PGmw0SCj/VM0oGjzmL4XrVXT2/qcbt26mfCjNSnahKY1FWmln42+pgYZrYFKqR/Piy++aGqatKlTw61+qWvoSi99PxpItL9S0hoUHdmn4UhrTbRpSfvoJK4FSiv9udAgok2fOhWChtWUhpxr89eQIUPMaDPty6XBb9GiRameV6cU0ACtIVh/HrQmT2eKdn+O1/usAH8QpL2enS4EAABAZiGGAwAAqxB+AACAVQg/AADAKoQfAABgFcIPAACwCuEHAABYhfADAACsQvgBAABWIfwAAACrEH4AAIBVCD8AAEBs8v8A9v5KGJuWy4EAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " k=0 k=1 k=2 k=3 k=4 k=5 k=6\n", "n=2 0.0 0.000 1.000 0.000 0.000 0.000 0.0\n", "n=3 0.0 0.247 0.000 0.753 0.000 0.000 0.0\n", "n=4 0.0 0.670 0.095 0.000 0.235 0.000 0.0\n", "n=5 0.0 0.974 0.019 0.001 0.000 0.006 0.0\n", "n=6 0.0 1.000 0.000 0.000 0.000 0.000 0.0\n" ] } ], "source": [ "count_depths = np.zeros((len(ns), max(ns) + 1))\n", "\n", "for _ in range(n_simulations):\n", " for i, n in enumerate(ns):\n", " f = bf.random_function(n, depth=1)\n", " count_depths[i, f.get_canalizing_depth()] += 1\n", "\n", "count_depths /= n_simulations\n", "\n", "fig, ax = plt.subplots()\n", "for i, depth in enumerate(canalizing_depths):\n", " ax.bar(\n", " ns,\n", " count_depths[:, i],\n", " bottom=np.sum(count_depths[:, :i], axis=1),\n", " label=str(depth),\n", " )\n", "\n", "ax.legend(\n", " frameon=False,\n", " loc=\"center\",\n", " bbox_to_anchor=(0.5, 1.1),\n", " ncol=8,\n", " title=\"canalizing depth\",\n", ")\n", "ax.set_xticks(ns)\n", "ax.set_xlabel(\"Number of essential variables\")\n", "ax.set_ylabel(\"Proportion of functions\")\n", "plt.show()\n", "\n", "out = pd.DataFrame(\n", " count_depths,\n", " index=[\"n=\" + str(n) for n in ns],\n", " columns=[\"k=\" + str(k) for k in canalizing_depths],\n", ");\n", "\n", "print(out.to_string())" ] }, { "cell_type": "markdown", "id": "1057094d", "metadata": {}, "source": [ "This analysis reveals that among Boolean functions of degree $n\\geq 5$, \n", "functions with few conditionally canalizing variables are much more abundant than functions with more conditionally canalizing variables, \n", "which is mathematically obvious due to the recursive nature of the definition of k-canalization." ] }, { "cell_type": "markdown", "id": "c1505c33", "metadata": {}, "source": [ "## Collective canalization vs degree\n", "\n", "Using a similar setup, we can investigate if and how the various measures of collective canalization, \n", "specifically canalizing strength (Kadelka et al., Adv in Appl Math, 2023) and the normalized input redundancy (Gates et al., PNAS, 2021), \n", "change when the degree of the functions changes." ] }, { "cell_type": "code", "execution_count": 4, "id": "3a165167", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:19:51.439815Z", "iopub.status.busy": "2026-03-14T21:19:51.439726Z", "iopub.status.idle": "2026-03-14T21:19:53.975998Z", "shell.execute_reply": "2026-03-14T21:19:53.975726Z" }, "lines_to_next_cell": 2 }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n_simulations = 100\n", "ns = np.arange(2, 8)\n", "\n", "canalizing_strengths = np.zeros((len(ns), n_simulations))\n", "input_redundancies = np.zeros((len(ns), n_simulations))\n", "\n", "for j in range(n_simulations):\n", " for i, n in enumerate(ns):\n", " f = bf.random_function(n)\n", " canalizing_strengths[i, j] = f.get_canalizing_strength()\n", " input_redundancies[i, j] = f.get_input_redundancy()\n", "\n", "width = 0.4\n", "fig, ax = plt.subplots()\n", "\n", "ax.violinplot(\n", " canalizing_strengths.T,\n", " positions=ns - width / 2,\n", " widths=width,\n", " showmeans=True,\n", " showextrema=False,\n", ")\n", "ax.scatter([], [], color=\"C0\", label=\"canalizing strength\")\n", "\n", "ax.violinplot(\n", " input_redundancies.T,\n", " positions=ns + width / 2,\n", " widths=width,\n", " showmeans=True,\n", " showextrema=False,\n", ")\n", "ax.scatter([], [], color=\"C1\", label=\"normalized input redundancy\")\n", "\n", "ax.legend(\n", " loc=\"center\",\n", " bbox_to_anchor=(0.5, 1.05),\n", " frameon=False,\n", " ncol=2,\n", ")\n", "ax.set_xlabel(\"Number of essential variables\")\n", "ax.set_ylabel(\"Value\")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "6e7fb2cd", "metadata": {}, "source": [ "Both measures decrease with increasing degree, but canalizing strength declines more sharply." ] }, { "cell_type": "markdown", "id": "06fbd2ad", "metadata": {}, "source": [ "### Stratification by canalizing depth\n", "\n", "If we stratify this analysis by canalizing depth \n", "(exact canalizing depth using `exact_depth=True` or minimal canalizing depth using the default `exact_depth=False`),\n", "we can confirm that functions with more conditionally canalizing variables tend to also have higher average collective canalization, \n", "irrespective of how it is measured.\n", "In other words, the various measures of canalization are all highly correlated." ] }, { "cell_type": "code", "execution_count": 5, "id": "65bd1dd5", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:19:53.977551Z", "iopub.status.busy": "2026-03-14T21:19:53.977446Z", "iopub.status.idle": "2026-03-14T21:19:58.925296Z", "shell.execute_reply": "2026-03-14T21:19:58.925016Z" }, "lines_to_next_cell": 2 }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n_simulations = 100\n", "exact_depth = False\n", "ns = np.arange(2, 7)\n", "\n", "max_depth = max(ns)\n", "\n", "canalizing_strengths = np.zeros((len(ns), max_depth + 1, n_simulations))\n", "input_redundancies = np.zeros((len(ns), max_depth + 1, n_simulations))\n", "\n", "for k in range(n_simulations):\n", " for i, n in enumerate(ns):\n", " for depth in np.append(np.arange(n - 1), n):\n", " f = bf.random_function(n, depth=depth, exact_depth=exact_depth)\n", " canalizing_strengths[i, depth, k] = f.get_canalizing_strength()\n", " input_redundancies[i, depth, k] = f.get_input_redundancy()\n", "\n", "fig, ax = plt.subplots(2, 1, figsize=(6, 6), sharex=True)\n", "\n", "base_gap = 1.0\n", "intra_gap = 0.3\n", "width = 0.28\n", "\n", "for ii, (data, label) in enumerate(\n", " zip(\n", " [canalizing_strengths, input_redundancies],\n", " [\"canalizing strength\", \"normalized input redundancy\"],\n", " )\n", "):\n", " positions = []\n", " values = []\n", " colors = []\n", " group_centers = []\n", "\n", " current_x = 0.0\n", " for i, n in enumerate(ns):\n", " depths = np.append(np.arange(n - 1), n)\n", " offsets = np.linspace(\n", " -(len(depths) - 1) * intra_gap / 2,\n", " (len(depths) - 1) * intra_gap / 2,\n", " len(depths),\n", " )\n", " group_positions = current_x + offsets\n", " positions.extend(group_positions)\n", " group_centers.append(current_x)\n", "\n", " for d in depths:\n", " values.append(data[i, d, :])\n", " colors.append(\"C\" + str(d))\n", "\n", " group_width = (len(depths) - 1) * intra_gap\n", " current_x += group_width / 2 + base_gap + width + intra_gap\n", "\n", " for pos, val, c in zip(positions, values, colors):\n", " vp = ax[ii].violinplot(val, positions=[pos], widths=width, showmeans=True, showextrema=False)\n", " for body in vp[\"bodies\"]:\n", " body.set_facecolor(c)\n", " body.set_alpha(0.85)\n", " vp[\"cmeans\"].set_color(\"k\")\n", "\n", " ax[ii].set_ylabel(label)\n", " ax[ii].set_ylim([-0.02, 1.02])\n", "\n", "ax[1].set_xlabel(\"Number of essential variables (n)\")\n", "ax[1].set_xticks(group_centers)\n", "ax[1].set_xticklabels(ns)\n", "\n", "depth_handles = [\n", " plt.Line2D([0], [0], color=\"C\" + str(d), lw=5, label=str(d))\n", " for d in range(max_depth + 1)\n", "]\n", "\n", "fig.legend(\n", " handles=depth_handles,\n", " loc=\"upper center\",\n", " ncol=7,\n", " frameon=False,\n", " title=\"exact canalizing depth\" if exact_depth else \"minimal canalizing depth\",\n", ")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "5cf526fb", "metadata": {}, "source": [ "### Correlation between canalizing strength and input redundancy\n", "\n", "We can generate all (non-degenerate) Boolean functions of a certain degree $n$ \n", "(only feasible up to $n=4$) and compare canalizing strength and input redundancy." ] }, { "cell_type": "code", "execution_count": 6, "id": "7948b557", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:19:58.926748Z", "iopub.status.busy": "2026-03-14T21:19:58.926630Z", "iopub.status.idle": "2026-03-14T21:19:59.029589Z", "shell.execute_reply": "2026-03-14T21:19:59.029331Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeoAAAGGCAYAAAC0W8IbAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAANJRJREFUeJzt3QucjfXe///PGHMg540ZNBmnqIScJiQq7unPrnS3y6PktKUiEh2MrRCKXZHKlJ2EpFIMHZwqh+QQNZN9d8uMNBhhHJJiZMbMXP/H5/u719ozY2asa2aNdc1ar+fjcT3MdVhrfV1p3uv7vb6HIMuyLAEAAI5UwdcFAAAARSOoAQBwMIIaAAAHI6gBAHAwghoAAAcjqAEAcDCCGgAAByOoAQBwsIoSYHJzc+Xw4cNStWpVCQoK8nVxAAAByLIsOX36tNSvX18qVCi+zhxwQa0hHRUV5etiAAAgBw8elMsvv7zYawIuqLUm7bo51apV83VxAAAB6I8//jCVRlcmOTqo4+Pj5cUXX5T09HRp3bq1vPbaa9KxY8cirz916pSMHz9eEhIS5OTJk9KwYUOZNWuW9OrVy6PPczV3a0gT1AAAX/LkEaxPg3rJkiUyZswYmTNnjsTExJjAjY2NlZSUFKlbt+4F12dlZUnPnj3NuaVLl0qDBg3kwIEDUqNGDZ+UHwCAshbky9WzNJw7dOggs2fPdnf00qaAkSNHSlxc3AXXa6Br7Ts5OVlCQkJK3NxQvXp1+f3336lRAwB8wk4W+Wx4ltaOExMTpUePHv8pTIUKZn/btm2FvuaTTz6RTp06ySOPPCIRERHSsmVLef755yUnJ6fIz8nMzDQ3JO8GAEB54bOgPnHihAlYDdy8dF+fVxcmNTXVNHnr61atWiXPPPOMzJgxQ6ZOnVrk50ybNs18a3Ft9PgGAJQn5WrCE20a1+fTb775prRr10769u1rOpZpk3hRxo0bZ5oWXJv29gYAoLzwWWey2rVrS3BwsBw9ejTfcd2PjIws9DX16tUzz6b1dS5XXXWVqYFrU3poaOgFrwkLCzMbAADlkc9q1BqqWitet25dvhqz7utz6MJ06dJF9u7da65z2bNnjwnwwkIaAIDyzqdN3zo0a+7cubJw4ULZvXu3DBs2TDIyMmTw4MHm/IABA0zTtYue17HTo0aNMgG9cuVK05lMO5cBAFBW9h8/Jc2fXiWN4laaP3X/UvHpOGp9xnz8+HGZMGGCab5u06aNrFmzxt3BLC0tLd8cqNoRbO3atTJ69Ghp1aqVGUetoT127Fgf/i0AAP6scdxK+U87rkhmtiXdZ2wxNd3U6b39exy1LzCOGgBQ0pAuqKRhXS7GUQMA4GT7j58qNqSVni/rZnCCGgCAQsS+stWr15UUQQ0AQCGysi2vXldSBDUAAIUIrRjk1etKiqAGAKAQa0d19up1JUVQAwBQiOg6NS4akhX+77qyRFADAFAEHXpVVFBeqnHUPp3wBAAAp0ud3tsMwdLe3dpxTJ9Ja3N3WdekXQhqAAAuQkM5ZWov8QWavgEAcDCCGgAAByOoAQBwMIIaAAAHI6gBAHAwghoAAAcjqAEAcDCCGgAAByOoAQBwMIIaAAAHI6gBAHAwghoAAAcjqAEAcDCCGgAAByOoAQBwMIIaAAAHI6gBAHAwghoAAAcjqAEAcDCCGgAAByOoAQBwMIIaAAAHI6gBAHAwghoAAAcjqAEAcDCCGgAAByOoAQBwMIIaAAAHI6gBAHAwghoAAAcjqAEAcDBHBHV8fLxER0dLeHi4xMTEyI4dO4q8dsGCBRIUFJRv09cBAOCPfB7US5YskTFjxsjEiRMlKSlJWrduLbGxsXLs2LEiX1OtWjU5cuSIeztw4MAlLTMAAAET1DNnzpShQ4fK4MGD5eqrr5Y5c+ZI5cqV5e233y7yNVqLjoyMdG8RERGXtMwAAAREUGdlZUliYqL06NHjPwWqUMHsb9u2rcjXnTlzRho2bChRUVFyxx13yK5du4q8NjMzU/744498GwAA5YVPg/rEiROSk5NzQY1Y99PT0wt9TfPmzU1t++OPP5Z3331XcnNzpXPnzvLLL78Uev20adOkevXq7k3DHQCA8sLnTd92derUSQYMGCBt2rSRbt26SUJCgtSpU0f+9a9/FXr9uHHj5Pfff3dvBw8evORlBgCgpCqKD9WuXVuCg4Pl6NGj+Y7rvj579kRISIhcd911snfv3kLPh4WFmQ0AgPLIpzXq0NBQadeunaxbt859TJuydV9rzp7QpvMffvhB6tWrV4YlBQCgnAT1/Pnz5ezZs14rgA7Nmjt3rixcuFB2794tw4YNk4yMDNMLXGkztzZfu0yePFk+//xzSU1NNcO57r//fjM864EHHvBamQAAKLdN33FxcTJq1Ci5++67ZciQIaYjV2n07dtXjh8/LhMmTDAdyPTZ85o1a9wdzNLS0kxPcJfffvvNDOfSa2vWrGlq5Fu3bjVDuwAA8DdBlmVZdl6QnZ0tn376qZkhbPXq1dK4cWNT+x04cKDHz5V9SYdnae9v7VimE6cA8L0F3+6UScsOufcn3dVABnVo49MyAU7JIttBXbDTlw6R0mbr5ORkufXWW00t+7bbbstXC3YSghpwlui4lUWe2z+99yUtC+DELCpVmmrz9A033GA6fmkwa6curVk3adJENm7cWJq3BhDgIe3JeSAQVChpTfqll16Sa665Rrp3726+GXz22Weyb98+OXTokNxzzz0msAGguOZub14H+CvbTd/arL127Vq58sorTU9r7ZVdq1atfNfoghr6vFqHWjkNTd+AM9ipLdMEDn9jJ4ts9/quW7eufPXVV8WOc9aZwrR2DQAASsd2UM+bN++i1+jqVrpoBgAAuMTPqB999FF59dVXLzg+e/Zseeyxx0pZHACBQodgefM6wF/ZDuply5ZJly5dLjiuE58sXbrUW+UC4Oc8HSfNeGoEOttB/euvv5oH4AXpw3BdthIAvNVJjE5kQAmCumnTpmaKz4Jcs5QBgB0axgWbt3WfkAZK2JlMF9EYMWKEmZ/75ptvNsd0tasZM2bIrFmz7L4dAJjmbZq4AS8F9d///nfJzMyU5557TqZMmWKORUdHyxtvvGHGVAMAAO8p1VzfWquuVKmSVKlSRcoLJjwBAPj1hCcFJzYBAAAO6kym83z3799f6tevLxUrVpTg4OB8GwAA8B7bNepBgwZJWlqaPPPMM1KvXj0zCxkAAHBIUG/evFm+/vpradOGHpoAADiu6TsqKkpK0f8MAACUZVDrWOm4uDjZv3+/3ZcCAICybvru27evnD17Vpo0aSKVK1eWkJCQfOdPnjxp9y0BAIC3gprZxwAAcHBQDxw4sGxKAgAAvDvhyblz5yQrKyvfMWb7AgDAh53JMjIyzKIcdevWlcsuu0xq1qyZbwMAAD4M6qeeekrWr19vFuEICwuTt956S5599lkzU9k777zjxaIBAADbTd+ffvqpCeTu3bvL4MGDpWvXrmaN6oYNG8rixYulX79+ZVNSAAACkO0atQ6/aty4sft5tGs41g033CCbNm3yfgkBAAhgtoNaQ3rfvn3m5xYtWsiHH37ormnXqFHD+yUEACCA2Q5qbe7+97//bX7WGcri4+MlPDxcRo8eLU8++WRZlBEAgIAVZJVy4u4DBw5IYmKieU7dqlUr8afFugEA8HUWlWoctdJOZLoBAADv8yioX331VY/f8NFHHy1NeQAAgN2m70aNGuXbP378uFmYw9V57NSpU2aBDp0EJTU1VZyMpm8AQHnKIo86k2kvb9f23HPPSZs2bWT37t1maJZu+nPbtm1lypQp3vo7AACAknQm0+Utly5dKtddd12+49qh7G9/+5t76JZTUaMGAPhdjTqvI0eOSHZ29gXHc3Jy5OjRo3bfDgAAeDOob7nlFnnooYckKSkpX2162LBh0qNHD7tvBwAAvBnUb7/9tkRGRkr79u3Nohy6dezYUSIiIswCHQAAwHtsj6OuU6eOrFq1Svbs2SPJycnuqUSvvPJKLxYLAACUasITDWbCGQAAhzV9a6exefPmyX333WeeSd988835tpLQ+cKjo6PNnOExMTGyY8cOj173wQcfSFBQkPTp06dEnwsAgN/VqEeNGiULFiyQ3r17S8uWLU1QlsaSJUtkzJgxMmfOHBPSs2bNktjYWElJSTETqBRl//798sQTT5j1sAEA8Fe2x1HXrl1b3nnnHenVq5dXCqDh3KFDB5k9e7bZz83NlaioKBk5cqRZnauoWv2NN94of//73+Xrr782M6OtWLHCo89jHDUAwK/HUYeGhpqVsrwhKyvLDO3KO6yrQoUKZn/btm1Fvm7y5Mmmtj1kyJCLfkZmZqa5IXk3AADKC9tB/fjjj8srr7wipVwd0zhx4oSpHevQrrx0Pz09vdDXbN682Twjnzt3rkefMW3aNPOtxbVpbR0AAL99Rq1BuWHDBlm9erVcc801EhISku98QkKClJXTp09L//79TUhrE7wnxo0bZ56Bu2iNmrAGAPhtUOuKWXfeeadXPlzDNjg4+IKpR3VfJ1Up6OeffzadyG677Tb3MX2mrSpWrGg6oOlc5Hm5JmUBACAggnr+/Ple+3B93t2uXTtZt26de4iVBq/ujxgx4oLrdWKVH374Id+xp59+2tS0tTmemjIAwN+UeMITb9Fm6YEDB5opSXUqUh2elZGRIYMHDzbnBwwYIA0aNDDPmnWctQ4Jy8u1JnbB4wAABGRQN2rUqNix06mpqbber2/fvnL8+HGZMGGC6UCma12vWbPG3cEsLS3N9AQHACAQ2R5HrU3MeZ0/f16+//57E65PPvlkkWOfnYJx1ACA8pRFJZqZrKhpQL/77ju7bwcAALxZoy6uyVubrZ0+oQg1aqB0dh5Mlz7xie79FY+0kzZRF47SAOCjGnVRli5dKrVq1fLW2wFwoOi4lRccc4X2/um9fVAiwP/ZDurrrrsuX2cyrZBrJzDtEPb66697u3wAHBzSBc8T1oADgrrgkpLaI7tOnTrSvXt3M84ZgH82d3t6Hc3ggEOfUZcXPKMGvF+bzotaNeCDZ9R2OogRfgAAeI9HQa2zfxU3yUleuhoWAAC4hEGtq2W56KIYOqnJoEGDpFOnTuaYrh29cOFCM80nAP+jQ7DyDskq7joAPgjqbt26uX+ePHmyzJw5U+699173sdtvv12uvfZaefPNN8283QD8i6cdxOhIBnif7Um0tfasC2gUpMd27NjhrXIBcJiLdRKjExngkKDWpSTnzp17wfG33nqLZSYBP6dhXLB5W/cJacBB46hffvllueuuu2T16tUSExNjjmlN+qeffpJly5aVRRkBOIg2bxPMgINr1L169ZI9e/bIbbfdJidPnjSb/qzH9BwAAPAeJjwBAMDBWWS7Rq2+/vpruf/++6Vz585y6NAhc2zRokWyefPmkpUYAAB4J6j1OXRsbKxUqlRJkpKSJDMz0xzXbwXPP/+83bcDAADeDOqpU6fKnDlzTM/vkJAQ9/EuXbqY4AYAAD4M6pSUFLnxxhsvOK5t7adOnfJWuQAAQEmCOjIyUvbu3XvBcX0+3bhxY2+VCwAAlCSohw4dKqNGjZLt27ebhToOHz4sixcvlieeeEKGDRtWNqUEACBA2Z7wRBfkyM3NlVtuuUXOnj1rmsHDwsJMUI8cObJsSgkAQICyNY5al7DcsmWLtGrVSipXrmyawM+cOSNXX321VKlSRcoDxlGjtDb+tF8Gzdvl3l8w5Brp3izap2UCUL7YySLbE56Eh4fL7t27pVGjRlIeEdQojei4lUWeY1pNAI6Y8KRly5aSmppq92WAX4e0J+cB4JKNo9bn0Z999pkcOXLEfCvIuwH+2tztzesAwFO2m74rVPhPtmuvbxd9G93X59hORtM3SsJObZkmcADezCLbvb43bNhg9yUAAKCEbAd1t27dSvpZAADAphKtngUEGh2C5c3rAMBTBDXgAU/HSTOeGoC3EdSAlzqJ0YkMQFkgqAEbNIwLNm/rPiENwDGdyW6++WZJSEiQGjVqXNDVvE+fPrJ+/Xpvlg9wHG3e3j+dJm4ADq1Rb9y4UbKysi44fu7cOfn666+9VS4AAGCnRv0///M/7p9//PFHSU9Pd+/rJCdr1qyRBg0aeL+EAAAEMI+Duk2bNmbmMd20+bugSpUqyWuvvebt8gEAENA8Dup9+/aZaUIbN24sO3bskDp16rjPhYaGSt26dSU4OLisygkAQEDyOKgbNmxo/szNzS3L8gAAgNL0+n7nnXeKPT9gwAC7bwkAALy1elbNmjXz7Z8/f17Onj1rmr8rV64sJ0+eFLvi4+PlxRdfNB3UWrdubZ51d+zYsdBrdWjY888/L3v37jWf3axZM3n88celf//+Hn0Wq2cBAHzNThbZHp7122+/5dvOnDkjKSkpcsMNN8j7779vu7BLliyRMWPGyMSJEyUpKckEdWxsrBw7dqzQ62vVqiXjx4+Xbdu2mZ7ogwcPNtvatWttfzYAAE5nu0ZdlO+++07uv/9+SU5OtvW6mJgY6dChg8yePdv9DDwqKkpGjhwpcXFxHr1H27ZtpXfv3jJlypSLXkuNGgDg1zXqolSsWFEOHz5s6zU6cUpiYqL06NHjPwWqUMHsa435YvQ7xrp160yN/sYbbyz0mszMTHND8m4IHAu+3SnRcSvdm+4DgF93Jvvkk08uCMsjR46YGnGXLl1svdeJEyfMZCkRERH5jut+cTVz/Qaik6toCOuQsNdff1169uxZ6LXTpk2TZ5991la54B80mAuatOyQ2ZibG4DfBrXO552XToCiY6p1EpQZM2bIpVC1alXZuXOneT6uNWp9xq3ju7t3737BtePGjTPnXbRGrU3rCLyQLniesAbgl0HtzXHUtWvXNjXio0eP5juu+5GRkUW+TpvHmzZt6p4xbffu3abmXFhQh4WFmQ2Bw9Pmbb1uUIc2ZV4eACiNUj2j1mbv0vRF0yFd7dq1M7XivF8EdL9Tp04ev4++RpvBAaVN2968DgDKXVDPmzdPWrZsKeHh4WbTn996660SFUCbpefOnSsLFy40NeNhw4ZJRkaGGXLlmkBFm69dtOb8xRdfSGpqqrlem9sXLVpkepwDACCB3vQ9YcIEmTlzphk+5ar1ag/t0aNHS1pamkyePNnW+/Xt21eOHz9u3lcnPNGmbF2Jy9XBTN9Tm7pdNMSHDx8uv/zyi1kIpEWLFvLuu++a9wEAQAJ9HLV2HHv11Vfl3nvvzXdcJzvR8Nae3E7GOGr/p8+ePWnWnnRXA55RA/C/cdQ6bWf79u0vOK7PmrOzs+2+HeB1noYvIQ2gPLAd1Dqn9htvvHHB8TfffFP69evnrXIBpXKxoVcMzQLgt03f2rytK2jpWOTrr7/eHNu+fbt5lqwdv0JCQtzX6rNsp6HpO7CbwWnuBlDessh2UN90000eXacToaxfv16chqAGAJSnLLLd63vDhg2lKRsAALDBa4tyAAAA77Ndo9ZxzNOnTzezh+ma0QWnFNWJSAAAgI+C+oEHHpCvvvrK9P6uV6+eeRYNAAAcEtSrV6+WlStX2l7SEgAAXIJn1DVr1pRatWqV4KMAAECZB/WUKVPMvNxnz561/WEAAKCMm751taqff/7ZLJoRHR2db4ITlZSUZPctAQCAt4K6T58+dl8CAABKyPbMZOUdM5MBAPx6ZjKgrOw8mC594hPd+yseaSdtoiLFaU6dPicDFnwr6X+ck8hq4fLOoA5So2q4r4sFIJBr1NrLe8+ePVK7dm3T67u4sdMnT54UJ6NG7UzRcSvLxUpXXaatk0O/n7vgeIPq4bJl3C0+KROA8sfrNeqXX35Zqlatan6eNWuWd0oJeBDSrvNOCOuiQlrpcT1PWAPwNo+CeuDAgYX+DHijudvT63zZDK7N3UWFtIue1+toBgfgTSzKAZ/K+0zaG9eVFX0m7c3rAMBTBDXgAe045s3rAMBTBDXgAe3d7c3rAMBTBDV8SodgefO6sqJDsLx5HQB4iqCGT3naQczX46m1g5gOwSqOnqcjGQCfjKP+7//+b4/fMCEhQZyMcdTOxDhqAIHkD2+Po9Y3c9FcX758uTnWvn17cywxMVFOnTplK9CBgmFcHmYm0zBmZjIAjp7re+zYsWb2sTlz5khwcLA5lpOTI8OHDzffCl588UVxMmrUAIDylEW2g7pOnTqyefNmad68eb7jKSkp0rlzZ/n111/FyQhqAEB5yiLbncmys7MlOTn5guN6LDc31+7bAQAAb66eNXjwYBkyZIj8/PPP0rFjR3Ns+/btMn36dHMOAAD4MKhfeukliYyMlBkzZsiRI0fMsXr16smTTz4pjz/+uBeLBgAAbD+jLtjGrsrTs16eUQMA/PoZtes59Zdffinvv/++e23qw4cPy5kzZ0pWYgAA4J2m7wMHDsitt94qaWlpkpmZKT179jRrVf/zn/80+zpsCwAAeIftGvWoUaPMRCe//fabVKpUyX38zjvvlHXr1nmpWAAAoEQ16q+//lq2bt0qoaGh+Y5HR0fLoUOHuKsAAPiyRq1jpXUmsoJ++eUX0wQOAAB8GNT/9V//JbNmzXLva2cy7UQ2ceJE6dWrlxeLBgAAbA/P0ppzbGysWZzjp59+Ms+r9c/atWvLpk2bpG7duuJkDM8CAPj1XN+u4VlLliyRf//736Y23bZtW+nXr1++zmVORVADAPw+qMszghoA4NcTnujSljfddJNZ6jKvo0ePupe9tCs+Pt70Gg8PD5eYmBjZsWNHkdfOnTtXunbtKjVr1jRbjx49ir0eAIDyzHZQawVcJzbRZ9O7du264Jxd2oQ+ZswY0xktKSlJWrdubZ6BHzt2rNDrN27cKPfee69s2LBBtm3bJlFRUaaDG0PDAAD+yHbTt9aatUOZrpY1f/58WbRokdxxxx2mRl2/fv1Ch24VR2vQHTp0kNmzZ7uHf2n4jhw5UuLi4i76ev08rVnr6wcMGHDR62n6BgD4ddO35rqG9SuvvGJW0urbt69MnTq1RLXprKwsSUxMNM3X7gJVqGD2tbbsibNnz8r58+elVq1ahZ7X2r/ekLwbAAB+OzNZXg8++KA0a9ZM7r77bjM0y64TJ06YGnFERES+47qfnJzs0XuMHTvW1OTzhn1e06ZNk2effdZ22QAAcALbNeqGDRvm6zSmHcu++eYbOXjwoFxq2vz+wQcfyPLly01HtMKMGzfONC24Nl+UEwCAS1aj3rdv3wXHmjZtKt9//715Tm2HTpKioV/wdbofGRlZ7Gu12V2DWpfbbNWqVZHXhYWFmQ0AgPKoROtRF0ZrtFrbtkMX9mjXrl2+Vbe0M5nud+rUqcjXvfDCCzJlyhRZs2aN6X0OAEBA16i1o9aePXtMDVh7WOv83kUpOL76YnRo1sCBA03gduzY0cwjnpGRIYMHDzbntSd3gwYNzLNmpeteT5gwQd577z0z9jo9Pd0cr1KlitkAAAi4oH755ZfdK2PlXZDDG7TX+PHjx034aui2adPG1JRdHczS0tJMT3CXN954w/QW/9vf/pbvfXQc9qRJk7xaNgAAfI0pRAEAcHAWeVSjtjP2mPADAMB7PArqGjVqFPtcWmnFXK+xOzMZAAAoZVDrvNoAAMChQd2tW7eyLwkAAPDeFKI6x7b2yNYe2HkVN/kIAAAo46DWoVQ6xnn16tWFnucZdWDYf/yUxL6yVbKyLQmtGCRrR3WW6Do1fF0sAPA7tmcme+yxx+TUqVOyfft2qVSpkhnzvHDhQrM4xyeffFI2pYSjNI5bKd1nbJHMbEt0bJ/+qft6HADg4xr1+vXr5eOPPzYzielEJDptaM+ePc2wLJ09rHfv3l4uIpxEwzi3iHO5/3c+dTr/BgDAZzVqnd6zbt265medTlSbwtW1114rSUlJXisYnNncXVRIu+T+33UAAB8FdfPmzSUlJcX83Lp1a/nXv/4lhw4dkjlz5ki9evW8VCw4kT6T9uZ1AIAyaPoeNWqUHDlyxD2/9q233iqLFy82K2EtWLDA7tuhHNGOY968DgBQBkF9//33u3/WJSoPHDggycnJcsUVV5jVteC/tHe3dhzz5DoAgEPWo65cubK0bduWkA4AOgTLm9cBAMqgRq1zei9dutRMK3rs2DHJzc3fvSghIcHuW6Kc0HHS+s2uuA5lep7x1ADg43HU/fv3l3379kmVKlXMMl15N/g3HXpV1D8aPc7QLADw8XrUtWrVknfffVd69eol5RHrUXsHM5MBgIPWo85L37hx48alKB78gYZyytTy+WUNAPy66XvSpEny7LPPyp9//lk2JQIAACWvUd9zzz3y/vvvm9nJoqOjJSQkJN95ZicDAMCHQT1w4EBJTEw046kjIiIkKIgxswAAOCaoV65cKWvXrpUbbrihbEoEAABK/ow6KiqK3tIAADg1qGfMmCFPPfWU7N+/v2xKBAAASjfX99mzZ6VJkyZm+tCCnclOnjxp9y0BAIC3gnrWrFl2XwIAAC5FUJ8/f16++uoreeaZZ6RRo0Yl/UwAAFAWz6i1mXvZsmV2XgIAAC5lZ7I+ffrIihUrSvOZAACgrJ5RN2vWTCZPnixbtmyRdu3ayWWXXZbv/KOPPmr3LQEAgLdWzyru2bTOUpaamipOxupZAAC/Xj1L16EGAAAOfUadl1bGbVbIAQBAWQf1O++8I9dee61UqlTJbK1atZJFixaV5K0AAIA3m75nzpxpxlGPGDFCunTpYo5t3rxZHn74YTlx4oSMHj3a7lsCAABvdiZ79tlnZcCAAfmOL1y4UCZNmuT4Z9h0JgMAlKcsst30feTIEencufMFx/WYngMAAN5jO6ibNm0qH3744QXHlyxZYsZYAwAAHz6j1mbvvn37yqZNm9zPqHXyk3Xr1hUa4AAA4BLWqO+66y7Zvn271K5d20wlqpv+vGPHDrnzzjtLURQAAOCV4Vk6dei7774riYmJZtOfr7vuupK8lcTHx0t0dLSEh4dLTEyMCfyi7Nq1y3xR0Ot1FjSW3AQA+LtSTXhSWvpce8yYMTJx4kRJSkqS1q1bS2xsrBw7dqzQ68+ePSuNGzeW6dOnS2Rk5CUvLwAAjh2eVaFCBVOLLfbNgoIkOzvb4w/XGnSHDh1k9uzZZj83N1eioqJk5MiREhcXV+xrtVb92GOPmc0OhmcBAPxyru/ly5cXeW7btm3y6quvmqD1VFZWlmk2HzduXL4vAz169DDvBwAAbAT1HXfcccGxlJQUU/P99NNPpV+/fmb5S0/pLGY5OTkSERGR77juJycni7dkZmaaLe+3GAAA/PoZ9eHDh2Xo0KFmvm9t6t65c6eZmaxhw4biNNOmTTPNC65Nm9YBAPDLoNa29LFjx5pJT7QHto6d1tp0y5YtbX+wDukKDg6Wo0eP5juu+97sKKZN61pu13bw4EGvvTcAAI4J6hdeeMH0uP7ss8/k/fffl61bt0rXrl1L/MGhoaFmmJeGvYs+49b9Tp06ibeEhYWZB/V5NwAA/O4ZtT6L1iUttTatzdy6FSYhIcHjD9ehWQMHDpT27dtLx44dzbjojIwMGTx4sDmvC380aNDANF+7OqD9+OOP7p8PHTpkmt2rVKliygUAQMAGtYbmxYZn2aVTkR4/flwmTJgg6enp0qZNG1mzZo27g1laWprpCZ732XjeiVVeeukls3Xr1k02btzo1bIBAFAul7ks7xhHDQDw62UuAQDApUNQAwDgYAQ1AAAORlADAOBgBDUAAA5GUAMA4GAENQAADkZQAwDgYAQ1AAAORlADAOBgBDUAAA5GUAMA4GAENQAADkZQAwDgYAQ1AAAORlADAOBgBDUAAA5GUAMA4GAENQAADkZQAwDgYAQ1AAAORlADAOBgBDUAAA5GUAMA4GAENQAADkZQAwDgYAQ1AAAORlADAOBgBDUAAA5GUAMA4GAENQAADkZQAwDgYAQ1AAAORlADAOBgBDUAAA5GUAMA4GAENQAADkZQAwDgYAQ1AAAORlADAOBgjgjq+Ph4iY6OlvDwcImJiZEdO3YUe/1HH30kLVq0MNdfe+21smrVKrnUsrNzZfX/HpH5W/aZP3UfAABvqyg+tmTJEhkzZozMmTPHhPSsWbMkNjZWUlJSpG7duhdcv3XrVrn33ntl2rRp8te//lXee+896dOnjyQlJUnLli0vSZkXbz8gr2/YKyfOZEmuZUmFoCCpXSVUht/UVPrFNLwkZQAABIYgy7IsXxZAw7lDhw4ye/Zss5+bmytRUVEycuRIiYuLu+D6vn37SkZGhnz22WfuY9dff720adPGhP3F/PHHH1K9enX5/fffpVq1aiUK6edW7pbzObkSXjFYQoKD5HyOJeeycyQkuIKM730VYQ0A8FoW+bTpOysrSxITE6VHjx7/KVCFCmZ/27Zthb5Gj+e9XmkNvKjrvUmbt7UmrSFdNayihFWsYGrT+qfu63E9TzM4AMBbfBrUJ06ckJycHImIiMh3XPfT09MLfY0et3N9Zmam+eaSdyupL5KPmuZurUlrQOel+3pcz+t1AAD4TWeysqTPsrV5wbVps3pJpf9+zjyT1ubuwuhxPa/XAQBQ7oO6du3aEhwcLEeP5q+B6n5kZGShr9Hjdq4fN26ceQbg2g4ePFji8kZWDzc1Z30mXRg9ruf1OgAAyn1Qh4aGSrt27WTdunXuY9qZTPc7depU6Gv0eN7r1RdffFHk9WFhYeZBfd6tpHq2iDC9u7XjmNac89J9Pa7n9ToAAPyi6VuHZs2dO1cWLlwou3fvlmHDhple3YMHDzbnBwwYYGrFLqNGjZI1a9bIjBkzJDk5WSZNmiTfffedjBgxoszLWrFiBTMES3t3n87MlszsXBPQ+qfuhwb/v/N6HQAAfjGOWodbHT9+XCZMmGA6hOkwKw1iV4extLQ00xPcpXPnzmbs9NNPPy3/+Mc/pFmzZrJixYpLNobaNfTKNY76XPb/a+6uWzWMcdQAAP8bR32plXYctYsOwdLe3dpxTJ9Ja3M3NWkAgLezyOc16vJKQ/n/a1nP18UAAPg5qoAAADgYQQ0AgIMR1AAAOBhBDQCAgxHUAAA4GEENAICDEdQAADhYwI2jds3vUprlLgEAKA1XBnky51jABfXp06fNn6VZ7hIAAG9lks5QVpyAm0JUV+c6fPiwVK1aVYKCCl9X2s43Ig18XTqzNNORBgrul33cM3u4X/Zwv3x3vzR6NaTr16+fbz2LwgRcjVpvyOWXX+7V9yzt8pmBhvtlH/fMHu6XPdwv39yvi9WkXehMBgCAgxHUAAA4GEFdCmFhYTJx4kTzJy6O+2Uf98we7pc93K/ycb8CrjMZAADlCTVqAAAcjKAGAMDBCGoAAByMoL6I+Ph4iY6OlvDwcImJiZEdO3YUe/1HH30kLVq0MNdfe+21smrVKgkkdu7X3LlzpWvXrlKzZk2z9ejR46L31x/Z/Tfm8sEHH5hJe/r06SOBxO79OnXqlDzyyCNSr1490wnoyiuvDKj/L+3er1mzZknz5s2lUqVKZnKP0aNHy7lz5yQQbNq0SW677TYzCYn+v7VixYqLvmbjxo3Stm1b82+radOmsmDBAu8XTDuToXAffPCBFRoaar399tvWrl27rKFDh1o1atSwjh49Wuj1W7ZssYKDg60XXnjB+vHHH62nn37aCgkJsX744QcrENi9X/fdd58VHx9vff/999bu3butQYMGWdWrV7d++eUXK1DYvWcu+/btsxo0aGB17drVuuOOO6xAYfd+ZWZmWu3bt7d69eplbd682dy3jRs3Wjt37rQCgd37tXjxYissLMz8qfdq7dq1Vr169azRo0dbgWDVqlXW+PHjrYSEBO1kbS1fvrzY61NTU63KlStbY8aMMb/zX3vtNZMBa9as8Wq5COpidOzY0XrkkUfc+zk5OVb9+vWtadOmFXr9PffcY/Xu3TvfsZiYGOuhhx6yAoHd+1VQdna2VbVqVWvhwoVWoCjJPdP71LlzZ+utt96yBg4cGFBBbfd+vfHGG1bjxo2trKwsKxDZvV967c0335zvmIZQly5drEAjHgT1U089ZV1zzTX5jvXt29eKjY31allo+i5CVlaWJCYmmubYvNOP6v62bdsKfY0ez3u9io2NLfL6QL9fBZ09e1bOnz8vtWrVkkBQ0ns2efJkqVu3rgwZMkQCSUnu1yeffCKdOnUyTd8RERHSsmVLef755yUnJ0f8XUnuV+fOnc1rXM3jqamp5jFBr169Llm5y5Ntl+h3fsDN9e2pEydOmP+Z9X/uvHQ/OTm50Nekp6cXer0e93cluV8FjR071jwbKvgP31+V5J5t3rxZ5s2bJzt37pRAU5L7pUGzfv166devnwmcvXv3yvDhw80XQp24wp+V5H7dd9995nU33HCDWTQiOztbHn74YfnHP/5xiUpdvqQX8TtfF+/4888/zXN+b6BGDUeYPn266Ry1fPly0+kFF9KVdvr372864dWuXdvXxSk3q+Vp68Obb74p7dq1k759+8r48eNlzpw5vi6aI2nHKG1xeP311yUpKUkSEhJk5cqVMmXKFF8XLaBRoy6C/iIMDg6Wo0eP5juu+5GRkYW+Ro/buT7Q75fLSy+9ZIL6yy+/lFatWkmgsHvPfv75Z9m/f7/plZo3iFTFihUlJSVFmjRpIv6qJP/GtKd3SEiIeZ3LVVddZWpC2jQcGhoq/qok9+uZZ54xXwYfeOABs68jVzIyMuTBBx80X3AuthxjoIks4ne+rqzlrdq04q4XQf8H1m/g69aty/dLUff1mVdh9Hje69UXX3xR5PWBfr/UCy+8YL6tr1mzRtq3by+BxO4902F/P/zwg2n2dm2333673HTTTeZnHUrjz0ryb6xLly6mudv1hUbt2bPHBLg/h3RJ75f2EykYxq4vOcw27cPf+V7tmuaHQxt0qMKCBQtM1/sHH3zQDG1IT0835/v372/FxcXlG55VsWJF66WXXjLDjSZOnBhww7Ps3K/p06eboSNLly61jhw54t5Onz5tBQq796ygQOv1bfd+paWlmZEEI0aMsFJSUqzPPvvMqlu3rjV16lQrENi9X/o7S+/X+++/b4Yeff7551aTJk3MiJZAcPr0aTNcVDeNx5kzZ5qfDxw4YM7rvdJ7VnB41pNPPml+5+twU4Zn+YCOi7viiitMoOhQh2+++cZ9rlu3buYXZV4ffvihdeWVV5rrtdv+ypUrrUBi5341bNjQ/M9QcNNfFoHE7r+xQA7qktyvrVu3mmGSGlg6VOu5554zQ9wChZ37df78eWvSpEkmnMPDw62oqChr+PDh1m+//WYFgg0bNhT6O8l1j/RPvWcFX9OmTRtzf/Xf1/z5871eLlbPAgDAwXhGDQCAgxHUAAA4GEENAICDEdQAADgYQQ0AgIMR1AAAOBhBDQCAgxHUAAA4GEENlGNBQUGyYsUK87Mu2KH7ni6BGR0dLbNmzSrjEvrPqlJ6b0+dOuXroiAAEdSATbry0siRI6Vx48YSFhZmFsPQFa0KTs5/qWk5jhw5Ii1btvTo+m+//dasiuRLTvyy0L17d3nsscd8XQzAjWUuARu01qorMtWoUUNefPFFswzg+fPnZe3atfLII49IcnKyz8qmqxzZWVK1Tp06Uh7k5OSY2ixLLCJQ8S8fsGH48OEmNHbs2CF33XWXXHnllXLNNdfImDFj5JtvvnFfN3PmTBPil112manp6uvOnDnjPr9gwQIT9hrwuj5ylSpV5NZbbzU14rw13p49e5p1hatXry7dunWTpKSkIstWsOl70KBBZr/gps24hdVm9dxbb70ld955p1SuXFmaNWsmn3zySb7P0H09Hh4ebpbXXLhwYbFNwrqUwKRJk+SKK64wrQ/169eXRx991F1zPXDggIwePdpdtrz3Rj/r6quvNq9LS0uTzMxMeeKJJ6RBgwbmvsbExLj/Lp7e0+zsbPP5et1f/vIXGTt2rAwcOFD69OnjvmdfffWVvPLKK+4y6X11SUxMNMux6v3p3LmzWQMcKHNeX+YD8FO//vqrFRQUZD3//PMXvfbll1+21q9fb+3bt89at26d1bx5c2vYsGHu87rCji6B2qNHD+vbb7+1EhMTrauuusq677773Nfo6xYtWmSWz9MlCocMGWJFRERYf/zxh/sa/V94+fLl5mf9LN3XZfnUqVOn8i0fOmrUKLPEo/7sWr1My5n3vS6//HLrvffes3766Sfr0UcftapUqWL+3q4l/bTMTzzxhJWcnGyWQmzQoIF5XVGrK3300UdWtWrVrFWrVpmlArdv3269+eab7vupnzd58mR3GfPem86dO5ulY/WzMjIyrAceeMAc27Rpk7V3717rxRdfNCti7dmzx+N7qstb1qpVy0pISDD39eGHHzblc61ApvesU6dO1tChQ91l0pW2XKsq6SpcGzdutHbt2mV17drVlAcoawQ14CENGf1lrb/k7dLA+stf/uLe11DR99LAcdG1bDWIi5KTk2PWCv700089Cuq8li1bZpYt3Lx5s/tYYUH99NNPu/fPnDljjq1evdrsjx071mrZsmW+9x0/fnyxQT1jxgyz7GtWVlah5wuWIe+92blzp/uYhryu83vo0KF8195yyy3WuHHjPL6n+rMGvIuGsC4BmXepUF3GUL/U5OUK6i+//NJ9TJew1WN//vlnoX83wFto+gY8ZGdF2C+//FJuueUW00xbtWpV6d+/v/z6669y9uxZ9zXafNqkSRP3fr169eTYsWPu/aNHj8rQoUNNU7M2fVerVs00n2szsB3ff/+9+fzZs2eb5+vFadWqlftnbV7Wz3SVSZt5O3TokO/6jh07Fvt+d999t/z555+m453+XZYvX26any8mNDQ0X1l++OEH86xaHzVok7Zr02bqn3/+2aN7+vvvv5t7mrfM+ly/Xbt24qm8ZdL3Vnn/mwFlgc5kgIc0MPWZ5cU6jOkzzb/+9a8ybNgwee6556RWrVqyefNmGTJkiGRlZZkwUSEhIflep++d98uAPjvVcNfnpQ0bNjTPajt16mTew04P9dtvv10eeOAB8/kXU1iZcnNzpaT0+bwGvH5x+eKLL8yzeu2EpwFb8LPyqlSpkvuZtdIvKBqq+oxY/8xLA7u48tv5gnUxed/fVb7S3B/AE9SoAQ9p4MbGxkp8fLxkZGRccN7VoUrDRH95z5gxQ66//npTCzx8+LDtz9uyZYvp+NSrVy/TYU2D+sSJEx6//ty5c3LHHXdIixYtTOe20mrevLl89913+Y5ph7eL0dDV4Wuvvvqq6fy1bds2U0N21Zy1pnwx1113nblOa69NmzbNt3na011bJSIiIvKVWd+zYAc9T8sEXCoENWCDhrT+Etfm02XLlslPP/0ku3fvNiGktV2l4aFDtl577TVJTU2VRYsWyZw5c0pUg9fX6vtv375d+vXrZ0LPUw899JAcPHjQlO348eOmdq2bnRp5wffT1gTtKb1nzx758MMPTU9rlbf2m5eenzdvnvzv//6vuRfvvvuu+TtoC4Gr5/mmTZvk0KFDxX4J0S87+vcfMGCAJCQkyL59+0zP+2nTpsnKlSs9/jvo+Hd9zccff2xq+qNGjZLffvstX/m1THq/tWVEy0SNGb5GUAM26LNWrYHp0KTHH3/cTC6iQ6h0spM33njDXNO6dWtTg/3nP/9pzi9evNiEg10acBoibdu2Nc+YtXZdt25dj1+vzcs6NEmHOOnzVNe2detWKYlGjRrJ0qVLTVDqs1r9+44fP96c09p+YXQY1Ny5c82zcX2NNoF/+umnZmiUmjx5sglEfa58sXHd8+fPN0Gt911r9zqkSmvHOvTLU/ol49577zXvo1+stNlcW0l0uJmLDgHT5nW9b1omu30CAG8L0h5lXn9XAAFBn8Fra4HW3MsjrS3rmOt77rlHpkyZ4uviAIWiMxkAj73++uum57fWiPUZunYMGzFihJQXOsHK559/biaP0QlUtCe8NqPfd999vi4aUCSCGoDH9Jn81KlT5eTJk6bJWZuhx40bJ+WFTkOqz821eVsbE/XRhDbHa60acCqavgEAcDA6kwEA4GAENQAADkZQAwDgYAQ1AAAORlADAOBgBDUAAA5GUAMA4GAENQAADkZQAwAgzvX/A7xMYIWsvfazAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "SignificanceResult(statistic=np.float64(0.9700304760700043), pvalue=np.float64(1.0759731607818433e-134))" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "n = 3\n", "allow_degenerate_functions = False\n", "degenerate = np.zeros(2 ** (2**n), dtype=bool)\n", "strengths = np.zeros(2 ** (2**n))\n", "redundancies = np.zeros(2 ** (2**n))\n", "\n", "for i, fvec in enumerate(bf.get_left_side_of_truth_table(2**n)):\n", " f = bf.BooleanFunction(fvec)\n", " strengths[i] = f.get_canalizing_strength()\n", " redundancies[i] = f.get_input_redundancy()\n", " if not allow_degenerate_functions:\n", " degenerate[i] = f.is_degenerate()\n", " \n", "if allow_degenerate_functions:\n", " which = np.ones(2 ** (2**n), dtype=bool)\n", "else:\n", " which = ~degenerate\n", " \n", "\n", "plt.figure(figsize=(5, 4))\n", "plt.scatter(strengths[which], redundancies[which], alpha=0.7)\n", "plt.xlabel(\"Canalizing strength\")\n", "plt.ylabel(\"Normalized input redundancy\")\n", "plt.tight_layout()\n", "plt.show()\n", "\n", "stats.spearmanr(strengths[which], redundancies[which])" ] }, { "cell_type": "markdown", "id": "ee6bba0c", "metadata": {}, "source": [ "Both measures are highly correlated but markedly not the same, \n", "which becomes even more evident when rerunnign the analysis for $n=4$.\n", "Some functions possess relatively high canalizing strength but low input redundancy, and vice versa.\n", "It remains an open question what drives this behavior." ] }, { "cell_type": "markdown", "id": "aacf9fe1", "metadata": {}, "source": [ "## Correlation between canalization and bias\n", "\n", "All metrics used to assess the sensitivity of Boolean functions \n", "(canalization, absolute bias, average sensitivity) are correlated. \n", "For example, functions with higher absolute bias are more likely to be canalizing." ] }, { "cell_type": "code", "execution_count": 7, "id": "ff37a312", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:19:59.030973Z", "iopub.status.busy": "2026-03-14T21:19:59.030873Z", "iopub.status.idle": "2026-03-14T21:20:07.109512Z", "shell.execute_reply": "2026-03-14T21:20:07.109201Z" }, "lines_to_next_cell": 2 }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ns = np.arange(2, 6)\n", "n_simulations = 3000\n", "bias_values = np.linspace(0, 1, 21)\n", "\n", "count_canalizing = np.zeros((len(ns), len(bias_values)), dtype=int)\n", "\n", "for i, n in enumerate(ns):\n", " for _ in range(n_simulations):\n", " for j, bias in enumerate(bias_values):\n", " f = bf.random_function(n, bias=bias, allow_degenerate_functions=True)\n", " if f.is_canalizing():\n", " count_canalizing[i, j] += 1\n", "\n", "fig, ax = plt.subplots()\n", "for i, n in enumerate(ns):\n", " ax.plot(bias_values, count_canalizing[i] / n_simulations, label=f\"n={n}\")\n", "\n", "xticks = [0, 0.25, 0.5, 0.75, 1]\n", "ax.set_xticks(xticks)\n", "ax.set_xticklabels([f\"{p} ({round(200*abs(p-0.5))}%)\" for p in xticks])\n", "ax.set_xlabel(\"bias (absolute bias)\")\n", "ax.set_ylabel(\"probability canalizing\")\n", "ax.legend(\n", " loc=\"center\",\n", " frameon=False,\n", " bbox_to_anchor=(0.5, 1.05),\n", " ncol=6,\n", ")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "22472ec6", "metadata": { "lines_to_next_cell": 2 }, "source": [ "### Degeneracy vs bias\n", "\n", "Similarly, the probability that a function is degenerate (i.e., that it does not depend on all its variables) \n", "also increases as the absolute bias increases." ] }, { "cell_type": "code", "execution_count": 8, "id": "3afd565d", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:20:07.111031Z", "iopub.status.busy": "2026-03-14T21:20:07.110918Z", "iopub.status.idle": "2026-03-14T21:20:11.032590Z", "shell.execute_reply": "2026-03-14T21:20:11.032300Z" }, "lines_to_next_cell": 2 }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "count_degenerate = np.zeros((len(ns), len(bias_values)), dtype=int)\n", "\n", "for i, n in enumerate(ns):\n", " for _ in range(n_simulations):\n", " for j, bias in enumerate(bias_values):\n", " f = bf.random_function(n, bias=bias, allow_degenerate_functions=True)\n", " if f.is_degenerate():\n", " count_degenerate[i, j] += 1\n", "\n", "fig, ax = plt.subplots()\n", "for i, n in enumerate(ns):\n", " ax.plot(bias_values, count_degenerate[i] / n_simulations, label=f\"n={n}\")\n", "\n", "ax.set_xticks(xticks)\n", "ax.set_xticklabels([f\"{p} ({round(200*abs(p-0.5))}%)\" for p in xticks])\n", "ax.set_xlabel(\"bias (absolute bias)\")\n", "ax.set_ylabel(\"probability degenerate\")\n", "ax.legend(\n", " loc=\"center\",\n", " frameon=False,\n", " bbox_to_anchor=(0.5, 1.05),\n", " ncol=6,\n", ")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "41cb3e6a", "metadata": {}, "source": [ "## Analyzing functions with specific canalizing layer structure\n", "\n", "The average sensitivity of the Boolean functions governing the updates in a Boolean network, determines the stability of the network to perturbations. \n", "More generally, it determines the dynamical regime of the network (see Tutorial 8). \n", "The ability to generate canalizing functions with a specific canalizing layer structure enables us \n", "to investigate the link between layer structure and average sensitivity, as well as other properties, \n", "such as canalizing strength or effective degree.\n", "\n", "For nested canalizing functions of a given degree $n$, there exists a bijection \n", "between their absolute bias and their canalizing layer structure (Kadelka et al., Physica D, 2017).\n", "The function `boolforge.hamming_weight_to_ncf_layer_structure(degree,hamming_weight)` implements this.\n", "NCFs with the same layer structure have the same dynamical properties. \n", "That is, they have the same average sensitivity, canalizing strength and the same effective degree.\n", "Iterating over all possible absolute biases (parametrized by the possible Hamming weights), \n", "we can thus generate all dynamically different types of n-input NCFs and investigate their average sensitivity, \n", "which we can compute exactly for relatively low degree." ] }, { "cell_type": "code", "execution_count": 9, "id": "bda045b3", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:20:11.033976Z", "iopub.status.busy": "2026-03-14T21:20:11.033868Z", "iopub.status.idle": "2026-03-14T21:20:11.054625Z", "shell.execute_reply": "2026-03-14T21:20:11.054390Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " Hamming weight Absolute bias Layer structure Average sensitivity Canalizing strength Effective degree\n", "0 1 0.9375 [5] 0.3125 1.0000 1.1250\n", "1 3 0.8125 [3, 2] 0.6875 0.7705 1.3984\n", "2 5 0.6875 [2, 1, 2] 0.9375 0.6369 1.5938\n", "3 7 0.5625 [2, 3] 1.0625 0.5993 1.5833\n", "4 9 0.4375 [1, 1, 3] 1.1875 0.5033 1.7266\n", "5 11 0.3125 [1, 1, 1, 2] 1.3125 0.4657 1.8021\n", "6 13 0.1875 [1, 2, 2] 1.3125 0.4657 1.7708\n", "7 15 0.0625 [1, 4] 1.1875 0.5033 1.6094\n" ] } ], "source": [ "n = 5\n", "all_hamming = np.arange(1, 2 ** (n - 1), 2)\n", "all_abs_bias = 2 * np.abs(all_hamming/2**n - 0.5)\n", "\n", "avg_sens = np.zeros(2 ** (n - 2))\n", "can_strength = np.zeros_like(avg_sens)\n", "eff_degree = np.zeros_like(avg_sens)\n", "layer_structures = []\n", "\n", "for i, w in enumerate(all_hamming):\n", " layer = bf.hamming_weight_to_ncf_layer_structure(n, w)\n", " layer_structures.append(layer)\n", " f = bf.random_function(n, layer_structure=layer)\n", " avg_sens[i] = f.get_average_sensitivity(exact=True, normalized=False)\n", " can_strength[i] = f.get_canalizing_strength()\n", " eff_degree[i] = f.get_effective_degree()\n", "\n", "df = pd.DataFrame(\n", " {\n", " \"Hamming weight\": all_hamming,\n", " \"Absolute bias\": all_abs_bias,\n", " \"Layer structure\": list(map(str, layer_structures)),\n", " \"Average sensitivity\": avg_sens,\n", " \"Canalizing strength\": np.round(can_strength, 4),\n", " \"Effective degree\": np.round(eff_degree, 4),\n", " }\n", ")\n", "\n", "print(df.to_string())" ] }, { "cell_type": "markdown", "id": "d27ea0a5", "metadata": {}, "source": [ "We notice that nested canalizing functions with higher absolute bias tend to be \n", "more sensitive to input changes and also less canalizing. \n", "However, the relationship between absolute bias and these other metrics is far from monotonic. \n", "Further, we notice that there is a perfect correlation between the average sensitivity of a nested canalizing function and its canalizing strength, \n", "and a near perfect correlation between average sensitivity and effective degree.\n", "\n", "To investigate the non-monotonic behavior further, \n", "we can vary the degree and create line plots that reveal a clear pattern, as shown in Kadelka et al., Physica D, 2017." ] }, { "cell_type": "code", "execution_count": 10, "id": "f88c7083", "metadata": { "execution": { "iopub.execute_input": "2026-03-14T21:20:11.055944Z", "iopub.status.busy": "2026-03-14T21:20:11.055858Z", "iopub.status.idle": "2026-03-14T21:20:11.110799Z", "shell.execute_reply": "2026-03-14T21:20:11.110537Z" }, "lines_to_next_cell": 2 }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAGwCAYAAABVdURTAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjUsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvWftoOwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAh2JJREFUeJzt3QdYk1cbBuAnCXuIyBAHLtwT9957W7Vatc5qRXFU219rW0dtra11tCqKddu6Z9W696hbcW9R3IKA7JXkv86JiaBgRYFAeO7riuQbCScR8r2c8573KLRarRZEREREJkJp7AYQERERpSUGN0RERGRSGNwQERGRSWFwQ0RERCaFwQ0RERGZFAY3REREZFIY3BAREZFJMUM2o9Fo8OjRI9jb20OhUBi7OURERPQORFm+8PBw5M2bF0rl2/tmsl1wIwIbd3d3YzeDiIiI3sP9+/eRP3/+t56T7YIb0WOjf3Ny5Mhh7OYQERHROwgLC5OdE/rr+Ntku+BGPxQlAhsGN0RERFnLu6SUMKGYiIiITAqDGyIiIjIpDG6IiIjIpDC4ISIiIpPC4IaIiIhMCoMbIiIiMikMboiIiMikMLghIiIik8LghoiIiEwKgxsiIiIyKQxuKN0EzpqNwDlzDNtz/ObA97yv7ticObjbs5fhuNgvjuvd69Ubd3v1fuNxrx97/XHi+cT3NdbrTE1bEx97/bGvH0v8WGO8RiKirCTbrS1FGUilRNDMWfKuy+DBUCqU8PHzQYH1J1B4zXHY1Kguj596cgo+Hqfh7eltuHhHnTxpuK+srXuc0OmoxnBs27i+bzxOPJ/zsKFGe52paWvi1/jG+5Po2PqXzykea7TXSESUhTC4oXQjLtiCvPBrgc86d0aRC4fg/s9x+HepgVYTF2Prd73gseY4JrcsA89a1XH7h7GIW74OFj06Gx7bCUOB2t54Mnsmgg5rYduzG64FX5MB0rTWFdG0R/8kF3399zXG6+wYMwCW5Xvi3su2Wnn1xaUHp1F0zXFMbeWJRk3a4unPvyB4yZIkrzE8Lhzt+vdE3j/3ofDW4who5QlPV095LOy4AkO9B+GjoxqjvUYiylgzdt+ASqnAsMbF3jg2c+9NqDVajGhaHJnZ3bt3Ubhw4Tf2Hzt2DDVq1EjX763QarVaZLMl0x0cHPDixQuuCp5BHo+fgNDVqw3bLzxcMaBLMMyV5rAOj8OCmeoUHxtVODds/J9CYW4ObXz8W7+P89ChcPE2zkU/ITAQAZ8PROzVq4Z9q+sqsb6OEiM2qlHzWsq/ZutqKdD5Xy3iVYB5ym+F5DR4EFyHDUvLphNRJiQCmOm7b2Bk0+JJApyU9mfm4GbPnj0oU6aMYb+TkxPMzc3T9frNnhv6IDL3Q6V81ZOwfzKgVAH1R+Hp1KmIPPovYq9dM5wvLvGRJfLDXBmOeE087BVmiDNTwzwBULw8Hp/opzK6aD5Y3X8OZXw8tOZmiNcmJPn++scJmrAXSdtzcAqgUQMNx+jaKvJi1Bq4DB2SZq/x2axZiD53DjHnL0ATGWl4jAhURGAjJCiBOLOkbVWbq6DW6iKZHXWs0f5ElAxsNAogQZX0+yd+nGPXrm+2J9HrfN/XSEQZIyou6WdYYkqFAlbmug8AEbjEqzUykBFfBzXwwNwDtzFr3y0MbVQUn9cr8p/Pa2OR+kt8gwYNUL58eVhZWWHBggWwsLCAl5cXJkyYgPclghk3NzdkJAY3lKZ5NfKiv38SAmbtRuSlB0lOjVcC5hrgRNQVxGsSZM9NsE08HnasIYeY4pUqmGvUyDv41bDLlq9+gFPCWWjMzKCMT8DGukr8XdcCCdoEdDqiQdfDGmgUWii1CmhiY6F0cNC15+4RuNj8AzT8Vj7PB+WqJPMatfsm4dHCgwg7ecdwmtbBCooXMYYeGNG+zfUsMas9kP92lSSvMfegwYbX+PVXP8BcvUL3GhMS5Psx2uO0fH/aHYqVr1GtBFQaIHjqF1AWrivbow4Lh1tNhXy/xetkPg5R5ld63M4UjzUs4YLFfasZthcc9pdfRUAjbnri/kn/YKweWNOwr84v+xEcGZfk+e7+3Pq92rh06VKMHDkSJ06ckENIffr0Qe3atdG0aVO0bNkShw8fTvGxBQsWxOXLl5Psa9euHWJiYlC8eHGMGjVKbqc3BjeUdnk1cnsUAv/xQ+Slc3I7JqcNrEKj5BDN33VU+PycMz7a8RierrqcG5FoKy76IgfnVv1v8HiWD3q9fK7jd56j6NYVuNWmOx72dMGT2bPkhd674gCcfHwSRQ6fwLr65lhTS4vP9iWg+arV8sLu3K4igjafQ3SZqnD/dgSCPjAfJ7nX+HTVcYSd1A1BqVycYZ3fBhHnAnCggS3+aeaGKtv9X7a1v0yYfpfX2HbqWMP78UuXGqjqVhVBh2cZhrdkMLfFD7EtI+H60UcIWbIE0Zvj4P7tlwi5bMd8HCJKE+XLl8f48ePl/WLFimH27NnYu3evDG5Eb050dHSKj0083GRnZ4dp06bJwEipVGL9+vXo0KEDNm3alO4BDnNuKE0E+sxB0KxZhtyY6LqOuPokBJVu6nJPnjTJh4LPbmFFDlv8sicahU+ZwyZ3HKKeWsC/ajxGN7GWs4Hu36kNzdKF6HVN99eNY9kIOVvIN1cODAoJx8f/ahB0wVYeW1O1ONY1uYNSMQno9eIFqp9UIOhSDuQsHoHQm7aAVj+YA2yq2AaLizTCLrMvkBdBSdquUADmKiXgUgLwOoIm0w8i4HkUNpuNQhE8MpwXfNkGIZfsoFBqodUooHHPAT/XENSNjkHkFVvkKhuOFXXMsMjRHl7BYXK2lDhfEIGN6I1JCGqGBS+Ow+NKgOFYrnKRyF0+Gr45bOGT0x6/vOzlEZwbuGFtKX/MzWkPS40Gbf6FDJoe5dUg76OklRwY2BCZzrCU/lz9UJS5SoF4tVYOSYkhquTOTathqTJlysDHRzfrU2jfvr0cWlq0aBE+VK9eveDv7//W3p+UMOeG0pWotyKmLXtV8Hq1Uy0SQxQysNGogFwFr8NfkxvPXDVoWPwF6n18EXNnFoJ3SChaeYQhMNoOkU8t4Vw2DKU8IhCgrITo+HhsOvcQkSWbYsDzLVBCC7eyYVAoHOTjvELDgNJAVKgTtG7lsa5wd8QG7kR1s81oExUJlNU15ZqZBXY2U6D7Ti0UUMgY5+9SjREXpYaZWQIsFLoPAd+cOaCBAoNDXwDql69BDJ+pNYDjTqxXafDti1cfGDncohF6xVYGNiIvpnuPSEBhCcddalQpGwbXshGwxMu2vgiT7Yl9ag6tylz2Uv0y/xs81kbBDAnydcljAHKX0X1/jdYa3i+i5Ln37vaWx1zqRGLwrbNQatWIUigRU06BNbCBQqvCtQYKjF2hkW0T5zq0a//G/5Woj6PRajDYk0EPUWaQmoBDDEuJwEafPKxPJhZ/jL2eTPw+gUxKXk/2VSgU0Gh0nzXvMyyVWPXq1bF7926kNwY3lGr6eiyCCHBCN2xE0Jy5huRZMzVge8EWzSoFwTNeCwsxDnzoVwzu+6/hOVxe3sR0RigV8DKzAmydcerccfx7+zl615uABLUW3cq7o0tVd/mYEJUSjrYWKPiVJWDngl0voqHV1oMyYgjCz86D/VlfOJWPxfzcNihyWgkFNPKir9ACvx3+Ee5rdkEVuQdPtGr85b8GS/1Xonfhbgjy6ApnO0tAqft1WDuwJpZevYxl1/bCsvJofFq4C9T+9xDm/QWgSdDlDomcmqNaoEIkqpWOgnN8DMIreaFjxQHyOZ7IVB0FCo6wBBS6HpZ1n4yXgdPqA2fwxfE7UNVV6F5/DNCkdG780F7MJtD1NhVctlT3RkUGAQkxMISRx+fiZvg8/OLkiOayc8dM9xoBXP2oLcruPQDVy79oRGCjr49DRFlLcrOi9F/F/sTbGWlBKoalkuPn54c8efIgvTG4oVTT99iIC2eO83dQYbLoZQEuuwNX20XD66wTgo4BhQvVgcWUFbrZPCLpVYz/1B8lHytGQ/dff4Yft17FTx3LoUYRJ/nLLAKb1/9KgYM22V/iPA7Wujvn1wFnfWVSrbL+KEz5XzeEHPbDhnpmuJJHg29Wa+Bw/zn8+7VBnY375EVfBDbiop+k9+kl1xxW+F/1IbC3MpOvMZfGEtVG/gVVfAKe5QC+GKiC12lrdN0fAWfHmnB++Rrt90+CvYOT4TW+zsXeUr6m34+/wMimNeVrmrbruvzLzNLJHXDIL88LDI8V8R6cRMBl6/zqCcT7eGw2ijX8FpMv2SLo+GzZ85Xz0/64On4DLMKjcbZlfVQ5cBLzriw0BDbJvUYiytzEHz7JTffWb8s/jIwgX758qUpMFrOtKlasKLc3bNggh7ZEgJTeGNzQexlYfiCeXz2PMj9sgVIL3HMB5nUzh49jbbg8Xwu4tJZJvSgkqu++vNiLAAfArVKD8cPWKzh4I1Bu++zXZf6/118p+sBJzIqqP0rOGArZ4ieTij+3347fS9fH/LCbGLhdA6erjzGrW1n80UIhL/oeOT3w0d8fpfgaR1cbjaElP0cJ7zlQRQFh1sDEgfb4ya0yWuRegaB2Kb/G5AKc5P4S+7JZCdnFLPbnsDKX+yduvYID15/hiybF0atmQV0+UKLXGSiSh2e9TB4uEyH37//YHQ1XAnbPYzBxcAWsq6NiYEOUhb2tQF9mr2+T2A8//IB79+7BzMwMJUuWxOrVq9G5s66AaXpicEP/6fW6Kjef+GHWkenoNOMULNRApAXwXR9znOrjB8XBX+QF2EVc3Avpaq5I9UchJl6NE9ee4LOdh5Cg0coEuX51CmNIw6JybPm9/kqR9V10gc3LE18l1h6cgh81alz85gcciRuKImefwu25GuZKa3nRX39jPW6F6qZXjluuy62Z2OPVr0RkdDhaLrmKiAggQQGM7WOOLb0OwObI7ym+RkOb3vMvMZEUeCcwAuExCTIAXHHiHsa1LYP6iV/nhdlvJA9/EvEY83OdRYlNz1D6nhaorYXl/VOIK9kDFpb2uv9H1sAhov9w4MCBN/aJ2U3vo3fv3vJmDJwtRf/JUD9lUH84FH2EZk93YMA6LSrd0f3o/F3TDMsb4K09BVvOP8KEzZfx/GUdhialXPFt69Io7Kyb+ZTe5p6fi6ezZ8uZRmL2ltuQofio6EfwD/OH5bLNsFq8UZ4X0/cjxPbSTVF0m78N0SvWyvv7PFXwbanIkN4QEeSsOX0fv+68bqhb8S7vlxhu00+XX1tbgQuFlYjOq8DosgNQ6rQZp4oTUZbG2VKUphwH9AMenEbQ3AVA2TAMqgmEu+QG7kTjfitPfD19JXK+TF4Vkrv4a7RaGdgUdbXD2DalUb+4SCfOGPoVtb2HDIVzRQ26zpwF/+u/Y+uPUWh3yQpBizcaCt+JACC/fX7k6tEDlzd5QaTGPatZDN6LN0P1H68xrYhE5G7VCqBVuTxyKGvpv3ex5+ozOYw3v1cVNCjhmuxrlDk2Q4YiV+lofDzvD3T8V40JPVQIvrAFQTseMLAhomyDPTf0VifOzsPPfj4YEvQM5Y6b4fkVe2jMlFAmaOD/cQ20+mGx4dzEs3PaFuwta8XU9HCSx8SP2d9+j9C6fB5dDkkGSdwmfUByu0VLxN29a5hlZOHhAcsiulLm8YHPEON3HhozFZQJagRWL4p6S7e89fnS261nEXKI6tqTMOz7sgFsLZP+TfJ6m7QaDe60bYu423cMr1Ef2Dy8vQv2zqWQw0E3A42IyBSv3wxuKFn3XwRg2ubu2Kt5ISITdLmkxif/2iHhRTSgVsuLf5lLl9543Oyzc3HCPwgnz1WBvZU59n9VX37NTDV5Yu/4406rVsmeb1HUA/H3AnT1elJ4jcaoHSN+TQMjYuFqbyW3NRotvt10EZ0ru+NEyMo3XqMmOhrXK1WW/3dCjjZt4DJsED7f1Q53VMCQfE3RqdEvUJlZZNhrICL6EAxu3iI7BzeJE4Nfv+jf66UrGue6cC4G7xmMc8/OQQMNPB5rMHajAjYvXiXJ6qsQJx7mED9GWy88xuRtV/HoRYzcV61wLkzvUgH5HW2QGXOIoFLJQM2uQQPY1a8nj0WeOIHwHTuTfY2ZyfozD/Dl2vPyfgfPvPi6ZSm4OegCnySvUakUkZBup5UFbrvE4UxBBdbVVcFJC9TLUwsTm89L8jNQaNnSNwI4JiMTkbEx54b+cwFIZe1XhfjEMgFRJ0/K+zOG1MSZWhrkiNRi+MlcKHdcN11bf5F0GjwIrsOGvbp4AnjavgcmbrmCk3eD5Xa+nNb4plUptCrnJitbZiaJF5cUQYt+26p8OXlcBDavHxMyW4BTr7gLulTJj7VnHmCT3yPsvPwU3g090L9uEYTPn5fkNT6eMAGhq1YDMXEokeAGjyNPYA41VtZVYeOTf3FxWVVMe9wcsS9/BsT6Vj4epw3F/7ggJxFlNey5yWb0FyrbunVwNVcMIs6eRun7gEMZGxy0ewHPE+bYU80SjS4poIzS9cConJygfv78jV4M/XP9VaoFlpdoAitzJQbVL4rP6xWBtcWrNU8ya2Dz+n4hpWOZtQfnwoNQfL/lCs7cC5HbA+8dQIdzW+E8dChcvAe/sfZXzk8+gZmri3xN12rnwDV1OIo/1MqfAU0ZD4Spo5Hz2iOElswLz++nI+Lo0Uz9+oko+whjzw0lRySamud2g8LGBpGHj6BAomMLckVjbR1rjLLLgSZ7dT0wgkPnzjDPnTtJnRsRD4seGf12qQuP0K6CGBopibw5X1YNzowS18BJRGxHHT+hW8spmWP6x2ZG5fPnxDqvmth8/hEmb7uGiKhY7KzWHsMGDUpyngx0RCeaGFp6+ZpKzpyFkonOUV6+jZwv74sA526PT4GEBAY2RJTlsOfGlAvu7Z8MKFWy8Js6IlIm0SY8eybP08+i0SiAHVUUOFtEgatFLXG251lcLVceiI+XeSclL15I8vyicu6UHdcxr2dluOfS5dIkqDUwy8AZUJQ8UQDQ98Bt1C/hgsoFc8l90XFqWTxRrMmVmPi1v1a2rC5oUyqxrYpC5tiIPKxuRdohZPVGWXla/zPw8OsxMHdzg+sXw3XVkmVRwTHyuZiPQ0SZ7frNK5KJ5tXIC44IbETJ/oNTELxsqQxsNOZmuFZYLCoJxKsgL2DhVrrAJl4TL/Mt9IGNSKiVzwPIqrn9lpxCn8WncOVxGGbtu2n4lgxsMgexKvDIZiUMgY0w9+BtNJh6QNbKEUGoXtDcuTIgEf/PIpcq3FKLlc2ssKSxAtsf75Q/F+LnQ/wM3P1+DML++QfPfX3xoFsLaPdN0v1sJUnO5s8AEb1J/CE1depUFC9eHJaWlnJtqkmTXi5Tk444LGVi9MMH4oITVasW8n00EiGzfkfQpRw43Sg/HkQ9RIfjWmypo8Sj1qWQc9tVWdHWu2J/nHpyCoXXHId/lxpoNXGx4cJ16EYgvratini1FmZKBfrWLoShWWhtk+xKTBcX/3cvouMxfvNlLBdLObQpgxK71xjyaNbXVhqqGht+Bg4ex556FvijtgadjmjQdeUmxFubwTweCD93D7f8iyJ/l9aIyOT5SERZWqKe9ze81nuamQ0fPhy7du2SAU65cuUQHBwsb+mNw1ImSPyX+n/UEbHXrhlmOa2vo0CCQiEvYjebuuFe34744+IfckaMmC2lT6gVgc3olzNlcmva4NLkGeh8YRuWlWyOJ+2747s2peHhYmfsl0jvSPTWrDp1X64+HhIVj27XdqPXtZ0w7++FPU0tDcX/kvsZ6JinDq4GHELpE5A/NzcKaFHsoRIK9auPDAY2ROnktUWB/3N/GmnQoAHKly8PKysruXq3WNXby8sLEyZMSPVzXb16VT7XpUuXUKJEiQ9uGxOKs5HkitQFzZkjAxuZV6PRQKEEzMtHouBpS1h4xqHdrP265Qj0VXYrwJBQK3psAl7WOLkbFIWFRRrB0lyFjkWdULVvNaO+Vko9MWT4aY2CaFM+D37bcxPqa1oZqK4PKY4Wj8//58/A+Maz8PeLQtistUcslDjaowj6/HwbipfxTc6PPjJ6gUOiLCUuMuVjChVg/rJelQhc1HG6QEZ8rTMCODIDOPQrUO9/QK2h//28Fu+3dt/SpUsxcuRInDhxAseOHUOfPn1Qu3ZtNG3aFC1btsThw4dTfGzBggVx+fJleX/Lli0oUqQItm7dihYtWsg/vJs0aYIpU6YgV65Xw+fpgT03WdzrpfdfbN6MR6NGG45rRF6NGnAqGwbXCrGAOj7FiP/xi2i5GnXx3PaGZNS1Z+7jk6oFYGHGnApTcPNpOCZuvYIT/sHYO7K+ISk8RS//SoxQmuEPBzu0vVsRCduvv1q6okolePy13GhLUxBlORMcUj5WrBnQQ7dYrzQpDxAflfy5BesAff95tT2lCBD1/LXv9eK9em7UanWSAKZatWpo1KgRfv75Zzx8+BDR0dEpPt7c3FwGOILo8VmyZAk8PT3x66+/yucdMWIEHB0dsW/fvlS3jT032Yj+IiIuKubnb6D6LzugrzCzq54Fhue9i8BLdjLnRtFoKFzKROj+EhBeBjhiNs38Q3cw58BteLja4m/vOnLxRlGrplfNQsZ6aZQOiuW2x7J+1XAnKDJJYDN7303ULuqMigUck+3+tqv3P/Qc1R1B2/3g3K4itjb3hPWvS1Dh9FkcnDgEV9qXSdobSERZVvny5ZNs58mTB89ezrQVCcHvSqPRIDY2FsuWLZMJxcLChQtRuXJlXL9+PU2GqlLC4MYEiItJvP9dlJ/wN1QvV0nY38AGvfLeATSAS/c2wJMKupwKkSMhem72T5JdhDucemHStqt4EKKLxK3NVQiNioOTnaVxXxSlG1GjKHHe1Jl7wZi664a8daqUH6NblIDruZlJxvVlcvkWXWDjYvMPuj2ORbPeudBoXwi6rtiL/ff3wdt7KAMbov/yzaO3D0sl9r9br4aiVBa64SkxJCWGqES+QWJfXEyzJpqLWZSJm6VQyEBFSM2wlAiKzMzMDIGNUKpUKfk1ICCAwQ2lUMfmpeCYYFy8dxJ11ECUObC9mhLfud2SgQ1KtAI6zoOL/mQxHVhcrMJjcPD0PXwVdFbuzuNghTGtSqFt+TyZbskESl/ujjboXDk/1p15gPVnH2DHpcdYUjgQFeuPgZl++DJxAcRl7WF1aw/2upRE1bpmKHs3Di1OaxG61Q/wTPrcrIFD9AF5MMd8dIGNPpVA35sqAp3XUwveM78mtUSS8X8NS+mJPJ2EhATcvn0bHh4ect+NGzfkV/3QVXphcJOF14cSF5qYhBgM2zcMRS89hVU8sLmmGVbXA5wj3OBVohvQ5FWGuz4gOhcQgk5HK0OjBSzNlBhY3wOD6ntkyiUTKP255rDC1I8ryMTjCZsvw+9+KD6+3gAFg2zwresTNC2dO2lw0t4HmN8YC+MfQa3NiXBbJRzua+Dw1yEcKvAL6vXS5XxxTSqiD5DcrCj919dSCzJSvlQMS4nk4UqVKqFfv3747bffZO+Pt7e3TExO3JuTHhjcZOE6NtBqYdmyCapu80ezwxpc7eiJ0T+thMPLxE4450ZygwQV8ueUZfvzOVpjTMuSmW7VbjIOT/ec2DCoFjb5PcTP26/h3vMofLPxEuoUc5YFAg0c8sO3Rjf43F4P75BQ9O3bHrt9jiF/QBQcJy/B+fyFkfdaEGvgEH0IWccmmckf+m1xPJNTKpVyxtTQoUNRr1492NraymGtadOmpfv35mypLEr/V7F+1srV9mXQccR4wK3cGzNXyth0gu/B25jXswrsLM0MM6HYU0MpiYxNwJwDt1DM1R4dKur+UhMfFWExCVh5Y6HuZyt/M3gdWSQWLUNCg29x9Lu/4BoUb/iZZGBDRGmJyy9kA4HW8fKrXB9KqUDHoiHAwubA7f1yv0js7FH8c2zye4CeC0/i6K3nckaUHgMbehtbSzP8r3lJQ2Aj/O33CA1+3Y9z94MxqPxgeDWeBrT4RR4zOzAJlad9aQhshFzduxup9USU3Rk1uDl06BDatm2LvHnzyiTWTZs2vfX8DRs2yLE6FxcXGbXVrFkTO3fuRHZz8u8/oP3FV7ehVEKp0SJw5zVAZS6HDCJiE+SwwqKtRXHtak25ZEK/2oXljeh9bTj3UFY53nmkAjYfLIN/bwcB1T8HaogVx5WI3nzYENgItz7ujDgxu4OIKDsFN5GRkahQoQJ8fHzeORgSwc22bdtw5swZNGzYUAZH586dQ3Zx/dQuWH0zQ/7HBefPgRLTO8C5bJisYxOo7ob196zRcOoBOQwVp9agbjFn7PiiLsa1LQ0Hm6TT+4hSY1HvKpjYvgwcrM1x7Uk4us8/gUF/ncH9Kt8g0NIbQeuPyqGown//Da29LTT3H2L9N5/I4SwiooyUaXJuRM/Nxo0b0aFDh1Q9rkyZMujatSvGjRtn8jk3T+5dwcN2nWETq0WoowUqTR0Iy926hdMCNT0QtGY/TjTojAk5a6CQkw3GtimNRiVdObWb0lRIZBx+23MDf50IgFqjxac39qDHlR2vcmyigvHvw+PY/esodDmkxp2Pq6P1D0uM3WwiyuKyTYViMa0sPDz8rWtUiOqI4pb4zclqtWxm7L4BDWLhsHYwasdqEWcGlPx9DCy3644fyDsADT6fCrjNQb3IWHxTvSR61yoESzPm1VDac7S1wPfty6J79YL4fstlaK+qEduzv+7nNfgOgv9oj4IWTig7ciwu3Z0Aq8MnsG/JD2jUZyxm7r0pA6IRTYuzBg4RpZssHdyIJdQjIiLQpUuXFM+ZPHkyvv/+e2TlWjYKhQYLrv2ATzS6dUNsP/4IOfy3AVo11ibUw/yINmjw8lxRrO9zIzefsocSbvZY3r86/JqXgKd+2YaEWFjHPUeumACU2bsBd0uWQcFdl6H+ZQVmvLDB749LYuTLwIY1cIgovWTZ2VIrVqyQQcuaNWvg6uqa4nljxoyRXVj62/3795HZiSBFfOiLD39xEWhYPgZdz19BlyNanG/RDLc6DUPVq10xMb4nvknoD3trC7k+FFFGE0OeidejemRRCIPjv0C8VoWSgTtgUyYfgvPaQaUFGv6xAMNKvkC367tZA4eI0lWWzLlZtWqVrHi4du1atG7dOlXfJyvl3Oj/uhUzoqDR4HSzOhhr094w2dbWUoVJHcqhvaduthmRsT0Lj8HP265BdWE5fjX/Q+4bFdsPbXbvhkuEmjVwiOi9mXSdm5UrV6Jv377ya2oDm8xMrKgsCu8lZqEvT63RyFo2Pau/wGTzRVBBDaUCOPlNE1mHhIENZRau9laY3tUTn3z+DdZa64aLJ1ksxcJG7QyBjfjq1K/fG48VP//i94CI6EMZNbgR+TJ+fn7yJvj7+8v7YrVQ/ZBSr169kgxFiW1Rurl69ep48uSJvIkoLqtTKpSy6qs+wLl85G8EvMxH0Cigq2Wz8Sg6KA+juOqxXBdq4RF/I7eaKHmVCzriUaUvsVldE+YKNUbd3mwIbMTXs20aQ6N+NZSqr6gtfg+IiD6UUT9JTp8+jYoVK8qbMHLkSHlfP6378ePHhkBH+OOPP+QKo2LhLbGUuv42fPhwZHWiorBYKkF8wM/ePh5xg8fATAM8zgkc/rmGoZbN2WdtsX3SQJmUOX33DTn7hCizET+XM/bexv16U/EkuD6Ul9VYVrI5Tn/xEzQKBWwfBGPB8KZvLBUifg+IyDRMmDBBjiy8fhNrTGWbnJuMktlzbuYcmYqKwxYiZxQQagOcndAAg8+uhAJanH7YFLaHLxvyFcQFRAQ4ItAZ1riYsZtOJCX+uUycPLyyRFO5f5j7bYSf85UJ8qvrqrC+joKBDdFrxBCt6MlM7vdC/EGg0Wow2DNz561FRETIW2KNGzdG1apVsWRJ6mtfZZs6N6ZGxJllZu6UgU2UBTC2nwX2XNgoO/Mv5OmMKuMXIHDuXFkbRNAHNKJuCFFmIX4e9QF34JWdhmB8GIBST7egQPC/GN2gM7SK9VBqNHAJMUdF+4+N3WyiTJmqICQOcBL3dKaHBg0aoHz58rCyssKCBQtgYWEBLy8v2QuTWnZ2dvKmd/78eVy5cgW+vknzS9MDg5tMUqhPCAgPwKJSTzD8KvBvaSWe2mvgm2AOL5e6KP/JPDGl7I0ZJuyxocxGFOjTS1Kg78UDNL39M6CORTM3LZ5rtPC8o0WbU3H4+uloFCs3GGNalkR+RxsW+COTFRUfleIxlVIFS5WlIaCJV8fLQEZ8/azcZ1h4cSH+uPgHPi/3OfqU6fOfz2tjbvNebVy6dKlMEzlx4gSOHTuGPn36oHbt2nL5o5YtW+Lw4cMpPrZgwYK4fPlyssdEsFS8eHHUrVsX6Y3BTSYp1CcM2TsElR9pIBb8/qSeN8zd78AHO4GSdeGl4n8VZXEO+YEOc+C7dwTmRt7AeCtXFH38VB4at+covrKyQOMrbTEz/iwK/P0XC/yRSaq+onqKx+rmq4s5TV7NGPzz6p/yqwhoxE1P3D/77CwWt1hs2NdifQuExIYkeb6LvS++VxtFz8348ePl/WLFimH27NnYu3evDG5EgBIdHZ3iY83Nk1/DMCYmBsuXL8fXX3+NjMArppHoAxoR4MTd8cf2Rg6ovO0Ouh7WQPX5p/K47Ig8X1TXNWlmwZwEyvJ8NUHwccwJ75BQdHZ9gLWNK6Ps3odwCgfG7tuPU3kCUMDvNuvgEBlR+fLlk2yLiTvPnj2T9/Ply/dezynq2Inlknr37o2MwODGiMSHtyYyCsELF6LWVt0UWUWr4ijep7vhHH1AI5LHiLI68XMsk4fvXgTO/YWG+a/iz2pOaHEyHkWeAkWe3obT0FeBzdFbQXIV8rL5HIzddKI0caL7ibcOSyV2oMsBw1CUudIc8Zp4OSQlhqheL5uwo9OONGuj+Wu9L2KGk1jLUXjfYSnR49OmTRvkzp0bGYHBjZGpQ3XdiDKwMVOiZI4DwKLmwNCzgKUuEYs9NmQqDLM7ysYDoffh7H8QFarmAM6ogJd1bxxatpBfo+PU+GrteTwJi0HXKu74qnkJONvp8hGIsqrU5MEsu7JMBjb62YT6ZGJzlfkb14X3za9JrfcZlhI17Pbv34/NmzcjozC4MaLoS5fxYv0G3YZKCW2CBoGX7OAy6n+GwIbIJKnMgS7LZCBf7m4RBKn9ZMI8tFrcHzwYRXfskOulVSucC3/7PcKqU/fxz4XHGN6kGHrVLAQLMxb7I9OWXP0n/dfkZlFllHzvMSy1aNEiObQlen0yCj8hjDjt+8FQXcLkXRfg12HxhkJ9gafjjd08ovRnnROBmu4I2uInc2yKbPsHGgd7xN+9h0CfOXC0tcDvn1TEOq+aKJsvB8JjE/DjP1fR4vdD2H9dN/5PZPJDuK8FMPqCr1klVUGj0ciaNmLGlUqVdNgtPbGIn5E8+GIEwnfsQIISGDpIhZ8jn6FGoaYIfF4LQbNmM6GSTJ5+YVj9z/ri8/Mw49ws/O9yEVTZcjPJ74ConbPuzH38uvM6giLi5L5/htVBmbzMxSHKLsJYxC+T2j8ZUKqgqT4MEUeOyF0bailRQRWNGuZOgHMJuHzireuef1moj8hkqTWvAhh1Amrtn4HfcpphSll//OXSCdqEBMOpqsO/oqtGjZZffYXZ+27hyYuYJIGNCH5UYjVZIiIGNxlMZMLvnwTExCOyRQ2E7dmD7dUVWBuqBiIfAeZW8jT22FB2kKRAn8oMJZzLoHPIGayzs8Pup3vR4YI9cvXsCbML83W/Nw2/RQ4rc3zTqpQc1tUTgU6Xecfg3dADnSu7M8ghIubcZKj6o+QHtPrYFIwvdQYjB6jQxakU3CND5H55nCi76rEO3laFYKfWoMypUMTfv4+gr/sZApvEvx9iaqreoqP+CAiOwuj1F9He5whO3Q020gsgosyCwU1Gqz8Kqyp1xL2EcDgoNPj84m4GNkSCQoFc/fZgYIIFljTRfTSFHLqKmKKfv/X346tmJfBd61KwtzTDpYdh+Nj3GIatPIdHoSlPVyUi08bgJp3Xj5Jr5LwU7eeHez17oYn7AIzdF4MfdkfDTmnOwIZIT2WGbr32IyqPGg+cxLRCBZ6uPp5kGEoQv1dyfTZATgvvX7cI9v+vAbpVc5cpa5vPP0LjaQcx98BtI70QIjImBjcZsH6U+CDWajR48tNkRJ06hehR/0O5E2YoKYqWqeOAg1OM3VKiTMP81Hz8LzgE1wrrtqNuBiFi3z7dhlZrmGUlfr8SEwX+Jncsjy1D6qBqIUdEx6sRGq2bWUVE2Qungqcz/QexfdOmCN+9GwpRrE/MEmlXES5TVugCm2RyCoiypZe/D9oG3yCmzjA87dAC0beeQWljgWLHT+H5yPYI2nMXzoP6w2X4lyk+jfhY23bxCeoVd4a9la5i6vUn4XJWVem8xisBQUTvj1PBMxEx80mboMbzl8NTIrCxbFNGF9gI+oBGBDiJt4mym0SBvqL+KFgDcF+1DTdr14AmKg7XPT1FZTNZ7NIlZjZwygGo1EcOZb1OJBy3Lp8nSbDzzcaLOBcQgm7VCuDLZiWQy9Yig18gEWUUDktlAIv8+Q3341WA1YSZyc6igka3tg5RtiR+/l/rwVTa2uDBxAFQi08qjRYKMzO4NHQHooOBf74E/qgP+Ke8iJ9eVJwaeRysxFNg+YkANPh1PxYd8Uc860kRmSQOS6Uz8fberFsP6qAgqBWASgtWHyZ6R2FxYfAZ3gAd9kdDY6aCMkEN5yHecKlmCez7EYgJ1Z1Yqh3Qehpg5/rW5zvpH4wJmy/jyuMwuV3U1Q7j2pRGveIuGfFyiCiDrt/suUlnj8eOlYGNWGbhm6/d4ODtZUgyJqK3i13wlwxsVtdVwus7R9j264mg2T669deGnQOqDgAUSuD+CcBcDGS9nViIc8vQOpjcsZwclrr1LAK9Fp3E/mtcq4ooPezcuRM1atSAvb09XFxc0KlTJ9y9exfpjTk36UgEMC/WrcfpEma44abBgDojkdejrVyuXs72YDViov9Mxs811Bvn8+1B9+U3EH5lOXJ1+yTR789UoEpfIPwJYGmve6BGA9zaDRRrplvK5DWigrHIu2lVLg9m7r2J03eDk/TciN7WxEUCiYxBljpQKZO9Rsg/jtWapFW+MyF/f3+0b98eI0eOxPLly2WPy4gRI9CxY0ecPXs2Xb83g5s0NMdvDpQK5atVXNUanG9fGlNK30BumzxwCwuQuw0/rBzvJ3qntadKHn4I84QbUKo1CAt/Lvfrf398nxyWKyQPRmPd4y6uBTZ+DrhXB1r+AuStmOzTO1ibY2yb0khQa2TAIy4mCVBgsMoT3asVwDPVZqiUKvn7fK9Xb4jx+0LLluq+53lf3ff0HPzGscSfA+IiFHnsOGxr1pCvI/HjstJFioxXSkRIHOAkXnA2PTRo0ADly5eHlZUVFixYAAsLC3h5eWHChAmpfq4zZ85ArVbjxx9/hFKpGyj66quvZMATHx8Pc3PdTMb0wOAmDYkPNB8/H3lffLDZevXDsi3bgHDgadRT+UGpxx4bordLfMEvmKMgtlVRovZVNeJ27IHjoQkwy5VLBgvid87b0/vVA+PCAXNb3VDVHw2Bij2ARuMA+9zJfh8zfb0clRKhM2ehZMnm+F9AU7gXeYhQyy0osP4ECp88abiwrK+tNHxPsR2V6Jj4vdZ/DsjHrTkOmxrV5cXo1JNT8PE4bWhrel+kKHPSREWlfFClgtLS8tVM2/h4+TMivjoPGICg+fPxfK4vnAZ5walfv/98XqWNzXu1cenSpbK35cSJEzh27Bj69OmD2rVro2nTpmjZsiUOH045ib9gwYK4fPmyvF+5cmUZ1CxevFg+R0REBP788080adIkXQMbgQnFaUz/YTu01OdoNv1f+HnmwATXo/CqPORVjw4RpdovJ35G6dFLUfQJoPm8Gw43djUEGW/8boU9AvZMAC6s1m1b2OtmYVX3AsxSngL+ZLYPQmbPxqqyLbG0aGN8en8eepy5iesdq6F2fl2QIvJ/3IYMRaejmiTBif6+uChtG9dXBjb+XWqg1cTFb2wnDmz4h072crVkqRSP2davhwLz5hm2r1WsBG108suI2FStioJ/LjNs36hZC+qQkCTnlLp29b16bkRvS+IAplq1amjUqBF+/vlnPHz4ENEptEkQQYsIcPQOHjyILl264Pnz5/J5a9asiW3btiFnzpzpev1mcJMORIBzbcksDNyuwdOcwLW5Q+FVkR9gRB/q98md0GzpFQTbAd6DVf/9R8P9k8D2UcCjc7rt0u2BLq8uCMnRBx5qlRlU6gRcd3FAgvULKKCA8wstXF9ADkOJrJxgFyss+NZTPq7mzgeou/2BLs9Hq0W0sz3u2ITLx2mhRZGYHLB+FgaFubnuL3EGNtlSVghuypQpAx8f3SiEIIaRnJycsGjRolQ915MnT1CvXj106NAB3bp1Q3h4OMaNGwczMzPsFkVtU5nbxiJ+Rjaw/EDsPq2rZbO7ihkmMbAhShNDv1yJE+sqIFcEUOuGEiWblkREXATsLOySf4B7NaD/PuD8SmDv9wi8kQd4OXwk7Z8MiOHi+qMQ6OODmCtXoY2PkwGIKj4eahWgMlehhEyXe/V3oP4j2SosBqefnpb3T3sCdXbIvxjltnVQOMrIe7ptjTIcMFPKwEY8v2PXrkmTRkURQ1nrZ4w8n/k4pqnE2TMpH1S9Sl0Qih89YhiK0gfFYkhKDFHhZQ6LXtG9e9KsjeavDRmJIEQjEvWBVA1LiQBJBCNTprxaYuivv/6Cu7u7HPISs6jSC4ObdLB6xXeoEKhFjDmwp5wW7ud9OSRFlAb+uLoITysq0eWIBg3PJmDYvmFwsnbC8ErD0c6jncx3eYO4CIi8m7KdgPmLXiVplosGbu8DHpzE47+OIvTwjSQPEwU3zdXAA6dQbKmmhFKhQtWrCah1TQu1UgmVRoOHpUrh1/qfy/Mdlu+CQrsdCQolzLQaPK1RFCvc7rwMhbSodk2L2tc00Cq1QHw8bjVpCvO8eRB3+w5w9whcbP7RFTFkPo5JS00ezPMlS2Rgo+/l0/9ciEDn9V6/982vSS2RZPxfw1J6UVFRhkRiPdXLAE4fLKUXBjfpMCRls2qjvJ/n427oW0OXFyAwwCH68Hy2L3r2g2sNB9wscBvax1sRFB2EsUfHYvW11fi6+teo4FIh+ScwtzJcEGSAUz4aOQu/wP1DrogN0QU2+kKBa2srsLaeCj1PWKHtvggULFUDVd2qImijLufGr8HHKL02FD39duLa7ydRp5gzgv7cjmUlmyPPUG8UPfiTzLHp0KUGWn6/CMtHd0DlazfkY9fXUWLChjiUvh6tC2yUCgRtPgdtqxZwFT1IzMeh1wJc/c9Bkp9fI01MyZcv3zuf27p1a8yYMQMTJ040DEt98803snenYsXkZzGmFQY3afzhu+bAbMy+peuGdvz0U3gVKSLvM8Ahen+JZ0V9Jn6H6gPfiN6Sc/nhe8EX5kpzXHp+CZ9u+xRtirTBF5W+QG7b5GdHJb5ABF14VfjvmbMGrkGQAciBulZolL8O/sQ+lLUrLQOVIByHczMP5K6txO2Y9chbzxGPlE4ouX0lgrZDBjYV+jREaNCXGO3hj18a5pKPCzhTG5Vvh+B2Q0esrxEOM4UZVn+SC78tv4MXt+zkshLC820X8HxXOSAhgYENJSmFkFhWKiXSqFEjrFixQg5LiZuNjY1MKN6xYwesrf+76OaHYEJxGhL1LYr+eQTu/5yDbZ06KLBgvuHY6/UtiOgDakgl4nt2DiLUUXKphk23NsnkXRdrF+zstFMWzEyOOjwcN6pWM2zbtI3BX8HWcg0ru7KR+LzpTCyLe6j7nhp73Bs2VlfLpvFz3ffMmQMaURMn9AV27SmPYK0DxtQdhO1Nn2Pfxe+ghBZeoWEIvGSHyKeWsM0dC5eyEfCt0QNhuQqhQ7EOKD6rJgIvWCEqzBwhEY6wDI7RNcbMDKUuXUyvt5Ioy+JsqQwMbl6vIhl15gyeL14skwWjL15kQiBROhC/d/GPHiLO/y5sa9c2/I5dDrqMwz8Og4d9YTT9YYEhKBJJ/olnZjzz8cHzWbOhUSqgFCuNty6Dk25HUTYuAQXj44Dqg4CWP+tOfnIRuLEj2XYcvfUc424WwW2trqveQ/EQv5ULQLn8Dsk3vHgLwK3cqxXQocDcnPYIvGiPj4+++ih+/S92/nFEBM6WMmYVSZvKleWNCYFE6UilxIuNm+TduPv34TTwcygtLOC65iDq73iEXEM/ksf0BfX+vvU3ZjaaCQ9rd1yc+SMsFq2Xw0/o+zG8N92QOS/V2jWEy5QVrwIPm1y62jgiGBG314ilG6bfuIGRTYujV82C6Lv4FM7dB3Y41UO5eiVTbrv++UXycN0vUW5QHTgdDZV5PnHmCrgkKNEs0WdKsoUKieitGNx8oOQSvJgQSJS+5O+VWoMgHx+onz9H2JatiH/65I3fO9Fjs/r6ajyIeIABf3XEjIVaWMWoZWCzpZ4VfgoN1M1SatdaBjgoJKaJj9J9E9mzAl2Ak1xgs1sX2AxrXEzu2+hdG9N2XcesfbdgaabC0EZFMXTlOTQq6YoOnvmgVCqSBjYvk4edDoYiR+vSsC1wGusd7KFRAKEKJbrMnIUTD4/Bp7hf8oUKiShFHJZKI4mn6LFAF1HGuNe3H6KOHTNsO30+AK4jRyY552HEQ4zc6oU+c26h0DMg1AaYPa4cZrXwRa5j817VuXm9rsxrdWcSm7H7hlyPSh/YvB74qDValMpjD6+/dIsDViyQE+PbloHnrbmG7ye8Xufm7ou7GBJyAgGaWPzwpxo2scDt3wfDq5L3G3VNiLIb5twYKaH4WrnyhgJdJS9eSNPnJqI3aaKjcb1SZVkRWFA5OMC6ahVYlS5t+ONCm5CA+4MGI/LwYUSbAwc8VRj556V0b1tsghqLjtzF7H03ERmnlvs6VcqP0S1KwDWH1Vsf2/7XCpi0KA4qLZCrUTHkrvAC6haToSpYSx5ngT/KjsJScf3mnwJpRHzY6AMb8VV++BBRuhLJ+zKwMdONsKtf6NZGEL2o8ndSq8WTH36UgU2CErCOB8KstDKPJb2JoalBDTyw76sGMqgR1p99gIZTD2DugduIT2Eqr2jbHVcNTpfQfTwH77uJkMM3MG5LD4z6qz78p4zTDYPrF/wkojfwtyMNJM6xET024qv+w5WI0v/3Tkyddh6iS7i1Kl3K8Dt4p207hK5eDRFGmGl0s5DEopciQTcjAhwhdw4rTOtSAZu8a8PTPafsxfnb76FhCYfEEicP99l0GSFldEHR49M58fCpDWwOBiFm0Vr4N80L+77dMqT9RFkRh6U+UErJw0wqJko/7/J7J3pQRel6vcTnJg4iMjJRV6PRYpPfQ+R3tEG1wrnkvph4Ne4HR2Hvk+VvtEl8PJ9qWQ/2d4MMi3VuqKnAqgYq5FUDX1YYjKaVvFK9ACFRVsSp4BnJBKpIEpni753jJ58gyHeeXMjy9bV49MGDqB2TkcSMqY4vh6j0Fh7xlzOvKld4gv5lBiUJtkTQUnXzXlyt4GlYkLPaR+1gvWkzwlQKfKmagyqBJ1EyV0k4WDrIx97r1VtXcHDZ0jdq5DBXh7ILBjcf6G0fEuyxITLe7524kOsDG30eXHIBjrHdehYhZ1edPFcVN6+bI1fCPXSvVkDOxhKCFizQBTYiryghAZ4PCqBshc8QOncBckUpsaGdPyq6VpS9PgXWHEXhk7pVysXrXV9baegNYu0tyk6Yc0NEJicr5cHN6OqJvz6rjuK57RASFY+xmy6h9czDOHb7+Zt5RS9fh5m5NRw+6oCmZxIwe5EKA545YPqWKBRefxqXauaEQ/eu8rwns2fJwKbTUQ2HySlbYc4NEZmUrJoHl6DWYPmJADlE9SI6Ht2u7UavaztTfB1i2YnIf/81TIN/3cYaCnx0/FXPVa7+nyH3V19l4CsiyqZTwQ8dOoS2bdsib968cmx50yZdOfW3OXDgACpVqgRLS0sULVoUS5YsyZC2ElHWz8eRQzKZNA/OTKVE71qFcOCrBnI5BwulFmb9vVJ8Hdaenij89yaRmGM4prY1R7gV5G1LdSXUKsjARghdtRr3+n2GwFm6auqSrJg82RA0yaKCRCbAqDk3kZGRqFChAvr164eOHTv+5/n+/v5o3bo1vLy8sHz5cuzduxf9+/dHnjx50Lx58wxpMxFlblk9D87R1gIT25fF88ZT4GRnadj/685rKJ7bHu0q5E2SVyR6bvS9MwGtK2O0x2n5V+tHRzRQqYF4JWCuATQREYj69195iwu4j3xtnA1LQTAfh0xNphmWEj03GzduRIcOHVI8Z/To0fjnn39w6dKr6qKffPIJQkNDsWNH8qv2vo7DUkSU1Vx6+AJtZx+RI1CVCzpiQtsycNu8PMkw27ZxfVF4zXH4d6mBqm5V5TGxhtb6Okp0OqJG18NaKCzMoI1LkM9pbhcP9/91Qdjz/Jl6uI4oyw1LpdaxY8fQpEmTJPtEj43Yn5LY2Fj5hiS+ERFlJUVd7fBVsxKwsVDhzL0QrBw6XgYkNgMHG1YOFz02IrARAY4+WHHz1vVi7WmcC7Eti8nAxto5VvxZi/gIc9wZv5GBDZmkLDUV/MmTJ8idO3eSfWJbBCzR0dGwtrZ+4zGTJ0/G999/n4GtJCJKW1bmKng3LCqXcZiy4xoUVzVYVrI5toQWx7BDtxFvp5azolr19sK9u7o6NyJYkZPdFQokaBLg2WUQAu8XALQKHGqiRpXVNiLGgcbs5cKdr0lcH4coq8lSPTfvY8yYMbILS3+7f/++sZtERPRe3BysML2rJzrO/B5XmnRGRGwCfA/eQa+Snxvq9hRcttRQwE8Q+4dUHAIcngaXshGwKh+B+w9sZWATrwKUCRr8M7ZPku+jr+CsVJj8JYJMVJbquXFzc8PTp0+T7BPbYuwtuV4bQcyqEjciIlMh8m42Dq6NDecewlylgIONudwvUigfhETDPZdN0gfIWVG65OGYXTfQ8chRHKypgU8DC3Q6okHXtSew81p9NJq3EQvvrzHK0hRE2Ta4qVmzJrZt25Zk3+7du+V+IqLsRCzl0Lly0qUctl96gmErz6FXzUIY3qQYHKzNkwQ2gZftELT+KJxblcbAHHuQ/5kNZtTNizL3olD24jMca1EbfwxUwbvKEAY2lKUZtc8xIiICfn5+8qaf6i3uBwQEGIaUevXqZThfTAG/c+cORo0ahWvXrmHOnDlYs2YNRowYYbTXQESUWYiqxgkaLRYd9UfDqQew4kQANOoEGdig/qhXNYCmroWidHu0iYzCloAHCBvYBrFmgEsYMHmJBgPLff7Gc7MODmUlRg1uTp8+jYoVK8qbMHLkSHl/3Lhxcvvx48eGQEcoXLiwnAouemtEfZxp06ZhwYIFrHFDRATghw5lsbRfNTm7KjgyDt9svIg2F+vihPtnhhpAMnlYqQQ+mgfkrwqbSr0R71EEP3dRQq0ACgRqcbxTsyTPq6+DAxVzcChryDR1bjIK69wQkamLV2vw57F7mLHnBsJjdHVtBjfwwKgWJZOeGBcF36vLDDk2n9xxw+MxY+ShwCpFUO+vfzL9shWUfYSZap0bIiL6b+YqJfrVKSyXcuhRvQDEAuO1PJzfOC9xYONVph9yugfDeZAu18bl9B1cLlOagQ1lSey5ISIycQHPo1DA6dUMqlUnA2BraYYAzUaolCp4lR8ILP8YuLUb2lrDsXPFSRQ4fg9y1SpzM5S6eNGYzSeS2HNDREQGiQObZ+Ex+GHrFQxdeQ4HT1RCHeduusU3y3aSxxX//g5PtzwysBF1cBCfgHu/TzVi64lSj8ENEVE2ksPKHAPre8DKXImTd4PlmlVjNlxAUNGOQP2vEXjJDiGbjsOuW1N886OHXJ8qau5CPJw+zdhNJ3pnDG6IiLLZUg7DGhfDvi8byBXGRWLCypP35dTxHdvVCLqUA85lw+BuvgFzKozAhYo5EWYNhP2xAE9nzTJ284neCYMbIqJsKG9Oa8zsVhFrvWqibL4cclbV0RuBUPXrD5fWFYC4cBTYNAzjC/aGVZzuMfd2bTB2s4neCROKiYiyObVGi3Vn7iMwPBZDGhUDooIRPKsBbOOCYNlrPQ4dPACXn5bJc3N/9x3+ylNNPmZE0+Jyn5guLgoEijo6ROmFCcVERPTOVEoFulYtoAtsBJtcWFxwCtpFjUXnbVp4dvkKNrV0y9w8+XESjvy5ST5GYIE/yoz400hERG/QOhbGdW0BnL4Xgho/7cWFz4bhhbsHFNBi3MklaGJ9nQX+KNNicENERG/4qnkJLO5bFY425igTfxl1drXGrioFEJrLASqNBuj3PwY2ZDrBTe/evXHo0KH0aQ0REWUaDUu44sQ3TVBRdQuOigh8Z7ECmlG9oFFA1sFJUClg3f/V4saC73lfzPGbY7Q2E71XcCMSeZo0aYJixYrhp59+wsOHD/lOEhGZKN+Dt/FHQmusUDeCUqFF4b9+gVKrK/BnptZizZiPEa+J15173lcu56BUcFCAjCvVP4GbNm2SAc2gQYOwevVqFCpUCC1btsS6desQH6/7AScioqxv5t6bmL77BkY2LYEu41bj3JVieHHJBg4V4rFpTltZ4K/mP3dxonUD+PrNfbVOVQXd+lRExvJe4bWLiwtGjhyJ8+fP48SJEyhatCh69uyJvHnzYsSIEbh582bat5SIiIwQ2BSXRf9C5i+A1YVI2FQyR95SgfA+sRvmjWpDA8DJPxg5x8xiYEOZxgf1HT5+/Bi7d++WN5VKhVatWuHixYsoXbo0ZsyYkXatJCKiDCXq2OgDm5c7ZPJwwbnbEGHhDKeoO2gbbYk/m4gFqIAK/lp0f1zojecRM6oCZ83O6OZTNpfqIn5i6Gnz5s1YvHgxdu3ahfLly6N///7o3r27oajOxo0b0a9fP4SEhCCzYRE/IqIP9MgPR1ZMxgC4wcxlHyYtVaPYIy00SgUKL18Om4oV5WmcKk7Gun6bpfbJ8+TJA41Gg27duuHkyZPw9PR845yGDRsiZ86cqX1qIiLKCvJ6YrNnNZg9XILYwKZ48N1A5P2xD2wfheJ2714osfUfvNi6lYENGU2qgxsx3PTxxx/DysoqxXNEYOPv7/+hbSMiokxIzIra/nAJaufqgZ1XywD7foRiSE9E/7IA1i+icatZczlVnIENZZmcm/379yc7KyoyMlIORRERkWnTaDUyedi37deYUfI6BpttRp5LE/BlbzVEnoMIbBTm5gxsKOvk3IjEYZFI7OrqmmR/UFAQ3NzckJCQgMyMOTdERGlHnZCAC9PbomLUv1h1xw0VTiplcT9RA4c9N5Tpc27Ek4o4SNzCw8OTDEup1Wps27btjYCHiIhMm8rMDCUGr8L1fnVR4UI8NtZRYmVdJWbfqw+IBTVF+RAGOJTB3jm4EXk0CoVC3ooX1y1zn5jY//3336d1+4iIKJOLXLYcmgvxyFUZcC/9AoAjFtqdxXd53HQrhjPAocwa3IhcG9Fr06hRI6xfvx65cuUyHLOwsEDBggVlET8iIspmXtbAcencEJ/Mq4c19vFocCgU6sdamLvnh1at1p13cAqgUQMNxxi7xWTi3jm4qV+/vvwqZkEVKFBA9tQQERG5DB1iuG9ethNG3diI8Q1dUPmmGrj/ANalS+sCm/2TgIbfGrWtlD28U3Bz4cIFlC1bFkqlUibyiCrEKRFF/YiIKJv6yBfOf9qiathGnCmbGzXPh+LphDGwbXAdyibfAvVHGbuFlA28U3AjCvU9efJEJgyL+6LXJrlJVmK/SC4mIqLsq1TPaWi7UIlaRefj1nVXxAeGI0TdDk4MbCgzBTdiKEoslqm/T0RE9Da1+k6BZuIiWDvFIeKhNZ5tvwSHEYEwe3kt0S/PIPJ1Eg9rEWVYcCOShfVy58791urEREREysO/QokEPHPVwuYhgOgYPFzwBwqO+faNdaeIjF6hWAxN9e7dW64ELtaYIiIiSiJR8vD5L7/Bbk/dBJT4c0uAuCguqEmZL7hZunQpoqKi0L59e+TLlw9ffPEFTp8+nT6tIyKirCXxrKj6o9Cr0mfY1akQVtdVIv6CGa55VmZgQ5kvuPnoo4+wdu1aPH36FD/99BOuXLmCGjVqyMJ+EydOTJ9WEhFR1iDr2LyaFWWmNMN3dcZhfR0l4lWAVgMoVEoGNpS51pZKjghwevToIaeMZ/bZUlxbiogo4y39qg2qbb0NLbRQQIHH7T9Bo1/GG7tZlIWk5vqd6p4bvZiYGKxZswYdOnRApUqVEBwcjP/973/v+3RERGSiRI6NCGx2VlHJwEZka+b5exVOfv+rsZtG2b1Csd7OnTuxYsUKbNq0CWZmZujcuTN27dqFevXqpU8LiYgoy0qcPKypFoPz3y1AhbtaXM5VCGVWLsJVcw1KfTPa2M0kE/NeOTfR0dFYtmyZLOw3b948BjZERPT2dacGD8bn5T9Hwc8Gyd1FIp/hSsmCsDqzEE8f3DZ2Kym799yIRGJ7e/v0aQ0REZmUxAX67CzscM5DiRq5HWD99AUq2AegsMdT3F7cCbbD9+Mv/9XQaDUY7MlkY8qAnhuRxKMn8o/Fdko3IiKilChVKqwqFy7vhz10RKA2JzzU/pi2rCV8/HygVLx3KihR6npuHB0d8fjxY1nAL2fOnMmuCC6CHq4tRUREb+NVwQszu7xA9KElsH4UjMseg3EpeC7W2UfC27oIvMoPNHYTKbsEN/v27UOuXLnk/f3796d3m4iIyIQNqzcaEz7aiXPWz+CvXQ6toz28Q17Ay/8A8O8soPYwYzeRsludm4CAALi7u7/ReyOe5v79+yhQoAAyM9a5ISIyvieRT9B0XVN5X0wPP1OsP8x3jZXbZ1puRuXq9Y3cQspWdW4KFy6MwMDAN/aLOjfiGBER0X/ZdGuT4b5SrcGnz48ivEI/TFd9hu5bonAuIMSo7aOsLdXBjT635nURERFcLZyIiP6T73lfmTw8tOQALPGrjrk+atx5fBkjbSNxyb0bYhM0GLDsNO4HRxm7qWTqU8FHjhwpv4rAZuzYsbCxsTEcE0nEJ06cgKenZ/q0koiITCqw8fb0xoDyA3Hn+zaIiwQaXNRih+UxfFa2PJ6GVcD9R49xYW5v5Bg0Bw65XIzdbDLVnptz587Jm+i5uXjxomFb3K5du4YKFSpgyZIlqW6Aj48PChUqJHt9qlevjpMnT771/N9++w0lSpSAtbW1zP0ZMWKEXAqCiIgyP1HHRgQ2YtZU0GwfmBdwl/t7XHbE52UGwMJMiUV9qmLp7SmodvYYHvh2QlwsP+MpnXpu9LOk+vbti99//z1NknFXr14te4R8fX1lYCMCl+bNm+P69ety2vnrxLIPX3/9NRYtWoRatWrhxo0b6NOnj+xNmj59+ge3h4iI0leSAn0qJSIPHITCwgKWj56jb2QF2NWvL5dssLoYifiyKpSJO49Tc3qjyvCVUChZA4cycFXw9yUCmqpVq2L27NlyW6PRyN6YoUOHyiDmdUOGDMHVq1exd+9ew74vv/xSDokdOXIk2e8RGxsrb4mzrcX34GwpIqLMs/aUYFunDqwrVkTQrFnY1TQXqrb3QrXDw2Cm0CCmztewajLG2M2lLDJb6p16bjp27CiHnMSTiftvs2HDhndqZFxcHM6cOYMxY179sCqVSjRp0gTHjh1L9jGit+avv/6SQ1fVqlXDnTt3sG3bNvTs2TPF7zN58mR8//3379QmIiLKWGLNKfWLFwhZugyRR47I2z+Nc2BplTD4JeyDfeWxKHf2e1gd+Rlw9QDKdzF2kykLeKc+PhEp6WdIiftvu72roKAgmYicO3fuJPvFtliQMzndu3fHxIkTUadOHZibm8PDwwMNGjTAN998k+L3EcGTiPL0N1GLh4iIMg838UeufshJoUDbH5bB1twWp5+exkrHIGhrDtUd+9sbEdcPGLWtlDW8U8/N4sWLk72f0Q4cOICffvoJc+bMkUNat27dwvDhw/HDDz/IGVzJsbS0lDciIsq8Q1PQaHQBjkaDXKv2Ynr76Ri8dzC23NmC/OW9MKh0e0TcPoE+q25jyuAq8HCxM3azKRNLdXZWdHQ0oqJe1R64d++eTATetWtXqp7H2dkZKpVKrjKemNh2c3NL9jEigBFDUP3790e5cuXw0UcfyWBHDD2JfB0iIsqaOTfOw4ai1JXL8qvYLva3H76r/q08Z+4FX2ws1xZD7abiTLQb+i4+hecRr3IpiT44uGnfvj2WLVsm74eGhsrcl2nTpsn9c+fOfefnsbCwQOXKlZMkB4sARWzXrFkz2ceIoErk5SQmAiTBiHnRRET0gYGNyL0RxFfnoboAp9Ko5ehXpq/c/8PpnzDy49Jwz2WNgOAo/LJwBWKiIoz8CshkgpuzZ8+ibt268v66detkL4vovREBz8yZM1P1XGIa+Pz587F06VI5C2rQoEGIjIyU082FXr16JUk4btu2rQygVq1aBX9/f+zevVv25oj9+iCHiIiyCLUmSWCjl6NFc/k19vp19DiqQsvCLVErby38+3Q3Fvepih9vLYbXuh9xfUALaNRqWRhwjt+cJEFT4CzdLFzKnt65zk3i3hN7e3t5XwxFidlTojelRo0aMshJja5du8p1qsaNGyeTiEWF4x07dhiSjMUinYl7ar777juZ2Cy+Pnz4EC4uLjKwmTRpUmpfBhERGZnL0CHJ7rf08IBd48aI2LsXz+f6YsxPk7Da45msbFxg/QlUvnQZClctLM48x5rP68GnXpgsDPh6bxBlX6muc1O+fHmZ8yLyXcqWLSuDETGMJKZ1t27dOsWZTpkFVwUnIsoa7n7aE9GnT8tE4wKLFuLgtnkovOY4DrTIg/L12+PFht9R+JQlrjZ2R0efXckOc5HpSM31O9XBjRiKElOyxTTuxo0bGxKJRVLvoUOHsH37dmRmDG6IiLIGrUYD//YdEHvzpmHf1kb2WFY9Ggoo0H1/AppfVMMqUmmYacXAxnSl5vqd6pybzp07y+Gi06dPy14bPRHozJgx4/1aTERE9Bqx3EKhdWtl7Ru9huN0uTVaaOEWDF1gI4gZswrAtnp1mW8jp5cLB6cA+ycbHs98nOwh1Tk3gkgifn26tpg1RURElJaeL1wopsMCZmZAQgKezfEBPEQco8DGWkrEmmlQ74oIdbRQaBW41+NTWBYvjtgbN4C7R+Bi8w/QUDelnPk42Ueqe27EbCYxQ0kshVC0aFEUKVIkyY2IiCjNa+Bcugj/LjVkzs0vt6vgfK/z6PS8sAxsVtdVYsAwM8Q6JcjHicDGqrAzgjafQ2BUa6D+KObjZDOp7rkRycQHDx6UxfTy5MljWJaBiIgorbwejIjp3j4ep/HLywAnIKAvqh6/hdudq2F9sbNwtHTC4WZF0fnkLoTetoWNlT/s2tWTAc7z7eWhjY9nYJONpDq4EQnD//zzD2rXrp0+LSIiInqtBo5Gq5HTvVv19kKg2xxEHjuu69EZPBgPzvsiQZOAmjV7wEmzEUprNTbZ2cGhXztU2H5JBjZiWIuBTfaR6tlShQsXlitxlypVClkRZ0sREZkomTw8CevsbfG9sxM6HdGg6+FXS/Pk6tsXuUePMmyL3iARNA32ZNCD7D5bSixSKYruJV5fioiIKDMENiJ5OI9zX/y+K0IGNutrKhDgrDslePFiPPvtN3lfDnP5+UCpSPVlkExxWEqsI3X79m1ZRbhQoUIwNzd/Y3kGIiIiYwQ2Inm4+CUfBJ2xgn25cCgrmuGXinb4cakajpHAc995OB14Dj7Fz8phLq8KXsZuPWWG4KZDhw7p0Q4iIqL3o1EbAhvdtha5vAfD0X4Pvrl7AB9bqzGlZxEMXvgMVvGA5shJeH88jIGNCUt1zk1Wx5wbIqJsIiYMWNQCeHYZEc7lMPzJC3y5LkHU+oPrV1/CqX//JKfLwn9qTYprXpEJ59wIoaGhWLBggVyxOzg42DAcJRazJCIiyhSscgA91iDMoQTaxnngZDHAz0N32bt4bAueRD55Y+o5VMzBMQWp/l+8cOECihcvjl9++QVTp06VgY6wYcMGGewQERFlGg758VuV7ghyOovYwKY433clAlpXRO6jN/DHiKY4H3ieBf5MUKqDm5EjR6JPnz64efMmrKysDPtbtWolF84kIiLKLMSsqLV3FqJlvj5IeN4YF84cgYVnaexskgsfH0qAsv4nDGxMUKoTik+dOoV58+a9sT9fvnx48uRVFx8REZGx6Yv/ieThqvgXLQ/3g93tGFi0mIyEfbNgphGLcAJmndsYu6lkzJ4bS0tLmdTzuhs3bsDFxSWt2kVERPTBRIE+/ayoj5vUwqXc7eR9jyU/GwIbkWB8vX1bxEVHGrm1ZLTgpl27dpg4cSLiRTlr8UOhUCAgIACjR49Gp06d0qxhREREaa3q53Nx4UZphFyyhUP5OKjmjEG8CnAIicOpto2g0byqaEzZKLgRRfwiIiLg6uqK6Oho1K9fX64Obm9vj0mTJqVPK4mIiNJA8B9/wPxsKGyqWCFv6SCUuPQbYr73gghpcj0Iw+Xu/CM9W9e5OXr0KM6fPy8DnUqVKqFJkybICljnhogo+wqcNVtO93bp2Qlhs+shR+wTaAvUxJ6wcsjvu1Wek+fnyVhmXwZqjRYjmhbXPY41cEy/zo0gVgUfPHgwRo0ahSpVqrzv0xAREWUYEZzIWVH2ubG5zO8I01rj7MNo7HbpAOvKleU5d36eit92XYNKKbJxWAMnK0r1/5Sob7N69WrDdpcuXeDk5CRnS4meHCIioqzg03YtsLD4XHSNHIk1F0Oxoee3CCpVEdahzzEk7He0qaJiDZzsMixVuHBhLF++HLVq1cLu3btlcCOCnTVr1sjE4l27diEz47AUERElNmDZKey+8gxi7lQxxUO0ffE3mu7zR4IKMFODgU12GJYStWzc3d3l/a1bt8rgplmzZnJ4StTAISIiykrm96oKM4UGP5gtxjaLMeji7WUIbMRf/7a9uidbHHCO3xyjtJf+W6qDG0dHR9y/f1/e37FjhyGRWHQAqdXq1D4dERGRUc3cexNqLZBTEQFzhRqaCcMNgY3IujnZqj7U6oQkgY2Pnw+UCubgZFap/p/p2LEjunfvjqZNm+L58+do2bKl3H/u3Dk5JZyIiCgrBTbTd9/AiKYlofzIF34XC+HFRSvYeWoR/ctQqBVA7mdx2NOmZpLARl/1mEwkuJkxYwaGDBmC0qVLy5wbOzs7uf/x48dy9hQREVFWCmxGNi2OYY2Lodqx7bC8HAfzshq4l3yMfLf+QuAXneW5Bfwj8GfbMgxsTL3OTVbFhGIiIhJm7L4hp3uLwEZfAyc8XoN8PVpAM78JrBNeAKXaYttFFQqvOymHqaZ8YoElE5LODGYNHBOqc0NERJSViQJ9+sBGEMFJkZHDYJm7OKx7rgJUFsC1f3CvSV74u+ryb0asjcPCg9MMj2ENHBNZFZyIiMjUqd1r4njZH7FTcx4b723FkBlDUHzMZiAgAPf/WgTfnLbodFTDGjiZFIMbIiKi16w5fR/jb1+HpcthfF52EAZWHozILb1x4Mch6Lr2BOL//R1BrIGTabEfjYiI6DUdK+WDg7UKsYFNEfe8MRDsj6BlrfBdMT+5iri5GtCINaoY2JhOcBMaGooFCxZgzJgxCA4OlvvOnj2Lhw8fpnX7iIiIMpylmQo/1P8ScUGNMe/QHURtH4+CD89jwr44GdiI5GKlWoOnU341dlMpLYKbCxcuoHjx4nKNqalTp8pAR9iwYYMMdoiIiExB8zK5UbOIE+ISNBin7o9A/8IoflyLzXWUuJFPd07wokW62VKUtYObkSNHok+fPrh58yasrKwM+1u1aoVDhw6ldfuIiIiMQqFQYFzb0hCLg5tv2ICgE7FwrqSGR6kQLGmiMpwnkooZ4GTx4EasHzVw4MA39otVwcW6U0RERKaiVJ4c6FatAJRaDXZWawfnKSvxUbQGZk7xOFhWTA4HzNzcoOXyQ1k7uLG0tJSFdF5348YNuLi4pFW7iIiIMgVRwfhhh0/RcNIYKPJXhqrTAowODsGKBkrEmAMJT57AslChVw84OAXYP9mYTc72Uh3ctGvXDhMnTkR8fLyh2y4gIACjR49Gp06d0qONRERERuNkZ4klfauhgntO3Y5SbVA1f130jwtFjqbF5a5nU6dBExX1MrCZBChfDVtRFghupk2bhoiICLi6uiI6Ohr169eXC2ba29tj0qRJ6dNKIiKiTCIsJh7osQ69KnqjsO0BmDvbw7ZmTWgPTNMFNg2/BeqPMnYzs7VUF/ET6zqIBTOPHDkiZ06JQKdSpUpo0qRJ+rSQiIgoE0hQa/Drruv469g9bB1WF4UbjoFSqUIRzU+4bH8fTqeioGJgkylw4UwiIqJ31HvRSRy8EYgmpVyxoHdVue/vT4vinLUl3EuH47MRAUnO56Kaxrl+p7rnZubMmcnuF7k3Ymq4GKKqV68eVCqONxIRkWkZ26YUjvwWhD1Xn+HwzUDUfbQYTlo1uh7WYGe0LW5/3BB5vp4Km8qVDYtqiiUaKJP33BQuXBiBgYGIioqCo6Oj3BcSEgIbGxvY2dnh2bNnKFKkCPbv3w93d3dkNuy5ISKiDzFh82Us+fcuvnfYit6xK6CpPwbzli9HgyMJ8rhVASfYte+GoFmzufaUka7fqU4o/umnn1C1alVZxO/58+fyJqaBV69eHb///rucOeXm5oYRI0a80/P5+PigUKFCstdHPMfJkyffer6oiOzt7Y08efLIaemiWvK2bdtS+zKIiIjeyxdNiuF/1n/LwOZc0cFQNvwaNb8Yg001dHVvYgKeM7AxslQHN9999x1mzJgBDw8Pwz4xFCWWYhDLL+TPnx9TpkzB0aNH//O5Vq9eLSsejx8/Xq5NVaFCBTRv3lz2/iQnLi4OTZs2xd27d7Fu3Tpcv34d8+fPlwUEiYiIMkJOGwvUKeKIafGd0fdOQ4RGxcGzbHeENnWFWhffSAxsslBw8/jxYyQk6LreEhP79BWK8+bNi/Dw8P98runTp2PAgAHo27cvSpcuDV9fXzm8tWjRomTPF/vFQp2bNm1C7dq1ZY+PmIougqKUxMbGyq6sxDciIqIPUab7ZOxy7o3YeA3OP3gh93k9rAeVVreopvB43DijtjE7S3Vw07BhQ7n8wrlz5wz7xP1BgwahUaNGcvvixYsyN+dtRC/MmTNnkkwhVyqVcvvYsWPJPmbz5s2oWbOmHJbKnTs3ypYtK4fJ1G8pez158mQ5Rqe/ZcY8ICIiylrMVErM6OqJ/V81QP3iLjJ5OGbRWvg3zYMTL5dlCF2zlmtOZZXgZuHChciVKxcqV64sc17ErUqVKnKfOCaIxGJR7O9tgoKCZFAigpTExHZKa1TduXNHDkeJx4k8m7Fjx8rv8+OPP6b4fcRQmUg+0t/u37+f2pdMRET0htJ5c8DNwSrJrKhGU9ajw2hf3QlKJRfVNJJUTwUXycKiiN+1a9dkIrFQokQJeUvcu5MeNBqNrIz8xx9/yKnmIsB6+PAhfv31V5m3kxx9AEZERJQu1BrEfNoft1t0RQ1rRywyv4QytYqjTM020EREyuN6vud9odFqMNiT+TiZKrjRK1mypLy9L2dnZxmgPH36NMl+sS0CqOSIGVLm5uZJauiUKlVK9vSIYS4LC4v3bg8REdH7OFy7A0auOY8iGy5ixxf1oFQoMaT+HTR12IV8OePx5cebDIGNj58PvD29jd1kk/dewc2DBw9k/ouY9i2CiteThN+FCEREz8vevXvRoUMHQ8+M2B4yJPlKjiKJeMWKFfI8kZ8jiN4jEfQwsCEiImNoWjo3nO0scScoEsuO3YVXXS8EB9/CyoCd8niTS6twTB1qCGy8KngZu8kmL9VF/ETwIVYGF4X6xNCUSOoVU7PF04g1pvbt2/fOzyWmgvfu3Rvz5s1DtWrV8Ntvv2HNmjXyeUXuTa9eveQ0b5EULIh8mTJlysjHDB06VNba6devH4YNG4Zvv/32nb4ni/gREVFaW30qAKPXX4S9lRkOfNVAriT+yZLqyHE1AhX8tfBtpYR3xSEMbDJrET+RoPvVV1/JGVGi8N769etl0CGmZH/88cepeq6uXbvK+jjjxo2Dp6cn/Pz8sGPHDkOSsegZElPP9cRMp507d+LUqVMoX768DGqGDx+Or7/+OrUvg4iIKM10ruyOMnlzIDwmAdN26/JRZ9aeCe9/NGh0QYtSDxUMbDJzz429vb0MQkQRP7H8glgdXPSmnD9/Hu3bt5e9OJkZe26IiCg9nPQPRpd5x6BUAFuH1sWhwBVI+GkmGp/X4t9SCkR98xmGVv3S2M3MstK158bW1taQZyNyXW7fvp1kejcREVF2VK1wLrQunwcaLTBk+y8yx8buE92IRvVrWqw/vlgmFVMmTCiuUaOG7K0Rs5RatWqFL7/8Ug5RbdiwQR4jIiLKrsa0LInToWsQaPaPTB7uU8ELfksOwfL6EzQ/o4FPDh95HoeoMllwI2ZDRUREyPvff/+9vC8Sg4sVK/bOM6WIiIhMUX5HG/Sq6Q6VUjcrKlAsoOlRCeHXt6H9ZSs4efdDglZX90YW91Nr4DI0+RnClEHBjagMLKaBi2Re/RCVWA+KiIiIdLwrvqpjo1UqEb5tG5T29tCEh6PLPTfk7Nw5SVVjSnupyrkRxfOaNWuGkJCQ9GsRERFRFqfRaLHm1H10iSoF64GDZGBjljcvzPLkwd0p4wyBDVcOTx+pTigWdW3EGk9ERESUshUnA3D3eRR88teH89AhSHj0CPc+H4DoRWvxrHUxBjaZKbgRi1SKOjdbt26VNWjE1KzENyIiouxOqVRgfNvS8v7aMw/wuH0PKMzNoVRrEa8CxpW9g4jwV3XcyMh1bvTLHsgHK3TLugviacS2yMvJzFjnhoiIMsqI1X7YeO4hvnpyBI2PbwLMzYH4eBwtqUDYpyUwsvNGYzcxy0jN9TvVs6X279//IW0jIiLKNka3KAn7NcvQ+PJ2PO/SB6UKuuDZr7+i9jUtNmy7jntVD6NgwbrGbqbJSXVwI5ZZICIiov+mWr4I3S5vx7KSzXHAugr2fFwD5suXI/7RI3T8V4v9k4ahzx/njN1Mk5PqnBvh8OHD+PTTT1GrVi08fPhQ7vvzzz9lcT8iIiJ6Sa1BTu8hOFSjHR6/iMHhgDC4jvqfPJSgBAKjY3HsDEuqGD24EQtlNm/eHNbW1jh79ixiY2PlfjEG9tNPP6V5A4mIiLIqUaAvz1BvTOlcHhsH10KLsnlgL66hVSrDTAPkigTuBl0xdjNNznvNlhKF++bPnw9zkRj1Uu3atWWwQ0REREnVLuqMigUc5X0x+cbtm2/EHdS6okV7lz7Gbp7JSXVwc/36ddSrV++N/SKDOTQ0NK3aRUREZJLuB0fhXi535OzcSW4HTp9h7CaZnFQnFLu5ueHWrVsoVKhQkv0i36ZIkSJp2TYiIiKTsuPSEwxbeQ4l89hj3dBh0L5cW+ripZW4eP8wurecY+wmZs+emwEDBmD48OE4ceKE7Fp79OgRli9fLgv7DRo0KH1aSUREZAIqF3SEhZkSFx68wOb7sTDPkwf+C6ei+5mfMOXpIdy5s8dwrlh/Siy8SRkQ3Hz99dfo3r07GjduLFcEF0NU/fv3x8CBAzF0KBcAIyIiSomLvSWGNCoq70/ZcQ3xWkD91zZ8ddQMOcOBKYe/hVajMSysCdV7TWrO9lJdoVgvLi5ODk+JAKd06dKws7NDVsAKxUREZEyxCWo0m3EI955HwbuhB3pf34Xnc+YiQQF8MVCFX55VhO2G01xY8wOu36kOCf/66y9ERUXBwsJCBjXVqlXLMoENERGRsVmaqfBNq1Ly/vzD/ojp8RnM3fPDTAvM9FXLwCbXYC8GNh8g1cHNiBEj4OrqKoemtm3blunXkiIiIspsmpXOjdpFnRCXoMHk7dfgPm8etC8vyhoFsNPjUpLzfc/7Yo4fk43TLbgRK4GvWrVKJhN36dIFefLkgbe3N/7999/UPhUREVG2JK6hY9uUhp2lGUq42SNs+w6IpahlgKMF7H4/gpDg24bAxsfPB0oF82/SPedGEMNTGzduxIoVK7Bnzx7kz58ft2/r/jMyK+bcEBFRZhEeE4+YRfNl8rDIsTkadQklFugWqLZr0hj/DCgrAxtvT294VfBCdhaWnquCJ2ZjYyOXYggJCcG9e/dw9erVD3k6IiKibCVxYCNybDoA2Bn4KQr8fQYRe/YiOGIfvEcMy/aBTWop37fHRtS2adWqFfLly4fffvsNH330ES5fvvw+T0dERJQ9qTUysPFv+Ql6LjyBsJh4NJu8DPs9VfB3BYo/AgaW+/yNh7EGDtK25+aTTz7B1q1bZa+NyLkZO3YsatasmdqnISIiyvZEdWK1RotPZhzE7cBIzNp7E075D2FuSwU6H1Ghy2E1VnzRBD1m7jM8Rl8DRwRFlEbBjUqlwpo1a+RwlLif2KVLl1C2bNnUPiUREVG2pVIq8F2b0ui7+BT+vLYA5kG7ZY5NfI79WI1L6LrrMU41rY3KW/bi+aJFSYaxKI2CGzEclVh4eDhWrlyJBQsW4MyZM5waTkRElEoNS7iiRInjeKTcjXzaDjLHJsqjI9oHNUSrU4D9/WBcq1hJzAJiYPMO3nte2aFDh9C7d285FXzq1Klo1KgRjh8//r5PR0RElK3VLe6E+KCmuHatBg7dCISNnSuGFe2AaR2Vcoq4CGxgZsbAJq2DmydPnuDnn39GsWLF8PHHH8upWLGxsdi0aZPcX7Vq1dQ8HREREb30Xe0v0L14f3n/h61XEK/WoHW979EgQClr4EgJCQic7WPMZppWcNO2bVuUKFECFy5ckLOjxGrgs2bNSt/WERERZSPDGxeDo405bj6LwLaLj/F83h9ocCQBG2soEGmpOydo9myZVExpkHOzfft2DBs2DIMGDZI9N0RERJS2HGzMMaFdGYgRqJpH/0bQLF3ycLjDWqyzfYbeezVQWFvrVgwXs604RPVhPTdHjhyRycOVK1dG9erVMXv2bAQFBb3rw4mIiOgdtPfMhw4V80Gh0dXAEQHMFzk90aluBVgUKgRtdDRsa9eSNXKkg1OA/ZON3eysvfxCZGQkVq9ejUWLFuHkyZNydtT06dPRr18/2NvbI7Pj8gtERJRVRMQmICImAW5+M4H9kxCRuw/iclSDY9euUJiZvQxsJgENvwXqj4IpC0vF9fuD1pa6fv06Fi5ciD///BOhoaFo2rQpNm/ejMyMwQ0REWUF/94KwvDVfijpZo9l/apBcehXGcg8q9Yfl3K6olG8ItsENqm9fn/QEqMiwXjKlCl48OCBrHVDREREaSOfozVeRMXj8M0g7Lv2TAYw/pV6oM3THRh9fRke7/8ZcWWHZYvAJrXSZP10Uam4Q4cOmb7XhoiIKKso6GSLfnUKy/s//nMVcQkaFGozG6Xi4pA7UIGA7a54sNQP2oQEYzfVNIMbIiIiSntDGhWFs50l/IMisfTfu1AcnorRz0NQ57IalpEKxN68hZA1a5I8JpCLajK4ISIiyqzsLM0wqkUJeT9272SZY1O61v9QRKWC5csOm6BpU6B+8SLJoppQZe/Le6rXliIiIqKM07lSfsTt/RmfRq/B7tyfoWmD0WhkYYU/FL746CigjoxF4Jh+UJVtzEU1X8reoR0REVEmp1Qq0LC4E6bFd8b2XL2g0WjhXLkf3DzjcaCsbmGGkH1XGNgkwp4bIiKiTC7fRxPxUZ0IFHGx0+2wtMenRTuhi/Vm1L8E3dpTSiUDm5fYc0NERJQFGAKblyzqjcK8iM9eLaqp0XDNqcwU3Pj4+KBQoUKwsrKSSzuIysfvYtWqVVAoFHIaOhERUXZwPzgK4/6+hMeLViHYdyGch3ij8MYNcB46VA5NBTLAMX5wI5ZyGDlyJMaPH4+zZ8+iQoUKaN68OZ49e/bWx929exdfffUV6tatm2FtJSIiMiaRb9Nz4QnEL16AUJ/Zuhwbb2/c1lzEyIJHENuvIwOczBDciHWpBgwYgL59+6J06dLw9fWFjY2NXLsqJWI9qx49euD7779HkSJF3vr8sbGxsmRz4hsREVFWTS7+oklxKLUarCzTEppP+wEbvfDD0e/g9/wipue/jJy9e71aVBOA73lfzPHLXsGOUYObuLg4nDlzBk2aNHnVIKVSbh87dizFx02cOBGurq747LPP/vN7TJ48Wa5Fob+5u7unWfuJiIgyWnvPvLjSvCuWFWuMKTuuAwVqoEZ0DOpf0ODLSddx7/ZZuAwdYghsfPx8oFQYvS8jQxn11QYFBclemNy5cyfZL7afPHmS7GOOHDkiF+ucP3/+O32PMWPGyEW29Lf79++nSduJiIiMQeSajm9bRt5ff/YBLji1wBfRCjg6xMJCDdgdvYSQgFuGwMbb0xteFbyQnWSpUC48PBw9e/aUgY2zs/M7PcbS0lKuHpr4RkRElJV5uudEx4r55P3vd/hDW6k3xmkCcb2AAiot4DuhfbYNbIwe3IgARSy6+fTp0yT7xbabm9sb59++fVsmErdt2xZmZmbytmzZMrlgp7gvjhMREWUHo1qUhI2FCmfuhWBfjrYwVyjhVDRcHmt0TgMbtVm2DGyMHtxYWFigcuXK2Lt3r2GfRqOR2zVr1nzj/JIlS+LixYvw8/Mz3Nq1a4eGDRvK+8ynISKi7MLNwQojmhTHsEZFUbNSRaBka1wqCjxzAHJEA9UvxcmhqezI6BWKxTTw3r17o0qVKqhWrRp+++03REZGytlTQq9evZAvXz6ZGCzq4JQtWzbJ43PmzCm/vr6fiIjI1A2o92rGsK9bAcyJyYmRnlq4HlSj50VH9DunWx08u/XgGD246dq1KwIDAzFu3DiZROzp6YkdO3YYkowDAgLkDCoiIiJKnkwevrsFn+drjl4/f4ObjZrA/kkYvnLtjql+PtkuwFFotVotshFR50ZMCRczp5hcTEREpmDCoenYezUInjk+xrigo4i7H4Dco0dDlSsX5l2YB41Wg8Geg3XF/dQaw1RxU71+G73nhoiIiD5MZ4/PsHT7EdzXPkJ/+1hYbN6CqxZP8XvlYPg29UU+u3wysNGvHG7qON5DRESUxZXN54CuVXSTalZbW8G5sgb51p1E5W13sOHk4iSBTXZYOZzDUkRERCYgMDwWDacegG3sMxyzHo6zF3PA9pI1xEVerBye1QOb1Fy/2XNDRERkAlzsLTG0UVE8RS7sQQ1ULBNiCGy0SmWWDmxSi8ENERGRiehTuxAKOdnAN6Ypgi/bycBGUGg0eOajmzWVHTC4ISIiMhGWZip827o0Sly9i6BLOWBfOhzRFrpjz2fN1s2WygYY3BAREZkQz/3r0evaLjh93AD5y4fjUWnd/hBXG5lUnB0CHAY3REREpkSjkcnDruN/A2xdUbrAc7k7Z2A0HHv1lHVuTB3r3BAREZkQl0QF+mJazsCF+2aoFLoRkYcOQWlplSUL+KUWgxsiIiITpNFo0X53Dlx/Go7f6ndAw7ZtkKN5c2QHHJYiIiIyQUqlAp9U0xX2m3jHDA8qF8HP56Zh/Y31MHXsuSEiIjJRn9YoiDXHb6NvyEycW3URK5zsUMiuADp4tIdKZbohAHtuiIiITJS5SokS+ZzgoXyEjuEhaH1Oga+m3MGpTfPk8Zl7b2LG7hswNQxuiIiITFgRFzssTmgBG60WNR/HwfUFEPLXchnYTN99AyqlvtSf6WBwQ0REZMKGNS4G1+of44nWERULPYeYCF7oagjWbfkbI5sWl8dNDYMbIiIiEzeufQXss2uLAtZxuFVE11PzWcgekwxsBAY3RERE2cAnXuPw+KIDCimj5Xb5s/cQGvTQcFxULg6cNRumgMENERFRNjD7ZCiua91hccsK4daAVTwQuXGzIbARSzNAZRphgWm8CiIiIkrRzJfJww/7fAvndpVgr+u8wdMlqxA420cGNmLJBpfBg2EKGNwQERFlg8BmZNPi6NGuFVymLIfToEHymHlwEIJmzzapwEZgcENERGTC1BrtG7OiXIcPg8LcHGZaDRJUSpMKbAQGN0RERCZsRDLTvQN/+Ara+HjEqwAztQbXp/0AU8LghoiIKBsJFMnDy/+Bc9kwrPvMAjfzAJr5K+R+U8HghoiIKJsIfDkrynlQf7h4qvFRQCCKPQYSlJD7TSXAYXBDRESUXag1uuTh4V8CFbri34JmCMitgJkGCC1fUB7X8z3vizl+WTPYYXBDRESUTbgMHfIqebi6F1QKLbZU0VUs1tx7gJwD+xsCGx8/HygVWTNMMN31zomIiChlrqXg5VgRcxPO4YWNHXK9UOP46pm4XD6HDGy8Pb3hVcELWVHWDMmIiIjow9UYhEERYbhcTis3g5YuyfKBjcDghoiIKLsq1gwo3R6f9B4pk4pLPtCi2FNVlg5sBAY3RERE2ZVSBXRZhj+dNNhdUYG/a5nhmW2CzLnJyhjcEBERZWO+L5OHbUYNw7B5J1CnXBu5nZUDHCYUExERZfPAxrtsf/QOj0ajlbURoU1Aj5I95H4hKw5RMbghIiLKpjRajS55OF9jBA5siAH2NthX0Bw1Dh+H4yAvqLW6ujeyuJ9aI6eSZwUMboiIiLKpwZ6JFsx0LoKaBwPheUYD6/jrqNihPxzatHlV1XjYUGQVDG6IiIgILl+NQ1xwH+Civdx+tHg+4gICDIFNVlo5nMENERERAR6NkK9ebhyyCIPnGTPg8g0EXb6R5QIbgbOliIiICFAq5ZIMuSqEQ6N4tS+rBTYCgxsiIiLSqfAJyp+zgVJXsBjQaBA4azayGgY3REREJAUu/BOh5ywRUd8ZCgdd7k2Qj49utlQWwuCGiIiIYJgVNXQoqs47jJyt28CqdGnkaNdO7s9KAQ4TiomIiAiijk3i5OHcY8ZAYW4OrVYLi0IF5fGsgsENERER4fUCfef9t+OPM78hb4E6+G7wRGQlmWJYysfHB4UKFYKVlRWqV6+OkydPpnju/PnzUbduXTg6OspbkyZN3no+ERERpZJWi5h9P+BwXCAOXP0HYcePISsxenCzevVqjBw5EuPHj8fZs2dRoUIFNG/eHM+ePUv2/AMHDqBbt27Yv38/jh07Bnd3dzRr1gwPHz7M8LYTERGZJIUCVSt7oXhQAqb9FoUHAwdCExmJrEKhFYNpRiR6aqpWrYrZs3VTzTQajQxYhg4diq+//vo/H69Wq2UPjnh8r1693jgeGxsrb3phYWHy+V+8eIEcOXKk8ashIiIyEXFRmDzfE9X/UiFPCJD311/h0LaN0Zojrt8ODg7vdP02as9NXFwczpw5I4eWDA1SKuW26JV5F1FRUYiPj0euXLmSPT558mT5ZuhvIrAhIiKi/3D0d7S0zoejpXUV/UL/2fLq2MEpwP7JyKyMGtwEBQXJnpfcuXMn2S+2nzx58k7PMXr0aOTNmzdJgJTYmDFjZJSnv92/fz9N2k5ERGTSlCqUDziLG8V1AzyRh49AHRr6MrCZJI9nVll6ttTPP/+MVatWyTwckYycHEtLS3kjIiKiVKg/SvaAVPTzwT0XGxQM1CDc5yvkjF8LNPxWHs+sjNpz4+zsDJVKhadPnybZL7bd3Nze+tipU6fK4GbXrl0oX758OreUiIgoG6o/Cq3yN8DdYmq5GbZrX6YPbIwe3FhYWKBy5crYu3evYZ9IKBbbNWvWTPFxU6ZMwQ8//IAdO3agSpUqGdRaIiKi7KdkxyXo5/xC3o98ZgG150BkdkafCi6mgYvaNUuXLsXVq1cxaNAgREZGom/fvvK4mAEl8mb0fvnlF4wdOxaLFi2StXFEbo64RUREGPFVEBERmahDv8LCJgZ5aoajaJunUPnNQ2Zn9Jybrl27IjAwEOPGjZNBiqenp+yR0ScZBwQEyBlUenPnzpWzrDp37pzkeUSdnAkTJmR4+4mIiEzWwZfJww2/haZ6f2zcPQrNDk5GTnEsEw9NGb3OTWaeJ09ERJRtHXwV2IhApuvWrrjy/ArGO9VA59NrMjz3JjXXb6P33BAREVEmpFEnCWA+O2GLO1fVsEm4hOflOsBJHH9Jrhiu1ryxPlW2zbkhIiKiTKjhmCQ9M0WdSqD+JS0KXwvF84uhuuMvA5ugmbMAVeYJKTJPS4iIiCjTKvLFaBxtpMuHVV+7gVh/f0Ng4zxsKFwGD0ZmwWEpIiIieifWQwfg0bkfkTcEuNO6jajfkukCG4E9N0RERPROmhVshr9rvVx2QaOBwtw80wU2AoMbIiIieicuNi6oHP1qBQFtfLwumTiTYXBDRERE70QEMtX2PYTS2Ulu2zVtInNuMluAw5wbIiIi+k+Jk4eFqFOnkLNTJ1iVKqWbLSV6djLJEBWDGyIiIvpv6jeTh6MTouHSoIHheGbBCsVERESUKvfC7mHs0bEIiQnB5g6boVAokJmu38y5ISIiolRxtnaWSzGEPPLHtePbkNkwuCEiIqJUsTW3xafBJTB/lhovvp+MzIbBDREREaXKHL85eF7YCSLLxuHuc8Q9fWo45nveVx43JgY3RERElCpKhRKbgvfDP48u1+ba9pWGwMbHz0ceNybOliIiIqJU8argJb+e9ZgJj8fAs7074FvRSgY23p7ehuPGwp4bIiIiSjURwNjWrSvvO164B98zszNFYCMwuCEiIqL3MrT77wizBmxigdKPVZkisBEY3BAREdF7WXRlCfyK6PJuyt2Mlzk3mQFzboiIiCjV9MnDY7p0Rl6rynB1vI3f/HzkMWP34DC4ISIiovcKbESOTfeXgcxnAOIdbOR+Ywc4DG6IiIgoVTRaTbLJw/ptcdyYGNwQERFRqgz2TLr6d/yzZwjbvBma6Bh4DR0CY2NCMREREX2QhGeBeDZ1GoIXL4Y2Lg7GxuCGiIiIPohV6VJQOTlBExWFqLPnYGwMboiIiOiDKJRK2L0s6Bdx6BCMjcENERERfZDAWbOhiYmR9yMOHUx6bM4ceTwjMbghIiKiD6NSInzHDkChQNyt24h/+NAQ2ATNnCWPZyTOliIiIqIP4jJYN3tKBjKi9+bwYSQEB8tt52FDDcczikKr1WqRjYSFhcHBwQEvXrxAjhw5jN0cIiIik3Gvbz9EHTum66lRa9I0sEnN9ZvDUkRERJQm8s+aCYW5uQxsxNeM7rHRY3BDREREaSJ42TJo4+NlYCO+ipwbY2BwQ0RERB9MnzwshqJKXrwgv4ptYwQ4TCgmIiKiNAts9ENRrycZZ+QQFYMbIiIi+jApJA8bttUZu5AmZ0sRERFRpsfZUkRERJRtMbghIiIik8LghoiIiEwKgxsiIiIyKQxuiIiIyKQwuCEiIiKTwuCGiIiITEqmCG58fHxQqFAhWFlZoXr16jh58uRbz1+7di1Kliwpzy9Xrhy2bduWYW0lIiKizM3owc3q1asxcuRIjB8/HmfPnkWFChXQvHlzPHv2LNnz//33X3Tr1g2fffYZzp07hw4dOsjbpUuXMrztRERElPkYvUKx6KmpWrUqZs+eLbc1Gg3c3d0xdOhQfP3112+c37VrV0RGRmLr1q2GfTVq1ICnpyd8fX3/8/uxQjEREVHWk5rrt1HXloqLi8OZM2cwZswYwz6lUokmTZrg2LFjyT5G7Bc9PYmJnp5NmzYle35sbKy86Yk3Rf8mERERUdagv26/S5+MUYOboKAgqNVq5M6dO8l+sX3t2rVkH/PkyZNkzxf7kzN58mR8//33b+wXvUNERESUtYSHh8senGy9KrjoFUrc0yOGvYKDg+Hk5ASFQvHBUaQIku7fv88hrgzA9zvj8L3OWHy/Mxbf76z5XoseGxHY5M2b9z/PNWpw4+zsDJVKhadPnybZL7bd3NySfYzYn5rzLS0t5S2xnDlzIi2J/zD+gmQcvt8Zh+91xuL7nbH4fme99/q/emwyxWwpCwsLVK5cGXv37k3SsyK2a9asmexjxP7E5wu7d+9O8XwiIiLKXow+LCWGjHr37o0qVaqgWrVq+O233+RsqL59+8rjvXr1Qr58+WTujDB8+HDUr18f06ZNQ+vWrbFq1SqcPn0af/zxh5FfCREREWUGRg9uxNTuwMBAjBs3TiYFiyndO3bsMCQNBwQEyBlUerVq1cKKFSvw3Xff4ZtvvkGxYsXkTKmyZctmeNvFcJeoz/P6sBelD77fGYfvdcbi+52x+H6b/ntt9Do3RERERCZVoZiIiIgoLTG4ISIiIpPC4IaIiIhMCoMbIiIiMikMbv6Dj48PChUqBCsrK7nI58mTJ996/tq1a1GyZEl5frly5bBt27YMa2t2e7/nz5+PunXrwtHRUd7EmmT/9f9D7/+zrSfKL4jq3h06dEj3Nmbn9zs0NBTe3t7IkyePnGlSvHhxfp6k4/stypCUKFEC1tbWsqLuiBEjEBMTk2HtzaoOHTqEtm3byqrB4nMhpXUeEztw4AAqVaokf66LFi2KJUuWpH3DxGwpSt6qVau0FhYW2kWLFmkvX76sHTBggDZnzpzap0+fJnv+0aNHtSqVSjtlyhTtlStXtN99953W3Nxce/HixQxve3Z4v7t376718fHRnjt3Tnv16lVtnz59tA4ODtoHDx5keNtN/b3W8/f31+bLl09bt25dbfv27TOsvdnt/Y6NjdVWqVJF26pVK+2RI0fk+37gwAGtn59fhrc9O7zfy5cv11paWsqv4r3euXOnNk+ePNoRI0ZkeNuzmm3btmm//fZb7YYNG8TMa+3GjRvfev6dO3e0NjY22pEjR8rr5KxZs+R1c8eOHWnaLgY3b1GtWjWtt7e3YVutVmvz5s2rnTx5crLnd+nSRdu6desk+6pXr64dOHBgurc1O77fr0tISNDa29trly5dmo6tzL7vtXh/a9WqpV2wYIG2d+/eDG7S8f2eO3eutkiRItq4uLgMbGX2fb/FuY0aNUqyT1x8a9eune5tNSV4h+Bm1KhR2jJlyiTZ17VrV23z5s3TtC0clkpBXFwczpw5I4c69EQxQbF97NixZB8j9ic+X2jevHmK59OHvd+vi4qKQnx8PHLlypWOLc2+7/XEiRPh6uqKzz77LINamn3f782bN8slZcSwlChoKoqU/vTTT1Cr1RnY8uzzfovisOIx+qGrO3fuyCHAVq1aZVi7s4tjGXSdNHqF4swqKChIfpDoKyXrie1r164l+xhRYTm588V+Svv3+3WjR4+W476v/+LQh7/XR44cwcKFC+Hn55dBrcze77e4uO7btw89evSQF9lbt25h8ODBMngX1V4pbd/v7t27y8fVqVNHrjydkJAALy8vWQWf0lZK10mxenh0dLTMeUoL7Lkhk/Dzzz/LRNeNGzfKBEJKO+Hh4ejZs6dM4HZ2djZ2c7IFsYCw6CUTa+aJxYXFMjXffvstfH19jd00kyQSXEXP2Jw5c3D27Fls2LAB//zzD3744QdjN43eE3tuUiA+xFUqFZ4+fZpkv9h2c3NL9jFif2rOpw97v/WmTp0qg5s9e/agfPny6dzS7Pde3759G3fv3pUzIhJffAUzMzNcv34dHh4eGdDy7POzLWZImZuby8fplSpVSv7VK4ZdLCws0r3d2en9Hjt2rAzg+/fvL7fFTFexgPPnn38ug8rE6xvSh0npOpkjR44067UR+D+WAvHhIf5i2rt3b5IPdLEtxsKTI/YnPl/YvXt3iufTh73fwpQpU+RfV2KxVbGyPKX9ey1KG1y8eFEOSelv7dq1Q8OGDeV9MW2W0vZnu3bt2nIoSh9ECjdu3JBBDwObtH+/Rb7e6wGMPrDk8otpK8Ouk2manmyC0wnF9MAlS5bIKWuff/65nE745MkTebxnz57ar7/+OslUcDMzM+3UqVPl1OTx48dzKng6vt8///yznO65bt067ePHjw238PBwI74K03yvX8fZUun7fgcEBMiZf0OGDNFev35du3XrVq2rq6v2xx9/NOKrMN33W3xWi/d75cqVcqryrl27tB4eHnIGLL2d+LwV5TjETYQU06dPl/fv3bsnj4v3Wbzfr08F/9///ievk6KcB6eCG4GYg1+gQAF5ERXTC48fP244Vr9+ffkhn9iaNWu0xYsXl+eL6W7//POPEVqdPd7vggULyl+m12/ig4rS/mc7MQY36f9+//vvv7KUhLhIi2nhkyZNktPxKe3f7/j4eO2ECRNkQGNlZaV1d3fXDh48WBsSEmKk1mcd+/fvT/ZzWP/+iq/i/X79MZ6envL/RvxsL168OM3bpRD/pG1fEBEREZHxMOeGiIiITAqDGyIiIjIpDG6IiIjIpDC4ISIiIpPC4IaIiIhMCoMbIiIiMikMboiIiMikMLghIiIik8Lghog+eEVlhUKB0NDQdPseDRo0wBdffJFuz/+h37tQoUL47bffMqxNRPR2DG6I6D8dO3ZMLiTYunVrZAViFXMRcImFPTPCqVOn5ArSRJQ5MLghov+0cOFCDB06FIcOHcKjR4+M3ZxMx8XFBTY2NsZuBhG9xOCGiN4qIiICq1evxqBBg2TPzZIlS5I97+jRoyhfvjysrKxQo0YNXLp0yXDs3r17aNu2LRwdHWFra4syZcpg27ZthuMHDx5EtWrVYGlpiTx58uDrr79GQkJCim0SvTKbNm1Ksi9nzpyGthUuXFh+rVixojxXDC3pLViwAKVKlZLtLFmyJObMmfOf74Foy5AhQ+Dg4ABnZ2eMHTtWLDqc4rDU9OnTUa5cOfla3d3dMXjwYPk+vuv7QUQfhsENEb3VmjVrZBBQokQJfPrpp1i0aFGSC7ve//73P0ybNk0O0YieDHHxjo+Pl8e8vb0RGxsre34uXryIX375BXZ2dvLYw4cP0apVK1StWhXnz5/H3LlzZU/Rjz/++N5tPnnypPy6Z88ePH78GBs2bJDby5cvx7hx4zBp0iRcvXoVP/30kwxUli5d+tbnE8fNzMzk8/7+++8yeBFBUkqUSiVmzpyJy5cvy8fu27cPo0aNMhx/2/tBRGkgzdcZJyKTUqtWLe1vv/0m78fHx2udnZ21+/fvNxwX98VHyapVqwz7nj9/rrW2ttauXr1abpcrV047YcKEZJ//m2++0ZYoUUKr0WgM+3x8fLR2dnZatVott+vXr68dPny44bj4fhs3bkzyPA4ODtrFixfL+/7+/vKcc+fOJTnHw8NDu2LFiiT7fvjhB23NmjVTfP3ie5cqVSpJ+0aPHi336RUsWFA7Y8aMFJ9j7dq1WicnJ8P2294PIvpw7LkhohRdv35d9lZ069ZNbovei65du8qeldfVrFnTcD9Xrlyyp0f0jgjDhg2TPTG1a9fG+PHjceHCBcO54hzxWDF8pCfOE8M4Dx48SLPXEhkZidu3b+Ozzz6TvST6m2iX2P82YpgtcftEe2/evAm1Wp3s+aLHqHHjxsiXLx/s7e3Rs2dPPH/+HFFRUf/5fhDRh2NwQ0QpEkGMyDfJmzevDGzETQwbrV+/Hi9evHjn5+nfvz/u3LkjL/JiGKZKlSqYNWvWe7dLBBqvD43ph8BSos95mT9/vpxFpb+J3KDjx48jLWdqtWnTRuYfiffpzJkz8PHxkcfi4uLS5f0goqQY3BBRskRQs2zZMplHkzgYEHkxIthZuXJlkvMTBwghISG4ceOGTNzVE4m1Xl5eMv/lyy+/lEGGIM4RU80TBysiOVn0eOTPnz/ZtomcHpFLoyd6UfS9IoKFhYX8mrhnJXfu3LLdIqgoWrRokps+ATklJ06ceOO1FitWTE6Pf50IZjQajXzfRI9P8eLFk51hltL7QUQfziwNnoOITNDWrVtlkCKGccQsocQ6deoke3XExVlv4sSJcHJykkHEt99+K2cVdejQQR4TRfBatmwpL/TiOffv328IfMRMIjHTSEw1FzOSxFCYGKoZOXKkTMxNTqNGjTB79mw5PCQCmNGjR8Pc3Nxw3NXVFdbW1tixY4cMkMTMKPEavv/+ezkkJO63aNFCJvWePn1atkl8v5QEBATI4wMHDsTZs2dlL4sIXpIjgiXRiyTOEUnVIlDz9fVNcs7b3g8iSgNpkLdDRCaoTZs22latWiV77MSJEzJh9/z584aE4i1btmjLlCmjtbCw0FarVk0e0xsyZIhM5rW0tNS6uLhoe/bsqQ0KCjIcP3DggLZq1arysW5ubjJhVyQv672eUPzw4UNts2bNtLa2ttpixYppt23bliShWJg/f77W3d1dq1Qq5eP1li9frvX09JTfy9HRUVuvXj3thg0bUnwfxGMHDx6s9fLy0ubIkUM+RiRBJ04wfj2hePr06do8efLIpOrmzZtrly1bJt+jkJCQd3o/iOjDKMQ/aREkEREREWUGzLkhIiIik8LghoiIiEwKgxsiIiIyKQxuiIiIyKQwuCEiIiKTwuCGiIiITAqDGyIiIjIpDG6IiIjIpDC4ISIiIpPC4IaIiIhMCoMbIiIigin5PxYrxgWkBPRkAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ns = np.arange(5, 9)\n", "fig, ax = plt.subplots()\n", "\n", "for n in ns:\n", " all_hamming_weights = np.arange(1, 2 ** (n - 1), 2)\n", " all_abs_bias = 2 * np.abs(all_hamming_weights/2**n - 0.5)\n", " avg_sens = np.zeros(2 ** (n - 2))\n", "\n", " for i, w in enumerate(all_hamming_weights):\n", " layer = bf.hamming_weight_to_ncf_layer_structure(n, w)\n", " f = bf.random_function(n, layer_structure=layer)\n", " avg_sens[i] = f.get_average_sensitivity(exact=True, normalized=False)\n", "\n", " ax.plot(all_abs_bias, avg_sens, \"x--\", label=f\"n={n}\")\n", "\n", "ax.legend(frameon=False)\n", "ax.set_xlabel(\"Absolute bias\")\n", "ax.set_ylabel(\"Average sensitivity\")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "e7d7b6ee", "metadata": {}, "source": [ "## Summary\n", "\n", "This tutorial illustrated how ensembles of Boolean functions generated under\n", "explicit constraints reveal systematic relationships between canalization,\n", "bias, redundancy, and sensitivity.\n", "\n", "The key findings include: \n", "\n", "1. Canalization is rare in random functions but common in biology.\n", "2. Canalizing strength and input redundancy both decrease with degree.\n", "3. Functions with high absolute bias are more likely to be highly canalizing.\n", "4. For NCFs, layer structure is uniquely determined by bias.\n", "5. Average sensitivity varies systematically with layer structure.\n", "\n", "These relationships constrain the space of biologically plausible functions\n", "and suggest evolutionary optimization for robustness.\n", "\n", "We now move on to Boolean networks, where Boolean functions serve as node update\n", "rules and give rise to collective dynamical behavior." ] } ], "metadata": { "jupytext": { "cell_metadata_filter": "-all", "main_language": "python", "notebook_metadata_filter": "-all" }, "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.12.3" } }, "nbformat": 4, "nbformat_minor": 5 }