diff --git a/Dockerfile b/Dockerfile index 1aa7ae0c..e69711a6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,8 +3,9 @@ FROM nvidia/cuda:11.8.0-devel-ubuntu22.04 # install python ARG DEBIAN_FRONTEND=noninteractive ARG PYTHON_VERSION=3.10 +#setting language and locale +ENV LANG="C.UTF-8" LC_ALL="C.UTF-8" -# ENV TZ=Europe/London RUN apt-get update && \ DEBIAN_FRONTEND=noninteractive apt-get -qq -y install \ @@ -33,8 +34,6 @@ RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && python get-pip.py # default workdir WORKDIR /home/workdir - -# dev: install from source COPY . . #jaxmarl from source if needed, all the requirements @@ -42,9 +41,19 @@ RUN pip install --ignore-installed -e '.[qlearning, dev]' # install jax from to enable cuda RUN pip install --upgrade "jax[cuda11_pip]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html + #disabling preallocation -ARG XLA_PYTHON_CLIENT_PREALLOCATE=false +RUN export XLA_PYTHON_CLIENT_PREALLOCATE=false +#safety measures +RUN export XLA_PYTHON_CLIENT_MEM_FRACTION=0.25 +RUN export TF_FORCE_GPU_ALLOW_GROWTH=true #for jupyter EXPOSE 9999 + +#for secrets and debug +ENV WANDB_API_KEY="" +ENV WANDB_ENTITY="" +RUN git config --global --add safe.directory /home/workdir + CMD ["/bin/bash"] diff --git a/baselines/IPPO/config/ippo_rnn_smax.yaml b/baselines/IPPO/config/ippo_rnn_smax.yaml index e54352cf..9160b61d 100644 --- a/baselines/IPPO/config/ippo_rnn_smax.yaml +++ b/baselines/IPPO/config/ippo_rnn_smax.yaml @@ -1,6 +1,7 @@ "LR": 0.004 "NUM_ENVS": 128 "NUM_STEPS": 128 +"GRU_HIDDEN_DIM": 256 "TOTAL_TIMESTEPS": 1e7 "UPDATE_EPOCHS": 4 "NUM_MINIBATCHES": 4 @@ -22,6 +23,6 @@ "ANNEAL_LR": True # WandB Params -"ENTITY": "" +"ENTITY": ${oc.env:WANDB_ENTITY} "PROJECT": "jaxmarl-smax" "WANDB_MODE" : "disabled" diff --git a/baselines/IPPO/ippo_rnn_smax.py b/baselines/IPPO/ippo_rnn_smax.py index 56f5a3ad..d92325b0 100644 --- a/baselines/IPPO/ippo_rnn_smax.py +++ b/baselines/IPPO/ippo_rnn_smax.py @@ -37,7 +37,7 @@ def __call__(self, carry, x): ins, resets = x rnn_state = jnp.where( resets[:, np.newaxis], - self.initialize_carry(ins.shape[0], ins.shape[1]), + self.initialize_carry(*rnn_state.shape), rnn_state, ) new_rnn_state, y = nn.GRUCell(features=ins.shape[1])(rnn_state, ins) @@ -65,7 +65,7 @@ def __call__(self, hidden, x): rnn_in = (embedding, dones) hidden, embedding = ScannedRNN()(hidden, rnn_in) - actor_mean = nn.Dense(128, kernel_init=orthogonal(2), bias_init=constant(0.0))( + actor_mean = nn.Dense(self.config["GRU_HIDDEN_DIM"], kernel_init=orthogonal(2), bias_init=constant(0.0))( embedding ) actor_mean = nn.relu(actor_mean) @@ -147,7 +147,7 @@ def train(rng): jnp.zeros((1, config["NUM_ENVS"])), jnp.zeros((1, config["NUM_ENVS"], env.action_space(env.agents[0]).n)), ) - init_hstate = ScannedRNN.initialize_carry(config["NUM_ENVS"], 128) + init_hstate = ScannedRNN.initialize_carry(config["NUM_ENVS"], config["GRU_HIDDEN_DIM"]) network_params = network.init(_rng, init_hstate, init_x) if config["ANNEAL_LR"]: tx = optax.chain( @@ -169,8 +169,7 @@ def train(rng): rng, _rng = jax.random.split(rng) reset_rng = jax.random.split(_rng, config["NUM_ENVS"]) obsv, env_state = jax.vmap(env.reset, in_axes=(0,))(reset_rng) - init_hstate = ScannedRNN.initialize_carry(config["NUM_ACTORS"], 128) - + init_hstate = ScannedRNN.initialize_carry(config["NUM_ACTORS"], config["GRU_HIDDEN_DIM"]) # TRAIN LOOP def _update_step(update_runner_state, unused): # COLLECT TRAJECTORIES @@ -275,7 +274,7 @@ def _loss_fn(params, init_hstate, traj_batch, gae, targets): # RERUN NETWORK _, pi, value = network.apply( params, - init_hstate.transpose(), + init_hstate.squeeze(), (traj_batch.obs, traj_batch.done, traj_batch.avail_actions), ) log_prob = pi.log_prob(traj_batch.action) @@ -330,8 +329,9 @@ def _loss_fn(params, init_hstate, traj_batch, gae, targets): ) = update_state rng, _rng = jax.random.split(rng) + # adding an additional "fake" dimensionality to perform minibatching correctly init_hstate = jnp.reshape( - init_hstate, (config["NUM_STEPS"], config["NUM_ACTORS"]) + init_hstate, (1, config["NUM_ACTORS"], -1) ) batch = ( init_hstate, @@ -363,7 +363,7 @@ def _loss_fn(params, init_hstate, traj_batch, gae, targets): ) update_state = ( train_state, - init_hstate, + init_hstate.squeeze(), traj_batch, advantages, targets, @@ -371,7 +371,6 @@ def _loss_fn(params, init_hstate, traj_batch, gae, targets): ) return update_state, total_loss - init_hstate = initial_hstate[None, :].squeeze().transpose() update_state = ( train_state, init_hstate, diff --git a/jaxmarl/tutorials/JaxMARL_Walkthrough.ipynb b/jaxmarl/tutorials/JaxMARL_Walkthrough.ipynb index e466af20..23b42fae 100644 --- a/jaxmarl/tutorials/JaxMARL_Walkthrough.ipynb +++ b/jaxmarl/tutorials/JaxMARL_Walkthrough.ipynb @@ -1,60 +1,45 @@ { - "nbformat": 4, - "nbformat_minor": 0, - "metadata": { - "colab": { - "provenance": [], - "toc_visible": true, - "gpuType": "T4" - }, - "kernelspec": { - "name": "python3", - "display_name": "Python 3" - }, - "language_info": { - "name": "python" - }, - "accelerator": "GPU" - }, "cells": [ { "cell_type": "markdown", + "metadata": { + "id": "BjRnlRuH1654" + }, "source": [ "# JaxMARL Example Usage\n", "\n", "Welcome to a walkthrough of the JaxMARL repo. We include several popular MARL environemnts and algorithms, allowing you to easily evaluate your new approach! This colab will showcase our API, the speed of our environments and how to train over multiple seeds.\n", "\n", "⚠ī¸ Ensure you select a GPU from `Runtime > Change runtime type` ⚠ī¸" - ], - "metadata": { - "id": "BjRnlRuH1654" - } + ] }, { "cell_type": "markdown", + "metadata": { + "id": "R_qy-SX12H5_" + }, "source": [ "### Install dependencies 📚\n", "\n", - "We install JAX for use with a GPU, there is rather a lot to download so this may take a second or two.\n" - ], - "metadata": { - "id": "R_qy-SX12H5_" - } + "We install JAX for use with a GPU, there is rather a lot to download so this may take a second or two.\n", + "\n", + "Note, that the runtime will reboot automatically immediately after.\n" + ] }, { "cell_type": "code", "execution_count": 1, "metadata": { - "id": "qJIaqAt40_rg", "colab": { "base_uri": "https://localhost:8080/" }, + "id": "qJIaqAt40_rg", "outputId": "553cb4c2-d711-498a-e5e2-26c758230fa7" }, "outputs": [ { - "output_type": "stream", "name": "stdout", + "output_type": "stream", "text": [ "Looking in links: https://storage.googleapis.com/jax-releases/jax_cuda_releases.html\n", "Requirement already satisfied: jax[cuda11_pip] in /usr/local/lib/python3.10/dist-packages (0.4.20)\n", @@ -166,12 +151,16 @@ } ], "source": [ - "!pip install --upgrade \"jax[cuda11_pip]\" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html\n", - "!pip install matplotlib jaxmarl pettingzoo" + "!pip install --upgrade -qq \"jax[cuda11_pip]\" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html\n", + "!pip install -qq matplotlib jaxmarl pettingzoo\n", + "exit(0) #essentially, restarts the runtime after the installation" ] }, { "cell_type": "markdown", + "metadata": { + "id": "uOaiuWkePf7f" + }, "source": [ "## Part 1: JaxMARL API 🕹ī¸\n", "\n", @@ -180,61 +169,11 @@ "* `actions`, `obs`, `rewards`, `dones` are dictionaries keyed by agent name, this allows for differing action and observation spaces. As agents can terminate asychronously, `dones` contains a special `\"__all__\"` which signifies whether an episode has terminated.\n", "* `state` represents the internal state of the environment and contains all the information needed to transistion the environment given a set of actions. These variables are not held within the environment class due to JAX transformations requiring pure functions.\n", "* `info` is a dictionary containing pertinent information, the exact content varies environment to environment.\n" - ], - "metadata": { - "id": "uOaiuWkePf7f" - } + ] }, { "cell_type": "code", - "source": [ - "%matplotlib inline\n", - "\n", - "import matplotlib.animation as animation\n", - "import jax\n", - "from jaxmarl import make\n", - "from jaxmarl.environments.mpe import MPEVisualizer\n", - "\n", - "# Parameters + random keys\n", - "max_steps = 25\n", - "key = jax.random.PRNGKey(0)\n", - "key, key_r, key_a = jax.random.split(key, 3)\n", - "\n", - "# Instantiate environment\n", - "env = make('MPE_simple_reference_v3')\n", - "obs, state = env.reset(key_r)\n", - "print('list of agents in environment', env.agents)\n", - "\n", - "# Sample random actions\n", - "key_a = jax.random.split(key_a, env.num_agents)\n", - "actions = {agent: env.action_space(agent).sample(key_a[i]) for i, agent in enumerate(env.agents)}\n", - "print('example action dict', actions)\n", - "\n", - "# Collect trajectory\n", - "state_seq = []\n", - "for _ in range(max_steps):\n", - " state_seq.append(state)\n", - " # Iterate random keys and sample actions\n", - " key, key_s, key_a = jax.random.split(key, 3)\n", - " key_a = jax.random.split(key_a, env.num_agents)\n", - " actions = {agent: env.action_space(agent).sample(key_a[i]) for i, agent in enumerate(env.agents)}\n", - "\n", - " # Step environment\n", - " obs, state, rewards, dones, infos = env.step(key_s, state, actions)\n", - "\n", - "# Visualise\n", - "viz = MPEVisualizer(env, state_seq)\n", - "ani = animation.FuncAnimation(\n", - " viz.fig,\n", - " viz.update,\n", - " frames=len(viz.state_seq),\n", - " blit=False,\n", - " interval=viz.interval,\n", - ")\n", - "\n", - "from IPython.display import HTML\n", - "HTML(ani.to_html5_video())" - ], + "execution_count": 2, "metadata": { "colab": { "base_uri": "https://localhost:8080/", @@ -243,52 +182,47 @@ "id": "h3VkMmsdPfc0", "outputId": "4d215fa4-df2b-4ce8-af01-ba317cdfdab0" }, - "execution_count": 2, "outputs": [ { - "output_type": "stream", "name": "stdout", + "output_type": "stream", "text": [ "list of agents in environment ['agent_0', 'agent_1']\n" ] }, { - "output_type": "stream", "name": "stderr", + "output_type": "stream", "text": [ "/usr/local/lib/python3.10/dist-packages/gymnax/environments/spaces.py:38: UserWarning: Explicitly requested dtype requested in astype is not available, and will be truncated to dtype int32. To enable more dtypes, set the jax_enable_x64 configuration option or the JAX_ENABLE_X64 shell environment variable. See https://github.com/google/jax#current-gotchas for more.\n", " ).astype(self.dtype)\n" ] }, { - "output_type": "stream", "name": "stdout", + "output_type": "stream", "text": [ "example action dict {'agent_0': Array(40, dtype=int32), 'agent_1': Array(37, dtype=int32)}\n" ] }, { - "output_type": "stream", "name": "stderr", + "output_type": "stream", "text": [ "/usr/local/lib/python3.10/dist-packages/gymnax/environments/spaces.py:38: UserWarning: Explicitly requested dtype requested in astype is not available, and will be truncated to dtype int32. To enable more dtypes, set the jax_enable_x64 configuration option or the JAX_ENABLE_X64 shell environment variable. See https://github.com/google/jax#current-gotchas for more.\n", " ).astype(self.dtype)\n" ] }, { - "output_type": "stream", "name": "stdout", + "output_type": "stream", "text": [ "Comm active? True\n", "comm idx [0 1]\n" ] }, { - "output_type": "execute_result", "data": { - "text/plain": [ - "" - ], "text/html": [ "" + ], + "text/plain": [ + "" ] }, + "execution_count": 2, "metadata": {}, - "execution_count": 2 + "output_type": "execute_result" }, { - "output_type": "display_data", "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAc0AAAGyCAYAAACGMZ8JAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABGbklEQVR4nO3deVwV5f4H8M+cAxxANlFWQwSVxQ1xDe2mJYpaJul1N5efy9U0I72Vdkszbz9uXr1266eZZaJtpqWWWhqiqBmiorhLLiRIgKZy2Ldznt8f5skjoAOeOecgn3eveb06M8/MfIft48w8M48khBAgIiKi+1JZugAiIqL6gqFJREQkE0OTiIhIJoYmERGRTAxNIiIimRiaREREMjE0iYiIZGJoEhERycTQJCIikomhSUREJJOioRkbG4uuXbvC2dkZnp6eiI6ORlpa2n3X27hxI0JCQmBvb4/27dvj+++/V7JMIiIiWRQNzb1792LGjBk4ePAg4uPjUVFRgX79+qGoqKjGdX7++WeMGjUKkyZNwrFjxxAdHY3o6GicOnVKyVKJiIjuSzLnC9uvXbsGT09P7N27F48//ni1bUaMGIGioiJs27bNMO/RRx9Fx44dsXLlSnOVSkREVIWNOXem1WoBAO7u7jW2SUpKwuzZs43mRUVFYcuWLdW2LysrQ1lZmeGzXq/HjRs30KRJE0iS9OBFExFRvSSEQEFBAXx9faFSmebCqtlCU6/XIyYmBj179kS7du1qbJeTkwMvLy+jeV5eXsjJyam2fWxsLBYuXGjSWomI6OGRmZmJRx55xCTbMltozpgxA6dOncJPP/1k0u3OmzfP6MxUq9WiefPmyMzMhIuLi0n3RURE9Ud+fj78/Pzg7Oxssm2aJTRnzpyJbdu2Yd++ffdNe29vb+Tm5hrNy83Nhbe3d7XtNRoNNBpNlfkuLi4MTSIiMumtOkV7zwohMHPmTGzevBm7d+9GQEDAfdeJiIhAQkKC0bz4+HhEREQoVSYREZEsip5pzpgxA1988QW+/fZbODs7G+5Lurq6wsHBAQAwbtw4NGvWDLGxsQCAF198Eb169cLSpUvx1FNPYf369Thy5AhWrVqlZKlERET3peiZ5gcffACtVovevXvDx8fHMH311VeGNhkZGcjOzjZ87tGjB7744gusWrUKYWFh+Prrr7Fly5Z7dh4iIiIyB8Uvz1Y3TZgwwdAmMTERcXFxRusNGzYMaWlpKCsrw6lTpzBw4ECT1HPt2jVMnz4dzZs3h0ajgbe3N6KionDgwAFDG0mSany8xRxu3LiBMWPGwMXFBW5ubpg0aRIKCwstVg8REf3JrM9pWtrQoUNRXl6OtWvXIjAwELm5uUhISMD169ctXZrBmDFjkJ2dbXiD0sSJEzF16lR88cUXli6NiIjEQ0ar1QoAQqvVGs2/efOmACASExNrXNff318AMEz+/v6GZVu2bBHh4eFCo9GIgIAA8eabb4qKigrDcgBixYoVon///sLe3l4EBASIjRs31qr2M2fOCADi8OHDhnk//PCDkCRJZGVl1WpbREQNXU158CAazCgnTk5OcHJywpYtW4zeIHSnw4cPAwDWrFmD7Oxsw+f9+/dj3LhxePHFF3HmzBl8+OGHiIuLw9tvv220/htvvIGhQ4fi+PHjGDNmDEaOHImzZ88alvfu3dvo0vTdkpKS4Obmhi5duhjmRUZGQqVSITk5ua6HTkREJtJgQtPGxgZxcXFYu3Yt3Nzc0LNnT7z22ms4ceKEoY2HhwcAwM3NDd7e3obPCxcuxNy5czF+/HgEBgaib9++WLRoET788EOjfQwbNgyTJ09GUFAQFi1ahC5duuD99983LG/evDl8fHxqrDEnJweenp5V6nZ3d6/xjUhERGQ+De6e5lNPPYX9+/fj4MGD+OGHH7B48WJ8/PHH9zwDPH78OA4cOGB0ZqnT6VBaWori4mI4OjoCQJVnSSMiIpCammr4vG7dOpMeDxERmVeDCk0AsLe3R9++fdG3b1+88cYbmDx5MhYsWHDP0CwsLMTChQsxZMiQardnKt7e3rh69arRvMrKSty4caPGNyIREZH5NJjLszVp06aN0fietra20Ol0Rm06deqEtLQ0tGrVqsp055vzDx48aLTewYMHERoaKruWiIgI5OXlISUlxTBv9+7d0Ov16N69e20PjYiITKzBnGlev34dw4YNw//8z/+gQ4cOcHZ2xpEjR7B48WIMHjzY0K5FixZISEhAz549odFo0LhxY8yfPx9PP/00mjdvjr/+9a9QqVQ4fvw4Tp06hX/+85+GdTdu3IguXbrgsccew+eff45Dhw5h9erVhuV3v/3obqGhoejfvz+mTJmClStXoqKiAjNnzsTIkSPh6+ur3BeHiIjkMVk/XCtRUxfj0tJSMXfuXNGpUyfh6uoqHB0dRXBwsHj99ddFcXGxod13330nWrVqJWxsbIweOdmxY4fo0aOHcHBwEC4uLqJbt25i1apVhuUAxPLly0Xfvn2FRqMRLVq0EF999ZVRDb169RLjx4+/Z/3Xr18Xo0aNEk5OTsLFxUVMnDhRFBQU1P0LQkTUQCnxyIkkhBAWzm2Tys/Ph6urK7RarVlHOZEkCZs3b0Z0dLTZ9klERDVTIg8a/D1NIiIiuRiaREREMjWYjkBKe8iuchMRUTV4pklERCQTQ5OIiEgmhiYREZFMDE0iIiKZGJpEREQyMTSJiIhkYmgSERHJxNAkIiKSiaFJREQkE0OTiIhIJoYmERGRTAxNIiIimRiaREREMjE0iYiIZGJoEhERycTQJCIikomhSUREJBNDk4iISCaGJhERkUwMTSIiIpkYmkRERDIxNImIiGRiaBIREcnE0CQiIpJJ0dDct28fBg0aBF9fX0iShC1bttyzfWJiIiRJqjLl5OQoWSYREZEsioZmUVERwsLCsHz58lqtl5aWhuzsbMPk6empUIVERETy2Si58QEDBmDAgAG1Xs/T0xNubm6mL4iIiOgBWOU9zY4dO8LHxwd9+/bFgQMH7tm2rKwM+fn5RhMREZESrCo0fXx8sHLlSnzzzTf45ptv4Ofnh969e+Po0aM1rhMbGwtXV1fD5OfnZ8aKiYioIZGEEMIsO5IkbN68GdHR0bVar1evXmjevDk+/fTTapeXlZWhrKzM8Dk/Px9+fn7QarVwcXF5kJKJiKgey8/Ph6urq0nzQNF7mqbQrVs3/PTTTzUu12g00Gg0ZqyIiIgaKqu6PFud1NRU+Pj4WLoMIiIiZc80CwsLceHCBcPn9PR0pKamwt3dHc2bN8e8efOQlZWFdevWAQDeffddBAQEoG3btigtLcXHH3+M3bt348cff1SyTCIiIlkUDc0jR47giSeeMHyePXs2AGD8+PGIi4tDdnY2MjIyDMvLy8sxZ84cZGVlwdHRER06dMCuXbuMtkFERGQpZusIZC5K3PglIqL6R4k8sPp7mkRERNaCoUlERCQTQ5OIiEgmhiYREZFMDE0iIiKZGJpEREQyMTSJiIhkYmgSERHJxNAkIiKSiaFJREQkE0OTiIhIJoYmERGRTAxNIiIimRiaREREMjE0iYiIZGJoEhERycTQJCIikomhSUREJBNDk4iISCaGJhERkUwMTSIiIpkYmkRERDIxNImIiGRiaBIREcnE0CQiIpKJoUlERCQTQ5OIiEgmhiYREZFMDE0iIiKZGJpEREQyMTSJiIhkYmgSERHJxNAkIiKSiaFJREQkE0OTiIhIJoYmERGRTAxNIiIimRQNzX379mHQoEHw9fWFJEnYsmXLfddJTExEp06doNFo0KpVK8TFxSlZIhERkWyKhmZRURHCwsKwfPlyWe3T09Px1FNP4YknnkBqaipiYmIwefJk7Ny5U8kyiYiIZLFRcuMDBgzAgAEDZLdfuXIlAgICsHTpUgBAaGgofvrpJyxbtgxRUVFKlUlERCSLVd3TTEpKQmRkpNG8qKgoJCUlWagiIiKiPyl6pllbOTk58PLyMprn5eWF/Px8lJSUwMHBoco6ZWVlKCsrM3zOz89XvE4iImqYrOpMsy5iY2Ph6upqmPz8/CxdEhERPaSsKjS9vb2Rm5trNC83NxcuLi7VnmUCwLx586DVag1TZmamOUolIqIGyKouz0ZEROD77783mhcfH4+IiIga19FoNNBoNEqXRkREpOyZZmFhIVJTU5Gamgrg1iMlqampyMjIAHDrLHHcuHGG9tOmTcOlS5fwyiuv4Ny5c1ixYgU2bNiAl156SckyiYiIZFE0NI8cOYLw8HCEh4cDAGbPno3w8HDMnz8fAJCdnW0IUAAICAjA9u3bER8fj7CwMCxduhQff/wxHzchIiKrIAkhhKWLMKX8/Hy4urpCq9XCxcXF0uUQEZGFKJEHVtURiIiIyJoxNImIiGRiaBIREcnE0CQiIpKJoUlERCQTQ5OIiEgmhiYREZFMDE0iIiKZGJpEREQyMTSJiIhkYmgSERHJxNAkIiKSiaFJREQkE0OTiIhIJoYmERGRTAxNIiIimRiaREREMjE0iYiIZGJoEhERycTQJCIikomhSUREJBNDk4iISCaGJhERkUwMTSIiIpkYmkRERDIxNImIiGRiaBIREcnE0CQiIpKJoUlERCQTQ5OIiEgmhiYREZFMDE0iIiKZGJpEREQyMTSJiIhkYmgSERHJxNAkIiKSiaFJREQkk1lCc/ny5WjRogXs7e3RvXt3HDp0qMa2cXFxkCTJaLK3tzdHmURERPekeGh+9dVXmD17NhYsWICjR48iLCwMUVFRuHr1ao3ruLi4IDs72zBdvnxZ6TKJiIjuS/HQ/M9//oMpU6Zg4sSJaNOmDVauXAlHR0d88sknNa4jSRK8vb0Nk5eXl9JlEhER3ZeioVleXo6UlBRERkb+uUOVCpGRkUhKSqpxvcLCQvj7+8PPzw+DBw/G6dOnlSyTiIhIFhslN/77779Dp9NVOVP08vLCuXPnql0nODgYn3zyCTp06ACtVoslS5agR48eOH36NB555JEq7cvKylBWVmb4nJ+fb9qDIDIDvdDjiv7KrUl3Bb/rf0cFKqCGGq6SKx5RP4JHVI/AX+0PO8nO0uUSNViKhmZdREREICIiwvC5R48eCA0NxYcffohFixZVaR8bG4uFCxeas0QikykSRThccRgHKg7gprgJAFBBBT30hjYSJJzQnYCAgAYadLftjgjbCHioPCxVNlGDpWhoNm3aFGq1Grm5uUbzc3Nz4e3tLWsbtra2CA8Px4ULF6pdPm/ePMyePdvwOT8/H35+fnUvmsgMhBBIrkzGt2XfohKVEBCGZXcGJgCjZWUow08VP2FfxT78xfYvGGA3gGeeRGak6D1NOzs7dO7cGQkJCYZ5er0eCQkJRmeT96LT6XDy5En4+PhUu1yj0cDFxcVoIrJmBfoCfFjyIb4u+xoVqDAKRTluh+pPFT/h38X/RoYuQ4kyiagaiveenT17Nj766COsXbsWZ8+exfTp01FUVISJEycCAMaNG4d58+YZ2r/11lv48ccfcenSJRw9ehRjx47F5cuXMXnyZKVLJVLcTf1NvFfyHi7pLz3wtgQE8kQeVpSswPnK8yaojojuR/F7miNGjMC1a9cwf/585OTkoGPHjtixY4ehc1BGRgZUqj+z++bNm5gyZQpycnLQuHFjdO7cGT///DPatGmjdKlEiioUhfig5ANohbbKJdi6EhDQQYfVpasxzWEaWqhbmGS7RFQ9SQhRu2tDVi4/Px+urq7QarW8VEtWQwiBuNI4nNWdNVlg3kmCBGfJGa84vgJ7iW/QIgKUyQO+e5bIDI5VHsNp3WlFAhO4dcZZIAqwtWyrItsnolsYmkQKqxAV2Fy2WfH9CNzqkXtFd0XxfRE1VAxNIoUdrzyOEpSYZV8qqHCg4oBZ9kXUEDE0iRS2v2I/JEhm2ZceehytPIpiUWyW/RE1NAxNIgUV6AuQpc+q9bOYD0IHHc7r+AgKkRIYmkQKuqI3//1FFVS8r0mkEIYmkYKy9FlQmfnXTA89MnWZZt0nUUPB0CRSUIEosMh+tUJrkf0SPewYmkQK0gmdZfYLy+yX6GHH0CRSkI1kY7aes3eyha3Z90nUEDA0iRTUVGqq2FuAaiJBgqfK06z7JGooGJpECnpE/YhZHze5c79EZHoMTSIF+ap8zX55VkDAT8WB2ImUwNAkUpCdZId26nZmfezESXJCS3VLs+2PqCFhaBIp7DG7x8x2X1OChB62PaCW1GbZH1FDw9AkUligKhC+Kl+znG3awAaP2jyq+H6IGiqGJpHCJEnCSM1Is+zrGc0zcFFx8HUipTA0iczAV+2Lfnb9FNu+Ciq0UrXiWSaRwhiaRGbypO2T6KDuYPLetCqo4C654zmH5yBJ5n+RAlFDwtAkMhOVpMIY+zEIU4eZbJsSJDSVmuJ5h+fRSGpksu0SUfVsLF0AUUOiltQYbT8azSuaY3v5dgiIOvWslSBBQKCrTVc8o3kG9pK9AtUS0d0YmkRmppJUeNzucYTahOLr0q9xUX8RKqhkheftdo2lxhiqGYpgm2AzVExEtzE0iSzEQ+WB6Y7TkaPLQVJlEo5WHEUJSgDcOpO8fe/zdpjawAYh6hD0sO2BVupWUEm8u0JkbpIQwvwvxlRQfn4+XF1dodVq4eLCrvdUfwghkCfycEV/Bdf111GJSqihhrPkjEdUj8BT5cmgJKoFJfKAZ5pEVkKSJDSWGqOxqrGlSyGiGvCfrURERDIxNImIiGRiaBIREcnE0CQiIpKJoUlERCQTe88SUZ0VikIUi2LooYcd7OAmufGxGHqoMTSJSLZiUYyUihSc151Hhi4DhSg0Wm4DG/iqfOGv9kcXmy5opm5moUqJlMHQJKL7uqG/gfjyeBytPGp4Q5FA1feiVKISGfoMXNFfwf6K/fBT+aGPXR+0s2ln7pKJFMHQJKIa6YUeBysPYmvZVuigk/1y+dvtruivIK40Du3V7TFEMwTOKmclyyVSHEOTiKpVLsqxtnQt0nRpdd7G7bPR07rTuFB8AZMdJsNf7W+qEonMjnfsiaiKclGOVSWr8IvuF5NsTw89SlGKD0o+QLou3STbJLIEhiYRGRFC4LPSz3BZf7na+5Z13i4EdNDho5KP8Lv+d5Ntl8icGJpEZORI5RGc0Z0xaWDeJiBQiUp8Wfol9KL2g28TWZpZQnP58uVo0aIF7O3t0b17dxw6dOie7Tdu3IiQkBDY29ujffv2+P77781RJlGDp9Vrsblss6L70EOPy/rLOFBxQNH9EClB8dD86quvMHv2bCxYsABHjx5FWFgYoqKicPXq1Wrb//zzzxg1ahQmTZqEY8eOITo6GtHR0Th16pTSpRI1ePsq9qESlWbZV3x5PCqFefZFZCqKD0LdvXt3dO3aFf/3f/8HANDr9fDz88MLL7yAuXPnVmk/YsQIFBUVYdu2bYZ5jz76KDp27IiVK1fed38chJqobipEBRYWLUQpSs22z9Ga0ehk28ls+6OGRYk8UPRMs7y8HCkpKYiMjPxzhyoVIiMjkZSUVO06SUlJRu0BICoqqsb2ZWVlyM/PN5qIqPZOVp40a2BKkJBUUf3vNZG1UjQ0f//9d+h0Onh5eRnN9/LyQk5OTrXr5OTk1Kp9bGwsXF1dDZOfn59piidqYNJ16VCZsW+ggECGPgM6oTPbPokeVL3vPTtv3jxotVrDlJmZaemSiOqly/rLst/4Yyo66JCrzzXrPokehKJvBGratCnUajVyc41/KXJzc+Ht7V3tOt7e3rVqr9FooNFoTFMwUQNmqfDK0efAV+1rkX0T1ZaiZ5p2dnbo3LkzEhISDPP0ej0SEhIQERFR7ToRERFG7QEgPj6+xvZE9OB0QgcdLHOZ1Jz3UYkelOLvnp09ezbGjx+PLl26oFu3bnj33XdRVFSEiRMnAgDGjRuHZs2aITY2FgDw4osvolevXli6dCmeeuoprF+/HkeOHMGqVauULpWILECCZOkSiGRTPDRHjBiBa9euYf78+cjJyUHHjh2xY8cOQ2efjIwMqFR/nvD26NEDX3zxBV5//XW89tpraN26NbZs2YJ27Ti0EJFS1JIaNrAx2zOad7KHvdn3SVRXij+naW58TpOobv5b/F9k6s3fke7vjn+Ht6r6PgtED6LePadJRPVHc3Vzsz5yAgA2sIGn5GnWfRI9CIYmEQEAAtWBZn3kRIKEAHUAVBL/DFH9wZ9WIgIAtFW3hSMczbY/AYEetj3Mtj8iU2BoEhEAwEayQQ/bHmbrzeosOaONuo1Z9kVkKgxNIjL4i91fzNabdYDdAKgltVn2RWQqDE0iMmgkNcIw+2GK7kMFFYLUQehq01XR/RApgaFJREY62HRAZ5vOilymlSDBHvYYoRkBSeJLDaj+YWgSURXDNMMQrA42aXCqoIIGGkxzmAZXlavJtktkTgxNIqrCRrLBBPsJCLcJN8n2JEhwlpwx02EmX85O9Zrir9EjovrJRrLBaPvRaFvZFl+Xfo1SlEKgdi8QU0EFPfTobtMdT2uehr3EV+ZR/cbQJKJ7CrMJQ8tGLZFYnojkimSUoMQQhtW585JusDoYve16o6W6pbnKJVIUQ5OI7stJcsLTmqcRZReFk5UncUF3ARm6DOSKXKOzTyfJCc1VzeGv9ke4TTjcVe4WrJrI9BiaRCSbrWSLTrad0Mm2EwCgUlSiHOXQQw9b2EIjcUB4ergxNImozmwkG9jwzwg1IPxpJyKqo6LKIpwvPI9fCn7BLwW/4LeS31CmL4OAgL3KHt723mjt3BpBzkEIcgqCs62zpUumB8TQJCKqBZ3Q4fCNw9iStQWHbhyCgID0x393d45KK0jD3mt7DfM7unXEs82eRc8mPaFW8RWC9RFDk4hIBp3Q4bus7/Bl5pe4VnYNKqgMnaDEH//d7e4QPZF3Aql5qXCzdcNwv+H46yN/ha3K1iz1k2lIQojaPXhl5ZQYqZuIGraMogzEnovFuYJzJtumBAn+jv54LfQ1tHZubbLt0p+UyAO+EYiIqAZCCGzI3IBJRybhl4JfTLttCGQUZ+BvKX/DJ+mfQC/MNwA41R0vzxIRVUMv9Hjv/Hv49rdvldvHH5dvP738KbKKszAvdB5sVPyzbM14pklEdBchBJb9skzRwLzbnmt78NaZt6ATOrPtk2qPoUlEdJe1v67FtuxtZt2ngMBPv/+E986/Z9b9Uu0wNImI7nBGewbrLq+zyL4FBL777TskX0+2yP7p/hiaRER/KNOV4e2zbysyALdcEiS8c+4dFFQUWKwGqhlDk4joD2t+XYPs0uwaR3AxBwEBbYUWKy6usFgNVDOGJhERgMKKQmy6sqnWY4YqQQ89dubsxNXSq5Yuhe7C0CQiArAjZwcqRaWlyzCQIGHrb1stXQbdhaFJRA2eXujxTdY3VnGWeZseenz727eo0FdYuhS6A0OTiBq8c/nnkFOaY+kyqiioLMDhG4ctXQbdgaFJRA3emYIzFu0xWxO1pDbp+27pwTE0iajB+6XgF6sMTb3Q41w+Q9OaMDSJqME7oz1j0cdMaiIgcK7gHB6ywajqNYYmETV4OWXWdz/ztoLKAhTrii1dBv2BoUlEDZpO6Kz+Jenl+nJLl0B/4Bg0RA1cRUEBCs+fR8Evv6D8+nXoy2/9gVZpNLD38YFzUBCcWraE2t7ewpUqpB5c+eRYm9aDoUnUABVnZSF761Zc3bMHZVf/eOuMSgVJpQKEAKRbnWKETmf47OjnB69+/eAzcCDsGje2YPWmpVapoYLKKu9p3qZRaSxdAv2BoUnUgFxPTkbmhg3IO3oUUKkA/R1BoddD6GsIDiFQnJGB9NWr8euaNfB4/HH4jRgB5+Bg8xSuMFdbV9ysuGnpMqplp7KDg42DpcugPyh6T/PGjRsYM2YMXFxc4ObmhkmTJqGwsPCe6/Tu3RuSJBlN06ZNU7JMoodeeV4eTr/5Jk7OnYu81NRbM2sKyHsRAkKnw7V9+5AyfTourlwJXVmZSWu1hFCXUKt85AQAWjq1hFpSW7oM+oOioTlmzBicPn0a8fHx2LZtG/bt24epU6fed70pU6YgOzvbMC1evFjJMokealcTE3Houedwbf/+WzPqEpZ3uX3ZNnPDBhyeOBHa06cfeJuWFOIcYpWhqZbUaOPcxtJl0B0Uuzx79uxZ7NixA4cPH0aXLl0AAO+//z4GDhyIJUuWwNfXt8Z1HR0d4e3trVRpRA2CEAKXP/0Uv65Zc+sepYmf9RMACoQT0nJcEP/CBjhH9Iatrx9sbSU4OtogMLARgoKc0bSp9d+PC3IOssp7mjqhQ5BzkKXLoDsoFppJSUlwc3MzBCYAREZGQqVSITk5Gc8++2yN637++ef47LPP4O3tjUGDBuGNN96Ao6NjtW3LyspQdsflofz8fNMdBFE9lv7xx8j44otbH0wUmAJAOgKQgs5IRwBK4AgIQIIO0s96SKpMSCoVhBDQ/fEUh4uLDTp1aoxnnvFFx45ukCTrO6MLcwuDo9rR6p6HtJFs0N29u6XLoDsoFpo5OTnw9PQ03pmNDdzd3ZGTU/ODxKNHj4a/vz98fX1x4sQJvPrqq0hLS8OmTZuqbR8bG4uFCxeatHai+i7jq6/+DEwTqIANjqALDqMrbsIdKuigx5/32QTUt57c0APQGwd0fn4l9u+/hsTEa2jWzAHR0c0waJAPNBrruU9nr7bH0z5P4+srX1vNGacaajzp+SRc7VwtXQrdodb3NOfOnVulo87d07lzdX9X4tSpUxEVFYX27dtjzJgxWLduHTZv3oyLFy9W237evHnQarWGKTMzs877JnoY5J87h0sffmiy7V1GcyzHDPyIfriJW4+a3BmYctw+6/zttxKsWHEBEycexsmTWpPVaArP+D5jNYEJADroEN0s2tJl0F1qfaY5Z84cTJgw4Z5tAgMD4e3tjatXjUcdr6ysxI0bN2p1v7J791uXJi5cuICWLVtWWa7RaKDRWP89EyJz0JWX4+zbb5vkHmY5bJGAPjiE7pCgB0zQUeZ2Sbm5pZg16xiGDm2GyZMDYW9v+bPOZo7NENEkAoeuH4IOln1DkBpqBLkEIdQl1KJ1UFW1Dk0PDw94eHjct11ERATy8vKQkpKCzp07AwB2794NvV5vCEI5Uv/oHu/j41PbUokanF/j4lCSlfXAgVkMB3yKscjFrX/gChN3tL/dgXfTpiycOpWPxYs7wMXF1qT7qIuY1jEYf3M8dHrLhqYkSXgl+BWL1kDVU+yRk9DQUPTv3x9TpkzBoUOHcODAAcycORMjR4409JzNyspCSEgIDh06BAC4ePEiFi1ahJSUFPz666/47rvvMG7cODz++OPo0KGDUqUSPRTKb97ElQ0bTBKYn+B/kAtvk4fl3YQAzp8vwKxZx5CfX6HovuTwtPfErNazLF0GJgVMQotGLSxdBlVD0d+Izz//HCEhIejTpw8GDhyIxx57DKtWrTIsr6ioQFpaGoqLb/VYs7Ozw65du9CvXz+EhIRgzpw5GDp0KLZu3apkmUQPhezt2x94CKly2GIdxuEGGisemLfp9UBmZjFefvk4Skos/+L0/t790c29G1QWGM9CBRVCnEMwzG+Y2fdN8kjiIRuoLT8/H66urtBqtXBxcbF0OURmodfpcHDECJRfv/5A29mOgUhBZ7MF5p1UKiA6uhleeKG12fd9t6LKIsSkxuBS4SWzdQ5SQw0vey/8X6f/Q2O7h+fdvpakRB5waDCih8DNI0ceODAvIQBH0NUigQncOuPctCkLqal5Ftn/nRrZNMKSsCUIdAo0yxmnCip4O3jj3Y7vMjCtHEOT6CGgPXkSkrruPVDLYIctiP6jl6zlqFRAbOxZlJRUWrQO4NZL3P/b8b/o0rjL/Rs/oFCXUCwPXw4P+/t3siTLYmgSPQQKzp2reYQSGQ6jKwrhZLGzzNv0euDatTJs3Zpt0Tpuc7RxxL86/AsvB78MB7WDSV+croYatpItZrSagf+G/5cvMagnGJpE9ZwQAvnnztW516weEg6hG4SVvLBcCGDTpivQ662ju4UkSRjoMxBru641vNLuQS7Z3g7e9m7tsabrGvz1kb9yFJN6hONpEtVzFXl50BUV1Xn982iNAlhXp7nc3DIcOXID3bo1sXQpBh72Hni7/du4UnwF3/32HbZnb0exrhhqSQ290EOg5pBXS2rohA4alQb9vftjsO9gBDgFmLF6MhWGJlE9pyspeaD1U9AZEnQQtXw1npLUauC7736zqtC87RHHR/B8q+cxKWASjtw8grSCNKQVpOFc/jnkVxoPGNFI3QghLiEIdg5GkHMQujbuCkeb6gefoPqBoUlUz4nKuneaEQAuw9+qAhO49a7aEye0EEJY5agoAKBRa9CzaU/0bNoTwK3L5BWiAuX6ckAAdmo72Eq2Vls/1Q1Dk6ieU9nZ1XndPLihHNb57uaCgkpcu1YGT097S5ciiyRJsJPsYKeq+/eDrB87AhHVczbOznVe9zfUPBi8NUhLK7B0CURGGJpE9ZxNo0bQ3DV2rVxX4QmVhUf0qIlaLSE9ve4dnIiUwNAkegi4tG17680AtVQO672UKElAaal1Bjo1XAxNooeAc1BQndbTW/mfgIoK63hWk+g26/6NISJZ3Lt1+3OQylpQW+ml2dvs7PgniqwLfyKJHgJOgYFwadOm1pdoHVBiNW8CupteL+DkxA7+ZF0YmkQPiWZDh9b6bNMbORZ/32xN9HqgdWsnS5dBZMQ6f1uIqNY8/vIX2Lq53epBI5MPrOPF6DUJCqr74zRESmBoEj0kVLa2CIqJqdWL251QhEYoVK6oB+DhoYGLi62lyyAywtAkeoh49OoFjyeeqNW9zdY4b3XPaqrVErp3d7d0GURVMDSJHjJBL74IGycn2cHZFYeht7p3zwoMHtzM0mUQVcHQJHrI2Lq6ov3//i9UNjay7m/6Ihs++A0S6j6ItSmpVECbNi5o1YqdgMj6MDSJHkKubdui/b/+BZWtrawzzu5ItppetHo9MHQozzLJOlnHbwkRmVzj8HCELVsGG0fH+wZne5zEI8i0+L1NtRro0MEVvXvX7V26REpjaBI9xFzbtEHXtWvRJCLi1owaLteqIPAsNkOCwK1RNi1DrVZh7twQqFTW+cIFIoYm0UNO4+6OdosWoc0bb8CmUaNbM6sJT3fcRF/EAxZ8Q9Dzz7eEj4+DxfZPdD8MTaIGQJIkeD75JB7dsAFBL70ER3//W/PVxr1mu+EQwpAKS5xtDhjgjWeese7xPYkkIWrxJHQ9kJ+fD1dXV2i1Wri4uFi6HCKrJIRA/pkz+H3/fuSfPYvC8+ehKykBAOgh4RsMxRm0gbnOOp980hOvvRYKtZqXZcl0lMgDvg2ZqAGSJAmubdvCtW1bAIDQ61GSnY3y33+HvqwM7SHho28rEf9zGSSpVi8ZqkUNt7Y7eLAvZs1qzfuYVC8wNIkIkkoFx2bN4Njsz0c95nUViEi8hv/85xcUF1fWZeSxGqlUgJOTDWbPDkavXh6m2zCRwnhPk4iqJUkSnnjCE59+2g1/+cutYHvQy6e31+/d2xPr1nVjYFK9wzNNIronNzc7vPlmW6Sl5ePbb3/Drl25qKwUkCR5I5GpVLcuw9rYSOjb1wuDBzfj6CVUb7EjEBHVSkFBBeLjc3H8eB7Oni3AtWtlNbb18NCgTRsXhIW5oW9fTzg5cdQSMh8l8oChSUQPpKCgApcuFaG4WIeKCj1sbVVwdFQjMLARnJ0ZkmQ57D1LRFbH2dkWYWFuli6DyCzYEYiIiEgmhiYREZFMDE0iIiKZGJpEREQyKRaab7/9Nnr06AFHR0e4ubnJWkcIgfnz58PHxwcODg6IjIzE+fPnlSqRiIioVhQLzfLycgwbNgzTp0+Xvc7ixYvx3nvvYeXKlUhOTkajRo0QFRWF0tJSpcokIiKSTfHnNOPi4hATE4O8vLx7thNCwNfXF3PmzMHf//53AIBWq4WXlxfi4uIwcuRIWfvjc5pERAQokwdWc08zPT0dOTk5iIyMNMxzdXVF9+7dkZSUVON6ZWVlyM/PN5qIiIiUYDWhmZOTAwDw8vIymu/l5WVYVp3Y2Fi4uroaJj8/P0XrJCKihqtWoTl37lxIknTP6dy5c0rVWq158+ZBq9UapszMTLPun4iIGo5avUZvzpw5mDBhwj3bBAYG1qkQb29vAEBubi58fHwM83Nzc9GxY8ca19NoNNBoNHXaJxERUW3UKjQ9PDzg4aHM+HcBAQHw9vZGQkKCISTz8/ORnJxcqx64RERESlHsnmZGRgZSU1ORkZEBnU6H1NRUpKamorCw0NAmJCQEmzdvBnBrwNuYmBj885//xHfffYeTJ09i3Lhx8PX1RXR0tFJlEhERyabYKCfz58/H2rVrDZ/Dw8MBAHv27EHv3r0BAGlpadBqtYY2r7zyCoqKijB16lTk5eXhsccew44dO2Bvb69UmURERLJxPE0iInooPdTPaRIREVk7hiYREZFMDE0iIiKZGJpEREQyMTSJiIhkYmgSERHJxNAkIiKSiaFJREQkE0OTiIhIJoYmERGRTAxNIiIimRiaREREMjE0iYiIZGJoEhERycTQJCIikomhSUREJBNDk4iISCaGJhERkUwMTSIiIpkYmkRERDIxNImIiGRiaBIREcnE0CQiIpKJoUlERCQTQ5OIiEgmhiYREZFMDE0iIiKZGJpEREQyMTSJiIhkYmgSERHJxNAkIiKSiaFJREQkE0OTiIhIJoYmERGRTAxNIiIimRiaREREMjE0iYiIZFIsNN9++2306NEDjo6OcHNzk7XOhAkTIEmS0dS/f3+lSiQiIqoVG6U2XF5ejmHDhiEiIgKrV6+WvV7//v2xZs0aw2eNRqNEeURERLWmWGguXLgQABAXF1er9TQaDby9vRWoiIiI6MFY3T3NxMREeHp6Ijg4GNOnT8f169fv2b6srAz5+flGExERkRKsKjT79++PdevWISEhAe+88w727t2LAQMGQKfT1bhObGwsXF1dDZOfn58ZKyYiooakVqE5d+7cKh117p7OnTtX52JGjhyJZ555Bu3bt0d0dDS2bduGw4cPIzExscZ15s2bB61Wa5gyMzPrvH8iIqJ7qdU9zTlz5mDChAn3bBMYGPgg9VTZVtOmTXHhwgX06dOn2jYajYadhYiIyCxqFZoeHh7w8PBQqpYqrly5guvXr8PHx8ds+yQiIqqJYvc0MzIykJqaioyMDOh0OqSmpiI1NRWFhYWGNiEhIdi8eTMAoLCwEC+//DIOHjyIX3/9FQkJCRg8eDBatWqFqKgopcokIiKSTbFHTubPn4+1a9caPoeHhwMA9uzZg969ewMA0tLSoNVqAQBqtRonTpzA2rVrkZeXB19fX/Tr1w+LFi3i5VciIrIKkhBCWLoIU8rPz4erqyu0Wi1cXFwsXQ4REVmIEnlgVY+cEBERWTOGJhERkUwMTSIiIpkYmkRERDIxNImIiGRiaBIREcnE0CQiIpKJoUlERCQTQ5OIiEgmhiaZXIsWLfDuu+9augwiIpNjaFqIJEnYsmWL7PbZ2dkYPXo0goKCoFKpEBMTo1ht1qCkpATu7u5o2rQpysrKLF0OEREAhma9UVZWBg8PD7z++usICwuzdDmK++abb9C2bVuEhITU6h8XRERKalChuWPHDjz22GNwc3NDkyZN8PTTT+PixYtGbX7++Wd07NgR9vb26NKlC7Zs2QJJkpCammpoc+rUKQwYMABOTk7w8vLCc889h99//92wvHfv3pg1axZeeeUVuLu7w9vbG2+++aZheYsWLQAAzz77LCRJMny+lxYtWuC///0vxo0bB1dXV1nHe/PmTYwZMwYeHh5wcHBA69atsWbNGsPyzMxMDB8+HG5ubnB3d8fgwYPx66+/GpZPmDAB0dHRWLJkCXx8fNCkSRPMmDEDFRUVhjZXr17FoEGD4ODggICAAHz++edGNQgh8Oabb6J58+bQaDTw9fXFrFmz7lv76tWrMXbsWIwdOxarV6+WdbxEREprUKFZVFSE2bNn48iRI0hISIBKpcKzzz4LvV4P4NYb8QcNGoT27dvj6NGjWLRoEV599VWjbeTl5eHJJ59EeHg4jhw5gh07diA3NxfDhw83ard27Vo0atQIycnJWLx4Md566y3Ex8cDAA4fPgwAWLNmDbKzsw2fTe2NN97AmTNn8MMPP+Ds2bP44IMP0LRpUwBARUUFoqKi4OzsjP379+PAgQNwcnJC//79UV5ebtjGnj17cPHiRezZswdr165FXFwc4uLiDMsnTJiAzMxM7NmzB19//TVWrFiBq1evGpZ/8803WLZsGT788EOcP38eW7ZsQfv27e9Z98WLF5GUlIThw4dj+PDh2L9/Py5fvmzaLw4RUV2Ih4xWqxUAhFarvW/ba9euCQDi5MmTQgghPvjgA9GkSRNRUlJiaPPRRx8JAOLYsWNCCCEWLVok+vXrZ7SdzMxMAUCkpaUJIYTo1auXeOyxx4zadO3aVbz66quGzwDE5s2b63KIolevXuLFF1+8b7tBgwaJiRMnVrvs008/FcHBwUKv1xvmlZWVCQcHB7Fz504hhBDjx48X/v7+orKy0tBm2LBhYsSIEUIIIdLS0gQAcejQIcPys2fPCgBi2bJlQgghli5dKoKCgkR5ebns43vttddEdHS04fPgwYPFggULZK9PRCRE7fJArgZ1pnn+/HmMGjUKgYGBcHFxMVwWzcjIAHBrUOwOHTrA3t7esE63bt2MtnH8+HHs2bMHTk5OhikkJAQAjC71dujQwWg9Hx8fozMwc5g+fTrWr1+Pjh074pVXXsHPP/9sWHb8+HFcuHABzs7OhuNwd3dHaWmp0XG0bdsWarW62uM4e/YsbGxs0LlzZ8PykJAQuLm5GT4PGzYMJSUlCAwMxJQpU7B582ZUVlbWWLNOp8PatWsxduxYw7yxY8ciLi7OcEWAiMhSbCxdgDkNGjQI/v7++Oijj+Dr6wu9Xo927doZXY68n8LCQgwaNAjvvPNOlWU+Pj6G/7e1tTVaJkmS2f/oDxgwAJcvX8b333+P+Ph49OnTBzNmzMCSJUtQWFiIzp07V7kHCQAeHh6G/3/Q4/Dz80NaWhp27dqF+Ph4PP/88/j3v/+NvXv3Vtk2AOzcuRNZWVkYMWKE0XydToeEhAT07dtX9r6JiEytwZxpXr9+HWlpaXj99dfRp08fhIaG4ubNm0ZtgoODcfLkSaNHHO6+39ipUyecPn0aLVq0QKtWrYymRo0aya7H1tYWOp3uwQ5KBg8PD4wfPx6fffYZ3n33XaxatQrAreM4f/48PD09qxyH3I5GISEhqKysREpKimFeWloa8vLyjNo5ODhg0KBBeO+995CYmIikpCScPHmy2m2uXr0aI0eORGpqqtE0cuRIdggiIotrMKHZuHFjNGnSBKtWrcKFCxewe/duzJ4926jN6NGjodfrMXXqVJw9exY7d+7EkiVLANw6wwKAGTNm4MaNGxg1ahQOHz6MixcvYufOnZg4cWKtQrBFixZISEhATk5OlfCuye0AKSwsxLVr15CamoozZ87U2H7+/Pn49ttvceHCBZw+fRrbtm1DaGgoAGDMmDFo2rQpBg8ejP379yM9PR2JiYmYNWsWrly5Ique4OBg9O/fH3/729+QnJyMlJQUTJ48GQ4ODoY2cXFxWL16NU6dOoVLly7hs88+g4ODA/z9/ats79q1a9i6dSvGjx+Pdu3aGU3jxo3Dli1bcOPGDVm1EREpocGEpkqlwvr165GSkoJ27drhpZdewr///W+jNi4uLti6dStSU1PRsWNH/OMf/8D8+fMBwHCf09fXFwcOHIBOp0O/fv3Qvn17xMTEwM3NDSqV/C/n0qVLER8fDz8/P4SHh8taJzw8HOHh4UhJScEXX3yB8PBwDBw4sMb2dnZ2mDdvHjp06IDHH38carUa69evBwA4Ojpi3759aN68OYYMGYLQ0FBMmjQJpaWlcHFxkX0ca9asga+vL3r16oUhQ4Zg6tSp8PT0NCx3c3PDRx99hJ49e6JDhw7YtWsXtm7diiZNmlTZ1rp169CoUSP06dOnyrI+ffrAwcEBn332mezaiIhMTRJCCEsXYUr5+flwdXWFVqut1R//mnz++eeYOHEitFqt0RkUERFZN1PnAdDAOgLJsW7dOgQGBqJZs2Y4fvw4Xn31VQwfPpyBSUREDefyrFw5OTkYO3YsQkND8dJLL2HYsGGGzjNKatu2rdFjLHdO1fVwJSIi8+PlWStx+fJlo9fT3cnLywvOzs5mroiIqH7j5dmHWHW9SYmIyLrw8iwREZFMDE0yudqOFUpEVF8wNC2kLsGSmJiITp06QaPRoFWrVkajjTxsrly5Ajs7O7Rr187SpRARGTA064n09HQ89dRTeOKJJ5CamoqYmBhMnjwZO3futHRpioiLi8Pw4cORn5+P5ORkS5dDRASggYVmfR6EeuXKlQgICMDSpUsRGhqKmTNn4q9//SuWLVtW4zqXL1/GoEGD0LhxYzRq1Aht27bF999/b7LjAG6NHPP444/D3t4ebdq0MYwZelt5eTlmzpwJHx8f2Nvbw9/fH7Gxsfc8ViEE1qxZg+eeew6jR4/mO2eJyGo0qNCsz4NQJyUlITIy0mheVFQUkpKSalxnxowZKCsrw759+3Dy5Em88847cHJyMtlx6PV6DBkyBHZ2dkhOTsbKlSurfL3ee+89fPfdd9iwYQPS0tLw+eef3/cfCXv27EFxcTEiIyMxduxYrF+/HkVFRff9GhERKc5kI3NaiYd1EOrWrVuL//3f/zWat337dgFAFBcXV7tO+/btxZtvvlntMlMcx86dO4WNjY3IysoyLP/hhx+Mju2FF14QTz75pNFg1/czevRoERMTY/gcFhYm1qxZI3t9IiIhOAj1A2tog1DPmjUL//znP9GzZ08sWLAAJ06cMCwzxXGcPXsWfn5+8PX1NSyPiIgwaj9hwgSkpqYiODgYs2bNwo8//njPmvPy8rBp06Yqg1DzEi0RWYMG9XKD+jwItbe3N3Jzc43m5ebmwsXFpcb34k6ePBlRUVHYvn07fvzxR8TGxmLp0qV44YUXzHYcnTp1Qnp6On744Qfs2rULw4cPR2RkJL7++utq23/xxRcoLS1F9+7dDfOEENDr9fjll18QFBQke99ERKbWYM406/sg1BEREUhISDCaFx8fX+XM7m5+fn6YNm0aNm3ahDlz5uCjjz4y2XGEhoYiMzMT2dnZhnkHDx6s0s7FxQUjRozARx99hK+++grffPNNjeNirl69GnPmzDEagPr48eP4y1/+gk8++URWXURESmkwoVnfB6GeNm0aLl26hFdeeQXnzp3DihUrsGHDBrz00ks1rhMTE4OdO3ciPT0dR48exZ49ewyDUJviOCIjIxEUFITx48fj+PHj2L9/P/7xj38YtfnPf/6DL7/8EufOncMvv/yCjRs3wtvbG25ublW2l5qaiqNHj2Ly5MlVBqEeNWoU1q5di8rKSlm1EREpocGEZn0fhDogIADbt29HfHw8wsLCsHTpUnz88ceIioqqcR2dTocZM2YgNDQU/fv3R1BQEFasWGGy41CpVNi8eTNKSkrQrVs3TJ48GW+//bZRG2dnZyxevBhdunRB165d8euvv+L777+vdh+rV69GmzZtDPdW7/Tss8/i6tWrRo/MEBGZm2KjnPz6669YtGgRdu/ejZycHPj6+mLs2LH4xz/+ATs7uxrXKy0txZw5c7B+/XqUlZUhKioKK1asgJeXl6z9chBqIiIC6tkoJ+fOnYNer8eHH36IVq1a4dSpU5gyZQqKiooMlzyr89JLL2H79u3YuHEjXF1dMXPmTAwZMgQHDhxQqlQjHISaiIhqZLKHV2RYvHixCAgIqHF5Xl6esLW1FRs3bjTMO3v2rAAgkpKSZO3jQZ/Leeedd4S/v7/QaDSiRYsWIiYmRhQVFdVpW7XRpk0b0ahRo2qnzz77TPH9ExE9bJR4TtOsj5xotVq4u7vXuDwlJQUVFRVGb74JCQlB8+bNkZSUhEcffbTKOmVlZUa9XbVaLYBbp+V1MW3aNEybNs1oXmVlZZ23J9dXX31V4yDUnp6eiu+fiOhhc/vvpjDhXUizheaFCxfw/vvv3/PSbE5ODuzs7Kr0rPTy8kJOTk6168TGxmLhwoVV5vv5+T1QvURE9HC4fv06XF1dTbKtWofm3Llzq30g/k5nz5416gGZlZWF/v37Y9iwYZgyZUrtq7yHefPmGT06kpeXB39/f2RkZJjsi2Ru+fn58PPzQ2ZmpsluXptTfa8fqP/HUN/rB+r/MbB+y9NqtWjevPk9r3DWVq1Dc86cOZgwYcI92wQGBhr+/7fffsMTTzyBHj16YNWqVfdcz9vbG+Xl5cjLyzM628zNzYW3t3e162g0Gmg0mirzXV1d6+03+jYXF5d6fQz1vX6g/h9Dfa8fqP/HwPotrzaPA95PrUPTw8MDHh4estpmZWXhiSeeQOfOnbFmzZr7Ft65c2fY2toiISEBQ4cOBXDrfbAZGRn3ffMNERGR0hR7uUFWVhZ69+6N5s2bY8mSJbh27RpycnKM7k1mZWUhJCQEhw4dAnDr7HDSpEmYPXs29uzZg5SUFEycOBERERHVdgIiIiIyJ8U6AsXHx+PChQu4cOECHnnkEaNlt3syVVRUIC0tDcXFxYZly5Ytg0qlwtChQ41ebiCXRqPBggULqr1kW1/U92Oo7/UD9f8Y6nv9QP0/BtZveUocg2JvBCIiInrYNJh3zxIRET0ohiYREZFMDE0iIiKZGJpEREQy1fvQ/PXXXzFp0iQEBATAwcEBLVu2xIIFC1BeXn7P9UpLSzFjxgw0adIETk5OGDp0KHJzc81UtbG3334bPXr0gKOjY7WDM1dnwoQJkCTJaOrfv7+yhd5DXY5BCIH58+fDx8cHDg4OiIyMxPnz55UttAY3btzAmDFj4OLiAjc3N0yaNAmFhYX3XKd3795Vvgd3v7dYScuXL0eLFi1gb2+P7t27Gx7dqsnGjRsREhICe3t7tG/f3uJjk9am/ri4uCpf69tj3FrKvn37MGjQIPj6+kKSJGzZsuW+6yQmJqJTp07QaDRo1aoV4uLiFK+zJrWtPzExscr3QJKkGl9xqrTY2Fh07doVzs7O8PT0RHR0NNLS0u673oP+HtT70LxzCLLTp09j2bJlWLlyJV577bV7rvfSSy9h69at2LhxI/bu3YvffvsNQ4YMMVPVxsrLyzFs2DBMnz69Vuv1798f2dnZhunLL79UqML7q8sxLF68GO+99x5WrlyJ5ORkNGrUCFFRUSgtLVWw0uqNGTMGp0+fRnx8PLZt24Z9+/Zh6tSp911vypQpRt+DxYsXm6HaWy/4nz17NhYsWICjR48iLCwMUVFRuHr1arXtf/75Z4waNQqTJk3CsWPHEB0djejoaJw6dcos9d6ttvUDt95Mc+fX+vLly2asuKqioiKEhYVh+fLlstqnp6fjqaeewhNPPIHU1FTExMRg8uTJ2Llzp8KVVq+29d+WlpZm9H3w9PRUqMJ727t3L2bMmIGDBw8iPj4eFRUV6NevH4qKimpcxyS/ByYbL8WKmGMIMiWsWbNGuLq6ymo7fvx4MXjwYEXrqQu5x6DX64W3t7f497//bZiXl5cnNBqN+PLLLxWssKozZ84IAOLw4cOGeT/88IOQJElkZWXVuF6vXr3Eiy++aIYKq+rWrZuYMWOG4bNOpxO+vr4iNja22vbDhw8XTz31lNG87t27i7/97W+K1lmT2tZfm98NSwAgNm/efM82r7zyimjbtq3RvBEjRoioqCgFK5NHTv179uwRAMTNmzfNUlNtXb16VQAQe/furbGNKX4P6v2ZZnUedAiy+iIxMRGenp4IDg7G9OnTcf36dUuXJFt6ejpycnKMvgeurq7o3r272b8HSUlJcHNzQ5cuXQzzIiMjoVKpkJycfM91P//8czRt2hTt2rXDvHnzjF7UoZTy8nKkpKQYfe1UKhUiIyNr/NolJSUZtQeAqKgoi/y816V+ACgsLIS/vz/8/PwwePBgnD592hzlmow1fQ8eRMeOHeHj44O+ffviwIEDli7H4PawkPf622+K74FZx9M0B6WGILM2/fv3x5AhQxAQEICLFy/itddew4ABA5CUlAS1Wm3p8u7r9tfZy8vLaL4lvgc5OTlVLjHZ2NjA3d39nrWMHj0a/v7+8PX1xYkTJ/Dqq68iLS0NmzZtUrTe33//HTqdrtqv3blz56pdJycnxyq+1kDd6g8ODsYnn3yCDh06QKvVYsmSJejRowdOnz5d5Y1j1qqm70F+fj5KSkrg4OBgocrk8fHxwcqVK9GlSxeUlZXh448/Ru/evZGcnIxOnTpZtDa9Xo+YmBj07NkT7dq1q7GdKX4PrPZMc+7cudXedL5zuvsXTMkhyGqrLvXXxsiRI/HMM8+gffv2iI6OxrZt23D48GEkJibWm2NQmtL1T506FVFRUWjfvj3GjBmDdevWYfPmzbh48aIJj4IAICIiAuPGjUPHjh3Rq1cvbNq0CR4eHvjwww8tXVqDERwcjL/97W/o3LkzevTogU8++QQ9evTAsmXLLF0aZsyYgVOnTmH9+vWK78tqzzStbQiy2qpt/Q8qMDAQTZs2xYULF9CnTx+TbFPJY7j9dc7NzYWPj49hfm5uLjp27Finbd5Nbv3e3t5VOqBUVlbixo0btfp56N69O4BbVztatmxZ63rlatq0KdRqdZXe3vf6+fX29q5VeyXVpf672draIjw8HBcuXFCiREXU9D1wcXGx+rPMmnTr1g0//fSTRWuYOXOmofPe/a46mOL3wGpDs74PQVab+k3hypUruH79ulEAPSgljyEgIADe3t5ISEgwhGR+fj6Sk5Nr3Yu4JnLrj4iIQF5eHlJSUtC5c2cAwO7du6HX6w1BKEdqaioAmPR7UB07Ozt07twZCQkJiI6OBnDr8lRCQgJmzpxZ7ToRERFISEhATEyMYV58fLxFhtyrS/130+l0OHnyJAYOHKhgpaYVERFR5fEGS30PTCU1NVXxn/eaCCHwwgsvYPPmzUhMTERAQMB91zHJ70FdeypZiytXrohWrVqJPn36iCtXrojs7GzDdGeb4OBgkZycbJg3bdo00bx5c7F7925x5MgRERERISIiIixxCOLy5cvi2LFjYuHChcLJyUkcO3ZMHDt2TBQUFBjaBAcHi02bNgkhhCgoKBB///vfRVJSkkhPTxe7du0SnTp1Eq1btxalpaX14hiEEOJf//qXcHNzE99++604ceKEGDx4sAgICBAlJSVmr79///4iPDxcJCcni59++km0bt1ajBo1yrD87p+hCxcuiLfeekscOXJEpKeni2+//VYEBgaKxx9/3Cz1rl+/Xmg0GhEXFyfOnDkjpk6dKtzc3EROTo4QQojnnntOzJ0719D+wIEDwsbGRixZskScPXtWLFiwQNja2oqTJ0+apd4HrX/hwoVi586d4uLFiyIlJUWMHDlS2Nvbi9OnT1ukfiFu/R7e/jkHIP7zn/+IY8eOicuXLwshhJg7d6547rnnDO0vXbokHB0dxcsvvyzOnj0rli9fLtRqtdixY0e9qH/ZsmViy5Yt4vz58+LkyZPixRdfFCqVSuzatcsi9U+fPl24urqKxMREo7/7xcXFhjZK/B7U+9Bcs2aNAFDtdFt6eroAIPbs2WOYV1JSIp5//nnRuHFj4ejoKJ599lmjoDWn8ePHV1v/nfUCEGvWrBFCCFFcXCz69esnPDw8hK2trfD39xdTpkwx/MGxhNoegxC3Hjt54403hJeXl9BoNKJPnz4iLS3N/MULIa5fvy5GjRolnJychIuLi5g4caJR4N/9M5SRkSEef/xx4e7uLjQajWjVqpV4+eWXhVarNVvN77//vmjevLmws7MT3bp1EwcPHjQs69Wrlxg/frxR+w0bNoigoCBhZ2cn2rZtK7Zv3262WqtTm/pjYmIMbb28vMTAgQPF0aNHLVD1n24/gnH3dLvu8ePHi169elVZp2PHjsLOzk4EBgYa/T6YW23rf+edd0TLli2Fvb29cHd3F7179xa7d++2TPFC1Ph3/86vqRK/BxwajIiISCar7T1LRERkbRiaREREMjE0iYiIZGJoEhERycTQJCIikomhSUREJBNDk4iISCaGJhERkUwMTSIiIpkYmkRERDIxNImIiGRiaBIREcn0/1cEiQl/aAZyAAAAAElFTkSuQmCC", "text/plain": [ "
" - ], - "image/png": "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\n" + ] }, - "metadata": {} + "metadata": {}, + "output_type": "display_data" } + ], + "source": [ + "%matplotlib inline\n", + "\n", + "import matplotlib.animation as animation\n", + "import jax\n", + "from jaxmarl import make\n", + "from jaxmarl.environments.mpe import MPEVisualizer\n", + "\n", + "# Parameters + random keys\n", + "max_steps = 25\n", + "key = jax.random.PRNGKey(0)\n", + "key, key_r, key_a = jax.random.split(key, 3)\n", + "\n", + "# Instantiate environment\n", + "env = make('MPE_simple_reference_v3')\n", + "obs, state = env.reset(key_r)\n", + "print('list of agents in environment', env.agents)\n", + "\n", + "# Sample random actions\n", + "key_a = jax.random.split(key_a, env.num_agents)\n", + "actions = {agent: env.action_space(agent).sample(key_a[i]) for i, agent in enumerate(env.agents)}\n", + "print('example action dict', actions)\n", + "\n", + "# Collect trajectory\n", + "state_seq = []\n", + "for _ in range(max_steps):\n", + " state_seq.append(state)\n", + " # Iterate random keys and sample actions\n", + " key, key_s, key_a = jax.random.split(key, 3)\n", + " key_a = jax.random.split(key_a, env.num_agents)\n", + " actions = {agent: env.action_space(agent).sample(key_a[i]) for i, agent in enumerate(env.agents)}\n", + "\n", + " # Step environment\n", + " obs, state, rewards, dones, infos = env.step(key_s, state, actions)\n", + "\n", + "# Visualise\n", + "viz = MPEVisualizer(env, state_seq)\n", + "ani = animation.FuncAnimation(\n", + " viz.fig,\n", + " viz.update,\n", + " frames=len(viz.state_seq),\n", + " blit=False,\n", + " interval=viz.interval,\n", + ")\n", + "\n", + "from IPython.display import HTML\n", + "HTML(ani.to_html5_video())" ] }, { "cell_type": "markdown", + "metadata": { + "id": "XAIcs7kw2ROo" + }, "source": [ "## Part 2: Compare speed 🚀\n", "\n", "We can then compare the speed of JaxMARL's MPE environments to the CPU-based ones provided by PettingZoo. We again take random actions and compare the number of environment steps per second between the two implementations.\n", "\n", "We also show how JaxMARL environments can be simply vectorised, using `jax.vmap`, to greatly increase the number of environment steps per second." - ], - "metadata": { - "id": "XAIcs7kw2ROo" - } + ] }, { "cell_type": "code", - "source": [ - "MPE_ENV = \"MPE_simple_reference_v3\"" - ], + "execution_count": 3, "metadata": { "id": "n_y9AyBcUU8v" }, - "execution_count": 3, - "outputs": [] + "outputs": [], + "source": [ + "MPE_ENV = \"MPE_simple_reference_v3\"" + ] }, { "cell_type": "code", + "execution_count": 4, + "metadata": { + "id": "oRhtSTpYRg83" + }, + "outputs": [], "source": [ "import numpy as np\n", "import jaxmarl\n", @@ -641,15 +632,41 @@ " return runner_state\n", "\n", " return benchmark" - ], - "metadata": { - "id": "oRhtSTpYRg83" - }, - "execution_count": 4, - "outputs": [] + ] }, { "cell_type": "code", + "execution_count": 10, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "h9VtVKgbRyMQ", + "outputId": "3d680b6f-92f2-41db-8596-7f6f75d2a4d8" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "JaxMARL, Num Envs: 1, Total Time (s): 0.262159854\n", + "JaxMARL, Num Envs: 1, Total Steps: 1000\n", + "JaxMARL, Num Envs: 1, SPS: 3814.466573512815\n", + "JaxMARL, Num Envs: 100, Total Time (s): 0.205208268\n", + "JaxMARL, Num Envs: 100, Total Steps: 100000\n", + "JaxMARL, Num Envs: 100, SPS: 487309.79981761746\n", + "JaxMARL, Num Envs: 1000, Total Time (s): 0.196568616\n", + "JaxMARL, Num Envs: 1000, Total Steps: 1000000\n", + "JaxMARL, Num Envs: 1000, SPS: 5087282.091867605\n", + "JaxMARL, Num Envs: 10000, Total Time (s): 0.395467381\n", + "JaxMARL, Num Envs: 10000, Total Steps: 10000000\n", + "JaxMARL, Num Envs: 10000, SPS: 25286535.57902415\n", + "PettingZoo Total Time (s): 0.013396263122558594\n", + "PettingZoo Total Steps: 1000\n", + "PettingZoo SPS: 1866.192069481028\n" + ] + } + ], "source": [ "import time\n", "import jax\n", @@ -720,41 +737,31 @@ "print(f\"PettingZoo Total Time (s): {zoo_time}\")\n", "print(f\"PettingZoo Total Steps: {config['NUM_STEPS']}\")\n", "print(f\"PettingZoo SPS: {zoo_sps}\")\n" - ], + ] + }, + { + "cell_type": "code", + "execution_count": 11, "metadata": { "colab": { - "base_uri": "https://localhost:8080/" + "base_uri": "https://localhost:8080/", + "height": 476 }, - "id": "h9VtVKgbRyMQ", - "outputId": "3d680b6f-92f2-41db-8596-7f6f75d2a4d8" + "id": "6YLL7Aj-ShER", + "outputId": "479f72ba-cf75-4796-9577-7bf37d7d0a13" }, - "execution_count": 10, "outputs": [ { - "output_type": "stream", - "name": "stdout", - "text": [ - "JaxMARL, Num Envs: 1, Total Time (s): 0.262159854\n", - "JaxMARL, Num Envs: 1, Total Steps: 1000\n", - "JaxMARL, Num Envs: 1, SPS: 3814.466573512815\n", - "JaxMARL, Num Envs: 100, Total Time (s): 0.205208268\n", - "JaxMARL, Num Envs: 100, Total Steps: 100000\n", - "JaxMARL, Num Envs: 100, SPS: 487309.79981761746\n", - "JaxMARL, Num Envs: 1000, Total Time (s): 0.196568616\n", - "JaxMARL, Num Envs: 1000, Total Steps: 1000000\n", - "JaxMARL, Num Envs: 1000, SPS: 5087282.091867605\n", - "JaxMARL, Num Envs: 10000, Total Time (s): 0.395467381\n", - "JaxMARL, Num Envs: 10000, Total Steps: 10000000\n", - "JaxMARL, Num Envs: 10000, SPS: 25286535.57902415\n", - "PettingZoo Total Time (s): 0.013396263122558594\n", - "PettingZoo Total Steps: 1000\n", - "PettingZoo SPS: 1866.192069481028\n" - ] + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjoAAAHLCAYAAADBbjLhAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB33klEQVR4nO3dd1QU19sH8O+ywNJBpCPNDqigiF3RaMQSe4uaiCVqIpbEmER/STRqrIklUaKJMWqMGkvsUWOJvcQKVoqKJYpgo/fd+/7By8aV4i4uLCzfzzl7DnPnzsyzO8zOs3Pv3JEIIQSIiIiI9JCBrgMgIiIiKi1MdIiIiEhvMdEhIiIivcVEh4iIiPQWEx0iIiLSW0x0iIiISG8x0SEiIiK9xUSHiIiI9BYTHSIiItJbTHSIKrk7d+5AIpFg9erVr6wbExODjh07wtraGhKJBNu3by/1+PSFJp9zaWjbti3atm2rk22r65tvvkH16tUhlUrh7++v63BITzDR0WNXrlxB37594eHhARMTE7i6uuLNN9/EkiVLVOrNnj2bJyxSS0hICK5cuYJZs2Zh7dq1aNy4caltKz8xkEgk+PrrrwutM3jwYEgkElhYWKiUt23bVrmsRCKBra0tAgMD8csvv0ChUCjrDR06VKXeiy8TE5NSe29U0P79+/Hpp5+iZcuWWLVqFWbPnq3rkCqcFStWICgoCI6OjpDJZPDy8sKwYcNw584dXYemU4a6DoBKx6lTp9CuXTu4u7tj5MiRcHJywv3793HmzBl89913GDdunLLu7Nmz0bdvX/Ts2VN3AVO5l5GRgdOnT+Pzzz/H2LFjy2y7JiYm2LBhA7744guV8rS0NOzYsaPIhKRatWqYM2cOAODx48f49ddfMWLECERHR2Pu3LnKejKZDD///HOB5aVSqRbfBeDh4YGMjAwYGRlpdb364u+//4aBgQFWrlwJY2NjXYdTIV26dAleXl7o3r07qlSpgtjYWKxYsQK7d+9GREQEXFxcdB2iTjDR0VOzZs2CtbU1zp07BxsbG5V5CQkJugmqnFMoFMjOzuYv+SI8fvwYAAr8P72OtLQ0mJubF1unS5cu2Lp1KyIiIuDn56cs37FjB7Kzs9GpUyf8/fffBZaztrbGO++8o5wePXo06tSpg6VLl2LmzJnKhMPQ0FClXmmpbFeJ1Nm3L0pISICpqalWk5z09HSYmZlpbX3l3Q8//FCgrGfPnmjcuDF+/fVXTJ48WQdR6R6brvTUrVu34OvrW+hJycHBQfm3RCJBWloa1qxZo7xkP3ToUOX8Bw8eYPjw4cpLob6+vvjll19U1nfkyBFIJBJs3LgR//vf/+Dk5ARzc3N0794d9+/fV6kbExODPn36wMnJCSYmJqhWrRrefvttJCUlFft+2rZti3r16uHChQto0aIFTE1N4eXlheXLlxeom5WVhWnTpqFmzZqQyWRwc3PDp59+iqysLJV6EokEY8eOxbp16+Dr6wuZTIZ9+/YVGcP58+cRHBwMOzs75faHDx+uUkehUGDx4sXw9fWFiYkJHB0dMXr0aDx//rzA+vbu3YugoCBYWlrCysoKgYGBWL9+vUqdzZs3IyAgAKamprCzs8M777yDBw8eqNQZOnQoLCws8ODBA/Ts2RMWFhawt7fHpEmTIJfLVeomJiZi6NChsLa2ho2NDUJCQpCYmFjke8731VdfwcPDAwDwySefQCKRwNPTUzn/0qVL6Ny5M6ysrGBhYYH27dvjzJkzKutYvXo1JBIJjh49ijFjxsDBwQHVqlV75babN28OLy+vAp/NunXr0KlTJ9ja2r5yHQBgZmaGZs2aIS0tTZm0adOBAwfQqlUr2NjYwMLCAnXq1MH//vc/5fzC+ujk77t79+7hrbfegoWFBVxdXREWFgYgr/n5jTfegLm5OTw8PAp8Bvmf6bFjxzB69GhUrVoVVlZWGDJkSKH/cy9T91h5lfz3cevWLXTp0gWWlpYYPHgwAPWOCYlEglWrViEtLU35PfTi5/Tbb78pjwNbW1u8/fbbBb5bXvyOaNOmDczMzJSfv6bfCdu3b0e9evWU33mFfS88ePAAI0aMgIuLi7KZ6IMPPkB2drayTmJiIj788EO4ublBJpOhZs2amDdvnkrz6auMHTsWFhYWSE9PLzBv4MCBcHJyKnCcvyj/OFXnONdXvKKjpzw8PHD69GlcvXoV9erVK7Le2rVr8d5776FJkyYYNWoUAKBGjRoAgPj4eDRr1kx58Nvb22Pv3r0YMWIEkpOT8eGHH6qsa9asWZBIJPjss8+QkJCAxYsXo0OHDggPD4epqSmys7MRHByMrKwsjBs3Dk5OTnjw4AF2796NxMREWFtbF/uenj9/ji5duqB///4YOHAgNm3ahA8++ADGxsbKhEOhUKB79+44ceIERo0aBW9vb1y5cgWLFi1CdHR0gb5If//9NzZt2oSxY8fCzs5O5eT9ooSEBHTs2BH29vaYPHkybGxscOfOHWzdulWl3ujRo7F69WoMGzYM48ePR2xsLJYuXYpLly7h5MmTyqsIq1evxvDhw+Hr64spU6bAxsYGly5dwr59+zBo0CBlnWHDhiEwMBBz5sxBfHw8vvvuO5w8eRKXLl1SSWLlcjmCg4PRtGlTfPvttzh48CAWLFiAGjVq4IMPPgAACCHQo0cPnDhxAu+//z68vb2xbds2hISEFPu5A0Dv3r1hY2ODjz76CAMHDkSXLl2U/WKuXbuG1q1bw8rKCp9++imMjIzw448/om3btjh69CiaNm2qsq4xY8bA3t4eU6dORVpa2iu3DeR9of/222+YO3cuJBIJnjx5gv3792Pt2rXFJqcvu337NqRSaYEfAE+ePClQ19jYGFZWVmqt99q1a3jrrbfQoEEDzJgxAzKZDDdv3sTJkydfuaxcLkfnzp3Rpk0bzJ8/H+vWrcPYsWNhbm6Ozz//HIMHD0bv3r2xfPlyDBkyRJn4vWjs2LGwsbHBV199haioKCxbtgx3795V/ggpjKbHyqvk5uYiODgYrVq1wrfffqu8kqLOMbF27Vr89NNPOHv2rLIZsUWLFgDyvle+/PJL9O/fH++99x4eP36MJUuWoE2bNgWOg6dPn6Jz5854++238c4778DR0VHj93nixAls3boVY8aMgaWlJb7//nv06dMH9+7dQ9WqVQEADx8+RJMmTZCYmIhRo0ahbt26ePDgAbZs2YL09HQYGxsjPT0dQUFBePDgAUaPHg13d3ecOnUKU6ZMQVxcHBYvXqzW5zpgwACEhYXhzz//RL9+/ZTl6enp2LVrF4YOHVqgmfXp06eQy+W4d+8eZsyYAQBo37692vtS7wjSS/v37xdSqVRIpVLRvHlz8emnn4q//vpLZGdnF6hrbm4uQkJCCpSPGDFCODs7iydPnqiUv/3228La2lqkp6cLIYQ4fPiwACBcXV1FcnKyst6mTZsEAPHdd98JIYS4dOmSACA2b96s8fsJCgoSAMSCBQuUZVlZWcLf3184ODgo39fatWuFgYGBOH78uMryy5cvFwDEyZMnlWUAhIGBgbh27dort79t2zYBQJw7d67IOsePHxcAxLp161TK9+3bp1KemJgoLC0tRdOmTUVGRoZKXYVCIYQQIjs7Wzg4OIh69eqp1Nm9e7cAIKZOnaosCwkJEQDEjBkzVNbVsGFDERAQoJzevn27ACDmz5+vLMvNzRWtW7cWAMSqVauK/QxiY2MFAPHNN9+olPfs2VMYGxuLW7duKcsePnwoLC0tRZs2bZRlq1atEgBEq1atRG5ubrHbenl7V69eFQCU+zUsLExYWFiItLQ0ERISIszNzVWWDQoKEnXr1hWPHz8Wjx8/Fjdu3BDjx48XAES3bt2U9fI/u8JewcHBr4wx36JFiwQA8fjx41e+nxc/5/ztz549W1n2/PlzYWpqKiQSifj999+V5ZGRkQKAmDZtmrIs/zMNCAhQObbnz58vAIgdO3aofCZBQUHKaU2OlVfJfx+TJ09WKVf3mMhfx8v78c6dO0IqlYpZs2aplF+5ckUYGhqqlOd/RyxfvlylrqbfCcbGxuLmzZvKsoiICAFALFmyRFk2ZMgQYWBgUOj3Qf4xPHPmTGFubi6io6NV5k+ePFlIpVJx7969AssWRqFQCFdXV9GnTx+V8vzv12PHjhVYRiaTKf+Pq1atKr7//nu1tqWv2HSlp958802cPn0a3bt3R0REBObPn4/g4GC4urpi586dr1xeCIE//vgD3bp1gxACT548Ub6Cg4ORlJSEixcvqiwzZMgQWFpaKqf79u0LZ2dn7NmzBwCUV2z++uuvQi/DvoqhoSFGjx6tnDY2Nsbo0aORkJCACxcuAMhr6vH29kbdunVVYn7jjTcAAIcPH1ZZZ1BQEHx8fF657fxfjbt370ZOTk6hdTZv3gxra2u8+eabKtsOCAiAhYWFctsHDhxASkoKJk+eXKDPRv6v7/PnzyMhIQFjxoxRqdO1a1fUrVsXf/75Z4Htv//++yrTrVu3xu3bt5XTe/bsgaGhofIKD5DX4fbFjumaksvl2L9/P3r27Inq1asry52dnTFo0CCcOHECycnJKsuMHDlS446+vr6+aNCgATZs2AAAWL9+PXr06FFs/4vIyEjY29vD3t4e3t7eWLJkCbp27Vqg6dXExAQHDhwo8Hqxw/Kr5P9/7NixQ6NmiXzvvfeeyrrq1KkDc3Nz9O/fX1lep04d2NjYqOzTfKNGjVLp5PzBBx/A0NBQeewVRtNjRR0v/m/lb0OdY6IoW7duhUKhQP/+/VWWd3JyQq1atQosL5PJMGzYsNd6nx06dFBe1QaABg0awMrKSvm5KxQKbN++Hd26dSv0rsP8Y3jz5s1o3bo1qlSporLdDh06QC6X49ixY8W+9xfX169fP+zZswepqanK8o0bN8LV1RWtWrUqsMzevXuxZ88eLFiwAO7u7mpfOdVXbLrSY4GBgdi6dSuys7MRERGBbdu2YdGiRejbty/Cw8OLPcE/fvwYiYmJ+Omnn/DTTz8VWuflTs21atVSmZZIJKhZs6by1kYvLy9MnDgRCxcuxLp169C6dWt0794d77zzziubrQDAxcWlQOfG2rVrA8jr/9CsWTPExMTgxo0bsLe3Vyvml5sAihIUFIQ+ffpg+vTpWLRoEdq2bYuePXti0KBBkMlkAPL6HyUlJan0gSps27du3QKAYpsU7969CyDv5PayunXr4sSJEyplJiYmBd5zlSpVVPpB3L17F87OzgVuxS5sG+p6/Pgx0tPTC12Ht7c3FAoF7t+/D19fX2W5up/5ywYNGoQFCxbgo48+wqlTp1T6vxTG09MTK1asUHYCrlWrVqH7RiqVokOHDiWKKd+AAQPw888/47333sPkyZPRvn179O7dG3379oWBQfG/Jwvbd9bW1qhWrVqBZidra+tC+968fOxZWFjA2dm52NuKNT1WXsXQ0LBAnyt1j4niYhRCFHh/+V6+g83V1bVAZ2ZN36e7u3uBOi8eS48fP0ZycnKxx2/+di9fvqyVz3fAgAFYvHgxdu7ciUGDBiE1NRV79uzB6NGjC22abNeuHQCgc+fO6NGjB+rVqwcLC4syvVuyPGGiUwkYGxsjMDAQgYGBqF27NoYNG4bNmzdj2rRpRS6T/6v0nXfeKbIPR4MGDTSOZcGCBRg6dCh27NiB/fv3Y/z48ZgzZw7OnDmjVsfUV1EoFKhfvz4WLlxY6Hw3NzeVaVNTU7XWK5FIsGXLFpw5cwa7du3CX3/9heHDh2PBggU4c+YMLCwsoFAo4ODggHXr1hW6jqK+8LRB27dClyZ1P/OXDRw4EFOmTMHIkSNRtWpVdOzYsdj65ubmr53AqMvU1BTHjh3D4cOH8eeff2Lfvn3YuHEj3njjDezfv7/Y/VPUvKLKhRBaiVnTY+VVZDJZgaTudY8JhUIBiUSCvXv3Fvp5vJy0F/a/pen71NbnrlAo8Oabb+LTTz8tdH7+jzR1NGvWDJ6enti0aRMGDRqEXbt2ISMjAwMGDHjlsjVq1EDDhg2Vfb8qIyY6lUz+pda4uDhlWWG/COzt7WFpaQm5XK72ySImJkZlWgiBmzdvFkiI6tevj/r16+OLL77AqVOn0LJlSyxfvrzIQeHyPXz4sMAtq9HR0QD+u7OgRo0aiIiIQPv27YvshPk6mjVrhmbNmmHWrFlYv349Bg8ejN9//x3vvfceatSogYMHD6Jly5bFnszzL4tfvXoVNWvWLLRO/h1OUVFRykvs+aKiopTzNeHh4YFDhw4hNTVV5QQRFRWl8bry2dvbw8zMrNB1REZGwsDAQOMTZlHc3d3RsmVLHDlyRNk0U54YGBigffv2aN++PRYuXIjZs2fj888/x+HDh0s94YqJiVH+igeA1NRUxMXFoUuXLkUuU9rHSv421DkmilteCAEvLy+NEoOX16HN92lvbw8rKytcvXr1ldtNTU3V2r7v378/vvvuOyQnJ2Pjxo3w9PREs2bN1Fo2IyND4zvp9An76Oipw4cPF/oLJL/N/sWmBnNz8wK3HkqlUvTp0wd//PFHoQd0Ybfn/vrrr0hJSVFOb9myBXFxcejcuTMAIDk5Gbm5uSrL1K9fHwYGBmodhLm5ufjxxx+V09nZ2fjxxx9hb2+PgIAAAHlfBg8ePMCKFSsKLJ+RkVHiturnz58X+Dzzh6jPj71///6Qy+WYOXNmobHnf8YdO3aEpaUl5syZg8zMTJV6+dto3LgxHBwcsHz5cpXPZu/evbhx4wa6du2q8Xvo0qULcnNzsWzZMmWZXC4vMFK2JqRSKTp27IgdO3aoNJPEx8dj/fr1aNWqldp3Lqnj66+/xrRp016rX1FpePbsWYGyl/8/StNPP/2k0nds2bJlyM3NVR57hSmtY+XlbahzTBSld+/ekEqlmD59eoHjTwiBp0+fqhWDNt+ngYEBevbsiV27duH8+fMF5ufH2b9/f5w+fRp//fVXgTqJiYkFvgtfZcCAAcjKysKaNWuwb98+lf5bQN7nWViz5tmzZ3HlypVSHcW8vCtfP4lIa8aNG4f09HT06tULdevWRXZ2Nk6dOqX8JfBih72AgAAcPHgQCxcuhIuLC7y8vNC0aVPMnTsXhw8fRtOmTTFy5Ej4+Pjg2bNnuHjxIg4ePFjgy93W1hatWrXCsGHDEB8fj8WLF6NmzZoYOXIkgLxbuceOHYt+/fqhdu3ayM3Nxdq1a5VJ1au4uLhg3rx5uHPnDmrXro2NGzciPDwcP/30k7Kt/t1338WmTZvw/vvv4/Dhw2jZsiXkcjkiIyOxadMm/PXXXyU64NesWYMffvgBvXr1Qo0aNZCSkoIVK1bAyspK+as5KCgIo0ePxpw5cxAeHo6OHTvCyMgIMTEx2Lx5M7777jv07dsXVlZWWLRoEd577z0EBgZi0KBBqFKlCiIiIpCeno41a9bAyMgI8+bNw7BhwxAUFISBAwcqby/39PTERx99pPF76NatG1q2bInJkyfjzp078PHxwdatW185htGrfP3118oxZMaMGQNDQ0P8+OOPyMrKwvz5819r3S8LCgpCUFCQVteZm5uL3377rdB5vXr1UmvQuxkzZuDYsWPo2rUrPDw8kJCQgB9++AHVqlUrtLOotmVnZ6N9+/bo378/oqKi8MMPP6BVq1bo3r17kcuU1rHyInWPiaLUqFEDX3/9NaZMmYI7d+6gZ8+esLS0RGxsLLZt24ZRo0Zh0qRJxcZQGu9z9uzZ2L9/P4KCgpS3rMfFxWHz5s04ceIEbGxs8Mknn2Dnzp146623MHToUAQEBCAtLQ1XrlzBli1bcOfOHdjZ2am9zUaNGqFmzZr4/PPPkZWVVaDZKjU1FW5ubhgwYAB8fX1hbm6OK1euYNWqVbC2tsaXX36p0XvUKzq514tK3d69e8Xw4cNF3bp1hYWFhTA2NhY1a9YU48aNE/Hx8Sp1IyMjRZs2bYSpqakAoHKreXx8vAgNDRVubm7CyMhIODk5ifbt24uffvpJWSf/9vINGzaIKVOmCAcHB2Fqaiq6du0q7t69q6x3+/ZtMXz4cFGjRg1hYmIibG1tRbt27cTBgwdf+X6CgoKEr6+vOH/+vGjevLkwMTERHh4eYunSpQXqZmdni3nz5glfX18hk8lElSpVREBAgJg+fbpISkpS1gMgQkND1fo8L168KAYOHCjc3d2FTCYTDg4O4q233hLnz58vUPenn34SAQEBwtTUVFhaWor69euLTz/9VDx8+FCl3s6dO0WLFi2EqampsLKyEk2aNBEbNmxQqbNx40bRsGFDIZPJhK2trRg8eLD4999/VeoUdluuEEJMmzZNvHyIP336VLz77rvCyspKWFtbi3fffVd5239Jby/P/3yCg4OFhYWFMDMzE+3atROnTp1SqZN/K3Rxt+iru70XFXV7ua+v7yu3Udzt5QBEbGysWrEeOnRI9OjRQ7i4uAhjY2Ph4uIiBg4cqHJrcVG3lxe274qK38PDQ3Tt2lU5nf+ZHj16VIwaNUpUqVJFWFhYiMGDB4unT58WWOeLt5cLof6x8ipFvY986hwTxa3jjz/+EK1atRLm5ubC3Nxc1K1bV4SGhoqoqCiV91fUPn/d7wQPD48CQ3DcvXtXDBkyRNjb2wuZTCaqV68uQkNDRVZWlrJOSkqKmDJliqhZs6YwNjYWdnZ2okWLFuLbb78tdKiPV/n8888FAFGzZs0C87KyssSECRNEgwYNhJWVlTAyMhIeHh5ixIgRav8f6yuJEFrq2UaV1pEjR9CuXTts3ry52F9nr6Nt27Z48uTJK9vFiSqT/IH4zp07V6mbJoiKwz46REREpLfYR4eIqBiPHj0qdr6pqala40BVRElJScjIyCi2jpOTUxlFo3+ePXum8mysl0ml0lIdlqKyYKJDRFQMZ2fnYueHhISoPIBSn0yYMAFr1qwptg57P5Rc7969cfTo0SLne3h4FDvoI6mHfXSIiIpx8ODBYue7uLio9RiRiuj69et4+PBhsXXKalBGfXThwoVinzJvamqKli1blmFE+omJDhEREektdkYmIiIivVXp++goFAo8fPgQlpaWpTYMOhEREWmXEAIpKSlwcXEp9uG5lTbRCQsLQ1hYGLKzs5VPkyYiIqKK5f79+8U+FLrS99FJSkqCjY0N7t+/r9Vn8hAREVHpSU5OhpubGxITE4sd4qHSXtHJl99cZWVlxUSHiIiognlVtxN2RiYiIiK9xUSHiIiI9Falb7pSh0KhKHaYbtIPRkZGkEqlug6DiIi0iInOK2RnZyM2NhYKhULXoVAZsLGxgZOTE4caICLSE0x0iiGEQFxcHKRSKdzc3Iq9T58qNiEE0tPTkZCQAODVzzciIqKKgYlOMXJzc5Geng4XFxeYmZnpOhwqZaampgCAhIQEODg4sBmLiEgP8BJFMeRyOQDA2NhYx5FQWclPaHNycnQcCRERaUOlTXTCwsLg4+ODwMDAV9Zlf43Kg/uaiEi/VNpEJzQ0FNevX8e5c+d0HQoREZHekSsETt96ih3hD3D61lPIFbp5EAP76BAREZFW7bsah+m7riMuKVNZ5mxtgmndfNCpXtne7FFpr+iUpfKS1RIREZW2fVfj8MFvF1WSHAB4lJSJD367iH1X48o0HiY6pWzf1Ti0mvc3Bq44gwm/h2PgijNoNe/vUt3RQ4cORc+ePVXK5syZA6lUim+++aZA/c8++wyenp5ISUlRKe/WrRvatGnDMYSIiEgtcoXA9F3XUdjP+fyy6buul+kPfiY6pag8ZbW//PILPv30U/zyyy8F5s2YMQMWFhaYOHGiSv3Dhw9j1apVHD+IiIjUcjb2WYFz3osEgLikTJyNfVZmMfEMVgLp2blFvjJz8m5JVyer/eqlrLaodb6uo0ePIiMjAzNmzEBycjJOnTqlMl8mk2HNmjVYs2YN9u3bh3v37uGjjz7C/PnzUaNGjdfePhERVQ4JKUUnOSWppw3sjFwCPlP/KnJeuzr2WDWsiVpZ7aP/z2qb16gKAGg17zCepRV8ptaduV1fK96VK1di4MCBMDIywsCBA7Fy5Uq0aNFCpU5AQACmTJmC9957DzVq1ECTJk3wwQcfvNZ2iYio8niSmoUD1+PVqutgaVLK0fyHV3RKSXnJapOTk7Flyxa88847AIB33nkHmzZtQmpqaoG6X3zxBQwMDPDPP/9g5cqVHFOGiIhe6WlqFubsvYHW8w5j9+Xiu2RIkHf3VRMv27IJDryiUyLXZwQXOc/g/5MDdbPVF+ud+Kzd6wVWiA0bNqBGjRrw8/MDAPj7+8PDwwMbN27EiBEjVOoeOHAAjx49AgCcO3cO7u7uWo+HiIj0y66Ih/jx6G0AQINq1mhdyw4/HL4FACrdN/J/Ok/r5gOpQdn9kGaiUwJmxq/+2Jp42cLZ2gSPkjIL7acjAeD0Ularzno1tXLlSly7dg2Ghv+tW6FQ4JdfflFJdJ4/f46RI0fiiy++gBACY8aMQVBQEOzs7LQeExERVVzP0rIRl5QBXxdrAMDbTdxxPOYJBjdzR7s6DpBIJKjval1gHB0nHY2jw0SnlEgNJJjWzQcf/HYREugmq71y5QrOnz+PI0eOwNb2v4Tq2bNnaNu2LSIjI1G3bl0AwLhx4+Dk5IT//e9/AIAdO3YgNDQUGzduLLX4iIio4nielo0Vx29jzak7cLI2wf6PgiA1kMDESIqVQ1Ufp9SpnjPe9HHC2dhnSEjJhINl3g/7srySk4+JTinqVM8Zy95ppLOsduXKlWjSpAnatGlTYF5gYCBWrlyJb775Btu2bcPmzZtx4cIF5ZWfNWvWoHHjxvjjjz/Qp0+fUo2TiIjKr8T0vARn9ck7SMvOu7PYxEiKxylZcLIuupuG1ECivNlGl5jolDJdZLUKhQIGBgb47bff8NlnnxVap0+fPliwYAE+/fRTvP/++5g2bRrq1aunnF+/fn1MmzaNTVhERJVUYno2Vp6IxaqTd5CalTfUiY+zFT7sUAtv+jhWmBtWJEKISv08guTkZFhbWyMpKQlWVlYq8zIzMxEbGwsvLy+YmJTdrXCvq1OnTqhZsyaWLl2q61AqnIq6z4mItO1Y9GMM+eUsAMD7/xOcjuUowSnu/P2iSntFJywsDGFhYZDL5boORWueP3+OkydP4siRI3j//fd1HQ4REVUgSRk5uPYwCS1q5F3Bb13LDm8HuqFtHQd09HGEgQ7612gDr+jo0RWdXr164dy5cwgJCcHXX39dbrLuiqSi7XMioteVlJGDVSdjsfJELCCAE5+9AWszI12H9Uq8olMJbdu2TdchEBFRBZGcmYNVJ+5g5YnbSM7M64NTx9EScckZFSLRURcTHSIiokokJTMHq07ewc/H/0twajtaYEL72uhcz6nCNlEVhYkOERFRJfIsLRvfHYqBXCFQy8ECEzrUQpd6znqX4ORjokNERKTHUrNycSLmsXLsNo+q5pjQvhY87czRtb6zTgbxK0tMdIiIiPRQalYu1py6gxXHbyMpIwd/fdgGtR0tAQDj29fScXRlh4kOERGRHknNysWvp+9gxbHbeJ6eAwCobm+OxP//u7JhokNERKQHMrLlWH3qDn46duu/BMfOHOPb10I3Pxe9b6IqioGuA6CKa/Xq1bCxsdF1GEREBEAhBFYcz7uK42VnjkUD/LD/ozbo2dC10iY5ABMdvTR06FBIJBJIJBIYGxujZs2amDFjBnJzc1+5bFHJi6enJxYvXqxSNmDAAERHR2sp6v+2nx97Ya9hw4ZpdXtERBVVenYuNp67h/xxf81lhpjSuS4W9PPDgY/aoFfDajCU8jTPpis91alTJ6xatQpZWVnYs2cPQkNDYWRkhClTpmhtG6ampjA1NdXa+oC85KlTp04Fyn/44QfMmzcPI0eO1Or2iIgqmvTsXKw7cw8/HruFJ6nZsDEzRrCvEwCgX2M3HUdX/jDVK4m0tKJfmZnq183IUK9uCchkMjg5OcHDwwMffPABOnTogJ07dyIrKwuTJk2Cq6srzM3N0bRpUxw5cgQAcOTIEQwbNgxJSUnKKyhfffUV2rZti7t37+Kjjz5SlgMFr/589dVX8Pf3x9q1a+Hp6Qlra2u8/fbbSElJUdZJSUnB4MGDYW5uDmdnZyxatAht27bFhx9+CCAveXJyclJ5RUVFYc6cOQgLC0OLFi2U6/rjjz/g6+sLmUwGT09PLFiwQOUzeP78OYYMGYIqVarAzMwMnTt3RkxMTIk+TyIiXcvIlmPFsdtoM/8wZu25gSep2XC3NYNhJW6WUgcTnZKwsCj61aePal0Hh6Lrdu6sWtfTs/B6WmBqaors7GyMHTsWp0+fxu+//47Lly+jX79+6NSpE2JiYtCiRQssXrwYVlZWiIuLQ1xcHCZNmoStW7eiWrVqmDFjhrK8KLdu3cL27duxe/du7N69G0ePHsXcuXOV8ydOnIiTJ09i586dOHDgAI4fP46LFy8Wub67d++iX79+GD16NN577z1l+YULF9C/f3+8/fbbuHLlCr766it8+eWXWL16tbLO0KFDcf78eezcuROnT5+GEAJdunRBTk7lvPOAiCqmXLkCPx+/jdbz/1YmOG62ppjftwEOfRyE9t6Oug6xXGPTlZ4TQuDQoUP466+/MHDgQKxatQr37t2Di4sLAGDSpEnYt28fVq1ahdmzZ8Pa2hoSiQROTk4q65FKpbC0tCxQ/jKFQoHVq1fD0jJvrIZ3330Xhw4dwqxZs5CSkoI1a9Zg/fr1aN++PQBg1apVylhelp6ejp49e8LX17dA/6CFCxeiffv2+PLLLwEAtWvXxvXr1/HNN99g6NChiImJwc6dO3Hy5EnlVaB169bBzc0N27dvR79+/TT7IImIdERqIMG2Sw/wJDUb1aqYYvwbtdCrkSuM2P9GLUx0SiI1teh5UqnqdEJC0XUNXvonvXOnxCG9bPfu3bCwsEBOTg4UCgUGDRqEvn37YvXq1ahdu7ZK3aysLFStWlUr2/X09FQmOQDg7OyMhP//DG7fvo2cnBw0adJEOd/a2hp16tQpdF0jRoxAYmIiDhw4AEND1X/VGzduoEePHiplLVu2xOLFiyGXy3Hjxg0YGhqiadOmyvlVq1ZFnTp1cOPGjdd+n0REpSUzR46N5+6jT0A1WMgMIZFIMKWzN/59no4+AdWY4GiIiU5JmJvrvu4rtGvXDsuWLYOxsTFcXFxgaGiIjRs3QiqV4sKFC5C+lJBZaKmJzMhI9Ym3EokECoVC4/XMmzcPu3btwsmTJ2FnZ6eV2IiIyrPMHDk2nL2HZUduISElC2nZuRjTtiYAoFUtfg+WFBMdPWVubo6aNWuqlDVs2BByuRwJCQlo3bp1ocsZGxtDLperXa6J6tWrw8jICOfOnYO7uzsAICkpCdHR0WjTpo2y3t69e/H5559jw4YN8PPzK3Rd3t7eOHnypErZyZMnUbt2bUilUnh7eyM3Nxf//POPsunq6dOniIqKgo+Pz2u9DyIibcrMkeP3s/ew7OgtxCdnAQBcbUzhYq3du1orKyY6lUjt2rUxePBgDBkyBAsWLEDDhg3x+PFjHDp0CA0aNEDXrl3h6emJ1NRUHDp0CH5+fjAzM4OZmRk8PT1x7NgxvP3225DJZCW6ymJpaYmQkBB88sknsLW1hYODA6ZNmwYDAwPlnVwxMTEYNGgQ3nvvPbRu3RqPHj1SWYexsTFsbW3x8ccfIzAwEDNnzsSAAQNw+vRpLF26FD/88AMAoFatWujRowdGjhyJH3/8EZaWlpg8eTJcXV0LNHkREenKb2fuYunfN/EoOe+OXRdrE4S+URP9AtxgbMgmKm2o8J9iVFQU/P39lS9TU1Ns375d12GVW6tWrcKQIUPw8ccfo06dOujZs6fKFZYWLVrg/fffx4ABA2Bvb4/58+cDAGbMmIE7d+6gRo0asLe3L/H2Fy5ciObNm+Ott95Chw4d0LJlS3h7e8PExAQAsH79eiQmJuLHH3+Es7NzgVfv3r0BAI0aNcKmTZvw+++/o169epg6dSpmzJiBoUOHqrzXgIAAvPXWW2jevDmEENizZ0+B5jUiIl05G/sMj5Iz4Wxtgq971sPhT9picFMPJjlaJBH5QyrqgdTUVHh6euLu3bswV7O/S3JyMqytrZGUlAQrKyuVeZmZmYiNjYWXl5fyREzalZaWBldXVyxYsAAjRozQdTjc50RUarJy5dh0/l+0rmkHT7u8c9TNhFScvvUE/QPdIDOUvmIN9KLizt8v0qumq507d6J9+/ZqJzlU9i5duoTIyEg0adIESUlJmDFjBgCwOYmI9FZ2rgKbzt/HD4dv4mFSJvo0qoYF/fP6H9Z0sEBNB+3cDEKF0/m1sWPHjqFbt25wcXGBRCIptNkpLCwMnp6eMDExQdOmTXH27NlC17Vp0yYMGDCglCOm1/Xtt9/Cz88PHTp0QFpaGo4fP847q4hI72TnKrDun7to9+0RfLH9Kh4mZcLRSgZ/dxtdh1ap6PyKTlpaGvz8/DB8+HBl/4sXbdy4ERMnTsTy5cvRtGlTLF68GMHBwYiKioKDg4OyXnJyMk6dOoXff/+92O1lZWUhKytLZTkqOw0bNsSFCxd0HQYRUanafukBvvkrCg8S8x7142Apwwdta2BgE3eYGLGJqizpPNHp3LkzOr/8KIQXLFy4ECNHjlQ+tXr58uX4888/8csvv2Dy5MnKejt27EDHjh1f2a9izpw5mD59unaCJyIiKsSdp2l4kJgBe0sZPgiqgUFNmeDois6broqTnZ2NCxcuoEOHDsoyAwMDdOjQAadPn1apq26z1ZQpU5CUlKR83b9//5XL6FF/bXoF7msi0lSOXIGN5+7hzO2nyrJhLb0wrZsPjn/aDsNbeTHJ0SGdX9EpzpMnTyCXy+HoqPrAMkdHR0RGRiqnk5KScPbsWfzxxx+vXKdMJoNMJlNr+/mjB2dnZ8PUlAM3VQbp6ekACo7wTET0shy5AtsuPsCSwzG4/ywD/m422DamBSQSCaxNjTCspZeuQySU80RHXdbW1oiPj9f6eg0NDWFmZobHjx/DyMgIBi8/m4r0hhAC6enpSEhIgI2NTYFHZBAR5cuVK7Dt0gMs+fsm7j3L+3FkZ2GMtxo4Q64QMJRKdBwhvahcJzp2dnaQSqUFkpj4+PhXPkX7VcLCwhAWFlbsYw0kEgmcnZ0RGxuLu3fvvtb2qGKwsbF57f8tItJfB6/HY+af13H3aV6CU9XcGKODquOdZh4wMy7Xp9RKq1zvFWNjYwQEBODQoUPo2bMnAEChUODQoUMYO3bsa607NDQUoaGhygGHiouhVq1ayM7Ofq3tUflnZGTEKzlEVKyMHDnuPk2HrbkxRrepjnebM8Ep73S+d1JTU3Hz5k3ldGxsLMLDw2Frawt3d3dMnDgRISEhaNy4MZo0aYLFixcjLS1NeRdWWTAwMOAouURElUyuXIGdEQ9hIJGgZ0NXAECX+s5IyshBr4auMJfp/BRKatD5Xjp//jzatWunnJ44cSIAICQkBKtXr8aAAQPw+PFjTJ06FY8ePYK/vz/27dtXoIMyERGRNsgVAjsjHmDJoZu4/SQN9pYydKrnBBMjKaQGErzTzEPXIZIG9OpZV5p4sY9OdHT0K5+VQURE+k2uENh9+SG+OxSD24/TAAA2ZkYY2bo6hrf0gqkxm7bLE3WfdVVpE5186n5QRESkv/65/RT/23YFt15KcEJaeMKCTVTlUqV8qCcREVFJmMsMcetxGqxNjTCytRdCWnjC0oTjaekDJjpERFSpKBQCe67G4d6zdIxpWxMAUM/VGksGNkTbOvZMcPQMEx0iIqoUFAqBvVcf4btD0YiOT4WRVIIe/q5wtckb+b6bn4uOI6TSUGkTHXUGDCQioopPoRDYd+0RvjsYg6j4FACApYkh3mtVHZYmlfY0WGmwMzI7IxMR6a0bccn4aGM4Ih/9l+CMaOWFYS29YG3KJqqKjJ2RiYio0nO0MsG9Z+mwlBlieCsvDG/FBKeyYaJDRER6QQiB/dfjcSLmCWb2rAcAsDU3xo/vBqCBqw2szZjgVEZMdIiIqEITQuDA9XgsPhiD63HJAICuDZzRrHpVAEDrWva6DI90rNImOuyMTERUsQkhcPBGAhYfjMa1h3kJjrmxFMNaeqGOo6WOo6Pygp2R2RmZiKjckSsEzsY+Q0JKJhwsTdDEyxZSA4ly/sPEDIxaex5XH/yX4IS08MTI1tVRxdxYV2FTGWJnZCIiqpD2XY3D9F3XEZeUqSxztjbBtG4+6FTPGQBgbylDckYuzF5IcGyZ4FAheEWHV3SIiMqNfVfj8MFvF1HUiWnJwIbKgf0u/5uIalXMmOBUUuqevw3KMCYiIqIiyRUC03ddLzLJAYAvtl+FXJFXo0E1GyY59EpMdIiIqFw4G/tMpbmqMEkZOTgb+6yMIiJ9wESHiIjKhYSU4pMcTesRAZU40QkLC4OPjw8CAwN1HQoREQFwsDTRaj0ioBInOqGhobh+/TrOnTun61CIiAhAEy9bOFsXncRIkHf3VRMv27ILiiq8SpvoEBFR+ZA3qnE0pAYSTOvmAwnykpoX5U9P6+ajMp4O0atwHB0iItKJrFw55uyJxOpTdwAATTxt0ameM5a906jAODpOL42jQ6QuJjpERFTmbj9OxbgNl5SPbnivlRcae+Y1SXWq54w3fZyKHRmZSF1MdIiIqExtvfgvvth+FenZclQxM8KC/n54o66jSh2pgQTNa1TVUYSkT5joEBFRmZm24yrWnL4LAGhW3RaLBzSEUzEdkIleV6XtjMzby4mIyl5jT1sYSICJb9bGuveaMcmhUsdnXfFZV0REpUYIgYdJmXC1MVWWxT5Jg5eduQ6jIn3AZ10REZFOJaZnY9TaC+ix9CQep2Qpy5nkUFliokNERFp37s4zdPnuOA5cj0dyRg4u3Xuu65CokmJnZCIi0hq5QuCHwzex6GA0FCLv6s2SgQ1Rz9Va16FRJcVEh4iItCI+ORMf/h6O07efAgB6NXTFzJ71YCHjqYZ0h/99RESkFWGHb+L07acwM5ZiZo966BNQTdchETHRISIi7fi0U108Sc3Cxx3roIa9ha7DIQLAzshERFRC956mY+7eSOSPUmIhM8QPgwOY5FC5wis6RESksV0RD/G/rVeQkpULJysZhrb00nVIRIViokNERGrLyJZjxu5r2HD2PgCgsUcVvOnrpOOoiIpWaROdsLAwhIWFQS6X6zoUIqIKIepRCsauv4iYhFRIJMDYdjUxoX0tGErZC4LKLz4Cgo+AICJ6pZ0RD/HJ5ghk5SpgbynDdwP80aKmna7DokpM3fN3pb2iQ0RE6nOrYgq5QiCotj0W9PeDnYVM1yERqYWJDhERFSoxPRs2ZsYAgIbuVfDHBy1Q39UaBgYSHUdGpD42rBIRkQqFQmD50VtoOfdv3IhLVpb7udkwyaEKh1d0iIhI6XFKFj7eHIFj0Y8BADvCH8Lbmf0XqeJiokNERACAEzFP8NGmcDxOyYKJkQG+6uaLAYFuug6L6LUw0SEiquRy5QosOhiNH47cghBAbUcLLB3UCLUdLXUdGtFrY6JDRFTJbb34AGGHbwEABjZxx9S3fGBqLNVxVETawUSHiKiS6xNQDYci49HNzwVvNXDRdThEWsW7roiIKpnMHDmW/h2DzJy8keGlBhL8+G5jJjmkl3hFh4ioErmZkIqx6y8i8lEKHiVn4uue9XUdElGpYqJDRFQJCCGw5cK/mLrjGjJy5Khqbow3ffgwTtJ/THSIiPRcalYuvth2BdvDHwIAWtasikX9/eFgZaLjyIhKX6VNdPj0ciKqDKIepWD02vO48zQdUgMJJr5ZG+8H1YCUIxxTJcGnl/Pp5USkxx4kZqDLd8dhITPE9wP9EeBhq+uQiLSCTy8nIqqkMnPkMDHKGwfH1cYUvwwNRA17c+UDOokqE95eTkSkR87cfoq23xzBoRvxyrIAjypMcqjSYqJDRKQH5AqBRQeiMWjFGTxKzsSyI7dQyXsmEAFg0xURUYUXl5SBCb+H42zsMwBA34BqmNHDFxIJOxwTMdEhIqrADl6Px6QtEUhMz4G5sRSzetVHz4auug6LqNxgokNEVEFdf5iM9349DwCo52qFJQMbwcvOXMdREZUvTHSIiCooHxcrDGrqDhNDKT7rXAcyQz5xnOhlTHSIiCqQnREP0ay6LRws80Y1/rpHPRhw8D+iIvGuKyKiCiA9OxeTNkdg/IZL+HhTBBSKvDuqmOQQFY9XdIiIyrnrD5MxdsNF3H6cBgMJ0Mi9CnjjOJF6mOgQEZVTQgisPXMXX/95A9m5CjhaybB4QEM0r1FV16ERVRhMdIiIyqGkjBx8uiUCf13LG+H4jboO+LafH2zNOcIxkSaY6BARlUOGBhJEx6fCSCrB5M7eGN7SkwMAEpUAEx0ionJCoRCQSACJRAJzmSHCBjWCXCFQv5q1rkMjqrB41xURUTmQkJKJIb+cxcoTscoyHxcrJjlEr4lXdIiIdOxo9GN8vCkcT1KzcfnfRPQPdIOViZGuwyLSC0x0iIh0JEeuwLf7o/Dj0dsAgLpOllg6qBGTHCIt0otEJzY2FsOHD0d8fDykUinOnDkDc3M+74WIyq/7z9IxbsMlhN9PBAAMae6B/3XxhokRH+NApE1qJTo7d+5Ue4Xdu3cvcTAlNXToUHz99ddo3bo1nj17BplMVuYxEBGpKzUrFz3CTuJZWjasTAwxv28DdKrnrOuwiPSSWolOz549VaYlEgmEECrT+eRyuXYiU9O1a9dgZGSE1q1bAwBsbW3LdPtERJqykBni/aDq+OtaPL572x/VqpjpOiQivaXWXVcKhUL52r9/P/z9/bF3714kJiYiMTERe/bsQaNGjbBv3z6NAzh27Bi6desGFxcXSCQSbN++vUCdsLAweHp6wsTEBE2bNsXZs2eV82JiYmBhYYFu3bqhUaNGmD17tsYxEBGVtuj4FEQ9SlFOv9eqOn4f1YxJDlEp07iPzocffojly5ejVatWyrLg4GCYmZlh1KhRuHHjhkbrS0tLg5+fH4YPH47evXsXmL9x40ZMnDgRy5cvR9OmTbF48WIEBwcjKioKDg4OyM3NxfHjxxEeHg4HBwd06tQJgYGBePPNNwvdXlZWFrKyspTTycnJGsVLRKQJIQR+P3cf03ddg4uNKXaPawUzY0MYGEhgAA4ASFTaNB5H59atW7CxsSlQbm1tjTt37mgcQOfOnfH111+jV69ehc5fuHAhRo4ciWHDhsHHxwfLly+HmZkZfvnlFwCAq6srGjduDDc3N8hkMnTp0gXh4eFFbm/OnDmwtrZWvtzc3DSOmYhIHcmZORi34RKmbL2CzBwFXG1MkZmj0HVYRJWKxolOYGAgJk6ciPj4eGVZfHw8PvnkEzRp0kSrwWVnZ+PChQvo0KGDsszAwAAdOnTA6dOnlfEkJCTg+fPnUCgUOHbsGLy9vYtc55QpU5CUlKR83b9/X6sxExEBQPj9RHT9/jh2X46DoYEEkzvXxZphTfisKqIypnHT1S+//IJevXrB3d1deTXk/v37qFWrVqH9a17HkydPIJfL4ejoqFLu6OiIyMhIAIChoSFmz56NNm3aQAiBjh074q233ipynTKZjHdlEVGpUSgEVp6Ixbx9kchVCFSrYorvBzZEI/cqug6NqFLSONGpWbMmLl++jAMHDiiTDW9vb3To0EFnD5zr3LkzOnfurJNtExG9SAA4HJWAXIVA1/rOmN27PqxNOQAgka6UaMBAiUSCjh07omPHjtqOR4WdnR2kUqlKMxmQ11Tm5OT0WusOCwtDWFhYmd8OT0T6SQgBiUQCqYEEiwf443BUAvo3duMTx4l0rESJzqFDh3Do0CEkJCRAoVDtWJffSVgbjI2NERAQgEOHDinH8lEoFDh06BDGjh37WusODQ1FaGgokpOTYW3Nh+YRUcnkyhVYfDAGSRk5mNmzHgDAwcoEAwLddRwZEQElSHSmT5+OGTNmoHHjxnB2dn7tXyupqam4efOmcjo2Nhbh4eGwtbWFu7s7Jk6ciJCQEDRu3BhNmjTB4sWLkZaWhmHDhr3WdomIXteDxAxM2HAJ5+8+BwD0a1wNDarZ6DYoIlKhcaKzfPlyrF69Gu+++65WAjh//jzatWunnJ44cSIAICQkBKtXr8aAAQPw+PFjTJ06FY8ePYK/vz/27dtXoIMyEVFZ+uvaI3y65TKSMnJgKTPE7N71meQQlUMS8eKzHNRQtWpVnD17FjVq1CitmMrEi310oqOjkZSUBCsrK12HRUTlXGaOHHP23MCa03cBAH7VrLFkYCO4V+UIx0RlKb/ryavO3xonOp999hksLCzw5ZdfvnaQ5YG6HxQRkRAC76z8BydvPgUAjGpTHZM61oGxocZDkhHRa1L3/K1x01VmZiZ++uknHDx4EA0aNICRkeptkwsXLtQ8WiKiCkAikSCkuSci41LwbT8/tKvroOuQiOgVNE50Ll++DH9/fwDA1atXVebxNkoi0jepWbm4/ThV2f+mo68TWtS0g4WsRDetElEZ0/hIPXz4cGnEQURU7lx9kISx6y8iKSMHeya0hrO1KQAwySGqQF6rYfnff//Fv//+q61YylRYWBh8fHwQGBio61CIqJwRQmDVyVj0/uEU7jxNh4mRFE9SsnUdFhGVgMaJjkKhwIwZM2BtbQ0PDw94eHjAxsYGM2fOLDB4YHkWGhqK69ev49y5c7oOhYjKkedp2Rj563lM33Ud2XIF3vRxxN4JrVG/GgcWJaqINL7++vnnn2PlypWYO3cuWrZsCQA4ceIEvvrqK2RmZmLWrFlaD5KIqCycjX2GCb9fQlxSJoylBvi8qzeGNPdg/0OiCkzjRGfNmjX4+eef0b17d2VZgwYN4OrqijFjxjDRIaIKa3v4A8QlZaK6nTmWDGoIXxdexSGq6DROdJ49e4a6desWKK9bty6ePXumlaCIiHThy64+sDUzxgdta8CcHY6J9ILGfXT8/PywdOnSAuVLly6Fn5+fVoIqC+yMTER/R8Zj3IZLUCjyxk01NZZiUnAdJjlEekTjkZGPHj2Krl27wt3dHc2bNwcAnD59Gvfv38eePXvQunXrUgm0tHBkZKLKJztXgfn7IvHziVgAwJze9TGwCZ82TlSRqHv+1viKTlBQEKKiotCrVy8kJiYiMTERvXv3RlRUVIVLcoio8rnzJA19lp1SJjlDW3iidyNXHUdFRKVF4ys6+oZXdIj0k1whcDb2GRJSMuFgaYImXrbYffkhPt92FalZubAxM8I3ff3wpo+jrkMlohIotWddrVq1ChYWFujXr59K+ebNm5Geno6QkBDNoyUi0qJ9V+Mwfdd1xCVlKsssZIZIzcoFADTxtMXit/3hYmOqqxCJqIxo3HQ1Z84c2NnZFSh3cHDA7NmztRIUEVFJ7bsahw9+u6iS5ABQJjld6jtj/cimTHKIKgmNE5179+7By8urQLmHhwfu3bunlaCIiEpCrhCYvus6imuPv3TvOQcAJKpENE50HBwccPny5QLlERERqFq1qlaCKgu8vZxI/5yNfVbgSs7L4pIycTaWY34RVRYaJzoDBw7E+PHjcfjwYcjlcsjlcvz999+YMGEC3n777dKIsVTwWVdE+ichpfgkR9N6RFTxadwZeebMmbhz5w7at28PQ8O8xRUKBYYMGcI+OkSkU9cfJqtVz8HSpJQjIaLyosS3l0dHRyMiIgKmpqaoX78+PDw8tB1bmeDt5UQVX0a2HF/uuIotF/4ttp4EgJO1CU589gakBuynQ1SRldrt5fk8PT0hhECNGjWUV3aIiHRh26UH2HLhXxhIgG5+LtgZ/hAAVDol56c107r5MMkhqkQ07qOTnp6OESNGwMzMDL6+vso7rcaNG4e5c+dqPUAiold5O9ANAxq74bf3muK7txti2TuN4GSt2jzlZG2CZe80Qqd6zjqKkoh0QeNLMVOmTEFERASOHDmCTp06Kcs7dOiAr776CpMnT9ZqgEREL8vKlePHo7fxXmsvmBkbwsBAgnl9Gyjnd6rnjDd9nAqMjMwrOUSVj8aJzvbt27Fx40Y0a9ZMZSwKX19f3Lp1S6vBERG97P6zdIxZdxFXHiThzpM0LBzgX2g9qYEEzWtUnCEviKh0aJzoPH78GA4ODgXK09LSKtQgXGFhYQgLC4NcLtd1KESkpgPX4/HxpnAkZ+Y9q6qbv4uuQyKick7jPjqNGzfGn3/+qZzOT25+/vlnNG/eXHuRlTKOo0NUceTIFZi95wZG/noeyZm5aOhugz/Ht0a7OgV/dBERvUjjKzqzZ89G586dcf36deTm5uK7777D9evXcerUKRw9erQ0YiSiSiw+OROh6y7i/N3nAIDhLb0wuXNdGBtq/DuNiCohjb8pWrVqhfDwcOTm5qJ+/frYv38/HBwccPr0aQQEBJRGjERUycU+SYOlzBDL32mEqd18mOQQkdpKPGCgvuCAgUTljxBCpc/f+TvPYGchg6eduQ6jIqLyROsDBubm5kIul0MmkynL4uPjsXz5cqSlpaF79+5o1arV60VNRJXe45QsfLjxEgY39UCX+nlj3jT2tNVxVERUUamd6IwcORLGxsb48ccfAQApKSkIDAxEZmYmnJ2dsWjRIuzYsQNdunQptWCJSL/9c/spxm24hISULMTEp+KNug4wMZLqOiwiqsDUbug+efIk+vTpo5z+9ddfIZfLERMTg4iICEycOBHffPNNqQRJRPpNoRBYduQWBv38DxJSslDLwQLr3mvKJIeIXpvaic6DBw9Qq1Yt5fShQ4fQp08fWFtbAwBCQkJw7do17UdIRHotMT0bI389j3n7IiFXCPRq6IodY1uilqOlrkMjIj2gdqJjYmKCjIwM5fSZM2fQtGlTlfmpqanajY6I9FpyZg66fn8ChyITYGxogDm962Nhfz+YGfNBwUSkHWonOv7+/li7di0A4Pjx44iPj8cbb7yhnH/r1i24uFScUUrDwsLg4+ODwMBAXYdCVGlZmRiho68jPKqaYduYFhjYxL1CjbBOROWf2reXHz16FJ07d4azszPi4uIwcOBArFy5Ujl/zJgxSEtLw5o1a0ot2NLA28uJylZKZg4ycxSwt8y7gzM7V4HMXDmsTIx0HBkRVSRav708KCgIFy5cwP79++Hk5IR+/fqpzPf390eTJk1KHjER6b3rD5MxZt0F2FvKsGFkMxhKDWBsaMABAImo1GjUEO7t7Q1vb+9C540aNUorARGR/hFCYNP5+5i64xqychXIzlXgYWIm3Kua6To0ItJz7PFHRKUqPTsXX2y/iq0XHwAA2tWxx8L+/qhibqzjyIioMmCiQ0Sl5mZCCsasu4jo+FQYSICPO9bBB0E1YGDADsdEVDaY6BBRqRBC4JMtlxEdnwp7SxmWDGyIZtWr6josIqpkNOoBKJfLcezYMSQmJpZSOESkLyQSCb7p64cO3g74c3wrJjlEpBMaJTpSqRQdO3bE8+fPSyseIqrA7j1Nxx8X/lVO13SwwM8hgXCwNNFhVERUmWncdFWvXj3cvn0bXl5epREPEVVQ+64+widbIpCWlYtqVUzRlFdwiKgc0Hjwiq+//hqTJk3C7t27ERcXh+TkZJUXEVUuOXIFvt59He//dgEpmblo6F4Fbra8bZyIyge1R0bOZ2DwX2704lDtQghIJBLI5XLtRVcGODIyUck9TMzA2PUXcfFeIgBgZGsvfNqpLoykHACQiEqX1kdGznf48OHXCoyI9MPR6Mf48PdLeJ6eA0sTQ3zbzw/Bvk66DouISIXGiU5QUFBpxEFEFczdp2l4np4DXxcrLBscwFGOiahcKtE4OsePH8ePP/6I27dvY/PmzXB1dcXatWvh5eWFVq1aaTvGUhEWFoawsLAK19RGpEv5TdQA8G4zD8gMDdDD3xUmRlIdR0ZEVDiNG9L/+OMPBAcHw9TUFBcvXkRWVhYAICkpCbNnz9Z6gKUlNDQU169fx7lz53QdClGFcOb2U/T/8TSSM3MA5PXRGxDoziSHiMq1Et11tXz5cqxYsQJGRkbK8pYtW+LixYtaDY6IdE+hEAg7fBODVpzBuTvP8f3BGF2HRESkNo2brqKiotCmTZsC5dbW1hwxmUjPPE/LxsRN4Tgc9RgA0LuRKyZ2rK3jqIiI1KdxouPk5ISbN2/C09NTpfzEiROoXr26tuIiIh27dO85xq6/hAeJGZAZGmBmj3ro17iayrASRETlncaJzsiRIzFhwgT88ssvkEgkePjwIU6fPo1Jkybhyy+/LI0YiaiM7b/2CKHrLyJHLuBZ1Qw/DA6AjwvHmSKiikfjRGfy5MlQKBRo37490tPT0aZNG8hkMkyaNAnjxo0rjRiJqIw19rRFVXMZGnnYYF6fBrA0MXr1QkRE5ZDGIyPny87Oxs2bN5GamgofHx9YWFhoO7YywZGRifI8SMyAq42pcjo+ORMOljI2VRFRuaTu+bvE47QbGxvD0tISzs7OFTbJIaK8sXE2nL2Hdt8ewZYXnjzuaGXCJIeIKjyNE53c3Fx8+eWXsLa2hqenJzw9PWFtbY0vvvgCOTk5pREjEZWS9OxcfLwpAlO2XkF2rgKHIxN0HRIRkVZp3Edn3Lhx2Lp1K+bPn4/mzZsDAE6fPo2vvvoKT58+xbJly7QeJBFpX0x8Csasu4iYhFRIDSSY1LEORrfhnZNEpF807qNjbW2N33//HZ07d1Yp37NnDwYOHIikpCStBlja2EeHKqPtlx5gytYryMiRw8FShiUDG6Jp9aq6DouISG2l9vRymUxWYAwdAPDy8oKxsbGmqyOiMhYdn4KPNoVDCKBlzapYPKAh7C1lug6LiKhUaNxHZ+zYsZg5c6byGVcAkJWVhVmzZmHs2LFaDY6ItK+2oyXGtauJ8e1r4dfhTZnkEJFe07jpqlevXjh06BBkMhn8/PwAABEREcjOzkb79u1V6m7dulV7kZYSNl1RZbDv6iP4uljBzdZM16EQEWlFqTVd2djYoE+fPiplbm5umkdIRKUuO1eBuXsj8cvJWDSoZo3N7zeHzJBPGyeiykPjRGfVqlWlEQcRadmDxAyMXX8Rl+4lAgCaVa8KA46LQ0SVjMaJDhGVf4ejEvDRxnAkpufAysQQ3/bzQ0dfJ12HRURU5pjoEOmRXLkCiw5GI+zwLQBAfVdr/DC4EfvmEFGlpReJjqenJ6ysrGBgYIAqVarg8OHDug6JSCfkQuBY9BMAwLvNPPB5V2+YGLFPDhFVXnqR6ADAqVOn+MwtqvRkhlL8MLgRLt1PRHc/F12HQ0Skc1pJdBITE2FjY6ONVRGRBhQKgR+O3ESOXOCjN2sDANxszdhURUT0/zQeMHDevHnYuHGjcrp///6oWrUqXF1dERERoXEAx44dQ7du3eDi4gKJRILt27cXqBMWFgZPT0+YmJigadOmOHv2rMp8iUSCoKAgBAYGYt26dRrHQFQRPUvLxrDV5/Dt/mh8dygGN+KSdR0SEVG5o3Gis3z5cuW4OQcOHMCBAwewd+9edO7cGZ988onGAaSlpcHPzw9hYWGFzt+4cSMmTpyIadOm4eLFi/Dz80NwcDASEv57yvKJEydw4cIF7Ny5E7Nnz8bly5c1joOoIrlw9zm6fn8cR6MfQ2ZogPl9G8DbmQNeEhG9TOORkU1NTREdHQ03NzdMmDABmZmZ+PHHHxEdHY2mTZvi+fPnJQ9GIsG2bdvQs2dPZVnTpk0RGBiIpUuXAgAUCgXc3Nwwbtw4TJ48ucA6PvnkE/j6+mLo0KGFbiMrK0vl8RXJyclwc3PjyMhUIQghsPJELObujUSuQsDLzhw/DG7EJIeIKh11R0bW+IpOlSpVcP/+fQDAvn370KFDBwB5X8ByubyE4RYuOzsbFy5cUG4DAAwMDNChQwecPn0aQN4VoZSUFABAamoq/v77b/j6+ha5zjlz5sDa2lr54qjOVJFM3BSBr/+8gVyFQNf6ztg5tiWTHCKiYmic6PTu3RuDBg3Cm2++iadPn6Jz584AgEuXLqFmzZpaDe7JkyeQy+VwdHRUKXd0dMSjR48AAPHx8WjVqhX8/PzQrFkzDBkyBIGBgUWuc8qUKUhKSlK+8pM2ooqgZU07GEklmN7dF0sHNYSliZGuQyIiKtc0vutq0aJF8PT0xP379zF//nzlLd1xcXEYM2aM1gN8lerVq2vUCVomk0Em49OaqWIQQuBJarbyCeN9A6qhqZct76oiIlKTxomOkZERJk2aVKD8o48+0kpAL7Kzs4NUKkV8fLxKeXx8PJycXm84+7CwMISFhWm9uY1IW9KycvH5tiv4J/YZ/hzfGrbmxgDAJIeISAMaN10BQFRUFMaOHYv27dujffv2GDt2LKKiorQdG4yNjREQEIBDhw4pyxQKBQ4dOoTmzZu/1rpDQ0Nx/fp1nDt37nXDJNK6mPgU9Ag7ie3hD5GQkoV/bj/VdUhERBWSxonOH3/8gXr16uHChQvw8/ODn58fLl68iHr16uGPP/7QOIDU1FSEh4cjPDwcABAbG4vw8HDcu3cPADBx4kSsWLECa9aswY0bN/DBBx8gLS0Nw4YN03hbRBXB1ov/ovvSk7iZkApHKxk2jGyGzvWddR0WEVGFpPHt5TVq1MDgwYMxY8YMlfJp06bht99+w61btzQK4MiRI2jXrl2B8pCQEKxevRoAsHTpUnzzzTd49OgR/P398f3336Np06Yabaco6t6eRlTaMnPkmL7rGjaczesg36qmHRa/7Q87C/YpIyJ6mbrnb40THTMzM1y+fLnAHVYxMTHw8/NDenp6ySLWESY6VF7M2XMDPx67DYkEmNC+Fsa9UQtSA4muwyIiKpdKbRydtm3b4vjx4wXKT5w4gdatW2u6Op0JCwuDj49PsbeiE5WlMe1qoqG7DX4d3gQfdqjNJIeISAs0vqKzfPlyTJ06Ff3790ezZs0AAGfOnMHmzZsxffp0uLj898Tk7t27azfaUsArOqQr2bkK7Ix4iD6NXCGR5CU1Qgjl30REVLRSa7oyMFDvIpBEIqkQt24z0SFdeJCYgdB1FxF+PxEze/ji3eaeug6JiKhCUff8rfE4OgqF4rUCI6rs/o6Mx8RNEUhMz4GViSGcrU11HRIRkd7SONF5UWZmJkxMTLQVS5nigIFU1nLlCiw8EI0fjuTdmdigmjXCBjXiAIBERKVI487IcrkcM2fOhKurKywsLHD79m0AwJdffomVK1dqPcDSwgEDqSwlJGdi8M//KJOckOYe2Px+cyY5RESlTONEZ9asWVi9ejXmz58PY2NjZXm9evXw888/azU4In0R+yQN5+48g7mxFEsGNsT0HvUgM5TqOiwiIr2ncaLz66+/4qeffsLgwYMhlf73Re3n54fIyEitBkekL5pWr4p5fRpg17hW6Obn8uoFiIhIKzROdB48eFBgsEAgr5NyTk6OVoIiquiepmbh/bUXcDMhVVnWr7Ebqttb6DAqIqLKR+NEx8fHp9ABA7ds2YKGDRtqJSiiiuzC3Wfo+v0J7Lv2CB9vCoeGIzgQEZEWaXzX1dSpUxESEoIHDx5AoVBg69atiIqKwq+//ordu3eXRoylgnddkbYJIfDz8VjM2xeJXIVAdTtzzOvbgAMAEhHpkMYDBgLA8ePHMWPGDERERCA1NRWNGjXC1KlT0bFjx9KIsVRxwEDShqSMHHyyOQL7r8cDAN5q4Iy5fRrAQvZaIzgQEVERSm1kZH3DRIde17/P0zFoxT+49ywdxlIDfPmWN95p5sErOUREpajUHupZvXp1PH36tEB5YmIiqlevrunqiCo8RysTOFrJUK2KKbZ80BzvNvdkkkNEVE5ofF39zp07hfZrycrKwoMHD7QSFFF5l5aVCyOpAYwNDWAkNUDY4EaQSaWwNjPSdWhERPQCtROdnTt3Kv/+66+/YG1trZyWy+U4dOgQPD09tRocUXkU9SgFH6y7gHZ1HPDlWz4AAAfLivkoFCIifad2otOzZ08AeU8lDwkJUZlnZGQET09PLFiwQKvBlSbedUUlseXCv/hi+xVk5iiQnhWH8e1rwdqUV3GIiMorjTsje3l54dy5c7CzsyutmMoUOyOTOjJz5Ji24xo2nr8PAGhdyw6LB/ijqoVMx5EREVVO6p6/Ne6jExsb+1qBEVU0sU/S8MFvFxD5KAUSCfBh+9oY+0ZNSA3Y4ZiIqLxT+66r06dPFxgQ8Ndff4WXlxccHBwwatQoZGVlaT1AIl3KypVj0IoziHyUAjsLY/w2oikmdKjFJIeIqIJQO9GZMWMGrl27ppy+cuUKRowYgQ4dOmDy5MnYtWsX5syZUypBEumKzFCKL9/yQRNPW/w5vjVa1tSPJlsiospC7T46zs7O2LVrFxo3bgwA+Pzzz3H06FGcOHECALB582ZMmzYN169fL71oSwH76NDL/n2ejvjkLAR4VFGWKRQCBryKQ0RUbmh9wMDnz5/D0dFROX306FF07txZOR0YGIj79++XMFyi8uHQjXh0/f4ERq89j/jkTGU5kxwioopJ7UTH0dFR2RE5OzsbFy9eRLNmzZTzU1JSYGTE22ypYsqVKzB3byRGrDmPpIwcuNqYIldRqZ+OQkSkF9S+66pLly6YPHky5s2bh+3bt8PMzAytW7dWzr98+TJq1KhRKkGWBo6jQ/nikzMxbv0lnL3zDAAwtIUn/tfFG8aGGj8hhYiIyhm1++g8efIEvXv3xokTJ2BhYYE1a9agV69eyvnt27dHs2bNMGvWrFILtjSwj07ldiLmCSb8fglP07JhITPEvD4N0LWBs67DIiKiV9D6ODp2dnY4duwYkpKSYGFhAalUqjJ/8+bNsLCwKHnERDqw9dK/eJqWjbpOlvhhcCNUt+f/MBGRPtF4wMAXn3H1Iltb29cOhqisfd2zHqrZmGJMu5owMZK+egEiIqpQ2AmBKpXzd55hytYrUPx/R2MzY0NM7FiHSQ4RkZ7S+IoOUUUkhMCK47cxb18U5AqBeq5WGNzUQ9dhERFRKWOiQ3ovKT0HH2+OwMEb8QCA7n4u6OnvquOoiIioLDDRIb125d8kjFl/AfefZcBYaoCp3XwwuKk7JBIOAEhEVBkw0SG9tf3SA3y65TKy5Qq42Zpi2eAA1HMtvDM9ERHpJyY6pLc87cwhINDRxxHf9PODtSlH7iYiqmwqbaLDkZH1U2pWLixkef/W/m422DamJXxdrNhURURUSak9MrK+4sjI+mPz+fuYtecG1r3XFL4ubKIiItJnWn96OVF5lZEtxyebI/DJlstITM/Bun/u6TokIiIqJypt0xXph9uPUzFm3UVEPkqBgQT4qENthLarqeuwiIionGCiQxXW7ssP8dmWy0jLlsPOQobv3/ZHi5p2ug6LiIjKESY6VCEdjkrA2PWXAABNvWyxZGBDOFiZ6DgqIiIqb5joUIXUppY9WteyQ4Nq1vioQ20YStndjIiICmKiQxXGiZgnaOxZBSZGUkgNJFg1NJAJDhERFYtnCSr3cuQKzNlzA++s/AfTd11TljPJISKiV+EVHSrXHiVlYtyGizh35zkAwMRICoVCwMCAAwASEdGrMdGhcut4zGN8+Hs4nqZlw0JmiPl9G6BLfWddh0VERBUIEx0qd+QKge8PxeD7v2MgBODtbIVlgxvB085c16EREVEFw0SHyp0nqVlYc/oOhAAGNnHDtG6+MDGS6josIiKqgJjoULnjaGWCRQP88TwtG70bVdN1OEREVIEx0SGdUygEVhy/jRr2Fujg4wgAaFfHQcdRERGRPqi0iU5YWBjCwsIgl8t1HUqllpiejUmbI3DwRgKsTY1w6OMg2FnIdB0WERHpCYkQQug6CF1S9zHvpH0R9xMxZt1FPEjMgLGhAb7q5ouBTdwgkfDWcSIiKp665+9Ke0WHdEcIgV9P38XXf15HjlzA3dYMPwxuhHqu1roOjYiI9AwTHSpTuXIFJmwMx5+X4wAAwb6O+KafH6xMjHQcGRER6SMmOlSmDKUGsDE1gqGBBFO6eGN4S082VRERUalhokNlIjNHrhwL58u3fPB2oDvqV2NTFRERlS4+FZFKVUa2HJM2R2D46nOQK/L6vZsYSZnkEBFRmeAVHSo1NxNSEbruIqLiU2AgAc7feYam1avqOiwiIqpEmOhQqdgZ8RBT/riMtGw57Cxk+H6gP5McIiIqc0x0SKuycuWYufs6fjtzDwDQrLotvh/YEA6WJjqOjIiIKiMmOqRVkzZfxq6IhwCAse1q4sMOtWAoZVcwIiLSDSY6pFVj2tbAhTvPMKt3fT6vioiIdI6JDr2WHLkCF+8+V/a/8Xa2wpFP2sHYkFdxiIhI93g2ohKLS8rAwJ/OYPDP/+DC3efKciY5RERUXvCKDpXIsejH+HBjOJ6lZcNSZoikjGxdh0RERFQAEx3SiFwh8N2hGCz5OwZCAL4uVvhhcCN4VDXXdWhEREQFMNEhtT1OycKHGy/h5M2nAIBBTd0x9S0f5aMdiIiIyhsmOqS2vVfjcPLmU5gaSTG7dz30alhN1yEREREVi4kOqe3dZh64/ywd/Ru7oZajpa7DISIieiW9uT0mPT0dHh4emDRpkq5D0RuJ6dmYuuMq0rJyAQASiQSfd/VhkkNERBWG3lzRmTVrFpo1a6brMPRG+P1EhK67iAeJGUjLkmNBfz9dh0RERKQxvbiiExMTg8jISHTu3FnXoVR4QgisPhmLfstP4UFiBjyqmmF4K09dh0VERFQiOk90jh07hm7dusHFxQUSiQTbt28vUCcsLAyenp4wMTFB06ZNcfbsWZX5kyZNwpw5c8ooYv2VkpmDsesv4atd15EjF+hczwm7xrWCr4u1rkMjIiIqEZ0nOmlpafDz80NYWFih8zdu3IiJEydi2rRpuHjxIvz8/BAcHIyEhAQAwI4dO1C7dm3Url1bre1lZWUhOTlZ5UXAzYQUdFtyAn9eiYOhgQRT3/LBD4MbwcrESNehERERlZjO++h07ty52CanhQsXYuTIkRg2bBgAYPny5fjzzz/xyy+/YPLkyThz5gx+//13bN68GampqcjJyYGVlRWmTp1a6PrmzJmD6dOnl8p7qcisTI2Qli2Hi7UJlg5uhEbuVXQdEhER0WuTCCGEroPIJ5FIsG3bNvTs2RMAkJ2dDTMzM2zZskVZBgAhISFITEzEjh07VJZfvXo1rl69im+//bbIbWRlZSErK0s5nZycDDc3NyQlJcHKykqr76e8y5ErYCT976Le1QdJcLUxRRVzYx1GRURE9GrJycmwtrZ+5flb501XxXny5AnkcjkcHR1Vyh0dHfHo0aMSrVMmk8HKykrlVRndTEhB1++PY1fEQ2VZPVdrJjlERKRXdN50pU1Dhw7VdQgVwo7wB5iy9QrSs+VYeCAanes5wVBarnNeIiKiEinXiY6dnR2kUini4+NVyuPj4+Hk5PRa6w4LC0NYWBjkcvlrraciycyRY+bu61j3zz0AQIsaVfHd2w2Z5BARkd4q12c4Y2NjBAQE4NChQ8oyhUKBQ4cOoXnz5q+17tDQUFy/fh3nzp173TArhHtP09F3+Sms++ceJBJg/Bs1sXZEU9hbynQdGhERUanR+RWd1NRU3Lx5UzkdGxuL8PBw2Nrawt3dHRMnTkRISAgaN26MJk2aYPHixUhLS1PehUWv9iQ1C28tOY7kzFxUMTPCogH+aFvHQddhERERlTqdJzrnz59Hu3btlNMTJ04EkHdn1erVqzFgwAA8fvwYU6dOxaNHj+Dv7499+/YV6KBMRbOzkGFAoBsu3H2OpYMawcXGVNchERERlYlydXt5WXqxj050dLTe3V7+MDEDEgngbJ2X1OTIFQCgcjs5ERFRRaXu7eWVNtHJp+4HVZEciUrARxvD4WVnjo2jmzO5ISIivaPu+VvnTVekPXKFwOKD0Vh6+CaEAFzlCiSm57DDMRERVVpMdPREQkomJmwIx+nbTwEA7zRzxxddfWBiJNVxZERERLrDREcPnL71FON/v4THKVkwM5ZiTu/66OHvquuwiIiIdK7SJjr6MmCgQiHw9Z/X8TglC7UdLfDD4ADUdLDQdVhERETlAjsj60Fn5NuPU/HziVh80dUbZsaVNnclIqJKRC8e6kmFu3TvOdaevqOcrm5vgdm96jPJISIiegnPjBWIEAKrTt7BnL03IFcI1HK0RLPqVXUdFhERUbnFRKeCSM7MwWdbLmPv1UcAgC71neDrUjGb2oiIiMpKpU10KlJn5GsPkxC67iLuPE2HkVSCz7t4I6SFJyQSia5DIyIiKtfYGbmcd0bedP4+vth+Fdm5CrjamGLpoIZo6F5F12ERERHpFEdG1hM5cgWycxV4o64DFvb3g42Zsa5DIiIiqjCY6JRDcoWA1CCvWWpQE3fYW8jQwdsRBgZsqiIiItIEby8vZ7ZfeoAu3x1HUnoOAEAikaCjrxOTHCIiohJgolNOZObIMWXrFXy4MRxR8SlYdSpW1yERERFVeGy6KgfuPk3DB79dxPW4ZEgkwLg3amHcG7V0HRYREVGFV2kTnfJye/m+q3H4ZPNlpGTlwtbcGIsH+KNNbXudxkRERKQveHu5Dm8v33T+Pj7dchkA0NijCpYMaghna9MyjYGIiKgi4u3lFcCb3o5wtTFF1wbO+CS4Doyk7DJFRESkTUx0ytj1h8nwdraERCJBFXNj7PuwNSxNjHQdFhERkV7iJYRSIFcInL71FDvCH+D0raeQKwRy5Qp881ckunx/HJvP/6usyySHiIio9PCKjpbtuxqH6buuIy4pU1nmYCmDjZkRouNTAQDR8Sm6Co+IiKhSYaKjRfuuxuGD3y7i5d7dCSlZSEjJgszQAN/080N3PxedxEdERFTZVNqmq7CwMPj4+CAwMFAr65MrBKbvul4gyXmRlakRutZ31sr2iIiI6NUqbaITGhqK69ev49y5c1pZ39nYZyrNVYV5nJKFs7HPtLI9IiIierVKm+hoW0JK8UmOpvWIiIjo9THR0RIHSxOt1iMiIqLXx0RHS5p42cLZ2gRFPWNcAsDZ2gRNvGzLMiwiIqJKjYmOlkgNJJjWzQcACiQ7+dPTuvlAalBUKkRERETaxkRHizrVc8aydxrByVq1ecrJ2gTL3mmETvV4xxUREVFZ4jg6WtapnjPe9HHC2dhnSEjJhINlXnMVr+QQERGVPSY6pUBqIEHzGlV1HQYREVGlx6YrIiIi0ltMdIiIiEhvVdpER9uPgCAiIqLyRyKEKO7xTHovOTkZ1tbWSEpKgpWVla7DISIiIjWoe/6utFd0iIiISP8x0SEiIiK9xUSHiIiI9BYTHSIiItJbTHSIiIhIbzHRISIiIr3FRIeIiIj0FhMdIiIi0ltMdIiIiEhvMdEhIiIivcVEh4iIiPQWEx0iIiLSW4a6DkBXwsLCEBYWBrlcnleQlgZIpQUrSqWAicl/02lpRa/UwAAwNS1Z3fR0oKjnq0okgJlZyepmZAAKRdFxmJuXrG5mJpD/2b1uXTOzvLgBICsLyM3VTl1T07zPGQCys4GcHO3UNTH5739Fk7o5OXn1iyKTAYaGmtfNzc37LIpibAwYGWleVy7P23dFMTLKq69pXYUi739NG3UNDfM+CyDvmEhP105dTY57fkcUXpffEZrX5XdE3t+afEeoQ1RySUlJAoBIyvtaKPjq0kV1ATOzwusBQgQFqda1syu6buPGqnU9PIqu6+OjWtfHp+i6Hh6qdRs3LrqunZ1q3aCgouuamanW7dKl6Lov/1v17Vt83dTU/+qGhBRfNyHhv7pjxhRfNzb2v7qTJhVf9+rV/+pOm1Z83bNn/6s7f37xdQ8f/q/u0qXF1929+7+6q1YVX3fTpv/qbtpUfN1Vq/6ru3t38XWXLv2v7uHDxdedP/+/umfPFl932rT/6l69WnzdSZP+qxsbW3zdMWP+q5uQUHzdkJD/6qamFl+3b1+hori6/I7Ie/E74r8XvyPyXqX8HaE8fyclieKw6YqIiIj0lkQIIXQdhC4lJyfD2toaSQ8fwsrKqmAFXpYuvC4vS2tel5el8/5m01XJ6vI7Iu9vfkdoXldPvyOU5++kpMLP3/+PiY6aHxQRERGVH+qev9l0RURERHqLiQ4RERHpLSY6REREpLeY6BAREZHeYqJDREREeouJDhEREektJjpERESkt5joEBERkd5iokNERER6i4kOERER6S0mOkRERKS3mOgQERGR3mKiQ0RERHrLUNcB6Fr+w9uTk5N1HAkRERGpK/+8nX8eL0qlT3RSUlIAAG5ubjqOhIiIiDSVkpICa2vrIudLxKtSIT2nUCjw8OFDWFpaQiKRKMsDAwNx7ty5AvXVLU9OToabmxvu378PKyur0gleTUXFXNbr02Q5deoWV6ck87gPtbtcWe/Dwsr0dR++zrrUXfZ1919x83kMVoxjsLj55WEfCiGQkpICFxcXGBgU3ROn0l/RMTAwQLVq1QqUS6XSQneKpuVWVlY6P0CLiq2s16fJcurULa5OSeZxH2p3ubLeh8XV17d9+DrrUnfZ191/xc3nMVgxjsHi5peXfVjclZx87IxchNDQUK2Ulwfajq2k69NkOXXqFlenJPO4D7W7XFnvw/K8/wDtxvc661J32dfdf8XN5zFYMY7B4uZXpH1Y6ZuuSktycjKsra2RlJSk818iVDLchxUf92HFxv1X8ZWHfcgrOqVEJpNh2rRpkMlkug6FSoj7sOLjPqzYuP8qvvKwD3lFh4iIiPQWr+gQERGR3mKiQ0RERHqLiQ4RERHpLSY6REREpLeY6BAREZHeYqKjI7t370adOnVQq1Yt/Pzzz7oOhzTUq1cvVKlSBX379tV1KFQC9+/fR9u2beHj44MGDRpg8+bNug6JNJSYmIjGjRvD398f9erVw4oVK3QdEpVAeno6PDw8MGnSpFLbBm8v14Hc3Fz4+Pjg8OHDsLa2RkBAAE6dOoWqVavqOjRS05EjR5CSkoI1a9Zgy5Ytug6HNBQXF4f4+Hj4+/vj0aNHCAgIQHR0NMzNzXUdGqlJLpcjKysLZmZmSEtLQ7169XD+/Hl+j1Ywn3/+OW7evAk3Nzd8++23pbINXtHRgbNnz8LX1xeurq6wsLBA586dsX//fl2HRRpo27YtLC0tdR0GlZCzszP8/f0BAE5OTrCzs8OzZ890GxRpRCqVwszMDACQlZUFIQT4u71iiYmJQWRkJDp37lyq22GiUwLHjh1Dt27d4OLiAolEgu3btxeoExYWBk9PT5iYmKBp06Y4e/asct7Dhw/h6uqqnHZ1dcWDBw/KInTC6+8/0j1t7sMLFy5ALpfDzc2tlKOmF2ljHyYmJsLPzw/VqlXDJ598Ajs7uzKKnrSx/yZNmoQ5c+aUeqxMdEogLS0Nfn5+CAsLK3T+xo0bMXHiREybNg0XL16En58fgoODkZCQUMaRUmG4/yo+be3DZ8+eYciQIfjpp5/KImx6gTb2oY2NDSIiIhAbG4v169cjPj6+rMKv9F53/+3YsQO1a9dG7dq1Sz9YQa8FgNi2bZtKWZMmTURoaKhyWi6XCxcXFzFnzhwhhBAnT54UPXv2VM6fMGGCWLduXZnES6pKsv/yHT58WPTp06cswqRilHQfZmZmitatW4tff/21rEKlIrzOcZjvgw8+EJs3by7NMKkIJdl/kydPFtWqVRMeHh6iatWqwsrKSkyfPr1U4uMVHS3Lzs7GhQsX0KFDB2WZgYEBOnTogNOnTwMAmjRpgqtXr+LBgwdITU3F3r17ERwcrKuQ6QXq7D8q39TZh0IIDB06FG+88QbeffddXYVKRVBnH8bHxyMlJQUAkJSUhGPHjqFOnTo6iZdUqbP/5syZg/v37+POnTv49ttvMXLkSEydOrVU4jEslbVWYk+ePIFcLoejo6NKuaOjIyIjIwEAhoaGWLBgAdq1aweFQoFPP/2UdwqUE+rsPwDo0KEDIiIikJaWhmrVqmHz5s1o3rx5WYdLhVBnH548eRIbN25EgwYNlH0L1q5di/r165d1uFQIdfbh3bt3MWrUKGUn5HHjxnH/lRPqfo+WFSY6OtK9e3d0795d12FQCR08eFDXIdBraNWqFRQKha7DoNfQpEkThIeH6zoM0oKhQ4eW6vrZdKVldnZ2kEqlBTrFxcfHw8nJSUdRkbq4/yo+7sOKj/uwYitv+4+JjpYZGxsjICAAhw4dUpYpFAocOnSITRsVAPdfxcd9WPFxH1Zs5W3/semqBFJTU3Hz5k3ldGxsLMLDw2Frawt3d3dMnDgRISEhaNy4MZo0aYLFixcjLS0Nw4YN02HUlI/7r+LjPqz4uA8rtgq1/0rlXi49d/jwYQGgwCskJERZZ8mSJcLd3V0YGxuLJk2aiDNnzuguYFLB/VfxcR9WfNyHFVtF2n981hURERHpLfbRISIiIr3FRIeIiIj0FhMdIiIi0ltMdIiIiEhvMdEhIiIivcVEh4iIiPQWEx0iIiLSW0x0iIiISG8x0SEiIiK9xUSHqJy6c+cOJBIJwsPDdR2KUmRkJJo1awYTExP4+/vrOpxCeXp6YvHixcppiUSC7du3q7380KFD0bNnT63HpamX3wcRlQwTHaIiDB06FBKJBHPnzlUp3759OyQSiY6i0q1p06bB3NwcUVFRKk8mJu07d+4cRo0apeswStVXX31VbhNm0h9MdIiKYWJignnz5uH58+e6DkVrsrOzS7zsrVu30KpVK3h4eKBq1apajKp4Qgjk5uaW2fbKA3t7e5iZmRU5PycnpwyjIaq4mOgQFaNDhw5wcnLCnDlziqxT2K/SxYsXw9PTUzmd3xwye/ZsODo6wsbGBjNmzEBubi4++eQT2Nraolq1ali1alWB9UdGRqJFixYwMTFBvXr1cPToUZX5V69eRefOnWFhYQFHR0e8++67ePLkiXJ+27ZtMXbsWHz44Yews7NDcHBwoe9DoVBgxowZqFatGmQyGfz9/bFv3z7lfIlEggsXLmDGjBmQSCT46quvCl1P/vbGjh0La2tr2NnZ4csvv8SLzw9eu3YtGjduDEtLSzg5OWHQoEFISEhQzj9y5AgkEgn27t2LgIAAyGQynDhxArdu3UKPHj3g6OgICwsLBAYG4uDBg4XGUZT79++jf//+sLGxga2tLXr06IE7d+5otI4TJ06gdevWMDU1hZubG8aPH4+0tDTlfE9PT8yePRvDhw+HpaUl3N3d8dNPPynnt2jRAp999pnKOh8/fgwjIyMcO3ZMuY6Xm+CWLVuG7t27w9zcHLNmzQIALFu2DDVq1ICxsTHq1KmDtWvXqqxXIpHg559/Rq9evWBmZoZatWph586dyvn5n/Vff/2Fhg0bwtTUFG+88QYSEhKwd+9eeHt7w8rKCoMGDUJ6erpyOYVCgTlz5sDLywumpqbw8/PDli1bCqz30KFDaNy4MczMzNCiRQtERUUBAFavXo3p06cjIiICEokEEokEq1evhhACX331Fdzd3SGTyeDi4oLx48drtH+IVOjkmelEFUBISIjo0aOH2Lp1qzAxMRH3798XQgixbds28eKhM23aNOHn56ey7KJFi4SHh4fKuiwtLUVoaKiIjIwUK1euFABEcHCwmDVrloiOjhYzZ84URkZGyu3ExsYKAKJatWpiy5Yt4vr16+K9994TlpaW4smTJ0IIIZ4/fy7s7e3FlClTxI0bN8TFixfFm2++Kdq1a6fcdlBQkLCwsBCffPKJiIyMFJGRkYW+34ULFworKyuxYcMGERkZKT799FNhZGQkoqOjhRBCxMXFCV9fX/Hxxx+LuLg4kZKSUuh68rc3YcIEERkZKX777TdhZmYmfvrpJ2WdlStXij179ohbt26J06dPi+bNm4vOnTsr5x8+fFgAEA0aNBD79+8XN2/eFE+fPhXh4eFi+fLl4sqVKyI6Olp88cUXwsTERNy9e1e5rIeHh1i0aJFyGoDYtm2bEEKI7Oxs4e3tLYYPHy4uX74srl+/LgYNGiTq1KkjsrKyVPZ7UW7evCnMzc3FokWLRHR0tDh58qRo2LChGDp0qEoMtra2IiwsTMTExIg5c+YIAwMD5We/dOlS4e7uLhQKhXKZJUuWqJQV9j4cHBzEL7/8Im7duiXu3r0rtm7dKoyMjERYWJiIiooSCxYsEFKpVPz9998qy1WrVk2sX79exMTEiPHjxwsLCwvx9OlTlc+6WbNm4sSJE+LixYuiZs2aIigoSHTs2FFcvHhRHDt2TFStWlXMnTtXud6vv/5a1K1bV+zbt0/cunVLrFq1SshkMnHkyBGV9TZt2lQcOXJEXLt2TbRu3Vq0aNFCCCFEenq6+Pjjj4Wvr6+Ii4sTcXFxIj09XWzevFlYWVmJPXv2iLt374p//vlH5X+HSFNMdIiK8OIJr1mzZmL48OFCiJInOh4eHkIulyvL6tSpI1q3bq2czs3NFebm5mLDhg1CiP8SnRdPLjk5OaJatWpi3rx5QgghZs6cKTp27Kiy7fv37wsAIioqSgiRl3g0bNjwle/XxcVFzJo1S6UsMDBQjBkzRjnt5+cnpk2bVux6goKChLe3t8pJ/LPPPhPe3t5FLnPu3DkBQJk85Z8kt2/f/sq4fX19xZIlS5TTxSU6a9euFXXq1FGJLSsrS5iamoq//vpLCPHqRGfEiBFi1KhRKmXHjx8XBgYGIiMjQxnDO++8o5yvUCiEg4ODWLZsmRBCiISEBGFoaCiOHTumrNO8eXPx2WefFfs+PvzwQ5XttmjRQowcOVKlrF+/fqJLly4qy33xxRfK6dTUVAFA7N27Vwjx32d98OBBZZ05c+YIAOLWrVvKstGjR4vg4GAhhBCZmZnCzMxMnDp1qsBnM3DgwCLX++effwoAys+psGNnwYIFonbt2iI7O1sQaQObrojUMG/ePKxZswY3btwo8Tp8fX1hYPDfIefo6Ij69esrp6VSKapWrarShAMAzZs3V/5taGiIxo0bK+OIiIjA4cOHYWFhoXzVrVsXQF5/mnwBAQHFxpacnIyHDx+iZcuWKuUtW7Ys0Xtu1qyZSoft5s2bIyYmBnK5HABw4cIFdOvWDe7u7rC0tERQUBAA4N69eyrrady4scp0amoqJk2aBG9vb9jY2MDCwgI3btwosFxRIiIicPPmTVhaWio/L1tbW2RmZqp8Xq9ax+rVq1U+8+DgYCgUCsTGxirrNWjQQPm3RCKBk5OTct/a29ujY8eOWLduHQAgNjYWp0+fxuDBg4vd9sufx40bN9TaZy/GYm5uDisrqwL/Zy/WcXR0hJmZGapXr65Slr/MzZs3kZ6ejjfffFPlc/j1118LfI4vrtfZ2RkACmz7Rf369UNGRgaqV6+OkSNHYtu2bZWufxZpl6GuAyCqCNq0aYPg4GBMmTIFQ4cOVZlnYGCg0v8EKLyjqJGRkcq0RCIptEyhUKgdV2pqKrp164Z58+YVmJd/UgHyTm7lRVpaGoKDgxEcHIx169bB3t4e9+7dQ3BwcIGO0i/HPWnSJBw4cADffvstatasCVNTU/Tt21ftDtapqakICAhQJhgvsre3V3sdo0ePLrTfiLu7u/LvV+3bwYMHY/z48ViyZAnWr1+P+vXrqyS+hSnpflTn/+zFOq/630xNTQUA/Pnnn3B1dVWpJ5PJil0vgGL/x93c3BAVFYWDBw/iwIEDGDNmDL755hscPXq0QExE6mCiQ6SmuXPnwt/fH3Xq1FEpt7e3x6NHjyCEUH6Ra3PsmzNnzqBNmzYAgNzcXFy4cAFjx44FADRq1Ah//PEHPD09YWhY8sPZysoKLi4uOHnypPLqCgCcPHkSTZo00Xh9//zzT4H3UKtWLUilUkRGRuLp06eYO3cu3NzcAADnz59Xa70nT57E0KFD0atXLwB5J1xNOhI3atQIGzduhIODA6ysrNRe7uV1XL9+HTVr1izR8vl69OiBUaNGYd++fVi/fj2GDBmi8Tq8vb1x8uRJhISEKMtOnjwJHx+f14rtVXx8fCCTyXDv3j2V/xdNGRsbK6/yvcjU1BTdunVDt27dEBoairp16+LKlSto1KjR64RNlRSbrojUVL9+fQwePBjff/+9Snnbtm3x+PFjzJ8/H7du3UJYWBj27t2rte2GhYVh27ZtiIyMRGhoKJ4/f47hw4cDAEJDQ/Hs2TMMHDgQ586dw61bt/DXX39h2LBhhZ5AivPJJ59g3rx52LhxI6KiojB58mSEh4djwoQJGsd87949TJw4EVFRUdiwYQOWLFmiXI+7uzuMjY2xZMkS3L59Gzt37sTMmTPVWm+tWrWwdetWhIeHIyIiAoMGDdLoCtjgwYNhZ2eHHj164Pjx44iNjcWRI0cwfvx4/Pvvv2qt47PPPsOpU6cwduxYhIeHIyYmBjt27FAmn+oyNzdHz5498eWXX+LGjRsYOHCgRssDefts9erVWLZsGWJiYrBw4UJs3boVkyZN0nhdmrC0tMSkSZPw0UcfYc2aNbh16xYuXryIJUuWYM2aNWqvx9PTE7GxsQgPD8eTJ0+QlZWF1atXY+XKlbh69Spu376N3377DaampvDw8CjFd0T6jIkOkQZmzJhR4MTq7e2NH374AWFhYfDz88PZs2e1eqKZO3cu5s6dCz8/P5w4cQI7d+6EnZ0dACivwsjlcnTs2BH169fHhx9+CBsbG5X+QOoYP348Jk6ciI8//hj169fHvn37sHPnTtSqVUvjmIcMGYKMjAw0adIEoaGhmDBhgnLwO3t7e6xevRqbN2+Gj48P5s6di2+//Vat9S5cuBBVqlRBixYt0K1bNwQHB2v0K9/MzAzHjh2Du7s7evfuDW9vb4wYMQKZmZlqX+Fp0KABjh49iujoaLRu3RoNGzbE1KlT4eLionYc+QYPHoyIiAi0bt1apdlLXT179sR3332Hb7/9Fr6+vvjxxx+xatUqtG3bVuN1aWrmzJn48ssvMWfOHHh7e6NTp074888/4eXlpfY6+vTpg06dOqFdu3awt7fHhg0bYGNjgxUrVqBly5Zo0KABDh48iF27dpXpuE2kXyTi5c4FRESvoW3btvD39+fjC4ioXOAVHSIiItJbTHSIiIhIb7HpioiIiPQWr+gQERGR3mKiQ0RERHqLiQ4RERHpLSY6REREpLeY6BAREZHeYqJDREREeouJDhEREektJjpERESkt/4PazKhaORKf5gAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" } - ] - }, - { - "cell_type": "code", + ], "source": [ "%matplotlib inline\n", "\n", @@ -770,42 +777,26 @@ "plt.xlabel(\"Number of parallel environments\")\n", "plt.title(f\"Steps per second for {MPE_ENV}\")\n", "plt.show()" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 476 - }, - "id": "6YLL7Aj-ShER", - "outputId": "479f72ba-cf75-4796-9577-7bf37d7d0a13" - }, - "execution_count": 11, - "outputs": [ - { - "output_type": "display_data", - "data": { - "text/plain": [ - "
" - ], - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjoAAAHLCAYAAADBbjLhAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB33klEQVR4nO3dd1QU19sH8O+ywNJBpCPNDqigiF3RaMQSe4uaiCVqIpbEmER/STRqrIklUaKJMWqMGkvsUWOJvcQKVoqKJYpgo/fd+/7By8aV4i4uLCzfzzl7DnPnzsyzO8zOs3Pv3JEIIQSIiIiI9JCBrgMgIiIiKi1MdIiIiEhvMdEhIiIivcVEh4iIiPQWEx0iIiLSW0x0iIiISG8x0SEiIiK9xUSHiIiI9BYTHSIiItJbTHSIKrk7d+5AIpFg9erVr6wbExODjh07wtraGhKJBNu3by/1+PSFJp9zaWjbti3atm2rk22r65tvvkH16tUhlUrh7++v63BITzDR0WNXrlxB37594eHhARMTE7i6uuLNN9/EkiVLVOrNnj2bJyxSS0hICK5cuYJZs2Zh7dq1aNy4caltKz8xkEgk+PrrrwutM3jwYEgkElhYWKiUt23bVrmsRCKBra0tAgMD8csvv0ChUCjrDR06VKXeiy8TE5NSe29U0P79+/Hpp5+iZcuWWLVqFWbPnq3rkCqcFStWICgoCI6OjpDJZPDy8sKwYcNw584dXYemU4a6DoBKx6lTp9CuXTu4u7tj5MiRcHJywv3793HmzBl89913GDdunLLu7Nmz0bdvX/Ts2VN3AVO5l5GRgdOnT+Pzzz/H2LFjy2y7JiYm2LBhA7744guV8rS0NOzYsaPIhKRatWqYM2cOAODx48f49ddfMWLECERHR2Pu3LnKejKZDD///HOB5aVSqRbfBeDh4YGMjAwYGRlpdb364u+//4aBgQFWrlwJY2NjXYdTIV26dAleXl7o3r07qlSpgtjYWKxYsQK7d+9GREQEXFxcdB2iTjDR0VOzZs2CtbU1zp07BxsbG5V5CQkJugmqnFMoFMjOzuYv+SI8fvwYAAr8P72OtLQ0mJubF1unS5cu2Lp1KyIiIuDn56cs37FjB7Kzs9GpUyf8/fffBZaztrbGO++8o5wePXo06tSpg6VLl2LmzJnKhMPQ0FClXmmpbFeJ1Nm3L0pISICpqalWk5z09HSYmZlpbX3l3Q8//FCgrGfPnmjcuDF+/fVXTJ48WQdR6R6brvTUrVu34OvrW+hJycHBQfm3RCJBWloa1qxZo7xkP3ToUOX8Bw8eYPjw4cpLob6+vvjll19U1nfkyBFIJBJs3LgR//vf/+Dk5ARzc3N0794d9+/fV6kbExODPn36wMnJCSYmJqhWrRrefvttJCUlFft+2rZti3r16uHChQto0aIFTE1N4eXlheXLlxeom5WVhWnTpqFmzZqQyWRwc3PDp59+iqysLJV6EokEY8eOxbp16+Dr6wuZTIZ9+/YVGcP58+cRHBwMOzs75faHDx+uUkehUGDx4sXw9fWFiYkJHB0dMXr0aDx//rzA+vbu3YugoCBYWlrCysoKgYGBWL9+vUqdzZs3IyAgAKamprCzs8M777yDBw8eqNQZOnQoLCws8ODBA/Ts2RMWFhawt7fHpEmTIJfLVeomJiZi6NChsLa2ho2NDUJCQpCYmFjke8731VdfwcPDAwDwySefQCKRwNPTUzn/0qVL6Ny5M6ysrGBhYYH27dvjzJkzKutYvXo1JBIJjh49ijFjxsDBwQHVqlV75babN28OLy+vAp/NunXr0KlTJ9ja2r5yHQBgZmaGZs2aIS0tTZm0adOBAwfQqlUr2NjYwMLCAnXq1MH//vc/5fzC+ujk77t79+7hrbfegoWFBVxdXREWFgYgr/n5jTfegLm5OTw8PAp8Bvmf6bFjxzB69GhUrVoVVlZWGDJkSKH/cy9T91h5lfz3cevWLXTp0gWWlpYYPHgwAPWOCYlEglWrViEtLU35PfTi5/Tbb78pjwNbW1u8/fbbBb5bXvyOaNOmDczMzJSfv6bfCdu3b0e9evWU33mFfS88ePAAI0aMgIuLi7KZ6IMPPkB2drayTmJiIj788EO4ublBJpOhZs2amDdvnkrz6auMHTsWFhYWSE9PLzBv4MCBcHJyKnCcvyj/OFXnONdXvKKjpzw8PHD69GlcvXoV9erVK7Le2rVr8d5776FJkyYYNWoUAKBGjRoAgPj4eDRr1kx58Nvb22Pv3r0YMWIEkpOT8eGHH6qsa9asWZBIJPjss8+QkJCAxYsXo0OHDggPD4epqSmys7MRHByMrKwsjBs3Dk5OTnjw4AF2796NxMREWFtbF/uenj9/ji5duqB///4YOHAgNm3ahA8++ADGxsbKhEOhUKB79+44ceIERo0aBW9vb1y5cgWLFi1CdHR0gb5If//9NzZt2oSxY8fCzs5O5eT9ooSEBHTs2BH29vaYPHkybGxscOfOHWzdulWl3ujRo7F69WoMGzYM48ePR2xsLJYuXYpLly7h5MmTyqsIq1evxvDhw+Hr64spU6bAxsYGly5dwr59+zBo0CBlnWHDhiEwMBBz5sxBfHw8vvvuO5w8eRKXLl1SSWLlcjmCg4PRtGlTfPvttzh48CAWLFiAGjVq4IMPPgAACCHQo0cPnDhxAu+//z68vb2xbds2hISEFPu5A0Dv3r1hY2ODjz76CAMHDkSXLl2U/WKuXbuG1q1bw8rKCp9++imMjIzw448/om3btjh69CiaNm2qsq4xY8bA3t4eU6dORVpa2iu3DeR9of/222+YO3cuJBIJnjx5gv3792Pt2rXFJqcvu337NqRSaYEfAE+ePClQ19jYGFZWVmqt99q1a3jrrbfQoEEDzJgxAzKZDDdv3sTJkydfuaxcLkfnzp3Rpk0bzJ8/H+vWrcPYsWNhbm6Ozz//HIMHD0bv3r2xfPlyDBkyRJn4vWjs2LGwsbHBV199haioKCxbtgx3795V/ggpjKbHyqvk5uYiODgYrVq1wrfffqu8kqLOMbF27Vr89NNPOHv2rLIZsUWLFgDyvle+/PJL9O/fH++99x4eP36MJUuWoE2bNgWOg6dPn6Jz5854++238c4778DR0VHj93nixAls3boVY8aMgaWlJb7//nv06dMH9+7dQ9WqVQEADx8+RJMmTZCYmIhRo0ahbt26ePDgAbZs2YL09HQYGxsjPT0dQUFBePDgAUaPHg13d3ecOnUKU6ZMQVxcHBYvXqzW5zpgwACEhYXhzz//RL9+/ZTl6enp2LVrF4YOHVqgmfXp06eQy+W4d+8eZsyYAQBo37692vtS7wjSS/v37xdSqVRIpVLRvHlz8emnn4q//vpLZGdnF6hrbm4uQkJCCpSPGDFCODs7iydPnqiUv/3228La2lqkp6cLIYQ4fPiwACBcXV1FcnKyst6mTZsEAPHdd98JIYS4dOmSACA2b96s8fsJCgoSAMSCBQuUZVlZWcLf3184ODgo39fatWuFgYGBOH78uMryy5cvFwDEyZMnlWUAhIGBgbh27dort79t2zYBQJw7d67IOsePHxcAxLp161TK9+3bp1KemJgoLC0tRdOmTUVGRoZKXYVCIYQQIjs7Wzg4OIh69eqp1Nm9e7cAIKZOnaosCwkJEQDEjBkzVNbVsGFDERAQoJzevn27ACDmz5+vLMvNzRWtW7cWAMSqVauK/QxiY2MFAPHNN9+olPfs2VMYGxuLW7duKcsePnwoLC0tRZs2bZRlq1atEgBEq1atRG5ubrHbenl7V69eFQCU+zUsLExYWFiItLQ0ERISIszNzVWWDQoKEnXr1hWPHz8Wjx8/Fjdu3BDjx48XAES3bt2U9fI/u8JewcHBr4wx36JFiwQA8fjx41e+nxc/5/ztz549W1n2/PlzYWpqKiQSifj999+V5ZGRkQKAmDZtmrIs/zMNCAhQObbnz58vAIgdO3aofCZBQUHKaU2OlVfJfx+TJ09WKVf3mMhfx8v78c6dO0IqlYpZs2aplF+5ckUYGhqqlOd/RyxfvlylrqbfCcbGxuLmzZvKsoiICAFALFmyRFk2ZMgQYWBgUOj3Qf4xPHPmTGFubi6io6NV5k+ePFlIpVJx7969AssWRqFQCFdXV9GnTx+V8vzv12PHjhVYRiaTKf+Pq1atKr7//nu1tqWv2HSlp958802cPn0a3bt3R0REBObPn4/g4GC4urpi586dr1xeCIE//vgD3bp1gxACT548Ub6Cg4ORlJSEixcvqiwzZMgQWFpaKqf79u0LZ2dn7NmzBwCUV2z++uuvQi/DvoqhoSFGjx6tnDY2Nsbo0aORkJCACxcuAMhr6vH29kbdunVVYn7jjTcAAIcPH1ZZZ1BQEHx8fF657fxfjbt370ZOTk6hdTZv3gxra2u8+eabKtsOCAiAhYWFctsHDhxASkoKJk+eXKDPRv6v7/PnzyMhIQFjxoxRqdO1a1fUrVsXf/75Z4Htv//++yrTrVu3xu3bt5XTe/bsgaGhofIKD5DX4fbFjumaksvl2L9/P3r27Inq1asry52dnTFo0CCcOHECycnJKsuMHDlS446+vr6+aNCgATZs2AAAWL9+PXr06FFs/4vIyEjY29vD3t4e3t7eWLJkCbp27Vqg6dXExAQHDhwo8Hqxw/Kr5P9/7NixQ6NmiXzvvfeeyrrq1KkDc3Nz9O/fX1lep04d2NjYqOzTfKNGjVLp5PzBBx/A0NBQeewVRtNjRR0v/m/lb0OdY6IoW7duhUKhQP/+/VWWd3JyQq1atQosL5PJMGzYsNd6nx06dFBe1QaABg0awMrKSvm5KxQKbN++Hd26dSv0rsP8Y3jz5s1o3bo1qlSporLdDh06QC6X49ixY8W+9xfX169fP+zZswepqanK8o0bN8LV1RWtWrUqsMzevXuxZ88eLFiwAO7u7mpfOdVXbLrSY4GBgdi6dSuys7MRERGBbdu2YdGiRejbty/Cw8OLPcE/fvwYiYmJ+Omnn/DTTz8VWuflTs21atVSmZZIJKhZs6by1kYvLy9MnDgRCxcuxLp169C6dWt0794d77zzziubrQDAxcWlQOfG2rVrA8jr/9CsWTPExMTgxo0bsLe3Vyvml5sAihIUFIQ+ffpg+vTpWLRoEdq2bYuePXti0KBBkMlkAPL6HyUlJan0gSps27du3QKAYpsU7969CyDv5PayunXr4sSJEyplJiYmBd5zlSpVVPpB3L17F87OzgVuxS5sG+p6/Pgx0tPTC12Ht7c3FAoF7t+/D19fX2W5up/5ywYNGoQFCxbgo48+wqlTp1T6vxTG09MTK1asUHYCrlWrVqH7RiqVokOHDiWKKd+AAQPw888/47333sPkyZPRvn179O7dG3379oWBQfG/Jwvbd9bW1qhWrVqBZidra+tC+968fOxZWFjA2dm52NuKNT1WXsXQ0LBAnyt1j4niYhRCFHh/+V6+g83V1bVAZ2ZN36e7u3uBOi8eS48fP0ZycnKxx2/+di9fvqyVz3fAgAFYvHgxdu7ciUGDBiE1NRV79uzB6NGjC22abNeuHQCgc+fO6NGjB+rVqwcLC4syvVuyPGGiUwkYGxsjMDAQgYGBqF27NoYNG4bNmzdj2rRpRS6T/6v0nXfeKbIPR4MGDTSOZcGCBRg6dCh27NiB/fv3Y/z48ZgzZw7OnDmjVsfUV1EoFKhfvz4WLlxY6Hw3NzeVaVNTU7XWK5FIsGXLFpw5cwa7du3CX3/9heHDh2PBggU4c+YMLCwsoFAo4ODggHXr1hW6jqK+8LRB27dClyZ1P/OXDRw4EFOmTMHIkSNRtWpVdOzYsdj65ubmr53AqMvU1BTHjh3D4cOH8eeff2Lfvn3YuHEj3njjDezfv7/Y/VPUvKLKhRBaiVnTY+VVZDJZgaTudY8JhUIBiUSCvXv3Fvp5vJy0F/a/pen71NbnrlAo8Oabb+LTTz8tdH7+jzR1NGvWDJ6enti0aRMGDRqEXbt2ISMjAwMGDHjlsjVq1EDDhg2Vfb8qIyY6lUz+pda4uDhlWWG/COzt7WFpaQm5XK72ySImJkZlWgiBmzdvFkiI6tevj/r16+OLL77AqVOn0LJlSyxfvrzIQeHyPXz4sMAtq9HR0QD+u7OgRo0aiIiIQPv27YvshPk6mjVrhmbNmmHWrFlYv349Bg8ejN9//x3vvfceatSogYMHD6Jly5bFnszzL4tfvXoVNWvWLLRO/h1OUVFRykvs+aKiopTzNeHh4YFDhw4hNTVV5QQRFRWl8bry2dvbw8zMrNB1REZGwsDAQOMTZlHc3d3RsmVLHDlyRNk0U54YGBigffv2aN++PRYuXIjZs2fj888/x+HDh0s94YqJiVH+igeA1NRUxMXFoUuXLkUuU9rHSv421DkmilteCAEvLy+NEoOX16HN92lvbw8rKytcvXr1ldtNTU3V2r7v378/vvvuOyQnJ2Pjxo3w9PREs2bN1Fo2IyND4zvp9An76Oipw4cPF/oLJL/N/sWmBnNz8wK3HkqlUvTp0wd//PFHoQd0Ybfn/vrrr0hJSVFOb9myBXFxcejcuTMAIDk5Gbm5uSrL1K9fHwYGBmodhLm5ufjxxx+V09nZ2fjxxx9hb2+PgIAAAHlfBg8ePMCKFSsKLJ+RkVHiturnz58X+Dzzh6jPj71///6Qy+WYOXNmobHnf8YdO3aEpaUl5syZg8zMTJV6+dto3LgxHBwcsHz5cpXPZu/evbhx4wa6du2q8Xvo0qULcnNzsWzZMmWZXC4vMFK2JqRSKTp27IgdO3aoNJPEx8dj/fr1aNWqldp3Lqnj66+/xrRp016rX1FpePbsWYGyl/8/StNPP/2k0nds2bJlyM3NVR57hSmtY+XlbahzTBSld+/ekEqlmD59eoHjTwiBp0+fqhWDNt+ngYEBevbsiV27duH8+fMF5ufH2b9/f5w+fRp//fVXgTqJiYkFvgtfZcCAAcjKysKaNWuwb98+lf5bQN7nWViz5tmzZ3HlypVSHcW8vCtfP4lIa8aNG4f09HT06tULdevWRXZ2Nk6dOqX8JfBih72AgAAcPHgQCxcuhIuLC7y8vNC0aVPMnTsXhw8fRtOmTTFy5Ej4+Pjg2bNnuHjxIg4ePFjgy93W1hatWrXCsGHDEB8fj8WLF6NmzZoYOXIkgLxbuceOHYt+/fqhdu3ayM3Nxdq1a5VJ1au4uLhg3rx5uHPnDmrXro2NGzciPDwcP/30k7Kt/t1338WmTZvw/vvv4/Dhw2jZsiXkcjkiIyOxadMm/PXXXyU64NesWYMffvgBvXr1Qo0aNZCSkoIVK1bAyspK+as5KCgIo0ePxpw5cxAeHo6OHTvCyMgIMTEx2Lx5M7777jv07dsXVlZWWLRoEd577z0EBgZi0KBBqFKlCiIiIpCeno41a9bAyMgI8+bNw7BhwxAUFISBAwcqby/39PTERx99pPF76NatG1q2bInJkyfjzp078PHxwdatW185htGrfP3118oxZMaMGQNDQ0P8+OOPyMrKwvz5819r3S8LCgpCUFCQVteZm5uL3377rdB5vXr1UmvQuxkzZuDYsWPo2rUrPDw8kJCQgB9++AHVqlUrtLOotmVnZ6N9+/bo378/oqKi8MMPP6BVq1bo3r17kcuU1rHyInWPiaLUqFEDX3/9NaZMmYI7d+6gZ8+esLS0RGxsLLZt24ZRo0Zh0qRJxcZQGu9z9uzZ2L9/P4KCgpS3rMfFxWHz5s04ceIEbGxs8Mknn2Dnzp146623MHToUAQEBCAtLQ1XrlzBli1bcOfOHdjZ2am9zUaNGqFmzZr4/PPPkZWVVaDZKjU1FW5ubhgwYAB8fX1hbm6OK1euYNWqVbC2tsaXX36p0XvUKzq514tK3d69e8Xw4cNF3bp1hYWFhTA2NhY1a9YU48aNE/Hx8Sp1IyMjRZs2bYSpqakAoHKreXx8vAgNDRVubm7CyMhIODk5ifbt24uffvpJWSf/9vINGzaIKVOmCAcHB2Fqaiq6du0q7t69q6x3+/ZtMXz4cFGjRg1hYmIibG1tRbt27cTBgwdf+X6CgoKEr6+vOH/+vGjevLkwMTERHh4eYunSpQXqZmdni3nz5glfX18hk8lElSpVREBAgJg+fbpISkpS1gMgQkND1fo8L168KAYOHCjc3d2FTCYTDg4O4q233hLnz58vUPenn34SAQEBwtTUVFhaWor69euLTz/9VDx8+FCl3s6dO0WLFi2EqampsLKyEk2aNBEbNmxQqbNx40bRsGFDIZPJhK2trRg8eLD4999/VeoUdluuEEJMmzZNvHyIP336VLz77rvCyspKWFtbi3fffVd5239Jby/P/3yCg4OFhYWFMDMzE+3atROnTp1SqZN/K3Rxt+iru70XFXV7ua+v7yu3Udzt5QBEbGysWrEeOnRI9OjRQ7i4uAhjY2Ph4uIiBg4cqHJrcVG3lxe274qK38PDQ3Tt2lU5nf+ZHj16VIwaNUpUqVJFWFhYiMGDB4unT58WWOeLt5cLof6x8ipFvY986hwTxa3jjz/+EK1atRLm5ubC3Nxc1K1bV4SGhoqoqCiV91fUPn/d7wQPD48CQ3DcvXtXDBkyRNjb2wuZTCaqV68uQkNDRVZWlrJOSkqKmDJliqhZs6YwNjYWdnZ2okWLFuLbb78tdKiPV/n8888FAFGzZs0C87KyssSECRNEgwYNhJWVlTAyMhIeHh5ixIgRav8f6yuJEFrq2UaV1pEjR9CuXTts3ry52F9nr6Nt27Z48uTJK9vFiSqT/IH4zp07V6mbJoiKwz46REREpLfYR4eIqBiPHj0qdr6pqala40BVRElJScjIyCi2jpOTUxlFo3+ePXum8mysl0ml0lIdlqKyYKJDRFQMZ2fnYueHhISoPIBSn0yYMAFr1qwptg57P5Rc7969cfTo0SLne3h4FDvoI6mHfXSIiIpx8ODBYue7uLio9RiRiuj69et4+PBhsXXKalBGfXThwoVinzJvamqKli1blmFE+omJDhEREektdkYmIiIivVXp++goFAo8fPgQlpaWpTYMOhEREWmXEAIpKSlwcXEp9uG5lTbRCQsLQ1hYGLKzs5VPkyYiIqKK5f79+8U+FLrS99FJSkqCjY0N7t+/r9Vn8hAREVHpSU5OhpubGxITE4sd4qHSXtHJl99cZWVlxUSHiIiognlVtxN2RiYiIiK9xUSHiIiI9Falb7pSh0KhKHaYbtIPRkZGkEqlug6DiIi0iInOK2RnZyM2NhYKhULXoVAZsLGxgZOTE4caICLSE0x0iiGEQFxcHKRSKdzc3Iq9T58qNiEE0tPTkZCQAODVzzciIqKKgYlOMXJzc5Geng4XFxeYmZnpOhwqZaampgCAhIQEODg4sBmLiEgP8BJFMeRyOQDA2NhYx5FQWclPaHNycnQcCRERaUOlTXTCwsLg4+ODwMDAV9Zlf43Kg/uaiEi/VNpEJzQ0FNevX8e5c+d0HQoREZHekSsETt96ih3hD3D61lPIFbp5EAP76BAREZFW7bsah+m7riMuKVNZ5mxtgmndfNCpXtne7FFpr+iUpfKS1RIREZW2fVfj8MFvF1WSHAB4lJSJD367iH1X48o0HiY6pWzf1Ti0mvc3Bq44gwm/h2PgijNoNe/vUt3RQ4cORc+ePVXK5syZA6lUim+++aZA/c8++wyenp5ISUlRKe/WrRvatGnDMYSIiEgtcoXA9F3XUdjP+fyy6buul+kPfiY6pag8ZbW//PILPv30U/zyyy8F5s2YMQMWFhaYOHGiSv3Dhw9j1apVHD+IiIjUcjb2WYFz3osEgLikTJyNfVZmMfEMVgLp2blFvjJz8m5JVyer/eqlrLaodb6uo0ePIiMjAzNmzEBycjJOnTqlMl8mk2HNmjVYs2YN9u3bh3v37uGjjz7C/PnzUaNGjdfePhERVQ4JKUUnOSWppw3sjFwCPlP/KnJeuzr2WDWsiVpZ7aP/z2qb16gKAGg17zCepRV8ptaduV1fK96VK1di4MCBMDIywsCBA7Fy5Uq0aNFCpU5AQACmTJmC9957DzVq1ECTJk3wwQcfvNZ2iYio8niSmoUD1+PVqutgaVLK0fyHV3RKSXnJapOTk7Flyxa88847AIB33nkHmzZtQmpqaoG6X3zxBQwMDPDPP/9g5cqVHFOGiIhe6WlqFubsvYHW8w5j9+Xiu2RIkHf3VRMv27IJDryiUyLXZwQXOc/g/5MDdbPVF+ud+Kzd6wVWiA0bNqBGjRrw8/MDAPj7+8PDwwMbN27EiBEjVOoeOHAAjx49AgCcO3cO7u7uWo+HiIj0y66Ih/jx6G0AQINq1mhdyw4/HL4FACrdN/J/Ok/r5gOpQdn9kGaiUwJmxq/+2Jp42cLZ2gSPkjIL7acjAeD0Ularzno1tXLlSly7dg2Ghv+tW6FQ4JdfflFJdJ4/f46RI0fiiy++gBACY8aMQVBQEOzs7LQeExERVVzP0rIRl5QBXxdrAMDbTdxxPOYJBjdzR7s6DpBIJKjval1gHB0nHY2jw0SnlEgNJJjWzQcf/HYREugmq71y5QrOnz+PI0eOwNb2v4Tq2bNnaNu2LSIjI1G3bl0AwLhx4+Dk5IT//e9/AIAdO3YgNDQUGzduLLX4iIio4nielo0Vx29jzak7cLI2wf6PgiA1kMDESIqVQ1Ufp9SpnjPe9HHC2dhnSEjJhINl3g/7srySk4+JTinqVM8Zy95ppLOsduXKlWjSpAnatGlTYF5gYCBWrlyJb775Btu2bcPmzZtx4cIF5ZWfNWvWoHHjxvjjjz/Qp0+fUo2TiIjKr8T0vARn9ck7SMvOu7PYxEiKxylZcLIuupuG1ECivNlGl5jolDJdZLUKhQIGBgb47bff8NlnnxVap0+fPliwYAE+/fRTvP/++5g2bRrq1aunnF+/fn1MmzaNTVhERJVUYno2Vp6IxaqTd5CalTfUiY+zFT7sUAtv+jhWmBtWJEKISv08guTkZFhbWyMpKQlWVlYq8zIzMxEbGwsvLy+YmJTdrXCvq1OnTqhZsyaWLl2q61AqnIq6z4mItO1Y9GMM+eUsAMD7/xOcjuUowSnu/P2iSntFJywsDGFhYZDL5boORWueP3+OkydP4siRI3j//fd1HQ4REVUgSRk5uPYwCS1q5F3Bb13LDm8HuqFtHQd09HGEgQ7612gDr+jo0RWdXr164dy5cwgJCcHXX39dbrLuiqSi7XMioteVlJGDVSdjsfJELCCAE5+9AWszI12H9Uq8olMJbdu2TdchEBFRBZGcmYNVJ+5g5YnbSM7M64NTx9EScckZFSLRURcTHSIiokokJTMHq07ewc/H/0twajtaYEL72uhcz6nCNlEVhYkOERFRJfIsLRvfHYqBXCFQy8ECEzrUQpd6znqX4ORjokNERKTHUrNycSLmsXLsNo+q5pjQvhY87czRtb6zTgbxK0tMdIiIiPRQalYu1py6gxXHbyMpIwd/fdgGtR0tAQDj29fScXRlh4kOERGRHknNysWvp+9gxbHbeJ6eAwCobm+OxP//u7JhokNERKQHMrLlWH3qDn46duu/BMfOHOPb10I3Pxe9b6IqioGuA6CKa/Xq1bCxsdF1GEREBEAhBFYcz7uK42VnjkUD/LD/ozbo2dC10iY5ABMdvTR06FBIJBJIJBIYGxujZs2amDFjBnJzc1+5bFHJi6enJxYvXqxSNmDAAERHR2sp6v+2nx97Ya9hw4ZpdXtERBVVenYuNp67h/xxf81lhpjSuS4W9PPDgY/aoFfDajCU8jTPpis91alTJ6xatQpZWVnYs2cPQkNDYWRkhClTpmhtG6ampjA1NdXa+oC85KlTp04Fyn/44QfMmzcPI0eO1Or2iIgqmvTsXKw7cw8/HruFJ6nZsDEzRrCvEwCgX2M3HUdX/jDVK4m0tKJfmZnq183IUK9uCchkMjg5OcHDwwMffPABOnTogJ07dyIrKwuTJk2Cq6srzM3N0bRpUxw5cgQAcOTIEQwbNgxJSUnKKyhfffUV2rZti7t37+Kjjz5SlgMFr/589dVX8Pf3x9q1a+Hp6Qlra2u8/fbbSElJUdZJSUnB4MGDYW5uDmdnZyxatAht27bFhx9+CCAveXJyclJ5RUVFYc6cOQgLC0OLFi2U6/rjjz/g6+sLmUwGT09PLFiwQOUzeP78OYYMGYIqVarAzMwMnTt3RkxMTIk+TyIiXcvIlmPFsdtoM/8wZu25gSep2XC3NYNhJW6WUgcTnZKwsCj61aePal0Hh6Lrdu6sWtfTs/B6WmBqaors7GyMHTsWp0+fxu+//47Lly+jX79+6NSpE2JiYtCiRQssXrwYVlZWiIuLQ1xcHCZNmoStW7eiWrVqmDFjhrK8KLdu3cL27duxe/du7N69G0ePHsXcuXOV8ydOnIiTJ09i586dOHDgAI4fP46LFy8Wub67d++iX79+GD16NN577z1l+YULF9C/f3+8/fbbuHLlCr766it8+eWXWL16tbLO0KFDcf78eezcuROnT5+GEAJdunRBTk7lvPOAiCqmXLkCPx+/jdbz/1YmOG62ppjftwEOfRyE9t6Oug6xXGPTlZ4TQuDQoUP466+/MHDgQKxatQr37t2Di4sLAGDSpEnYt28fVq1ahdmzZ8Pa2hoSiQROTk4q65FKpbC0tCxQ/jKFQoHVq1fD0jJvrIZ3330Xhw4dwqxZs5CSkoI1a9Zg/fr1aN++PQBg1apVylhelp6ejp49e8LX17dA/6CFCxeiffv2+PLLLwEAtWvXxvXr1/HNN99g6NChiImJwc6dO3Hy5EnlVaB169bBzc0N27dvR79+/TT7IImIdERqIMG2Sw/wJDUb1aqYYvwbtdCrkSuM2P9GLUx0SiI1teh5UqnqdEJC0XUNXvonvXOnxCG9bPfu3bCwsEBOTg4UCgUGDRqEvn37YvXq1ahdu7ZK3aysLFStWlUr2/X09FQmOQDg7OyMhP//DG7fvo2cnBw0adJEOd/a2hp16tQpdF0jRoxAYmIiDhw4AEND1X/VGzduoEePHiplLVu2xOLFiyGXy3Hjxg0YGhqiadOmyvlVq1ZFnTp1cOPGjdd+n0REpSUzR46N5+6jT0A1WMgMIZFIMKWzN/59no4+AdWY4GiIiU5JmJvrvu4rtGvXDsuWLYOxsTFcXFxgaGiIjRs3QiqV4sKFC5C+lJBZaKmJzMhI9Ym3EokECoVC4/XMmzcPu3btwsmTJ2FnZ6eV2IiIyrPMHDk2nL2HZUduISElC2nZuRjTtiYAoFUtfg+WFBMdPWVubo6aNWuqlDVs2BByuRwJCQlo3bp1ocsZGxtDLperXa6J6tWrw8jICOfOnYO7uzsAICkpCdHR0WjTpo2y3t69e/H5559jw4YN8PPzK3Rd3t7eOHnypErZyZMnUbt2bUilUnh7eyM3Nxf//POPsunq6dOniIqKgo+Pz2u9DyIibcrMkeP3s/ew7OgtxCdnAQBcbUzhYq3du1orKyY6lUjt2rUxePBgDBkyBAsWLEDDhg3x+PFjHDp0CA0aNEDXrl3h6emJ1NRUHDp0CH5+fjAzM4OZmRk8PT1x7NgxvP3225DJZCW6ymJpaYmQkBB88sknsLW1hYODA6ZNmwYDAwPlnVwxMTEYNGgQ3nvvPbRu3RqPHj1SWYexsTFsbW3x8ccfIzAwEDNnzsSAAQNw+vRpLF26FD/88AMAoFatWujRowdGjhyJH3/8EZaWlpg8eTJcXV0LNHkREenKb2fuYunfN/EoOe+OXRdrE4S+URP9AtxgbMgmKm2o8J9iVFQU/P39lS9TU1Ns375d12GVW6tWrcKQIUPw8ccfo06dOujZs6fKFZYWLVrg/fffx4ABA2Bvb4/58+cDAGbMmIE7d+6gRo0asLe3L/H2Fy5ciObNm+Ott95Chw4d0LJlS3h7e8PExAQAsH79eiQmJuLHH3+Es7NzgVfv3r0BAI0aNcKmTZvw+++/o169epg6dSpmzJiBoUOHqrzXgIAAvPXWW2jevDmEENizZ0+B5jUiIl05G/sMj5Iz4Wxtgq971sPhT9picFMPJjlaJBH5QyrqgdTUVHh6euLu3bswV7O/S3JyMqytrZGUlAQrKyuVeZmZmYiNjYWXl5fyREzalZaWBldXVyxYsAAjRozQdTjc50RUarJy5dh0/l+0rmkHT7u8c9TNhFScvvUE/QPdIDOUvmIN9KLizt8v0qumq507d6J9+/ZqJzlU9i5duoTIyEg0adIESUlJmDFjBgCwOYmI9FZ2rgKbzt/HD4dv4mFSJvo0qoYF/fP6H9Z0sEBNB+3cDEKF0/m1sWPHjqFbt25wcXGBRCIptNkpLCwMnp6eMDExQdOmTXH27NlC17Vp0yYMGDCglCOm1/Xtt9/Cz88PHTp0QFpaGo4fP847q4hI72TnKrDun7to9+0RfLH9Kh4mZcLRSgZ/dxtdh1ap6PyKTlpaGvz8/DB8+HBl/4sXbdy4ERMnTsTy5cvRtGlTLF68GMHBwYiKioKDg4OyXnJyMk6dOoXff/+92O1lZWUhKytLZTkqOw0bNsSFCxd0HQYRUanafukBvvkrCg8S8x7142Apwwdta2BgE3eYGLGJqizpPNHp3LkzOr/8KIQXLFy4ECNHjlQ+tXr58uX4888/8csvv2Dy5MnKejt27EDHjh1f2a9izpw5mD59unaCJyIiKsSdp2l4kJgBe0sZPgiqgUFNmeDois6broqTnZ2NCxcuoEOHDsoyAwMDdOjQAadPn1apq26z1ZQpU5CUlKR83b9//5XL6FF/bXoF7msi0lSOXIGN5+7hzO2nyrJhLb0wrZsPjn/aDsNbeTHJ0SGdX9EpzpMnTyCXy+HoqPrAMkdHR0RGRiqnk5KScPbsWfzxxx+vXKdMJoNMJlNr+/mjB2dnZ8PUlAM3VQbp6ekACo7wTET0shy5AtsuPsCSwzG4/ywD/m422DamBSQSCaxNjTCspZeuQySU80RHXdbW1oiPj9f6eg0NDWFmZobHjx/DyMgIBi8/m4r0hhAC6enpSEhIgI2NTYFHZBAR5cuVK7Dt0gMs+fsm7j3L+3FkZ2GMtxo4Q64QMJRKdBwhvahcJzp2dnaQSqUFkpj4+PhXPkX7VcLCwhAWFlbsYw0kEgmcnZ0RGxuLu3fvvtb2qGKwsbF57f8tItJfB6/HY+af13H3aV6CU9XcGKODquOdZh4wMy7Xp9RKq1zvFWNjYwQEBODQoUPo2bMnAEChUODQoUMYO3bsa607NDQUoaGhygGHiouhVq1ayM7Ofq3tUflnZGTEKzlEVKyMHDnuPk2HrbkxRrepjnebM8Ep73S+d1JTU3Hz5k3ldGxsLMLDw2Frawt3d3dMnDgRISEhaNy4MZo0aYLFixcjLS1NeRdWWTAwMOAouURElUyuXIGdEQ9hIJGgZ0NXAECX+s5IyshBr4auMJfp/BRKatD5Xjp//jzatWunnJ44cSIAICQkBKtXr8aAAQPw+PFjTJ06FY8ePYK/vz/27dtXoIMyERGRNsgVAjsjHmDJoZu4/SQN9pYydKrnBBMjKaQGErzTzEPXIZIG9OpZV5p4sY9OdHT0K5+VQURE+k2uENh9+SG+OxSD24/TAAA2ZkYY2bo6hrf0gqkxm7bLE3WfdVVpE5186n5QRESkv/65/RT/23YFt15KcEJaeMKCTVTlUqV8qCcREVFJmMsMcetxGqxNjTCytRdCWnjC0oTjaekDJjpERFSpKBQCe67G4d6zdIxpWxMAUM/VGksGNkTbOvZMcPQMEx0iIqoUFAqBvVcf4btD0YiOT4WRVIIe/q5wtckb+b6bn4uOI6TSUGkTHXUGDCQioopPoRDYd+0RvjsYg6j4FACApYkh3mtVHZYmlfY0WGmwMzI7IxMR6a0bccn4aGM4Ih/9l+CMaOWFYS29YG3KJqqKjJ2RiYio0nO0MsG9Z+mwlBlieCsvDG/FBKeyYaJDRER6QQiB/dfjcSLmCWb2rAcAsDU3xo/vBqCBqw2szZjgVEZMdIiIqEITQuDA9XgsPhiD63HJAICuDZzRrHpVAEDrWva6DI90rNImOuyMTERUsQkhcPBGAhYfjMa1h3kJjrmxFMNaeqGOo6WOo6Pygp2R2RmZiKjckSsEzsY+Q0JKJhwsTdDEyxZSA4ly/sPEDIxaex5XH/yX4IS08MTI1tVRxdxYV2FTGWJnZCIiqpD2XY3D9F3XEZeUqSxztjbBtG4+6FTPGQBgbylDckYuzF5IcGyZ4FAheEWHV3SIiMqNfVfj8MFvF1HUiWnJwIbKgf0u/5uIalXMmOBUUuqevw3KMCYiIqIiyRUC03ddLzLJAYAvtl+FXJFXo0E1GyY59EpMdIiIqFw4G/tMpbmqMEkZOTgb+6yMIiJ9wESHiIjKhYSU4pMcTesRAZU40QkLC4OPjw8CAwN1HQoREQFwsDTRaj0ioBInOqGhobh+/TrOnTun61CIiAhAEy9bOFsXncRIkHf3VRMv27ILiiq8SpvoEBFR+ZA3qnE0pAYSTOvmAwnykpoX5U9P6+ajMp4O0atwHB0iItKJrFw55uyJxOpTdwAATTxt0ameM5a906jAODpOL42jQ6QuJjpERFTmbj9OxbgNl5SPbnivlRcae+Y1SXWq54w3fZyKHRmZSF1MdIiIqExtvfgvvth+FenZclQxM8KC/n54o66jSh2pgQTNa1TVUYSkT5joEBFRmZm24yrWnL4LAGhW3RaLBzSEUzEdkIleV6XtjMzby4mIyl5jT1sYSICJb9bGuveaMcmhUsdnXfFZV0REpUYIgYdJmXC1MVWWxT5Jg5eduQ6jIn3AZ10REZFOJaZnY9TaC+ix9CQep2Qpy5nkUFliokNERFp37s4zdPnuOA5cj0dyRg4u3Xuu65CokmJnZCIi0hq5QuCHwzex6GA0FCLv6s2SgQ1Rz9Va16FRJcVEh4iItCI+ORMf/h6O07efAgB6NXTFzJ71YCHjqYZ0h/99RESkFWGHb+L07acwM5ZiZo966BNQTdchETHRISIi7fi0U108Sc3Cxx3roIa9ha7DIQLAzshERFRC956mY+7eSOSPUmIhM8QPgwOY5FC5wis6RESksV0RD/G/rVeQkpULJysZhrb00nVIRIViokNERGrLyJZjxu5r2HD2PgCgsUcVvOnrpOOoiIpWaROdsLAwhIWFQS6X6zoUIqIKIepRCsauv4iYhFRIJMDYdjUxoX0tGErZC4LKLz4Cgo+AICJ6pZ0RD/HJ5ghk5SpgbynDdwP80aKmna7DokpM3fN3pb2iQ0RE6nOrYgq5QiCotj0W9PeDnYVM1yERqYWJDhERFSoxPRs2ZsYAgIbuVfDHBy1Q39UaBgYSHUdGpD42rBIRkQqFQmD50VtoOfdv3IhLVpb7udkwyaEKh1d0iIhI6XFKFj7eHIFj0Y8BADvCH8Lbmf0XqeJiokNERACAEzFP8NGmcDxOyYKJkQG+6uaLAYFuug6L6LUw0SEiquRy5QosOhiNH47cghBAbUcLLB3UCLUdLXUdGtFrY6JDRFTJbb34AGGHbwEABjZxx9S3fGBqLNVxVETawUSHiKiS6xNQDYci49HNzwVvNXDRdThEWsW7roiIKpnMHDmW/h2DzJy8keGlBhL8+G5jJjmkl3hFh4ioErmZkIqx6y8i8lEKHiVn4uue9XUdElGpYqJDRFQJCCGw5cK/mLrjGjJy5Khqbow3ffgwTtJ/THSIiPRcalYuvth2BdvDHwIAWtasikX9/eFgZaLjyIhKX6VNdPj0ciKqDKIepWD02vO48zQdUgMJJr5ZG+8H1YCUIxxTJcGnl/Pp5USkxx4kZqDLd8dhITPE9wP9EeBhq+uQiLSCTy8nIqqkMnPkMDHKGwfH1cYUvwwNRA17c+UDOokqE95eTkSkR87cfoq23xzBoRvxyrIAjypMcqjSYqJDRKQH5AqBRQeiMWjFGTxKzsSyI7dQyXsmEAFg0xURUYUXl5SBCb+H42zsMwBA34BqmNHDFxIJOxwTMdEhIqrADl6Px6QtEUhMz4G5sRSzetVHz4auug6LqNxgokNEVEFdf5iM9349DwCo52qFJQMbwcvOXMdREZUvTHSIiCooHxcrDGrqDhNDKT7rXAcyQz5xnOhlTHSIiCqQnREP0ay6LRws80Y1/rpHPRhw8D+iIvGuKyKiCiA9OxeTNkdg/IZL+HhTBBSKvDuqmOQQFY9XdIiIyrnrD5MxdsNF3H6cBgMJ0Mi9CnjjOJF6mOgQEZVTQgisPXMXX/95A9m5CjhaybB4QEM0r1FV16ERVRhMdIiIyqGkjBx8uiUCf13LG+H4jboO+LafH2zNOcIxkSaY6BARlUOGBhJEx6fCSCrB5M7eGN7SkwMAEpUAEx0ionJCoRCQSACJRAJzmSHCBjWCXCFQv5q1rkMjqrB41xURUTmQkJKJIb+cxcoTscoyHxcrJjlEr4lXdIiIdOxo9GN8vCkcT1KzcfnfRPQPdIOViZGuwyLSC0x0iIh0JEeuwLf7o/Dj0dsAgLpOllg6qBGTHCIt0otEJzY2FsOHD0d8fDykUinOnDkDc3M+74WIyq/7z9IxbsMlhN9PBAAMae6B/3XxhokRH+NApE1qJTo7d+5Ue4Xdu3cvcTAlNXToUHz99ddo3bo1nj17BplMVuYxEBGpKzUrFz3CTuJZWjasTAwxv28DdKrnrOuwiPSSWolOz549VaYlEgmEECrT+eRyuXYiU9O1a9dgZGSE1q1bAwBsbW3LdPtERJqykBni/aDq+OtaPL572x/VqpjpOiQivaXWXVcKhUL52r9/P/z9/bF3714kJiYiMTERe/bsQaNGjbBv3z6NAzh27Bi6desGFxcXSCQSbN++vUCdsLAweHp6wsTEBE2bNsXZs2eV82JiYmBhYYFu3bqhUaNGmD17tsYxEBGVtuj4FEQ9SlFOv9eqOn4f1YxJDlEp07iPzocffojly5ejVatWyrLg4GCYmZlh1KhRuHHjhkbrS0tLg5+fH4YPH47evXsXmL9x40ZMnDgRy5cvR9OmTbF48WIEBwcjKioKDg4OyM3NxfHjxxEeHg4HBwd06tQJgYGBePPNNwvdXlZWFrKyspTTycnJGsVLRKQJIQR+P3cf03ddg4uNKXaPawUzY0MYGEhgAA4ASFTaNB5H59atW7CxsSlQbm1tjTt37mgcQOfOnfH111+jV69ehc5fuHAhRo4ciWHDhsHHxwfLly+HmZkZfvnlFwCAq6srGjduDDc3N8hkMnTp0gXh4eFFbm/OnDmwtrZWvtzc3DSOmYhIHcmZORi34RKmbL2CzBwFXG1MkZmj0HVYRJWKxolOYGAgJk6ciPj4eGVZfHw8PvnkEzRp0kSrwWVnZ+PChQvo0KGDsszAwAAdOnTA6dOnlfEkJCTg+fPnUCgUOHbsGLy9vYtc55QpU5CUlKR83b9/X6sxExEBQPj9RHT9/jh2X46DoYEEkzvXxZphTfisKqIypnHT1S+//IJevXrB3d1deTXk/v37qFWrVqH9a17HkydPIJfL4ejoqFLu6OiIyMhIAIChoSFmz56NNm3aQAiBjh074q233ipynTKZjHdlEVGpUSgEVp6Ixbx9kchVCFSrYorvBzZEI/cqug6NqFLSONGpWbMmLl++jAMHDiiTDW9vb3To0EFnD5zr3LkzOnfurJNtExG9SAA4HJWAXIVA1/rOmN27PqxNOQAgka6UaMBAiUSCjh07omPHjtqOR4WdnR2kUqlKMxmQ11Tm5OT0WusOCwtDWFhYmd8OT0T6SQgBiUQCqYEEiwf443BUAvo3duMTx4l0rESJzqFDh3Do0CEkJCRAoVDtWJffSVgbjI2NERAQgEOHDinH8lEoFDh06BDGjh37WusODQ1FaGgokpOTYW3Nh+YRUcnkyhVYfDAGSRk5mNmzHgDAwcoEAwLddRwZEQElSHSmT5+OGTNmoHHjxnB2dn7tXyupqam4efOmcjo2Nhbh4eGwtbWFu7s7Jk6ciJCQEDRu3BhNmjTB4sWLkZaWhmHDhr3WdomIXteDxAxM2HAJ5+8+BwD0a1wNDarZ6DYoIlKhcaKzfPlyrF69Gu+++65WAjh//jzatWunnJ44cSIAICQkBKtXr8aAAQPw+PFjTJ06FY8ePYK/vz/27dtXoIMyEVFZ+uvaI3y65TKSMnJgKTPE7N71meQQlUMS8eKzHNRQtWpVnD17FjVq1CitmMrEi310oqOjkZSUBCsrK12HRUTlXGaOHHP23MCa03cBAH7VrLFkYCO4V+UIx0RlKb/ryavO3xonOp999hksLCzw5ZdfvnaQ5YG6HxQRkRAC76z8BydvPgUAjGpTHZM61oGxocZDkhHRa1L3/K1x01VmZiZ++uknHDx4EA0aNICRkeptkwsXLtQ8WiKiCkAikSCkuSci41LwbT8/tKvroOuQiOgVNE50Ll++DH9/fwDA1atXVebxNkoi0jepWbm4/ThV2f+mo68TWtS0g4WsRDetElEZ0/hIPXz4cGnEQURU7lx9kISx6y8iKSMHeya0hrO1KQAwySGqQF6rYfnff//Fv//+q61YylRYWBh8fHwQGBio61CIqJwRQmDVyVj0/uEU7jxNh4mRFE9SsnUdFhGVgMaJjkKhwIwZM2BtbQ0PDw94eHjAxsYGM2fOLDB4YHkWGhqK69ev49y5c7oOhYjKkedp2Rj563lM33Ud2XIF3vRxxN4JrVG/GgcWJaqINL7++vnnn2PlypWYO3cuWrZsCQA4ceIEvvrqK2RmZmLWrFlaD5KIqCycjX2GCb9fQlxSJoylBvi8qzeGNPdg/0OiCkzjRGfNmjX4+eef0b17d2VZgwYN4OrqijFjxjDRIaIKa3v4A8QlZaK6nTmWDGoIXxdexSGq6DROdJ49e4a6desWKK9bty6ePXumlaCIiHThy64+sDUzxgdta8CcHY6J9ILGfXT8/PywdOnSAuVLly6Fn5+fVoIqC+yMTER/R8Zj3IZLUCjyxk01NZZiUnAdJjlEekTjkZGPHj2Krl27wt3dHc2bNwcAnD59Gvfv38eePXvQunXrUgm0tHBkZKLKJztXgfn7IvHziVgAwJze9TGwCZ82TlSRqHv+1viKTlBQEKKiotCrVy8kJiYiMTERvXv3RlRUVIVLcoio8rnzJA19lp1SJjlDW3iidyNXHUdFRKVF4ys6+oZXdIj0k1whcDb2GRJSMuFgaYImXrbYffkhPt92FalZubAxM8I3ff3wpo+jrkMlohIotWddrVq1ChYWFujXr59K+ebNm5Geno6QkBDNoyUi0qJ9V+Mwfdd1xCVlKsssZIZIzcoFADTxtMXit/3hYmOqqxCJqIxo3HQ1Z84c2NnZFSh3cHDA7NmztRIUEVFJ7bsahw9+u6iS5ABQJjld6jtj/cimTHKIKgmNE5179+7By8urQLmHhwfu3bunlaCIiEpCrhCYvus6imuPv3TvOQcAJKpENE50HBwccPny5QLlERERqFq1qlaCKgu8vZxI/5yNfVbgSs7L4pIycTaWY34RVRYaJzoDBw7E+PHjcfjwYcjlcsjlcvz999+YMGEC3n777dKIsVTwWVdE+ichpfgkR9N6RFTxadwZeebMmbhz5w7at28PQ8O8xRUKBYYMGcI+OkSkU9cfJqtVz8HSpJQjIaLyosS3l0dHRyMiIgKmpqaoX78+PDw8tB1bmeDt5UQVX0a2HF/uuIotF/4ttp4EgJO1CU589gakBuynQ1SRldrt5fk8PT0hhECNGjWUV3aIiHRh26UH2HLhXxhIgG5+LtgZ/hAAVDol56c107r5MMkhqkQ07qOTnp6OESNGwMzMDL6+vso7rcaNG4e5c+dqPUAiold5O9ANAxq74bf3muK7txti2TuN4GSt2jzlZG2CZe80Qqd6zjqKkoh0QeNLMVOmTEFERASOHDmCTp06Kcs7dOiAr776CpMnT9ZqgEREL8vKlePHo7fxXmsvmBkbwsBAgnl9Gyjnd6rnjDd9nAqMjMwrOUSVj8aJzvbt27Fx40Y0a9ZMZSwKX19f3Lp1S6vBERG97P6zdIxZdxFXHiThzpM0LBzgX2g9qYEEzWtUnCEviKh0aJzoPH78GA4ODgXK09LSKtQgXGFhYQgLC4NcLtd1KESkpgPX4/HxpnAkZ+Y9q6qbv4uuQyKick7jPjqNGzfGn3/+qZzOT25+/vlnNG/eXHuRlTKOo0NUceTIFZi95wZG/noeyZm5aOhugz/Ht0a7OgV/dBERvUjjKzqzZ89G586dcf36deTm5uK7777D9evXcerUKRw9erQ0YiSiSiw+OROh6y7i/N3nAIDhLb0wuXNdGBtq/DuNiCohjb8pWrVqhfDwcOTm5qJ+/frYv38/HBwccPr0aQQEBJRGjERUycU+SYOlzBDL32mEqd18mOQQkdpKPGCgvuCAgUTljxBCpc/f+TvPYGchg6eduQ6jIqLyROsDBubm5kIul0MmkynL4uPjsXz5cqSlpaF79+5o1arV60VNRJXe45QsfLjxEgY39UCX+nlj3jT2tNVxVERUUamd6IwcORLGxsb48ccfAQApKSkIDAxEZmYmnJ2dsWjRIuzYsQNdunQptWCJSL/9c/spxm24hISULMTEp+KNug4wMZLqOiwiqsDUbug+efIk+vTpo5z+9ddfIZfLERMTg4iICEycOBHffPNNqQRJRPpNoRBYduQWBv38DxJSslDLwQLr3mvKJIeIXpvaic6DBw9Qq1Yt5fShQ4fQp08fWFtbAwBCQkJw7do17UdIRHotMT0bI389j3n7IiFXCPRq6IodY1uilqOlrkMjIj2gdqJjYmKCjIwM5fSZM2fQtGlTlfmpqanajY6I9FpyZg66fn8ChyITYGxogDm962Nhfz+YGfNBwUSkHWonOv7+/li7di0A4Pjx44iPj8cbb7yhnH/r1i24uFScUUrDwsLg4+ODwMBAXYdCVGlZmRiho68jPKqaYduYFhjYxL1CjbBOROWf2reXHz16FJ07d4azszPi4uIwcOBArFy5Ujl/zJgxSEtLw5o1a0ot2NLA28uJylZKZg4ycxSwt8y7gzM7V4HMXDmsTIx0HBkRVSRav708KCgIFy5cwP79++Hk5IR+/fqpzPf390eTJk1KHjER6b3rD5MxZt0F2FvKsGFkMxhKDWBsaMABAImo1GjUEO7t7Q1vb+9C540aNUorARGR/hFCYNP5+5i64xqychXIzlXgYWIm3Kua6To0ItJz7PFHRKUqPTsXX2y/iq0XHwAA2tWxx8L+/qhibqzjyIioMmCiQ0Sl5mZCCsasu4jo+FQYSICPO9bBB0E1YGDADsdEVDaY6BBRqRBC4JMtlxEdnwp7SxmWDGyIZtWr6josIqpkNOoBKJfLcezYMSQmJpZSOESkLyQSCb7p64cO3g74c3wrJjlEpBMaJTpSqRQdO3bE8+fPSyseIqrA7j1Nxx8X/lVO13SwwM8hgXCwNNFhVERUmWncdFWvXj3cvn0bXl5epREPEVVQ+64+widbIpCWlYtqVUzRlFdwiKgc0Hjwiq+//hqTJk3C7t27ERcXh+TkZJUXEVUuOXIFvt59He//dgEpmblo6F4Fbra8bZyIyge1R0bOZ2DwX2704lDtQghIJBLI5XLtRVcGODIyUck9TMzA2PUXcfFeIgBgZGsvfNqpLoykHACQiEqX1kdGznf48OHXCoyI9MPR6Mf48PdLeJ6eA0sTQ3zbzw/Bvk66DouISIXGiU5QUFBpxEFEFczdp2l4np4DXxcrLBscwFGOiahcKtE4OsePH8ePP/6I27dvY/PmzXB1dcXatWvh5eWFVq1aaTvGUhEWFoawsLAK19RGpEv5TdQA8G4zD8gMDdDD3xUmRlIdR0ZEVDiNG9L/+OMPBAcHw9TUFBcvXkRWVhYAICkpCbNnz9Z6gKUlNDQU169fx7lz53QdClGFcOb2U/T/8TSSM3MA5PXRGxDoziSHiMq1Et11tXz5cqxYsQJGRkbK8pYtW+LixYtaDY6IdE+hEAg7fBODVpzBuTvP8f3BGF2HRESkNo2brqKiotCmTZsC5dbW1hwxmUjPPE/LxsRN4Tgc9RgA0LuRKyZ2rK3jqIiI1KdxouPk5ISbN2/C09NTpfzEiROoXr26tuIiIh27dO85xq6/hAeJGZAZGmBmj3ro17iayrASRETlncaJzsiRIzFhwgT88ssvkEgkePjwIU6fPo1Jkybhyy+/LI0YiaiM7b/2CKHrLyJHLuBZ1Qw/DA6AjwvHmSKiikfjRGfy5MlQKBRo37490tPT0aZNG8hkMkyaNAnjxo0rjRiJqIw19rRFVXMZGnnYYF6fBrA0MXr1QkRE5ZDGIyPny87Oxs2bN5GamgofHx9YWFhoO7YywZGRifI8SMyAq42pcjo+ORMOljI2VRFRuaTu+bvE47QbGxvD0tISzs7OFTbJIaK8sXE2nL2Hdt8ewZYXnjzuaGXCJIeIKjyNE53c3Fx8+eWXsLa2hqenJzw9PWFtbY0vvvgCOTk5pREjEZWS9OxcfLwpAlO2XkF2rgKHIxN0HRIRkVZp3Edn3Lhx2Lp1K+bPn4/mzZsDAE6fPo2vvvoKT58+xbJly7QeJBFpX0x8Csasu4iYhFRIDSSY1LEORrfhnZNEpF807qNjbW2N33//HZ07d1Yp37NnDwYOHIikpCStBlja2EeHKqPtlx5gytYryMiRw8FShiUDG6Jp9aq6DouISG2l9vRymUxWYAwdAPDy8oKxsbGmqyOiMhYdn4KPNoVDCKBlzapYPKAh7C1lug6LiKhUaNxHZ+zYsZg5c6byGVcAkJWVhVmzZmHs2LFaDY6ItK+2oyXGtauJ8e1r4dfhTZnkEJFe07jpqlevXjh06BBkMhn8/PwAABEREcjOzkb79u1V6m7dulV7kZYSNl1RZbDv6iP4uljBzdZM16EQEWlFqTVd2djYoE+fPiplbm5umkdIRKUuO1eBuXsj8cvJWDSoZo3N7zeHzJBPGyeiykPjRGfVqlWlEQcRadmDxAyMXX8Rl+4lAgCaVa8KA46LQ0SVjMaJDhGVf4ejEvDRxnAkpufAysQQ3/bzQ0dfJ12HRURU5pjoEOmRXLkCiw5GI+zwLQBAfVdr/DC4EfvmEFGlpReJjqenJ6ysrGBgYIAqVarg8OHDug6JSCfkQuBY9BMAwLvNPPB5V2+YGLFPDhFVXnqR6ADAqVOn+MwtqvRkhlL8MLgRLt1PRHc/F12HQ0Skc1pJdBITE2FjY6ONVRGRBhQKgR+O3ESOXOCjN2sDANxszdhURUT0/zQeMHDevHnYuHGjcrp///6oWrUqXF1dERERoXEAx44dQ7du3eDi4gKJRILt27cXqBMWFgZPT0+YmJigadOmOHv2rMp8iUSCoKAgBAYGYt26dRrHQFQRPUvLxrDV5/Dt/mh8dygGN+KSdR0SEVG5o3Gis3z5cuW4OQcOHMCBAwewd+9edO7cGZ988onGAaSlpcHPzw9hYWGFzt+4cSMmTpyIadOm4eLFi/Dz80NwcDASEv57yvKJEydw4cIF7Ny5E7Nnz8bly5c1joOoIrlw9zm6fn8cR6MfQ2ZogPl9G8DbmQNeEhG9TOORkU1NTREdHQ03NzdMmDABmZmZ+PHHHxEdHY2mTZvi+fPnJQ9GIsG2bdvQs2dPZVnTpk0RGBiIpUuXAgAUCgXc3Nwwbtw4TJ48ucA6PvnkE/j6+mLo0KGFbiMrK0vl8RXJyclwc3PjyMhUIQghsPJELObujUSuQsDLzhw/DG7EJIeIKh11R0bW+IpOlSpVcP/+fQDAvn370KFDBwB5X8ByubyE4RYuOzsbFy5cUG4DAAwMDNChQwecPn0aQN4VoZSUFABAamoq/v77b/j6+ha5zjlz5sDa2lr54qjOVJFM3BSBr/+8gVyFQNf6ztg5tiWTHCKiYmic6PTu3RuDBg3Cm2++iadPn6Jz584AgEuXLqFmzZpaDe7JkyeQy+VwdHRUKXd0dMSjR48AAPHx8WjVqhX8/PzQrFkzDBkyBIGBgUWuc8qUKUhKSlK+8pM2ooqgZU07GEklmN7dF0sHNYSliZGuQyIiKtc0vutq0aJF8PT0xP379zF//nzlLd1xcXEYM2aM1gN8lerVq2vUCVomk0Em49OaqWIQQuBJarbyCeN9A6qhqZct76oiIlKTxomOkZERJk2aVKD8o48+0kpAL7Kzs4NUKkV8fLxKeXx8PJycXm84+7CwMISFhWm9uY1IW9KycvH5tiv4J/YZ/hzfGrbmxgDAJIeISAMaN10BQFRUFMaOHYv27dujffv2GDt2LKKiorQdG4yNjREQEIBDhw4pyxQKBQ4dOoTmzZu/1rpDQ0Nx/fp1nDt37nXDJNK6mPgU9Ag7ie3hD5GQkoV/bj/VdUhERBWSxonOH3/8gXr16uHChQvw8/ODn58fLl68iHr16uGPP/7QOIDU1FSEh4cjPDwcABAbG4vw8HDcu3cPADBx4kSsWLECa9aswY0bN/DBBx8gLS0Nw4YN03hbRBXB1ov/ovvSk7iZkApHKxk2jGyGzvWddR0WEVGFpPHt5TVq1MDgwYMxY8YMlfJp06bht99+w61btzQK4MiRI2jXrl2B8pCQEKxevRoAsHTpUnzzzTd49OgR/P398f3336Np06Yabaco6t6eRlTaMnPkmL7rGjaczesg36qmHRa/7Q87C/YpIyJ6mbrnb40THTMzM1y+fLnAHVYxMTHw8/NDenp6ySLWESY6VF7M2XMDPx67DYkEmNC+Fsa9UQtSA4muwyIiKpdKbRydtm3b4vjx4wXKT5w4gdatW2u6Op0JCwuDj49PsbeiE5WlMe1qoqG7DX4d3gQfdqjNJIeISAs0vqKzfPlyTJ06Ff3790ezZs0AAGfOnMHmzZsxffp0uLj898Tk7t27azfaUsArOqQr2bkK7Ix4iD6NXCGR5CU1Qgjl30REVLRSa7oyMFDvIpBEIqkQt24z0SFdeJCYgdB1FxF+PxEze/ji3eaeug6JiKhCUff8rfE4OgqF4rUCI6rs/o6Mx8RNEUhMz4GViSGcrU11HRIRkd7SONF5UWZmJkxMTLQVS5nigIFU1nLlCiw8EI0fjuTdmdigmjXCBjXiAIBERKVI487IcrkcM2fOhKurKywsLHD79m0AwJdffomVK1dqPcDSwgEDqSwlJGdi8M//KJOckOYe2Px+cyY5RESlTONEZ9asWVi9ejXmz58PY2NjZXm9evXw888/azU4In0R+yQN5+48g7mxFEsGNsT0HvUgM5TqOiwiIr2ncaLz66+/4qeffsLgwYMhlf73Re3n54fIyEitBkekL5pWr4p5fRpg17hW6Obn8uoFiIhIKzROdB48eFBgsEAgr5NyTk6OVoIiquiepmbh/bUXcDMhVVnWr7Ebqttb6DAqIqLKR+NEx8fHp9ABA7ds2YKGDRtqJSiiiuzC3Wfo+v0J7Lv2CB9vCoeGIzgQEZEWaXzX1dSpUxESEoIHDx5AoVBg69atiIqKwq+//ordu3eXRoylgnddkbYJIfDz8VjM2xeJXIVAdTtzzOvbgAMAEhHpkMYDBgLA8ePHMWPGDERERCA1NRWNGjXC1KlT0bFjx9KIsVRxwEDShqSMHHyyOQL7r8cDAN5q4Iy5fRrAQvZaIzgQEVERSm1kZH3DRIde17/P0zFoxT+49ywdxlIDfPmWN95p5sErOUREpajUHupZvXp1PH36tEB5YmIiqlevrunqiCo8RysTOFrJUK2KKbZ80BzvNvdkkkNEVE5ofF39zp07hfZrycrKwoMHD7QSFFF5l5aVCyOpAYwNDWAkNUDY4EaQSaWwNjPSdWhERPQCtROdnTt3Kv/+66+/YG1trZyWy+U4dOgQPD09tRocUXkU9SgFH6y7gHZ1HPDlWz4AAAfLivkoFCIifad2otOzZ08AeU8lDwkJUZlnZGQET09PLFiwQKvBlSbedUUlseXCv/hi+xVk5iiQnhWH8e1rwdqUV3GIiMorjTsje3l54dy5c7CzsyutmMoUOyOTOjJz5Ji24xo2nr8PAGhdyw6LB/ijqoVMx5EREVVO6p6/Ne6jExsb+1qBEVU0sU/S8MFvFxD5KAUSCfBh+9oY+0ZNSA3Y4ZiIqLxT+66r06dPFxgQ8Ndff4WXlxccHBwwatQoZGVlaT1AIl3KypVj0IoziHyUAjsLY/w2oikmdKjFJIeIqIJQO9GZMWMGrl27ppy+cuUKRowYgQ4dOmDy5MnYtWsX5syZUypBEumKzFCKL9/yQRNPW/w5vjVa1tSPJlsiospC7T46zs7O2LVrFxo3bgwA+Pzzz3H06FGcOHECALB582ZMmzYN169fL71oSwH76NDL/n2ejvjkLAR4VFGWKRQCBryKQ0RUbmh9wMDnz5/D0dFROX306FF07txZOR0YGIj79++XMFyi8uHQjXh0/f4ERq89j/jkTGU5kxwioopJ7UTH0dFR2RE5OzsbFy9eRLNmzZTzU1JSYGTE22ypYsqVKzB3byRGrDmPpIwcuNqYIldRqZ+OQkSkF9S+66pLly6YPHky5s2bh+3bt8PMzAytW7dWzr98+TJq1KhRKkGWBo6jQ/nikzMxbv0lnL3zDAAwtIUn/tfFG8aGGj8hhYiIyhm1++g8efIEvXv3xokTJ2BhYYE1a9agV69eyvnt27dHs2bNMGvWrFILtjSwj07ldiLmCSb8fglP07JhITPEvD4N0LWBs67DIiKiV9D6ODp2dnY4duwYkpKSYGFhAalUqjJ/8+bNsLCwKHnERDqw9dK/eJqWjbpOlvhhcCNUt+f/MBGRPtF4wMAXn3H1Iltb29cOhqisfd2zHqrZmGJMu5owMZK+egEiIqpQ2AmBKpXzd55hytYrUPx/R2MzY0NM7FiHSQ4RkZ7S+IoOUUUkhMCK47cxb18U5AqBeq5WGNzUQ9dhERFRKWOiQ3ovKT0HH2+OwMEb8QCA7n4u6OnvquOoiIioLDDRIb125d8kjFl/AfefZcBYaoCp3XwwuKk7JBIOAEhEVBkw0SG9tf3SA3y65TKy5Qq42Zpi2eAA1HMtvDM9ERHpJyY6pLc87cwhINDRxxHf9PODtSlH7iYiqmwqbaLDkZH1U2pWLixkef/W/m422DamJXxdrNhURURUSak9MrK+4sjI+mPz+fuYtecG1r3XFL4ubKIiItJnWn96OVF5lZEtxyebI/DJlstITM/Bun/u6TokIiIqJypt0xXph9uPUzFm3UVEPkqBgQT4qENthLarqeuwiIionGCiQxXW7ssP8dmWy0jLlsPOQobv3/ZHi5p2ug6LiIjKESY6VCEdjkrA2PWXAABNvWyxZGBDOFiZ6DgqIiIqb5joUIXUppY9WteyQ4Nq1vioQ20YStndjIiICmKiQxXGiZgnaOxZBSZGUkgNJFg1NJAJDhERFYtnCSr3cuQKzNlzA++s/AfTd11TljPJISKiV+EVHSrXHiVlYtyGizh35zkAwMRICoVCwMCAAwASEdGrMdGhcut4zGN8+Hs4nqZlw0JmiPl9G6BLfWddh0VERBUIEx0qd+QKge8PxeD7v2MgBODtbIVlgxvB085c16EREVEFw0SHyp0nqVlYc/oOhAAGNnHDtG6+MDGS6josIiKqgJjoULnjaGWCRQP88TwtG70bVdN1OEREVIEx0SGdUygEVhy/jRr2Fujg4wgAaFfHQcdRERGRPqi0iU5YWBjCwsIgl8t1HUqllpiejUmbI3DwRgKsTY1w6OMg2FnIdB0WERHpCYkQQug6CF1S9zHvpH0R9xMxZt1FPEjMgLGhAb7q5ouBTdwgkfDWcSIiKp665+9Ke0WHdEcIgV9P38XXf15HjlzA3dYMPwxuhHqu1roOjYiI9AwTHSpTuXIFJmwMx5+X4wAAwb6O+KafH6xMjHQcGRER6SMmOlSmDKUGsDE1gqGBBFO6eGN4S082VRERUalhokNlIjNHrhwL58u3fPB2oDvqV2NTFRERlS4+FZFKVUa2HJM2R2D46nOQK/L6vZsYSZnkEBFRmeAVHSo1NxNSEbruIqLiU2AgAc7feYam1avqOiwiIqpEmOhQqdgZ8RBT/riMtGw57Cxk+H6gP5McIiIqc0x0SKuycuWYufs6fjtzDwDQrLotvh/YEA6WJjqOjIiIKiMmOqRVkzZfxq6IhwCAse1q4sMOtWAoZVcwIiLSDSY6pFVj2tbAhTvPMKt3fT6vioiIdI6JDr2WHLkCF+8+V/a/8Xa2wpFP2sHYkFdxiIhI93g2ohKLS8rAwJ/OYPDP/+DC3efKciY5RERUXvCKDpXIsejH+HBjOJ6lZcNSZoikjGxdh0RERFQAEx3SiFwh8N2hGCz5OwZCAL4uVvhhcCN4VDXXdWhEREQFMNEhtT1OycKHGy/h5M2nAIBBTd0x9S0f5aMdiIiIyhsmOqS2vVfjcPLmU5gaSTG7dz30alhN1yEREREVi4kOqe3dZh64/ywd/Ru7oZajpa7DISIieiW9uT0mPT0dHh4emDRpkq5D0RuJ6dmYuuMq0rJyAQASiQSfd/VhkkNERBWG3lzRmTVrFpo1a6brMPRG+P1EhK67iAeJGUjLkmNBfz9dh0RERKQxvbiiExMTg8jISHTu3FnXoVR4QgisPhmLfstP4UFiBjyqmmF4K09dh0VERFQiOk90jh07hm7dusHFxQUSiQTbt28vUCcsLAyenp4wMTFB06ZNcfbsWZX5kyZNwpw5c8ooYv2VkpmDsesv4atd15EjF+hczwm7xrWCr4u1rkMjIiIqEZ0nOmlpafDz80NYWFih8zdu3IiJEydi2rRpuHjxIvz8/BAcHIyEhAQAwI4dO1C7dm3Url1bre1lZWUhOTlZ5UXAzYQUdFtyAn9eiYOhgQRT3/LBD4MbwcrESNehERERlZjO++h07ty52CanhQsXYuTIkRg2bBgAYPny5fjzzz/xyy+/YPLkyThz5gx+//13bN68GampqcjJyYGVlRWmTp1a6PrmzJmD6dOnl8p7qcisTI2Qli2Hi7UJlg5uhEbuVXQdEhER0WuTCCGEroPIJ5FIsG3bNvTs2RMAkJ2dDTMzM2zZskVZBgAhISFITEzEjh07VJZfvXo1rl69im+//bbIbWRlZSErK0s5nZycDDc3NyQlJcHKykqr76e8y5ErYCT976Le1QdJcLUxRRVzYx1GRURE9GrJycmwtrZ+5flb501XxXny5AnkcjkcHR1Vyh0dHfHo0aMSrVMmk8HKykrlVRndTEhB1++PY1fEQ2VZPVdrJjlERKRXdN50pU1Dhw7VdQgVwo7wB5iy9QrSs+VYeCAanes5wVBarnNeIiKiEinXiY6dnR2kUini4+NVyuPj4+Hk5PRa6w4LC0NYWBjkcvlrraciycyRY+bu61j3zz0AQIsaVfHd2w2Z5BARkd4q12c4Y2NjBAQE4NChQ8oyhUKBQ4cOoXnz5q+17tDQUFy/fh3nzp173TArhHtP09F3+Sms++ceJBJg/Bs1sXZEU9hbynQdGhERUanR+RWd1NRU3Lx5UzkdGxuL8PBw2Nrawt3dHRMnTkRISAgaN26MJk2aYPHixUhLS1PehUWv9iQ1C28tOY7kzFxUMTPCogH+aFvHQddhERERlTqdJzrnz59Hu3btlNMTJ04EkHdn1erVqzFgwAA8fvwYU6dOxaNHj+Dv7499+/YV6KBMRbOzkGFAoBsu3H2OpYMawcXGVNchERERlYlydXt5WXqxj050dLTe3V7+MDEDEgngbJ2X1OTIFQCgcjs5ERFRRaXu7eWVNtHJp+4HVZEciUrARxvD4WVnjo2jmzO5ISIivaPu+VvnTVekPXKFwOKD0Vh6+CaEAFzlCiSm57DDMRERVVpMdPREQkomJmwIx+nbTwEA7zRzxxddfWBiJNVxZERERLrDREcPnL71FON/v4THKVkwM5ZiTu/66OHvquuwiIiIdK7SJjr6MmCgQiHw9Z/X8TglC7UdLfDD4ADUdLDQdVhERETlAjsj60Fn5NuPU/HziVh80dUbZsaVNnclIqJKRC8e6kmFu3TvOdaevqOcrm5vgdm96jPJISIiegnPjBWIEAKrTt7BnL03IFcI1HK0RLPqVXUdFhERUbnFRKeCSM7MwWdbLmPv1UcAgC71neDrUjGb2oiIiMpKpU10KlJn5GsPkxC67iLuPE2HkVSCz7t4I6SFJyQSia5DIyIiKtfYGbmcd0bedP4+vth+Fdm5CrjamGLpoIZo6F5F12ERERHpFEdG1hM5cgWycxV4o64DFvb3g42Zsa5DIiIiqjCY6JRDcoWA1CCvWWpQE3fYW8jQwdsRBgZsqiIiItIEby8vZ7ZfeoAu3x1HUnoOAEAikaCjrxOTHCIiohJgolNOZObIMWXrFXy4MRxR8SlYdSpW1yERERFVeGy6KgfuPk3DB79dxPW4ZEgkwLg3amHcG7V0HRYREVGFV2kTnfJye/m+q3H4ZPNlpGTlwtbcGIsH+KNNbXudxkRERKQveHu5Dm8v33T+Pj7dchkA0NijCpYMaghna9MyjYGIiKgi4u3lFcCb3o5wtTFF1wbO+CS4Doyk7DJFRESkTUx0ytj1h8nwdraERCJBFXNj7PuwNSxNjHQdFhERkV7iJYRSIFcInL71FDvCH+D0raeQKwRy5Qp881ckunx/HJvP/6usyySHiIio9PCKjpbtuxqH6buuIy4pU1nmYCmDjZkRouNTAQDR8Sm6Co+IiKhSYaKjRfuuxuGD3y7i5d7dCSlZSEjJgszQAN/080N3PxedxEdERFTZVNqmq7CwMPj4+CAwMFAr65MrBKbvul4gyXmRlakRutZ31sr2iIiI6NUqbaITGhqK69ev49y5c1pZ39nYZyrNVYV5nJKFs7HPtLI9IiIierVKm+hoW0JK8UmOpvWIiIjo9THR0RIHSxOt1iMiIqLXx0RHS5p42cLZ2gRFPWNcAsDZ2gRNvGzLMiwiIqJKjYmOlkgNJJjWzQcACiQ7+dPTuvlAalBUKkRERETaxkRHizrVc8aydxrByVq1ecrJ2gTL3mmETvV4xxUREVFZ4jg6WtapnjPe9HHC2dhnSEjJhINlXnMVr+QQERGVPSY6pUBqIEHzGlV1HQYREVGlx6YrIiIi0ltMdIiIiEhvVdpER9uPgCAiIqLyRyKEKO7xTHovOTkZ1tbWSEpKgpWVla7DISIiIjWoe/6utFd0iIiISP8x0SEiIiK9xUSHiIiI9BYTHSIiItJbTHSIiIhIbzHRISIiIr3FRIeIiIj0FhMdIiIi0ltMdIiIiEhvMdEhIiIivcVEh4iIiPQWEx0iIiLSW4a6DkBXwsLCEBYWBrlcnleQlgZIpQUrSqWAicl/02lpRa/UwAAwNS1Z3fR0oKjnq0okgJlZyepmZAAKRdFxmJuXrG5mJpD/2b1uXTOzvLgBICsLyM3VTl1T07zPGQCys4GcHO3UNTH5739Fk7o5OXn1iyKTAYaGmtfNzc37LIpibAwYGWleVy7P23dFMTLKq69pXYUi739NG3UNDfM+CyDvmEhP105dTY57fkcUXpffEZrX5XdE3t+afEeoQ1RySUlJAoBIyvtaKPjq0kV1ATOzwusBQgQFqda1syu6buPGqnU9PIqu6+OjWtfHp+i6Hh6qdRs3LrqunZ1q3aCgouuamanW7dKl6Lov/1v17Vt83dTU/+qGhBRfNyHhv7pjxhRfNzb2v7qTJhVf9+rV/+pOm1Z83bNn/6s7f37xdQ8f/q/u0qXF1929+7+6q1YVX3fTpv/qbtpUfN1Vq/6ru3t38XWXLv2v7uHDxdedP/+/umfPFl932rT/6l69WnzdSZP+qxsbW3zdMWP+q5uQUHzdkJD/6qamFl+3b1+hori6/I7Ie/E74r8XvyPyXqX8HaE8fyclieKw6YqIiIj0lkQIIXQdhC4lJyfD2toaSQ8fwsrKqmAFXpYuvC4vS2tel5el8/5m01XJ6vI7Iu9vfkdoXldPvyOU5++kpMLP3/+PiY6aHxQRERGVH+qev9l0RURERHqLiQ4RERHpLSY6REREpLeY6BAREZHeYqJDREREeouJDhEREektJjpERESkt5joEBERkd5iokNERER6i4kOERER6S0mOkRERKS3mOgQERGR3mKiQ0RERHrLUNcB6Fr+w9uTk5N1HAkRERGpK/+8nX8eL0qlT3RSUlIAAG5ubjqOhIiIiDSVkpICa2vrIudLxKtSIT2nUCjw8OFDWFpaQiKRKMsDAwNx7ty5AvXVLU9OToabmxvu378PKyur0gleTUXFXNbr02Q5deoWV6ck87gPtbtcWe/Dwsr0dR++zrrUXfZ1919x83kMVoxjsLj55WEfCiGQkpICFxcXGBgU3ROn0l/RMTAwQLVq1QqUS6XSQneKpuVWVlY6P0CLiq2s16fJcurULa5OSeZxH2p3ubLeh8XV17d9+DrrUnfZ191/xc3nMVgxjsHi5peXfVjclZx87IxchNDQUK2Ulwfajq2k69NkOXXqFlenJPO4D7W7XFnvw/K8/wDtxvc661J32dfdf8XN5zFYMY7B4uZXpH1Y6ZuuSktycjKsra2RlJSk818iVDLchxUf92HFxv1X8ZWHfcgrOqVEJpNh2rRpkMlkug6FSoj7sOLjPqzYuP8qvvKwD3lFh4iIiPQWr+gQERGR3mKiQ0RERHqLiQ4RERHpLSY6REREpLeY6BAREZHeYqKjI7t370adOnVQq1Yt/Pzzz7oOhzTUq1cvVKlSBX379tV1KFQC9+/fR9u2beHj44MGDRpg8+bNug6JNJSYmIjGjRvD398f9erVw4oVK3QdEpVAeno6PDw8MGnSpFLbBm8v14Hc3Fz4+Pjg8OHDsLa2RkBAAE6dOoWqVavqOjRS05EjR5CSkoI1a9Zgy5Ytug6HNBQXF4f4+Hj4+/vj0aNHCAgIQHR0NMzNzXUdGqlJLpcjKysLZmZmSEtLQ7169XD+/Hl+j1Ywn3/+OW7evAk3Nzd8++23pbINXtHRgbNnz8LX1xeurq6wsLBA586dsX//fl2HRRpo27YtLC0tdR0GlZCzszP8/f0BAE5OTrCzs8OzZ890GxRpRCqVwszMDACQlZUFIQT4u71iiYmJQWRkJDp37lyq22GiUwLHjh1Dt27d4OLiAolEgu3btxeoExYWBk9PT5iYmKBp06Y4e/asct7Dhw/h6uqqnHZ1dcWDBw/KInTC6+8/0j1t7sMLFy5ALpfDzc2tlKOmF2ljHyYmJsLPzw/VqlXDJ598Ajs7uzKKnrSx/yZNmoQ5c+aUeqxMdEogLS0Nfn5+CAsLK3T+xo0bMXHiREybNg0XL16En58fgoODkZCQUMaRUmG4/yo+be3DZ8+eYciQIfjpp5/KImx6gTb2oY2NDSIiIhAbG4v169cjPj6+rMKv9F53/+3YsQO1a9dG7dq1Sz9YQa8FgNi2bZtKWZMmTURoaKhyWi6XCxcXFzFnzhwhhBAnT54UPXv2VM6fMGGCWLduXZnES6pKsv/yHT58WPTp06cswqRilHQfZmZmitatW4tff/21rEKlIrzOcZjvgw8+EJs3by7NMKkIJdl/kydPFtWqVRMeHh6iatWqwsrKSkyfPr1U4uMVHS3Lzs7GhQsX0KFDB2WZgYEBOnTogNOnTwMAmjRpgqtXr+LBgwdITU3F3r17ERwcrKuQ6QXq7D8q39TZh0IIDB06FG+88QbeffddXYVKRVBnH8bHxyMlJQUAkJSUhGPHjqFOnTo6iZdUqbP/5syZg/v37+POnTv49ttvMXLkSEydOrVU4jEslbVWYk+ePIFcLoejo6NKuaOjIyIjIwEAhoaGWLBgAdq1aweFQoFPP/2UdwqUE+rsPwDo0KEDIiIikJaWhmrVqmHz5s1o3rx5WYdLhVBnH548eRIbN25EgwYNlH0L1q5di/r165d1uFQIdfbh3bt3MWrUKGUn5HHjxnH/lRPqfo+WFSY6OtK9e3d0795d12FQCR08eFDXIdBraNWqFRQKha7DoNfQpEkThIeH6zoM0oKhQ4eW6vrZdKVldnZ2kEqlBTrFxcfHw8nJSUdRkbq4/yo+7sOKj/uwYitv+4+JjpYZGxsjICAAhw4dUpYpFAocOnSITRsVAPdfxcd9WPFxH1Zs5W3/semqBFJTU3Hz5k3ldGxsLMLDw2Frawt3d3dMnDgRISEhaNy4MZo0aYLFixcjLS0Nw4YN02HUlI/7r+LjPqz4uA8rtgq1/0rlXi49d/jwYQGgwCskJERZZ8mSJcLd3V0YGxuLJk2aiDNnzuguYFLB/VfxcR9WfNyHFVtF2n981hURERHpLfbRISIiIr3FRIeIiIj0FhMdIiIi0ltMdIiIiEhvMdEhIiIivcVEh4iIiPQWEx0iIiLSW0x0iIiISG8x0SEiIiK9xUSHqJy6c+cOJBIJwsPDdR2KUmRkJJo1awYTExP4+/vrOpxCeXp6YvHixcppiUSC7du3q7380KFD0bNnT63HpamX3wcRlQwTHaIiDB06FBKJBHPnzlUp3759OyQSiY6i0q1p06bB3NwcUVFRKk8mJu07d+4cRo0apeswStVXX31VbhNm0h9MdIiKYWJignnz5uH58+e6DkVrsrOzS7zsrVu30KpVK3h4eKBq1apajKp4Qgjk5uaW2fbKA3t7e5iZmRU5PycnpwyjIaq4mOgQFaNDhw5wcnLCnDlziqxT2K/SxYsXw9PTUzmd3xwye/ZsODo6wsbGBjNmzEBubi4++eQT2Nraolq1ali1alWB9UdGRqJFixYwMTFBvXr1cPToUZX5V69eRefOnWFhYQFHR0e8++67ePLkiXJ+27ZtMXbsWHz44Yews7NDcHBwoe9DoVBgxowZqFatGmQyGfz9/bFv3z7lfIlEggsXLmDGjBmQSCT46quvCl1P/vbGjh0La2tr2NnZ4csvv8SLzw9eu3YtGjduDEtLSzg5OWHQoEFISEhQzj9y5AgkEgn27t2LgIAAyGQynDhxArdu3UKPHj3g6OgICwsLBAYG4uDBg4XGUZT79++jf//+sLGxga2tLXr06IE7d+5otI4TJ06gdevWMDU1hZubG8aPH4+0tDTlfE9PT8yePRvDhw+HpaUl3N3d8dNPPynnt2jRAp999pnKOh8/fgwjIyMcO3ZMuY6Xm+CWLVuG7t27w9zcHLNmzQIALFu2DDVq1ICxsTHq1KmDtWvXqqxXIpHg559/Rq9evWBmZoZatWph586dyvn5n/Vff/2Fhg0bwtTUFG+88QYSEhKwd+9eeHt7w8rKCoMGDUJ6erpyOYVCgTlz5sDLywumpqbw8/PDli1bCqz30KFDaNy4MczMzNCiRQtERUUBAFavXo3p06cjIiICEokEEokEq1evhhACX331Fdzd3SGTyeDi4oLx48drtH+IVOjkmelEFUBISIjo0aOH2Lp1qzAxMRH3798XQgixbds28eKhM23aNOHn56ey7KJFi4SHh4fKuiwtLUVoaKiIjIwUK1euFABEcHCwmDVrloiOjhYzZ84URkZGyu3ExsYKAKJatWpiy5Yt4vr16+K9994TlpaW4smTJ0IIIZ4/fy7s7e3FlClTxI0bN8TFixfFm2++Kdq1a6fcdlBQkLCwsBCffPKJiIyMFJGRkYW+34ULFworKyuxYcMGERkZKT799FNhZGQkoqOjhRBCxMXFCV9fX/Hxxx+LuLg4kZKSUuh68rc3YcIEERkZKX777TdhZmYmfvrpJ2WdlStXij179ohbt26J06dPi+bNm4vOnTsr5x8+fFgAEA0aNBD79+8XN2/eFE+fPhXh4eFi+fLl4sqVKyI6Olp88cUXwsTERNy9e1e5rIeHh1i0aJFyGoDYtm2bEEKI7Oxs4e3tLYYPHy4uX74srl+/LgYNGiTq1KkjsrKyVPZ7UW7evCnMzc3FokWLRHR0tDh58qRo2LChGDp0qEoMtra2IiwsTMTExIg5c+YIAwMD5We/dOlS4e7uLhQKhXKZJUuWqJQV9j4cHBzEL7/8Im7duiXu3r0rtm7dKoyMjERYWJiIiooSCxYsEFKpVPz9998qy1WrVk2sX79exMTEiPHjxwsLCwvx9OlTlc+6WbNm4sSJE+LixYuiZs2aIigoSHTs2FFcvHhRHDt2TFStWlXMnTtXud6vv/5a1K1bV+zbt0/cunVLrFq1SshkMnHkyBGV9TZt2lQcOXJEXLt2TbRu3Vq0aNFCCCFEenq6+Pjjj4Wvr6+Ii4sTcXFxIj09XWzevFlYWVmJPXv2iLt374p//vlH5X+HSFNMdIiK8OIJr1mzZmL48OFCiJInOh4eHkIulyvL6tSpI1q3bq2czs3NFebm5mLDhg1CiP8SnRdPLjk5OaJatWpi3rx5QgghZs6cKTp27Kiy7fv37wsAIioqSgiRl3g0bNjwle/XxcVFzJo1S6UsMDBQjBkzRjnt5+cnpk2bVux6goKChLe3t8pJ/LPPPhPe3t5FLnPu3DkBQJk85Z8kt2/f/sq4fX19xZIlS5TTxSU6a9euFXXq1FGJLSsrS5iamoq//vpLCPHqRGfEiBFi1KhRKmXHjx8XBgYGIiMjQxnDO++8o5yvUCiEg4ODWLZsmRBCiISEBGFoaCiOHTumrNO8eXPx2WefFfs+PvzwQ5XttmjRQowcOVKlrF+/fqJLly4qy33xxRfK6dTUVAFA7N27Vwjx32d98OBBZZ05c+YIAOLWrVvKstGjR4vg4GAhhBCZmZnCzMxMnDp1qsBnM3DgwCLX++effwoAys+psGNnwYIFonbt2iI7O1sQaQObrojUMG/ePKxZswY3btwo8Tp8fX1hYPDfIefo6Ij69esrp6VSKapWrarShAMAzZs3V/5taGiIxo0bK+OIiIjA4cOHYWFhoXzVrVsXQF5/mnwBAQHFxpacnIyHDx+iZcuWKuUtW7Ys0Xtu1qyZSoft5s2bIyYmBnK5HABw4cIFdOvWDe7u7rC0tERQUBAA4N69eyrrady4scp0amoqJk2aBG9vb9jY2MDCwgI3btwosFxRIiIicPPmTVhaWio/L1tbW2RmZqp8Xq9ax+rVq1U+8+DgYCgUCsTGxirrNWjQQPm3RCKBk5OTct/a29ujY8eOWLduHQAgNjYWp0+fxuDBg4vd9sufx40bN9TaZy/GYm5uDisrqwL/Zy/WcXR0hJmZGapXr65Slr/MzZs3kZ6ejjfffFPlc/j1118LfI4vrtfZ2RkACmz7Rf369UNGRgaqV6+OkSNHYtu2bZWufxZpl6GuAyCqCNq0aYPg4GBMmTIFQ4cOVZlnYGCg0v8EKLyjqJGRkcq0RCIptEyhUKgdV2pqKrp164Z58+YVmJd/UgHyTm7lRVpaGoKDgxEcHIx169bB3t4e9+7dQ3BwcIGO0i/HPWnSJBw4cADffvstatasCVNTU/Tt21ftDtapqakICAhQJhgvsre3V3sdo0ePLrTfiLu7u/LvV+3bwYMHY/z48ViyZAnWr1+P+vXrqyS+hSnpflTn/+zFOq/630xNTQUA/Pnnn3B1dVWpJ5PJil0vgGL/x93c3BAVFYWDBw/iwIEDGDNmDL755hscPXq0QExE6mCiQ6SmuXPnwt/fH3Xq1FEpt7e3x6NHjyCEUH6Ra3PsmzNnzqBNmzYAgNzcXFy4cAFjx44FADRq1Ah//PEHPD09YWhY8sPZysoKLi4uOHnypPLqCgCcPHkSTZo00Xh9//zzT4H3UKtWLUilUkRGRuLp06eYO3cu3NzcAADnz59Xa70nT57E0KFD0atXLwB5J1xNOhI3atQIGzduhIODA6ysrNRe7uV1XL9+HTVr1izR8vl69OiBUaNGYd++fVi/fj2GDBmi8Tq8vb1x8uRJhISEKMtOnjwJHx+f14rtVXx8fCCTyXDv3j2V/xdNGRsbK6/yvcjU1BTdunVDt27dEBoairp16+LKlSto1KjR64RNlRSbrojUVL9+fQwePBjff/+9Snnbtm3x+PFjzJ8/H7du3UJYWBj27t2rte2GhYVh27ZtiIyMRGhoKJ4/f47hw4cDAEJDQ/Hs2TMMHDgQ586dw61bt/DXX39h2LBhhZ5AivPJJ59g3rx52LhxI6KiojB58mSEh4djwoQJGsd87949TJw4EVFRUdiwYQOWLFmiXI+7uzuMjY2xZMkS3L59Gzt37sTMmTPVWm+tWrWwdetWhIeHIyIiAoMGDdLoCtjgwYNhZ2eHHj164Pjx44iNjcWRI0cwfvx4/Pvvv2qt47PPPsOpU6cwduxYhIeHIyYmBjt27FAmn+oyNzdHz5498eWXX+LGjRsYOHCgRssDefts9erVWLZsGWJiYrBw4UJs3boVkyZN0nhdmrC0tMSkSZPw0UcfYc2aNbh16xYuXryIJUuWYM2aNWqvx9PTE7GxsQgPD8eTJ0+QlZWF1atXY+XKlbh69Spu376N3377DaampvDw8CjFd0T6jIkOkQZmzJhR4MTq7e2NH374AWFhYfDz88PZs2e1eqKZO3cu5s6dCz8/P5w4cQI7d+6EnZ0dACivwsjlcnTs2BH169fHhx9+CBsbG5X+QOoYP348Jk6ciI8//hj169fHvn37sHPnTtSqVUvjmIcMGYKMjAw0adIEoaGhmDBhgnLwO3t7e6xevRqbN2+Gj48P5s6di2+//Vat9S5cuBBVqlRBixYt0K1bNwQHB2v0K9/MzAzHjh2Du7s7evfuDW9vb4wYMQKZmZlqX+Fp0KABjh49iujoaLRu3RoNGzbE1KlT4eLionYc+QYPHoyIiAi0bt1apdlLXT179sR3332Hb7/9Fr6+vvjxxx+xatUqtG3bVuN1aWrmzJn48ssvMWfOHHh7e6NTp074888/4eXlpfY6+vTpg06dOqFdu3awt7fHhg0bYGNjgxUrVqBly5Zo0KABDh48iF27dpXpuE2kXyTi5c4FRESvoW3btvD39+fjC4ioXOAVHSIiItJbTHSIiIhIb7HpioiIiPQWr+gQERGR3mKiQ0RERHqLiQ4RERHpLSY6REREpLeY6BAREZHeYqJDREREeouJDhEREektJjpERESkt/4PazKhaORKf5gAAAAASUVORK5CYII=\n" - }, - "metadata": {} - } ] }, { "cell_type": "markdown", + "metadata": { + "id": "WobTKkl25IlM" + }, "source": [ "## Part 3: Train an agent 🍲\n", "\n", "We train an agent on the `cramped_room` Overcooked scenario using IPPO, our IPPO code is based off [PureJaxRL](https://github.com/luchris429/purejaxrl). Here we also show how `jax.vmap` can again be used to simply train over multiple seeds." - ], - "metadata": { - "id": "WobTKkl25IlM" - } + ] }, { "cell_type": "code", + "execution_count": 7, + "metadata": { + "id": "wGwk68jK2VPK" + }, + "outputs": [], "source": [ "import jax\n", "import jax.numpy as jnp\n", @@ -1136,15 +1127,31 @@ "\n", " return train\n", "\n" - ], - "metadata": { - "id": "wGwk68jK2VPK" - }, - "execution_count": 7, - "outputs": [] + ] }, { "cell_type": "code", + "execution_count": 8, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 452 + }, + "id": "AxrH1jHv3orP", + "outputId": "9b9d8d7e-615d-437a-b9a4-edb9cddd975b" + }, + "outputs": [ + { + "data": { + "image/png": "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zp07C51OJ7p37y5++OEHh+0NqaW51XV8ysvLxahRo0R0dLTQarUiJSVFTJs2zSWw+vPxcXdsADi835X0mWpILc2pvuNz4sQJMXToUBEZGSn0er3o2LGjmD17tsN5doTw3+Nzzz33iJSUFKHT6UR0dLQYMWKEHHQaWo+/HhtnkhBCeKYNiYiIiMjzOGaHiIiI/BrDDhEREfk1hh0iIiLyaww7RERE5NcYdoiIiMivMewQERGRX2PYISIiIr/GsENERER+jWGHiBRp+PDheOihh7xdBhH5AYYdImqS2sLIxx9/jPDwcI/Xs3btWkiS5HJl5abIzs7G7bffjoSEBAQEBCAxMRHXXXcdDhw4AAA4duwYJEmSLzpJRMqm8XYBRERKYjabcfXVVyMtLQ1LlixBfHw8Tp06heXLlzdLkCIiz2PLDhG1qClTpmDChAmYP38+oqOjERYWhgceeAAmk0nep6ysDHfddRdCQkIQHx+P1157zeVxPvvsM/Tv3x+hoaGIi4vD7bffjtzcXABVLS1XXnklACAiIgKSJGHKlCkAAJvNhgULFiA1NRWBgYHo3bs3vv7661rr3bt3L44cOYJ3330XAwcOREpKCgYPHowXXngBAwcOBACkpqYCAPr27QtJkjB8+HD5/h988AG6du2KgIAAdOnSBe+++668rbpF6IsvvsCgQYMQEBCAHj16YN26dU07uETUIAw7RNTiVq1ahf3792Pt2rX4/PPPsWTJEsyfP1/ePnv2bKxbtw7fffcdfvrpJ6xduxbbt293eAyz2Yznn38eu3btwtKlS3Hs2DE50CQlJeGbb74BABw8eBBnz57FW2+9BQBYsGABPv30U7z//vvYu3cvHn74Ydxxxx21Bozo6GioVCp8/fXXsFqtbvf5/fffAQA///wzzp49iyVLlgAAFi1ahLlz5+Kvf/0r9u/fjxdffBHPPPMMPvnkE4f7z549G4888gh27NiBjIwMjB8/Hnl5eY08qkTUYB67vjoR+ZVhw4aJv/zlLy7rP/roI2EwGOTlyZMni8jISFFWViave++990RISIiwWq2ipKRE6HQ68eWXX8rb8/LyRGBgoNvHr7ZlyxYBQJSUlAghhFizZo0AIAoKCuR9KisrRVBQkPjtt98c7jt16lRx22231frYf//730VQUJAIDQ0VV155pXjuuefEkSNH5O3Z2dkCgNixY4fD/Tp06CAWL17ssO75558XGRkZDvd76aWX5O1ms1kkJiaKl19+udZ6iOjSsGWHiFpc7969ERQUJC9nZGSgtLQUJ0+exJEjR2AymZCeni5vj4yMRFpamsNjbNu2DePHj0dycjJCQ0MxbNgwAMCJEydqfd7Dhw+jvLwcV199NUJCQuR/n376KY4cOVLr/WbMmIGcnBwsWrQIGRkZ+Oqrr9C9e3esXLmy1vuUlZXhyJEjmDp1qsNzvfDCCy7PlZGRId/WaDTo378/9u/fX+tjE9Gl4QBlImqSsLAwFBUVuawvLCyEwWBo1ucqKytDZmYmMjMzsWjRIkRHR+PEiRPIzMx0GPvjrLS0FADwww8/oG3btg7b9Hp9nc8ZGhqK8ePHY/z48XjhhReQmZmJF154AVdffXWdz/Wvf/3LIbgBgFqtrvc1ElHLYcsOETVJWlqay7gaANi+fTs6d+7ssG7Xrl2oqKiQlzdt2oSQkBAkJSWhQ4cO0Gq12Lx5s7y9oKAAf/zxh7x84MAB5OXl4aWXXsIVV1yBLl26yIOTq+l0OgBwGGfTrVs36PV6nDhxAh07dnT4l5SU1ODXKkkSunTpgrKyslqfKzY2FgkJCTh69KjLc1UPaLZ//dUsFgu2bduGrl27NrgeImoctuwQUZNMnz4df//73/HnP/8Z9957L/R6PX744Qd8/vnn+P777x32NZlMmDp1Kp5++mkcO3YM8+bNw8yZM6FSqRASEoKpU6di9uzZaNOmDWJiYvDUU09Bpar5Wyw5ORk6nQ7vvPMOHnjgAWRlZeH55593eI6UlBRIkoRly5Zh7NixCAwMRGhoKB599FE8/PDDsNlsGDJkCIqKivDrr78iLCwMkydPdnldO3fuxLx583DnnXeiW7du0Ol0WLduHT788EM8/vjjAICYmBgEBgZixYoVSExMREBAAAwGA+bPn48///nPMBgMGD16NIxGI7Zu3YqCggLMmjVLfo6FCxeiU6dO6Nq1K9544w0UFBTgnnvuac4fDxHZ8/agISLyXb///ru4+uqrRXR0tDAYDCI9PV18++23DvtMnjxZXHfddWLu3LmiTZs2IiQkREybNk1UVlbK+5SUlIg77rhDBAUFidjYWPHKK6+4DIBevHixaNeundDr9SIjI0P897//dRkk/Nxzz4m4uDghSZKYPHmyEEIIm80m3nzzTZGWlia0Wq2Ijo4WmZmZYt26dW5f0/nz58Wf//xn0aNHDxESEiJCQ0NFz549xauvviqsVqu837/+9S+RlJQkVCqVGDZsmLx+0aJFok+fPkKn04mIiAgxdOhQsWTJEiFEzQDlxYsXiwEDBgidTie6desmVq9e3bQfABE1iCSEEN4OXETkv6ZMmYLCwkIsXbrU26V43bFjx5CamoodO3agT58+3i6HqNXgmB0iIiLyaww7RERE5NfYjUVERER+jS07RERE5NcYdoiIiMivMewQERGRX2PYISIiIr/GsENERER+jWGHiIiI/BrDDhEREfk1hh0iIiLya/8PBPaLVpiAbCgAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "%matplotlib inline\n", "\n", @@ -1185,28 +1192,24 @@ "plt.xlabel(\"Update Step\")\n", "plt.ylabel(\"Return\")\n", "plt.show()" - ], - "metadata": { - "colab": { - "base_uri": "https://localhost:8080/", - "height": 452 - }, - "id": "AxrH1jHv3orP", - "outputId": "9b9d8d7e-615d-437a-b9a4-edb9cddd975b" - }, - "execution_count": 8, - "outputs": [ - { - "output_type": "display_data", - "data": { - "text/plain": [ - "
" - ], - "image/png": "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zp07C51OJ7p37y5++OEHh+0NqaW51XV8ysvLxahRo0R0dLTQarUiJSVFTJs2zSWw+vPxcXdsADi835X0mWpILc2pvuNz4sQJMXToUBEZGSn0er3o2LGjmD17tsN5doTw3+Nzzz33iJSUFKHT6UR0dLQYMWKEHHQaWo+/HhtnkhBCeKYNiYiIiMjzOGaHiIiI/BrDDhEREfk1hh0iIiLyaww7RERE5NcYdoiIiMivMewQERGRX2PYISIiIr/GsENERER+jWGHiBRp+PDheOihh7xdBhH5AYYdImqS2sLIxx9/jPDwcI/Xs3btWkiS5HJl5abIzs7G7bffjoSEBAQEBCAxMRHXXXcdDhw4AAA4duwYJEmSLzpJRMqm8XYBRERKYjabcfXVVyMtLQ1LlixBfHw8Tp06heXLlzdLkCIiz2PLDhG1qClTpmDChAmYP38+oqOjERYWhgceeAAmk0nep6ysDHfddRdCQkIQHx+P1157zeVxPvvsM/Tv3x+hoaGIi4vD7bffjtzcXABVLS1XXnklACAiIgKSJGHKlCkAAJvNhgULFiA1NRWBgYHo3bs3vv7661rr3bt3L44cOYJ3330XAwcOREpKCgYPHowXXngBAwcOBACkpqYCAPr27QtJkjB8+HD5/h988AG6du2KgIAAdOnSBe+++668rbpF6IsvvsCgQYMQEBCAHj16YN26dU07uETUIAw7RNTiVq1ahf3792Pt2rX4/PPPsWTJEsyfP1/ePnv2bKxbtw7fffcdfvrpJ6xduxbbt293eAyz2Yznn38eu3btwtKlS3Hs2DE50CQlJeGbb74BABw8eBBnz57FW2+9BQBYsGABPv30U7z//vvYu3cvHn74Ydxxxx21Bozo6GioVCp8/fXXsFqtbvf5/fffAQA///wzzp49iyVLlgAAFi1ahLlz5+Kvf/0r9u/fjxdffBHPPPMMPvnkE4f7z549G4888gh27NiBjIwMjB8/Hnl5eY08qkTUYB67vjoR+ZVhw4aJv/zlLy7rP/roI2EwGOTlyZMni8jISFFWViave++990RISIiwWq2ipKRE6HQ68eWXX8rb8/LyRGBgoNvHr7ZlyxYBQJSUlAghhFizZo0AIAoKCuR9KisrRVBQkPjtt98c7jt16lRx22231frYf//730VQUJAIDQ0VV155pXjuuefEkSNH5O3Z2dkCgNixY4fD/Tp06CAWL17ssO75558XGRkZDvd76aWX5O1ms1kkJiaKl19+udZ6iOjSsGWHiFpc7969ERQUJC9nZGSgtLQUJ0+exJEjR2AymZCeni5vj4yMRFpamsNjbNu2DePHj0dycjJCQ0MxbNgwAMCJEydqfd7Dhw+jvLwcV199NUJCQuR/n376KY4cOVLr/WbMmIGcnBwsWrQIGRkZ+Oqrr9C9e3esXLmy1vuUlZXhyJEjmDp1qsNzvfDCCy7PlZGRId/WaDTo378/9u/fX+tjE9Gl4QBlImqSsLAwFBUVuawvLCyEwWBo1ucqKytDZmYmMjMzsWjRIkRHR+PEiRPIzMx0GPvjrLS0FADwww8/oG3btg7b9Hp9nc8ZGhqK8ePHY/z48XjhhReQmZmJF154AVdffXWdz/Wvf/3LIbgBgFqtrvc1ElHLYcsOETVJWlqay7gaANi+fTs6d+7ssG7Xrl2oqKiQlzdt2oSQkBAkJSWhQ4cO0Gq12Lx5s7y9oKAAf/zxh7x84MAB5OXl4aWXXsIVV1yBLl26yIOTq+l0OgBwGGfTrVs36PV6nDhxAh07dnT4l5SU1ODXKkkSunTpgrKyslqfKzY2FgkJCTh69KjLc1UPaLZ//dUsFgu2bduGrl27NrgeImoctuwQUZNMnz4df//73/HnP/8Z9957L/R6PX744Qd8/vnn+P777x32NZlMmDp1Kp5++mkcO3YM8+bNw8yZM6FSqRASEoKpU6di9uzZaNOmDWJiYvDUU09Bpar5Wyw5ORk6nQ7vvPMOHnjgAWRlZeH55593eI6UlBRIkoRly5Zh7NixCAwMRGhoKB599FE8/PDDsNlsGDJkCIqKivDrr78iLCwMkydPdnldO3fuxLx583DnnXeiW7du0Ol0WLduHT788EM8/vjjAICYmBgEBgZixYoVSExMREBAAAwGA+bPn48///nPMBgMGD16NIxGI7Zu3YqCggLMmjVLfo6FCxeiU6dO6Nq1K9544w0UFBTgnnvuac4fDxHZ8/agISLyXb///ru4+uqrRXR0tDAYDCI9PV18++23DvtMnjxZXHfddWLu3LmiTZs2IiQkREybNk1UVlbK+5SUlIg77rhDBAUFidjYWPHKK6+4DIBevHixaNeundDr9SIjI0P897//dRkk/Nxzz4m4uDghSZKYPHmyEEIIm80m3nzzTZGWlia0Wq2Ijo4WmZmZYt26dW5f0/nz58Wf//xn0aNHDxESEiJCQ0NFz549xauvviqsVqu837/+9S+RlJQkVCqVGDZsmLx+0aJFok+fPkKn04mIiAgxdOhQsWTJEiFEzQDlxYsXiwEDBgidTie6desmVq9e3bQfABE1iCSEEN4OXETkv6ZMmYLCwkIsXbrU26V43bFjx5CamoodO3agT58+3i6HqNXgmB0iIiLyaww7RERE5NfYjUVERER+jS07RERE5NcYdoiIiMivMewQERGRX2PYISIiIr/GsENERER+jWGHiIiI/BrDDhEREfk1hh0iIiLya/8PBPaLVpiAbCgAAAAASUVORK5CYII=\n" - }, - "metadata": {} - } ] } - ] + ], + "metadata": { + "accelerator": "GPU", + "colab": { + "gpuType": "T4", + "provenance": [], + "toc_visible": true + }, + "kernelspec": { + "display_name": "Python 3", + "name": "python3" + }, + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 0 }