Repository: deep-learning-indaba/indaba-pracs-2022 Branch: main Commit: 16f8ccfbc141 Files: 10 Total size: 4.3 MB Directory structure: gitextract_dumor4er/ ├── LICENSE ├── README.MD └── practicals/ ├── Bayesian_Deep_Learning_Prac.ipynb ├── GNN_practical.ipynb ├── Indaba_2022_Prac_Template.ipynb ├── Introduction_to_ML_using_JAX.ipynb ├── array_algebra.ipynb ├── attention_and_transformers.ipynb ├── deep_generative_models.ipynb └── introduction_to_reinforcement_learning.ipynb ================================================ FILE CONTENTS ================================================ ================================================ FILE: LICENSE ================================================ Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright 2022, Deep Learning Indaba Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ================================================ FILE: README.MD ================================================ # Deep Learning Indaba Practicals 2022 ## The Practicals | Topic 💥 | Description 📘 | |:--- |----------------------------------------------------------| [Introduction to ML using JAX](https://github.com/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/Introduction_to_ML_using_JAX.ipynb)

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/Introduction_to_ML_using_JAX.ipynb) | In this tutorial, we will learn about JAX, a new machine learning framework that has taken deep learning research by storm! JAX is praised for its speed, and we will learn how to achieve these speedups, using core concepts in JAX, such as automatic differentiation (`grad`), parallelization (`pmap`), vectorization (`vmap`), just-in-time compilation (`jit`), and more. We will then use what we have learned to implement Linear Regression effectively while learning some of the fundamentals of optimization. | [Bayesian Deep Learning](https://github.com/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/Bayesian_Deep_Learning_Prac.ipynb)

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/Bayesian_Deep_Learning_Prac.ipynb) | Bayesian inference provides us with the tools to update our beliefs consistently when we observe data. Compared to the, more common, loss minimisation approach to learning, Bayesian methods offer us calibrated uncertainty estimates, resistance to overfitting, and even approaches to select hyper-parameters without a validation set. 🚀In this prac we will learn to do all of these things!🚀 | [Transformers and Attention](https://github.com/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/attention_and_transformers.ipynb)

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/attention_and_transformers.ipynb) | The transformer architecture, introduced in Vaswani et al. 2017's paper [Attention is All You Need](https://arxiv.org/abs/1706.03762?amp=1), has significantly impacted the deep learning field. It has arguably become the de-facto architecture for complex Natural Language Processing (NLP) tasks. It can also be applied in various domains reaching state-of-the-art performance, including computer vision and reinforcement learning. Transformers, as the title of the original paper implies, are almost entirely based on a concept known as attention. Attention allows models to "focus" on different parts of an input; while considering the entire context of the input versus an RNN, that operates on the data sequentially. In this practical, we will introduce attention in greater detail and build the entire transformer architecture block by block to see why it is such a robust and powerful architecture | [Graph Neural Networks](https://github.com/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/GNN_practical.ipynb)

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/GNN_practical.ipynb) | In this tutorial, we will be learning about Graph Neural Networks (GNNs), a topic which has exploded in popularity in both research and industry. We will start with a refresher on graph theory, then dive into how GNNs work from a high level. Next we will cover some popular GNN implementations and see how they work in practice. | [Deep Generative Models](https://github.com/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/deep_generative_models.ipynb)

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/deep_generative_models.ipynb) | In this practical, we will investigate the fundamentals of generative modelling – a machine learning framework that allows us to learn how to sample new unseen data points that match the distribution of our training dataset. Generative modelling, though a powerful and flexible framework–which has provided many exciting advances in ML–has its own challenges and limitations. This practical will walk you through such challenges and will illustrate how to solve them by implementing a Denoising Diffusion Model (a.k.a. a Score-Based Generative Model), which is the backbone of the recent and exciting [Dalle-2](https://openai.com/dall-e-2/) and [Imagen](https://imagen.research.google/) models that we’ve all seen on [Twitter](https://twitter.com/search?q=%23dalle2%20%23imagen&src=typed_query). | [Intro to Reinforcement Learning](https://github.com/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/introduction_to_reinforcement_learning.ipynb)

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/introduction_to_reinforcement_learning.ipynb) | In this tutorial, we will be learning about Reinforcement Learning, a type of Machine Learning where an agent learns to choose actions in an environment that lead to maximal reward in the long run. RL has seen tremendous success on a wide range of challenging problems such as learning to play complex video games like [Atari](https://www.deepmind.com/blog/agent57-outperforming-the-human-atari-benchmark), [StarCraft II](https://www.deepmind.com/blog/alphastar-mastering-the-real-time-strategy-game-starcraft-ii) and [Dota II](https://openai.com/five/). In this introductory tutorial we will solve the classic [CartPole](https://www.gymlibrary.ml/environments/classic_control/cart_pole/) environment, where an agent must learn to balance a pole on a cart, using several different RL approaches. Along the way you will be introduced to some of the most important concepts and terminology in RL. | [Array Algebra](https://colab.research.google.com/github/deep-learning-indaba/indaba-pracs-2022/blob/prac-array-algebra/practicals/array_algebra.ipynb)

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/deep-learning-indaba/indaba-pracs-2022/blob/prac-array-algebra/practicals/array_algebra.ipynb) | In this tutorial, we’ll look at one of the cornerstones of modern deep learning: array programming. Think of this tutorial as a gym or obstacle course for working with arrays. We’ll help you gain intuition about multidimensional arrays (“tensors”), so you can better understand transposing, broadcasting, contraction, and the other “algebraic moves” that make array programming both frustrating and rewarding. They’ll be practical examples as well as theoretical exercises to help you develop your understanding. | This repository contains the practical notebooks for the Deep Learning Indaba 2022, held at SUP’COM University in Tunis, Tunisia. See [www.deeplearningindaba.com](http://www.deeplearningindaba.com) for more details. ================================================ FILE: practicals/Bayesian_Deep_Learning_Prac.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "id": "m2s4kN_QPQVe" }, "source": [ "# Bayesian Deep Learning Practical\n", "\n", "\n", "\n", "\n", "\n", "\"Open\n", "\n", "© Deep Learning Indaba 2022. Apache License 2.0.\n", "\n", "**Authors:**\n", "\n", "Javier Antorán, James Allingham.\n", "\n", "**Reviewers:**\n", "\n", "Kale-ab Tessera, Ruan van der Merwe\n", "\n", "**Introduction:** \n", "\n", "Bayesian inference provides us with the tools to update our beliefs consistently when we observe data. Compared to the, more common, loss minimisation approach to learning, Bayesian methods offer us **calibrated uncertainty estimates**, **resistance to overfitting**, and even approaches to **select hyper-parameters without a validation set**. 🚀In this prac we will learn to do all of these things!🚀\n", "\n", "\n", "\n", "**Aims/Learning Objectives:**\n", "\n", "\n", "* Understand the tradeoffs of Maximum Likelihood vs fully Bayesian learning **[Sections 0 and 1]**\n", "* Implement Bayesian linear regression **[Section 1]**\n", "* Understand the challenges of Bayesian inference in non-conjugate models and the need for approximate inference **[Section 2]**\n", "* Implement “black box” variational inference **[Section 3]**\n", "* Understand the tradeoffs of different methods for approximate Bayesian Inference, e.g. variational inference vs Monte Carlo methods **[Sections 4 and 5]**\n", "\n", "**Prerequisites:**\n", "\n", "* Familiarity with Jax\n", "* Basic Linear Algebra\n", "* Basics of Bayesian inference [here is a 15 min video on the topic](https://www.youtube.com/watch?v=HZGCoVF3YvM) and / or Bayesian Inference parallel talk from the Indaba\n", "* Recommended: Attend the Monte Carlo 101 parallel.\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "aOSzO91vNdcJ" }, "source": [ "**Topics:** \n", "\n", "\n", "0. [Warmup - Standard Linear Regression](#S0) \n", "1. [From Regression to Bayesian Linear Regression](#S1) \n", "2. [Logistic Regression & the Need for Approximate Inference](#S2) \n", "3. [Black Box Variational Inference](#S3) \n", "4. [Bayesian Neural Networks](#S4) \n", "5. [Hamiltonian Monte Carlo (Optional)](#S5) \n", "\n", "\n", "\n", "\\\n", "**Before you start:**\n", "\n", "For this practical, you dont need any fancy computers. We are working smarter not harder! Set your runtime to CPU to get a guaranteed fast runtime allocation.\n", "\n", "This prac contains excercises and sections at multiple levels of difficulty. These are labelled `Base`,\n", " `Intermediate` and\n", " `Advanced`. Only the `Base` exercises are part of the core prac. Non-core sections, for instance all of the `Advanced` ones, are labelled (Optional). If you do not have experience working with matrix calculus or probability disrtibutions, it is best to skip optional sections to ensure you reach the end of the prac.\n", "\n", "This prac has a lot of content so if you get stuck it is best to ask a neighbour or tutor for help fast. After every code segment, there are a list of questions for you to answer. You are not expected to know the correct answer to all of these and your responses are not recorded anywhere. The questions are just there to get you thinking about the topic and discussing with others. Dont spend too much time on any single set of questions!\n" ] }, { "cell_type": "markdown", "metadata": { "id": "6EqhIg1odqg0" }, "source": [ "## Installation and Imports" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "4boGA9rYdt9l" }, "outputs": [], "source": [ "%%capture\n", "## Install and import anything required. Capture hides the output from the cell.\n", "# @title Install and import required packages. (Run Cell)\n", "\n", "import subprocess\n", "import os\n", "\n", "# Based on https://stackoverflow.com/questions/67504079/how-to-check-if-an-nvidia-gpu-is-available-on-my-system\n", "try:\n", " subprocess.check_output('nvidia-smi')\n", " print(\"a GPU is connected.\")\n", "except Exception: \n", " # TPU or CPU\n", " if \"COLAB_TPU_ADDR\" in os.environ and os.environ[\"COLAB_TPU_ADDR\"]:\n", " print(\"A TPU is connected.\")\n", " import jax.tools.colab_tpu\n", " jax.tools.colab_tpu.setup_tpu()\n", " else:\n", " print(\"Only CPU accelerator is connected.\")\n", " # x8 cpu devices - number of (emulated) host devices\n", " os.environ[\"XLA_FLAGS\"] = \"--xla_force_host_platform_device_count=8\"\n", " \n", "!pip install optax\n", "!pip install livelossplot\n", "!pip install numpyro\n", "\n", "import jax\n", "import jax.numpy as jnp\n", "from jax.numpy.linalg import inv\n", "from jax import grad, jit, vmap, random, value_and_grad\n", "from jax.scipy.stats import norm, bernoulli\n", "from jax.nn import sigmoid, tanh\n", "from jax.nn.initializers import normal\n", "from jax.scipy.linalg import solve\n", "\n", "\n", "import matplotlib.pyplot as plt\n", "from matplotlib.patches import Ellipse\n", "import numpy as np\n", "\n", "from functools import partial\n", "\n", "import optax\n", "from optax import sigmoid_binary_cross_entropy\n", "\n", "\n", "from livelossplot import PlotLosses" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "Aj2sIrAyx3hx" }, "outputs": [], "source": [ "# @title Helper Functions. (Run Cell)\n", "# @markdown You dont need to change these throughout the practical.\n", "# @markdown But take a look if you are curious! 🐈\n", "\n", "import copy\n", "from typing import Dict\n", "\n", "\n", "def plot_performance(data: Dict, title: str):\n", " runs = list(data.keys())\n", " time = list(data.values())\n", "\n", " # creating the bar plot\n", " plt.bar(runs, time, width=0.35)\n", "\n", " plt.xlabel(\"Implementation\")\n", " plt.ylabel(\"Average time taken (in s)\")\n", " plt.title(title)\n", " plt.show()\n", "\n", " best_perf_key = min(data, key=data.get)\n", " all_runs_key = copy.copy(runs)\n", "\n", " # all_runs_key_except_best\n", " all_runs_key.remove(best_perf_key)\n", "\n", " for k in all_runs_key:\n", " print(\n", " f\"{best_perf_key} was {round((data[k]/data[best_perf_key]),2)} times faster than {k} !!!\"\n", " )\n", "\n", "\n", "def errorfill(\n", " x,\n", " y,\n", " yerr,\n", " color=None,\n", " alpha_fill=0.3,\n", " line_alpha=1,\n", " ax=None,\n", " lw=1,\n", " linestyle=\"-\",\n", " fill_linewidths=0.2,\n", " marker=None,\n", " markersize=1,\n", " label=None,\n", " markevery=None,\n", "):\n", " ax = ax if ax is not None else plt.gca()\n", " if color is None:\n", " color = ax._get_lines.color_cycle.next()\n", " if np.isscalar(yerr) or len(yerr) == len(y):\n", " ymin = y - yerr\n", " ymax = y + yerr\n", " elif len(yerr) == 2:\n", " ymin, ymax = yerr\n", " plt_return = ax.plot(\n", " x,\n", " y,\n", " color=color,\n", " lw=lw,\n", " linestyle=linestyle,\n", " alpha=line_alpha,\n", " label=label,\n", " marker=marker,\n", " markersize=markersize,\n", " markevery=markevery,\n", " )\n", " ax.fill_between(\n", " x, ymax, ymin, color=color, alpha=alpha_fill, linewidths=fill_linewidths\n", " )\n", " return plt_return\n", "\n", "\n", "def plot_basic_data(\n", " x_data, y_data, parameters_list=None, title=\"Observed data\", ylim=None\n", "):\n", " xlim = [jnp.min(x_data) - 1, jnp.max(x_data) + 1]\n", "\n", " if ylim is None:\n", " ylim = [jnp.min(y_data) - 1, jnp.max(y_data) + 1]\n", " fig, ax = plt.subplots()\n", "\n", " if parameters_list is not None:\n", " x_pred = np.linspace(xlim[0], xlim[1], 100)\n", " for parameters in parameters_list:\n", " y_pred = parameters[0] + parameters[1] * x_pred\n", " ax.plot(x_pred, y_pred, \":\", color=[1, 0.7, 0.6])\n", "\n", " parameters = parameters_list[-1]\n", " y_pred = parameters[0] + parameters[1] * x_pred\n", " ax.plot(x_pred, y_pred, \"-\", color=[1, 0, 0], lw=2)\n", "\n", " ax.plot(x_data, y_data, \"ob\")\n", " ax.set(xlabel=\"Input x\", ylabel=\"Output y\", title=title, xlim=xlim, ylim=ylim)\n", " ax.grid()\n", "\n", "\n", "def optimise(objective, params, plotting_func, LR, MAX_STEPS, LOG_EVERY):\n", "\n", " optimiser = optax.chain(optax.adam(LR, b1=0.99, b2=0.999))\n", " opt_state = optimiser.init(params)\n", "\n", " def gen_update(objective):\n", " def update(params, opt_state, key):\n", " # get data neded for training\n", " value, grads = jax.value_and_grad(objective)(params, key)\n", " grads = jax.tree_map(lambda x: -x, grads)\n", " updates, opt_state = optimiser.update(grads, opt_state)\n", " params = optax.apply_updates(params, updates)\n", " return value, params, opt_state\n", "\n", " return jit(update)\n", "\n", " update = gen_update(objective)\n", "\n", " plotlosses = PlotLosses()\n", " objective_values = []\n", " artist_list = []\n", "\n", " key = random.PRNGKey(42)\n", " keys = random.split(key, MAX_STEPS)\n", " # Training & evaluation loop.\n", " for step in range(MAX_STEPS):\n", " objective_value, params, opt_state = update(params, opt_state, keys[step])\n", " objective_values.append(objective_value)\n", "\n", " if step % LOG_EVERY == 0:\n", " # Plot objective curve\n", " objective_mean = jnp.array(objective_values).mean()\n", " plotlosses.update(\n", " {\n", " \"objective_value\": objective_mean,\n", " }\n", " )\n", " plotlosses.send()\n", " objective_values = []\n", "\n", " # Plot loss landscape and variational distribution\n", " if plotting_func is not None:\n", " plotting_func(params)\n", "\n", " return params\n", "\n", "\n", "def generate_loss_grid(loss_fun, grid_size, lim0, lim1):\n", "\n", " x0, x1 = np.linspace(lim0[0], lim0[1], num=grid_size), np.linspace(\n", " lim1[0], lim1[1], num=grid_size\n", " )\n", " x0_grid, x1_grid = np.meshgrid(x0, x1)\n", "\n", " param_mat = jnp.stack([x0_grid.ravel(), x1_grid.ravel()], axis=0)\n", "\n", " vmap_loss_fun = vmap(loss_fun)\n", " loss_grid = vmap_loss_fun(param_mat.T).reshape(grid_size, grid_size)\n", " return x0_grid, x1_grid, loss_grid\n", "\n", "\n", "def plot_log_gaussian_ellipse(\n", " ax,\n", " mean,\n", " cov,\n", " color=\"b\",\n", " alpha=1,\n", " lw=1,\n", " label=None,\n", " MAP_size=5,\n", " std_levels=[1, 2, 4, 6],\n", "):\n", "\n", " eigenvalues, eigenvectors = jnp.linalg.eigh(cov)\n", " theta = np.linspace(0, 2 * np.pi, 1200)\n", " std_ellipsis = (np.sqrt(eigenvalues[None, :]) * eigenvectors) @ jnp.stack(\n", " [np.sin(theta), np.cos(theta)]\n", " )\n", "\n", " artists = []\n", "\n", " for level in std_levels:\n", " artists.append(\n", " ax.plot(\n", " mean[0] + level * std_ellipsis[0, :],\n", " mean[1] + level * std_ellipsis[1, :],\n", " c=color,\n", " alpha=alpha,\n", " lw=lw,\n", " )\n", " )\n", "\n", " artists.append(\n", " ax.scatter(\n", " [mean[0]],\n", " [mean[1]],\n", " MAP_size,\n", " color=color,\n", " label=label,\n", " alpha=alpha,\n", " marker=\"x\",\n", " )\n", " )\n", "\n", " return artists" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "mSBrgb2SzR4Q" }, "outputs": [], "source": [ "# @title Check the device you are using (Run Cell)\n", "# @markdown Just CPU is fine!\n", "print(f\"Num devices: {jax.device_count()}\")\n", "print(f\" Devices: {jax.devices()}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "w8CdWv4wZQPL" }, "source": [ "# Section 0 - Warmup \n", "# You are a born Bayesian learning machine!\n", "\n", "\n", "This section introduces the basic concepts that will be used throught the rest of the prac: affine linear models, weight norm regularisation and basic optimisation. Dont spent too much time on this section -- 20 mins max.\n", "\n", "\n", "## Standard Linear Regression\n", "\n", "In regression, we aim to find a function $f$ that maps inputs $x \\in R$ to corresponding outputs $y \\in R$. To start, lets choose the affine function $f(x, \\color{blue}{w, b}) = \\color{blue}{w} x + \\color{blue}{b}$ where the learnable parameters $(\\color{blue}{w, b}) \\in \\mathcal{R}^2$ are ` painted blue`. \n", "\n", "Sidenote: \"affine\" means: \"composed of a multiplication and a sum\".\n", "\n", "In other words, we assume that the value of the nth target $y_n$ can be modelled as\n", "\n", "$y_n = \\underbrace{\\color{blue}{w} x_n + \\color{blue}{b}}_{f(x_n, \\color{blue}{w, b})} + \\color{red}{\\epsilon_n}$\n", "\n", "with $\\color{red}{\\epsilon_n}$ refering to residual noise (we will explain what this is below). We do not want that noise to be learnt by $f$.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "gcqpxisITKYW" }, "outputs": [], "source": [ "# @title First dataset\n", "# @markdown Let's build a simple dataset, with 6 $(x,y)$ pairs.\n", "\n", "x_data_list_outlier = jnp.array([1, 1.5, 2, 3, 4, 5])\n", "x_data_list_outlier = (\n", " x_data_list_outlier - x_data_list_outlier.mean()\n", ") / x_data_list_outlier.std() #\n", "y_data_list_outlier = jnp.array([3.1, 2.1, 1.7, 1.3, -5, -0.8]) - 3\n", "\n", "plot_basic_data(x_data_list_outlier, y_data_list_outlier, ylim=[-5, 1])" ] }, { "cell_type": "markdown", "metadata": { "id": "14KthOtTZRod" }, "source": [ "### Finding plausible solutions manually\n", "\n", "When faced with some data, there are often multiple plausible explanations for it, that is multiple plausible functions that fit the data well. Lets try to come up with some plausible functions" ] }, { "cell_type": "markdown", "metadata": { "id": "FLvxEOBtWrSF" }, "source": [ "**Code Task:** `Base`\n", "1. Move the two sliders below to set $\\color{blue}{b}$ and $\\color{blue}{w}$, and press \"Run cell\" on the code cell below. \n", "2. Is your $f(x)$ a good fit for the blue data points?\n", "3. Repeat 1-2 until you have between 5 and 10 red lines you are happy with." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "A_8hyJrhdy6v" }, "outputs": [], "source": [ "parameters_list = [] # Used to track which parameters were tried." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "iYl7LM7kWYNG" }, "outputs": [], "source": [ "# @title { run: \"auto\" }\n", "b = -1.9 # @param {type:\"slider\", min:-5, max:5, step:0.01}\n", "w = -1.21 # @param {type:\"slider\", min:-5, max:5, step:0.01}\n", "print(\"Plotting line\", w, \"* x +\", b)\n", "parameters = [b, w]\n", "parameters_list.append(parameters)\n", "plot_basic_data(\n", " x_data_list_outlier,\n", " y_data_list_outlier,\n", " parameters_list,\n", " title=\"Observed data and my first predictions\",\n", " ylim=[-5, 1],\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "jnWK16WVj8ah" }, "outputs": [], "source": [ "manual_parameters_list = jnp.array(\n", " parameters_list\n", ") # turn your chosen parameter values into a jnp array" ] }, { "cell_type": "markdown", "metadata": { "id": "3t_g88TNN-Ok" }, "source": [ "### Now with Machine learning:\n", "\n", "Now that we have manually solved the problem, we are going to find some regression functions with machine learning." ] }, { "cell_type": "markdown", "metadata": { "id": "9qxh20jncNDf" }, "source": [ "#### Introducing matrix notation! \n", "\n", "For convinience we are going to work with matrix notation.\n", "\n", "\n", "Our targets can be written as a vector $\\underline{y} = [y_0, y_1, ...]^T$ and the same for our inputs $\\underline{x} = [x_0, x_1, ...]^T$. These vectors are of length matching our number of observations $N=6$.\n", "\n", "\n", "The bias (or offset) $\\color{blue}{b}$ in our regression function $f(x, \\color{blue}{w, b}) = \\color{blue}{b + w} x $ can be written as a product of an additional weight $\\color{blue}{b}$ with an input that takes constant value of $1$. That is $\\color{blue}{b + w} x = \\color{blue}{b} 1 + \\color{blue}{w}x$. Now we have a weight vector $\\color{blue}{\\underline{w} = [b, w] }$ of dimension $D=2$ and a feature vector $[1, x]$. We can write our vectorised function as $f(x, \\color{blue}{\\underline{w}}) = [1, x]^T \\color{blue}{\\underline{w}}$. \n", "\n", "We refer to the mapping $x \\to [1, x]$ as a mapping into the *affine basis*. \n", "\n", "When we apply this mapping, we can stack all of our observations into a matrix $X = [[1, x_0], [1, x_1], [1, x_2], ...] \\in \\mathcal{R}^{N \\times 2}$.\n", "\n", "\n", "\n", "Our full dataset is now modelled as $\\underline{y} = X \\cdot \\color{blue}{\\underline{w}} + \\color{red}{\\underline{\\epsilon}}$\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "52V8T_cOOZXK" }, "source": [ "**Coding task:**`Base`\n", "\n", "Implement the mapping onto the affine basis \n", "\n", "* Hint: useful methods are `jnp.concatenate` and `jnp.ones`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "P0NmMLl3c0ui" }, "outputs": [], "source": [ "def affine_basis(x):\n", " \"\"\"\n", " Maps a vector of inputs [x_0, x_1, ...]\n", " onto the affine basis [[x_0, 1], [x_1, 1], [x_2, 1], ...]\n", "\n", " Args:\n", " x: jnp array of shape (N,) or (N,1)\n", " Returns:\n", " X: jnp array of shape (N,2)\n", " \"\"\"\n", " if x.ndim == 1:\n", " x = x.copy()[:, None]\n", "\n", " # Your code goes\n", " return X" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "XQmKx0KUnge_" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "\n", "\n", "X = affine_basis(x_data_list_outlier)\n", "\n", "X_correct = jnp.stack([jnp.ones(len(x_data_list_outlier)), x_data_list_outlier], axis=1)\n", "\n", "assert jnp.allclose(X_correct, X), \"X is not calculated correctly\"\n", "\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "gLQnawymm3sd" }, "outputs": [], "source": [ "# @title Answer (Try not to peek until you've given it a good try!')\n", "\n", "\n", "def affine_basis(x):\n", " \"\"\"\n", " Maps a vector of inputs [x_0, x_1, ...]\n", " onto the affine basis [[1, x_0], [1, x_1], [1, x_2], ...]\n", "\n", " Args:\n", " x: jnp array of shape (N,) or (N,1)\n", " Returns:\n", " X: jnp array of shape (N,2)\n", " \"\"\"\n", " if x.ndim == 1:\n", " x = x.copy()[:, None]\n", "\n", " pad_ones = jnp.ones(\n", " (len(x), 1)\n", " ) # the bias can be interpreted as a weight that multiplies an input with a constant value of 1\n", " X = jnp.concatenate([pad_ones, x], axis=1)\n", " return X" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "9q2I2yrSl9t6" }, "outputs": [], "source": [ "# @title Now we implement the linear function\n", "# @markdown it will take a single point as input and then we will vmap it to deal with batches of inputs\n", "\n", "\n", "def linear(x, w):\n", " return x @ w\n", "\n", "\n", "vmap_linear = jit(vmap(linear, in_axes=(0, None)))" ] }, { "cell_type": "markdown", "metadata": { "id": "QBAJvQqDlWNS" }, "source": [ "**Group task**: `Base` - Discuss with a neighbour:\n", "\n", "* What does the @ operator do? \n", " * Solution: it is the same as [np.dot](https://numpy.org/doc/stable/reference/generated/numpy.dot.html)\n", "\n", "* What would have been an alternative way to implement the linear function without using @?\n", "\n", "* What if we want to evaluate the function for multiple weight settings $\\color{blue}{\\underline{w}}$, would we need to change our code?\n", "\n", "If you are unsure about any of these, get a tutor involved in your discussion!" ] }, { "cell_type": "markdown", "metadata": { "id": "5VasjmzccNH6" }, "source": [ "#### Lets find the line that minimises the loss\n", "\n", "\n", "**Code task:** `Base`\n", "\n", "Implement the squared error (SE) loss from the introduction to Jax prac:\n", "
\n", "$\\frac{1}{2}||\\underline{y} - X\\cdot \\color{blue}{\\underline{w}}||_{2}^2$\n", "
\n", "\n", "* Hint: $||\\underline{y} - X\\cdot \\color{blue}{\\underline{w}}||_{2}^2 = \\sum_{n=1}^{N} (y_n - x_{n} \\cdot \\color{blue}{\\underline{w}})^2$ is just the squared [euclidean norm](https://en.wikipedia.org/wiki/Norm_(mathematics)). The output is a single number." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "cYjm5aFuRbz-" }, "outputs": [], "source": [ "def linear_regression_loss(X, y, vmap_model, w):\n", " \"\"\"\n", " Computes SE loss\n", " \n", " Args:\n", " X: jnp array of shape (N,2)\n", " y: jnp array of shape (N,)\n", " w: jnp array of shape (w,)\n", " vmap_model: function that maps (X, w) onto y\n", " Returns:\n", " squared_error: scalar\n", " \"\"\"\n", " predictions = vmap_model(X, w)\n", " squared_error = # Your code goes here\n", " return squared_error" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "sYiTU8mDsOCs" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "\n", "\n", "mse = linear_regression_loss(\n", " affine_basis(x_data_list_outlier),\n", " y_data_list_outlier,\n", " vmap_linear,\n", " jnp.array([2, 2]),\n", ")\n", "\n", "mse_correct = (\n", " 0.5\n", " * (\n", " (\n", " vmap_linear(affine_basis(x_data_list_outlier), jnp.array([2, 2]))\n", " - y_data_list_outlier\n", " )\n", " ** 2\n", " ).sum()\n", ")\n", "\n", "assert jnp.allclose(mse_correct, mse), \"X is not calculated correctly\"\n", "\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "xS719wz6sOFU" }, "outputs": [], "source": [ "# @title Answer (Try not to peek until you've given it a good try!')\n", "\n", "\n", "def linear_regression_loss(X, y, vmap_model, w):\n", " \"\"\"\n", " Computes MSE loss\n", "\n", " Args:\n", " X: jnp array of shape (N,2)\n", " y: jnp array of shape (N,)\n", " w: jnp array of shape (w,)\n", " vmap_model: function that maps (X, w) onto y\n", " Returns:\n", " squared_error: scalar\n", " \"\"\"\n", " predictions = vmap_model(X, w)\n", " squared_error = 0.5 * ((y - predictions) ** 2).sum()\n", " return squared_error" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "JU3TM6P8rVvT" }, "outputs": [], "source": [ "# @title Lets optimise our parameters with the squared error loss\n", "# @markdown Note that in this prac we will be working with objectives which are the inverse of the loss. That means that it is good if the training curve goes up!\n", "\n", "\n", "def gen_objective(X, y, vmap_model):\n", " def objective(params, key):\n", " return -linear_regression_loss(X, y, vmap_model, params)\n", "\n", " return objective\n", "\n", "\n", "objective = gen_objective(\n", " affine_basis(x_data_list_outlier), y_data_list_outlier, vmap_linear\n", ")\n", "\n", "optimised_params = optimise(\n", " objective,\n", " params=jnp.array([0.0, 0.0]),\n", " plotting_func=None,\n", " LR=1e-2,\n", " MAX_STEPS=1000,\n", " LOG_EVERY=100,\n", ")\n", "\n", "print(\"Your optimised parameter values are\", optimised_params)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "SW8kWeyM25dz" }, "outputs": [], "source": [ "# @title Lets look at how your manually chosen regression functions compare with the optimised one\n", "\n", "\n", "plt.figure(dpi=100)\n", "\n", "xlim = [jnp.min(x_data_list_outlier) - 1, jnp.max(x_data_list_outlier) + 1]\n", "ylim = [jnp.min(y_data_list_outlier) - 1, jnp.max(y_data_list_outlier) + 1]\n", "\n", "x_test = jnp.linspace(xlim[0], xlim[1], 201)\n", "X_test = affine_basis(x_test)\n", "\n", "ax = plt.gca()\n", "\n", "ax.plot(\n", " x_test,\n", " vmap_linear(X_test, manual_parameters_list.T),\n", " c=\"red\",\n", " lw=0.5,\n", " label=\"manual choice\",\n", ")\n", "ax.plot(\n", " x_test, vmap_linear(X_test, optimised_params), c=\"purple\", lw=2, label=\"optimised\"\n", ")\n", "\n", "ax.plot(x_data_list_outlier, y_data_list_outlier, \"ob\")\n", "ax.set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=xlim, ylim=ylim)\n", "ax.grid(alpha=0.3)\n", "ax.set_title(\"Regression function comparison\")\n", "ax.legend(loc=\"lower left\")" ] }, { "cell_type": "markdown", "metadata": { "id": "6_prh3fO3B5w" }, "source": [ "**Group task**: `Base` - Discuss with a neighbour and / or tutor:\n", "\n", "* Do your manual choices look similar to those of your neighbour? \n", "\n", "* Are you more confident about the functions you chose or the one that the optimiser chose?\n", "\n", "* What went wrong with the optimiser, if anything? Hint: can you spot any previously hidden outliers?\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "-79VgSrB2u2J" }, "source": [ "#### How can we make our parameters robust to overfitting to outliers? You already know the solution: adding regularisation!\n", "\n", "The outlier above pushes our regression line to have a larger negative slope than we would like. We can bias our slope parameter $\\color{blue}{w}$ away from solutions that have a large (possitive or negative) slope by penalising $||\\color{blue}{w}||_{2}^2$. This will prevent the outlier from influencing our regression line too much. \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "5Wy4eIOrrV0g" }, "outputs": [], "source": [ "# @markdown Our *regularised* loss is $\\frac{1}{2}||\\underline{y} - X\\cdot \\color{blue}{\\underline{w}}||_{2}^2 + \\frac{\\alpha}{2}||\\color{blue}{\\underline{w}}||_{2}^{2}$\n", "\n", "# @markdown where $\\alpha$ is the regularisation strength.\n", "\n", "\n", "def regularised_linear_regression_loss(X, y, vmap_model, w, alpha):\n", " predictions = vmap_model(X, w)\n", " data_fit = 0.5 * ((y - predictions) ** 2).sum()\n", " regulariser = 0.5 * alpha * (w**2).sum()\n", " return data_fit + regulariser" ] }, { "cell_type": "markdown", "metadata": { "id": "JbZ6-3aM5Ahr" }, "source": [ "**Math Task:** `Intermediate` (Optional - skip if you are not familiar with matrix calculus)\n", "\n", "The regularised least squares solution, i.e. the minimum of $\\frac{1}{2}||\\underline{y} - X\\cdot \\color{blue}{\\underline{w}}||_{2}^2 + \\frac{\\alpha}{2}||\\color{blue}{\\underline{w}}||_{2}^{2}$ can be calculated in closed form with pen and paper.\n", "\n", "Try to derive it!\n", "\n", "**Hint1:** take derivate with respect to $\\color{blue}{\\underline{w}}$ and set it to 0 to find the stationary point, i.e. the minimum. \n", "\n", "
\n", "$\\frac{\\partial}{\\partial \\color{blue}{\\underline{w}}} \\frac{1}{2}||\\underline{y} - X\\cdot \\color{blue}{\\underline{w}}||_{2}^2 + \\frac{\\alpha}{2}||\\color{blue}{\\underline{w}}||_{2}^{2} =0\n", "$\n", "
\n", "\n", "**Hint2:** the derivative is:\n", "\n", "
\n", "$\\frac{\\partial}{\\partial \\color{blue}{\\underline{w}}} \\frac{1}{2}||\\underline{y} - X\\cdot \\color{blue}{\\underline{w}}||_{2}^2 + \\frac{\\alpha}{2}||\\color{blue}{\\underline{w}}||_{2}^{2} = X^T (\\underline{y} - X\\cdot \\color{blue}{\\underline{w}}) + \\alpha \\color{blue}{\\underline{w}}\n", "$\n", "
\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "P80NpVB9546H" }, "outputs": [], "source": [ "# @markdown What is the solution? (Options given already in code)\n", "\n", "# @markdown Hint: `inv(A)` computes A^{-1} and `solve(A,B)` computes A^{-1} B\n", "\n", "selection = \"X.T @ X + alpha * jnp.eye(w.shape[0])\" # @param ['X.T @ X + alpha * jnp.eye(w.shape[0])', \"solve(X.T @ X + alpha * jnp.eye(X.shape[1]), X.T @ y)\", \"inv(X.T @ X) @ (\\alpha + X.T @ y)\"]\n", "print(f\"You selected: {selection}\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "nS_x2x0Y8Rgs" }, "outputs": [], "source": [ "# @title Coding task (Optional): choose one of the 3 options from above\n", "\n", "\n", "def regularised_least_squares_solution(X, y, alpha):\n", " return # paste solution here" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "33Jh6D0-4xmP" }, "outputs": [], "source": [ "# @title Lets optimise the parameters with the regulariser and lets look at how the manually chosen regression functions compare with the regularised and unregularised ones `Base` {run: \"auto\"}\n", "\n", "# @markdown **This does not require solving the optional task above**.\n", "\n", "# @markdown Lets start with $\\alpha=5$.\n", "\n", "# @markdown Play around with different $\\alpha$ values to find the one that gives solutions that \"feel\" the best\n", "\n", "alpha = 3.58 # @param {type:\"slider\", min:0, max:20, step:0.01}\n", "\n", "\n", "def gen_objective(X, y, vmap_model, alpha):\n", " def objective(params, key):\n", " return -regularised_linear_regression_loss(X, y, vmap_model, params, alpha)\n", "\n", " return objective\n", "\n", "\n", "objective = gen_objective(\n", " affine_basis(x_data_list_outlier), y_data_list_outlier, vmap_linear, alpha\n", ")\n", "\n", "optimised_regularised_params = optimise(\n", " objective,\n", " params=jnp.array([0.0, 0.0]),\n", " plotting_func=None,\n", " LR=1e-2,\n", " MAX_STEPS=500,\n", " LOG_EVERY=100,\n", ")\n", "\n", "\n", "plt.figure(dpi=100)\n", "\n", "xlim = [jnp.min(x_data_list_outlier) - 1, jnp.max(x_data_list_outlier) + 1]\n", "ylim = [jnp.min(y_data_list_outlier) - 1, jnp.max(y_data_list_outlier) + 1]\n", "\n", "x_test = jnp.linspace(xlim[0], xlim[1], 201)\n", "X_test = affine_basis(x_test)\n", "\n", "ax = plt.gca()\n", "\n", "ax.plot(x_test, vmap_linear(X_test, manual_parameters_list.T), c=\"red\", lw=0.5)\n", "ax.plot(\n", " x_test,\n", " vmap_linear(X_test, optimised_params),\n", " c=\"purple\",\n", " lw=2,\n", " label=\"unregularised ptimised\",\n", ")\n", "ax.plot(\n", " x_test,\n", " vmap_linear(X_test, optimised_regularised_params),\n", " c=\"cyan\",\n", " lw=2,\n", " label=\"regularised optimised\",\n", ")\n", "\n", "ax.plot(x_data_list_outlier, y_data_list_outlier, \"ob\")\n", "ax.set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=xlim, ylim=ylim)\n", "ax.grid(alpha=0.3)\n", "ax.legend(loc=\"lower left\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "xz0V4ggxUjrp" }, "outputs": [], "source": [ "# @title (Optional) If you coded the exact solution, lets compare it with the output of the optimiser\n", "# @markdown Note that both parameter vectors will not be exactly the same due to our optimisation not having fully converged.\n", "\n", "# Hint: the correct solution to the above question was (b)\n", "exact_regularised_params = regularised_least_squares_solution(\n", " affine_basis(x_data_list_outlier), y_data_list_outlier, alpha\n", ")\n", "\n", "print(\"Your regularised optimised parameter values are\", optimised_regularised_params)\n", "print(\"Your regularised exact parameter values are\", exact_regularised_params)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "FnOovLgA7Lgb" }, "outputs": [], "source": [ "# @title Run me to reveal answer to optional math task above, for reference.\n", "from IPython.display import display, Markdown, Latex\n", "\n", "display((\"The derivation of the solution to the regularised least squares minima is:\"))\n", "display(\n", " Latex(\n", " \"$X^T (\\\\underline{y} - X\\cdot {\\\\underline{w}} ) + \\\\alpha {\\\\underline{w}} = 0$\"\n", " )\n", ")\n", "display(\n", " Latex(\n", " \"$X^T \\\\underline{y} - X^T X {\\\\underline{w}} + \\\\alpha {\\\\underline{w}} = 0$\"\n", " )\n", ")\n", "display(Latex(\"$X^T \\\\underline{y} = (X^T X w + \\\\alpha I){\\\\underline{w}} = 0$\"))\n", "display(Latex(\"$\\\\underline{w} = (X^T X w + \\\\alpha I)^{-1} X^T \\\\underline{y}$\"))" ] }, { "cell_type": "markdown", "metadata": { "id": "EnkYeSCf_VFQ" }, "source": [ "### Lets investigate the loss landscape: `Base` \n", "\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "vkHnvwgtFbYU" }, "outputs": [], "source": [ "# @title { run: \"auto\" }\n", "# @markdown Lets plot the loss for a large grid of $b$ and $w$ values to see which ones would work well\n", "\n", "# @markdown Try different values of alpha to see how they affect the loss landscape\n", "\n", "\n", "alpha = 4.18 # @param {type:\"slider\", min:0, max:20, step:0.01}\n", "\n", "\n", "def generate_loss_fun():\n", " def loss_fun(w):\n", " return regularised_linear_regression_loss(\n", " X=affine_basis(x_data_list_outlier),\n", " y=y_data_list_outlier,\n", " w=w,\n", " vmap_model=vmap_linear,\n", " alpha=alpha,\n", " )\n", "\n", " return loss_fun\n", "\n", "\n", "loss_fun = generate_loss_fun()\n", "\n", "x0_grid, x1_grid, loss_grid = generate_loss_grid(\n", " loss_fun=loss_fun, grid_size=200, lim0=[-8, 8], lim1=[-8, 8]\n", ")\n", "\n", "\n", "plt.figure(dpi=120)\n", "plt.pcolormesh(\n", " x0_grid, x1_grid, -loss_grid, vmin=-loss_grid.min(), vmax=-70, cmap=\"viridis\"\n", ") #\n", "plt.ylabel(\"w\")\n", "plt.xlabel(\"b\")\n", "plt.grid(alpha=0.3)\n", "cbar = plt.colorbar()\n", "cbar.set_label(\"Regularised Loss\", rotation=270, labelpad=20)\n", "\n", "plt.scatter(\n", " manual_parameters_list[:, 0],\n", " manual_parameters_list[:, 1],\n", " 10,\n", " color=\"red\",\n", " label=\"manually chosen parameters\",\n", ")\n", "plt.scatter(\n", " optimised_regularised_params[0],\n", " optimised_regularised_params[1],\n", " 10,\n", " color=\"cyan\",\n", " label=\"regularised optimisation\",\n", ")\n", "plt.scatter(\n", " optimised_params[0],\n", " optimised_params[1],\n", " 10,\n", " color=\"purple\",\n", " label=\"unregularised optimisation\",\n", ")\n", "plt.title(\"Value of loss function for different parameter values\")\n", "plt.legend()" ] }, { "cell_type": "markdown", "metadata": { "id": "GFg5FS8Mmpi6" }, "source": [ "* The loss landscape accomodates multiple solutions! It turns out that all of the parameter combinations in the yellow region of the loss surface have low loss, they could have worked quite well! \n", "\n", "\n", "* For larger values of $\\alpha$, the yellow region shrinks and moves towards the origin. This means that out of all the lines that fit the data, we are only keeping the ones that have a smaller parameter norm $||\\color{blue}{\\underline{w}}||^2_2$.\n", "\n", "**Question `Base`:** Given that we have only seen $N=6$ training points, how confident should we be that the line that minimises the loss function above is the \"right\" line?\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "yyXD3p5-97T7" }, "source": [ "### **Takeaways**: trust your instincts!\n", "\n", "1. Our intuition about what is a \"good\" solution alligns more with the solutions chosen by the regularised objective. \n", "\n", "2. Using our intuition, we were able to come up with multiple plausible options for lines that fit the data. Doesn't it feel kind of wrong that the optimiser only gives us 1 solution?" ] }, { "cell_type": "markdown", "metadata": { "id": "dIqcTxinEt7a" }, "source": [ "# Section 1 - From regression to Bayesian linear regression \n", "\n", "\n", "In this section, we formalise the intuition from the previous section. We are going to learn about Bayesian inference. \n", "\n", "Specifically, we are going to introduce the concept of probability distribution and show how to update our beliefs using Bayes rule. We will compare Bayesian learning with traditional loss-minimisation learning. Finally, we will look at how to make predictions within the Bayesian framework.\n", "\n", "Hopefully, by the end of the section, you will be convinced that when you were manually choosing regression parameters at the beginning of the practical, your brain was performing Bayesian inference!\n", "\n", "If you are familiar with probability distributions and Bayes rule, try to breeze through this section and do the optional parts at the end of the section. If it is your first time dealing with these concepts, spend more time on the core section. Aim to spend 45 minutes on the section." ] }, { "cell_type": "markdown", "metadata": { "id": "-ZUp8i37dFbU" }, "source": [ "## Bayesian linear regression fundamentals\n", "\n", "\n", "\n", "In the Bayesian framework, we pick a model which we believe could have generated the data. We already have such a model:\n", "\n", "
\n", "$\\underline{y} = X \\cdot \\color{blue}{\\underline{w}} + \\color{red}{\\underline{\\epsilon}}$,\n", "
\n", "\n", "Although the exact value of $\\color{blue}{\\underline{w}}$ is unknown a priori (before observing the data), we do have some prior knowledge we can incorporate into our problem. As we saw in the previous section, we might not want to choose a very large slope for our regression line, since this often happens when we overfit to some outlier. \n", "\n", "Mathematically, we express the fact that we do not know what value $\\color{blue}{\\underline{w}}$ should have, but we think it should be low norm, through the choice of a prior probability distribution $p(\\color{blue}{\\underline{w}})$ that places more probability mass near 0.\n", "\n", "The most common choice to satisfy this condition, and easiest to work with, is the 0 mean Gaussian:\n", "\n", "
\n", "$\\color{blue}{\\underline{w}} \\sim \\mathcal{N}(0, \\alpha^{-1} I)$ where $I$ is the indentity matrix.\n", "
\n", "\n", "
\n", "\n", "
\n", "\n", "The precision parameter $\\alpha$ (inverse of variance) expresses how confident we are that the parameters should be close to 0. If we set $\\alpha=0.001$ we are saying that we have a slight preference for a small regression slope but dont have a strong opinion so we are also happy with large slope solutions. If we set $\\alpha=100$ we are saying that we are very confident that we should only admit very low slope solutions.\n", "\n", "Even if we knew the exact value of $\\color{blue}{\\underline{w}}$, we would still be unable to retrieve $\\underline{y}$ given $X$ and $\\color{blue}{\\underline{w}}$. This is because, in general, our observations are corrupted by the residuals $\\color{red}{\\underline{\\epsilon}}$. \n", "\n", "$\\color{red}{\\underline{\\epsilon}}$ represents some noise that can not be predicted from $X$ alone, e.g. thermal noise in the measurement of a voltage value or background radiation in radio-astronomy. We usually assume this noise is the cause of outliers, such as the one in our dataset. Since we do not know what value $\\color{red}{\\underline{\\epsilon}}$ takes a priori, we also model $\\color{red}{\\underline{\\epsilon}}$ with a probability distribution $p(\\color{red}{\\underline{\\epsilon}})$.\n", "\n", "\n", "
Lets keep it simple and choose the Gaussian\n", "$ \\,\\,\\,\\color{red}{\\underline{\\epsilon}} \\sim \\mathcal{N}(0, I)$\n", "
\n", "\n", "\n", "We are ready to write our full probabilistic model. Given inputs and weights, our targets follow the distribution\n", "\n", "$p(\\underline{y} | X, \\color{blue}{\\underline{w}}) = \\mathcal{N}(\\underline{y}; X\\cdot \\color{blue}{\\underline{w}}, I)$ \n", "\n", "Nottice that the mean is our prediction $X\\cdot \\color{blue}{\\underline{w}}$ and the covariance is just the covariance of our residuals $I$.\n", "\n", "Our weights follow the distribution\n", "\n", "$p(\\color{blue}{\\underline{w}}) = \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I)$\n", "\n", "\n", " " ] }, { "cell_type": "markdown", "metadata": { "id": "G7qzoHuTFQWN" }, "source": [ "### (Reminder): Probability density functions and likelihood functions\n", "\n", "In this section, we are going to be working with probability distributions over continous random variables. Consider the variable $a \\in \\mathbb{R}$ distributed $p(a) = \\mathcal{N}(a; 0, I)$. Since there are infinite possible values $a$ can take, we assing an infinitesimally small probability to each one. However, not all values of $a$ are equally probable. Since the mean of $\\mathcal{N}(a; 0, I)$ is 0, this is the most probable value. We quantify the relative probability of the different values $a$ can take with the **probability density function $p(a)$**. In this section, we will work with these functions.\n", "\n", "Unlike probabilities which are restricted to the interval [0, 1], probability densities can take values in [0, $\\infty$). \n", "\n", "\\\n", "We can compute the probability of $a$ taking a value in the range $[s,s']$ by integrating the density function in this interval $p(a \\in [s,s']) = \\int_{s}^{s'} p(a) da$. Since the probability of all possible events must sum to 1, we have that $\\int_{-\\infty}^{\\infty} p(a) da = 1$.\n", "\n", "When we write $p(\\color{blue}{\\underline{w}}) = \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I)$ we are saying that $\\color{blue}{\\underline{w}}$ has a Gaussian density with mean $0$ and precision $\\alpha$. Given a particular value of $\\color{blue}{\\underline{w}}$, we can evalute its density by evaluating the density function\n", "\n", "$p(\\color{blue}{\\underline{w}}) = \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I) = \\frac{1}{ (2 \\pi \\alpha)^{D/2} } \\exp(\\frac{-\\alpha \\color{blue}{\\underline{w}}^T \\color{blue}{\\underline{w}}}{2})$.\n", "\n", "where $D$ is the size of $\\color{blue}{\\underline{w}}$, i.e. 2. \n", "\n", "\\\n", "Nottice that the terms outside the exponential do not contain $\\color{blue}{\\underline{w}}$. These are known as constants. The term inside the exponential $\\frac{-\\alpha \\color{blue}{\\underline{w}}^T \\color{blue}{\\underline{w}}}{2}$ becomes larger the smaller $\\color{blue}{\\underline{w}}$ becomes. Its maximum is attained when $\\color{blue}{\\underline{w}} = 0$.\n", "\n", "Assuming we know the value of the weights $\\color{blue}{\\underline{w}}, our$ targets $\\underline{y}$ follow a probability distribution $p(\\underline{y} | X, \\color{blue}{\\underline{w}})$. The vertical line \"|\" denotes conditioning. $p(\\underline{y} | X, \\color{blue}{\\underline{w}})$ means: \"the probability density for $\\underline{y}$ conditional on choosing a specific $X$ and $\\color{blue}{\\underline{w}}$\". When we expand this density function, we get\n", "\n", "\\\n", "$p(\\underline{y} | X, \\color{blue}{\\underline{w}}) = \\mathcal{N}(\\underline{y}; X\\cdot \\color{blue}{\\underline{w}}, I) = \\frac{1}{ (2 \\pi)^{N/2} } \\exp(\\frac{- (y - X \\cdot \\color{blue}{\\underline{w}})^T (y - X \\cdot \\color{blue}{\\underline{w}})}{2})$\n", "\n", "where $N$ is the number of observations, i.e. 6.\n", "\n", "The distribution $p(\\underline{y} | X, \\color{blue}{\\underline{w}})$ is special\n", "because it is not a distrbution over the variable we care about $\\color{blue}{\\underline{w}}$. Instead $\\color{blue}{\\underline{w}}$ is a parameter of the distribution, influencing the value of its mean. However, we can still view $p(\\underline{y} | X, \\color{blue}{\\underline{w}})$ as a function of $\\color{blue}{\\underline{w}}$. When viewed in this light, probability densities are known as **likelihood functions**. \n", "\n", "Likelihood functions can be used for learning. Specifically, we can choose $\\color{blue}{\\underline{w}}$ such that the probability of our targets conditional on $\\color{blue}{\\underline{w}}$, i.e. $p(\\underline{y} | X, \\color{blue}{\\underline{w}})$ is maximised. This is known as **maximum likelihood criteria**. \n", "\n", "`Fun fact`: A likelihood function does not need to be normalised. As a result, any possitive function can be viewed as a likelihood function. The consequence of this is that any machine learning algorithm that minimises a loss or maximises an objective can be seen as performing maximum likelihood learning.\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "siNhkwB6pbNE" }, "source": [ "## Bayesian learning of our parameters $\\color{blue}{\\underline{w}}$\n", "\n", "\n", "Learning means identifying the parameter settings that \n", "1. Are compatible with our prior assumptions, i.e. have low norm. -- this is captured by $p(\\color{blue}{\\underline{w}})$\n", "**and**\n", "2. Fit the data well. -- this is quantified by the likelihood function $p(\\underline{y} | X, \\color{blue}{\\underline{w}})$\n", "\n", "We can score parameter settings by how well they satisfy both constraints simultaneously by considering the product of the prior and likelihood\n", "\n", "
\n", "$p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}})$.\n", "
\n", "\n", "Unfortunately, when you multiply two probability distributions, you are not guaranteed to get something that integrates to 1 (a key requirement for something to be a probability distribution). This is why we need to renormalise by dividing the product above by $p(\\underline{y} | X) = \\int p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}}) d \\color{blue}{\\underline{w}}$. Putting it all together, we have \n", "\n", "\n", "$$\\frac{p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}})}{p(\\underline{y} | X)}$$.\n", "\n", "\n", " This expression is known as **Bayes Rule** and it yields our posterior distribution over parameters $p(\\color{blue}{\\underline{w}} | \\underline{y}, X)$. The posterior represents how well each parameter setting agrees with our prior and data. If we compute this distrbution, we will know what are good values of $\\color{blue}{\\underline{w}}$ with which we can make predictions.\n", "\n", "The procedure of computing the posterior is also known as **inference**.\n", "\n", "`Fun fact`: in large scale machine learning, \"inference\" is used to mean \"making predictions\". This is a miss-use of the word that stuck!" ] }, { "cell_type": "markdown", "metadata": { "id": "brWSkmbarw0j" }, "source": [ "**Math Task:** `Intermediate` (Optional)\n", "\n", "Compute the posterior distribution $p(\\color{blue}{\\underline{w}} | \\underline{y}, X) = \\frac{p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}})}{p(\\underline{y} | X)}$ for our linear regression model\n", "\n", "$p(\\underline{y} | X, \\color{blue}{\\underline{w}}) = \\mathcal{N}(\\underline{y}; X\\cdot \\color{blue}{\\underline{w}}, I) = \\frac{1}{ (2 \\pi)^{N/2} } \\exp(\\frac{- (y - X \\cdot \\color{blue}{\\underline{w}})^T (y - X \\cdot \\color{blue}{\\underline{w}})}{2})$ \n", "\n", "$p(\\color{blue}{\\underline{w}}) = \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I) = \\frac{1}{ (2 \\pi \\alpha)^{D/2} } \\exp(\\frac{-\\alpha \\color{blue}{\\underline{w}}^T \\color{blue}{\\underline{w}}}{2})$\n", "\n", "\\\n", "* Hint 1: The product of Gaussian distributions gives us a Gaussian scaled by a constant $c$. \n", "
\n", "$p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}}) = \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I) \\mathcal{N}(\\underline{y}; X\\cdot \\color{blue}{\\underline{w}}, I) = c \\cdot \\mathcal{N}(\\color{blue}{\\underline{w}}; \\mu, \\Sigma)$\n", "
\n", "\n", "$c$ is $p(\\underline{y} | X)^{-1}$ and is independent of $\\color{blue}{\\underline{w}}$ so we dont care about it. Your job is to find $\\mu$ and $\\Sigma$.\n", "\n", "\\\n", "* Hint 2: Nottice that $\\color{blue}{\\underline{w}}$ only appears in the exponential terms of our distributions. This means that we can ignore the non-exponential terms because these will only affect $c$. Thus you need to only consider the expression\n", "\n", "
\n", "$- (y - X \\cdot \\color{blue}{\\underline{w}})^T (y - X \\cdot \\color{blue}{\\underline{w}}) -\\alpha \\color{blue}{\\underline{w}}^T \\color{blue}{\\underline{w}} = - (\\color{blue}{\\underline{w}} - \\mu)^T \\Sigma^{-1} (\\color{blue}{\\underline{w}} - \\mu)$\n", "
\n", "\n", "Try to solve for $\\Sigma$ first. If you get stuck, ask a tutor!\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "FeHnJXGFuvOM" }, "outputs": [], "source": [ "# @title Answer to math task (Try not to run until you've given it a good try!')\n", "from IPython.display import display, Markdown, Latex\n", "\n", "display(\"Solution Derivation\")\n", "display(Latex(\"1. Keep only quadratic terms to solve for $\\Sigma$\"))\n", "display(\n", " Latex(\n", " \"$ - \\\\underline{w}^T X^T X \\\\underline{w} - \\\\alpha \\\\underline{w}^T \\\\underline{w} = - \\\\underline{w}^T \\Sigma^{-1} \\\\underline{w} $\"\n", " )\n", ")\n", "display(\"Thus\")\n", "display(Latex(\"$\\\\Sigma = (X^T X + \\\\alpha I)^{-1}$\"))\n", "display(Latex(\"2. Keep only first order terms to solve for $\\mu$\"))\n", "display(Latex(\"$2 \\\\underline{w} X^T y = 2 \\\\underline{w} \\Sigma^{-1} \\mu$\"))\n", "display(Latex(\"$\\mu = \\Sigma X^T y \"))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "38mdDCSOFfpn" }, "outputs": [], "source": [ "#@title **coding task** `base` : implement a method that computes the posterior distribution for linear regression\n", "\n", "#@markdown Even if you did not solve the math task, the solution is\n", "#@markdown $\\Sigma = (X^T X + \\alpha I)^{-1} \\quad \\mu = \\Sigma X^T y$ \n", "\n", "def BLR_posterior(X, y, alpha):\n", " \"\"\"\n", " Computes linear regression posterior parameters\n", " \n", " Args:\n", " X: jnp array of shape (N,D)\n", " y: jnp array of shape (N,)\n", " alpha: scalar - regulasisation strength\n", " Returns:\n", " mu: jnp array of shape (D,)\n", " covariance: jnp array of shape (D,D)\n", " \"\"\"\n", " D = X.shape[1] # D=2 parameters, one weight and 1 bias\n", " covariance = # Your code goes here\n", " mu = # Your code goes here\n", " return mu, covariance" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "fzW-EHxhxR9m" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "\n", "alpha = 5\n", "mu, covariance = BLR_posterior(\n", " affine_basis(x_data_list_outlier), y_data_list_outlier, alpha\n", ")\n", "\n", "mu_correct = jnp.array([-1.4181819, -1.101769])\n", "covariance_correct = jnp.array(\n", " [[9.090909e-02, 9.852008e-10], [9.852008e-10, 9.090909e-02]]\n", ")\n", "\n", "assert jnp.allclose(mu_correct, mu), \"mu is not calculated correctly\"\n", "assert jnp.allclose(\n", " covariance_correct, covariance\n", "), \"Covariance is not calculated correctly\"\n", "\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "Jz7ujBdKxSAO" }, "outputs": [], "source": [ "# @title Answer (Try not to peek until you've given it a good try!')\n", "\n", "\n", "def BLR_posterior(X, y, alpha):\n", " \"\"\"\n", " Computes linear regression posterior parameters\n", "\n", " Args:\n", " X: jnp array of shape (N,D)\n", " y: jnp array of shape (N,)\n", " alpha: scalar - regulasisation strength\n", " Returns:\n", " mu: jnp array of shape (D,)\n", " covariance: jnp array of shape (D,D)\n", " \"\"\"\n", " D = X.shape[1] # D=2 parameters, one weight and 1 bias\n", " precision = X.T @ X + alpha * jnp.eye(D)\n", " covariance = jnp.linalg.inv(precision)\n", " mu = solve(precision, (X.T @ y))\n", " return mu, covariance" ] }, { "cell_type": "markdown", "metadata": { "id": "UOaLJpKZBU2V" }, "source": [ "### The posterior is just the loss, but normalised!\n", "\n", "Recall that the posterior is computed as $\\frac{p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}})}{p(\\underline{y} | X)}$ and the denominator is just a normalising constant independent of $\\color{blue}{\\underline{w}}$.\n", "\n", "Consider the log of the unnormalised posterior\n", "\n", "
\n", "$\\log \\left( p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}}) \\right) = \\log \\left( \\mathcal{N}(\\underline{y}; X\\cdot \\color{blue}{\\underline{w}}, I) \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I)\\right)$\n", "\n", "\\\n", "$= \\frac{- (y - X \\cdot \\color{blue}{\\underline{w}})^T (y - X \\cdot \\color{blue}{\\underline{w}})}{2} + \\frac{-\\alpha \\color{blue}{\\underline{w}}^T \\color{blue}{\\underline{w}}}{2} + C$\n", "\n", "\\\n", "$= \\frac{-1}{2}||\\underline{y} - X\\cdot \\color{blue}{\\underline{w}}||_{2}^2 + \\frac{-\\alpha}{2}||\\color{blue}{\\underline{w}}||_{2}^{2} + C$\n", "\n", "
\n", "\n", "where $C$ is a constant independent of $\\color{blue}{\\underline{w}}$. \n", "\n", "**We recover our regularised loss function!!** This can help us build intuition about the posterior density of $\\color{blue}{\\underline{w}}$: it is a function that assigns to each $\\color{blue}{\\underline{w}}$ a density which is larger the larger density that $\\color{blue}{\\underline{w}}$ has under our prior and the better that $\\color{blue}{\\underline{w}}$ fits the data.\n", "\n", "Since the log is a monotonic function, we have just derived that the weight settings that minimise our loss are the same ones that minimise our posterior! " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "hybIp3HW03kY" }, "outputs": [], "source": [ "# @title We can plot our log posterior distribution by plotting our loss landscape, since both are equal up to a constant. {run : 'auto'}\n", "\n", "# @markdown **Plotting task** `Base`: Try different values of $\\alpha$ to see how the prior and posterior change\n", "\n", "# @markdown Note: the concentric lines in the plot, also known as level-sets or contours, allow us to see how fast the value of a function decreases. If the contours are very close to each other, it means that the function decreases fast.\n", "\n", "alpha = 3 # @param {type:\"slider\", min:0.01, max:20, step:0.01\n", "mu, covariance = BLR_posterior(\n", " affine_basis(x_data_list_outlier), y_data_list_outlier, alpha\n", ")\n", "\n", "\n", "def generate_loss_fun():\n", " def loss_fun(w):\n", " return regularised_linear_regression_loss(\n", " X=affine_basis(x_data_list_outlier),\n", " y=y_data_list_outlier,\n", " w=w,\n", " vmap_model=vmap_linear,\n", " alpha=alpha,\n", " )\n", "\n", " return loss_fun\n", "\n", "\n", "loss_fun = generate_loss_fun()\n", "\n", "x0_grid, x1_grid, loss_grid = generate_loss_grid(\n", " loss_fun=loss_fun, grid_size=200, lim0=[-8, 8], lim1=[-8, 8]\n", ")\n", "\n", "\n", "plt.figure(dpi=120)\n", "plt.pcolormesh(\n", " x0_grid, x1_grid, -loss_grid, vmin=-loss_grid.min(), vmax=-70, cmap=\"viridis\"\n", ") #\n", "plt.ylabel(\"w\")\n", "plt.xlabel(\"b\")\n", "plt.grid(alpha=0.3)\n", "cbar = plt.colorbar()\n", "cbar.set_label(\"Regularised Loss\", rotation=270, labelpad=20)\n", "\n", "ax = plt.gca()\n", "plot_log_gaussian_ellipse(\n", " ax=ax,\n", " mean=mu,\n", " cov=covariance,\n", " color=\"r\",\n", " alpha=1,\n", " lw=1,\n", " label=\"Analytical posterior contours\",\n", " MAP_size=10,\n", " std_levels=[1, 2, 4, 6],\n", ")\n", "plot_log_gaussian_ellipse(\n", " ax=ax,\n", " mean=jnp.array([0, 0.0]),\n", " cov=(alpha**-1) * jnp.eye(2),\n", " color=\"w\",\n", " alpha=1,\n", " lw=1,\n", " label=\"Analytical prior contours\",\n", " MAP_size=10,\n", " std_levels=[1, 2, 4, 6],\n", ")\n", "plt.title(\"The loss landscape matches the log posterior landscape\")\n", "plt.xlim([-8, 8])\n", "plt.ylim([-8, 8])\n", "plt.legend()" ] }, { "cell_type": "markdown", "metadata": { "id": "0YWFJuSF1ILp" }, "source": [ "In the above plot, the Bayesian posterior computed with our method (red lines) corresponds exactly with the loss regions.\n", "\n", "Thus, Bayesian inference is just trying to find all of the parameter settings that have low loss, i.e. that fit both our regulariser and data well.\n", "\n", "Nottice that the posterior is always \"contained within\" the prior contours. One interpretation of the posterior is that it is the region of the prior with parameters that fit the data well. The tighter the prior, the tighter that the posterior will be.\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "uoIRolsuSNMI" }, "source": [ "**Group task**: `Base` - Discuss with a neighbour or tutor:\n", "\n", "* How does Bayesian learning relate to traditional loss minimisation learning?\n", "\n", "* How does the Bayesian posterior relate to the loss landscape?\n", "\n", "* Can Bayesian learning be performed for any model for which traditional loss minimisation is used?\n", "\n", "* When the posterior is wider, what does it say about our knowledge of the parameters $\\color{blue}{\\underline{w}}$. What about when it is narrower?\n", "\n", "* For larger values of $\\alpha$ the posterior becomes narrower. What implications do you think this will have for our predictions?\n", "\n", "* Do you think that observing more data would make the posterior wider or narrower?\n" ] }, { "cell_type": "markdown", "metadata": { "id": "EMe3v8Am63RF" }, "source": [ "## Making predictions the Bayesian way!\n", "\n", "Once that we have our posterior distribution over $\\color{blue}{\\underline{w}}$, we are ready to make predictions.\n", "\n", "Instead of taking the optimum of the loss and just making predictions with that parameter setting, the Bayesian approach is to make predictions with all parameter settings and weight them by their density under the posterior. \n", "\n", "In other words, we go from a probability distribution over weights to a probability distribution over outputs.\n", "\n", "In our particular case, we want to push the weight distribution \n", "\n", "
\n", "$\\mathcal{N}(\\color{blue}{\\underline{w}}; \\mu, \\Sigma)$\n", "
\n", "\n", " through our function \n", "
\n", " $f(X, \\color{blue}{\\underline{w}}) = X \\color{blue}{\\underline{w}}$\n", "
\n", "\n", "\n", "A nice property of Gaussians is that linear transformations of Gaussian random variables are also Gaussian with mean $X \\mu $ and covariance $X \\Sigma X^T$.\n", "\n", "Thus $X\\cdot \\color{blue}{\\underline{w}} \\sim \\mathcal{N}(X \\cdot \\mu, X \\Sigma X^T)$\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "7zrDX6aHGY3m" }, "outputs": [], "source": [ "# @title Exact predictive posterior for Bayesian Linear regression\n", "\n", "# @markdown Here is the code to implement this.\n", "\n", "# @markdown Instead of returning the full covariance, we will return the square root of the diagonal $\\sqrt{\\textrm{diag}(\\Sigma)}$. This is the predictive standard deviation. The std dev is nice for plotting because its scale matches that of the data.\n", "\n", "\n", "def BLR_predictions(X, mu, covariance):\n", " \"\"\"\n", " Computes linear regression posterior predictive distribution.\n", " Instead of returning the full covariance we will return the square root of the diagonal. This is the predictive standard deviation, which is nice for plotting.\n", "\n", " Args:\n", " X: jnp array of shape (N,D)\n", " mu: jnp array of shape (D,)\n", " covariance: jnp array of shape (D,D)\n", " Returns:\n", " predictive_mean: jnp array of shape (N,)\n", " predictive_std: jnp array of shape (N,)\n", " \"\"\"\n", " predictive_mean = X @ mu\n", " predictive_std = jnp.diag(X @ covariance @ X.T) ** 0.5\n", " return predictive_mean, predictive_std" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "NuzGQt1v7kTK" }, "outputs": [], "source": [ "# @title **Plotting task** `Base`: Lets look at the posterior predictive distribution for different values of $\\alpha$ {run : 'auto'}\n", "\n", "alpha = 3.0 # @param {type:\"slider\", min:0.01, max:20, step:0.01\n", "mu, covariance = BLR_posterior(\n", " affine_basis(x_data_list_outlier), y_data_list_outlier, alpha\n", ")\n", "\n", "\n", "plt.figure(dpi=100)\n", "\n", "xlim = [jnp.min(x_data_list_outlier) - 1, jnp.max(x_data_list_outlier) + 1]\n", "ylim = [jnp.min(y_data_list_outlier) - 1, jnp.max(y_data_list_outlier) + 1]\n", "\n", "x_test = jnp.linspace(xlim[0], xlim[1], 201)\n", "X_test = affine_basis(x_test)\n", "\n", "predictive_mean, predictive_std = BLR_predictions(X_test, mu, covariance)\n", "\n", "ax = plt.gca()\n", "errorfill(\n", " x_test,\n", " predictive_mean,\n", " predictive_std,\n", " color=\"red\",\n", " alpha_fill=0.2,\n", " line_alpha=1,\n", " ax=ax,\n", " lw=2,\n", " linestyle=\"-\",\n", " fill_linewidths=0.2,\n", " marker=None,\n", " markersize=1,\n", " label=None,\n", " markevery=None,\n", ")\n", "\n", "\n", "ax.plot(x_data_list_outlier, y_data_list_outlier, \"ob\")\n", "ax.set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=xlim, ylim=ylim)\n", "ax.grid(alpha=0.3)\n", "ax.legend()\n", "plt.title(\"predictive mean + 1 standard deviation errorbars on either side\")" ] }, { "cell_type": "markdown", "metadata": { "id": "NLLP3H2T_DjK" }, "source": [ "### Making predictions by sampling\n", "\n", "The uncertainty in our posterior distribution over $\\color{blue}{\\underline{w}}$ translates to uncertainty (errorbars) in our predictions.\n", "\n", "\n", "\n", "We can get more concrete intuition about how this happens, by drawing $K$ samples from our posterior distribution over parameters \n", "\n", "
\n", "$ \\color{blue}{\\underline{w}}_{k} \\sim \\mathcal{N}(\\mu, \\Sigma)$\n", "
\n", "\n", "and pushing them through our function $f$ to obtain $K$ different regression lines \n", "\n", "
\n", "$X \\color{blue}{\\underline{w}}_{1}, X \\color{blue}{\\underline{w}}_{2}, ..., X\\color{blue}{\\underline{w}}_{K}$\n", "
\n", "\n", "We can then estimate the predictive mean $\\mu_f$ and predictive standard deviation $\\sigma_f$ from these samples:\n", "\n", "
\n", "$\\mu_f = X \\mu = \\mathbb{E}[X \\color{blue}{\\underline{w}}] \\approx \\frac{1}{K}\\sum_{k=1}^K X \\color{blue}{\\underline{w}}_{k}$\n", "
\n", "\n", "\n", "
\n", "$\\sigma_f = \\sqrt{\\textrm{diag}(X \\Sigma X^T)} = \\sqrt{\\mathbb{E}[(X \\color{blue}{\\underline{w}} - \\mu_f)^2]} \\approx \\sqrt{\\frac{1}{K}\\sum_{k=1}^K (X \\color{blue}{\\underline{w}}_{k} - \\mu_f)^2}$\n", "
\n", "\n", "\n", "This procedure of estimating expectations as averages over samples is known as **Monte Carlo estimation**. Even if the exact expression for the predictive posterior were not available, we could always rely on Monte Carlo to make predictions (and we will do that in the next sections).\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "aFFwUkM9GY6G" }, "outputs": [], "source": [ "key = random.PRNGKey(0)\n", "Nsamples = 10\n", "\n", "parameter_samples = jax.random.multivariate_normal(\n", " key, mu, covariance, shape=(Nsamples,)\n", ")\n", "sample_preds = vmap_linear(X_test, parameter_samples.T)\n", "MC_mean = sample_preds.mean(axis=1)\n", "MC_std = sample_preds.std(axis=1)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "odW4YacV61dC" }, "outputs": [], "source": [ "# @title visualizing the Monte Carlo estimate of the predictive posterior\n", "\n", "fig, ax = plt.subplots(1, 3, dpi=200, figsize=(12, 4))\n", "\n", "\n", "loss_landscape = ax[0].pcolormesh(\n", " x0_grid,\n", " x1_grid,\n", " -loss_grid,\n", " vmin=-loss_grid.min() * 5,\n", " vmax=-loss_grid.min(),\n", " cmap=\"viridis\",\n", ") #\n", "ax[0].set_ylabel(\"w\")\n", "ax[0].set_xlabel(\"b\")\n", "ax[0].grid(alpha=0.3)\n", "ax[0].set_title(\"Loss landscape, weight posterior and samples\")\n", "\n", "plot_log_gaussian_ellipse(\n", " ax=ax[0],\n", " mean=mu,\n", " cov=covariance,\n", " color=\"r\",\n", " alpha=1,\n", " lw=1,\n", " label=\"posterior contours\",\n", " MAP_size=10,\n", " std_levels=[1, 2, 4, 6],\n", ")\n", "\n", "ax[0].scatter(\n", " parameter_samples[:, 0], parameter_samples[:, 1], 8, color=\"green\", label=\"samples\"\n", ")\n", "cbar = fig.colorbar(loss_landscape, ax=ax[0])\n", "cbar.set_label(\"Regularised Loss\", rotation=270, labelpad=20)\n", "ax[0].legend()\n", "\n", "\n", "xlim = [jnp.min(x_data_list_outlier) - 1, jnp.max(x_data_list_outlier) + 1]\n", "ylim = [jnp.min(y_data_list_outlier) - 1, jnp.max(y_data_list_outlier) + 1]\n", "\n", "x_test = jnp.linspace(xlim[0], xlim[1], 201)\n", "X_test = affine_basis(x_test)\n", "\n", "errorfill(\n", " x_test,\n", " predictive_mean,\n", " predictive_std,\n", " color=\"red\",\n", " alpha_fill=0.1,\n", " line_alpha=1,\n", " ax=ax[1],\n", " lw=1,\n", " linestyle=\"-\",\n", " fill_linewidths=2,\n", " marker=None,\n", " markersize=1,\n", " label=\"exact predictive\",\n", " markevery=None,\n", ")\n", "\n", "\n", "ax[1].plot(x_data_list_outlier, y_data_list_outlier, \"ob\")\n", "ax[1].set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=xlim, ylim=ylim)\n", "ax[1].grid(alpha=0.3)\n", "ax[1].legend()\n", "ax[1].set_title(f\"exact predictive posterior\")\n", "\n", "ax[2].plot(x_test, sample_preds, \"-\", color=\"green\", lw=0.3, alpha=0.9)\n", "errorfill(\n", " x_test,\n", " MC_mean,\n", " MC_std,\n", " color=\"green\",\n", " alpha_fill=0.2,\n", " line_alpha=1,\n", " ax=ax[2],\n", " lw=1,\n", " linestyle=\"--\",\n", " fill_linewidths=0.2,\n", " marker=None,\n", " markersize=1,\n", " label=\"sample estimate\",\n", " markevery=None,\n", ")\n", "\n", "\n", "ax[2].plot(x_data_list_outlier, y_data_list_outlier, \"ob\")\n", "ax[2].set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=xlim, ylim=ylim)\n", "ax[2].grid(alpha=0.3)\n", "ax[2].legend()\n", "ax[2].set_title(f\" MC estimate from {Nsamples} samples\")\n", "\n", "\n", "plt.tight_layout()" ] }, { "cell_type": "markdown", "metadata": { "id": "Z7vPRsmDHulk" }, "source": [ "**Group task** `Base` - Discuss with a neighbour:\n", "\n", "* Is our sample based estimate of the predictive distribution good? Do we have enough samples?\n", "* Why are the errorbars of the predictive posterior less wide near the middle of the plot data?\n", "* How would the errorbars change if we added more data (observations)? What about if we decreased the number of observations? What about if we increased the regularisation strength?\n", "* What observation (as in [x, y] value pair) would we have to make to maximally decrease the errorbar size?" ] }, { "cell_type": "markdown", "metadata": { "id": "hFb8e19EIx4T" }, "source": [ "## Takeaways\n", "\n", "* Bayesian learning specifies our prior beleifs about what our function will look like explicitly through the choice of a prior distribution. Bayesian learning uses Bayes rule to update this prior distribution with our data. Specifically, out of all the parameter settings allowed by our prior, we only keep the ones that have a high likelihood (that fit the data well).\n", "\n", "* The Bayesian posterior distribution is just the regularised loss normalised by a constant that makes it integrate to 1. Thus, weight settings that have large posterior density are those that have low loss.\n", "\n", "* We make predictions by combining the predictions from every possible parameter setting, weighed by their respective posterior densities. Disagreement among the regression lines from these parameter settings induces uncertainty in the predictions. When exact computations are not tractable, we can estimate the predictive distribution with Monte Carlo.\n", "\n", "## End of Section\n", "\n", "The rest of the section contains more advanced optional contents. You can skip to [Section 2](#S2) if you want" ] }, { "cell_type": "markdown", "metadata": { "id": "j2x7Nw7SBkdJ" }, "source": [ "## With a more sophisticated basis linear regression can be very powerfull (Optional) - `Intermediate`\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "BH3D-TZSBoE9" }, "outputs": [], "source": [ "# @markdown Lets introduce a dataset that requires a non-linear model.\n", "x_data_list_nonlinear = jnp.array([-2, -1, 0, 1, 1.1, 3.5, 4, 5])\n", "y_data_list_nonlinear = jnp.array([3.2, 3.3, 3.2, 1.3, 1.6, 1.1, 2.0, 3.5]) * 5\n", "\n", "plot_basic_data(x_data_list_nonlinear, y_data_list_nonlinear)" ] }, { "cell_type": "markdown", "metadata": { "id": "rwTi88eycFn6" }, "source": [ "### A non-linear basis\n", "\n", "\n", "So far we have used the affine basis $x \\to [1, x]$. This allows us to generate lines with a learnt slope and offset. \n", "\n", "Now consider the basis $x \\to [\\cos(s_{0} x + u_{0}), \\cos(s_{1} x + u_{1}), \\,..., \\cos(s_{D} x + u_{D})]$ where $\\,\\,s_{i} \\sim \\mathcal{N}(0, \\sigma_s^{2})$ and $\\,\\,u_{i} \\sim U(-\\pi, \\pi)$.\n", "\n", "This is known as \"random fourier\" basis and given a large enough number of basis functions $D$, it will allow us to model any function. See the paper [Random Features for Large-Scale Kernel Machines](https://people.eecs.berkeley.edu/~brecht/papers/07.rah.rec.nips.pdf) for more details on this basis.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "xnwN2Lxm1mFP" }, "outputs": [], "source": [ "def generate_cosine_basis(key, N_inputs, N_elements, s_std=1):\n", "\n", " key, _ = random.split(key)\n", " S = random.normal(key, shape=(N_inputs, N_elements)) * s_std\n", " key, _ = random.split(key)\n", " u = (random.uniform(key, shape=(N_elements,)) - 0.5) * 2 * jnp.pi\n", "\n", " def basis_expand(x):\n", " if x.ndim == 1:\n", " x = x.copy()[:, None]\n", " return jnp.cos(x @ S + u) / np.sqrt(N_elements)\n", "\n", " return basis_expand" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "llz38Em7e5X6" }, "outputs": [], "source": [ "alpha = 0.001\n", "std_s = 0.75" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "l2aZzsK11mLv" }, "outputs": [], "source": [ "# @title Run regression using the code from this section but with the affine basis\n", "\n", "# @markdown As before, the thick red line is the predictive mean, the transparent bars represent the standard deviation. The lin lines represent posterior samples.\n", "\n", "N_inputs = 1\n", "N_elements = 500\n", "\n", "key = random.PRNGKey(42)\n", "\n", "\n", "def gen_plots(params):\n", "\n", " xlim = [-4, 7]\n", "\n", " alpha = params[1]\n", " fourier_basis = generate_cosine_basis(key, N_inputs, N_elements, s_std=params[0])\n", "\n", " X = fourier_basis(x_data_list_nonlinear)\n", " mu, covariance = BLR_posterior(X, y_data_list_nonlinear, alpha)\n", "\n", " x_pred = jnp.linspace(xlim[0], xlim[1], 101)\n", " X_pred = fourier_basis(x_pred)\n", "\n", " parameter_samples = jax.random.multivariate_normal(\n", " key, mu, covariance, shape=(Nsamples,)\n", " )\n", " sample_preds = vmap_linear(X_pred, parameter_samples.T)\n", "\n", " predictive_mean, predictive_std = BLR_predictions(X_pred, mu, covariance)\n", "\n", " #################\n", "\n", " fig, ax = plt.subplots()\n", " ylim = [-15, 30]\n", " ax.plot(x_pred, sample_preds, \"-\", color=\"red\", lw=0.3)\n", "\n", " errorfill(\n", " x_pred,\n", " predictive_mean,\n", " predictive_std,\n", " color=\"red\",\n", " alpha_fill=0.15,\n", " line_alpha=1,\n", " ax=ax,\n", " lw=2,\n", " linestyle=\"-\",\n", " fill_linewidths=0.2,\n", " marker=None,\n", " markersize=1,\n", " label=None,\n", " markevery=None,\n", " )\n", "\n", " ax.plot(x_data_list_nonlinear, y_data_list_nonlinear, \"ob\")\n", " ax.set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=xlim, ylim=ylim)\n", " ax.grid(alpha=0.3)\n", "\n", "\n", "gen_plots([std_s, alpha])" ] }, { "cell_type": "markdown", "metadata": { "id": "k9pYt0CbHlu6" }, "source": [ "**Group task** (Optional) `Intermediate`: - Discuss with a neighbour:\n", "\n", "* Why do the errorbars grow so large in the [1, 3] range and outside the x = [-1, 5] range?\n", "* What effect does $\\alpha$ have? What about the random frequency standard deviation $\\sigma$? " ] }, { "cell_type": "markdown", "metadata": { "id": "uAbUupw9b_v1" }, "source": [ "## The model evidence for hyperparameter selection (Optional) - `Advanced`\n", "\n", "\n", "Recall Bayes rule $\\frac{p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}})}{p(\\underline{y} | X)}$. In the beginning of the section, we discounted the normalising constant $p(\\underline{y} | X) $ as not important due to it being constant in $\\color{blue}{\\underline{w}}$.\n", "\n", "However, this term, which is known as the **Model evidence** or **Marginal likelihood** (both expressions mean exactly the same thing), can be very useful. To see this consider the expanded expression:\n", "\n", "
\n", "$p(\\underline{y} | X) = \\int p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}}) d \\color{blue}{\\underline{w}}$\n", "
\n", "\n", "it is the integral of the likelihood $p(\\underline{y} | X, \\color{blue}{\\underline{w}})$, which measures data fit, against the prior density $p(\\color{blue}{\\underline{w}})$. This expression is very similar to that of the predictive posterior, except that the distribution we integrate agaisnt is the prior and not the posterior. \n", "\n", "**The marginal likelihood tells us how well we fit the data with the prior. It can be used as a learning objective for prior hyperparameters**, such as the random fourier coefficient variance $\\sigma^2_s$ or prior precision $\\alpha$. When we use the marginal likelihood, our weights $\\color{blue}{\\underline{w}}$ are integrated out -- the only free parameters are those of our prior. Since our prior will usually have a small number of parameters, we can usually fit these safely using all of our data without fear of overfitting. \n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "9Myv6WRrPNP8" }, "source": [ "In the Gaussian linear model, we compute the marginal likelihood as \n", "\n", "
\n", "$p(\\underline{y} | X) = \\int \\mathcal{N}(\\underline{y}; X\\cdot \\color{blue}{\\underline{w}}, I) \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I) d \\color{blue}{\\underline{w}}$\n", "
\n", "\n", "You can try to solve this integral as a take-home excercise ([this](https://www.utstat.utoronto.ca/~radford/sta414.S11/week4a.pdf) is a nice resource to help you). To save time, we provide the solution here. In practise we work with logs for numerical stability.\n", "\n", "$\\log p(\\underline{y} | X)$ = $-\\frac{1}{2}||\\underline{y} - X\\cdot \\mu||_{2}^2 - \\frac{\\alpha}{2}||\\mu||_{2}^{2} + \\frac{1}{2} \\textrm{logdet}(\\Sigma) + \\frac{D}{2} \\log \\alpha - \\frac{1}{2} N \\log(2 \\pi)$\n", "\n", "\n", "The next cell contains an implementation" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Ez6pxY1fvsrt" }, "outputs": [], "source": [ "def linear_evidence(x_data_list, y_data_list, basis, alpha):\n", " X = basis(x_data_list)\n", " mu, covariance = BLR_posterior(X, y_data_list, alpha)\n", " loss = regularised_linear_regression_loss(\n", " X=X, y=y_data_list, w=mu, vmap_model=vmap_linear, alpha=alpha\n", " )\n", " a, log_det = jnp.linalg.slogdet(covariance)\n", " return (\n", " -loss\n", " + 0.5 * (len(mu) * jnp.log(alpha) + log_det)\n", " - 0.5 * len(x_data_list) * jnp.log(2 * jnp.pi)\n", " )" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "7k_HJq1GLcR0" }, "outputs": [], "source": [ "# @markdown Lets compute the evidence of our affine model and random fourier model on the new non-linear data\n", "\n", "alpha = 0.01\n", "s_std = 0.75\n", "fourier_basis = generate_cosine_basis(key, N_inputs, N_elements, s_std)\n", "fourier_evidence = linear_evidence(\n", " x_data_list_nonlinear, y_data_list_nonlinear, fourier_basis, alpha\n", ")\n", "affine_evidence = linear_evidence(\n", " x_data_list_nonlinear, y_data_list_nonlinear, affine_basis, alpha\n", ")\n", "print(\"fourier_evidence\", fourier_evidence)\n", "print(\"affine_evidence\", affine_evidence)" ] }, { "cell_type": "markdown", "metadata": { "id": "LzfroHOt2iX3" }, "source": [ "**Some questions** `Advanced`\n", "* Why is the fourier model's evidence larger than the affine model's evidence?\n", "* Is the same true for the other dataset? (x_data_list_outlier, y_data_list_outlier) -- you might need to tune alpha manually for each model" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "IxkKK5791DQn" }, "outputs": [], "source": [ "# @title **Plotting Task** (Optional) `Advanced`: Optimise the fourier basis standard deviation $\\sigma$ and the regularisation strength $\\alpha$ with the linear evidence objective\n", "\n", "\n", "def gen_objective(x_data_list, y_data_list, key, N_elements):\n", " def objective(params, key):\n", " basis = generate_cosine_basis(key, 1, N_elements, s_std=params[0])\n", " return linear_evidence(x_data_list, y_data_list, basis, params[1])\n", "\n", " return objective\n", "\n", "\n", "N_elements = 300\n", "objective = gen_objective(x_data_list_nonlinear, y_data_list_nonlinear, key, N_elements)\n", "\n", "optimised_regularised_classification_params = optimise(\n", " objective,\n", " params=jnp.array([2, 0.001]),\n", " plotting_func=gen_plots,\n", " LR=2e-3,\n", " MAX_STEPS=1300,\n", " LOG_EVERY=100,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "K56NMfdP3ReF" }, "source": [ "**Some more questions** `Advanced`\n", "* Is there any overfitting happening? \n", "* Do the errorbars become bigger or smaller? Why?\n", "* When is it safe to use the model evidence as a training objective for our hyperparameters?" ] }, { "cell_type": "markdown", "metadata": { "id": "cOGuGWtLmP7n" }, "source": [ "# Section 2 - Logistic Regression -- the need for approximate inference \n", "\n", "Linear regression was nice because the posterior distribution over the parameters and the predictive posterior could be written down in closed form.\n", "We are now ready to exit the world of exact solutions which you can compute with pen and paper. This is a short section meant as motivation for the rest of the prac. Spend no more than 10 minutes on it.\n", "\n", "We will start by considering logistic regression. We are going to deal with a classification task where our targets are either 0 or 1. Data that takes these values can be described by a [Bernouilli distribution](https://en.wikipedia.org/wiki/Bernoulli_distribution)\n", "\n", "
\n", "$y_{n} \\sim \\text{Bern}(\\rho)$\n", "
\n", "\n", "where $\\rho \\in [0,1]$ is the probability of our observations taking a value of 1. Our model will predict this probability for each of the inputs: $\\rho = f(x, \\color{blue}{\\underline{w}})$.\n", "\n", "We will use the same affine linear model as before, but we need to restrict the output to the $[0,1]$ range. For this, we use the sigmoid function $\\phi(f) = \\frac{1}{1 + \\exp(-f)}$.\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "vMLBmsEjWz8B" }, "source": [ "The final piece of the puzzle is introducing the standard assumption that our target labels $\\underline{y} | X, \\color{blue}{\\underline{w}}$ are [independent and identically distributed](https://en.wikipedia.org/wiki/Independent_and_identically_distributed_random_variables) (i.i.d) given our \n", "inputs and weights. This assumption is going to allow us to write the likelihood as a product of the likelihoods from individual datapoints $p(\\underline{y} | X, \\color{blue}{\\underline{w}}) = \\prod_{n=1}^N p(y_n | x_n, \\color{blue}{\\underline{w}})$. \n", "\n", "We were also implicitly making this assumption in the previous section when choose the covariance of our likelihood function to be the identity. We just did not write out the likelihood as a product to keep the notation compact.\n", "\n", "\n", "Putting it all together we have \n", "\n", "
\n", "$p(\\underline{y} | X, \\color{blue}{\\underline{w}}) = \\prod_{n=1}^N Bern(y_{n}; \\phi(x_{n}\\color{blue}{\\underline{w}}))$\n", "\n", "and as before we keep the Gaussian prior over our parameters\n", "\\\n", "$p(\\color{blue}{\\underline{w}}) = \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I)$\n", "
" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "tj9IEgVzAmLI" }, "outputs": [], "source": [ "# @title Dataset for logistic regression.\n", "# @markdown the task will be to classify points with the labels 0 or 1\n", "\n", "x_data_list_classification = jnp.array([-2.7, -1.9, -1.3, 0.7, 0.8, 1.4, 2.4])\n", "y_data_list_classification = jnp.array([0, 0, 0, 1, 1, 1, 1])\n", "\n", "\n", "plot_basic_data(x_data_list_classification, y_data_list_classification)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "83JVL1LU7aJr" }, "outputs": [], "source": [ "# @title Define the model, same as above but with sigmoid\n", "\n", "\n", "def logistic(w, x):\n", " return sigmoid(linear(w, x))\n", "\n", "\n", "vmap_logistic = jit(vmap(logistic, in_axes=(None, 0)))" ] }, { "cell_type": "markdown", "metadata": { "id": "M1dFiIa8EE--" }, "source": [ "## Loss landscape for classification\n", "\n", "\n", "Similarly to linear reression, lets write out the unnormalised posterior to get a loss function to optimise. \n", "\n", "
\n", "$\\log \\left( p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}}) \\right) = \\log \\left( \\prod_{n=1}^N Bern(y_n ; \\phi(x_n \\color{blue}{\\underline{w}})) \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I)\\right)$\n", "
\n", "\n", "\\\n", "Now we note that the Bernouilli distribution is defined over discrete outcomes. In the previos sections, we dealt with Gaussian targets that could take any value in $\\mathcal{R}$ and thus we dealt with probability density functions. Now our targets can only take values $\\{0,1\\}$ and thus we can assign each of these outcomes a **probability mass**. The Bernouilli probability mass function is $Bern(y ; \\rho) = \\rho^y (1-\\rho)^{(1-y)}$. When we take its log we recover the cross entropy loss: $y \\log \\rho + (1-y) \\log (1-\\rho)$\n", "\n", "\n", "\\\n", "Dropping constants, the total loss is thus going to be\n", "\n", "
\n", "$\\sum_{n=1}^N y_n \\log \\phi(x_n \\color{blue}{\\underline{w}}) + (1-y_n) \\log (1-\\phi(x_n \\color{blue}{\\underline{w}})) + \\frac{\\alpha}{2} ||\\color{blue}{\\underline{w}}||_{2}^2$\n", "
\n", "\n", "**i.e. the regularised cross entropy loss falls right out of our Bayesian model!!**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "zlLfPAlAEM_a" }, "outputs": [], "source": [ "# @title Implementation of regularised cross entropy loss\n", "# @markdown nottice that we do not code the sigmoid since it is implicit in the `sigmoid_binary_cross_entropy` method\n", "\n", "# @markdown combining sigmoid and cross entropy in this way provides increased numerical stability\n", "\n", "\n", "def logistic_regression_loss(X, y, vmap_model, w, alpha):\n", " data_fit_loss = sigmoid_binary_cross_entropy(vmap_model(X, w), y).sum(\n", " axis=0\n", " ) # optax loss has sigmoid integrated so we just use linear model\n", " parameter_norm = 0.5 * alpha * (w**2).sum()\n", " return data_fit_loss + parameter_norm" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "8VsT7hjFBtA8" }, "outputs": [], "source": [ "# @title Plotting the loss landscape and finding the solution at the mode\n", "# @markdown Nottice that the loss is non-symmetric around its mode\n", "\n", "alpha = 0.75\n", "\n", "\n", "def generate_loss_fun():\n", " def loss_fun(w):\n", " return logistic_regression_loss(\n", " X=affine_basis(x_data_list_classification),\n", " y=y_data_list_classification,\n", " vmap_model=vmap_linear,\n", " w=w,\n", " alpha=alpha,\n", " )\n", "\n", " return loss_fun\n", "\n", "\n", "loss_fun = generate_loss_fun()\n", "\n", "x0_grid, x1_grid, loss_grid = generate_loss_grid(\n", " loss_fun=loss_fun, grid_size=200, lim0=[-8, 8], lim1=[-6, 10]\n", ")\n", "\n", "\n", "def gen_objective(X, y, vmap_model, alpha):\n", " def objective(params, key):\n", " return -logistic_regression_loss(X, y, vmap_model, params, alpha)\n", "\n", " return objective\n", "\n", "\n", "objective = gen_objective(\n", " affine_basis(x_data_list_classification),\n", " y_data_list_classification,\n", " vmap_linear,\n", " alpha,\n", ")\n", "\n", "optimised_regularised_classification_params = optimise(\n", " objective,\n", " params=jnp.array([0.0, 0.0]),\n", " plotting_func=None,\n", " LR=1e-2,\n", " MAX_STEPS=800,\n", " LOG_EVERY=100,\n", ")\n", "\n", "\n", "fig, ax = plt.subplots(1, 2, dpi=140, figsize=(10, 4))\n", "mesh = ax[0].pcolormesh(\n", " x0_grid,\n", " x1_grid,\n", " -loss_grid,\n", " vmin=-loss_grid.min() * 5,\n", " vmax=-loss_grid.min(),\n", " cmap=\"viridis\",\n", ") #\n", "cbar = fig.colorbar(mesh, ax=ax[0])\n", "cbar.set_label(\"Regularised Loss\", rotation=270, labelpad=20)\n", "ax[0].set_ylabel(\"w\")\n", "ax[0].set_xlabel(\"b\")\n", "ax[0].set_title(\"Loss / posterior landscape for classification\")\n", "ax[0].grid(alpha=0.3)\n", "ax[0].scatter(\n", " optimised_regularised_classification_params[0],\n", " optimised_regularised_classification_params[1],\n", " c=\"cyan\",\n", " label=\"mode\",\n", ")\n", "ax[0].legend()\n", "\n", "\n", "xlim = [-4, 4]\n", "ylim = [-0.1, 1.1]\n", "\n", "x_pred = jnp.linspace(xlim[0], xlim[1], 101)\n", "\n", "\n", "mode_predictions = sigmoid(\n", " vmap_linear(affine_basis(x_pred), optimised_regularised_classification_params)\n", ")\n", "ax[1].plot(x_pred, mode_predictions, c=\"cyan\", label=\"Best fit class probability\")\n", "ax[1].grid(alpha=0.3)\n", "ax[1].legend()\n", "ax[1].plot(x_data_list_classification, y_data_list_classification, \"ob\")\n", "ax[1].set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=xlim, ylim=ylim)\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "OATtmRZEA5Lr" }, "source": [ "**Group task `Base`** - Discuss with a neighbour and / or tutor:\n", "\n", "* Is the loss quadratic? Is the loss convex?\n", "\n", "* What is the cause of the posterior being wider for larger values of $w$?\n", "\n", "* When normalised, will the posterior be Gaussian?\n", "\n", "* Nottice that the Gaussian posterior contours from the previous section are symmetric around their mode. Is this loss landscape symmmetric around its mode? What do you think would be the implications of approximating this posterior distribution with a Gaussian.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "wjCALHKMavr7" }, "outputs": [], "source": [ "# @title Takeaways for this section (reveal after discussion above):\n", "\n", "print(\n", " \"-- Outside of the linear-Gaussian regresion case, the loss function is usually non quadratic. This is the case for logistic regression.\\n\"\n", ")\n", "\n", "print(\"-- When the loss is non-quadratic, the posterior is non-Gaussian. \\n\")\n", "\n", "print(\n", " '-- Usually, we do not have closed form \"pen and paper\" expressions for non-Gaussian posterior distributions \\n and we need to resort to approximations.\\n'\n", ")\n", "\n", "print(\n", " \"-- If we approximate a non-Gaussian posterior with a Gaussian, we will be placing excess posterior probability density \\nin some regions of parameter space and not enough density in other regions. In the next sections we will see what effect this has on performance.\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "CPIlyvQNEMTb" }, "source": [ "# Section 3: Black Box Variational Inference \n", "\n", "This section implemented Black Box Variational Inference. It is the crux of the prac and you should spend up to 30 minutes on it.\n", "\n", "The logistic regression posterior is non-quadratic and thus non-Gaussian. Even worse, we do not have a closed form expression for the posterior distribution. However, after [Section 1](#S1), we are very comfortable working with Gaussians.\n", "\n", "We are going to try to find the Gaussian which is closest to the logistic regression posterior and use that one. We are going to call our Gaussian approximate distribution $q$. We will learn its mean and covariance parameters $\\mu_q, \\Sigma_q$: $q(\\color{blue}{\\underline{w}}) = \\mathcal{N}(\\color{blue}{\\underline{w}}; \\mu_q, \\Sigma_q)$\n", "\n", "But, what do we mean by \"closest\"? We need to choose a notion of distance between distributions. We are going to choose the [KL divergence](https://en.wikipedia.org/wiki/Kullback%E2%80%93Leibler_divergence). That is, we want to minimise the KL divergence between our approximation $q(\\color{blue}{\\underline{w}})$ and the true posterior $p(\\color{blue}{\\underline{w}} | X, \\underline{y})$ which we write as $\\text{KL}(q(\\color{blue}{\\underline{w}}) \\, ||\\, p(\\color{blue}{\\underline{w}} | X, \\underline{y}))$. This quantity takes a minimum value of 0 which is only reached when $q(\\color{blue}{\\underline{w}}) = p(\\color{blue}{\\underline{w}} | X, \\underline{y})$. \n", "\n", "\\\n", "`Fun fact`: Strictly speaking, the KL divergence is not a distance because it is not symmetric, meaning in general $KL(q \\,||\\, p) \\neq KL(p \\,||\\, q)$. As the name implies, it is actually a **divergence**, a type of function that does require symmetry. \n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "0H0gTiTlGoB8" }, "source": [ "## Introducing the ELBO\n", "\n", "We dont know the anaylitical form of $p(\\color{blue}{\\underline{w}} | X, \\underline{y})$, so how do we minimise $\\text{KL}(q(\\color{blue}{\\underline{w}}) \\, ||\\, p(\\color{blue}{\\underline{w}} | X, \\underline{y}))$?\n", "\n", "We are going to use a trick called the **Evidence Lower BOund (ELBO)**. Specifically, we are going to derive that maximising the objective \n", "\n", "
\n", "$\\text{ELBO} = \\mathbb{E}_{q(\\color{blue}{\\underline{w}})}[\\log p(\\underline{y} | X, \\color{blue}{\\underline{w}})]$ - $\\text{KL}(q(\\color{blue}{\\underline{w}}) \\, ||\\, p(\\color{blue}{\\underline{w}}))$\n", "
\n", "\n", "is equivalent to minimising $\\text{KL}(q(\\color{blue}{\\underline{w}}) \\, ||\\, p(\\color{blue}{\\underline{w}} | X, \\underline{y}))$. This is great because the ELBO does not contain the posterior anymore, only the likelihood $p(\\underline{y} | X, \\color{blue}{\\underline{w}})$ and prior $p(\\color{blue}{\\underline{w}})$!" ] }, { "cell_type": "markdown", "metadata": { "id": "mGGDtq7wISOI" }, "source": [ "**Math Task** (Optional) `Advanced`: Derive the ELBO\n", "\n", "\n", "
\n", "Show that minimising $\\text{KL}(q(\\color{blue}{\\underline{w}}) \\, ||\\, p(\\color{blue}{\\underline{w}} | X, \\underline{y}))$ is equivalent to maximising $\\mathbb{E}_{q(\\color{blue}{\\underline{w}})}[\\log p(\\underline{y} | X, \\color{blue}{\\underline{w}})]$ - $\\text{KL}(q(\\color{blue}{\\underline{w}}) \\, ||\\, p(\\color{blue}{\\underline{w}}))$\n", "
\n", "\n", "\\\n", "* Hint 1: The KL divergence can be written as $\\text{KL}\\left(q(a)\\,||\\,p(b)\\right) = \\mathbb{E}_{q(a)}[\\log q(a) - \\log p(b)]$. \n", "\n", "Use this together with decomposing the posterior using Bayes Rule: $p(\\color{blue}{\\underline{w}} | X, \\underline{y}) = \\frac{p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}})}{p(\\underline{y} | X)}$\n", "\n", "\\\n", "* Hint 2: The ELBO is called like that because it is a lower bound on the evidence: $\\log p(\\underline{y} | X)$. Try separating out this term, and notticing that it does not depend on $\\color{blue}{\\underline{w}}$ so that $\\mathbb{E}_{q(\\color{blue}{\\underline{w}})}[\\log p(\\underline{y} | X)] = \\log p(\\underline{y} | X)$.\n", "\n", "To set up the inequality $\\log p(\\underline{y} | X) \\geq ...$ you can use [Jensen's](https://en.wikipedia.org/wiki/Jensen%27s_inequality) inquality: $\\quad \\log \\mathbb{E}[p] \\geq \\mathbb{E}[\\log p]$.\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "HLzvY-yWeGYq" }, "outputs": [], "source": [ "# @title Answer to math task (Try not to run until you've given it a good try!')\n", "from IPython.display import display, Markdown, Latex\n", "\n", "display(\"Solution Derivation\")\n", "display(\n", " Latex(\n", " \"$\\\\text{KL}(q(\\\\underline{w}) \\, ||\\, p(\\\\underline{w} | X, \\\\underline{y})) = \\\\mathbb{E}_{q(\\\\underline{w})}[\\\\log q(\\\\underline{w}) - \\\\log p(\\\\underline{w} | X, \\\\underline{y})] = \\mathbb{E}_{q(\\\\underline{w})}[\\\\log q(\\\\underline{w}) - \\\\log \\\\frac{p(\\\\underline{y} | X, \\\\underline{w}) p(\\\\underline{w})}{p(\\\\underline{y} | X)}]$\"\n", " )\n", ")\n", "\n", "\n", "display(\n", " Latex(\n", " \"$ = \\\\mathbb{E}_{q(\\\\underline{w})}[\\\\log q(\\\\underline{w}) - \\\\log p(\\\\underline{y} | X, \\\\underline{w}) - \\\\log p(\\\\underline{w}) + \\\\log p(\\\\underline{y} | X)]$\"\n", " )\n", ")\n", "display(\n", " Latex(\n", " \"$ = \\\\mathbb{E}_{q(\\\\underline{w})}[- \\\\log p(\\\\underline{y} | X, \\\\underline{w})] + \\\\mathbb{E}_{q(\\\\underline{w})}[ \\\\log q(\\\\underline{w}) - \\\\log p(\\\\underline{w})] + \\\\log p(\\\\underline{y} | X)$\"\n", " )\n", ")\n", "display(\n", " Latex(\n", " \"$ = - \\\\mathbb{E}_{q(\\\\underline{w})}[\\\\log p(\\\\underline{y} | X, \\\\underline{w})] + \\\\text{KL}\\\\left(\\\\log q(\\\\underline{w}) \\,||\\, \\\\log p(\\\\underline{w})\\\\right) + \\\\log p(\\\\underline{y} | X)$\"\n", " )\n", ")\n", "\n", "\n", "display(\"Thus\")\n", "display(\n", " Latex(\n", " \"$\\\\log p(\\\\underline{y} | X) - \\\\text{KL}\\\\left(q(\\\\underline{w}) \\, ||\\, p(\\\\underline{w} | X, \\\\underline{y})\\\\right) = \\\\mathbb{E}_{q(\\\\underline{w})}[\\\\log p(\\\\underline{y} | X, \\\\underline{w})] - \\\\text{KL}\\\\left(\\\\log q(\\\\underline{w}) \\,||\\, \\\\log p(\\\\underline{w})\\\\right) = \\\\text{ELBO}$\"\n", " )\n", ")\n", "\n", "display(\"Since\")\n", "display(Latex(\"$\\\\log p(\\\\underline{y} | X)$\"))\n", "display(\n", " \"is constant and independent of q, then maximising the ELBO is equivalent to minimising\"\n", ")\n", "display(\n", " Latex(\n", " \"$\\\\text{KL}\\\\left(q(\\\\underline{w}) \\, ||\\, p(\\\\underline{w} | X, \\\\underline{y})\\\\right)$\"\n", " )\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "fp-5CgX1Ip7p" }, "source": [ "**Group task `Base`** - Discuss with a neighbour and / or tutor:\n", "\n", "* When will the KL to the true posterior $\\text{KL}(q(\\color{blue}{\\underline{w}}) \\, ||\\, p(\\color{blue}{\\underline{w}} | X, \\underline{y}))$ be 0, if ever?\n", "\n", "* What is the maximum value that the ELBO can take?\n", "\n", "* Can one overfit by optimising the ELBO?" ] }, { "cell_type": "markdown", "metadata": { "id": "syl0y6UjLZmr" }, "source": [ "## Implementing the ELBO\n", "\n", "Now we are going to implement an ELBO which we can apply to any model to perform Bayesian inference\n", "\n", "Most of the code is written for you and you will just have to complete some bits." ] }, { "cell_type": "markdown", "metadata": { "id": "cED67Bzn3We5" }, "source": [ "### We are going to be learning a Gassuain $q(\\color{blue}{\\underline{w}}) = \\mathcal{N}(\\color{blue}{\\underline{w}}; \\mu_q, \\Sigma_{q})$\n", "\n", "In practise, that means that we need to learn the mean vector $\\mu_q$ and a covariance matrix $\\Sigma_q$. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Wubw_EfhMuSQ" }, "outputs": [], "source": [ "# @title Code to initialise parameters and construct the covariance matrix\n", "\n", "# @markdown A property of covariance matrices is that they need to be [possitive definite](https://en.wikipedia.org/wiki/Definite_matrix)\n", "\n", "# @markdown To ensure that is always true, we are going to parametrise the covariance as $\\Sigma_{q} = (L_o + \\sigma I) (L_o + \\sigma I)^T$ where $L$ is a lower triangular matrix\n", "\n", "# @markdown **code review task** `Base`: read through this code to convince yourself it computes the covariance as described\n", "\n", "\n", "def initialize_params(D, key=random.PRNGKey(0)):\n", " \"\"\"\n", " Return randomly initialised parameters of the variational posterior q\n", " \"\"\"\n", " dist_mean = normal(stddev=1)\n", " dist_cov = normal(stddev=1e-3)\n", " keys = random.split(key, 5)\n", "\n", " params = {}\n", " params[\"w\"] = dist_mean(keys[0], (D,))\n", " params[\"L_o\"] = jnp.tril(dist_cov(keys[1], (D, D)), -1)\n", " params[\"sig\"] = dist_cov(keys[2], (D,))\n", " return params\n", "\n", "\n", "@jit\n", "def get_L(params, min_diag=1e-6):\n", " \"\"\"\n", " Construct square root of covariance matrix as L_o + \\sigma I\n", " \"\"\"\n", " log_diag = params[\"sig\"]\n", " off_diag = params[\"L_o\"]\n", " sig_diag = jnp.diag(jnp.clip(jnp.exp(log_diag), a_min=min_diag))\n", " tril_L = jnp.tril(off_diag, -1)\n", " L = tril_L + sig_diag\n", " return L\n", "\n", "\n", "@jit\n", "def get_Sig(params, min_diag=1e-6):\n", " \"\"\"\n", " Construct covariance matrix as (L + \\sigma I)(L + \\sigma I)^T\n", " \"\"\"\n", " L = get_L(params, min_diag=min_diag)\n", " return jnp.matmul(L, L.T)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "b54CKBYk4U51" }, "outputs": [], "source": [ "# @markdown We are going to compute the expectation ${E}_{q(\\color{blue}{\\underline{w}})}[\\log p(\\underline{y} | X, \\color{blue}{\\underline{w}})]$ with Monte Carlo. For that we need to draw samples from $q$.\n", "\n", "# @markdown To sample from $\\mathcal{N}(\\mu_q, \\Sigma_{q})$, we are going to use a trick to turn samples from $\\mathcal{N}(0, I)$ into samples from q.\n", "\n", "# @markdown Specifically, we will do $\\mu_q + (L + \\sigma I) \\epsilon\\,\\,$ with $\\epsilon \\sim \\mathcal{N}(0, I)$\n", "\n", "# @markdown **code review task** `Base`: read through this code to verify it draws samples as described\n", "\n", "\n", "def sample_weights(params, key, Nsamples=100):\n", " \"\"\"\n", " return a matrix of size (D, K) containing K samples from\n", " our variational distribution q\n", " \"\"\"\n", " mu = params[\"w\"]\n", " L = get_L(params, min_diag=1e-6)\n", " eps = random.normal(key, shape=(mu.shape[0], Nsamples))\n", " w = mu + jnp.matmul(L, eps).T\n", " return w" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "Jd_5rCowLRPQ" }, "outputs": [], "source": [ "# @title Implementation of KL divergence between Gaussians\n", "\n", "# @markdown this code computes $\\text{KL}(\\mathcal{N}(\\mu_q, \\Sigma_q) \\,||\\, \\mathcal{N}(0, \\alpha^{-1}I))$\n", "\n", "# @markdown In the interest of time, **you do not need to check this one** since we have not covered how to derive the expression.\n", "\n", "# @markdown If you are curious, [Here](https://mr-easy.github.io/2020-04-16-kl-divergence-between-2-gaussian-distributions/) is a nice resource showing the derivation\n", "\n", "\n", "@jit\n", "def rho_logdet(rho):\n", " return 2 * jnp.sum(rho).clip(\n", " a_min=-700\n", " ) # empirically -730 is close to torch log(0)\n", "\n", "\n", "@jit\n", "def KLD_cost(params, prior_log_std):\n", " \"\"\"\n", " KL divergence between a full covariance Gaussian and an isotropic Gaussian\n", "\n", " Args:\n", " prior_log_std: scalar or vector of size D\n", " \"\"\"\n", "\n", " q_mu = params[\"w\"]\n", " q_logdet = rho_logdet(params[\"sig\"])\n", " q_Sig = get_Sig(params)\n", "\n", " d = q_Sig.shape[0]\n", "\n", " var_p = jnp.exp(2 * prior_log_std)\n", "\n", " Sig_p_inv = jnp.eye(d) * 1 / var_p\n", " p_logdet = 2 * (prior_log_std * d).clip(a_min=-700)\n", "\n", " mu_sigma_inv_mu = q_mu @ Sig_p_inv @ q_mu\n", " logdet_ratio = p_logdet - q_logdet\n", " trace_term = jnp.trace(jnp.matmul(Sig_p_inv, q_Sig))\n", "\n", " KLD = 0.5 * (trace_term + mu_sigma_inv_mu - d + logdet_ratio)\n", "\n", " return KLD" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Pq4fwvU2LRWN" }, "outputs": [], "source": [ "# @title Implementation of log-likelihood functions\n", "# @markdown These functions compute $\\log p(\\underline{y} | X, \\color{blue}{\\underline{w}})$ for the Gaussian and Bernouilli distributions respectively.\n", "\n", "# @markdown Remember the equivalency between log-likelihoods and standard loss functions described in the previous sections.\n", "\n", "# @markdown For regression, we are rellying on the scipy implementation. However, we might as well have written $-0.5||\\underline y - X\\color{blue}{\\underline{w}}||^2_2$.\n", "\n", "# @markdown For classification, we are rellying on the cross entropy loss.\n", "\n", "\n", "@jit\n", "def gaussian_ll(pred, y):\n", " z = y - pred\n", " return norm.logpdf(z, loc=0, scale=1)\n", "\n", "\n", "def bernouilli_ll(pred, y):\n", " return -sigmoid_binary_cross_entropy(pred, y)" ] }, { "cell_type": "markdown", "metadata": { "id": "DodADk9AmTqN" }, "source": [ "**Coding task** `Base`: putting it all together -- Implement the ELBO\n", "\n", "We have code to compute the KL term in the ELBO, we have code to sample from q and we have code to compute log-likelihoods $\\log p(\\underline{y} | X, \\color{blue}{\\underline{w}_s})$\n", "\n", "You will implement $\\mathbb{E}_{q(\\color{blue}{\\underline{w}})}[\\log p(\\underline{y} | X, \\color{blue}{\\underline{w}})]$ using a MonteCarlo estimator $\\frac{1}{N_{\\text{samples}}}\\sum_{s=1}^{N_{\\text{samples}}} \\log p(\\underline{y} | X, \\color{blue}{\\underline{w}_s})$ with $\\color{blue}{\\underline{w}_s} \\sim q(\\color{blue}{\\underline{w}})$\n", "\n", "* hint1: use the `sample_weights` method that was implemented in the cells above to draw samples. You can then push the samples through the `model` function to get predictions\n", "\n", "* hint2: `ll_func` which is taken as an input takes `pred` and `y` as inputs and returns $\\log p(\\underline{y} | X, \\color{blue}{\\underline{w}_s})$\n", "\n", "After this, the rest of the prac will just consist of running this code and studying how it behaves\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "7GFRVB5fOtAQ" }, "outputs": [], "source": [ "def gen_Gaussian_ELBO(model, alpha, ll_func, Nsamples=100):\n", " \"\"\"\n", " Computes linear regression posterior parameters\n", " \n", " Args:\n", " model: vmap model that takes X and w as inputs\n", " alpha: scalar - regulasisation strength or prior precision\n", " ll_func: function that maps from predictions and targets to log densities\n", " Nsamples: integer, how many samples to draw for MonteCarlo estimator\n", " Returns:\n", " \n", " Gaussian_ELBO: function which we can evaluate at our data points\n", " and returns the ELBO estimate\n", " \"\"\"\n", " prior_log_std = - 0.5 * jnp.log(alpha)\n", "\n", " def ll_term(params, key, X, y):\n", " w = # Your code goes here. \n", " predictions = # Your code goes here. \n", " ll = # Your code goes here. \n", " #You need to return ll, a matrix of size (Nobservations, Nsamples) \n", " return ll.sum(axis=0).mean(axis=0) # sum over observations and average over samples\n", "\n", " def Gaussian_ELBO(params, key, X, y):\n", " KL = KLD_cost(params, prior_log_std)\n", " ll = ll_term(params, key, X, y)\n", " return ll - KL\n", " \n", " return jit(Gaussian_ELBO)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "Pe0uZVfNPGbF" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "\n", "alpha = 1\n", "\n", "Gaussian_ELBO = gen_Gaussian_ELBO(\n", " model=vmap_linear, alpha=alpha, ll_func=gaussian_ll, Nsamples=1000\n", ")\n", "key = random.PRNGKey(0)\n", "params = initialize_params(D=2, key=key)\n", "objective = jit(\n", " partial(\n", " Gaussian_ELBO,\n", " X=affine_basis(x_data_list_classification),\n", " y=y_data_list_classification,\n", " )\n", ")\n", "\n", "ELBO_correct = -28.404984\n", "\n", "assert (\n", " jnp.abs(objective(params, key) - ELBO_correct) < 1e-3\n", "), \"Covariance is not calculated correctly\"\n", "\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "mqaU3YzwPGdo" }, "outputs": [], "source": [ "# @title Answer (Try not to peek until you've given it a good try!')\n", "\n", "\n", "def gen_Gaussian_ELBO(model, alpha, ll_func, Nsamples=100):\n", " \"\"\"\n", " Computes linear regression posterior parameters\n", "\n", " Args:\n", " model: vmap model that takes X and w as inputs\n", " alpha: scalar - regulasisation strength or prior precision\n", " ll_func: function that maps from predictions and targets to log densities\n", " Nsamples: integer, how many samples to draw for MonteCarlo estimator\n", " Returns:\n", "\n", " Gaussian_ELBO: function which we can evaluate at our data points and returns the ELBO estimate\n", " \"\"\"\n", " prior_log_std = -0.5 * jnp.log(alpha)\n", "\n", " def ll_term(params, key, X, y):\n", " w = sample_weights(params, key, Nsamples)\n", " predictions = model(\n", " X,\n", " w.T,\n", " )\n", " ll = ll_func(predictions, y[:, None])\n", " return ll.sum(axis=0).mean(\n", " axis=0\n", " ) # sum over observations and average over samples\n", "\n", " def Gaussian_ELBO(params, key, X, y):\n", " KL = KLD_cost(params, prior_log_std)\n", " ll = ll_term(params, key, X, y)\n", " return ll - KL\n", "\n", " return jit(Gaussian_ELBO)" ] }, { "cell_type": "markdown", "metadata": { "id": "ahCZzOcZECBh" }, "source": [ "## Lets recover the linear regression exact posterior with variational inference\n", "\n", "First lets run a sanity check: we are going to run our black box variational inference algorithm on our linear regression problem. Since the true posterior is Gaussian, our Gaussian approximation $q$ should be able to recover it exactly.\n", "\n", "This will allow us to verify that our implementation does not have bugs!" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "OPIdFgAIAI8H" }, "outputs": [], "source": [ "# @title Re-compute the linear reression true posterior and loss surface as a reference -- run this cell but there is no need to look at the code\n", "\n", "alpha = 3\n", "\n", "mu, covariance = BLR_posterior(\n", " affine_basis(x_data_list_outlier), y_data_list_outlier, alpha\n", ")\n", "\n", "\n", "def generate_loss_fun():\n", " def loss_fun(w):\n", " return regularised_linear_regression_loss(\n", " X=affine_basis(x_data_list_outlier),\n", " y=y_data_list_outlier,\n", " w=w,\n", " vmap_model=vmap_linear,\n", " alpha=alpha,\n", " )\n", "\n", " return loss_fun\n", "\n", "\n", "loss_fun = generate_loss_fun()\n", "\n", "x0_grid, x1_grid, loss_grid = generate_loss_grid(\n", " loss_fun=loss_fun, grid_size=200, lim0=[-8, 8], lim1=[-8, 8]\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "pvnQ01eAwjqd" }, "outputs": [], "source": [ "# @title Plotting function for optimisation -- run this cell but there is no need to look at the code\n", "\n", "\n", "def gen_plots(params):\n", "\n", " q_covariance = get_Sig(params, min_diag=1e-6)\n", " q_mu = params[\"w\"]\n", "\n", " fig, ax = plt.subplots(1, 2, dpi=180, figsize=(10, 4))\n", "\n", " loss_landscape = ax[0].pcolormesh(\n", " x0_grid,\n", " x1_grid,\n", " -loss_grid,\n", " vmin=-loss_grid.min() * 5,\n", " vmax=-loss_grid.min(),\n", " cmap=\"viridis\",\n", " ) #\n", " plot_log_gaussian_ellipse(\n", " ax=ax[0],\n", " mean=mu,\n", " cov=covariance,\n", " color=\"r\",\n", " alpha=1,\n", " lw=1,\n", " label=\"exact posterior\",\n", " MAP_size=25,\n", " std_levels=[1, 2, 4, 6],\n", " )\n", " plot_log_gaussian_ellipse(\n", " ax=ax[0],\n", " mean=q_mu,\n", " cov=q_covariance,\n", " color=\"cyan\",\n", " alpha=1,\n", " lw=1,\n", " label=\"variational posterior\",\n", " MAP_size=25,\n", " std_levels=[1, 2, 4, 6],\n", " )\n", "\n", " cbar = fig.colorbar(loss_landscape, ax=ax[0])\n", " cbar.set_label(\"Regularised Loss\", rotation=270, labelpad=20)\n", " ax[0].set_ylabel(\"w\")\n", " ax[0].set_xlabel(\"b\")\n", " ax[0].grid(alpha=0.3)\n", " ax[0].legend()\n", " ax[0].set_ylim([-8, 8])\n", " ax[0].set_xlim([-8, 8])\n", " ax[0].set_title(\"comparing posteriors in weight space\")\n", "\n", " # Plot posterior predictive\n", "\n", " x_pred = jnp.linspace(-4, 4, 201)\n", " X_pred = affine_basis(x_pred)\n", "\n", " xlim = [jnp.min(x_data_list_outlier) - 1, jnp.max(x_data_list_outlier) + 1]\n", " ylim = [jnp.min(y_data_list_outlier) - 1, jnp.max(y_data_list_outlier) + 1]\n", "\n", " predictive_mean, predictive_std = BLR_predictions(X_pred, mu, covariance)\n", " q_predictive_mean, q_predictive_std = BLR_predictions(X_pred, q_mu, q_covariance)\n", "\n", " errorfill(\n", " x_pred,\n", " predictive_mean,\n", " predictive_std,\n", " color=\"red\",\n", " alpha_fill=0.2,\n", " line_alpha=1,\n", " ax=ax[1],\n", " lw=2,\n", " linestyle=\"-\",\n", " fill_linewidths=0.2,\n", " marker=None,\n", " markersize=1,\n", " label=\"exact predictive posterior\",\n", " markevery=None,\n", " )\n", "\n", " errorfill(\n", " x_pred,\n", " q_predictive_mean,\n", " q_predictive_std,\n", " color=\"cyan\",\n", " alpha_fill=0.2,\n", " line_alpha=1,\n", " ax=ax[1],\n", " lw=2,\n", " linestyle=\"-\",\n", " fill_linewidths=0.2,\n", " marker=None,\n", " markersize=1,\n", " label=\"variational predictive posterior\",\n", " markevery=None,\n", " )\n", "\n", " ax[1].plot(x_data_list_outlier, y_data_list_outlier, \"ob\")\n", " ax[1].set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=xlim, ylim=ylim)\n", " ax[1].grid(alpha=0.3)\n", " ax[1].legend()\n", " ax[1].set_title(\"comparing posteriors in funciton space\")\n", "\n", " plt.tight_layout()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "GcdI9d22ECY6" }, "outputs": [], "source": [ "# @title Run me to train variational distribution on linear regression task\n", "\n", "\n", "Gaussian_ELBO = gen_Gaussian_ELBO(\n", " model=vmap_linear, alpha=alpha, ll_func=gaussian_ll, Nsamples=1000\n", ")\n", "\n", "\n", "params = initialize_params(D=2, key=random.PRNGKey(0))\n", "\n", "objective = jit(\n", " partial(Gaussian_ELBO, X=affine_basis(x_data_list_outlier), y=y_data_list_outlier)\n", ")\n", "\n", "\n", "optimised_regularised_params = optimise(\n", " objective,\n", " params=params,\n", " plotting_func=gen_plots,\n", " LR=5e-3,\n", " MAX_STEPS=1500,\n", " LOG_EVERY=50,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "vBE9-bB9yVMO" }, "source": [ "**Group task** `Base` - Discuss with a neighbour and / or tutor:\n", "\n", "* Under what conditions does our variational inference algorithm recover the true posterior, i.e. $q(\\color{blue}{\\underline{w}})= p(\\color{blue}{\\underline{w}} | X, \\underline{y})$? Did we recover the exact posterior here?\n", "\n", "* Do you think we can overfit with this variational inference algorithm? Why?\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "eoJmOtd2EJMN" }, "source": [ "## Lets approximate the Logistic regression posterior with variational inference\n", "\n", "Now that we have verified that our black box variational inference algorithm does the right thing, lets try to apply it for the logistic regression problem.\n", "\n", "Remember from [Section 2](#S2) that in logistic regression we are targettting a non-Gaussian posterior that is proportional to \n", "\n", "
\n", "$p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}}) = \\prod_{n=1}^N Bern(y_n ; \\phi(x_n \\color{blue}{\\underline{w}})) \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I)$\n", "
\n", "\n", "Lets run our same variational inference algorithm and see how it performs" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "JiHDAtE7ymKH" }, "outputs": [], "source": [ "# @title pre-compute loss surface and make plotting function -- run this cell but there is no need to look at the code\n", "\n", "alpha = 0.75\n", "\n", "\n", "def generate_loss_fun():\n", " def loss_fun(w):\n", " return logistic_regression_loss(\n", " X=affine_basis(x_data_list_classification),\n", " y=y_data_list_classification,\n", " vmap_model=vmap_linear,\n", " w=w,\n", " alpha=alpha,\n", " )\n", "\n", " return loss_fun\n", "\n", "\n", "loss_fun = generate_loss_fun()\n", "\n", "x0_grid, x1_grid, loss_grid = generate_loss_grid(\n", " loss_fun=loss_fun, grid_size=200, lim0=[-8, 8], lim1=[-6, 10]\n", ")\n", "\n", "\n", "def gen_plots(params):\n", "\n", " # Plot loss landscape and variational distribution\n", " q_covariance = get_Sig(params, min_diag=1e-6)\n", " q_mu = params[\"w\"]\n", "\n", " x_pred = np.linspace(-4, 4, 100)\n", " X_pred = affine_basis(x_pred)\n", "\n", " Nsamples = 20\n", " q_parameter_samples = jax.random.multivariate_normal(\n", " key, q_mu, q_covariance, shape=(Nsamples,)\n", " )\n", " q_sample_preds = vmap_linear(X_pred, q_parameter_samples.T)\n", " q_prob_samples = jax.nn.sigmoid(q_sample_preds)\n", "\n", " fig, ax = plt.subplots(1, 2, dpi=160, figsize=(10, 4))\n", "\n", " loss_landscape = ax[0].pcolormesh(\n", " x0_grid,\n", " x1_grid,\n", " -loss_grid,\n", " vmin=-loss_grid.min() * 10,\n", " vmax=-loss_grid.min(),\n", " cmap=\"viridis\",\n", " ) #\n", "\n", " plot_log_gaussian_ellipse(\n", " ax=ax[0],\n", " mean=q_mu,\n", " cov=q_covariance,\n", " color=\"cyan\",\n", " alpha=1,\n", " lw=1,\n", " label=\"variational posterior\",\n", " MAP_size=25,\n", " std_levels=[1, 2, 4, 6],\n", " )\n", "\n", " ax[0].scatter(\n", " q_parameter_samples[:, 0],\n", " q_parameter_samples[:, 1],\n", " 5,\n", " c=\"cyan\",\n", " label=\"samples\",\n", " )\n", " cbar = fig.colorbar(loss_landscape, ax=ax[0])\n", " cbar.set_label(\"Regularised Loss\", rotation=270, labelpad=20)\n", " ax[0].set_ylabel(\"w\")\n", " ax[0].set_xlabel(\"b\")\n", " ax[0].grid(alpha=0.3)\n", " ax[0].legend()\n", " ax[0].set_ylim([-6, 10])\n", " ax[0].set_xlim([-8, 8])\n", " ax[0].set_title(\"evaluating variational Bayesian posterior \\n in weight space\")\n", "\n", " for i, sample in enumerate(q_prob_samples.T):\n", " if i == 0:\n", " ax[1].plot(\n", " x_pred,\n", " sample,\n", " \"-\",\n", " color=\"cyan\",\n", " lw=0.4,\n", " alpha=0.4,\n", " label=\"sample class probability\",\n", " )\n", " ax[1].plot(x_pred, sample, \"-\", color=\"cyan\", lw=0.4, alpha=0.4)\n", "\n", " ax[1].plot(\n", " x_pred,\n", " q_prob_samples.mean(axis=1),\n", " \"--\",\n", " color=\"cyan\",\n", " lw=2,\n", " label=\"variational posterior class probabilities\",\n", " )\n", "\n", " mode_predictions = sigmoid(\n", " vmap_linear(affine_basis(x_pred), optimised_regularised_classification_params)\n", " )\n", " ax[1].plot(x_pred, mode_predictions, c=\"red\", label=\"optimised class probabilities\")\n", "\n", " # Plot posterior predictive\n", "\n", " ax[1].plot(x_data_list_classification, y_data_list_classification, \"ob\")\n", " ax[1].set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=xlim, ylim=[-0.1, 1.1])\n", " ax[1].grid(alpha=0.3)\n", " ax[1].legend()\n", " ax[1].set_title(\n", " \"comparing regularised solution and \\n variational Bayesian solution in function space\"\n", " )\n", "\n", " plt.tight_layout()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "PFVX1IljECfP" }, "outputs": [], "source": [ "# @title Run me to train variational distribution on logistic regression task\n", "\n", "\n", "Gaussian_ELBO = gen_Gaussian_ELBO(\n", " model=vmap_linear, alpha=alpha, ll_func=bernouilli_ll, Nsamples=100\n", ") # Nottice we use the bernoulli likelihood now\n", "\n", "\n", "params = initialize_params(D=2, key=random.PRNGKey(0))\n", "\n", "objective = jit(\n", " partial(\n", " Gaussian_ELBO,\n", " X=affine_basis(x_data_list_classification),\n", " y=y_data_list_classification,\n", " )\n", ")\n", "\n", "\n", "optimised_regularised_params = optimise(\n", " objective,\n", " params=params,\n", " plotting_func=gen_plots,\n", " LR=5e-3,\n", " MAX_STEPS=2000,\n", " LOG_EVERY=50,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "46aAuXhXkOcY" }, "source": [ "**Group task** `Base` - Discuss with a neighbour and / or tutor:\n", "\n", "* How many parameters are we learning when we perform variational inference?\n", "\n", "* Are we reaching exact posterior in the logistic regression case?\n", "\n", "* What are potential drawbacks of our variational inference algorithm?\n", "\n", "* How does the variational posterior predictive class probability compare with the regularised optimisation solution? Is it more or less confident?\n", "\n", "* Do all the samples represent reasonable solutions? If not, why?" ] }, { "cell_type": "markdown", "metadata": { "id": "Y6pNsO1oJ9dV" }, "source": [ "## Takeaways\n", "\n", "* We have implemented black box variational inference using a Gaussian variationa posterior. This algorithm allows us to **approximate any model's posterior** distribution with a Gaussian variational posterior, thus the name ''black box''.\n", "\n", "* When the true posterior is Gaussian, our variational distribution will recover it exactly. When the true posterior is not Gaussian, then our variational distribution will choose the closest Gaussian in a KL divergence sense.\n", "\n", "* Since our optimisation is minimising the KL divergence to the true posterior, optimising more can only get us closer to the true posterior. We can not overfit with variational inference. \n", "\n", "## End of Section\n", "\n", "The rest of the section contains more advanced optional contents. You can skip to [Section 4](#S4) if you want." ] }, { "cell_type": "markdown", "metadata": { "id": "Pxh4QTJ2G-7T" }, "source": [ "**Group task** (Optional) `Intermediate` - Discuss with a neighbour and / or tutor:\n", "\n", "Remember that in the linear regression case we estimated both a predictive mean and predictive standard deviation from samples. In logistic regression, each sample provides us with a curve of class probability. We have computed the variational predictive mean class probability as the average of these probabilities and shown it with the dashed cyan line.\n", "\n", "* Does it make sense to return standard deviation over samples like we did in the regression case? \n", "\n", "* How should we combine information from samples in logistic regression?\n" ] }, { "cell_type": "markdown", "metadata": { "id": "HmacEbJ0Zw9M" }, "source": [ "# Section 4: Bayesian Neural Networks \n", "\n", "Now that we have our black-box VI algorithm coded up, its time to appy it to neural networks. We are going to see that when switching from linear and logistic regression to deep models, things become complicated fast.\n", "\n", "This is the final core section of this prac. Spend as much time as you want on it but keep in mind that there is an **additional optional section 5 at the end where you can learn about Hamiltonian Monte Carlo**." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "ZlVqE2wMIxCq" }, "outputs": [], "source": [ "# @title Lets start with a very simple dataset, one that is very close to the indentity function $\\,\\,y=x$\n", "\n", "x_data_list_identity = jnp.array([-2, -1.8, -1, 2, 2, 2.1])\n", "y_data_list_identity = jnp.array([-2, -1.9, -1, 2, 1.9, 2.1])\n", "\n", "plot_basic_data(x_data_list_identity, y_data_list_identity, ylim=[-3, 3])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4ed8Wt0AOJnf" }, "outputs": [], "source": [ "# @title Lets start with a very basic NN\n", "# @markdown Specifically, a 1 hidden layer, & 1 hidden unit NN with no non-linearity: $f(x, \\color{blue}{\\underline{w}}) = \\color{blue}{\\underline{w}_{1}} \\color{blue}{\\underline{w}_{0}} x$\n", "\n", "# @markdown This model is linear in the inputs and weights.\n", "\n", "\n", "def NN(x, params):\n", " return params[1] * params[0] * x\n", "\n", "\n", "vmap_NN = jit(vmap(NN, in_axes=(0, None)))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "9s1cnEsgZ-9-" }, "outputs": [], "source": [ "# @title ## Plot the loss landscape. It is non-convex. Its multimodal!\n", "# @markdown Even though we are trying to learn a simple identity function with a linear NN.\n", "\n", "# @markdown This is due to the symmetries in the weight space between $\\color{blue}{\\underline{w}_{1}}$ and $\\color{blue}{\\underline{w}_{0}}$. You can flip these weights around and obtain the same solution!\n", "\n", "\n", "alpha = 1\n", "\n", "\n", "def generate_loss_fun():\n", " def loss_fun(w):\n", " return regularised_linear_regression_loss(\n", " X=x_data_list_identity,\n", " y=y_data_list_identity,\n", " w=w,\n", " vmap_model=vmap_NN,\n", " alpha=alpha,\n", " )\n", "\n", " return loss_fun\n", "\n", "\n", "loss_fun = generate_loss_fun()\n", "\n", "x0_grid, x1_grid, loss_grid = generate_loss_grid(\n", " loss_fun=loss_fun, grid_size=300, lim0=[-5, 5], lim1=[-5, 5]\n", ")\n", "\n", "fig = plt.figure(dpi=130)\n", "loss_landscape = plt.pcolormesh(\n", " x0_grid,\n", " x1_grid,\n", " -loss_grid,\n", " vmin=-loss_grid.min() * 5,\n", " vmax=-loss_grid.min(),\n", " cmap=\"viridis\",\n", ") #\n", "\n", "plt.xlabel(\"w0\")\n", "plt.ylabel(\"w1\")\n", "ax = [plt.gca()]\n", "cbar = fig.colorbar(loss_landscape, ax=ax[0])\n", "cbar.set_label(\"Regularised Loss\", rotation=270, labelpad=20)\n", "plt.title(\"Simple linear NN loss landsape\")\n", "plt.grid(alpha=0.3)" ] }, { "cell_type": "markdown", "metadata": { "id": "T4p0hCdqbhYV" }, "source": [ "## Our unimodal Gaussian approximation will struggle with the multimodal posterior but lets apply the black box variational inference algorithm anyway!" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "rKo7u2htToma" }, "outputs": [], "source": [ "# @title define plotting method -- run this cell but there is no need to look at the code\n", "\n", "\n", "def gen_plots(params):\n", " # Plot loss landscape and variational distribution\n", " q_covariance = get_Sig(params, min_diag=1e-6)\n", " q_mu = params[\"w\"]\n", "\n", " fig, ax = plt.subplots(1, 2, dpi=160, figsize=(10, 4))\n", "\n", " loss_landscape = ax[0].pcolormesh(\n", " x0_grid,\n", " x1_grid,\n", " -loss_grid,\n", " vmin=-loss_grid.min() * 5,\n", " vmax=-loss_grid.min(),\n", " cmap=\"viridis\",\n", " ) #\n", " plot_log_gaussian_ellipse(\n", " ax=ax[0],\n", " mean=q_mu,\n", " cov=q_covariance,\n", " color=\"cyan\",\n", " alpha=1,\n", " lw=1,\n", " label=\"variational posterior\",\n", " MAP_size=25,\n", " std_levels=[1, 2, 4, 6],\n", " )\n", " ax[0].set_ylabel(\"w\")\n", " ax[0].set_xlabel(\"b\")\n", " ax[0].grid(alpha=0.3)\n", " ax[0].legend()\n", " ax[0].set_ylim([-5, 5])\n", " ax[0].set_xlim([-5, 5])\n", " cbar = fig.colorbar(loss_landscape, ax=ax[0])\n", " cbar.set_label(\"Regularised Loss\", rotation=270, labelpad=20)\n", " ax[0].set_title(\"variational distribution fit to true posterior\")\n", "\n", " # Plot posterior predictive\n", "\n", " x_pred = np.linspace(-5, 5, 100)\n", " Nsamples = 20\n", " q_parameter_samples = jax.random.multivariate_normal(\n", " key, q_mu, q_covariance, shape=(Nsamples,)\n", " )\n", " q_sample_preds = vmap_NN(x_pred, q_parameter_samples.T)\n", "\n", " for i, sample in enumerate(q_sample_preds.T):\n", " if i == 0:\n", " ax[1].plot(\n", " x_pred,\n", " sample,\n", " \"-\",\n", " color=\"cyan\",\n", " lw=0.4,\n", " alpha=1,\n", " label=\"sample predictions\",\n", " )\n", " ax[1].plot(x_pred, sample, \"-\", color=\"cyan\", lw=0.4, alpha=1)\n", "\n", " errorfill(\n", " x_pred,\n", " q_sample_preds.mean(axis=1),\n", " q_sample_preds.std(axis=1),\n", " color=\"cyan\",\n", " alpha_fill=0.2,\n", " line_alpha=1,\n", " ax=ax[1],\n", " lw=2.5,\n", " linestyle=\"--\",\n", " fill_linewidths=0.2,\n", " marker=None,\n", " markersize=1,\n", " label=\"preditive mean\",\n", " markevery=None,\n", " )\n", "\n", " ax[1].plot(x_data_list_identity, y_data_list_identity, \"ob\")\n", " ax[1].set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=[-3, 3], ylim=[-4, 4])\n", " ax[1].grid(alpha=0.3)\n", " ax[1].set_title(\"Predictive posterior fit\")\n", " ax[1].legend()\n", "\n", " plt.tight_layout()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "8oUNOkcHRg1f" }, "outputs": [], "source": [ "# @title **Plotting task** `Base` Try setting `large_init` to both true and false and optimising the variational parameters.\n", "# @markdown What changes?\n", "\n", "large_init = True # @param ['True', 'False'] {type:\"raw\"}\n", "\n", "Gaussian_ELBO = gen_Gaussian_ELBO(\n", " model=vmap_NN, alpha=alpha, ll_func=gaussian_ll, Nsamples=100\n", ")\n", "\n", "\n", "params = initialize_params(D=2, key=random.PRNGKey(42))\n", "if large_init:\n", " params[\"w\"] = params[\"w\"] * 5\n", "\n", "\n", "objective = jit(partial(Gaussian_ELBO, X=x_data_list_identity, y=y_data_list_identity))\n", "\n", "\n", "optimise(\n", " objective,\n", " params=params,\n", " plotting_func=gen_plots,\n", " LR=5e-3,\n", " MAX_STEPS=2000,\n", " LOG_EVERY=50,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "ugV_8P7eUY1v" }, "source": [ "\n", "\n", "**Group task `Base`** - Discuss with a neighbour and / or tutor:\n", "\n", "* What parameter settings, i.e. values of $\\color{blue}{\\underline{w}_{1}}$ & $\\color{blue}{\\underline{w}_{0}}$ lead usto recover the identity function?\n", "\n", "* Has your experimentation with the `large_init` option led you to discover a potential failure mode of our black box variational inference algorithm?\n", "\n", "* When we do converge to one of the modes, does it matter which one we converge to? Are both the same?\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "e3JzXp74Z_po" }, "source": [ "## Exploring the limitations of Variational Inference for BNNs \n", "\n", "\n", "Now that we have seen a potential issue that can stem from multimodal loss landscapes, lets try a slightly more realistic example: a 4 parameter neural network complete with weights and biases. We will try to fit the same identity dataset." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1aLad3ceagHh" }, "outputs": [], "source": [ "# @title Our NN is now $f(x, \\color{blue}{\\underline{w}}) = \\color{blue}{w_1} \\text{ReLU}(\\color{blue}{w_0} x + \\color{blue}{b_0}) + \\color{blue}{b_1}$\n", "\n", "\n", "def NN(x, params):\n", " return params[2] * jax.nn.relu(x * params[0] + params[1]) + params[3]\n", "\n", "\n", "vmap_NN = jit(vmap(NN, in_axes=(0, None)))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "-UdB8aKXmf5f" }, "outputs": [], "source": [ "# @title plot generation code -- run this cell but there is no need to look at the code\n", "\n", "\n", "def gen_plots(params):\n", " # Plot loss landscape and variational distribution\n", " q_covariance = get_Sig(params, min_diag=1e-6)\n", " q_MAP = params[\"w\"]\n", "\n", " # Plot posterior predictive\n", "\n", " x_pred = np.linspace(-5, 5, 100)\n", " Nsamples = 20\n", " q_parameter_samples = jax.random.multivariate_normal(\n", " key, q_MAP, q_covariance, shape=(Nsamples,)\n", " )\n", " q_sample_preds = vmap_NN(x_pred, q_parameter_samples.T)\n", "\n", " plt.figure(dpi=120)\n", "\n", " ax = plt.gca()\n", "\n", " for i, sample in enumerate(q_sample_preds.T):\n", " if i == 0:\n", " ax.plot(\n", " x_pred,\n", " sample,\n", " \"-\",\n", " color=\"cyan\",\n", " lw=0.4,\n", " alpha=1,\n", " label=\"sample predictions\",\n", " )\n", " ax.plot(x_pred, sample, \"-\", color=\"cyan\", lw=0.4, alpha=1)\n", "\n", " errorfill(\n", " x_pred,\n", " q_sample_preds.mean(axis=1),\n", " q_sample_preds.std(axis=1),\n", " color=\"cyan\",\n", " alpha_fill=0.2,\n", " line_alpha=1,\n", " ax=ax,\n", " lw=2.5,\n", " linestyle=\"--\",\n", " fill_linewidths=0.2,\n", " marker=None,\n", " markersize=1,\n", " label=\"preditive mean\",\n", " markevery=None,\n", " )\n", "\n", " ax.plot(x_data_list_identity, x_data_list_identity, \"ob\")\n", " ax.set_title(\"Predictive posterior fit\")\n", " ax.set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=[-3, 3], ylim=[-4, 4])\n", " plt.grid(alpha=0.3)\n", " plt.legend()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "SFzQ6da2agCT" }, "outputs": [], "source": [ "# @title **Plotting task** `Base`: Optimise the variational parameters with different seeds\n", "# @markdown We cant plot the loss landscape anymore because it is 4 dimensional. But we can always plot the predictive posterior\n", "\n", "# @markdown Try using different seeds: 0 and 42\n", "\n", "alpha = 0.1\n", "\n", "Gaussian_ELBO = gen_Gaussian_ELBO(\n", " model=vmap_NN, alpha=alpha, ll_func=gaussian_ll, Nsamples=100\n", ")\n", "\n", "Seed = 43 # @param {type:\"integer\"}\n", "\n", "params = initialize_params(D=4, key=random.PRNGKey(Seed))\n", "\n", "\n", "objective = jit(partial(Gaussian_ELBO, X=x_data_list_identity, y=y_data_list_identity))\n", "\n", "optimise(\n", " objective,\n", " params=params,\n", " plotting_func=gen_plots,\n", " LR=2e-3,\n", " MAX_STEPS=3000,\n", " LOG_EVERY=50,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "9K233sZpWruk" }, "source": [ "\n", "**Group task `Base`**: Discuss with a neighbour and / or tutor:\n", "\n", "* How do the solutions found by the seeds 0 and 42 differ? What does this tell you about the loss landscape?\n", "\n", "* Can you think up with a setting of the parameters ($b_0, w_0, b_1, w_1$) that recovers the identity?\n", "\n", "* Why doesnt our optimiser find this configuration?\n", "\n", "* Do the errorbars look reasonable?\n", "\n", "* Do you think that our black box variational inference algorithm is a good tool for use with neural network models? How could it be improved? \n", " * Hint: what if we averaged the solutions obtained with seeds 0 and 42?" ] }, { "cell_type": "markdown", "metadata": { "id": "5uOjjqT7pV41" }, "source": [ "## Takeaways\n", "\n", "* Deep architectures result in multimodal loss functions and posteriors. This poses a challenge for our black box variational inference algorithm.\n", "\n", "* Potential issues that may arise are: \n", " 1. the optimiser getting stuck in a local optima between modes where a lot of variational posterior mass is placed in high loss regions and thus we obtain a poor data fit.\n", " 2. the optimiser identifying a mode of the loss that corresponds to an overly complicated solution that will not generalise: like fitting our \"identity\" dataset with an angled line.\n", "\n", "## -- End of Prac --\n", "\n", "The [next section](#S5) contains more advanced optional contents. You can skip to the [conclusions](#C) if you want." ] }, { "cell_type": "markdown", "metadata": { "id": "I_i353LzETrQ" }, "source": [ "# Section 5: Hamiltonian Monte Carlo (Optional) - `Intermediate` \n", "\n", "In the previous section, our Gaussian variational distribution was only able to identify individual modes of the posterior distribution and these often corresponded to poor predictions or poor errorbars.\n", "\n", "Now, we will look at an approach for approximate Bayesian inference which is capable of working well even with multimodal posteriors: Hamiltonian Monte Carlo (HMC). This sampling method was introduced in [Radford Neal's thesis](https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.446.9306&rep=rep1&type=pdf). HMC is designed to try to reach as many modes of the posterior as possible, giving an accurate approximation even for deep networks.\n", "We will not cover the math behind this method in detail but we will explain how to use it. \n", "\n", "To use HMC, we just require access to an unnormalised posterior density, i.e. a loss function. As we saw in [Section 1](#S1), we already have this in the form of our regularised least squares objective: \n", "\n", "
\n", "$\\log \\left( p(\\underline{y} | X, \\color{blue}{\\underline{w}}) p(\\color{blue}{\\underline{w}}) \\right) = \\log \\left( \\mathcal{N}(\\underline{y}; X\\cdot \\color{blue}{\\underline{w}}, I) \\mathcal{N}(\\color{blue}{\\underline{w}}; 0, \\alpha^{-1} I)\\right)= \\frac{-1}{2}||\\underline{y} - X\\cdot \\color{blue}{\\underline{w}}||_{2}^2 + \\frac{-\\alpha}{2} ||\\color{blue}{\\underline{w}}||^2_2 + C$\n", "
\n", "\n", "\n", "\n", "As a Monte Carlo method, HMC will provide us with samples from the posterior $p(\\color{blue}{\\underline{w}} | X, \\underline{y})$. We can then use these samples to estimate quantities of interest. In our case this will be the predictive mean and predictive standard deviation.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "3yn2ybsPotYd" }, "source": [ "We are going to use [NumPyro](https://github.com/pyro-ppl/numpyro) an HMC library that works with jax." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "bux8haYJSdGn" }, "outputs": [], "source": [ "# @title Here we define our numpyro model\n", "\n", "# @markdown We specify a priors over our weights n with `numpyro.sample(\"w\"...)` and the likelihood function `numpyro.sample(name=\"err\"..., obs=err)`. The `obs` parameter states that we observe the targets, making this a likelihood funciton.\n", "\n", "# @markdown Although HMC can work with the loss function directly, and numpyro supports this, it is more natural to specify our model in terms of prior and likelihood in numpyro.\n", "\n", "import numpyro\n", "from numpyro.infer import MCMC, NUTS, init_to_value\n", "import numpyro.distributions as dist\n", "\n", "\n", "def NN_numpyro_model(y, X, D, model, alpha):\n", " w = numpyro.sample(\"w\", dist.Normal(jnp.zeros(D), (alpha**-0.5) * jnp.ones(D)))\n", " preds = model(X, w)\n", " err = y - preds\n", " numpyro.sample(name=\"err\", fn=dist.Normal(0, jnp.ones(len(y))), obs=err)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "_pinWVMQzzxp" }, "outputs": [], "source": [ "# @title Code to draw samples -- We use a standard configuraition\n", "\n", "\n", "def draw_samples(\n", " model, warmup, n_samples, thinning, num_chains, init_dict={}, max_tree_depth=12\n", "):\n", "\n", " nuts_kernel = NUTS(\n", " model,\n", " forward_mode_differentiation=False,\n", " max_tree_depth=max_tree_depth,\n", " init_strategy=init_to_value(values=init_dict),\n", " )\n", " mcmc = MCMC(\n", " nuts_kernel,\n", " num_warmup=warmup,\n", " num_samples=n_samples,\n", " thinning=thinning,\n", " num_chains=num_chains,\n", " )\n", " rng_key = random.PRNGKey(0)\n", "\n", " mcmc.run(\n", " rng_key,\n", " )\n", " mcmc.print_summary()\n", " return mcmc.get_samples(group_by_chain=False)\n", "\n", "\n", "alpha = 0.05\n", "\n", "sampling_model = partial(\n", " NN_numpyro_model,\n", " y=y_data_list_identity,\n", " X=x_data_list_identity,\n", " D=4,\n", " model=vmap_NN,\n", " alpha=alpha,\n", ")\n", "samples = draw_samples(\n", " sampling_model, warmup=5000, n_samples=5000, thinning=10, num_chains=1\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "MXR7i1NxyZDv" }, "outputs": [], "source": [ "# @title Lets see the results\n", "\n", "# @markdown We should get a much smoother regression line than with VI\n", "\n", "\n", "sample_preds = vmap_NN(x_pred, samples[\"w\"].T)\n", "\n", "fig, ax = plt.subplots(1, 2, dpi=120, figsize=(9, 4))\n", "\n", "\n", "for i, sample in enumerate(sample_preds.T[::20]):\n", " if i == 0:\n", " ax[0].plot(\n", " x_pred,\n", " sample,\n", " \"-\",\n", " color=\"cyan\",\n", " lw=0.4,\n", " alpha=1,\n", " label=\"sample predictions\",\n", " )\n", " ax[0].plot(x_pred, sample, \"-\", color=\"cyan\", lw=0.4, alpha=1)\n", "\n", "\n", "ax[0].plot(x_data_list_identity, x_data_list_identity, \"ob\")\n", "ax[0].set_title(\"sample predictions\")\n", "ax[0].set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=[-3, 3], ylim=[-4, 4])\n", "ax[0].grid(alpha=0.3)\n", "\n", "errorfill(\n", " x_pred,\n", " sample_preds.mean(axis=1),\n", " sample_preds.std(axis=1),\n", " color=\"cyan\",\n", " alpha_fill=0.2,\n", " line_alpha=1,\n", " ax=ax[1],\n", " lw=2.5,\n", " linestyle=\"--\",\n", " fill_linewidths=0.2,\n", " marker=None,\n", " markersize=1,\n", " label=\"preditive mean\",\n", " markevery=None,\n", ")\n", "\n", "\n", "ax[1].plot(x_data_list_identity, x_data_list_identity, \"ob\")\n", "ax[1].set_title(\"Predictive mean and standard deviation errorbars\")\n", "ax[1].set(xlabel=\"Input x\", ylabel=\"Output y\", xlim=[-3, 3], ylim=[-4, 4])\n", "ax[1].grid(alpha=0.3)\n", "# plt.legend()" ] }, { "cell_type": "markdown", "metadata": { "id": "YBagBCgk2ERY" }, "source": [ "\n", "**Group task `Intermediate`**: Discuss with a neighbour and / or tutor:\n", "\n", "* From the sample predictions, which modes has the sampler found? Has the sampler found all the modes we found with VI? Has the sampler found any new modes that VI failed to find?\n", "\n", "* Do the errorbars look more or less reasonable than those obtained from our VI algorithm?\n", "\n", "* How well do you think this method will scale to neural networks with more parameters, i.e. higher dimensional weight spaces?" ] }, { "cell_type": "markdown", "metadata": { "id": "AQDjHgGI2xlS" }, "source": [ "## Takeaways\n", "\n", "* HMC is a very powerful method that currently represents the state-of-the art for inference accuracy in neural networks. It has usage beyond inference in NNs however. It is a great tool to apply to any problem where we need to sample from multimodal unormalised distributions.\n", "\n", "* However HMC is not perfect. It has serious limitations:\n", " 1. It is not guaranteed to find every posterior mode. For instance, our HMC sampler failed to find the mode in which the function stays flat from -4 to 0 and then turns upward. This limitation gets worse in higher dimensions where different modes can be very far apart and are thus very hard to find.\n", " 2. HMC is expensive to run. Specifically, HMC is a full batch method. For large datasets, each HMC step requires a full pass through the dataset. A standard HMC sampler delivers around 1 sample per 10 steps. This means that we need to make thousands of passes through our full dataset to get a couple hundred samples. This is not possible in modern settings. VI can be minibatched and thus does not suffer from this limitation.\n", "\n", "* HMC is a more accurate but more expensive alternative to VI. Keep this in mind when choosing which algorithm to use for each task.\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "fV3YG7QOZD-B" }, "source": [ "# Prac Conclusion \n", "**Summary:**\n", "\n", "* Bayesian inference differs from traditional loss minimisation learning in that instead of retuning a single best parameter estimate, Bayesian inference returns every possible parameter setting weighed by how well these agree with the prior and the data.\n", "\n", "* The disagreement among plausible parameter settings induces uncertainty in the predictions.\n", "\n", "* Bayesian inference is hard because it requires characterising how well all parameter settings agree with the prior and data, i.e. characterising the posterior distribution. This is only possible to do analyticially in a very reduced range of models, such as the linear-Gaussian case.\n", "\n", "* When the exact posterior is not tractable, we have to resort to approximations, such as variational inference or HMC. \n", "\n", "* Approximations present a tradeoff between fidelity and computational cost. VI is often cheaper but less accurate while HMC is expensive but accurate.\n", "\n", "**Next Steps:** \n", "\n", "If you enjoyed this prac and want to learn more about Bayesian inference, a great resource is [Pattern Recognition and\n", "Machine Learning](http://users.isr.ist.utl.pt/~wurmd/Livros/school/Bishop%20-%20Pattern%20Recognition%20And%20Machine%20Learning%20-%20Springer%20%202006.pdf) by Chris Bishop. Specifically, Chapters 2 to 5 cover the contents of this prac in more detail: probability distributions (2), linear regression (3), logistic regression (4) and neural networks (5).\n", "\n", "Here are some keystone papers from the field of Bayesian Deep Learning:\n", "\n", "* [David Mackay's thesis](https://www.inference.org.uk/mackay/thesis.pdf) -- Introduces the linearised Laplace approximation\n", "* [Radford Neal's thesis](https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.446.9306&rep=rep1&type=pdf) -- introduces HMC\n", "* [Probabilistic Backpropagation](https://arxiv.org/abs/1502.05336) -- This paper employs a form of variational inference called expectation propagation\n", "* [Bayes by Backprop](https://arxiv.org/abs/1505.05424) -- this one implements the black box VI algorithm that we coded in [Section 3](#S3)\n", "* [Black-box α-divergence Minimization](https://arxiv.org/abs/1511.03243) -- This paper employs a form of variational inference called alpha divergence minimisation\n", "* [Deep Ensembles](https://arxiv.org/abs/1612.01474?context=cs) -- this method does not perform Bayesian inference but it uses a lot of the same techniques as Bayesian inference and it performs very well.\n", "\n", "Currently, the best performing Bayesian Deep Learning method that scales to modern neural networks is [modernised Linearised Laplace](https://arxiv.org/abs/2008.08400). Apart from providing accurate errorbars, this method computes an [estimate of the model evidence for the neural network which can be used to tune hyperparameters](https://arxiv.org/abs/2206.08900).\n", "\n", "\n", "\n", "-----\n", "For other practicals from the Deep Learning Indaba, please visit [here](https://github.com/deep-learning-indaba/indaba-pracs-2022)." ] }, { "cell_type": "markdown", "metadata": { "id": "o1ndpYE50BpG" }, "source": [ "## Feedback\n", "\n", "Please provide feedback that we can use to improve our practicals in the future." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "OIZvkhfRz9Jz" }, "outputs": [], "source": [ "# @title Generate Feedback Form. (Run Cell)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "oglV4kHMWnIN" }, "source": [ "" ] } ], "metadata": { "colab": { "collapsed_sections": [], "name": "Updated_Bayesian_Deep_Learning_Prac.ipynb", "provenance": [] }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 0 } ================================================ FILE: practicals/GNN_practical.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "id": "obBt50HcYEC_" }, "source": [ "# Graph Neural Networks\n", "\n", "\n", "\n", "\"Open\n", "\n", "© Deep Learning Indaba 2022. Apache License 2.0.\n", "\n", "**Authors:**\n", "Matthew Morris, Tom Makkink, and Jama Hussein Mohamud.\n", "\n", "Credit to Lisa Wang and Nikola Jovanović for providing much of the basic [content](https://github.com/deepmind/educational/blob/master/colabs/summer_schools/intro_to_graph_nets_tutorial_with_jraph.ipynb).\n", "\n", "**Introduction:** \n", "\n", "Welcome! Great to have you here at this years Deep Learning Indaba! \n", "\n", "In this tutorial, we will be learning about Graph Neural Networks (GNNs), a topic which has exploded in popularity in both research and industry. We will start with a refresher on graph theory, then dive into how GNNs work from a high level. Next we will cover some popular GNN implementations and see how they work in practice. \n", "\n", "**Topics:** \n", "\n", "Content: `Graph Neural Networks`\n", "\n", "Level: `Advanced`\n", "\n", "\n", "**Aims/Learning Objectives:**\n", "- Understand the theory behind graphs and GNNs\n", "- Implement GCNs\n", "- Implement GATs\n", "- See applications on different datasets\n", "\n", "**Prerequisites:**\n", "\n", "- Some familiarity with Jax (we will be using `jraph`)\n", "- Neural network basics\n", "- Graph theory basics (MIT Open Courseware [slides](https://ocw.mit.edu/courses/1-022-introduction-to-network-models-fall-2018/resources/mit1_022f18_lec2/) by Amir Ajorlou)\n", "\n", "We recommend watching the [Theoretical Foundations of Graph Neural Networks Lecture](https://www.youtube.com/watch?v=uF53xsT7mjc&) by Petar Veličković before attending the practical. The talk provides a theoretical introduction to Graph Neural Networks (GNNs), historical context, and motivating examples.\n", "\n", "**Follow-up Work:**\n", "If you found this interesting, we can recommend this [course](https://web.stanford.edu/class/cs224w/) which covers GNNs in depth.\n", "\n", "**Outline:** \n", "\n", "1. Graphs, networkx\n", "2. Intro to the jraph Library\n", "3. Graph Neural Network Theory\n", "4. Implementing GNN Models\n", "5. Graph Convolutional Network (GCN)\n", "6. Graph Attention Network (GAT)\n", "\n", "Extension 1: Graph Classification on MUTAG (Molecules)\n", "\n", "Extension 2: Link Prediction on CORA (Citation Network)\n", "\n", "**Before you start:**\n", "\n", "For this practical, you can use a GPU to speed up training. To do this, go to the \"Runtime\" menu in Colab, select \"Change runtime type\" and then in the popup menu, choose \"GPU\" in the \"Hardware accelerator\" box." ] }, { "cell_type": "markdown", "source": [ "## Outline" ], "metadata": { "id": "51TEXn_OI4Ee" } }, { "cell_type": "markdown", "source": [ ">[Graph Neural Networks](#scrollTo=obBt50HcYEC_)\n", "\n", ">>[Outline](#scrollTo=51TEXn_OI4Ee)\n", "\n", ">[Setting Up](#scrollTo=X5YbGdwnxzvv)\n", "\n", ">[Introduction](#scrollTo=oNIUlTtXwMio)\n", "\n", ">[Section 1: Graphs, networkx](#scrollTo=EOoFe-B0yLu4)\n", "\n", ">>[Recap of graph fundamentals](#scrollTo=dLiatNhIyP33)\n", "\n", ">>[NetworkX](#scrollTo=l_qsZZCwTFeL)\n", "\n", ">>[Task 1: Graph definition](#scrollTo=lJPfTPTE1woQ)\n", "\n", ">[Section 2: Intro to the jraph Library](#scrollTo=3C5YI9M0vwvb)\n", "\n", ">>>[Representing a graph in jraph](#scrollTo=3C5YI9M0vwvb)\n", "\n", ">>[Inspecting the GraphsTuple](#scrollTo=CnWGPulK_tYE)\n", "\n", ">>[Visualizing the Graph](#scrollTo=l3Pwh9e7d8gN)\n", "\n", ">>[Task 2: GraphsTuple creation](#scrollTo=5d_y992K1u5Q)\n", "\n", ">[Section 3: Graph Neural Network Theory](#scrollTo=WZpm6OM0L7Rc)\n", "\n", ">>[Graph Prediction Tasks](#scrollTo=qc-PDBzFl3Mc)\n", "\n", ">[Section 4: Implementing GNN Models](#scrollTo=aQIneDxJPoCv)\n", "\n", ">>[Implement MLP baseline](#scrollTo=_IFdfAmSDROb)\n", "\n", ">>[Check outputs of update_node_fn with MLP Block](#scrollTo=-rQCaukgyOue)\n", "\n", ">>[Task 3: Custom update functions](#scrollTo=XTukImR1LhUC)\n", "\n", ">[Section 5: Graph Convoutional Network (GCN)](#scrollTo=1sWwBdZ2wqi5)\n", "\n", ">>[Add Symmetric Normalization](#scrollTo=4RCGC0XbkjCV)\n", "\n", ">>[Implementation](#scrollTo=8fNEk9r-7m89)\n", "\n", ">>[Add Self-Edges to Graph (Edges connecting a node to itself)](#scrollTo=nD1Qc7xK-SkI)\n", "\n", ">>[GCN Layer implementation](#scrollTo=qdxzqrpbj-jZ)\n", "\n", ">>>[Test General GCN Layer](#scrollTo=oKxcA6XAza33)\n", "\n", ">>[Task 4: Asymmetric normalization](#scrollTo=fvXd1mVlk1ET)\n", "\n", ">>[Build GCN Model with Multiple Layers](#scrollTo=lha8rbQ78l3S)\n", "\n", ">>[Node Classification with GCN on Karate Club Dataset](#scrollTo=Z5t7kw7SE_h4)\n", "\n", ">>>[Zachary's Karate Club Dataset](#scrollTo=IQ_w2kkWoAq4)\n", "\n", ">>>>[Optimizing the GCN on the Karate Club Node Classification Task](#scrollTo=IQ_w2kkWoAq4)\n", "\n", ">>>>[Dataset loading code](#scrollTo=5SE5DQoXWQJR)\n", "\n", ">>>>[Visualisation](#scrollTo=Pi2DQYzjngR8)\n", "\n", ">>>[GCN Implementation](#scrollTo=afMhKYScQvMp)\n", "\n", ">>>[Task 5: Training a Deeper GCN](#scrollTo=c9PFLF24m9Tp)\n", "\n", ">>>>[5a) 3-Layer GCN](#scrollTo=fBAbrPz7XPCQ)\n", "\n", ">>>>[5b) 5-Layer GCN](#scrollTo=EqHh3t_aYKrk)\n", "\n", ">[Section 6: Graph Attention Network (GAT)](#scrollTo=l2vQsrVCbegT)\n", "\n", ">>[Test GAT Layer](#scrollTo=6t9bNfSA9-HR)\n", "\n", ">>[Train GAT Model on Karate Club Dataset](#scrollTo=anfVGJwBe27v)\n", "\n", ">>[Task 6: Conditioning Attention Coefficients on only the Senders](#scrollTo=NHWNgF5Kgnr1)\n", "\n", ">[Extension 1: Graph Classification on MUTAG (Molecules)](#scrollTo=O5lB0nUHOxgz)\n", "\n", ">>[Setting up the dataset](#scrollTo=M4fkUGb9QvHb)\n", "\n", ">>[Padding Graphs to Speed Up Training](#scrollTo=GrG5HHTPRB2S)\n", "\n", ">>>[Code for Padding](#scrollTo=ZdEMExemdln3)\n", "\n", ">>[Graph Network Model Definition](#scrollTo=439VnH4ER4s-)\n", "\n", ">>[Loss and Accuracy Function](#scrollTo=Yz-H6xudUhNS)\n", "\n", ">>>[Loss function code](#scrollTo=KC2sCBoHd6fm)\n", "\n", ">>[Training and Evaluation Functions](#scrollTo=EsgtgBlDUpWy)\n", "\n", ">>>[Training and evaluation code](#scrollTo=CIGceIcWd-sm)\n", "\n", ">>[Train and Evaluate Model](#scrollTo=zy5bomgTU2jm)\n", "\n", ">[Extension 2: Link Prediction on CORA (Citation Network)](#scrollTo=YOcG4H0ejm5S)\n", "\n", ">>[CORA download code](#scrollTo=Ouk-8vO8eVXd)\n", "\n", ">>[Splitting Edges and Adding \"Negative\" Edges](#scrollTo=JR845LNNl4MB)\n", "\n", ">>>[Adding negative edges code](#scrollTo=bywiz_3MemIq)\n", "\n", ">>[Test the Edge Splitting Function](#scrollTo=7UQqwaqtmiU7)\n", "\n", ">>[Graph Network Model Definition](#scrollTo=VVnURkiDmxzF)\n", "\n", ">>[Loss and ROC-AUC-Metric Function](#scrollTo=VzzbL7DQnFC3)\n", "\n", ">>[Training Loop](#scrollTo=vlqaU-JSffDn)\n", "\n", ">>[Model Evaluation](#scrollTo=2iYqxRy1g3wu)\n", "\n", ">[Conclusion](#scrollTo=aGaoXGp4Id0J)\n", "\n", ">[Feedback](#scrollTo=lBjhlym8DW_K)\n", "\n" ], "metadata": { "colab_type": "toc", "id": "N1yQrObVI7SL" } }, { "cell_type": "markdown", "metadata": { "id": "X5YbGdwnxzvv" }, "source": [ "\n", "# Setting Up\n", "Run the following cells to install the necessary packages." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "a0xH1XY7vG-_" }, "outputs": [], "source": [ "# @title Jraph imports (run cell)\n", "%%capture\n", "!pip install git+https://github.com/deepmind/jraph.git\n", "!pip install flax\n", "!pip install dm-haiku\n", "!pip install networkx" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "CYGt_xDsy6Xr" }, "outputs": [], "source": [ "# @title Imports (run cell)\n", "%matplotlib inline\n", "\n", "import warnings\n", "warnings.simplefilter(action='ignore', category=FutureWarning)\n", "\n", "import functools\n", "import matplotlib.pyplot as plt\n", "import jax\n", "import jax.numpy as jnp\n", "import jax.tree_util as tree\n", "import jraph\n", "import flax\n", "import haiku as hk\n", "import optax\n", "import pickle\n", "import numpy as onp\n", "import networkx as nx\n", "from typing import Any, Callable, Dict, List, Optional, Tuple" ] }, { "cell_type": "markdown", "metadata": { "id": "oNIUlTtXwMio" }, "source": [ "# Introduction \n", "\n", "Graphs are a powerful and general representation of data with a wide range of applications. You have probably seen some these applications before, such as social networks. Another popular application of graphs is molecular modelling. \n", "Molecules naturally lend themselves to graph representation, whereby atoms are nodes and covalent bonds edges. An example the Citronellal molecule, which is used to give citronella oil its distinctive lemon scent, is illustrated below. \n" ] }, { "cell_type": "markdown", "metadata": { "id": "87gmC4bywYyQ" }, "source": [ "![Screenshot from 2022-07-05 14-32-37.png](data:image/png;base64,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XnvtNTZu3EhHRwdz586lo6ODu+66i6uvvpqf//znXHzxxRNSbuBkEN9XnRxrszh+oqv3DvjJLgInu+kK9ibgF9htOKfYuNiZyNyLbUxPSWR6SuQpZGFhId/73ve4/fbbee6554b9/Y9//COrV69m375943lo5ywl5yIiIiIiIjHw8ssvc/vtt/Pss89SXFw86G8//elPKSgooKqq6owT9ONmF3//yuLvJ7poPdH/CHrv4+dxcXFMmxLPBck2nMk2vjl9Cq4UgxlTbVxgH7808bnnnuOHP/whl112Gbfffju5ubn4/X5ee+01/vjHP1JRUcGVV145buWdy5Sci4iIiIiIRFlHRwdr167l97//Pddcc82wvz/44IP09PSwfv16XnzxxRH3c6yti78HOvGZvXfA/WY3X57sou1kN4kJcUxLtuFMTuDCZIPs9GSmpxjMmJpIypTofXHXs88+y1tvvcXOnTvZt28fKSkpXHnllfzqV79i6tSpUavHZKfkXEREREREJMrKysooKCgImZj3+8///E+mz5jBuwf/L8kXXkyL2cVxs4svT/Q+gt7W0Y3d6H0B2wXJNi6027jkwqTex8+n2ZhimzzfnL148WIWL14c62pMakrORUREREREouy9996joKBg1O3yFlzJ1t/v46olN+C027gw2ca3XFNwTTO4aFoikyj/lrOk5FxERERERCTKOjs7mTJlyqjbOVKSuTY7hRVXXhSF6H4ziwAAIABJREFUWkks6TqLiIiIiIhIlOXk5PDBBx+Mut3BgwfJzs6OQo0k1nTnXERkkggGgwSDQSzLilp50Sqru7ubrq4uenp6olZWNI6tq6uL7u7uqPZZV1dXVMrqCQaxEYS4iS8rgeB522f94zEubuIbsn98RKusYDA44eWInM+Ki4u5/PLLuffee/nGN74RcpsXX3yRqVOnMm/evCjXTmJBybmIyCQRDAY5ceIEJ06ciFqZbW1tUSnHsiza29ujUpZpmlG78NBfRrTasaurK2plNX95gm9PjycubuIfsjOIp6Ojg+7u7gkvqz+pjFY71jR+yZGv/EQhXybVsFgyJ52Ojo6JLwyichFA5Hw2e/ZsfvKTn/CDH/yA3/3ud8MS9Ndee40f/vCHVFZWxqiGEm1KzkVEJgmbzca0adOw2+0TXlYwGOT48eOkpqZOeFnQe/dw2rRp2GwT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kRhTci4iIiIiIiISY0rORURERERERGJMybmIiIiIiIhIjCk5FxEREREREYkxJeciIiIiIiIiMabkXERERERERCTG9D3nIiJnobvlr7y59106cldwfa799O+q/kprNySlz+P7/zSbaTGup4iIiIhMbrpzLiJypqy/UX3gS1wZqQN+aVJ/oIFpV93IzTcvZ27XB7z3aXfMqigiIiIi5wYl5yIiZ8qYRf61+Xxz6oDfWUc52nYR33QlAInMmpWK76gvVjUUERERkXOEknMRkTOWQELCkF91mnQk2knqi64JdjvdponunYuIiIhIOErORURERERERGJMybmIyHiaYiep08QM9v7YbZok2O0MvcEuIiIiIjKQknMRkfGUMJOZ077gb8e6gU7+9ulXpLtdsa6ViIiIiExy+io1EZEz9fdaXnnrY746+RVmfCUv1V/EvOu/T86CbN5862Ve6oakb1xBoVv3zUVEREQkPCXnIiJnarqH62/2DP/9lO9QeON3ol8fERERETln6bF2ERERERERkRhTci4iIiIiIiISY0rORURERERERGJMybmIiIiIiIhIjCk5FxEREREREYkxJeciIiIiIiIiMabkXERERERERCTGlJyLiIiIiIiIxJgt1hUQEZHBOjs7z8uygsHgeXdsPT09USurn2VZUSurp6fnvOuzYDAYtbL62eKCUSqp955LNI9NRETGj5JzEZFJJC4uju7u7qiUZbPZolqWZVnEx0fngS3LsrDZJv4U193dTTAYjFo7GoYRtbLi4+Pp6OiISjv2t2FcXFxUyormPMvOSOH/vSSNKBwaXZ2dUeszEREZf3E9/Zf9RURERERERCQm9JlzERERERERkRhTci4iIiIiIiISY0rORURERERERGJMybmIiIiIiIhIjCk5FxEREREREYkxJeciIiIiIiIiMabkXERERERERCTGlJyLiIiIiIiIxJiScxEREREREZEYU3IuIiIiIiIiEmNKzkVERERERERiTMm5iIiIiIiISIwpORcRERERERGJMSXnIiIiIiIiIjGm5FxEREREREQkxpSci4iIiIiIiMSYknMRERERERGRGFNyLiIiIiIiIhJjSs5FREREREREYkzJuYiIiIiIiEiMKTkXERERERERibGJT85NEzM44aVgtZlY47c3zMB47k8mDcsk0PZ161mLwFEvPrPv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)\n", "\n", "\n", "*Image source: [A Gentle Introduction to Graph Neural Networks](https://distill.pub/2021/gnn-intro/)*" ] }, { "cell_type": "markdown", "metadata": { "id": "7I3dArAEwfcU" }, "source": [ "This example illustrates a powerful aspect of graphs, whereby the structure of the molecule is explicitly encoded into the graph representation itself. For example, which atoms are connected and how they are connected. Using this graph representation, we can accomplish a variety of different tasks. For example, in drug discovery we may be interested in testing whether different molecules bind together. \n", "\n", "There are several other applications of graphs that may surprise you, such as images! An image can be thought of as a graph with regular structure, whereby each pixel is a node with a 3-dimensional vector representing the RGB value of the pixel. Other examples include publication citation networks, whereby we can represent each paper as a node and each edge as a citation between papers.\n", "\n", "**Group Discussion:** *What other real-world examples of graphs can you think of?*\n", "\n", "Having introduced graphs, lets go over some graph theory basics. " ] }, { "cell_type": "markdown", "metadata": { "id": "EOoFe-B0yLu4" }, "source": [ "# Section 1: Graphs, networkx" ] }, { "cell_type": "markdown", "metadata": { "id": "dLiatNhIyP33" }, "source": [ "## Recap of graph fundamentals\n", "\n", "A **graph** is a pair $\\mathcal{G} = (\\mathcal{V}, \\mathcal{E})$, where $\\mathcal{V}$ is the set of $N$ **vertices** (nodes), and $\\mathcal{E}$ is the set of graph **edges** (links), i.e., pairs $(u,v)$ representing a connection between two vertices $u,v \\in \\mathcal{V}$. An **undirected** graph is one in which $(u,v) \\in \\mathcal{E} \\implies (v,u) \\in \\mathcal{E}$.\n", "\n", "There are several ways to represent $\\mathcal{E}$:\n", "1. As a **list of edges**: a list of pairs $(u,v)$, where $(u,v)$ means that there is an edge going from node $u$ to node $v$.\n", "2. As an **adjacency matrix**: a binary square matrix $A$ of size $|\\mathcal{V}| \\times |\\mathcal{V}|$, where $A_{u,v}=1$ iff there is a connection between nodes $u$ and $v$.\n", "3. As an **adjacency list**: An array of $|\\mathcal{V}|$ unordered lists, where the $i$th list corresponds to the $i$th node, and contains all the nodes directly connected to node $i$.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "miqd_tpfzr5y" }, "source": [ "Example: Below is a directed graph with four nodes and five edges.\n", "\n", "\n", "\n", "The arrows on the edges indicate the direction of each edge, e.g. there is an edge going from node 0 to node 1. Between node 0 and node 3, there are two edges: one going from node 0 to node 3 and one from node 3 to node 0.\n", "\n", "Node 0 has out-degree of 2, since it has two outgoing edges, and an in-degree of 2, since it has two incoming edges.\n", "\n", "The list of edges is:\n", "$$[(0, 1), (0, 3), (1, 2), (2, 0), (3, 0)]$$\n", "\n", "As adjacency matrix:\n", "\n", "$$\\begin{array}{l|llll}\n", " source \\setminus dest & n_0 & n_1 & n_2 & n_3 \\\\ \\hline\n", "n_0 & 0 & 1 & 0 & 1 \\\\\n", "n_1 & 0 & 0 & 1 & 0 \\\\\n", "n_2 & 1 & 0 & 0 & 0 \\\\\n", "n_3 & 1 & 0 & 0 & 0\n", "\\end{array}$$\n", "\n", "As adjacency list:\n", "\n", "$$[\\{1, 3\\}, \\{2\\}, \\{0\\}, \\{0\\}]$$\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "l_qsZZCwTFeL" }, "source": [ "## NetworkX\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "JI5ak9cJUEFC" }, "source": [ "NetworkX is a Python library focused on graphs and networks, offering a large number of useful methods, including visualization which we will use several times in this colab.\n", "\n", "Let's create and draw a simple graph:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "t4B_v7LKRos6" }, "outputs": [], "source": [ "import networkx as nx \n", "\n", "# Create a simple graph\n", "G = nx.Graph() # Use DiGraph for directed graphs\n", "\n", "G.add_nodes_from([0, 2, 4, 5, 6]) # Fill in the list of node labels as integers\n", "G.add_edges_from([(0, 2), (0, 4), (4, 5), (5, 6), (0, 5)]) # Fill in the list of node pairs [(node_a, node_b)]\n", "# Note that for a NetworkX (undirected) Graph, you do not need to provide both (node_a, node_b) and (node_b, node_a)\n", "\n", "# Print basic info\n", "nb_nodes = G.number_of_nodes()\n", "nb_edges = G.number_of_edges()\n", "print(f'Graph G with {nb_nodes} nodes and {nb_edges} edges')\n", "print(f'Adjacency list: {G.edges}')\n", "print(f'Adjacency matrix (symmetric):')\n", "A = nx.adjacency_matrix(G) # Returns a sparse matrix\n", "print(A.todense())\n", "print(f'Degree of node 0: {G.degree(0)}')\n", "\n", "# Draw the graph\n", "nx.draw(G, with_labels=True, node_color='lightblue')" ] }, { "cell_type": "markdown", "metadata": { "id": "lJPfTPTE1woQ" }, "source": [ "## ***Task 1: Graph definition***\n", "\n", "The first task is to recreate the graph below using Networkx. Fill in your solution between `### BEGIN SOLUTION` and `### END SOLUTION`. Note that the position of the node in the graph you plot may differ from this image. What matters is that the same nodes are connected.\n", "\n", "![graph-to-recreate.png](data:image/png;base64,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)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "HOMfb0GGhkBt" }, "outputs": [], "source": [ "G = nx.Graph()\n", "### BEGIN SOLUTION\n", "\n", "### END SOLUTION\n", "nx.draw(G, with_labels=True, node_color='lightblue')" ] }, { "cell_type": "code", "source": [ "# @title Run to test your graph definition.\n", "G_solution = nx.Graph()\n", "G_solution.add_nodes_from(range(4))\n", "G_solution.add_edges_from([(1, 0), (0, 2), (2, 3), (3, 0)])\n", "\n", "if nx.is_isomorphic(G, G_solution): \n", " print(\"Your graph plotting function looks correct!\")\n", "else: \n", " print(\"Something seems wrong. Give it another go!\")" ], "metadata": { "id": "JJt1--HDB-0J", "cellView": "form" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "GD_cJhf6j7v-" }, "outputs": [], "source": [ "#@title ***Task 1: Solution*** { display-mode: \"form\" }\n", "G = nx.Graph()\n", "### BEGIN SOLUTION\n", "G.add_nodes_from(range(4))\n", "G.add_edges_from([(1, 0), (0, 2), (2, 3), (3, 0)])\n", "## END SOLUTION\n", "nx.draw(G, with_labels=True, node_color='lightblue')" ] }, { "cell_type": "markdown", "metadata": { "id": "3C5YI9M0vwvb" }, "source": [ "# Section 2: Intro to the jraph Library\n", "\n", "In the following sections, we will learn how to represent graphs and build GNNs in Python. We will use\n", "[jraph](https://github.com/deepmind/jraph), a lightweight library for working with GNNs in [JAX](https://github.com/google/jax).\n", "\n", "### Representing a graph in jraph\n", "\n", "In jraph, a graph is represented with a `GraphsTuple` object. In addition to defining the graph structure of nodes and edges, you can also store node features, edge features and global graph features in a `GraphsTuple` (e.g. given a graph representing connections between cities, a node feature could be the number of people in that city).\n", "\n", "In the `GraphsTuple`, edges are represented in two aligned arrays of node indices: senders (source nodes) and receivers (destinaton nodes).\n", "Each index corresponds to one edge, e.g. edge `i` goes from `senders[i]` to `receivers[i]`.\n", "\n", "You can even store multiple graphs in one `GraphsTuple` object, similar to how batching is done in standard machine learning.\n", "\n", "We will start with creating a simple directed graph with 4 nodes and 5 edges. We will also add toy features to the nodes, using `2*node_index` as the feature.\n", "\n", "We will later use this toy graph in the GCN demo.\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "wK0rGWf56-Uq" }, "outputs": [], "source": [ "def build_toy_graph() -> jraph.GraphsTuple:\n", " \"\"\"Define a four node graph, each node has a scalar as its feature.\"\"\"\n", "\n", " # Nodes are defined implicitly by their features.\n", " # We will add four nodes, each with a feature, e.g.\n", " # node 0 has feature [0.],\n", " # node 1 has featre [2.] etc.\n", " # len(node_features) is the number of nodes.\n", " node_features = jnp.array([[0.], [2.], [4.], [6.]])\n", "\n", " # We will now specify 5 directed edges connecting the nodes we defined above.\n", " # We define this with `senders` (source node indices) and `receivers`\n", " # (destination node indices).\n", " # For example, to add an edge from node 0 to node 1, we append 0 to senders,\n", " # and 1 to receivers.\n", " # We can do the same for all 5 edges:\n", " # 0 -> 1\n", " # 1 -> 2\n", " # 2 -> 0\n", " # 3 -> 0\n", " # 0 -> 3\n", " senders = jnp.array([0, 1, 2, 3, 0])\n", " receivers = jnp.array([1, 2, 0, 0, 3])\n", "\n", " # You can optionally add edge attributes to the 5 edges.\n", " edges = jnp.array([[5.], [6.], [7.], [8.], [8.]])\n", "\n", " # We then save the number of nodes and the number of edges.\n", " # This information is used to make running GNNs over multiple graphs\n", " # in a GraphsTuple possible.\n", " n_node = jnp.array([4])\n", " n_edge = jnp.array([5])\n", "\n", " # Optionally you can add `global` information, such as a graph label.\n", " global_context = jnp.array([[1]]) # Same feature dims as nodes and edges.\n", "\n", " # Now we create the graph.\n", " graph = jraph.GraphsTuple(\n", " nodes=node_features,\n", " edges=edges,\n", " senders=senders,\n", " receivers=receivers,\n", " n_node=n_node,\n", " n_edge=n_edge,\n", " globals=global_context\n", " )\n", " return graph" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "82Jtg_y-TqCW" }, "outputs": [], "source": [ "graph = build_toy_graph()" ] }, { "cell_type": "markdown", "source": [ "**Group Discussion:** *How could you represent two graphs in a single GraphsTuple?*\n", "\n", "You can read some of the [documentation](https://jraph.readthedocs.io/en/latest/api.html#jraph.batch) once you've got some ideas." ], "metadata": { "id": "KIMRVCrVxsn4" } }, { "cell_type": "markdown", "metadata": { "id": "CnWGPulK_tYE" }, "source": [ "## Inspecting the GraphsTuple\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "jjfUYT_UzoQ9" }, "outputs": [], "source": [ "# Number of nodes\n", "# Note that `n_node` returns an array. The length of `n_node` corresponds to\n", "# the number of graphs stored in one `GraphsTuple`.\n", "# In this case, we only have one graph, so n_node has length 1.\n", "graph.n_node" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "BQLF-mfOzXGK" }, "outputs": [], "source": [ "# Number of edges\n", "graph.n_edge" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "gdzVSy04zp3-" }, "outputs": [], "source": [ "# Node features\n", "graph.nodes" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "P9_VpQSZzua3" }, "outputs": [], "source": [ "# Edge features\n", "graph.edges" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "pvN0pbg0z8Ir" }, "outputs": [], "source": [ "# Edges\n", "graph.senders" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "aNI4PVR-z-HL" }, "outputs": [], "source": [ "graph.receivers" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ayThRCYpz4wj" }, "outputs": [], "source": [ "# Graph-level features\n", "graph.globals" ] }, { "cell_type": "markdown", "metadata": { "id": "l3Pwh9e7d8gN" }, "source": [ "## Visualizing the Graph\n", "To visualize the graph structure of the graph we created above, we will use the [`networkx`](networkx.org) library because it already has functions for drawing graphs.\n", "\n", "We first convert the `jraph.GraphsTuple` to a `networkx.DiGraph`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "e7q5ySSmVL3x" }, "outputs": [], "source": [ "def convert_jraph_to_networkx_graph(jraph_graph: jraph.GraphsTuple) -> nx.Graph:\n", " nodes, edges, receivers, senders, _, _, _ = jraph_graph\n", " nx_graph = nx.DiGraph()\n", " if nodes is None:\n", " for n in range(jraph_graph.n_node[0]):\n", " nx_graph.add_node(n)\n", " else:\n", " for n in range(jraph_graph.n_node[0]):\n", " nx_graph.add_node(n, node_feature=nodes[n])\n", " if edges is None:\n", " for e in range(jraph_graph.n_edge[0]):\n", " nx_graph.add_edge(int(senders[e]), int(receivers[e]))\n", " else:\n", " for e in range(jraph_graph.n_edge[0]):\n", " nx_graph.add_edge(\n", " int(senders[e]), int(receivers[e]), edge_feature=edges[e])\n", " return nx_graph\n", "\n", "\n", "def draw_jraph_graph_structure(jraph_graph: jraph.GraphsTuple) -> None:\n", " nx_graph = convert_jraph_to_networkx_graph(jraph_graph)\n", " pos = nx.spring_layout(nx_graph)\n", " nx.draw(\n", " nx_graph, pos=pos, with_labels=True, node_size=500, font_color='yellow')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "PNK5SeajWQWO" }, "outputs": [], "source": [ "draw_jraph_graph_structure(graph)" ] }, { "cell_type": "markdown", "metadata": { "id": "5d_y992K1u5Q" }, "source": [ "## ***Task 2: GraphsTuple creation***\n", "\n", "Create the same graph as before, but this time as a `jraph` GraphsTuple. Set the node attributes to be the numbers `[0, 1, 2, 3]` (corresponding to the node ID) and the edge attributes to be the sum of the adjacent node attributes.\n", "\n", "Note that you will have to specify edges in both directions, since `jraph` uses directed graphs.\n", "\n", "![graph-to-recreate.png](data:image/png;base64,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)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "3h_9gLcS16wF" }, "outputs": [], "source": [ "### BEGIN SOLUTION\n", "\n", "### END SOLUTION\n", "\n", "### UNCOMMENT THE FOLLOWING\n", "# global_context = jnp.array([[1]])\n", "\n", "# graph = jraph.GraphsTuple(\n", "# nodes=node_features,\n", "# edges=edges,\n", "# senders=senders,\n", "# receivers=receivers,\n", "# n_node=n_node,\n", "# n_edge=n_edge,\n", "# globals=global_context,\n", "# )\n", "# draw_jraph_graph_structure(graph)" ] }, { "cell_type": "code", "source": [ "# @title Run to test your graph definition.\n", "try:\n", " assert graph.n_node == 4\n", " assert jnp.allclose(graph.nodes, jnp.array([[0.], [1.], [2.], [3.]]))\n", " assert jnp.allclose(graph.senders, jnp.array([1, 0, 2, 3, 0, 2, 3, 0]))\n", " assert jnp.allclose(graph.receivers, jnp.array([0, 2, 3, 0, 1, 0, 2, 3]))\n", " assert jnp.allclose(graph.globals, jnp.array([[1]]))\n", " print(\"Your graph plotting function looks correct!\")\n", "except:\n", " print(\"Something seems wrong. Give it another go!\")" ], "metadata": { "id": "Gcx1IOzfNzSc", "cellView": "form" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "I0zWQb3t2NIy" }, "outputs": [], "source": [ "#@title ***Task 2: Solution*** { display-mode: \"form\" }\n", "### BEGIN SOLUTION\n", "node_features = jnp.array([[0.], [1.], [2.], [3.]])\n", "sender_nodes = [1, 0, 2, 3]\n", "receiver_nodes = [0, 2, 3, 0]\n", "senders = jnp.array(sender_nodes + receiver_nodes)\n", "receivers = jnp.array(receiver_nodes + sender_nodes)\n", "\n", "edge_attributes = []\n", "for i in range(4):\n", " edge_attributes.append([sender_nodes[i] + receiver_nodes[i]])\n", "edges = jnp.array(edge_attributes + edge_attributes)\n", "\n", "n_node = jnp.array([4])\n", "n_edge = jnp.array([8])\n", "### END SOLUTION\n", "\n", "global_context = jnp.array([[1]])\n", "\n", "graph = jraph.GraphsTuple(\n", " nodes=node_features,\n", " edges=edges,\n", " senders=senders,\n", " receivers=receivers,\n", " n_node=n_node,\n", " n_edge=n_edge,\n", " globals=global_context,\n", ")\n", "draw_jraph_graph_structure(graph)" ] }, { "cell_type": "markdown", "source": [ "# Section 3: Graph Neural Network Theory " ], "metadata": { "id": "WZpm6OM0L7Rc" } }, { "cell_type": "markdown", "source": [ "A GNN is a neural network designed to work on graph data. We start with an initial representation of our problem in the form of a graph. In the figure below, you can see an example of such a graph. The diagram illustrates new important aspects of graph neural networks: \n", "- Each node has an initial vector representation (grey box associated with each node) \n", "- Node are connected by different edge types (represented by different coloured arrows). " ], "metadata": { "id": "rIg_7STnMBLW" } }, { "cell_type": "markdown", "metadata": { "id": "KFRNJeCsTOfk" }, "source": [ "![Screenshot from 2022-07-07 21-14-36.png](data:image/png;base64,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IZhRke5Mj083r3WsjZvbu/HFXW1oI+uthBDimjg6OrJo0SJGjhxJQUEB6enpPPnkkyxbtqzRrjkeN24csbGx5tfe3t6UlpYydOhQc1tRURGbN29m2rRpFtuuXr0aX19fHB3/On/odDrGjh3Lvffea247c+YMvXr14qWXXjK3abVaPv7440rBuaenp0W/zMxMli9fzvXXX2/RLyMjg/vuu4/u3bub27777jt69+6Np6enuc1gMJCamoqf31+zwvR6PSNGjLB4P2fPnuWdd965ym/KNkFBQTz44IMsWLAAgLfffpvbbrvN4ncl/nLl0/LLabwsHxyEeDny9tjW/GN4IJ/tz2dDYgm7kkvJLql8LeTuqKJPG1cGtnPjwb6+tJcp7C1ei50rodFo+PDDD81fhllZWcyePRuTqfbTUETTpFKpeOGFF8yv4+LiOHnypB1H1DRoz5/n0IgRnH74YXNgDhXB+SXju3px9tlI5t/WmnAf2074oyPdWT+9HZseCpfAXAgh6khoaCjz5883v16/fj0fffSRHUck7OWRRx7B68/A8vz583z77bd2HlHjVJaYyN7u3asMzKFycH6Jl4uG2Tf5s/q+tmS+2Ilzz0aybWY466a1Y/ND4Rx+vAP5L3dh84z2vD66lQTmAmjBwTlA69atzXcMAbZu3WrxWrQcAwYMYMiQIebXb731lh1H0/hlL1/Onu7dyd+4sdLPrjxJeTpreHygP6efjuTnqW15cVgAt3Rwx8vZ8uunnY8jd/X0Yt641hx9ogO/TAtnREePRvs0RwghmqpRo0bx8MMPm1+//vrrdTZdWjQdPj4+zJo1y/x63rx5lJWV2XFEjZNrx450X70az6ioKn/uUE1wfjmVSkW4rxODwt0ZGenB0Ah3urd2wUEj1zjCUosOzgGGDh3K7Nmzza/feustdu/ebccRCXu5/On5L7/8wsGDB+04msbNb8wYQh97DJVz5XJmDlcksDG3a1SM6eTJa6NaseHBcApe6YLh9a6U/bsLpv90Jem56/h2chhPDPKnayuX+n4LQgjRoj3//PPmqdhGo5GHH36YvLw8O49KNLTp06fj7+8PVMwi/eyzz+w8osbJq39/ulYzs6C66x4haqPFB+cATz/9NP369QMq1p/PmjWLCxcu2HlUoqH17NmTsWPHml/PnTvXjqNp3Bw8PYl44w0i3nij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)\n", "\n", "*Image Source: [An Introduction to Graph Neural Networks: Models and Application ](https://www.youtube.com/watch?v=zCEYiCxrL_0&t=824s)*" ] }, { "cell_type": "markdown", "metadata": { "id": "L5PbGwqo9pa-" }, "source": [ "The GNN updates these node representations during training, outputting task-specific output representations. An overview of this process is illustrated below: " ] }, { "cell_type": "markdown", "metadata": { "id": "PNN5gRjlTsZ4" }, "source": [ "![image.png](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABPoAAAGMCAYAAABDOczXAAAABHNCSVQICAgIfAhkiAAAABl0RVh0U29mdHdhcmUAZ25vbWUtc2NyZWVuc2hvdO8Dvz4AAAAqdEVYdENyZWF0aW9uIFRpbWUAVGh1IDA3IEp1bCAyMDIyIDIxOjE2OjI4IEJTVA1p/poAACAASURBVHic7N13eFRV+gfw79RkJr2SQkJLQHpoCUpHEZQiJEFX0RV2F0Rk7cgPZVddXQRR1xVFdF1dCwqaCaB0kCKhhZDQayAhFRLSk+kz9/dHZOAyCZmE1OH7eR6fx5w595wzgZA77z3nfSWCIAggIiIiIiIiIiKiNk3a0gsgIiIiIiIiIiKi28dAHxERERERERERkRNgoI+IiIiIiIiIiMgJMNBHRERERERERETkBBjoIyIiIiIiIiIicgIM9BERERERERERETkBBvqIiIiIiIiIiIicAAN9REREREREREREToCBPiIiIiIiIiIiIifAQB8REREREREREZETYKCPiIiIiIiIiIjICTDQR0RERERERERE5AQY6CMiIiIiIiIiInICDPQRERERERERERE5AQb6iIiIiIiIiIiInAADfURERERERERERE6AgT4iIiIiIiIiIiInwEAfERERERERERGRE2Cgj4iIiIiIiIiIyAkw0EdEREREREREROQEGOgjIiIiIiIiIiJyAgz0EREREREREREROQEG+oiIiIiIiIiIiJwAA31EREREREREREROgIE+IiIiIiIiIiIiJ8BAHxERERERERERkRNgoI+IiIiIiIiIiMgJMNBHRERERERERETkBBjoIyIiIiIiIiIicgIM9BERERERERERETkBBvqIiIiIiIiIiIicAAN9REREREREREREToCBPiIiIiIiIiIiIifAQB8REREREREREZETYKCPiIiIiIiIiIjICTDQR0RERERERERE5ATkLb0AIiIiIiKi1kIQBOSUmXEgW4u0PD3K9VaYrQLUCiki/JSICVehT5ArFDJJSy+ViIjIDgN9RERERER0x8svN+GTA8X43+FS5Jabb9nXVS7B/ZHueHGoH4Z3UkMiYdCPiIhaB4kgCEJLL4KIiIiIiKglFFaaMX/zFXyXVgqTtf7XDwh1xTtj22FMpHvjL46IiKieGOgjIiIiIqI70pZzlXjypxxcqbTc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GJzTrVu3EBwcLH0eFhaGtLQ0JCQkSGXJycnIz8/H1atXpbLY2Fjk5eUhPj5epz/tHAtn3VWr1bhz5w6cnJyksvDwcDRv3tzgnIgqkrONAp94O2Fhr5q4/jQbwVFZCIrKQnBUFm7G5sBIkmyivxS5DGjlbAbPuhbo+L+Pti7mUHDFKhEREVG1JRNC8NcVIgDZeRq4fnkPSVnqFz72Ym8nfNG/lsFr06dPx/379yGXy6UyCwsLXLt2DUqlUirLy8uDk5OTTkAwKysLsbGxen2amJjA3d1dp09vb2+cOnUKZmbPkhIkJSXh4cOHeu1btmwJc/NnZzmpVCokJCRAJnv2y6NarYarq6tO8C4/Px9JSUnIy8vT6U+pVCIhIQEmJs+2jr3zzjs4dOgQTE1NpbLc3FysWrUKnp6eBu4U0YuRm69BRp5Adp4GeRr+F0p/PUoTGcyVJrBSyrgll4iIiOgVw0AfUSEfHnmKf59PfKFjymVA+ILGqGdvWnxlIiIiIiIiIiIj+GdeokI+7lMTtazkxVesQP/oWZNBPiIiIiIiIiIqNwb6iApxtFRg9fDaL2y8RjVM8Vlfp+IrEhEREREREREVg4E+oueMbm0Ln1a2lT6OwgTY8GYdWCj5bUhERERERERE5ccIA9FzZDIZfMe4oo+HZeWNAWDrmLro5WE40y4RERERERERUWkx0EdkgIXSBAcm10OnuhaV0v+6N+tgbFu7SumbiIiIiIiIiF5NzLpLVARVjhrzDj/FhuCUCunPyUqOjT6uGNrMpkL6IyIiIiIiIiLSYqCPqAT23kzDO7/FIDFTXeY+Bjexxi8+deBio6zAmRERERERERERFWCgj6iEVDlqbLycglXnE/EwOa9EbWQA3mhpg7/3qIku9Swgk8kqd5JERERERERE9MpioI+olNQagT/CM3AhIhMXH2chOCoLKdka5KkFLJQyNHAwhVc9C3R2s0C/RtZo4Gha1VMmIiIiIiIiolcAA31ERERERERERETVALPuEhERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVAwz0ERERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVAwz0ERERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVAwz0ERERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVAwz0ERERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVAwz0ERERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVAwz0ERERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVAwz0ERERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVAwz0ERERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVAwz0ERERERERERERVQMM9BEREREREREREVUDDPQRERERERERERFVA4qqngARERER0YuSnJyMw4cP4+rVqwgLC0NeXh6sra3h7OyMIUOGoG/fvjA1Na3qaVZLfn5+uH37tk6ZTCaDlZUV3N3d0alTJ9ja2lbR7Kg6SE9Ph7e3N8LCwvDWW29h9erVVT0lIqIXTiaEEFU9CSIiIiKiypSTk4PFixfj+++/R1ZWltF6tWvXxnfffYcxY8a8wNlVf0IIKJVKqNVqo3XMzc0xdepU/Otf/0KNGjVe4Oyourhy5Qpee+01AEDdunXx+PHjKp4REdGLx627RERERFStJSYmomvXrvj666+RlZUFU1NTeHt7Y/78+ViwYAFmzJiB+vXrAwCePHmCsWPHYuHChZU6p6ZNm8Le3h4//PBDpY5TEXx9feHg4AB3d3fk5OSUqQ+NRiMF+erUqYP+/fujf//+6N27N5o1awYAyM7Oxtq1a9G7d2+kpaVV2Pyp8g0fPhx2dnZ4//33K22Mfv36wc7ODosWLTJax83NTQoSawN+RESvGm7dJSIiIqJqS6PRYNSoUbhy5QoAYODAgfjpp5+kwF7heps3b8YHH3yAtLQ0rFy5Em3btsWECRMqZV5hYWFQq9WIioqqlP4r0pMnT5CSkoKUlBTk5eXBzMysXP0NHjwYGzZs0Cm7d+8eJk6ciKCgINy8eRNLly7F119/Xa5x6MV5+PAh0tLSEBERUeljREZGGq3j5OSEmJgYqFQqODg4VNpciIj+yriij4iIiIiqre3bt+PMmTMAClYEHTlyRC/IBwAmJib4v//7P+zYsUMq++ijj5Cbm/vC5voqa9KkCfbs2SOdj7h79+4qnhG9rExNTeHo6AiZTFbVUyEiqhJc0UdERERE1dbSpUsBABYWFvjl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REaAgT4iIiIiIiIiIiIjwEAfERERERERERGREWCgj4iIiIiIiIiIyAgw0EdERERERERERGQEGOgjIiIiIiIiIiIyAgz0ERERERERERERGQEG+oiIiIiIiIiIiIwAA31ERERERERERERGgIE+IiIiIiIiIiIiI8BAHxERERERERERkRFgoI+IiIiIiIiIiMgIMNBHRERERERERERkBBjoIyIiIiIiIiIiMgIM9BERERERERERERkBBvqIiIiIiIiIiIiMAAN9RERERERERERERoCBPiIiIiIiIiIiIiPAQB8REREREREREZERYKCPiIiIiIiIiIjICDDQR0REREREREREZAQY6CMiIiIiIiIiIjICDPQREREREREREREZAQb6iIiIiIiIiIiIjAADfUREREREREREREaAgT4iIiIiIiIiIiIjwEAfERERERERERGREWCgj4iIiIiIiIiIyAgw0EdERERERERERGQEGOgjIiIiIiIiIiIyAgz0ERERERERERERGQEG+oiIiIiIiIiIiIwAA31ERERERERERERGgIE+IiIiIiIiIiIiI8BAHxERERERERERkRH4f7mCRDet2+YMAAAAAElFTkSuQmCC)\n", "\n", "\n", "*Image Source: [An Introduction to Graph Neural Networks: Models and Application ](https://www.youtube.com/watch?v=zCEYiCxrL_0&t=824s)*" ] }, { "cell_type": "markdown", "metadata": { "id": "ig5Ooc1IT0CG" }, "source": [ "Neural Message Passing is a popular framework to perform this update. In a nutshell, each node representation is updated by exchanging information with the neighbouring nodes. To examine the node update in detail, let's consider a smaller neighbourhood of the graph such as nodes D, E and F pictured below. \n", "\n", "![Screenshot from 2022-07-07 21-22-18.png](data:image/png;base64,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)" ] }, { "cell_type": "markdown", "metadata": { "id": "j8qh_AwpViPM" }, "source": [ "To update the vector representation of node F, we consider the following: \n", "\n", "- Current vector representation of node F \n", "- Vector representations of all nodes connected to F (e.g. E and D). \n", "- Edge types of connected nodes. \n", "\n", "For each neighbour node (e.g. E and F) we compute a 'message' using some function $f$, which takes in the adjacent node representation and edge type as input. The output of function $f$ is the message vector. There are a vareity of different functions we could use to prepare this message and we'll go into some concrete examples later in the tutorial.\n", "\n", "The messages from all the adjacent nodes are then summarized and used to update the current node state. The diagram below illustrates this process, whereby the vector representation of node F at time $t$ is labelled as $h^{n}_{t-1}$. \n", "\n", "The notation is as follows: \n", "- $t$ = timestep \n", "- $h$ = node vector representation\n", "- $k$ = edge type\n", "- $f$ = function which prepares a message \n", "- $⋃$ = function which summarised the messages \n", "- $q$ = node update function \n", "\n", "![Screenshot from 2022-07-07 21-25-03.png](data:image/png;base64,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+uqrmEwmXnnllXqXL1myhEceeYRnn3223uUrV67k2WefpUuXLvUu9/l87N27l3nz5tW73OVyMXLkyFM+B6vVys9//nMSEhLqXf7ZZ5/x0ksvceWVV9a7vG/fvowdO7bB4LVixQoefPBBxo4dW+/yYcOGMW7cuAbv/9VXX3Hvvfc2+D+ePHkyDz30EMOHD693+VtvvYXdbq93WWuhc8xEREREREQMpmAmIiIiIiJiMAUzERERERERgymYiYiIiIiIGEzBTERERERExGAalVFERERE2rxvv/2WDh061LssMzOT0NBQ1q9fX+/yDRs2UFxczBdffFHv8k2bNuFyuSgtLa13uc/nA+DDDz+sd7nH4zld+VRWVrJu3Trat29f73KXy8WiRYvIz89vcPnu3bsbHG7/2LFjrF69moKCgnqXO51Odu3a1eD9jx49yn/+8x/M5vrbhdxuN19++SVFRUX1Ll+3bl2DQ+23FiZf9TtBRERERKSF8Hq9HDlypFG2lZ2dzbvvvovJZKp3eWlpKTk5OcTFxdW7vLy8nNjYWLp3717vcrfbTUFBAZ06dWqwhoMHD5KYmNjg8j179tCzZ88Gg83hw4fp0KFDgxNEHz16lNjY2AbnUsvNzaV9+/annKesZ8+eDd7/dI+/b98+OnXq1OD9T1efz+dj2rRpJCUl1bv8bFgsFjp27Hje22lsCmYiIiIi0uI0ZjCTtqW5BjOdYyYiIiIiImIwBTMRERERERGDKZiJiIiIiIgYTMFMRERERETEYApmIiIiIiIiBlMwExERERERMZiCmYiIiIiIiMEUzERERERERAymYCYiIiIiImIwBTMRERERkTbA6/Xy7LPPctVVV/HNN9+wfft2pkyZwuTJk9m9e7fR5bV5CmYiIiIiIi3Y7t27ueaaa7joootITU3lpZdeqne9Tz75hJSUFLp27crrr7/Ou+++y9y5czl06BAff/xxE1ctgRTMRERERERasOTkZH784x9z4MABioqKGDp0aL3rTZo0iYkTJ1JYWEhRURGPPvooXbt2BSAhIaEpS5Z6KJiJiIiIiLRwR44cASA0NLTBYAbgcrnYtGkT06dPx2w2c/jwYfbv33/K+0jTUDATEREREWnh1q9fD8CwYcMIDQ0FwG6311lv69atOBwOhg8fDsDq1auJiYmhX79+TVes1EvBTERERESkBfN4PGzcuBGAUaNGMW/ePAYMGEBycjITJkygsLDQv+769evp3bs38fHxAGRkZDBo0CAKCwtZvny5IfVLFQUzEREREZEWbNu2bVRWVgKwcuVKsrKyuPvuu4Gq4LVkyRL/ulu2bGHEiBH+6ykpKaxbt4777ruP/v37N23hUovV6AJEREREROTcff/99/7LKSkpPPnkk+zatYs//vGPAJhMJv/yF198sdZ9b7zxRq699loiIyObplhpkFrMRERERERasOrzy8LDw5k9ezZQ1YpW7XQtYQplzYOCmYiIiIhIC1bdYjZ8+HCio6MB+O677wAICwurd8RFj8fTdAXKGVEwExERERFpoQoKCsjNzQWoFcBWrFgBVI3SaLPZat1n/fr1tc4zk+ZBwUxEREREpIWq7sYIMGTIEACKiorIyckBqBPA8vLyeOaZZ+jQoQNLly71BzgxnoKZiIiIiEgLVXPgj+pgVnN4/IiICBYtWsSsWbMA+Oabb8jIyCA5OZn8/HwqKiqatmBpkMnn8/mMLkJERERE5Gx4vV6OHDlidBmG++EPf8i3335L9+7d/eeVVVZWMmbMGPLy8gC4+OKLeemll0hMTKSwsJC0tDT+9a9/MXDgQCNLN4zFYqFjx45Gl1GHhssXEREREWmhnn32WdxuN+Hh4f7bwsPD+fzzz9m8eTPt2rWrFcC+//57IiMjSUtLM6JcOQUFMxERERGRFiopKane2+Pj47n88svr3L5+/XouvPBCLBZLcAuTs6ZzzERERERE2ojMzEx69eoFwM6dO3G73QZXJNUUzERERERE2ojY2FhWrFjBk08+yTPPPIPL5TK6JDlBg3+IiIiISIujwT/OTXFxMR9//DEJCQlMmDABs7nttdM018E/FMxEREREpMVRMJNz1VyDWduLyCIiIiIiIs2MgpmIiIiIiIjBFMxEREREREQMpnnMRERERESagU2bNlFWVkaXLl244IILGlwvNzeXvLw8Bg4cSExMTBNWKMGkFjMRERERkWbgueeeY+bMmUyfPp3i4uIG1/v000+ZOXMmubm5TVJXRUUFGi8w+BTMRERERESaCYvFQmFhIc8//7zRpQDw+uuvM378eBwOh9GltHoKZiIiIiIizUR4eDijRo3i448/Zu3atUaXw+7du3E6nUaX0SYomImIiIiINBNut5tZs2YRFhbGk08+id1uP+ttlJaWsnbtWr777jtKSkpqLfN6vdjt9nrDls/nw26343A4cLvd2O123G43AHa7vcH7SeNQMBMRERERaUa6du3KXXfdRV5eHm+88cYZ38/lcvHcc89xzTXXcPfddzNjxgwmTpzIn//8ZzweD1AVsH70ox8xYcIEioqKat1/0aJFjB49msWLF/O3v/2N0aNH8/XXXwMwfvx4Ro8eza9//etGe55Sm0ZlFBERERFpZm655Ra++OILFixYwIQJE+jXr99p7/Pwww+zbNkybrzxRiZNmoTH4+H9999n4cKF2Gw27rnnHiIiIpg9ezYzZ87k9ddf56GHHgKgqKiIl19+mcGDB3PTTTexfft24uPjWbJkCdu3b+eBBx7AarXSuXPnYD/1NkstZiIiIiIizYzZbObhhx/GZDLx+OOP+1u8GrJmzRqWLVvG1KlTeeihh+jfvz9paWk8+uijDB48mA8++ACXywXA6NGjmTBhAosWLWLPnj0AvPTSSzgcDn7/+99jNptJTU3lhhtuoFu3bgBMnjyZG264gdGjRwf3ibdhCmYiIiIiIs1Q7969mTZtGtu2beMf//jHKdf917/+hdlsZtq0aXWWXX755VRUVLBp0yb/bQ8++CBRUVE899xzZGVlsWTJEu6++2569OjR2E9DzpC6MoqIiIiINFN33HEHy5cv59VXX2Xs2LF07dq13vU2bdqE2Wzmt7/9bZ1lx44dAyA/P99/W3x8PPfddx+PPvoou3fvZsCAAdxyyy3BeRJyRtRiJiIiIiLSTIWEhPDwww/jcDh46qmnGlzP6XRisViw2Wx1/rp27cro0aNJSEiodZ/x48cTFRXF4cOHueaaazCbFQ2MpBYzEREREZFmbODAgdx0000sXLiQpUuXYjKZ6qwTFRWF3W7nueeeq3d5fV544QW8Xi8DBw7k1VdfZfz48cTFxTV2+XKGFItFRERERJq5GTNm0LlzZ/7nf/6HsrKyOstHjBhBWVkZGzduPKPtrVmzhvfff59f/OIXPProo5SVlfH00083uL7X6z3n2uXMKJiJiIiIiDRz4eHh/O53v6O4uJiPP/64zvIJEyYAMHfuXI4fP15r2dGjR/n888/914uLi3nsscfo27cvN998Mz169OC///u/WbZsGcuWLat13+joaAD27t3b2E9JAiiYiYiIiIi0ACNHjuTaa6+lsrKyzrKBAwcyffp0cnJyuO6663jggQd4/PHHmT59Otdeey1r1671r/vkk09SUFDAb3/7WywWCwA//elP6dy5M08//XStiafHjh0LwP33388jjzzC888/H+Rn2XZZHn300UeNLkJERERE5Gz4fD7Ky8uNLqNRFRcX0717dy655JIG1xk6dCjl5eWkpKQwYsQIYmJiai0bPnw4lZWV7Nmzh6NHj9KxY0duueUWpk2bhtVqJS8vjx07dnDttddyxRVX+O9rtVrp06cPPp+PkJAQkpKSAOjevTuJiYkcPHiQY8eOkZ6ezqBBg4L2P2gKZrOZyMhIo8uow+Tz+XxGFyEiIiIicja8Xi9HjhwxugxpgSwWCx07djS6jDrUlVFERERERMRgCmYiIiIiIiIGUzATERERERExmIKZiIiIiIiIwRTMREREREREDKZgJiIiIiItjslkMroEaaGa63tHwUxERERERNoMBTMRERERkUbSXHeuRc6VgpmIiIiItEhWq9XoEoLu//7v//jf//1fo8toVZrr+6Z5ViUiIiIichohISG43e5G3eaBAwf4n//5HwDuuOMO0tLSGlx3zpw5xMbG8uCDDzZqDTUtX76cdevWcc899zT6tl0uF4sXL+arr74iJycHt9tNWFgY3bt359577yU9Pb3RH7M5sNlsRpdQLwUzEREREWmRbDYblZWVjbrN8vJyVq5cCcDBgwdZsGBBgy0s3377LQkJCY36+E2luLiYu+66i+zsbLp27cpFF12ExWIhLy+PzZs3s3XrVn8wc7vdrF+/HpvNxtChQ8/5Mb1eLxs2bMDlcjFy5MjGeipnLSQkxLDHPhUFMxERERFpkYK5g52QkEBOTg7z58/n9ttvD9rjGOUvf/kL2dnZTJ8+nTvuuKPWOXtFRUXk5+f7r2dmZvLLX/6SGTNmnFcwy8vLY/r06dx6662GBrPm2pVR55iJiIiISItktVqDNgjIuHHjSEpK4o033mDfvn1BeQwjrVy5ktjY2DqhDCAuLo7evXsbVFlw2Wy2ZjtwTPOMiyIiIiIip2EymYiIiKC8vLzRt22xWJgzZw4/+9nPeOKJJ3j11VfPaof+6NGjfPLJJ2RnZ+P1eunRowc/+MEP6NmzZ73r2+12PvnkE9avXw/A8OHDmTRp0ikfY/fu3SxevJjDhw8TFxfHNddcc8YtWl6vF6fTicvlavCcK5fLxfvvv8/BgwcB2LRpE++++y4A1113HTExMUBVS9jKlSvJyMjA6XTSo0cPrrvuOpKTk/3bWrhwob8Vbvv27f7tXHnllXTo0MG/3s6dO1m8eDHHjh0jPj6eH/zgBwwcOPCMntOZiIiIaLRtNTaTz+fzGV2EiIiIiMi5cLvdHDt2rNG2l52dza233sqtt97K/fffz9NPP80HH3zAnDlzmDx5cq11x48fT0JCAgsXLqx1+5tvvslrr72G2WwmJSUFgG3btuHxeLjtttu49957a62fk5PD3XffzfHjx+nZsyfx8fFs376dpKQkwsPD2bJlC999912t+7zwwgvMnz+fmJgYkpOT2bt3L4WFhUyePJk5c+ac9nk++uijfPLJJ1x//fXMnj273u595eXljBkzpt77f/DBByQlJbF+/XruvvtuzGYzffv2xWQykZWVhc1m46WXXmLw4MEAjBgxot6BWt58803/OnPnzuW9994jLi6OpKQkcnNzKSoq4uabb+aBBx447XM6HbPZTMeOHZtti5m6MoqIiIhIi2W1WgkNDQ3a9n/1q1/RqVMnXnjhhVrnXTXko48+4tVXX+Wiiy7io48+Yt68ecybN4+PP/6YCy+8kPnz57N06VL/+pWVldx///1UVFTw/PPPs2jRIt58800+++wzEhIS2LhxY53H+OCDD5g/fz6TJ09m6dKl/vUnT57MkiVL+PLLL09b5z333ENSUhIffvghN998M19++SWB7TWRkZGsXbuWN954A4C77rqLtWvXsnbtWpKSkoCqlr5f/OIXfPbZZ7zzzju8/fbbvPjiizgcDl577TX/ttasWcMHH3wAwM033+zfTnUoW7BgAe+99x433nij/zktXbqUiRMnsnDhQr755pvTPqfTiYiIaLahDBTMRERERKSFi4yMDOq2Z8+eTWlpKX/+859Pu/67775LTEwMc+fOpVOnTv7bO3bsyFNPPYXVamXJkiX+21euXMnBgweZPn06o0eP9t8eHR3NH//4x3q7Gc6fP5/ExERmz55NWFgYUBVQ7733XiwWC8uWLTttne3atWPevHnccMMN7Nu3j4ceeogpU6b4u1JWM5vNmM3mWperrwOMHj2aO+64g/j4eP9tF198MUOGDGHDhg14vd7Tbsfrl35rPgAAIABJREFU9bJgwQJ69erFgw8+6H/ONpvN37p4Js/p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RERERETEYApmIiIiIiIiBlMwExERERERMZiCmYiIiIiIiMEUzERERERERAymYCYiIiIiImIwBTMRERERERGDKZiJiIiIiIgYTMFMRERERETEYApmIiIiIiIiBlMwExERERERMZiCmYiIiIiIiMEUzERERERERAymYCYiIiIiImIwBTMRERERERGDKZiJiIiIiIgYTMFMRERERETEYApmIiIiIiIiBlMwExERERERMZiCmYiIiIiIiMEUzERERERERAymYCYiIiIiImIwBTMRERERERGDKZiJiIiIiIgYTMFMRERERETEYApmIiIiIiIiBlMwExERERERMZiCmYiIiIiIiMEUzERERERERAymYCYiIiIiImIwBTMRERERERGDKZiJiIiIiIgYTMFMRERERETEYApmIiIiIiIiBlMwExERERERMZiCmYiIiIiIiMEUzERERERERAymYCYiIiIiImIwBTMRERERERGDKZiJiIiIiIgYTMFMRERERETEYApmIiIiIiIiBlMwExERERERMZiCmYiIiIiIiMEUzERaMJ/XY3QJIiIirZp+a6WpKJiJtFBla5dx5OU5eCpKjS5FRESk1fF5vRR++g757/wJn89ndDnSBiiYibRAriP7KfjnX7Bnb8J99IDR5YiIiLQ6PpeT8rXLKf/+a8q++dzocqQNUDATaWG8LifH/vYUPqeDmHE3EJrU3+iSREREWh1zaBjtp9wPwPEPXsZ5aK/BFUlrp2Am0sIULZ2P88BuQjr3JP6a24wuR0REpNUK7zuI6Msm4XM5yX/7GXwenW8mwaNgJtKCOA/vp+TLRQAkTL0fU4jN4IpERERat/jrf4q1XSecB3ZTuvpTo8uRVkzBTKSF8Pl8HP/gZfB6iRw2ltCe/YwuSUREpNUz28KIu+4nABR98jae0iKDK5LWSsFMpIWo2Lwa+46NYLH6fyBEREQk+CIvvBxbtwvwVpZT+PHfjC5HWikFM5EWwOuwc3zRqwDEXDaJkPadDa5IRESk7TCZzcRffwcAZd98jiN3h8EVSWukYCbSAhR/sRBPUT6msAhir7rZ6HJERETanPD+QwnrNwSAgvdexOf1GlyRtDYKZiLNnOvYQYqXfwBA3ISbsUTGGFyRiIhI21Tdaubcv1Nzm0mjUzATaeaOL3oVPG4scQlEj7ne6HJERETarNDuvYkcNhaA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)\n", "\n", "*Image Source: [An Introduction to Graph Neural Networks: Models and Application ](https://www.youtube.com/watch?v=zCEYiCxrL_0&t=824s)*" ] }, { "cell_type": "markdown", "metadata": { "id": "S6Mn3J4eZp8l" }, "source": [ "The equation at the bottom of the image is coloured coded to match the step in the diagram. For example, black represents the function to prepare the message, blue the function to summarise these messages and orange to update the node step. \n", "\n", "Note that $⋃$ must be permutation invariant, as the messages are not ordered. " ] }, { "cell_type": "markdown", "metadata": { "id": "qc-PDBzFl3Mc" }, "source": [ "## Graph Prediction Tasks\n", "What are the kinds of problems we want to solve on graphs?\n", "\n", "\n", "The tasks fall into roughly three categories:\n", "\n", "1. **Node Classification**: E.g. what is the topic of a paper given a citation network of papers?\n", "2. **Link Prediction / Edge Classification**: E.g. are two people in a social network friends?\n", "3. **Graph Classification**: E.g. is this protein molecule (represented as a graph) likely going to be effective?\n", "\n", "\n", "\n", "*The three main graph learning tasks. Image source: Petar Veličković.*\n", "\n", "Which examples of graph prediction tasks come to your mind? Which task types do they correspond to?\n" ] }, { "cell_type": "markdown", "metadata": { "id": "aQIneDxJPoCv" }, "source": [ "# Section 4: Implementing GNN Models" ] }, { "cell_type": "markdown", "metadata": { "id": "-2MJ10iRQNjm" }, "source": [ "The high-level perspective on the way GNNs are applied:\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "aWu98gdyHG7P" }, "source": [ "![node_classification](data:image/png;base64,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d+++yWKdDz30EDfeeCN9+/bluOOOo0ePHpRKJZYsWcIVV1zBjBkzGDFiBKeddhp1dXVJZfV1113HfffdxymnnMLee+9N7969Wb16NbNnz+aqq66iqamJm2++mZEjRyZtSW666SZeeOEFgiBIjqF///4MHTo0CbFvueUW3nrrLdra2pIq7b/97W8899xz7fptx+FtPp9PgtgzzzyTvfbaKzk2YwypVIogCHj44Yf57W9/y7Rp09h33335t3/7N7p27Uprayu/+93vaG5u5tRTT+V3v/sd9fX1SdX1448/ztVXX82CBQs4+eSTOfLII5NFPO+44w4WLVrEkUceyU9+8hM+//nPJ9XhmUyG2267jVtuuSV5QJJKpcjn84wfP55MJpME6CeddBKjRo1KAubnnnuOH//4x5RKpeShxX777cc555yTVK1XVutPnjyZ8ePH89hjj3HYYYfx5S9/mcbGRjZs2MCdd97J9OnTOeWUU7jyyivZd999k7Yx1lr++te/cvvtt1MoFJLz/Z3vfIeRI0cyfvx4Xn75ZQ488EB69+7Nww8/zFtvvUWvXr246aabOOWUU5Kqeth8b/PtTQJxIYQQQgghhBBCiE4sWlQzbsehwfpgwLMOpyxaKVJ4GMDbpz8DL/0Oc+avYNWM+dRon9oZS5h34f/HwLuupXrvHjgFoR/tt8p6ELpowUkcTpX7iRhQa/Is/dWdLLrncap6duOQyy+k6tTPY6tDrB8tetn31K/w7pjrWTvuHlpffJN97vkZul+XKHFW4DD4gaHt+X8w55rxtCxYzqAjDuSAyy7AH9oXU+dAK4aeFfLBnx9k8e0PUZ8PSKlU1HucaCFNFIQYVL5I2/Nv89bl49Brmhm0z2AOuvEnqGF9sDmHyofsceS/Mft719Ay/hFam1voef0FlGp8MgDWkdVb1xZCa01rays33HADN9xwA+l0mtNOO43f//73VFVVYYxh+vTp3HjjjYRhyF133cUXv/hFjjvuuC3uu7KVyBtvvMGtt96KMYYPP/yQkSNH8rnPfQ6A8847j3HjxnHNNdfwu9/9jiVLlnDHHXdQW1ubBJezZs3ivPPO4wtf+AJ/+ctfkupviMLNM844g69+9atJgBoHpr/97W8ZN24c9957L6effnq7KmFrLQcffDA/+MEP2lXJ53I57rjjDtavX8+IESNoampq17olPra//OUvOOf4/ve/z4MPPgjA9773Pa644oqk13dcgT179mzOPvtsFi5cmLRTiSvn45Yt+Xyem2++mbFjx1Iqlfj85z/P/fffT319PVpr5s2bxy233EKhUOCvf/0ro0eP5vzzz0drTbFY5NZbb2XWrFkopaipqeG73/1uMs5ZZ53Fsccey8svv8zkyZN5+umnOfLII8lkMgRBwI9//GMuuugi5s+fz6hRoygUCtTU1PDggw8ydOhQ0ul0cm4r29R8/etf56STTmL8+PH86le/2qQfe2Xl+3333cell17KmjVrGDNmDGPHjiWdTuN5HsYYLrjgAi677DL+/Oc/M3nyZG677TaOPvpowjBEKcXYsWMZM2YMv/jFL7j99tvRWpNKpbj66qtpa2vjkUceSarzjz/+eD772c+yYsUKLr30Ug455JCkIr+yBcyOtBUt/oUQQgghhBBCCCHEbk25aBFL7QM+ynpgHUpb0A5PK3wvDaTJ7T2A/W+4hA196wg0ZKxFvzGLmdf+DrNsHS4wFJXBUx5BvgC+xkVD4FzUS5xSyIq7HqLpLxPoETp6H/8Zqr5yFLY2R8mrRlON9auoPXhfBp36b1SlfFJvzWL2b/5ETVOB2jAEZXGEmHfn88H1v6d63nJqsln2PPdk/MP3xdZUEfpV4LLQq44+F3yV6r0HUq1SFJSl4Du0c1F1uAZfKfSaNmb9fDx9VzTRmMuw3w/OwR00kGJVBkMGl6ul+rDB7PWDM/BwNN/7FOb1WVQbhQWs57BEfdm3xr333suNN94IwN57783Pf/7zpC2K53lJBXTc87m1tXWr9ltZGVwqlUilUkl/55aWlqSiOJ1O853vfIeamhqcc0ycOJGXXnqpXd/niRMnEoYhtbW1QPsKX601/fr147jjjkvGtNbS1NTEM888g3OOhoaGdu074p7ip556KjU1NUlP8zjE7dGjB3vuuWdSCd/x4YLWmsbGRhobG0mlUknlcXV1NQ0NDfTo0YOuXbsm7WB69uy5SYhfOX/nHJMnT+a6666jWCzSp08ffv3rX9PY2JiE2qVSKelRbq0ln88nYXE2m21X/QxQLBaTxUsHDx7MN7/5zaSH+x/+8AdaW1uTCu66ujq6du1KY2Nju2Osq6ujR48eNDQ00L179yScjx8QVFdX06tXr6QavbLHfOUimO+++y6XXXYZK1euJJvNcvHFF5PJZNr1Mm9sbGTMmDGk02mWLFnCxRdfzPz585N91dbW0rdvXwYPHpxckxdeeIHm5mbGjRtHTU1N8tk999yT7t27Y61l9erVTJ06td213xlIIC6EEEIIIYQQQgjR2SnKfT4UKEX0H9qtDukUOGuxvkfqkMEMveyHtDbW06o9cqk0ra+8wYI/PYRuKpELwIYhYcYD30UBsVVop8AqzMoP+eCJF+hadKynSM2IoZBLoy1o5WEdaKNwvqL60CGY6jRZ7dP2+BTysxeDVigFqaJi9YtvsP79RaSUJjNgDxqHDwNnwNd4SqO0xnkKV5WhoLnbAjEAACAASURBVBXFoITTHVa+VA6sZd2ESdS8v5K6EExKkRs1COUHKCxaW5wKcLmA7Mi9WJ8pUB2ErHrlNXQxQGPRymK1xW1FJL5mzRruvvtuwjDEOcfRRx9Nv379oumUQ89DDz2U73//++y9996ce+65fP7zn9+qy1lZCX3IIYfw7W9/mz322IMLL7yQUaNGASThdTabZdiwYSilaGpqSvpWx+HvqlWr0Frz5JNP8pvf/IY5c+bQ1NREoVBIFp4899xzue6668jlckm7lHj/Y8eO5cknn2TJkiXk83kKhQIAmUyGP/zhDxxzzDFJeBzTWrcLsT8tzjlaW1uTkFopxcCBA9l///2TOWmtGTRoEP/5n//JoEGDOPPMMzn77LOT86OU4vvf/z4HHHAAo0eP5swzzySTyaC1TqrQ99lnnyTwnzFjBs3Nze3m8ElVPkzY3H6CIOC2225j+fLlOOcYPnw4PXr0aFdJHhswYACHHXYYzjnmzZvH/fffnyyM2XEsay1z5szhhz/8IQ0NDZssuho/1Glra2PBggXtFt3cGUjLFCGEEEIIIYQQQgixRUpB6DmsAT+bouHkY+m+cgMrxt1N/zbo0xLywe0PUp+rped5XyTQAdZXEABoQi/KoFMlWDntHfwPVqHDIqWchRoPPAuaKEwu53ROKXRthqDKR7cEVC1dR/Okd6g6eF9MyuGvaWXx069SU3TolMZ0r4OaDGSini2eA+MsWnsoT2EVpHNZWoKgXR6uAdOWZ/6zL9FLa9pMEZethq7VKBuSLjowIco6nApRtVkae9dj5q/mw2kzYEMrdK8hdA6DxtuKGtQ5c+awbNmyJHA84ogjkgUp43A4k8nwq1/9ilKpRC6X2+qQOK4G9zyP7t27M27cOK6++mpqa2vxfT9pldHW1kYQBO3akcRV6RBVD3/uc59j/PjxNDU1cfXVV3PDDTdw8MEH06NHD7p3784ZZ5zBiBEjGDhwYBLkx9XN8YKMp512Gr169WLkyJHU1NSw7777ctZZZ/HFL34xCZUrF3+MK+I/bUop5s6dy/PPP59UbI8cObJd5blzjnQ6zTXXXMPFF19MNpulqqoqqYhXSnHKKadwzDHH4Hke1dXVyXtxL++2tjYg6ldeKpUIwzAZ/9Osml6/fj0TJkxIjmPo0KEA7e6xOKj2fZ/+/fujlKJQKPDiiy9y+eWXJ5XklYutKqVobGykb9++yXvxQ5j4mCpD+nibnaVligTiQgghhBBCCCGEEOLjKcBZQmcwWqFDMHVZen/7KxRWrWXtbY/Sra3IwJLPwnF3onvV4gWOFBqMwlkoafCAVAjMWgqtLbT5CudCSGcIPTDKotBop3Cq3ONba1w2jQ2aqVMZPnj6NXp8+1TCeoVe10zd6lYavSxtYREaqiClo/YlDrSzoKPfNeA8TSEIUF6HwNqCXdNGzcpmUqEl63m41U3Mue428rkU6bzCKy+86XCo1g3YDc20VClMWxHyIVYrjFI4ti7gnD17dlK563leUlUcB8FxoKi1prq6epuCxDhYjvcDUUj+8ssvM336dObMmcOaNWvQWrNu3TrmzJmTjBW3EYm3O+qoo/je977H73//ewqFAuvXr2fixIlAFJj/8Y9/5IQTTuCqq67ioIMOSgLk66+/npkzZzJ79myMMSxfvpxHHnkkCb5//vOfc8kll3DRRRfR2NiYBLPx2NujvYa1lmXLltHU1EQmk6FUKtG7d++k8r1yPlprGhoakmA3fuAQz7W2tpYFCxbw8ssvM3PmTJqamli+fDmpVIqFCxduUiEdV1V/motMrly5krlz5yaV6nGfbyDp9R7PKf4e349Tp05l/fr1NDQ0bLJf5xx77bUXmUwm2Vd8XuLtO7aR6Rio70gSiAshhBBCCCGEEEKIrZLzPEKnsGkFWhM0VjHw4q/zwZo1NN3/HF0DS79WWP7fd9OlWxf8wIDWKBRpokDceg6/LY+PxumohzcoLDYqQ3dRwxEFGGvA86Iqb8/DBIaMUyhjcQ5coYhrzWNLAdpXaN8DrbDKgdLgNCiwNo6pXdIexlgT/e4cOPCKjmzRgnXkPUO+KkvPg/ZmRdZSq7JYE2K0h0cK3xZJj96furRHbZc+mO61lPBIGYcyCuV3aMmyGZUtQuK2KXEIWxksxiF5/P6WgvF4H/F+W1paePTRR7n77ruZPn06DQ0NfOlLX+KCCy6gR48e1NTUcP755/Piiy8m48b7gahK/corr+Tggw/m7rvvZt68eSxZsiQJhY0xPP7448yfP58nnniCPn36oJRi0KBB/O1vf+OOO+7gxRdfZN68eaxZswaIwtdCocCvf/1rCoUC1157Lb7vJw8Btld7Da01+XwepRSlUqldVXPccqay93XlvOIqb+ccb7zxBn/4wx948cUXWbVqFSNHjuT0009n//33p3///jz++ONceOGFQPuq8MoQulJluFz5fmVv947fNyefzyf3T7zPjqF8LA744+OMq9nj89Dx8/GipZUV5B3n2/F4dnQQHpNAXAghhBBCCCGEEKKz6xhUdfzdRW22ceApTaAgXc68TM9q+v/se8xcuITC1PnkQkfV+ytpW7SKbL9G4mbkHqCdw/qOoEcdVimqAo1Oe6hiEd9qUIoiFq0UqmQg7eFMiC6ZqH+58lhX5XBpjY9G19VQqsuhsmlMqQ1dNBAYPKWwlKvMHXhKoRwo51DWoT0wlZmdAlufotS1hirfQ3mOfHWGbiceTbf6HDY0KN8D52HzGs932FSBvHbkSjlKnk+gFBlA260L/Wpqakin05RKpU2qsqNLoJIgM25xsrUtU+IAs1Qqcckll3DfffdRKpUYMWIE48aNY/jw4XieRyqVShZ4rAwxK8NNYwzV1dV87Wtf46STTmLhwoX84x//YMmSJbz33ns89NBDFAoFZs2axf/8z/9wySWXoJQiCAL69+/Pz372M9asWcN7773H3LlzmTNnDtOmTWPKlCkUCgXuu+8+vvnNb7LPPvv8r/ppf1JxBXQc2G7YsKFd5XZlQB+Hv3F47Jxj0qRJnHfeeSxatIja2lquu+46vv71r1NfX08Yhvi+nyw6GevYVqTyWscPNOK/FHDOUSgUmDBhAscccwz19fWb3CcfpbGxsV0gns/nk30CyTHE71cG4HV1dWQymU0eCmzuOCrnUfl9R1zPrbFzdDIXQgghhBBCCCGEEDs5RbnxCB6gcPhW4TyP1j270v+6/8OGffvTlFbUpDL4BUOVToNVWMqtxBV4yqKH9KdQncMvaVLGxxUNOtToIArfjLUoT+OhUG0BmaIhlU6zNgtDz/wCKu3wjIEuNbh992CtLaK0pu2D1RAYlC23pNA6qkA3FmUdKeWR8n2cMe1CMauBbjVkDt2XVmtJ5x3ZooYNeVzoYf0cofMIVQoyKZxWGO2RXh8Srl5HXA5ucDi1dSHgIYccQp8+fZLfp0yZ0q4qGKJez5W/x72otySuAv773//OI488QqFQIAxDxo8fz8iRI/F9n1QqlSwcGbf+6MgYw5133sm1115La2sr1dXVDB06lHPOOYdLL72Uu+66i4kTJzJ8+HCstcydO5disUhTUxNXXnklDz30EFprevbsyVFHHcU3vvENfvnLX/L3v/+dW2+9lWw2myzkuSMC1HgRzSFDhiQPJaZMmbLZ1jXxuQqCIHmIsGHDBn7xi1+wZMkStNacffbZXHDBBVRXVycV1PF2Hxdcx/uPhWHYbrHMdevWceaZZ7J48eKkentrdOvWjYMPPjh5qLJw4cJkvDiEB5Kgf8OGDUkAftRRR9HQ0JD8xcLuRAJxIYQQQgghhBBCCLFFVimiIm5HCgPKACFeEKK1T2b4Puzx0/P5oKdPyVmqMzmKxRLoqH2IdkBoAUeP4UPJHLgfLb5HfZimMH0+hI6wHCYrwOhoiNY5S1DrW8kHRVoP6E3N4fuhtEIpD1eXZsDxR9DiW7TvkWvKE65tgnKuagGsi6q2rSMsFFGh3eyil8736Xv6F1leo8BP4bWFbJg8Gxv6hHg4nUE5j5KG0Fd4RceC8Q/w7LW/JdXSRsqWQFsCHUQLg27BgAEDGDFiRBJev/zyy3z44YftwtM4sCwWi1xzzTVcccUVWxVOxsH6jBkzaGpqwjnHPvvsQ9++fQmCIKk4j6uC582bt9n9OOd48803+dOf/tSuz3j8XSnFoYceyvnnn59UGqdSKUqlElOnTuXOO++kubk5CXFTqVTSE/0b3/gGAwYMIJVKJQHy9m6p4Zxjzz335Ctf+QoQhd8LFixg8eLFm1TjK6UIw5Bf//rXXH755RSLRZYvX867776btAQZOnQonudt8iCjUCh85Bzi0Luurq5dv+3KnwuFQruWOlvbTqauro6TTz45efgxefLkdnOp7Ou9atUqXnjhBZxz5HI5vvzlL2/SZ3x3sXsdjRBCCCGEEEII8S8X9Ykod4uI/mHbf7mo7XDyu3UuqhR1Dkz0fgA4Z3HOkvzHGSwWg8U6iyuHWC7ua2zLXyb6bq0rLxbosM5R3j0Wh7MbxzIOjHPRL86225ezjtBFX85Fv1vK+ym/75zDOEeIIywflutw6KbiyybvOYo4nIn365K5xeNG52bjtq7yOG15vlsRJn7iq9mhNYQDAgWBF32VdPQVeFCKvzQEGkIg1Cr6TPn10FOEqny9N94uUWtqNv3aWTnn0KHFLxpoMbi2EKssuiWAVgN5gzMOgypfcIdyDquiEDMTgFeVIXfiSIZd9l02VKXIhwadzYA2KGXxnUNZAI2uq2PgeWexplc9oFn+/KuE785DB4aUCdHaAiF2xToWPvg0aTxaqlLs88OzUf26EWgFKEhr6j97OF2OGkFrGFBavIIPJ70OLQWUCVE2BBwUSzRNmoZZuQbneygLqbyBVguhQRkbVa/v05s9f3QOi+t8mkPDsv83AZZvwA+JWrcoS9pY/PVtBC+/y5r7nuGgIQeB7+G0wyqD1lsX6qbTaS699FL2339/nHPMnDmTe+65hyAIkmsSB5YTJkzgnnvu4YgjjmgXYn5URXW8CGSPHj2SAHvp0qWsW7cuCXq11gRBwNtvv01zc3PyerFYbLd/ay3Lly/n+uuvJ5/Pt6tiL5VKOOdYvXo16XSa4cOHJ/uJA9innnoq6X0eb+ucI5/PUygUqKmpSSq043Erv1feox+nY3/ryvPT8b34u7UW3/c5//zzOfjggwFYunQpt99+e7sQOv78tGnTuPPOO9l3332TVig9evRIjmvp0qXJA4v4eFpaWnjggQfIZrNAVP0dBMEmfcG7du1KTU1NEoDPmDEj2deUKVPYa6+96NKlS7se8R91DiqP/7vf/S4jRoxAKUVrayuPP/54u+vgnKNUKvHwww9TKpVIpVJ87Wtf49RTT213HJs7/x3Pz0ed54+7V3cE75prrrlmew74UU96tscToB05hhzfzjXGrjT27jLG7nKPfJTd/fptjzF25D2yu5/b3WWMf+X129Ztdvdzu7uMIffIrj3Grnb95B7ZecbYPtcv/j/xFT1bO6ScDjAKvHI6bDxHqMB3oIzCAW0a0s6glMOojTG7hXKLBRc1oyjnfO3GsBbQOBVV6YbldQGdc4RagbPo0KGsAqUouGgMXzlUOapWUZKOcZYijtBaPKfQJtqPCQI0oJzFKktJOQyawIFWqrzwYTS/OBhvP0WLcZaCVqTDeD9REK6tJjSOIgpPg1MqCtJV1FdaORftUFlQDqM0noX823NpmzCFjFLR2XKK9IghZA8YhNVqS2sWfuz1Tl7XikcmPstdD9/P869O5rlXJ/Hcq5N44dXJPDPlFZ6bMonnXn2Fl16dwouvTubF119lwqSXeKb8uYmvTebNt99m6P5DyaUzaBc3FWl3y2wcdwvz2pbjUC5q9W00pNqKrP3by2TaCtjyOdRDBlH/759FbUXfaWcMa2cvYO7Dz7Lu75NZ/+yr5D9YQuHDJpa+M4f1775PYA11/XqV56JQSqO0h/Z8tI5abjjfkdqrDyZULH53DvnaDINO+wI0Zgm1QmkP5TzwPLLduqL79mb13Pf5cMFCmt55j4baBtKZFGFzE3buEl772W/Jv/EuYS7LgB9/h4b/+ALrcimKnkfOeWA9bFWG7gccSNOsuWxYvoIV786kpraamn57oPN5XHMLCx55jPk330v1ymZcPqDey9G6oZlVzc2sLTXRpd8euHQKC3QZPJiip/hw/kKa5y0iP2se9Q31ZLM+qtCKmb+YuXc8zNu/vZvBp3yBPb57Gq2NGfI6RZX18QMP5bVfVHNz1885R2NjI4cffjgvv/wyq1atYtKkSSil6NevH6VSibVr1/LXv/6V66+/ni996Uv84Ac/IJVKEYYhzz77LM8//zwTJ05k0aJFKKWorq6mtbWVfD7PgAED6Nu3L6+99hrLli0jCAJWrlzJAQccQHV1NS0tLTz++OPccMMN/PKXv+Spp57CGMOKFStYsGABixYtYtCgQbzyyitMmzaNJUuWMGvWLA488EBqamqw1lIoFHjggQe48cYbOfLII7n88suprq6mubmZ+++/nyVLlvDKK6+QyWTYc889yWQylEolli1bxo033sgrr7zCBRdcwIknnoi1Ntlu0qRJPPPMM8nDgZqaGlasWEHPnj2pqalhwoQJPPnkk0yaNIkVK1YkVc0bNmxg7dq1DBw4kKamJu69914mT57MpEmTkv7ZjY2NzJ07l969e1NXV4dSiqqqKj772c8yY8YMFi5cyJQpUzDG0KtXL4wxtLW18eijjzJ27FiGDBmSLAKay+UAePrpp5OWMd26dWPgwIGEYciiRYu46KKLOPLIIymVSixcuJBSqcTixYt59913aWxspFu3bkl7lQ0bNvD6668ThiGtra185jOfYenSpVx99dUcd9xx/Pu//3tSff7WW2/x4IMPMnXqVN566y08z8PzPKqqqlixYgV77bUXWmuy2SyjR49m8eLFzJ49m6lTp1IsFhkwYACtra2sWbOGG2+8kZtvvpl8Ps+5557L1VdfTffu3ZP7dPLkyTz22GNMnTqVWbNmoZTC93183+ef//wnQ4YMIQgC7r77biZPnswzzzxDPp9P5rNhwwaKxSL9+vXbJND/tP53/OM+o9x2jOc/6k8ftsefROzIMeT4dq4xdqWxd5cxdpd75KPs7tdve4yxI++R3f3c7i5j/Cuv37Zus7uf291lDLlHdu0xdrXrJ/fIzjPG9rp+UG67oKI+yCEkIXhMAz7guaiHcKii4Nh34DuFU1BUUfCbBpSJKsBdlGpHQXZKY8pBeGWBqQEKRFXjKTSes3ghYC0FZchaUFphPYVCoYzGakXgKZyGEId2NurF7ByYkLRREBhwjtKi5ayet4wqL0XDnntAvy4EWYXyUvjWi5ZC9BVKW+LC9XbKAb4rV/+6UkjRtrH8tRn06z8Iv1cXyHi4lFcO7KOFE41yUSDuHF58npWLKumVJhM6PrzzKdaMGUet1uAsxmpqfngq9V87ltDXbKlV8+aud8eKUT+d4j9+fBF/e24CXnQgUW9s5dGnZ2/qG+vxfB+sQynNh01NvL94AWH5DsihyAIT/voow/bZD2UdqnzPuHhol5ym8v30r7nXtY0C8aLnyK1uYu55P6d2zTpCbSgqD/+U4+j/x8tR2czHD2DBtZZY8Oxk/nHvA/TIG2pc1HvbeIqSdoQassd/hoPO/xpeOtVuTpVzMy6EMEAvaWXe3Q/y3qL3+fINV+K6V+G0B/jRAyJrSDlHqlRCL13D3CefZ92Uf1CauRhWtpI1mqAuTWr4QLocMYx+Jx1Dql9PXNYHosUtQUUtWIzF+RAWWlg7cSorH3sZ88b7mOYi2X69WZEJyQztw+H//mWm//JOGia9R6At+R5dWd+Yoevo4Rx03YXoXC66aDaAYoCds4TFjzxP06szaF64jLbWPDqtqenfAzt0T/Y/+8vUjDoQl/GxKvpvAeUUOpoh8Wn5qOtnjIkeRhlDPp/nz3/+M8899xyTJk2iWCyitaZ79+6MGjWKc889l2OOOSZpdVIoFLj00kuZNm0auVyOVCqFMYYgCCiVSpx22mlccskllEolmpub+ctf/sKECROYPn0669evZ9iwYeTzeUaNGsVFF13Efvvtx/jx43nmmWdYuXIlpVKJnj17ctNNN3H77bczdepUxowZw2uvvcazzz5LGIbU19ezbNkyhg0bxhe/+EW+/vWv06VLF6y1rF27lq9+9avss88+jB49mqeeeopJkybRrVu3JOwdNmwYY8aM4TOf+Qy+76OUYvny5YwZM4ZFixaRy+VQKlq0sVAoYK3lhhtu4Oijj+anP/0pzz77LJlMBq016XSafD6PMYbRo0cnfb2/8Y1voLVOwltrLcViEd/3uemmm5Le577vJ/P629/+xuOPP86UKVNYs2YNWmu6dOnCEUccwVe/+lW+8pWvkEpt/HfAWsukSZO4++67mT59OnPmzKF///5ks1m6dOmSBP6zZ89m3LhxzJ8/n+bmZgC+9a1v8aMf/Sipqm9ra+OBBx7gnnvuYerUqfi+T7du3Tj77LO5+OKLqa+vTxZXvf/++7npppvwPC85D0EQUCwWOfroo/nZz35GOp1OqsGDIOCll17irrvuYubMmcydOzc5N4MHD2bo0KF861vf4sgjj9zk+G644QYeeeQRUqkU6XQa3/eT1is1NTU8/PDDrF+/nvPOO49169aRzWaTe7JUKmGM4aSTTuInP/lJuwU6P63/Hd/SZyQQ3w5jyPHtXGPsSmPvLmPsLvfIR9ndr9/2GEMCcRljS2PsamHZtpIx/vdjyD2ya4+xq10/uUd2njG22/UrV3gHXhRqayBjozASFbXSsAoyRCG5Mo6iVoQKsjYKxZ2OAtISkAJ8U24d4kA7h0/UbiHwwbPgOUXoRfu1QAFD2kEmKC8EWAgozF5I2xuzaZk9n1xtDekDB1P7mQPxetbjtE/JWrx0CkXUqiTQNhqrWCRdgtY357L0938h/MdcbFMboe/I1+eoH30QA885ieyB+6I8H+f72LTCKhOFfJZy2wuSNRbDciCujcFZi7UBayfPZOZ/38nw006i/oTD0D1rsFrjvCxKRWF2XONtlcPG4SHgUKRD+6kF4nHIo5TCeZqv/58f8eRLz6Oc48DBQzj79DM47KCDaairI51ORy0ntGZdoY2f/eqXTJj4PIE1eEpRrT2++oUv8d9X/YKc9lDlxeni0xM/OamchY1Lu7flPvw0A3EHNjSY5lZMaxsp5aGwKK0gDAGNLQTY+hq8bnVQDinjeVXOLcAQ2oBsEWxLkTAske5Sh/I9HBqrNSUV9RNXJkT9/+y9eZglRZm2f78RmXnOqaVr6eqFXuimm62h2UUREBVUBMRhXEbUUVxQZ9FPZ/zEDX+iKOIoqOPAjDA6Di7g4LiAIIuKIMIHAqLsyNpN711V3V1VZ8uMeH9/5MlTp4oGGmQ37r76qjrnZEZERkbVddUTTz6vOmjUQD222qA+OkFjrEnsBBNbuubOwlciTHfS2inKN1S8MTREsF6xqSeNIbUZSZYRjVfJVo2SjjXITESlv5vSrBmotYytXIeONZDIYuIYU4qxSUwybwgiS109LgJ8RpI67HgTs7lGfbxKvVbDRBGVni6ioT5kRoUMhzUxogbBoJJvRIlsmyAOtIsWqipjY2OsWbOmHalRqVRYsGAB5XIZ1amxI8PDw2RZRhRFWGtR1XZWd7lcpquriyRJ2sJ7tVpl3bp1TExMANDb28u8efMol8vtNmu1GuPj46RpSqlUore3l82bN6OqzJ07lzRNWb16NWNjY6jmruaijSRJ2tfpnGPFihVst912lMtlqtUqq1atotFotK9r/vz5bdG72BgQEUZGRtoidRH3kmUZzWaToaEhurq6GB4eptFoYK1ti7pF20mS0NfXR7PZZHh4mFKphHOOSqXSFmizLGNoaGjKmIt7VczD2rVrGR8fB6BSqbDddttRqVSw1tJsNkmSBMg3hArRd3R0lNHR0fb4Z8+eTX9//5TjxsbGaDabiAg9PT309va2+y8KWg4PD7N+/Xq89/T09DB37tz2Gih+f9VqNUZHRymVSu0NhSzLcM6RJAn9/f357+VpAnStVmN4eJhNmza1xzUwMMDMmTOnzEdxXyAvtlmv19vzbYyh2Wy27/XcuXPx3rN+/XpEpL1JUay9RqNBV1cXAwMDzwpB/LGfmQkEAoFAIBAIBAKBQOAvmZZrO/JgyN2/RgrLrxBDhxU4PzbxEJuW6Ke5gGxUSSXLnaRNBys2IRsm0FKMX9CHzKpgNXdHqwo2A7G5qNbtyPOXM9D1m1j3w5+z4twLMPetoy+LGENp9pRwuy9m2YffQfeBe1CqVFph37nsbCJoSIZNU9b9z69Y/y/fofvBDfQYS8kaqlnK+PgE9fN/xb1X3sLSkz9I9Or9aFiITYwiuTveAK24ksIVb53mn4siNnfIzt5/GVsOfRFXffHfmH/5buz8jmPoPXA5zIhRiqJm+bwZbYnbQjt+5unAWst4rcqGkWGc9+y96+6cfsoX2X3JTkROMSJ5BLsoaRLxg+9dyFXXXJ2L960n/ufMmsUJ//R/qdgYq9p6mqB133VSCNeOr8pUgfxZgQi2pxvb0wVGceJQI1gFkyk2A2ss2hJvH7EZhIZXpGShVEG0CyeCVdP+OfG01o2xqAdb6cK5FOmqUJo1iPUexWDEUvUZMQaPwUr+hEGxwSSAM4KWLJEqUWZQb9CeHqJdexBVIg/WxngFTZXyLosYt/lGVUUN3rn8yYA0f7JCbC7AogaNDNpj0d4uytEsrIGmQFMFbT39Ebso37kiF8L1cVTrK4RNmMzz7uvro7u7+2EZ0YU4mWUZtrXpMjQ01P68EC4Lcb1TcCxE5d7e3rabHJjSlrW2vbnR09MzRVAs3MfF8YsWLZryemvXYa1ldtRvyQAAIABJREFU6dKlbZG6q6uLnXfeecoGSiHgF+cWruQiqqMo5liIy53XOXPmzCmfq2o7/qQ4rlQqsWDBgvZ8FGJz50ZO5xMjxTUV17zjjju2XxcicDHW4rqLeYzjmCiKmDt3LvPnz2/3VWx6FH12dXVRKpXamxtZlrXnoXOTaXBwkNmzZ9NoNNrzMv06uru728VIiw2RzvVQbFgUYyjOTZKE+fPnM2/evClrq1NALo4t5qW3t5e+vr72sZ3jL/qz1rYjZoo1Nn3TrNFoUCo9xgbd00AQxAOBQCAQCAQCgUAg8BdF8Qd6IR48ptOsZfMVBasefIa04ki8CIrNi0+qpyfLRTXTcpY31BGJwWa5ol5JM+q3P8hd51xA4ze3Ub1vFd39M4h2W8jA0S9hzmsOQef040xMlLXc4hE4Ecgcbu1mHvrSt9h4/iXMbjqMVyTL6JcIHcnYfN19/P4DX2DOG1/Bzn//NnROf8uq6rF4emrKqrN+wtp/PY+5G+vY2NIwjixrYpOIUpYxw1vs/Ru59aP/wryR45jz1iPzKBYT5YU4rWlnoHtaES8KgmJFECsIGW5GzM7vegMbL72O0i9v4/bf3MLgqw9kx398O9GO89EeSyMCq5bIeYwDrCEVj9rHoSo+QQqhp5mm1Oo1jBiOe8tb2XXJTiQq+dyK5Pfexlx13bWc/vWvMV6r4gAEZs2cyamf+zzz58zFNjxTUs3bCnj+NACmlQHf+kA6xgFPT0b/o9EK3AGRPNPeWBx50cw4yjeBRExrH2jSQTodg9AVlfK9GK/58gNsS4gESIoMfABjyVQRm+QCvFcsEajBKYiNSA2krc2oGCHRXFCPNN88cSZ/MsNi0VY0kBclsiafd/KnM2wEGEPiHTGS/0wbixhBJc/JL6nksTc2BhSJBVTRfGeEslqcV4wR1JJvArVm0EteoBWgzGNvehTibDEvhYhojGkLnIUwXojP0ws2doqdRXvFZ9Odz0W7haC6teMK4blTWC7OKcZX/P4sHNJZlk0pvJgkSVvArVQqbWF1uhhe9FdcU6eor6ptIbjovzi/EGuL+JiineJ72/GUhnOuLV53znfnPBRfRaTtkC7G23ktnfPeKaiXSqUp4nHn12IsnX2LSPv+dhY4LY4trq1oe/p1dI6lmLPpYn9BsZnQOd+dbXSujc7XxTUWc9x5nzrvQdFe5zronNvp97uIcOm8R88EQRAPBAKBQCAQCAQCgcBfBJ0OvMfzmLb3Duc93npi8Zimg9EUNlcx5RIMduMqFoPPnaImJrNChpJicGlKRUGani3n/4o7TvtPSg9sZNBFDHnwa4Zh42ZWXvt7Ri78JTt88B2UX7gbWopxPhcmMzwyPMYdJ38Nc8E1bNfIXct1gbgU0axnmKiE8Y6FG+tMnHUBD9yzloUnfQCzdAiNHLIlZfVXzmXsvy5g5midZgxOHZXMkAFV5+iOYjxK1SqDw1VWfuos0vvWsfj9f4v29xBb8I2MOLHtuBSnito8X13VEHtAIqJMYUYP+/7Te7nrvSezeLhG8wfXcN0vfseCN72aeW89kmjZfFziccaCJxdDTe6+faoRkXbesssySnHEEa94FYkIkuaZ6857MgOr16/hk5/9NJsnxvN4BjGU4oiP/OMHeNkBB2IdeFWMV9SYdl645B2h1qDkBVA9StLKh+kUmJ5JlJaz2UirrqkQeUFMLvhmkheXteSCtzEPd5QWiM9Fa20p4dKycjty8ToCItcSxEVabvSoXWC2XVlWcyHaKmhhuweKWpVF0dnCrJ8LevnGg5fWj6KCcSZ3c0fgo1xI71ab959XkUVFyExeFNcoJNbiyTe8aI1TxORueT8ZVeMVMpH2AyIC7aKqTA75UdmaMFgImJ0iZSGcTj++0zk9Pb5myn3peL9otzj30SjOmy62bk1En35e57nbMp6tXUfxdfp1F+d0OrW3No7O8zoF9eltPNr4HumYrY2nOHf6/evsf2t9dLq7tzZfnddWjOWR+tja+Ke7wLfWx3SK4x9p7W1tjJ2C/9bG9WwhCOKBQCAQCAQCgUAgEPiLYGuPhW/jiRhRrFf8hhHWXvQbVvz0Cro31KiL0L18RxYffShdL9gVnd2NeAdicKYlEseGdGyc5i//yNqT/oNZo1ty0a7ZpCwRGsGErzOzAXLlrdx83+dY9KG3M++vXoYMVHLH5UiDP/3b96n/8gbmNTxkGVqJqadNbFKiag3WQbezaKPJgDHULr6WW4c3sfSjx1FeOJuHzr+ciW/8iP7NDbyVXMhTy6b+boZe+iJiMtb+4rf0N0Gdoyv17NBQRs76Mfeu38TsY15JvN0gpaULgJQsNhhjsQriACM0RfKioT63kHuU0sG7M+c9r2XLV/+HnqayaKTB6Dd/wvqrrmPeu/6aOUccDNv1k1qDwWBS5ak0iItI2/GYR2Mo4h2L5y6gr6sHUkdkY/AeFwmbauOc+vXTuWPFfXjAeMWI568OfRVvfPXR2KanUGa9ocP63Ip/8Q6NIjZNTPDzX12GKrz+8CMpR8lTd5GPE5W8GKxA7vL3ueBsBXzL+azSIfQ+CvkDFR7II1IkjyCHVia+4tvxOEIeSWPJo4KQXDRvLR+0NYbYQeI6OmilrxTRKWjLpe1ph3cX/ldtxddYR76u8tSVluDdEtM1F8gyqzjyKJRC+G5j8mO9ze+zYbKYbnusgGSt7PBn1gAbCAQehSCIBwKBQCAQCAQCgUDgL4JOd3jno+aPhRfFenB3rOHuU/+dTZdfzWwSaDoG4wrpzStZ9cOrMa9+AYs++x6i+dthM6UcCQ3jicSj963hno+cxsCGccRYUp8RlUrU09x9LlFMbC3azJizYZwHPv11Jm67m6UfPI4oKTP61fOpffdi+hopqg5rY6oZ2IVzmf2hdzC2Zg1rv3MxpYc2U1bQCIx47O9u44F3fpquOYOsemgV26UxCZZGs0HVGmqD3Sz45N8x5w2HQjPFnrsbK7/8bQY2ObowuKxJnytRPe9y1vzwN2yY38Nun3gPA0ccgBWDNh2ypYpsHMc2la6oBF0RJDFYixEDZcPgsa9k0/U30/zNLZS9Mjuz1G9fzYMnfIV1F1zBkuNeR9+rXwJRE41tLo4+heugMx/XZY4Iw6477Yh1ntgmZM0UiQyZEc792U/40a8uodZSuS3CLot24DMf+TizK72Ic3j1qLV451rxMTm581ogtvzgp//Lyaf9C9ZaXrr/Acwbmv2w3N9nDsWT256Nyd3QRZa7Fo5sJqNBHqut3A2voBC1XOfGgIjP+zG0ollyN3cG7dYh15JNZzHSaRsN7Z4kz+Y3aO7SzpV1jEKsebHXWpRfXXc+nLwpLaJhJtt0KIZWnjjSdpoXOrwhj0zK6wLkk1IUvS26NpPh+IFA4FlMEMQDgUAgEAgEAoFAIPA0sRU161GOml54UKbrhltpTjuOlekHqyJOIfWkE1uwcYwpl3MLapHD0HFWMTxTS2n+4T5u+ODJLLpjPYvSiHFJGasYxn2dHhtRajqGL72WG679PUs+9Q/Mfs1L0JkVKl5o3nA/t/3dycxeM07Z5VmwEhmGJaP/xfsgm7cwftf9DDaUODN0p01KJdj83Uu57Xu/pKe7l4nRMWZKTHcmKBHDJsPtuQtL/+WfifdeSEUM/S/fn5tO+DJzbltNT+qoWOgSix+tk216iEVxhGYZ3kQ4U6K2YAY7fe4D9Lz6YLwx0J0w672vpbz9bNZ/7Exq965BkpjU16mIpekmmLGuyi0fOZll1x1NvGA+w1dfy8rrf09PXel2EZJ6JhJLPRYslijz4DLivjIOx4CFhnHUtUGX7WJpWkJ/eRcPXfE51hyyFws+fTx+3+0RMfSQZ1n74l53/C++nXrHto3O6ByAOXPncPGPL0S9EmPxaYpEEc4ol199JV86418ZrVYxSYSmjqG+QU791GeZPzALaWYYk0dqOPWIza3HU9attTScY0Z/H109Pbzjb9/G0NDQIxb3eyYQcoFIpsV9SCvixPjJ6JO2OP1ojYlSw6Ni6batgrQtF7YXUFvI5nmjUSvPux0zox4UnFEyJP8RBRCTP3XR+lm3rf4cviVcm8KMjjiIVYlF80x0q+1F440gKsSuJcQbWlE/5BfqWoUmyV3lrjUwFcjEo5qP2TqwLXEdmVpQ89kVEBEIBDoJgnggEAgEAoFAIBAIBJ4GPJPlBHNEWxZLzGQMguaiU9pxnFFtC3WFKOdVMYVirXkRRm9zp6kn/2M3rjt8IkjmETzZ5jFGLv0ta869GFmxDhEwS7Zn3uuPZMbL9sXO7QeT/5nsVXHicc5R3rCZO0/7D7rvX01JLTUnZOUSJnWUjMFYaGhGbBLmrG/w0Elnsu7a69nxrcfgmp7bTj6TGQ9sxAO1yIEVRhPDrA+9nTnHHU3WqLPimz9h9JzLGNxcx3jFqmewrpisCROjxLHBaZ1xY/BeaS7bgR0+9Q/Ey3bMoyhiIdpvJ/Y+81Pc+4WzGLviRgbrSmoFZwyRCkmWC75bXMbEkjks+eR7qRz2ArKSAcnToU0UMePQgyl9rsydXzgTuech5voE0iZxKcI0Urozy4Zv/wQTR4jzLMYSecE6xWIooZB54qJQHoIZy2jgaYhBSKiYBOdyETPBs53C+qt/x43vvp35xxzK/GP/Ctl5B7IoIysJ0swLGkorJ0PV4jBEbf/utvOwyByFmLy4YpwpRgypelaOjvChz5zI8PhYvjidp7dc4kPHv4cX77EX1ntS8WTW4FTz7GhtRbKkeQG8zGWIsRgVjjn8KF68137MG5pD2ebFCQsR/Jl2iec/fq2imsXPI5MCtQhgtlXizf3S5dYrI+QT3OrDtLJEpH30VnznMvmenVqqtPho6nsYoukSdIeynxvBp49fpjeSZ6m0Bz35fkc6NK1qAa0CpFMuJBAIPEcIgnggEAgEAoFAIBAIBJ56OtzgvkPRMjb/3tFyfBYO4FZ9PIsiqmR5I9hWkT0xBm8U5zKssRgU44S4MIEK1BPBeo8Vj39oEw9+8Sw2XnQFs0ZqVFQRo6T3jfDQNbej++3Mjn/3VsoH7Qn9FWpZg4pE2PGUlf/9IxpX3kR/3WBTTz2KGDcwPtgL4klGx+h1hoGJlEgsXaMNxv7nN6y69EbiSonyxlGMh0Ty1OF1ZaX72Fcx7/jXowMlRHrZ8WPvYmSXpaw87Rz6HlxPKc2IjcWYVq6zhzEDIxVhrKfM3p/4e7oO3j0X7uKIzCiuElPafSG7nPwh1n77f1lx3s+ZuSGlVy2JQuYdGyuQ7rOEnT78bsqH7Uej2xJLLhg6MXgF0y2UDn8Ru86byf3//QP+8IvfMncsoXuiQTlKMM2UnqgCDY+qzd23IvjYUBPF4jHeYb3PHcE2YkIzSlGJOBWaxuNU8/xogWbscQIla1mwagJ3xgXcefHNbP/Ov6Ey3mSg6rFALRYaViib3KKcO4l5wkJkIYzn606x3mMweDxjaZN/+bevsGZ4GBVDZEDUcfQrD+dvX/9GuloZ42qEJp7MZ5QlwnvFttZ05nJRvJE5xFgSY9lxwSJ8I82rMZpHLoD49FMI4TLlHZnyYhvHKrmw3k5I72hItBDdJz96xBdSONanKuAy/VCmtqloPtQpT3zIlJft74V8F659fVtR26e8lNa/Vi2CRzwuEAg8m7EnnXTSSU9nh9tS7fbp7vvp6CNc37Orj+dS38+XPp4va+SReL7fv6ejj2dyjTzf5/b50seTef8e7znP97l9vvQR1shzu4/n2v0La+QJnU0huqnkacQiLWGz5azNo4WlbVCNfCvlQJQGHgESD6KK1xQvShoJqdGWyJ5nCVsEb5Qxq8Quw6wf477P/jvuvCsYmMiIgO44zgVL5+nRiGz1BlZedCX+wXXM2HkHklldmLpjw3m/5O6TvspOpgtpOjRJWBdl9L/2EJad9nHmvuFVjIyNsuWB1QyNZ0Sxodqs0h+XiMaqMDaBaWZ0xRbjlS3iiI46kJ0++350oARRQqbgZyT07LyAmS/ej3UPPcTm4VHqWUYiEZIpdWNYXVKy/Xbihad9nNLBy6l3WyS2eVSHCE4MmVGiGRUGDtiHeYccQLMSM5HAlt6Y+AW70vvOo1jyieMx++xAWjZEaogcGDWIETKBzIAmQjy7j9kvP4AFRx5C1tPNyJ33UW+kRBpR8RGxM1gMGYaqemqAJyLJBOMNsRqSDCITM26V1EA5E7IoFzqjVrSIR8hajn8rMamHcSf4oUF6Gh57/R1EYmjYfOOka7/d6F62pCVIPiwb53Gv22JlighO83F+87zv8rX/OpusKDSJsmzxEr568inM7RuEeh6r4q3w/26+kf/v5E8zZ2gWixduT5ZlxEmSZ6yL4o2ANTjncpc7hSD75/8eae1F4AzE1QYjP72KUrWOF8WJwSxbQt/RL0GibfNDPl9+f4Y+njqeL9cd+nhqjn829fFoxwSHeCAQCAQCgUAgEAgEnnJUwKu0s387858NtOMmXCubwGYgXlGjpJIRCySpIBtq6Iq1WJNh5vQRzemnWbEgiorN84lbBQJLLiWeaLL6P37IxE+uYjBzaGxoWqFWzdA4phRZJpo1upOEGTVP9Qe/4DdX/Zad3nYUvtZk5LuXspf04cer2KTMA1ETDtqduZ9+N277mYgRdj31w0wcei33n/HfxLevYqhUZourM2EdA9299NYymmmTkUSIj3oJO336H3GzuplIDKJCRIR1kCURsv8Sdv7Wp6n/9o/c+9PLWHvfGqLUkc7qZcnRhzLzVQchc2ZQjw2ZQKyC9UXRQkPTxjTEk0UW2Xsx8/d+H77WQJ1iSjGubKglEU4MsSOPIrG27ca15LEzqYIrRcSJIV62mEXvfzOzD9iHe8+7gNXX3sromi3ERkkTS2npAvyuCzFxgql5xtThTIpoSuI8fqKOrSvc9SDNZo2uZv6UQCp59rb1Bi+WzWVDY/l8tj/mFexw2CEk82ay4ce/ZDR2zHSGpJWOIqp5trSRKQUs/xyMCmIsNW1y1Y3X82/f+S+cNXk0dObo7+7lS58+mcWz8oKp1kaoKhnKQ2vX8Ov/dw1/9673okYw1mKMUKvViStlXNZgZHSU/r5+siwDBGtMcBMHAoHAM0QQxAOBQCAQCAQCgUAg8KRTZCK3HVqaC5migpJHh2comeQO10QEq1A3EKkSubwNjTwJgm7cwuZf3cRd372QyoPrKfk8PqRv/2UsOuaVdO29K2agGyJBjWK8I6o5tlz+Ozae+3N6Gxk+AuuVWiSMLJ2JGEvXqmEGs4i4qagxePEs2lCl/uUf4J1jIE5oNlNKJmGzVepz+tj/k+/DLB6iFhusU0qDXXS/4RB23Hd7Vn35PDb84mZkoo73nvFahvEwPrOHyhEvZtFH34XMHwJraYpBxFBxEDc8LokZl4zSQBe9rz6AvQ/Zm3RsHJdllPp6kN5uMgFnLBFComCdIl4g80iSx3JkeRYNphIDHq3EZCI4EYx6Im9IUsUai8aax9O00h8iitqDkrfb2sFoDlSwr9iTZfsuYeLOh3B3r0ac4gd76N11EfGiWXhrkCzK811sRiopXjNKm+rUfnYza07+BkieZ56qJ40NVStIXw9+yVwWvuUoug/bF53dC10VUiM0S556JDiXZ6NkBnykNGIlizyV7MlZo94DFlZvHuHTp3+R1aMbUSuQOmaUyrz7LW/jgL32waYemylqLB5PUz1/uPN2HNDb39dKyVfSLCMqJ9zw+xv5+a9/wdrhDWQu4yPv/yeWzFuYx3QEntM8Vu771typjycrfvqxnYVXnywneGcf+c+BxxjzKGcEAs8PgiAeCAQCgUAgEAgEAoGnjCmCS6rg8+KDNhKMzStlZiI0fUpJLKLk2cwoGuVObztSZfUZP+TBs3/EUF3JXIoVYVETzC3ruO+HvyU66kUs/YdjSXZflNeH9AL3r2fNV75LPDKOGqUnNcQqNHaYw/JzPk1iI9acdzEPfO9C+kcb9DYdUabEanAKjchStYqPBG8sG3ote/6fd1JZvgtqLRW17YKBaRxhl+3E0q98lIkb72HkF9fT+N0d9KUGt8N2zD7mYLoP3QM3o0KeVC30ae4StqoQWaxAjyQYNI9c77NE/ZW8HmEGOIMVgxXJK4cWc2yAUh41YwErJrfge8AJJsrzjiMVEmeRdPI8F+VKeOHSz2NnWuciaCv7PVbJBeJZfXQP9eEPWt7u30oea6NqaAAlDN5pvgHhDI016/jTOf9LZXSChjVsihxGhbqF/sNewOy3H03P/svwQz2ogDEWcYJ4xfoI8eCtoWE9TgVUqaRKVuTSP05tUFVR1bYAKMaAsTRRvvDVL3PrPX8ixWO9EHs4/JCX8/53HU+EQUQxkcW5DGcME80GN/zx5tZ05YKltRZ1nt/ffDMXXXIR73rfe6Gc8Ka3HMu3zvk2n//USWgzCw7x5yhpmiIi7f/e+/b3qooxpr2+pp8H+ZMczjmiKGof13ne1s4tfo929vVkoartdp+K9gOBZyNBEA8EAoFAIBAIBAKBwJNOu2BhS8hRlGrUJBFD7ATJXB4XYgVrI2ITQeqxmhcqbEQejyduOu4+7ds0zriAPergjDBeyl3LDZNRKpXobzpqP/4t111wJdu/8xi2e/3Lifq7+cOJ/0b8h/uYkSQYp2TesW5eP4s//4/Euy8ms4aBk97J0LGHc8fn/pPhX93AAJbuhqe/AZVU2VIxjFYMowMVdv/E++h742F4MoQSRg1OwIsiXskkJuor03XwXvQcuA+iBp82kVKEM3n8i8UiKpiMPAIkAheBN+SxJ0AzEjSCSAWrNhe3DXgrNI3QEIiBis8N3E4Uh+bFIYFI8wgQNVCPBI9gVIloxVZHrdiaKN83yNPX8+/bYrwU7wmqYFUwzrSzbuy0CodKnuNuVJHU4eLcYR4/uIX7/uFLzLplDdZFbLQZfveFyMv3Yfnfvga7dF6esW0iTK6G51chQCsbvYjYKepnmgxsXTElyOLJ+J3Huza999goIssyUmP45rnf44cXX0SqLnfMp8qO8xbysf/zIfpKZcQ5RBW1QuY8Pkn47XXXc8fdd5PECV2lEpExpFmGqPDzS3/Om459M4OzZ7F6ZAOpd9x17z1sqU4wIy4/3h+pwLOEwkHtvW9vgBSidqewPN1pHccxWZbhWsVWvffceeedLF26lHK53D4fHu4GL9astfZJvRbvPevWrcM5x/z58x9RzA8Enm8EQTwQCAQCgUAgEAgEAk86ncIO5KJxaj3iMyIVBAPOo9aSoTgFayD2FsWjIpSasOXyG9l07i9Z2oBIPVXjcR6MA1uJmZCMCKFcd+xqE7b854Xc8cPLSCsxpY11um1EpZZibcQ9Q7DdP7+B5JV7Y4jJMiUyZaKli9nzix9l4+9+z63nX8jALQ+R3L+JWCyuq0K210L2fv+xzHjJ3mTdMVVVekVy07Z4LHkx0LIziM/jRrISZMYTa4zN9VVqeEpAnAEONFLU5lKvM3m+eqy5GxsEcQbBoxYaLSe9Uej2uZtbDTjJzeO0io4WxSG1JcZFKKaVMS4tRdlbyAQQj6Atv7q0JG7N/7VM6B4DYlAgmpZ7XQjR+bGCoMQe8J6k7nFrt/Cnz32T2u0rmOiJyXZfyILXvpxZh7+EeN4gWklITR4/4hCsa1XNlFx0Jv+WUiaUPaQCdaO4RGl2Kd7qttTU3OraNMYQRVH+vbVcd+MN/Md//xdN1fYOwVDvDE7/7OfZad5CyPLjUhTnM0xXiQc2rOGb3/sumyYm2GHOXGYODKLOY+OIm66/AY1g+8WLEGv51a9/zeo1azjohQeQlBK809zpH3jOISI459q/2xqNBtVqFYCenp72MVujcIJXq1XOPPNMhoaGWLJkSVskL8Tvov0sy7DWPulCeIExhjRNOfXUU3n729/OfvvtR7SNBVgDgecyYZUHAoFAIBAIBAKBQCDnMay2j/ax6KMco4ppZPSu2kh69wM0129BowRdsoh40WxKAz34xEJLFHZOiTHIqhEe+saPmLWhiiSGDZpRix06f4jajG7StSN0D0/QqzGJMbi0zozM0LOxhkqdzFvEGBJj2GxTopfty9w3vgIfWXyqRCZ3PEtsYf4gs+Yewstfti+Nu1fSuONBFJg7fw6Ld1sCQzNwOPBCHEU48qjsyIO0XdU+L+dpDU0jqCilTJEUTASS2LxwqAUX+dytLYpXjyK569pL/r7Jj1MRRJRIhchNFh+FXIjOxfh8DGhLIJZ8Hr1I+4/+wvXtTS50C0VbrcakU1hWBI9Rg2orm8UI3ky6tdv3vdWOJZfS69YRGYPdWGP9T3/NnVddw+BLdmanNx/JzIP2xgwNIuUYtRbvHLGJ8D7fUPDicSKoySt8Rkr+FIHm0SWxh0gmO1Z5HGJ4YS9nMiu5YM369Xzp66fz0Pq1ODwodMUJ733bO3nRXvugjRSspdao44ywZdMm7rjnbk4981+5/q7b8UBfXx9dpQoGIXWeW++8jSNfdSRiDA7lht/fhEPZ/0UvApNvnASemxRit4iwfv16zj77bB544AGMMSxevJgPfOADbWG8kyzL2mL3ueeey5133snXvvY14jhGRNiyZQu//vWvqdVqjI+PMz4+zqZNm3jta1/LXnvt9ZS5txcsWMD73vc+3vGOd3DOOeew++67P6ntBwLPRoIgHggEAoFAIBAIBAJ/oRTCpjyqEO5bcdSKaymKUuRM5zJsnoPtATVoy8hoMCgeXIrUU8Z/8Tse+sJZVO98AIulbmG8FDFj2VJ2esNrGDjqIHRuL2oNJrHYiQbrfnQZ6ZU34q1lLSlJucxIr2H/0z9JtM+u+PvW89AZ32f0smvpGW+2nJQmjzBBKHuhJrAizkiXLWC/z36YbGgANTHeGIw3eUJHkWwQx0i5j/KsPsoHLccLeFVUBG16IlvKndIIjlwIlkJpFsUZxUYX8IF3AAAgAElEQVQxqGIFbC7z5iqubbm1gdTkYrVlMnpEMe1IE20L2sVc5s7wtgzWUQSz/Z6a/I4KFJ8Unm9aH7XqY06K4VNbKFZD6zzbflXkpxQCtO84S4rhaO4S95lD4ph77ryD1aNrOeysL9C17y7QE+VCt9N8dwDBRLkz3bbGh8k78JrHv0QK4hTF07D5TYodWNdab9tY+086VPw8ot5jogiXpsSlhG99+5tc/8cbySanCiPCHffczT+d9EkiY3HO4VBGNo1y4+9vYrxWo96a7xjoKVda4xFKKvztG9+Ci4WoUmLVmlVcctFF7LRoMS/ee18SNYi6Vn7NpOM4FDN8bqCqRFHEyMgI7373u+np6eEb3/gGl156KR/72McYGhrive9975R88OKphCzLuPjii/nxj3/Md77zHbq7u9vvV6tVvvCFL3DLLbdQq9WIoohKpcJuu+3G3nvv3e674MkQxosx7rHHHpxwwgmceOKJnH322cyaNauddf5UudMDgWeSIIgHAoFAIBAIBAKBQOBRkJbzWIi1JdaayeBpaSmNqcmFR9MSTjOB1GWUag02nHsp933y62zXVPpTS4Sh6aBeT5Eb7mH1TV/l3m9+jx3e8hoGXnEIdmiALdfcyJr/+l/meEM9VrolYXPqWfLet8PBu1Mtl4m7F7DgayeQ3nA79577U6rX34Z5cB2DqSFRYXNZ2NCb0P3Sfdnzw8fDvJmItTgM1phCf+3QhCeF4OKVIRfXTWxhUmLO/5g2kycLgpVJgbhUHBlNipxJS8WOmTwPclG8U7wuPply3Na06+J9FZCpYqpIMaoCndrrlPM6rNYq5FVJO45rfVj0MF22LXQ5Uegmxtccs5cuYYd998bGMUR2sou4aFZaqeeTyr6Qz6ttxdGIKnjIDNRbSnW+MVBsIjy2Q7xlwm9PgUpLSFRFrMWLYfbsObzkhS+mSZF3n5+3edMom6e1pyi77rnH5GtVYhX2XbY7hlaxRBVKcUzdKhONOj/7+cU47zni0Feyw7ztyao1TBy3RdJOt3rg2Y+I0Gw2ueiii7j88sv56U9/yqpVqzjppJNYtWoVY2NjbbG62OgohPEVK1Zwyimn8LGPfYz+/v4pueGzZs3iwgsv5IEHHuDQQw9lYmKiHV/yVGV6d2aVv+51r+OSSy7htNNO4/Of/zzNZpOolbEfYlQCzzfCig4EAoFAIBAIBAKBv1DaQmFL3N6aUTxtibU2U8TlcR4+hmar1mOiubSZieIMdOWJE2SSO3zHf3cHK7/6fXYYU6olQ9V6Sk6xDrpsTOaUBKH7TxvYePK3WHH2Bczcezc23HwLPSs2UjEluqsZTqD2oh2Z9eYjSCsx4GlWYlwlIzp0V3bddzHVW+9j5KdXMn7D3dSrTarzBtnlmMPoe9m+mDkz0CQPGElUJl3DU9TdqaLTpAt6ajaHbP3wKa7p6cc8upwl04T5rRz/aA1MP/kRTtl6m9Mv4pEH8ajXUKwhzQtV9g3NzEVua/I2W+70KfOxFUVbpn1tv2iL7sU3k5sy20z71DynWZ2DLOMdbz+ON77lLRSy9CPHUuSLxkvLbS8t934r4idRITYGzXz+XIUItXqNK666kiRJOPDAg0izlDiO2+MoMpyDO/y5g6rSaDQ499xzKZfL7LHHHkRRxPLly1m+fDlvetOb2psdnffVe883v/lNli5dyqte9Sqcc8Rx3C7MCTAwMIBzjoULF3LXXXc95U8OdDrOrbUcf/zxfOhDH+LYY49l+fLlUwTzQOD5RBDEA4FAIBAIBAKBQCDQjtOYToriBLoikJaCXuRQK4IXxXooY1DNRXarmjur11e594vfZnDlKJERujNLTYRmBLFXotQTGSEjz9Pu8UK0doSxi69kUAxxZKk26vRozMhgF4vf/zbM3AEihcQVBmeDN0I2o0zXgXvQc8AeaOrzaA6Ncktx2ZKKw1uLV4hFiB15AceITlN44M/ERFEuKCPkeTTazi/v3H95ulBa+ekddGaIqyqxjegzUfvARxPEpUMQ95Lr8r6Z0VUq4+rN/JLjiMyneCIeePBBbrzpRl643/7ssusuODwTY+Pgoae7+ynJhA489dx///3ce++97LXXXsyaNYskSfjud78LQJIkU9ZXIY6vX7+es846i3PPPZdKpdKOyinE8KKQZrFRUqwN59xTdh2F4F2I8/vssw9Lly7lzDPP5IwzzghRPoHnLWFVBwKBQCAQCAQCgUCgXSyx8z8oFfV0qwfxOOPIsgZsGqO8uU53NSOuedR5aqIYp4hTJFNMvcn6C35B8sf7KGWOMeupAWtndhH//euov+81bNpnERsjh/OKbQlBsff0Nx1JmlLHQ5JwfxdUTngTpaP2Q0Uw3tK0ihePYrDekpgKRhKII+gq4WaUqc2wpDNK+DhCkhIeaZWLZNJdHMyPTx4toRiTi8Vplk5xhz9T060djm4kd+oKEEVRLs47R6xCiW38r0KsQqL5kxPlUpms2cRYm0cKAUj+NMUVV1xBo9nkhS98Ib29vSDC2d/+Fvfdfx9JqdQWw4ML97mD954777yTe+65h/nz51MqlfKonCia4v4vMMbQbDY544wz2HHHHVm+fDmQ3/Mip9t7n69HEay1U9ZF0eZTgaq2x6GqdHV18Td/8zecc845bNiwoR33Egg83wgO8UAgEAgEAoFAIBAIAHk+skfB+bzYowhoim3Uaa7azPCl1+Kuu4OxB9fSPWuQZJeF6H67MPTC3TBzB3EAJm8nWjvGn848l3nVFKOQCjRLEXPfdCTzTngLjZInWb2FiYuvZ8V5F5Hd8xBJPaMXQ4IhNYaa8Ux0J/S+6XBmHXcEm7stPU1D5ITE2jxxQzt8XgZUclHSAGXAoaStaJBEwXhtx2f7JL/E4BR7EmnNtRFBjNmmnO+nm0L8U+9zR66xoIpvi9KKTreVQ/tCpgj7IrgsbV9rLmwrIobxsXGuvfYaeru7+avXHA0IExPjTExMsOOSpXlkS8d4nmkKJ3Kna70QbDtzsIuxFlEfxfudwukTEVGLtjv7eaLuZN+6t8XXzliSJzIu733bRS0iPPDAAwAsX74c73277ekbHEXfY2NjXH311Rx22GEMDAxgrW0fU8SmAO15ds61++10iXc+3SAiZFn2MMG881481n3odKIXX3fddVd6enr42c9+xrvf/e4p1xcIPF8IgnggEAgEAoFAIBAIBHK0VRRSDHhFnEcajvQP93Hr6f9J/apbmF+19DhPNVI2XGkYi5VN++zB/CMOQ16+H/H2/ZhGxvC3fsrQXevpiRIya8A53M7zmP/XR+B7SowlSs/SMjPe9Rr2eMWBbLzqRtZc+ztW3fYn4mqduhUGdt2R7V/3SnpfdSDpDIvF4o1HjcW1RG+D0A5/bsVYZC33d8lPFrtEmMwNbx2XSv5HcRDEnzzagiDbkGH+NDFdas6Xg0zmmDMZq7K1Y9vtdB7Tcr1L4QhvPXlQFPEUFJemZM2U/ZbvzfzZc/BZxnXXX8fAzEF6enrys7ZRuHy6SNOU9evXMzY21i74WSqV2gUWm81mWxQGqFQqzJ07ty3K/rkRMNNF9UIQfjwUY+gsWvpEx9Qp/qsq1Wq1XRyzUqmwaNEiGo0G3nviOKZUKrUF5CKKxBjDypUruemmmzjhhBOI43hKVMr0657+2nvfHsfGjRvZuHEj1WqVcrlMf38/c+bMIUmSKZsVxbVvC9PX4KJFizjooIO48soreetb30qlUnlCcxcIPJsJgnggEAgEAoFAIBAIBIBWsUGvGK+ggqQOHtrMH0/8Cva2lSyqGbocNIAeG1OpO+bXLPKL29nwqzvZtNMQpYOX09uAsZ9dxfblHsaadaoloZEJM992FNEu88hEKKM4a8i6hXiHIYa2P4KZbzocGR6FZgZxhM7oIp1Zpm6UisZYDz42ZM5jMO2IDt9RsNGJx+Xf4o1gHEgRwWsFZ/IMdMiLftrWeYEnlylCsk4rlvk0z/cjZZdLxwFetL0zkguqU8+d/H4rxUs71H8BrBicz5jR3cO+y/fk9rvvpLplnD/ecgvXXnstH//wCc/KXObCJXzMMcdw6623tt/r7+9n5syZbcH0T3/6U1twXbx4MZdccgmLFy9uX9OfK+5Pd0Q/0fYKd3unG/uJjsV7zymnnMK9995LmqZcc801eO/5zne+w2WXXYaq8ta3vpXDDz8cmBTQC9H76quvplarsccee7Rd4FmWEUWPLculaUqj0eDrX/86l1xyCd3d3QwPD3PTTTexePFi3vWud/H+97+f7u7udnTLn7MxUSqVWLx4Mddccw2bN2+mXC4/oXYCgWczQRAPBAKBQCAQCAQCgUCO9+AV1CBO8Q5u/cb3iG5eQY8TVCGLIkQV18gf1TfOEwODGcQrNjH23V9CBnNMxGY3gY9jquIov2g3Zr/llbhei/XQo4amSC5mlyIcStOA9M2mogZFqUVQR+nOQJsOU7I01RGbPDZFjaImFzO1JVdaVSLN/bpqJBfHCwekIc921txdLvrMCLTPa7aiOz5sep+hHJWHddsxVtGOl4+knU5R+fN6rYaW4F8I6F5R8YhCbCwf/j//xHk//AFfOPUL7Lt8T/7vB/+ZSlJCnUeepaJ4vV7HGMORRx7JiSeeyPz584njGO893//+9/n4xz9OvV7HOcfrX/965s6dO0Xg/3PEWFUlTVOiKKLRaDzhNoookUKYjuOYJEmeUFvF9Rx//PE0m01GRkY46qijmDVrFqeffjo9PT2oKoODg20RvtOl7r3nsssuY8aMGfT19QHQbDa3eTzNZpPjjjuOJUuWcPbZZ7No0SI2bdrEBz/4Qc4//3xOPPFEvPd85CMfmZI//kSJ45iXvexlfOtb32LlypXMmzfvz2ovEHg2EgTxQCAQCAQCgUAgEHgusTWxbroFNg8z7nC05tngagTjcxHPi+DxeXSEtlyuPo9/cC4lcoba7fey5rKr2Sk1xCZCY2EkbeKXbEfmMtyqYQZiS917jEBTmswAIjw+bZBEEZsjmJjdx7KPHY/pqyDWIqqoa8WztApdqioqAjYCD76V9d0LxJlH4whEsYCKonbyki3ajr8Qr227uApkBrxRBCEiv/7C0VsUWgx6+F8G0++zdv68TFsHW10ThaKuj7xmxBi8euIoouky+rt7OP64d6JescZA5vM1/yyJSOlERGg0GlSrVQ455BDOPPNMZs+e3XaD33DDDZxyyinU63VEhAMPPJATTjiBrq6utgBcuMyL9jozvB/LFV+cF0UR69at47TTTmPlypVPODKlGINzjv3335+PfOQjT2BWaI+7EIbXrFlDo9Fg3333ZZdddiFJkimxLNOjUKrVKmNjYyxfvrztti42GB5rTpxznHXWWRx88MF8/OMfp6enBxFhcHCQl770pZx//vmoKpdddhnvec97mDlz5pSYl21ha/Pb19dHo9FgbGzsWRPnEwg8mQRBPBAIBAKBQCAQCASeazxSBkTxsSrqFG8UkymCksWQqVLJDDQFjMeXFG8EcYYYgzrFxYLEoBs3s/b7F9K3dgQfWVLXBEkw+y9jxy99iKo0Gb7sJho/+TVj9z7IgFNwKZnLSBSsCFsSYeOCXnb44NuxL9oZiSwiBuL8j1FbxEwICAZDK6rCgDFCqcj9Ltm8vidK3BIuRSajOKQzBdx0ZhDn/Uw6g6XDFj7p6g08iTzSnOo2HPMUIdO+Fi+myIUdi0Gnvd5ag9pxrE4/XAyuFZehCnEr3gcFbF7A89mIqlKr1RgeHubNb34zs2fPRkSw1rJmzRpOPPFEhoeHERG22247Tj31VGbMmAFMisaFCJtlGarK6tWrGRgYoLe39zH7L4Rz7z1dXV0ccMABLFu2rF1E8vHSLp6qyvbbb/+E2ugcV2dkTLPZZLfddmtHnmyt6GTRd61Wo1arsdNOO02JlXkkobnz/Wq1yurVq/noRz86ZQ6NMcyaNavdz+joKBMTEwwODrbbKPLLIRfWR0ZGiKKo7VIvxvBIgrj3nhUrVvzZufCBwLORIIgHAoFAIBAIBAKBwHONrYUhd7ynRmgYwXiPNYLzTYw3lFePMHrzvay+8wGSSpmFey6ha8cF6Mw+vPGkiWWcJn1OqT7wEJsuuZrFjQjSFIkSVmdN9vzs3+F3m0t3KaZrxwWY447moUuvYuyKGzDX3Yp9aCNVn7FxhiE5+gCWHXsUAwe+AJKoUL4ffhmtt01HhEn7kjqurV0I8VHnRR721rSki2AJfyZ4Buf8Mbt+omN7TEv5c2upqSpbtmxhYmKCxYsXt13PzWaTz3zmM1xxxRWoKn19fXz5y19m7733bp/X6cgu3OCXX345xx57LJ/61Kf453/+520eQxRFVCoVjjnmmLYg/3ivo8gOL67hiYrqRXvF9TWbTW644QbSNGW//fabLCI7TTQuNgaKop5ZllGpVNp55o9HYD7iiCPaInbRtjGmXcgUoNFoMDExMSUvPYoisizDe8+tt97KG9/4Rg4//HBOP/10SqUSwCPOS1H09d57793mcQYCzyWCIB4IBAKBQCAQCAQCzyG0cJo+Ch5oolgRvG9QrqZs+Z9fMPy9n5P98X56nTBsM+4txZQXzKb7JftRPvSF9O+1M4ODXcimMR489yLKa0YppxYXxYyIZ/B1L8O9aAlZbABD1lsinmGZd9yrSY99ObJmGEargGe7noRo+9n4pEyKxXqLqARXdiDwLEVEWLRoEbfddhsLFy5ERDDG8I1vfIPzzjuvLVa/7W1v47WvfS2lUoksy6YI1p0xHb29vfz1X/81hx566Db1X5zbbDbbhSefqDN5eiHNxyuqTx9XIRyrKitXrmRwcJAddthhm8Y3/fzinG2JTAFYtGgRMHWzASbF9qLdgqL9zsKkfX19HHTQQbzjHe/AWtv+7JH6j+MYEWHz5s2POb5A4LlIEMQDgUAgEAgEAoFA4DmGn+6y1o7vIS9a6QRnFPGeTRdeyZrPnMXQhiqRQmwMaQXKE1XMHQ+y5a4HGf6fS9iwyxL6dl2Cmxhn+LKr2N5ZXCRMGM/ErB56/+aluHKe8R1lFsgFMy/gurqIllYQlEgV4wXnBat5bIS30o5ICQQCz06SJGHZsmVtwfTaa6/llFNOoVqtEscxL33pS/nEJz5BqVTCOdfOE4+i6GGxKS9+8YvZc889H3cxy0LMLsTjbc3CLiiOL9zhhUP8iYrinSL02NgYV199NYsWLWLhwoVT8tIfjU5x//FeUzHuzjz26f11ztX0/HRjDPPnz+ff//3fKZVKU4T1zliV6e2pattJHgg83wiCeCAQCAQCgUAgEAg8xxBarkP1GHl4kIgo2KrHxMr4H+/nttO+zeINY2SxMJYIM7wQqSO1QiSeAWdJN06QbrqdLb+/i2baZG70/7N359GS3XW999/f32/vqjpDn56HdNKZSchAAoQYSFQuIIImDAEfvNznOgevCMijuFw8LBeu5VLvfZYKiGhEuU4XlTig3hXgokFkFiQhZCBpiEk66XQn3enxTFW19+/3ff7YVdXVQ0jSodPp058Xq7rm2ntX5ZzF+Zzv+fxKLGcWqoq0YpplVzyHtVddCh4JHjA3yhBxg8KNWIEH8OCYNQtbRm8WD0yF0Y/QBo5+TlNEjqVDg9oHH3yQ6667jtnZWXLOtFotrr/+elatWoWZsX37dt761rfya7/2a1x88cXknEdTz8PKkrIsSSk9oUnq8UB3eN7r9Z7QFPW44UR2WZb0ej3KshxNUx/N1Pmwi3zYw71nzx4uvfRSpqenjziZPX4s49sc/pJhePvwdYeB/fD68H0cvsZ4eD106GMOPaac82iiv9/v02q1Ro8bfjbD+w81XAgUYN26dU/qvRI5USgQFxEREREROYF4zoNFJZtlKA+aDh/PRNqGzS2y83/+A+u/uZMyGgsdIwdj++IiE7QI5gSaSW+KiEWjzM50LMndCoqCXBQ8un45z37r/02YnoTUrHqZykBlkHHaGWJuYvkUjB4OBUSseXWHVoIQOLFKlUVOIuMh7uzsLL/6q7/KN7/5TcyM1atXc/31148Wp8w5c//99/OFL3yBuq5HIWtKic2bN/PpT3+adevW8YM/+IN0Oh2qqjqo8/pIhuFyVVU88sgjvPOd7+SBBx446v7vYZDs7rzwhS/kt37rt47qdcYnre+55x4AVq9ezfT09Oi+Q4PlYZDt7pRlSbvdZteuXfR6PSYmJkaVMHB4j/d4Lzkw6kIfhubDYxp/zHgoPh7Sb926lU9+8pOUZclrXvMali9fPtrXx/rFgLuzb98+3J1zzz33qN4zkWc6BeIiIiIiIiInEMMgO4bjhyxSOYxBPGRSrJi765vMfeZmTs2BfkykfqJaNsmZb/6vlLHNjlu+zt7b7sZ2zTFVtKh6PTpWEKoEZcGuMjO/fgUX/PKbmXz+uTiRFCIFRmXQNyhwPEBqGcmgApIZgWaRTBwsD3buyQ16isjTaDxc/d3f/V1uuOGGUaD7jne8g1e96lWj6pGcM7fffjunnHIKq1atGt12yy23cNNNN/GSl7yE97znPWzevJl3vvOdT3gqe7i9NWvW8I53vIPZ2dmjOo7hVPZwOnrt2rVP+nWGxsP+r3/968QYufLKKw/r9D7U8JiXLVvG1NQUd9xxx0F1JocuyDneBz4efA8n7A+tfIkxHjRFPvwMhtPwW7du5UMf+hDXXHMNv/Ebv8Ett9zCe97znsetjnF3FhcXMTPWrl37hLvORU4kCsRFREREREROIOberJoJWABPGYJBNPDBoptA8Mz+//2vFDv30o81HmGxDHRecQUzv/DDeGeC02dfzfwd/8Hez9zM3Be+xuw9D9BZqGh7wa5OpvNdF/Ks697I5JXPZ66AqVBAdghGMGh7pvRmZ7rBsGYwnHY2ojsG5AC96NTABEahEXGRZ6ycM//6r//Ke9/73lEoes0113DdddcRYzwobP3gBz84CnuHdR5///d/z0/+5E+yadMm5ubm+OpXv0q/32dycvIJb39YtXLppZceVcXJeCA+DJOfbA/50Pi2q6ri1ltvxd150YteNLr/SBPsw20Pq1vOPvtsPv3pT1NV1ahTfRhMj7/GeEg+ftt4/crQeIXK+HEPH/uHf/iHXHvttVx66aXMzc3xuc997rD34UjvrbuzefNmNmzYwPr16xWGy5KkQFxEREREROTp8gQzmeHDbHA5mxOyYzWwWMGe/Xivh3U62PIZvB2BQTAO4Jn48B7m/u7TLF+soYBWDuRV02z4yWupp1sEC/TXTtP+nos47YUXwcIbyHv2ML/1EYoq8axN6+C0VVSdDslKlhHpp0SnZ/iEY8EoHMIgC5owbybB0yiRh9AMhU94blYC1aqaIs9Y7s7WrVv52Z/9WWZnZzEzzjrrLN73vvcxMzPD4uIic3Nz3Hrrrbz//e/nrrvu4oUvfCExRoqi4J577mHNmjWce+653H777dx000383u/9HmVZHrHn+lBmNgrcxytFjtaw5uTQIPnJGN/vvXv3smXLFs4880w2btwI8G1fe3yR0Te84Q380R/9EXfffTeXX375aKobDkyL13XN1q1bmZ2dpa7r0cT3nj172LJlC1NTU6xZs4a9e/eOTkVRUFUV7s62bdsoioJNmzaxY8cOzjjjDC699FK2bNnCAw88wOtf//pRCP9Y3efQBP9f/vKXOe+881izZs1R/zJB5JlMgbiIiIiIiMjTwA+tDxkympJtA1JzniM4gSI57hXzBUzsXWD+Hz7PthtuZO6+B5lYdEqLFKdvoP29z2Pqquew8tLzCTNTUGV2/MUnsH37CcGoUmauUxIveTaTF5zN3sKYcaMkQBGanww7LcKqaZadtanZPwOPEM2wQT94OxbNqpjBmh8mzSCGwWFYk34Ps5XxkMXCgbBeRJ6Rcs685z3v4d577x0Ftvv27eO1r30tdV3T6/XYuXMnvV6PxcVFUkqjTmp358wzz+Rtb3sbOWf+6q/+inXr1vGSl7zkCU9oD2tBjrS45pMx3r09fv5En3votDY0782WLVv42te+xktf+lKWL19+UP3Jt9tPM+Pss8/mjDPO4M477+Syyy47aJHM4fN2797N6173OrZs2cL+/ftH+/G+972P3//93+cHfuAH+PM//3M+/vGP83M/93NUVUVVVQBs2bKFH/qhH6IoCm655RY2bNjAj/zIjxBj5MYbb2RhYYGrr776oP0cX/Bz/PPZvXs3t99+++g4RZYiBeIiIiIiIiLHmAO1eZODx0E4TpMdR2v6wM2BaDhGYlC37Y5XNRP7e2x+75/R/8hNTG/fy2nJaBOpUmJxxz523fEtHvmrT9Bes4r2smV0WiV7v3EXhTu1Oe2yw4NFxUXXvoLQ7jBTG14MF+a0AzszHOlmbP8GN4+ClDhWW24Gh1ag2GEXmsvKw0We8d70pjfx/d///QdNMAOHhdQARVGwcuVKJicnRxPdRVHwwAMP8KlPfYqXvexlo0U4n2goPR4yPxVH+/yc82HHOXy97du3k1LioosuGh3z402fD3vA169fz2WXXcYnPvEJXve61zEzMzOaiB+G8MuXL+e3f/u3D5uQr+sad2fVqlWYGd/zPd/DDTfcMHr+eI94t9tl9erVhBBot9t0u10++tGPct555/Hc5z4XaCbAi6I46DMdHou7c++99/Ktb32L3/md3yHGqAlxWZIUiIuIiIiIiBxzmZgTTtPxncOgCgVwBgtQGuTBiHWgGRoHiBaY+8cv0ftfn2TZI3tZEzoEh0USdbughXFKH8qHFgnbHqLG6VrN2jJSxcC0Q1VnJl9wLtPfeynWipR1pDb0E6GIjMQYufDCC7n44ouBA5PWw9B1GP4Og9OUEkVRHBSmFkXBV77yFe666y5+6Zd+ibIs2bx5M6effjozMzPH8/CekPFwePyYU0rs3LmTqakpXvGKV4yC4qWCXXAAACAASURBVOFjjtSzPT6N3W63ee1rX8s73/lOHnzwQS644IJRiD18fqvV4sUvfvFhU9vDSfHhNk877TROO+200f4eqf5k+Hnccccd3HrrrXzgAx+g3W5z5513cuqpp7JixQpyzhRFMVo0NIRAXdd88YtfZOPGjVxxxRVHNaEvciJQM76IiIiIiMgxZjQ/fEWcwjOtnGl7puUQcBLQJ5DdiBmKBNEdSPDgDra9/y9Yt32eDe0peqlif3S60UjuuDmJTDdWzMea+bKiio7ViWULmdIj94Uul/zK/0O9cYa9bSO1IsEDQYN/IjJm2Fs9nEoeBq7DxSnruh5VfRRFQc551NUdY2R+fp4bbriBiy++mKuvvpq5uTmuv/76EyZUHR6ju3Pbbbfxz//8z1RVhZnxiU98ghUrVnDllVc+bsf5eJg9DMtf+9rXcvrpp3PTTTdR1/XovR3WxAxvO/Q0nOZOKY0+h2FwP9znQ7c9/Mz+5E/+hDVr1nDFFVcA8KEPfYi5ubnRYp/jE+45Zx5++GH+7u/+jne9612UZakFNWXJ0jyAiIiIiIjIMeYYNWFQUZKbzpTsmAUKNwwjYxQZ8IwHG8Tkia2f+Dxxy8MUhbGvP8fiZJv5U1bROnU9qe6x8PAO4q5ZVvSdyWSE7GSDuTLS88y+1S1Of/uPEp53Nh4iEFiI0DYoUZOJiBwuhHBQHccwNB32hQ+NX08pkXNm3759XHjhhbTbbT784Q/z4he/mMnJyeNyHEcjxsitt97KT/3UT7F//37+8i//kg0bNrB582Z+5md+hsnJyYMWxHw8w1B8YmKCX/iFX+ADH/gAr3nNa9i0adNBVTJHCp+Hrz8Mzg+9fXz7wxB8uIhpzplut8uFF17I+vXr+eQnP8mmTZvYsGHDaLJ9+BrDKfGPfOQjLF++nGuvvfYo3jmRE4d+1SMiIiIiInKsuWEe8Gx0q0wN1A7ZHc9GrKDVA6udZNCzRE0i9XrkT/07UynTDxlaJXtacOqbf5iL/uzXec7f/Hee/cfvZtP/ex3LX/hcFiZbLEy32bmizX3r2+z+7gvY9N53sOrNr6U73aJDwUyOtByyHby2p4ic3MYnkodVKMNJ5OHlI10HRlPjnU6Ht771rezcuZM3v/nNtFqtUcXIiWBYNXLXXXdx33330W632bBhA5/5zGdYu3Ytb3zjG0dT1ePvz6HB+PD2YRXJ8PorXvEKzj//fP70T/909P6llEZT3eOvN34aTmsf+t4f+pmUZQk0v6hot9u86U1vot/v84u/+It89atf5brrrqPVah302Q2n/B988EFuvPFGfv7nf360mKb6w2Wp0oS4iIiIiIjIMWYORTWYsCxLelZTxUw0w3JFaQWWM2DUwajMmUyJ+NAudn/2ZjZ2IbeMqqqZvPRcVr7ye2GixJZNsfwFMyy/9CLsutexbs9+6r17SCnTbk/Bxg30JmC+HYlE2hihNtrkZrXMYIOFMUVEjs74IptVVfGqV72KV77ylaPp8uEk8okipcSVV17Jueeey9ve9jbuvfdebrjhBn7913991N19NNydqakpfvmXf5kf+7Ef43Of+xxXXXXVqKZm2OHdarW+I8dhZrzoRS/iYx/7GFVVjab0h9saBvvDGpx3v/vdXHPNNbzsZS8bTaQ/Vj+6yIlOgbiIiIiIiMgx5gYp5KYXvJtoe0V7cR76PZicgFYJsQBatDK0YiIsJLbc8M9MJCeGSOHGHvqseul3EdYvxyfbZJwQIt5yDCdPriGdtpqUErUFuubgkak6EIAcDcpMqFOzoqc1zeYiIkcrhDDqtx5Ogg/7xYcLQVZVNZpefiZzd0IIbNq0iY9+9KNs3ryZ2dlZrr/+ejZs2HBYdcmTEUKgqio2btzIH/zBH/CWt7yF973vfZx//vkHPeY7ZTgBPlywc3zxzOFxujt1XXP99ddz1lln8Za3vGX0OY1PkYssNQrERUREREREHsvYX4u7jd908J+Rmw/vG/S6HvIaHiAHsNmKhZu/wbaP/CMLd36LyX7NYhmYPncTay9/HnbB+bQ2rae9rEW+bzvdGz8PZaCqM0Vt9FdPsva7vwtrt6kxahv8ab5BQQB3YnYiEXImFAZulDkQasNLqAuoSjAyBUE9mvKM5IAP/h27oenfH3+QHOB+8Inm3Gl+YXasVgwYX+hxeBkO9IsPw9cTQQiBfr9PWZZs3LiR9evXjxa9HE5TPxXD9+Scc87h/e9/Px/96Ed5+9vfzuTk5Hd8Gruu64Neb/hZDKf2h4t13nbbbeScecc73kGn0xk9Fp5YR7rIiUiBuIiIiIiIyJGMZXEAmJNpTsAgYGoipgiQIYVAIGB5EKDnJnzoeU3sVjz64Y+z5X1/zvJHZ1lXZ4I7E8FIt25j+999hT0zLSZPWc2q1cupZ/dTffM+2iEQiFRlwfT5Z1OefzZmEMyafTAbhdrmUFhoLgwT/NAs2kls2lECkK3Za9eSmvIMlXFycHKRyWRaGUJ2KjfMILk3/10/Xiju8KSD4Cf7nOO4DRsswgtg2YhVzVQ/0yszbkaRK5w0CMWPzdf7cGJ6GLIOu7CHQfiROrafqcyMdrsNcFiQP97VfbTd2sNg3d254IILeNe73nXY7d8pwyn9YfA9DNyHU+7DbV1++eVcccUVo/0Yn4I/0epuRJ4oBeIiIiIiIiKPxw6+aO7gTSg+ynnc6NMEzqVBwiE0E9tldvb+w6d56Df/Jxsf7QIJolHnJpzuWEHLAhMLTvmNh5jiIRZjBW2I/YxbZNsUrP/hVxJWT0ERiMGaSXAYBFBAtPG9PPADX2D0018kEDUXLs9kDiWGuQ1qfQIZCDEylyoKgzIW1NlJ4fETcX/SYeyTfc7x20bEIWeSO+6Zut2iFwP9mElAy5vnHkvDsHsYog6vnygh+LjxfT7S/hfF0cdoR3rtx9veU2FmB9W7DMP9Q7d96DGN78eJMtkv8mQpEBcRERERETmSpm1kLEpqJrGb64OQwAelDgYhQhxOrA7aCfoGrZBpPbzA/f/fHzOzb55eSJQBqBLtZmVLurGmW0aSQTsW5DoTvKBTOZnA7nZk8uUvYuO1L6XbMdrhWJUfiBx/BsQE7gHLkZAj/QLmPVG3StIj+5m/4yGcTLD0bdeFHU4rPxlP9jnHcxv9KmEErFOysHMP2SJ7W5FcGKRAGVoo+hEROZi+K4qIiIiIiHwb47OVeVCU4ma4NdcBymYYnHZqqnstQQhOamVIid4Xb2fmoV1M4IQYoa5ZmG6zZ9kEwcGrTF7sY1WmKEr6wWnnkn6qmZ3usPCC87jk7T9BWrWMZBHF4bLkDVp/zIzSjeDQciMmZ++Nn2XnTV/Bck3Lvn3xz1IPxC1DcmOxaGpJVuycIxSBXgbLAbI1567foomIDCkQFxERERER+TYCHEjFDfLgugNhbII8G4Th4pkBnAzUWLfioRs/R5UzEWP5ojMbYM0v/Dgrr7sa6or+f+zg0S99g3TbvXQ3/we9bpe+OxOnnsKaa76b9a//PvqrJ0mhoBh2zCrckqUsO8EzZZ1YlhPtCmpLVGVgYv8CxXxNN2QS6XFe6GgWk3yyzzl+2yjMwJ0Za5GSM0VgIVe0yXg2Ys6ElGm+c6n+QkQEFIiLiIiIiIgcmTdrU44YkCGkZiLVM4OMyqnbhrvhnpveYxzr92l3AnnXfvJXbmdFL5LLyGzM7H3WRk553UtZXDNDi0hr7XpOecHFeFWR6z6em8oIo4DpFr1OAWZMLAIesAkUiMsS5niRyNT0yop9oc90EXES3ZiYKo2U+xhGe7DY5KFfDj524dDJ6kMbte3Q+xyGPSyH3XeE5/lgG4d+u3isbdrYc57Q/ozt06GvW1tNHRNFyrS9IHumDjV1AYs4rYnMhvB4vzQQETm5KBAXERERERF5LA7kpm0gm1Obk2PG3Ak4pQVyVRG7EEJBjrBojkWnKJ2irqjve4jdW7dxCoHYy3gsmTjvWRSrVzNnLSJNHQQRaAX6oaAPlG5MZMPMyGZkjNiCwo9uHlXkhGGQvYaQSAXsnYhkgyIbdYB+CESMKhjm4Qhx+AFLvTLFLRG8WUQ35tB8ywoFdeHMes2UZaiyvmmIiIxRIC4iIiIiIvJYBgtkukFtToWTvKb0RNsCzC1Az/H5Pt5uYStLvBPpAkVMLJvP3P9/Ps9kNlreFBY82s6svepSbLINGF2MHJvNlQQKbxbjzIN6A6uMToQ6OqloZmHjcXo7RJ4uFgvcYeqcTaz5sWsIqaLASMGBQHaDcODr5LEs9UAcarIlKgpCv0XImRh6tKOz0pyJyy7CWwVHmqIXETlZKRAXERERERE5AqeZDG+mw5sbOp6xxQwP7WLbjZ9m7st3sO2OuynqxJlnnk06cx2dMzey7KzTmVi1nHrLo/T/5rOsJOJpgW4R2L6qwyUvvwxCZjo5dTgQVVk2WkRibLYXBlOdAad0b/ajeeRxeU9Enh6DX/tYYNnzL2Xmouc0f0ERmloSi4Pyfj+01+hwSz4Q9wQBPJZYHSA7TsK8bmpfQiC1SkLQ9wwRkSEF4iIiIiIictLxsVMYZmpHKPK13ITQdQDzTOjW9D97N/f81gfp3vYt1swnnk2gG2qKLbfjnzO62aknJni4baRej1WLmVBEQrtkX5EIz94Ep6/HzShSU4FyINgzMCMO9yWAR8iDQvMw2jWFW7K0+aAGhJaRW5HsGbNAcEiD1WyjDzqNvt2XQ1PW/WQ3/uSeczy3kSIOpBixMOgnJ9CUyjSXTd8xREQOokBcREREREROSnkQOo8W0fOxTNwG+XQN0aAbMngmbn+Ue/779RQ3b2Y1RicWkBJlhkymE0sSCe8t0O45boa1Av26Tx0jc6unuPwnfgwvSqqyxMwoRlm4HzHYM4NAAHw4R36M3xmR4y+MmlCaMHdUFOTOaNjZDB63QOgowuon/ZzjuI2i+Y4QB78/GCzp27xfg28pT3rXRESWOAXiIiIiIiJy0jGHInsTgIdMHSEBubkXaPq+YzDMoTSj6DkP/O2nWfjmFjZYyYwVdLtdui2j2yoIZhRVplUUUCfKEEnueAbakW+FLuuufiUrXnARvZBJOMVoctPB8mMGfArC5WQ3/K9/tDbkk/lyOJovnSf7nOO8DTvSZX3LEBE5IgXiIiIiIiJycvIM7k04HqAYhEd5cHczkx1J5liuCXN9yo/9G9M9x7KT+j32dIzwnLOI01P43ln2bNlGWOgzXbZYrDOEwGLVZ2L9Wk7/8Vdy7k+8jnpFh1wWTTUKNFUIpKYWBXucJQJFRERE5KlQIC4iIiIiIiedDNTRcIfCrOkRHyTho/lsA0uOew3B8a3b2Xvr3UzXUITQ9Ipfdg5n/9bPU65ZiXdrFh7ZTbVlG3NbtzG7dx9lp82pG9Yxc+lFFBecDlMFVWH0PDPhTR8y7nhouso10CkiIiJybCkQFxERERGRk5JnMDPyoLYkZyfYWBHvoGS874nozuwd38LqPm0vyQH2xcyql3wXfsnp9FotCofJc9dhV1zAikExuQfwaPig9DhbwIGJEClyM50O4NZUtgQevxFZRERERI6eAnERERERETnpBKCdAyllUnC6EXIRwJr7igzBobaa1IoUs/PsuPnOplclwZzX7OsYz3r+c6iKFm6BZIYZ2LDzJDjJoHJIFuhgGEaruYvgzfJ3DTuwoKeIiIiIHDMKxEVERERE5KTjg3+tcCwlCiIpp8GilpDNIdAE2FWfuGsRu+1btMqClDMhGPXqaXjWWbSzgY3NdY/1nphDxIkEoh9y/0HngaD+cBEREZFjToG4iIiIiIicfMxJsQ9VRdl1qgd24vsXsToTOyXFimnCzCSECIuJhc/eSb7zPmKqyNmZos2aC87B1kzRJNoHUnDnwNUAg57wZgbcrbnfB/ebNVPj5lD6YS8lIiIiIt9hCsRFRERERGRpGkxk52H43FzDaRbQjAs9Fu64h1s++NeUX72H1n/sYKIyWNbBTl9LtXElC50W7diGu++lPd8HnBgMehXTF55HWl5QF4HWMOgenIyxMJxmUrxZubO5Pw12KGBEDizoObajIiIiInIMKBAXEREREZElxQF3CBV4gLrIZM+0HBKZFIzWQsWev/0cD//K77N8zzxmsCIHDKc1V7H4zW3kex+ijFCb03GnbeCV02+XPLphGZf94Eupk9EtnJY9zmKYAYZJdxhePex+ERERETnWFIiLiIiIiMiS4kBmVAcO3kxiW85EHEtO766HuPMP/4JN+7pMp8h+KhbLgJWRqnaSGa0c6NROKznt7JQhsrsVeHDaOPNHX0W48HRCUTLBt2k6sfEKFXvs4W9NhYuIiIg8LTSHICIiIiIiS4oDyZrpcAPMjVA7lgeXu4kdf/0pynseodVPtBcrlnnBgjt9oOeOJWOia5R1IFOQiMyHwAMdZ+0bf4ANP/Fq8vICy06rOlCNIiIiIiLPbJoQFxERERGRJcehGf+pm7lsM4PsGI5Via1//lE2LGQsGLmI7J8smf6+F1FPT4InurPz7L7/YfZu38lct8v6U09h8pzTuPA1/4np77scXzNFVQQKIiEd54MVERERkSdMgbiIiIiIiCwp5t78KeyBrhI8BlLuE4pAtWULG6vIVL9LPVGyJ9Skyy/gtP/xdmz5FLl0smfybI+8tyITKNtGsWICJtt4AWYBPJCDk6JRmP78VkREROREoEBcRERERESWFKP5Qccy+KCbO0OzmKYnFrY+Qu4uUprRryvmS+O0Fz4X1syQJwp6AbI5E5MThNVGjkYK0DcnYBQOlo1AoKKpZhERERGRE4MCcRERERERWXLMM+Y2CKuNjEMs8IUFHr75ToqQmTVnroQdk5Gzn38+uRXIMRKBEgju5AJSNIIbhXvzmuYQDAwizUlrYoqIiIicGDTLICIiIiIiS4sBZoBRB2smxj1g5oRuJt7+ADEabWBVFfEiwoZVhBDINOF3dqNfBOoYCG7EBFYbpGbavBsyfcuYZ0LKmBbVFBERETkhaEJcREREREROKA64c6AnfJhGZ4fsuIOnipAi5ABuBCBaJj+wA7v1W0RvFtr0OrPy9I2UG1aDBwog1BANUjxQueJNZTjZoKIJxY08tleG5sRFREREnvkUiIuIiIiIyAnDc9Pl3cOZqQKkTG4lLGfqe3dQfeEbPPy5LzO/bzchFNRFZGpmFWvWrsUN9nz9LuoHdzPdatOqEntKaF34LOKySXo4kSZoN3cimUwTnDcT543oEDEisSkqVxYuIiIicsJQIC4iIiIiIicOh+BgwcgRQkqExcR/3HgT29/7YSa/sZV1HphOPZJBRaQistMiKWXKEJnutKnrmq7BnmUdzn7pVeR2SYpNvcpw9DzTTJ4bNsq8A4Oh9GECbvE4vAkiIiIicrQUiIuIiIiIyAnDgCLDpDvdmGiFxJ6Pf4kt73gf5+yHQElFxUQE6kQ0o22BjJODYQVUqUsKxkMTRu+i01jx4u+iyomcnGitYeINgKrBRURERJYWLaopIiIiIiInDDcHzwQcSLBrHw996G+5aA+sXcyEfk27LOnXNdEihUMrQ8eNljukDGb0S4Pnn8vlv/JzMF3gpVGGQMxNJbljZFMgLiIiIrLUaEJcREREREROGDkABRiJVkrs+fe7sNvuoePOQkikMrA/9ZibbmHZidkocJxEAvotWDR43rVXc+5PvJp44Rl4J5CtCcJHVeDWhOKmgnARERGRJUWBuIiIiIiInDAc6FHTMqOswL90B2FukbkY8SKwr8ysue4NXPzTr4dWgc/OkWbnSdmpyJRTE7RPO4U0NYGXRh0CbkYgUHqAxCj/tlEgLiIiIiJLhQJxERERERE5oZgNlrbs1VQP74Qy0E+JyTqS1kzRufpK0pmnYCFgeR0xJyLQCoaHQM+MephzuxMJlMNulMFLG0Yc3qZMXERERGTJUCAuIiIiIiInjIARPRDI0K+Z3f4IsXJaocR6zsS69Sw761QsDH7UMYdo4HkQbAciQGYwGe5EN8Ig/HaDbE0uHnwsCVcoLiIiIrIkKBAXEREREZETRnAoCHhOsNhj/r7trO8aHp1+K1IVBUVnmuw0IXYAd8c844PJ74JI9MGCmc6BMDxAPVhI0xwsD15DYbiIiIjIkqFAXEREREREjjsHKrwJqXOmtObcQsAHtwePAPTdqQNM7p1nerZiyo2FALNFZubsU6EMYI4Hw90H494BI4CDewYb6wd/rEFwBeEiIiIiS44CcREREREROf4cQsosksnmGE6RMvQz5MG0do6QoSgNqxZ5+ONfYHLfPO6ZEAoWQ82680+FiYCZN4H3oG+8ybbt4Inv4ZT4WPAdx/cpPA3HLSIiIiJPKwXiIiIiIiJy3BkQu4kJy9SdAHNd8n2PsOO2u5l7ZCf13gVasU0ntmmFSO/Bbez/py+wPhvBjZiMhRaEc88gh0AwO+TVH2OjY+eaDhcRERFZ+hSIi4iIiIjIcefm1B2nzIHev3yNBz/w1+z/p39jRWjhnvBg7C2gJDKx0MeCUc9Ets44KxcjJKN1xulMPOcizPRjjoiIiIgcmf6fooiIiIiIHH8OhRu9L97BXT//m6y+fzeneqSsM1ZnqgjzIUKuWRYii9QkhxYFoXIetZpzrvth4plrmS8Ck01juIiIiIjIQRSIi4iIiIjI8eeO71ngvg9+hKmtu0jR2dFxVnSdKQcPRtsi/dynF43SCmZ60Ceza0Wblde8hJWveykLLSMoChcRERGRx6BAXEREREREjgt3H102h/6929j6L1/ivFxQBcg4VRG4L3dZmGpjvUUmOy0WQ01RJcqVy5l+3gWc8dqXsfwV301e2aZjASonlKYecBERERE5jAJxERERERF52g3D8JwzIQQ8OX73FlbP1UykyIRnUicwcfVVnPFT15I2rKBYMJjrwkQEjzAzQdi4grysReVG4YZVmRzACcrDRUREROQwCsRFREREROS4y3XNrlvuZCUlyTMtNxbInPvfXk//yvPoxYIJLwkOhhOSk6PRD0bITmEFiUxuB8xdpSkiIiIickQKxEVERERE5Kj52L94U30CkIPhNNeDg9vgUcP7aabELVgzLV5n9j+6C/M+PtGBHngsCOvW0qKglUsSkSpAieM0Q+KFB4JD9sRiGQg4UwmUiIuIiIjIkSgQFxERERGRo+ZAAhynZHAFIwfoAyUQEiRzLADWPCQB/ZRoFwUxO0U2bH6eGYNUVTgFk1PLYWqSYAVkCNEwnGgRi2DWvJ4ZBAomDXCHQmUpIiIiInJkCsRFREREROQpMWfU2O2xCcmDQ5vmclU018kZM4gOZk4ZI7lXES2S57uEXp9WcjwEFh1Yt4K0YoI6GoVBGE6ZD/LuUew9WD8zcvD9IiIiIiKH0h8SioiIiIjIUxIwojfj2v1g9IJhDjE5kFmwTG01WA0kgmUKnOCJIgBVxeL+vTy691GqMkIyPEZ6Mx1yuyRZAAtNzYrCbhERERF5CjQhLiIiIiIiR22UTw9rxEeVKE5BJpBpAeZ9cMdygOSw0Mdqhxp83yJzn7uZfTsfZbYwVtaRGmP6jFMJFigdQgpg4IVmekRERETk6CkQFxERERGR7wyHVgYLTjIIlrF+TWehZuHLt/HQl79G/6FHqPbNk/bPE7s1Ntuj2rGHvHeOM9sFoUoEK+iVxsrLLhlVoVhyCINFO01j4iIiIiJydBSIi4iIiIjIU5IBC83imZahwOlZwvtdyu37ePD3/4a5v/4nJvZ2KXuJqaIgp4QDRYh0slGmSFpMuEW6IbOwcQ3nfe9lVEUgE2hHIygHFxEREZGnSIG4iIiIiIg8JWaMKlNwsGy0ghMWam77vf/F3J99jNO7JbGqmAgt6jrhZaRHou81KQZKg07tWKvNjunI2h99Nfnc1XRDIGMUsalnUYe4iIiIiDwVCsRFREREROSoGYMaEwcPkEOTjRe9wN7Pfp25j3+RM/sF/ZDJkyWpX1OUkTrX1EAoI6lfkerMzonA/JnLWPemN7Dph1/J/g5MupGBACRrptHjcTxeERERETmxKRAXEREREZEj829z42BS2wdhuLmRDBYDFBmKBWf3J7/EzNY9LKsK5grokZmNmeXPOoP5qRb9yUjVCRCNmfXrWH/J+ax82QuJp62h2yqBSGuxCdoJkApNiIuIiIjIU6NAXEREREREDndYGO5jJwZJeHOtMjBrur47GULtsH+RXbfczeocSZ4JFSyesYZN7/xpVlxxCZRtvGX4lIM7VrZhooUVkIpIgREyUA6y94A6xEVERETkKVMgLiIiIiIiT4jTVJZgkLHhNWIOo37vmCFgUPdZ6HeZ7ASsnyg80F23guWvvIpq7RRFMjCn386UbmABG4ydx8HJzaE8sP3BoLiIiIiIyFFTIC4iIiIiIodxOzAP3sTUBhgZx4FEE4oXDu0UwMDj4GEB6PfIuSZiBHe6lmltXA1TLboRpsdW4gwOlseeKyIiIiJyjCgQFxERERGRI8qDU2AQWgOFG85gghtrFtSkCdATTa2J41iq6dQw0cssS4FdITGxYhl4TSaSYiAwqiLXapkiIiIi8rRQIC4iIiIiIo/Jxk7DkfEw7Bf35h8fPXLsQebkCDWZHIyYgTJCDLQGybebBsJFRERE5OmlQFxERERERA5jDsXY9He2wRR4SsQYIGViDNR1jcWAhUDEsTphnklzc7T6FSVGrhOFGVOrV4Eb7dqxaKQ4FohrOlxEREREngYKxEVERERE5MiGnSkFJHMqnBScSEUrBOq6R8hQG8S6JrhDL5P37eeBf/k8tn++WXqzFenlxLJVyyCCmQ3rw5tpcxsuz6mJcRERERE5thSIi4iIiIjIYxtl104kU6ZE7FWE+YqF+7dT3/8IxQM7md+6jR0PbaP76F5S1aXYvotTd1d03FgsnH1tZ/W5G/FWE4g74E2zCg7koDBcRERERI49BeIiIiIipdSp9AAAIABJREFUInIYB4iDsBonuFPmDPM11R33840/+gjVV++mv3UnkwTKXqJ0ZyORxbbhVWJZMuoy0O1A57xTmXz2GSwUkVbKxNCE4qNVOweT4iIiIiIix5ICcREREREROZxB8qbIxHHcE8ViZvafb+b2d/8my3cssG4u07KS+aLGW0ZwyHUm9BORSLcM7LbE9sJ4/i/9DMWpp5BoRsFzdkI0sDDYnNJwERERETn2FIiLiIiIiMgROEaG3IxwJ5z08C7u+u0/YM0Du1mWIykUdC0zSaCfapyMmdGujaoIbOsY85s2cNFP/xemXno5tNpMWmgmw4M3IXgwwJszEREREZFjTIG4iIiIiIgcUQBSzgQLlAm2ff5mqi3b6WSjyNDrRHaTmCoioWyTyfSC4WVJb81yVr7iKs65+iomn3sedFpgNpgE9+byMAR3taWIiIiIyNNDgbiIiIiIiBzGHMAIFjCD0Ddmb97MRC/TCoHUq5ibbjH16hez/uVX0jl1DbaspJzuECYmYWY5HgwvI1URKOxAKYqZ4m8REREROT4UiIuIiIiIyBEYOTseIsmdIjlTD+/B60RyZ6Ldwjas4My3/Cjt8zfinUAKTjbD3YhuzYKZGHFsAtzdD2xBwbiIiIiIPM0UiIuIiIiIyOEMsEA2cDOwmji3SMsCHjO9KtPesJZi/TRposQHJeDBD0yXe3D6BgnomBHGwnARERERkeNBgbiIiIiIiByRhWYBTMfJwTHLBHeSOQRjMTg5QjQDjDwIv42mf9zcKHPzQ8dwGFxT4SIiIiJyPCkQFxERERGRI3OIzRkEsFZB9GYxzOyD+pMMITcBOUBt4NaE4jFDcB+E483tIiIiIiLHkwJxERERERE5nDMIu5sg2w0qy0RPxMFD2jkQAA+5mQrPRonhoQnGq5CxkAhASVQiLiIiIiLHnQJxEREREZGTjNNMd5s75sOqE6cwsJybznCa+xwDT1i/T9o7S8yOmWEWiMEwHDdvKscHi2e6Q2mQm9lyFIOLiIiIyDOFAnERERERkZOQk6FKWDKqwpgLFTMpUvYyHjOWMvQDHo2091G6n/kac/92G2tCiROwEFnsgLWh6VMJTXE4g/U4ASMwvLGJ2EVEREREji8F4iIiIiIiJxlzsG6ibwkmCupUM52NeP+jbP+Xf2dx23ZaDz1KuOcRdn7zfnJvkTL3Wdbq4Akmepn5UDF18bPIyyYIwxnwQ0bB7bDZcEXiIiIiInJ8KRAXERERETnZOBiRZE5NZmrHHPv++lNs/+P/TfveR5htZ/rtSKtbs6YbmCDTw+lNRjzDQhl4eOMMl77q5VgoUSmKiIiIiJwoFIiLiIiIiJxk3MALo7BAZ1/Nw+/9Kx75s39k7d6KFdmYqp35KmM4rWiQEu0EvV5izmHPKTOsedsPUT73PCwFiCgTFxEREZETggJxEREREZGTjBtU0Yl1Zv6T/8auD3+MNQsVi+2aDi2KyllZBUIRma8WSRgejIdbmYnnns/p/+XVrH/jy+mVRqcKKA0XERERkROFAnERERERkZOQmRF6me0f/zTT812C14SWMVvXzE9FfM1y4sppwlQb77QJK1dwyav+ExOXnEuxcT39VoHFSAKCKRIXERERkRODAnERERERkZOMORQJ0v6Kh796G+fXTssdr53++tWc8t/+M60rL2Z6wxosBpjs4J0WoYgAeAiEEOmakwqjo0BcRERERE4QCsRFRERERE4yBliVSfu7xN2ztOuEh8xcCdULzuGc//pKfGYaKwqyOYsBcjCW9Q1qyCUshIzjlBaO9+GIiIiIiDxh+n+vIiIiIiJLiI/9D3dwYHCWm4sjOfXZHSr2tpwa6NSRbruNt0soSlI2INIi0idQFQEvjIUANcZUnWl1ayz7kXZFREREROQZRxPiIiIiIiJLiOPUJAoHywE84gZ1gGxQ4AQcomGxoBM7mPUAmOgbU91M9gQxE0NoCsKBaYMQgNJoG7QxQiiwAvWliIiIiMgJQ4G4iIiIiMgSEwZT4XgAb/Lq6BBwzHLzIHNsskPRadPLXUKrxNwJc4u4pwPT5dZk4m0YdK1Aa5iAh6i/ORURERGRE4oCcRERERGRJSS4EfJg8UszfJBdG2DuuGWSQcQhOkW7RdsifU8UscAW+njKYHZwv4qIiIiIyBKgQFxEREREZClxg2zkACk0V6ODeQZLJBI14MGxVLO8l1nWzVSdSL+G0tqQI70AHowSNaKIiIiIyNKhQFxEREREZAlyg3qwmmaRM1ZnSInoNaGuYP8iC1+4k7htNxMU1FVNtxVIy6cJNMXgyaA83gciIiIiIvIdpEBcRERERGSpqcByJoYMBnlhgXTvdrZ96Vb2b34A27GH3s6dcM9DrE1GKqBy2DcRWXbpWcR2m8nKoTSNh4uIiIjIkqJAXERERERkCamCsziZmVyoCPfuYttf3MjuT3yW3gPb6fQSHSLmzqRBzE2P+N5UYUXJjlDxvP/r+/GpghAiJIeoUFxERERElg4F4iIiIiIiS0j0zES/T/dr3+Jr734/K2/dwqkLmSI7lUOwjFkkhUQv16RWQbc09rbhwuvegG1aSx0zRiAEaxbjPN4HJSIiIiLyHaJAXERERERkCQk1hIf28++/cT0zt29h1dwCHSuYj063NCw7ZV1jOVPEQEVifv1yNv7ID3Laj18LrUj0SAayQwzH+4hERERERL5zFIiLiIiIiCwlVWbnP30Rbr6LybnMdGuGhe48c+2CXUWiThWpE5hfvYxNl1zEuudcxJkvvwq7eCN5siTkgDsEgxA0Gy4iIiIiS4sCcRERERGRpaRK7P23f2dlLxNjZM6c3WVB54WXcP73/f/svXmcXUWd9//+Vp1zl17TWToLCVkg7MsQBhTFILJoXHHDkd0Zwd/I48MjbjM6L0eGEeQZxhEVBH8KAjpu4yhBEUFQh4CAsoaAmBWCIXt673vvOVX1/HHuuTl9+3YWSEO6U2+46e57z63tnFP1rU99z7eOo+mAWTB3Oq6jjXDCBFSgIK9xGlCCVSAuCZWCw8dL8Xg8Ho/H4/GMK7wg7vF4PB6Px+PxjCdMTLCli9AK2kGfi+jqbGLBP15IfsH+2DyUAqFY0SijIBdglcPigCQ+igiJGO7xeDwej8fj8YwzvCDu8Xg8Ho/H4/GMM5wGYkPeKqxWFDvaCTonUslrbC6kgqWYD8GAlUQMdyLbncGddwz3eDwej8fj8YxPvCDu8Xg8Ho/H4/GMJxSUmhRhAOGAQztYu3Eb8WBEkRwMQrPOQSC4wCWO4CJYa9GSCOFDxHAfNsXj8Xg8Ho/HM44YNUHcOYdzyXOW1ibxC621KKWw1uKc46c//SmXX345zc3NOOcQSSxtEcE5hzGGj3zkI5x//vkEQTAs7TT9JUuWcMkll1AoFIaUIc0TYOHChVxxxRVorYeVNY5jlFI89dRTnH/++eTz+WHHpGU64YQT+NKXvkQYhiilhtXZWsvTTz/NeeedR1NTE8aYIXXTWhNFEQsWLODf//3fKRaLw9JJy7xy5Ur+7u/+jjiOh9Q3LY9SigMOOIBrrrmGlpYWgiCo5ZMt07p16zjvvPPo7+9Ha40xZlj95syZw9e//nUmTZqEMWZIe6dlWr9+Peeffz59fX1DzmO2fjNnzuTaa69l4sSJBEFQO/dZ+vr6uPjii1m+fHmtTtmfad1uvfVWZs+eXfs7m0+azsc//nGefPJJwjCs1Ss9V+n5uOWWWzjooIOGfCbVSZ9zjnK5zD/8wz/w4IMPEgTBsHyUUhhj+MY3vsExxxwzpC7GmFqalUqFz33uczzwwAPD2lcphYjQ19fHtddey4knnjjsmLTMcRxz9dVXs3jx4mHHiAgiQqlU4sorr+TUU08d1r5pva21fPGLX+TOO+8c0rZZKpUKV155Jaeddtqw6xAYcq9eddVVDe+f9LgPfehDXHTRRbUyZvNKy3TPPffwqU99iqamptr79e102mmn8fnPf35Iu9XX77777uPiiy+mra2t4XUoIpx22ml87nOfI5fLNbwOnXMsXbqUc889l6ampiHXTZajjz6ar3zlKwRBgNZ6WN0A/vKXv/D2t7+dpqamWjmyZTLGsGDBAq6++uoh/V16rxljavdYLpdjypQpw9rF49nXsNbW7rX6ezx9D5Ix/DWveQ35fH7IuJ9NZ+7cuVxzzTV0dnbinGs4fvf29nLWWWexefNmgCHjZZp3R0cH1113HTNnzqz1KfVpVSoVzjzzTDZu3FjLPx3D0vFk4sSJfPnLX66NTcCwfiWOYy644AKeffbZ2tiktR5iA3V0dPAf//EfzJ8/v9Zf1vdjxhg++9nPcu+99xKGYa3MaR+ktaZSqfDVr36VE044YUgZ0jEu/f1LX/oSt99++5A6p58HQUBfXx9XXXUVp59++rDzmR2Xr7rqKm677bZhbZeO9wMDA1x22WW87W1vG3GMc85x/fXX873vfW9I+tlxoFKpcMkll3D22Wc3HE/SdL7zne9w4403DrGPsvbI4OAgH/7wh/nIRz6CUmpE++/73/8+X//612vfq7e3KpUKF154IRdddNGQ81Df5kuXLuWiiy5Caz0knWz9FixYwFe/+tVhY1LNztECLUWMclixWGcp2wqfPP+DPNlqMU6jDBx69OF87evXoMKgGiMl0b0V2/Xv1atWcdY5Z9eu4+y9mTJ//nyuvfZaisVi7Tqtvx43bNjAu9/97lo5s+2UjoXTp0/n29/+Nh0dHSOe9/7+ft761rcOa980vSiKmD59OjfccAPTpk0b1r6pDQtwwgkn1PqNbJ201sRxzJQpU7jhhhuYPn16Q3s9tScvuuginnrqqWHHpPVrbW3ly1/+Mocffviw8569Ny699FIefPDBWhvWpxWGIVdccQXHH3987fqop7u7m23btjF9+vSG8xWPx+PxeDwezyh7iGeN4dTwTI1HEWH27NlccMEFtUlZdhKTvnfwwQcPM7pT0rSnT5/OOeec03BilU5A58yZM8ywTMuTfm/KlCmcd955DY9LJ41z584d9r0sSikmT57MueeeO0Q0TuuQCnMzZsyofd5oYiUiTJgwgTPOOKNWj3q01nR2dpLL5UZsI2MMhUKBRYsWkcvlagJ9fTodHR014bBRvZxz5PN53vzmN9dEwbQ+2fpNnDiRMAxrk/eR2uiUU05hwYIFtfzqJ3vWWlpaWoZ8r76OQRBw6qmncthhh9XyShc30rQAJkyYMKwN099FBK01b3zjG5k3b94wISV7jiZNmjSsLtl0RYSFCxey3377DStrOrGJ45hp06Y1bOfsvbFgwQKam5sbTvZSZs2a1fC8Zyfxr3vd65gwYcKw85QVZGfOnFmr90ii+Jw5c/jABz7QcIKWnq9DDz204WJKllmzZnHOOecQhuGwtk454IADhi2Q1DN16lQuuOCC2nVWX79sOiOlAcn1mi1PowWjWbNm1QSQ7LnO0tLSwrnnnlu7N+I4HvK51pqZM2cOWXCp/xlFEVdccQVz5szhE5/4RC2fkcru8Yxnsn3ASAJ2duw466yzhoxNWbTWtLe3UygUdtgfBEHAW97yFuI4HrJomuYnIjQ3N9Pc3DxE8GvEqaeeOmwxOy2ziJDL5WqLYzB0sTZFRGpjZWqDpH2LUgqtNblcjvb29lpfkU0vK/CdeOKJzJgxY0hfmRXYgWHCYZpOluOPP762gJg9Jv07iiJmz55dK2+WbHle+9rX0tLSMqy/zQqVs2fPbmj7ZMt/xBFH8P73v3/YZ9myH3zwwTu0bQAOOugg3ve+9w2zE7L26BFHHDFsDK1Pa86cOZx55plDjqvnyCOPbPh+Srrw8sEPfnBYObNlmj59em3cqh9PRARUQKW1nRxgcRixoANe//rXcvBh+1GxGhNbZuw3LQmTIql3uBrmCN7W3s6ZZ545xEbLtjEkNnR2/G+0EJ3L5TjnnHOI43iI3Z+mJSK0t7eTy+WGtUt6/aT30Zlnnjns+gmCoHb/trW1NXRwydrmkPQdjUT+tDwtLS1D7tX6c5V+9+STT+aoo45qaNuk7ZDao43qlrJw4ULmzJkz7JgU5xyTJ0/e4edPPfUU1113HV/96leZOHHiiMd6PB6Px+Px7MuI25FV/jJIk42iqOa9m/Veyv6dNZqzBmlqINZPcrPeUfUTwCyNjNJGns/pZCdNcyRBLzsBGMmrRzKTitRorxcis4JtOiGtzyfbDiOJnulnafkbeS1B4pGUet7syMM363lWX7+sF24qQqRpZesXx3HNYyUtYyMhI7tIkp1M1y+iZCfrabs3SmcksTI7eWokiGd/z9Y7K7Jm8xzJUy17zY7kOZYVLEa6ptM00nRGWizJlqvRpDyO45r4Wv/dHVGfX3ayWd+GWbLXfKP7o5F320iTwtS7K23r+vsxrV/2Pmr0BEH2ekiv10b1y07wG90f2acA0nrtKJ10sp093/WiV3oPZT3jBgYGOP/88znwwAO5/PLLCYKASqVSW/DalfP3cnk189iTee9uHuO9bcdiHsAwOyF7/2T72mx/MFLZsmNWoz4o20+n/U/9eJMudqWfpcc3WtzMPhEHNByjdpZWdpxM32+UXvbzrH2U5lVvK6XesNnxM/25szFuJDsi6yk7kud8WvbsuDJSn5s+Ybaj9k2/n7ZjWt4didH1+aWLFo0+qxfEd2QjpeXOLlyk3viN2gm2XweNxvls/o3G8ex5yZ6/IfZT2fD45/+dppvvoKNPEB3yWKHECbf+G81vPAanc4hWxFTLJCA2SV+rBteB237tZdu8nno7sd6Wy9pW2TEye583uhdSoTt9pXZOPWm/kbbxSHZNmgbQ8OnAeju73h6EoX3PSOXJnptsn9bIxk7bN1uH+vJk+xcRGZanMYb777+fK6+8ku9+97t0dHTscQ/xvXGseSllGi957C57Yx57a9uOlzx2l/FSb5/H6DFe6u3zGLtl2tXv7OyYUXuGLjvBeOyxx2qTjkqlUnsfhhqrWaM/NaTrJwP1edQbrNlX1rjcUTopWcMym06aVzbdkUSVeiG1vkzAsInoSGWpn9Rl08lOxhoZ6fXtmBUaG7VTdmKwszbKTibqX2nYlqx40aidst/PToCy9U4n/Nnz3Ki9s2Wrb/P0/Z21byo+14sG2cfvGy2w1Ise2TzrJ1EjXev17eKcq4kk9e1S71HVKJ1smbLCw0j3R71Ik6XRAkSjdLL3RKNrMdsujepVX6cwDIe0V339smJJo7rV32+NPEfTco/kXZe+0u+OtOCUppWdFGffb3TPpmXOeqKmk+ByuVwTHHbkbe/xjHeywq2IsHLlSrZt20YURUPuxfT3+sWo+j44TatR2DDY3sfncrkR06of4xqNC6lYWC9q1fcBaZ+yo7E3zSMrAjeyS9K/089Hsl+yZc72f42e/knbpF7Yr88jm/5IYdmypPVuNBZk89uR3VY/9jTquxtdA43SyS7iN0onJb12Go2V9e2TiuL1adUvbIzU5ll7spHdlqbVyFO7VtfY0G41ZqCMKKESl8iJAxxiDMrFxBgcLgmPYlw1VErj+qVl3dmTYPU2XLZt0/cb2eX1on492bbLzhEaXT9pOXaWTlqW+vNeX+eRrsNsWllRvdE5z7ZFozarL2+jc55ef40Wr+rbf2f3ocfj8Xg8Hs++zqgJ4qlB1tfXx4UXXsjatWtxzg3xWs0ahvUGYtaAbjSJSY3ORp4WKamgCSN7NWUnSjvyMMuKmjuaoKU/G3kPpWQnMCMZxo1+1pcn/ZmdEI5UP0jatNEkJi3rSMZ1fXpBEAzzPs5+np2YjNQGWW/6kc5LNr1GYmT9pGckoSOdVGbFgezf9UJAdtKXncCMVM76CVh9nbOTtuyEr57seRip3bKeQyMtFNRfhyMt4NSfo51d1ztKp14Urz8u2y4jCQrZCX5WwBopv/R87Oiphx31D7Dd021HYndWbBlJuMpeQ/WLCNny1E+Ws2VP2yVbr5Emzx7PvkB2bDPG8JWvfIU777yzJkpnn8zYkeiZFWB3RNbLOP1eozJl+6VGfUsulxtS9myfXy+UpX3ZjvrWbHzjrFi3o/4h2x/XP2lVX7+dCcb1fftI/Xt2MXkkuyW7kDDSOJhdCB+pTGlfmRWdGx1X3xYjHbMzeyvbRlmhNFvubJ1GsrfSso4UVs4lX8a5RJh2IkhqbyX/4wArgAiB0ggOZw1SimFTH7JqE+UHnqbrP+9g4y/upTnMJ9dbPo8JAqRjAoRCHECkXOIZXiubwja4prJOLOn5y/6dbeus3dHoZ729lb0e0/taaYXD4ZytvoY+DVE7T85VX8nvgkOl4nEco5UMySd5Ve8llbxg5H6jvl6NyIreO7JtdjSWZ22orI1XT9r37ci2a5S2x+PxeDwej2c4o+5+KCJs2rRpRC/N+slWPTvy6Mn+PVLe6c/U47TRMTszKOuN3ZGM4h2J4NmJ6c6E53pRbEfppYwk2NaLALuaXqN06s/TSL/vLL2dCRONzslIBv2uivgjpV0vCGTbPuvVszvX587KsLNjdnRsdoL9UspU3xY7K/+u3h8pI7VV9vylHoSNJon14tFIixA7u89ge1vt6JrflTbIprWjY3d0LY4k/KTUh2up91b0ePY1sv1hupi+bds2SqXSkP5hZzZEozRh+Jiyq33drow5sPNxrr48jcoEDBuPdpRG9veRwsOMZCuMxK70j43q0agt6/u4kdLa1XYTkYaxphu1yUhl2hNjYEqjjc1HShNGHjOMCIEI4gABI47AOpw4YhE0ggVcHJErgytXGFy5nLX3/oFg6XPwpzXEL25GdfUxNVRI2WAloAfL1MMPozh5MlaFWCUUrUJEIbrxQm7WWXxnTyw1sq3qr9/689EoTE0YhsQmxpgYHWikWojYxgiaQG3f2DM2ESaO2bBhIz09PZg4ptjUxJTOTpqaiigFSofJeIrDxHFNbFdStfFk6JMV9XXZWZ139RpJF6ZGEt93Ja9dJWvf7Kqd6vF4PB6Px7Ov4Z/H93g8o0423msqhteH3qn3Vt/ZY9kej8fj8Yx3BEEJ2NSz2Vi0jZD+Qbb96D7WX/d9+lauZZoLyRtDOS+UA4sKoDXS5FD0K2HzxBwHnL0IPbUFqwClKSkhjzBMmn+V12EFRz6XS57KEgCFInEoia1h9arV/OrOX3H77Yv5zW9+i7UOrRVxHIEoFDB//nxOP/10Tn/Lm1l40kKaCkWCIMw8MVp9okFU9Xe/+OzxeDwej8ezL+HVJo/HM+rUxwJOHxlPvTth+CPnaZzw3fFm9Hg8Ho9nLFMvywrVMD1KJWFBjEN6BvnzN25m040/Z+qmAfYnJO8M1hhsyRCEigBFhGOgGLImb5j6N6cz9Z1vJM4DShBrUaJxe5sO7JJFAJeGJnKJR7e1jj/88Q/ceOON/OIXd7Bly1ZiaxCdo6m1SGtLC0GYo7+vl+6uLp5dsYo/r7iB79xyK/PnH8SFH/473vOed9PRMSGxRVA4l4Tc8Vq4x+PxeDwez76HF8Q9Hs+okwrh6WZYXV1d9PT0sG3bNjZt2oRSitbWVmbMmEFTUxMTJkwgDMNXu9gej8fj8byiKCxU44cjoFyy4U+MxWFQFrbd+we2fmsxc3ocumRRzUJvHBGGGpQiVtAtloGJTWyb0c6B576LWe84GWkroAKFAbSF0AloRnFHoZeIc9jYIkpjnaWvv58bbvj/uf6GG3ju+efJ5fJM6JjIYccs4E2nnMLMWbOYMmUKhUKBrVu2sG7dOp54/HHu++1v2bh+HY8+9jgf/+SnuP3nv+CL/3o5hx12CFhDmAuxcYRSAT7Stsfj8Xg8Hs++xSsSQxxouDmex+MZn2Q3N03jVw4ODvL444/zs5/9jF/84hc888wzw74nIhx++OGcdNJJvO1tb+O0004bsglbNq57GlYl3XxyLJLWw1qLtZbOzk4mTZo0JMa695L37Itk7+9GpP2C3zDOM95INri0OBRUw5lY43BaUE6gUqHr7t8ze7OjtWRRYTObcKzPK6LmHE1TJ9M2f3/yh8xlzoK/orDgINyUJlygoBoeRIlCKwURe58YDiilsdbhELZu2cKn/+EfueWWW1FhyLQZMznvQx/iPWf+DZOnzUhigjsAhwPmOVAC7/7ABykNDPDw/f/DN79xPQ/dv4Rf/vJOlj65lOuvv45TT3kT1lhEqnuZjKP9OkSEyZMnD3kyz+PxeDwej8czlFETxLOCVTZGsBd2PJ59gzRO+MDAAL/85S+5+uqrWbZsGaVSqSZud3R00NnZiTGG7u5uNm7cyLJly1i2bBk33ngj8+bN49JLL2XRokVMnTp1yMKaUqoWimWsCuKwfQOzXC7H1VdfTRiGtfjpURT5PtOzz5K99rMLY8aY2mLRWL73PZ56BAc1X2UHThALKE1MTIiFgUH+tOQhjrKCVSE9zrJ5ShuHf/xcml53JDJzOpILIBREKQgh1iQbcjoIEDQKK2ByoJG9ThN3zuFEeH7t83zik5/mttt/jsrnefd73sfHP/MZZs6aRdk4jNKY2pqY1H4YAOPQ+SILTz2N17z+RO65+y4u/9w/sfaFF/i7D1/Ilf/6r5xzzlmAq21gOl44/vjjOeaYY8jn837R0OPxeDwej2cERtVDPJ2oGmN8+AOPZx8i9XpesWIFV1xxBYsXL6avr4/W1lYOOeQQFi5cyMKFC5k6dWpN6O7q6mLdunUsWbKEu+++mzVr1vDMM8/wsY99jLe97W380z/9E4cddtiwp07GuiCWLhgCFIvFIeFlvBju2VdJvb/TV/q3Uqom8KQiufd+9IwnxCXqrBFq8bTBJj+dBRRRFNFTEOKyJQ4CwkPn0vLONxLv1waiCRxYHE4loVECCyjBiMO4ZItKK9APFIH8q1jfRhjrKJfKfOGyy7j99sUE+QJnnX8+l376Hyi0tFKyDp0LMVYYSclO/MshEgibmjjOBR9aAAAgAElEQVT1LYuYOWsW/+vCD/OX59Zw+RVfZPacWSxceNK4EsPTp8tS+8EL4h6Px+PxeDyNGTVBPJ28GmPo6OigUqmMVlYej2cv5NFHH+Xiiy/miSeeQCnFG97wBj760Y9y8skn09HRMUTwSj29jz32WBYtWsRnP/tZ7rnnHr72ta/x0EMP8V//9V88/vjj3HrrrSxYsKAmgo31kAmph2u6gJDWJW2TKIrI5XKvcik9nleetG/I/t7W1jbkyRCttRfDPeOUVM4FXOIp7gCLhdgQxBGIA60oaE1POUJcIoRjHViBIIlD7gCxicEvSqqpJ18vUp0I7E23UVXj/ua3vskPf/xjJAh5zwfO5LNfuAwV5LBKYZ1DKUnWB0aI/u2S1QRiZ3BKI7kchx51FN+8+Wb+9pyzWL1mDR/56Ee573e/o3NK5ytZw1ElXUDM5/PEcfxqF8fj8Xg8Ho9nr2VUXSuttbS3t3Pfffdx4IEHjmZWHo9nL2LJkiWcccYZPPHEE7S2tnLZZZexePFi3vve9zJp0qSaZ6fWmiAIhoRVAmhubuaMM87gtttu49prr2Xq1KmsWLGC9773vdxzzz2ICHEcj2kxHLaHlUkF8DQeehoOIpfL+f0XPPss6f2tlEJEuPLKKzn33HNrodiyx3g8Lwm3/eV4Ga9sOtW0bPWVPW5H+WcPGnasS+JjCwKimNLUQkdkISrRywCRGYR4AMEi4ogDS7+uPkmhAV0VxWPQVb1cW8iXQZv6zF59Vq1axeX/+kXKlQpvPO0U/uWLV6B0QAzE1hEZRzky1R1HR345cTgVEFmHE4UKAg494nAu/9JVTJg8meV/Xs7Xv/51ojh6tau8x8g+QTOW91jxeDwej8fjGW1G1UpKBZ729naCIPBGmcczDrHWUi6XMcYQRRGrV6/m0ksvZfPmzey3335ce+21XHrppbS2ttaErTAMh3h2Zh/xDcOQMAxrfcc555zDD37wA2bNmsX69eu55JJLeOyxx8aFICYiQ/rGtB2UUrWFAt9vevZF0ms/XSxTStVsiTAMa5/5+8PzkklV66ogbEj2mExftu4QA4kgm3mZ7V+vHeiqn2XTMtRp3iMq5BBL8lLOorE45TCBI7SgTAjFIuqoA+nSFSRQuHxI02CMjSKsaDDJ/ZNzCkXV0BegKowj1fcUELJXbKqZ7g1gjKFUKnHLzTezraub2QfM43//4z9i8wWMaMQpFAGBUiitdrpSIVXXd43GWcFYoYLmNW96E4vOeCcSBtx6y60888wztSe1jDFjeiE6tSHSPtKHXvN4PB6Px+NpzKiZwdmQBj7Gp8cz/hERBgcHueyyy3j88ceZOHEiV1xxBWeeeeYQL/CR+oaR3g+CgBNOOIEbb7yRSZMmsXz5cv75n/+5FoZpLAtiO6t79hiPZ19jV/oLj+dlkQlBLSRGsXKJF7VySVgRZR06fbm6V/V9qvG6jU50carpBC6J360NqJgRRfAUVy2FICgrKAtWHCXliIXE/TzMMW3qdFqsInQQ9lVoWddHvKknSUQLSqSmdStAZPsfItUqpyL5qzyEZhe1lVIsX76cH/3oR+Acb3nHOzjwkEOJHThRIElhlQjitp++kV5ZRFSShtKIDvjwRz/K5M5OXnjhBW776c9q5RgPfYufe3k8Ho/H4/HsnLGrJHk8nr0C51wttMddd93FD3/4QwA+8YlP8P73v/9lxflON9EzxrBw4UI+//nPUygUuOuuu7jpppvGtHe4x+PxeF49nIBVSUgRJ4kIHthExNZVMVysQzA4iXGS+IVL9QVx7X2LIZYkFIlIkkbokrAkyibhSkjTTGKfgDSMloJFsCiMUtiqgJ1zjsBalBIIHXmlaS6DoGgxmnBTH6UtvVhxmKAqqFPNa4yQxr5+9NFHWb3mOdraO/ibs85BECT1Bt8DGGcJgoAZ+81k0aK3Y53jZ4sXs23bNv/Uicfj8Xg8Hs8+hLf6PB7PyyIVrPv6+rjuuusolUqcfPLJ/O3f/m0tRvZLJY0VnsvlcM5x9tln8453vAOAb3/726xbt85vGuXxeDyel0Qa53sIqfCaCuaSCOY7eiGJs3XgQJntAjhQ8xw3wfakayJ4g7S0E7RJXmIFnMNKNSa2iyGuIAr6NQwGUBFhUFnQGgOUSTahlb0wNviO0FoTxzG//OUvMbHh9W9YyJSp07BVr3lX8/t+Kcp42uKCsVQ9zjXveu97yBea2LhxAytXrhyyubXH4/F4PB6PZ3wzaoK4c672yv7t8XjGH0op7r77bh5++GFEhE9+8pNMmDBhSAzgl4rWuhZ3vLW1lYsvvphiscjSpUtZsmQJYRjuwZq8smT7R2st27Zto7e3d0j/6ftNz75Kev2nIlW9PeHvDc/LpTYy1TazTDZitOKIxFERiEUjaJTTaKtQVte9FMopBANuaLRwp5J44JGCSiqeZ7K0gK1umGldsiOn4BDrILZQMUhk0QMV1LptDDz4J7Z+azHLf34vpUAhaMqhUJk5meKUDpQoHG64yD8GcM4xMDDAsmVPI0pz4PyDyOULiNYYa9l+tnbvvpdGf4lClOaAAw4CUWzcsIlHHnmkVo6x3Lc45yiVSmzcuLG2abfH4/F4PB6PZzjBaCWcncgqpWq7nXs8nvGFMQatNb///e8ZGBhgwYIFLFy4sPbYcSqKvxTqxXStNUcddRQnn3wyt99+Oz/5yU9497vfTbFY3CN1eaVJ+8k4jomiiCuvvJJp06bxsY99bI8sJng8Y5msHREEibkSRVHt3khDLPh7xPNSEJI43+nv6S+GxCs8TvRprDOIFZQodBrnpPoFByCCTaR0RCzOmqovs0K5AC3bQ5eIo16hxVEVwq0DESoYjIsoVizmhc30PLSU9Q8+jlrxFyp/eo6wa5AOE1EMAvIly7bWPD2zJxPu14l1gkZqXu1j6c5wzrFp0yZ6e3sIwhxHHHU0ogKsdYgorKvGQ6faZsDOa7jdrxyker4U1hpQivaJkygUW+ga6KOrq2vc9CVPPPEEN998M1dccQVtbW3jpl4ej8fj8Xg8e5JRE8SVUvT399PU1EQcx14M93jGKSLC1q1bufvuu9Fa85a3vIVisVhbCNvTtLa2csopp7B48WJWrlzJpk2b2H///fd4Pq8E6UJhuniwatWqIQKfX0j07KukYrdzDq11rS9RStXCNPl7w/OycJkY29l43jYJ0pEjUZSdE0RJIqpaEpXcgahEajXOYp2pBgtXyU8UgkrE2OpHQBJXRYYWQiE4Y1AoxDgKlTKl5Wt55ivfpfzbJ2he30OrU6hA4TAURAMhOaNxyrIpLjHjPadDSxFlQVVjojOGbo/0Xu/t7aVSqaCDkNlzDwClq+dFkrZ1aUO6msi9c7KrEMk5VaJwzmIdzJ47j64tG9i2bVutLGMZ5xzGGFatWkUcxzXHJI/H4/F4PB7PUEbVQ7xQKGCtZcuWLUyYMIF8Pj9a2Xk8nleRrq4uNmzYgNaaOXPmANsFrdHg1FNPBWDFihUsX758zAriSimiKCIMwyGe4l4U93gYIuSICJs3b6ZYLNYW3NJQAGNdwPK8+qTxvHEQIGAEIos4hwstkUoDcldlbuew1mEFjDiUgaBMsgOmlsT1fBc0SCHdaFMQ4yB29P5uGc9+7kqCF7uY2O9oVorACs5YBCEQR1mEDTpmc6tm+oUfYP+3n4grKpxKPd9TeV+NGTdxEcFai7UOJYogzCdhZJRKArFnj2X3Aqdkm8BZkEDhLCitanOT0VjAfzUQEcrl8pCn9Dwej8fj8Xg8wxk1QRySUArlcpmzzz6bb37zm8ydO9dPXD27h6v7iRv6qHLqI+SGHMT2R2PJHNV4AiXDMxlWiDR5ST3GsrlXM8rGBh3zV3kaT1Uyf1SRbMMm7/DUU08xMDBAW1sbxx57LFmPrNTza08hInR2dhIEAQMDA2zdunWPpf1qEAQBxhhEZIj3axoWwgvinn2VVPROw6Zcc801HHnkkbzvfe8bdoxn38E1+MXV7IKRQ2k0vErEbbcPLIh1SNng+ipEvSVKm7txmzcTdG2Frh7i7l7Kg6XEi1xrck0FwrYWXHsbfRMnEbYWKcyYgm4vQEsBk8thFaBAiaBc1m5If3fJuOpgcP1mnv36t5m8ejNhnGzSWdawLXBYrVDGkjdCuSlP92H7M+9DZzD1bQuxHQWiQIgFQgeBqY7Vo2rl7znSe7ipqSkZE6mwYdMGZh4yHxFVC77eIOLMLiTe6NwrrDM4YO0LawFob28fUpaxPF8Jw5A4jsd8PHSPx+PxeDye0WRUTWWtNc45nn32WYwZY9vde15Vhkxptz/HnPxSnVFaBINGk3hDiTPV2VL1WWFJnm5WOKyz1UduBUc19iwOEVBiq6J4daqVTryqQq6rvp94cgU4LFaSsuiaW5nGVON2jt0tHmm4ABGLxeIwOJRz5K1GnGagP6ZUqlBoClm5cg2VKGbi5CLTZ3Qmj5KP4hwsCAI6OzvZsGED/f39o5fRKJONg5wV9lIB3DlXi53s8exLpItB6e9aa1asWMGcOXNq9433fNw3Sf14k3jSDjBUrQOSECQKh2IQIQQC60iHJEt1bxupxgcXR2gdqqeMXtdN15I/8OIfn0Jt3Eypq4eNL25Ad/XSEYEyFmUhVApX9Q6PcbhAUQ41vWLIt7UwYeY09MQ2Bqe0s99rFzD1dcch0yZBILh8QMUaAqMhUMQKlLUoJcRxRP/vn6Ly6HLCiiEfK4J8ns2UebFZ4ya0MO2oQynMm0PH4Qdz0El/DVOacHmNVYlto9N2kfSfsYGIYIxh0qRJFItFKhs3s/SpJ/nr178OsCgd4qzDILU44rtSu+wxlsSuA6phaizGWbo2bwQcra2txHFMEARjWgxP+04RIQgC3096PB6Px+PxjMCoKi3Zx/VGM3yCZ/xR1Ztx6SRWkomMIvGyEutQOJyqkMSE1Ljq88kOhcWCq/qKWYNWGocQ22RCDA4tCsFibSqWp9OsxBtJjEWqx6Ac1iZP7SpUEg9UHKY6KxPn0M6hDaAkeY0hHGCrawKKzAZg1Xo6LLo6Yd3W30PXlgHK/QacMHVGB+VKmSguIzmFDUNg9De6C8MQa+2YX2xr1E6+z/R4tt8b2UWj9H3vGb7vkgjb1Q0xq2MUKhmPBUHbZOwKscl4Zm2yGK4gjiNyWqMGI+guEz+xnPVLHqbriafZ+thTTOyNaI8cLTokxjHFOVwYkpgBOgmhEiW2Qbrobg1QSRbOw95+wrUrcM4S5RRb/vPXrGwKmXDogbQefwz7nXwCuSPmQUcrZWLKOSEXRQQ5jVUgd/2RGf2C0QFOBWzWELxtIQvPfye5gw/CtRaQYgG0hhxpSGxCMovxQhK2ZQyRLnC1tbUxa9ZMVqxaxcpnn0Y5SyBCOY4RHST2iJPaZqhuZ9V0ia1oRHCisIBWisrgIC35kLUr/oSxFSZNnsTBBx9MGI5pl4Yh+P7R4/F4PB6PZ8d410PPXoqr/icYBcaBlSR2ZyK3AhgUBosmkuTzRASPEFchJMa5CFQrMYKpCuwWQCSZRyOICsFUPQ6ronv6iK3UvMMFpapiuhOwCidgdHKcxhC4SqIqqzxjajerKg5bnVxKsuhQFRt0rHCRodTVy5bBLra5frQTmgoaayK2dfUxe24nheY8lcGIbVv7mDGxc9TixogIURSxYcMGIHnE2uPxeDz7BkPCZlSf0lIi6KogjlOIhbxJDnRacMpCOaIwGBOtXk/XPQ+x7lf30/TUaoLuPlq0ougicmGALkBPJSJUIYFoXMXhbBKWRWkNQZB4l1uLcg5d9TZHK8ASO0MgQliJ6HSOyRVH/NCfKD/8J575z18SHz6bGScdT8dbT6Rl/gxEK5yLQRQvblpPEw5xjshZ7NSJzP3796GPP5iyCIHKgXWIi5Ek2vmYJw2JBMli8GmnncZvl9zHI394mG1btzKhc1riY+DS8DYvUeh1FkERR4bmQkhUKvG73/yGKDZMmjyJI444Yg/VyOPxeDwej8czFvCCuGevJFZVx69qWBLtqkJ0NVa3UeDQiCtiq0FNkpfFYDDAACElG9JlhW3liMGyYbAS0ds/QGmghAPCMEdTMc+UMEd7ENJU0LQWNDkthMoRSrKBlcIizhJYAaWxSmEFtK16KongRONCt8uP8u51OIdIdRECwTlLf/8Ag70DDPT04SJLrAz5vKCIsZVB0I6SEQ48aD7NhVZ6tvTy7CNPcvgB80atEZxzDA4OUiqVCMOQ1tbW0cnI4/F4PHsdgasK0AIuoLbhYmCrwc9EsIFDlEOMBWthsEL0zCqW3roY97snKKzaQJt1SCjY0JIHMEkolIpWRIUiA8YiTmGUYLVgVBKjm6AagsJaAqcIrMNGBuUgDAKUTZ5XCyAZU50jthWUDih2dePuX8rAfcvo/cGvGHzTUcz/wCJy8/cnCDX5/SfRLzGTrOAiQ+wstikk5wStApx1DGjBKk2zjFFbow5rLc45SqUSzzzzDEvuX0JOBzy/ZjV/ePB+3nrGe4kii+hqCKWXkIe45FwIjkApTBRRKfVz209+jLOGo48+mqlTpw7xqvZPaHk8Ho/H4/GMb7wg7tkrMQgxQq4at9oZm3gsC9WQJMmkV1c3qHIoIqDbBCzbXObRdRtZ2lViZVeJdeUK3YNlSuUKxjqMA6V0MqFGECUEViigmJAPmdFSYL9CwCEdcMSMKRw5azJT8wE5Z8gpV51ZGbQTxCbeaE4pyipHJNDE2PMPFyBA46yjHFfo7u+mq7ebwXIpecQ4FFROoSuGprIFpYkkR0mH9KuAPlWmaeJM+jb9mVVPPAXvP2NUy/vAAw8gIsyZM4eDDjpoVPPyeDwez95DugGlFahIEp4rdKCr4VMigRjIYQmsI3pyDS/c/N/03/UAbNxCMQgIAtBGcDZ51mwwCEApbGSJYujVQtvBB1KYP4feyQWYPYWWyR3oYg6dD1FKY6MYIkPcX8Ju6sGu2UCuZ5D+lWvoXrGa5oqjCUWoq+F+RMg5Q+AEcY6BlWtRq9fy/E/+h/CkY9n/Y+fQGbawURQWR5AP6XUxpYKjkKsutccKQRGJZexZGo2J45jf/OY3fO973+MnP/kJIkKhWKC3r5+bv/0tjj/h9UyY1Il1cRIab7d06u0HJ0//GXCWQAm/vvdeHn/kjxSLec495+whG1l7Mdzj8Xg8Ho9n/DOqgni5XAao7XJura1tFufx7IjQWEIE58BgUGKxurqRkhOUVThrKCnFhkHLIy9u4r7nuvj92q2sHXAMEmAMGCAOAoyEIIn4DYJJt8qU5BYoBTF9YthsHSu7K+S2DVJ8Iaa4dAOt2nHw/vtx7NwOXj+9nYMnFJjsHDlrUZRxWhGLRgjImSS0yt7mtpXef+kkL92ULsVaS1SO6enuo6+vi8hUMESEytXCqGAtohSVOE9FFenOtfDngZgnX9zE2ufXIrMPJ161hkefeJg4qqAlHJL/S7n3nXO1GOFKKay1VCoVbrvtNpRSzJkzh87OzpfVNnsDIkI+n+fmm2+utZOfkHs81EIppL/X92WefQ8r2ze7DqrC+KCziCRPdanYUjAOs24zz39nMZu/dweTtg7QViqhwgBbMgQu2WywTyv6sETNzYQHzqL99cfQduQ8Jh06Bya0YcOAIgpxQhwIsYao6iCuHYQxFGwS5K2kDc4YJpQrdGzphufW0//In+l54AnUsudp6eqnCejLQ1TQKONoq1jym/rp+eGvee7hZbQWmsg15akMlNElQxNhIoCrJOxbDkXRCjml9ro9M9P7M7vpbTqGp0JzVnTeuHEj//3f/83NN9/MM888w+DgIEopDjnkEI5/zWv4zs0388ffP8h3b/o2l3zi0yjRRMagg4DYOoIgxDi7C+VK7A9jTBJWxzpeeG4l3/jaNQjwltPfzImvPxGt9ZC9CsYyxx9/PN///vdpaWl5tYvi8Xg8Ho/Hs9cyaoK4c44gCKhUKjUhy+PZdaozPecAhSHxAjciVJQwGDtW9JT48couHnh6DZtLjk2DlkquiUhJstuWjnHKIkngFZLA4BaxDlEKZyyIAaUgKIEqJ4cYTVmHVIIivbbI5tiwdlUP96/u4gc5x5FTCpxxzFyOnd7CpFDTLI6AiNBaxCW+1lVfpL2GdJKavtL7MYoiBgYG6O3tpX+gjIktyhlCseTQmMjgRCM6xDhNnwrZ2lRkdVc///PUszy+rcRfIk1oQ5oO+yvMw/dw++9+zVNPP8XRf3VMLZ+XsxiWCl9pWk8//TR33303zjkWLVo0pkOm1It6ra2tXujzeKoYY2riVCqmZX+m/ZnfPG7fIpJksbvgIDRgNVSwGIRcbAi2lum7fynLrv4mdtULTCwZCmVL3mrKFUc5V6APMPkC2w7dj5mnn0jzofPIHzqX3rYm4qY8fS4JH4YSlBWUS/YziVUSsg2SjTsDBUF1w+1yYLDWkGtuIt/eTtP++zNxwdHkPvBW+teup2vpM2z+xf8QrFhHoXuQgtY4SeqTz+XZtmE9JQloyRcJm5pwLsLmQlpaOxArKFHJA2oWgnQ43YuGi/ReTO2NKIpqIjNQW9BevXo13/nOd7j77rt59tlnieOY1tZWjjvuOC644ALe8IY3MGnSRHp6uvnpbYv53s038ZrXvJbjX3ci+VyeShwT6IA4jpCd2BXpLjDGGFR1A/TB/h7+5Z//iWeeWkqxmOczn/407e3tQxwGxjr5fJ58Pg+Mj/p4PB6Px+PxjAajJoinE9Uoiujv76dSqXijzLPLWA2xNWglBCisU5QRunE8va3Ejx94gj+s62Vp1Ewc5CFUQJkgsDhjIAiTWauoZCJpYhSGQBwagcgk3uaisbEjiiAKijitq4/kCs5ajLLYEHCWPhvSb3KseaGX36x7iGNntPDOw+Zw6rwZzAgsYAlUIszszVe6tZYoiujt7aWnp4dSqZR4XSpBhQplFTYC5wSnmxkkIApb2Vo2PLFxG/f+5XlWb97KRhvSW5yIbWrGlfuZMn02+TkH0P/MQ3ztG9/gq//xFcIwJJfLvex7P/U2K5fL/PznP6enp4e5c+fy9re/fQ+1yqtDfbxSL+x5PNvJiuEigtaaOI6HeJymfYNn38Kl/9hk+bnoAGdQL/bw3Ld+xLpbf8HMTWVCZ5OntmJDrBSlMOQvzSFy3KEc+N63MPv4Iym3FSmFmu4wpCxgVbKpdGBBbLJLianuG0IamiXNv7qniWDJxQ5nkw0+Y6foUeDamzAT8pjZ7RTecCjz3/EmKn98lhd/ejf9Dy2jtX+QUFnKLiLUGjEW1VdGcnnKE5uZevrrUZMnUBJQzhIIqCCobQK+t5Edx7TWQ8TxJ598kmuvvZbf/e53rF27tnb8Bz/4Qd7znvdw6qmn0tzcXH0fvnTlF1myZAlbtmzhs5/+FDfc9B3mH3IYghDHhiAXYnbB2cYhhIEmLpewJuK6r32VJffeSy7UXPK//hfHHHP06DXIq0j9AoXH4/F4PB6PZyjiRkmBScMcpBvgFYvFIZ4iWV4JY+3VzMPXb/fzSGJFGkBRNpoBJTy9pZ8f/WEVi596nu6WDgYlIFKpd5AFLSgsQRSRq5TJRRGTCnkOndLGpGLIpPZmprYVaMuH5IMQBVjnKFcMm3sjNvZFvNgzwOpt23iup4+BXJ5KEGC0wgLOVkOsaIFAI3GF5r5uXj+ljbOPPYBTD5jMBOXIK9nt9hjt8+ecI45jKpUKXV1d9PX1YYwZIibFxDgxBIRASJk8Pbk2VvRVeHDtBh56fh1rI0Vv2IrYCBfmMCoEyaNMxKzBTYSP3s2KH32THBHfu/UW3vWud9WErJdSv1QISz3N7rzzTi644AK6urr45Cc/yRe+8AWCIBgy8X41eKl5784GXr4fGb08xnvbjtU8siEYALq6umhtbUUplYQ/0Pol3/u7+53x1rZjOQ9rqyFTJBmbA+OQ/hjzp+f542e/hH5sOdMiTS52BM4QW0N/XvFia0jLwuOYd/YZVI46iM3teSqmQnOuiagSg2icCrAYnAIxMYEzIAEGQVHdQqS65F3dhgRbVeaVi1ASYERhnErSI/mSCJioQkhAzsW0lyPCh59mzQ9/ztYlf2BKb5nOWGPEYg1UnGOwGJJ/3dHs988Xoo+ci4QhRiucKJSxBHp0FoJezvmLooggCGpj9pYtW/j1r3/NTTfdxJIlSyiXy4gIEydO5Pzzz+fCCy9k3rx5tVAltfCKiT8Dd931a849/wK2bu1m8rTpfO5fvsiid5yBCnMMlssE4cge4un4qkSjcWxc9wJXX/mv/OxHP8SZiPe+511877u3Yk1MvtAMjL7t9krdfzB0cWJP57k39iN76ziwt14je1see2vbjpc8dpfxUm+fx+gxXurt8xi7ZdrV7+zsmFETxNPMs488p17ju1vIPVWW8SD07G7er0Qeu5e3BWIsAi5AWUnCoohLvLEB7RTKJULIAIrnjOXmx5Zz97LnebEvoNu1Uiq04pQD6UVbS95YCpUy+zXlOGxqO8fM7uSAzmZmNgnTiwValCKnhZDEy0opkg0xq9lbJ8RAv3VsqVR4sVxh2VbLEy9sZOlfNvNCdx89CAM6BAo43YQVDVTIRf3sZwY5aVoHZ7/ucI6bXqDVJJNnoxyuugEnaJyqxkRH0JmwKg3b0MXgBNz2CZ9RhlhA0EmIFmtBgsRzTUhm684iJBNw5yCKDX3dEf29vfT3b8VQAa2qpVAECNpaLI6yaEphM5ttnmVdJZasXs/T3f2st5bBXAFri0A7SAxxN0KEdoZOW+GYApw+rY2f/Ntl3Pe7uzjs8EP51re+xXHHHTekbrt6rWS9m5xzrFmzhje/+c2sXr2aQw45hN/+9rd0dHSglKpNpMeiIF6btFfrAMO9xdO/fT8yOnmM97Ydi3mkP9P8sj9h+/3yUu/98TC5GG95VPfKxJJ4fYsFwWGF6hMdOAcAACAASURBVLiXeG1jwYireWyHfRFdv3yQpZddw7RNvbT2lSgYiLRiMNRsalK4I+cx72/fiz72ULontVEJcggBzsXE1mJFQBRaFBiDcqCUw4nFIrg0XInbHhDNkcQvT/bZsCgb40RhEJwESDX2uHagnUNw1f1GLNZFNImluKUbeeQZXvjOz8g9+CwTygasJac1xI7unOLFOR0cffmltJy0gKg9B0qjbeIh7gCnqm0OKKSq1FO1CfbM+Ws0Vag/Ll1411rz5z//mZ/+9KfcdNNNrF+/nv7+fnK5HIcddhh///d/z4knnsj+++9Pc3Nz7YmPFBHBmhjEYa3jV7+6m7+/+GLWb9hMsbmF09/6Di786EeZc+ABEATJ/jAkDg7ZNHAOcdDf3c1dd9zBTTdcz+pVy4nLg5x11t/wb1ddRWfnZBIhXDGeBPH6fLwgPr7z2F32xjz21rYdL3nsLuOl3j6P0WO81NvnMXbLtKvfeVUF8V0tzN540+7JPHz9MsdigVISm9MWUEbAOmJXIgpjUAE5m8MZ6FHCH7f08+XfPsEDvRH9NkBsCLHGOoXKK3J00xr1c0R7M289Yg6v2W8SB7S30B6CElONHq5RyTQRqM4PnSM7U3SZ95yzWIGyCP0O1g2WeeovG7h/zRZ++9wAW8uObieUgwLopBy6PEghKrFfQfHR42bw/vnzmISGnMNKTIhDjMIpoaJAI4SyE0HclnFOgByY5BHiKIgYJAajaRZBRQ4bhsmEvCoO4GLEWcqVMv0DA/R092JLGmXBSBmjIqwGI4KLBbEO7YSSbuEvtsBj67v5nxc28fSAsIUAE+arwkMMLgSTJ6BMwXYzUfVz2OQiJ82dylGteWY6y4Znn+b9555D/+AgxxxzDDfeeCMHH3xwbUEsnfymQnb9tZT9CYmX+Lp167j44ou588476ezs5IYbbmDRokW1NhurHuLpgmG23o2E8VdK8B8r/ciezmO8t+14yWNPnr/xMLkYb3mkYrihug2ISzZAtNoxKIkQXTAQ4RgUQ5NRBN0VNv7kXtZ++UY6N/Sgo0FyTtBxEiv8hcnNtJ55OtPPeRfbOtso53PY1Nu7ujUnVWE5RVxaj+rmrQLb9zWpK3StmpnFm8wHMuT4JPxKaCEwikgLsXaElTKTNvSw5abF9N72Ozo2baW5FCEixIGiWzu6Z3Rw8Of+P1rf8QZMMUSpRAjG2kQQ14korF0iiNdsAtl9TbzR+Uv38IjjeMgidPq+UorBwUFWrlzJd7/7Xe644w5WrlxJpVKhvb2dY489lvPOO49TTjmF6dOn1+yBkfI2xtT2CzDG8OCDD/LpT3+GRx97DGNi9p89h9ed9EZOe9e7OeiQQygUCoRhWLMFBgcHWf/iev744O+548c/YNnSpZRKJdrb27j4ox/l4osvZsqUKbU8so47L7et9uTxL4Xsnk2p/eAF8fGdx+6yN+axt7bteMljdxkv9fZ5jB7jpd4+j7Fbpl39jhfE94I8fP0yx+Kw2CSut1XJBFhZLGUcFiFHZAP6FPz4T8v5yoN/5vnKNCgXMUEZ2zSAc4M02zwTtpV489wO3vmaAzliWgcdGpoNhFhEJXHILa5ODm9UpmQSjnMoJ4izIBbnIBJNGRisbqj1fE+FxX96jh/+6XnWDmg07ZgyIBFxweBCQ0d/F+8+aDr/Z+GRHJDLoRRYyhRtCcohThcgVGT08MZtaBLPtLJ2aKcIDThxOFdBIZQMVMIAUSXyDnI2B3FAqVRhc28vvQO9xFGFHDGoLqxSWDpwrgkVAzYiCmCw2MTybX3c+2IPD6zvZnNPPzYsEqkQo0KMSTbVVE5wpo+i62E/gdPnzOXE6VOZnRdyphd0GZuPKTTnefje+/n4Jf+H7u5u5s+fz7e+9S2OPfZYAHK5XG0Smgq+6eTYWjtkI84gCFiyZAmf+tSneOSRRygWi1x11VV86EMfIp/P45yrbdY5FgXxbF3r2yN7zCsl+I+VfmRP5zHe23a85OEF8fGfh6u6iUtV1HWpoJuK1ALWWYhi9KBj/Xd/zurLr2dC2RBaQ0jiKdwVwMZj5nDc//4whWMP58WcUCk2gVFoBwqLEVv1Lm5c1j19jTgssTgCB4HRxKIoBQ4CR2scM6PPMHD/oyz7vzdQXLOJvBMmDEYEDnrywmBLM3M/9xEmnL2IgTxILqAQJ4sGTrO9Lg6sSrzqQ/aMIO6cqy1mp9OGdHNb5xz33HMPt9xyC3fccQc9PT0opSgUCixatIhLLrmEY445prbJY1CNgb6jezkV21O7AGDz5s187Wtf4/rrr6e7uzt5yi0ImNg5ldn7z6a1uYUg0PT29rGlaxtrVqzAVCposVgT86Y3vYnPfOYznHzyybUxNysYjyTS725b7cnjXwpxHA+pS2pL7Un2xn5kbx0H9sZrZG/MY29t2/GSx+4yXurt8xg9xku9fR5jt0y7+h0viO8Fefj6ZY9luwItUFGWiJgcMaEJGTSKtc7xf5c8xq9WrWNL1EI5mAK2iBaDNpto012cNm8a5x95CH89sYm81eQDh8aCdaAEJPHGtuJQsMPNp9LiOOdQCIJFsDhrwSbxOkFhxFDSERUX8vyg445l6/nZk8/zdF+FqLmNqGIRpXGBIxf1cHyT4wtv/WuOndxKExFhZBGrQakkDrneXqaGbRiDEUuvLqGwtJri/2PvzcPtuMo73fdbq6r2cPaZNB/JGizJkoxkyzMYG0+kDdiYAMHkxkAT0jgm4Dx5oC9NE8LNADQh3CYkNAkQuoMNYbwMIYxhJrFNHNl4kgdZsoXm+Uhn2ENVrfXdP6pqn63BYBNL6Mj1Po90zh5X1TpVq2r91vf9PiQxgMcbZVucsHuiw/lzDC6JGW/C6GibzmSC8eDFkUaeOEjBJwSpo88HBBrRosoeqfOTg02+tXkbD443afkKqiGxCXFBgDcGNMYah2mOMRw4njWzwpUL+jln3nzmJI7hTkpDQTWmEyoTgcOHhjNGlvDlL36Rt771rezbt49KpcLrX/96brzxRs4880zSNCUIgmMK4sWQtH37dt7//vfzmc98htHRUebOncu73vUuXv3qVxOG4WF99/Mm2CeCX7btYtJfRMEB3X7o3adjCeXHg+kyjjzdbZzqfXuqtFEK4qd4Gwqoz0LEyRa1O8YQKgRJ9noSgTiPHe2w5x++xpY/+zCzY4/xilpD0xgO9lVpvPwyht/4ctyC2YyL4E2FILVUUoNRJbGe2HqsyhMumD/dx4jH0wkUkwviRg3eGBJxeEmxLqbfGGb+7CAbP/w5xr/2Q+bvn2C2Qsd1aA80OGQDlvzRTdRvvIa4aqg6i3GCGsBOCeJpLohHgHnCLXry+6Gq3ejw4rXt27fzjW98g49+9KNs2LCBTqeDqrJy5Uquv/56brjhBhYvXtxdBC++9+dFYxfvKcTw4n6gEORVlR07dvCJT3yCb33rOzy64VEOHjqUJcgpGCO4/JpqjWHRosVc9OzzufHG13PBBRd0RfmiromIdO9HnmibnmpfPZ3v/2XorQ9T1Fp4ugsPn4zjyMl6HTgZj5GTsY2TtW9PlTaeKqfKfpdtHD9Olf0u25i+2/RkP1MK4idBG+X+9b4ZSLNfY+tpG4doSs0ZxEdsaMb8xW3r+f827qYdzCSwIYlLIQoI0hYXNCLe/OylPGfRIH2R0oci6vPMYJ9HelkEi2KmUoZ/zuYp2URKKfbDg/osUtwDahFv8MajQSezPlHDmAQ8NN7m43c+yncf38debRBLDW+y9ivxAZZFB/ijFz2HF4zMYsgpqQEXtAkwBFL5+X3oMkF80jSBmH7XB50IZ4RdgePzP7qb5fPmcslwH82xUSbTGCcGtQI4LNkigfqURPrxEhArbJ6M+en+mB9sO8SG2HDQgAsyf1ScQU0m2otPqfgO82lz/qw+Ll8yj+UNw2wdx+LJ4/tR77FiMSYgTRzGBsyeOYv+/n5+9KMf8Y53vIN7770Xay2LFi3i4osv5pWvfCXLli1jYGCAarUKZMW4xsfHeeSRR/jxj3/MV7/6VTZs2IC1lmXLlvG+972Pq6++mkqlcliadvFzugriQDfy7tChQwRBQKPRAKYi8ErLlOPbxqnet6dKG6Ugfoq3oQrq8usueGuIjckFZDAe1CqMx+y99Rtsef/HmbX/EAMqpChtY9k+a4BZr3spI9e/gN3zGzRFwIYEzmI7SpUAL55OkP2zKgR64gTx2GZjvvWW0BlCL+A8EhnGfBsqhnqszN0fs/ejn6X96a8z4+AhAhyBN0xEEdtm1Tnzj9/E4EueB40qKopIQFbuU1ApPNaVAPO0COLFNardbrNt2zZuvfVWvvrVr7Jp0yba7TYDAwOsWbOG17zmNVx11VUsXLgQa+1h0cnF9e7JCOK9Anzx3t7pSpIkHBw9yOZNj7F582Z27NjJ3r17iDsxc+fOZeasWcydO4czVqxg/sIF1Go10jQliqJuO4Vl2S8S6Z9qXz2d7/9lSJIE5xzj4+MMDQ2VgvgzoI2nysnYxsnat6dKG0+VU2W/yzaOH6fKfpdtTN9terKf+ZUJ4r0edsWNrOqUvcFT2cing5NxEn8i2j4RbTxVQVzTTEht2hhPSo0K6kIea6W8+9v38Y+7DtCszEaSGsZ3EDtJn45y/Zpl3HTeMs6qWqwHjCcJMk/OLPDcYyWzRzFqETWZ2i0cZk9yrG0iF8RVBBWf27co4rO8bVGbCcYCiAMSVCD2EXsl4GuP7uJjP3mEhyYdiZ2FTZQ0TFDbYrk43n3ZeVy7dACxjo40qRFR5XBB/Ki+1Oy8iengbUwlNdCpsy8QPvLI46y786f8zoWXsDBIqRFjtY2YBLUONQZSg00CAqrsjPrZ2Pb84LGt3H2ozeNtx2RQRQlBoqwymMRgEyTt0EgmWRwJly+Zz0VzZnJGLWJG0iFIm4jp4AKlIymJARMGJHGKcYZ6WKdR62PGjKFuJNbWrVt5//vfz+c//3n279+PiBCGIfPnz2d4eJihoSG89zSbTfbs2cOOHTuI45gwDAmCgNe97nXcfPPNrFq1ijiOiaIIVT0sXXu6eoj3poTHccx73vMeFixYwE033XSYjUoxhpbjyPFp41Tv2+nYxrHaPPJncY7AqSFkPdPb0GLFXHPPDwzeCC3vCYwhSsG0HaNfv50Nb3s/s8faVFotKupRsWysGxa+8030v/zXOFSLcMZAEBCnnkCyOhoCeMmE6cRkgrg9QRHiqM9szyRbsg68oZYaojizbumE0A58ZpHWjhlqT3Lwc19jxwdvZcWEx3ZiJusV2sYyNm+QlX/yJuovvphW3RIQEDjBGIszWV9aVUTML/RMKQphHmv7i3t55xz33XcfH//4x/nWt77Fli1bAKhWq1x00UW88Y1v5PnPfz5DQ0PHrIPRK2gXbfwiQbw4xwuK9xfXf1RRzdMNBfBZP6oqYgx4RYwABudddx+L/TnW2HEqjCPee+655x4++clP8sd//McMDAyUgvgp3sZT5WRs42Tt21OljafKqbLfZRvHj1Nlv8s2pu82PdnP/KL3PL2mcj2ISNcCoLih7bU5KHlmoqIkJgWjRCiBj9A0YEOc8rZv/JTvH+gwGc1CbR+GGJuMsTxq81+vPIdrlo0wrCnq22AiJLUE3nZ9RrOCnbm+Ldlv2bH/5MV6kUIfFxwgRhBVRDzGW0QLt9GsGGWEMEvgulXzWDl/iFu/fxvf3LiVyUY/aVRBmcnmluePvnk/zWtW8+IzBujTKsExKl0dOVETAfEQuQAv0E4T9jZTPrf9IH/543U8e0Yfs6OseGjHx4QmwRJjnCFxEU0zxKHaAHdt3sOPtm/m3n0HGW8M0rQ1qChoDGlK6BWSkFBbzDZjrB7q47IVS3nuvGFm+EmqTJJ0RkkCSAND6CJwgiUBUTR2DNX7GZ41g3qtLxPCJet77z2LFy/mr/7qr3jLW97CF77wBb70pS+xfv16Hn/8cTZv3nzYvkM2wb7gggu47rrr+M3f/E2WLVt2mPANh0eGT2eOFAbWr19Pu91GRKb9vpWUPB0Ui+lAN/2/uLE5UQtFJScOR3b9tgaMF4wTxEBHU4LY4e7fyt3/9V0sHXN0XIdqFBE72DZkWfW2N+Cuv4LtjQiXCH0uwDtQY+kImc82mhXrBCJPXlTzxOybqKGWOlIR2gGkRmlaxUWCVXACokKYgA8Ctsyu0fdfXsTK+bN5/Pf/gpG+PtI0ppEK8thu1v/Z/+JZp82ieuFyNDSAzaPDi4KkwNExKEdhrSVJEiC7plpru7Yb4+Pj3HHHHXzwgx/k+9//PqqZRdnIyAjXX389r3vd61i5ciVBEDxhccpjCeC/KBaneG/xfb3neVcYF9Dec98W18y8sGlWOTXLG8zvHYrPHstT+zjFB51wRITJyUnWr19fjo8lJSUlJSUlJT+H4yaI90Z59KYplpQ4I3gcNY3watgaO/7Hd+7nn0cnaNeGEV+DuIUxY6yd6XjXFedx6YwGkYuZNB5MQBUlDFJMmh/ChszrWwAhj8LKJPJsTvTkJgQCWWHNfBaVm4IAWcCaVbDe5N7i4LJfGcBzYcNw5osu5rSfbOJv1m9i0s2i5sBheLwS8Y4frqNRezYvnt0gsBx19hXnTBEV7IE46UDs2LdrlD2E3LZvko/9+4NobZCls4cYkBahtlGBVEPats64VHmsKfzbzkPctv1xtsXQpI+0OhujPkvP9pnfep2E/mSMebWQi2Y2uGRkOUuHhhl2KfXWJAExsW2TVjzNqscmIcFkBKkSRlUGGjUGB/qo1WoYE2SLCil4q6jJJmZF9Nnpp5/OH/zBH/D617+e7du3s2PHDnbv3s3OnTux1jI0NMSCBQsYGRlh0aJFNBqN7qQ1DMOpqLCSkpJnDIWY473vWgGEYXiUbVLJqUJ2EdfC6EPAek/kPLplH/f9yf9kUUsJXYyJIsa9MDGzwWlvfjXuZZexpxbSUQiikKYDyKxDnEhmi6YQqhKlYNVk0dQnUi/MPcuNgjNKHKbEIZgeZV4VIoFALRO1OvWrn8PIf7+JzR/7HDNGlYpThsUiuw5x/3v+Fxf/7bvROUNQCXAy1YtPepPyxeYiY6ndbrNz506+/OUv84lPfIJt27YxPj5Of38/y5Yt4xWveAUve9nLWLJkSffe3nt/WNT1ieLnSdhKVxMvKSkpKSkpKSkpOYrjJohDdpPdarV4xStewd/+7d+yZMmSMlLhmY4KRg2GiESErYnjQ3c8yNe276VTGwa1aGeMhm/z7FkV3nrZWi6dU6PqOggRVa2QkBWMRBw+yNJlJZ8VFQWlsgn1k5sZFtHkmvurFFHgxXdmongRmZQJ4GKydxtVKjrVfjUMufHiM0n76nziJ5uY1BBnA1Jx7KwM8J6v38Gilz+Xc2Y2OHKJqEgzVlWSJGFsssVEq0n70H5s0Mf6Q3Drw9vZYmvMGJ/g3BmzURJilFSqjEudBw+0+PHOPaw7MM7WFOKgCmGAOEclNIj3aNyhai11hPmB58pls7jotH6WBJZGqojLbE2aYeYZKibEotQnUwQhqAqNgQEa/XWiapRFsueh9aq5S40RvGaT66I4pKoShiGDg4P09/ezZs2arH+PSKMuFtGKopu9hTZLSkqeORTjRrFY+Jd/+ZesWrWKl770pce2mSqZ3mhWAaRI+1IRUlFMLJiDCT/75FeRuzfQaCdghZZ3HOirM3LjK6i95Ep2D1RxxlJ3BocnlewabbUQnDOyRe9CuPXH3JTjsnsC7TCzcjOqhE5JreIkcy0zKlgPLlBSD2FHiCo1xisBM15zLTMnWuy55YvURptUUSrtmNq6TWz668+w9K034udEJJLd2Aua+a3z5ARhVaXdbrN582a+8pWv8PnPf56HH34Y5xwDAwOcf/753HzzzVxxxRWMjIwcZltWZGuceATzc1YzsgWQo7PxSkpKSkpKSkpKSuA4W6ZAdpO9fv36bjpmyTOBYoKZh2vnFE7fkRe8Fw6EcOsDm7l1w+OM1WajWsG2E2qmw1UNx7uuPIdFMyuZVG2rGG+oOKh4UGvpGEitI0sUFqyabnEsIcsUfrIyqpeeiWPuKd7d8nyC6SXfMwGLw6jLFOBUUBOSSoQDZlt487nLGHLCB/7tYSaj2RBU0c4Yj6Ypf/L9Dbz3RatZPVDJ0ppzb3LvXSaEj00yOn6ITtvjA3CRMNF2fOXujTzg66TGsqoxzPywTjt0HEhh3Y59/OCxjayf9IxWh0h8HayAemw6CTYg8UqkMCBt1s5s8LyFs3juvGHmpG1qcQKxxxuPixJi28GLw6hgkpBK0sewmcvA7Dp+CKLAEgjYHqE6MY40Cwsnch7b4yN6pKBd2B70RpP1egIXInohqBeT7uK7SgFselD81UWPfFZ7HvVGFHoOP2sF8vKt2aPe1w1aiB2av9ZjkXSscz9rOVviMj7LKlHJ80c8qLjssZq8rSP8dzV/oyhaRLHmYpvvDnea2SxpnuqfP++KdqErxolqXvy3WJDLbBW6Y8LU7hy2T+bIPtWeKNee53u1ItFusQTyVaxj9NDJQ2G71iu23XfffcyZM+ewRbRev+KS6Y0gqJrM6kMFZyEBal44+N1/Z+en/on5EwlVryRiGKtb+l9+BXNe+UIO9FdxqUCUZSb2daBjBaNKkFfOVhGc5FlqmcX0scVSndoinug9vwReoG2FQJVqqlQ8hD6zOEEg8ErgAOuZFIUwIojBEHCoYjjtt3+dcHSU+HPfJm0nhHgWjHl+9ulvcuji8+h/ySWoLQprZiPYk3BMIU1T7rrrLj7wgQ/wzW9+k06nQ5qm9Pf3c8011/Ca17yG5z//+d3ijL21L3otUk70dVl+0WmvJ/0wV1JSUlJSUlJS8ivkuEaI9/r9liLWMwOPh6IgJbmfSBarhDcelQRLgpoq397U5Ja793Oothj1CfiUmqQ8N4j5q+uvYEHVFrJR9l2mMIMEBEIMYc9M1Rzj+HqyR5zJtzF/kHGELlc0nWGzN2Z1v7LI6fyjMTDDp7zhvIUoyl+u28yBpIGLqkxWhH/Z2+IDtz3C//Of1nA6Btd0TLo2Y61dTI51SLROEniqpol3fWwOTuNv7nuM2+KItBLQSJtUBgd5NOnj6/fv4mv7d3KwpTjfT2qrJN6CdWBiTNqi7hOG4knmViznLpzDxQsXs6wmDKaT1Nv7IPV4NTibTWoDbzAuyoR/Y+jv72d4cCb1ag1E8NZ3+1am9EhCBJt3Wm8xyOJxtyvl6OJ43V7Nxwxr7VEFtIr3n0ril6p2RYXiZ5Eh0Cs+HKsY8cmOkolZRul69mZKl++eWtIjcQuK0RRI8ZKNH6IW8QEujxYNxINpZRkbrgIaZieddxhJc/XDomJwDoydEsGVrACbYghlIotA9f0kAQQKNvH4qEmqNUJnEHVgBV8UFvB53ok4lA4eg6MKagg7EFcy6d6QoiihC0AMqXVYZ4jFE8skFSwRdbwqYV4EzoviSPEIkYKkmRCfBpACUT6ytsnsHrKslGLM8ohmLXuBILcS8SZ7rPmCXlao0GX7Yg3IyX9MHWm/UIwLhVdxb8G9kumPCrQAK0rFgXhPFCjptl1sfM9HmL+vk1/+Q8aBXRcs5YL/+wZ2NEJCImre0HSQGk/HZsUrPUJSXKREujVCgPy6LocJq1NL45KdMwKo777/P4IAFad5YU8h6X0BSA04yZbLRLK7qMwjW2hHyu7hiPm/+0oe3bKLfd9fx0IfkKqnL+mw/oMf4cIz51NbuYCWza7GoYJTh6o/ykM7TVMOHDjAt771LT7ykY9wzz330Ol0EBFWrlzJi170Im6++WYWLFjQzdYqKG2KTn6KRYvCC76cf5WUlJSUlJSUHM1xFcR7KW/GninkkzimnEC7ZSjzSafXKg8myl/ffj+7khDjLE5SItNkZS3lv193CXOrhqAn01WnvjBvJU+tPnKG+kscZtL7vxz1QjdCTI78lBz1TBatrh481I3l1eeezo7xmE9t2sUodUxaoyUp335kGxcvmsUrFs6mvX8vh5IxJG1jqSOq1DoxNgjZ6kK+v34Ld+08RGdgBs6kNNVxTzzKhntHmWi1mYiE2FYgrKBaQTCEaULoJhi0HRYMWq5asJSzZs1gpG7pi8foTzqEkpB6h6tEJMYgqSPMJ1G1So2+vj6GhoYIwzCfnGeFMi1HT4aLnuj6dR5rceIXFNl6wr/PMT53KtFbgNha2y1OpqrdCNnpisnjv4sxQJFujDTkIrhPssfeAiGpCehINl5EeAJirE9REeKgitE+rM9EbmM6SJrgjSEWQ0gwNd4YQBWjWTuoz8YRL2hgSMRlW+QzQUytQbBESR6aHWaZIz7/xu5fQQ1IhMEj2iERC5EFEYzzWOfAKt5AbAwGg3SgooZKEOYLd4IxHjTGGYtxnkAgMZCKJwgywduS9YNRweCp4bE+X0gwho5kMrrFEWqAQfDWkceIZmdqHkXvBJzNou0D5ElFjv6qeaKskKcyfpRMLyy5GGxAUo80EzZ8+NOEew5QBUQMY6EwunAWz7n59RycNUDsQ2yciceay91dkbs4hug9XvLUrB5btIzea1vvsWV4OqxVDltUF8kzOA4/hpWs9olKT0aIZkU30yikNaefFW96Nfdt/BmHtuzDC0QdT3XjTrbf8mWWvPMmTCMk0Hyhv0g3IRNJ4zhm48aNfO973+Pv/u7v2Lp1K61Wi/7+flatWsVrX/tarr32WhYuXNj1By+uUccqRPkr5cmc/s/AIaLXy/3ISP6SkpKSkpKSkpIpTrK725LpTha1aFDxKIqVzFha8tRVLwEH1PK//+0x7m6laLVGtePxXlgUNHnL5Ws5Z0ZlWog1x0LwWO9ALOqEucAbL1nOoxMH+O5+JUhC0gAO1mbzdz/YyDmvGKIaH8IwSWT6cLGhYjxhJ2VPZZhv7BnjG5u30q7PxqlA4vCBZa9PQDxSYuzs8wAAIABJREFU66MSVyEQNPCgY1Q6LeYnbdYM17lkxQrOmD+DOckktc44Ueyp4EBTUvW4KKRjDG08VWsYqlXp7++nXq9TqVSOiuYueXopRO8iei9N065nurW266U+PfFYfB6VWWSKSE8EZiaQO5MJU4GA8TIl/gCpgpEQHyipJAR4jA/Bk0WTi8OHFvUh1lvauUVCpEqgvhvZqWJwYkiAigpeq3SsEqhkFkxAahXrAyQVMOCMya2UPKawVVHBiyXBojhEOqjEYIQAiyHA2whnPYInlRSrEYEVMv29SmLI3i+G2EAHT80bAi8EKIlAxygWJVSwRZg3WSE+VQsmt37AohgMmo07Cq3AYAUC9Vkf5P3uxRJjcUCdJ2elUFJyogkpLMQ9xjnSBzaz65PfYIkP8D5F8Ozqj5hzwzVUz13FmPNUbEBKlpCmkll5WaVbYBION2oy+ROK5oIxh71RugL4r0BNzYVwJ1NR6dYJIZAYYbRiCc5ezOzfeiHbP/wZhhOh3kmZOe45+MUf0b72SoLLzgIMmioSZIsErVaLjRs38qlPfYrPfvaz7Nq1C+cc1WqVyy+/nJtuuonLL7+cmTNnHna9L35OxyylZyq9GWe9dnMlJSUlJSUlJSWHM12VlpKTkTzoSkRIMQguF8R9PvkMaKrluzvH+exPt8FADbWO2Hhmjk/y+5ev4YWLh6klTWxY/1XvzS+NMYJ3YNRj0w5LKiFvvexctn1hHY+IRWxExxkexvL36x7j9WcNMNCaIBYhrIRoJ6Zdm8G39zT55IZtjEYNVLKIL9EAk3qcc7haHfVVvK9RcU1MspfFgymXLurn8nkLWNnXh2k2CSb3YPwYkc2EtTQBYyzGhrhUqYbC7MEhhhoD1KPoKE/eI4teljy9FB7pcHjkq6p2vdSnI3lMYhavKYVnNnnENvmruR+3eNR4vDE47xEfogYmMDgDodbo8xWsNxgyr29MihdLqhHqQFzmCxwYyaxBcHkrBvUGL4JI1rjRILc4ysSiWBQVRyAdfORQifAYNDdGMcX3iCUxMCmgWOpUsXicOKxaICAVSFSoqdJHAt7QjEI6ZDYJDqgp9HnBYUmBCTH0CYQKIZ6W+DxIXXJzcjK7GaM4EVoiREBfIogHH0JifLYYkNrsrYHPlb8sxt2qUvVZto3NrZ5KSk4mCncSa4TExchki0f/6haWJwFBp02lUmWfaxFeeg7Dv3UN2wIhqNTRpiOwFVqSZWbgs+wUl6vLmcCeZTj11gcRFI/2+O9nC3hTKWnazbA4YeQZLVYUJ4oTjxeDFSHx0AwtP7OeJb/1AsYf3sTEN/+dugrDzhDtnGTnx7/CovNX0a4H1FWYGB/nu9//Hrfccgvf/va3u3Zc8+fP58orr+TNb34zq1atIgiCrr1GYdNViKrHsjcrOXkp/la99VhKSkpKSkpKSkqO5oQI4oXYU95QP5PII8U1BXWoCehg2N6K+T8/2ch4pQ8hQdWDEV64Yh4vXTqX/rSFDQK8TtdqSHmIGg4bpGjoMM7z7IE+3n75mdz8o/WMJg4qDZom4Jub9/DceVWeXauRGiG1CWkl4u6m5X//9GeMBv04U8N4i0oWOSteCEwd1zFUJGGe7Of0esBzlizkgrl9nCYdGkmbaKKJCQI63mMiQ+wcSoCtRHg1VMIqMxsNBhp9BFGQ9Xc++YUpUbZMtT1+9HqEVyoV3vve93bT1I0xpGk6rSPzMouUHhsDr+AzL28TCqgj8pZYAranykP7DrHl4CR79owzeqjFvmaLpjX0m4Al/UPMntNgzcJhVs2o0CeeCEcLw30HYr7+o/v5/Recz7zBEFDUQILQwvLQ7gM8tHuUlhgitThjSU1IkBoCBBOlrJrTx9oZFQKbAg6jJoui9q4btZmKYVKFn2zcwmisEFYRgZY4Kj6zExrHE6njoqEhzphRRWPlmzu2szGNMQgmjai1Q2rO06x2cBrSqMJF84c5M6hhvVAJDYlxOLLauKJkRQbFssN7vrVpO9YIMzqZ3/+hqmXSJlS1Qy3x2Dhl7bIFLGhUqORFBY1XTCH0TZOhtTc7pTditfh9uvrrlxyb/DBHXUqAMH7PQ7jb7iVIE2pqabY77J9XY81vv4x9gxV8XxXanqoPsmjvELx4PJmYLBSe4b0tZJjcRkmMQUVRFYwB74oaB6Zr7uSfBruUp0Lgs2PcW0hsti+RNxgPgQ1oWmXPnH5Grn8hG+94GA50iDst+rxhz9dup/W7j7Bxfo11//Q9PvXFL3DXPT8lSRK891x44YVcddVV/PZv/zaLFy8mDMOsZ/IF2OL33oK15X3A9GPt2rW8733vo6+vr5x3lZSUlJSUlJQ8AcdNEC9uolW1e8NdcqpTTD3z9H5ANCv7lqgwCvzwkV08uLdFHASIH0e8ZVFQ4bWXLGV2JBip4ZzPLAamrC+nDwogGOvx0iZFsNQIU3jh8pm8YPMQX946QUfGwVj22RrfemQPS9cuYoCYdgDrWwl/88AWdkRzMGkWoZYaB+qygpY+a8hIyGkDwquXz+LCWTOYnXgGk5hAU7wNSI2gXgmMJUkNXkOMjaj2DzDQ16CvWqUS2qx4YG5tISJTPymjwo83ItIV9IIgYMWKFYe9Pr3HTpML4qC5fYqguCQBa+g4oS3CwZbhXzce5PMPPcIDzTYHmjFDVJgdRFQrhspglYNhwsbxHezZlhLeqfz6s0b4jdULWTxU5e6DTf7oB3exe6zNb8WTzGUo9+c1xBjGEG7bvpUv3f0Ae3xAZGps9xUmpYGNq1RciLgxLptf549ftIYVjRp9AA5E8lK7RnNv3yxC+zv/egcPjXq2yQjjeHbXHf0xNDAklZg5ps3vXXAeI3MWowJfuXcj/75rL7U0wDPM3k6NlvW0wjbG16jpbn5jxVz+5NILGfEWcY6gbjJRz3qMWnAG52FPM+GT/3I3e6SD7fRxsDnIofoAQbqf+cEYLpxkDo4/mPtChhtVKhqgXrN9sT6PlBfMST649grfvV7ivYVoi+dKTh28kBWcPdji4X/4Co2DEyhCai2tsMLM5z+X9OxltKMQTaDmA0IP3hTlMhUv4EyWjdIlLwRw6NAoOzZvpjUxyfjYGK1Oi2a7hVdoNVv82tUvYMGChXQtnqTn8ycIgwGvWAOxzWoL4JRqagliD0FAU5ShC5/F7BdfzsH/8zUGKhafpMxJLN/5w/fxgbFHuPuBB2irMjQ8zKpVq7jxxhu59tprmTt37jEL1hb0Bq+U9wDTD2MMg4ODDA4O/qo3paSkpKSkpKTkpOa4RogXxVyazSatVut4NlVyMiAKOASDwebxVRbEEItlRwxfufcxmkkVVwUkYWYr4VVnL+XcmSEqnhRL4OyUrj4NyeLDlQ6CJcRo5n06EIS86YIVrNt5O487xVGlRZV/2TvGeaOeK2fWGE0m+cL9D/JQZ4gEC9IB68lCw3O9XQ1GA2gnjB9o89gOz8q+YUaiiEBjRGMQn1sjZJ7I9aBGY3CQvsEGYTVCTOaTnFI4pQpBT0RcScnTgkrmQABA5mUqYUBsLPuN4V+37OXvb9/P7duaJA2oVeHSNXN52aIRLp43k5GqIchXxpJU2BorP9y2m6/fvo577tvAxc9+Nv/0yFbuOWCYXR0kj/tEybzIa2qIVLjh9GfxkpFVeGMZM8rbfnIvPxhNMKmnicMPVPne7q0M3mZ451VncXpgCYwgYnObBZe5KRglNPCql12LpJa4JXxv/xj/457beNa8EX7n7JUsbUQMiWNhrcKAT8ELb7/iObQTZSgN2Y7l7V9bxwNxknmk2woHg5n846O7WVbbxBues4J+DQhUScSRShYlrqYD6jmzr8qHXn4Vbes5OJHyzz9r8/frHubKtYt41ekzWFrtp4pn9mBEg+zD3ii5iXkerX/yn+nFYlFRWLbw0+90OkAphJ+qKEroHO0HNhPe8xgRYEQ4GBoOzOzn7BteyvbBGqgh9ErgPYWzUOaln2WjJAYqaZFekftyO8e6f/sJb/rPr8UYwYjBuQRNErABIKxYtpzTFiwkuzLaExwbnuEkL6TphMBAJ4BUs/2KHBg1NAPL2EAfc/6vF/DwP34fmZxgwBhotpm/dZyZe3ZhqyGvfMlLueGGV3HFFVdQq9UOs0ApIsBL0bukpKSkpKSkpOSZyHG3TKnX69x5553MnDmznMCe8mSCOICopdBgFGEyEL736BZ+eiihFfaBgtE6584M+K21C+gXT4Li1BOKRVIH0XRMhc+M1JUAoYH1BjTzJ3YSsGa4zg1L5/PRezexr1rHWWF3ZYCvb9rDyrnL+cZtd/DQ/gmqjZngJlAbI+ohzWQsbyp5SrdgcIwFVT6zw3Hbjs1cu3gGL1w4xLJQsJ1RqpFF6iF9w7OYUR3KBACT2VeA4lUwIvi80F5mK1xOjEueJjS3vRYFk8WJO6Atlp3e8PE7HuZz9zzKblvH1FOeOxzxO5eu4bKRmcywWbFLcYIYwTgP0qS/7jlj5SyuWPRCPvyjh/jYHT9jdyfE9o/g/H5aRmgLVFWwDmzisV6YVw+hnheX88JsC3OMZ8FwyGOjTQ75BNcY5qubDtIfbeQdl69iTi4eGzGoki0YKTQUVg42wHuCQTCzZvM362Ke3ejn1xcO02c94psEaQIqxEHC0kaVMDYEqZBaCBpNhlJlXhqxuR2Tuhr77Bw+du8m+oYjfnP1EmaSeYpnhQEVj0c0pZ7C2QN11E7gBwYJ7TDf+MHtXDtyHi+ZN0yQKYNoMf4KqKHria55idPpQO89g7WWd73rXQwNDWULKz2ZLCWnEorEsPNL/0z02G5CBJvAZM0SXn4erdXLmQAqeARITSaGa659hz7z6u+GhDMliAehZfasWfzGb76S1tg4Dz+4ns2bNoLmdkJBgPEeq1kmSHa+5PUPTtTei9A2FitQS0ES7VrJ+PynM2AloI2juXQO9Wuew+QXvk2/ZotIc/d3+G/PfQnv+/PfZenatVgbHFZcsRDBy4KLJSUlJSUlJSUlz2SOmyDeG9F12mmndZ8rOcWRTFo1qogKYPACk97z3fu3cjCq0bEKUqVvMuaai89gfn+AdQneCqKKdKu+TUPEoySgFaJU8gKCCcYKqVecFW44czF3PLyPH3qDqyoutjxycJLvPLaF8bDOmgXzGW0bvCqpD1GfkqqnpYbx1DGuQicEb1JSnxAkEbsRPvPIZu7bW+U/LZvPlUuWsnywynA1BOPxUniyp5mrswpWJfMUR/DFyyd/4GjJNCIL7vYY9ah4YkL2Ofjy3Vu45Y6fsXdghJoe4pIZFf702uewytRodBzWdnAhaGAwakiNQU2N0CuhGpaEwu9dsYbUrOfrj+5iTBMCOliVPENDSCyISREcmnsKo4Y0iTCqLEK4+dLlfOSH61k3OUnN9TMh/Xx50yFWzdrGfz5rARYhlNwASgRxEKQJDSt4kxJbj0mq1NQylAQ0ErA41IILIlqEGHFEzmON4KqepgjIOGcPz+PFy5fw/h9v4PG4hkQNtmiLj/77AywY7uOa+bOpqGBzC4hQK0gSgTOkllwO9Ig1eFHUCt56XNDJBD5CRANEDeoFk4uGiEyLU7zXMgWy+4eFCxcCmSVAHMeEYVjeV0w38j/pVCHLqUtONzFs9yF2fud2TlNLHcGjREPDzHvpr3GwL8QU9ku5GO57xHDxghPJRPLednMrljXnrOXsNe8ncI7P3PJJ/uyP/jA71rxHE4fNCwAX9TR/7n4ch0NPgY4VIgzWK6HLrt9xkBUMjVE6geAxRKkljUJmvuRSdn7zX9C94wRiqcRKZyxh2cwRjMkCC4wIPo8KF5FfvH8lJSUlJSUlJSUlpzjHNUK8KNADlJEozwgMSgXIoq2cZJGKicC6vW3u2Z2Q1uuAAUl41qDj6kUD9GmKsxaLxRiPeJd/XxHhleG9P6rAk3MOa+0xPS97j7lez9miyOsTRRgWIswvX0Qqtx4RyObWFsljxqvAkuE+rj5jDuvu3cVoWEVNzFjFstVFvPaKS6knKaRKkiZZVLhPSVJHyzkmk5TxNKXpEzppjFOh01QmkhSVIWwas3frFh5xLeatOYOhvhpWsy6fmsHbPHAuW4AAmbbrD9Md57JjvTd1vThWi5/OucPG0umCF3AWJEkJjMNZwwGxfGnzHj60bgPj/cMYtaz0MW/7tUtZUatSS/N4zCBAxGUh5pJ56XrNC78K9BtlZSC8+fJVPPT4JtZTxZkqVqZsf1Q9InlUtAiSe5qrBVFDrdXm4tlVqs9bzju+vo7dEuECz36xfPQnjzMyNMgVi+tEOHxgcSpYAQjAZ5HnQRDSsOBdBReAhoqKoBrhJCDqnv9Z8WAj2RhgO0IgKVcvn8Wh0QN88Cfb2COz8HaIR9sR/+9372fRSy/izIEKFRVc6jHWZjUZLIgYLBUcIKQELkW9JxHFGpuFhyP5z2IUFYTpl3XTGw1eXAMAoijqXg/Ke4uTn65tkgcQvJHMDggI8ku+t6Be6ax7iBn7mjgciRpSEzK2ejGznrWEjnpqWJy6vD6sdEV17fnf5Itx3aKaml3brYmwoWJDWLR8BfXBBmMHDmSWSDbAYXBki3CoyRf1sgoCU/ck+T/1+blVGKv8x49DASKvGPXEVrvfaDXzM09N9i7rPaIwERhmnHsmfWc/i/a//pQwdRjvaG/czIEf3cPsV43gbbZgYIzFCQR5pzhrCMrMzVOO3nuIYmwsi6KWlJSUlJSUlBzNcY0Q76UQLUtOZQQ0AElAwef33xMK331oG/tdNRNoTEi1M8oLLhxhcT3CakIqBuNzBdl4sop2h4s3hRC+d+/e7mNVxVp7mJCoqqRpSl9fH/V6HaDrRbt3797uxKD4THFseu9pNBrUarXu9z91ocUi5L7Dtve57GQLABfCFWct5FMbDjCqAWiTllEe2LoblvQzzzSpamExkfmjmsqU72f2zwBVvDVIo07/4Azq9Tq2WChIIKSYnk8lfYv0nPKlhvQrxxhDkiTd4yxN08NeLxZ8piuJQNVkBeJSCdgw3uLWuzawvd6PdlIG0oQXn72Uc2YNEKKkolihK2wrWSS0QbE4vA1QwKqnmqYsrkS84qJz2XjbZlxkKeQjo8WZCNlZZ/AYPIoIOCKMWBoCly+axe9fdR7v/saDxI0KqQnYmET8xT//lP6Xnc/FMywN4/FUSKwQkBWoRAMslkAdnpA4gDiAPhU8IUYgwKFYCNJsSFNLxUPkakRBHw0Drzr3dHY0E/7+p7uI63NI7BD3NPfzJ9/+Cf/zxZeyrBphTW79EOYLWAJCmEWGa0LNC0GSicaWaGrcOuocnz4n/bEWLEXkMGGn1wKi5OTHkych+czGx5FfJnOtWQHbTnn8mz+g0UmJxeNsyERqGHnpVbSG+wgQSBwSZEtfokxZAOW2IlJYhxdR4oVwjgWy66gTgwYRmLxwpmZpUmoMzli8sYhXrAcVza3GijQq03VjUXw2HsDTEnKdCeIAShpMPVsUCFUg0PyxUXwQ0OqrU7n0Avbefi/9VomNo+EU/fE9yPUvgioYMXk0venWP88sWGTaWCiVPHl6iw+XC4YlJSUlJSUlJcemvA8ueVoRyK1S8uKSIuxvxTz0sz1EfbW8oFvMLO954ZqlBEZR0XyammvhZJO0Y+Gc44Mf/CBnnXUWZ511FmvXrmX16tWsWrWKNWvWcOaZZ7JmzRrOPvtsPv3pT2fflU8MVJU3vOENrF69mvPPP5/Vq1ezdu1azjrrLFavXs2aNWv48pe/fNz7CGDhjDpnLRokbI9hvKC2woF2ys6xDp2gghPtiZTPIn56/1lrGRoaYuHIPJbPm8OcepU+oKJK5KA/gEagBKQYTbqRoiUnF6pKEASkadpd8CkWPoBulNd0xQAqFpWAFpYfrd/Cz/YcBDFYhQUDNS5evZiQbAEnFEHT3mjLXHzSIy5VmvWNUbh4xWnMDxzD6SSB+u5FTfXY/eYQUolIJcSh9BnHdWfM4HfPWcj81iQGIQ1gU0d5/7cfYOOER1Mh8IpV8HgS4+iYIywZnoB8ea9307OFkLiDVaU/DHjjxSu5Zlk/+FG8tGmbGndsq/KpH25mT9tTlL9V41BTWEUYUixeQ1SrWA3ypbdS/Cg5OfFdMVnyRav8aC1OdVX8nkPse+ARECVUwXmHjgwzuOJ0NIpIU5AweFLn3pOiG0Le8xjt+u1nYnixkUecW7kFkc+zT04kCR5vhCCFuBUzdPl51OfNJk09HZMJ+bvuvBfZezCvwSD5rk7tbHesPKFbXnK8OTJbsqSkpKSkpKSk5NiUgnjJ04eSCa86Zd6ZiPDwvgm2HZwgyaOerbZ49vzZLIss3mWTOtE8osuDauEQejQiwsqVK7n22mu57rrrWLVqFQcOHGB0dJQDBw5w8OBB+vv7ue6661i5cuVh9iqqyooVKxgaGmLXrl0cOnQIVWV4eJjLLruMq6++moULFx73SYQAdStcuWo+g24ym0ZrQGyr3L9jHy1bxYvJShAe4aNbqVSYOXMmixYtYu7cuQw0GoQokaZU8FSAqigmTRCfIuoQ0xPBVnJSUWQpBEGAqtLpdIjjOBN7e2xTpiu5xoU3AfsVvnffY7jqAD5VwiBkbhSzeLhGoGA1E5yziPgeMTwX0HL/oWxk0GzBqIIyv89yRs0z1B7FuJTcnYQjxavikRdALT5PkIq0yTza/N5zFnP14mGqnRY+DDgUVFh3QPnbHz7OPh9kAaTq8RgSJLdz+cV9oIVVS66nubwynskj2CvAkjDgvz7/LFbNTEDHEWkQ6xw+ueEAt963hUNYHAlePEhu05B/oceihHStmkp5q+QkJL+8d4OoJU94MJCHjWf1Q9ymHci23XhNscbgvCDnrIT5s2l6RUxI6p6wmf8Qkp2pdFVy8Wg31Nzk9zYyJaKr4Cn+neBx2gheFIkd9VqDzoJBZp+9io6At5aqF8yeMQ7c/0he08XTW2A029+SU5U0Tel0OkfVYigpKSkpKSkpKZli+iotJScpuWF1bnnQAe7dvo8xtZm9hxGqvslzF9YYSg3WGBI5PPYqi6h84qnaDTfcwMc//nE+9rGP8Q//8A9ccMEF2ee8xzlHmqbcdNNNPO95z+tOBIpU+3e/+9386Z/+KdZaFixYwK233sptt93Grbfeyq233sqll156HPsmQ8hEsOcsHGbExLmPd4CzFR6eaNO2FVLnkcAiJtvuRqPBvHnzOO2005g9ezbVajWzh/GKcZm4hlfEe6wIQeEjbMop78lMb/R3kiT89V//NZ/97GcPywSYrpPZwse3OMcf3t1ip6/T0iyOWZOUuTZhRqBUTCaGZRkmMCWGS8+39RzLkuWahN4xAFyz9gxWD0UMRLb7KSNymJA+hWLwhM7mNgpK4CcYCS03XXEma4cCiNtopUIrDPja5oP8zV07OCiSi9FZKdpQhSe/zlRsCxgL3qcEgUHyRYAAOKtW479dfg6LK1DpJDRrnl1RjQ+ve4wvbtpNSwIUwagn8B7rHSY/NrxkkevK9M0mKHlm4PNTuRgfBLqCuPXK7h/czvBkgsktVVDDjCsuYKISkGBwIvl5+zRd23RqpMmW4YrV+Z6f3QU6QfLxI7tu5wOAmO75fSJRMt/zyTSm01+j7/xVjEaCcRA5odZO2H7HTyF1eE3zvZCujUwZIX5q4pzj0Ucf5c///M+ZmJiYtvcQJSUlJSUlJSXHm+MmiKsqzrmuXUVRPK7kFEamzAG8TxGU0RTu3jVKpzKQFZVLUuZZzyXLFxI6CEQOn40VM7XDxLAMay3WWsIwxBiDtZaRkRE+9KEPsXTpUqy1GGPYuXMnb3vb29i+fftRhTTvuusu3v72tzMwMMAtt9zC85//fAYHBzP/bWsJgqD73UdGihciZSG6//KRN4rBsSiE8xbMzFKYncGJ5ZFmh9Gkg9gKEgYMDAyyaNEiTjvtNAYHB4miqLttIoKxAQQhSIjYEKzNovCMgSBCTYDaCD1KFCw5GSiOuYI777yTBx98sPs3ns4FA3vFJS/w8O5RDlAnCasoiiHgnNMXUQNEHUYUyRT0o78sj8zslcnFGDCWBvDicxfzZ//lxcyb0cCante7Y0hPdDkxgaZUnGBVcFIjDqpYq6zor/MnLzqXVZFi4jbGJuyPIj589+P8/aO72KMGST1hW5DYPgUl6XABz1oDzhOIYARiASMpvzFzmL+4aDVDtb34ygE6Eey2/fzFv9zPd/ZNMEmIU8F12mhnHOtTRMCbFGdTPO4wS4TpTHEP4ZzrWl4VY69zjiRJDiuyWXJyIz2/dK22FVKX4jRBnUfGJ5l4YANDLtOiYyAWg71wOVqrZp7dgckXfp6uv7vkkveU7746h83rGYhPwTtQRyiK8SmhgCUF1yG0HvXpCbe2MrmveGIN3gZZge1zl7N/MKQaC4GH0Au1zbshTqeK0+b6frH4WJ49px7WWg4cOMCdd97ZrbNTUlJSUlJSUlJyNMdVEIcsUqHdbh/2XMmpiuJxeFXEGhDP3vEmW5qeprcgikFY3l9jfiPKJmVeCcTk09up/Gl5kqFWzjnOO+883vve99LX19d97vbbb+cP//APabVa2Zap8thjj/GWt7yFsbEx3vnOd3LJJZd0X3uy9AowxYLPL4Vz9HnPuYvnUclnps7FjItl21jK7AUjLFi4iHnz5lGr1Y5ZYA7IrRgsmvehJ48WzYuL+byY4In2Ny0pIbcYQSH1sHs8ZkLzUpmaogQMhgHhUSa+PV+QH8GgebCm5r6+WRaKIIQK/cAARfnMI5mqaZCV1fMYUoQUA3gCUqmRiKFGykWDEe/4/9l78zi5rure97v23udUVVd3q1uzJdvyPMsG25gZO5BgIOZCQh6DTQJxMPgmMWHI5fFi8oBLuBAuNw/eNSRwbwIvD16Ck3CZzGCwxQx28IRHyZItW7M1tHqs4Zy91/tjn1NdLQ+SZQkk+XzRDNdOAAAgAElEQVT9KXd3qepMtc+uc35rrd/6zbM5Np8m7bZQmzGWpvxfP1nDdzfuoi0Ss0P38dQ3OnebZvd29jcvSlBD0oWXHb+Qd1ywgnrYieg0wQbWtxP+7xvv5e6dM0yoRdI09mOQaNZAIYSHI0jeEpFekBPoieD9/15xeOGK4Rn6iz2MxL+D4rdPws7d1DCIV7xYpocGCMcdRVchxSDqUTmA4rMwZwbSEEidw2cZkvsYtAqemfEJdm3fzvT4btpT4zj1JBIrs4woZd/bXxVxPpxtlGmDJTt6lKHTTiTxgki03cruWUveaoHRuSJ4mZ1/QIMLFRUVFRUVFRUVFYcPBzVt1HtPq9Xij//4j3n44YerG9inBYpKzBNXVbaO7WbDVAfSAQgB55XTR0cYSoTcKSb3WBXyUq2S6PJhde9jpcx8CSHwile8gg984ANYa3tZhddeey0f+9jHaLfb7Nixg/e+973ccccdvPOd7+QP//AP8d73mhjuK61Wi9WrVz+lMlRRweIQzTlt2QJGTAImoE5RUlZv2YYbqlNP6nP8zx97YRBECT0T9rkPraTwil8j0es6Zlq28wBJAgQEj6qjmdawxCa6Kns4+EqZu1mGemYJIqjEQI8B6upp4AuxO/TlY8/NzI6CUIIXQ9flqCiJKokmZApilEFyLj5miCuecxIL8za1kKHOslWb/Pcf3Msvd7dpGSG4OYt+bIrT0pT2KqUYJRTexBGn4HNQB03nedPpx/H64xbTyMcQ3wI3wi2PBK754b3c3w5MG4taO2s7UcyXR1IdSFmB0z/3ffrTn+bb3/42IYTqeuIwI54H9M6BaMUd6xm89+ChvWOCzsQUHQ0kWIIICy9YSauWkKuSKEiegT0wn31hqNb3e/wl5DFYtvOR7Xzt3/6NK//gTbzt9y/jyjf/Pm998xu56orLueYTH+eRrRuRPMPKAdukJ0VZ92JCnPXaCwZxi0YRFfKiIejk2vWE3eMxXKZK/2nTu2SoqKioqKioqKioeBpyUO+fS7Hy+9//fi9Tt+IIxyjBxIxH1cAjE9NMBgFbA43i0+lLFoFCZgEECYXzbektqqXIs/fVdTodQgikacoVV1zBm970pp7dRAiBT3ziE3zhC1/gL/7iL7juuut4xzvewTvf+U5qtRoi0qteyPN8r+tqtVp86EMf4pxzzuGaa655Ss0ORYVccxYPD7HYOES7qMlwmbD2ke1MA/hA8FEILIX7R4tASgw/RJHRPsajzBGvqPiVU2R0owGvSu49kOMkuhCk1iEw25hOpFfhUIZ0BN/XKLLMrY7PxnkjWhBZuojGRrSPj2CCoyuOVpKjBBLtUCeQCARVIGOBBi475zheeeZxNHOFzBDEcd+k8IFv3comJ2T7lKVqYsPgPYT5Miez507slXoCJDH7fZ4Y3v2cc/ntZYsZzhTRhJl0lOsenuDvf3Yn21UILiUuWTDqcMEVbTWPPEoB/Be/+AVbtmzpNZ2tOIzQ2T60QfoFccU6C16Z3rCVXTt20jaQiI0Nck85OjaZdoYkDyQEPPmB8evuC8QXm4gxQpokfP/67/K2338j//Oaa5g/Oo/zLzifE49bwab1D3Ljd6/nv/2XD/O633kV37/henzWZc+g3a8EhcRHa5SuNXRrCUMLF9Il0DVxf0aCJdu8Nbqfez8blJtdREVFRUVFRUVFRcXTErf3l+wfpf8txOyffp/ciiMVAU0QjbYE3aBs2t2OYlDWAZNQA5Y2LUnwWDHRL7jfUuBJlh2XwraIMDAwwIc//GHWrVvHqlWrMMYwNTXFO97xDgBe97rX8Z73vIfBwUGyLMNaS71eR1X3aXzu2LGDb33rWwDMnz8/bu5+ZikqQmYT5tVgqe1wZ+7wLqFrPdu7MNYOrHBg7KMzxPdcZ78sVOVMHl6UGbClFU/5s/y8D2cPcShP5YBgGHQZ1nhyhpEQkHyGaXLaQIPoNy4asxoV8KHwFVdFQsywViN0bQwBGcBJNGpCBCVBsYgqRhUTQrRu6j8rFPwebQuiZ3CO4LDGEkQRAkuAP3n+Kexqe/7Xxl20spRpW+emHZP8txvu4j9ddDrHGNAAooYgvlC6Tdw41Z5Z8p4CVMyQNb1wlrWg5LERKA4jcGzD8O4Lz2Hrl2/htpk206ZBe3AxX753E8vmreNPzz2OeRiMBoKFvKgGOXxHy1xEpNd7pF/87g8MqmpsLlzZsR3y6JzBqb3qCVHBG/DWI7snaXbBuIROJ+CHBggnLEHzgBePV3BiyTSfjSY9pY2id3IaiQ0zfZ7xja99lQ/85f/J2/7kT/kPr7iEJUuX0Ckywb/5ta9x1Vv/CFFlw7q1XP2ud/HV797AwmXL2XtYPQbdRKQI9gmqMdjz6F154p1TAVQxhVmSF8FhGTlhBWM1wzwFCR6sZWr9VhqZkrvYs0D6Fl+FlY5M+ufIskF3RUVFRUVFRUXFXA6qSt2f1VrdsD4dMKCCDYB4Ws6xbSZE4YoueXCM1lPmNRsM2KIhnYsX6QkUYrjO3gfu5Wa39JjtZ+HChfzN3/wNl19+ObfffjsA7XabkZER3vSmNzE8PAxAmqbArKCyL2N02bJlfPKTn2TXrl1cfPHF+z2mVcA7Jccx6ISlSRc7Y/CmTjudoR0aTE0HZMHevdSlcEV+Yvo6mFUcUpQ3q6XglyQJzjm8971Kh8M1oKgCaiyqOQ44ZjihabqM6yLUG+qynYfGd9JiYWysWeR9E2ZNblUsGcLt67fx8KQjd3V8IweXUaOGDRZrogwVSGirJ223GAkZ5524nAFRnCHaqJQe5Eaw4qnnFsEQxOBtnIMEJYhFVUnwHJ9Y3v6Ck9jwzZ9y82RO2w7TaQzxjXt2cvTwFv7omcsJzhC6AiZgVFAP3gQsGWit0MSL7FGRoj+o9Pz9ATABKQxfoi+6gmasGEq48qVn8NfX3c2a3JDljvF0Pp+77WFWDNa45PijSB1k2iaz+dz58wig3zKqXwjvNRWussQPHwS8hbI3ACgSbDwnrSF3QrphM/NbigmKTwxTA5bhYxaggDUW70A0xx6gmqfSaChWcSiNtM5D6x/kH7/wRT74Xz/GC190EQO1BjNZHhtXiuWCF15EbWCIfGY3ooEd27byhX/4HH/23r9AzN5FRzEmxso0IEaw0Yacud/P+3gSiyIa6FoTrVDUUTvmaHbUDc12jiHQtQJjbcgEn8T5Jy2DCbL3q4eKw5Oq4XBFRUVFRUVFxd45/FSWikMfERBDRw3jbY+6FA0x029kOGFkeGhOhlL/rZ/u+cSTRFU5/fTT+fjHP87ll1/O+vXrERGmpqb467/+a84//3yazeajhJZ9uXFwzvGiF72oJ2CW73vyGbxaGEQIDmHx/BHM2ExpmkwIQjfLgdo+Lu8IUsCeppTjr38sZVmGc+6wzuzKldjcDeH0o4+i+dN1TNRmyI1FU2XD1i2gp8VMyaIlZGECggMyhZZXvnTXPXzpwXG6pobKNFahlSyh061R04AIaHCkTDGcjXP6UMIHTjiaY5zQJKdOi4SYVWq00fPdjj9ja80y49RgkBAbVqoRTh2q8+6LLuAd1/2Eh1yHLDjGXY3/72f3cMyw48QTl6K2HlO9BYKJcp8pu/WVneygLyu2yHzvE8G0CAkAGA0kmjOkynOXj3DFi07mP3/nF4ynC7EtZWvi+MTPf8ni+U2MDKMqGGsB25tHKioONUx5Gsjsd721hlwV45WphzfjNF5CeAOmltAYajJZ2CiJKZdxAAd4kaFtMHS6HT73D//AhRe/jIte8hKMWLLMI6XgHIR5oyOcfMrJ3HPbzTGGHwJr1qym281w9b3M1UXWtgAhFNndosUc1DcbPJlTuJd5H4NEg0sW48sAUlFdM71jF4tyj5F0znTUe3/FEUf/de3hXGVWUVFRUVFRUXEwqQTxigNMVICCWKaDYWerS4bFo+ACddOlnhw8gU9ESJKELMvIsow0TcnzHFXlBz/4Ae9///v50Ic+xODgIN77OWWl+3rT4JxDVfc7czc2wgvUxBKApQsWIGtnooomgqow0+kC9Se97IrDi/7gSgiBLMt6fvZpmtLtdnvVDIcjKlHZMQqnL2hynHTY0d1OtzZIxxi2zCgzubLICKFwNwnE7EklPtGwjve85EW80yTkFoILBDX8p+/dxXcfnMFjadmMhbbDp1/zfE4dqjPYzVicepIAMfY1ULTa1J7oJD1n7yjAC0TBSsCoIWj0Jh8Sx0uWDPGelzyLD33/FjZRY7rWZJM0+diqW3hd8yK6UqNGGp1STOGRXNilxMKXWX+HUr8yvT3sf3YWn7WpJ4alAr93+hK2zZzMZ36+mm4yn/F0kLt9zkdvvINLXvgc8loNqxbxRB+ZiopDjLLvc6+hpswK47HOSRjbuI1hFdQKeQgEBJsmvdeG0oXoSVqrPeF22fh9nuPRHDrtNm+98m1YY8nzEG2UgsfVUjRX1AvLly3nvttn67fGx8aYmZlhuP7E39lC0e/AGNQIqp4sU4y1qBTVDiKgfr+E6qCKJmmcu4yBTHECU9t3YvIwmw0+OwlWHIGoKt1uF2steZ5XgnhFRUVFRUVFxeNQ1RtXHEACMU1S8Sq0A0x0PKoGjMGGLnUbsAfRuiPPc37yk5/wrne9i1arxWWXXUaSJD1f5s9+9rP83d/9Ha1Wq2dJ8WQos26eqnet+IBVxQJDjYGY9aZRDA8But1sv5ZbcXhRjqE8z6nValx99dW85S1v6VmlJEny697Ep4QFRGPLzBGj/PbZJzPkpyHJydwAD0ykPLB9Ch+IPuFBCATaJtA2PlqXZLA0TTk2FY5LlONNlxUKTZfS0QFyhkAaJBo4QWc4zXZYkWQ0Q5s0dHAhYKN/C6qFDL3HaWsosiY1epXnMTqFVQW6pOS8asUof3r+mSz0HcQok0mdB1yTv131S1qaoN2AKdIvY7Z78fVaupj09wEo/6H0/VbFzGnKJ1hXxyDUNGPUZ7z57BP53049mtyPQVIjZCP8cjdcs+pWJpzBqIAcvtUEFU8D+oZ4KXIj4MQgAcJ0G/GBIIARjBWMc3PbVe7ZA+Apoj7vVaZYYznvggsYGZ1P7nOS1MXgnIIG7VmdWBevYkJxLdD1fh/te5Rvf/3rXPaa3+PnP/4RPg9FUL3vYGgMl+3fzsSs88Q58izHisEq5NMt8Aqqj2pW3mejXnGEoKqceeaZ/OVf/iXDw8O9XgwVFRUVFRUVFRVzOWgZ4v3N4vr/rjIVngYUHrkeaGe+yHwSRD1J0UfzQBBC6I0va6Pv7/r167nqqqvYuHEjH/3oR3nta19Lt9vlS1/6Et578jznr/7qr1i2bBmvfe1rn9CHNssyQgisW7eOa6+9lizLuPTSSznllFN679svD9ui5FsACZA4E29Uixv9EJQ8n7VwqDhy2dML+bzzzvs1b9GBQ1CsBDRES4JULS856zi++sAWdmmGUmdDx3H9uq2ctXSIwW6gAVjrsQ66IjGQVtipdJ0HchwtRBxKhjGeJAj4LnWj+ODIcBgxSJl+qqZoXjerSSsGMVFoK7NOS/ttVUWtRb1HRAkmR1RZnKe88eSlPLRlJ//44E5mkgZtabC1qzQp/MhRrPhC3E7KAzErOGlspRdCtHkJqkVzvFD4GEdfiCCC2BqIi8cO4VhjuOKCM1gzMcX3t06CjDKhGRPtNkOJi9n1R5CyVV4z7Glr5b2f03i24jCm0IBFQfMchzxKsDXW7nNfkadCIPpxrzx7JUmaEBByH3DWgfexGSbxHDViYqPCYvvNE4zHUMx/ALt27uK/vP8DbN28mWc//wU853kvJM99cVH01HcubmN5rsTtdRg091EsL64pqq4iRzbWWpYuXcrixYsBql4LFRUVFRUVFRWPw0G7SipvYI0xdDqd6oLsaYEgRdnvrB1AdMY1heDkvXKgdAxjTC/zRVXZsWMHl156KXfeeSdXXXUVl19+OYODg3zwgx/kGc94RtzCwk/86quv5v77739Cj0URYdWqVXz+85/nDW94A7Vajde//vVs3769l8G734j0fNTL4yGFvYQImAMVNag4pCkF8b09Dk+iV74prEOsCMePNLj02afQHNtOGgxZ2uRL9z3ADROTTDqDzwSZUVIfSDUQyPHWg1FMEGxwhODIKbMzO+TSImgHDUU1CpYY6y0fppf5LQpBFI/SyfPiZJv17oZYpSFAcIbcWHIcKmBCzrJguPo3zuY5Qwk1nUZ8gFqDbt4mqad0AwgBN2tIjg8hbmtxcouA11hFoxq7CSCmENriduQiBGcJJkVNgorDqXDqQI0PvOTZnOc8A/kMIhYt9rGVdwmWIy6IVp4DpbBYWmBVHP5E738pvvMcISjWmD4DIZmt3oCegntAh3jfwlQ1WlRJsXEisVbEzF2jFN/fs8Pwsefp/iawIQQajQZnn38+L3/17/CKV74SES2uwjVGx5+iRF3OH4rG5p1x5cV2PMY2HmFzRcVc9jtpo6KioqKioqLiacJBvVIyxpCmKV/4whdYvHhxdRN7xBNtCaJFgJIAg4lB1EOIbeZU3AHLSir9l1WVRx55hLe//e3ceuutXHnllfz5n/85EP2+V6xYwd/+7d+yfPny3g3hhg0bePOb38yGDRset6nm+vXrWbVqFVdffTXHH388Cxcu5P777+eGG24A4vgu/Z6fPEJQIQi0Ot24PyiCR4ySppX1QcXhj6qAWlQtXmBY4OITlvFnzzubJds3YrtjbCbhY9ffzi2TbcZSQ6jVMSGlFgQjSm4VbwI2COQOb4YYd46pdgckI6sFfOLwxiGluYJR1OQE0yZIi2DaqO2gtksuGbaWIM7iiS4OgTh1leKRKcTzDAskWHUEycHkLPGBD7/qAi5oKPOyNtKeIWkY2nmHYKLlgS2ySb0AVop5L1bNdD24tAGSoCZusYY4d4qWPsOFAZWUJlTRlzzxOec3DR+45ByWyzh1zbDeYb2QWEvo80g/0rDWctVVV/GKV7yiupY4XJl1EQKiBqyq5N6DETKjsXlmcf4ZhZDnhZ0Rj24IeRDRx/n9yVIGckSE5uAQn/jbv+Pj11zDCSefQtcHMDZWicSzvO/x5InXMiFWyBTP5Zpj0gSKpsXVmVNRUVFRUVFRUVEROWiCeFnSnKYpF110EUNDQ4dxpmPFvqKFB6ZooOFgdKCGqC/sB1K6wZD5A3NLVlpNtFotPvrRj/LVr36V17/+9bzvfe+j2WxiraXbjWLzypUrueaaaxgdHe2NzVtvvZV3v/vdbNmy5TGX//Wvf50XvOAFDA4OAnDbbbdRq9V6y/DeY+3+CNeCikElGitMTE33mg/GxDSl7hz7e1NcUXEooBiCWFQNHkuOkoac40zgynOP58pnncRxyQR0LGt3JPznb97BVx7ZwQMuMOMskJIEh8GiRlEbyIwwJcKtOybZsmMcCRkiHqMJLtTJgUyIGeRGCQZyo2QSyMSTS04Ihnbmo9isMVu8v9FftHAIGFWcCkZNFPWNENIu1HJObzre88JzOTmxWAmEvEUuIQrgClL0xIvrEHxRK1Mkg5OHQCvLUYQ8CJkx5EVGpxAwkhdVNorR+EAUcYqVKZ69tMZbn3caizQrl4zkOaYnnx95hBB41rOexbHHHtsTGCth/DCi7/wCeiK3KSonVKA5f15031eFoGgIZO1uTxwvHwdKFO9L8J7zXG8+KF+zn5eupRheBu998OASJEnpasCkKVnwqMQMcZEQg+JPYQe1L0ivxIBabWgwZrv37xMcqVNFRUVFRUVFRUVFxT5x0ATxMnO3bAxX+n5WHFroYzwe88nyUVb1xi5TRfM43/dQVBRRZUBguO5AMzACxrFrpsN0lsVSYw2FOF1mQRYr0MfPcizHVJ7nZFlGu93m4x//OJ/5zGc49dRT+chHPsLChQuB2QxyiOPxZS97Ge9973tpNBoYY0iShG9+85t86lOfIssyvPdz/Gnvuuuunqfzpk2b+M53vsPg4CDnnntub5n7dcyFwkgGcoWxVouAidmt6nECzpp4LPdrDRWHC/0+yXvOj+XfqvrE5+SBTvs7gOsIhflBOW0Inlre4SgCV1x4Bn/y4pWcXm/Q7DhW75zig9f9mPd992dcv3WC9VlgPBemA8yoZSwYtmvg5xt38flv/xg30+FlZ57O0PQ09UwxuTAQhIGgpAGMd4jWyXWAnXmdddMpd06k3LJtku0zbXZ1Wty8YYLVY202tD3bO552iGJ6tEiBxINVYua4WjKrTJsOjZBz0bIRfv/5ZzGUTVGnjQ85PSmq8CvPgRkDj2SBtVMZv9zZ4tZNk+xoecY6Gbdsa3HvZM76mZydXU8mAgSMZhgyDKXInWM0CuxTtkNDMl516mJedc6JNPJp6ppT0ziLPPUP+Ul84Pu6GC3GOsV3xh5jut/f/VGrKHqRlF7ixpg5FioVhxPxAxed/Q4UCksSUUaXLsabWEmhqkjm8Z1uUXERB4mUvz/Z1c7ZgvJ6oxyHssfLZy2W5qjjvWuUsMcCtXct008IgdQ51MfrGlNaNBlBRci8jx7p0DsJpNymfdmn4trJhLLSJKDdDAka/xYwVkjnD6Gpm7Wi0bj/AaW0k6o4cnii64qKioqKioqKiopZDlpTTYh2FSVpmlYXZoco5a1drxy5/2PSvp+9u9f4QpUoY4dCCBeEQJ1gctCcmqbMH3RomqEkmG7GRvFsmJrmnGYNm2dgHZmN1gUpHkMOJKha9tQ6VJVut8v73/9+Hn74YXbt2sUtt9zCjh07EBHuuece3vjGN/Kud72LSy65pCeclOPui1/8InfddRf1ep1Op0O73cY5xyc/+Unuv/9+RkZGSNOUSy+9lAsuuID3vOc9LF68GBHh+uuvZ+fOnfzBH/wBS5Ys6S13fxvFKmA9tA3csn0ryjycz1GTMRRSmmmdXLRsy1dxhFI2hi3Hqvd+jmcyEMvfza9Y+CvP+6ew2tjQTcGV7SUVxEJqsCIsEOXyU5fzshOWceM9W/n67ZPcuUv47tppvrXmZppeOXnRfI4ZbjK/7tjV9vxybCcPj23iecsX8sFXn8ezlw3z4+V1rvnFvTw8thPvykCCIt4DCS0L//Szu/h/fnIHj0gdTVPapg5Y/uRrP2fAd2h2xvmNk47hz37nQpZYh0XASp+XMYhLqIklJYpMosLvnTpKd+okrv3eD2mwoJgiC4FLlDbCNoUP/fON3Lx5J+NJndzVCWpxmnHZF7+Poizp7OTS807ij37rOYwGcKqI83hxBBHiFgkijpRRRIRlTXjHBUtxY1v5ya3/To2z6GJJioa9+/YB7+0TPDAUoZ3CtCFm+fbSVWWPR7n2x/DPL+fbx3q+4lCnMA3yghhD1whWQHKla7rUNcOddDSTBJo2RY0naWWwewqHEsT3hPB9/7RjiCi+vgjL9TLVy7HosFh8Wb6BwwZDolr8DUHL3igZMcznMcxmlEQ5OkdFCpsoHzsZiCLqkZDz0PoN1Os1lhy1FLGgRKsUYwwa4vWTFOK0SrSOeSJSD0EMk4ljXscyZXMaVjAPbmQ0j0K5RbDBI8eMEoYS1AtJAAS8VVoCDZU431UcUZTXEuX1xf5VM1ZUVFRUVFRUHNkcVEG84nCgKE8u6ElAZRZ4fAnBBHITb/gEwWARHAQwwdFrgSXERnhZl6xlWTo4jPgxxNdIfZN217NrsotfGjBSZlvZOQlaj3ezW4qHN910Ew8++CDGGIaHhxkZGSHPc4wxbNiwgU2bNqGqWGt7Qkmr1eLee+/lxhtv7L2n39vzlltuAWIQ5+KLL8YYw8knn9zLSP+Xf/kXms0mr371q+cevf0VYoqOXNMKE5KAdfjQxVlHXbvMHzQoT6FpZ8Vhg7W2J36X48l732uIdUhlwfYP933YLCkEqN5LJVY+IIJBaaAsM8rvnr2UF56yiAemO9y/o8t9GzYyOTlJaO3G79zK7tSQGsfrVizngt98BqeN1lhQg1QyLjxpkFOXn89D2yY5ZqjZd7wChsBAEC468TiOXXAUbVejgWBUycSgIhjNSbIWS1PhKGOpZz7OTc4xNyoX571y3w3KsIHXnHs8Rw/XWXHUKDUUIQfxGBWaOI73OW9/7uls7AY69QEEQy0oLsQt7BpDV9usGK2TCpigxXGyBIoumcV8YQsB2ZIhwbDQWf7opSt5zqlLOOuoBVFIP8TELcWTkWNIsN5CgGBBbRchw6hD8gSqRsJHONoLnMNspjIQG0AaQZfOh8QiuUcc0O0y8+AmHCFaBiFFFRr7rIo/+mXFdQemENhj1ULZ0TqI4kXxUsrvZaTGFH0+ugQMnmhx5LEoBjE2CpDqscagwWONsPb+tXzly19mcHCI226+idNXruTKP/mP2LSOcTbO9VIaJMViun2pDROKwJJA14JRRX3Ozo2bMFkORjBe8QQG5w2hpj8ANbuGQ2u2qDgQ9Cx6ClG8ChhWVFRUVFRUVDw2lSD+NCdmhPv4KH2txRCkvOOMoqxRwaqL5bWAlIa7If4QVULmaXcmmMh2MzM9ic/mMdwAEzrktsuMz7B1y8bpQCZCYoCQY4zrK/WXOT/6KUXuT3/602RZ9iixsBQVFy5c+CgRsdFo8Na3vpXLLrtsjo1KeeNQLg9g2bJlPUEyz3M2bNjAqlWreNaznsX5558PQLfbxTm3X1k38dY6ioI7p7vszl20acASvGFBwzJSe9KLrTgMKW9a+y2mRARrbW88atBffYb4vqyuFFee4mpqtEkVhlLHcfUBnjfaxJ86nwzIQpyBglGcKPO9MNARLB7VaQIdGiQc72qctHwkiqrFdnlrEKPUVHnGkiHOXjSEesU4wCi5SPQaFxAdwigkBFQ9Knavh0HU40LGQlfnt05bjiDUCIhEQVzUkuIhTHLBCSOcZWpkkuBCoKGCKebO3MCEzCMo1IsMaBWLFmJ4zBz1cc4VcOp79kp1MSypJYyespx5Gl7nuZ8AACAASURBVKj5DqJ1HlVe82vGSRdRi6gpHCgULzlCG6EUw+WQE/MrDhyxKEAwRXzHanF+FR+5F8UsHoWaI8k65B4SAd28Y3YBamJvAJ6s31/P6y0miWspcytIKYgX2yIhjk/KwFS8zomvFxAbe4AUZkaxWbghaLQssdYQfIAQyDpdvvSlL/HKSy7h7LPO4q93PMLff+rTXHjRhZz9zHPxoQjch0Kgln3vHFIW7RmUjlXSEEh8YNfGzSSFPYsJ0BHlmOOOR4IQVKPiXpQCGgwS5FHVGRWHN/0VZpUYXlFRUVFRUVHx+FSCeAXxbs9HEUViMXB5+xgNAAIeg6iJXroUL9WADx267Tat6Ukmd+3GtB1ZEhAUK4EFrskCk7HVThMSi2iH9Tt2MSPLqItiNcNKjTBHDHn8OzMR4dRTT+39XZbQq2pP4C5vBEqhMYSAtZYVK1bMacYWQujZ+pSv7besKC1Rrr32WlSVl770pYyMjAAxq/exSvf3mSK966GxKXZlgrfRo9gE4YwVR1GDShx6mlAK4VmW8bnPfY4FCxbwmte8phes+VU7yc+x09WnppPoY7x7NuuyfMLiDDgFCZ4BD2AJGHIDbaGYgXJqpgZp6Ucdm10aFEkMIfMkQVBTCM3OoRorUaIndyGGFx0vDYKTaIcQvGLiP6KSxEqYvZzbxgRS8bisQ8PW4jzjopgmxiAB8IJPUnIcYEkCpEFwpWm2xvUMSgw+JiEgEqWqUvKbbSJYZNeWH5AGnCoDqgxYSEIb0bKp5t4+tT09k/flVftH1NocEL9jRCik/gSPJRODWEM0q6g4kvEIxsSRXbqWqMZvf7WOgWOWUFs4Qjr9CCFkNIJh6q61LA6K0VibFr/dA/tmfN0ndJf+5b06OC0W4WdfIwEhXr/Erh7leyjW7PvWXSQNFA0xIWAloD4GOl1S539ddx0LFy3i7JUrMQRmpqdpTU+za/sugo/XH1nuwZjZXICeWP/E9M/TwQSsD9RmOmx7ZDsLxWB93PdWajEjIzEAZ4RQHHwhWqrsR3Sh4jBg7dq1fOMb3+Btb3sbzWbz1705FRUVFRUVFRWHJAf1MnhPcbLi0EMlZm35QghXNbgAaYCaF+q5JckTXC6odFHTJdMZJtu72LxrI2s3reX+TWvZMrmddmro1ubRToboyiBBUxYmQ5zUmIfrdEhwJFnKmoe3s7ULmVhUBN/N+nw+5XHvBEsfxP6xVArX5c9+obrMIC+zuMuf5ZgsLVVKMV1Vcc7NEdHHx8f56le/ysjISM8uJc9zPvKRjzA+Pt5b1pMlBGUG4d5tE0x0Y/qZEWh4OP2oBTgfeiIYzDZJmvPZVQ2TDnu8970xB/C9732PW2+9FZibPR56BRlh1jJgL5SNCEv2HC/7NH56DkoxgBS0WL/q7M8nXIbMecw2T5RZecrWY+8BSQliCc5G/1yJYnBDoemh6QWrgjeQW4e3TYIOIWYYrxasBeMRCWghKqkYcjF0xNBxQssoXZPgqQMJNiQk3pJqSuItLjO4rsH4vTeaC0VQzRjB5BrFXIUMR05CfMag1MiDwyHUgESKnRNQK3gjJASS0EEKsV6l9CyePVIqWkhzDjQpKnoCKVALAath9tVP4nPR4nMJGpcfyn17gubGey5G+/4LGuY8l2PY0XHMkBDEg7aQ0I2ZqZqimhBCYQ3TR7kPZaPjct4vny/HdzUHHh6UwbHSNMX02bIFFBWDmz9EWDJCEHAi1Hxg9133U59skQQKyxVTNOV+cmuHmDUtIYabRMEWAf5SoCfEzHXnY3BNsgwJAeO7pKFDGjJSEyB4orwfq+sk5FiNVktlMc/Y7jF+9uMf8/rXvw4rsHvXTu68/TZGRkc55uijqdUSuu0O1tk9p8l9ikSpKh6PClhVjCiNHdNkm7cjoiRe8VYYPfs03MhwEYxSvCoZWti/VByJqCrbt2/ne9/7Hnme7/0NFRUVFRUVFRVPUw5aQla/aDkzM0OSJE8to7bioBHE4tVgy9tChVYnR4wFI7HxEx5tTzE9Ncn45BRZFqLnpVhEmngPOQZjW7QTT2o8SW5IyFjaqCNTXXIs1tTYPNPh7m27WXH0EDUxGJEij+uJ7wT7rU6eiP5mrsCcMfdEFif9DdtKMfLuu+/mtttu45JLLuGkk05CVbnvvvvYvXs3jUZjvxtqBjFMiHDTuo3kJgGjWK8scrB00DC+8xHmDQ4htXr0I30MMfyx9q/i8KIcq+W4K0ud+4M4UaAMvZJ9VZ0t338CynFRBm0e7+99QUuFmdmx17/+3nN7Njt8nOX5EKINTC/7WQgCQWYbL1oCJgjio2QlopAHHFFE9kYIxmECJCF6AQebgcRKC+MNCUULPBG8WILMZmXjZ60Deq69peOK7LmHj4VDjYEgRVa39Hy/VYjim4BFGRBBS9sFVRBPMB4vhhwhCQFLFMZUo6hsMDE7HEC0yFsVrNpYt1MESKK4Z0BqBNE++6lZ8fhRc+ZjGAhrLyM2/r4vZlBlYGTOkRLpieGC4BVuXreVsalpzjnlaJYMNxgkUAsxbKCF5YQJwB7WQGWfh3J8dbvd3vwMHHoe+xVPwKzaGy3XABSsYDGxsmJ0Hu1lC5ngXoaM4HLPcMfAA1tIzhkmpEm0CdHHD5z3o73/x2xwDYHxsTEeXL0G9YH77rmX3HusjY0tjUnY8MBD3PKzn9PxwomnncaCxYsxBlbfdQe7du0A9ezatR0j0dTIa2B6cpxbb/opjeEFDAwNc+qZZ9LtdnnGec+i2RxAUX55x23cc89d/ObFr2T5scfivWLKPif6qI3e6/4pAXEOH3JqmeJCTli3mWzjtiiIizBlBX/S0ZhmA5Uiqto3FciB8L2qOOQorx/KeXNv18wVFRUVFRUVFU9XDpogXvovt9tt3ve+9/He976XxYsXH6zVVew3glHbuwkLAl0Dd2zbxo/uuof2QJP64oU0sCzqBkYHmyQswAVP3UCi4ILiCIW37S6UnJqAlTpNdZy4MMXsmiAkA3S0wSO55Rebd3Hh8iGaxmKKZlK9hp6FtPTrvlFTVbZs2YKqctFFF9FoNMiyjH/+53/mDW94Qy8bfX/wImyYUVY/MoEMLoI8Ax84cdgx4oQd27bSmpykOTDIvHnzqNfrc9ZViUBHNnMF5jKLstALH8/G5HFOmX4LoP7ngDnie+/f9lSxS+1K+n1ro9hbCvSPtzn9P+PvMcAmFI4hqtgQjRDEBkLPlsAUpiEG1AABNSEmRyP4os9BL1PdRCuDrLDjsGhhWVL8LVEIKjPPQVGjKL74qbGZXrF3DkvCo7OW5+5fFL/FEMV6KJoO9x03U4jVaqLTQm/dMQu8kL1BpbBJUcQQg5PaW0wMTBIzt22RXe6LTHJTCO25OLoaqJUBk77qmSfYidlAR/FUgELU3lek77MuftPZ5wRYedJyPn3dv/PFux7iohc+g4uPGeVkY2h0W0hSw9uEIEKy55L3GLuf//znOemkk7jwwgt7waN+gbzi0CWGtfb4nEr7DhVUA9qoc9QFZ7Px2z9hsBMwRWXI2E13k55xAjO1BPWCFYrgzROM7V7jSO1VoInATT/9KW9/y1vBZxiXELIZUMEYh6rhf37mf/DZz/49iOUTn/k7Lnn1qxCUD33w/fzshz+kJ7CLIagiFtasXcMVf/hmUMvKZz2bv//CP7FwwSJe+7rXISFHNfAv/3ItebfFb7/qt2kODcTzzErvMPSfcPvy7V7auViBhjE0Mwj3PsjgTJeQZagkTBlP7eRj0JolhOjMEjQeG+mfYKrLiYqKioqKioqKiqchB9Wys7Se+MpXvsJb3vIWli5dejBXV7EfCKAhli8bE8iDp9PtMG+0wdLTT+TfbrmDO9fczy7fILcjiPeMGMNx8wZZXk9ZKLBsoMbigQajtYRltUV0TZcBDTTV0tAaJ4/OZ17yAN1smpom+GSAmx/czdR5K1hoYzYnzJZUlxYBv+67NGMMixYtwlrLypUrCSFw4403Mm/ePM4888yYvVv4PD8ZFMgUfnjfZsaTAdS3wdaw3Yyzls5HOjM46/DdjLHOGGNjYzSbTRYsWECj0eitr7QM2DMjvuLIQVWjrRAUcum+0++D399kq18gfdyx26dmlkJsofxGewMNiMpjiu37tl9xmUZATMzuRhWLiYJvee6Lgo3dJ1UsHQKZBBRPgiUpXu8lit2GhJ7EVHbtK7NRS0FaAkjAGBstWjQUmdwBiweyYhlPnCNdaNt0ADRgTfTkTbTM0VYwinoTs9xDaQ4cs5qNKrUQj783lkxAiw4OjlBkeveWVFgchCiwIwSJQn48mAZvhdwYaiKxyXEhFu9T8Kx4jX+UtL2X94pAX5a4kfidrxRjTgNOhaXA7774bH7+1R/zse/8gn+qpVx+3pn8h9OWsshBMEK6x3b2j9+yYmfVqlU457jooot6z5vHqKCpOPQQ9jijBNQYAopFY9NuUUaecy53psLSrsUaSAKM/fh2jrns5XRDRt04TK6o25frg7kqsxHh2ONW8IdX/FHPskVtrMBJjMGrFKepolhWnHA8nmj99+KLX8FJZ67EGUE8JCpk3S4ucahRPPH7eP7io2gODOB9YYWmsGHjBu67626WHHUUz3veC0AMPgSsc1GgZvZMM1oGpfZyPJ0lD54US+h2aYy32PCLO5nXUerW4AXyRo2TX3AebaukNvY1kF5DzWI9Pb+YioqKioqKioqKiqcXB01JK2/CSw/cJEn2nq1Wse/s9f5/D0F5j9dHjajMjISs06EzOUY+PUGn1aFm65xCkyvOewk/Wv0w33vwEe4NA3RdQgfYPp5z61gHJ4FUZnCym0QEl9WwA8Ky1HBiw7HEdcmbTQbnH8sjj7QgODriWL11E2u2T3L00qG+En/te/z6M/5Ulec+97m85z3v4dprr+WOO+7AWsuVV15JmqY9/+dHvY+o45VZtez5t8JUJ+dnq7cwTYJqDqo0NHDa0gUYP0MwkOcZYhwihpmZGdrtNgMDAzQHmgwNDcV1P0ol1dmM3oLqjDtU2SPw0/PFVcREe4zMB1q5Z6LdwQdlZHCQupkNHMkeS4u/SBR0hOgXq0o3D4yPT6ECw4NNBhKLUY0eujo7ZkoXg/78YEXwxtBSZWxqhsxnzBtoMugMdeIytG8jynX3b12Z990NMNnO6Ha7NBt16qnBikRxWzWq2sUhCUL0C5eobRsPmCipTc10yDodGmmNobollYS0PJQSrVdy8TGLmijEOaIveFeEDpbpDKZnutQSx1Dd0jSWNLgYISwyypXZMF1xaEttnVxhsqPsbrdwiWFowDEkYENAVFEb8OR4E7NPjdrCB97jyeOSjaPVFna3upAamg3HgIE05LGxbu898ShaPKiLwQnAqycXS9fDjlaXaTyL6ilDiSEREz+L8rj0fTZlPY4Wn4sH2kHZPd0mD56BeoOhWlyHhV4NT2ne3BPLy4RwhFygnXta7YxON2OgOcBAakgJOGlx+lCdP3/583nnP/2IdWEeV9/8MP947ybevHIZv3XcfI4dbuB7H2Hc7lIU9z4GLZxzZFk2x2KoEsMPH/asPinPJVuMxyCCW7qYxWecSvbz1ajGZrtT96xjatNWkgUngC+acDI7ez7WcqH/uy++Oqhw5llnsfL0M3AYNATaFoIV8AGj0cINUXIUlyR08ozEOX7/Lf8Rj8bt9YoNGu2b1ENqCZpjQ4bYlKxoVClicUb48Y9+yINr1/KGS9/A0MhwHOfWFKL5bEPx0sHJFPEz4LH7RSiFBYqSqmDFMLV+EzvWPMiJQTAijOczjKw4ncHTTmAqcX1z+9yrq3L51XVCRUVFRUVFRUXF042DJoiXN6lJkpDneSWEHwzKfo7F3U284Smz9WJWZSx9lyIpMiorwSq5BNraZqI7SWu8Q5jsYrIWTjPQ6FY7IsKAt7z6+KM4bdEI//rgBv592zQTbh65gk8sbWMAB8GT+Da+7qCd8tBMl9tndnLC1DZ+99RzuCgZZGt7J+26JYQmU2aA61ev49zFz2S+mGhrEHJUMhQbs7fg13qXZoxhcHCQ97///WzcuBHnHIsXL+5ZTDyWf22RdIZ4wChdiX6nLsRzIhhFQ2D1Ix1u3T5GZ7iJ8YPUJ3JWDliOdm2MTDBTU6xx1L1GMUpjI86J8Una0x2mxqcZGhqiOdQkcY7oy6og0VrCFwEPA0XG7RPbP1T8OlCCdmPZva8hXrAhioHtAI9kgZvWT3PdL+9kY3cKnzdZtGAhLz/rKF58VIPliWAlyr3qCzsRtZgQMOrJjWVDJ/CjLTNcf89GHt61E5/AwkaNi09awctPWMCyWkJNFMjJiqzIqAUruXpscEzmyg1bpvja3Zt5YOck3rYYGbC84LjjeeUpizihkcZGkRp9bK14vDHk4qj56OG9G+WmHRN85e4trNk2je/kzEvbPOP0o7j4+OWcN9zEZlHn7boAdHAYRNOiWaUwAdw60eZrd23hrvUb6ASoJw2eccxSXnX6Qs4arDNkFCddRKPXuNqETISuRvHKBOH2iRm+9uAubl63m5m2Z0CUUxcP8PpzjuaZ8xsMiCO3URNPg0dCgGBQY/BGmDawbqrF99Zs4qYHtrN9AoxNOXlpk5edtogXLRthHmCD4I0l14w0CCEI3lkQg+LY3O7ytYd2sOqeCTZPTlJLhWWDCRefcTQXLR9muROcKc7aoBjtknuPs0NQNBbc0fbcvGmKr93xAA+12rSABc1RXnbmAl5x7DDH1xJMULwoTkHzLj51SCga7ImwPVN+ummKb927mYfGdqGZZ17a4LlnHMNvnTjKyc0aA4RCvQyIBHKEIElsPmqEXQR+vn2M7967mTUPtWhpnWQILjh5hN85cTErk4RU4JkLGrzlojP4r6vuYVdjCbdMCRu+v4Zvjya86pkn8tzjFnBs09HAY1QQsWixrYgn992eVVUlhB/alNVTZaUCgBZVEkKsHgghBldUhBCUHTt38tDq+9ihnlNJyCRjIASGx8aZ+cUdjJ5yDJNJnUwEL0pm4+XPQBfSPC6nnRi6EiXzaONWUHg1+aCoddGyyRgw0f4JG8eTDwGR+K3pvWLEzhZ3EO1a4herISCEACIGFUcezaSQYpkSMrJuhxu+ez1pvcZvvPRijEnoZp6777uHM89cGVVwI0DoBdxMsTmh2OzQF1g3FBV9nnh9J4F53ZydN91JumMCVGinMDNgWfaCs2CwQSqxHwGuzNQ3s8J4dVlwxNHfaL7/74qKioqKioqKirkcdMuU/gux6oLsALNnEniRvdfr3oaPZbwYMBbFkAdPd6bL+PhuploTeN8FsbGhG44sxNaaBEFMThrGqCeWM+YlvPH8M0jXTvLtB3dAIoTQAVOjMMqNmZnqcQS0JtAZ4zfPPZEXH7uMR9qOVevWsT60EVujE4TrV2/gtWedyOjICGK0aAhnQB2B0qP410c5Xo0xrFixYp/f18u0LZrteQnFTawQMmXcWf7pjnVsMQlYh2Qwag3PXjbK/GBodhO6aoub5JkiwGGK8mZDV9u0u20mdk1ipxMG5o+woDFCQx2CIfNCbgSRnFQzCB5sHaSyVjn0UELwGBczbLE1vEm5d3qGT/9sDf92zxayoWV0upaQWuymMW5Y+yAvP24+/+nCMzlz3gCiAcQRvOJCB2Ny2rbO3VM5n1y1hm/dt5lWc4TMNHAmw491+eFD9/Cde0Z514Vn8NzFKWnoYAoB1yCYLMenCfer8ukf38VX79nCbtekrSnqRjATGT/fcBffusNx9cUX8KJFw9R99KjNrSVXj0iXTBI2e+Xzv1zHZ394D7vTRXRMHWtqyHSXVT9ax3W3Pcg7L3wmv3PMIoYlx4YOKhZVwUnMXt6Ww5fv3cb/uOl21rQUlyzA4+jQ5qe7VvOd21dzxXPP4nfPOYplPiB+Bp8MEHDY4DF5Riep8/XV2/nUD+/ggRmYqY3QsnVsmnDL2t384Jf38cbnnMZlzz6ZpRpwGlAcORaHQlCmRPjp5nE+fN3N3DdtmEzmkZlAYgK3rB3jG3fez2vPPpo/vWglx4jF5oJzHlRwarAdaKfCz3ZN8Dffv4UfbeyS1ZaQJw4/0yKdVL675mZ+64RF/O+/eRZnNB0171FvUJPGgGfo4l3KfVMZ//2G+/j66m1MDc0nd44QlDA9w00PbebHywa46jfO5PyRGg0bBUfSFAldQiZIUuPhHP5m1U18Zc1WdtoF5HYQMqWmnh/eeC9f/4XwrovP58XLBhnMO4gouTjEOlyWgRo2e+FTt97L/3vrGsa7owS7kGATQmuaf990Lz+4cw1/dfEzOWvBKIMivOrUZdz30ARffmA34wOjbGvM59vj4/z0hts5c+EIrz/vVF52/CjHporLO9HnGYMEQypmzry8p/BTcWhR2jT1hLnCWscHj/ceay1Zt8v6jRv513/9V6677jpu+ulNvG54Bf/H4BmMjnuy0KLhamz61g9Y/pLnM33MUWQ2Bg+96RU/oCLxgUY7Jy3KRYqKiN4Fk43fpaHv4qJs7AsghY2UFNtti2oM+q9HCk9/j4I1RUa6IRiLKcrBTGGjtOb+1dxx660cd+LJPPd5z8d7z8b/n703D7Pjqs69f3uoqjP2LLUGS7bmwZJnG09MNiZ8YGNskgDOQGzMvYGQhFxyk0CAEEKYQh6SkMT5CPlyExJCCMM1BoNHjI2NsfEgyaMsax5aUs99xqrae31/1Dmtlixjy5ZwW+n3efpRq09VrT2fXe9a+107dnLz925i7clrJ+1OHhTKuPFsS9Uq9tQo7klRI6UIg4Ck2SAcm2DiBz+ly2liIyTOEXcHqPPWQNCSI2o9Q08Rr5nZkR+/8N7PyOnNYAYzmMEMZjCDGTwHZnZLL2c8i6qIghYvLigtNJM6lWaDsVqNeq2JxGBSyHtDIAXqKiEJUrTJiHONwXlD01iGlGNXs8Fj+/aybmAP941AbEIQhxWHpClOZWFHiQkIfYgKm3TXB7n6lBW8YUGZKBmgM+zkvIXz2LF7goQm2hq2N/L81yO7WXN+J5F3NFqSBRp1cHK6lxWyKG20QnlN4CHWHq88OrV4q7lr7wjf2TdAEvVAHZxxiBplwZJlDASesUaENA0TWpgISiTeE6cpsXgS8cTOkQKJd9TjGtVNVbQZoGANRe/pjhPOmDebUxfNJsrlaOoU+8x0ZjN4qSEK5SwWg8OBFlIb8kBVeOD62/lxRUi6Z6EbAV7lQUZJqVMtd/OtgYTHv34/f/OWsziru0ygwaQKpTQTorl7qMGHv7+eDSMOOrrxzoE36NSQqoCxXJmbx5psuv4O/vh1Z/BLJ/ZivWRzL/U4E7BhJOGDtz3EHWNNyJUxroloAekEctSDBg/UFb/7rfv5wLlL+ZWV8ylpjRcFyuDTBo81Yz79g5/y7a1DpKV+tA8JnMNLQqLzGFXmERnmt266i+1nnsF71s6nTwegQvCC17Ad4ZO3P853N+5lzAq6UCJtBnhvsPmIVJps9oZP/WgLD++v8JGLl3CichkxhcMAVTRfvX8Tf3b3HqrRPLwaJbAxdaNxWpgIYGfXfP7m/p08tX+Cj7x+FScGjtQW0RqcFoZF81+P7ebzt29iV9BLM5fD6wDsCEkyirM54o75fHljhSdG7uWPXn8m53fmMM6C1ogXYq24YdNOPvbjDTzRLBAUe6BRQXsD1hKjaJZnc/2eBnuv/zEff92pnNNbpGgDmg7QnqZ23Lt3P3/8nft4sFGGuQuIq+MYlznxAl1nwpb4/pBm/bd+zJ+8bg2XndhHTmfEfBAbvDGsryV8+P/ex70TFSr5MqlX4AOwlrpu4HLd/DQWfu+GR/jD85byqyf3Eto407NPhUDD5okqn7lzE/+2bTtJsR9t8kjSxKgmyiW4qIuHKinv/c87eP0Za+kr5EhEoXo7KQzEVHwTp1JcqcRIYrirkrL+tg38WzHiypPn85ZTT2COCKFPMWQnX2bw8sChEartSHHvPc45Nm/ezI033sgdd9zBrbfeSpIkiAhhGBIv6WV/GjBrTEhDQ6w8hU17qd3/OLl5fTSNJfQGG4PXQqIVsc3oYuOFyGWn3NxL+KUnZBHm99xzD8ODQ/z6O99JT08Pdaf50Z0/5JSTV2cOc+/Q+uCt+EFkPZNpFLKgg9bnCkhST5cohu/bgKzfSC5uooPs9EbX6lX0veLUlmN9Bv8d4ZwjTdNnlfebwQxmMIMZzGAGM/jvjpkd0ssYh9OWzKKawKUpjVqdSq1JrVGjGddwpJkerCjQCo8l9gplBI3HCaTaUFWWnbFj41CFh/aO8vjQBIPOUzEhaVACbQlFMC6LCPc6RbQFNOJjehnlbSvmcvmcXvKNIVTBY+MxLj5hDrcNjDOgYrwLqdsebto2zOXLxnnNnBJIls4uFIWWlkzuy+5dzqNIEZUp7yoBS6YlLNYylCr+c91m9qcGKwFxHBNFNU5dWOaxTev52r69VF0BKwVqaUjT5kiAxHuaeLyB2HucUplGtFMYKeAZJ6+GOLU74PKFc1nUX6LoFUkDfGQxM6czpiEUSixeEoxxREbxG9e+m2/uHuf6CiRRF6YWYJMaPoA00VjbiXdCokM2IPzeDRv4yCUredW8bvJaGDMBt+ys8bd3bWTDuCHJF1FkkYriHQ1tEQyBQOI1myXPn92ygfRVp/KGZT10CDRDzd376/z1bU9wz5BF5YsYaWbnFJRFuQkUmlRCdFhkS3OCzzy8mb0q5pq1S+gTRSqwo67509sf5c5dDZLcLLxXiPbgU8Q5tLU4pREdUC/P4h9+soW4YbjmnHnMtZkzb2sj5fP3bOQbTw8xEZZAlxAnSABKC5KkaJMnVorBwPC1p0aBR/nABctZntNYr9iZJvz7uo38n/v2MBQuJlFgy2W8G0O7ahZdby3VxJBEvXx3Z5Pm95/iA69fzYmBIq+EUaf59/U7uO6eHeyKeki1XjUQNAAAIABJREFUoHSMooE4QescGo1LUyq6k7sH63z0xof44OvX8qqeEgaoWOH72/bxqR89xUbXlZ0GEI8JQ7RPCSWlljjIl0kJ+elYhY/euIH/dckpvHJeRBTABJqf7B7n0997mPVJB3GxExoVTGQxzWa2JnuBQFENQ55Ou/jwHU8w8aqVXLaoj24FTWu5b3iCT932EPfXLBP0YRNDZFNiNYZoAybAKUXiYJeU+OwPn8ZJzGVr++kymVTFE8MpX/zBRm7f40nsXLyx+LSONoK1AQ1tiE0ALmSbWcw/PDSON1XQgnIJra8hnFNIQ0DyKBLGgpR7m54ND+7h+i3DvG31HF67sMz8UkA849Z7WaFNiCulSJKEnTt3sm7dOm644QZ+8IMfMDAwMPn5ypUrWb58Oe9819Wcf9rp+P+4ndHP/CulekokCtk3zo5v3sLyV5/B+KwizmsCr/FOkYTQNABCToRQfJacUmt+nmcH1CHWlFao1j5g5crV1BoxT23ezsanNnHZWy4HFNaaSfW7NrxqKbxIJo/SlmLzuqVcpLMEoVaEYKLOvq/fQke9QYeCar3BaDHkpF94DfR2Z8d2ZvDfDosWLeJ973sfxWJx5nTuDGYwgxnMYAYzmMGzwHzsYx/72LF4cPtFqNlsct111/Frv/Zr9PX1PevG7OexYXspbbwY21OPgx8UdQUHCGMRRIR6vcHo8ChDg0OMjo5TrXucE4woQhGsyyLtALwxJEZR14YJFTHo86wbFf7r6UH+Y/sw3901ysYkYiIJ8VJCfA5vQ6SdFs5onGqxGio759vpRrhy6WzecdIc+hsV0sDjiCnVmszq6OOJepOt1Qb4HKLzjCV1cDG/cFI/oXIkCrRXGAeYgzVTXg79pxCUpPgWIQ6gJUsVV8Fw065h/uXBbVTSPEgOrRwLdYV3nLyQFbO7+OGOPTziI3YFRYY81Jyj4j0V5akroU6mS560pCRQnsjVWRZ5fnHZAn5l+ULOzEFufIikPoExiijIYXTWls8mL3A02/bnMcdfynXk2fCCbHuFDxRNFRMozaITT2J3I88Pt1doBHm0UnSkQywsxvSpkHg8IdEW0QEilr2S8MDW7ZTLRaLOHN/ZPs5f3raJjRMBqQkRl43CMJlgUdlRLlhcvQ4iOK/RqsCQs9y7awBTCOjrznPvYIU/u+Mh7hsXnO7ExoCPyXvHggAWlxz16hDNoJhp3OocY87y4O491FTC/N4ONg/G/OX3H+OWvTFVOjBSxIig/Shzw5hl5ZC0WqGOR3QeW7d4Cjy8r8KOuMlJc8vsaNT59D2P8o2Nw9RynZkTSEJCr+ilyomdFt9MaKYaZUF0ndQKmwer7BhsMmduD2Oi+Lu71vOl9QPsjfpwSkOQ4H1Ct1Q4uVdRaFRJawHOFHHGUDMFtkxYHt8zyPz5nTS15ssPbuH/vW8re0weMQ5FTBSP0p8Mc2K5QMEJcTMmiQIwOZwP2V+p8pM9u5g/qxtnA7779H4+dfsjbHGdeCkAKagmOR+zrOjp1p5aanBJJm/lidjbtGzYvpd8d4F8KeTmrUN85pZHeDzuIA1KSJqglSHXbHJi5JgfpYw3mjQji6QKUWVGE836bTswgaWnr5O7943y8TvX8dBIQs0XkKAb8YpCMsaJxVHmlYGhComADwTthQlRPLxjHwpFX18Hj9QdH/veeu7eFzJOEW8ClGsSUKM/SJgbOZJ6jQSN6IhUx3hjAIN3Dm9TxKZ4H6NsDlyE8jmsjvBpgtIpsW6wM064Y9NuHt0yQJ+1bLjzhyxdfCKnn3765Fr2YiTZjvSe432f8mz4WZI0h/tOmRoZPj4+zgMPPMDnP/95PvWpT/HFL36R9evXU6lU6O3t5aKLLuJ3fud3+NjHPsbV11zDshXLyZXy5Ds72H7XvXQNVAgTIbQh1eEx+tYsJV42l6rJ9Lq1UjhFdnpACVYEIx4Q3OTe5IXV+8jvkQMJMsn2ZIVSiTtv/wEnLllCrlDk//vHL/Hrv3E18xecgNaaNHWTMi3ZEw4mxLNqtdpXK3w7abH3dHmFv2cD43//n3Sk2RodKcuuBd10X3sFuZPmH/TsqfWZ6qx48fV+YThS29N1jk+3dUREKBaLLF++nCAIJhMQH21Mx7VquvbfdBsj09XGdG3b48XGkeJ4qfeMjWOH46XeMzaOzfXTycbPukbJMRLfbGtHjo2NsWbNGm655RZWrVp12ML8PBK+vJQ2XohtaRHc7d/1IS81XtoJoBzNeoNarTb50978ei9o0RitSCXJdIpF4ZQlJiQlRyWGx0cT7hucYMO+QbY1YyphAaejVoi2AB6dQs4pMI66b6JyebwTtNHoNEannlBi3rqmm3csnM3SShXtPWM5i9ZNOuo14qibe00HH731EXbRSWoDlHb0xKP848Wn8KYlJWLVIEhyRBJAdIAQf/n0nwdJcBiaaCyaIHHEwONG8T+//mMeGYSUPEmgKKUV3tpr+Z+nn0ToEn4ypPiHdVt4XAckgQUnrQgvD2T9qlrRb6SeubmYy+fFXLT4JOZgKHkH0iQxkkXHOejMlegplSgVC+Ryucmxdbg6vdg2Pppz4KW0caR4QbazqUWqIVV1rGiaRPzNvVv49ANbmSjlKDZqvHlBJ9e+ci2RV/zd3Ru46ekKE9KJLwSkfpRQOyIfs7wcsGvcM+zyuLCIE41KPR2uykULQn7vdSdjreafH9jC1x/aRk3PItUhztcx+RhbH+aUUg8jY1W2GU0SFECXwVvCZB+vnxvwu68+hbnFAl9d9xT/+MhOKlVDQ3WiwiImHSNwu5kzv0R1JCUdKTFWiHC6DM4SuRFO7Z7gPa9ZydknzOa763fwpbufYlfSTSPIkdomxnuidJz+cp0U2FuNiG0HEmYSKmHcYI00+MOLV3P6otn8aNcYf3H7I2xqNJHQoH0TcSWUi+jMB0TKMzIRk9oCzSABO0GY5OihyftfuYirVszjyf1V/uR7j/LgeJ7UelxeI2II6g3mmCq9pYDNIxWq+RJOC8Y7TAoLJeF/rF3AL5+3nPVjNf7q/ie5Y+s4XpXRSiHiMDg62cec/GwG9jVJggKpscSiUQWNqe/m6tMX8q4zl1JP4K9+uJnbnh6lFhRIlcdLSqgTyuko82d3s2OwQlUXiTFohCB1FJznNYu7+a1XL6E3UHzpwSf5yroBxlQ/1kdo3cQlE+QkZnF/Fzv3bWIi10ciRZTkAINljLVzhU+8Zi2Lozzfvnczf/voVrbrkJy2pKIAQ2e9xvyePHsbNQZVBykR0KQQB4irs2qO5n+9ciVn9BT56gOP8i/rdrM76caFgMmcOEiKmBhUmuW7kAL4AjiDxYFt4qSKDoHUU04TzusIuGbtfP7tkx/ljRe/hmuvvRal1KQUwAv9jj2Se473fcqzYarUSZv8bu9NDs0T076m2Wzy6KOP8pWvfIV77rmH+++/f/LecrnMueeeyyWXXMKVV17J/PnziaLoQPJN50i0wyYpT/zJ35P76+vpdwFj2tOIQobOXsSyf/4ztnTmCVRA6AziQLTCKQfKY71v6W2bSUL8WI+RdpjCJCEuHlqJRbdv385N3/ku2mjefOUv0j+7nyRNMNaSpCnamgPtzQHJFN2KENde8GR7gVQ8OjCoOGbOwAQ7//hviW6+h4JJyMeOWDT/3Fvnaz0xV77tV7nmXe9kzpz+g/psqhOjreU+dY85Hfdb03WOz6wj08fGdO2/mTFybK6fsTHTfzM2jq6NI8XxUu8ZGy/fMj3fe57rmmMWIa6UIk1TAIIg4IILLqBQKDxrYaajF+to2jjSwdC+p/0zFc454maT0dFhhoeGGBkZplqpkqZZJLKgsshNq0mjGAIwTqOSCOc7GGiWuH/Uc/3ABP+0aTvf2jrIhioM2JBGEKF1SBgLoVd4FGINEqZYPcbyvOGMnl6KusxgPcHpmKLUOKE6zi8tXcxbVnQzL6kSpDFNrVE2xDiVSX0ox7JZPQyPw6Mjo8QmBglJJGLrzt2cu6SfrpzFImhjUfoAIX6kbfhC8aL7T4BUIVoRt5J4aVGMAH97/0a+s20fCUVcoBFdZ5lpcu3pK5kd1LAuZnFuFqHJ8eToAGPKg5iMNDIZKa589mOckNOW85eeyBUL5zFPR+S8EDhHZA04QXtFREhaT6hVK9RqFeI4xhiDMdkLePvl+Ijr+TPw85jjL+U68mx4IbaFjK8xWdpAEjHcv2OQp3ZvZ3kx5F0rT+IPL1jBknxAd6R41aI5JPUKG8f2U1Eqi0ZOQYtltGEYSyENI0QpUI55fpBfWVriw5ecyvJcwCxtOGdeN1oJjw9spaJSyBUQF6Ilx94kYdSAMnm0yuN9SjEZ5BeXdPDB165lTdkyV2lO7++hv2B5dOdeajokTRs4nRLnSgxXAiqqRD0ymXa2q1FyY1zY7fn4ZWdy7qwOOjWsnt3J6nKZp7dtYa94EhvgA8EBlUaOsdjg8yE+UaBK5Op1Lsg3+eybT+eCeWVmac+yzoA1J/Sxaccwe6qKVId4ZfFKU3PChM5OwXiVYHxClDpWB54/vmAVv7piDt0izC/nuGDpbB7btpWdKiFVNdAp3iuqRAw1EiS0xAoQi8GyQGJ+/9VreOepJ9BhPSfmNWf19xGP1Xl6uEJsAiRbhWlKF/sSTTMf4rXQxIEVOqqj/NG5J/K+s5eyWGnmBZrTFnThfZ3HBwaohxGYzPlZTzRDSZ66DzNyUhxaGzrTCledMoePXryckwPLHK05Y34fuVSxafcwo9aQ6gSxQhxo9iWaBr14E6LEIsZQbu7hsoU5PnvxmZxWLFAyilNP6KEUaTbuH2coUfiwA+U9caDYl0BDl0gRiGKIYowf5dLZRT590Rou6CvRI3DGrNmcMncW+yZGiJuCqzXRPsYYhUoc2mm0jloJnxMIBK8aaJWglCVfE17VU+QPzl7M+85fzoo5HZRyEcuXLmXOnDmTc64976Zr1MKRYjramJq8dCoJPpUor9frrFu3jq9//ev8+Z//OZ/85Ce5++672blzJ0EQcM4553DllVfyuc99jne/+91cdNFFdHV1HaRtrJRCuewEVKKE7v45DNz2E/Jj9Wx99Cmjw8OU5s6ivGIJDS0kAgUsUQqIIrZZ7gE7mVTzxX2/HfEYmYwQB6U0Ck25VOasc87htNPPpFQsZXtjxQES+hAbrZKDasmlKNDaoLxgUQQeehJP84YfUP+XGynhSW0m2LZvVpH/lH38cGALd/7gLm688TuMjIwwZ84cOjo6MMZMOjW895N9emg9p+N+a7rO8Zl1ZPrYmK79NzNGjs31MzaOLY6Xes/YOHY4Xuo9Y+PYXD+dbLwkhHg7Qtxay7nnnksURQDPiHRuYzpO2qNp44XYbr+stH+P45iJiQmGhobYv38/1eoEaZKghJZGtMqOxxqDt5rEC8ZHNNIc+02RB6qO7w6M8l/b93DD1gEeHG2wT3IkeYVTNazX5GKLijVeK0Q3KLsKy4OUV3RGXL5kLpcvmMfp8+Zy/6YdDAQan2tSbO7nLQvn8rYlJ9KXDhElMWINDZUQaCFvI6JyF7Pm9tMbWeb0dfLTzVvZndTA5hEfMpokVCvjrD2pn4INQBKMMUxNrfny6D+FeNU6vp3iRWhozfc2DfN392xkNCriVRYl2RFXeNeaRZzVF+H9BFiPadbpnd1JLUx5fM8Q3nZn+uwCaNt6SVagNM7Dzv1DPDk0SEOHdOTyFCUhTCew1LA2RhNjdOYoSVNHs9mk0WiQJMlkVNgMIX50cMQkk8pkb7IEaa3THE4zJ8jxqpNmc9WZy3jdol66FYTaE3hFF4ZT5vdSp8ITw4MkkiMXK0IHsWgIQjwaYxSzmvt516mz+d0LVjJXwHiFBToVnDq3myjyPLF/DxNNS853kjZTXF6QIMXHQiiGcmOEX1rRzYdeuZrlhZAAhRGh4Dwr+jqZ3d3JA1s2UwkTUi3QzIPqzJw4tolxKb1+jIvnav700jM5pZgjj4BS5FEs78yzsL/M+l1bGUJBCtZFIAUCo9HNGkYHhI0Gr+4J+Njr1nJmbw4TJDia5HEsDPMsmTeLbYMVdlZjRBm0dxRw6HQCFzQxoRBUqpzf0c0fvGo5b1zSTcEJgdEEztMTCSsWzWbf8AgDg0N4bfEmRFKP1RqfNvGAVZZ5PuZPLj6NyxZ302EVWkHkhX6jOG/BbPbtHWPzWIVEJ1ifYOJunBW8reGsR5MyX9f5wDkL+a3Tl9CRegKlCdKELttk9YJuUu14Ysf+dtYHgrCQrfVasBoiUfT4JleddgK/d/5iTlR1AqdQoik4OPWEblROs25gF3UFygi4Bt5pNN3YNEGpBnk/xtuX9/DRC9ewItBESoMCo1JWzummq1xg454xxuoeoxSpTkFZSASjPeLrREmVN8wp8YnXnsLqjswxp5Umj2ZhT46zl83m1IVl3rC8m19aNps3Le1lcW+JrYNNRh2IMaA9mAQjKT3Oc15e8QcXLOZ3zl/CWXPLdAaavDIsW7yYeXPnTu4jZgjxn6+NQ0nxarXKwMAAN998M3/xF3/B5z73Ob75zW+yZcsWrLUsXryYt7/97XzoQx/i/e9/P1dccQXz5s0jn88fRLJPlqnF/opSpApyuYikFrP/xw+R9xoXavIijOzYxwlnn4nvzBMXQkwMYaJIjaYWKJRA5EBa4/nF1PuI7pGp17dO6Sndyvfh0C2ZF6UUxhqcc63v84Nt6JZUylT5FCEjw0NRmNhR2rKbzZ//ErP3jGHFU0MYMdD1zss463//D+pJwq49A2zbtoW77rqT22+/nfHxcebOnUtnZ+fk3BGRbK81Q4hPaxtHiv+uNqZr/82MkWNz/YyNY4vjpd4zNo4djpd6z9g4NtdPJxsvCSGulJo8itn+d+rL65EU8miW6aWycSS2p0btOOcYHx9neHiYwcFBRkdHSZIEpQSrNOJd6yVMo7QhFU/sHVhLE8sTjSI3bxvla49t5f9u28s94w22OE3V5nE6wHpQZC+gWlvwKYFN6NNVzu61XLqwk3csm8WbF/SyNoQuNcHORoVbn97OiDeU0yZvOqGHX169kD43Qc7VsRKigoBCd0jvrAKzevroKHYR2QBthY58QCNNeHD/CDUMygckYtk+UqGvGLFyTomCdhhlX4aEOIAiVR6jE4wyrBts8OkbH2Sn7aaRajAO4xJeXSrxntMXEVUHMZJgXEwUplhXZ1FXL3uGU7aPpyitEQ3ZYWqHsiaLPjWKBGEg8Tyyd5B1O3czhqGjdy6hLUCcvURn+ioGpbK5mKYpjUaDsbGxyei+qVHjLxYzhPgR3EPrSDwa0IhWlIohC3qL9FjI6wRRdZwSjLNo0QRac8q8PvoLAU9s3EiVEs2wk8RmBFDYrLNc1/jt85bw62cuY5ZWGBR4AZpo7chrWDprFieWOtm9bYThRpM0Z/AiCHm0g5MY59rT5vP+C9cwN9RYFOIEYyDxTYwolvV3sGR2H7t3j7JvzOOiMiJNrGkSxFVmNUe5csU8/vDi01ieC7BxFVEOBRhRpD5lXk+JNYvmsGNgJ4MjVazuIPU5UlForehIxrliSZEPXLyGU/ryhJLJI4AiIMR4w9xywJoFXVSrFTbvGsblyjhSrElRorC1lFfPmcXH/58VnD+3gPEObRVapYgkiBZKYcTZJ80mqgkbdwxQtZbAFnAuxOmQThVzWinhI79wBpfP66ALEOPQTqG9QQF5qzht+RysNNm2Z5CainA6SyApYgnrTc4qeP7ogqW87eQFlEgx1uLFoaxCSUrZwNoT+ukKDJu27aEuAU0UYh0mUqhGg5OM8FvnruDa0+cxT3skjfGBJlWC1oJCWDG3i5O6InZu38vgWBPCcivZbx3tUma7Ku8960Ted8FKTgg0ShK09ugWIRmlipP7SiyZVWT33l3srDbxugvxIQqPTqrMlZRfW3YCf/qqM1hcCBDToGlSQKOVxypHj0lYVi6ythyyojNPuZjj5g3beHDvOHHUCUZjGlW6auOc0xHx3nOX8P5XLuP82WW6W3VxmU8P5R2BDUhdirX2IAf7dN2kHSmmm42pxLVSWUR4rVbjxz/+MZ/97Gf55Cc/yZe+9CUee+yxSV3wSy+9lPe85z18/OMf54orrmDp0qUUCoVnRIPDwaeUBEFEoZUG5SEwdC2Yz8CNdxHVYhppTIcYzFCdShzT84q1DBUNJoacBDSsohYqrIdiAu4o5CF5vvdM0uDt6xVok+3hlNJoYzNZlZYDIHUOrTXmMIk/s++EjAx3GrxWKBRWIEg8UQpPffHfyd1+H7rRIK8tiKZ28oms+Mh7mbVmKZde+hZe+9pXo43ioYceYv/+/dxxxx1cf/317Nu3j5UrV1IsFrHWHnZvPh33W9N1js+sI9PHxnTtv5kxcmyun7FxbHG81HvGxrHD8VLvGRvH5vrpZONnXXPMNMSdc5PGp75MHa4w01Hn6GjYODQZZqaX6sjifkwWvSQHKF9RHo+j6RzVWoOxsVEa1RrKC1oyAkkrixNF7F2mmasEI4IXiFXAmA3YXInZMDDIY/uGWTfeYMwU8EGRWAJQuZYMByiJsXiKzSZRXKdcUizoy3FKf5nz5vQyXznKaQPtmuRFoRLFSGcXX9i4mRu3jxA2At42fz5vXdFHj6lgAkdHsUxnvouokEfCFCGF1GDJAeCNAxKGCLj2W/fy/cEGiSqhpYA4zwnJMB963cm8ddUsOnCEYkAUXmdRpQhopNWWZPraWfjUwVAg+sCfD38u4Wf33zP+Lh7BI8rgURhPSyc0BWMRyaLRvHegU0QZnhzTfPA7P+WH456Kt2jx+FzKCjfGX7/pXObXq5BMoMUTKqHpaxgs3uV52szmrx/cxE/GmzSCArFqoEJBxx5xIR6DCSzi4ywqWFlyiTDbJZx3QhcXLu5labdQduN01hICbWmoFKccRnsMHpd4tCpSKvTQ0VmkVLAYGwCqpVna1jN1GATV0hJ+trk0oyF+ZPDOoVtH+72CRNOS2kkJfEqgPc6D0iHWGQSDaFACqYLH6k2+8sBWntjbJIknKESWVbM6uPTUxazuioiEVoyxoCUGHKIUjpYUidFsTz3/ev9GnhyaoD7RJBeVmdsV8ubTFnB2X5EyirgVsRh6jyA4q/DiMQqa3jCQwrce3sW9e/YzUR+hoIT55TKXnrGcU2d30eUhpzyQkc+IIsWSaI14hdcwIMIPn9rNXet3M1b1+FxER9Hw6mWzeMvyfso4FBYDmNbEFp9Nf6NjYkkZ0QVu2jTC9x/dzoRr4JMKvcVOXrF4EZcs72WhTrE4nLJoEYw0QGmc5BCjEQ914M49Y3z7kU2MjDRoJJpyRydr54a89bRFnBQqolgQFGIF01rHEwWxT7FaUXWwYTjma+ufZtf4fnwcUAy7WTOnxJWnnMCyokb7Js5o8BrT+npAaTSCF0/NBDxeifnWT7eweXiCidoYhVzAiT3d/NI5q1lV1JRTARFcoHCkKFK0sqRolAewbGs4vnL/0zy2v0o9qWPDJotmzeGykxdzRndEUUEiCUYprKQoycaZRoN4UgNbPfzX+m2s21aj0UgwqkF/h+WNpyznwv4OuiUby2nkSZXDIlifuXkQBU2FCwz7jOIf123lCz96nOFiP4ila3gPr53bwVtPX8wrl82h23py+MzB61QrZ7MgkulCa3VAA9l7PykBcaTz73jQY3yxNqY63w+9BphsZ4CJiQkefvhhbrjhBm699VbWr18/eW+5XOaCCy7goosu4h3veAf9/f1orSdPIrUlOrTWB/1/6t5wMmeKAnGCMoa6JOQSYfAfbmD/x/+BPge2Xkdj2dIdsOgj70WufC0VHeJtSE1BHEEQx5Sdom5Ua+8kKJEs8lyD0wqPBhRGHM/mCn6xY6Q9Pn3a0kcXsu9RpbPkmEaR+owwV2TruvYQOkEpaFhFo0XqB4kjUkK+2qBx2wM8/sG/YPVEHWsCbANGSxGzPvNb9PzqG7K9ktI4q8A5nnrqKb7whS9www03sHPnTrTW5PN5rr76at7znvewZMkSgiCYDMI43Hh4ttOdLxQzGuLHDlPnVzvo4efVfy+ljenaf9N1jEw3G9O1bY8XG0eK46XeMzaOHY6Xes/YePmW6fne81zXHDNC/EgKMx0n7dGwcag+o4jgJAXJ6AYkS/jkxZO4hEajwkRllIl6QpwoAp29rEmaEFhD6kC8QiuDU4qG9TgdUPGWPVXHEyMNHhgY4cmJOntVSB2FVz6T3NAReAOuRWy5BrmkTnegWVXOcUZ/J8v6O5mXc3RLjYKPsUpAaRI0OhWM5NiZ7+MP7riTzfUqlyxYwO+uXsGKnCdXNNhCjjCXR5El45RJpp8pkd4eSWvUdcC9E8KHv/NjfjomJEEXiKGU1pkvVT5y6VlcfEKJLoGceFIteG2wYtBeEOVx2qOVyUhaPzWWHGjx5JkcxVEixL3LXjS0JhMEUqjUYxAQjdOKFCFQVVIVsbmu+eTNT3LDnjrjyoJRhM0KXTbhA2fM4dqzV9CoTBBPTFCbmEA7D/iMVBehKTkeqgX81brNPNnM0chrtIop1lJmFfoYrNWJxdEMQSQCMv13LQlRc4T5QZ2Te0POXzKH00pFerWgfIxRCbgm2gsag1IBTrKIvFw+olTuoFQqEoVh5rBRWfZHpTISUB9CHxzqBJohxI/svjaxp7WeTJYLkh2Zb68fWk/Oo3byNt8meLxQbcQ4pdDGkAsMlowACoymlQmgFZnYng0ZCe8QUgGnFPUkxaUpWhSFKCA0CiWCViojWMgIG8icd+3yeDKJoESESuJJ0gRRilwY0KE1VmX3qVa5hRYB1qqLo5VITgQB6onDpw6vIAwCIquxItlzpp4YaTeVarWHFxIniNXUU0/sHKlLiIKQfBBgFVgR9JRumlyi2mLuZE60WIS6F5rNzD0RBQF5qzEqW93a9VFqapu0+tN7VGs3OhL1AAAgAElEQVSNaDihkiQ4gdAYCqHFAoEStPjJvp7aJ1kbZe3hFSSiiJOUNIkJjCUKA4wCjWrVRU22gYhH0yLrVdY3qUAs0Eg9jSTFGk3JavJaYVskSTZ+Jx+T5aFQtFTQW/0D2TjzHq0UURgQaU3IgfVV1MHbCQXgBYkdI9py6+AYv//1exgMi+QVrO0IeOdpi3jlgl7mF0KitsKFeLKkzs+YMC8rsuxI8fO2kabpJAk6lTSbSoI/9dRT3Hnnndx000088MADjIyMoJQil8uxatUq3v72t3PhhReyatUqisUiwCTpfeQkXDaGEYVXmliB8p5oV4Un3vtxzO330SkpRmnGxTF0wmxWf+7DjL1iFSP5EBIhQIHxpDicCrBeCLzHiMcrhdOQqszpo0ShcGjlD1+aozxG2oQ3ZOtFqqfsUVqfGYHIeVKtqQQaryCXCoHy6LRO7pEtPPq+T7JoxyjWJ+TFMogjvfyVrP7L30f1d4LL1tamFQLxiPMkScLGjRv58pe/zDe/+U22b9+OiDBv3jx++Zd/mauuuoo1a9ZMRoy3pVSmviIcTVJ1hhA/dmjP5zYZPkOIH/82jhTT0cZ0bdvjxcaR4nip94yNY4fjpd4zNl6+ZXq+98wQ4i+hjUOb1gONVsLLnBeIHXEcM16tMF4bI04aWASDBW/Q3iOSgoFYCbHWiA3waBLvGY2brNs1zLrhlEfGYVscUrUlvMpoKqMV4ixesqP4hiY51aCLOovzwhn9Paye1cO8zg4KgSJ0MUFSpYjD+jQj8JXF6UyqIcWwvgl/e+uPOOXkVfzGhaexNhdQxCHWIyisPljm5JmNBN4JKY5xo7hp834+8b1H2Rh0g1KEcZVQJSwMhQ+//ixeP69Il5vABx6vixgXomNFEnqq1pFri02IoqXO2SLqMiKnXZTn0/XPTYiDeAHlEJ2SKoP3NtPuTUGihFTFKCxPVTWfv+dpvvbEduqmgLFFUp9Fa1+1vI/ff80q+kOdRbqmKXGjwcToGNXqBHESo41GiBjVZW7bO8YXH9nBrlwXSgLmVie4+jVnsm9wOxu27+DJCUUtDImDICNWVUiu4SjFCTqJKRQNi2cbLljYxzldncx3jpJIRlSplNRM4E2VVOdJVAmPkA8tPbkCfaUurA5RJpPz8ApMmzWj3bYzhPiLIcTbL63tyLy2I81aOyk3NTWRXfs+mJJnQOuMEG+9BGulMLQI23ZfZSHIHCBfDxCdrnUAw4tkkdMt0npqnQ6uX5tg15M6tx5IfUZ4e8BoTcQznVEH1aNlOytL65lKIV6y9atVTg0ckmP3MG05lbyV1smG7AMlYLVG+Xa9nqtMWXLPtsPCaJ2tL+oAbQ2HL0/7nlaj0WzdJy5zAVitMUpoOz2yftEHtVQmHZE5FVXrO0PJAScJHCCnDp5/HqWyfpbWj5NWH3sQrTBtx8AhY/ag53CADD+obmSR4NKyr8me91z90vSwbqzKh759P49VHEt6ivzqySdw2aLZ9EaaWqCJlFBU5hn9cWjbvpzIsiPFz9tGmzhTKkuCbowhjmP27dvHzTffzLe//W0efPBB9uzZM7kOLV68mDe96U2cd955nH/++fT29h7k+G+TqYdL1Pg8CpfNB5/pgTdVtlcyY02qDzzKE3/wGeZvGUJVa8RWU8vnGHrFKhZ/9vcY6e8htHmCBGINEyGZA10kk/iRzNmshEx6KjUYr2hah7OH3wYf9THSVjCDg/TBobVHEVAeLIpqAHUNpVRRjh1CTHHXfrZ+6G/o+tHjlNKUSIEknq2r57Lyix8hf9oKlDKIUiQmWwe1c9mK3+pjpRSPPPII//Ef/8E3vvENtm/fDsD8+fN5wxvewG/+5m+yatWqybw/U3E0x+bxMsen4zqSpulB9tpOjqOJ6bgeTtf+m45jZDramK5te7zYOFIcL/WesXHscLzUe8bGy7dMz/eeGUL8JbTRJkYmiSWBNE6pN5sM1SeoNCqk9SZhCkYsog0NBcg4eV3HK4OYPIkPceRp6iIDKTy6fz/r9o/zwJBmsFEjNoKzkCoNGHABgcohicpeJtMGBd1gcXfIyd05TptVZG1/iZyfwJoE6z3KAc5jUFhlMlLIK7wyOHSWDKpU4obHNlJvwtUXn0e/DQiNxytHiuDR5JT9mdHYIpAmIJJig5QxH/Cv6/by53c/yagtIlqRmhQtjtXi+cgFK7lsVQ9a1bAYjOTwGGINTnnsZKx29oKZxS8rtGSJtQ4KvjzC/jv07yLZC6ZTDkWKFQUS0JDsGLaVJhHCExMBH79jAzfsGqZmC2gdIj6mkDZ4bafhs1eey0m5ANOSf9FKTZJ29UaV8YkJxsbHqccJWoc0gxJffnI//7otZiws0VXdy59duJLTeoT9vsaGXQk3bd7CY82EMVUA3YG4AHREqAJsowm+Qt40WFkOuGRuDxfOKjI/TNCmQZNM8zfRWUtGzhA4BcqQBopydxddpTJFG2YOByMHeRhmCPEXbrtNaCdJgnOOb33rW5TLZd74xjdOrh/to+yHI8Qnn4MQu5YevNbo1udGt2dG+5+pdO4B4hMFzrfIX6Wy+6YQu4eS48+oP+B8RsROLaNRzyRRDm0r78FLK5KtZdf7Q0hfntupNbVJBJkk560xB9aCSaL/0HsPIcSdz0h9pUAdIMLbZXk2tCP9J0lxpUgciFIY3bJN243QLrBHyTMJ8XZZvBxY46Y6Gw9HOk4lxCdJcVGTzgKVqaC0nAuHd2odKMMzCfF2G4LKTjOIYM3PjjxMgZ0Nx1997x4eH2/w+rPX8oaT+lluIJAUbIJHgbZoHUzW7Xggy44UP28baZrivScMQwYHB7n11lu55ZZbuO222yYjiAH6+/u55JJLuPjii7n88sspl8uTzrv2HPXe473HWpvN/ReSkyJbSEAUqVWkZAlrRRyS1Nn3tdvY9LufZVFDYaOAWuIYKVhKb3413R/8dQbndmPrFkNIYgzWg1eC0x5nMhePFgicJnRgPDQsuGcp6rEYIyIHVuH26uwBr1tOKEVLxilLgpxDCOOY7qFxdnz47+DW++iu1Mmj8cYwkFf0fO636f2VX4AoIkgNicnkt8KW4wsOyBhO7a9t27Zx3XXX8eUvf5nR0VFEhO7ubt7ylrdw9dVXc/bZZ0/26dR7jwaOlzk+HdeRJEnYvHkzd911F1dddRXWWsIwPKo2puN6OF37bzqOkeloY7q27fFi40hxvNR7xsaxw/FS7xkbL98yPd97Zgjxl9BGmxRxzlGv16lUqsS1mKQZE/sGYhzOuCyZZSwEPiDnQ8QkJKZJLJZG2MHWWPPwaI31w1Ue3zfGcDWl7gPquTIYnYXsegfeYVBEiSdoxuTxLO6ANbO7OG32LBYXA3pCh6WOVkmWRM15rGtixaGMxXlD7BXGhihlyeUiOsolokKBitH84JFHuWjNGrqTABsKLkgQ8aAMCZqcMj+bEEeyl/BYCE2mKzvk4Z/ueZrrHt7NnkI5i9aKUwri6EurvP+CNfziqtnMCj0BMRqFECFoNK4VaSW0Dz1rNFp0ps18FAnxFEfSsmoAJQ4lKc47nMrTQLF+d51P/nATdw/to5rPgSkjooma+zm/V/FXl72KZXlLKD4jAVEYc4BAU0ohCHGSMFIbo1odIxmuM27n84UH9vDNSgUXxvx2d8S7l3ZTC8dIw36qaY5H9le5bWCQu4bGGFV5vA+zN30TEngPaRaBHOo6/YUG5/fneMOcHpYXCoSpJ0orFCQm0SGxsjgd4EQQHMYK5c4cnaUyhaiEtUHLSXCAMH0+bXg0cDwR4u1ILq011WqVa665hoULF/KZz3wGONCuh+oke+8n7bYuRFqftWndjHg9XJmmEuKSRWa3I8YlkxQ5RPnieRHibUY6K9MB0vm5CHHxbeK9NQdQmUTMQc9/HvILLda39aQDDHp7jLZkUdRh2PVnkvQ+u2bK16PiMG1wGGL9cMViylzx4rFGt8Rjstpp0QeT3chhn9Wec1PL8UyHVHslbEXYtyUaWr+rlubLc45XOQwh7rMo26lF089BiMfATRu3kqQJpy45idmhIRLBuNaJHiV4lRGrWk2VcHn5k2VHip+3jYGBAe6//35uv/12brrpJrZu3UocxyilKJfLXHjhhbz1rW/lkksuobu7myiKJr+rpp5QmDpWp/7/iAnUFiHutMIp1Ur6LdRIMDjCsTrbPvXP1P75u5TiBKU0HU1hX+BJrrqI/j/8DYa6u7G+iE8VEVlSysQIqfaI8lmEdmvJa61Uz7JOHv0xImQSUYrMr9yOFm8T4k6DU6BEE8WeLEY7oWNwnH0f/Huqt95NvygCn+BSz3hnCXv1G1jyx+/GlyJQFq80CWTSTC2nYFumqo00TScdF/V6nb179/KNb3yD6667jt27d5MkCR0dHVxxxRVcc801nHXWWeRyuaM6No+XOT4d15EkSbj33nv5xCc+wVe/+lU6OztnJFOOcxtHiuloY7q27fFi40hxvNR7xsaxw/FS7xkbL98yPd97nusae0QWjwAiWdRj0JJxaOMFRQ09T3vtH+Cg6KX236aSd1MbJo5jgiA4iNSb+vnUv7dxOJJn6ktimqbEcUylUqFWq5EkCWnqcAQobbASYETAexIXo22ISgWHMO46GKDIk5Uqdw/s4tGJGgP1lIozOBWio0KL8KmB1ygXoVNNJIZOV2VBXlg9v8iqOR2sLebosB5jahhpEoojcIIWi8PiMWACvGvgvAYbEgZ5yuUyHcUCudBi2okVRfG6Navp0QHaColxOOUJPeAVYp97w60QjE6xkcVjQSl6jfDuVyxiPBX+6cndjOpOUqeom5AdgeFP79vMxuEJ3nvWSSwvR1hi8E2MD0AsCocyoFVG7mU57g7ILWR2XzyMV+CF/5+9N4+zqyrzvb9rrT2cqU5VqhIyQxJCDBBmxCAQaEFxABW8qN0oijbStv3S2r63r96e1Kbt1+5W2sbhardTi9JXxUZxioCCDIIgU4AgQ8hMSCqp+Qx777We94999qlTlakSUlCJ5/f5JGeos9ezpr32Wr/1rN/jtJAohVIWD4sWww6n+NHvdvDle5/hgcjggjIKh3MxQRSzYlon/+vso1hY0GkQTqXxtde8N5RSTQ1phSIX5ugKoKMjD/kqwwOOty6dwZO/6+XBkQobqz4jqkAgVbx6TOgsZ3Ybju+ayfkjHfziuV7u2d5Lr8pjkwLOFbG+B76lTsBQHTY9W+f+jZtZ3lPmD+bP5qigC3REIha0oG0d31mUUSROsaN/iIHhCp3hMJ3lTgqFAsaYne6P1vtkT/dMG4zRaDXGjPHi2xOpNH5sAhqEuDTIbNUgdPeSAaVGj/AraUiTqF2OeXtMpul93sxNqu0/wSZP7alRfe/xZPau9KT3BMnkYtRoWmofypNJL6mUuN5rPTazrXayoRr5AVA60+CXsb/YiWfffRvsbXOiNTHVknWd7pDQkp29YryVbNNF653LuTtoYPmieRQ8Q14iNBFOKZzxQPmpBj0GT6kxm6kiMuYZno2Vrc/29piSonX+k9UPjPbH1jocGhpi7dq13HTTTfz0pz/l8ccfZ2RkBIDOzk5OOeUULr74YpYvX84xxxxDuVzeyV7rPG78XCn7vD9tI9AM5KxICWPRYLLIFcUcR7z/D1n9zEZGfvEgM+qC7yydVnj+htvox2PmBy+nb0ZA7HtUcSRC4+SJI3BpFAYH1A3EBoJklJh+UZANbaTDm8ruIxndwDTWEmqFSupM2zLA8/96PfHPf81sZUhUTOJDn28YPnURJ73/EuKcwU8MGEW9Mav3GppHSu/cFr7vN98Xi0UWLlzIhz/8YV73utdx0003cf311/PYY4/x9a9/nZUrV3LGGWfwZ3/2Z5xyyinkcmmA9PHPpUzya7Lm+G1MHNlmR4b2ONlGG2200UYbbbSxa0waIQ7pJKxarXL11VfzoQ99iJ6ensk0N2YCmOnytpLxmTxBtkDMFm3ZAjIjp7Kjv+MX3OMJ81bCKrNVqVSoVquMjIxQr9eJ47hlcSj4pkYU1VG+hzgNcYgxeYYlz/Yw5JmBQe7dvI3Htm9m48AIw2HIsORAGwgDSBwqijGexmmPnBM66kPMMXBsd4llM2dw1GEFegqWvKqTqw/hWwcuSQNHKQGTEjI6cSincWIwuS7KHSXyxQK5QgFDI/CbcyAWpTSh1hRMiLKC8yyRcalvlSiU0xjZWYpgV1Ba4RASUi8pI9Dla/7kjEV4nvDv961nR2k6iY2gVGBgZIRvP7yRjc8NcPmZSzl7fpFObREbgfiIVYh1KD91mE/dvtIAWig1TiRi/6Gsxos1LhCsibHOMiwBG63H5+9YzY+e2sHzEpCEPsp6KFujaAY5tezzN2efzPKeEImEWhCnC3zxSdeUjSB4WR9reLAZDMaEBJ0FgqLltJnC/9N9NJ+5+V6eG6myKexgPhHaJXg6wrcJHeKYVc5xwrQjeHQw4u5N2/jNxl7WK6HqfHybEJEgxqdKkd9FwnPrqvx60xqOnVFkxeI5HN2do6u6g06qhL4ldiAuwKeMSyyDtWGGBocoFot0dnZSLBbHLLDHE+Ot5G4bY5GNDdl41frd3q4bC2koTdM4hz8BMpwGGdNwB1eZJ2GTltxXUisj4VpcMNXe7z6lWvpL017GINPyec+kuLQwz6PbYS2bM6SkP2p3/qA754ksnTH5GE1V7SJPu2qbTJF7NChqdv3YX+30vYyVSdn3gUxaxmRpXr/HOA9N7BxoUDU3FVrH+j2nZUTo0QYR0k1QNJoI0RUiDJDDd15KSo6rzoxgzZ7Z3/zmN5k/fz4rVqzYaWP79xmt9RDH8ZiNymw+s23bNn74wx9y00038cADD7B169YmqXnUUUdx4YUXcs4553D66adTLpd3OfcZ/353n/d7vFcQq1TuzDTIcIBAdGNzyqHmT2fh/76S1Vs/hbp/PYkkiFF0VmNq//c2ttmA6R98J72zS1R9g9UgovCdJm81XjJ6NsMpOSBzg33BeA3xbOPOA2xkU+9x5YiSOnP6I9b9yzeIb7yNmU6hjSXRMKiE4SVzOOHjf44/dwZWqdT1HIUnjUNx0phVKL3bW3R8ux577LEsXbqUt73tbfzXf/0XX/rSl3juuef4/ve/z69+9SvOPPNM/vRP/5QVK1Y09cizNIwxY+bbbby02NM920YbbbTRRhtttNFGikmTTLHWIiIMDw+zbNkybr31Vo488simFmErDsSiVkSaAeicc8RxjOelHrjr16/n1ltv5amnnuKpp55qekN5nkdPTw/Lli3j5S9/OSeeeCLTpk1rpgejE8ndHTe0Ng2MWa1WGRgYIIoi4jhuXpNdl3p+OsSroj2I4wC8bgZskacGHPc8389vtw+xplpjhAh8BYmHin0CLw9onK1jTYIyjiCuMJ+IZbN6OGFmF8dN72BeAEFSQWOJxeI0iNYYKwTWEliLEodDEE9jwhyFUpl8sYswl2uSEVorlDgMDf1JEUSnGrcqAXAknhArhScKz6nUG9Swd8JGUnIoURaHxhMDAnWVoCViyOW4/vHtfPKXq+jLhbjIERbKRJFFbI0eqXDxyw7jXactYVEpJBSNr9PqUuLQyjaOQqf65xn1MxH/0r0d1bUWrE35Q2sSnrOaWzf08m+3/47fRZrYD8EYvGoNpTW5aJhz53j8zfnLOSYMCesgIQz5FUIMIR6Zd6jIqEdvxsU55XBiMWKomCQ9am197tywnX+48ee8/VVncWYAoexAFFilEdH4icJLPKwxjOR8Ntg6v9k8zN1PbuHZirAt7KAe5NNyiUZZEAeBJ3TYIY7t8nn1kTM5ucfnMBcRWlDOgC5iXYSnKzgZ9WT2fZ9yuUy5XCYIgp08FIHmhtOBwIE8Un2g8EJtO+eo1+tceumlLFq0iH/+538eMwbtnfzLSFdIO9REtoEaxHUL+ZvayPSs96U8Gck0+q9BkzD+7htfjqbY0RhCfCwao/AEcpDJo8hORLI0beudCOGd69Y1Of3R9Hd+ryc0sozK2zQ3VXf6jaI1x+P49zHl2BNSG7uQbdkpmYn0D7frPZWWdppYuzis2JTys6llZxKsGkIRY6SISQppml5rOUY3tLMNo3e+852cd955vOtd72qmv6vgohPBoXD8tPW6VhmlbAzu7e3l9ttvZ+XKldx000309vY2N/Dnzp3La17zGi6++GLOPPNMisUiMCqn0eoAsK9yC/tdDqBO6t1sBJwhDYrpBOsELYqa59IH8b3PsPo9f8thzz6PKxqiJKYQG/o9n9rrX84RH7qU+qI5DIceUeARW0UugWLs4Ykj1lD3RknpA1GOCf2+cWrD6dEhRlmHL4oQA0mMryIK657n8b/6N4r3PEGnc3ieIrIJFU8xvGA6p3z5k+hlhyPGA21SiRmlR4dzlY3tuyfEM2Te3a3OHiJCrVbjq1/9Kv/5n//JqlWrsNaSz+dZsWIF73//+znvvPMIgmDMs2qiz/l9fY4fzEd1X6iNfYWIcOeddzYlU7J1zYG2MdXGw6naflO1j0w1G1O1bg8VG/uKQ6XcbRuTh0Ol3G0bB2+eJnrN3n4zaR7i44/OvlhElXMOay0jIyPcddddfO1rX+Pee+9l+/btxHHczFPrBF5EmDFjBl1dXfzRH/0Rl156KUcccQQwSmq3Xici1Ot1KpUKIyMj1Go14jhuLhqzBcH4Y97K+PSbDoZ1yPqhCqu3D3DfpjWsiRVbxSdWOaCE1gmSpKSqDg1JXCWI63QRM00nzO/pZNmceZzeEdATagrK4ckAfhSjReGcwqgQTwziEiyOGA+8gFB7dBXylEp5TCFEfIOIwVM0fBct4lzTa0mUAWXIwrShBZuK8RImqXd4YgSrIaDh/bTHplYgqTd5Ko8giHIQR2hPUdJw0dIZlIsn8H9ue5Qn65aBOMGKBi9kqyR8c83z3Luhn4uOWcT5x3Qzp6NAXhQlBWLBmNHAdaIm5gs5EcQGRjQMxI571w7wnQfXcefmPgb8MtYPQBLExmiJmJ7EvPmY2Vx1xhKOCAxGxcQemERTTEK0lqarWNM7vNWYA610w8MrTm9U8cglcNrMHt5y+pHkZYC5hQVUKjWGJSIWhVYaaxRWOZRKKMRVjnaORbMCzpmzlDufr3Prmj7WDtfpV4a6iRHfoFDUE0tdB9w9EPPo/Wt5WTFgxeGzOG12DzOCOgUZxtNZ/xjNbb1ep7e3l4GBAUqlEqVSiUKhMMbz+UDrV7YxHtLYbMowwV6vWq/b/73RUTJaGp9oUq4Tvf/2NHTsdVhhdEugaVPt/LfMCXlCeVKj12avre/VhPMlY15VRny3VHerQ/8e05uIwXE/H5uHzMaufNt3fe2esjDhdlEOzzm004hSODEoKeGrpLHZtvuERGSM92l20qvt9TiK1hNrfX193HffffzkJz/hJz/5Cb29vQwNDTVJ8BUrVvCmN72JE044gfnz5zclMIAxARQzvNj17I8eZEA5SBr7e0alwWF98bBa45+4mKVf+Bse/eA/EK5/nm4d4gUwLbFsXXkPj2xYz7I//2Pmn3ESW8OY4WJI5KWjQ+DSU3INP/EXr3CNx342HjkFIo7AaHQsEMXkYoe9/1Ee+uQXmb92B7nYgrbURBgxEL/scE78xw9jls5FjEGMoa7TMcU0NuzFpGmnwXP3jtbTSa0olUpceeWVXHLJJaxcuZLPfe5zrFq1ipUrV3LnnXdy0kkn8cEPfpAVK1ZMCunaRhtttNFGG2200UYbk4lJJcRbJUmSJDmg2oK70lWFlJxbs2YNV111FQ8++CD9/f0EQUBnZydHHnkkr3jFK+ju7gZS7fC1a9fyy1/+kqGhIZ599ln+/u//nhtvvJE//uM/5h3veAcdHR0NexDZhJGRISqDg0TVGnVnsdIIsqg8XCOYWeahIyicNsRewAiGrUM1Hnk+4v7Nvayp19loHdWggAt8sIJG0PEw4jSiA4xYjIzQkbccNTvHST1dvKK7zCKj6BQB7VAuwUkNpS0iEVobfOUjcR1jPVAO7Rm8Yol8ZwdeLsQPfLRWaAvGZatPR3rmNklXUQIiOtUObyxEFYJoSJTCE422aZ1bD2IFwYT5NEE5DRqsTtBSx1eCVTkiURxmHG+b28Wc80/mH37zBHcPWKQieGgS5TFkfB6J86y9bxO/fPwRzjpqHucefxRHFHNM9zxCJw1SzJGKs5jUX1UyJ2zBNRpJS+rdLiqtAZ0dMwacKJxWJEDkhN5qxJ3rN3PjE+u5e5vQG+XRwSy0OFy9Ar6gJGZBSfGeE4/lD4+eyWytUdZhPUddR4R+iF/1UQYI7J5Xq42Fs9KO0DXqXCs6POFNJx/HprXr6ekuUOpZQHFwmJGhPupJlZqxxJ6gnCJwPqgArWCWslw4M8cZMxfx261D3LWhj4d2DDOIR0ULhB4Sa2JdZkesuXfY8cQTvdyy7jleMdPn3EU9zFRCHtO4t0GJRev0Na7H9EcxI0MVwkJI97QucrkQmpIwo57HafWPdpjfZ3Krlcwa//ngIv6khYBNcbDkfPIxKQex9tG6vCTtooHAgagE5xsQj8AqwAfl4xpkuBpH3rXeA+NPnByIDTZpjEFKKcSl3rSjRH8qIORsenIjSZJ0I7ChkRyGIZ4xLa7FY7cGGvRiQ8aHcd9PJG9jN+6b1+/iu+wk3rp167juuuu46667WLVqFUNDQ3ieR6lU4qyzzhqjC555g4+Xa9qdNviLhaZUSsOsIiV2bYMQd1qhHWibxizJv/JoXvavf8lT//Ma4qe2kIsStBIOc4r845t45OovMv+S1zLnotcgs6G/EFILBGsVxjXiAyhBibTsybTupElz42tiGLMlB9IQSWrE6M26SSaglPUabR352NI5WGfVD1cy9I0fsGhjH7k4wreWWAl1J9hlC1jyt3+GecVSbOijY4X1FLGC0I1uBIpip763xw5DmRIAACAASURBVHof169a2z0MQ2bOnMlll13Gueeey09+8hO+9rWv8fDDD3PHHXfwyCOPcMopp/DBD36QM844g66urokbbmPS0Dp+HlzziDbaaKONNtpoo40XD5MmmZIlOzQ0xLJly7j55ptZsmTJATkK2SqPkgWh8zyPOI758Y9/zAc+8AGee+45jDEsW7aMyy+/nNe85jUsWLBgjDcUpMeDh4aGuP/++/nOd77DN77xDay15HI5Xvva1/LZz36WOTNnMTRUYf3ANqJohC6lSUaquHxI5HsQCflEU8sJ1gpKDEr7RDrH+lrCA9uG+fXWIZ4arDOYOCKnSSRAvAKoEGsBHaOIUKpOaCt0uRoLOwJOm9vDSTM7ODzv0SlxSvZa0tW8UTiXSVeoNJikE5wTfM+nWChQKBQoFIoEuTCdGAMqO2IurUu/7MNYL9PMp7FR8Sk5nl3bXNyl30/YG3SMZ+SovIKgcNLwaoojYuB34vGfD6/n+t+sZVuSIwmK4GmsjUFbDBH5uM5sBcvnTOechd0sP3I28woKTxyesjgMRkwmUILVlkjFCIpAfLxEEwOJFjydLlMtipqDPjSrNg/yq8fW8JvNAzxcqVNXOSIdgvLTvusi8p5DoirHzenmmhVHcnx3B8YJOa8RNFFntDDpZkCz8lWzTzfvgTF3ZFbRkMlgCClBoCQl8LN0kjgN4rpjoI9arZYedVcGJQqbgKcVvnJYHBXt0x+UeHh7jbvWPs+jW/rZbAKGvBB0gFN+gzFyaIkIKgMsLOY5Y1YP587pZnZ3AeIhCrpGTmr4SYxJNIocVjSJD0olFAsB06Z1EhbyYDzAR4uHlxHi4wmjCYwDh5JkSqvXa71e5/LLL2fhwoVcffXVY2IYtJ5S2UMuGn1ngm6Brddl75o29r0sshvaaO/yJHv+fuL2xyS2U1rSYmO8lQkdt9rFdxPLbUZM7KZ/jyMA92h8LwZ3W7djEkkT2t+a3r92asmBjLW9qy47nhDOPl966aW86lWv4r3vfe+YU2j7k6fENjZFEUTSOBvGSz3Rt27fwS9+8UvuvvvXbFi7jh07dhAnCZ4xlDo6OHz+4Ry77Fhe//rXM2/+PLQHRptmFXsm1Uof7/m/V2/6FvLKWtssU/Y+czDIPm/cuJEf/OAHrFy5kl//+tcMDg42rz/88MO57LLLOP/88znhhBOap3am4jHasRePfTv+3lACJOlcJw6Aag1775Os+cQX8O55nGkWEpMQa4WYHFsDhXnlMhb/yduonLqE/lxAYjWhBIgFFTgcLo2XkqTEePqsgiyqQmt8gvFbMaNCVdkZEoVtNLZYwdMmlURRBnFC5An4mrgxl8tFMdMSUKue4plrv448sJqO4Tp5ZdCJI3SaAa3Yftx8TvqX/4l/ymJq2hH4IZ4yjQDijf7VdMZg3x8DrU2wi/bLNk6stVQqFa677jquu+467rvvPgCCIOCVr3wl73vf+7jgggvI5XLNdFolDFtPjLUlUyYHIsIdd9wxRjLlQNuciuPIVG2/qdpHppqNqVq3h4qNfcWhUu62jcnDoVLuto2DN08TvWZvvzloCfEkSZokkdaaKIr43Oc+x9VXX83AwACHH344f/3Xf81FF11EZ2dn0/NpV55l9Xq9Sa6vXbuWj3zkI6xcuZJ6vc5pp53GdV//KodNn8aGvu3UY8hHHqEKqPvCMBVCbcnFMOznqGuf7XXLg1sG+fWWKo8OwnYXUEOhlcU4QPvYwBCTgItSTfD6CNNcxMLuMqcc1sOJM3qYXy5QjIYouxp5YnAJsYJYG1AaIw7N2KBjhUKBjo4O8vk8QRA0F9Gt9by/A+SLQURmaUWS4ADjPKoi3PNcjW889DQ/fnYdI0Eea/L4QECVqhWcCvC0T2gtZZVwVEfAyw+fwbJZHRzdUaA79CnlQ/K+BhyiXUoJiQZRxDEMRo7t9TobRiqs7h/h/g29PLSxjxFKjNiAqrJILgbnQeKlpJuO6aDCUl3n8lOO5o3HzGe6D1pc85j/+OCs+1K3E6mv8Z+zBWtfXx+VSgXrBJcrpHrkcQ1fLChFzRni/DSGTImN/VV+s3ETd23azIaqoxJ0EasSIgEaizYRia4QJgnzYs3Jh+U4f0k3RxaFsjg8MSiX6pcapYiVw2iNOAsIXj6g1Fmks9xBwWhwDvBB7/vx/EONEM/0W2u1GpdddhlHHHEEn/rUpzDGNPV8J0aIv3C8lDYmYxx5KWzva57aNnZvY1IJ8cRiE0FrwWhFFNV4/PHH+fQ1n+VnP/85I5UqUT1G3M568ggY36NYKHDSKSdx1Z9/gFefey65IEQ3YlcYY3YidPeWw1YSPCtXFrwwe46sXbuW22+/nR/+8IfccsstJEnSnMMcccQRnHvuufzhH/4hp5xyCoVCYUxaWeDwg72POCfpI0SDkwQTJ7hnnmfzp7/B0A2/YHqkMCIYFP2SEJeK7Ag1s970aqZf+jr6ls5mINDkYo0WhQXEaJxOTwsYSeeLVglWp9JlRlyTcM62dJpPXyXpXAJpeLSnMnKiBJv9yAm+1gRJhLYWh1AyHuHvNrLjmz+j73u3MLNSxyQxOd9HVWrkdY51eYu75CyO/qsr0TO7UQ29cOMZ9AE8ddmKXbVf66ZMFqh1aGiIW265hc9//vPceeediAjFYpGlS5fy/ve/nze+8Y10dXU1n19ZGpksT5sQnxxYa7nzzjv51Kc+xTe/+U2mTZt2wGXrpuI4MlXbbyr2kaloY6rW7aFiY19xqJS7bWPycKiUu23j4M3TRK85ZAnxVh3ROI751re+xUc/+lGGhoY4/vjj+fznP8/xxx/fTDdbTI6fFGaEVLZQtNYyMDDAl7/8ZT7zmc/Q19fHq859Fdd87t/wciHJcJ2O2EM5xUjo0x+A9T36B2us7gu499nneGqkylZj6BPBGg9rNZoAIQBPQCWIHcFXNTp0xOGecMasGZzU1cWiXI6e0CC2hieWnAZlY0Qszihio4kbC20/SUnHfD5PsVikUCgQBMFepWkOBkI8SUaPcTslRAqeqzvuWL+N7z34NL/dMUy/M1hdwvoBIulRZa1BYovvHD6KUCl6PCh4miD0CI3gieBrhSY9ahyJQxJHXE+oO2EksfRWqtS0D0GBulP4uQKRrYNOQBTaOoq2xsLQcMHSOVy0dCZHd4QUcTjj0xBIB0blg/anbidSX623cCuJZK2lXq+zvb+f3moNhxC4BN8leCIopYmdIsHHasOwDtlQh99u7uXXm3bwTA0GdYE6uuG279ASYySm6ITDrOW4rgIrjpjJy8oePTlQJCgET1mMBd95aDSxCM53mBC6Sj5d5RK+X0KpcEw5JiKrdCgR4hlBkAUh/vGPf0xnZydnn312c5PrUCKy9mSjTYi3bYy3MZmEuLUWsal/78aNG/n0NZ/hv2+8kc3PbUH7Ad09h9EzfTrLX3k6CxcuwPd8nAjPP/88d991F1ufe44tW7aQRDXKXR28+lXn8jd/9dccvXQpvuc15VQyb92Wlz3mKStPNi9JkoQdO3bw8MMPc/3113Pvvfeydu1aoigiCALmzJnDy1/+ci666CJOOumkMbrgWf0daoR4Yi2QEtkYEBfjJ4LZMsiaL/5fBq6/mY6tQwQklLwccRShTI4+IwzP6abnDWdSvuQPGFrYTSVXRMQ0G8oZjwSNAjybBg3XaShy9lQkqyDWqQybZwWTHuIjwZEYIcahFfTUI/xKFW/zDrZ/9+f03XwvwZY+8kNVuoyP4CByiOexbUaB6Ze/gZ73X0z1sBJGeeSsxiiDdRbje5Oif7Sr9su8u1vvyWzDZmhoiJtvvpkvfvGLPP744/T395PL5TjppJO49NJLueSSS+jo6MDzvDHP+TYhPjlwzvHss89y9913c9FFF1EoFNqE+CFuY18xFW1M1bo9VGzsKw6VcrdtTB4OlXK3bRy8eZroNYckIZ55p2RE0qOPPsr555/P4OAgxx57LN/+9rdZsmQJQFNSJSVZk50kU7J8xnGMUoparUYYhlhr+fKXv8yHP/xhwOM9f/wn/O+/+ij923vJB3lGMGzxAh4dqXHPsxvZ1B+xbkeBapBjxBOs7xpBEwUlHsb6uLqAGaGoa8w1wst7OnnFzGkc25WjWyf4UkNJHWUcSjucA7EKrQ1oQ+IES7rKCjyfrlKZjlIHYRiO8UbO6khrPUZ7Navjg4EQFwuCkCiL03EqDSIedfHYEDnuWbuN7z2wjnt3xFREo41P7MAqjfg+SqdL2KZgJ0JDawZlwY8FrRSR73CeAxKUTdBi0AQoDKINcVwHH1AJKIUXWTrjOkcGltceu4Bzl87h2BlFCs7iuzpGgVMBusXzOUkSfN/fr7qdSH21orW9m3XphJFanZHBIYYGBrBJhFGglEMbReLSYLNVUyTyOonFsK0W8cC2HdzyzHqejTX9FHCmTIJFvBo4H1P3KYqmO66wrEtx9pLpHD0zT1mq9CQRXiJo5WFR1FGIn4rR+DiKnk+p3Em+WCKXy+3xCPVE6+pgJsR3lU52Dx9KRNaebLQJ8baN8TYmkxBPGoGwH330Ua5435Xcd/9v0Z7PYXPncfElb+d1F1zAoiMX4QU+YeBjE9ckAeM4ZuvWrdx22y/5xlf+g/VPP4mNIo5cuIhPfPzjvO2tl6Rj2vgs7SWL2XxFJA3c/fTTT/Pd736XW265hVWrVlGtVvE8D8/zOP7447nssss466yzOPLII5ub4a2keutzPwuYeSj0EXHgXEIawEIhzmIljSjp9UUM/+IhnvjMfxA+s4Fy1VKMFaHTOE8zoqAvrxmc28mM85dTfv2r8BbOh1KBIWdJtAHjIZLFvVCQCrqlxhVjFYxkVK5Ei2p4iDucFlwSU/A8dBRTQBPUY8zja9j849up/Oq35J7eSFfiEOWoexqUIbSGEQW1ZYcz7y/fRdc5JyEdORIUVis0msA2Am77u+hjB6J+d0OIw1hP8da/KaWaHuOf/exneeCBB4iiCIAzzzyTK664gte97nWUSqXmfKhNiE8OslNn1lqcS08rHsgYTjA1nzVTtf2mYh+Zijamat0eKjb2FYdKuds2Jg+HSrnbNg7ePE30mpecEB8eHmbp0qXceuutvOxlLzsgE93WRXJvby8XX3wxd911F0uXLuU73/kOy5YtG0MOt6Y/3k4W7DP7vnVBCvCxj32Ma/7lM3jG5+P/cg0nvuFN3Lepl0e2D3H/pl621ByRl6OuAywFMDolwjUgGmJL3sZ01AaZFypOmdHDiTOn87LDpjGDOkU7jMRDqAAiT6gawZFgRFDK4PARp1CiyYcBXR0FOosFcmGI1gEiO9ff+DK2NvELGRxfTCLLpiHNQJJGYEywymDx0E6jLVQF7h2osfLhp7nr6Y08U0kYDjupmRwkAn6QLlSt4EwC2oIofOsR2NTDKjYxNozAKZTKI06BKFAGnEV7gmer6LhKD7B85kxee8ws/mDxdGaF4KsYKzFONKEK0E6j9Nhjxa39a1/rdqJ1BqNtm5E2GZkqzqGcgBVc4hgYHqZvYIBaXMOqGG0sKEcsBSw5fInxtaPqhAG/yAO9NX7xzDYe2Falz8sR54spUaAUOA8VWwJXp1zvZVEh4czFs3nl3B5mhT75JMKPquQ8hXUWpwzWGnAKJxF+YCiXy5TLZYrF4k73bLbQbiXHWst6oOrwhWJ/bbeedBmPrPzZ6ZapOLk5kDbahHjbRquNVmQkXEaIX3HFFc3v94Xkzbyu4zjGM5p77rmHd172btasXUe+2ME7Ln8PV334w+QLZSwKJw7taeI4xhiNZ7x0jqBAa4OIo16p8OP//h6f+f/+ia0bN9LT3c0/XP33XHHFe1FaIWLT3zI6No/foM7Ka61l9erVrFy5km9/+9s89NBDzb8ZY1i8eHHT43bRokVN6YlWsjv7PL4+djUfmixMtg2XVibaAtYhniY2QqSEUBR+DG7jdjZ+6TrWXvdD5g4JXVWwOOo5Q1UlFJRBqglruovkjlvCEaefwoxXnIAsmkO9lGMwpxlSQuwpjDIo22g/BdI4AaZR0Aji7YsQWEukBOun2vQFgfK2EcxTW9jx28fZdMd9DD38BIfFis5ajWIjkLnVmqoo+nyPkc48897xZg6/4n8g88pYT6MT0C4Nci4eqfSeUo2TWwe+fnfXfq39KiPId/XMttZy++23c+211/KjH/2o2S+XLFnCVVddxdve9ja6u7t3ItUzx45dzdcP5oXYC7WxrxCRMXrtreuhA2ljqo0jU7X9pmofmWo2pmrdHio29hWHSrnbNiYPh0q52zYO3jxN9JqXjBDPJsu1Wo1Pf/rTXHnllfT09OzSS2F/Kss5R5IkfPWrX+VDH/oQWmu++93vcv755wOjHtH7swh0zjU9xoeHh3nzm97AXffcw9zjT+KY9/4Fq1Qn27wuEooo6xFYAWJqeQsiqCT9rjOJmOtHHN0dcNL8ThZOy7PQ+nRZcDoiUXXEszgliDJYq1H4eFqBSzW0vSBPR7mDYiFPEPgEHhiSBuGZY5dBGScJLyaR5SRBsGjRQEomJErhUPiATgREsJ6mzznW1+o83D/CXc9u5sltI2ztTxipKSpVSy0IiY0Dz2GdgAsxkkcEnFdDvCo4jZIc4izG05gkYoanmOU5lnYFnLVkASfNLnF4IaTk05BcSRCVkEbM9PDEoEXRdCrbj3JPCkQQFyFOUNrHoanVEyq1Gv0DfdTrwyhx+C5dOCUmQTwQFNb61E2RoaDMqm2D3LtuK49sq7M1dgyGPonnNaKMOXRi8eoJJc9QNkOcNmcG58yZwfF5xQxbIZA6Vgk1ZXDKwyiFEtcktfL5PJ2dnRSLxSa509wgaXg87U8wrhcDU3HicbDZaBPibRutNrLX7N5XSnH99ddzxBFHcNppp42RX9hbnlqD12bpPvzwQ1z+7vew+ndPMn3mbD7ytx/n/AsuxAQBShuUNiTONsW/d2dDi6BdwhOPPs5fXnUVT6x+jFIu5Cv/8e+88U0X4Hk61SFXpjkvyXTBs/cbNmzgtttu49vf/jZPPPEEO3bsIIqiph7zihUruPDCC1m6dCk9PT0EQfCC6vZg7yO2YcOzChGwXipZogWMSGOz1qK27mDkgSfZ9PX/pvKrhygPR+R8n8jG5KxQsoq6hcjzGQpgqLtA3/QS009bRudxSygvmE+huwtKJSSXb+qMO1o2oa1Du7QP6MoQrlon6u1jZO0mtq96kh2/eZTy9gqlgRqFmiMURVXF4AlFBKKEEeXon1ageN7pzLrsTeRPOwbXkcfT6WRCBJQolANRQmzSQJq+2jnI54HA/rZfdr96nkcURVQqFX7zm9/wla98hVtvvZUdO3YQhiGzZs3iyiuv5K1vfSvz5s0bE3Azm9/7vt8mxPcTv682pmr7tfvI5Py+baPdfm0bB9bGvuJQKXfbxsGbp4le85IR4lmy2ZG9bEF7oAhxay39/f1ccMEF3H///Vx00UV89atfpVgsNn/TGsxwX2xkXuLZ+1/84mbedfl72DriOPKKv2DHkhPpC7tAilBV+E4IjCVxWyn7AcXEcnS5xOmzOzl2eo45RdBSQ2nAxWiXYBQYQDlB46PEINZD6YCC8ukIcxQ6i5icj/ENSoPDgXZo1Tijiz8a3OlQI7JcnAZe1B6iTOqFJekiULQQ6wQngm8NSqXERawVVa3ZXk/Y1DfE5qEaa7bHPNpfZ2PvVgYHd+C0T2Q6qKoCUewoBBGhDCESkw9yzJrWxVGzZjG3aDimK2Bhuci8YkAHgrEx2iQNqVEf22C+PWXSYFtZs0wxQlwQElJZFEGj8NIsCtjYUatUGejrI6r0I1InURprAmLtEUsjgJhT+EpRVTmeGNbctW4Ld2/rYxOGEWNIUKB9SAxKBYgWcnGVBTLCmTNLnD6/iwWdPgWpk0fwBchi1TU2rrIxo1gsUiqVKBaLY6RmssVyRiS9mHW4N0zFicfBZqNNiLdttNrIkAWWtdY232fziNa87I0Qz4g2pRRbt27lne+8jF/e/is6Ojr59Of/D2efex7iNchwpYjiCC/wceJ2sjU+7cDX2HrCs08+yf/7gT/lsYceYP78ufz3f3+PE088HkHS00eNfNbrdfr6+njkkUf4/ve/z5133snGjRupVCoUCgW6uro4++yzufDCCznttNOYM2dOkyDc3fi3L3V7sPcREXAIjlSiBAGPxsE8EbQoRByS1FBKcL3DDPzqQbZ8/QfUHnySYi0hUBrlLKUkJbWrBuLAUBcQ4xEZheoooDqKDE8rUu3I4+fzFLo6KJXLaM/DRjGVgSFGhobQtRq54WGkfxivfwR/sEpYtYQieMbgcFhJTw8G2hDHCbGnqed8okUzWfBnf0THOSdCTyfKD0GnwVmtSjcAAskOuQkVLxVwKTI1CfFW6b4s6Ot9993HP/7jP/Lwww8zMDCA7/scffTRvPvd7+aNb3wjs2bNap6my+y3rhcO5oXYC7Wxr/h9tTFV26/dRybn920b7fZr2ziwNvYVh0q52zYO3jxN9JqXlBBv1TPOpEkOBCEO6UT75ptv5h3veAf1ep0bb7yRc845p2kTaB4n3lcbSZIAND3Pqv2DvO3i/8HPbn+AWeddjHrN63muPA2n83iJw3N1jIxwemeOV8zq4pTZHRweCKETRIfEyidyDlSCr+oYiRGVev2IA095hCagEOYpl8qUCgWMMqR0oWuIU6rUS02RLgIFPK2bvOuhRmRJg4RQokg9pASFQhRYLcQpNU4o4CIwNDY/LIgGpx2VaIgtvVuomxIuchgbMWyFLTbkefJs3NrLMTM7mWXqBDoiCEMCgVCgs1Ciu6sMxmC1IlYKR4yROnmn8GwIYhBPEZmU//YdKEdjp2P/yj0ZcEDUYJ+1UqmiT0beu9SbzjlHXzxE32Af0lfDqwlaGWxoqEiEU5ZQCWLTQKZVY3i2HnP7+q38ct0O1rsCsZ/DJhGBMUS2gPE8cBW0jFD0ahw3o8h5i+axvFRgZq2OTx2n7RjyK9O9VEqRz+fp6Oigo6ODIAj2Sn61CfGD20abEG/baLUBMF76rPW78Ztje8pTKxlureUTn/gE//DJT+Hncvzzv/4br3/jm1FBDmV8avU6xjS2mpVqBsXcbd9RUIsthdDgahFPP/oo73v3ZWzZtIHzzz+X//qv6ykW8yCaOIp5/PHHueGGG/jRj37E6tWrm+kkScKZZ57J29/+di688EJmzZrV9IIfLyPxQvSAD4k+4rJg22n7hC4lhq1KN4CNE3CKyHP41qGVSjXGB4YZuO1BnvvaD+i/ZxU5gemRUIocntMo63DGEHuaChZ8n8RZRGusUsTisBpEp3I6RlTDO1zwlMIYhQa0A+McKiPDRYiTGDzDUM6RJELkoGvFacx+78UUzzyOuLOAEYtzFo8QbTwiDxKVxmIPGpvuooSoIdkSMCmKKS+IEM/u0+x9RpJnm1r3338/n/rUp/jZz37W7NuLFy/miiuu4PLLL6dcLmOtxff9NiG+n/h9tTFV26/dRybn920b7fZr2ziwNvYVh0q52zYO3jxN9JqXjBBvDcCTTW6BA+YhHscxH/3oR7nmmmuYP38+q1evbnqXZAvoVu3mfbGRaSAaYxpEfsIN37ueS9/5Ieys41l45YcZ7JhOGcWxRY8TDi+xeH4nS7QidA4lDk1MSIKWBJfEoA3K83FWo5XBOfB9n2KxQC4fUCzm8AOFKEcshroy+KTyKB6pPIjCgPZJgz2lQSEPVUI8JvWKUiIYLEosSgnpctOANQhCrAWtwOBQzqWkudY4FH3DI6zfuAlBUxBHaB1V5fFc2MXPnt7MY+vW8u5zTmexrVK0EcrXiFisi+jsLDN7zhy0MkgLKS8q3ZtAHOJiRDuUSb2ulTOpN3X68/0q92RAAJwgmbc3DoVFlGBV6mWXIIgzGAxRrUZlpJ9Kfx9xpYrnBcTaUEHjaU0uigFIPI+qF7Bdh9yxbit3rO/jiYqmz3nY0CEW0EWEEGVjjKvQGQ9ybKfhjEXzOH1GjrkmIVCATdAKnDgUuqU+UvKns7NMubNMGARoPUqCNQ6uo3ahpd8sf8tXk3WHTMWJx8Fmo02It2202mi1lZHgrUFod/e6u/SyOcmTTz7JySefTC1K+KPL38vf/+M/YRsnkWxDbcM3iiSO0CZ9zrTmZTwsIEYjTuGJI8Cx8kc38afvvZxcYLj2C//GqSefzA++/0P+/d//ne3bt5MkCXEc093dzTHHHMMFF1zAW97yFubPn9/ciM8CZGakeCazYox5QXrAh0IfsQLQ0BB3qde1aFKN7cZmuWsc1dIOPJfF0kjrUKp13JrnWfuDW4huv4+RJ9dhKhGdeASRIyCVuVGeIRZHiEJbh1NCAiSkcw2jFcYpDClJXsGhSDW+jTYopanGERJ4xApc3sMtnUXpVcuZfcF56EXzcIUQPI0FPAVJVMcLQ1R6LHC0ThunBA0CcWOe4Wkmo5pfCCE+PnZKKzGeOceICKtWreJrX/saN9xwA729vYRhCMBHP/pRLr74Yo4++ugx/fxgXoi9UBv7it9XG1O1/dp9ZHJ+37bRbr+2jQNrY19xqJS7bePgzdNEr3nJCPFdJSsiu1zI7U9lJUnC4sWL2bBhAx/4wAe49tprd1pEw9hAgxO10Zr3dDEe89STv+PsPzif5wdqvPUv/hfHvPwVLJo7j7mFHGXj8IgIbOpZngYcFHAJurGAcSmFjdY+hUKRcrlMLpfD8wzGS73BBQc4nNJYNApBI01+VTW+aazPxyyEDjUiK60JUAgKQcShVFoHKo1q1ZBPARqe9LqZRvppcGiYDZs2YVAop1ASo7TH00knV//2SR6rbeeDJy3lzaUSXRJTN6m3slZCR0ee2XNnolW60lZimp6CKauaee83PNkxDea1UQ9TiBBPDTRsoMjyLip9l70q0U1CX1yCTWIGdvRRGakwUqtjDr0x5gAAIABJREFUVSrdY1wMkm7IWCBWHjUvz9bE8OS2Ie5Zs4k7ooCBRGOMT13AKg1GYZwjrMWU0cwvJJwxfxpnzetmtqpToAZaEDxEFFppdKIwYhBtwbN0dRTo6iwRBAHG97EAYvBEpxrpqOb9gU7L5nQaTM1DoSeJEt/f9mvVNG4l/lr/nmmnT8XJzYG00SbE2zbG2xj/LN7V59bXxtWMDgIACufSz9VanU9/+tN87GMfZ+6io/jC1/+TY45dhm1IcCilGrEWFI0dxGZSeyq3Q9CqQaIiRNUK77vsHdxz2y+YPXsm+SBg7bp1QCoJtWDBAl796lfzhje8geOOO64ZYHBvpP6BGAcOhT7iUiPojDBWjeeYaszfFAgqjelB47lgG172uqHVlQB1i9u2g5H1m3n+zt+w5a6HKG3YTn77EMFAJY0P4yzG93FaIQ1vcyVpQE2HYEn7izWKRDk8MajYYQWklKM2q4uBWR3MPP1EZp55GrmjDkdN74TAQOg1qPVsfteYw6LS+c44QlwQlAiqIb/zYgfV3Nc0dvd9duKhVqvx4IMP8vWvf52f//znbNy4kVwux8yZM7n44ou5/PLLWbx48Ri5oGxjCBgTV+RAlGOqLvb2FUmSNINpwt7raX8wFceRqdp+U7GPTEUbU7VuDxUb+4pDpdxtG5OHQ6XcbRsHb54mes3efuPt9i8vEC/GhG/Lli1orVm6dOkuSfD9xfjrFR493bOZN2cuz2/9LS+fXeD8ZXNTkjYaQkUuDX6kUw9XrRoLL6NxDpzWhGHY1EUOgqDpKe+cayxoVEqqYhr/p9/tlLddf33IQZNpY6ZLxXRJ20I2q1ZHbEVWYymELBSn7xyeaBJt0n8qx4Prt7Jm2DKS7+D2Z9bzqpNPJhdF4FlwoBubDmldj4qDK6FFsDOz2WJ3KreLan1N895C34/9DYD2MIFHz2Eh5ThmaGiI/v5+qvUqsXLpOlwplBMCJXguwqCYObvEKTOP5qzeOret2cADfYNs9koQdCLWkNgEF3pUVURf3WP17/q49dk+zp7bxdnzO5lfjPBVFS0QJAFOC7F2+E4RRIbK1iFG+irkygU6ukoUcgHGExz+mPy3FkVJVtrxBX7pkZHgkA7WGVlgjCGO4+Yx8wO9mG2jjYMBu3qWt3430We91po4SRgZGeaHP7wJAZb/watYetwyqvV4zGkypbOxYhdjxq7siaQewgJojSDkCkUuvPgtPHDvPWzv3UG5WKCj1MG5553LO9/5Tk499VRmzZrVJLhbnQV2V6YDNb85FKBp7FOYlr7A6P7FmLlCFmfFqEb7NTTOAsA36PwMOub2UFp+HEe+r4Js2UZ13WZGHv4d8dPrWf/I4wxv3U4oigAf4wTj0jmo8j0SJehcSDWOiLWmOHMGs5e9jNLSReSWLKB05HyYMQ06CimBHfpg9JiyjJZhdEYz/o+jpPnYck9V7K0fiwj5fJ7ly5dz6qmn8thjj/HFL36RG264gY0bN3LNNdfwve99j7e85S1cddVVzJ49uxkXSCnVfi7uAVrrpkxlKzHeRhtttNFGG2200cZYTBohPtnYunUrIkJXVxeLFy9uHi2eDAhCGAYcNmsmCGzbuhWtNVGthq9NSqCiUj/wxuLWGDOGBA/DcEzgwAztCf1kQ0ECEjpqymdDkmPlhqcZ0gVEfB7dvpXbnt/BhXNKFG0NRaaxrQCv6Z//+7IRMR7OOTzPo7u7m87OTkYqI/QPDlAZGcYmCZ42uMTilBAYn8TGlBW8ZlqdM5Yv4slqwE+f3cEdzw2yyYINPZyyIDG1MKBOmdWxYu2aGj96upfTDy9y9sIySzsMPSrClyriLNrkiAlABSjRDPfXqAxWKJZCip0lwo4yRpumw5wibUNFYyMj20GZYsg85TKZpoceeohSqcSSJUvGSCe00UYb+4/spMXq1U/w8MMPE/gBF130ZkQgDH2SxPKCBwg19v1rzj+fz//LP7Flw3ouuugiPvaJjzN9+nREpLnR1erp2sZLhCTdfhcj2OklmFGisGwBxVefjkSWubUEEgv9/VCt4ao1rv/stfz0lps59YTT+ODH/g58Ax0dSEcZFRrIe7hQUzMwQOrmYBxoJ/ha0R7RU7RKq5xwwgl84Qtf4CMf+Qif+9zn+Na3vsWWLVu45ppr+MpXvsKll17KBz7wARYvXoznee2NoT1ARNi+fTtPPPEEy5cvJwiClzpLbbTRRhtttNFGG1MSBy0hXqvVcM7h+z6lUmlSSSOFwniGYrEACFG1xrTOMr1RhFEKZy3WgfE1hUKBYrFIqZTKOrQeg87I8PZE/sWE4CmNVY6ql+dXGwd43BoiP0RFPoNeNz9ds4lT5hzFkQo8XEqGS7pItg2fM9WgxpGpSaxOFjJSNiNxOjrK5IslatUKI4ODjAwOgU6DmCkciMNah1WWQjzIccpj4ZICrzuqzB2berlr0w6eHVFUyGFDD7E1nGgqOZ9B6WLD8xG/3rKVU6d5LJ9b4pTpPfRoGE4iVADK1fGsEIiHCPQP1eirRHh9O5jW3UU+X0yDcSmNUWBENyR2oLFvNaWQeW9lR8GvueYaFi9ezN/93d8B7FVGoY022tg7lFIgwhNPPEESxxx/8nEsXHgkWivq4zzED5BFisUip59xBj/4zkYGBweZNm1aU94lSZImqTdeCqaNFw8COE+lOuSRQ4ugfQ80WOOQosEWA5AEb2Ye5QSc46EZAd/rX48tnIicuhhRikSBkHrkKutQogitTnXBBWKdBgQvv9SFngJoPRWRBbGH9D5dsGABn/zkJ7nyyiv5xje+wY033sjTTz/Nl770Jb7zne9w6aWX8va3v50TTzwRpVR7M2kXUErx1FNPce2113LCCSc09dnbaKONNtpoo4022hiLSSXEx+t9HkhkmoLWWkZGRnZK/0CSz9kCdmhoAG00gW8o5Qv0awXWEYYBpUKRUrmDMAybC91s0r+ndA9UHtvYA5RDrGWHUfxi3WYG/RLOCQaN0wWejQZ5cFsvc2eUyOkEY1Pt9oZKeHbguvHJ8P+zd95xVlR3/3+fM3P73d6AZemCIKKiwY4G62OJmsTE9jNqTKyJ0SRPYtRY83oSnzzWaIwt0cTek2BBscWGBRAERJG2LOyyu2y/e8vMnN8f984we1nK4q5SztvXyt7ZuXOmnJk553O+5/Pd5lTVASbfosA0TArihcTDUVKFxbS3ttGV6MKyLYRtEQwEyWCCtBBGJ8WincmWybjBcY6uqmRmfRdv1jaxIm3ToUDJFEp1YyoDZQSpJcLq5hTvrOtkcpHNAdWl7DZkEOWqi4hoR8kEGSODowIoO5gdwOhOs251AzJoUFBcRGFBISEzmNPAjfX3oVp/HH0VoXr7zsa209d72++Pmkwme3zvq/CB02i2ZXrLD9LX+9eybZYtW44QgtLSUuLxGJmM3cO+bGvFNeX7yZZlEY5EGD1mDLZjs7ax0dt318Ygv43gDozpe/2rwxGQMLMJp0OmgWkp3KQaUhqkhCItIKDM7NC444AjsJWBQpKxQJFLGC9E1jJPZf3k3UQoUggCDoQlICRCh4f3uIf9g+7u8lAoxNixY7nmmms49dRTeeyxx3jooYeora3l9ttv54knnuCEE07g3HPPZfz48UQiEW97fmuhr6qN3VvOg/xj/aoxTZPOzk5tl6LRaDQajUazCQZMEFdKYds2tm3z+uuvs++++1JUVNRv26+oqMAwDNrb26mtrfXKhP5vgAohsGyL9rZ2lFIMrR5KOBiirKSUUCBIPBbDlEY2eDhPPHQbyZvzQtUMEAIsKbGkyUe1q1maSmMLgYHANixA0CoMZn66jH0rplARsJBWVy7aOetG6godO6NtSm++te65EKZJNB4nEouRSSVpbWmmo6OdbjtNKhLAtByiVoCgZWMrQSRoURNIcPqYGMcOjfB+c5oZSxv4tMOi3QiTcRRCpVFCkQoEqDPjNHakeGvuMsZ9EeDwkZXsO7iQQeEoUdKodApp2GBlMDM52yLboj3VRHvzOgoLiigqKCISjiMR2E42MWt+0kq/F2n+/evvqPttmVy7A//9vTWzVNzv+a1TYH1kfv4+aTQ7I663/uzZsykpKWH06NHefbcl94cQgkwmw8KFC1FASXExoVAIpz98ucV6IdydQKRy2yspKUY5Dmub1tLd3e0Jdy75AryOFP9qEShMbGwBtgAnKJG5BN0SSdCBoBLYQpAWIILZxKndpiQtBKlAACtgYKEIKjCd7DZtqbCM7NwyU4GhQFpkFfgBSoS5PbGp5LD+BNPhcJjddtuN6667jh/96EfcfPPN/Pvf/2b58uX85S9/4dFHH+WEE07gZz/7GRMnTuxhweK+oy3L8ixDBjJIJ3///cfxVQ90+Y/fHYDTaDQajUaj0WzIgEaICyFIp9Ocd955PP/88xQWFvZbozAWi1FcXMzatWtZtmyZl0AG+j+iUuHQ3NzIypUrMARUlJdiSCgvLUHmGrwONtoZctvDQZAMhKizJC8tqSUVqkRkBMJxwHCQNtgyxMJWmw+aujlgcBGhYAqUhVDZ5Jw6vsaPyg0RrE//pRyHQChExaBBFJWWkEx2s7allbQlcByTjGGgUCg7TVh1ElOtFAuLwWUGRwyu4v0mh5frOnmvJcM6y8SwBaahSNldpEOSdCDG+8Lh409XMWqFyf4VxUwdVMq4eIRYuoOQIVFmCJRCkEGqDGQcOlpa6WrrJBQtoLComIJ4pEcSO3fQzi98NzY2Mnv2bObNm0drayvt7e1YlkVBQQGRSITx48czadIkdt11V6/j7fqsfxWdbY1mZ8JxnB7v81tvvZWpU6cyevToPmctty2bdevWgVKEI9HsQFQ/7qvK7Y4njivlCXHdie4e1hB61se2gVAQtiAbEg5K2t5ghlSAoxC2QJhZIVsAjvcOzP5rADi5fJ1SoURW986uoXJWKmAG3LfmNujdtQ3ivlvdAeNhw4Zx880388tf/pL77ruPp556ikWLFvHAAw/w6KOPcuKJJ3Luueey3377EY1GPSF6Y4NO/X3/OY7TY2Db3W//8Wg0Go1Go9Foti0GXBCHbDRlMBjs1+gnx3E4/vjj+etf/8oTTzzBFVdc0SNCsz87nEIIFixYQH19PcXFxewyekzP/Fm6obvNooSgQ4Z5bXUjS6wIFhJT5bqxIo1jOKBCpGPVvLBoJWMG7UkRAuVkENhIletMZa3EfaHiOyuO56eeFQ4kGG6yWEEgFCQYChENF9LR2U17Zzvd3Z0oO4MJOI7CwgDDJJoRRDOd7F8K48vjHNsmeXt5F7PWJlhjg4ODI8BG4SiT7kgpCy2LFavaeKOugW8OKmbq4DJqogFCYYmpbAzLJohJQGb9zC3HprOzk65kktaWAMVFhUSjUYLBoNd5TaVSzJo1ixkzZvDMM8/Q2NhIZ2cnlmX1iAKXUhIIBKioqGCvvfbi5JNPZtq0aZSVlW14lrT9gUbTr7izJkzTxLIsAoGAd59tCVJKSktLAUinUti2DeaXH8RWeT+QDQJ2UKQyGQAikYi3//qZsO0gAOXODiIrkHsDGgiUVCgjK2EbPtst6WTfL4bjZIVzpZBeOmfRYyBdkh1Yz1YQma0cmi3GP4NLKcWQIUP4zW9+w1lnncW9997Lc889x5IlS3jiiSd45ZVXOOqoozj55JM57LDDCIVCG8zcGoj7zy++u9ZL+l7XaDQajUaj2fYZUMsUF8dxSKVS/TptTwjBEUccwaOPPkp9fT2LFi1ijz32GJCGaDKZ4tFHH0UIwR6TJjF8+HCEUghfWU7OjkHzFeK3hc6de6HcJdmwLKUk61KCN+paaQ0WgwoihMRGgkqBYUMmSqcVZEmqi8/WtjCizESaFmAjMLNJGXduFdwjN8SFG+WWDaJTWW9UkfVilUJhmIri0hgFxWE6EnFa29tJdCZRjkIaARzLJqWyyczC0qLSSlARMdhr9xKOSpTyxqpmZtU1szyp6A5EsIXCsTIow6TLiLJMmTTUtjFjdRsTKws5sibC6LJCyqJRRDqJSicJIjANg4wQOLZDItFNsjtBMBikurqaYDDIypUrufnmm7nvvvtIp9NeNPjo0aMZNWqUlxy3tbWVdevWsWjRIhoaGnj++eeZPn06hx9+OJdeeimHHHIIgUBAT03WaPqJ/BkXbrS4a13UlwF2IQShUJAJEybwr3/+k5bWVpLJFMF4MFcY65VQ70t92Nn8dUVWEm1paQEhKKsoJxqNbnBcmq8XJQSO4YsIV24bglwTwhXLBQI717JwcCtLdnDYQeCghIGlDCQCqSDgq1Mit1FbCB0fvoXYtt0j2W3+IHNNTQ1XX301P/zhD5k+fTp/+tOfWLZsGY888giPPPIIZ5xxBueccw6TJ08mHo/3av+2xfR2y+Y24wrgrv2aUopMxkJK4YnkUsrcNtZXCpW/IXS90Gg0Go1Go/mqGTBB3N+BdRNg9jcHHnggQ4YM4bPPPuNPf/oTt912m9fpdKcsbg3uNEf3GObOnctbb72N4yi+f8opFBUWZZMySnCbsNnor/44Ks0Wk+tbKAkWWZ9OAwXKwc4lzQxmwry/qoPl7REImUgzgWVlUDIOKIRjIgjgyCBdwWJeW7CYKfuPJhE3sWQ2gabhZKO8lKH0oAeAZw2Ui4aTwpMH3NMjTIlyFIYhKSosIl5QTKI7Scu6VhIdXUglkUGTdCYDVlZIDgUgkl7HnoEAY8eXcfSYct6pXccHq5pZ0t5Ka6iQhJKAgaXCtIeDtMs0q9Z1MLd2DbtVFrPfsEHsXVXC4GAYw+4GLGwyWFIRtCXSEZhCIIXDjJdf5KKf/ISlS5YihWTXseM46qij+cFZP2D4iOHEYjEvClVKSTKZpKGhgZkzZ/Lcc8/x0ksvMWPGDN555x3OOeccrr/+emKxWJ/OZL53uIsWzTSaLK6dUW+DTX0ZgJJSUlMzFCkFLeua6Ux0UhovQAqBshwMud4M3JM8t9Du2Z1AJJzsJ9MwsFPdLFu2HIDKykov/4BmG8V/oXPCeFa8ziWAFL71XHuc9UHhWasUstYpwhXWfclHbD1W2idM0+wRee0Xxt17yTAMhg0bxo9//GNOO+00HnjgAZ588kneffddHnroIR5++GEOO+wwLrnkEg499FDC4XAPyxS3n+Al7XUchPTPNM154bgDGwgcJ9sOtJWDUg5NTU188OH7fPDBB6xaVUcmnSGdtgmFQkTCIXbZZQz77LM3+++3H6FQAEc52WAaQS6AwMRxE7F6dVD1i0zuT9irB+s1Go1Go9FoNmRAe2huA+zLiNMbw3EcBg0axNlnn83VV1/NQw89xDnnnMO+++7bY3rl1gjxfisFx3G46aabWLu2kUGDBvHtb38nK7aaBiDzBFItYn3lOFlB3CYbrWUoB2FZYJh02wYNKsCLdXW0iUKCMkWaNggVgJWd8hxQQSRJUk6GpAzwWTLN7HVdjCgcjFJmrjOscIRAIXV0F+s7VT1sg3x/93QD6eoBAhybglCQgiFVpFMpWlvb6Ohox5S2dw+lUjaGYSKUIppqZywwbHiUaTWFzKtv4/VlTSxIpGkOxOgWhqdCWTJOXayYho40H8ytY3xsLVOry9m7qoBhMYHptBEQVnZauzQpKizi7r/cze//939Z3bCGqupBnHbyafzysl9QWVmJETB6HJz7PAmHwwwfPpyzzjqLb3/727z55ptcf/31zJ8/nz//+c8sXbqUe+65h9LS0i1+3rkdVjfCzE2GpS1XNDs7bt3PTzDrimP+xHU9B5A2PqNn8l57AooF8+fx+eLP2H/QEOy0lU2KbTtIaWalKPfrytnsAz8rkjlICUIaKMdBZSzaW9p47803kVKy1157YZqmFqW2MVxHb/f3Xq+1VxdkLwvXb0EiCPqFzLxLra9838m/X/KTV/vb+MXFxVx88cWceuqpPPzwwzz55JPMmTOHmTNnMmvWLPbff39OP/10/uu//ovi4mIvmhtyIrth4l5X5TgowMpkME0T27IQhuENjnR1Jfho9myefe5Znn72aZqamsjYdjZPgJM1kRe554iUEAkHGTFiGKec8j2+ddxxTJg4ESUVjspK3xkrW75hSF89WT8Tr6+4g4hAj+PUaDQajUaj0fTEuOaaa64ZyALS6TR33nknZ555JmVlZRsVePoq/LgNvKqqKt566y3q6+tZuXIlhx56KMXFxd42/dvd0jL8YtS9997LXXfdhRCC66+/noMOOsibAtnb9vrr+LaGr7OM/ix7S8vwrFJELqGVUFmfTxscaVInBX9b8hmvtDWTkVCQamHM4Ao6uhUZ2wAyCKEYF1EMNh3aEh2kggHWNrbx3dF7UBExMEWGtGFjCQNTyazcO0CnefuoI6LHj8hbsr4M9+/ro8bdzm0gECAajVJYWEggYHpWJdl7zr2vFCiF6aQpVCnGFsWYMnQQNbEAAaeL7kQ73QqUEwYZRqk0jmGSDkSpS9osbGljXv1aWtIWRdFCYgTBMAiEQ7z3zrtceskltLS0UD20mvvv+xvnnvNDCguKkEbumbGJ0+QmyxsxYgTHHnssiUSCefPmsWjRIu8ZFIlENvqMyMfvkbpmzRrGjRvHbrvt5tk/rT+n20sd2foyvo7nyECUvTF0GVtfhhCCp59+mpEjRzJ58uQN7olN7ZM7A8M0TWbOnEl9fT1FpeVMPWQq0ghkoz2lRMn1Ub9CCcT60NCNlqEA4Q7COyCUjUTx2ssv8uwTj1MQi3DVVVcwtHroFp23HfX6fZVl9GV5r8MnvoUbtDuU4sUXX+SDDz5g11135ZRTTsnOYPDVQ98rcH0bZWNlbQX6+m2IO4skEomwzz77cNxxxzF+/Hjq6uqor69nyZIlTJ8+nY8++oiCggIqKioIh8M9Em+K9QV5y23bxggEcGwbx1EsW76C2//0J/77V7/ijf+8RUdHFwUlZdQMH8G+Bx3ElAMOZJ9992PCpEmUV1XiKEUimWRVXR2vv/EmM2a+CgjGjh1DJBxFOdm2jhQSQ2SDbHItIOjRgtpylFK0tbXR1NTEIYcc4h1nf7Mt1sOt2acdpYy+si2Wsa2e2x2ljL6yoxy3LmPg2FGOW5cxMOtvS2Vsap3tVhB31y8rK6OqqorHHnuMlStXsnLlSqZNm0YoFNpAkNrSMizLQinF22+/zcUXX0xXVxdHHHEE11xzDeFwGGCjU7h3VrHlaxHEBdgia+AhUQjhIGwbCJCWks8R/P79d2hKdVPjZLhg3Di+UTqUhcubaVMCggJTKE6qivPdXUfQ0NxMfVeabhVlTDzCHkMKMGQSS1ooTAKOzFrD7tSC+NaV4Rd23aguwzCIRCIUFhYSCoWwbduLjoasgG4IhelkMFSSiExSEzeYPLiCSRWVhLttuhpbUbbCNoOIlMJUEjto0mUo6oPwcXMLHy5dS1sqTHE8SHtLIxf96Dxa161j0sSJPPzQw0yZsi9SChy/Z+lmBPFMJkMgEKCoqIipU6eSTqd57733WLhwIfF4nEMOOWSLokH9U7YNw+Ab3/gGEyZM6DHF2T+wtyPXkf4uWwviO1YZX0YQh+x9Gw6Hqaur4733ZtGwppFvHn4kZeWlpJWNbYCTsy2QSiCVQAiFP4XExgRxhMymUnQcgobETie55je/Zk3tSvbaYxL/fdnPMANBLYh/RWX05z2+pYL4zvKM/irK6Mtyt72QHzkejUaZOHEi3//+9xk7diwrVqxgzZo1fPbZZzz22GPMnj2bYDDILrvskg1yEf7ZbRLlONn8KCob9W9ZFh/OnsuPzz+fJ596mu7uJDUjRnLG2efwk5//knPOv5ATvvM9Djv6GA457DAOPfwIjv3Wtzj+pBPZa++9icQKWLp0GWvXNvLyzNeoXbGCKft8g4J4EaY0cwJ8dg88e54vIYhXVVVx2GGHef2ggZidsi3Ww+25s/5ly+gr22IZ2+q53VHK6Cs7ynHrMgaOHeW4dRkDs/62VMam1tkuZ3EKsd5zVynF0UcfzQ033ICUkmeeeYbTTjuNNWvWbPX2bdvm/vvv56yzzqKpqYkJEyZwww03EI1GN+lnqvlqUWQ9Ox2R/SQdBUJgC4dOCW/PX0yyoZuj4qX8Zp8JnDC0gPJMgjCCsGMgrTCWAlQHuxUmuGz/Cfxg1CjKbJsHv/icVSKDZQYIIYlufua8ZhO4oq57/7ifhRAEAgFKSkoYPnw4Q4YMoaioCMMwcByHNAG6AgUkjDCWY1HkJBmVamGq0cllewzij8fszv8bbrIHXRTSgh1sxTE6IBRCpQtxRDUrAjX8fVUXd7/wChf97FLWNDYzZHANd/35bvaYuEcuKktgmiZCbloMd4/FFc6VUhQUFHDttddy1llnIaXktttu41//+tcWTVP2i95uzgXIRtHrac4aTf/g9yK+8MILKS8vo27lSu685WYy6SRGIBsd7kiHXMtifXT4FqAUOJZFwJDYqRTPPv4YH777NrFomJ//7KeEQqGBOjSNZqfF35ZwB9PdZJymmRWZ4/E4p59+Om+++SYPPvggxxxzDEIIXnvtNc4880ymTJnCgw8+SOPatbkE4blBe0MiDYmDojuVZPoLz/Otk07kw48+IhyNcd5PLuHp55/n0l9fwaS9p1BQWgHBCGklSSiwTBPbDFBUNZjDjzuO/7n5Vp564UVOPOV0HCV5+OHHOP7YE5g3e242QrxHYl/Ra57fvpwX9ycUCn0loohGo9FoNBrN9siARog7jkM6nWbBggUcddRRFBYW9muEuPtjmiZ77703iUSCOXPm8Pnnn/PRRx9RVVXF4MGDvWmP+YllvEQ6SmHn/P/q6uq48cYbufHGG1m7di0jRozg3nvvZZ999vEa2H4Ra0uPY1scpevPMr6uyE43Z5VUDsJRKKBLCmq7Uzz/6vvsVjKC708ax7iYTYgOltoWr9Q306UMpBI4hmKfYsU+xYJKO80RXeTKAAAgAElEQVSogiJKy+LMrVvAiKIiRpeWYaYVCAMHlY3g0RHiW11Gb5FK+eJ4PB4nFoshpSRjK5QtCWYgbptIW5IWikzAQcluCgNJdi0Ps1dNGWURRTLZTXdKYaWCSDuMUhLLUBCycRbPYsV/XsVJpvjLXXfyzUMOwQwGEG50mNi8XYp/f11R3P198uTJvPzyy6xcuZLGxkZOPvlkLzprc57g7nkxTdOLdHOtmfzn9Ou+fgNdho4Q12X4y7Bt2/vXtm2WLFnC6NGjGTNmjHdfbep97OLaD0kpicfjtLd38M4777B86VKGDBvKmPFjQQgcFIYQYDvZaAEheo0Qd8tVuehRKQDHISAUCz6ew28v/28629s44vBpXHbppYRDYdhCC6Ud6fp9XWXoCPHtu4y+LHffne671v/+9Aa6c8snTJjAsccey/77709DQwNNTU2sXr2al156iZmvvII0JNXVQ4lEIiilsgK5lLz6+mtccOEFNDY1M2rseK678UZOPeP/ES8qxkbiSAMlzGxqmlwb0VYKDCPrRe4obNuhvLKSg6YeSmXVIObPmcuKFSt45613OOFb36KwqBAhwEFlPcxFznJuK69DfvthIK7ntlgPt+fotS9bRl/ZFsvYVs/tjlJGX9lRjluXMXDsKMetyxiY9belMja1zoBbpgQCAY4//niKi4s3Kwj1Bb+I5jaIp0yZQigU4t1332Xp0qVMnz6dzz//nKqqKgoLC5FSEggEemzDcRy6urqoq6vjwQcf5IorruCf//wnmUyGfffdl3vuuYcpU6Z4jWx/mX05jm3xodSfZXw9QpZCkhXBpRIIBRk7Q4eAhXWrKJERjhw2kXKjgzBdQIo6K83cNc2QcihKpymyUhwck+xeGiCc6aJIKMpKw+xaM5iWVQ3sUllJNBQkLRykmbv+A6SI7wx1xC8a5N9H/nvZ9RmPRYIEhYWwLCwb0oZJyghiBQOAg2GliJGhUKTYvaycfcoHMzIYh2SC9lQ7aTMFZoZYupO2F58gs3YVh02dym+v+A3BgIEwBAgJ+dd1C0Rx/z67keLxeJyXXnqJJUuWcNhhhzFixIgN1u/tnGzsXOR/Z2eoI19XGTv6ud0ey/AnzTRNk2984xuMGzfOsxpyB5o2t0/+2RZKKUaPHs3sDz/i888/Y/68j9lt992pqakhHAiS7k4TMgNYViZrZwQ9BHFXDHdnqQnAFIqQafDFZ59y7RWX8+kn8xk9agQ3/99NjBo9BscB6doxbcFxDzQ7ehlaEN++y9jS5Rt7b/b2416jSCTC2LFjOf7449ljjz1wHIfly5ezqraWF154nv+8+R8cpaipqSEUCbN8xUouuOACli5dyvBdxnLdjf/H1EO/iTRNMgpUNptuLhmvABSIXOQ6IBCYpoFl27lngGSvffamsrycObPnsHLlShoa6jls2jRC4Vw0txQoN0fLVl6HjbUt+pNtsR5uz531L1tGX9kWy9hWz+2OUkZf2VGOW5cxcOwox63LGJj1t6UyNrWOUAM0L18pRTqdxjAMbwqjED0zxPvX/bI3reM4ZDIZLMvi5Zdf5qqrrmLx4sXZKA/H4cADD2T8+PFUVFT06LgkEgmWLFnCe++9R2NjI1JKYrEYZ599Nr/4xS+oqqpCKdVDSN/UMfd2HP1xfFtb9ldRRn+W3bcyVO4/kU2A5igcqWhx0rSk0lQECzAabYJhi6bWtbw5922e/2AWH3yRoLXZQHYniUYC7DkozH6ThnDSt46murKabjOAIcN0SEmBLQgHJakQGCjCGAMiiOs6sn69Hus7KRQZEmmbdd0WrW1dON0WQRtMHJR0sKSDbQpIWgQJYJsRGoMh3q1v5P3aBhbVrSPZ0c3Ke35HtKuJJx99jCMPn4aQ4OSC1aWSCPdJKNisIJ6Pm3egvb2d448/nvfff58f/ehH/PGPfyQSiWQ3+yU7prqODFwZO/q53V7LUEphWZYXje0ud2d9mabpfWdT++RuQwiBZVmYpsmH73/A9085lWW1qxgydCiXX3MNRx13PNIMYDsCKcD2RK6e++S2aZRSGICBw8L5H3P1r/+bjz/6ECnhgfv+ysknn+zlB5DG5iPEd7Tr93WU0Z/3uP877rvJcRwuueQS7rjjDk488USeeeaZnjMGduBz+1WUMZDXz295mMlkkFKSTqeZMWMG/3jgQf49fTrpTBohJXvssQfHn3ACCxYt4JmnnyZeWMj/3Xk3U484GttRBAMBulPZXCJu00EBQoHA8XzAhRKkMxnC4TAZK0MoFMbKZDBti7/cfht//N0NKDvD7667lv/+1S+RhkApgZISKcRW+Vru6HWkv9bfkcroK9tiGdvqud1RyugrO8px6zIGjh3luHUZ2+8+bel3NrfOgAririeuG83ldmT7upNbgr8sx3FobW3l8ccf5+GHH2bWrFmYpumJVvkEg0EymQw1NTVMmzaNiy66iN12241gMOh1fHsT8rf0OLbFh1J/lvF1CVkKB4WDUAYogS3AVg5KZTCUQqUcZr3/Ef98/HH++cJrrGhcSYoOAhRidUcQqhMMhSPSBATEInEOmnoQxx97LMef9G0KK0oJWgrDllgBsExJmK3roGztce8oZWzpw2qD9RwbUGSEwELiOBlSHV0kWjtIdnbjIHCkwBIO0lAolUE5aQwZIEOQdKCA2tYEt91yB28+eh9jRw5l9kcfEgyZYEiUYQACQwmkI9aL4VshiLuDfzfddBOXX345w4YN4+WXX2bUqFGAFsQ3V4YWxHUZ/jJgvfe3v0xX0PazuXvLjeb2R5ajFB99OJvTzziDL5Yup6ComG+fchrn/eSnlFZVgGFi2Y737vcL4v5yu9pbmP70k/zppj+yds1qCgti3HDttZx//gUIYeCoXIJgufkIhh3p+m1rzxEtiG8fZfT39evtu7Zte39zZ3ukupPMnTOHP991F//81z/p6k5QVlFBa8s6jECAn//6V5x70aUkyfYH0ukMoWAA23Z8QRIOQq1vIyrICeMCJ7cfSmT/NVGkE11c+5vf8NQ/HmTibuN4/LFHGTtuHAgDJQSS7MBcX9nR60h/rb8jldFXtsUyttVzu6OU0Vd2lOPWZQwcO8px6zK2333a0u9sbh1zo3/pB5RSXlTWV3FjuoK7YRhUVFRw/vnn893vfpc5c+Ywa9YsPvnkExYsWOA1hIUQFBcXM2XKFPbaay8mT57MuHHjCIVCnnepu55m20U5uY6qzHZADEtR98UX/M/v/8Azr7xEY0Mj2DEKC6PsMnQwY8eMY8TI8QQKLFavqWPBp4tprmulvq6RF154hZdeepW/PPJ3Lv/1f3P01EOJySjSNhAGwPqkS2791vSNfEHJvyz/XnOkAY4g4CiCOCggWhQlFg+T6E7S0dpJpqObkGWRsW0sA2xys1HsNNFUC/tUFZFYMgthJfjuSScSCgRAZIdT+ms00C+UHXrooYRCIVatWkVtbS2jRo3a6DNwY+OR/u3p549mZ8Wt+67Y6DgOpml695L7s7lxfXcdN6o7uxD2mrwnD/7tb1z6818we85c/nb3X3j7zTf41vdOZtqRRzK4uppYLIYhDS/603EckqkU69Y189ab/+HJfzzIovkfk0p0MWbMaC7/9a84/bRTs/saMJFKkH1v6HfFNonK/9hzgcolKvEEceV4azjO+t+zbYLcF3IiqH9gNVt/9DP9q0aInsm83eeAO0gGYBgG0WiUAw8+mD332oszf/ADHn/yCZ546iksWzFm/C58+3unZmeMSAPbUUhpYDm2d4k3dUWFAKnAFiL7u5Q4jkUoFue8n/6Efz/9JIsXf87TTz3Lry//NeTmPiI3H4izKfLzJmk0Go1Go9FoejJggrgQYoMorgEKRgfotdEnhKCqqopjjjmGo446imQySSqVwrZt7zumaRKNRr1Otrsdd9+DweCA7bPmS6IEqGx0j5ASJ53BNExemvEKV15xBR/Pn48ZMKmpruH0007n4IMPZso39iYcDhONxRECMlaGrq4umhqbeX76C7z40ou89tqrzH37PX58xtmcduqp3HDdDURjMUxbgpTYvqjFr2KgZ0eht/vfPYcu+cKxyt2rSNejM4ByFEETggVhimJFdHV10dXRgdXZgcpkMKWJVBIkGFKibIelny9BGpKakSORoSCOYyMBicQTLtxHyFZcTn90YE1NDePHj2f27NnU1tZ6He+NzTJRSpHJZLx1XDsI/4Cc7tRqdjbyo779AviX2Zb7r23bGKbJfgfszwMP/o277voz99xzL0sWzeOm6+bz0N13ssv4XRk8eDDBSAQBKMfBtm3qGxpYtWoVny9aBI4iYJocf9yx/Paqq5g4cSKBQDDvntXviO0Jx1GeJY/jOJ4nNGQH4BUKaRiYAdMbqJHSAKWwbYVhZtsJ0sh9B7KiOgzIDDPNpvHfi+51zH8fOwKUcojFYxxxxBFUVlXx4N8fAiPI0d/6LoWVQ7GUa4kicEO3lRskkfsEAjuvfPf6S3JRSoDAwEYxfJexHHLMsbz87LPce9/f+NklPyMcCYFUKCW2aiDNP5vBFcV1G0Kj0Wg0Go1mQwY0QnxbwB9hFo1GiUQiPaJS8zvcmu0H73oJAIVQ8OADD3DxxReTTqeprKzkwgsv5Pzzz6e8vLxHhJD7XdMIUFRYTDxWwE9+ejE/Pu9HzJo1i1//+td89NFH3Hnnn/n008U88sgjlJaWAvRI5qYF8b7jni//OYSeM0r86yqVjdlTSkHOfiA7qKW8+zoWi1GYLCaRSNDW1kYqlcJxHILRKJZl09bWRryggNFjRufKy4rMfUmkuTncuhCJRLy60tzc7AnavdUVt7Pq2jN9+umnxONxqqure5wrjUbTv7gCkeM47LLLGG688UbOOussbrnlFl555RVWr15NY+NabMvOPhsUCCkRcr0wGi8s4IjDDufMM07nmP/6L2+G2kAO/msGFuUolO1kZwXYDoYhSacyrK5fzdzZc1iyZAkfz55LVXklDavr+d8/3MiIESPYd8p+VFZWEAyHUKjsoKs0IBcVDPp5vq1j2w4B08CxbeZ9/DFWxmbkuHF85/ungMzlGdnkrS361o5Q4CjFGWedxdsvzaA70c2niz5lz7335MtUFaUUjY2N1NXVMXHiRF3vNBqNRqPRaDbCDi2I+6N4/VOs8//u/+yKdLoBue2jVDaKy8lF7T3xxBNcdtllpNNp9txzT/7whz9w4IEHEggEPC/4fCHb/d31kQwGgxxwwAE8++yzXHfddfztb3/j9ddf56KLLuKOO+6gpKSkR53RUTd9J18s2iAqfCP3q1/AcgVmy7LIZDLe7A83Wq+pqYlVq1ZhWRZtbW1ZCxXDIBKJDJjVjT8Sy03Cm0wmN/ks8R9TMpnkD3/4AyNHjuSqq67yzoWuYxrNwODes663+MSJE7n99ttZs2YNs2fPZs6cubw7axbpTAaRs8QwTZPddpvAXpMnc+CBB1IzdCjRSHgD+yfN9kAvCmdO9RQC6usbeG3mqzz6+OPM+fhj2tra6O7uxrEdEFC/tpF33nufcDhMWWkZEyaM58wfnMlhh32TsrKy7ObE+gHfrFiam5Wk2bZQIKTAcbJtiNdeew0hBaN32YWK8jJsy0aJbKLL/sIwDWw7w4QJE4jH4zQ31PP666+z1z57ZSPPvTrTN4QQLF68mFtvvZW7777bG6DXaDQajUaj0fRkhxbE8zumvUVobu6zZvvgo48+4sorr6StrY3999+fO+64g9133937uz8xmj8K2RXIIXvtM5kMwWCQ8vJyrr/+eiorK/nDH/7Ak08+SUlJCTfffDOBQMBL0rolyVY1WfwDVNBTjLJte4Ofrq4uWlpaPDuRjo4OVq1axcqVK1m0aBGdnZ3Ytk0ymSSZTJJOp7PJsVIpEokELS0ttLW1EYvFvH2wLMsTmPszuj8/X4JlWQCEw+EtPjdSShKJBKlUqsdgjZ6FoNH0P+49m99OiEQijBo1itGjR3PCCSeQTmdyAqhyHREIh8KYARNXrRJi/YC661Gs2U7IC/sVSpDOZHjkgQe5/69/5ZP5C+hMdCGDQWLRKGWFRYwcM5qiwkKam5tZVVtLMpGgoamRprfX8dbbb7HHHpM4/4ILOOmkE4hFw1kRVTmAQGgv+W0UhRQSpRy6k0mWLFkCCgYNGoRhGjiGzFqY9BO2bSOUwlEORYWFDKqupnHNGurq6rJWJ0Jhml+urnR1dQHrkwlrNBqNRqPRaHoyYIK469Nt2za1tbVUV1cTCoUGqriNsqmI8M2tr9m2cUXDRCLB//zP/1BbW8vIkSO58847mTRpkie4+iP3DMPoIYC709tdMcOto1JKCgoKuPTSS2loaOCuu+7imWee4cQTT+SII47otyhAN6LZLTNfNO5tFkN+wkV3G36vab8wky+q5gus/vKBHv7VvZXbWyR3b8Kt4zgkEgk6OztJp9NYlkVXVxf19fUsX76cVatWkUql6O7upq2tjba2Nrq6ukin0ySTSdra2qivr6etrW2j58Jffv7+uvsYCATo7u4mkUhQX1/v7Vt/Rl77y7dtm+7uboQQXqT4psrzf9ed9ZBfL3WUuGZnxG+npJRi+fLllJSUUFJS8qXvC/97wD9TyH8/hoIhQsFQLlJToBwna4FB1j7FsW2ElFmnBO31v12SfeZaWXsTBGvq67nu2hv461//huMoDNNk2jHHcODhh7HffvsxZMgQTNNECOl5yq9aVcuH77/Pay++yOuvzOTdWe8zd948/j39X9xx+22UlBRjSIGT863XrCe/HdEbvQUw+L8PeIPr7u9bsn3/smxudoUhJO3t7VkxWcD43SYijQCW078D04ZhgBQIJbHSafacPJmPP3if2lW1KMfBCG59PdlYW0+j0Wg0Go1G05MBa5m7Pr/JZJJvfvObzJgxg7Fjx36ljbPeytKNwx0Ht/PzwAMPMHPmTCKRCJdffjkTJkzAsqwNEqVu7Nr7febzRZJoNMrvf/97ZsyYwbJly/jd737HoYceSjgc9ur41kTe5Eem92bt4wrT/v1en8Are0yWZfUQYvzieG/Cef658yd8tG3bOwduGbZtk0gk6OrqIpPJYFkW3d3drFu3jvr6etatW4dSis7OThoaGqivr6epqYlkMklHRweNjY20trZ6++X+60aB+0V7d1/818U9NsdxiMVi1NTUUFpaSmFhIaZpEgqFqKmpYfjw4RQXFxOLxQiHwxQUFFBRUUFlZSW2bTNt2jQWLlzI8uXLvf3oz86ivwPa2NjI8uXLAaipqfHqoGVZnkCef4y9dfRddGSXZmckP+GuUoobbriBAw88kHPOOWeDZ+jW0FsOkR7bcst3BXPDL3j7Put2xXaLymU8VMDCRZ9yxuln8snCRTiO4ogjj+ZH55/HhL0nEywuyr23LIQ0UCgEAhMYMWECo8aN59RTTuGjDz7kxhuuZ/YHH/DEE0+xZs0a/nr/fYwcPhwhDHdsZafG395x8dvZ+UVud3337/52il/o9j8P3IAcf9uvtxmjtm2TyWQTq3cnU1iZNB3tHSz94gvaOzpQtkNZWSmOYyOk6V3z/joHOFkP8VBu9gFAd6I7u89fcvv5gR8ajUaj0Wg0mg0ZMEHc3/jMF4E0mv5ACEFXVxf33Xcf6XSaE088kVNPPdUTwv1e01sjmLidiHg8zvXXX8+FF17IvHnzmDlzJscccwyw9R7ivSaO3EK/aH8H0D0+v/ANPX22U6kUmUyGdDpNJpPxbEVaW1tpa2vz/tba2kptbS1Lly5l6dKldHV1ed93I7wBMpkM3d3ddHR00N3d7e1Xb9FdUkpCoRCBQIBAIEAwGCQcDhMOhwkGgwAUFxczcuRIampqKC4uJhQKEY/HicfjFBQUUFBQgGEYhEIhiouLveS4rl+3m8jOjf7P72gDjBs3joULF/LGG29w2WWXDaiH+IIFC1i9ejWRSIRhw4Z5grfulGo0fcO9b1wRzE2W6x9IG9CobKF8ZhqK3hwThO//mu0NkftPsnx5LWed9UPmL1hEMBzm/J9ewun/7weUV1aSRpGxFbatMIwgQkgcx+7hPi4kWFLxjQMP5o77H+Dxh//BX26/nbfefo/zzruAO+/8EyNHjCSgJxFsMAvNn3ja/dwb/vvdXdfdlttWSaVSWJblzUhrbm72klt3dXWxbNkyPv30U5YvX04ymfRykFiWg2WlsTIZUNDU3AxAIpHIDWJk/cX7azBDIHBUVmCXQtDd3Y1EEAgGQArXnUmj0Wg0Go1GM4AMmCDuRnIApNNpAoGATjal6Xfmzp3L4sWLKSsr48wzzyQWi200QrqvuEK6ZVkcffTRjB07lg8//JDHH3+cI444whPev0yUsT8ifFP2KH7fbdcHO5PJ0NLSQiqV8jy0W1tbaWhoYPHixaxatQrHceju7qa9vZ3u7m4v+aQ/gjudTnvlbSpK2/3s/iulJBwOo5SirKyMXXbZhZEjR1JWVkYgEMAwDAoKCqiurqasrIxgMEgkEqGoqMiL5jYMwxO0XXE7/9j9+wI9O8D+hHj+KHP3+eOK5AcffDD/+te/eP/996mtrWX48OFbfc02dS3T6TSPPfYYSikOOOAAhg0bpp97Gs1WIITANE3vfncHnEyf5cRA31sq7/fenvRauNq+sW1FKpXhqquu5uO584gXlXDRpZdx7gUXoqSk27KR0sRQBlIYOJaDAgyxfoDTrSdKgoWgfNBgfnzxTykqLuW6K37Da2+8xeVX/JaHHnwQHR9CD0sw2NAaCfBmkvnbYY2Njd5stY6ODlavXs2nn35KbW0t6XSajo4O2tvbvTZOIpGgtbWVpqYmb0Af2KBtmG1/GIDCkJKAGcjmLhGwcOFCjvu2ytolDcSdLsCybZYuXYpCUVlR6StHP100Go1Go9FoBpIBNTM0TdNLEJdOp7W/pqZfsSyLZ599FsuyqK6uZurUqT3sMFzLj62doeB2xkzTpLi4mDPOOIPZs2czY8YMWlpaqKio2Op9dztjyWSSzs5Ozzvbsiw6OztZvXo1y5Yto729HYDW1lbq6+tpbm72xO3Ozk7vM7BBtDj0HAjIF4/8npuGYVBSUsLIkSMZNGgQxcXFXlT28OHDGTFiBMXFxZimSSwWo6ioiPLycoqKirxz5HZy/WXnl9+bR3q+B3lvgxnudXXFc39n2h957X/GGIbhfe+kk07i1ltvZdWqVdx///1cffXVPYS1L4sr1n3wwQe89dZbAHznO98hHo97+63tmjSaLSf/WeI+39wBPHe59snVbDW5KnbPPffyyMOPIgJBzrvoYs7+8Xk4hsQRBraZiyLPZO3JTJH9nPVa8b3fBCjDQAFpy8I0Q/zw/PNJdHZw6x//l+enT+fPd9/NJRdftNPPFurq6qK1tdUboHfF7aVLl9LR0UEikaCxsZGmpiaam5tpbW2lvb2dxsZGMpnMBkI6sMEguX85ZNsGxcXFjBo1iurqaoqLi5FSUlJSwoQJExg0eDCxaIxwKEhBvIBLf/5zXn55Jg11q8hk0khhIE1jvY1Sn8gfWgMEuSSeinQqxeeLF6OA6qHV2SSsqGyl0o82jUaj0Wg0mgFjQAVxf3SHRtOfuAkbP/nkExzHYb/99qOoqKiHtyR8Obsed1aDW38nT55MYWEhzc3N1NXVUV5ejlLK89j2T9Xt7OykqamJpqYmb/m6detYuXIlixcvZsWKFViWhVLK+467z5Zl9Zj6uync5J+hUIhgMOjZjUSjUWKxGAAlJSWMGTOG6upqSktLvUjtgoICSkpKiMViSCkJBAJEo1GCwSCBQKBHRzJf0N1Ygkt3fdhQgPdvL//v+cns/Ov7v5P/t009W/z7XFNTw9FHH829997Lrbfeyumnn87YsWO96HK/L/uWDNyl02mCwSCZTMbb90wmw5133smaNWuoqqripJNOwjRNr4Pe277atr2BLYS73D8woJ+hmp0V//3jzvrY1EyS/iX/vtP34faO/znr2A6fL17Mn/98B5iSY79zIqeecxbSMHAsBdLCkLkBWyPrHq1y/2XxvQMBbEAIpBnExqatO8lZ55/PgoWfMP3pJ7nmt1dx4vHHMXz48B6zHvKTIOYngcxf5n8/5A8ou+u729sYvUVou9/157XoLa+JP/AgkUiQSCS89kp3dzd1dXWeeN3V1UVdXR2ffPIJS5cuJZlMYts2lmV57z/Hcbxk2m5eFP/+uPsSDAYpKSkhFAoRjUaJx+MUFhZ6OV122WUXRo8eTVlZGfF4nEgkQnFxMeXl5RiG4bV9wuFwLjGq8CLEHSVAOVkxWtmc9K3jePXVmSxfupTO1lbKB0fJWLn3uP8xoAAcb5kCFDL3MTdjLVdPhLsuEguBcBxCQvD5wkV0d7ZRXlbC1IMPQgi3DbJ1zxt3dm6+vZ5Go9FoNBqNpicDKoj7hS/dGNN8WfI7fK2trbz33nsIIZg2bVqPiOT+EBDzBcnhw4czbNgw5s2bxw033EAqlcK2bVKplGdHYlkW6XSadDpNV1cX7e3tvUY0uds1DMPz1jZN0xNH4/E4ZWVl3j5UVlYybtw4hg4d6nUAXfF78ODBxGIxQqEQ4XCYeDxOLBYjEon0iKJ2hSS3Q+12xPMjuftyfrb0c2+i7uY+b2zZpgTijW3TMAzOO+88Xn75ZZYvX84111zDbbfdRllZmXcubNveoqhxv4DtigSO4/DII4/w3HPPEQwGOe+88ygrK9tsQtf8YyopKaGgoMDrwPY2UKDR7Azki2L5z/avYpAoP4FefyXU03w99CYCP/HYY3z++RKiZSX86CcXU1BSjLLc+uW+r7dk2yAFKJGVP5WQBEJhsATnnP9jPvrgPepXrODpp5/m4osvJhgM9rAK2dSMKlcQdiOfe8uNkj+Tyh8xvbF3iLttV9x2E2cnk0nPbq25uZmuri4cx6GtrY0VK1bw2WefUVtb6/lvdw1Clr0AACAASURBVHd309XV5Q3mt7a20tnZ6W07HzeniDuzzDRN4vE4paWl3iD/uHHjGDFiBBUVFYRCISKRCJWVlVRUVHiD/yUlJZ7w7Z9Blt/fcN/Z+YMMPU8GOJZAyqy39557TkIIwRdLPmfe3I85pHwwQkpUDzsT19Qkb1vC94vy5SEQoHKJCBQQMATCtnn5xRfp6uyketAgdt9jj2xlUmKL6l1vuG3Lqqoqr42i+2AajUaj0Wg0GzKgSTXzPYF1pKPmy+LvzLg+kq6HtWVZXqLGgaC0tJTy8nIAZs2axdq1azfa4XNxO7lSSoYOHcrYsWN7TNeNx+NUV1czePBgCgsLCQQCPZJJuj7bbhRTvo1IfpSY3wIlP8rMv0+u+O7ej/6O9o7K7rvvzkUXXcQvfvELnnrqKYYPH85VV11FLBbrMUCwOVzx3P95/vz5XH311SSTSaZOncpFF13UowO+qUEHd/q8EII777wTWH89MpmMTkqs0Wg0/YRfEG9paeHxJ59ASMG3Tvo2Y3fdNZfo0PBJnK53dN/argJwHBtTSvbcczIHHHgwz9at5rHHH+O0005j0KBBPZ79/kTY/nc7rBfA/XYgfjHbXZ4/+8of5d3V1UVLSwvt7e2e37Yrbre2tpJOp1m7di2tra2enUlrayvr1q3z3nf5Awr5Eeq9netBgwax6667MmrUKIqKigCorq6murqaqqoqotEo4XCYgoICBg0aRDAY9I7FnxvEPwjtP05/W8iPf3/cd/GmsG0Hw8gluhSCcePHc/BBB/HGf97hoQcf4ICph2KEoyjhayP1EL69kn1Cdjaa3PGHjwuQCAwcsBQt69bxxOOPYmUyHHDAAdlBeicXqf4lBuCmTJnCnnvuSTAY3KHbdRqNRqPRaDRfhgFNquk2SHV0gqY/cTs/qVQKpRShUMiLMhrIqaGurYhhGJSVlXHIIYf0SChZU1Pj+Wy7U3VLS0uJRCLePgcCgR4DRS69RYfldzjdfXBxE8751/N3FN1IcL/47d9ufuTYzjBYde6557JixQruuusubrnlFhoaGrjllluIx+Pe1O3NCdCuIOEm/Xr99de56KKLqK+vp7q6muuuu47S0tItiuz2pu47DuFw2IvmchO29hYJqNFoNJqtwz9Q/J///Ic1a+qJROOcfsaZGDJAxrYxhJGzt3C/tIXb9tmpZH3GJaCwHTjn3B/xr6efYu7HHzN37lyOPPLIjdqL+WdyQU8RXynFunXraGtr82xKWltbqa2tZc2aNdi2TVdXF0uXLmXJkiUsWLCgRxS4/xy477D8ZNr576XS0lLPoqSoqMizWguHw4wYMYKxY8d6kdzu7LaioiLvXeoK//5BZ/+Acf5+uXZ1/naPG/Xsv475/7rH5G7bn2R7c+9jQXYmgFIghKSooJALLryAN/7zNh/Oeo8Zz0/nW9/7PmnHyU0ZWB/pvUGMuPIn4MytK0AhvBoSALAt/vG3v9KwejU1Q4dy6aU/y7ZhhcCxFdLYuve+e77c9qZGo9FoNBqNpncG1DLFFZhGjx6tp/1rvjT5SRddD0i/D2V/Nv79ddaNUnK9L3fffXfuu+++Hv7aW2LZku8RuqkyN7c9f0RZbwK6P6p8Y/ZF+R3tHV14jcVi/OY3v6GhoYHnnnuOv//973R0dHDllVcyYcIEQqHQ5jvOuY52U1MTd955J/fffz8NDQ1UVlZy++23s88+++A4Tg/7FX8EYD7+8+6/pu6gRb5YodHsrIwZM8abpaPRbA3+Z+vCRYtobe9g8NBhjBqzS84C3P+MVj1kzc1uW5A1ilYia3khwbIUAWkypGY4Eybtwcfvv8+CBQs4/PDDSaVSJJNJ7yeTyXjJIzs6OrAsi7a2NlauXMn8+fO9WWnu9zKZDLZtk8lkSCQSnj93Pq7IHI/HCYfDnlVbJBLxAgqKioqYMGECw4YNo7Ky0hvYr6iooLS0FNM0CYfDhMNhotGo1/7amPVa/mw2V9Duzevcv59+z2u/qO3flltWfiQ9sMFMui2xZgOyVimOwpC5qHzT5JhjjmXfffflvVnvc9Pvf8euu+/OiF3HZUVzZF6tcOuNnfMMXx9tLshuW8hsJLkEpGMz8+UZ3HvHn1BKcdzxxzJhtwnuTiLElln19Ia/HWhZlp5lptFoNBqNRrMRBtxDPBaLMXPmzC2asqjRbIp8P2Y38aNt26TT6X4XdPPF6VQqRSKRAGD48OGEQqEe+7UlbKwjuDlbjb5sa2PLNuXlvzPcm24Hu6KigptuuomCggIeeOABnn32WebNm8eZZ57J6aefzpAhQ7xkmO73lFKkUikMw6C5uZl3332Xm2++mVmzZuE4DlVVVTzwwAMcdNBBXnQ3bDoxqPv3zZ17f1ScRrMz4t471157bQ+BTA+0a/qKf2bUvHkf4yjB/gcdTDgSJalASDMb4MsWB4ZnEblBZX+0sA1ZjwxBOBZj2LARfDxrFs888wwffvghtm3T0tJCa2url28kkUjQ2trq5R7x13F3gDR/ppkrTLuJtCsqKth9990ZOXIklZWVSCkpKSmhpqaG8vJygsEg4XCYwsJCCgoKCAaDG8wy+7JtgnyROn/5xkTr/HZcfhS9/z26sXdjvq1L/v70hhRe6kt3I0gpufLKK/jBD86ifnUdv738V9x+z72UlpVlo8CFyBrqCAPHsRHSwLJsDAlSgiElCoWdyWAYWY9y0zRQtsWShYu4+cYb6ezsZML4cVx66aVEImFcYV2AZ7HSV/znVLcfNBqNRqPRaDbOgFqm9FXg02j6QmFhIZMmTWLu3LnMmTOHI488sl+37069hWzHauXKlSxfvhzTNJk2bVq/lqX5anCj56qqqrjtttvYe++9ufLKK1m6dCnXXHMN11xzDcceeyx77bUX++67L6WlpTiOg2VZLFiwgDlz5vDYY4/R2dnpRbx9//vf59prr2XYsGEYhqF9vzWaAcKd9eKyM8xq0fQ/rrja0LAWEFRXD0OaAZSTnW1mYuB5pmz1mItAoBAim4jRMIOUDx4CUvL5558zf/58b4A9P4dHNBqlvLycWCxGcXExFRUVVFVVEY/HCYVCjBw5ktGjR1NcXEw4HCYWi1FYWEhxcXEPexK3DdOb97f7uz8Jp//c7NwIQBIKhTj8iMP47dVX8rNLL2POrHf50WmncMfdd1M9bDggMaRB2s4gDIN0uptgKISy7az1mcjWgUgg2y4ImQaOnWL+nHlcdM7ZNKyqJRwKcO89dzNyxPCv+6A1Go1Go9FodjoGNELcHwGiG9ma/iYejzNp0iTmz5/P888/zyWXXEIkEum37fsjyWzb5pNPPqG+vp5YLMbIkSOBnSOyekfC750eCAQ4++yzOfTQQ7nnnnt46aWX+PTTT5k+fTovvPCCNy3cFQ2SySSWZeE4DpWVlYwbN44rr7ySvffem2g0im3bBAKBHhHiGo2m/8iP9tTPX01f8duWZQVpiRkMkslYGMEAlpWXhNpTxDdd1zZ44isACSqbXFMJQTgUQgDBYJApU6ZQUlLCxIkTqampobS0lGAwSDwep7i42BO/3fwooVBog+jt/Pq/Kdu4fAs43T7fPLZtYxoGZ55xBmsb6rnl1ttZMGc2P/jeyfzqyqs49LDDkMEQ0jRxsDFDBrZjIRyBaQZQVgZUdkA9YEBL41r++cwz3PZ//0d7cytDq6v54x9vZJ+9995qexSNRqPRaDQazdYzoII46AguzcARDAaZNm0a//jHP1i1ahVffPEFEyZM6LcpovkdyFdffZX/z96Zx1dVnP//c7abm9yQkJCFVYggm0W2qgXqVhSpRejiWkGtws+lQq1aRVpb26q1VotrrSK2uKHFr4AKakUQXNh3BSkoW0gIW7abu55z5vdHnGHuyTk3N5CN8LxfL0hy75zZzpwzz/PMM8/Yto0hQ4agY8eO4nMa3ycOckxuHsapV69e+POf/4xJkyZh2bJlePPNN7Fz507hvcfvcW5uLrKzs/HjH/8Y559/PgYNGgS/3w9d1xGNRpGWluYa05QgiMZDfrbIq5VoKPJBjrquAWCwGKBoKizThqJpYBYT0SoaFjbF8TfjhzQCUFXEzDgYFBQWFuLVV19FZmama2xtjjxXiSy/TWeapvhONpDLsbV5erndzvAkyUKpnbQoALOZ8LDPzAxg6j13IzMjE39/bDp27diOu2+fgh9cPApXjJ+AU/v0Q3pWOxh+P1RVhabqsE2r9ubbFsoPHcCqFZ/htZdnYePatYjHYuhZ1BN/eehBjBn7o9rQKsw+GoacXmcEQRAEQRDNQpMZxGUF1bIsMhIRjY6iKLjooovg8/mwZ88evPbaa/jLX/7iOt6OZ+xZloWvvvoK7733Hnw+H0aNGiU8guWDE4nWDVf65UO3uIE8PT0dffr0QZ8+fTBx4kSEw2Hs378fpmkKg0VWVhYKCwuFsUH2xktPT08wRKRqoHMeZuocu7x+ZLAgTkbk5yOZwZBkCyJV5DGTnhGAogLRcA1UBhiajrgFMEWBxVhtyJOUrZPKt0dw8n+17/M0nwLbVsGsGOKRGBRVQWZmZkJYLWecbPn97/Y5ANdzeeTr+Lwlz0fyrjevA56JWhRFgc/n+/a9o8Hvz8Ddd9+NgYMG4f7778fKlSsx/805mP/m/6FXv74YeuaZGDh0KDp36gJd1QAGbPtqKzasXYNVyz9DWdl+MNuCoesYPXo0Hn/scZx6au1OQwYGTW1cWdI0TREKhxY9CIIgCIIg3GlSax43DslCOEE0JoWFhbjlllvw5JNP4rnnnsNll12GgQMHivAVlmUds8e4ZVnCIDl16lSUlZWhS5cumDBhglA2iRMTrwO/+HeBQAA9e/Z0vVY2rHOcRoaGGuhs24ZlWSgtLYXf70dOTg50XRcGcoI42XDKDPw5kA/VlD8niPpwHuR4SreuYMzG1q1fgpkWbEsBFA1MUwHl2zDiqR5syFCbUFFgK7VHa+ppBiKRMNJ9GqyYiZK9ewHbxplnnikO5XY7cNKJm+G7vsO0U/nd6/qTUl5XEn/WDUujwrIsjBw5EsOGDcOcOXPwr3/9C6tXr8Y3W77E9s2bMGfWv8X95B78fEE7p317DBs2DNdffz3GjRsHXdePluEcYI3wSguHwygpKUH37t3pTBOCIAiCIAgPmtQgzo1D8vZNgmhsrrvuOixcuBA7duzAX/7yFzz99NPIy8sT3r3ygVENgXv8LliwAB999BEyMzMxceJEdOnSBbZt1x6+RR7ixHEgG7wty8IDDzyAoqIi3HPPPS1cM4JoHcghLpzvcpItiIbgNPQOHDgQuj4bG9euQVVFObLyOwJMgbzkkmrYlG9NyQCU2sgXCsCYDZ9hwLbiqDhyGDu/3gEA6N+/PwAcs2xCtByKUuvhf8MNN2Ds2LHYuHEj3nnnHaxZswaVlZWwLEs4TBiGgQ4dOuDcc8/FuHHj0KNHDxEmpylhjGHz5s14+umn8cwzz5BBnCAIgiAIwoMmP1STe4jT1maiKVBVFf369cOUKVNwxx13YO7cuejUqRP+/Oc/IzMzE6qqHvNWUUVR8PHHH2PKlCmwLAtDhgzBzTffLMa1ZVmN3BriZMO5g6a8vBzt27cXxr+T0lOPIFDXI5w/D/z9y58dgkgVZzirYcOGoUOHXByprMba1Svxg4t/BAXfygzfiqqM/1ef6Mot5+KC2p+2ZSIjzcC61Svx9Y7tCKRnoF+/fo3bMKJZ4O8dPoby8vJw3nnnYeTIkYjFYjhy5Aii0Shs2wZjDFlZWcjOzq6NK/6t53hzzemMMRw+fFjUmyAIgiAIgqhLk2qTiqIgGo1i//79iEajJJQRjQ73xLnmmmtw0003AQCeeeYZ3H333Th8+HCD4jk7ef/993H99ddj//796N69O5566ink5uaK73Vdr7N9nyAagqrWbsPmXmXxeFx4jfNxS0Zx4mSH79YpLy9HMBgE4B5XmSCSwRfI+YL2d77zHfTo0R3xWAT/emEGouEaaIoNBRaEn7iifHsqZmocjSJuA7YFQ1NQeeQgXn15FmBbGD58GPr163dcsgnRMvD3EP9dRtd1dOzYEd26dUOPHj3Qq1cv5OfnwzAMsZjXnCFpuMMGX0QkCIIgCIIg6tKkBnHbthGNRnHeeedh165dTVkUcZKTmZmJqVOnYsKECUhPT8dLL72EG2+8EcuXL4dpmrAsC9FoVBgcGWMibrPz79LSUjz88MO44YYbUFpais6dO2PWrFno168fDMMQXkJ0UCzRGGiaJow0/BA0OX4pjTHiZEY+FO6ee+7B/PnzxecEcaxomoaMjAxMmTwZgfR0rPz0E3y2bAkUy4RimwBjYMwGlNTOCqkdowpsVhs7WoUNRbGhqQwffvA+Vq9YDjALEyfeiKysLGFcpUX1Ews+XwO1Cyzc4K3ruvAEl88S4TtZ5M+a+vwZp9xAO2kIgiAIgiDcaTIpSRbGwuEwxVommgTu+WLbNvLz8/G3v/0Nl19+OVRVxQcffICf/vSnePDBB7F27VrU1NSIuOJOj5lwOIx9+/bh1VdfxfXXX49p06ahoqIC/fv3x7/+9S8MGzasjpGSjJXE8eI2jtz+JoiTFfm9GwwGEYvF6P1LHDPO+fuiC0fi+yNGgDELzzwxHcV7dsJQFdiWCVVVYZrxlGKIM8ZqD+JWFIBZsMw4NIVhz66d+OczT8OMR/CD88/DxRdfnOBlTMbKE4dUZD+v+dztX3PWmSAIgiAIgqhLk8cQd/udIBoDOZ4s97jJycnB9OnTccYZZ+DRRx/FoUOH8Kc//QkPP/wwfvjDH2LEiBHo3r272MpaXV2N3bt3Y+3atfj000/x1VdfgTEGXddx1VVX4c4770T//v0TtrsSBEEQBHHik5Obg2n33oNPPl2GjevW4k9/uA9/f/ofCLTPhcUAXVfBbFZv2BQehkX36bBiJgxdRzwawe9/ey+2b/0S7bPaYfKUWxEIZEBVtdq05ChCEARBEARBEC1Gk0rjfOsgGROJpkA+dJCHO9F1HdnZ2bjttttw1VVXYerUqVi5ciV27NiBd999FwsWLBAhUtxi0GZnZ+OCCy7AL37xC4wePRqapomwKoZhtEg7CYIgCIJobBg0RcVZZ34XDz34AO65dxoWf/A+br3xBkx/fgaycvJg29+Gu0jBqUNXVdjfngFRvG8f7r3zDiz/eBEyAwFMu3cqxo65FAy1oVIMw0hY1CcIgiAIgiAIonlpcg9xLuyTwE80FfxgQp/PBwAwTROapqGgoAAvvPAC9u7di+XLl2P+/PnYtWsXwuEwotEoGGPw+Xzw+XzIz8/H97//fVx88cXo3bs3srOzxZjVNK3JYz4SJye2bYuFHXmRxrZtETuZ3p3EyQh/HnhICf5McPjf9HwQxwNTAJ8/DZMmTcKuvcV4/vkZ+PzjJZgyaSKm3Hk3hgwZAjUtDZbKx5kCBQAUBcz+doxqKhRmIU1TEawO4qstW/DA73+PjWtXId2fhl/eegsmTZr07VitzYcfnkwQjY0zLj3JEQRBEARBEO40mUFcDpGiaRps2yahjGh0uKFa3nrs9OQuKipCjx49cOWVV6KqqgqhUAg1NTWIx+PIzMxEenq6+MkPN5ShcUs0FYwxmKYpjN/Z2dnIz88Xux3Ig5A42eELnM5nAjhqVKQ4zMSxoYAfpePz+fH7392HzPQMPPbY37F62RJM2bwRP7vsMlzxixvQsWcvaLoOy4xDVTUwxmDoOmwbYLAQDVWhbN9evPLSS5g/dx4O7N8Pf7ofv502FbfcfDMCgSwA6rfjld7nRNPBZQbu2GHbNjl1EARBEARBuNCkHuKmaYqfmqZRHHGiReAeuKqqon379mjfvr1QDhhjCZ6G3DDJIUMk0ZTIBwb6/X5Mnz4duq5/e5ibKQyABHGywo3d/NBCINFbnGQLojHQNA3tMjPxu9/9Dr1798bvf/977N69GzNnPI/X3vgPhl3wA/Tp0weDBg9Gjx5F8KelIRQOYdeuXdiwZg2++XoHVn7yMSorKsAYwxlnDMAdd9yBq668EmD49p1uQTcobjjR9Jx99tn45z//iYyMDHo/EgRBEARBeNBkkrkcCkDXdZimSV5cRItgWVZCLHvZCO7cds8VB/LKJZoTPg7lXQq6rov3KEGcrHCPcB66iv+T39UEcaxwOYAvmmuahiuuuALnnXceHnvsMXz00UfY+tX/sGjefCwCYKSlwWcYUFQVzLYRj8cRi8UAZkE1VHTv0QPjxo7F5MmT0bVLV+jf7m7gC5wE0dRwmbZdu3YkxxIEQRAEQSShyaRzVVWFkaegoEB4OpJwRjQ3bgZFPhad31HcZqI5cYZE4QcRc+MJGcOJkx3+bJimiYKCAvh8PhEjl97XxPEiLzrKi+VdunTBI488gl27duHjjz/GksVLsWnjRlQHg6iqqoIdM6HpGvIL8pGWloaBgwbh/JHn4YLzL0C3rl3h9/uFsZ0vclLoCqK5oPciQRAEQRBE/SisidyruMLKGEN5eTnat28PVVWTGiebkpYsg9rXsmU4FV7ZU9yZ58l4/5qjjNY+Ro6XYy1bNuzJP7lhRo5pT2Ok6cpo6317opbh9AIvLy9Heno60tPT61zT0Do1tB1trW/bahnH8rn8nTzuZNnBjJmoqKzEwQMHsHvPHlRVViI7Oxtdu3ZF586dEQgEoBoadFUDFAiPc693fGO3uzE5ke7fsZTRWOmbq4yG4nYod2OX2RrHYWu9f61xjLTGMlpr37aVMhpKW2k3ldF0tJV2Uxknbp1Svaa+NE3qIc7Jy8sTlSGI5kYei3J4FOeDQeOTaG68PMAVRSFPQuKkx/muzs3N9TSWEcSxIMsE8mcAxIIkA6ClGehQkIcOBXno+53+dfNhAJwGSOb9jieIpoKPafIQJwiCIAiCSA4FNCQIgiAIgiAID1JZcnE1P7LaL1h96QiCIAiCIAiCaFbIIE4QBEEQBEEQbjCgXj9vBrJ6EwRBEARBEMQJBBnECYIgCIIgCMIFBUjJRZwC9xAEQRAEQRDEiUOTGsRt206I7emMaccPjpO/s227Tuxc0zTFdzweozMNz8c0Tei6DsuyYBhGQhrGGOLxOHRdTzhIyZmXZVkiPS/LK940r5NcN2edeHp+yJKzDxhjot5efcDT8M8ZY64xhi3LEu2SD+WT41palgVVVeukkw/iccbd5uUDR+NqusXGtCxL5O8s29kv8oFpul53KMr15HWUy2SMwbIsaJomvnfWnefD2837zC0Nv5bfE+d9d9Zb7gsZ3k+874C645WPMV6enFZOw++JfP+cfcD7xxn31JkX70+en7MPeF7ygXZu45D/4/nqul4nr3g8Xufeuz1D8gFmXmNKLpend45Vt7yd49xZB56P873i1ncAEp5Lt77j5TnHP8ftfSiPNcuyUFVVBVVV0a5dO5Gv12HEBHEywuUBIPGZdIsjzuc1+d3O5zz53SNfz+cJ0zTh8/k838s8f7f3j5y/PLe7vafk9ymQOFfIcx9/18rzmLNOvL28PGedZDnESx4xTVOUx8vxmr/kg/u85l3n4cBu72D5/e6UyZx95CX7cPmIl5tsXnDOqW73WJaVtG8PykzsTws2YwADNE0FoMCGDYUnlIfjt78rqgowBlu6B26yozwWed2cMpLcFn6vvOQDp/yZbI7zkrFl2ZLjJc86x6ITZ/+63VM+LuTn1UsekUmmZ8hjMZkMyK/z0jOcMptXH/C6O3UROZ3cp17jQJZT3OrkJltEIhGEQiFx7gKdSUIQBEEQBFGXJrOyyMY84KjQJv+TBTjbtoVQXqeSkpFSFtyd/4CjBi1N01wVZF3XEY/HhVItG8XkfICjgrVbPk4h2ysvOU834Z1/zhVwbkx1Xs+/k8t14jQUuBnRZAHbafx2Gg9lwV5WVvl39d0vrmC43XfeFq+Df5x95ta/vO7yAobXIUJOQ7mzTlwx438ny0fuf697ncy4y5ENosnGofydF84FDbc+l429yca0c2y75SWPGbd68THA77Nb22VFV14YcKsTv0bGWVe3Mpx5uJHsO2eb5GcwWZ+4tUWul2zc4T+j0Sjuu+8+PP/88wllJsuLIE4m+PzI3/VeRh557nb+nux5dxrFvYzs/J0Vj8cRj8dd3wd8EdKrjk4ZSP5czocbDhVFSZjjveDvKbc5LpU+cC4w8/TyP/n9nWye4/Oq3F6vec4pfziR5RW3fGRngmTyCc+fv8u93ueyDGIzu9YgLv2zuZFZU8EAmJbpWp48fylIXAiW575kxmu3tsh9pSgKYrGYKM8pYzvlOre85HvgzIe3wSlD1ZcPl8+8ng++gOEGrzNfoHGrk1N+SobzfeElt8XjcfG7G7J86NVXzsUdt7rF4/GE58trHMrjxC0feQzIabds2YJ7770XVVVVJEMQBEEQBEF40GQe4rLwxoVMwzDqCGbJvHk4To+T+oy9XIB2y4+n4YK4m8FJVkjka9zaKHsouylz3BBZn0Aqe6O4tU9VVei6nqCkJfMQd5bp9B6RP+cKtGwwle+drGzI99XrHsieP7JCzJEVatM0Pb1nZEHfS/mSFQX+09kvsvLudR80TUM8Hhcef17p5MULeaeBs328/52GeGed3Lzx3MqTPcCcyPdDflbc8Frg4d/xMmUl3c37SfY292ofUNuvXs9YffVxlim3j/9d3+IFcNRAJNeLf68oCgzDSPB4dBs/8lhzq7N8D7wWeWRvVXkxQB5D+/fvR2ZmJuLxOHw+HymyBCHB35Ve7w35c6dBXJ53gLoLqPI7S16ocyI/t5qmuc7vbgZG5ztBnpP4nOImP8hG02TGcNlo6DbvAkcN1NzT3A25nGTvV7kNXvWR5RW+O8/tHcznTK/7Kr/z+Rzg1lf1LbDydIwxGIYh+txZJ+DookiyuVTeTeCVTr4vyersbK+8kOMlG8hjPC0tzXMc2rYt5JVk8gj/8p3+2wAAIABJREFU3U2ucc7D9Xkcy8Z4r7p7jUH5Olm+c6uTLG8my0t+7r1kdcZqdyvKuzHd0sie+24yEq+317MPQMjzyRYqAAjdCajrtc+v44sO8jMUi8VQUlIi6kIQBEEQBEHUpckM4lwRisfj+Oyzz7By5UpXb1EuDH73u9/FRRddlNTQvXz5cixdutRVWOf59O3bF2PHjhWfuQmiK1aswMcff+xpUFMUBf369cOYMWNcjbW8fbt378Ybb7yREI5CRtM05Ofn47rrroOu654KREVFBWbOnIlIJFLHMM3Jz8/Htdde66r0yPn861//QiQSEcqnE16ftLQ0T4Wguroazz33HKLRaB0DuW3Xbv/Mzs7G+PHjkZOT45qHYRioqanBs88+i0gkkpCGKzCGYSAQCODqq69GYWFhnb7jir1t23jqqacQDofrtJ0bDrOzs3HZZZfVyYdj27Ve9q+//jp27tzpOs40TYNhGPjZz36G7t271/meKxqWZWHBggXYunWrWICQ4YrQmDFj0K9fP/h8Ptf6KIqCuXPn4n//+5+ncqgoCkaNGoXvfve7noqcqqp47733sHbtWpG329bbCy64AMOHDxf3x61On3zyCZYvXy52UbgZMM4//3ycc845CYsmTlauXIkPP/xQGJhjsViCgs8Yw8iRI0V9vBS29evXY8GCBQnKv9xGxhgGDRqEcePG1WmL/Pv27dvx7rvvIhqNJnwuG7CzsrIwefJk13vAn8tt27Zh/vz5CWFxeL/wfsjOzsYNN9yAzMzMOmm4AaS0tBSzZ89GJBIRBrV4PI5t27ahqKhIGMPr88AkiJOJI0eO4JVXXkEoFEI0GhVznLwQmp6ejsmTJye8d52Lw5FIBDNnzkRFRQWAxIV5buAMBAKYMmVKnfc3T6tpGoLBIGbNmoXy8vI6deXPrt/vxw033IAOHTrUScPfGeFwGDNnzkRVVVWdeYDPcX6/H1dccQW6dOni+n7n74sZM2agurpaeLrK8Pc5n5vc4O/9f/zjH6isrPT0StV1HWPGjEHfvn0BuBvrFEXB+++/j7Vr14p+dX5v2zYuvvhinHnmmbAsC2lpaXXSaJqGTz/9FB9//LHnPKjrOkaMGIERI0Z41se2baxYsQKLFi0SuwXd0p199tm46KKLhNzgJkutWbMG//3vf2FZFnw+n/D4lReThwwZgksuuURc4/QWtm0bmzdvxttvv10nfz7nqKqKvn374vLLL6+TRg69tnnzZsybN89VruPG8F69euGKK65wlSF4vfbt24c33ngD4XA4IQ2/V6qqomPHjrj22mvrPBvy/F5WVoY5c+agqqqqTr25gd4wDEyZMgV+v79OGr6QXVFRgTfeeAPV1dV1xg9Qe991XcdNN92EjIwMzxCH1dXVeOmll4THtHNc27aNtLQ03HzzzcjMzHR1rlBVFaFQCK+99hoOHDjgaYjXdR2TJk1C+/btPZ1zwuEwXn31VRw6dEjI2s68fD4ffvGLXyA/P99zccq2bbz88ssoLS0V4ysej2Pv3r0JuyAIgiAIgiCIujSZQZwLblzpqKys9PR+Mk1TGMzc4EqBZVkIh8MJ3hlyXtyoxJU1r3ppmoZQKOTpSWTbNmKxmKdHLq+TbdsJ2xGdBnhuZHOL5+ksr7y8PEEBctYpGAzCMIyk8VIty8KRI0dEv8oGbZ4+IyNDxEaVlUpn3MlgMIhoNFrHS15RarfmcmO1E97vXAmLRCJ1FCueFzdwuync/DPurVNdXZ3QHp4PF/6TeVLxtJqmobq6GqFQyDUWpaqqCV5jbnClvqamBpWVlZ5eeHKZbnnx8ROJRBAMBl2NwrwPuPeZl4cgN/AEg8EEb3IZbuDm33sZWiORiDAS8WdThj+rchlu9YpEIqipqRHfy/Xniwp8XNS35Z4vFPF0sne6aZoIhUJ1rnNuQ1cURRjR5H6TPUgDgYBrW3jsXsaYuPduyjQvNzMzM+n7h/cBN1rJ43bMmDE4//zzE4z1ZBAniFosyxJzJX/3O3eM8GfKiWys43NKMBisExqEP3P8PedEnqMVRUFlZaXrHMfrxUNZuCF7pUejUdTU1NQx3luWhXg8jkgk4vne5gZGXl83eYvn57ZAK2MYhjAEJ5ub0tLSknrS8/YFg0HU1NS4OiA439Fu703el9FoVJyxwOvkbCNfBEjmrR2LxVBVVZUQ113ORx5XyXb88DmXzy18fPGyTdMUC548X6dHMJdZneOHp+d9xudSZ99y+YI/D8FgMKEPZWMolzfc4PWS77tz3Mpp/H5/0jmOj8NgMCj6xpkXcNQJwWtnH29/ZWWlax/wPuIOHl7ylixHVldXexqWI5GI59gCjsoyNTU1qK6uFvfaa0zL8rAzP8MwUFVVhYqKCtdxCNSOsWTymkx1dXXCzsTCwkJ85zvfgc/nIxmCIAiCIAjCA4U1keuArORwA7NTcZKNrFzJ9BJCgaNxyd2ES3mboiwUO7c1cgVTDpHghBvAZGHWzSOLG4W9DJXOtjm3bDvzkQ19bn2gaVpCmA5nX3oZqZ318fJ6l3EzKjjbKW8X9+pnr+3U/D7yAxmdxlVnGBA53qJb3/B+9vIK49fxWOxeW095u5xKpeyd7Gyb21jkoVfcFCaexjmGvELL8N0FbuNHrk+yMc3Hj7yl1i0frhB75cM/dyqezvvP65MsvI7X/ZKR2yXX01k2D8fkpejyf15l8DHoplDL4yfZM+b2DnI+63KeXv0svzPk9iZ7zzQWLVlGY5bd0DLaet+2lTK83gdyekVR6jX6AnXnOPl3/uy6PYfy+4DXx2tMcUOfm3wjz+PyPOCGPBe4yQipzHENkbdSmeO4PMfL8XrXOe+ZWx8YhpGwyJDKHOc2RuT3rpuMJNfHzQgr43RkcFsodZtX3GSkZLiNaTf4mHbKI/x3r/M6eBn8XslyCSeVOU6Wy/hYdJvjeL9bliXq5LXzUx7Tzs9lQ75zMUFOCySfc3leThnZa0zL993r+eALEMn0FcMwkspIcj68DW73zykfu+kifAw5nwlZDm3sd3ZrnGuOpU5tpYyG0hrLaK1921bKaChtpd1URtPRVtpNZZy4dUr1mvrSNItBvL7KuBm43NIcC7IQKn/W0PzcFNBU0smKm6zAcHg/8c+T1c3ZFi8FtKFtSQW3+8nzkj93q4dXeXLbnUYHOU2yOrnhpjCkQn3tO5YxmKzt9ZXtVT+v8ZNKuU6lzKtOzufFK2/nWHQzGtVXp4bi1V63cSgr+W6GFjnPZMYYOS+38t2eSeffqdynZGlao3DTmGU0ZtkNLaOt921bKSPZO7gxBCjnfCz/lOeBVOYo2RDH/0727nTLy2ueONY5Ts7DWfax5ueWz7HOmcnmOK/52fm319zFP3eWUd87N1kb3WS3YxmHqeA2Dp35uJUtX+eUt5x1aIw5riF94CYXN7R9XnVxXlNfP/O6y7vLnIsZ8oLA8cpIbvJWsvvnbI+z3vWla+x3dmuca05kZf14y2gorbGM1tq3baWMhtJW2k1lNB1tpd1Uxolbp1SvqS9Nk4dMaahC5EZj5HGs5XkZ0VIxZAGJhnOvG5GKcp2s7NaEm4LjJJki4ZYGcI+LnaoC6jRMJCu3samvL1K9nudxrGNRVpq88nHmmYpRqjWPRZlk7ajPOMT7IlnM9FTr4ByHzvwa871JEETDSfXdWB/1vfvdDJVeBt7mmuOO9b1zPIpXKnOc87v65K368nErO1mdvGjJ+c85Dr08jFNpi3OOS5a2vjqlWmZT4PYcNXTBgf9en6yV7D3gtlhSX9nHOxYJgiAIgiCIhtNkBnEgNeEtmSeF8/P68kxmaPLKy0sIrc9I5qyrlzKSirHNre7JOF4ja0PKOBaawsCfLCYoVz5kg2+ycuq758n6N5Ux5pbWa0ynOj7qK6u+72VDuJtHkbO+qZQnX+NmyEmWd6pleCn4x7p6mMxgkKrhw8v7qj6DVCrvN4Igmo/6nr1U5oBUOB6jqpdskSyf+tKn8p5KpW715eM0CiaTkVIpT07nzEt+LzdkEaI+6luskNPV177GpjFlLad84PZ9KosuDWlvssWgxhqHDcnLeU9T7S835Oe2MeWtVPrc7V6SMZ0gCIIgCKIuTWoQB1IXMJMZMr3ijsukqgzVZ7hL9bv6DOByXVOhMYTVxhR4UzHQHm9eqVzTUOUkFUXYK10qBvVU6sW/S3aQkduW5WNRCBuikNY3HlMZ06nmebyKcn3XNHRxoL53Q0PrlOz941WOc+y4jTfyBiOI5DSWkdorr6a87njzru9wPC5vJZvHkpXh9T46ljkuFXmrIbKhW9qmvn/HsmDS0Do19lhqrPyOZY6Tv0vFSJ2K3H+8slaqY5p/V19e9X2e6hzuJm81xPCf7JqGeKcTBEEQBEGczDS5QRw4Ni/o+vJK9fPGLKOh6Rqz3Q0ptzVxvHVNpQ8bUkZTKYvNXUZT5dvSynxT0RwLTg19bzTWogFBEM1HUzyj9c1zLTHHJcurJeY4kreS09T3pKVkg8aWtZr6fjbls3qijEWCIAiCIIgTheTuRgRBEARBEARBEARBEARBEATRRiCDOEEQBEEQBEEQBEEQBEEQBHFSQAZxgiAIgiAIgiAIgiAIgiAI4qSgWWKIEyc+tm2LnzyOIf9dURRYlgVN02DbdsJhSfLfHE3TTqpYiDymqWVZCYcc1XdAGkEQBEGciDDGEI/HoWkaGGOwbVv8DiQeACrLEgDEdaqqQlGUJp0ruWyjqmqCnKPrOmzbFocfngjzNWNM/OP9fSLUmyAIgiAIgiBaAjKIEymhqiosywJQq3RFIhH885//RFlZGfx+P/x+P4BaYzdPF41GEY/HEYlEcNlll+Gss85qsfq3NFw5tW0blmVB1+nRIwiCINoumqaJ39955x0sW7YMgUAAgUAAjDGxOK4oCmpqaqCqKqqqqhAKhfDXv/4VGRkZzWLQ5UZ5vrDPF/m50f5Egi8ucJmNDOIEQRAEQRAE4Q5Z5YiUYYxB13VYlgXbtlFeXo4vv/wSjDHs378fGzZsAFCrXGZlZWHYsGFQVRWqqqKmpuak8gqXsW0bpaWl8Pv9yMrKEl5yJ2t/EARBEG0b2UvZtm1UV1djx44dsCwL0WgUy5YtEx7Ytm1jzJgxwpjLF9P5d7JhvbHhxm9e571796Jdu3Zo166dMNafKHN1OBzGgQMH0LFjR/IOJwiCIAiCIIh6UFgzur94GQGbwzjYkmW0lfZxZZX/lL2pZs2ahUmTJgnF8qKLLsL8+fPh8/lEung8Dl3Xk26Bbo19eLxlHzp0CKNHj8bw4cPx97//HbZtwzCMhDzbyhhpjvvXkmPEi7Z+/5qjjJYcI229b9tKGY15/xp6TVvv28Yug++EisViojwuL3z99dfo06cPgKO7pyoqKoTnOF901zTNczdVY40RHp7Ftm2UlJTg0ksvxejRo/HAAw+IUCn8Xyrtbsn7t27dOgwdOhQlJSUoLCw8ZmM+PeOtq4yGcrKW0VrvH42RpklPZdD9ozIat4yG0lbaTWWcuHVK9Zr60pCHOJES8kDiRnGuqPK4m5Zlie3F3PMLOBqb0+fzwTRNEZOT5+X8PZlCJHuLyWs5TuOy2+f1tY+3gddPjnHqtvXYuZ3aGSOV5xuPxxGNRoXHltx+ua3O65IZzOWFiRPFe40gCII4OVBVFaZpikVwWTbgyLKDLF/weVJeeJeR508n8tzNkedyLmPIZXF5JRqNIhKJwDAMUSY3mKcSfsStPnyulud9+XOv+dspc8mykbMc/vmWLVtEvnJsdLcy5PK54d8pg7hdQxAEQRAEQRBtBTKIEykhK5RcieQKk6qq0HXdVZniCpRt28IY7lTouKInG5R5WW6KJDe8y0qyrOTGYjGhhPP68TrwOrkptrFYLOFgULn+cptkpdQ0zYR6OBVRxhjWr1+PkpKShDrK8DwURRF9xNspG+dlQwKFXSEIgiBaK06valmGABIN4/x7/jOVECnOwzDlhWUuA3B4+BU+x/L85TnWNE2sW7cO+/btg2VZwkiv6zpM06xjlOaGei678LY6ZQf+N6+D08Av1925CC/nIRvvebu5Jz1QK0esXLmyTj/JCxE8P95uOX8uu8h1dDsIlSAIgiAIgiDaChRgkGhyuPFaVoS9vJ1lxZJfKxuSuRLn5onNlTrDMISSKCuDsoLpVkfDMIRXm6qqos7cQM7zl5VVwzASyuFl8X+MMcybNw/l5eV1lFCuzHIlWA4tI8MVU7ntpmkCgPhJEARBECcDTgO4/I/Py06PcG4MlxfL5bxs28aMGTMQiUQSZAw+96qqing87rqjjRuqZacBDk/Pd4g5d9rJaZyLBbI8IucrL4jzum3btg0LFy5McCCQvdq53MKv59/Li/hOQz9vP0EQBEEQBEG0RcggTjQ5sqGbG3tlozFXSLnCaJpmgreSrHRyRY8bgmWvbedWaOCoQgkgQUl2gxulDcMQXuhyvZye7LInuTOMCy931qxZeO2116Bpmoin7lQy5XrLoWjkkDTytnOusPK6EgRBEMTJgmywBRKNy7Lhl6fx+XwAIBbL+QI5T2NZFl544QWsWrVKzLd8nuVl8b+5LCDHFud/y0Zrfo0c2kyey7mxWr4uGo0KIzcvl8/xpmmKa5xtqKiowEMPPYTdu3cnLLw7F9idHvu8DF3XRT35bj95p10q4WIIgiAIgiAI4kSDQqYQTYqstDLGUFZWhs8++wyRSAShUAg1NTUoKCjAhAkTYFkW9uzZgw0bNuDrr79GLBZDbm4uBgwYgEGDBgFI3FK8e/durFy5EtFoFDU1NQiFQmjXrh2uueYaHDlyBJs3b8b27dsRDocRCATQvXt3DBgwAF27dhUKsszChQtRUVEB0zRRVVWFSCSCzp074+c//7kos7KyEosWLYJpmqioqEA0GkU4HMa1116Lrl27wrZtVFVVYfXq1VizZg2mT5+OcDgMRVGwdetWzJ49W7TDtm1ceeWVQgHlnx06dAhr1qzBpk2bEI1GoaoqfD4fevbsCb/fjy+//BK//OUv0a5dO+HxRhAEQRAnC9y4bJomDh8+jLVr12Lbtm2oqqoSRulAIICePXtiwIAB6NatG4DEsB+HDh3CF198gY8++gjPPvssgsEgAGD9+vV44403EgzYP/nJTxIWqWXD9LZt2/DNN9/gq6++QigUAgDk5OSgW7duGDlyJPx+P3w+n1gM53JQeXk54vE4QqEQTNPEXXfdBcuyxPd79+5FLBZD+/btMWDAAAwePBg+nw+6rkNVVezZswfr16/Hyy+/jIULF8K2bfj9fsyZMwc5OTnQdR3RaBT9+/fH0KFDE8LLmKaJL774Al988QV27dolPs/NzUVRURHKy8uRnp6OH//4xwlx1gmCIAiCIAiirUCWNKJJccbM3rBhA6ZMmYKamhrh8TRixAhceeWVeOeddzBr1izk5uaid+/e+Pzzz/HRRx8hKysLN910E37729/C7/cL5WzTpk249dZbEYlEEI1GYds2Bg0ahHg8jv/85z8IBoM444wzEIvFsGrVKuzatQu9e/fGzTffjPHjxyMrKyshvvgDDzyA//3vfwgGg1AUBfF4HGPGjMH48eOFwXrnzp247bbbEAqFEIlEhBI5atQodOnSBQCwbNkyTJ48GZFIBDU1NcKjfOnSpVi9erXwJrMsCz/5yU9EaBbLsvDVV1/ht7/9Lfbu3Yvrr78eXbt2haZpqKqqwjPPPCNihF533XUIBALNezMJgiAIohnhntbOwyG5Z/a+ffswadIkfPrpp+jXrx9+8YtfID09HQcOHMB//vMfrF27FqeffjomT56MCRMmCKO2oihYtGgRpk6dKha2eXmLFy/GqlWrhAd2YWEhLr74YmRlZYmyASAUCuG1117DY489hr179+KCCy7A2LFjEQqF8OGHH2LJkiW48MIL8cc//hGnn3668ATfunUrbrvtNlRXV4sQLYZh4Pbbb8eHH36IGTNmCIP69u3bMW/ePGRmZmLChAn405/+hEAgAMYYZs6cieeee054ojPGEI1G8cADDyTIXnfccQcGDRokwteZpomXXnoJjzzyCM455xwMGzYMaWlp0DQNmzdvxmOPPYbi4mJcf/31GDduXLPcZ4IgCIIgCIJodlgzYtt2gz5vjrKbo4y22j7btsW/l19+mQEQ/0aOHMmi0ShjjLFYLMZs22aWZbHq6mq2c+dO9vDDDzNd15miKGzkyJFs1qxZbNy4cWzlypUsHo+zWCzGduzYwQYO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Ny536NAhYbsxcPTQLNmQ7MxP9j6X4VukASTkmZOTg7S0NGFc379/f0I+3KjuZvSWje/y317p+O9yXrIBnBvpeZpu3brh/vvvx5/+9CdUVFSguroaH3/8seiHv//97xg+fDj+8Ic/YOTIkaL/3LzZCYIgCKItYNs2wuEwJk6ciCFDhuChhx5KmDvT09MRDofx5ptvYvv27di1axcqKythmiZM0xTzvGwol+dNPsdyOYLvEpNlFNk7fcOGDYhGo0KOmDdvHtasWVNHblBVFcuXL4fk8FkLAAAgAElEQVSiKIhEIigtLU2QH2TP73g8jpycHABICInG0zudCziy0Vv24uZyBl845wvwuq5j0qRJ2LhxI9566y1YloUdO3Zgx44dAIDZs2fjD3/4A6666io88MAD6NChA4VNIQiCIAiCINokZBAn2jyyIpmZmQnDMBCJRIQXOleqUzUsyx5kx1Mn7kHOy1cUBRMnTkSvXr0wY8YMbNq0CcXFxYhGo0KBX7VqFcaPH4958+bhrLPOIgWVIAiCaNMoioLDhw/jyJEjyMvLS5j3Dhw4gH//+994/fXXsXv3bvTo0QM//elPcc0116Bjx444fPgwvvrqK+zcubNB5cmL404P63A4jHg8LozmBQUF6N69uzA6cxhjGD9+PK655hqkpaXhnHPOaaQeSQ051As3ivPY408++SS+973v4fXXX8fXX3+NiooK0c5wOIyXXnoJ1dXVeOaZZ0QYGoIgCIIgCIJoS5BBnGjzyHHMDxw4gFAoJD7Pysqq4y1WX14Ajtsr2zRNfPnllwgEAjj11FPF57FYDBdeeCG+//3vY+fOndixYwd27dqFzZs344MPPsChQ4dQXl6OJ598EjNnzkR6evpx1YMgCIIgWjOKomDXrl04dOgQevbsKebfkpISXHbZZVi7di1UVcWll16KRx99FIWFhfD7/VAUBd98802DQ3/wECk8XNv69evRo0cPdOzYEbZt47TTToPP50M0GoVt27j00ksxfPhw4X3OkRe8nYdXNheVlZXYtm0b+vXrh6ysrARv9ClTpuCaa67Btm3bsHv3bmzfvh2ff/45Vq9ejZqaGrz77ru49tprMXr0aIohThAEQRAEQbQ5KNYCcdLA44bL26Z79+6dcFhWMrjhXFEUhEIhsV36WAiFQvjVr36FOXPmiJAw69atw3333Yfi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)" ] }, { "cell_type": "markdown", "metadata": { "id": "6fsoLpdRHfpi" }, "source": [ "We start from a graph with adjacency matrix $A$ and node features $x_i$. Using a GNN, for each node we compute (based on its neighborhood) a latent feature vector $h_i$, by *aggregating* node features from adjacent nodes. With these latent vectors we can attempt to solve various tasks, where for now we focus on **node classification**.\n", "\n", "In node classification, we are most often given a single graph, where only a portion of nodes is labeled. Using these nodes as a signal for training, our goal is to successfully classify the remaining nodes. To this end, we look at previously computed node latent vectors in isolation, and learn a classifier $z_i = f(h_i)$.\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "_IFdfAmSDROb" }, "source": [ "## ***Implement MLP baseline***\n", "First, let's define an MLP module which will be used to update the node features." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "cK9W9J4GsDbC" }, "outputs": [], "source": [ "class MLP(hk.Module):\n", " def __init__(self, widening_factor:int, out_channels:int, number_classes: int = None):\n", " super().__init__()\n", " self.widening_factor = widening_factor\n", " self.out_channels = out_channels\n", " self.number_classes = number_classes\n", "\n", " def __call__(self, x: jnp.ndarray) -> jnp.ndarray:\n", "\n", " mlp = hk.Sequential([hk.Linear(self.out_channels),\n", " jax.nn.relu,\n", " hk.Linear(self.out_channels * self.widening_factor),\n", " jax.nn.relu,\n", " hk.Linear(self.out_channels if not self.number_classes else self.number_classes)])\n", "\n", " return mlp(x)\n", "\n", "# Use MLP block to define the update node function\n", "update_node_fn = lambda x: MLP(widening_factor = 2, out_channels = 4)(x)" ] }, { "cell_type": "markdown", "metadata": { "id": "-rQCaukgyOue" }, "source": [ "## Check outputs of `update_node_fn` with MLP Block" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "_ImWUoi9s2-x" }, "outputs": [], "source": [ "graph = build_toy_graph()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4BCg7cYwyBRw" }, "outputs": [], "source": [ "update_node_module = hk.without_apply_rng(hk.transform(update_node_fn))\n", "params = update_node_module.init(jax.random.PRNGKey(42), graph.nodes)\n", "out = update_node_module.apply(params, graph.nodes)" ] }, { "cell_type": "markdown", "metadata": { "id": "ooUu13gBzm2S" }, "source": [ "As output, we expect the updated node features. We should see one array of dim 4 for each of the 4 nodes, which is the result of applying a single MLP block to the features of each node individually." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "PblLCX67ubZ-" }, "outputs": [], "source": [ "out" ] }, { "cell_type": "markdown", "metadata": { "id": "XTukImR1LhUC" }, "source": [ "## ***Task 3: Custom update functions***\n", "\n", "Node update functions do not even have to be neural networks. Using the code below as a framework, create a node update function `Add` which will add the given number to every node feature." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1W7_4aocMOPd" }, "outputs": [], "source": [ "### BEGIN SOLUTION\n", "### Create a hk.Module called 'Add' here, which can be used by the below code\n", "\n", "### END SOLUTION\n", "\n", "### UNCOMMENT THE FOLLOWING\n", "# print(\"Before:\\n\", graph.nodes)\n", "# update_node_fn = lambda x: Add(number_to_add=3)(x)\n", "# update_node_module = hk.without_apply_rng(hk.transform(update_node_fn))\n", "# params = update_node_module.init(jax.random.PRNGKey(42), graph.nodes)\n", "# out = update_node_module.apply(params, graph.nodes)\n", "# print(\"After:\\n\", out)" ] }, { "cell_type": "code", "source": [ "# @title Run to test your update function.\n", "if jnp.allclose(out, jnp.array([[3.], [5.], [7.] ,[9.]])):\n", " print(\"Your function looks correct!\")\n", "else: \n", " print(\"Something seems wrong. Give it another go!\")" ], "metadata": { "id": "FlLG_r-wN4Tp", "cellView": "form" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "oMsj3STTIlW4" }, "outputs": [], "source": [ "#@title ***Task 3: Solution*** { display-mode: \"form\" }\n", "### BEGIN SOLUTION\n", "class Add(hk.Module):\n", " def __init__(self, number_to_add: int):\n", " super().__init__()\n", " self.number_to_add = number_to_add\n", "\n", " def __call__(self, x: jnp.ndarray) -> jnp.ndarray:\n", " return x + self.number_to_add\n", "### END SOLUTION\n", "\n", "print(\"Before:\\n\", graph.nodes)\n", "update_node_fn = lambda x: Add(number_to_add=3)(x)\n", "update_node_module = hk.without_apply_rng(hk.transform(update_node_fn))\n", "params = update_node_module.init(jax.random.PRNGKey(42), graph.nodes)\n", "out = update_node_module.apply(params, graph.nodes)\n", "print(\"After:\\n\", out)" ] }, { "cell_type": "markdown", "metadata": { "id": "1sWwBdZ2wqi5" }, "source": [ "# Section 5: Graph Convoutional Network (GCN)" ] }, { "cell_type": "markdown", "metadata": { "id": "LhhTqS58QrdD" }, "source": [ "We can start working on our GCN (Graph Convolutional Network) model, which is a specific instance of GNNs.\n", "\n", "Given as inputs $A$, the $N \\times N$ adjacency matrix, and $H$, the $N \\times F$ feature matrix, where each node has an $F$-dimensional feature vector, the propagation rule of mean-pool is as follows:\n", "$$ H' = \\sigma(D^{-1}AHW^T) $$\n", "Here, $W$ is a learnable weight matrix of shape $F' \\times F$, $D$ is the diagonal matrices containing the degree of the nodes, $\\sigma(\\cdot)$ is a non-linear activation function (e.g. ReLU), and H' holds the output node features ($N \\times F'$).\n", "\n", "Focusing on node $i$, we get the following equation for its features (where $\\mathcal{N}(i)$ is the set of its neighbors):\n", "$$ h'_i = \\sigma \\left( \\frac{1}{\\mathcal{N}(i)}\\sum_{j \\in \\mathcal{N}(i)} Wh_j \\right) $$\n", "\n", "In other words, we simply average the transformed features of all neighbors. " ] }, { "cell_type": "markdown", "metadata": { "id": "4RCGC0XbkjCV" }, "source": [ "## Add Symmetric Normalization\n", "\n", "Note that the nodes may have different numbers of neighbors / degrees.\n", "This could lead to instabilities during neural network training, e.g. exploding or vanishing gradients. To address that, normalization is a commonly used method. In this case, we will normalize by node degrees.\n", "\n", "As a first attempt, we could count the number of incoming edges (including self-edge) and divide by that value.\n", "\n", "More formally, let $A$ be the adjacency matrix defining the edges of the graph.\n", "\n", "Then we define the degree matrix $D$ as a diagonal matrix with $D_{ii} = \\sum_jA_{ij}$ (the degree of node $i$)\n", "\n", "\n", "Now we can normalize $AH$ by dividing it by the node degrees:\n", "$${D}^{-1}AH$$\n", "\n", "To take both the in and out degrees into account, we can use symmetric normalization, which is also what Kipf and Welling proposed in their [paper](https://arxiv.org/abs/1609.02907):\n", "$$D^{-\\frac{1}{2}}AD^{-\\frac{1}{2}}H$$\n", "\n", "our update function would then be:\n", "\n", "$$ H' = \\sigma(D^{-\\frac{1}{2}}AD^{-\\frac{1}{2}}HW^T) $$\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "source": [ "## Implementation\n", "Let's try to define an operation for normalisation: $D^{-\\frac{1}{2}}H$ . We will first extract elements of our graph." ], "metadata": { "id": "8fNEk9r-7m89" } }, { "cell_type": "code", "source": [ "nodes, _, receivers, senders, _, _, _ = build_toy_graph()\n", "nodes += 1" ], "metadata": { "id": "x26-nrmo723r" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "Next, let's compute the number of incoming and outgoing edges for each node." ], "metadata": { "id": "Aj5Cy1Sy83zt" } }, { "cell_type": "code", "source": [ "# Get the total number of nodes\n", "total_num_nodes = tree.tree_leaves(nodes)[0].shape[0]\n", "\n", "# Define a function to count the number of sending / receiving edges\n", "count_edges = lambda x: jax.ops.segment_sum(\n", " jnp.ones_like(senders), x, total_num_nodes)\n", "\n", "# Compute the number of sending / receiving edges\n", "sender_degree = count_edges(senders)\n", "receiver_degree = count_edges(receivers)" ], "metadata": { "id": "Dnz0kQz-7tTe" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "Finally, we can compute $D^{-\\frac{1}{2}}H$ using [`jax.tree_util.tree_map`](https://jax.readthedocs.io/en/latest/_autosummary/jax.tree_util.tree_map.html)." ], "metadata": { "id": "uGaFxuHA9MZY" } }, { "cell_type": "code", "source": [ "# Pre normalize by sqrt sender degree.\n", "# Avoid dividing by 0 by taking maximum of (degree, 1).\n", "print(\"Before:\\n\", nodes)\n", "nodes = tree.tree_map(\n", " lambda x: x * jax.lax.rsqrt(jnp.maximum(sender_degree, 1.0))[:, None],\n", " nodes,\n", ")\n", "print(\"\\nAfter:\\n\", nodes)" ], "metadata": { "id": "vdJ95bhQ9ose" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "nD1Qc7xK-SkI" }, "source": [ "## Add Self-Edges to Graph (Edges connecting a node to itself)\n", "For each node, add an edge of the node onto itself. This way, nodes will include themselves in the aggregation step.\n", "\n", "*Note*: if we don't add self-edges, a node would not depend on its own features which is often undesirable." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "a8LO_UMN-ReR" }, "outputs": [], "source": [ "def add_self_edges_fn(receivers: jnp.ndarray, senders: jnp.ndarray,\n", " total_num_nodes: int) -> Tuple[jnp.ndarray, jnp.ndarray]:\n", " \"\"\"Adds self edges. Assumes self edges are not in the graph yet.\"\"\"\n", " receivers = jnp.concatenate((receivers, jnp.arange(total_num_nodes)), axis=0)\n", " senders = jnp.concatenate((senders, jnp.arange(total_num_nodes)), axis=0)\n", " return receivers, senders" ] }, { "cell_type": "markdown", "metadata": { "id": "qdxzqrpbj-jZ" }, "source": [ "## GCN Layer implementation\n", "Putting everything together, we can now write a more general and configurable version of the Graph Convolution layer, allowing the caller to specify:\n", "\n", "* **`update_node_fn`**: Function to use to update node features (e.g. the MLP block version we just implemented)\n", "* **`aggregate_nodes_fn`**: Aggregation function to use to aggregate messages from neighbourhood.\n", "* **`add_self_edges`**: Whether to add self edges for aggregation step.\n", "* **`symmetric_normalization`**: Whether to add symmetric normalization.\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "KkkOolOVh3nR" }, "outputs": [], "source": [ "# Adapted from https://github.com/deepmind/jraph/blob/master/jraph/_src/models.py#L506\n", "def GraphConvolution(update_node_fn: Callable,\n", " aggregate_nodes_fn: Callable = jax.ops.segment_sum,\n", " add_self_edges: bool = False,\n", " symmetric_normalization: bool = True) -> Callable:\n", " \"\"\"Returns a method that applies a Graph Convolution layer.\n", "\n", " Graph Convolutional layer as in https://arxiv.org/abs/1609.02907,\n", " NOTE: This implementation does not add an activation after aggregation.\n", " If you are stacking layers, you may want to add an activation between\n", " each layer.\n", " \n", " Args:\n", " update_node_fn: function used to update the nodes. In the paper a single\n", " layer MLP is used.\n", " aggregate_nodes_fn: function used to aggregates the sender nodes.\n", " add_self_edges: whether to add self edges to nodes in the graph as in the\n", " paper definition of GCN. Defaults to False.\n", " symmetric_normalization: whether to use symmetric normalization. Defaults to\n", " True.\n", "\n", " Returns:\n", " A method that applies a Graph Convolution layer.\n", " \"\"\"\n", " \n", " def _ApplyGCN(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Applies a Graph Convolution layer.\"\"\"\n", " nodes, _, receivers, senders, _, _, _ = graph\n", "\n", " # First pass nodes through the node updater.\n", " nodes = update_node_fn(nodes)\n", " # Equivalent to jnp.sum(n_node), but jittable\n", " total_num_nodes = tree.tree_leaves(nodes)[0].shape[0]\n", " if add_self_edges:\n", " # We add self edges to the senders and receivers so that each node\n", " # includes itself in aggregation.\n", " # In principle, a `GraphsTuple` should partition by n_edge, but in\n", " # this case it is not required since a GCN is agnostic to whether\n", " # the `GraphsTuple` is a batch of graphs or a single large graph.\n", " conv_receivers, conv_senders = add_self_edges_fn(receivers, senders,\n", " total_num_nodes)\n", " else:\n", " conv_senders = senders\n", " conv_receivers = receivers\n", "\n", " # pylint: disable=g-long-lambda\n", " if symmetric_normalization:\n", " # Calculate the normalization values.\n", " count_edges = lambda x: jax.ops.segment_sum(\n", " jnp.ones_like(conv_senders), x, total_num_nodes)\n", " sender_degree = count_edges(conv_senders)\n", " receiver_degree = count_edges(conv_receivers)\n", "\n", " # Pre normalize by sqrt sender degree.\n", " # Avoid dividing by 0 by taking maximum of (degree, 1).\n", " nodes = tree.tree_map(\n", " lambda x: x * jax.lax.rsqrt(jnp.maximum(sender_degree, 1.0))[:, None],\n", " nodes,\n", " )\n", " # Aggregate the pre-normalized nodes.\n", " nodes = tree.tree_map(\n", " lambda x: aggregate_nodes_fn(x[conv_senders], conv_receivers,\n", " total_num_nodes), nodes)\n", " # Post normalize by sqrt receiver degree.\n", " # Avoid dividing by 0 by taking maximum of (degree, 1).\n", " nodes = tree.tree_map(\n", " lambda x:\n", " (x * jax.lax.rsqrt(jnp.maximum(receiver_degree, 1.0))[:, None]),\n", " nodes,\n", " )\n", " else:\n", " nodes = tree.tree_map(\n", " lambda x: aggregate_nodes_fn(x[conv_senders], conv_receivers,\n", " total_num_nodes), nodes)\n", " # pylint: enable=g-long-lambda\n", " return graph._replace(nodes=nodes)\n", "\n", " return _ApplyGCN" ] }, { "cell_type": "markdown", "metadata": { "id": "oKxcA6XAza33" }, "source": [ "### Test General GCN Layer" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "7TgyCkE9KlUG" }, "outputs": [], "source": [ "gcn_layer = GraphConvolution(\n", " update_node_fn = lambda n: MLP(widening_factor = 2, out_channels = 4)(n),\n", " aggregate_nodes_fn = jax.ops.segment_sum,\n", " add_self_edges = True,\n", " symmetric_normalization = True\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1gTPEWvU0DDB" }, "outputs": [], "source": [ "graph = build_toy_graph()\n", "network = hk.without_apply_rng(hk.transform(gcn_layer))\n", "params = network.init(jax.random.PRNGKey(42), graph)\n", "out_graph = network.apply(params, graph)\n", "out_graph.nodes" ] }, { "cell_type": "markdown", "metadata": { "id": "fvXd1mVlk1ET" }, "source": [ "## ***Task 4: Asymmetric normalization***\n", "\n", "By adapting the above `GraphConvolution` function, write a function `GraphConvolutionNormalize` which has an option for `normalization` instead of `symmetric_normalization`. The definition of this GCN layer should correspond to normalization which only considers the incoming edges\n", "$${D}^{-1}AH$$\n", "instead of symmetric normalization\n", "$$D^{-\\frac{1}{2}}AD^{-\\frac{1}{2}}H$$" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "B8qGKItPrZvP" }, "outputs": [], "source": [ "def GraphConvolutionNormalize(update_node_fn: Callable,\n", " aggregate_nodes_fn: Callable = jax.ops.segment_sum,\n", " add_self_edges: bool = False,\n", " normalization: bool = True) -> Callable: \n", " def _ApplyGCN(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " nodes, _, receivers, senders, _, _, _ = graph\n", "\n", " nodes = update_node_fn(nodes)\n", " total_num_nodes = tree.tree_leaves(nodes)[0].shape[0]\n", " if add_self_edges:\n", " conv_receivers, conv_senders = add_self_edges_fn(receivers, senders, total_num_nodes)\n", " else:\n", " conv_senders = senders\n", " conv_receivers = receivers\n", "\n", " # pylint: disable=g-long-lambda\n", " if normalization:\n", " ### BEGIN SOLUTION\n", " nodes = nodes # REMOVE THIS LINE\n", " ### END SOLUTION\n", " else:\n", " nodes = tree.tree_map(\n", " lambda x: aggregate_nodes_fn(x[conv_senders], conv_receivers,\n", " total_num_nodes), nodes)\n", " # pylint: enable=g-long-lambda\n", " return graph._replace(nodes=nodes)\n", "\n", " return _ApplyGCN\n", "\n", "gcn_layer = GraphConvolutionNormalize(\n", " update_node_fn = lambda n: MLP(widening_factor = 2, out_channels = 4)(n),\n", " aggregate_nodes_fn = jax.ops.segment_sum,\n", " add_self_edges = True,\n", " normalization = True\n", ")\n", "\n", "graph = build_toy_graph()\n", "network = hk.without_apply_rng(hk.transform(gcn_layer))\n", "params = network.init(jax.random.PRNGKey(42), graph)\n", "out_graph = network.apply(params, graph)\n", "out_graph.nodes" ] }, { "cell_type": "code", "source": [ "# @title Run to test your GCN implementation.\n", "expected_out_nodes = jnp.array([\n", " [-4.0438256, -0.25567064, 4.191698, -2.1424618], \n", " [-1.2131476, -0.07670121, 1.2575094,-0.64273846], \n", " [-3.639443 , -0.23010363, 3.7725282 , -1.9282154], \n", " [-3.639443 , -0.23010355, 3.7725282 , -1.9282159 ],\n", "])\n", "\n", "if jnp.allclose(out_graph.nodes, expected_out_nodes):\n", " print(\"Your function looks correct!\")\n", "else: \n", " print(\"Something seems wrong. Give it another go!\")" ], "metadata": { "id": "vyn1NWrHN80v", "cellView": "form" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "FCV_ZO8rk2Ji" }, "outputs": [], "source": [ "#@title ***Task 4: Solution*** { display-mode: \"form\" }\n", "def GraphConvolutionNormalize(update_node_fn: Callable,\n", " aggregate_nodes_fn: Callable = jax.ops.segment_sum,\n", " add_self_edges: bool = False,\n", " normalization: bool = True) -> Callable: \n", " def _ApplyGCN(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " nodes, _, receivers, senders, _, _, _ = graph\n", "\n", " nodes = update_node_fn(nodes)\n", " total_num_nodes = tree.tree_leaves(nodes)[0].shape[0]\n", " if add_self_edges:\n", " conv_receivers, conv_senders = add_self_edges_fn(receivers, senders, total_num_nodes)\n", " else:\n", " conv_senders = senders\n", " conv_receivers = receivers\n", "\n", " # pylint: disable=g-long-lambda\n", " if normalization:\n", " ### BEGIN SOLUTION\n", " # Calculate the node degrees\n", " count_edges = lambda x: jax.ops.segment_sum(\n", " jnp.ones_like(conv_senders), x, total_num_nodes)\n", " receiver_degree = count_edges(conv_receivers)\n", "\n", " # Aggregate the nodes.\n", " nodes = tree.tree_map(\n", " lambda x: aggregate_nodes_fn(x[conv_senders], conv_receivers,\n", " total_num_nodes), nodes)\n", " # Normalize by receiver degree.\n", " # Avoid dividing by 0 by taking maximum of (degree, 1).\n", " nodes = tree.tree_map(\n", " lambda x:\n", " (x / jnp.maximum(receiver_degree, 1.0)[:, None]),\n", " nodes,\n", " )\n", " # END SOLUTION\n", " else:\n", " nodes = tree.tree_map(\n", " lambda x: aggregate_nodes_fn(x[conv_senders], conv_receivers,\n", " total_num_nodes), nodes)\n", " # pylint: enable=g-long-lambda\n", " return graph._replace(nodes=nodes)\n", "\n", " return _ApplyGCN\n", "\n", "gcn_layer = GraphConvolutionNormalize(\n", " update_node_fn = lambda n: MLP(widening_factor = 2, out_channels = 4)(n),\n", " aggregate_nodes_fn = jax.ops.segment_sum,\n", " add_self_edges = True,\n", " normalization = True\n", ")\n", "\n", "graph = build_toy_graph()\n", "network = hk.without_apply_rng(hk.transform(gcn_layer))\n", "params = network.init(jax.random.PRNGKey(42), graph)\n", "out_graph = network.apply(params, graph)\n", "out_graph.nodes" ] }, { "cell_type": "markdown", "metadata": { "id": "lha8rbQ78l3S" }, "source": [ "## Build GCN Model with Multiple Layers\n", "With a single GCN layer, a node's representation after the GCN layer is only\n", "influenced by its direct neighbourhood. However, we may want to consider larger neighbourhoods, i.e. more than just 1 hop away. To achieve that, we can stack\n", "multiple GCN layers, similar to how stacking CNN layers expands the input region.\n", "\n", "We will define a network with three GCN layers:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "QYOQBh848k2U" }, "outputs": [], "source": [ "def gcn(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Defines a graph neural network with 3 GCN layers.\n", " \n", " Args:\n", " graph: GraphsTuple the network processes.\n", "\n", " Returns:\n", " output graph with updated node values.\n", " \"\"\"\n", " gn = GraphConvolution(\n", " update_node_fn=lambda n: jax.nn.relu(hk.Linear(8)(n)),\n", " add_self_edges=True)\n", " \n", " graph = gn(graph)\n", "\n", " gn = GraphConvolution(\n", " update_node_fn=lambda n: jax.nn.relu(hk.Linear(4)(n)),\n", " add_self_edges=True)\n", " \n", " graph = gn(graph)\n", "\n", " gn = GraphConvolution(\n", " update_node_fn=hk.Linear(2))\n", " \n", " graph = gn(graph)\n", " \n", " return graph" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "j6CisEhz_A-a" }, "outputs": [], "source": [ "graph = build_toy_graph()\n", "network = hk.without_apply_rng(hk.transform(gcn))\n", "params = network.init(jax.random.PRNGKey(42), graph)\n", "out_graph = network.apply(params, graph)\n", "out_graph.nodes" ] }, { "cell_type": "markdown", "metadata": { "id": "Z5t7kw7SE_h4" }, "source": [ "## Node Classification with GCN on Karate Club Dataset\n", "\n", "Time to try out our GCN on our first graph prediction task!\n" ] }, { "cell_type": "markdown", "metadata": { "id": "IQ_w2kkWoAq4" }, "source": [ "### Zachary's Karate Club Dataset\n", "\n", "[Zachary's karate club](https://en.wikipedia.org/wiki/Zachary%27s_karate_club) is a small dataset commonly used as an example for a social graph. It's great for demo purposes, as it's easy to visualize and quick to train a model on it.\n", "\n", "A node represents a student or instructor in the club. An edge means that those two people have interacted outside of the class. There are two instructors in the club.\n", "\n", "Each student is assigned to one of two instructors.\n", "\n", "#### Optimizing the GCN on the Karate Club Node Classification Task\n", "\n", "The task is to predict the assignment of students to instructors, given the social graph and only knowing the assignment of two nodes (the two instructors) a priori.\n", "\n", "In other words, out of the 34 nodes, only two nodes are labeled, and we are trying to optimize the assignment of the other 32 nodes, by **maximizing the log-likelihood of the two known node assignments**.\n", "\n", "We will compute the accuracy of our node assignments by comparing to the ground-truth assignments. **Note that the ground-truth for the 32 student nodes is not used in the loss function itself.**" ] }, { "cell_type": "markdown", "metadata": { "id": "5SE5DQoXWQJR" }, "source": [ "#### Dataset loading code" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "0YGQXeGN_E3J" }, "outputs": [], "source": [ "\"\"\"Zachary's karate club example.\n", "From https://github.com/deepmind/jraph/blob/master/jraph/examples/zacharys_karate_club.py.\n", "Here we train a graph neural network to process Zachary's karate club.\n", "https://en.wikipedia.org/wiki/Zachary%27s_karate_club\n", "Zachary's karate club is used in the literature as an example of a social graph.\n", "Here we use a graphnet to optimize the assignments of the students in the\n", "karate club to two distinct karate instructors (Mr. Hi and John A).\n", "\"\"\"\n", "\n", "def get_zacharys_karate_club() -> jraph.GraphsTuple:\n", " \"\"\"Returns GraphsTuple representing Zachary's karate club.\"\"\"\n", " social_graph = [\n", " (1, 0), (2, 0), (2, 1), (3, 0), (3, 1), (3, 2),\n", " (4, 0), (5, 0), (6, 0), (6, 4), (6, 5), (7, 0), (7, 1),\n", " (7, 2), (7, 3), (8, 0), (8, 2), (9, 2), (10, 0), (10, 4),\n", " (10, 5), (11, 0), (12, 0), (12, 3), (13, 0), (13, 1), (13, 2),\n", " (13, 3), (16, 5), (16, 6), (17, 0), (17, 1), (19, 0), (19, 1),\n", " (21, 0), (21, 1), (25, 23), (25, 24), (27, 2), (27, 23),\n", " (27, 24), (28, 2), (29, 23), (29, 26), (30, 1), (30, 8),\n", " (31, 0), (31, 24), (31, 25), (31, 28), (32, 2), (32, 8),\n", " (32, 14), (32, 15), (32, 18), (32, 20), (32, 22), (32, 23),\n", " (32, 29), (32, 30), (32, 31), (33, 8), (33, 9), (33, 13),\n", " (33, 14), (33, 15), (33, 18), (33, 19), (33, 20), (33, 22),\n", " (33, 23), (33, 26), (33, 27), (33, 28), (33, 29), (33, 30),\n", " (33, 31), (33, 32)]\n", " # Add reverse edges.\n", " social_graph += [(edge[1], edge[0]) for edge in social_graph]\n", " n_club_members = 34\n", "\n", " return jraph.GraphsTuple(\n", " n_node=jnp.asarray([n_club_members]),\n", " n_edge=jnp.asarray([len(social_graph)]),\n", " # One-hot encoding for nodes, i.e. argmax(nodes) = node index.\n", " nodes=jnp.eye(n_club_members),\n", " # No edge features.\n", " edges=None,\n", " globals=None,\n", " senders=jnp.asarray([edge[0] for edge in social_graph]),\n", " receivers=jnp.asarray([edge[1] for edge in social_graph]))\n", "\n", "def get_ground_truth_assignments_for_zacharys_karate_club() -> jnp.ndarray:\n", " \"\"\"Returns ground truth assignments for Zachary's karate club.\"\"\"\n", " return jnp.array([0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1,\n", " 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1])\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "RyJk-Mq7EKoU" }, "outputs": [], "source": [ "graph = get_zacharys_karate_club()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "K4v5LnKgEN8l" }, "outputs": [], "source": [ "print(f'Number of nodes: {graph.n_node[0]}')\n", "print(f'Number of edges: {graph.n_edge[0]}')" ] }, { "cell_type": "markdown", "metadata": { "id": "Pi2DQYzjngR8" }, "source": [ "#### Visualisation\n", "Visualize the karate club graph with circular node layout:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "-MVtGGJwg_B8" }, "outputs": [], "source": [ "nx_graph = convert_jraph_to_networkx_graph(graph)\n", "pos = nx.circular_layout(nx_graph)\n", "plt.figure(figsize=(6, 6))\n", "nx.draw(nx_graph, pos=pos, with_labels = True, node_size=500, font_color='yellow')" ] }, { "cell_type": "markdown", "metadata": { "id": "afMhKYScQvMp" }, "source": [ "### GCN Implementation\n", "Define the GCN with the `GraphConvolution` layers we implemented:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "jAMlrQnIc7iO" }, "outputs": [], "source": [ "def gcn_definition(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Defines a GCN for the karate club task.\n", " \n", " Args:\n", " graph: GraphsTuple the network processes.\n", "\n", " Returns:\n", " output graph with updated node values.\n", " \"\"\"\n", " gn = GraphConvolution(\n", " update_node_fn=lambda n: jax.nn.relu(hk.Linear(8)(n)),\n", " add_self_edges=True)\n", " graph = gn(graph)\n", "\n", " gn = GraphConvolution(\n", " update_node_fn=hk.Linear(2)) # output dim is 2 because we have 2 output classes.\n", " graph = gn(graph)\n", " return graph" ] }, { "cell_type": "markdown", "metadata": { "id": "XCZI26T9Q2vy" }, "source": [ "Training and evaluation code:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1n1kCuqtkvfm" }, "outputs": [], "source": [ "def optimize_club(network: hk.Transformed, params: hk.Params, \\\n", " graph_karate_club: jraph.GraphsTuple, labels: jnp.ndarray, \\\n", " num_steps: int) -> jnp.ndarray:\n", " \"\"\"Solves the karate club problem by optimizing the assignments of students.\"\"\"\n", "\n", " @jax.jit\n", " def predict(params: hk.Params) -> jnp.ndarray:\n", " decoded_graph = network.apply(params, graph_karate_club)\n", " return jnp.argmax(decoded_graph.nodes, axis=1)\n", "\n", " @jax.jit\n", " def prediction_loss(params: hk.Params) -> jnp.ndarray:\n", " decoded_graph = network.apply(params, graph_karate_club)\n", " # We interpret the decoded nodes as a pair of logits for each node.\n", " log_prob = jax.nn.log_softmax(decoded_graph.nodes)\n", " # The only two assignments we know a-priori are those of Mr. Hi (Node 0)\n", " # and John A (Node 33).\n", " return -(log_prob[0, 0] + log_prob[33, 1])\n", "\n", " opt_init, opt_update = optax.adam(1e-2)\n", " opt_state = opt_init(params)\n", "\n", " @jax.jit\n", " def update(params: hk.Params, opt_state) -> Tuple[hk.Params, Any]:\n", " \"\"\"Returns updated params and state.\"\"\"\n", " g = jax.grad(prediction_loss)(params)\n", " updates, opt_state = opt_update(g, opt_state)\n", " return optax.apply_updates(params, updates), opt_state\n", "\n", " @jax.jit\n", " def accuracy(params: hk.Params) -> jnp.ndarray:\n", " decoded_graph = network.apply(params, graph_karate_club)\n", " return jnp.mean(jnp.argmax(decoded_graph.nodes, axis=1) == labels)\n", "\n", " for step in range(num_steps):\n", " print(f\"step {step} accuracy {accuracy(params).item():.2f}\")\n", " params, opt_state = update(params, opt_state)\n", "\n", " return predict(params)" ] }, { "cell_type": "markdown", "metadata": { "id": "fkyao6e5RBug" }, "source": [ "Let's train the GCN! We expect this model reach an accuracy of about 0.91." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "tcp00eY46vTE" }, "outputs": [], "source": [ "network = hk.without_apply_rng(hk.transform(gcn_definition))\n", "graph_karate_club = get_zacharys_karate_club()\n", "labels = get_ground_truth_assignments_for_zacharys_karate_club()\n", "params = network.init(jax.random.PRNGKey(42), graph_karate_club)\n", "\n", "result = optimize_club(network=network, params=params, graph_karate_club=graph_karate_club, labels=labels, num_steps=15)" ] }, { "cell_type": "markdown", "metadata": { "id": "J3rPI44_VbaY" }, "source": [ "Node assignments predicted by the model at the end of training:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "EBKh7f-SPBnX" }, "outputs": [], "source": [ "result" ] }, { "cell_type": "markdown", "metadata": { "id": "W0gNu67xP-_K" }, "source": [ "Visualize ground truth and predicted node assignments:\n", "\n", "What do you think of the results?" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ndklBMr6PHLY" }, "outputs": [], "source": [ "zacharys_karate_club = get_zacharys_karate_club()\n", "nx_graph = convert_jraph_to_networkx_graph(zacharys_karate_club)\n", "pos = nx.circular_layout(nx_graph)\n", "\n", "fig = plt.figure(figsize=(15, 7))\n", "ax1 = fig.add_subplot(121)\n", "nx.draw(\n", " nx_graph,\n", " pos=pos,\n", " with_labels=True,\n", " node_size=500,\n", " node_color=result.tolist(),\n", " font_color='white')\n", "ax1.title.set_text('Predicted Node Assignments with GCN')\n", "\n", "gt_labels = get_ground_truth_assignments_for_zacharys_karate_club()\n", "ax2 = fig.add_subplot(122)\n", "nx.draw(\n", " nx_graph,\n", " pos=pos,\n", " with_labels=True,\n", " node_size=500,\n", " node_color=gt_labels.tolist(),\n", " font_color='white')\n", "ax2.title.set_text('Ground-Truth Node Assignments')\n", "fig.suptitle('Do you spot the difference? 😐', y=-0.01)\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "source": [ "### ***Task 5: Training a Deeper GCN***\n", "\n", "Lets try train a deeper GCN! Lets start off with 3 layers and see if that improves performance. Then try 5! " ], "metadata": { "id": "c9PFLF24m9Tp" } }, { "cell_type": "markdown", "source": [ "#### 5a) 3-Layer GCN " ], "metadata": { "id": "fBAbrPz7XPCQ" } }, { "cell_type": "code", "source": [ "def gcn_3_layer(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Defines a graph neural network with more GCN layers.\n", " \n", " Args:\n", " graph: GraphsTuple the network processes.\n", "\n", " Returns:\n", " output graph with updated node values.\n", " \"\"\" \n", " ### BEGIN SOLUTION\n", "\n", " ### END SOLUTION\n", "\n", " return graph \n", "\n", "network = hk.without_apply_rng(hk.transform(gcn_3_layer))\n", "graph_karate_club = get_zacharys_karate_club()\n", "labels = get_ground_truth_assignments_for_zacharys_karate_club()\n", "params = network.init(jax.random.PRNGKey(42), graph_karate_club)\n", "\n", "result = optimize_club(network=network, params=params, graph_karate_club=graph_karate_club, labels=labels, num_steps=15)" ], "metadata": { "id": "DZKhS7Wl2hIf" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "#### 5b) 5-Layer GCN " ], "metadata": { "id": "EqHh3t_aYKrk" } }, { "cell_type": "code", "source": [ "def gcn_5_layer(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Defines a graph neural network with more GCN layers.\n", " \n", " Args:\n", " graph: GraphsTuple the network processes.\n", "\n", " Returns:\n", " output graph with updated node values.\n", " \"\"\" \n", " ### BEGIN SOLUTION\n", "\n", " ### END SOLUTION\n", "\n", " return graph \n", "\n", "network = hk.without_apply_rng(hk.transform(gcn_5_layer))\n", "graph_karate_club = get_zacharys_karate_club()\n", "labels = get_ground_truth_assignments_for_zacharys_karate_club()\n", "params = network.init(jax.random.PRNGKey(42), graph_karate_club)\n", "\n", "result = optimize_club(network=network, params=params, graph_karate_club=graph_karate_club, labels=labels, num_steps=15)" ], "metadata": { "id": "wD32F5DxXIJa" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "#@title ***Task 5: Solution*** { display-mode: \"form\" }\n", "def gcn_3_layer(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Defines a graph neural network with 3 GCN layers.\n", " \n", " Args:\n", " graph: GraphsTuple the network processes.\n", "\n", " Returns:\n", " output graph with updated node values.\n", " \"\"\"\n", " gn = GraphConvolution(\n", " update_node_fn=lambda n: jax.nn.relu(hk.Linear(8)(n)),\n", " add_self_edges=True)\n", " \n", " graph = gn(graph)\n", "\n", " gn = GraphConvolution(\n", " update_node_fn=lambda n: jax.nn.relu(hk.Linear(4)(n)),\n", " add_self_edges=True)\n", " \n", " graph = gn(graph)\n", "\n", " gn = GraphConvolution(\n", " update_node_fn=hk.Linear(2))\n", " \n", " graph = gn(graph)\n", " \n", " return graph\n", "\n", "\n", "def gcn_5_layer(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Defines a graph neural network with more GCN layers.\n", " \n", " Args:\n", " graph: GraphsTuple the network processes.\n", "\n", " Returns:\n", " output graph with updated node values.\n", " \"\"\"\n", " gn = GraphConvolution(\n", " update_node_fn=lambda n: jax.nn.relu(hk.Linear(8)(n)),\n", " add_self_edges=True)\n", " \n", " graph = gn(graph)\n", " \n", " for _ in range(3): \n", " gn = GraphConvolution(\n", " update_node_fn=lambda n: jax.nn.relu(hk.Linear(4)(n)), \n", " add_self_edges=True\n", " )\n", "\n", " graph = gn(graph)\n", "\n", " gn = GraphConvolution(\n", " update_node_fn=hk.Linear(2))\n", " \n", " graph = gn(graph)\n", "\n", " return graph \n", "\n", "\n", "graph_karate_club = get_zacharys_karate_club()\n", "labels = get_ground_truth_assignments_for_zacharys_karate_club()\n", "\n", "print(\"----- 3-LAYER GCN -----\")\n", "network_3_layer = hk.without_apply_rng(hk.transform(gcn_3_layer))\n", "params = network_3_layer.init(jax.random.PRNGKey(42), graph_karate_club)\n", "\n", "result = optimize_club(network=network_3_layer, params=params, graph_karate_club=graph_karate_club, labels=labels, num_steps=15)\n", "\n", "print(\"----- 5-LAYER GCN -----\")\n", "network_5_layer = hk.without_apply_rng(hk.transform(gcn_5_layer))\n", "params = network_5_layer.init(jax.random.PRNGKey(42), graph_karate_club)\n", "\n", "result = optimize_club(network=network_5_layer, params=params, graph_karate_club=graph_karate_club, labels=labels, num_steps=15)\n" ], "metadata": { "id": "O-Gl94wW1ZUG" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "l2vQsrVCbegT" }, "source": [ "# Section 6: Graph Attention Network (GAT)" ] }, { "cell_type": "markdown", "metadata": { "id": "pppb-gQgcHZO" }, "source": [ "While the coefficents in GCN were dependent on both nodes, they were still constant. If we relax this to make them dependent on the current input, we get **attention**. Namely, our update rule for one node will now be:\n", "$$ h'_i = \\sigma \\left( \\sum_{j \\in \\mathcal{N}(i)} \\alpha_{ij} W h_j \\right) $$\n", "where $\\alpha_{ij}$ are the **attention coefficients**, determining how much of the incoming \"message\" from node $j$ should node $i$ take in and $\\sigma$ is the ELU. \n", "\n", "To compute $\\alpha_{ij}$ we apply a one-layer MLP $a$ on concatenated \"messages\" $Wh_i$ and $Wh_j$ with LeakyReLU activation:\n", "\n", "$$\\alpha_{ij} = \\frac{\\exp\\left(\\text{LeakyReLU}\\left(\\mathbf{a}\\left[W h_i||W h_j\\right]\\right)\\right)}{\\sum_{k\\in\\mathcal{N}(i)} \\exp\\left(\\text{LeakyReLU}\\left(\\mathbf{a}\\left[W h_i||W h_k\\right]\\right)\\right)}$$\n", "\n", "Softmax is applied as normalization, s.t. the sum of coefficients each node uses to receive messages is the same irrespective of the size of the neighborhood.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "CMiB44oLsL0w" }, "source": [ "To stabilize learning, similar to the original Transformer paper, GAT employs **multi-head attention**: each GAT layer has $K$ independent replicas, whose results are simply concatenated to obtain final feature vectors, or averaged if we are at the output layer. Here is a visualization:" ] }, { "cell_type": "markdown", "metadata": { "id": "wwC0nlP7sisO" }, "source": [ "![gat](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABAwAAAKfCAYAAADqwVqhAAABJmlDQ1BrQ0dDb2xvclNwYWNlQWRvYmVSR0IxOTk4AAAokWNgYFJILCjIYRJgYMjNKykKcndSiIiMUmB/xMDEwM7ABYTiicnFBY4BAT4MQACjUcG3awyMIPqyLsgsTHm8gCsltTgZSP8B4uzkgqISBgbGDCBbubykAMTuAbJFkrLB7AUgdhHQgUD2FhA7HcI+AVYDYd8BqwkJcgayPwDZfElgNhPILr50CFsAxIbaCwKCjin5SakKIN9rGFpaWmiS6AeCoCS1ogREO+cXVBZlpmeUKDgCQypVwTMvWU9HwcjA0IKBARTuENWfA8HhySh2BiGGAAixORIMDP5LGRhY/iDETHoZGBboMDDwT0WIqRkyMAjoMzDsm5NcWlQGNYaRyZiBgRAfAMt2Si8UhcpCAAAACXBIWXMAADLAAAAywAEoZFrbAABAAElEQVR4AeydB2AU1brH/7ubThJI6ITeixRBelcUaSoKgoogYgMrdkC9XnsXK4pduTSpD5EuVbr03gkdEhJIgSS7mzffxJndCSm7ySbZTf7nvXXOOXPqb3a5Od98xZSuJDCRgA8SsFqt2Lp1K/7++2+sXbsW27dvx6FDh2C32z22mzJlyqBp06Zo3bo1OnbsqH4qVqzosfE5EAmQAAmQAAmQAAmQAAmQAAl4KwETBQbe+mi4rqwInDt3DvPmzcOCBQuwdOlSXL58OatmBVrXrFkz9OrVC71790anTp1gNpsLdD4OTgIkQAIkQAIkQAIkQAIkQAJFQYACg6KgzjndInDp0iVMmzYNU6dOxcqVK93WIDCZTChdujQiIyMRFBSEgIAAWCwWpKamqp+EhATExsYiJSXFrXVJ48qVK2PAgAEYMmQI2rRp43Z/diABEiABEiABEiABEiABEiABbyVAgYG3PhmuCxs2bMCECRPw+++/Izk5OVciderUgbz9l0+DBg1Qs2ZN9VOhQgVVQJDbAImJiThx4gSOHTuGI0eOYNeuXdixY4f6kXu5JTFdeOSRRzBs2DCEhYXl1pz3SYAESIAESIAESIAESIAESMCrCVBg4NWPp+QtTlxqzJ07Fx999JHqmyAnAo0bN8att96KLl26oEOHDihfvnxOzfN8z2azqf4RxFeCmEH89ddfyEmAINoMIjh4+umnERUVled52ZEESIAESIAESIAESIAESIAEipIABQZFSZ9zGwjMmTMH//nPf9Q3+oYb/xbEtKBdu3YYNGgQ+vfvj+rVq2fVrMDrxJRBTCOmT5+OWbNm4eLFi1nOGRgYiEcffRRjxoxBpUqVsmzDShIgARIgARIgARIgARIgARLwVgIUGHjrkylB61q/fr36Nn7jxo1Z7lre0g8fPhwjRoxQTQyybFRElWlpafjjjz/w3XffYdGiRVn6VwgJCcELL7yAF198EZJnIgESIAESIAESIAESIAESIAFfIECBgS88pWK6Rol48Nxzz+F///tfljsUJ4Jy/6677nLJB0GWgxRipfg+GD9+PH744YcsTRaqVq2KTz75BAMHDizEVXEqEiABEiABEiABEiABEiABEsgbAQoM8saNvfJJ4KefflKFAXFxcdeMJKEK33jjDXTv3v2ae75QIXsSwcBnn30GicCQOfXr1w9ff/01RIDARAIkQAIkQAIkQAIkQAIkQALeSoACA299MsV0XaJVIOYFCxYsuGaHTZo0UZ0diiPD4pAkVONbb72Fr776CmK64JzEMaIIDe69917nauZJgARIgARIgARIgARIgARIwGsIUGDgNY+i+C9EhAQPPPAAzp8/b9hsmTJl1IP1Y4895hOmB4bFu1DYv3+/6qNBfBxkTvfddx+++eYbhIaGZr7FMgmQAAmQAAmQAAmQAAmQAAkUKQEKDIoUf8mYXEIlionBf//7X0jeOd1555348ssvUblyZefqYpmfNGkSRo8ejZiYGMP+GjVqhNmzZ6NBgwaGehZIgARIgARIgARIgARIgARIoCgJUGBQlPRLwNyJiYm455571EgCztsVrYIJEyZg8ODBztXFPi/aFRLtQSIrOKewsDBMmTIFffr0ca5mngRIgARIgARIgARIgARIgASKjIC5yGbmxMWewOnTp9GlS5drDscdO3bE9u3bS5ywQB54hQoVMG/ePFWrIjAwUP8OiHPE22+/XfVroFcyQwIkQAIkQAIkQAIkQAIkQAJFSIAaBkUIvzhPffDgQfTo0QPR0dGGbT755JP4+OOP4e/vb6gviYWNGzeqISNPnjxp2P7YsWPx9ttvG+pYIAESIAESIAESIAESIAESIIHCJkCBQWETLwHz7dq1SxUWSEQELVksFtW530MPPaRV8aoQEBOF3r17459//jHw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afm5rnXw4MF6G9E0mD59ul5mhgRIgARIgARIgARIgARIgATySoACg7ySK+b9Vq9ejfj4eH2XAwcO9NmD9ujRozF37lyMGTNG309xytx5553w83O4I5k3b15x2h73QgIkQAIkQAIkQAIkQAIkUEQEKDAoIvDePu2CBQsMS7z99tsNZV8qSCjF2267zZeW7NZay5Urhw4dOuh91q5di0uXLullZkiABEiABEiABEiABEiABEggLwQoMMgLtRLQZ9GiRfouJaKA84FUv8GM1xBwdk5ptVqxbNkyr1kbF0ICJEACJEACJEACJEACJOCbBCgw8M3nVqCrltCDu3fv1ufo3r07/P399TIz3kegZ8+ehkWJSQkTCZAACZAACZAACZAACZAACeSHgMPwOT+jsG+xIiAq7VqYPtlY586dvWZ/Z86cwfbt23Hu3DlI/vz584iJiVH9K3z77bcICgrymrUW5kKaN2+OsLAw1bmjzCthJJlIgARIgARIgARIgARIgARIID8EKDDID71i2nf9+vWGnXlTdIS+fftiy5YthvVJITIyEoGBgdfUl5QKs9mM9u3bqyEjZc9bt27F1atXS6wApaQ8d+6TBEiABEiABEiABEiABAqSAE0SCpKuj44tb/C1JN73W7ZsqRWL/Dpz5kysXLkSs2bNQqtWrfT1iBZEcQuXqG/OxUybNm30luLHYM+ePXqZGRIgARIgARIgARIgARIgARJwlwAFBu4SKwHtd+zYoe+yQYMGCAgI0MtFnalZsya6dOmC/v37o2nTpvpyunbtqudLasaZhzDYuXNnSUXBfZMACZAACZAACZAACZAACXiAAAUGHoBYnIZITExEdHS0vqXMh1D9hhdkNm7cqK9ChAglPTVr1syAgBoGBhwskAAJkAAJkAAJkAAJkAAJuEmAAgM3gRX35seOHTNssV69eoaytxTE2aF2IJawjy1atPCWpRXZOmrXrg3xZaClo0ePalleSYAESIAESIAESIAESIAESMBtAo7Thdtd2aE4EsgsMKhVq5ZXblP8GGipU6dOsFgsWrHEXsV0pEqVKvr+KTDQUTBDAiRAAiRAAiRAAiRAAiSQBwIUGOQBWnHucvLkScP2atSoYSh7S2H58uX6Uui/QEcB5+d16tQpxw3mSIAESIAESIAESIAESIAESMBNAhQYuAmsuDePiYkxbLF8+fKG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n5pidb69bp0YFxdnzpHIn4Cu+6DrP5QsWdI8QKcpPPfccyZPAgEEEEAAAQQQQCCzAFMSMptwBgEEEPCowM6dO6VBgwa2HRFGjhwpw4YN82g9/L2w2bNnW9tUpqenW03VnRP0XHx8vL83nfYhgAACCCCAAAL5EiBgkC82XoQAAgi4RiAtLU2aNWtmm4rQo0cPmTlzpmsK4Ck2gZdeekleffVVc65ChQrW+ga6VgQHAggggAACCCCAgF2AKQl2D3IIIICARwXefvttW7BAh887T03waGUCoLAXX3zR2rLS0dTk5GR56qmnHFl+I4AAAggggAACCDgJMMLACYMkAggg4EkBnYoQExMjuv2fHjpEfuHChdK2bVtPViPgytq9e7fExsbKqVOnTNt1akLHjh1NngQCCCCAAAIIIICACCMM+FeAAAIIeEngiSeeMMECrcKjjz5KsMADfREdHS26RoTz8dhjj4lua8mBAAIIIIAAAgggcFWAEQZXLUghgAACHhPQb7Q7d+5sytOpCJs3b5bIyEhzjoT7BHThw1atWsnixYtNIf/617/k73//u8mTQAABBBBAAAEEAl2AgEGg/wug/Qgg4HGBS5cuSb169WTr1q2m7ClTpshf/vIXkyfhfoENGzbIrbfeKtofeoSHh8uuXbukfPny7i+cEhBAAAEEEEAAgQIgwJSEAtBJVBEBBPxLYPLkybZgge6SQLDA831cv359eeSRR0zBZ86cyTRVwVwkgQACCCCAAAIIBKAAIwwCsNNpMgIIeE/g4sWLUqdOHUlMTDSVWLZsmTRp0sTkC0Lil19+kX379km/fv0KQnWzreORI0ekevXqosECPYoWLWqNMqhUqVK2r+ECAggggAACCCAQKAKMMAiUnqadCCDgEwJTp061BQt0HYOCFixQyBEjRshDDz0kBw4c8AnX/FaiXLly8uSTT5qXX7hwQXSrSw4EEEAAAQQQQAABdkng3wACCCDgUYHRo0fbynvllVds+YKS6dChg+hoiYztKSj1d67n0KFDJSIiwpwaN26cbctFc4EEAggggAACCCAQYAKMMAiwDqe5CCDgPYFFixbJ+vXrTQXatWsnDRs2NPmClBg0aJDot/PvvvuujB8/viBVPVNdS5UqJQMGDDDnT506JZ9++qnJk0AAAQQQQAABBAJVgIBBoPY87UYAAY8LjB071lbmM888Y8t7MqN10W/Vg4OD8/Wj2z/q/P/Lly9bCwd+/fXXnqy+y8saPHiwFCpUyDz3k08+MWkSCCCAAAIIIIBAoApc/esoUAVoNwIIIOABAf1w/e2335qSatSoIfHx8Sbv6URUVJTcfPPNcvbs2XwVffDgQTl+/Lj1Wg0eVKxYMV/P8ZUXValSRbp27SqzZs2yqrRt2zb59ddfpVWrVr5SReqBAAIIIIAAAgh4XICAgcfJKRABBAJRYMqUKZKammqarkPgg4KCTN7TCV1sUX/ycyxZskQ6depkvbR9+/YyYcIEqVy5cn4e5VOv0S0WHQEDrdhnn31GwMCneojKIIAAAggggICnBdhW0dPilIcAAgEp0KxZM9HtE/XQaQBJSUkF8lv5rVu3SlxcnJw+fVpGjRolOq3Cm4EPV/5j0ukVOtJg//791mN1bYNDhw5JaGioK4vhWQgggAACCCCAQIERYA2DAtNVVBQBBAqqwN69e2X58uWm+q1bty6QwQJtwKRJk6xgweuvvy66u4C/BAu0bRrIuffeezVpHSdOnJAFCxY4svxGAAEEEEAAAQQCToCAQcB1OQ1GAAFPC/zwww+Snp5uiu3Tp49JF7TEkCFDrLUYhg8fXtCqfk317d27t+2+7777zpYngwACCCCAAAIIBJIAUxICqbdpKwIIeEVAF9PToIHjOHDgQIEdYeBog7/+1sCOLuCYnJxsNVGnKOzZs8dfm0u7EEAAAQQQQACBHAUYYZAjDxcRQACB6xPQhQ5//vln85DY2FiCBUbD9xI6xaJDhw6mYjqdZMuWLSZPAgEEEEAAAQQQCCQBAgaB1Nu0FQEEPC6wdu1a29aFzh9GPV4ZCrwmgYx9pNsrciCAAAIIIIAAAoEowLaKgdjrtBkBBDwmoFsQOh8tW7Z0zno1ffDgQVm3bp01/F7Thw8flqNHj1oLGY4dO1aKFi3q1fp5q/CMfaR9+Oijj3qrOpSLAAIIIIAAAgh4TYCAgdfoKRgBBAJBwLGVorZVh7vr9oq+cnTp0kV0BETGo3Tp0lKkSJGMpwMmX7lyZdGfffv2WW123uEiYBBoKAIIIIAAAgggcEWAKQn8M0AAAQTcKKDf4DuOmjVrin4Y95VjxowZ8ssvv8jMmTOlYcOGplr6Dbs/bZdoGpaHRFxcnLl7586dtmkl5gIJBBBAAAEEEEDAzwUIGPh5B9M8BBDwnsC5c+ckISHBVKB+/fom7QuJ6OhoadWqlfTo0UOc69a6dWtfqJ5X6xATE2PK150TNm7caPIkEEAAAQQQQACBQBEgYBAoPU07EUDA4wJbt26Vy5cvm3KdP4Sakz6SWLlypamJBhEC/XAOoKjF5s2bA52E9iOAAAIIIIBAAAoQMAjATqfJCCDgGYHExERbQbVq1bLlfSWjix06PhBHRkZKgwYNfKVqXqtHxr7K2JdeqxgFI4AAAggggAACHhQgYOBBbIpCAIHAEsj4IVOnAPjioesYOI4WLVpISEiIIxuwv6tVq2Zr++7du215MggggAACCCCAQCAIEDAIhF6mjQgg4BWBpKQkW7lVq1a15X0l8/PPP5uqsH7BnxRhYWFSpkwZ45KxL80FEggggAACCCCAgB8LEDDw486laQgg4F2BY8eO2SpQrlw5W95XMv/5z39MVVi/wFCIc38dPXr06gVSCCCAAAIIIIBAgAgQMAiQjqaZCCDgeQHnD5kRERESGhrq+UrkUmJycrJs2bLFuku/VW/UqFEurwicy2XLljWNzRj8MRdIIIAAAggggAACfixAwMCPO5emIYCAdwVOnTplKlCyZEmT9qWE8+iCZs2aSaFChXypel6ti3OfnTx50qt1oXAEEEAAAQQQQMAbAgQMvKFOmQggEBACqamppp1FihQxaV9K5LZ+wZEjR2TXrl2SlpbmS9X2SF2c+8y5Lz1SOIUggAACCCCAAAI+IEDAwAc6gSoggIB/CqSkpJiGOX/4NCd9IOE8wsCxfsHvv/8uDz74oOgWi9WrV5eWLVtKsWLF5LbbbpN58+b5QK09UwXnKSQXL16U9PR0zxRMKQgggAACCCCAgI8IEDDwkY6gGggg4H8Cvv4B8+DBg7Jt2zYLvmjRohIXFyeTJk2STp06SUxMjCxfvlx0KP6BAwdk/vz5snXrVomPj5f33nvP/zorixYFBQXZzvp6f9oqSwYBBBBAAAEEEHCBAJNVXYDIIxBAAIGsBJxHFfjikHbn0QWNGzeWkSNHio4u2LRpk5QuXdrWpDZt2oj+zJ49W4YPHy733HOPREVF2e7xt4xzn+naDsHBxNj9rY9pDwIIIIAAAgjkLMBfPzn7cBUBBBDIt4DzkHbnD5/5fqCLX+gcMFizZo2sWrVKvvrqq0zBAkexTZs2tZLnzp2T3377zXHab38XhCklfotPwxBAAAEEEEDAJwQIGPhEN1AJBBDwR4Hw8HDTLF9cZd95wcMyZcrI559/LoULFzZ1zpjQNQ0ch05P8PfDeZcL577093bTPgQQQAABBBBAwCFAwMAhwW8EEEDAxQJly5Y1T9SAgS/tNLB//37ZsWOHqd9HH30kpUqVMvmsEomJiea085aD5mSGhM7513UScjsuXbokR48eze02j193rpMGVDgQQAABBBBAAIFAE2ANg0DrcdqLAAIeE3D+kKkfno8dOyYVKlTwWPk5FeQ8HUF3R+jYsWNOt1vXNm/ebO6pUaOGSWeX2Lhxo7V44k033STt27eX5s2bS/ny5UWnaiQlJcnevXtFn/njjz9Kv3795O23387uUV457xwwcA7+eKUyFIoAAggggAACCHhBgICBF9ApEgEEAkOgUqVKtobqB2RfDBjozge5HboGw5IlS8xtt956q0lnl9CtCPXYsmWL9fP+++9neet9990n//rXv7K85q2TFy5ckMOHD5viM/aluUACAQQQQAABBBDwYwGmJPhx59I0BBDwrkC1atVsFdi9e7ct782M8/oFd9xxR65VWbFihZw9e9a6r27dulK5cuVcX5PbDbGxsfL111/L5MmTxXlHidxe54nre/bsEedtFKOjoz1RLGUggAACCCCAAAI+JcAIA5/qDiqDAAL+JJDxQ+bOnTt9onk6HWDXrl1WXSIiIuT222/PtV46bcBx3HXXXY5krr+LFSsm33//vaxbt0503YSwsDC5+eabrZ/69etLUFBQrs/wxg0OH0fZGYM/jvP8RgABBBBAAAEE/FmAgIE/9y5tQwABrwroN/HOx4YNG5yzXks7r1/QsmVLKVQo97cCHQngOLp16+ZI5vo7ODhY2rVrZ/3kerMP3ZCxrzL2pQ9VlaoggAACCCCAAAJuE2BKgttoeTACCAS6gO4kUKVKFcOQ8UOoueDhRF6nI/z+++9mRIIuWti6dWsP19jzxa1fv95WqI6G4EAAAQQQQAABBAJNgIBBoPU47UUAAY8KxMTEmPJ08T/HOgDmpBcSziMMrmX9gi+++MLUslevXhISEmLy/ppYvXq1aZqu15DblpPmZhIIIIAAAggggIAfCRAw8KPOpCkIIOB7Ao0bNzaVunTpkixfvtzkvZHQnRoSEhKsosPDwyW33Q7S0tKsRQkdddXtD52P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)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "KJqT6mjgBBmQ" }, "outputs": [], "source": [ "# GAT implementation adapted from https://github.com/deepmind/jraph/blob/master/jraph/_src/models.py#L442.\n", "def GAT(attention_query_fn: Callable,\n", " attention_logit_fn: Callable,\n", " node_update_fn: Optional[Callable] = None,\n", " add_self_edges: bool = True) -> Callable:\n", " \"\"\"Returns a method that applies a Graph Attention Network layer.\n", "\n", " Graph Attention message passing as described in\n", " https://arxiv.org/pdf/1710.10903.pdf. This model expects node features as a\n", " jnp.array, may use edge features for computing attention weights, and\n", " ignore global features. It does not support nests.\n", " Args:\n", " attention_query_fn: function that generates attention queries from sender\n", " node features.\n", " attention_logit_fn: function that converts attention queries into logits for\n", " softmax attention.\n", " node_update_fn: function that updates the aggregated messages. If None, will\n", " apply leaky relu and concatenate (if using multi-head attention).\n", "\n", " Returns:\n", " A function that applies a Graph Attention layer.\n", " \"\"\"\n", " # pylint: disable=g-long-lambda\n", " if node_update_fn is None:\n", " # By default, apply the leaky relu and then concatenate the heads on the\n", " # feature axis.\n", " node_update_fn = lambda x: jnp.reshape(\n", " jax.nn.leaky_relu(x), (x.shape[0], -1))\n", "\n", " def _ApplyGAT(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Applies a Graph Attention layer.\"\"\"\n", " nodes, edges, receivers, senders, _, _, _ = graph\n", " # Equivalent to the sum of n_node, but statically known.\n", " try:\n", " sum_n_node = nodes.shape[0]\n", " except IndexError:\n", " raise IndexError('GAT requires node features')\n", "\n", " # Pass nodes through the attention query function to transform\n", " # node features, e.g. with an MLP.\n", " nodes = attention_query_fn(nodes)\n", "\n", " total_num_nodes = tree.tree_leaves(nodes)[0].shape[0]\n", " if add_self_edges:\n", " # We add self edges to the senders and receivers so that each node\n", " # includes itself in aggregation.\n", " receivers, senders = add_self_edges_fn(receivers, senders,\n", " total_num_nodes)\n", "\n", " # We compute the softmax logits using a function that takes the\n", " # embedded sender and receiver attributes.\n", " sent_attributes = nodes[senders]\n", " received_attributes = nodes[receivers]\n", " att_softmax_logits = attention_logit_fn(sent_attributes,\n", " received_attributes, edges)\n", "\n", " # Compute the attention softmax weights on the entire tree.\n", " att_weights = jraph.segment_softmax(\n", " att_softmax_logits, segment_ids=receivers, num_segments=sum_n_node)\n", "\n", " # Apply attention weights.\n", " messages = sent_attributes * att_weights\n", " # Aggregate messages to nodes.\n", " nodes = jax.ops.segment_sum(messages, receivers, num_segments=sum_n_node)\n", "\n", " # Apply an update function to the aggregated messages.\n", " nodes = node_update_fn(nodes)\n", "\n", " return graph._replace(nodes=nodes)\n", "\n", " # pylint: enable=g-long-lambda\n", " return _ApplyGAT" ] }, { "cell_type": "markdown", "metadata": { "id": "6t9bNfSA9-HR" }, "source": [ "## Test GAT Layer" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "hjpYLFvv9-HT" }, "outputs": [], "source": [ "def attention_logit_fn(sender_attr: jnp.ndarray, receiver_attr: jnp.ndarray,\n", " edges: jnp.ndarray) -> jnp.ndarray:\n", " del edges\n", " x = jnp.concatenate((sender_attr, receiver_attr), axis=1)\n", " return hk.Linear(1)(x)\n", "\n", "\n", "gat_layer = GAT(\n", " attention_query_fn=lambda n: hk.Linear(8)\n", " (n), # Applies W to the node features\n", " attention_logit_fn=attention_logit_fn,\n", " node_update_fn=None,\n", " add_self_edges=True,\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "rV5PndNz9-HT" }, "outputs": [], "source": [ "graph = build_toy_graph()\n", "network = hk.without_apply_rng(hk.transform(gat_layer))\n", "params = network.init(jax.random.PRNGKey(42), graph)\n", "out_graph = network.apply(params, graph)\n", "out_graph.nodes" ] }, { "cell_type": "markdown", "metadata": { "id": "anfVGJwBe27v" }, "source": [ "## Train GAT Model on Karate Club Dataset\n", "We will now repeat the karate club experiment with a GAT network." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "jUXJcRnVMr4X" }, "outputs": [], "source": [ "def gat_definition(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Defines a GAT network for the karate club node classification task.\n", "\n", " Args:\n", " graph: GraphsTuple the network processes.\n", "\n", " Returns:\n", " output graph with updated node values.\n", " \"\"\"\n", "\n", " def _attention_logit_fn(sender_attr: jnp.ndarray, receiver_attr: jnp.ndarray,\n", " edges: jnp.ndarray) -> jnp.ndarray:\n", " del edges\n", " x = jnp.concatenate((sender_attr, receiver_attr), axis=1)\n", " return hk.Linear(1)(x)\n", "\n", " gn = GAT(\n", " attention_query_fn=lambda n: hk.Linear(8)(n),\n", " attention_logit_fn=_attention_logit_fn,\n", " node_update_fn=None,\n", " add_self_edges=True)\n", " graph = gn(graph)\n", "\n", " gn = GAT(\n", " attention_query_fn=lambda n: hk.Linear(8)(n),\n", " attention_logit_fn=_attention_logit_fn,\n", " node_update_fn=hk.Linear(2),\n", " add_self_edges=True)\n", " graph = gn(graph)\n", " return graph" ] }, { "cell_type": "markdown", "metadata": { "id": "51AwRipThKrH" }, "source": [ "Let's train the model!\n", "\n", "We expect the model to reach an accuracy of about 0.97." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "TEHco8n-Mr4b" }, "outputs": [], "source": [ "network = hk.without_apply_rng(hk.transform(gat_definition))\n", "graph_karate_club = get_zacharys_karate_club()\n", "labels = get_ground_truth_assignments_for_zacharys_karate_club()\n", "params = network.init(jax.random.PRNGKey(42), graph_karate_club)\n", "\n", "result = optimize_club(network=network, params=params, graph_karate_club=graph_karate_club, labels=labels, num_steps=15)" ] }, { "cell_type": "markdown", "metadata": { "id": "m7Cns9EITp0k" }, "source": [ "The final node assignment predicted by the trained model:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "_QWqU8AfdkkV" }, "outputs": [], "source": [ "result" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "0leRi5igUUyd" }, "outputs": [], "source": [ "zacharys_karate_club = get_zacharys_karate_club()\n", "nx_graph = convert_jraph_to_networkx_graph(zacharys_karate_club)\n", "pos = nx.circular_layout(nx_graph)\n", "\n", "fig = plt.figure(figsize=(15, 7))\n", "ax1 = fig.add_subplot(121)\n", "nx.draw(\n", " nx_graph,\n", " pos=pos,\n", " with_labels=True,\n", " node_size=500,\n", " node_color=result.tolist(),\n", " font_color='white')\n", "ax1.title.set_text('Predicted Node Assignments with GAT')\n", "\n", "gt_labels = get_ground_truth_assignments_for_zacharys_karate_club()\n", "ax2 = fig.add_subplot(122)\n", "nx.draw(\n", " nx_graph,\n", " pos=pos,\n", " with_labels=True,\n", " node_size=500,\n", " node_color=gt_labels.tolist(),\n", " font_color='white')\n", "ax2.title.set_text('Ground-Truth Node Assignments')\n", "fig.suptitle('Do you spot the difference? 😐', y=-0.01)\n", "plt.show()" ] }, { "cell_type": "markdown", "source": [ "## ***Task 6: Conditioning Attention Coefficients on only the Senders***\n", "In GATs, each attention coefficient $\\alpha_{ij}$ is computed by applying a one-layer MLP $a$ on concatenated \"messages\" $Wh_i$ and $Wh_j$. Thus, it is dependent on both the sender and receiver.\n", "\n", "For this task, by modifying the code below, create a GAT which computes attention coefficients by conditioning on only the senders." ], "metadata": { "id": "NHWNgF5Kgnr1" } }, { "cell_type": "code", "source": [ "### BEGIN SOLUTION\n", "def gat_definition(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Defines a GAT network for the karate club node classification task.\n", "\n", " Args:\n", " graph: GraphsTuple the network processes.\n", "\n", " Returns:\n", " output graph with updated node values.\n", " \"\"\"\n", "\n", " def _attention_logit_fn(sender_attr: jnp.ndarray, receiver_attr: jnp.ndarray,\n", " edges: jnp.ndarray) -> jnp.ndarray:\n", " del edges\n", " x = jnp.concatenate((sender_attr, receiver_attr), axis=1)\n", " return hk.Linear(1)(x)\n", "\n", " gn = GAT(\n", " attention_query_fn=lambda n: hk.Linear(8)(n),\n", " attention_logit_fn=_attention_logit_fn,\n", " node_update_fn=None,\n", " add_self_edges=True)\n", " graph = gn(graph)\n", "\n", " gn = GAT(\n", " attention_query_fn=lambda n: hk.Linear(8)(n),\n", " attention_logit_fn=_attention_logit_fn,\n", " node_update_fn=hk.Linear(2),\n", " add_self_edges=True)\n", " graph = gn(graph)\n", " return graph\n", "\n", "network = hk.without_apply_rng(hk.transform(gat_definition))\n", "graph_karate_club = get_zacharys_karate_club()\n", "labels = get_ground_truth_assignments_for_zacharys_karate_club()\n", "params = network.init(jax.random.PRNGKey(42), graph_karate_club)\n", "\n", "result = optimize_club(network=network, params=params, graph_karate_club=graph_karate_club, labels=labels, num_steps=15)\n", "### END SOLUTION" ], "metadata": { "id": "pjKZ3clwgrGn" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "# @title Run to test your GAT implementation.\n", "expected_result = jnp.array([\n", " 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1\n", "], dtype=jnp.int32)\n", "\n", "if jnp.allclose(result, expected_result):\n", " print(\"Your function looks correct!\")\n", "else: \n", " print(\"Something seems wrong. Give it another go!\")" ], "metadata": { "id": "kGOix_QVOB3y", "cellView": "form" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "#@title ***Task 6: Solution*** { display-mode: \"form\" }\n", "\n", "## BEGIN SOLUTION\n", "def gat_definition(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Defines a GAT network for the karate club node classification task.\n", "\n", " Args:\n", " graph: GraphsTuple the network processes.\n", "\n", " Returns:\n", " output graph with updated node values.\n", " \"\"\"\n", "\n", " def _attention_logit_fn(sender_attr: jnp.ndarray, receiver_attr: jnp.ndarray,\n", " edges: jnp.ndarray) -> jnp.ndarray:\n", " del edges\n", " return hk.Linear(1)(sender_attr)\n", "\n", " gn = GAT(\n", " attention_query_fn=lambda n: hk.Linear(8)(n),\n", " attention_logit_fn=_attention_logit_fn,\n", " node_update_fn=None,\n", " add_self_edges=True)\n", " graph = gn(graph)\n", "\n", " gn = GAT(\n", " attention_query_fn=lambda n: hk.Linear(8)(n),\n", " attention_logit_fn=_attention_logit_fn,\n", " node_update_fn=hk.Linear(2),\n", " add_self_edges=True)\n", " graph = gn(graph)\n", " return graph\n", "\n", "network = hk.without_apply_rng(hk.transform(gat_definition))\n", "graph_karate_club = get_zacharys_karate_club()\n", "labels = get_ground_truth_assignments_for_zacharys_karate_club()\n", "params = network.init(jax.random.PRNGKey(42), graph_karate_club)\n", "\n", "result = optimize_club(network=network, params=params, graph_karate_club=graph_karate_club, labels=labels, num_steps=15)\n", "### END SOLUTION" ], "metadata": { "id": "O-EBUnDdguY9" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "O5lB0nUHOxgz" }, "source": [ "# **Extension 1:** Graph Classification on MUTAG (Molecules)\n", "Up until this point, we have only used our GCN and GAT networks on node classification problems. Now, let's use the same model architectures on a **graph classification** task.\n", "\n", "The main difference from our previous setup is that instead of observing individual node latents, we are now attempting to summarize them into one embedding vector, representative of the entire graph, which we then use to predict the class of this graph.\n", "\n", "We will do this on one of the most common tasks of this type -- **molecular property prediction**, where molecules are represented as graphs. Nodes correspond to atoms, and edges represent the bonds between them." ] }, { "cell_type": "markdown", "metadata": { "id": "M4fkUGb9QvHb" }, "source": [ "## Setting up the dataset\n", "We will use the **MUTAG** dataset for this example, a common dataset from the [TUDatasets](https://chrsmrrs.github.io/datasets/) collection.\n", "\n", "We have converted this dataset to be compatible with jraph and will download it in the cell below.\n", "\n", "Citation for TUDatasets: [Morris, Christopher, et al. Tudataset: A collection of benchmark datasets for learning with graphs. arXiv preprint arXiv:2007.08663. 2020.](https://chrsmrrs.github.io/datasets/)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "KZ0QS3xOf66g" }, "outputs": [], "source": [ "# Download jraph version of MUTAG.\n", "!wget -P /tmp/ https://storage.googleapis.com/dm-educational/assets/graph-nets/jraph_datasets/mutag.pickle\n", "with open('/tmp/mutag.pickle', 'rb') as f:\n", " mutag_ds = pickle.load(f)" ] }, { "cell_type": "markdown", "metadata": { "id": "M3YEs64VQMJd" }, "source": [ "The dataset is saved as a list of examples, each example is a dictionary containing an `input_graph` and its corresponding target." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "_zqAvXs3QP-b" }, "outputs": [], "source": [ "len(mutag_ds)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "xEt8P4KbQSfp" }, "outputs": [], "source": [ "# Inspect the first graph\n", "g = mutag_ds[0]['input_graph']\n", "print(f'Number of nodes: {g.n_node[0]}')\n", "print(f'Number of edges: {g.n_edge[0]}')\n", "print(f'Node features shape: {g.nodes.shape}')\n", "print(f'Edge features shape: {g.edges.shape}')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4VsklehxQUVG" }, "outputs": [], "source": [ "draw_jraph_graph_structure(g)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "7moZTS1NQWSR" }, "outputs": [], "source": [ "# Target for first graph\n", "print(f\"Target: {mutag_ds[0]['target']}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "J32fHwXEQa4X" }, "source": [ "We see that there are 188 graphs, to be classified in one of 2 classes, representing \"their mutagenic effect on a specific gram negative bacterium\". Node features represent the 1-hot encoding of the atom type (0=C, 1=N, 2=O, 3=F, 4=I, 5=Cl, 6=Br). Edge features (`edge_attr`) represent the bond type, which we will here ignore.\n", "\n", "Let's split the dataset to use the first 150 graphs as the training set (and the rest as the test set)." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "nJaVac8LQYX4" }, "outputs": [], "source": [ "train_mutag_ds = mutag_ds[:150]\n", "test_mutag_ds = mutag_ds[150:]" ] }, { "cell_type": "markdown", "metadata": { "id": "GrG5HHTPRB2S" }, "source": [ "## Padding Graphs to Speed Up Training\n", "Since jax recompiles the program for each graph size, training would take a long time due to recompilation for different graph sizes. To address that, we pad the number of nodes and edges in the graphs to nearest power of two. Since jax maintains a cache of compiled programs, the compilation cost is amortized." ] }, { "cell_type": "markdown", "source": [ "### Code for Padding" ], "metadata": { "id": "ZdEMExemdln3" } }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "qGxTXGA_RD2C" }, "outputs": [], "source": [ "# Adapted from https://github.com/deepmind/jraph/blob/master/jraph/ogb_examples/train.py\n", "def _nearest_bigger_power_of_two(x: int) -> int:\n", " \"\"\"Computes the nearest power of two greater than x for padding.\"\"\"\n", " y = 2\n", " while y < x:\n", " y *= 2\n", " return y\n", "\n", "def pad_graph_to_nearest_power_of_two(\n", " graphs_tuple: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Pads a batched `GraphsTuple` to the nearest power of two.\n", " For example, if a `GraphsTuple` has 7 nodes, 5 edges and 3 graphs, this method\n", " would pad the `GraphsTuple` nodes and edges:\n", " 7 nodes --> 8 nodes (2^3)\n", " 5 edges --> 8 edges (2^3)\n", " And since padding is accomplished using `jraph.pad_with_graphs`, an extra\n", " graph and node is added:\n", " 8 nodes --> 9 nodes\n", " 3 graphs --> 4 graphs\n", " Args:\n", " graphs_tuple: a batched `GraphsTuple` (can be batch size 1).\n", " Returns:\n", " A graphs_tuple batched to the nearest power of two.\n", " \"\"\"\n", " # Add 1 since we need at least one padding node for pad_with_graphs.\n", " pad_nodes_to = _nearest_bigger_power_of_two(jnp.sum(graphs_tuple.n_node)) + 1\n", " pad_edges_to = _nearest_bigger_power_of_two(jnp.sum(graphs_tuple.n_edge))\n", " # Add 1 since we need at least one padding graph for pad_with_graphs.\n", " # We do not pad to nearest power of two because the batch size is fixed.\n", " pad_graphs_to = graphs_tuple.n_node.shape[0] + 1\n", " return jraph.pad_with_graphs(graphs_tuple, pad_nodes_to, pad_edges_to,\n", " pad_graphs_to)" ] }, { "cell_type": "markdown", "metadata": { "id": "439VnH4ER4s-" }, "source": [ "## Graph Network Model Definition\n", "We will use jraph.GraphNetwork() to build our graph model. The GraphNetwork architecture is defined in [Battaglia et al. (2018)](https://arxiv.org/pdf/1806.01261.pdf). It is a simple extension of what we have been working with so far and a commonly used framework for expressing GNNs.\n", "\n", "When aggregating features from neighbours, edge features are first updated using `edge_update_fn` based on features from the *two adjacent nodes*, then node features are updated using `node_update_fn` based on features from *all adjacent edges*. Finally, the global feature is updated using `update_global_fn` based on all node and edge features.\n", "\n", "A representation of this is shown below, where $\\theta$ represents update functions, $\\rho$ represents aggregation, $u$ is the global feature, $V$ is the node features, and $E$ is the edge features.\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": { "id": "iVsCI4X4TWqZ" }, "source": [ "We first define update functions for nodes, edges, and the full graph (global). We will use MLP blocks for all three." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "YtlB-dctUaQz" }, "outputs": [], "source": [ "# Adapted from https://github.com/deepmind/jraph/blob/master/jraph/ogb_examples/train.py\n", "@jraph.concatenated_args\n", "def edge_update_fn(feats: jnp.ndarray) -> jnp.ndarray:\n", " \"\"\"Edge update function for graph net.\"\"\"\n", " net = hk.Sequential(\n", " [hk.Linear(128), jax.nn.relu,\n", " hk.Linear(128)])\n", " return net(feats)\n", "\n", "@jraph.concatenated_args\n", "def node_update_fn(feats: jnp.ndarray) -> jnp.ndarray:\n", " \"\"\"Node update function for graph net.\"\"\"\n", " net = hk.Sequential(\n", " [hk.Linear(128), jax.nn.relu,\n", " hk.Linear(128)])\n", " return net(feats)\n", "\n", "@jraph.concatenated_args\n", "def update_global_fn(feats: jnp.ndarray) -> jnp.ndarray:\n", " \"\"\"Global update function for graph net.\"\"\"\n", " # MUTAG is a binary classification task, so output pos neg logits.\n", " net = hk.Sequential(\n", " [hk.Linear(128), jax.nn.relu,\n", " hk.Linear(2)])\n", " return net(feats)\n", "\n", "def net_fn(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " # Add a global paramater for graph classification.\n", " graph = graph._replace(globals=jnp.zeros([graph.n_node.shape[0], 1]))\n", " embedder = jraph.GraphMapFeatures(\n", " hk.Linear(128), hk.Linear(128), hk.Linear(128))\n", " net = jraph.GraphNetwork(\n", " update_node_fn=node_update_fn,\n", " update_edge_fn=edge_update_fn,\n", " update_global_fn=update_global_fn)\n", " return net(embedder(graph))" ] }, { "cell_type": "markdown", "metadata": { "id": "Yz-H6xudUhNS" }, "source": [ "## Loss and Accuracy Function\n", "Define the classification cross-entropy loss and accuracy function." ] }, { "cell_type": "markdown", "source": [ "### Loss function code" ], "metadata": { "id": "KC2sCBoHd6fm" } }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "J1vMMmmzUjFD" }, "outputs": [], "source": [ "def compute_loss(params: hk.Params, graph: jraph.GraphsTuple, label: jnp.ndarray,\n", " net: jraph.GraphsTuple) -> Tuple[jnp.ndarray, jnp.ndarray]:\n", " \"\"\"Computes loss and accuracy.\"\"\"\n", " pred_graph = net.apply(params, graph)\n", " preds = jax.nn.log_softmax(pred_graph.globals)\n", " targets = jax.nn.one_hot(label, 2)\n", "\n", " # Since we have an extra 'dummy' graph in our batch due to padding, we want\n", " # to mask out any loss associated with the dummy graph.\n", " # Since we padded with `pad_with_graphs` we can recover the mask by using\n", " # get_graph_padding_mask.\n", " mask = jraph.get_graph_padding_mask(pred_graph)\n", "\n", " # Cross entropy loss.\n", " loss = -jnp.mean(preds * targets * mask[:, None])\n", "\n", " # Accuracy taking into account the mask.\n", " accuracy = jnp.sum(\n", " (jnp.argmax(pred_graph.globals, axis=1) == label) * mask) / jnp.sum(mask)\n", " return loss, accuracy" ] }, { "cell_type": "markdown", "metadata": { "id": "EsgtgBlDUpWy" }, "source": [ "## Training and Evaluation Functions" ] }, { "cell_type": "markdown", "source": [ "### Training and evaluation code" ], "metadata": { "id": "CIGceIcWd-sm" } }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "f4wf0_PTUvDL" }, "outputs": [], "source": [ "# Adapted from https://github.com/deepmind/jraph/blob/master/jraph/ogb_examples/train.py\n", "def train(dataset: List[Dict[str, Any]], num_train_steps: int, graph_net=net_fn) -> hk.Params:\n", " \"\"\"Training loop.\"\"\"\n", "\n", " # Transform impure `graph_net` to pure functions with hk.transform.\n", " net = hk.without_apply_rng(hk.transform(graph_net))\n", " # Get a candidate graph and label to initialize the network.\n", " graph = dataset[0]['input_graph']\n", "\n", " # Initialize the network.\n", " params = net.init(jax.random.PRNGKey(42), graph)\n", " # Initialize the optimizer.\n", " opt_init, opt_update = optax.adam(1e-4)\n", " opt_state = opt_init(params)\n", "\n", " compute_loss_fn = functools.partial(compute_loss, net=net)\n", " # We jit the computation of our loss, since this is the main computation.\n", " # Using jax.jit means that we will use a single accelerator. If you want\n", " # to use more than 1 accelerator, use jax.pmap. More information can be\n", " # found in the jax documentation.\n", " compute_loss_fn = jax.jit(jax.value_and_grad(\n", " compute_loss_fn, has_aux=True))\n", "\n", " for idx in range(num_train_steps):\n", " graph = dataset[idx % len(dataset)]['input_graph']\n", " label = dataset[idx % len(dataset)]['target']\n", " # Jax will re-jit your graphnet every time a new graph shape is encountered.\n", " # In the limit, this means a new compilation every training step, which\n", " # will result in *extremely* slow training. To prevent this, pad each\n", " # batch of graphs to the nearest power of two. Since jax maintains a cache\n", " # of compiled programs, the compilation cost is amortized.\n", " graph = pad_graph_to_nearest_power_of_two(graph)\n", "\n", " # Since padding is implemented with pad_with_graphs, an extra graph has\n", " # been added to the batch, which means there should be an extra label.\n", " label = jnp.concatenate([label, jnp.array([0])])\n", "\n", " (loss, acc), grad = compute_loss_fn(params, graph, label)\n", " updates, opt_state = opt_update(grad, opt_state, params)\n", " params = optax.apply_updates(params, updates)\n", " if idx % 50 == 0:\n", " print(f'step: {idx}, loss: {loss}, acc: {acc}')\n", " print('Training finished')\n", " return params" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "PH1Ix6kpU1sX" }, "outputs": [], "source": [ "def evaluate(dataset: List[Dict[str, Any]],\n", " params: hk.Params,\n", " graph_net = net_fn) -> Tuple[jnp.ndarray, jnp.ndarray]:\n", " \"\"\"Evaluation Script.\"\"\"\n", " # Transform impure `graph_net` to pure functions with hk.transform.\n", " net = hk.without_apply_rng(hk.transform(graph_net))\n", " # Get a candidate graph and label to initialize the network.\n", " graph = dataset[0]['input_graph']\n", " accumulated_loss = 0\n", " accumulated_accuracy = 0\n", " compute_loss_fn = jax.jit(functools.partial(compute_loss, net=net))\n", " for idx in range(len(dataset)):\n", " graph = dataset[idx]['input_graph']\n", " label = dataset[idx]['target']\n", " graph = pad_graph_to_nearest_power_of_two(graph)\n", " label = jnp.concatenate([label, jnp.array([0])])\n", " loss, acc = compute_loss_fn(params, graph, label)\n", " accumulated_accuracy += acc\n", " accumulated_loss += loss\n", " if idx % 100 == 0:\n", " print(f'Evaluated {idx + 1} graphs')\n", " print('Completed evaluation.')\n", " loss = accumulated_loss / idx\n", " accuracy = accumulated_accuracy / idx\n", " print(f'Eval loss: {loss}, accuracy {accuracy}')\n", " return loss, accuracy" ] }, { "cell_type": "markdown", "metadata": { "id": "zy5bomgTU2jm" }, "source": [ "## Train and Evaluate Model" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "H24ITVqsU5ta" }, "outputs": [], "source": [ "params = train(train_mutag_ds, num_train_steps=500)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "oq99GN_dU7nL" }, "outputs": [], "source": [ "evaluate(test_mutag_ds, params)" ] }, { "cell_type": "markdown", "metadata": { "id": "njx8QgVrU9ki" }, "source": [ "We converge at ~76% test accuracy. We could of course further tune the parameters to improve this result." ] }, { "cell_type": "markdown", "source": [ "# **Extension 2:** Link Prediction on CORA (Citation Network)\n", "\n", "The final problem type we will explore is **link prediction**, an instance of an **edge-level** task. Given a graph, our goal is to predict whether a certain edge $(u,v)$ should be present or not. This is often useful in the recommender system settings (e.g., propose new friends in a social network, propose a movie to a user).\n", "\n", "As before, the first step is to obtain node latents $h_i$ using a GNN. In this context we will use the autoencoder language and call this GNN **encoder**. Then, we learn a binary classifier $f: (h_i, h_j) \\to z_{i,j}$ (**decoder**), predicting if an edge $(i,j)$ should exist or not. While we could use a more elaborate decoder (e.g., an MLP), a common approach we will also use here is to focus on obtaining good node embeddings, and for the decoder simply use the similarity between node latents, i.e. $z_{i,j} = h_i^T h_j$.\n", "\n", "For this problem we will use the [**Cora** dataset](https://linqs.github.io/linqs-website/datasets/#cora), a citation graph containing 2708 scientific publications. For each publication we have a 1433-dimensional feature vector, which is a bag-of-words representation (with a small, fixed dictionary) of the paper text. The edges in this graph represent citations, and are commonly treated as undirected. Each paper is in one of seven topics (classes) so you can also use this dataset for node classification.\n", "\n", "Citation for the use of the Cora dataset:\n", "- [Qing Lu and Lise Getoor. Link-Based Classification. International Conference on Machine Learning. 2003.](https://linqs.github.io/linqs-website/publications/#id:lu-icml03)\n", "- [Sen, Prithviraj, et al. Collective classification in network data. AI magazine 29.3. 2008.](https://linqs.github.io/linqs-website/datasets/#cora)\n", "- [Dataset download link](https://linqs.github.io/linqs-website/datasets/#cora)" ], "metadata": { "id": "YOcG4H0ejm5S" } }, { "cell_type": "markdown", "source": [ "## CORA download code" ], "metadata": { "id": "Ouk-8vO8eVXd" } }, { "cell_type": "code", "source": [ "# Download jraph version of Cora.\n", "!wget -P /tmp/ https://storage.googleapis.com/dm-educational/assets/graph-nets/jraph_datasets/cora.pickle\n", "with open('/tmp/cora.pickle', 'rb') as f:\n", " cora_ds = pickle.load(f)" ], "metadata": { "id": "WzoZG8NPlZAd" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "## Splitting Edges and Adding \"Negative\" Edges\n", "For the link prediction task, we split the edges into train, val and test sets and also add \"negative\" examples (edges that do not correspond to a citation). We will ignore the topic classes.\n", "\n", "For the validation and test splits, we add the same number of existing edges (\"positive examples\") and non-existing edges (\"negative examples\").\n", "\n", "In contrast to the validation and test splits, the training split only contains positive examples (set $T_+$). The $|T_+|$ negative examples to be used during training will be sampled ad hoc in each epoch and uniformly at random from all edges that are not in $T_+$. This allows the model to see a wider range of negative examples." ], "metadata": { "id": "JR845LNNl4MB" } }, { "cell_type": "markdown", "source": [ "### Adding negative edges code" ], "metadata": { "id": "bywiz_3MemIq" } }, { "cell_type": "code", "source": [ "def train_val_test_split_edges(graph: jraph.GraphsTuple,\n", " val_perc: float = 0.05,\n", " test_perc: float = 0.1):\n", " \"\"\"Split edges in input graph into train, val and test splits.\n", "\n", " For val and test sets, also include negative edges.\n", " Based on torch_geometric.utils.train_test_split_edges.\n", " \"\"\"\n", " mask = graph.senders < graph.receivers\n", " senders = graph.senders[mask]\n", " receivers = graph.receivers[mask]\n", " num_val = int(val_perc * senders.shape[0])\n", " num_test = int(test_perc * senders.shape[0])\n", " permuted_indices = onp.random.permutation(range(senders.shape[0]))\n", " senders = senders[permuted_indices]\n", " receivers = receivers[permuted_indices]\n", " if graph.edges is not None:\n", " edges = graph.edges[permuted_indices]\n", "\n", " val_senders = senders[:num_val]\n", " val_receivers = receivers[:num_val]\n", " if graph.edges is not None:\n", " val_edges = edges[:num_val]\n", "\n", " test_senders = senders[num_val:num_val + num_test]\n", " test_receivers = receivers[num_val:num_val + num_test]\n", " if graph.edges is not None:\n", " test_edges = edges[num_val:num_val + num_test]\n", "\n", " train_senders = senders[num_val + num_test:]\n", " train_receivers = receivers[num_val + num_test:]\n", " train_edges = None\n", " if graph.edges is not None:\n", " train_edges = edges[num_val + num_test:]\n", "\n", " # make training edges undirected by adding reverse edges back in\n", " train_senders_undir = jnp.concatenate((train_senders, train_receivers))\n", " train_receivers_undir = jnp.concatenate((train_receivers, train_senders))\n", " train_senders = train_senders_undir\n", " train_receivers = train_receivers_undir\n", "\n", " # Negative edges.\n", " num_nodes = graph.n_node[0]\n", " # Create a negative adjacency mask, s.t. mask[i, j] = True iff edge i->j does\n", " # not exist in the original graph.\n", " neg_adj_mask = onp.ones((num_nodes, num_nodes), dtype=onp.uint8)\n", " # upper triangular part\n", " neg_adj_mask = onp.triu(neg_adj_mask, k=1)\n", " neg_adj_mask[graph.senders, graph.receivers] = 0\n", " neg_adj_mask = neg_adj_mask.astype(onp.bool)\n", " neg_senders, neg_receivers = neg_adj_mask.nonzero()\n", "\n", " perm = onp.random.permutation(range(len(neg_senders)))\n", " neg_senders = neg_senders[perm]\n", " neg_receivers = neg_receivers[perm]\n", "\n", " val_neg_senders = neg_senders[:num_val]\n", " val_neg_receivers = neg_receivers[:num_val]\n", " test_neg_senders = neg_senders[num_val:num_val + num_test]\n", " test_neg_receivers = neg_receivers[num_val:num_val + num_test]\n", "\n", " train_graph = jraph.GraphsTuple(\n", " nodes=graph.nodes,\n", " edges=train_edges,\n", " senders=train_senders,\n", " receivers=train_receivers,\n", " n_node=graph.n_node,\n", " n_edge=jnp.array([len(train_senders)]),\n", " globals=graph.globals)\n", "\n", " return train_graph, neg_adj_mask, val_senders, val_receivers, val_neg_senders, val_neg_receivers, test_senders, test_receivers, test_neg_senders, test_neg_receivers" ], "metadata": { "id": "eo-qjUndmPxB" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "## Test the Edge Splitting Function" ], "metadata": { "id": "7UQqwaqtmiU7" } }, { "cell_type": "code", "source": [ "graph = cora_ds[0]['input_graph']\n", "train_graph, neg_adj_mask, val_pos_senders, val_pos_receivers, val_neg_senders, val_neg_receivers, test_pos_senders, test_pos_receivers, test_neg_senders, test_neg_receivers = train_val_test_split_edges(graph)" ], "metadata": { "id": "QhOyl5hjmjDU" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "print(f'Train set: {train_graph.senders.shape[0]} positive edges, we will sample the same number of negative edges at runtime')\n", "print(f'Val set: {val_pos_senders.shape[0]} positive edges, {val_neg_senders.shape[0]} negative edges')\n", "print(f'Test set: {test_pos_senders.shape[0]} positive edges, {test_neg_senders.shape[0]} negative edges')\n", "print(f'Negative adjacency mask shape: {neg_adj_mask.shape}')\n", "print(f'Number of negative edges to sample from: {neg_adj_mask.sum()}')" ], "metadata": { "id": "ODhaIAG_mmHV" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "*Note*: It will often happen during training that as a negative example, we sample an initially existing edge (that is now e.g. a positive example in the test set). We are however not allowed to check for this, as we should be unaware of the existence of test edges during training.\n", "\n", "Assuming our dot product decoder, we are essentially attempting to bring the latents of endpoints of edges from $T_+$ closer together, and make the latents of all other pairs of nodes as distant as possible. As this is impossible to fully satisfy, the hope is that the model will \\\"fail\\\" to distance those pairs of nodes where the edges should actually exist (positive examples from the test set)." ], "metadata": { "id": "XZW6Nxvzmoej" } }, { "cell_type": "markdown", "source": [ "## Graph Network Model Definition\n", "We will use jraph.GraphNetwork to build our graph net model.\n", "\n", "We first define update functions for node features. We are not using edge or global features for this task." ], "metadata": { "id": "VVnURkiDmxzF" } }, { "cell_type": "code", "source": [ "@jraph.concatenated_args\n", "def node_update_fn(feats: jnp.ndarray) -> jnp.ndarray:\n", " \"\"\"Node update function for graph net.\"\"\"\n", " net = hk.Sequential([hk.Linear(128), jax.nn.relu, hk.Linear(64)])\n", " return net(feats)\n", "\n", "\n", "def net_fn(graph: jraph.GraphsTuple) -> jraph.GraphsTuple:\n", " \"\"\"Network definition.\"\"\"\n", " graph = graph._replace(globals=jnp.zeros([graph.n_node.shape[0], 1]))\n", " net = jraph.GraphNetwork(\n", " update_node_fn=node_update_fn, update_edge_fn=None, update_global_fn=None)\n", " return net(graph)\n", "\n", "\n", "def decode(pred_graph: jraph.GraphsTuple, senders: jnp.ndarray,\n", " receivers: jnp.ndarray) -> jnp.ndarray:\n", " \"\"\"Given a set of candidate edges, take dot product of respective nodes.\n", "\n", " Args:\n", " pred_graph: input graph.\n", " senders: Senders of candidate edges.\n", " receivers: Receivers of candidate edges.\n", "\n", " Returns:\n", " For each edge, computes dot product of the features of the two nodes.\n", "\n", " \"\"\"\n", " return jnp.squeeze(\n", " jnp.sum(pred_graph.nodes[senders] * pred_graph.nodes[receivers], axis=1))" ], "metadata": { "id": "6_rRjRP3m6J2" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "To evaluate our model, we first apply the sigmoid function to obtained dot products to get a score $s_{i,j} \\in [0,1]$ for each edge. Now, we can pick a threshold $\\tau$ and say that we predict all pairs $(i,j)$ s.t. $s_{i,j} \\geq \\tau$ as edges (and all the rest as non-edges)." ], "metadata": { "id": "Z-_hxxVvm_mU" } }, { "cell_type": "markdown", "source": [ "## Loss and ROC-AUC-Metric Function\n", "Define the binary classification cross-entropy loss. To aggregate the results over all choices of $\\tau$, we will use ROC-AUC (the area under the ROC curve) as our evaluation metric." ], "metadata": { "id": "VzzbL7DQnFC3" } }, { "cell_type": "code", "source": [ "from sklearn.metrics import roc_auc_score\n", "\n", "def compute_bce_with_logits_loss(x: jnp.ndarray, y: jnp.ndarray) -> jnp.ndarray:\n", " \"\"\"Computes binary cross-entropy with logits loss.\n", "\n", " Combines sigmoid and BCE, and uses log-sum-exp trick for numerical stability.\n", " See https://stackoverflow.com/a/66909858 if you want to learn more.\n", "\n", " Args:\n", " x: Predictions (logits).\n", " y: Labels.\n", "\n", " Returns:\n", " Binary cross-entropy loss with mean aggregation.\n", "\n", " \"\"\"\n", " max_val = jnp.clip(x, 0, None)\n", " loss = x - x * y + max_val + jnp.log(\n", " jnp.exp(-max_val) + jnp.exp((-x - max_val)))\n", " return loss.mean()\n", "\n", "\n", "def compute_loss(params: hk.Params, graph: jraph.GraphsTuple,\n", " senders: jnp.ndarray, receivers: jnp.ndarray,\n", " labels: jnp.ndarray,\n", " net: hk.Transformed) -> Tuple[jnp.ndarray, jnp.ndarray]:\n", " \"\"\"Computes loss.\"\"\"\n", " pred_graph = net.apply(params, graph)\n", " preds = decode(pred_graph, senders, receivers)\n", " loss = compute_bce_with_logits_loss(preds, labels)\n", " return loss, preds\n", "\n", "\n", "def compute_roc_auc_score(preds: jnp.ndarray,\n", " labels: jnp.ndarray) -> jnp.ndarray:\n", " \"\"\"Computes roc auc (area under the curve) score for classification.\"\"\"\n", " s = jax.nn.sigmoid(preds)\n", " roc_auc = roc_auc_score(labels, s)\n", " return roc_auc" ], "metadata": { "id": "WiLQHmT1m-OO" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "## Training Loop" ], "metadata": { "id": "vlqaU-JSffDn" } }, { "cell_type": "markdown", "source": [ "Helper function for sampling negative edges during training." ], "metadata": { "id": "jDcqFWLtnRRO" } }, { "cell_type": "code", "source": [ "def negative_sampling(\n", " graph: jraph.GraphsTuple, num_neg_samples: int,\n", " key: jnp.DeviceArray) -> Tuple[jnp.DeviceArray, jnp.DeviceArray]:\n", " \"\"\"Samples negative edges, i.e. edges that don't exist in the input graph.\"\"\"\n", " num_nodes = graph.n_node[0]\n", " total_possible_edges = num_nodes**2\n", " # convert 2D edge indices to 1D representation.\n", " pos_idx = graph.senders * num_nodes + graph.receivers\n", "\n", " # Percentage to oversample edges, so most likely will sample enough neg edges.\n", " alpha = jnp.abs(1 / (1 - 1.1 *\n", " (graph.senders.shape[0] / total_possible_edges)))\n", "\n", " perm = jax.random.randint(\n", " key,\n", " shape=(int(alpha * num_neg_samples),),\n", " minval=0,\n", " maxval=total_possible_edges,\n", " dtype=jnp.uint32)\n", "\n", " # mask where sampled edges are positive edges.\n", " mask = jnp.isin(perm, pos_idx)\n", " # remove positive edges.\n", " perm = perm[~mask][:num_neg_samples]\n", "\n", " # convert 1d back to 2d edge indices.\n", " neg_senders = perm // num_nodes\n", " neg_receivers = perm % num_nodes\n", "\n", " return neg_senders, neg_receivers" ], "metadata": { "id": "xKHAAmgmnT7Z" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "Let's write the training loop:" ], "metadata": { "id": "S_cRph0cnWWM" } }, { "cell_type": "code", "source": [ "def train(dataset: List[Dict[str, Any]], num_epochs: int) -> hk.Params:\n", " \"\"\"Training loop.\"\"\"\n", " key = jax.random.PRNGKey(42)\n", " # Transform impure `net_fn` to pure functions with hk.transform.\n", " net = hk.without_apply_rng(hk.transform(net_fn))\n", " # Get a candidate graph and label to initialize the network.\n", " graph = dataset[0]['input_graph']\n", "\n", " train_graph, _, val_pos_s, val_pos_r, val_neg_s, val_neg_r, test_pos_s, \\\n", " test_pos_r, test_neg_s, test_neg_r = train_val_test_split_edges(\n", " graph)\n", "\n", " # Prepare the validation and test data.\n", " val_senders = jnp.concatenate((val_pos_s, val_neg_s))\n", " val_receivers = jnp.concatenate((val_pos_r, val_neg_r))\n", " val_labels = jnp.concatenate(\n", " (jnp.ones(len(val_pos_s)), jnp.zeros(len(val_neg_s))))\n", " test_senders = jnp.concatenate((test_pos_s, test_neg_s))\n", " test_receivers = jnp.concatenate((test_pos_r, test_neg_r))\n", " test_labels = jnp.concatenate(\n", " (jnp.ones(len(test_pos_s)), jnp.zeros(len(test_neg_s))))\n", " # Initialize the network.\n", " params = net.init(key, train_graph)\n", " # Initialize the optimizer.\n", " opt_init, opt_update = optax.adam(1e-4)\n", " opt_state = opt_init(params)\n", "\n", " compute_loss_fn = functools.partial(compute_loss, net=net)\n", " # We jit the computation of our loss, since this is the main computation.\n", " # Using jax.jit means that we will use a single accelerator. If you want\n", " # to use more than 1 accelerator, use jax.pmap. More information can be\n", " # found in the jax documentation.\n", " compute_loss_fn = jax.jit(jax.value_and_grad(compute_loss_fn, has_aux=True))\n", "\n", " for epoch in range(num_epochs):\n", " num_neg_samples = train_graph.senders.shape[0]\n", " train_neg_senders, train_neg_receivers = negative_sampling(\n", " train_graph, num_neg_samples=num_neg_samples, key=key)\n", " train_senders = jnp.concatenate((train_graph.senders, train_neg_senders))\n", " train_receivers = jnp.concatenate(\n", " (train_graph.receivers, train_neg_receivers))\n", " train_labels = jnp.concatenate(\n", " (jnp.ones(len(train_graph.senders)), jnp.zeros(len(train_neg_senders))))\n", "\n", " (train_loss,\n", " train_preds), grad = compute_loss_fn(params, train_graph, train_senders,\n", " train_receivers, train_labels)\n", "\n", " updates, opt_state = opt_update(grad, opt_state, params)\n", " params = optax.apply_updates(params, updates)\n", " if epoch % 10 == 0 or epoch == (num_epochs - 1):\n", " train_roc_auc = compute_roc_auc_score(train_preds, train_labels)\n", " val_loss, val_preds = compute_loss(params, train_graph, val_senders,\n", " val_receivers, val_labels, net)\n", " val_roc_auc = compute_roc_auc_score(val_preds, val_labels)\n", " print(f'epoch: {epoch}, train_loss: {train_loss:.3f}, '\n", " f'train_roc_auc: {train_roc_auc:.3f}, val_loss: {val_loss:.3f}, '\n", " f'val_roc_auc: {val_roc_auc:.3f}')\n", " test_loss, test_preds = compute_loss(params, train_graph, test_senders,\n", " test_receivers, test_labels, net)\n", " test_roc_auc = compute_roc_auc_score(test_preds, test_labels)\n", " print('Training finished')\n", " print(\n", " f'epoch: {epoch}, test_loss: {test_loss:.3f}, test_roc_auc: {test_roc_auc:.3f}'\n", " )\n", " return params" ], "metadata": { "id": "io_cuawIndvG" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "## Model Evaluation" ], "metadata": { "id": "2iYqxRy1g3wu" } }, { "cell_type": "markdown", "source": [ "Let's train the model! We expect the model to reach roughly test_roc_auc of 0.84.\n", "\n", "(Note that ROC-AUC is a scalar between 0 and 1, with 1 being the ROC-AUC of a perfect classifier.)" ], "metadata": { "id": "_fR4vByAnmN3" } }, { "cell_type": "code", "source": [ "params = train(cora_ds, num_epochs=200)" ], "metadata": { "id": "ekKXam4WnoEJ" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "# Conclusion\n", "\n", "**Summary:**\n", "- Many different domains have structures which can be represented as graphs, on which we would like to do machine learning.\n", "- Graph Neural Networks (GNNs) is a popular family of models for doing this.\n", "- GNNs can be used for a variety of tasks, including node classification, edge classification / link prediction, and graph classification.\n", "- GNNs operate by aggregating features from neighbouring nodes and updating node features.\n", "- Graph Convolutional Neworks (GCNs) is a common and specific instance of GNNs.\n", "- Graph Attention Networks (GATs) is a more advanced architecture which allows different incoming messages to be weighted differently.\n", "\n", "**Follow-up Work:**\n", "If you found this interesting, we can recommend this [course](https://web.stanford.edu/class/cs224w/) which covers GNNs in depth." ], "metadata": { "id": "aGaoXGp4Id0J" } }, { "cell_type": "markdown", "source": [ "# Feedback\n", "\n", "Please provide feedback that we can use to improve our practicals in the future." ], "metadata": { "id": "lBjhlym8DW_K" } }, { "cell_type": "code", "source": [ "# @title Generate Feedback Form. (Run Cell) { display-mode: \"form\" }\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ], "metadata": { "id": "U12PEIxvDcra" }, "execution_count": null, "outputs": [] } ], "metadata": { "colab": { "collapsed_sections": [ "5SE5DQoXWQJR", "ZdEMExemdln3", "KC2sCBoHd6fm", "CIGceIcWd-sm", "bywiz_3MemIq" ], "name": "DLI 2022 GNN Practical.ipynb", "provenance": [], "toc_visible": true }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 0 } ================================================ FILE: practicals/Indaba_2022_Prac_Template.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "id": "m2s4kN_QPQVe" }, "source": [ "# **[Practical Heading]**\n", "\n", "\n", "\n", "[Add prac relevant image.]\n", "\n", "\"Open [Change colab link to point to prac.]\n", "\n", "© Deep Learning Indaba 2022. Apache License 2.0.\n", "\n", "**Authors:**\n", "\n", "**Introduction:** \n", "\n", "[Intro to the topic. Probably between 3-5 lines.]\n", "\n", "**Topics:** \n", "\n", "Content: [e.g. Reinforcement Learning, Computer Vision etc. Can be more than one.] \n", "Level: [Beginner, Intermediate, Advanced.] \n", "\n", "[Let's use the colours from notion here. E.g. `Beginner` and `Generative Models`.]\n", "\n", "\n", "**Aims/Learning Objectives:**\n", "\n", "[Points on the exact learning outcomes from the prac. This should probably be <=5 things.]\n", "\n", "**Prerequisites:**\n", "\n", "[Knowledge required for this prac. You can link a relevant parallel track session, blogs, papers, courses, topics etc.]\n", "\n", "**Outline:** \n", "\n", "[Points that link to each section. Auto-generate following the instructions [here](https://stackoverflow.com/questions/67458990/how-to-automatically-generate-a-table-of-contents-in-colab-notebook).]\n", "\n", "**Before you start:**\n", "\n", "For this practical, you will need to use a GPU to speed up training. To do this, go to the \"Runtime\" menu in Colab, select \"Change runtime type\" and then in the popup menu, choose \"GPU\" in the \"Hardware accelerator\" box.\n", "\n", "[Any other tasks just before starting.]\n" ] }, { "cell_type": "markdown", "metadata": { "id": "6EqhIg1odqg0" }, "source": [ "## Installation and Imports" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "4boGA9rYdt9l" }, "outputs": [], "source": [ "## Install and import anything required. Capture hides the output from the cell.\n", "# @title Install and import required packages. (Run Cell)\n", "\n", "import subprocess\n", "import os\n", "\n", "# Based on https://stackoverflow.com/questions/67504079/how-to-check-if-an-nvidia-gpu-is-available-on-my-system\n", "try:\n", " subprocess.check_output('nvidia-smi')\n", " print(\"a GPU is connected.\")\n", "except Exception: \n", " # TPU or CPU\n", " if \"COLAB_TPU_ADDR\" in os.environ and os.environ[\"COLAB_TPU_ADDR\"]:\n", " print(\"A TPU is connected.\")\n", " import jax.tools.colab_tpu\n", " jax.tools.colab_tpu.setup_tpu()\n", " else:\n", " print(\"Only CPU accelerator is connected.\")\n", " # x8 cpu devices - number of (emulated) host devices\n", " os.environ[\"XLA_FLAGS\"] = \"--xla_force_host_platform_device_count=8\"\n", "\n", "import jax\n", "import jax.numpy as jnp\n", "from jax import grad, jit, vmap\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "-9X10jhocGaS" }, "outputs": [], "source": [ "# @title Helper Functions. (Run Cell)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "rfwoGkW3cLuk" }, "outputs": [], "source": [ "# @title Check what device you are using (Run Cell)\n", "print(f\"Num devices: {jax.device_count()}\")\n", "print(f\" Devices: {jax.devices()}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "-ZUp8i37dFbU" }, "source": [ "## **Sample Section 1**\n", "\n", "[Background/content for the section.]" ] }, { "cell_type": "markdown", "metadata": { "id": "ii__Bc27epiJ" }, "source": [ "### Subsection - `Beginner`" ] }, { "cell_type": "markdown", "metadata": { "id": "4PbcFsfAibBu" }, "source": [ "Math foundations:\n" ] }, { "cell_type": "markdown", "metadata": { "id": "axeZiGJxibBw" }, "source": [ "**Math Task:**\n", "\n", "[Optional math task or ask multiple choice question. E.g. the derivation of this would equal a, b or c. We could check this at the end of the prac.]\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "vCURjj1HkQkW" }, "outputs": [], "source": [ "selection = \"a\" # @param [\"a\", \"b\", \"c\"]\n", "print(f\"You selected: {selection}\")\n", "\n", "correct_answer = \"a\"\n", "assert selection == correct_answer, \"Incorrect answer, hint ...\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "markdown", "metadata": { "id": "HvbKqrRniVDa" }, "source": [ "Code demonstration" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "mNQ8Dgx2Wl8Q" }, "outputs": [], "source": [ "# Code demonstration" ] }, { "cell_type": "markdown", "metadata": { "id": "jukLIz2oeiq9" }, "source": [ "**Code Task:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "fFXVVGa6elwN" }, "outputs": [], "source": [ "# Code to be implemented during practical\n", "# You should prove the function signature." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "lDq7CAcAd49i" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')" ] }, { "cell_type": "markdown", "metadata": { "id": "QhIkaajyaYGl" }, "source": [ "**Group Task:**\n", "\n", "Task that involves asking your neighbour or a group a question." ] }, { "cell_type": "markdown", "metadata": { "id": "Rd7xAVznfBQU" }, "source": [ "### Subsection - `Intermediate`" ] }, { "cell_type": "markdown", "metadata": { "id": "jWlwCNlqfBQV" }, "source": [ "Math foundations:\n" ] }, { "cell_type": "markdown", "metadata": { "id": "8YcpW8yAfBQW" }, "source": [ "**Math Task:**\n", "\n", "[Optional math task or ask multiple choice question. E.g. the derivation of this would equal a, b or c. We could check this at the end of the prac.]\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "nyvX-3OJfBQW" }, "outputs": [], "source": [ "selection = \"a\" # @param [\"a\", \"b\", \"c\"]\n", "print(f\"You selected: {selection}\")\n", "\n", "correct_answer = \"a\"\n", "assert selection == correct_answer, \"Incorrect answer, hint ...\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "markdown", "metadata": { "id": "HsUbInznfBQX" }, "source": [ "Code demonstration" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "qH-P90ULfBQY" }, "outputs": [], "source": [ "# Code demonstration" ] }, { "cell_type": "markdown", "metadata": { "id": "iQJtf6sCfBQY" }, "source": [ "**Code Task:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "LICrxTN5fBQZ" }, "outputs": [], "source": [ "# Code to be implemented during practical\n", "# You should prove the function signature." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "iE1YNtLkfBQZ" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')" ] }, { "cell_type": "markdown", "metadata": { "id": "vZe6TDuNfBQa" }, "source": [ "**Group Task:**\n", "\n", "Task that involves asking your neighbour or a group a question." ] }, { "cell_type": "markdown", "metadata": { "id": "7SrT6swYgCm9" }, "source": [ "### Subsection - `Advanced`" ] }, { "cell_type": "markdown", "metadata": { "id": "tYV9_wJcgCm-" }, "source": [ "Math foundations:\n" ] }, { "cell_type": "markdown", "metadata": { "id": "6tWFVqp-gCm_" }, "source": [ "**Math Task:**\n", "\n", "[Optional math task or ask multiple choice question. E.g. the derivation of this would equal a, b or c. We could check this at the end of the prac.]\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "bWAPYvKvgCm_" }, "outputs": [], "source": [ "selection = \"a\" # @param [\"a\", \"b\", \"c\"]\n", "print(f\"You selected: {selection}\")\n", "\n", "correct_answer = \"a\"\n", "assert selection == correct_answer, \"Incorrect answer, hint ...\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "markdown", "metadata": { "id": "J-sxMredgCnA" }, "source": [ "Code demonstration" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "B13f7D9SgCnB" }, "outputs": [], "source": [ "# Code demonstration" ] }, { "cell_type": "markdown", "metadata": { "id": "RHVQdNtqgCnB" }, "source": [ "**Code Task:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "DAGSVE4igCnC" }, "outputs": [], "source": [ "# Code to be implemented during practical\n", "# You should prove the function signature." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "oTppRxGlgCnC" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')" ] }, { "cell_type": "markdown", "metadata": { "id": "8q7WqzAVgCnD" }, "source": [ "**Group Task:**\n", "\n", "Task that involves asking your neighbour or a group a question." ] }, { "cell_type": "markdown", "metadata": { "id": "h7N-PXjlgkAd" }, "source": [ "### Subsection - `Optional`" ] }, { "cell_type": "markdown", "metadata": { "id": "OXDPiQMHgkAe" }, "source": [ "Math foundations:\n" ] }, { "cell_type": "markdown", "metadata": { "id": "tGEzmGEkgkAe" }, "source": [ "**Math Task:**\n", "\n", "[Optional math task or ask multiple choice question. E.g. the derivation of this would equal a, b or c. We could check this at the end of the prac.]\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "kbeCT6qfgkAf" }, "outputs": [], "source": [ "selection = \"a\" # @param [\"a\", \"b\", \"c\"]\n", "print(f\"You selected: {selection}\")\n", "\n", "correct_answer = \"a\"\n", "assert selection == correct_answer, \"Incorrect answer, hint ...\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "markdown", "metadata": { "id": "NgccgCDjgkAg" }, "source": [ "Code demonstration" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "3uk14cnTgkAh" }, "outputs": [], "source": [ "# Code demonstration" ] }, { "cell_type": "markdown", "metadata": { "id": "5IHFxhVWgkAi" }, "source": [ "**Code Task:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "qVP_4c03gkAi" }, "outputs": [], "source": [ "# Code to be implemented during practical\n", "# You should prove the function signature." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "JjZqw2z0gkAj" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')" ] }, { "cell_type": "markdown", "metadata": { "id": "FVw9C8GugkAj" }, "source": [ "**Group Task:**\n", "\n", "Task that involves asking your neighbour or a group a question." ] }, { "cell_type": "markdown", "metadata": { "id": "WILOYJH4gCnD" }, "source": [ "### Section Quiz \n", "\n", "Optional end of section quiz. Below is an example of an assessment." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "N5iFeOKOgCnE" }, "outputs": [], "source": [ "# @title Generate Quiz Form. (Run Cell)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "e9NW58_3hAg2" }, "source": [ "## **Sample Section 2**\n", "\n", "[Background/content for the section.]" ] }, { "cell_type": "markdown", "metadata": { "id": "bA_2coZvhAg3" }, "source": [ "### Subsection - `Beginner`" ] }, { "cell_type": "markdown", "metadata": { "id": "q1I8M0zkhAg3" }, "source": [ "Math foundations:\n" ] }, { "cell_type": "markdown", "metadata": { "id": "0Ue8vgIqhAg4" }, "source": [ "**Math Task:**\n", "\n", "[Optional math task or ask multiple choice question. E.g. the derivation of this would equal a, b or c. We could check this at the end of the prac.]\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "0EDwsEoFhAg4" }, "outputs": [], "source": [ "selection = \"a\" # @param [\"a\", \"b\", \"c\"]\n", "print(f\"You selected: {selection}\")\n", "\n", "correct_answer = \"a\"\n", "assert selection == correct_answer, \"Incorrect answer, hint ...\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "markdown", "metadata": { "id": "I-La9MnkhAg7" }, "source": [ "Code demonstration" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "qoFbSQWGhAg7" }, "outputs": [], "source": [ "# Code demonstration" ] }, { "cell_type": "markdown", "metadata": { "id": "sMU5bEAdhAg7" }, "source": [ "**Code Task:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "5gbBCDwQhAg8" }, "outputs": [], "source": [ "# Code to be implemented during practical\n", "# You should prove the function signature." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ElfWTStxhAg8" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')" ] }, { "cell_type": "markdown", "metadata": { "id": "W0-GWYVEhAg9" }, "source": [ "**Group Task:**\n", "\n", "Task that involves asking your neighbour or a group a question." ] }, { "cell_type": "markdown", "metadata": { "id": "BKtMEnRkhAg9" }, "source": [ "### Subsection - `Intermediate`" ] }, { "cell_type": "markdown", "metadata": { "id": "ZnFpRAi_hAg-" }, "source": [ "Math foundations:\n" ] }, { "cell_type": "markdown", "metadata": { "id": "NAQn8NUPhAg-" }, "source": [ "**Math Task:**\n", "\n", "[Optional math task or ask multiple choice question. E.g. the derivation of this would equal a, b or c. We could check this at the end of the prac.]\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "kchv_MD3hAg-" }, "outputs": [], "source": [ "selection = \"a\" # @param [\"a\", \"b\", \"c\"]\n", "print(f\"You selected: {selection}\")\n", "\n", "correct_answer = \"a\"\n", "assert selection == correct_answer, \"Incorrect answer, hint ...\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "markdown", "metadata": { "id": "jju83hyHhAg_" }, "source": [ "Code demonstration" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "duJQO4WphAhA" }, "outputs": [], "source": [ "# Code demonstration" ] }, { "cell_type": "markdown", "metadata": { "id": "fte3PiIQhAhA" }, "source": [ "**Code Task:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "mcKJw4PXhAhA" }, "outputs": [], "source": [ "# Code to be implemented during practical\n", "# You should prove the function signature." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "8b3Kk4u1hAhB" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')" ] }, { "cell_type": "markdown", "metadata": { "id": "A0lriZAWhAhB" }, "source": [ "**Group Task:**\n", "\n", "Task that involves asking your neighbour or a group a question." ] }, { "cell_type": "markdown", "metadata": { "id": "fbTsk0MdhAhC" }, "source": [ "### Subsection - `Advanced`" ] }, { "cell_type": "markdown", "metadata": { "id": "9BOemnkFhAhC" }, "source": [ "Math foundations:\n" ] }, { "cell_type": "markdown", "metadata": { "id": "RfFSWUp9hAhC" }, "source": [ "**Math Task:**\n", "\n", "[Optional math task or ask multiple choice question. E.g. the derivation of this would equal a, b or c. We could check this at the end of the prac.]\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "qzr0F1nqhAhD" }, "outputs": [], "source": [ "selection = \"a\" # @param [\"a\", \"b\", \"c\"]\n", "print(f\"You selected: {selection}\")\n", "\n", "correct_answer = \"a\"\n", "assert selection == correct_answer, \"Incorrect answer, hint ...\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "markdown", "metadata": { "id": "RUTbHVYnhAhD" }, "source": [ "Code demonstration" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "tWMMpYSDhAhE" }, "outputs": [], "source": [ "# Code demonstration" ] }, { "cell_type": "markdown", "metadata": { "id": "yoVsZtSxhAhE" }, "source": [ "**Code Task:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "cmO3DEGGhAhF" }, "outputs": [], "source": [ "# Code to be implemented during practical\n", "# You should prove the function signature." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "NgsT9Ai0hAhF" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')" ] }, { "cell_type": "markdown", "metadata": { "id": "K3SVLHuUhAhF" }, "source": [ "**Group Task:**\n", "\n", "Task that involves asking your neighbour or a group a question." ] }, { "cell_type": "markdown", "metadata": { "id": "SdNPg0pnhAhG" }, "source": [ "### Subsection - `Optional`" ] }, { "cell_type": "markdown", "metadata": { "id": "paVZs7iohAhG" }, "source": [ "Math foundations:\n" ] }, { "cell_type": "markdown", "metadata": { "id": "Pb5GPIJ1hAhG" }, "source": [ "**Math Task:**\n", "\n", "[Optional math task or ask multiple choice question. E.g. the derivation of this would equal a, b or c. We could check this at the end of the prac.]\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "KQGuKRE4hAhH" }, "outputs": [], "source": [ "selection = \"a\" # @param [\"a\", \"b\", \"c\"]\n", "print(f\"You selected: {selection}\")\n", "\n", "correct_answer = \"a\"\n", "assert selection == correct_answer, \"Incorrect answer, hint ...\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "markdown", "metadata": { "id": "ulze--aMhAhI" }, "source": [ "Code demonstration" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "AKb3jyPShAhI" }, "outputs": [], "source": [ "# Code demonstration" ] }, { "cell_type": "markdown", "metadata": { "id": "RFxl1s5BhAhI" }, "source": [ "**Code Task:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "3Y0ieLz_hAhJ" }, "outputs": [], "source": [ "# Code to be implemented during practical\n", "# You should prove the function signature." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Y8JwQYXLhAhJ" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')" ] }, { "cell_type": "markdown", "metadata": { "id": "MdxcDjuphAhJ" }, "source": [ "**Group Task:**\n", "\n", "Task that involves asking your neighbour or a group a question." ] }, { "cell_type": "markdown", "metadata": { "id": "hE6hEihPhAhK" }, "source": [ "### Section Quiz \n", "\n", "Optional end of section quiz. Below is an example of an assessment." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "L03B3HKwhAhK" }, "outputs": [], "source": [ "# @title Generate Quiz Form. (Run Cell)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "fV3YG7QOZD-B" }, "source": [ "## Conclusion\n", "**Summary:**\n", "\n", "[Summary of the main points/takeaways from the prac.]\n", "\n", "**Next Steps:** \n", "\n", "[Next steps for people who have completed the prac, like optional reading (e.g. blogs, papers, courses, youtube videos). This could also link to other pracs.]\n", "\n", "**Appendix:** \n", "\n", "[Anything (probably math heavy stuff) we don't have space for in the main practical sections.]\n", "\n", "**References:** \n", "\n", "[References for any content used in the notebook.]\n", "\n", "For other practicals from the Deep Learning Indaba, please visit [here](https://github.com/deep-learning-indaba/indaba-pracs-2022)." ] }, { "cell_type": "markdown", "metadata": { "id": "o1ndpYE50BpG" }, "source": [ "## Feedback\n", "\n", "Please provide feedback that we can use to improve our practicals in the future." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "OIZvkhfRz9Jz" }, "outputs": [], "source": [ "# @title Generate Feedback Form. (Run Cell)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "oglV4kHMWnIN" }, "source": [ "" ] } ], "metadata": { "accelerator": "TPU", "colab": { "collapsed_sections": [ "WILOYJH4gCnD" ], "name": "Indaba_2022_Prac_Template.ipynb", "provenance": [] }, "gpuClass": "standard", "kernelspec": { "display_name": "Python 3.8.5 ('base')", "language": "python", "name": "python3" }, "language_info": { "name": "python", "version": "3.8.5" }, "vscode": { "interpreter": { "hash": "145833166d986a8417df3c7acb65d917d84b716b5a452e57fcacdc66f1a168c9" } } }, "nbformat": 4, "nbformat_minor": 0 } ================================================ FILE: practicals/Introduction_to_ML_using_JAX.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "id": "m2s4kN_QPQVe" }, "source": [ "# **Intro to ML using JAX**\n", "\n", "\n", "\n", "\n", "\"Open\n", "\n", "© Deep Learning Indaba 2022. Apache License 2.0.\n", "\n", "**Authors:** Kale-ab Tessera\n", "\n", "**Reviewers:** Javier Antoran, James Allingham, Ruan van der Merwe, \n", "Sebastian Bodenstein, Laurence Midgley, Joao Guilherme and Elan van Biljon. \n", "\n", "**Introduction:** \n", "\n", "In this tutorial, we will learn about JAX, a new machine learning framework that has taken deep learning research by storm! JAX is praised for its speed, and we will learn how to achieve these speedups, using core concepts in JAX, such as automatic differentiation (`grad`), parallelization (`pmap`), vectorization (`vmap`), just-in-time compilation (`jit`), and more. We will then use what we have learned to implement Linear Regression effectively while learning some of the fundamentals of optimization.\n", "\n", "**Topics:** \n", "\n", "Content: `Numerical Computing` , `Supervised Learning` \n", "Level: `Beginner`\n", "\n", "\n", "**Aims/Learning Objectives:**\n", "\n", "- Learn the basics of JAX and its similarities and differences with NumPy.\n", "- Learn how to use JAX transforms - `jit`, `grad`, `vmap`, and `pmap`.\n", "- Learn the basics of optimization and how to implement effective training procedures using [Haiku](https://github.com/deepmind/dm-haiku) and [Optax](https://github.com/deepmind/optax). \n", "\n", "**Prerequisites:**\n", "\n", "- Basic knowledge of [NumPy](https://github.com/numpy/numpy).\n", "- Basic knowledge of [functional programming](https://en.wikipedia.org/wiki/Functional_programming). \n", "\n", "**Outline:** \n", "\n", ">[Part 1 - Basics of JAX](#scrollTo=Enx0WUr8tIPf)\n", "\n", ">>[1.1 From NumPy ➡ Jax - Beginner](#scrollTo=-ZUp8i37dFbU)\n", "\n", ">>>[JAX and NumPy - Similarities 🤝](#scrollTo=CbOEYsWQ6tHv)\n", "\n", ">>>[JAX and NumPy - Differences ❌](#scrollTo=lg4__l4A7yqc)\n", "\n", ">>[1.2 Acceleration in JAX 🚀 - Beginner, Intermediate, Advanced](#scrollTo=TSj972IWxTo2)\n", "\n", ">>>[JAX is backend Agnostic - Beginner](#scrollTo=_bQ9QqT-yKbs)\n", "\n", ">>>[JAX Transformations - Beginner, Intermediate, Advanced](#scrollTo=JM_08mXEBRIK)\n", "\n", ">>>>[Basic JAX Transformations - jit and grad - Beginner](#scrollTo=cOGuGWtLmP7n)\n", "\n", ">>>>[Pure Functions 💡 - Beginner](#scrollTo=fT56qxXzTVKZ)\n", "\n", ">>>>[More Advanced Transforms - vmap and pmap - Intermediate, Advanced](#scrollTo=tvBzh8wiGuLf)\n", "\n", "\n", ">[Part 2 - From Linear to Non-Linear Regression](#scrollTo=aB0503xgmSFh)\n", "\n", ">>[2.1 Linear Regression - 📈 Beginner](#scrollTo=XrWSN-zaWAhJ)\n", "\n", ">>>[Regression Toy Example - Housing Prices](#scrollTo=AcyM6XRj1cDz)\n", "\n", ">>>[Optimization by Trial-and-Error](#scrollTo=vnoEkgimTQ6V)\n", "\n", ">>>[Loss Function](#scrollTo=oLGAp30ZDnJ5)\n", "\n", ">>>[Gradient descent: No more tuning parameters by hand!](#scrollTo=fg5Hi4783Gus)\n", "\n", "\n", ">>[2.2 From Linear to Polynomial Regression - Intermediate](#scrollTo=Ao93xuXGJhLh)\n", "\n", ">>>[Under-fitting](#scrollTo=CcXjMKi0Znr6)\n", "\n", ">>>[Over-fitting](#scrollTo=uwwajy30U9fX)\n", "\n", ">>[2.3 Training Models Using Haiku and Optax - Beginner](#scrollTo=sAtms17jtCOU)\n", "\n", ">>>[Haiku](#scrollTo=exuVety_bFhQ)\n", "\n", ">>>[Optax](#scrollTo=_3h034w5bWn6)\n", "\n", ">>>[Full Training Loop Using Haiku and Optax 🧙](#scrollTo=7IaqVuRPg3ER)\n", "\n", ">[Conclusion](#scrollTo=fV3YG7QOZD-B)\n", "\n", ">[Appendix:](#scrollTo=XrRoSqlxfi7f)\n", "\n", ">>[Derivation of partial derivatives for exercise 2.4.](#scrollTo=9OH9H7ndfuyQ)\n", "\n", ">[Feedback](#scrollTo=o1ndpYE50BpG)\n", "\n", "\n", "**Before you start:**\n", "\n", "For this practical, you will need to use a GPU to speed up training. To do this, go to the \"Runtime\" menu in Colab, select \"Change runtime type\" and then in the popup menu, choose \"GPU\" in the \"Hardware accelerator\" box.\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "6EqhIg1odqg0" }, "source": [ "## Installation and Imports" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4boGA9rYdt9l", "cellView": "form" }, "outputs": [], "source": [ "## Install and import anything required. Capture hides the output from the cell.\n", "# @title Install and import required packages. (Run Cell)\n", "\n", "import subprocess\n", "import os\n", "\n", "# Based on https://stackoverflow.com/questions/67504079/how-to-check-if-an-nvidia-gpu-is-available-on-my-system\n", "try:\n", " subprocess.check_output('nvidia-smi')\n", " print(\"a GPU is connected.\")\n", "except Exception: \n", " # TPU or CPU\n", " if \"COLAB_TPU_ADDR\" in os.environ and os.environ[\"COLAB_TPU_ADDR\"]:\n", " print(\"A TPU is connected.\")\n", " import jax.tools.colab_tpu\n", " jax.tools.colab_tpu.setup_tpu()\n", " else:\n", " print(\"Only CPU accelerator is connected.\")\n", " # x8 cpu devices - number of (emulated) host devices\n", " os.environ[\"XLA_FLAGS\"] = \"--xla_force_host_platform_device_count=8\"\n", "import jax\n", "import jax.numpy as jnp\n", "from jax import grad, jit, vmap, pmap\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "YQe1CfDyrkdL", "cellView": "form" }, "outputs": [], "source": [ "# @title Helper Functions. (Run Cell)\n", "import copy\n", "from typing import Dict\n", "\n", "\n", "def plot_performance(data: Dict, title: str):\n", " runs = list(data.keys())\n", " time = list(data.values())\n", "\n", " # creating the bar plot\n", " plt.bar(runs, time, width=0.35)\n", "\n", " plt.xlabel(\"Implementation\")\n", " plt.ylabel(\"Average time taken (in s)\")\n", " plt.title(title)\n", " plt.show()\n", "\n", " best_perf_key = min(data, key=data.get)\n", " all_runs_key = copy.copy(runs)\n", "\n", " # all_runs_key_except_best\n", " all_runs_key.remove(best_perf_key)\n", "\n", " for k in all_runs_key:\n", " print(\n", " f\"{best_perf_key} was {round((data[k]/data[best_perf_key]),2)} times faster than {k} !!!\"\n", " )" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "yFzjRHUsUQqq", "cellView": "form" }, "outputs": [], "source": [ "# @title Check the device you are using (Run Cell)\n", "print(f\"Num devices: {jax.device_count()}\")\n", "print(f\" Devices: {jax.devices()}\")" ] }, { "cell_type": "markdown", "source": [ "Text Cell below creates a LaTeX Macro to be used in math equations. " ], "metadata": { "id": "0RGo-mOedEV8" } }, { "cell_type": "markdown", "source": [ "$$\n", "\\newcommand{\\because}[1]{&& \\triangleright \\textrm{#1}}\n", "$$" ], "metadata": { "id": "blMNBku0dB8h" } }, { "cell_type": "markdown", "metadata": { "id": "Enx0WUr8tIPf" }, "source": [ "# **Part 1 - Basics of JAX**\n", "\n", "**What is JAX?**\n", "\n", "[JAX](https://jax.readthedocs.io/en/latest/index.html) is a python package for writing composable numerical transformations. It leverages [Autograd](https://github.com/hips/autograd) and [XLA](https://www.tensorflow.org/xla) (Accelerated Linear Algebra), to achieve high-performance numerical computing, which is particularly relevant in machine learning.\n", "\n", "It provides functionality such as automatic differentiation (`grad`), parallelization (`pmap`), vectorization (`vmap`), just-in-time compilation (`jit`), and more. These transforms operate on [pure functions](https://jax.readthedocs.io/en/latest/notebooks/Common_Gotchas_in_JAX.html#pure-functions), so JAX encourages a **functional programming** paradigm. Furthermore, the use of XLA allows one to target different kinds of accelerators (CPU, GPU and TPU), without code changes. \n", "\n", "JAX is different from frameworks such as PyTorch or Tensorflow (TF). It is more low-level and minimalistic. JAX simply offers a set of primitives (simple operations) like `jit` and `vmap`, and relies on other libraries for other things e.g. using the data loader from PyTorch or TF. Due to JAX's simplicity, it is commonly used with higher-level neural network libraries such as [Haiku](https://github.com/deepmind/dm-haiku) or [Flax](https://github.com/google/flax). (Imagine writing complicated architectures using a NumPy-like interface alone! 😮 ) " ] }, { "cell_type": "markdown", "metadata": { "id": "-ZUp8i37dFbU" }, "source": [ "## **1.1 From NumPy ➡ Jax** - `Beginner`\n", "\n", " " ] }, { "cell_type": "markdown", "metadata": { "id": "CbOEYsWQ6tHv" }, "source": [ "### JAX and NumPy - Similarities 🤝\n", "\n", "The main similarity between JAX and NumPy is that they share a similar interface and often, JAX and NumPy arrays can be used interchangeably. " ] }, { "cell_type": "markdown", "metadata": { "id": "McStJC-l3qsG" }, "source": [ "#### Similiar Interface" ] }, { "cell_type": "markdown", "metadata": { "id": "KbYfoaujT2F7" }, "source": [ "Let's plot the sine functions using NumPy." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "sgRLq58OTz1t" }, "outputs": [], "source": [ "# 100 linearly spaced numbers from -np.pi to np.pi\n", "x = np.linspace(-np.pi, np.pi, 100)\n", "\n", "# the function, which is y = sin(x) here\n", "y = np.sin(x)\n", "\n", "# plot the functions\n", "plt.plot(x, y, \"b\", label=\"y=sin(x)\")\n", "\n", "plt.legend(loc=\"upper left\")\n", "\n", "# show the plot\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "XCEnlC-PU3ps" }, "source": [ "Now using jax. We already imported `jax.numpy` as `jnp` in the first cell." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "kRQf2mNRTlt3" }, "outputs": [], "source": [ "# 100 linearly spaced numbers from -jnp.pi to jnp.pi\n", "x = jnp.linspace(-jnp.pi, jnp.pi, 100)\n", "\n", "# the function, which is y = sin(x) here\n", "y = jnp.sin(x)\n", "\n", "# plot the functions\n", "plt.plot(x, y, \"b\", label=\"y=sin(x)\")\n", "\n", "plt.legend(loc=\"upper left\")\n", "\n", "# show the plot\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "wuNscwHeV_dn" }, "source": [ "**Exercise 1.1 - Code Task:** Can you plot the cosine function using `jnp`?" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "5svZFPUCQNsG" }, "outputs": [], "source": [ "# Plot Cosine using jnp. (UPDATE ME)\n", "\n", "# 100 linearly spaced numbers\n", "# UPDATE ME\n", "x = ...\n", "\n", "# UPDATE ME\n", "y = ...\n", "\n", "\n", "# plot the functions\n", "plt.plot(x, y, \"b\", label=\"y=cos(x)\")\n", "\n", "plt.legend(loc=\"upper left\")\n", "\n", "# show the plot\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "m4AVrGzy6JWR", "cellView": "form" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "# 100 linearly spaced numbers\n", "x = jnp.linspace(-jnp.pi, jnp.pi, 100)\n", "\n", "y = jnp.cos(x)\n", "\n", "# plot the functions\n", "plt.plot(x, y, \"b\", label=\"y=cos(x)\")\n", "\n", "plt.legend(loc=\"upper left\")\n", "\n", "# show the plot\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "lg4__l4A7yqc" }, "source": [ "### JAX and NumPy - Differences ❌ \n", "\n", "Although JAX and NumPy have some similarities, they do have some important differences:\n", "- Jax arrays are **immutable** (they can't be modified after they are created).\n", "- The way they handle **randomness** -- JAX handles randomness explicitly." ] }, { "cell_type": "markdown", "metadata": { "id": "dPbOnhE4ZSTi" }, "source": [ "#### JAX arrays are immutable, while NumPy arrays are not.\n", "\n", "JAX and NumPy arrays are often interchangeable, **but** Jax arrays are **immutable** (they can't be modified after they are created). Allowing mutations makes transforms difficult and violates conditions for [pure functions](https://en.wikipedia.org/wiki/Pure_function).\n", "\n" ] }, { "cell_type": "markdown", "source": [ "Let's see this in practice by changing the number at the beginning of an array. " ], "metadata": { "id": "Vdfb1wtd-GkF" } }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "7r-Los6YZR-f" }, "outputs": [], "source": [ "# NumPy: mutable arrays\n", "x = np.arange(10)\n", "x[0] = 10\n", "print(x)" ] }, { "cell_type": "markdown", "source": [ "Let's try this in JAX." ], "metadata": { "id": "8Y23OWjE_BDA" } }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "OxjkKpqAZxWo" }, "outputs": [], "source": [ "# JAX: immutable arrays\n", "# Should raise an error.\n", "try:\n", " x = jnp.arange(10)\n", " x[0] = 10\n", "except Exception as e:\n", " print(\"Exception {}\".format(e))" ] }, { "cell_type": "markdown", "metadata": { "id": "VoWT5RBUagW8" }, "source": [ "So it fails! We can't mutate a JAX array once it has been created. To update JAX arrays, we need to use [helper functions](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.ndarray.at.html) that return an updated copy of the JAX array. \n", "\n", "Instead of doing this `x[idx] = y`, we need to do this `x = x.at[idx].set(y)`. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "qJYxkh4qagwO" }, "outputs": [], "source": [ "x = jnp.arange(10)\n", "new_x = x.at[0].set(10)\n", "print(f\" new_x: {new_x} original x: {x}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "Ut0meCGB5qD0" }, "source": [ "Note here that `new_x` is a copy and that the original `x` is unchanged. " ] }, { "cell_type": "markdown", "metadata": { "id": "oAH4c_smdGQU" }, "source": [ "#### Randomness in NumPy vs JAX \n", "\n", "JAX is more explicit in Pseudo Random Number Generation (PRNG) than NumPy and other libraries (such as TensorFlow or PyTorch). [PRNG](https://en.wikipedia.org/wiki/Pseudorandom_number_generator) is the process of algorithmically generating a sequence of numbers, which *approximate* the properties of a sequence of random numbers. \n", "\n", "Let's see the differences in how JAX and NumPy generate random numbers." ] }, { "cell_type": "markdown", "metadata": { "id": "Q2m376Ethf8m" }, "source": [ "##### In Numpy, PRNG is based on a global `state`.\n", "\n", "Let's set the initial seed." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "-0t3sjxzdgmP" }, "outputs": [], "source": [ "# Set random seed\n", "np.random.seed(42)\n", "prng_state = np.random.get_state()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "QKVz5atZMMOV" }, "outputs": [], "source": [ "# @title Helper function to compare prng keys (Run Cell)\n", "def is_prng_state_the_same(prng_1, prng_2):\n", " \"\"\"Helper function to compare two prng keys.\"\"\"\n", " # concat all elements in prng tuple\n", " list_prng_data_equal = [(a == b) for a, b in zip(prng_1, prng_2)]\n", " # stack all elements together\n", " list_prng_data_equal = np.hstack(list_prng_data_equal)\n", " # check if all elements are the same\n", " is_prng_equal = all(list_prng_data_equal)\n", " return is_prng_equal" ] }, { "cell_type": "markdown", "metadata": { "id": "nloZ9abah3J3" }, "source": [ "Let's take a few samples from a Gaussian (normal) Distribution and check if PRNG keys/global state change." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "aiUcfX7iSenY" }, "outputs": [], "source": [ "print(\n", " f\"sample 1 = {np.random.normal()} Did prng state change: {not is_prng_state_the_same(prng_state,np.random.get_state())}\"\n", ")\n", "prng_state = np.random.get_state()\n", "print(\n", " f\"sample 2 = {np.random.normal()} Did prng state change: {not is_prng_state_the_same(prng_state,np.random.get_state())}\"\n", ")\n", "prng_state = np.random.get_state()\n", "print(\n", " f\"sample 3 = {np.random.normal()} Did prng state change: {not is_prng_state_the_same(prng_state,np.random.get_state())}\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "nuHkW6V4iLa9" }, "source": [ "Numpy's global random state is updated every time a random number is generated, so *sample 1 != sample 2 != sample 3*. \n", "\n", "Having the state automatically updated, makes it difficult to handle randomness in a **reproducible** way across different threads, processes and devices. " ] }, { "cell_type": "markdown", "metadata": { "id": "lGDU6ckKkzqL" }, "source": [ "##### In JAX, PRNG is explicit.\n", "\n", "In JAX, for each random number generation, you need to explicitly pass in a random key/state." ] }, { "cell_type": "markdown", "metadata": { "id": "6oKdk5CSmD-f" }, "source": [ "Passing the same state/key results in the same number being generated. This is generally undesirable." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Y-6B0hjtlTmd" }, "outputs": [], "source": [ "from jax import random\n", "\n", "key = random.PRNGKey(42)\n", "print(f\"sample 1 = {random.normal(key)}\")\n", "print(f\"sample 2 = {random.normal(key)}\")\n", "print(f\"sample 3 = {random.normal(key)}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "l0KcwEbZqIaQ" }, "source": [ "To generate different and independent samples, you need to manually **split** the keys. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "v-7BhY0MmEhI" }, "outputs": [], "source": [ "from jax import random\n", "\n", "key = random.PRNGKey(42)\n", "print(f\"sample 1 = {random.normal(key)}\")\n", "\n", "# We split the key -> new key and subkey\n", "new_key, subkey = random.split(key)\n", "\n", "# We use the subkey immediately and keep the new key for future splits.\n", "# It doesn't really matter which key we keep and which one we use immediately.\n", "print(f\"sample 2 = {random.normal(subkey)}\")\n", "\n", "# We split the new key -> new key2 and subkey\n", "new_key2, subkey = random.split(new_key)\n", "print(f\"sample 3 = {random.normal(subkey)}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "2VnTDptmuk-i" }, "source": [ "By using JAX, we can more easily reproduce random number generation in parallel across threads, processes, or even devices by explicitly passing and keeping track of the prng key (without relying on a global state that automatically gets updated). For more details on PRNG in JAX, you can read more [here](https://jax.readthedocs.io/en/latest/jep/263-prng.html). " ] }, { "cell_type": "markdown", "metadata": { "id": "TSj972IWxTo2" }, "source": [ "## **1.2 Acceleration in JAX** 🚀 - `Beginner`, `Intermediate`, `Advanced`\n", "\n", "JAX leverages Autograd and XLA for accelerating numerical computation. The use of Autograd allows for automatic differentiation (`grad`), while XLA allows JAX to run on multiple accelerators/backends and run transforms like `jit` and `pmap`. JAX also allows you to use `vmap` for automatic vectorization. " ] }, { "cell_type": "markdown", "metadata": { "id": "_bQ9QqT-yKbs" }, "source": [ "### JAX is backend Agnostic - `Beginner`\n", "\n", "Using JAX, you can run the same code on different backends/AI accelerators (e.g. CPU/GPU/TPU), **with no changes in code** (no more `.to(device)` - from frameworks like PyTorch). This means we can easily run linear algebra operations directly on GPU/TPU." ] }, { "cell_type": "markdown", "metadata": { "id": "4PbcFsfAibBu" }, "source": [ "**Multiplying Matrices**\n", "\n", "Dot products are a common operation in numerical computing and a central part of modern deep learning. They are defined over [vectors](https://en.wikipedia.org/wiki/Coordinate_vector), which can loosely be thought of as a list of multiple scalers (single values). \n", "\n", "Formally, given two vectors $\\boldsymbol{x}$,$\\boldsymbol{y}$ $\\in R^n$, their dot product is defined as:\n", "\n", "
$\\boldsymbol{x}^{\\top} \\boldsymbol{y}=\\sum_{i=1}^{n} x_{i} y_{i}$
" ] }, { "cell_type": "markdown", "metadata": { "id": "AY1RsVkXaokP" }, "source": [ "Dot Product in NumPy (will run on cpu)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "yj59KkD_HDOs" }, "outputs": [], "source": [ "size = 1000\n", "x = np.random.normal(size=(size, size))\n", "y = np.random.normal(size=(size, size))\n", "numpy_time = %timeit -o -n 10 a_np = np.dot(y,x.T)" ] }, { "cell_type": "markdown", "metadata": { "id": "6c_kl-u0KPVY" }, "source": [ "Dot Product using JAX (will run on current runtime - e.g. GPU)." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "PHRcHK86KO3w" }, "outputs": [], "source": [ "size = 1000\n", "key1, key2 = jax.random.split(jax.random.PRNGKey(42), num=2)\n", "x = jax.random.normal(key1, shape=(size, size))\n", "y = jax.random.normal(key2, shape=(size, size))\n", "jax_time = %timeit -o -n 10 jnp.dot(y, x.T).block_until_ready()" ] }, { "cell_type": "markdown", "metadata": { "id": "LMTSpEG3TNah" }, "source": [ "\n", "> When timing JAX functions, we use `.block_until_ready()` because JAX uses [asynchronous dispatch](https://jax.readthedocs.io/en/latest/async_dispatch.html#async-dispatch). This means JAX doesn't wait for the operation to complete before returning control to your code. To fairly compute the time taken for JAX operations, we therefore block until the operation is done.\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "S3vwh6Q724gn" }, "source": [ "How much faster was the dot product in JAX (Using GPU)?" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "UkASX9p34A1D" }, "outputs": [], "source": [ "np_average_time = np.mean(numpy_time.all_runs)\n", "jax_average_time = np.mean(jax_time.all_runs)\n", "data = {\"numpy\": np_average_time, \"jax\": jax_average_time}\n", "\n", "plot_performance(data, title=\"Average time taken per framework to run dot product\")" ] }, { "cell_type": "markdown", "source": [ "JAX not running much faster? -> Re-run the JAX cell. \n", "> \"Keep in mind that the first time you run JAX code, it will be slower because it is being compiled. T*his is true even if you don’t use jit in your own code, because JAX’s builtin functions are also jit compiled*.\" - [JAX Docs](https://jax.readthedocs.io/en/latest/faq.html#benchmarking-jax-code).\n", "\n", "If you are running on an accelerator, you should see a considerable performance benefit of using JAX, without making any changes to your code! \n", "\n", "\n", "\n", "\n", "\n" ], "metadata": { "id": "X6Rv_OQgBOqr" } }, { "cell_type": "markdown", "metadata": { "id": "JM_08mXEBRIK" }, "source": [ "### JAX Transformations - `Beginner`, `Intermediate`, `Advanced`\n", "\n", "JAX transforms (e.g. jit, grad, vmap, pmap) first convert python functions into an intermediate language called *jaxpr*. Transforms are then applied to this jaxpr representation.\n", "\n", "JAX generates jaxpr, in a process known as **tracing**. During tracing, function inputs are wrapped by a tracer object and then JAX records all operations (including regular python code) that occur during the function call. These recorded operations are used to reconstruct the function. \n", "\n", "Any python side-effects are not recorded during tracing. JAX transforms and compilations are designed to work only with **pure functions**. For more on tracing and jaxpr, you can read [here](https://jax.readthedocs.io/en/latest/jaxpr.html).\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "cOGuGWtLmP7n" }, "source": [ "#### Basic JAX Transformations - `jit` and `grad` - `Beginner`\n", "\n", "In this section, we will explore two basic JAX transforms: \n", "- jit (Just-in-time compilation) - compiles and caches JAX Python functions so that they can be run efficiently on XLA to *speed up function calls*.\n", "- grad - *Automatically* compute *gradients* of functions." ] }, { "cell_type": "markdown", "metadata": { "id": "QsJE_U-ZzVol" }, "source": [ "##### jit\n", "\n", "Jax dispatches operations to accelerators one at a time. If we have repeated operations, we can use `jit` to compile the function the first time it is called, then subsequent calls will be [cached](https://en.wikipedia.org/wiki/Cache_(computing) (save the compiled version so that it doesn't need to be recompiled everytime we call it). " ] }, { "cell_type": "markdown", "metadata": { "id": "uIYsqIp_-Dly" }, "source": [ "Let's compile [ReLU (Rectified Linear Unit)](https://arxiv.org/abs/1803.08375), a popular activation function in deep learning. \n", "\n", "ReLU is defined as follows:\n", "
$f(x)=max(0,x)$
\n", "\n", "It can be visualized as follows:\n", "\n", "
\n", "\n", "
,\n", "\n", "where $x$ is the input to the function and $y$ is output of ReLU.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "Vm-bN9sQETLV" }, "source": [ "$$f(x)=\\max (0, x)=\\left\\{\\begin{array}{l}x_{i} \\text { if } x_{i}>0 \\\\ 0 \\text { if } x_{i}<=0\\end{array}\\right.$$" ] }, { "cell_type": "markdown", "metadata": { "id": "dFiuu3BFAKdY" }, "source": [ "**Exercise 1.2 - Code Task:** Complete the ReLU implementation below using standard python." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1_qMJJbs-Cbe" }, "outputs": [], "source": [ "# Implement ReLU.\n", "def relu(x):\n", " if x > 0:\n", " return\n", " # TODO Implement me!\n", " else:\n", " return\n", " # TODO Implement me!" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "zCobLakM1esy" }, "outputs": [], "source": [ "# @title Run to test your function.\n", "\n", "\n", "def plot_relu(relu_function):\n", " max_int = 5\n", " # Generete 100 evenly spaced points from -max_int to max_int\n", " x = np.linspace(-max_int, max_int, 1000)\n", " y = np.array([relu_function(xi) for xi in x])\n", " plt.plot(x, y, label=\"ReLU\")\n", " plt.legend(loc=\"upper left\")\n", " plt.xticks(np.arange(min(x), max(x) + 1, 1))\n", " plt.show()\n", "\n", "\n", "def check_relu_function(relu_function):\n", " # Generete 100 evenly spaced points from -100 to -1\n", " x = np.linspace(-100, -1, 100)\n", " y = np.array([relu_function(xi) for xi in x])\n", " assert (y == 0).all()\n", "\n", " # Check if x == 0\n", " x = 0\n", " y = relu_function(x)\n", " assert y == 0\n", "\n", " # Generete 100 evenly spaced points from 0 to 100\n", " x = np.linspace(0, 100, 100)\n", " y = np.array([relu_function(xi) for xi in x])\n", " assert np.allclose(x, y)\n", "\n", " print(\"Your ReLU function is correct!\")\n", "\n", "\n", "check_relu_function(relu)\n", "plot_relu(relu)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Kken6_XvDdOK", "cellView": "form" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "def relu(x):\n", " if x > 0:\n", " return x\n", " else:\n", " return 0\n", "\n", "\n", "check_relu_function(relu)\n", "plot_relu(relu)" ] }, { "cell_type": "markdown", "metadata": { "id": "2mgIAyE2Fx3O" }, "source": [ "Let's try to `jit` this function to speed up compilation and then try to call it." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4YDkiNlRF6jn" }, "outputs": [], "source": [ "relu_jit = jax.jit(relu)\n", "\n", "key = jax.random.PRNGKey(42)\n", "# Gen 1000000 random numbers and pass them to relu\n", "num_random_numbers = 1000000\n", "x = jax.random.normal(key, (num_random_numbers,))\n", "\n", "# Should raise an error.\n", "try:\n", " relu_jit(x)\n", "except Exception as e:\n", " print(\"Exception {}\".format(e))" ] }, { "cell_type": "markdown", "metadata": { "id": "y7q33C4pHOQW" }, "source": [ "**Why does this fail?**\n", "\n", "\n", "> As mentioned above, JAX transforms first converts python functions into an intermediate language called *jaxpr*. Jaxpr only captures what is executed on the parameters given to it during tracing, so this means during conditional calls, jaxpr only considers the branch taken.\n", "> \n", "> When jit-compiling a function, we want to compile and cache a version of the function that can handle multiple different argument types (so we don't have to recompile for each function evaluation). For example, when we compile a function on an array `jnp.array([1., 2., 3.], jnp.float32)`, we would likely also want to use the compiled function for `jnp.array([4., 5., 6.], jnp.float32)`. \n", "> \n", "> To achieve this, JAX traces your code based on abstract values. The default abstraction level is a ShapedArray - array that has a fixed size and dtype, for example, if we trace a function using `ShapedArray((3,), jnp.float32)`, it can be reused for any concrete array of size 3, and float32 dtype. \n", "> \n", "> This does come with some challenges. Tracing that relies on concrete values becomes tricky and sometimes results in `ConcretizationTypeError` as in the ReLU function above. Furthermore, when tracing a function with conditional statements (\"if ...\"), JAX doesn't know which branch to take when tracing and so tracing can't occur.\n", "\n", "**TLDR**: JAX tracing doesn't work well with conditional statements (\"if ...\"). \n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "uLswU8aMEQ9K" }, "source": [ "To solve this, we have two options:\n", "- Use static arguments to make sure JAX traces on a concrete value level - this is not ideal if you need to retrace a lot. Example - bottom of this [section](https://jax.readthedocs.io/en/latest/notebooks/Common_Gotchas_in_JAX.html#python-control-flow-jit).\n", "- Use builtin JAX condition flow primitives such as [`lax.cond`](https://jax.readthedocs.io/en/latest/_autosummary/jax.lax.cond.html) or [`jnp.where`](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.where.html). " ] }, { "cell_type": "markdown", "metadata": { "id": "SX8k4R7daBpP" }, "source": [ "**Exercise 1.3 - Code Task** : Let's convert our ReLU function above to work with jit.\n", "\n", "**Useful methods:** [`jnp.where`](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.where.html) (or [`jnp.maximum`](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.maximum.html), if you prefer.) " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "p-4mXLwqaK-b" }, "outputs": [], "source": [ "# Implement a jittable ReLU\n", "def relu(x):\n", " # TODO Implement ME!\n", " return ..." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "B5fq_QRoaaG5", "cellView": "form" }, "outputs": [], "source": [ "# @title Run to test your function.\n", "check_relu_function(relu)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "XLtBaplGxlS3", "cellView": "form" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "def relu(x):\n", " return jnp.where(x > 0, x, 0)\n", " # Another option - return jnp.maximum(x,0)\n", "\n", "\n", "check_relu_function(relu)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "KYogDOCLiLXN", "cellView": "form" }, "outputs": [], "source": [ "# @title Now let's see the performance benefit of using jit! (Run me)\n", "\n", "# jit our function\n", "relu_jit = jax.jit(relu)\n", "\n", "# generate random input\n", "key = jax.random.PRNGKey(42)\n", "num_random_numbers = 1000000\n", "x = jax.random.normal(key, (num_random_numbers,))\n", "\n", "# time normal jit function\n", "jax_time = %timeit -o -n 10 relu(x).block_until_ready()\n", "\n", "# Warm up/Compile - first run for jitted function\n", "relu_jit(x).block_until_ready()\n", "\n", "# time jitted function\n", "jax_jit_time = %timeit -o -n 10 relu_jit(x).block_until_ready()\n", "\n", "# Let's plot the performance difference\n", "jax_avg_time = np.mean(jax_time.all_runs)\n", "jax_jit_avg_time = np.mean(jax_jit_time.all_runs)\n", "data = {\"JAX (no jit)\": jax_avg_time, \"JAX (with jit)\": jax_jit_avg_time}\n", "\n", "plot_performance(data, title=\"Average time taken for ReLU function\")" ] }, { "cell_type": "markdown", "metadata": { "id": "dxq-z-xzs40s" }, "source": [ "##### grad\n", "\n", "`grad` is used to automatically compute the gradient of a function in JAX. It can be applied to Python and NumPy functions, which means you can differentiate through loops, branches, recursion, and closures. \n", "\n", "`grad` takes in a function `f` and returns a function. If `f` is a mathematical function $f$, then `grad(f)` corresponds to $f'$ (Lagrange's notation), with `grad(f)(x)` corresponding to $f'(x)$.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "C49R8EOs-GHe" }, "source": [ "Let's take a simple function $f(x)=6x^4-9x+4$" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "lUMepl6J-dQP" }, "outputs": [], "source": [ "f = lambda x: 6 * x**4 - 9 * x + 4" ] }, { "cell_type": "markdown", "metadata": { "id": "9ayvrkpiBiu4" }, "source": [ "We can compute the gradient of this function - $f'(x)$ and evaluate it at $x=3$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "YNm9hS2S-vJk" }, "outputs": [], "source": [ "dfdx = grad(f)\n", "dfdx_3 = dfdx(3.0)" ] }, { "cell_type": "markdown", "metadata": { "id": "UcRUywsnF3LZ" }, "source": [ "**Exercise 1.4 - Math Task**: Can you calculate $f'(2)$ by hand?" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "PybYK6NEFWrD", "cellView": "form" }, "outputs": [], "source": [ "answer = 0 # @param {type:\"integer\"}\n", "\n", "dfdx_2 = dfdx(2.0)\n", "\n", "assert (\n", " answer == dfdx_2\n", "), \"Incorrect answer, hint https://en.wikipedia.org/wiki/Power_rule#Statement_of_the_power_rule\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "code", "source": [ "# @title Answer to math task (Try not to run until you've given it a good try!') \n", "%%latex \n", "\\begin{aligned}\n", "f(x) & = 6x^4-9x+4 \\\\\n", "f'(x) & = 24x^3 -9 && \\triangleright \\textrm{Power Rule.} \\\\ \n", "f'(2) & = 24(2)^3 -9 = 183 && \\triangleright \\textrm{Substituting x=2} \\\\\n", "\\end{aligned}" ], "metadata": { "id": "CAwlhxIlRPp9", "cellView": "form" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "wcB5ZjojH67Q" }, "source": [ "We can also chain `grad` to calculate higher order deratives. \n", "\n", "We can calculate $f'''(x)$ as follows:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "013SFq7BE54W" }, "outputs": [], "source": [ "d3dx = grad(grad(grad(f)))" ] }, { "cell_type": "markdown", "metadata": { "id": "7_r9VQGoIsa6" }, "source": [ "**Exercise 1.5 - Math Task**: How about $f'''(2)$ by hand?" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "WZUArv4TInPg" }, "outputs": [], "source": [ "answer = 0 # @param {type:\"integer\"}\n", "\n", "d3dx_2 = d3dx(2.0)\n", "\n", "assert answer == d3dx_2, \"Incorrect answer, hint ...\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "code", "source": [ "# @title Answer to math task (Try not to run until you've given it a good try!') \n", "%%latex \n", "\n", "\\begin{aligned}\n", "f(x) & = 6x^4-9x+4 \\\\\n", "f'(x) & = 24x^3 -9 && \\triangleright \\textrm{Power Rule.} \\\\\n", "f''(x) & = 72x^2 && \\triangleright \\textrm{Power Rule.} \\\\\n", "f'''(x) & = 144x && \\triangleright \\textrm{Power Rule.} \\\\\n", "f'''(2) & = 144(2)=288 && \\triangleright \\textrm{Substituting x=2} \\\\ \n", "\\end{aligned}" ], "metadata": { "id": "TCC7SkH8MMVk", "cellView": "form" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "c3QgJNU9XYyz" }, "source": [ "Another useful method is `value_and_grad`, where we can get the value ($f(x)$) and gradient ($f'(x)$). " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "x3zeSv6gXuyd" }, "outputs": [], "source": [ "from jax import value_and_grad\n", "\n", "f_x, dy_dx = value_and_grad(f)(2.0)\n", "print(f\"f(x): {f_x} f′(x): {dy_dx} \")" ] }, { "cell_type": "markdown", "source": [ "> For partial derivatives, you need to use the [`argnums`](https://jax.readthedocs.io/en/latest/_autosummary/jax.grad.html) param to specify which variables you want to differentiate with respect to. \n", "\n" ], "metadata": { "id": "_vUr-B6gSxnu" } }, { "cell_type": "markdown", "metadata": { "id": "MktOLPnwvnH3" }, "source": [ "**Exercise 1.6 - Group Task:** Chat with neighbour/think about how JAX's automatic differentiation compares to other libraries such as Pytorch or Tensorflow. " ] }, { "cell_type": "markdown", "source": [ "Another useful application related to `grad` is when you want your `grad` function to return auxiliary (extra) data, that you don't want differentiated. You can use the `has_aux` parameter to do this (example in \"Auxiliary data\" section in [here](https://github.com/google/jax/blob/main/docs/jax-101/01-jax-basics.ipynb))." ], "metadata": { "id": "rvXlE7z02M2D" } }, { "cell_type": "markdown", "source": [ "#### Pure Functions 💡 - `Beginner`\n", "\n", "So we have learned about `jit` and `grad`. Before we move on, let's make sure we understand [**pure functions**](https://en.wikipedia.org/wiki/Pure_function). \n", "\n", "JAX transformation and compilation are designed to work reliably on **pure functions**. These functions have the following properties:\n", "1. All **input** data is passed through the **function's parameters**. \n", "2. All **results** are output through the **function's return**. \n", "3. The function always returns the same **result** if invoked with the **same inputs**. What if your function involves randomness? Pass in the random seed!\n", "4. **No [side-effects](https://en.wikipedia.org/wiki/Side_effect_(computer_science))** - no mutation of non-local variables or input/output streams. \n", "\n", "Let's see what could happen if we don't stick to using pure functions." ], "metadata": { "id": "fT56qxXzTVKZ" } }, { "cell_type": "markdown", "source": [ "##### Side Effects" ], "metadata": { "id": "Mad7l7s0CtT1" } }, { "cell_type": "markdown", "source": [ "Let's call print within a function." ], "metadata": { "id": "xkQWTE2Xe955" } }, { "cell_type": "code", "source": [ "def impure_print_side_effect(x):\n", " print(\"Print me!\") # This is a side-effect\n", " return x\n", "\n", "\n", "# The side-effects appear during the first run\n", "print(\"First call: \", jax.jit(impure_print_side_effect)(4.0))" ], "metadata": { "id": "S9aeUdUoBmCg" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "As expected, the print statement is called.\n", "\n", "Let's call this function again. " ], "metadata": { "id": "nu4rnyS7ox_L" } }, { "cell_type": "code", "source": [ "# Subsequent runs with parameters of same type and shape may not show the side-effect\n", "# This is because JAX now invokes a cached compilation of the function\n", "print(\"Second call: \", jax.jit(impure_print_side_effect)(5.0))" ], "metadata": { "id": "-wnkIqAxfDeJ" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "Ah, no print statement! Since JAX cached the compilation of the function, `print()` calls will only happen during tracing and not every time the function is called. " ], "metadata": { "id": "64rNvVnwo-eB" } }, { "cell_type": "code", "source": [ "# JAX re-runs the Python function when the type or shape of the argument changes\n", "print(\n", " \"Third call, different type: \", jax.jit(impure_print_side_effect)(jnp.array([5.0]))\n", ")" ], "metadata": { "id": "Mp_CkOL-o86t" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "In this case, we called the function with a different shaped object and so it triggered the re-tracing of the function and print was called again. " ], "metadata": { "id": "XFogrIf5fbLU" } }, { "cell_type": "markdown", "source": [ "To print values in compiled functions, use [host callbacks](https://jax.readthedocs.io/en/latest/jax.experimental.host_callback.html?highlight=print#jax.experimental.host_callback.id_print)([example](https://github.com/google/jax/issues/196#issuecomment-1191155679)) or if your jax version>=0.3.16, you can use [`jax.debug.print`](https://jax.readthedocs.io/en/latest/debugging/print_breakpoint.html). \n" ], "metadata": { "id": "pqV6_25GCxHL" } }, { "cell_type": "markdown", "source": [ "##### Globals" ], "metadata": { "id": "EqL1-TGaC8Ir" } }, { "cell_type": "markdown", "source": [ "Using global variables can also lead to some undesired consequences!" ], "metadata": { "id": "t8dzJog8tMe_" } }, { "cell_type": "code", "source": [ "g = 0.0\n", "\n", "\n", "def impure_uses_globals(x):\n", " return x + g\n", "\n", "\n", "# JAX captures the value of the global during the first run\n", "print(\"First call: \", jax.jit(impure_uses_globals)(4.0))" ], "metadata": { "id": "vwAkKrDiCXO6" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "This prints 4, using the original value of `g`.\n", "\n", "Let's update `g` and call our function again." ], "metadata": { "id": "pWNE8B5btcfc" } }, { "cell_type": "code", "source": [ "g = 10.0 # Update the global\n", "\n", "# Subsequent runs may silently use the cached value of the globals\n", "print(\"Second call: \", jax.jit(impure_uses_globals)(4.0))" ], "metadata": { "id": "mLMpdQZwtUEL" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "Even though we updated our global variable, this still prints 4, using the original value of `g`. This is because the value of `g` was cached." ], "metadata": { "id": "o3-ygEx0tpBX" } }, { "cell_type": "code", "source": [ "# JAX re-runs the Python function when the type or shape of the argument changes\n", "# This will end up reading the latest value of the global\n", "print(\"Third call, different type: \", jax.jit(impure_uses_globals)(jnp.array([4.0])))" ], "metadata": { "id": "LDecWNyktWDN" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "Similar to the side-effects example, re-tracing gets triggered when the shape of our input has changed. In this case, our function now uses the updated value of `g`." ], "metadata": { "id": "3mIZaXOqt5ix" } }, { "cell_type": "markdown", "source": [ "Since the global variables are cached, it is still okay to use global **constants** inside jax functions." ], "metadata": { "id": "aLis2BV04BQK" } }, { "cell_type": "markdown", "source": [ "#### JAX transforms <-> Pure Functions \n", "In summary, JAX transforms should only be used with pure functions!" ], "metadata": { "id": "JAbqUwp0uPta" } }, { "cell_type": "markdown", "metadata": { "id": "tvBzh8wiGuLf" }, "source": [ "#### More Advanced Transforms - `vmap` and `pmap` - `Intermediate`, `Advanced`\n", "\n", "JAX also provides transforms that allow you automatically vectorize (`vmap`) and parallelize (`pmap`) your code. " ] }, { "cell_type": "markdown", "metadata": { "id": "RCUB9YkCnCFb" }, "source": [ "##### vmap - `Intermediate`\n", "\n", "vmap (Vectorizing map) automatically vectorizes your python functions. " ] }, { "cell_type": "markdown", "metadata": { "id": "e858lqfYKd4d" }, "source": [ "Let's define a simple function that calculates the min and max of an input." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "-6qalyXgDsKB" }, "outputs": [], "source": [ "def min_max(x):\n", " return jnp.array([jnp.min(x), jnp.max(x)])" ] }, { "cell_type": "markdown", "metadata": { "id": "muSIsUkgKlxh" }, "source": [ "We can apply this function to the vector - `[0, 1, 2, 3, 4]` and get the min and max values." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "F5wIeGieKsWG" }, "outputs": [], "source": [ "x = jnp.arange(5)\n", "min_max(x)" ] }, { "cell_type": "markdown", "metadata": { "id": "_PkC7NnPLNXq" }, "source": [ "What about if we want to apply this to a batch/list of vectors (i.e. calculate the min and max independently across multiple batches)? " ] }, { "cell_type": "markdown", "metadata": { "id": "hRngFfwCMHLd" }, "source": [ "Let's create our batch - 3 vectors of size 5." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "EKuh459OD6jx" }, "outputs": [], "source": [ "batch_size = 3\n", "batched_x = np.arange(15).reshape((batch_size, -1))\n", "print(batched_x)" ] }, { "cell_type": "markdown", "metadata": { "id": "hApYpVEvNS1y" }, "source": [ "**Exercise 1.7 - Question**: What do you think would be the result if we passed batch_x into `min_max`?" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "gu6C3J0kMrtj", "cellView": "form" }, "outputs": [], "source": [ "batch_min_max_output = [[0,4],[5,9],[10,14]] # @param [\"[[0,4],[5,9],[10,14]]\", \"[[0,10],[1,11],[2,12],[3,13],[4,14]]\", \"[0,14]\"] {type:\"raw\"}\n", "\n", "assert (batch_min_max_output == np.array(min_max(batched_x))).all(), \"Incorrect answer.\"\n", "\n", "print(\"Nice, you got the correct answer!\")" ] }, { "cell_type": "markdown", "metadata": { "id": "6K0weiHOOb8L" }, "source": [ "So the above is not what we want. The `min` and `max` is applied across the entire batch, when we want the min and max per vector/mini-batch. \n", "\n", "We can also manually batch this by `jnp.stack` and a for loop, as follows:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "q8RdAqr8N-Fd" }, "outputs": [], "source": [ "@jit\n", "def manual_batch_min_max_loop(batched_x):\n", " min_max_result_list = []\n", " for x in batched_x:\n", " min_max_result_list.append(min_max(x))\n", " return jnp.stack(min_max_result_list)\n", "\n", "\n", "print(manual_batch_min_max_loop(batched_x))" ] }, { "cell_type": "markdown", "metadata": { "id": "jmu3VVtMR0GV" }, "source": [ "Or, just manually updating the `axis` in `jnp.min` and `jnp.max`. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "lzxmORv-RcUg" }, "outputs": [], "source": [ "@jit\n", "def manual_batch_min_max_axis(batched_x):\n", " return jnp.array([jnp.min(batched_x, axis=1), jnp.max(batched_x, axis=1)]).T\n", "\n", "\n", "print(manual_batch_min_max_axis(batched_x))" ] }, { "cell_type": "markdown", "metadata": { "id": "CetKYASUSE4Q" }, "source": [ "These approaches both work, but we need to change our function to work with batches. We can't just run the same code across a batch of data.\n", "\n", "There is where `vmap` becomes useful! Using `vmap` we can write a function once, as if it is working on a single element, and then use `vmap` to automatically vectorize it! " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "s2F8WUNQROkQ" }, "outputs": [], "source": [ "# define our vmap function using our original single vector function\n", "@jit\n", "def min_max_vmap(batched_x):\n", " return vmap(min_max)(batched_x)\n", "\n", "\n", "# Run it on a single vecor\n", "## We add extra dimention in a single vector, shape changes from (5,) to (1,5), which makes the vmapping possible\n", "x_with_leading_dim = jax.numpy.expand_dims(x, axis=0)\n", "print(f\"Single vector: {min_max_vmap(x_with_leading_dim)}\")\n", "\n", "# Run it on batch of vectors\n", "print(f\"Batch/list of vector:{min_max_vmap(batched_x)}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "-3bome92VRL6" }, "source": [ "So this is really convenient, but what about performance? " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "O1Nb4uniUUor" }, "outputs": [], "source": [ "batched_x = np.arange(50000).reshape((500, 100))\n", "\n", "# Trace the functions with first call\n", "manual_batch_min_max_loop(batched_x).block_until_ready()\n", "manual_batch_min_max_axis(batched_x).block_until_ready()\n", "min_max_vmap(batched_x).block_until_ready()\n", "\n", "min_max_forloop_time = %timeit -o -n 10 manual_batch_min_max_loop(batched_x).block_until_ready()\n", "min_max_axis_time = %timeit -o -n 10 manual_batch_min_max_axis(batched_x).block_until_ready()\n", "min_max_vmap_time = %timeit -o -n 10 min_max_vmap(batched_x).block_until_ready()\n", "\n", "print(\n", " f\"Avg Times (lower is better) - Naive Implementation: {np.round(np.mean(min_max_forloop_time.all_runs),5)} Manually Vectorized: {np.round(np.mean(min_max_axis_time.all_runs),5)} Vmapped Function: {np.round(np.mean(min_max_vmap_time.all_runs),5)} \"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "mYL758zCYsrR" }, "source": [ "So `vmap` should be similar in performance to manually vectorized code (if everything is implemented well), and much better than naively vectorized code (i.e. for loops). " ] }, { "cell_type": "markdown", "metadata": { "id": "vAO9dOdrtiqI" }, "source": [ "##### pmap - `Advanced`\n", "\n", "💡**For this subsection, please ensure that colab is using a `TPU` runtime. If no `TPU` runtimes are available, select `Harware Accelerator` - `None` for a cpu runtime.** \n", "\n", "Another JAX transform is `pmap`. `pmap` transforms a function written for one device, to a function that can run in parallel, across many devices. \n", "\n", "**Difference between `vmap` and `pmap`**:\n", "\n", "So both `pmap` and `vmap` transform a function to work over an array, but they differ in implementation. `vmap` adds an extra batch dimension to all the operations in a function, while `pmap` replicates the function and executes each replica on its own XLA device in parallel." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "gUYA277soR-0" }, "outputs": [], "source": [ "# @title Check the device you are using (Run Cell)\n", "print(f\"Num devices: {jax.device_count()}\")\n", "print(f\" Devices: {jax.devices()}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "6qhlBnLs6AYL" }, "source": [ "Let's try and `pmap` a batch of dot products.\n", "\n", "Here is an illustration of how we would typically do this sequentially: \n", "\n", "[Source](https://www.assemblyai.com/blog/why-you-should-or-shouldnt-be-using-jax-in-2022/)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "fz1i2AwA5_7J" }, "outputs": [], "source": [ "# @title Illustration of Sequential Dot Product (Run me)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " ''\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "MTmWNFZ08f8n" }, "source": [ "Here is the code implementation of this:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "GqTuMldJ9Uv5" }, "outputs": [], "source": [ "# Let's generate a batch of size 8, each with a matrix of size (500, 600)\n", "\n", "# Let create 8 keys, 1 for each batch\n", "keys = jax.random.split(jax.random.PRNGKey(0), 8)\n", "\n", "# Let create our batches\n", "mats = jnp.stack([jax.random.normal(key, (500, 600)) for key in keys])\n", "\n", "\n", "def dot_product_sequential():\n", " @jit\n", " def avg_dot_prod(mats):\n", " result = []\n", " # Loop through batch and compute dp\n", " for mat in mats:\n", " # dot product between the a mat and mat.T (transposed version)\n", " result.append(jnp.dot(mat, mat.T))\n", " return jnp.stack(result)\n", "\n", " avg_dot_prod(mats).block_until_ready()\n", "\n", "\n", "run_sequential = %timeit -o -n 5 dot_product_sequential()" ] }, { "cell_type": "markdown", "metadata": { "id": "fBEtecJX-0AW" }, "source": [ "Here is an illustration of how we would do this in parallel \n", "\n", "[Source](https://www.assemblyai.com/blog/why-you-should-or-shouldnt-be-using-jax-in-2022/)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Uswxurmn-5oC", "cellView": "form" }, "outputs": [], "source": [ "# @title Illustration of Parallel Dot Product (Run me)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " ''\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "sGsq8iTA_N9U" }, "source": [ "Here is code implementation of batched dot products:" ] }, { "cell_type": "markdown", "metadata": { "id": "0ygFWDfQIoeC" }, "source": [ "First, we will create `8` random matrices (one for each available tpu devices - colab tpu's have 8 available [devices](https://cloud.google.com/tpu/docs/system-architecture-tpu-vm) or the 8 cpu cores as we configured)." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "MZLMx06_K_qR" }, "outputs": [], "source": [ "# Let create 8 keys, 1 for each batch\n", "keys = jax.random.split(jax.random.PRNGKey(0), 8)\n", "\n", "# Each replicated pmapped function get a different key\n", "mats = pmap(lambda key: jax.random.normal(key, (500, 600)))(keys)" ] }, { "cell_type": "markdown", "metadata": { "id": "6BkMsaOtLISj" }, "source": [ "The leading dimension here needs to equal the dimension of available devices (since we are sending a batch to each device)." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "gWrdv_2wLG4T" }, "outputs": [], "source": [ "print(mats.shape)" ] }, { "cell_type": "markdown", "metadata": { "id": "HnqblcUsLaKZ" }, "source": [ "Using `pmap` to generate the batches ensures these batches are of type `ShardedDeviceArray`. This is similar to an ndarray, except each batch/shared is stored in the memory of multiple devices, so they can be used in subsequent `pmap` operations without moving data around between devices (GPU/TPU) and hosts (cpu). " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "JAeaBCvcLQWg" }, "outputs": [], "source": [ "print(type(mats))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "PVz0gOWG9pkr" }, "outputs": [], "source": [ "def dot_product_parallel():\n", "\n", " # Run a local matmul on each device in parallel (no data transfer)\n", " result = pmap(lambda x: jnp.dot(x, x.T))(\n", " mats\n", " ).block_until_ready() # result.shape is (8, 5000, 5000)\n", "\n", "\n", "run_parallel = %timeit -o -n 5 dot_product_parallel()" ] }, { "cell_type": "markdown", "metadata": { "id": "64gfyF3ENQzU" }, "source": [ "It is simple as that. Our dot product now runs in parallel across available devices (cpu, gpus or tpus). As we have more cores/devices, this code will automatically scale! " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "5qcQXSbANP_M", "cellView": "form" }, "outputs": [], "source": [ "# @title Let's plot the performance difference (Run Cell)\n", "\n", "jax_parallel_time = np.mean(run_parallel.all_runs)\n", "jax_seq_time = np.mean(run_sequential.all_runs)\n", "\n", "\n", "data = {\"JAX (seq)\": jax_seq_time, \"JAX (parallel - pmap)\": jax_parallel_time}\n", "\n", "plot_performance(data, title=\"Average time taken for Seq vs Parallel Dot Product\")" ] }, { "cell_type": "markdown", "metadata": { "id": "-0j8iJRFUz6v" }, "source": [ "For some problems, the speed can be directly proportional to the number of devices -- $Nx$ speed up for $N$ devices! \n", "\n", "We showed an example of using `pmap` for *pure* parallelism, where there is no communication between devices. JAX also has various operations for communication across distributed devices ( more on this [here](https://jax.readthedocs.io/en/latest/jax-101/06-parallelism.html#communication-between-devices).)" ] }, { "cell_type": "markdown", "metadata": { "id": "aB0503xgmSFh" }, "source": [ "# **Part 2 - From Linear to Non-Linear Regression**\n", "\n", "Now that we know some basics of JAX, we can build some simple models!\n", "\n", "We will start by learning the basics of Linear Regression and then move on to Polynomial Regression. Finally, we will show how we can use [Haiku](https://github.com/deepmind/dm-haiku) and [Optax](https://github.com/deepmind/optax) to make training our models simpler and more convenient. " ] }, { "cell_type": "markdown", "metadata": { "id": "XrWSN-zaWAhJ" }, "source": [ "## **2.1 Linear Regression** - 📈 `Beginner`\n", "\n", "With a long history spanning from the 19th century [[Gauss, 1809](https://cir.nii.ac.jp/crid/1573950399668535168), [Legendre, 1805](https://play.google.com/store/books/details?id=7C9RAAAAYAAJ&rdid=book-7C9RAAAAYAAJ&rdot=1)] , linear regression is one of the simplest and most popular methods for solving regression problems (problems where we are predicting a continuous variable). \n", "\n", "Linear regression aims to find a function $f$ that maps our **inputs $x$**, where $x \\in R^D$ (*$x$ is a real number of dimension $D$*), to the corresponding **output/target - $y$**, where $y \\in R^1$ (output is a single real number). \n", "\n", "Put simply, we are trying to model the relationship between one or more independent variables (our inputs - $x$) and our dependent variable (our output - $y$). In Machine Learning, we model this relationship so that we can make predictions.\n", "\n", "For simplicity, we will focus on simple Linear Regression, where we have a single input $x$ ($x \\in R^1$)." ] }, { "cell_type": "markdown", "metadata": { "id": "AcyM6XRj1cDz" }, "source": [ "### Regression Toy Example - Housing Prices" ] }, { "cell_type": "markdown", "metadata": { "id": "15_2U2klS1ER" }, "source": [ "Let's say we have a dataset of housing sizes (in $m^2$) and their prices (in 100 000s of Tunisian dinar - TND). \n", "\n", "|Size of House in $m^2$ (input - $x$) | Price (100 000s of TND) (output - $y$) \n", "--- | --- | \n", "|210|4|\n", "|160|3.3|\n", "|240|3.7|\n", "|140|2.3|\n", "|300|5.4|" ] }, { "cell_type": "markdown", "metadata": { "id": "i34mTepJBpha" }, "source": [ "Let's build this simple dataset, with 5 elements." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "5zfvznFJ1bi4" }, "outputs": [], "source": [ "x_data_list = [210, 160, 240, 140, 300]\n", "y_data_list = [4, 3.3, 3.7, 2.3, 5.4]" ] }, { "cell_type": "code", "source": [ "# @title Let's plot our dataset. (Run Cell)\n", "def plot_basic_data(parameters_list=None, title=\"Observed data\", axis_pad=1):\n", " xlim = [min(x_data_list) - axis_pad, max(x_data_list) + axis_pad]\n", " ylim = [min(y_data_list) - axis_pad, max(y_data_list) + axis_pad]\n", " fig, ax = plt.subplots()\n", "\n", " if parameters_list is not None:\n", " x_pred = np.linspace(xlim[0], xlim[1], 100)\n", " for parameters in parameters_list:\n", " y_pred = parameters[0] + parameters[1] * x_pred\n", " ax.plot(x_pred, y_pred, \":\", color=[1, 0.7, 0.6])\n", "\n", " parameters = parameters_list[-1]\n", " y_pred = parameters[0] + parameters[1] * x_pred\n", " ax.plot(x_pred, y_pred, \"-\", color=[1, 0, 0], lw=2)\n", "\n", " ax.plot(x_data_list, y_data_list, \"ob\")\n", " ax.set(xlabel=\"Input x\", ylabel=\"Output y\", title=title, xlim=xlim, ylim=ylim)\n", " ax.grid()\n", "\n", "\n", "plot_basic_data()" ], "metadata": { "cellView": "form", "id": "uLB0Z3uGHGnV" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "metadata": { "id": "vnoEkgimTQ6V" }, "source": [ "### **Optimization by Trial-and-Error**\n", "\n", "Let's say we would like to predict these $y$ (outputs) values given the $x$ (inputs). \n", "\n", "We can start modeling this by using a simple linear function: \n", "
\n", "$f(x) = \\color{red}{w} x + \\color{red}{b}$\n", "
\n", "\n", ", where $x$ is our inputs and $\\color{red}{b}$ and $\\color{red}{w}$ are our model parameters.\n", "\n", "Usually, we learn the model parameters, but let's try to find these parameters by hand!" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "A_8hyJrhdy6v" }, "outputs": [], "source": [ "# RUN ME\n", "parameters_list = [] # Used to track which parameters were tried." ] }, { "cell_type": "markdown", "metadata": { "id": "FLvxEOBtWrSF" }, "source": [ "**Exercise 2.1** \n", "1. Move the two sliders below to set $\\color{red}{b}$ and $\\color{red}{w}$. \n", "2. Is your $f(x)$ close to the blue data points? Can you find a better fit?\n", "3. Repeat 1-2 until you have found a good enough fit. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "iYl7LM7kWYNG", "cellView": "form" }, "outputs": [], "source": [ "# @title Choose model parameters. { run: \"auto\" }\n", "b = 3 # @param {type:\"slider\", min:-5, max:5, step:1}\n", "w = -0.03 # @param {type:\"slider\", min:-0.05, max:0.05, step:0.01}\n", "print(\"Plotting line\", w, \"* x +\", b)\n", "parameters = [b, w]\n", "parameters_list.append(parameters)\n", "plot_basic_data(\n", " parameters_list, title=\"Observed data and my first predictions\", axis_pad=12\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "UCNWBHuBa9rj" }, "source": [ "**Weights and Bias**\n", "\n", "What was the impact of changing $\\color{red}{b}$ and $\\color{red}{w}$?\n", "\n", "- $\\color{red}{w}$ is our weights. This represents the slope of our function.\n", "- $\\color{red}{b}$ is our bias (also called the *intercept*). This is the value of our model when all features are zero ($x=0$). This shifts the line, without changing the slope." ] }, { "cell_type": "markdown", "metadata": { "id": "XfUfPrRGeG2B" }, "source": [ "**You're a born optimizer!**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ubqjOzjTXuRw", "cellView": "form" }, "outputs": [], "source": [ "# @title Let's plot the optimization trajectory you took. (Run Cell)\n", "fig, ax = plt.subplots()\n", "opt = {\n", " \"head_width\": 0.01,\n", " \"head_length\": 0.2,\n", " \"length_includes_head\": True,\n", " \"color\": \"r\",\n", "}\n", "if parameters_list is not None:\n", " b_old = parameters_list[0][0]\n", " w_old = parameters_list[0][1]\n", " for i in range(1, len(parameters_list)):\n", " b_next = parameters_list[i][0]\n", " w_next = parameters_list[i][1]\n", " ax.arrow(b_old, w_old, b_next - b_old, w_next - w_old, **opt)\n", " b_old, w_old = b_next, w_next\n", "\n", " ax.scatter(b_old, w_old, s=200, marker=\"o\", color=\"y\")\n", " bs = [parameters[0] for parameters in parameters_list]\n", " ws = [parameters[1] for parameters in parameters_list]\n", " ax.scatter(bs, ws, s=40, marker=\"o\", color=\"k\")\n", "\n", "ax.set(\n", " xlabel=\"Bias b\",\n", " ylabel=\"Weight w\",\n", " title=\"My sequence of b's and w's\",\n", " xlim=[-5, 5],\n", " ylim=[-0.05, 0.05],\n", ")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "Sqp1VK0KkLmF" }, "source": [ "**Exercise 2.2 - Group Task**:\n", "\n", "*How did your neighbour do?*\n", "- Did they change $\\color{red}{b}$ and $\\color{red}{w}$ with big steps or small steps each time?\n", "- Did they start with small steps, and then progressed to bigger steps? Or the other way round? What about you?\n", "- Did the magnitude of your previous steps influence your next choice? Why? Or why not?\n", "- Did you all converge to roughly the same endpoint for $\\color{red}{b}$ and $\\color{red}{w}$, or did your sequences end up in different places?" ] }, { "cell_type": "markdown", "metadata": { "id": "oLGAp30ZDnJ5" }, "source": [ "### **Loss Function**\n", "\n", "You tweaked $\\color{red}{b}$ and $\\color{red}{w}$ to find a good fit by hand. This isn't optimal (*imagine doing this for 10s to 1000s of parameters*), so we would like to automate this learning process. \n", "\n", "Before we discuss how to fit the model, we need to determine a measure of fitness, also referred to as a **loss function**. This loss quantifies the difference between the predictions that our model made ($f(x)$) and the true values/targets ($y$).\n", "\n", "When you manually adjusted your weights $\\color{red}{b}$ and $\\color{red}{w}$, you probably looked at how close each $f(x)$ was to the $y$ that it tries to predict.\n", "Maybe you glanced at the distance from the red line to each of the blue dots, and imagined the average of the distances (marked in purple) below. If the average was small, your fit was good!\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "source": [ "\n", "> Notation Reminder:\n", "- $x$ - our inputs.\n", "- $f(x)$ or $\\hat{y}$ - our model predictions.\n", "- $y$ - the value we are trying to predict/our targets. " ], "metadata": { "id": "0i6mLJXV-lXQ" } }, { "cell_type": "markdown", "metadata": { "id": "SFGMikcOgqOb" }, "source": [ "#### **Formalizing the Loss Function**\n", "\n", "**Indexing**\n", "\n", "To formalize this notion, from the image above, let $x_1 = 1$, $x_2 = 2$, $x_3 = 3$... and let $y_1 = 3$, $y_2 = 2$, $y_3 = 3$... The blue dots are therefore a sequence of input-output $(x, y)$ pairs.\n", "Assuming that the order of the data points doesn't matter, and $i = 1, ..., N$ (where $N=5$ in our case) indexes the data, e.g. $x_1,y_1$ refer to the input and output of the first element in our dataset (e.g. $x_1,y_1$ is (1,3) in the image). \n", "\n", "**Error**\n", "\n", "The green lines above, also known as **error** or **cost**, tell us the distance between the prediction and target value for a specific example (i.e how well the prediction matches the real data). A long line means that we have a large error and our prediction for that example is not optimal, while a short line indicates our prediction is close to the true label. \n", "\n", "In the image, the error is simply the distance between the true label and our model's prediction ( $y$ - $f(x)$), but there can be various formulations of the error term. A popular function is the squared error. \n", "\n", "Squared error can be formulated as follows: \n", "
\n", "$\\mathrm{error}(\\color{red}{b}, \\color{red}{w} ; x_i, y_i) = (y_i - \\underbrace{(\\color{red}{w} x_i + \\color{red}{b})}_{f(x_i)})^2$ \n", "
\n", "\n", ", where $\\color{red}{b}$ and $\\color{red}{w}$ are our parameters, $x_i,y_i$ is the specific input, output pair that we are calculating the error for. \n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "JgPhoXMIL2eE" }, "source": [ "**Exercise 2.3 - Code Task:** Implement Squared Error, using the formulae above. \n", "\n", "**Useful methods:** [`jnp.dot`](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.dot.html)." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "nSt4XdrrpQ0r" }, "outputs": [], "source": [ "def squared_error(b, w, x, y):\n", " # first calculate f(x_i), also sometimes referred to as yhat\n", " yhat = ...\n", " # then calculate the squared error\n", " error = ...\n", " return error" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "pi3ysDp3OLsx" }, "outputs": [], "source": [ "# @title Check if answer is correct (Run me)!\n", "\n", "\n", "def check_squared_error(squared_error):\n", " b = 3.77\n", " w = 0.05\n", "\n", " correct_error = [105.47291, 71.740906, 145.68492, 71.740906, 178.75693]\n", "\n", " for i in range(len(x_data_list)):\n", " x_i = x_data_list[i]\n", " y_i = y_data_list[i]\n", " error = squared_error(b, w, x_i, y_i)\n", " assert jnp.equal(\n", " error, correct_error[i]\n", " ), f\"Incorrect implementation. Value: {error} Expected Value: {correct_error[i]}. Parameters (b,w,x_i,y_i): {b,w,x_i,y_i} \"\n", "\n", " print(\"Implementation is correct!\")\n", "\n", "\n", "check_squared_error(squared_error)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "qzqqVhRW3gY3", "cellView": "form" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "def squared_error(b, w, x, y):\n", " yhat = jnp.dot(w, x) + b\n", " error = jnp.square(yhat - y)\n", " return error\n", "\n", "\n", "check_squared_error(squared_error)" ] }, { "cell_type": "markdown", "metadata": { "id": "gzbNQ_Lz5SGX" }, "source": [ "**Loss Function - Mean Squared Error**\n", "\n", "Now we have a way to quantify the error of our model per **example**. However, what we really care about is the quality of our model across our **entire training dataset**. Like there are many types of error functions, there are also many ways to quantify our loss across the whole dataset.\n", "\n", "A common loss function is **mean squared error (MSE)**, where we simply average the error across the training set. \n", "\n", "**MSE** is formulated as follows:\n", "
\n", "$\\mathrm{loss}(\\color{red}{b}, \\color{red}{w}) = \\frac{1}{ \\color{blue}{2}N} \\sum_{i=1}^N \\Big(y_i - \\underbrace{(\\color{red}{w} x_i + \\color{red}{b})}_{f(x_i)} \\Big)^2$, \n", "
\n", "\n", "where $N$ is our number of training examples and $\\color{blue}{\\frac{1}{2}}$ is a constant factor that makes taking the derivative more convenient (more on this later).\n" ] }, { "cell_type": "markdown", "metadata": { "id": "vSoFrFx48vHL" }, "source": [ "**Plot our loss**\n", "\n", "Let's code our loss function. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "0W9M7QubOEMM" }, "outputs": [], "source": [ "# MSE\n", "def loss(b, w):\n", " # init loss of size of b\n", " loss = 0 * b\n", " for x, y in zip(x_data_list, y_data_list):\n", " loss += squared_error(b, w, x, y)\n", " N = len(x_data_list)\n", " return loss / (2 * (N))" ] }, { "cell_type": "markdown", "source": [ "Now that we have a loss function, we can plot the loss of our model, using the sequence of manually chosen values of $\\color{red}{b}$ and $\\color{red}{w}$ from above." ], "metadata": { "id": "JsG0vQamfdJQ" } }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "mSIbd-xtfU2S" }, "outputs": [], "source": [ "# @title Plot our Loss (Run Me)\n", "from matplotlib import cm\n", "\n", "bs, ws = np.linspace(-5, 5, num=25), np.linspace(-0.05, 0.05, num=25)\n", "b_grid, w_grid = np.meshgrid(bs, ws)\n", "loss_grid = loss(b_grid, w_grid)\n", "\n", "\n", "def plot_loss(parameters_list, title, show_stops=False):\n", " fig, ax = plt.subplots(1, 2, figsize=(18, 8), subplot_kw={\"projection\": \"3d\"})\n", " ax[0].view_init(10, -30)\n", " ax[1].view_init(30, -30)\n", "\n", " if parameters_list is not None:\n", " b_old = parameters_list[0][0]\n", " w_old = parameters_list[0][1]\n", " loss_old = loss(b_old, w_old)\n", " ls = [loss_old]\n", "\n", " for i in range(1, len(parameters_list)):\n", " b_next = parameters_list[i][0]\n", " w_next = parameters_list[i][1]\n", " loss_next = loss(b_next, w_next)\n", " ls.append(loss_next)\n", "\n", " ax[0].plot(\n", " [b_old, b_next],\n", " [w_old, w_next],\n", " [loss_old, loss_next],\n", " color=\"red\",\n", " alpha=0.8,\n", " lw=2,\n", " )\n", " ax[1].plot(\n", " [b_old, b_next],\n", " [w_old, w_next],\n", " [loss_old, loss_next],\n", " color=\"red\",\n", " alpha=0.8,\n", " lw=2,\n", " )\n", " b_old, w_old, loss_old = b_next, w_next, loss_next\n", "\n", " if show_stops:\n", " ax[0].scatter(b_old, w_old, loss_old, s=100, marker=\"o\", color=\"y\")\n", " ax[1].scatter(b_old, w_old, loss_old, s=100, marker=\"o\", color=\"y\")\n", " bs = [parameters[0] for parameters in parameters_list]\n", " ws = [parameters[1] for parameters in parameters_list]\n", " ax[0].scatter(bs, ws, ls, s=40, marker=\"o\", color=\"k\")\n", " ax[1].scatter(bs, ws, ls, s=40, marker=\"o\", color=\"k\")\n", " else:\n", " ax[0].scatter(b_old, w_old, loss_old, s=40, marker=\"o\", color=\"k\")\n", " ax[1].scatter(b_old, w_old, loss_old, s=40, marker=\"o\", color=\"k\")\n", "\n", " ax[0].plot_surface(\n", " b_grid,\n", " w_grid,\n", " loss_grid,\n", " cmap=cm.coolwarm,\n", " linewidth=0,\n", " alpha=0.4,\n", " antialiased=False,\n", " )\n", " ax[1].plot_surface(\n", " b_grid,\n", " w_grid,\n", " loss_grid,\n", " cmap=cm.coolwarm,\n", " linewidth=0,\n", " alpha=0.4,\n", " antialiased=False,\n", " )\n", " ax[0].set(xlabel=\"Bias b\", ylabel=\"Weight w\", zlabel=\"Loss\", title=title)\n", " ax[1].set(xlabel=\"Bias b\", ylabel=\"Weight w\", zlabel=\"Loss\", title=title)\n", " plt.show()\n", "\n", "\n", "plot_loss(\n", " parameters_list,\n", " \"An example loss function and my sequence of b's and w's\",\n", " show_stops=True,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "Z41ZIC5W-Dip" }, "source": [ "Your sequence of choices for $\\color{red}{b}$ and $\\color{red}{w}$ are also plotted on the $(\\color{red}{b}, \\color{red}{w})$ axis.\n", "Does your sequence progressively move toward a parameter setting for which the loss function is small?\n", "We plotted two views of the loss function, so that it is easier to see the minimum *and* the function." ] }, { "cell_type": "markdown", "metadata": { "id": "fg5Hi4783Gus" }, "source": [ "### **Gradient descent: No more tuning parameters by hand!**\n", "\n", "When you manually tweaked $\\color{red}{b}$ and $\\color{red}{w}$, you tried to adjust your model to find a better fit. If you were an experienced manual parameter adjuster, you might even have adjusted the $\\color{red}{b}$ and $\\color{red}{w}$ so that the fit gets *better* with each adjustment.\n", "\n", "Gradient descent is a method that tries to minimize the loss function by iteratively updating our weights $\\color{red}{b}$ and $\\color{red}{w}$. How do we know how to update our weights? That is where **gradients** come in! The gradients of the weights tell us how to update their values in order to minimize our loss. \n" ] }, { "cell_type": "markdown", "metadata": { "id": "8j7PKzZJumYX" }, "source": [ "##### **Gradients** \n", "Using our **loss**, we would like to know how to adjust $\\color{red}{b}$ **and** $\\color{red}{w}$ in order to minimize our loss. We can use partial derivatives and the chain rule to figure out how to update our parameters.\n", "\n", "> **Partial derivatives** are used when we have a function of several variables and we want to know how a function changes as a result of a specific variable. To calculate this, we take the derivative of the loss, with respect to one of those variables, with the others variables held constant. If we know this for all the variables in our loss function, we can update our parameters to decrease our loss. \n", ">\n", "> For example, for a function $f(x,y)$, $\\frac{\\partial{f}}{\\partial{x}}$ (*read partial derivative of $f$ with respect to $x$*), tells us how $f$ changes with respect to changes in $x$ and $\\frac{\\partial{f}}{\\partial{y}}$, tells us how $f$ changes with respect to changes in $y$. \n", "\n", "\n", "> The **chain rule** tells us how to differentiate composite functions (functions of a functions/function within a function). The rule is as follows: $$\\frac{d}{d x}[f(g(x))]=f^{\\prime}(g(x)) g^{\\prime}(x)$$\n", "\n", "\n", "You can read more here - [partial derivatives](https://www.khanacademy.org/math/multivariable-calculus/multivariable-derivatives/partial-derivative-and-gradient-articles/a/introduction-to-partial-derivatives), the [chain rule](https://www.khanacademy.org/math/ap-calculus-ab/ab-differentiation-2-new/ab-3-1a/a/chain-rule-review) and [practical on optimization](https://github.com/deep-learning-indaba/indaba-pracs-2019/blob/master/1b_build_tensorflow.ipynb).\n" ] }, { "cell_type": "markdown", "metadata": { "id": "_1EZcdHH2cE2" }, "source": [ "**Exercise 2.4 - (Optional) Math Task:**\n", "\n", "Using our loss,\n", "\n", "
\n", "$\\mathrm{loss}(\\color{red}{b}, \\color{red}{w}) = \\frac{1}{ \\color{blue}{2}N} \\sum_{i=1}^N \\Big(y_i - \\underbrace{(\\color{red}{w} x_i + \\color{red}{b})}_{f(x_i)} \\Big)^2$, \n", "
\n", "\n", "Can you derive \n", "$\\frac{\\partial \\mathcal{L}}{\\partial w}$ and $\\frac{\\partial \\mathcal{L}}{\\partial b}$ by hand? *For notation simplicity, we will refer to the loss $\\mathrm{loss}(\\color{red}{b}, \\color{red}{w})$ as $\\mathcal{L}$.*\n", "\n", "**Useful methods:** [Partial derivatives](https://www.khanacademy.org/math/multivariable-calculus/multivariable-derivatives/partial-derivative-and-gradient-articles/a/introduction-to-partial-derivatives), [Sum Rule](https://www.khanacademy.org/math/old-ap-calculus-ab/ab-derivative-rules/ab-basic-diff-rules/a/basic-differentiation-review) and the [chain rule](https://www.khanacademy.org/math/ap-calculus-ab/ab-differentiation-2-new/ab-3-1a/a/chain-rule-review). \n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "source": [ "**Answer to math task** - Once you have given it a try, you can see the full derivation [here](#scrollTo=9OH9H7ndfuyQ)." ], "metadata": { "id": "ktpXf4w4g3Ag" } }, { "cell_type": "markdown", "source": [ "The two gradients we need are as follows:\n", "\\begin{aligned}\n", "&\\frac{\\partial \\mathcal{L}}{\\partial w}=\\frac{1}{N} \\sum_{i=1}^{N}\\left(f(x_i)-y_i\\right) x_i \\\\\n", "&\\frac{\\partial \\mathcal{L}}{\\partial b}=\\frac{1}{N} \\sum_{i=1}^{N} f(x_i)-y_i\n", "\\end{aligned}" ], "metadata": { "id": "ODU1rQAemouO" } }, { "cell_type": "markdown", "metadata": { "id": "BVbRhLNY0TvA" }, "source": [ "In the code snippet below, we compute the two gradients using a for-loop over examples. This is just to illustrate how the gradient is computed. Very soon, we'll throw away the for-loop over data points and do it \"all at once\" in vectorized operations!" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "dAeEMynv3GaI" }, "outputs": [], "source": [ "def manual_grad(b, w):\n", " grad_b = 0\n", " grad_w = 0\n", " for x, y in zip(x_data_list, y_data_list):\n", " f = w * x + b\n", " grad_b += f - y\n", " grad_w += (f - y) * x\n", " grad_b /= len(x_data_list)\n", " grad_w /= len(x_data_list)\n", " return grad_b, grad_w" ] }, { "cell_type": "markdown", "metadata": { "id": "RMt9Qlox28Oa" }, "source": [ "##### **Gradient Descent** \n", "\n", "Not that we have the gradients, we can use gradient descent. The general idea is to start with an initial value/guess for the model weights and then repeatedly use the gradients to tweak the parameters $\\color{red}{b}$ and $\\color{red}{w}$ in the right direction. \n", "\n", "These updates can be formulated as follows:\n", "\n", "$$\\color{red}{b} \\leftarrow \\color{red}{b} - \\color{blue}{\\eta} \\frac{\\partial \\mathcal{L}}{\\partial \\color{red}{b}} $$ \n", "\n", "$$\\color{red}{w} \\leftarrow \\color{red}{w} - \\color{blue}{\\eta} \\frac{\\partial \\mathcal{L}}{\\partial \\color{red}{w}} $$ \n", "\n", ", where $\\color{blue}{\\eta}$ is the **learning rate** and just tells us how much we are going to scale the gradient before we use it to update our parameters:\n", "are we going to try to walk downhill with big steps or small steps?" ] }, { "cell_type": "markdown", "source": [ "**Exercise 2.5**\n", "1. Run the code snippet below, and note the $(\\color{red}{b}, \\color{red}{w})$ trajectory as we use the gradient to (try to) get to the minimum.\n", "2. Adjust the starting values for $\\color{red}{b}$ or $\\color{red}{w}$ or the value of $\\color{blue}{\\eta}$ and see how the resulting trajectory to the minimum changes.\n", "3. Can you find a setting for $\\color{blue}{\\eta}$ where things start spiraling out of control and the loss gets bigger and bigger (and not smaller)?\n", "4. Can you find a setting for $\\color{blue}{\\eta}$ so that we're still far away from the minimum after `200` parameter update steps?\n", "5. Play around with the `max_grad` variable. Do we always need this? What problem does this solve? (Hint: Trying printing the grads values with `max_grad = None`).\n", "\n" ], "metadata": { "id": "YsL-Goz8hTOb" } }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "6AvZzHQx1AKM" }, "outputs": [], "source": [ "b = 0 # Change me! Try 2, 4\n", "w = -0.05 # Change me! Try -1, 2\n", "learning_rate = 0.01 # Change me! Try 0.1, 0.5, ...\n", "max_grad = 1 # Change me! Try None, 10\n", "\n", "parameters_step_list = []\n", "\n", "for _ in range(200):\n", " parameters_step_list.append([b, w])\n", " grad_b, grad_w = manual_grad(b, w)\n", " # Naive gradient value clipping - different from standard gradient clipping - which clips the gradient norm.\n", " if max_grad:\n", " grad_b = jnp.clip(grad_b, a_min=-max_grad, a_max=max_grad)\n", " grad_w = jnp.clip(grad_w, a_min=-max_grad, a_max=max_grad)\n", " b = b - learning_rate * grad_b\n", " w = w - learning_rate * grad_w\n", "\n", "plot_loss(\n", " parameters_step_list, \"A loss function, and minimizing it with gradient descent\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "3shLExakrzIW" }, "source": [ "##### **Autodiff using JAX: No more manual gradients!**\n", "\n", "In the above example, we calculated the gradients by hand (`manual_grad`). Thanks to automatic differentiation, we don't have to do this! While you can probably derive and code the gradients of the loss function for our linear model without making a mistake somewhere, getting the gradients right for more complex models can be much more work. Much, much more work! \n", "\n", "We use JAX to do the automatic differentiation, using the `grad` function as follows:\n", "```\n", "auto_grad = jax.grad(loss_function, argnums=(0, 1))\n", "```\n", "\n", "and call it in the same way as we called `manual_grad`. `argnums` tells JAX we want the partial derivative of our function with respect to the first 2 parameters." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "3WiF4oYi1xGK" }, "outputs": [], "source": [ "x = np.array(x_data_list)\n", "y = np.array(y_data_list)\n", "\n", "\n", "def loss_function(b, w):\n", " f = w * x + b\n", " errors = jnp.square(y - f)\n", " # Instead of summing over individual data points in a for-loop, and then\n", " # dividing to get the average, we do it in one go. No more for-loops!\n", " return 1 / 2 * jnp.mean(errors)\n", "\n", "\n", "# This is it! One line of code.\n", "auto_grad = jax.grad(loss_function, argnums=(0, 1))\n", "\n", "# Let's see if it works. Does auto_grad match our manual version?\n", "b, w = 2.5, 3.5\n", "\n", "grad_b_autograd, grad_w_autograd = auto_grad(b, w)\n", "print(\"Autograd grad_b:\", grad_b_autograd, \" grad_w\", grad_w_autograd)\n", "\n", "grad_b_manual, grad_w_manual = manual_grad(b, w)\n", "print(\"Manual gradients grad_b:\", grad_b_manual, \" grad_w\", grad_w_manual)\n", "\n", "# We use isclose, since the rounding is slightly different.\n", "assert jnp.isclose(grad_b_autograd, grad_b_manual) and jnp.isclose(\n", " grad_w_autograd, grad_w_manual\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "okaeUVNf347w" }, "source": [ "Nice! So we can use automatic differentiation and we don't have to manually calculate gradients. " ] }, { "cell_type": "markdown", "source": [ "> **Gradient Descent vs Analytical Solution**\n", ">\n", "> So we used gradient descent to learn the weights for our linear model, but other options exist! For linear regression, there exists an [Analytical Solution](https://staff.fnwi.uva.nl/r.vandenboomgaard/MachineLearning/LectureNotes/Regression/LinearRegression/analytical_solution.html). This means we can calculate our weights directly in one step, without having to iterate using numerical methods like gradient descent.\n", ">\n", ">*Why use gradient descent then?*\n", "- `More General` - Gradient Descent is a more general algorithm, that can be applied to problems where analytical solutions aren't feasible to calculate or don't exit e.g. neural networks. \n", "- `Computational Complexity` - Even when a closed form solution is available, in some cases it may be faster to find the solution using gradient descent. Read more on this [here](https://stats.stackexchange.com/questions/278755/why-use-gradient-descent-for-linear-regression-when-a-closed-form-math-solution).\n" ], "metadata": { "id": "uW5rnjwoVv0m" } }, { "cell_type": "markdown", "metadata": { "id": "rK3RJPvAf4zm" }, "source": [ "### **Assumptions**\n", "\n", "All models have assumptions. One assumption that we made is that our model is a *linear* model, i.e. that our best guess is for $y$ is with $f(x) = \\color{red}{w} x + \\color{red}{b}$. Is this assumption always valid for all kinds of data and datasets?\n", "\n", "> More assumptions for [simple linear regression](https://online.stat.psu.edu/stat500/lesson/9/9.2/9.2.3#paragraph--3265)." ] }, { "cell_type": "markdown", "metadata": { "id": "Ao93xuXGJhLh" }, "source": [ "## **2.2 From Linear to Polynomial Regression** - `Intermediate`\n", "\n", "So far we've looked at data that could be fitted fairly accurately with a single straight line. Despite its simplicity, linear regression tends to be very useful in practice, especially as a starting point in data analysis! However, there are cases where a linear fit is unsatisfying. \n", "\n", "Suppose our dataset looked like the following:\n", "\n", "\n", "\n", "How would we fit a model to this data? One possible option is to increase the complexity of our linear model by attempting to fit a higher-order polynomial, for example, a 4th-degree [polynomial](https://en.wikipedia.org/wiki/Polynomial):\n", "$\\hat{y} = \\color{red}{w_4}x^4 + \\color{red}{w_3}x^3 + \\color{red}{w_2}x^2 + \\color{red}{w_1}x + \\color{red}{w_0}$. \n", "\n", "Do we have to derive a whole new algorithm? Luckily, not! We can still solve for the least squares parameters $\\color{red}{w_4}, \\color{red}{w_3}, \\color{red}{w_2}, \\color{red}{w_1}, \\color{red}{w_0}$ using the same techniques we used for fitting a line. \n", "\n", "Given the dataset $\\{(x_1, y_1), (x_2, y_2), ..., (x_n, y_n)\\}$, we construct a *feature* matrix $\\mathbf{\\Phi}$ by expending original features, being careful to include terms corresponding to each power of $x$, as follows:\n", "\n", "$\\mathbf{\\Phi} =\n", "\\begin{pmatrix}\n", "x_1^4 & x_1^3 & x_1^2 & x_1 & 1 \\\\\n", "x_2^4 & x_2^3 & x_2^2 & x_2 & 1 \\\\\n", "\\vdots & \\vdots & \\vdots & \\vdots & \\vdots \\\\\n", "x_n^4 & x_n^3 & x_n^2 & x_n & 1\n", "\\end{pmatrix}\n", "$\n", "\n", "And just like before, our $\\mathbf{y}$ vector is $(y_1, y_2, ..., y_n)^\\mathsf{T}$\n", "\n", "Next, we fit a 4th-degree polynomial to our data and find that the fit is visually a lot better and captures the wave-like pattern of the data! \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "XoSIWpUvKtlE" }, "outputs": [], "source": [ "# @title Polynomial Helper Functions (Run Me)\n", "def generate_wave_like_dataset(min_x=-1, max_x=1, n=100):\n", " xs = np.linspace(min_x, max_x, n)\n", " ys = np.sin(5 * xs) + np.random.normal(size=len(xs), scale=0.1)\n", " return xs, ys\n", "\n", "\n", "def regression_analytical_solution(X, y):\n", " return ((np.linalg.inv(X.T.dot(X))).dot(X.T)).dot(y)\n", "\n", "\n", "def gradient_descent(X, y, learning_rate=0.01, num_steps=1000, debug=False):\n", " report_every = num_steps // 10\n", "\n", " def loss(current_w, X, y):\n", " y_hat = jnp.dot(X, current_w)\n", " loss = jnp.mean((y_hat - y) ** 2)\n", " return loss, y_hat\n", "\n", " loss_and_grad = jax.value_and_grad(loss, has_aux=True)\n", " # Initialize the parameters\n", " key = jax.random.PRNGKey(42)\n", " w = jax.random.normal(key=key, shape=(X.shape[1],))\n", "\n", " # Run a a few steps of gradient descent\n", " for i in range(num_steps):\n", " (loss, y_hat), grad = loss_and_grad(w, X, ys)\n", "\n", " if i % report_every == 0:\n", " if debug:\n", " print(f\"Step {i}: w: {w}, Loss: {loss}, Grad: {grad}\")\n", " else:\n", " print(f\"Step {i}: Loss: {loss}\")\n", "\n", " w = w - learning_rate * grad\n", "\n", " return w\n", "\n", "\n", "def plot_data(y_hat, xs, ys, title):\n", " plt.figure()\n", " plt.scatter(xs, ys, label=\"Data\")\n", " plt.plot(xs, y_hat, \"r\", label=title)\n", "\n", " plt.title(title)\n", " plt.xlabel(\"Input x\")\n", " plt.ylabel(\"Output y\")\n", " plt.legend();" ] }, { "cell_type": "markdown", "metadata": { "id": "CcXjMKi0Znr6" }, "source": [ "### **Under-fitting**\n", "Let's see how our linear model does on our new dataset." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "QmAWgBEIZh0X" }, "outputs": [], "source": [ "xs, ys = generate_wave_like_dataset(min_x=-1, max_x=1, n=25)\n", "X = np.vstack([xs, np.ones(len(xs))]).T\n", "w = regression_analytical_solution(X, ys)\n", "y_hat = X.dot(w)\n", "\n", "plot_data(y_hat, xs, ys, \"Linear regression (analytic minimum)\")" ] }, { "cell_type": "markdown", "metadata": { "id": "pzlcvE8pZrYj" }, "source": [ "Our linear model has missed the majority of the points in our dataset. This is also known as **under-fitting**, which is when our model is too simple to capture the relationship between the inputs and outputs." ] }, { "cell_type": "markdown", "metadata": { "id": "uwwajy30U9fX" }, "source": [ "### **Over-fitting**\n", "\n", "Since our linear model was too simple, we can try a more complicated model.\n", "\n", "**Exercise 2.5 - Code Task**: Spend a couple of minutes selecting different parameters (by moving the sliders), to see the best loss you can get using polynomial regression. \n", "\n", "1. `degree` - Degree $n$ of a polynomial in this form - $\\hat{y} = \\color{red}{w_n}x^n +\\color{red}{w_{n-1}}x^{n-1}+ ... + \\color{red}{w_2}x^2 + \\color{red}{w_1}x + \\color{red}{w_0}$. \n", "2. `num_steps` - The number of steps to running gradient descent for. \n", "3. `learning_rate` - The learning rate used when updating the weights in gradient descent. \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "eGrB9V66-P9L" }, "outputs": [], "source": [ "# @title Choose parameters. { run: \"auto\" }\n", "degree = 3 # @param {type:\"slider\", min:1, max:10, step:1}\n", "num_steps = 1500 # @param {type:\"slider\", min:1000, max:5000, step:500}\n", "learning_rate = 0.1 # @param [\"0.2\",\"0.1\", \"0.01\"] {type:\"raw\"}\n", "\n", "\n", "# def create_data_matrix(xs,degree=4):\n", "# return np.vstack([[np.power(xs,pow) for pow in np.arange(degree)],np.ones(len(xs))]).T\n", "\n", "\n", "def create_data_matrix(xs, degree=4):\n", " pows = [np.power(xs, pow) for pow in np.arange(1, degree + 1)]\n", " pows.reverse()\n", " return np.vstack([pows, np.ones(len(xs))]).T\n", "\n", "\n", "phi = create_data_matrix(xs, degree=degree)\n", "\n", "\n", "w = gradient_descent(phi, ys, learning_rate=learning_rate, num_steps=num_steps)\n", "y_hat = phi.dot(w)\n", "\n", "plot_data(y_hat, xs, ys, \"Polynomial regression (gradient descent steps)\")" ] }, { "cell_type": "markdown", "metadata": { "id": "tGcJv82aFiLc" }, "source": [ "Let's see how a 10-th degree polynomial fits our data. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "EszayH6Q-z6_" }, "outputs": [], "source": [ "degree = 10\n", "num_steps = 5000\n", "learning_rate = 0.2\n", "\n", "\n", "phi = create_data_matrix(xs, degree=degree)\n", "w = gradient_descent(phi, ys, learning_rate=learning_rate, num_steps=num_steps)\n", "y_hat = phi.dot(w)\n", "\n", "plot_data(y_hat, xs, ys, \"Polynomial regression (gradient descent steps)\")" ] }, { "cell_type": "markdown", "metadata": { "id": "o8SPF0UILmXW" }, "source": [ "**What happens if we extend our predictions out a bit?**\n", "\n", "Our model fits the majority of the data! This sounds great, but let's see how our model handles new data sampled from the same **data generation process**! \n", "\n", "In the plot below we fill in some extra data points from the true function (in orange) for comparison, but bear in mind that these were not used to fit the regression model. We are **extrapolating** the model into a previously unseen region!" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Y2d5QywylwTK" }, "outputs": [], "source": [ "# Recover the analytic solution.\n", "degree = 10\n", "phi = create_data_matrix(xs, degree=degree)\n", "w = regression_analytical_solution(phi, ys)\n", "\n", "# Extend the x's and y's.\n", "more_xs, more_ys = generate_wave_like_dataset(min_x=-1.3, max_x=-1, n=20)\n", "all_xs = np.concatenate([more_xs, xs])\n", "all_ys = np.concatenate([more_ys, ys])\n", "\n", "# Get the design matrix for the extended data, so that we could make predictions\n", "# for it.\n", "phi = create_data_matrix(all_xs, degree=degree)\n", "\n", "# Note that we don't recompute w, we use the previously computed values that\n", "# only saw x values in the range [0, 10]\n", "y_hat = phi.dot(w)\n", "\n", "plt.scatter(xs, ys, label=\"Data\")\n", "plt.scatter(more_xs, more_ys, label=\"Unseen Data\")\n", "plt.plot(all_xs, y_hat, \"r\", label=\"Polynomial Regression\")\n", "\n", "plt.title(\"A wave-like dataset with the best-fit line\")\n", "plt.xlabel(\"Input x\")\n", "plt.ylabel(\"Output y\")\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "V3ld4cRlPVGy" }, "source": [ "We see that while the fit looks good in the blue region that the model was fitted on, the fit seems to diverge significantly in the orange region.\n", "The model is able to **interpolate** well (fill in gaps in the region it was fitted), but it **extrapolates** (outside the fitted region) poorly.\n", "This is a common concern with models in general, unless you can be sure that you have the correct *inductive biases* (assumptions about the data generating process) built into the model, you should be cautious about extrapolating from it.\n", "\n", "The fact that our model has very low training loss and high test loss (unseen data) is a sign of over-fitting. Over-fitting is when our models fits our training data, but fails to generalise to previously unseen data from the same data generating process. This is usually the result of the model having sufficient degrees of freedom to fit the noise in the training data. \n", "\n" ] }, { "cell_type": "markdown", "source": [ "**Exercise 2.6 - Group Task** \n", "\n", "**What shall we do? Pause here!**\n", "\n", "Before progressing with this practical, take a moment to think about the problem. In machine learning, there are many practical approaches to getting a model that generalizes well. As you can guess, much theory is devoted to the problem too!\n", "\n", "With what you've seen so far, try to explain to your neighbour\n", "\n", "1. every factor that you can think of, that could cause a model to generalize poorly;\n", "2. some ideas that you could think of to improve the model's fit to (unseen) data;\n", "3. any underlying assumptions that you are making about unseen data.\n", "\n", "Don't proceed until you've had a solid discussion on the topic. If someone is tutoring this practical, they might contribute to the discussion!" ], "metadata": { "id": "2feKuHJplo0U" } }, { "cell_type": "markdown", "metadata": { "id": "sAtms17jtCOU" }, "source": [ "## **2.3 Training Models Using Haiku and Optax** - `Beginner`\n", "\n", "For our Linear and Polynomial examples, we only used core JAX to keep track of and optimize our weights. This can be tedious, especially when dealing with larger models and when using more complicated optimization methods. \n", "\n", "Luckily, JAX has higher-level neural network libraries such as [Haiku](https://github.com/deepmind/dm-haiku) or [Flax](https://github.com/google/flax), which make building models more convenient, and libraries like [Optax](https://github.com/deepmind/optax), that make gradient processing and optimization more convenient. \n", "\n", "In this section, we will briefly go through how to use Haiku and Optax. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "0ySycQo7txoF" }, "outputs": [], "source": [ "%%capture\n", "# @title Install Haiku and Optax. (Run Cell)\n", "!pip install -U dm-haiku\n", "!pip install -U optax\n", "# For plotting.\n", "!pip install livelossplot" ] }, { "cell_type": "markdown", "metadata": { "id": "exuVety_bFhQ" }, "source": [ "### Haiku\n", "\n", "[Haiku](https://github.com/deepmind/dm-haiku) is JAX neural network library intended to be familiar to people used to object-oriented programming models (like PyTorch or Tensorflow), by making managing state simpler. \n", "\n", "Haiku modules are similar to standard python objects (they have references to their own parameters and functions). However, since JAX operates on *pure functions*, Haiku modules **cannot be directly instantiated**, but rather they need to be **wrapped into pure function transformations.**" ] }, { "cell_type": "markdown", "metadata": { "id": "9wvTzTi-YJTp" }, "source": [ "Let's create a simple linear module." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "H_-3r49B-Orc" }, "outputs": [], "source": [ "import haiku as hk\n", "\n", "\n", "class MyLinearModel(hk.Module):\n", " def __init__(self, output_size, name=None):\n", " super().__init__(name=name)\n", " self.output_size = output_size\n", "\n", " def __call__(self, x):\n", " j, k = x.shape[-1], self.output_size\n", " w_init = hk.initializers.TruncatedNormal(1.0 / np.sqrt(j))\n", " w = hk.get_parameter(\"w\", shape=[j, k], dtype=x.dtype, init=w_init)\n", " b = hk.get_parameter(\"b\", shape=[k], dtype=x.dtype, init=jnp.ones)\n", " return jnp.dot(x, w) + b" ] }, { "cell_type": "markdown", "metadata": { "id": "3WYb35ffYOSt" }, "source": [ "And attempt to directly **instantiate** it." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "LuZy7pj9-b2m" }, "outputs": [], "source": [ "# Should raise an error.\n", "try:\n", " MyLinearModel(output_size=1)\n", "except Exception as e:\n", " print(\"Exception {}\".format(e))" ] }, { "cell_type": "markdown", "metadata": { "id": "-XGOeJCH-10P" }, "source": [ "This fails since we are trying to **directly** instantiate `MyLinearModel`. Instead what we should do is wrap our model in a pure functional transform as follows: " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "d1yI7j2h_Esd" }, "outputs": [], "source": [ "def model_fn(x):\n", " module = MyLinearModel(output_size=1)\n", " return module(x)\n", "\n", "\n", "model = hk.without_apply_rng(hk.transform(model_fn))" ] }, { "cell_type": "markdown", "metadata": { "id": "EZ24tXUiaHQa" }, "source": [ "> We use `hk.without_apply_rng` since our model's *inference* (not initialization) is deterministic and hence has no use for a random key when calling `.apply`. \n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "3aWAc_f0BVFU" }, "outputs": [], "source": [ "model" ] }, { "cell_type": "markdown", "metadata": { "id": "Lao8wS3tBjc3" }, "source": [ "Our wrapper object has two methods: \n", "- `init` - initialize the variables in the model and return these params. \n", "- `apply` - run a forward pass through our data. " ] }, { "cell_type": "markdown", "metadata": { "id": "gTJcV6hjFh6u" }, "source": [ "If we want to get the initial state of our module, we need to call `init` with an example input." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "nt0srU3rQlhL" }, "outputs": [], "source": [ "# input dimention we are considering\n", "input_dim = 3\n", "\n", "example_x = jnp.arange(input_dim, dtype=jnp.float32)\n", "rng_key = jax.random.PRNGKey(42)\n", "\n", "params = model.init(rng=rng_key, x=example_x)\n", "print(params)" ] }, { "cell_type": "markdown", "metadata": { "id": "VCoYMnZkGKOb" }, "source": [ "We can now call the `apply` method as follows. Note we pass in the `params` variable that holds the current model weights. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "XA8n5cEMGVWC" }, "outputs": [], "source": [ "new_x = jnp.arange(input_dim, dtype=jnp.float32)\n", "# example forward pass through our model\n", "prediction = model.apply(params, new_x)\n", "print(prediction)" ] }, { "cell_type": "markdown", "metadata": { "id": "mmk2jcIHbRlS" }, "source": [ "So that is it! Those are basics of using Haiku modules!" ] }, { "cell_type": "markdown", "metadata": { "id": "_3h034w5bWn6" }, "source": [ "### Optax\n", "\n", "[Optax](https://github.com/deepmind/optax) is an optimization and gradient processing library in JAX. " ] }, { "cell_type": "markdown", "metadata": { "id": "CuWggGFEcdoy" }, "source": [ "In our linear regression section, we manually updated the params of our model (e.g. `w = w - learning_rate * grad_w`). \n", "\n", "This wasn't too difficult in our simple case, but for more challenging optimizations, especially when chaining optimizations (e.g. clipping gradient norm and then applying an optimizer update), it becomes trickier to effectively and accurately implement these parameter updates. Luckily, Optax comes to the rescue here! " ] }, { "cell_type": "markdown", "metadata": { "id": "hvecjyZGelIV" }, "source": [ "Here is a simple example of how you create and initialize an optimizer." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "zhqkLvtRe6zf" }, "outputs": [], "source": [ "import optax\n", "\n", "# create optim\n", "learning_rate = 0.1\n", "optimizer = optax.adam(learning_rate)\n", "\n", "# init optim\n", "input_dim = 3\n", "# init weights to pass to our optim\n", "params = {\"w\": jnp.ones((input_dim,))}\n", "\n", "# Obtain the `opt_state` that contains statistics for the optimizer.\n", "opt_state = optimizer.init(params)\n", "print(opt_state)" ] }, { "cell_type": "markdown", "metadata": { "id": "Io4mLeIifxkX" }, "source": [ "Once we have calculated the gradients, we pass them (`grads`) and the `opt_state` to our optimizer to get `updates` that should be applied to the current parameters and `new_opt_state`, which keeps track of the current state of the optimizer. \n", "\n", "```\n", "updates, new_opt_state = optimizer.update(grads, opt_state)\n", "params = optax.apply_updates(params, updates)\n", "```" ] }, { "cell_type": "markdown", "source": [ "And that is the basics of Optax. " ], "metadata": { "id": "4p1l2rUWpRZ7" } }, { "cell_type": "markdown", "metadata": { "id": "7IaqVuRPg3ER" }, "source": [ "### Full Training Loop Using Haiku and Optax 🧙\n", "\n", "Here we show a full training loop, using Haiku and Optax. For convenience, we introduce structures like `TrainingState` and functions like `init`,`update` and `loss_fn`. Please read through to get comfortable with how you can effectively train JAX models." ] }, { "cell_type": "markdown", "metadata": { "id": "pqZZlOfNuMEn" }, "source": [ "Here we define some helper functions. " ] }, { "cell_type": "code", "source": [ "from typing import Any, MutableMapping, NamedTuple, Tuple\n", "import time\n", "from sklearn import datasets\n", "from sklearn.model_selection import train_test_split\n", "import haiku as hk\n", "import optax\n", "import tensorflow as tf\n", "import tensorflow_datasets as tfds\n", "from livelossplot import PlotLosses\n", "\n", "# Convenient container for keeping track of training state.\n", "class TrainingState(NamedTuple):\n", " \"\"\"Container for the training state.\"\"\"\n", "\n", " params: hk.Params\n", " opt_state: optax.OptState\n", " step: jnp.DeviceArray\n", "\n", "\n", "# function for our model (same as above)\n", "def model_fn(x):\n", " module = MyLinearModel(output_size=1)\n", " return module(x).ravel()\n", "\n", "\n", "# Load a simple dataset - diabetes (https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_diabetes.html)\n", "# and convert to an iterator. Although it would be faster to use pure jnp arrays in this example,\n", "# in practice for large datasets we use iterators.\n", "# Read here https://www.tensorflow.org/guide/data_performance for best practices.\n", "def load_dataset(seed, input_dim=3, train_batch_size=32, shuffule_train_data=True):\n", " # Load the diabetes dataset\n", " diabetes_X, diabetes_y = datasets.load_diabetes(return_X_y=True)\n", "\n", " # Use only the first input_dim (3) features\n", " diabetes_X = diabetes_X[:, :input_dim]\n", "\n", " X_train, X_test, y_train, y_test = train_test_split(\n", " diabetes_X, diabetes_y, test_size=0.2, train_size=0.8, random_state=seed\n", " )\n", "\n", " train_dataset = (\n", " tf.data.Dataset.from_tensor_slices((X_train, y_train)).cache().repeat()\n", " )\n", " test_dataset = tf.data.Dataset.from_tensor_slices((X_test, y_test)).cache().repeat()\n", "\n", " if shuffule_train_data:\n", " train_dataset = train_dataset.shuffle(10 * train_batch_size, seed=seed)\n", "\n", " train_dataset = train_dataset.batch(train_batch_size)\n", " # Using full test dataset\n", " test_dataset = test_dataset.batch(len(X_test))\n", "\n", " train_dataset = iter(tfds.as_numpy(train_dataset))\n", " test_dataset = iter(tfds.as_numpy(test_dataset))\n", " return train_dataset, test_dataset" ], "metadata": { "id": "LY0t6C4OKzSK" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "Full training and evaluation loop." ], "metadata": { "id": "-rGuA_Y4DHXA" } }, { "cell_type": "code", "source": [ "# first we retrive our model\n", "model = hk.without_apply_rng(hk.transform(model_fn))\n", "\n", "# Then we create the optimiser - chain clipping by gradient norm and using Adam\n", "learning_rate = 0.01\n", "optimizer = optax.chain(\n", " optax.clip_by_global_norm(0.5),\n", " optax.adam(learning_rate=learning_rate),\n", ")\n", "\n", "# define our loss function\n", "def loss_fn(params, x, y_true):\n", " y_pred = model.apply(params, x)\n", " loss = (y_pred - y_true) ** 2\n", " return jnp.mean(loss)\n", "\n", "\n", "# Function to initialize our model and optimizer.\n", "@jax.jit\n", "def init(rng: jnp.ndarray, data) -> TrainingState:\n", " \"\"\"\n", " rng: jax prng seed.\n", " data: Sample of the dataset used to get correct shape.\n", " \"\"\"\n", "\n", " rng, init_rng = jax.random.split(rng)\n", " initial_params = model.init(init_rng, data)\n", " initial_opt_state = optimizer.init(initial_params)\n", " return TrainingState(\n", " params=initial_params,\n", " opt_state=initial_opt_state,\n", " step=np.array(0),\n", " )\n", "\n", "\n", "# Function to update our params and keep track of metrics\n", "@jax.jit\n", "def update(state: TrainingState, data):\n", " X, y = data\n", " loss_value, grads = jax.value_and_grad(loss_fn)(state.params, X, y)\n", " updates, new_opt_state = optimizer.update(grads, state.opt_state)\n", " new_params = optax.apply_updates(state.params, updates)\n", "\n", " new_state = TrainingState(\n", " params=new_params,\n", " opt_state=new_opt_state,\n", " step=state.step + 1,\n", " )\n", " metrics = {\"train_loss\": loss_value, \"step\": state.step}\n", " return new_state, metrics\n", "\n", "\n", "# Function to evaluate our models\n", "@jax.jit\n", "def evaluate(params: hk.Params, test_dataset) -> jnp.ndarray:\n", " # Here we simply use our loss func/mse to eval our models,\n", " # but we can use diff functions for loss and evaluation,\n", " # e.g. in classification we use Cross-entropy classification loss\n", " # , but we use accuracy as an eval metric.\n", " x_test, y_test_true = test_dataset\n", " return loss_fn(params, x_test, y_test_true)\n", "\n", "\n", "# We get our dataset\n", "seed = 42\n", "train_dataset, test_dataset = load_dataset(seed=seed, input_dim=10)\n", "\n", "# Initialise model params and optimiser;\n", "rng = jax.random.PRNGKey(seed)\n", "# We pass an example of the input to get the correct shapes\n", "state = init(rng, next(train_dataset)[0])\n", "\n", "# Time our training\n", "prev_time = time.time()\n", "max_steps = 10**5\n", "eval_every = 5000\n", "metrics = {}\n", "plotlosses = PlotLosses()\n", "\n", "# Training & evaluation loop.\n", "for step in range(max_steps):\n", " state, metrics = update(state, data=next(train_dataset))\n", "\n", " # Periodically evaluate on test set.\n", " if step % eval_every == 0:\n", " steps_per_sec = eval_every / (time.time() - prev_time)\n", " prev_time = time.time()\n", " test_loss = evaluate(state.params, next(test_dataset))\n", " metrics.update({\"steps_per_sec\": steps_per_sec})\n", " metrics.update({\"test_loss\": test_loss})\n", " plotlosses.update(\n", " {\n", " \"train_loss\": jnp.mean(metrics[\"train_loss\"]),\n", " }\n", " )\n", " plotlosses.update(\n", " {\n", " \"test_loss\": test_loss,\n", " }\n", " )\n", " plotlosses.send()" ], "metadata": { "id": "EsD62L4cUM9r" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "Please try and get comfortable with the above code since we will be using Haiku and Optax in other practicals. If you need assistance, please call a tutor!" ], "metadata": { "id": "03woGcY0pxPb" } }, { "cell_type": "code", "source": [ "# @title Let's plot our predictions vs targets.\n", "\n", "X_test, y_test = next(test_dataset)\n", "pred = model.apply(state.params, X_test)\n", "\n", "plt.figure(figsize=(7, 7))\n", "plt.scatter(y_test, pred, c=\"crimson\")\n", "\n", "p1 = max(max(pred), max(y_test))\n", "p2 = min(min(pred), min(y_test))\n", "plt.plot([p1, p2], [p1, p2], \"b-\")\n", "plt.xlabel(\"Actual Values\", fontsize=15)\n", "plt.ylabel(\"Predictions\", fontsize=15)\n", "plt.axis(\"equal\")\n", "plt.show()" ], "metadata": { "cellView": "form", "id": "uU3aRT3p-QVY" }, "execution_count": null, "outputs": [] }, { "cell_type": "markdown", "source": [ "So there is some correlation with our predictions and our actual targets. This shows that we are learning a useful model for our data." ], "metadata": { "id": "qgFA9zHOBiLh" } }, { "cell_type": "markdown", "source": [ "You have officially trained a model end-to-end using the latest JAX techniques! 🔥\n", "\n", "Although, we have only done simple Linear Regression in this tutorial, you have learned optimization techniques like gradient descent, which can apply to a variety of models! " ], "metadata": { "id": "BMTbY9uv-lIk" } }, { "cell_type": "markdown", "metadata": { "id": "fV3YG7QOZD-B" }, "source": [ "# **Conclusion**\n", "**Summary:**\n", "- JAX combines Autograd and XLA to perform **accelerated** 🚀 numerical computations. These computations are achieved using transforms such as `jit`,`grad`,`vmap` and `pmap`.\n", "- JAX's `grad` function automatically calculates the gradients of your functions for you! \n", "- Gradient descent is an effective algorithm to learn linear models, but also more complicated models, where analytical solutions don't exist. \n", "- We need to be careful not to over-fit or under-fit on our datasets. \n", "- Haiku and Optax make training JAX models more convenient. \n", "\n", "\n", "**Next Steps:** \n", "\n", "- If you are interested in going deeper into Linear Regression, we have a Bayesian Linear Regression section in the [Bayesian Deep Learning Prac](https://github.com/deep-learning-indaba/indaba-pracs-2022/blob/main/practicals/Bayesian_Deep_Learning_Prac.ipynb).\n", "- You can also adapt the model and dataset from the \"*Full Training Loop Using Haiku and Optax*\" section to train your custom models on custom datasets. \n", "\n", "\n", "**References:** \n", "\n", "Part 1 \n", "1. Various JAX [docs](https://jax.readthedocs.io/en/latest/) - specifically [quickstart](https://jax.readthedocs.io/en/latest/notebooks/quickstart.html), [common gotchas](https://jax.readthedocs.io/en/latest/notebooks/Common_Gotchas_in_JAX.html), [jitting](\n", "https://jax.readthedocs.io/en/latest/jax-101/02-jitting.html#), [random numbers](https://jax.readthedocs.io/en/latest/jax-101/05-random-numbers.html) and [pmap](https://jax.readthedocs.io/en/latest/jax-101/06-parallelism.html?highlight=pmap#). \n", "2. http://matpalm.com/blog/ymxb_pod_slice/\n", "3. https://roberttlange.github.io/posts/2020/03/blog-post-10/\n", "4. [Machine Learning with JAX - From Zero to Hero | Tutorial #1](https://www.youtube.com/watch?v=SstuvS-tVc0). \n", "\n", "Part 2 \n", "1. Parts of this section are adapted from [Deepmind's Regression Tutorial](https://github.com/deepmind/educational/blob/master/colabs/summer_schools/intro_to_regression.ipynb). \n", "2. https://d2l.ai/chapter_linear-networks/linear-regression.html\n", "3. https://www.cs.toronto.edu/~rgrosse/courses/csc411_f18/slides/lec06-slides.pdf\n", "4. [Linear Regression Chapter - Mathematics for Machine Learning Book](https://mml-book.github.io/). \n", "\n", "\n", "For other practicals from the Deep Learning Indaba, please visit [here](https://github.com/deep-learning-indaba/indaba-pracs-2022)." ] }, { "cell_type": "markdown", "source": [ "# **Appendix:** \n", "\n" ], "metadata": { "id": "XrRoSqlxfi7f" } }, { "cell_type": "markdown", "source": [ "## Derivation of partial derivatives for exercise 2.4.\n", "\n", "Derive $\\frac{\\partial \\mathcal{L}}{\\partial w}$:\n", "\\begin{aligned}\n", "\\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{ \\partial}{\\partial w} (\\frac{1}{2N} \\sum_{i=1}^N (y_i - (w x_i + b))^2) \\because{Definition of $\\mathcal{L}$} \\\\\n", " \\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{1}{2N} \\frac{ \\partial }{\\partial w} ( \\sum_{i=1}^N (y_i - (w x_i + b))^2) \\because{Constant multiple rule} \\\\\n", "\\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{1}{2N} \\sum_{i=1}^N \\frac{ \\partial }{\\partial w} (y_i - (w x_i + b))^2 \\because{Sum Rule - derivative of sum is sum of derivatives.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{1}{2N} \\sum_{i=1}^N 2 (y_i - (w x_i + b)) \\frac{ \\partial }{\\partial w}(y_i -(w x_i + b)) \\because{Power Rule + Chain Rule.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{1}{2N} \\sum_{i=1}^N 2 (y_i - (w x_i + b)) (-x_i) \\because{Compute derative.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{1(2)}{2N} \\sum_{i=1}^N (y_i - (w x_i + b)) (-x_i) \\because{Factor constant out of summation.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{1}{N} \\sum_{i=1}^N -y_ix_i + (w x_i + b)x_i \\because{Multiply brackets and simplify.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{1}{N} \\sum_{i=1}^N (-y_i + (w x_i + b))x_i \\because{Rewrite.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{1}{N} \\sum_{i=1}^N ((w x_i + b) -y_i )x_i \\because{Rewrite.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial w} & = \\frac{1}{N} \\sum_{i=1}^N (f(x_i) -y_i )x_i \\because{Substitute in $f(x_i)$.} \\\\ \n", "\\end{aligned}\n", "\n", "Derive $\\frac{\\partial \\mathcal{L}}{\\partial b}$:\n", "\\begin{aligned}\n", "\\frac{\\partial \\mathcal{L}}{\\partial b} & = \\frac{ \\partial}{\\partial b} (\\frac{1}{2N} \\sum_{i=1}^N (y_i - (w x_i + b))^2) \\because{Definition of $\\mathcal{L}$} \\\\\n", "\\frac{\\partial \\mathcal{L}}{\\partial b} & = \\frac{1}{2N} \\frac{ \\partial }{\\partial b} ( \\sum_{i=1}^N (y_i - (w x_i + b))^2) \\because{Constant multiple rule} \\\\\n", "\\frac{\\partial \\mathcal{L}}{\\partial b} & = \\frac{1}{2N} \\sum_{i=1}^N \\frac{ \\partial }{\\partial b} (y_i - (w x_i + b))^2 \\because{Sum Rule - derivative of sum is sum of derivatives.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial b} & = \\frac{1}{2N} \\sum_{i=1}^N 2 (y_i - (w x_i + b)) \\frac{ \\partial }{\\partial b}(y_i -(w x_i + b)) \\because{Power Rule + Chain Rule.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial b} & = \\frac{1}{2N} \\sum_{i=1}^N 2 (y_i - (w x_i + b)) (-1) \\because{Compute derative.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial b} & = \\frac{1(2)}{2N} \\sum_{i=1}^N (y_i - (w x_i + b)) (-1) \\because{Factor constant out of summation.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial b} & = \\frac{1}{N} \\sum_{i=1}^N (-y_i + (w x_i + b)) \\because{Multiply brackets and simplify.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial b} & = \\frac{1}{N} \\sum_{i=1}^N ((w x_i + b) -y_i ) \\because{Rewrite.} \\\\ \n", "\\frac{\\partial \\mathcal{L}}{\\partial b} & = \\frac{1}{N} \\sum_{i=1}^N (f(x_i) -y_i ) \\because{Substitute in $f(x_i)$.} \\\\ \n", "\\end{aligned}" ], "metadata": { "id": "9OH9H7ndfuyQ" } }, { "cell_type": "markdown", "metadata": { "id": "o1ndpYE50BpG" }, "source": [ "# **Feedback**\n", "\n", "Please provide feedback that we can use to improve our practicals in the future." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "OIZvkhfRz9Jz", "cellView": "form" }, "outputs": [], "source": [ "# @title Generate Feedback Form. (Run Cell)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "oglV4kHMWnIN" }, "source": [ "" ] } ], "metadata": { "accelerator": "GPU", "colab": { "collapsed_sections": [ "XrRoSqlxfi7f" ], "name": "Introduction_to_ML_using_JAX.ipynb", "provenance": [] }, "gpuClass": "standard", "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 0 } ================================================ FILE: practicals/array_algebra.ipynb ================================================ { "cells":[ { "cell_type":"markdown", "metadata":{}, "source":[ "# Array Algebra" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Authors: Taliesin Beynon (contact@tali.link)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Introduction: Array algebra is the theory and practice of manipulating and\ncomputing with arrays of numbers. The underlying ideas are quite simple and intuitive, once you're used to them! This\npractical will cover some of the core concepts, and focus on visualizing the operations to make them easier to\nunderstand." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Topics: numpy, jax, array processing" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Learning objectives:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "* Understand how arrays of number of various sizes and shapes can represent data from the real world\n", "* Manipulate these arrays to perform useful computations\n", "* Understand how shapes of arrays are transformed by these operations\n", "* Detect bugs in existing code\n", "* Choose the right transformations to accomplish a given task." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "# Installation and imports" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "## Install and import anything required. Capture hides the output from the cell. \n", "#@title Install and import required packages. (Run Cell)\n", "import os \n", "import matplotlib.pyplot as plt\n", "import numpy as np" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "# What are arrays?" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "To get started we'll cover some very basic ideas in array algebra." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "A **numeric array** is a data structure containing **numbers**. These numbers are *organized* in a system, grid-like\nway. We can classify arrays by *how* they organize these numbers -- in particular the shapes of grids they use. But\nfirst, let's introduce some terminology." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Each **number** in an array lives in a **cell**. The **value** of the cell is the number it contains. The **position**\nof the cell is where the cell is located within the array." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can make a useful analogy between an *array of numbers* and a *neighborhood of houses*. The *houses* are organized\ninto *streets,* and each house contains a certain number of *people*." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### A single house" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The simplest kind of neighborhood only has one house in it! This house doesn't need to have an address, because we don't\nneed to distinguish it from any other houses. The postman will clearly know which house to go to *without* an address!" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "On the left we show this **neighborhood**, which has only one house that contains 3 people. On the right we show the\n**array** it corresponds to in our analogy." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This kind of array is so simple that most people don't usually call it an array, but is technically a **0-array**! More\nfrequently it is known as a **scalar**." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here is how we can create such a scalar in numpy. Run this code and see what the **shape** of this array is, we'll talk\nmore about this later!" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "scalar = np.array(3)\n", "scalar.shape" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### A single road" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Now let's consider a neighborhood with just one street, and 3 houses on it." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Notice we've labeled each *house* with its street address, just like we've labeled each *cell* with its position in the array on the right." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This kind of array, where a cell position consists of a single number, is called a **1-array**, or **vector**." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here is how we can create this vector in numpy: run this code and again notice the shape." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "vector = np.array([3, 2, 0])\n", "vector.shape" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: try to guess what *shape* means from these first two examples" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Two streets" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Now let's imagine a neighborhood with two streets, both with the same number of houses (3) on each." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "To locate a house in the neighborhood, we need both the street name (1 or 2), and the house number *on* that street (1, 2\nor 3). Similarly, to locate a cell in the array, we need the number of the row (1 or\n2), and the number of the column (1, 2, or 3). For example, the cell at address `(2,\n3)` has value 4." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This kind of array, in which the positions of cells require two numbers to describe them, is called a **matrix** or\n**2-array**. We call these concepts of street name and house number the **axes** of the matrix." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here's how we can create this example in numpy. Again, run this code to see what shape it produces." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1i34atgeo1nsp" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"$Aborted"},"metadata":{},"execution_count":1} ], "source":[ "matrix = np.array(\n", "\t[[1, 2, 2],\n", " \t [3, 0, 4]]\n", ")\n", "matrix.shape" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The following code will look up the value of the cell at address `(2, 3)`, in other words the number of people on the" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "matrix[1,2]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Notice that we used the position `[1,2]` rather than the position `[2,3]` to look up the cell This is because Python\nuses \"zero-indexing\": indices in arrays and lists are counted starting at `0` rather than `1`. So the first house has\nindex 0 rather than 1. It's generally easiest to use ordinary \"one-indexing\" in one's head, and then convert these\nindices to Python's zero-indexing convention when reading and writing code." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Also notice that the **first axis** above" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to look up the number of people in the top-left house in the neighborhood / the value of the top-left cell in the matrix:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "matrix[1,2]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Multi-story houses" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Now let's imagine that there are *two* floors in each building in our 2 × 3 neighborhood." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "To identify a household, we’ll need the street address (which requires the street\nname and house number), and an additional floor\nnumber." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Similarly, for the array representing this neighbourhood, we'll need three **indices** to specify a cell location, one\nfor each of the **axes** we called street name, house\nnumber, and floor number. For that reason, we call this kind of array a\n**3-array**, or **tetrix**." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We've shown it on the right by drawing two matrices on top of one another, but we can also imagine it in 3 dimensions,\nwhere we have labeled the axes:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here's the numpy to create this array:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "matrix = np.array(\n", "\t[[[1, 2], [1, 2], [2, 0]],\n", " \t [[3, 2], [0, 3], [4, 1]]]\n", ")\n", "matrix.shape" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Notice that the innermost lists like `[4, 1]` are describing the people in each house, and so gather together the\nnumbers for the last axis, which is floor axis." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The lists containing these, such as `[[3, 2], [0, 3], [4, 1]]` are describing the houses in an entire street, and\ngathers together the values for the second-to-last axis, which is the house number\naxis." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "And the outermost list we passed to `np.array` is describing all the streets in the neighborhood, and gathers together\nthe values for the first axis, which is the street number axis." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "As you can see, when using numpy we have to **choose an order for the axes**. The array is then representing for input\nand output purposes as a **list of list of** ... **lists**, with the outermost lists corresponding to the first axis,\nand the inner most list corresponding to the last axis. In this example, we've chosen the axis order street name, house number, floor number." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: modify the code below to create the array using the alternative axis order of floor, **street**, **house**. if you've got it right, the print statement should then produce the output \"4\":" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "matrix = np.array([\n", "\t[[1, 1, 2],\n", "\t [3, 0, 4]],\n", "\t[[9, 9, 9],\n", "\t [9, 9, 9]]] # change the 9s\n", ")\n", "print(\"count of people in house 3 on street 1 on floor 2: \", matrix[1, 0, 2])" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Higher order arrays" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can go climb above the third step of the array ladder quite easily, to 4-arrays, 5-arrays, etc." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "For a good analogy, think about a neighborhood in which the houses are apartment buildings which have a fixed number of\nfloors *and* a fixed number of rooms within each floor. This gives us a **4-array**, with the new, fourth axis being\n*room number*." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The only requirement for a nested set of data to be an *n*-array is that the size of each axis is **fixed**. In our\nanalogy, this is like saying that each street has the same number of houses, each house has the same number of floors,\neach floor has the same number of rooms, etc." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In case you're wondering, the \"n\" in *n*-array is known as the **order** of the\narray. It is also sometimes called the **dimensionality** of the array." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Named vs positional axes" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We should emphasize at this point that *numpy* and *jax* do **not** allow you to use *names* like floor, street, or house for axes. Instead, we can only refer to the axes by consecutive integers 0, 1, 2,\n..., where 0 refers to the first axis, 1 refers to the second axis, etc. Once we pick an ordering for the axes, we\n*must* stick to it and *remember* and *document* the order we chose." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "For example, the cell containing 4 above is conceptually located in the cell `(house=3, street=1, floor=2)` but numpy does not support specifying array positions in this way, so we must\ninstead locate this cell with the tuple `(3,1,2)` once we have chosen to use the (house, street, floor)\naxis ordering." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This lack of named axes is unfortunate, since it makes it harder to tell what is going on, but libraries exist to add\naxis names and future deep learning frameworks are likely to be built around this feature (see the [Tensors Considered\nHarmful](https://nlp.seas.harvard.edu/NamedTensor) blogpost for much more information about this topic). Often, certain\norders of axes are required by libraries -- deep learning libraries often require the first dimension to be a batch\ndimension, for example." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Shapes" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The **shape** of an array is the description of what the valid cell positions are for that array." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "For example, a 4 × 2 matrix, or in other words a 2-array with shape `(4,2)`, contains 8 cells." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here are the positions of these cells, where we are using 0-indexing for indices:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1s5lsy9rrahwe" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"[(0, 0), (0, 1), (1, 0), (1, 1), (2, 0), (2, 1), (3, 0), (3, 1)]"},"metadata":{},"execution_count":1} ], "source":[ "import itertools\n", "list(itertools.product([0, 1, 2, 3], [0, 1]))" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: modify the code below to produce the valid positions for our multi-story neighborhood, using the axis order of street name, house number, floor number. you should get a list with 12 positions in it." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "list(itertools.product([0], [0], [0]))" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: modify the code below to produce the valid positions for a 0-array / scalar! you should get a list with exactly *one* position in it, since a 0-array contains exactly one cell." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "list(itertools.product([0], [0], [0]))" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Kinds of array" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Let's summarize the kinds of arrays we've just seen in a table, as well as the obvious generalizations:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "| num of axes | full name | short name | form of shape | num of cells |\n| --- | --- | --- | --- | --- |\n| 0 | 0-array | scalar | () | 1 |\n| 1 | 1-array | vector | (*n*) | *n* |\n| 2 | 2-array | matrix | (*n*, *m*) | *n × m* |\n| 3 | 3-array | tetrix | (*n*, *m*, *p*) | *n × m × p* |\n| 4 | 4-array | | (*n, m, p, q*) | *n × m × p × q* |\n| n | n-array | | (*m₁, ..., mₙ*) | *m₁ × ... × mₙ* |" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here's a quick gallery of examples of n-arrays of different orders, along with their shapes:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Recap" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We introduced **0-arrays** / **scalars**, **1-arrays** / **vectors**, **2-arrays** / **matrices**, and **3-arrays**." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "An array is composed of cells. A cell has a **value**, which is the number it contains, and a **position**, which is a\nway to locate the cell within the array." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Each cell's **position** is described by **indices**, one for each **axis** of the array. An **n-array** has *n*\ndistinct such **axes**." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Each index can be an integer value in the range 0..m-1, where *m* is the size of\nthe array along that axis. Because Python uses zero indexing, the index **zero** refers to the **first** row / column /\nlayer / channel, etc." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The tuple of axis sizes is called the **shape** of the array. The shape describes the maximum index for each axis." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "For a scalar the shape is an empty tuple `()`, for a vector of *m* cells it is a singleton tuple `(m,)`, for a matrix of\n*m* × *n* cells it is a pair tuple (m, *n*), etc." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "# Working with image arrays" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "To get more practical, we're going to look at a common use-case in deep learning, which is dealing with arrays that\nrepresent **images**." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We'll begin by loading an example image array from the SciPy library:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "import scipy.misc\n", "image_array = scipy.misc.face()" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "As with any array, we can ask what *shape* it is -- how many axes does it have, and what are their sizes?" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0eyee8drqsv0j" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"(768, 1024, 3)"},"metadata":{},"execution_count":1} ], "source":[ "image_array.shape" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can see it has 3 **axes**, with **sizes** 768, 1024, and 3. That means the number of **cells** in the array is 768 ×\n1024 × 3 = 2,359,296. Each cell in the array contains a number, which we can access by providing the **position** of the\ncell. Here's the number at address 0,0,0, which we look up using the `[…]` syntax:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0d7k64y6yxx42" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"112"},"metadata":{},"execution_count":1} ], "source":[ "image_array[0,0,1]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The maximum and minimum values that are present in the entire array can be found with the `min` and `max` methods:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"04mfxaywby4yt" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"(0, 255)"},"metadata":{},"execution_count":1} ], "source":[ "(image_array.min(), image_array.max())" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Values in the range 0 … 255 represent the brightness of the image at a particular horizontal and vertical positions --\nwe call this a **pixel**. Let's now *show* this image using the `imshow` function:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0zl4zim6edkk9" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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CCQYIggMBhhDghABAEKIHmcVfBTZgdJGIAyMBn3bbJbLqiwe7c3///uwMMFf/eynu93u/ccPge/f391neRbF0WA4LKvqN//9/zVSvPzk07Isb27uzp4+n8/mv/vd74MwOH36NEnT5WJh287e/sHv/vl3NufD4fjq9toANByP//SHfyHAWIzFgxgAWFW1FwwJfiR0uh/er+/vF0EYvXz5IoqC6+vLpq6llp5v2Y5jAGrbLowHEOHpbGZhfH97izGRSi4W913XIYQYY9PpFGOcZVmyWXu2kyA0nkyM1ussNcZ4ngchhBA0TdMtGy0EQfT25rps6jAIIISUkqquwjBUXbdYLrqu77teKX148MQAZDTopeAW2+02EBnL5kVRIAQBMPP5vG1qi7G+V02zfFi+mx8cHRydFmVh+z5hfBDHn+BPdmn6w7ffPzl68utf/frNmx96Cfu6+f0//hMEgBJycnLCw7Cpyvl8r+97AEDgBS63IDRKCgANQsYYCYEhCGjVA6ApxZhQz3HIbGZztni4Xyw2CBLLsvvWVKoHBlJK4jj2PGs4il3XYYyGYdg3zW670RrYtq11r5XURjw8bDwnwJT3oru9WWojKbFsZi2Xq+FoPB6PLi4vd7vN8fFREITz/YMkSef7B9zxqrytm3azTt1WjUfTuike7u7+8he/uH9YZkl6enR8d3Ob5dnz588vP3zYLle241iOXVSV4/pFWTq2wznXSiACe9ETjKWRiMDJdLTZLkXXVXnRViXUqu9aCAOEUFUXngzrpkAIQoBty9d9lyWZZXMETJVnQCsIsRCia1pOaRQEgzhG0Gy32/P359zieZlDQj77yRd93+92O9/3mqbV0iCCqqqGyDius9uuGqH8ut5stxCavfkegbBtW6PNaDR2XVd0fZ6mdV4QQpQQVZlhDBFClFLXdbVSlDLHdoSQNzc3VVVFgwEitKqbyWzPdr0s2y5X68eEEyK4qaumbgnhtm1zAzg3CBGMETAAETyO4sFwxLktem2AoYTZluO5ru3YjFEhu3fv39wtr9frWwU6QDTmADPEKEIUY/6vmVpCKEeMEIYJwRBjSBDA0AACDAIQAogggggbY7TWEAICIUIAYiAVLOs6TzbLh8XyYVnkJULwz2LDOnt2pjWoq9oL/CxL27oeDofj8aip68ub665unx4e5kl+d3t/+vTF4dHT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1P2ufbHtbAwJWGqla1lJroadeH/pj6cX3gVOWkA5nU+lEG/evtzudsMwdk07qarZbNG3m+XNZVHkdVV558oyv74O795e5XmxjRtgWBydCGVGN64267KutDFaYUz+r//ql3/5l7/89OkPXr9+23RtlmnnPSMTEQExp763MXqBqJTebTtptNTKxxCsq0stCUI7bneb0Y1FXex2n2W5RooigDEypuRDGEbLjEJIKQkjOzsCgiDaN7vNdtV2LUOo69L6xkfIS0NkGHLv82HsEXm/2YPE+dEkcCKZ5kcn1WQWog8phhiHoX35+qXWBwjybHFyhoD7/a5rdwyOo4/RJw4ujiEFTpxChJCitaiFUaSkEkpAophSVBiZE0bPY4zkYlICs7LOqnqCmJi99977EILzzlonhdJKl1k5O54yqpQ4+uit65puu2+7drD92I8++UggOA2cAAATM+HBsoVCCWWUkAIgmdIIgcaoLFNCUoIocjmZ1NpgkIgChJZKSQEAwUJICWNA5oOjDDmBjIn/Vtn938mGBVCeVudPT2QNyViZCWWUNsoYkZVU1pTnkJmkDSNB8IlIbG63f/3nz/1QTPKpFBChDyiUkigCE6GQUhpJGELMM3F8dEqSm37f9W3bNt5759wwuMF5lamj40lh8PLlcnvdc5KEahjs3fvHj588artmudz0nRsGzwkIMUUMkQWh1pIBOKUkKKZolNJELgYmrzMWJegJooLRjv5miUhamTzP799/8vjJZ9eXV19++0wV4kefP9E6RorRRwAfnM10wW4IEGWBqCBCsH50qZven/+n/9U/0DP++f/4zXpzk5fiyUd3Hjw8+eynnzz49F6Rl+222a/333377OrtbnfbCSyTN4tqcvTw1MWGhCTAYbQMqSoNp3FoWwIe+71znqSJKZX15N27d207CC19sMzcd1NmaBoyir5TGpkOAAAgAElEQVT68jdlWRDCfr/P8+r47N7ofDM0E01Ntw6wm52egdlUp8P5Z2cyn89PBZBzaTf4bt0OJIIkY6gqs5M4yH6TLBck69375s2z68UPjkZvjckjqN3e17Uqq/l6tUkhHS+Olstl02zPjucQ7Hq7cdZ670+UzDOFELt2L6Vsmu729vbRkyf37z8EhJhSSpw4JI+vX73hBO/eX17fXGmtEjMSxQQAAhFiBBKaSColgRkVCKWEVCQl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"},"metadata":{"needs_background":"light"}} ], "source":[ "plt.imshow(image_array)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "As you can see the horizontal positions range from 0 to 1024, and the vertical positions from 0 to 768. It's a general\nconvention that the vertical positions by the **first** axis of the array (the **rows**), and the horizontal positions\nare encoded by the **second** axis of the array (the **columns**)." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can demonstrate this by **slicing** the array along the first axis, so that we take only rows 250 to 375:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"14k956un09jyp" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"(125, 1024, 3)"},"metadata":{},"execution_count":1} ], "source":[ "sliced_image_array = image_array[250:375]\n", "sliced_image_array.shape" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Notice there are now only 375 - 250 = 125 rows in this new array. Let's plot this sliced array. We can see we've got an\nimage that shows only a vertical section of the original iamge:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0vd96a3anzisv" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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29vbIAjasn3y+EntqvHNTajie3fPClOW5dp50+lko+He3s6uRFzN5r6xVb8YDUfs3Wq9qpvy8PgwjALPznlPgrIsk0JEYcDArfPW2qpuyqpuWlNXzWq1ms8X3nOn07VcO18b23pwnpxH55wT7BUAsSBBikIJklj6xlljkIGQ2qYtltVylq9m+XpZlHkNQKEKOmmkdagCGcZSBQTkGC0gI7aMtrZtuyoAfN20XyiXP1fa+m/htX/+L3757Xfe/rM//7PpdLa3MxIC47iTZd0wCFfrdRQFq+Vif2dXS71ZbS4vrrr9rG6bz598/uj+/U2+7na6q1VJEsuyjIJY4sy21Xxye3h69Nqjr/z4B+9tqnrnaCew8Xy1CKNoNNpXOmiaxjN772eTiUBMkqTX6zVVs/VbsPdRFIVRxMBSCGfatml6nS6SsM4ZZxtjqqLMeoPBaKduGwbudLKqLqy1SmskQqLWGPZOa72zM0JCIQQSPX9xfufkNMkyEKJqyqoqmK13sqxyJACkqqqtc+v1utPNdKCVUndOT5eLpXXu8vxyMVutVnldVPfvP3z48OH11dXLy5dNXb328CFJ2bQmz4vrm/Hnj59opd586+29/aPbmwl761pzdvdUKdlar6P47Xe+vrt3cOfO/bIoq7pZrldC4NHhgVKqqCpr2zBQSokw1ARg69p7R4hKCSJsmrptW0QMw1A63v40QgRApaRUxN7lhTXWEsN6vSGiJE4oSVSsCck59szOc121UgokEgJRMAkiRCThnHPeAApEaNtmPp8RUahDa50SyrKdzeZPnz4eDnuvvfZalmVCCCHIethOh7eCqXOOnUcipZT+QgzCPF87YK01knj6/Nnnn3866A929/Zef/31w+NDJBBEACilYO+999v5W1Xkq+VycjuZzmZNY6zzTKppbbebnt49ffniaZZE/V6n0+spIQ9P94ejYRSFOgiEFG3ZgPcAMJ8vxuNJqJMoTqaTidZyb29XCXl5dVEU9dtvv72YL++cHDvnBqOhjvRquQrC4O2vva2VNtYORsOyqsqyzOcz2zab9WK+WOR5ked5HCcSxXq92tkf3j89nYwni8VExAEJsX+wKwRVVakEHezuMXAUJej56vy8082Ojw6tszdXV1knGw0GIEVR5AystAICKaVEYb33AMaavf29LEt7e6P9k6NVvhhPr6azS+MQ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4+OcnyqmfwsgjuOc7PStZFGapuAthCRJcgnLFYtOW6Rp+t92C/8TKXkhxLnnnqtp2lvppL/97W+HEL41bFFKGYZx7rnnvmWujpSyWq2uXr36rWTR+Pj46OjoW8YizvmmTZv+42Dwt5bbWsEKVrCC/7dAK6dgBStYwYrbWsEKVrCCFbe1ghWsYAX/Y25r7969N91001VXXfWNb3wjL/l5s+DBBx+8+eabr7vuug9/+MMvvfRSPvjss8/ecMMNV1999Z133plXEs3Pz3/qU5+6+uqrP/vZz/b7/TeFaV/96levvvrqEydOAAD+5V/+5brrrrvuuut++tOf5u/mpQM7duz4m7/5m9N8h1FK+cMf/vC9733v9u3b77777nzkrrvuuvbaa9/73vfu3Lkz/9iuXbve//73b9++/RTD+GmLvXv3fuhDH7rmmms+9rGPHT58GACQZdlXvvKVHTt2vP/973/55ZdPTc7rr7/+mmuuueuuu07D9LSU8p577nn3u9+9ffv2o0ePAgCUUt///vfzmfbAAw/kH9u/f//v//7vX3311X/7t3+bM5J6nnf77bdfeeWVH//4x+fn53/tH1C/SXQ6nRtuuOEf/uEf9uzZc8kll/zrv/6revPggQceuO++++bm5r7xjW9s27YtjuN2u33ZZZfdfffdu3btuvzyyx9++GEp5Yc+9KHPfOYzR44cufnmm2+//fbT3658xm/ZsuXw4cOvvvrqli1bdu7cuXPnzs2bNx86dChJku3bt3/9618/cODA9u3b77jjjtPZlnvvvff666/fv39/o9GYmZlRSj377LNbtmx59tln77333gsuuGB+fj4Mw23btt1555179+69/PLLf/KTn5y25oRheOONN955552NRuOv//qvP/KRjyilvvWtb1111VX79u37xje+ccUVV4RhODMzc9FFFz344INPPPHEpZde+uKLL55uhnDOH3300fvvv/+cc8555ZVXlFK5B3jkkUceeeSR888///Dhw0mS7NixI9em2L59+w9+8AOl1Je//OUPfehDhw8f/ou/+IuPf/zjee33/x+/2dXWq6++2mq1br755nPOOefGG2885WXfFLjmmmuuv/760dHR97znPUEQpGm6a9cuSulNN930tre97cYbb3zooYcWFhZmZmZuueWWNWvWfOYzn3nqqadO8wq148ePf+973/vsZz9bKBQAADt37ty6deu2bdu2bdt25plnPvbYY4cPH47j+JOf/OSGDRs++tGP/vznPz+dzbn77rvXrl17xx13fO1rX8srbB599NHLL7/8wgsvvOGGG1avXv3II4/s3r0bQviHf/iHZ5111gc+8IGf/exnp+3uOYTQsizHcXRdz3stAQA//elPP/jBD27cuPHjH/84hPDgwYNPP/301NTUlVdeuWXLlquuuuoXv/jF6WYIxnjr1q07duzQNC2vE3riiSfe8Y53XHbZZZdddtk555yzc+fO/fv3e55366235jPtoYce6vV6Tz311Cc+8Ym1a9d+4hOfePnll3u93m8hSGy1WjkfEABgZGTk1x3E6QzO+V/91V+9613vyqlcT9X6V6vVfr/fbrdN08wNHB0dTZJkMBictrYkSfKP//iPH/3oR7ds2QIhNAxjcXFxaGgof3d4eLjVanU6nVKplE+1iYmJfr9/OjviF154Ye/evb/7u79LKf385z8fhmGj0RgbG8vfHRoaajabS0tLlUolt2hoaKjX6+XxyGkIXdc//OEP33HHHe95z3vuvvvu973vfUqpfr9/yqJyudztdpvN5qmrVq/XFxcXT09z3phhWFhYGBkZeeNMW1paKhaLeU9VvV4fDAadTifLMsdxAACFQgFj3Gw2fwtuK+ecylNay6xAbypkWfZnf/Znmqb9+Z//eW7OqSuRJAmlVNM0znluYBiGGGPG2Glrzosvvvid73znO9/5zgc/+MGXXnrptttue2PtdX6BNE07ZWMQBIwxSulpa1GpVHrf+963bdu2W2655cSJEwsLC7ZtB0GQvxvHsa7ruq6f8rxJkuSqjqenOYPB4I477vjiF7/4wAMPfPrTn84zPoyxUxoOaZrm1yiKolMW5U/N03PxeOp/0zRPHXMcx5qm6bp+au6laUoI0TQtJ9HMR4QQlmX9FtzWxMQE5zzPyT355JPT09NvIp8VRdEXv/jFXq/39a9/3TRNAMA555wzPz+/tLSklHr++efXr18/MTGRZdm+ffvygKtWq+XB1+mJ9evX/9M//dOOHTu2bt1arVYvvfTSCy+88IUXXsjblfbu3btx48apqalmszkzM5NbtHbt2tP2JgcAnHfeefnGQrPZhBC6rrtx48bnn39eCOH7/r59+zZt2rRx48bFxcV8Ej7++OObNm06bS2KomhmZmb9+vWGYaxfv35+fp5SOj09/fjjjwMATp48OTs7OzU1tXHjxoMHD0ZRxDl/7rnnzjvvvNPTnJyvNT/bmzZt2rVrV85usmvXro0bN27YsKHX6x08eBAA8Nhjj61fv354eLhare7ZswcAsGfPHtM0TwmD/eo3/0abe4rFYqvV+u53v/v000/PzMx84QtfeBM1VH/lK1/58pe//M53vvPFF1/cs2dPflqPHTv2/e9//9FHHz169OjnPve5SqWCEPrmN7958ODBn/70p5/+9KdPZ9dsmub09PTGjRvHx8fvv//+W2+99eyzz77//vsffvjh+++/v1AofPKTnyyVSp1O51vf+tbu3btffPHF22+//XRuKBkdHf3ud7978ODBH//4x9u2bbviiivq9fp99933xBNP3HPPPZOTk3/wB39QKpVOnjx51113vfDCC6+++uptt9122k5Cxtjx48fvvffeQ4cO3XPPPVdcccUll1wyNjb2z//8z3v27Pne9763bdu266+/vlarvfjii/fdd9/PfvYz3/dvueWW/LF6WuGhhx76+7//+4cffrjVanHOL7vssgcffHDnzp0/+clPXNe95ZZbisViPtNeeumlXbt23XbbbfV6vVKp3Hnnnfv27fvxj3988803v+1tb/v313G/6fQk5/zpp5/udDoXXXTR8PDwm2i1tWfPnrm5uSiKpJSmaW7dutW27TRNn3zySd/3zz///FP38+7du48ePbphw4aNGze+KUxLkuSVV17ZsGGDZVmdTue5554DALzzne/M1+RKqWeeeabRaJx33nmrVq06zW05fvz4rl27hoaGLrroojxR0mq1nn32WcMwLrnkkjyAEkI888wzrVZr8+bNp/JEp21e4tlnn202m6OjoxdeeGEeYZ04ceKll16qVCoXX3xxbmMYho8//rgQ4sILL6xWq6ehIfv37z9w4IBhGEmS5LZ0u91nnnkGQvgrM21paentb3/71NRU/osHDx7cv3//xMTE5s2bf234udKTuIIVrODNhZUq+RWsYAUrbmsFK1jBClbc1gpWsIIVrLitFaxgBStuawUrWMEKVtzWClawghWsuK0VrGAFb3r8H3HQ+hEe+sv7AAAAAElFTkSuQmCC"},"metadata":{"needs_background":"light"}} ], "source":[ "plt.imshow(sliced_image_array)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can similarly slice the array horizontally. Let's do both vertical and horizontal slicing. Notice that the vertical\nslice information is the **first argument** to `[…]` and the horizontal slice information is the **second argument**,\nbecause the *n*'th argument is applied to the *n*'th axis:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0bld44dqqowlq" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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ZX911J11zGW01vT3D/y0s+U99/dhjEdGRvr6+s8880x08tTChUMLFy4844ylJ8uAl5yyZNmyZWefffbJMmClVK2nds455wBr9KSot/a+VavVTj311JNlwIsWLUqSZMmSJegkL/KL4SXMZaqeFPVu/NP5POD3emn8v1tw4lmQ1E+K+mk7bvdO/sUU/cu//Mv3+t8QQixZsqSQKZwUValUTj/99FqtdrIMuFqtjoyMVKvVk+jzs3DhwqVLl55EzzDP80ZGRk6i9VQYhqeeeuqCBQtO9nnqJHsId6tb3fo/WKR7CbrVrW5156ludatb3Zrf89SOHTtuuumm1atXb968ed5ehXa7fdddd61cuXLVqlXXX3/95OQkQuixxx5bvXr1pz71qb17986foTabzQceeODKK6/84he/CJpb59yGDRt+53d+Z82aNaOjo/BtzzzzzDXXXPP7v//7L7zwwokd8MzMzH333bdy5coNGzZAk+Gxxx778Ic/vGrVqlWrVn3zm9+Eb3v88cevvvrqG2644dVXXz2xA3722Wdvu+22q6+++o477ije+p07d954442rV6/+13/91+L3uvvuu6+66qp77rkHxCsnsL72ta994hOfuOaaa/7hH/4BAqtfeOGFK6+8Ei7yQw89BN/24osvXn/99ddcc823v/3t7jw1W1NTU+vWrTv77LNvueWWv/qrv3r22Wfn51VI0/Tll1++5ZZbvvzlL3/hC1+o1Wrbtm175JFHPv3pTy9atOi22277+eQnv4jSWvf19Z133nnbt2+Hj/2mTZu2bNmyZs0aSunatWuNMTt37ly3bt3HPvaxyy67bM2aNYcOHTqBA1ZKDQ0NLV26dPv27fCVXbt2nXbaaZs2bXrwwQcvvvhihND27dsfeOCBG2+88QMf+MDtt98+NTV1Agd84MCBCy64YP369f39/bfddhsIldesWXPBBRfcdNNNDz30ENzGd99999jY2Lp165599tm/+7u/O7F3xejo6LXXXvuZz3zme9/73qOPPooQOnz4MMb4S1/60oYNG373d38XPoy33Xbb5Zdf/gd/8Ad//dd/fVwK0/wt917Wtm3brr76akjrXb9+/Wc+8xk3L2tqamrlypWrV6++6667Xn31VefcZz/72S996UtgO/it3/qtp59+el4NeOvWrddddx2o6q+88srHH3/cOTc2Nvabv/mbe/bs2bBhww033ADfuWrVqscee+yED/jxxx+/8cYbQSX7+c9//sILL1y7du3Xv/51+MrnPve5e++9F7Tal19++ZNPPjkfLvLY2Nj73//+er3+9NNPX3rppSAxf+CBB9avX3/kyJGLLrrojTfecM794Ac/uPjiiwFqdMLr0Ucf/bM/+zPn3FNPPXXuuefeeuutGzdubLVazrlvfOMbV111FXzbXXfddd9997mTp8h7Pc0PDAyAkO+0004rdiXzrYQQ11133erVq8MwvOmmm1566aUjR46AkIJSOjg4uH///nk1YDAnQ9bLzMwMDNXzvGq1OjY2dvjw4UWLFsF3Dg0N7du3b54MGOoDH/jArbfeeu65527cuPHee++Fh//w8DBCCGO8YMGCd955Zz5c5AcffPD8888vl8t79uzp7e0FS9DQ0ND4+PjY2FgQBGAtHhkZiaKo2Wye8AFPT09/4xvf+NCHPgQftz/5kz+56KKLvvvd765du9Y5d+DAAbjIMOb5cFf8/PXe6tHBw1xsWN7NZHjCKwzDa6+9Fv68b9++b37zm3NHDmSV+TnyIry+WBqD76zgY8zDwV966aXwhxUrVvz5n//5pz71KQAWFwP+2Y7RX0w9+uijL7744kMPPQSQj2J4efAXuPw73JUCiXkCq9VqrVmz5sILL1y5ciVCaPny5cuXL0cIXXzxxStXrjx48CDg2+bVRZ4v/alTTjnl4MGD0Jb+yU9+cvrpp8/bzW/xZ2utlPLMM8+EDnS9Xj948OCKFSvm1YBpJy2Qcz40NARDnZycnJiYWLx48dKlS3fv3g0fob17984HM01uwZ8Txos6MZaEkKVLl0L7PEmSffv2nfABb9y48Vvf+tamTZtgAXLOOeccPny41WohhF577bUlS5YsXry43W5D4+/555+v1WonVmFbr9c/+9nPLl269HOf+9wxtzTMp2marlix4s0334Qv7tixY77d0v+f++c91aPXarXvfve7P/zhD1977bVnnnnmzjvv7Ovrm4dX4eDBg3/zN39z5MiRLVu2/Nd//de6deuWLl368MMP1+v1r371q4ODgzfffPM88R9kWfbkk09u2bLlueeeQwj19PQsWbLk4YcfjqJo06ZN559//kc/+tG+vr7Nmze/+eab//7v/54kya233ur7/gk8o/jWt761ZcuWF154gVJaqVT++Z//efv27S+++OKGDRuuuOKKSy+9tL+//5FHHjl8+PCWLVsYYzfffHPB6vjF18MPP3znnXdee+21zWbzzTffXLx48eDg4HPPPffMM8+8/PLLW7duXbt27aJFi8bHx7/2ta81m81NmzbdcMMN559//gm8Kz7+8Y//+Mc//uhHP/r6669HUTQ8PPxv//ZvTzzxxNtvv/33f//3IyMj119/PXxxx44dP/7xj7dv33777befRHaL91yPPj4+/p3vfGdmZua3f/u3560Vud1uP/nkkwcPHqxWqx/60IfAt/nSSy9t27atv79/1apVBeRsPsxTX//618fHxymlWutLLrnkl37pl5599tkf/ehHixcvXrlypZQSZt7Nmzdzzq+66qqBgYETOOA4jv/lX/5lZmYGIi0vv/zymZmZ7du3U0rf9773/cZv/AZ82+uvv75169YgCK666ipIBjlRtXXr1ldffRXoQ+Vy+fd+7/d6enpmZmaeeOKJRqNxySWXnHvuubB1euqpp3bv3n3++ecDhvsE1qZNm1qtFpyrnHfeeVdcccXu3bv/8z//M8uyM88889JLL4W7YmJi4oknnkjT9LLLLju5uABd30y3utWt/9v9qW51q1vd6s5T3epWt7rzVLe61a1udeepbnWrW93qzlPd6la3uvNUt7rVrW5156ludatb3XmqW93qVrfmb/0/theknPEjbJQAAAAASUVORK5CYII"},"metadata":{"needs_background":"light"}} ], "source":[ "sliced_image_array = image_array[250:375, 500:800]\n", "plt.imshow(sliced_image_array)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to display only the nose of the raccoon!" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "plt.imshow(image_array[250:375, 500:800])" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Color channels" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The third axis of these arrays has size 3. This axis represents the **color channel**. Cells in the first address of\nthis axis represent amounts of **red light**, cells in the second **green light**, and cells in the third **blue\nlight**. Different mixtures of these light amounts produce all the colors a computer screen can display." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "For example, we can form the color **yellow** as an equal mix of **red** and **green** light. Here we demonstrate this\nby creating a 1 × 1 × 3 array, representing an image containing a single pixel. We fill this array with equal amounts of\nred and green light:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1a5qbulq61zl9" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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"},"metadata":{"needs_background":"light"}} ], "source":[ "def plot_color(r, g, b):\n", " return plt.imshow([[[r,g,b]]])\n", "plot_color(255, 255, 0)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the call to `plot_color` below to produce a pink image:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "plot_color(255, 255, 0)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We will now copy our original image array, and modify it to change some of the pixel values. We're going to modify the\nnoise of the racoon to be blue. To do this, we'll *set* values of part of the array corresponding to the nose." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1hmqwwmi07q67" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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CCQYIggMBhhDghABAEKIHmcVfBTZgdJGIAyMBn3bbJbLqiwe7c3///uwMMFf/eynu93u/ccPge/f391neRbF0WA4LKvqN//9/zVSvPzk07Isb27uzp4+n8/mv/vd74MwOH36NEnT5WJh287e/sHv/vl3NufD4fjq9toANByP//SHfyHAWIzFgxgAWFW1FwwJfiR0uh/er+/vF0EYvXz5IoqC6+vLpq6llp5v2Y5jAGrbLowHEOHpbGZhfH97izGRSi4W913XIYQYY9PpFGOcZVmyWXu2kyA0nkyM1ussNcZ4ngchhBA0TdMtGy0EQfT25rps6jAIIISUkqquwjBUXbdYLrqu77teKX148MQAZDTopeAW2+02EBnL5kVRIAQBMPP5vG1qi7G+V02zfFi+mx8cHRydFmVh+z5hfBDHn+BPdmn6w7ffPzl68utf/frNmx96Cfu6+f0//hMEgBJycnLCw7Cpyvl8r+97AEDgBS63IDRKCgANQsYYCYEhCGjVA6ApxZhQz3HIbGZztni4Xyw2CBLLsvvWVKoHBlJK4jj2PGs4il3XYYyGYdg3zW670RrYtq11r5XURjw8bDwnwJT3oru9WWojKbFsZi2Xq+FoPB6PLi4vd7vN8fFREITz/YMkSef7B9zxqrytm3azTt1WjUfTuike7u7+8he/uH9YZkl6enR8d3Ob5dnz588vP3zYLle241iOXVSV4/pFWTq2wznXSiACe9ETjKWRiMDJdLTZLkXXVXnRViXUqu9aCAOEUFUXngzrpkAIQoBty9d9lyWZZXMETJVnQCsIsRCia1pOaRQEgzhG0Gy32/P359zieZlDQj77yRd93+92O9/3mqbV0iCCqqqGyDius9uuGqH8ut5stxCavfkegbBtW6PNaDR2XVd0fZ6mdV4QQpQQVZlhDBFClFLXdbVSlDLHdoSQNzc3VVVFgwEitKqbyWzPdr0s2y5X68eEEyK4qaumbgnhtm1zAzg3CBGMETAAETyO4sFwxLktem2AoYTZluO5ru3YjFEhu3fv39wtr9frWwU6QDTmADPEKEIUY/6vmVpCKEeMEIYJwRBjSBDA0AACDAIQAogggggbY7TWEAICIUIAYiAVLOs6TzbLh8XyYVnkJULwz2LDOnt2pjWoq9oL/CxL27oeDofj8aip68ub665unx4e5kl+d3t/+vTF4dHT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"},"metadata":{"needs_background":"light"}} ], "source":[ "clown_image_array = image_array.copy()\n", "clown_image_array[420:490, 575:665, 2] = 255\n", "plt.imshow(clown_image_array)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We changed a particular slice of the array, setting it to the maximum value. This slice corresponded to the red channel\nof a rectangle of pixels around the raccoon's nose." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: It was recently discovered that the raccoon in this image was an important witness in a state investigation into illegal logging. For this reason, we need to protect the identity of the racoon by censoring its eyes. Modify the code below to replace the section around its eyes with a black rectangle." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Hint: to see *all* color channels to a value rather than just the blue channel, you can use `:` instead of `2`." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1hmqwwmi07q67" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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CCQYIggMBhhDghABAEKIHmcVfBTZgdJGIAyMBn3bbJbLqiwe7c3///uwMMFf/eynu93u/ccPge/f391neRbF0WA4LKvqN//9/zVSvPzk07Isb27uzp4+n8/mv/vd74MwOH36NEnT5WJh287e/sHv/vl3NufD4fjq9toANByP//SHfyHAWIzFgxgAWFW1FwwJfiR0uh/er+/vF0EYvXz5IoqC6+vLpq6llp5v2Y5jAGrbLowHEOHpbGZhfH97izGRSi4W913XIYQYY9PpFGOcZVmyWXu2kyA0nkyM1ussNcZ4ngchhBA0TdMtGy0EQfT25rps6jAIIISUkqquwjBUXbdYLrqu77teKX148MQAZDTopeAW2+02EBnL5kVRIAQBMPP5vG1qi7G+V02zfFi+mx8cHRydFmVh+z5hfBDHn+BPdmn6w7ffPzl68utf/frNmx96Cfu6+f0//hMEgBJycnLCw7Cpyvl8r+97AEDgBS63IDRKCgANQsYYCYEhCGjVA6ApxZhQz3HIbGZztni4Xyw2CBLLsvvWVKoHBlJK4jj2PGs4il3XYYyGYdg3zW670RrYtq11r5XURjw8bDwnwJT3oru9WWojKbFsZi2Xq+FoPB6PLi4vd7vN8fFREITz/YMkSef7B9zxqrytm3azTt1WjUfTuike7u7+8he/uH9YZkl6enR8d3Ob5dnz588vP3zYLle241iOXVSV4/pFWTq2wznXSiACe9ETjKWRiMDJdLTZLkXXVXnRViXUqu9aCAOEUFUXngzrpkAIQoBty9d9lyWZZXMETJVnQCsIsRCia1pOaRQEgzhG0Gy32/P359zieZlDQj77yRd93+92O9/3mqbV0iCCqqqGyDius9uuGqH8ut5stxCavfkegbBtW6PNaDR2XVd0fZ6mdV4QQpQQVZlhDBFClFLXdbVSlDLHdoSQNzc3VVVFgwEitKqbyWzPdr0s2y5X68eEEyK4qaumbgnhtm1zAzg3CBGMETAAETyO4sFwxLktem2AoYTZluO5ru3YjFEhu3fv39wtr9frWwU6QDTmADPEKEIUY/6vmVpCKEeMEIYJwRBjSBDA0AACDAIQAogggggbY7TWEAICIUIAYiAVLOs6TzbLh8XyYVnkJULwz2LDOnt2pjWoq9oL/CxL27oeDofj8aip68ub665unx4e5kl+d3t/+vTF4dHT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"},"metadata":{"needs_background":"light"}} ], "source":[ "witness_protection_array = image_array.copy()\n", "witness_protection_array[420:490, 575:665, 2] = 255\n", "plt.imshow(witness_protection_array)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Tinting an image" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can modify the amounts of color in the racoon array by multiplying the color channels with a 1 × 1 × 3 array that\nrepresents the factor with which to multiply each channel. Let's double the brightness of the blue channel, and keep the\nother channels the same:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0i09nlilqh6dv" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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SqWSJMn5B9RqtXdYPWORnX+tVptO4mbvTBuYoVqtNhqNmW9OFEXvGI5sdsVxfP5h9Xq9VqvN5EGp1+txHJ+fbvq3kyqO42q1ev4x2didf3O9C+R9xvbt22+77bYbb7zxn/7pnxqNhnxAMDg4uGnTprVr1952220/+MEPkiQRkWPHjm3YsGH16tUbN2584403RKRer3/729++8cYb16xZ8+yzz858u4aGhlavXn3PPfeIyPDw8Je//OWbb7553bp1+/fvFxFr7ebNm2+66aabb75569atzrmZbMu//uu/3nPPPbfeeuunPvWp3bt3i8jp06fvuuuu1atXf+Yznzlw4ICIRFF033333XTTTbfccssvf/nLGWsLM//2t7/95Cc/uWbNmvXr17/yyisiUi6Xv/GNb9x888233Xbb888/LyLOuUcffXTVqlU33XTTo48+mqbpTDPEWvvTn/501apVK1asGBoaEpE0Tb///e+vXr161apVjzzyyLRb+PjHP75q1aq//uu/ztzWmTNnvvCFL9x4442f/exnDx8+/F6///46rDNnzqxdu/bxxx8fGRn5+Mc//sADD3xQHNa5c+defPHFarV64sSJa6+99ne/+52IfO5zn/ve9743OTn5ne985/Of/7yIPPTQQ5s2bRoeHv71r3/90Y9+9Ny5czPZqCRJ/uEf/uFzn/vcvffeKyLf/OY3v/71r09MTPz0pz9du3ZtkiTPPPPMRz7ykcHBwd27d3/4wx9+7bXXZqwtExMTGzZseOSRR6IoKpfLlUpFRL761a9++9vfnpyc/NGPfnT77benafrYY4+tW7fu1KlTu3btuuaaa958880Za85tt9322GOPWWt//OMf33nnnSJy//33b9q0aXR09LHHHrvhhhsmJyf37t173XXXHTly5MiRI9dee+2LL744Ax3W4cOH9+/fv2LFisHBQRF5/vnnV69effTo0aNHj1599dX79u2rVCo33HDD1q1bx8bGPv/5z2/ZskVE/u7v/u4f//Efy+Xy/fff/5d/+Zfv9bB8f5eEx48fr9Vqt9xyS2dn5yc+8YkXX3zxg7Ju6ujouP766/P5/MDAQEtLCzNPTEwcO3bsrrvuamlp2bBhw1tvvTU8PLx79+7bb7+9q6vr1ltvNca89tprM9mohx56qL29fcOGDdbaer2+b9++TZs2lUql9evXVyqVoaGhnTt3Xn/99f39/StWrOju7t6zZ8+MteX48ePDw8MHDx7ctGnTT37yE611mqavvvrqxo0bW1pa1q1b12g0Tp48+dJLL61du7avr+/qq6/u7u5++eWXZ6Y5xpj58+efOnXqzTffPHfu3LJlywDgpZdeWr9+fXt7+5o1a4IgOHbs2K5duxYvXnzJJZdccsklixcvnoE3lFJq8eLFS5cunS76efnll6+77rqLL7744osvvuKKK3bs2HH48GFE/PSnP93W1rZhw4aXXnppdHT09ddfv+OOO4rF4saNG0+cODE+Pv5nyGGNj4+HYej7fuYCPoiZrAcffLC1tfW6664rl8uIWCqVAMD3fc/zxsfH6/V6S0tLdmShUDh79uyMNWTv3r0HDhz427/92zAMPc8TkTiO29rasklWKBQmJiYmJyc7Ozuz40ul0pkzZ2ZyuucPf/jD3Llz77vvvl27dv3whz+MoihN046ODgDQWodhWC6Xq9VqsVjMvtLW1jYyMjIzzcnlcuvWrXv44YfvueeeZ5555pZbbskyQV1dXdkBxWKxXC5PTExkBmY31Ojo6IzN/06/Hh4e7u7uzl53dnZOTEyMjo5m9xEAtLa21uv1iYmJNE3DMMze0VqPjY296y+/v605+Xw+SRJrrTGmVqsFQfDB8lYPP/zwtm3btmzZksvlfN/PciK5XM45Z63N7vzphGgcx9P3xgzE1q1bd+zY8dnPfvbkyZNnz54tlUqFQiFLRWd2hWEYBMF0NjeKoplsDiIuWbJk48aN3d3dX/ziFx988MG/+qu/Ukpl5++cy26A8weoXq/P2GrSkZGRzZs3b968+Zprrtm2bdt3v/vdf/mXf/E8b/oZH8dxGIZhGE4PUK1Wy543M3N0pv8Wi8VKpTK9+9Hb25vL5ab3QOI4NsaEYai1ztxco9Fwzr3XSL2/EdbAwICIHDx4kJmfffbZpUuXfoC20h588MHHH398y5YtWZNdT09PR0fH008/DQDbt2/P5XLz5s279NJLX3jhBWZ+7bXXJiYmLrvsshlr0d133/2DH/zgm9/85po1axYvXrxx48Z58+Y9+eSTALBz505r7cDAwLJly3bu3BnH8enTp0+cOHHFFVfMWHPmzJlTKBSOHDkCAIcOHers7NRaDwwM/OpXv8rCyTiOBwYGli9f/vzzz6dpOjQ0NDg4eNVVV83YgPHMmTMdHR1E1NbWNjo6qrVesmTJr3/9awA4fPjw8PDwwoULL7/88oMHD1ar1Wq1eujQoZUrV85Yh9WkGAS4/PLLd+3alW3m7t27d/ny5Zdddlm5XN67dy8APP3008uWLevr6+vp6dmxYwcA/OY3vymVStOR/juXnO9ra06xWKzVao888sjvf//7sbGxv//7v58OBWc4Xn/99fXr1y9atOjkyZPPPvtsW1tbX19fa2vrAw88sG/fvueee+7rX//6okWL+vv7f/azn23fvn3btm1r16699dZb8T9C6vPnQKlUmj9/fn9//7lz506dOvXlL3+5p6fn0Ucf3bNnz2OPPfaFL3xh5cqVc+fOfeGFF5566qknnnhi5cqV69evn7EN3qVSaXR09Oc///nevXv37NnzrW99q7+/v7e396GHHtq3b98TTzzxpS996aqrrurr6/vlL3/529/+dtu2bddcc81nPvMZpdQMNCcIgqGhoV/84hf79+/ftm3bpz71qZUrV/b39//85z/fsWPH1q1b77jjjtWrV3d1dR04cOAXv/jFk08+uXDhwrvuuivLt8woPPXUU5s3b/79738/NDTUaDRWr169ffv2p5566vHHH+/v7//KV77S0tJSq9UefPDBHTt2HD169G/+5m/a29u7u7sfeOCBl19++bnnnrv77ruzLN67uML3uzVHRPbv3z8xMXH55ZfP2Aj232JycvLQoUNxHKdpiohLly7N4qyjR48ODg4uXLhw4cKF08H8oUOHisXilVdeOWO91fkYGxsrl8vZ+b/11ltHjhzp7e1dsmTJ9Lppz549nuetWLFCaz2TDRGRQ4cOjYyMLFq0aM6cOdmbJ06cOHbsWBb8TidSDxw4EATBihUrZqa3yuCce/XVV8fHx3t7e6dD9bNnzx4+fLijo+NDH/rQ9Bpqz549IrJy5coZ6K0A4I033njzzTfDMIyiqKura9myZbVa7ZVXXkHElStXTresHjhw4Ny5c0uXLp3OcA0ODh49enT+/PkXX3zxe8Zus72Es5jFLD4omG3NmcUsZjHrsGYxi1nMYtZhzWIWs5h1WLOYxSxmMeuwZjGLWcxi1mHNYhazmHVYs5jFLGYxQ/H/AGrf979NmHAgAAAAAElFTkSuQmCC"},"metadata":{"needs_background":"light"}} ], "source":[ "plt.imshow(clown_image_array * np.array([[[1, 1, 2]]]))" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We received a warning because the brightness values of the blue channel now exceeds 255, which is the maximum amount of\nbrightness that can be displayed. These >255 values will still be intepreted as 255 for plotting purposes. Notice also\nthat the color of the green leaves didn't change much, because they don't have much blue light in them to begin with!" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to multiply the **green** channel by a factor of 2 instead of the blue channel:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "plt.imshow(clown_image_array * np.array([[[1, 1, 2]]]))" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Grayscale images" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We've seen that images with three color channels are **color** images, with the color channel corresponding to the $3^{\\textrm{rd}}$\naxis of the array. If an image array does not have a $3^{\\textrm{rd}}$ axis, then we do not have color information, and we call this a\n**grayscale** image." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Let's extract only the **green** color channel of our racoon using slice notation `[…]` to obtain a grayscale image:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0cd3xaaxmfkat" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"iVBORw0KGgoAAAANSUhEUgAAAZAAAAEtCAIAAACpiaEwAAAACXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR42uy9WazlaVX+v+d5nufhzHXOqaGrm56gATGmkRjQhESD4oXBRMKV0cit0SuNiVcS40hjiCGRCCY/gg2CQHfT1VR1VXXVqTOfs+d5nuf9v/jElZ0CATUM/6T2RefU6X32/n7f7/uu91nPetbzKpfLpeLJ68nryevJ6/8PL9WTIXjyevJ68noSsJ68nryevJ68ngSsJ68nryevJwHryevJ68nryetJwHryevJ68nryehKwnryevJ68ngSs/8VrMpkMh8Mno/nk9eT15PXzHrD+5V/+5cMf/vCHPvShP//zP5/NZk/G9MnryevJ6+c0YF1cXPzVX/3Vpz/96c9//vP//u///qUvfenJmD55PXk9ef2EXpr/498fHx+Hw+H3vve9arX65Zdf/va3v/3Rj36UJDGdTk8mE4VCMZ/P9Xq9QqFQqVRKpVKpVC6XSxT2SqVSPmq5XC4WC36W3/NO/mr197yTD5Q/Wf7Xi3/yG94p/5Q384e8YfV/rV7A6uUtFovlcqlSqfir1S9dvYbFYsF7Vq//sZuSn+Xb1Wq13Kn8oVzk6vvl7uTNqz+s3tr3X4NKpZKLkd9wX/In8p7Vz1y91B84mDLIq98r73/swrgevuj7n8jqOP/AoeCf8uHfP4vk/XKRP/COHvurx2bd6hxYnRuPveex12Mj8AP/1+po/5B3/jgtKI89zcdWzX/3IWq1+gcOHYM/n89X3/D93/XDb/MHzvzv/4TVOSkjPJ/P19bWiBU/qYBVr9edTqdarVYoFB6P5+HDh/y+1Wr95V/+ZT6fVyqVb7zxhsvl0uv1vV6v3+/PZjO9Xm+xWEaj0Ww2k8mn1+ttNptGo5nP5/P5fDqdKpVKi8WiUCh4p0ajmU6nw+FQp9OZTCalUtnr9SaTyWKxmM1m8/lcpVJZLBaj0TifzyeTyXg81mg0DodDqVSOx+PJZKJWq3U63XQ6HY/Hs9lsNptZrVaDwTCZTHQ6nVarVSqV0+lUpVKNx+P5fM57VCqVRqOx2+0qlarVaqlUKrPZzBD3+32DwbBYLBaLxXQ6XSwWdru91WpNp1OtVqtSqfhY4sJkMuEWlsvleDxWKpUGg8FsNo/H43q9rtVqtVot02W5XGo0mslk0u/3WdiMhlqtttvti8WCW5vNZvJOtVqt1WpnsxkDshoj9Hq90WgcjUb9fl+v18/nc6VSabPZptNpu922Wq1Wq3U8Hi+XS7hIjUbDz8vlUq/Xcz1ardbpdPK20Wg0nU71ej03PpvN7HY7Y871Mx9MJhO3qdVq1Wo1Y86C0ev1/X5fp9PpdDpuhCvniWi12k6ns1wu1Wq1RqNRq9XT6XQ0GqlUKj58NptZLJbBYKBWq2XkGSitVmsymWazWb/fZ6rwCRqNhss2GAxEw8lkolKp+JmB4jIUCoXRaFSpVKPRaD6fLxYLrVbLePIQeRD87WPLmPnMhzMIDJFssbIlMK+4l9W9avXZre7HvIHfyG7NizHh2xkHjUbDxOM6uTv+arlcVqvV0WjEVOSB8hXz+dxut4fD4Xq93uv1JGzxmatb+CoyWL1Hvo5farVag8Eg37v6f5fLpU6nM5vNi8Wi1+uNx2OWXrFYvHXr1tbW1k8wYDFvGM3BYGA0Gvm9z+f7zGc+w88f+MAHwuHwM888o9Fo7t+///DhQ41Gs7a2RiiRCc1UU6lURKv5fL5cLp1Op9frVSqV5+fnmUyG0GaxWBKJxHK5LBaLpVJJot5isdDr9aFQyGw2t9vtw8NDo9H47LPPMnuYJT6fT6lUHh8fD4fDUqnk9XqvXLnChDYYDHq9XqlUGo3GZrNZKBSKxeJwOLTZbDabbX19PRqNXlxcDIfD9fX1bDbLzANFGo3G4XBYqVSi0WipVOp2u7PZrFQqbW5uOhyOxWJhsVi63W69Xi+Xy4FAgMWvUCjW19eVSuXDhw8NBoPVas3lcnq9XqvVGo3Gdrt9cXExn8/9fn+73Z7P5yaTye/3+3y+t99+W6VSGQwGjUaj1WpTqVS/37969epkMimVSqVSiZs1GAxGo3G5XIZCIaVS+ejRo1AopNPpxuOx3W6PxWLlcrnZbIbD4W63q1AozGZzuVzudDp2u73T6YzHY6vV6vV6mVg7OzsEqW63u1wubTYb99hoNGKxGF/U6/UqlQojub+/3+v1Wq1WIpEYDofFYtFoNLKdEEC50+VyOZ/PdTrdxcVFp9PZ3t5OJBLpdHo2m2m1WiJju92eTCaVSkWn0wWDwU6nk0wmG40Gi6Hf7zPvrVar2WxeW1trNpvZbLZWqxmNRq/Xy1Bw2eyU7GfT6VSn01ksFoPBoFAoms0mHxgOhw0GQzqdHgwGw+EwGAyytrvdLkFQp9MZDAaDwcCCNxgMo9GITU6n0/H5bI3cXa/XYydgno/H4+FwyLY3GAzYoXU6HTsToVniLIGDN7A5EWpNJpPJZNLpdEajUafTLRaL4XCoVCrNZrPD4XA6nS6Xy2QyEQsUCsV0Op1MJo8ePbp///5sNptOp/V6fTgcSnwMhUIf/OAHFQrFm2++ORwOGRMWlwRoFhpxnMtmpi0WC41GYzQa2e2YqGazmSuX+KXVavnMUCgUj8fz+fzJyYlarbbZbDqd7u/+7u9WkfUPfKn/+I//+P8SsCaTyRe+8IWXXnrJZrP9xV/8xQsvvPCud73rsfd89rOfZUMIh8PhcNjr9Wq1WrPZ7PF4VCrVYDBwOBwqlarf71erVcV/1RybzSbhYDwem0wmt9vdarVSqRRzJZ1On56ezudzg8HAzLZarfP5vFAo1Ot1hUIxHA7r9Tr4IpfLtdttJj3zLBqN+nw+l8ulUqkKhYLNZjMajblcTq1Wm0ymyWRiMpnMZrNerzcYDL1er9PpDAYDl8sVCATYeLlyMGYmkxmNRtFolMjlcDja7bbT6TSZTK1WS6vVgivBJm6322azEW76/X6j0SCQ5fN5jUZzfHwMltRqtb1ebzAYtNttk8kUDoe1Wq3D4ZhOpx6PZzAYcLVutzsUCgUCAeaQz+fT6/UqlarRaAyHw8lksvpPdlGz2VwqlYrFol6vX19f93q9y+WyUCiUy2W73Q7GNBgMFotlOp3a7XaXy+Vyucbj8WAwIBItFotOp6PRaKxWq91un06nxDufz6fT6RqNRjab7ff7drvdZrOxP9lstmazqVariVnlchlE4HK5JpNJo9HweDxKpbLb7YKPfD7ffD5n9EwmU7FYtFqtg8Gg2+1yR3wa4YDtQaFQcC8Wi6VcLrfbbdaGz+fjClutFpvHYDBYLBaj0YjP12g0/HI0GikUClKSdrs9Ho/ZVOx2O5Gl0+kwN1iZ8ljVajWjbbFYmIeAazYztVrNJ4OGeAqszOFwCJDnMlj5qzmvwHNiH0uDNxDO2Kcnk0m3251Op2az2Ww2E8uMRiMIjhvp9Xp37ty5e/fufD4fDoflcnk0Gglwi8ViH/nIRyaTyXe+8x3wl0qlEsgmAQsUTELDD1yYRqMBbfCsmQkENaVSqdFo+EDunTVer9fb7TYrt16vHx8fHx4e/s7v/I7T6fwJBiyXy/Xw4cMvfvGL3/jGN/r9/h/90R+ZzebH3vPKK684nU6lUtnv9wOBQCQSYZI1m82Liwvu5PDw0GAwxOPxZrMJUmOwDAYDD16lUoVCoVgsZjabNRoNGwj7+WAwGI/Ho9HIaDSGQiGGQ7DYYrHI5/NANmIWnzabzRwOh8/nm81mp6endrs9EAhwMTxRHoNWqz09PR0Ohzwkm81mNpun06larSYDUigUtVrt4uLC7XaTSkSjUW7WZDKRw7J0HQ4Hv6lWq1qt1m63OxwOs9msVqvNZnO9XpdlYLVa/X5/r9fL5XKDwUClUnm9XofDYbVa9Xo9U7DT6bBih8Mh8Vev17vdbn6wWq1OpzMQCBDfiZVWqxUqKhKJNBqNTCbTarXm83kkEjEYDMwtoASpKFjd5XKxnPr9/mAwAA4Ph8PRaKTT6ZijrD0QR7PZ1Ol0CoWCqAdes9vtki6RP7KACY7knoFAYLFY8C3T6dRisZRKpVqt5nA4AGLL5bLb7YKFO50Ot6bT6XK5nEKhsNlsVqtVqVSaTKZ6vT4YDMAskUiEm2o0Gi6XS6fTdTodSAa9Xq/T6XiUrVaLwQH9tdttFpjk+yAsggIJ12QyIaVoNBqTyQQkLpMHrgAAKPcLKpesEJDCtsryJlyS5MISEHbJuKfTKZ8jqTR/TrptMpmsVivDArYiQBDO7t279+jRI2Ym2Ir8RqPRhEKhl19+eTAYvPbaa/P5nGnPNWj+6yXZN2Mi0QqQpdFolEqlTqdzOp0ej0en0/F7voJ4x8fyXzA7w5LL5R4+fNhsNiuVyic+8YmfbMBSq9W/8Au/kEwmt7a2PvnJT7rd7u9/zyuvvDIYDPx+fyAQyGazt2/fhs1hHV67dq3T6QSDwWAwuFgsrFYrq3o2m5Gc1+t1okyv1zOZTKFQaLlcttttKAyXy2W329n5dTpdv9+fTCahUIhE0mQydbvdQqHQarWUSuXu7u7u7q5arT48PCSXUavVgUDAYrHUajWn08kC0Gq1rVaLmeH3+8fj8cnJyXA4ZP5pNBq9Xq/RaJrNZq1WSyaTKpXq9PS03W6TirJxFYvFcrlssVgcDoderzebza1Wq9frabXaarXabDZns5nNZmu3261Wy2637+7uwv2RLVYqlWQy6XQ6mRO1Wq3X6wElILyKxSLzqVKp1Ot1u91+enqaTqfJowOBAInYdDq12WzJZJKcfX19Xa1WDwYDr9cLh9Xv99n2+/2+VqvV6/UkGna7PRgM1mo1sj+n02m325lqzWaT2cmuADvG8g6HwzxcBooFw4IkeVksFvwwmUyCweBsNhsMBoPBQK/XE4tVKlW73e50OjB64/E4nU4HAgG4D61Wy85E4hkIBNrtdrfbBcsQ/UHrPE2IwtFoxGxhsQ2HQ9JJm83GFUK9gXdANEqlEjSx+jNowmKx8J75fK7Varvd7ng81uv1ALFutwtCUavV8/kcNCdAjCUqFC0vAivvIYiDudgPAFAS2lgU8jYYa4hXIBWpGU+Kr261Wg8ePLi8vGTXaTQaID7IxI2NjQ9+8IPtdvuNN94gdyNEcjHCSE4mE1JdLoYUjxAJehCwD7gDWJCjMKOAsd1ut9vtkiNPp9NerzebzTweTywWS6VSv/mbv+lyuX6CHJZCodDpdM8///wPr3o8//zzgUAglUotl0uPx+P3+3m6JpOJ+TcYDNLpdKPRMBgMyWTS6/VCkLPzLxaLy8tLAHk+nxeKkRkGiga7WiwWWAmGUq/XP3jwwGKx2Gw2r9cLGjo7OyP1AOw0m81EIqHVauv1us/nY2/0er0MZb/fv3HjRrfbff311/V6vcfjIfUgDDWbzU6ns7+/f3x8DA915coVLgy8Bk3DzhaJRGq1WjAYvHr16nQ6nU6nt2/f1ul0Vqu1VqsZDAaYJkJYsVjsdDpra2t+v79WqxHf2eEh16fTaSaT8fl80Wj08vKSB5FOp+/du5dMJsPhsE6n8/v9w+Hw/Py8XC5zg8vlMpFI2O12qJlGo0HwJeIAXobD4XA4HI/H8EHlcvnRo0eJRIIUHsYUREPIWywWcOrQUrFY7PLyEgg2nU59Pp9CoSgUCoPBYHd312KxTCYT2DroFfYthrrX6y0WC6fTyYZktVqJ0WwnZLikcmz4fAuUHxWY4XAIgKXUsFwus9ksWRIrn4UHvAKh6PV6FiG/JEIBjReLBeUd/in3DtJklAjQJpMJQKHT6QaDAbUjYgoDC/0EYSSpIiFjNpsxVsRxuDDKHRRYpI4s1WRwHI+D8CHFGcCgfOlgMDg9Pc3lcjqdjryVa2B8YrHYBz7wgXq9/uabb3Lx4DtwlkqlIiXnOs1mMyUam83GQpNCPDFU8ll2GhJqwJeULPr9PhsMIZgr4VJ/GrKGH0vrpVLZbDYSNAJttVpttVrAVzZ5ZgBoxWQyaTQa4AmReDQaQTwxt5hG5MmyPQJ/+Jzlcnl6erpcLjc3NyORSDQaZSfvdDqFQuHs7GwwGAQCga2trel02mw2+/0+xGqhUDCbzU6nE8JIq9U2m835fP7cc88BWWu1Wr/fN5vNNpstGo1Op9NSqRSLxV5++eVwOFyr1di38/n8+vq6w+GgQmowGGq1Wj6f73a7R0dHW1tbkUjE4XA8/fTTrVZrMpkMBoNHjx5RwSiVSvP5vN/v12q1brdLAmI0Gt1u92g0Ep7l5s2bhUKBxDMcDpfL5Xg8DlGayWQ6nY7f71cqlcFgUKVS5fP52WwWDAaLxaLP52Mi+ny+eDxeq9Wgn3q9Xq/XK5fLcBDNZrNarVLQJBTmcjnIPsg1KBsWnsvlIpsjjxiNRmq1mgc0GAxMJpPT6RwMBvfu3YvH45FIZDabBQKBbrerUqkqlYrNZqOkqNPpyFaGw+FgMODiFQpFp9PhY0mlZeEVi0WSI6/XazAYYCqh9iaTid1uZyWQqrO3QZyPx2OYRNIrnrLEOBgfCQQClPR6PeGA3XE8HoM+WK4kWeSJdrtdilGUcSh2C4FFOGDSEmVAN8BzACl5GTEdkg4uYrlcQp9RP4GPB3PxTjJEAF0qlWo0GnBwXBJRSafTbW5uvve9781kMnfu3CH6EHEMBoPL5fL7/V6v1+Vymc1mYWZYRPV6PZVKgeCAzwQdAB1bF8FINEPMYbPZbLfbIYiAtJVKJZ/PVyqVVqtVr9d/JOn+0whYDPRyuXS5XMvlstVq6XS6UCgUDAaNRiNqBqB1uVwul8u9Xi8YDLbb7VqtViqVYMr0ej0SChYwBCTBy2KxLJfLRqORz+ebzabFYsnlctSbyuVyNptlNcJn2e12j8dTKBQsFsvJyUm73b527ZrX66UMx9RcLpdGo9FiscBzUUt66aWXAC/tdvv4+Hg+n4Nu1Gr10dHRxsbGzs5OJpOhkjWfz//jP/7jueeeSyQSxWJRo9FEo1F23WQyyc1SQHC73efn56vYJ5vNMoM1Gk2r1WItmc3mUCjUarVGoxHrUKVS8eCXy+W1a9eYH8zFUqlEzWE0GvV6PfauZrPpdruj0Wiv17Pb7Wzv8/nc6/VWq9V6vU4aSOmD3Z7F3Gq1qDbW6/VSqQTsV6lU5XKZtUpC53A4YJHUarXH42HoPB4P1T2n05lIJE5PT1OplIBrk8k0HA47nU65XIaRdDgc4XA4nU6zvE9PTx0OB2VBjUZDgGBVsy2NRiO/3x8KhbRarcViqVarPD5YPNCH0+lkF3Q6nUQ6CjUUWIDqcNVkWIBc0TEBuyBVeUm0UqlU4CMSQNGUUAkdDAZ8IEASDAv6UKvVpA6IJ6CrUG+Q9rL++UwiEZ9MrQbYBdBm7wHNMQEgiPmrVqvFxKaIKdej0Wi2trbe8573XF5evv7666QgDocjEAj4/X632424RK1Ws08zQ2q1WrvdBmmazWbyDJPJxDeCy6DMICuYY0BCVutgMGg0GmzGPDiYosFgkM1mITR+9gFLqVT6fD6n0wnBRHCFN33nnXf6/b7f7zcajdVqFX2Q3+/XarV7e3v1ep3cmB2P9KpUKsnuR56cyWQuLi7YA10uF3AsFosplcrbt29Xq9VQKHT9+nXIkfX1dUCQ1+s9PDyczWb5fD4UCvl8vsPDQwBwoVAIBoMWi0U2TGa83+8vlUrr6+usmVKp1Gw2t7a25vN5vV53u93BYLBQKLTb7bW1tWw2+5WvfOWXf/mX9/f3Dw8PYUyhD2CXoY1MJhPsssFgqFarGxsbiUTi4uKChUQYYgNvNpsUHAeDASEe/cRwOCwUCoQzkgKPxwOFMRwO0+k0XL7ZbK5UKmq1OpFIgAugqJ1Op16vb7Va/X5/uVxarVZAO7g9Go2Gw2GgH6QDpaJkMknG3el0er0eWwjsA3IeUdxQYyFcut1uElsYyXA4DPQeDoe1Wo2ELhwOUwZVqVSATaPRSEbGPq9UKjudDjmR0+kkiLDaeViTyQQyCwyCAguSnqTV7XZbLBaCNXuAw+GQgg+4ptvtAjdAHEqlEizMgkSyAOgjwxUBJFGy0Wh0Oh3JdwRtrcIrkikYa1IEqCspgCz+6wWBTSwjWjHOENhsPPxTypGUXPv9PheJ/AIuRafTra+vv+td78pkMqVS6cUXX4xEIoFAgGL9cDhst9vFYhHIU6lUyNMFKnq9XhAxMRGsJ3Jf3gMq5L6EngNC1uv1XC7HWnjw4IFOp/N4PIlE4sqVK6+//joT/mePsHK5XLVaRSrWarVYPwxKPB6fz+fUg9DLFAqFTCbj8XioEjYaDZRsSqWSIvp4PPb5fGq1ular8ST8fr/JZGLsGNlisZjNZnU6ncPhIEF45513YNDIR6xW6/b2NonM0dHRs88+e/PmzTt37pRKJeiSarVqtVpBhcgg/X5/v98/Pz8Ph8Mw+icnJzqdzuVykfio1WreYzabX3zxxQcPHrz22mtPPfXUdDolz3U4HICps7OzcrlstVqLxaLdbkd7MZvNEonE/v4+rDNJNPiRKU5YB3O5XC52S4VCUa1WyXmB3MVisdvt2mw2j8fDAlsulw6Hw+FwZLPZbDa7u7ubyWRQNiBZQIqpVCoRkbISqPc1Gg1CpMvlAvZ3u91isRiJRNhIiVAWiwUZql6vJ7oRmLRabSKRODg4aDQayHTha8rl8nK55NGQj2cyGX7pdDoRMRBEms0mtQU4FAAUNcrZbFatVq9cuUIKicYqHA6r1epCoRAIBKidud1uZAqMJGBKdo5ut8vTNBqNrVZLZH3EAsIfWAYgCfIl6yEgSgwlDAFDyDH5DWGLP5H1THGAKgSwi6+g8kvAXaVoyRP5ZHCAEOTkraICZY2IppqyOO/U6XTb29toj/b29t773vcS0TqdTiqVKpVKkJLChRkMBofDQTbHbsHHSgiGayZUERAltSSqEs6IXPl8nkcsgBTF3L1798gtfiST9X+tEv44r3/8x38EFoFrms0mCm+73Z5MJmFk8/l8o9GAWWg0GjzyaDQ6HA5PT097vR6jw9xaX18fDAaVSsVkMgUCAbvdbjKZgAkXFxfFYrHdbuv1+mAwGAgE3G43uq3FYuH3+61Wa6FQyGazhUJB2jvYwJ1Op8/nIyKQDS0WC5IFpgjIFnV7vV4Ph8Nut5vbGQ6HFCKpZ7EeNBoNRRP+CQBhyanVaqEtWZnr6+uRSAR5YaVS6ff7hCS+EeRMyEilUiqVCq1Ao9GA5mDGI2yhGCeSYo/HAxtoMpmgn7xeL4UOKuKgUcAvC1Kr1a6vr3s8HvAIrARQYjQaOZ1Oo9E4Ho/dbjfSEPJToJAkX8xpk8mEwBX+i0WORKDX6zUaDfAymgDocHJMIAPPndrlYDBACyJa6kQiAWSIRCLdbpebRUJB3QNRnt/vZ9kQ6VBLER14lEajEZmlyWQirGu1Wq/XS0BxOp0ASYvF4vP5kOaB7IgabHuiTOQuSNZICwh5xCZ+I/BEtAU8ODKsx4qD0r/FLwHd9DxIoZAnLtkfGaK0aoD7TCbT/v7+e9/73kAgQHkhm83euXPn1q1bd+/eRT0n4i/qnk6nE26k0WgUCoVKpULMJRaLjF4U/MRNUWwQ+Iin5XK5UqkQy0DTYHY+gQLOJz/5SXm+P8uU8ObNm+FweDQa1Wq1eDwOdWexWN5+++1UKiV0Hbq+RqMxm83i8XixWESGw67S7XapIWYyGY1Gs7m52el0Dg4OQPsgNbY1CTFut7vX62Wz2cViwUbB8x6Px2y5TqeTLb3b7d65c+fGjRu7u7tHR0csG41GAx62WCz9fl+j0QSDwXK5fHp6qtfrLy4uksmkWq2Gd+v1ehTayUegQhBG+ny+brfLsy8UCtA9aCCOjo4ikYjT6RyNRpeXl8Cu3d3dBw8eIO1BCzKdTp1OZ6FQ2N7ejsfjJycnUL9+v5/VRVcTYAqOhq+AfxGtk9vtBhHQt9Xr9RDfG43Gy8tLm80m2yb3SDkC7aVWq/V4PDDWxGh+ICNbLpfBYLDVanW7XWT9hAMWM0V6BFZkPaSNLpfr7OyMsIISmupSsViMx+NIPRHQz+dzi8UCf2yxWOCw+ASgHHpdt9u9WCxyuVwoFBJaR8qCbISMv1KpLJVKHo+HHYWci9Wu1WoRKhNwIXRCoRAxglo28ZTVCCBSq9UseIqDQDkpn4FGUckDLihcsPIBKcjWRqMRD4hkahW5cEfob4XYIsBBtxPU+CfBgk9wu93b29t7e3s8wdu3b5+entZqNelqYp4AGHlYbOTVarXT6bAAjUYj9X1YM8lmRBEq+/pqby8tdNTT+V88YmmE+nE6E3/aAavRaABVYEOYYbVarVqtsusyC202W6lUmk6n+/v7Npvt6OiIRT6dTilvbW5ush8qFIp79+5J9CH1YxmQjDDzkDtJ/6Db7bbb7c1m0+FwoE8RJZHT6VwsFhcXF9Bt4PZUKjUYDEKhEJtqr9ezWq2BQEAeBhfA7KR2yR4ru+jZ2Rk1x1arNRwOM5nMdDr1+/3FYtHpdEaj0Z2dnVarVSqVSPpQpft8PhAQiCwcDmcymYcPH45Go+Fw6PV6zWbzYDBotVrRaJR9EjHLfD6vVCoej4fmD4gevgumHzoGRr/dblsslng8joLMZDKB3QT/0xUUCoXId6gbEqADgUA0GoXqFsEUqRxChGQyCb9Wr9dJ4QkxWq22UqmQbNKF6vf70+l0rVZDKMByrVQqk8nE6/VSKuFmUQVTVmblS9pFgQk5C8iOxAqMBiCyWq2TyQTBB9AJuoqWA5o6qVHEYjHZJIi56FppPJCsTSIFq5QCHxcAJOTaGHk+mRqFFLVRTkGSSsskMwoISTiAjCckgShZ80KKEdQIWOSJEqr8fv/W1tb29nYwGFwul2+99dY777xD1VX+UJ4jfLxCoQCJCwhiv/f7/TabTcT6Eqq4fYLpah81g8Mc4KEgx0GG/Vho+zkKWA/SqTIAACAASURBVJDcm5ub7XY7n8/Ti3d8fHxwcEBy5PP5qE0olcpwOMwMOz4+Zlyoc3u93u3t7bOzs3a7TTsLTR7Us5jZNpsNiqRYLJ6fn4PUVCrV9vb2Cy+80O/3YRDz+bzFYnG73YwjpZCzs7OnnnrK5/MhnqLWQwkfSrjf7z98+DAWi1H84qMoM1cqFTQH0hESjUa9Xi91A/Cdz+djZ6YdhJpDOp1mjlLV2t3dDYfDdMmANeBTaXMhS6pUKt1ul2YAh8PRarWo2ZVKJeZEu93e29tDkoc+iBjKpxmNxrW1NTRo7M8ejycajY7H43e/+93k1KRgRC7aA5bLJa0wCN8Jo6SBjLlGoyEaktcMBgO3293pdABc6OBJGURMgNyUDi2+pdfr0UaHPCWXy5E1q1Qq6gMMQqvVonCJ7JNiJQJ6FhsxCKk6kkXkIFCofGa1WiVTppYHTiSMgpsI1pTDWq0WOtvhcAhTiY6UoEn9i38CpYX/kpiCdMZqtYq5BXJT7cpL5CCsXiSgInknJYcMIpeUcAlCIYLwvWzDlFyTyaTD4ZhMJrdu3To6OkLFwufzXxFdww90u11SOe6LWOlwOCKRCHNJCHgClpRTJXCvNt73+32RUpPPEq1WHTX4nB9oEfGzCVjE7y996UvT6ZS87PXXX4cUUKlUDodDOIVut1upVMilYXMZnVAotL29fXJygkCZVN/tdne7XcipQCAg09RoNF67di0Wi83ncz52sVhAJcZiMeBPt9uF7KhWq/1+3+FwrK2tqVSqu3fvBgKBQCBA/2AwGBwOh1SUAAKHh4d7e3vNZjOVSjmdzlAoFIlEUqkUUsZCoYA4HvBC77vb7a5Wq8RT+P5Op9PpdIA5FApADcFgUKQ98Xj8mWeeQT9F8LJYLH6///LyEmVsPp+nHprL5VQqVTAYVKvVYBw6lrHHQMqv0+kAPqAeMCNrvtFo0J5Sr9e9Xq/P56MsQGrJkMJQiHECRVX+nEItEgGQJik5EcRoNDqdzmazyYZPQ4bVanW73Wq1OpPJ9Ho9t9udTCYvLy/pXoYcgCODaKeHke6ZcDhMWzh8EOGeZJMEmfBqt9vz+Tz1BCImIuRGoyEtMmazWTooKOQRAqbTKWQZgYx+8lgsZrVaPR4Pyw9+h1Z5dP8EDgK0dN6AHfr9Po8VKkej0VCJA86gVCCCCw0EeUoLOtVGSEbAl0gcVuEJ2k4yA76FHrLj42OGjr2ZuUTxgTEBxzGAhCdySYmP9HvRqk1YBJetWs2sCkf5KzYAafOExkU1JuFMyK/HrKJ+xgGLHSaZTEKmUJ/e3t4G56PmaLVa5+fn6Gs2NjakcxJxkFqtvn///vn5ObW2+XwOF9NsNtl7sXOAMKIpn/RzuVx+85vfZE60222ETn6/n7SckQoEAuvr6/l8vlAojEajfD6/tbXldDpJGGE3STO3trboj6ENfTAY9Pv9cDh8/fp1ZhWojbmVTqcjkQh2Nwjog8FgtVotl8sUraSlq1QqMdtYDLFYbG1trd/vX1xc0DdrMpk6nc7p6Wk0GoVbgVEWSymAFXk30gHRmiKQoSEecoc9gAnt8XgCgUClUkkkEkyp+XyOQLfZbAIBYrEY3VFAS8lK3G63kMcw+gqFghYC8AJ6TnguQqesWKpm0HO9Xm9jY0OKROg52OSIX5L1sGJhslfbOSEx9Xo9XZAwj/P5vFgsIpjSaDSkyRTjAbkojAARBoNBYh9AABJQo9HkcjlqO5JdUkhlGlPxNJvNNKvzCWAoYBr5rFqthp8FGTEmfBpmGNP/esENsT3wTp4XRRX5v6uVOLJLgWnwmEgrEIugAZJmQH4mYImelhcBBYTFluDz+bxeL7IVES5IfBFXH/HnIWei/AdYE4E7gVJw2aq3mrSF/1wELIAidT24KjI4t9tNi2+j0UDgR+M+NJbT6STjYOmqVKrd3d1Op8PWFAwGz8/PKTOze1OYIL2v1+tnZ2ekouAOo9HYaDRyuVylUoElGQ6HsVjs2rVrAKhkMrmzswMB0W63Eexms9lQKETLNBus2WzudDrXr19vt9sPHjy4ffs2X4riBpYB6MRsi8fj1LMR79jtdlTCCP0VCsW1a9fC4XA2mwV10wRHnLp9+3Y4HA4EAgaDAT57PB4ze1KpVLlc5hnPZjOv15tMJiuVCmoAOuABm8Q7Lob5hz6rVqux7PFFuLy8ZNE6HA4auZ1OZ6PRaDab6+vrgUCAHQXzBpIUwj2QrdPpQLEDwaCrpCHOZrOJbw9zlFw+FAqRS9KZRNuDNK8RqqCxsVIAzlBhQCUEv9lut0EKcHZUS1kqYggFmU1YgV0+OTmhlRoYWK/Xq9WqdDVDccK+g9NZY0glqCOTuvr9frq+2+02OwFYktVLKdZutxNHVo1iOp0OelTmP/+XkAFE5ZpFuiXthFKSgyAT0wVuX/ofpf5IDOVzUCFIc5sANAma4vnlcDiQXBHgvj9aSduNDDVMbr/fZ0+VFiKwlRTlH/PdFJHHj0Nm/ZQ4rGq1Cu1KL+5sNjs8POx2uwwED4ldC1k5TAeKB5KF1a2Prg4IEdzIwFAOhwOHGeoRXq+3Xq+3Wi1ILtaG1+slVVGr1XjdHB8fZzIZoBaNewaDIZFIkKAh78Tjpd/vu93ut956K5FI7OzsoKXKZDIIwdmv1tfXoauazeZkMqExkAU8HA4jkQhCSoRIer2+UChsbm5y46jJwFkqlcrj8WSz2WAwKNgBwgUxDktXpVIBvq5evUr1ADMvq9VKpUKv15OQSm85vj2RSASxAl1KlMOR6YdCISS+Xq/34uLi/Pwc0Hf//v2Liwu73W42m2lhGY1GsDMgfwpqYAfyHaRhSMnJMelYEObO6XQipifsUpBhuZKsEaeAHqhngTPL5ZLeUmhsMKakG2hKRKTOR0HYEbwI5TQ2qtVq5NeQgwQXNICACJgXqeXxopq2sbEhgiwCAUw/18Dys9vtXJW4MxKaWeSAQeAbaSlxn8IRHyvUFVFDUCf8OoEDbb1In8TUhcDEBcDxrdrvifwFpCkIjr4clokEFGLKqomg0GGyzQwGA6HYqYRSnVg1IHysIkcYJXn60W4LPwUd1uc+9zmLxcI6icVihULh4OAAtVSn0xGdCFId2vRI9AgHsnWzUSgUCnZmjUZTq9UQWNJaOBgMDg8PxaODIv1gMGg2m0ajsdPpeDweGv2Y348ePYLrJaFD93x8fPzo0aNqtUozTSaTgZuAXmWLns/nsVgM2pilTvRkCUENDIdDKFjAGl1HyMEJCjAL9ACtr68DVRwOR7FYxOsuFAqxYc5mM5auZIjQXiie/H4/mxsUL7hSo9FQIyeOwKTQnRcMBmmgJy5otVpaoAEX9Xrd4XDggQEyZXBoypefEW3g7UN4gjFhdoJ6IHQFCPAVkNa4iSFGA4sRvjudDg2J3LXwKdJVS1pEfKfNiyAlux2cN3woFDsRipyUh4jQD70x9XWoTGmQpDxC1iluOc1mUzxzWq1WNptlVTM31Go1lofSfwOkYt/l2VHFY6CA0kQfiKdVj1wAGkQBxBPXBoRXrby4faANYUhcXiWaiBkxQXaV7Sb2MUX5Ur1ej/BdPEs1Ky+pigp05Tdi41GtVmkaZ4tFUPKYh+rqDzwUp9MZDodLpdJv//Zv/2TtZX6c12c/+9lOpxOLxSKRyNHRUafT8fl8qAco9KBzg24QTw8qwdDDDCjc7c7OjsvlYnIgSmTf63a7nU6H8jzNgDw8lCN2ux1yp1gsit69UqloNJrd3V0MD1cnJcogJCS5XC6Xy0EJcanNZtPlcpF60M6i0WiSySQNJRTCWZk0A5J6sHLYhBuNBs0QDJHT6XS73alUionOI6dRrlqtUi4gj6jVargAIjXAagYhAjAKSEV1zOv1er3eaDSKxymTWNRn8FPcCIkSkQiTz2KxqNVqSWm5bKPRGAwG+Tq9Xk9jB9VJcXQDpDCDxWFZrJChQhgiEAEKA6m7gWfFF4XnTqhihiB9QMHABs7XyZpEXkeOBvfENGi1WgBVYuhwOIQ4x2IIjhIMQnmU4EvOyx8KCu50Om+99Van09na2qI0TFMkFoyrhlZ8NUGchJQ7RZi2traG2JiAxddxL2TxRAEiHX9O4oa8S4AS8VEc9QgEQDDx5BIvqtVoxUIjueGCkbnQSS6mfcQsKeStRhyCKc+6Wq1Wq1WypeFwKPblkuU9ZkgNE+pyuWKxWDAYdDgcZ2dnv/Vbv/XD7WV+SgErEolsbGxQqLZardLuT+c3RKnUL0jsQShEMe5foVBsb28HAoGzszNQvcBdqjnQDcQ1ceaGRAgGgx6PJ5VKQQ9TeUwkElBCCBQIeYwsiU8ul0O4SB4eCoVk6wDFnJ2dYXbOXETLg+AFvgZ6HijBbGPxl0olpLPI94kXwGm0P6w9QgkqSgAjJWoWPOktCwwBPRkB0x17FmAgOnugK91RkIOAQZvNhteohIlEIqHX61GxsmeAxdBzM2Llcplv4WmCUETtzaMBZRABRbZODoLMEj6e3RvLefIC0SJI2oKzFZhCIpeQCcAHojyyKbASJTmIZ3JDoqc4fBL3EV4YjUabzUb+iNs1AZE3MGgqlYpqNV2u1WqVpjGMw9Bti6mpRC7Jp+Ce9Xq91+uFoUM9I2o+rE2kmxK6kPEU50/anoFR4lYiNDzXQOhc5YxWMZFk2eILyC4ei8XY11fNsCRgyQEW8mkCWvP5PK11gEeEb48x66vnelAFCoVC4XAYQwiz2Xx0dPSxj33sJ+6H9aOJfY1md3cXQTlt35QLxXtAmuYlYzcajZubm2QoQFxiv0KhuHXrFkkf+RfrjT3Z6XQWi0UmNPuh2AwgoYDFJALClNnt9o2NDTKyXq9XKBRkIyUJX19f7/V6lMDhF/gZETZ9pIQq5ELFYvH09HRnZ4f+LO602+1iWI7+ELo9lUp1u11aYZBfAfFgVbDcrtVqXq+XYh8By2g0lkol3G8ohopcC8bNarUmk0m9Xl+pVBDoD4dDimK0RjKbUWyKEp3Zg5Lg4ODg4ODgmWee0Wq1mUxmMBiwc9TrdZIUynBsoXwpIALhLrpwrorn0mg0Go1GJBIBUKPzwn0cDwNilt1u59Mon0HVAQGQekHtiYEX1I8cOMLXMUSS5tTrdUgDu90OaUDzELa8RLpms4lGAR8Vup34djFswTN+Op3WajUKRLFYjE1FTLRlm4RCRdGOco1rABaBhW02G1syCIVkkAjl9/shKKHGVo1Gmfmsf3YREdlLJ+Pq0R7EstUDq4g4qBZWra88Hg9yZahxwqK8X6Df6nkZhLBGo1GpVMTLl/km1JjoziR5ZBenEx4RH5yPuGv9XFQJ6SC1WCx476OyYb/CMZLnysxzuVwbGxtgbIKaVqul35hTebAfgBeALUL8gn4XqCKUJEw8RuawiVarFU1pNps9ODhot9vhcBh9+e7uLo40eOb1+/2zs7NnnnlGrVZTlAR8uVwuHvO1a9cY8fX1dbiY0Wh0cXGB9XM6nUYmvlwuk8mk9CJcXl6iIEf16vF40un0w4cPZ7PZtWvXELhKTY2Nl/ZmutvBUDDl9I2r1WqsoyhUFYtF3PWACYLD6e+DiYOYc7vdMFmsw0Qigbno5eVlKpWKRCI6na5UKvFQgLEsNqCWkETceKVSKRQKeL0jx8c2j5Il8i60lwQgmq4grUkYkU1RvrTb7dQECEmsENzjsA9aPYJFlgcYStqAkR1A7SNMQyUjZX4JoIhsPR4PHjV0a2k0Gky08QJjTco+Ua/XSX/YzKT6CUIkaRC9JagKFgISGmsatVodiUTwQYN/NJlM/CxmxIAm4DBsFwFoNVpJBkdEE/uEx9I6LhUgxmw0m81+v58hEkkU4/OYqlOMniUMgT9gdQXLrxLqq7JSdjuXy+Xz+WgspWq0GlJ/LmQN0+n0X//1X5H2b21teTweDN2Jysg+SQpcLhdqhpOTEzpR1Go13TDj8TiVSon8l//FJsbEAmcxvlKrgtpEA03xtVwuw+uTyMCewiUdHR3RlhGJRO7fvx8IBPb29kgqxTWQFu7FYnF2duZyua5cuXJ+fs4JOnT8FotFHKDA/wcHBx6PBzUdl4qTJ0oFqDrom0QiwZohS4XMhu3Ck3c4HO7t7dF9enFxkU6nPR7P+vp6LBarVCoi19BoNJwkRM4IH9ztdiG22Ehp7ADbMuxYLyCnFPtHiOpQKITNizixATBx5hGYA18jVAs2ZxBqsJbMacoFwAeOOKLgW6vVoGbAO1LPAgTxh+wTkAOgFdCo0WiUrl1iipj8Sg5F8y0EUDabhaahXklaPZvNcFvDo0ZkliJ+Rpsmtp/pdJoVuErTQOFDPFFig0x0uVzie0NagNCPDZUIy8dCEfAeUZ+uRh/ACDUWtmfpcKayKSdTiAxV4ou4PIuECns46XmU1pzVaCX9N6v8FxlAuVwGZFANfOzg99XWJYR7gUCAiMwtiBv1jxmtfnoIy2g03rx5M5FI4MpGSx0mRHQLUmJAtnPnzp1MJoNiE4uC4XB4eXnJamGfZ4KOx+NarYZ/ebPZzGQy5CNy6BueDcPhEKsZtNEQ5LT+UKmZTqfb29uVSiWVSmUymVAotLu7OxqNkskkIqO1tTUUWGytpHJUEpkuFxcX+/v7Pp+PBm+K2Vi2k+rSvhMOh1OpFMQWBUqTyZROp5HCFovFo6Mj2oPorZtOp6Ce+XyOvRm6IQpkzWbz3r17lB0DgQCieZfLdXJyolQqt7a2FotFqVRKJBLb29usEJHMMGNgi0mr5eQ+YBF6cWI6Y0hazSoiT6dngMI/5JFosmlaoCeJm2XwOc2MGI37WDgcpv9JThgCjNBeTnYm6xlqnH0LykycP9kGOHBE/IIxX6ZUKqeKITSlKkKODGDUaDQXFxeElW63i20k+IU+cDF7YfSofT8WsHCeICgwFbE843gB0JnZbBYbPIyMxDUURTGjxLlBxESGl3IH+SPN9sQOyTdXgwsRCmgpLoCrB0NwGhjjIIbIq8S8xBH+Sv7XYDAoFoukKUwM0sDHTsAVZt1isbBTihcIm5+gvx/z4NifUsBSq9W/+Iu/6PP5zs/P8ZnxeDxut3tjY8Pr9eZyOQ6h83q9k8nkjTfeaLfbmIu7XK7pdJrNZinuxONxiCEOKaGMQkTLZDLC6JdKJfAXGf7W1hZkNhYOEMaTyeTGjRu5XA61kc/nCwQC1ObpLMdwTqvVZrNZWHxo6dFoBC0Sj8e5Ekr4CBFMJpPdbn/ppZfu3r2L1ZdKpXrw4IHf79/b28vn8/V6fX19vVKpHB8fg7op4RWLxcvLS4oDQGXQnHRXUO+jCiMnm/p8vnA4jLMYXD7wkzSBQMNxFVhKIVin3Ak/OJ/PVwUW1IYATVDm6Lk6nQ4FRDkHFw6LyCuWwUQu8vF+v9/v9yENg8EgZ4sIIyO4ADdhBLE45OGjgDxV4iO4hkxNGlOAV2AuMho5I5Yo1u12hZdhacFnp1Ip1jM98yieGGoqIZgdg0doWqK5Gi6VzkpoDbGakrNsEZdhiCSlYaIkVBHOi2ycdGiudrrA5TEUjJU0ErIoGAoAEUTb6rHPAGqeiAA9RkCkm1wnfj5y2o2cvSoRjVCy+k8GDZ9xODu2c2oCzJnVY1/lND/oKqgACY6rStTVn3/2OqxXXnmF5hIcL3d2dgKBwP7+vsFgePDgwcOHD6GuG43G7du3ebo0dhCV4GvQIlcqFaEnINQ58A4VAhGNSQBAw75SGrJExkJ8nM1mZ2dnHHNkNBrfeeeds7MzPpmCGjk5S+Ls7AyBPh9lsVjkhC42z06nYzKZYM3lLExiKE41fObOzg6oHk69VqvRJEhSCQWm0Wj29/dZdTxsTu7b3NwslUqZTGZvbw9ogMkq5oI4RnJEGJTfeDwmjEJmwzJw8KJSqfR6vSxUXBDAdGx9bN2ij6f5BmRBakywloNhSNJ5XiIplKOx5BRYlhOPALUKv5EzC6iHoF+HtpNa4aoHMQGLrJmY4nK5HA4HRT0OvkTAGQgEyFmIoZjQc4YYTILZbMYDAw8GEkMyO9JwfI2kAsuJuYQP5gaxRlQXcrgWBKuI/sUdAeNvhpqdVTorpMEIjRizWg4tp7BDwJJjtKHMyONoql89gE4uAOy8epYEUmcglbBLFCvkAFcRi8iB27SLUFWHfQang/phBghAkB64AAhjpV55rdYueb737t37jd/4jZ+9rOFzn/scayYUCm1sbGB5cXJy8sYbb9RqtUQisbm5mclkMEqnCQ5DDGgvn8/XbrdppGANE27YOkAQSIRcLheHHrPYIDuQwLFcrVYrGQon2cXjcZqKr1+/3u1233rrLQhmUtHVtDwYDOI3Qvt0rVbDFQi5tsVi4VRkqlE0IcKbsPXR+SiHa/p8PkxjWLS1Wo0DjRHTVqvVdDrNhM7lctTITk9PkWK4XK533nmHGc+ZWmdnZ0RPFA/pdBoyS6Q9iNH5jcViQcAp8iWqk+KTBYwiN2dbloRLGtAoYlINAIaIw5EYPyG8kDIiuRVLFBGsHP0kXbtkfERALBkk2WRCizBVfFRI+jguhMFcLBbgR1qmsfOXw4rJjCiwYrJKIQKqAZUDVhbALjmTmTgl7Syrrb9yHh05sgAl6dPi9ikyki6gg0EP4XK55EBW9CiLxQL/DKYZZSVS2lUpP1/H/GTNk/My5qs1d+HRAYDMFmnQYSRJ1tgDVg+mFwRE02uxWKTOzvyhggF6Jc4yyT0eTzKZ5KQVrlwOsl496FAavLiMu3fv/rwErEQiga4SSiWTyRwdHeEpCqcL5I7H46FQ6ObNm7DLyAKwW2FasNWgOMXpAYpXeqGhPNip6DSkYi0H89DChlqSdTscDre3twuFwjvvvGO32yORCIvzwYMHTBTqYuih2u02h3GhnOIcnZOTk2AwiFc6ZXIcIEDLqFWpbObzeYBbp9NpNpskCNSbsFgLBoM3b96Mx+OCLqmmAS4AXC+88EKtVlMqlR6PZ29vT6/Xl0qlfD7f7/fX1taQbnFoGKdSe71eEgeWEwwR+6f4hXPaKwuMIZVmMQ7ggm9mzaNlx5mANnJxmJTPBGKQI7OuUIRyHCzLGFGYSOHFQZ9VgRRLanBQ+7L/Iw1ZLBZ7e3tgMdSwtDfz9Pk0ljGWZ/RIsN6w22bhseQajYYkthLdVg8ilJYMYA5hFKqbf+JZygqXY4RozGy1WqAS0lJ4WLYZegnZS1DVoZMQRgkzL/FFYCbAeUm4lLOXpbVQjOfRQLAJMQ8BO2JiA80ETSYM12pTJ1OUY5xg5cDvMG4wd+w9uLxFo1Fcs8EKkm/yX34gZommVKvV3rlz59d//dd/9josJuLdu3ftdvtTTz1FlymWoRzTQqGEZxaNRpfL5be+9S3cOy8vL9kqeX4kLxT+2fo4xDibzUoTA5stMwb0SyuGWq1eW1tj5ajVahBTMBiMRCIk+R6PhwYUpK3BYJB1Qju0y+WipBgKhdRqdSqVQopBztJqtbid8/NzaAjsHK1W6+bmZjAYTKfTJpNpY2MDkwC9Xp9MJsXuFjdxHna5XEZkALuUSqVsNtvVq1exAF4ul/F4/Fd+5Ve+8Y1vNJtNTq948cUXLy4uXn311Waz+eKLL6Ko6PV6HGuII7vFYslms0qlEqcUMhG3272qPocOq9VqjUYDMRdQUeAk6QnnVgjhJYcAixZR7MDH43E+n+esaWR04p0Co0wfBtsMxlhoUDkSjTM7+FiyMNHrYXYMqt3Y2CiXyyAOMZaLRqNoKZCGyZHxhBvgwKrSSmgXQpikKpQs2+02fg+Y1UhHnrQfiQepw+EgzsIDsBTpD6WgQbsoxs00/yNBYgILkKQBiOvkGgBTHBeCmoTPJHJxijhOYVLmI66BYVdTMGG4yOBwCkO/DbElxwiwW3AaMeoWtVpdLBbhQ1ddAKVEZrFYHuulk8RzVYMq0O9/ZOD300BY//AP/3B2dra5ufm+970vlUodHx9zuBYSFbwHms1mMBjc2dmpVqvHx8dut9tkMt25c6dWq3k8HlL9zc1N2kRgzXl+5OR2ux2CiclKc79USXq9Hna3sNrY9ZEw7u3tkeT7/X5YM6QSHCHDOvT7/cFgkDO11tbWoIp4qKzbYDAIVUwMxUZqMBhQ9CUlhAaKRqMc04BlHSiJ8v/p6enJyQlocTQaYQvpcDiUSuXR0RGnjeJc3Ov1EolEKBTKZDLSCcDgoMni8qRJxWKxAASoNsJhcTL2+fk5pq9MJrAVHT/FYhFugsnN+gTb8mlYl0AbQWCJxQJsFxGBNhqkGMVi0Wq12u12sQ9itwc/AmxZb61Wq1KpcLr1YwcZ0JnElsDZ1Jubm7SmwzpDYFGMI3QC5VhgYEPSXmlUFM9YvkiSFG4EzkhUXeTIvF9EDxwJzKYrncY86/F4jJ6e883QIaJr4+gN/pfH44EXA8wS8kTWD47jsBmVSuV2u6WBGW4LrxEoYII7+w0/4MsuilP5p8vl8ng8DoeDmePz+ahuo61lJmDlDslVLBbz+bzUfIk4BoMhHA4nEgk064yY5ICgOfEpFNQm4yx90bdv3/6RCOu/DViLxeLw8PCrX/1qNpuloQzF45e//GXa9wF7/X7/y1/+8q1btzhV5b87hGJ9ff1DH/pQNpt98OBBv99/5pln1tbW8BUpFApWq/XGjRtXr14tl8tnZ2fY7H79619XKBRbW1u0JSeTSU7ZkZ51KmJwHIi5cVyTXnasu0GwsBJY3JAJoodaX18H3DWbzVAotLa2VqvV0DQxz+g4o9plNptxFxmNRoi/oXjx86M8LAwOCm9WEWYdpE4I57jHarWK9Ik/PD8/v3v3rt/vv3r1Kqcr1mo1JjfXj1YLF63d3d3ZbHZwcLBYLL773e9iBRGPxxE6MU2hRSlIAdHJCNg58asiOpOtcIVowWhppKSAJqtUKtH7RiWOgpHFYhFhymqb6+pkJUm3Wq2sCwNtngAAIABJREFUEwQNUoES42CK3FwGtrEIxIkpxDL8/OLxuF6vbzQafr+fHUWhUBAN0UzQ9oC4P51OazQaLAPh0YkFFE/ECJ/uZQAL+SwvmiKYYMBDrl/yU0IG8A0IiY5HPKCZtNRGAIDUKND6I/50uVxwBWjoCI6osUiogUj0mREUGBbqP263e29vj5o1I4xRJVRGIpFADCT8BvkjbiXhcJhbeOGFF6husYlyjk6v1xNR98nJCVISpHwokGkGpH9DzrIWPEUoX21FlPMyRD0vVcgfJ2D9tynhaDT65je/eevWrbfeeuu1117T6/WpVOr3fu/3nn322Uwm85WvfOVv/uZvlsvlH/7hH+L38s///M+f+cxnNjc3f+BZ9i+99BKHOMViMc5o+e53v2uxWOgxdLlc9Xr9//2//3d5eRmNRhuNxp07d/R6PeeDxmIxhULxzW9+k+dKVCJTw3mHLhOU7hyExfwjYB0dHXm9XrqCOMIA1dLOzg6nqNvtdiYimR1pOROdldPr9QKBgMfjgVVB8moymRKJBMCYnNTtdhuNRkwXqLLdvHmTY+gzmUy/3+eoEmlb39nZqdVqt27d8vl8ICaFQvH2228/fPhwe3t7bW3NaDSenZ0VCgWTyYS1aSAQ2NzczOVyWMclk0ngFQIuBmRjY4NNnmY36ZXl4gkKRFUqhn6/n8nNRGcxU2DF7IG/GgwG5+fn7XY7Ho9jac1Rmo1GgzDHNi6HkoNZmMS0QFK0orhZq9VIVGl+RvQAc0+H48bGRqFQQNxLpYxPRjgGJwKqIi6TrIEHEUzRqwiTBatVqVQojNLauaqrIr6Lzhuhk9VqxRWL5nlCJEuRiE/mJV719K4y96gVUqygZ56hoFBLpZWNLZlMcoI3lkECTkWOS/zF5w8mSwwbCKZgH7Yx8BGxnpYgWg4mkwmO7BBzCoVic3OT/lOUH6RyjBX9gAQvhvfWrVvj8Xhvb69Wq1EihMlBIk8CKJoJqSoCqYhHUj1c/adk1iLy+t/rsIxG4+/+7u9++MMf/uhHP8oHffWrX11bW/vTP/3TwWDw8ssvv/nmmw6H4/79+6+++qrFYvn93//9f/u3f/uDP/iDH9hLyBjBeiqVypOTk729Pb/fj13krVu38NuLxWJarfbWrVsqleq5556TI+S+9a1vKRSK69evZzIZqmwIglFUI24gR0NpTcI4Ho89Hg9aTbQUx8fHNpstFotR77Pb7aJvZB63Wq1UKsU5rBRxxC2bjTocDgPUcbNzu92Hh4fNZhNIQgqJwnP1vPJEIkE4owKIuBzOlSWEDnh9fT0YDH7ve987PDzE1jIcDu/s7HDCUiqVYntk5dC4t7m5eXl5GYlEqtUqvdAkSmyJELq40AnBDNRivcEcQeXIgeOdTocz/hwOBxGE/kSdTof5FxwQcAa3Xx4EU1nUiWgOsK+iyQaHDJvN5vP5qJOQPkMtESngHKmBtttt/IXEBwqqHrBAbyCHYhAIIN3Jv4CQZOUo18lxAAiUQYit+PNJxiQ+v9KqolQqr1y5QtMchWn0YrR8oSWGpkFHQrWRijAr0+FwYMyPBF8a9FiuqEB5M4U8JISQDHTXSwxFogGk6Ha7CPfgQGFvc7lcKpWKRqPw+qDRSCSCWIzjPpPJpM/nY4ZweouAbogODtwWe4KdnZ33v//9jx49EkMR0BnkmpQURb8uUgnB0atN7KvFx1Up1o/DZGl+CFMunBn/PT4+fvbZZ9nlNjc3j46OHA5HLBZjP3/uuee+/vWvi9V0tVr9sz/7MzxqHzx4sL+/7/V6aawrl8vJZBKlX6VSuXPnDksiFov1+/23337b7XZvbm6SvwyHw8PDQwgsMlCcOY+OjkgVsWRjQsBQkquiTsbj1Gq1plIpPoEMgobbXC4XDoeRUOJNLNZ0sNQHBwdOpzMQCCDndbvdRAdIUzq3b9y4QTsLpKzZbL5y5QqnhMlixq6XY/K63S7F4EqlEgwG19bWKOuQIZJr04nCAbnRaJQeoOPj44cPH3LW6Ww2q9frnHaDwv7Ro0e4G9M1IlwsjZYktrFYjGo92lE4EU5Xm0wmWJii9ANsko+QHev1+ng87nA4aPCko0DcAmS2MU1BLnJGHnU6v9/PWTJCRVH9QLdBoYrZD1svxzJyOsl4PCblWVtbCwaDzAQxsXK5XIlEgnIq4QC8KVpczhWHlyQ/gt+kYkVLIEVYKZ8R+yh1sWmRWYOh0NmSC1OaILlj7oFBuFPgBkavxEGmKFNI8jggqiCsQqEgZzLSwoWzoF6vZ17N53NKrmS1RAGE2fF4HHOBeDyOZI/0fLlchkIhRFjSGyAn3fMG6bICx5nNZnppO51OqVR6+umn0QwToMWBgyAlR4RBYwm5Ll7yxCyRtovJhFj9/UiQ9T+oErIGhGWEsBSTQGnW4yotFsuv/dqvsQEeHBzQkgal8vTTT7MMSqXSm2++Wa/XIc47nc7Dhw8NBoPb7S6VSkjPz8/P8RJQqVSFQsFms0HMTyaTzc1N1g8Ah7hJePV6vYh9qOXFYjEq34lE4uzsDMb3/v37ZFXL5RJEE41G6/X64eHhjRs3aKOjRQZxpt/vh8FxuVyoEMfjcTqdDofDJpOpWCxSAUBcBzYELwwGg0wmg0k5K0SO4WQ3ZrVTONNoNLB75+fnPp8vlUrduXNnMplcvXr1hRdeuLy8fPPNN4mYKO/J3TC3aDabWNPu7u5S7eLY+oODg8FgcPXqVUoBLpcLHTlZm5xPhaUR+nX2RvACFgV4mcuhrbVaDbdvrIrRdkF8cDYqLDVGK+TC8IBwi9D5NKxQhJKD8CCqKKvxQM1mM5gI7QsIUVQ/yA44ZwQ8AoOJUQ/RmWVpsVhOT09JkYj7WM7DlFEixBwRxAFPBHFeqVTwgMXgn8qpyWSidiwNobICuXdOCcHqVpwVkOZw5TAMYBzCn1QGkKRJfQa9At3mxWJReECAIUVwCjt8Dlnw7u4uqjSv14vEhMhCIgkaAhSzN8hZ02Lxyoxlye/v70cikYODAyq/st5XrW8kH5S8jwEhYRToLR05uPJ2Oh3abP+vAUsMUhFPYiWsUCgIKC6Xq1qt8ptCoUATnGSU7373u/mZlmaKEW63m+6/drv9n//5n7PZDE22TqfDMc5isVCKNplMBwcHbCNwEz6fD21Rs9nc2dmxWq2ZTAZaWigSWG3x0mZ3ury8pPf12WefvXbt2nQ6PTw8pNRycXFBCZmVCb3aaDTOzs6i0eiLL76IBTN6UU4tbLVaGxsbx8fH6XQaVh6WGgad0icH9hSLxXK5vLGx8a53vWswGBwdHdF3TTvh/v6+nMEFWcPpYbCzXq+XO8pkMo1Gg+uMRqMbGxvszM1mkxaQ8/Nz9C/BYJBVsVwucWEnUCYSiXK5DJ0hh2VBxgPv6Rng3HbyCBAZyRH6II7glnZiTmzb3t7e2NjAs1TsdDg+C1Mk5nSr1QIGkrXxpWRMuCdTcQOsyQms6E6o9JGwiKcKv0+n09FoFAKbUAipzyRst9tWq1VKQ0Ja0VdQr9cRx7PxIDWy2WyECdIIBO5yggbnodHBjg0pAJYMGmRBTBd0SZLFLYhgivSZS0UHKweMg3PxF0HCCreNNF+O9oK6kvO+QILU+MR9MJ/Pb2xsJBKJarWKOztUvagKqIeKf5YYznDxdK2xoAhb4meNtxqGGVLjWjXJIkIRjyQBFEd5cWomKOMhjmLxsd7p/3HAKpfLuK8cHBzs7u5+4AMf+PSnP/3+97//+Pi40Wi8733vg5z6/Oc/v76+/sUvfvGHKCQort2+fbtare7t7aVSqQcPHqDBKRaLSPjQgOj1erpMHjx4oFQqI5EIlIH4l4/H40gkAl3S6/WwAWB+6PV6j8dD4RkRHR35vV6PLmjmpSiP4vE4gPzatWsU+O12eyKRqFQqp6enGBnb7XbyrGKxOBgMLi4uSIg2NzcHg8Hl5WWtVoOYY6/A/wTenRrT2dmZwWDY29vDHho4vVgsUqkU0Ea8Q41GYzKZpO+PYw44zpoEFv2L3++Px+N2u50jGj0eD9gewnV/f1+r1T58+PD+/fvPPvvsU089dXBwoFKprl69KoWtXC6HKb5UCcVGEYYY/AVMwPkHZQ0N+oA4pVJZr9dLpRLOsZg3QHWL+z6ZFLd2eXm5tbWF0FeyQmKNWIyxliqVCrsFaRcuxqlUiiEF9Vgslmq1ivYNPotNlHBZKpUqlQphzufzPXjwYDqdbm5uLpfLtbU1MC8uOiAv6iRAALEwxWkedlzQBNInSSoxtKL5iUwQVCt4TbSmBE0UfMgUpF7JCb5iDwfjBucgDT18OFGJlULmiD0G8I0bof2z3W77fL6nn366Xq9HIhGs5aTZWPS9EBdi9ttqtfiudrtNtxDELksJrYPZbKZ9VZCg2CXz+ARGicXoqtIK3Rz30mg0CFXIQVadtv43soblcvnKK6/87d/+rVqtfv311xUKxUc+8hGtVvvXf/3XmUzmT/7kT9bX1/V6/fXr1//+7//+a1/72sc+9rFf/dVf/YHf90//9E8Gg+F73/vedDp99tln2+32vXv3YrFYs9k8PT1l7xLOD8Yhl8uRfGEFxZiur68j1OR4GDlSRa1W7+/vF4tF7ARA0eylrCupqXPmcDKZFPU5NA0iFDggzstD90QBkTbG8/NzUqR6vX50dJRMJjFfBmSRIBeLRUqWHGGNxEkyrHA4bLfby+UyzkoUYsTzT6VS5XK5s7MzSB+NRvOd73wHHcPl5SXFO0ABuufNzU32PbHfZcJhVjUcDlFvbW9v93q9dDpNoIGMIAcHhFKyIJSQYgBwCFLsySweljcyCJoT4OyIy+IrTw8K65aJRMwym81k03jwyyleHJkn5TnWAGopZgVZDwgIgMNuyrbUaDQQwTUajcFgQI9UtVqFdAsEAqVSCR2sx+OJRCJE/1Ao5Ha7aZBEzQB2EwNblHdMJJI71KdwCw6HA7cZiCq2QLG6leI9sRj8gm0OLqZo2TlJDCoDelSsLPL5PGCH9JPUm0SbtQ2FxLfAoEE8QaRYrVYO9A6FQjs7OzBWBBRALi3ZNH5JQyg9TO12G+FVJpMpFouERSQg2EVQIkilUpgviseDvAjHkhuunl6BAWytVisWi9VqdbX/CeunT3ziEz/c0/2Hke6f+tSnPvWpT63+8uMf//jHP/7x1d/cuHHjC1/4wg8PirPZLJ1Ov/jii3a7/fT09O7du9vb24Rt+G9g/HA43NjY2NnZKRQKSG8RWBGDrly5kkgk3nzzzUePHmHzhIVAs9nEzpRqMXMRa3YOfYEOZ7cXdyGk2+wqZARarfaZZ54BqlBhxHkDBiqfz4MLYBxardbXvva1RCLx9NNP+/3+XC6HmBDmFSm/0WiMRCKEUarmqHKef/553K9JrMxm83PPPbdcLr/3ve9JK79KpXrxxRd3d3dPT0/39/cpky2Xy7OzM/pIKQNptdp8Pt/r9bLZLOYBNHD5fD6cT8CJOzs7DoeDvBhPIiYT9QqiNviUKgePA5JotZ9Z5NGcV0bYCofDfr+f3Vj8/KBp5OADFhjghTY6OT2BYj9yEyAV8I0OR7/fT2uOaNxwPc1kMlBmMOXsW5TS0uk0pRjigsFgQIGBcIzEivOQaQZAoa5UKhH6IW4g9mGGgUsaSjG4Cxw7KBfKKe0S6cSFnS1T+i5AuMJqo88ALeJxROkDuRle/lRsiP6AcQaTF99Iyul2u6WGgy/jcDhMJpNXr16Vk2/kGAQqPJwgSaMi4himbqFQKBQK9O26XK5ut2uxWNAes5Yp0AP85cgckYkKgbVqAM/WRcJbqVRk0UlaKsrknwt7GY1G88ILL6hUqm9/+9tHR0fwi48ePaKzTHzZA4HA7u5utVqt1WrsrjTrOZ3OnZ2deDz+3e9+9969e2xKVL7pX41Go6ixmEDQIrRNkeYQpAhG5DutVisUCkEiTKdTHAQpnFExYfaIOIvVtb6+TgWdMlY6nR6Px+95z3s4BBQ0Hg6HsaxTKpUwtWybnKXK40T9xGZFX9jW1hbZIng+m80Wi0WPx/Pqq69yFh4aSA5tpOGRBXn9+nUKauztXBgLNZlMBgIB5uv29jZHOkN+cRIfzhNiM42rEZfEqYUcjQeSh0lZPTmKU9oajUY0GvX7/ZVKRU4hh/YiYQE0kYFKwIIbAi+QVYlmmnSP1U4lh16F1ZY9Yh/ifu7abrcXCgXyVgwwOP6SWURzAuiSdi54NHT/8Xicw1+LxSIJGgcCsaEimILk5gg4FF7gLPxaIcW5QTlIFWkLN4WKncNN5SQuAFosFkN0BpxkKOx2O2bf5JU0ropuQM4TYmuRcwMikchkMgmFQqRvOzs7bPxShiMjQ71I3Yx0mF63YrEIs8meQXEDIw0q6fRFcgGr/jASp1atY4CZq+eq0klG5GVBSROFSBF+Xgz88vl8o9FIp9MOh2NrawthG/ZyFoslmUxieMDRxKPRCI7w0aNH4/H4+eefj8fjr7766t27d91uN4alwOnZbLa7u8tRd1I65c+FgIeIiUaj7AkbGxv1ev2dd97Z399H1Q2qXz2Si6oQ56RDHsNZcNTNcDikMdtsNjebzW984xvXrl27cePG6enpZDKBjycJRXPIhEun0+yi/X6/Wq3S38CpFhjpfuQjH6GVulqtXl5eXlxc7O7uvvvd765Wq81mE9UMedzZ2RlHTNMLGQ6HQax4YBKhCD0kp7lcrlqtejwer9crp2/hlAJJzLwHZ7GdgFj5X2IdI8VEWQPz+TyTyVgslrW1tbW1NehCqnXkj5AdECWMLQkCLun0bEoj0WqVUI5yASoSN6m48VHidsApBkz6crmMnenNmzcpKWBeRkcRT5PLoBe6XC6zwFCZ0xEBoy8tviCparUK8cfxtNKORz5OnU6ME7gYgjs4IpFI8E4569ftdoMvKFVZrdZgMMiDAIwj9AO6drtdGDekc+RoImVgqVO7iEQi0WiUIix0ARm06G+bzSZ9Havnm6KSg74gYkrTkpwY1u12mS3s6EwwksHHEkBplSFGt9ttbJTIRqV5a1XyvnojPxdH1ZdKJafTeeXKFXANdFW73XY4HL1er16v7+/vq9Xq1157rd/vB4NB2uLG4/Ev/dIvJRKJN954I5vNRqNRFOSi9GFBogXn5Ctpr4fTsdvt+Xze4XD4fL6TkxOv1xsIBFKpFOPr8/kKhQInAJpMptPTUylX4z8FtsKTgCOhME7kFjgFq9VqHR0dbW5u7u7uUvQZDod0d+O1xFQYj8diuoDLuFqtLhQKxIh8Po+KLxqNXr9+/eLiggbgRqPR6XTwZuBM+Xw+H41G0aAToMHweNXTVCGWb2ATmorZ1gAIyPdhr1hIFBwMhv+PuXsJjjzNzoJfKqlKUpXuSkmpe+peUqnul75Md3s8M9geTIwhWBGwYEEAG2IWLBwOFrCAgIVZEGwIiCCIYONgAZsxBHb03Mx4pruqulpVparSLVNSSqnMVOp+l0oSi19wQl8bgz/jsFuLiRq1lMr8v+973nOe8zzPqQoRZVCToyQBM8cgGWEFF3xnZ6ejowN4hLzOf06jms5ub2+PPrGzszPsBAibHBsGW8xPopEfnaOwVGc+4ddlASYDal3JkrLZbDabRU+hZdHIIzayTEiPkHXbicoSecI6cubSdohn4vZCCcY8AE739/cbPanGhMVgiiHim3CB25VIJBgKSWl9QPW+kKHFifS0tbXlsajIYoIhhY2ykRSXDX8QU0GKtrGyjhoRssG4kStk1GWR7IhTYZ2mEb+5ucmMgX/DRTfBiFPBtEJ5iVAVDJ4YUXFxApjb6GsxhAKuCRFAGhB0sZCOj4/VFE+ePCmVSsPDw5Cpurq69957b3h4+L/9t//285//vKOjA29FO9wxgG1HRcC6T5fKzVwoFM7Ozpg0HB4ejo+Pez/+SlhfBZMFKkkC6onDcUC/XV1dcARUxu3t7ZWVFayiYrHY1tYGwent7TW+SfusrKxsZmYmn8/funWro6NjZmbGUde8m5mZWV9fb2xs5GOl78kE1b0EIC+VSmNjY8wnYPzKsUwm09jY2NXVVSwWXQPEaLI5ygEnxHYJYvHh4eGzZ88aGxsB4YgwODviHaBBtFKtmIBtmpNjgGalPYItIXeD4Ggq8dIBGLNOFpolWdFcCzq4Ydd1dXX+kGKH1O7w8DCZTLa3txN7MsOC3QKq8DyCLahI9J2zs7N0On14eDgwMAAlpNzivt/c3AxRRg+kNHTfCF4R9F0/OAp4cy5RYi9Ec/xPDj9TU1OeRtg9Gm3tzedyORIFXAeHVpKoIJUGuiqkxja2D8h2Kp/PX7t27d69e6lUKsbeKDlB6S5XHx9jrr6+fnFxkXEop2MRJxovgOMwidXaDlBS0heM0Iu2yPYYQqzXv0jFinh0sZlYWVlJEi+1/1pYJN+9e/fdu3efffaZQcoYgzC/4+Pj8fHxt2/fTk9Pd3V1gTDW19fv3LkzNDQ0PT2tJdfU1DQ/Pw8JIjlubm5GsxoeHl5fX2cwwgCL3oXzcmdnZ2Nj47NnzwwuzWQyLBA1kjo7O8Pxkl8ohk5PT4+cmftCzEHZ2Niwaaia9W6YfL548aK9vT2cwpGhdK/b29uRekzrknZpwdy9e5fLCgIEzWZra+vIyIgJLhUVFalUSg8YPOd4xAh1ZQ43HgdP/qUbm0qlzEnk4aVZ47lp8yGgIqBhThlADbgVFyBWm5ubSKGhv3GEODegXItlMQVHfqQ2rKmp0R9obm7m3QzEcfhlbVoxi4uLphAZ1rC0tASyvDhYEHrlbcTcWcdeid3S0pLJZOxA4Bq9kfL8ww8/hFuh4127dk1ipWGqwhJeg5suguNVwEaVb9DDcLOSK/l0TFcMW6Fkam1tlRDZA9GoXV9f13lE3A8wsba2dnBw0PRcbwNG6c5OJpM9PT0dHR2sMQVK/SttXHwLNFqPbmNjA09wa2tLXJavWWV8DkmTm4Zm0xtT4vFHsmpBXJA0uav29vZKpdLGxgbq78UYdFGFI9hRm4kGf5JR9X9OGNb8/DzcR1Rmb3h6elosFu/du7e6usqloLGxEaXg/v37/f39x8fHExMTbiqWm52dnWtrazrBYB2Vv3sMebKlpWV7e1sjyVx7FtojIyMy7bCL4qMEc11cXJQFmA0xNjY2NzfnpsIGAgRsbGykUilgpDqCorCsrOzLL79saGhIJpNLS0u9vb3Xr19HpzS17P79+64m48WuXLnC0XBmZmZwcLC+vr66urqnpweEZKCGP9HW1ubkk6pIB7CZzA3EKd3a2pqZmdEWbGtrSyQS8oVisUhyrC0oOefwhVgAE4XUAGg03bHk8aoxFcO3J1hLaP30Itqy0g3tDpWO04VxbpjFmzdv8vl8W1ubJ7m+vo7lvLGx4SYzHhF6fe3atZ6eHrwN0HV5eTl9uydMgrO7u+tKGB0d1bHt6uria9jZ2SlT04ZXtSWTyYWFBcJGM5accwoE0xnEdx9H5GX+Q8gpTUb6k85gWrCcltgeHBwYCxRmpDKy7e1t4c9NILOWO/NilVeKmFaE6rOurg694+jo6OOPP+7p6UEKdW3oA9r8p6ennZ2djEnkR3Y+X8lCoeDNGDluPzAE96ghoRdnEcLjMGbMH5Ktg88Vmwh9tn3ocMNnOWTPLkh3GJ2Qr69LSXh6eprNZjV9eG50dXVtbGwsLS3dvHlzfHz8yZMnSDGrq6utra39/f2YNWZ/s6A7Ojp677333JDb29vt7e2QDhOuWTWxxNXl0V6JsRTEn4DVL7/8kmoU+RsbyC7XO1fSo6Q2Nzdjt7qUomiPCd3n5+eFQiGRSAwODuo94cKIkhys3F0a2PixdIi5XC6dTj979oz0B5pw48aN5ubmycnJsGRsa2vL5XJTU1Pms66trQHIWPG51cUFuY8vKpNEIqF3Jnwgixs1ah9vbGxoqrIEcFzB0nKWqqoqPAzN+KA7AMiVk1g5ihT1pmY5zB6AguhrLo4C8+joiBbVT1pcTQ/5L8G8Icmrq6tYlFeuXLlx40axWIQEr6ysxPwkhSQYWJICc9jc3EylUprxoG5mZASMSmAotePE/EDIDoGRKlIGYS5O8M5MySZODLoDWSWGqt0l1TJiGqrV29trDKKMCVzFJyPIokbA4qOsr6/TqJ+fn9+5c0fXT7RF72Am/u7du9HRUYMdZYgyIAQomTU1KDAuJrbqq4Dn8M6ifNMQiAZoCGC8T1YTyvOYOQauCkl5jEeMWQcxQtWevFha/gVnWMIzCAZwUCwWU6nUN77xjdevX9Oj1NfXKwQKhYKcAk2psrJyampqZGRkaGhoYmJicXGxvb0d0RyaS1POZBJNPDw04nYlc9OWcokVCoXR0dFkMhmT2mLmq8lLw8PDEOXJyUmbUkXm0nAhA5ihpKxKv/zyy4GBgb6+Pp6oDQ0NAwMDDQ0NGxsbP//5z2GipVKJ5lmr7sqVK1NTU+CwXC63v7//6NGj69evv3nz5q/8lb8CfDEN2HzA4+Pj/v7+vb29xcXFwcFBtuX4SkE4xoTGfn737l2o6r0lnAbAnHgN+yD2BOien58TeUFe9vf3c7mce9ghicpIdAAMMUhqbW1VmqkszLUXvLDPMdHlAp5biGZBV3t7e01NTfv7+6ZGDg4O6tXiZw4NDZWVlan42NUqf1paWrLZbGtr68HBQS6XW1lZoaFzpGFJ3d3dxgiFUxWPULWhfAFWoCDS2QjEnfuNf6CPCJditMsMHkrvVVZW1traqpQ+PT2Veuvcra+vQ1eNuTdWh52LCwm5NFoNiUTCJHCTXJD7KysrmflFdSa0GckRI13QWbygRo07jBxN3nTRNFmzBYlMbVFbW8ufFpFbwNJN3tnZ0Y2Np3QxqEWGpUUgn62qqgKe2Cd6yvHDf/EWyaxz1BTr6+vLy8uVlZXj4+OFQuHg4EBJZV68NRD4zRDlbHn+EmqcAAAgAElEQVTjxg2M8Pb29ocPH+ouXb58eXJyEmcdrAM90TphtEBJozze3NykZBTsSCUkLIVCwQnRSpMQ7e/vv3z5cnl5GUIR/j7GqXrEmru4S2SAi4uLfX19Np/PfuXKlVwut7y8bEpVoVBoaWmZnp4eHh4eHBx0ix4fHztgpI4DAwPapn19fShL9fX16XR6aGjo8uXLr169UirW19drHlHYcAdnxav0BupRw2obiRTI94xujCkDz0k37MK4bNVTLsbd3V3/1tJGldYUozWzC8mVNKSkNt6nQXvyneBex6D2w8PDhoaGk5OT1tbW7e1tbE8OMJWVlUtLSzyelpaWtra2NCsGBgY06Q1o2d3d7enpWV5eVpHxkj0/P8/n8wglANB8Pk9ZSU0VI2BTqVRwI5ubm/v7++fn55eWlorFIhVUeP7hEOiWyMUMRrl27ZrKoL6+HmfYpaiXii2xtrZWV1e3uLioFhM0Y1Yb7yqXRPiUGjTX2tpKrOYqYi4AJQzqCUgOIhk+lFbT8zcVTf8xZhJLKcJ7UvNK6GFbJq0LH47QWhsXEtMrYiLGxeMf08aQS+w9QKS7JESIX4sMy4WM26kMfvfu3fvvv6/WMPXXjOW9vT3UAcEl+in379/f3d3FGh0bG4MoHR0dET+Xl5fjvjt+Lsnz8/OmpibEn8bGxhgwl81mk8nkyMjI7OyskrCyshIfPZFIAHHQuJ1b4c8AakNo4A5EVYiCaIoVFRVGwxuF5G7EtyiVSiIFjNYgnxs3buzt7T158oSfp24j+Pzo6GhmZkYyzzFyZWUF/IRCoWi6c+eOCuuzzz5zcZFGwrkw9SljVaAKbZGRVuliik69LLgjT6OeqQVitJQ0yhO24bSTdBLxQrDPmPFTOwG/pCcyiL6+PoWPXgQVVJjbgdU0ggPKcUXBCrBS5LyWA0XLAJilpSUIOp6t9MrxNiUEF5cDBwIwrR+nGoEGa7S5ufnly5cUS15ff1blbjOjIKj1BFkEDqWDJFTqhENnx/b09Kyvr5dKJcuk83P58mXUEA/B3giugJodT4o83lUETgFTep6ag4xkYSMWEX/Y59VlIowPf3dEUIV/iDe1C9rb28U7fQPtflH14mD6QNZFQHCV/RkzQWIsRTDj/18N/P4Mv6BCJPJC/p07d8bHx/f391+9elVZWTk8PNzZ2bmyspLNZnd3d4eGhuwY15QrYnJy8tq1a7dv35aDlEqlqakpD7q2ttYBOz8/Z1CjX+a81dXV8a5TKUhGwK4k2awa29vbLaoTKBOW/QKwA2qJRtX169fT6TRQNqbyKs4nJydj3C4zFkmHKYraBVevXp2enl5YWBgYGEDy2tzc1NaJGU1lZWUATq7KgEmiPAcYind2drawsIBNJlJ75uKI2BFW3wrk8/NzeLzd09LS4qAWi0XZqMxI5YvDvbq6SiPtIEWN6d1q2kaUlzHV1dVZQcjR/v6+1srCwkLkL+E71NnZqSz1oeiicAtWVlZ6enqIzxOJhFcbGhoqlUo8A4jDYWSZTOb4+DiVSlVWVi4vL7tFEonEmzdvmCmiuTlRdEWcZldXV5GhlEv6sNB93QkhWPOrra1Ncmco6eHh4Zs3byTgEGvRH4KGxDM+Pg47s0ADAwOTk5Mer2IZFVlFHBbVYSDB0svokO7ubnojBFQzJSVWskX23DB1FF+nIPii/BRjXKvwJKcOUAkxRVjxfqg4NHn00P5oHzDiFyZqfF00dw/f94t8iK/R5Of29vbl5WWdu87OzsePH5+dnf3whz8sFAq//uu/3t/fv7Gx8ezZs/n5eQileg0n8OXLl8TA7jRimpcvX2rQ4ruzN3rz5g2fJtA7ZJEEv1Qq4TcY1oK6YldJarCKo1DSd1fhw6QxMEjJtre3e3p65N4uq4ODg56eHiUJaQXA9fr160oqM6jDDf3atWtTU1MCJTJeW1ubdCbs09CR0ul0Lpe7evVqPp9nrIpq29vbi3uBg/MHf/AHbgWHGeq/s7OTTCbr6+uhxUqnqLBiMuje3t7CwkJsOFR1KZinZ0a0qA1Es8s9rnBKGBsbU1CYWSDnBUsHlIko0NnZubi42NHRMTIywlg1l8vplPuj8sTt7W1z22kzgUESjQCYQtZXV1eXyWQaGhrevn2rwe/Nn56e9vf3t7a2GkbpGl9eXrYW2NtmYi4vL3Mr18TwKLBwXDxKG2FUyXZ+fs661sUs+/P+eQ0SkLkSxD7Adjab5ePY2dkJGg8RGKGYhqOqtr29PQZ/ZbNZSCi6vLhjM7Mt29zclILpSkfsQ9xNp9M8EbU+UXaFGFkt3llwDmR/zc3Nrlsp/+rqqjd20Uo0BsfhRkg2RT3hyXqF47vKMUwavkbSnPPz8+XlZdNPa2pqPvroo/Pzc2bHH3/88cDAwNbW1o9+9KNCoYCXoChDjwIMDQwM6Mu6webm5jKZjO3+5s0bWop0Op1OpwFGQG5lOW5OSL3CVAAznsMXy63Z2VlyhLq6ura2NtxrRJWOjg4Vq5vn7du3b968aWlp0TuXIIyMjJipxxMd5OFsazjysXWDUVcBelyqOtBra2smbnCDRMsIK1suhuxonjx5kk6nk8nk6enprVu33n///efPn4PPSLs7OjpkHBp5VVVV2m0UakpUGZZ2W5QDcaPK3r1b5M8YqxHQfrxIJpPZ3d198OABCTfSg2sDh0h1I3Hr7u6urq5+/fr1jRs3wnCZ7o/alo8Ni2dEASS1qqqqfD7/0UcfGR7jJqDRhUUa16bROTIycuvWrfX1dc7O7PqQDBKJRCaTMUry5OSkrq5Oiq3MAYlyAQOceSeiKohQlaftK3zTqELikskkL3+X8cHBAVubq1ev6j9gG8h0MLD8OniBjw1lsoFv2AxnZ2csjzk4mmhPrpDJZDRMwfOi58zMTLFYrKmp4V+Wz+cFGh6Tlkk1bY2seDAP/F++Haenpy9fvvzyyy9dyQGQh5U7KA2CHmUKuEBrIsYRXmRvhe/on7R99+dTEvI5qaur6+rq4tNSKpVu3bp1586dYrG4sLBgx4TwAvpwfHysTNM3BEUdHh6+fv2aao8d+61bt2pra1mJar1LMVywEPSjoyMQI34asdXx8TGXZCI7AJD4RY4X3mZeBCcLuGgX2kPQTRW7HKG5uTmbzWL2+/nm5uZXr15BEwBPCFOqj4GBAXsXBuHfrMFQNJz/YrEIg9cFm52dLRQKb9++nZiY+OVf/uUbN26g5sc8pWvXrs3PzystTdwwBUfUpiAhLuFQ6DAHZUYApQHStEKqVKS4Re1XjA3KytHRUclsOP8aEqEHooVfKBRo6KQwXIBgPZubm7AqQj+cO3xOPgQvXrz44osvPvroIyqCzc1NdKRcLocyPjIygrF5fHx8+/ZtAWtpaYn3YZBX9LxqamoUm/5WNKbBalNTU3Nzc48ePWLwYpVhOqAxtv0wo5WVFUzXXC5Hl+NXzDdTouKagwi0dyREQRogVyZpkqd7vOXl5Ts7O11dXWTqMR/EE8A4q62tBS9E4RbEsbm5OdQcOTJsxPbWHbKUNgNww2QQRb0htYhsQnxkRtGgtEmilvScr/6vr5j2HBss4Pk/oU/Dnyvonkqlbt68KaxMTEwMDQ2xKk+n02KEqt6FqRa7fPnyzs7O69evt7e379+/z9bn5OSkWCxms9mHDx8eHBxkMhnWdNPT09rGNTU1qVRKKQedsV/z+fzNmzdBfRzNASUxX2dhYYHXZeiH3QkuB+IYpxS9WypuKg+wU7oLE52fn/f6CoTW1tbAm1Cf19fXdYjZBCp/tIEWFxdplXGvh4eHoxcZKjb1FwxI129iYkLa4r4FH2Aw6H+FohtMCwTllslPAqiMq0lgiK4Rwz4A9jHumDIZ380MNMkyugNikSrP0z44OGhpabl165aJHul0mndVTLdHlw8RqMFoZWVlY2NjpAVy56Ghoc8++0wXlWPUpUuXzGeL3A0nK7Cb27dvLy4uKn/Oz89bWlpKpRKPefwPuZUZDVeuXGFP5seQoSDTTKYcxZmZGUwlTtzEZwhu+LTcGrLZrKRybW0NFxr9eHBw0PYQ8oIxR7ANfmKlwF6CN78+++zsbHl5ub6B8EfW54C8fPkSa4wxRqFQIP+ibZLO2w8XiVTCFkoHDxVcOQWdIGgigU0SxAVnSpwS6cK5X234R51nQvN8cQzH1yhg2bKy6+fPn3d0dHz44Ye5XO7t27eEfhqutKk0ChA7YI1gp2Rjajw2NjYyMvLs2TNj5ZGAPOtUKqVLLT8qlUqq95DIoUeCJ7XhLB5y1unpqRQvfLhxmg2qcThpd1ABBgYGwl2zUCgkk0lQQn19vbERAAh5X09PD/f3XC7X09PT1taGmtzX1xcW2rzcmpqavBphcyqVamxsHBkZoZBQdPDSffz48du3b0PcJ9GAWNlYdps2lgE5QVCWtPujpn5xUoRhATXs42KxiICikxXqMNI8ulwiQRPVQn129erVhYUFmpgorz744INUKjU/P3+xWnSHk2RLWrUpwI7cmgwEevjw4Zs3byYmJj744AOKBQh6IpHwbMOaHavLDUTrK79IJBKyRQZn0gQpDEkANAdtGIBdLBYh0ADWS5cuLS4u2qgVFRXLy8v8goBQSm8BemZmBhTLq1JHj+o78nHXBj4XMA4yyxQhJnSIEWD16urqn/zkJ2jGR0dHq6urHCny+Xw+n/ci5r+l02kQJHpQRUUFeE4ot76WQEJkS6jQg0ulsrmIjod1ql3kTaoiBakoAMN/JoCqryBWMZro69IlBMXt7e1NTEwkEolf+ZVf0bbXmkX+bGxs1Ln3ITXI19bWuru779+/X1dXh1kjPe7r6wMKoEQEAcI0XZcSzMWdY4EBisztwq20tbVVwaWGCg8mzSBhlEcN6Q8XF+u0vr7O2wQtu7y8vK6urqOjw2Ae3NdEIgH4p1k1EpEMWE0qu2GWcnR09ObNm52dHcpnOEVcoViaxWJRx9BZ2tzc7OvrM4TV2BuS/fb2diZ2AjesmhGF/RqO4wpGib0WqvLZZkW2jCbp/v6+3MrmZvzQ0dFhdoanamho6C5HR0cNCpYNzc/PY67cu3cPjxF0Lcna2dkR8jQfjJ/Y3NwsFAqShWKx+L3vfW94ePjVq1cDAwOpVMpfYc7Fi4Ik4OjoiIy5v78fe0CzjzRne3t7aGgom82urq7yocYqymQy77//Ph+Ft2/fqv4Q0IeHh3VXzL6mQLZnent7Ozs7X716BSlfXl5uamqSPB4fHwM0t7e3eYq6HmgJbUI3ECcMBi+NjY3FYhHmhaFeW1tLCMEUSMLe29t7+fJlpv5GqOTz+YaGBqxgckKBRgkZk2KEY3wr0KGgI0W6du0aNq8pG1euXJmcnJyYmLArIgYJUhGzwm40moCRwYXzR+RWMYciXCL+JKzRP6eA5SQUCoXx8fGxsTFTIWKwBy+X3//939cH5HBmLlNFRcXIyAhFwtu3bwnu4Kbo5noZ9O5uLcWgh4VbxLo/rOBAIXBNcKbCW9Eu3sl93HhuG0liXIBgb04vXV1di4uL4IxisciRGfVJMV9VVbW1tfX27VtDgBKJxHvvvYdaPTQ0RGJaKpUuXbr05MmTQqHQ0dFxeHhomEUMAV1fX19dXbVrQTl6SS9evOjq6mIYz4Rneno6rEViThcpvI9Mf9fY2IgthaMMJ4puTn19fTB0FE04O3w+mSvExq2pqdEZkJCy1vSCFAjV1dUAqc7OTjT3dDptni6kXLfOeHoUU81QzzmZTFrE4eHhn/3sZ59//vnDhw9LpdLS0tLHH3/MbAvX//T0lImdhBEgrZ8YsCCx5/b2djqd5v6OOPb69Wtd3bA59+nAcKyy6urqzEkm3NEPRVBixDw4OJjJZJgaEoHLOFD24HdsKlZWVqTJtFCwC+yncJeOUXskL2oOZkc6wmdnZ69fv9bOQuC0bZjGmO+Ar8AOIJydxBcXUmgMqFMBKW4RGZPZnVHmi1BysQhS8jL3n1cOAz8I10Wi1sX/GzMWC4UCc7SvBeheUVHx8OFD019qa2vZ1yGJ7O3t/fSnPz09Pb158yYl/eDgYDKZ/Oyzz+rr6wcHB0lSqCU+//xzkyay2ayGyLNnz1gpyIPovFy2lZWVJicr0NB/5AgE4p4UfxXOCtlsVneSNaKkFzzM3Ed7CG2Cv4rYJ2ex//gNyAG1TgzROzo6oo8Ns5oYklxVVVUqlbgCgSoovZ0xbelCodDV1dXX16eP5iPfvHlzc3PzxYsXvb29H3300Zs3b7i1/PznP9e76evrY9sSMQVrP6gDmjX+IdDYstevX29vb2d4n8/nFemRfEk8tRfQPijX1tbW8ITD365QKAhAx8fH2Ww2xizn83nmYplMhqScX+vGxoZTBzbm369OX15e/uCDD5Dye3t7s9ns1tYWDnA+n9dPkIdKrkFCkRJ62/p3yH04kNwpwjEiRCoxaULvUuwG7sjitW7Fr5mZGQSRioqKu3fvsotCNpbaSKZMAldh4VVBMEU3vpV04HJG0U0IEFPgGAKoieLy2f39/RDYFotFrq3+LohDvyimRgsciURCXRLoJAyEQ8PJycns7OzKygrlZtSPkVh9xR855lBc5FXFQB1bwg9IKezVjY2NlZUVRP+vRcDi84k3iDkJLsHkNBE+COKDg4P2YlVV1ePHj1dWVlwmyWRyenp6aWnp13/917Glq6qqQBiwJ3Q7x0+aZgH4b/T19emCWWDTdMCcFjsmrxAkIigb5cYVwPAlgclFpE405hvfsrGx0eaGVesbEP3rJUlhYhbL7OyspmRFRQX9XTabZbbNQ4Jio6qqamxsbH19vaurq6ura3193aHVXiyVSvPz85ubm2NjY48ePSoUCnNzczG3fWpqytANvoaoMeGEeXp6qg1ECy0/VSnU19djWthDjo1uXaFQEPcbGxtbW1ttvuvXr2sn5fP5zc3N+GFjO2IjQojcK+ZxNDc3z8/PT0xMmJkEbjO4mKhzcXFRo/b09HR2dvbGjRsaBScnJ9PT0zdu3FD16zIjiywuLiLoYmlC7txM8LKxsTExoqenR0AZGhqanZ3lICJ8W+XZ2VkBV7YChDLnKZvNnp6e5nI5zaLr16/Pzc2Njo56XFIGiZhtqeEj1T04ONjc3CS1USrqDwLgnXzGL1q31uXWrVsR0VQM7e3t+HpgO56rFsv2i3GNMXJF4AZEwKfMlDIe0caG+q2trX3xxRfai0B6ccovMvCIOBXN5YtQVESrizi9g4OGKlTFg/q6YFgTExPc1IKQhSQSjwDg+sknn+gH1dTUfPjhhxLv1tZWsNHOzs7Dhw9TqVQmk0Fwn5qa2t/f7+jogHe657kLdXd3w49xkcEEUJIgOkgK3r59y+iOCI5LAfNivTYtDOCopy82qTrRdti06ycCjAmvdLU3NjY6Oztli0dHR7DkTCYzNzfHTGZra8tk7I6ODlQpLPxMJgMBYcKFevPDH/7wzZs3FOC5XA6jr1Qqzc3NwTW+9a1vUbqS6YkmRpmC7WGFzk8wSPWqYyMCfUP57HJuamqqq6sbGRnJZDLaFxr8eliu+vb2dp0vNPGRkRG1lfHFzl6Y4dADy/jCdnlqampsbIwC7saNG8+fP9feqquru337NuYhblo6nSYI9bh2d3dzuZxH/ezZs/X1dW3TZDJpQGxNTc3CwsLKysqNGzdMFWLMsLCwIAJS2HR1dTE2QFgDLel4AqobGxtZL2SzWUlHTU1NNpvVTSYRf/fuHV26UCt5QXdgcI7Nb6K1AYu1tbUzMzN6c01NTXQaiUTCcApt32w2Ozs7Ky9D2ornBkAgX4WyxwQwOZox9KoE95a8CbKplgdm1dXVIb7rmEvWVHxBUg8tbfCqJFwXQ1Vc7cGBANXJqgg84z/9SQJW+f9hmOCf1de///f/Hgxp0w8PD5+cnKTTaTeJabSbm5sa1c+fP0d93NvbM+Akn88XCgVIZF9fn5OJp7u6unrt2rWBgQGHnJEejVVLS4s5RZQ6zq1deHp6ylGPNNpwPQBBoVCggMEGgDdrurG4MVtBz5syi/sPjau1YcHc0dGBuICt19XV5fMODAx0dXWl0+n5+Xl0gZgWpQtJS6GJxkPy9PR0bm7O/J5woFdZLy8vNzc3t7S0QNM4vVy5cqWzs7O3t5eDkorPoeK1ZP9RS8QAS0FKImClaDhU3Gw2dDbq6+txx6Eh0Fnv37EBl4iSQidAN9CfpqYm5Y/iUZ3Ixovks1AoiIOGM6riw3u3UCgobDOZDIPDkB/rw4Y35OXLl1OplJfVEDTIg2NPOIW5ipxn8UJzUCaFKumE6+vjHCCCaf68e/dOgNvd3cX2SKVSQ0NDFwe1B/BH13JwcGAHegIQElsuJuxiP8mAiKjx3f1Xz1mltru7+/z58xcvXihFT05OFPKiVZhbiV+wfxQWRwYJzs43u8QUdLhSqGouIutRAEZuFXl00I+llnJ5cy0XFxdnZmYymQzbWCdXl3xzc/Pv/t2/+6cc8/Vny8O6ffu2q2xgYMBZ1Tfd3Nyk1MOIe/bsWWtrK7a6Xb68vKy2l5Rls1lyf3INxpi6fv4QxwWi02jtkSuLQQAj4DFGdUymtbfI4i2MNr+tfHx8rEuoQrF+nrjwB/S17ZxtG5HuB/k+mUy2tLQUi8WtrS1c6rm5Od1Gzazx8XH+JzU1NXwL5CNm+e7v79+/f7+np8d0PFDF06dPW1tbBwcHq6uru7u7Ozs7i8Xiixcvenp6oAbMMIA49EyICK5Qj86eDtZCjBq02zylpqYmyZeaIjA450qJ4RdjrifUNpPJGN3W1dUFXaYo6ujoaG9v1xjRU1MdX716dWlpaXJycmBgQJZhcKz+5t7e3uvXr82wGhoa0oJUGqvsVOhoHJSJ7e3tsjxAMv8GmaPUTzdDAUu6qFimr/RFV4+Ub9AJzmAymYTNaRlrI3R1dQ0PD3uYCwsLuPIMSIJ4qWXM+AzFjHScij5kjOEmyJJFbYiAasnks8T8DCTAW8ZG6DMGlCYfdHmED5eMSbEGHcvlcnNzc7IK1Co5VPA/v+KvENMlLv9/vwJDZJiVy+XgCUKbX4nRs27Wr8WYLz0mfqHLy8tgJhhWRUXFzZs3z8/PDQfmhmzo+eHh4ezsLF9KUmEjKnT3VYWW/+TkhC8oP0/9dfeniUn8T/wKzndXVxeWsE6ZJ+5UM/Rw7ceOUUiSIsfcFMgoeMiVDvrZ2tqyM9gVUfya6ry8vCwcy1Dq6uq+8Y1vGOyKhY86xKCClcr8/LzoubOz8+mnn/b392MSGHY/OztrtG8+n5+cnGRMyvFSbsiMkA4RWswW2b0nBkmv3KUuVaEKg2xkZIQkSNGqhadyp/fWtPUK6lYdVa4m4d8yNzcHmMNNc+A9bbsfD6Opqamrq+vFixdzc3NUXA8fPhwYGHj58mV1dfXo6OjAwIDw/fHHH6+srMQmwXWAkLqZwOHNzc2SdG6lyWTy+vXrLS0tmo+rq6tMQWjIUOf8Op94Egj5NfjJjJ+Kioo7d+4ISe3t7ePj46enpxMTE42Njb29vYYBM1PSZTYJJUaBmJ+ilGanQ3xOkGDVqPoNGaXOMVjMnSGCxPSwINMvLS1R/JBVKWPdT5FHc+ZxGYPY+V8CUufn502W07UMFkJMule+xfT5iFDRRwo7o52dHbOg6NJCXxEDqMM/6+tCaxBH+/r6lpeXp6en9ZhplOCXnJ6gQgwxuKORxRrnLUXv6upKJBJoNV5Z1FMCmNwnXiwvL4doOTBa9EJMeikYp2AQA8SHx5jeivTEDbO8vMxzxpl0wLw45QTyC4yTAQCT8urq6s7OTqUKQ5vl5WVyxe3t7bt37zY0NMzMzCQSCRep/ql8TV7z7t070wq4taAIYEKOjIw8evQIxi+fD2iDB4AZaBqL7nCnJZo10iJ3o3TDVaEvprLDh3K8dcHFVvQ6u1nvLFrXKlAkMtAVCaeKJpgWXpNqj9cQe+hUKiWnZn7/5Zdfdnd3j4yMMGbY29vThTg7O1MP5nK58fFxc8L1ATnr3717d3JycnJy0uhm7Q5wO3oa7SfEh/50eHjYnItUKmXWkYIFIilAsGGQd7x584b3pJZcY2NjmP9ls1mSxtra2uHh4d3d3c7OTq1qoWFvb08StLS0ZBKdBqhyz3AN7FN1OnfDmG4LCNO4JMVnqoF9JjpHdw+RyPJVVlbW19fDHIPqyXq7VCoRVBpcJixenI0ahzooCxGwfN8VzpCrVCrl83k8DPs5rN8jL/P1ZyB+/t8OOLxozvl//uZXXJLX19dVFgoc6MnQ0FBPT8/r16/lR7Q1nPPKysqmpqbq6+vb2to6OjqePHlSWVlpwlUmk1lbW2tubh4cHHT+vRpOMxTT8lgJO0NU0uUBgenOOn7uNLUM+IYu32KQViCqKKnC/slSBUtbGzSAhr29PQpbQ0oGBwf9oSBSHh0dTU1NJRKJ/v5+gy0lmMSxVLsGtQb76dq1a6VSSbA+Pz/XZNE0NG5Ha7KxsVEn/tatW9zv2O+GZXjcJZpT2G2wCfGOajo8QzDReGOoTbwOyYv/C3mU5MtMYYJSLXx3TYba2tqxsTFmFbRKGAkNDQ35fP7ly5d9fX1Xrlzp7+9PJpMzMzMqX4OLysvLFxYWnBkzYk1ILCsrm52dhYU9e/Zsa2sLmJ1Opy9KOOWzLvyGhgahWVOyp6fH6GxeF1BhqY1S18JxAZT4NDQ09PX1lZWVPX/+3NbN5/Pt7e2Co+zp2rVrL168sB9OTk76+vpCYonyxoKd9gM6Ri9h4yG10WwUCgVrwf0tmUzOzs6K/uvr67zIHz58eHh4CL+Xi8XkHj0upJbz83McIO2md+/ezc7OcgBG14JVBaBuG/hHUKhCAm1zAjFNV+IdoP0XDKyL8778MCT3olTo/3fAOj8//+f//J8/efLk6Ojo9u3bv/Vbv0VK+tu//ds//OEPaxihcjIAACAASURBVGtrf+u3fuvx48eXLl363d/93X/9r//12dnZX//rf/3v/J2/Ez2Cr2RYEqKlpSXdE5dzS0vL7du3pVEBXshTDCvf39/v7e1tbGx0DJLJpMpRpEilUj09PcFAM0enUCjkcjmcGk6bnpclCUtyHFH0KIPsvfMYgB42D+z0WDvZqUdHR0rU4+NjAcWggaamplwux9pB6zeTyZgVaI6DTqWzQTHnf4nvgDhG2KtEmLQsLy9DlPkjO2+uh5OTk4WFBRQQiQazXdaXlZWV3Cnp/h89ehR7VNAkuw0eljHxrkHbMWa7RwGLjXFxfj2gXcVXWVmpBg/LYDtSZU0gJY92biWtICrnsFgsnp+f37t3L8RxnLZQ5La3t1dXV0kLS6VSOp02mlfR9OrVK+E1n893dnZ6k/Pz82IlgptSnQiMU3AqlcLy1Y70eV+/fl1TUzMzM5PL5fBd6bQhOAi0tbW1a2tr0LGrV68+efKEQotVIQYPq4mamprZ2VnvvL6+nvNHwNKIHalU6tWrV3t7e2Zo7+/vp1Kp69evCzqNjY2ENcI68pSJKmaylJeXv379em9vr7e31xTxzz///KIHho98fn4Op9N+OTg4MALOfpiZmZmentZJCI7VVzxkQpQT5dvF2XEMOE294tkdHHcfWZCKShDrTaXyJ7TEqvjjiriOjo5/+k//aU1NzW/+5m/+h//wH77//e//1//6X3/yk5/8m3/zb3784x//5m/+5g9+8IONjY1/8k/+yW//9m/X1NR8//vfv3Pnzvvvv/+/Bd0J9MO7p76+vqenJ5VKxQwYg84hweCVTCYzMjIiTbBrOT3wSKKXVj/u7Ow0NDRIpKenp6kCXfvmr8new4jdtkNaE3qAWfJqa8wkl/epY4nh7QTCwlHbectZWlQvNaZDLqwQPNbV1V2+fHlhYaG3t5cIplQq6XNRh2gXmsCeTqeXl5d7e3v/8l/+y0gYJPismauqqhxjqkmdL50mQ8xiRoaAhbaGHK80w+APf3pbiv5G9k4VtLW1pcMduKx4Gu4xdmo0whCmUH5iEqqTzOlUPWuhlUJ0yIY1yHp09w4PD1OpFN42VOv169dsZ7iYuopwF8iYzGjQ3XMOceV1Zvb29vL5vNoqlUq1tbWh42qAmktydnb2/Pnz8vLy27dvT01N6TMIT3ihAIqmpqaFhYX6+vq+vr7T09M//MM/fP369Xe+853d3V0smcHBQTbWZ2dnX375JQJdIpGYn5+fnp5OpVISK3SZqqqqiYmJV69e3b17F1je2Nh448aNqakpn84ntXaQNScc/aW6unpubu7SpUsffPDB4OCg4Ih863pWQ8igQ14SzsUqWQJvDgJy2IuAVHQA3eu6zEEQDWvTtbU1LLAY7xwt4DggMZYi4t2f3B/5jw1Y5eXlf/tv/23//uCDDwCBn3766d/6W39rcHBwcHDwd37nd7744otsNjs0NPRLv/RLly5d+kt/6S/9+Mc/joClhxUj5+bn57u6uqqqqgYHB9m8+T5yGpA4JHUa+ffv31eE9/b27u7uWnuOJblc7r333quvr5+cnGT729fXd+3aNcYJMUfT2tgWGkwUPw6quKZxY2khU3YkG1J2fSIanxPb1zho3Ci1Hl4MOEbexBkynU4HRkMKA6cTmCYmJgTimpqaTCZjZqq+TE9Pz/n5+cuXL6enp5HpmTQhasE42D9Ix9577z2ASJiUqrKZzCAT4RMpEBiYBKEGrCCaa4ojH+KUBvsh3PXkyEHXQtmVWfhbriItSGW4gKjzqGuB9CvQmLhVVVWlcwIG4qSux3JwcHDr1i2d5devXwOkBRHZhx4ZhEvMqq2tNcpEC29+fl6KwV1DgunQ8varrKw0aGNkZKRYLO7u7sqGvE9V1eHhoSKANRXIEtgEVEqlUl1dXTs7O6HxhMehZRQKBeq02dlZqevk5OS7d++Wlpbw+C5dutTd3d3a2ppOp5ubmzs7O2dnZzOZTDi9ADf8L0+BQqHQ09Nz9+7djY2N58+fI/qZ8osYCLQFlomPcamYaFUoFEAKkeOEJ1+A6xf5n7a6+9KMMsyyADHDFDBYYOH0e9FbJqbpxHyd/1fQ/c2bN//lv/yXf/kv/6WyLplM+j7FL3tP3+ns7FSl+1pbW/vH//gfM1eZnZ29c+fO4OAgWHR6ehri09zcDCkwMxkNPU5UNps1XWZnZ4dcA3S1sbHR3t5+8+ZNVk0EzHV1dQg+igUPSI6KbhN5LB2GcKMJDWjf399nts0YxOJFBST7C66wxpZOc4yHYd7mCLHrra6u7uvr6+3tVS/U1dXNzs4yAlZi81nf2NgwV1E0n5mZAWnX19cDI1ZWVl68eIGykM1mgWjYQLTN9fX1Zq6QE/sgYkdMZg/8ArWHjFbSF01lDrmOrhaPGI34HrwbRsy6orj++oCXL1+G1+qpMc8BvetDxWgp21TRhKlrIUZHR+Us2WwWWlQqlaqqqnp7e6XqLMNMBm1sbDR3NiZuhP7OxO+hoaE4k5qk169ft0yVlZUtLS0aPhAllHrCAxSTrq4uekzwuWIW1GKchD+n9oFUar9Sepnr09vbC4xTq8Jk7RBEDcx1pDnXM0RfJrWyssLANug4OOtS+KWlJS6SpPUvXrxwxRpvobJz7+qcBEdUYrW9vb28vJxOp5XSgKTgTwWkG8i6VXPAY6qY+dI69cFlD7FXUIIuBr7YbzI1ZfLg4ODv/d7vRZj70wSs2dnZ73//+9///vcfPHigFwt3JMFzeuM7mtzxu21tbf/u3/07//7Od77z0UcfjY2NxXC9hoYGDi3b29vk4K9evTo/P3/06BGy5WeffcbgHJFXibS2tsb57OOPP46B6Sp58j2TOBXhGAwKRlYeJk1qHikoHCFv0kOPSW0I6/IacnmlkEytqqrKX7f2+sezs7M9PT1I5yH7bGtrU5xiUTiBfPs+++wzTgavXr2qr6/v6uqyvVpbW+fn52VGwIXm5uZvfOMb9fX1L1++JBLq7e1lnmXkCRpB1LM+JqHspUuXent7wdJoR8ZhxeUpa3BhKjRIf8WLULRCH+xCD1Nd7LLleAGXVBu6LckA4zW1I532GPPJIzSVSoGlNEml3npbHj6djUJDjmNiNsEdoZxPUV1d3dHRYaJnKpXCq2ZAlEgkqIWz2eyHH35oIinrqMPDw/Hx8YmJiWvXrrW3t6Oz61Ea+KwNLZ3s7OwkLYaX0z9ns1njfvv6+mpqanBfNQcvX76M0ECnsbS0BDEoKyujgu7t7YVy6qtamsXFRUCng2Abg7SZ3wPdRVu0WNd8c3Pz0NBQY2MjDoRmH4O9kKx7gBwgQlKKjiDK4MFH4hN5k9bw5uam1lC0UIMLGQnUV6q/UHRbqcrKytbW1p6enr6+Ppq2n/70p3/6MV8zMzP/6B/9o7/39/7eX/trf01yePPmzZ/85Cff+9735ufnV1ZWRkdHa2tr/+N//I+W/Be/+MX3vve9Pw7C397efvr0KS2ufbC0tMSnjbeMURQMjDKZjDhI3AQ4wLqmC7l06ZJuyN7eHguOo6OjTCaj0EgkEkp3WVtrayvLbapd1bvjHfIui82vGucA3dZEP6lfGPUToxC4VFdXp1IplyeTf0kcJxMtS8075oUAO1QDPZ3+/v5vfetb+Xy+oqIC0mzk3A9+8IPW1tahoSGla09Pz9OnT9fW1kxa/PLLL6m1j46OJicnz87O+vr6kDPpb3p6elpbW/1MeXm5SWiQ15qaGriS+1M7wjXIwdI1HiVAcEpjvqSuiB9TEciSoocIWpImkIIK8eBIjd3Z2Vl6UuIB1e7u7m4+n19YWOju7m5ubkbQlRmp1hljGPqg0ucHPzEx0dHRIUnRFx4dHZ2YmKD9xj5xvNPptFRUlsqeCDvMCaypqUGPwpOiUtB7Za+o9ax5J1e9deuWDFF/Y3t7+/d///cbGxt9v1QqmVHI4fbzzz8fGhoaHBxsbGxcWlpy4TkUq6ur6XRawBLNwxQsn8+XSqXu7m6bGS/EbMpkMomFgPjCjinszChn6ZncvoKLdw6NCZIBtoe0+iu8UORPJ87mdxPHMOeLHcOIWaGyjuRLJkHeC4CLt/Snx7DOzs7+xt/4G3t7e48ePfoX/+Jf3Lt371d+5Vf+6l/9q//gH/yDf/gP/+Hs7Ox3v/vdVCrV2dk5Ojr69//+34cLfvvb3/7jXi2fz4+MjFBpLi0tra6uHh4eZrNZsIseLWB+dnbWbJW9vT0zuEEnPGEA7Y4oIuXa2tpHH32UyWSEj2KxKM2OEQn+6MrKSthLx9g1SdPm5iaszbwvgyEgNUoq/Km4KwAx5eXlevZAAeNbbCaJbowap7mFkfktzQeuldeuXRsfH2fC/fbt28PDQ8DwyMjI8vLyixcvfu3Xfm19ff0//+f/zL+hvr4+mUw+ePAAP6CmpubWrVsgJJMgDAE7PDxcXl5OJBJ0LXA912OhUIh5XJAFbzgUG74ZgIVUH/ChfxL7MrqK2CHSJcRxq4OcAQekONHuaG1tVUQoWI6Pj3FKvQ1XEXI2zI6YRhshk8n4IGZfi1lv375F7MauyufzDx8+JEsQbe0EV7rtymaWTX4ymTQWpLm5eXR01GBBDXiKBX5kRJ1HR0fpdJpgnnJe/UvsaaJHMpn89re/vbW19eLFi8ePHzM4lF9/8skncbOyTsa9+NnPfoYoiwyhBFlYWHCZobCk02nE5rOzMwxhh4sgf3BwMJFIEOWogZTPxkphWbuiFHTiThjSh2u2zx64kmICMI/ZqwMb5JiLFKj45leilYPT3t7u88IixMfgzf/pA1ZZWdk/+2f/TAeKB+alS5cGBwf/7b/9t0+fPv2N3/iNb3zjG+7nf/Wv/tWPf/zjd+/effDBB9FT+6MQPrmJEP7q1St9DRP3KBhWVlZYiyDsTU1N5fP5oaEht9zCwgI7JL9eUVHR3d3twDD6gUmZrYINr3aATHFJR7ZU/Ynrkl7HTK89IFXlrVoA/3hoaEhnJ6yE3WNHR0e219zcHFe8EIvGGysvL6cWCpGaLchgxESfra2tu3fvqphWV1c7OzuJCg0uM7mEX/jBwcEv//Ivz8zMzM3NlZWVvf/++x4dEoDp7SMjI52dnRAcsBR9kkYB6yvGnm62iML2dPgZSXAENZ8raH72sV/X4gy3ZdQNzUSPVwOb6jBGQOsJSOvAcLgdDoM6iFTQCWGwybl4b2+P4uf8/HxwcPDjjz/+4osvGAHHuNCuri5xRC3G+wzbQ8rQ3Ny8srJinlAymUylUgpqVZXTrlfY3t6uBKutrZXde3uc+83iNi11cHBwbW3t/v37h4eHz5494+YGeeTvzI+/q6vrs88+297efvTo0ebm5ueffz49Pa2qMJQsm83m83mQCLdboVxw9P61j4hYnX95boyBADsC3TmdSpApn9bW1tgkyEkvUqtcVIFVKTJsg4ut4Ytjby7iU5GaQTba29u7urpIl/wh3TN5g6MapeifMmD96q/+6h/9fnd3d3d398XvVFdXf/e73/2/xsXJycnq6uqRkZGXL19GeB4ZGbl//z7WCZBS39Cg3Q8//HB8fDybzf6P//E/KioqHjx40NDQ8OLFC1mSSFpfXz8yMgLrQVPSXDs5OYEZhU9AIMdra2vOkuMH8HIyJcZY4+3t7R6lZ2qX3Lp1CwzvBY1sosGW2FtpdGHn01xMKQ8J2NraWkNDw+LiooRRh954qJqamu7ubkENdPWzn/0MtvLo0aPl5eW3b99iNn/66afNzc0DAwNwumw2iy2pHOb0cnx8/PTp00KhgKVl7FhIKPQ3AsJTI6jykCEucoaj+aAYjGQNNKsQVnLGRlT5AqHNyuaGhhjs7OFqMRQ+OjpqaWnBLNGhA5JitMIfWX1wAWTAzwyDp/v4+Pjc3JzHrhqC9bKy096FzW1vb+sbIEn5vAo9D5O83LB7wIVwrCdIZuhylfvTKldUVHz729/m8wmlYo9DjUwslU6nhZKnT5/W1NS89957rsP9/f3BwUHxRaDH+8O5NYKQXto6MqGuq6vr7e0ldwcd6vZq9eJ2oIlCe0G02Wx2cnKyVCrJDWOVQyQIcwTm7u7uhvHGxckRAK/Iqr7S4BMlJfiq+7DMFMVceOG2fFHM+BcvzaFQee+99+TYvIO7u7vff/9905tJ/8E9pu/RAKsU9vf3b968aaS7Y7a+vs5idHBwEHIpSNGUqHp6enqCCSI2RbIKKoZwh0ycsyI+oVoSofTs7CyZTLKRISTCJ4iyH3t7d3e3vb1dt9H6uYT5xkD3Nf7N4IK5Pn78eG1tbXV1dXp6enR09Ozs7Be/+AWgh2vNyMiIbizUTNpFvdHX12fjOtIqYgMLvD6drYxDDlhVVaU/wJ0u7sZoP0vEQh0WFy/qvzAa12CkWuxKELiU0pHtK5PFfRCVnIhy+OrVq+y0tDsBQPB1lvmJRCKZTOqO4YW8ePECc4pXNZrSwsICWMSGATl5M5OTk2Y+otHhkfqw4lR3d7fCHEXDwvHVQrvr6OggR5Vrb29vDw8PR8GOXayYqqysLBQKP/7xj3FH29vb4RI2FfB0ZWXFrdnf3//o0aPp6em5uTl3GLjdvqqsrDQuQI/FGzCxorq6uqWlRZ3llj0/Pzdaqbu7G0If2kAxWi0P4kCVAkGYehcNYoWbfCJQY6scJHUBMUgP9km0O4J6rTkeJhBeNpJ3uyicaS+iYF+XIRSGOXNuY1bZ3t5+6dKlXC7X29tL9z87O6seXF5eBqlOTEysr683NTWZ/2G6L/cPth5DQ0N6ZDFu9+DgwBA3o+ejh6UehAqj3nDLunLlCgYKQMduBs/b9Jubm1A2G9rQpFKphGe0sLBgi2uvJJNJJEl2t/4Q83Vi7Ki/PvroIyC3gkitIRHgXcnP6/Lly52dnZ999tm7d+/u3r3LgvnGjRujo6M0xjLNRCIxMDCA94T7Y2xaIpGwk4zqCzlOyOhd6bZ+RKsYS0FqEyMn1NGRednKgFhUzyiuwyZcxI8buKGhwVxllY4+o0684OgtOVHqGokDJQAIb3Z2Vk396NGjp0+fsnPgBSZr436xs7Mj2SSsI183hIk8E5lLw5RfM4U5ZAfjlI9jsVjUxpEF27r081qBJtqaz4RvYRzJgwcPvvjiC4rRs7Mz9SNqe3V19aeffppOpyPKNzY2dnV1AenDeV05JsckYBDaAoT1tmEL1KMMkWH8DHNkwcqCaJ1DP3yu8FbHoYNsBKAeymQlYQgJL7osSMOTyWRfX19PTw/CrV+JEZaS9PDPir0Xqp2vS4alqafjhqsNWTw8PORkgLLIyHxhYWFmZuY73/lOqVSanp5G6da4NYeis7NzaWmJ4RRTvRATIF4COLGu5fmeZltb28bGhuxMG1tDh62txM359KC5jzu9vEHAK3HUXfsc+7F7sHLgYuvr67REfAJso/Pzc10/luS1tbXmxQ8PD6fT6WfPnnV0dHzrW9969uwZkzaecJ4b6Szx9vb29uTkJEQ/DIhZ8RjTFOBFQ0NDeEu6M8NSBpwUMrFQSISN0cVhAQrkGEtnnwVmL+JcvXoVVZ1+QCGAuhnAv+W4qEdT44tKHiM48uJ0DCT1RCJRU1ODooHV8Z3vfGdycnJlZWV+fv7FixcPHz4sKyubnp42BnF7e7utrY17cvicuNgQkZA/GBzhsiwuLmK0KZdU2UbYA868YBjA63Ej65q7defOnZs3b0qjzs/POzo6Pvnkk0Qi8fz5c3Qnl+7CwkK4qjc0NBjmfHZ2duPGDZSr3d3ddDodEzkB8+HtRzhpZmptbS0X7ECUrALssvZ/fSHKu1CTyWRTUxMlP7NmLU7xMWifseEVKyHY8l+joGMcNDw8jF4fNWNcVLGLLs4l/MoU1a9RSajJotsiU0V+Y1IcnYLOzk6D6XHncrmc/0Svu76+jgtGRI1oV1FR8fLly5qams7OTmNEtYQNSbatgxMMU9fsR+kOFFmdD1YESLPu5NvHzOjw8DDmRwZ8Tgrn4mKiViwWTWYFuGBUuosEZU0ZYyD4f1KTkL/K195//30oGLZnd3e3d2vnvXv37tmzZ6iMtgW8A4LDe5MM0Og983hwSqlkrYLoCd0T8W1HtUM4vcWwxfAqiRa433IS9PVDKApjCgEaNCqfzytYSBrDR8WxQbzChuvt7RWwkN06Ojr29/eZFF+/fj2ZTOqdVVVV3bt3T8Tk+sQGa3l52QRZY8N9BDZMWA61tbUff/xxTU2NwY7AtcXFRXJC8V0mpSzVbJEM4mrx80kkEjdu3PjRj37kg5jaXVFRMTs7ixl7584dUu3r168PDQ1Jl5iFuO1aWlr0+yTjniQDeNx31qbmdIALWNrKUrVNbGClSUtLC9QJl0Ke6+Fo4N66dSvmfr5584bHHEAGoqJA08YNpCngnVAvsOihOvLO/YAo5noD6cZYiq+IECOcBZz/dcmwNOliIEpfX5/NBFgRCPhnu3AIjE3HlQ1Bf1gR8f/v6elhxhL6W9M6bWhIuZuHjbKenYlvchPL5pWtjSwD5cdkPZp7sGu4oWucbWxseAUNLzVm+NUQe0vOHRW/KD9fX1+HqQ0MDBQKBfOmzs/PR0dHJVD9/f2I4wx8IUGFQmFoaAgmPTAwoEDo7e29cuXKwsKCcmZqaiqXy+lh4S7gMfIyD3TfVUFXCHcLkZrdH7VAeF2xGJe76fTFTPOmpqawZLCbmRor5SRcLioaacQO78qRAHAEEicPElgFOApwRFkCddW6I8TXoa6uTlent7e3VCoRxLgOFxYWEMSbmppw2UgOwqi3ra3N1BlIM50QnJtJ1uPHj58/fx78GCp32oO9vb3Hjx/jZJydnS0tLZ2dnbW3t5eXl7948eLg4ADm+Pz582w2y7aQGgYtBgnOMFcfkB0IAgEsNZ/Pb2xsiMt2HaTCfUyMhS0YpP8As62IR6G7YntTzkOXIpl1TnFKRJBwuBSPPP/Ozk4mt+JmgP3RivGLF8cRhsPfRUF1+G0pIb8uGRYER84/Pj7e1tYGv6yrqysWi42Njdpw2rcAZgsJtLNO0g0Npt7e3o2NDV7vcn5WeXwdzs/PoUjDw8OoQ5hZ+lylUom9TAxlM0QzZrJTaGsPb21t6YKFvB4JPnqxlkSy4yfRJnS76JkYoQEdTPFkxI5LFQQI/Sz+fAzq1PzYodevXx8fH8/lchsbG2NjY319fdpJ3GYrKyuHhoaWlpYgRD6apEwbm+pIH5BrHXFZ0NljMoXvxCbWe/LlIVxkEu7v78uXpU5ex/0M00XUYI+RTCZdpIGbeIxwPfmLUh0oHgMLvCuRVFjEM5BnjY2NXb58eX5+3jRT/K+2tjY+OQcHB9ls1vQ2Y75k7i4hj523h9aqS7G5uXlpaUluUltby3FQNDHeUb5gkHJ3d7fNAzliueGzt7e3K2mfPn26v7//4MEDjGUQ2ObmphKbL640lnhYwuvXTQ9C8vCyyHSgN9uSuS6ES16Dw4i3AfOFUkmjzMKxBO4PiLhOlAQiQP24URoaGjo6OhhSyt0wkC1WQO+iVTgvXSTQB35vs6GzOuBfIwxLEs6fF96cyWTYnMtv3759yzYPFNXd3Y0jd+PGDexEnQ6UwkQi0dbW9sUXX+zs7CANptPpRCJhypOapVgstrW1CXOelK3Ad+H09NQ8MfgULCl8fkWx0J2gWUaDw8VrtCdkJ9YDnY97JCNdpx2chK+IGq7PtbW1pZ2UzWYNuTk6OhJ0FhYW3r179/7775trYB7U2NjY/v7+yMgI9ezy8rKK6c6dO8lkcmpqqrKy8vbt26ozYqmqqqqlpSUBl1ajpaWFNgiqfdHqKOY5R65uy6pko0uotFRLwnStkWUiR5cF2KB+JuggToXIJRJB3DEhAHByMWoVmYIXlI/DYhTman8Cr9evX9+6dUv9jgK+trZGvMIzXg2r6tzc3FRA9fb2ZjKZmzdvlpeXP3nyxFyvhoaGV69emUbDUOz58+f4ro2NjfwP9vf3TSpFXt3d3SV6V+4lEglX79zc3NzcXENDA0IGfINrG6cXW9e0xGKxuLOzMzAwoIgWg+AAr1+/npub4xVBlVUoFGIWJ2E/rVhzczNVvPTZM7S7jo6OisXi4uLi/Py8NqidIMvDC6XfAmXYA2iAbW1tdLt2S7g4XBzdHGTRcKcJwkRYy5OCCWTesPIzHP7+4gMWCe729vYnn3xyenr69u1bRUQ2m62vr//iiy82NjaY22KXMdh8/Pix5wt54aq+sbFx48YNdBIfVamIP8U8CFeFEkXhEMOIZLYi15UrV2yaMI2CztoTfizgRmcmJOz2Je6Y0YHMvNHZg8bt1VpaWkQujRLty+A9lZeXt7S0DA4O/uEf/mE6nVaDfPOb36yqqvrv//2/19bWPnr06Hvf+151dfXy8vLr16+5buH6I9AeHx//p//0n+wzg3+vXr0KBuJ0qEsI9UPBZyoSYKdU/ysmsUHdAACpvvm4hhe4va4S4QYnkcTJ8pEVkvTYQXoK/N5f8b/+U7yyRDhkQJilpKBQOVGjsrJSB7O3t9egyfr6+t3d3Ww2m0wmIdYx10c8gvohnSSTSS5RvMmuXr1q+dxec3NzskWtg56eHk3Dvr4+Xf/z8/Px8fHy8nKqfh6TZo796Ec/SqfTlZWVg4OD+j8bGxtv3rzJ5XLgJMl1TU3N1NTU4uIi27jz8/P5+fnW1tbe3l4m1y54vH/OkQEnybC0ubu6uk5OTtgQuQD0oGIGtZErnIvAlNEGkVYDBGRhGEgiphMh6dP+jqIvun52cswcDGrbRZPL2BKRggWNIwTSX4u5hLbLb/zGb3z88ceff/45TrAu7N7e3qtXr9rb26Xxt27doiWkljByhiyDu2NLSwtjFlvz9evXIZjACaJZY7DL6cH9Y0yjRAnJnnNIU1OTRqG+z7t372jfJBShLkTLvtjZ9QNaP4VCgc9kS0uLpTwQdwAAIABJREFUnBHej9QnULrba2trASWFQmFvb29lZQV/or6+vru7W1lEjFJWVvbBBx8YL/zmzRtzrpqbm4mNent7FxcX37x5MzQ09Lu/+7v7+/s9PT0LCwtbW1upVOrKlStOoyxSHbG6uhp2hm1tbYCYmLJp40ZmLgbFRJMgHIW3EXNhRFBPWBhynGzuKEaEAIV5iK6DGR/TSTmXeR35GrhQZhRjmZUS2jhu8rGxMZRgllhkTO/evTP1Q6bA5F4cJBHlwOM9rKysmAUtqjJ6L5VKU1NTkBoUAWIDHDeMQl6Jx8fH0iUf//Dw8Gc/+9ni4qKsFn+wubl5dnY2m81yOkPNa2lpyefzssXJyUllhLIdaCXKqK/DgEj0ZGyr3L7It1Ir6AwI5dLAIKyY/XF4eGikcwzQxRpT9rqBdJOcGrltFIBfafzFv0N/GhzUi6EgMjI3olfe3NycnJz8ugxSdT//zb/5N7/5zW9ymyKCOz8/b2tre/Lkye7uLudsVf3s7OzIyMjIyAiICjuZzrOmpsYIzNnZWdi2YUH379/nUadZWywW/ZiNG5W2MI/GSeyqlIvGbVzpoBn/u7m5CX8J8YEaTXCks7M86NoNDQ22+8rKCjkhb5PQTl+kQek8CH/V1dXvvfeeie1MYNh3AJKbmpp2dnYWFhawz3784x8TAOTzeeD92dnZ2NgYIAm1ory8PJ/PA7A4ATgJxiXobARiZSsHWd+1TH8jLoSVSgxHwWm0RsFfQzfDvw3jyqDUWwux3p+QIvFcJqR35FjcCAThoO/46a5gugNrwT319fULCwurq6tYdXfu3FlbW5NoQL4Vp/IIeZDhzELw3NycLVdXV8dfdGNjo6+vz9gh6hbSSHbe+Xy+qqrqxo0bzc3NpVJpeHg4pHYIz83NzY8fP7ZPysvL9XZPT0/HxsaYhRox7yM8ffp0Z2cHF5pYYnJy0iNVThpYD1OPsbguoYsG3xBMRatrQ7i3mgSG1dXVnL+sNahOKifGOXRB3IsGS7BeYt6XlCq+GRbv0TEMwvbF8VRBjID9F4tFb+NP79bwZ/t1586dBw8e7O/vLywsiOhmdp+enr5588a4DlloLpfTskmn0ysrK8lkUhG+traWy+Xu3bvX0dHBBFk54Ga26TV3LBgfd2iF+ry2tpYbCXU0h3wNkfr6enNQogUbYkCBNSB2kWV5ednlT9sh9XD1oV/B4J26YrHY0dFhZsT6+jq+D0qE4ezHx8dUIPxVzNeZmZn56U9/enR0ND4+fuvWrYWFBd5S4s7h4aGhFZilvb29ZI/4E3ahlplHrZve1dVlYBqKqe6bZxX9mrAY9BXjM7Vu3fmSIHYUF5k1jr3w9xXXymhvK6ijSImDEYpZ6+XRuWbUJuH57RMJNLST7iHvIQav7+/vLy8vmyiuPUr3zokUIQsU4LjqdYKo9UCMKZOUidqwMz9sbsDo6Chm1snJiYfDZis8hVBYM5nM+vr6+vp6W1sbzP7w8BC62tjYWFNTMz09beZjsVjMZrPOAuiAEqCjo+P27du8Cfkvgw71cIg3AYtuRK0D+9MNESN1FYnqPkBe4N9RDVy0aY+CLnKrgKsiWsVXXOohMrnoTmODCVhY2d65OoaP0F98wLp69eqHH34YM8hyuZx0dH9/3/Dntra22trafD5/fHwsOaqpqfn00097enqAyvX19blczqzjnZ0d5M+w6MNP6ejowJrBn4x+lu0LB4F2yWXcJxZeh8hx8v0gHFlXlB8b9+DgoFQqNTQ0GANBtQOikhaxVcGVZwwNu7UwmFOFQkFJcnBwYCgTo5Vnz57lcrmlpSVBfGNjI5PJjI6OfvOb35QQqZ40aJhemGeTy+XCsl1lur6+vru7a06fNBAxp7Gx0Vs9Pj5WNQSmAK6yw4IypsRWNhrNYueFuVKMgcJ1iPFTZCK+iRusZgnRbAQg3xQ4IMGCV1B7Aj0ElPh1Tw+nVxyRx4GfWTUMDAxwFlV4KpSUcroHApl/O5ycryXszLup0P2nmOUT0Wp/f59wj3eVrJbH8cLCwh/8wR/guLppMDkmJydplZqbm7e3txm3X758eWZmZmdnp7e3l04LOUslwbHPvp2bm3NbQGBpwqJHWSwWLXc45BkEZbGiOdvZ2akZzYUdhy58+OTaQTpxNC4SQYNL9RXx88X/etGrL/TzZ2dnWhPufoO4xfpQqv7FD1IlzsI2KJVKY2Njly5d2t7edvG68BkMXb9+fWRk5PPPPze07sqVK319fUtLS1pmVVVVmUzGyiHCOXtXr17d2Nig9tzf3zewMxKE0J3wUYr5RQofW7OhoYFV5kVEOQzOLXOobfiNST3wKiS6Jgzv7u66+hoaGjiy6vgYq8EzR/+ooqJieXlZlTE9PV1fX3/nzp3l5WXW762trffu3Yv5bgzpdaBZVp6dnbW1tb1+/VoPobm52XCnmZmZpaWlBw8eGAeJMeQ+h4+IPj6j7lvkNeJ7KDY8QCmJaC5UOfY2cRhguhVi2opNLLbC5lRG7jDP1o/FTlXRSL5CsIZD4ACTm0QLxfshMcHbLisr419onnMmk2lqamLe0NTUpBoKhFhI8iKSjpgGEmY7tEfDw8OLi4vV1dU3b97MZDInJydoX+Aeu25wcBCHo6en58qVK19++eWLFy8GBwebmpq4s1+5cmV8fFw9K6nP5XKc13QYUcY5vjvMq6urN27cMJliamoK48w1wBpX1UJk6k6ypuHWb/ZEJDucDmXiBDSWcnNzEwvM7wrfUfRdjEdfkTpH5hU4eiRioemJf3iYvA+5sBgB90df9i8yYBFnlpeX43yOjo5WVVW9evWqpqZGctTf34+oVVZWdv/+fQOpbt68yfOora1tbm5ufHw8mUweHh6aH4fu4NPqNCOLWxgWVA6ASbYAHdeFjk9/fz+0xe50JolL7S2L58XFHf3+mpqanp4eoLhHbIsvLi5ygHF4AqNVwbEMVMIw0sJmPj8/Nw4X6n90dDQwMCCNF1nW19dfvXqFMNHW1qafxcybvSQNI7Dj7OxsampK8bu6uhp8a5Txuro6nO9ARj2fi0ox/zU4HGH1B5DS4wunt5DdK7U8c5/d70qQMdEDgQphkAMf0lnZa0wGwmB0OQetLHRFliaKWeXwRV7lysoKQ7uOjo6WlpZCoWBXKHkc1NicCkMJHUuG7u5uAi/hzIACc8WNaGFQxW0iusPb29uIHTs7OzxnKisrNzc3TYS8d+9ebW1tOp3mNrG6ugor8MCZNUp4gWUO9ubmJjNxeaLaUHwJ82JRQO9SQu0+CzWCrDBIdmoI08NsM03tELTFK9skQVW/mDp58WBXBbIZQohY66hJxeilpSWOXQG/BL78tciwJFZSgEKhwPQStWRnZ0c5trGxkUgkqFvn5ub4AekPMsPCnevu7i6VSisrK/fu3QNDutNCQtXQ0OCHL7LXVE+Yq2w6pAMmAOKjyrpVNE6XpIaKwrUMQXdrAT7jWOKIu5dERh7zWN18muz7srKyZDLJ9oTgTiCmXrTPJicnz8/P+/v7S6USh79SqUTWu7q6qhSFgoGipFHf/e53SSyhb62trZKsS5cubWxsKBm4A4aO32kMiCFEsI5QMDx9Iskm44GL+FTsUfd2dBvDntR7CCm1YvCieZtkzZUeEpDoY4QAMN6MrAGjB3/i4pnREY4cFmhgEXEm5Lw0D0aH7e7uUh3L4IQMu0gutry8jIIkoevt7fXrAWx5Y0Jz8Pjm5+dramoGBgYODw9HR0ebm5vn5+f7+/vduxjODK2YMlNcg01hlHNzc0qT7u5uq6zaZc0etAa2QjFdVUvaQ4N5CYvS/4slntLPJMTwjMM9DK78RXOrCGSxFvEzgaNf1MYj/R4cHKysrHD4QrW9GP6isWZZvxZMd3M9l5eXc7nc3bt39/b2nj17JuW+efOmU4duzpXNzM5bt27ZQIomJbp7YGVl5cGDB6urqxMTExL7EKxqDurHITorSBk8EosGtTcszfyu1rj6EazA90oxWFVVZQaP65e2FliAk+GJo0Gura05dey6Tk5O3r59a53ULJICvbaxsTHep6rUjY2N8vJyCg/cHDUU+K+np2dxcbGhoeHjjz8uFArI9Ddv3tzZ2Umn05lMBrKOU/b06VOq6Tt37gS/hl/SV0y7RWfF4EUqrDpRYuUajLagDxjjM4OeIz9C+PIwQyzt56Fawl+wqF0b2n9uiNPTUyXMVxAGFg5AzHAHhDNCEmik6urq3rx5I8llLR/tfwCcjNLrZzKZTCbjumIBKHHzW0yuE4mE7g2MkgJGkGK0racp80LHHx4eVnWWl5ez6scchnXSuBDec1CA7Fy6dInhpRbBlStXOjs7g2BpAltoSAytYUUr6CvrYLiYCmx1Y4Ra+DKC4WtqaszWBCQBmCJduhiGAqWKsc8ByccSWzhZldZWLpdjPBnLF1TqcJS8fv36L37xi/8rFevPCcNaXFw8OTkZHh6+f//+pUuXfu/3fm9paclAJGA51RUr/uHhYWN4rDERBqYP1YX5g3fv3uUJjTSgrINGxXRicQFP0mV75cqVtrY2KfH29nYikVCYMDNCN+czS++iYHQLRe5Kuw/fdcgBurlczoxCidL6+rrXv3btGlcGO09Q0z+qra3F8q+rq1NK5HI5Yg7SpXw+Lzsj/R8YGMCk93DOzs76+/sTiYQu+Lt377j6FwqFiYkJg6EePHhAv80eD2iCzxnTB1z1OoDgIXdDEBHCMlgPUWCV0Vw0So4USbHpB2J4hOMK+IvBhVItuZ5lMvEUdxc53tlzikTYKBjpgS2QqvPk5KSlpaVYLIqYP/3pT3d2dj755JPwAuMPIcyhLHEu6unpYWvn3foI8lCeHMVi8dq1a4ODg/X19dFzQODAW46eQCaTuXTp0u3bt5PJZLFYNEuZUYfOIzETygtTXyaLQsPBwUFPT4/njDa4tbW1tLRE1rq8vOyOFHk3NjaWlpa40yB5wjr1hZubm/WapDwBF4Z41pJZEVR72OLFJPoirzgSNEEnDGkDpD86OpKyQfT39vYk7yjH+gNyhSv/6yvkq18LDAvP7dd+7deuXbuWTqd1YVkjwWLYtJeVlbnBmFJ3d3e/fv0a+8FGt+FsdDI9vloefTheNjc3x0yngGNELvxm/ACFkrch5JdKpY6ODs1ESJkONKrR9va25Db8lJFx8K0tCVcQ+V17e7vGfBAv5R2GjNlPDJjGx8eRSJubm7e2tpaXl/lVDg4OMqfmr6RpcHJysri4mM1mZVuEh+/evTPYqq2tzWy+5eXlxsbG+/fvOxsSBycw1HlObwQUWyoGfJ2cnID/PHPbFKSl7pB6uCqCdgDSElbibIRMnyQ7SIOaxd4Jta0qBqKMpGYLIX8F690dHnRqW0jdbbHW19dVRlSK/mgMglXthkEd3Gpzc3NnZ8dxdYavX7+eSCS2t7d1JAHhfMecMRRzr8mYheWLGEoh9Pz5cwOZ5+bmVGddXV0Mb00nEU0CI1dg+jfjqkQiwX07vNKQk92jnCbZT25ubkptYgBKPp/ncSSZ1TGMfBl31wQWTK7q6uqmpib9JTPcYnyONQ3ToaD+XqRB7O7urq6uGuGjiCHnjKikVRWOfcF+MNDw6yLNqaio+NVf/dXa2tof/OAHZWVl0B97N/R9bNVA1ycnJyMjI9lsdmNjwwwCYStiQVlZGROfRCLR39//5Zdf8mPAmaivryclpV7e3t5eWlqSWjN+iG0acw2cQKM3LwoAhQAgEZzFk7VZlZ/cZpw3R4UWzFvd3NzUx3WMSeHsqpqaGngB0pZuo9HWLBYGBgYwY8V3M0SNe0KxMc/Rnzg5OTGhVsJ/+/ZtRlpyh4sIKxE4LlVkiMGBlvUEO8GX/M7+k7cC7LS3gmgahyFMssIkPiaV2+iinv9qZq0n440Vi0U9mdu3b7OWDVIiZF096EOpBKMe5BgFqWTN3tPTMzIygo5w0T8gkGNsb5oKR1T6OTo6iusHZoXfd3d3i4A+jidjdIixOigCoUjd2dkZHR0ViH3ftB46G56xdv7R0dH29rbLDEcUHLa2tsa/gZOnEeVRTwGIUS7U0RrxXV1d2qOTk5OYdzAvvYUQ0ChgJQS6BCyS8vl8tMijag7r0UDTY+jf1tYWGk1MTgo2daz+xbmKQlj8jPj18uXLr0VJCKX+nd/5HTlqmL1RgZrfzXr09PQ0nU5z6pibm2MFi6vCrsRndpxKpVIYyPp1U3ClqQCIioqKUqmUz+eNh1MEaeVYtnw+n0ql3PbE+spD6QaZvnAgbAWyiygPIiWTjEHKMjv4l2vq5OSkvb2dhsNR11YTfMm5pW9Kj2QyyX/dWz08PPzJT37C1uL27dvj4+O/9Eu/BE99+fJlKpWqqqoyMeHKlSuIlLg/GvmSoFAguy1UNLG9JB2RP8YoTQHdAcOhd+CDzh5Dz90QYBfbMVI5eEp0jmR2kBr6D4u7uLho2Ie4/8UXX6ytrT1+/LipqemiJE0/S0Pj0qVL6+vr3vPa2prjZym7u7vNc25ubpYT+Vz+ESfWuCr5VDabjfSqrq4ulUoZ6kVU2NbWxi7Z5gnzTCmY9/b27VtOD1evXu3p6bl+/Xp/fz+kKZVKQZcCCQJuwEAD+pTgC2Hv3r3L5/NnZ2eY9LlcjjmXGyKdTs/NzfGwlAhzpxK2ePtIoAqFQltbG0WXy8nSezM2pD0ARrx27VoikdB2d7sHmGUFw0nG6/tbVha+5jnb8IKU5PEigcu5sOXCgetrkWGdnp4yug4fcRkK4KasrGxiYkJj2EC6wcHBZ8+eqYAA3i9fvuzo6AC6W3XDsoACAAt/qFgsVlRU3Lp1Sw2olQbv0EwMuqCxVNjS4Qd/cHBgYzmKDQ0N7ljAcwzI29zcZA5Da72zs2Owu/y8urqaW5597F4VuK9cuULfH5IUSXhVVdXOzg7h/tbWFuhkZ2fnxYsXUEnmR2LZ1tbWzMwMD5PBwcGurq5sNks1qczkrNLZ2WlDNDU1Ue3byqGeiZszJg7gWAleMf4rynBrh3wge4pbN3Qz4q+Hb09Hwg8XEwSDrYpxEkppUwIRX6qrq0ulEkc9hAzvVnGEB2O6H/43m+BUKsWbPwZkzMzM3Lx5U0AP7kKIfiV30eyPdKCmpgaYnUgkWlpadOXk6Ro1Yfmwvb1dU1MzMzPDW8o425GRkejDcgSRsAu4nq0ppwqxaHcEtuCO1GzxPmH8LCptub29PV6+yKvClhzQ6xwdHfEXOjs7oyFxK4fSKIKRJ+N+3d3d5fUcYyv9I6Arz1be19bWFkT5aCZGa4XxqRXxFYk8p7MAE4JI/LWQ5gwODm5sbMzNzZEmYLfzGLp8+XIqlTL2vaurK5FIPHnyBC9JZ5oklTAYZbShoUE1xz/b5EsF/P7+vhtPUFeLEVXx86MvIWIgaYSGko/54RixQ8qjbyW4xOg9Sg5VSQArJhSwrndE7W8GgcHKkwXYXiqO7e3tt2/fQuvIKg8PD9++fVtdXf0/mTuzGLvv8vyf8ezrOXP2fZl9xuONuAlJQAnB4CzqBaVVoaVSVfWCqu0FF5RyUanbRW+qqFUFFVJbQmhpoEsKlJDEJsEhcbzF9nj2OTNn3/c5s2/+X3z+PPppQgstFcQXkWOPZ875ne/3XZ73eZ+HRo9AzAYva7Qulwu1+5mZGe4ViqlcS6/XSwV6//79crmM2i+qMsSgY/r/XBuilSRB6O8ktEZKoIYCC+NBMR8wEt/IzEY1CJR56YbYeKcxpMasVCoYCFqt1itXrjBK3traSiaT169fhyCuY03lSwZiUGM2m/EiRJ+DS768vFwoFIhZsVgM+XZdNo3Vu7u7MUyjXlbxxbK9CBOsH3K7CMS8/lwu19bWNjs7e+vWLTgoLpcLSUUeL1lW/H5x0LS2KS8PtatAGfTm7L3W6/VQKOTz+fgO3PyNjQ14Erlcjt7q4OAAyQck2LT2LAYDvY6+ieBFKUqSXUhyqPtKXIFoRbkkPRktFUopUG+KmEgLLEUzcqT4koR+xTujHunPWa3hzJkzTFiwb2PXsdFolMvl/f19l8t18uRJdH9u3boVj8cHBwfxK2RFk0yFHojZbPZ6vX6/v1qtrqysvP/97+fz2NzcdDqdrErRk3MZWNYXbdpqtS4vL1ssFtzuaDcIZ1oYpJqVzKvo7+AmeE3Ty7CByJRKq8KUMEQK9nLInxaLBQ6acdrFjUJAMh6Px+Pxzs7O8fFxRoQbGxtIViKjOjAwgPATlU44HMYoWFP2cDjM3JAlIVoJ4BIcDTo7O10uFwW5qgzjfoyG1vLyYiSvBMsJ05IQzRR/Duai1kbypBxu6jUQfcHwqVSKCRGmobQJa2traL1DPWOLSCg+NH3WCVkY5Edns9murq5Tp05NTEzMzs7G43GtHyDdp16MsMWJYm2Qwb84aFwqNh9gSzF0VpTh39I0rK2tkWLL5fJTTz310EMPyeOPt8ZUgScgET6mMcQpRiIkEnEIQGwpRY2cNdWemJX5/X7m0eor2WrkTPJGeG6MCBjSQXAhoDBbJ23UajWKU5I3Gdo4BRYPSxFZUYbMJFQeQg8+bxweFemys2KcIj3un8qq/v/2F0sJeKi99dZbKO2x9IStG7rdhUJhfn6e2b/JZEokErTQVD0ca6Q1+/r65ubmaIK4QsiqgC+SNCTpS6siq05t+QPoUnvDFIPM1dXV5XK5yuUyrQpiA5LfY5ORs0jzSHzE6oZekk6QSEcaRwmEn8XXEOnAIyhMwuEwYpKxWCyRSOAqhlob8ztAt9nZ2Y6OjqeffnplZQWme61WazQaCABYLBZmZNR9rGTH43Gr1UoDZYy5OnDG7WUmhkR5YjcnDDoiBRd3gMwJCg78QUaB9c5GDide8riM/5GmAfVfXV0lbyFjTyxA8ZkGhLTMrAN+b61WowHs6+tDrA6coaOjA/oSGgZ8gdVqZW1FxFQtjkiigFLCuLjLLeXr6eBk0sGtIwlls9lvfvObdNwPPPAA0YrThZoQCwwEdFEuZVMklwA6L/nUGssiokkqlULDgwyKQBA6kXa7PZ/PZ7NZNitIaeiFNZtNQF6JphCkSLcCkuBzYnogcICoSn4lr4CrSiPAqGqp8pDZC+GJapSDobJLFZnE/0QDZOniPcF0p9Do7u6ORCJIWxCnWGIidZRKpUKhcPbsWT7maDSqFXkeAfVLrVY7efKkuAIoDTErwcKE1XyePnGKGodh0P37991ut8lkQsCbWQxHin1mLiSgO/eWro0PA+8MGljcTfRP8LCrVquIeTE0wVEKzJvPBmN08DLwaTirzWYT1MDhcIDuw0ve398fGRnZ2tpiOwS99gcffHBhYeH27duDg4PBYBASP90iBg1LS0v7+/tnzpwBgIeMQ5GPgjtqiMfGPYQhNYCSPBRbhzsgQSs6aFUlRGQRuHl3EpNkzk0MajQa8Xgchg5FNwYKtPAiN3JXycDT09ODg4N3795FVJq+DAr15uYmZBHcRghAAPNkDt6C9nLU+2DSV6/Xc7mc3++HLiOdVYLj5OQkAxMtMELF4O3fvn17bW2tp6fH5/MBcUiD8ODgAPgZaIyfKylhCnbqXCIjAYt4LU1q2lJR6hkRQl5jFE7bODAwUK1WWYBva2sLhUIEIwxfuRe00tRBlGmNRgPeKZArn7j2pXg+bDuOj4/X63W40KqPaPeAoozK7tVqVeAm9aysZ3gglOEsA3CnpET0v8ewlpaW5ubmdnZ2xsbGzp8/z2G9fPnywcHBE088wVk3mUxXrlzJZDJnz56dnJz878nuxHVmmYAymMq2tLQwv5DuaDgcXl5elnED+IXEwzjTjUaDMxGPx8fGxlhV2d/fDwQCYN7kTBolQkAul9ve3o5EIizW80AlJS7FJW6CpDXh2TMPBqSEA4GHBRU7eimU3LiHUmpBicaRBRB9Y2NDMzitAXLK4b+srq7Cimhvb19ZWaFOhJa1vr7Oav6ZM2dohz0eD6YSTqeTo/yRj3xkaWmJxDg8PAysS4HGesD29jbUapYKNZchZ3ATJD6pe6JUrIV74aNMG/iIe3t7wU2ITfRxjCYADdfX15ncI/uJVhduEcwHRHdgbUtqOeim+/1+dKa0qg1diHEKktPMH4ga7CRLqUIWVaDRNKHz8/PJZJL6lAxHsQCPifV1t9ut266fu7m5WalUGHazSsHiF0kOpM9YvSqrCRykhlXhw6dAnUg7TEkL9k/iAQQEIuS8kQlYQaWHYNmIhR62fKrVKtRrbh/fX3o+/f39ra2tCFTQmpBvALk00yC+wObXUI8OhsjFDI2FTaIzsZVhJcu8dPc0H3T98GapZ1F2+98ErPv371+/fn1tba2jo+OrX/3qb/7mbz7zzDOf/exnQUm//vWvf+ELX7DZbM8+++ylS5fOnTv3pS996U//9E8/+MEP/vc+FFo7CgaDTqdzdXU1mUxCdHr11VeZU6RSqbW1tWAwODExMT8/z0xXe3PY04tiy0FpNpter/fevXtra2uTk5McUxBoPi1WySqVSiqVkiUij0kLZehbUqVTsjIQ5EpIFkLiE+JVAhww5sMXnk2xjY0N8g9INgEC7JYwxBg+EAgQeSno6vU6K1dTU1NWq/X27dtU6UyaPR5POByGNAt7ixeP0vQjjzzS1dUViUSYE2GzDOsCv090UMmcDFipHbRACywieFsrr0YZSUoDXvPW1hbqgDDRSqUSD5DjSwGFHAUNNc/8xo0biEmxFJJOp9n01GCRcANBjxfjcrnsdvutW7cQFKVThhpKrcpHg0sof874leqPyCvQl4iDIjvO8uw5aCFJcOfo6CiKjF6vl8kdtQD83mw2y07y/fv3w+Hw9PQ0PQHLQEasXWrChHuU2hTLenp6WDgDXjAC/4QDthTYJ8W8DqUgmYDxi8EC0hQgDwR9jhBrOjBaiEpCyltbW51Op3GThGoLPRVmRGjDYe7xhKLcAAAgAElEQVSp18k7gnnHnjZScUxUiV9irmJHJL1/k8lUKpXW1tbItdTd/0s9rJaWlk984hPgajab7dVXX7XZbHNzcy+99FJ3d/czzzxz+fLlCxcuvPDCC1/60pdOnz79l3/5l3/7t3/7XwUsNVZgFkCSHR0dmK1vbW299dZbuVwOniRIZywW8/l8Z8+ezWQy3d3duVzOZrNxXKh+i8Wi1WpNp9OQ1mw2G06TzL+BJJVpBwYGnE4nFqQC4xkzoYGvPRiwCSIUXQALtPyejQc+JCDtSqWytbWFgR27LNAspMN14sQJmDLUpJADoYxhGjo6OooVHdmGN4h4TqVSOXv2bCwWS6VSsoMl5uILLcE8CK4kN1ZbYrEYPH6fz5dMJtEkSKfTTOtwEwCz024z3agMewVRi0MrTEfhu7Ozk1VeMbPwuE2lUshyKPSzP7y2tkZr5vF44McZTc/lSySpBhHcz5w509vbG41GSd10SefPnx8eHp6bm/v+978PrMaAVYGMQEm/Q8VHTASjoH4BndAKob6AyQn7reJ8GbU09/b25ubmZmdn29raHA4H1S6oJdGHikaO2doNlrS/lg3AE3ny8hCQ0BhFFi/eZrNxm8CPiF/skxHmNPdgJZCUqf1QPggeOKmUITgPGccp/ooqmJVp0jkPtr+/3+12o2Oh8YU4wMJ/oLyrxwSW6e3t1fYlJSqSvJKE/6loDe3t7VevXn377bfffvvt3/qt31pYWBgaGqLFOH369NLS0vj4uMViiUQiJpPp8ccf/4//+A9iAf+80Wh87Wtfg4ObSCS8Xi+DDwm/0QSxBHf27FkOCusvNPOLi4ujo6O0P1tbW3a7ndqeuBCPx8l+xGxGhNCFGaPiu8lGBUkDMwg8wbjqFKtgXhxotCKhj9IGkl74E4IgyY1tfhGsOCWogHs8HlgOZHJeNj0OARR6dzabJYVC7CKOcCCY9ZA2Jycnh4eH4/F4pVK5e/duOp0eHR2F7eVwOAKBAG5d6XT6+vXrCDkcHh7GYrHBwUG73X7lyhVsUdBKDIfDIyMj9KqEA0HR5FUOEDmTcR7nm+cg/QaaCyogvlWpVGKamclkEKLgyczOzu7t7cFKcTqdLDCEw2EMugVz8Pwlu0gJDK+1q6uLIQyEOx6L1+t99NFHccFKJBIsOQBC04Dw+re3t7HVkhC29uOAaWiZ19fXYVSCIivKMCxDPJ6qR7Pgw8PDaDRar9dxZ2Dulk6nW1paWL5hLUGAN7gP71Tb4CretU4AHYwJnbZhiH14U8LaYbAjnXs+GnRySLp0cyjrcqj4bhsbG4VCAdYOriIwDdFo9Hg80J4RLMXCR8aRYu2y9GrkefI6NQfUYwTDQcecNQZcwux2O8pfKA4WCgX61p8KdJenAOAcSYaZl9FTU6bnXAyx8iKRCGw9qlCCfa1WKxaLbCz39PQEg8Hh4eHTp08nk8l33nnnjTfeYDTGfZifn+/u7p6cnCyXyywbp9NpVszYAvd4PNSTYKUTExNSL0kmk0hQgWpHo9HTp0/7fL67d+9ynprNJqg/F4MrqgRIBweCo20VDDUxc2YIgM5RS0tLKBQiJSJmIiCD/Qlez/b29tTUFAYcpFAY/L29vdhHt7S02Gw26bQwri4UCn6///3vfz9zA4/HY5S7QSUCuJpuZWVlpbe31+fztbW1zc3NNRqNiYmJw8PDUCgE7xQfc+x2YA9C8uIT0fonVTCXk/DB3F3L0nziFCZcGEAosgjkoEgkcuHChTt37iwvL8PGZApBBSRHDB44QyIN4+CyKYHlcjlFzI6ODhR1ec2PPPLI9vb24uLizZs3iRHAK+S/9fX1bDY7OjpKBa1JPy2hzWZLpVLcN4oLriUasHgLQBA3itxvbW3Nzs7i7cgUdWBgYG5url6vnz17Fsq+x+Px+XxKaURklSFSzSeliZfEWp+Iu6JoGY0jJVBFQUf7vL+/32g0kCRl2MrRRbeD4gu4w2q1Mg/h22p+xyvUSrlkIVAS50By6gRlHlPy4y2IaYiOEy9GtKGlpSWaHrvdHolEsJidmprCgNY4AvofB6wHHniASe1f/MVfPP744yiCmkymfD4/Pj5us9mIviaTCTNhHXe4ORcvXuT3X/ziF5PJ5Llz59xuN2s0aPtSwrjdbrQEmE+//fbb7NCQ5Xp6enK53OjoaCAQqFQqpVIJP3e2gmu1GqAgiRT6CateNpstmUwyY0Zsj80yYA7JzsIoQVcP52ESCCt4fKgEUCq7er2OxLDf7weuYh2MYM0Xk0sR/KKel/amFlaAqOU9wclob29Hpv3EiRPUX0BR165dg32G/BsLSUhNDA0NXbt2DVsEq9WaSCQ4hURki8Vy7tw5k8kUj8eZVJAtTp8+Lbp5tVrlaNLTUe8QMbVuBoyq9UCjoh4UMD5on8+XyWSSySQGaDdv3pybm4MddvbsWdbTQMFzuRxPno9MygcMwiFkCGza39+nB9HsDKDq2WefZV6Mwr12QkmNioawKIybH1wnFnHMZnMulyMzEZEBdPr6+iYmJs6cOQO7Qk4NdE88Scr2+/fvF4vF73//+yaTyWq13rp1C+igr68vEAicPn2aaojUzpDHOBETaCVpXM1AJM6lhWFullgm8nSgzkUHrVKpFAqFlpYW4iwzJX6D1iCAOiAmwwetx2sWzyIH3sZCbzX7M/JdjWpo1DG0hJLYlmmuOmJ6z2KxuLa2Bgs6EAiMjY392Gj1Xwasw8PDV199dWJiorW19V/+5V9cLtfFixf/7d/+7bvf/S7jvE9/+tOhUMhms33xi1/8lV/5lS984QsXLlz4rxD+vb29b3zjG5lMZmpqCs6nxWLJZDK5XI5uHIExZF7PnDlz48aNq1ev7uzskL7u3bvX09Nz8eJF9m+An8n5pVKJPU9CQ7VanZmZefLJJ3t7ezGGwxAYzjqI+MTEBGwsXDbFXqFFVy/AQg+4JteP0i+RSDAx0WCbrIhOaWtrK6szMMsY7lB+kuXkC9LT04NzBLUDAykw756ennK5HI/HQWGRFrl//z4Jw+1222w2bM1DodCNGzdouBqNxhtvvNFsNsPhMM0yiFUikSgUCpye7u7ukZERtn+IDul02uPxBAIBxHZgaSiFUukwMuNuAFcB1nJGcZdhfb1YLILZJRIJCp+VlZVsNpvJZILBYDAYhM/Jxh/fnHAPnESLpOwt8RPONwt60kWBwnbnzh2wbUIAuprMQCUWCCwNDMTEhlYRNVRNPGnqIdDAWRsdHaV6UjUkseDDw8Pl5WVgMqBi1PRzuRy7nGztZDKZN998ExdSVjICgQDapOw/aO2Uu6P1I2mli+hE887vaXqQlsSvjOcmm3QaUtik7PyTJ9bX1+mXBwYGYOQxqWATVqX9+vp6Pp+nTTbqiEr3Sjgm/2XuQScLHq+IJpkHjW6MYvAAYfQHLLSIyfxf/Wr94z/+4x8Juj/33HP/8A//8J//+Z82m+1zn/vc8PBwIBD4q7/6q9dee+33f//3n3jiidbW1gceeOAb3/jGCy+8cObMmc9+9rOUD+/+9eUvf7lQKNTr9WQySREhtlQ6nWZdmdTNxpzP50NhHYfRRCLhdrsxAQuFQuBoBwcH6Kik02lEZrq7u4vFYi6XO3HiBJrLhHaMm0Ar19fXKehImJgDYswJpg6WT/nGqJsoQ9dDQ87t1UoneJ/EGxh+M8SVejpsBqRs6KRQRt7c3BwdHaV/YbeGiICAnzSUJTa/v78PFAW/Px6PV6tVPLtWV1clOHvixIlCoQCNlg6LAzo5OUmr63Q60e3S1JIBmdw3YHVISZKziG4Ehx41Fdb6mV4jYsU8l4JoZ2dnYmKCPXYoZn6/nxqWVExGgUaneb+gXEon/urg4CAUChEdjEtFRlVMDQEpE1SYOByOYDDY19eH6zL4Jov029vbem0ELBgMrLhy32w2G4EA7Gl3dzeVSn3jG9+4e/euEAkaZHnA6CFQaMB1orsvFAp0Sblcbn5+PhaL4eecy+UoG9kDk7CiUVtCe0VUgkwbAYaYHYkVISkeWRlS/hNuADc5bDw93jIFVzQaxeOHVg4CsChUFLzb29u1H/5CyZIhvihaWpY4ZrHzbj14EDqK0Hq9/ulPfxpg/n88JfzzP//zY3944cKFCxcuHNsQfP75538S7ihnBQgTLSd2o7q6upaXl2dmZhDGgvhnt9s/+MEPut1uPOgrlQpqivF4/IEHHjhx4kQ0GqXhQm2dxO71ekkR9PNgJRhMbGxs8AFzk5H9o9lh2soOmsPhYGjCYL5UKpGuK5UKDR1GOKgLGDnHDEA7OjoAgxjYAyWwvUhFAPu0paWFvS0JvMCToHnB+xp2TC6XAy7kv729vXzZ9PT0zs7O9773vXPnzqE3AvvBbrejHF2r1ThwgJ2ArzwHZpo+nw+TJewkePI0oX6/n9vLJSTo02H19fUxTmXuhn+tqhJOP6wrIJLl5eVkMvnggw+Ojo7evHlzZmZmeHj41KlTt27dIkuReChdidqAidQgFG6UBpgPORyObDarJWFCs6Iq1QEUTaaNfAThcJiKEm0GFS+0SChKs3cNhdLn8wHaskpNuqLE2N7eTiQSr7zyyiuvvEI/KwEWo3+f6CDSEaYPgpgajUZZIOMPOzo6hoeHCTdMosQF1wzO6PVAIIPMaBQRFYmaHIAzMcGFTwTZW9JDJpOBzgpkxltDbI+aS46wXBDiMimEwkqkPGPxZdzr0kaBUfrq2O+NQe0nZKH/6Arr//bX888/T3Vz8eJFi8Xy4osvXrt2jbtts9lgYFYqlUqlwvMCf3W73X19fYVCYXd3d3R01O12c7FdLlcgEEAzZHh4eHh42OFwIGt9eHgYj8epwGmjeDTpdBr4n8kgZC4OGcwyk8m0trbW1dXFRIlUD1eI9pCLAXJMgQYZki+gngIU56dgXgLBB9YrTjmEVHABBqMIFYHWVyoVppBcPBQpAUoJwb29vcPDw8FgECtzm8325ptvsisHkMFUCH42/QWuUysrKwQjm83G44J7yaZBNptlmIA6hVT9dBzpOLRCwXWi8trc3CyVSvl8nvqL0gkxOQ5iqVSiPI9Go6urq0dHR+Pj42hLsI4nd0K5IcjOC4s9PrWdnZ1AIEBxJwEvylvxMBwOB8FdbrWwvYeGhsbHxymvOBJwIDOZDJ8RuU2jht3d3WAwyOorH3F7e/vGxsb169e/+93vvvzyy6hi0GhrUwecGwaMrrFMQxV6+A3RxG63h8NhmdQazZnYRZW0sUoYyWOokGH3gPguUS0CCkwIciTII0oPHCpAVWh6+Xye1huEa319vdFo6JPFvpBjYLT2MkYc457NsfAkd1VFcAFhAA7cwfX19R9bYf0sAtbf/d3fZTKZj370o16v9wc/+EGpVNrb28tkMvF4HEFFh8NB9q5UKtVqlcEt5EPRzQuFwurqKrKN8i8SGIxuAb8QrsP3kFWera0tZJvI/CD0qDtYLBYk34BRERJBNIaiCbFwDlAsFsOtGowADgGtPrgJrRwXjFG30T1BK/hUDYylqbTFEhIwQZmQyWSYMPAQ3G43q8t4FiSTycPDw7NnzyKVRemHmgd3lXWfVCo1MjIyNDRE74NGGFNFGhZaZviQtHIabhovhsTgCd+dnZ3ESvpKHiyAEXUuuR0abW9v75kzZzY3NxcWFnZ3d8+fP08LSZIXOgb2p+kVj4hbWi6Xu7u7MaaEaUUPyI+DW+v3+0H9oL8SZG02G/67cvrjaqXTaZym9vf3C4UCCAB+JeCkGNlT7plMppmZmRdeeGF+fh4nEe3GM4Cz2+0XL16EK4AwEWEIIhUjGio1ydpBDefBbmxs5PN5GDzomlCGy8mR+AhapOaLhR6AfAaOspJqbW0tl8vRaLRWqyFpz1vLZDJ8ATxEungSBhmOMpyoR7NibLzECDFaEAqGe3ehdKwTNBZf0rzu7++nC/5JAtbPSK3hox/9aDgcfu2112q1GuMbCtFMJnNwcDA2NoZaORxu8jbNEXRQaBobGxsMg1ZWVoaGhtra2u7duweheXV1lYWmgYEBOrtUKsWuOeUMxH/MdRHD3dvbY9yJEhZuPcBh8I9Y5SMYcWTdbncsFhOuRDAV6VTjUexSBgcHIZSiiAZF2+FwIF3EWB0PKCSZgNWYxHPTGP0y00QeV6I6h4eHqVQKDjStEMozXq+XLW5o4qTESCTS29u7sLCAFh2rc2AWtDDUWcATjAvFAIKTzeyMjokiiDAHxYxkDpeCchJVdWB42FW3b99ub2//wAc+0N/ff/XqVZPJ9PDDD7OIxzcnyvMNVaRwLcHg8B+FU354eCgrNvYuGTSzPg3LnEzQ2dmJFxHpjbgMIsk59Pl8uVyuWq36/X6VDNT7Y2NjwDr0pG+//XY0GgWO5LVJRMXv93/qU5+anp6+fv06ZQ4zvpWVFb4mEomwt8hOjKQL0NLgbbLcx6CmpaXF5/PBQ4byAtmSg0GXoFjAkgBIFgmJ68ONODw8rNfrtJDkGA4GK5kcYIpWtuWIp4BKbKprPcBYOhkHdBwhoxIGf6h+0EiAOBazVFZrg/Xnv/zMxv+lS5eoUSHmg/XwuqPR6LVr186ePYvJ6M7ODou+6KZzvfv7+8PhsNIRWPvo6Ojm5ibDLwxvqH4535BImUNBuhkcHLRYLPV6vVQqOZ1OxA/cbjchkhhPx6Q9fj54bpTL5Uomk6g1gA5wnUCpTpw4wWloNBqFQsHhcEQiEX60cbWY2yJ+MPNmFmgAIKEXgG6wyot1K0K9S0tL8/Pz58+f51VVq1XM8srlMl4+nA+LxbKxsbGyskJanpqacjqdpPRUKoX7OaLMzDehksIjQdiLc0/pBFpHFiXrggdxE1jgAO9zOByAgATi/v5+KUkUi8VXXnnlmWeeGRgYuHLlyuHh4SOPPCIeowju2kyWlDgsDZrumzdvOp1Oj8cjPwtuF5xsqLyybAEoLJVKKysrLCdzVzHFI8zh7RgOh8lk3ED25jADh/lx7969ZDIpw3fNlxhP9/b2NhqNfD7f2dkZCoV4OOLlS2BWbH7tacokhWqUEoniS/AoOINgbylkiLgraj4jaXyey+Uy8CJpgHAAgZHwgVcLyQYmhJZ46BmNOBQzB1lRKHgpbhrXS/WH4se+2w5an6z0135CGOtnZEKxuLiI/8Lq6qqUQDhzOA/euXOn0Wg88cQTfr+flVqQHbqJ/v5+4Eao8wgKEwqxPAFagl9Tr9cTiQQFqsPhAF1mebhSqXi9Xrg/brebBqTZbLKeBpMrl8txUIQ9iyRZrVYDgQDDbLvdDteBw0RDh2s8WC+ig8QpMST4nGRzBAJCx8pYsFAocOBAi0KhEF0emr/PPfcctYzT6WSid+7cOZvNdu/eva6uLoYDbrd7YWHB6/Wm02nGf6y5wdsgErFPAxsOZE27+2g0o+KGsTtnFAyO04wdJBSBZrMJBVcOHalUiuYOjg+UNP6bTCa/+c1vPvnkk08++eR3vvOdjo6Op5566vLly/F4nIEs4RvRHgYm8q2BX8Lntbq6Km83h8MBZ53BCBGKCwPNlQaZ7KixDwmG4RrOI+jVdHV1jY2NUSbDJ+rp6SkUChBoZA8hOI9bVy6Xv/71r2NKsre3h5dKPp/nlSNFiTS7VMbU81I68YThozErZ0AENCllWtZgEZVlqgukSAgT2iX9MvYE2OggOGoOSyaDak8fnc/nIRWLhWBcodW2gHEUINBKjaFGBMYHRSzTPFe8M7m08j1LpdJ7Ql6GN0+HTPvDO2H5Fjy+tbU1FAo1Gg1K8RMnTtCOoevEiedewRuAcgmQJO9SJk17e3vwJyKRSHt7Ow69Rs3/np6ebDY7Pj5OqwiJDpekmZkZOMqwVXd2drgknIZCodDb2zs6OloulwGJWS7B+IsMCR+np6cnk8lMTk6Chan0JdcBqLW0tMDnRCeE2TDRkDFNW1vb4OCgz+fb2NjgMtArAcfwDIeGhprNps/nu3379uLi4pNPPgkBh/2e06dPh0IhwPuNjQ1KVO4YB4hJX3t7eywWq9fr0rrDQ1wW9v39/dvb28lkEqQWMxvG3gQaAGyeBgAQKZpHJJvI6enplZWVF1988eLFi5/85Ce//e1vv/XWWxcuXPjud7+byWSoi1HpAETjWNNu0KdTniAKJNE7KBHMv9rb2/FGEnWbxAB1e39/H2CUrKbNXoAwmmubzba5uTkyMoL30t7eXqFQWFpaisVijGiQVFWNQ0BENoP0DDwqZAcGFumEawwMrzmm8TLrdoBGUfYKKQcaw6uJR0TfzZul4GIaSPm/vr4u1XaeGDeLF681D5Zwifjo0zIHFMAvfT7R7jVV0B9K/kGarhp0Co83Cv4J81IR95MUWT8L0P25555DdKFer8N7un///uDgIAXI7u4ueMT09PTVq1dxGGfSJ004OAd+v589QZW4ulGEqmKxSC5lp5p4j+Seqi0kaGDKwULs6elhRMJZNz5r+IpagwIRgx3G8jooCTgXHy2hDdYSJE9ITGQ8voBqCwkw9sKA5PnIQZrIZqyMQupBWwZiJ08GqoHFYtna2lpeXh4bGwOw9Hg8wWAQnJU1CGhH3Pbe3t5sNosXtCw/0+m03+9nzZCZt9zYuXUQAjAWYqMtn88XCgXahM7OTovFAvECfASBZq4um668cRrwe/fuud3uRx999NatW7Va7emnn2aJHXkWzVJkjUM3JDk9fhyNm9wluF1EEzAdQB8KFsSqKB9Al7R/SxVP10Z5a7Va4anhtXXt2rXZ2VmKUwgixCNAeslkc11FZOf1tLe3h8PhgYEBmBkqcAhbxA54sxAdKOugdK2vr1er1UQikclkCoVCJpPBm4dCEhxW22O8Nd4U4AOHDRgRXFKcQSHuyMXA6iBUaRMDRJ+fxbEBMYAhwS86UKKqJKQ5dRrF8MvI1dBvCFuqs8rl8m//9m9Luurn6fwM/Ea/g60243wNlYPBIBQbq9WayWRAEKanpzkQUNIZA8tdjvqLTM6WGcRr5lN8H9ZTKIxZYzw8PIQYsbu763a7oZhvbW3du3fPbrd7vd7W1taFhYVgMEgfWqlUCB/kRlmcIq9M+aDBE0UHW68jIyP0ra2trRB2wuEw0kKod/HRosQQiUTQqHW5XLKZERwLToeQAzDz1NQUJQkXI5PJWK1W3vLExAThUu5JmUwGumNra+u5c+ey2ezdu3ehdBaLRQIQ4g2yU7bZbOzEsk/T19cHeY1dApYokUKF8AX8z5QWL9hsNisfKlqSnZ2daDRqs9kIrG+88cbY2NgnP/nJS5cuvfnmm4899tilS5fQw6GSOvjhL5hf8DwgHgN1S6VEiiC0/wR9fvHn2OtqQsdgF8LX5uZmMBikhXG5XPV6HfFlVMZ4zQsLC+xXUeDzdhiJEPFpSI3cbi3f8aDS6XSlUuFpUKG825aRUkuFhnQjoKpUq9XBwUEgXcpb5gawrkAJpDTP5IGNV/pTmkeGcUqfnGSUL2XrzbKwSh6hY/L0Vqwxjg4FVJGJja2fVHRkeqKAJekIo+Dte0LTfXx83Gw2s/iCXlVfXx/1Dtmyo6MjFouBL7CAfvfu3WAwGAgEGLsgiE7bQj4BpJChJkahDoeD80FAWV9fR64fFz/iAocvFAohDciFhETKI4Ol1d3dTaLDnJVoBXADlMaOG/iXPAqlCTs5OQmSSkpBiIbvyQkDWuYd8UmzQcIZxTGBI8jrAduORCIUEaFQ6ODg4M6dO9PT09AmVldXl5eXOzs7JycnGUey4tPX15fP5xcXFz/2sY/RAuO9jlmsz+cDdIeLr2qFT+fw8JBXAteEfysvORwfKBZwpmNOimEP75fFOlUfiBe7XK6RkZHV1dXW1tYLFy5cunTp6tWrTzzxxEsvvVSv1xkb6Q6oXqBxkyaXQHoaRqEt0HG1WkQ3itgOHCsIvayIUr0ip0dbhDHt4OAgo33ZPkoOAMCeCwn9SiLORn0YTjvHHgEyWDV8rARcLoi8vySOyB1mSqvpwcHBgbbZ1DLDICOgU2/yo5nuUT2R9SnlCIJMdbRpwBWj/pL1r9Ktsd0T3qQVQkVYka34dcwwFTxEBTu5xOi6JFXb9wSG5Xa7/X7/1NSUQjXdeyQSIfqAIsFYAyiZm5v7zne+8/TTT7NcTnHLWZHNEejGxsYGvQAALbAlgCUgsdPp5CHyjAhDjUYDgB+UymazgSXDNmDNLZ/Pc8EAbvgRxWJxe3sb0B0sAzG5er3OlBOHOyIsuslsrlSrVZ/PxzIXO9hOpzOXy3Fk6TUo+EFhqA603A9cgkceH/zNmzcBfSATtba2spROsk0mkzdv3jx9+jSyJxcvXuzq6kqn041Gg+Uy1Ed5gKRf2PbpdBoB6+3tbXTdGH5LVQJ2qJZv2cvjzbKG4na7T5482Ww2k8mkDErpPQkZPIGRkZFcLvfqq69+9KMffeedd65fv/6hD33olVdekaW79un44Chk5PnKaJKQxBeTM/iYJCXOfnIikeBscDCYojLNBKgCsfL7/V6vV8RubjWQv/TR4F5ACqHElh+H0ZKH4e/AwABItnolrXAfW74xDuDQgdGaEUMbUkU2m202m5xG5sgcb1BzoAlQFLow+jVaRUYZfHwQDyuVivaTxbkzJgPNalUTiVeokupHbt4Yo5gKrmP7APpX760pIZQilgbEnBYnAHcz/lAq1wcHBx6Ph5VuBnCcQkQXoAXS9ZhMJthb1FBMT9hy4lO3WCwPPfSQRIIggnMWa7UaHzbVuM1mk5OKx+NpNpvQl6gI6PXAvGmydCih5mMYx9iYsoJinrNOw08BwiuheoeXCHdBLil8eCzNA9JDd0JJgq9ETPnhhx/u7e0dGRnJ5/MbGxtETIYYtVoNx+NisfjUU08dHByUSiVIAEy7+VzS6XS1WkVRE9tt/G5hsVGBgn/xXpAYpSokb9M20p6A7+JXxtIJyQMWEkmeRsgqcNEAACAASURBVNvn8w0MDBDxX3755cceeyyTyaTT6aeeeurSpUtYGVJESJNAHQQBgqdEuYEmAXkb9IQFdaMYSyaT6e3trdVqdGHs6yCfTcjDfwixY1gy6XSaYZHWCambqETK5TKDIF4hlB2Fof7+fpy3JfqoEZ7OucZqVDQqOhQduC9SqtC4prW1NZfL0UmMjY3BgDs6Osrn8wjt41+PTwIvhrwoJItyDwVahEZhbMhr1hiDiFxGzrrxb499pf7W6GDGT9cKtzrTY9/kvRKwwO1UHEmJAV5Cs9mcm5sDJudD4lFCQN/Y2ACS7O7uLpVKjMxAVfL5PBKrFMZ0JYgOu1wusMbR0VH4EABhlE4EDilS8/mxBL++vk7NlUwm8ftOJBKIt9jtdhKX2+0mPHHO6B+RoMJsCnFeaNy7u7swOUmDVqsVASPAHXbZgGPRRZOpFLUAuY7GVooC5XIZwRmsxmZmZvr7+0dHR3FDiUaj7e3tY2NjhL9Tp04BM9GRQSJbW1vb2dmJRCK40kIigVaKxFomk9ne3obZ2NHRwZCeyGuxWBAUhrkGDQruCENYXnChUOjr60NXlmfL4IJzXCgUWMxiiefq1avnzp2jUnv88ccvX74MNKmBGtosUgThxQSDwYODAwgc5D91HOvr66QTihGr1bqyssLVpeDlWKLkQeHMRwYXhHjN9h9UEi4Y5Z7kQLXPSNzhBRC80PwVL4EdPR4FZTtRmLivYkR8K6aBhEi2naivUSW5f//+yMhIJBKpVqtSa0C0iw+l0Wi43W632+31egG8KEuLxSJb9zSzwtSIX6p0jHFEsz+1KcbA9O5opVGgkRNPJwuAoN7Z6CatbfP3hM2X2Mxs6g8ODrLiREezvLwcj8epO+SAoMqfFIoFAwVzPp/HqxLXQsbqSEphtYA4LwknGo1Cj2QciUmEJmhcpP7+/lAoNDs7y1TL6XTSwuzu7oJoVKtVoC6gHP4trxPuEmNmldNMQqUY0dXVRWNCxQdXCzIkiRE1G/Z7KP6J7Gh48q4xCuNgIW0KA5b1w6GhoXw+73A4lpaWrl279uijjw4NDXE/Dw8P7XZ7rVa7fPkyOjBsujz66KP1eh3GKa4QZrOZEUQul4ODTtkLD1bimYhqca9wuGBwSRcpONzhcGin+pFHHonFYouLixxicjjTYVyUHA7H8vLyyZMniSOTk5PXrl1jaEvXCWBEj0NnyvXj5kuUBmq4MKn29nav18ukVQY/ZB3eLEYSKMebzWZEgeiv6RlB4jRh5K+ojmWBwwcklQWaU9UyFotlaGgIOZdqtRqPx+VmpuZRTn9ST9aqsxahjO72bW1tiUQCpYCWlpZcLscXkHWg0eIgC4EL4i7FMq5oYuQQ6XgB2hM0xinFJi6jEZ8SNcEIQhn3dYwEd9WewviMHr1CbN4TAUtv7ODgAMY2SwPb29tzc3O3bt2SQZts2shmeuciW+LOiBQBZtGAViyy8Rw3Nzc9Hg/AEH8i+mVrayttPN8NtDidTp8/fx7yZCAQKBaLzP658FATEY0ASUEb8/79+ziVlsvlSqXidDqdTmdbW1utVnM4HORSlr/w79UKMWgoGATNAiJqkDaYZ4PCCIvVUQAYBqwBiHW73QcHB9/61rfu379/4cKFVCrV09MzPDzs8/lob6lDd3Z2EokEekxOp3Nqaqq7u/vy5csDAwMwGNhKw90W3x3wta6urmAwSInRbDZ5X1xmj8djNpsZh9O+MWhnSwEWKIB3KpXy+Xwf/OAHFxcXo9GoBu2o4rhcrkql0tfXt7q6ioLQxMTE1tbWrVu3uHuCfqQhQSculUtOSyAQYCgmo0muIqRfUho9HSMa1LuoX2j5mQJRfaBSAJynUpdwTJ2rcRj7DIBNYFtAB1p+wqAEfiYjOeKy0RdDe9SSjRdELRoUNRcqRhaLhUqWIE4jzAuG+cH7xQ6aBWlqgq2tLUAuNdrHaOjyvtXyoPB1+XTwr0D3jIFJ/1YgPYnEyL0y3nTjN3+vOD+TZ8gDJpMpGAzChcOt986dO+l0mpGNCkveoVEyTZgFS+TASYCRfAzMFltaWuStQBE+Ojra3t6Ovyb7iX19fbSl8KQlRowWGuIbaD8Aw5dKJa/XC+ZtsVio5mBjOhwO6iOaHagSlUoFHJfCqlarUUzBrmg2m7w2mF/ELBoQMq2afIvFQnPBCHx7e5uIyeUJhULFYnF2dvaRRx5BehTBWVq2U6dOdXZ23rx5c2lpiRKsv78fJA64CtlPuLsIY1BUVqtVNvJojoDP8ByKRqOQ3SuVSigUCofDJ06ciMViHDXChAamcEF4njxMbM3Onj07Pj5+8+ZNPhHAIMIZayg8HI/H8/jjj8NCkvmNhDTwlGWLkKUimJCRSAQFWjD1XC7H99fmI4mKPQGCHWZc0lM9pjDHrJCSiu5bVG9KbM42iId6Rvov+JzCH9kAhYtApJCrmAw+5D5LcBEPQNRwWK/U4HQA3H+m2HwB74V8IJh/d3cXfyD8vvgRWqgUt9FoGiTOlJ4G7TBvXPQ3Y59ohOcZF/B8ZHZvdJM1DhmJm+8hDIvd487OTswIALmRuLx48eLrr78Oi1rSsUadQwngKyofHh6iTgPazWejsZfdbmfiQ9vldDr9fv/s7Oz169eZoXA55dTCw9rc3GRsh4TA4eHhxMREuVwmf+bzefaBSJgsjnKkYCqgm8z8yOv1MpShhgJ9oCIA6WfUIA4ELgbcLiSSQcRphHnNsN7pZ9lVQpUBdXycYsmr4XA4EAhsbGw899xzd+/exSgkFot5vV6LxRIMBimR7HY7q+AUvHQrqDuABLe3t4+Ojh4eHgYCgevXryeTyampKVSuTp065Xa7a7VaOp2mJMGoFePPgYEBSBLS+OddcwcWFxdtNtuHPvShbDZ7/fr19fV1SBu1Wi0QCADY837HxsZ+6Zd+6ctf/jLTD3RIIGcPDAxAkZUnOys1oVBIG3nISDAhZc6wu7sLxA57mdjKo2Y2jb8LztJ0lLw2cAzEyLS4J0sLsU9EHFfhQPtJQc17pFXU7rSRHCApYeHxRp9tyQfJT4hITcEua2WgPbXJ4Ia0e7D2kPFaX19XMCLqKQYZmzXei9GV0kg+OAbAi06l2opnpS8winwZ0S4VKHwWP/+ABQ9laGjI7XZTxmOkmkgkhoeHx8fH3W73Sy+9tLq6ihkyhYZRwkLe1lIO4yFSisOi6uzs1PpbqVQqFouEMxAlIKrt7W0iJmGI3QXNv6Hn0VYQVRkJg+BSdACl0R5yhriZHERNrwFN+ABwXYUrDyZFOQA/ngNNA4gTJ1AXXGHCoswvxTmE5z0xMcFr0wB7ZGSkra0NGfibN2+Cx6HdirXq0dHR2tra0NAQjRL+Y6lUanZ2VpIslHjNZtPlcm1sbCwuLuJ72NPTw+VnKI66/KOPPmqUJx4cHMzn89wTu92OHwcTWAIWs85EIuHxeH71V3/16tWryWQSTnY8Hvd6vbhnLy0tdXZ2vu997/vEJz7x/PPPs5CgSMosHwouz9Dj8YRCIV1pMPVQKMQMBHo9yFpHRwd+7szvFG6kyiT3DdjI0EdZ7oFVwO2VXrP8B4Uiw3oF7ZJiqvj6MjqRjIFge2KiUbGPfWZUOmTuwKfJzErWvyKg8X2kxK+csb6+zvIQdwfilX6cEQgnPuoO8tA4eOpejRIOuqrvbowEpRt3no3Z2lig8HG8J1ZzxsfHT506xWyVKn1paWllZSUajbKFMzIygkcjnRHXXiw1kfcl86ZsYPxBqBrU6/WbN29mMhlGb0CJSI4sLCy0tbX5fD6IhYi9cYWgVuXz+Vwuh+KVBv9M6Cj7E4kETGj4ROjDmc1mOJM8cdANkfH4r/wyOUaARBh88/KoEEmPEqsCs4OTIb4imxyVSqVcLlNQWCwW1kqQrk8mk2tra/v7+6dPnx4eHh4YGBgdHYX5xQKK2+0uFArFYhEAKxaLzczMEJKo77DD5L2zYTM6OoptJ28Ejw/cmJGdYcLIhjmxGBiIy0wcEYyCCLXJZDp16pTFYgEPhgR34sSJYDCYTCaxw5uamhocHLx16xYBgjIE0gMdvcPhGBwcjEQi+IdzcjSeZ1SCCrauUygUQi6K+0/jTwiAAY82Bs/W4/F4vV74cfAS1OBw2UhXYsyxzRoMBqngwGqBC7jkxoJIOI40VBUCCL6oNsJPBL9Hwpu6SeKfMriHhoYsDMKzhUIBUNK4kyhhHPQnQHg5gfyXkEQ45psLgZL4ssoIuUtInkFyzEYITFqGRChRugTSb25u/s7v/M7PX8Dv+eeff9/73jc8PMzda21tvXbtWjKZzGQy0Wg0mUwyUcKngAUreisCMCdPcQo9Df5QqwakF6ZsyEjiHAEYXK1WuTCrq6to4GKly00DV5JCHgQIq9XKORNtkp2eZrOJkhxmKhCOIIgXCgWqLbGrMC8hvyEBxlQR5heYKDNE1c+AX9qioLZSMuf+Uxi6XC6TyfTWW2+hKYaUaK1WW1tbW19ff+eddwqFwujoKNN9ohjKf2KiMs5H3sdsNmsbobW1lUqHwRnz/lOnTgFCQWJgPdvlcolmDV2gWq3i6kZJValUkskknCYhHVDqiVloe8Lap/mCHjw+Pp7JZLBBO3fu3ODg4J07d7StxpIabR2rncFgkOBOK81KIOQYRQT+CSsN8ogFyqRdYv0FPI7UYrVavV6vRrQA1SQSinQGiJxSwpbkWJmNoDWktovSxog389ELiqZ6QkiSjT+yOMFIcxsVm8QO4E7VelIZxbYeKgOUfZnWEI55zYQ8mUoYFU1BuPS3isjq9YxcKqPW/rGVHb6VwhkdqHGsRIX1nghYX/3qV5955hnw6ba2tpmZmStXruzt7S0uLtZqtVKpxGiZbOnz+TY3N7PZLJdWfa+Cl8orkVaUamCE3r9/H6lfVEyr1SoAmdlsxhrb5XLhgMQNsdlsBCZGOeFwOJVKbWxsBINBXGegGnBVtre3U6kUjSFuYFgxg2fz0/mwu7q6sNLDkJmPAaIAZ4LOFHokaBRnDlyGwTwfqurto6MjbiB7wsvLywsLC/39/VNTU4FAIBaLsfmYSCTq9frk5GQ4HM5ms8vLy0y7mdmhp3p4eDgzM8PrqdfrhD+wxba2tu9973uLi4vMuVpaWiYmJiCRDQ0NhcNhp9MJFavZbJrNZjbJIZfxRigo2Iik7GU2R+XCUI9uGsnTvr6+0dFRdrZYRdja2hobG4PlWy6Xz507197evra25vf7IcfhFoGYZzAYJP/zuEQKh6sp4ylqbVzBab74L0oyrPWNjY3h7mGxWBj1cqlU5pfL5f39ffholCecT0gSKqNw5aNy57ZrF0cdFjNKCk8gMK4AeooYUoh7KSkb8HIErYA14QyDCfCOGB1ilk5UAkaE+qv1XqOlmBGEEpFKQccI2/Fqqad4U2BnmgmqbjICUkblP3m48FP0Q98rFdZXv/rVj3zkI+wSJxKJ73znO+CafLp2u72vr+/NN9/EtpeNP5PJhB4xgLpEc45tCRj3kjRV4c+5+cCrjJ8439lslk09jdusVisGTVar9c6dO81mc2pqijYQPiS+AKw0MyPDHkJqR8Qv7hvjS33MxWKREIMEBTUFba/eAgGIihK8TywnkRjA7GGNIbnDkjDy9gAcKysrDIkajQa70PPz88vLywAxQPs0ttjPNJtN3B5x1mDCsL+/f+PGjVwuF4vFrFbr8PBwX19fJpPBuQuEkdmuyWSSOylKrbKNoOiTnIDD4QBsgjjGajS7dXa7HQcK1vf46ClPqF5ZGC6XyydPntzZ2VlZWXG73Wj8o13h8/nY79eojqtCNpJiD1xK+HTUSkowEM2osnGQw8RBhG8pGvb390P0Zzmcj4nMiokW1YexSKG2EimBikbGosBq0DuJdzTgkktU+BBmJEoBDT4BmkKPKowYijYGWKf5h7+kTy8Cp0Zbxjt1DEh6d62kcknyXvpf43ahkZNlxLDUJxnXEt9bAeuxxx5jT+Xb3/52NpsFASHNojGAPW8ikejt7XW73cFgsLOzE88CmNOaRByLVvwhMcto5gGNAN1Ft9st1hyoE8eLVhRyE4qjR0dHt2/fPjg4mJycZJmeujoYDDKhp3cgeVJw8RagESFXj0oUSFY6nWZAs7CwwK4/hxgGYF9fHzmK6oAlDwagXAZgLyxzoPBg7sKSGiwwFBfW1tb6+/uDwaA8gakTMb+DuFgulxEaxbEuFArxQKh6qPyTyeTi4iLCMr29vadPn2YpcmBgAF2Rzc3N1dXVvb09lLZIBvAY2AFkFhkIBGhq+EQQcqlUKkgvQO4vFArpdJoiFMfZ3d1dp9OJyCK1FW0s+NGDDz5IEDl58qTX60VzEeMJLiFTM2pS4hQakJRCFPjQAmCNQAkm3KPTQI+MnxM1FL7He3t7breb70naIDbRJEqzQSYRMvUBf9StptpisjEwMODxeBwOBwcVpy9Y78ckPcGzFCIlT8g3IT2rEpShfCwWwzVS8x81cVRqTHK6fvjLCP/pK4/xOY1Am5HgbjSslz6ycdBvpJLKQvzY7uF7KGA98cQT7e3tGLHhMZlMJvv6+rxebz6fJ6y0tbWhZgsjcXh4WDGLD0nP+timlVR1NGohZrG1t76+7vP5YELgT1GpVICusFPF6d7lcgFjwckCsaLAxlSG0HZwcGC1Wv1+Pzt3ZGk2b9CZoE7s6urCfxilYLY0KAGYhGazWaR12OtGIoI8mcvlpBUpnJ59Dm4aw0ruJ6Sw7e1txhcWiwWjAewM+IcWi2V8fByjSu4kKkhDQ0PE08HBQWoEpPFR/hkbG5ucnPT5fJw2dj/b29sXFxcXFxff//73418rHhCPkR1PwjEGOaFQiMaKuED8pQbBq2JrayuVSm1ubnJtCJQul4tKhx2mc+fOwZt/8MEHMYZAboFQa2ycyW2SD5RFOz/O2IwQuO/fv4/2BvUscUFmt/TpxPSenp5UKsXaHSFMugsAW4KcRZoxgs3Ebj5Wr9c7OjrKtj/eExAyjeRvegVOSG9vb19fn9lsxmyFsUkgEHA4HEB1RDTIjIwaGA7yqIWiyPek+4e/eOaSuAKaZIADKQckRNLV2iIyEk3fvfOsYvBYVJKGHRWGUe3vvRWwPvCBDxQKhVdeeSUejw8MDDidTph41Wo1k8nw9hjt7+/vz87OknWHh4fNZjOnGQyL49j6w1/qnHkKQNS0A5wABD+pitPpNC3nysoK2yowhtrb2+/du3fnzh1mbfxJoVCQIzTLzBTbgGK9vb2UJ+l0GlFHhmJ8nMlkEkkTSr9arZZMJrVhAxKMICxO9/w4hWPUtbkqhEJuBQGIqRPLRsyhuru7sRRCQcXtdjNU2t/fT6fTvKOjoyOyt9PpdLvd9MJoRaARnM1mIV5Av0R3iTkA3TExNJvNms3miYkJUF4CGSB3pVLh2KFqgDqFJOKcTqfD4bDZbENDQ7BGpCCO48PGxkaxWOQ50ERzpUVPd7vdAwMDXV1dKn/46CVaovugtTVoUFJnhahJG4UuBcLBOD4AHdBaIvosK1l2oQqFAu8X6i9LiDSefPR8f6l9ikBALGPwFwwGQfGLxWI6nWYTW3A1Z3hwcBCDdLfbjSwinwWxjJBEaS/RNDT/FKB55fDgeXkKIgLCJMvH1Jv3SwhjZNHf388KHemBhy+wQnwFY6toFJ9QsFbkMm6tqB40do7vlYD1j//4j6dOnTo4OHA4HJ2dnalUKp1OU8Ybq2geAdgQZxo5zaOjo3Q6zaKyuCECCBW/BMPT4ZPhxV0AqiwWi4FAAPlzxDOJKfv7+9FotFwuI6Gp7X8KaaozltTgVUWjUSAts9lcKBQg+xAX2tvbS6US9Q49I3UEm6tiS7PjIkF6ABRcD7a2thCxomep1+v8XPrE7u7utbU1k8kUDofB6bDAofExm812ux1GG4kdfIodEWpDzhyD/O3tbb/fj6h0R0dHIpGIx+MjIyPlcnl+fp45KdyORCJx+fLlRCIxMjICGMRdQhEMII99SU4hyq4cdGBmpAcpT9hGBtEH6WdFEeSFqTxsDIyXYXJziygBZLhAUWZM6XBZSTMsIWBhi0QaVBKCiFBFj8fDbARkkH5TzmbsyVMas2UNtY1BM4NdzGVBA8i7RC6Ups1mczgcDgaDm5uba2trhUKBuTMlIcMQ7OyhAXOfSRislNJnaRNoY2MDH09mjlAWMpkMAQISvHpSzrCxlTOCTcZVQbK7fgn0pAqz2WyMjz0ej8vlYr1U5LVjVq/awhHCpT/kkirHqEZ7rwSsr3zlK9wui8UyPDx88uRJu91er9dXV1e13NTS0jI5OTk+Pj4yMjI1NYX5ysrKysLCgs/nm56ezuVyuFca45RxiVxvXh0yIxJRkM1mM9OioaEhwh93g79lgMLWG65iGveSYQh5h4eHpPp6vX7v3j0awP39fYDko6MjDly1WkUCHKScugkcBHfvdDpN9IQCzsWjh0XyYXd3FwS6Xq+rE+RYMJVjhp3P5+/du4dYO6UHMy/I97VaLRaLkbHj8bg6nUajEY/HA4EAioaLi4sIuXV1dYXD4Z2dnRs3bhSLxdOnT2ezWXREFxcXt7a2ILtns9lwOCypeKvVGo1G5+fn6TioL+QyQFRi940svbe3l8vllpeX9/b2PB7P1NTU8PAw8QK0GFycpru7u9vv9xOniLxUT8C9fNCCgbWmR24TtZjwBKeJBoosxSvkMMDDAklwu91MReHKw01j14oqDBExPjhpv9AJihVFXxaJRKanp6mUY7EY5bNoJbr5pDc+Yoo1RlKUZoDuMtqhgKIPhWHAsoF8f9mulw2icUPwGENdcoPHApmYQ9JuFcgF2AqE6vP5YCN5vV4eL+iNPpFjxvRGxWRjzcUX/CQBq+3HGt585jOf2d3d/eu//uv29va/+Zu/eemll6xW6+c///lTp06ZTKbXXnvt2WefPTw8/OQnP/lrv/ZrP5KoyuSLMX93d7fD4RgeHg6Hw/F4HH4jx4WbBtFJewYnT550u939/f0XL168fPky95D2RPCqUf6CrMXEjcVD8Eh6h2AwiH/68PAw8kx8q/7+foRWBgYGVlZWWN9hoiTMm+98cHBA/ULqow/is+EWUY/AL+cDQ0ACea9SqQTrik23YrFosViQhB4aGmIpt62tbXR0lJ+urIVCKbsv2PBKD4DGYXNzMxaL1Wq1hx9+mHW2RqORTCbZCd/c3MQLmnWobDbL9ABhb/hfAOptbW35fB4AjomH1WoFvsV4udlsjo2NmUym1dVVp9OJ3wQDBKIDE0C0DVpbW4eGhgjHFDuwW8PhMLRGWXvYbLZgMLi7uwsMz25NT08PBabVapVNjroJ2jFiBHg25Q9sBhol1Sba2uXMkFqksgANQrt77Dny+il+RSHmGAAtoRXB1o6qDCaAPT0909PTkUgEDeJ6vd5oNGjqKbQJLnyONBlUNxSMRpctDgyxjMgoiIqoBA6Iix0BnSkwMRRoTOCRUaDqmO2N/sq4HmT0mDhWHEibFEIG/o+EUfQsq9UqNbUWgZEnU0Q7ttDyfyDg98///M/37t1DhODll1/+1re+9eyzz77++uuf+cxnvvWtb9Xr9T/8wz/8kz/5k76+vs997nMTExPnz5//kQErmUw6HI5UKoUbBe4MoVDo5MmTm5uby8vLqJExkf3/r6ytLRAI+Hw+cung4ODU1NSVK1dYIuUCE7ONfh58MeQmVuRwoyGQE5jW1tbI1egx0ABub2/fu3ePnh/GM9gkvHNE3WAYkGO5zOzfapKCehQaD8gMINne0dEBIE0V5na7mVuzP9je3j47OwuW1NLSgs8rZFQQdw4ok6xarYYkJgRuqM88H/hWm5ub5Dp2m/v6+ijKHA4HCRC8Y3x8nHfEDYEqlc1mDw8PPR4PxFSc2eD3RiKRl156aXZ29umnn+7t7U0kEuBNk5OTXGlm/6iXaNVJkhu01dgLoS3n9/sDgQCdOy8b2abR0VGfz4c9OowT5BNk4C7DOw2kBKbonjN+kSiwVoKOOb5ooY/lZIFcqjvApCjD+UPIAcwE1tbW2MvjyPX29sLOnZycnJiYqFarP/jBDxjIws+w2+2govBjZUMJLgHxlU7TCFcZF4PlUytgnuaX6Ay7teeHv0irmtkZr6T+RNdN1dC7nei1NallGo3s1XZQV4pjFQgEqPqpPxDjbjabkDyM/FJjO/nTBqzbt29fvXr1D/7gD5577rnd3d1XX331U5/61KlTp6anp//93//99u3byWQyHA4/+eSTJpPpwx/+8GuvvaaABUzDtE7Wx7hI+Hy+ZrMJu9rr9brd7rGxsfHx8dXV1Rs3blSrVfpnCmaGaxiL48uEQrHT6UT0Qz2wSlllAAo38gD1CJVzo9FIpVKTk5OsX9Am+Hy+aDTKBAAtOr5euj9EIp4sZy4YDLpcrmvXrlEqI+kJzi3b4b6+PlCk7e3ttbW1rq4up9MJaoveOXY1oBulUonlW8SjtZiNUgopi5KKlpmlH3a54WRx8+HfLi8vs0bDSWIg9eCDD25tbU1MTDidztu3b9MtQulg0rS4uPjwww+zEDMzMwPJG3wBEZ5IJEIRxKodAiYAyagsoMiozV6ZvA0PD/MkpapsNAoG6AV6Y6SAmxn3kFLi3a2NcfBC9tZ9IIiLxwtlROtyxrKChM/8zigTTLcF/Cf9A3A9JgZoOlLc8QAXFhagaHz/+9/PZDJkU6/XyzlklAyHDvSH2g08jmUsED3iDq9BZD0dxWOu8cYemTAtfWSjAoyRWHBMDeZYFDOO/xS/NEOQRDIxToqGlOS8BlmfQSrCVZtdXQBQuR9qZerHbhH+mIBVKBS+8pWvfO5zn0O9AH4Q9Q7ebfl8Hgs/vj4QCMzOzuqfl8vlz3/+8+l0uqWlZXl5+eMf/zjjrUajcefOHSQBYrHY0tKSy+Xy+XxcWpvNFo1Gc7lcIEvmwAAAIABJREFUb29vOBxmwR0cOpFIrK+vC5RBq5u5BtuqRo0LbWyRn+EuMS1CNYlHZrfbKdf5Vx6PBycl+bVQ4KhCJklKHjsej58/f56kR0TjM2Djhy4S4TdJ1oEuwYSAL14sFldXV30+HwQL9O9hjYPmgo5LCIVVGG51rVZjkIr8IVRmaJYOh2NiYgIZLI/HQ18MS6Crq4sdI860yWSSfxojxb29vXA4nEgkQHPZNWtpafn1X/91QLdMJhMIBLxe7/379+H3omBBbuC8CqpQkcXHBB4nvToGJpwZBhd8cEbOjhZ6jFRboyaJ2ADGbTV+riwqIDfoxXBhjKbEWq2XnIDUivUaYDPwChmZ8c0bjQapwul0mkymarV68uTJ8fFx6PWUxgBzdrtd1RNjJT5rJIkg1jASaTabMBiA5xUgjIvEcpSQoovRSVB0UAVlsrgxNhmVQo1m9MZS6xiVlO9mxKcYqqhi4KIRuWiQqW1bW1s9Hg9smI2NDcoumL3vrgH/xwHrxRdffPHFF3d3dzOZzOzs7J/92Z+BsMh1HRBOf4Ksnf65y+X6+7//e35/4cIFhrh8BmDJmAKcOHEimUym0+loNBoMBn0+H7g7VMNkMgnRqV6v46aNRg3mOkQcBkB8Zsb2WGWttslA3OlKLBYLZqg2mw1UiPvMYlCxWNT+FIeVzR5GSKVSiR4znU7TvySTSYp5gSCirTNP4AYijkx5RZTMZDIUQfF4vKWlJRwO45pVKBQYKnP9aLJgNjBxB5dld6RQKKB3ioY6W0f8FX0HyMjKysqjjz7a1dXFhItis16vWywWjIjQb9rY2ABgZmAHwcJutyM4gQRNS0vLzZs3UU1AypmQWqlUkGBGO0wEDmzKIKar7hYrisNNWlLihcjCKNm49mEMLtpZMe7ZUmKAm0D65TvAM9LqDHLyyDyQDPj4ZMIk5wgYp0qBrN1Iu9k4vGMn5ujoSCUVCAPUUy4LczcRBrPZLOiYfCJosng+bIwxNxcDw6gbxWtQb3tMBfRYHXoMWTeO545RqPR4jX9urLnkZiY0xsiYVTVH5DJqTPFMaJ/tdjs6CLVajZPzUzk/P/HEE6S7+fn5TCbz4IMPRqPRt9566xd/8Rez2WwulxsbG+vp6fna177Gbbx58+ZHPvKR/0peJhaLwZlsNBq9vb1erzcQCCQSCTQSGOjCzMzn811dXazOms1mNI5ZsqEosFgs4Nk088R1Tjw3QaUvwR40CllYynKGVoiIojkn3bjBwcHh4eG2trZMJiPxYjzoXS4XDm7I+LLUvr29DRkHpgy9J3omZA+eAMcXrERkPHTo8XDv6elZW1vDlpGDa7PZyOGozchaDrjNZrMhIEErylVkbL+5uZlIJORVgUUKDBJC/NzcnHySS6VSIBBgKA6KjCFrS0uL3W7f2toCPWWPisyxublJEYq9I/GOTgHnIdj2MzMztVrN5XLZ7fYbN27ABeVEcoiJBdTgpEDECZhRwK13Op2Q5rnkGp5Qe9LskNulAEWGUKVAyDObzVSRmK1puY/mC34JYAL/hGCK0QbxnfNGPYWDbL1eB/tDTQHyl8fjYS4MJx7uPuvZml1KXJchD0NMjrGiMDGLISBhS1NIRQGjArpIfJKZN1oKGnVNjsWpY+t+RhjeiIUbA6XRKUcomJaHVPAajRoloEwLLNiLh+PxeJBCwzjmfxmwRkdHR0dHTSbTlStX5ubmnnnmmVgs9nu/93t/9Ed/ND8///jjj4+MjLBn/7u/+7tMcy5cuPDfTBsptsnhpVLp1KlTkUgkl8sNDg4Gg0FwGZyyl5aWgHtEtOnp6fH7/RBBGW/RtDME4d7q81DakUoRCRZwitwI3rmxsVEoFNhEo5niKx0OB+4J8BvcbrfP50NPBgCLeTaC5RDW+aFsHTLHgdJptVoleom3lXg6ol/gWb27uxuLxTweDwt6ADd0lLg30+u1tLTA4iFMr6+vM9AEHevu7p6fnyfKbG5u+v1+YDW3281gdG1tjbU1DEcBXAiLu7u7o6OjMEsbjQa8k2vXrvX19bGxSHGKVkmtVoPAAffVZDKVSiWLxTI5OUmpPzY21mg0ILs98MAD2useHBwkFMpIhrYXn11I52Svo6OjVCqVz+d3dnampqY0+aViAloS0KshGpeZcpiqDQo7/xawHAEc4gUXTwplaH6cOHEiEAgAZVosFjlTtLW1wc4bHh6mFAJYZPEYL6JcLkdqkZMQ3A7RUOWCQxepfUPqR16wWlfeo6ZsRttkCUsZA4r6XCNj0UjgPAYCGpdsjgUjyQoaSzNjC2lcmFPPDiYgpQfVfUbiO7dVStCcDWlj/Rg10B9bg7Eu8wu/8Avt7e3RaPTq1at2u/3DH/4wP7XZbL788sv7+/uPPfaYkNd3F2u07lpYR85YkAcfJ2UXh6PRaBCMmHOJX2tE/khWJCijca5WC6UfRo8NCZONXNwcIOCQ/fgr+WKShNHYokZjQAt9Bk4Q/iUrKyuAbkRSJvSwpTnHTKC0oC9IlY+TUwtepvoL0JRpAPpQ8AyE1kF0llgwYYt9NES7aCXgwb799tuPPfbYww8/DBfU4/FEIhGqP/SUCRbIj5hMJljp+FOId2KxWKCerqystLS0zM/PDw4Onj17FgX60dHRUCiEfOiJEycI4lR2AwMDaJsEAgHKfhyMMZGnw6I7I4oh48vfoo9KqYUyjFipWj2RciZDgBMnTjSbTXy6YrEY8qSUdVar1eVyoerF02bEwY4nECQDE4IXnFgBMWQ+ZSPiEWOHo6MjWBqEQmaCtIF8yshOkNjIRmCU4DvMcATnSXCKEysqvBS4jOLrIk4rah/b/jOifsf2kI0Y/DGLQCNIb2QeGOGzd2vLGCe2ImEoXL77J6rJ5Tf/9E//9O1vf3tkZOSnUhxF8oLfj4yMHPt2/f39v/zLv/zffweaGvIY0wRc5mXoVq1Wi8ViLpfLZrOIN9AVQmUU+Kr+GUUUqgACliQQtUUs9WRVEIzwJfWPujEbIWi/sW1PmoX8wl4FXBsUtfhgms1mJpOBfGS328PhMHojoIn8ING44TFwWNmloJTgBdDR9PT0OBwOAhx1k6Qp+c36+nqhUOjq6kqlUhMTEy6Xix1swh/aW/xcGViYzWYUF9DPweuB1gzW/sHBQSKRyGazXq83nU4vLy/DBatUKjab7Y033igUCh6PR1Qp1PvgbZ87d455C2vPmEVCZCWy9Pf3R6NR2buTOWBIUkSormFqZrFY8vn80dFROBwulUpMdcGzqeAo0uF20lMYl0k1ZoLgnkwmU6lUPB7H1x5WPWYZEH1lkorTLfWOkZDJIreqeNXXfILa/WR9ulgsUme53W4+tWazWSwW8Y6mlK7X64yGzWYzORKPQkiYgHdyYxIANDw8LDIgaJrk9IzDBwnsqeQ0Bh2d22NSCsaGzihwbAxhcjwl6Ei9y6jpbKR0GSUJxS8hcr3b58K4tfMe0nQHCGAlmDgCgYhklc1mqcBx2aM4gl0NRUU6k2zecxalCQc/WPJSHPFKpcKUCtlMeElseGprgYoMEN1kMnm93o6ODqRdaJQQcQZfJ5Tg0Md9A0+hQSAD4zLNqRJuivQK5DoOLsvelIEgMhQjzO+wmeAaQxok3PM2Oa9ra2uCP1k0EX/S7/cXCgWQNUSmzGbzQw89xPIHBjZMFdigBmrh4wBNw+AnlUqtra1Fo9HBwUEqILjpDz30EMfX5XLt7+8vLy8fHBycPXtWiq8ClRjj5vN5Ukt/fz9UWGI3K2z0oWLSmc1mhsJMEmC3E7aEOhE7jPZQWsaiTF5dXZ2ZmYnFYgQ4vqfZbOZl5PN5iqz9/X1GOiMjI8R6mJyQG2RlCk2MHwe2RVvA4+Wwgc2jR0gqpcTj1dJRWiwWn89HUQY7iRabz50jxKK+eJuMC9mJIRWRd1Hakso7UVUKJUISNN/kzWrI+O4KS72kkSZqXNxRWNTfsi5qnEjq9+olxdQ14vpGaMxIAftJ/HJ+pq453FXCEPtuCBvEYjEyFWt0WqqyWCxGbyu6KhyiKGEY60gqizMNms5SBXjnxsZGrVbDdpTajY8Q4RHCEE7REKYk1ZhIJNCK0YAWkIv6S7sFW1tbSM1AEyXC1mo1hLfJeCD6wLqwijQx4XPlU4Ry2draWiqVuJb8dKoh2WfabLZmszk/P09xt7Cw0N7eDrMXgBk5YNQFUJWoVCrVavXWrVsUsx6PZ2ho6MSJE4uLi52dnePj48wEEOFhFeaVV14BW6QeGRkZ4WmUy+XOzk7Yc+ipxmKxgYEBDDvICuA+CJuwaE2Z09HRwe3VGIGxgzY9tX3Jj+ASwrFMpVIejwdrWDmYytaUB7i1tXX79u0rV64Ae1FZ12o1gUHMhaUSwSeFkDzBka6Nu83yI9R2gC2QfqNoNasIyj2cWChyiFzzacbjceak4nbV6/VUKkVu5igaJe6MFGiE91R28ZaZ6pIsWaGHEcLWJM2sLO81+lQddMwAVaat76ZrqWjSfwFhUAfjIhg9641GXirfJE4vOMzIdP8fR5KfjWsOLRKS2DCw5dfkcrkkedHf3081JPILwSKfz8/MzOAShh2bZrp8GV0Dxhug1FarlV0NynuOOIsvNAIQMjijVN1utxsYHjtVsDO+gxxEjOJ8UnGAaEMX1t7e7nA4NjY28vm8iGC0llxLFmghPWFgxStRLKOUA44FehNXhb02CpBcLgfjnwDNqAsiNd+fo1woFGD2c1fRGqfxNJvNMzMzDodjamqqWq2yoT0xMbG+vs5r9vv9nZ2dINbUDqlU6syZMzwE2L/QF2hFK5UKW3h4StfrdQasvBHGZ5VKRVUGtANGYDJ25uHv7u6ijuD3++mXnU4nHHc5RxnJ2Ts7O8vLy2+88QaKoFJuohEDCUKxnr0ZVjt3d3dLpRJ+GQDbaKUJfECoGiTRyIfi42DLmmdFfc2+F2w7RLGleoxYDV/DGBFjNCo1iiwx14wqnbr/5E7gWphclF2yUKSrBRGmLSA+8jyNyqWKXMaxoFHS792Gz9rOEf2dlH/MAlrtp2YCxsGf0bTCyID9v2G6/986P1MIWK1WaZyDMUnpAiADKITsxEOJxWK3b9+u1Wq8Ky6/hrWUIWy0Agcgh0ZtTwfHshUcEKBxChwyGLadZrM5mUyyICJFDqNMIJlZxwhgnsqcOAgZihjR398/Pj4OFktpRrWF67KWb9fX14loPCKW/pg/dnd3RyIRuCAaykhciYaCaO7xeMLhMHA1TFHNIigqmQD4fD6WjaXka7PZzpw5A+6GNUtPT08ul9vY2GAvhxJ1cHCw0Wh4vd7Tp083Gg0YZwsLCxaLZWpqCqGL/f39UCiUz+cJoLxCZJeJUyiLU+yAiNPm0J63tbVh9hkKhVwuF0UrFlsHBwd0ox6PZ3JyMhKJgOuL9cYzmZmZeeGFFxYXF+XTY0RVOCqbm5tQNPlbeiuTyQRxv16vT01NkTw4XfSGVII0OFxUXrMcKDiT6XSaHRSaXGZHyCsilAbhu7OzEwsMhBzEe2DjF/IKHZzx5ovNJHFdudXCaWJOAm2oUqlIqpCeEZ1IMTmI5trtP+bV+iOduIxqTkYChAirvEKRVI2jQ6izahvp5Y1ovb7JT0J2/xlhWIyrWIYE+hWDDvEK+FD0xtS9vDEm66ykSHoN4hJzIqlli/cBVgXXlCEF0YE6hQTLY+JshcNh5N7hK3McdUC1tEW+gpYl4YS+vr5QKOR2uzFEAFCo1WrZbJZNQ3aMGJ9vb2/TaEj0EmGWpaUlWDy8kUqlsr29PTk5yaqzzpn2OTCIJ+5Q4qH9QEm1v7/PFjHcS7vd7na7FxYW4vG42+0mFYM3ra6uwn9ZW1uz2Wx+v//69esohW1tbaGEgyhlNBr1+XwTExPXr1+v1+u4eFB8FYtFdAHRXWA1h+QvYhQhiYRMbdVoNEZHRxFxxkbX6XSm02l2kqCVwUEplUrI4Ny9e7dUKrW2tkITM27hrq6uXrp0iSN0bAmOZ64YJJY2+CA3dnt7+9q1a8CXcEolAqE7xoXn9VNz8T35vJhsMiMmC8p8gJCkSgdAkOFsX18fOxsoR/MRMzRUxSFGqDTgmAYSFAjZYPzguV6vlzxK3oV1KDlWkg1vn46SXE6GVssJr1jtnkheikrKoMI91GBKe57ySvqocgmT+KpKV33/9xDozhOETMAQkPIHRMCocKg1joODg2g0evPmTTRG5P0FB4rSVw56xWJROxOw8O12e3d3N4YRkhzhMGnk193dffLkSVzpESCmYlJVxSehhEO+JQkzsA+Hw8g84KaBPvfIyMjZs2d3dnZY96U+NwrayJQNBsPQ0NBrr722trbGZgw1AvrluKiCiwNagQN2d3eXy+VYLLa2tobos4QG4QewSpXJZJxOJ5pw9JusN8tDlPxBgwMDDsprIpGYnp6GCkA+XF9fD4fD586dw4iFu4d12Mc//nGWqygTuNvUlZoTEdxZHe/q6nI4HFSXlG98fGSaYrEYDAbhNDmdTqgeEEpbW1uxJmOTlPO9tbX1xhtvbG1tud1u0Cv1OEZtde4ep8voRsWBgfpQKBQikQhDA+HWfD07yWz2yblP34rbiGgisQn8i/8Fm8MEBEkM9s/5/gMDAy6XKxQKsZ9IPSJRVqPwt1YCVJVoYUi2XUyiRbLROEj+EXL5BDjmPGPVAUmVTUmjVAM3QmvP6lu5klrSVNzRbwBbROjh5qo1OVZ2/YS4+88IwyLVU8tQW+ndGt23yWAUGtFo9PXXX9/a2kKVHAdWAhxfyUcFZgk2zASQlM4sY3x8vFQqxWIxKQXyUJrNptfrZQcok8koDWpgLLxQalnUMvDaCYhut5ueS0qP+Xz+xo0bMzMzZ86cOXv2bCgU0lkhQButg0lZNAsjIyMvv/zy66+/zgcMR5F/MjQ0REVDrD88PCyVSjdv3sRYEDIqEDIXvqurK5/P01ns7e2trKzwdtBpgJoA7DI+Pi4rinq9vry8LFWZQqHg9XpRqSYQ06AB6sVisdOnTyPkxCWEhQsQIwkNpsO5XM5sNmtfjJlAKpVivoYn9uDgIJZFTA/JKCi+g9FgZahNDgBmyvDbt2/funVrZGSEjl4+FPJu0XnASYSzR2dHAytGMUphsheBiSJHSD47/iEhAz1VGG1gEUIVtSFPxc3551XZbDYWg+jusZXVGBcKEUQtuWwZHWv4XyYVxAIR3OW0rK9n/1/DPk4FE0kyKNuddrudwATe0mw2eQE0JcIEBeQb2Vga0zPzAd6hFmPqzf9KkUJs2GO6yce8fH7OGJbT6RwZGeGcqVySQivRSqp7gFC3bt1iKUHmtLSQRmV3CIRYBJIc0FkXdQU+V3t7ezweh+bDOCkYDA4PD8O5B6fnrwj/El2S2oRElOhhyWBwc1jBg/yFJF4+n19aWurt7UWCSu4sHDLEQygnic5HR0eBQOA3fuM3LBbLv/7rv9Zqtd7eXqiY58+fHxsb6+7uhlG9tLQEpYNPvb+/nxVxzgdoFxEHdAPkjsfV39+fyWSQguHQgyQCsc/NzVHN4d/j8XgAwgAB4YizcnTy5ElY9VI0J1wK98F7FaA9m80uLS1NT0/Lwg9eVX9/P+i71WotFouNRgMvBpaEqapo+SFYrq+vl8vloaEhv9+vnUGeHhoeuVwun8/zSI1uw3yCRrKFHHnJiwB8FDWFQmF5ebm/v9/tdkvaAbha9pcq//nn9PgcWofDsbu7u7KyAkOFZhMsnPJE5FhtIzGCFCExl8sVCgUqSozjCBmCUAWZSSlQBp18EyGbGsmpTiSCgFrw1khpxF9iH40OyQkUBWIwiU3ahBpKcMaOuTpr2sgL4xcSYMAa8loXgsYtE1fr5xyw4GqzpMKTBQvk91RPVB88hXq9/s4779AH8eeqQkU15uTRcHECAHcwfGc7nwaQuB6JRKAX1ev1cDj8wAMPoP3AB6ZFGSp54CTINQp8EIgAyyhVAOw1i6GspZAcHh7GAhMeOS1DIpHAE7inp4ekDXeMw9fR0fGxj30Mf4rx8XG0jKlHyuXyG2+8sbq6ms/nEe2ExIjmEU+SERhaDoy3eVUAc+Q3VheF2q6srIyNjTkcjlKpxMSAMOfz+XC7wuzA6XSiX25cHqAB56jRvjEBpD5KJBKYRGg03N3djSWStIMIwZRjxCOUKrRAxzPnQWGxh6nP0dERwxnWrRcWFiCmSDZARiTMFoQ2CJ2U1gITZLYC7XZ7Op0eGBiYnJwU04K6W+I2OoFSzstms+l0mqvOJCESiVAGou9YKPw/5t40RtK7uv7v6X2rrrVrr96X6dmHsWdsj43IWMNiwhoIkCASEhwlb0KkLEoUgRKhSAQlISEkAWXzCwgBBxQRCPICNsbAbB7P7pnp6aW6urrWrqWru6d6/734iKOrpw1JnP8/TL+wetrdVU89z/d7v/eee+45ue3tbQxNlNwRnjhmqDTJMjSqNTs7S8oMxUfm0sQRwSYa9uaSJBBKbqjOoJ22geLA7/A02QKSpZcTFy2sWCxGqkjwgtCvMOowmFDrVhGWFSXxLHaZ1ZIXQ4gC9p7IsOgWK9biWUCexfeiDhIvpqamSqUSA30a0+MjsRYlJGKV3al0mpubGewgVeaMIjGORqNs9YmJCZopYPAsF7m0ilHt8Xj27t1Lf501DRu+tbU1HA6jwAMXSeZL29vbxWIRcc6hoSFaXX6/n/3c29ubTqevXLly4MCBQCDAOYxQH8dmc3Pzm970Jg7SWq1Wr9dnZ2evXbt2+fJl/FwZygHSJl2FzEXixuZHZovlzvYA2uCw5Tilka9+P/cT3kYikRgfH0dvNxgMCtDhRSQhwkF99+5dHAwBzqlJE4kE6RhRGLW/I0eOuN3uWq1GxbS+vk7Mun37digUisfjKAICGmjIhjwFFJJDmDSHyhebpWw2ywKQhaV6siTsAlY01WSHENmx7e3tY2Njd+7cwXwMpILYIXsuITWqE5ubm/v7+91ud7FY5LwkVe/t7cURRy1F0gqJiFjbJ2VDkkUlwYessLy83NraiieI5ntE9SRukiipxiTusNeEnDg8XMWHYswAEi+bC3BTJzc7lIEz3g60fnFxEX6/RkFVeFr6ggWy1ZqkVyvBONQ0yXnvFVoDcUpq9ip3NSQo2alCoYDBAVm0pJD5TYI9Z1ST+RLEoEkdtXhY5ZxmeA3QUOPkFMrO82ZhQX2Ox+OhUKixsTESiZA7+Hy+F154YX5+vr293efzjY+PT0xMpFIpOFbS28MJLp1O9/f3c4ZDNWJm5fr167du3WJIhfSN5IjHSTBCYWZubu4//uM/IDpJSYoFKmybd0QckRlppTBouUBNZAqSc5VRTdqp5XKZ/Hd4eDiRSOAihW2EVv9uv2KYq9D6NzY20uk0+u6M4NCuogbcs2fPsWPHpqam6Gwim6X5BJ/PRxkF9nzr1i2UVEXpRqxRMhV0aSnhl5eXjx49ms1mwa3ILFhpSrIAubQYQJo7OzuXlpaAlkWR5wkylgTyTbAjFpB3uN1u5W6Ap5OTk0yhIxgPGotP0uzsrNvtRqAC/ViogkzkUEYRXlWgWWEDMZUIc0haIxbIMACpvWQbBE6BTFEiqFoUS14x0VY/+gaAmHqNGTV6ZfKCFeKO5irW3BCzUV7lVjuoVZZPbz8guSF6ynLAu1cyLDUHZQbJziRaqfOysrKSSqVI48UrE0lE33DfrUIuZc7Kyor0zq2SNAyGQCAQjUaFVVNVcdLKB0lgzfb2NmZWXBhs1cnJSaSyKpVKLpebmZk5efLkyZMnCQHsXhCfjo4OjB6oefmwSJcMDw9/+9vffu655x555BGYhOBiYECsp/b29pmZmWKxODAwcOvWLYovWteEYNAluROyD+kMuFwu0jo+OMiUamfyRJRhcECRDLHODI5ugRHkSny99NJLlLFPP/00zCxeliMHXG9pacnj8Vy/fh0/2s7OTrQuNEEFnl2pVJAVWllZyeVygUBgbGwMWgD1IKcCdxV3Na6BE57JVpnFa2REpxfcF1AwMETmE7nbtFDY5GxvqL8MTtIrVCCgAQdLhj0GKxifN15kYWFBPk/RaPTo0aPnz5/Hp5pRUJqJwPaiJulqhWaywgU8kd9h2JVOp0EJMASg564qe+tHX5Ihlfoo4UCJuVi1DjMbYUk7OzsMnBBZeBGCF3Ye6keh7UEJz7grAZoc+VUla3YPQvPEOULuFdBd3UDl7VKzJiXhKINvTf7F7gLtZtVKc4OHql1EjUNzhw/POqZHw8kAtMSBQArGz+VcwIKWm6Hf70dhgswCHuDKygoTZyy7paWlc+fOtbW1HTx4EGIBKSHYPx48CwsL+MHog/j9flpak5OTiUSCU0WVvGgZDz300BNPPLG8vHzw4MFisYiPDiuPukZNq5WVFSZsVZYiWYWaO+A3RUo8HscqORKJcLvUTWMFS42E7AYX2ObmZsaYx8bGkF2+7777IpEI476kHlqCiAuC2mSzWUyqBdKx95aWlnw+HzYZgHRUUjTp8EZlVxP3YQlhhgbrnQoC5VVlK3aAlgiuEWKVYCQOYpyqpwZ4rCACrx3ghlUKjZb8DoQ0l8t1dnaOjIwg4AVExcZDrKKjo+PQoUO5XC4cDrvdbrp+mtED37AaCWofi2VmBZE5SyjWSISLxSJzi5RsMr4WE038Uu4SPVYkKMgb+LCSbBcpVPK5MGARvOSkRFEOZgbRHLJOZ2dnIBBgPdPLyufz7DUuQ5Qu8gNd5KvOG/70MywANtmTsLvI4bVhMFyRmZq0x7SFaPnDbyD5tFwbMlWPx9Pb24vFtBLRcDg8Ojp69+7dcrmsEoOHwQQP7jL8HBOK8fFx9VNYTAx5QKeUH2qtVnvxxRf37Nmzf/9+OCYdHR1+v39tbW1paSmTyZTL5Wq16vV6Sfc4zGOx2Pz8/NWrVwOBAKg89g2ADpx70Wj0Ax/4wKc6FrCHAAAgAElEQVQ+9ambN2/u27fvvvvuq1QqyWQShQw8ONhmmjXlOhFlxRkUPgSQOakQsUCnKz0NsgYooEzbgE/V6/VoNAoGx7UlEglkKgYGBrLZLE4tcnJkzAVJDNTNYAsztQcgXSgUSEgTiQT0K7Kq5uZmxoOR5Ha5XHBcgZz27Nnj9XpdLhfLgG2A0zVO3RC+SatVVJJSCfeRMJFNJcSzUzLFyuTA4zzgewIECVpDQwNWGkT5/v7+5uZmzCvFpUADEmoIA/8wexVeHXJUCk/qgWouT9xL+bx1dnYGg0GXy4UFBo9MADGFJCWeZeeT+FA5UkSTijJfbXXibbik0SR/aebJeAp8EaZpfCEHMjAwwFOu1WqVSgXhCraABB7sXKHVJr0nMix2I4mVJKuULvKEqPxhKnAqitPBkoITqAJKnV0lYlQc8XgcAsjc3ByttPHxcagSqgTV7oUEhOECgxrUCPAtxaFnBQDAFYvFnZ0dlNfZYNevX5f0M18k6sCxJAhAMMA3lGxzc3OlUimRSFDjoIQnGge+hI8//vif/umfnj17Foehhx56aGZmplKp4GSBIdDOzo7H46ECQgsoEolgYk4mArWCmwyyo3qhUqncuHHjwoULaKRwGDIoDvi9uLiIiQYtOUpmmmjxeBzzVEA6GEzAMUtLS8C0oLMUrcViESHAUqmUSqWIoQDqLFZoJTRJ5GkM9EkyAkWIrKexsbFUKuEzNjU1xbpSfUfVSc4ra1UN4dPuoH7n3UlLidFbW1sYMjPxTrTimldWVqi4IYWg9QoXFFYaQvjAfGjvLC4u9vf3w/yIx+Ow+a0Si50icoDW6q9ZcQUxEjjk3G43YkRKrsn1OEIkGk6vg+KarccnpdolpDKfbzW5ONik7CRjRDYOc5ekcoQt0mEunlXE/4UoW61Wi8UiLWmCl7gR91yGJVhUPF32jAaJ19fX79y5s7CwQLDnvtDxlew3+B8qKEJP7SgsJxtf0MHRdajX62KH8ms8CQZ6Gxsbh4eH19fXz549S2QZHh6moGBdUsvIVM7r9dIfiUQijMjAEe/q6kKWQBP8BFxEu+TfxyLDBgKeDpGF1UBAEc3vyJEjv/qrv/qP//iPxWLxqaeeCgQCiE8BGLlcrng8Ho1GBwYGQqEQAwNsXakdsVHF9GHD5/P5O3fuzMzM0GWj4CJMIKTB4C6yFvl8fmtrixE/pFQ2Nzez2SwLVzka3otkNIQe6cAwlAvSwfZA687r9bJ5EEVhyrpSqUSjUdpVAF6MH/IoKbuoSqanp30+38jIyPXr1+v1+vDw8OLiIsW4QGu56Qh1JmWQ44uSTdTQrEiLbCmA4fv6+vBw5IDs6ekhfWCxIcHa19c3Pz+fy+UYKtze3g4EAisrK0izYg7CMQD4YAWqHG7JDts+u7EJTzTsUJQUNsL+Am/itGYmRPNJYoFhAau8EkyARUsmpWFeca8kQEbDihSEDoCEhamaNb1LkEVClgwDo8b5+flCoUAGbSWC76HhZwpsPra+16MihRYHt7GxkblCIjefhxUgKg12oSxQcH1QBgAR9SXh44F3WOVWrQBIvaOjo7Ozs/l8nvYH7XzwDjmVU7HjtTMzM5NOpyH4QUSanJw8fPiwGgicb2z+5eVlKP5sg46OjlgsJpQUwosGA/lbDco9+uijtVrtK1/5SjQaxZUrEAjgMSEVaY1esuIJPZQ5xNZisYiFBw0H8BqRP4hlbCHSWJhioB5IyszMzACKeb1eQipiT0RYyijO8Hw+7/f7mTrCNmZlZQX2BvWIJJhBXmhokslGo9G2trZsNptIJLgzQN0cWqABjOOQtlOc+ny+SqWSzWZBdmTb5/P5mDGGYSedKS4DrI1WfVNTEwpWg4ODeLLxT/azfOeRWuTAA7CTERw5Mo5ElD9YBJCoMsHKEHgwGIxGowjYWgkEhyPOqwrOWH6POHHb29skBPosyjc3NjYKhQLhVaNvKkVZNtwuslEVH5xhSrsEwljJB36oHq4GV6RQwLgbB4wU9Ht7e8Ph8MTERL1eL5VKhUIhnU7j2HCvjOYIyBSrVXWsMD8IHQziA7EDW/h8vsXFxVu3bqEViZKBxn2oNOEfcvopBMhie3p6GsSRcCMSA6cHpUGhUBgZGRkaGlpZWdm7dy/9EfAL6kEybVYPhh903PP5vIIR9dHIyIjDExwD+lqtpr44hxKsLiSYuSG4Cukipfr05je/GTNHGqxEGfWYKWpEnsZ3Z3FxMZlM3rhxY2FhQXxi9f4kSShaOfdE6obg32SyZCi5XI6b7PP5WILSdQHBhUVB2YU5FTJbBH02J7uF6we94gKCwSAYYrlcjsfjULSIiT6fL5fL0e6kF0bLDy7+3Nyc2+3et28fjpbC9ShtSH/0rHXaWdMKWY3xv0ZGRtBxZHiebiyhjacvJVKLsQogo5vZ0tISDodh54gKt7q6itoiaD3hg/zCGjhatoEqROVisnHcXUPJHdpG4eYffZFM0fNlqlEnIoe63k6sYMIZpiodHR2M+FgShmRONU6neTL+S7VEH4wzgEEUVjX8r4GBAYS28/n8V7/61dduQvH/bUnoKAZZHyrOaV6AdwJaITCCEC12QLdv306n0y6XC24Ug+BkPcgeUcUwpSUNb0wi7MEif2CdLZzYq6ur9Gj7+/upAVl/lFQcJhoB7evrKxQK6HNxsoGOvfTSS8iqaBRRLvCSpmFtQZVCYDcWi5EA8iw5tAVGkntPTExcu3aNTpPGKslGuc5qtZpOpyFegG2pj87JRkxRD4EVJvMSdbXJlUiv6EBRunJ/sBpCc5lYls1mkRUkPFWr1VgspvEponNHRwfdUuIOsYxF3NjYWCwWo9Eo7Q4GHimf1RFG19DlclFekeIxcA52xtjj7OxsuVwGlNF0jqM5xYclchFYgfzp1icSiUQigVAXz3dpaSmRSMDvA0pDmpG9TaYpyQHgbarsoaEhwGzNfgMwUaDR5JU3CumYdZkSYqWMRj9XG9FK5SlHE1eAM4+fS1yQbAAPRK5ENqgaRRL/TpJ+zGygzqh4JNV2clW1aOFAsFM0ZstNBuynkqBTr9IyEon09/c///zz/+V0zv+d4qgaz9J1UnFeq9UKhQI4i5jxOrHhHA4MDKRSqcuXL2cyGRa09A9JiYPBILQJIhEUnnQ6zRgdD5X9Q+zQlcjLB8YQ4QYRbvICcteNjQ0wFHYgSCogFJh0U1NTJpOZnJzE6o7IqNgKxkndSphDvZfyh3fhQKYHREwXdcXlcg0PD1++fBnRO8bfisViNptl2ousW5QR9fJBNJTwW31IzmEN3wHWSo6OYxnnRBmmNTc3A9aAdgF+SwwDo0MyIK4f3BAEhwgFsEhOyukNB8rj8ayurmJTRseQ7Az4VoY0Ho8HP2eETAcHB1GhYj9g3C2tBWudIKY1j4NOC3QwqrnW1tYjR440NjYyXooMNIcKiSdTjcgECQai661ziE2OFPXg4CBqE1b0Eb0zUkWuh1fgeLZeNcKtrIyBumwO6wcFZWuZI1RIRAq6RipyoZsTWHU86O7JR5rqEsqRGJQ8QZAT2XHqSGbpEpiAd/hlsFo2Lywf4Eii2L0ymiM1Ihn52tlUUI98Pk/Ul4Y3Q2o8NoYSsEe+du3anTt35ufn4QR2dnaGw+GBgQGXy4UmJOrgsIdYiAihMAdPq4uQBJtOBjwUGvC8iSBkf5DirG0kb4HgMoUMyfbW1tbt27dHRkYGBwelpQ2TC7YReQT7nG0jkxUOeXIQeU3bXYdk1TPPPHP58mVab+QLrA/eQocwwchK1tLbJqKxjLgMWcDz59xqAERIN9BB6V2wXjc3N2kA8Ym4YEpL4iBgNtzC5eVliOD0s2CuUnhSJeFQz+mNGpfOIegIRK5IJML1g6NrCdHmd7lcDz/88DPPPJPNZi3N2lKfeBAMXVEwUpFRlD3wwAMDAwOLi4vlchniAt1eogydCvm8caNwDPB6vVKAYsKUrc4OlKEhxRErStEB2IHNLMUV69FgyZY2n7JdRcU1myhJkE8Z2c7Ojrx5rAcVPyenhoPKQ1R1xvEj2RyN33LZkEjEIhSl0fonUu9rhlEiGYyFcqACRNwTJaHD3kdOJOyW9fV1QHHSEA4BmwiwQ9g8FL1NTU1zc3NXrlxpbW09dOgQvTN1Yam3FxYWYPQQ/oEDo9EonB2FTkmvaJKOQ4O0FtAByiiYojgWOloBDuh848B69erVRCJB2sxmYA4GHJccjQcGJAf45fV6uQ94LKt/rCy9ubl5bGysvb19dHT02rVrr7zyCtO2bCF7tGp4UBuD7FL9HVJRUnQHpsvToXAQ4YClzxIE+WIUFk0VpKUxGWF7kyQ2Nzcjd0XxJchM9lxo3WAMQ43JecuZIU9TcO6enh6WCgA2MaVSqTQ3Nx84cICxxIMHD3q93mQyyeynkFMN7kl8WRkEGdzx48cR2yFQwmkSVORyueD3Ad5pWoXwRJ0OH0XD0qSf5FN28fNYLSNU7TkaHdrzDr8GG3kdvqcauBE+aJ+7IwLaV5azKVmPRrg0qinJQMvd40sxjl3GRAfDzNIvkjO27qQwRNIuTYCwONl690TAUjYrOXZ9U6vVstkspAGm8BDYdblcfFoV9nSdtra2xsfHT5w4ceLECWIEaIvmcpnsZx6QiUqFP7h2wBA8LeBP4BhmQWh1ke/w7khoU5josltbWyORCC1/tZnAra9cuXLkyJFEIqEUiaKVnIvtJ7Krz+eToCjdcZAjMWap6SRyFovF9uzZEwqF9u7de+bMmWvXrqGbyu/oJLd1t8MATgRCQVqqECmXBLsIpECtiY2KFAwTdhBWiIzIbAKlc83FYrG7u7u3txf3Gp4j2oHMtYBkkR8hDdrd3Y28hAQt4EbyUBAnEbyCzgdXCNEJG9p0Oj07O8uMCKe9UHNx3DlpPB4Pf4I8LH13biZnEmULm407AxwDhEwXUkmZEgfhd5DF29raqHNt10+W7sLX+E3inWMWT5ny7rgjt2D1AdSBsRwIK6luqapqyLAXuJnQ04hlUgDWCnE43QOzoiJLuk3WLFkxobeWtc/BRtCk0KFEuFe6hDbJUg0CbgK6yW7n8KeFQa7E9lbrihE5sspYLCZXuIWFBQag4GRevXqVDSDsjKM1EAgEAgFcMFwuFzN0eju61CL78rfr6+sw9BD0ERSyvb3d09MDE0KMFQ6iZDJ5/fr1aDSqkWbCB0RTAHiBqfAbiWgkLBxZaGAK+NTUJLybXC4XDAbf9a53DQ8Pv/DCCxTUUkqiMyWjVm47ZZqqCTgylpeI66eMHtSNgkIFvx/4GU4J79jV1UWrXrLXGn6mhYp8DRkrPCzpHUK+px5EOTYWiwHoaMwYl7ZSqURB6vF4xBpjf5LyANzSSne5XMePH6dUBIFigBSqJzuTaQG32w2+lsvl2Gbg4kp8VEuqzhKYAMy6vr4eCoVQXNFCBYgsFApQeVGXlFynxaSswyB3RqMODuUWi0w5/LgUVqwKu4OPankSNn4RsPS+VBs0xDRKTS9e4+XWyF7KAirxmE9oampiRpVgRJvI6lLYwW9kclm090rAsv60WgfE5rm5uUwmo+F42D2ixiErDroB8sLnV/sD1gz7jSIulUrNzc3p7axST1NTEwQ2njHwuTjQUE64VI5QDsk9e/YwQyNVP/YSDZTbt2/bJjcf5Hvf+94DDzxAeGWxUjisrq4SghmL4WCBHwxrjAyCGWaRP0SM5o5BULx582Z7e/uJEyfGx8dffPHFM2fOcGRxdCsmKkuyVkNaxOJPEkS4yWSCcFyRJ1tbWwPdQKGpq6sLYzSIJhiv0cwloPAuABlgIkyQ0BxgWhC8WSKxVIgcG4QVKmgI9G63W5UmwY7ePHbzQIFdXV0zMzMwv2TUzE7DcYdWMrsRMA4tIA4zEAk7JqIdJQVa64QsOj46PEtLS+l0Wr05pvwaGhry+TxkY0lB0WiznlfceW67JLFsm88yFm0G4IhQDnsu67EsGWXrY2oLTC7AMlTZC5DjoXfAb5BbqKZ2xPwkvwOP49SRqKk4awJndRirCLiHRnOszLa099j5tVqNeETqCCohOrtKXLGNgJM5VMXthIfJw85kMsIvSDqkmQuqIl8phT9WMIGSa2Ad0xqDgkCBIKxXy1rYmQgmjY2NU1NTt27devjhh0Xe4bGB0SA/xOciCouPg3lfpVJBzEDi/Grc8A1W8tDtvF7vO97xjqGhoYsXL6IvCv9TzCPWHxm+PriyeqEePBSyJEHU0Fwl+CUNH9LAwcHBubk5npdwK45Z8Ql5a3Gm0f+1rsKkKjTmmIum3Ubeyu5FOYeMgKpT9gfkrZDp8ekh50LzY3Nzs1wuBwIBnJ8VSUUskvSoihSaEvxc2I1YONbrWOkJrUM0ObEm7O7uhg6Cybl6R4zyyMvOOuLY+oNets2hLGil/MhBfBdJareci/7KqoM6wDW7KlgJqjagIOB4yE4hbKlLKOqGWBR6xLSGlpaWIDpIklPGwKJV/q9cc/71X//1qaee4gH/zu/8zqFDh6ampj772c+ur6//+q//+sGDB1kZf/M3fzM5OXn69On3ve99/2VJqA1DXKDtvbKygrAnsxGoRyJ9J3quqNvcO4lRwGTBhoeOIWRu3TISKy0L6jg8dVgZAt1VihL4QEyhejHfIBVHqUQK67GLgANqeXn5+9///oEDB5haYPHBKcPIhM8CjlMulwlPfNKOjg7qUEZtrFQhIAsxyOv10iqlM/3ggw8ePnx4YWGB1r5y2N1nhm08qdYQ011dbVWU0o1UB7a9vT0ej8sLFriUS4XizIkiCS2WJouSNhPFF09QL0KOQwTn5rCBgcZE9eAmQBwXbYKnE4lEiCOcN2RMtMxVPKqHQ3sXET6ePiGecM9tJw4q99QAg1reQl7UcEQckQ7D8o++CJHVahWzxenpabfbTdhiadGtVkuHuK/xbOk32BRPeJZayUqgrECQRNOEr1n/Z72U0kmtEBIIYE3KArXzkOJRzmjbkTwyEFVWiGAH8Cx+GcYlyaZ1RXztAes73/nOzs7ORz/60VqtFo/HC4XCb//2b99///3d3d0f/ehHn3jiiUQi8bGPfaxUKr3pTW/6u7/7uz179vz8z//8T2C6W9N50f9l6g0asrq6ms/n0ZAj05HsHLU0Y2WI221sbOzbt29iYoIfkrak02llCkz2wKnlQAAjYwpMD5tlwRuJqqPDAdxXsUxtOwHV6gZqSpH7fu3atWQyefDgQbEKq9UqiBX8I05Ct9uNM3MsFtNQN7BRPp/v7e21QIa1GPD7/T6f78qVK/39/Zxybre7r69ve3sb0w2HnZwWk9B0XbDmxZT3sdqsvpJK7NnZWVyqaOe3trZmMplSqTQ6Okr5BjgFiR/tVvFm4bjxOBgnYPAbMjDkYR319J4ktstRjJwhHBGteAgQxFykMra3tzX5QMYnKwfAREI5/IlCoSAWC9m30n8JPHCkgcfTSZS/JCkejA3k2Mk7+J6mCtZq7e3txWKRBc+YBEkHChMaVkdlAR68zlqlt/YEsoCU4pfyJsFkVvvEctOEf+sXbF2mKMMpwhyY4AIxbzgV6KFLZROE0QIy+idRD1c0yg7WA3n9aw9Yra2txWJxenr68OHDPp/v61//+urq6u///u83NTV9//vff/bZZx977LGzZ89++ctfZuzrS1/60nvf+95XfUurXFGpVJaWlpi/A3HnQGZB12q1y5cvt7S0xOPxeDxO2QWrjdu9traWzWZzudza2tqhQ4fC4TCbgeoaT3CWo/Yq3VYdWWJFOVQAxcVXWsEvoJ+v3FAtedaZlXlSB5esGFnO/fv3C1LlG8aPlPuwMZjapZXG0Y1GOOMdXK1gOy6gsbFx3759qVTqypUr+/fv5309Hs/IyEhbW9uLL754584dMQbFxlKXxx56Uq2UogNULE1pUJtTLap/pF47u046iDJ81AgesQnHY1r+MHI5ilAu5RU4omA/sTdkiAuvlb6Hgq/kocEZ+CFiPuhBEoZKpRIFu9JVcQsAFmnwpVIpdAF5EFJkliGT7eGIScs8tsTXYNXalQ8CjQQIkkQoQ1DPNjY2orVNIkOXDW9UYQ42IbJ1kyWpW96DHrRDhfkntMJsv9hCS0RwHpzVrRWxS90b2ZvzBHWyqsyU5YIdEUOAgHX12mcJd3Z2Hnrooenp6evXr3/mM5/5kz/5k+np6b6+PgLw+Ph4MplMp9OwhxoaGo4ePfr5z3+eB88r5HK5j3/84/Ckr127psH9bDZ79+5dHEHW1tYwBNQgLt9jybewsBCLxaLRKCRpGN6gJ21tbWNjYwMDA8zNciPW1tZSqRQItwAsSZvbp05OxAPQdB7ZjU4A4gttWqGMRDFijXxf1HwRlVxowoULF17/+teHw2EOJf4XsgEiHLAmUJXid+RSSUcfZrkdTAWwgBnwxje+8cknn7xw4cKxY8e4wkAggBdpU1PTt7/9bQAgcY6U7nGXHPMrNpujDOTeEtcomjSRruyDbHF9fR1JaBI0Aha4Aa8JcwdxGDByecdLvAnXrObm5mKxCLYFXyEcDuPF0NraSiImUrEWD9ENhgpml9K6wW0Emj7PTue5jlLGsKngSBzIerThdX/4XLyCFAh07JGdaT58Z2cHEICwG4lEEPOjNcZtx7SZRAz5MBTB+vv7JX8mREnVk84MUbEsXKU82gHMW6Rfp6ZFrxw8JJXnKkV5TbARBjy5txK2Yw1o4hoQGf0sibjb2XtmyyqViiSC/8cBa8+ePe9///v5hP39/U888cTg4KDF7RwMNEVoffl8vj/8wz8kF/jwhz8sJeJ4PM5IJHA7cm7cPv6pAxCx8OXlZQZWMBZHDK+/v39wcLC3t5dFQ4LDiIYMP2QZgoelHipELQslktACvUvKWmYBMvaQYBPoY09PTy6X4wC3h4M96zKZzM2bN+E3cJiICWUbyZFIpFAoLC4u4sAo5BJoA8VhqTuxOPgnSNbp06e/9KUvEbN6enrQMIlEIm9/+9u9Xu+3vvWtUqlEyFZdIJlpDc3KR0CNbXGduWBJ6XMAACOKtrq9vY18nd/vRwVM4nkIwLKOiS+VSoVoK7IFqDmaOQqgbHJGSYRtayEhwkUbSydNrVYD7aKmlmPj6urq/Pw8sYOaDhRfHFEWA8sJJjB4E6pemPKyMnlq1sSY80NEKjX4BErQIBJpFjIaPFjwARy5yWI0agfFj5F4AC9YhER5i0aJfmVndGQ7Ys3lHZWgQzHFEQF2E74EMiglp5glg5YbhUZHYBRqAJsfglFqgJ9cQeaPr70kVHhikn54ePiHP/whn//OnTunTp2KRqN007q6uhDP5NDjC/0g6SPz4cXzlvkgM3rcHfRxHMKDoA8IiTQ2Ng4MDCBGHo/HxVSCGT8zM0Ml5fF4/H5/MpkEL7cu2NQOdlqdK9FpL06AOmgyKXHQT2hda9Reh7BOLWQDLl++/NBDDylBA6dUTiG4EeCJfr8l2cLlW1tbQ1pT8Ioybdj5b3nLW1544YVLly7hx5PNZpG1OnXqVG9v75e+9CVYCFS7pEu6bEIAI9yEeNxACTHqsVr9e7XJiUrASbD8Nzc34YVzeHA/q9UqSHaxWOQzMqcJEZTsTEgTIlnW/I2iWyWYQEMiJhEBh2pA/Wq1ShurXq/T6AgGg0jHZTKZ2dlZEj0FZXITUhhSCdgYMLmoAzRnSroKZ41XwPCZ5yheOynq8vIybVxCvKKYaBMailxeXl5aWiI3IdqSc5F6o5FNXom2VDAY9Pl8LFrHkSlegrB2pdVqQ9kIZRMRBTVFOlsK2IKR2RJJ08C3YvFQ2xJ/yZEpfrEul1APxw/sBxR45Pz4Pw5YW1tbn//859Gr/su//Mtf/MVffOMb3/iFL3zhs5/9LESnU6dORSKRgwcPfuITn3jb2972D//wDx/60Id+QjonJp50xzc2NrLZbLlc5iiA8i59ZIVeEhxk9uLxeCwWwwkqEAiw0CEBsjLAqtDPX1hYIBTKyk1FNRM2Mq9nHchDTK4WoKqybxODSQydcrksHMQiBdqoW1tb09PTxWIxEok4uMWSAOWSgLFBc1WgEbO6urrYk+xAXsGaZTY1NY2NjVUqlVdeeQXUzOPxII/X2dl59OhRj8fzrW99a2pqSoxQB3GRO+n4X3xwhkWE5nDYQOwGxbMkW75oUxIymOxjyoeiAOsgQkahUHC5XBKkh2nFk0UgiIOKk4ZVDsNWmZqUY9kzkNS4RfyTsIhMzdDQULVavXnz5pUrV4rFIgkO/I+NjQ14dlJEAYhBGw+3x+npaS5PCi1U+vK7psPLomLSBXFa9RYJxCxyeEkU1Lwvs5YKW+R0NiRBi0WLDQ11vMc5nKwijdV7cDxuh9+yxb+kseUw77HwlopH/pwoD9bBVtJEtGzNXC4Xhw0ujaFQiJKQUxNOD/TD155hUbJ98YtfbGlp+chHPvK+972vsbHxz//8z//qr/5qbW3tL/7iL4aGhhoaGj75yU9++tOf/uIXv/jBD37wQx/60E94G5XT+hj1en1hYQGPA8IZJb3kaIAhWlpaoD4cOHAA5RZ07LAJUGJZqVQ0UQyT0OVyUQXIXJNtg9ceCQVLExSJm26xVZl3aUpGZw6pPi1qdbiJwloKPOZsNot1CitANnmsYwFwHD78kIRU5BR4Q8ViMRQKCUHQAUg0aW9vHx4e3tzcnJ2dvXPnztjYmN/vR2ulubk5Ho8/9thj//Zv/3b79m3RlyzT1U5vyNlFbskyKxZXjnqQ/cPuBfNmEHJnZwdBUbxnkNKnfUGWVygUyLUZKiZaiYVPzStExk5s6MJ4O4KdmLGcefV6vbe3l9IPuim+RCTOa2trJOm5XC6ZTCJLT9BRfuf3+0UyovSWYQf9AfY21gy8qUpabnitVkulUnK1sIq4jOUTiZBJAKQHIqAXSWpGDc5gAwggaxuQd3l5OXnhtwUAACAASURBVJlMzs7Otra2MhUfDocZxuBhyd/QIbjsGM2xI9OKdBbQdEA9AsUsWVq2j+TjLBj6YGq2cmPT6XQqlRKVlC4wHwej4tc4S7hnz57f+q3fcvxwYmLic5/7nP2Jx+P54z/+4//mXI5aA6SRKC5ivgLTR16yfFp6JXiQBAKB0dFR7sjdu3cZ9+d45KCDx0iQhuIRCoUmJyelEwY1ETMuUExGaoBsAC+ookXOJPOynADpwDHJnMvlgJDtAWVPM7SDX3rppde97nWotbCCQZSsihCtej6RWjBaGa2trfS5oM6L7qjh5PX1dexw0H64ffv2xMQEdRkff3Bw8MMf/vDXvva1c+fOWRE4VaCWkMVFgtZxfxQfZY/OFgJ5lS642+0Wf7K9vR3nKzJEGThTKYAbIgZLtggtgKFChP26u7slECbGE6cXnC9Ommq1iokWMZG2DDI+QPvwVNVUKRaLra2t+/fv37t379LSUiqVSqVS5XKZJ8t8NUIa0gICURbjkXMFK2+RAWEwtLS0lMvl6elpxlMUFCT4w9pbXFykv6Q5R/IsmAGQ1BhFZkIzEAhQfxARCP3SI85ms4VCQcZooVAInx6Zolsyl9VcFnqzW6/GocjsiHc2rNijDjQKDI47w/LTcD7K4CsrKxhKSXseksdrB93///hSscP2ZgaQfg0rRm7gOnxIi/CMYnUypm9VPtrb2znwObjIyUH95cWmik81tsfjmZ+fJ1SxzjRvqCkWIoUaJWq7MOCWzWahMqslZLNrO+UwNTWVz+ej0agwY6smrrIOXBbcTU1VK1bLmBsyL0IihEq0tLQwjM109I0bN8bGxrxeLyrs+AO9853vbG5uPnPmjKZ2JB5gDeMoYYib7ExH48n648L+JcrQyCPSgXGAyIDEUReQSUnTmQyLrhw7n9hBa5K7RDNXEmbz8/M+n8/j8VAma/KO3jRoGs01LpWGKceDGBIIRbS1tfX19cViMQyfsWVVXzWTyaAKKasnK6THpwgEAn6/HyU8pGsBCmT1SCOfliuhASV+eoukeJubmx6Ph2glz2ACPRNdvAgHjGxvGGPy+XzYkbB4yuVyMplkmCkWi8XjcVzR7CO26JUVO3UkYnaA0TqSiUOvJcqvcbwRkRHgxDWWs0qWDpTe0kGq1WqLi4sej4d8/F5Ra9CIlgbiCoUCc/mxWAw/UR4MU+/g6BxEoVCor6/P5/Mh4aC1QrRqa2vL5/MqH9RD4cBRzcXIi4ySwLBJBPi53bHSHQZ6sPOPEgXP5XKQicj1yOodVndcaqFQmJqaIo7YKSodbuqLAXJLL0nJJjGLpWzVxKzMtmZT5ubmEonE2toaeFYgEEBiEB2od73rXd3d3c8884zNCq21lCacRBBRRLBYHndGU5mcq7AHhJvwXxx0Ojo6EEEV84vJGNAcJod5UvC/qMJIQ0AGlEMR1KgmuFc499Amz2Qy/f39mkDmtkBTJGIy/YcahJyK2WZjY2PAhYhHkt0ImgAShRxPixP8iMAEtCfdd1ymGUGdnZ2dm5vjRmHUur6+DnYOcAHZguvhEGUX0O4UXZkkS0tRA2E8XB4BnTtS2lwud+PGDeVcwWBQBaMjk9KpbMF4+2sOKUQb5jS7QttkY2PD5XLh6mRZfvLIINsNBALI2NK3KRQKs7Oz95CAnxrA8svO5/Oy/MRFZn5+nuKW9V0sFvP5fGtr68TERF9fXzQapbLT/YWkBxRiR9X5HWzQoUoRtsDvyYlAwarVKqYDUoDp6ekplUrcYpadtV3itAcDIoMlwRGDlOdhvW1BfK5fv/7QQw9BztB0O+U92x4KD3WHBLll4wqZgLwAhIX9qe6kzvzBwUEEbUdHR2dmZi5fvnzo0KFgMKgWVVtb29ve9radnZ1nn33W1rBalERM4rWClzxWNfBliT/y+2AJivfQ1dXFB+FSRcXo6OhIJpPVahWeEYN4SPdR0qIzB6CrcpLPCN5H6ddovlgSXAkDVeREQD9IoapDgkZzJBKhN0elv7KyInkmfkFZj9QIYIRhQUDuQ+3D/DalEB+QA4w109/fHwwGZenOYoNxhuMRnhqIbfHEyXCp+9C8p9WogEVuC8OGKAyrADKX5Ge3tray2ezCwgINAb/fH41G8UYTMGdJ82oC6tC1HD3HdDTbSomnpuuLxSIjR5x5pJbELCIaq504C6iCvwFZ5D0RsFTusUBpGbCO0+l0b2/v4OCgOAcIMODyEIvF+vv7keiTTTS7FEY/EiKcMNaDu6Wlxe/3A7hKq0y+mDRZZmdnaWahwyUpZxEa7Bw8G4+Jk62trXw+78AsVU7qqesESyaTmOhpEF/3gUyBaqi1tXVhYUE5vNV7pLRBszgYDALYWftvCrfOzs6hoaELFy5sbGzE4/HNzc3r16/j9FMul+FztbW1vec97+nu7v7P//xPtcMtG0NHN5mmjOrEa6PLCZQDqZ0LJjkSuZQMn2dBCCO4Q4vLZDJMF4mNKUkcqBJqlZDR8Jh4dx4ltRuTQAxRQFmS50J7ezs99d7eXj6pbGxoI9JWhulGJx4sgpC0trYGdcB6WACYgotx4lKvEVXZjcLsPR4PrwYm63K5mB9GnL5QKLC3aYIDQtvnTs4IDwbhMHpwqHq0tLSUSiVOd/oPlUpF/DJqXoYHcPGhSzs3N5dOpxHtQV+X12dhiKNvFVZYGw5dU4tk0U8n0ebjs8gtqYJXI1vks7Dg2dcbGxvQKu+VklB2D1xQqVRCS4RJrnQ6vX///v7+/nK5DJw8Pz+/srIyODh49OjRUChEcmThDzHlUBAFGK7X66xpQebwnpWUcXAR70KhEHP8Ur2golFsAg4Ui50dBV8Rf1BLCAaql9OkQ9xjYWFheno6FApheU8fnWSKZ8xbiCqllpOSNQ5/3EPn5+fj8bjVipDv0927dwOBQDwev3Pnjs/nGx4e3rNnz5UrV44fP+5yuVjfYLGnT5/es2fPN77xDS0s6xylglENRG44bEA7WE9OxA1n2k6VF5uQgAWVVy/LBGU+n2ehh8NhhhasngejPPA8gS+ZCYeaxCYhz4JzC6laLUUkegg3CMtQTkrZElJYJBLBU4Nxd6rFYDAok/eVlZXbt28nk0nG5unbQGWwHWEFF00CEEyhL2hunzyUKTSOAdTWNOkNXVYsUMmcEaN5I0zSWM/t7e1gqawf9ZEpPkA/tCyJ18gZcTGc0BwbpVKJnFpD+DxKCTopillAk2smgaBLJmEvO9Uo8IstDOJG6kBFb33GfsoBi51M7UP1lE6nVVsRtohZLS0t+Xx+fn5+dXX12LFjo6OjKHUAnzs0GwlhyFbwkOQF4tALlIw6256oBEkCuFSsSJ6flQ1R3W7pLcCcDmsTbTYLY/EL9Xr95s2br3vd69QNFPPTkuUo74m8GieyLQsW5czMDPx4SSGzypWxDw0Nzc7OVqvVQCAwNDRUq9UuXLjwyCOP2NmUxsbGN7zhDQ0NDc8884zMeFjuOuWkY6kFJyUTwfaNjY19fX0LCwtwxDgwiU3SUKTyJb8gr2xubg6FQiTFwWAwFArJcZ4TS4NmYnsRI5S3FgqFSCSCYg/FUVtbWygUoixlaYGnFAoFbikhCWYA+wRfCTv1wvgXK61YLCaTSZBKZGwLhQJwMkGHe65qlCJansmrq6tgbXBlAbB4a5oP4Fx2jsLucEotFSXqIWp9KiIIf1TjWJgX3RtOX7fbjdEv1avyULqWdK4AmtlBSovQlYRwwyku60PCmZwN/H6/3+8npstiyo5YyENAfGCGFhgZVpi+JzTdpToIbiXKEh1xbn0ikUgmkw0NDW94wxsikQiJtJJVC4iI8AL2pEkuIQ7qQJPGC8kCPQVMDYVCbreb12SPWZdKHolgRTEA29vb5YLpwK0FUTsmUbe3t6empuBnwMbmiYp6zsMjReLxE+IdLWRxnScnJ91uN/mjtasjAnZ3dw8PD1+6dAmYYGJi4saNG+fPn3/ooYcYNuZGcZ/D4fClS5fm5+dRKLe6cZZeyG1kU6nHx66LRqPpdJqygh9yYCI/DacR8R++B9gGIozH44wlUEhyB+CLcx+AwzkhwDd50Eh0QPuCBbq+vu7xeDA1IOjQflI/hK3L+b+8vAyUQ7LP7trY2KAS3LNnz+LiIlUV/Z9arUbNRVxmt2NEoOyD80N6KWxX1M3tBKhoSpq+UultjVo0aK2GNemquCyaD+dL857wtuREKaUNVIzBBOnhEE3IiTSiqO9p89GF16e2SZAiGiVqR0cHKknAytwWNSIlWGQ/Ec0K5jeZfr9XMiyZskBExB5d6iUA5Nlstq2t7dixY9x3uloSh7YzjIRn6nOIc/SD9PiFW7ECaORxCEuCltYPVZjgQ1EfeFNrdsJy5y148A6OqIZRVcdJaLipqSmdTqfTafgZ/JD9jwYpTxfoGkYYJYZDU43TKRQKJZPJW7duHT58mESGHBuci6SS0J/NZkdGRgKBwP79+y9fvvyDH/zgwQcfbGpqovVOCok4QTabTaVS/An1hYW3VGgofCsv4DchDSCcAtZGzFJXiIMqHo8TcVZXV8Ph8L59+0DZKE8AvO10Md1D1Bd4NTZ8a2srkg/EelVP8/Pzfr/fDuJK1p2Tn04c5IZyuczqkm8zvFP5+Eaj0Z6ennK5DO4DJCxtPJpxbGNBfgLFpSRhTRyo5u7evRsOh9mxYnip6Lb+Ujo8JGltRXTVsOaJtLe3Y1wmbF4ebjQH+CE9AUtKYPGrEqRa1NCfcGH4LuxiHfCEQgojBVl+2NnZ2dPT4/f7gYltG90i6xQNcv+8h2y+KIXwC6Blo1IR1d2ZmZmlpaX9+/fT1mHUW1aA1qyNWwOTRb57DQ0N/AmJCU+CbS85UAsVg+YIcZeMnLAbtUJEdxIOnc1mrc3U7hlMe5jwanjZHzp0iOMd51FaRfCqeHJIBcj6wVo5scQhXrtcrkuXLnm93ng8rn3LAC1pTnt7e19f39NPP93Q0HDgwAGv13vgwIHz58+fPXsWHVSsANkqlMaEfpQUM5kMA080m6XdajsnHMg43LB7oQ5pOIkEhCuHNkXrELGN9vb269evVyoVKibKE5JEMRsA6emd8cSBvSBq8n85qFtaWjjkyXy5afSeenp6oFlJcoAoQKJHxCcVBYZnzIt/FgqFZDIJbA/9hSyMdwGxZnFKig/REXSTyPtUYbAYAPjZq5x/KgMV4Cy5X30VK+VOQFfZqPY02ZZYclq6alixO1gz2lOafwAsl7Yl7ys+oD2SNaKrWWgOWg1gLC0tFYvF2dlZ6mVmjwheRFVSPCloWkP4e0UimSCVz+dBHOkHI9QPmjA0NLS9vR0IBJC1ZMhG+bxc7LlToq2zW9gV8LAANeR8oyxJ/XXaz8DPcIXY6twyZeyOmojHQ6PANtesT4HspBSRNc9IRKbEIJ2kFmbMVcuXz4LInz2RKIUgPUSj0Rs3brzwwgtvfetbSa8glJEmgDWMjY3Nzs6ePXu2paWlv7/f7/cfO3bszJkz3/72tx955BF14ljBBK/5+flMJhMMBnFvvnDhwsTExObm5p07dyykJfqrjL8ICqxXYBoOJ/WnoJXiTIM87JkzZ5LJZCQSYeOxfzDawseQcXppIsuOEJds1oDsakD91C7UkgNydrvdqEUCvZfLZZJrXh+leZ4m7Wao2LhXrK6u0pLjPACCAMrhMbGMiU3Mse7bt6+5uXlycvLatWs0vpk9lMcKr2BnsKRTJK4ZeliFQgGEUZKwMtEhybVhhcsTeVDRxI4BkqkpAxCQD2ZC3AGgsLRBbriilUKVQDS5H6jytcIklNjKJaWIT5uCWI+70j2RYdkeP6Ow3DUyi0AgwMrDZZcxdPrN8hfSZDxplGpsFd6Al6qtyF2Zg6VU5CYqA5ctIHkfya2VarA9DhlD0r3KZDI4p1p82o7LKzWzQY2qEJknQgyAJUe97FQ7OjpIG7kwO4mqd8lkMujMnTt37uWXX37ggQfY82JRMSHR3Nx85MiRTCazsLBAGzsQCBw6dOjs2bNnz549ceIE7TOmkakr0TZS3zMYDNbr9UQiMTc3R//eIWUJYopeCkCVjF3lJ0Yxfvv27YGBAY/HQzI7Pz/P8AohbGBggPVA/75cLudyOch3AD1AUcR93rdSqWgSjbifz+dRwSdLItsCzSX7o6fMycTxLvNaATSShGaSAVkCiiyZD0mSnGSQW8cJWiwWkTA5dOjQQw895PP5Ll26BHVOvrD8rQbyVcRJL6i5ublarYKsSQiBWsSuBG7sbkq6hJUsLVH1lzpXCjcaHrI2MZJ4FVnBDv/biQ5SVLaGbNVlv0CI5PX5TavSpeSOLUzr817JsARgMT5Gg5yhLVRlZMoi42wgHlYGhxj6s6wq+nR8YHlhS09WqDCpFvM0TGlwBCnvhW6rdg89LKEJqltlPsqgrJUGs+IzluwucXSus1wup1KpgYEBtUv4X1wA1lj64GxLdSoVFiWV093dnUgkwJt5cQkwafA9FAodPHhwenoaTmNnZydDId///vdxZgcS8vl8vGkoFMpms3fu3IGFAFe7t7d3fHz8lVdeEeFAwjhy4gCNRvyIXIMjVFwQOE2xWIx+BcUX6DgKBLBhZai5uro6OTnJVNbm5iYm9eiRSk9RkgDaJNDumGpkMSwsLMATJpLCmWL/KALy0Omy1+v1UqmUzWYJbZxqlC1YHKNcKMyFEc6Ojo5CoTA5OYmtZK1Wy+VyQ0NDPp8vHA6r+aWsRx1DIqDP50NxbHx8nIOtp6cH3oxEoxxzFA4vVVvcqX508FQcQn1iV2lE0fbK9QuWAi0nDl2GeuKC9qz8liOJk2+euPJCPxXg7hXXHOGRaCrKh8rv9/MZ3G43snPEFBA+Ff8sLGI8yT/QoOzYSE+UFkk8n4Wl2A/YwUYiwdHYjfX10c91mECRh6koAWXHIKj0GO0oqQB75Chu3759//33C4MjKNAogRcO9qnkReI2enHgEtELUqlUNpsdGBhgt1Nv0mTkpQYGBiRyQlgfHBxcXV29ePFiV1fX3r17saeFbbi9vX306FG32/3KK6/cunWrWq2Gw+Hjx4/39fVlMplKpaIPyFWx7cWo5MwQhAcbm4bR3r17vV7v9evXeV7wM+VdWiqVqI9IB7xeL0D43Nzc1tZWKBSqVCrJZFL4gPVPJqXiFCEZ4QkSuaLRKNUKXRSSJsBvnZpKE0ql0t27d6vVKq1DoGXuT2dnJxgZcdZqSesgDIVCCP4S3YrFIkHcuqsJaNeJyMYmpqNIo8FphQAbBWx7R2FIcklCGyUxYr/XbJxYKdYV1Q7wS6/K/oKjzSdCj2MG0DFurclB6Y4p6VMNoR7CvVISCszmecj8mcdPegX3j0RGI2lqmbEZKJ1w1uEBiKbA5gFyhgpkVQ3tfmCJq+EC8US0RitpouJoeXmZ1ICxR45rq/yvR26twCxEykeenZ2F8o7vHg1mXHawtyKecoyzMdSyEH+CTev3+wlGYjnpwrRjEYcLBoOMPUG5bmpq2rdv3927dy9cuNDd3d3X10f1QQVdr9f7+vq8Xu/Y2NiZM2fOnTtXKBROnjwZDoeZlOLDSuNQDF6+REbHAwIjyKNHj9br9YsXL1arVRqFdGl5oGR5dGbpThCpyY6JtvDRi8Ui6owQiRHVYrxUzUpuESmzlTYmQ0etgUWytLSktiPcS6aUy+UyUJpgbHj8FMU0gnRQYcjGlBjUdiS8Y7EYY4AaTRVpRu0/lit0fJ743NycWAvcak3GMF9h5V80FWCt/fQUFOlIJG0VptxH9iL6uZ0bVRWsmS3ya4Ue22eUEqSVCbAMLAv4KjOQ6ZzDOPanT2sQC6ZYLGoIi+ORExhgkjafDBpZZ+RKAlB4BvCViCzYakqo26avHPhiPFpHb16TK5F8nXo3St0BWcmqGIjJ5XLSHnM4xCkg6qxQD4WourCwMD8/z6SIjiy0vWj/wbRiFkyi6XpldXygRweDwWg0qsE9j8eTz+fFAFLdMTIyUiqVarVaMBgkW+zq6jp8+PDKyspzzz13+vTpeDzO7lU6AJ3n0Ucf3bt3L87Sjz766NbW1tWrVynYJRMqZzqYZWDq9Mvm5uYCgcDx48fL5fLzzz9Pqxs1VDJBmeBK/JNThwFj0padnR1cbfjUvAvING9Hj5gFRmQhYUECAaCdXgfBiOILbJ6lyPEGIxR1GrJpx+FPmOOhE4PY0nQVgA4ZRYZeQO3D4yPbbWlpoWi16xBAU0N5ikp64qwx+C4cLbYXZIf+lBzZ6T9FPYUw63Rp7SrEfNZfAcXQ2uJBq2Jw2E3LCkS9JstbsnKVUpFyQG8ahrlXhp/5tMVikce/sbGB3hALi7waIy+SWBYBNAUNfJEjyJtAGKEk8XgFNd1ZixY+twR06fYChUqlz1IoLEOCFWmHcn6cNIfDm1d3AN21gwcParpY01XMhfBZRJHlE1m3G9kQUIywD6lNGJGl96f0hy7V4ODgtWvX8Jdmybrd7qNHj37zm9989tln3/ve93Z0dCwuLvb29jKzqh01MDAQjUYnJyd3dnZ+9md/FoxGsxo6NgipbDxIUsFgMBwONzY2Tk9PZzIZEgTaYTTpGJOiQJDJmAzf4Bxo8ICfUzStr68nEgmB32Dkohcoa+ZuM6PDTCIrCp4k3HdxpuT7rTleTinWKp1EfoEPS4gkCyOUSN0QoVdHZcQv0NDggLHGdxzGIioqqxIhi30OS9aKBdqQZHEMy1hWOLPmho5TVsn7bp0/S6IW5kVwVBZPdaywy5Hp2B2Es80ffSkgSID73gpYXBzaN5JMYKOCDpAfAfQwTEPjgPFI6DaotXV2dqL5JxIAjSoRjqV5wM7kFLUZrB4bN9qmrKwVWxJyK6WygPaTPRwsxr97LtTRWkY0GTIHLwtuTdvL5/PV63WybpFLbc1vp+Sh1/p8PgiNKysrmUyGGRdpxqr7GY/HsZjFPI07E41Gf+Znfub555//zne+c+rUKfRYIJTo44AyjI2NMZV25MiR5557TlkVi4yhGT4pgpMrKysej2d0dLRcLr/yyit0V6Bo8Wgoo+A6okNCZJE9uty5VU/x7Jgg2dnZicVialBweuGHRuYOoAlEhehCrVZDB1VFqHVO1pC2BMtpUxAIuDZkAomqajTTBuXtyM3pPCj6yIKBgKv/K1aUXGat2LSKWVkx7dmzh0xTi1k8A5mJiT+oFahSS5m+ncewgIaF2O1ZKx8s9cStFavuoepHOmASaLdjRhY8UeyTvbbVobtXBPwqlQqHYbVatY7hbrebSSKRZdCf5XPSmoEjzi2AVcBALCoLbHtNA0jBHYNyyR4JNZQilYo7MjLSMVHa7MOTddpuxF0BxbLSHUppArnm5+fz+fzQ0JDYzPyCyPqUqyL4iP/9qqIf0CAIBFNTU/q5lGE4wdrb2/fu3XvmzBkGDGUAMzIysmfPnmefffYHP/jBG97wBsRJODxIB9iB9Har1eoDDzxw4cKFlZWV8fHx9fX1qakpbrv8mpgp297ejsVi1Wq1ubn55MmTU1NT2WyWNJDagZ6JJbtIMolhKfIOawxDbcKVZzIZ6FFM/xAol5eXGeeCCMaD6+7uJg9icFqu8YRa5e/k9dwrkDX5RXOgxmKxra0tnl21WoUizzazyjZAhA4Ign+S+/f09IAt6IfqpXI206m0iLhMc+kmAxdYF0gbUEQYVGmpOVySSoeXiroBegqWaiChK7UdHe6WDmlcXofT3eIhdjLX+vpQaCuxurcE/KjAScg534DSe3p6mCzno8qsjbuMxDW4ci6XA5MC/KaKpMuj1pVyUdp5jPivrKxoGwiAlH4Dwr7SHpCuvlUoZjXL0NyeXRans5wXK3hme5crKyvpdPrAgQNEKJZ1c3MzuQPAM7g7nFIdcSI9K2+i3CuVSoT4nZ2dVCqVSCRIFjRHRo7Q09MTDofn5+e7urrcbjchnvnNEydOnD17NhAIHD58mKcD8V1VjGhWiUTirW9969WrV7H5QLuKSxVDYt++fShhkKr4fL6jR49OTk7Ozs5So/GMqNQcB69IzyTIdFqktKehOVoxi4uLgNaoMlAb4v8O1UMT3dVqVdZ42o08a0ageXHr3kjIQwgFdD8ajR4/fnxmZubChQu4z0nXGA6qSmOrFEYI6+npWV5e5peBsSyNhuH8UCjU3t4+OzurISSdl+VymVFKKGlUIZZpZd1uNIFv2SfcbcKcTZEctEFlSXbdkqsqMZeXl5U/0kj/q3bJhcHrTXX6WjU3y9j46QcsvNfpxdDMospjKoIJGzgyQhMoCTOZjCTMIQHW63XY8D09PZlMBiVZNSnUMcFQEyYEwCHAkMxj+F7C5ELWLD5lz14GDkgN7PO2+meWumJ7Llp83d3dyL8hU6MpHPg7gFCSwEcYgBang3gB5Yr5cBhbPp/v2rVrPp+PY5wDnK3CchkaGiqXy6VSSSrMZGETExN37949d+5cS0sLs5zYiEoBbn5+vq+vD+/Y++67D+ckjmsCSmNj49jYWCKRSCQSm5ubL7/88vT0dCAQoKbwer2jo6PNzc2pVIo5GyE4gEc2c9TchgU+kFiSu4/GHlSBEizQXcEbkSeyvr6O0maxWOSvKDx5mghwQxxjwJCHxfgIyxKkf21trVwuFwqF4eHhhx9++MqVK21tbYFAAKaFFcaRpVskEunr6yMszs/P0x1mxkMdPR5lLBbDbTeTycisTAIkorAwjE3gENteHRu519iBfI2USTfGck2l+CwgSY/GavzbIo5AKd6sdE34r7y1FbPUK9PHsRPB1jnRMez90y8Ja7VaNptF2oIlyGZjY1D+kBpoToVihHqQRnh7e3ulUmEzs6SamprwoaPisB6C6peBj8LTET9Ac6r2yJX4geUiyAKTLcS9tuimg8DBI7Ha55bu0NnZydw8FCEECKmqyLlsQk5Li0+hd5RbMikqCQUMhnq9inskJgAAIABJREFUfuXKlfvvv58MC3oX6Rv1YzgcnpqaqlQqgUBAmWx3d/fExESpVDp79iwWLAJQOVS2tra+853vjIyMjI6OBoPBSCQCPerMmTNtbW1YcCNi8cILL0xPT1erVfa/y+WSj9nIyEhbW1symeSEEFhLWSdvN6BJ4KqOjo6RkRFkyy9evAjlWAiDzgliFncM3kwgEJDpw9raWigUwj5HIxaSZwCC4LYzLwGwCM8Di9B6vZ5Opwk6tVrt4MGDOIbBKdWspS5JzTJgu+Xl5UwmA+ixsbGxd+9erC5o4/T29ra3t0shjlRFCmuOtaS2IwGFx0o80gFs3dv4uTAyDdAoq6XNKq8NtQJV0qq7J2lvTlPVkuwvOaXbC9BKtqwOu2vs1OR/J1r9nwYseDSsLSkTgEHq5mpYgZnnpqYmSFvgOBI+l/cZvkk4uUs1WKFdxya3D3xUGDY3l8TNCuxbLq9N2fgFciI14IQ1ikzsUBy234uTQcAKh8NKlGhykb41NDRQpPAUpXWpdUZ0A6umNUEihvLMzMyM1+sdGRnhg5fL5d7eXugjDQ0Ng4ODpVIJoib7jYadz+c7fPjw5ubm9773vTe/+c1IYvK+LS0tAwMD7e3t165dm56ebmpqop7d2dl5+9vfjiJCMpmcmZmBM0UDBAol5SddRZfLlUgkdnZ2EM/iyBkdHc1kMlrBHN04rXq93te//vUul+u73/3u888/n8vlZFspMBGWA00SoTCoVlFAlUqlXC63uLgI8Q0PROsXrWlT3t1OkJBCskpDoRCM/LW1Ncy1enp6ZDum01Hft7a20p9hzcBH29zcRF59bm6O2ATRDNYrKx+0jofFUxPQQdmhOpr1rLigHpzGM3bMF/rUrHxusngM9teslLkClh2j0WoXTV9rW8mdThQdsbbwtIHJKgXcQwGLj8SIqaprrHGQr9LYAUUcRY2UYfG/YQQMvJbsjLWFYp/4pWKjqN8H7ApNWbYCPGOSMmtEJqcMB99VvUXSQ4H3liexm/u+2++bhGV1dRWrCBsf29vbscIGjULUQWpwjndUEW0nThsbG/1+//T09NTUFCMjHO9iLQPYjY6OvvTSSzC5eGvuZDAYPHLkyKVLl86ePXvq1Cnutl7f6/Xef//9yCuGw2GyHgqN+fn5ixcvYrHHJ+V/LS8vZ7NZwOatrS0QcUxe4bgDeCGCLNIZzz2RSJw+fXpqaurJJ5+cmpoiD1J1o4xVLXOyA50rspLm5xTgVjpRJEa2nDhHLS0tHo+H+8b+h/JOAgJXQ3M5VlNfMlhyyaZhwtsFg0FSDzoVeEQxzMADZQ3zEBVWVCbrxUWEprbSxXPPOQYcUzhW6VgxGmRTkJOaPw61fsGytpdlCZ82wAkBtOC6A9J1bAdHU/JeIY5yjxYXF+VPxag6sUYinDxgwCkCGYrJoVBI8+I0bsRdkHGT5n7t9IB0eRDD7u3tBbzUkyYZtk6ijlsscxrYBpb2Zlla1nRET9FCj3owUn1itpZKCloAr4/8AJuc4giYWZIVogWh6CbchDIHEfF6vZ5KpUht6PpzKkjyxePxcH6gBkXmAhP14MGDFy9efOmll06ePMkCJUzTHunr66N4icVijFgtLS01NTUlEgl2OKu/t7cX/icUUDKsVCrFTcCdMJ/PQ1u3pzeft6+v7/77779169Zzzz2H/S24u8WzxdHVsa9EyfJUZBLBTdAjFqcRuiyRhRwETX3Y5/IEoqqlIODXBD/zvlI31NASxDQOS9IofshpRKOAEBmNRlkSwmGll6Cxdq6WhEtqDVpXim461UDuxc5RxU1JId2bBuONqqPR4ZYq6ECGtbbjJE64Takc6u+WtuqY9bEI73+JuP/fBSy8i+G2aJVI+5iFtba2xn5Dt4jxZvovIvjKkVwlGKFNo85U47LVYVZWU7swKhiOFSKuGptOigUOlLwoAaTP5SBbWZamndfZXSFKEgRvG4pZqXDA85KpH6sThEV6reIWQuCWmzn/y+PxIJeeTqcDgUAsFtOfcAH0Q1Exx+iQ/hoqH8SLkZGRZDKZTCYHBwfFvYCIkEqlpqamEolEOBxG7ejIkSNQrhYWFiAKQdanh5vP5yuVyuzsLHOjSoTRqKSHK2UVzurR0dH7779/cnLy2WefZVZmcXGRxNZBa7STD3YzCC22miosDI1eaa+SCZKwoOpXKBTYmVwqByogN81NGEO2MrBHnczKyHp6enoCgcDi4mJ7e7vf72f6mr6wyIOZTIbGiBIWSxBTqSXOsLWGJy6DaSo5sH69arxqYsleszg60pW0QcreZ6k/W0F3bT3tEcdsAKixnZe2YIsqG2Vt/6uAhfjs1tYWKQ8PGOYnMqx8yZT4J2jI1+t1WssyEwbDArtBKIM+Fxw80ivYvSIc6hyzfVlgWrW9dehRCzBYA1JAO1JeYVZwRiE1GAwSAVWZ2ykKGK22LN9tOeNgNlgeFs1yNbNzuVw0GiWK8bKwK9EdV+JJx4AZaYBwLolbIQYj/0X7kIojlUqhVaJWkXa71+tlxBf9AxgM7MDu7u7e3l7Q6/HxcTxdsALE2Yw+ZrFYPHjwIKPXWDwcOHDgzJkz9AEQUx8ZGfH7/ZOTk/l8Hpdv9HOVy4AK0bbjEDp58uTo6OiFCxeuXr3KuF8ul2Mz216VyiJuiGUJ2HatDgOdZ2SjzJmCfAlItoIfzDmq/lIMElygvUfyKAFuFVzc81AoxHUy/IicPMWgNYLc3t7u6+sjwNHhUVdaXHCbNjoIK0LlNS9FNGTzciiCptnOtXQWrc5Mwy5XZ2kKamHLXtea4InPyOuwqVWuyk1Kz8jiLQ70/TUGrFqt9td//dcvvvji9vb2L/3SL33gAx+4e/fuJz7xiXPnzm1vb3/kIx/5hV/4hYaGhieffPJzn/vczs7OsWPH/uiP/kikIUdVtby8jAlKw4+s5EULZPmSVnBzCdvVapU1RD+b6MN9V53PhxfnSNPCVoiDDhSMQbIJfoeD3Y6VwGZStOLXSAGoQGUGaeOUVUO2mdfu/NZaw3OuHjx4UEMPwFgrP/rq7e0lNqk5wB+63W6U5JTQ2TyRqpBnjwseSJaokrwXlqvQ4qQiT+RismR4eHhxcfHatWsI7O3s7PT29tKJQ6D1ypUrr3/960+ePJnNZl9++eVKpfLOd77zwIEDqVSK8Eo5MzAwEAwGb9y4MTMzs7q6WiqVEDtzuVxgdsxFgTG/6U1vGh4e/uY3v0l3H29w4Z6vKrKmetCh8GMlLuQyz9JyyBBJ5EONMCIC5BslMlYhz2qfae5agY+bjPXO3bt3FxYWgCAYRSLA0boFYIVCIcEiaystaQqkL7hpNhkRfC4QEMhCah+alZEYqRIiMlYJVcrZUJ9IcRlEwoHi2/kerlCVMtsWpM/C9taPTrCXhKH/u7ovP+5//O3f/m0ymfzCF77gcrmYfXnqqaeuXr36la98ZW5u7vHHHz9+/HhXV9ef/dmf/f3f/30ikfiVX/mVr3/96x/4wAdeNVNDOBGJbsoQNiqhmjxCzoOypUF0UZ0gpVrUlTZ3Za2I+2dTMHh9lCEsGgBRkXH5NdAxeYgpXcJIjojJFCGzQXZ5Wf9bi246ZqNILcXBSSaT+Xx+eHiY1YanPCFSrRxY0Yh58iLYXFtXBcsFp3gh5WxoaEilUsQvPguvRsWN27vECLFEQ0dha2sLy/Xp6elcLvfggw9y//v6+iYnJwmd+Xx+ZmYmHo+73e5wOAytpF6vB4NBVJXRt2ptbQWh7+7uvnnzZiaTQbOY0nV7e3tubg5d5re85S1Hjhz56le/Ojs7y5wz12Y7v0o0FK1edfyNZgKu6ExZk1DLapRkXxPXIiIo67EwsO6zYxBVv6DRK/Xy6cBy/dIOtmL/ehEliVrAEk1yhEUN9IioyTJQMau7QTbAUtdvgr5JCFQkBqVXsC6UyaqU1n5x8Dwtvi6Zf4vMWIdwSapabSJ9QCWMtuX6PwtYm5ubTz/99NDQ0G/8xm90d3f/7u/+7t69e8+fP3/69Gmfz4fh3fnz571ebygUOnToUENDw9ve9rYf/OAH73//+3nLer1+9epVokClUkGbBcRXPT6OLB456saqX3jS2pY8TjJ5CQBJ79jOW9rqjMUNE1rkOg2X25FGACx7YqtNTjORdwQpQNfUgb7b4sKSTm1DV+Jz/LNUKmUymeHhYRGFWYJoBPOJJM4lPyWNX+gYVKlIkCLucI5VKpV8Pk+SJZCCrnl7e3s0GgV16uvrc7vdhUJhcXGRq+WmHThw4Pr16+l0et++fXiURiKR2dlZ6qNCoeDz+crl8sbGRiKRqNVq0L6Yx6YPQGfN6/U++OCDgUDg4sWL+XweMj0u1khN/dzP/Vxvb++///u/T01NweqAWyvqo93kEgK3CZROdVKYer1eKBTIVcmRbYfR1u/CjOwjczS2HKW9DkWLy8h6jtHFUqmkhNSm/OKsWl84jY7ZDWzLJcAQibXvvjYLZluLOfs64qDaWWjJy3D3+CcQJHGfG0sEJJsj1bAcbOFZJG7iM8rURxTZ3VJ/lnD7vxp+vnLlitfr/eQnP/mNb3zj4x//+BNPPIFDBP8XO0YqFH6CLq3QxFqt9i//8i9QbNLpND7U7HYYtwoc4OiS4GDjYYdjfUzhB0qnmDawFTwUaGVdtjTfgy1wMBjUX1F1qzKnBS6tCM0f8JxgFfMR+Cc7QeCu4ojOmd2gu6jJwvinpqaOHDlihWjb2tqYBZGYrHhDoAY6e+1aFNZLJgiTgwiYz+dBxJQp8NFqtVp3d/fDDz+MeAAlG/ANC4s20+Dg4M2bN4PBYGdnZ71ej0ajWK7Li0EaT6hNIL+D6TSSWJlMpq+vr7W1FeLomTNnmCUC1gyFQu9+97vdbvcTTzxRLpeB4Wnq6ZS2Xiw6RSQmpXlj0mEsf5CLEcnOChhob1uWkMifDhEO22DZfRQpy1b/x+PxbG9vE5StVoddqJZSp+WnAWwr+uig1zh6oJYfYC/yVfk0Fk1XmSbMG9kSR8VnW4Eq3KSxARrLKAV1Jag090GMGclUWAktC0eyoaw172sJWDs7O9Fo9D3vec/IyMgHP/jBr33ta3giMbSMoRNnKccg7Sdp1zY0NPT29n7605/m+ze+8Y0AWGx19Q7kZ728vMz8MxGKjjJqyHwqShWKJkb5RUSiwNGDVG9VBxoBC2aNkmeQeDuwTrtNkhcOzSP1szkzaXFqfF/DEIIw9Ei0+ASXSOdra2trZmamVCpBy6YYFFRHi8q6N5Jk2edtj1bVFEyuLS4usi6RSLf2YrxOOBzGVObll1/O5XLhcBj+Oi9FPQXktLi4ePPmzaNHj7IEY7EYLc5cLpfP51G1xmYCjZqBgYHm5uazZ88y3AcMj27Xvn37enp6zp8/j2vW5ubmY489dvjw4X/6p3+6evUqpo207arVqhpYsh1htyDzIGBbJkyiuYJ7WhVNW15ZrX2Hz4hDdcMxKCoWu6UssTzgfLS0tNAKdxSPdqTUiuTpqmzdoP+lZ60DSX9iV7itRm1Qk1yEwzREYdHhMGjDq1QZrOgbf07Sqs9io6dOEcIZlSnsDTYsD07lOXklJyiv+dpNKJqamu67774LFy68//3vv379OjIgR44cefLJJz/84Q9ns9lbt279wR/8gcvlmp+fn5mZiUajTz311KOPPvqq78cFyRbQId7CgkYYm34t6RUrQNkyvGEpBwFXOc5MK7GgpYmrCqrKwu+Bk6QxAr6GYbd2rF5B0qaCD0BAmblTx1cmYPYpKs+XLqC8oOlL5nI5j8cj9gDTIfTO1cYC06G/pmJQXFabFHBzNLpMHVQoFOhSsTc6Ojqi0eiePXvm5+eZdGPEjFFNMHgupru7u1KpJBKJ2dnZhYWFeDxer9c9Hk8oFGLykWOsp6dndnYWXiize6ibk6aJfcZwb39/PwZcN2/ePHXq1OnTpz/zmc+cPXu2p6enUqlQ9eNYY6fbJIDHNoaFb2OQxQ00yu6wCLFxZ7cslGN23UJOFo+3/5cXYXOurKwAjdnJB4cQ2279EiurDYNHJxx1PXCtAHsHkKRhfl2MADshs7KSd4ziW18chTBhUnYASCCdxNd/HO2T43BtbQ0ekh3KIVp5PB6v1+v1eoH5JAkHmvHareobGxt/7/d+72Mf+9g73vGOnZ2d3/zN3+zs7Hzzm9/83e9+993vfne9Xv/lX/5lysPHH3/88ccfb25u7uvre9e73vXj8jWYPurXqGXGfnO73XgCszPxqgOf1og5hE81YokgFnK2PVSrRcUYEPwXSegS43WK0hKSK4mwBt4OP1c0v+WPRK9HLZvdJ7l1Y9YTFfhCebu2tjYzMzM2NibLFoIjopccR6urq0Q0x6K3armaLOGzA2NpuBJxmEQiEQgE/H4/MoqoXHR2dkYiEaonhw8NiCnfRCKRZDLJ+OHa2lo4HM5kMgxFcoqSD4bD4ZWVlZmZGZT/pqam1BfmrML8Zu/evS6X6+GHHz58+PCXv/zl8+fPw4kB/lhZWWFcVJW+umAoQ+zmT+8WFHcUcQ7HEEc/xKEG5SBk2+LRAbezx6R7Y2lKuxXTHXiTvR42CJgXNwo4DI4xq4KQJI1/XZhaB3bYWKyXlpYWLKwtCKh+BQkRhDhgHNGANFzh0HGXKrxVmFFa54hfkpThn/V6HR85MX6ZjiClwA3rtWNY4+Pjn/vc52ZmZtAOR5/kU5/61OTkZEdHx/j4OL/2a7/2a4888ki9Xh8dHf0JZtOOE8AuFNTcdaOpZWRaKVaLPBobfmTbTdLkUFZwgKDcTYILE1s9PT0OlQWm23hUVktL7Afu+9LSEjO9OhghSdCQdhhE7542ENTKEie5297enp+fx4QKuB2OaLVaXVpaggEgXard0Jg9IZXAs1AwTWKVMD8wPj7e0tKSTqdhqAvCb2lpiUQi6XSaHJYyH7sNZoDQj69Wq/l8vq+vb2lpCde8xcVFmLQwIZA8xcjP5XINDw83NDTMzc1BKOGggryCDaIMx9gwknOzsjOyb5GcgHQsdgPPDuTF3v/dkq3WZEGHwY8LfJZFrM2m9pQVArR/q+LO0YqxZ5j9fSbhGaQF7mRKSfmaVoKsgnmOilyKLGKHkde0tbWh621PTYuINzY2MmHChoKbXS6XK5WKxPuVQylmWVEty45k/VsOtjTClObTs15cXCwWi3oQxWLxf2XzRUPQ/qSrqwuQ2H5NTEz8d+Rl1JJw9E0ErpNNsNw56iW5SZqgqQWHpI6lZamP4xCiYqBM/tpWcQHQRJ6GFiYQ35LlojJN614Dd8rdrIysYxhdnWZmldkPCwsL+Xx+3759MNch1jINA6xG+WMHIyxzwhG/9KnplLW2tsZiscOHD3u93nw+D7lEoz9SvmdShxKPK5QOKkt/c3MzEokw+sv1I+GCSrrX62VMvVwu+3y+3t7earW6uLiYSCR8Pt/58+cRriLuQ6k/cOBAqVRKpVLj4+NQsTRGw8ErmNaWcg4vNZvMvirpcbc0nWPk0yqxWCFGnWfafprm0eyBQ3vAGnDpr6xZ/G6ymC27VN+R+8PGkAuRPQt5KPxcN0F8AkV2OTNtb28nEomenp6FhQVSLdumVP+nVCq53W6AY9ZbOBzu6uqCXQyrRvYWjnJB3jmyrrCrS9cv3XqN+mqG0Y4Z3ROjOdq6EnjUmtD8MwELQpZQQyhzVG2ildoMyDFKrpFOiyOCstMak7EYiTTdd1AVTcOK0aqJXOnMaD+zSshllAJYZyQxEng80Wg0FotxdtEH5CmWy+WFhYXR0VFJi4DN0/iHE8/pxHVK+pkTUqp+tlsEA/Z1r3tdX19fT09PKpU6d+5cpVKJxWLogktvhBdhdAGLdiZIkBgTTwcaRGNjY7FYDIVCeF7EYrGpqSmm/FpaWkql0s2bNw8fPnzw4EF49nfu3PH5fI899tjzzz+fyWQ47RsaGh544IGdnZ3p6WnIE5BX6aKK6WLRcTUK9U8dSNb9zAq8OMo6BxXAIQ3k6JM4kiz7Ispl+HM9Czs350DclfsIbLVIsY5e/inZe3oOYK92tJAFAAUHeX6dr3ovjfVxw/kTYI1sNkuqZfNNyYHgydjd3c2IK1MTPp9vfX0dygsCIQ57ROt2Ic83xHnQStYDVWNB+91ySu8tPSyJW1tiN1sUKgOxlg1DUCCssFipPngkHC/WccBRD0riTvcIGgRSZ+q46dSik0XctJw9RSUiCO123loT/9IatuMLtjnFR+7t7R0cHOQagCS1iDc2NtLpNJk/ZEse/Pr6OtkQr0adqC6PxVOsm4AoJvF4HJPqH/7wh9lsljS2VCp5PB6LImvF04qu1WoAiPIl4qMxphuJRFC8I8uIxWJgYXRvNzc3c7lcvV4PhUJutzsYDG5sbBQKhWq1euLEiUuXLqVSqcbGxlOnTgUCASZv0MNpbW3N5XKlUonc2YqC2V74bncPh1qmAzvfHa0sL8mmbLtLAZu/K7g7BhscEL4lstoEzbINdOusTJVWr5IOvhAmYSSLlSNEnJwIsNIOmZLFE4MUWVhXJF8DAwM+ny+VSjGFKtlSiToApdGtho3V3d2NDRL9Yvoh1lxHHwpZN45zEhQYxbwsw/aMyqLBKTYWW/UeMqGAhK2mvvUUoO/D51xaWlpdXcUiCZUoxuVRkrSNFQUIRyput6KNZQxkAL0DdUsbCKtEdoiivtrb8p4iy6APCAIlZlBTUxMtArqQ6rlo2iYSiUQiEdZcQ0NDLpcTH4JfSyaT0DjIzqiCEbqUV6AdwSdwqyWqjcQPqSNWVlZQfSHokzbCIw0EAhp8U0nS0tISCAT4CMBnACgCgEnEqKzhDfT29iYSicnJSQ58OnSrq6t79+4lhIEnwMY6cuQIVLgTJ06kUqnp6Wm320114/f7aXuXy2UkDazKlSWg27F+27Cz0KFD+MU2Jay/3o9jYFqCu6ZkrFCUQoyesjhcrDSdlMoNybtF9bZQl60VxC9jpxB3urq6CC7M5dgVroFwycNp2dN+EVFWwMv29nYgEPB4PLlcLpVK2XYqS0LFBCUImpcoQXEI3b17t1AoFAoFsi271OHQKNzXarXr16+jGZlIJI4ePYohE6QlRllI6jmk/zv6yP+n8jK24tUUi8iiCGZJtBeUfWtrCyswbFesSoY1OrVAuFabygQFLMmDKIuWtyt70iKFJPzw48nSa7UafxiNRoHYiCCgUZCn+DXqKThi4XA4FouRvjE/mMvlLFJLn6FYLCLJAlYqGTk5NZDhM7ehYsRaA8AdgSBG9k7wgtKJNjwaJn6/306KqcKi+1Gr1XAnbWtrY1HKUAt1UGzEuIZQKJTJZGR3ju4+hqNutxvlUpQnFhYW/H7/29/+9nQ6/eyzz2LOLo18tig8JuBCySSoXeVwsrOdOEfH0DKwHGzP3eyq3SKLu4WZdqdXDvqoBT13O8roaBEqt9sIXjISmr0HKwwEAhzYGxsbCGCwUDVADrbLYazahbyeQR9hcDqPW1tb+/v7e3p6kskkIyU2Ljs+OCFGx1hvb6/X641Go5lMhmUmKrItt9Wj3N7eRvnD5XINDAyMj4/7fL5gMCiaCCxxPI2mpqbuFU134U16omq4cB/l4isuOC0MOWtRsasR5ph0tb1nm/ZrYIJ6vqurC3KKCE31eh0ykWA/2ENCuPk5/gWSx5qenubcs/WFtCg01Or3+0OhEFlkc3NzJpO5c+eO+PqaO7l7924ulxsbGwOVh9uF+Bc6XLypLHxJ9MRulRqP3Gu6u7uJel6vt1QqoXHKi5dKJaBxBXQdqjBOIdmvrKxww0UsItWnlSm2BHKvYpwAvQF4dXR0xONx2PDr6+uRSGRiYmLv3r3//M///MMf/vDEiRMUC1wVrFqxipRpOjQq7WT77iFza8Nnn37Dj/GOtBIFKrhsnsWfa6LewT9yDLrrn45mnAOG05qxUgeKa+qKss6B9umGY5aDUSsdDLmu0kC34g3Wwl4u5eID8Y6kWplMZm5uThYVVjpZpHzdh7t372JGFwgE9u/fX6vV5ufnFxcXNf+kMplHRppGrrC6uvryyy9fv36dsBWPx7n5jIjRyr9y5cp/KTLzf2ekqhPJys5ThDc2NpZKJfJeWRarDkK3X81UjUSJxavGjY1TDlKvxmuESrKwKEPgWIs5ReB3fASwQzJkHGIsK0enOvW5x+OJxWLsSV55amoqmUyi/2m1GbktJCZ4HQsa0yeSnQ/XDPwP/559DhtW/iiEZpif+XwepxbGCba3t3O5XCAQUGUEYUJOsSRWq6ur2hIiu6k7ub6+Dp6KkDwpFa/D8kWChsKQuaj19fVjx46hsNzd3f3SSy+trKzs27cPPx4Kdl6KAIGEAzkm8ctWfLslXn9c788hbumYPd490eL4X476cTcJ/lWzPCuApwJQAIL10bCVoEOJRQkLPgZk0LRiAoGAz+eTHAL1JvwVNRC5chAi7qHERYVwNzc3DwwMBAKB2dnZXC5nyw62D35RNqms1+u5XK5YLPp8PuaIV1dX0+l0NputVqvsWdXOanHSwKEumZycvHXrViQSGR8fHx4elgiKLdt/+hiWTReFLLpcru7ublIe2O2wfqQ9wImhUQC2pV1PGrCwOmcqCYXUyN2A44vkhe8XFhYg0FtzR9vs48oB1DSZGAwGKVQlSqtF39HRQWIFdE0mkk6n0+k0bHLHdAjJBWxJSZ2AegI/0/fEwxEADl4opRZRwzZrlGlCqpJpFXyR5ubmXC43NDQkUfzNzU2SKdZNV1fX8vIyAsqqPrgqyhBp0XC20wzirhK/OGBkure6utrb28tATzabjUQio6OjyWTyzp07m5ubBw8e9Pl8uVyOtpfL5ZKKhqz0VG3tLtkctEbbhXBkQ7bft3s6XSmPnZ7bTc76caPRDu1NHdIak7BEU80VWEyDx2GRTf4cEq8QVaAr1DsikQiDn3I/U8eEM96+AAAgAElEQVSGhadoyyPjTW1NwEf2+/1+v//27dtzc3Oa/bCpFlWkw1ke8SLGHkZHR/v6+lKpFHC+HpaDFk/PCg7A4uLi008/3dPTMzExQZ14b2FYVlKSO0LRxO3g6CAzFKYoO0ypLFgZfLsoCVgA59JRsStJeZmchUTgLJVK1C88ZnUr1CGG07SyssKQBC8IPxhysFIA4gIydWBzDQ0N8/PzqVRKvjgApTb1IwICTgcCAUokeAPkcTQKxTluamoKBAKYwQBUqZUhJQP+SWjr6ekBvOcQRlSzWCwmEgmrkKUFSlCmvLXTlAQstgRj0kq18OBitgbt4+HhYWoZn89XKpUikcj/a+/cg+Msz7O/ss7H1Wq1klZn2ZZs+UiwwUAAY+PBOJTigEMyeAyU4TCE0DRtmnQy/YM2ncm06XQSWqaUQyA9JUyhDYbQEA5uABtjfMSWD9iyDpa02l2tdiWtzpL1/fEbrrl5VqYk35cg+PT+wRhZ3sP7Ps/93Pd1X/d1BQIBOgDM94yOjvb19Z0+fXp8fHz16tVFRUU0ztWUlBsosqu2E29jjWNk6yjEOr9mI5fNbhzVUHsipjLXU6dSHJqYo9gp2Nu+uG3/k7NLRFTDyfJ24tkp5EHWpWyvrKwsKSmRST2VgXIo6gnhZQCCmk61QoOZmZnNzc3BYPD06dO9vb1qYcueyt4cfp/7hl52fn5+ZWXl5z73uZUrVx47diwUCkGad+6kyBNZWVmlpaWBQCAWi+3evfvIkSPUiZYA8cnzsGyTRQxybu7IyAjLVPIagM3Z2dnxeFwOAgA6jHfoMATrpXiR6oWOIwsrUHtKAmlmZgauo8/noxTlh2Au6ifKIA8sQOIEECCxF4WPSpLs9XqB4SKRSHt7Oy1IKiPCh52T4HRlagztJw0t0uvBRJf/TSaTfr8frdfe3l6ZodljQIi15wPPXuADAihKBlSF1dXVjhqPdj6K5mrsClVVTTE4OJiRkeHz+WgsFBUVMT+EGxCxkq5oVlYWU4TM6wQCgdHR0YqKimQyWVRUFI/Hz50719bWdskll3i9XvGqBUpS81J9z1r6Wd6TlRmwQ3DO7zjECJt2pXp5Oj7J1rjUkcmeVV9BObtVI7BEU1AR5HzVxpEGTlpaGiwTy4FQ3tTb20u2hZaGqgTZ6DERJVdadoGKDysUwYIhiHR2dp48eRKIll8gNeM4tyP9MkhPJpPvv/9+d3d3TU1NU1NTfX19d3c3nURbYwrbmpqa6u/vz87ODgaDCxcujEajJ06cOH78eCwW+1/HCX93PCy7VkZHR30+Hy2PiYkJazXMnZWia39//9jYGOUPJFKxMbUgVD7YcVBEHYhoMkcADAJGQZ+LHIHQQ3QAbxZfmR1LRq11IxY7ZWZRURFmP+RK8XicmSnYVerpiF0hZcj09HQCGfwjVW08VDgE2PYxv5KZmRmJRIjR0ooUiGurJN6L5mAkEoFNRqGXk5ODSjrYvMoWPSmUZPjKKgbBR3V6I+TA9B/gIGzVWCwWi8V6enqamppIJerq6nDDHR0dLSsrIxw3NTVFIhEe+unTp48dO4YbzdTUFFPlaJDqmLFsdWdd2XLPNhNTC7dZmVkXmky25BvbR3NMX1IngWf9hFLjtJwGgBGxwyU3Ih4yzEF+k26gOhKCw3p6epLJZHV1NamWals12QmLAiJ4UsqhrOc2S27ZsmXV1dWHDx/u7OwU6K4dpEERm/DyyaemplpbW5FabWhoqKmpoSfOoK7jU8/V19eH9Qme5LKJmxMloYpnPN/BPsBW6X2A3YiwC+CnNpkocI4eiLJulVpWW1JpsFAwYYdTU1ORSIT6TmF0aGiIGR0+CfQ5oUi8kabwWDcI/iJqGo/Hafdyygn3FWMFVjdMDulPAcwBdVMdMFQBy1QmQ/QlhK1q7XqMv1tqXkCbXL4JRK5IJBIOhwEQNdlPdMblEOh9bGxMotJi25PkhkIhEviJiYn8/HwmZukYJpPJjo6Ouro6TLyrq6tlrUoiRlkKn7akpITZ7FAoxBD/6OhocXEx5wfpXn5+PtvPrnWbSVl8XZHFMRlR1HPumBWJtewqSxa16Zvnw0Z7ToBzBpvtH5Sl2qlPHignkEWdBYxAhWM9WChdsQ8a+vDwcHl5eU1NDX0bfX24x+RZcFBF5RPyZUtaAPLCwsKrr7767NmzLS0t8XjcCnU5PVnLNYOTRAepv78f9kNFRQUg/cjIiGR+Ldt2fHy8o6MjLy+vpqamq6trDgUsfTcESchNgGlgonP7bAoDbGQRREceV7O+6CZbgrKIcw6vgmoUVU8ALJAyCRvBg5e/EwtaE7nqvEhxkLCLXUJ/f7+G4Ozkh0ZSgW8EnEsdjAMqmUwicQNUX1BQUFlZCVjGBA9vp7TIshDtcLXIHHKllR8tJE/mvWHD8x1ZuORfY2Njubm5EE2A0jzGy5epCxRBYcnxRUgP/X4/HUm+1NjYWCKR2LVrV29v76pVq9DMoKinzRIMBvPz89966y3Uk6UWzQuivkSeJZZjakZjyz1n+MHJnlJxdzsnYJUYnCTCaXCn9rNsLWn5X84vq1rXuau2tZjudjaQVc1jEvtE0UpTOBztQ0NDNTU15eXl4jZ6PjAPF1GLfadOFFwtjfLwsjT1mpqaampqDh48eObMGZWTVo9Q8UuLUCvw/PnzsKtwD6ioqIhGo/hms82tpDiBOBQKcUTNlZKQR4i4F7UAgYBOE5uQEkPa5xQIAwMDmkPU8eIxNtn8ldySdcJILV4jYBKGR3aDiomII20/cB8ph2guVwGLt0N1ABsh3Bx0XjlrVD4i6gZwjilmycUA0xQyOxZQdnY2LgwEILAhkTkszcdOihB8ieNTU1NoDUpSgpeNRCLxeLyiogL+BMc4FTFZGP7pw8PDIgfB+ZIy9djYGFPKIH3IdUmKB+QOxvOZM2disRi+8+yNqqqqgoKCUCg0NTW1evXq7OzsAwcOQPsgvC5YsMDr9aLcYk0QxFZJzSVtAZjqDOLEDltLOpHLCYt2pNHSKZyo5GBhzsq30UpseG141QdWJ96uYeZvlFiRMcn5SchvPB5Hn6eyslJ2KpK7kNKDI2cidi6wMq9MFCsqKrrmmmuqqqoOHz7c39+vr68KV5JnAiJssxU30r6+Pp/PV1pait0ZYUvdbaseMYe6hMrPCfOyQmAAhROeZyNHMwv3ChB1WoTKnIlEUBkJPWS89sHreOQ1sZ9j4gEQXf9QPFUtBZB4yVoTy0KhEHEqdRbEkq0FeGluVnCbxFdJ64DVCgoK+Ku0tDTmeDC1p1wigCqSWiTCCnpoIIOAReDTNCxe8LFYjOkZIg7tdkHLnMmAaNYxgeCr2UZyZL5IMpkklPf39wNyEQQ5b86ePZuWltbY2Mj3CgQCtbW1nZ2dPT09DQ0NBQUFLS0tp06dIuOORCKopBUWFhJt+foOMdKRZ0iFqDRBlSpKZWFQzT/MKgrkCPvZQ0ITyxbZuVCIFAddJ64wCkVAKxkqLyhcdiQVre6t4wc+MzODHllPT09tbW1TUxOAqeIjYYI1nJubq2oA3oMOeGU9SKStWrUKD4eTJ0/q7LfpJCke1Adb2CLDCVQSi8V8Pl8wGKysrOzp6enr64Nrqng3h6zqbT3I8SLUAyyDfj+ScnTx1d+FVy3kyBoH2GhIzix+NpUdBCsWh4ZLiIkMxChDVg1vCz1aMH6/X+ox1v5gYGCAYR17YtttYE9p2UzYJw0ypSlfoDeQI2mwKX/WLFg8HmcKj0BARLCqO6KSqYnDeiXGcQzwE/wpfD6fjBG5UbJZBzhTNLesIm0AaaJy57GzjsfjAwMDgUAgPT09Go3KS62zszM9PX3RokX4QgcCgbq6ut27dycSiezs7IqKCjhrJFagbJC8gJ+lyZPag/7o2UBHQdROy6d2hBxWqkMMdpImG7ycv5q1DmXxsJyU3cxKsVbHE9xQZYc6fSIoOFq7dLEGBgbi8XhTU1MwGLRTXNBEQE7l9Sk9NeuHKiJ0JBIpKSm59tprGxoa9u3bFwqF1H+XgqAqWZG2BDKy2eFhnDhxAgUIn8/HkYmJyf9KefsEMiwlFOwEKOyTk5PFxcXEckg6ArxJOtQ6ga+kkGE1kWE5kYISAtjnoEJer1f0YnlGxGIx/EHJPuS+peEGjh06L8DhYmOw/WTw44iFz2pekDqoBY2Dk1P9AQYpyF9gfvHsqQSJ5ujnEVaA3m0GIZlm9SVlN0sMEklShCyYBwQprWA+GO0IzG80pqPBNPrZPD7tbWaeE4nEuXPn6urq4LuDu9N8PHv2bEZGxsKFC9m3CD+RvS5ZsgQ1EqqPsbGxwcFBvF2Z3LZhwibaqdwFqzOTGs4ccpCj+uAwEpyZBKcOVT4ya+i0C0MUQnXcrCCEQ8hQSstxRQ2oA1uwl6h5Vq6DRzkzM9PW1haLxRYvXtzQ0CCrcxJzQEYqBsv1cQZISCYYYCgsLGxqaqqsrDxw4MCxY8foQdmJSHWl7OMAhkMQmbBFJEV7y+/3d3V1dXR0gDzMFbUGNXGlkkwDmxk0EOVkMrl48WJWP10qAj8HrNAfoYMWm+cnQsTJKdDqTCaThCFSX3VY29vbJyYmysvLhaZJr0YnVUZGBjIMjEBLsVdmLalHcaoyr9WBsauf+CvuDExUxu6hAlOg8V3As4ks0WiU9NvOf6jOFQLiaN3ADrMNLxQdBgcHS0tL0QKTIDcfIJlMwj63lnycHGJ1Dg4O+nw+8RVlVlpZWUlPE3ZCTU0NLFNOo9bW1szMzJqaGsYYgsGgnM0aGhr4DOwfynyON6kgXMi9ZlbhUAcX98zm3DVroHHoDrNS5x3Zv1QdUcvMku52KrDr+bCXjP450YQlJ/EsNZTUCrTiJeIr8JojIyMnT56MRCILFy6sqKjQBuSs5URU6JQftYNyKMbh+71hw4b6+vq33347FArp66uH69gJy4aetya5o5jo6upCy6GyshJ7AQx050pJmPnBBWpD1kp3f2hoCMI0OMvExERxcTEyVSUlJVRS6hUyYGzFz8g1iEq2JceRLj0gcY4ZeFZFRrBLldklQ9GcneZXZSPsOKnZQXwHaNPBKMiJ6CN+PFQmlBVwftUUNKKjkjeh0QYUpSVl94yNrbJcpbYSL0wLCz0GSmPMBCkoRIIvLCyE0SqJOCuyrkADTq8Vn5+fT18VdCwQCHi93nA4TF0zMTGBW2pNTQ0Dj5WVleFwOB6PB4NBinFyBFJacH2+i/U9nnVxW0TPgUUcOrsejSjHTjyyCFFqmpaa4lkQzXrw6E1To5IAICs5aUcaidR6mqrCHPKn58NS9JZLwexBLBarqqpqaGioqKhQLixUC+4OB48OQr67Jr3YfdFotKCgoLa21u/379u3DwVHKbJYEFDBVCtfu4azMz09HVClrq5uxYoV6enpx44dmysBi/1JNUvoSSaT5JkcthgZFBYWqr9LJQI7HLEBW9HobCTAcX9Z1po2AK8FNrZtEaQXSHAopij0dJ6oX8laYQRXBxEHhQQSU42CHbske/QJLyNDpjpGuRAIHIFHyTDwwWAM86XI7dlOqnOtHZMjIgiKJ64s3QzV2vAG+vr6KDkJCgxIEpVgOQD2a76aWACZgztJ25uHi51aeXm5x9jBIdHLrxE6Ozs7FyxYUFNTA0xZWVnJ4wsGg1dfffXevXuBeAOBwOTkZG9vr6JhqmBhKhd01ia180Q8xi7QRhz7tw7sNes7zuryrXaQrUDtuaKX5Qx2SBXCpETpFIfZFoPKa5zvpWRHhFsS22g02tDQ0NDQ4PP5OHJY9oLJWI3gXKmiOtyfZDI5Njbm9Xo3bty4ePHiY8eOdXR02MJWQBvNLs0hSgiAL5ufnx8MBicnJ9va2rC8nEOguzBgQBaqYmyHg8FgVlYWogKlpaXAFsQgVJlwEtYILoeA4oU9MCUJTyCAVs6kKBA1zwD9Uuovq3dqHXE5mlhYFCbKxdjzJCPs7QsNymrnWGV3YiJyaPn5+UTPWCyGx59cUtSLlF8AcZ/mDquNdWYhJEVVtZ91f7xeb29vryVGQithSgaES/A5sQmyuzroAG0cGOSn5KoELPlNsSjpDIyPj1dWVhJnCZfSnh0aGmpvb1+wYEF1dTUbo6KiAuWfYDC4fv369PT0PXv2YHqonoBNjlLzrNR6bdbky6kBHXllG8ucd3EYpJZn5wg/OJoNnhQbHqVjs5LpHQEvTlAZyjl9ullpNJ7ZnLiSyeSJEyfC4fCiRYsaGxtRW5JQso49toNtUzgvTqqFglB1dfWpU6cOHjxIusRLMdymhECCbnJOhWtN242fMIE4V3hYdM0l3owe5vj4eHFxMcVCMplcs2YN825sQpILOAdUJZ4PHJIlhKZeL/e0v79ffC4I5SUlJSjBg+aStfb19QmKAkWyZ4JOCbngsaudli1JIu8iA3oFAiun44zU5uTkVFVVNTc3U+tJrFnOl3xUZvGYRoK0oQxIE6TnP3xZ8xLrxEdGI8o+j4AILllX3pHABIBozQUsaUghmFOhr6+vsrLS7u3c3FyKfQYSOXuYtY7H40VFRbIFGR0d7ezsTEtLA7pKJBKlpaXQO/Lz8zdu3JidnX306FGNnUsFzDpTOKKds84nW8E8G4NscqTcxEpBOIdQKpDvZExOviOinM2tUi0zHFKY0lvLoXE6PI7xihPH7VJ0GPxMLCcSiY6OjqVLl6LcreoPdAXgUo1IpxfBdqaDPzk5WVJSsnbt2tra2v379585c8bSymS0Yb07Z2ZmGPLv6+uzUJ2dD/uIa8HvJr2SIgLN7/7+/sHBwcWLF1dVVUWj0XA4XFlZWVpaClwFzASDUZpZHqN1KzEGySVLUIUHSapFyJMyMpEOexjZUjqnh1h2yhQgCovnRg5Ch0WcUgZHVKs7fSXrnVNcXLxixYrVq1dTajnHPu+LgrPyMqA0Nq2knDVrYl0RnQ0mFhKZKZ0am0jSBkkkEuQvJFOiUwjLJ2g6A300mDCL5klR0LGOue3oZLF8GxoaANcZ0eCO0Qrs7e2NRCI89P7+fn3goqKijRs3/t7v/Z7f77fS406a4/AVbI2cql1lERbH6t2x6ppVOsZpRM5qFu8A6vokDgvfWR76tMQpGlOk/+Ty9mvyO6JlOXWo1cgUbGTJKFQPvb29+/bte/PNNzs6Oizep8VP91xViEO4Fc2iv78/FAoVFxdv2LDhyiuvxENTMpy8l7r25Fmjo6NMbstnzGMsOeZEhsWAHo7eaWlpgCbMEDCPXltbOzExwRwGGYrulEhuOkUt3U6PX5qwelPOJdSmEFeZnJwkC2NcGXV9iY1Zkhe0cn6ChgydTYUSVhVLViwthwqoIMuqqqioWLhwYUlJCZOG1oBHvWSlhwKV4B+jbAdFw2IrEAIcbpFj2cC7c2aQ+9hjnOmZYDBI1gYphP/qK9ASBUfXcT09PT0wMED6RsfaCj9JsjkQCIyMjFRUVGzevPnZZ5+loa7GIphXZ2enx+OpqqoCPWGRkEytXLmSkhNIy6GbXwi0Si0MZ20sWjfQVO2aWcUCPyLVcogsumy+piCi9SZlSoBRsio7fKORNfviFnGb1aXRaXlb4R0xIcbGxtra2qLRaH19fWNjY1lZmSo+0ihSLQ1j60jWW0vUNBQKFRYWrl69OhgMHj58mMl/dT941hkZGdQNPT098j1RnHW08D/hDIsRXJ5EMpmErV9UVESZ1tDQgJuLRqU8Hxj5iXWtSj515MJO+RI72OcSM9NENMRLOTXgOM9goxB3Ni0TPIBuAwMDaMtoyprzTcwG2fBYsNZyWwoKChobG1esWJGXl9fV1QUjXIK5lKUkI6xLJSDyE+WHYEPKrfhqGvGzRo1CvmyTm7FE24HmkMQKhW9hu1F6ZREdldDhZjg0NKSpABYo30tTIww58UWam5uvvPLKoqIiziECPQfM4OBgR0dHd3c3rLd4PK6wODo6Wl1dfc8991x++eWWeuJIx8yKVc06FZhqs5rKm/Ok2EGnKiyn1oNWusBmQIQhTjhWHctPtF7LT+QP0rOnTcFJKeU1K6mse+IYMs+K1qlfZO1gksnkqVOn3nrrrQMHDkSjUVlSkgsrjFKUKIxaiICtPTg4SNgi1SotLeVcZ3lzCubl5cXjcXYizRyFY2sE+8lnWNR0oG5IRAUCgZycnJ6entzc3JKSEtIfgBVLWhEJQLidlo7DKiC6EVlwcFB8JFlAyInBTt19KfnB0OUEYAwY0Gd8fBwETViJkiZ5MZD38jUdPAVDytraWgb6Ojo6pqen6+vrLVVKos8SolR2A5zHLzN3SSDm7SQVYntDKvrsriPyol2joKMahJEgoHcpKPGptJIUZRTOiouLCwoKTp8+nZWV1dzcrIlWanA6m/qOHKFLly4dHh4+dOgQL07aS3o7ODjY3t6elZVVU1ND5Y7wPKsiGAzeddddjEmL8eAEmlmZVo42qbq0qYMgTuFmtUz1dg7lalYlLOnGCClPXTmOHalCsDSnVLjxv9ai2al5He0KR5rdKZPtcWVV6qampvr6+gYHB7HIrK6uLiws1Myg6juhcnrW9oZzVvX19WVmZqIPfvz48XPnzolaVFBQgFkOT18kxI8gqXzcgDUzM/PjH/84Go3yOerq6rZu3drX1/df//VfU1NTN954I6y/iYmJF198sbOz85JLLvn85z//ERkWn4b9DJuhrKwMKnNDQwOUEJpueXl5RFxinIKRNP9Sxyl4C7iUUryDY0IOQkYDtx42PA17OGxkyAUFBYqGGhDlU1nNXyvhJoMfZX+ag+FZ5ufn19TUlJWVYRsTCoUSiURNTY2kCp08H4haTH1hBwwJEK2knqwzk3IV9EEtS9FedBTTuOHfan5AwxwavdSUohXztrMd9qBGB6a7u7uxsREQipMWU2gJ12ifTExMNDU19fT0hMNhpnM5bBHhGh4ebm9vZ0YHnJE2Ft86Ozt769ataWlpu3fvxsjD1t2pqNNH6LI508uOK70zmznrcLXDq7C0UqKVCC6WySnkMZUEoEDm+cBvnIfCqraZsnUmF2VUh5bjbeGAejqlRAa22ShDf++99153d3dDQwMT1HZkwoEFRZ23nSWv1zs2NhYKhUpKStatWxcMBltaWmKxGBAHRGJ7T2YdMv9NSsJgMFhfX79o0aLXX3/9pZdeisfjDz74IGT/e+65p6enx+PxPPTQQ88880xOTs53vvOdnTt3fsQq4eBFS3dsbAzbu3A4nJubW1VVJUVEPn0ymZR8u0YFPcZq0bLG9SSkEaqJXAARuOyA3PF4XIiMNR/EEcROmQNyw0mBLi+qp+pWCS3o1fgKAGfV1dVNTU1lZWXT09Pnzp1rbW3t7+/n81isR+pairZ8O7ItCd1CfOdziqTDCYyegRg6lsWnLJV0Eh8dT4pznyo4ZrztU5MgnCTl9K/gzaFoCjLF5+fbkZbCSBDaSpWxadOm4uLi3t5eZp6gufFGQ0NDx48fhwONP4gSYUra22677Utf+pLX67X8JtsmS+30pxaA8gHSP1Re7/DmPB+2g3eMEVMVZpTYyqtJ6ZJ2qYUL1I+miSEegGouUW3th7dK4rYgtcKe4t8JF1PhoiPEGZyWZEhHR8fbb7/91ltvtba2AlBq8kaZoGoUe3940OXl5dXV1fF4fHBwcMmSJTfffPMVV1zh8Xj6+/vVN+T3WR4sgP8rI9W0tLTNmzcTIx577LHt27cfOXKkr6/vX/7lXzIzM2+55ZZXXnlly5Ytu3bt+vd///eGhobMzMwf//jHN95446yHG3eNeUssy0tKSrCBbWpqkj4fyYUgOnJRjYPaiQFns6mQ1naSUaBOp/HxcVgIYqhbSJLHrPFgyUWgmUUSS62kalQBy5KweHefz1deXo5WwfDwcCQSQU/DEtxtscx3BzUTLV50B4JFXl5eLBaDpYkujdY0C4Vaz1L2tRxBJbKysqAL8C1sXZCenh6JRMBQSMSk0+RkH2IhwuTAt5mTGdg+kUgw2cOsMhPmkODB8k6dOrVo0aLLL7/85ZdfZt7A5/Mx9QkQOzIycvr0aejERD3cZGUmtGnTJq/X+9Of/rS3t9em2w479COyLYU5p0PicA5SpZBTSVgOH0LRROtEb5Fqai/Sk5B4WSKpXS5DZgdQlweXDZRWZUg/tCmVI5Fs7XgdzUKeQldX1+LFi5ubm2tqamBHilymo1QrkNehv88YUFdXV1tbW0VFxapVq4qKig4cOBCJRBzaDWcVuPDHCVj/C+i+a9eu0dHRdevWHTx4sK6ujkynubm5ra3t3LlzPp8vEAh4PJ5LLrkkHA5bibVIJPK1r33t5ptv3rZt27Fjx+ipUwPiB4mBMHp18IAEY0lSDu6GzlIRqSQ7ZbvXGvHj5wjdAVqRsOC3DMRQUFCA3qa6GCL76KGyGjAvcsjH0kKzfHc2ZF1d3ZIlS4LBIJpTLS0tAJm8sigaGlxgHdhDRl9WWmjMrzBUSO+S2R3NiwrRlB68lW1QPk/lRZPOGQRBJYLD3Lr7WFd3OwtCWsogUUZGRm9vLxGZHHNkZIRBUZxlgfOREp2cnOzq6qqoqNi0aVMgEKBXK7ENIu/Y2BhuCDhcyZxCwNC6devuu+++qqqqVBGrX7cdZIF5i1s5UzVOBzB1VtRpFNocWX9rG22zvgXSkkDRnLVaDNLMcASXbLgk97F1pdg2cgPjv8REW5TZkKcPOTw83NLS8vLLL+/atSscDvMZbAqp8WmPEZVGqj8nJwduant7eyQSqaur27x5c3Nzs+Q9dOsEB6Umrb826P7MM89s2rSJg9cajTjO3WrN6h8WFxd/9atfpctw7733spESicT4+Dhg6tDQUHl5uaoqnhDUAUYL6QyKGgu8YruqzkiEHe9ypDkWLFhAsaP0mNeXOxv1CB9S3X02XiwWE7FeYsfCsARkZGRk+P3+mpoa3L3QSo5Go3ARtPMVP1cAACAASURBVC6Li4tJqTzGjICqUxbTVioArI2aC8SHp4ufO81NYCxKWsoKm0CphuU+AwwhCmhhLNgx4FAilPD45EtEuaqXJcT4/f5QKET2ikyNmrncYTYh4ZgxSe7q0qVLp6en9+/frxQD+UAOm9HR0VOnTmVnZ5eWlnLkaLgdRs/y5cvvuuuu//zP/zx58uSssnlin6R6qTrfPVV7T4FGQT+VS2XJECIi2AJNv0/nxB5sNq/R67BpKavJy/CSYI0xh2BBT9sltB9SXEKrfGsDsV5HEJiF86zCMo+SIqO9vX3p0qWLFi0qLi4WM0b5nVWvBNXp6uoqLy+vr6/Py8sLhUIDAwNer/eyyy5bvHjx7t27kS2y9VMq+/fXDljhcPjo0aPf+ta3PB4P89n8/Ny5c2vWrCkrKxsYGEC0s7W1FZcEC5MvW7aMP2M2R+sHKJpljVsMLBtcJ6jLFO85FnR6XEg3R5wdmTZzu+Hj0opCro/yhHik1obKfgtzcI6Njo729/enKngQBEkN6GCWlpZWVVUhttnd3R0Oh1lwdnvk5eXB8ya3YjOTg/CbUogWVQLgj0EWIB5+Dl2AmMKdIb3V6Zo6biKpEGZ0nDQBcX3RagApiA6EEqF7gmko7fPy8k6dOkXFjUaoaBkEdBrkdDmzs7OLi4tJtHt7exsaGlAZ5X5qyBmdjOnp6ZaWluXLl/v9/lgshtkt25u9vXLlyuLi4v/4j/84cOCA7WCk0kRTRRdmpWXZPIh7YoOaAIdU7WMwI6XDSktt/mWjjIy5bCEGvKsFzCsLc7Q1oDMg7UQcp7fg8DNsyaJPaLmm+vC0wuxxcvTo0VAotHDhQvRqtD3V89UUCo6Z3d3dOTk5JSUla9asaWtr6+7uxjPpyiuvPHPmjHYocLOW1m8esHbu3Llo0aIlS5Z4PJ6rrrrqySeffOqppwoLC0+ePPntb3+7pqZm0aJF3/ve97Zu3frII4/cfPPNF9IMBLsBVEY2IBQK5eTkeL1ekJexsTHRzORXStHBNKZF9Syh3Obz4k8prsnhHTxFE0KStRYfNT8/n/1JrqeEEVlBuRkKYucVYNbRLCstLcUesqenJ5FIiFqpj4ddhaa3WN+Tk5PJZFIaZnYvgWVI3lN8HGIBVZ5GlKy3uPJtCwyzVeDWitxgqVVkWNx51CDgeSlIcfH61oODXHVwcLCvrw9Jn/Pnzw8MDOiE1wZgQZeUlDDJHIlE8vPz169ff+DAAeisxCP8FrOysgoKCkZHR99///3GxkZMwHw+H5aF5HfT09O1tbV33nlnUVHRnj17SD+tu7pDnkoVY7CaH46Kk2Oe5sy0pwo3ijmlVco9F2AqQrLNa2yPRXRwa1sJFUBNW4WtVGVU/StFQIcQ60gS2wa3slFwFQjVOtqVg6u0b2tro5xnhYioIbdKIRXDw8N0hNk1GOvl5uY2NDSQyNso2d7e/ptb1cMGuPvuu/nf6urqv/3bv/27v/u7iYmJv/7rvyaKff/73/+bv/mbH/zgBzfeeOM999zz0WoNgCN+v5/HAyatdSzZEOjRmv4VhGklhvVIlL6ysVEasNa7IPfRaJQCChSpoKCAVp2kXUUvttY+dLUQjbBSNnKNXrBgQSAQIGbNzMyEQqGenh6NTEttQ4uPJFRNRlZhLBaj5LHYJ29HwKJPxLwL40ei5IBw891R/hbAocxUpRx4Pxx6xGQkniPpy1OnTkmdHQFrrSoLe2knczwWFRX19vb29fXV1tYC0mnEXaWNptMLCwvz8vKo7uFDrFy58vDhw0NDQ7JFQOYNHsno6Ojp06eXLl3q8/kgc7CLlHSXlJTcdtttXq/3tddeo3C2NrqpnXJH3cWOZ1kEE/xItDU7tJxKcUhVx3aUsKwsmjX70pJ27Aj5bHR1e3t7qQPEKbFe30Jynb/VB1bCKLCcnaLuJPoCxcXFBCCJWarNJdjHtkE9HxggEqG0j9gjdiVTGfDu8BwpGhxjY7FSf8OAtWDBgm984xv2JxdddNE///M/258EAoHvf//7H1OqAVcrCsCZmRl2Gk+aL0xOkUgkGHkDpxcEaMkj9jzUg7E4l1XhAS/TfYHdjqwN+4rbp3NVZxEhGxRMxGW56YCIVVZWgkB1d3fT0rIdQ53hZL/0SUUEBdRkVEgL3R7s2vBiSEMdYGK5sLBQvhtWdUtz43akUerGrOzc3Fy4GlIWZO22tLQ0NzczdYDyutfr9fv9NitB0Uy9S+Hu2HeDPEq8VPWIJsvYG/39/aA2586dq62tXbZs2dGjR4HMAP6Rx2CJT01NdXZ2ZmZmFhUVRSIRfC7kzUXtecMNN/j9/ueff76/v5/tLRA61SzaISV5PuzcpZhlJc+sGqcT4yylQFW51q1Ad8t5tgWsygXbhxX3raioqKysLBqNRqNR2/WzPUdKB+X+tLP1Ha2yE39mMWsgUWRXpqmobJQl8ZpK0vUZ9AkVbqzom35ZhbBU3nXeOCrVH1dm/XczmjMzM4OLJ8ODLD5rqkzJo/EO3QL7ZYQsOrMXVmaMuoBXVn4ukRZODzxEPcZ9gFhJ/qVWC5RROVQLoQemUYMjFosxbWM5PnYQj0eSl5dHLaa27vT0dCKRGB4etiWG5ak7woHw7+PxOOB0YWGhz+eTRL34VmLx2ORUgB3JndfrjUQiTt0k4w9ehL1KgNAX4VhW54F7hRzN2NjYwMAAVEPgMEeqReHY6/VKOBAJh9ra2rS0tCNHjvCkJHHJpsrNzUWLprGxkclQ5hAkf8Znvvrqq7Ozs5999tlwOKxtYJOLVB6D0/7Th7RYu6N0bHOx1M6GDjbRxB0lBmXfng9b+zljknzsvLw8v9/f3t6OJbKMasiDKNwKCwu5/wQd/qz6zlES1+rSWJ8KTHWc+MxkfCS5NLKFrwlctnklr28VKVKFK2y0stW303idE6M5FDI+n48iwsLVBJTJyUnWomBj8Z5EjdHN1fe0aIV8262R6oIFC+AloORLvND8jW49FCQn2Sb9gXNEviCwWWsrkUh0dnaOjIw49ByLehAFvF4vQjdKoYeHh9m3YsrQ77MghdVQpUbQJJCaqhqgGR4ehs7HL9iIL6VQGnlUhVK5FM6ISb0indfrPXHiRGVlJRg/OT85rHbm9PQ0uXAkEqEqVJzVIayxRBogcDJ0IMdisZycnIULF2JSID8rlgrrm0jd2tq6cOHC/Pz8RCLBzB20Q06djIyM9evXFxQU/PSnP21raxP9QgCNNI5EzkyVdbc9NS0YRzhQmDSlumQ8FJL48NxDGCcKHHpfq/fgCODoMyxcuDAzM/PUqVMcTgi9SUFBX8c2B/VAxZLJyMhAB4UzVWxPHnTqODfhTKJv3Bn6aaQXtq/FWyiQsersEKXWLVMitnq1bA+rkvrJB6yZmZl4PM6pSEYg8iTfn+2HwlRqQW7dtyXzIrlFy9PNzs5GEZyigF/o7e0lS+LnSo9Fp7IkCf4Jz2B0dBTjA7WriRcWQRO73WNsmhRidM6kp6eXlpYyJCy1crrFFukAclbNSHEnLtX09DTzDRhEQy4n42OdwR7g4HU0znllYWc4b8P7t83+vLy8RCJBpTw5OQkhA1VcdqD10GZjAM/n5+czdKV+qKBcRWTeC/Nnmg86pXt6ejIzM1esWIHduVIMBCFgyeTk5MRisZmZmcWLFxcWFkajUczD4coUFBRwVq1bty4nJ+ff/u3fWltbSdDINyUPzVEviw3rC+0U0U5fwv5yTk4OmIZGwYSdW38AW9/pjlkrLcdUgrfmOMnIyKiurh4cHCwrK2tsbGRCk/dSAs6TsiHAcbIgK6fEkyC4Jcfa+Mjm4s5w3sP4tU5cFoZjIbHC5Uhm5090EwSD2o6kI5D7Mfl0v6OANTo6WlJSAo4LbCRfHB4zn5XTUrOBztwAQQSARiiD7SGSocillh8ODg6qLWiJObZLorEJggVra3h4eGBgwOl/W6RQE8IaKlLccUjJNHdtvTYwMBCNRmG3SxBGwIdILrSN2GDQrzCRp9PPKwuq0DyAnR2xa1fEHPy3YdLav83Ly+vv7wcgA64qKirq7u6uqqqSa47uHscprR9eBAQEnq2gHKc9x+HB0cWtJph2d3cXFBQsXrx4dHQ0HA4TXtkMAwMDzA8wQA4hCE5penp6WVkZDDIQzOHh4cbGxrvuuuvFF188duwYEdORzdKYvSUSqlonCiuyWCtMa8tIoWRZo3p8tpxU5iVJaye/4G6Q+NMOgsvCakFqSp0Ea+ZinXjs+LdgKUv4AvVTZapOug0ZMAS11CkC7OTZrBJgVkNJM0BylhsYGJiYmKiqqtKMMEHN6XLMOo7+iQUsdhFsLJqAYEli5SMOxR+YHbFonGpvuqTsW0t4scYTdpScQd9kMllZWalhAv2ODg2r0skuhYSRTCaha4sWSHqiVFnlqh3Z0RnC4+cRlpWVAWCx5zHdGxwctE1cZwJGcldiEkhpJxqN0hOEeMEpR4IpVzitb90fdikLS5IVcrEVcw03HQIWoG9nZ2c8Hvf7/ZoTVDdasAVbSNFHREfiggAd1USFhYXwRdiKZMTM3K5cuTI9PR0BeP4Jz0IIUSwWO3ny5JIlSzA9o1ASVZU0vK6ubseOHbt27dqzZw8kCQ30WW6kchPSfO1zWsmyTsChUpkRt86ZXlaHy25FO39ucX0EDrM/uBh3FXCuXInbIq6pVU1wKPhOYsX7yr1CGLz2o9APyzuxmaYkQ62Yj5XE0GpXw0G0XoIdCAO0JK/XS01Dk13cI22cC02DfpISydCXyVGldKxbw3mlpS9JLC0FZa0qypx0nf1me7HI1yDPYE8AO82kvF3QrAatkeJM1Wy0psok6sqJdO5Zdpjf76+trZVyCCascK8cb071oZX9kZkrQJALkKUrZNhmmQKEZQ8r4wPUA0ETl8rio4jnMVIv0q/H4+Gct5PeUl8g3bDz5BpJkbeC4EK+iJiimpTizuCiWl1dvXjxYnqUykCxFCMxzMjI6O/vf//995ubmzMyMuBnMVcPoMafS0tLr7vuOo/H8/rrryMl5kCfjtKDJhl0e0XyBKSzzHVZBELslF2mjJ0tDy5V50C9aUdlzJ6OJSUlomVJHk7zp1KYcuQZ9Prq/Fj5Y/GEdEhrnSjgytzQjkYL79OtsxwXq+enX4MtQUmEgibzp2BwGhvSH+aWVT2NcBjPYNjiwoGbMi9iQ49VC7ORS5CBM1/Nu3AgCwgD6CG6q48rARA7qa9yQJlCIpGwTF+FUSnJ8I7cfdsrsWAHchSM77IIRkdH4/G4Zt/tUk6FUcAF4A2IXq8kSPiFsHAxy2wY4tMqZYM+A7FD1gNWrhvBQiIaicDg4CB5kJ6IgjvJFBQena7cYXsg6fAnAdQvWFlO9H+Ghobq6+v5XwZUNRUMxMlYJRj8okWLMjIywuFwRUUFIVLD25OTk3l5eVu2bMnIyPif//kfsDC7J1OdB5UMMjYvwFjRirWkul6lolQ6HJVqm0FbBQh7vE18cLHJuaXBYPCaa67Zu3dvNBqVtg+rV3Z52R++wONpFAJXqbixybWdgk4V2FEmqPrRMmwtPuNomVqlHR1p7Gh2DWQArTFVkRQilgDwyQcsthl3jTvuGMZKiF0So2TIlijAUmC5o45kZbNZHNwI6RwkEglKBmk/WOauRbKUXiklga4tPpsADhaN+Hi8pogOFETK4bOzs4PBoM/nU3MAwWVAn1kpiKnmnXaakuiAPJ7f72cvaa1QQ8kH244r25F9sgD4aCMjIw4ZOjs7u6+vjyOEnKi0tBRJUjx+xPCC5i52FaZkTCOqbUd5qDEUPpsEUUdHR/FwtXI34XA4Ly+vqqoKReZIJKJ5HWh6tC/5nFNTU42NjQUFBZFIxOfzURJK94Jk5Nprry0uLn7llVe6u7vFRk41rUgtSawHjHyVJH4v9SGevrRqNepkxxjVgJNokp37Fc2QPy9YsGDZsmXhcLi1tVWcUivlrvLWCjTqMM7NzS0uLvb7/TQWUQNnScjFwwYsZYuKRLaYUHy3dByHhWCrVMF83GTVkpacSAKrzr48qD+OCcXviIdFlg5ILKRcWlSsewAsMU3UiUgV9hdGrrtmsxXWKwGLRoZqGUsydiaErYIC257KyJEGVZog4qKFJ1hwimV+vx/4jGAKj5/NfyExgFQJAS0sDVoio4rPjS2QZXWjJF+ICcM96vFDeSsoKOjr65MSNFuRgELKgGd9VVVVJBJJJpNlZWVqXfM7fE2qMNJAMHKfz6eApY8kGrQCOnmisBt98q6uriVLljQ2Nor3wDPlY1MbEsHRmLzkkkvwicJSzK4NyvYrrrjC6/W++OKLtA7tkPyF5N7t/CDZpVwhnENUgIDYRrBnLQykV2Nz8sEkhEtTVYZPwWCwqqrqlVdeIfRrQM/SpmRpI9qKxdHxfBTcVlRU5PV6i4uLi4qK6F2Qp8syyr47n82ZrlUWbA/4VNtqR2vMEVazpA1rWabIMIckklnoRCIrGa7KH+BD6CCjM1aTV27Giu4WvSIMKceWsAmxUn8rjCDVaskKP7BKtElU82tYj8SKA1zi3PpS8t2gOWJp60NDQ2oOzmrNZNWyBakIqBIDqL+/n4a6ag21e/h9GcqT8sgRx5JCyFM47mzIzs/PHx4ehjSnAhMiO1R7IS9UT8z94Twop0Kqae6kHStRwzcnJ2dgYCAnJ4epZpsknj9/vrOzs6mpqbGxEaUkYpY8k5g9xJIjEokcOHBgxYoVXq83Go0ivc02UF8yKytr1apV4FltbW3SpLUetFbRzEKcivvSm7V6YVrDYOeEewuBS1wfiFZol01sdYiSkNbW1nZ0dLS0tFjGjOKIzVksZpR6BMoybmRkBFt51nZubi6ZV2lpaXFxcTAYJFGwPiyOIZNKZgVuG9a12PTtrECTrR644ZRHkrrWmrfmeJ9wwGKBKg/S9+RDA7g6zrepp5NKCU+KuRPfllvJSoUpB7qpEU1rJeSoUNoSGk6TShs1aOxqYNUC3zBdaH19srKy6AxaVt7Y2FgkEpEslzNe7xAslHgLlVRwJyEFZ5HDkKiJtCYEaVOmWSlLZezUdKKSWOYOfEiJ/6FRRZiwoVCFDHGHGg3ASxIRmmS0I5n0NBGlwQTEAfJGRkY6OjqampoWLlzI049EIkgwc7xRsAOxoY2xatUqXKcIZPZAItiB5e/bt+/YsWNQUmd1Y3XmJe0xaYVJpQkFUskmZHJehFUtWlAqZcFK1cltNfA8MTFRVlZWU1PzxhtviDjmeKmq35I6tm1F61Ntk9QZx2wtGo22t7dLSre4uLiioiIQCPj9fmkB2EcsPgSHAee0Smw7q2iHxj3Ghlp7VmekI/IzV2gNevCsG8nOqRIBCxDFyXaFxbfSueQELGdOXY1CkGMNnVnL1VRarZPHeTweai77SJzjQkkBYCfxSDsZEMHOBtJ2ZNc5Ex62yLfhSdWuMiwwCCl8iWfg+LvwIjrq1YvgPogchBgAbCZrDkbJiTAWOzA/P5+hDTxydM9thuv3+zEoRNvLEi/VXLdVPL47x48fDwQCgHFsHhU7g4ODsVgMO+jx8fGysrJIJILqBpQrcHSqnlAolJ6evnz5cjZkQUGBZBJURuXm5i5ZsoThlUOHDnGepVqHOamKFZu1lHQRICxooKTY5ubEa6vmZk0exRbmz+vWrZuenu7o6LB4he0me1IMqC2E5BCGhYg78cvOtI2MjAwMDPT29ra2tvJRS0pKKisrUc0tLi7Ozc1FbsEWMdBHxPwS8153UvffntmSshCv28Jnc6gkVCOctJkVqVar9PatHI+VptdOs4KwqcoNhCQkACORiMfjgdROLi3zVButiDuin+h8YMcK6dQBoraXGoIqFSWZmJ+fj2i9pbxOTk5iTOIoBDj6TUJYbTiTJwX7mQkvuTDBq5BLmCwklA6oP2vNo6SbbOfsuAkS6uHtcnNzA4FAZ2cnAYuzV7oFgpbo35H6DQwMVFRUiLkmVX4biNPS0urq6o4dO3b69Oni4mIJV5KL8a27uroyMjLq6upGRkbC4XAgEIhGo+KaMOwJBpSbmxsOhxnxIVWhLLV7gA0WDAavuuqqQCCwe/fuvr4+PQtHwV2YMT04y35Q2LLuRBY9dAQm5dmhs0eTDHxUkuWZmZmqqiqv1/vOO+9wP50dZG1B7Gym58Pm1Za/riimJ27nIgWNW4oW4nHhcJjjMD8/PxAI1NfXV1dX+/1+RoBB4oQmj42NoS/AYSCFD2t8ZXkbliktWd05ZKSq3ooKK8+HXWol/KRJDvvpHZF8Uf5EKLWNdtaxHCg00GAtsPQHCWmKkqczFuaI9ps1THaetAaqOScZ2rCyonyFwcFBhBlmdejQwUho0/FrGcaOXNzQ0NDw8DAxAq6Q3KG5IfS2RKPlALQpOtUihz+/qTus5iP3hylI0UTJy1QviEFaWloKuMZIk3pnVnBZsWBqaqqkpKSkpCQej3d1dUlOQLUk3zcUCuHbRG6VlpYWiUT4asLg09LS0No+d+5cenp6fX098s2FhYUCYpTyZGRk4OCbmZm5Z8+ecDjs5KeK+KJuyEXJokVizGnCztoL2TjC7oVEAtZO8IKXT6bM0bhixYpQKHT8+PFUtx5lN7Yhkzrp4uRiSqYcRr51rLCAKXeeQp4hX2zuWltbAe9ramrq6+vLy8u9Xq/aLGwB/ouRFw19UdLseWAtqVPR+jlBa5DDinrzqgSJ0Kw/pdbiSVl83dIgBXYKbrfljLBGuahaO3vyOw152mpf8PnExIREhJ2qTRmZshUKLtGyGdOj96+vMD4+HovFsOpzVphNpgg3OkiVKuvrq48DjqPJW6tjwy8I3nKUxfg8NG1BVYh0VopIDqaMy9FoQ9EMsQ0gJ7EN1XTPyclBbY7zlsXHLJtcY/WkyKmDwWAymTx37hxkaJI+TSMRdkOhUF1dXWVlpc4MuP4EAuZyUC/IyckJhUJZWVnV1dWIoNIO0yyOQkxpaemKFSsKCgr27Nlz5swZ+Y1LjkItPyEJLFcrBAxcyIQZjBClUcCmOh3t8obwiUaQ/HfPnz9fXl5eW1v76quv8o20/FLlcVKFvSweagNTqraqzestyG05DQrc1pcXos/AwMDx48dzc3PB2qqrq0tKSsDsuXh8RHCZIUj9ym43G0ydxuInP5ozMjLi9/s536wUp9TLFOzZaU5vzjYQrceRVDGVH4G7w0iwPjeyuhFZXMWUKlZ9BmoNkUUV1+z8qojR7F72Q1ZWVmFhoeU6Ez4SiQQcSJsJW+hEYdeOUGh7nzeXnRFjt4imYGc7hAgQwnBdlEqcDlj2udIlpUKg7MpM+TXOlZGREfqAmgC1Eit8APif6NLQrk7lKFJxlJaWvv/++9PT06hsk+qySEiWSd9CoVBFRYXmq9PT00OhEHGNmNXX18cM9vT09NmzZxcsWMDkMM1EyeGrtZeZmRkIBGg7+P3+/fv3S0ZNVrLSNnAYTwpDGjRR+kM+qzgu6oBiAWtAU7GqDLKzs1euXNnW1gaQZDMpq95he9kOb9NxFXHKRu01DUjZURur42i5r46aleY9xsfH29ra2traWPCBQKCsrKyysjIQCHBCCA/hO5JFclJq7MTOMznDiZ98SYhZi56fEHf7uQELYGMBdTE1ztwWxQsdDTuaI89B/gxLE+0tJiqkxSEdPmAmC1JIvBwEd3BwEASHz6zzgZ+wEIVr6Ivk5eUxvyoje7Htw+EwqsGOnLZzgtls2VIQpY6iwopvR9Sm/LTAtmY+PB/2bnIGCdiTRUVF6NaTnAojF/mTB1RYWDgwMMDfYh8PzU3iWeKCFxUVDQ4OQm3VDJMdD7D1V3l5uVTG2traSkpKiPhiDieTSbF16uvrc3Nzudsw8hHU5owZHh6GA8XMMGoHZLUFBQUyd7CCB8FgsLS0FCXYPXv2kNpwE8TGtjN3KoHZirwgr0aiLdFqGdlK0sPi3NYDgltXX19fVlb22muv6ZZarMNJ820CJYTEEd6y8j4W/NYHtp0ruzx0hDttcWWIVkSA5nh3d/fZs2fT0tKKiooqKirgkZWVlaEiBbjJy46PjwtO5XBSQHCMoC8YTD6+1t9vdk1PT1999dXRaJTIajMscT2o0RQ4CgsLCwoKdObLHBg1aCbpFcLYeIKfsasSJU8TW4oFjiWB3sUOuw8PD2OxrSVlZ8S4uUNDQ2xgXPnEQ7GXuIsk/w5NMbUNxGZASsUes5zAOrepeek2ko0r6lk7dTvoYFNu4XEKZDIZc4Za1W2ghMFTU1JZbP5Uv/hwODwyMuLz+XDcEJPT82GLI9Eyu7u7tTH8fr9OYIUJyS0UFhaiKS5eq8zcNeCpGEFuJfq+RUIdYIjX7OnpAQ5z2iAXmkCwuaoqKUuPdAoCJz9yZA98Pl9mZmY4HBboNmuz/0K7dVbua6pUhjNyaNeezX9T8QpnMCNVBFGPWBgoZ4+60kpCNduo+6a3PnPmzN69e5Ff/8QyLDqDDz/8MCm9cz6k1tUWu3EehsXF7VNPncl0fuHjEz0sa8HBL/VeIyMjDzzwwD/90z9Z1adU0QXnJsxKpJ512Yk4OutrOnwIezZ+9Bec9W+5q/fee+9f/uVfBoPBC20Pq5pk33dWlFRMi48wH7ebRxOajgxeKlLj2N/OWkRkZmY+8MADt99++8UXXyw08KPvjKPE8psJ6n7Me36hJMKZQLZDuI888kgwGNy6dWtqx+bjxLL/h+SkX+uXrSu1/dZZWVlf+9rXbr/99jVr1li9fP5bV1f3CZeErMjVq1cHg0HPZ+IaHx8PBAJr1qwRFevTfvn9/lWrVn1mHlAgEGhuboba/hm4gsFgbW1tY2Oj57NylZWV/cYPaMHv4PNpduSzcUnW2vMZuj5jX+fjUBA/LVdqGfv/8wNKf+ihh34HB/iSJUvs/NGn+gIqbmpq+s0qiLmZYX2WHhBfB5+Rz8BVUFDQRkbexwAACitJREFU0NBQUlLymYlW/zcPKO2zF7znr/lr/vqsXgvmb8H8NX/NX/MBa/6av+av+etTGLDGxsYkf/wpuuC7j4yM2B8yWe2MoWpS+lNxSTrO4/Eg0QWbSRcDbp+K78LnRyXC/sRhAKBjM/e/DlPE9nGwuiQuzMWo7Fx+KJZ4eKFFxeyU/R2end1cs1wzv+XrjTfe2LJly/r16//8z/8cE4pPxdXZ2bljx47rr79+y5YtP/zhD9EDam1tvfXWWzdu3Lh9+/azZ8+igvDNb35z/fr1mzdvfu211+b+9+ru7t64ceP9998/MzMTiUTuvvvua6+99qabbjpy5Ahk9Icffviaa6659tprn3vuOVFp5uZ16tSp+++//7rrrvviF7+4f/9+CO533HHHxo0bb7nllqNHj6L589BDD11zzTWbNm362c9+Nme/y/nz51999dXf//3f37x587Zt2w4fPoxZyR/+4R9ee+21W7ZsefPNNyE3Pf300xs2bLjmmmuefvppqYzOnWtqaurJJ5/csGHDmjVruru7GQn4wQ9+sHHjxg0bNjz11FMKC1/4whc2bNjwx3/8x4St3t7eO++8c/369V/+8pfx0531+u0GrN7e3uuvv/6FF16IRqNf+MIXHn300U9LwOrr69uzZ08ymezo6Fi3bt2uXbtmZma+8pWvfO973xscHPyLv/iL2267bWZm5oknntixY0ckEnn55ZevvPJKFIfn7DUxMfFnf/ZnX/nKVx544IGZmZmvf/3rDz74YCKRePLJJ6+//vqJiYlf/vKXn//85zs7O/fv33/FFVcgGzA3r0Qiceuttz711FMoCw4NDc3MzHz1q1/95je/OTg4+A//8A833HDD5OTk888/f9NNN/X09Ozbt+/SSy9tb2+fs19ny5Ytzz///NTU1COPPHL77bfPzMx897vf3bFjRywWe/7556+66qrBwcGDBw9edtllp0+fPn369Lp16/bs2TMHA9aJEyeOHDmyZs2azs7OmZmZN998c+PGjWfOnDlz5swll1xy6NChoaGhq6666rnnnuvv77/tttsee+yxmZmZb33rW9/5zncGBga++93vfulLX7rQYfnbLQnb2tqGh4c3bdpUWlp644037tmz59NSN/n9/ssvvzw/P7+2thaTvkQi0draescddxQWFt56661dXV2RSGT//v033HBDIBC47rrrMjMzjx8/Ppe/1BNPPFFSUnLrrbcyLXTo0KEdO3Z4vd5t27YNDQ11d3e/8847l19+eU1NzZo1a8rKyg4cODBnv0tbW1skEjl27NiOHTv+8R//kdHu9957b/v27YWFhTfddNPo6Oi5c+fefvvt66+/PhgMXnLJJWVlZe++++7c/DpI6PT09LS3t/f19a1YscLj8bz99tvbtm0rKSnZvHlzTk5Oa2vrvn37li5dunjx4sWLFy9dunQObqj09PSlS5cuX75cpJ933333sssuW7Ro0aJFiy666KK9e/eeOHEiLS3t5ptv9vl8t95669tvv43X5NatW4uKirZv397R0RGPxz8BDIvpPzzB/X7/pxHJevzxx4uLiy+77DI0eRlPQxMiHo9jksxvFhQUoNU7N6+DBw8ePXr0T//0T9GKYSBRtnpIXA0ODpaWlvL7Xq+3t7d3LsM9u3fvrqqqeuihh/bt2/f3f//3zJD6/X7PB8rlAwMDyWQSYx6Px+Pz+TCtmINXXl7eTTfd9KMf/ej+++//5S9/uWnTJpCgQCDALxQVFQ0MDCQSCb4gGyoWi81Z/Fd/jkQi2Jd4PJ7S0tJEIhGLxdhHHo+nuLh4ZGQkkUhMTk7m5ubyE6wnZ33l3+5oDiIkyAMNDw8zt/wpun70ox/t3LnzscceQz0CTCQvL4+5X3a+ANHx8XHtjTl4Pffcc3v37v3yl7987ty5cDjs9XrxuQTHHBsbY7BcaO7Y2Nhc/jppaWnNzc3bt28vKyv7gz/4g8cff/wb3/gGTjzAt2wA+4CQTp6bXycajT788MMPP/zwpZdeunPnzr/6q7965plnsrKydMaPj49jOKgHhFHInH06+m9RURH6aHQ/KioqsEHQ90J+Egkgj8eD/uqFntRvN8Oqra2dmZk5duzY+fPnX3vtteXLl3+KWmmPP/74Cy+88NhjjzFkV15e7vf7f/GLX3g8njfeeCMvL6+6urqpqemtt946f/788ePHE4nEsmXL5uw3uu+++374wx9+/etf37x589KlS7dv315dXf3zn//c4/G88847U1NTtbW1K1asQJ83FAp1dHRcdNFFc/brVFZWFhQUnD592uPxtLS0lJaWZmRk1NbW/vd//zfp5Pj4eG1t7apVq958883Jycnu7u7Ozs6LL754ziaMvb29CPL4fL5YLJaRkdHc3Pzyyy97PJ4TJ05EIpGGhobVq1cfO3YsmUwmk8mWlpa1a9fO2YCl0fTVq1fv27ePZu7BgwdXrVq1bNmygYGBgwcPejyeX/ziFytWrAgGg+Xl5Xv37vV4PK+88orX61Wm75acv9XRHHzPn3rqqV/96lf9/f3f/va3lQrO8evkyZPbtm1bsmTJuXPnXnvtNZ/PFwwGi4uLH3300UOHDr3++usPPvjgkiVLampq/vVf//WNN97YuXPn9ddff911130cTZ9P5PJ6vXV1dTU1NX19fT09PXfffXd5efnTTz994MCB559//s4771y7dm1VVdVbb7310ksvvfjii2vXrt22bducHfD2er2xWOwnP/nJwYMHDxw48Ed/9Ec1NTUVFRVPPPHEoUOHXnzxxbvuuuviiy8OBoM/+9nPXn311Z07d1566aW33HJLqiLCXLhycnK6u7ufffbZI0eO7Ny584tf/OLatWtramp+8pOf7N2797nnntu6devGjRsDgcDRo0efffbZn//85w0NDXfccQd4y5y6XnrppYcffvhXv/pVd3f36Ojoxo0b33jjjZdeeumFF16oqam59957CwsLh4eHH3/88b179545c+ZP/uRPSkpKysrKHn300Xfffff111+/7777QPFmCYW/A1WKI0eOJBKJ1atXz9kMNvUaHBxsaWlB0jMtLW358uXkWWfOnOns7GxoaGhoaFAy39LSUlRU9LnPfW7ORit79ff3DwwM8Pm7urpOnz5dUVHR3NysuunAgQNZWVlr1qz5OE68n+A1MzPT0tISjUaXLFlSWVnJDzs6OlpbW0l+BaQePXo0JydnzZo1czNacU1PT7/33nvxeLyiokKpejgcPnHihN/vX7lypWqoAwcOzMzMrF27dg5GK4/Hc/bs2fb2dqS3A4HAihUrhoeHDx8+nJaWtnbtWo2sHj16tK+vb/ny5UK4Ojs7z5w5U1dXt2jRogvmbvOzhPPX/DV/fVqu+dGc+Wv+mr/mA9b8NX/NX/PXfMCav+av+Ws+YM1f89f8NX/NB6z5a/6av+av+YA1f81f89d8wJq/5q/5a/6ao9f/ASQZ2UfkeYXoAAAAAElFTkSuQmCC"},"metadata":{"needs_background":"light"}} ], "source":[ "def plot_grayscale(array):\n", " return plt.imshow(array, cmap='binary_r')\n", "plot_grayscale(clown_image_array[:, :, 1])" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The slice `[:, :, 1]` requested all rows and all columns of the original array, but only the second (green) color\nchannel." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to plot the **blue** color chanel of the original image as a grayscale image. You should see that the *leaves* are darker in the grayscale image derived from the blue color channel than the grayscale image derived from the green color channel, because of course leaves reflect mostly green light! The *nose* of the raccoon should appear bright white, since we set it's blue channel to have the maximum value earlier." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "plot_grayscale(clown_image_array[:, :, 2])" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "How do we obtain a single grayscale image that incorporates the brightness values from **all** three color channels,\nrather than taking only one at a time?" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "To do this, we want to *total* amount of light at a given position in the image, irrespective of whether it is red,\ngreen, or blue light. Therefore, we wish to *sum* over the third axis -- the color channel axis. Recall that axes, like\nmost things in Python, start counting at 0, so the third axis corresponds to `axis=2`." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0nq0w6vpwisjn" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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Dzzwla985bLLLhNBPPfh5N6arPMn40Wfi4E4o1k510t32jAoPjz66KPV1dWbNm2Se/gYwuN5XtgnJlSeZ4XNTrRy/m9hYSEvaOXKlc7fTE1NNTY2/p5TQpbCRRddVF1d7flCHGNjY+Xl5ZdeeqlYPJ/3IxwOr1ix4gvzgiKRSEtLy4UXXvjFuJ3q6uqGhobFixd7vihHNBr9xC9o/mdwfVL/+mIctqXzC3ZTX5jjfLrSPi/HeU5n+H/kBeU99NBDn/bFlZeXI130xXjWkA8vuOCC/8ts9Fl1fMFeELejgVSf98Pr9TY1NYXD4S+Mtfq/vKB5XzzjPXfMHXPHF/WYP/cI5o65Y+6YM1hzx9wxd8wdn0ODNTo6SkfF5+sYHx8fHBykR0cHwiaql3s8HiawS5Nv9h/qL/F4PJprYv+ABrfPxb1w/eq11m8cBsDQ0BDjFGf5waAm+zpYXfSu6xgeHoY4PmtfyvDwsGSmz7WoGBfiCOo7m2uGY/pTPt5+++2bb7752muv/bu/+zu4jp+Lo7Ozc9u2bTfddNPNN9/8gx/8AD2c48ePb9myZf369Vu3bqWhZHh4+Fvf+ta11167YcOG119/ffbfV3d39/r16++///7p6em+vr577733+uuv37hx4759+6A1PvLII+vWrbv++uufe+4526Y+C49jx47df//9N95442233fbBBx/QKX3PPfesX7/+jjvuOHDgAAz4hx56aN26dTfccMPPfvazWXsvU1NTr7322h/90R9t2LBh8+bNH330EUPF//zP//z666+/+eab33nnHTi0zzzzzHXXXbdu3bpnnnlGAhuz55icnHzqqaeuu+66lStXdnd3w+/9/ve/v379+uuuu+7pp5+WWbjllluuu+66v/zLv8RsxWKxr371q9dee+2dd9555MiRc53/0zVYsVjspptueuGFF+Lx+C233PLYY499XgxWIpHYsWPH0NBQR0fHmjVr3nzzzenp6bvuuuu73/1uJpP5+7//+7vvvnt6evrJJ5/ctm1bX1/fL37xi6uvvjqRSMzmmxofH//bv/3bu+6664EHHpienv7GN77x4IMPDgwMPPXUUzfddNP4+Pgvf/nLq666qrOz84MPPrjyyisPHz48a+9lYGBgy5YtTz/99OjoaDqdZkb317/+9W9961uZTObf/u3fvvSlL01MTDz//PMbN27s6enZvXv35ZdfzpTW2Xk7N9988/PPPz85Ofnoo49+5StfmZ6efvjhh7dt25ZMJp9//vlrrrkmk8m0trauXbu2ra2tra1tzZo1O3bsmIUG68iRI/v27Vu5cmVnZ+f09PQ777yzfv369vb29vb21atXf/jhh4ODg9dcc81zzz3X399/9913P/7449PT03/zN3/zne98J51OP/zww1/+8pfP5Sw/3ZTw5MmT2Wz2hhtuiEQit956644dOz4veVN5efkVV1xRVlbW0NDg8/mmpqYGBgaOHz9+zz33+Hy+LVu2nD59uq+v74MPPvjSl74UjUZvvPHGgoKCw4cPz+abevLJJ8Ph8JYtW2jN+/DDD7dt2xYIBDZv3jw4ONjd3b1r164rrriivr5+5cqVFRUVe/funbX3cvLkyb6+voMHD27btu3f//3f0fPav3//1q1bfT7fxo0bR0ZGurq63n///Ztuuqm6unr16tUVFRV79uyZnbeDKk5PT8+pU6cSicSKFSs8Hs/777+/efPmcDi8YcOG4uLi48eP7969u6WlZdGiRYsWLWppaZmFG4oJ3suXLxfpZ8+ePWvXrm1ubm5ubr7kkkt27tx55MiRefPm3X777aFQaMuWLe+//34ymTx69OimTZv8fv/WrVs7OjpSqdTvAcNKpVK0H2MCPo9I1hNPPBEMBteuXZtOp9Fd8ng8aGCnUil0ivlLr9fb29s7a2+ktbX1wIEDf/3Xf41GGLIB6BrTCz0wMJDJZCKRCH8fCARisdhshnvee++92trahx56aPfu3f/6r/9KR2R5geEPywAABURJREFUebnH40FIOp1ODw0NMRHD4/GEQqF4PD47b6e0tHTjxo0//OEP77///l/+8pc33HADSFA0GuUP/H5/Op0eGBjgBtlQyWRy1uK/+rmvr4/J4R6PJxKJDAwMJJNJ9pHH4wkGg8PDw0jFMd0nGAzm5+f39/fPeOZPtzWnrKwMNWjakulB/RwdP/zhD7dv3/7444+XlpaiiUwDMNJI7HwBomNjY9obs/B47rnndu7ceeedd3Z1dfX29gYCASRiPL+WDEUkQ2ju6OjobL6defPmLV26dOvWrRUVFX/8x3/8xBNPfPOb30Tc2fPrUTfOC0K5YXbeTjwef+SRRx555JHLL798+/bt//AP//Dss88ie6/VxSBlvaBsNou/mZ1vR//6/X700ah+MLZeNRDk9hm5hJlDlfdcb+rTjbAaGhqmp6cPHjw4NTX1+uuvL1++/HNUSnviiSdeeOGFxx9/nCa7ysrK8vLyV155xePxvP3226WlpXV1dRdccMG77747NTV1+PDhgYGBZcuWzdo7+trXvvaDH/zgG9/4xoYNG1paWrZu3VpXV/fSSy95PJ5du3ZNTk42NDSsWLFi165dY2NjZ86c6ejouOSSS2bt7dTU1Hi93ra2No/Hc+jQoUgkkp+f39DQ8POf/5xwcmxsrKGh4aKLLnrnnXdQAezs7LzssstmbcAYi8XKy8uZ+ZxMJvPz85cuXfqLX/zC4/EcOXKkr6+vqanp4osvPnjw4NDQ0NDQ0KFDh1atWjVrDZZa0y+++OLdu3dTzG1tbb3ooouWLVuWTqdbW1s9Hs8rr7xCH2tlZeXOnTs9Hs+rr74aCAQU6bsp56famuP3+7PZ7NNPP/3WW2/19/d/+9vfVig4y4+jR49u3rx5yZIlXV1dr7/+eigUQlzxscce+/DDD994440HH3xwyZIl9fX1//Vf//X2229v3779pptuuvHGGz9Zx/9ncAQCgcbGxvr6+kQi0dPTc++991ZWVj7zzDN79+59/vnnv/rVr65ataq2tvbdd999+eWXX3zxxVWrVm3evHnWNngHAoFkMvnjH/+4tbV17969f/EXf1FfX19VVfXkk09++OGHL7744p/8yZ9cdtll1dXVP/vZz1577bXt27dffvnld9xxR64iwmw4iouLu7u7f/KTn+zbt2/79u233XbbqlWr6uvrf/zjH+/cufO5557btGnT+vXro9HogQMHfvKTn7z00ktNTU333HMPeMusOl5++eVHHnnkrbfe6u7uHhkZWb9+/dtvv/3yyy+/8MIL9fX1f/qnf+rz+bLZ7BNPPLFz58729va/+qu/CofDFRUVjz322J49e954442vfe1roHgzmMJPuzVnenp63759AwMDF1988ayNYHOPTCZz6NAhpgPMmzdv+fLlxFnt7e2dnZ1NTU1NTU0K5g8dOuT3+y+99NJZa63s0d/fn06nuf7Tp0+3tbVVVVUtXbpUedPevXsLCwtXrlz5O4ltf/bH9PT0oUOH4vH4kiVLampq+GVHR8fx48cJfgWkHjhwoLi4eOXKlbPTWnGcPXt2//79qVSqqqpKoXpvb++RI0fKy8ulbTA2NrZ3797p6elVq1bNQmvl8XhOnDhx6tSpkpKS0dHRaDS6YsWKbDb70UcfzZs3b9WqVWpZPXDgQCKRWL58uRCuzs7O9vb2xsbG5ubmc8Zuc72Ec8fcMXd8Xo651py5Y+6YO+YM1twxd8wdc8ecwZo75o65Y85gzR1zx9wxd8wZrLlj7pg75o45gzV3zB1zx5zBmjvmjrlj7pilx/8HFMqfXjXfWa8AAAAASUVORK5CYII"},"metadata":{"needs_background":"light"}} ], "source":[ "plot_grayscale(clown_image_array.sum(axis=2))" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "When taking photographs with old-fashioned cameras, it is important to know the total amount of light that is coming\ninto the camera's lens, so that we can set the **exposure** correctly." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We'll now do a similar thing with our image. We wish to find the average amount of light that is present in the image.\nTo do this, we wish wish to average over the horizontal **and** vertical **and** color channel axes. We'll use the\n`mean` method to do this:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0x37s5isl9z1f" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"110.16274388631184"},"metadata":{},"execution_count":1} ], "source":[ "image_array.mean(axis=(0,1,2))" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to calculuate the average amount of light in the **clownified** raccoon image. Before you evaluate the code, predict whether this mean value should be larger or smaller than the mean value above, and by roughly how much." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "image_array.mean(axis=(0,1,2))" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can also calculate the average **color** of an image. To do this, we will simply avoid summing over the color\nchannel, so that we get an average green, average blue, and average red amount of light that we can then interpret as an\naverage color. Run the code below:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"02gxr8ekrq5mj" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([110.67604192, 117.72977066, 102.08241908])"},"metadata":{},"execution_count":1} ], "source":[ "image_array.mean(axis=(0,1))" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the call to `plot_color` below to visualize the average color that you computed above. It should appear slightly green, because the image consists of mostly green leaves and a mostly black-and-white raccoon:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "plot_color(0, 0, 0)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "# Slicing" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In the previous section, we dealt with an color image array, a **3-array** representing the pixels of an image." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The first two axes were **spatial**: the first axis represented the vertical and second axis the horizontal arrangement\nof pixels. The sizes of these axes corresponded to the **number of pixels** in the vertical and horizontal directions of\nthe image." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The third axis of an image array is quite different, since it represents **color**, with the size of this axis being 3\nbecause there are 3 color channels that, when mixed together, allow us to display most of the colors that are visible to\nhumans. The indices that are usually used for color channels are 0 ⇔ **red**, 1 ⇔ **green**, and 2 ⇔ **blue**. This kind\nof axis is sometimes called a **discrete** axis, since the particular integers or order of cells in this axis isn't\nimportant -- we can rearrange the order of colors (red, green, blue) any way we like as long as all our code is changed\nto match the new convention." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In this section, we're going to be a little more explicit with slicing, and take you through some detailed examples." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Let's play with a simple image that illustrates this. It will be a 5 × 4 color image that depicts a red capital letter\n\"F\", with an aquamarine colon after it. Since images are stored with the color channel as the last dimension, we will\nchoose to build the require image array by using the `dstack` function in numpy to represent the three color channels\nseparately, which makes the data easier to read." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0zus7n4ngpwcs" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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"},"metadata":{"needs_background":"light"}} ], "source":[ "f_array_r = np.array(\n", "[[1,1,1,0],\n", " [1,0,0,0],\n", " [1,1,0,0],\n", " [1,0,0,0],\n", " [1,0,0,0]])\n", " \n", "f_array_gb = np.array(\n", "[[0,0,0,0],\n", " [0,0,0,0],\n", " [0,0,0,1],\n", " [0,0,0,0],\n", " [0,0,0,1]]\n", ")\n", "\n", "f_array = np.dstack((f_array_r, f_array_gb, f_array_gb))\n", "plt.imshow(f_array * 255)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The image array is a 5 × 4 × 3 array, since it is 5 pixels high, 4 pixels wide, and has 3 color channels:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0tx2nuhhkvafp" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"(5, 4, 3)"},"metadata":{},"execution_count":1} ], "source":[ "f_array.shape" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can visualize this 3-array using a 3 dimensional cube diagram like before, where each cube represents a cell of the\nimage array. Here we will draw the cube as **solid** if the value of cell is **1**, and as empty if the value of the\ncell is **0**. We will also draw cells that live in the red color channel in red, cells in the green channel in green,\netc." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The axis order for this image array is rows (Y), columns\n(X), and color channels (C)." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Specifying one axis" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The first kind of slicing we will do is just to **specify** an index for a specific, single axis in the 3-array. This\nwill select all cells that have that index. The result will be a 2-array whose axes are the ones we did **not** specify.\nLet's look at an example." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Let's specify the first axis, which is the **rows** axis. If we select the **third row** from the 5 × 4 × 3 sized\n3-array, we obtain a 4 × 3 sized matrix whose axes correspond to the **columns** and **color channels**:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can perform this operation in **numpy** using by specifying the row we want in the first position of the slice\n`[...]` notation, and specifying the other axes as `:`, which means *take all indices* in that axis. Here we are\nselecting the third row, which is indexed as 2 in Python:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1wbgsymgs1zov" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([[1, 0, 1],\n [1, 0, 1],\n [0, 0, 0],\n [0, 1, 0]])"},"metadata":{},"execution_count":1} ], "source":[ "f_array[2, :, :]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Explain why the pattern of 0s and 1s in the above array corresponds to the slice shown in the cube diagram above. Hint: notice there are 5 solid cubes in the diagram, and 5 1's in the array." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Similarly, if we slice a particular **column** from this 3-array, we obtain a 4 × 3 matrix (aka 2-array) whose axes\ncorrespond to the rows and color channels. Here we select the pixels with X position\n4, or if you prefer we are selecting the 4th column." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Since the axis order rows (Y), columns (X), and\ncolor channels (C), we must select the second axis to have index 3 (meaning fourth)." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"120qyqmuammdr" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([[0, 0, 0],\n [0, 0, 0],\n [0, 1, 0],\n [0, 0, 0],\n [0, 1, 0]])"},"metadata":{},"execution_count":1} ], "source":[ "f_array[:, 3, :]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Again, explain why the pattern of 0s and 1s in the above array corresponds to the slice shown in the cube diagram above." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "If we slice a particular **channel** from this 3-array, we obtain a 3 × 3 matrix (aka 2-array) whose axes correspond to\n**rows** and **columns**. Here we take the red color channel:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Since the axis order is rows (Y), columns (X), and\ncolor channels (C), we must select the second axis to have index 3 (meaning fourth)." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In **numpy**, this is select that last axis (color channels) to have index 0 (the\nfirst channel, red):" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0w58on7qg35vt" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([[0, 1, 1, 1],\n [0, 1, 0, 0],\n [0, 1, 1, 0],\n [0, 1, 0, 0],\n [0, 1, 0, 0]])"},"metadata":{},"execution_count":1} ], "source":[ "f_array[:, :, 0]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to obtain the matrix corresponding to the **green** color channel. Predict before you run the code what the output will be." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "f_array[:, :, 0]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Specifying two axes" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can also produce a single **vector** (aka 1-array) by specifying both a particular **row** and a particular **color\nchannel**. This leaves only the **columns** axis unspecified, meaning the result has just this one axis, and is hence a\n1-array." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In **numpy**, we are selecting the first channel (third axis) of the first row (first axis) of pixels:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0anrt5jz49tcb" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([0, 1, 1, 1])"},"metadata":{},"execution_count":1} ], "source":[ "f_array[0, :, 0]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to obtain the vector corresponding to **green** color channel for the **second-to-last** row of the image. Predict before you run the code what the output will be." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "f_array[0, :, 0]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "There are **two** other combinations of axis we can slice: **row and column** (which leaves color channel unsliced), and\n**column and color channel** (which leaves row unsliced). Let's examine slicing the row and column:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This corresponds to taking a single **pixel** from the image, since we are left only with color information." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In **numpy**, we are specifying a value for the row ($1^{\\textrm{st}}$ axis) **and** column ($2^{\\textrm{nd}}$ axis):" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1rvdzubmba1mt" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([1, 0, 1])"},"metadata":{},"execution_count":1} ], "source":[ "f_array[2, 2, :]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to obtain the vector corresponding to colors for the bottom-right pixel of the image. Predict before you run the code what the output will be." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "f_array[2, 2, :]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Specifying three axes" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Lastly, we can specify all three axis. This corresponds to taking the value of a color channel for a single pixel. After\nwe specify *all* the axes, there are no axes left, and so we obtain a **scalar value**. This is effectively a\n**0-array**, an array with no axes, and hence only one possible cell." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In numpy, we are specifying a value for the row ($1^{\\textrm{st}}$ axis) **and** column ($2^{\\textrm{nd}}$ axis) **and** channel ($3^{\\textrm{rd}}$ axis):" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1f1gpcpjpbv9n" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"1"},"metadata":{},"execution_count":1} ], "source":[ "f_array[2, 1, 0]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to obtain the value corresponding to the blue channel of the top, left pixel. Predict before you run the code what the output will be." ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "f_array[2, 1, 0]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Sub-arrays" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "As we saw earlier, we are not limited to specifying a **single** index for an axis. We can also specify a **range** of\nindices. By doing this, we do **not** remove that axis from the result, since there are now multiple cells within that\nrange on that axis." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Let's take the first three Y positions, last three X positions, and first two colors channels (red and\ngreen):" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In **numpy**, we achieve this using the notation `start:stop`. Note that the `start` is *inclusive*, but the stop is\n*exclusive*, so `1:4` means taking indices `1,2,3`:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"05l7e2bkevpui" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([[[1, 0],\n [1, 0],\n [0, 0]],\n\n [[0, 0],\n [0, 0],\n [0, 0]],\n\n [[1, 0],\n [0, 0],\n [0, 1]]])"},"metadata":{},"execution_count":1} ], "source":[ "f_array[0:3, 1:4, 0:2]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This array is a little hard to read, so we will slice the resulting 3-array into two 2-arrays, one for the red and one\nfor the green channels, to print them more easily:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "result = f_array[0:3, 1:4, 0:2]\n", "print(\"red:\\n\", result[:, :, 0])\n", "print(\"green:\\n\", result[:, :, 1])" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "You might have noticed we've been using the syntax `:` to mean take the entire range from beginning to end -- if either\nstart of stop is left off, the meaning is to start / stop at the beginning / end of that axis." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Predict the shape of the array that is produced by the code below. After you've done that, predict the values that will be produced, and explain in words what you are doing. Then check your answer by running the code!" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1i963uztndhb8" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([1, 1, 0])"},"metadata":{},"execution_count":1} ], "source":[ "f_array[2, 0:3, 2]" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Step size" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "A final variation on slicing is to allow for a \"skip\" over elements. We can do this using the syntax `start:stop:n`,\nwhich means to take every *n*'th element, e.g. the values `(start,start+n,start+2n, ...)` until we go past stop. This\n*n* is called the **step size**." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This is particularly useful for **subsampling**, which is what we do when we want to bring a large data set down to more\nmanagable size, and we don't mind throwing away some of the data to do this. A morbid analogy for this was the ancient\nprocess of **decimation** that was used to punish Roman troops: every company of ten soldiers was forced to execute one\nof their members. Pretty grim stuff so let's rather look at what when we step over the Y axis in our cute image of a racoon, taking every third row:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1mz79xo65pkyx" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"iVBORw0KGgoAAAANSUhEUgAAAZIAAAB8CAIAAADM2aHrAAAACXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR42uy8ybJmSVImaKo2nvEf7+izR0ROdGVR0FICC0SqF5ULWoQF1JL3YMWCLSJsEd6BrndA6Kru6q7qbKGaIXKICPdwv36nfzyTzWa9uB6ZQQIFInQiVIt/q//asWOmpsfsMzVVtQs5Z/IBH/ABH/DfD/CDCj7gAz7gA219wAd8wAd8oK0P+IAP+IAPtPUBH/ABH2jrAz7gAz7gA219wAd8wAf8nGjLOae1/qDND/iAD/jvg7b++I//+Dd+4zd+/dd//fd///dDCB90+gEf8AE/V7B/5PufffbZH/7hH/7e7/3exx9//Nu//dsff/zxb/7mb/5NW4wxCgDvM1vhfTkQQghkkh8KHp4CEELI11Ng4atHXwfA1xr625H/1goP6bU/7eUflmwLAF9//e+q8DNP/85e4Gsy/mxDBL4mdiYZfnYU+W+08pVgX72bSSb5H6iln77+kzH+XRV+ptv3ff1Un1//E36m5X9MVvNf0+3XxggE8lfz5m//QADk673/9Xf//7+4/7bZ9c9IHvg7j25CiP/2bPzH0tann376+PHjX/u1XwOA733ve3/6p3/6QFvOudevXzvnUkq/+7u/e/X2ijFOGSM5Z5Ihk5RTzjnnjJS+N/wQgUDKKaf81doFAJJSRkRKaSY55wwEUs4pxZRSSgkAEEh+v1IBAFJKiEiRphQf1syDDQiAjFFKGQDk9/M7AyCQ98JQpO+VBSSnhyYzAYgxOOuRIqOMMY6IBEj+SgaKNOVkrQUAKWR+aBMg5RRDAEIQkRBAigiYciI5p5xzSoQQSikBiDECIYg05xxjJCQjYsoZEQAghhhjRAACAACI+LBWY0o5ZUCCgDlnxnnOKaUMAPRBpTmnlLwPhGSkCARiig96zu8Hl1NKDyWc85RSjIFSRoCklEjOAEgISSkxzh6Uk1L6CS98pcAHneeUMyGEIhJCYgwPFRARkaaUEAERHyjm4Tu9//qIP+E1QESAGNNPWIYippRiTABAKT688pXMNKX4MNicSQjhoTVKKQABwBhjTokASSkzRgkh71sGoBTTVxLDV5QHQFJ+LyACvCe7h6n1NU7PKeVMAAF/UvKw++YHjQEikEzST0dHCMkpv1fXA8M/9Puwt3yNZ+FhXv31nYgAwAP/vt+LMvn66sgkE5LJw7aRMwGCAAQIAQL4MGXeV805x5BSSIRAziSnnPPD6BIBwhgVghOSQwgpfSUgIQ/r4Kf9ka8EgZ9hHgD4avsCeJi6D4/ff/OfaJnknFMmD3vOV8bKTwcMwaV//7/8+xcvXvwcaWu73S4WiweRTk5OPv3004fy/X7/B3/wBzc3NwDwH/7Df/yfv/fvTlZngJRz7p0BnxEhIwBjohBdP0zTVFcVRdB65JSrukw+IEGCdBhHWYhZO6OUci5yhnEY9t1uHHo9jZRiKQUgjMZQpEJIo42QQojCal1VLDj79ss3JKMs6qadrU7WXd/3Yy+EaKqqrmug1IUEgHVRlGUplWqq2jrrrU85UQrH4/7LL7+8vb3LEb/9re/MV4uyLJt2YZ3d3l1775bL5RdffH5zc3NxdlqW5cn5eSJw2B9SjEN3BARKWYp+NptPdvLRZh8polSyns1CiJM2JCWlipST0dN+c4cI/XAkgE3d2ClM4yQlK6syA+FCAgBF7Ifx/v6eEFI3LeNcFkpKoY09Hg5CSqWUEiK4QGL03kx6JDlprZ13dVlVVUUIGGPGcQSAoiyePHt22B/6vq+b2lmfYkg+csZVobq+m88XbdsqpaZp8t6rQnkfrDFCMqUUATDWhRhTiG1TnaxWm9ubzfZ+0uNitV4sl9M4Vaps2+p4PEipuODLxTKmcDh0hSpCDMbaTEhV123b7Pf90E/GmRRjXdeU4t3tvXN2uVwWSg7DaCYXU65Kdb+5q2ez5XJFMly9uaKUUUZnyzbGRBlGFyDGup1td/uiKBijRttj3xPGlVLH/X6/3yOlbdMypJxiyHHQNqTMEauqAMxajzmB9SkCkYJCTt766MOkXVlXUikCCDnHFAmANpojaZui5DyR3I8jRSalstpPWo8ueu9TjoRAiilnn1KMMRGAlFKIMRMSU4o5kJwBmXXO+ZAJcMGEkJBzjC7FFGNKOQEgp8gZicQn4ggEKgA5kpy5pKJhrIyyBlUzWTDOM2Qy9mY8mN3N0G91NMxo0vU2mMg5nS/LxaqWjaqa5KMZ9wdjHMmZAcpCMsmQITJAzEiRMoHAU0wxeGtNggAIkBlnjDEmFaOcccGFEgAkQ84ZXEiEEKCICJTRlE1MiVJGCBCPKWYgQEI0k+567WL67H+7TTH9fA+JdV1P0/SwHY3jWBTFQ/nZ2dkf/dEfPfz+t//2e7/4i/9jVdV933POrXUppnY2Y4yPejTG1NUsp2itmaZBSjmfL1RReue00caYuipDDNfv3hECZ2enhCBj+Pz8SUwxpaC9nfSYUhBcWGNT8Kt5G0J4YLSc4n63nc0WJ6dnQGEctOSCxDgd99V61e1uX3/+KZfy+YtvXFw809bc3t7KQg5V1dRN0VRSKsH5oyfPvvuv/vXbt29effGF92bSx5hMCOHk5Mwt5lpPsih+8V/9Ugpx7A/DeHRjP58vxhRHPTV1W5als3azvR/HISZ/c3PVNO1svtQuvPvhZ1Lyqiqur2/6ri/L4pOPv3Fx8fT73/9P49iFmBgVRaEIoIsiASnLcrvZDMOglKyqqiyktXY4HptmnsAD8porA/T29auQY1XXdVktm5ZxloNIKfGaT6OhKOfL00Ip7z3nnDLOKI7TIGXRNK1SarvdmmEoq4oQQMTHl4/7vvfej+M4TVNKaYnLslCl4pTxsiyHYcRkTua1lIJzcXF5ulg05bs6xtQ01WKxKJQc+s5aD8iMMYRQpJwALatmNptRSo9dN/T9NOj+2AshT9ZLrY21ThujjWFMINCx1wwlIaKd10VZ7A+Hop4zXg+DX5+cfOdfrOuq2ux2gzHeDtPknjx+zBlfzNuybL33lNLlgl1ksM6Pw0hnUKkqRn9++djHOE2T8+788ilFTM4ig2HsgrMJESFLwetK+mD6FAiVlAkmy4QspZydFgxjiG1VN4sZyTE6H2KUxawqy2kcMyFSCFmKnFMMPnoXvE+RxEwzl0A5iSk4HYNLKeUkACFn4jn1WSVEplROOdrgCQaIOXtGERkDknO00SVEZFywRAkhICnjNOUUIwkGgxd+l5x1Tru+M2a0weWUREiJFXgxnz2+WK9PWlUxYOB9mJz2WJy+XNWFSjEG713wlFEAGkJ0zjvrXEgAoLhCKDJpCSYqAJEgkpQTgcxQADBCSAw5hZxIzpxQoDlHFyMNgJgZEXFKQ68n6wmySlYFlySSeaNkXV7V/X/7hPj/AW199NFHr169evXq1ZMnT/7kT/7ke9/73t+sE3z44sc/Oj89b2ezTLIqJSFgnR7H7njYx+BjjMM0DsOAFOqqfvXqi2kcq6JQUlqrx2F0VofoAdju/rqsa4IIKUtBY7CAyBm3PjbNLMd8++7t/fVVSIEk5JRVVcVACOS7zdbYHgitVOGNLqWcxs44U9cVyeT++spO03x9Mp/Vepjutm+6olifnxKE2WzZtnPKxPnZo6paHLrd7c3bYTLWpJyxXc13h/10944CCIKMsaKsjDGT0edPLj///PO+PxKShOBKSc55wWRTtwjUGjtNhnOeAQ/dNG9X6/mpt+PN27d1XX3jo09+9MMfaedEURRFkWN2zjftQknFmEJKb25vur6v6pJQYsepOxykkmVZ5ZydsyerZT8M3X5PQvDGSSHapk2Qh3GaLRb77e54OPIVPx6OD5a5EKKpSsmZ0do7U1ZSclRC1XUTQ5KymC8W3mtnaVtXjDHvA6NYlJIx3rbzk/Wp8x4AlFKMcwK0aMpPPl7e392N03A86gSsWZ/JyTLKpmlMIfoQjvvDsT/0Q9e282N3dNrN5zPjzH5/6PsJkXEupFSU8RjiOIwu+M2hA8oqZAqwLivJecg4m805Z8Bou1i4GLkQTy8uC6UOx24wU52zT4kgu3j0aJx0Sok6F1KsZs18NhvGXsmCC/7u3fU46OdPP6rrSush57jbbgpZCy6s85PRlxfL43ELhFIUJ1wgFYfj0Pe99dr6yJjKmey3ByBJIsYcQsj77YEASCWqukTMgolpDI4kxRHpLAFPQIy1k9HRe0EZCk4QkAKjEJ0LMdkYY0zOx5wizTGlIBlFypwPMQfIkQmOSEI00bqcCDFAGUMKwABIxDymGH2MEQIisEqoBa3Koi3Ecl5fnC49ROfdZMxudzQ2pAw6uu32iA9WHhfe2eBdiCln9I54HxNJlKFUTAgqC0Ep8wEBgRCS3p+WA5BEHhzZmWRMESJkSCHlGIOLfvR2ss4E74kPybuYA0ECiEApZZwPew2IP1/a+va3v/3d7373d37ndxaLBSL+1m/91t/mUyVNOytUaUc9aO1yVAXvjt3d7bu+6wopm8WibtrZYgYA+/0hptg0DUU8Hg8x+KJQTV0RAiGElJO3ehgH79x8XvfHfX/sUyTr9dlytlicncboj92hLIphmCCTum26rvcxllVJMC0Wy/licX133Q1Hzqgx03G3TznVdTX0u6vrt6er09ViMWurzLA7Hggh3eG4WK6W63UMabPZ7Pb7tmmM1vc3bze3Vx+9/PjR6emrN2/6aQzGTP2RcQqIy+VylcP6ZOlnnhBijBGKw1eeC8oYE4LnrJRiJO13u5gCUjafL0II/djP6vZb3/4feq37aarKsm3am+vrSZsYsw++bOpn5Qtr7KQnAFysCmeM884Gwxn30RnPzs7PY0pCqJizNoYzRjh9MPXXqxmhlCAyIau6Wi2XFKlgLKV4d3cDhMQUymVTlWWMGQuKSJummsZe60kI1TYzyvgwjOv12Xy5LKpKlhUBkgFyylKpFKOxhoS4PrswWk/T6L21OjBRciVZyt4YlhmXxZxRb32KpJA1Az+O9njsvfcpuZTy4XikSp6crNeLNaPCaD0MYyFpW9fOOK0NISArVVRVDEFre/XuuiyKxWI5m81SSmG/F5RNg+Gs8NHfbXcxxtVyEZyty2K+WBij18uVtdY5JyQfhwkhTdPg3MQoU4WakZn3XjbFgq+90+389PLiJRAcx945r4SAZHPVUiDa2FEPMRFGwSFhjOlJZwJlWUspCGbMwWo79D0BUFIAMiTg9GSnIVjDBa+qlknhYmBIg7bBuUQyA1pWKuU0TKOPlOcUvPfOYooUUiBBT/bBbwhAsiEZQXCgjDNKM9AMNiOhjJR1Vc9KqZhStBDK9NP11f7zH1wdRh1TYoIxBgQzZRQFPviuxl6HHFNA75KzHgkqoYpKqZarUiFHQhJAzgR/4uACfPDvkZQTyQCAJIPzxPscrUs2+tEE46OnIZAQHtyRhGRCSSIEScYYMgmRpL8/cAD/+H9c45z7/ve/P03TL//yL89ms79Z4d/8m//pWx//ciWLnBMKliEXvKAUp3G0ziGBmL31JsUIBIL3hGQAooqqUAUAGDtF72jOx2N3PB61tWVZnl2eT2Pfd13wPsfYNI1UsqrnlIub22uCkaPgFLlgm82WUfn48dM3V2+Cc6v1Sdd13juOtJBFUZchemMsQ0QmuFIhZoq0rRshpHZeSlqWRQbkXC5Wy9vbuzdfvrk4v6jL6q/+4v8Jfnr+0TcpV3oaT5bzset32x0Amc3nxlqkePnknAuRU0akOQMghpS643F7fzv1ndaTUtV6fTJ03Xa7PT+7uHj8aPQup5RS3G43m/v7umoWyyWleHd3t9lsPvn4E8aod/b1qy9y8oiYU0wpq6JExrSxi+VSULFaLHb77TAOnLPoQ6GU4BwQQwwkZ2ACkYYYOWOr1UopFQlShBwciaEsVFEoKRUQOmptra5KxQTf7bbG2MuLy8VizlXTLNaikIkQ71wKadAD4kPUgkohkBBKCQKmTDIBa20KGRka58ZxzDE6bZyZKFJtjPcOAKP3V2++3O93znlGqXE2AKmqumnanEkIyVlDSJwvloxL7ZzRmnGupCQ+DOMIjNVtVZelsw4Qo0/GWhKzlBIohpQSyYUqSllSxmJKKSfvfbQ6eRtjUkoxRo/H43w+Ozk52e8PxhqpFCDNQAHx9PSMUqSUUhIZ4rt312/evE4x1U09jaP3rizL63dXehwQaQiRiSLGmEgMwVGSpZSZkJRzJDnGEKP33nvvAIFRVvCCEAgx+hC8dT5FwnhZNpyrEJ0x04MV46wZxyEG74L3BB4c/4xSQkj0iVEmlCSU+uhdsAAeETmniIIQyCSE6FNOyBKXGVkiLBHIgA8RqhRTjiFlF2KImZCMgJIVpSqrqqikkIJzCkgIeQjEAgEKQAhJhEQAkgkCoYS4FImz0YxeTy6YmEx2xjrrU0jRx/De308A4SHGQMlDKAU5p1KxNz+++y//x5+9ePnzdMkTQoQQv/Irv/L3UVusakFIHIbBjEMO9iEISHIOIeQYc4pAck4BSFZSyLamwU0Hk1L0wUzj6FyklDZNuz4pZFE4bxFoVdZajykGF4zuRuOsmZzRY84uhFiWFaWYM4xj6A/D+enJ3f3dYb8xxhRF0bazw6HTMZ5dnFc1mYYROc8xba9vrLcZ8ouXHwspp9GPw+6w7yHTFx9/UlTlyWr59u3bjz/5xi//yq/+X//5P/3w0786OzljXFg/W6zOfcS6rpu69sHHGPpe9/2Nc26cxpwSpXh6crFaLfNioYQYxhEzRh8eP336/KOP9vv97fZeFLI7HjhnAHE+q5x2u7s7pdSj03OnjTP2ME3r9Wq1WA3DgSIBApTJEGNVNikNSpQx+ETI+uS0rMuYomQcCQAQBATA09PTw2EfYhBSIkIhJaU4jFMCaJrae9/1fUogZUkZnJ2uGBOHQ4ecPXm6NFZP4zTqsGxZN+y3X9zrcRrNBEiBAkMaQ2CUKaUKpShDqYqiqFRZAtCilKosl5zFFL2xwdjDbtt3fdPOu+PBOueMni9mgHm72RhrUk7WWDPp3WaDyDkTmSRkEHLOQAkBzrke+tvra5pJSIlQ3O23gqHWmmSYzRbGWOR8vV7nkKZRD33Xtq0UJWcCELSz1ruT5Wyydhwn6Lq+72OMh2EcjDdaIwIzvijL++2+aZoYk7VWSnlxcVowOh07O+jL509kVaWcmadKCgSCiMCQCmqM9c7nFHIMkMG5kEjmghMCmaRMABDX61PG2fFwZIwzxvq+D86lFIUQ7WqptR+nHpEIgUDAuZAxF3WltZZcFIg+BAKQU/LOAWOZ5ElPOZOQQkqJUGQMUiSMRQAgkBAJlwRYJDQC5pggkpxd9DHEEHNMFChXomjKuq2bumSKEAqAFCkipQQRyEPk/iEqiASQQGYQgeTkkzVeH6ZxMGYMziZvsvc++BhCyilDfggupgwZEdnDmVByJkVZsqoRVSWrptjdD+nvs6XYP0W6Rs5mmlLbSCFoUTZSYnLHvtfepxA5lVIJqQRBkiErJZDRFMM0TD4GkklOtK7njHPvvbPGTMPQH3wIlCGjvK5m3nnKqIuOMVbVLCfvXULBkPMQ0tn5RYxENQpoMmYajv1qteCCjmPHOR30NPbD8xcflY1JMQ7H7vmLZwzJoTuQ6PToyrZenVwuT+OPf/Bj791czOqq/va35l3XWT199OKbwbsUYt20J6cXQrGM4cvXrzdbMps1fddZbxjneppISiE4Z9Kr7gfv3qr1el2WpeAskpxinvRoDna/35OUlJIUSHfsgw/euUSI5CI5Z8bhZL3sxtFa8+qLLxbLhZS1FEJK7oMnhKiiMFYnb3OMOTjK1KxuqrIsywYpCzkZZxTnpSrKUhEglDJC8qydEUDGePC+bmophNZ6u9ullIqqTilmIM1s5klGQqinTdvMlnOC6ebNm7t31/vd3niXkaQYCCHWuhxzWZSzdtY0bTufl1WtiioTIjivqqpu6xwTY0wpeX6xrkqu9XSIU/RGcmCglFoZN8xoY110Lrx9dzUOIwJTqlRKUBAEUBaFnczUj867GKL1gSNG56lSwMR4OAghBqJtcGXNptEej8eqrGazVdu246QFYyGGuqprwK47OhuMjUoWVb2SSl4+unj1+Rdm1D7Fum3LCJTzEOIXr17FFJqm7sdeT1MKISu1OfbjzbWZLMlJj4MxmjFKEiGZWO+54JRKwfmiaWOMk9Z1XU1ahxiAYtvMy7La7TaPny5KVdRNfXN7q41DSqVUPkTvN0KI6D0h0boQPKFUUUqVrBjno55ijM754D0ollKMKUFMMWfJGSImSJASyTGHkClBnilPgCSlHEPOhEAiLgaCQIWQjShKWZZC1IrKh8wcgpQSpAAIgEgpImSSSCZICJIMkKK32rhDPwXtTW/N4KzOMaQQYkopPZwCEyAyBCCYuaCsqIqmKAtVVYUqlSoKJiXjwDhyToUQXH6W0z8D2gJC6qpqVGn0hJBjzJw3y/UMOedCxhBJ9sFNKUZrzNCN49AjJKQPCQ+qblpGWTccU04xp0SS1hMCRwKZkIiRUEIgQ8ophKooHTMkZgJUMuVyPD97JJV6+/atnfqSyawCAmvbZV1VwYXrm3vnAmPyk2+9OO7vvnSjFJIiroWajH7+9ImN4e3Vu5Pl+vHFJVKScmCc3N6+40wAcUUt28Xi6upq/+Wr/X7z7MWzqqovHz+6v729vb6u67Jpmu12Y62rq6ppGu9DVdXeexdjGnU/9KIQQnBjR2scp2ic3m8POeeyrEQhPAWUvJTKGxu8CSlmb2O0xozbjZVSVXVRNGUJMGnNJF+fnVRFkUP2zkkupVKcMU5ZAlCqcCEcDt0AQ9uUlGEIljEGiFwWqpkxAEaxFGI+W6xPz6yzAMAoCyEcj0evLQJhSAFzIYUL5ri7d3aCHHKwk7WTnqyxPgRrfc4gBW+quqyquq4X65PValWVIsc6hSqlJKSMRYEIStG2XTQ1746H46F/e3WljR6GURX1cnFCkNxvN4f9ISVnrG1JQ6ONJFE9QiKQwE42hiCE9D5WRTmfL0Dwu5s7KRVSSD4P/Xh+egEEnPOA2A8DR7aaL15/+SWJSUiJFNvFvGzqvh9yJlXT3G921gbBVbffAU4ZsSjL0fleW+fccZgEo0pIbRwAgePonQ8hUUTvkWQFhPvoZCFmiyrG+GB4Ms4EApUlAFRMMUYBiNZeaxcD8SEN2vTahggZOZPKx+R9bNs5Y3DY7QRXKYGHTDIpZKWkBAQpVD/0JIPkYtI6p8QpZsqQCiFViNG4PqVAckbkjAvkOcTJWpce3KucMplLVYlCsIIxybhisuRKiBhjApIRCWb64DmD95ZWIkBC8JN1k/XaDwc9aedMcJNPCUjC6LP3AZEAEmSUM+SSlWXd1HVVq6IWvCxkWQguuRCIQAhBYISQTBKB9wmGP/cs+X8QbSEyhGkYirIoq4pxPvSd12bsu6IsiqoSQnTToEcthJq35Xr1SFRlJnkae5Jj8D4Ep7uBQMScKGAtK8YppVDW9XK1fndz64yZV21Zqq7vpGClmnkXU4KmrGvVACVlUUy9Xp8/ueQ8k9z13WazPzs9e/HRJz6Rx09fSFX81//8f169fbNenyxXy8V6LYb+/vqGS7koqkqI2/3h7bu3+93+4uKikGXfdU3TDHpnfJfRr88Wp6dnCIhImVSE89X5+dj10YT1+lxJZYwWUqYQKdL1am2s88FzVaQYh6F3bprNZpwV89VpSPbdu3ebblitVlgoO46cABei77rLy8vLx+V+GMeuiyEg4vnjy5zR+3S2OBn0iDk3TZ2d77tOmwmQhEADidbZ4ENVlhwIyVFyLpR0zlHO7jfbTODyEW1nLVJuU3ZGT+OICKUqSIo5kaqoCOXO2VJJkpPWVklxfnKWgiM5uOCogRijNto5l1JOKboA1ms8bChi8eZVUaiqqc/Pz07PzpbLpbBCT0NbV6gUSaSuCyFwvpwtV+3Vu5uqrq5v7m9v3zrtIEbJadf3McUEHoGG+40Uqiyr1WrNOc2ZnJ8/pojO6bqpfE6XTx417SwlMvfeGEcZL8uac59StMbWi7ofx3Y+m7ROPgArjIvBJUROCNlutlprJQtETrm0zk63RghZVpWgKjEKhCTvbPApZqQ0pUwIBaAJiCrr5HzJhSiWhGLwPnOSYpzGEEVcLhZ9N8WYx2EEpE07Q2TWpYxCqUZPw263FUoVZUmRxpiZLIQQx+MuUUak5DEtpOKMIQFnbIghpCiY5FR471NITNYIUNYlIdk4O+opEAaCA5KUImTICQSvJJPAMghgpaCSZJIYRyE4F7IqSilkTAlyZIwjZwDIGWbirTPRROeiGbTptemttSlm6qfsTUyZ5MxSzkgpU7lopSplUaqyKotalrWUSlJKKUPOOKUKKWeMUYqI9CuPPjwkh1NGAfHvvbzyT3RIlEV99ugxIt7f3qYQZu1MFQ0yqpQMznImyrrNiDGTcZr0NN5v7jf3d23bKCVLqYCxsFg4GxDRugGpgxj0ZJyxkEnJuQBsZ7N+7FVRUIbJBy4KLovF8uQwdIQkBAAS+v1GymI+X9RlNYzTsZ++8c2n65NzJZVx9sU3v/Pxd74zDf3m9qY/7LvDfr/dcCHWZ2fTOJ6enK/XJzlnyWXyEZumrEpCgRCSYr66ukLGXrz4yAWXIS1WC46YSbKjzikJKYuytM4XtSzLIhMiizSOQ5wmq3VVFsvVPIZwc3M7aS2l+Jf/4pdCiO/evR3GUYrSWIeULdYrXhSL5VqWM/roWTubUcS3X741Rk92+tFnP1qulmYaXTs7X58wxlPOBDEBmbRmFItCzedzZwxnXKlSqqJqqPOBiZByHsdR66ksSyF4iMEZ7a095kwZbdpWCCEFDP14f7fJOS+Wy1zXpydnKYUv3euyqEjmIaccwwTEWhN89CYG6pWUBNHmFJ3V2lxf37Zt+9FHL8cVPm4AACAASURBVM/PL6qymIaxUHI2a4tCUQY5k9X6rGlnfdednazvb+/+4i8/3e9vtbEpOed8TLkoqkKW46QX8+VqtXzz6s3ZyVkK7umzZyn7q+t3sqrOz89zyseuf/HiRXfsU8qb7bYoiouLy93+yKvWe9cN09QPMXjBZcyJUowxlIXqut6E4FOGDJQzIRSnOHQDyzkDyFKFGE0MPkTKKCL44CjlQkhEqOvKThPxQTBBBWNNk3MWXCCA1mPXa85V3QiphLUOMAMgY+Li4lEMMfu4aFd121JKd/utD956zxCNNYSk6IOQslJFoWRwoUudnwYppeRiGsdo/cnyRKri/PxyuVq8ffNGG90P3fawIwS45MPQq6JYn6xCDCTHQnImGeVIuWzbWVFURVEuV2uSCaO8bhsCwKUgANH7w27X90drTXfs93rvtrfUWBg6SCYFqycNmJnApi7KpqyqghVEKiWE4EpRShGBcca5eLheAkAfrosAIMn4EBJEDIQAIgGglOLfm7T1T0RbFOnZo4/nq7X37uX8VBu9mLecUetMPxz2u/vN3S3jVCihp2k4HqMxgsuXz56IUobg7Thu7jeqqJbrk8PhUFZtWUkzjNJakiF4QhFOzy6qpr7f772znCISDC4CBCmYtf6431GkJyen3jmj3frsXCi1P3YPdxe803d373wIZd0oUb66/aI79s+ePtXGebKbpinc3i2XK2u9saNSJRBKGR+mXhLV1CvBGCXcz0L2aXt/J6W0Xd93fdM02UelBAKMQxdSXMwXxk7b/cYHX9dNzrksinXbbDbbUharR6fn509ijkM3DKNp6tlicZryndfTYrm00WSK/WRob9cny91+P97cnp+dn10+zikYMwhGc4rPzs/God/sdk0zE1LGnLiSQWvO6Hy9kkoyISXjglEuOACllEo1Z1wgheCs0RNBUgousYyFDD5QynJM/bFjDOZNDTlN4zh2++Nxt1jM12fnTdNu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3/lO27bf+MY33nrrraIo3n333e9+97t5nv/mb/7mn/7pn37729/+z/wNziUzjLVCAZfqLFe3b4tApu2h16HvxW67fvf9f5IgurJz2gnEYpwKFJGSUg0Ozm5d36w2u03btURkvPM+fPLJx5yFJJGfffIJeDw6OlpWm2fnz19//c0sH25268effLRZLlIZHx0e333ppTxLAdNPP/v8+cX5o0eP2q513lnjRsM8jtNdudrtdmmSRnHMEbumGU7GB7MZBYcemroEDkKJbqu3my0DAKJyVzEZp4Nis1oD4mA0mi8WZddZ8kCAPmuamhgfjSdVWRpjlJJN01jXE3hrtYrlk6efXD579tX/4Wu3b9+dL9bWhpdfeuXk8OS96P3NZn0wmcxmZ8+fP/PBrTfr3njt3HgyzothYFIp5axVkVJxNDw7ESC10R5gMhmnWSZY7Lw3NvS6v1leFUV2cbXgc+acC94kcSyjKEnTPM9Hw9FoNOKcI6P908KAlJKMCYYvdnYBQiAKgIH2e0uxByOgfTwSVnXlveecl7vdZrPRuvc+7KpKyOjo+CRN0vli2bYdkt9sV11TG2tvrq4BodVN0zS61yEExpkUkojIByaiPJGMseV6SyFIVSDDn3/zF37259/80T++lWCc57M4G0wO75zefnR0dHZ5efPRRz82phK8DhAq0/3Te+/pvpNMFNnICVmp0jmrlCIgb+ye3++qerVaPv/0yff+8j+dX12vq8p7MtpGMlIIwFExMRuNDg8OX//ZL997cP/WvTtFlidSMcaIy6orL87P3/nR23/713+721QW8ehw8jNvvJalfLW8GQ5HQoi2bbMsk1JGieSMOWeDD4jMB7LeOeetMUTAOEMUQBSCJ9rLT7iQkZSADL1zRCGKMxQEgH2vZRxb6wbDcZEXcRxXdVVXddu1wdgQfNfUWve6a2zbWqt759Ms7Yw2xvTOKimSNKkqzzlHsUXk4sULIATwMokSn4FmhBTFUVlXug1MgXOmaRutu973gMiYAAguaN95BsgYASLnKARthQOqAQgZRZJLwQKB855zLqXkgshvvfdc7GWxJARjyLpWV2VvtQPAatPhv7m5BxGllHvA2n9//PHHX/nKVwAgTdNHjx59+OGHRVHcvXt3Py1+5Stf+d73vhdC2L9GFovF7/7u797c3CDie+998NprP3P3XpZmIk1i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Bx0jCInQjdSGwjCYmVnIjKNlD8Qz8iV8p9bxbXKUwciezXsqVFBnHuEVGv/KZmwgXh740+PAbmdZKg7LbNmilrXcoIwZuJASFTtT0FoJQcWgSi21p7SvhZQOuHAut9YyMFFxEjro4zhw9iFRmKEh8szhxWeeOLhiCv+LWW0RUalU/p//47vj4xPAbxPAFkLWM+rTQlvmBn1xl3X8y5KvZf9JPkud6pblHYPpQgPf3mXBhmOGH6dP89lT4ScKKBEQhCAhiOGsP8uv2+l0v/zlL999552et1wTpbPkHGeLTM78F5dNCP53ys1iQBwzO7diZ7Dyd7l52ZmBRTirS9AZ16ezwzwTOTPj2YvvZSEKIR06dOib3/rmnXfeafKczxqYAaNyebiIaPA2sBDWnHkzePaAIhRtGmzhkMVnLlluCHJ231+GgfvCIMaiY/uPGxkjnBlaxjN4O526GAkp5QP333/06LHf+73/HifxiuAZz9zbP/7sBdVcEK0IpH/spfkdmwd+h3rtHR/4O97VT7j6rJ8G7Tacc8zL3bnOxOZ53l133VWtVm/5b7fkWf5/pgfmsyfY26J7577of/Pbd3wsP/7DYNs3+AfeJreCZb5bMeBae7/7u7976623vve9VxQdKleexLE977zzfsGbRERUSu15z6UTExPwrkCv1xsdr13+3r34n3DYOCegPDE6Vrt450XwbsGhN9/ITHbxrndPRFNTUyMjIxduv/BdE9H4urGLd+24ZM8l/zeLof8aKfXZCfVcRxHLuy+idxN+Jl/xnMM7Fy//P39M4utf//rP+82NjY1ddNFFSql3x1gT0cTExPbt2989qy2lNm7cuG3btnfN/RAEwaZNm9avX/+uiahcLp/dH/5dgFqttmPHjp/YEPpnr4TefSl8DWtYw7sbtDYEa1jDGtbS1hrWsIY1nONpK0mSXq93zg0NMydJ0u12syw7+/E4jvv9/tmPGGN6vd45VNhm5jRNV+oDURRFUXT2BWma9nq9c6WAEEVRt9stukwV6Pf7cRy/M6JzIpw0Td8265i51+ulafq2qN82D1cVrLVxHJ89zX7iTMuy7G0zzVr7zpvuJ8zgnysefvjh66677sorr/zjP/7jOI753ME999zziU984tprr73xxhsffPDBglL0L//yL1dfffWVV175h3/4h0mSMPP09PQnP/nJ/fv3f/rTnz59+vQ5EdrXvva1yy677OjRo9bav/qrv9q3b9++ffvuvvvuwpj8scceu/766/fv3/+lL32p1Wqt5kCSJPnmN7953XXXXX311f/wD//AzFmW/fmf//n+/fuvuuqq733ve8VlP/rRj6699tp9+/bdcccdURSt2nCccw8//PCNN9748Y9//Oabb3722WeZudPp3HbbbVddddW11177b//2b8xsrf3Hf/zH/fv3//Iv//I3vvGNLMtWWyDW2u985zv79++/7LLL3njjDWbO8/xv/uZv9u/fv2/fvu985zvFZY8++uj111+/b9++L3/5y0Xympub++xnP3vllVfefPPN09PTP+35f75pa2Zm5uMf//h99903Pz9/3XXXffvb3z6H0tZzzz330ksvxXF8//33f/CDH+x2uzMzMx/4wAceffTR2dnZm2+++cCBA8aYG2+88a//+q87nc7tt9/+uc99bvXHdffdd//mb/7m1VdffeTIkWefffbqq68+dOjQ4cOH3/e+9z333HPdbveXfumXfvCDH9Tr9VtvvfXrX//6ao7l7/7u7z7zmc8sLCykadpoNIoM9bGPfezEiRPPPffcFVdc8frrrzebzQ9+8IP33Xff4uLizTff/N3vfnfVhtPr9W644YYDBw5Ya++6667f+I3fYOY/+7M/+9SnPrW0tPTAAw986EMfajabr7zyyvvf//7p6emjR49ec801//7v/74K09b09PRLL7102WWXvfrqq0WG2rdv39kzrdfrffSjH73nnnsajcatt9565513MvPv//7v33HHHe12+6677vr1X//1grH8Tvx8N4lHjx6N4/iqq66amJj4lV/5lccff/wc2iTu3bv3kksu8X3/4osvLrpXPf/888PDwx/+8IcnJyevv/76J598cmZmptVq3XTTTZVK5TOf+cxrr732tjXwasP09PQjjzzyO7/zO57nOecef/zxj3zkI9u3b9+2bdvu3buffvrpY8eOaa2vv/76kZGRW2655amnnlrNW8X7778/DMOvfOUrX/rSl+r1OgA8/fTTV1555aZNm/bu3XvRRRc99dRTL7/8crlcvv7668fGxm666aZHH3101UYkpdyyZcvc3Nzx48cXFxd37doFAI8//vhNN900Ojp6zTXXVKvVw4cPP/vssxdccMGOHTu2bt26f//+xx57bNXVnoh27Nixa9cuIUTxyLPPPvuBD3ygmGl79+594oknpqenAeDXfu3XarXaLbfc8uSTT9br9enp6U984hPVavXGG288ceJEs9n8BdS2ms1mEARaawAYGxvrdrvnXIUrjuM/+qM/+tVf/dVSqTQ7O1utVovHq9Vqv99vtVpBEBSUtLGxsTzPV3OMURR9+9vf/uIXv/ie97wHEYMgqNfrIyMjxW/HxsZarVa73a5Wq8WNvW7duneWVFYVXnzxxePHj3/1q1+98MIL/+AP/qDb7TYajRU9xujoaLPZrNfrK72Ka7Var9c7uwq2quB5XrEe/O3f/u377rvvYx/7GDP3+/3x8fGi6DM0NNTpdFqt1gqBq1arFfl6FeLs+tTCwkIRRTHT2u12vV4fGhoqHhkeHo6iqN1u53keBAEAlEolKeVPC+3nK+4plUpZlhljlFL9ft/3/XMuZ33ta1/btGnTV7/6VQCoVCpJkqzUTbXWQRDkeV4U43u9nhCiGPTVieeff/773//+zMxMFEXPPPPMF7/4xZ07d66Urvv9/oYNG3zfX4mx2+16nreaecJjY2Of/OQn9+zZs2XLlh/84Afz8/PVanXlmyOKojAMwzBcWQInSaKUWlkCrDa0Wq2//Mu//Iu/+IuPfOQj991335/8yZ8cOHDA87ziMAERkyTxfT8IgpVifBzHYRiuznBW/CeKe2flSKTf74+NjYVhuDL30jRVSgVBIKUskl2WZdbaSqXyC1htbdmyxTk3PT3tnHvooYeKRe+5gna7fccdd/i+/6d/+qfFgnHv3r2zs7NvvfWWMeaRRx7ZtWvXpk2bnHPPPPNMsWGZmpr6aQO9GrB79+577rnnC1/4wqc//enNmzd/6lOf+uhHP/rEE090Op1+v//CCy9ceumlW7durdfrr732GgA88MADO3bsWLU3OQC8973vffXVVwHg2LFjQoharXbppZc+9thjSZIsLS29/PLLe/bs2b179/z8/Kuvvuqc+9GPfrR3795VG1GWZTMzM6Ojo4g4OjraaDSUUjt37ixOhA4dOnT69Onzzz//0ksvfe2119rtdhzHjz766BVXXLFq09aK5H3Pnj1PP/10MdOeeeaZPXv27Ny5s9PpHDx4EAD+9V//ddeuXZOTk5OTk08++SQAPPnkk9VqdWxs7Cc+889X3DM0NNTtdu++++6HH3640WjcfvvtK8vC1Y9vfOMb3/rWty677LLHH3/84MGDF1988cTExPz8/He/+92HHnpoaWnptttuGx4eDoLgrrvuev755x955JHbbrtt69atqzYi3/c3btxYaETuvffez3/+87t3737ooYfuu+++e++9d9OmTb/1W79VrVbjOL7rrrueeuqpQ4cO3X777evWrVu1EW3YsOF73/vewYMH77///uLAemJi4sEHH3zwwQcPHDiwe/fuz372s9VqdWlp6e67737sscdmZ2e/8pWvrNpJqLWen5//p3/6p1deeeWf//mfb7jhhve///2bN2/+/ve//8QTTxw4cOCGG2645pprRkdHp6enDxw4cP/99xPRF77whVW4xn/ggQf+9m//9uGHH56ZmUnTdP/+/f/xH//xwAMP3HvvvRs3bvz85z9fqVSKqsWTTz55+PDh2267bWRkZGJi4u///u+fffbZH/7wh5/73Od27979kxPiz7s8ycwvvPBCu93es2dPrVY7h1Zbb7755tLSUhRFzjnf9y+//PIwDJ1zBw8ejKLokksuWakKvfnmmydPnjz//PN/puHG6vlWP3r06JYtW4Ig6PV6L774IiJefvnlnucVF7z00kuNRmPHjh2Tk5OrPJZiJTU+Pn7JJQMvgU6n8+KLL/q+v3fv3sJCh5lfeumlZrO5e/fun/YFvkrgnHvppZfq9fq6detWbtqFhYXXXnutVqvt2bNn5RM8ePCgtfbSSy9dqbeuKhw9evTYsWNBEKRpOjY2dskllxQr+rfNtJdffnlpaWnnzp0r344nTpw4fPjw+vXrL7744p+6jlvTJK5hDWs4t7Am7lnDGtawlrbWsIY1rGEtba1hDWtYw1raWsMa1rCWttawhjWsYS1trWENa1jDWtpawxrWcM7jfwGeqAmjtOtTxwAAAABJRU5ErkJggg"},"metadata":{"needs_background":"light"}} ], "source":[ "subsampled_image = image_array[::3, :, :]\n", "plt.imshow(subsampled_image)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Our poor racoon was squared vertically. Let's restore his cute aspect ratio again. To do this we'll also step in the\nX axis:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We'll now take every 10th pixel, so that it is easier to tell that we've obtained a lower-resolution image:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1rkgfo4m4evj1" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"iVBORw0KGgoAAAANSUhEUgAAAYYAAAEsCAIAAABIZYM6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR42uy9Wcxl13UeuNba+wx3/seq+msmq0gWWSRFUpLjQZZEWenE7jTSMRqyEijpBP1gP/nFfvBbjDzlzfBLN+A20GjAcAw7aNuNpCVbSkuW7NiiI1OUKE5VrLnqn4c7nXHvtfphnXP++w9FUnPSqIMCcXn/e+/ZZw/fXutb31obRQQeXY+uR9ej67+Oix51waPr0fXoegRJj65H16Pr0fUIkh5dj65H1yNIenQ9uh5dj65HkPToenQ9uh5B0qPr0fXoenT9iCEpyzLv/aO+e3Q9uh5dP2ZIGg6Hv/qrv/oLv/ALn/nMZ77xjW886r5H16Pr0fWDvex39enf+Z3fWV1d/b3f+70/+IM/+M3f/M0//MM/bLVasx945513/ujf/5EhAzCrwERjCA6+xczCAggg0Mg1EYGoQsmZNxEA9T0WQQABIKT6PZD6h0VE9AMzd0JC/RgiIiEIAIJ3Tj+DiMaY+qN127wXEUBtERxqT9MmASBERAIAERaR/Z/Yv6T5CgACCB7zGUDEI4+jXdP8St0b9dcREWdb13xupjOPa897X/W3j/2eHPzk/gff6y48M46IqN9j5qbPqepAOfqMgPuvWWR/XPdvWPUaIlVDMjtSCFR3kRwZx0MDcczd60E4/kLA93xwRHiPvnzoj75nt8vxY3FkisoxP4m0P2GwnmzOeahnMhl66MPCzNzGo7PgwLszK6V6OTu41coVYOG///c//dGPfvT7gqQvfvGLv/7rv3769OnPfe5zf/7nf37jxo2rV68CwNbW1tbWlrX2C1/4/P/+v/4fLz7/Eedc/fxYFNlffvUvBMSg6cQxADjnrn7oxdPnznnvEGlpZQURjTUb65vvvHPNGCMCSwvzYRCI8O21W957AenG7dNLy8KMROu3bmbTKRAZY7qLizrLV1bOzc8vee/jTmQDIwLMvPpgHQAM0cbm5t17d4mMgPzj//EfdztdMvTgwepXvvIVGwTsnM9zQGTmj/3Mpwe9OREpfbmXDBGRmU+cWOp22yzCzNsP7oOAMebe2v03rr2FAJefePLUqRXvPAAwex0sa00UBSKCiMPNjbIoENCzH00T1CVqFPZwfW0tTTNEIDIL/Tn9ehi3bRjrWPYHMRKKSDLOAMAY2tjaunX3jiUCgE4UI5EId9qdc+cvMDMh7exuZlmGCOKq+SAgDpwOpTGmmaDGhjpvoijudHoC4IqUy0JnbmADBAABE9ioFYsIgNiw1WBxno11kxGX6dSsMB3AWnv+wgW93fbu7urGhm45H33xI1EUIeJoPLxx4xoidjv9xcVT2nWj0ZQ9A6D3xTTdRkT2fP7c44PBAjOLQFZoDwv7BACI6P6D9b3dIREh4unTK0hEiMPR+N7quiECAAxIn/fk/DwRIWDhytF0ioAC0uu0A2t1S3OF00U7zfLMlQDQCaKQbNWJxACAROPpdHu4p3halg36IGIAAJ65LKoOZOAZqKgYj8I5x14HgOp1m3JRDX1AgUVdzzacAooI2AjiLuji7g+sDUAERlnBLCLQakcnVxZYBARsC8gCCAAj74YAYCzdePv+gzubxhoAGO0xs0Rx+M/+5ctkMAjs9et3XnnlW4G1AOD3kQtDoxCB7FNhB4CuMCConRC12vpJjxlDoR2weOIUIglLt9M6sTRXsrvQPXGiNeeFAeSNO99xzhmL3/nWnW6n+31Bkvc+y7Ll5WWdap1OZzwe65++9KUv/f7v/z4RPXjw4PJjT7z4/EfLsqhsFsQkTb7z2usiYsku9gcAUJbF1aeffeLK064o0dD5S08iURAEN2/eYh8GQSAi58+sRFHEwvHNjvOOhee6/SfOnmNmIrpuwunuLhqyNlg8fw4AvHOXLj1z6tTZ0rn+fCdsBcLgnHv7jWsAYk1w+85tYGMDKyKfevkfzM/PGWOuXbt26+a9IAo5L8okAUTP7md/8uXlpZPCkrp8dWdNIeniY2fn5wfMzN7fv/aOiAQ2eOP6W8PpBAGfu/qhxy9dds7VWwOKQBBQuxVpJ2zevVOkGRI657f3hghCRBQaADBkrnWujUZjQrTWrCycUqMg7g7CVkfX9smVPhGK8Nb6HgBYY27dvZdmhbUWAJbn5owx7Lk/GDz99DPaRaur96bJBBHBCQoCgBc/ySY6ZGEYNuahDVra7Ha7Mze3CCB5Mi6LTNdwK44REARsYMNODAIAHMY9IgsAIj7LhmpbQjFVK7AoSvYeEIMgeO6557TBd1dX375xw1gLAB//2Mc67Q4ibm1v9tohIi4snDh/9hKzB4T11e2y9ADofDocP0BE792zV186sXTGswOBJBNAYHZZtqd49+67tzbWt40hRLx8+TIRGaKNre1u94Y+po0DtZcvnjylcJxm2dZwiIgisjAYxFEoIiKcJ5muxmGWJnkOCIOwHVEgIICAhhUEt3Z3766vkyEAKPMKPojI2DYilEWZ5bl2oAeubQQB9IpcaZkVroIkW5uB4yJRSGrFJgqNIlkY7wEKC4QtaC+AGotLyzaKSQTW9xLHIiy9fufi5RVmAYFogCYEEUCPsNUGgCCwxloEtKEBgPu3M1dypxf/7KdfsoGNwqC32Lm3vhpGIQC42swixHYYqRXlyolwAYBFasUjAJAxrW5PAavEsYccAJHw7LkLSMTMC3P9C+dOFa54ZuH8xd5Jx15Aum/5whXWUpa4MIq+L8eNiIwx0+lU4ck5F4ah/umzn/3sZz/7WQD4whc+/2/+9b8tscglO3P6fLfbF5GyLP/JL/5PgJBnxZ3bt5DIe4+BHU3G3ntAvHHzTTUa8jy/cP6kblwMRZoXIjIajUpXiggX5T1AtfmjhbnW4kBAN4pcraT1vfUSchZ+51bqnBMBGwTnL14CRCS6ENvB0jwRicDNmzfu3rUAkKbpSx9+Sc2ooHbr3n73jTevfQcEgjhcPn2KWUTkwYP7m5vrIiLMmxtrao3OLS//83/+r1hEPANIYK2w3L59m5lFJG5FC3N9haTd0bDIc0Rkltx5RMynk+2djWrZt1orKx1txuJ8X2evp4CxcnCuXbvO3gdB8MJzzxMSEQ7m+ydPLRIRIHzzb78xGaUsIuB397aYGZGG4900SZBwb3O3LEthWVhc+Af//c8rYN2/f39vb09tFqs7oUgQRHFgBMR22tKKFKeGu3vMzMwLiwtnzpzRyAai1SHL0vTezXcUNZLptILv86f7C11WLN7cBAAW7ra7L//0x9SPi4IA2ANiZIPlxdPWmDTLX/v2a4QoAMtLS+1OIAKeY8BlBBCR3Z3RZJyJCLPce7DFzK1W/Mwzl0TYWsuesyxVrBmPx0REiEVZtjsdIgTEyWjknQeEYadnjAFAZg6CUCEpy4oiL0FEPXkAIMIkKUbjMSIGAyuxqWyovFBwidudq08/qUg0HmaeGQGzotjY2iMiQA7DioJAXwGWZz+ejrEynaBxRCd5DgCI1O101QXyLsuTTB1DFAIUECgF8rD6zo53ZAAAOidjtCAMrXZAVCIKIu7cycrUIUGZy61Xb+rjbG3uDPdSNet+8TM/1263PLsv/OnXQIQMbe/uIYJ3DgCiVqyNFJY8SbQV7FjEgGAURUgEACaw88s9EAFANhGTTgyIe4F6rSWmtzdves/ki51sx7MXkP/0d9/IspwMvPvu+JfIfF+QhIhPPPHEl7/85Y997GNvv/32zs7O2bNnD33GOScIgsLAvbnB0uJJz168DxARcTQe746GRMTMaExeFiwMAvnuRGd/GMYL830RBsC90dB7JyJ5niskGYDRcMgiInLizKmoEwuLc364tqV+wzSbmikDwOrq1nSSAkCr3b7yoRcAERCiVrwwN6e29NramnNORKIoOnfunPc+CsN2KxZmMub//dKXh8MxAPT6/RNnTokIIkynY+9ZXZVhMgUQV5ZPnDr10Z/4Sef5zs0bW5sbhoxHPxqNvPci4stWJw6ZBRGzPC+KHBFFgAV0+m5vbxOR9/7y5cu9Xk9EDFGn19K4Q1pi7isffWd7pyiKVqu1vLhAhgCw1Wn357oIiISvvvK3WZaKSB4FWZYqJOV5lhcZEe0Nd/MsZ/adbvvKlSvOOWttURRFUVQWBOriEWOCMCBhEaN7I4jI5vqG916RaH5+Xi1BdsICiAjMyXhKBsvCDSdTxaZLl8Jer+e8F5EkSQCgdOXiwtKTj10qvQMA/RMihkHY78wFoU3T9bW1NWOMiJw8sRTFgQgzE0i/jvOmk4luh3z//n1m7vd7L774DDNbawHQe690VVEU6sGJSBRH+uao9Lol5IU3BgCEiIIgFAFE4KJ0nhVkw06gO7D3nGcFIpY9CQEEQAAKzwDAnhe6nZVTS7pBBjT2nhFxMpmub+7obyp/qjNTABCQAYqi0NVO1gKh9nBRlup5xGGkCy11uSu9mnVSoq5wNsBFBUlp6QEFAOYvBDZCYYhiQ0ZEhAxkw3y6W5DBPPU331pTu6z0WSmlwtyHXnxifqGfJMn/9tt/6Z0HELGCFkQYAAJDav250pe1/85MIgQCJgysNSBgQ9vpqyMPYsNqEiGEsVEUcz7fS0bCshkHzjrdp999cH86LcnA9s4+0/e9c0m//Mu//Bu/8Ru/9mu/9sYbb3zmM585ceLEQwk2AGb23jN79l5HoixLHUL9LyKiICAgGf2u7rHKVjScWcPjIiIRVSS2iHhWmwXrjyKibgLGGPVojDEND8vee+e0f9Xi0zs655jZOefKUkSImWjm6/uIXDHvIlVXEpEw53numXXFqn1ORJXTSqRtx5mroR/1cfRHRUQfHAGEpdpFZZ811AYTkWcWAET03pelm+2cpq8OXc1ddAgUixU0q/lUuxVS85DNEGgXNXdRcwkAuN7iRUR5U6TqcUUI6sfRrzd9UjrnvDtENrNUv2mM0UGpm6L/5WZHrPuqIsL0w81TzO6dTYNnqe7m7Yb4r+8FMx0Ix/zUEbIYEbQPm/nMzIjI71dX48jv7d/6SAhl5gUefAGAVL2uO2qGaBZAQjLVPxsYfXoPBK763aIo87wsChcElggBwKPnmmeUA7Q1Hu6UepaIaFBHqsCTjioeCC4RkqAYJIMGEQXEGhPYkgwg/SAibh/+8Id/93d/9/XXX//c5z734osvPqzTiYwhIywNJNVTH5AItQ+aFXA4zDAbUSL1hvTD1loio99DrNhKQrLGAAAT6N7YfFexIMuyqk89Q73SDq3kQ+80K0GE9d/BqaORI6iNW5YKRqudVHTdinjvy7JUKwkRyRhEFBZEPgQWzKwmIYip8BpAhGZ7Qxe+c56IEck5VzqnD6nrrX4KnUWoMKdLPQgCZjbGOOcqM6deRQAgBwakHhTEWTxSMtt7z54BoIpJItZcvgDuU+a6XGv0JKVC9eu+irVV8SoNF2g7tTe0ARWg8YEQkxobAtAgrG4nUhP2RKaOz9bLV2awoDad9BtEM4HKGVzT4WY+/NfZzmnWI9cA+sFdDZ1EOIsvMxh5NJgm0sRS4SD8YjPlQEBYvGMREUJddgDInuutBaw1FCgVCM65oiiLstwfbgIbGP1rEFjtYUL0odW2ulKYK7xD0hB2c3uQGVCcjWlaYwQFAesdajYIKT8ASAKACxcuXLhw4T0o8JPLK08/+bxz5Y0bN954/U0kJKC5/pya6yuPPa7LJ58mG+tbOtkXlhY1PEwYBWFL270Ud3SoLl+4rB/Li2I4GeqbBkVjrMaYZ688q1bMeLyTphNCkhO2KDwRJmn6b//NvxaRsig+9MLzL7/88aIoAGBu/rQxthIBWCsicRR1Oh0RIWN2Rlubm5uI2Et7J1fndc2cPn22Nxjo6zJLdcFj4bbv3hWRZDjK04IQmfn+vbtlWRLRcDR8sHaPiJxz/+Jf/i9nzp5l5jzP7t+7TUSdfhQFFgkNmW+//s3dvW1EDMPoypNXFTJOnFiem5/T5bpy6oTaHV/86td09e7t7W3WAayw3ZrvtESk0253OjGzGGvffH179cEqAv7Df/QLi0tLIuKc++IXv6Sdubu7O51Oq/7vDWpbBo1FZl5YXO73B3rrpRMn65kk3/7ma1UUNZ8qGHnv8yJl5sGg//zzV6rgw/Wb77xzHRBbrdYnPvEJ7ec8L1597Vt6o978nO4f02ly794qIUZx/MSTV0BEEDbXh87viEgQhHPzc4qM05zzotSvXzx3HhDzIv+TL/wnNRifuPj4Sy/9hNqqWZaKABHlhS+SXLtoYemkwuL6+rr3XgSi0PS7LfXKx0leekYARAhstQOVJYVBCwDGk2Q8zeroJFfGHUhR77XouIbIIgwMIor37HJdewY1QgUBwKDTOhTxFBHS3VokreNFnlkg1F6fTgvlkkzG2bSKnyyc7YWxFYF8KmUBCDjcnL75yi3Fi+Fqnk8dIjBDnjoAyPPin3zmH3785Z/MshwA/s9/9+8myVQEhtsbAFIW7qlnH/v4p14sSiciK2cvBGGkpm6eZwBoiN659e7O7h6RyaYjz9oMSN22wmsyKfPC61447+YAkb1fWTn1/LMfFpFbNx/cu7tjDImINXErJiQIgkSOQ6XvGpI+yD7QbHfOOUMGcNZ+Jpi1j+WwhdL8qTF5AqtMFHpmqgcShbH2ktTJQiRDRPXdiYQICTHPM2EpisLN7gnH3RHqd9TlbLzIQ9/CWkR0QJYy67GqJ4KgVpJCkraTmZ0zB9wqQEJkae6otkVNQMy0swrfeN+YIaVzFSRBoB2ORGofIAKzbpVgrdUgpn5Lf6qxkvR1fRcSgaN+ULP7+cpNxn0PbqaLtDHGEDM77xUsZq3RfbusMTdmfLPqEXDfI5htyawz33Seak2c983X309NVJmHIsBcjW/VV8IogHSMyTNru8i+ySYPMfM/kO4ID74+OouOSpNk31k+6kmCALBnFEQB9sysz1XxAN6zMSaKQv1f531ZuJpCEWZGBBtY7fUgsEFgoTJgAw0KW2vIIBEiKYt1QAF10MxUbaAQgkorKrPqhyGV/O6E4UTWWiIiJCVlkCgOQt2NM+YszwgJEZNkioBqr0dhyMIAWHBlc4aVy4J5WfiyqAMWFSQx03Q6UVlcmiRZmhKZ6WSS5yUS5nne7/ZEoCyLKIrYe6l9hEq9KVLmuYAERLoQkLnfHzjPhNiKWwIgiILoRRx7YWaWevajZz+dThV8KwJGJLQBChJhHEWddpuQnPfJdLq7syvC6sqBMADGcQyAyqEoBBNSw+w45/I8n2UrRERjIowEAlEYqvDMO+ediEhorU5HRh+GYavV1h0ySRIRcc43i1m9OX0dRaH6OyLqP3JzzahABQECY3QTUVIPAMBAt9sT5na7jWQIEYniVqtTlIgYRVHDGwIAGYIZSNJJrPYCInrnNdDuFZhFqH5qRFQHuaJaSYUx2Gm1AdGzt9Y2qK2jU21MhogIBOI4JmM0uNlYSVGkEg3InaBj3WqMqSkVMZW7yhVnBIgWDQAgCtTOiOqw1JFnzxWhxihHdLBY6XaVcJglXKoP+1n/7gA/W0ER7gNr5Tu7jMkCALqc2QGSoioIIIgg0mChAwBxHoQReS4YSgBAEjQCgGEUAgiiEcBpkpWFE5EszT2DMg/TZIoAhFQUpRJGIihCh5CRkHRqYPUsIgh5Ue7ujABkMk7TpKiIYCYQAqlNxx86JCHUuzH3+32d9ES0OLeoQ3Jed/Uw+n9u/8fX3/p2GAQCIFmp+//y8vLly5d1a71x83qWpYj45ONPaJSaCCmqA6vMjVe8sbFRDR47YDZkrt24tjvcRcRWq/0//MIvVr4eyXhvRz/Z67ejuIWIw929d9+6Bijzi8u2FSvt9Uv/9H+2NiTC3b2dv/r618hYEdnNkkS8iCBgv9MBACKzvb3+2mv/BRHOrFyYHyzqQjq3cqaaweyfvvSYLuCvfenL48kEADrd7oc/8mHnXL/ff/bZF5jZ2uDW7ZtZmisr732pjVxbW71//542fjAYqDmzfX9NJaD9fv/KxUtqd3z9b/8ySaciMj83v9Jf9OwB4Pz5x89duIyI167dzLI3AaDTaT9z9anKL15aatbDudOnENFas7q68c7b7yJiGE4QSZ+iyPbUlOm0eyeWz+gd9/ZIXeBWq/XsJ54HgcIXu5Ndbe2LLy1SzR9PJnU4NY7aC3N69zzNaysJT5w4gYjJNN1Y29Iluz0ZOfYiEpdhUGtNk0lSFKXijnRAfe1P/tTPyCE5OIBqU4gIjZnkuUZ4n33uuW6nKyIbGxuVjgHEcKnLf3N7N88LRBThzFXSLVeC90BE9+/dH43GRETGzC2ca6yt6aTy5sZ7e2qQGmPmum0ALPMs9VlFG0WRqHPAvoWVN9fAmQBAq1JX7hWlWh42DKhidiQdbwuzCGCINiTdHSZDDxMBgPHaFIQVN9OiAr+iNJ5RRLrd1j/93Ce1/zuDeOLuCAkAmF5uqSQyyyuPqVHtffkXf/FNABSRy1tZFEUAkCTjW3euEZKIzC0sxa2WSFkWkXAtsq1CtdBu+zZVQ5CxAwE0eO36nb/6s78zltLUFLnR3ojCNkIbCKFM4UfjuL1PwsKMeB/VBp/xmGaDEYfCRnA0HHLEs4BDwS2dviLwHmTaQ7IqmojPBycsj33Yxj05SqgfMhbe59G+t94+kJTzPr/2PRdhb+IvB57raAjphzGd3rP3jhvT2Q5vQhL/LV/4XrkoM1FFea8HlQOZWw2ZcTBM/D3SOAcDnT8Ox03D1Rqg9d4joczEWa2xAmBt4D0XRVFNjtIBoPfOe0YkDUiVZanSgSaiD4iqvUdNWeDDwQ71fQwZdXn0dsYYREIAMlK5HQBRFEVxTIhJEGoch4iCMGTnRMQYa4wlQlKlx35Yo6YzZla4ilCqIBEfWCGEhNaqlcSenXNYk0FNel2TZCfCIjS7YGZBhJk1PtVgpT6dR697O9e3J6pcP5aKdWl+Uzky/QFrbM3dYOUzEomI9nmtwNJbq1xARRROuBqdsiwAQOOhM32j5qoG26rOORr/JkL1QkRQquwrBJnN6TvQ1UQoNcGn0icR8d42y46aBMbaYlKhhvPe1JHHoxzT/nbFyqdg7aVWiMX7pFFF5ShHjjN6iMPUGDS8jxyOoyMeiNUfQRGZAcljgWD/PUL1/RocEZGyKFUE410l8WCWMLS16M+GUTATMWQRDZ6hJsARqfMOTVS8mjzwcMpsBhD3B1rTpAiRcDb4+b7JfD8USCKk7e2dGzduZnl2aunEiYWlajGQR8A8z96+9qZOv7NnT51c+TQACshoe6eZGslkV63Hj770kTAMRPiVV14pigJE2p32yZOLavGeOrnSitsiUhT51tYmIiDS1sbueDgCgaeefuYn5gZKQ1y/cU1H2RoMbeW031vfQTJq/C8PFgR4d3vjwfqq0nJPPPl03GoBSJZlnSjSgemQjbBKdMrSRAkV9i4MAwDp9trzSwPPXphvP2AnnoiGo917d24TGQBYPnvqVHBeRBXejlDSdHLr1nWN8QFRdzBPSNbaTnegPbmztzNJxoqnFy9dCoLAeT/aG2mXpkXy9rtv6zwYDOZ7/QEIhGG4ubWlwfMwjMhaAOi023Eci8hg0L/8+GUWNmRu3765vb2tmLjbjqtn7HQ++clPAEiSTPM8C60BgEH3PAIy+8H84vnHK7e6KAv2XKmLNf1YANGqymGwuBDFLRApy/LW22/rMmPOfb3eJ8MJV7F2KXIPCEhk2y0QAYQgSbHW0oyGY0XrhcXlk62OiBBhf24ORIgQjQUQQtze3h1PEkJChDi2Cj7Gmqcef0yhwhK5shAQqrRrQIShCXU+DBakoxsG82hcm5YRAaAhM97d5jIjIkAcbm9r8kev1z2xvKio5MpSKXZLGAUoAAQGsaWrem+SuBpMrWapIUJRiq8cN4vVhtpuR/rceVHkdYyv3myg9JikFV8hPhFEALCUK8/WnWu/+MIlFbDubW0UWap74Ve/9oZCUtwKokjT6SDCtmlHgDBMdqsYX8FF6nX+by2Mo6gAEOfLuDtAQAFgtLkDEHTOS5M07SvhnhBqWREBSTYnIoAE6bh0E2KDULKtZgsQBAiAHsgdD0w/YEhSOf/q6lqapRdPnzu1fNI7L+J30m1EzPLy3v2bRORc+cxzL54+c0437Qf37oqIMWZ3Z/PurZtEhpmfvPTE/MK89+5P//RPRuORiCzMz/fboWdm5ujcxV6vLyJpmjSCp/FovLa2wZ5/5lMfv/LMU670SZL88R//XwrygaHIVEOyMXzbs3jvzqycPvPxTzLD7u7O9Zu31LjrdNvtTleEQSAOAt0EYzIRGt0xhoWmQRGzDwLjPcftuDNoq3aOQRgYEcfJ9Obt2xpo+5knLs8tLbHSktMpAhR5tjbea6J+rXYPEayxcayZJZb3dpIsVa1Nf34+juOyLMM4VFNoe3v7weoDDXKdO302CKyqioejoU7BbrcbhSGLxHELkJi53+ufXjmt7NXdO7en47ENAh0yjY6dPXv++eefE+Eb16+vrj2w1gDAwvwJRGLvF06cOHPxcbXyjDEIBIhFnt+9eR3IgGcEg4AC3O7PdXsDEMmztMx9BUkiXqoVNRpNdTF775OkAJB2t9NfWtDiEAYJdX4zJNNEt/2z5y8tnTjJ7IlocXEJAJjdaLiLAGTNOMk2tvaMIUKYn29rfHZhbnBm5ZTeKC2c96Vu3qKRQaIwrCCpY0Cq9rgin1ZrA61BMmTacZhHRlORhuOxGl+9Tmtu0PPeAcDOXoTOAYAlCAxrpQrEsDI0dnZ9USIiWYvdXpW24hC8U/KCQFMxJI7CWjCRFllaRXJqw82z5HlNb2dOWx7ETiUH8yfmLl295J1HorVbko6HiFQU7tVXbyvwhRYDUxW4OPv4chQbFr853BVhQPApZsMq3DkapVHsRQSNhHGnNuqo9EqIca0XQ5S6bgcC18qqbDMTFkTIc+YMVf5L2FQCsACIHpB/TI6bZ7xARWAAACAASURBVF8LygAAjbGNOLAoCoUk1RMzs6ry9SpdWRSF904dN8WsyrickTsfctyMMQjoncvz3DtflkWl8QUwhkwNSVEUeRbvNTpeqe+CIFTphDHWGCNCwuJ8CQcdNzniuFUWeyWrnHXc0FqrkMTM3jlmBmaacdxmfofVPKxdAJ51xZsQWMOG6NdrQXMTHZNGDl7JxqGJBEqtp+dGvtgoNhv/Tr1pzwccN6zcJu+dq1QIzGqsO1ce77ix12Y9zHGr3Q0Vi0rtuB0m/qquJo0GevUiFQhUGNU4bobIEDV0ItWaiRnm+xhHSWYct1nWWTd8BsHjHDeqHWFmOei41ZPkqOOm//afUd6rushDdd77lUZmqUwdPlc6hSTvvPeMCMwSBraCpABrLWTjuKm2ntTtIqoaqI5bJUzd1wm/n+MGM46bPm7juMGPz3F7GKf4/Xxsht7+IGZaNWwf4DfhuyTu5P0eR47Os++HIDzM7ot8V9kJPw6qFQ+QCv+VXf+/P0W1grv/xp/S/sBHvd1rL59acN6/8up/noxGSGSNuXjpku7Gz77wERBBwuFw790bbwMQe/+Vr3zZs3POnzt39oUXXnBlCQDr63e3Nu4ByCc/9TEWRgRXunyaqHwmSUeFSwDAudLECACM/tLT55+8ch4Ir73zxmvffFULDHFZaoT1xKlTjz32uG6tS/PLRAYRSu+H0xSJGM3c3KBJOChLp3aFNsYY+9df/8uNtVVDJgjDn/v0zyOhNXZjbfWNb32H0Eymk4WlBWZWCYz+zpNPXXnuQy9p2bbp3hbn0yqxIe6ACIVR3B+IiDX23oOvbG9sElG3233mk1d08Vx8/GKpXLjIa6++UhY5IIrz6jicPrXy4ksfUTPkrTffLPJMRObnFl547kPMHpE2t9aTZGqI3r5+M0lTERmNR9fvPlArSZCWlxYRyRjz/LMvNCrHZDoiIi8lBuqZ4YWnn7I21DzVSTIjL65URfTklccFKn5AOaDpNHOuRMS4FTz10kcVKLM0TSZVHvx4lHnvEFGkBPCImBdZub2lP7433lPzOYpbp86c1V1gmIwn97V2h7x98x29da/d1R8fTUaeSxZEgEke6F3y3fHupFCs3Lx/r8gzRLzy1FM2CADACauyGRB3hqOsKNV8fuqZF3XbiQkDAiJTCrc6fTVpWXzlW6XJrbffUqMpSyv5mBClkUXEoizTPFOfPHeFE4cCVLp8uNMYkjWBT725ZUDyvsg37ukMCXzBUKjl4QLbmDZcC2V73b6mH+xNN9UL2bw3/uq//6bWOHQ+03YKcthpPCaoY/ewdn9brb/RKBEA8Ty/NH/h6mm1jqNOUJmxSNYG9X7jABgAJKh+xTsZ7yS6B+V7zqWV37e9nlTojwRkBIDQNglttvYMiH40uiS9mSEDUpT5NJmqYFJVto2MWBeAcw6RvPdplnqv2VdOfTQA4DoeF8eRgCBiQVmRVImd6oWop91YT9aa0BCScc4lSaLPXEXrRDO/A+8JAFpxS5ndLC9Gaa52eOO/HBsaz/M8SabG2NA7qLM4hcWVjkjKsszznIURIAhauiS0qpSax9loWxPBGuOMiIyxImKsVakR1Kl8ddqRsbVf4MqyyHMksnUNRmOMqv4qrUPFqGEcx977Jk1XVTlVZQINajKrnK3RugdBUGeNHRNWN9bawB4yNBqCgwCttVVzKVB3NU2LRmVtg4ofMWVZ56DBTCba/mbWeFgszFXwUpBIJYIsAvWCzMscACzbulIK7ucJzwwZs5SuRpA8L7Ks+mQTHatlnN5XidNKtGkXWEJLQMaoI6+QVDvdVCB65xSShBnkkAdXVUCtJS/avuqOB/QZ+oxIyASzb9ZSwhnR5OwqI0KanaLsJUvKOqDGotwNCR2nEmDPVU6zV6mnAKANLNb9CbgvqnmYq4V4MGTpeT/0XGU7CJoft5VUeROkZVuoubAOM+siVE2tqtOxoTpEpM69rBaMPhgfr1qqPia0nzqrP4hNugM2IWHNg21yDvZTMwlnW1iJKmsuTBAdun1vqLaMZ0VPZVnqqt8XXMHDJEgMUPMmhxN998VQTTa8F3eY9ajlJXVuKteh62MuRSLV4DaQJLPkV93xB+/CKDCTUnqwz+vSCFx/scn7OeSvycEl+h4aoipBZ3Z8Z3KhFVL1RtQkhSEdIuM0ERoQZpuEREeVVzPVF1Qn0RBu0mxd+j91WunBMD8ckGjgwXLCR0o+HEBbpIcL66rp9EH1Vu9TUeADr9aZ3ADZJx4e5v0JAAhSVcS3AiwEXe3vxU8ISI2wzAKVHF9+FJCEiHmWT/YmzH46SSbTRK2kZDzUJmfJVNdkMp0URabZUnPdjhKvIeHe9ramqkNR1YbJuGhYyOa5k2QKVXq/z6ZViMSTSSutc7/b7euOWFd6ZBsEO3tD3abacbe2kvLR3g4RFUWRpYlWj1tfW9Wt0hjTbnd0zMIo7vbniEwQ2DTLCYmoiFvtp55+hoBag1YYh7oQvS+9r+IqWVLlFgZRZK1WDpMsKwDEIGKeiohxJghMux0jURCYjbV1NRCCKLZBqIslimKFTIMEAOx9FLeiKFYrqd1pKzGvwX5dBXNzc91uhxD3xtMkSQGk2+vFFpkIkXwUIse6bdQ0uVhrwzAkxG53mjum/ZoNrDUVhsOhyn/QqJ5FgsD2VGBtLNmoiTOo/BdEXMvVuCOyX/5YWDwBMfuyLBCRPXBerW5XF7Epy2I8HlceYl37QUCKylCFIqlKXxKQCa0i4e7Oji7qOG4N+vNazbzVbgfWIOLecFjveRgERseJTBDFBgBsEOgdRQRaMUVWRMiaMAqpqjem+XQmTaZJUeX0ls5L48+yBwRXZ5mBSLvd2c9Sc9WGpDUMAABQkmQKSMIuiCqEdT7QoC0AUF7U+xA0wfeyLLWqsvcVAe1RPJe6Z5H1qIEc5ObIj1nRHHOFOguLc4DALL1BxwSkRo0JTIWeiA2sExnF1HSSq//oHZRJqY5bkbki98qOY80n7u/xgTF1Ye/BXEeZ773h3rGo+4OHpNH28N6Ne8J8/97a7miXiKwxg9gSYVHka2truqvPdXutKNI+unT2tFr5WZZf+/a3KyKgdtymZa77zNyg/9j581UV1437WZqqQZSNhnr3wolncaX7xM+9rIXZmFnTTQzR+ubuW9dv2GoOiWZFZcl0c+0eIgmg1HHKd69dd56FuT8398KHP6qWSH+w0Gp1NZizvb2ndULOnz/3c5/+74Tl1t2bW9tbusHeufOuzrY8oyyZ6GxYOXsuimMASJNk9do1RDR5GvpCd4xONyazqPVk/+6V/6LR6HOPPb588pQO/3x/Xg2xOl7p5+cX+4MF9h4RV1ZWijwHgDiKRTyAeO8vXbrU7/dE5OSpUyocNYRxVNU/CKGXx5GaIa1WTEQivtPpLy2eAAC0cdyZr705EXFEZmdn8+tf/7r6lYPBQF+0oojYC7MJwk5vThfz/PxCHLfURWq32nrHIs2SdlsH983Xv+lcQUSly6bJmIiKopwmmdpBGFhdCUVZJvndamrNFJ4P4ggQyzxfu7+qWc1PP/PM6TNnnHfM/K1vvqqG4crK6fmrC2obLi8va1myN998syxLEWm328vLy+phLZ440YtibfydO3d0Ezpz5pSJ50Vc2Gp1+/2qN8QDgDV2d7S7PtpVpahp5Dks4lwVWg4DtXfOnFkJo1AAXFFsrW9on4/HY1WlCsBOsgoC1tLyUlS5S7Zr8paid+52a6vZN1luyWSiRkbhKh/NsLd2qvLOTgQmEmAABC/VGi/L0rsK0xx7ADHGXH3uUuVEE4qtHDYKrdR1eBr+KQgCQ4KEW7c3s3Gqu0gyqqzFJM3zvKrZbdBiHRZEIhEJu3HUrhb748+eDiwZS1mZsP8RVgJoXDA64L0ZawOFJDIG69TNJjNTAJpc/8Z/MWwakfGsJvOofU4kAkKaie6cQpKvGWKt2dh4hY1kmcggkgDUfCMYawFZmJuM0Kb80GxJNi2GXRSFVoaSJivxQPq+yvKkYS4OFiFq8u+lOa9FC7aroHy2FJnMlOY5lBsxkyJ7oISeWohK0iGiEEkIxwiOZ0Ths1m+R0dWNQ1qP+oAkTHNcB/NlZkt8KMFEo4Y9wdKzR0tYtUM+iwk6RioAT5b5Uo9jqbw3uyEaR6tqd7X3I4O9sL+HWdLvcm+Z9f0Mx1NEtpPkcLZgVCxAB8hkprJDFUg/7tx3I6heBov8iHpI0ccK5XdQIVJpqEFjvlOXbkNm9pd0tT1eL/A8uxc9ewR1DT7UYsApF6jfHCdaHE51bloHYPZeogfMC4+y67McGzMdWbATKmKYzzw/QXJ7J1DNILHD2PD1+jGq0NRlRDkqvSHsDRc8iFIalRCR0+V2Ze7wOyMnz35p6Ll6tUlMytC3Q2zX0muYVWZ98mL+k9qWupZBjWhWz3OoZpgTXW62cR6IpzdW5o8e31hjJFaJFVrpujYoWx6YYY7Ez6I1A+L3B88y6gqXCfHVVCTGQ3XceTLPlAqXanFlZrGN5DUUNqmfnDQhIvj8PcwbaR1Xup3Gkjy3qt0itnXawHq3Jr3Ws4Pwyl5n+w1OFhBR2YoJJkl4B6a43LA1ECs2Np9odV76E5EhD3rf7lW7s9ugD8qqaQ1Ng7Y++XFhW4nrss7GhGwQXzu3OMIyJ5Xzp4aDPrMwuy/9a2/8+wR0DlX5qV2S1BvgIHmWBGLl73dkYr04qgXxz1NNWoFYSVqD2I0oQjvjsbJ9XdFhBC7rZaGHn1ZjHe3VZHcefLJKI5FZH5+7oknHgfArChGaaKtfeVvvpEnU2GeI/vkE5e9c6LmKFLFMHNV0HI02fv8n/1HIpMXiXO5LpvhcE+Da+yZyxIAWXh+btCOLAuHBk8sL2HFZVg9g8xPB4kJddEYqCnkMtlYvaWjfe2da865wNpnn39G50A2Hb/x2t8p9HVacdzpiXCvPzh38fEq277It3ZHADi/sGgQBCAMw5WVMwpneZZ5V+oUzItcM/Qoz4PpiIiGezu7W1vq6YySHUQwxqytrt25dcNaCyKtVouMARBrg+HWjjC3up0z5y7qAjx58lS73dbkj263p7lshnw7riZJvxMHBETYabX6/b619v7q6r233tYIcbfbJ0MiEIRhv1+dpzAZjov6zA+X5irjm+8MNAskwFCcFtGilbMXFJh7vb6W+AbA7b0hswPAIOrYUCPl/tbtVcW14aQIqxNKJM2mSp+tb67HrRgA9nZ2s1pLrfOHkEbjPcRAy3RoRToBsESdKALZp/9F5Oy581EUCYCwXzl7Tq3srZ3daZISorBs7ww1/lcWk2ZhWlulzs8vLiuXXBTFdJrom2mea8Aem0MHULDJ0G8ESgxuXCreRd2oN+gp8RTNhZWx0w5qfaM1NqwgqE4FJYAQK7pg9f7GZDQlQ3t30zJlRBAQ5bMAgB2SVELMKLKAICz9xf7piyve+bjTCuLKcesPYiI01sSd1WNR6YfguBGSIQGO44gqKr7OhCJqx1013gZzC/OL87pvOM/OexDw7H2dCxMG2FTbFAABAoEiL3RXaPU6OjmEWXyumGzjjglbAFIUmda3tUS9dsVlCHNZ5MJG+bYwDJm5FccnTy4BwCRNcTym2n1gzyyMiIN+37lSWOK4Y0yo0J9MMwAIbLA32rl3/561loipVsjneaaQ5EtfZpmeDSfsEQRFCLEVx6oTCUzVY1EQ+sCrU1gJNwCzMs2LRGFuNByVZRmFkfqSRJTn2d7utnZRr30msAGzj8Ko0+2p8ijb2cqKEgD73X5oDYvEcTw3v6CQVOY5+1L14vdXH9TVzH3pSxIqijzP0kqJU5fdmExG08lYRRWuLKpjKoy1YoS5m+fzC0tqEWT9xBCqxdHtdOpdVppS5oE13hpEDAKKjQ2CYHN7O8szpWbadRhRKYymgDfXXgaUSplTFMQAwMiEVdUOEGi3O/o4URRLfahoXhTOFQBIZPRsn9Jlk2miN7JhEjqnRts0HVdSg6JQVc50OtajHAAgCOucj6xAII0jBWFojBGA0Nput6Na8KbYXrvdjaqwA7SprdZZwQBBpJCUJIWIMPtJMZ3JRGhSxMM6KkdZXirxTGWVUGLqQz4QGGHG11azX4TLqjY2kQmjSONc7X6nMmSb8iKG0Jg6qOYbLYLmO1gjWZKO9ibGUDplX22+1bF0AkBisea5jCFAYOC4FS0sz7nSRa12UBPHNkBEsNboavoROW4N+XLQUGz0IxX5LzPlOyon+AO40Pvm+Uw0uwoLCSN7mCGejq2WXweAq1Y0jgPXFcKOmM2NsEQOHClaVyAzxgA2UU7AWT2JJhUdLGXZhISxqgeGh4LlhzVRzXdrV0U1mQdOE6jLVc9a3IiH9fxVmXCkRidxSDqAx9R/P1KMXhM6a1aucdwa6k0VT/UhtHiUxuBGtsOCJIecrPfnBPbnAFfatGNV9sc4bjgbyt+fHvuOW1VCQGbq/DXMI9QFBhr24ADXBIfqYR5NHNnPO1GKQRAVv2ZlWQ9zXavf/D7E2bOEDsoH0vk3o4fUaGz2p9V+EU+uDt7RUVErqfKfNfGTG8eNYLYu3Q8bkohod3fn5o0bjl3LBAEaFh/F8cc/9SlCSrPs3Zs3dM7efPfdN197FZFAIDDdwAAzz893F5bntX7+3dtv5lmCgOAKEABhG4a9fl/LWQ36PU3eKYr81s4GInrnLp+5dPr0eRF598a7w70hEQrAxtqmIvdoNHFM4lEATvR63W4HAaZp+vrrbwBAu9udX1hUzqUVB2VsAGxZZl/767/UjcWSMbrMiBbml5VgnabTXr8PiN1WK460mCzs7u7oDOt0u8vLy5q8Ns3S0dq6CLRbrWeuPm3IXn/3+h/94R8EYcjMV648PZgbCAshtuNYrcqO7YmtQqfP21Ccs2F4+ennENHa4Pbtm6ubW9aiiFy4eLHTbgNAkqZ/8/W/IkJmWTl5stvuiMDdO3dcUegzmk5fMTY2QYhGgBHxwmOXFfB8WRZZTkALyyfiXlc1AGWRgIgxxgpvnzlljUWEB+vrk0wNBxyNhwBiV83NW9c0hP/xlz9x9uxZPco4TXcUQxcX5lZOLCmpefGxU2WRIdFonNy4vR5YSwRnT51SmEuKQlPnXOIe3LmjK59L0dR5InPm0nl1fwJTHTbX6QzCMK4PcaiL4Qhkw7EeeU6mZW0bACaj3aqsDdCgv6Aos7mxkeUZghgbnjx7rlqLrihTjwjsDUKkA5FlzSqMe53laqn7yAsCQMk0JgcARV5Op6rMhJIfBIEFAefL0XhHWci5xflWu61T/emrV7Ui81tvfQeboytq9ndvOlI7Mc/LLNNzt6Tdaitc7o2GKtQmNI2iFb3TZ0TC9ulY+yTuBFquGwDOnz8XhoZZ9ibjWmLKAFXtwLYJCBEIs3Hx7vWhskjjXfJphwl8mfmqA9lhVX/98pWLy6cW2TMgdjsd1UxGcavbn2NmY4JG0SbCCGCspboMww/dSvLe53nu2EWRAWPUPuj1+kRE1qL6HcbkeT4ZjdSKtu1+pfS1YavdUb8DNeWvKaMjggDGGFZL2xgtNelJTxQDZg5s0G61RcSggao0q1S6JCbvWerESGsoMIYAEoA0TQEgjGINfDSbASCK8GQyqQxOpOaspE67Vxfu8drX1towjHSTVDkoIkdR3O2pG4XjNMlLBwARc6vVMsYi4s7ubhhFmpxMRCpFqc7/EsDAQmh1JbTbLfHeBmHcaisk2SBs9uIoiuI41qIW0+mkZrKXCFFAijxXiQDZoPBemAUkRCNk6iTkuDoBTbCEAgGttXoCGgAgFwpJobVRGBhjCLEp4w0ApS8BoAQs81zFREWRMTtNGSkKzbBnZm+t0UpMUWSJAiJKUuPZEyMAhLaK/UNR1Zxk4aLI1RohNlVAGiWIQt2tranUT3V1faoUNBVSsFZQEQAIbH1iONQa0EppSUjOuTzLEMCG1RFegCh6yOxBoXltm4MeiLNvSNYUtWdBRM9SOnU/Ic8L7z0AOqdkEDJzb27QlAZrtVp1/Lc+FV3wGJWmqF0FTVShDgjOBCIbr60xZ0OtxgVkqCkpFUVhGFpmoel09sisOgLYVLCCLPEa+PUliCcQLXFVC+WrylwSxrbda3nnEbHdbSluBkGkgXWtN1w7TFW7Hpaz+kOKuGlMgRm5OaULDlZZrDNCsDoUENAzM/u6XpQ0MeNZV+Tw2TXH+jsPt1pVzSx1PWluMuYrx0pV51UGBtQxtfd4zPpgnwPHb81Kq/dbWOemP6yq5EwsvA7jEu0fTFML9Q9b1O+Zc4szKciVNBm1YPwh+q+SG8ymHR2sxrlveTzsprivWSdrjbWm4YCONk+9lsOZzEfOPkCoHXAA8SIsCFB5evoZ2te0zx4bN+tz/pCyUN8/1PU+IePv2ts6qtt47wzcg+Hdg0oGqEsbCNf4wjOPs3/4XZPXcEAMUFlJoqcxz5ao2L8jy/eW5/yDhyRDFAYWvQzmBp24zeKDMMqzDBFdUbTjWOf+8olT/U63ku0EkR5qEATWlw4EBGXQnWuHMQDubW0r7xFYE0cRsxeBMAyUZ+W6FLzqA9M0VZpWarFrvTdip9M9cyZQsrzTG7TabQTMPRtrdeOajIc6pxcWFttxCxCCKOq02hVlUIcziCiMgkqfZGKypHLCrLLpodvt6sC0Wq0qeRHQFaWaKrm1aZrofnjm7LkgDJiFBSaTqYAgIJeumjWBAWtAAHXnD4iMTZJErSQ9KUDnQpIk2raiKLrdbsPZaaWR3mDQZQaBII6LLFc+qd0JyZCW0NhYW20EMrY+FqGZT8ZYELHWIFKRl8aqlbTPGKodSoBqXzDz2toGM3jvgyB47LHHAMAY0VqUaiXFrXYQBkSUF9JuxUFgJ+NxVhPqeRNOAkKsSOJBdy4KWiJiDMVhpJClqaciYoMqfRJm5D/VUST1a8EDq1VAvHgAYBRjrcrNbRCK5gap1kMEDxJSzRm2BjE0eEgApYY06okhwrpBxXEchgEAloUZDqvouSaFKbROplNCLPK8yrKsOrO6aVydWYAgktcFBeMwrmJ/RFwLGrQ3AIBMpdlGg5EJ9aFbYRhFYdVFGTmPINiN53XWOS5ckVUZOd7qKcpS+DytWuULx56Bpd2JaqpSxASaBB63YmMM1uI1baSmBtbyjobbqcqE/ojSblmkFUeLc4Mszz70kRdOnzmjXsnavXvKBF86fUYA2PuzP/HT88sntfz+ONnTdNO7N268+jd/Y4NAWD70zEdaUczM//mv/qzIU2aZ63dPnVxSZU0ctXRV53nW7/e1ROkkmdy+ewcAknTMUgojIgbUAgDv3OXLzzz1zFU94ePs+XPGWiLT2li/v7Fhg2AyHL79nW+py/OxT/xcr9/XZNfhzq6aseNsVPhcab6lpbnKNI3jVrdPxrz52rce3LljrCWin/qpn9JRKfI8mUzVch3u7I4nYwBI2q07d/si3gTRP/sX/0rTOL74xS9+5+1rxlgQpqJsUiuhTub68E/+vTAMBODWrVv6p53tzaIsNSP/1q1bYRAwc6fXvXLlik703a3t7e1tEfnpj31sMDcPItNp8uYbbyEie9+/1Am7LfbsyvI//PEf+tKVzj126bGP/OTf884XrnRlFd4adPpIaK0l2tra2g2CAAH1oEr100ejkSZ8xHWG7f/9p/8hSVMAWFhY+K3f+i2dwYZgb3dP1/eZC48po9zf2U2SrN2Kk9He/ft3tJL/KM19XSRMmFR5/KlPXXn8sUvOOURo1TWAippdbrd7UVjJrzc3N6v6cCKZr4DIOq6iRNUJo+CZ09KpGdnt93qDntplnKWVxHk/52P/MMsoalXsVRz3OtWZg9PptD4QlEkcAjjxyKnGec+ePd3vDwBgPBptrq3qAbC+4Dwp1OK4d+++HhochaE+V2RsaKoCAHEc1lxS3olaKuvrtXra/7vDoWAJAkFguu2OwlMYiXqfZGjQ6yuDMxgsdDs9pdtGa1kqYo25+sKH9Zzi6Xh3e3NVHzMdlnoMD+9srd3ZqsVZTCjM8vRHLnV7qvCgqFf1RhRFQWh1o+r1emoiEIXGtFT819Rd0lvYwAYB/egibrNpn3XNsPqItNq08967sqwqcjm3v7/VpZGYWQ+rmY3NPcyIrbR2+6JWPFb06Jzz9VmvxCyATYBkNiGzKjKtJyyLIDDOFlc7qNJs2nyo3NphFeJhr6SqhdCMikZ1oCppdhiSGle/kS8em4Q8e3eYOT1NPdbm4LbaoYMZO0hjTOYhKZNwwLuEY9yx2fboiUyVjnT/FDQ8cNK0em4abJKjh9btMwBNULJ+NGh+U46E2A4fQveeVbbqv+L34GJ8wFpgs/rJ4z+M+wfYwdHg3LFTHY6/tcycPXswubqmSpqjm+uTCFlYtSkseqZ6HReo/x088RDqUFrNrlQ12g8cnzHb8B+k48bMb7755ltvvTU/P/+zP/uzOsPu3r3713/91/1+/+WXX67yKo+ht11R5EWRe+/2ayHqbkP1Ydn1cclQ1dmoanTMZgAcWOGKDaqsreHD1BkhsyROkw/RVO0gqoICzYJUtUtgA2oOGjg4yYy1QWC5ItQrsq8idAEBRVeKNMc6VwBxTOlzrQZNSn8cOotxpiTAPnHG7A9YSdiIrQ2Rns3VzPJG+cIqj2VuxMeKYo1It1ni1QGW9R7QmAPeaf1oDzPq6qP0h5Y9qQB6P2lcz2rdLx2gW5FaIjpzBMCSZvwc/M1jRd77aw+YPdbNrr0AMNZquRLkfUA3xvCRhSqH6g0cSc2ZVTND7WXv+3oHsa/xCg8fezl76gkzzBwroMk3Os2MMbPYdAyjVPN1ByBnRiHdQFKz61RlVQSIqoMbqmCC6vsFizLXZhVFHgShQlJe5LruSlfqHC5dqVmHtXkoSORcub+9CTcaksPHY8ghgJb3rEfwUKPhfSApTdM/qQichAAAIABJREFU+ZM/ee211954442vfvWrCwsLd+7c+ZVf+ZWrV6/evn3785///G//9m8fg0fOPXXlQz//j34py9Kl5cVWu6ULBtggUpYmr775BiF57yfsl6dD7cTd9TVdS+PhnjGC6AElydPSOwE5c+4Ce6dHtz24u1qNo2aiI7J3UrIgsOf+cnducZmF/z/e3iTG0iw7Dzvn3PsPb34xDxk5VFVWVnZWVU8iW81JIg3KNinCEEQDArU0GiBMtGkSJhfcENBCAEFttCGghSEbsOGFARIybDcpdnMqdZPNnmvsriHnKTIiY3jxpn+49xwvzv3/915EZDVLZld2LbIzM95w/3vPPcM3dDuNsiy1o9zqLOlWitLGZDLWVfvLv/pL5702DCIToWAURe1uV+vbt15/QyoVEQXvee+ff+nqpbUXvGcQOTk4DjT3wufTzBiTjYfeZyBWiIw1JrKENMmmu4f7ZAwCLK+t9laW1ICg214CEOf8dDLR47S2vBqbGBGjyD53cTs8UYqAIu1kra6ta1F58HQPRJDIwGojQuUJXrz0XBTFmiHvPnyse7fdardW28wyGU8Uzo9kbrzyCoQBlEFfGgBE+NyP/7jen61Wm0QQsZlYjkKsH42H1YgHb3zius62Prj1/mg8RCJP0LQJiERR3Ot29MWX+j3dj3Ecf/W1vwwggJWV7UoJe3tzwxiDhGWW2YiMJSRhX2q/rttq67iHTNRs9ZWVNBocf/DuO1KJ74pIFMfrF3ZUXH80GHkvek+IITQEAIY51X4i4Hg0ZOcBsdVuahujKJ0bj/XO29m+0Gw2RRiBUgWyEj15sj84PiYiWzHjEbHV6gbUEjOKVyhOmqZKkDREjTRBRDs8mZZB5+T9D24ZIhEghI3NjUDl9+VkNNbJimEREASKkqTu+8Q20vjzdG+kGQgS9peXNWddXVrRJ55LXnoHAsbapNHUVv/KUj9NE2GJk/ilV26Ewq2/3G53NSQVzqug7craqo43Tk6O9/eeaEjKJrlypO4/uvveBx9EUSQM7VWMGyAMjX6EEYMAGjHNQC1utJppnCpCmKhZRx81JURkxJrfp2hyK3K+H8AzQ1Kz2fzN3/zN3d3dX/mVX9Ew+cd//MeXLl36N//m3xweHv7iL/7iN77xjc997nOnfiqK7Ora1kvXP5llUwBWriSzb7RGiFR4fry3R0Te+aW15Si1SnM7eLKr1XJZ5kgCyAhS+pIDAr2v6MfxaPLo0ROjVP76fhQxHNBfSRJ3uy3HnERB3IuIektrGpPz0mVloT21W7dvT7MMADqt5qXNTQEwxujYGxHv3nmUZSUiWGt7vZ42la5/8tWVtU1XOvbuePcw3FfOlUVujCmLXNgzLNCNWXg4nVhjBKDdaukln8RxmjQAIJf8pBgRokdsNpoqgJ+myQvXXqgAtSlQQLgajHQlx8PjQEJuNSPSPEt6/SUbxYgwnYwP9p8Skmff6/SazRYzl+pTKpI2GhubG/rj09GJqiwSws7OBahGcwp2JkPBNwNgcJKHBJNwY31NFaYePLw7naIhJKGYjIgkUdRqht5KnCamSj/v3rmtMb0sinYr6OevLvW13cbe11mmVGVFI46JDIjYKO33l0OrPsvy8Ug/Z54X+nWW1tb164yH0ywvgrFCvw8VY9ZgyEd8kZdFCYj9pZ5Su+eYfNjr9frdrmdGpFarpRnNeJxNxhNDJk6tdrURsdNsadLiiryYTmbiGxBE+xqtDiIWzps4VZjAwcGhtiYajfS5KzvCgoiDwaAsihq+qXRdY/SEcxTFcRQILpoBg4hJokajqX/Y6nS07b28tOS8AwAyNkpaOqreXN9uNVvMnKbpjWufVohsb2ml3elqvcIVkjaOEz0mg/agYXohJGVTEbEm8gytVjuKYmFYWjNpF4VB0AkIIqABigLuMYrjuMJng0RzvWVfhaR6zuBhJh/2UbIkRGw2m5pw6rq/++67n//857VnefXq1bfeeqsOSV/96ldfe+01Y8wbb7yeRltlWZRlYQySqYfQXONH1BB5gehYt+U9LeAINDVlDppPyt6mwC+TMxDn2kxtnsheWZvC/IRY9S11550dextjrBUldtXk0tDLEM8807GcUx/Dc3sXNMcSrkG6dfo9p901KzmdTtxAgEugMMVGS6ottYhS4bpAq5ssAeEyx28/VbhJtZjzUDKp9miAg88PghcLNxSadQ3m/1tUJoCK31tvIWMMUfBu/vBZ+LyKQL1c6hpePyCZYZFC+Rz6a8+ar1d14rMKN1+t4Vz1ymdbVHwu6ERgTlovYOLr6peIoNIemB+Nn7cCcj4AHc8A06th62yro/5GWIJzAzN779RuT5j1VAYjlvpxm6CD6HzpfElCAKBu7tqEUfy1MLBH9igMYCpsxTMKN/w7YSM+euF2dt2n02kr8JUgSZJ65q1B6tq1a9bap0/3nz5RVzspSyclA4KwL8sSkbRnHDqaPsiu1pGioiJQBdWfN+qUGkETxKXE17zlmhOgLzvfvRJ8JjZfzhhFzKBihow1iHPqFojOuSLLnPfi/UwEAmcOu3UvaSYVoh0KmUP2BHdyr3FErcFo8XyWZeX5wYS1AADrbcq12IB2KHSt5nb2vPBJGLRWxpMzqBQunsz5H59bHz6lhQAAxtqg52LUEIREsP5Ic4MCrNOKSvhRaffnDCU0HMwz7+fFSWYNcpyJJGhgXRCrUeigYuqrwCQ4644bY8AKLOpAyvywxTnF6NYhKYwR1LVyNmdYELrAOZbrqR4TnoVZBfnQ08iyalo3a1R57z15OSUcI6ci0kJIIqPO48LCURRFUcTMURTNC/jUH08t2hWWoV/TOee9U/ccmRu5pI1GZCMQIGIAhgUZ3PNdS87wUVCYGRSECJomK2TnPyck1SRPANjY2Hjw4IH++f7+/sbGRv3Pbty4cePGDQCwlv6Xf/8fDgdPvXNf/evXHj68p1gJLAsAFO+K0SEACstt9LuP7wsLEt14/iVE0uDll5b12z49HBQuR4ByMlFUI1K0urGtJ/DJkyd5nilOpLsS7O1Hg5PseAAAYkNj2EbR2vpGWP1xlldy9Fk+zvJcAKIIMAYEKXJ3PJzq6XrupYtxbBEwy4rHD46QKLLJ3772ta8WBSLaKPr8P/qp0EU2hmJjyCTNXhQX6qz75N5DDaxZPqU8r2eICsnIppO3Hj4Q5t7yyvM3XmXviWg0KYRGRFSWxZe+9MdhsBp3o6gZxszTAbNPkvSXfukX9EM20qTTDGTOg4OBAmclTrpLq4GysLquNPpH929l2QQAkrThq+lSZJCqq7LV6szP5ojoycHj4+PA6X16eKB/vra2/tl/+JPee2PMaFQcPD0kMs4V+837iFSWxWgU/OCef+Hi6uqyxlz1XEOE0sFgcKKLMRgNrTVIdHx8dOvenSiKCudeffUVFbN9snekAWJ5pffTP/MTtXNcPQ+9c+eOSqBURsGysbWZNsJa5ZNcwVyl96pdJyKXrlzWyuLxvfveeUIsoJhMJvqab7/9jt501tqNjc0ALGi1Ni5siHBkm0SRnmiXTzT5zbLsYH8/9IMpENyiKFIsGCKurQW6SSNNdTKFgCeDohqLoPJpmf3dOw+UqEBJIzRAkEwNTKpyFrJmUmRh+um8ogR2n+zpbOLFl67/i3/xK/ruq8vdZiNW6LmQysLhZJo93d/XB33v4QONaKPRCIJ64nQ0OtG1unr9E2nayNmtbW1/8X/4LUS0Jv7Lb/2HO49+YE3USGNjwtg3jZuhcKMEIQoZPQWfsYgoiSIy9tbNu48f3Sf1LzgcMgsR3nzngfkl89FC0v7+/u3bt8fj8e3bt69evfqzP/uz/+pf/auf//mff+uttw4ODn7u537u7I9UqrIzu2cNjVRnDXPDSWYWFpofD+N5qtVz7L7zve1xUWXqNFPxI5A5a5s2dWg4JcQVpninFJ3DVTwbt51bGpyeCVfZytzgCefFwudvwmpi6Jn9KTGmc94C5zK3M/Jv845jH3LDncVb1DiJqjYkPPMLzk3VaN5mXuaXGs/Hry98lfo7znOMz24DXAQOVCU0zuc75y/XXMqzMGWbDcWeWWOe8t1eYC/Pf54Z6gJnwyg8/3XmxEXOYV/P49RPvSnMacareJegACAveA4u6DrNqzs9C7lirQXAWirvPxsVxBw63JV41DOBFx8GAvi3//bfvvbaayLy67/+6//yX/7LL3zhC7/8y7/8W7/1W41G4/d///eXl5efdbKrIhorIngQVxRQCTFULFLpSmBRJ8pKv1VqhXZdXVyks2u6tGjBeL6uVV36mZlJi/qeh56I804J2YYMAKs/atjxRGSMTiLk2bSAUz2RBeHBOQXCeTrMLNZ4r6IW7JzW87PxMMLZcHxa6l9YFR4CuxJrH8lqzM8cPr8sCFrCR/8686qPATVnzLn7c74SVM25wEWopPWfFaLP8ISqxUNUGdJQss94UjpAnOnS62A3/GDlR6RINKrQcBDkv51mSao7Gr6jsEYLOieUfDTyh3Yn6i1dl3VYOc3oC9qIaxCYyDk3xHm+JLOA5j178AKQ54XzZVmWRVmeC5WqrgSc1zOw1iKSCOOiYEaojSrtUA/gPAHMlAirHhk8c59XYEgJPVlLxlJl+fn/C5dERP/6X//rU3/4xS9+8Ytf/OIPqfViihuGGZnzfDq0NgIQVDc0ov7ahuImLly80Fvu6znc39/Xr2oiGyexYkD39vameY4AjSikL0lim60uCCNRkh6rnpExpFMDRJCi8OwBJEnaJopAAIkeP3mii17kRZ4FyPzmxqb3DIgIvH+wDwgguLbc168wGZxMBwyIznFc9UxzqvxACaeTaVALssaC1Z5NI4nJECKaOAo9ZnaiDQ4AigMOKxbbj1YEBIjeeeNNfbZEUa/XR4Q8m3Lulc1AEUcmnONGI9UBSrPR0hfPi/zO/cchDJVeBZqAaH1jXZsB7MuTwZEAxElC1gBAFMX1ITRodFKOAirIX0XqkpAMQbORKkszm04V8HoyOHn8aF8tsIvCz3pnKpJGptFoaDTMs2IwGIqIIdNulxXXzCRJoGAQAqEQiiFoJHFkbZnGzWaqISyOTVGwIfRlcfv2+9q1TdNmZAPEqdfp6wWWFblK5SWNZm9pRX1oRjTR+6hBtGLXQl8OxZclAFy8dAkECHEwHDoWCj2vWQgoiiIAqbJMM/lOO9FSRQDcHHXOC8/4i4As3Gg0Ll26IiKuKKbToPrm8tKDE4EkTTae2xIRIrP35N5wdKxKGHEULt9aWptFykr8iCpTXwJKDImAMK+trbQaTRbZuLAOKN75rQs7aRJZE6ZAKhQlAuPhWPf/aDyeBvEGuHf7ZlmWiBhFqUas0hWeWb/Xw/v3rYlEhCJodlAAcxMBSJIkhqyJk7pwMwF0JmgMKGZQ4OjoKMQo9uwKMubw4CjPvN7v7CG0WD8eA24RiFLT6CUs7N14fHIQRRGAQFmISKvd2Xr+VRF2zr3yyqs7Fy54713p/o//7X91rhTmVqe3trmlPYibt26NRiNEfP7SpjHEzFHUXFpZZ+/J0PHgECkkU2oigogTHhQuB5Beu9todYTFe/feBzcrUhLYipR07cZn4jglor39x1//1lcBYXtt48aLV7Uj88Z3vzMZjxHBRsnKko6ZYWwRPSEiEA4GWnVDnJoGRwBoSTrtwKe3jbQaewlPE2WEUZooTNQa0+4tGWMe3Hvwlf/4p2py9/P/1S9sX9hk5slw5CdOMZPU4iQJihxR2lEDkl5vmYiiyN68fee7b76r86ydzQ2lubY77edfeEEX8O6t9w+eHiPiytqamimChN55KL5MKGTyPKtRJHk5RUBrsdcLTL3hybAsSxEuCy6KWIARcDrNEUlxvuqaTmR7vV5o6o2mk0kGANZGvd5yxflotDtN7ZpbEoOCKInBXjO1xiB7l7c1JB0cHKEIEuX59Fvf/GvFBywtbTQbLRGxNvrxf/BTRJRn+c17HxBi6cp2t7dx8YovnYhgfKyFWK/durCxzCyI9M7bb07GI0T6zGc/E8UxER0+PTAmCkm0JUBCwiLL3vvB9wNK07kIjWdup50kIRYWgKKCN4uIE9YsOkarKIZup/vpT39WmI8ODu/fvqtXlMuKoihEeHmp/1M/+5PsOYqjv/zK5Oj4wFoSwUYaKfAoL0Ji5djX3d/YhGZIJKZpjZqvPf/8leXlFWb/yssvxWksLGhslITeIhBqteGZDw4O9HQMhsNxhVp4/Vt/m02n1tgXX3wltBENcoSaq731xpu6ks1O4+r1Lc9iyIJIs9kkNHGjgUFGCm0S13cqkEUQZn74YNd7JqTJ5OTwYBeRDJgagOpLdftG4fMT0B8B7dbYKI5ZWGX2VcpLwerMwt6LMFcdO8X+Wmt1LhRZUzfUNfXFUyaElUPffOGmPfy52ZPM/uV8sYAL2sPec8VqmGMXKJfWGGMtIhgi9bfAMy2SuS6DDmB9WZaa9sdRZIiQqCjLOl+1xihP0pARZgnpQGxtpAotHAwV2bMP+t7aSlLUFYaBtLVG7fDInKIIYV04VErbUo9ya4yCFhPznYhzijg9nTirfJV/aq2N4lgNlJjFOY8oLnButCyv/eMDkMcYPFPRzzo7WoxVj4md80Z1MDx7Zqxc7ZQ1fY6CAkiN4J+3aJ/pqFVriFjNDQlc6fRHtHCragIAFBSsx38iAtYSIatQQsVRXmDqCJ+dd8+zqRTn4ZwrnRPh0jlXukq43XMwywu61CxY5UMKEDmvKvReBNhznhdZljHzNMsYWJhNlERpW9NDIoLKqy6MPgGTJK4H0EmaMLM1Norj8F0QXKVva63VQ2atJTIAYsgEMgAiC5MEQhLOnXpjIv031kZEHtFYG0VRhEgYhnVQD/tEnimz8fcckoy1t3/wg9e+9CUvfLC3SwQgTISr62sAEsVNcRZESOzd2/f2dx8ra380Hnv2IlwC5Ii66Q1hq5ECgm00NEsSopPRiJmJsCzZOwEEa8zW1kUBMcbcvXP75OCECNJxwZKp9vaN69dmdTjWgIbRdDpERPb58xcvEaF4f/PWB7rbjgZDVdRtd7ov7OwoxXRw8+ZkeqKdL8+lZknMCXPCLOvblxqNRCFRX/nKV9SWp9Fq9Jf7ClTZe3ifnQeARqPx4vXriDgZjYRLZhF23mXOZew9IF++elUbD1EjsrHVwr3IlSyC3/7G17UHmTQan/rky6E/VZbqpNpqxL1Oi5kJyW1tLvV7iNDu9WvGvOewFIY9VpiXJDgpUZ5P3GhqyOzvPzk5OVLrlP39PeecCKeNaRGOujx/aafVbCg0RPIhIgoKUOiVZrlTb+skMe1uW3cvETivSQY83X+q/aFsOskyT8RRlO5cvqCxZzItVKuMBQunR4vXNrZarbYII9KwyBApz7KjwQARvXf7u48JTHCsRQUcQjaRg73Q1lxeXl5a7gMgxVHgthBWmDWcFplnLeTh+osvavA+eHo4PBkC4sHhweAkSJ2RpRoJtdJb08CRFRMQJpBiOn1w766289a31nV5292m6g7GSTw4OdGjHkXpUm/VGCPCWTYIvhiq30R4eDgYjyaVjmXoCrdb6XPP7SiD5OVXXlxdX2fvY5uoSAuznBwdarzMirz06qqG4ykAQBxF3/n2d7///bc1Xz7Ye6wUpdw5bbFRZKMk1i5wt7fSaDRUX2FaZixCaKyNm402orHWVN1GHg0GulaPjh5MJ5mC0Y+PnlZCzxq+FJoRjt7OlYuGiKwZHzs5Lyr9/atKPnn48J3vfMezH2cT0viLpt/vAQiZFLwBEALa39v3bgxALDzNMxYGkVIkE65YbJgkEQCYOKag5Izqba8XqV5mALS0vKL5/L17DydZaYzJ8pKo1Gd/cXs7JMMqFAwAADc/eN+5QtuZmysrRObgaP/OowfahxuPp855Zk5a0ltZYe+ttXj7Zp5PjTHGWJ18iTBzIhJ57/rLK6sbK0qsf/OddybjMTNvbG282viEbtBH9x5l0wwAup3uxUuXASCfZiJeWIQdc8lehb54bWszpHLouP7Ikuv1e+v9dwGgdO7Fl669/MlXVC5y/8mudyUzpHHUaqRhdLK0VLbbiKBaBdqhKMqgvMGTiRQ5EAFC2tBmHImUilUYDk92d3d1fHNycuycF5G8dGKNpqU//pmXN9ZXRWQ0HD+61UREBi7AVfNml+fqUCRpUwfb6Hzhy1z5xiejsUafoijLkgGg1U6W1nriBREPnx5n0wwRWaj0ClvntbWVdreng6LDYYmIWZGPJ2OFHZwcHSUm9t4DYbu3ioQCUOY8LIMC9fr2io0tCFBkABEMCQa/HATMFHEGEEfRCxcvalY7GWeHxwNrzMlwWKeQrV6n6gNQp9WV0H6aaKpYFsXBwX5Zul6vt729rXvU9HtYdYgmSiEyxpio1eoSkQi3Wh3t1qcNo1FvOp1Mxlz5OQc9ozSJ1jdWnPPe+4uXt9c3t9i7g70T7zwAsiun46EOlI6HJ3lZIBIAedMDADTRrVu3/+ZrX1MzwW6vowXIKBtWiJOk0Qia5b3+qqp0GwO5L0QA0ZOJkrihE1QdBTiWbDIGQDJmb/fR4cHTQNtGh0HcOQZJQak0lRTJyvp6ZK2x5kF/Vz4eOwBjTBTHxJ6K7DStEeugKMYYhEjdO2rMVZjU6Di2LitklvGfCwKoxpm+opjOj5DAVcm5nwtJM4c1dSgNKa6pRwN1bVYzh8/DHGOdfjGzd449e+/jKHJxzMxqsqK/jK24l9Ysfgtc/G8OPUxcu13WhWroCiEq9NT5Gp6/4EQ0h1qY6StwLfCMOD/cOkvd1sK59jvTwd0c4N4ws8apSiwBGBYkzWpT7jkp8Vmaqk85+PBUNbmWMvMDaRaY41GzV0lMgbP4A4VvygImI4A5BECk0hqXc52BFmaOc+htwUU5pIWnL6c1v6t3VC1ynKcQ1Btl7tHPm4qxiAADqySXP382KSLe6zqwc945x9WwopJap9lqBIFK4qqitdYmSaJseRM0+8BW6bMxNpjOLwyyq4MJOIM64CkRCKyAu1GYmwexAYEFsanqtOqmRPiYCrdzn3QFdphTGZmbsFZu8HjqkRORzBaa5hnti76MOD97PteR/TR86Rnoko8u+He+SMXM8+vsa+HCsPzcQfizVvKUEgj+sK/z4XTs80Dt8sMFN05FvmrjfsikfAEj9kOVEOX8Lz6HS1hQ3vgQYsqpP6y6TwvQng/5wB9NWONDiCwzSArWyrAf6cXrAXxtNfpD96gsMlM+8teZqcLUSG75EArEh7z4OdsVf4hkzI/E7dYiifgLOxeiJAaB0rm3Xv8BMydpun2RRaQsy3/0kz9x7YXny9KJyKO9fVU7clzmrlDti8ubO0mcaPEFCCjopJi6YCJk5RVUXauieO+D9/UifeGF537ss58WgN3d3clkogyMd9/9QGEHaxvrFy5f0TuwmBR5lhPRZDx69OCusGxtX/iJf/hzzntEfPN73x6PRyDS6S/FUcTGWGubcdpOGsYYMgZKD4iG8HDv6d7RLfZeuPBcKlL0V3/1V5WFd3R8eOfuTW3YTzeLvCwRUJi/8ddfV1Bkt5UCIEL0vW9/U2N2HCfPX7uuW6HbbTcrIuuFzR4hItLa+hYAsEAjMSQ+MoSIw5OTPM8BoCiduX1fp1reOc8szK+ubbbbLQAoi2Lv0SPdH3kx0dm/iOwdDhSNNR6eHD7ds9bu7T45OT4iMgKSF4X2+MvByehwqMCfv4m/0+y0WSQms7N1UUC88NhNEJDIHB+/W2THSOTL8Wt/9rc6sO920+Xlpnbrr1x5QbkO0+l0PM6IcDQqnjx9qA+3LFOyqSLU17c3tIm2u3uwv3+fCJjl4f4+s6Rpeu36p4KtipPBYKAH+Or1l1XafHgyePL4oWZib3//9WyaI0LaUZkBSdNkdX1ZWIhodO+4UFVsxPdvK8cCjw4H6pE9f01GlXdy1IgarUA0bXQu6qlUyU1T/dKk6c++8sdHh4eIkCTJxsamHvKSnWfR9GNza0t5P0UWlCGW+53Iihp6/vI/+2+SJGHmRpr0ljoa4AyYo/0jARhPndYZ02m2v/9UP+3RyVFe5IjoPN++t68d66cHu51eIzB7fXC3d+SqfDBoBInI+uZyp90VwGlxfOfR99RHx2Mu6JHove+/Mx6PqnlCkCH2YlHa4rU73gzNr357bXPVe99spWlFyl1eXiUiG9nbK21h+VizJPVH1vRUWzPG+aDZxt4YkyQpYqlKoLqvSm8YRUNSo9FMk3QmAARYelKxegBIyFClCafNGiU6pGkqFQ8GEZnRuVovSeZNkzTEK81VaXdRFCO6ClNGqlR9LiJ5vmZ0pVOtujpRbzabiGjITLPJAoqZgu5SWZaAQATWhqzYFaUL3r84d5FqdRmAubpBozjR+7YSHVy4r8KgR0NSVXLOC7zBeVdc4OIqtapCWgqrv/yilpjnisNZ5kXJImhFI5d6xuIcrA5FBLgoSgBgL6607LVKPruYip6t7blNrRhlrKlpz957ndToVNH7yCgDDoG9q7GmM8f3MB5SRlOpassYBRlWnV0ycMWalAqF6AGABeetnM4mJghQq+urESYsWn7DHNBJnSlFxLkyPKnKvSk4rau9Vo3L1/2CSITNZjNNU2ZOkiiOoxpMqys5nzPWimCK9NdDobTbeifM5T5zKMeFBFVUv1+fkmdHOnsl1krMubICsiGRDTkUVtq6i1WssQYQrLU2ClxFUu9gU5FVP56QNFffU6U6UqqZhx48510dsHReyxyUG2uFsBmRHcL/kJDIYChsFyb6tR12bbIswgDPJBDorFcqiqxUbvGK8A5A+zk7Zo1QwXhr7jiFZgp74VPFIxHSuRhoQGSWWi7xbOF2DhHhDFlcOOhA6z4+t1Rc6LPM6bp9pCJ04WPgrFvkfYBR+NCWkpqGimEErk0CC9veAAAgAElEQVSfcHLmjfsATjFeznk6MHPWm0c4hHeqL4DAEUGQUzU9nIHUV3830w8gPMViPVvy13zj+pYNqqQilu25ZgML5BuQGkA/a0eEVinjrOarUo5qs4X4e9pkb9aV03AFKgRaweUXn7jmaFARhukZpeU8xcRXva1Zp1HBGvrRBc+PubDoyxae+JxHwBmBN/mQffijMU0qstI5PBnm2VRv+1deeUWzR5W/YebB8dFb77ypj7zdXQpq8+P8+PBQNRiL1U1rrbBMpkEnvyinw8kxAgnIUqcXW6ur3O32VcfPez46HgiAMVGr3UFA7/3J4KSWOlHZYwBYWVoui4LIDGN7cnSg6pFHhwfKw2g2GpYMgCRpOjg+VhSyieJ2f4mQkDAvS/WUiZN458KmZ9futEiBGSKHRweKD55Mxs3KD6fMc70qCaDbU7IiMwcByVazoZmCjaJimukzziJLVY7Sa3YRBQEM6bAY82xycnSiB+3o+LgoShBpdXi9ehBlWWo2cXJyEjQenSMTVQcvr7sEKjCGhHEUp2lDoVK1JHGWF96zgBiwsYlEQMCvr632lvvMYgnTZiwALB69aJa0utxPojCcIQzMzGYjIYpVQqsovOcCEYvSq+K+VPQjAej1+/qRjDW+BBEQAqIoilO1gdrcuKCn/enTA/0OMVnFzih1mS0TI4CkcRJQq4gMggCHh4e69Msry8mlS957JOz2+kmcaogpXKmhot1sJlEMIq1OJ4pifcelTlf/tnB5XkwgoN5rlhmlzaYqCpycDEWEkJqtpvd9XfbB8VGYE1uFqgIiZOQRgIXHJwN9Io1G2u5siagIj1TSKSZgzRCmk7FnQITjk6mOL8qiKHLNyunk+HA8HRORczyZDBUN58uijri+uhqIwkAzTZr9/rpCpdrNVqvZQKDCD48HR2qo69gxMBF6zxhEcyrRMpGkEVkbfNmShtWrqN1tN1tNZm6kjaQq3IgSQiS0Wg/+yEOSUooHw4H3/uj4UDFg7Xb7f/yffocM+cKNnh4BQhLF/9eX/+/X33kjjuIoir7w3/33cRwba4+PDm7/4F1rLTNf2r5orfHMDx/dVfTgdDI62H+ipkYvv/xqv9dXB4qdS8/pdfHo4b2Hj+4gwKXLl1c7HaUU7e3uqk6FQROZSIWErr94DUTUCNMVmbV2mk0/eP8HKqBxaetCHCWAkBXFvdt3tN5Jur3tpVX1gjk6ONDge+HC9ic+cc27kuIGGqsTute/9y0lOrVbzY3VFS9CRG+/9cbx4SEiNpuNq5+4BgB5lh0eHKsNZL+3FMepkteGh4NQT02zSRrS3c3VdU3LYouEaCJ7/8nBW298V0Uvnx4PnffMvLq29sKLL2mJOh6PVUDm/v0HWhpba9dW13SqhdOpcEjVahl/agICRjZ6sve0ENEBzNFgrF+nmbYaS30RFudefeXGpUs73nv25dHhE92YKG19nXYKRZ4BKqEhEEqcQCFhGw7H05rC4gVFUMAgxTqJunLl+WajCQDTLH/4eI8QAcHaVqsVawpw7RNXyNDgePAf/+Ofqtjm1sbWUq+redN0OtZ6AYSXOh3QupXQgyDAez941znnnLt69ernP/8TCmffudzU4+SK4sGtW5oHrWxsNNLEl+65l673l1f0+lTNSRtFt26+/8a3v6kD0KJwqrUWxfHy6rqgjAfD+/ceaE6xvrG+trGCiMPh8PVvfVuToE67kVQ6/1C2AME5t/foIQCUZfETP/n569dfLMsSBAS4cJkIkEdXifk8frKb5TkiPnq0p1NXazCNLIAYsvfu/ODw6IiIRGAwDpyX6WRs0Gjfw3PwmDGmiQAefL+3cfX5V1QpaXtjs9lMydjcHd26835kVR3Qec8AYg1TFU1cSIhkudPs9INl4dJ6TwuIRtrs9fosHJlmREnoSLAFAEPWYOPja2/X2WPNYs3znAxx6Z1zwb6RTBInKuyykO5q/3huHqcJcDVeNXMewAt5vubApoInf7ipcTB0mysBaiUWCYhahjlFNC22mcNPzQ/7lMZpLRsTvkU9TEUknqeGV6l1NdieUUy5dmGeL9wo6NieM0+RwNJW8UatkE/1MupVqof3FcBCzs/dFwq3c40MZlm3Cgx579l74QUMASJ4zzookDlINwOeO3Q/v6zWhg4zYj39mTW/nHckpB3JypTxjCwBLvgGzoNUpCrJ53tws98sfAz2zM65sgwq1LVYOwfZrNPTpVp1u66Xy5IV/aut9NDNoMU5Ms7084iM7ittg86R6uDUVDfokVf02nokX1PZWQCJP3REWz87dd/wlVShALMIqCoWItRuUXNQnsVyVZkGCOx53r6BhYW4NoybGwXLxxSSVMuu2rIc2M8L0ua1KgXPKzmcbXyc1b6owQQqEoYIzACe51AhtMijngFbdCAS/qUxp5Qt5zkL8zYcmidr+iNVIFvEoZDM6xlWQa3WD5wXXVw8HufPUIX5Q2AB1lgkPGWdEAwT1NNFdQIEn0X0PyNVIQuT32fojSzQbgB00ytLZ24gZRZeXFn680Ce2eUxL7GifRA+N5jWkwqFOOlr1wfSOUeGtKw5LQyiTNi6KVl1i3z1S8/dWfuAKjaFIlQqiFbdiqpvrzlFx9pdk4wxWuL90G7dvMiMLr1UGj7zH2p+Nay1FRkJ4YySS92Kqrg6GFDzZ0LSfCzGWlmhQiER1gMCqqRuFqU+oDZrCBdqxeARIFhENn1kA86/55DknbvywvWf+se/mBf56spKo9kMVJpWCxFLLEa+BMQIsdXub6xdUvO5o9HAWmOj6OGTR2+881YcxZ791esvOXDMfDI+YdZeBm2sbyt+6+6tBzfdXQGJ4/TKi9dFhMgeHhw+eHAbAJaW+p1Om5nJmGufuK7YsKdPD//8y3+uhXGWn+gqNtJ088IOIh4cPn3y9KlK7g5GI0UegEC31das6sXr15fX19l7V7qvfe3rzBKRjE5GP3j7Te/95uZOr7ekTfGdrS2deSk/VivEleXVSAX/beR8AiA2suvrjSqmOJYSQIy1O89d1ueeRja2VGlFETO6svzyn39Fj7tBjmI1+ZNPfupT1sbM3O12L13YYWYy9P3vf384OEHCwXA0yXIAMcayC/upkZhev6fGv3sHA43I03xycnIUxdHJ4PDk8MBYCyARsTEgAAZcWY6Uk/XW69++f+d9ZrbWrKx1AWE6me4+fKQH9fL21lK7Kyyl83f2H+gCbm7vXLv6gqY/N2++V5YFEuZZcfz0CAFsmibtjrIh954cWhsR4fFg8M3vfI+I2PsXX/rEyuqqHp5bd+9qHfoL/+UvaMZYlLlzqjwPu7uPEVHEd9r9zY0LGokuXH6uP5kg4vLysvZm1lZX263U+xgRptNCNaFjY7a3N7UrdP/hozsP7yPC/smw0WhqVbi0tKSnMbXmlesvawT8m29/Y5pNAXA4PBgcPGSWNG12ekvK53JCLIiAQlFvqa+nPBuPJ6OpHvWjp/sAEsXRhSuXQcR53+o2mJwYBoD9gz0EQaTpdHp8fBzU1rtrURQLAJc5MCPidJI9PjoCREN05/bDo8GJXrfDcRYmmmQBQ9K9vLyioXB7e1unRVHcOJkO9G5+/9H7NjFEZnfvwXBUGquCQaUm/e2VpokMCJAxnW5HQ0+310+bTY1rq501fU1jbRylIIBosZrHMTl1LAbyH0dIEpFWu7u6vp1l0ws7O91uxzMjIBq9uMiFoQwbG6dp0xhDhgpfevCMMs2mx4NBHMfe+yzP8iJn5tKXwsLAxiRp2lATvr3HB+PxBADSRqvKiSjP88l4pI7e9Q3T6XYBILJ2f//wye4TrRPH2ZEereXl5cuXLytv0HlvAESk8I4xKHg0okhjfq/bXVtZ8d6XRUloABkQfOlOBkPveam3wo22butmozE3yAixKYmTNEkR0RgrolpClCYqnI5ZNgp8K4Rmq6mbPrEUG5p5IQswy+7urmZg3XZzbanPIiDQ7y8lScrM7Xa72WwqKY+QmJmAysoiyRjOcrXQkUbaiuKYRViU/ykI6NmXZQ4kZZGXRa6GRRTeHBBE2OlteHx0WBYZs8RJ1OkngDCdTg4PD4nIe39pcyM2kaBnliwvQLX9kDqdvkK3itLleU5E2TSbjCYgkALG7Y5mB1mWG+OJaDSa7O3tG2PK0l1+/pqxsY76RuMJC7caze3NLS2QDwcH40kAy2TZFNSEotGJ04Z6qTeaLUFCxMSGiWq/3zPGaO+7yMNZRYJGIwUAa433fjAaWiIWiuPxvLSuZ15fWuqvrlYAlFI1TstCstGAmXv9pU5P6Y0g2tIHBKQ4jjVhmQxHhfoXgLhyIiJpI222mgrRNpGR6ufyLNdbbTQa7u4+Vg5KErUJjIiAsNrqeleqcoYhGo+n43GQSJ2OJ7oRbdKwcapfM44TTYNaagYDIEilL7TcHU6H5JHQjKZj55mBAcBaJmQBoYRMYkAgslGrF+wJ0naapInuokbSCMhnIkILiCC4KAAlH2vhVokpq7S2Z++RKKL4TCEQRuqAdU2H57elFJp+xs7wbINjTnNr9p1lrnCrKePBTYDglIzevCbAs/osC/9ePdqkMnQL0mHnoFfnxsz8n9ejm2+F4KLy9DPB37Lw4+fg2s+k1XOEnHPE6k8VRzPuDs6wCDP7QzhVrMOCgvyHtyNhQWyhem41hiD8g8rdQM5iiOZBALhYqsxLVsviZ8Hz3Bzmm3HVTL3SGj/VQZ39js5FKD/LbbRuTdYfeK5eQ52HUvAcJu1MzQSw53oep9AAZ3H/z9owwYwPVMhLG0imggSehw2XOcWF0wp8p/QwFyg8c5/q48IlEZGq0nnmvMi19znJR4DoS4cU2pXWmiSJNEtKotgYsjZqNVurq2tRHLH3SZIYYwk5KNwCeO9Ho5G2uo2hRiMVgTRNrI2VdmttZKwFwCiKoygh0l5dqeWuMabZbGo/WKBgYWFOkoYxEQIYstVOEuXWQuWSGJANeZ5lmfe+LMs5bwxAMCKo/0CzpEk5qZOjWtMvSRJucf0WqhkyGuVVoIFa/XI6GevT9BGVxujzjKImkvopcAWl8d47/T+TybhSs8fxZFxJZYKNIyKMo0gHc0hYW9ZAJX+BULutKqfPc/BxtJXzskFABomiuNVq6nluNBuNRoNZotgaYwAhNFSDOiiXzulHTGJ1VUQEyLJMlWSSJCFCQiKgolOAYNRICI0QaklrTESEURKnjYYxxjlno6heInaehdmphaJoQ917XlSyIW2uhxaSc965mkSpJ7osS5UuUdycXqg6pjSGRCSyVruWukTGUBxHAMBiAGGaZywSWlYzrnii7tXOFaGPGdBUCEGHB3CuP6UMMxGgGcVMiqKcTjOvwFTnNEsq8jLPcjIkzEq+ZZG8KPR55XmuQuOmfprq4KC2LrXDZSWJWwGOAnSSDKnDOwpk2QRLQTR5NrE2eEoYG9x6rLHWRCBijCU0Cp4ipJoNN2cTgIv3KeigGYC9t64sPq7CrdNZ39ooy2J/f//hk0dIpsiyr/7VXzjnVlZWfuGX/ikzA9HW1tpSJ1a65NWLV4gMIG6tbX72x348GNIiaSR+un8g7Iwx+3u7b7z+bWOsc+6f/tf/dHvrgncuitOt7Stqbfjkyf3xdAgAOzsv7Fy45L1zrnz//e9rrt1fXvvcTwaF9uHRsd6WjTRdXVk1xmRTH0W3rI1EpN9fVXZiNp0+uHtHc5z33nvv8d6ebrKVlRVdae8Ll0+Q6PDg6PGjXb3o7j2+G1680VheXtIz/OlP/4NOuwMA4/H4jTfesNbuPdn75t/+tX6df/JP/ovt7S1mzrLsG1/9c11KShoYxcpz/PQrL8dR7Lwrpye6byduzPlA76HHjx+r2GC713u490jP4dbW1s6VHWa+sL6pZvPTLLt/97Z+neWujW2kn7PbbOigsBgPh8fHNrJJlKytbSpKaDolxUVubKx+6tM3NDG5sLXdSNNq2lAgUdMkw35wEBgMh8PxWIPyiy/saOweZ/zmm29oHLxx44ZW0AAoYIjo4PD4zt3HGgjWdy7ESQIAzZX+p1ypY/6dnZ1+b0lt6Ubf+i57z63W0UWlwuDRsbZmEBG7/Z7CWL2D8ehYe0DHe7vj4QgRL79wWaccwnLv7gONcePJSGOlc273wT3dyZ1ed+fCpogYEwcne2ufu7JDiMbQ3tOD7777jh746XTqnWORXrd7/dqLAHA0OH7w8Lb+VNLqIIVRwPr6eoADIU3HQX6kxBAEi4qpfufOg5s37+rvl9pN9c47PDy6deumyldFab/b6zPz3bu3nCuVmrO7u1sJOVmVWgWARiPgwtJmO04CP6nbWanEyAwIsOeV1e6Vq9veeyLzR//vvx+cHCASWllfT7TnH7W6FMfC3F9asTbWzkOj0QhNBmOM1J406an8mqwEkzORD777vbIsjKVH926SMR9HljSv8hscZ1T0msy8hryCVipd4jPjg2fyCWWOCng+MzNgZCpR/HPT5jnPmdl9wnOA09lb/R3C8Jwm2pkJzjMmLIHuwKxWT+e/UU3whzCLJaHa2UwCtjd8BObgRqX1IwLNfyw5l1OK56Txp5NwhQ7V1zKf8V868zpQOX/PTzwXJAFOlaNnHn394BBmtUw9ffNU+2LJuUgCYQEUnebXQyg8B4yOKr16qsw5hYA/Mx+kmSFVkKADnts6Z6sknHNqqunl87oLC7aA5zNg8bzx2jMH0/O7aWH+NW+0F2QPWAENVWJFcwYVeqI4oE7Ok9l+dpMh1BAquWuMBN0NETJETGRoJqH0o4ZKTqbTw6OjsizGo1GR50BYFgVIieLFF8V0rNhWV5Zh2A2S5wWRQcJJNh2cDFTQsNtsmzChDzghY6jb6RqyzjtmmeYFe+eF8iwTUZFDUiNZZp/lGbNTKZlFBr5eHak+IktmOhlrtO73l40xIhDHqbERAFDplPrBgHGcNBtN3XgnJ7XuCpo4BsRmq5U2UmVTpEepklRazeZSb0mbx9PJxJcOEcbjyfHxsTGmKMqNjU0i4723NvbB6pVa7U4gdqZNihPNkgaDgSESkHanV0GuwRr9S+n0OkQkzHGa+qJUIHtsTCNJmH0AlgAYMo1mEyuRPFeqeLSkcaoaeGmcJnFiIxsnrnR64HHn4kWN3f1+J4lTXYE4iaMkVpZgkecoAoBp2tTGR6PVslEEAoSUNjvalPFY5C7XIzOZTCpVOfCMRDiZTAFJV7soHEuBCHleesdCIiJHh0fZJNehRH9pSYTjOBmPx3oEmL0xqLIR7W5bcVpkoJJ5JTVzB4DpdGIMAYIv/WSSaxhw7LUF6CqXTQFwzuVZLiCIvpYGPTx4qt4Eo5OhL0ohDwC9bpe9F5A0SSaTiZaESv0FhGw6YQn+OimFaGht1Gy1tOs5mGRBqK/Q4QNEURTHcWDGeoceVQEqbTa1ehoNB0qX41qJEoTVt7PudOg7pprISBwnNgqv2ev1DBkkXF5Z0u1kUzo6PhAGJAIjRo2fLdrI6vVsooisBTWnmSmW1E03MmS0a+Q4cJWLaT4aDhGx9oEFkeFg7MuSLGXT/OMISUT04OGDv/3ON11ZRt4bYBDw7LAcEDNncvDgtkIhck8MeoPJ3sGRJg5HR4f37t1WqNj1ay+1mk0Rdr7w3nkPjUZ646UbCvzJSv94/wCEoyiJkscCgkiWos31CyKY5dne08cazQJYBgA8eHa6ilvb68YSEQ2PT26//z4Cxs3mJz/zuUBYrZxahaKSDBE5disra5cvXHTeOe9ff/q+XjtxGjX6Hc+8utTpNlONnZPJ2Dvnvd9Y33jp+kvee0Pmb77+1ePjI2PNZDJ98513vfdbm5s//09+QesFZs4y7bZGz714XUNSu9NLK8PlP/vTP86m00aj8c/++X+rF3WR5ZPRSEvFz3z202kjJaKjo+O333zbEDnn+mm6tbrivY+jWBnbNk13rlxWilQxGg4HY0AixM21jUD+KuF45SCykTGTtJHrxvrJn/ppnRNNRpOD/T19x6WVXpJGAuCK4sndAyUgbm1d1O+yfeXFVq8vzMIwnZRKthwMjukguM7fvvOgatLxdFoASJy20s6yAnIODodhLDWZTEcZIBpD33rvm6PBCSCmafrPf/mfW2PHk8nrb72tn2d5qa/K3ER07cZL2s28dfOD//QXfxFFMYCkqTWEAPD48R1lzA5PxvfvPdITvr69mTYaoUmn8weE4XAogxMAKEvvXZC+e6xlHUhskzRuqNLtK6/cSNMUEQfHxz94601Cg7FJW21gRqSbH7w7mUwQITLRUndVQJj54sXtpX7PM3vn9t7eU2iud2PdfleuPL+xsaE18t0776ufDZLZ3NnRuu/d7789VmX6a1dtFKn+bOlY08HEgtrAGWM3trYrXlwMGKzWXrnxahzHxtCLN55DwjhK3nj721/+q/8niWIAxFbZaFoAJGMbja6GJNuIKYjHR8p60+AUrk8TpVGgjIzyIwAw1j64c/d7f/0NG9uiEF9WsrgOQBAJnzw4OBe99SMp3AwZISZRIylAoVolJXiRBlb6OSR7miPrnk/IrGZkpzy25iV1ZjkwPptfqkKWIpWzEyh09byRQYVvlYXkfF7mp65k5jF7lRM4h4FocIg1dcqtQ8kPIZ3Wr1aLkc8bb81T+euqqk665wu32birMmuG2rYU4ZRf26lZjHMu8MtrxfRFH7GzNYL2yCVgETmk/3N8ztqJW4mdi4a9cAqErX8TurOIxhj27MFrk6iamS6AY7ESbDPG1L67dcmDVQlWG6zXe+B0Q6CeatGCeW8AQ1Y/U3v8MXMNJIdZDwGDNGA1OKzBzTI/KDxvVnjKEq4u1Osy9u/S3j07euc5t3FkdOiUyKky8OAXnLUDOPLDhbTg9NRSgabGWmOtZcGZgAEH2jB+XBO3BZ/yRTCCaqRqluQ9+rApz2++6KLX4+YaigmEUvVNgFk7/zVellnJlefQnuco1wtvp5vJzFFPKkFEnAd/z39O7wNeldnMGUCG3phzmkvVJhNSmWAzIrL3yk7QGdmigMEMg6v95lrCJtiVex+EKwjn9RLm+wh6teqtfnaSv6i/dU79rz0aHefpHXGOazbL2U1f03eqEKzRLkx8tJvjvQMxC+IYMAtJ9csjhS6kTsqQUIScc86VwawhRBP0gbZSm3UKolhrTRRZa8kYniO1LxIIMOBQtHj0rpYN+dCDDeyVsioGPBuulWTqHo1zLjjOCYPO46rzz8iVkCRXUGyeowEtLKAO+1lmrSiZC0nzMjKVJSQvBOUQ3WYWdswswfMJFO+OiEmcIFEUxZGNEQiBatWFH4rVmP9ljImiSDeGUzkdawPTEH+4bNuPduK21Gld3lhzrjw4eDLNJgjE4o1tCvtWe/nllz+vSzkpysIH1kMJzjOgAKLppG2VVLh756768wwHA91x/aX+y5/9Mc8eAael6iyDK90br39LmTVbl7bWL17wnplonJWqH6hvgoTTbHp8cqJdleVeQy0A0kZ69epVRMzKcjAJXNCxL1Q/xKFc2NhS/EurmSIJgSDRi9eeC0AOg2BQRKLIoEEjQhF89sc+VxMsPEVCkSAub15Iu0tKGljf3tF53MbamgaU4XCovlplWd69c1t/fG/3oW5tAXzp+jW9bA+P9hSolURxt9vSrTPJpqV3AoCGXv7UqwIgLBiZw8ExC/faFJkoENm7bUVRZcilqaNYAQjMFEW0sblOhN3lTScxgCBgu7sU/OmiSEDNTsQSilYTImm7o0TK1fWmpgau4MHuIQB49g/2n2gGurS0du2lz2jvYzR8Iy8KIsqz8YP7T0BkZX3t8tqmmlbt7x4UZQkASZJ+6tP/QGdqOztXssoZ7YPbdwUgiqJPfepVJdPr6E7P0Le+9tf6cMqyXFtZCbNwKLRbNB1nSsVCwZXNdQRk9q+++tn+0qoIZ9n0u9/+euD3axYDYqPYJqmiQy5fulid9kq1A2BlaSWKIgRop61Oq0NE0yw7GYXyMxtlWT5FRCTTaLb0QTza3b198wMkYubd/T0WbqTJp165FuBijLu7+xruppOpJtxJo9nv9/WJX7161ZUlAHRXNskYIhocHz159FSTvo31zVajpXxJ27C6/uvrF/tL67r+l1/YiaKoKPP//f/8n1k8AY3KoxN5RCUBgImMwVZ1P5oq14uUu1/bcKIgigcAS/Tee28fHh0q9MRnEQgAYT6a+DHKlEvvfXXlG7AogILAWGMSf5QhCSCN436r6Vx5fAxeSkLDwEQRA8VxY23tgnMeCcdZnnuvg4fdo8fV7IZiG6t61e6Tx7nLCUicAwHvPS6b9a2t0jlEPDgeFnlJhDyZPnnyCBFd6dZ31lvdrvNlPskLLf4l4BYJsPQ+m07rHEQvAhvZ9tISIR6PRsfVULZgXUFBkG6rDQjecxQZQB3k4fLyUkUllZKDsoRIsLvY2r6gqX6W5YPRGJEEodHqoo0R0SBubW4ESLe1egnmea6Qa+/c6OQk5GJSCIcWxsVL/zCKYwGZTicAwMK23UmSnt6opS81HUjSdG19XXWLimI6zTMRaTe8QSVeYVo5d0oeoS+1fGbxICDoyWCr1UQENH0w7YD0TdIqzea0mVQuUYUSnBDAxomIxFHc7fY1wh48Oc4mGSI67w4PDwDAuaLbXVle2VTahzEJoRgyzOOTwRhEOr1+EkUOAAkn48l0molIf8lubG7pfd5stlXj0Tv35ptvMnOn097Y2NB3zLLMFQUgMvMP3nxXEVuNZrO/vBTKfPZ65Y8dsw95XLPVUoDY+sbW2tq2CI9GJ5VSOShbUEAiQ8ZGABJZu7S8crbiaDaaatKXxmmr0yGik5Oh96Gu7LS7wZsIyTZi5Vo+uHfn4PFjxSKNpxMWRoButxeuqJPRJDiUSFmWAMLeJw1QLTcAiJaWtAaPWj0kQ0R5VhCiQWLhVrPV6wbf1sKoLiFI4fcAACAASURBVA13e92NjU3tXfaWulFkxxN6853vOO+AIepwshJOS5NaQZttJlEvVQ4FCFxN3xB1IoN0cLB39/49VfKGcUsvbCNgPHoQz+zFV/mUVWYkyMdZuFUO6/PG2VLVA8weBYPD/dnCLZQ/CiE1uGhqHuDgiLOujkhg8HMYPwdP6nMnk2ehBrLQn1qoYSBI6FcKZHBWe4DhbEslVII4q17VMZxFbbAQlVRhjBGFYs/Jh0PttQZAoqwC0JNWN92rcn3mQj5fkvqZRPw5Q+V5EcLzUOtQT/Gh6ihIVfMsyKGd7aZVfbRT+ug1u13v6mpCNOtrBHbozKGgIjMHDKSf0WWd09/Uzbj6Hec7a1ov0CLX/4zl3ULJqZxlnVR+ONTjlKjbafSDiA+ShH5WzUkF3K8pqSyqh0vVBtAneHYB68bTKUW6WndQhFV1/1RTb9Y8oQVutp/5RwgARFFMRCBgjMeqrJsr2X5YrVUhIgM+Wqeo1uhPI6su6UfyMH9GSBKRP/iDP3jttdfKsvyZn/mZX/u1X9Pw/O/+3b/70pe+tLGx8Tu/8ztXr159lu5HWRbOld559iwIwtJoNFk4TtKiLEMNXMGFa2y6NhSMwkURrLUMjICFmpRVwa4+FlXDPMgyhEH3abH3eXq0mXNqn3erDFV4Dba2xipiRQDd2cc859aMiIY0MXanKvlKZrTEyvSEjEqazWtmhsOupTgieTtzeDbWEtrgiGBMlUK7ALclE0Vx1XcwOqasfwMAzATPJq/IHC5mkeVAtUvDXA+u/q/qa/BsWdSqhGhBjXBGJahlOUNI4vnIT0RRFIGIutTXlAgyquCBdUiaDzpEgXuX55n2tr1XXDsKs7VWFSNrM5hT8fS06AJLWeTZdCrCZZEr7w0AWFBbsqGzDmKN0WZ/pUZg5vuUs2uPSDEEVElE1L9hz0EkFRYmOZXoeFlfUUQ1uoeqyBL8R08FQWDR9GZOsYDqdrkamuoHFAkiyJPp2JZmmk1BvyICPENwdJFQxQDgSlfbmukQk62wY6jlJxZYQ3j2uMFZbOEPDUkaTX/7t387iqLf/d3f7Xa7X/jCF/7kT/7kj/7oj37v937vy1/+8m/8xm/84R/+oUKc539FUXTr5nt/+ed/yt7nJaplabPd+rVf/w1raDAc/clX/5wInfOvvPzqhe0d3XD53kS7k91269KlT+qu3R6c6IX/9a9/rSgL9jzOisPDiWaekXFRLIhgGFfX+to2jo0pRrkw50VWeo8AxphLm5c1S+92l3rLS6GzgFZv61L8yOUAQGjW11Y0qF1d3jQ2JsLjo8PvfOM/ERkEOBkOS687hvr9CwDIzP2Vlc1LO8IyGh7k2Uibwbfef1/YE9HB4cH7tz9QuO2rn/70ansVAIo8f3Dzll5Q0jYa6V548RPdbldEBoPBt7/3ltahr37yU889/7ymVGhj7a3ev3lP1bvXVi//9E/9dFEWAHCSZYp+SpJ4dXlJt/Xh0dPpdIKIJo6D7awh1vwZKXf5pBjrdqcAEBFjon5/C0A8Rlw1StKmrXQ5YnbBZHxwmJdFSUTTafbGm3dEpNfrXb3a1vAxyovCBffN5eWtqgdvnzy6F9Jniu3/x9x7Blt2XWdia+29T7j5vtS5G+iEBggQgUkEgyiS4sAK1pimJdVQFu3R2LTNKhfHJY//8I/+uPzDf6SSy1UzrlIV7VLZmqqRSUklkRxaFDNIAiAyQITO3e/1yzeetPda/rH2Offc9143gkjYl12shxduOGfvtVf4QqgBYGnlyC8fO8XMUSNud7sCmJrmudRoAHj58uWyMcfVyHl5eQEAsyz5q7/6dxL6z505d3jlsHOECA+9710y20qSZLg7kDd89eK6eMOZQHB6mKbpzuaOrId/+PrfKkZmDuPo7H1nJEnf2dweDUbMfM/ZM4tLS0RUFMWPn3pcpg2HDh09eeq0JB2q0QjCSI6EMAwDE9za3vnJM08LtujE8eOdTg8Apsn04qWLHuIUhivHj8sBNi1SZmbHP/j+4wBgrbvvvvPHTx6TGYXSM72UzfXtsj/ti6dGvlsBfU+f9fCRVrOndKiYg8jc++7TcnamyWQyvCS//L/+b/8myaaAqPpWl5SSPA/9Lg61KqsqIk/7wCQRm9hXnntNbC8RULMufw2ZI0mAK2ElQI3iPsAOy/QzoQEDIUJWWDwofTo4JBljvvjFL8rXn/rUpy5dugQAX//61z/3uc+9733ve/jhh7/+9a8/+eSTH/rQh+R38jzP89wYM51Oa6Wb4tKjxiuAK0VMwGq/AdYdxH3eIi/1gCfcowT0hk9wR8EgOHBUvG+udcBA/U4vfZCkWV09auaLNo+TL1mge12n3rL30xtexzuW6necEO8j+u7n2M672tWkzeH2LlKzhLQ2D+U9eOY3+xGISNDws1nVwaCEN7S3mlOc2/drtZr6gHt6Gw8i3M+ivsNSP3j9I9afQWo4VLcBUL/h7aZyoj9LtN/2enuLvaQrV6589atf/aM/+iNmXltbO3XqlASsxcXFGzduVL/2F3/xF1/+8peVUuvr60EQOGuJXJ6DSJ4FYVjqkyuZus5sKkoRPEkcZdYGpWBVpc3o0UzePlDEJ0khe1h9BdYQkb050yh/2QXUNVsQClUJ1imxlDNWx+2WYIXFqVSildJKa0Y+kGZNPFNHNIEJo0j6lPs561prExgm1kZXWIFSyQQAgGq/KYmVMSYM/bGmiwLZCW6gjuoS7+9y3TPMBSyufjpnLVnKblH10zlPMM+C9piGmSeKGDrsab7MXBvm1eChjn6YC9ksHSI/4S49Wnw7spraVGR365xCFKXXim4q+nbomzWqshGVV5FMSnTZa6Wr5zbtjQY8I6wKzsBjLJxjAOF4Cz1Ne+3TUvvMA0doJrdYswkBLwJZRz9w1UJgItFHZcX1Envmj8CzFlFd/aJEtEk/0QGzMlgJMyiFxugao8UzdmoGqbifc6NN9UIMBErXzo454N7BXphkCQBcQVQqZBZkJUsi+9ZD0vXr1//wD//wN3/zNz/ykY8URWGMEaFigc+VtEkAgM9+9rO/+7u/a4z56le/8kdf+h+PnzxdFHm3txRFTSIKw3Aw2JLJ6EKvXXYoIStScuTIDbbWnXPEpPqL1Ok6R4AwGu4WRc7M6XRQFDkTTUfx9saGFG5GW4UMiGSdCkJxjx5MpqlbZ+IgVCiSDsyjsR9gsYJWoyVfj0cDIoeAzhXpdMzAjTjudjuyJ7MsxaJQiHmex1ETlWLiMIpDIZoyjMc7ssKU4XAjICJ2OZTuDlEYknMKVafdOXr0qKQ5V159nUvWVaPRZGZUOssyWYk3b9zY3NgQAufC4qI0HbJsunrzsqyzdm9FKWWLYu3WDVFBbbeiZ5/rFKJbFsSgxGkq1gpKepdutjqC2XNFIY33ZOpHeFoHzVbXZ85+pzMqrTAE4CAMMTCyzEITerHBAKHZ9W2ynIuiUKiCMD567AgDxFFUVFQprXXo/6qpPSQyDEIGIwGu2++T841PofihVlmRCyNhedljI5Iku3H9Jiok4pVDS61WQyBXF1+7KPHx5NGj4KVFcWNnV+a2rjQ9zvMim0xl/ykFURwCwsrKkkSN0XCYpX4CC+y1jMNQsQ/E0ugyCHBrfX0wFLYzHz50WH6qUd28elk+Wq+3GIVe3bzZahqtC+s63X4QBMzc6rSjKAQAFaiFxb5X7B9sTScThUjMUt8hQiR0KEdp7ja2duXWxyYEjTLzasYiI4Hj0cg6C4BJInUJBIFZ7HcZmIiXFg9HcQOIdaCbcUvaTJc3t9ZurQlMLCsyRxYAsSjPEQ1aF95PPLFycllrx2PPnRLoLSosEgaryzTPlAFJcSXShj6ANtrxwqEuOQ4iFQRetcZyV+KjDm/SW/JxW11d/eIXv/jYY499/vOflybRPffc86Mf/ehTn/rU2trarVu37rvvvjpQqhIAPXT42H33PzydJo+855Ejhw875wpbPP3cTyTfOXpoUU48ZWCSTgQ8eevqJQEC4rHs+Moh6SBubqymyQQAJsMNawtmQqYbl7syskHtUFTWtGn1lyS0r+8Mk2SDGU4dXem0GmLis7W9KeGjv7CwsrwiQn/X1q7kRYqobJpOtjeYaXn58NLSoiQ1k8lItkSW5q1WT8Z5zVYnbkVyUq1dvyZJfpoPkyIh5xb6vVbTkz+acYOJECCMwla/jYAmCP783/zZ6vXrgLiwtPxr/8lniMgWbjIZy5H08ks3sjSTSu3oyePSvR7srm2uX5b28JlzDxkT5ln6+sUXxQhvNNrY3rrpnAPg4yfPB2HM7FrtDioPnztx4kS302GAydaGKzI5El3hpKHb7fXanZ4/vd2s9egImbnVbcat2B+wmZOYxYYbkcBVMNBRRZ2nwCBCkdvhIJF2jzImCELBXoTYKgMeUtl6WDncljO6sPl4MpB8Z5qlkrydP3suimJE3NhYf/nFl0Sc5MKFc0ePHyWiNEl//P2fOOeazfihB+6R3PC1q6tXbq4ZpQDgxrWr5cgSTMlu7B1abHZiYDh/z/kwDJXW62trO1sbsm6JLLMDYGO01CDEiNqYKNRKXbp0aTKZKKXCMPjEJz+OiMYEVy9dfO7ZZwJjmDluLkRxi8hFcbS01EPENC+Wl4+KsMHC0qKEpGaWFi4VAe8Xn9sY7mxpowG8xYDSqt3vSP4xTrPda2vSEHjg9FltNAMHJmw2Oh70ME4KmyPicDIids7R0mL/+NG7BcJ/5vTprmicIogDQxSGT/z0mSefezEKIwCYpFMGywyQhp4yGVMQ+TosGWZMhKgm4+Tqa6voBXYCSc0CjBR7FQfUUXlzddV8BDUV2EGrF5176HCRu6Wjrd5iRB5ICQBgAo0GnKU3G5KI6Ld/+7eVUmEY/tmf/dm999776KOPfvrTn/7iF79ojHnqqac++tGPXrhw4XZ/a611zualwJB1thwDIVWTyzozXmtJmVVVuJVeVDAz4PaFm6wxpYUyAaommK+U1DU1NslMjVtK31Kq3asUyHkpGHE1X37XrcP3Nod8UVlKUONB+lgznoHoQwVBGEWAGIRBrQD0PS5jDAV+TieoGW8gYUzlwyWnq+C5hbcZhpGEJGPE0B1rI0Wo0Mmz1kXV85LEZTbDwnr9Up/o15Pz+hyzqryIyFmHIgK/r3DjGTIMGFQFjfNVG+y1b8TZdMV6fkb5qPTFK/s2CWTVu6rUmlSp2I8MimtvRqCzzllrVWmoWZ9+HkB0L/0dxJvXGOMrSkQGEDuGEmevpNoqi0rvZVCfx8/EmzwwStUrSrnoZT8MKh4M14zH6yiB2kXzoIjSS5Ssc8INAERlJMKSUhgYUw7g0OuY4wFNK4FQec6N0WVI0uXY7+CJ3AE2E8zOkrNkc1dkjmrYbiY+MB7dKUv6/Oc/nyTJeDz27qwADz744J/+6Z9+//vf/+xnP/trv/Zrd+6zVXKAiCWBSHJPhP3Y8nojsBLu2LfDuX53lb5Dq/WNZRPu3NKt99ffpqX6QZFaFFfr22xewXFvR7bCRsz1p+a1QXif48jBnd03hzLZe03e4oeuiyze/hf2boS9bBXmA8cEpW7nTKKzbj+zz3DBY/mkMoS3cvsOnK7s8ae8Q+v8zn4KB36/9BSYb+q9uat9O1WZmRTAmxwWYZ0G6Hv0b35GwjMoIkDppORNSd7iKjK3I/R/7nOf2//9Bx54QEwib/u5lBqPtjdWL+ZF/uRPdsQ+zFp38dWrRBzFjdOnz/qS5zA0OrkcC/fcda9gc1bX1/78//zfjTZE9NDDD/dWVpjoyNEzzjrr7Im77v7IrzxmbaG1+fY3v7J+64ZWWunAmJaAMXvd3qFDTWaOFFebvYLVpWmyvrHq/azzNCKnEEdpurG+xUSBaTnWlhgVvvTsC8k0ERGv+9/7iFRhk8moyDNAYFZh0Cp3gRmNUmYnen0+OfJW2uAcOYsIYK395//Vf22CABGHw+F3v/M9rbUt8sl0Im/y8usXR4MhIjYajfc/+gFpSh1ZOtK5+zQRA+C973pPEITWFr1+TzqmrVaz3/OV13SSSt85y/MfPv4DhVgUxcc+9iutVsM5113sylZ21k52dqRVQg6dA7FfESEuAFYq0DpEhPFkuDUaeIjAbE3NljWyEkAWa9WKugAAIffbHsSZFM6S96EpslxSskaj1WovSNK0u7UjbtpxFKz0jzGzCcKo2fT4vTiUpDAI9C994EOolFbq4qsvv/DUUwq1CYPf+p3PKKVsnu+uX5ELePQQdVpNOfxO3HVaTE8Gu7s3r1xVWgFDuxdLpzbPrLOEqBhwcWVZTsDVmxtJWiACUXLt8R/IG263e41mi4m63e7i4qK8t+eefVGili3yuN3xrV6Xo1Oaebw7vHjxZa1UkqTDwVjkz4+dOhI0WggwTbJXnvuZ8OkLct2FBQDQJvjIh39FaQ3AqKyww1564YUb166JAuowmQiWLQyigv0ZubS0tLy8BACdxb7SiokbcbhSQtXztFifromY+ubWDYHarV67nE4nLksBQEGIaJg52d6WbD3Li2mWeZe3wh8e5IizmH0/XksPgTV6OIYiaA8FqfS+Rx+8++wJay0As5rIUAQjBW0NbAJFTqXSaxIoM2rFusB3Br1N5KzNnC2m03FRZNKPHI/GROws2dx6cKu1zjkJSXEkAuyGibe3twJROwTQxhCRCSJEB6jjuNlb6Bd5boJQKSRnxRSGyfNatdJhFDGRomJOAdtnqiRsBmFm+cyVyFrH3o/bb740SaeTqfAz4kZDhl9JMvX+SQylWK0vRetpywGgXwBmXlpZabZaiBiEYZamxpiiyNM0laA5mUxEy70y/hbIXyNuegPeZjMIQmttr78gWXwcx61Wu1yC1gFJJ3symSjveC6gStbaKOWhcvPg5ZknfRmSlFQgzOys9WUF7kUqAIj2RUn49qUlBMZnQAUho1e8tuWfK62CwPiavVSwUohRGJCjMIoaDa95yNof2kFgRK/eGFNk+WgwVEpHcdxbWDBaZ8l0uOlHb8aYKBQjX9VudyTXLvJCG6O1BgZtvCRAqdsnJlpGQhKLSxKiczSdjCVzCcM4ihvknHQw5P6ORpNqAlWrkVnAo+TsdDLRSmVZboX+UupASNKZJqmEJBWCKtuv3d6C1hqAiVMAMEEQhlGd+M1yR6rUGECHgdEKAFqtlgxhozAIw6jsgY5tIUh3K7rJRusiz9gb4wF4rCmRcxKSXG6zae45Elb5TIsAuDySsKKAzORrxUOFnGt2goXlZlFYACYlZCywyGlACIBOOhEl5aFkCrxDhJJ5dInybU2uTca5wkvjgan7vnqKAUhIHfPKvnXwca2uIVL8Ftyj6kPoPQn3nhG139h024R9Hgm1DyfCe3Uq68NdkY7e56Muwm6z90VlB2QP4qk2DN5TJsAv6DGrCPYNhA8Cy+Cda4Z5FA/ugcLTQdeFZ8hyaZcAzugT8w0BhioM4UGPetGH8yXPnsKt7G8CkZ3xiipzgboqQ70qV7i34UheRaDECkhPaAZ/qT/n3gKt9lS1Wp4P0GzgOT+/gzB45f+rPRYbe2+ahyNJSMGyV0cVuwWYvK0bexlKYPVWPdx+MSFJrqxSSEQi+MDES8srzBzFjXavJ4e81opcLjK3SqGcto04XllcMjogJgVAhSVipQxoBaCsdevra9ZabYxzJIrIWpswCuXOxHHUiGMi1pQjOLlxlUsnKlAaqxNbRDC00Y04FhGJ8XjiFTmUMmHIzEpr65yck5PJdDIeSUbAoKr2DDIBs7NFnnmDhyRJhPhqiSyRJAuD3d00SRBwPBg0G5HWOgy0Doyo8Z84cXxxYQEBojhutVoiYBHFsTIhEgHg9vaO0pqJozCSVSqgcD9/yRJrLQI6Z9vtNoKn0eV5bq2LjKq2vcwHmFkZrY2fOQjHWEThUQYMCmeKNrU2SpUXWOsEWOIc5a7wGRYEZa9IoWKByqRl4RbGhKWHi/QYRYdHKMdKG6zrvUruo3Wr5Z2mFhcXbJEqpYIwdFkGStksy3NbnVGhb9yqLJ3K9ILINVtNGYB0e63AGADOs5SBFao0mQoNGxGiKJQvrLWjgZggKJm01nRymIhGo4Fswk6nvbS8IlGj1+tHoZiDa0+LASRyChUTTScTpTUypEnabLW8EFqkpfGstZcocc7t7GwIX0wpvbyyIle71QqkIRboIIxEJg3TNAFygLiiDwvUIAyM9zJBCKNIKQMIzjnTaEmWpLSpbqXLrVf5yv2epQLIlgBUWzfB9cOWbq8RNiJgVkEZkjTrjpLCTUeYu8yRA2BUbgbxAyXmo7Vg/AZNyp+7OAkERsWxNoYn0yTPLSKHYfzRT/yqzI+6/UURoFpduzbY3REkW9hsSYQ+fuzIUu9jwgEaTMfJ7ggAGlFXLvRoOP3aN/7WI9Vt1mz3gTkIouXlRdEjWj5yuNNfJGKbT4gKvztKjJZWs6Z4loQSfdrYPHH0qELMHL/80ity4UzY6EYtZo4azcFoxAQ6MBcvXl1fXRW4w7l7L5Tb1WGRA8B0kKbKn0tr6xtSBSodmNg7Zz39xFNkrYwFz5w4zMwmiqLOopxoH/vlj0ShEUeNySQr4fgaSr307//wx0WRR2H4qV/9FblWWZpNkrF8vXrrWpomANzu9O+98O6yhFRbWztEbLAbGrFp5rDdkLZ5o9OOokgSjvFoJEdsq4mtuIWIOtG6CDzesryASmsBoyHi+u5WlvrCZJhMmDmM4oXIN1zQ6KDEr93a2JX9hmHjUEM5xwCgQs0OAdEW+XBjl5mXlmlhuSdgpTAIpGaM26ZzNpZN02t/YDpNhXG9desWIGZZtr09kByn04wXOk1JiG7dvCKTgWazdfeZUxJW7j5zQtSN//3ffT1Npkqp6TRZXV0VVbyz5893uh0ASNNkuruLSoC7uigKIheGYafTYeYkSV584VlmzrLs0Y989CMf/6TYmZw8dDzQRmu9urZ66drVMAzzrCgS76R2+ZXXgigSg5Mz99wjKf3i4kKjKdoynCQpIo6Go6//3TdRYZ4VH/vEhz7+yU/KWGky2pUTjohdCW177ic/Gu5sA6oHH7m/3e4ws0LQfqDJ4fKyCEha56ZBIOyl4PoqkWPWADDdGTlyCJDnPiHMMsyn3rSGXA3mrVIJOo989Ozxs0esdSqy3tRbYdD0eZEK1O50U/6mZaxH4GKgseH5gFX+mgsmVb1zSgAzT2WFxihEVgqdtTBnAcCodIWyrTtPiXEz8Axx72whzXxWjFpVHRy5cjIahvkhVJn0IgDUDt9ZWl/LpislgFnpJcDrukU405xif40OTkpUsgIsWxVUipnxTHJ4vqDzxs/sEQyCBi4K8r5q5VGmUVUWDmEYIArasExbECpX6HLeMROy5NuVriWWt0YBwNuRaUrTwT1MiQNMFrhWOdRLuLquGxPBTFR+pgZX1R2w3w6bQYIUKrDWCWCNidEbTKiKpDpzo8K6qgGQo72GZVwKt92m0CQmJARgJK5KxmppCTM2LwprrVie+8IN/XS//vAkYa29+x5CUeTyqUszcahb7HGl33gb3YU9RVxFoIF5J/T6mKssBvdW8NWLYzliqxZMLSSx9MKcZeeYHJNjcIRy8DB74QQGNErtDTG1GhzrpBiu/r0TIQkRbZqmw4FzbmeQTTNC4Dh2JgykEsimQ2npbW3c2tjcEE1yWD4kMSnPMlEUBmCRZUfA4ydPKKUBIbfZKBGSIbrMiJZQYMJupymVbhQGIqMbRhGzEPR5vO2ZigqxKtwm08w5BwhsOYqbKNIEljxIgY1If0Rx3O12mVgb0+v18iSRLKnf75eEeMtUIKrxaGsymsg3l5aWvbAJgCsL80gHvgNKLk/HCGoyTW5tvy5jkXPnzoVRl4mYKMnGciWTwW6WF/Kct26tFdbGUeSKQrbjdDxe31gX7kKv2++2uwwcRU1mCb0c6DAOYyIGUCSaw4hGh745R5SVzreVkBY5JzJp6XSaTCaliYDP1NnJMQAILggjVAZlA0daFOwbzVim/KUiLmhjDh05JIjkbr+rA40aASBuRE7OjEbQ7jSYudVu69AoEgCaF2RDBh36gWkUB0ROumnTZCw1Y6fTkQCZZ0kynQrJPmrFUqXGcSgzX2ZOpxOXpwy8vLRQdFtK6eFgsLuzo7VmpulkUhSFzEZb7ab3pI4a2oRErtmIoyhgZq3xw48+ygDWFnefuZuKFLmQZrEAV8LA9LrdMAgUYJ6l4mCa57m1lpnjRuPkXafF63w8HozWVqVE7XQ6iMhA586cAURyLtBme3NbwkE2HZVmxToIjTRvFhb6jSgAUEmSEgMzG62iMPA9nDCXwjkv8vXVNQAwJkinU1XKS+sgRHbAYLPCBwqNcSsARGCIDkdKIzAgEIjQhaWgQQVNiAmVBul7IKhy6SgNKijnJ0rAg5oRLGUITC6ocNoxh8AQsAo54HcmJKWDweD6dWb3+k23PSEEbrdbv/UfN5XWLs+GGzdBYRAEr7z0wmsXL4p7Z/7AI17iPk8n0xEiEvBid9mYABE/8OgHG40mIg4Gm9cuvyD9xWlqJYk1xhxdWfIcH9UgRK3ANNqoFQDYPL/44ovlexO2BADA1njs2DFxM24cWzrETI5cw2beN4ADsd3p9Hsnjp8QcbXJzm4rCuXEO3XqlCwmVxRFmpkgfObp9atXrsvH+dXH/onM+5M03doZSEwJjQegpdPktVdfMUbf2tj40Y8e11oXRbF06Ghv+Rhb62y+M9qV9ff6q6+tXr8pk+Cba+vWUavZ/M1PfUIpZYJgY23tuZ8+bYxh5k8+9k/a7TYzWwfDTFSoqBm3u+2eHOAFSemKcRzKoZXm0ySZyucNvacQ2jTfTTOl1O76xmg4kF5Gt3fUj96AEP0Ur9nvaWOkH2cackorQN/6TaZWCjQAWFheqvp3OkARsHBLHaHfgX9RQgAAIABJREFUNBqN5ZVlyRNtRVfKi6ptX5WK3aIRh0qEN7d21hxRGERHj51kZm3Mi889e/PGDaO1UuqR9z8gWUkct7rdHjMB4s76VWtTAHXhnru10Vrr1ZtrWxtbxmhEXF27JdVTEJgTJ49JpG63Wo0oJqKo2VZhCMxhGHz6N35dALYbW+vXblyR1Fhr0Fophc1mfOr4CaP1qDeNOg2B47728qvJNGGiI8dPvPcDH3WuCMP4r7/6f73w/NNhGCmt7rnvAiqMgvCxX/1VBjZGv/raq6/+7HWRH3JFInlRu908cmxRBM3PnL1bBNW2tnclow/DsN9f8PyBpjI6QITpdPrST58BAIVqMNo0Ys0MEDabwOyI0t2J5FtRU3dXmpK9nHp4OWxqZlBAoco9Ro2KpFhHZmVWlBjhIWslWRKb0OhGqaav4xIHm6XFCAGwaICLJW86GfY1qIB0mxsHJkq/EDsAVAqYtWbppQqsfqZP5lHI4iJhVPmoG5xVLTE5uEQEVlJlhspzjWtfCAOHZ+5IM22dijc4y16VQiZkJZPxA3L7KnOuELeVWFKFKoYaZk8gtPJwzok4hnOuorb6v2CkGXcUg5qDa91dusbFDUqmjmFwWus6LVmX6OEa9/WgeRMehGY80AQZS8mEmklZXdFuXn6IPM7Elca/qCrIX/VCXoCcARA06z2lh4C/58DiB6Eo9k6R/PCz1DwjEpfXSoHogKGkJwOgc5Xedt2ewKvrV4YLXBrJS+WGXjKbkxK3URQF4AGgX1kNJDUdeqtusTMDAGsL56xShQAXasTgUi9JVAmA5UcAwM5X91gzo3OuVJtFVFiZg+N89e0JABKSsG4HUgLC5zCr3h8QnCVXoAwqnZot18qo+TaN5Fm5t0cVAWsSY+904QalhiUAO2uLwiGwLWx1ocRkwhhTIXqqdkOtKYB1GPfsC621MQolqLlqA8/U1PGAT1kLAWpu/eBttTWISnPCOaV93msaUdLtoZL7L1fzfljDnq21Z3gv8Rnmla3qv+nKx5tWF6lNuOHtQM9rkpV7bDvfwt8eQDzYB8u+85/zPjqLpFREpJSrQlKdZF9JVtZfomov1vw6DwYEVFLIM2WYShmZ5+DXNaj0bEpY6agRESiBvlFlRlIp7e0xioTSr1KUuSuXitpLH+DfsOfD7kFKSJQpZKgCSiLdPkiBuBbM/XvrSP834gAgVPHUBNqACgKj9TtjLQk0gvY6Led59snffPTIsWOCM0zTqdJqd3v7W1/7a6U1MzU7/dNnzjCR1vrhhx/U2gSBee2117/7ve9Jrr52fUPWzMnjd8dxrFDfWr/+zE+/p01A5O69/yExIE7T7KWtofRBTpw+u3So55wFZSSVMIE6f/4eOSVGo9HO7o6c5C5JpTvZWWwcO3mCAXZ3tm/euC6r4cK7Hm40msBAyBsbG7J240b78LFQ7tStzXURi2k2Gr1OFxBP3XVmcWFBfDWWl49qrRHVZDq2zIIbMJ69h2EYLi8vB0Gwu7t79erVMAydc9/82t/0+31HFEXhu+69INtssd0Nj/jD7dzZCwhoApO6AklpoJyItSKtmJkUkAJmdM4W6Vhc6gdbt2w6JqL2Yk+koxGUUlEJs1cA2mdw1sKMXOYQMQzjpcUV+elgOmUCBo7CsN3uSAvWWisEZlQo9YXRKm5E0svo91siHS+iBfu3Ub+vq/5IBWWotCXaraZSM7tU+aIRBTa3gEBEH/mVjwIzoFJgwDvc08KKAA4hbPYQkYg7/d6pk4elI1McahA5AERXALAJzNY6r69eD8MAEW9ubCVZJsqfo2Qk77zTajbiyBbFAw8+vNRfckRK4cbudgn+sMv9BVlm2TjJMTNar968+a3vfguVOn7k6P333y/uBgYgTTNECMLw2ae/z8BGm92dDQUA5BhoOthFxETplzOZ2PDRwyunz54mIma4fuOSNNGVVhaM0PampZ9Kt9lViETc7bZPnzlZnu6qGqT8we9/FgCCMPz2t//h6Wd+KoI2sRsxEDFxNJEbqmM2rZIT4qY2QZndYBhI2ItjpQNkBhVYpSW1BBVon/kgUHleyhQSEcFSmAWoYbo5TYcD0fP588efyDNSGtYvT//pJ8w7kSU50BlEKdHKkaPnzp211jrntjauA3CWpTdXb2qtnXNnzneazSY5p7Xu93tamzAMoihKpqkLSRoKcu4NdgdZnCmld7a319bWAhNY506fvUAdf/xMRlMAcIW11imtmBWjL+EQVbvVlhSpKApE8FoUjtg5YYrEjQYDmLHxssRErVar0+kCQ2bzzcGWz9q0jsQBnXm46wG+URgqo5mh2WyaEhkXRbHgUwpbGEnraiHJEYVhGIahUipJEjnwN9bXJuMhEbWazfsv3COO2qE2jbghr768tCwqeI4ZgYCRgGcg6FLuhoHZFTJALPIs14qIiNoKRJpwZi9Wh1bS3DSKykLGrw03SqTEEQFZOfQq4BwCVsQyOeQBOAhCafnVPaa5JmCua8o2+5XCwzCoIlElYEc21MqDqpaWlyTxtJmTkNTutttpxxs06UBORx2EjWYkU6Ew8JVmMR0ScRBoRMjShMkpxDRLfEhSSoT9mRmByBWixh+Gsjwwy3O54JFRjTCUt07WATtkSNN0c2sTEBf7/U6rJQ2HdqtljHe+HQy25A0XeVbpMruiQERGN8YJABTOnQqPLy4uCql4c7vhV6ZPoqXd6e+aUkYrjUhhGLVarT15OiIeXl4GgDiKnu33Qx1GQQQAhc4kJMVNLSFJRaQaFRypEu9XBIHP8RWilrvPnnqLCGrm9113t/eQJAfaIQJS6uw4E72ga1c20imBgnwXaqXoLzIklbkgkXPWWs9IrmHt5qt9EZ88OI2vm02qUj1baa1LbG19Jv2GMOU34DLy3o6AByvMXLT2Anz3oHsrPm2dJ3xnhu/M/Q1mZcMeKumeSmd/4bB/cA77zN3e5n08mJX8Fgq3mknnwU9+4NubL9xw/3NWWmVco/gj1GH9WL9qe/5qhqO4zeMATikJDeXgFYWAoOao1Ler31VNibxClvM8TETN39y5W4y3W7s1J0E4oJfnbQWptAOoLBxKu/FSvO/nVKyVbSTx6xbRDTnPtFbaECrI3ymoJMdx1O12wtAExlS68s5ZZiXcS6U1ORdGsTEBKaWVSqZTpXVRGOdss9mQBJ7DqOryljK5M9dca12WWwkcJgi4kmHnPcGFxDYeEQtbhIHX+tBak+AvEfMsYwDROd5HGseqa8gwU1MNjCAMyHgxEJ9ryJtzzjEDIssakHm2Fe8wxCzPJ5NJnhfOuYWFxSAwRLS4uNhqtZgpiiLniIV2RM6RbyhMk6lCVFrJkF7U8hvNlq48Tsq3G8UNKdy0CZTWMO/jSrU9UGVJ821RVR0sfokYIy0KbYwyZX96XoLTo8NnkHZQKFbHHhcjwWVe5vX2ogHVdKKyscS97W1Ju6wVVB6MR6OtzU1jDAKuHD6s9glvGGMQDQDY6Yi9fSY5Z51TjFjTr/ckCZHia7VaRZ43m41GoyElrSgfMYBBYYoBAqRpzgxaW0fUarUBMQwjJ24YyFqbIKAyofRXoBE3ZPaPCtvttgiuTgsr62c6mQwHA0skiIHKNrWqghFRoRaYhVYaSaNSWVbIzEeUUuo5i3Ou0WwuLS1J4ZYPUzEKKhPbyiC56m3tYUnV744nu0nTXy4bOcDKHjkjARbmibMjpzSOB2k6zspbXfEC3pH2tnXu3nvO/vqvfTxJk8MrS0azVspat7uzDkB55u5/6JcE7dZf6jdaDZliPPPTJ8qxiHn44Qc9T3XxsDEhAPd7PbEG3dltIBpURoO6tTUcTImIGo34wr33yhkYxi1XMBEqJJnspVn6vcd/wMzWuVPHjr3rnvPS7dsZDrKiAGYV6KtXrgBAlmXO02/FL1cxsFa622rKrRkVg0xye8Rjy8t+1caNVrujlBrsbo5sqpVGxK3tHWkqJcl4vOO7V6nNHYlF1+Dxx3+MiI1W8zO/+7vyzu+753y/12PmNE2ffvppecXhcDQt3S5fv3JZsAiD0a5IwS4tH3ro/R+QAl6HkdRWUdw8fvyesufKXuXOeFEPQE4FiwQQadQeYg3WVBMArZARMc3TovAkzKWjS1Lv6SCMmyIhBpNJ4pXwlTJB7CFppSFPy+goDORthKT3j8+M0bI+nXNJkmGtEhRwLJeZQqmsBGnhKmBBGDfE/G596xoixnH8D9/85ve/870ojowxX/zv/mUcxw44VEhKGNZ84uixOAqZ+fn1W0WWQUjJZLI92AjDUKKAViX8L3Uy/Lrrwbvuve98kiQPP/zQkaNH5OVzkGYNTKZuOMhl8Pf6q88IgxoAP/yhjzFzEATbw4lcgYWlJa2UPOfOzrbk0fe/6wFBzyPi4cOHlVLD4fCrf/PXcs2f2rglEDCF+L4Pvt9ERn5hfXVdTqPDx49FjZiZ+4eOGm0AkWz+2sUbgEjEJ4+vtJoekJWkEwBI0slD73n43Y88LBfw3/7bL48nYwYauaY/owLHupAooYzz5FwFgYf9g/Ze6EwuENAfIqQlGJgTAudD+e6VIREbo1av7rzw5E1tZDhVErbZNAKDCGOVwDsDAqiy3DvZhM1EqXiPH/xB+NTbkukqtPUdNHH2ix/dhhf6Vj7jAbXIm2L/1ZmYJeWSKyRBtQMPhlbsx1UfaAQ06yPwz+mO7kME///vUS/w71BLviXdqwOFiGZl1jycou5fcAcXgAPfz/4/qUr4vYsTbzN75zo38E4bE97W0n2rhVuZN3swyVw5/Ea34OcfkiSj0caEYSjngFIy9WdnmYhkQDDfqsB9YaZCdrAJAq2UCYzW2ke7OdQ+8R7yRw2sL6wxUXGv7/b6NaoU++sfwTe86u9zFvVmfFRhWso4k4gUIBzQYKq3jUBICYhobFAFJCyJnfK6VcpdM3cvF734U5LX1sDSaEzE8CsPMsS55lfZgASeqRHgG+xGIl+YzMMyqot7W/2GOwDWZrgwKJ9EEB6wB5dUI7gc8F7rMb2u6LbnwbWheFmTktaatHf0q/ZKudgQmC054RVXDz9cryrzfYFGcGFKKSK2ljy9+cAyQjgx1dnjaeceU+WIfMXFhKXyqu+iKj1nTjF3RuCe877y5izpITOiV21pOdkckiUh7wUT7bnss9at8imPUhhEHndDSGxZbJ+VBhKRRSzNF+qijE6yELiNosbPOyQppdZv3XrpuReKIn/15ZfloxC50fYtYDZBtHTkuOyUKAqrdzkt8lKuhFXpLnvu7LlWu0NET/34SW8ZliWdw0dkCS6sLLaabSKKorjTXZR73Op0m+0WMTPnAA4A4zg4fvwYADiixV6/KsuzaZJmGRNHC/1Td98NzFtbW6PRSJbpzs5OmuVEFISmv9QpNWhSx4SIDJjknhmbjYaD8QgBGdXi8mHPR9EoKLS42TgSHJMjY317U7zJ2u3ee9//AS9gKjoBALtb26MdsRjgfqcrKyAIwiQvpNGxtrFeFEUYht2FJeWrAPvKC8/JJewtHtbGMFG71TXYlS20uNwXoqkOywpOq1YjkgyK8rR0SYTK5cErSjDHjWaj3ZHjd3c4KJU8jR5PZdH3+/1msylXRhBVtdwNUDGAqySJpQCZTKbD4bjU7YXqPMiyjJkbjagjdgwAhUNbtucqSLd3owFgZukPMtHKyooUbsvLy8vLS1EcG2MWD63Eceyc6/a6nXZHRulZOi2yKQBfu3o5T5IgDG6t3phOp8JZWzh0JGw0mEgrs9JelMt7z/nT586eytJs+fBKs98jR8Q0HI3K2lO1Wv6DHzl6xBaWmY02cdREwPFkvLm5KW/YWUuIzByEwbsfepA9oWSS55lUxKtr1wAwz/KTh4+UfUlLINwdWFu/VSXFrU5HAHKxMRFqBkZrS/gYNzoN6QsNhrvDwY6s9pWlvmzMyXg8Li3mV1YO93p9RzRWI5ni5TQZ220JiJlNZaamlFYUe+ZdwjpjAIbx2DN103z18obMcCMTBcp48HYRyh3n3Jw8s4JKWZs68vpwzbAt4h+WN5l+8YWbQjXY3b1x9aojtz0cJJkU2BwzEXO72zl14T6BGCMRsE8BMld4ZS9yiqxE8U631e8vOOcuX7w0GU8AIGo3useXpTHZ6nY6rTYRBWEsDQ4iihuNMI6YwVlX0m714uKi7LZGI66kuIssL9KMiBTA0soKMKd5Xs1NJ5NJYR0RNVuNQ+GSt+IJAiVHHHCapBKAXZ6naQrAnf5ip93xiTGlMsQIw7DZakvrfXc0spYRMY6D02fPI2KWJoOtDUnRt9dvpWmqEJXWvV7Pc4SDMCy1TbI8z7KMAJqtjkwetzZurV67IjrTaaG0CYmo13NHVlLJEZZXluIoJmIMnNDYAq2iKJL3kxRZlYLVEJiIgMzcCJtB3JDcM7m15sc0SmOSyd1ZWlqqFNfm8IReNRyqQ7CcMWFR5IPBoOrUViEpz3PxFe322rIMHPkWBRHlhX9vUah0+bfCztNKybWKG3G32+12OhKSWr1uHMfOUbPTFJdmACymO0wWALa31pPJNAiC3Z1t0UUhgX30+0xktDm5fERC0rGjh44cWSmyvNPrhs2m5LMwGvueiFZR5FOhhYUFwaBHYbTQWVRara2tbdxa9/HFkbTnYx2fuusu0Q6/du3azo5VWjO7nY1tZmKCxd6CPGHBhQP/wbd3tyQxiuO43+/L14HSgXSmycmlRq2DOBTXqdH2ME+974CEJIELDYdDTxLq9mQA10q6TKyUGidunBOgAoDC5SwSd2Acx35GmbMTgac89TS90fT1n95EBczQbjYbYUN2ykJ3BRGZQMd68XAPAbOMs8KzNfutphDtN7cGB6bXv5DCTRsDDoIgcD7osHaFYq4qr7npbslGhnlnxKo+M8bIDK78c67XbnxA4VaHSsMMqUEHFP+CsYR5LkZdHpfrSvH7Rtd1CaGq9MD5wo3L5ykLN7C2EMU/XwqUhdtcvl0VbvMTfeH8i2eaNqZSJqzk6A9oNu0R8H6zbRSag6rXGhy3nfS/uXbPnhdSBzVNaj6TcIf2X11mf65e8//mfT1LwVa9p3ArKykmIiRbn5rXC7fbd4iqVqA3v2B1u56gYGIq2gqUxqvMyMBERTkYJarF9OpG3L5wmxuTVuoa9atdv/57aluRMoX9+xHmBOCqgZkEPqWUCUFCkgm0Dkoz8cqM0ZtEINHMUZAce8kDescIJXNC4ns9FPfcUZwHj+BBUvB7/W8rZ3rcK1leC0kH75Y7m5TueaH9EBWRtXxL3fEDmTx7nxy9mrqqg572Bfr9BK751YYAPw8Ryf3PUDMafJNWunUK022dP+pRm5lEcZi9LCzMmIwz5caZ8GsFEZjrZ/HPpQn/BmugBCUQUTUBPAAch3t8m4Fxf9id+TD7/674mDRjhWFNxOTghjvUnUEPxpfd1jR4X+h5S9dHPFaYywYTzwEGYe/VeFPP//MGAVi466z58CdCYv33f3dl4+a20coE4dkH3g+AjTjotaT5p1avbw52RkohE69evSTRuhlHi72O9BLXVq8OR9tEfOru485ZJmp2uodOnJAV2ekv6igCJmNMvxfJ6Xft2pXNzS2lVLPZCGUILWwLP1Ofbm1ty9UPw0BrJOfiRjNsdMi5pUNHHzChHEQrR4+YMJDstEIz727v7mzt+HaGSA4zLfSX7777DBE5N3XkhQS08mZnaZLcXL/lRyeMjTACABMEy4dWAHE6HQE6pZQJzHd/8O3Lly9prXu9/n/+n/2X4sNz5erV3fV1UWX+9Kc/o7UpiuLZp56SN5bn6TSZyHn7H/5Hv7O4uMRMheXxJNWoiZA1W3CMrNlJE5Ksm4ylHEBrczEXBAAdCtaGoyjutHsAkKZZlnsQwKHDx0s6ocBUBWCg0qnXNslyW54/fmA8KGMKzPhxYDT0+33ZGq8893yR5Urr3cHg5VdfD4Lg1q3Vn736sghdvvd972+1WiIVULJ2OYxjYZAioODCtFK9ZgMAwjB87dWXNrfXgiAIgsAVKRkk5zQ2Os2GGMOM84EjB4C7O4PpZGICM5qkKmii0UhkLeYZMZFp6DPn72ZmWxSnzp07cfYeW+QKQ5UDoE7T7Fvf+PfArI2+cm3t+Zcvaa2Y4V/9q3+5tLQkodUWBACHT6wsHVmQi9DvtEUnm5iSYiIc2KXFfiPy0Pzjx4/KhQqbbclDxoOddDoSfa/paCBdqqtXLv/ge98xJgDmawsdHRhgfujd90VRJKHd5oW02A4fO9xZ6guD95Urr3vAShQ32r4K01ELnFNMJ1dOM7BWZn03GE83BHNvAhYwnTHYjsVvmYMgUlozc6e7ZEwgxJczF077fnGegM2FNrA7KIQokCTT7d0tBOwsNqK4K2ExHWXMjjVC6N6hLElrCEIgFgiDI2Qi0toAoNZGXNeUQiFaAyiBrPnhCM0ogOLCLFMkAM2I2ngfZJloKKWAZ1BGpZDI5XmulIqi0Lm9AtzilVINHfZoJMugUEKS5PWVoNWsCnNlNi4CkkQeSUjVYG1vSli3pZZepoA/PQhT/OSUss5meaa1LmxRWYPVsm5sNBrGBHmeO2u9hZm1VX4RhmEcR8yEuYNpejtrqPppeQCDk2t1aO1Eq0kpzBUCB1GLq0KG94AImMF4c3DPWCDnEMBZm+e5qAMPBgPRWplOp1U+WBU45A2vAQE5DCUkFSJuC+CcrQmncV1WAfel0lTqzVXIWygRzL4/wCzsS6W1IiOavALuK/KcmQ3pJElGo5ExWnwEtNb+/JLGMCqP+AUIwyDQGgAs2dTOoKTV0vXeakqFUSRf5Elo80B4gmEQCptHDA4kObTWMoqmeGXzLdr+pUdembO4EixWJuBcm5+hUhqAtdLe02E+aZK8zYsgKRQh3ZJAwUpx3Ijk2ZyyXHgpRGWs5ydrWVWAyoN7y5oA+PYj31+EHQADEjCFsWq1A62VNtpRBoyFozTNJUsqitzaXCnFtTXETM5rRsxGwsYE8mta672cZd8oqYpcVcKp62j5KiIoEwTeS1p5uiAqVRUZdSt0uS9M7GxRDZtN4EleBeXV6Lco8spNE/yTB3MggH3tJ2JCUETkrK1EJbRSWikEyLNUpLWzNE2TRLhmw+FA66AoikpKMQgCBj8Cn06nw+FIrDeU0tWQ3pFjBqXKXhLgwU6AtZx6FmhgDv5bIobLTjbyPhgU1lo8XK/M5A8Sl6Wpk0s0Tac2z5XWWZbJNnPW1tAGWinDwM7ZPEsrhzNVhiQPfVCqCDxmT3Rj5Ic1sALWFFtlx2Ke53meiwkzzCDOjnxQc7UTpcZlIZ8yF3khy1Qr3ev1tFZEXG9L7W321441rgpYZlQSxWrxnzkTwqpS1rNqCYCtLapelqSB4D1+6m0s4HkDS2L/v7qejJzxUPKra64cyIxMnhlK1kuJInCeUSl14ZQWyVR/82WOJB+gKAoqPLmSyFV0Sq1UeUd8VyaMAokAJjDvTEhCDBIV7xRZ8YnfOKrxJCInifurf/c9Oc6ff/GwRIIiWXf5UMDl7XYbEUHBcDLZ3t6SQv3uCw80Wy0meteDD4qYQ55Nd7fXpHhVRayBgElzpHUDmBWqfmchAK203h3tTCcjOR8D05L71O4v9xcXJLW5cf2ytQURtXrd3GbEhBpbzY7U6yZoKmNQqfFg9+Vnnpbi6OjJk+fuPUzM1tonHv+xnLPjUbIlAxHr2DlZyqfvPi27YjgY3tralO1x8tjRRhxJmNzZ3VVK72ytX37lZaW00jpmPtrvS6b24+/9vSRfzz338qVLV2XEfnNr3ZJrxo1/8c9+T95PZ6G/cviQxMovf/n/GI+nzrlz5+/5whf+W0EbDCfDrd1tAFhe6on2tlLIPqagc5bEFR4xjuMqJI0nQwTIHRfk5w/bG7slTUELHQEAgiCY9fXlpNVBq9mRdvXV6zeGk4lCZHLpYFV+/9nnnv/e934YhgEAtFoC6cV0mm/dGiAigQu0EuHboHMo7C2iws3Va9/627+W5KhwKH66SunDJ84DYmjwxOFQ9IK3dnd11ASlMAgPrSw1m00iihuxdYUQULZurSeTMQB857vfHezuIqJDxFA5cKBh69aNXURm6vcX4qjJzFZbrQMAhcqMRoM8zZRSo+Hoye8/SURZmn7wY7/8B//TfyNBZHFxUa6G1jqKIgBwjrLMY6ALlztmALCOp4nHJfUX+6X2Oe9sbgDAZDJ9/FvflcB3+MjywoIHc7z22quC7nHO3ffud0tu89STP9nd3VFK3XXyWLPZYACXF8nQ+26ZVthyCRMjqrjhaefb29vVxO369avOOVS4sNwHBDSmyMLhWiyLbZCmjgkAifK88HND1gUoco7+g4/3eksNmQJvrt6SKHxz+9pguisnVjNuSNurGbZOHDpK5OJuGLY8mv/0+dPaaBNqDU9b696ZLKne556RECtVl7qWzZtpRv4j6aP7EORv7Xn2OojeAYb7NvqqpRT5gf3I/XI/c2jPOdDwbY3k/j9/1B1c5yWl5gcOeKfrXx94zn+HmeFtYLLfNoJ5vzPzz/1aHfRxqgX4psYLP0fIfn14fWcv6Te5B97QLvi2IWltbe369evW2hMnTpw4cULml88//zwRvfvd7w5q4hIHTVu4gpCKAXdRkCxI59XcoJw71gt+YCZbWFBQibohojGBDMidNUorr6FXsj1FThBKZxup/ysFLAXI+raTrz3NlANt4bmOLCj/+SmpDDUrv4CaEN2eRwllCMWT2LpCK60Uzj0tzM+M5AKiUqgA2JIlcNZaqfXEgdIYQ86hmrVCEJV3JUQMbeTBikrVljK/ieGjH+FhqX+wv21Ux0mIGJMxoYAny66cQkRUHAaBzBOM1tV0qc4z8IPXGWl3bork/yHmeZrnDhBFokQOPKO1ZEnqzexS3BuSap01JuC6Pqdzjkv+rdZaskLxNPYxOfvAAAAgAElEQVQaj+DV2uqx6QChzvmavR509s9zi8IqRCcWF+UZI/I+UKPdKqWk/PRilQfZfCulGBjLllYlm4mo9oUeH3jqBoblJBjIldN75T+41soY2WIecyLb3POVZZRT3tB5fgUDQBAaY4wJtXTQ3mxIYua//Mu//M53vkNEaZp+6Utfes973vPHf/zH3/jGNxDxgx/84Je+9CVJUPc/wkA1G4HWmI4n02KECNbyhfsWAbiwemck9qqws6onu6Es/KLIpMPSanRPHLtL8CRKoeB6X3v9Fa/R46zNpgBIzMsqDmMCJmXdxvaWhKSdjfXJYBcQW/1et9+XqJ2n4gmBQV3Fjrj8J0xbpxEbzchzHDQoxahYaQiDAJUiIh0EKghE47ZwhVzqqBF1my0iwkZZESG2Wi2vhWqLdrspUgFXrlySeKy0aXV7iDidTIKojQqV0iqIUceoFGqjdAQAKjBpUQzToVYBIJw8fhKViqP4yKm7JMSkeXbpylXBRBCTDhQqmCajJ5/6ocCyx5ORuA0//PDDnU6biYzRjbgNVb4n0Xrex1H+O0nztPA+tY1Go+yRqQqoPRwO5VWcczujESJkWbG9tQuITLyw2A/jCBiKIn/1pZekDr16/WbuCsoJAGhklbefoSAMAYCAGKRXTQpDhSEiKgwVR4qNs/Y97/n40qHj0oD72WuvMrAr8ks3t4ARELJpXuWSVYAQ+btSYYi4cAAQxY2omYssadUQawcNozUR9Trdw8ePMZEj1+y0pWd3cXV1e2NTaZ1ME9UIkTjQkLl8bXU1z/NyqqNFANsYxb7B78UmRBVL9n8UNcpLDVlWlDkeAkAQhecvnBFjik6nLch7YL7r9Bn2bH4q8hwQFWKWJuPxSCkMlKK8YAQhADECIE4nE8eFRNkbN1d9B1p0KXxviwlAAahAA6IODCOkRRJwAAAEBSMxOx2qpf6iaOdk2cS6nIhX13dG04wBrLU7OxMZ8BdJELqep1JPtANg4lav0estOHJBQ5nAt7dffvYSA2ujrl1aV+9XbyFL+r3f+70vfOELAPAnf/InX/7yl/M8/8pXvvKVr3wljuNf//Vf//CHP/zYY48d8HTGRJHudqM8NzubG4PdgVDAfulDpxAxzd2lWyNENAG8+kTg0oY2CMDj8UiGCEcOHXnP+95bFDkgpBkkScLMTz/zvDd4CKNuq+PVjaNmq2OZGZSeFkIUUts3rk92th3RBz/2iWMnT8o9WLt+UYJsEKhZBkQEREjMjqiwzrogDjsd70lPAQIyIhmDcRxLSAriyMQRE3GhUpuLaHRfdZe7C85aE4eVinav1/NJBMI0HYsc2t89/t2N9XVEbDRb58/fz8yoIGwueJXlsK1MrpRSxijTAAAThuMs3ZlsAYQA+L5f+qUojKIoPvuu+5VSYRA8/8ILz/z4iSAIZbpsQg2shsPtv/27rwiTOZmMXJ47RyeOHjb6mLM2iqKl5eXKam1Wu7ic61wtxNF4NByLoQWeOnFae4vXGdntypUrwr9JkuTFV35mjF5bu/X3f/8dbXSeFb//n/7OhQvnnXWTafL33/6hhEBr88JlaBEAhiOfp4RGdxttAhHUkzSTjIqNilGhwYbhpmZj08ljj/3eB3/5Q0UOo1H2P/z3f2AdFS65efVnMig41FvqNVqSiousOxFppRUjMyAjF5YzCwCNdrvw2i9kcitrY6HTjcLIWbe8tHz3hXPsiIGbrS4ihqF5/bXXfvbSyyYInHOm3WBmtMGkSF9//XVJW/y0gbnVarTaETMzVRxvHI1GWZYppYw2CwueDJAkifShJB8GgLjReN8H3yMhNM+dsz6WLq0chbInnaaJdzw8frTIM0R88dkn8jQFRAJg47Obwc4ODAAACmt/dvE1ubMrKyv9fk80Nq30qBF1HMjYhxVP0pEsJ6dzRmCgqBGfPH2EiVHh1urGdDpFxNevrjnf/maU9A24Ydqxakspkk1TUftR7c7yoaPWOkArRhLM/A/f+HaSpErj2qVM/7M3HZJkXz3xxBOXL19+5plnfuM3fuOnP/3p+fPnV1ZWAOC9733vT37yk3pIeuaZZ55++mmt9Y9+9IRAS8rCTTCyqigIEYqCXOWoSVVlOlNEE0pqKQpj5PtBEMiPjDFaKw8QrRUjsmGqwk0McyrJqhn0+k2n9HuL+IMKt6oG8fjxGj+2XuaIVQEiGWPCMJS1KycqYDWNum3hJieZjPy10lr7ws0iSuHms99sVrhVkheuyB2gI1JzkO4ZkrtmSXobpDV6fsl+xGldVC8IAmO0qBpqrQNTGBOIkLRSSvrZiAgguq8S1HzRUMO137lwgyxLp1Mo8iJJJrXCzSAgvb3Cra7uJged7y3UICkAMv0MgkBcZ/YUbvWmkhdygoPLqD1O37cp3IqSZzNjE1hbVCHJlnPJPM/zLPM6WdKvrUNnlR+NKuULN4nUdeLtGxVuUpiAc8TEyEjlO/daN7WOIAKXhZvgBRhBeI6lm4aiatUFoXEUKI3GZG954nblypUf/vCH169fX1hYePnll5vNpny/0+lMp9P6b06n083NTa31cDg0kVckOLBhWS4CZJHpo30QmYMw029VVuJ2ney9LbW32wu+s5r9m+6wlpJ+83Dc+RYmz+vB7/OqLI0K9iAn/hHX7e0C9n/hL6KUEnyAOqAN++a6qrdrJ/uLR3w7+Zq9YG6cOxerkDRD2MOsH/pzuThv+ynuLNiAb9htxjturH22o/VOlLdvnTNz/8ehtz/zmc985jOf+drXvvav//W/fuSRR4bDoXx/e3v71KlT9d989NFHH330UQD45jf/ny/8F78/WYuzzL7nA8eOHD/uLKGClCdAbOLoAw+dkZ34yCMIAQNCkdn/5X/+v4vMMrj1SfDkT54ltkR8332nG82Ymd91/pxcuvFkuLZ6BZUmcoazhmoQkdLYabUAWBuzAdkg2WTA9Y3rxAWRQ4WtXg8AtNLrm9svX7wkC/r8qWNBYJg5MKFyChg0atBamHeb61uFc1Kx2yyTwarLcsoLIlLMn/zkJ+V2jsfjne1tAIzA6UDQlah3R6XxpFvoLcqrH1o+EqgQEVut9rkL95FzjVZ86OiS+FZGEd1au2GMybLsZy88L0/e73bf98iH5evf+q1/2mq2mDmdTBHARuHO+sall1+PopCI//m/+IOFxUWFeGP1xt987a+NCZy173//+48eOWKd7XaXFISgAoUGLEv+NZ0meZGViZ4/nJXWYRAwUBCEvaYYBEKRFxYtIqZpOhgMZPlubm4mSaKUmk4n1y9dRKXyvDh58phCsNYxu9FoQMTT6TRJBlAypqqpiI69DoT6f4l702DLsqtMbK2195nu8OYp82VmZWVlVcklSiUJpBZItEHYIWx1g4GmEQ4HQYes6B/GJoAImz92+B/+YRxEEKHANBGmAxoiaAMhoGWQkEBCU4lBLSGpSpWZVZWZ9fJlvnm4955p77X8Y+1z7nlDpiSQqjMyql7ke/fdc8/Ze+01fAOQKIzLe9ReG+Le4UHuPCIdHO442GOxlPC//93/80/+6N9o5IhgLzISG7q09oSKzE4O93b2txEpjuPt7e3xeMzMg8Egiq0idV948cu72/cJqcwLrjwIDGeGzzz9mOKV3v72ty0vLXrPUZKIeEBBhKLMa1f3suwvPvHJT/7lJ5M0AUCjLtci9zY2/vpvv6D5RZJEzUFCxsTeuStXLn/nd73FuVoElheXoigSZhtH7AqNDnGSUWSbJEVF38k1DBVjjI0CvO7l23e02z07N3f58mX114jTyFcVIO7s3y+LXOvQ0rVJltMEPM7wXe/8Xo0Pnr33IZe/t7XFnr13H//oH7GoaN8kTkrEGgAGpqHC+GrnFW1FQTmufeWRcHvnoKpc4xedBJqNG7ecNQyoUtl6dfTCX7+mSKa29z2zNsxohgQjcN+EhBszv/TSS9euXRORmzdvWmvf9a53/fEf//HNmzezLPu7v/u7973vfee+sKrKydjtbudl6VwFhJaR26QOUXppLCLAEC0Y20cAqIoayAs6Qe+5zicFg1MOIwIDSJok2ioqywmLJwERr1qb+l8iUt/xRsccva+dq5g9kVFUJBnDwnmRB1s0a6LYikaiUycBombIhKj07rZ8awfRg8HUYsAzI1Jj9aULglueWlNUGmusNVbJ2UmSsPdpmg0GA2ax1ma9NM0Say2AL8sirEuKe1nQtJwZzqjY+/horAmxd74qSwLwzDPD4cLcPBEdHh242iGgcy5Jkv5g4JxT/7J2hhLqQhZurtO3aXwjVtv2wk6RS3XK08Haifdee67MEkUWO7B1LYTUlDh0+5oEZ1p3A0EXnqr3n9UoRbz3Al4AAeXwcPvo+FDL/F5fvckgsknDiYP2Jd0/bapYlEWeT4iMNE7fhJSlqbbPZmZm5hfmvWeytjOUZGbPwuPx+ODwMC1TROz10oAhrJknlTJ1WhdldSGonUvTZDQ6VuWTucGQEFXt1HvXjmHPQlZFzvAK1cewGcBZa30zhlb/Yh0xow62peEDSiDtElG/F+hNZVVVDUmIkBTvOBodszAAeqkQFZwJhKbFV/oqiMyIZw06vvSu1JBEpnF5c7X3DbfBNE+5Ln0xVqQxNpcGMysDUhe+h2R+D82SPvjBD966dYuI5ubmfvEXf/GZZ575wAc+8IEPfEBEfvInf1JzoockeoIoiBBmWsIIYqwKjGErgK6ac3r3nfOu9oLOCwMRAIHaBxKJSO1aYIsOMoJkZSdEnBacUkMtJYpgh0x64omf0B54aOL6MPru2aE4nqN7dS6+5qzGO7Z9ZfZ8AnAMvtufOoVM6agfTAXbTl5kEO2cGg02Wt1td+PkVjiHuXo6t2/ER7q1EzZojhbUQQ1BulU+MY8El3XvjzapGoGk9lOoN6S0BnrQBduHC3t04faoEupUaSMhVYmjOG7G59hVQWuMp7SX1DIwCMioLZKSY1Sz3BgjjcWb/iMZQ2RABOCESt+ZiKRT9TOa8I3ieQfTIA/zVpjGu5NWBTrX1sNdBJlPIAqbD4ldFnHYN3iCinN+4dZhFH9TtN7zQxIR/dIv/ZI2jIbDYZqmAPDTP/3TP/RDPyQii4uLjyhdbZxmvVmkOo4XI7tIwCzu7ssvMnO/31ueFWZBwP3dA3dQIqCr/eNPrvvaAwlUQxrngiwC4/zQuUJAluYyPVO9o4W5DMkI+2Gf+j1gBiRBLgEE2RGCMRYQqyKfjA6YvTG2P5gFAM9ARDODvh7U+SSvq0oErIl8SsIMFjPoNSuMjCECNMZESRIQsdYYOmvyoo18KasK6sCZypJB01lAE8IuxUmSZikAxkmCKEjC7MbHxywK+e3Nzi4aY6IoHw5nda1hlKKNNGlhz1VZMfMkn4BA5WokXF5ZVKyT81Ve5IawqsqWV+G9VDU7x2VZIpIIOFfd29wUEARkdixKzMOsn7Q9EcQIAQDK5hiHIs91D9R1HcUJBv6UqKgLiGRpqoewG1cE4D1PJpOj42Nmqapq7cJFPZZH49Hh0YGeQ2njrUgIaBAAojhK4kRD6+H+7ng0QqTRwR5Tor7eLKAFDgqUJeu8x3G4NgExUawmnV08mDjX9GANUoyNfqO254o8Z2HvfVGUeVF57yMWxWMZY+69dndv76DX6x0c7AMKCyNgVQcfU1V6bPgZddMWBGbw3h+ODjY27jrnBEScj+NEhKM4rupKLy3rD6I41jDa0mgAQ47GXoLVrYixFhBJmAwJMAADYFXXrqoAMUkSbGwmRpMcAQEEDRprQAANKvQEEb2rXCNalGUJs9S1qaqgLObZ1z7QfdjIKfkXAHClZ6fREwkNPEo5ut0ceDZdYPbIgoDtAvtGs6R+v9/v90/9Y5BDe/gfZh7OrqytP1MU+cLC22eHF5n5+Pjo9/6f/7eq3fqlhScee4N3HJnoS1/70mv3bxljIxv9q5/5KRvZyEavvPzq85/6WxtZNPDK3xyVx0BE7/tny700AeByMb6wfFFvxMX1OEtBgJzjrb1tACBPseV0MLBEe1sbBw/uIoiNkri3rGdIGqdvuH5Vb+HNF28pWSlO0pnFpdr5VV6YX1pgDyKQpnHsjQDGEYlb0JA0GAz6Sazru3CtDCN7XyPavf2jcV5o4tHrD1R2NoriKO2JCBLNLy7FaQIASZrYyAlIXR3f+tp9HeIsLV1au3AdEYp8MtofAaAwzy0u9GaGOnopxkUxKZj5tfubmhTZxPzT73+HJiij/LCoc2Nw73CPTKQcx1Hh948q59xgZy9NYgDI88nLd27px7l8+bKaWVpj3vym5xpiIGo2U5UHNYflu7e5weyFJe0PFtcuCjOREX+zLnIiEufWlpeJaP/g4NU7rxoiZn719qtbO9ssnMbpe97zXgCI4+Tzf/3ZP/uz/xDHCQAsLbFG7SjO0mTAzIPeYGluSTlZz3/++dF4FLKSaEnXNHNuVBtPID8sdcE7c6D7dtDPBjOzLBJFkfNevdpdVdWjEYuwIaK+ieaJKIpS74N594P790TAe/dga4fReud6vezpZ0hE+oPs1//g93//935/0O/vFTkTl74AoEk5r+/Yz+IZk+qePK6OmB0AOPbjcgyCR5OdO3df0ER12F8iigW43+s9+cQ1DUlzc7NZFtbG2vplrcXW169BY4RnTKThqT8cBAm3LGEoGQUJD44O80mOiEsLiwBMRLt7+zdv3dYsbHltIesnWkqU42MNSeM8L6rQPVy7sGYjM5nkh3tjBRVXdVUUk0bSD88yHEk8aH8qTqIo1cO4HRECSHteT+cPjZcJMLX087IuiAUJa1eeW1J8W+wAmumFF1Fqn7cRCZC11Go7kSFrrTHWWFNXTs3fXM3CKBzK3ZZ8HMQaGbwqDChYWqD5Fp6a8TYEUcHpdLiR2unCWxsndTo75usg0eEk/0UeBnd+5OTiPAmnZmQTTnSPCMEiBTAoIbTT4LhRqGnmvsKqBokQpHhOvzueNCBosY66G7sf/GTNIueVPAR0QkLs3Pljl3pKRMpEbwDHpvW5O3ceKs0YvpEzt52ZI5w/OcXTVnrnuEJMS7vza9LzB2oqXWBtkqZJmlJVAbjTKcCpGdSJ4isIS+iSsTYyJhJhazvVnLGhiO4YzZ8s3PARk9OOFvuUnnVSdb/jYHWGxyGNFsK5NhN4AlLRXBJ3H9k/coz7KF7Xt0FVEklpHfoAtCfXDLwFifUvIKs8NiACARAgoaB49siIAHVNdY1EKkkXDM47u1pbUYKIZCwIGGME0AeVaGMJBRS5E2m8JvAiHtrma6M48GhbwXO/2W1htBPfgBkhUqWSUxPlk70kZhBN/lv/2c5H01slaj8tTctQ379hVJNnUHUXbUbowtYJAxvr1fw30CO+DtnI2qhxNAjcYThjLSnBU88K8tTJ9uTfczdPS093zpVl+QhMQtPvUoAIn+JzCbOAylSB907xbNJRfTj17hJWI6pRa3uBrckCsyp7wCnRSI0aNrIBU3caktL+94QEaNvv9N6BYAO748a2MfyEMSQsAtKQ4xE7qDE8249p9AMaDkrYzp1POiWN6uc63RTrSsdM1TWsSv2ERip8SzEcMl00YVXrkKOTMzwipn0b7AB2tl648WJVV3Fi7txeZOa6KmMzb8QbWdp9cImdJxP542txFZMxxpvqjmPDNbnBuP/cY8/oo3lmZiCeAGDt0rzOqsqqiI70pkNVHdbuEAHLqn711hYgAvtscPHpK2vG4N9+/u8e3H9gDBkTb+6r4YR7/PHHnn32GfVxu3T1UlCer93B4ZGwjMfR4eHhKbcS7/0on4TCbVIQRhodSx1XE4pAv58i4LXHryZJprCiYa+vi8uzOM8EgETD2RmbWABI03RxYQ0J93f3b9591RjD7K8//czMzKyAWBPZeKhLczyqRsf3w5XQnvLpDo4OQcAzryzNX732lGdGgJ3tPe8YQOIo/W//xU/pZphbXEizTEC8K0RqQAL0kaLqCH2V5yNS/dFP/dVf6oddWV176smna+9tbAbRUJfV1r1Njbb53s7m1qYuXufrrNcDRHIuynpEFJdVlvWb3DNov5Ax6+vrmiV99zu++8qVSxr7PvaxP8/ziYiQiayNVJRmd39PQBBgaWVp3s8jgnN+PM71DvTSuahhRaVZDwGdq7f3thXM2c+iJDIiEEU2NjYmY5G881u7uxqSsh7NckaI6+sXq6rW6JBlsQh4z3Nzw+Ew894jyGc++SkAydL0pZdf3jo6Pq7KmslSrDP+JAn8V1eONzf2gx3DDJBBEDa94drlJ0FEXOWrsZ5aUZYSIYDxwi/dfFUX2MrKymAwFGEkojhFgDhOZucWNXL0skFYTgD9ONamTUSmOA4NyyzrRTYCgPzYizADptng6pXV4JwaWzSBc5cOMg3NbMlPQoT967/5vHOuruu8mKjnjaudqxvRr2Z2hoRRI9rnEVkFkExg4oi0EjVd2WqgSE8siKxNk4hZbBwZazQeRj1GFCTV4fv22wEg4iSf7O7v1s7dv79ZFbl6ihpMiTxKlo9n2Hsiy9U8cU5gCIgP2RsQ8DFGq7NLupp7i7Pq59nvpwQGEclKVSkABIvyyNdewTIH+3cQkb27MlxanO0bg5PR4f3Ne9ZaMpGPFwCgLKuFhdkojlX9ZWZupgEWjbe3dxGhrqqiKIIZUZiwAAtXdR2Ecmrva/bCCOBVtd4jCMSRYYb5ubnZuYWAjvPhQKtqP84DAyBOEj3k0zTVrXtIo6OjUWSt8x6RkiQVEe+YTKIV2uT4qMrHOvKYcGBiT/IcAGrnl5cWZucXNFjcvX2vyAsRWV7K3viG7whDLitAgIg7u/edU8Ka6PRVAMR7X5VaY28+eKD0TmNIrj/JvjaRNZpdinhmz4yIeZHv7m4TooD0ezNGhXtEyERERFFkorgjVBTWw3A41K+TZH1ldUm/9Rd/8fFWWkybzcycF0306fX0/ldVXddeT/6010vSAEyfn19AxKooR5OxHlFZapKINCSZxuxZmCdVFSD+EaapQcThcFDXXkNSmsYiwJ7TNIljw0x1Xb32yh0ATJN4b/9gUpYeOLIZBUoNxZHuVajzanx0pE3ohWE/AhSAOIrnFtZApCpGx4esGGoyQcCWveztH2pIStK+oNEKOs9zAPDMykkUkSTJWuBrbGxri+arECwiE+msPR9FIg4AjYlnZ3oakioW3wCykzTVkBRVJdWlhqTNzXtlWXjP3tci2ifg1mEcg4QZIBB1QlKn6moSNOp2spvvm2CYbGJKspiZ434cJVFTB1QiosqFr1PhJizes/dsjI2jWAkNoVEgTKTeXUBGiMJfE5Eeno7rOmgFgPPeBMBh83k77Q7tBQXOilGkPyJZ7c6C7sXQ2AjIIJ06dSUUoaO59TChie70V/sjAgK+W7gBnBQPMafhCCf6NaddM09l6KGphCgo4lkYGaeT9rOcD6Jui6cRk/NhlAvdtz6Z2yueosltm7aa/kITJN3hlIFiwBNhKwrYJamIiGcRYOGz0AF906oqdc8455yrQUBVaPXTdcXP1C3uVDES0B+Iiqhi9idVSgLMvduxmhL0BVTd3HtucAkqaQZawoeuHGKiU4gkaVV9u1WSNOwu1Vycyrw1z897ByI+KF3IqSos5I+AxpAhg4BKygEAY050mqyx3EriNO0gMnSmIpMzJVqnTQbYVWJBCKQKa6wzEYBvXNHxhMbLSf+IjvbI6Upw6lUpJyJA+HnfuHZ4bm5y6ErAwyVlvsUhqarcu77v2R/5sf9aBD70h3/y8ec/ZSNrrX36qTcBSBr3Xnv1JQE2ZF95+fbOzn0yxhD5ycQQ1bV78qkr3/d9b6kqR0g3X/5aXkwQ0ZqBgsHyfLJ/vK0LbnS8W9cVEtZFnR/v6gr82ouf9PBpAF5bXl1ffWuA1Q2GShRaXyLyh5HUAPC5579clBUAEFkTJ+y9QZwZzignbmV1OY4ihfEZsohoCTa3H2zc39RA8MT1JzRMMdc0joiwyCvvjhRpVhXHChIpy7p1ziKSKE4EhGykITtNk6eeeqLlRh0dTZQT9Nxb3xK2E4hpFvVRVTGId/7WjReUqftgc/P//uC/McYwy796/wfm5+dFxFX15uZdpT7NzM8lWSIiMzPz2gIX4eXllRYfrLAaAbj82NUwJ/b+hRe+AoBkDTVnnRcAMoKQ9oeXZ4aqU3z37t38KNemBhoUlKyfPfH0dQRAQ/dfe+1gb1cJfX/6px/WGHT5ypWn3/AG7Xb/1E//a2Vdbd6791d/8Zc2ipz3HX+klJp23fzCAgR9QiHSzwFFcQgA3vle0ojJGohQBMEAP3jwII5jACGQSML8I6bYZhYQ5mZm69qBiImibNjTrZiPc19vIcLh0fG///0/1oCau/LxJ64hgjGJRlJhPtzaDooXxq0seQ02FZY1I7O3NFyemwWR4xFWxbFmSa6udGGw92V5BIAisrlZbW9bxVtt723qE3npxa/oZk6yzEaxik9+/7t/QFU3xuPJ9vauBuirj1/OeikImJiJhQiL2u0dHWHTXNNwRoai/qzGu629zXubG0GktNhRGOfMQtYyrp1njX1RcyARoW2MoVqsVDt5IETbwPEFpng6kwQGIxFYBBFOsyxJYo1BKphJho72jvl18HFjlvnF4dVrFxCQodw92IqTKI6TpJcggjWmyMe6o8bj/Pi4MMYQ4d7OmAirqr58yQ+yYUk1IbH3Siz07HSk5NnVvtR+YFkVdVUiYV057ytFRY7zo7yqRPjq+trsYJbFIWIcG82ZsxhQHIIHgMODg8mk0InmcH7BO+dq551OuIQa3fsWZoqIZTlR8GvHb2dKaGUvtTgtiYqyCG6UZZXnuT6/Xj8lUggotlzNfl8z7UCq1C+Gs7N6FCXGRti0t8tCBS1VsyKKoqos79y+G0URMw+Gs0vLKyIyOh5t39/SMKdJhIhENqLgW319AoYAACAASURBVAsm7jXQxulqSGKr13N0dLS/v09EZE8of4cFaijNgoqjFy7rEsOvtbqjev0eApAxwlwWBRF557a3twGgruuFxUUig8gAsH7pCiJZa13tfV0bIvbe+SCHwhwMxYgwiuOQIHKNEPaMTtxF2FCQB1RZDk1IyrLUTM1AIDJIoHqQJgjCACLGRlGsOp/gva9KJsQiLzY2t9Scajg/0xv2RMSYWEMSe69mcABCyFEc7mEFzIKKbo6tBRFrjKpdAYC4rg5fUEMuy7yqQv7oGzQc15X2rqM0JhuBCBkqqxINauG8f7CvmqKX/CpAIiAN7g0ApPKOhLqEWAFi/eUgZVVO8rE1FgAcV16cCJjYNIBvxGZOH5uoHb3Z5DTg3lDUDnBbhSIB34YkStoht5A4EUqzqA1JdY1B6DY2r1PhxgzsdIwNIACMwKhKndR0xBon4/C3Q82beiGdnc7qaF9/MJQsFIzYOyhihaICs3CAGeuqPTF3bCcpU/wvfh2C48Omcp3a5JzRMjxkincKYH2y8g1cZHVxaw8xbrXxT4Bpg7lbMzbi0x5TAM2wTkfhwUTk7FCmS2rvYruZ5REDsrZ0mAqNn5ysa3DnjiBB816s+nfc+CY9Cj3fTIzw9Gyn0RRvNA1PuGwBBHPdjn1mx1eLuyO6zgUjIipk8lSVfcIjsKsu0RX/68AI4OH6E93H1LYONIUBhQhYC40eno53TtrPdWT5tHfWqBScnTh1H2tz0mAzEuvcSjlTAQqc9Xo4Ucp1NPA6RJyzwAzpiIJ2lC9eh5CEgE7KnEfCMFhIVi/PRZGNonh+PkGAyEbzA6NZUn+GsjEag0RoUiESY8RhuXe8X1WOEBmBrEWEqqqQPBHmeX50dExIgFjkpQrIe8e9rKfLwERRpv4lxM6NBBiQqlJzEFdVpXOsTBwTJ1ZbwFGso9DgSgJhcutFDc6noUx7SSfdH8V7pX0hYtKo7ocNpismthYQEFBYvDCAeOfLsgJQemr47d4zg9OVoh6qurobuQfwzrGIc/Xx8ZHqHCLi2toFY4zGKXUuYWayVkeBZVXpCTkej1qTiSTTTFuyLIuicHCpeSwRFUWR52MkiuIpVA+lddnkomDdTa52jYA/xUkKIMQkhIEyaiw1+6SqCs2SiiJXw2sAKA5H6nVxPBotLC5GUTTO8+LgUNMuES9TBZUgjNvvZbE1+oAm+bGeP3EU6ypPIogIlQViiAwSIIB3RVkKnjhrer2ec14LTKv0DkWBCQsie2+tUoKlQWBgu59EwMatcqEPiqUAxiYCSOzR2KoqQYSF49gGqkDdRbd1B+VTPJ1+7EqN3UU8iPFOaVUbG3fjOEaAoigVzSjMk/GYCERkfHQozIhYlHmW9TTOVa4KgsIo2zvbAGCtOT4+KsrCtAAOEEBpm1OKlWiK+qZuJjR2yiwJJ1xDyiUENOfo2whyiFEYtCgZvZMqSKxIrUMRhtfFNImQHpR3vjr6bF26d/zYpX/6E5dEwIB53KwDQGTN8mJfxyKDz6Q3bkaRNYCQDErtSuzTq3/0qR018Lp2+Xq2NC8sG/c3hMUY8+D+gy/8zRdUj2llbi6JEmafpdmbnvkO7X3OLi5kw74h87nPfXJz80VrDQjVxQwAeFcxmd78E95VADC3dmXIAgCWsGeMF56dnRnM9PRBlsCVqxGxYi8kgOpxlijymIh0zmWMGY1GGxsbiLiysj4zY9WxpygC2zuJ47XlRc1cNu/tlEWlg4Yy92GcAaEUL4uRTvGiyC4vPhbgtpMiLwJP8nB/n73Li+JTn/6E0l/f+tx3/U//4y/oIiaWg50dAPAI/ZV5baPeufXK8eGhMebWjZd1ppOkyaUr6yLsnHvHO97x2GOPqfPSjZdeZmYis7+//drGLQCcX1jp92cV8j/oDRuNnnIyCaDq3QdbZVEASNLrXbz6uBeJyQySVABsZHfubhRHI2MNC9977aZGTGOAbOydA4A//8Rn87zw3l9/4omf/JfvA4CvfvXLH/v4R6yNAYDrkQZTY4MnjXfuTd/1zquXH3PeVVX1//3ph5l9ZKK11TXNjHq9XhzHImKI5tJMLYZ29/ZuvnJb07R+FmuV9+yzz1obIVGeT7Z2tgkR0TzYvFtMxkQ0LsrV1TXdc7mvavYIUFcc2A+I8xevAgABlMxFmGPCIE0DRFJg47U7ItIbZBcvrSrq7eWbR2VoQfjShfQgQj0CtUmOCMDeb2zcCdEuINcAAD772Y8pBfLihfW3vvVtzjkRrssjlRW+d++udhzW1i68653/1HtHSHe3Xx1PRkQ0Gh3/9u/+poZAa6fasjZGHZb1Z7ImmQLTkofJt2GIombmEIWXRJHpuF02BEalnQMAwLgc6xCIIjSJQYEJ543ENdRcq1D1iA9Oq+5+mwo3xT4iELN4F3JZRq2lg1Ebs2odw4mhQQd+JiTTo6TjcNv1wwnkwE523ThWd01vThnYTima02EN/KNEhfDrs0nP0ZFp68lv9p3aPLyl459kFk1NZk9jqUP2jkprfaQe0PSLR/0YdkCV3Qrn5N081zy2o1qNrUHA12UFnPVEmL7jQ4CaZ8vY8DMdy9yT1mZf70o6heRJrXxNC06jrr/ZtXSWxGqMJeLGKu7UAwIiIqET9twny0UTZnzQRYc//JM1GdNZkLacJ071zbjknt4Grxt6ewqThdCFxzY7RUqTWBii2EbWqHMZIFhjNLJYY6KGKp1EcRLFIhLbSLMkQ0bV73UdtvFFGEVAGIFRaTVqZkdIADQt8+VcJPt03+ojBwAkg4TTjlVoqZyYvusLGk2MVklS4Se+hQMbIhahxkQEO2TFLmQ2eCie5DF257LtMFXBU1VVOufaixNmDfoKi9D/q96rMcapfSMAEtZ1pbLz55IJFJ0EgMG0smnKNt+FtuuvGtgq5NKhLoTN33wXmIPWiq+d995aG/RbmL33zntt1QOo8WSwEQf2Z5g9qskf69MPdwNZGUJBxr+JMi1io7sDW0M9dUY8ZZN5WtLzoXT66cb9un4KxpqGG0DfrMtO1+1DDddUMqkD+Drjxi4K5qBAnzBGl/Qpo/bp+UXQXYRIDekfYFrN0RR2IAbVUXWqx3aGE9QSPyWM+VGB2izM4lvarUI8+Jul3f6D41GS2uFsUpVmtuS0ZkEgIEpHhHA0KX/7P3yOEMnQa68d7B9MFO4le649EKIo1c/zwoO7hoyAcKHbDQzbtccuhyJ1zOUYWMiSZIuHmiPZ+YT61lpzKAf3821jrQGzNuwBgHdiU8cyEagAwKIEJL2vx5NSBHxdTsqRjoxn5uYVdlBV1d7uvu7GyBh9ZgR4f2OjpRg++eTTAqCcDGsREGZmH1Oa0/Hx0e2NDR209YfD4dxQhT1E63lmdrW2KobZgIwRAEPK9gYQzLIoSaw+/covK2f9fT/x3+n9sRQ92NnSr9evXU3TFBFH49GtV24RoTX21Vde3n6wBYhvefNbhsMBe47ieGXtggTVsXj/4Ej36mg00b2dpP1nnvlOAbFEBkkCNHkOiYyh7e3tGze+Zq0RlpXVlTRNhZmsTa1VNMrx8Uj3yvLaWpL1kNCQWbm4ohSfrQfbL3zpi7rEH7u4pqd5lmafef55o+bpu4dqN7A0N7CGlHWRGgsiQubGSy/dvX1bP+/K4pIKgCzMziuofW5m0EtTjbMH+0fa9Dsej4WJAUVkcX0lS1MBuXP3nsYxMhTFwd0ATCKWhUiMSOA5KQmGESROMjI2iD4ZG042ltamp5WZJQQERoLx4eH+1gMN0YfHe87XACgg3PgCUBxZdVRGcL5GFT7ngNxJktRGoZc3O+yHblq/X5alzjkODncnxQhE0kEPAFiYErO5vcHChObV268cHR0SUVmVg/5QQ9hkMh4dj6lRzguZArnTRBCAvBxpoYqElASHnyjJjLECkqbNAJcwTNwEkiSKbKxhdDZLwvlviBIDAkTYAqqUxGMsHg3kXDGAb32WFMWUZhESDkvX86jze6KCCPPq8DNf/JIhQgRXxS64VEBJRRv70YRLku1cW5sJRAjAwiuDlTevv9mzB8Tx6LguawBkL3F/IgICbPol9WqyPIHJQXVs2VoTXUmD2oOJvEApUAOAQaNVnee6nEwAsKzL42LUmgTZ0Fl34+OJhqQ0jZriHw739jQbml9eXl1fF5E8z51z6h6xsLCISNaaqqp29/YU/za/uNjr9RTtVzhFqTjmSp93mqXabKbG10hA4tg2yDoYzg41Z3nHyvfoJHtj496LL76kv7w3nFF7zpp5cnys9MLtra179+4J83/zwz906dK6q52N4oWlNUVF3tvcODw80HynKEtNO+bn5y9eXGeRuhi5qtAsdGZmiETW2r29vd3d3SiK2PMTT11fWFjQQEYsiFCxHxWl5gLD2bm011dc0nNvfau2sT77qU9//lOfjtMUAJ54w3dEUYyIk7y4cevlyNrt7a3jca5yHwuzfSQMHlAUuKn3728WRaEaeM8+/Yy6xc4MhxqS5udmBr3AwJhMctULLsoSBIWBGYbD2cGgLyK3X/1yVVUi0utnq6vLYRBBEZAHIiCn6h8tERJAyJg4SZp0o2lpmymLoq7rxlNaEBiRJnm+tXlfEzFnyhYzqYQEBVyaZk7C7NuhapMSRlkaPs7ssB/OQiJf1wHEPxmXVQECC6vL6hKGhg6O91WJaXd3e39vn4g8+zTJ9LWT8bgsylDC+yYPMsFhRfx0tHo4OtQpEBKYJFxw1uPYxALCPa9dJyKyg0jvf0wJmkgDcy+LQ/5kCGMjAqm1sSGZtnbAWOqnO+emma9n4YaIlMSxhiTwpjUHtq3rPBlsILNI4ZSIxGpIMmRCKwEVaDttmwSRfjlduBHgN1K4aSKMxgS9wVCwAYWpUbBXb3tA3Zy/lS5sOznMjCjewwkx5mbU3RmHnkOmlzN3EjoggHY65oxrCzdoVNeDJ1ozaw+CYUTOuaqqvXMCqAC5Tj/udOHmvTs1ldeSRzs4LcWfG68xaAbt3YaRfleLozBFQmD2KmYGjRWKvmOkrgbGEGJr03y6g9GYqennUlC7vpFuia6zplH9uJOFUvsDbTnzzRRuXZ9x6TydR3WFGjAqeKRGfh+/iW3UvKNnj4Kn8rFQeMppq0tVy1RnDLVyO+Ucd4rMPL1FNL04fWG3cFPxL2ySo/aLTlMGznGaEABRJQ/mboNLAFnk9Sncpg+XwyxBGj8SgEavqjF0FxuypFqmqoSn0D2nmmMsrLqcoVBV4WLfBZqo6iGSdqpa+AY14iShmYqn3VY7mJeTQiLyCEUSOE8lstszwofjkr6RzsIJ1UoFyXKg6nd/uVIoWyWQZmFN8QrdCcDZo0mlXOgkAKoJ/ScxN+dw46cT7q78yEnsVRBv6Ir5n7owbDRb4cS/nxjmtiAMbQa1PXJsRGYCJEqm/ezGuwTPbXg/EoAGnTPo0Zz3M3fjG/U+blWFT+DaHtIblkcoVYSF5/15BhMdaojA6eNQznSvv6Gco/mi5Y5wUDvpstYBAD2JBLmkE21xfugYAb+1DhYf+tCf/PoH/+cf/edvLyb1le/uza5H7KUq5PN/VIJgUZWvvHYXEauy/s/f+/Ynn33M1b6u69/9rd+uXQ0AnsQ1kE6yAcVPUusDc7XURYWAAjCTJBEZQaAas3spINTOvfWfPPf4k1e55sN4r6RC+0W9kUKTYeu+u/tySRYBgNOnARNEqMriaH+PWZZXVp64fl2P7rt37+rU1hBlcaI3fTA3FyUJiCDR6uqqLgVf11UVtDG9D4/n6HgvKAdm2fz8nH59cWU1iRPNYmyWIUJZFPu7u4pwoyTFxlR+eX5RT6rt7b3Dg2Di/vgTVyJrizz/7d/6t9roXlq7cPn6k+wcEv273/i1g71dEVm/tP7DP/LPnasBsKqc1h2z8yuBQ8vsCgcA7PnClQsz87ONcogKVkS3Xr75mec/F0WWa6cyJYD4znd9j40jCgznPUQSkdmZnrUGAJ2r9nY3iczB/uHff/kFQ+TZPffc25aXV/Rm9nuzinjIq2JcjPWZfukL/7EoCiIqy3J/f1/YL69devypZ7zzRPTpP/uT44MDAZiZHT773Bs1Pl6/emVxbpaZoyj6nne+U3vYvX6i27LIy7qq9Rg43tlrp2ncJBaOy7BhXJMykI4CgIhu3709nowQsar9q7fv6T/u7W0fHx8ZY8b5pHJOs2ljwztWrirKQqNB2utpNl1MJjv3NpCICXzTLfZVUK0GBGxm6kbCYMsYevKpx42hqqpuv6ZCC2JtbChSWtLjVy5rWpdl6fzCrIbv8WTkvAOANzzzbBInRHT//sanPv3nCs4OCCNEV5cv3PyyhjRXeXGNOLe3TS0yxRlzmzChaWapnl3ZdLKGcRSLSFnWTYknrbNm96BqQwqRMSYRkaQPcRqSgBpFscqbd3d/7f/69ff/9+//9mdJDOAFvCACWkQENOAcgID3gfiHQHEc9XpZXTlrQzIDQYtMTkGzmkMPANmxUwIXYySEWrhXpQeCugq+DOybJF8QJUi1G4MAtXO1cmKFGZARG7PbBtx4qu6As55fLbJA8yAAdYzgMPwJblzBhSKOtVlzBq2LJ8bsZ+DgLU91qunX5Ah1Xau4gvdMRFoZTibj0ehYWPJ80mYn1hgh07JtQ0hyISR1kyzNNay1gKhQRnYhJKn5aptkK7+pdXZqs8KglFrXbEgV7zs3UwtmRsQojhFOp5Zt1RnHqaeayAQNoxOZIFpjlD0TRVGaJDpajGPVDEFXe+XitmVpQzNtRPWrFp5uOoz20+kSInQ9tac54VmJu3BXEE6wooXZo4pdofk6+W+TpxM1PmOdnEwegvPuCi20C0PPrbqqxDIAGGuREATVf6VlBZxFYLfGISckjBBP+EecrGul1S8T8U2MQzxHoYkQxHgRMTEEnXEAFyQIsbUPeB2UAICdsBNEUFkFY8FYAkHDCr0GRIhiGyeR7mvvvHMeQMQgGJyiH7olQ1fj8WTKjKJWJmDIRFFM4ow13hrSkEStYDuybxCqU2I9tmbN54ck7kJtsPXawCa0tJCQNiSde1em64nOGQm3CILTmJ4z8lrawdH/tuskjMC9hO4VIiCwl85vwZakoiFJmQpNyDPQWHhqSBLvobUh6+zeFuvQDNHbhg6y987VIuSDmBQpqjhw8QENGItWP45WmmrxUlUVe+e9V2CkIlHruhYAV9fee8/sPXvnvHPMTEjNOPwhOf65epR4Rpq+swnbJ66dwVNBUy0nVWHCfF2yUReGJo3cmu58UjE5gY7/RAsc6/a2wkvwpM3ceYqAAfCApAyB8EbSaBXItGk9/W5D1m/Icd8YyAgB/xGGdPgNg/C+9SCAbIHmH4+qAse5z2/nIFDlvHH7AASdd5NjAARf0wtfvLu3N/KOWfjC5QsMTIijyWTn4AADLyGwFhFD5y02IhJrboIWA+jBQDWsAcEzb+y+Vn11wo7NAmCixDYcSE8TRU/1zLoQCgDkpagFtvfV/v4eM/d6fTXaRcTFxcUQkpR43vT82Nfaz9rbDdoD1hgFDdssQvX3FBmN97QZrW6wgAhixpNJWZQiQtb2ghhQ1RxNkhhjrAUBMtQe3Sx15QsDpD1OYhSQ1QtrWrjNzc9GJMYAElxYW+2lMYgsLMwfHh1rKpTEYWpb114lnIhobnFBl+zh4eHB0UFLS9R3LIviO974RmPM+Pi4aAjDwMK1R/SoFQoAAI7HE1YJa5S5+SVEMiZ54olShWiQzOHxsbAgQlGpHD2NJ+Oj42Mt3K5eu6YTg7qux6MRIrLA5p2XdeVfeexKfWFVRAbDwaX1SyzsPV967MrS4oLqB8RZqmifKIn0OCmLssUw+boKPHhCMlbtD3xdO2YE8HXVsEBMkgbx7MXFxZnZISKWVb27N9Z7lWU9V1fGGCGsndP0sKimsustUKgsSw1LVV1TZBCJUW8aiECWpa2t06QMd5V9gLZ4TwcHh0TonAsxCDhJYpVwQ8TeoGeMAZEojgDVhUXSLFVcz6Q4qpwlxNJPevM9YwwieK4ZagAk62fmUw0JrvTsGhMXsRrXqrKeEkSnRmwd2ktDZ/Y1V1I3Se1pw95TA5/OWcsCwoD1N9CG+7aEJPaycC269n09V/nPf/Lg3hdKG2E58X/zqVsiQMZmw1kAMBh96N89fzjeRaAki/63X3tfnFlrzO2XXzv8zBciEwGATQMOSJLA/xamtB+gIL50oXdjpLhQKPLlb1766/yv9gXhsctXZwczLEzWrK5fAgD2MFi1F78zVsTWxpe9LzxZLOvxyy/fEmFj7RPXr2vN9fTTT2dZBgJlXW7t72lWc7x/UOU5EgrLy/c29Navra5ee+K6c67f72dZpmfXzs4970GYo8hEUcLMQLi1veOdAxEbxyvqvS3eN0XMXJomcYDVhHGGoZqLSX1o2ABA6QumyCO/8bnvaMyBGIHBIgK85bk3qji8IN7d2NRj/+L6lUGSgnDeEFz6g8GVp64LcxxFf/HnH73x4gsqLqE0tLIs3/qd3/UTP/Zjzvvbt2/fv39fUULlZKJXbpJ4bmkBWMjQl79w7+jgCBAGg/53f8/bNUm8eu0ZADHGfunvv7QRRuASUBfGPNjcuvPyHS2L/pf/9X+fm5tXG2tCStP0r/7yY7/5Gx/M0h6z/6F/8S/n5hfZ+ySO1xbm1C3u6Tc+ubS8wJ6hRWwiKh9QS1fIPSABSFFMtBKPoyjNMgWyF0VROYcA+TjIpGW9Xm/Q1+zjqaeeTLMUAMaj8b17hyGlZWcNEtEMADdqDbfv3mkODF83hh95WTTDX7Zpioh1Vfl8gkgiPLe6mmSpohP2XtlvXBs56MYj3r59VwTIYDZItMIazvTn5xc15C2vLoUxpXjmWmPAzHCWrAGAnYMNYY+AJRfL1xY0/To4vl9WE0Q0LBfsnGbK5aQuq9DgMtYqm2L7/lHIqzxzGTaarxuJMhFpeHxFUQNUZ+rclhY3HVy03QZB8egAoEZ0zU/Ggo8OSt+GXpIHroVrQRA0QgRI0m2jaNPORBTFFoFsbDwHN0YvXprH3xJeZcqRmBYjykfRL1SpXUQMmshEgkCG0BCq1npLCgcUjxqSrInQRmTJmoiMaUTZqTuiCqLJzRhJ0cMKsI6iGACIvD5a6Fgwq/gRIkOYDZFiDAwZIYZ2NgSIwKemISKneknQuj8aMtZYEGjdLo0JA1pErKs6uAaSoTTtpOFB4bsx7aIu+FcnVgiIcTAbMMbUzoXpfmgPnKiShQUawXL1WKfpZI2rqkIAttyWlYhCppHQA5QTo6hp80Xbed6zZ8/MRV7kac7ei3NFL9WQVJVVXdXsuT2T5SHnLnZFz8KEekom6nLT2y4JN7puzvu6rjQkOeec80QsiM3gmE/aS09ZHYEd7bkqi9AoQZ3EnNjDzvsAVmRpQ9KUHdUZfnXoVk3LEQhbGUcJihGWrKBBQAdOPCIiKGddCABBmF2YZWs7RXCKtGYWVwedOPHMdRuSMPycF1/ztM5tyNutwgZSlyaC55NU5Kz+4OtYuAFALVAw1F76/eHKwtAYKFN38fK+ALCXvKgREMCvLs6tLvdFwMam2Kt9zIaMP/a9xmrTFUHRK4qah0WISYOyNwGPLoLexACABv1iHwgYYLg0nO31WRsrmlgJeMPjSa6vun3na9XEkIHxcR4bwywIvqryuq4BZHv7QWQjFdtDYBAkQw/u39vb3dEptXgVuvVJYib5svNuko+w2b15fszK5TsKDCwAsGRQkwZkBi/AgBinaQs0qH2t53lVaQpAvay3urKqOf/e7i4GOlijoltVVVXorenPDJMsQUTnfZB2nUpqoRJcAcCzbG4EDjOIzM7NKsrutY19Yanq6vDwaH//kD0/uP9gY2NDWZqrKytEkcKdgVXbR+LYpFkECCaC3d0HitBL076IEMHy6kJvmBKS9257575OfReXlwb9eb3gl178ahTFapeWxikZU1XVP/nud1ljmOXq1av9wZC9T5PkwupS4FTPzcVpJh1CHAOopoJqTpmIQus9JmQ9o6CGSgs3Ah+BR4DZ+Z72NaI4RsNAgCI1l1CpJoy/+vgVQDRESYpJYq01BwcHeVGEXr2vVMzbV1VZVBpfHDoBYZaZ4fDZZ55BxK2trRs3bqgX5vHhkRkHwOeT167p4yvyoq7rEDHVMxaFjAcAIKkkn1SH2j7fGz8I7U4DegIKCOGSNbGI7Oe7nmsErLks/SEgosdaSg81AgoyZm3bnhLXYBgD2ghWkrkQ+FikCUkoNmQD3pd5qTsuiTNrLCCMDya+9ohQO97fO26plSytqECjvG6BIlIttxb2ND0kXp+QhIAVy8RL6Xh2ZmHWZEBcF+7aG44BpJhUr3ztASF59lcurswvDFTUeXK/IkQi44/d0IQsYm9cKr6+N5Pp5yECm4aQ5LiZqghxv6cTOhbBuYxBFhYXFpMeCwBCPYzDQJQn+dGx3usXXrg5OXaIYqk3jC44xyi+KEIX5rW7t7V1mqbx6oU1lZd+9dWbN2/eiCKLiMvziwjgnbMRrlxc9cz7O9vj0VEQY2/ALOPxaGd3T7fQ5ccuZdq5IGapRbwxcdLrt+dV5Uqd5UkeHvLMYLiwOK+B5Ytf/KKWCYNBT/XqyrLY3d3RxTq3OE8IKryZ39tARAAl/iECjMdBfG48noQkSwCQl1YWAdB596WvHHrn67ra3tnberDLLK++cvuVl29G1iLixYvrcaIaIF6CYDammRGIERFQ7t17VUR6/eHVa9c9MwhcvnJB04iiKPcOHyhA+cKlS5fWntTg+LGPfCjPxwCQJOn8/KKr60uXr7z3n/2Ic7WAXL68nsQxM6dZtr6+GrJCG2ZSIjIejzVnqfKimfewjUmfGqaEHKBbJRR6fhuoDXgAmF1ZJEMKbauZG75O7rgEAETzzLP/mVYiWWb7vSSK4yrPi9GIiMR7kYMeJwAAIABJREFUdqWAAKEri3yc6yU5qgTEOXdhbeW/fM9/hYhf/MIXbty4ZUwMAPu7uwoEn1+Yf8fb3uaZDeLW3t44V2KAHB7t6/yqrA80HSl5JGVALeBhjoAiEKdmOJOIgAjHNEBjRWRrfK+scwQEdEC53otSakYfwtwg7P2ob2JoKbghE1/pz7ZU2xaQGQfnEmDv8jzIYM7PLmdJDxA2XrxXjAoiGk/Kvf3d0ESQqVQLcaYL2CDECQIDUSt8Al7odQ1J0FFmUy6kpoTqn+G9NDRj9My1c8wyFXAjBOogtjqzpmmKLafxWiDQnSOIZwFhz8zCgVF2UlRAtYdtZC0hikHbZY1OfUcBp04bTbUcRZGKKxEZBBAS6kClrbUBx9wKrSEhtAQCPEuM7kiCtZ/2BJXce81KoMsKhpOTmoDeRmgn7g+bB3V4mNhgr1FYCFFOSHxJoOw2S/PsYGtq46Myko2qf2DVetbyvNvpZO+rqlKoZxRF3icAEMexTvoQsSwLBRA451QHyjnnnGtgRCaozZ7lkeJJeXI5UcSdKuw4TLKaQa5My7Bw2jnX3nzvPTUzuHP0HE6iLoO+eFl2MKvSbf0iYu2cdsX1l59SRp+CmxtPMEUJafZHaNrCbTp1QSI0KsklQK1wxjloAjkDkESYTvE7Ick1vAr27GvWveAqX6PXlyhhoe2ifCOFm3yrCjcR+dVf/dXxePwLv/ALcRz/4R/+4Yc+9KHLly//7M/+7NLS0tcJS4/Auwr8J/4zDQXwEFwvnkX6NtDw88e/r/+HwNP44n/gNXRhvv+gj4JdSc8T+/a8QHwiasg3csCd+zWcebtv4an6DfxO+Tqcktfh+QP8p99Hj9rj/6DN/nVC0kc/+tHf+I3fuHbtmjHm05/+9K/8yq/8zM/8zCc+8Ymf+7mf+83f/M3WwmEK3LK4e6O+8ZG8qmprEClHkLIqbux/TpizrPe2H35WG/IRkAWv/emNV19UQPrCwszb3vRd3nsi/I+fvjE+yoHwwNVCIgJxxjNLTuNuPDBoKdj1gfK5wQ4XKxsRweZk57WjLbW+oHuBey0xchZe8vbvXzNojMHte/Xn/3LfWHzp1ldu3vyizrKqutBOlbXU7/UAwHn31jc/91+8+02efV3VH/3TT2hb5+5rL33xbz/LwsN+L20sfdZWLiKRCPd7g6XFZf28o9H+ODciEkdxT6uSfq+/OAvMgHi8c1SVqiCOUdYLN7OWtnmc9mL2EWDA2Fob37199+Mf+4iqyi2vz1hLAEiC1lkA8N6trV/vzw3Z+2v9OWUj1K48PHqgv5NRkA0AxJH91//DzxCSsfbenTt//uE/sVFc5EeWC6gJEI42vmANMcvi4vyTTz3BnhGp73xeOCQqqvyrt7+EgMdjc1B8Wreoh9YLBgdrcej5Jcf7dlNT2mfePQAY6OFMvmbm3nC3XP6iMAPIfd4yZQQA6PC1W6keBmlKyvYUAGGrnY56dKSbs87Ax2H1u+G4EeWcEt1lLTTXCn4NGnpTkyKAVGHU4EWOyrFeO1vP6wLG+GJfZvaECJjnZq02XtaS1bdlb2BgRPzYH/3VeDRh5slk9/adlwRg/2h7MNOPrBGRJ99wNUkSFgHgB/t3dZjl0dteyNAuLM0BoJfqcHykiZuJhWxQsx6bPWnIGcfHwf5gd3KoaZTzh0E6wqP3rZCIxSbBj0zWkjumiv3imiypaiGTLXQx5qoV/E+HgzBxw6qoKwBIL6eJJADQ5/7Mk7MBPT/O67LWDG12Zk7b9VI5npRk6f6r2wcPjhS0XGEatDr/ASHp1q1bv/d7v/fzP//zH/nIR7z3H/7wh3/0R3/0x3/8x9/znvf84A/+4Fe+8pU3velNp15iDLlaqrHUlUDKZD0COOcrnzNzDCYdGBWuIRe064TF1aWweMcgwzRJNSSREHpEQXbCKCLAkcLW9Maajq+UJjJCZAxZInTMpa8Vt0ZlFUISGogifSjZrImMNQaPMu/Zo5CryzoPXoBlNQl68oZcnQNAXdeI3O+lzruKoK4L7xlRnPN15UTYoOgEDRG9dyTEwsKemoO8FSpj46XRsiNUwHoocgNQs6UjskCH8Yc0PXK0NBgdj5KkBoBBbm1kAMCAySADAO98y8OMTKxQOkA+1197bm6OjI2iaHdrazweRXEivtaSGADYFSzkPQMPEoMeABFiI94IkThi9jkiiqeirKBB6IbrNDTozYUAQJWHXJdirzdoQU9SORGg2IspVJndQyG6ZwRd7UJ+asi0lAeJNSRVbqI3pU7INygvJNeWY9KuEhNupq9cyzJwLYaZ6+CfIVy4cXgFERkjhGA9RB5IgCVo3YvEPdMfphzEzkWEQZjZ165SL4bAUxVI0iRNUxHxXI/ySajZm+tBBBMRAAJ3gOVmSvVg8E1CL46bQbu4ZuTjYSpA3nVwmBIYW0hxw/7tfHuK526B3B2VusbRQB9UgL/bhjcqkNmg7iLg0ASGYzaMNCRxCV6cscYYBGHQy0N5NHDyoSFpPB7/8i//8vvf//4oij760Y+WZfnKK6/8wA/8AADMzMysrKzcuHGjDUm/8zu/81u/9VvGmM3NzQuX0oDDN6hTZ8XyCLfy6xKm+NzOladaxK0fQEOjRGmJjCLwiJnjSTkpFGnN0KHzTE61vBoVAQCh1ryMWXzALk/T+EaLixBJR6Qni7hTRR92mScN4JMABImMsYg+MPU70u5dNi+cJCGfSdKnSman6uHzfO7PoTQyB7g5ojQakUGtAZFYRDsd6itjrUFkYwiap6PtGEBRhHvTlOFTZTEIhDNcsRznPL7gzoYgxlLAyoM0cRkpaG+fMC+EM0xpPNE84c4Tx1M/IB3V+o4NWavlMGWosyACCyCL164odyinDaSaVfFOeUnCosmLhBsY2MjN4gdsLqm9nmb8f4pihF2yvpz6DNj5YN/mIuzR7ZcpQ4WBWQinWIGGl6t/hf2JtSH40Jr3oSHpD/7gD27fvr2zs/P3f//3d+7c+fjHP/4wd0oAeO973/u93/u91toPf/hPf/t3/488z6uqLisPYBGg9tXCzDIL93o9aiRHkj5GwYeeaTsSFmCpRfb2JixMiEdVOfYlCia9nvbrTVRzPdbCzVeNAwqIplsIAsDGMBIaGxsJjBCuw5rGRlgDAMoq92QMoecq63sbcTmp67wCQhC4eHFZ598sXJcVIHhn88loZ+e+Z3ZVnSRGmATE2jiJExFOEjTGa5RizkGQRbw3ZT3RubXnWjFNvjQPvBORtN93KrIMgo5aDQPXwIs7mhTga+ZOn95znfWy9UvrSvLq92MyCIjiOB+ViOidy/M8n4y99xABoU6j6v5A4dfQby1ukI72tgHR2mgy2gep2PNg0E8ShTLCKxtbIOy9LzxdeYJqx4g4rtPCCTGWTIPBFURAQ5Q1Djw4leBMTK9ZteTzIO+c12HxRjbuJ7MAUOfV5isjEBTgpx6/niSZPjNrtO5Da7kj/mp14um81xPXVEgSLCpj6jVCNIGTgQBVWbIwAkQmDgqZsYn6qU4fi2IcvNdFAMLYXGMTkVnoXYy5R0TO+9HeAwBAYeRMOBJhQJxbnI+ThEUGs/2qzkUkSaL19XUypGJYxhoDUDuuXd3Ao4JcByJQqXGtrqo6hCRmbJSwvfVN8CKZMkBDleCn7ikgZ4ohBKDps5jCg+is6HVXdKE5IrtbHls4ElGnDR8ipIlsxHEQnm4PG0JMDRhKF3oz7PW3lZ5EgAiOjs25UemhIen69etvfvObn3/++Vu3bm1vb9++ffvatWtf/vKX3/3udx8fH29tbT355JPtD8/Ozs7OzgLA6ura0eHR/fv3nfOTA1cXjP8/b28Wa1l2lgn+w9rDGe48xByRczqdTjwW2NBuoE0VYNHqdmHogW7x0jwUajGIQt0FEjyUmsdueEHCLwjkB+SWKKpQQ1WjwmUbuzptA05sp9PpnGPKuBF3Pufsaa3/74d/7X32ufdmpNPYGbqybobjnLPP3mv96x++AYETfs8THwQEdOTSxHg3G9ey5fUkiIqX2weHIQggHE/075+5Ya5VLx7em9UFEb3/0g8kaYJIdXl4tPeq8UvEi0YcGqTJDAAENEs5GxKA5rDs/JKpLB3JHXtgacZZ6uwu7B/cQRVEKGo8dwU4wYM7xfHuETFKkB//pz++tbUJoAcHR1/+4t8TERDeuf3yjdeeM33QjbUo9DcY5itrI1WQplQ/AyRQaOrbltxNcchHja1sX3j1CgDBN8/e3VGANB+NNi+bhun7P/ADG5vbIgEAS1+2o5+54mvVxAM9zSzAVecvbX/0p37S1s7tO3e8D8R0cHDw7GtfJaIQws7ObYDgG7+2uuGcU4V84B548IIlBKuDNM9YFYIPn/vsF0IIRHRweKCyX8/8k0/+6EMPv8v7RkR+9Td/9ej4qGmaD7z/+y+980fKShBx93izqgVRHdPDDz0VM7B2FyXYdNlNUXsAIKbjw6Pd3T1blzsHh0FEgm5urj743vcQ0Tee/cZ/+uvPJEkSQvjBf/U/Xdg8bw4Fg3xke6gupiHUbZogiFgUxbR62e5AXgVqk8Rz569YwitNU/vCUo47d2/YLGz54kViFpHlleUHr10VEUS6efPVojCVAkQaWBulKCZ1XRHR+SuPhKZGwrKq777wGVEFBcfks7icnnzfk5HdKnB4vCMS1jfOf9+7P2DF+Cs3XqzqgohnhU5uHUU9GW2kzeZcKQAqKpNq0sb0oG0oyYbUBgh2bCA7HS4tWbeo9PGsIsQIa+rNKBDUtVwO7A3s2KWwWENgLNM7yuPJgIWZM2lIbvGRqvP1mTNnw0E75m/FyTLCcaYA21sXztOl2JO6d6AixNjA7K1ZS37oQx/60Ic+BACf/vSnf/d3f/eXfumXPv/5z//Gb/zGhQsXPvvZzz788MNPPvnkmbObBRV6jq7NQQIgkGj7iaqiEjRSAdt8GCO1ra0fAAkwdl6wLdzmQ9gume1NnVrfRO3L/Jw5qwJjp1piiX1rOe9D03gA9T7EXF3Mm7CFkMkcdS2tSJPOuUFd+k09eTNqpYuZXaIA7BLnElXp/TPsgwAW1aNOFW6iPipmmMiRgMApYTbCnnsaAHYqckEkBLRfiLlNItnubCs24EUkcZwmDkGdY+qUHFAJBaMebBOXfws+EfCt2VF0KzcJfhs1Wz0WvzCpalBVRHUJuYSQVCGIBlEBBbGmkqBoEA2dcBYCKkinAGn1N0SQaLB8KUJSW+i+VTsKhgIQ1RDEW0iyj7NXoXqIKmNBNJhCRxCPgEG82brqIpO0A3+jIseZvXrvLSTpvPXQH5LOQS4tml8XlNV6v89bEGdNQ/G7VLXpP+YN30iJPELD55oWtusj7+I7wyWdP3/+x37sx6qq+qEf+qFf+ZVf+bM/+7MrV6781m/91ulx2xt8QehjSdixPW12xI5QFLHlKKOKoPjY0gleghclcM4liUMkCc6kB21zzbuDBkUFZSZ2jKiIXlvGbF8TbkFXTAQQRCAEAELpWlpq/hkOQSPfAuZ9iK4R0z0Fa6K/gcQbMjvVAICB5pymLvpo+0PEzA6xFb5rt2uXdLcVJ4D2LBLb/rcElaCg6r1UtSei4IPVqojU8iew3/wy/ripcfb9PO17MnHiEoM41nVdVZVxkluTtBPSbnoCUTV3nYw2oq0yPPR86+Z2I60AX8+ApO1YnV5XCzgp1yKnHEiXJTGzrSEUEWZ78M45iVTqMzF0c/05PIWNiD0jRVN3iVLIAVS55QBp53wjYrYx6tiF1gmgb3raB5a90TYRkJ7oIt4n/HTH8WL7aUHL9fRDwTnl5i13mhbYIXoSpwZvpk3Y3tE3lHB785D0xBNPPPHEE/b7xz72sY997GNvEi3JqcsVRXHWKqvT6voaE01ns7/77DO2VLaurC+tjUQUAVbPb8SZmdTySGFfKrl2yUziP/u5/6+qAwKyk0FmKsV68cJmlmcA4Bt/Z+d6Zw1M6ETlypWrS8tLVhNNJja7gar2VR3vw0PntxNmAFipcW2ZXEqvvXR3Z2eXHZPKs889MxoMFbTxvqSYaWuqkEZay5Xxmm2ZSvykOEaEDNm5JBKdxNsCONy/d+v6a9bSWhqtOXYxkmGtoIg04JmqKOmrLz1z8zWzIePR8kYELaQDl2S26e/uH4YgzrmHHn/SFpTLkuFSYstjuF6ZAwTJ4IPvWTL1x+uvHR++/oKCXrnwnuF4oCJIPJvG6Ux5PIUQAFEkHE5FVJF0UmMpDtE9+8JzL9+8LqoI8N//7M/Ztk2S9Nlnv2oramNjc305M2qFc0MA9KGeTA5b4d0pGBMdcX3V+IDkm8Pp9K4Vbu98x4NMiarkg3GajplofXXzwWsPmV6KChWFVxFmTdh3dQe73LaZSwiJZkX5uc983sZUDjyDyUXTgw89isQAKKGpytI26/WXXymKEhF/5KMfzYcOUIJi0XjDi66sbq2sbABCCLq/f2S7OR8t5yMFxHS4bI2FYQgf/i+NIUGH0/3dg51Yh966W9UVKCwtjR555CoA7B8ePv2Vzxv3LUuBTOhdq8Gys9z13u7BtDXFW1lfib+M1myBpIMsyZydecdHe1GcHxGbGJEpY0YHCsXecZCobNW5afNcfV+LVl3bPH7izUxik505OTVWgVQdtWEuidaSmrvEJawKTc/qTJK2VM+405L0VZx4AoG5n/WD1HhjzZqBg+UDeHu0twFJiVVRu+wBIc9zZi7K8s7NHSIWESUqZiIiTPTopUvRLccR5JUlsIHHwYOo3rh5ezIJADAYwMb6yA60tdWN2C2r4N5OlLywCiiEcP7cJSYWQUFtGm3HMKIQb1Y2yLMkUQDNccDsUt69dwRJwARBdW//3uQoUVAgDWmbVrDr/IiWRzkCEuJhOT0oa0RIXd4deq2VKFVlsbfzOjGpKgOnkesPLjGRr8DYKAgiHh3sWFnOLrYnRHU0XsrykQXR6dFeE0KaphT92tHFOTECQDbMFLwCDByeHy+rgnO8e+fZ3TsHiJCmMBiwCopS2Rg3B+pZ46vaarSqUQFF0iZAUCKivf19v3vXztif+Il/nqY5M+7v77308gsmSre1uZFnrKoIhJggIIA3wioA+lCq1gDIjGnSSse7inhmT21jbdm5HEHIDZgTJsrzwcrySgxJisF3mGbp2MgGhUcEdo6YVOHmjVtRf64XkkbjFSYGQB+asi5tt9+6fcfEEszBwBI3HyXNdZAPbLt67/cPjuMeTqIBBHAW4nRYLl26AoBM7O4lR9Mjg9SHhpuKVBXG2eraBgIfTCa3d265xKnCua2VLGFQVPUuJVMrDVqX1czQ/wrL9gWzJEqYDvJhPsityJ4eHnfqxp2mNQraBvNl8FYzEkqv9OpUSJoWmuUcdIUNqrXMsTObBJprJyWtEAC2ktwKkCKlZBl3O+XFOe1WlTq5f2miLabiGfCjZJAhAjviLH2bCCX3ydYAgIkNGRClsQGIcF6HiqJR/NEm8WoGXswBogACthjjeS+JmCIEiaysU5zPqhfaMSds/zQ2krqWVizcIvECVFEDyOnk1ZI7QFCBUz71C4UbmSp7lAc4Q0IyWh/P/f84qq/2XgKt5WbfHdQaax1l0rpxIuCb0JVUnf9a99MvY1tKtzHV5lWbuRU5jJCTpmkQKQS0FnhPPLs36l8ojbHv6xkLN+hjI6At0AQikXihcFt8nzNvbHz3Tn6bQTlSWMmqSwBkECbumyPgWeCItvd4yuHytKaoxp6RFWhz6MB8mWlrGo6WlbQKnAu1v+oCTuNE4dbpxnWL9E1opXg/yMji+ofFwm0RfPJtNJv0223V3C8ULFKp3oaQZET5oCGEJnhEhIA+eAEJGlzu7JhNck5yFkEiJFZb5wGkLhu7U00VfKMKmiQuyxQAkoSYGUBFqFVJjAKVLe4OFZAUvQ9V2YhIED8vdyMa04ZZgZEUQBr0jTpQL0LMltGIami77nPxl46fR8oZISIBOuDMJ4hAih3upvVTByDDRxk+wwQAjJWOBr1pvLdWOaKzA5mZur0hGkR8SzoVIGUnoKW5qobQNE0ZWzPqFYKCElPJoApOEJGdyxBBRL0P1nqK6qKI3nvvG0BSESQkBSBk5jTNzP8r+HCSKNNKZ6qIqBf10Q/DeQRE8OiauP200ehchk3dWJYUvKiyRaim8aoNgAg4FzwoheC9b+y9j48npjSUpul4nLdZ0vwqjo8nhDSZTEOQtpNirW5AgKZpiAQAQ/A+BGylLw1DdHw88RJiD0u01xa8jyjo/KOjEDAF8y43QhkRMlvwldlsikAmQdV1G3vIoxgamClJHGGEenXibS1yJ5hIKIDinEbfxs1eACBEbZW2590cgsXeuY1xNLSNyDaLirCvOOPvTlycj/eF4pgiBPHeJj3QZUk9w008HQS154yycJzg/XpY320lAMRwWDQ3DlXg5bvX7xVHBJRkbnB7hIjk6PGPPGYggCuX1tbWhsaBdKNjQHUJv/Ktnac/92ySOECY7IxCTYDw3nc/HqEc85wROKmFCgDIxvT+H3jCrBxfv723v3fMzN967pW6eAlRiXH78rIdnkf7s6O9fctBcj9IEocIs9Lf2psRIQlvP3jRHsP+vYkUIY454zQJC5012oDCYJD95M/+YOypBwge2PGLX33tzmt77AgAlldSmzOWLJN7BTOpAtMdBgIEBl6SMQAU0+LW/gQBQggffP/7tzY3RcSHcHvnnj3P0t/jLNa+Vx9L2SEANOW/BwBmvH2zeOm5if2lpOuAbEJOK0trtsE2lx587PEcVHfuFf7uFABUOcjIKtyDg1uz2aGJ9V66dA4RFXRzfe3RR97hnHv6S1949bVXkyQhIggNg0Ml35SH+/eYWUX3D30VnAjkIz733lVQrMJUpq8iEhLefWlSHjZIqB6/8qU8opLSNRpetEHLM1/7hmWno9HylUsTInr1lVee++Y/mGjcM195VgS8948+9uj//q/+ZdM0oJDmYK3q2bT4v/7PT4QgTVO//vpOpD44RY4ewgdHZeda7LLExmjl4Z6EGgB/7/d+L4jWdf3e973vf/2lX6qqShVWl7M0Idt4HVVYEUxwI4Q4maib+u+/8mWz2yur6XR2bB+0sZ6DpkS0f7D7J//3HzISp1maj81bOE02B4NcFZzHURUz34eunQc4Z2Fm5+ieDeUmemCrrvFJ0sTe+dJmaru4DMVheWBPSjhXRQVdWx7amLWqq72jXRvwLW+ey80GTlUaEzahOzfu7u8cmMaW987Gf6trQ4sonCZJnlvmMstqC0mEEO0LFGBwYOCAPBtZUo+EnFulCdmQOYshynAqiFDVMps1AJrnaZomFp6SFE0ujR29NVzSP4YLGNNCbeGunYeTnmTk9dPIqFysc222iArWTk1MF/TM22NtgQ3eWUj1VKJ7vNlOJ21e2elZUAE944TsdN20s7ICjdMWSyAwTjdt2KwiKkGwFZ/DCNtT6V0b9ji9dj6KnJAumA/IoJ3ZGIXoBNRB5lCKiHMjYpuodTID/UrrdBXTqQuYepywXRPGroCiCihG/bwTxSBa+odAZKVkACVVjKeILnjYLfpMdVp9/UIp/mdXl5wh2fYGGU03A8T7coy/M2+ezqNwsfLAVkugIxvoQmllVoDdYHPRQWhuof2d0FTPqoneAGm9kAz2tsnco6qFOPWQ5XoCcI+nDN1A2997i5bwVFmoi2POtylLAqiCn1SFBHADHmcDVEoy5pwA0TkajNiypCxHl5mMh04nhYJyQuXMozgQtmjKhIAwyK2vDDG6tfxeILF8MwSP1mAjTTMiJkBRCUAgArOJ6eCQeM3zzFa4r4MKIIKvg00FtY9UMOpElNn3FhfTnBPKQCHL0sl0Soyg4DhJXK6Iw5Vs/dzQUqd8wIhAhA0Mz11csyxpuJxSgkZDG/MIESfH/u7LE0QIQYB8OtAQBEVXNrN4J+uiKmt7dge7nhkBYZRmBqCty7lDPKMiqqKC+OnxkS2/A0jKpATVaagDCKgSp4PB2MC74puymBEyIU6nU2MtJOwlABHlQ96+uMrsiMiNS84UkdK6HG0KM6rIYBkHQxKFJKNyighY1HC0q4gKqCxrw5wQQRlhKSLRgEeapnEMLrkxiRLnvK9NESXNUscMgMWsFuOBqq9905jMrkQpVVWtqjr4EILHDmgM0lUt0kknGsRDY11nnuvmm8hEBkDzPhg4S6IJos7xe6IEasgrEQVAkZAkbHNwBfYSOwbT40okkJAPVWwnoaKLMbsOFTWgCt6Xla+in3vaanwq5Fmu5q3jY25uDcUW4mFYD0RVB1HpyTE6RgUIbMcCkMN8mNuhzg6RYnxxuZmGUT7KhksD4742ni1LykdZ7E4nSZKmFjWmZRGdRBE9tdRKb1MBCK1lLiJyZoUk1AV1sztG31H1HDlQhQChiTI7vpFWMfVt6SUR0Y3DfbopTR2e+vADj165IkGQaXxhqAqDnK9eG9shsrbkhrmogvfyhX/7gvcBCapD4HINagWFzfPEKYDC+dWtmCgiUWtE02ijIAhYN9Wrr71gKyMb0tbSgJgOXr9Xl1NiUIHnbxwCQPBw+drKo09eMoGYnVtHIaqRMYZUAQSlbsGvK6OxI0LAMpS3ix0ElKCXH15f2RjZev3br38FFELwly5fffzJp+raP/nhy6vjy+YZcnQwtf3BesmFp+yJ1uu1ZGLnSZq5NE++/B9f+pN/8ZfMEAJ85KOPbT+0WteeHb3rgYsAkGbus//PP3ztiy+bb/03/q42M6hrD17FVp7StWilpSQwKREeHB595esvsole0wgwAdB8NGTmILK2tv6jH75qvkMvfuPuqy99y7kEEe/t7IDtk5zyYVJX8u4PXv6R/+ZHfSOAMLr0MpAiYuqLwbsLRFSV7eF2xkNArWf08j8QMx3cw699UYjBN80//cmfvPLAw8F7AA1iSv2pAAAgAElEQVSXp/bsppPD48N70ZsvrNnssqrr3b0dZhL1Fy5s2wRq//iFqimCStHs39292zSNqJ6jtdEwB9Cm8bdeux18IIfD5aEd5mXlmyZgpMuGTuowFBEK71jNSDkfDFTBJwkR7d47NDPuNAOBVFVDkGkVdRST4Kw7XpTTECoTmdraGllICuoaTS3X/JsvPDObTYmoLAoRLwrOYbpW2Ql6Z3ITjw2CW+0d3LHG1sWLF5dHyyJCgFfXrpl4w739nTaZLQEi9aQuK42KF7qKAzs7V5ezdJCp6j2eBREAHSbJ1vCaHat1U0nrE7O8tmHhY7iR19Vm9C9oorHVKF1qZ3BM4iz3+eu/+M+TowIRCCiBURRw8glaGYu70lFhuOvqN1FwGgASa9f6qw9c/MD3vzv4cFwdTcLUUq9ikAEiOZpN6jM7St+Tws3IqVaDiCih9uWET/9YVdKSXhcNjnXBkLbHmVSdT9z7JM6TVVhEVlJrXzMvfPB+ki9nipa1tjPWlVSdT8RUVKzjoNCz/dTYTlYIQdTHkCSs4qPdIBFE3G97N+z0kLAA9rUTlXg+uIPFb9oxl8mMx0GRItHX/oZaPe94ixYx3hBNxikaO8euigBCq+eFKmjw6UinxK6sjlUbMRADRU/soBpMWrvtvYrqSY/mvp3cYjHVZzvjGabp356w05v4AOG3jxWcK8GfAQ7sKWif8Uig394+48rn5eqbFW0L3rQnlnp/p+gZK7mPre1IwD3duPlr5234PvyVWvXFjmqA0Im5qwEGOtEFAFJCQoU5qr4P43z72tsAIAF8E3wTJGgcsWNkXUjLh+7iQvu/0vEPQgACBIHYmtEYo09g8M9eWIQWDiM2G0EETN4veBBRMhJEr6/VrSsjc9v/1xAJEgJ48PNivGcXYyoLhl9jZmFlFuZIj++wNH2sroAap6mjUpjDStPY5QWNgF3MBgkAZJnpXrYhFRaUEk6y6UUFBMGIILFVZTdDW8gaAICSeBRBJfSV1EWQhBAxScWyJABkJ00lrac5AECaO3KKSEKVVg0igQqxkFNAJY5fVyQ0TU3Cvq474DiAnlYmaGP6gqO0Akhri24nmdUOWZYRkaiapKchtnvnWRx3hBC89zFWmxJ+u0lPQED6XTN2jlsBzNMhqvXvbtlNgITkXBJdsyWIcpSNmf/BfgvpFEocY5/RpqxIcWBnaplzzAf2MPHzd9Eek6kPy+6rQMxHoyoLQ7jFiG+npk1j5+Wu4eYVfROMHUwQsBU/wWB+YyDUEoYJ2NC/byAUgIQuYQRgZBayG8KOAZES6jKs721IkqDnHl595w8/0NTh/EPj8apTccS0eT5ThSzlzfHI0poQwtGxB8AQxMk2qkKA5SGuXksMKJKvjW2AFeDQQ9MtkXh7QwrCgCjK1XGM6qEpgq+RaDAEupQiAgJdvtyqCzPd3YlSOE6d4W6ACQaJBNk6v/XQ449YNTcSZgUi3t3f/esvfIaZA8jq8vLm9noIhqaZGYPFh+NvPf98COH4KFtechYHr22vs0kyl1Acxp79Rc0TRVD06vdwIl4eeMfa//KvfwQJRPThBx7KeCMZ6KwoP/WJ/wSAxLD3enl8hEQCAFVQBQiiReG7qsT4Jqp64crlNM0QIR3OHqoqc8a9dWd3Mt0nRHWlJqReeCxbT02DD0z8gdWNR48fMz6htnC4jNNBMgwiayvL48xpqqL6l3/4TFXXGmTz3Pl3PvXBEDyA3gsZKgMoqFsZrSPAYHtr7Ycv28E7zPho9zaoAmpk9iFVxbQsCztii+meTdC1TaCyhDdWxhaktjdXoy9baD71qT9R0SDhyXc8sb21JSJlWWZjERF2ydLqpt2B7fNLWRpnTLu7d9pQpaoRZHhwdNf7GhFn01pVg/f37t597tmvNo0XCXn6zmRjRaJZiqV1cHw0M1PvRqcCNSDWdfWVr/+NbW1y5FKDHcHNm68XRYFIKt45VAHlULqpTcs5WLxHcLK6PbJObwPT/Ulh4LJJyXauFFVhF51neZIsWWAqwr6NidIsGa8ODUBaBWlmpQIkwM5yYUUuI/JgeTTixFkGGi25EXg0sNMOAMYcjYKWspHdJ5dkeTq0v3zP0cOzaWkwF8b4EgwRvDY9bqRRIKjK5pWXbxMigBIyoWsDYwYAzunRbvmVp7+pojXWQaPIATmyMPz6i4dnRqXvtrWk6PLW8MLjW00VVtYhy60uo6VlVoDMJaM8sxnq/qQoSkFECUq6bMlKlvJ4ZHNvzZbXiR0A7E73RWNIarnmipJC3E7UlDEk+VkTqgIQ0xzcwHw+3Lnxik3N9w7KO3enpkw4xpwN8M2EA/a1rm+vvuP7HmvqGgBGDZACM9+8mdLno9/CYDBYWl4OPgCI6bohUVWWd+7cURWgcdlkIkqI77hyzjEhQhm0CAIEoLCqg4EyKJZa7+ORiq6fH/7oz74TFJRk+bUtng6dw+lEvvzZb9qgd5CvJql1LiJ5VBXqum2UYFCMjNZ8OBwMRwBAzm1trwGiY7q7fy9MZgqk5IHNBi9bulgFHwDwgfMjj87kT8qysBiX4WBEy4qi00RLBlQR+doXbk6OZ8H7x96x9O4HHtS6QoSj45mBhhPnti6vgqrL3ZXzAzv9D3bvltMDq2MoSSwkNU3dNLWFpOPZVMQDgGOXZZmqMtNokNtTXh4NqoQJqar93375S6ZXl3JaFrXBlzhXVmWH+XDJEtyNjXMr4zVRUZXJ9FjaMR+obwGfUlU1IlZVZWJGx8fHr9++5b0PIZSPPyhhHLwE7chlWBbFbDpFJHEToRqRyqp47daLNnNLszwfjizX2N8/LIsKEZ3D8cAUs6XhOEqHYIReIKKBWVcgFrNpVdVtNhcPGWkiIDPNBsg2ktdGYlLjCNPRwBKluvQG+Era2ooUyJyKVQdpmgzyVpgsdkgpS1zbiuWcLW1czky0U7N8MBwvWxS78ui2fR3sKSViEGOkHtypfalIeDyZvfhiY/k3RUMnC0kJADBCMWuuH72OAEIK1ClLx3xucrc8s/T+XhRuGpoQmiCBVCJBW8T+t+PcnQBNtdJHitLyX0XCKTjq2cPDOVCbYltEW6UFxdjNUTV5/36lMAcm2My7qZum8VZMkUaE4SJOMGKOW6x5LNxUsQWjK/WG83qycLPg0tHHtZ42Fl9HIbhYZWiaG2VE2dEcbqsLwOUTVYZhn+OIMAhatq0LJUOM5IKmXum9NhqiHXYda1hGaUgUBYO2uAtIMk4bFzy4FJU8kAcE5JbmypFDKRLMNTs6F1kZgvAGhVusSE9jl60RJaKAAgCW/RFRkjjn2CSwYKFws28fQvASkfg9cMRi4XYC7tCaI/R8xhVOFW7Ut6xwbNQzZXZMbCEp1myI/WYowmkwNcaRMXY9GVwozSLNuu9qoP1F3y++EPEEsAZOkBN00YOvjzOQCK/okKIGWLGQZI0XjHbPdCIkmR0AKkpQOBufMb9CdoZgkrnSU6spBPx29ZI6fAouLkdYICWDiHgfEFGDztFEc9j63P2PkOLl9/AcXZOsJZREu0QxCvjCJ2rXlezQPbHT2hJxTrQx54110LN4492bA0Y+/VwCZKHF2QOqxla3YlA9LZOuqIoCaNJv2nUMidonGR9/7BYDAHKcd6gCUtRFRQJy1t1ATsglTEhJ4jhBQWXmumyCDwjYSPAqUXwotN0cNKVI1AAQTJtBzYPSeDZnbImu07swhpi3VKNqB2q/k21T/zdijc+VCd7gpwdckgUyivYJ9G8N0TOXJmhZrEF8CB6RAnhRb/RJQ9+gRn3AE4yTeEThAn76jRBvnYbk/OjCMygciD31nfvwNhDeUq/+hE5A/1vMJW1gbh2KJsuMwI40ABKamAcRAigjO+J4cY464hV4eataJ9/tXpLAeMNfeLioCr+5uTUYjIxzsLW6rAAOceCsQHN/9R+++vdf+VaaJIh4YeWSzW5okKfjVUtCioOZrY3HHvp+dg6RinLv7v43TVBnvAKUBFSQwFsrDwMCE9589Xhvp2Cmo2a3DoVFsOnEPL90tJReurxiN/2Zv71bVkbldeeWhshNlsxGg6JxDQLuTndNEW2v3mcaEJKgz6rRYLocQgCE9EpuF5wOaLjsRHWJRzllZpxWj9KGEAEo062hKgIxPv0frx/tloiYj/jBp4YqSkPMLiIIAPDh2nVRRcIDnN4+3DNZyCcf337wymXvA4C++PKz3jdNCF/45jMK2tTNe97/rn/2kz9s3orrlwtOKwAYo24l67baHg/vsw17bfXxzA3Y0SsvXP/f/sd/nTinKivLF4eDFVUlpne/9wcQWVVG48Hm5joA3N29d3S0Z0T2H/jgT9iKdUl+69aOhYLNjY00TW0Rzw6P7ROLdrfUvhYNCFg11TNf+6qNhK9du/KOdzxmbkJXLm0RKBEdHh6+8OKLREigrrXXXV/OgjAC1l7MLth7v7qWL6/mIlIUuLc7FRHE4vjgBdtLezt3rABEwJWVzXYq2RVuJEGbOmDUOVPAgOxrbQJ4QX3x+ouv795S1RCae/s3jIz5yq3nd/ZuETmUwjRhmN2DjzyIiEzu3t6Nm7eeZXaIMDm+VRV1CHLl2uX/+p//lAS5c3Tv+dsvGftXeN9MlhUk6HGsrYYjpqHFgaKc2aZPRy1VA4u67Ssvb7Z6/sEV95ylG5QGa9JJyta/4ywbrcflzT1dmyRwjJXBbPgQAMbLY0vrhktjC45VU+8d3LP7dvXRCxGXC8DtkZ2kjpgQNHFL5uM0mUxXHh4Toahsrm4sDUcmblcezUDVOffKKzeefvqrSUIupKhRTjY0aZumTN/OLEkt2zWWLPVIPl00DyE0tcfIzBSMmr1zcl8vZDOjw+hX1Yn/R7M6IrAuOHOcf3cZC/aOIEuwmTE2GaBfW/WOI5PSMnF0hZNZkuGY0YS0Iw6LGbHFMWgnVRMr5gg+QDKKkCBi8BgHjAtZkmhEgseDV+YVgfTPzCBeQX3wCsKOOFhHTKN6PAG1ehHE0Y0uzZPcpezIOS6mpU+cqgySxkFQFWYODRCBCohHCWgDSu8juZsHBghUIpae41iPw9yjAS6et6ZkZiGpx6cF415HEq922lanoND3y5Ii2a7NcUIIJgWHJ+AC8GYKPi0mNqhqkBBCVLPxoWl8zSQoDcSYEp37zNe91d6GtloURHCJE5K+0tZiutROo/CMq1qUideTiSTi/QDnuMBTe7MsqStjFrkNHVXAvN0BSLvlRMwEoC5hC0kuYZcwEYpikrokdbZnQsKg6hyzo04579vHpH/3Q5IuIPbnP/3EdD4zghNE6vkfZm6lfpkMkNNTAiY2oiMotkQNmjuVdwgmPOs5AIBvQlMHRPAOfOOb2kuQ6GLQajFGI1MfQNX7AIgmDwAUpwaqfU/0jswS6yaYy8xBN55HRBGMV9f3Euy9R116RPSN941BeiPm1XsJEqqqVoCqhCCSpInZFqR54hIydAJl7VsFE8TQLEtTlzpHaZYsZO0EIAA054MSmXIm9CUHjLZmQKcF2cM5F/SUHqHOT4LQmpXLonxZlPVsvVv6/hoiQSRgFAwIiBAktNpsyMx2f3tqnOaMaZ0djCJzaraLUd7TukKEnRp/V7+riDK7JElVBBGitAC5/k3oam1CwnhH5k3DruRTVSaHGhCpT3864W2mZyu39exSeyFp3lrQU8CkxetDPIMPNffx0ZNoO1wM2WKZwaIH5cIxs1g3KkAIQRVFxZwyY0gKwTB73vu6BlXh4EljWPJ1a1Hi366QlKbpcDhi9FmapZxa4ZaiZWsaVACgUSGkjJKUEgAMlQY7c1JgJrOGuHl7pyoaRNpavZkkCQA2fqpi4Cs8uDsztUYERMoBgAnrOgStQYggMQkfVa3E2+wl1FoWEaB47bHzoqiqg0Fyfnsp+LC+uX58UJotx/S4abwnxBDwyrULlpqGqtm5eVdVgWCgARAk6PJ2PlpaAhF0TElifLDptLBcK0EgRAEghdW1pQyHgJAOEEcMApRTClFRw2NtQgLpkN//Y1cBUDRcWBkNx8G491d5XYJX0At+3U7lpZWl5/7heXPyePVls6lRJE7yLLpKUcpEqrozaBJKienOrZ0sHThm00gMjSgIKBZFYfs5yEHTeAWo6hpb5FUxPY6cA5dleTxr6uUlZkO9YD7IAUCDNC3umRNmGzQwbm9tWEhaGo0kxPs/KyvTdQ0Ka+sbiKjBS6hs/6wmWwa9qb0QF9Z5LGbF67dvK2hZVtPjgyhQO8jjrCqUzHb/UYMHs4iSpmkqO9cOjvbqugIAJuvReoUwWsqCZwC4/fqrIg0CiIayPrAOZlEcR5srRkzYDsLjah8RCLmWMksHRIwIa2ur9dBLkHyQvr53XYJMq9lwkFiPsyoyM54DDIgeADhm09YW1CSJRwW6uB8JEoB2pt61gRkV4ilHKQNRLw0EUKpLsXCSJvMxTgMhHlAppZhbRBYEBQ2gVTFrFQVofbjcZknOclFiygaRZdKxrKInNUDCfP7cNhKIyObm5tJ4bCGpWJqBKjPXBO8uS+coVCSRGQWOckBgoue//mons/G9BAGoDofDzfXNovDjfJxSqqiENOSB5bdFmACABEyQxzxI2AFgOQ3mPDNKIckceWFHz3/1+d27h+xoZYnzLFEBTl0+HgdVJLjx4t5sUiCiS9z29mUAINJi2lShICHWPMEhAAiGY28keCxngtpY1P/QT7w7G+cSZJDn5zc2CGHvbnXjxSNT1Ll7p6i9R4DU8Qc+9C5V5YS//vmXrj97y1rpo5dTAAh1uPTu7XMPbYbQcJIlw7hfd3Z27YQcDYnXElEA0StXz9H5DEA0DbPNQ1VIiMbgrBAsuGlUAHC0lvzcb/wTy5N3XyiOb1bmVHFt+AAhMPHDF58iwCzLPvPpL37yD//NYJABwu0XZk0lgJpwNh5v2GWMR6M0S1W18rVE0DksDdaMoaXCZdkAKJHs7x9YPVLXd6fTqaqeP39hZW3dVsz+vXvmOsdJPhiVllesrIwRxbQHNja3EaEqy6KYGBN9OBpxwqCQi7zjsYdtYTiX+iaaWd8rjq3YydPs6gMPg0JZTI6PIt1ka2WViRGhqcPB3sQKpes3Xnvt1VeIuK7rndeviwgzLa8MW6jkXMv5bpbZXi3L4vDwICZEjoyfvZyPCNE3XrXZPj9u6sY59xf//q9u3nzVsSPC5bVoae9yx6mTIDxkI+cp6s7kFQsf5GlpuGoB4sqV1PxyNPFff/lvVXQwGq2vbagKIBzpyDfRdr6LL6IeItoO8jyPZZtLz0hzqKuLRQftcMMlFquoxi4DK44iRc4tMydsnYdKI9ZpeTgeDIZ2/6vQmFR7s38MABLCxtrmA+cuewkAsBsKD8F0RJc316KmZY0W3ELjLc3Pk/zJdz5mSeL6xc3RypKKgMJsUhml/PLjV9/5/oeJ+Gi/mB1VVuWsrS4TYpq5v/p3/7k/0f7eFm7zWSzMyzeIpPIzCreesP9c44odu8SEtxyxU5zrnMXCzREimn1AV7i1Bfz8E89kDzRNoMqLiCPf1I31trrCjeYZP/jGRzo8Iju2kMQm2aBKjH2qtf20mtaAPQF3EdEQAFSDgOEc8AwZK1WoZh4AkNHXItEvB3wdEEEIyqJCQBENIaRZkqQJIGSDlFkA1XGaDRILSekgSVOnqhhwTvhuFcgQ+tJfcwcH55yq4oJbTvyydl/6+mNvREDvmO3dxE1V26aYncnRGAABzNvDqp4IwgoBNDYcLW+1ioydIzSFNrJGXldbzUeTAG3ticzOSHwAEKinEN5efAsTV8dJmmSmEWgvN3pNrw5th7bYDX97qAWRSAByyuzsGO5bw/UoAHo/9lI3zVwUCji7cDvZnjm7Y4aL1XSPBNPrtREBgFme9neNti57Zw77FOLDFZHgQ/DBQlLUfUf0ja/Kmpjrqmlqb12OumoMKOOb8DYVbnDfWWWPRKL9UtyypIVlLSqieEIoswM19IUsZIEaAovSJWeaymOL5l8Ygp550Wf5mnd9eiJkRxKonVBgyyeJ8lvYt045gXP49gJ8nKs6RgQmThJGwCR1hlrCN9Z5OLuBeva/PM29wpPUs1NqHvqd8s7gpEJIf45+UlCt+yWO5xF64pNnf7meYOIZFxOCKEIIQUWJmEiIOArpoHakjQ4J0mcaQift2iJdoAMHney0RJ+I77YDpJ78Rd8IFfRW3q8n2LO4U3DRNAVOAJHeVPeus1MQaRtVoootye5tCEmqmib5aLji0A/dIOHUMiMCQYTah739EgBd0gzd+uV15gQR6cK5B8xhilyDUDhiRHzsA5dmxToRyqCusAEnGMb13rIhmccb26Mtr6pZmj7w4FVVZcfNs0V544AINi+tDUY5KNRV/freCxHy55iyxO7DKy+9QuxCCFvbmxcunBPVLJWNoU0S8CBjpSg7n66klrLJMJRZwY5V4WDPkmG4+3evfuNbN+rS/xcfffLx91xqao9I21vvIiAACjg50B0be13YzlNJFUCS2q97AMRGq0kszxNKERLTnahLH0eKo3R4NT7yP/rdv5xNS0ZagWes8p8cHx7sVoQNIBR1osIAGoBdHcNYc1Qglaq6vr6SJAyAjW92D/YMGp4KEjZm8rtz+zX7y8SleT4UlWJ6KFKrKAJubG0xEiD4EKq6QEIFGaZuKctFBYlmsxkiTCfTm7dfJ6Ig8uADV0fZQGKuHGsr70Uk2k9fvXiJmbUHXh5kw+XRkq15NxhamlrXnvDI1HqX17bNTrWu63t7M1Uty9nz3/xqDEAUzJ0JAOrJEUThzQAQS/XgRUAR4SM/9V8NhgNQCFB+8Zk/t32YbNYX1zYAkQlXV529fFJUVd0Q0d693WpWASGoauHbsyJRim27C+dXE0egGKiZ0hEiNiEcHu3F/e6IXHxNI2m7rcNcGTJ0oy7qDTFjUklJB6BLCPN23zr74rTatDmVdo6enuvQhhLBqOiibEpYCgCdRflgJY1hYtDswh17hxkGY7tRQ83rrRJ5lPbXLFlmTFTFpemFK5fs1FeSqq5jBm24SNQ0zde3LyjA5oWU2zZZLgFV0yx59u/X35qP23f8h5CYHZMSMSEp9LxyVJtGEFEUCJM8HRAjES2NlgkZAT1MS4n0kOFKzgM764wOKKiqNQMhCCbDjBJW0TRLB+NcVZ1zaWqOSZrnPByloEAs0UesUy9XAIBiViBxCKEsKyQCESJMW559hxNDQmQCBWJSUiExTm/p47Mvj6qD/aYu/XRSiIYgAVGzdEzICFRK8AERSEExJTYkiUNMo+SadC5k2IrnaPR9VwNDRkVGvXVz7/iwJIRh1RqgQY2xAgSR1DSCsKUqA4AEUR+p9sQEikjo1RzQlDUARJGTqjLJEaUMMB8gqITg69pgPmmamkYHNGVV2xULIXKLerDayodQVpWFJBuWt+ZS1FJJDfuOAJBnuXFoO+lYBnSd/FOatZUzp6mZ02qeDpEzUK3remV1TVV5whIkOkFAaLvF0KFJYxXSNWJAAWB9c3U8HiHg4fTenVt3mRgUcCnNOAVQJsxHHFtRirUAOahDXZSlLR49bkMSqbjYgWbHacagWIPRn1FVfWhZXYnrVPrmY8UFndhwHwWDBbn0lkfGyjEkOQ/U5tMWklqvuvgxncMVnsyPOnURJQTSGiptCQYtRTDUdby2BJVQATTlkRKrCgJkeW6LpPSlDUkXppNE6JyqDsbDbJBZNEyrykJSliVvZ+H25tilrvRq03cz/Fso3KKWAp0FO9Uz/yzAieENFcfPLFXeQsLbZ4sTU/QjgNPjUj0749a3nFczEzMQUmspgaCk8ubiG9/e45i7F556MZ4peXH/u/ptFm4LOG84WzK0BwhX8w6w0HZfWUi8zyONRR+gzYJjw2iOWuitmTmKHs+4RSd1yU9/Gr5N2+l04fYdfTKecd96XxLv9xzv23lorfB6RgD3eeF3PSQpc+LcMLgmzZKUORZu6JhxZ+/wj/743zKzoqzOVgZ1rgDM/MDFh22inOfDreVlU3LZWNmIQmjJEYAAQvBU1ia5AQeHg7pRRGia5nOfeTpCkoIfDYeiKkGbyoOCb7wzOYEgy2vL1x44ZzCZ0eY5YhbV8XDoJyUgTGfF65MjIgSF8eXxmAgAHPGqW1JQl/DG8l45Jnbsffjml1/o9C0RqJjWfjYaDbcZagDcP9yJFpWJDIdjS2b39DZCAwDk06WDSwhQQ304PLScZdktp5RYH6rAOJctJdQtsvNnfv4DvqqJk63tJwExzdMvfeYr/+6Tn7VZTS3aZknF5Hg/PlrnrBA4vn6rqwK6oJ9EGg4gorpDRAwiW/n2ue2luvFXLi9tbW1JCKrwyrdumhlHkubDKOwttcrUN6rKiOOBIiqO0yuXLlqP7sb16y88/xwAJkny2GOPWwN1NqknBxPrxdy5c8eKiCRJBoOBqCZEZmMFAD6giiKA4/TSpWu2QxxnNt8IEj76z34CESaTydbaiiGABsMsbatym6kz073dnZde+gYxq+qlyxtZnoDqt57/myC1KrrUDZeHIB4UUpdyxhaYjiaTeKccDFYYAC4+tiawEk/+2ggxcLxT775WWHL73De/JtogYl37w8NSVVdXli5cPGdiPJvnzyVZoqqKgfkoerSg03b8Rq342dwBm+YoPNdzr0lcjA1OnfU6JMWWv6jY+iNBCJ2gM3H76KkuOjZSGs8bDyNL2NAzT6LSSDM7MDOCwSA/f23b6vdKSvNQgHBkUJ5a6db1Q4sy49FSixCBYmpQYxmPV7Y2z4sIiNfS29qr0SmqoGvQgb5NWVJnadNzCUIARFE9Pp46xwIyaPJMEoETCsZmD6sAkCWRykxJASSgEBhCi4clRvRRQcosAxUgY0qosx2FE1mSjZMQBQBc4mylMnN3IAeJotkpI7pof87ECsqWC8WMCEIThZMMSxyaOJFD5Fg4mFOzfeoAACAASURBVDSddqhkFAit7B6jsPU/JGqUW05OnbbaHMbWHlLjpSxkRJwsb4wAMRuk+SjrCF1zjJ0qSFyXpAaIhxCqeduiXegCUTQbEYOau3RQCMiAQV1CWcY+mBa4geCU1aokieDiKI4dx4qE6JhtbBe8L8sSkUSEOp3myJi1EyI6DvV5c7hgbRGbHcxtqRKtkAARh8OhgZWGw6GFpOFoYIgHQ8bZv58V0yRLHCeqOhoO8kGqqk1T1E2lCjlmCEM9iaVWaVX30OiVCpzMRWm51dLjxHfd7aapfGgQoa5DVTSqockHEjSK+Smi2qRScCElwVPpyf2Sl/64Yt6KXmhJ430z5TlnE0/7K0WF9XmBYrk+MykaaY9sTgwiEJshGnzVjpiGrSR7O3kWAVAzRhMxhkZXr7ZG7G8pSyrLcjKZ2JBvbW3NHvPe3h4ArK+v/yPiFSw6/1opbpxsYKYFUXGNuLvo+NwsxJieHP23O+h5g4nPqYHcGcO1RUlAhUU4ulm2taBt7OP65WTBhsCO0bTctLsb2DPmXhg9t1DAICEAdD7cKEGaujULfBMLrm8Xzz9XI+MWDa2nFzj253FzOcXeH9U3HLLe50IQv90SWkQITfYgtMoLeppEcsJyurvDC5bUJxEieIbzGZ7ROeg/UmntpFXi1Fzm3AUDlKOYMwVT98h13tzXt7vWe+u7A04IHcyXVgcdx1Or7qSz+6k7+FZC0m/+5m9++tOfvnjxYgjhd37nd5566qlPfvKTf/RHf6SqP/3TP/2Lv/iLzHxf/oyiIkpkyiiZ0CJmPHTMAkLBIK2qQDdfvUeIorC0lJ1rlq1ea0Jh/ib7hzdFgirko3z13IY1mNhRmgERijKjWYYama7zHIlEx1YMIYqfWIEzGObsnKrmSYZCiKCCtQgBgkJGSs5kIaVuagVV4LIsimLGjoMXThCl9WZQZMbptLq3M6mKBgDSxGEUx3YEQ7HAg4l1FH0DN27eRAAcIV9iEFCEqm6CijkEM8bsPGkb4qAwWl4N3iPybDYFhMaXo+X0+/7JlSRVQHjuud2qMq0y5e74YTEBBeLYMVHzIG6RXZ21SxQpEayK5mD3sGmae4N99U4iiZ+YIobI15Vtu7ouTdmDEKcTQITGS9NUCIhIWep0ODD9MGmi1hWqpmkCp8QhjOamAHULVJEWEKQGb2yHAdpaziZJgghZlq1vrCMQIDS+KVvs+GQ6NUbewdFB1cwoOFXdO9xLS6eqig4pQ0BVns0qK9YodxgCqMkUN3GbCUGDoNGML54NjRlXo3h1WbToWN4YqeaA4JuQDBpQGY9Gac6qqMrFrKjKGgBEm9rHwg2TFDhq8q+Ox3H603bouec925GWek6j0fHNBhqd2/Wimmy3GamHoMGFSgZQOY4AlFCiSxOkWWoKMEmaGOAeEX3V+NDYeCbaDgMZoVIVBZu6zW1NYAxIVQuZTUUFApFQqxPQ+jHJW1SVLIri137t137u537O/vPLX/7yJz7xiT/+4z/O8/xnfuZn3vOe93z4wx8+66BjRCVSJKXAJKldpHe1UbDWhxctFUwlVWFACCJ//edfVlEf5OrFjfc9+bD3HgCnzYGZF/6Hv/h8WYqv4Yn3XfiZf/HjddkAwHCYKTEiJjPOOOkd2SYkZcaHoOCJW9M+BK9s89atC5t5nikoVkSHjpmkmR36yhGpwloW8gEoQKjC0cEhICSp29u7u3PntktYBLNRLIMlgNSaDfjma3t/98VXDdD46DtTYhCVFdx0SxdEAwCKKxVrJJocHH/m3/y1ql54/PwP/c8fbCqPiAf7x1XhESFhvrZxvm33uNDGffdwogLB+699+Vk7iS8/tPyr/8d/a5XRr//LPz64VRADKySdIFPaWEhK3ZDQ2RneFO00itJ21aMWkQh2eOd4svMtlXDn+tFgeFtVEPHJJ57gzCFAkDA72rPQdny01zSFZT27OxH9yHGIBqtLQ7c2toq0ttYMADIsLY86AqONpZjZWj9N3RxNouZkmqOVYzYRig0OX3sbvQKOxmMASPP8qe/7PgB0zv3D179648Z1i5Ivvvii0U1qfzSt7tjSuDN5xcrci9sXnWMkbKp67+aBicRTUw8zMnx2zTG0BSRVAgQN87wv+PluH67Fp7N97QrZThNVL4AQavCzYKH31ed2iqJBQl/We7ei1dpwNU9yqwz43A9+iJEUQ8UHbR9QuxM/0BwOGj8FQNry3Pk8RiLSbhCk1ItZ8yhG83mfYzu6JfXtp2gTzVdgZbhi4BQirGe11Qizg0lVlYCwsrRiSpXIkIxill7jcdk1qoYc6z9fNXckgE9xK4HVaJyZoyKoZ63wrdkBjEaj3//93//TP/3T9773vb/+67/+pS996cEHH3zkkUcA4L3vfe8XvvCFfki6fv369evXnXPPPvs1Jr5vTtgx7OcjCpewigIZPBpJCQBJCJRUNc2caE0ELuEu5VOFUyObE8ng/XJgw2EqKL1B4TYnCs895rDV8VogSLbzTmQmZetKzI2wTkMkjSxuu7GvPURt+bOAne3hgyPezFzWQEXUHH2JUOUsEGb/k3vGz2dM/hbKT1JUZnaOY6Oo98qFmqfnMXcaz9322hbqsftPZ960/kY4iRcPIcSDqCfG1BptE0lkUQMAE2tfGs3kyal1WOvXaAvgwPZI15M5Sx+aK0Gg4/F6AQSJ/eVOfoiQkJiMcmCaMMSkCsQEC9T07wTw+N2d3PVakwt3o1cH9xUiTyIpexJkGE2fTxi6fQc+bqr68z//87/wC78wm81++7d/+w/+4A+Oj49XVqKI9cbGxuHhYf/fP/3005/61KeY+bVXrz/yEXcGxH3OWYhnMzEaj09RCVERDOrimONz9LEC8XVoavANBC8d54SIgKNMhDHsIZopGk2j9c/usN1ykgYBp5gmIirdAFpPdg86osmZ24qYXMJty/g+iHY1vY64nRblAk9FjTNebo1hCWrMxmgYV3soQQgEIXSJ/IKh54LFCy6aOPeUqk9IZ8y/teXnJ55nP0B0zqDdzQJYsLg4OeZfHCGf+L0P7n+D26FnjPYNEBSFUEhEsB13IGEn5rjQE4wIHTTrBEXodDlEOptPnHtgdopmfbzAHO3cytH0ui4iKkFRQYKE6GJmEo6kAkoa7TxROy1qdsiuwyyRnpJb+95idLq6rvfLPAarngaRL4bUyEoReywgQL12Pr5JVHJvdF69613vst9/+Zd/+ROf+MRTTz01m8Xh9PHx8ebmZv/ff/zjH//4xz8OAH/x5//vJz/3Gw7QITVVHXyj1phOCmI8PJ4e3mJ2iIQ3btyd7U/toKinCSiKyCzU+zrTIApwbnU1dU5VP/I/vB9ZNcBodXysXlgJ6caLt4ppBQhJwk+9/6I5L+3dO5oczQBwc2t5MMxAtWqatQtRMd4lyeHeQdwM7CF1ACqN1IeBEBPESw9smTrMcIlcAgDQlDKVY0AgdXt7B7duHbjEFEuydmESEaaZe/Ert26+vK+qzHj1l9/LKaMIoPN1zBeEhsoZBhgM84/82I+qQrqa0MwlwgiQjoacBwOaenXdm7u5MMVAVYn1yfe9UwGY6e7rO3/3pa9bR++/+/kfNGnZ43uz556+YVIu+6+W5bFHBJasPcOBfUTfpBk7JhsOnFtbMwvWpgllUQOnxcyX1aFVXrdu7xKbXCklLrFg4XbvpXkqommSXNy+DABNE6aTwurnanYE6k0UJBsvWR6xurpybmvTqLyYZHGY7aL2dsJJnkatsnwwwhZnbHJL/bwYEbMsQ8Da10SWEOGFCxfGS2PbtNvb2yLikuTll57/m795OUlSAKjVpCOA5R4xKSgzZ+PUvuPO9BCmXhVVwmT/EAC8D+9454PXrm4HL4d+UkltdfrrL9V2JYNhNlpeistpEgQNkqLTYw8ASZoPxsuWZlx6lEQ8ICrI1fesW2w53m/KWbAU/JVXbyOiSJgdH9sXLIpZXVeWeaxuD5BARVfWl688csUafEpxZqXk26ihc+Yx9kVv5XSKgPN5Xc8hpq28pjSL2SFghtFN4P9n781ibMvOMsF/WGsPZ4j5xh1yuvdmeshM2xgPgiyMy6bN4BJ0gYqqErRkVSOEhHhC4gGBjBASIDX9QvcTSN2N6okSEo261VBIVS2MjW0sDLZzcM7Om3nzxh3ixnimvfda/98P/9r7nBMRNwdjZ7fUDqXsUNwTJ/bZe61//cM30GrWgwwAmPqGP0CmrH1kDlpWLmBRrZo66rDsb2+dA9W79fiw2bWisTkYqALmGicB8O1kSbdu3bpw4UII4Ytf/OLm5ubHPvaxv/zLv7xz505RFF/96ld/8zd/88xfrCpTEUcClBilSVbUNdSkWNdNPUF2SEyH+9PD20fkEAAJBiZLLGMNe8lZqZ8PyowB9LFHzmUFgaqgr1URQQmODsejgzEg9Pv5xtY5y4Rn00k1AwAoy6zXK0CVG857RQfbr2ZVm1oKkCbiawWKSgX2h6XBX13WkElYsIrWBqubVdV4XPvM7lpHC1BEQsbDu+O9uxMAcJ4UOsEk1NglBKxKCsAu275/BRRiHutYoyICsGeTByVAjdR1Lml+GrEZEK1vFQDgMrd3d3/39r7PvKp+8IcfLfsFEu5eP7z1whE7IsbZ6yyxRkIQ34Wk1nUHPLBHMsxBWfRtY8+wqqYREWPQ2NS2ZseTmYUkZtYizeyns1nUIKIqRZZ5SEq+0YqdZjaVWFtIEu9t6r+iwzzPbYYLznchyQpYRHRtxZ/nuSVZIlK1TevFhMkE0li5S9Z6vR47Tg6jFuOybPf2rdkkSiYAUEsQDQAwnc2IUVWzPCtXChVFwtGobmIFgBLi0d4IAJqmQdWVftk0cdZMgigCxqBVHc3RLyuAnU/a1U2CTUsN1VgBlACJSoPn91fLhBgi0KK0UjfCOGptOLjjwwkoSJTRnamFiaOjo8lk2iaeNTFKFMceFG2YrthpAEpHY8ezxJvfus9498oGIiaDL+Q233O5N14MigdJIYlbdS6vxG1IKmUFFEW0R/1Bf4UU9nFSw9QMOKQpVVBANLwdqKSIfPaznz04OBARZv7d3/3dK1eu/PRP//TP//zPI+InPvGJT3ziE28DogSwMCZuBbPJpuYEgJjmhal2swy/K+RjkGDjf+4cXCC5JSIgYUJ/LKTSi0zRTpOFAO/Fle4aAWeRbBfH3tDZOp4s3AhNv4YdvWmxHmMEhSWxmLki15vM8+23JJqhdmIthSY2TUDCpolWD6oZc6miKoGevoYFcjucqKeWTlQ8Me8/UYjfSzx7yUwRFnQLT9Sny+htOI3efuvbyQq3DvREMYophpzJnJ6j0+e9vDSgok4dHGSJGtw6byssicTDklvF/G1b8I3Z3KXrDElPYO5aoF1Zk+Z3rVVBojWZgmGqPecYmqWd1c2Uv0OF29w5cd686JboSaX8k4WbJuTagp+5qZUn8pT9p2+vl8TMv/Ebv3Hr1i3n3NWrVw2I9Ku/+quf+tSnVPV973ufwZTeqE8JiGajYgmlJGdUwxoSLTEwTBTUXFVDE60HzgzeW0PYBveKqEgIqkjAzI4ZEJiThCB2frlojyf1kvMiT92TOkoToMMZASFoBI0QsaWZoZy09ei8AHXJMGJRkVTnUu3W6kZH6AAVgZLBJoDp0tkvpHYpIshiZ365dwtKwEswuVYus93RCUOUQlIVTEyr7OfMSIzlwEulRFTXIHoGxaRbRKLpU4mqtCS4DssWY2h3lIoEPYG6EZnNZla4tfcIRSSKtB2VdnwuEkJj6HkibmWICfEMfkZ3K5qmMTkxZGedfatxTKizi4yE80VlwnVM5J3r9XqZzwEgAzBrz15ZWpZEjM0sWCdJQrvOhCwXIAIVDI2GANKgCCGgRih939QCPOcobOMRjQwqgKBRIRIAaINh2nqFOm+SJqoaY21pDBM5Q2AqYI5WFeZFkvScVS6Iw/lGQgRQgWYWY4gAEKC2h1JzKtycp/4wT6o3C5zebwvrPBc+OH1GdmNtQnLUNhlEVNteUXt0K5pdKIAApp0HufMgmLnMsXt7IIArV65cuXJl6aXOff/3f/+bfh7HLnOFOC5XCo9eQUOMOy+PgGB67C5sbBGjc7zr94IcMTESnn9gaFOJg73ja8/eIIYY4Ud/6IEL552IhmEVGFS1yGht6FQFCS6eO1cVEQDyHhWbuU0uyiOeVYAE3tWOVFWLnD78xIcMrv3Kc6889Q9PO+9AocThkAeAMOLJdXcDEYu8WB0Ora7JXQp/GsNob0SETc71GELFqIyIedlr8YpNiBUAosxHNuvZlV5WAEBdT27ffQ2RFPRctZKxUwBiltXcZqR63JhsEvccctq6x/WxhYmNYrXvckNpFY4trDRVAACJzmGxsbpqc/eXn38tqqjqcND/sX/z/dbWvfPh8WRUs6PP/elL+7emRIi8QC9QaYLYCjucTFLhNpsdT48BIXO5Z28h6/bOC8Yp9HnRH65aPtLvO4a+qh7Pqr/78pdUtVeW958/L6qIeHB0aCU8M1/qmXkhHO3tvjw+tAB17tw5q9d6g0GxsSoijOzaHLjGZHw4m06fff45Iooxvvvd79nc3LI29u7uLTtvysK3q244lIQwqHslgDKzvvvdKD9l9iqD1T6njpgCgHP+pRef+4v//T95n6nq+vpqng9UFQk3VtesUDg+GLz0XBCVZjKIzQAQvPOf/MAPWBZzeLB/+/YtS6Z2D47MrFyaSEczJBw3ze3pLiKKyEd+8KOD4VAVgk72wksICIrbG4fb98+sxLKOoQqFsYkR0u7tu0eHx4kPdHemquBgchef+dvr9shef/3V2WyKiJNQKWgI8PC7Lv3cf/hXpmd/HA9qrZKmU/vEzTS+rYO0RQ60OpZI3KINvPM4Tx6pwxBERQVdyXueMgEpXH5560HDpt3ZPz6ezOxM0KFHAFRtPB9UNSDGXS3uGkUG3/foe53LiyJ75vyzUc6QTCL43tf3vr739b2v/898vRNKAIjovQMi7yM7Z1mS5XooRspN43xVqCuwLEmjJiePztTB5O9UkxzFKbmpOQgn4Y5UEbrSX0RCCC2prNXDx6WBdFc0dVpiUaICRjmrz3KykZJ+6Lzz3gGCCJ9uxCwB799AgU3nyGYAQIxL1AMEUWlCY7jIKCKQxgKdUr4q2B1u6thUwTA4Lrtn6+eETcVb6TecJFt0PjQLRP8zoUzL6G2TgaEO0YY6v7nSWmbCKf0GRH1DmroVSgESKDt2GKPun6bTcQhBVfr9wjDkSOijS6gCtfJHFjX1kyWBOYkuqdy11p4hImGMUUSNiOfYeZeZcy0rIxAooiN1iVZG0inUUIu2x4XG7gI4I1XsEJoYmoCIdaOaHGViMrgEExFp+ZVz8Pc/H7e0yOJXq7oTa+K0NqZq12dHBUzILXDoHDpHjpHfqZBkD1FAUQQiINRN/ezTLyrieK++ce02ERARSL2xXiIRIBxPjgBBlcoBfuSJ+6z3VJ4vdJVAQZhN86UWHB8dGSFSYtN2YjiqT0o0yEglIhaDlcEgt/IWweyAeXN19erly8l/omYZKSJARVleImCW5VnmU+FGaWoIOV3c3EbCvHC94ppVlwBYTauFx2QATgFsrPH80jdfzctcRV0efb8yP92pK4VBAchB4nxEkXGTmuUZoktpdTAJG8bxdBxHU0lDkL5hnnxi/OtGb+3Rhx+zDf3K7VfqWANA5rPDvbFF4aKgPC+R8N0fvjg+bIhxOm6+9fTtjpjcNdRns1nXGC6KQkFJqZPXUjCkry7m1NJIrGOy90j9c5nUs+QjlmWl9xaeWp97UPDcApcm1dSsYpX56GiqKhIlNNGQTeXKqj0mVd3c3LTyRxXGo7E1suqqSUq0ntu2/3wkJ9YZi1AU/fvue8ja1Vme2Yavm0pBCfn++x7+yZ/8OSYGhKap2hG4hlgnnETGqMQAjQSNgghR+fUbty0STaeT8bRpZ3w9W/hUol/dRMTxdLx3sGcn6Gs3X6RdBgCBega37Yn748ClkazAO6P7YKgS+aau69ahB4arZukNRMQuM+zbQ/l9IQYEVGNDCW5sDfb2DiUIANYKAt4kjZuYsDs+y51PI1w/SPDFzqaNALlDhHZBmOY+qA49EqtKXhSZy1SVifenYzvfG1SfZUk11+dWM0aikUREnGY6HaaYeG1yjcnlwd+e3boCV9+RkGRwvYiCEikgYFXNvvKlr6vI7Fhee+YICURg6/zq+fNDC7iv3L6lCk0Njz66/akfe6xpAiiU93nNERSi69n4Teo6HuylmjhKiv7IQT0oqKKiJx6Can91c3WzZ6qGvG+DVbi4eW7Fr6YO6JSlElRApbIcgkJZ+DLPLSQV4C0Py0soLq0CQtHLhv2nW8tmmB5N2sa88z43q0KTEBOlr3/lOfZOgq5fzC+/b2DKHn03DI5UlXNlFADEKHRYW5MbV7JEQwOIhpdjPDw42j8Y2yCvt36ZmBGgjGk6fmFl+z0XH0mOyU/OxtMxMdZ13L11aMbKD1zeHKyWIPrhT10JgsR45/rxi0/dASYAIJlLiBniTFWzLOv1egpaT0NspFW9YEDUNju1PRMrCRDttDSPZQA5mk7sEF1ZWct9Mp4cTY/biVjBkFTAjycja8w3oll2DKDT2eTw+NBghA9dvpp8IpEuXryY8CWz5vDwyN5qOqkSPlVa4Q6cDxZFyLZVr7/6yLvW51NOAAA4PDwUEVXZ3rr/k//yvxUVInru+W8eHu0TUozx9s1d6zEfH90ZTw+JHMaxhgYQo+qLL7+WBhLY5R+wvb1tChZFkW1tbSDi/sFdvRGIGJGfeu5L48mRoUd9npTI+72k5gEI2YDTo0exCV3ZKzphg/XN0pCK5Mn1jMmkD/QuWBt+tTewA7RqZjd37iIQgHgaMGYmfT6ZJLJ+f5hRPxEGXG4OMuA0yUURz0OSyqIzUsI9MrKjXFV6/V6e5aoaRW+NjuxfS9fLy8LonOT71lhtJI5lRkiTUqok0KfPHn8TQP3UXR+/+jD+0DtauHWjKUI0XXqpIjtGAhYV0aYJSd1JbGAITYizaW0hKQ+MjkFB2XpxiADESfQ/nqB0nBinL3rDtzWWRKnrBhcJ3wggqHO777bcwDmgPkoETHPlsyBncy2RziCs6BXOO4ma564jldgKlmUxiSWLgtOFGyAhd13zRfaH1UYxBAtJUWLUqIIikjgSCKpgIO+6iiEAMdazUFfRRVUAb0aduqx5sTSIO3VnFVrpNEVCZhJN/gctdJ4WvbE7+RHbEoTUVUDdrJCIvGMAaNg557AlvrVsGzwToNBdUXfhtEh2aIEGCGmECgBRQsvaj6YAFyXWTWVOJyHUITSEFKPMGwVkWBPo7EoB0C3pnOlpKoyKGH2vK26Z2JFHRKROS15t2pDuPy0zZmgJzi6iaQZvEzxLpZtocPS6bmzUHKIpwKMBGAxZY+bsKegYcUIXCAutqqSFpI5POAelOzBWnQKwI3Jkos/sWVUxapZpG7AIllbqQrMFAMX83C3iMIA6ZL5HI9t9x+OQqAaVoAIRWCMiVk0zPoiiWo8lICNC1PjIxYv3XTpnW/38/iaohkYfuLp+331bNuaMq0GdgkLuC4MmN5NqUk0M8VHmBXsGAC5IsUwYAQ0SBVClwVihCKhANUumMT535x9cSUrMMhZA46+L1qCqWIDPICHfSJIyjIpNUqJKRIlkYp7d+FI1VrMp4Nx2MQT9py8/RQhNI4984OLVD32wqQKoRs2r4MFcwZSsU8TeASI4iDiXweyCJhcEmkJS33sCVpDDsG+bYaq9cbRFB8z9wnlEpLz2WiOgU0UlbQhUe31Sg33dV/7Yv72MRMR07enb+zsjcqgK4yOfdBKAqqoBUETvfWZNHTJAimg58PddXI+iiLC/t3e72U24Xq+qmuXF+ta2dfHKsmebT1QOj4+sSOV12epnBgKYTKe2QmdVnDavWp3fbYXbt2+bUYpzfjhcsZ1ZFn3fZl7eOXvP4zrZg00n46aubGJ+4cIFM5oZjUe7d+5Y7Fvf3PQ+U9CqSr671ax68ql/smByeHTYNBUiVlX17HNP2inTNE2MAZGq8SiE2iKP872FgJTiUF3XFkzLsghNhYgHR7u7uzeIGBCLQe57bGyqokw7vMhz18pRQ9FC0ihlyt4zO2rDh1qWFLSZHI8BEVTyos+5B4Wg0aJcUImanI4ltEeYAruBvWfVcDNKKt/ok0zx7duprPae8jxJATR1lYySFlVMYQQgCnBjsOuSiBVKzCxoXri0ubIyUFFA9OfPmxlp1Bg0ogrlLs/66doaB6o+95znZyIVvkumSSqqUUUFEDGIVFMR1WamgoQAQWVldeX8hW3zkl3JPKjGIOfPDdfW+jEIAIyKcaAAAOy89Wtl1tRBkUBBe+ydd6rAGYENj82Hx+hRAhpQBUQ0NLXdNV+44XphLZLx0TR1H1E1KVR74BZg1MyPiwXs5VzbpLMUilFDUwMBsW89nfT1V3YUVCrYuFhmeS5CACrKUQlUUagD1aElfW17vdMtS+Hd22pEAMiJCEgAZjCx7dAoVlJa/x8p98SAKIicI0Jqg0JEVcjylFp6zt7zwQ1AdJ5Hdw+mB8oeVWE6ok6bOQYBUM/InEzcUUMq65hWV3sxChHuvL5zfJzgxS5HVS17sb9SJzOKNjlVgGk1A4AYJUruMzGl+emktrO/xjhtQEG8y3q+EBVEPD4+tjiS50VRlMmWbrBSFMXcRBkgxHhUVan5UtXVdGoDgV5RWhZWTafTyZSTVl9mhZLjTFCYaTqe7Oy83iZxybx7Op3cuv16eyqwZVrN9FikNuhbWXQ8LpvNzEkLqlpVRVlkiHh8fDSeHNqS8EOXkQcAA4vZbcmd69r5kifcc0dsY9eKsQNIqC2BkiDTpJIuimAahNLyRcRcT1Pp2pJvABwnXF4UrSttg5jahQAAIABJREFUq2Bjg+rBfm0nTua5zNNqr6azFJKAfEJmYB1GojUAHmTHLTeBHPft4ZaZ80wSBBFlOwIqAgiI2ZEgk+NsnuWrcubJvWPt7XujuBfrA9PfMq/eECOoxigxivlqwYLc16LwMy57PLeIUn2Tv93+aesunRrR4D/3s50AmjoG0DpGYpqzeL+NP6InrXF0WWOQYMEFu1PTOlV1zfu+ok1tZQVKnPujv/mfn9OgWop/C000IL7OifgnS9EF9DZ2z2oBc4xEZFOb7sVdWXdSHH1ZWkxPOnp3AnLzFy28wyIQO1X0nSVcjAqQgJc2UzMYp4UkIlKlJQXuJYshc5RDq0Pte0qmgBbvBDphb5GuuXBGTTr/ydnPZX6T30Lb5AReH+AMcTpK0zlY8OgD4nT0Isxpy2z9OkDnuQtJKap2i4HuLeawLIz/BsvuuxOSuuc+3yUtxZkJEUTYqPAxRgQlRlOiova5n1rTuMBgaJsRSGouCPNnsAj+P/V08ERIe4PHOecsxhjNhOOtkxtO4WA7HvWJltVb+XWaq16kuHOGBj0mv3tEwZbF1qGsl6UB7Q4TsiPnmTyBgnO4uGAQlAB1iSl1xs4/of1vEMoOftEuuwQCMDfBpgnRSMjClmIgooSgIASkfIboZHfDDCR5IiSReVS27SrrPXVMHUn7/8TbzrdEt5zs7S0B6VDgalYxaTbP9umZO1EiNDsGBXCOLYayI6NTAGonerHwTRrzG+l3niW1ym1LpAA49T0uXDCIgix7F5xB0IclnseJW2CGqYu7RO+xmU9BAXSpa2f3PMYoUcxR0nK8oBIkIACKQkvXjCGCamRKgsLf7ZCECM1UpgexmgrmU/CCgJNqBqGvIr3Cf+gHLigoIh3v3fzKV15BQuf53/y7jzvPqlr0i3I4NBuW0aSJsUbA+9aGTESER0pN/4iIBOTBrQd7+VBVgZuGXgNAdrRTH43G+4A6rbaLsCIiCki9fircenmvnwq3vcNZCAIIIUAMzgSSMx8lKoD2dIXEIdH+6OCrX/46E/mMD+8eurZd2jmDEFNROgCQIBITZ53FAwDXTQ79fu+igxoRj/b2QzhUxTy43hGIghcdku8EWJKOFKLmuT3mYTkoiwShPnr2WIMCQe9S3wzvmyZU1U2LUNtXLhI5YtrdufnMf/4ndk5Fpw9U2UquIsPsHGMGqpTR2rsvGPnm+8r8Pf9ihoQgMHtxmjSFlV3MvaMv/+O1517YdZ6MXWTJOTpeXx+GEInw3HbV61fmlXRn/xgAq9Fk/9lnbLbV99Db3DDR+PvODQDAOX7l1Vt/+4V/st7E1StXvXOIOJ3O7ty5IyIXLlx877veG2JQ1Ycu9733ttB3dm7Z3Tg6HGVZZrmzc6yqeZ5feeB+UGXnnhkdHY0nNtF/+plnkkVwDHUzSyYrdYXMoNpMjo0eTHG6tVJYWvTUUy/uH5gLOV2+/Giah9QTaWYKUPSv+CwzRMmwMLoJHR8e7e3uWob4A//yo2W/RKS7hzf/4bnPMXnIqs31aGV1WfTM/DbL/MbWeftc21uXer1VUIkxfu3ZL4gKIGA/VXAhVI22nkttSHIIq8bLBx7p9eMJAkDP95JuJCIVaTuHpmnjsiaRTEi4tbRRqw1LaYabvfRhm3pWjSwW11p3Yj4h/UWIYHr+Wk8nC+HpyP7vqaf3OzNq9+WvLUpwKWjf5wVnSRjHOUBwjl/6+rWPXeZ3Nks6I8Ralq5IpKAiEYFE0Lr9qtCyeWDZl2jpTEYEbGGEiZ67fKZ+J9SvMNWaChIFASTit5klQXfJ3cWp6ltEJC5pEiULKVhKCuevaxOl1MmTpSqnS8o6PmCSEyMEAXZkGC9WckDOZMbOuo147zRJdQ5r7D5oJ7TaKhl1VmvaIQljjKczoMUnOs+VWj9k1SRI0EH1YMFzXUTwnkO6E5Oy9J92onOE3Q7vPh21QuSIQPPx4px1zI6dY0RiJstfYBHG2XGNsNPbwhZQYnTCBfhulxnN5156ajlY52gJ1ovLydFpZuwJlmynmL3QENG3uLlPuN22D727+ri4XhQ0Yowa7YIJCRAE8Uxfye9SSOpKDD2NCGg9yFFEQxORdbEcM/6kAFBimOriurGsXBVObLjF5smi9FQXCGDJ3/mEsblBEBb/tYUcmJWfY2JyrfDFt4mDwCVyPDOjKkXblwmZ1vognMCD4xwKKCc7YKcU2BMyIBV6c/f3Jel+aA0LluzmzOWJKM+898TMiHPfntMl+fwTtfB3EbHEM4Zon9GuryXW2+o8I7S1sAZidjabcM455+2hGJ6oa9Msepl0x5L9b2yVAFJIUhCd++kyO++8qBrUABFVnffeLtXKKCJjelE76Jr3jYz3Ch3Amlp4AJCCOvKOPSExOehAy6fcRBa/IWRGp2C8MWy3ywlCwj1bDHo2CGap0dqtnPkSWoBPLDcy0IR2WgfYxYJwfuS02ucLxWD7OlqAkuApy/vFpboo0/oOhSTGLKceUGggiNSIJIJaRxUVijVNzbVhbaPc3N4GRXbUNGzdJSWBydiEr0izDBwCNDMUw240vlesWcFflHlRelUVVCUGMFUTaaQChCZWTaxEBBD6Zd9OlSLLCIskQUQjw4ixp+EwU9WicIieUAFBp1EaQKLZwey1V287ZnY0ndZkBiqGs5jv0JOCgx3vXhvQMegUAKGpqhAqBVThO7fvRNGVstzcvCCiiFhV+/W0QkBgdFnWYuBjDbW9v19DiAAIMaZnHqPWtW1CjUqgrEK+6F288pDJG0kZFQSRmziLMYAqE9czTDanHvN+AYggOuuPQYCY7tw+2HnpNZfRjZ079fgozggA+msblocQI3tWBCKKtdTTxoyL+2VPFZi1KHoJyjidvH7jplFni5WBVX/TWe0NjwcwraZ1YESsqxlIA6rTydHOzVejRFVFRpv3E3GWlaCgKnV/JfOGn8Re2bNe++HRIagSUe79uY11C3957i34z6aTo4MJIjHA9ddfMf7trTs7EiMiVrPp/v6ueYPeuLkzGh2bKEjZpEm8Q2UkUc0aUWjsWR9Vs1S4TY6OdJ+EVfVbd58tJhkAjqaHkglgoyBdAG44zeOApJaZnQWHsztTGKnh1v1MRYCgNWtAggYwtma5XRynTtvftSKZzNLmO0htv4ZdJOnYtm3Hqu0zAgBlDbQSCi1TJpBvwegonTOOtiLf3pgqqh4LmquVmGEENnUMMQEyGpknCMSgoJWkzhcAYN0AAEeumuqdCEmq6qnXd+vOhUOtQ4yEFCPHSRDRgDKZHQJAqOX9Hzt/38OrMQgATmd5sgFuquNwYCY/K8MLOWUAWh21Zi1arA8upT7L2qDXy1VBFLVyAOjZq4ZpHCPCLIxnTSEijvn82kMJDOaJkoouKB9azpxl+drauqpSrmTOCwjxoMFJjY5HN46+9tUXvXOIcDTKTRUfALDrzLVTWEXqVJmlad2sphDvQqwAFarZuJYJAs5U7ty5GWN84NIDH3zsIyEEIt59fm98OEIi8ry+Pkh/BJoxpMc2vJ8QQSMc3k5sr2qm42mwkDTYYCAPEfLB2mNPfFQRmejaay8cHe8R0awe2XpgYXcULD8qByvlysAKloPD26rKuXvxxdf/6v94EkroNTCI6dQcbK4RO0BgT77IMURiqsZhfFARIbPbPLeuCv0BX75aiIBj+srfP3dr54AcMfP6pQfaC57mecJZHIwOUyLbNBorRDrYv7V/eNPu4Kuvv0LIqlqW5X33PaSiqrI2PJfnfcuJzm2dB0B2M2BzAtSVfn9r/X7bclk/AwRi3rt9a3L3BrFjxK9/4yujyQQRDw4PVQQRx8fjG6/tMBEAjpqDEBsEJHbrW0YoiWurW73+iogUVXRBLOO+s78PAAR0jHf38DoBA8DhK98ylQ5mV/YGEQLqnKtR+ZF5nATKy9i3ac/x8Z14HKxLHvOjlLe06n2Mym0lhbnrfMZc29nxRXISE21F+FHM+QIAOIK204MsL7raqmv8NzpNOVWimygiuXYBFy7x/yXGaTWxde56A/ReVdeyocMcQBRUpLEUePfOXjOa2Kk8G1dtl0CJBEFDXKFY2seJMzGUw2g2OtPA7rtYuMEZhRvOC7eooYkWkjIDg0FbqyffsfQmC1OGRG5c6pLMC7fO63HJPqq12rEjSE9frHUxliSlEMBcdQldahO07mz4Ngs3WircDFxrDWMi1DRUxzRuJezi2unCbTEJX6pnl4+E0AQwl5junAQ85RZn2shpLAeSsjJGggwwA2dySafdCttR2oIin+mcWeEWrQo2iB0xEbNJXnT+bovCcC1xtivc0t/yzlvvxjnPxIqqiuYtZyFpQRecOuS9+V9aJz6J2Mm8cHPOe58honfehmve+ywzySJ04hQEAamFBSR/wE7Jau59YOKf1P0HAJ4zy0WIknL84pSvtaNdrF8Ml5+eQ6N4Fh5FTzaIlgdpp9Ae806J3qtwk9MggROFW/vmssyctapNEoJfUFpIgy6M+Odl2sKmpwSj7yZCaQJL71zhtjTBtpJ7QQ2vndQu4RLmyKMTzdhTaP17+IJqS9t4G2iNt9ug/vbugHMuOsEzBMp0eUG86YWfIL0vsvaXZf4WMDspECx0NlPHatGP06iubT8IGlAHTQOulR6IIoBtA3pJpX+p9bCAa9B74JLgTGDBWfNmPNEtMrRHF5KM/LwoBHhCZuCkF+gpcBOc0H5ogapLoKfUjj7R+JjvunuMKJL0pKbmXwefW+zboaoKnGks0ybfXZumBUDi25jbfBujGD1lgfG2M5H5dtb5vT7ZmzptKfDdDknEQpl4hOf/8VvXb91wztWTMNuvRbTs5fe/d81YGmtrwzzrCykiXhisGS9LyxrWvWVJOuuBMAC8dm3XzOmdh7yX4vSli5veJa5/368BQOa9qBzPRkwYlYhyhYjEKdVFlKbWu0nbLgfniACUfeZ6pApAIcQ66e0yoUPw2qjcvBMyHwEgCpldHizYWC/Q4qTD8lJGoFBA9sILL//+b/3PqgIBP/UfPnLu/lWJooJ5jRKFKDueHMQYkUgbIWFUJKTZtF2LTjo0x936yPqTMen5S54PH1q9ag9/oIyNAEAknq1vA4Bz/uXnn9vduUvE5+9fzQoGgNk0PPMP1wFRRS4+uLmy0dOoCpCtrxkL78M//IEPvv/9kWSb1ldhaAi/l751GCOIyqDX2xiui6hzHOmb43hAioXLtrY2RaQoB0XvIVV1zEJ3ZnLMyKCws/O63aiy6K2tbFmeO51Vlh0SgCt6idCQZQa8OjzejZLE7a5de8k+7/radln0rZe0MlhXhbwoLl952B7BcDgoytyeRUHWVqf9vbvXv/WSddYm09q63ltbFyzFqtbq3nDdot7O9Zenk5G12M+f2wIAYt7Z2Xn95ecBYPvCVq9fqiigxnyUmr5ls7ZSWlRxZZp+MHJJPdHYH/a3zq1bOnbnYKdpajOX75VrCioi57Ye6vf6ohIlPn/966ICopyQ7vHhq49duHApxqAKz730bIgBAJRAOgsTdvYXZ9XYbimTc1SkjU48b7G3EtcaY5c4Z50/oPepreGYfWprVNU4NYkUPZq6trosZ/IAKrGqtU6Zkxh6HooBZf1BW/dtWlMMiQyPrhoEgkW60ARVdZ5ee4HPjOnfhSwJAUiRYDKeHe6PvHPNNEpQEQWBvGARlYjMTMhAioiZzbMUNWMp2GwwY52c8KpZiCGqgo/AGaiCzZIR03TOIGfMrABRYpqaIhlYYJ5VqGqIFpLIoGyqZILHNvToZlotLlpB67qF1dGiVyjC6TEzzkfLFtkmk+mBuUtFqENAppZMS0AIQFFCFMFWxyDBDrrsWuaCykGChaT2DBciLPLSlqPTjkKCzmUWkiRqqAKRIhl5EgFhfFwhoUSpZnUMmUTrVhRmozRYK9a2+lHjBX9+ndbMNGj/8LUQoqrmPnfsgNQ5VhDRAIoK7ByKGFywpyrEToEloSg0VJWBYvKscOxS601mCdJJiESgQMRGpkfAGGs7HkKQyWgGCKriOAtNYyFJIqhqWZeTycRCEjsSSJmFtGDa6WQynU5Ts18SHDRzWeuZR2UvWEjKsrypZojkncuzzJaThHoyPkbEWdXnnCwkYVG3R69ynsATZpQCAIRsgTjjrCz7FpLccS7R6EOOiK2XVGS9fjkUkSiRKAMVgGgJkaj0yv76yoaZaznKTH5fcH5EEbYj4HmGbK1QWwauy6rNBCGFUe1Kqk7UoZVSIGaXDFOxSaYDFlbslwmJkNoRdddIsXkodAUvABR53kLzGdkDoOhE2s1lcB/nkd07WrghgBIROyKmruvWFbQq98gyddE/HE9YE+KpiLD8Bvpm3l/fLhUGv+3fbR99hK6wwX/GPV2E2S5N0BNZAxaKI0PaCJzooLVVgiFrEjl+/nRUgkZQZVXsYD7aYYag4/CcQDfgiUKwE+efx/GThVLHsUitqNQM6pTxbTtg23NJK0nVxvaqSpTcTZbFA8Doqh234+RqOeWd1+LOtcVOdHymOaxs7nO9qARwVvWBqS2zuBbFGlULdxpOAsrPBEkvlXvfSbjgdwuNePKc1jmT5q3ySb4btFsUoUZZp9Pp6HDinIuVMDk0EH3OKEqCiAgxQXKEou2uIHU9mqGiArBmNkJ0jglQAZwT4IAKJvIBSSGHCUsAIPQuK/KiYEYFDEHsQE76vogoCzJfC5FhLmU2D4I097Zt2QB6j0o9dT1OkdgU1Dl2eQmg2kCeZY6dcRCEDEKINhpFbVF0NshdbBm2x1qIMWVJRpJQGU9GzeyWrbPNlXUmNo2JjJyCOuSV4erm5hYhM2UgSblxsJYhoYrWdbV/NxrAaHjOGQdCJFQyU9Q7u3cPZyNFVUDRGglUhdg7D6rqHKg2EitQCg0cH49FYoh+WFWqwiH0+4OtrXNMJCqj8aGd/EVR9Po9G/pUdRAbAjLmJYvocFBubayKKCHuPnl9NpuZ7miIjbkyTGeTJBSKiMigGmJzd++27fwmznpVz+B6K8mYiKq6DqKGfo4xtWKrqrZnFkSSLwlglhcSAwA5x0bQZ2bOiDJARMqAMoOqatKqVkCaN024zZJQqa6DSIyNSETzK2DMPAEiMjKq5eQQ61jNKsuSIHQtJrKx/WxWHR0fG41J1egssOTrIZQWnHQ6UfPUZhGmR61ivyagnr20/a7VS1IxxnX61/YsVUpplGVJuFQiLEloMWCXo9GJJikiYUtqJ5LEA8N3RpxEMfhJXeyq4ssvv/y1L72U5UjKw/IhFR0O8rX7h9Yl9ZzJiBQUCGflkdF/9g4Orz9/0xRvL753WJSsCpsbl1AYACOPJ8UuKoJGVa91YdYAeblqU4/17esXqqlzHJX39ycKykwr68mTniJy7AZY3D4JbKQBBWZ1iUMIGZVE5Ii9y12ZPMfCTI1uAgCyIJST8lWZH3tKqVW8sbZy+fJFiRKjXNza2hyuSRSROOWZimQZT6OKKKhglmWigKiEVZ1GhA6IW0fWveNjkQYUdFwDADPduv7Ct55+lR2r6n/z6X/bX1kVkX7Ze6RYFxUE+IGP/ItGakZ+6umvjiZHCNjP/Pd93IGCz/hzf/nMi0/vuIyd4x/91z9g3MNZNToYh6x0X/4/n372H17NMkeEP/fvf7IsS5CQ9WV9a1VEvJdQ746PdpzjyTH9/Z1DEVnbOFe7VWNOf+ADH1pbXVXV6XT2+S99zvoj589vP/TQ/QZ9fOXa7RCiKuQ5r230qrr5vvdd+fSPfqSug3Pu3//857/1rVeSpKxjyy13d++YqyIiDgYJJ/HkM18BBImyff7iysq6iBDSo+/6PqukZrPp0SwgRgCoq8qi4d39YxsC5Hm+vr5qR/r2xYfsXwlxpfAA4Njd2ipyJUIutiUfBDPmkqQUjAJmFoIA0M8GTIxIs8nszs07qqIhW1vx5o415G0rFNAEHwEA4OD28T4e2OmCe0KqwIiDPgA4hmvXd1557Ya9stffSFWhIEfXRqSZoeOwylLRgSwhVWGRE8KJkIa91Y6TN3dqa0Ypo4xZQpzM6sl4bAVX4R3jnDJlL2CG1tOJuulKlBS5mErCzHYH6cI0ihRAiQqH/fSvFAHAefZZ/8yK5rtXuCUTZiJExeWx/Zmyay3usKNb6EKO12pZmdXa3E27FWjugBcxRsTOC/QNMtV3wnLdRNTMf9mG7QYYww4QQd1w6K0NRBa9tBY+AREbOzsJQhtyXTUJTrceWoggKmBgLrsaMX88ZiYg0CY1CVrbbSJEEV3ge8AS/ELng1JEcM4JYiK7Lo/nDHcfRaIswjhAREOIIURRZWYi6aqtOWxijhugE98k0xFAZsfsEIWQnHNEjEiOG553edJOYU6YfmZnlaAtrTk6waxcgYxY2yJSlseJuICSnS95M53sGD0JM8uL8uTUgQnQtET0rGJ+eYDYaaPNh254Wvt8CfI9r5MWGLxn1pln//oZXRFYuI6zR3O6PEc+8et66ifvVOEm2gqgCqmQCiOQL0EVXAnkUo5BXS8OQAsAAkHNBvnG9pbNrfPCeY+qwMhmtJ5lGa/2QFBVosqsqkSFHA1wAAAEvl/219dWmbmPA4+lghJh1y7WSC2sDAiSJzW1TQIT7rb7mZTbCOOCksk8Up7pzr4AT5B21wEqekVRREXMUHNUAQ1VGIHqrKpGR+PE9aoDRoUkBZmypBgBQkrLvSuVIihQL7didXU9nr/PfGh1NDqq60ZU6n510F+1VmKjVVRhhLqOdR0RkBVck4FCVN7cGDRX1pkJiXZev4kIotov+mvDdfa0tjbYPr/ivCPCjdW1oihEpcxKUIdACK4o+73+inOE6Hy+Daouz2/efN0o9RsrQ0IVkaquuj2fOVwdZDHR3IwBAlnmL11cDSGGevblL37NAtNkPBNRTDx1PbGfF/hHoMahR6ma8XiKokJAN29dtyq4ruvpZNxK6wW7krpJj8dnWQxJp1xE7JwjQh14q8VEp0WGiEogINFoNNRWN+wYuW8Xx8GREAIUWJzfuKgiq8O1gafIgICjyXFjMrsK0qQlqE4szZkHbkWVzqFonnXXVWyVS7FLQKStjWIDcw3NFkxDWe5M8gVQa+x4hbpQ96Wyr+76P9j5BqL4Bfwazus+aUUpusuQVpTSWXGgbRqVfofAAygqzcFKUdIwTt6R9jYCBNVpVFANjdPaCzok6m+jApR99GWiqWUNZG39o+uqDAoy3Fi9+OAVG0nMwl018TBXQkQVzQd+cLnUCIBa79d3Dw8UJMvyc5sXVZXUXdy65AeBkLVZU8kTHLC5ma6s5jhLQFhXDgEZEBFrgiNVdEglF6oCCNM6xhm4qHUdO5MHVZUY7de998sdUlhimWjrcUpKfdWoGIVxwLJKqjFOj6avAUAVowayN1j3viBWBSVs2m5FFOpC0qDctKOxzEw8F1c3ti89eNFO02985dXZpFGVldVVRXPX0N5g4H2OiMfH9WRcI6DLOO+vqkID9PjjD3zw+zYBoK7j//K//pcQYlPL+9//6E9++n0hhne9a7zq2SytH73ySGG2dEHHEyAEBN7cvFRVjhmdKy5dfJyQdnZ3/ubv/2/nOMTgMVzYvmjiM9ahaJo4KN3D963UTQCAp54NIdYxysrK4IefuEzEX/jbr//2//QfizJDxJ0bd0OjESMiznnwGZvoV0eDUFShqT2fg9HOfktQf/3GNQMrElI3Bspcmpofj2bSIjkKlyYvREyJQIvr2+kBsNf1FVRVhw2GJHrpGhO0i2V/ddDbtn4lTQ2IpKv9wQOPXokimYu9olZFQvzqjWvj8QQRY5TRaJr2cK6YtIagv2q1P0njujGZth5n1WzWTtmcm7eAEuq0mXWtULVPo6rrw0HhS4tzzayeE0ratUpZZiu5noQOApq5st3FZRdW5sTaphP5qxbYtpxgpblCFpJSTu7SgAszhhxUF4XepQYVpcjYMOA7VbjhvQDd96ql2h+qaoSoLZZsmVHbTkYEwLSkWghvN5gQlWjKxyIgLST5ZEF5IsnU033uf+ag7eyadKE6PYkDnLtdn6CDw6IaUXoXS/oQJUYjuBrk3WjlnSYZGr4BF7QIUrafwMUxCmi0QbtzzqwAicgqNBGJUax+aKstlTkvVDuBIRGJMSiS0WUNitEhrRebBapzBbg5bkIhBCECRCzKvCiy1kbpLaL2FhqonQ43O4ATCmQLc3pie85MiegLrQYbJGP3TjEjnDEbwjniQ4z0b9lAu4RCDCISSUQXAKtWjGrbeVQwcAbAvZfZKXjw0po8Vbgtr1idD+zwDe/k2XpJZ0kvnWWT9SZvfoLVDWcWiW8nJL3wwgtf+MIXqqr6+Mc//thjj9lPPve5z62urn76059uW4xvgjhOM9G5zN/cb02TWzggpXMPgVCoHUHdWzEhCQTQvfHc0FFSuoZHgjlBGpEAcad2fK8A2rlM//NDEzvnvFfRCM1ia3xRW/AeEIc3bX7poszAgm18akmISOtY3XoStPBj+/UQYwgxBO0srS262/eOnWdn12eCi8zcQfAVgJBsG9dN7YSbGKB1we583JLPvWMz7Y1RQ5AQVRQy75BMa4HegGdwdqtOYpcQoZ65X/EN9gGe8RPoohhSmo9ZUy0pLiYhFCRGTv7bCWBtWATnnUTxXqztQIhsrvOmo0JtpdPpuiGkGGjCx/Ne9MntTovesy1Kbq4AiUiuvQzH7FwrztzO0WQusIPcSn7F+XncaeaiyCLvqAORz3ldZ/SD9M36U2/1654h6R//8R9/7/d+74knnuj1erdu3XrsscdefvnlX/7lX/74xz/++c9//q//+q//+I//mE7vZwQIrJVHxWpfx7cbn4PPePWRHgBkmauPZiogInxxtbc6EBEFuP3i7TQE6efDzQM7juOktoxg1fWQCQQ4h7xwGgEJj/d2m0oUtIBe1AcScF0iRkUcs4TWAAAgAElEQVQUTxlSD0AJdWOwbaXX4ay5M6ptlPDys99omkYFVrf67/ngfSEKg/qqSr5aK6glOK+rh7p2ru89E8HBTZ3WLduuRcQiJU9762Iv4qfMCU48KiI6/rv/+nnHrKJ53z/4wfOqcHQ8uvnaLiJEkQ899vjK6ppleZP9A6v7yvXCuO8AwNBL/n2haTkL7LPCwtBkfDAZT1WVWauxiERQEKnJRVW4/6GHAQQBm2p2cP1bxjUr1jLX2wQFEvnUDz1hAsP9tdXD8aGqrD+4OTy/biaR/+Xrn7dRY6bcF5dSCd3fXFNCiFJd23lWRfvDlf/+v/slEWHi51987slnnyciFZ0cHgBAEHn5BeHQhBgB4ImPnPcZE+L+4fh/+4//Ocv8tVeu79y57p0DhCY0XSDL87zr/3WNPOZGVYsif9fD7zPK6MHh0WQ6Q0JQ3bu9mxpYQKHdw1FcG4ZrA6CK0jjULRi67Z5EmOyM2z8ohiAl1yCl6GPzO1D1fprlY2iL9BQoiPLsOTNtcV5NdOFoNIkSk1TOHII41ypCF9sjvKXdLrhL0kJqNM+YSFr305jy3hDraW1Fg+eXu+AVOzb4Au12c2uNGIno6pWHAFFVVlb657bX7QXFYI2YDCcxbsYGWNm7c2s6GiNiP+9b6BSR2gwNVR0ULM7uxmxsoAZgD64EUEDG7qPFGg0opOHt9JJE5I/+6I8+/vGPv//979/e3n788ccB4K/+6q8ef/zx3/qt3xqPxz/+4z/+pS996Yd+6KQNU57nKgiRAFAqDTNrcVOWMyI6R1JH6+BihjzwGKOqznZmkqSQol9L8thSCZifAkpH1mUmBUDCqLNaGgBgwVbxUyCxZ5WICNlCUpkVAMCIo4gNN9Yy3T/cq2aVimIRkB9AVRSltpvNGQKDc5jlkBfeQhJR6NCv89OmM6WBBX0iXIDMEViReevGTWlERQcbvQc/eB4AmqY5ODhAwhCjKHCWg0QJIVYxtaLi4kHJyeJdmnm3l5L6aoxV08xUNTSVJGABNI2ggCqsrK94T4g4PR7tTeoEfer3SHMVJdVL58/ZWFM917EGlbzf768UdhVPfe3Fpg4K0APegkzTzoh5BoRaNXE8OZQYByvDRx5+TwzBu+y5F1/YPzx07AE0zqYAEEWODke3bu7Zon/iYw/2BgUzVvX0hRdfL4rszu3d6WxSG9J6Htxxzt3BRd01AVDHuLm+bqy30ESJrQq4RmvEKLJAW4VJt5/bzQzacYBACRNyWuOkxWe3hrEK1TxtaIlpzOBdipKtLSWCRNUm5Qe8mIthmwa507lwpPRMqW0zOO+4/eCEegYJkGKaqbclf2zC5GjUNsJj17IQ50+HJAfEzI6ZHiRD7OWYr5QrNlrp9daMA91I0NrATXQIu9AIsGWHzo7hYNIlqiQexVtIimb8qQAixAIK6Alb3LkaW0GWUFRvHpJCCH/zN39z48aNmzdvfvOb3/yJn/iJX/qlX3r++ec/+tGPAkC/33/44YefeeaZLiT9+Z//+Z/92Z8x87VXXn3oY9lSWyQVbrA071yi+gMS4rJKfEeefGNY9RsVbsucj9YUqJuak+lbEp5duC1AEL4ziHBmRkUV5ZZehAuITFiEuL5VKu7JqfG8o4BLHnGmRm06UwuNpXmpnzj0qsCJId0qWKuZmgqpAjAwKWuSM4sinXOdKWCjtbMJQ1tLLqfzZhwAmFBc6a6ic857Z3nB29XJW0CEz6EJ38btO4FeOVl2LHaq5hYAiz2vzomNzP14Xo4tcPHtYZ8OSd37dO9HtPjKs0qiE++DSSm0DUkLyAKm02VUQrbTEtZC58Kci5KVixffGhfiye4Vorlk6fzaNIlbdOyTt/hQ7lm4HRwc/MzP/Mwv/MIvfPGLX/zsZz/7sz/7syGELEvOJ865pumOa/jQhz60vr7unPub//q3Tx7+X7GJJlHvnTNxDzVpNNBFq42EAkig1VYOoyOVi3nDtMr/CEiLGqVdMqLtuScm60eEMcTYVABKpCalZRS6uSDBXE29gwstPHFGBEBuEafpP00YbZ0HtzeR1V0IyjGINFFFJYgdGUzs8wwJ0Zi3JzAluugP1O401DOFB+ebWbWpKivccs/ElOJxS0pv/dJECYHZbp3RjhKUV3SuFr8sDkOIzjkxU/McgZQQtJYYZhJjU1Wj0XEMwbHzLlsZrpjFdq1GWpZev+wPcsMlHR2Nq7pmxqOjcdNURBJC6GQM7LSA5JF4kkXUKRdE0em0siypqoKJglv/SlPEXSDP4xu2ZDsBClU9RYzotigCLrpPiMQ2S5J5u75LT+SMkGTNG1VwjhcwSm0GJO3xSYAdnAl1qTvaxsATagSKi9XgopjvGSEpgaZQptPKvJHH4+nR0dg+SKMeU+EWj5uxferJuJpOAyIpVC1tUOpZk8pYddSypmbTykIQRzJ6Ujno5VmWHJmaoG8IGXT3OnPf/e53X716FQCuXLkSQkDES5cuXbt2zV5w69atS5cuda+/fPny5cuXAeBwf/SF//SnOy/sicBK2b/y0EX2TA7rrFGEHJkmpQJAA1QIbUQIoqJ83DfjVHIiVWPJ1OSwlloRsf9w37MHRejVdRyDIgi6IiIERfAuqBxbEj7o9V1xv2N+5hsv3909JCSf8+oPPmDbqXYNu2DHXeWOZzxV1BnRTI+CBsJedGtJwnEjktFBDhxkCh6AMPomuCZxdKfZfDG1lDJuo0qTPIsFnFCmSoqEezcOp4eVqjYzXekNY5RBOdzcupDIFv1BAFRkUYFxBQAoGgbZtAzQ0VMREMFleVsjgIbGYnOW+VhkiBCb+sUnnwLQGOOjjz+6urkpKm4SrG2s02ZfJyQkMfb7W25jQ6IAaH9YW+ipxzLdqxA1lqycNqjLCYhFpD/sX7r0QBQBhO1xAZGIcO/u0Re/9FeEuH/37muv76lK0zSf/vGf/tFP/qsQQozhxs2XrJ996WL+8JUyRgWA/+F//NODw2Miquv6eLRPhE0TQ4zG/lldX7FcUlVDCB1loYtK43ENgNNp/Xdf+ka3x3S+Cf3pyRGRtt42vt2hSm20aEIjLagnNh21NSLKYmwiouH6lm2QyWx6eHQnZSVx3kbsVJ/mk/IFG16RYJv53IWt/krfehRcOPvh8SjZoBZrvuwlA+4gtUVXaSRMEgwlz7yVtNNJnRpnjrU37Fj/rQULep+3gKDYhc798czeZ+/vv96mXdzpVyqERRSu3UMHLrFMeJ4lZZxg3GVRZj5pEx+P9lsXOSXQalb/+Kc/8f4Pv7euawB49uVnQwhOlMPb0d52zv3UT/3Un/zJn2xvb//FX/zF1atX19bWPvnJT/76r//6xz72sSeffHI0Gv3Ij/zI6V/snNe/9/X/w6/51G+ZZHsa7YEIp4SMvvf1//rjOwN5gZ0Dxbfdu3ibj/ieWdKv/Mqv/MEf/MGv/dqvPfLII7/zO79DRE888cQv/uIv/v7v//5wOPzDP/zDlZWVezRNyHsnAoR4CpGgNmITkcXOjiRHjZO6bgvSbm90RxZ7L5rIDQaSo5P9jIW/KFH0JExmqTEzl4FEMJd3lbf9WM6GYanM2zrLlRd2VUBLmoF78dgXEVvtd6Ja143N9TtrxnnTAEBiBFSJEbGjLymG+YpMPphIzGzPQKLEYJ6fmmgZqUZIJh2hiUSoFEOIqtI0kYidMQMB6joAQIyimmWZ67id+oZdutOx6jsVwJbfBN/KLl1SoFk2VnjD99d7Qzhsiab5fEKlK56Q31sGh7SC/HgKV6epPFxcn61exFzbq9VmWOjEdlQBANS2oauAbqFz1v46SpoAnECZLHTb6NR6T00Ax5xnyTzZOVIl54jobaK3+/3+b//2b5+415/5zGc+85nPvGETl65fv/nVr35DBPYmx1qyMAIjAamCd/nW1kUBhagu79UBNRKorm/kJrchWsVYWc+6VxboEQBdrswKCsLSSEwO6YTIDKjAWMeQSn1yOfedc5PJdG/vLhPnZUb4iBVuCFPVmd2w7fOrTV2q6nCtLxoVIoIyJl/AyWysKs7RZDqFOpreR15mgrkN4pvdjnirIgIK6KiTnkGo7GEwY+kpIiChKkaDzyoPe5sxSgjNaDpCRFGZzlq7MZGNjQ1rIExZq6qydeJ82gN1m4eiAmBuhVuJiiAguray/oFHfzBKQICJ6GQyQcSZJIp5VNp+4Kop9s6mceeV29Zh6g26SSLma8hId/b2jndqW40XrlxAQEXgKHfGt1NGfpxDQ4g4berHPnQVALzvrazcb2fL3t7148O7qpIX2f/D3pvFSJadZ2L/cu4Sey5VlbX0Qjab3dyapCSLpGxrOCIlQxYwtqWBHwYEBrAMUTYGFmTAfLQhWA9eIEMQYGEMeAAB8oMMP0gjzQiiR8RYIC2SWlqUyGZza/ZSXXtVbpGx3OWc//fDf+6NG5lRSzfZPSOZiUYjkZUReePec/7zL9/y9/7ehwGAHV+79vof/z/fcsZKI9fv921bLpZMRCJAFGyF17Vv0+1O3h0A1msiw9pvKNy6+iNrNpPrb6htm0ew1UFsfxNFg6rvxh8Rnc9P7Bn7IO2kQkPr5qRF4U/FIUS3kilCZ0XoYlbUVfQRSvtRT73fzyMYGqQsl/YOvUFiUUBEQt6GpHhJzsXCKgHqQ0S3L44XvgoIKKoHBwft3mzRVUkaLFpdeOJSE2SVmkb561fv1FWNURuzbV7Fwo1SZzGUEOqmd+7r0kyeQQGJOw8AOEu+9Z3rR9MqBAGA4/mhiDLTrdvTjVHp+4zeJqK7dw++/e2XQ1ApMshY0LrFBKDMyWRnR1RBABKog6IgAI7Gqd3KovTTRbA900/7RiDgFEz3SlmDBmzl8pgQFQhraSyi2CWcJklSluXJyZQdB+0hpObFhFC117m9PQghV9C8n6oGU59mQAEEwLKqgngXqKxKiKQkSbK+pAmCalA5jF6MpvIDCoyMfNonjxhSxqDWE0URS32ol40lSKFzqQ4QSRXKqgJTcUXaHY+tfVmFk6paUuykRuBM3fAMGIAg0rgzC44qO4Pej3zo/b6umen5b7505+CQiAolQTOJxO0Ll+0x3bp6dXZ4ZIITzqWWTboU0gEy0/z6yc2bhzYF+9APP5EkCRLNj47uvHoVreW8yKAiQFDFJ999SUWzpL89uqQqzPjiC9cOD2aIsLU1/uAH/yEA5Hl+997+81+5mvdyw+plWWZDQEOchyDU2DeHEKzltNaR6VC0TD+kG2jWpVT1bEja1FtYhSR0DNhlMgIASJAQAgC2KCFEXRaLDgYjgTW8IYhYlrqWgiVELTuPXWSRlMuqWFbYRDcA4ISHW6MGNl7XjYHHJMui8j9g6Df9yioGF05WUKbMpZZz1eUiBEFC8HJycmKfK8/TJOEG8CmIgAlvXxjH+AKexNtFvvrSslhEV5XQ9vIosZDkQmapEyGKa0KSBwtECDgcbje6xiSKxHD1+r3Xr92Lzy5ziEBIBwfzjZnmW2CaxJQkjkjraA17unCzkEQdT8jGZv57KtzgbOGGDyzcInPiIQaKLaakKdzeGCJg47VHprgB6RA78OtO4dYM2PG0s9sGSHf7V6xw877mQN3CrWkJqET+p1rhZiEJ15groBILN9uKEiRgQFIr3DBKbpJpb4qCr4OqMsbCTQStcEMEZmeFG1Gtqmnq0oTXwBkPK9z0IaD2t6Nw2/zyhxduD/gjuqr8cEUn7t6NtcJNTw/czhKiuoVbl4i15m5wqnADlCAN6n1lSt7t860KN4yFW9cNEDd0Hs7IACg4ptZtnFzr1rn5BtIPuno/+PrB1w++/u35+j5nSaIyzCfnx48HD/fC3aVbmmxSHxJQzdn5nUJEiXD/7nL+em2aSk++b8dafb3+aDIaKyAiHLy2X5VLItrq52mSIuASMcDC8oYSg0AAAC9wVEQprCHt5skAgdOtpLfniDlN3XIadb+qCsGnlpy59DxpUNU8zUe8Iww48wf3DoAQAa9Pr1ehJMLlEn76Ez9FDAhwMsWyAERQkYPL90whqCjCyaJm4jvzG8fFoYlqv+e5J4mImKb3Tp7/wjeIERHLhen5aPD+9tU7ErTS5bw6srOxritT/yOkRb9nJ13I+5rkwY68npo0VmrK8ApZyr0s5uE/9GMfVVVm2r979L/80//VMQFCsaxCHVTlmX/nx3qTLSOwzb21chCB84wBCQlHY2sokIdZBQceae/8ud3Blh2kvvZ1HYhoOlvePJgSEyBk85wCq2p/MPjoT3xEEZaz4sard4gQmGq9VfojQjya5r/9z37Xnk7WH3/y7/+UVVLXrn3Xh5qJ7969fXx8wpwwVeSihEVZ+87c3a36NW1KYPh+VS++k901eXrW4pVDCL5J3rHxwu0kCo5W3zfttLosVke8MhjguOkWrPrBJNigrakpzZiEmQAh1FJVsTVmJsD28sbNQfNBL0lSE9Ptu4gpKfdjvpPu5tmYrawsvDRAbXEU847RKLOLF7O7QFAv1dwbn3T3iVHbq77yzh2rXa6+fPv2jSPDKChmCACVfP1vvmt9bk7Q5bGjlo8wH6aiOh4P3/P+Z0SEmb/61Zfu3DkgIllWdtcFUX0021At2yr45q3bCuBrePdzVz7xDz5aVV5c0OZenezXKsqOjsqBhLdFCcD4lUA2LTJ0ojZI60ZUhSCI+Do0tO8O4p65Zca3vu822WmgOXg2DsZqqJkHICEyIiNSc6Nw3WqqQZgiMgEDgmqQIAYMDCH44ElQlfu9vgHQfAkmCKEieZZYSFKlogYmJkYgNZOBJHeOTSoay6J2jhRAtVX/hBCCBBv3WdqsIYRG9YZCU1upnLYxh3WcX4OMBZfnsX/JJ9OTqXMMAKEKGiTSCNoeSZzMNZWHDeMtagKhRiYXM6GLQi5FA442DTabuK0E2gCyXgYIvvaAYi4MCkE1KKKIn53MLTq4dNDr9Yx7kWUZ18TO6rtTdfIbGWiujaMe+AtwdhCGD3nPMy7YZ0on3TytxbXyresB1gIy429qa3YWg1Hz/9XN6Kixdf5Mix1vmtLS4WcQNy1mhURNdIWIUVUa3bjoM1bX3mpAAVQXlXByBvPnY0e9fi4izjE7AjOd7oC6V2hSWbXtvK8VoK4BQPNBQg6CW1Ht3CxYSKK30w7g7IS0q0K4ajyKnlqDa6b1D5mkb0RKtASWDTNmxBXiHrroaDTp+/XfpEZ5u0NwIYLoL4lktKioAg6ooiEERY2rsaXl4wZPS9PHQKFWfeU+H9ysKe+z9s9sKXxjDZc1sRTshHs85Rff2RLmaQ4dKUyT7AZcWSdGboKoAiiBNRGwEQA5e4UigiiqDxEb/Lvx9eAO2uoWIKxA17QiuGw2wmttDDfdwpUKqagEoweCmBYcNs0b2cza74rbNL1/CEHEW9ZGm0CpK+M6RCBm4qDM0EGQNqKb+naEJATwQYqqFq8SFMW6p9RLegCaJRmgM9R93ushpyZSryEYAbIOQctgLCoNgIqWdhCkCIhaiQaM3ulsfVZEMkSsqgYtgy5VyCWYZykxpy41dh8SFfNq/+DQun3JhNmxqKacZnUmCBKgDrVtz9lsuajnRFgvaF4VliXdO/CzEyEEVTk+mLb+POo0AA7Hg2TEpspaTAVRiKScK2oaTXy0TZH8/r07wQtlkI4zYz1UVWUFBTOP+/0mrys1igZiSmPjWflm2VWCHJqkpyhBlYiWdZ32EhvrMLO56ToEjkgoalQAFSkl7tkhsJibHTMFKgNLQNUqaNVM2F3MRRN2k62JoZGWi6WvClCl3EHaAwThutSClUnQ9ag3zpCAgI9nh5YlYZqkvaFlSVVVBglBAxJube8yu6KY+xMTAEDVetWpxVWxprCWMGh3VevGs0o3yP10rV7OiA11dmp7tsC6gqxu2oS60t/HdrgWY0kIDR8FKUsz41Uxc1s6NIYVkCdRr0RLLY9j4gzODME1zWg8Sa3bLapGLeYkadWAXWY7B4g7rskck6nBpLd7aWRgtEQTE6EsjCyhgMjaagYkhKgiWFVwsD+3qaiqZhkj4YXHtx07APA+HNw7sbsUArcc5sS42QlUVbj+ym1fe6+1j8R/nIzPU8rsKOXsbQlJiIuyOpjOQlCplLwDBAfu/PAcAnLfKfUBVVTPXdhKU4PM66K8ASqIsCy1nEbSdRKA1KFiAsMUMgQstKpDScAAijCw+wIAVb2wZ1Z6gDBHgf6AdncmRMSUhIoBgJy7d33611/5pglCfuRnPtgb5qIy1N72fFsRiuXiuPJISMhXX799uDggolDpcuoBgR2+8OLxratLM5+qlhkASNDti9mlp4Z15Z988l3ndvaCeBH90uf/pvYeAetSKAyjoKeWoIqAy8Xir//qL4IP5y6f++GPfyj4QESvvXRtdrIAgCzPds5dsMMLwz6GY/PwHrofYk4VYL+ZDbPHoll2x/eOJHgELJaL0d7QpiTobYoifac9qVU1KC0bU3mXDMH1LOW+8fp1O7bSvmQTrwA8E1w0IWnURwQFHfb6o6eftmD3pRtfOjjZB4CdzMPkHAD6yh/7A2YHAv3zSb41AQRf63e/8k0LSdvHB/OTmYWk0LgKknPPvvc5Zr5z+9bipdKUmGazWdsD6ogudPT3zoz213BADYWja3XUvrpLZ12R9Rv8AYZuSGIjiHXT7fZPa1jpiGIzFSNCdAwK7ChJ47svlqVZYDjndna2oku4V2lwj3WpAJAw7YxSe5PbB9XRojLyU0WHChqC7FwcX7p0LngBxEU49qEGgJ2tQcM4Cy6t4jtWDpo6ziomBbj89IXHnr0QMQRTBIVQhxe+/G01fjX3sIzOlDiKbPTpsb74tWsQURthst0LQf7+Jz98bncbQA8Op3/0B1+0yVnpuWqEK8gN7IZPZ9Wf/PM/A8TiZFHNC4NW/uP/6j/rD4fseJJd25govQVut40ymWzIV1cG0J0nrVHxEIEIGsVRgJXHkbS00Y4MOpwhFmqbadqMP67ONlwyucRZn0VAo04/iKAogqC08o/MxI6JGIKYeSABUpRzwK6CFQIysZDYhBQBEZQcshIiBn+qCosdBGY2J7U2hV31HDoAG2wV8IBWLmmbCjdcs60/VZxpRxtg5dqu0HCNVYlQlVRbPvfaWzfVLqpK9AgxhaDY+NCGSK6+9mqtMS/qBRDEqwaMHWIlIhezRddYZgaRqkbrr5l5Afzt5pi02dZpRMspg+9NuIHGK8Esl7FrUkSKRIDcMK9Fz9Zray7Xula4NcCuBnLlURWCF28yeiqIctaAgAhtvxgyV1XWpBdEJagBSnztay+2vISiaAuDuoQAkR2xi2U7OWImdrTSq3urQ1JV18tiGYImQcwVkAGABQAF6vn02D4Zal81ZklSE4ASQbWsZ7OCCBV0hDljAoiAOWAOiOBnUtaRvN54eyqogcpUNYTUIlGapL28R0SEDs1KGChU1WI2T5NEQbegN6CeqPQ176uB9+p5CojAhOVysTyZEZEG4rQHAOww6XE6MCMfHG2PEUEVkf3dW1PVgPXt4zuFga6W04WI2KwqhDIOekxHvBHENLQYUw4UkLDfH5hhVpImaRZVokJJoUos4B4tKmIx2HqzwqAdWOR5puKIKPi6KitLzrVCDYZUKpmcqgpRe2YyQVR0VZHWzkWZJDU7ckisma/7dw6sE5j188nutqoi8Xh7yz7XcDyenxypAoG855lnkIiQrl+7MT+ZIWES4NIzKQAoSE4ZUkUsAHD37qEpoiRJ2huOCTHPsq3JlvWbpif7/gwns5uqPHrLbCMx5SyuqGt1SfSGkTFdPKcJZGD0C4rFuOl8MbNIF2QeZzhVVakqZcn29hYAMNHhcr8slxHL4whRSbFeyMHrM4OM9s+naZaBKgS10TOoNK1P5TRpW+bSaKmGUIcQ3Z65j6jAAk+897KpiCxOyqP9uaWQWse0wAw7IYKwiTBD0Ju3p7O5B9DFsuiNMyRU1e2LO0mW2328cfue3U0SJS+AmPXzVnzmxmvXsywnR/u37uLbgN5GxKIsjmcnweuuyzNiUXCAkAQgDFDv3zm2J4c6VulFOo+poBMWJ+X+/tS0KXqjCbtMERBHSDkiqZz4eUHoADRNEdEZS6coCzuu837mvQOAXt7DqGRHWHs7ZOpicbx/kKapqlzE8TaNRSXVZMsPCRCpPsqBEJlwdnx8vL9PhC7pTba3VZUZ83HWWyoTEtOT79gzJO61V26/8Fc3EwfX6xl6ZzoSzQwaBCVA5JWzRg9wBdOdUSJ2PEL1iLi1HWRY2XnSG5iFA84K8vPcHtut4wUwIeK5SQT4ik2XAQBgOBwQKhGFuioWS2YGhGqBUqOALhaLaGdAVDkTx9BeNiArnFWCUmz1C5JPVVFpAbkYQPTqC6957yWEc5f3zj3xePABCfcuX5xsTwiBXb5/92YQ2R0Pf+LHf9yLOHZ/8mefv37LW/zee9cYAMjB4pY/ubqwXXb1lZeLZa0q2zs7z75vV0SG/cGlixdt1V678WpLyELsUEZkxcg/9c1Gutwp8aNTLzGp3rbF3s68Ou+5Eai5YRetXt7wUYjANROlvJ+s4M6hk9o32f1yuRSRhAePPXZZVdPEvXbncDY/SZwDgH4vtT9eHIarh/sIIEGf+/EnhuO+Bin8wjROkaAhuGieZcxJo3cSWSaz2bLyhTWw+hObYfOHn30fALrEffcbr17/k7+xZkgoo4O2PcG4YLiPmKLqt166bRdODKO9vk2Q3/u+py5dvhhCCEH+5LNf9D4AgtRalwoIaZ60VvIvfuXrqEiEr373xsbo/1aAADrqPafnAq1IoGJXZbmFsWKjc9ykiqdmQxtl+vGMvVQnPV5nTBp+RElAA5hnQCQzKnTKsXbk1mrzaDMpQFDR4KWpZZQZiIGUiVwjYdXQ0KAx/nnI2MtU1gQQUdagt62LLjXc+fud0u2MceV+1lXkxqBdtJ8AACAASURBVE1YcL2P8/P6+IeZVNlGZu3dMM88RUASasSeqroOItpQmk22KNSyyuma3g4zM4sqtq9tPbv/tosDrDRFuzOvuBrxAVvGQpuqGhfs7K1ABLZix3TPtcm4EO6TUZ6a7p2W5AIBX3mbUIuXzsi1882Z2TczRe4IxRa7inof6spbSFo3MW+2YXMZziUmwMRnCFhvIQjggfP6R5/13ndMeDbxfvAQEDrGGnHfdj3tO4POR9Ivb3c74RvRrtf7HeYPXdNvtIjQ1tkr9m4p+g7ctyTpiJRtfAytBOQmSRFs4mV7I827mIhO7UyRWHeaVcnKL+AHMiVv4uCnqP7cIXF8TxCKaN0KIM3S6QoLPnhRdtRmcB3oI4ArsapH+fr+hyStSecsXrKt/jDLRDVJebA3RkQRdAu2HMkvZ9N6Zje33xsYakyFtOoroaqOL1zoZ30AoHSESUZI5AdEOaFDgKNp4evKWj/boy17GiQqywIAnHBGOQKo4L3lDABcxZIll971TovNB25eYBDQNMCivAuEs3K5vzy23vxsVi1mAQnznnKWqYpLyBdSHpbsCBC/ffCKxaaqCP2kh7HF0wgbN6OWEChUZC3Ic3uDNGMVSHou6/VDKpylIZRBPCLW9UldLQGRarp1NQr+9wL3JDE7TCkFCJCwLdaYCZvHJygmoJgN8mfe9y4iRKJrL9+dHi8Tpuf//Mt1WavqeHv7Y5/4aWtRhxrLEIWTJ9vnrVcqdbGcnSAgZUy5javhypPbBllGl9y+el1VASFNKJ0MEaEq9a+/+KKIXNqbPDZx3kuWpl/50le/+c2XneMsT3/sEz8EAFKF3Su7H3juHSbSxikXS88Ms2n5nW9/CxEdQ8KRitXvZ8RixmeLebECGa78O84oN2JYKVc3GBiblccfNZYgq7CMK0+TFsiqKi3ftYtK66IQ22KtK+3WvCTuWyJsWV3cYLtBofDz1Uus/lF1CaqSy8iNM1V1icuH+aA/sNYyQpRtkxAq61QJfOvFVzlFAFiUczNqOXdx8kP//rOWYZVSe6mtPByORrbLhB1lTQ+7DiCgiMtZaQFltD346Cefs3/NOCMgQpoezr7xF98hJlD1VcnOgSromBxH45aIbqdb149Ppl5FQHU0zEAliJzf3X3m6XcAwkvfuXrt2l3nCABmx7UIEKCHtw0qqQCCIEhARAyiREwpIyJ4JMhsNYjMJYSmydfRb1WycQVT4tgUAhjQhg1mrkSIEIJUXglBOTr2KACAhzhow1Yh1dsUA0EJ0zyP1gsoFQSbsZUaQLHS0ksgw3uLiigqiNiIEJFQBSREgeGqrJtJMJ5V715roCpZD8mlLs2cCnIaS1PjwTfZUxCNahKV2QEA5EgE8ZwSOYOXXU9qWj+yXj83UCg7NozvbDZbzheqyklCEXsJQVcszQinQIRQ1w0WUhtseJqxubAGxaqs7Kcud1EtCWV+shCR5TALvgpeAsH8ZDE9nDnHvUGmGpoRNQ63c8OmDyf9JPXssK51uVwSUZaQy519KKJIvtfYe3t05OcDkoUNM8s10TKN2rhdfdsHo8k3JrydJgTC+vddY6KuCu/K+5vR/Dyo+bK1sQZVBQCF5aLGyhAGS1UNHoajnJlVDXhdRc9LbAj6iAbpjhVi3cRsWZ1ww0k/Nr84JyAiqqtaQohYkhBizA6CRFGzOvrfQlUGdqVVaswISgDa66U7uyMA6PVyZoqdcvD6QIHot7Bw01OOkqtdelqmrh12dP3mmybPfVcerTpW7VRV7zdzaWt1bPpsp2s3xVZWfjPIeVPQ0UevNqxxJcrSFVfEjS2DboH4veODG71+aD+7vrE3XMclnKrGdSWGbiSH2IRrhOOafaUrSb/2WQuoatyxm/HrP/h6QMe2fSKKFO8+nWo64n2f6dlF0Dntmr0o0tjBnyJCnC7jiCL05xT2YSVD1RkFiETv2LcpJGFjV5A6ylInoklKcdgvaJmnKiSMGTprJffy3BrKdUl5Jibq7tKUo/sANbAbJswIHSJ4X5ZljQhpkqRu1JxoCw2FbT1LpUWhXFYAwIQqmuYpR+9mELQRk3rzRk057/cQkYkEySsggAC6lFXRJRTZPad7YXg2TnV1/NrfdCknmVNRlzGniAEBpVjOrdj2XkRaLopJd0MtNTWOcRRJG9gVGTwtRgEAGtMq1FW8Y+c4SVWVnUvAHAEggLbshOboRlHRIAqIsnKlxybjROg4crB5ioBLpT8IqsIpHp7MQpAsSYJXBEZgFTzYPwKA4EOe5LtbJ5HBhxVxIEJiT0kgVkWpKmkXfMM+kUecvuuD9WseJY43WLk3gTBYe4k+WlN1jcHU7hyb4WirBgoAIcjZpGwVU4RBERV8AYe35ybwJM6GqMAMOtqQR6api61DBTiT1imhAgoh58nu5W1j05WFuSuDN3knBWZkTzFLqip22KCvjNeqldfjkwIAKi+NnTCc29myRPjw9vHGqPRWQCXVsaiEna3+3tZWECGHvq6QoCr17kGFCEH0nXuDc71tEUXCK1eesBh/PCgTObGQtHX+fJrlqkCYgToFJhxkbo+QiWh69OLR9AgRh/3tc+/5sKog8vT4O8XiBgJzX10GAFCX4c7VO/EZ9tPzV3ai1VQiFdWgEFKsM1SVPg+uuEsK6pgrTqc+Vj+Tc30RSVJ2KYrWBNxdTgpkuCuilduqiZMhYlnU1WKJgCIw3ukPJj0NyhkMdgiVkJbXXvumgcuQJ0ipZV0JLm2Zl8sSq9oOo4s7I3KMhOp7bTMSmsUaWGIwqyENAAikmhAnScJM/cm2yytVHY8nO1oFEAK4A74AsdhZhsbUuyr8ogJAJEWMnzJ1/ahXZ47UgKraH0+SNFPV3kDe/d4lIVZV+aWvfNWIFLPjOtUBCfmlfP6P/wIA6jo8/eyVZTn1dQCAnkszRiJMi3m6s3AJlcd+/3Y0giTCNE0bYKe2lOzTkaij0wokLZi6u9A7I/9VGQWta2vzm8Hb0Q2qsNKKlLVktnlzOTUmg45/t6pqEDgN+F7FO/UtQKRjIpKAqgIJkagqUXDOpUlmipGz2ZHq6RlcqNXUyKjsqwIBTG/In/7uN2xhXHl6t7/VU68u51ETksQrNYDxnd1tS2qOj+YtfClIo0iXJQFJAfpXdj7xvkuq4BL+i89+9cbLt9jx8XQe7U6Zhr5vN62uyzQ1tC2OtrcQUUnvHfqTv7quAOIXWU72CT7xsR/L0tw5/hx/caNU/1tZuG0yQWv5nd0xTwyu64Wbqm6auXWdfOIzilLWgA8o3JpC8qzHO+AK/Loy7F5xThU2veh7uRvRMQtXuHPaeDBj92Z9z3+7OxnW79PTje8pKhhBhrFS66b0TADAok175EzdrK2L7Q+Ktu8JfEANRCACbOi+a0cf0Z5QNXhRXZOXaxH265JwG+ruxrlvTc8iBAkhIK7aWG9HSGrh8+3yd84h21lUIxoiSESCiBIgMyOhAaMlRITexlhg6gqqQkTM3AE6xX8V9RhbyjGkRCiHqiAGPVNy6QPm6Nr9AoA3ER80IiTtsWDELREZZLYd33ZjRasxaO1QeMN/Udc6PG3frtu9ggcoc3QTel2rEbBxCsQNxYiqigRERImSlUSkTS6goEjoHFmxiQ3iSkXryquSryXUIc7UaHOX7e/qV2tj2rmdb+bja+dWE6MCEKNLorSuF+z6JzeOhJs6hmdmAlFctA4AUFdiHKiGa3I6JGGH/aQKp+gzTOyYHTPT20IoUdCEk37WrzEkWcJ5AiIi/vm/fF5Ee3n+zJPvNljg3sWLW5NzIqIg3/72SwpBRAf9yRPvvCwaAGAwSpgJFEIIIIAoCDQanCMk59y9W1+8fus6IW6Nz4cfNoMqGWVPbCVXAHihN73OEWjpi5deuWE2G9uXdy7uXmpG4AFAQMERZS4RBSWpuVZVJRkNhtujLUDcGo0mk4GIpDmrd4tjTFJEBG7G/IRoktuK2FquBAzxkSSSbRMAOAHuF5QH6//cuSoAkPay7fM70QLg/CDNewAafLh98y4AiOrupDfankSWpooEIEWuW8FQaonHiAHMmTxJ8snIdGrh2n6oCxBCRs6cQYAODxdBBRX8AF0Wl7xvreiTnMcOAIMrgtbWa+r32Tp580V5794RIYroYLSdNq7olCug5Fkv7+8BaJq5Pz156dqr9yhBYrxwZQgApHJ0t/zaV69affTUk5eT3AFA79Lw37vyI0QwO1weXJuaBeuff/7rs+mSCENY2ah1j4O2cFuJpSIDtDbCbsXPbXSxqR17rTTc2sYbaAgaxdVWvRuEDpO3fcfOdIWoLfG0ofytysaVo4GqaYGIaF2H0+0nxGE+AoWc+wmxqqbkQigWxTRJHIAChq7VVAxaFCERRGAMW0LKMVEAZT25XSwOalBFxundBQBI0ItP7e5c2bJSt66FvADAaED28WqBqqFkVhqMmijezxdix+eFp88NLw4A4PxoL3UZIi5mixe/8qKhXZczv4wkVFRwiCiq4yGeu5Cowqzguo5DjK+//rLxVF69c2uj1/Rb0EsiSjkF9syMTIQQFK5dveZD2NmafOR9z4igCIxG48HkgkgQ8Xe/82dB6hDC5cvJO3dGIdQA4JJGoT2SCxQR86yPQEmSzE/mh/v7hISSRNwdyIC3+ukQgEK5VBFGLgTuHRyLavAh2+4nCfnGnhRrVJNdMyojqGBQ0ICQZVkv7wFgL8vzXioiWc+BUL0EEEAETqnTmEDrCLbjN1mBlJWTOCXFtMZEQEFqnR/VAtr3Ot4BDRpE0zTt93IArap6WZQAEER2d/rZuGf5rYKqiOm4WxJDTITUAXkrACIz9XIAdI5NalvRzkyyknGxrEUFFCB3BO3Lm49DTHlCgCKijZZikiSEQISLZbWcF0TUDE2aW5DY6DfpJxcAJMvTopCTwyWkwI4uXtqOc+t5uHnzyP7ilXdchEQl6HDYf/zxKwBwvH+SJmy5lXw+FEXR2mk8oEncdbHukkZWY87u1OXsLAA6CmRNL6n9aLQJAqCd6SN16LKniqD1XlLEbatqEDnbGmdMAYEpYSQ1pxwNdSggKmpuKrU7zkUtvp+RFQAByxOvYOg2Pb59BAC+DpOdcfJYXhsmI9SKigj9PGbMFDA0fYS6UfVUwarx0BjsDgbn+qL6rr0nB2kfEQ/uHb74/Av29+vK20dDxCSvEFFEhr1+nrEILAJqiE/r1tGBJdGH8+nbZAfQbRKtsjXHgMjMrd21iKgElaBi2qCRidMud9X7LQhV1YgPRlor3EBEPYB5H0UlqegUQ4q4vsTxgYVnB2x9qnB7Y9n0ihLTFm4QpeFakxpcKxW7NXm7Vd6ASPrDZPaxe/zfd4ilp2o5vT9qoR30igQAiYR+U0vs2DEgoqW9pwo3a3iHOljbQqlbQeDfeVG39VXSXZ5vWGNzBaeipt1jNrbR5R7PziW7hRtsYkusOIbm5Kfqa1+jR0TvwwMKN1w5vpwq3Kh163gbQQCN61xLMGCm2EOJ4Z1UbeAcJMbPlRnImbHuqQ4QQufNjaBjI+u2fdV2yaGRQ2lRG8ZoWCeO4CYMEj5s199vLYFNxwFBRMM6Y+3R0syI2bNLXlUMpwAeD34Cm6khGoJYloRC9zFb0U0HTMTpBR+UorlLi1WxZIFi1oCEmKQu6yWYIDvaMJyIfkTS+MREeRYydWCivJf2+jkRhqB+Vv4taC3DaVHcLiizs107SBHEziQR12cG8P0bQ0CbTUlQXwfrB2EdEBURIcNNcBZA2NBvtDfqEkjZcURCiZxd46oaQjA4XqvIovqQdfx9twPQYZLu5f0K/WirNzifSdCg6XP99yloxn0tL5q0yN3pnbv1NUscsmxiQNIkGXqIYNWqOLKovZPvIJm+jjAMAQA16Y2z4W5KRL0RHOs1BREQAiEFJVgcL4r5kpCXdXn+sQsK4H24/Pi5px6bxNBelOAFVCnNqT8kBaBFJTdNUAHAEfQAgDBDNh0REqhrqBFqUPRHzUMiQlJQoCw6SxLhcx95yjlmprt3733rpZeYEUQ1vahJLyqFwlIBgmoIoBLpvyKoCkTusSsX7FC6vHd+d2vLCrdrt66G4JHcQncBUUFzTV1UdwHVlhzhgPvWalIOwS3RcdDKiwLAbD5//ivfsIhw5b3nti6OJAggan/cLKUAGu0GUONIeFaeICgndPPmzS9/7i+T1AUftna3+Mp5HzRz/K5LewpK2M9wD0CI+B/94//w8D/5KDMv5+Vnf/dLcZtWqvN4EH/j668goYjs7IwTUl/73mTy5I8+pSIK+t/88D9hdC5xL339lf/5M/80zRLr1rVGkmlEWoNfg6/LGbASQCPKE6gF+Lkm9EOWxuS3OsFQi6Wrq/dp+1ctjb2TrSIoagTx93tZ41wGxpt2xL24aAH7DXVEcJSY1ofmeZ85tWv0nlTVYXZ8Uqhqkrj5rCzmVUis55i2NRq1mnNC1kKSpmBlIuZ4nY64bTp5SQEgSeC1F2+9+vVrVnsEp6CQZO4/+EcfJSYAFKydW9h7TbKefRwfwrxY2julLrfe2fFsekIzABANP/rT77M+9zdeeOnW9dumwEdCCEhA04OTr93bV8V0wC6Psu6hnxi+pipqfBuzpEZRLOo0g+mNEFHE6JvXsLZdF9yURGzMktbz2lZoe5UidQolQOu3bcgnz0b/01nSowLeGpPhtmICZjL4PDKuV1GPlCVtvOA3cG1nYAdrZ4YYL1/0kdENupIr0OCFSIJfk8puL9gmiUTkHCeJY+Y68W0h2P1TIopm6icd9XG2lFDTLHGUuMS5xIlpJFgI+dszgMM1FH43mcKzsKYzyIq35IpUrJOFdvKAAjlpAJlrZQreZ0NCFy3TQXiY7OIapqcp5UFEFVXp0Rfv5pAUQvj0pz999epVRDw5OfnQhz70m7/5m5/73Od+4zd+I4Twi7/4iz/3cz9337qDySUutmLN8A6V2Ckos3OpGddSQA3iUc2srrWs626AmAuu9hW2v9mUYUSmIBXVfiAErBUhSB1CpchBautdI6qCBPVBA5gBqWUXa4I7ElvR1BinUDOoaZ/XOnSAEDklUEhyR848ArBYlsTExL4OWZYSgbJ2J+9d5ko7ne+wo+KaFRHvvaw3RFW0yZ1XRbp2y834ck1T18tz5/iExGDQiDb5iSDw2KhCWLeaPxsiI82PiJKEk4QJQVR9CCFIQGqquFCEJYBQIEUlR0TIjsbjgV1XJVVZF3GQZZ9JULwul6WvPedVqCoRUVCf1NY0JgfnL51LUweE06NZUdQbRG/ecMsGH+VIePSS6PQJ1Yjht8j9TuN9Ra9Zwz1KUFX7/9lTRB/YAcXNMU7v8/L1Yw9wOS1tpQeovManM9kaRa1k1MYBUtfgoisbi7gf0yTp9XLLkibJwLqIZVkuZlVslUbkAEiQ1Up+9JDEzL/+679um+Ezn/nM008/ffXq1V/91V/9lV/5lV6v98u//MvPPPPMBz7wgY0PfbI1eezJK3UVdBCOsQAGRNw6d1FV87S3t3deVRnda0d3Dmd3CBkBJ9llBBQRdhRCZX93UZhOM9ajUigAKHKW9sag6jjpDYf9yZCQs35/6Ut7kFN3p0yOgGh//sry4BCJagmUFQAATko4vrtgG/E+t/2ujBIAKBWPRBBIvK+quQFxs36/PyEEyEcZJQ5YKU00JUlAEgBVt1AbrPbH2YUnR74Oe3sXxuOJORR9+c//yvsgQXYuTJ5+z7uDDwCQJUQhIKJIqOoaVJMsD8qiKIoBnZCzsBgMVcAwnc2qxaKZiSGzA6RyHoXGaQBpP4+uBD4KlhML9wMoBJR3PfX4ux7bI6Y//eJ3j46W1uUv4x6AuhY/9SIKCC6dN2YVrM4BgATURrw57w0IgR2PRpNLl8+7hFVkXixl/0CC9LLswmQbAJbV4a3D1wxTtzUeTcZ9Ve2H9Of+4d8DgDRL/vLPX/xXn/0Lq8JSHjAjKByVi+eX3wxe9vbOvbv2IQRVdU9ImqWqMrqU/Lf/7L8G0KyX/e//w//x/Of/Js1SAAiSNhtUTuH3IJLsrY0gK85NgwZgbvewtjbLEkII0kopthnlWQm3FemfAVwL+2jOUYHoccZSNWjyobgor4o8GAya94l6oSJycHJbRErpef+OxoxLzZccAOq6anuUiUvaOYN9ZueMDwVMxI0veQihGSBq+/II9wYFgMz1EBEVnv+/XrTYVEAx0xMTif6P/vOfGJ4bWlaFjcecgvnUQ6iqxkeX+9mWXczTT73zySuXLFP+kfd/mImTxH3zGy//35/9Qpomvq7rMt7/qlBAJMLlbAFvSFVyPB4DwM2bN7/2ta995jOf+cIXvnDp0qWf/MmfBIAPfehDf/zHf9wNSbPZbDabOef2D/b//4nA7YCzdX3ioP9Gr0rfzgvYOCTqzC7vm5U8ABVoPEERUYUffH3/H1mTLnVmUW8y/zw7pH5za+8hvaQ/+IM/uHz58jPPPPM7v/M758+ftx9evHjx7t273V/7/d///d/+7d9m5lu3bo130vjZyMxEYpdB1ZJAuwX0KDcraiK2YndwVh0KVaXrR0bE5j1KzUpfdfh1w+bBzliE2Wo1fAC0Aaw+9GIpqEaehDCTS1gCdh3+Yo20IdluGqSwxqZoLoTu025QuB/Vc1OjqxWUPBU17P8iYgqAQODOVI0b+4OqGoJHsiR8Bc8x05da1DQAFJSJzWZHQYFXSN+68lHdWfVUC68Zy0Yz0VYOs72EuvKh1FJKAMwpfSiS462d1z90Gnsf+Q3sLO+YcHVUFpxzouKci8Isj3oVuBqUdRfYg642ZllNFomi4oNHIBE1JRMFUCQWA39DCKKnvKoU1kkk8afGG7K5cwhBAocQpLWcAW9ZUgtJfQMhqa7r3/u93/v5n/95AOj1emUZx7HL5dJyqPbrU5/61Kc+9SkA+MN/+Uf/3f/0X851GUAOb90rYIGATLQ32lPVwaBfXTwWUSIWDApOgQCQVBAQVVC9SG2k+HKxCL4GwOX2jNmBqsOQwcB6o6PhaKfaReQ8G6IOzNVhNjs6ObmFxIeLe0UxQ0IPmvbQKhGXEmGEXy6krCAAQABSTBF1Pivv3TsmYkLwXmjlm0gqqoG4h+kEkhQI6dKVS7Zjyqq4eWMfARfTkLp9OxjquraAKegxrYwcyy43QfS6psWxAGjitM9JgKCo9WI5VwEF1bCsj2IApKykxJ7/qN8zuGi5nAOAijBjVvcNi0yuNe4jDalVesvC18WSmBQ9OyFEL7KQCgFq78/tvPOpS5frEFT15uK2SfgGxjo1u5IVSbxWDQAYJO8P3/3u95JDUEh6KQEycV1WX/6rrwAAMvHAygqdLfbNfVMCnFyLUuLi5Mc+/pyFpIODuyGIIU3VEwrMTqpXrt4wAalsNMx7uYokSbq1PVBVL/KRn/rQE+95zDmuyuoL//yLKqJKUjWIbZJ2LNb6YiModYbuTUbQ/KuuCjdEXSkf6gqfrauWdPwmSRvEPAO1EIf2JQ4zxwCKlDBHDyKgWhrZK5PNQ4RyufTeW+iR4FWhLIpvfeNbNrSdz2a9PLfTsWoVP5nFOeu25sAcu3J1GwqKFXBcWqomYXuLoHEGgFoKQ41tnd8GRBUdDXef3LkEoqo6m1ZlNQWFylf7JweIIKJ7ezuDQU9V0jyhBtpWVovm5CVOegYBuX3rAJGYqazCk+94jIhokFDGdp1Z3jPd+qAom6LSg0LS5z//+el0+jM/8zNWrP3hH/7hcrlM0/SFF1749Kc/fb/oXWsotBLQg8P9aXFISEzcq/uqql5qmgsoEQkIAFnvj0DMxgdVRIKKAGJdFr6qAKkKSwanqiqUNUDLXq83GowBKU2HoLm5hRTFzaK4TexOimlZF0gooElqTTXgBFuYT6G1Oa4rMkAKCEVZ372zcI5Nbj2qboO5CakKUQpJHzgFR7j3+Lad6rdu3Hv9+m1mmtalTaQRACcB0ISRAyRmqQJEeRTcACwXoqDDAWTEQQFUQ1kWGiwklWEGZolM4ilKhIzzIRErRMd6FamzLIQQ6RHKrVmPSmJ91LKWsiyJGUCIhBBBQ6lLBKikHo8Gly9cqnwdgtw8vmW0dxGtGVEhQW0GyhCsDSOS5PmVK48DKQKd0LEHj4RlUXzzu98FgN4g23vynDWndFGbIaoEuHvLvpELO9vvfe4dtgqf/8ujUFTRDUgSEFgu6+ruvh3Cl+ZzG7TluQAFUA3in/2hp971waeJcHGy+OJn/18JogJaJ81+09YRpJUEQFg1K86GJOjisgyvZrdQunn66cqUk1UOSy3CoOGOEFGWMIASJg5iSCrIS7wkrSXYa+fLeVEUMWcUAIC6qq6/ft0upg5JmiR2KtQaVfeASZktJCVCxpqpNdjrRaluKU11w8IhTJoGE1LMWAGg1FJUiSiZJNbfnJwbXXnnOXs6R/NyNqsQsSgXNw/umLznZDwc9gcqkORxOBQkFMsoJMCQEGd2zw8PT4wUX9dyYW9XBbILw2TS06AAMBj0EdElfO3V2xs73PcNSSLyW7/1Wz/+4z8+HA4B4GMf+9h73vOeX/qlX3LO7ezsfPKTn7xf86KBSoIxYy0kWeEWRZrvWx9sKtzw/oWbCkaxiLXCjYijipjJWz2wcIP1wo3oQfWQNvP+aAegoKJkmqBMK5saqN9Q4QanCzfsbKL7FG4P4mS205BNkvLN/RfREKJ8+5rQ4qZiqJFV0hACKCCINj4FgHHRO3YY5TJBybgNgACOzRYYrXCL/Ji1okShg+1uC7f1i8e68lWlRFgWFXw/kYRvtnDDBxVuZux+9hJXykiIraSJQKRimE0xInhB1Qcxrk8v59OF20NRJ3EZ2MhVBSSIr4M0TgREMeY2JiXr87b1wq25LSvZ33bphSCgEHyg2lsA8rW3fSlvonD7hV/4hWeffda+n0wmv/Zrv/a5z31ORD75Eq8z8AAAIABJREFUyU9ubW29IZTS34qW9ybXvw0fprPr/403Lr7Xzvfb3P9+o/OCBx1XHVLh3/UW9Hr7Z3VwrYmB4BqTd/NL1kSjOkpBiA/A/L/dX/cNSUT08Y9/vPuT0Wj0sz/7sw9d6NRj3kq0lid3nzGKARM9dWEPAZTk7vHdhmJNw3xiN82VPQvYCea91ElQQjxYHMyXM0S6sHgicamqelQHMwUhpcnWFmfGfEzrYm4RO6n6aX2JxN0t756UM8uYLjx+3nLjtI+lX9o6v3p0x+CavWxw8VzuHN27d/CnX/ibNEtBtT+84PqJqqrTk+NKRYvEX9nbSz+QEpN4/daXrrVeDnkyBoRQB2uOAAJlAAgQIOnTYJJaL3x57yRUigTFwtdLUQlhjAg9c74sa6+hBgAm3D23BwDs6JXvXr118w4xI+JH/sF/2s97dQjf2n/NKLg8dDwky/mDqM2eidUZDi6E8c4F3d4lpm9+7Wq5OCGioJTBEACyFP/oX//rP1j+C0Qkxz/yEx8mZgXNAXbrHqgunZRNkp/WuYkc1vWsqG6bluqdm0VZBkT0Upb1gSpg0q99L2qPJA6tz+I1T5a2NAp//NpBZWF2e28AoohQFOHg0OAw7JIIRn/phW8jq4iOJwPHwYbxWW/buR6oDobJP/kf/wtiun3t7v/23/82OlCATNPEGjYISdqPXGgV8/sGAKE6dmRcu+bZBPkAIUkCqfXPpKjnsTeDGWECoEm6YlLWdW0J4zDvbedja/keLach1nuqpACqqMpNKuPjNx7qWdN8EQniongASUQD3Lo7j9nHINE0sj6ffc9jzrGIDie9i49tm5f3KJ84TgD0XvOnVVSbQXtdVZaDEONwz2AH6jhninjx0Tg3+ex5OLSm2qA33h6eN2jefFoYeqgoysHQtPSABY8PTwCgt+xzhC/oooiKhr1ekiTOHt9xYtWJunG2vTtQhcCqkcYKVQ2AGkBrvxn66t6SoE4ICMzOtIqYKEkcAgiGcoXKi6OldQxiG7bRWLl0WrUo/odERByxp01VhoqojMqrkbxBxgFM4bk9eUXEQlLUeEUQkbKsjcLTG65yZvMcFlEmSpwjpqDi69CwYXGDY+earHdrT21UfojuW80lN8YYLXIyDmKIWERr71kVEZnYsVPo6B4/7Fiz2WF0vm1uXnM8UlEUi9kJErFjabCTAEodAPwKfqwtTF5WJDUv9piMpNapoNdKlFbvW0Bb5V9H2Nr2rTOTAQC89ygiot57kRiSuhCh4WRITCfH882y650q+KG4yNMlq+LZHLiT57eCASty3xtKels7gI2GYNIgh1AVGlVPl7CFpCTjvOcsJOW91HEKoAkmdi5pUF11zqQNSVnfNSEpYcrsc/WHOREqSFWxtVtcxpywCew4x+ao5xy71l0SIsjL3AzjE9VuRovdotLWKjGpgqCsqUHp28hxezQcBNqkUDevGlxDq9y/Y3JWIjEyjONsVR9Awmh0LLvNHCBG5A6dqVNAvKHixhaWhHbCGhuNRGZximeADvf9hK3bIjWI9dM3s41Qel/4tTYxY61GazwXThkHuDgwuu99M3lBImJWRFQhAw3drwBsTDW063q0YWp+uvMRL4CIoDUNWK86RQSq2BsWEkB+0yVo+4g3fwjdrEvxAFWIdSuHFavWFArbo85ajxDFrJv2igIEgRDpUO1RDGsxH093lVbkPFBR6yV37C0al43NzQDFDgG4y4B/kLq5rhl5tI6ShrsRgbcEl/SmA0+DjW181hERQRTKsranNZ/NqrK2FGLQ67WphA+1BlWk5bKYzwsmasjitghFVQDBcZKmOSICOJVg2Pb5YlHPFsQuiHKSIhIxs0shUs+QGwkeStiyJObEnlNdh/m0qjMF1fEECVkBGTlPWURd0gDrW/7eafpHky4RbJ0bI2kQGE76BOb4BPPprJzXRFCVioiKpKplVYgPAKAOgBrlAnJ2wAx6g+3JtokoTJezSnyQ0NBrUUOoi4VFPQepNdcV2rsOqGq2TP1eVg96ROQDFnFCooPRIMvIFJZAQFEBcT5bzo5vAKjbHfAojwwb1xiWIiZpaiSeo6P96bQgREpk6/y2KKR5ig2zSyOhApBw9/yu3bZlrbOiGbRLbbscHSQJ2c0LVYgrP3UAjKAh4PHxVERVZNsNkiQ17gtiggC9XvLsj74TCIjw6ObR4nDBhDZRQz3dj2pPgk62tfI7TFIyiURRrErs/IIoKCVsHmSqWpfxbgSVSmppu4+NdrPE2WXlQ/MvSY2ooJqkuD0ZNWlmaOdNiU/stV7yWMoNE8ydZarZICEmFcWUyhADVFFVbJSGKHUDyop5s50TbOW6CZM2621ZLkVVWdEQaqu8qFJYQGWvqmpREQAUhSzvxRiKwW4rO0dRPk6zaPyj/X6vl+URuZS1wIvIMqVOG0vl7Q9JTeklTY8dEnaOCTF4Pz1eICIzv/bKa/v7+0TExI//yJVIoBW/XM5VlJju3j08nE6ZyD9bOSYR8b72vjZpsV5v6DJnSvuz4yUAMLpbt2/fu7GPRIOJ5v2xKhBz2hvZ6sxSzpKIxzfOgAIkzKJeAeez4sZrJ3mPVPTSJU7zVERyl24NUxF1iUsca3RXQqWYS0VXuVgfRU/Bd3/wSU5IFRJHCbASMNPN114/ujc308c8yRHFB5lODyUIKORpxsygQKqJ69liunju4vZg26yGrt67bjlV2hsgICjJsprpbUuO0mxiQgTs0CUufkZUQhDS8+e2xv2ECBfLcG8xQ4SgevHxK8NeFukLHkNQdnTz2p1vfOk7Avr+f/f9T7znyVB5APDOQr8QYX80BkTn+OXvfvn11w8IYbLb+48/+nERDVAv9cSm7lWDq0uS5P0ffB8AMNP1WwffefWWyZUIL0DFbEwGg4QIqjIUJ0uTV8r7I3PKrZb68suvm7Lo+3r90cCZwKijBAB2z/d//jM/BwBplv7L//Ozf/3lF7I8AYHicOXV01qckDPjqDVD6jbpHAwTw++E4BeLhjJCiuhBNR1keZZa/T4v5vYmldTTehHTBFylEpWvELGqFmVZGFJ393zfOVbV3jB/4rnH28GTNJpng8Gw2a0xo3SDlPPEAqovixhP0B0XYnGhKKd2lflo6Exvx4FrlUYyB42ZJc7bnMZrI11wMC0aiGTPwmmtMJdpnPUm2MrCjbfOxWwXfTxmRFv1rJxiIrx37vx4MLGyVPPKPlexLKdHU0JEdC2C2NcPmRi/xYUbbh7tW4VlLJ7WFLRTjMS811DYDxgYwbrDYsSMNszGlZMcdNT+1ya13TMTbZx/ajrdyt4/+ocOQYBA1YQxYvJChBRBBhsLNzw7ZxOVIFEzl5CQ1gsFhLM4743PWRtMoKzbaRmhDBEAkuYGoktc24DbaDYfhxhEzEAIRGQa6gKysXHTYHa0tUU8VW6snkrHtqclI5u6QKNsh+vykFoWlT3N4MWA9W9uSNloxT+ocDtbvz+gU9UatJ8q3EKIHRkJ0oakEB2MVYyIp4o+gI9advFcVzNr607cYGMZZUun/SHet39yCi6w2msdBae1wi3OBzoq4bqSXbcSRtoLbpRe/i0o3JpYoiDhlEsUwinFuQ1fnf7PGwafrLWf2pD0xhoKpxg6uqrP9GG+Dl2nk1a84IF2iQ+VfD/7p/SBEX9jo73pJa0LCW0yCLTaWNe13bqyFes8pke6wWsimStlWW21XCxPlFblSztNmg7Txc4wbU+Pdm8gAEDwoa5qS7LWSteHZvQNvqa9znU/4UdbQXr6tnePzI7ZjiLHOIaymuKLRtOd6O5tKsaukdeM1laKTMgRNkkQkaHsGDmWUYChczn6KCP9U6qSbxJ7shJHXy2p+y1t1YdgPL7PIQkJpweHN15+1dfh3GS3l+UmgnFUHiNhWZXH+1O7ViZn4CZmt3V+17EDVcrV9UO03+E+QAAkBafgFEQBg5r+DqILBAEA0YOIjahotpjeO76NSJe3drJJX0WRI03Anrk2hwK7BKNatZa+VArkku0LF7PMqepgdK7f74loksEiFKpQ+yodZuPdLWb0VXDZHVOe0Vp8WQEgZur6MdEYjfsuYUCol9X+zSkiIJN6dOjsqFf1oBp8vZjPTT6UJgOEREERI+pfEVzuBpjaA/aqGBSRtlxmD732VXlY2iKQ8/H8RFWpQqPHbbdKzu2c08mEEKfz4pU7Vy3Nr72fzkQBECEf9RFRPQ6G43e85x0KsD0eJj6wKADMy6mZug2S9Pzunqo458aT/nh6TITDQRJqUgWBEJpxKgmZWzx6unU4jWl8WU/y1Ho6hZvYRh2M0icfGyPh0cH01rU7lp1Vc1+CgoJLOeEUFFTca9+9dvvGTSvqH7u4BwCUpPnOBVOY+dhPfuz9P/oBIpQgf/avXgh1IMLFtDi8cRx1aKK5CuDK7k3K+dyi3nzBGuKGimR9BU6BnAUIDVCbaFtnn4lqFWvk/6+9q4+xqrr2a62997nnzgzzyYAMzACiFCyRqvUjKa0SipBqIWAxtGJrB/tMmqa2CS9B/+I1r2kTUqNp7D+I6JM2oo0+Cgq8UhEkpFJrBgFFRFAYeMCMw1xm7uc5e6/3x97n3HuHQbAiz0vu+sMM1/tx1jl7r70+fuu3al2ghBYgCZxIJpqp2ZrGGi8KGkM80dXrmMx0YL0kKcXtM66RUgyms2/s6rKFYZkg4WGcdYrtRMwLLqUjaQt1joGNhubWhulfn6a1Zob6Ub7ne7Y+mpMDzl2NqAAAIMFu+nGiLhHXZCJnDYQURf+OXRAj0PUYsSmZb2fZwRnyEJ4pnHWz3aPOM2YAIRkQQYsoh5Ss9wBBerKmRg5rleQld5EK+Xx2MB0EWicbQdkzGgqmgIAFXSjkC/Fx5HmeNUmen5DCwks0ihyynQUmAGzWl9jx3WOR1ZuiijEVj+5QF3KFLCExofCUMQaJGOLzGUuw2i6CQjDGhMYgEnl+0ksoZpYqIUQCkUlozYE9w0iSl/BIIKJGh2gFDu0TQiRGz9XwlRJSCSQMs0E+W7DVMrZpvggIbT0SbUcaOhING6Ob2DEjgSgdb5nthCdg5YhsUDNy3kDMSBfPRorCM46qC37CR1aEWNAgyBHpGsOWOgpdtQ7ZoJSqtqGOATwlo1YWCE1gEAxzUikv4du+UM8TnodEJCWxHRxcMlIZjasAImI2X7B33BjjCadOATzrPXi+39hcD4RBIVBKWNRILh8abTn0kUOyB3h6IJPNhsAgBLXW1yGASOgaIexp2zpmZOuYVmDQOty/+1BYCInQhLpYdoi8yjhUYQNaa7so8nk2gfPF/KQXmyShnNvFbgRxaXWQOQqQSCIKdL6PAQZWUiVV0r7fiwYLhFoP9mWjeDawk3iUknWyxvOkznCqJ2u7AqRyP10sWQIwGzspwyIDrF7ZbIoZwhBIGywAhAyGPUM+CgY2UORIsfvIRegQ70FncUJtOKrYkSiGnDFHTTQwyw7FjF4il5TVYNg4FpQwGiFAJAgluGpDlMv3EBGlRzFLzGXMJQ3Je5QEbuUVxGIYgJ8XSVzsPhlCM/mZAM3noz6Ox14O/1lj1yyXUqATEQ6LXfqXy9XnAqAuQi8oIY0birYY8l7NZmi0guf+jmOAu4j7i2VAqjgkK2FJN8ZxHpZOmj7n4kpZKyli+S6mxrQjqNRa61DrUDOhpQ2yZxcKvNC6waFVfYbzF80v8EpJaFtMfpcW/jDiJnbLAxEJXKqRgQSQKA+wLf4SqGg1yNVVmI0AIEkkEBkBHQeh+0Cx1IiGy0jnygeX4ufde3BBjoqLCocvNfe21leNGfvV6TcGBS3SIQZgBxNlgrQ9JYTvfEKpgY3rjaqtqZdCImCA2ZwOkBHYttcIIYhESESAjGQAhC18BgEExhEiupwfQl2DaB2TQMS6Eb7vJ62X5Pu+AyIQGhM9UefnABF6Ku957EmUxpMsmTnpyVpfGsPKgwQlbCDpJwb92oCIQmVGNAo2jAS5ARjMKmO4fWJry7g6ow0gCNSgDSGl+wcPvdNtG5fy+YCFsXkSZsnArLXO5S3CgQItQsHMArRjXECEbA7ybgB3OgwYQBA1JevsFtes0Xdp6UK+ACEygCJKoIoAX7auiPkwBFNApFCHdb6wkPqzmTAXMCIQos4ULKGXp2jk+BEIEOZ0b2+/NQlyZIPtXctkwiPZbrsN/BG1rW1jACFZ4yvpMwMyEXuWxlioWgJlnUYN2n6k52TP0b1HbLH9q9+8IeEn7LY9OZAyRo8aM/Kem27URhPha9veHBhII5EJg/6eAURgA/UtNYmkz8xMcOpEHzMnkzVXtYyz44Pz0guEQAAiOXvebGu5+j/p7z7UTQJJ0D+27UmdGaCyJkY00WCo2PwhRhxvDEKQtQtFUy6gpbV2mE1opMVYClK+XwsAgQkGgpxtJk8kGgQJADQcBJy2p/JgLlso5K0pfPnFTYgYGs7ZVmQGk42dXYhHMCIZEo7iI1/QLkZmHwEEQ///5re+tNtdqy+AiIFtg2tRvzhzhAUAJoFt45sRUYe6bfyYKddfY5npB4JBm2g3iGE0P1IHxmgGgJpan4SwxtRLuLuB2mAUmuUiDjxgtJArbSBO62VTGgClglxGw+VBb0vlJWtqpNQ6l+FA2wPWpeLZlID73NqgqFfWonnLkY+uc7Z8cAifD9tGAqVCy/biBkHTMMMhhjgYiICOz9Z5WG7YBlqH20LMCdG1m6Ptx7aM5246DauETNYmdGhKa0ZGm1ymIJWE8zRhlo6kwCKNd0ndxLjQTMck1Y4+mS2SqOhWGJsvK7LZxDTK8dhvW/iL77yJl4ntvWQgBJkgBAxyOgxdsU+yi8KMMXkuOCIQQVJJQBBSFlH4HGPtCFFEWBhXOwvDMDOYEUraAqIlVNJah0ZrrYUUTc2NgQ4EkUooyggSxEbrUCOiG7HOZPMAYRCyYa00RaphMS6D+oZ6iEqBI5pq3eATQRfvaZe5TuUSz1wpHw8bBaqAgiQAhKzt7bUZeHRst0VPJC6nIsCZM2dd9Yu8KNNUMikv8u+Ii2wHRfZrtz5BhzxwJm2vJhhEE+0yP5GI3llM9jPmrUnKNvuIGAahzgWeEDbbRFgcQw9YXnGLJufY9gAhSuhZ4hAv9l7NMBlzowGADfH5AEpfROBWMk2YL0cjX1lN5wttIsVyg4YlcIQS7v2YwiD+b3FnDvuF+Nl0/EKKpFic+n1B5xwBIwo9KA6eK+aS+II/NCyeIx6swIZNCcX4cI+VI0r1EkbzskDVEr2wiVK2Rhtb2iP6nPeqZI/xZ7q9ZbobZm2M9dksOJY/91aJbUFElQilqTQcMhcpihkdXEEgSRJMAEA6MhglcxINMZiLiNDh8zaLX3qTxAZMACYAIEBlDw6HiGHmOMWL6IBq1pUu6dly/4ozO9pobbRhFmwIiUvxIAjMHGTzAKApJCTf9x2RDQFy7GRF5JY41EdCB9J1IYyrjLjMJZcSiGhtwkATcRgaHVgifUZEv8YzxpBAO/oIAPK5AgKQxKCgIc6PRbNRi9wsjDoAY+zcJLSZNMNgwhCicrS7NQzZdMYwSyFMo2NTN2g0lLg5EHtJzjSwsAPb0DW32e83oZu3FmN4GAbTaUQAAx4kamtqXLk6GghC8UlZ4pnW1tUQICJKJQcHB5kBhfFrfLBcF0zRAIcyc0bxhFgDoK2rh0p5QhjDfHbwrDYaCWtqfDYGiYK8zA+kyVGDog6ZmYmAQTGAYUrnMrZ7QdSKhHAkYcZmmAGEopr6WhJIRC1XNSlPIlHqkzPGGCzyOiIgEEE8z9r5U1FqGcvH9sWgbCzh/yQ3H9TmjaMjyD0UzufzGkMADHTIFigPXF9X11hXYzdFpi/jqvBFz2EYPv8SUIpNA1HZgVY+9TT2x+KB42U9ORwl+HMIiCakwb7c8cM9lic+qzN2JRuEMApjpVREgg1TMiltuQZcKwwA6DA02rnVRaB8fB1YnDbl6gACzzNZ8pKbJIQwh/l+DPLo16KoZWAE5IIJbA1IRBSlkpDAAIAQQhALYgQQgMTCYuSNMaHWDJwJMiEWDJsRnpcQnjEaHSm7AUSjdf+xXhvPJUZ4V7W1gWFK+qjsyG4kR9ADUqCnhGsooeicIEMUEoEgViSV4+S35JZsDIERwIAGs5lCqj8rBIWBGegPbItLXV1y7NUNJmQ1AnKcswsmfSIFzCQw1ZtjI4xGABCeVzzEXCsvDfYbYGbNhYCkEWyYNOUGBuzj9ISnhLRJ4OOHPi4U8p7nTWgebQ1tICAv3RpTBcctrwWEklytwA9IGEDQGjmUiBgEmA8GCAkRjJaO1o354KEPmNloM3LMyKtHTLB1qBgK7BlyX84cGAQArfnayZMsSWYmk9n91tvM3NLSeOPXp2ptELG3P5MraIwbawHYICEppWxmDbLGjhYVvmpsagSGQlDYe3Cv3WBXjx8thUTEwcH0u9rYBNDgQHYwFVhwZm3dSEDIhvzByaMW2z1l4oQxjSO1NgxwOgzsU042+pOarrHVbt9P5HM5RNz4X/+TTWcREQiVSrpl6xdYu9XoJy0VGebCbBDkLVY+bkzr/yRnzYSnVNL3rd3x/ZhSmRQKAAgMhjlt7e/p/t6YT5aEBIAw1LfdOHXC2NGh1kEQrn9lm73yMCqoIRaBi3HFDaCYDFVK4RB/D6PkIQBpHXusYa4QZVQIozjLaGN7sAZO2LnL4r2jp/6x9ZC1KQ1JR2iJaFgV7PsnXNfR2NIQhnqMP6K2XjCzQcgHWWuDMpl0NihYf7ChoSHigeJAMNiAO86uJAkBhBKUIODL4iWVOSEXWfPC4QdrDkXr4RD3Jk5JYhnYND6gebhoaxg36WKjyxLOdBhCFVDK3VM6iO2CX8jnBm7DfcrNcfqcUcd5qnSWYK+MkeuCdQxjbFRqDDt+PsTPzL6ExTgLXIct2qDG9htHFABcVvkrydPaPc8W7YXnjpeOOu8RbSXu80e+QzmJLjLoxqHL2qLnrcD/n2AJ4kQqV/MRstjRyZJiF9fxXuAwzb+AF+yTH4oovnyBGxIKJYwBKUkoYVOcrAgsMXTEEyqiyZ1CkOdJKWxfjQ5ZIiARCUVCohCkElIpaVgrT3oJz5gQgTwjjZGIiBotLhEYhMfkARgWnkAl7B6zZMnMoJTwPOm67pRDLQphvITwEkJ6LsnODEKSVK7bVnmCGYQUQhIJJIlksNQaIiEaQEISriXWEm4QlbumQwxiafaUwFaFGJkE2QSqra8Jsuw7bB1dIouRQwQwAoRyz18o5wdLIWREWyMVkzSAgErYqSkyICHdsiGBZBydL5JLzpBAIQksY6SJE7pueg8Yd2IzgFBCEiKiUITC1q3RgmUQUUgSxtFaWrdIKEGCYiIEIYWQgg2SFNIuEm2AhKvxKSFJWloCy0lqg3E7wpCIhCRAEDIC7xArJTwlQzIMoIIYE0gEtocZpRI6EKWkZYjDNjyVDO240Ek5bDKOSrHL59+etvmJgWPH53LYHxxW2aItwSEpvxI8tr1gYJZSSCVsWUGTy+jJUAiwt7do2uwMRwTQXBwkL4VAAOkJOg8sAy9tPnj9f69/4N/uHzm6yRgWwtjh1IBspHanVlikao/QtNTaPNreEANas6Wwxp7eM4UgQMTmpgZrs4VQycQIe6QWTEazRgBjOJ+K3F1hQDAwoBBRlITFwVuEFDEBlPTzGEEhEp49kzvVPUiEDFxXX2NLCUTgKZe9GhhI5/KBLUinTmej9l3hKckM5AOpKOkQ2jQNhgWdHQwi3tqS8jM72g0pHfjVH+GRRxYcGBPOU8nxmkql2BhCam5qijqzIV7MtsToFoeI6d8dWJ0DbQmIQ60H0mejU5qi2h2Ehbx1VryEV1OX5HK8kRSJiBEt6gsFkOSSQlrr/tRZAPCUbGiss3egEGhLwg0RHT0S5tK5bCptr7O+qZGEsMBrslVqNrEVVMKzeyIM9cBAJv6hiL0f7TQ3RJAJhyeuq631Pc86VAWNPLROj/lMVmuDAKe6e7S2FfQ4zQJsHPcPIipPRVGSjvpgi5snKOj46VCEHRLkDkUiUlIBQGh0EBbcfdMllafoTjY11CX9hO31OXXqEzePL0rllwHZSpSJGZqQhhq80vpg2RMsJaIs61xjRFQiESurI7o7FVfxkS2ROTPU1CWVJ5m5tr7GHjMcwSYRMNRaR6hKqVTRGYRSbhN739zO6jvZ/x+P/OdPf/rTL9Ykpc6mTnSfePfd95588slVq54KgiCqJn6aO2fnfLq3RRGfECJai0XWK3YtCxwTXaNNmLHbXRzjJM8HGhw2fogdBNuCEWcEARDwwPsHHnvssTVr1mgdRpaopNRva708THkRbQL0U1riohiTTWmDOp9buCgWPow5L/4s/hOHLuX4LynEh4cP/+Y3v1nz9NOxOvEIDtcNd2FcYPk+cX3OUTIYysa5xcogoZ3DHuUyzr14HLJ8SxUvXUPFCh3SsaNHV6xY8fSaNWEYRmZlmIuN+DFYSAHnxlE47CKJiyNQBqv41HXlelNL78Gw3cimOEQkHmaJiCdPnnzkkUeeeeaZS89BzJ/+IEvUHW7ak7HDpxHcH+eWYoufLray9/b0LFv2788++8zQu8TAbEaPGd3S0vLFBm4N9Q0N1zXkC/nGpoZJ10yEK0IMhM0tjVeMOiigvqHu6itFnWRNoqGpfvJXrrky1Kmpqamtrb366quvDHV6W1samuq/MvUrF/+RLySOteQVcKVIVZ0v9YFhTFWdK0kdsWLFikt+HYlEYvz48RMmTLgybqvnee3t7RMnXiFuhVKqvb39ijmHpZRXmDrjxo27YtQRQowdO3bSpEmfwYvn6qz1qlSlKl8aoeotqEpVqlI1SVWpSlWqcllM0ttvv/3ggw/ec889GzZsqNCb8uKLL3Z2di5atGjlypWZjJsF+PLLLy9atOhHP/rRvn37KlSv3//+9z9v+2EtAAAGs0lEQVT+8Y/7+voAYP369ffee+/999+/Z8+eilPkzTff7OzsnD9//pNPPmlREdu2bbvvvvsWL178xhtvVJYu+Xz+d7/73fe+973Ozs744nfs2HH//fffe++9r7/+ekVocezYsRUrVtx1111r1661r6TT6V/96lfz58//9a9/ncvl7IvPPffcggULfvKTn3z00Ufn/S6+pNLb2zt79uwnnnhi06ZNN99885tvvskVKE888cTGjRvfeuutxYsXP/bYY8y8e/fub3zjG5s2bXrqqadmzpyZSqUqTqnt27fffvvtM2bMOHXq1J49e2bMmLFhw4Y1a9bcfvvtfX19FaTI22+/PWfOnK1bt37wwQf//Oc/tdZHjhz55je/+cc//vHPf/7zLbfccvjw4QpS5/HHH1+wYEFXV5d9FidPnjx+/Pi3vvWtZ5999qWXXrr55psPHjz45dfi0KFDzz333NKlS5ctW2ZfefTRRxcvXvz3v/998eLFjz/+ODNv2bLljjvu2LZt28qVK+fPn5/P54f9qkvsJXV1dTU1NT300ENz58698847X3755Ur0Jn7+85/fddddN91006JFiw4ePAgAW7Zs+c53vjN37tylS5f6vr9jx47K0ujo0aPPPPPMsmXLGhoatNZbtmz59re/fffddz/wwAP19fWVchRbefrppydPnrx9+/YXXnihtbWViHbs2DFt2rQf/OAH99xzz7Rp01555ZUKUmdwcPCqq66aPn361772tUQigYi7du2aMmXKD3/4wwULFtxwww0bN2788msxadKkJUuW3HLLLbGLtH379uXLl996662//OUvt2/f3tfX9+qrr95333133HHHww8/3Nvbu3fv3ssRuJ06daq1tTWRSADAhAkTTp48WbkxbTqdXrt27axZs+yWHj9+vH19zJgx3d3dlRUarFmz5vvf//6tt95KREqpY8eOxeq0tbVVljpdXV07d+6cMGFCKpX6xS9+MTAwcOLEifb2dvt/Ozo6Tpw4UUHqLF269Pjx4zNnzly6dOm8efNGjRp15MiRcePGVaI6cQvx6dOnwzDs6OgAgKampiAITp8+3dfX19bWBgBKqebm5o8//njYL7nE6G0hRHxZYRjGSPmKk2w2u2zZskmTJi1cuHCIXlrrytJr165dzz//fHt7+1tvvXXkyJE//elPls6xQtVBxDlz5nR2dvb39z/wwAMHDhzwfX9wcLBCV92LL744evTolStX7t+/f9WqVfPmzfN9P51OV+jTie0AIoZhCJY0AtEObYzboYwx59PrEntJHR0d3d3dZ86cAYA9e/ZUKOIrk8ksX768paVl5cqVFns6derUrq4uAAiC4MiRI1OmTKkgdTo6Oh566KGenp6enp58Pp9Op6dMmWKz2lrrDz/8sLLUmTZtWpwGtUfu5MmT33vvvSAIAGD//v2TJ0+uIHU2b948e/bsyZMn33333clk8qOPPrruuuvef/99S8G+b9++a6+9toIskd0vY8eO9X3/nXfeAYCPP/44mUyOGzeuvb19//79ANDf39/T0zN16tThv+TSorebm5s3b968e/fuffv27dy589FHH21ubq44k/Tggw/+7W9/s4mkVCrV1tY2cuTI1atXnzp1av369QDws5/9rILOrubm5ttuu23GjBkTJ058/fXXf/vb306cOHH16tXHjx/fuHFjPp9/+OGHHSdBJcioUaOeeuqpTCazYcOGXC7X2dk5atSodevWvf/++2+88cbhw4eXL19eU1NTKer09vauW7eOmV966aWjR492dnZ2dHS88MIL77777q5duw4ePLh8+fK6urovuRapVGr9+vV/+ctfDhw4gIgdHR2e561atSqbza5evXrJkiXTp09vbGz8wx/+kEql1q1b19bWtmTJkmHJlS49erunp+fVV189e/bs3LlzK8jAl8ratWv7+vosjcHUqVPvvPNOpdSBAwe2bt2aTCYXLlzY1NRUiXqdOXNm586dM2fOrKurO3jw4F//+tdEIrFgwYJzu7G/5LJ3795t27a1tLTMmTNn5MiRAHD06NHNmzdrrefNmzd27NgK0sUY89prr+3fv3/EiBGzZs2yOb7u7u5NmzYFQfDd7343TpN9yZfW888/n8/nbYy2cOHCtra2LVu27N+///rrr581a5a1Pl1dXdu3b29ubl64cKEb4XkZTFJVqlKVqvzLUkVvV6UqVamapKpUpSpVqZqkqlSlKlWTVJWqVKUqVZNUlapUpWqSqlKVqlSlapKqUpWqVE1SVapSlapcavk/0WdDXjXDvewAAAAASUVORK5CYII"},"metadata":{"needs_background":"light"}} ], "source":[ "subsampled_image = image_array[::10, ::10, :]\n", "plt.imshow(subsampled_image)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: for an image of size m × n pixels, and a step size of d, write down the number of pixels the resulting sliced image will have.\nadvanced problem: what step size should we pick to obtain a result with a maximum of d pixels? try to write a Python function that returns this step size." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "# Transposing" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "An operation that you will frequently encounter in dealing with arrays is called **transpose**. Transpose is the\ntrickiest operation for many people to master, and this is because it exposes one of the flaws of current deep learning\nframeworks. This flaw is that they today's frameworks do not use **names** for axes, and instead store the axes in a\nfixed order that you as a programmer must keep track of yourself. If axes had names, then you as a programmer would not\nneed to think about the order of axes; any important array operations, like aggregations, slicings, etc, could be\nexpressed purely in terms of axes they affect. This would make array programs much easier to maintain, change, and\ndebug. And the **transpose** operation would simply not exist at all!" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Unfortunately, unnamed axes are still common, and so we will have to deal with them. The first problem is that many\noperations treat particular axes specially. For example, the *first* axis is often treated differently from the rest\n(many operations can \"thread\" over batches that are taken as the first dimension). The second problem is that operations\nthat *combine* two or more arrays require their axes to match: the first axis of the first array must match the first\naxis of the second array, etc. Because of this, you will often have to *switch* the order of axes in an array so that\ncertain axes end up in certain positions in the axis order." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Transposing matrices" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We'll start with the simplest example, which is that of matrices (2-arrays)." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "There are two ways we can order the axes of a 2-array: as rows, columns, or as columns, rows." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here we show square diagrams of the same underlying array, but with these two different orderings of their axes. The\nred, green and blue colors are placeholders for numbers -- we don't particular care about what the numbers are in this\nsection, instead we want to focus on how transpose changes the order of the axes." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We'll refer to the axis order below, where the vertical axis is first and horizontal access, as the **standard\norientation**. Notice that the diagram labeled C, R above is not in the standard orientation, but the second diagram R, C *is* in the standard orientation." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "However, we can bring the C, R diagram into\nstandard orientation by \"flipping\" the entire diagram around its diagonal -- to do this you are effectively rotating it\nin the $3^{\\textrm{rd}}$ dimension, like picking up a piece of paper and turning it face down. This has the effect of swapping the two\naxes of the diagram:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "By doing this we are just drawing this oriented square diagram in a different way -- we have not changing the contents\nof the array or the ordering of the axes at all." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "By standardizing the orientations, we can see that choosing a different axis order amounts to simply rotating the entire\ndiagram around its diagonal." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Transposing tetrices" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Let's repeat this exercise for an image array. We'll look at a very simple 3 × 3 image array, shown below:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"14itklmnmdixh" }, "outputs":[ {"output_type":"display_data","data":{"image/png":"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"},"metadata":{"needs_background":"light"}} ], "source":[ "cubic_array_r = np.array(\n", "[[0,0,0],\n", " [0,0,1],\n", " [0,1,1]])\n", " \n", "cubic_array_g = np.array(\n", "[[0,1,1],\n", " [0,0,1],\n", " [0,0,0]])\n", " \n", "cubic_array_b = np.array(\n", "[[1,1,0],\n", " [1,0,0],\n", " [0,0,0]])\n", " \n", "cubic_array = np.dstack((cubic_array_r, cubic_array_g, cubic_array_b))\n", "plt.imshow(cubic_array * 255)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This time we’re going to draw cube diabrams in which we label the axes with *numbers* indicating the position of that\naxis in a particular **axis order**. We'll call these **oriented cube diagrams**. We'll still color the axis labels to\nremind us what these axes represent in the image: rows (Y), columns (X), color channels (C)." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here's the oriented cube diagram for the standard image array order of rows, columns, color\nchannels:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "But there are other ways we could choose to order these axes. Let's show all 6 oriented cube diagrams for image arrays.\nThe top-left one is the standard one." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "These all depict the same underlying **image**, but each has a unique representation in numpy. For example, the bottom\nright array uses the axis ordering color channels (C), rows (R), columns (C). We construct this particular\norientation of array by providing the red, green, and blue channels as 3 × 3 matrices for the inner lists:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "np.array([\n", "[[0,1,0], # \\\n", " [0,1,0], # |-- red channel\n", " [0,1,0]], # / \n", " \n", "[[1,1,1], # \\\n", " [0,0,0], # |-- green channel\n", " [0,0,0]], # /\n", " \n", "[[0,0,0], # \\\n", " [0,0,0], # |-- blue channel\n", " [1,1,1]] # /\n", "])" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: explain to your neighbor the connection between the list of matrices above and the cube diagram in the bottom-right axis ordering." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: modify the code below to construct the array that uses axis ordering color channels (C), columns (C), rows (R)" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "np.array([\n", " ... ,\n", " ... ,\n", " ...\n", "])" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "## Transpose as rotations" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This geometric picture provides us for a way to understand what transposes actually **are**, conceptually." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here's how to do this: we adopt a particular *convention* about how to draw an oriented cube diagram, which is that we\nshould *always* orient the axes as follows:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We'll call a cube diagram shown in this way as being in ***standard orientation*****.**" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Not, to actually *put* an oriented cube diagram in standard orientation we might have to *rotate / reflect* a cube\ndiagram *in three dimensions!* For example, the oriented cube diagram for axis order columns\n(X), rows (Y), color channels (C) must be\nrotated as follows to put it in standard orientation:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Remember, these two oriented cube diagrams depict the **same** numpy array with the **same** axis order. The only\ndifference is that we changed our *perspective* so that the first, second, and third axes were in standard orientation.\nWe're only changing how we are *visualizing* this array." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here's how all of the 6 *axis orders* look when draw them in standard orientation:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Advanced remark: If you have a pure mathematics background, these 6 elements are the elements of the dihedral group of\norder 6, which are the isotropies of a triangle. The orientations of higher-order arrays correspond to isotropies of\nhigher-dimensional simplexes." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Transposing a row vector to a column vector:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Transposing a matrix:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "# Combining arrays" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Elementwise operations" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "If we have multiple arrays of the same shape, it is possible to combine them as if they were numbers. For example, we\ncan add two arrays, or multiply them, or subtract them. The way we do this is very straightforward: we simply add the\n*ordinary* numbers in the corresponding cells. This is called an **elementwise** operation, since it is matches\n**elements** of each array with each-other." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We'll illustrate this with two vectors. We'll think of these as *column vectors*. All this means is that we are thinking\nof the vector as being a **column** of numbers, meaning that each cell is in a different **row**. This *intepretation*\nisn't part of numpy, or part of the code at all, but it is a helpful interpretation for us as humans, since it allows us\nto draw the vector in two dimensions, in a **square diagram**:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here is the **numpy** code that creates these two vectors, which we'll name `r` (for red) and `b` (for blue). Run this\ncode:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "r = np.array([1, 2, 3, 4])\n", "b = np.array([10, 20, 30, 40])\n", "print(r.shape, b.shape)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Notice that both vectors have the same shape, which is a 1-tuple containing 4, since there is a single axis with 4 cells\nin it." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can **add** these two vectors by simply adding the numbers in the corresponding cells, as follows:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0kkeiy26rppxf" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([11, 22, 33, 44])"},"metadata":{},"execution_count":1} ], "source":[ "r = np.array([1, 2, 3, 4])\n", "b = np.array([10, 20, 30, 40])\n", "r + b" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to subtract 1/10 of the `b` vector from the `a` vector. What will you get?" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "r + b" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Combining matrices" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We can also combine two matrices. Let's again create an `rm` matrix and `bm` matrix corresponding to these:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "rm = np.array([[1, 2], [3, 4]])\n", "bm = np.array([[1, 0], [0, 1]])\n", "print(rm.shape, bm.shape)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Addition again works elementwise:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: Modify the code below to add the `rm` matrix to the `bm` matrix:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "r + b" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Broadcasting" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Interestingly, however, we can combine arrays that do *not* have exactly the same shape. This is easiest to explain\nvisually." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here's the basic concept, which we will shortly explain:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Notice the red matrix has both a **row** and **column** axis, but the blue vector only has a **row** axis. It is\n*missing* a column axis. So how do we match up the cells of the two arrays? The solution is simple: we treat the blue\narray as *unchanging* across these columns, so we can simply repeat the value it has in a given row -- these repeated\nvalues as shown above in green." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In other words, we have made the following change when evaluating the sum:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This kind of operation, in which we *fill in* missing axes by simply repeating the values of cells, is know\n**broadcasting**. Here's the broadcast operation depicted on its own, where we broadcast to create a new axis with size\n3, turning the vector into a matrix:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "But notice there is a *second* way we could broadcast a vector to form a matrix:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "If we use this second way, then the sum would come out differently:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "How are we to decide between these two possibilities, which we show again below?" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The answer is that we have to *tell* numpy whether we want to consider a **vector** as a **column vector** or a **row\nvector**. We do this by taking the 1-array, which has only 1 axis (\"rows\"), and inserting a *new* axis either before or\nafter the existing axis: There are two ways we can then do this:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "# Aggregating arrays" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We've seen that **transposing** retains the number of axes and cells of an array, but re-orders them. The operation of\n**slicing** *can* reduce the number of axes, depending on whether we select a single index (using a number like `1`) or\na subset of indices (using a range specification like `1:5`)." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "The next operation we'll consider is **aggregation**, which always reduces the number of axes." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Aggregation is the process of removing axes of an array by using an **aggregation function** that can turn multiple\nvalues into a single value. A very common and useful example of an aggregation function is `sum`, which takes a list of\nvalues and returns their sum. `sum` is built-in to Python:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1tkwd8y9vwku8" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"15"},"metadata":{},"execution_count":1} ], "source":[ "sum([1,2,3,4,5])" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Another useful example is `max`, which gives the largest out of all the values in the list:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1w31cprgynxd8" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"5"},"metadata":{},"execution_count":1} ], "source":[ "max([1,2,3,4,5])" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In general, all aggregation functions take a *collection* of inputs of some kind and produce a single output. But there\nare different ways to apply an aggregation function to an array." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "For example, let's take the following matrix:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We could sum together *all* values of this matrix, producing a single number:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1ejs5zqub74gd" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"52"},"metadata":{},"execution_count":1} ], "source":[ "matrix = np.array([[0, 1, 2, 3], [10, 11, 12, 13]])\n", "matrix.sum()" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here we highlight all the cells that are summed together to produce this value:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Summing across rows" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Alternatively, we could \"sum across rows\" -- this is the operation of summing the contents of each *column* of the\nmatrix. There are 4 columns so there will be 4 cells in the result of this summation:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1fb485l6enkg2" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([10, 12, 14, 16])"},"metadata":{},"execution_count":1} ], "source":[ "matrix.sum(axis=0)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here is the diagram of this operation:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "An alternative way to think about this is that we are taking the elementwise **sum** of two **row vectors**. There are\ntwo rows so we are summing two vectors, each of size 4:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Notice that once we have \"summed along rows\" the **row** axis is *gone* from the result." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Summing across columns" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Secondly, we could \"sum across columns\" -- which sums together the contents of each *row* of the matrix. There are 2\nrows so there will be 2 cells in the result:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"0intzykv3cbrp" }, "outputs":[ {"output_type":"execute_result","data":{"text/plain":"array([ 6, 46])"},"metadata":{},"execution_count":1} ], "source":[ "matrix.sum(axis=1)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Here is the diagram of this operation:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Again, we can also see this as summing four column vectors elementwise:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "### Collecting and applying" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "How should we think about these operations in a way that generalizes to higher order arrays?" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In each of these cases, we are forming **collections** of cells, then feeding each collection to the aggregation\nfunction `sum`. The function `sum` is run once for each such collection, and produces a result that goes in a cell of\nthe new array." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "This suggests a general way to conceptualize aggregation: an aggregation consists of **collect** step and an **apply**\nstep." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In the **collect** step, we form make a new array whose cells correspond to *collections* of cells from the original\narray. This **collected** array will always have a shape with fewer axes than the original array -- those axes we\ncollect are now \"within\" each cell." ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In this example, we collect *across* rows / *within* columns, so the resulting collected array doesn't have a **rows**\naxis:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "In the **apply** step, we apply the chosen aggregation function (`sum`) to the collected values in each cell, and obtain\nan array of the *same* shape:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Let's see this in action for the other two summations:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "Notice an important, although obvious, fact: we first sum rows and then columns, or first columns and then rows, we\nstill get the total *scalar* sum:" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "
" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "We'll illustrate this fact by taking the original array, and summing its columns to produce a new array, and then\nsumming the rows of *that* array:" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "summed = matrix.sum(axis=1)\n", "print(\"first sum cols: \", summed)\n", "\n", "summed = summed.sum(axis=0)\n", "print(\"then sum rows: \", summed)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "**Task**: modify the following code to do this sum the other way around: first summing the rows and *then* summing the columns of that result. Hint: the obvious change won't work. Why not?" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "summed = matrix.sum(axis=0)\n", "print(\"first sum rows: \", summed)\n", "\n", "summed = summed.sum(axis=1)\n", "print(\"then sum cols: \", summed)" ] }, { "cell_type":"markdown", "metadata":{}, "source":[ "# Feedback" ] }, { "cell_type":"code", "execution_count":null, "metadata":{ "id":"1lvkf123i6qe6" }, "outputs":[], "source":[ "# @title Generate Feedback Form. (Run Cell)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ] } ], "metadata":{ "kernelspec":{ "display_name":"Python 3.8.5 ('base')", "language":"python", "name":"python3" }, "language_info":{ "name":"python", "version":"3.8.5" } }, "nbformat":4, "nbformat_minor":0 } ================================================ FILE: practicals/attention_and_transformers.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "id": "m2s4kN_QPQVe" }, "source": [ "# **Paying Attention to Transformers**" ] }, { "cell_type": "markdown", "metadata": { "id": "Z0RWJRsNiFHX" }, "source": [ "\n", "\n", "\"Open\n", "\n", "© Deep Learning Indaba 2022. Apache License 2.0.\n", "\n", "**Authors:** Ruan van der Merwe, Marianne Monteiro\n", "\n", "**Reviewers:** Sebastian Ruder, Tom Makkink, Jan Buys\n", "\n", "**Introduction:** \n", "\n", "The transformer architecture, introduced in Vaswani et al. 2017's paper [Attention is All You Need](https://arxiv.org/abs/1706.03762?amp=1), has significantly impacted the deep learning field. It has arguably become the de-facto architecture for complex Natural Language Processing (NLP) tasks. It can also be applied in various domains reaching state-of-the-art performance, including computer vision and reinforcement learning.\n", "\n", "Transformers, as the title of the original paper implies, are almost entirely based on a concept known as attention. Attention allows models to \"focus\" on different parts of an input; while considering the entire context of the input versus an RNN, that operates on the data sequentially.\n", "\n", "In this practical, we will introduce attention in greater detail and build the entire transformer architecture block by block to see why it is such a robust and powerful architecture.\n", "\n", "**Topics:** \n", "\n", "Content: `Attention mechanisms, Transformers, NLP` \n", "Level: `Advanced`\n", "\n", "\n", "**Aims/Learning Objectives:**\n", "\n", "- Learn how different attention mechanisms can be implemented.\n", "- Learn and create the basic building blocks from scratch for the most common transformer architectures.\n", "- Learn how to train a sequence-sequence model.\n", "- Learn how to use the [Hugging Face](https://huggingface.co/) library for quicker development cycles and build a chatbot intent model.\n", "\n", "**Prerequisites:**\n", "\n", "- Basic understanding of Jax and Haiku\n", "- Basic understanding of linear algebra\n", "- RNN based sequence-sequence models\n", "- Word2Vec\n", "\n", "**Outline:** \n", "\n", ">[Installation and Imports](#scrollTo=6EqhIg1odqg0)\n", "\n", ">[Attention](#scrollTo=-ZUp8i37dFbU)\n", "\n", ">>[Sequence to sequence attenion mechanisms](#scrollTo=ii__Bc27epiJ)\n", "\n", ">>[Self-attention](#scrollTo=7RLO7ZHe3spv)\n", "\n", ">>[Multihead Attention](#scrollTo=7SrT6swYgCm9)\n", "\n", ">[Transformers](#scrollTo=e9NW58_3hAg2)\n", "\n", ">>[High level overview](#scrollTo=6HxXjYTFXaal)\n", "\n", ">>[Tokenisation](#scrollTo=sq0kPkVphbFG)\n", "\n", ">>[Positional encodings](#scrollTo=Ln7esAMHhdaz)\n", "\n", ">>[Feed Forwad block](#scrollTo=3l8mzIOeXbrA)\n", "\n", ">>[Add and Norm](#scrollTo=GQONPcKfXbfj)\n", "\n", ">>[Building the Encoder](#scrollTo=AIHHQTrcXb1b)\n", "\n", ">>[Building the Decoder](#scrollTo=RxSD1tLIX4CJ)\n", "\n", ">>[Putting it all together](#scrollTo=Ts-WLr0zY26X)\n", "\n", ">>[Training our model to invert sentence](#scrollTo=_bqOml7HYNmm)\n", "\n", ">[Hugging Face](#scrollTo=rectkTs9iFHg)\n", "\n", ">>[Datasets Package - Beginner](#scrollTo=Wq_pX3XTefu3)\n", "\n", ">>[Transformers Package](#scrollTo=iL4j1JZse8wi)\n", "\n", ">>[Training a chatbot intent model - Advanced](#scrollTo=QSJ-Fh49fU-9)\n", "\n", ">[Conclusion](#scrollTo=fV3YG7QOZD-B)\n", "\n", ">[Feedback](#scrollTo=o1ndpYE50BpG)\n", "\n", "\n", "\n", "\n", "**Before you start:**\n", "\n", "For this practical, you will need to use a TPU/GPU to speed up training. To do this, go to the \"Runtime\" menu in Colab, select \"Change runtime type\" and then in the popup menu, choose \"TPU\"/\"GPU\" in the \"Hardware accelerator\" box." ] }, { "cell_type": "markdown", "metadata": { "id": "6EqhIg1odqg0" }, "source": [ "## Installation and Imports" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4boGA9rYdt9l" }, "outputs": [], "source": [ "## Install and import anything required. Capture hides the output from the cell.\n", "# @title Install and import required packages. (Run Cell)\n", "\n", "!pip install git+https://github.com/deepmind/dm-haiku flax optax\n", "!pip install transformers==4.12.1 datasets\n", "!pip install seaborn umap-learn\n", "!pip install livelossplot\n", "\n", "import os\n", "import math\n", "import urllib.request\n", "\n", "# https://stackoverflow.com/questions/68340858/in-google-colab-is-there-a-programing-way-to-check-which-runtime-like-gpu-or-tpu\n", "if int(os.environ[\"COLAB_GPU\"]) > 0:\n", " print(\"a GPU is connected.\")\n", "elif \"COLAB_TPU_ADDR\" in os.environ and os.environ[\"COLAB_TPU_ADDR\"]:\n", " print(\"A TPU is connected.\")\n", " import jax.tools.colab_tpu\n", "\n", " jax.tools.colab_tpu.setup_tpu()\n", "else:\n", " print(\"Only CPU accelerator is connected.\")\n", "\n", "import jax\n", "import jax.numpy as jnp\n", "from jax import grad, jit, vmap\n", "\n", "import haiku as hk\n", "import transformers\n", "from transformers import pipeline, AutoTokenizer, AutoModel\n", "import datasets\n", "\n", "import optax\n", "\n", "from PIL import Image\n", "from livelossplot import PlotLosses\n", "\n", "\n", "import torch\n", "import torchvision\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import seaborn as sns\n", "\n", "import itertools\n", "import random\n", "\n", "# download images used in notebook\n", "urllib.request.urlretrieve(\n", " \"https://images.unsplash.com/photo-1529778873920-4da4926a72c2?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxzZWFyY2h8MXx8Y3V0ZSUyMGNhdHxlbnwwfHwwfHw%3D&w=1000&q=80\",\n", " \"cat.png\",\n", ")\n", "\n", "\n", "import gensim\n", "from nltk.data import find\n", "import nltk\n", "\n", "nltk.download(\"word2vec_sample\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "-9X10jhocGaS" }, "outputs": [], "source": [ "# @title Helper Functions. (Run Cell)\n", "\n", "\n", "def plot_position_encodings(P, max_tokens, d_model):\n", " \"\"\"Function that takes in a position encoding matrix and plots it.\"\"\"\n", "\n", " plt.figure(figsize=(20, np.min([8, max_tokens])))\n", " im = plt.imshow(P, aspect=\"auto\", cmap=\"Blues_r\")\n", " plt.colorbar(im, cmap=\"blue\")\n", "\n", " if d_model <= 64:\n", " plt.xticks(range(d_model))\n", " if max_tokens <= 32:\n", " plt.yticks(range(max_tokens))\n", " plt.xlabel(\"Embedding index\")\n", " plt.ylabel(\"Position index\")\n", " plt.show()\n", "\n", "\n", "def plot_image_patches(patches):\n", " \"\"\"Function that takes in a list of patches and plots them.\"\"\"\n", " axes = []\n", " fig = plt.figure(figsize=(25, 25))\n", " for a in range(patches.shape[1]):\n", " axes.append(fig.add_subplot(1, patches.shape[1], a + 1))\n", " plt.imshow(patches[0][a])\n", " fig.tight_layout()\n", " plt.show()\n", "\n", "\n", "def plot_projected_embeddings(embeddings, labels):\n", " \"\"\"Function that takes in a list of embeddings projects them onto a 2D space and plots them using UMAP.\"\"\"\n", " import umap\n", " import seaborn as sns\n", "\n", " projected_embeddings = umap.UMAP().fit_transform(embeddings)\n", "\n", " plt.figure(figsize=(15, 8))\n", " plt.title(\"Projected text embeddings\")\n", " sns.scatterplot(\n", " x=projected_embeddings[:, 0], y=projected_embeddings[:, 1], hue=labels\n", " )\n", " plt.show()\n", "\n", "\n", "def get_word2vec_embedding(words):\n", " \"\"\"\n", " Function that takes in a list of words and returns a list of their embeddings,\n", " based on a pretrained word2vec encoder.\n", " \"\"\"\n", " word2vec_sample = str(find(\"models/word2vec_sample/pruned.word2vec.txt\"))\n", " model = gensim.models.KeyedVectors.load_word2vec_format(\n", " word2vec_sample, binary=False\n", " )\n", "\n", " output = []\n", " words_pass = []\n", " for word in words:\n", " try:\n", " output.append(jnp.array(model.word_vec(word)))\n", " words_pass.append(word)\n", " except:\n", " pass\n", "\n", " embeddings = jnp.array(output)\n", " del model # free up space again\n", " return embeddings, words_pass\n", "\n", "\n", "def plot_attention_weight_matrix(weight_matrix, x_ticks, y_ticks):\n", " \"\"\"Function that takes in a weight matrix and plots it with custom axis ticks\"\"\"\n", " plt.figure(figsize=(15, 7))\n", " ax = sns.heatmap(weight_matrix, cmap=\"Blues\")\n", " plt.xticks(np.arange(weight_matrix.shape[1]) + 0.5, x_ticks)\n", " plt.yticks(np.arange(weight_matrix.shape[0]) + 0.5, y_ticks)\n", " plt.title(\"Attention matrix\")\n", " plt.xlabel(\"Attention score\")\n", " plt.show()\n", "\n", "\n", "def remove_punctuation(text):\n", " \"\"\"Function that takes in a string and removes all punctuation.\"\"\"\n", " import re\n", "\n", " text = re.sub(r\"[^\\w\\s]\", \"\", text)\n", " return text" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "rfwoGkW3cLuk" }, "outputs": [], "source": [ "# @title Check what device you are using (Run Cell)\n", "print(f\"Num devices: {jax.device_count()}\")\n", "print(f\" Devices: {jax.devices()}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "-ZUp8i37dFbU" }, "source": [ "## **Attention**" ] }, { "cell_type": "markdown", "metadata": { "id": "X5MqDkvKiFHb" }, "source": [ "In order to understand the transformer architecture, one must understand the concept of attention and how it is implemented in deep learning. The attention mechanism is inspired by how humans would look at an image or read a sentence. \n", "\n", "Let us take the image of the dog in human clothes below (image and example [source](https://lilianweng.github.io/posts/2018-06-24-attention/)). When paying *attention* to the red blocks of pixels, we will say that the yellow block of pointy ears is something we expected (correlated) but that the grey blocks of human clothes are unexpected for us (uncorrelated). This is *based on what we have seen in the past* when looking at pictures of dogs, specifically one of a Shiba Inu. \n", "\n", "\"drawing\"\n", "\n", "Assume we want to identify the dog breed in this image. When we look at the red pixels, we tend to pay more *attention* to relevant pixels that are more similar or relevant to them, which could be the ones in the yellow box. We almost completely remove the snow in the background and the human clothing for this task. However, when we begin looking at the background in an attempt to identify what is in it, we will fade out the dog pixels because they are irrelevant to the current task." ] }, { "cell_type": "markdown", "metadata": { "id": "SAnfB8-JsdYA" }, "source": [ "The same thing happens when we read. In order to understand the entire sentence, we will learn to correlate and *attend to* certain words based on the context of the entire sentence.\n", "\n", "\"drawing\"\n", "\n", " For instance, in the first sentence in the image above, when looking at the word \"coding\", we pay more attention to the word \"Apple\" and \"computer\" because we know that when we speak about coding, \"Apple\" is actually referring to the company. However, in the second sentence, we realise we should not consider \" apple \" when looking at \"code\" because given the context of the rest of the sentence, we know that this apple is referring to an actual apple and not a computer.\n", "\n", "We can build better models by allowing by building mechanisms that mimic attention. It will enable our models to learn better representations of our input data by contextualising what it knows about some parts of the input based on other parts. In the following sections, we will delve deeper into the mechanisms that enable us to train our deep learning models to attend to input data in the context of other input data." ] }, { "cell_type": "markdown", "metadata": { "id": "ii__Bc27epiJ" }, "source": [ "### Sequence to sequence attenion mechanisms - `Intermediate`\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "MWXE-pm0hhhX" }, "source": [ "The first attention mechanisms were used in sequence-to-sequence models. These models were usually RNN encoder and decoder structures. The input sequence was processed sequentially by an RNN, encoding the sequence in a single context vector, which is then fed into another RNN that generates a new sequence. Below is an example of this ([source](https://lilianweng.github.io/posts/2018-06-24-attention/)).\n", "\n", "\n", "\"drawing\"\n", "\n", "Due to there only being one context vector, it was often found that for longer input sequences, information gets lost due to the inability of the encoders to remember longer sequences. The attention mechanism introduced in [Bahdanau et al., 2015](https://arxiv.org/pdf/1409.0473.pdf) was proposed to solve this.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "knytnRDG62Bb" }, "source": [ "Here, instead of relying on one static context vector, which is also only used once in the decoding process, let us provide information on the entire input sequence at every decoding step using a dynamic context vector. By doing this, the decoder can access a larger \"bank\" of memory and attend to the input's required information based on the current decoder RNN output state, $s_t$. This is shown below.\n", "\n", "\"drawing\"\n", "\n", "In deep learning, attention can be interpreted as a vector of \"importance.\" To predict or infer one element, such as a pixel in an image or a word in a sentence, we estimate how strongly it is correlated with, or \"attends to,\" other elements using the attention vector/weights. These attention weights are then used to generate a new weighted sum of the remaining elements, which represents the target [(source)](https://lilianweng.github.io/posts/2018-06-24-attention/).\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "tyBuSnVj4__6" }, "source": [ "This, usually, consists of two steps for each decoding step $t$: \n", "\n", "1. Calculate the score (importance) for each $h_n$, given $s_{t-1}$ and generate an attention vector, $w_{n}$. \n", " - $\\text{score} = a(s_{t−1}, h_{n})$, where $a$ can be any differentiable function\n", " - $w_{n} = \\frac{\\exp \\left\\{a\\left(s_{t-1}, h_{n}\\right)\\right\\}}{\\sum_{j=1}^{N} \\exp \\left\\{a\\left(s_{t-1}, h_{j}\\right)\\right\\}}$, where we use the softmax function to generate relative attention weights\n", "2. Generate the final context vector, $c_t$\n", " - $c_t=\\sum_{n=1}^{N} w_n h_{n}$ \n", "\n", "The final state fed into the RNN to generate $s_{t+1}$, is given below, where $f$ can again be any combination method. \n", "\n", "$s_{t+1} = f\\left ( c_t, s_t \\right)$ \n", "\n", "In Bahdanau et al., 2015, $f$ was a learned feedforward layer taking in the concatenated vector $[c_t; s_t]$, with $a(s_{t−1}, h_{n})$ being the dot product. Next, let us build up this attention schema." ] }, { "cell_type": "markdown", "metadata": { "id": "bP5aFhzZQ00Y" }, "source": [ "In dot product attention, the score is given by\n", "\n", "$a(s_{t-1}, h_n)=s_{t-1}^\\top h_n$\n", "\n", "**Code task**: Complete the dot product attention function below." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1v3EhnW9THCW" }, "outputs": [], "source": [ "def dot_product_attention(hidden_states, previous_state):\n", " \"\"\"\n", " Calculate the dot product between the hidden states and previous states.\n", "\n", " Args:\n", " hidden_states: A tensor with shape [T_hidden, dm]\n", " previous_state: A tensor with shape [T_previous, dm]\n", " \"\"\"\n", "\n", " scores = # FINISH ME \n", " w_n = # FINSIH ME \n", " c_t = jnp.matmul(w_n, hidden_states)\n", "\n", " return w_n, c_t" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "qzChSK0emmY4" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "\n", "key = jax.random.PRNGKey(42)\n", "x = jax.random.normal(key, [2, 2])\n", "w_n, c_t = dot_product_attention(x, x)\n", "\n", "w_n_correct = jnp.array([[0.9567678, 0.04323225], [0.00121029, 0.99878967]])\n", "c_t_correct = jnp.array([[0.11144122, 0.95290256], [-1.5571996, -1.5321486]])\n", "\n", "assert jnp.allclose(w_n_correct, w_n), \"w_n is not calculated correctly\"\n", "assert jnp.allclose(c_t_correct, c_t), \"c_t is not calculated correctly\"\n", "\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "APwzi2xmY8Qe" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "def dot_product_attention(hidden_states, previous_state):\n", "\n", " # [T,d]*[d,N] -> [T,N]\n", " scores = jnp.matmul(previous_state, hidden_states.T)\n", " w_n = jax.nn.softmax(scores)\n", "\n", " # [T,N]*[N,d] -> [T,d]\n", " c_t = jnp.matmul(w_n, hidden_states)\n", "\n", " return w_n, c_t" ] }, { "cell_type": "markdown", "metadata": { "id": "k_sdxOrgawet" }, "source": [ "In order to show how the dot product can produce attention weights that make sense, let us use pretrained [word2vec](https://jalammar.github.io/illustrated-word2vec/) embeddings. These word2vec embeddings are generated by an encoder network that was trained to generate similar embeddings for words with similar meanings. \n", "\n", "Even though we are not processing something sequentially that contains context, the attention matrix should indicate which words are correlated—and would thus attend to each other.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "kkGoImvQdX2H" }, "outputs": [], "source": [ "# when changing these words, note that if the word is not in the original\n", "# training corpus it will not be shown in the weight matrix plot.\n", "words = [\"king\", \"queen\", \"royalty\", \"food\", \"apple\", \"pear\", \"computers\"]\n", "word_embeddings, words = get_word2vec_embedding(words)\n", "weights, _ = dot_product_attention(word_embeddings, word_embeddings)\n", "plot_attention_weight_matrix(weights, words, words)" ] }, { "cell_type": "markdown", "metadata": { "id": "fUKsSUr3ql7F" }, "source": [ "Looking at the matrix, assuming the function was implemented correctly, we can see which words have similar meanings. The \"royal\" group of words have higher attention scores with each other than the \"food\" words, which all attend to one another. We also see that \"computers\" have very low attention scores for all of them, which shows that they are neither very related to \"royal\" or \"food\" words. \n", "\n", "**Group task:** \n", " - Play with the word selections above. See if you can find word combinations whose attention values seem counter-intuitive. Think of possible explanations. Which sense of a word did the attention scores capture? \n", " - Ask your friend if they found examples." ] }, { "cell_type": "markdown", "metadata": { "id": "ENocLBe1YJMN" }, "source": [ "Dot product is only one of the ways to implement the scoring function for attention mechanisms, there is a more extensive list in this [blog](https://lilianweng.github.io/posts/2018-06-24-attention/#summary) post by Dr Lilian Weng. " ] }, { "cell_type": "markdown", "metadata": { "id": "dUkb7CA30E8q" }, "source": [ "More resources:\n", "\n", "[A basic encoder-decoder model for machine translation](https://www.youtube.com/watch?v=gHk2IWivt_8&list=PLmZlBIcArwhPHmHzyM_cZJQ8_v5paQJTV&index=1) \n", "\n", "[Training and loss for encoder-decoder models](https://www.youtube.com/watch?v=aBZUTuT1Izs&list=PLmZlBIcArwhPHmHzyM_cZJQ8_v5paQJTV&index=2)\n", "\n", "[Basic attention](https://www.youtube.com/watch?v=BSSoEtv5jvQ&list=PLmZlBIcArwhPHmHzyM_cZJQ8_v5paQJTV&index=6)" ] }, { "cell_type": "markdown", "metadata": { "id": "x22cVV00c9ZK" }, "source": [ "### Self-attention to Multihead Attention- `Intermediate`\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "NnfU62CY4PmW" }, "source": [ "Self-attention and multi-head attention (MHA) are the core building blocks for the transformer architecture. We will build up the intuition and implementation here in detail. Then in the **Transformers** section, you will see how this mechanism is utilised to build an attention only sequence-to-sequence model.\n", "\n", "\n", "Going forward in this section, we will represent a sentence by splitting it up into a list of words, then using the word2vec model from above to encode each word. In the transformers section, we will dive deeper into how we transform an input into a sequence of vectors." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "xo1zsFH969Tf" }, "outputs": [], "source": [ "def embed_sentence(sentence):\n", " # Embed a sentence using word2vec; for example use cases only.\n", " sentence = remove_punctuation(sentence)\n", " words = sentence.split()\n", " word_vector_sequence, words = get_word2vec_embedding(words)\n", " return jnp.expand_dims(word_vector_sequence, axis=0), words" ] }, { "cell_type": "markdown", "metadata": { "id": "7RLO7ZHe3spv" }, "source": [ "#### Self-attention" ] }, { "cell_type": "markdown", "metadata": { "id": "NeDD9MdEho7D" }, "source": [ "Self-attention is an attention mechanism where each vector of a given input sequence attends to the entire sequence. To gain an intuition for why self-attention is important, let us think about the following sentence (example taken from [source](https://jalammar.github.io/illustrated-transformer/)):\n", "\n", "`\"The animal didn't cross the street because it was too tired.\"`\n", "\n", "A simple question about this sentence is what the word \"it\" refers to? Even though it might look simple, it can be tough for an algorithm to learn this. This is where self-attention comes in, as it can learn an attention matrix for the word \"it\" where a large weight is assigned to the word \"animal\".\n", "\n", "Self-attention also allows the model to learn how to interpret words with the same embeddings, such as apple, which can be a company or food, depending on the context. This is very similar to the hidden state found within an RNN, but this process, as you will see, allows the model to attend over the entire sequence in parallel, allowing longer sequences to be utilised. \n", "\n", "Self-attention consists of three concepts:\n", "\n", "- Queries, keys and values\n", "- Scaled dot product attention\n", "- Masks" ] }, { "cell_type": "markdown", "metadata": { "id": "R9SFONkT5Ds3" }, "source": [ "##### **Queries, keys and values**" ] }, { "cell_type": "markdown", "metadata": { "id": "uVISm9pK5-FR" }, "source": [ "Typically all attention mechanisms can be written in terms of `key-value` pairs and `queries` to calculate the attention matrix and new context vector. \n", "\n", "To gain intuition, one can interpret the `query` vector as containing the information we are interested in, which is used to determine the `values` we should attend to, based on the similarity between the `keys` (which are paired with the `values`) and the `query`. Thus the similarity between the `queries` and `keys` gives us our attention score, where that score then determines the attention put in conjunction with the `values`. Or as [Lena Voita](https://lena-voita.github.io/nlp_course/seq2seq_and_attention.html) puts it:\n", "\n", "- Query: asking for information\n", "- Key: saying that it has some information\n", "- Value: giving the information\n", "\n", "In transformer architectures, we use learnable weights matrices, represented as $W_Q,W_K,W_V$, to project each sequence vector to unique $q$, $k$, and $v$ vectors. \n", "\n", "\"drawing\"\n", "\n", "You will notice that the vectors $q,k,v$ are smaller in size than the input vectors. This will be covered at a later stage, but just know that it is a design choice for transformers and not required at all to work.\n", "\n", "This process can also be parallelised, as the input sequence can be represented as a matrix $X$, which can be transformed into query, key, and value matrices $Q$, $K$, and $V$ respectively:\n", "\n", "$Q=W_QX \\\\ K=W_KX \\\\ V=W_VX$" ] }, { "cell_type": "markdown", "metadata": { "id": "GqPxQdvjOQZN" }, "source": [ "**Code Task**: Code up a Haiku module that creates three linear layers such that an input can be projected down to `output_size` in separate matrices $Q,K,V$. Hint: Use`hk.Linear`" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "CeSPp3cmJhLd" }, "outputs": [], "source": [ "class SequenceToQKV(hk.Module):\n", "\n", " '''\n", " Project a sequence of embeddings to query, key and value matrices.\n", "\n", " Args:\n", " output_size: The embedding dimension for the Q,K,V matrices.\n", " '''\n", "\n", " def __init__(self, output_size):\n", " \n", " super().__init__()\n", "\n", " self.output_size = output_size\n", "\n", " def __call__(self, X):\n", " '''\n", " Project X to Q,K,V matrices.\n", "\n", " Args:\n", " X: Sequence of embeddings with shape [B,T,d], where T is sequence length.\n", " Returns: \n", " Q,K,V: The three projected matrices with shape [B,T,output_size]\n", " '''\n", "\n", " initializer = hk.initializers.VarianceScaling(0.5)\n", " \n", " # this can also be one layer, how do you think you would do it?\n", " q_layer = # FINISH ME\n", " k_layer = # FINISH ME\n", " v_layer = # FINISH ME\n", "\n", " Q = q_layer(X)\n", " K = k_layer(X)\n", " V = v_layer(X)\n", "\n", " return Q, K, V" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "H921UuRSmuD1" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "def x_to_qkv(sequences):\n", " qkv_transforms = SequenceToQKV(2)\n", " return qkv_transforms(sequences)\n", "\n", "\n", "x_to_qkv = hk.transform(x_to_qkv)\n", "\n", "# initialise model\n", "key = jax.random.PRNGKey(42)\n", "x = jax.random.normal(key, [1, 1, 1])\n", "params = x_to_qkv.init(key, x)\n", "Q, K, V = x_to_qkv.apply(params, key, x)\n", "\n", "Q_correct = jnp.array([[[-0.22509536, 0.03467613]]])\n", "K_correct = jnp.array([[[-0.01319892, 0.17290935]]])\n", "V_correct = jnp.array([[[-0.07143524, -0.01425235]]])\n", "\n", "assert jnp.allclose(Q_correct, Q), \"Q is not calculated correctly\"\n", "assert jnp.allclose(K_correct, K), \"K is not calculated correctly\"\n", "assert jnp.allclose(V_correct, V), \"V is not calculated correctly\"\n", "\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "qoII_QovZCkJ" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "\n", "\n", "class SequenceToQKV(hk.Module):\n", " def __init__(self, output_size):\n", " super().__init__()\n", "\n", " self.output_size = output_size\n", "\n", " def __call__(self, X):\n", " initializer = hk.initializers.VarianceScaling(0.5)\n", "\n", " # this can also be one layer, how do you think you would do it?\n", " q_layer = hk.Linear(self.output_size, w_init=initializer)\n", " k_layer = hk.Linear(self.output_size, w_init=initializer)\n", " v_layer = hk.Linear(self.output_size, w_init=initializer)\n", "\n", " Q = q_layer(X)\n", " K = k_layer(X)\n", " V = v_layer(X)\n", "\n", " return Q, K, V" ] }, { "cell_type": "markdown", "metadata": { "id": "HvbKqrRniVDa" }, "source": [ "##### **Scaled dot product attention**\n" ] }, { "cell_type": "markdown", "metadata": { "id": "kpWykKCgGrdR" }, "source": [ "Now that we have our `query`, `key` and `value` matrices, it is time to calculate the attention matrix. Remember, in attention mechanisms; we must first find a score for each sequence vector and then use these scores to create a new context vector. We do this in self-attention using scaled dot product attention with the formula below. \n", "\n", "$\\operatorname{Attention}(Q, K, V)=\\operatorname{softmax}\\left(\\frac{Q K^{T}}{\\sqrt{d_{k}}}\\right) V$\n", "\n", "What happens here is similar to what we did in the dot product attention in the previous section, just applying the mechanism to the sequence itself. For each element in the sequence, we calculate the attention weight matrix between $q_i$ and $K$. We then multiply $V$ by each weight and finally sum all weighted vectors $v_{weighted}$ together to form a new representation for $q_i$. By doing this, we are essentially drowning out irrelevant vectors and bringing up important vectors in the sequence when our focus is on $q_1$.\n", "\n", "$QK^\\top$ is scaled by the square root of the dimension of the vectors, $\\sqrt{d_k}$, to ensure more stable gradients during training. \n" ] }, { "cell_type": "markdown", "metadata": { "id": "kRO-fhwmodb6" }, "source": [ "**Code Task:** Code up the scaled dot product attention function. This does not have to be a Haiku module as we are just doing matrix multiplications." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "mNQ8Dgx2Wl8Q" }, "outputs": [], "source": [ "def scaled_dot_product_attention(query, key, value):\n", " '''\n", " Calculate the scaled dot product attention using \n", " query, key and value tokens.\n", "\n", " Args:\n", " query: Query matrix, with shape [B,T,d]\n", " key: Key matrix, with shape [B,T_key,d]\n", " value: Value matrix, with shape [B,T_key,d]\n", "\n", " Returns:\n", " value: Weighted sum of values with shape [B,T,d]\n", " attention_weights: The attention weights between query and key, shape [B,T,T_key]\n", " '''\n", " \n", " d_k = key.shape[-1]\n", " logits = # FINSIH ME\n", " scaled_logits = # FINISH ME\n", " attention_weights = jax.nn.softmax(scaled_logits, axis=-1) \n", " value = jnp.matmul(attention_weights, value)\n", " return value, attention_weights" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "Xw4b5UYOmyw3" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "key = jax.random.PRNGKey(42)\n", "x = jax.random.normal(key, [1, 2, 3])\n", "value, weights = scaled_dot_product_attention(x, x, x)\n", "\n", "value_correct = jnp.array(\n", " [[[0.5013704, 0.965935, 1.0586468], [-0.57923466, -0.56055915, 0.2919087]]]\n", ")\n", "weights_correct = jnp.array([[[0.9221789, 0.0778211], [0.16385838, 0.8361416]]])\n", "\n", "assert jnp.allclose(value_correct, value), \"value is not calculated correctly\"\n", "assert jnp.allclose(\n", " weights_correct, weights\n", "), \"attention_weights is not calculated correctly\"\n", "\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "lDq7CAcAd49i" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "\n", "\n", "def scaled_dot_product_attention(query, key, value):\n", " d_k = key.shape[-1]\n", " logits = jnp.matmul(query, jnp.swapaxes(key, -2, -1))\n", " scaled_logits = logits / jnp.sqrt(d_k)\n", " attention_weights = jax.nn.softmax(scaled_logits, axis=-1)\n", " value = jnp.matmul(attention_weights, value)\n", " return value, attention_weights" ] }, { "cell_type": "markdown", "metadata": { "id": "qqVTaqqhir4e" }, "source": [ "Let's now see scaled dot product attention in action. We will take a sentence, embed each word using word2vec, and see what the final self-attention weights look like.\n", "\n", "We will not use the linear projection layers as they are not trained. Instead, we are going to make $X=Q=V=K$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "wVBq5ie0iz8G" }, "outputs": [], "source": [ "sentence = \"I drink coke, but eat steak\"\n", "word_embeddings, words = embed_sentence(sentence)\n", "Q = K = V = word_embeddings\n", "\n", "# calculate weights and plot\n", "values, attention_weights = scaled_dot_product_attention(Q, K, V)\n", "words = remove_punctuation(sentence).split()\n", "plot_attention_weight_matrix(attention_weights[0], words, words)" ] }, { "cell_type": "markdown", "metadata": { "id": "0tJJuTztnbdy" }, "source": [ "Keep in mind that we have not trained our attention matrix yet. However, we can see that by utilising the word2vec vectors as our sequence, we can see how scaled dot product attention already is capable of attending to \"eat\" when \"steak\" is our query and that the query \"drink\" attends more to \"coke\" and \"eat\". " ] }, { "cell_type": "markdown", "metadata": { "id": "V3ihUTrl_cxh" }, "source": [ "**Group task:** See if you can find any interesting results using the above, untrained, attention weights." ] }, { "cell_type": "markdown", "metadata": { "id": "IheQSi6c0E8u" }, "source": [ "More resources:\n", "\n", "[Attention with Q,K,V](https://www.youtube.com/watch?v=k-5QMalS8bQ&list=PLmZlBIcArwhPHmHzyM_cZJQ8_v5paQJTV&index=7)" ] }, { "cell_type": "markdown", "metadata": { "id": "Rd7xAVznfBQU" }, "source": [ "##### **Masked attention** \n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "QNC0zv5eB4sa" }, "source": [ "There are cases where applying self-attention over the entire sequence is not practical. These can include:\n", "\n", "- Uneven length sequences batched together.\n", " - When sending a batch of sequences through a network, the self-attention expects each sequence to be the same length. One handles this by padding the sequence. When calculating attention, ideally, these padding vectors should not be taken into consideration\n", "- Training a decoding model.\n", " - When training decoder models, such as GPT-3, the decoder has access to the entire target sequence when training (as training is done in parallel). In order to prevent the method from cheating by looking at future tokens, we have to mask the future sequence data so that earlier data can not attend to it.\n", " \n", "By applying a mask to the final score calculated between queries and keys, we mitigate the influence of the unwanted sequence vectors. The vectors are masked by making the score between the query and their respective keys a VERY large negative value. This results in the softmax function pushing the attention weight very close to zero, and the resulting value will be summed out and not influence the final representation.\n", "\n", "\n", "Putting everything together, masked scaled dot product attention visually looks like this:\n", "\n", "\"drawing\". \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "qm1cMDA_hQIr" }, "outputs": [], "source": [ "# example of building a mask for tokens of size 32\n", "mask = jnp.tril(jnp.ones((32, 32)))\n", "sns.heatmap(mask, cmap=\"Blues\")\n", "plt.title(\"Example of mask that can be applied\");" ] }, { "cell_type": "markdown", "metadata": { "id": "iQJtf6sCfBQY" }, "source": [ "**Code Task:** Try and implement the masking operation for your SCD function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "LICrxTN5fBQZ" }, "outputs": [], "source": [ "def scaled_dot_product_attention(query, key, value, mask=None):\n", " '''\n", " Calculate the scaled dot product attention using \n", " query, key and value tokens with mask being applied.\n", "\n", " Args:\n", " query: Query matrix, with shape [B,T,d]\n", " key: Key matrix, with shape [B,T_key,d]\n", " value: Value matrix, with shape [B,T_key,d]\n", " mask: Mask to be applied, with shape [T_mask, T_mask], where T_mask>=max(T_key,T)\n", "\n", " Returns:\n", " value: Weighted sum of values with shape [B,T,d]\n", " attention_weights: The attention weights between query and key, shape [B,T,T_key]\n", " '''\n", " d_k = key.shape[-1]\n", " T_k = key.shape[1]\n", " T_q = query.shape[1]\n", " logits = jnp.matmul(query, jnp.swapaxes(key, -2, -1))\n", " scaled_logits = logits/jnp.sqrt(d_k)\n", "\n", " if mask is not None:\n", " scaled_logits = # FINISH ME\n", "\n", " attention_weights = jax.nn.softmax(scaled_logits, axis=-1) \n", " attention = jnp.matmul(attention_weights, value)\n", " return attention, attention_weights" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "8M-zuP8jm4LN" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "mask = jnp.tril(jnp.ones((2, 2)))\n", "\n", "key = jax.random.PRNGKey(42)\n", "x = jax.random.normal(key, [1, 2, 3])\n", "\n", "value, weights = scaled_dot_product_attention(x, x, x, mask)\n", "\n", "value_correct = jnp.array(\n", " [[[0.6122652, 1.1225883, 1.1373317], [-0.57923466, -0.56055915, 0.2919087]]]\n", ")\n", "weights_correct = jnp.array([[[1.0, 0.0], [0.16385838, 0.8361416]]])\n", "\n", "assert jnp.allclose(value_correct, value), \"value is not calculated correctly\"\n", "assert jnp.allclose(\n", " weights_correct, weights\n", "), \"attention_weights is not calculated correctly\"\n", "\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "iE1YNtLkfBQZ" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!'). This answer will be based on our previous answer.\n", "def scaled_dot_product_attention(query, key, value, mask=None):\n", " d_k = key.shape[-1]\n", " T_k = key.shape[-2]\n", " T_q = query.shape[-2]\n", " logits = jnp.matmul(query, jnp.swapaxes(key, -2, -1))\n", " scaled_logits = logits / jnp.sqrt(d_k)\n", "\n", " if mask is not None:\n", " scaled_logits = jnp.where(mask[:T_q, :T_k], scaled_logits, -jnp.inf)\n", "\n", " attention_weights = jax.nn.softmax(scaled_logits, axis=-1)\n", " attention = jnp.matmul(attention_weights, value)\n", " return attention, attention_weights" ] }, { "cell_type": "markdown", "metadata": { "id": "UAJnz3uOmHvC" }, "source": [ "In order to test if this works, lets apply a masked attention to our sequence, as one would do in a autoregressive setting, where the current output is only allowed to attend to the current and previous outputs." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Lq5Fnf2Xnd9D" }, "outputs": [], "source": [ "mask = jnp.tril(np.ones((word_embeddings.shape[1], word_embeddings.shape[1])))\n", "\n", "attention, attention_weights = scaled_dot_product_attention(\n", " word_embeddings, word_embeddings, word_embeddings, mask\n", ")\n", "\n", "plt.title(\"Attention weights with masked applied\")\n", "sns.heatmap(attention_weights[0], cmap=\"Blues\");" ] }, { "cell_type": "markdown", "metadata": { "id": "7SrT6swYgCm9" }, "source": [ "#### Multihead Attention - `Advanced`" ] }, { "cell_type": "markdown", "metadata": { "id": "eILi2mwrhtCD" }, "source": [ "Rather than only computing the attention once, the multi-head attention (MHA) mechanism runs through the scaled dot-product attention multiple times in parallel. According to the paper, Attention is all you need, \"multi-head attention allows the model to jointly attend to information from different representation subspaces at different positions. With a single attention head, averaging inhibits this\". \n", "\n", "Multi-head attention can be viewed as a similar strategy to stacking convolution kernels in a CNN layer. This allows the kernels to focus on and learn different features and rules, which is why multiple heads of attention also work. The process for MHA is given below.\n", "\n", "\"drawing\"\n", "\n", "As can be seen from the figure, the scaled dot product attention discussed earlier is just repeated $N$ times, with $3N$ learnable matrices for each head. The outputs from the different heads are then concatenated, whereafter it is fed through a linear projection, which produces the final representation. \n", "\n", "Due to these large amount of computations and memory requirements, a common design choice is to have the $W_{Qn}, W_{Kn}, W_{Vn}$ matrices produce embeddings of length $d_m/N$, where $d_m$ is the input sequence embedding size and $N$ is the number heads. By doing this, the MHA function is similar computation-wise to using a single head of attention." ] }, { "cell_type": "markdown", "metadata": { "id": "WXZPL9qVci0I" }, "source": [ "**Code Task:** Code up a Haiku module that implements the entire multi-head attention mechanism. \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Px2JQqOnYs17" }, "outputs": [], "source": [ "class MultiHeadAttention(hk.Module):\n", "\n", " '''\n", " Apply multi-head attention to a sequence of embeddings, or to Q, K and V\n", " matrices if they are supplied.\n", "\n", " Args:\n", " num_heads: Number of heads\n", " d_m: Embedding/Token embeddings size\n", " '''\n", "\n", " def __init__(\n", " self,\n", " num_heads,\n", " d_m,\n", " name = None,\n", " ):\n", " super().__init__(name=name)\n", " self.num_heads = num_heads \n", " self.sequence_to_qkv = SequenceToQKV(d_m) # Implemented in the previous exercises\n", "\n", " def __call__(self, X=None, Q=None, K=None, V=None, mask = None, return_weights=False):\n", " '''\n", " Args:\n", " X: Sequence of embeddings, with shape [B,T,dm]. If not provided, must provide Q,K,V\n", " Q: Query matrix, with shape [B,T,dm]. Must be provided if X is not\n", " K: Query matrix, with shape [B,T_key,dm]. Must be provided if X is not\n", " V: Query matrix, with shape [B,T_key,dm]. Must be provided if X is not\n", " mask [optional, default=None]: Mask to be applied, with shape [T_mask, T_mask], where T_mask>=max(T_key,T).\n", " return_weights [optional, default=False]: Whether to return attention weights calculated\n", "\n", " Returns:\n", " X_new: Transformed sequence of embeddings, with shape [B,T,dm] \n", " attention_weights: Returned when return_weights=True, with shape [B,num_heads,T,T_key]\n", "\n", " '''\n", "\n", "\n", " if None in [Q, K, V]:\n", " assert not X is None, 'X has to be provided if either Q,K,V not provided'\n", " \n", " # project all data to Q, K, V\n", " Q,K,V = # FINISH ME\n", "\n", " # get the batch size, sequence length and embedding size\n", " B, T, d_m = K.shape\n", "\n", " # calculate heads embedding size (d_m/N)\n", " head_size = d_m // self.num_heads\n", "\n", " # B,T,d_m -> B, T, N, dm//N -> B, N, T, dm//N\n", " q_heads = # FINSIH ME (REMEMBER, Q.shape is not always = K.shape)\n", " k_heads = # FINISH ME\n", " v_heads = # FINISH ME\n", " \n", " attention, attention_weights = scaled_dot_product_attention(q_heads,k_heads,v_heads,mask)\n", "\n", " # (B, nh, T, hs) -> (B, T, nh, hs) -> (B, T, d_m) - re-assemble all head outputs\n", " attention = # FINISH ME\n", "\n", " # apply Wo\n", " initializer = hk.initializers.VarianceScaling(0.5)\n", " Wo = hk.Linear(d_m, w_init=initializer)\n", " X_new = # FINISH ME\n", "\n", " if return_weights:\n", " return X_new, attention_weights \n", " else:\n", " return X_new" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "UjK0cPTRm9Cr" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "def mha_test(sequences):\n", " mha = MultiHeadAttention(2, 8)\n", " return mha(sequences)\n", "\n", "\n", "mha_test = hk.transform(mha_test)\n", "\n", "# initialise model\n", "key = jax.random.PRNGKey(42)\n", "x = jax.random.normal(key, [1, 2, 8])\n", "params = mha_test.init(key, x)\n", "x_new = mha_test.apply(params, key, x)\n", "\n", "x_correct = jnp.array(\n", " [\n", " [\n", " [\n", " 0.8122552,\n", " -0.3184167,\n", " 0.54364735,\n", " 1.0808588,\n", " 0.28692305,\n", " 0.44296914,\n", " -0.0463711,\n", " 0.12337256,\n", " ],\n", " [\n", " 0.8388398,\n", " -0.39584604,\n", " 0.30241585,\n", " 0.9982894,\n", " 0.3577416,\n", " 0.35978147,\n", " -0.07165723,\n", " -0.18380073,\n", " ],\n", " ]\n", " ]\n", ")\n", "\n", "\n", "assert jnp.allclose(x_correct, x_new), \"Not returning the correct value\"\n", "print(\n", " \"It seems correct. Look at the answer below to compare methods then move to the transformers section.\"\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "ozNp_pfhc12I" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!'). This answer will be based on our previous answer.\n", "class MultiHeadAttention(hk.Module):\n", " def __init__(\n", " self,\n", " num_heads,\n", " d_m,\n", " name=None,\n", " ):\n", " super().__init__(name=name)\n", " self.num_heads = num_heads\n", " self.sequence_to_qkv = SequenceToQKV(d_m)\n", "\n", " def __call__(self, X=None, Q=None, K=None, V=None, mask=None, return_weights=False):\n", " if None in [Q, K, V]:\n", " assert not X is None, \"X has to be provided if either Q,K,V not provided\"\n", "\n", " # project all data to Q, K, V\n", " Q, K, V = self.sequence_to_qkv(X)\n", "\n", " # get the batch size, sequence length and embedding size\n", " B, T, d_m = K.shape\n", "\n", " # calculate heads embedding size (d_m/N)\n", " head_size = d_m // self.num_heads\n", "\n", " # B,T,d_m -> B, T, N, dm//N -> B, N, T, dm//N\n", " q_heads = Q.reshape(B, -1, self.num_heads, head_size).swapaxes(1, 2)\n", " k_heads = K.reshape(B, -1, self.num_heads, head_size).swapaxes(1, 2)\n", " v_heads = V.reshape(B, -1, self.num_heads, head_size).swapaxes(1, 2)\n", "\n", " attention, attention_weights = scaled_dot_product_attention(\n", " q_heads, k_heads, v_heads, mask\n", " )\n", "\n", " # (B, nh, T, hs) -> (B, T, nh, hs) -> (B, T, d_m) - re-assemble all head outputs\n", " attention = attention.swapaxes(1, 2).reshape(B, -1, d_m)\n", "\n", " # apply Wo\n", " initializer = hk.initializers.VarianceScaling(0.5)\n", " Wo = hk.Linear(d_m, w_init=initializer)\n", " X_new = Wo(attention)\n", "\n", " if return_weights:\n", " return X_new, attention_weights\n", " else:\n", " return X_new" ] }, { "cell_type": "markdown", "metadata": { "id": "w05LJDmGtXX3" }, "source": [ "Now that we have an understanding for how the MHA works, lets see how the transformer architecture uses them." ] }, { "cell_type": "markdown", "metadata": { "id": "WILOYJH4gCnD" }, "source": [ "### Section Quiz \n", "\n", "[Test knowledge on all the previous material of attention]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "N5iFeOKOgCnE" }, "outputs": [], "source": [ "# @title Generate Quiz Form. (Run Cell)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "e9NW58_3hAg2" }, "source": [ "## **Transformers**\n" ] }, { "cell_type": "markdown", "metadata": { "id": "C3NUhE2jUo8O" }, "source": [ "Attention, and specifically MHA, is the backbone of transformer architectures. Let us now use what we learned and built in the previous section to implement a transformer architecture in Haiku for a simple task: inverting a sentence. Each block will be built up from scratch and will be able to do more complex tasks.\n", "\n", "\n", "\n", "We base a lot of our code on the [Deepmind Haiku example](https://github.com/deepmind/dm-haiku/tree/main/examples/transformer)." ] }, { "cell_type": "markdown", "metadata": { "id": "6HxXjYTFXaal" }, "source": [ "### High level overview" ] }, { "cell_type": "markdown", "metadata": { "id": "MxjJTlrhajcq" }, "source": [ "Originally the transformer was designed for machine translation, hence the encoder-decoder structure seen below. \n", "\n", "The encoder will receive an input sentence in one language and process it through multiple stacked `encoder blocks`. This creates a final representation, which contains helpful information necessary for the decoding task. This output is then fed into stacked `decoder blocks` that produce new outputs in an autoregressive manner. \n", "\n", "\n", "\n", "\n", "The encoder consists of $N$ identical blocks, which process a sequence of token vectors sequentially. These blocks consist of 3 parts:\n", "\n", "1. A multi-head attention block. These are the transformer architecture's backbone. They process the data to generate representations for each token, ensuring that the necessary information for the task at hand is represented in the vectors. These are exactly the MHA we covered in the attention section previously. \n", "2. An MLP is applied to each input token separately and identically.\n", "3. Residual connection that adds the input tokens to the attended representations and a residual connection between the input to the MLP and its outputs. For both these connections, the result is normalized using layernorm. In certain implementations, these normalization steps are applied to the inputs rather than the outputs. Just like a Resnet, transformers are designed to be very deep models thus, these add and norm blocks are essential for a smooth gradient flow. \n", "\n", "The decoder block consists of the same parts, except for one extra MHA block that appears after the initial MHA block. This block receives the output of the final encoder block, the transformed tokens, and uses that as the key-value pairs, while using the output of the first MHA block as the query. In doing this, the model attends over the input required to perform the sequence task. This MHA block thus performs _cross-attention_ by looking at the encoder inputs while the first MHA block performs _self-attention_ on the output sequence. The initial MHA block is also masked in a decoder to block future tokens when making predictions. \n", "\n", "This entire architecture can then be trained end to end. These models expect data to be broken up into a sequence of vectors to be processed. Next, we will deep dive into how this is done.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "sq0kPkVphbFG" }, "source": [ "### Tokenisation" ] }, { "cell_type": "markdown", "metadata": { "id": "wd4hPASBiEGe" }, "source": [ "Before data can be fed into transformers, it has to be transformed into an acceptable format: a sequence of tokens and a vector representing each token. Below, we briefly discuss how we can transform text and vision data into tokens that transformers can process [source](https://huggingface.co/docs/transformers/preprocessing)." ] }, { "cell_type": "markdown", "metadata": { "id": "-8GylOMmBW4n" }, "source": [ "##### **Text**" ] }, { "cell_type": "markdown", "metadata": { "id": "TS_jLXJw0kdN" }, "source": [ "\n", "Transformers can not handle raw strings of text. So to process text, the text is first split up into tokens. The tokens are then indexed and each token is assigned an embedding of size $d_{model}$. These embeddings can be learned during training or can come from a pretrained vocabulary of embeddings. This new sequence of token embeddings is then fed into the transformer architecture. This idea is visualised below. \n", "\n", "\\\\\n", "\n", "\"drawing\"\n", "\n", "\n", "These token IDs are typically predicted when a model generates text, fills in missing words, etc.\n", "\n", "This process of splitting up text into tokens and assigning an ID to each token is called [tokenisation](https://huggingface.co/docs/transformers/tokenizer_summary). There are various ways to tokenise text, with some methods being trained directly from the data. When using pre-trained transformers, it is crucial to use the same tokeniser that was used to train the model. The previous link has in-depth descriptions of many widely known techniques.\n", "\n", "Below we show how the [BERT](https://arxiv.org/abs/1810.04805) model's tokeniser tokenises a sentence. We use [Hugging Face](https://huggingface.co/) for this part. We will have a deep dive into Hugging Face later in this notebook." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "t0C-3v0y0iZe" }, "outputs": [], "source": [ "bert_tokenizer = AutoTokenizer.from_pretrained(\"bert-base-cased\")\n", "encoded_input = bert_tokenizer(\"The practical is so much fun\")\n", "print(f\"Token IDs: {encoded_input['input_ids']}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "P-408xpj794l" }, "source": [ "Here we can see that the tokeniser returns the IDs for each token, as shown in the figure. But counting the number of IDs, we see that it is larger than the number of words in the sentence. Let's print the tokens associated with each ID.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1dYMGIgi8p-q" }, "outputs": [], "source": [ "print(f\"Tokens: {bert_tokenizer.decode(encoded_input['input_ids'])}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "phjOR7ftAVt_" }, "source": [ "We can see the tokeniser attaches new tokens, `[CLS]` and `[SEP]`, to the start and end of the sequence. This is a BERT-specific requirement for training and inference. Adding special tokens is a very common thing to do. Using special tokens, we can tell a model when a sentence starts or ends or when a new part of the input starts. This can be helpful when performing different tasks. \n", "\n", "For instance, to pretrain specific transformers, they perform what is known as masked prediction. For this, random tokens in a sequence are replaced by the `[MASK]` token, and the model is trained to predict the correct token ID for the token replaced with that token. " ] }, { "cell_type": "markdown", "metadata": { "id": "syL_uNAMVHQB" }, "source": [ "**Group task**:\n", "\n", "- Discuss with a friend what you think the current issue is when feeding these raw tokens into a transformer architecture? Think about the difference in meaning between a sentence and that same sentence where the word orders are random.\n", "- How would you fix that issue? " ] }, { "cell_type": "markdown", "metadata": { "id": "1jWreoeTBUCD" }, "source": [ "##### **Images - `Advanced`** (optional)" ] }, { "cell_type": "markdown", "metadata": { "id": "BcyHr8a_BdaT" }, "source": [ "As mentioned, transformers are versatile and can be applied to roughly any data which can be converted into a sequence of tokens.\n", "\n", "For example, to use the transformers encoder architecture with images, one can split an image into different patches, flatten these image patches and project each image patch into a fixed-sized embedding using any projection method. By doing this, the image has been converted into a sequence of image tokens, and the transformer will be able to process the data. \n", "\n", "This process is shown in the image below. \n", "\n", "\\\\\n", "\n", "\"drawing\"\n", "\n", "\n", "**Code task (OPTIONAL and ADVANCED):** Write a function that can take in a batch of images with shape (Batch, Height, Widht, Channels) and divide it into equal-sized patches. You can use the output of `image_to_patch` and `plot_image_patches` functions to visualise and test your function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "htWcVGlDHcba" }, "outputs": [], "source": [ "def image_to_patch(image, patch_size):\n", " \"\"\"\n", " Inputs:\n", " x - array of shape [B, H, W, C]\n", " patch_size - Number of pixels per dimension of the patches (integer)\n", "\n", " Outputs:\n", " patches - array of shape [B, H'*W', p_H, p_W, C]\n", " \"\"\"\n", " B, H, W, C = image.shape # HINT: You will need these\n", " \n", " image = # FINISH ME\n", "\n", " return image_patches" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "oqFn3peRTqm4" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!'). This answer will be based on our previous answer.\n", "\n", "\n", "def image_to_patch(image, patch_size):\n", " \"\"\"\n", " Inputs:\n", " x - array of shape [B, H, W, C]\n", " patch_size - Number of pixels per dimension of the patches (integer)\n", " \"\"\"\n", " B, H, W, C = image.shape\n", " image = image.reshape(\n", " B, H // patch_size, patch_size, W // patch_size, patch_size, C\n", " )\n", " image = image.transpose(0, 1, 3, 2, 4, 5) # [B, H', W', p_H, p_W, C]\n", " image_patches = image.reshape(B, -1, *image.shape[3:]) # [B, H'*W', p_H, p_W, C]\n", " return image_patches" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "mBXMQInfTuJK" }, "outputs": [], "source": [ "# do not change these lines, only run them to test your function\n", "print(\"Original image:\")\n", "image = np.array(Image.open(\"cat.png\"))\n", "plt.imshow(image)\n", "plt.show()\n", "\n", "print(\"Image broken into patches\")\n", "img = jnp.array(image)\n", "img = jax.image.resize(img, (512, 512, 3), \"nearest\")\n", "img = jnp.expand_dims(img, 0)\n", "patches = image_to_patch(img, 256)\n", "plot_image_patches(patches)" ] }, { "cell_type": "markdown", "metadata": { "id": "Ln7esAMHhdaz" }, "source": [ "\n", "### Positional encodings" ] }, { "cell_type": "markdown", "metadata": { "id": "a8MrN6YJXUM_" }, "source": [ "In most domains where a transformer can be utilised, there is an underlying order to the tokens produced, be it the order of words in a sentence, the location from which patches are taken in an image or even the steps taken in an RL environment. This order is very important in all cases; just imagine you interpret the sentence \"I have to read this book.\" as \"I have this book to read.\". Both sentences contain the exact same words, yet they have completely different meanings based on the order. \n", "\n", "As both the encoder and the decoder blocks process all tokens in parallel, the order of tokens is lost in these calculations. To cope with this, the sequence order has to be injected into the tokens directly. This can be done by adding *positional encodings* to the tokens at the start of the encoder and decoder blocks (though some of the latest techniques add positional information in the attention blocks). An example of how positional encodings alter the tokens is shown below.\n", "\n", "\n", "\\\\\n", "\n", "\"drawing\"\n", "\n", "Ideally, these encodings should have these characteristics ([source](https://kazemnejad.com/blog/transformer_architecture_positional_encoding/)):\n", "* Each time-step should have a unique value\n", "* The distance between time steps should stay constant.\n", "* The encoding should be able to generalise to longer sequences than seen during training.\n", "* The encoding must be deterministic." ] }, { "cell_type": "markdown", "metadata": { "id": "0WHx-9m9h5JA" }, "source": [ "\n", "##### **Sine and cosine functions**" ] }, { "cell_type": "markdown", "metadata": { "id": "Jrkqm8gC90GU" }, "source": [ "\n", "In Attention is All you Need, the authors used a method that can satisfy all these requirements. This involves summing a combination of sine and cosine waves at different frequencies, with the formula for a position encoding at position $D$ shown below, where $i$ is the embedding index and $d_m$ is the token embedding size. \n", "\n", "\\\\\n", "\n", "$P_{D}= \\begin{cases}\\sin \\left(\\frac{D}{10000^{i/d_{m}}}\\right), & \\text { if } i \\bmod 2=0 \\\\ \\cos \\left(\\frac{D}{10000^{((i-1)/d_{m}}}\\right), & \\text { otherwise } \\end{cases}$\n", "\n", "\\\n", "\n", "Assuming our model as $d_m=8$, the position embedding will look like this:\n", "\n", "\\\n", "$P_{D}=\\left[\\begin{array}{c}\\sin \\left(\\frac{D}{10000^{0/8}}\\right)\\\\ \\cos \\left(\\frac{D}{10000^{0/8}}\\right)\\\\ \\sin \\left(\\frac{D}{10000^{2/8}}\\right)\\\\ \\cos \\left(\\frac{D}{10000^{2/8}}\\right)\\\\ \\sin \\left(\\frac{D}{10000^{4/8}}\\right)\\\\ \\cos \\left(\\frac{D}{10000^{4/8}}\\right)\\\\ \\sin \\left(\\frac{D}{10000^{8/8}}\\right)\\\\ \\cos \\left(\\frac{D}{10000^{8/8}}\\right)\\end{array}\\right]$\n", "\n", "\\\\\n", "\n", "Let's first create a function that can return these encodings to understand why this will work. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "rKobhuyj9-74" }, "outputs": [], "source": [ "def return_frequency_pe_matrix(token_sequence_length, token_embedding):\n", "\n", " assert token_embedding % 2 == 0, \"token_embedding should be divisible by two\"\n", "\n", " P = jnp.zeros((token_sequence_length, token_embedding))\n", " positions = jnp.arange(0, token_sequence_length)[:, jnp.newaxis]\n", "\n", " i = jnp.arange(0, token_embedding, 2)\n", " frequency_steps = jnp.exp(i * (-math.log(10000.0) / token_embedding))\n", " frequencies = positions * frequency_steps\n", "\n", " P = P.at[:, 0::2].set(jnp.sin(frequencies))\n", " P = P.at[:, 1::2].set(jnp.cos(frequencies))\n", "\n", " return P" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "k4_9-Oh4yZuF" }, "outputs": [], "source": [ "token_sequence_length = 50 # Number of tokens the model will need to process\n", "token_embedding = 10000 # token embedding (and positional encoding) dimensions, ensure it is divisible by two\n", "P = return_frequency_pe_matrix(token_sequence_length, token_embedding)\n", "plot_position_encodings(P, token_sequence_length, token_embedding)" ] }, { "cell_type": "markdown", "metadata": { "id": "Gw8nOF2Ra93B" }, "source": [ "Looking at the graph above, we can see that for each position index, there is a unique pattern forming, where each position index will always have the same encoding. " ] }, { "cell_type": "markdown", "metadata": { "id": "OHZXceUVNWy9" }, "source": [ "**Group task**:\n", "\n", "- Discuss with your friend why we are seeing that specific pattern when `token_sequence_length` is 1000, and `token_embedding` is 768.\n", "- You can try playing around with smaller values for `token_sequence_length` and `token_embedding` to get a better intuition for the above discussion.\n", "- Ask your friend why they think the 10000 constant is used in the functions above. \n", "- Make `token_sequence_length` to be 50 and `token_embedding` something large, like 10000. What do you notice? Is a large token embedding always needed?\n" ] }, { "cell_type": "markdown", "metadata": { "id": "gFiRpEaGd6TB" }, "source": [ "**Math task (optional):** Notice in our function that we do not directly implement the equation we describe above for numerical stability when calculating the frequency steps. See if you can derive by hand how we got to this new equation. Hint: Think about log rules.\n", "\n", "Original equation:\n", "\n", "$\\text{f} = \\frac{D}{x^{i/d_{m}}}$\n", "\n", "Code equation:\n", "\n", "$\\text{f} = \\text{exp} \\left( \\frac{-i\\log(x)}{d_m} \\right)D$" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "zhdifRibxSI2" }, "outputs": [], "source": [ "#@title Answer (but first try yourself)\n", "%%latex\n", "\\frac{𝐷}{x^{𝑖/𝑑_𝑚}} \\\\\n", "= D\\left( x^{-i/d_m}\\right)\\\\\n", "=\\text{exp}\\left(\\log{x^{-i/d_m}}\\right)D\\\\\n", "=\\text{exp}\\left(\\frac{-i}{d_m}\\log{x}\\right)D\\\\\n", "=\\text{exp}\\left(\\frac{-i\\log{x}}{d_m}\\right)D" ] }, { "cell_type": "markdown", "metadata": { "id": "8GeFt_xwh722" }, "source": [ "##### **Learned positional embeddings**" ] }, { "cell_type": "markdown", "metadata": { "id": "xnTNW1kNyZ75" }, "source": [ "\n", "Another method which is commonly used is to allow the model to learn the positional information required. In this method, the model learns a lookup table, where each index in the table refers to a positional embedding. Whereas the previous method allowed for an infinite amount of tokens, this method caps the maximum token sequence length as the lookup table has to be set beforehand. \n", "\n", "Using Haiku, this method is relatively straightforward as we can use [Haiku's embed function](https://dm-haiku.readthedocs.io/en/latest/api.html#embed) or [Haiku's get parameter function](https://dm-haiku.readthedocs.io/en/latest/api.html#get-parameter)\n", "\n", "**Code Task:** Try and implement a lookup table, which can be learned, for using Haikus get parameter function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "DXbQ_-RnXaNY" }, "outputs": [], "source": [ "class PositionEmbeddingsLookup(hk.Module):\n", " \"\"\"\n", " A position embedding of shape [max_sequence_len, d_model]\n", " \"\"\"\n", " def __init__(self, max_sequence_len, d_model):\n", " super().__init__()\n", "\n", " self.max_sequence_len = max_sequence_len\n", " self.d_model = d_model\n", "\n", " def __call__(self, sequence):\n", " \n", " assert sequence.shape[0]<=self.max_sequence_len, f\"Sequence to long, max lenght={self.max_sequence_len}\"\n", "\n", " lookup_table = hk.get_parameter( \n", " name=\"position_embedding\",\n", " shape=, # FILL ME IN\n", " init=jnp.zeros\n", " )\n", "\n", " return lookup_table[:sequence.shape[0], :]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "ECM4bYujnIFl" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "def pos_test(sequences):\n", " pos_emb = PositionEmbeddingsLookup(2, 8)\n", " return pos_emb(sequences)\n", "\n", "\n", "pos_test = hk.transform(pos_test)\n", "\n", "# initialise model\n", "key = jax.random.PRNGKey(42)\n", "x = jax.random.normal(key, [1, 2, 8])\n", "params = pos_test.init(key, x)\n", "pos_encoding = pos_test.apply(params, key, x)\n", "\n", "pos_correct = jnp.array([[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]])\n", "\n", "assert jnp.allclose(pos_correct, pos_encoding), \"Not returning the correct value\"\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "R1_WpVc0Y3Hk" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!'). This answer will be based on our previous answer.\n", "\n", "\n", "class PositionEmbeddingsLookup(hk.Module):\n", " \"\"\"\n", " A position embedding of shape [max_sequence_len, d_model]\n", " \"\"\"\n", "\n", " def __init__(self, max_sequence_len, d_model):\n", " super().__init__()\n", "\n", " self.max_sequence_len = max_sequence_len\n", " self.d_model = d_model\n", "\n", " def __call__(self, sequence):\n", "\n", " assert (\n", " sequence.shape[0] <= self.max_sequence_len\n", " ), f\"Sequence to long, max lenght={self.max_sequence_len}\"\n", "\n", " lookup_table = hk.get_parameter(\n", " name=\"position_embedding\",\n", " shape=(self.max_sequence_len, self.d_model),\n", " init=jnp.zeros,\n", " )\n", "\n", " return lookup_table[: sequence.shape[0], :]" ] }, { "cell_type": "markdown", "metadata": { "id": "3l8mzIOeXbrA" }, "source": [ "### Feed Forward block" ] }, { "cell_type": "markdown", "metadata": { "id": "Jn0EFwjXi1rI" }, "source": [ "These blocks are just a single 2-layer MLP that uses ReLU activation in the original model. GeLU has also become very popular, and we will be using it throughout the practical.\n", "\n", "$$\n", "\\operatorname{FFN}(x)=\\max \\left(0, x W_{1}+b_{1}\\right) W_{2}+b_{2}\n", "$$\n", "\n", "One can interpret this block as processing what the MHA block has produced and then projecting these new token representations to a space that the next block can use more optimally. Usually, the first layer is very wide, in the range of 2-8 times the size of the token representations. They do this as it is easier to parallelize computations for a single wider layer during training than to parallelize a feedforward block with multiple layers. Thus they can add in more complexity but keep training and inference optimized." ] }, { "cell_type": "markdown", "metadata": { "id": "CGEy7dapluco" }, "source": [ "**Code task:** Code up a Haiku Module that implements the Feed forward block. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "dh6mpR6rl47u" }, "outputs": [], "source": [ "class FeedForwardBlock(hk.Module):\n", " \"\"\"\n", " A 2-layer MLP which widens then narrows the input.\n", " \n", " Args:\n", " widening_factor [optional, default=4]: The size of the hidden layer will be d_model * widening_factor.\n", " \"\"\"\n", "\n", " def __init__(self,\n", " widening_factor: int = 4, \n", " name=None):\n", " super().__init__(name=name)\n", " self._init_scale = 0.25\n", " self._widening_factor = widening_factor\n", "\n", " def __call__(self, x):\n", " '''\n", " Args:\n", " x: [B, T, d_m]\n", "\n", " Return:\n", " x: [B, T, d_m]\n", " '''\n", " d_m = x.shape[-1]\n", " layer1_size = self._widening_factor * d_m\n", "\n", " initializer = hk.initializers.VarianceScaling(self._init_scale)\n", " layer1 = # FINSIH ME\n", " layer2 = # FINISH ME\n", "\n", " x = jax.nn.gelu(layer1(x))\n", " x = layer2(x)\n", " return x" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "5t7cgF8IYIUF" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "\n", "\n", "class FeedForwardBlock(hk.Module):\n", " \"\"\"A 2-layer MLP which widens then narrows the input.\"\"\"\n", "\n", " def __init__(self, widening_factor: int = 4, name=None):\n", " super().__init__(name=name)\n", " self._init_scale = 0.25\n", " self._widening_factor = widening_factor\n", "\n", " def __call__(self, x):\n", " d_m = x.shape[-1]\n", " layer1_size = self._widening_factor * d_m\n", "\n", " initializer = hk.initializers.VarianceScaling(self._init_scale)\n", " layer1 = hk.Linear(layer1_size, w_init=initializer)\n", " layer2 = hk.Linear(d_m, w_init=initializer)\n", "\n", " x = jax.nn.gelu(layer1(x))\n", " x = layer2(x)\n", " return x" ] }, { "cell_type": "markdown", "metadata": { "id": "GQONPcKfXbfj" }, "source": [ "### Add and Norm" ] }, { "cell_type": "markdown", "metadata": { "id": "oyyWfxPKsUm6" }, "source": [ "In order to get transformers to go deeper, the residual connections are very important to allow an easier flow of gradients through the network. For normalisation, `layer norm` is used. This normalises each token vector independently in the batch. It is found that normalising the vectors improves the convergence and stability of transformers. \n", "\n", "There are two learnable parameters in layernorm, `scale` and `bias`, which rescales the normalised value. Thus, for each input token in a batch, we calculate the mean, $\\mu_{i}$ and variance $\\sigma_i^2$. We then normalise the token with:\n", "\n", "$\\hat{x}_i = \\frac{x_i-\\mu_{i}}{\\sigma_i^2 + ϵ}$.\n", "\n", "Then $\\hat{x}$ is rescaled using the learned `scale`, $γ$, and `bias` $β$, with:\n", "\n", "$y_i = γ\\hat{x}_i + β = LN_{γ,β}(x_i)$.\n", "\n", "So our add norm block can be represented as $LN(x+f(x))$, where $f(x)$ is either a MLP or MHA block." ] }, { "cell_type": "markdown", "metadata": { "id": "Y9rPxLLD69nl" }, "source": [ "**Code task:** Code up a Haiku Module that impliments the add norm block. It should take as input the processed and unprocessed tokens. Hint: `hk.LayerNorm `" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "GIY5a7I969Fw" }, "outputs": [], "source": [ "class AddNorm(hk.Module):\n", " \"\"\"A block that impliments the add and norm block\"\"\"\n", "\n", " def __init__(self,\n", " name=None):\n", " super().__init__(name=name)\n", "\n", " def __call__(self, x, processed_x):\n", " '''\n", " Args:\n", " x: Sequence of tokens before feeding into MHA or FF blocks, with shape [B, T, d_m]\n", " x: Sequence of after being processed by MHA or FF blocks, with shape [B, T, d_m]\n", "\n", " Return:\n", " add_norm_x: Transformed tokens with shape [B, T, d_m]\n", " '''\n", " \n", " added = # FINISH ME\n", " normalised = #FINISH ME\n", " return normalised(added)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "5OOLMaYXsR_O" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "\n", "\n", "class AddNorm(hk.Module):\n", " \"\"\"A block that impliments the add and norm block\"\"\"\n", "\n", " def __init__(self, name=None):\n", " super().__init__(name=name)\n", "\n", " def __call__(self, x, processed_x):\n", "\n", " added = x + processed_x\n", " normalised = hk.LayerNorm(axis=-1, create_scale=True, create_offset=True)\n", " return normalised(added)" ] }, { "cell_type": "markdown", "metadata": { "id": "AIHHQTrcXb1b" }, "source": [ "### Building the Encoder " ] }, { "cell_type": "markdown", "metadata": { "id": "GDIHVioL9J7e" }, "source": [ "We now have all the building blocks that we need to build a single encoder block. \n", "\n", "**Code task:** Use your previous built modules and create a new haiku module that is a transformer encoder block. One should also be able to retrieve the attention weights as an optional flag." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "v1Y18G_OJGJu" }, "outputs": [], "source": [ "class EncoderBlock(hk.Module):\n", " \"\"\"\n", " An encoder block for the Transformer stack.\n", " \n", " Args:\n", " num_heads: The number of heads to be used in the MHA block.\n", " d_m: Token embedding size\n", " widdening_factor: The size of the hidden layer will be d_m * widening_factor.\n", " \"\"\"\n", "\n", " def __init__(self, num_heads, d_m, widening_factor=4, name=None):\n", " super().__init__(name=name)\n", "\n", " self._num_heads = num_heads\n", " self.d_m = d_m\n", " self.mha = MultiHeadAttention(num_heads, d_m)\n", " self.add_norm1 = AddNorm()\n", " self.add_norm2 = AddNorm()\n", " self.MLP = FeedForwardBlock(widening_factor=widening_factor)\n", "\n", " def __call__(self, X, mask=None, return_att_weight=True):\n", " '''\n", " Args:\n", " X: Batch of tokens, with shape [B, T, d_m]\n", " mask [optional, default=None]: Mask to be applied, with shape [T, T].\n", " return_att_weight [optional, default=True]: Whether to return the attention weights.\n", " '''\n", "\n", " sequence_len = X.shape[-2]\n", " positions = # FINSIH ME, MUST BE FIXED POSITIONAL EMBEDDINGS\n", " X = X + positions\n", " attention, attention_weights = # FINISH ME\n", " X = self.add_norm1(X, attention)\n", " projection = # FINISH ME\n", " X = # FINISH ME\n", " return (X, attention_weights) if return_att_weight else X" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "xrAGr3Td97i7" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "\n", "\n", "class EncoderBlock(hk.Module):\n", " \"\"\"An encoder block for the Transformer stack.\"\"\"\n", "\n", " def __init__(self, num_heads, d_m, widening_factor=4, name=None):\n", " super().__init__(name=name)\n", "\n", " self._num_heads = num_heads\n", " self.d_m = d_m\n", " self.mha = MultiHeadAttention(num_heads, d_m)\n", " self.add_norm1 = AddNorm()\n", " self.add_norm2 = AddNorm()\n", " self.MLP = FeedForwardBlock(widening_factor=widening_factor)\n", "\n", " def __call__(self, X, mask=None, return_att_weight=True):\n", " sequence_len = X.shape[-2]\n", " positions = return_frequency_pe_matrix(sequence_len, self.d_m)\n", " X = X + positions\n", " attention, attention_weights = self.mha(X, mask, return_weights=True)\n", " X = self.add_norm1(X, attention)\n", " projection = self.MLP(X)\n", " X = self.add_norm2(X, projection)\n", " return (X, attention_weights) if return_att_weight else X" ] }, { "cell_type": "markdown", "metadata": { "id": "MdaFnZ8P979f" }, "source": [ "Now that we have a single encoder block, let's create a new transformer encoder stack that stacks the encoder blocks into one single transformer encoder." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "tedqHar-YJfV" }, "outputs": [], "source": [ "class TransformerEncoder(hk.Module):\n", " \"\"\"\n", " Transformer encoder consisting of several layers of encoder blocks.\n", "\n", " Args:\n", " num_heads: The number of heads to be used in the MHA block.\n", " num_layers: The number of encoder blocks to be used.\n", " d_m: Token embedding size\n", " widdening_factor: The size of the hidden layer will be d_m * widening_factor.\n", " \"\"\"\n", "\n", " def __init__(\n", " self, num_heads: int, num_layers: int, d_m: int, widening_factor=4, name=None\n", " ):\n", " super().__init__(name=name)\n", " self.num_layers = num_layers\n", " self.num_heads = num_heads\n", " self.widening_factor = widening_factor\n", " self.blocks = [\n", " EncoderBlock(self.num_heads, d_m, self.widening_factor)\n", " for _ in range(num_layers)\n", " ]\n", "\n", " def __call__(self, X, mask, return_att_weights=False):\n", " \"\"\"\n", " Args:\n", " X: Batch of tokens, with shape [B, T, d_m]\n", " mask [optional, default=None]: Mask to be applied, with shape [T, T].\n", " return_att_weight [optional, default=True]: Whether to return the attention weights.\n", " \"\"\"\n", "\n", " if return_att_weights:\n", " att_weights = []\n", "\n", " for block in self.blocks:\n", " out = block(X, mask, return_att_weights)\n", "\n", " if return_att_weights:\n", " X = out[0]\n", " att_weights.append(out[1])\n", " else:\n", " X = out\n", "\n", " return (\n", " X if not return_att_weights else (X, jnp.array(att_weights).swapaxes(0, 1))\n", " )" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "Y3-JlhO4nOcS" }, "outputs": [], "source": [ "# @title Run me to test your encoder\n", "B, T, d_m, N = 2, 2, 2, 2\n", "\n", "# run this to test if your code is running\n", "def encode(\n", " sequences,\n", " num_heads=2,\n", " num_layers=2,\n", " widening_factor=4,\n", " d_m=d_m,\n", " return_weights=False,\n", "):\n", " encoder = TransformerEncoder(num_heads, num_layers, d_m, widening_factor)\n", " return encoder(sequences, None, return_weights)\n", "\n", "\n", "encode = hk.transform(encode)\n", "\n", "# initialise module\n", "key = jax.random.PRNGKey(42)\n", "X = jax.random.normal(key, [B, T, d_m])\n", "params = encode.init(key, X, N, d_m)\n", "encoded_x = encode.apply(params, key, X)\n", "\n", "correct_encoded_x = jnp.array(\n", " [\n", " [[-0.99999505, 0.99999505], [0.9999963, -0.9999963]],\n", " [[-0.99999505, 0.99999505], [0.9999963, -0.9999963]],\n", " ]\n", ")\n", "\n", "assert jnp.allclose(\n", " correct_encoded_x, encoded_x\n", "), \"Not returning the correct value, investigate previous blocks\"\n", "print(\"It seems correct. Move on to building the decoder\")" ] }, { "cell_type": "markdown", "metadata": { "id": "RxSD1tLIX4CJ" }, "source": [ "### Building the Decoder" ] }, { "cell_type": "markdown", "metadata": { "id": "CouFQCMIK86f" }, "source": [ "\n", "\n", "Most of the groundwork has happened. We have built the positional encoding block, the MHA block, the feed-forward block and the add&norm block.\n", "\n", "The only part needed is passing the encoder outputs to each decoder block and applying the extra MHA block found in the decoder blocks. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4puW2jKJO6E5" }, "outputs": [], "source": [ "class DecoderBlock(hk.Module):\n", " \"\"\"\n", " Transformer decoder block.\n", "\n", " Args:\n", " num_heads: The number of heads to be used in the MHA block.\n", " d_m: Token embedding size\n", " widdening_factor: The size of the hidden layer will be d_m * widening_factor.\n", " \"\"\"\n", "\n", " def __init__(self, num_heads, d_m, widening_factor=4, name=None):\n", " super().__init__(name=name)\n", "\n", " self._num_heads = num_heads\n", " self.d_m = d_m\n", " self.mha = MultiHeadAttention(num_heads, d_m)\n", " self.mha_combine = MultiHeadAttention(num_heads, d_m)\n", " self.add_norm1 = AddNorm()\n", " self.add_norm2 = AddNorm()\n", " self.add_norm3 = AddNorm()\n", " self.MLP = FeedForwardBlock(widening_factor=widening_factor)\n", "\n", " def __call__(self, X, encoder_output, mask=None, return_att_weight=True):\n", " \"\"\"\n", " Args:\n", " X: Batch of tokens being fed into the decoder, with shape [B, T_decoder, d_m]\n", " encoder_output: Batch of tokens with was processed by the encoder, with shape [B, T_encoder, d_m]\n", " mask [optional, default=None]: Mask to be applied, with shape [T_decoder, T_decoder].\n", " return_att_weight [optional, default=True]: Whether to return the attention weights.\n", " \"\"\"\n", "\n", " sequence_len = X.shape[-2]\n", " positions = return_frequency_pe_matrix(sequence_len, self.d_m)\n", " X = X + positions\n", "\n", " attention, attention_weights_1 = self.mha(X, mask=mask, return_weights=True)\n", "\n", " X = self.add_norm1(X, attention)\n", "\n", " attention, attention_weights_2 = self.mha_combine(\n", " Q=X, K=encoder_output, V=encoder_output, mask=mask, return_weights=True\n", " )\n", "\n", " X = self.add_norm2(X, attention)\n", " projection = self.MLP(X)\n", " X = self.add_norm3(X, projection)\n", "\n", " return (X, attention_weights_2) if return_att_weight else X" ] }, { "cell_type": "markdown", "metadata": { "id": "rxeVVOxDT0hK" }, "source": [ "As you can see in the code, we now use the encoder outputs passed to the module when calculating the final attention weights before feeding everything through the MLP. \n", "\n", "Next, we just put everything together, just like we did for the encoder." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "xZcdRdWKQETZ" }, "outputs": [], "source": [ "class TransformerDecoder(hk.Module):\n", " \"\"\"\n", " Transformer encoder consisting of several layers of decoder blocks.\n", "\n", " Args:\n", " num_heads: The number of heads to be used in the MHA block.\n", " num_layers: The number of decoder blocks to be used.\n", " d_m: Token embedding size\n", " widdening_factor: The size of the hidden layer will be d_m * widening_factor.\n", " \"\"\"\n", "\n", " def __init__(\n", " self, num_heads: int, num_layers: int, d_m: int, widening_factor=4, name=None\n", " ):\n", " super().__init__(name=name)\n", " self.num_layers = num_layers\n", " self.num_heads = num_heads\n", " self.widening_factor = widening_factor\n", " self.blocks = [\n", " DecoderBlock(self.num_heads, d_m, self.widening_factor)\n", " for _ in range(num_layers)\n", " ]\n", "\n", " def __call__(self, X, encoder_output, mask, return_att_weights=False):\n", " \"\"\"\n", " Args:\n", " X: Batch of tokens being fed into the decoder, with shape [B, T_decoder, d_m]\n", " encoder_output: Batch of tokens with was processed by the encoder, with shape [B, T_encoder, d_m]\n", " mask [optional, default=None]: Mask to be applied, with shape [T_decoder, T_decoder].\n", " return_att_weight [optional, default=True]: Whether to return the attention weights.\n", " \"\"\"\n", "\n", " if return_att_weights:\n", " att_weights = []\n", " for block in self.blocks:\n", " out = block(X, encoder_output, mask, return_att_weights)\n", " if return_att_weights:\n", " X = out[0]\n", " att_weights.append(out[1])\n", " else:\n", " X = out\n", "\n", " return (\n", " X if not return_att_weights else (X, jnp.array(att_weights).swapaxes(0, 1))\n", " )" ] }, { "cell_type": "markdown", "metadata": { "id": "Ts-WLr0zY26X" }, "source": [ "### Putting it all together" ] }, { "cell_type": "markdown", "metadata": { "id": "GXPxlqooYY3T" }, "source": [ "There is nothing more to it. We have built every single component required to build a transformer, now we just have to combine everything into one module. \n", "\n", "**Code task**: Build a encoder-decoder transformer haiku module." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "26tL91_bY5ZL" }, "outputs": [], "source": [ "class Transformer(hk.Module):\n", " \"\"\"\n", " \n", " A full transformer encoder-decoder architecture\n", "\n", " Args:\n", " num_heads: The number of heads to be used in the MHA blocks.\n", " num_layers: The number of decoder and encoder blocks to be used.\n", " d_m: Token embedding size\n", " widdening_factor: The size of the hidden layer will be d_m * widening_factor. \n", " \"\"\"\n", "\n", " def __init__(self, num_heads, num_layers, d_m, widening_factor=4, name=None):\n", " super().__init__(name=name)\n", "\n", " self.num_layers = num_layers\n", " self.num_heads = num_heads\n", "\n", " self.encoder = # FINISH ME\n", " self.decoder = # FINISH ME\n", "\n", " def __call__(self, X_encoder, X_decoder, encoder_mask, decoder_mask, return_weights):\n", " '''\n", " Args:\n", " X_encoder: Batch of tokens being fed into the enecoder, with shape [B, T_encoder, d_m]\n", " X_decoder: Batch of tokens being fed into the decoder, with shape [B, T_decoder, d_m]\n", " encoder_mask: Mask to be applied, with shape [T_encoder, T_encoder]. If None, masking will not be applied.\n", " decoder_mask: Mask to be applied, with shape [T_decoder, T_decoder]. If None, masking will not be applied.\n", " return_att_weight: Whether to return the attention weights.\n", " '''\n", "\n", " encoder_out = # FINISH ME \n", " attention_input = encoder_out[0] if return_weights else encoder_out\n", " decoder_out = # FINISH ME\n", " logits = decoder_out[0] if return_weights else decoder_out\n", "\n", " return logits if not return_weights else (logits, encoder_out[1], decoder_out[1]) " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "qW6MLaDGYXgv" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "\n", "\n", "class Transformer(hk.Module):\n", " \"\"\"A full transformer encoder-decoder architecture\"\"\"\n", "\n", " def __init__(self, num_heads, num_layers, d_m, widening_factor=4, name=None):\n", " super().__init__(name=name)\n", " self.num_layers = num_layers\n", " self.num_heads = num_heads\n", "\n", " self.encoder = TransformerEncoder(num_heads, num_layers, d_m, widening_factor)\n", " self.decoder = TransformerDecoder(num_heads, num_layers, d_m, widening_factor)\n", "\n", " def __call__(\n", " self, X_encoder, X_decoder, encoder_mask, decoder_mask, return_weights\n", " ):\n", " encoder_out = self.encoder(X_encoder, encoder_mask, return_weights)\n", " attention_input = encoder_out[0] if return_weights else encoder_out\n", " decoder_out = self.decoder(\n", " X_decoder, attention_input, decoder_mask, return_weights\n", " )\n", " logits = decoder_out[0] if return_weights else decoder_out\n", "\n", " return (\n", " logits if not return_weights else (logits, encoder_out[1], decoder_out[1])\n", " )" ] }, { "cell_type": "markdown", "metadata": { "id": "u3WZyV_s54_R" }, "source": [ "If everything is correct, then if we run the code below, everything should run without any issues." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "LbRxqe_lfRIq" }, "outputs": [], "source": [ "B, T, d_m, N = 18, 32, 16, 8\n", "\n", "# run this to test if your code is running\n", "def tranformer(\n", " sequences,\n", " num_heads=1,\n", " num_layers=1,\n", " widening_factor=4,\n", " d_m=d_m,\n", " return_weights=True,\n", "):\n", " transform = Transformer(num_heads, num_layers, d_m, widening_factor)\n", " mask = jnp.tril(np.ones((sequences.shape[1], sequences.shape[1])))\n", " return transform(sequences, sequences, None, mask, return_weights)\n", "\n", "\n", "tranformer = hk.transform(tranformer)\n", "\n", "# initialise module and get dummy output\n", "key = jax.random.PRNGKey(42)\n", "X = jax.random.normal(key, [B, T, d_m])\n", "params = tranformer.init(\n", " key, X, num_heads=1, num_layers=1, widening_factor=4, d_m=d_m, return_weights=True\n", ")\n", "\n", "# extract output from decoder\n", "logits, encoder_att_weights, decoder_att_weights = tranformer.apply(\n", " params,\n", " key,\n", " X,\n", " num_heads=1,\n", " num_layers=1,\n", " widening_factor=4,\n", " d_m=d_m,\n", " return_weights=True,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "BLeXyXNE5qq9" }, "source": [ "As a final sanity check, we can see that our attention weights behave as expected for now. The encoder weights can attend to all input sequences, and our decoder only attends to previous tokens." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "h0PNKe1r3O9H" }, "outputs": [], "source": [ "fig, ax = plt.subplots(1, 2, figsize=(10, 5))\n", "plt.suptitle(\"Decoder attention weights (left) vs Encoder attention weights(right\")\n", "sns.heatmap(encoder_att_weights[0, 0, 0, ...], ax=ax[0], cmap=\"Blues\")\n", "sns.heatmap(decoder_att_weights[0, 0, 0, ...], ax=ax[1], cmap=\"Blues\")\n", "fig.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "_bqOml7HYNmm" }, "source": [ "### Training our model to invert sentences" ] }, { "cell_type": "markdown", "metadata": { "id": "M-f_jnA2P_k5" }, "source": [ "To showcase the encoder-decoder transformer model we have just created, we will train it to reverse the order of an input string. For example:\n", "\n", "- *Input*: \"Look at me, I am reversed.\"\n", "- *Output*: \"reversed. am I me, at Look\"\n", "\n", "Some might even say a little Yoda simulator ;) " ] }, { "cell_type": "markdown", "metadata": { "id": "B3e4e_vSP8qM" }, "source": [ "#### Creating our dataset - optional, but run the code\n", "\n", "We will use the tinyShakespeare hosted by Andrej Karpathy [here](https://github.com/karpathy/char-rnn)." ] }, { "cell_type": "markdown", "metadata": { "id": "IKtkOftcQijr" }, "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "yw7DnRaUP8Hj" }, "outputs": [], "source": [ "# Download data set\n", "! wget https://raw.githubusercontent.com/karpathy/char-rnn/master/data/tinyshakespeare/input.txt -O input.txt" ] }, { "cell_type": "markdown", "metadata": { "id": "RldPc6ZOTDnP" }, "source": [ "Next, we need to build a dataset class that will return a sample of text from tinyShakespear and the reversed version of the sentence. For now, do not worry too much about how this class works. It is just a way to iteratively run over the dataset and randomly sample snippets of text for an \"infinite\" number of steps.\n", "\n", "Another critical step to note is that we tokenize the data at a char level. In other words, all text is split and encoded to a unique ASCII value, with 128 unique values. The model will thus receive a sequence of integers. For each ASCII character, it will look learn an embedding, which it looks up in a table of vectors." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "W3N12LcdTV7p" }, "outputs": [], "source": [ "BREAK_ORDS = (ord(\" \"), ord(\"\\n\"), ord(\"\\t\"), ord(\".\"))\n", "\n", "\n", "def ord_to_char(list_of_ords):\n", " \"\"\"Format ascii np.array to char\"\"\"\n", " return \"\".join([chr(o) for o in list_of_ords])\n", "\n", "\n", "class AsciiDatasetForInversionTask:\n", " \"\"\"In-memory dataset of a single-file ASCII dataset for inversion task.\"\"\"\n", "\n", " def __init__(self, path: str, batch_size: int, sequence_length: int):\n", " \"\"\"Load a single-file ASCII dataset in memory.\"\"\"\n", " self.vocab_size = 128\n", " self._batch_size = batch_size\n", "\n", " with open(path, \"r\") as f:\n", " corpus = f.read()\n", "\n", " if not corpus.isascii():\n", " raise ValueError(\"Loaded corpus is not ASCII.\")\n", "\n", " if \"\\0\" in corpus:\n", " # Reserve 0 codepoint for pad token.\n", " raise ValueError(\"Corpus must not contain null byte.\")\n", "\n", " # Tokenize by taking ASCII codepoints.\n", " corpus = np.array([ord(c) for c in corpus if c != \"\\n\"]).astype(np.int32)\n", " assert np.min(corpus) > 0\n", " assert np.max(corpus) < self.vocab_size # Double-checking ASCII codepoints.\n", "\n", " crop_len = sequence_length + 1\n", " num_batches, ragged = divmod(corpus.size, batch_size * crop_len)\n", " if ragged:\n", " corpus = corpus[:-ragged]\n", " corpus = corpus.reshape([-1, crop_len])\n", "\n", " if num_batches < 10:\n", " raise ValueError(\n", " f\"Only {num_batches} batches; consider a shorter \"\n", " \"sequence or a smaller batch.\"\n", " )\n", "\n", " self._ds = AsciiDatasetForInversionTask._infinite_shuffle(\n", " corpus, batch_size * 10\n", " )\n", "\n", " def __next__(self):\n", " \"\"\"Yield next mini-batch.\"\"\"\n", " batch = [next(self._ds) for _ in range(self._batch_size)]\n", " batch = np.stack(batch)\n", " # Create the language modeling observation/target pairs.\n", " return dict(\n", " input=batch[:, :], target=AsciiDatasetForInversionTask.invert_batch(batch)\n", " )\n", "\n", " def __iter__(self):\n", " return self\n", "\n", " @staticmethod\n", " def invert_batch(batch):\n", " inverted_batch = []\n", " for instance in batch:\n", " inverted_batch.append([])\n", " last_seen_space_index = len(instance)\n", " for i in range(len(instance) - 1, -1, -1):\n", " if instance[i] in BREAK_ORDS:\n", " inverted_batch[-1].extend(instance[i + 1 : last_seen_space_index])\n", " inverted_batch[-1].append(instance[i])\n", " last_seen_space_index = i\n", " inverted_batch[-1].extend(instance[i:last_seen_space_index])\n", " return np.array(inverted_batch)\n", "\n", " @staticmethod\n", " def _infinite_shuffle(iterable, buffer_size):\n", " \"\"\"Infinitely repeat and shuffle data from iterable.\"\"\"\n", " ds = itertools.cycle(iterable)\n", " buf = [next(ds) for _ in range(buffer_size)]\n", " random.shuffle(buf)\n", " while True:\n", " item = next(ds)\n", " idx = random.randint(0, buffer_size - 1) # Inclusive.\n", " result, buf[idx] = buf[idx], item\n", " yield result" ] }, { "cell_type": "markdown", "metadata": { "id": "IfJR9CMoUwzD" }, "source": [ "Now that we can load data and return infinite batches, lets see it in action." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Z2pTRomeUtqB" }, "outputs": [], "source": [ "batch_size = 2\n", "seq_length = 32\n", "train_dataset = AsciiDatasetForInversionTask(\"input.txt\", batch_size, seq_length)\n", "vocab_size = train_dataset.vocab_size\n", "\n", "batch = next(train_dataset)\n", "\n", "for obs, target in zip(batch[\"input\"], batch[\"target\"]):\n", " print(\"-\" * 10, \"Input\", \"-\" * 11)\n", " print(\"TEXT:\", ord_to_char(obs))\n", " print(\"ASCII:\", obs)\n", " print(\"-\" * 10, \"Target\", \"-\" * 10)\n", " print(\"TEXT:\", ord_to_char(target))\n", " print(\"ASCII:\", target)\n", "\n", "\n", "print(f\"\\n Total vocabulary size: {vocab_size}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "K1YoKTusQdJU" }, "source": [ "#### Training objective" ] }, { "cell_type": "markdown", "metadata": { "id": "L4z7OBdEZAvx" }, "source": [ "Given an input sequence, which is a sequence of ASCII characters in this specific use case, our model should learn to take that sequence and reverse it. \n", "\n", "This can be framed as a sequence-to-sequence problem, where the decoder should predict the reversed input sequence, given the processed information from the encoder and the original sequence.\n", "\n", "The loss function will then be the sum of the loss over each token. The loss will be [cross-entropy](https://en.wikipedia.org/wiki/Cross_entropy), where the ASCII token is the correct label to predict. Take note, that because the sequence can be padded during training, the loss is also masked to ignore the result on padded tokens.\n", "\n", "\"drawing\"" ] }, { "cell_type": "markdown", "metadata": { "id": "oCVb0hylgN3o" }, "source": [ "**Code task**: Implimement the cross-entropy loss function below. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "oBao6oI2ZDVp" }, "outputs": [], "source": [ "def sequence_loss_fn(logits, data):\n", " '''\n", " Compute the cross-entropy loss between predict token ID and true ID\n", "\n", " Args:\n", " logits: A array of shape [batch_size, sequence_length, vocab_size]\n", " data: Batch of data that was used to create logits, This will have been generated by the dataset.\n", "\n", " Returns:\n", " loss: A scalar value representing the mean batch loss\n", " '''\n", "\n", " targets = jax.nn.one_hot(data['target'], 128)\n", " assert logits.shape == targets.shape\n", "\n", " mask = jnp.greater(data['input'], 0)\n", " loss = #FINSIH ME\n", " return loss" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "eehJHUOKna8a" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "data = {\"input\": jnp.array([[0, 2, 0]]), \"target\": jnp.array([[0, 2, 0]])}\n", "key = jax.random.PRNGKey(42)\n", "X = jax.random.normal(key, [1, 3, 128])\n", "loss = sequence_loss_fn(X, data)\n", "real_loss = jnp.array(5.2058086)\n", "assert jnp.allclose(real_loss, loss), \"Not returning the correct value\"\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "vX38mblNhV4k" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "def sequence_loss_fn(logits, data):\n", " \"\"\"Compute the loss on data wrt params.\"\"\"\n", " targets = jax.nn.one_hot(data[\"target\"], 128)\n", " assert logits.shape == targets.shape\n", " mask = jnp.greater(data[\"input\"], 0)\n", " loss = -jnp.sum(targets * jax.nn.log_softmax(logits), axis=-1)\n", " loss = jnp.sum(loss * mask) / jnp.sum(mask)\n", "\n", " return loss" ] }, { "cell_type": "markdown", "metadata": { "id": "4EKILfw9Au6X" }, "source": [ "**Viewing it as an generative task**" ] }, { "cell_type": "markdown", "metadata": { "id": "c5R5y-JEA1ra" }, "source": [ "We can also solve this problem by iteratively generating a ASCII id, based on the previously generated ASCII's and input sequence. Notice here that the first token being fed into the decoder is a unique character, ``, which is used to kickstart the process. This unique character we will represent with token ID $191$. \n", "\n", "\\\n", "\"drawing\"\n", "\n", "We are in essence, then trying to model the distribution: \n", "\n", "$$\n", "P\\left(y_{1}, y_{2}, \\ldots, y_{n}, \\mid x\\right)=\\prod_{t=1}^{n} p\\left(y_{t} \\mid y_{\n", "\tLoading...\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "rectkTs9iFHg" }, "source": [ "## **Hugging Face** - OPTIONAL (but recommended)" ] }, { "cell_type": "markdown", "metadata": { "id": "qFBw8kRx-4Mk" }, "source": [ "\n", "\n", "\n", "\n", "\n", "[Hugging Face](https://huggingface.co/) is a startup founded in 2016 and, in their own words: \"are on a mission to democratize good machine learning, one commit at a time.\"\n", "\n", "They have developed various open-source packages and allow users to easily interact with a large corpus of pretrained transformer models (across all modalities) and datasets to train or fine-tune pre-trained transformers.\n", "\n", "Their software is used widely in industry and research. The following sections show how one can interact with their various features, access SOTA models, and train your own model.\n", "\n", "This is an optional section for the practical. Still, working through it in the practical or afterwards is highly recommended. Understanding Hugging Face will allow you to build a very quick proof of concept system to test out various hypotheses, whereafter, the system you build can simply be used, or a new system can be developed with the knowledge that the original idea has merit. \n", "\n", "It should also be noted that various languages are still severely under-resourced, even in this ecosystem. See it as an opportunity also to see where the gaps are and how we as a community can reduce this gap. " ] }, { "cell_type": "markdown", "metadata": { "id": "Wq_pX3XTefu3" }, "source": [ "### Datasets Package - `Beginner`" ] }, { "cell_type": "markdown", "metadata": { "id": "Tn-vfzXyehPu" }, "source": [ "Along with all the models being available, datasets are also hosted on the Hugging Face hub. One can visit the [dataset hub](https://huggingface.co/datasets), and browse for interesting datasets and very easilly access it through the [datasets](https://github.com/huggingface/datasets) package.\n", "\n", "Let's say for instance we want to build a text intent classification model. What we do then is to go to the link above, and use the search tags to find a dataset that seems like a good fit for us. By doing this, we find the[`banking77`](https://huggingface.co/datasets/banking77) dataset. Below we then load in this dataset.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4StYbstjeitO" }, "outputs": [], "source": [ "# just for notebook cleanliness\n", "from datasets.utils.logging import set_verbosity_error\n", "from datasets import load_dataset\n", "\n", "dataset = load_dataset(\"banking77\")\n", "print(dataset)" ] }, { "cell_type": "markdown", "metadata": { "id": "pMh4aox5eh8h" }, "source": [ "Here we see that the API returns a variable of DatasetDict type, which contains our dataset that has split into two datasets, i.e. train and test splits. We also see that each of these datasets contains `text` and `label` features. \n", "\n", "Let's investigate how the data looks." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "9qFr15bkemIu" }, "outputs": [], "source": [ "dataset[\"train\"]" ] }, { "cell_type": "markdown", "metadata": { "id": "EzyH1lNWen3X" }, "source": [ "We see that our dataset splits are of type Dataset." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "zEQFsm0HepIm" }, "outputs": [], "source": [ "train_intents = dataset[\"train\"]\n", "test_intents = dataset[\"test\"]\n", "\n", "print(\"Text: \", train_intents[\"text\"][0])\n", "print(\"Label: \", train_intents[\"label\"][0])" ] }, { "cell_type": "markdown", "metadata": { "id": "N7--kHR7eqej" }, "source": [ "Sometimes we want to work with only a subset of the dataset and we thus need to filter out the rest. Luckily, the datasets have an easy-to-use filter functionality. Below we filter to only see text which relates to label 11." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ehbEghPSetvI" }, "outputs": [], "source": [ "# we are only the first 5 text samples\n", "train_intents.filter(lambda data: data[\"label\"] == 1)" ] }, { "cell_type": "markdown", "metadata": { "id": "IvcEMvEDevSn" }, "source": [ "We can also apply a function to each data item by mapping the function to each \"row\" in the dataset." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "q-0tUb6sewij" }, "outputs": [], "source": [ "# creating small dataset as example of using select\n", "example_dataset = train_intents.select(range(10))\n", "\n", "# printing first character of a text example\n", "example_dataset.map(lambda example: print(example[\"text\"][0]));" ] }, { "cell_type": "markdown", "metadata": { "id": "xgt4MFR4ex14" }, "source": [ "Using the map function, we can also add a new column." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "6gtdQeKVezT4" }, "outputs": [], "source": [ "def add_sentence_len(example):\n", " example[\"lenght\"] = len(example[\"text\"])\n", " return example\n", "\n", "\n", "# add new column\n", "example_dataset = example_dataset.map(lambda example: add_sentence_len(example))\n", "\n", "print(example_dataset)\n", "print(\"New data:\", example_dataset[\"lenght\"])" ] }, { "cell_type": "markdown", "metadata": { "id": "nZ_qP_Jqe0r5" }, "source": [ "**Code Task**: \n", "- We want to build a classifier out of this. We need to investigate the distribution of classes to see if our dataset is balanced or not. Write code that generates a dictionary containing the count of each class for both the train and test dataset.\n", "- Filter out classes with less than 150 classes in the training set, and ensure only the remaining classes are in the test set. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "42qddlWve2Zy" }, "outputs": [], "source": [ "# task 1\n", "unique_labels = # FINISH ME\n", "total_unique_labels = # FINISH ME\n", "\n", "train_counts = # FINISH ME\n", "test_counts = # FINISH ME\n", "\n", "# task 2\n", "passed_labels = [label for label, count in train_counts.items() if count>=150]\n", "train_intents = # FINISH ME\n", "test_intents = # FINISH ME" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "jVHd4B1MnsNa" }, "outputs": [], "source": [ "# @title Run me to test your code\n", "real_total_unique_labels = 77\n", "test_counts_25 = 153\n", "num_test_rows = 960\n", "\n", "assert total_unique_labels == real_total_unique_labels, \"Task 1 failed\"\n", "assert test_counts_25 == test_counts[25], \"Task 2 failed\"\n", "assert num_test_rows == test_intents.num_rows, \"Task 2 failed\"\n", "\n", "print(\"It seems correct. Look at the answer below to compare methods.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "ABrM5iAIe4YF" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!'). This answer will be based on our previous answer.\n", "\n", "# # task 1\n", "unique_labels = np.unique(train_intents[\"label\"])\n", "total_unique_labels = len(unique_labels)\n", "\n", "train_counts = {label: sum(label == train_intents[\"label\"]) for label in unique_labels}\n", "test_counts = {label: sum(label == train_intents[\"label\"]) for label in unique_labels}\n", "\n", "# task 2\n", "passed_labels = [label for label, count in train_counts.items() if count >= 150]\n", "train_intents = train_intents.filter(lambda data: data[\"label\"] in passed_labels)\n", "test_intents = test_intents.filter(lambda data: data[\"label\"] in passed_labels)" ] }, { "cell_type": "markdown", "metadata": { "id": "hz4U0IZ8e34k" }, "source": [ "**Other modalities**\n", "\n", "Text is not the only data that can be accessed, audio and image data can be accessed just as easily." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "aPCHECJQiFU7" }, "outputs": [], "source": [ "from PIL import Image\n", "from io import BytesIO\n", "\n", "dataset = load_dataset(\"cgarciae/cartoonset\")\n", "Image.open(BytesIO(dataset[\"train\"][\"img_bytes\"][231]))\n", "\n", "# # free up a bit of space\n", "del dataset" ] }, { "cell_type": "markdown", "metadata": { "id": "iL4j1JZse8wi" }, "source": [ "### Transformers Package" ] }, { "cell_type": "markdown", "metadata": { "id": "4bKe1WDEe9eX" }, "source": [ "Now that we have a way of accessing data, let's shift our intention to accessing the hundreds of pretrained transformers." ] }, { "cell_type": "markdown", "metadata": { "id": "Po9R6qiSe_HT" }, "source": [ "#### Pipeline - `Beginner`" ] }, { "cell_type": "markdown", "metadata": { "id": "tcK8-KpZfA7L" }, "source": [ "The easiest method to access a vast range of pre-trained models and use tasks is through the `pipeline` API.\n", "\n", "Pipelines group together a pretrained model found on their models hub with the preprocessing that was used during that model's training. To use the pipeline, one must import it from the [transformers](https://github.com/huggingface/transformers) library and specify the task and model you want.\n", "\n", "For a list of models, visit [this](https://huggingface.co/models) page that allows you to search through all models currently on the hub." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ZjTFOuylfDKH" }, "outputs": [], "source": [ "# When calling the function for the first time, the model, and its tokenizer, will be automatically downloaded\n", "sentiment_model = pipeline(\n", " task=\"sentiment-analysis\", model=\"distilbert-base-uncased-finetuned-sst-2-english\"\n", ")\n", "print(sentiment_model(\"I love this practical!\"))\n", "print(sentiment_model(\"I hate this practical!\"))\n", "\n", "# passing more than one sentence\n", "sentence_batch = [\n", " \"This is much quicker and easier to build a POC with than training everything from scratch\",\n", " \"It really hurts when I stub my toe\",\n", " \"I want to get ice cream\",\n", "]\n", "print(\"\\nBatch output:\")\n", "sentiment_model(sentence_batch)" ] }, { "cell_type": "markdown", "metadata": { "id": "qNYlFKWNfCL7" }, "source": [ "Notice that the first sentence we process in our batch of sentences is predicted to be Negative, with a relatively low score of 0.51, even though we feel this should be more neutral? The low score indicates this and we can interpret that when scores are low the actual label was meant to be Neutral, but this model was trained to do a binary prediction only.\n", "\n", "This model you just used is a Distellbert model, which was trained on *8 16GB V100s for 90 hours*, and you could use it as quickly as that.\n", "\n", "**Code Task:** Apply the zero-shot model to all of our test intent chatbot examples, extracting the predicted sentiment label into a new column, using the map function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "00lgxVY8fKPw" }, "outputs": [], "source": [ "def get_sentiment(example):\n", " # FINISH ME\n", " return sentiment\n", "\n", "train_intents = # FINISH ME\n", "test_intents = # FINISH ME" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "KY_pOGR6fLYJ" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!'). This answer will be based on our previous answer.\n", "def get_sentiment(example):\n", " example[\"sentiment\"] = sentiment_model(example[\"text\"])[0][\"label\"]\n", " return example\n", "\n", "\n", "test_intents = test_intents.map(lambda example: get_sentiment(example))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "txcTUTbUfMnT" }, "outputs": [], "source": [ "plt.title(\"Count of positive versus negative text inputs\")\n", "sns.countplot(test_intents[\"sentiment\"]);" ] }, { "cell_type": "markdown", "metadata": { "id": "Tg3ti5iEfGIv" }, "source": [ "**Group code task (optional depending on time)**: (Hint: use the tags when searching the [model hub](https://huggingface.co/models))\n", "- Search for other pipeline tasks available, and discuss with your friend what you did and found. ([Hint](https://huggingface.co/docs/transformers/v4.20.1/en/main_classes/pipelines#pipelines))\n", "- Play with different language models and see how they perform" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "jeMfN56EfS7c" }, "outputs": [], "source": [ "your_pipeline = pipeline(\n", " task=\"text-generation\", # CHANGE ME TO OTHER STUFF\n", " model=\"gpt2\", # CHANGE ME AS WELL\n", ")\n", "text = \"I like ice-cream and \"\n", "your_pipeline(text)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "DSu5FY7CfRJ6" }, "outputs": [], "source": [ "# freeing up memory for future tasks\n", "del your_pipeline\n", "del sentiment_model" ] }, { "cell_type": "markdown", "metadata": { "id": "QSJ-Fh49fU-9" }, "source": [ "#### Training a chatbot intent model - `Advanced`" ] }, { "cell_type": "markdown", "metadata": { "id": "LHzc2lpOfWVa" }, "source": [ "If you want more control than the pipeline API provides you, you can also use the predefined model classes.\n", "\n", "To showcase this, we will be training a custom model on top of a large transformer.\n", "\n", "To set the scene, let's say for instance that we want to train an intent model that can be used along with a chatbot. This intent model will be responsible to predict the true underlying intent found within the text.\n", "\n", "Your imaginary friend has built an intent model using TF-IDF techniques, but you think that you can use transformers for this task and that it will perform better.\n", "\n", "You have heard about the famous [DistilBERT](https://arxiv.org/pdf/1910.01108.pdf) model that was trained to extract text features, and you think this model can be a perfect fit to extract features for your intent model, as it is an encoder-only transformer architecture that produces strong token representations.\n", "\n", "To start your training process, you have two steps to follow:\n", "\n", "* Get the tokenizer\n", "* Get the model" ] }, { "cell_type": "markdown", "metadata": { "id": "-MBCwSG5i38v" }, "source": [ "###### **Getting the tokenizer**\n", "\n", "A tokenizer is responsible for preprocessing text into a format that is understandable to the model. It is very important to use the same tokenizer as the model you will be finetuning. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "f7ufSoUxi4uP" }, "outputs": [], "source": [ "# we want the Distilbert model, thus we import the correct tokenizer the model train\n", "from transformers import DistilBertTokenizer\n", "\n", "# we specify a specif distilbert\n", "model_name = \"distilbert-base-uncased\"\n", "tokenizer = DistilBertTokenizer.from_pretrained(model_name)\n", "\n", "print(\"Tokenizer output:\")\n", "output = tokenizer(\"This is example text\")\n", "print(output)\n", "\n", "print(\"Tokens converted back to string\")\n", "print(tokenizer.decode(output[\"input_ids\"]))" ] }, { "cell_type": "markdown", "metadata": { "id": "zW_VglCQfXfn" }, "source": [ "Looking at the output from the above, we that the special tokens are the `[CLS]` and `[SEP]` tokens. This is important to note, as we will be using the final output of the model for the `[CLS]` token when predicting the intent. \n", "\n", "This is a very common thing to do, where the token that indicates the start of the sentence is used when making predictions on the sentence. Seeing as our system is built in Jax, we will need to tell the tokenizer to return the data in the correct format.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "eR0yqg-mfZjF" }, "outputs": [], "source": [ "token_batch = tokenizer(\n", " [\n", " \"We are very happy to show you the 🤗 Transformers library.\",\n", " \"We hope you don't hate it.\",\n", " ],\n", " padding=True,\n", " truncation=True,\n", " max_length=512,\n", " return_tensors=\"jax\",\n", ")\n", "print(token_batch)" ] }, { "cell_type": "markdown", "metadata": { "id": "pqBOZ4YLfa0H" }, "source": [ "Seeing as we want to use these tokens throughout our training process and for processing the embeddings, let's map the tokenizer output to a new column for our train and test splits.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "hyDoAqXvfc_K" }, "source": [ "##### **Getting the transformer and generating embeddings**" ] }, { "cell_type": "markdown", "metadata": { "id": "sxSkOij_fexe" }, "source": [ "Now that we can encode our text quickly into data that our transformer can process, let's gather and download the pretrained transformer model from the hub and generate representations for each text example.\n", "\n", "As was mentioned above, we are interested for now only in the `[CLS]` token embedding. One can of course look at averaging overall token (being sure to only use tokens that are not masked) and see how it compares. We leave this as an exercise for the reader to compare how it changes the performance of the model.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "DFhSfCOKfgA5" }, "outputs": [], "source": [ "from transformers import FlaxDistilBertModel\n", "\n", "# we use FlaxDistillBertModel because we are in the JAX world\n", "distell_bert_model = FlaxDistilBertModel.from_pretrained(model_name)\n", "\n", "tokens = tokenizer([train_intents[0][\"text\"]])\n", "embeddings = distell_bert_model(**tokens)[0][:, 0]\n", "embeddings.shape" ] }, { "cell_type": "markdown", "metadata": { "id": "GKgHz1_tfh10" }, "source": [ "Applying one by one is extremely slow, so lets rather infer in batches, using the `batch` flag in the map function. It is important here that the function that is being mapped works with batches and return the data in the correct format, i.e a dictionary with the new column name." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "hPkm_JdsfjIX" }, "outputs": [], "source": [ "def get_embedding(batch):\n", "\n", " text = batch[\"text\"]\n", " tokens = tokenizer(\n", " text,\n", " padding=True,\n", " truncation=True,\n", " max_length=50,\n", " return_tensors=\"jax\",\n", " )\n", "\n", " cls_embeddings = np.array(distell_bert_model(**tokens)[0][:, 0])\n", " return {\"embedding\": cls_embeddings}\n", "\n", "\n", "train_intents = train_intents.map(lambda batch: get_embedding(batch), batched=True)\n", "test_intents = test_intents.map(lambda batch: get_embedding(batch), batched=True)" ] }, { "cell_type": "markdown", "metadata": { "id": "dDcAZzm3fkfm" }, "source": [ "To see whether these embeddings are in any way useful, let's plot a few projected embeddings and their labels and see how it looks." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "bbCy-UK7flz9" }, "outputs": [], "source": [ "# Sampling to get a clear picture with less data.\n", "sample_labels = [5, 11, 20, 28, 34, 45, 51, 76]\n", "plot_data = train_intents.filter(lambda data: data[\"label\"] in sample_labels)\n", "plot_projected_embeddings(plot_data[\"embedding\"], [str(l) for l in plot_data[\"label\"]])" ] }, { "cell_type": "markdown", "metadata": { "id": "Z8agDZwufoFR" }, "source": [ "We see there are clear clusters forming, but there is definitely still some work that can be done here.\n", "\n", "Let's thus train a non-linear model on this data to try and find something that separates this intent.\n", "\n", "We have a choice really of what we want to do, given data our new dataset can just be interpreted as a database. We can either train another neural network, or we can train anything ranging from a logistic regression model to an XGBoost model.\n", "\n", "Let's start by training a neural network, as we are at the deep learning indaba ;)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "KohN7yfbfmOP" }, "outputs": [], "source": [ "# extracting data into more usable state for all methods\n", "from sklearn.preprocessing import LabelEncoder\n", "\n", "le = LabelEncoder() # labels should be from 0 - N\n", "\n", "train_embeddings = train_intents[\"embedding\"]\n", "train_labels = jnp.array(le.fit_transform(train_intents[\"label\"]))\n", "test_embeddings = test_intents[\"embedding\"]\n", "test_labels = jnp.array(le.transform(test_intents[\"label\"]))" ] }, { "cell_type": "markdown", "metadata": { "id": "7LxKYDyYfr3c" }, "source": [ "To load batches of embedding, we feed our extracted embeddings and labels into tensorflow datasets." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "og_F4Hyrfquy" }, "outputs": [], "source": [ "import tensorflow as tf\n", "\n", "# creating tensorflow dataset loaders\n", "train_ds = tf.data.Dataset.from_tensor_slices((train_embeddings, train_labels))\n", "train_ds = train_ds.shuffle(\n", " buffer_size=len(train_embeddings), reshuffle_each_iteration=True\n", ").batch(64)\n", "\n", "# we do not want to shuffle test data\n", "test_ds = tf.data.Dataset.from_tensor_slices((test_embeddings, test_labels))\n", "test_ds = test_ds.batch(64)" ] }, { "cell_type": "markdown", "metadata": { "id": "TW5-9GbNf1nX" }, "source": [ "##### **Training intent model**" ] }, { "cell_type": "markdown", "metadata": { "id": "F-UfWogVf3zc" }, "source": [ "Even though the methods below only show us updating the weights or parameters of downstream models, there is no reason that one can not finetune the entire Distilbert model on the new dataset and task. This will just require much more compute and in many cases the extra costs are not linearly correlated with improved performance. This is why in this practical, why only train downstream models utilising the pretrained embeddings." ] }, { "cell_type": "markdown", "metadata": { "id": "ekey34T1f5jK" }, "source": [ "###### MLP" ] }, { "cell_type": "markdown", "metadata": { "id": "mFetHB7tf641" }, "source": [ "Our intent model will be 2 layer MLP. \n", "\n", "**Code task:** Finish the 2 layer MLP Haiku Module." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Ie5_Hf8Ff75r" }, "outputs": [], "source": [ "# build a training model\n", "\n", "class IntentClassifier(hk.Module):\n", " \"\"\"A MLP which predicts intent from transformer embeddings\"\"\"\n", "\n", " def __init__(self):\n", " super().__init__()\n", " self._init_scale = .5\n", " self.number_classes = #FILL ME IN\n", "\n", " def __call__(self, embeddings):\n", " embedding_size = # FILL ME IN\n", " initializer = hk.initializers.VarianceScaling(self._init_scale)\n", " projection_layer = hk.Linear(embedding_size, w_init=initializer)\n", " classification_layer = # FILL ME IN\n", "\n", " projections = jax.nn.relu(projection_layer(embeddings))\n", "\n", " logits = # FILL ME IN\n", " return logits" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "Kjq62LOFf9Ik" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!'). This answer will be based on our previous answer.\n", "\n", "# build a training model\n", "\n", "\n", "class IntentClassifier(hk.Module):\n", " \"\"\"A MLP which predicts intent from transformer embeddings\"\"\"\n", "\n", " def __init__(self):\n", " super().__init__()\n", " self._init_scale = 0.5\n", " self.number_classes = 38\n", "\n", " def __call__(self, embeddings):\n", " embedding_size = embeddings.shape[-1]\n", " initializer = hk.initializers.VarianceScaling(self._init_scale)\n", " projection_layer = hk.Linear(embedding_size, w_init=initializer)\n", " classification_layer = hk.Linear(self.number_classes, w_init=initializer)\n", "\n", " projections = jax.nn.relu(projection_layer(embeddings))\n", " logits = classification_layer(projections)\n", " return logits" ] }, { "cell_type": "markdown", "metadata": { "id": "bS8bmMangAOh" }, "source": [ "Next we build the Haiku training loop." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "FZp6hQMNf_Dv" }, "outputs": [], "source": [ "# initiliase model and optmiser\n", "\n", "\n", "def classify_intent(embeddings):\n", " model = IntentClassifier()\n", " return model(embeddings)\n", "\n", "\n", "classify_intent = hk.transform(classify_intent)\n", "\n", "# initialise model\n", "rng = jax.random.PRNGKey(42)\n", "x = np.zeros([1, 768])\n", "params = classify_intent.init(rng, x)\n", "\n", "optimiser = optax.adam(1e-3)\n", "opt_state = optimiser.init(params)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "UwY8XsRMgEET" }, "outputs": [], "source": [ "# calculate loss\n", "key = jax.random.PRNGKey(42)\n", "\n", "\n", "def loss(params, batch):\n", " \"\"\"Cross-entropy classification loss\"\"\"\n", " batch_size = len(batch[\"labels\"])\n", " logits = classify_intent.apply(params, key, batch[\"embeddings\"])\n", " labels = jax.nn.one_hot(batch[\"labels\"], num_classes=38)\n", " log_likelihood = jnp.sum(labels * jax.nn.log_softmax(logits))\n", " return -log_likelihood / batch_size\n", "\n", "\n", "# update weights\n", "@jax.jit\n", "def update(params, opt_state, batch):\n", " # get data neded for training\n", " grads = jax.grad(loss)(params, batch)\n", " updates, opt_state = optimiser.update(grads, opt_state)\n", " params = optax.apply_updates(params, updates)\n", " return params, opt_state\n", "\n", "\n", "# calculate accuracy per batch\n", "@jax.jit\n", "def accuracy(params, batch):\n", " predictions = classify_intent.apply(params, key, batch[\"embeddings\"])\n", " print(predictions)\n", " return jnp.mean(jnp.argmax(predictions, axis=-1) == batch[\"labels\"])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "EOY2yfJun2Nd" }, "outputs": [], "source": [ "# Training & evaluation loop.\n", "from tqdm import tqdm\n", "\n", "for epoch in range(20):\n", "\n", " train_accs = 0\n", " total_calcs = 0\n", " for batch in tqdm(train_ds, desc=\"Train steps\", leave=False):\n", " batch = {\"embeddings\": jnp.array(batch[0]), \"labels\": jnp.array(batch[1])}\n", " params, opt_state = update(params, opt_state, batch)\n", " train_accs += accuracy(params, batch)\n", " total_calcs += 1\n", "\n", " if epoch % 5 == 0:\n", " print(f\"At epoch: {epoch}\")\n", " train_accs /= round(total_calcs, 2)\n", "\n", " test_accs = 0\n", " total_calcs = 0\n", "\n", " for batch in tqdm(test_ds, desc=\"Test steps\", leave=False):\n", " batch = {\"embeddings\": jnp.array(batch[0]), \"labels\": jnp.array(batch[1])}\n", " test_accs += accuracy(params, batch)\n", " total_calcs += 1\n", "\n", " test_accs /= round(total_calcs, 2)\n", "\n", " print(f\"\\nTrain accuracy:{train_accs}\")\n", " print(f\"Test accuracy:{test_accs}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "PCAs9gLVgDnq" }, "source": [ "Now that we have a trained MLP that can predict the intent, we need to write code that given new text, will classify an intent. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "OiCROb4lgZhb" }, "outputs": [], "source": [ "def predict_new_text_mlp(text):\n", " embedding = get_embedding({\"text\": [text]})[\"embedding\"]\n", " logits = classify_intent.apply(params, key, embedding)\n", " predicted_intent = jnp.argmax(jax.nn.softmax(logits))\n", " converted_back_intent = le.inverse_transform([predicted_intent])[0]\n", " print(f'Predicted intent for input: \"{text}\" is {int(converted_back_intent)}')\n", "\n", " index = jnp.where(train_labels == predicted_intent)[0]\n", " print(f'Example training data from this class: {train_intents[index][\"text\"][0]}')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "j9o8sN2-gbIw" }, "outputs": [], "source": [ "predict_new_text_mlp(\"Can I get a refund please\")" ] }, { "cell_type": "markdown", "metadata": { "id": "XvyQtDmggcvn" }, "source": [ "###### Logistic regression" ] }, { "cell_type": "markdown", "metadata": { "id": "g5TgD99zgeQO" }, "source": [ "As a final experiment, we will see how a logistic regression model performs against our MLP, and how quick it can be to get very quick results." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "HxVGB2PGggQ4" }, "outputs": [], "source": [ "from sklearn.linear_model import LogisticRegression\n", "from sklearn.preprocessing import normalize\n", "\n", "model = LogisticRegression(max_iter=6000)\n", "model.fit(train_embeddings, train_labels)\n", "y_hat_train = model.predict(train_embeddings)\n", "y_hat_test = model.predict(test_embeddings)\n", "\n", "train_accuracy = jnp.sum(y_hat_train == train_labels) / len(y_hat_train)\n", "test_accuracy = jnp.sum(y_hat_test == test_labels) / len(y_hat_test)\n", "\n", "print(f\"Train accuracy:{train_accuracy}\")\n", "print(f\"Test accuracy:{test_accuracy}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "ZQvBBHhYgkv0" }, "source": [ "As you can see, in just those few lines of code we have coded a logistic regression model that can classify the intent of a given user." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ovi4HNFfgiUc" }, "outputs": [], "source": [ "def predict_new_text_lr(text):\n", " embedding = get_embedding({\"text\": [text]})[\"embedding\"]\n", " predicted_intent = model.predict(embedding)\n", " converted_back_intent = le.inverse_transform([predicted_intent])[0]\n", " print(f'Predicted intent for input: \"{text}\" is {int(converted_back_intent)}')\n", "\n", " index = jnp.where(train_labels == predicted_intent)[0]\n", " print(f'Example training data from this class: {train_intents[index][\"text\"][0]}')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "cJMvLsDEgmj_" }, "outputs": [], "source": [ "predict_new_text_lr(\"Can I please get a refund\")" ] }, { "cell_type": "markdown", "metadata": { "id": "fV3YG7QOZD-B" }, "source": [ "## Conclusion\n", "**Summary:**\n", "\n", "Welcome to the end of the practical! Let us list everything you have accomplished:\n", "\n", "* Learned about attention and how it improved sequence-to-sequence modeling.\n", "* Implemented your very own implementation of MHA\n", "* Learned about the inner working of a transformer, building each block on your own\n", "* Combined all your work into a single transformer, which you trained to reverse a sequence.\n", "* Learned about Huggingface and used a pre-trained Roberta model to train your own banking chatbot intent model.\n", "\n", "**Next Steps:** \n", "\n", "Go down the rabbit hole of the references given below.\n", "\n", "**References:** \n", "\n", "Attention section:\n", "* [NLP817](https://www.kamperh.com/nlp817/)\n", "* [Attention is All You Need](https://arxiv.org/abs/1706.03762?amp=1)\n", "* [Attention? Attention!](https://lilianweng.github.io/posts/2018-06-24-attention/)\n", "* [Neural Machine Translation By Jointly Learning to Align and Translate](https://arxiv.org/pdf/1409.0473.pdf)\n", "* [Illustrated word2vec ](https://jalammar.github.io/illustrated-word2vec/)\n", "* [The Illustrated Transformer](https://jalammar.github.io/illustrated-transformer/)\n", "* [Lena Viota Seq2seq and Attention course](https://lena-voita.github.io/nlp_course/seq2seq_and_attention.html)\n", " \n", "Transformers sections:\n", "* [Deepmind Haiku example](https://github.com/deepmind/dm-haiku/tree/main/examples/transformer)\n", "* [Haiku Documentation](https://dm-haiku.readthedocs.io/en/latest/)\n", "* [Hugging Face Preprocess tutorial](https://huggingface.co/docs/transformers/preprocessing)\n", "* [Hugging Face Tokenizer summary ](https://huggingface.co/docs/transformers/tokenizer_summary)\n", "* [BERT](https://arxiv.org/abs/1810.04805)\n", "* [Transformer Architecture: The Positional Encoding](https://kazemnejad.com/blog/transformer_architecture_positional_encoding/)\n", "* [Andrej Karpathy char-rnn repo](https://github.com/karpathy/char-rnn)\n", "\n", "\n", "Transformer papers:\n", "* [Original attention is all you need MLT](https://arxiv.org/abs/1706.03762?amp=1)\n", "* [T5](https://arxiv.org/abs/1910.10683)\n", "* [BART](https://arxiv.org/abs/1910.13461)\n", "* [Bert](https://arxiv.org/abs/1810.04805)\n", "* [RoBERTa](https://arxiv.org/abs/1907.11692)\n", "* [ELECTRA](https://openreview.net/pdf?id=r1xMH1BtvB)\n", "* [GPT-3](https://arxiv.org/abs/2005.14165)\n", "* [CTRL](https://arxiv.org/abs/1909.05858)\n", "* [Transformer-XL](https://arxiv.org/abs/1901.02860)\n", "\n", "For other practicals from the Deep Learning Indaba, please visit [here](https://github.com/deep-learning-indaba/indaba-pracs-2022)." ] }, { "cell_type": "markdown", "metadata": { "id": "o1ndpYE50BpG" }, "source": [ "## Feedback\n", "\n", "Please provide feedback that we can use to improve our practicals in the future." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "OIZvkhfRz9Jz" }, "outputs": [], "source": [ "# @title Generate Feedback Form. (Run Cell)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "oglV4kHMWnIN" }, "source": [ "" ] } ], "metadata": { "accelerator": "GPU", "colab": { "collapsed_sections": [ "6EqhIg1odqg0", "1jWreoeTBUCD", "B3e4e_vSP8qM" ], "name": "attention_and_transformers.ipynb", "provenance": [] }, "gpuClass": "standard", "kernelspec": { "display_name": "Python 3.8.9 64-bit", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.9" }, "vscode": { "interpreter": { "hash": "31f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6" } } }, "nbformat": 4, "nbformat_minor": 0 } ================================================ FILE: practicals/deep_generative_models.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "id": "m2s4kN_QPQVe" }, "source": [ "# **Deep Generative Models**\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "71s4fWbKpWgm" }, "source": [ "\"https://hojonathanho.github.io/diffusion/assets/img/denoising_diffusion_all.png\"" ] }, { "cell_type": "markdown", "metadata": { "id": "jn4LVWI5pbo1" }, "source": [ "\"Open\n", "\n", "© Deep Learning Indaba 2022. Apache License 2.0.\n", "\n", "**Authors:** James Allingham, Javier Antorán, Ruan van der Merwe\n", "\n", "**Introduction:** \n", "\n", "In this practical, we will investigate the fundamentals of generative modelling – a machine learning framework that allows us to learn how to sample new unseen data points that match the distribution of our training dataset. Generative modelling, though a powerful and flexible framework–which has provided many exciting advances in ML–has its own challenges and limitations. This practical will walk you through such challenges and will illustrate how to solve them by implementing a Denoising Diffusion Model (a.k.a. a Score-Based Generative Model), which is the backbone of the recent and exciting [Dalle-2](https://openai.com/dall-e-2/) and [Imagen](https://imagen.research.google/) models that we’ve all seen on [Twitter](https://twitter.com/search?q=%23dalle2%20%23imagen&src=typed_query).\n", "\n", "We'll focus on denoising diffusion models as presented in the paper [\"Denoising Diffusion Probabilistic Models\"](https://arxiv.org/abs/2006.11239) by Jonathan Ho, et al. (2020) as this paper introduced many simplifications and improvements to the model and was arguably one of the papers that first popularised this class of generative models. However, the original idea for the model was presented by Jascha Sohl-Dickstein, et al. (2015) in their paper [\"Deep Unsupervised Learning using Nonequilibrium Thermodynamics\"](https://arxiv.org/abs/1503.03585). Another classic paper on diffusion models is [\"Generative Modeling by Estimating Gradients of the Data Distribution\"](https://arxiv.org/abs/1907.05600) by Yang Song and Stefano Ermon (2019).\n", "\n", "It is also worth noting that there are many perspectives from which we can understand diffusion models and that this practical focuses on just one. For example, one can define diffusion models in discrete or continuous time. At the end of the practical, we will provide some pointers to further reading.\n", "\n", "\n", "Much of the material in this practical was adapted from and inspired by [The Annotated Diffusion Model blogpost](https://huggingface.co/blog/annotated-diffusion) by 🤗.\n", "\n", "**Topics:** \n", "\n", "Content: `Generative Models`, `Probabilistic Graphical Models` \n", "\n", "Level: Advanced.\n", "\n", "\n", "\n", "\n", "**Aims/Learning Objectives:**\n", "\n", "\n", "* Understand the differences between generative and discriminative modelling.\n", "* Understand how the probabilistic approach to ML is key to generative modelling.\n", "* Understand the challenges of building generative models in practice, as well as their solutions.\n", "* Understand, implement, and train a denoising diffusion model.\n", "\n", "\n", "**Prerequisites:**\n", "\n", "* Familiarity with Jax and Haiku – going through the “Introduction to ML using Jax” practical is **strongly** recommended.\n", "* Neural network basics (e.g., what ResNet, BatchNorm, and Adam are).\n", "\n", "* Basic probability theory (e.g., what a probability distribution is, what Bayes’ rule is).\n", "* [Suggested] Attend the Monte Carlo 101 parallel – this session will provide a lot of background on probability theory.\n", "\n", "**Outline:** \n", "\n", ">[Deep Generative Models](#scrollTo=m2s4kN_QPQVe)\n", "\n", ">>[Installation and Imports](#scrollTo=6EqhIg1odqg0)\n", "\n", ">>[Deep Generative Models](#scrollTo=Af0Sqm95helK)\n", "\n", ">>>[[Optional] Quick Probability Refresher – The Sum, Product, and Bayes' rules](#scrollTo=M0xpQUsjlfnY)\n", "\n", ">>>>[[Optional] Math Task](#scrollTo=rVHXcVWDljxY)\n", "\n", ">>>>>[Answer to the math task (Try not to peek until you've given it a good try!')](#scrollTo=T6UsuU1ImRTs)\n", "\n", ">>>>>[Answer to BONUS math task (Try not to peek until you've given it a good try!')](#scrollTo=v5OB2KDJp3hR)\n", "\n", ">>>[What is Generative Modeling?](#scrollTo=0mfHQOmE4Agg)\n", "\n", ">>>>[Generative and Discriminative Models are Two Sides of the Same Coin](#scrollTo=rQ5uDyDsjIxE)\n", "\n", ">>>[Generative Models + NNs = Deep Generative Models](#scrollTo=Ie2YXVWR4ItU)\n", "\n", ">>>>[The Challenge of Deep Generative Models](#scrollTo=Y5ct96ZK_MkE)\n", "\n", ">>>>[Other Types of Deep Generative Models](#scrollTo=Bt089Bkpjb_w)\n", "\n", ">>[Denoising Diffusion Models](#scrollTo=e9NW58_3hAg2)\n", "\n", ">>>>[Score Function Illustration](#scrollTo=RHMaBPgTkcxF)\n", "\n", ">>>>[Diffusion](#scrollTo=hL1UER25kLki)\n", "\n", ">>>>[Putting the pieces together](#scrollTo=hkfbHhGZlwo9)\n", "\n", ">>>[Training a Diffusion Model](#scrollTo=R8GjQPN2iNHh)\n", "\n", ">>>>[The dataset](#scrollTo=oTveZRSCh9KK)\n", "\n", ">>>>[Building the NN](#scrollTo=PAzSULmrh4_R)\n", "\n", ">>>>[Training](#scrollTo=E2-yrQShiX2D)\n", "\n", ">>>>>[Setup](#scrollTo=v6rcs8HY9CJW)\n", "\n", ">>>>>[The Loss Function](#scrollTo=o8nzDkhZ6bLc)\n", "\n", ">>>>>>[[Optional] Simplifying the Loss Function](#scrollTo=lrAawN7-4s1B)\n", "\n", ">>>>>>[Implementing the Loss Function in jax](#scrollTo=z3QmO80f5L3l)\n", "\n", ">>>>>[🚀 Go Time 🚀](#scrollTo=lbd8qQoG8pHC)\n", "\n", ">>>>>[Sampling](#scrollTo=yR6TQQZ08lhc)\n", "\n", ">>>>[[Optional] Guided diffusion](#scrollTo=QVAuiHsXfNJB)\n", "\n", ">>>>[Exercises](#scrollTo=QISTyJf24hps)\n", "\n", ">>>>[[Optional] Connections to Autoregressive Models, VAEs, NFs, and EBMs](#scrollTo=GMrkjFUbfQjQ)\n", "\n", ">>>>>[Autoregressive models](#scrollTo=cL7moBbQxDou)\n", "\n", ">>>>>[Variational Autoencoders (VAEs)](#scrollTo=cL7moBbQxDou)\n", "\n", ">>>>>[Normalising Flows (NFs)](#scrollTo=cL7moBbQxDou)\n", "\n", ">>>>>[Energy Based Models (EBMs)](#scrollTo=cL7moBbQxDou)\n", "\n", ">[Conclusion](#scrollTo=fV3YG7QOZD-B)\n", "\n", ">>[Feedback](#scrollTo=o1ndpYE50BpG)\n", "\n", "\n", "\n", "**Before you start:**\n", "\n", "For this practical, you will need to use a GPU to speed up training. To do this, go to the \"Runtime\" menu in Colab, select \"Change runtime type\" and then in the popup menu, choose \"GPU\" in the \"Hardware accelerator\" box.\n", "\n", "Some of the excercises and sections in this prac are marked as \n", " `Intermediate` or\n", " `Advanced` difficulty. Non-core sections, for instance all of the `Advanced` ones, are labelled [Optional]. If you do not have experience working with generative models, it is best to skip optional and more difficult content to ensure you reach the end of the prac.\n", "\n", "**Important:** you will also need to go to \"Tools\" > \"Settings\" > \"Miscellaneous\" > check \"Crab Mode\". " ] }, { "cell_type": "markdown", "metadata": { "id": "6EqhIg1odqg0" }, "source": [ "## Installation and Imports" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "4boGA9rYdt9l" }, "outputs": [], "source": [ "%%capture\n", "## Install and import anything required. Capture hides the output from the cell.\n", "# @title Install and import required packages. (Run Cell)\n", "\n", "%env XLA_PYTHON_CLIENT_MEM_FRACTION=0.8\n", "\n", "!pip install dm-haiku\n", "!pip install optax\n", "!pip install distrax\n", "!pip install einops\n", "!pip install livelossplot\n", "\n", "import os\n", "\n", "# https://stackoverflow.com/questions/68340858/in-google-colab-is-there-a-programing-way-to-check-which-runtime-like-gpu-or-tpu\n", "if int(os.environ[\"COLAB_GPU\"]) > 0:\n", " print(\"a GPU is connected.\")\n", "elif \"COLAB_TPU_ADDR\" in os.environ and os.environ[\"COLAB_TPU_ADDR\"]:\n", " print(\"A TPU is connected.\")\n", " import jax.tools.colab_tpu\n", "\n", " jax.tools.colab_tpu.setup_tpu()\n", "else:\n", " print(\"Only CPU accelerator is connected.\")\n", "\n", "from functools import partial\n", "import requests\n", "\n", "import jax\n", "import jax.numpy as jnp\n", "from jax import grad, jit, vmap\n", "import haiku as hk\n", "import optax\n", "import distrax\n", "import tensorflow as tf\n", "import tensorflow_datasets as tfds\n", "from einops import rearrange\n", "from opt_einsum import contract\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "import matplotlib.animation as animation\n", "from IPython.display import HTML\n", "import numpy as np\n", "from tqdm.auto import tqdm\n", "from PIL import Image\n", "from livelossplot import PlotLosses\n", "\n", "matplotlib.rc(\"image\", cmap=\"gray_r\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "-9X10jhocGaS" }, "outputs": [], "source": [ "# @title Helper Functions. (Run Cell)\n", "\n", "\n", "def extract(a, t, x_shape):\n", " batch_size = t.shape[0]\n", " out = a[..., t]\n", " return jnp.reshape(out, (batch_size, *((1,) * (len(x_shape) - 1))))\n", "\n", "\n", "def plot_log_gaussian_ellipse(\n", " ax,\n", " mean,\n", " cov,\n", " color=\"b\",\n", " alpha=1,\n", " lw=1,\n", " label=None,\n", " MAP_size=5,\n", " std_levels=[1, 2, 4, 6],\n", "):\n", "\n", " eigenvalues, eigenvectors = jnp.linalg.eigh(cov)\n", " theta = np.linspace(0, 2 * np.pi, 1200)\n", " std_ellipsis = (np.sqrt(eigenvalues[None, :]) * eigenvectors) @ jnp.stack(\n", " [np.sin(theta), np.cos(theta)]\n", " )\n", "\n", " artists = []\n", "\n", " for level in std_levels:\n", " artists.append(\n", " ax.plot(\n", " mean[0] + level * std_ellipsis[0, :],\n", " mean[1] + level * std_ellipsis[1, :],\n", " c=color,\n", " alpha=alpha,\n", " lw=lw,\n", " )\n", " )\n", "\n", " artists.append(\n", " ax.scatter(\n", " [mean[0]],\n", " [mean[1]],\n", " MAP_size,\n", " color=color,\n", " label=label,\n", " alpha=alpha,\n", " marker=\"x\",\n", " )\n", " )\n", "\n", " return artists" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "rfwoGkW3cLuk" }, "outputs": [], "source": [ "# @title Check what device you are using (Run Cell)\n", "print(f\"Num devices: {jax.device_count()}\")\n", "print(f\" Devices: {jax.devices()}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "Af0Sqm95helK" }, "source": [ "## **Deep Generative Models**" ] }, { "cell_type": "markdown", "metadata": { "id": "M0xpQUsjlfnY" }, "source": [ "### **[Optional] Quick Probability Refresher – The Sum, Product, and Bayes' rules** " ] }, { "cell_type": "markdown", "metadata": { "id": "mysbA0sIhXdJ" }, "source": [ "In probability theory, three fundamental rules come up over and over again. So let's quickly recap them if they aren't at the tip of your mind. \n", "\n", "1. **The Product Rule:** $$p(x, y) = p(x|y)p(y) = p(y|x)p(x), $$ tells us that the joint probability distribution over two random variables, $x$ and $y$ in this example, is equal to the product of the probability distribution for one of those random variables, e.g. $p(x)$, multiplied by the conditional probability distribution of the second random variable given the first, $p(y|x)$. \n", "\n", "\n", "2. **Bayes' Rule:** $$p(y|x) = \\frac{p(x|y)p(y)}{p(x)},$$ tells us how to convert between conditional distributions. That is, if we have $p(x|y)$ (as well as $p(x)$ and $p(y)$) we can convert it to $p(y|x))$ and vice-versa. This is a straightforward consequence of the product rule above.\n", "\n", "\n", "3. **The Sum Rule:** $$p(x) = \\sum_y p(x,y), $$ tells us that we can sum over (or marginalise) a random variable ($y$ in this example) in a joint probability distribution in order to get a distribution over the remaining random variable(s) ($x$ in this example). In the case of a continuous distribution, the sum $\\sum$ would be replaced by an integral $\\int$.\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "EQaoEMGOBKaF" }, "source": [ "**An example to build intuition!**\n", "\n", "Consider the joint Gaussian distribution \n", "$$ p(x, y) = \\mathcal{N}\\left(\\left[{\\begin{array}{cc} 0.8 \\\\ 3.2 \\\\ \\end{array}} \\right]\\, \\middle|\\, \\mathbf{\\mu}=\\left[ {\\begin{array}{cc}\n", " 0.8 \\\\\n", " 3.2 \\\\\n", " \\end{array} } \\right], \\Sigma = \\left[ {\\begin{array}{cc}\n", " 0.8 & -0.8 \\\\\n", " -0.8 & 2.0 \\\\\n", " \\end{array} } \\right]\\right). $$" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "wVLZY4qAz9wr" }, "outputs": [], "source": [ "# @markdown Let's plot its marginals and conditionals! (Run Cell)\n", "\n", "# @markdown The marginals over x and y are obtained by taking the joint and projecting it onto the x and y axis, respectively.\n", "\n", "# @markdown The conditionals are obtained by choosing a line, such as x=-0.8 and projecting the other variable, i.e. y, onto that line.\n", "\n", "from matplotlib import gridspec\n", "from scipy.stats import norm\n", "\n", "mean = np.array([0.8, 3.2])\n", "covariance = np.array([[0.8, -0.8], [-0.8, 2.0]])\n", "\n", "x_condition = -0.8\n", "y_condition = 2\n", "\n", "\n", "def Gaussian_conditional(mean, cov, x=None, y=None):\n", " assert not (x is None and y is None) and not (x is not None and y is not None)\n", " if x is not None:\n", " var = cov[1, 1] - cov[1, 0] * cov[0, 0] ** (-1) * cov[0, 1]\n", " mu = mean[1] + cov[1, 0] * cov[0, 0] ** (-1) * (x - mean[0])\n", " else:\n", " var = cov[0, 0] - cov[0, 1] * cov[1, 1] ** (-1) * cov[1, 0]\n", " mu = mean[0] + cov[0, 1] * cov[1, 1] ** (-1) * (y - mean[1])\n", " return mu, var\n", "\n", "\n", "c_mu_y, c_var_y = Gaussian_conditional(mean, covariance, x=x_condition, y=None)\n", "c_mu_x, c_var_x = Gaussian_conditional(mean, covariance, x=None, y=y_condition)\n", "\n", "xrange = np.linspace(-10, 10, 300)\n", "density_x = norm.pdf(xrange, 0.8, 0.8**0.5)\n", "density_y = norm.pdf(xrange, 3.2, 2.0**0.5)\n", "\n", "cond_density_y = norm.pdf(xrange, c_mu_y, c_var_y**0.5)\n", "cond_density_x = norm.pdf(xrange, c_mu_x, c_var_x**0.5)\n", "\n", "\n", "plt.figure(dpi=140)\n", "gs = gridspec.GridSpec(2, 2, width_ratios=[1, 3], height_ratios=[3, 1])\n", "ax = plt.subplot(gs[0, 1])\n", "axl = plt.subplot(gs[0, 0], sharey=ax)\n", "axb = plt.subplot(gs[1, 1], sharex=ax)\n", "\n", "plot_log_gaussian_ellipse(\n", " ax,\n", " mean,\n", " covariance,\n", " color=\"b\",\n", " alpha=1,\n", " lw=1,\n", " label=None,\n", " MAP_size=5,\n", " std_levels=[1, 2.2],\n", ")\n", "ax.set_title(\"joint distribution $p(x, y)$\")\n", "ax.axvline(x_condition, lw=1, c=\"g\")\n", "ax.axhline(y_condition, lw=1, c=\"orange\")\n", "\n", "axb.plot(xrange, density_x, c=\"b\", lw=1, label=\"marginal $p(x)$\")\n", "axb.plot(xrange, cond_density_x, c=\"orange\", lw=1, label=\"conditional $p(x | y=2)$\")\n", "axb.set_xlabel(\"x\")\n", "axb.set_xlim([-3, 4])\n", "axb.legend(bbox_to_anchor=[0.5, -1.1], loc=\"center\")\n", "\n", "axl.plot(density_y, xrange, c=\"b\", lw=1, label=\"marginal $p(y)$\")\n", "axl.plot(cond_density_y, xrange, c=\"g\", lw=1, label=\"conditional $p(y | x=-0.8)$\")\n", "axl.set_ylabel(\"y\")\n", "axl.set_ylim([-1.5, 7.5])\n", "axl.invert_xaxis()\n", "axl.legend(bbox_to_anchor=[-0.15, -0.3], loc=\"center\")\n", "\n", "ax.grid(alpha=0.3)\n", "axl.grid(alpha=0.3)\n", "axb.grid(alpha=0.3)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "rVHXcVWDljxY" }, "source": [ "#### **[Optional] Math Task** " ] }, { "cell_type": "markdown", "metadata": { "id": "j4HPhXjXl78I" }, "source": [ "Bayes' rule can actually be derived from only the product rule. Test your understanding by trying to derive it yourself (or with your neighbours)! \n", "\n", "$$ p(x, y) = \\ldots $$\n", "\n", "BONUS task: Go one step further and use the sum rule to write Bayes' rule without $p(x)$." ] }, { "cell_type": "markdown", "metadata": { "id": "T6UsuU1ImRTs" }, "source": [ "##### Answer to the math task (Try not to peek until you've given it a good try!') \n" ] }, { "cell_type": "markdown", "metadata": { "id": "uzb72WYQpqGl" }, "source": [ "\\begin{align}\n", "p(x, y) & = p(y|x)p(x) && \\triangleright \\text{product rule}\\\\\n", "\\therefore p(y|x) &= \\frac{p(x, y)}{p(x)} \\\\\n", "&= \\frac{p(x|y)p(y)}{p(x)} && \\triangleright \\text{product rule}\n", "\\end{align}" ] }, { "cell_type": "markdown", "metadata": { "id": "v5OB2KDJp3hR" }, "source": [ "##### Answer to BONUS math task (Try not to peek until you've given it a good try!') " ] }, { "cell_type": "markdown", "metadata": { "id": "AU50q93xqSSM" }, "source": [ "\\begin{align}\n", "p(y|x) &= \\frac{p(x|y)p(y)}{p(x)} \\\\\n", "&= \\frac{p(x|y)p(y)}{\\sum_y p(x|y)p(y)}\n", "\\end{align}" ] }, { "cell_type": "markdown", "metadata": { "id": "0mfHQOmE4Agg" }, "source": [ "### **What is Generative Modeling?**" ] }, { "cell_type": "markdown", "metadata": { "id": "rQ5uDyDsjIxE" }, "source": [ "One way that machine learning methods can be categorised is by whether they are *discriminative* or *generative*. Some of the most common machine learning tasks, such as regression and classification, are typically solved using discriminative methods. So you might be wondering \"what is generative modelling?\".\n", "\n", "To understand what generative modelling is, let us compare and contrast it with discriminative modelling. Specifically, let us consider the task of modelling data from two different classes. \n", "\n", "**Discriminative:** In this case, we are interested in learning a probability distribution $p(y|x)$, i.e., the probability of the class $y$ being either 0 or 1 given an example $x$. For any example $x$, we can determine whether it is more likely to be from class 0 or class 1, and draw a corresponding decision boundary where $p(y = 0|x) = p(y = 1|x)$. \n", "\n", "**Generative:** Here, we are interested in learning the probability distribution $p(x|y)$, i.e., the probability of observing some data $x$ given that it is from class $y$. We might also be interested in learning the probability distribution $p(x)$ which is the probability of observing $x$ in either of the classes. *The cool thing about generative modelling is that if we can sample $x \\sim p(x|y)$ or $x \\sim p(x)$ we can generate new unseen examples*. \n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "X_2NT24Uggz4" }, "source": [ "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "c22Sbo8kgkNj" }, "source": [ "*In the picture above ([source](https://betterprogramming.pub/generative-vs-discriminative-models-d26def8fd64a_)), red and blue dots represent examples ($x$) from classes $y = 0$ and $y = 1$, respectively. The dashed black line shows the decision boundary in the discriminative case. In the generative case, the light red and blue ovals show the areas where $p(y = 0|x)$ and $p(y = 1|x)$ are large, respectively.* \n", "\n", "#### **Generative and Discriminative Models are Two Sides of the Same Coin**\n", "\n", "From Bayes' rule $$p(y|x) = \\frac{p(x|y)p(y)}{p(x)}$$ we can see that the discriminative model $p(y|x)$ and the generative model $p(x|y)$ are very closely linked. If we know $p(x)$ and $p(y)$ then we can convert between a generative and a discriminative model. However, as we will see in the next section, this isn't as easy as it might seem at first glance." ] }, { "cell_type": "markdown", "metadata": { "id": "Ie2YXVWR4ItU" }, "source": [ "### **Generative Models + NNs = Deep Generative Models**" ] }, { "cell_type": "markdown", "metadata": { "id": "BDTH1IqojNmo" }, "source": [ "Now that we've discussed what a generative model is, we can answer the question \"What is a **deep** generative model?\". In this case, the answer is simple! A deep generative model is a generative model in which either $p_\\theta (x)$ or $p_\\theta (x|y)$ are represented by (deep) neural networks (with parameters $\\theta$)!\n", "\n", "To be more concrete, a deep generative model is a neural network that allows us to sample $x$ from the distribution $p_\\theta(x)$ (or $p_\\theta(x|y)$). This is often done by sampling random noise $z$ and using that as the input of the NN – in this case, the output of the NN is a sample $x$. Some deep generative models also allow us to evaluate $p_\\theta(x)$ for a given example $x$, i.e., they allow us to measure the probability of observing a particular example. " ] }, { "cell_type": "markdown", "metadata": { "id": "Y5ct96ZK_MkE" }, "source": [ "\n", "#### **The Challenge of Deep Generative Models**\n", "\n", "*The central problem of deep generative models is that we do not know how to write down the distribution $p_\\theta(x)$.* \n", "\n", "**Task:** Discuss with your neighbour(s). Consider, for example, building a generative model for images of cats and dogs. What do you think the true distribution of such images is? How would you write that down mathematically? \n", "\n", "These are very difficult questions for humans to answer because images are very high dimensional and it is difficult for us to reason about high-dimensional spaces. \n", "\n", "The distribution $p_\\theta(x|y)$ – e.g., the distribution of images of cats if we choose $y = \\text{cat}$) – is similarly high dimensional and difficult for us to describe, so we are not saved by considering the conditional model. (This should not come as a surprise, since we know that $p_\\theta(x)$ and $p_\\theta(x|y)$ are closely tied together via Bayes' rule!)\n", "\n", "**Why do we need to write down $p_\\theta(x)$?** We said above that we would train a neural network to allow us to draw samples from $p_\\theta(x)$, so if we don't need to evaluate the probability of those samples, why do we need to worry about writing down $p_\\theta(x)$? Unfortunately, we need to **train** our model! If we don't train the model, we have no way of ensuring that the samples we draw actually come from the distribution $p_\\theta(x)$! \n", "\n", "**How do we train our deep generative model?** From the probabilistic perspective, there is really only one way to train our model: we want to maximise $p_\\theta(x)$ for our observed data. In practice, we will instead minimise (using SGD to optimise the weights $\\theta$) the *negative log-likelihood* (NLL): $$ \\mathcal{L}_\\text{NLL} = -\\sum_{n=1}^N \\log p_\\theta(x^{(n)}),$$\n", "where $\\{x^{(n)}\\}_{n=1}^N$ is our training dataset. Thus, we need to be able to calculate $p(x^{(n)})$. \n", "Unfortunately, In some cases, this is not possible and we need to resort to various approximations. " ] }, { "cell_type": "markdown", "metadata": { "id": "Bt089Bkpjb_w" }, "source": [ "#### **Other Types of Deep Generative Models**\n", "\n", "\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "uh_6KQEG2BLH" }, "source": [ "While we will be focusing on denoising diffusion models in this practical, it is worth keeping in mind that there are many other kinds of deep generative models. Different kinds of models make different assumptions with different pros and cons. Fundamentally, they all solve the problem of calculating $p(x)$ in different ways. Some common deep generative models include:\n", "\n", "1. Autoregressive models,\n", "2. Variational Autoencoders (VAEs),\n", "3. Normalizing Flows (NFs),\n", "4. Energy-based Models (EBMs), and\n", "5. Generative Adversarial Networks (GANs)" ] }, { "cell_type": "markdown", "metadata": { "id": "e9NW58_3hAg2" }, "source": [ "## **Denoising Diffusion Models**\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "YFLXagxPGFC2" }, "source": [ "Denoising diffusion models avoid the problem of estimating $p_\\theta(x)$ by instead estimating the *score function* $\\nabla_x \\log p_\\theta(x)$, i.e., the gradient of the log-likelihood with respect to the observed data $x$. \n", "It is because of the importance of the score function that denoising diffusion models are also known as *score-based generative models*.\n", "\n", "**Note.** The score function $\\nabla_x \\log p_\\theta(x)$ is *not* the same as the gradient of the log-likelihood w.r.t the parameters of the model $\\theta$: $\\nabla_\\theta \\log p_\\theta(x)$, which we would use to train other deep generative models such as NFs and autoregressive models. $\\nabla_\\theta \\log p_\\theta(x)$ tells us how to change the parameters of the model to increase the likelihood, while $\\nabla_x \\log p_\\theta(x)$ tells us how to change the data itself!" ] }, { "cell_type": "markdown", "metadata": { "id": "RHMaBPgTkcxF" }, "source": [ "#### **Score Function Illustration**\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "Fb_Y_sMMGKm8" }, "source": [ "To get some intuition for what the score function is, and how we can use it to create samples from a desired distribution, let's consider a simple bi-modal distribution $$ p(\\mathbf{x}) = 0.5 \\cdot \\mathcal{N}\\left(\\mathbf{x}\\, \\middle|\\, \\mathbf{\\mu}=\\left[ {\\begin{array}{cc}\n", " 0.8 \\\\\n", " 3.2 \\\\\n", " \\end{array} } \\right], \\Sigma = \\left[ {\\begin{array}{cc}\n", " 0.8 & -0.8 \\\\\n", " -0.8 & 2.0 \\\\\n", " \\end{array} } \\right]\\right) + 0.5 \\cdot \\mathcal{N}\\left(\\mathbf{x}\\, \\middle|\\, \\left[ {\\begin{array}{cc}\n", " -1.3 \\\\\n", " -2.7 \\\\\n", " \\end{array} } \\right], \\left[ {\\begin{array}{cc}\n", " 1.5 & 0.75 \\\\\n", " 0.75 & 1.5 \\\\\n", " \\end{array} } \\right]\\right). $$\n", "\n", " We can easily implement this density function in `jax` using the [`Distrax`](https://github.com/deepmind/distrax) library: " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "dnZ27KpY7lnv" }, "outputs": [], "source": [ "dist_1 = distrax.MultivariateNormalFullCovariance(\n", " [0.8, 3.2], [[0.8, -0.8], [-0.8, 2.0]]\n", ")\n", "dist_2 = distrax.MultivariateNormalFullCovariance(\n", " [-1.3, -2.7], [[1.5, 0.75], [0.75, 1.5]]\n", ")\n", "density_fn = lambda x: 0.5 * jnp.exp(\n", " dist_1.log_prob(x.astype(jnp.float32))\n", ") + 0.5 * jnp.exp(dist_2.log_prob(x.astype(jnp.float32)))" ] }, { "cell_type": "markdown", "metadata": { "id": "0oMDEzIt-BHm" }, "source": [ "**Code Task:** Use `jax`'s `grad` transform to implement the score function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "UXO6zUal-RwX" }, "outputs": [], "source": [ "# score_fn = # YOUR SOLUTION GOES HERE" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "3wwpRQ2G-V6Q" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "score_fn = jax.grad(lambda x: jnp.log(density_fn(x)))" ] }, { "cell_type": "markdown", "metadata": { "id": "vt0w6fEk_R0j" }, "source": [ "Now that we have the score function for $p(\\mathbf{x})$, we can use it to take randomly sampled noise and transform it into samples from $p(\\mathbf{x})$. The procedure is simple: start with an initial random guess $\\mathbf{x}_T$, and then for $T$ *time*steps calculate $$ \\mathbf{x}_{t-1} = \\mathbf{x}_{t} + \\lambda \\cdot \\nabla_{\\mathbf{x}_t} \\log p(\\mathbf{x}_t), $$\n", "until we arrive at $\\mathbf{x}_0$, which we hope will be a sample from $p(\\mathbf{x})$.\n", "Here $\\lambda$ is a step size parameter which controls how big a change we make at each timestep. We can implement this in code as:\n", "```\n", "for t in range(T):\n", " x = x + λ*score_fn(x)\n", "```\n", "\n", "**Group Task:**\n", "\n", "1. Using the sliders below, experiment with randomly choosing different coordinates for $\\mathbf{\\mathbf{x}}_T$, as well as different values for $T$ and $\\lambda$. \n", "2. Compare your initial coordinates $\\mathbf{\\mathbf{x}}_T$ (red crosses) with the final coordinates $\\mathbf{\\mathbf{x}}_0$ (cyan crosses). Which are more similar to the coordinates directly sampled from $p(\\mathbf{\\mathbf{x}})$ (black circles)? \n", "3. Discuss amongst yourselves to make sure that this behaviour makes sense." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "9bIMuhCXGZ7A" }, "outputs": [], "source": [ "# @title Two Gaussians Score Function (Run Cell)\n", "from matplotlib import cm\n", "\n", "x0 = -1.6 # @param {type:\"slider\", min:-5, max:5, step:0.1}\n", "x1 = 0.1 # @param {type:\"slider\", min:-5, max:5, step:0.1}\n", "x = jnp.array([x0, x1], dtype=jnp.float32)\n", "\n", "T = 9 # @param {type:\"slider\", min:1, max:10, step:1}\n", "λ = 0.4 # @param {type:\"slider\", min:0.1, max:1, step:0.05}\n", "\n", "\n", "# Make plots of the density p(x)\n", "X0 = jnp.arange(-5, 5.1, 0.25)\n", "X1 = jnp.arange(-5, 5.1, 0.25)\n", "X0, X1 = jnp.meshgrid(X0, X1)\n", "\n", "Xs = jnp.concatenate([X0.reshape(-1, 1), X1.reshape(-1, 1)], axis=1)\n", "Z = jax.vmap(density_fn)(Xs).reshape(X1.shape)\n", "\n", "\n", "fig = plt.figure(figsize=(12, 6))\n", "\n", "ax1 = fig.add_subplot(121, projection=\"3d\")\n", "ax1.plot_surface(X0, X1, Z, cmap=cm.coolwarm, linewidth=0, alpha=0.4, antialiased=False)\n", "\n", "ax2 = fig.add_subplot(122)\n", "ax2.contourf(X0, X1, Z, cmap=cm.coolwarm, alpha=0.4, antialiased=False)\n", "\n", "\n", "# Plot some samples from the true data distribution\n", "key1, key2 = jax.random.split(jax.random.PRNGKey(42))\n", "samples1, log_probs1 = dist_1.sample_and_log_prob(seed=key1, sample_shape=(25))\n", "samples2, log_probs2 = dist_2.sample_and_log_prob(seed=key2, sample_shape=(25))\n", "\n", "log_probs = jnp.concatenate([log_probs1, log_probs2])\n", "probs = 0.5 * jnp.exp(log_probs)\n", "samples = jnp.concatenate([samples1, samples2])\n", "\n", "ax1.scatter(samples[:, 0], samples[:, 1], probs, c=\"k\", marker=\"o\", alpha=0.5)\n", "ax2.scatter(samples[:, 0], samples[:, 1], c=\"k\", marker=\"o\", alpha=0.5)\n", "\n", "\n", "# Plot the trajectory of the sample over time\n", "ax1.scatter(x[0], x[1], density_fn(x), c=\"r\", marker=\"x\", s=75)\n", "ax2.scatter(x[0], x[1], c=\"r\", marker=\"x\", s=75)\n", "\n", "for t in range(T):\n", " x = x + λ * score_fn(x)\n", "\n", " color = \"k\" if t < T - 1 else \"c\"\n", " ax1.scatter(x[0], x[1], density_fn(x), c=color, marker=\"x\", s=75)\n", " ax2.scatter(x[0], x[1], c=color, marker=\"x\", s=75)\n", "\n", "\n", "ax1.set_ylim(-5, 5)\n", "ax1.set_xlim(-5, 5)\n", "ax1.set_zlim(0, 0.1)\n", "\n", "ax2.set_ylim(-5, 5)\n", "ax2.set_xlim(-5, 5)\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "hL1UER25kLki" }, "source": [ "\n", "#### **Diffusion**" ] }, { "cell_type": "markdown", "metadata": { "id": "G_93rVTPQCgY" }, "source": [ "Before we can put everything we've learnt so far together, and define *what* a diffusion model is, and how to train it, we need to understand one more important concept: *diffusion*! \n", "\n", "We'll illustrate what diffusion is by means of an example. Consider an image $\\mathbf{x_0}$, for example, the logo for the Deep Learning Indaba:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "sztWgRESQ_xr" }, "outputs": [], "source": [ "# @title Get DLI logo (Run Cell)\n", "url = \"https://pbs.twimg.com/profile_images/1271511794650144770/oS8XqsX-_400x400.jpg\"\n", "image = Image.open(requests.get(url, stream=True).raw)\n", "image" ] }, { "cell_type": "markdown", "metadata": { "id": "r2THdVGvRJMG" }, "source": [ "We can carefully add gaussian noise over $T$ timesteps to get slightly noisier images \n", "$$ \\mathbf{x}_{t} = \\sqrt{1 - \\beta_t}\\mathbf{x}_{t-1} + \\sqrt{\\beta_t} \\cdot \\boldsymbol\\epsilon, \\quad \\boldsymbol\\epsilon \\sim \\mathcal{N}\\left(\\mathbf{0}, \\mathbf{I}\\right).$$ \n", "This is equivalent to writing \n", "$$ \\mathbf{x}_{t} \\sim \\mathcal{N}\\left(\\sqrt{1 - \\beta_t}\\mathbf{x}_{t-1}, \\beta_t \\cdot \\mathbf{I}\\right) = q(\\mathbf{x}_{t}|\\mathbf{x}_{t-1}).$$\n", "\n", "If we choose $\\{\\beta_t\\}_{t=1}^T$ well, then $\\mathbf{x}_{T}$ will be pure noise. I.e., we can say $\\mathbf{x}_{T} \\sim \\mathcal{N}\\left(\\mathbf{0}, \\mathbf{I}\\right)$.\n", "\n", "The procedure that we have described is called a *forward diffusion process* and is where diffusion models get their name.\n", "\n", "Now, let's code it up and see it in action! \n", "\n", "First, we need to define our $\\{\\beta_t\\}_{t=1}^T$ values. The authors of the [Denoising Diffusion Probabilistic Models paper](https://arxiv.org/pdf/2006.11239.pdf), chose a simple linear schedule going from $\\beta_1 = 1\\times10^{-4}$ to $\\beta_T = 0.02$.\n", "\n", "**Code task:** implement this linear $\\beta$ schedule using `jax.numpy`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "50IJPZEUbUXW" }, "outputs": [], "source": [ "def linear_beta_schedule(timesteps):\n", " beta_start = 0.0001\n", " beta_end = 0.02\n", " return # YOUR SOLUTION GOES HERE" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "2X2XhM7WUSIX" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "def linear_beta_schedule(timesteps):\n", " beta_start = 0.0001\n", " beta_end = 0.02\n", " return jnp.linspace(beta_start, beta_end, timesteps)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "wZQjnuClUjPL" }, "outputs": [], "source": [ "TIMESTEPS = 200\n", "\n", "# Define beta schedule.\n", "betas = linear_beta_schedule(timesteps=TIMESTEPS)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "iEsI_vVNUtAC" }, "outputs": [], "source": [ "# @title Plot beta schedule (Run Cell)\n", "plt.plot(betas)\n", "plt.ylabel(\"Beta\")\n", "plt.xlabel(\"t\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "ZNt9VC-Tdv0S" }, "source": [ "Because we add Gaussian noise at each timestep, it is possible to sample $\\mathbf{x}_{t}$ directly from $\\mathbf{x}_{0}$, without first sampling $\\mathbf{x}_{1}$, and then $\\mathbf{x}_{2}$, and so on. \n", "$$ \\mathbf{x}_{t} \\sim \\mathcal{N}\\left( \\sqrt{\\bar{\\alpha_t}} \\mathbf{x}_{0}, (1 - \\bar{\\alpha_t})\\cdot\\mathbf{I} \\right),$$ \n", "where $\\alpha_t = 1 - \\beta_t$ and $\\bar{\\alpha_t} = \\prod_{i=1}^t \\alpha_i$.\n", "\n", "We can use these alpha values to define the forward diffusion process given $\\mathbf{x}_0$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Mr4ui0FMbtCf" }, "outputs": [], "source": [ "# Define alphas.\n", "alphas = 1.0 - betas\n", "alphas_cumprod = jnp.cumprod(alphas, axis=0)\n", "sqrt_alphas_cumprod = jnp.sqrt(alphas_cumprod)\n", "sqrt_one_minus_alphas_cumprod = jnp.sqrt(1.0 - alphas_cumprod)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "OGXAWMT3ewNL" }, "outputs": [], "source": [ "# Forward diffusion - q(x_t|x_0):\n", "def q_sample(x_start, t, noise):\n", " sqrt_alphas_cumprod_t = extract(sqrt_alphas_cumprod, t, x_start.shape)\n", " sqrt_one_minus_alphas_cumprod_t = extract(\n", " sqrt_one_minus_alphas_cumprod, t, x_start.shape\n", " )\n", "\n", " return sqrt_alphas_cumprod_t * x_start + sqrt_one_minus_alphas_cumprod_t * noise" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "baWScJkCggoO" }, "outputs": [], "source": [ "# Helper function to convert an image into an array of the correct form\n", "# and then apply the run forward diffusion.\n", "def get_noisy_image(image, t, key):\n", " x_start = jnp.asarray(image, dtype=jnp.float32)[jnp.newaxis, ...]\n", " x_start = x_start / 255.0 # normalize the images to [0, 1]\n", " x_start = (x_start * 2.0) - 1.0 # convert range to [-1, 1]\n", "\n", " # add noise\n", " noise = jax.random.normal(key, x_start.shape)\n", " x_noisy = q_sample(x_start, t, noise)\n", "\n", " # turn back into image format\n", " x_noisy = (x_noisy + 1.0) / 2.0\n", " x_noisy = x_noisy * 255.0\n", " noisy_image = np.array(x_noisy).astype(jnp.uint8)[0]\n", "\n", " return noisy_image" ] }, { "cell_type": "markdown", "metadata": { "id": "rTLpa93Ij7gz" }, "source": [ "Now we can finally see the forward diffusion process in action! Below we display $\\mathbf{x}_0$, $\\mathbf{x}_3$, $\\mathbf{x}_{10}$, $\\mathbf{x}_{30}$, $\\mathbf{x}_{100}$, and $\\mathbf{x}_{200 = T}$ from left to right." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "gYWNWzhoivw3" }, "outputs": [], "source": [ "# @title Diffusion evolution (Run Cell)\n", "ts = [2, 9, 29, 99, 199]\n", "imgs = [image] + [\n", " get_noisy_image(image, jnp.array([t]), jax.random.PRNGKey(0)) for t in ts\n", "]\n", "\n", "num_cols = len(imgs)\n", "fig, axs = plt.subplots(figsize=(200, 200), nrows=1, ncols=num_cols, squeeze=False)\n", "for idx, img in enumerate(imgs):\n", " ax = axs[0, idx]\n", " ax.imshow(img)\n", " t = 0 if idx == 0 else ts[idx - 1] + 1\n", "\n", "plt.tight_layout()" ] }, { "cell_type": "markdown", "metadata": { "id": "hkfbHhGZlwo9" }, "source": [ "\n", "#### **Putting the pieces together**\n", "\n", "Since we know about score functions and diffusion, we are finally ready to define a denoising diffusion model!\n" ] }, { "cell_type": "markdown", "metadata": { "id": "_XhGh1myo8jx" }, "source": [ "\"Denoising" ] }, { "cell_type": "markdown", "metadata": { "id": "R34vFx4IpM2j" }, "source": [ "As shown in the above diagram from the paper, a diffusion model is comprised of two parts:\n", "1. The *forward diffusion process* $q(\\mathbf{x}_t|\\mathbf{x}_{t-1})$ going from an image (or other data) $\\mathbf{x}_0$, to noise $\\mathbf{x}_T$ over $T$ timesteps. \n", "2. The *reverse process* $p_\\theta(\\mathbf{x}_{t-1}|\\mathbf{x}_{t})$ going from noise $\\mathbf{x}_T$ to an image $\\mathbf{x}_0$. \n", "\n", "In a denoising diffusion model, the *reverse process* $p_\\theta(\\mathbf{x}_{t-1}|\\mathbf{x}_{t})$ is equivalent to taking a step in the direction specified by the score function! In other words, at each timestep, we use a NN (with parameters $\\theta$) to estimate the score function, and then take a step in the direction of higher likelihood! The reverse process is removing the noise added by the forward process, hence *denoising* in the name.\n", "\n", "The equivalence between the score function and the reverse process isn't obvious, but hopefully you have some intuition for why this might be the case! \n", "\n", "**Task:** Discuss with a partner, does the relationship between the score function and reverse process make sense?\n", "\n", "To provide a little more detail, let's assume that the *reverse process* takes the form\n", "$$\n", "p_\\theta(\\mathbf{x}_{t-1}|\\mathbf{x}_{t}) = \\mathcal{N}\\left(\\mathbf{x}_{t-1}\\middle| \\mu_\\theta(\\mathbf{x}_{t}), \\beta_t \\cdot \\mathbf{I} \\right),\n", "$$\n", "where the mean is predicted by a NN and the variance is fixed to match the forward diffusion process. (The fixed variance was a choice made by Jonathan Ho et al., however, [follow-up work](https://openreview.net/forum?id=-NEXDKk8gZ) showed that predicting the variance with a NN, in addition to the mean, can improve performance.)\n", "\n", "**Task:** Discuss with a partner, why it makes sense to assume a Gaussian distribution for the reverse process.\n", "\n", "It turns out, that after some math1, we can rewrite the mean as \n", "$$\n", "\\mu_\\theta(\\mathbf{x}_{t}) = \\frac{1}{\\sqrt{\\alpha_t}}\\left(\\mathbf{x}_t - \\frac{\\beta_t}{\\sqrt{1 - \\bar{\\alpha_t}}} \\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t)\\right),\n", "$$ \n", "where $\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t)$ is noise, predicted by a NN, that we add to $\\mathbf{x}_t$.\n", "\n", "Now, if $\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t) \\approx \\nabla_{\\mathbf{x}_t} \\log p(\\mathbf{x}_t)$, then the term in the brackets is approximately equivalent to taking a step with the score function:\n", "$$\n", "\\mathbf{x}_t + \\lambda\\nabla_{\\mathbf{x}_t} \\log p(\\mathbf{x}_t), \n", "$$\n", "with $\\lambda = -\\frac{\\beta_t}{\\sqrt{1 - \\bar{\\alpha_t}}}$.\n", "\n", "\n", "**Note:** Because we are using the same NN at each timestep, it helps to input $\\mathbf{x}_{t}$ as well as the current timestep $t$ in order correctly predict the noise. That is, **rather than using $\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t)$ we use $\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t, t)$**.\n", "\n", "1This math is fairly involved so we won't go into it here. For more details, see [this fantastic blog](https://lilianweng.github.io/posts/2021-07-11-diffusion-models/#reverse-diffusion-process) or section 3 of [the paper](https://arxiv.org/pdf/2006.11239.pdf)." ] }, { "cell_type": "markdown", "metadata": { "id": "R8GjQPN2iNHh" }, "source": [ "### **Training a Diffusion Model**\n", "\n", "The final piece of the puzzle for understanding diffusion models is how to train them! But before we go over that, let's quickly get some training data and define our neural network! " ] }, { "cell_type": "markdown", "metadata": { "id": "oTveZRSCh9KK" }, "source": [ "#### **The dataset**" ] }, { "cell_type": "markdown", "metadata": { "id": "xIhGLOzrW138" }, "source": [ "For this practical, we'll use the MNIST dataset of handwritten digits. While diffusion models are certainly powerful enough to handle more complicated datasets (all of the pictures in the cover image of this notebook were generated using diffusion models!), we'll use MNIST since it allows us to quickly train our models in Google Colab. As an exercise later we will try using the slightly more complicated FashionMNIST dataset. \n", "\n", "Let's load and visualise the dataset:\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ehc1dfURbh0K" }, "outputs": [], "source": [ "mnist, info = tfds.load(\"mnist\", split=\"train\", with_info=True)\n", "tfds.show_examples(mnist, info, cols=5)" ] }, { "cell_type": "markdown", "metadata": { "id": "74Fk9UqIXd8q" }, "source": [ "Now we'll create a simple data pipeline which will allow us to get batches of correctly formatted data.\n", "\n", "We take the following steps:\n", "\n", "\n", "1. We shuffle our dataset and repeat it so that we don't run out of examples.\n", "2. We batch the data.\n", "3. We take only the images (i.e., we discard the labels) in each batch. This is because we are training an unconditional generative model $p(\\mathbf x)$. As an exercise later, you can try training a conditional model, so come back here to keep the labels.\n", "4. We convert the images from `int8` to `float32` format.\n", "5. We change the range of the pixels from $[0, 255]$ to $[-1., 1.]$.\n", "6. We convert from the `tensorflow_datasets` format to a standard python iterator of `jax.numpy` arrays. \n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "KoEHx-a8dbsH" }, "outputs": [], "source": [ "BATCH_SIZE = 128\n", "train_dataset = mnist.shuffle(10 * BATCH_SIZE, seed=0).cache().repeat()\n", "train_dataset = train_dataset.batch(BATCH_SIZE)\n", "train_dataset = train_dataset.map(lambda x: x[\"image\"])\n", "train_dataset = train_dataset.map(lambda x: tf.cast(x, tf.float32))\n", "train_dataset = train_dataset.map(lambda x: (x - 127.5) / 127.5)\n", "train_dataset = iter(tfds.as_numpy(train_dataset))" ] }, { "cell_type": "markdown", "metadata": { "id": "PAzSULmrh4_R" }, "source": [ "#### **Building the NN**" ] }, { "cell_type": "markdown", "metadata": { "id": "ra5aOnTsdeB4" }, "source": [ "The most common choice of NN architecture for $\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t, t)$ in (image) diffusion models is the [U-Net](https://arxiv.org/abs/1505.04597), which gets its name from the U-shape of the architecture as shown in the diagram below. \n", "\n", "Like an autoencoder, a U-Net consists of several downsampling stages in which the filter dimension of the image representation is first increased and then the spatial dimensions are downsampled, a bottleneck, and then several upsampling stages in which these downsampling transformations are reversed. The main difference between a U-Net and a standard autoencoder architecture is that at each stage in the upsampling path with include the original representation from the corresponding downsampling stage.\n", "\n", "One motivation for using a U-Net rather than a standard autoencoder is that the final representation has information from various *frequencies*. Another is that the ResNet-like connections in the U-Net help with training due to improved gradient propagation. " ] }, { "cell_type": "markdown", "metadata": { "id": "hGJ7lMe8juYh" }, "source": [ "\"UNet\n" ] }, { "cell_type": "markdown", "metadata": { "id": "hNTNX1psqxWO" }, "source": [ "Above, we have a diagram of the U-Net architecture. Here, orange arrows indicate ResNet blocks, red arrows indicate 2D convolutions used for *spatial* downsampling, gold arrows indicate 2D transposed convolutions used for *spatial* upsampling, green arrows indicate a copy and concatenate operation, and the purple arrow indicates a final 2D convolution that outputs the correct number of channels. Figure adapted from [here](https://www.researchgate.net/figure/Typical-U-Net-style-architecture-44-The-success-of-this-network-comes-from-the-easy_fig5_343240820).\n", "\n", "Let's define our U-Net in `haiku`. First, we'll define a number of building blocks, starting with an embedding layer for injecting $t$ into $\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t, t)$. If you'd like more information about how these kinds of embedding layers work, please see the [Transformers and Attention Practical](https://deeplearningindaba.com/2022/indaba/practicals/), which covers them in the context of positional embeddings for sequences." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Qfnt64ZKlADo" }, "outputs": [], "source": [ "class TimeEmbedding(hk.Module):\n", " def __init__(self, dim):\n", " super().__init__()\n", " self.dim = dim\n", "\n", " def __call__(self, time):\n", " half_dim = self.dim // 2\n", " embeddings = jnp.log(10000) / (half_dim - 1)\n", " embeddings = jnp.exp(jnp.arange(half_dim) * -embeddings)\n", " embeddings = time[:, jnp.newaxis] * embeddings[jnp.newaxis, :]\n", " embeddings = jnp.concatenate(\n", " (jnp.sin(embeddings), jnp.cos(embeddings)), axis=-1\n", " )\n", " return embeddings" ] }, { "cell_type": "markdown", "metadata": { "id": "lBTuEsEEyoKq" }, "source": [ "Next we define a ResNet layer consisting of two hidden layers. The ResNet also makes use of the time embedding to make its predictions time dependent. Don't worry too much about the hyperparameters such as the choice activation function and normalisation layer – these details aren't important for understanding how diffusion models work and were just copied from [a PyTorch implementation of diffusion models](https://github.com/lucidrains/denoising-diffusion-pytorch)." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "-sMtW7NKrEQy" }, "outputs": [], "source": [ "class Block(hk.Module):\n", " def __init__(self, dim_out, groups=8):\n", " super().__init__()\n", " self.proj = hk.Conv2D(dim_out, kernel_shape=3, padding=(1, 1))\n", " self.norm = hk.GroupNorm(groups)\n", " self.act = jax.nn.silu\n", "\n", " def __call__(self, x):\n", " x = self.proj(x)\n", " x = self.norm(x)\n", " x = self.act(x)\n", " return x\n", "\n", "\n", "class ResnetBlock(hk.Module):\n", " \"\"\"https://arxiv.org/abs/1512.03385\"\"\"\n", "\n", " def __init__(self, dim_out, groups=8, change_dim=False):\n", " super().__init__()\n", " self.mlp = hk.Sequential([jax.nn.silu, hk.Linear(dim_out)])\n", " self.block1 = Block(dim_out, groups=groups)\n", " self.block2 = Block(dim_out, groups=groups)\n", " self.res_conv = (\n", " hk.Conv2D(dim_out, kernel_shape=1, padding=(0, 0))\n", " if change_dim\n", " else lambda x: x\n", " )\n", "\n", " def __call__(self, x, time_emb):\n", " h = self.block1(x)\n", "\n", " time_emb = self.mlp(time_emb)\n", " # We add new axes to the time embedding to for broadcasting.\n", " h = time_emb[:, jnp.newaxis, jnp.newaxis] + h\n", "\n", " h = self.block2(h)\n", " return h + self.res_conv(x)" ] }, { "cell_type": "markdown", "metadata": { "id": "fvnEc04Hz7G5" }, "source": [ "Next, we define the up and down sampling operations." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "iV7FCh4xsr8u" }, "outputs": [], "source": [ "def SpatialUpsample(dim):\n", " return hk.Conv2DTranspose(dim, kernel_shape=4, stride=2)\n", "\n", "\n", "def SpatialDownsample(dim):\n", " return hk.Conv2D(dim, kernel_shape=4, stride=2, padding=(1, 1))" ] }, { "cell_type": "markdown", "metadata": { "id": "-WGkQN3p0BfK" }, "source": [ "Finally, we are ready to define our U-Net!\n", "\n", "**Code task:** In the `Unet` definition below, the downsampling path is fully defined, but the upsampling path is missing. Fill in the missing code. Use the downsampling path as a hint." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "sesgVpsthotg" }, "outputs": [], "source": [ "class Unet(hk.Module):\n", " def __init__(\n", " self,\n", " dim,\n", " dim_mults=(\n", " 1,\n", " 2,\n", " 4,\n", " ),\n", " channels=3,\n", " resnet_block_groups=7,\n", " ):\n", " super().__init__()\n", "\n", " # determine dimensions\n", " init_dim = dim // 3 * 2\n", " self.init_conv = hk.Conv2D(init_dim, kernel_shape=7, padding=(3, 3))\n", "\n", " # time embeddings\n", " time_dim = dim * 4\n", " self.time_mlp = hk.Sequential(\n", " [\n", " TimeEmbedding(dim),\n", " hk.Linear(time_dim),\n", " jax.nn.gelu,\n", " hk.Linear(time_dim),\n", " ]\n", " )\n", "\n", " # layers\n", " self.downs = []\n", " dims = list(map(lambda m: dim * m, dim_mults))\n", "\n", " for ind, stage_dim in enumerate(dims):\n", " is_last = ind >= len(dims) - 1\n", "\n", " self.downs.append(\n", " [\n", " ResnetBlock(stage_dim, groups=resnet_block_groups, change_dim=True),\n", " ResnetBlock(stage_dim, groups=resnet_block_groups),\n", " # We don't apply spatial downsampling to the last stage. This is\n", " # because we go from 28x28 -> 14x14 -> 7x7 in the 1st and 2nd\n", " # stages and 7 can't be halved without a remainder, which\n", " # would cause problems in the upsampling path.\n", " SpatialDownsample(stage_dim) if not is_last else lambda x: x,\n", " ]\n", " )\n", "\n", " mid_dim = dims[-1]\n", " self.mid_block1 = ResnetBlock(mid_dim, groups=resnet_block_groups)\n", " self.mid_block2 = ResnetBlock(mid_dim, groups=resnet_block_groups)\n", "\n", " self.ups = []\n", " rev_dims = list(reversed(dims))\n", " for ind, stage_dim in enumerate(rev_dims):\n", " is_last = ind >= len(rev_dims) - 1\n", "\n", " # YOUR SOLUTION GOES HERE\n", " # Refer to the U-Net diagram if you need help.\n", "\n", " self.final_block = ResnetBlock(dim, groups=resnet_block_groups)\n", " self.final_conv = hk.Conv2D(channels, kernel_shape=1, padding=(0, 0))\n", "\n", " def __call__(self, x, t):\n", " x = self.init_conv(x)\n", " t = self.time_mlp(t)\n", "\n", " h = []\n", " # downsample\n", " for block1, block2, downsample in self.downs:\n", " x = block1(x, t)\n", " x = block2(x, t)\n", " h.append(x)\n", " x = downsample(x)\n", "\n", " # bottleneck\n", " x = self.mid_block1(x, t)\n", " x = self.mid_block2(x, t)\n", "\n", " # upsample\n", " for block1, block2, upsample in self.ups:\n", " x = jnp.concatenate((x, h.pop()), axis=-1)\n", " # YOUR SOLUTION GOES HERE\n", " # Refer to the U-Net diagram if you need help.\n", "\n", " x = self.final_block(x, t)\n", " return self.final_conv(x)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "WzD8htQu3Ptl" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "\n", "\n", "class Unet(hk.Module):\n", " def __init__(\n", " self,\n", " dim,\n", " dim_mults=(\n", " 1,\n", " 2,\n", " 4,\n", " ),\n", " channels=3,\n", " resnet_block_groups=7,\n", " ):\n", " super().__init__()\n", "\n", " # determine dimensions\n", " init_dim = dim // 3 * 2\n", " self.init_conv = hk.Conv2D(init_dim, kernel_shape=7, padding=(3, 3))\n", "\n", " # time embeddings\n", " time_dim = dim * 4\n", " self.time_mlp = hk.Sequential(\n", " [\n", " TimeEmbedding(dim),\n", " hk.Linear(time_dim),\n", " jax.nn.gelu,\n", " hk.Linear(time_dim),\n", " ]\n", " )\n", "\n", " # layers\n", " self.downs = []\n", " dims = list(map(lambda m: dim * m, dim_mults))\n", "\n", " for ind, stage_dim in enumerate(dims):\n", " is_last = ind >= len(dims) - 1\n", "\n", " self.downs.append(\n", " [\n", " ResnetBlock(stage_dim, groups=resnet_block_groups, change_dim=True),\n", " ResnetBlock(stage_dim, groups=resnet_block_groups),\n", " # We don't apply spatial downsampling to the last stage. This is\n", " # because we go from 28x28 -> 14x14 -> 7x7 in the 1st and 2nd\n", " # stages and 7 can't be halved without a remainder, which\n", " # would cause problems in the upsampling path.\n", " SpatialDownsample(stage_dim) if not is_last else lambda x: x,\n", " ]\n", " )\n", "\n", " mid_dim = dims[-1]\n", " self.mid_block1 = ResnetBlock(mid_dim, groups=resnet_block_groups)\n", " self.mid_block2 = ResnetBlock(mid_dim, groups=resnet_block_groups)\n", "\n", " self.ups = []\n", " rev_dims = list(reversed(dims))\n", " for ind, stage_dim in enumerate(rev_dims):\n", " is_last = ind >= len(rev_dims) - 1\n", "\n", " self.ups.append(\n", " [\n", " ResnetBlock(stage_dim, groups=resnet_block_groups, change_dim=True),\n", " ResnetBlock(stage_dim, groups=resnet_block_groups),\n", " SpatialUpsample(stage_dim) if not is_last else lambda x: x,\n", " ]\n", " )\n", "\n", " self.final_block = ResnetBlock(dim, groups=resnet_block_groups)\n", " self.final_conv = hk.Conv2D(channels, kernel_shape=1, padding=(0, 0))\n", "\n", " def __call__(self, x, time):\n", " x = self.init_conv(x)\n", " t = self.time_mlp(time)\n", "\n", " h = []\n", " # downsample\n", " for block1, block2, downsample in self.downs:\n", " x = block1(x, t)\n", " x = block2(x, t)\n", " h.append(x)\n", " x = downsample(x)\n", "\n", " # bottleneck\n", " x = self.mid_block1(x, t)\n", " x = self.mid_block2(x, t)\n", "\n", " # upsample\n", " for block1, block2, upsample in self.ups:\n", " x = jnp.concatenate((x, h.pop()), axis=-1)\n", " x = block1(x, t)\n", " x = block2(x, t)\n", " x = upsample(x)\n", "\n", " x = self.final_block(x, t)\n", " return self.final_conv(x)" ] }, { "cell_type": "markdown", "metadata": { "id": "E2-yrQShiX2D" }, "source": [ "#### **Training**" ] }, { "cell_type": "markdown", "metadata": { "id": "v6rcs8HY9CJW" }, "source": [ "##### **Setup**" ] }, { "cell_type": "markdown", "metadata": { "id": "BNkVQCjDwHr7" }, "source": [ "We specify some training hyperparameters and other constants." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "mExE7xqcwSUr" }, "outputs": [], "source": [ "LR = 3e-4\n", "IMAGE_SIZE = 28\n", "CHANNELS = 1" ] }, { "cell_type": "markdown", "metadata": { "id": "hHJwCofBwWB9" }, "source": [ "Now we define the forward function for our NN and apply appropriate `haiku` transformations, so that we can use it when we define the loss function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Nxux7w-oO7_w" }, "outputs": [], "source": [ "def build_forward_fn(dim, channels):\n", " def forward_fn(x, t):\n", " \"\"\"Forward pass.\"\"\"\n", " model = Unet(dim, channels=channels)\n", "\n", " return model(x, t)\n", "\n", " return forward_fn\n", "\n", "\n", "forward_fn = build_forward_fn(dim=IMAGE_SIZE, channels=CHANNELS)\n", "# Convert from a stateful to a stateless forward function.\n", "forward_fn = hk.transform(forward_fn)\n", "# Remove unnecessary random seed from the forward function.\n", "forward_fn = hk.without_apply_rng(forward_fn)" ] }, { "cell_type": "markdown", "metadata": { "id": "RHtt_xWHwpce" }, "source": [ "Let's also initialise our NN and optimiser." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "6FhydE4yLoBJ" }, "outputs": [], "source": [ "# Initialise model.\n", "init_rng = jax.random.PRNGKey(42)\n", "dummy_input = jnp.ones((1, IMAGE_SIZE, IMAGE_SIZE, CHANNELS))\n", "params = forward_fn.init(init_rng, dummy_input, jnp.array([0]))\n", "\n", "# Set up the optimiser.\n", "optimiser = optax.adam(LR)\n", "opt_state = optimiser.init(params)" ] }, { "cell_type": "markdown", "metadata": { "id": "o8nzDkhZ6bLc" }, "source": [ "##### **The Loss Function** `Intermediate`\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "orVPm6eE9Pqy" }, "source": [ "As we discussed back in [The Challenge of Deep Generative Models](#challenge-dgms), to train our generative model, we want to maximise the probability of the observed training data $p_\\theta\\left(\\mathbf{x}\\right)$. \n", "\n", "But, we don't know how to calculate $p_\\theta(\\mathbf{x})$. Luckily, we can use the structure of the diffusion model, and the rules of probability to solve this problem! \n", "\n", "\n", "Let's bring back the notion of time from the diffusion model and write observed data as $\\mathbf{x}_0$. Then we know that $\\mathbf{x}_0$ depends on all of the $\\{\\mathbf{x}_t\\}_{t=1}^T$. Using the sum rule, we can write\n", "$$\n", " p_\\theta(\\mathbf{x}_0) = \\int_{\\mathbf{x}_1, \\ldots, \\mathbf{x}_T} p_\\theta(\\mathbf{x}_0, \\mathbf{x}_1, \\ldots, \\mathbf{x}_T)\\, d \\mathbf{x}_1 \\ldots d \\mathbf{x}_T.\n", "$$\n", "Then, using the product rule and our knowledge that $\\mathbf{x}_t$ given $\\mathbf{x}_{t+1}$ is independent of $\\{\\mathbf{x}_i\\}_{i \\ne t+1}$, we get\n", "$$\n", " p_\\theta(\\mathbf{x}_0) = \\int_{\\mathbf{x}_1, \\ldots, \\mathbf{x}_T} p_\\theta(\\mathbf{x}_0 | \\mathbf{x}_1) p_\\theta(\\mathbf{x}_1 | \\mathbf{x}_2)\\cdots p_\\theta(\\mathbf{x}_{T-1} | \\mathbf{x}_T) p(\\mathbf{x}_T)\\, d \\mathbf{x}_1 \\ldots d \\mathbf{x}_T.\n", "$$\n", "\n", "OK, we've made some progress! We've replaced $p_\\theta(\\mathbf{x}_0)$, which we didn't know how to calculate, with an integral of functions that we do know how to calculate:\n", "* $p_\\theta(\\mathbf{x}_{t-1} | \\mathbf{x}_{t})$, the reverse process in our diffusion model, which is predicted by a NN as described in [Putting the pieces together](#putting-it-together).\n", "* $p(\\mathbf{x}_T)$, which we can choose to be $\\mathcal{N}(\\mathbf{x}_T|\\mathbf{0}, \\mathbf{1})$.\n", "\n", "However, we still aren't finished... Unfortunately, we can't evaluate this integral! \n", "\n", "**Group Task:** Discuss why this integral might be problematic. Think about how you would try to calculate it.\n", "\n", "To solve this problem, we are going to use a trick from VAEs, the Evidence Lower BOund (ELBO). Let's multiply the integrand by $1 = \\frac{q(\\mathbf{x}_1|\\mathbf{x}_0)}{q(\\mathbf{x}_1|\\mathbf{x}_0)} \\cdots \\frac{q(\\mathbf{x}_T|\\mathbf{x}_{T-1})}{q(\\mathbf{x}_T|\\mathbf{x}_{T-1})} $:\n", "$$\n", " p_\\theta(\\mathbf{x}_0) = \\int_{\\mathbf{x}_1, \\ldots, \\mathbf{x}_T} p_\\theta(\\mathbf{x}_0 | \\mathbf{x}_1) p_\\theta(\\mathbf{x}_1 | \\mathbf{x}_2)\\cdots p_\\theta(\\mathbf{x}_{T-1} | \\mathbf{x}_T) p(\\mathbf{x}_T) \\frac{q(\\mathbf{x}_1|\\mathbf{x}_0)}{q(\\mathbf{x}_1|\\mathbf{x}_0)} \\cdots \\frac{q(\\mathbf{x}_T|\\mathbf{x}_{T-1})}{q(\\mathbf{x}_T|\\mathbf{x}_{T-1})}\\, d \\mathbf{x}_1 \\ldots d \\mathbf{x}_T.\n", "$$\n", "Note that the $q$ terms that we have introduced are just the forward diffusion process which we defined earlier and are easy to calculate. \n", "\n", "Now, using the definition of the expected value $\\left(\\mathbb{E}_{p}\\left[f(x)\\right] = \\int_x f(x) p(x) dx \\right)$ we can further simplify the above expression to get\n", "\n", "$$\n", " p_\\theta(\\mathbf{x}_0) = \\mathbb{E}_{q(\\mathbf{x}_1|\\mathbf{x}_0), \\ldots, q(\\mathbf{x}_T|\\mathbf{x}_{T-1})} \\left[\\frac{p_\\theta(\\mathbf{x}_0 | \\mathbf{x}_1)}{q(\\mathbf{x}_1|\\mathbf{x}_0)} \\cdots \\frac{p_\\theta(\\mathbf{x}_{T-1} | \\mathbf{x}_T)}{q(\\mathbf{x}_T|\\mathbf{x}_{T-1})}p(\\mathbf{x}_T)\\right].\n", "$$\n", "\n", "We now have an objective that we can calculate since we can use Monte Carlo to approximate the expectation. However, there is another problem, this objective is numerically unstable since both our numerator and denominator consist of many numbers between 0 and 1. This can easily lead to numerical underflow or overflow. The final steps to define our objective are to take a $\\log$ (recall that the $\\log$ function is concave and this doesn't change the optimisation problem), multiply both sides by $-1$, and then apply [Jensen's inequality](https://en.wikipedia.org/wiki/Jensen%27s_inequality)\n", "\\begin{align}\n", "-\\log p_\\theta(\\mathbf{x}_0) &= -\\log \\mathbb{E}_{q(\\mathbf{x}_1|\\mathbf{x}_0), \\ldots, q(\\mathbf{x}_{T}|\\mathbf{x}_{T-1})} \\left[\\frac{p_\\theta(\\mathbf{x}_0 | \\mathbf{x}_1)}{q(\\mathbf{x}_1|\\mathbf{x}_0)} \\cdots \\frac{p_\\theta(\\mathbf{x}_{T-1} | \\mathbf{x}_T)}{q(\\mathbf{x}_T|\\mathbf{x}_{T-1})}p(\\mathbf{x}_T)\\right] \\\\\n", "&\\le \\mathbb{E}_{q(\\mathbf{x}_1|\\mathbf{x}_0), \\ldots, q(\\mathbf{x}_T|\\mathbf{x}_{T-1})} \\left[-\\log \\frac{p_\\theta(\\mathbf{x}_0 | \\mathbf{x}_1)}{q(\\mathbf{x}_1|\\mathbf{x}_0)} - \\cdots - \\log \\frac{p_\\theta(\\mathbf{x}_{T-1} | \\mathbf{x}_T)}{q(\\mathbf{x}_T|\\mathbf{x}_{T-1})} - \\log p(\\mathbf{x}_T)\\right].\n", "\\end{align}\n", "\n", "**Group Task:** Convince yourselves that a) we can calculate the expression on the last line above, and b) minimizing this expression is equivalent to maximising $p_\\theta(\\mathbf{x}_0)$." ] }, { "cell_type": "markdown", "metadata": { "id": "lrAawN7-4s1B" }, "source": [ "###### **[Optional] Simplifying the Loss Function** `Intermediate`" ] }, { "cell_type": "markdown", "metadata": { "id": "1mh8sbTp41zI" }, "source": [ "While the loss function that we have just defined is valid, there are several simplifications that we can make. These simplifications end up making training the diffusion model easier in practice. In this section, we will not go over the exact simplifications used in the paper, as this involves more math than we have time for here2. Instead, we'll build some intuition for the kinds of simplifications that are presented in the paper. \n", "\n", "\\\n", "**Step 0:** To start, we will rewrite our loss, as described in section 2 of the paper, resulting in\n", "$$\n", "\\mathcal{L} = \\mathbb{E}_{q(\\mathbf{x}_1|\\mathbf{x}_0), q(\\mathbf{x}_1|\\mathbf{x}_2, \\mathbf{x}_0), \\ldots, q(\\mathbf{x}_{T-1}|\\mathbf{x}_{T}, \\mathbf{x}_0)q(\\mathbf{x}_T|\\mathbf{x}_{0})} \n", "\\left[\n", "-\\log p_\\theta(\\mathbf{x}_0 | \\mathbf{x}_1) - \\sum_{t>1} \\left( \\log \\frac{p_\\theta(\\mathbf{x}_{t-1} | \\mathbf{x}_t)}{q(\\mathbf{x}_{t-1}|\\mathbf{x}_t, \\mathbf{x}_0)} \\right) - \\log \\frac{p(\\mathbf{x}_T)}{q(\\mathbf{x}_T|\\mathbf{x}_0)}\n", "\\right],\n", "$$\n", "where $q(\\mathbf{x}_{t-1}|\\mathbf{x}_t, \\mathbf{x}_0) = \\mathcal{N}\\left(\\frac{\\sqrt{\\bar\\alpha_{t-1}}\\beta_t }{1-\\bar\\alpha_t}\\mathbf{x}_0 + \\frac{\\sqrt{\\alpha_t}(1- \\bar\\alpha_{t-1})}{1-\\bar\\alpha_t} \\mathbf{x}_t, \\frac{1-\\bar\\alpha_{t-1}}{1-\\bar\\alpha_t}\\beta_t \\cdot \\mathbf{I} \\right)$.\n", "\n", "\\\n", "**Step 1:** Dropping the $\\log \\frac{p(\\mathbf{x}_T)}{q(\\mathbf{x}_T|\\mathbf{x}_{T-1})}$ term. This term doesn't have any learnable parameters, thus when we take gradients of the loss with respect to $\\theta$ it will disappear anyway. Our loss is then\n", "$$\n", "\\mathcal{L} = \\mathbb{E}_{q(\\mathbf{x}_1|\\mathbf{x}_0), q(\\mathbf{x}_1|\\mathbf{x}_2, \\mathbf{x}_0), \\ldots, q(\\mathbf{x}_{T-1}|\\mathbf{x}_{T}, \\mathbf{x}_0)}\n", "\\left[\n", "-\\log p_\\theta(\\mathbf{x}_0 | \\mathbf{x}_1) - \\sum_{t>1} \\left( \\log \\frac{p_\\theta(\\mathbf{x}_{t-1} | \\mathbf{x}_t)}{q(\\mathbf{x}_{t-1}|\\mathbf{x}_t, \\mathbf{x}_0)} \\right)\n", "\\right].\n", "$$\n", "For the following simplification steps, let's ignore the $\\log p_\\theta(\\mathbf{x}_0 | \\mathbf{x}_1)$ term, to keep the explanations simple. \n", "\n", "\\\n", "**Step 2:** Optimise random terms of $\\mathcal{L}$, corresponding to random timesteps. Our loss now becomes\n", "$$\n", "\\mathcal{L} = \\mathbb{E}_{\\mathcal{U}(t|2, T)} \\left[\\mathbb{E}_{q(\\mathbf{x}_{t-1}|\\mathbf{x}_t, \\mathbf{x}_0)}\n", "\\left[\n", "- \\log \\frac{p_\\theta(\\mathbf{x}_{t-1} | \\mathbf{x}_{t})}{q(\\mathbf{x}_{t-1}|\\mathbf{x}_t, \\mathbf{x}_0)}\n", "\\right]\\right],\n", "$$\n", "where $\\mathcal{U}(t|2, T)$ is a discrete uniform distribution for values of $t$ between 2 and $T$. This is a valid loss function because the expected value is the same. However, it does have a higher variance than the loss in Step 1. So why would we make this change? Well, it allows us to do very efficient training. This is because we have an analytical expression for $q(\\mathbf{x}_t|\\mathbf{x}_0)$, allowing us to sample $\\mathbf{x}_t$ directly from $\\mathbf{x}_0$, as discussed in [Diffusion](#diffusion). The training is now more efficient because if we approximate the expectation over $t$ with a single Monte-Carlo sample\n", "$$\n", "\\mathcal{L} = \\mathbb{E}_{q(\\mathbf{x}_{t}|\\mathbf{x}_{t-1})}\n", "\\left[\n", "- \\log \\frac{p_\\theta(\\mathbf{x}_{t-1} | \\mathbf{x}_{t})}{q(\\mathbf{x}_{t-1}|\\mathbf{x}_t, \\mathbf{x}_0)}\n", "\\right], \\quad t \\sim \\mathcal{U}(t|2, T).\n", "$$\n", "we only have to evaluate our U-Net 1 time, rather than T times, per example.\n", "\n", "\\\n", "**Step 3:** Replace the expectation with an analytical solution. Note that the expectation above is equivalent to the [KL-divergence](https://en.wikipedia.org/wiki/Kullback%E2%80%93Leibler_divergence) between $q(\\mathbf{x}_{t-1}|\\mathbf{x}_t, \\mathbf{x}_0)$ and $p_\\theta(\\mathbf{x}_{t-1} | \\mathbf{x}_{t})$:\n", "$$\n", "\\mathcal{L} = D_\\text{KL}\\left(q(\\mathbf{x}_{t-1}|\\mathbf{x}_t, \\mathbf{x}_0)\\middle|\\middle| p_\\theta(\\mathbf{x}_{t-1} | \\mathbf{x}_{t})\\right), \\quad t \\sim \\mathcal{U}(t|2, T).\n", "$$\n", "As discussed in [Putting the pieces together](#putting-it-together), $p_\\theta(\\mathbf{x}_{t-1} | \\mathbf{x}_{t}) = \\mathcal{N}\\left(\\mathbf{x}_{t-1}\\middle| \\mu_\\theta(\\mathbf{x}_{t}, t), \\beta_{t+1} \\cdot \\mathbf{I} \\right)$. Both distributions are Gaussian which means that the KL-divergence has a closed form expression\n", "\\begin{align*}\n", "&D_\\text{KL}\\left(q(\\mathbf{x}_{t-1}|\\mathbf{x}_t, \\mathbf{x}_0)\\middle|\\middle| p_\\theta(\\mathbf{x}_{t-1} | \\mathbf{x}_{t})\\right) \\\\\n", "%\n", "&= \\frac{1}{2}\\left(\\text{Tr}\\left(\\Sigma_q^{-1}\\Sigma_p\\right) - \\mathtt{image\\_dim} + \\left(\\mu_q - \\mu_p \\right)^{\\top}\\Sigma_q^{-1}\\left(\\mu_q - \\mu_p \\right) + \\log\\left(\\frac{\\text{Det}\\Sigma_q}{\\text{Det} \\Sigma_p}\\right)\\right) \\\\\n", "%\n", "&= \\frac{1}{2\\sigma_q^2} || \\mu_q - \\mu_p ||^2 + C,\n", "\\end{align*}\n", "where $C$ is a constant that does not depend on $\\theta$. Plugging in the expressions $\\mu_q$, $\\mu_p$, and $\\sigma_q^2$, and dropping $C$, we get \n", "$$\n", "\\mathcal{L} = \n", "\\frac{1}{2 \\beta_t} \\left|\\left| \\frac{\\sqrt{\\bar\\alpha_{t-1}}\\beta_t }{1-\\bar\\alpha_t}\\mathbf{x}_0 + \\frac{\\sqrt{\\alpha_t}(1- \\bar\\alpha_{t-1})}{1-\\bar\\alpha_t} \\mathbf{x}_t - \\mu_\\theta(\\mathbf{x}_{t}, t) \\right|\\right|^2, \\quad t \\sim \\mathcal{U}(t|2, T).\n", "$$\n", "\n", "\\\n", "**Steps 4:** Reparameterise $\\mathbf{x}_t$ in terms of $\\mathbf{x}_0$ using $q(\\mathbf{x}_t|\\mathbf{x}_0)$ (as described in [Diffusion](#diffusion)):\n", "\\begin{align*}\n", " \\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}) &= \\sqrt{\\bar{\\alpha_t}} \\mathbf{x}_{0} + \\sqrt{1 - \\bar{\\alpha_t}}\\boldsymbol{\\epsilon}, \\quad \\boldsymbol{\\epsilon} \\sim \\mathcal{N}\\left(\\mathbf{0}, \\mathbf{I}\\right)\\\\\n", " \\therefore \\mathbf{x}_0 &= \\frac{1}{\\sqrt{\\bar{\\alpha_t}}} \\left(\\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}) - \\sqrt{1 - \\bar{\\alpha_t}}\\boldsymbol{\\epsilon}\\right), \\quad \\boldsymbol{\\epsilon} \\sim \\mathcal{N}\\left(\\mathbf{0}, \\mathbf{I}\\right)\n", "\\end{align*}\n", "and substitute that into our loss from above\n", "\\begin{align*}\n", " \\mathcal{L} &= \n", "\\frac{1}{2 \\beta_t} \\left|\\left| \\frac{\\sqrt{\\bar\\alpha_{t-1}}\\beta_t }{1-\\bar\\alpha_t}\\frac{1}{\\sqrt{\\bar{\\alpha_t}}} \\left(\\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}) - \\sqrt{1 - \\bar{\\alpha_t}}\\boldsymbol{\\epsilon}\\right) + \\frac{\\sqrt{\\alpha_t}(1- \\bar\\alpha_{t-1})}{1-\\bar\\alpha_t}\\mathbf{x}_t - \\mu_\\theta(\\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}), t) \\right|\\right|^2, \\quad t \\sim \\mathcal{U}(t|2, T), \\quad \\boldsymbol{\\epsilon} \\sim \\mathcal{N}\\left(\\mathbf{0}, \\mathbf{I}\\right) \\\\\n", "&= \\frac{1}{2 \\beta_t} \\left|\\left| \\frac{1}{\\sqrt{\\alpha_t}}\\left( \\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}) - \\frac{\\beta_t}{\\sqrt{1 - \\bar{\\alpha_t}}}\\boldsymbol{\\epsilon} \\right) - \\mu_\\theta(\\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}), t) \\right|\\right|^2, \\quad t \\sim \\mathcal{U}(t|2, T), \\quad \\boldsymbol{\\epsilon} \\sim \\mathcal{N}\\left(\\mathbf{0}, \\mathbf{I}\\right),\n", "\\end{align*}\n", "where we are writing $\\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon})$ instead of $\\mathbf{x}_t$ to be explicit about the fact that $\\mathbf{x}_t$ is calculated using $q(\\mathbf{x}_t|\\mathbf{x}_0)$. \n", "\n", "Now, we can also re-write\n", "$$\n", "\\mu_\\theta(\\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}), t) = \\frac{1}{\\sqrt{\\alpha_t}}\\left( \\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}) - \\frac{\\beta_t}{\\sqrt{1 - \\bar{\\alpha_t}}}\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_0, t) \\right),\n", "$$\n", "which can be subsitituted into our loss to give\n", "$$\n", "\\mathcal{L} = \\frac{\\beta_t}{2 \\alpha_t (1 - \\bar{\\alpha}_t)} \\left|\\left| \\boldsymbol{\\epsilon} - \\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}), t) \\right|\\right|^2, \\quad t \\sim \\mathcal{U}(t|2, T), \\quad \\boldsymbol{\\epsilon} \\sim \\mathcal{N}\\left(\\mathbf{0}, \\mathbf{I}\\right).\n", "$$\n", "\n", "\n", "**Step 5:** Ignore the weighting term $\\frac{\\beta_t}{2 \\alpha_t (1 - \\bar{\\alpha}_t)}$:\n", "$$\n", "\\mathcal{L} = \\left|\\left| \\boldsymbol{\\epsilon} - \\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t(\\mathbf{x}_0, \\boldsymbol{\\epsilon}), t) \\right|\\right|^2, \\quad t \\sim \\mathcal{U}(t|2, T), \\quad \\boldsymbol{\\epsilon} \\sim \\mathcal{N}\\left(\\mathbf{0}, \\mathbf{I}\\right),\n", "$$\n", "which is equivalent to a weighted variational bound that puts *less* emphasis on the terms corresponding to smaller values of $t$. This improves sample quality since the network is focused on timesteps with *more* noise which are harder to learn. \n", "\n", "\n", "2For more details, see [this fantastic blog](https://lilianweng.github.io/posts/2021-07-11-diffusion-models/#reverse-diffusion-process) or section 3 of [the paper](https://arxiv.org/pdf/2006.11239.pdf)." ] }, { "cell_type": "markdown", "metadata": { "id": "z3QmO80f5L3l" }, "source": [ "###### **Implementing the Loss Function in `jax`**" ] }, { "cell_type": "markdown", "metadata": { "id": "YMZmx8J75UK4" }, "source": [ "If you skipped the optional section above, the TL;DR is that our loss function can be simplified to\n", "$$\n", "\\mathcal{L} = ||\\boldsymbol{\\epsilon} - \\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t, t)||^2,\n", "$$ \n", "where $\\mathbf{x_t} = \\sqrt{\\bar{\\alpha_t}} \\mathbf{x}_{0} + \\sqrt{1 - \\bar{\\alpha_t}}\\boldsymbol{\\epsilon}$, which is simply the mean squared error between the noise added in timestep $t$ of the forward diffusion process ($\\boldsymbol{\\epsilon}$) and the noise predicted by our neural network for the same time step ($\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t, t)$). \n", "\n", "Hopefully, even without the optional discussion above, you have some intuition for why this might make sense. *Hint:* think about training the forward diffusion process to match the reverse process (i.e., the score function). \n", "\n", "The final piece of the puzzle is how to generalize this loss to a batch of inputs, and the solution is simple – we just take the average loss over our batch.\n", "\n", "**Code task: `Intermediate`**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "2tKDPOVf9dQQ" }, "outputs": [], "source": [ "@jax.jit\n", "def loss_fn(params, x_0, t, ϵ):\n", " # Sample x_t from the forward diffusion process - q(x_t|x_0):\n", " # x_t = YOUR SOLUTION GOES HERE\n", "\n", " # Predict ϵ using our U-Net with inputs x_t and t:\n", " # predicted_ϵ = YOUR SOLUTION GOES HERE\n", "\n", " # Calculate the loss as the mean squared error between the true and predicted ϵs:\n", " # loss = YOUR SOLUTION GOES HERE\n", "\n", " return loss" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "AVtczEEZ9epO" }, "outputs": [], "source": [ "# @title Answer to code task (Try not to peek until you've given it a good try!')\n", "@jax.jit\n", "def loss_fn(params, x_0, t, ϵ):\n", " # Sample x_t from the forward diffusion process - q(x_t|x_0):\n", " x_t = q_sample(x_start=x_batch, t=t, noise=ϵ)\n", "\n", " # Predict ϵ using our U-Net with inputs x_t and t:\n", " predicted_ϵ = forward_fn.apply(params, x_t, t)\n", "\n", " # Calculate the loss as the mean squared error between the true and predicted ϵs:\n", " loss = jnp.mean((ϵ - predicted_ϵ) ** 2)\n", "\n", " return loss" ] }, { "cell_type": "markdown", "metadata": { "id": "Iqmzzr6M_Qju" }, "source": [ "Now we can use our loss function to define the update step for training our diffusion model." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "64y_RM-Q6QCf" }, "outputs": [], "source": [ "@jax.jit\n", "def update(params, opt_state, batch, t, noise):\n", " loss, grads = jax.value_and_grad(loss_fn)(params, batch, t, noise)\n", " updates, opt_state = optimiser.update(grads, opt_state)\n", " params = optax.apply_updates(params, updates)\n", " return params, opt_state, loss" ] }, { "cell_type": "markdown", "source": [ "Now we have all the peices we need run the training algorithm from the paper:" ], "metadata": { "id": "ARtHsN3YNqRg" } }, { "cell_type": "markdown", "source": [ "\"UNet\n" ], "metadata": { "id": "HMOAq7xrNvm9" } }, { "cell_type": "markdown", "metadata": { "id": "lbd8qQoG8pHC" }, "source": [ "##### 🚀 **Go Time** 🚀" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "rE7ZJZN3lQ13" }, "outputs": [], "source": [ "%%time\n", "plotlosses = PlotLosses()\n", "\n", "MAX_STEPS = 2501\n", "key = jax.random.PRNGKey(42)\n", "\n", "best_loss = jnp.inf\n", "for step in range(MAX_STEPS):\n", " key, noise_key, time_key, sample_key = jax.random.split(key, num=4)\n", "\n", " x_batch = next(train_dataset)\n", " batch_size = x_batch.shape[0]\n", "\n", " t = jax.random.randint(time_key, (batch_size,), 0, TIMESTEPS)\n", " noise = jax.random.normal(noise_key, x_batch.shape)\n", " params, opt_state, loss = update(params, opt_state, x_batch, t, noise)\n", "\n", " if loss < best_loss:\n", " best_params = params\n", " best_loss = loss\n", "\n", " plotlosses.update({\"loss\": loss})\n", " if step % 50 == 0:\n", " plotlosses.send()" ] }, { "cell_type": "markdown", "metadata": { "id": "yR6TQQZ08lhc" }, "source": [ "##### **Sampling**\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "zGV6bULGVapp" }, "source": [ "The code below implements the sampling algorithm from the paper. Don't spend too much time on it unless you are curious – rather look ahead to the sampled results from our trained diffusion model!" ] }, { "cell_type": "markdown", "source": [ "\"UNet" ], "metadata": { "id": "xYjWi1QyO0ub" } }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Cs065rgHV5WZ" }, "outputs": [], "source": [ "sqrt_recip_alphas = jnp.sqrt(1.0 / alphas)\n", "\n", "alphas_cumprod_prev = jnp.concatenate((jnp.array([1.0]), alphas_cumprod[:-1]))\n", "posterior_variance = betas * (1.0 - alphas_cumprod_prev) / (1.0 - alphas_cumprod)\n", "\n", "\n", "# Algorithm 2 line 4:\n", "@partial(jax.jit, static_argnums=4)\n", "def sample_iteration(params, key, x, t, add_noise=True):\n", " betas_t = extract(betas, t, x.shape)\n", " sqrt_one_minus_alphas_cumprod_t = extract(sqrt_one_minus_alphas_cumprod, t, x.shape)\n", " sqrt_recip_alphas_t = extract(sqrt_recip_alphas, t, x.shape)\n", "\n", " # Use our model (noise predictor) to predict the mean\n", " model_mean = sqrt_recip_alphas_t * (\n", " x - betas_t * forward_fn.apply(params, x, t) / sqrt_one_minus_alphas_cumprod_t\n", " )\n", "\n", " posterior_variance_t = extract(posterior_variance, t, x.shape)\n", " noise = jax.random.normal(key, x.shape)\n", "\n", " return model_mean + jnp.sqrt(posterior_variance_t) * noise\n", "\n", "\n", "# Algorithm 2\n", "def sample(params, key, image_size, batch_size=16, channels=3):\n", " shape = (batch_size, image_size, image_size, channels)\n", "\n", " img_key, key = jax.random.split(key, num=2)\n", " # start from pure noise (for each example in the batch)\n", " img = jax.random.normal(img_key, shape)\n", " imgs = []\n", "\n", " for i in tqdm(\n", " reversed(range(0, TIMESTEPS)), desc=\"sampling loop time step\", total=TIMESTEPS\n", " ):\n", " noise_key, key = jax.random.split(key, num=2)\n", " img = sample_iteration(\n", " params, noise_key, img, jnp.full((batch_size,), i), i != 0\n", " )\n", " imgs.append(img)\n", "\n", " return imgs" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "3-UJs5vQQ5ym" }, "outputs": [], "source": [ "samples = sample(best_params, key, IMAGE_SIZE, 25, CHANNELS)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "5EeRLL1AVNKl" }, "outputs": [], "source": [ "# @title Show samples (Run Cell)\n", "plt.figure(figsize=(10, 10))\n", "for i in range(25):\n", " plt.subplot(5, 5, i + 1)\n", " plt.xticks([])\n", " plt.yticks([])\n", " plt.grid(False)\n", "\n", " img_index = np.random.randint(0, 50000)\n", " plt.imshow(samples[-1][i][:, :, 0])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "JXz8o2uoV3uq" }, "outputs": [], "source": [ "# @title Animate diffusion (Run Cell)\n", "sample_index = 13 # @param\n", "\n", "fig = plt.figure()\n", "ims = []\n", "for i in range(TIMESTEPS):\n", " im = plt.imshow(samples[i][sample_index][:, :, 0], animated=True)\n", " plt.xticks([])\n", " plt.yticks([])\n", " plt.grid(False)\n", " ims.append([im])\n", "\n", "animate = animation.ArtistAnimation(fig, ims, interval=50, blit=True, repeat_delay=5000)\n", "plt.close()\n", "\n", "HTML(animate.to_html5_video())" ] }, { "cell_type": "markdown", "metadata": { "id": "QVAuiHsXfNJB" }, "source": [ "#### **[Optional] Guided diffusion** `Intermediate`" ] }, { "cell_type": "markdown", "metadata": { "id": "kbYnTNNgXjDW" }, "source": [ "**Guidance** is a technique for drastically improving the sample quality of diffusion models, at the cost of lower diversity. It is one of the reasons that diffusion models have been able to replace GANs for image synthesis. \n", "\n", "Guidance can be explained by using Bayes' rule to decompose the score function in a conditional diffusion model:\n", "\\begin{align}\n", "\\nabla_\\mathbf{x} p(\\mathbf{x}|y) &= \\nabla_\\mathbf{x} \\log \\frac{p(y|\\mathbf{x})p(\\mathbf{x})}{p(y)} \\\\\n", "&= \\nabla_\\mathbf{x} \\log p(y|\\mathbf{x}) + \\nabla_\\mathbf{x} \\log p(\\mathbf{x}),\n", "\\end{align}\n", "where $\\nabla_\\mathbf{x} \\log p(y) = 0$. $\\nabla_\\mathbf{x} \\log p(\\mathbf{x})$ is simply the score function for the unconditional diffusion model. $p(\\mathbf{y|x})$ is exactly the probability distribution we would learn in a discriminative model, i.e. a classifier! (Note that $\\nabla_\\mathbf{x} \\log p(y|\\mathbf{x})$ isn't a score function since the gradient is not with respect to $y$). \n", "\n", "The decomposition above reveals that an unconditional diffusion model can be turned into a conditional model by adding the gradient of a classifier to the score function! For such a simple trick, [it has been shown](https://arxiv.org/abs/2105.05233) to greatly improve sample quality!\n", "\n", "In practice, the following *score function* is used for classifier guided diffusion\n", "$$\n", "\\nabla_\\mathbf{x} p_\\gamma(\\mathbf{x}|y) = \\nabla_\\mathbf{x} p(\\mathbf{x}) + \\gamma \\nabla_\\mathbf{x} \\log p(y|\\mathbf{x}),\n", "$$\n", "where $\\gamma > 1$.\n", "\n", "Adding $\\gamma$ in the score function is equivalent to using an up-weighed likelihood in Bayes' rule\n", "$$\n", "p_\\gamma(\\mathbf{x}|y) = \\frac{p(\\mathbf{x}) p(y|\\mathbf{x})^\\gamma}{Z}.\n", "$$\n", "Up-weighing this term has the effect of concentrating probability mass in modes that correspond to the labelled data, which is why we see improved sample quality but lower diversity.\n", "\n", "**Task:** In what applications is this trade-off between sample quality worth making? When is it a bad idea?\n", "\n", "Unfortunately, there are a few complications that make classifier guidance somewhat difficult in practice.\n", "1. Because denoising diffusion models operate on images with varying degrees of noise (i.e., at the different timesteps), the classifier must also be able to handle various noise scales. This means that we need to specifically train classifiers for this purpose, rather than using, for example, large-scale pre-trained models. \n", "2. Because most of the content in an image $\\mathbf{x}$ is not related to the label $y$, applying classifier guidance can result in taking steps in poor directions of input space.\n", "\n", "**Classifier-free guidance**, side-steps these issues by-as you've guessed-not using a classifier. And the solution is also very simple! We train a conditional diffusion model $p(\\mathbf{x}|y)$ with some dropout applied to $y$. I.e., some percentage of the time (e.g., 10\\%-20\\%) we replace $y_\\mathtt{one\\_hot}$ with $\\mathbf{0}$. As a result of this training scheme, the same NN can be used to model $p(y|\\mathbf{x})$ and $p(\\mathbf{x})$, depending on whether or not $y$ or $\\mathbf{0}$ is provided. \n", "\n", "Now we can use $p(\\mathbf{x}|y)$ and $p(\\mathbf{x})$ as follows. We start with Bayes' rule, but in the opposite *direction* as above\n", "\\begin{align}\n", "\\nabla_\\mathbf{x} p(y|\\mathbf{x}) &= \\nabla_\\mathbf{x} \\log \\frac{p(\\mathbf{x}|y)p(y)}{p(\\mathbf{x})} \\\\\n", "&= \\nabla_\\mathbf{x} \\log p(\\mathbf{x}|y) - \\nabla_\\mathbf{x} \\log p(\\mathbf{x}).\n", "\\end{align}\n", "The expression above shows us that we can write $\\nabla_\\mathbf{x} p(y|\\mathbf{x})$ using our diffusion models $p(\\mathbf{x}|y)$ and $p(\\mathbf{x})$, instead of using a classifier!\n", "\n", "Now we can substitute this into the formula for classifier guidance to get classifier-free guidance\n", "\\begin{align}\n", "\\nabla_\\mathbf{x} p_\\gamma(\\mathbf{x}|y) &= \\nabla_\\mathbf{x} p(\\mathbf{x}) + \\gamma \\nabla_\\mathbf{x} \\log p(y|\\mathbf{x}) \\\\\n", "&= \\nabla_\\mathbf{x} p(\\mathbf{x}) + \\gamma \\left( \\nabla_\\mathbf{x} \\log p(\\mathbf{x}|y) - \\nabla_\\mathbf{x} \\log p(\\mathbf{x}) \\right) \\\\\n", "&= (1 - \\gamma) \\nabla_\\mathbf{x} p(\\mathbf{x}) + \\gamma \\log p(\\mathbf{x}|y),\n", "\\end{align}\n", "wher, as before, we use $\\gamma > 1$.\n", "\n", "**Task:** What happens if we set $\\gamma = 0$ or $\\gamma = 1$?\n", "\n", "To quote [Sander Dieleman](https://benanne.github.io/2022/05/26/guidance.html):\n", "\n", "> Why does this work so much better than classifier guidance? The main reason is that we’ve constructed the “classifier” from a generative model. Whereas standard classifiers can take shortcuts and ignore most of the input x while still obtaining competitive classification results, generative models are afforded no such luxury. This makes the resulting gradient much more robust. As a bonus, we only have to train a single (generative) model, and conditioning dropout is trivial to implement.\n", "\n", "Sampling with classifier-free guidance as simple swapping our noise predictor $\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t, t)$ with \n", "$$\n", "\\tilde{\\boldsymbol{\\epsilon}}_\\theta(\\mathbf{x}_t, t, \\mathbf{c}) = (1 + w) \\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t, t, \\mathbf{c}) - w \\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t, t), \n", "$$\n", "where $\\mathbf{c}$ is a one-hot encoding or embedding of the class that is set to $\\mathbf{0}$ for $\\boldsymbol{\\epsilon}_\\theta(\\mathbf{x}_t, t)$, and $w > 0$ controlls the guidance strength.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "QISTyJf24hps" }, "source": [ "#### **Exercises** \n", "\n", "1. Discuss with your neighbour(s), what a deep generative model is. Make sure you understand the challenges compared to a discriminative model are, and what the *deep* in the name means. Next, discuss what a denoising diffusion model is. Make sure you understand both the *denoising* and *diffusion* parts.\n", "2. Try to train on FashionMNIST. This is a more difficult dataset so you might want to try making the U-Net more powerful and training for longer.\n", "3. `Intermediate`: Add label information to make a conditional generative model $p(x|y)$. *Hint:* you'll need to add a new input for the class to the noise predictor. Start simple with a one-hot encoding. Then you can try adding a learnt embedding.\n", "4. `Advanced`: Implement classifier-free guidance. *Hint:* first do the task above, and then add dropout for the class input and modify the sampling procedure as described above. " ] }, { "cell_type": "markdown", "metadata": { "id": "GMrkjFUbfQjQ" }, "source": [ "#### **[Optional] Connections to Autoregressive Models, VAEs, NFs, and EBMs** `Advanced`" ] }, { "cell_type": "markdown", "metadata": { "id": "cL7moBbQxDou" }, "source": [ "##### **Autoregressive models** \n", "\n", "Autoregressive models assume that the probability distribution over a $D$ dimensional observation $\\mathbf{x}$ factorises as $$ p(\\mathbf{x}) = p(x_1) \\prod_{d=1}^{D-1} p(x_{d+1}|x_{d},...,x_1), $$ where $x_d$ is the $d^{th}$ element of $\\mathbf{x}$. This assumption allows us to choose simple distributions for each $p(x_d|...)$ but still have a complex overall distribution for $p(\\mathbf{x})$. However, these models are very expensive to train and sample from due to the conditional structure. Furthermore, it is not clear what the correct ordering of the dimensions of $\\mathbf{x}$ is. Nevertheless, autoregressive models have seen huge success – a prime example being [WaveNet](https://www.deepmind.com/blog/wavenet-a-generative-model-for-raw-audio)!\n", "\n", "**Fun fact:** Autoregressive models are intimately related to denoising diffusion models. Specifically, denoising diffusion models can be understood as autoregressive models where the factorisation is across timesteps instead of dimensions.\n", "\n", "##### **Variational Autoencoders (VAEs)** \n", "\n", "VAEs model $p(\\mathbf{x})$ as a transformation of some simple noise distribution $p(\\mathbf{z})$, which is often chosen to be a simple Gaussian. A neural network $\\mu(\\mathbf{z})$ is chosen to learn the mapping from $\\mathbf{z}$ to $\\mathbf{x}$. Since we assume that most of the structure of $\\mathbf{x}$ will be modelled by this neural network, we choose the conditional distribution $p(\\mathbf{x}|\\mathbf{z})$ to also be a simple Gaussian, centred at $\\mu(\\mathbf{z})$. This conditional distribution just captures the residuals of the neural network's reconstructions. The full distribution over images is thus written as\n", "$$p(\\mathbf{x}) = \\int p(\\mathbf{x}|\\mathbf{z}) p(\\mathbf{z}) \\,d \\mathbf{z}.$$ \n", "Since we can evaluate both $p(\\mathbf{x}|\\mathbf{z})$ and $p(\\mathbf{z})$ due to them being simple distributions, we could in principle, estimate $p(\\mathbf{x})$ using Monte Carlo methods. However, for high-dimensional data $\\mathbf{x}$, such as images, this would have very high variance, preventing any learning.\n", "\n", "The solution is to introduce an inference model $q(\\mathbf{z}|\\mathbf{x})$. This distribution is also chosen to be a simple Gaussian and is also parametrised by a neural network. For each $\\mathbf{x}$ in our training data, $q(\\mathbf{z}|\\mathbf{x})$ aims to approximate the posterior $p(\\mathbf{z}|\\mathbf{x})$. This allows us to construct an Evidence Lower BOund (ELBO), a training objective with much lower variance which, as the name implies, is a lower bound on $\\log p(\\mathbf{x})$:\n", "$$\\log p(\\mathbf{x}) \\geq \\textrm{ELBO} = \\mathbb{E}_q(\\mathbf{z}|\\mathbf{x})[\\log p(\\mathbf{x}|\\mathbf{z})] - D_\\textrm{KL}(q(\\mathbf{z}|\\mathbf{x})\\,||\\, p(\\mathbf{z})).$$\n", "If $q(\\mathbf{z}|\\mathbf{x})$ matches the true posterior $p(\\mathbf{z}|\\mathbf{x})$, then there is equality, and training with the ELBO becomes equivalent to training with $\\log p(\\mathbf{x})$. VAEs are relatively fast to train and generate samples from. A limitation of VAEs is that a simple Gaussian $q(\\mathbf{z}|\\mathbf{x})$ is often a very poor approximation to the true posterior. This can result in low-quality samples.\n", "\n", "**Fun fact:** We also use an ELBO to train diffusion models. A common way to improve VAEs is to make their [latent variable structure autoregressive](https://arxiv.org/abs/1606.04934)\n", "$$p(\\mathbf{x}) = \\int p(\\mathbf{x}|\\mathbf{z}_T) p(\\mathbf{z}_T | \\mathbf{z}_{T-1}) ... p(\\mathbf{z}_1 | \\mathbf{z}_{0}) p(\\mathbf{z}_{p}) \\,d \\mathbf{z}_T ... \\,d\\mathbf{z}_1 \\,d\\mathbf{z}_0.$$ \n", "This brings VAEs even closer to diffusion models and can give some intuitions on why diffusion models work so well.\n", "\n", "##### **Normalising Flows (NFs)** \n", "\n", "NFs also model $p(\\mathbf{x})$ as a transformation of some simple noise distribution $p(\\mathbf{z})$. However, the transformation is chosen to be a bijection. Denoting the function that maps between these variables $f$ and its inverse f^{-1} we have\n", "$$\\mathbf{x} = f^{-1}(\\mathbf{z}) \\quad\\textrm{and}\\quad \\mathbf{z} = f(\\mathbf{x}).$$ We can map between the probability distributions using the change of variables formula\n", "$$p(\\mathbf{x}) = p(\\mathbf{z}) \\,\\textrm{Det}\\left|\\frac{\\partial \\mathbf{z}}{\\partial \\mathbf{x}}\\right| = p(f(\\mathbf{x}))\\,\\textrm{Det}\\left|\\frac{\\partial f(\\mathbf{x})}{\\partial \\mathbf{x}}\\right|$$ and obtain a nice expression for the probability of \\mathbf{x} in terms of the simple to evaluate the density of $\\mathbf{z}$.\n", "If we choose an easy-to-invert function $f$ for which it is also easy to compute the determinant $\\textrm{Det}\\left|\\frac{\\partial f(\\mathbf{x})}{\\partial \\mathbf{x}}\\right|$ then we can use the expression above as a learning objective for the parameters of $f$. Flows are fast to sample from since it just requires generating samples of $\\mathbf{z}$ and pushing them through $f$. However, a limitation of flow models is that the choices of $f$ which allow for easy invertibility and determinant computation tend to not be very flexible and thus struggle to learn very complicated data distributions. Another limitation is that flows can be very slow to converge and thus require many epochs of training.\n", "\n", "**Fun fact:** An autoregressive VAE with infinite steps or a diffusion model with infinite steps can both be seen as flows.\n", "\n", "##### **Energy Based Models (EBMs)** \n", "\n", "EBMs assume some learnable function $f$, like a neural network, outputs the unnormalised log density of our distribution of interest. The distribution of the data is thus\n", "$$ p(\\mathbf{x}) = \\frac{\\exp(f(\\mathbf{x}))}{\\int \\exp(\\mathbf{x}') \\,d\\mathbf{x}'}.$$\n", "This expression can be used as a learning objective for the parameters of $f$ but it is very difficult to compute due to the denominator being the integral of the exponential of $f$ over all of the input space. Instead, in practice these models are trained by approximating gradients of $\\log p(\\mathbf{x})$. There are many methods to do this, with a common one being [contrastive divergence](https://arxiv.org/abs/2012.01316). EBMs are still in a relatively early stage of development. Researchers are still working out the details of how to get them to work best.\n", "\n", "**Fun fact:** Diffusion models can be understood as energy based models with a particular choice of training strategy. [See this paper for details.](http://www.stat.ucla.edu/~ruiqigao/drl/paper.pdf)" ] }, { "cell_type": "markdown", "metadata": { "id": "fV3YG7QOZD-B" }, "source": [ "# Conclusion\n", "**Summary:**\n", "\n", "In this practical, we've\n", "1. Used the probabilistic ML framework to compare generative modelling ($p(x)$ or $p(x|y)$) to the more common discriminative setting ($p(y|x)$). \n", "2. Learnt that a *deep* generative model is simply a generative model that uses a NN.\n", "3. Thought about the challenges involved with training generative models, crucially the difficulty of specifying and therefore estimating $p(x)$. \n", "4. Used *denoising diffusion models* as a case study for understanding and training deep generative models in practice. We built up intuition for the denoising diffusion model from first principles.\n", "5. We closely followed the paper [\"Denoising Diffusion Probabilistic Models\"](https://arxiv.org/abs/2006.11239) by Jonathan Ho, et al. (2020), to train a deep generative model for the MNIST dataset.\n", "\n", "**Next Steps:** \n", "\n", "As you may have guessed, we've barely seen the tip of the iceberg when it comes to deep generative models and denoising diffusion models. If you're interested in learning more, we have several suggestions for future reading, some of which we mentioned above and some of which are new. If you'd like to know more about other kinds of generative models:\n", "\n", "* The previous DL Indaba had a practical that covered VAEs and GANs in detail. [Check it out here](https://colab.research.google.com/drive/1QYej56ctstejvRx6uK9qTTlF44NXzqH1#forceEdit=true&offline=true&sandboxMode=true).\n", "\n", "* Jakub Tomczak has a fantastic [series of blog posts](https://jmtomczak.github.io/blog.html) on various deep generative models, all with code examples:\n", " * [Intro to deep generative models](https://jmtomczak.github.io/blog/1/1_introduction.html)\n", " * [Autoregressive models](https://jmtomczak.github.io/blog/2/2_ARM.html)\n", " * [NFs](https://jmtomczak.github.io/blog/3/3_flows.html)\n", " * [VAEs](https://jmtomczak.github.io/blog/4/4_VAE.html)\n", " * [Hierarchical VAEs](https://jmtomczak.github.io/blog/9/9_hierarchical_lvm_p1.html)\n", " * [EBMs](https://jmtomczak.github.io/blog/11/11_energy_based_models.html)\n", " * [GANs](https://jmtomczak.github.io/blog/12/12_gans.html)\n", "\n", "For additional discussions and more perspectives on diffusion models:\n", "\n", "* Jakub Tomczak's [blog on denoising diffusion models](https://jmtomczak.github.io/blog/10/10_ddgms_lvm_p2.html) which gives a clear summary, simple code examples, and comparisons with VAEs + NFs. \n", "\n", "* Lilian Weng's [What are Diffusion Models?](https://lilianweng.github.io/posts/2021-07-11-diffusion-models/) post, which provides more detail on some of the aspects of diffusion models that had to be skimmed over in this practical. \n", "\n", "* [A brilliant blog post](https://benanne.github.io/2022/01/31/diffusion.html), by Sander Dieleman, discussing the connections between VAEs and diffusion models.\n", "\n", "* [Another fantastic blog](https://benanne.github.io/2022/05/26/guidance.html) from Sander, describing guidance for diffusion models (as well as autoregressive models). \n", "\n", "* [A post](https://yang-song.net/blog/2021/score/), by the author of [\"Generative Modeling by Estimating Gradients of the Data Distribution\"](https://arxiv.org/abs/1907.05600), Yang Song, which provides detailed discussion on, among other things, the relationship between the discrete and continuous time descriptions of denoising models and the score matching perspective of these models.\n", "\n", "If you want to get caught up with the cutting-edge for diffusion models, here are some exciting papers:\n", "\n", "* [Improved Denoising Diffusion Probabilistic Models](https://arxiv.org/abs/2102.09672) - shows that learning $\\beta_t$ improves performance.\n", "\n", "* [Cascaded Diffusion Models for High Fidelity Image Generation](https://arxiv.org/abs/2106.15282)\n", "\n", "* [Diffusion Models Beat GANs on Image Synthesis](https://arxiv.org/abs/2105.05233) - introduced classifier guidance.\n", "\n", "* [Classifier Free Diffusion Guidance](https://openreview.net/pdf?id=qw8AKxfYbI)\n", "\n", "* [Progressive Distillation for Fast Sampling of Diffusion Models](https://arxiv.org/abs/2202.00512) - describes how to train diffusion models which work well for few timesteps $T$, making sampling very cheap!\n", "\n", "* [Hierarchical Text-Conditional Image Generation with CLIP Latents](https://cdn.openai.com/papers/dall-e-2.pdf) - The DALLE-2 paper! State-of-the-art generation of images from text descriptions using CLIP guidance.\n", "\n", "* [Photorealistic Text-to-Image Diffusion Models with Deep Language Understanding](https://arxiv.org/abs/2205.11487) - The Imagen paper! More state-of-the-art image from text results this time swapping CLIP for T5.\n", "\n", "**References:** \n", "\n", "Much of this material was adapted from and inspired by 🤗's [The Annotated Diffusion Model](https://huggingface.co/blog/annotated-diffusion), [Guidance: a cheat code for diffusion models](https://benanne.github.io/2022/05/26/guidance.html) by Sander Dieleman, and of course [\"Denoising Diffusion Probabilistic Models\"](https://arxiv.org/abs/2006.11239) by Jonathan Ho, et al. (2020)\n", "\n", "For other practicals from the Deep Learning Indaba, please visit [here](https://github.com/deep-learning-indaba/indaba-pracs-2022)." ] }, { "cell_type": "markdown", "metadata": { "id": "o1ndpYE50BpG" }, "source": [ "## Feedback\n", "\n", "Please provide feedback that we can use to improve our practicals in the future. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "OIZvkhfRz9Jz" }, "outputs": [], "source": [ "# @title Generate Feedback Form. (Run Cell)\n", "from IPython.display import HTML\n", "\n", "HTML(\n", " \"\"\"\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "oglV4kHMWnIN" }, "source": [ "" ] } ], "metadata": { "accelerator": "GPU", "colab": { "collapsed_sections": [ "M0xpQUsjlfnY", "T6UsuU1ImRTs", "v5OB2KDJp3hR", "Y5ct96ZK_MkE", "lrAawN7-4s1B", "QVAuiHsXfNJB", "GMrkjFUbfQjQ", "cL7moBbQxDou" ], "name": "deep_generative_models.ipynb", "provenance": [] }, "gpuClass": "standard", "kernelspec": { "display_name": "Python 3.8.5 ('base')", "language": "python", "name": "python3" }, "language_info": { "name": "python", "version": "3.8.5" }, "vscode": { "interpreter": { "hash": "145833166d986a8417df3c7acb65d917d84b716b5a452e57fcacdc66f1a168c9" } } }, "nbformat": 4, "nbformat_minor": 0 } ================================================ FILE: practicals/introduction_to_reinforcement_learning.ipynb ================================================ { "cells": [ { "cell_type": "markdown", "metadata": { "id": "m2s4kN_QPQVe" }, "source": [ "# Introduction to Reinforcement Learning\n", "\n", "\n", "
\n", "\n", "
\n", "\n", "\"Open\n", "\n", "© Deep Learning Indaba 2022. Apache License 2.0.\n", "\n", "**Authors:**\n", "Claude Formanek, Kale-ab Tessera, Sicelukwanda Zwane, Sebastian Bodenstein\n", "\n", "**Reviewers:**\n", "Ruan van der Merwe, Avishkar Bhoopchand\n", "\n", "**Introduction:** \n", "\n", "In this tutorial, we will be learning about Reinforcement Learning, a type of Machine Learning where an agent learns to choose actions in an environment that lead to maximal reward in the long run. RL has seen tremendous success on a wide range of challenging problems such as learning to play complex video games like [Atari](https://www.deepmind.com/blog/agent57-outperforming-the-human-atari-benchmark), [StarCraft II](https://www.deepmind.com/blog/alphastar-mastering-the-real-time-strategy-game-starcraft-ii) and [Dota II](https://openai.com/five/). \n", "\n", "In this introductory tutorial we will solve the classic [CartPole](https://www.gymlibrary.ml/environments/classic_control/cart_pole/) environment, where an agent must learn to balance a pole on a cart, using several different RL approaches. Along the way you will be introduced to some of the most important concepts and terminology in RL.\n", "\n", "**Topics:** \n", "* Reinforcement Learning\n", "* Random Policy Search\n", "* Policy Gradient\n", "* Q-Learning\n", "\n", "**Level:** \n", "\n", "Beginner\n", "\n", "**Aims/Learning Objectives:**\n", "\n", "* Understand the basic theory behind RL.\n", "* Implement a simple random policy search algorithm.\n", "* Implement a simple policy gradient RL algorithm.\n", "* Implement a simple Q-learning algorithm.\n", "\n", "**Prerequisites:**\n", "\n", "* Some familiarity with [JAX](https://github.com/google/jax).\n", "* Neural network basics.\n", "\n", "**Outline:** \n", "\n", "* Section 1: Key Concepts in Reinforcement Learning\n", "* Section 2: Random Policy Search\n", "* Section 3: Policy Gradient\n", "* Section 4: Deep Q-Learning\n" ] }, { "cell_type": "markdown", "metadata": { "id": "6EqhIg1odqg0" }, "source": [ "## Setup" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4boGA9rYdt9l" }, "outputs": [], "source": [ "# @title Install required packages (run me) { display-mode: \"form\" }\n", "# @markdown This may take a minute or two to complete.\n", "%%capture\n", "!pip install jaxlib\n", "!pip install jax\n", "!pip install git+https://github.com/deepmind/dm-haiku\n", "!pip install gym==0.25\n", "!pip install gym[box2d]\n", "!pip install optax\n", "!pip install matplotlib\n", "!pip install chex" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "gwbqggmcRjMy" }, "outputs": [], "source": [ "# @title Import required packages (run me) { display-mode: \"form\" }\n", "%%capture\n", "import copy\n", "from shutil import rmtree # deleting directories\n", "import random\n", "import collections # useful data structures\n", "import numpy as np\n", "import gym # reinforcement learning environments\n", "from gym.wrappers import RecordVideo\n", "import jax\n", "import jax.numpy as jnp # jax numpy\n", "import haiku as hk # jax neural network library\n", "import optax # jax optimizer library\n", "import matplotlib.pyplot as plt # graph plotting library\n", "from IPython.display import HTML\n", "from base64 import b64encode\n", "import chex\n", "\n", "# Hide warnings\n", "import warnings\n", "warnings.filterwarnings('ignore')" ] }, { "cell_type": "markdown", "metadata": { "id": "-ZUp8i37dFbU" }, "source": [ "## Section 1: Key Concepts in Reinforcement Learning\n", "\n", "Reinforcement Learning (RL) is a subfield of Machine Learning (ML). Unlike fields like supervised learning, where we give examples of expected behaviour to our models, RL focuses on *goal-orientated* learning from interactions, through trial-and-error. RL algorithms learn what to do (i.e. which optimal actions to take) in an environment to maximise some reward signal. In settings like a video game, the reward signal could be the score of the game, i.e., RL algorithms will try to maximise the score in the game by choosing the best actions. \n", "\n", "
\n", "\n", "
\n", "\n", "[*Image Source*](https://towardsdatascience.com/multi-agent-deep-reinforcement-learning-in-15-lines-of-code-using-pettingzoo-e0b963c0820b)\n", "\n", "More precisely, in RL we have an **agent** which perceives an **observation** $o_t$ of the current state $s_t$ of the **environment** and must choose an **action** $a_t$ to take. The environment then transitions to a new state $s_{t+1}$ in response to the agent's action and also gives the agent a scalar reward $r_t$ to indicate how good or bad the chosen action was given the environment's state. The goal in RL is for the agent to maximise the amount of reward it receives from the environment over time. The subscript $t$ is used to indicate the timestep number, i.e., $s_0$ is the state of the environment at the initial timestep, and $a_{99}$ is the agent's action at the $99th$ timestep. " ] }, { "cell_type": "markdown", "metadata": { "id": "Ghgy69hFRjMz" }, "source": [ "### Environment - OpenAI Gym\n", "As mentioned above, an environment receives an action $a_t$ from the agent and returns reward $r_t$ and observation $o_t$.\n", "\n", "OpenAI has provided a Python package called **Gym** that includes implementations of popular environments and a simple interface for an RL agent to interact with. To use a supported [gym environment](https://www.gymlibrary.ml/), all you need to do is pass the name of the environment to the function `gym.make()`.\n", "\n", "In this tutorial, we will be using a simple environment called **CartPole**. In CartPole the task is for the agent to learn to balance a pole for as long as possible by moving a cart *left* or *right*.\n", "\n", "" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "WfxzajMYRjMz" }, "outputs": [], "source": [ "# Create the environment\n", "env_name = \"CartPole-v0\"\n", "env = gym.make(env_name)" ] }, { "cell_type": "markdown", "metadata": { "id": "y_BbftaJj3zu" }, "source": [ "### States and Observations - $s_t$ and $o_t$\n", "\n", "In RL, an agent perceives an observation of the environment's state. In some settings, the observation may include all the information underlying the environment's state. Such an environment is called **fully observed**. In other settings, the agent may only receive partial information about the environment's state in its observation. Such an environment is called **partially observed**. \n", "\n", "For the rest of this tutorial, we will assume the environment is fully observed and so we will use state $s_t$ and observation $o_t$ interchangeably. In Gym we get the initial observation from the environment by calling the function `env.reset()`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "HdS8nqOgRjM0" }, "outputs": [], "source": [ "# Reset the environment\n", "s_0 = env.reset()\n", "print(\"Initial State::\", s_0)\n", "\n", "# Get environment obs space\n", "obs_shape = env.observation_space.shape\n", "print(\"Environment Obs Space Shape:\", obs_shape)" ] }, { "cell_type": "markdown", "metadata": { "id": "pUNX6mbotABo" }, "source": [ "In CartPole, the state of the environment is represented by four numbers; *angular position of the pole, angular velocity of the pole, position of the cart, velocity of the cart*. " ] }, { "cell_type": "markdown", "metadata": { "id": "hL1Nkgy7nUfn" }, "source": [ "### Actions - $a_t$\n", "\n", "In RL, actions are usually either **discrete** or **continuous**. Continuous actions are given by a vector of real numbers. Discrete actions are given by an integer value. In environments where we can count out the finite set of actions we usually use discrete actions. \n", "\n", "In CartPole there are only two actions; *left* and *right*. As such, the actions can be represented by integers $0$ and $1$. In gym we can easily get the list of possible actions as follows:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "uOLZqU_LpIXh" }, "outputs": [], "source": [ "# Get action space - e.g. discrete or continuous\n", "print(f\"Environment action space: {env.action_space}\")\n", "\n", "# Get num actions\n", "num_actions = env.action_space.n\n", "print(f\"Number of actions: {num_actions}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "tRsflxbDpoPm" }, "source": [ "### The Agent's Policy - $\\pi$\n", "\n", "In RL the agent chooses actions based on the observations it receives. We can think of the agent's action selection process as a function that takes an observation as input and returns an action as output. In RL we usually call this function the agent's **policy** and denote it $\\pi(s_t)=a_t$. In RL we usually parametrise our policy in some way and then try to learn the optimal parameters. A parametrised policy is usually denoted $\\pi_\\theta$, where $\\theta$ is the set of parameters.\n", "\n", "**Exercise 1:** As an exercise, lets implement a simple policy which takes a set of parameters and an observation as input, and returns an action. Assume the observation is a vector of four numbers like the CartPole observation and that the action should be either $0$ or $1$. Assume also, the parameters are a vector of four real-numbers. Then the action should be computed as follows.\n", "\n", "\n", "1. Compute the [vector dot product](https://www.mathsisfun.com/algebra/vectors-dot-product.html) between the observation and the parameters.\n", "2. If the result is greater than zero, return action $1$.\n", "3. \t Else return action $0$.\n", "\n", "In this prac we will try to use JAX as much as possible. So, try to use JAX methods for this task. Below are some useful methods you can use. You will need to complete the code in the block below by replacing the `...` with the correct code.\n", "\n", "We have also provided a code cell to check your solution. Finally, we also provide the solution to the coding task which you can check after you have given the task a try.\n", "\n", "**Useful methods:** \n", "* Compute the vector dot product with `jax.numpy.dot` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.dot.html)).\n", "* When you try to conditionally assigne a value of $0$ or $1$ to the action based on the result of the dot product, you should use `jax.lax.select` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.lax.select.html#jax.lax.select)). The method `jax.lax.select` takes three arguments as input. The first argument is a statement that will evaluate to either `True` or `False`. If the statment is `True` then `jax.lax.select` will return its second argument. If the statement is `False`, `jax.lax.select` will return its third argument.\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "KSGCd7XB1z8k" }, "outputs": [], "source": [ "def linear_policy(params, obs):\n", " \"\"\"A simple linear policy\n", " \n", " Args:\n", " params: a vector of four real-numbers that give the parameters of the policy\n", " obs: a vector of four real-numbers that give the agent's observation\n", "\n", " Returns:\n", " a discrete action given by a 0 or 1\n", " \"\"\"\n", " # YOUR CODE\n", " dot_product_result = ...\n", "\n", " action = jax.lax.select(\n", " ..., # boolean statement goes here\n", " ..., # result when the statement is True goes here\n", " ..., # result when the statement is False goes here\n", " )\n", " # END YOUR CODE\n", " return action" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "9EnnBvceb1f3" }, "outputs": [], "source": [ "# @title Check exercise 1 (run me) { display-mode: \"form\" }\n", "\n", "def check_linear_policy(linear_policy):\n", " fixed_obs = jnp.array([1,1,2,4])\n", " \n", " # check case1 - negative dot product.\n", " # weights\n", " params1 = jnp.array([1,1,1,1])\n", " params2 = jnp.array([-1,-1,-1,-1])\n", "\n", " hint1 = f\"Incorrect answer, your linear policy is incorrect. The action when \\\n", " obs={fixed_obs} and params={params1} should be 1\"\n", "\n", " hint2 = f\"Incorrect answer, your linear policy is incorrect. The action when \\\n", " obs={fixed_obs} and params={params2} should be 0\"\n", "\n", " hint = None\n", " if linear_policy(params1, fixed_obs) != 1:\n", " hint = hint1\n", " elif linear_policy(params2, fixed_obs) != 0:\n", " hint = hint2\n", "\n", " if hint is not None:\n", " print(hint)\n", " else:\n", " print(\"Your function is correct!\")\n", "\n", "try: \n", " check_linear_policy(linear_policy)\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "OCzRmXbz2HfY" }, "outputs": [], "source": [ "# @title Solution exercise 1 { display-mode: \"form\" }\n", "\n", "def linear_policy(params, obs):\n", " \"\"\"A simple linear policy\n", " \n", " Args:\n", " params: a vector of four real-numbers that give the parameters of the policy\n", " obs: a vector of four real-numbers that give the agent's observation\n", "\n", " Returns:\n", " a discrete action given by a 0 or 1\n", " \"\"\"\n", " # YOUR CODE\n", " dot_product_result = jax.numpy.dot(params, obs)\n", "\n", " action = jax.lax.select(\n", " dot_product_result > 0, # boolean statement goes here\n", " 1, # result when the statement is True goes here\n", " 0, # result when the statement is False goes here\n", " )\n", " # END YOUR CODE\n", " return action " ] }, { "cell_type": "markdown", "metadata": { "id": "PkuvT-jf6Ieh" }, "source": [ "### The Environment Transition Function - $P$\n", "\n", "Now that we have a policy we can pass actions from the agent to the environment. The environment will then transition to a new state in response to the agent's action. \n", "\n", "In RL we model this process by using a **state transition function** $P$ which takes the current state $s_t$ and an action $a_t$ as input and returns the next state $s_{t+1}$ as output:\n", "\n", "
\n", " $s_{t+1}=P(s_t, a_t)$\n", "
\n", "\n", "In gym, we can pass actions to the environment by calling the `env.step()` function. The function will then return four values:\n", "- the **next observation**\n", "- the **reward** for the action taken\n", "- a boolean flag to indicate if the game is **done** \n", "- some **extra** information.\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "hh0j9-Tk7olb" }, "outputs": [], "source": [ "# Get the initial obs by resetting the env\n", "initial_obs = env.reset()\n", "\n", "# Randomly sample actions from env\n", "action = env.action_space.sample()\n", "\n", "# Step the environment\n", "next_obs, reward, done, info = env.step(action)\n", "\n", "print(\"Observation:\", initial_obs)\n", "print(\"Action:\", action)\n", "print(\"Next observation:\", next_obs)\n", "print(\"Reward:\", reward)\n", "print(\"Game is done:\", done)" ] }, { "cell_type": "markdown", "metadata": { "id": "bX9iZtu48UYn" }, "source": [ "### Episode Return - $R_t$\n", "\n", "In RL we usually break an agent's interactions with the environment up into **episodes**.The sum of all rewards collected during an episode is what we call the episode's **return** - $R_t$:\n", "\n", "
\n", "$R_t=\\sum_{t=0}^Tr_t$,\n", "
\n", "\n", "where $r_t$ is the reward at time $t$ and $T$ is the last timestep. The goal in RL is for the agent to chose actions which maximise this expected future return $R_t$. \n" ] }, { "cell_type": "markdown", "metadata": { "id": "y6KZA1Nq9p47" }, "source": [ "### Agent-environment Loop\n", "Now that we know what a policy is and we know how to step the environment, let's close the agent-environment loop.\n", "\n", "**Exercise 2:** Write a function that runs one episode of CartPole by sequentially choosing actions and stepping the environment. You should use the linear policy we defined earlier to chose actions. The function should keep track of the reward received and output the return at the end of the episode.\n", "\n", "In CartPole the agent receives a reward of `1` for every timestep the pole is still upright. If the pole falls over, the game is over and the agent receives no more reward. The game is also over after `200` timesteps, so the maximum reward the agent can collect is `200`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Buy0X7mi-gHP" }, "outputs": [], "source": [ "def run_episode(env):\n", " episode_return = 0 # counter to keep track of rewards\n", " done = False # initially set to False\n", " params = jnp.array([1,-2,2,-1]) # fixed policy parameters\n", "\n", " ## YOUR CODE\n", " \n", " obs = ... # TODO: get the initial obs from the env\n", "\n", " while not done: # loop until episode is done\n", "\n", " action = ... # TODO: compute action using linear policy\n", " action = np.array(action) # We need to the convert the action from the policy to a np.array\n", "\n", " obs, reward, done, info = ... # TODO: step the environment\n", "\n", " episode_return = ... # TODO: add reward to episode return\n", "\n", " return episode_return" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "bA2Orj9PVbKO" }, "outputs": [], "source": [ "# @title Check exercise 2 (run me) { display-mode: \"form\" }\n", "\n", "try:\n", " env.seed(42)\n", " if run_episode(env) == 31:\n", " print(\"Looks correct!\")\n", " else:\n", " print(\"Looks like your implementation might be wrong.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "h_vu0GImyBT4" }, "outputs": [], "source": [ "#@title Soluction Exercise 2 { display-mode: \"form\" }\n", "def run_episode(env):\n", " episode_return = 0 # counter to keep track of rewards\n", " done = False # initially set to False\n", " params = jnp.array([1,-2,2,-1]) # fixed policy parameters\n", "\n", " ## YOUR CODE\n", " \n", " obs = env.reset() # TODO: get the initial obs from the env\n", "\n", " while not done: # loop until episode is done\n", "\n", " # HINT: You might need to the convert the action from your policy to a np.array\n", " action = linear_policy(params, obs) # TODO: compute action using linear policy\n", " action = np.array(action) # We need to the convert the action from the policy to a np.array\n", "\n", " obs, reward, done, info = env.step(action) # TODO: step the environment\n", "\n", " episode_return = episode_return + reward # TODO: add reward to episode return\n", "\n", " return episode_return\n" ] }, { "cell_type": "markdown", "metadata": { "id": "fUGdzHxJnZGl" }, "source": [ "In CartPole, the environment is considered solved when the agent can reliably achieve an episode return of 500. As you can see, our current policy is far from optimal.\n", "\n", "One way we can find an optimal policy is by randomly trying out different policies until we find one that is optimal. This strategy is called Random Policy Search and can be supprisingly effective.\n", "\n", "Before we implement Random Policy Search, let's quickly cover the general RL training loop we will be using to implement the algorithms in the rest of this turorial.\n", "\n", "### A General Purpose RL Training Loop\n", "We have implemented a general purpose RL training loop for you. The training loop takes several arguments as input but the three most important for you to understand are `agent_select_action_func`, `agent_learn_func` and the `agent_memory`. \n", "\n", "* The `agent_select_action_func` is a function we define and can pass to the training loop. The function takes an observation and set of `agent_params` as input and should return an action.\n", "* The `agent_learn_func` is another method we define and pass to the training loop. It should take the agent's parameters and some \"memories\" as input and then update and return the agents new parameters.\n", "* The `agent_memory` is a general purpose module we define that can store some relevant information about the agent's experiences in the environment that can be used in the `agent_learn_func`.\n", "\n", "\n", "Below is the training loop function we have implemented for you. You are welcome to go through the code and try to understand it but this is not required. As such, we have hidden the code by default, just make sure that you run the code cell before moving on because the training loop is used throughout this prac." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ZWBwz3zMRjM0" }, "outputs": [], "source": [ "#@title Training loop (run me) { display-mode: \"form\" }\n", "\n", "# NamedTuple to store transitions\n", "Transition = collections.namedtuple(\"Transition\", [\"obs\", \"action\", \"reward\", \"next_obs\", \"done\"])\n", "\n", "# Training Loop\n", "def run_training_loop(env_name, agent_params, agent_select_action_func, \n", " agent_actor_state=None, agent_learn_func=None, agent_learner_state=None, \n", " agent_memory=None, num_episodes=1000, evaluator_period=100, \n", " evaluation_episodes=8, learn_steps_per_episode=1, \n", " train_every_timestep=False, video_subdir=\"\",):\n", " \"\"\"\n", " This function runs several episodes in an environment and periodically does \n", " some agent learning and evaluation.\n", " \n", " Args:\n", " env: a gym environment.\n", " agent_params: an object to store parameters that the agent uses.\n", " agent_select_func: a function that does action selection for the agent.\n", " agent_actor_state (optional): an object that stores the internal state \n", " of the agents action selection function.\n", " agent_learn_func (optional): a function that does some learning for the \n", " agent by updating the agent parameters.\n", " agent_learn_state (optional): an object that stores the internal state \n", " of the agent learn function.\n", " agent_memory (optional): an object for storing an retrieving historical \n", " experience.\n", " num_episodes: how many episodes to run.\n", " evaluator_period: how often to run evaluation.\n", " evaluation_episodes: how many evaluation episodes to run.\n", " train_every_timestep: whether to train every timestep rather than at the end \n", " of the episode.\n", " video_subdir: subdirectory to store epsiode recordings.\n", "\n", " Returns:\n", " episode_returns: list of all the episode returns.\n", " evaluator_episode_returns: list of all the evaluator episode returns.\n", " \"\"\"\n", "\n", " # Setup Cartpole environment and recorder\n", " env = gym.make(env_name, render_mode=\"rgb_array\") # training environment\n", " eval_env = gym.make(env_name, render_mode=\"rgb_array\") # evaluation environment\n", "\n", " # Video dir\n", " video_dir = \"./video\"+\"/\"+video_subdir\n", "\n", " # Clear video dir\n", " try:\n", " rmtree(video_dir)\n", " except:\n", " pass\n", "\n", " # Wrap in recorder\n", " env = RecordVideo(env, video_dir+\"/train\", episode_trigger=lambda x: (x % evaluator_period) == 0)\n", " eval_env = RecordVideo(eval_env, video_dir+\"/eval\", episode_trigger=lambda x: (x % evaluation_episodes) == 0)\n", "\n", " # JAX random number generator\n", " rng = hk.PRNGSequence(jax.random.PRNGKey(0))\n", " env.seed(0) # seed environment for reproducability\n", " random.seed(0)\n", "\n", " episode_returns = [] # List to store history of episode returns.\n", " evaluator_episode_returns = [] # List to store history of evaluator returns.\n", " timesteps = 0\n", " for episode in range(num_episodes):\n", "\n", " # Reset environment.\n", " obs = env.reset()\n", " episode_return = 0\n", " done = False\n", "\n", " while not done:\n", "\n", " # Agent select action.\n", " action, agent_actor_state = agent_select_action_func(\n", " next(rng), \n", " agent_params, \n", " agent_actor_state, \n", " np.array(obs)\n", " )\n", "\n", " # Step environment.\n", " next_obs, reward, done, _ = env.step(int(action))\n", "\n", " # Pack into transition.\n", " transition = Transition(obs, action, reward, next_obs, done)\n", "\n", " # Add transition to memory.\n", " if agent_memory: # check if agent has memory\n", " agent_memory.push(transition)\n", "\n", " # Add reward to episode return.\n", " episode_return += reward\n", "\n", " # Set obs to next obs before next environment step. CRITICAL!!!\n", " obs = next_obs\n", "\n", " # Increment timestep counter\n", " timesteps += 1\n", "\n", " # Maybe learn every timestep\n", " if train_every_timestep and (timesteps % 4 == 0) and agent_memory and agent_memory.is_ready(): # Make sure memory is ready\n", " # First sample memory and then pass the result to the learn function\n", " memory = agent_memory.sample()\n", " agent_params, agent_learner_state = agent_learn_func(\n", " next(rng), \n", " agent_params, \n", " agent_learner_state, \n", " memory\n", " )\n", "\n", " episode_returns.append(episode_return)\n", "\n", " # At the end of every episode we do a learn step.\n", " if agent_memory and agent_memory.is_ready(): # Make sure memory is ready\n", "\n", " for _ in range(learn_steps_per_episode):\n", " # First sample memory and then pass the result to the learn function\n", " memory = agent_memory.sample()\n", " agent_params, agent_learner_state = agent_learn_func(\n", " next(rng), \n", " agent_params, \n", " agent_learner_state, \n", " memory\n", " )\n", "\n", " if (episode % evaluator_period) == 0: # Do evaluation\n", "\n", " evaluator_episode_return = 0\n", " for eval_episode in range(evaluation_episodes):\n", " obs = eval_env.reset()\n", " done = False\n", " while not done:\n", " action, _ = agent_select_action_func(\n", " next(rng), \n", " agent_params, \n", " agent_actor_state, \n", " np.array(obs), \n", " evaluation=True\n", " )\n", "\n", " obs, reward, done, _ = eval_env.step(int(action))\n", "\n", " evaluator_episode_return += reward\n", "\n", " evaluator_episode_return /= evaluation_episodes\n", "\n", " evaluator_episode_returns.append(evaluator_episode_return)\n", "\n", " logs = [\n", " f\"Episode: {episode}\",\n", " f\"Episode Return: {episode_return}\",\n", " f\"Average Episode Return: {np.mean(episode_returns[-20:])}\",\n", " f\"Evaluator Episode Return: {evaluator_episode_return}\"\n", " ]\n", "\n", " print(*logs, sep=\"\\t\") # Print the logs\n", "\n", " env.close()\n", " eval_env.close()\n", "\n", " return episode_returns, evaluator_episode_returns" ] }, { "cell_type": "markdown", "metadata": { "id": "CTPlIq4oDBPY" }, "source": [ "## Section 2: Random Policy Search (RPS)\n", "In Section 1 we used a fixed set of parameters for our policy. That is to say we, didn't learn $\\pi$'s parameters $\\theta$, we simply kept them fixed ( `params = [1,-2,2,-1]`). \n", "\n", "We will now implment Random Policy Search (RPS), which is an algorithm that randomly tries different policy parameters and keeps track of the best parameters found so far. We will say that policy parameters $\\theta_A$ are better than parameters $\\theta_B$ if the average episode return achieved over the last 20 episodes by the policy with parameters $\\theta_A$ is greater than that of the policy with parameters $\\theta_B$. \n", "\n", "\n", "To keep track of the \"current\" parameters as well as the \"best\" parameters, we will use a [NamedTuple](https://www.geeksforgeeks.org/namedtuple-in-python/)." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1DcaC-PQRjM1" }, "outputs": [], "source": [ "# Parameter container for Random Policy Search\n", "RandomPolicySearchParams = collections.namedtuple(\"RandomPolicySearchParams\", [\"current\", \"best\"])\n", "\n", "# TEST: store two different sets of parameters\n", "current_params = np.ones(obs_shape) * -1\n", "best_params = np.zeros(obs_shape)\n", "rps_params = RandomPolicySearchParams(current_params, best_params)\n", "\n", "# How to access the best or current params.\n", "print(f\"Best params: {rps_params.best}\")\n", "print(f\"Current params: {rps_params.current}\")" ] }, { "cell_type": "markdown", "metadata": { "id": "v91pDDzGex9a" }, "source": [ "Next we will implement the following:\n", " - **RPS select action function** - define how we choose actions given a set of parameters.\n", " - **RPS memory module** - define what experiences to store from the environment interactions.\n", " - **RPS learn function** - define how we update and improve our policy parameters." ] }, { "cell_type": "markdown", "metadata": { "id": "0tExceGeGNYH" }, "source": [ "### RPS choose action function\n", "Let's implement a function called `random_policy_search_choose_action` which we can pass to the training loop. The function needs to take in several arguments inorder for it to interface nicely with our generalised training loop but you will only need to use three of them - `params`, `obs` and `evaluation`.\n", "\n", "- `params` is an instance of `RandomPolicySearchParams` with \"current\" and \"best\".\n", "- `obs` is the latest observation from the environment.\n", "- `evaluation` is a boolean value that indicates if we should use the \"current\" or \"best\" parameters. When `evaluation==True` we should use the \"best\" parameters, else we should use the \"current\" parameters.\n", "\n", "**Exercise 3:** Implement the `random_policy_search_choose_action` function as described above. You should make use of the `linear_policy` method we defined earlier. You will also want to use `jax.lax.select()` to conditionally return the \"best\" action or the \"current\" action. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1kmwT35JRjM1" }, "outputs": [], "source": [ "def random_policy_search_choose_action(\n", " key, \n", " params, \n", " actor_state, \n", " obs, \n", " evaluation=False\n", "):\n", " \"\"\"Random policy search select action method.\n", "\n", " Args:\n", " key: a random number (seed). Not used in this function.\n", " params: the agent's parameters. In this case an instance of `RandomPolicySearchParams`\n", " actor_state: some extra information about the actor. Not used in this function.\n", " obs: the latest observation.\n", " evaluation: a boolean indicating whether to use the best \"parameters\" or the \"current\" ones.\n", "\n", " Returns:\n", " The chosen action and the updated actor_state. In this function the actor_state is not updated.\n", " \"\"\"\n", "\n", " # YOUR CODE\n", "\n", " best_action = ...\n", "\n", " current_action = ...\n", "\n", " action = jax.lax.select(\n", " ... ,\n", " ... ,\n", " ... \n", " )\n", "\n", " # END YOUR CODE\n", "\n", " return action, actor_state" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "YE4xoAgyI3kG" }, "outputs": [], "source": [ "# @title Check exercise 3 (run me) {display-mode: \"form\"}\n", "\n", "def check_random_policy_search_choose_action(choose_action):\n", " key = None # not used\n", " actor_state = None # not used\n", "\n", " # obs\n", " obs = np.ones(obs_shape)\n", "\n", " evaluation=False\n", " current_params = np.ones(obs_shape) * -1\n", " best_params = np.ones(obs_shape)\n", " rps_params = RandomPolicySearchParams(current_params, best_params)\n", " action, actor_state = choose_action(key,rps_params,actor_state,obs,evaluation)\n", " if action != 0:\n", " return False\n", "\n", " evaluation=True\n", " current_params = np.ones(obs_shape) * -1\n", " best_params = np.ones(obs_shape)\n", " rps_params = RandomPolicySearchParams(current_params, best_params)\n", " action, actor_state = choose_action(key,rps_params,actor_state,obs,evaluation)\n", " if action != 1:\n", " return False\n", "\n", " return True\n", "\n", "try:\n", " if check_random_policy_search_choose_action(random_policy_search_choose_action):\n", " print(\"Your function looks correct.\")\n", " else:\n", " print(\"Your function looks incorrect.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "UH_9qJ08IFg6" }, "outputs": [], "source": [ "#@title Solution exercise 3 {display-mode: \"form\"}\n", "\n", "def random_policy_search_choose_action(\n", " key, \n", " params, \n", " actor_state, \n", " obs, \n", " evaluation=False\n", "):\n", "\n", " best_action = linear_policy(params.best, obs)\n", "\n", " current_action = linear_policy(params.current, obs)\n", "\n", " action = jax.lax.select(\n", " evaluation ,\n", " best_action ,\n", " current_action \n", " )\n", "\n", " return action, actor_state" ] }, { "cell_type": "markdown", "metadata": { "id": "6zu51ep7Sh0M" }, "source": [ "### RPS agent memory\n", "\n", "For the Random Policy Search algorithm we will need to keep track of the average episode return for the last 50 episodes. Remember that we said the \"current\" parameters will be deemed to be the \"best\"parameters if the average episode return when using those parameters is greater than the previous best average episode return.\n", "\n", "We will use a general purpose memory interface which is fairy simple. The memory module should have three methods. The first is a function `memory.push()` that adds some information about the latest environment transition to the memory. The second is a function `memory.is_ready()` to check if the memory is ready to do some learning. Finally a function `memory.sample()` should return the latest set of memories that can be passed to the `agent_learn_func`.\n", "\n", "#### Average Episode Return Memory\n", "We have built a simple agent memory module for you. It stores the `epsisode_returns` of the last 20 episodes. Read through our implementation below and see if you can understand it. The `memory.sample()` method returns the average episode return over the last 20 episodes." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "YVkTBIK5RjM1" }, "outputs": [], "source": [ "class AverageEpisodeReturnBuffer:\n", "\n", " def __init__(self, num_episodes_to_store=50):\n", " \"\"\"\n", " This class implements an agent memory that stores the average episode \n", " return over the last 50 episodes.\n", " \"\"\"\n", " self.num_episodes_to_store = num_episodes_to_store\n", " self.episode_return_buffer = []\n", " self.current_episode_return = 0\n", "\n", " def push(self, transition):\n", " self.current_episode_return += transition.reward\n", "\n", " if transition.done: # If the episode is done\n", " # Add episode return to buffer\n", " self.episode_return_buffer.append(self.current_episode_return)\n", "\n", " # Reset episode return\n", " self.current_episode_return = 0\n", "\n", "\n", " def is_ready(self):\n", " return len(self.episode_return_buffer) == self.num_episodes_to_store\n", "\n", " def sample(self):\n", " average_episode_return = np.mean(self.episode_return_buffer)\n", "\n", " # Clear episode return buffer\n", " self.episode_return_buffer = []\n", "\n", " return average_episode_return" ] }, { "cell_type": "markdown", "metadata": { "id": "0oXBsSa2KjWE" }, "source": [ "### RPS learn function\n", "Fnally, we need to implement the `random_policy_search_learn` function for our Random Policy Search algorithm. The learn function is quite simple. All we need to do is check if the current parameters are better than the best parameters. If they are better, then set the best parameters to be the current parameters and randomly generate a new set of current parameters. \n", "\n", "**Exercise 4:** Write a function to randomly generates new weights using JAX. The weights should be sampled from the interval `[-2,2]`.\n", "\n", "**Useful functions:** \n", "* `jax.random.uniform` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.random.uniform.html#jax.random.uniform))\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "8V2yFM2XMjGW" }, "outputs": [], "source": [ "def get_new_random_weights(random_key, old_weights, minval=-2.0, maxval=2.0):\n", " new_weights_shape = old_weights.shape # you will need to use these values\n", " new_weights_dtype = old_weights.dtype # you will need to use these values\n", "\n", " # YOUR CODE\n", "\n", " new_params = ...\n", "\n", " # END YOUR CODE\n", "\n", " return new_params" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "T8ifHTKGQlAd" }, "outputs": [], "source": [ "# @title Check exercise 4 (run me) {display-mode: \"form\"}\n", "\n", "def check_get_new_random_weights(get_new_random_weights):\n", " old_weights = np.ones(obs_shape, \"float32\")\n", " random_key = jax.random.PRNGKey(42)\n", "\n", " # Case 1\n", " new_weights = get_new_random_weights(random_key, old_weights, minval=-2.0, maxval=2.0)\n", " \n", " if jnp.array_equal(new_weights, jnp.array([ 0.29657745,1.4265499, -1.7621555, -1.7505779 ])):\n", " print(\"Function is correct!\")\n", " else:\n", " print(\"Something is wrong.\")\n", "\n", "try:\n", " check_get_new_random_weights(get_new_random_weights)\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "T05R_AWHLx_I" }, "outputs": [], "source": [ "#@title Solution exercise 4 {display-mode: \"form\"}\n", "\n", "def get_new_random_weights(random_key, old_weights,minval=-2.0,maxval=2.0):\n", " new_weights_shape = old_weights.shape\n", " new_weights_dtype = old_weights.dtype\n", " # Sample new weights\n", " new_weights = jax.random.uniform(random_key,new_weights_shape,new_weights_dtype,minval=minval,\n", " maxval=maxval)\n", " return new_weights" ] }, { "cell_type": "markdown", "metadata": { "id": "2Djxc9j-LzkM" }, "source": [ "Our learn function receives a memory, in the form of the average episode return, from the `AverageEpisodeReturnMemory` we implemented earlier. We can use this to compare the current parameters to the best parameters. But we will also need to keep track of the best average episode return for the learn function. For that, we can use the `learn_state` argument which is passed to the `agent_learn_func` in our training loop. As with the `RandomPolicySearchParams`, we will use a NamedTuple to store the `best_average_episode_return` in the `learn_state`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4cSH4uYmRjM2" }, "outputs": [], "source": [ "# A NamedTuple to store the best average episode return so far\n", "RandomPolicyLearnState = collections.namedtuple(\n", " \"RandomPolicyLearnState\", \n", " [\"best_average_episode_return\"]\n", ")\n", "\n", "# Test\n", "initial_learn_state = RandomPolicyLearnState(best_average_episode_return=-float(\"inf\"))\n", "print(\"Initial best average episode return:\", initial_learn_state.best_average_episode_return)" ] }, { "cell_type": "markdown", "metadata": { "id": "PxZXdP8bOu6b" }, "source": [ "Now we have everything we need to implement the `random_policy_search_learn` function.\n", "\n", "**Exercise 5:** Implement the `random_policy_search_learn` function. The function should check if the \"current\" parameters are better than the \"best\" parameters by comparing the `current_average_episode_return` to the `best_average_episode_return`. The function should also update the `learn_state`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Te_Q3qzmZcN_" }, "outputs": [], "source": [ "def random_policy_search_learn(key, params, learn_state, memory):\n", " best_params = params.best \n", " current_params = params.current\n", "\n", " current_average_episode_return = memory # the memory contains the average episode return\n", " best_average_episode_return = learn_state.best_average_episode_return\n", "\n", "\n", " # YOUR CODE\n", "\n", " best_params = jax.lax.select(\n", " ... ,\n", " ... ,\n", " ...\n", " )\n", " \n", " best_average_episode_return = jax.lax.select(\n", " ... ,\n", " ... ,\n", " ...\n", " )\n", " \n", " # END YOUR CODE\n", "\n", " # Generate new random parameters\n", " new_params = get_new_random_weights(key, current_params)\n", "\n", " # Bundle weights in RandomPolicySearchParams NamedTuple\n", " params = RandomPolicySearchParams(current=new_params, best=best_params)\n", "\n", " return params, RandomPolicyLearnState(best_average_episode_return)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "CXHV4k2iBLBF" }, "outputs": [], "source": [ "#@title Check exercise 5 {display-mode: \"form\"}\n", "\n", "params = RandomPolicySearchParams(np.ones(obs_shape, \"float32\"), np.ones(obs_shape, \"float32\") * -1)\n", "learn_state = RandomPolicyLearnState(10)\n", "memory = 11\n", "key = jax.random.PRNGKey(42)\n", "\n", "try:\n", " new_params, new_learn_state = random_policy_search_learn(key, params, learn_state, memory)\n", "\n", " if not jnp.array_equal(new_params.current, jnp.array([ 0.29657745, 1.4265499 , -1.7621555 , -1.7505779 ])):\n", " print(\"Your function is incorrect.\")\n", "\n", " elif not jnp.array_equal(new_params.best, jnp.array([1., 1., 1., 1.])):\n", " print(\"Your function is incorrect.\")\n", "\n", " elif new_learn_state.best_average_episode_return != 11:\n", " print(\"Your function is incorrect.\")\n", "\n", " else:\n", " print(\"Your function looks correct.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "-ElX1w1iQTrE" }, "outputs": [], "source": [ "#@title Solution exercise 5 {display-mode: \"form\"}\n", "\n", "def random_policy_search_learn(key, params, learn_state, memory):\n", " best_params = params.best \n", " current_params = params.current\n", "\n", " current_average_episode_return = memory # the memory contains the average episode return\n", " best_average_episode_return = learn_state.best_average_episode_return\n", "\n", "\n", " # YOUR CODE\n", "\n", " best_params = jax.lax.select(\n", " current_average_episode_return > best_average_episode_return,\n", " current_params,\n", " best_params,\n", " )\n", " \n", " best_average_episode_return = jax.lax.select(\n", " current_average_episode_return > best_average_episode_return,\n", " current_average_episode_return,\n", " best_average_episode_return\n", " )\n", " \n", " # END YOUR CODE\n", "\n", " # Generate new random parameters\n", " new_params = get_new_random_weights(key, current_params)\n", "\n", " # Bundle weights in RandomPolicySearchParams NamedTuple\n", " params = RandomPolicySearchParams(current=new_params, best=best_params)\n", "\n", " # Update learn_state\n", " learn_state = RandomPolicyLearnState(best_average_episode_return)\n", "\n", " return params, learn_state" ] }, { "cell_type": "markdown", "metadata": { "id": "5Ol_AxnMBdgP" }, "source": [ "### RPS training loop\n", "We can now put everything together by passing the `memory` module, the `learn` function and `choose_action` function to the training loop. To help speed up our algorithm we will use `jax.jit` on the `learn` function and the `choose_action` function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Qx57tf7vRjM3" }, "outputs": [], "source": [ "# JIT the learn and choose action functions\n", "random_policy_search_learn_jit = jax.jit(random_policy_search_learn)\n", "random_policy_search_choose_action_jit = jax.jit(random_policy_search_choose_action)\n", "\n", "# Initialise the parameters\n", "initial_weights = np.ones(obs_shape, \"float32\")\n", "initial_params = RandomPolicySearchParams(initial_weights, initial_weights)\n", "\n", "# Initialise the learn state\n", "initial_learn_state = RandomPolicyLearnState(best_average_episode_return=-float(\"inf\"))\n", "\n", "# Initialise memory\n", "memory = AverageEpisodeReturnBuffer(num_episodes_to_store=50)\n", "\n", "# Run the training loop\n", "print(\"Starting training. This may take up to 5 minutes to complete.\")\n", "chex.clear_trace_counter()\n", "episode_return, evaluator_episode_returns = run_training_loop(\n", " env_name,\n", " initial_params, \n", " random_policy_search_choose_action_jit, \n", " None, # no actor state\n", " random_policy_search_learn_jit, \n", " initial_learn_state, \n", " memory, \n", " num_episodes=1001,\n", " video_subdir=\"rps\"\n", " )\n", "\n", "# Plot graph of evaluator episode returns\n", "plt.plot(np.linspace(0, 1000, len(evaluator_episode_returns)), evaluator_episode_returns)\n", "plt.title(\"Random Policy Search\")\n", "plt.xlabel(\"Episodes\")\n", "plt.ylabel(\"Episode Return\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "TG10FG6uS05A" }, "source": [ "Hopefully, you found a set of optimal parameters on CartPole (episode return reaches `200`). In the cell below you can watch some videos of the agent doing the task." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "KgayDJ7KWC4C" }, "outputs": [], "source": [ "#@title Visualise Policy {display-mode: \"form\"}\n", "#@markdown Choose an episode number that is a multiple of 100 and less than or equal to 2000, and **run** this cell.\n", "episode_number = 0 #@param {type:\"number\"}\n", "\n", "assert (episode_number % 100) == 0, \"Episode number must be a multiple of 100 since we only record every 100th episode.\"\n", "assert episode_number < 1001, \"Episode number must be less than or equal to 2000\"\n", "\n", "eval_episode_number = int(episode_number / 100 * 8)\n", "video_path = f\"./video/rps/eval/rl-video-episode-{eval_episode_number}.mp4\"\n", "\n", "mp4 = open(video_path,'rb').read()\n", "data_url = \"data:video/mp4;base64,\" + b64encode(mp4).decode()\n", "HTML(\"\"\"\n", "\n", "\"\"\" % data_url)" ] }, { "cell_type": "markdown", "metadata": { "id": "Xwf1IKKbrrVn" }, "source": [ "So, Random Policy Search did pretty well on this task. However, there is very little (if any) real *learning* going on here. Next, let's look at implementing a simple RL algorithm instead, that can use its experiences to guide our search for an optimal policy, rather than just randomly searching for it." ] }, { "cell_type": "markdown", "metadata": { "id": "XEnSjZVESrxc" }, "source": [ "## Section 3: Policy Gradients (PG)\n", "As discussed, the goal in RL is to find a policy which maximise the expected cummulative reward (return) the agent receives from the environment. We can write the expected return of a policy as:\n", "\n", "$J(\\pi_\\theta)=\\mathrm{E}_{\\tau\\sim\\pi_\\theta}\\ [R(\\tau)]$,\n", "\n", "where $\\pi_\\theta$ is a policy parametrised by $\\theta$, $\\mathrm{E}$ means *expectation*, $\\tau$ is shorthand for \"*episode*\", $\\tau\\sim\\pi_\\theta$ is shorthand for \"*episodes sampled using the policy* $\\pi_\\theta$\", and $R(\\tau)$ is the return of episode $\\tau$.\n", "\n", "Then, the goal in RL is to find the parameters $\\theta$ that maximise the function $J(\\pi_\\theta)$. One way to find these parameters is to perform gradient ascent on $J(\\pi_\\theta)$ with respect to the parameters $\\theta$: \n", "\n", "$\\theta_{k+1}=\\theta_k + \\alpha \\nabla J(\\pi_\\theta)|_{\\theta_{k}}$,\n", "\n", "where $\\nabla J(\\pi_\\theta)|_{\\theta_{k}}$ is the gradient of the expected return with respect to the policy parameters $\\theta_k$ and $\\alpha$ is the step size. This quantity, $\\nabla J(\\pi_\\theta)$, is also called the **policy gradient** and is very important in RL. If we can comput the policy gradient, then we will have a means by which to directly optimise our policy.\n", "\n", "As it turns out, there is a way for us to compute the policy gradient and the mathematical derivation can be found [here](https://spinningup.openai.com/en/latest/spinningup/rl_intro3.html). But for this tutorial we will ommit the derivation and just give you the result:\n", "\n", "\n", "$\\nabla_{\\theta} J(\\pi_{\\theta})=\\underset{\\tau \\sim \\pi_{\\theta}}{\\mathrm{E}}[\\sum_{t=0}^{T} \\nabla_{\\theta} \\log \\pi_{\\theta}(a_{t} \\mid s_{t}) R(\\tau)]$\n", "\n", "Informaly, the policy gradient is equal to the gradient of the log of the probability of the action chosen, multiplied by the return of the episode in which the action was taken.\n" ] }, { "cell_type": "markdown", "metadata": { "id": "BTnTzgtSuy-y" }, "source": [ "### REINFORCE\n", "REINFORCE is a simple RL algorithm that uses the policy gradient to find the optimal policy by increasing the probability of choosing actions (reinforcing actions) that tend to lead to high return episodes.\n", "\n", "**Exercise 6:** Implement a function that takes the probability of an action and the return of the episode the action was taken in and computes the log of the probability, multiplied by the return. Make sure you use JAX.\n", "\n", "**Useful functions:**\n", "* `jax.numpy.log`([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.log.html))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "bJObUsoUrOyV" }, "outputs": [], "source": [ "def compute_weighted_log_prob(action_prob, episode_return):\n", "\n", " # YOUR CODE\n", "\n", " log_porb = ...\n", "\n", " weighted_log_prob = ... \n", "\n", " # END YOUR CODE\n", "\n", " return weighted_log_prob" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "eZPoTwa1Gbm1" }, "outputs": [], "source": [ "#@title Check exercise 6 {display-mode: \"form\"}\n", "\n", "try:\n", " action_prob = 0.8\n", " episode_return = 100\n", " result = compute_weighted_log_prob(action_prob, episode_return)\n", " if result != -22.314354:\n", " print(\"Your implementation looks incorrect.\")\n", " else:\n", " print(\"Looks correct.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "x7dTAlCdrJkf" }, "outputs": [], "source": [ "#@title Solution exercise 6 {display-mode: \"form\"}\n", "\n", "def compute_weighted_log_prob(action_prob, episode_return):\n", "\n", " # YOUR CODE\n", "\n", " log_prob = jax.numpy.log(action_prob)\n", "\n", " weighted_log_prob = log_prob * episode_return\n", "\n", " # END YOUR CODE\n", "\n", " return weighted_log_prob\n" ] }, { "cell_type": "markdown", "metadata": { "id": "NmgW9UJ3tIpl" }, "source": [ "### Rewards-to-go\n", "Performing gradient ascent on the gradient of the log of the action probability, weighted by the return of the episode will tend to push up the probability of actions that were in episodes with high return, regardless of *where* in the episode the action was taken. This does not really make much sense because an action near the end of an episode may be reinforced because lots of reward was collected earlier on in the episode, *before* the action was taken. RL agents should really only reinforce actions on the basis of their *consequences*. Rewards obtained before taking an action have no bearing on how good that action was: only rewards that come after. The cummulative rewards received after an action was taken is called the **rewards-to-go** and can be computed as:\n", "\n", "$\\hat{R}_i=\\sum_{t=i}^Tr_t$\n", "\n", "Compare this to the episode return:\n", "\n", "$R(\\tau)=\\sum_{t=0}^Tr_t$\n", "\n", "We can improve the reliability of the policy gradient by substituting the episode return with the rewards-to-go. The policy gradient with rewards-to-go is given by:\n", "\n", "$\\nabla_{\\theta} J(\\pi_{\\theta})=\\underset{\\tau \\sim \\pi_{\\theta}}{\\mathrm{E}}[\\sum_{t=0}^{T} \\nabla_{\\theta} \\log \\pi_{\\theta}(a_{t} \\mid s_{t}) \\hat{R}_t]$\n", "\n", "**Exercise 7:** Implement a function that takes a list of all the rewards obtained in an episode and computes the rewards-to-go. Don't worry about using JAX in this function. You can use regular Python operations like `for-loops`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "nV1Hww8E3dUJ" }, "outputs": [], "source": [ "def compute_rewards_to_go(rewards):\n", " \"\"\"\n", " This function should take a list of rewards as input and \n", " compute the rewards-to-go for each timestep.\n", "\n", " EXAMPLE: compute_rewards_to_go([1,2,3,4]) = [10, 9, 7, 4]\n", " \n", " Arguments:\n", " rewards[t] is the reward at time step t.\n", "\n", " Returns:\n", " rewards_to_go[t] should be the reward-to-go at timestep t.\n", " \"\"\"\n", "\n", " rewards_to_go = []\n", "\n", " # YOUR CODE\n", "\n", "\n", " # END YOUR CODE\n", "\n", " return rewards_to_go" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "hLVaVRp28YGI" }, "outputs": [], "source": [ "#@title Check exercise 7 {display-mode: \"form\"}\n", "\n", "try: \n", " result = compute_rewards_to_go([1,2,3,4])\n", "\n", " if result != [10, 9, 7, 4]:\n", " print(\"There is a problem with your implementation.\")\n", " else:\n", " print(\"Looks correct.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "C2qy2F3xRjM3" }, "outputs": [], "source": [ "#@title Solution exercise 7 {display-mode: \"form\"}\n", "\n", "def compute_rewards_to_go(rewards):\n", " rewards_to_go = []\n", " for i in range(len(rewards)):\n", " r2g = 0\n", " for j in range(i, len(rewards)):\n", " r2g += rewards[j]\n", " rewards_to_go.append(r2g)\n", " return rewards_to_go" ] }, { "cell_type": "markdown", "metadata": { "id": "IboxN9MS65i5" }, "source": [ "### REINFORCE memory\n", "Next we will need to make a new agent memory to store the rewards-to-go $\\hat{R}_t$ along with the observation $o_t$ and action $a_t$ at every timestep. Below we implemented such a memory module for you. The function `memory.sample()` will return a batch of last 500 memories. You are welcome to read through the code to try and understand it, but it is not required. Therefore, we hide the code by default." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "xhS4V6auRjM3" }, "outputs": [], "source": [ "# @title Memory implementation (run me) {display-mode: \"form\"}\n", "\n", "# NamedTuple to store memory\n", "EpisodeRewardsToGoMemory = collections.namedtuple(\"EpisodeRewardsToGoMemory\", [\"obs\", \"action\", \"reward_to_go\"])\n", "\n", "class EpisodeRewardsToGoBuffer:\n", "\n", " def __init__(self, num_transitions_to_store=512, batch_size=256):\n", " self.batch_size = batch_size\n", " self.memory_buffer = collections.deque(maxlen=num_transitions_to_store)\n", " self.current_episode_transition_buffer = []\n", "\n", " def push(self, transition):\n", " self.current_episode_transition_buffer.append(transition)\n", "\n", " if transition.done:\n", "\n", " episode_rewards = []\n", " for t in self.current_episode_transition_buffer:\n", " episode_rewards.append(t.reward)\n", "\n", " r2g = compute_rewards_to_go(episode_rewards)\n", "\n", " for i, t in enumerate(self.current_episode_transition_buffer):\n", " memory = EpisodeRewardsToGoMemory(t.obs, t.action, r2g[i])\n", " self.memory_buffer.append(memory)\n", "\n", " # Reset episode buffer\n", " self.current_episode_transition_buffer = []\n", "\n", "\n", " def is_ready(self):\n", " return len(self.memory_buffer) >= self.batch_size\n", "\n", " def sample(self):\n", " random_memory_sample = random.sample(self.memory_buffer, self.batch_size)\n", "\n", " obs_batch, action_batch, reward_to_go_batch = zip(*random_memory_sample)\n", "\n", " return EpisodeRewardsToGoMemory(\n", " np.stack(obs_batch).astype(\"float32\"), \n", " np.asarray(action_batch).astype(\"int32\"), \n", " np.asarray(reward_to_go_batch).astype(\"int32\")\n", " )\n", "\n", "\n", "# Instantiate Memory\n", "REINFORCE_memory = EpisodeRewardsToGoBuffer(num_transitions_to_store=512, batch_size=256)" ] }, { "cell_type": "markdown", "metadata": { "id": "Idkav_aSYXvz" }, "source": [ "### Policy neural network\n", "Next, we will use a simple neural network to aproximate the policy. Our policy neural network will have an input layer that takes the observation as input and passes it through two hidden layers and then outputs one scalar value for each of the possible actions. So, in CartPole the output layer will have size `2`.\n", "\n", "[Haiku](https://github.com/deepmind/dm-haiku) is a library for implementing neural networks is JAX. Below we have implemented a simple function to make the policy network for you. \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "j2XO7VkORjM4" }, "outputs": [], "source": [ "def make_policy_network(num_actions: int, layers=[20, 20]) -> hk.Transformed:\n", " \"\"\"Factory for a simple MLP network for the policy.\"\"\"\n", "\n", " def policy_network(obs):\n", " network = hk.Sequential(\n", " [\n", " hk.Flatten(),\n", " hk.nets.MLP(layers + [num_actions])\n", " ]\n", " )\n", " return network(obs)\n", "\n", " return hk.without_apply_rng(hk.transform(policy_network))" ] }, { "cell_type": "markdown", "metadata": { "id": "1GR2y8FjaG-G" }, "source": [ "Haiku networks have two important functions you need to know about. The first is the `network.init(, )`, which returns a set of random initial parameters. The second method is the `network.apply(, )` which passes an input through the network using the set of parameters provided." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "fJrn9o-Vatkw" }, "outputs": [], "source": [ "# Example\n", "POLICY_NETWORK = make_policy_network(num_actions=num_actions, layers=[20,20])\n", "random_key = jax.random.PRNGKey(42) # random key\n", "dummy_obs = np.ones(obs_shape, \"float32\")\n", "\n", "# Initialise parameters\n", "REINFORCE_params = POLICY_NETWORK.init(random_key, dummy_obs)\n", "print(\"Initial params:\", REINFORCE_params.keys())\n", "\n", "# Pass input through the network\n", "output = POLICY_NETWORK.apply(REINFORCE_params, dummy_obs)\n", "print(\"Policy network output:\", output)\n" ] }, { "cell_type": "markdown", "metadata": { "id": "MlouUBvoeunz" }, "source": [ "The outputs of our policy network are [logits](https://qr.ae/pv4YTe). To convert this into a probability distribution over actions we pass the logits to the [softmax](https://en.wikipedia.org/wiki/Softmax_function) function.\n", "\n", "### REINFORCE choose action function\n", "\n", "**Exercise 8:** Complete the function below which takes a vector of logits and randomly samples an action from a categorical distibution given by the logits. \n", "\n", "**Useful functions:**\n", "* `jax.random.categorical` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.random.categorical.html))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "m3Z8DxUmeOGJ" }, "outputs": [], "source": [ "def sample_action(random_key, logits):\n", " \n", " # YOUR CODE HERE\n", " action = ...\n", "\n", " # END YOUR code\n", "\n", " return action" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "5opHJMO0D_Ub" }, "outputs": [], "source": [ "#@title Check exercise 8 {display-mode: \"form\"}\n", "\n", "try:\n", " random_key = jax.random.PRNGKey(42) # random key\n", " action = sample_action(random_key, np.array([1,2], \"float32\"))\n", " if action != 1:\n", " print(\"Your function is incorrect.\")\n", " else:\n", " print(\"Seems correct.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "2huSgyukg1N4" }, "outputs": [], "source": [ "#@title Solution exercise 8 {display-mode: \"form\"}\n", "\n", "def sample_action(random_key, logits):\n", " \n", " # YOUR CODE HERE\n", "\n", " action = jax.random.categorical(random_key, logits)\n", "\n", " # END YOUR code\n", "\n", " return action\n" ] }, { "cell_type": "markdown", "metadata": { "id": "jP5UH87VRjM4" }, "source": [ "Now we can implement the `REINFORCE_choose_action` function. We will pass the observation through the policy network to compute the logits and then pass the logits to the `sample_action` function to choose and action." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "UJTzrDAZ0Ul5" }, "outputs": [], "source": [ "def REINFORCE_choose_action(key, params, actor_state, obs, evaluation=False):\n", " obs = jnp.expand_dims(obs, axis=0) # add dummy batch dim before passing through network\n", "\n", " # Pass obs through policy network to compute logits\n", " logits = POLICY_NETWORK.apply(params, obs)\n", " logits = logits[0] # remove batch dim\n", "\n", " # Randomly sample action\n", " sampled_action = sample_action(key, logits)\n", " \n", " return sampled_action, actor_state" ] }, { "cell_type": "markdown", "metadata": { "id": "NI26SLAb7iRo" }, "source": [ "Now that we have implemented the `REINFORCE_choose_action` function, all we have left to do is to make a `REINFORCE_learn` function. The learn function should use the `weighted_log_prob` function we made earlier to compute the policy gradient loss and apply the gradient updates to our neural network." ] }, { "cell_type": "markdown", "metadata": { "id": "36ALCJESQJ8e" }, "source": [ "### Policy gradient loss\n", "\n", "**Exercise 9:** Complete the `policy_gradient_loss` function below. The function should compute the action probabilities by passing the `logits` through the softmax function. Then you should extract the probability of the given `action` (using array indexing) and compute the `weighted_log_prob` using the function we made earlier.\n", "\n", "**Useful methods:**\n", "* `jax.nn.softmax` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.nn.softmax.html))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "9sUKkqx0RjM4" }, "outputs": [], "source": [ "def policy_gradient_loss(action, logits, reward_to_go):\n", "\n", " # YOUR CODE\n", "\n", " all_action_probs = ... # convert logits into probs\n", "\n", " action_prob = ... # using array indexing to get prob of action\n", "\n", " weighted_log_prob = ...\n", "\n", " # END YOUR CODE\n", " \n", " loss = - weighted_log_prob # negative because we want gradient `ascent`\n", " \n", " return loss" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "7AMJvau1FsM5" }, "outputs": [], "source": [ "#@title Check exercise 9 {display-mode: \"form\"}\n", "\n", "try:\n", " result = policy_gradient_loss(1, np.array([1,2], \"float32\"), 10)\n", " if result != 3.1326165:\n", " print(\"Your implementation looks wrong.\")\n", " else:\n", " print(\"Looks correct.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1HAxSFU0qBVo" }, "outputs": [], "source": [ "#@title Solution exercise 9 {display-mode: \"form\"}\n", "\n", "def policy_gradient_loss(action, logits, reward_to_go):\n", "\n", " # YOUR CODE\n", "\n", " all_action_probs = jax.nn.softmax(logits) # convert logits into probs\n", "\n", " action_prob = all_action_probs[action]\n", "\n", " weighted_log_prob = compute_weighted_log_prob(action_prob, reward_to_go)\n", "\n", " # END YOUR CODE\n", " \n", " loss = - weighted_log_prob # negative because we want gradient `ascent`\n", " \n", " return loss" ] }, { "cell_type": "markdown", "metadata": { "id": "Gzuqx1jJrwVx" }, "source": [ "When we do a policy gradient update step we are going to want to do it using a batch of experience, rather than just a single experience like above. We can use JAX's [vmap](https://jax.readthedocs.io/en/latest/_autosummary/jax.vmap.html#jax.vmap) function to easily make our `policy_gradient_loss` function work on a batch of experience." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "3yq4naLURjM4" }, "outputs": [], "source": [ "def batched_policy_gradient_loss(params, obs_batch, action_batch, reward_to_go_batch):\n", " # Get logits by passing observation through network\n", " logits_batch = POLICY_NETWORK.apply(params, obs_batch)\n", "\n", " policy_gradient_loss_batch = jax.vmap(policy_gradient_loss)(action_batch, logits_batch, reward_to_go_batch) # add batch\n", "\n", " # Compute mean loss over batch\n", " mean_policy_gradient_loss = jnp.mean(policy_gradient_loss_batch)\n", "\n", " return mean_policy_gradient_loss\n", "\n", "# TEST\n", "obs_batch = np.ones((3, *obs_shape), \"float32\")\n", "actions_batch = np.array([1,0,0])\n", "rew2go_batch = np.array([2.3, 4.3, 2.1])\n", "\n", "loss = batched_policy_gradient_loss(REINFORCE_params, obs_batch, actions_batch, rew2go_batch)\n", "\n", "print(\"Policy gradient loss on batch:\", loss)" ] }, { "cell_type": "markdown", "metadata": { "id": "VDhTH3culwqo" }, "source": [ "### Network Optimiser\n", "\n", "To apply policy gradient updates to our neural network we will use a JAX library called [Optax](https://github.com/deepmind/optax). Optax has an implementation of the [Adam optimizer](https://www.geeksforgeeks.org/intuition-of-adam-optimizer/) which we can use." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "pxXINlMHP5Ic" }, "outputs": [], "source": [ "REINFORCE_OPTIMIZER = optax.adam(1e-3)\n", "\n", "# Initialise the optimiser\n", "REINFORCE_optim_state = REINFORCE_OPTIMIZER.init(REINFORCE_params)" ] }, { "cell_type": "markdown", "metadata": { "id": "ViENrHOALbCw" }, "source": [ "Now we have everything we need tp make the `REINFORCE_learn` function. We will store the state of the optimiser in the `learn_state`. We will compute the gradient of the policy gradient loss by using `jax.grad` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.grad.html))." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "CQr2Uz5ORjM5" }, "outputs": [], "source": [ "# A NamedTuple to store the state of the optimiser\n", "REINFORCELearnState = collections.namedtuple(\"LearnerState\", [\"optim_state\"])\n", "\n", "\n", "def REINFORCE_learn(key, params, learner_state, memory):\n", " \n", " # Get the policy gradient by using `jax.grad()` on `batched_policy_gradient_loss`\n", " grad_loss = jax.grad(batched_policy_gradient_loss)(params, memory.obs, memory.action, memory.reward_to_go)\n", "\n", " # Get param updates using gradient and optimizer\n", " updates, new_optim_state = REINFORCE_OPTIMIZER.update(grad_loss, learner_state.optim_state)\n", "\n", " # Apply updates to params\n", " params = optax.apply_updates(params, updates)\n", "\n", " return params, REINFORCELearnState(new_optim_state) # update learner state" ] }, { "cell_type": "markdown", "metadata": { "id": "5an3U2NhRKgG" }, "source": [ "### REINFORCE training loop\n", "Now we can train our REINFORCE agent by putting everything together using the training loop. " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "vioIcVGsRjM5" }, "outputs": [], "source": [ "# JIT the choose_action and learn functions for more speed\n", "REINFORCE_learn_jit = jax.jit(REINFORCE_learn)\n", "REINFORCE_choose_action_jit = jax.jit(REINFORCE_choose_action)\n", "\n", "# Initial learn state\n", "REINFORCE_learn_state = REINFORCELearnState(REINFORCE_optim_state)\n", "\n", "# Run training loop\n", "print(\"Starting training. This may take up to 10 minutes to complete.\")\n", "episode_returns, evaluator_returns = run_training_loop(\n", " env_name,\n", " REINFORCE_params,\n", " REINFORCE_choose_action_jit, \n", " None, # action state not used\n", " REINFORCE_learn_jit, \n", " REINFORCE_learn_state, \n", " REINFORCE_memory,\n", " num_episodes=10_001,\n", " learn_steps_per_episode=2,\n", " video_subdir=\"reinforce\"\n", " )\n", "\n", "# Plot the episode returns\n", "plt.plot(episode_returns)\n", "plt.xlabel(\"Episode\")\n", "plt.ylabel(\"Episode Return\")\n", "plt.title(\"REINFORCE\")\n", "plt.show()\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "caKL3ngNr_Yh" }, "outputs": [], "source": [ "#@title Visualise Policy {display-mode: \"form\"}\n", "#@markdown Choose an episode number that is a multiple of 100 and less than or equal to 1000, and **run this cell**.\n", "\n", "episode_number = 100 #@param {type:\"number\"}\n", "\n", "assert (episode_number % 100) == 0, \"Episode number must be a multiple of 100 since we only record every 100th episode.\"\n", "assert episode_number < 1001, \"Episode number must be less than or equal to 1000\"\n", "\n", "eval_episode_number = int(episode_number / 100 * 8)\n", "video_path = f\"./video/reinforce/eval/rl-video-episode-{eval_episode_number}.mp4\"\n", "\n", "mp4 = open(video_path,'rb').read()\n", "data_url = \"data:video/mp4;base64,\" + b64encode(mp4).decode()\n", "HTML(\"\"\"\n", "\n", "\"\"\" % data_url)" ] }, { "cell_type": "markdown", "metadata": { "id": "D_HHzFTOc-Qr" }, "source": [ "## Section 4: Q-Learning\n", "Another common aproach to finding an optimal policy in an environment using RL is via Q-learning. " ] }, { "cell_type": "markdown", "metadata": { "id": "lF1nOZrUSzhE" }, "source": [ "### State-Action Value function\n", "In Q-learning the agent learns a function that approximates the **value** of state-action pairs. By *value* we mean the return you expect to receive if you start in a particular state $s_t$, take a particular action $a_t$, and then act according to a particular policy $\\pi$ forever after. The state-action value function of policy $\\pi$ is given by\n", "\n", "$Q_\\pi(s,a)=\\mathrm{E}_{\\tau\\sim\\pi}\\left[R(\\tau) \\mid s_0=s,\\ a_t=a\\right]$.\n", "\n", "We say that the value function $Q_\\pi(s,a)$ is the **optimal** value function if the policy $\\pi$ is an optimal policy. We denote the optimal value function as follows:\n", "\n", "$Q_\\ast(s,a)=\\max \\limits_\\pi \\ \\mathrm{E}_{\\tau\\sim\\pi}\\left[R(\\tau) \\mid s_0=s,\\ a_0=a\\right]$\n", "\n", "There is an important relationship between the optimal action $a_\\ast$ in a state $s$ and the optimal state-action value function $Q_\\ast$. Namely, the optimal action $a_\\ast$ in state $s$ is equal to the action that maximises the optimal state-action value function. This relationship naturally induces an optimal policy:\n", "\n", "$\\pi_\\ast(s)=\\arg \\max \\limits_a\\ Q_\\ast(s, a)$" ] }, { "cell_type": "markdown", "metadata": { "id": "H2x2tqvZSihz" }, "source": [ "### Greedy action selection\n", "\n", "**Exercise 10:** Let's implement a function that, given a vector of Q-values, returns the action with the largest Q-value (i.e. the greedy action).\n", "\n", "**Useful methods:**\n", "* `jax.numpy.argmax` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.argmax.html))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Nn9P1YdzTIDU" }, "outputs": [], "source": [ "# Implement a function takes q-values as input and returns the greedy_action\n", "def select_greedy_action(q_values):\n", "\n", " # YOUR CODE\n", " action = ...\n", " # END YOUR CODE\n", "\n", " return action" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ZBzLr_G7QKXR" }, "outputs": [], "source": [ "# @title Check exercise 10 (run me) {display-mode: \"form\"}\n", "\n", "try:\n", " q_values = jnp.array([1,1,3,4])\n", " action = select_greedy_action(q_values)\n", "\n", " if action != 3:\n", " print(\"Incorrect answer, your greedy action selector looks wrong\")\n", " else:\n", " print(\"Looks good.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "9GsPv35lRjM6" }, "outputs": [], "source": [ "#@title Solution exercise 10 {display-mode: \"form\"}\n", "\n", "def select_greedy_action(q_values):\n", " \n", " # YOUR CODE\n", " action = jnp.argmax(q_values)\n", " # END YOUR CODE\n", "\n", " return action" ] }, { "cell_type": "markdown", "metadata": { "id": "PFQUlqZ4ZyLp" }, "source": [ "### Q-Network\n", "Unlike in the policy gradient approach from the previous section, in Q-learning and other value-based RL methods we don't need a parameterisation for the policy, rather we parametrise the Q-function using a neural network $Q_\\theta$. We obtain a policy from the Q-network by always choosing the action with the *greatest* value:\n", "\n", "$\\hat{\\pi}_\\theta(s)=\\arg \\max \\limits_a\\ Q_{\\theta}(s, a)$\n", "\n", "As we did previously, we shall use haiku to make a neural network to approximate this Q-function. The network will take an observation as input and then output a Q-value for each of the available actions. So in the case of CartPole, the output of the network will have size $2$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "9wU1soJYZyLp" }, "outputs": [], "source": [ "def build_network(num_actions: int, layers=[20, 20]) -> hk.Transformed:\n", " \"\"\"Factory for a simple MLP network for approximating Q-values.\"\"\"\n", "\n", " def q_network(obs):\n", " network = hk.Sequential(\n", " [hk.Flatten(),\n", " hk.nets.MLP(layers + [num_actions])])\n", " return network(obs)\n", "\n", " return hk.without_apply_rng(hk.transform(q_network))" ] }, { "cell_type": "markdown", "metadata": { "id": "sUwG-4qTS1zx" }, "source": [ "Let's initialise our Q-network and get the initial parameters." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1uvq5n2cS9lu" }, "outputs": [], "source": [ "# Initialise Q-network\n", "Q_NETWORK = build_network(num_actions=num_actions, layers=[20, 20]) # two actions\n", "\n", "dummy_obs = jnp.zeros((1,*obs_shape), jnp.float32) # a dummy observation like the one in CartPole\n", "\n", "random_key = jax.random.PRNGKey(42) # random key\n", "Q_NETWORK_PARAMS = Q_NETWORK.init(random_key, dummy_obs) # Get initial params\n", "\n", "print(\"Q-Learning params:\", Q_NETWORK_PARAMS.keys())" ] }, { "cell_type": "markdown", "metadata": { "id": "iqCUeZfhEfyP" }, "source": [ "Before we implement the loss function required for training our Q-network. Let's first discuss the intuition behind it. " ] }, { "cell_type": "markdown", "metadata": { "id": "vbLig3uSZyLp" }, "source": [ "### The Bellman Equations\n", "The value function can be written recursively as:\n", "\n", "$Q_{\\pi}(s, a) =\\underset{s^{\\prime} \\sim P}{\\mathrm{E}}\\left[r(s, a)+ \\underset{a^{\\prime} \\sim \\pi}{\\mathrm{E}}\\left[Q_{\\pi}\\left(s^{\\prime}, a^{\\prime}\\right)\\right]\\right]$,\n", "\n", "where $s' \\sim P$ is shorthand for saying that the next state $s'$ is sampled from the environment’s transition function $P(s'\\mid s,a)$. Intuitively, this equation says that the value of the action $a$ you took in the state $s$ is equal to the reward $r$ you expect to get, plus the value you expect to get in the next state $s`$ you land in given that you will choose your next action $a`$ with the policy $\\pi$. The Bellman equation for the optimal value function is:\n", "\n", "$Q_{*}(s, a) =\\underset{s^{\\prime} \\sim P}{\\mathrm{E}}\\left[r(s, a)+\\ \\underset{a^{\\prime}}{\\max}\\ Q_{*}(s^{\\prime}, a^{\\prime})\\right]$\n", "\n", "Notice that instead of chosing your next action $a`$ with policy $\\pi$, we choose the action with the greatest Q-value.\n", "\n", "\n", "For a more in-depth discussion of the Bellman Equations, see the [OpenAI Spinning Up](https://spinningup.openai.com/en/latest/spinningup/rl_intro.html) website." ] }, { "cell_type": "markdown", "metadata": { "id": "DsOJi5G8ZyLp" }, "source": [ "### The Bellman Backup\n", "To learn to approximate the optimal Q-value function, we can use the right-hand side of the Bellman equation as an update rule. In other words, suppose we have a Q-network $Q_\\theta$, approximated using parameters $\\theta$, then we can iteratively update the parameters such that\n", "\n", "$Q_\\theta(s,a)\\leftarrow r(s, a) + \\underset{a'}{\\max}\\ Q_\\theta(s', a')$.\n", "\n", "Intuitively, this says that the approximation of the Q-value of action $a$ in state $s$ should be updated such that it is closer to being equal to the reward received from the environment $r(s, a)$ plus the value of the best possible action in the next state $s'$. We can perform this optimisation by minimising the difference between the left and right-hand side, with respect to the parameters $\\theta$ using gradient descent. We can measure the difference between the two values using the [squared-error](https://en.wikipedia.org/wiki/Mean_squared_error#Loss_function).\n", "\n", "**Exercise 11:** Implement the squared-error function.\n", "\n", "**Useful functions**\n", "* `jax.numpy.square` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.square.html))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "PTto__ohZyLp" }, "outputs": [], "source": [ "def compute_squared_error(pred, target):\n", " # YOUR CODE\n", " squared_error = ...\n", " # END YOUR CODE\n", "\n", " return squared_error" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "wGhX8XTFVPVU" }, "outputs": [], "source": [ "#@title Check exercise 11 {display-mode: \"form\"}\n", "\n", "try:\n", " result = compute_squared_error(1, 4)\n", "\n", " if result != 9:\n", " print(\"Your implementation looks wrong.\")\n", " else:\n", " print(\"Looks good.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Ms7pHyHGZyLp" }, "outputs": [], "source": [ "#@title Solution exercise 11 {display-mode: \"form\"}\n", "def compute_squared_error(pred, target):\n", "\n", " # YOUR CODE\n", " squared_error = jax.numpy.square(pred - target)\n", " # END YOUR CODE\n", " return squared_error" ] }, { "cell_type": "markdown", "metadata": { "id": "ycpZVkgdZyLp" }, "source": [ "**Exercise 12:** Implement a function that computes the **Bellman target** (right-hand side of the Bellman equation). If the episode is at the last timestep (i.e. done==1.0), then the Bellman target should be equal to the reward, with no extra value at the end.\n", "\n", "**Useful functions**\n", "* `jax.numpy.max` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.numpy.max.html))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "961_OllWZyLp" }, "outputs": [], "source": [ "# Bellman target\n", "def compute_bellman_target(reward, done, next_q_values):\n", " \"\"\"A function to compute the bellman target.\n", " \n", " Args:\n", " reward: a scalar reward.\n", " done: a scalar of value either 1.0 or 0.0, indicating if the transition is a terminal one.\n", " next_q_values: a vector of q_values for the next state. One for each action.\n", " Returns:\n", " A scalar equal to the bellman target.\n", " \n", " \"\"\"\n", " # YOUR CODE\n", " bellman_target = ...\n", " # END YOUR CODE\n", "\n", " return bellman_target" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "E5RAhegOWAkC" }, "outputs": [], "source": [ "#@title Check exercise 12 {display-mode: \"form\"}\n", "\n", "try:\n", " # not done\n", " result1 = compute_bellman_target(1, 0.0, np.array([3,2], \"float32\"))\n", "\n", " # done\n", " result2 = compute_bellman_target(1, 1.0, np.array([3,2], \"float32\"))\n", "\n", " if result1 != 4 or result2 != 1:\n", " print(\"Your implementation looks wrong.\")\n", " else:\n", " print(\"Looks good.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "wbAGg-_yZyLq" }, "outputs": [], "source": [ "#@title Solution exercise 12 {display-mode: \"form\"}\n", "\n", "# Bellman target\n", "def compute_bellman_target(reward, done, next_q_values):\n", " \"\"\"A function to compute the bellman target.\n", " \n", " Args:\n", " reward: a scalar reward.\n", " done: a scalar of value either 1.0 or 0.0, indicating if the transition is a terminal one.\n", " next_q_values: a vector of q_values for the next state. One for each action.\n", " Returns:\n", " A scalar equal to the bellman target.\n", " \n", " \"\"\"\n", " # YOUR CODE\n", " bellman_target = reward + (1.0 - done) * jax.numpy.max(next_q_values)\n", " # END YOUR CODE\n", "\n", " return bellman_target\n" ] }, { "cell_type": "markdown", "metadata": { "id": "8sIjrHSJZyLq" }, "source": [ "We can now combine these two functions to compute the loss for Q-learning. The Q-learning loss is equal to the squared difference between the predicted Q-value of an action and its corresponding Bellman target.\n", "\n", "**Exercise 13:** Implement the Q-learning loss." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "LJY_kpFcZyLq" }, "outputs": [], "source": [ "def q_learning_loss(q_values, action, reward, done, next_q_values):\n", " \"\"\"Implementation of the Q-learning loss.T\n", " \n", " Args:\n", " q_values: a vector of Q-values, one for each action.\n", " action: an integer, giving the action that was chosen. q_values[action] is the value of the chose action.\n", " done: is a scalar that indicates if this is a terminal transition.\n", " next_q_values: a vector of Q-values in the next state.\n", " Returns:\n", " The squared difference between the q_value of the chosen action and the bellman target.\n", " \"\"\"\n", " # YOUR CODE\n", " chosen_action_q_value = ... # q_value of action, use array indexing\n", " bellman_target = ...\n", " squared_error = ...\n", " # END YOUR CODE\n", " \n", " return squared_error" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "1aZRn1qaWx2M" }, "outputs": [], "source": [ "#@title Check exercise 13 {display-mode: \"form\"}\n", "\n", "try:\n", " result = q_learning_loss(np.array([3,2], \"float32\"), 1, 2, 0.0, np.array([3,2], \"float32\"))\n", "\n", " if result != 9.0:\n", " print(\"Your implementation looks wrong.\")\n", " else:\n", " print(\"Looks good.\")\n", "except Exception as e:\n", " print(\"An Error Occured: {}\".format(e))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "3_KQleTsZyLq" }, "outputs": [], "source": [ "#@title Solution exercise 13 {display-mode: \"form\"}\n", "\n", "def q_learning_loss(q_values, action, reward, done, next_q_values):\n", " \"\"\"Implementation of the Q-learning loss.T\n", " \n", " Args:\n", " q_values: a vector of Q-values, one for each action.\n", " action: an integer, giving the action that was chosen. q_values[action] is the value of the chose action.\n", " done: is a scalar that indicates if this is a terminal transition.\n", " next_q_values: a vector of Q-values in the next state.\n", " Returns:\n", " The squared difference between the q_value of the chosen action and the bellman target.\n", " \"\"\"\n", " # YOUR CODE\n", " chosen_action_q_value = q_values[action]\n", " bellman_target = compute_bellman_target(reward, done, next_q_values)\n", " squared_error = compute_squared_error(chosen_action_q_value, bellman_target)\n", " # END YOUR CODE\n", " \n", " return squared_error" ] }, { "cell_type": "markdown", "metadata": { "id": "b4YnSUfJZyLq" }, "source": [ "### Target Q-network\n", "Notice that when we compute the bellman target we are using our Q-network $Q_\\theta$ to compute the value for the next state $s_t$. We are basically using our latest approximation of the Q-function to compute the target of our next approximation. Using an approximation to compute the target for your next approximation, is called bootstrapping. Unfortunately, if we naively bootstrap like this, it can make training a neural network very unstable. To mitigage this we can instead use a different set of parameters $\\hat{\\theta}$ to compute the values at state $s_{t+1}$. We will keep the parameters $\\hat{\\theta}$ fixed and only periodically update them to be equal to the latest online parameters $\\theta$ every couple of training steps *(say 100)*. This serves to keep the bellman targets fixed for a couple training steps to help reduce the instability due to bootstrapping. \n", "\n", "\n", "We will need to keep track of the latest (online) parameters, as well as the target networks parameters. Lets make a `NamedTuple` to store these two values. We will also need to keep track of the number of learner steps we have taken, so that we know when to update the target network. Lets store a `count` of the learn steps in the `learn_state`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "DvZqUKmq6L7k" }, "outputs": [], "source": [ "# Store online and target parameters\n", "QLearnParams = collections.namedtuple(\"Params\", [\"online\", \"target\"])\n", "\n", "# Q-learn-state\n", "QLearnState = collections.namedtuple(\"LearnerState\", [\"count\", \"optim_state\"])" ] }, { "cell_type": "markdown", "metadata": { "id": "CJWH2_kNZsau" }, "source": [ "We will once again be using Optax to optimize our neural network in JAX. We store the state of the optimizer in the `learn_state` above. Lets now instantiate optimizer and add the initial Q-network parameters to a `QLearnParams` object." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "HwqKTN6BaAXE" }, "outputs": [], "source": [ "# Initialise Q-network optimizer\n", "Q_LEARN_OPTIMIZER = optax.adam(3e-4) # learning rate\n", "\n", "Q_LEARN_OPTIM_STATE = Q_LEARN_OPTIMIZER.init(Q_NETWORK_PARAMS) # initial optim state\n", "\n", "# Create Learn State\n", "Q_LEARNING_LEARN_STATE = QLearnState(0, Q_LEARN_OPTIM_STATE) # count set to zero initially\n", "\n", "# Add initial Q-network weights to QLearnParams object\n", "Q_LEARNING_PARAMS = QLearnParams(online=Q_NETWORK_PARAMS, target=Q_NETWORK_PARAMS) # target equal to online" ] }, { "cell_type": "markdown", "metadata": { "id": "xj89M8LgZlFe" }, "source": [ "Now we can implement a simple function that updates target networks parameters to equal the latest online parameters every 100 training steps." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "SKrg_3rO6cCL" }, "outputs": [], "source": [ "def update_target_params(learn_state, online_weights, target_weights):\n", " \"\"\"A function to update target params every 100 training steps\"\"\"\n", "\n", " target = jax.lax.cond(\n", " jax.numpy.mod(learn_state.count, 100) == 0,\n", " lambda x, y: x,\n", " lambda x, y: y,\n", " online_weights, \n", " target_weights\n", " )\n", "\n", " params = QLearnParams(online_weights, target)\n", "\n", " return params" ] }, { "cell_type": "markdown", "metadata": { "id": "KoiaYSo9ZyLq" }, "source": [ "### Q-learning loss\n", "We now have everything we need to implement the `q_learn` function which takes some batch of transitions and does a step of Q-learning to update the network paramters. But first we use `jax.vmap` to modify the `q_learning_loss` function so that it accepts batches of transitions. In addition, we will compute the Q-values by passing the observations through the `Q_NETWORK` and the target Q-values using the target parameters of the `Q_NETWORK`." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "hnrsGppWZyLq" }, "outputs": [], "source": [ "def batched_q_learning_loss(online_params, target_params, obs, actions, rewards, next_obs, dones):\n", " q_values = Q_NETWORK.apply(online_params, obs) # use the online parameters\n", " next_q_values = Q_NETWORK.apply(target_params, next_obs) # use the target parameters\n", " squared_error = jax.vmap(q_learning_loss)(q_values, actions, rewards, dones, next_q_values) # vmap q_learning_loss\n", " mean_squared_error = jnp.mean(squared_error) # mean squared error over batch\n", " return mean_squared_error" ] }, { "cell_type": "markdown", "metadata": { "id": "CU8vo9ZebnEa" }, "source": [ "Now we can create the `q_learn` function which computes the gradient of the `batched_q_learning_loss` and then uses an Optax optimizer to update the network weights and then finally (maybe) updates the target parameters." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "6BYoX2W_ZyLr" }, "outputs": [], "source": [ "def q_learn(rng, params, learner_state, memory):\n", " # Compute gradients\n", " grad_loss = jax.grad(batched_q_learning_loss)(params.online, params.target, memory.obs, \n", " memory.action, memory.reward, \n", " memory.next_obs, memory.done,\n", " ) # jax.grad\n", "\n", " # Get updates\n", " updates, opt_state = Q_LEARN_OPTIMIZER.update(grad_loss, learner_state.optim_state)\n", "\n", " # Apply them\n", " new_weights = optax.apply_updates(params.online, updates)\n", "\n", " # Maybe update target network\n", " params = update_target_params(learner_state, new_weights, params.target)\n", "\n", " # Increment learner step counter\n", " learner_state = QLearnState(learner_state.count + 1, opt_state)\n", "\n", " return params, learner_state" ] }, { "cell_type": "markdown", "metadata": { "id": "VpZsKHssZyLq" }, "source": [ "### Replay Buffer\n", "For Q-learning we will need an agent memory that stores entire transitions: `obs`, `action`, `reward`, `next_obs`, `done`. When we retrieve transitions from the memory, they should be chosen randomly from all of the transitions collected so far. In RL we often call such a module a **replay buffer**. One benefit of using a replay buffer like this is that experiences can be re-used several times for training unlike in the policy gradient algorithm REINFORCE, where we discarded memories after using them for learning." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "8tv5dUH6ZyLr" }, "outputs": [], "source": [ "class TransitionMemory(object):\n", " \"\"\"A simple Python replay buffer.\"\"\"\n", "\n", " def __init__(self, max_size=10_000, batch_size=256):\n", " self.batch_size = batch_size\n", " self.buffer = collections.deque(maxlen=max_size)\n", "\n", " def push(self, transition):\n", "\n", " # add transition to the replay buffer\n", " self.buffer.append(\n", " (transition.obs, transition.action, transition.reward, \n", " transition.next_obs, transition.done)\n", " )\n", "\n", " \n", " def is_ready(self):\n", " return self.batch_size <= len(self.buffer)\n", "\n", " def sample(self):\n", " # Randomly sample a batch of transitions from the buffer\n", " random_replay_sample = random.sample(self.buffer, self.batch_size)\n", "\n", " # Batch the transitions together\n", " obs_batch, action_batch, reward_batch, next_obs_batch, done_batch = zip(*random_replay_sample)\n", "\n", " return Transition(\n", " np.stack(obs_batch).astype(\"float32\"), \n", " np.asarray(action_batch).astype(\"int32\"), \n", " np.asarray(reward_batch).astype(\"float32\"), \n", " np.stack(next_obs_batch).astype(\"float32\"), \n", " np.asarray(done_batch).astype(\"float32\")\n", " )\n", "\n", "# Instantiate the memory\n", "Q_LEARNING_MEMORY = TransitionMemory(max_size=50_000, batch_size=256)" ] }, { "cell_type": "markdown", "metadata": { "id": "XbHk03VVUHAV" }, "source": [ "### Random exploration\n", "We almost have everything we need for a functioning Q-learning agent. But one problem is that if we always choose the action with the highest Q-value then the agent's policy will be completly [deterministic](https://www.quora.com/What-is-the-intuitive-difference-between-a-stochastic-model-and-a-deterministic-model). This means the agent will always choose the same strategy. This can pose a problem because at the start of training, the Q-network will be very inaccurate (i.e. a bad aproximation of the true Q-function). As such, the agent will consistently choose suboptimal actions. Moreover, the agent will never deviate from its suboptimal strategy and will never discover new, potentially more rewarding actions. As a result, the Q-network remains inaccurate. Ideally, the agent should try out many different strategies so that it can observe the outcomes (rewards) of its actions in different states and so improve its approximation of the Q-function.\n", "\n", "One easy way to ensure that the agent tries out many different actions is to let it periodically choose some random actions, instead of the greedy (best) action all the time.\n", "\n", "**Exercise 14:** Implement a function that, given the number of possible (discrete) actions, returns a random action.\n", "\n", "**Useful methods:**\n", "\n", "* `jax.random.randint` ([docs](https://jax.readthedocs.io/en/latest/_autosummary/jax.random.randint.html))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "uUKkpMLXUtko" }, "outputs": [], "source": [ "def select_random_action(key, num_actions):\n", " \n", " # YOUR CODE\n", " action = ...\n", " # END YOUR CODE\n", "\n", " return action" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "NO6va6S2Y40E" }, "outputs": [], "source": [ "#@title Check exercise 14 {display-mode: \"form\"}\n", "\n", "try:\n", " random_key1 = random_key = jax.random.PRNGKey(6) # random key\n", " random_key2 = random_key = jax.random.PRNGKey(1000) # random key\n", " result1 = select_random_action(random_key1, 2)\n", " result2 = select_random_action(random_key2, 2)\n", "\n", " if result1 != 1 or result2 != 0:\n", " print(\"Your implementation looks wrong.\")\n", " else:\n", " print(\"Looks good.\")\n", "except:\n", " print(\"Your implementation looks wrong.\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "lrVadhcwRjM6" }, "outputs": [], "source": [ "#@title Solution exercise 14 {display-mode: \"form\"}\n", "\n", "def select_random_action(key, num_actions):\n", " # YOUR CODE\n", " action = jax.random.randint(\n", " key, \n", " shape=(), \n", " minval=0, \n", " maxval=num_actions\n", " )\n", " # END YOUR CODE\n", "\n", " return action" ] }, { "cell_type": "markdown", "metadata": { "id": "8-kKDFT6XU6y" }, "source": [ "### $\\varepsilon$-greedy action selection\n", "At the start of training, when the accuracy of the Q-network is low, it is worthwhile for the agent to mostly take random actions so that it can learn about how goo/bad actions are. However, as the accuracy of the Q-network improves, the agent should start taking fewer random actions and instead start choosing the greedy actions with respect to the Q-values. Choosing the best actions given the current Q-network is referred to as **exploitation.** In RL we often call the ratio of random to greedy actions **epsilon** $\\varepsilon$. Epsilon is usually a decimal value in the interval $[0,1]$, where for example $\\varepsilon=0.4$ means that the agent chooses a random action 40% of the time and the greedy action 60% of the time. It is common in RL to linearly decrease the value of epsilon over time so that the agent becomes increasingly greedy as the accuracy of its Q-network improves through learning.\n", "\n", "\n", "**Exercise 15:** Implement a function that takes the number of timesteps as input and returns the current epsilon value." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "_qejnbCocurG" }, "outputs": [], "source": [ "EPSILON_DECAY_TIMESTEPS = 3000 # decay epsilon over 3000 timesteps\n", "EPSILON_MIN = 0.1 # 10% exploration" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "5ujSbssCZyLs" }, "outputs": [], "source": [ "def get_epsilon(num_timesteps):\n", " # YOUR CODE\n", " epsilon = ... # decay epsilon\n", "\n", " epsilon = jax.lax.select(\n", " epsilon < EPSILON_MIN,\n", " ..., # if less than min then set to min\n", " ... # else don't change epsilon\n", " )\n", " # END YOUR CODE\n", "\n", " return epsilon" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "hvu4zA64aUou" }, "outputs": [], "source": [ "#@title Check exercise 15 {display-mode: \"form\"}\n", "def check_get_epsilon(get_epsilon):\n", " try:\n", " result1 = get_epsilon(10)\n", " result2 = get_epsilon(5_010)\n", "\n", " if result1 != 0.99666667 or result2 != 0.1:\n", " print(\"Your function looks wrong.\")\n", " else:\n", " print(\"Your function looks correct.\")\n", " except:\n", " print(\"Your function looks wrong.\")\n", "\n", "check_get_epsilon(get_epsilon)\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "QTpezAeUYFR7" }, "outputs": [], "source": [ "#@title Solution exercise 15 {display-mode: \"form\"}\n", "\n", "def get_epsilon(num_timesteps):\n", "\n", " # YOUR CODE\n", " epsilon = 1.0 - num_timesteps / EPSILON_DECAY_TIMESTEPS\n", "\n", " epsilon = jax.lax.select(\n", " epsilon < EPSILON_MIN,\n", " EPSILON_MIN,\n", " epsilon\n", " )\n", " # END YOUR CODE\n", "\n", " return epsilon\n", "\n", "# CHECK\n", "check_get_epsilon(get_epsilon)\n" ] }, { "cell_type": "markdown", "metadata": { "id": "t56oo58TVQ_s" }, "source": [ "**Exercise 16:** Now lets put these functions together to do epsilon-greedy action selection." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "NlQx8K4vKUXj" }, "outputs": [], "source": [ "def select_epsilon_greedy_action(key, q_values, num_timesteps): \n", " num_actions = len(q_values) # number of available actions\n", "\n", " # YOUR CODE HERE\n", " epsilon = ... # get epsilon value\n", "\n", " should_explore = ... # hint: a boolean expression to check if some random number is less than epsilon\n", "\n", " action = jax.lax.select(\n", " should_explore,\n", " ..., # if should explore\n", " ... # if should be greedy\n", " )\n", " # END YOUR CODE\n", "\n", " return action" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "mkVU2a5e7P6b" }, "outputs": [], "source": [ "#@title Check exercise 16 {display-mode: \"form\"}\n", "\n", "try:\n", " rng = hk.PRNGSequence(jax.random.PRNGKey(42))\n", " dummy_q_values = jnp.array([0,1], jnp.float32)\n", " num_timesteps = 5010 # very greedy\n", " actions1 = []\n", " for i in range(10):\n", " actions1.append(int(select_epsilon_greedy_action(next(rng), dummy_q_values, num_timesteps)))\n", "\n", " num_timesteps = 0 # completly random\n", " actions2 = []\n", " for i in range(10):\n", " actions2.append(int(select_epsilon_greedy_action(next(rng), dummy_q_values, num_timesteps)))\n", "\n", " if actions1 != [1, 1, 0, 1, 1, 0, 1, 1, 1, 1] or actions2 != [0, 0, 0, 1, 1, 1, 1, 0, 0, 0]:\n", " print(\"Looks like something might be incorrect!\")\n", " else:\n", " print(\"Looks correct!\")\n", "except:\n", " print(\"Looks like something might be incorrect!\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "bXDRQhORRjM6" }, "outputs": [], "source": [ "#@title Solution exercise 16 {display-mode: \"form\"}\n", "\n", "# Now make a function that takes an epsilon-greedy action\n", "\n", "def select_epsilon_greedy_action(key, q_values, num_timesteps):\n", " num_actions = len(q_values) # number of available actions\n", "\n", " # YOUR CODE\n", " epsilon = get_epsilon(num_timesteps)\n", "\n", " should_explore = jax.random.uniform(key, (1,))[0] < epsilon\n", "\n", " num_actions = len(q_values)\n", "\n", " action = jax.lax.select(\n", " should_explore,\n", " select_random_action(key, num_actions), \n", " select_greedy_action(q_values)\n", " )\n", " # END YOUR CODE\n", "\n", " return action" ] }, { "cell_type": "markdown", "metadata": { "id": "y5W23MnobN9x" }, "source": [ "### Q-learning select action\n", "\n", "We now have everything we need to make the `q_learning_select_action` function. We will use the `actor_state` to store a counter which keeps track of the current number of timesteps. We can use the counter to decrement our `epsilon` value." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "81TysLc0RjM6" }, "outputs": [], "source": [ "# Actor state stores the current number of timesteps\n", "QActorState = collections.namedtuple(\"ActorState\", [\"count\"])\n", "\n", "def q_learning_select_action(key, params, actor_state, obs, evaluation=False):\n", " obs = jnp.expand_dims(obs, axis=0) # add dummy batch dim\n", " q_values = Q_NETWORK.apply(params.online, obs)[0] # remove batch dim\n", "\n", " action = select_epsilon_greedy_action(key, q_values, actor_state.count)\n", " greedy_action = select_greedy_action(q_values)\n", "\n", " action = jax.lax.select(\n", " evaluation,\n", " greedy_action,\n", " action\n", " )\n", "\n", " next_actor_state = QActorState(actor_state.count + 1) # increment timestep counter\n", "\n", " return action, next_actor_state\n", "\n", "Q_LEARNING_ACTOR_STATE = QActorState(0) # counter set to zero" ] }, { "cell_type": "markdown", "metadata": { "id": "z884-1oNRGEr" }, "source": [ "### Training\n", "We can now put everything together using the agent-environment loop. But first,lets jit the select action function and the learn function for some extra speed." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "xbdHDbd1RjM8" }, "outputs": [], "source": [ "# Jit functions\n", "q_learning_select_action_jit = jax.jit(q_learning_select_action)\n", "q_learn_jit = jax.jit(q_learn)\n", "\n", "# Run environment loop\n", "print(\"Starting training. This may take up to 8 minutes to complete.\")\n", "episode_returns, evaluator_returns = run_training_loop(\n", " env_name,\n", " Q_LEARNING_PARAMS, \n", " q_learning_select_action_jit, \n", " Q_LEARNING_ACTOR_STATE,\n", " q_learn_jit,\n", " Q_LEARNING_LEARN_STATE,\n", " Q_LEARNING_MEMORY,\n", " num_episodes=1001,\n", " train_every_timestep=True, # do learning after every timestep\n", " video_subdir=\"q_learning\"\n", " )\n", "\n", "plt.plot(episode_returns)\n", "plt.xlabel(\"Episodes\")\n", "plt.ylabel(\"Episode Return\")\n", "plt.title(\"Deep Q-Learning\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "2k0-41wbpFDE" }, "source": [ "At this stage, the approximated Q-function hopefully converged to a decent policy for balancing the pole in the CartPole problem." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "t4v0ZbB4FQUs" }, "outputs": [], "source": [ "#@title Visualise Policy\n", "#@markdown Choose an episode number that is a multiple of 100 and less than or equal to 1000, and **run this cell**.\n", "\n", "episode_number = 0 #@param {type:\"number\"}\n", "\n", "assert (episode_number % 100) == 0, \"Episode number must be a multiple of 100 since we only record every 100th episode.\"\n", "assert episode_number < 1001, \"Episode number must be less than or equal to 1000\"\n", "\n", "eval_episode_number = int(episode_number / 100 * 32)\n", "video_path = f\"./video/q_learning/eval/rl-video-episode-{eval_episode_number}.mp4\"\n", "\n", "mp4 = open(video_path,'rb').read()\n", "data_url = \"data:video/mp4;base64,\" + b64encode(mp4).decode()\n", "HTML(\"\"\"\n", "\n", "\"\"\" % data_url)" ] }, { "cell_type": "markdown", "metadata": { "id": "CIIteLdFwG4B" }, "source": [ "This section attempts to summarise [Playing Atari with Deep Reinforcement Learning](https://arxiv.org/abs/1312.5602), the research paper where Deep-Q Learning was first introduced. To understand the concepts covered in this section better, we recommend you give the original paper a read." ] }, { "cell_type": "markdown", "metadata": { "id": "fV3YG7QOZD-B" }, "source": [ "## Conclusion\n", "**Summary:**\n", "\n", "In this practical we learnt the basics of reinforcement learning (RL).\n", "\n", "In the first section we learnt some basic concepts such as environment observations, action selection strategies, rewards, and episodes. We learnt about rewards and that the goal in RL is to learn a policy which maximises some notion of cummulative reward that the agent receives from the environment (return). \n", "\n", "In the second section we searched for an optimal policy in CartPole using an algorithm called RandomSearch. Basically, we tried out different policies until we happened to find one that worked well. This method did not yield consistent results and success required immense luck.\n", "\n", "In the third section we learnt about policy gradients and how we can use gradient ascent to adjust the parameters in our agents policy in the direction which maximises the expected cummulative reward (return).\n", "\n", "Finally, in the fourth section we learnt about the state-action value function and how it is related to an optimal policy. We implemented an algorithm called Q-learning to learn the optimal state-action value function in CartPole. We learnt about the importance of using a target network and epsilon-greedy exploration.\n", "\n", "**Next Steps:** \n", "\n", "Now that you have successfully solved CartPole with two different RL algorithms, REINFORCE and Deep Q-Learning, we now encourage you to use what you have learnt to try and solve some more challenging environments. OpenAI Gym is a great place to find RL environments. [LunarLander](https://www.gymlibrary.ml/environments/box2d/lunar_lander/) is a great next step. You can go to the start of this notebook ande replace the environment with LunarLander by replacing `env = gym.make(\"CartPole-v1\")` with env = `gym.make(\"LunarLander-v2\")`. Note, you will need to increase the number of training episodes in order to learn a good policy in LunarLander because it is a significantly more challenging environment than CartPole.\n", "\n", "
\n", "\n", "
\n", "\n", "In addition, there are many RL algorithms out there that make significant improvements to REINFORCE and Deep Q-Learning. See these resources:\n", "* [REINFORCE with baseline](https://spinningup.openai.com/en/latest/spinningup/rl_intro3.html#baselines-in-policy-gradients)\n", "* [Double Deep Q-Network](https://arxiv.org/pdf/1509.06461.pdf)\n", "* [Proximal Policy Optimisation (PPO)](https://arxiv.org/pdf/1707.06347.pdf)\n", "\n", "If you are looking for a more indepth online course for RL you can checkout these courses:\n", "* [Reinforcement Learning Foundations on LinkedIn Learning](https://www.linkedin.com/learning/reinforcement-learning-foundations) (made by one of our very own tutors, Khaulat Abdulhakeem)\n", "* [An introduction to Reinforcement Learning on FreeCodeCamp](https://www.freecodecamp.org/news/an-introduction-to-reinforcement-learning-4339519de419/)\n", "* [Reinforcement Learning Specialization on Coursera](https://www.coursera.org/specializations/reinforcement-learning)\n", "\n", "Finally, the most infuential textbook on RL is available for free online:\n", "* [Reinforcement Learning: An Introduction](http://incompleteideas.net/book/the-book-2nd.html) by Richard S. Sutton and Andrew G. Barto\n", "\n", "**Appendix:** \n", "\n", "N/a\n", "\n", "**References:** \n", "\n", "* [OpenAI Spinning Up](https://spinningup.openai.com/en/latest/)\n", "* [Deep Q-Network]()\n", "\n", "For other practicals from the Deep Learning Indaba, please visit [here](https://github.com/deep-learning-indaba/indaba-pracs-2022)." ] }, { "cell_type": "markdown", "metadata": { "id": "o1ndpYE50BpG" }, "source": [ "## Feedback\n", "\n", "Please provide feedback that we can use to improve our practicals in the future." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "OIZvkhfRz9Jz" }, "outputs": [], "source": [ "#@title Generate Feedback Form. (Run Cell)\n", "from IPython.display import HTML\n", "HTML(\n", "\"\"\"\n", "\n", "\"\"\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "id": "oglV4kHMWnIN" }, "source": [ "" ] } ], "metadata": { "colab": { "collapsed_sections": [], "name": "Copy of intro_to_rl.ipynb", "private_outputs": true, "provenance": [], "toc_visible": true }, "gpuClass": "standard", "kernelspec": { "display_name": "Python 3.8.13 ('dli-pracs')", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.13" }, "vscode": { "interpreter": { "hash": "0f35138c66f99be0fd7a1210bb4aa94a6fbaa5f29d51ad43aec0e0ea0ff050f0" } } }, "nbformat": 4, "nbformat_minor": 0 }