{
"cells": [
{
"cell_type": "markdown",
"id": "3aebaca2-f14e-4b6f-9d68-8ff7ea3c7b71",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"(custom_response_functions)=\n",
"# Using custom response models"
]
},
{
"cell_type": "markdown",
"id": "1a9a9835-a027-4c14-9649-e7b51545b83d",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/ilabcode/pyhgf/blob/master/docs/source/notebooks/2-Using_custom_response_functions.ipynb)"
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "6522fb9d-5799-4fe4-848e-a711bd3c2e15",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": [
"hide-cell"
]
},
"outputs": [],
"source": [
"import sys\n",
"from IPython.utils import io\n",
"if 'google.colab' in sys.modules:\n",
"\n",
" with io.capture_output() as captured:\n",
" ! pip install pyhgf watermark"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "96efb544-a8f7-44af-8345-ab6af53aaaf5",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.\n"
]
}
],
"source": [
"import arviz as az\n",
"import jax.numpy as jnp\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import pymc as pm\n",
"\n",
"from pyhgf import load_data\n",
"from pyhgf.distribution import HGFDistribution\n",
"from pyhgf.model import HGF\n",
"\n",
"plt.rcParams[\"figure.constrained_layout.use\"] = True"
]
},
{
"cell_type": "markdown",
"id": "d55938bd-cc60-4c6f-8f69-959b340042d7",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"The probabilistic networks we have been creating so far with the continuous and the binary Hierarchical Gaussian Filter (HGF) are often referred to as {term}`Perceptual model`. This branch of the model acts as a [Bayesian filter](https://en.wikipedia.org/wiki/Recursive_Bayesian_estimation) as it tries to predict the next observation(s) given current and past observations (often noted $u$). In that sense, the HGF is sometimes described as a generalization of Bayesian filters (e.g. a one-level continuous HGF is equivalent to a Kalman filter). Complex probabilistic networks can handle more complex environments for example with nested volatility, with multiple inputs, or with time-varying inputs that dynamically change how beliefs propagate through the structure (see {ref}`probabilistic_networks` for a tutorial on probabilistic networks). \n",
"\n",
"But no matter how complex those networks are, they are only the *perceptual* side of the model. If we want our agent to be able to act according to the beliefs he/she is having about the environment and evaluate its performances from these actions, we need what is traditionally called a {term}`Response model` (also sometimes referred to as *decision model* or *observation model*). In a nutshell, a {term}`Response model` describe how we think the agent decide to perform some action at time $t$, and how we can measure the \"goodness of fit\" of our perceptual model given the observed actions. It critically incorporates a {term}`Decision rule`, which is the function that, given the sufficient statistics of the network's beliefs sample an action from the possible actions at hand.\n",
"\n",
"Being able to write and modify such {term}`Response model` is critical for practical applications of the HGF as it allows users to adapt the models to their specific experimental designs. In this notebook, we will demonstrate how it is possible to write custom response models for a given probabilistic network.\n",
"\n",
"```{figure} ../images/response_models.png\n",
"---\n",
"name: response-models-fig\n",
"---\n",
"**The {term}`Perceptual model` and the {term}`Response model` of a Hierarchical Gaussian Filter (HGF)**. The left panel represents the {term}`Perceptual model`. The beliefs that the agent holds on state of the world are updated in the probabilistic network (blue circles) as the agent makes new observations (often noted $u$, e.g. the association between a stimulus and an outcome at time $t$). Using these beliefs, the {term}`Response model` (right panel) selects which decision/action $y$ to perform. Critically here, the {term}`Response model` only operates one-way (i.e. taking beliefs to generate action), but the actions are not modulating the way beliefs are updated (the model does not perform active inference - this point is, however, an active line of researches and new iterations of the model will try to *fusion* the two branch using active inference principles).\n",
"```"
]
},
{
"cell_type": "markdown",
"id": "fedbe1d8-3f35-47ce-9cf6-0b40054f8cc7",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"## Creating a new response function: the binary surprise\n",
"To illustrate the creation of new response functions, we are going to use the same binary input vector from the decision task described in {cite:p}`Iglesias2021`."
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "2fe26152-d746-4bda-872d-9a3e55ffc586",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"outputs": [],
"source": [
"u, _ = load_data(\"binary\")"
]
},
{
"cell_type": "markdown",
"id": "8d0e3852-b46e-48a9-8b7c-349382785cad",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"For the sake of example here, we will consider that the participant underwent a *one-armed bandit task*, which consisted of the presentations of two stimuli ($S_0$ and $S_1$) that could be associated with two types of outcomes ($O_{+}$ and $O_{-}$). On each trial, the participant was presented with the two stimuli, chose one of them and get an outcome. The underlying contingencies of stimuli associated with positive outcomes are changing over time, in a way that can be more or less volatile. The {term}`Perceptual model` tries to track these contingencies by observing the previous associations. We have already been using this {term}`Perceptual model` model before in the tutorial on the binary HGF ({ref}`binary_hgf`). Here the input data $u$ is the observed association between e.g. $S_0$ and $O_{+}$. In order to incorporate a {term}`Response model` on top of that, we need first to define:\n",
"1. a range of possible actions $y$. In this case, the participant has only two alternatives so $y$ can be either `0` or `1`.\n",
"2. a {term}`Decision rule` stating how the agent selects between the two actions given the beliefs of the probabilistic network at time $t$. \n",
"In this situation, it is trivial to write such a decision function and generate actions as new inputs are coming in, for simulation purposes for example. We start by setting a {term}`Perceptual model` (i.e. a network of probabilistic nodes updated by observations). Here this is a standard two-level binary HGF, and the inputs are the binary observations (the association between one of the stimuli and the positive reward)."
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "f543569f-234c-42a0-b23e-18b6379413ee",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"outputs": [],
"source": [
"agent = HGF(\n",
" n_levels=2,\n",
" model_type=\"binary\",\n",
" initial_mean={\"1\": .0, \"2\": .5},\n",
" initial_precision={\"1\": .0, \"2\": 1e4},\n",
" tonic_volatility={\"2\": -4.0},\n",
").input_data(input_data=u)"
]
},
{
"cell_type": "markdown",
"id": "4a8f9ff3-e127-4bd2-b4f2-4c986129bc61",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"This perceptual model has observed the input sequence, meaning that we now have beliefs trajectories for all nodes in the network. The beliefs are stored in the variable `node_trajectories` in the model class, but can also be exported to Pandas using the `to_pandas` method like:"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "a579cfa3-d00c-4cf3-b1e7-278d732aee37",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
time_steps
\n",
"
time
\n",
"
observation_input_0
\n",
"
x_1_mean
\n",
"
x_1_precision
\n",
"
x_1_expected_mean
\n",
"
x_1_expected_precision
\n",
"
x_2_mean
\n",
"
x_2_precision
\n",
"
x_2_expected_mean
\n",
"
x_2_expected_precision
\n",
"
observation_input_0_surprise
\n",
"
observation_input_0_expected_precision
\n",
"
x_1_surprise
\n",
"
x_2_surprise
\n",
"
total_surprise
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
1.0
\n",
"
1.0
\n",
"
1.0
\n",
"
1.0
\n",
"
inf
\n",
"
0.622459
\n",
"
0.235004
\n",
"
0.506923
\n",
"
54.536678
\n",
"
0.500000
\n",
"
54.301674
\n",
"
0.474077
\n",
"
inf
\n",
"
1.659764
\n",
"
-1.077038
\n",
"
1.056803
\n",
"
\n",
"
\n",
"
1
\n",
"
1.0
\n",
"
2.0
\n",
"
1.0
\n",
"
1.0
\n",
"
inf
\n",
"
0.624085
\n",
"
0.234603
\n",
"
0.520583
\n",
"
27.518301
\n",
"
0.506923
\n",
"
27.283697
\n",
"
0.471469
\n",
"
inf
\n",
"
1.660445
\n",
"
-0.731660
\n",
"
1.400254
\n",
"
\n",
"
\n",
"
2
\n",
"
1.0
\n",
"
3.0
\n",
"
1.0
\n",
"
1.0
\n",
"
inf
\n",
"
0.627284
\n",
"
0.233799
\n",
"
0.540697
\n",
"
18.530355
\n",
"
0.520583
\n",
"
18.296556
\n",
"
0.466356
\n",
"
inf
\n",
"
1.661825
\n",
"
-0.530717
\n",
"
1.597464
\n",
"
\n",
"
\n",
"
3
\n",
"
1.0
\n",
"
4.0
\n",
"
1.0
\n",
"
1.0
\n",
"
inf
\n",
"
0.631975
\n",
"
0.232583
\n",
"
0.566859
\n",
"
14.067450
\n",
"
0.540697
\n",
"
13.834867
\n",
"
0.458906
\n",
"
inf
\n",
"
1.663944
\n",
"
-0.389923
\n",
"
1.732927
\n",
"
\n",
"
\n",
"
4
\n",
"
1.0
\n",
"
5.0
\n",
"
0.0
\n",
"
0.0
\n",
"
inf
\n",
"
0.638038
\n",
"
0.230946
\n",
"
0.510971
\n",
"
11.416410
\n",
"
0.566859
\n",
"
11.185465
\n",
"
1.016216
\n",
"
inf
\n",
"
1.698733
\n",
"
-0.270900
\n",
"
2.444049
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" time_steps time observation_input_0 x_1_mean x_1_precision \\\n",
"0 1.0 1.0 1.0 1.0 inf \n",
"1 1.0 2.0 1.0 1.0 inf \n",
"2 1.0 3.0 1.0 1.0 inf \n",
"3 1.0 4.0 1.0 1.0 inf \n",
"4 1.0 5.0 0.0 0.0 inf \n",
"\n",
" x_1_expected_mean x_1_expected_precision x_2_mean x_2_precision \\\n",
"0 0.622459 0.235004 0.506923 54.536678 \n",
"1 0.624085 0.234603 0.520583 27.518301 \n",
"2 0.627284 0.233799 0.540697 18.530355 \n",
"3 0.631975 0.232583 0.566859 14.067450 \n",
"4 0.638038 0.230946 0.510971 11.416410 \n",
"\n",
" x_2_expected_mean x_2_expected_precision observation_input_0_surprise \\\n",
"0 0.500000 54.301674 0.474077 \n",
"1 0.506923 27.283697 0.471469 \n",
"2 0.520583 18.296556 0.466356 \n",
"3 0.540697 13.834867 0.458906 \n",
"4 0.566859 11.185465 1.016216 \n",
"\n",
" observation_input_0_expected_precision x_1_surprise x_2_surprise \\\n",
"0 inf 1.659764 -1.077038 \n",
"1 inf 1.660445 -0.731660 \n",
"2 inf 1.661825 -0.530717 \n",
"3 inf 1.663944 -0.389923 \n",
"4 inf 1.698733 -0.270900 \n",
"\n",
" total_surprise \n",
"0 1.056803 \n",
"1 1.400254 \n",
"2 1.597464 \n",
"3 1.732927 \n",
"4 2.444049 "
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"agent.to_pandas().head()"
]
},
{
"cell_type": "markdown",
"id": "7f4cc804-fb04-44d5-bfbf-b62b4e2c2ceb",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"### Creating the decision rule"
]
},
{
"cell_type": "markdown",
"id": "6530129d-af70-4e3d-98e6-8e0ec06a410e",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"The next step is to use these beliefs to generate the corresponding decisions at each time point. We can work on the simplest {term}`Decision rule`, which is probably to use the expected value of the first level a time $t$ to sample from a [binomial distribution](https://en.wikipedia.org/wiki/Binomial_distribution) and generate a binary decision. Intuitively, this just means that the agent is more likely to select a given stimulus when the beliefs that is is associated with a positive outcome are close to `1.0`."
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "2558d4fe-448b-4d9c-8944-93087f01feda",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"outputs": [],
"source": [
"# a simple decision rule using the first level of the HGF\n",
"np.random.seed(1)\n",
"responses = np.random.binomial(p=agent.node_trajectories[1][\"expected_mean\"], n=1)"
]
},
{
"cell_type": "markdown",
"id": "214a4f52-ff3f-4d7c-8c43-f0fd9b9d6782",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"This gives us a binary vector of responses $y$ that can be related to observations and underlying beliefs."
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "d4391036-ddb1-42a0-ba66-6e9db3054656",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5, 0, 'Trials')"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA9UAAAEmCAYAAABs07OBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAADM/ElEQVR4nOzdd3QUVd8H8O9s3+ym95AOoYQOAaT3JqCICAKCAqKIir3w2iuPqIjlAdujiCJ2LIhKkN57DT2E9N6z2T7vH5sdNmQ2s7vZZFN+n3NyDuy0OzO3zJ25hWFZlgUhhBBCCCGEEEKcJvJ0AAghhBBCCCGEkJaKKtWEEEIIIYQQQoiLqFJNCCGEEEIIIYS4iCrVhBBCCCGEEEKIi6hSTQghhBBCCCGEuIgq1YQQQgghhBBCiIuoUk0IIYQQQgghhLiIKtWEEEIIIYQQQoiLJJ4OgCPMZjOys7Ph7e0NhmE8HRxCCCGEEEIIIa0cy7KoqKhAREQERCL736NbRKU6OzsbUVFRng4GIYQQQgghhJA2JiMjA5GRkXaXt4hKtbe3NwDLyfj4+Hg4NIQQQgghhBBCWrvy8nJERUVx9VF7WkSl2trk28fHhyrVhBBCCCGEEEKajFAXZBqojBBCCCGEEEIIcRFVqgkhhBBCCCGEEBe1iObfLQHLsqisrITBYIBUKoVarQYA7jeJxHKpjUYj92+DwQCdTge5XA6pVOq25Q05vu1vMpkMarW6VnMH2/O03af1mELr2tu/dV29Xu/wckeviTuP6UqY7F2fxsQXH505tr3thfbb0OX1rQfApX0L3SdH9y90rZzZP1/ccPX8HA2TM3G7Iefsar7kaL7V0GvqzHV2Ja91Jr3Ud0xH8lVHwy+UBzU0v+BjLxxCZYGj2ztznx2NO66WFY5ei4amR1fyV2euQ0PLClfKPGfyelfug7vKJGfWdeV5UCi9N/Q5w9X7VN85u1rmOprehO6ZUJnrSh7mqecIR8Niu//GfsZsaL7n6P7dWe54GlWq3aC0tBTXUlOhKSkBazKBEYthlEjAABAbjSgvK0N+fgFEDOClUqGysgrV1RrAbIYEgBEMGJEIXl7KBi8PCQmB2sfHpeOzYLnf5F4qhEZEIDgqEjHx8fDz86t1nrb7tB7Ty9+/3nVtj2m7f7/AQJQWFSEvIwO5WVkwVlcLLnf0mtg7J1eO6UqY7F2fpo6Pzhzb3vbWc7a3X6HjOhouofTkzL6F7hNfenHmmlmP68z++dKOq+fHFz6+MDkTtxtyzrbpraHXgS/fcmTd+q6pM9eZL99yJu4IpRe++O5Mvupo+IXyoIbmF/XFkRvDwZdXO1PWCMUDofK3vrjjavnkSnpxZf+u5K8NzXdcvc+OlnnO5PWu3Ad3lUmO7MvRcxKKz3zha+hzhqv3qb5zBuBSmSuUBzj6nCFU5rqSh3nqOcLRsAilZ3c+YwrlWw09TmOUO80Bw7Is6+lACCkvL4evry/Kysqa3UBlpaWluHDyFBRGI8KCg6FUKJCbn48jR45AKhKhQ6dOKCkshFinQ3V1NbIKC+DnpUZpSTHUMjnC2kXgWkYGxGYWKn8/FFVWuLw8tF0EvPz9ofT3x7lz55w6vlZTDSNYBKq9kdAxAWaWRYXJBLmfH8S+vgiLjUFu2jUojEYo5XJkXrsGsU4HCcOAUSoRGh2NyupqaCUS3nU1JSXIy86GWiavtX+9RIKcoiKEBwaC1evhJ5bAV61GlabK7nKGAS5cvCh4TeydkyvHdCVMkUEhUHsp61yfTj17NFqmwRcfq7Va5BYUOHRse9tfvHoVV9LT0TEmBu1jY+vs1/ae8x1XaLk1XELpqU9SEoKDghzatzXM9u4TX3rh27+9a2YNq760FFUlJQ7t3zY9WtOO0PEdvXb2wuRM3Lamd1fO2Ta9OZMv8V0HvnzLNj25ck2diUd8+ZbQOdnuUyi98MV3Z/JVoTQmtK/60psz+YVQHmIbDr7yx5myRige8N1nR+OZq+WTK+nFlfToSv7qzHVwJt8Tus/1xTd72wvl9Xx5udB9EIrbruSrDS2/hPI1vvRur3xx9DnD1ftU3zkXVFeDETEIkiucKnP5ntf40pvQc4ZQmevK85bQs09jPUc4Ghah9OzOZ0yhfEso33Pl/Bpa7jQ2R+uh1Ke6AViWxbXUVCiMRrSPiYHKywsMw6CouAjtg4MQHxSEixcuwItl0Tk2DnKpFP5mFgaNBh1CQxEfFISc7BzEBAaiY1gYtJVV8DObXVreKTwc/kovyMwmXLxwAfFBjh8/OiAA3lIJwuQKxAcHgdUbEBURAV+pFEqxGDKDHof37YPcaEB8dDSKiougAosucfFIiI2DgmVRXlKC+OhoyA2GOut6sWaoZDIkhIahfXAwt38fiQSlhYXwNRhQWlgIP4kE8ZGRCPTzQ3REO97lce3aQaPRIDYwqN5rYu+cXDmmK2HyZ1kEqVToEBtb6/oojEakX72KxniXxRcfRSIRVF5eaB8TI3hse9t7KZWQMIC/0QSlWAwvpbLWfm3vOd9xhZZbw2U2m+tNT+2Dg1FeUgKGYQT3bQ2zn8HIe5/40gvf/u1dM+u1khsMlmsjFd6/bXq0ph252Vzv8R29dizL8obJmbhtTe9yo8Hpc44JCOTSW1xQoMP5Et914Mu3Alhw6cneuvVdUwAOxyO+fEsor7Xdp1B64YvvzuSrQmlMaF/1pTdn8guhPMQ2HHzlj21ZIFTWCMUDvvvsaDxTml0rn1xJL66kR9tr4mj+au85xNF8x5mywtH4ZrsvoWcnvvRkm5cL3QehstCVfFUonQiVX0L5Gl96lxn0vOWLo88ZzuQxjp5zfHQ0SjKzUJmVjfjoaIfLXL7nNb705mc01vucYe+aWPNlOWt2+nlL6NmnsZ4jHA2LUHp25zOmUL4llO+5cn4NLXeaE6pUN0BlZSU0JSUICw6+/ltVFbTlFQjxD4RCrkBlQQF8VWpUVVdDV6VBWFAQqkqL4eflBYlUWuffgd5+Li339faGtqoSDETcMR09vkwshowRwUcmhZdMAW1VJbRaHQL9/FFdXgYxI0J5djZ8VOpa52dlXU9TXQ1vlarOuiqFF3RVGoT4+nHh1Gp1XPiC/fy5cNriW249jxBfv3qvib1zcuWYroQpKii0znXUVFcjLDgYVcXFqKysbJL4aEvo2Pa2t97HjrGx3HnYsr3nfISWW8OVm5tbb3qyvY5C+7ZuFxkWxnuf+NIL3/7tXTPrtfJWqbjwCe3fNj1a2f7mzPnxhY8vTLaE4rb1+D4qtdPnrJYruPQGFg7nS3zXgS/fim/Xrk4aduaaFhQVORyP+PItobzWdp9C6YUvvjuTr/LhC7+9fdWX3uzFLUfZ5iG24eArf2zLAqGyRige8N1nR+OZVCxxqXxyJb3YcnT/tteED1/csPccwncdnMn3hO7zjWG3V+YJPTvxpSfbvFzoPgiVha7kq0LpRKj8EsrX+NK7mBHxli+OPmc4k8c4es6VVVVQS8VQS8S14oxQmcv3vMaX3mLCwut9zrB3Taz7Uiu8nH7eEnr2aaznCEfDIpSe3fmMKZRvCeV7rpyfrcZ8Rm4KVKluAIPBANZkglKhuP6b0QizyQSlXA6RSASYTJCKxTAYjWDNJihlcsBkhkwkqVl+w7+lPL85sFwmlQJmM1jWzB3T0eMzZkAiYiAXiSESM4DZDJPJBLlMBtZkBlgWrNEIqURS6/ysrOsZjUaIRaI660rEYrBmExQyGRdOk8nEhU8mlXDhtMW33HoeCpms3mti75xcOaYrYfJSyOpcR6PRCIVcDtZkgsFgaJL4aEvo2Pa2t95HX7WaOw9btvecj9Bya7iqq6vrTU+211Fo37XiKc994ksvfPu3d82s10osFnPHEdq/bXq0sv3NmfPjCx9fmGwJxW3r8SVisdPnLBaLufRmYs0O50t814Ev3/LxUtVJw85c02qt1uF4xJdvCeW1tvsUSi988d2ZfJUPX/jt7au+9GYvbjnKNg+xDQdf+WNbFgiVNULxgO8+OxrPwLIulU+upBdbju7f9prw4Ysb9p5D+K6DM/me0H2+Mez2yjyhZye+9GSblwvdB6Gy0JV8VSidCJVfQvkaX3pnAN7yxdHnDGfyGEfP2WA0QioSQyaW1IozQmUu3/MaX3pTKRX1PmfYuybWfYnFIqeft4SefRrrOcLRsAilZ3c+YwrlW0L5nivnZ6sxn5GbAlWqG0AqlYIRi1Gt1V7/TSKBSCxGtU4Hs9kMiMUwmEyQSiRgRGJU63WAWAS92Viz/IZ/G3h+c2C53mAARCIwjIg7pqPHZ0WA0cxCZzbBbGIBkQhisRg6vR6MWAQwDJiahxzb87OyrieRSGAym+usazSZwIjE0Or1XDjFYjEXPr3ByIXTFt9y63lo9fp6r4m9c3LlmK6ESaPV17mOEokEWp0OjFjMjRrZ2PHRltCx7W1vvY9llZXcediyved8hJZbw6VUKutNT7bXUWjfteIpz33iSy98+7d3zazXymQycccR2r9terSy/c2Z8+MLH1+YbAnFbevxjSaT0+dsMpm49CZmRA7nS3zXgS/fKtdU1UnDzlxTpULhcDziy7eE8lrbfQqlF7747ky+yocv/Pb2VV96sxe3HGWbh9iGg6/8sS0LhMoaoXjAd58djWdgGJfKJ1fSiy1H9297TfjwxQ17zyF818GZfE/oPt8YdntlntCzE196ss3Lhe6DUFnoSr4qlE6Eyi+hfI0vvbMAb/ni6HOGM3mMo+cslUhgMJugNxlrxRmhMpfveY0vvVVVa+t9zrB3Taz7MpnMTj9vCT37NNZzhKNhEUrP7nzGFMq3hPI9V87PVmM+IzcFqlQ3gFqthpe/P3ILCq7/plJB4eON/JIiaHVaqIODUVZVCZVSCbnKC7mFhVD5BaBUo4HRYKjz76KKUpeWl1VUQKFSg4WZO6ajx9ebTNCzZpTrDdDotVCo1FAo5CgqLYHSxxcm1gyfiAiUV1XWOj8r63peSiUqqqrqrFul1UCu8kJ+WSkXToVCzoWvoLSEC6ctvuXW88gvK633mtg7J1eO6UqYMgrz6lxHL6USuQUFUAUEcFMjNHZ8tCV0bHvbW+/jxbQ07jxs2d5zPkLLreEKCwurNz3ZXkehfVu3y8zN5b1PfOmFb//2rpn1WlVUVXHhE9q/bXq0sv3NmfPjCx9fmGwJxW3r8curKp0+50qdlktvYOBwvsR3HfjyrdSsrDpp2JlrGhwY6HA84su3hPJa230KpRe++O5MvsqHL/z29lVferMXtxxlm4fYhoOv/LEtC4TKGqF4wHefHY1nBpPRpfLJlfRiy9H9214TPnxxw95zCN91cCbfE7rPN4bdXpkn9OzEl55s83Kh+yBUFrqSrwqlE6HySyhf40vvJtbMW744+pzhTB7j6DmrVSpUGkyoNJpqxRmhMpfveY0vvV3Lzan3OcPeNbHuq1Krcfp5S+jZp7GeIxwNi1B6duczplC+JZTvuXJ+thrzGbkp0OjfDXTjKHYKuRx5BQW1RukrLiyARKe3O/p2WkYGJPWMZO3o8tB2EVD6+8PrhtFNHTm+7oaRsk0si0qT/RFZM66lQaLTQ8IwgFKJsHpG/864lobqktJao6ta93/j6Ke+IjH8vL1Rqamyu1wkYnD+4kXBa2LvnFw5pithso7KeeP1acrRvxVyObQ6ncujf1u3v3E04xv3e+NIqs4utzd66o3pqU9SEoICAx3a942jdt54n/jSC9/+HR3Z15H926ZHa9oROr6j185emJyJ286OZmx7zrobRv92NF/iuw58+ZZtenLlmjoTj/jyLaFzst2nUHqxNzKvo/mqUBoT2ld96c2Z/EIoD7ENh73Rvx0ta4TiAd99djSeuVo+uZJeXEmPruSvzlwHZ/I9oftcX3yzt71QXs+XlwvdB6G47Uq+2tDySyhf40vv9soXR58zXL1P9Z3zjaN/O1rm2hv9+8b0JvScIVTmuvK8JfTs01jPEY6GRSg9u/MZUyjfcvfo3+4odxqbo/VQqlS7Ad98ayapFGDZWvPJiUUMlF5eqKysglZr6esiAWBiGIARQaXyavDy4OBgqH18XDo+GHC/KVQqhIRHICQ6CtFxcXbnDhWLGO6YqoCAete1Pabt/n0DAurMASi03NFrYu+cXDmmK2Gyd32aOj46c2x721vP2d5+hY7raLiE0pMz+xa6T3zpxZlrxjeXozPp0dHjO3NP+cLkTNxuyDnbpreGXge+fMuRdeu7ps5cZ758y5m4I5Re+OK7M/mqo+EXyoMaml/UF0duDAdfXu1MWSMUD4TK3/rijqvlkyvpxZX9u5K/NjTfcfU+O1rmOZPXu3If3FUmObIvR89JKD7zha+hzxmu3qf6zhmoO0+1I2WuUB7g6HOGUJnrSh7mqecIR8MilJ7d+YwplG819DiNUe40JqpUNzGWZVFZWQmDwQCpVMo1XbD+Zu1fYTRe74diMBig0+kgl8u5/gPuWN6Q49v+JpPJoFarwTAM73na7tN6TKF17e3fuq5er3d4uaPXxJ3HdCVM9q5PY+KLj84c2972Qvtt6PL61gPg0r6F7pOj+xe6Vs7sny9uuHp+jobJmbjdkHN2NV9yNN9q6DV15jq7ktc6k17qO6Yj+aqj4RfKgxqaX/CxFw6hssDR7Z25z47GHVfLCkevRUPToyv5qzPXoaFlhStlnjN5vSv3wV1lkjPruvI8KJTeG/qc4ep9qu+cXS1zHU1vQvdMqMx1JQ/z1HOEo2Gx3X9jP2M2NN9zdP/uLHcaC1WqCSGEEEIIIYQQFzlaD6WBygghhBBCCCGEEBdRpZoQQgghhBBCCHERVaoJIYQQQgghhBAXUaWaEEIIIYQQQghxEVWqCSGEEEIIIYQQF1GlmhBCCCGEEEIIcZHE0wFoLRo6t6k757FuyHyvrswD3VjLG3uealfubUPnuWxsrszv3NjHd3SeUmfm4bQ9J1fmvW3oPNfuipvunJtU6Jo0dE7Nhs6B62ge4Or8w+6ap1ronBua9hs7jbprjnpn5kx2pvxqaPnnrvjuyhzozpQlDY0bjT3HeFOVFQ2dh7ox5jd2dd7f+sLX0HzNlXzD1TnO3TlPtruuozPztju63B3X19HlQjy9vbv23Zyed5sjpyvVu3btwttvv42jR48iJycHGzduxNSpU+vdZufOnXj88cdx9uxZRERE4Omnn8bixYtdDXOzU1paitSraSgpr0JpaTkKCvJRXV0Ns5kFRBKANULEMPDyUiE4OAS+vmpIGDMABkaW4bZhGBG8lF6o0lTa3V5ouaP7ZxhRnXVLyyuRlZWLar3BqWM2xnIvpRwR4WGIighBYIA/iopLkJGV63T4APDuMz4uFn5+fk7dW6ORhUTCwN9HxW0vtLwp8YXFNh40dvhcuRbWbYTuLV98tY3b9uKOo/fJ3nK+uOeuuGmbXvnC4s5rIpRHCN0vobhlm8e4EiahcxI6pivbu3LODU37jZ1GG5of8cU9ofTkTPnV0PLPXfHdmbjjaB7T0Ptg75ry5RENvd9NVVY4cxxX8lK+vNiZ9CqUhzmaLwNoUL7mSr7hSPnkaHp15ZwdSVuO7lOoTHVleUPzZXc+53l6e3ftuzk97zZXDMuyrDMb/PXXX9i7dy/69OmD22+/XbBSffXqVXTr1g2LFi3C/fffj71792LJkiXYsGEDbr/9doeO6eik255QWlqKk2fOw8jKIFcocC09E8VlVcjOyYVcoUJEeDgyMtJhBoN24WHw91UhwNcL586dg0gsRaeOHVBYVAKtkUF1tRaFedlQefuguKS0zvb+PmpUlpfYXe7o/oNDI6BUqaGUibh1tTo9fHx84e0XCoZhcOHiRYeO2RjLExI6gmXNMOkrIWWMKCrIRWBwGPQGM8RyH4fDp6muBswmePv619qnv7cSvmopenbrLPjgYb23wSGhUCiU0GqrUZCfBwmjR2xUONIycuwuF9p/Y8VDa1jy83Nx5MgRiMRSJPXtg6Cg4EYLn9C14juWdZvSch1Kyirs3lu++Gobt23TG999FrpP9pZfvXIZ6deu1Ip7am8fVGk0DY6btuk1JjIM1ZqqWmFx5zURyiOE4oZQ3LLNYxiRxOkwCZ2TNXz2jllfvmZve1fOuaFpv7HTqCtpUCg92sZ3vvRkLfMcKb8aWv7Vt31Dy9yG5jHOxB2huGF7Ta3pyTaPsG7v6v1uqrLCmePw5bVCeSnfc0JMXAJi4+IdSq9CeZij+bLtc4Yr+Zor+YYj5ZOj6dU2fM6URUJpy9HrKFSmurLcXjxw5vq66znPXflyYzxnOrPvxgxHS+BoPdTpPtUTJ07E66+/jmnTpjm0/scff4zo6GisWrUKXbp0wb333osFCxbgnXfecfbQzQ7Lski9mgYjK0N0TByKC4thFikgl3shNKI9AsNikZOTjYCQSIRHJcBL7QszI8WFCxcRFB6LwLBYXLhwEaxYgbj4TpBJZTBLvKGp1iMkIr7W9mGRHVClqYZZouZd7uj+WakPVD4BiI1rDzMjw4ULFxEYFgMzo0BFtRkRUTHQaDQIDIkSPGZjLA8Kj4PBaEJEu0hI5N4oLCqBgVGjsKgEEqUP2kXFOhQ+/+B2kMpVkHsHISg8ltunVOEDsVQOIyvF1bRrsPdOyfbexsTGw8tLBZFIBC8vFWJi42EwS7HvwCEYWSnvciMrq3f/jRUPrWFhGAbFhcUICo9DUHgcSkrLwIiYRgmf0LXiO5Z1G4NZCoYRQ6L05b23rNS7Tny1jdtmkZxLb7Zxx3qfDWZJvffJ3n1UKr3AMOJacS8yOg5+/oFo1y6qQXHTNr2yIhlKSssQHRvHhcVglrjtmgjlEUJxQyhu2eYx8e07Iy6ug1NhEjona/jAgPeY9eVr9rZ35ZwbmvYbO426kgb5trdNj7bxnS89Wcs8VqwULL8aWv7Vt70z8d2ZuONoHmNbljQkL7R9jmDFSi49sSI5l0dYtzebzS7d76YqK5w5Dl9eK5SX8j0nGEXeEEvlUHp5CaZXoTzM9prXly8HBEdyzxmBYTFO52tC19lefBIqnxxNr7Zx39FzDgyJEkxbjl5HoTLVleX24oEz19ddz3nuypdd3d7ZNGpv340Zjtam0Qcq279/P8aNG1frt/Hjx+PIkSMwGAy82+h0OpSXl9f6a44qKytRUl6F4JBQVFVVoqxKA6WXCpUaLfwCgyGVSFBSVgmV2hfe3j6o1GjBgEFBSSW8VD5QKOTcv6s1VajUaBEUHMptY7u99d8+voG8yx3df7uoOFRqtNBqtdxykUgCsUQGiVyFkpKiOuG3d8zGWG49D9vw+fkH1jkPofBJJFIwIimkCm/I5Upun/7+ASirrIZK7YPiskpUVlYK3ls+KpUa2fmlUKn531gFh4TWu3934gurNT4GBIZw56zRaBolfELXiu9Y1m1UKjUXTr57GxwaWSc+2MZtkUjCbWMbd6znzIjE9d4ne/fRev3Cwttxx7TVkLhpG8+VShV3b6xhYURit10ToTxCKG4IxS3b4994bRwJk9A5WcNXWFDAe8z68jV727tyzo7EGUfie2OlUVfSIN/2tunRFl96sg2/UPnV0PKvvu2die/OxB1H8xjbsqQheaHtc4Tt9beNG9btc3NzXbrfTVVWOHMcvrxWKC/le04Ii4iqE3aAP70K5WG24asvX1Z4qbjnDLCs0/ma0HW2F5+EyidH06tt3Hf0nG3Tgb205eh1tMVXprqy3F48cOb61hd3hPZpy135sqvb18eZfTdmOFqbRq9U5+bmIjS09o0IDQ2F0WhEYWEh7zbLly+Hr68v9xcVFdXYwXSJwWCA0chCoVDCaDTCbGIhFknAmlnIZAqIRAxMZkAkkUIqlcFkBswsC6OJhVgihYgRc/82Go2W7eRKbhvb7a3/lkgkvMsd3b+XyhsmM2AymbjlLBiIxBKIJHLodbo64bd3zMZYbj0P2/BJZPK610kgfNw5iWUQiUTcPmUyOUwmFiKxGEYja/fFju295WPdXizhH5ZALlfUu3934gurNT7K5QrunI1GY6OET+ha8R3Luo1YIuHCyXdv5QplnfhgG7dZMNw2tnHHes5mlq33Ptm7j9z1U3hxx6y1XQPipm08F4nF3L2xhoUF3HZNhPIIobghFLdsj3/jtXEkTELnZA2fVqflPWZ9+Zq97V05Z0fijCPxvbHSqCtpkG972/Roiy892YZfqPxqaPlX3/bOxHdn4o6jeYxtWdKQvND2OcL2+tvGDev21dXVLt3vpiornDkOX14rlJfyPScovFR1wg7wp1ehPMw2fPXly2KxmHvOMJvNTudrQtfZXnwSKp8cTa+2cd/Rc7ZNB/bSlqPXsdZ94ilTXVluLx44c325fTbwOc9d+bKr29fHmX03ZjhamyaZUuvGkeGsTQTsjRi3bNkylJWVcX8ZGRmNHkZXSKVSSCQMtNpqSCQSiMQMTGYjGBEDvV4Ls5mFWASYjQYYDHqIRYCIYSARMzAZDTCzJu7fEonEsp2umtvGdnvrv41GI+9yR/evqaqAWASIxWJuOQMWZpMRZqMOMrm8TvjtHbMxllvPwzZ8Rr2u7nUSCB93TiY9zGYzt0+9XgexmIHZZIJEwnCjWNZ3b/lYtzfdkHFb6XTaevfvTnxhtcZHnU7LnbPEpmBwZ/iErhXfsazbmIxGLpx891anra4TH2zjNgOW28Y27ljPWcQw9d4ne/eRu35aDXfMWts1IG7axnOzycTdG2tYGMBt10QojxCKG0Jxy/b4N14bR8IkdE7W8CnkCt5j1pev2dvelXN2JM44Et8bK426kgb5trdNj7b40pNt+IXKr4aWf/Vt70x8dybuOJrH2JYlDckLbZ8jbK+/bdywbq9UKl26301VVjhzHL68Vigv5XtO0Gqq6oQd4E+vQnmYbfjqy5dNJhP3nCESiZzO14Sus734JFQ+OZpebeO+o+dsmw7spS1Hr2Ot+8RTprqy3F48cOb6cvts4HOeu/JlV7evjzP7bsxwtDaNXqkOCwtDbm5urd/y8/MhkUgQGBjIu41cLoePj0+tv+ZIrbaMaliQnweVSg1flReqNVVQeylQWlQAg9EIf181qirLUFFRDrWXAixYBPuroakqh1ar4/6t9FJB7aVAYUEet43t9tZ/l5cV8S53dP9ZGVeh9lJAoVBwy81mI0xGPYy6Kvj7B9YJv71jNsZy63nYhq+0pKjOeQiFz2g0gDUbYNBWQKer5vZZUlIMX7USVZXlCPBVc1NB1Hdv+VRVVSIixA9VlfxdEwry8+rdvzvxhdUaH4uL8rlz9vLyapTwCV0rvmNZt6mqquTCyXdvC/Iy68QH27htNhu5bWzjjvWcWbOp3vtk7z5ar19uThZ3TFsNiZu28by6uoq7N9awsGaT266JUB4hFDeE4pbt8W+8No6ESeicrOELCg7mPWZ9+Zq97V05Z0fijCPxvbHSqCtpkG972/Roiy892YZfqPxqaPlX3/bOxHdn4o6jeYxtWdKQvND2OcL2+tvGDev2YWFhLt3vpiornDkOX14rlJfyPSfkZmfUCTvAn16F8jDb8NWXL2s1VdxzBhjG6XxN6Drbi09C5ZOj6dU27jt6zrbpwF7acvQ62uIrU11Zbi8eOHN964s7Qvu05a582dXt6+PMvhszHK1No1eqBw4ciOTk5Fq/bdmyBUlJSS3+rQbDMIiPi4WE0SP92lUEBAVAZKqGTqdBXvYVFOWmITw8AsX5GcjJuARNZRlEZj06deqIwpw0FOWmoVOnjmCM1biaegF6gx4iYzm8lDLkZ6fW2j438zJUXkqIjBW8yx3dP2MoQ1V5MdKuXoHIrEOnTh1RlHsNIlYLb6UIWelp8PLyQlF+uuAxG2N5Yc5VSCViZGdmwKirQFCgP6RsJYIC/WGsLkdm+lWHwldSkAmDrgq6ikIU5qRx+zRoy2Ey6CBhDIiLjbHbWsL23l5LS4VGUwWTyQSNpgrX0lIhFRkw6Kb+kDAG3uUSRl/v/hsrHlrDYjabERAUgMKcqyjMuQp/P1+YTeZGCZ/QteI7lnUbqcgAljXBWF3Ge28ZQ3md+Gobt0UmLZfebOOO9T5LRcZ675O9+1hdrQHLmmrFvYxrqSgtKUJWZnqD4qZtemVMOvj7+SI97SoXFqnI6LZrIpRHCMUNobhlm8ekXjmPq1cvOxUmoXOyho81s7zHrC9fs7e9K+fc0LTf2GnUlTTIt71terSN73zpyVrmMUaNYPnV0PKvvu2die/OxB1H8xjbsqQheaHtcwRj1HDpiTFpuTzCur1IJHLpfjdVWeHMcfjyWqG8lO85QWKugMmgQ7VGI5hehfIw22teX75cXJDBPWcU5V5zOl8Tus724pNQ+eRoerWN+46ec1F+umDacvQ6CpWpriy3Fw+cub7ues5zV77s6vbOplF7+27McLQ2Tk+pVVlZicuXLwMAevfujZUrV2LkyJEICAhAdHQ0li1bhqysLKxbtw7A9Sm17r//fixatAj79+/H4sWLW82UWgD//JJarRYmSwcbMKwJDGN5uxgUFAxfXzWkIjNYtva8fiKRGEqFElWaSrvbCy13dP8ikbjOurbzVDtzzMZYrlIqEB4eiuh2oQjw96szL6Gj+2cYhnefcbExLs8PGOCr5rYXWt6U+MJiGw8aO3yuXAu+OSv57i1ffLWN2/bijqP3yd5yvrjnrrhpm175wuLOayKURwjdL6G4ZZvHuBImoXMSOqYr27tyzg1N+42dRhuaH/HFPaH05Ez51dDyz13x3Zm442ge09D7YO+a8uURDb3fTVVWOHMcV/JSvrzYmfQqlIc5mi/bPme4kq+5km84Uj45ml5dOWdH0paj+xQqU11Z3tB82Z3PeZ7e3l37bk7Pu03N0Xqo05XqHTt2YOTIkXV+v/vuu7F27Vrcc889SEtLw44dO7hlO3fuxGOPPYazZ88iIiICzzzzDBYvXuz2k/EklmVRWVkJg8HA9eUwGAzQ6XSQy+XcV3mj0QipVMo1k7hxG2NN35f6tnfX/vnW1ev1Lh2zMZbLZDKo1WowDMNdX1fCZ2+frtxb6/Wy3V5oeVPiCwuAJgufK9fC0XsrFLeF7rOr95EvfO6Km7bnxBcWd14ToTxC6H4Jxa2Ghklo+4bka66mh8ZI+42dRhuaHwnFd77jOFN+NbT8c1d8dybuOJrHNPQ+2Lum9W3v6v1uqrLCmeO4kpfy5cXOpFfbsAhd8/rC19B8zZV8w5HyiW97objvTFnkrusoVKa6stwd19fR5UI8vb279t2cnnebUqNVqj2hJVSqCSGEEEIIIYS0Ho7WQ5tk9G9CCCGEEEIIIaQ1oko1IYQQQgghhBDiIqpUE0IIIYQQQgghLqJKNSGEEEIIIYQQ4iKqVBNCCCGEEEIIIS6iSjUhhBBCCCGEEOIiqlQTQgghhBBCCCEuoko1IYQQQgghhBDiIqpUE0IIIYQQQgghLqJKNSGEEEIIIYQQ4iKqVBNCCCGEEEIIIS6iSjUhhBBCCCGEEOIiqlQTQgghhBBCCCEuoko1IYQQQgghhBDiIqpUE0IIIYQQQgghLqJKNSGEEEIIIYQQ4iKqVJM2x2gyQ2c0eToYhBBCCCGEkFZA4ukAENJU0gqr8O2hdPx4JAMihsFfjwxFiI/C08EihBBCCCGEtGBUqSatGsuyOHS1GJ/tTsXWc/m1lv14NBMPjuzgoZARQgghhBBCWgNq/k1atSq9CQu/OoKt5/LBMMCITsG4Z1AsACA5Jc+zgSOEEEIIIYS0ePSlmrQILMuCYRjB9fRGM/4+m4spPcLBMAzUcgnmD45FcZUeC4fEIT5YjWq9Cf3jAjCmS2gThJwQQgghhBDSmlGlmjQbLMtix4UCrNlxBY+OScCgDkH4/WQ2Pt11BfcPa48pPSPsbmsys/j1eBbe23oRmSXVCPGW46b4QADAE+M61VpXKRPj5u7hjXouhBBCCCGEkLaBKtXE41iWxdZz+ViZfBHncsoBAJ/sSsWgDkG4nFeBM1nl2HAonbdSzbIs/j6Ti3eTL+JyfiUAINhbjiqd0aFjm80sjGYWMgn1hCCEEEIIIYQ4jyrVxKMOpxXjrb/O48i1EgCAl0yMOQOisXBIPABgZv9ofLj9MvZdKcLVwirEBam4bU9klOKl387gZGYZAMBXKcUDI9rj7oGxUMrEgsf+4XAGPth2CYuGxuPumn7WhBBCCCGEEOIMlz7PrV69GnFxcVAoFOjbty92795d7/rr169Hz5494eXlhfDwcMyfPx9FRUUuBZi0Hs//ehp3fLwfR66VQCEV4YER7bHv2VF4blIiwnwtU12181NiRMdgAMB3h9K5bY0mMx7ecAwnM8vgJRNj6agO2P3MSCwe3t6hCjUAVBtMyCypxg9HMtx/coQQQgghhJA2welK9ffff49HH30Uzz33HI4fP46hQ4di4sSJSE9P511/z549mDdvHhYuXIizZ8/ixx9/xOHDh3Hvvfc2OPCkZesV5Q+xiMHsAdHY+dRIPDOhM/y8ZHXWm9U/GoBlCiytwQQAkIhFeGFSIqb1bocdT43A4+M6wUchder4t/SMgETE4Gx2Oa4UVDb8hAghhBBCCCFtDsOyLOvMBgMGDECfPn2wZs0a7rcuXbpg6tSpWL58eZ3133nnHaxZswZXrlzhfvvwww+xYsUKZGQ49oWwvLwcvr6+KCsrg4+PjzPBJc2Eycziu8PpCFTJMaFbGPdbRrEGsTZNuvkYTWYMfmsb8sp1GNMlBJ/f3c9t4br7i0PYebEAj43piEfGJLhtv4QQQgghhJCWzdF6qFNfqvV6PY4ePYpx48bV+n3cuHHYt28f7zaDBg1CZmYmNm/eDJZlkZeXh59++gmTJk2yexydTofy8vJaf6TlOp1Zhmmr9+K5jWfw4m9nUKE1AADEIkawQg1Yvkpbv1anZJfDYDK7LWzWwc82ncp22z4JIYQQQgghbYdTA5UVFhbCZDIhNLT2/L6hoaHIzc3l3WbQoEFYv349Zs6cCa1WC6PRiFtuuQUffvih3eMsX74cr7zyijNBI82QRm/EW3+dx7oD18CygFousfR5ljrW59nWQyM7oH2wGn1j/CEVu2+k7nFdQyH7RYRL+ZW4kFuBTmHebts3IYQQQgghpPVzqXbCMEyt/7MsW+c3q5SUFCxduhQvvvgijh49ir///htXr17F4sWL7e5/2bJlKCsr4/4cbSZOmo+j14ox8f3d+Gq/pUJ9a68IbHtiOBYMiYPEhUqxRCzClJ4RiPBTujWcPgophtUMhPbHSfpaTQghhBBCCHGOU1+qg4KCIBaL63yVzs/Pr/P12mr58uUYPHgwnnrqKQBAjx49oFKpMHToULz++usIDw+vs41cLodcLncmaKQZuVJQiTs+3g8zC0T4KrBiek8MSQjydLDsmpEUiWBvGUZ2DvF0UAghhBBCCCEtjFOVaplMhr59+yI5ORm33XYb93tycjJuvfVW3m00Gg0kktqHEYstzX+dHCONtBDtg9WY3jcSJjPw0i2JTo/K3dTGdQ3DuK5hng4GIYQQQgghpAVyqlINAI8//jjmzp2LpKQkDBw4EJ9++inS09O55tzLli1DVlYW1q1bBwCYMmUKFi1ahDVr1mD8+PHIycnBo48+iv79+yMiIsK9Z0M8gmVZ/HgkE6O6hCBIbWlh8OZt3V1q5k0IIYQQQgghLYnTleqZM2eiqKgIr776KnJyctCtWzds3rwZMTExAICcnJxac1bfc889qKiowEcffYQnnngCfn5+GDVqFN566y33nQXxmGq9Cc/9ehq/HMvCwPhAfL2wPyRiUYurUJvMLI6ll+BwWjGWjOjg6eAQQgghhBBCWgin56n2BJqnunm6VlSF+78+ivO5FRAxwDMTOuO+YfF2B61rzsqqDej7WjKMZhbbnxyBOAem+iKEEEIIIYS0Xo0yTzUhVv+ey8PkD/fgfG4FgtQyfHPvANw/vH2LrFADgK9SipviAwEAySn808MRQgghhBBCyI2oUk2cwrIs/rv9MhZ+dQQVWiP6RPth08NDMah98x3d21FjEy0j2G85m+fhkBBCCCGEEEJaCqpUE6dU6Iz4/rBl3vB5A2Pw3X0DEear8HCo3GNMTaX6aHoJCit1Hg4NIYQQQgghpCWgSjVxio9CirXz++HN27rj1Vu7QSZpPVGonZ8SXSN8wLLAtnP5ng4OIYQQQgghpAVoPTUi4hKWZWE21z9WXWGlDskp15tExwerMXtAdGMHzSPGJVrmq96SQk3ACSGEEEIIIcKoUt2GFVfpMeuzA+j/5r/ILdPyrpNWWIXb1+zDA98cxa6LBU0cwqZn7Vd9Ia8cJoGXDYQQQgghhBBClepWqkpnrHe5zmjCHR/vw4HUYhRW6rB2X1qddS7lVWD6x/txrUiDcD8F2vkrGym0zUeXcG/8+uBg7HxyJMSiljmSOSGEkMaXW6ZFfjn/C2lCCCFtC1WqWxmd0YT/23gaNy3/FycySu2uJ5eIMX9wHHwUEgDAhkPp0OivV8Qv5VVg1mcHUFipQ5dwH/zywGC0D1Y3dvA9jmEY9Iryg4gq1IQQQuw4mVGKke/swM0f7IbWYPJ0cAghhHgYVapbkezSasz4eD++P5yBuwfGIjG87gTlRpOZ+/ddN8Vg77OjEB3ghbJqAzYezwJgW6HWIzHcB9/eOwDB3vImO4/mwmwW7m9OCCGkbcko1mDhV4dRbTDhzn7RUEjFng4SIYQQD6NKdSux93IhJn+4Byczy6CWS5AU619nZO7fTmRh8od7UFyl537zVkhxz6BYAMAXe64iu7Saq1B3jfDB+nsHwF8la8pTaRaWbz6H/m/+iyPXSjwdFELcbmtKHnq/ugVfH7jm6aAQ0qKUaQyYv/YwCiv16BLug8Uj2ns6SIQQQpoBqlS3cCzLYs2OK5j7v4MorrJUhDc9PAQjOoWAZVnsvVyIggodvtqXhke/P4HzuRVYtz+t1j7uSIqEWi5BTpkWGr0RYxPD2nSFGgDyyrU1o57nejoohLgdwwAlGgNe/v0stcYgpEZxlR7ZpdV2lxtNZjz47TFczq9EmI8CX97TD2q5pAlDSAghpLmi0qAFM5tZPLThGDaftlT8pveNxOtTu3FN0V76/SzW7b+GTqHeuJBXAQC4e2AMlo5KqLUfb4UUn87ri64RvvBVSvHG1G6o0hvhrZA27Qk1I+O6huHXE9lITsnD/93cBQxDfaxJ6zG4QxAYBjCZWRy8WoyB7QM9HaRaTGYW6cUaxAWpXNr+w38vIflcHj6fl4QQH4WbQ0daI4PJjCXrj+JyfiU+nZeEPtH+ddZ5e8sF7LlcCKVUjC/u6YcwXwWOXivGV/uu4ab4wFY71SQhhBBh9KW6BROJGHQIVkMqZvDGbd3w9vQetfp2jeocAgBchfrRMQl4+ZauvINwDWofBF+llNtvW65QA8CwjsGQiUVIK9Lgcn6lp4NDSIMZTGYcrenOoJCKMTMpCgDwy7FMbp2LeRXIqudLXVMwm1nct+4IRr6zA/+cdb6lyO8ns/Fu8kWcyizDNwfTGyGEpDV6489zOJBajGq9CTKxCH+eysHl/ApueUp2OT7ZmQoAePuOHkiMsIxZcjqzDL+fzMb3hymuEUJIW0aV6haoWn99pNFHxnTEpoeHYs6AmDpfU4d3DMbQBMsXqVdu6YpHx3SkL64OUsslGNTB8vVuS0qeh0NDSMOt+Ps8ZnyyH+sPWvpRT+sTCQD460wuqvUm7L9ShAmrdmHa6r3QG8317apRrd5xGf+ezwcAfONkn+/L+RV49udT3P9/PZ4FlqXm7aR+vx7P4qaVfG9mL6zdl4YHvz2Gbw5crygnRvhg1cxeeHhUB0zuEcH9PrlnBMQiBiczy3ClgF7AEkJIW0WV6hZEazDh+V9P445P9nFTeIhFDDqFefOuzzAM/nd3Pxx5bgzurhmMjDhubGIoAKpUk5Zvy9lcfLb7KkxmFkFqy0j+STH+iPRXolJnxJaUXDz/62mYWSCvXIedFws8Es59lwuxMvki9/+9lwuR5+A8wFU6IxZ/cwwavQn94wIwoWsYnhrfCdYu40aTGVtT8lClM9a/I9KqCL1UuVpYhec2ngYALB3VAeO6hmFSj3AAwB8ns2GwmTFjau92eGJcp1rbB6nlGJYQBMBSOSeEENI2UaW6hUgv0mD6x/vwzYF0nMkqx55LhQ5tJ5OIEKhue9NhucOYLpZK9cmMUuQ7+GBPSHOTUazBkz+eBAAsHBKH8V3DAFi6edzWux2Ami918/tz22w8nll3R43MZGbx3K9nYGaBGUmRSIrxh0omwbmccgCW81iw9rDdJuGf7ErF5fxKhHjL8d/ZffDx3L6YUvMVEQBe+O0s7l13BG9sPtdk50Q875U/UrB88zkcSC3CI98dxw9HMrhlOqMJD317DFV6EwbEBeCRMR0BAEM7BCFILUNRlR7PbzyDwkpdvce4rabVx0ZqGUEIIW0WDVTWAvxzNhdP/ngSFVoj/L2keG9mL4zoFOLpYLV6oT4KTOkZgQhfBegxibRERpMZS787jnKtEb2i/PDMhM61lt/Wux0OXS3GpB4RiArwwp9Lh2DSB3uw9Vw+yjQG+Ho13dgKYhGDL+/ph1VbL+LVW7shv1yHEB85FFIxjCYzZn12AJkl1dh7uRDnX5tQpyvLkhHtUaUzYkyXUAR7136RuDUlDxsOWZrySnjGlCCt099ncrlm3VcKqrD1XB7SizWYUTOewCc7U3E2uxwBKhnev7M39wJGIhZhSs8IfLk3Dd8fycC2C/nY+thwu+lhbJdQqGRiZJZU4+i1EiTFBjTJ+RFCCGk+6Et1M1atN+Hl38/i/q+PokJrRN8Yf/y5dChVqJvQh7N6Y9nNXRBKIwiTZshoMmPd/jS7faA/3nkFx9NL4S2X4KPZvevMXR8frMb39w/E9L6WL22J4T7oFOoNvdGMP0/nNHr4bxQbpMKqO3tDIRUjOtCLG3hxzY4ryCyxDKCmM5pxMa9u31WFVIwXJifWGsk8s0SDV/6wfKEGgEVD4/Dqrd2a4EyIp+WXa/FMTf/6+4bF481p3SBigOPppUit6fu8cEgcbu8TiXfv6Ikw39p5/LTekdy/b+kZUe8LJqVMjAndLE3GN1ITcEIIaZOoUt2MvfDbGe4t+6KhcfjuvpsQ4af0bKAIIc3GJ7tS8eJvZzH3fwfrNDu9UlCJVVsvAQBeubUrIv29BPfHMAym9bE0Cd9+Id/9AeZxpaASB1KL7C4/nVmGd2v6WU/tFYFD/zeaG0eCZVn8ejwLRhP/S4Wv9qXhy71pAIBOod51+sOWVRuouW4rxLIslv1yGmXVBnRr54Mnx3VCiLcCwzoGA7je91kll+DdGT0xsnPdF9Xd2vlgVv9oTO4RjqcndKqz/Ea39W6HjqFqdLYzxgkhhJDWjWFbwBNFeXk5fH19UVZWBh8fH08Hp8lkFGtwz5eH8OKUrhhe8zBAmp7OaBkZOUgtxx+nsjEuMQx9Y+rOYUpIU0rJLset/90Dg4nFyhk9udG8rViWxTcHruF4einendHT4ZH/Cyp0SMkpx+D2gZCIG/e9q9FkxrQ1+3A6qwxv3d6Da5Zrda2oCsPf3gEAuLl7GP47u0+t8/jpaCae/PEkBncIxDcLB9Q5x3M55Zj4/m4AwOalQ5EY4QOtwYSt5/IwIC4Qi9YdgZ+XFMundUe4L72wbC2s8UImFuGPh4dwL2F+P5mNpRuOAwBS37yZd3pJV1kfpWiGDUIIaV0crYdSn2oPMZjM+GLPVdwzOBZyiaWJ4/lcywBk9w6NBwBEBXgh+bHhbi34ifPe3XIRn+5KRYcQNS7nV+KTnakYlxgKhgE+mZvk6eCRFs5sZnEutxyJ4T4OP5DrjWY8/sMJGEwsxiWGokekL1787Qwi/JRYPLw9AMvD/dyBsZg70LnwBHvLMdy7aV7ifbH3Kk5llsFHIcGwhLrHjPBTIiFEDYPJjDemdq91ffLLtXj9zxQAwJAOwbzXrku4Dz6blwRfpZSbV3j+l4exP7UIPSJ9cSqzDN5yCRhQHtta5JRV45U/zgIAHh2bUGt2jHE1MzoAQO/XknH0+TFue3FElWlCCGnbqPl3I2NZFhdyK/DRtkv4+8z1Poov/X4Wy/86j7mfH0JGsQavb0rB5A/24PU/z2Hv5esje1OF2vNG1vRhv5xv6Yc3qUc4tqTk4Z+zeTQqOGmwF347g0kf7MFXNV09HPHJzis4n1uBAJUMb9zWHRdyK7Fu/zV8tS8NmSUaaPTumTbKZGYbrXl0epGGmz7r+UmJdfq0AoBULMI/jw5D8uPD4a+SAbA0B5/z+QEM+s82lGoMSAz3wb1D4+weZ2xiKPrHBdT6PwCcyiwDADw+riP+PpOD2Z8dgM5octv5Ec84m1UOs5lFryg/3FfzgtpKIRVj7k0xAIDpfSMbpSWGRm/EbyeyUFZtcPu+SctlMrOUvxDSytGXajfbdj4P2aVaZJdW42x2OU5mlqJUYylchyYEcYOZTOwWhj9OZONQWjGGrtjObT++aygSQtUeCTvh1y/WH35eUpRqDPBVSvHG1G7ILq3G8fRS/HM2F3MHxno6iKSFOpJWjPUHLaNSv7PlIu4eFCv4xSutsAofbr8MAHhpSiKCveUY3SUEPgoJcsq0mLZ6H2QSEf47uw96Rvm5HLb3ki/iu8PpWHNXX/SJdm93B5Zl8X8bT0NrMGNgfCDuSIq0u65IxEBk8yVZIRVh72VLH2wRA7x1ew9InagcTekZgTc2n4PJzKJ/XADm3hSDIW9tR265FtvO5WNi93DXT4w0Oo3eiD9OZmNi93D4KOoOHjYmMRRbnxgOvdHMW2n+v5u7YGK3MNwUH1hnmTvM/uwgTmSU4j/TuuPO/tGNcgzS8nxzwPLSc/m07hjQSHGPEOJZ9KXazZ768RSe//UMVu+4gp0XC1CqMUAmEWFU5xDc0jOCW29oQjB+emAQ2tUMPBYb6IW18/vhk7lJCPGmkaabE4lYhMk9LA/aj4/tCD8vGSbUzPX7t505cwkRYjCZ8dzGM9z/e0f7obxa+Avz63+mQG80Y2hCEJenKKRiTKn5d36FDqUaA0J8GjY//bWiKuSV67DxmPtHM954PAt7LhdCLhHhzWndnWo6mxDqjR6RvgAsozd3r/m3o4K95ZjdPxoRvgr8Z1p3SMQiTK2Zr/vnRjhX4l7/98tpPPPzabz5p/35xsN9lYgJVPEuU8rEGNQhqNFagVnngadRwIlVbpkWb/9zAamFVdh5sQAfbbuEnRcLPB0sQoibuVSpXr16NeLi4qBQKNC3b1/s3r273vV1Oh2ee+45xMTEQC6Xo3379vjiiy9cCnBzNyQhCGO6hOKum6Lx6q1d8ftDg3Hm5fH44p5+uOOGQXg6hXlj08ND8Pm8JPzz2DCaKqsZe35SIjY9PAR3D4oFAEzoZnlwOpBajJIqvQdDRlqq/+25igt5libcu58eia8XDnBoXujnJiVidOcQvHZrt1qVUduByp4a36nBA2/dVrO/P05l252yyxUVWgPe3HweALB0dALigvgrP/V5b2YvvHJLVzw5XnhUZj6vTe2GfctGIz7Y0iro9poRz3dcyEdRpc6lfZLGd+hqMX49kQ3AMuhYle76S6jPd6diz6VCe5s2mVt7RYBhgINXi5FVapkG7khaMYa/vR2/n8z2cOiIJ7z0+xlU6ozoHe0HM2tplfTl3qvc8mPpJXj251MoqKC8x1VaAzWtJ57ndKX6+++/x6OPPornnnsOx48fx9ChQzFx4kSkp6fb3WbGjBn4999/8b///Q8XLlzAhg0b0Llz5wYFvLl6/87e+PzuJLw+tTvmDYxFj0i/OnPD2vJXyTAmMZQbrIw0TwqpGN3aXf8iFhOoQpdwH5jMLJLP5XkwZKQlyi6txvs10139381dEBUgPN2VVVyQCv+7px9ib6iM9on2w9ybYjCrfxTuquk32hCD2wcixFuOUo0BO5ycXotlWWQUa3j7Y6tkEjw9vhP6xfpj0Q19Xh3VPliNuwfFui3ftH79NppZ/HaCKj7NkcnM4qXfz3L/1+hN+OuMpaXQxbwKLP/rPO7630GczS7zVBABWAbXuynO0rz3txOW6d6W/XIa14o0eC/5Ik3h1sZsP5+Pf87mQSJisHxad8yo6eqy62IBLuVVAABe/SMF3x3OwC/HMj0Z1EaRUazBR9su1XoB5gqWZfHFnqv48UhGnWV7LhVi6IrtWLX1Ipb9chrP/3qaW/bNgWuY8fF++vhBmoTTleqVK1di4cKFuPfee9GlSxesWrUKUVFRWLNmDe/6f//9N3bu3InNmzdjzJgxiI2NRf/+/TFo0KAGB54QT+KagJ+hJuDEOcHecjw7sTPGdw3lvpIClmaCKdnlvNsIfUFlGAavTe2G5dN6QOyGpq0SsQi39rI0KXe2Kes7Wy5g6Irt+O5w3QcgkYjBjH5R+OH+gfW+cGxqt9d8mf/leOt7sG0Nvj2UjnM55fBVSvHwqA6YmRSFxHDLiO5v/GnpIz++ayi6RjjXHaAx3FbTnWDjsSz8cCQTl2oGubxaWIVj6aUeDBlpSgaTGa/VzFAwf3AsOof5ID5YjaQYf5hZYNyqXXj8hxO4ubvlWeL7wxmt6qWL2czigfVH8c6Wi/jg30sN2tfWc/l4dVMKnvrpFDKKNdzveqMZL/1+BgUVOuy6WIANh9Lx45FMbqDAILUMpdV6fHPgWoOOT4gjnHqi0ev1OHr0KMaNG1fr93HjxmHfvn282/z+++9ISkrCihUr0K5dO3Ts2BFPPvkkqqur7R5Hp9OhvLy81h8hzc3N3cMQFaCs9QWbEEdIxSLcPSgWn8xN4ppw/3EyG4P+8y9e/O1MnfUzijUY8tZ2PPvzqSYdQfa23paK5r/n8lGmcWw04/QiDf67/QoA4JU/ztZ6SLRtotfcpiCa0jMCUjGDM1nluJBb4engkBtYXkBF4slxHfHEuE54a3oPJEb4YMeFfOy8WACpmMH/3dzF08EEAEzoHgaZRIRL+ZUo0egRF6RCQM3o9T+3wq+RhN+6/deQWlCFQJUMD49O4H63DszIssCxayWY3jcKXjIxUgurcORaiaeC63Y/H8vEmSzL8/uPRzNdLrv0RjPe3Hx9DAXbr9Vf7UvDlZpr/OX8/ugU6g2d0Yw/arpaVGiNuJhXiR+OZsBsbj0vLEjz5FSlurCwECaTCaGhobV+Dw0NRW4u/9e61NRU7NmzB2fOnMHGjRuxatUq/PTTT3jwwQftHmf58uXw9fXl/qKiouyuS4inJIR6Y9dTI/H42I6eDgppIViWtds/2Trt05FrJbhSUFlr2X/+Oo9qgwnpxRrIGmEaIHsSI3zQOcwbepMZv59yrFn021sucP82mFikFlYBsDR3HPnODvx5Ksfeph4VoJJhXNcwjEsMhbkVfS1qLUK8FXh3Rs9asy0YTWa8UTNg2T2DYu0OTtbUfBRSjO1ieU7ykomx5bFhWDmjJwBg08ls6v/ZRhxJKwYAPDm+U62R6if1iIBKZum68uKURASoZJjSw9Iq6LtDdVv3NGdl1QZ8ezAd1fq6cbpbO18MjA8EwwDFVXokp9TfVe7PUzm85YNExGDp6A6I9LeME/LDkUyYzCyKq/TcF/BnJnaGr1LKvbBY8fd56I1mTO4RAW+FBBnF1dh3paihp0tIvVx6OrvxCwPLsna/OpjNZjAMg/Xr16N///64+eabsXLlSqxdu9bu1+ply5ahrKyM+8vIaFmZDGk7+OK92czi0NVi+tpF6th0Kgfj3tuJrTwPF6E+Cm5O9B+PXP+adTitGH+ezoGIAV6YnNjkX3jvGRSLuwfGYIDNXM/2nMwoxR8ns8EwwJPjOmL/s6PQPlgNs5nFW3+fR06ZFsfSm++XmI9m9can85LQpaZZMfE8o4n/JRTLslj2y2lcyq+Er1KKh0Yl8K7nKY+P64jdT4/E/MFxkIpFGJYQjBGdgrF0dAK9tGkjVs/pg68W9MeMGwapVcslWLewPz6+qw9Gdba8fJnZ37LOn6ezUa5tOXOcL91wHP+38TRWJl+os6xLuA++XTQAS0a0BwBsOGR/7KVTmaV48NtjePDbY0i94aWySMTgtt6R+PeJ4fD3kiK3XItdFwvw0bbLqNAZkRjug+k13XesXS/KtUZ0fP4vZJZoMLWX5bcNh+0fnxB3cKpSHRQUBLFYXOerdH5+fp2v11bh4eFo164dfH2vN5Ht0qULWJZFZiZ/Myi5XA4fH59af4Q0V3qjGdvP56OwUoeCCh3e3nIBMz7Zj092XfF00Egzojea8dbf55FWpEFKDn+XFusMAT8fy4TRZAbLslhe0+xtZr8oj1T27uwfjVdu7YaOod4ALP0Evzlwjfdr23/+sozqPa13JB4alYAQH8v0gJtO5+BsdjnUcgkeHNmh6QLvpObWJJ0Az/x8GvetO4K0mhYPVjqjGT8etTxDPDyqA3yVwiPnN6X2wepaAxCKRAzWzu+Pe4fGw0sm8WDISFNhGAbDOwbzjnHRNyYAE7qFc//vHeWHhBA1tAYzfm8hgyUeulrMTQ121KbZum2XH4ZhMKt/NBgG2Hu5qE46tnrr7/Pcv/NtRkG3bbItl4i5LknvbLmArw+kAQCW3dyZmyIvUC1H/9jrL4Db+StxZ80Liy1nc2l2B9KonKpUy2Qy9O3bF8nJybV+T05Otjvw2ODBg5GdnY3Kyutvni5evAiRSITIyEjebQhpSeZ9cRDz1x7Gw98ex+C3tuFkRikA4J8zubxNokjb9P2RDGSWVCPYW2531OtRnUMQqJKhoEKHnRcLsP1CPo6ll0IhFeGxMc2jm8GPRzLx/K9ncPuafWBZttYD1AuTEzGmSwieGHc9rAaTGW/VVLbvGxbP9S1tztIKq5ptM/W25HxuOX45noktKXkora799U4hFeOrBf3x9IROuKdmqkNCmoNfj2ehVOPcaNMMw2Bmvyi081M2aRcfV7Esi//8ZXnhO7xjMH5ZMphb9uJvZ/Hy72e5KcIi/b3w4IgO+O/sPojwqzvV4+5LBdh72dI0e/fTI3FTvGX0/IxiDUa8swMbDqVz5czsAdF4flIXjO4cAoOJxdCEIAxNCK61v1endkVSjD/WLegPL5kEXSN80SPSFwYTS2MakEbl9OvSxx9/HHPnzkVSUhIGDhyITz/9FOnp6Vi8eDEAS9PtrKwsrFu3DgAwe/ZsvPbaa5g/fz5eeeUVFBYW4qmnnsKCBQugVDZsHlVCmoNhHYNxILUY+1MthcLgDkFIL9Ygs6QaW8/lYUrPCA+HkHia1mDCR9ssfb8eGtkBShn/VFAyiQi39W6Hz/dcxXeHM5BVYukic/egWO6rryewrKVLwx+nsrHtnGV6rYQQNRatO4LYQBWen5wIwNIH+/O7+3Hbnc8tx4RVuwFYRmFdOCSu6QPvpMv5FRizchfkEhGGdgyq1ReSNK13/rkAlrUMCtkryq/O8uEdgzG8Y3DdDZsxjd6ITadyIJeIcGuvdsIbkBblTFYZHv3+BHyVUux6aiR8vRzPP+YOjMH8wXFumb3BFcfTS9Arys+hFjvJKXncC98V03twv6cWVOLbQ+kwmVlM6RmBYG85AEu/cj7WrkEAsGBwXK3WHe//ewnpxRr8eSoHs/pHAwA6hKjRIUQNABjZOQRqed1qTOcwH/z0QO0PfbP6R+NU5mn8fjIb9w1rL3h+hLjC6ddhM2fOxKpVq/Dqq6+iV69e2LVrFzZv3oyYGMu8qDk5ObXmrFar1UhOTkZpaSmSkpIwZ84cTJkyBR988IH7zoIQD5rc/Xql2VsuwdyBMdxURL+dcG4qItI6fXPgGvLKdWjnd70pmj0z+lmWJ6fk4XJ+JbzlEiz28EOAyczioQ3H8c2BdGSXaRHuq8DN3cOx9Vw+fjqWabdFhm2FdMmIDlDxPAA1N+2D1UgIUUNnNNeas/paURVe+u0M8sq1Hgxd23E6swxbz+VDxABPjuN/IG+JNp3MwdM/ncKqrZda1fRJxGLFP5a+xSM7BTtVoQYszZs9VaE+eq0Yt63eh5mfHLA7joGV0WTmznPhkDiE1rzwzS6txrJfTsNkZjG6cwj6xvgLHnfT6RycybJ0DXpolKVrkNZgwtq9V7l5u+1VyHtH+yOhpluSkCk9I/Dmbd3x3X0DHVqfEFe49ISzZMkSLFmyhHfZ2rVr6/zWuXPnOk3GCWktogO90CPSF6cyyzB3YAx8FFJM7dUO/91+BTsuFKCkSg//FtDklTSOSp0Rq3dY+tc/MjoBcgn/V2qrjqHeWD2nD4YkBIFlgbPZZR6PPxKxCNN6t8Mnu1IBAA+O7IDRXUIR4atAdpkWg9/ahsk9wvHI6AQEquXcdhF+SvzfzZ1xtVCDu26K8VTwnWJthvn6n+fw3aF0zK0J99M/ncLBq8Uo1xrx3sxeng1kG/BBTcuOqb3aIT5Y7eHQuM+kHuF45Y+zuFpYhUNXizGgpqkrafkOpBZh18UCSEQMHmvArCAGkxn/nsvHiE7BUEjrLy/c5b1kS3qLC1JBItD8/Gx2OdKLNfDzkuL+4ZYXvh/8ewkrky9y6zzB8yKspEqP9QevIb1YgxXTLaPhn84sBXC9a1ClzohhK7ajuMrSfH5sYihvKxVnqeUSzB4Q3eD9EFKf5t9xg5AW4K3be+CR0Qncm9aEUG8khvvAaGax+Qz1zWzL/jyVjeIqy1y10/o41tzz5u7h8FFI4auUYlD7oEYOoWNm9ouCTCJCfJAKM5KiIBYxmN7XMi5GcZUePx3l76t237D2WD6tO2SSllPcTOsTCZlYhLPZ5TidWYYjacU4eNUyPc6fp3NQUuVcf0ninLPZZUhOyQPDAA+Oar4D27lCJZdwXYK+P0wzm7Qmq7ZaKpV39o9q0PRu0z/ej8XfHMU/Z/mnqnW3g6lF2HO5EBIRg4dGdUBZtaHOtI62ekb5YffTI/HRrD5ca6REm0E0J/UIR2JE3UE1K3VGvJt8ET8cycS1IsuAZc9NSsRfjwzFgpquQWq5BFH+17uG2o7P4S4sy8JEc1aTRtBynnIIaca6hPvgsbEda43qOrW35cFpP82N2KbNSIrC+nsH4LVbuwl+AWjO4oPV2PrYcPz8wCCugnxHUhSs3e/mDYyt9ZW6JQtQyTC+WxgAyzQsH22/zC3TG8002E0j+3JvGgBgSo8ItG9FX6mtZvazTp+Ug7LqljN9ErHvcFoxDqQWQypmsGREw14EjaqZWrGp5qx+r+ZlwIx+UbiQW4Gb3vwXz/58qt5tQn0UGJJw/YXviE7BiA9WQSkV4wk7X+mjAry4QcW+s3mh1CXcp1bf6CfHdwLDALP6R6FzmHtnvPjrdA4mfbAH6/anuXW/hABUqSak0UzrE4nv77sJH87q7emgEA9iGAaDOwTVegBpqaIDvWo1RY8K8ML8QXHoHe2H+4fxj2jeUs2qqfj8ciwTKrkEMokI99Wc4/H0Ug+GrPV77dZueGFyIpaObl1fqa16RfmhU6g3dEYzfqdxN1qFD7dZXrxN7xvFO8K1M+5IigTDAPtTi+rM2exu+64U4kBqMWRiER4c2QHdI32hN5lxOK0E53NrT/1oMrM4k1XGux+JWISNDwzGtieH19tdY3bNmCJrdlzBVTvTaw1NCMbh58bg9andXTwr+woqdUjJKcd3hzJoTAPidlSpJqSRBKnlGBAfSHPftlF6o7lNfIV6cUoiNi4Z7PF+3+52U3wgYgO9IBWLsGBwHA7932gsHZ2A3x4cjI9m04uyxqSUibFwSBw6hDg2CFFLY+23DwAbHHi433u5EOPe24mDqdTqqTkymMwI85FDLhHhgeENH1Qywk/Jfa3++sA1p7c/m10GvbH+wcasVm+3jPdhnc4r1EeBcYmhAIBvD6bXWnfTqWxM/nAPHv3uOO++fL2kCPet/4XC6C6hCFJbyoqR7+xAckoe73pBanmjDNp2a692UEhFuJBXgWP0cpS4GVWqCWkCOqOJ+vC0Mb+eyMKQ/2zDZzWDe5GWRSRi8Om8JBz6vzHoG+MPPy8Z1HIJejo45QxxntZgajNfj27rbXm4D/KWo8rO6PlWIoZBTpkWT/1Uf5Nc4hlSsQgrpvfEof8bg+hAL+ENHDCvZu71n45kokpndHi7Kp0Rcz4/iGErtmPL2Vys3nHZ7roVWgNyyqohFjG4f/j1lkZzBlgGZ/z5aCYqtJYXw2Yzi49qvsY3pEuGVCzC5B7XZ0zpHxfg8r5c4auU4ubu4QCA9S68sCCkPlSpJqSRrUy+iAFv/oudF/M9HRTSRExmFh/vuIIKnREs2kYloTXqGOptd07xsmoD98AJAFtT8jDlwz1IyS7nXZ8Ie+efC5iwajd2XSzwdFAanb9Khn3Pjsa6Bf1559q11T5EBa3BhPRiDU5n8je/Je713aF03PvVYacGJXR2Cq36DO0QhLggFSp0Rmw87ngXge8OZ6BUY4DeZMaS9cew4u8LOJlRyruut0KK5MeGY+OSQYj0v/4yYHCHQLQPVqFKb+IGoNx2Ph+XaqZ4vHtwbENODQ+P6oBxiaH4cFZv+Crdd80cNW9gLABg06kcFFTomvz4pPWiSjUhjaxSa0SpxoAfj9DgRm1FckoeUgur4KuUYvaAljGVFHHc57tTMXD5v1i33/Klw2Rmce+6IzidVYbHvj/h2cC1UGXVBmw4lI4LeRVtplVPgINdJkK8FdzXta9ogKU6rhRU4lyO+15mlWr0eOWPFGw9l48v9l6td93vDqXX6XvsDiIRw01DaK9SfCO90YzPd1taRj01vhM3ynx9cUYkYtAj0q/WbwzD4J7BltG4v9qXBrOZxac1La5mD4jmRvx2VaBajk/nJXHha2q9ovzQK8oPepMZGw6lC29AiIOoUk1II5vRzzLt0NZzedzci6R1sz6IzRkQLfgVirQ8ASoZNHoTvt5/DQaTGZfyK7hlF/Iq7A7AQ+z77lA6qvQmJISoMaJTsKeD06Ryy7Q4nFZc5/ez2WW44+N92JqSh7trmgP/fjKbyhEbZRoDpv53L+b+7xAqnWgmXZ9vD6Wj2mBpkr/+YDq0Bv7m+bllWrzw2xlMWLUbl/PdP6DYHUmR+HPpELx9R886y64UVNaZ9urXE1nIKdMixFuOaX3aYd5AS6V808kcFFbW/iK7/0qR3fMCgNv7tIOPQoLMkmqsP3gNh9IsI5vPr6lst3Tza762f3PgmsP9zwkRQpVqQhpZ5zAf9Ij0hcHE4qejNC9pa3cmqwyHrhZDImK4ZmakdZnUIxxBahlyy7XYcjYPncN8cPrlcVxTxq/2pXk2gM2YRm/EB/9eqvXiwWAyc9NoLRoW36b6rO+7XIjBb23Do9+dqPOF/vPdV3E4rQS/n8xG7yg/dG/nC73RTPNb2/jxaAYqtEZE+CmgqumqYb2OLMviQGqRUy0f9EYzl34lIgb+XlJklVbzrrt2XxoMJhb9YwPQIcT9U7/5KKToGuFb5/fCSh1u+XAPpny4B/kVWgCWc7WO37FwSBzkEjF6R/ujZ81o3htsBh3LL9fi7i8OYchb27jtb+Qlk+CDWb2x55lR2HO5EAAwtVc7hPkq3H2aHjGxWzhu7RWBFdN7QNIIA6KRtokq1YQ0gdn9owFY3nqb20jTxrbqf3ssX6kn9QhvNQ8gpDa5RMw161+7z3K/vRVSblTwH49koFzb+kd+d8U7/1zEyuSLmPu/g9ygZH+fyUVuuRZBajlu7eWZJqGe0ifGH2q5BFml1dh+/vq4Gzll1fjjZDYAYNFQy4sG69fqbw5cg9FEX9dMZpbrgnFnv2juZcwLv53B3P8dRJcX/8adnx6odV2FbDqVjbxyHUK85dj6+HAkPzacd2CuSp0R6w9ajr2oCaYTLKrUcV+bA7xkYAGutQwA7L5UiEv5lVDJxJg1IJrb7p6aL7LrDlyDzmj5Mv3NgWvQm8yIDVQhxNt+GTWiUwi8FRKcqunHf18rmjZRJhHh/Tt7Y0SnEIhuqFSfySrD/V8fqdMSgBAhVKkmpAnc0isC3goJrhVpsLvmrS9pfcqqDdh8OgeA5WsBab3uGhANiYjB4bQSbu7WIR2CkBCiRpXehJ+P0hgKfKb2tlSaM0uqcSy9BACwrqbP55wB0ZBL+AeGa60UUjFmJFm6CH2573r/3fUH0mE0sxgQF4DukZavlZN7hCNAJYNYxCC7lP8LY1uy40I+0os18FFIMLV3BFiWxeX8SvxyLBO7LxWic5gPgNrXVUhCiDfGdw3F/MFxiA1S1alwWf1w2PKFPD5IhdGdQ9xyPvas25+GQf/Zxo2+LRIxeLemSfjXB66hWm/C/prp1u5IiqrV53lyjwiE+ShQUKHDb8ezoTWY8E3NV2tHyiiVXIIdT43AVwv6IyG0dU5xd6N7vzqCf87mYck3xzwdFNLCUKWakCbgJZNgel/Lg9PXNNBMq+WrlGLr48Px4uTEOoO/kNYlxEeBUTUP05M/3IMqnREMw+DxsR3xxm3duHmISW09Iv24SuQXe9JwIbcCh9NKIBExmG3zha0tuXtQLMQiBnsvFyEluxw6o4kbQOmemq/TgKUC/sP9N2H7kyPcNnVTS7a2ppn2zH5RyCqpxsT3d2PsezuhNZjRJdwHH83uzV3XGwcTM5rMvCN7d4/0xSdzk7DYZoqpar0J2y9c/9ptMrNcRX3h0Di7FW93iQtSQWc044cjGSjTWFrAjOsahugAL5RqDPjpaAaemdAZfy4dUudrslQswoIhsQhQyWA0s/j9hKVPfjs/JcbWzEctRC4RY3jH1jnOQVGlDiv+Po9nbKarWz6tOwDL+BjuHACPtH5UqSakidx1UwwWDY3D85MSPR0U0kAGkxlP/XgS72+9VGdZVIAXFtBX6jZh6egEyCQijOkSClXNgHQTu4djzoAYeMlogDp7rOnjrzM58JKJsXZ+Pzw9oRNCfdpmd4lIfy9M7BYGAPh8Tyr+Op2Loio9wnwUdSo+HUK8IaY+oLhSUIndlwrBMMDcm2IR5qtAZkk1rNOczx8ci0h/L0zoarmuX+5Jq7X9s7+cRr83ttodWdvalLxca8Dgt7Zh/peHcblmQMLt5/ORUVwNX6UU03pHNsr52RrSIQidw7yh0ZvQ89UteOefC6jQGrCgpmn3//ZchcnMomuELyL8lHW2n3tTLPY9Owqz+kdxg2jeMygWEjFVAQor9Vi94wp+OJrBjfMwsnMIJtWMtm/tp06IIyhFEdJE2ger8dykRMQGqTwdlFaPZVk89eNJLFp3pFFG9vzrTC5+PJoJ22db6uPY9nRr54uDy0Zj9Zw+vMvNZpbrN9zWncspx4K1h7HzYgE6h/lgcIdAmFlL89URnUJw37D2ng6iRy0aavnC+MfJbLz9zwUAlubw9io+OqOpTcznbY+1L/HoziGIDvSCt0LKtQYLUMlwS810TQuGxAIANp7I4gblyimrxk9HM2FmWbTzt1RCs0ur8fqmFKTdMHK/j0KKfrH+AIA1OywVrEqdEUFqOWb2i7I7j707MQzDxQ8AWL3jMkxmFnckRUEiYpBWpMHWc3l2t1fKxFBIxdh/pQjncyvgJRNjBrWkAQB0CvPGqM4hYFngs93XK9DWL/6/n8xGtp2B6gi5EVWqCSGtzqnMMvx4NBPJKXlcH2d3so6karCpSM/5/CAWrTtC0ym1Mf4qGWSSukXpxuOZGPPeTq6vY1u3bv81bDufjx+OWEautvbn3HAoHVVumgqpJesZ5Yf+sQGQiEToG+OP/nEBuLM/f3P4Kp0Rw1fswLwvDnFfTwHLy8SHNxzHtNV7W/01fWR0Al6YnIjFw6+/jFkysj1GdQ7BK7d0hUJqqez2ifZH72g/6I3XR5i35t/9YgMQpJYDAL49mI7P91zFsl9O1zmW9Ri/nchCVmk1pvZuh33PjsLDozo05inWYjun8+guoQhUy6GSSzC3ZtqsAw7kM5U6I7q188G0Pu24mQoIcH9NBfrbg+m489P9OJNVhp5RfrgpPgBGM4sv9jjeJ5+0bVSpJqSJncgoxaJ1R/DdoXThlYlLfrSZuuyz3alu/Vp4paAS+1OLIGKAmTUPvedyynHwajG2n8/npnUhbdvx9FKkFlRhzY4rng6Kx1VoDfjtRBYAYO5NlkrAiI4hSAz3wS09I2q9nGrL/nN7dxxYNhofzOqNH+4fiGBvOe96KrkEPWoGL/ts1/UH/hMZpfjjZDaOpZfimwPXmiTMnuKvkmHhkDgkxQZwv4V4K/DFPf1qVUAZhsEDNZXiw1eLoTeasaFmSrK7auJihdaA7w5bymNrJdVW72h/DIwPhNHM4vOar5kyiQjeiqarmMokInw+LwkjOgXj5Vu6cr8/Nb4THhmdgDv7CY9HkFeuRbXeVOtFBAH6xwWgWzvLoHYHUou5Ocfvr7lOv57I4m3xxrIszeZCaqFKNSFN7Oi1EiSn5OHTXamUITcCk5nF32euN4U7m13u1q+F1q8cIzuFwGRi8ezPp3DnpwcAAOO6hiKkjfYLJbUtGhoPsYjB7kuF3OjgbdUfJ3Og0ZvQPliFAXGWSpBIxODD2b3RvZ1vrdGK27L4YDV8vRy7FvfXDKT1y/FMrnnqepu5iD/bnQqtweT+QLZAY7qEYt2C/vjh/oFITslDQYUOQWo5xncNw8otF9D95S0orNQj1Edud/CuJSMtFawv96ahoELXlMHnjEkMxdr5/dHOpt+0l0yCx8Z2RKcw4ZG55w6Mxb9PjECkPw1yZ4thGDw4wtLqwM9Liptr+lOP6BiMZyd2xl+PDONaI206lY1nfz6FNTuuYMpHe7CpEVrCkZaLKtWENLGZ/aLgrZAgtbCq3n5QxDViEYPkx4bhzdu6c6MJ/3o8q856X+y5ys0p7SitwYSfjlmmSppzUzQySzT47nAGyqotI7LeNaDuVw7SNkUFeGFyD8vDWVv/Wv19TZPvmf2iuAGgAMs4E3f2j2700ZNbo74xARgYHwiDicWaHVdQpjFw81p7KyTQG81IaYUjF1/Kq8C01XvxyzHHp6wTiRgM6xgMkYjhvuDf2S8KMokIF/KuN5+f1T8aUjt92Id0CIJXTSukie/vbsAZkOZoQrcwfDCrNzYsuomrQDMMg8XD29dqMfLFnqv47nAGVm29iDNZ5fho2yX6OEI4VKkmpImp5RLMqal82Q6MQdzHXyXD7AHRWDysPVbP6YPl03rUWn4+txyvbkrBa5tScCSt2OH9/nUmB6UaA9r5KTG8YwgGtg/kmmHGB6swsH2gW8+DtGwPjLB83dp8JqfOlD71+fZgOn5qJfNcX8itwMmMUkhEDKb1afyRktuSpaMTAADfH87AV/vToDNappLasOgm7Hl2FPpE+3s4hO634VAGjqWX4u8zuU5vm1mi4dLhrJoXrg+MuN4vepadPuyApYL1xT39EOmvxOtTuzl9bNK8MQyDW3pGoEu4j911dl4swLF0S162+ZGh8JZLcDGvEltSnI+LpHWiSjUhHjB/cCykYgaH00pwLL3E08FpNW7sOx0d6IWbu4fXmYIm1Pt6E+0Ptl12eP+bTlqaet3ZLwpiEQOGYfD8pETEBHrhmQmda32FI6RzmA9u7h4GlgXv9Gt8zmaX4f82nsaTP55sFc3Gv6/pvzq6Swg3KBRxj4HtA9E/LgB6kxnFVXr8cP9APHdzF3RrpU3qtQYTfjluedlUXwXYnvJqy+Btk7qHc02oe0X5YfWcPvhqQX/BKd1uig/EnmdGYULN9GekbSiu0mPu/w7i7i8OAQDGdwtD+2A15tdMafbBv5dplgcCgCrVhHhEqI8Ct/ZqB4CahrrTJ7tScfuafdh2vm6zeq3BhDKNpZm2v0qGXU+NhFjEYNfFApywM1fpjdbc1Rdr5vTBTJvpSPrHBWDnUyMxvis9aJG6HhndEQxjmYYttaCy1rLMEg2mr9lXqynrd4euD7L3zpYLTRbOxtI1wgddI3xqpRniPo/UfK3OK9eiX6w/hiQEcctYlsX28/mtpm/1lpQ8lGoMiPBVYFjHYKe37xLujc/mJeGt6bVbLt3cPRzDXdgfaRv8lFKkFlyf1cPazWvBkDioZGKk5JTjLxdaTpDWhyrVhHjI4uHtwTBAckpeq/gi1Rz8ejwLR6+VIL+89kAyf5/JwdAV2/Fu8vVKSnSgF6bWvNj4aJtjXxFlEhEmdg+nwciIwzqFeeOJsR3x7aIBiA9W11qWW6bFkWslePyHkyiqtMTZwR0CEe5riV87LhQ41T2hObq9byT+XDoUIzuFeDoordKg9oH459FhWHNX3zotZR769jjmrz1cawCzlszaJWJ6UlSd1keOYBgGSbEBUMsl7g4aacVEIgb/d3MXAECnUG/cFG8ZbNHPS4Z7a+YPf2fLBRhpFoM2jyrVhHhIhxA17h0Sh9du7YqEULXwBqReF/MqcD63AlIxg4ndwmst81FKUVChw3eHMvDSb2fwy7FMVOtNeHBke4gYYOu5fJzNvv5io0Jr+aLNsiwu51fCbKapM4jrHhqVgEHtg+r83ifan5vK5b/bLS1WJnQLx/5lozGrv+XL7tv/XGgVTQupa0TjYBjG7sjPQ2u+Wv93+2VUtvB5q3PLtNhzqQAAcHufdh4ODWlrJvUIx1cL+uOL+f1q5WX3Do2Dv5flS3ZyCg0829ZRpZoQD3puUiLmDoyFXEJzGzfUppqRb4d3DK4zLc3A+ED0i/WH3mTGV/uv4fEfTiKtqArxwWpM7mGZ0/THI5avICzLYvKHezBh1S4MePNfTHx/F9YfvIbh72zHF06OFk7IjYqr9FwlWSRi8MyEzgCAbw5cQ2aJhlvv4VEJkIlFOHKthJs3tSXJr9Diu0PpKK95QUWa3vS+kYgPUqG4Ss/Nr+yMq4VVzebr2y/HM2Fmgf6xAYgJVHk6OKQNGt4xuNZ0ZgDgrZDipSld8cncvtTXnrhWqV69ejXi4uKgUCjQt29f7N7t2PQCe/fuhUQiQa9evVw5LCGtGn0JdR3Lsvi9plI9pWdEneUMw+CR0R25/3dr58ON8rl0dAJW3N4Dz0+yNO86nFaCa0UaZBRr0M5fCYOJxUu/n0VGcTUyS6qb4GxIa/Xf7Zcx+D/bsONiAb45cA1XC6swpEMQBrUPhN5kxpC3tqOwphl4hJ8Sb03vjq2PD0dCqPActM3Nb8ez8ewvp7HoqyOeDkqbJRGL8Pg4S773+e6rKK7SO7ztP2dzMfKdHXjqp1ONFTyndAn3wbCOwbgjiUaQJ83L1N7tML5rGLXGIc5Xqr///ns8+uijeO6553D8+HEMHToUEydORHp6/X12ysrKMG/ePIwePdrlwBLSWv12Igtj3tuJU5mlng5Ki3QmqxxpRRoopCKM6RLKu87gDoFIirFMMTMz6fqgSR1C1JjRLwqSmvlJfzpqGShqUo9wvDg5EQBgfd8xox890BHXlWr0qDaY8PzGM3j+1zMY/e4OFFXpua/VALB0w3Hu37f1jkRcUMv8KvdzzeBrfC+5SNO5uVs4urXzQaXOiFVbLzq83dq9aQCAjcezcLgZ9Osf2SkE6xb0xx1JNOAdab7KNAZuQFTS9jhdqV65ciUWLlyIe++9F126dMGqVasQFRWFNWvW1Lvd/fffj9mzZ2PgwIEuB5aQ1mrnxQKkFlThzc3nWkX/yab2xynLV+rRXUKhsjMIDcMwWHNXX7x/Zy9unvAblWr0+KGmGfj0vlHoHe2PsYmWSnr3dr7oHGZ/DktChDw0MgG+SimySi0tHoZ1DEaQWo6eUX64vU8kRIyl2Tefs9llqGoh/WJTsstxPrcCMrEIk3uEC29AGo3tIEvrD6bjQm5FnXX2XS7EEz+cREGFpZVEmcZQ6wXva5tSqCUVIQL+PpODEe9sx4p/zns6KMRDnKpU6/V6HD16FOPGjav1+7hx47Bv3z6723355Ze4cuUKXnrpJYeOo9PpUF5eXuuPkNbsiXGdIJOIcCC1GP+ey/d0cFqcfrEBGNU5hBvN255gbzlu7dUOIp6RY09mlKLXq8kAgEh/JfrFWr5qv3xLV0zpGYGXb0l0f8BJm+LrJcXDozpw/7/TZpqpFdN74PBzYzCwfWCd7VYmX8TkD/fgk50tY/o96xRho7uEwM9L5uHQkEHtgzC+ayjaB6t4p9d6/rcz+PlYJtdKwtdLikPPjcEHs3pDLZfgVGYZfj2R1dTBBmCZCvGTnVeQXUpdb0jz5u8lQ4nGgA2H0pGSTfWWtsipSnVhYSFMJhNCQ2s3rwwNDUVuLv8cbZcuXcKzzz6L9evXQyJxbBqD5cuXw9fXl/uLiqLmPqR1a+enxMIhcQCA5X+dazaDw7QUYxND8cU9/bivyq6ItRn8ZkrPCK5/VDs/JT6c1Rt9YwIaHE5C5g6MQd8Yf/SO9sOoztfjq1jEIFAt592mS5g3WNYyD3tWM69cGE1m/HrC0nJkWh/qLtFcvHV7D2xeOhQ9o/zqLPvgzt4AgP2pRdh7uRAAoJJLcEvPCCwZ2R6AZRR6vbHpy6Xt5/Ox/K/zuOPj/dSKizRrA+IDMalHOMws8OqmsxRf2yCXBiq7sTM+y7K8HfRNJhNmz56NV155BR07dqyz3J5ly5ahrKyM+8vIyHAlmIS0KA+MaI8AlQxXCqrw3WGK803N10uK/92dhNt6t8PiYe09HRzSSsklYvz8wCBsXDIYMoljRfCEbmHoHxcAndGMV34/28ghbJjdlwtRWKlDgEqGEZ2CPR0cUsPPS8aNG3Gjbu18cfdAS5eYZ34+BYPNS90Fg+Nwc/cwfDS7j8Px1Z02Hrd8Ibd90UlIc7VsYmfIa1odbjqV4+ngkCbmVA4ZFBQEsVhc56t0fn5+na/XAFBRUYEjR47goYcegkQigUQiwauvvoqTJ09CIpFg27ZtvMeRy+Xw8fGp9UdIa+ejkOKR0Zb+lCuTL6JU4/hIrW2V0WTG57tTa01F1BCju4TivZm96kzJRYgnMQyD127tBomIwZaUvGY9H+q5nHKIGGBKj3BI7VTiiOfojWb8d/tlfLTtEgwmM9cq6vGxnRCgkiGzpBoJz/2FfTVfrBVSMVbP6Yu+NYM8NqVSjR47Lljmpr6tN81NTZq/SH8vPDDC8lL+1U0pKKu2P2hZS587ntTlVIknk8nQt29fJCcn1/o9OTkZgwYNqrO+j48PTp8+jRMnTnB/ixcvRqdOnXDixAkMGDCgYaEnpJWZPSAaCSFqFFfp8dcZ/i4VbdnG45no8fI/2HfF8sB3ILUYr/95Drd8tBcmGkiHtGKdwrxx79B4AMDLv5+FRt88H8iWjOiAA8tGY/EIau3RHO25XIC3/7mA9/+9hPeSL2Lgf7bh892p8PWS4pkJnbj17A34mFGsabJmrZtP50JvMqNzmDc6hbW8aeVI27R4eHvEB6lQUKHDW3/XHbSsSmfEC7+ewbiVO1GhpZHCWxOnXyM//vjj+Pzzz/HFF1/g3LlzeOyxx5Ceno7FixcDsDTdnjdvnmXnIhG6detW6y8kJAQKhQLdunWDStUypwohpLFIxSL85/YeWDu/H2b1j/Z0cJqdN/48B4OJhUIqBgD8UTM39YRuYRDzDD5GSGuydHQHtPNTIqu0Gu9vveTp4NgV4qNAuK/S08EgPEZ2CsHoziEwmFis3nEFBRU6VOksg5fd0TcK8wbGYNHQOPSI9K2z7cc7r2D0uzvx49HMJgnrrzVNv+krNWlJFFIx3ritO0QMIBExdV5CiUUMdl0qQHaZFiv+vuChUJLG4NjIYTZmzpyJoqIivPrqq8jJyUG3bt2wefNmxMRY+uPk5OQIzllNCLHPE83sWoK0wioUVuohFjGIC1RBbzTjrzOWPktTetBcuKT185JJ8OqtXfHY9yfQJbz5dYsqqzbAV0ldJ5ozhmHw6tRu2L9yJzR6S2X69r6WSqtIxODVW7vZ3VbEAHqTGW9uPocRnYIR4q1otHBmlmhwKK0YDAPc0ovyd9KyDGwfiO1PjkBMYO2Ph4//cAKdQr2xbGJnLP7mGL45eA1Te0fQQKithEsdnpYsWYK0tDTodDocPXoUw4YN45atXbsWO3bssLvtyy+/jBMnTrhyWELanLxyLbZfoCm2AHDN4QfGB8JfJcM/Z3NRrjUi1EeO/nFUIJG2YXSXUOx6eiSmNrOvd8VVevR7YyvmfH4A1fq60zaR5qOdnxJPjrM09R7eMRiR/l4ObTd/cBy6RvigVGPA//1yulGbgZ/NLodcIsLA+EBq9UBaJNsKNcuyuFJQiV+OZWHFPxfQJ8Yfd/SNBMsCz/x8mneqO9LyOP2lmhDSNC7kVuD2NftgMrP465GhiA1q290l/q75Kj2xexgOpBbh4Zo5VSd1j6Cm36RNsZ37WWc0QS4RezA0Fn+eyobeaEZZtQFKmefDQ+o3f3AsOod5O9XiQSoW4d0ZPTHlwz3Yei4fPx/LwvS+jTNt2viuYTj6wlgUVugaZf+ENJX0Ig2e+ukkN3r+8I6WVh7PTeqC7RcKcDm/Eu/8cwHPT070cEhJQ9HQnIQ0UwkhanRv54tqgwlP/XQS5jY8EFdmiQYnM8sgYoBxiWEIUl+vVEzpGe7BkBHiOf+ey8PwFTtw9Fox7/JdFwsw4M2tXN/UxvRbzdzUU3s1ry/ohB/DMBjUIQj+KpnwyjY6h/ng0TGWKVJf+eMscsoab950tVzS5l8mk5bvk11XcPBqMXZfsgywan0R5eclw4rp3QEAn++5yo24T1ouqlQT0kyJRAxWTO8BlUyMw2kl+GLvVU8HyWP+rmn63S82AMHecnQI8cbn85Lwn2nd0Tua+qCTtunP0znILdfike9O8E7d8vqfKcgr1+GZn081alPdjGINjlwrAcNY5hMmrdv9w+LRM8oPFVojHv/+pNtnXiiuoukkSevx7MTOaOdn6cLgq5RidJcQbtmozqGYPSAavkopN8YBabmoUk1IMxYV4IXnJlmaBL39zwVcyqvwcIg843J+JQDg5u7Xv0qPSQzFnTRCOmnDXr6lK6IClMgsqcayX2pXnDOKNbiYZ0k3yY8NB8M0vIuE2czih8MZdfpM/14zCv/A+ECE+jTe4FWkeZCIRXhvRk/4KqUYkxgKd/a+MZlZTFi1Cze/vxvpRRr37ZgQD/FWSLHqzl4IUsvxwIj2dbrrPD+pC/55dBjGJIZ6KITEXahPNSHN3Kz+Ufj7bC52XSzAg98ew28PDnG5z2JJlR7eCgkk4pb1Pu0/t/fAQ6M6wFtOIwsTYuWjkOLDWX0wfc0+bD6di/UH03HXTZaZOKxNvge1D0R0oGMDUdmz/K9zUMkkOHqtBDsvFuBkZineuM3SbJFlWe5Y1PS77YgPVmPPMyPhrXBPnmwwmfHZ7lTEBqqQX6GD3mRGmC+9oCGtQ7/YABx5fgzvMi+ZBF6y69UxrcHETRtKWpaW9WRNSBvEMAzevaMngr3luJhXiU92XXF5X6/8cRYD3vwXm0/nuDGETSPS3wu+XlSpJsRWryg/PDOhMwDg1U0pOJNVBpZl8UtNRXdaH0v/PYPJjBV/n+e6UjiqQmvA2r1pWJl8ETfFBwIA1h9MR3JKHgDgXE4FLuVXQiYRYUL3MHedFmkBbCvUZRqDS822fzuRhd2XCvDY9yew4u8LePS7EwCASd3DuYGdCGkrtp/Px9AV23Eio9TuOp/vTsWczw8gt0zbdAEjDqEci5AWINhbjvdn9sLcm2KweHh7l/ZRrTdhS0oeiqr0CPNVoFSjx/4rRW4Oqftp9EZPB4GQZm3hkDiM7hwCvdGM+78+im3n83G1sApKqRgTulkqul/vv4bVO67gyR9Pct0pHPH3mVzojGa0D1Zh8fB4LBoaBwB48seTSC/SICpAiRW398BDIzvAx01fLUnLcjm/Arf+dw8Wf3MUBpPZ4e2MJjNe23QOc/93CB1C1JCIGOhrtr+tmU0ZR0hT+PFoBgoqdHhw/TGU8LykqtAa8Pqf57D3cpFbu10Q96BKNSEtxKAOQXhtajeXmwVtPZcHjd6EqAAlgtVyTPpgD+796rBTD9hNLb9ci16vJmPB2sPQGx1/WCOkLRGJGKyc2QtxQSrcFB/IjTI7oVsY1HJLs8K5A2MwIC4AlToj7v/6CCq0dQc24/PrietNuxmGwZPjO6FXlB/Kqg1Y/M1RSMUizOgXhaWjExrn5EiLUFipx6GrxXhtU4rD2+y9UoTCSh0CVDI8OLIDnp5gmTs7JtALfWNoAErS9vzn9h6IDfRCVmk1Hlhf9yXVXzUtjeKDVQj2lnsiiKQeVKkmpAUymVn8d/vlepvb/XU6ByPe3o7t5/MBXJ/y5tae7RDhp0RUgBJVehPu+/oIyh18wG5qf5/Nhd5oRolGT00BCamHr1KKjUsG4Z07euCFyYlYt6A/Fg2N55ZLxSL8d04fhPkocKWgCo//IDxqc165FvtqWrPcWtNfWi4RY81dfRCokiElpxzPbTzTqCOLk+avQ4g3Vs7oCQBYt/8avj+czrve5fxKVOmutzyy9sWf3CMcUrEIi4bGY/WcPvjf3UluGViPkJbGRyHFJ3OToJKJcSC1GC/9frZW/rrxmCXN3N4nEgzDgGVZnMsp91RwyQ3oKZWQFujF387g7X8uYAnPm0yrVzelIK1IA4PJjFKNHjsvWirXt/aKgFjE4MNZfRDhq0BqQRWWbjju9mlR3MHa9/vmbjQXNSFC/LxkYBgGYhGDYR2DkRjhU2t5kFqOj+f2hUwsQnJKHpZvPlfv/n4/kQ2WBZJi/GsNdhbuq8SHs3oDAFILK5FbTn372rpxXcPwWM381c9tPIO9PHPuPvr9cfR7Yyt2XyrAj0cysLGmUm19YcMwDG7uHo4OId5NF3BCmplOYd74YFZvMAzw7cF0fLUvDQCQVVqNA1etLzkjoDWY8NCG47jloz3Yd4XmuG4OqFJNSAt096BY7k3mC7/W/VJ0IbcCOTWDWPSPC8BfZ3JhMLHoEu6DhFDLA0uwtxyfzkuCQirCjgsFWPHP+SY/j/oUVOhw6GoxAGAiDYBEiFv0ivLDOzVfFT/fcxXr9qfZXZer9PD0bx3UIQjLp3VHtd5U6+sjabseHtUBk3uEw2hmsfjro7W+oF3Kq8CZrHLojWZU6Ux46qdTAAB/Lyn6RPt5KMSENE+ju4TiWZsBKA+mFuHX41lgWWBAXAAi/b0gq5nFxWBicf/XR9vslKvNCVWqCWmBOoZ64/07e0PEAN8dzsCqrZdqLbf2gxyXGAo/LxlOZZYh2FuOW3tF1FqvWztfvD3d8oD9yc5UfHPgWtOcgAP+PpsLMwv0jPRFpH/DpgQihFx3S88IPDW+E5RSMcJ9lbzr6IwmdAn3gZ+XFJO787cUmdU/Gn8/Ooy+LBIAlr79787oiQFxAajQGfHKH2e5ZdbR6Ed0CsH4rqGYWlMWLRoWT029CeFx37B4zOofhdt6R6JPjD/3kvP2mhkdRCLLzDB9Y/xRoTXini8PI7+CWg15ElWqCWmhxiSG4rWp3QAA7/97CRsOWfqxmc0sfqvJfK0jqPaO8kO13oRbekbU2c+UnhF4pGaQoXX705rNgGB/1TT9nmjngZ4Q4rolI9pjy2PDMDYxlHe5XCLGuzN64vBzY+CvkjVx6EhLJZeI8encJNzeJxL/nd0HgKVM+pWb4s0y4N3KGb3wx0NDcP8w12azIKS1YxgGr0/tjnfu6AGNzgSVXAK5RFSr5Z5CKsZn85K4wc3u/uIwyjTNc4yctoBhW8AII+Xl5fD19UVZWRl8fHyENyCkDXl3ywV8uO0yRAzwwazeCFLLceenB+CtkODwc2OgkIqRX65Fld6EuCAV7z5YlsXnu69iet/IZvEAXVipQ/83tsLMArueGlmrPychxP2uFlahvNqAnlF+ng4KaWX2XS7E7M8PwkchwaGaMokQ4rz8Ci1CvBV1fk8rrML0j/ejsFKH3tF++HrhAG7mB9JwjtZD6Us1IS3c42M74s5+UZCKRfBWSLkvAjd3C+ceXkJ8FHYr1IDljeiiYfG1KtR8cyQ2FZlEhBcnJ2JW/yiqUBPSyK4UVOKOj/dj7v8O4nRmGa4WVuFMVhmN6k3c4sFvjwEAJvWIoAo1IQ3AV6EGgNggFb65tz98lVKczSrHmayyJg4ZAQB6jUFIC8cwDN64rTvuHhSLLuE+SMkuRzs/JabyDC7kqG8OXMOKv8/j64UDPPLlykchxT2D45r8uIS0ReG+CsQEeuHotRLM/vwAukX4Yn9qER4Y0R7P1AyWQ4gryqoNENX0mZ6RFOnh0BDSenUO88FXC/qjUmvETfGBng5Om9Sqmn+bTCYYDNSXgNRPKpVCLG7db8vNZhYMA5cGgDGZWcz+7AAOXi2Gt0KCdQv6o3e0fyOEkhDSXFTqjJj/5SEcTivhfvv23gEY1CHIg6EirUFeuRaZJRr0jQnwdFAIaVPSCqsQqJbBWyH1dFBaNEfroa2iUs2yLHJzc1FaWtr0gSMtkp+fH8LCwmjUUTuqdEbcU/OA7SWzDDwzJKFpHq53XixAVkk1xncNRaBa3iTHJIQAGr0RC9cewf7UIoT5KLD32VEQiyiPJISQliatsAozPtmPUB8FvpzfD0Fufp4qqtThxd/PYlL3cNzcygeUdbRS3Sqaf1sr1CEhIfDy8qKKErGLZVloNBrk5+cDAMLDW3dG4CqVXIK18/tj8TdHsftSIRasPYwPZvXChG6Nf72+2HMVOy8WoLhKh4dGJTT68QghFl4yCb64px8+352KAfGBVKEmhJAWqkpvhNHM4nRWGW5fsw9fze+P2HrG1rF6558LuJxfiTendUdAPQPXrt2Xhj9P5aBnpK87g92itfgv1SaTCRcvXkRISAgCA6kPAXFMUVER8vPz0bFjx1bfFLwhdEYTHv3uBP46kwuGAV6YlIgFQxzr63wmqwyH04oxq3+0w4PTlGr0SHp9K4xmFv8+MRztg9UNCT4hhBBCSJt0tbAKd39xCOnFGgSoZPhsXhL6xtTfnS+zRIOXf0/BlYJKfDW/P+9gsSzLYuiK7cgsqcYHs3rzTtfamrSZ0b+tfai9vGiEYOI4a3yhPvj1k0vE+Gh2H8weEA2WBfQmx+awZlkWS9Yfwyt/pOCuzw+i2MGRxJNT8mA0s+gc5k0VakIIIYQQF8UFqfDzA4PQvZ0viqv0mPXpAfx0NLPebbQGE87llONqYRWmrdmLU5mlddY5eq0EmSXVUMnEGNslFACQWlCJNzefg9HB58TWqMVXqq2oyTdxBsUXx4lFDN6Y2g1fLeiP+4fFO7TN4bQSpBdrAABHrpXgvnVHHJqe5/eT2QDQ6vvnEEIIIYQ0tmBvOb677yaM7xoKvcmMJ388iV+O1a1YW5/ROoR445clg9Al3AeFlXrM+GQ/92xm9esJy9St47uFQSkTQ280496vjuDTXalY8NURVGjb5gerVlOpJoQ0HoZhMLxjMPcyokJrwLwvDvG+wQTAZdhDE4LQMVSNFyYnCr7IyC/XYu/lQgDA1F6uTwdGCCGEEEIsVHIJ1szpi6WjOqBLuA/Gdw2rs86+K0WY/OFu/HA4A6E+Cvxw/00Y0SkYWoMZSzccx1t/n4fJzEJvNGPTqRwAwG01U7fKJCI8M7EzlFIxdl0swLTV+5BaUNmk59gcUKW6BYiNjcWqVas8HQy32bFjBxiGodHaW7B3t1zErosFmP7xfqzbn1brK7TWYMKfNRnukhEd8Ncjw2rNdX02uwxmc92v1r+fzIaZBfrG+PP24SGEEEIIIc4TiRg8Pq4TNi4ZBJXcMk612cziZEYpAODno5k4k1WOkzUfS7wVUvzv7n5YPLw9AGDNjiv452wudl4sQKnGgGBvOQa1vz4rzPiuYfjh/oEI8ZbjUn4lbv1oL/45m9uk5+hpLlWqV69ejbi4OCgUCvTt2xe7d++2u+4vv/yCsWPHIjg4GD4+Phg4cCD++ecflwPc2mRkZGDhwoWIiIiATCZDTEwMHnnkERQVFXk6aG4xYsQIPProo7V+GzRoEHJycuDrSyMGtlSPj+uIMV1CoTea8eJvZ7Fo3VGU1PSbPpxWjAqdEe38lBgQF1BrBOEzWWWYtnof5n1xCPnl2lr7zC7VQixiuDefhBBCCCHEfWwHjv141xXc+t+9ePn3s/jrjKUCPK1PJLdcLGLw7MTOeP/OXri9TyQmdgvDxbwKiBjglp4RdWaI6B7pi00PD0G/WH9U6Iy4/+ujeOPPFBjaSD9rpyvV33//PR599FE899xzOH78OIYOHYqJEyciPT2dd/1du3Zh7Nix2Lx5M44ePYqRI0diypQpOH78eIMD704sy6KiogLFxcWoqKhwqP9nQ6WmpiIpKQkXL17Ehg0bcPnyZXz88cf4999/MXDgQBQXFzd6GPiYTCaYzY2XAGQyGc0R3cL5KKT4bF5fvDQlETKxCFvP5WH8ql3491wehiYEY9dTI/H2HT0guiHDzSjWgGGAPZcLMeH93fj3XB637MUpiTiwbDSmUqWaEEIIIaTRsCyL/HIdAMv0WNUGE+KCVOgT7Vdn3Vt7tcO7M3qCYRg8OLIDDvzfaLtj7IT4KPDtopuwsGammLPZ5RC3ked9pyvVK1euxMKFC3HvvfeiS5cuWLVqFaKiorBmzRre9VetWoWnn34a/fr1Q0JCAt58800kJCTgjz/+aHDg3aW0tBTHT5zEoWOncPh4Cg4dO4XjJ042evPkBx98EDKZDFu2bMHw4cMRHR2NiRMnYuvWrcjKysJzzz3HrVtRUYHZs2dDrVYjIiICH374Ya19vfzyy4iOjoZcLkdERASWLl3KLdPr9Xj66afRrl07qFQqDBgwADt27OCWr127Fn5+fti0aRMSExMhl8vx2WefQaFQ1LkGS5cuxfDhwwFYpqWaNWsWIiMj4eXlhe7du2PDhg3cuvfccw927tyJ999/HwzDgGEYpKWl8Tb//vnnn9G1a1fI5XLExsbi3XffrXXc2NhYvPnmm1iwYAG8vb0RHR2NTz/9tNY5PvTQQwgPD4dCoUBsbCyWL1/u9D0hjmMYBvMHx2Hjg4PQPliF/AodFn51BOsPXkN0oFetZkFWE7uHY9PDQ5EY7oPiKj0WfnUEz/x0CuU1g1oEe8uhrmmWRAghhBBC3I9hGLx8S1d8cU8SgtSW+ajv7Bfl0AevEG8FQnwUdpdLxSK8MDkRn81LwsoZvbgPLFqDibf7X2vhVKVar9fj6NGjGDduXK3fx40bh3379jm0D7PZjIqKCgQEBNhdR6fToby8vNZfYyktLcXJM+dRUmlGcFgs4jokIjgsFiWVZpw8c77RKtbFxcX4559/sGTJEiiVylrLwsLCMGfOHHz//ffcF/O3334bPXr0wLFjx7Bs2TI89thjSE5OBgD89NNPeO+99/DJJ5/g0qVL+PXXX9G9e3duf/Pnz8fevXvx3Xff4dSpU7jjjjswYcIEXLp0iVtHo9Fg+fLl+Pzzz3H27Fncdddd8PPzw88//8ytYzKZ8MMPP2DOnDkAAK1Wi759+2LTpk04c+YM7rvvPsydOxcHDx4EALz//vsYOHAgFi1ahJycHOTk5CAqKqrOtTh69ChmzJiBO++8E6dPn8bLL7+MF154AWvXrq213rvvvoukpCQcP34cS5YswQMPPIDz588DAD744AP8/vvv+OGHH3DhwgV88803iI2NdfHuEGd0jfDFn0uH4r5h8Qj2lmNit/pH7u4QosbGBwdh4ZA4MAzw/ZEMDFq+DQUVuiYKMSGEEEIIGdU5FFseG44v5/fDoqGOzfDiqLGJoQjzvV75fuWPs5jxyf7WO4gZ64SsrCwWALt3795av7/xxhtsx44dHdrHihUr2ICAADYvL8/uOi+99BILoM5fWVlZnXWrq6vZlJQUtrq62plTYVmWZc1mM3v02HF2666j7KX0kjp/W3cdZY8dP8GazWan9y3kwIEDLAB248aNvMtXrlzJAmDz8vLYmJgYdsKECbWWz5w5k504cSLLsiz77rvvsh07dmT1en2d/Vy+fJllGIbNysqq9fvo0aPZZcuWsSzLsl9++SULgD1x4kStdZYuXcqOGjWK+/8///zDymQytri42O553XzzzewTTzzB/X/48OHsI488Umud7du3swDYkpISlmVZdvbs2ezYsWNrrfPUU0+xiYmJ3P9jYmLYu+66i/u/2WxmQ0JC2DVr1rAsy7IPP/wwO2rUKIfvVUPiDbGvvLpuHKzPwdQidvB//mVjntnELvrqcCOFihBCCCGEeEpeeTXb9cW/2ZhnNrEJz21mV265wFbrjZ4OlkPKysrs1kNtuTRQ2Y1NA1iWdai5wIYNG/Dyyy/j+++/R0hIiN31li1bhrKyMu4vIyPDlWAKqqysREl5FYJDQnmXB4eEorisEpWVTf9Gha35Qm29rgMHDqy1fODAgTh37hwA4I477kB1dTXi4+OxaNEibNy4EUajEQBw7NgxsCyLjh07Qq1Wc387d+7ElStXuP3JZDL06NGj1jHmzJmDHTt2IDvbMj/d+vXrcfPNN8Pf3x+A5cv1G2+8gR49eiAwMBBqtRpbtmyx27/ennPnzmHw4MG1fhs8eDAuXboEk8nE/WYbPoZhEBYWhvz8fACWpuYnTpxAp06dsHTpUmzZssWpMBD38FZInVq/f1wAkh8bjtdu7Yr7HJwDmxBCCCGEtBwh3gr8/ehQDOsYDL3RjPf/vYRbPtoDYysaxMypSnVQUBDEYjFyc2sPkZ6fn4/QUP6KqdX333+PhQsX4ocffsCYMWPqXVcul8PHx6fWX2MwGAwwGlkoFEre5XK5AkYjC4PB/ZOYd+jQAQzDICUlhXf5+fPn4e/vj6Cguv1SrawV7qioKFy4cAH//e9/oVQqsWTJEgwbNgwGgwFmsxlisRhHjx7FiRMnuL9z587h/fff5/alVCrrvBjp378/2rdvj++++w7V1dXYuHEj7rrrLm75u+++i/feew9PP/00tm3bhhMnTmD8+PHQ6/VOXQu+lzIsz0BxUmntChvDMNyAan369MHVq1fx2muvobq6GjNmzMD06dOdCgfxDKVMjLkDY5EUa79LCCGEEEIIabki/b3w1fx++O/sPgj1kePm7uGQiFvP7M5OjQgkk8nQt29fJCcn47bbbuN+T05Oxq233mp3uw0bNmDBggXYsGEDJk2a5Hpo3UwqlUIiYaDVVsPLS1VnuU6nhUTC1KnMuUNgYCDGjh2L1atX47HHHqvVrzo3Nxfr16/HvHnzuMrmgQMHam1/4MABdO7cmfu/UqnELbfcgltuuQUPPvggOnfujNOnT6N3794wmUzIz8/H0KFDnQ7n7NmzsX79ekRGRkIkEtW6f7t378att97KVbTNZjMuXbqELl26cOvIZLJaX5v5JCYmYs+ePbV+27dvHzp27AixWGxnq7p8fHwwc+ZMzJw5E9OnT8eECRNQXFxcb/99QgghhBBCSONjGAaTeoRjeKdgSESta1Rwp4fZffzxxzF37lwkJSVh4MCB+PTTT5Geno7FixcDsDTdzsrKwrp16wBYKtTz5s3D+++/j5tuuon7yq1UKj0+T7FarYa/jwoF+XmIia3b9LQgPw8Bvpbm0o3ho48+wqBBgzB+/Hi8/vrriIuLw9mzZ/HUU0+hXbt2eOONN7h19+7dixUrVmDq1KlITk7Gjz/+iD///BOAZfRuk8mEAQMGwMvLC19//TWUSiViYmIQGBiIOXPmYN68eXj33XfRu3dvFBYWYtu2bejevTtuvvnmesM4Z84cvPLKK3jjjTcwffp0KBTXBxzo0KEDfv75Z+zbtw/+/v5YuXIlcnNza1WqY2NjcfDgQaSlpUGtVvNWcJ944gn069cPr732GmbOnIn9+/fjo48+wurVqx2+lu+99x7Cw8PRq1cviEQi/PjjjwgLC4Ofn5/D+yCEEEIIIYQ0rtY404vT39xnzpyJVatW4dVXX0WvXr2wa9cubN68GTExMQCAnJycWn1qP/nkExiNRjz44IMIDw/n/h555BH3nYWLGIZBfFwsJIwe19JSodFUwWQyQaOpwrW0VEgYPeJiYxptPuWEhAQcOXIE7du3x8yZM9G+fXvcd999GDlyJPbv31+rAvrEE0/g6NGj6N27N1577TW8++67GD9+PADAz88Pn332GQYPHowePXrg33//xR9//IHAwEAAwJdffol58+bhiSeeQKdOnXDLLbfg4MGDvCNx84WxX79+OHXqFDfqt9ULL7yAPn36YPz48RgxYgTCwsIwderUWus8+eSTEIvFSExMRHBwMG9/6z59+uCHH37Ad999h27duuHFF1/Eq6++invuucfha6lWq/HWW28hKSkJ/fr1Q1paGjZv3gyRqPU0KyGEEEIIIYQ0PwzL13m1mSkvL4evry/Kysrq9K/WarW4evUq4uLian1FdUZpaSlSr6ahpLwKRiMLiYRBgK8acbEx9KWzlXJHvCGEEEIIIYS0XvXVQ221vm/vLvDz80PvXj1RWVkJg8EAqVQKtVrdaF+oCSGEEEIIIYS0DlSprsEwDLy9vT0dDEIIIYQQQgghLQh1OCWEEEIIIYQQQlxElWpCCCGEEEIIIcRFVKkmhBBCCCGEEEJcRJVqQgghhBBCCCHERVSpJoQQQgghhBBCXESVakIIIYQQQgghxEVUqSaEEEIIIYQQQlxElWpCCCGEEEIIIcRFVKn2oHvuuQcMw4BhGEgkEkRHR+OBBx5ASUmJp4NGCCGEEEIIIcQBEk8HoLlgWRaVlZUwGAyQSqVQq9VgGKbRjzthwgR8+eWXMBqNSElJwYIFC1BaWooNGzY0+rEJIYQQQgghhDQMfakGUFpailPHj+PMoUM4f+QIzhw6hFPHj6O0tLTRjy2XyxEWFobIyEiMGzcOM2fOxJYtW7jlX375Jbp06QKFQoHOnTtj9erV3DK9Xo+HHnoI4eHhUCgUiI2NxfLly7nlDMNgzZo1mDhxIpRKJeLi4vDjjz/WOv7p06cxatQoKJVKBAYG4r777kNlZSW3/J577sHUqVPxzjvvIDw8HIGBgXjwwQdhMBi4dVavXo2EhAQoFAqEhoZi+vTp3DKWZbFixQrEx8dDqVSiZ8+e+Omnn7jlJSUlmDNnDoKDg6FUKpGQkIAvv/zSPReXEEIIIYQQQhpZm/9SXVpaigsnT0FhNCI+OARKhQLVWi1yCwpw4eQpdOrZA35+fk0SltTUVPz999+QSqUAgM8++wwvvfQSPvroI/Tu3RvHjx/HokWLoFKpcPfdd+ODDz7A77//jh9++AHR0dHIyMhARkZGrX2+8MIL+M9//oP3338fX3/9NWbNmoVu3bqhS5cu0Gg0mDBhAm666SYcPnwY+fn5uPfee/HQQw9h7dq13D62b9+O8PBwbN++HZcvX8bMmTPRq1cvLFq0CEeOHMHSpUvx9ddfY9CgQSguLsbu3bu5bZ9//nn88ssvWLNmDRISErBr1y7cddddCA4OxvDhw/HCCy8gJSUFf/31F4KCgnD58mVUV1c3yfUmhBBCCCGEkIZq05VqlmVxLTUVCqMR7WNiuN9VXl5oHxODK9euIf3qVfj26tVoTcE3bdoEtVoNk8kErVYLAFi5ciUA4LXXXsO7776LadOmAQDi4uKQkpKCTz75BHfffTfS09ORkJCAIUOGgGEYxNicg9Udd9yBe++9l9tfcnIyPvzwQ6xevRrr169HdXU11q1bB5VKBQD46KOPMGXKFLz11lsIDQ0FAPj7++Ojjz6CWCxG586dMWnSJPz7779YtGgR0tPToVKpMHnyZHh7eyMmJga9e/cGAFRVVWHlypXYtm0bBg4cCACIj4/Hnj178Mknn2D48OFIT09H7969kZSUBACIjY1tlOtMCCGEEEIIIY2hTVeqKysroSkpQXxwCO/ysOBgpBbko7KyEt7e3o0ShpEjR2LNmjXQaDT4/PPPcfHiRTz88MMoKChARkYGFi5ciEWLFnHrG41G+Pr6ArA0zR47diw6deqECRMmYPLkyRg3blyt/Vsrs7b/P3HiBADg3Llz6NmzJ1ehBoDBgwfDbDbjwoULXKW6a9euEIvF3Drh4eE4ffo0AGDs2LGIiYlBfHw8JkyYgAkTJuC2226Dl5cXUlJSoNVqMXbs2Fph0Ov1XMX7gQcewO23345jx45h3LhxmDp1KgYNGtSQS0oIIYQQQgghTaZN96k2GAxgTSYoFQre5Qq5HKzJVKv/sLupVCp06NABPXr0wP+39+ZRclTn/fe3qnrvnn3rGWk2ISQQEsKSMBEGIgORIr9sgZOQHF5HsgM/xGoZCATHBvmNg1gMyDm2wBY+OI4JIgTEzwbCZkCAgWMkIJIRFhjNaB9mNItmeu+quu8foyqqp291Ld09o5l5PufonFbfus997nO/97l1p7tv/du//RvS6TS+//3vQ1VVAKNfAf/www/1f3/4wx/w7rvvAgAWLVqErq4u/Mu//AuSyST+5m/+Juf3zGZon7ozxkw/gTe+r30d3Vim+VdRUYH3338fjz/+OJqbm3HHHXdg4cKFGBoa0q957rnncvqwa9cu/XfVK1euxN69e7F27VocOnQI5513Hm655RYnISQIgiAIgiAIgpgwpvWm2uv1QpAkJI997XosqXQagiTlbSrLyZ133okf/vCHUBQFM2bMwJ49ezB79uycf52dnfr1lZWVuPzyy7Fp0yY88cQTeOqppzAwMKCXaxtw4/9POukkAMC8efPw4YcfIh6P6+W/+93vIIoi5syZY9tnj8eD888/H/feey927NiB7u5uvPrqq5g3bx78fj/27duX14fW1la9fkNDA1avXo1f/epX2LBhA372s585jhtBEARBEARBEMREMK2//h2JRBCqqUFPX1/Ob6o1evr6EK6tRSQSGTefli1bhlNOOQV33XUX1q1bhxtvvBGVlZVYuXIl0uk0tm3bhsHBQdx000148MEH0dzcjNNOOw2iKOLJJ59ENBrNOVjtySefxJIlS3DWWWfhsccew+9//3v8/Oc/BwBcccUVuPPOO7Fq1SqsW7cOfX19uOGGG/D1r39d/+q3Fc8++yz27NmDc845BzU1NXj++eehqirmzp2LiooK3HLLLfj2t78NVVVx1llnYXh4GG+//TYikQhWrVqFO+64A4sXL8Ypp5yCdDqNZ599FieffHI5QksQBEEQBEEQBFFypvWmWhAEtM+ahd3/uwOf7d2LaEMDAn4/Uuk0evr6kPJ4MLezc1yeV23kpptuwje+8Q386U9/wiOPPIL77rsPt956K8LhMBYsWIC1a9cCGP2jwD333INPP/0UkiTh9NNPx/PPPw9R/OILCN///vexefNmXHvttYhGo3jssccwb948AEAoFMKLL76Ib33rWzj99NMRCoVw2WWX6Qel2aG6uhpPP/001q1bh1QqhRNPPBGPP/44TjnlFACjh6M1NjZi/fr12LNnD6qrq7Fo0SJ85zvfAQD4fD7cfvvt6O7uRjAYxNlnn43NmzeXKJIEQRAEQRAEQRDlRWCMsYl2worh4WFUVVXh6NGjqKyszClLpVLo6upCZ2cnAia/jbZiaGgIe/fsQWJwEExRIEgSwrW1aOvsHLfHaZUDQRCwZcsWXHLJJRPtynFHKXRDEARBEARBEMTUpdA+1Mi0/qRao7q6GlVf+hJisRiy2Sy8Xi8ikci4f0JNEARBEARB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",
"text/plain": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(12, 3))\n",
"jitter = responses * .1 + (1-responses) * -.1\n",
"plt.scatter(np.arange(len(u)), u, label=\"Observations\", color=\"#4c72b0\", edgecolor=\"k\", alpha=.2)\n",
"plt.scatter(np.arange(len(responses)), responses + jitter, label=\"Responses\", color=\"#c44e52\", alpha=.2, edgecolor=\"k\")\n",
"plt.plot(agent.node_trajectories[1][\"expected_mean\"], label=\"Beliefs\", linestyle=\"--\")\n",
"plt.legend()\n",
"plt.xlabel(\"Trials\")"
]
},
{
"cell_type": "markdown",
"id": "558452b8-3d7c-484e-a59a-933f0fcf52f5",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"We now have the two ingredients required to create a response model:\n",
"- the vector `observations` ($u$) that encode the current association between the stimuli and the outcomes.\n",
"- the vector `responses` ($y$) that encode the inferred association by the participant, using the expected value at time $t$ at the first level.\n",
"\n",
"```{note}\n",
"We started by simulation the responses from an agent for the sake of demonstration and parameter recovery, but in the context of an experiment, the user already has access to the vectors $y$ and $u$ and could start from her.\n",
"```"
]
},
{
"cell_type": "markdown",
"id": "6055eef2-8e7b-4a13-991e-394895f66391",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"### Creating a new response function\n",
"\n",
"Let's now consider that the two vectors of observations $u$ and responses $y$ were obtained from a real participant undergoing a real experiment. In this situation, we assume that this participant internally used a {term}`Perceptual model` and a {term}`Decision rule` that might resemble what we defined previously, and we want to infer what are the most likely values for critical parameters in the model (e.g. the evolution rate $\\omega_2$). To do so, we are going to use our dataset (both $u$ and $y$), and try many models. We are going to fix the values of all HGF parameters to reasonable estimates (here, using the exact same values as in the simulation), except for $\\omega_2$. For this last parameter, we will assume a prior set at $\\mathcal{N}(-2.0, 2.0)$. The idea is that we want to sample many $\\omega_2$ values from this distribution and see if the model is performing better with some values.\n",
"\n",
"But here, we need a clear definition of what this means *to perform better* for a given model. And this is exactly what a {term}`Response model` does, it is a way for us to evaluate how likely the behaviours $y$ for a given {term}`Perceptual model`, and assuming that the participants use this specific {term}`Decision rule`. In [pyhgf](https://github.com/ilabcode/pyhgf), this step is performed by creating the corresponding {term}`Response function`, which is the Python function that will return the surprise $S$ of getting these behaviours from the participant under this decision rule.\n",
"\n",
"````{hint} What is a *response function*?\n",
"Most of the work around HGFs consists in creating and adapting {term}`Response model` to work with a given experimental design. There is no limit in terms of what can be used as a {term}`Response model`, provided that the {term}`Perceptual model` and the {term}`Decision rule` are clearly defined.\n",
"\n",
"In [pyhgf](https://github.com/ilabcode/pyhgf), the {term}`Perceptual model` is the probabilistic network created with the main {py:class}`pyhgf.model.HGF` and {py:class}`pyhgf.distribution.HGFDistribution` classes. The {term}`Response model` is something that is implicitly defined when we create the {term}`Response function`, a Python function that computes the negative of the log-likelihood of the actions given the perceptual model. This {term}`Response function` can be passed as an argument to the main classes using the keywords arguments `response_function`, `response_function_inputs` and `response_function_parameters`. The `response_function` can be any callable that returns the surprise $S$ of observing action $y$ given this model, and the {term}`Decision rule`. The `response_function_inputs` are the additional data to the response function (optional) while `response_function_parameters` are the additional parameters (optional). The `response_function_inputs` is where the actions $y$ should be provided.\n",
"\n",
"```{important}\n",
"A *response function* should not return the actions given perceptual inputs $y | u$ (this is what the {term}`Decision rule` does), but the [surprise](https://en.wikipedia.org/wiki/Information_content) $S$ associated with the observation of actions given the perceptual inputs $S(y | u)$, which is defined by:\n",
"\n",
"$$\n",
"\\begin{align}\n",
"S(y | u) = -\\log[Pr(y | u)]\n",
"\\end{align}\n",
"$$\n",
"```\n",
"\n",
"If you are already familiar with using HGFs in the Julia equivalent of [pyhgf](https://github.com/ilabcode/pyhgf), you probably noted that the toolbox is split into a **perceptual** package [HierarchicalGaussianFiltering.jl](https://github.com/ilabcode/HierarchicalGaussianFiltering.jl) and a **response** package [ActionModels.jl](https://github.com/ilabcode/ActionModels.jl). This was made to make the difference between the two parts of the HGF clear and be explicit that you can use a perceptual model without any action model. In [pyhgf](https://github.com/ilabcode/pyhgf) however, everything happens in the same package, the response function is merely an optional, additional argument that can be passed to describe how surprise is computed.\n",
"````"
]
},
{
"cell_type": "markdown",
"id": "22f83493-de32-4b95-b79d-e93b116712e4",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"Therefore, we want a {term}`Response function` that returns the surprise for observing the response $y$, which is:\n",
"\n",
"$$\n",
"\\begin{align}\n",
"surprise | y & = \\sum_{t=1}^{t} - \\log(p(y^t | \\hat{\\mu}_1)) \\\\\n",
"& = \\sum_{t=1}^{t} - \\log(\\hat{\\mu}_1^y(1 - \\hat{\\mu}_1)^{1-y}) \\\\\n",
"\\end{align}\n",
"$$\n",
"We can write such a response function in Python as:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "9ffe8ee2-1b36-400b-8f71-09e9f097ba2a",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"outputs": [],
"source": [
"def response_function(hgf, response_function_inputs, response_function_parameters=None):\n",
" \"\"\"A simple response function returning the binary surprise.\"\"\"\n",
"\n",
" # response_function_parameters can be used to parametrize the response function (e.g. inverse temperature)\n",
" # ...<\n",
"\n",
" # the expected values at the first level of the HGF\n",
" beliefs = hgf.node_trajectories[1][\"expected_mean\"]\n",
"\n",
" # get the decision from the inputs to the response function\n",
" return jnp.sum(jnp.where(response_function_inputs, -jnp.log(beliefs), -jnp.log(1.0 - beliefs)))"
]
},
{
"cell_type": "markdown",
"id": "a9be33b8-8fcc-4acb-b151-7007f516044d",
"metadata": {},
"source": [
"This function takes the expected probability from the binary node and uses it to predict the participant's decision. The surprise is computed using the binary surprise (see {py:func}`pyhgf.update.binary.binary_surprise`). This corresponds to the standard binary softmax response function that is also accessible from the {py:func}`pyhgf.response.binary_softmax` function."
]
},
{
"cell_type": "markdown",
"id": "6a564169-3fe2-4f7f-8fbe-7ac7b9bf8a9b",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"```{note}\n",
"Note here that our {term}`Response function` has a structure that is the standard way to write response functions in [pyhgf](https://github.com/ilabcode/pyhgf), that is with two input arguments:\n",
"- the HGF model on which the response function applies (i.e. the {term}`Perceptual model`)\n",
"- the additional parameters provided to the response function. This can include additional parameters that can be part of the equation of the model, or the input data used by this model. We then provide the `response` vector ($y$) here.\n",
"\n",
"Note that the operation inside the function should be compatible with [JAX's core transformations](https://github.com/google/jax#transformations).\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "8abe91c5-7748-4445-826c-e52dff35094c",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"outputs": [
{
"data": {
"text/plain": [
"Array(205.87854, dtype=float32)"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# return the overall surprise\n",
"response_function(hgf=agent, response_function_inputs=responses)"
]
},
{
"cell_type": "markdown",
"id": "369ac58b-1a9a-4799-8d2d-a928f1154739",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"We now have a response function that returns the surprise associated with the observation of the agent's action. Conveniently, this is by definition the negative of the log-likelihood of our model, which means that we can easily interface this with other Python packages used for optimisation and Bayesian inference like [PyMC](https://www.pymc.io/projects/docs/en/stable/learn.html) or [BlackJAX](https://blackjax-devs.github.io/blackjax/). We use the surprise as a default output, however, as this metric is more commonly used in computational psychiatry and is more easily connected to psychological functioning."
]
},
{
"cell_type": "markdown",
"id": "5d76e61b-ea8b-452d-a7c9-b2f50fd33f2d",
"metadata": {
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"## Recovering HGF parameters from the observed behaviors"
]
},
{
"cell_type": "markdown",
"id": "1e1b18b6-dad1-4d95-8835-e994c53259c1",
"metadata": {},
"source": [
"Now that we have created our {term}`Response function`, and that we made sure it complies with the standard ways of writing responses functions (see above), we can use it to perform inference over the most likely values of some parameters. We know that the agent used to simulate behaviour had an *evolution rate* set at `-4.0`. In the code below, we create a new HGF distribution using the same values, but setting the $\\omega_2$ parameter free so we can estimate the most likely value, given the observed behaviours."
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "edb96ba7-6824-4d60-9dcf-8511066f2853",
"metadata": {},
"outputs": [],
"source": [
"hgf_logp_op = HGFDistribution(\n",
" n_levels=2,\n",
" model_type=\"binary\",\n",
" input_data=u[jnp.newaxis, :],\n",
" response_function=response_function,\n",
" response_function_inputs=responses[jnp.newaxis, :]\n",
")"
]
},
{
"cell_type": "markdown",
"id": "1d03b46e-bf4d-4934-964f-eb683fcc1f4a",
"metadata": {},
"source": [
"```{note}\n",
"The response function that we created above is passed as an argument directly to the HGF distribution, together with the additional parameters. The additional parameters should be a list of tuples that has the same length as the number of models created.\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "c27b15f5-0b79-448f-8b27-024e417fb462",
"metadata": {},
"outputs": [],
"source": [
"with pm.Model() as sigmoid_hgf:\n",
"\n",
" # prior over the evolution rate at the second level\n",
" tonic_volatility_2 = pm.Normal(\"tonic_volatility_2\", -2.0, 2.0)\n",
"\n",
" # the main HGF distribution\n",
" pm.Potential(\"hgf_loglike\", hgf_logp_op(tonic_volatility_2=tonic_volatility_2))"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "e80e247a-7450-42f3-b4e7-352f965f63f4",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Auto-assigning NUTS sampler...\n",
"Initializing NUTS using jitter+adapt_diag...\n",
"Sequential sampling (4 chains in 1 job)\n",
"NUTS: [tonic_volatility_2]\n"
]
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "33164d74e619495683e8e1d4dc92af7f",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"Output()"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n"
],
"text/plain": []
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"