{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Sequence to Sequence Models\n", "=============================\n", "\n", "In this notebook, we will be using the same squares as before, but this time know the first two corners (the source sequence) and ask our model to predict the next two corners (the target sequence). As with every sequence-related problem, the order is important, so it is not enough to get the corner’s coordinates right, but they should follow the same direction (clockwise or counter-clockwise)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Download Plotting and Helper Functions\n", "\n", "Download the followings files and place them in the same folder as the notebook before proceed further. These files contain the utility functions and plotting functions needed for this notebook. " ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from IPython.display import FileLink, FileLinks" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "plots.py
" ], "text/plain": [ "c:\\Users\\wei\\jupyter_book\\cits4012\\cits4012_natural_language_processing\\cits4012_natural_language_processing\\LSTM\\plots.py" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "FileLink('plots.py')" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "plots_seq2seq.py
" ], "text/plain": [ "c:\\Users\\wei\\jupyter_book\\cits4012\\cits4012_natural_language_processing\\cits4012_natural_language_processing\\LSTM\\plots_seq2seq.py" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "FileLink('plots_seq2seq.py')" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "util.py
" ], "text/plain": [ "c:\\Users\\wei\\jupyter_book\\cits4012\\cits4012_natural_language_processing\\cits4012_natural_language_processing\\LSTM\\util.py" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "FileLink('util.py')" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "replay.py
" ], "text/plain": [ "c:\\Users\\wei\\jupyter_book\\cits4012\\cits4012_natural_language_processing\\cits4012_natural_language_processing\\LSTM\\replay.py" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "FileLink('replay.py')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Imports" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "import copy\n", "import numpy as np\n", "\n", "import torch\n", "import torch.optim as optim\n", "import torch.nn as nn\n", "import torch.nn.functional as F\n", "from torch.utils.data import DataLoader, Dataset, random_split, TensorDataset\n", "from util import StepByStep\n", "from plots import *\n", "from plots_seq2seq import *" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Data Generation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Same method as before for generating noisy squares. " ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "def generate_sequences(n=128, variable_len=False, seed=13):\n", " basic_corners = np.array([[-1, -1], [-1, 1], [1, 1], [1, -1]])\n", " np.random.seed(seed)\n", " bases = np.random.randint(4, size=n)\n", " if variable_len:\n", " lengths = np.random.randint(3, size=n) + 2\n", " else:\n", " lengths = [4] * n\n", " directions = np.random.randint(2, size=n)\n", " points = [basic_corners[[(b + i) % 4 for i in range(4)]][slice(None, None, d*2-1)][:l] + np.random.randn(l, 2) * 0.1 for b, d, l in zip(bases, directions, lengths)]\n", " return points, directions" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Visualise an counter clock-wise perfect square and a clock-wise one." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = counter_vs_clock(binary=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Since there are four corners to start from and two directions to follow, there are effectively eight possible sequences." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plot_sequences(binary=False, target_len=2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Generate 128 random noisy squares:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "points, directions = generate_sequences(n=128, seed=13)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[array([[ 1.03487506, 0.96613817],\n", " [ 0.80546093, -0.91690943],\n", " [-0.82507582, -0.94988627],\n", " [-0.86696831, 0.93424827]]), array([[ 1.0184946 , -1.06510565],\n", " [ 0.88794931, 0.96533932],\n", " [-1.09113448, 0.92538647],\n", " [-1.07709685, -1.04139537]])]\n" ] } ], "source": [ "print(points[:2])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Visualize the first five squares." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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wrFAQURERERERETCsUBBRERERERERMKxQEFEREREREREwrFAQURERERERETCsUARwEcffYQ777wT3bp1Q1JSEsrKykQPSZVFixbh6quvRqdOnTB06FBs27ZN9JBU27p1Kx566CFkZmYiKSkJy5cvFz0k0hBjKvIYU8bGmIo8xpSxMaYijzFlbIypyNN7TLFAEUBNTQ1GjBiBF198UfRQVFuzZg1efPFFPPvss/jnP/+JQYMG4YEHHsCRI0dED02V6upqZGVl4fXXX0ebNm1ED4c0xpiKPMaUsTGmIo8xZWyMqchjTBkbYyry9B5TJpvN5hI9CNkVFRVh+PDh2LlzJy6//HLRwwlo5MiRuPLKK/HOO++4b+vfvz9Gjx6Nl19+WeDIQtelSxe88cYbGD9+vOihkMYYU2IwpoyLMSUGY8q4GFNiMKaMizElhh5jih0UBlJfX48dO3ZgxIgRXrePGDEC3377raBREekXY4pIW4wpIm0xpoi0xZgSjwUKAzl79iwcDgdSU1O9bk9NTcWpU6cEjYpIvxhTRNpiTBFpizFFpC3GlHhRV6CYMWMGkpKSAn4VFhaKHiaRbjCmiLTFmCLSFmOKSFuMKQoni+gBRFp+fj4efPDBgI9JT0+P0Gi0lZKSArPZjNOnT3vdfvr0aXTs2FHQqMjoGFNE2mJMEWmLMUWkLcYUhVPUFShSUlKQkpIiehhhERsbi759+2Ljxo24++673bdv3LgRd911l7iBkaExpoi0xZgi0hZjikhbjCkKp6grUITi5MmTOHnyJH788UcAQHFxMSorK9G1a1ckJycLHp1vU6ZMwaRJkzBgwABcd911WLJkCcrLy/HYY4+JHpoqVVVVOHjwIADA6XTi6NGj2LVrF5KTk9G1a1fBo6OWYkxFHmPK2BhTkceYMjbGVOQxpoyNMRV5eo8pXmY0gFmzZmH27NlNbp83b57Ul2pZtGgR5s6di5MnTyIzMxMzZ87EjTfeKHpYqhQWFiI3N7fJ7WPHjsWCBQsEjIi0xJiKPMaUsTGmIo8xZWyMqchjTBkbYyry9B5TLFAQERERERERkXBRdxUPIiIiIiIiIpIPCxREREREREREJBwLFEREREREREQkHAsURERERERERCQcCxREREREREREJBwLFEREREREREQkHAsURERERERERCQcCxREREREREREJBwLFEREREREREQkHAsUOnb8+HGkpaVhwoQJXrf/+9//RlpaGp5++mlBIyPSJ8YUkbYYU0TaYkwRaYsxJR8WKHSsc+fOyMvLw9q1a3HgwAEAQGlpKcaNG4dBgwZhzpw5gkdIpC+MKSJtMaaItMWYItIWY0o+JpvN5hI9CGq+kydPom/fvrj33nsxc+ZM3HLLLXC5XPjyyy+RlJQkenhEusOYItIWY4pIW4wpIm0xpuRiET0AaplOnTrh8ccfx4cffogff/wRZ8+exYYNGxhMRM3EmCLSFmOKSFuMKSJtMabkwikeBjB16lQ4HA4UFRVhxYoVyMjI8Lr/7NmzGDNmDDp37oz+/ftjw4YNYgZKpBOMKSJtMaaItMWYItIWY0oe7KAwgLfffhtOpxMOhwPJyclN7n/22WfRoUMH/Pjjj9i8eTMef/xxfPfdd0hNTRUwWiL5MaaItMWYItIWY4pIW4wpebCDQufmz5+PhQsX4vXXX0dCQgJmz57tdX9VVRXWrVuHl156CfHx8bj99ttx9dVXY926dYJGTCQ3xhSRthhTRNpiTBFpizElFxYodGz9+vWYPn06nnvuOUyePBlPPvkk1qxZg+LiYvdjDhw4gISEBHTp0sV921VXXYV9+/aJGDKR1BhTRNpiTBFpizFFpC3GlHxYoNCpHTt2YOLEiRg9ejR+/etfAwCeeuopxMfH4/XXX3c/rrq6GomJiV7Pbdu2LaqrqyM6XiLZMaaItMWYItIWY4pIW4wpObFAoUPHjh3D2LFjkZWVhQULFsBkMgEA2rdvj8cffxyfffYZ9u7dCwBISEjAhQsXvJ5/4cIFJCQkRHzcRLJiTBFpizFFpC3GFJG2GFPyMtlsNpfoQVD4VFVV4YorrsDOnTvRuXNnAEBubi7uu+8+PProo2IHR6RDjCkibTGmiLTFmCLSFmMqsthBYXBWqxWjRo3CzJkzUVNTgy+++AI7d+7EHXfcIXpoRLrEmCLSFmOKSFuMKSJtMaYii5cZjQK/+93vkJ+fj+7duyMtLQ2LFy/mJXGIWoAxRaQtxhSRthhTRNpiTEUOp3gQERERERERkXCc4kFEREREREREwrFAQURERERERETCsUBBRERERERERMKxQEFEREREREREwrFAQURERERERETCsUBBRERERERERMKxQEFEREREREREwrFAQURERERERETC/R8XyHgDT+t5QAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plot_data(points, directions, n_rows=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Encoder-Decoder Architecture" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The encoder-decoder is a combination of two models: the **encoder** and the\n", "**decoder**." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Encoder" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The encoder's goal is to generate a vector representation $\\psi$ of the source sequence, that is, to encode it.\n", "\n", "An encoder can be any of the featuriser we have seen before, e.g. a Conv1D, an Elman RNN, a GRU, an LSTM or their stacked and bidirectional variances. Here we use a GRU, $\\psi$ is the hidden state of the last cell.\n", "\n", ":::{note}\n", "We kept the outputs of all cells in the `Encoder` code, to make the code more extendable to future \"attention-based\" models. \n", ":::" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "class Encoder(nn.Module):\n", " def __init__(self, n_features, hidden_dim):\n", " super().__init__()\n", " self.hidden_dim = hidden_dim\n", " self.n_features = n_features\n", " self.hidden = None\n", " self.basic_rnn = nn.GRU(self.n_features, self.hidden_dim, batch_first=True)\n", " \n", " def forward(self, X): \n", " rnn_out, self.hidden = self.basic_rnn(X)\n", " \n", " return rnn_out # N, L, F" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A perfect square with two corners as source, and two coners target." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "full_seq = torch.tensor([[-1, -1], [-1, 1], [1, 1], [1, -1]]).float().view(1, 4, 2)\n", "source_seq = full_seq[:, :2] # first two corners\n", "target_seq = full_seq[:, 2:] # last two corners" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We use the un-trained `Encoder` to encode the source sequence. If trained the output vector is expected to caputre the source seqence's intrinsic positional thus directional information." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "tensor([[[ 0.3105, -0.5263]]], grad_fn=)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "torch.manual_seed(21)\n", "encoder = Encoder(n_features=2, hidden_dim=2)\n", "hidden_seq = encoder(source_seq) # output is N, L, F\n", "hidden_final = hidden_seq[:, -1:] # takes last hidden state\n", "hidden_final" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "tensor([[[ 0.0832, -0.0356],\n", " [ 0.3105, -0.5263]]], grad_fn=)\n" ] } ], "source": [ "# 1 training sample, N=1; \n", "# Sequence contain two corners, Length L=2;\n", "# Each corner is in two dimensional space, Feature F=2;\n", "print(hidden_seq)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "tensor([[[ 0.3105, -0.5263]]], grad_fn=)" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hidden_seq[:, -1:, :]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Decoder" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The decoder's goal is to generate the target sequence from an\n", "initial representation, that is, to decode it.\n", "\n", "Very often the decorder takes the encoder's output of last cell, as its initial hidden state, and use last input the encoder as its first input, to generate a sequence of desired length. The output of each cell through a linear transformantion (*regression*) to obtain the output sequence of the decoder So the encoder can be realised through an RNN or its variants as well. \n", "\n", "The code below uses a GRU layer as a decoder. \n", "\n", ":::{note}\n", "Since we are generating numerical values that represent the coordinates of the corners, we are dealing with a regression problem. So in the later model training, we use MSE as loss function. \n", ":::\n", "\n", "![Encoder-Decoder](../images/encoder_decoder.png)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "class Decoder(nn.Module):\n", " def __init__(self, n_features, hidden_dim):\n", " super().__init__()\n", " self.hidden_dim = hidden_dim\n", " self.n_features = n_features\n", " self.hidden = None\n", " self.basic_rnn = nn.GRU(self.n_features, self.hidden_dim, batch_first=True) \n", " self.regression = nn.Linear(self.hidden_dim, self.n_features)\n", " \n", " def init_hidden(self, hidden_seq):\n", " # We only need the final hidden state\n", " hidden_final = hidden_seq[:, -1:] # N, 1, H\n", " # But we need to make it sequence-first\n", " self.hidden = hidden_final.permute(1, 0, 2) # 1, N, H \n", " \n", " def forward(self, X):\n", " # X is N, 1, F\n", " batch_first_output, self.hidden = self.basic_rnn(X, self.hidden) \n", " \n", " last_output = batch_first_output[:, -1:]\n", " out = self.regression(last_output)\n", " \n", " # N, 1, F\n", " return out.view(-1, 1, self.n_features) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Decoder is often considered as a generator. Here the `decoder` is intialised with the last hidden state of the encoder first. The initial input is the last element of the source sequence. Then it takes the previous cell output as input, in a for loop, until it generate a specified number (*target sequence length*) of elements. " ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Hidden: tensor([[[ 0.3105, -0.5263]]], grad_fn=)\n", "Output: tensor([[[-0.2339, 0.4702]]], grad_fn=)\n", "\n", "Hidden: tensor([[[ 0.3913, -0.6853]]], grad_fn=)\n", "Output: tensor([[[-0.0226, 0.4628]]], grad_fn=)\n", "\n" ] } ], "source": [ "torch.manual_seed(21)\n", "decoder = Decoder(n_features=2, hidden_dim=2)\n", "\n", "# Initial hidden state will be encoder's final hidden state\n", "decoder.init_hidden(hidden_seq)\n", "# Initial data point is the last element of source sequence\n", "inputs = source_seq[:, -1:]\n", "\n", "target_len = 2\n", "for i in range(target_len):\n", " print(f'Hidden: {decoder.hidden}')\n", " out = decoder(inputs) # Predicts coordinates\n", " print(f'Output: {out}\\n')\n", " # Predicted coordinates are next step's inputs\n", " inputs = out" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Teacher Forcing" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There is one problem with the approach above, an untrained model will \n", "make really bad predictions, and these predictions will still be used as inputs for subsequent steps. This makes model training unnecessarily hard because the prediction error in one step is caused by both the (untrained) model and the prediction error in the previous step.\n", "\n", ":::{tip} We can use the actual target sequence instead!\n", "This technique is called **teacher forcing**. We can ignore the predictions and use the real data from the target sequence instead. \n", ":::" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Hidden: tensor([[[ 0.3105, -0.5263]]], grad_fn=)\n", "Output: tensor([[[-0.2339, 0.4702]]], grad_fn=)\n", "\n", "Hidden: tensor([[[ 0.3913, -0.6853]]], grad_fn=)\n", "Output: tensor([[[0.2265, 0.4529]]], grad_fn=)\n", "\n" ] } ], "source": [ "# Initial hidden state will be encoder's final hidden state\n", "decoder.init_hidden(hidden_seq)\n", "# Initial data point is the last element of source sequence\n", "inputs = source_seq[:, -1:]\n", "\n", "target_len = 2\n", "for i in range(target_len):\n", " print(f'Hidden: {decoder.hidden}')\n", " out = decoder(inputs) # Predicts coordinates \n", " print(f'Output: {out}\\n')\n", " # But completely ignores the predictions and uses real data instead\n", " inputs = target_seq[:, i:i+1]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Put the two cases together:" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Hidden: tensor([[[ 0.3105, -0.5263]]], grad_fn=)\n", "Output: tensor([[[-0.2339, 0.4702]]], grad_fn=)\n", "\n", "Hidden: tensor([[[ 0.3913, -0.6853]]], grad_fn=)\n", "Output: tensor([[[-0.0226, 0.4628]]], grad_fn=)\n", "\n" ] } ], "source": [ "# Initial hidden state is encoder's final hidden state\n", "decoder.init_hidden(hidden_seq)\n", "# Initial data point is the last element of source sequence\n", "inputs = source_seq[:, -1:]\n", "\n", "teacher_forcing_prob = 0.5\n", "target_len = 2\n", "for i in range(target_len):\n", " print(f'Hidden: {decoder.hidden}')\n", " out = decoder(inputs)\n", " print(f'Output: {out}\\n')\n", " # If it is teacher forcing\n", " if torch.rand(1) <= teacher_forcing_prob:\n", " # Takes the actual element\n", " inputs = target_seq[:, i:i+1]\n", " else:\n", " # Otherwise uses the last predicted output\n", " inputs = out" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Encoder + Decoder" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can assemble a **boilerplate** that integrates a encoder and a decoder. Given an encoder and a decoder model, the code below implements a forward method that splits the input into the source and target sequences, loops over the generation of the target sequence, and implements teacher forcing in training mode. \n", "\n", ":::{adminition} Your Turn\n", "Why only \"teacher forcing\" in training mode? Can we do it in testing?\n", ":::" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "class EncoderDecoder(nn.Module):\n", " def __init__(self, encoder, decoder, input_len, target_len, teacher_forcing_prob=0.5):\n", " super().__init__()\n", " self.encoder = encoder\n", " self.decoder = decoder\n", " self.input_len = input_len\n", " self.target_len = target_len\n", " self.teacher_forcing_prob = teacher_forcing_prob\n", " self.outputs = None\n", " \n", " def init_outputs(self, batch_size):\n", " device = next(self.parameters()).device\n", " # N, L (target), F\n", " self.outputs = torch.zeros(batch_size, \n", " self.target_len, \n", " self.encoder.n_features).to(device)\n", " \n", " def store_output(self, i, out):\n", " # Stores the output\n", " self.outputs[:, i:i+1, :] = out\n", " \n", " def forward(self, X): \n", " # splits the data in source and target sequences\n", " # the target seq will be empty in testing mode\n", " # N, L, F\n", " source_seq = X[:, :self.input_len, :]\n", " target_seq = X[:, self.input_len:, :]\n", " self.init_outputs(X.shape[0]) \n", " \n", " # Encoder expected N, L, F\n", " hidden_seq = self.encoder(source_seq)\n", " # Output is N, L, H\n", " self.decoder.init_hidden(hidden_seq)\n", " \n", " # The last input of the encoder is also\n", " # the first input of the decoder\n", " dec_inputs = source_seq[:, -1:, :]\n", " \n", " # Generates as many outputs as the target length\n", " for i in range(self.target_len):\n", " # Output of decoder is N, 1, F\n", " out = self.decoder(dec_inputs)\n", " self.store_output(i, out)\n", " \n", " prob = self.teacher_forcing_prob\n", " # In evaluation/test the target sequence is\n", " # unknown, so we cannot use teacher forcing\n", " if not self.training:\n", " prob = 0\n", " \n", " # If it is teacher forcing\n", " if torch.rand(1) <= prob:\n", " # Takes the actual element\n", " dec_inputs = target_seq[:, i:i+1, :]\n", " else:\n", " # Otherwise uses the last predicted output\n", " dec_inputs = out\n", " \n", " return self.outputs" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "encdec = EncoderDecoder(encoder, decoder, input_len=2, target_len=2, teacher_forcing_prob=1.0)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "tensor([[[-0.2339, 0.4702],\n", " [ 0.2265, 0.4529]]], grad_fn=)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "encdec.train()\n", "encdec(full_seq)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "tensor([[[-0.2339, 0.4702],\n", " [-0.0226, 0.4628]]], grad_fn=)" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "encdec.eval()\n", "encdec(source_seq)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Data Preparation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The first two corners of the square `data[:, :2]` are the source sequences; the last two corners `data[:, 2:]` are the target sequences. " ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "points, directions = generate_sequences()\n", "full_train = torch.as_tensor(points).float()\n", "target_train = full_train[:, 2:]" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "test_points, test_directions = generate_sequences(seed=19)\n", "full_test = torch.as_tensor(points).float()\n", "source_test = full_test[:, :2]\n", "target_test = full_test[:, 2:]" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "train_data = TensorDataset(full_train, target_train)\n", "test_data = TensorDataset(source_test, target_test)\n", "\n", "generator = torch.Generator()\n", "train_loader = DataLoader(train_data, batch_size=16, shuffle=True, generator=generator)\n", "test_loader = DataLoader(test_data, batch_size=16)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Model Training & Configuration" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "torch.manual_seed(23)\n", "encoder = Encoder(n_features=2, hidden_dim=2)\n", "decoder = Decoder(n_features=2, hidden_dim=2)\n", "model = EncoderDecoder(encoder, decoder, input_len=2, target_len=2, teacher_forcing_prob=0.5)\n", "loss = nn.MSELoss()\n", "optimizer = optim.Adam(model.parameters(), lr=0.01)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "sbs_seq = StepByStep(model, loss, optimizer)\n", "sbs_seq.set_loaders(train_loader, test_loader)\n", "sbs_seq.train(100)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = sbs_seq.plot_losses()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Visualizing Predictions" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABZAAAAIwCAYAAAAYkk49AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAEAAElEQVR4nOzdeXxU5fU/8M8s2feEkH1PyAZZIWHfQQQExAVZLKBUBLWLtRW/2opbwVKtrQpoVWytaK2oBBBoQAhLNkISIAmBJCSE7Pueyay/P/K7tzPJzGQmmcls5/165QWZO8szk5kz9557nvNwOjo6ZCCEEEIIIYQQQgghhBBChuAaegCEEEIIIYQQQgghhBBCjBMlkAkhhBBCCCGEEEIIIYQoRQlkQgghhBBCCCGEEEIIIUpRApkQQgghhBBCCCGEEEKIUpRAJoQQQgghhBBCCCGEEKIUJZAJIYQQQgghhBBCCCGEKEUJZKLg7t27cHV1xY4dO8btMS9evDjuj+nq6ooVK1aM2+MRQkwfE6v27Nkzbo/55ZdfjutjGuI7gJDxRPs5hJDxRDGHEDKeKOYQfeIbegBkfJSVleGTTz7BxYsXUVNTg/7+fri5uSEuLg7Lly/HunXr4ODgYOhhEkJUMPXP8N27dxEfH49Zs2bhxIkThh4OKz8/H59//jmysrJQX18PoVAIT09PJCQkYNWqVVi7di2srKwMPUxCyAhMPUYSQkwLxRxCyHiimEOMASWQLcCf/vQn7N27F1KpFFOnTsVjjz0GJycnNDU1ITMzE88//zzef/99FBQUGHqo4yY3Nxd2dnaGHgYhGqHPsO6JRCLs2rULn376KbhcLmbOnInFixfDzs4OdXV1uHjxIk6cOIHDhw/j6NGjhh7uuPH19UVubi6cnZ0NPRRCNEYxcjjazyFEfyjmDEcxhxD9oZgzHMUcw6AEspl755138Mc//hF+fn44dOgQUlJShl3n3LlzePPNNw0wOsOZNGmSoYdAiEboM6wfL7zwAv7xj38gOjoan3/+OSIjIxW2S6VSpKWl4csvvzTQCA3DysqK4iMxKRQjlaPPMSH6QTFHOYo5hOgHxRzlKOYYBvVANmN3797F3r17YWVlhX//+99Kgw0ALFiwAD/++OOI99fU1ITf/e53iI+Px8SJExESEoJ169bh8uXLKm9z7tw5PPbYY4iIiMDEiRMRExODRx99FCdPnhzx8WQyGX7/+9/D1dUVjzzyCHp6enDo0CG4urri008/Vbju999/D1dXV3h4eKCjo0Nh22OPPQZXV1fU19ezlynrmdPd3Y19+/Zh5syZCAwMhJ+fH+Li4rBp0yZcvHhx2Pju3LmD5557DpMnT8bEiRMRFhaGjRs3orCwcMTnRogmxvIZTktLw8qVKxEYGAgvLy+kpKTgrbfeQk9Pz7DbT5kyBVOmTFF630wP3qGJ1ClTpsDV1RVisRjvvPMOkpKSMHHiRMTGxuLVV1+FUChUuI/4+HgAwOXLl+Hq6sr+DO3tW1hYiCeeeAJRUVHw9PREZGQknnrqKdy5c2fY2Hbs2AFXV1dcvHgRX3/9NRYsWABfX1/Mnj1b6XNhZGdn4x//+AdcXV1x5MiRYcljAOByuVizZg3+9a9/qb0vRlVVFXbu3ImYmBh4enoiIiICW7ZsQVFRkcrbfP/991izZg1CQkIwceJETJ48GZs3b0ZWVtaIjycUCrFt2za4urri2WefhVgsxmuvvQZXV1ekp6crXPevf/0rXF1dERYWBplMprBt5syZ8PPzg0gkAqC6b1pzczP+8Ic/YNq0afD19UVAQACSkpKwbds23LhxY9j4tPk7EjJatJ8ziPZzCBkfFHMGUcwhZHxQzBlEMcd4UAWyGfvyyy8hEomwdu1aTJ48We11bWxs1G6vrq7G/fffj9raWsyaNQtr165FQ0MDfvjhB6Snp+P999/Hxo0bFW7zxz/+EX/605/g4OCAFStWwN/fH42NjcjLy8MXX3yB+++/X+XjDQwMYMeOHfjuu+/w+OOP4y9/+Qv4fD7mzZsHADh//jyefPJJ9voZGRkAAIlEgosXL+KBBx5gf8/MzMSkSZPg4+Oj8vFkMhkefvhh5OTkIDk5GRs3boS1tTXq6+uRmZmJjIwMzJkzR+HxNm7cCIFAgPvuuw9hYWGor6/HsWPHcObMGRw+fBiLFi1S+5oSMpLRfobfeust7Nu3D25ubli7di1cXFxw7tw57Nu3DydPnsTJkyfh5OSkkzFu27YNWVlZWLx4MZycnJCeno6//vWvaG5uxv79+wEMJpuffvppHDx4EAEBAdiwYQN7e/lk7zfffIOdO3fC2toa999/P/z8/HDnzh0cOXIEp06dwvHjxxEXFzdsDB988AEyMjJw//33Y968eQrJa2U+//xzAMCWLVvg6+ur9rojxUZgMFm6evVqdHV1YenSpYiNjUVlZSWOHTuGU6dO4fDhw1i4cCF7fZlMhp07d+Krr76Cu7s7li9fjokTJ6Kurg6ZmZk4evQoZsyYofLxOjo6sGnTJly6dAkvvvgiXnrpJQDAvHnz8Je//AXnz5/HkiVL2Osz8bG1tRXXr19nk/nNzc24efMmFi1apLbPc19fH5YuXYrKykrMmzcP9913HwCgtrYW58+fx9y5cxVOQIz270iItmg/h/ZzCBlPFHMo5hAynijmUMwxNpRANmPZ2dkAgPnz54/5vp5//nnU1tZi165d2LVrF3v5s88+i8WLF+P555/H/Pnz4efnBwD46aef8Kc//QkBAQE4efIk/P39Fe6vtrZW5WN1dHRgw4YNyMzMHPZ4oaGh8Pf3x8WLFyGVSsHlDhbRZ2RkYObMmbh69SouXLjABpz8/Hx0dXVh3bp1ap9fSUkJcnJysHz5chw+fFhhm0wmQ3t7O/t7Z2cntm7dCisrK5w5cwZRUVHstlu3bmHRokV45plncO3aNY2ST4SoMprP8JUrV7Bv3z74+vri7Nmz7Bft7t27sWPHDnz99dd4/fXXsW/fPp2MsbKyEtnZ2XBzcwMA/P73v8fs2bPx9ddf49VXX4WXlxfi4uLg4uKCgwcPIjAwkE14ymPOAPv7++PHH39USOxevHgRa9aswXPPPcfuXMi7ePEi/vvf/2qclNRlbJTJZHj66afR2dmJ/fv3KyTHz58/jwcffBBPPfUUrl+/Dnt7ewDAP/7xD3z11VdISEjADz/8AFdXV/Y2UqkUDQ0NKh+vpqYGjzzyCMrKyvD+++/j8ccfZ7elpqbCxsZG4TUSCoXIzs7GggULcO7cOVy4cIFNIF+4cAEymYzdkVMlIyMDlZWVePrpp7F3716FbRKJBN3d3ezvY/k7EqIt2s+h/RxCxhPFHIo5hIwnijkUc4wNtbAwY42NjQAwYoXdSOrq6nDmzBn4+fnh+eefV9gWGxuLJ554AgMDA/j3v//NXv7RRx8BAN54441hwQYAG5iGqq6uxrJly5Cbm4sPPvhAIdgw5s2bh46ODly7do29TWVlJZYtW4aUlBScP3+evS6TpJg7d65Gz1VZI3YOhwN3d3f296+//hptbW148cUXFYINAERGRuJnP/sZGhoaKEFCxmw0n+EvvvgCwOBOgvxZWg6Hg9dffx12dnY4fPgw27JgrF577TU2eQwADg4OeOSRRyCVSrVayOHTTz/FwMAA/vjHPw57vnPmzMH999+Pa9euobS0dNhtN2/erFVFq65iIwDk5OSgtLQUSUlJCsljYHBnb+XKlWhpaVGYVvbxxx8DAN59912F5DEw2DpD1bhu3LiBJUuW4N69e/j6668VksfAYPxKSUlBcXExWlpaAAwuMNHX14fNmzcjKChI5/GRx+MpPIex/B0J0Rbt59B+DiHjiWIOxRxCxhPFHIo5xoYqkMmImA92amoqrK2th22fP38+PvzwQ/Z6AJCXlwcAWLx4scaPU15ejqVLl6K3txfffPONwpRvefPmzcOXX36J8+fPIzExUSGoCIVCvPnmm6itrYWfnx8yMjLA5XIVpisoExUVhSlTpuDIkSOorq7G8uXLkZqaiqSkJNja2ipcNycnBwBQXFw8rH8r8zyAwbNXS5cu1fj5E6ILzOdQ2Zcs07fq6tWrKC8vR3R09JgfLyEhYdhlzE7G0P5V6jCfq8zMTIVYwmhubgYw+Lka+kWfnJys8Pv169dx4sQJhctcXFywc+dOjcejKXWvNzAYH48dO4Zr167h4YcfRm9vL0pKSuDu7o6kpCSNHyc7Oxv79++Hvb09jh8/rvR1Bwbj48WLF5GRkYGHHnoIGRkZ4HA4mDt3LubNm4dvv/0WQqEQ1tbWyMjIgLu7+4jJ91mzZsHX1xfvvfceCgoKsHTpUqSmpiI+Ph58vuJuxFj+joQYCu3n0H4OIeOJYg7FHELGE8Ucijm6QglkM+bl5YVbt26hrq5uTPfT1dUFYDD5pOpxgMGpAIzOzk44OzvD0dFR48cpLy9He3s7YmNjkZiYqPJ6TKImIyMDv/71r3HhwgW4u7sjPj4eYrEYb775JjIyMvDggw8iNzcX8fHxw6r8huLxeDh27Bj27duHtLQ0vPbaawAAe3t7PPjgg3j99dfh4eEBAGhrawPwv0pPVXp7ezV96oQoNZrP8Gg+r2Oh7LPF4/EADLY30BTzufrggw/UXk/Z52roc71x4wbefvtthcsCAgLYBLKXlxeqqqpQV1c35hV8tX29mX/V9fBS5vr16+ju7kZycrLaxOu8efPYGPjQQw/hwoULmDJlCtzd3TF//nz885//RG5uLvz9/XH37l2sXr0aHA5H7WM7OzvjzJkzePvtt3Hy5Em2KsDFxQWbNm3Cyy+/zLbnGMvfkRBt0X4O7ecQMp4o5lDMIWQ8UcyhmGNsqIWFGZs+fToAjLn03tnZGcDgqp3KMFMrmOsBg4mFrq4u9PT0aPw4y5Ytw6uvvori4mKsXLmSrVQbytvbG1FRUcjJyYFAIGAbonM4HCQmJsLZ2Rnnz59HdnY2BgYGRuzvyXB1dcVbb72FGzduoLCwEPv370dCQgK+/PJLbNmyhb0e8zzPnz+Pjo4OlT/KpmsQoo3RfIZH83nlcrkqk726SjSPhBlPZWWl2s/V0DYRAIYlQDdu3Djsdjdu3GC36yo2yo9b09fbxcUFABRWEdbEz3/+czz55JM4f/48Hn30UZU7NElJSXB2dkZGRga6u7tx9epVNgbOnTsXHA4H58+fZ5+7pvHR19cXf/3rX3Hr1i3k5ubi3XffRUBAAD788EP89re/Za83lr8jIdqi/RzazyFkPFHMoZhDyHiimEMxx9hQAtmMbdy4EVZWVkhLS0NJSYna6w4MDKjcxkxvzsnJgVAoHLadCWjyU6qnTp0KADhz5oxWY/71r3+NvXv3oqSkBCtWrFCZZJk7dy76+/tx6NAhNDU1sY3leTweZs+ezU7hBjRPkMgLDg7Ghg0bkJaWxjZ5ZxJp06ZNAwBkZWVpfb+EaGM0n2FmgbSLFy8Ou05zczNu3rwJBwcHREREsJe7urqiqalJaV9kbfoYq8NUJUulUqXbmc9VZmamTh5PHWYH4vPPP1e7YB2gPjYC6l9vYHh8dHBwQExMDNra2pCfn6/xmDkcDt555x08++yzuHDhAh5++GG2mkAej8fDzJkzcffuXfzrX/+CWCxm4+OECRMQGxuLCxcujDo+cjgcTJo0CU888QROnjwJGxsbHD9+nN0+nn9HQmg/h/ZzCBlPFHMo5hAynijmUMwxNpRANmNBQUHYtWsXRCIRHn30UbaPzVAXLlzAypUrVd6Pn58fFi1ahNraWvz1r39V2Hbz5k189tlnsLGxwaOPPspevn37dgDA73//e9TU1Ay7T3XTMJ5++mm89957KC8vx/Lly3Hv3r1h12GCyLvvvqvwO/P/+vp6fPnll7CxsWHP3KlTVVWFqqqqYZf39PSgt7cXVlZWbK/PTZs2wdXVFfv27UNubu6w28hkMmRlZSkNzoRoYzSf4U2bNgEY/GwwZ5OBwfflq6++ir6+Pqxfvx5WVlbstqlTp0IsFuMf//iHwv2ePXsWR44c0clzcXV1BYfDURoPAOCpp56CtbU1XnnlFdy+fXvYdrFYjAsXLuhkLNOnT8fmzZvR3t6Ohx56CGVlZcOuI5PJkJaWNmyhuqFSU1MRGRmJq1evKiw8AQzujB07dgweHh5Yvnw5ezkTH59//vlhfaJlMpna6uQ333wTL7zwArKysvDggw8q7TMtHx+tra0xY8YMhW35+fk4d+4c/P39ERYWpvb5AYNxXv69xGhra4NIJGLbVwDj+3ckhPZzaD+HkPFEMYdiDiHjiWIOxRxjQz2QzdxvfvMbiMVivP3221i8eDFSUlKQmJgIJycnNDc3Izs7G7du3RoxifDuu+9i2bJleOutt3DhwgVMmzYNDQ0N+OGHHyAQCPDee+8prM65cOFC/Pa3v8W+ffswffp0LF++HAEBAWhubkZeXh6Cg4Nx+PBhlY+3efNm2NnZYceOHbj//vtx7NgxhISEsNtnz54NHo+H5uZmBAQEIDQ0lN3GnL1qbm7G7Nmzla7EOVRRUREef/xxJCQkIDIyEj4+Pujo6MDp06fR3t6OZ599Fg4ODgAANzc3/POf/8SmTZuwdOlSzJ07F1FRUbCyskJtbS3y8vJQU1ODqqoqpU3qCdGGtp/hlJQUPP/883j33XcxY8YMrFmzBs7Ozjh37hyuXbuGmJgY/OEPf1B4jO3bt+PLL7/Eb3/7W1y4cAFBQUG4desWfvrpJzzwwAM4evTomJ+Ho6MjUlJSkJOTg3Xr1iE+Ph5WVlaYOXMmZs2ahYiICOzfvx/PPPMMZsyYgcWLFyMsLAwSiQS1tbXIycnBwMAAqqurxzwWAPjzn/8MHo+Hzz77DNOnT8esWbMwefJk2NraoqGhARcvXsS9e/ewYMECtffD4XBw4MABrFmzBk8//TS+//57xMbGorKyEmlpabC2tsbBgwcVkqw/+9nPkJWVha+//hpJSUlYsWIFPD090dDQgMuXL+P+++/H3r17VT7mK6+8AgcHB7z22mt44IEH8P3332PChAnsdmYHrLm5GbNmzVJ4bGaRjPb2dtx///0avVbnzp3D73//e6SkpCAsLAwTJ05EY2MjfvzxR0ilUvz6179mrzvef0dCaD+H9nMIGU8UcyjmEDKeKOZQzDEmlEC2AC+++CIefPBBfPLJJ7h06RK++uor9PX1wc3NDZMnT8ZTTz2F9evXq72PoKAgnD9/Hn/+859x6tQpZGdnw8HBAbNmzcIvfvELpativvzyy0hNTcVHH32E9PR09PT0wNPTE1OmTMHmzZtHHPejjz4KGxsbbNu2DcuXL8cPP/yAyMhIAIM9eRISEhT6ezKYgFFfX882aB9JYmIinn/+eVy6dAnnzp1De3s73N3dMWnSJPzxj3/EmjVrFK4/d+5cXL58GR988AHOnj2L3Nxc8Pl8eHl5ISUlBbt371boIUTIWGj7Gf7DH/6AuLg4fPzxx/jPf/6DgYEBBAUF4YUXXsAvf/lLODk5Kdz/pEmTkJaWhjfeeANnzpwBl8tFYmIi0tLSUFlZqZMEMgB89NFHePnll5GVlYX09HRIpVK8+OKLmDVrFgDg4YcfxuTJk/Hhhx8iIyMD586dg62tLby9vbFkyRKsWrVKJ+MAACsrK7z77rvYtGkTPv/8c2RmZuLq1asQCoWYMGEC4uPj8corr+Chhx4a8b6SkpJw/vx57Nu3D+fPn8fZs2fh4uKCFStW4De/+Q07bYzB4XBw8OBBLFq0CJ9//jmOHj2KgYEBeHp6YurUqXjwwQdHfMxf//rXsLOzw0svvYSVK1fihx9+gLe3NwAgJiYGEydORFNT07D4OHPmTFhZWUEkEmkcHxctWoSamhpkZWXh1KlT6OrqwsSJE5GSkoKnn356WJJ9PP+OhAC0n6MJ2s8hRHco5oyMYg4hukMxZ2QUc8YHp6OjQ2boQRBCCCGEEEIIIYQQQggxPtQDmRBCCCGEEEIIIYQQQohSlEAmhBBCCCGEEEIIIYQQohQlkAkhhBBCCCGEEEIIIYQoRQlkQgghhBBCCCGEEEIIIUpRApkQQgghhBBCCCGEEEKIUpRAJoQQQgghhBBCCCGEEKIUJZAJIYQQQgghhBBCCCGEKEUJ5HFWVlZm6CGYDHqttEOvF1GG3heao9dKO/R6EWXofaE5eq20Q68XUYbeF5qj10o79HoRZeh9oTl6rbRjCq8XJZAJIYQQQgghhBBCCCGEKEUJZEIIIYQQQgghhBBCCCFKUQKZEEIIIYQQQgghhBBCiFKUQCaEEEIIIYQQQgghhBCiFCWQCSGEEEIIIYQQQgghhChFCWRCCCGEEEIIIYQQQgghSlECmRBCCCGEEEIIIYQQQohSlEAmhBBCCCGEEEIIIYQQohQlkAkhhBBCCCGEEEIIIYQoRQlkQgghhBBCCCGEEEIIIUpRApkQQgghhBBCCCGEEEKIUpRAJoQQQgghhBBCCCGEEKIU39ADIIQQQgghhBBCCCHE2AgEAuzevRunTp1CW1sbAIDH48HFxQXLli3D7t27YWtra+BREqJ/lEAmhBBCCCGEEEIIIeT/EwqFWLVqFQoKCjAwMDBse3t7Ow4ePIhDhw4hMTERaWlpsLa2NsBICRkf1MKCEEIIIYQQQgghhBAAV65cQUhICLKzs5Umj+UNDAwgOzsbISEhuHLlyjiNkJDxRwlkQgghhBBCCCGEEGLxrly5ghUrVqC3t1er2/X29mLFihWURCZmixLIhBBCCCGEEEIIIcSiCYVCrFmzBkKhcNi2f//73+jp6YFUKkVZWZnWtyfE1FEPZEIIIYQQQgghhFgMsViMtLQ0pKeno76+HmKxGHw+Hz4+PliyZAmio6MNPURiAKtWrVJZeVxZWYm//e1vWLVqFWxsbFTeR29vL1avXo2TJ0/qa5iEGAQlkAkhhBBCiFbkVyTv7OyERCIBj8eDvb09HnjgAVqRnBBCiFGSSCTYs2cPTpw4gfLycohEomHXOXLkCPz9/bF27Vq89NJL4PF4BhgpGW8CgQAFBQUqt+/atQsAMGfOHHh7e6u9r/z8fAgEAtoXImaFWlgQQgghhBCNCIVCLFu2DEFBQTh48CCqqqrQ3t6Orq4utLe3o7a2FgcPHkRQUBCWLVtGUzgJIYQYjZqaGixbtgzvvfcebt68qTR5DAx+1925cwfvvfceli1bhpqamnEeKTGE3bt3j7hgnqYGBgawe/dundwXIcaCEsiEEEIIIWREtCI5IYQQU1VTU4OHHnoIV65cgVgs1ug2YrEYV65cwUMPPURJZAtw6tQpnd7f6dOndXp/hBgaJZAJMQMCgQDvvPMOEhISEBISgsDAQISEhCAhIQG7du2CQCAw9BAJIUZOIBBg165dFEeIUrQiOSGEEFMlkUiwZcsW3Lp1S+n2L774AnV1dejs7MStW7fw5JNPKmy/desWtmzZAolEMh7DJQbS2dmp0/vr6OjQ6f0RYmjUA5kQEyYUCrFq1SoUFBQorQZrb2/HwYMHcejQISQmJiItLQ3W1tYGGCkhxFhRHCEjGWlF8hUrVsDe3h4VFRWIiIhQefvKykp67xBCdIYpoMjOzlboxe7i4oJly5ZRL3bC2rNnDwoLC9Vuf/LJJyEUChEZGYnz58+joKAA+fn57HUKCwuxd+9evPzyy+MwYmIIuj5BIBAIcOzYMdjb28Pe3h52dnZwcHBQ+NfGxgYcDkenj0uIvlAC2UiMtArsqlWrwOfTn4v8z5UrV7BmzRqNqsHkpxL/8MMPmDZt2jiMkBBi7MYSR1xdXfU/QGIUaEVyQogxoROfRBtisRgnTpxQ27aipKSE/b9MJoNMJkNYWJhCAlksFuP48eN48cUX6bjcTI20WKK1tTVsbW3B5XLB5XLh7OwMgUCgcr0HmUyGoqKiER9TPqHMJJvlk85Df6eEMzEUo4l8ly9fxvvvv49r166hvr4eH374ITZu3Kj2NsXFxfjtb3+L/Px8uLm5YcuWLfjd735nUh8oTVeB3bdvH1asWEGrwBIA/5tKrO3iRMxU4hMnTlh8EtmUYw6dcCK6MNY4cvDgQaXVpkQ5U405tCI5IabJVGPOSKiAgmgrLS0N5eXlI17vww8/xJYtW2Bvb4/8/Hz8+OOPw65TUVGBtLQ0rF27Vh9DNWnmEHNcXFzQ3t6ucvvp06cxf/589vfOzk6cP38eCxYsUHr9CRMmYPny5ejv70dfXx/709/fj97eXvT390MoFKKnpwc9PT0ajZHD4ahMLA9NQjP/p/wR0RWjyTD09vYiJiYG69evx9NPPz3i9bu6uvDggw9i5syZ+Omnn1BWVoZnnnkG9vb2eO6558ZhxGNXU1ODrVu3oqCgQO0ZUaFQiJs3b6KsrAwZGRk4dOgQ/P39x3GkxJjQVGLdMMWYM5oTToQooyqOODo6Ii8vD2FhYeDxeBAIBPjjH/+IN998c9jtn3nmGaxcudKi44g2TDHmAPpZkXzv3r06uT9CiGqmGnPUoQIKMhrp6elK95mHeuaZZ/Dcc89hxowZmD9/vtLvPqFQiDNnzlACWQlziDnLli3DwYMHVW5XlShWZeXKlYiPj1d7HZFIxCaVVSWZmX/7+vogEAjQ29ur1ZoUtra2KltoKEtCUyHS+BOLxUhPT8e7775r1AVihh/B/7d06VIsXboUALBz584Rr/+f//wH/f39OHDgAOzs7BATE4Pbt29j//79ePbZZ43qTLkyzCqwqhr5KyO/CuyRI0coiWyhaCqxbphazBntCac//OEPVCVKhlEVR2xtbVFfX48nn3wSWVlZ+MMf/oDXX38d586dw+XLlxWu29/fb/FxRBumFnMY+liRnBLIhOifqcYcVdQVUGhy8pMKKIybTCaDRCKBSCSCSCSCWCxW+n/538Viscpt8v/Pzc3VeBxSqRSXL1/Gpk2bsGPHDrz//vvDrlNfX6/Lp242zCHm7N69G4cOHdLJiXMbGxvs3r0b1dXV8PPzU1kFbGVlBRcXF7i4uGh0vxKJZFjCeWiSWf5yJumszWLY1tbWIyaZ5f+1trY2+HeEqZIvECsrK1N6nG9MHQmMJoGsrdzcXMyYMQN2dnbsZYsWLcJbb72Fu3fvIjg42HCDG8FIq8AywsPDcePGDXz77bd4/PHH2cuZVWBPnz5N0xEsDE0lNhxDxpyxnHD6xS9+gWPHjtEJJ8JSF0daWloUqit2796N3/3ud1i9evWwBDJAcUSfjGU/h1YkJ8QyGEvMUUVdAYWmJz+pgEJ7MpkMUql0xGSuJklf+cSvsuvJZDK9PAdtK9YBgM/nIywsTOk2TaqZyciMMebY2toiMTER2dnZY76vpKQkCAQCfPXVV3BwcEBKSgri4+PVFnlpgsfjwcnJCU5OThpdXyqVQiAQqKxuVtVWQygUarwPyOfzh7XOcHBwQGtrK3p7e4cloW1tbSnhDNPsSGCyCeSmpib4+voqXObp6cluM/ROjjojrQLL+PDDD3HlyhWl22gVWMtEU4kNx1AxZ6QTTl988QUWLVoEBwcHNDQ04E9/+hM+/fRTdntlZSWdcCIKtIkjsbGxsLW1xU8//aR0O8UR/TGW/Rxdr0je19eHf/3rX3BycoKLiwt7EOTs7AwnJyfY29vTQQUhBmAsMUeZkQootDn5aU4nPtVV7CpL0lZWVqKurk6rBLBYLIZUKh2X58Pn89kfKysr9kf+d03+P/T3S5cu4d69eyof19PTEwsXLsTx48fR39+PxYsXY/369Vi/fr3S61tZWenrJbAoxhpz0tLSEBISolWLiKEcHBxw9OhRNDc3w93dHS0tLTh79iwuX76MxMREJCcna5wAHisul8smbjUhk8kwMDCgsoWGsoSzSCRCd3c3uru7Fe6rra0Nd+7cUTkmZf2aVfV05nK5Onk9jIWpdiQw2QTyaJWVlRn08cViMb777ju1ZxgAYN26dejo6EBmZibCw8NV3s/atWuNoheKvhj672Vsjh07ptP7O378OJ588kmd3R+1ShhOm/ewWCxmq2VaWlogEonQ0NCgdqrcnj178OSTT0IoFCIyMhLnz59HQUGBwqrRhYWF+N3vfqdRPzJLZwkxR9M4Ymtri4yMDNy8eVNtGwNdxxFtUMwZbrzfw6NZkfzatWsq74/H48HBwQEODg5wdHQc9n9HR0fY2NiYTZLZEmKOLhn69aKYM9x4/E3eeecdrQoo1J38HBgYwK9+9Sv85je/0eUQFUilUjaJq8mPRCLR6vrMj74qdoficrkKyV35Hx6Pp3KbNj88Hk9nCSLm9WGm7Lu6uqq9vkwmw44dO3Dw4EFwuVzcvXsXv/rVr1TuLzk4OIxbLKKYM9x4vPbvv/8+tm/fPqpqcysrK7z//vu4e/cuAGDevHmorq7GtWvXUFdXh7q6Opw8eRKTJk3CnDlzTGJ/htkXU0UsFqO/vx8CgWDYv8yP/OXavq4cDodtq2Fra8v+yP8+dJsx58gkEgm2bds2po4Ejz32GD755BOdF4iNFHOM91UdwcSJE9Hc3KxwGfP7xIkTVd7O0EF4//79as+AAoCTkxNef/11LFy4ENu2bVN5vXv37uHmzZtm28S/rKxsXP9eMpmMnaal6kfZdolEonb7SLfXZruup/729vYa/DNhKvQZczRZHE+VkpIS9v/MezgsLEwhgSwWi5GZmYm3337bqL9MDc1QMUc+hsj/f+jvQ7fJX6Zsm/wBFDMVzdnZWaPpaFwuF6WlpZBIJEhOTlZ7XYoj+mEs+znu7u7o6upSuV3bFcm9vb3xzDPPoKurC93d3ey/zP+ZA/6BgQEMDAygtbV12H1YWVkpVC3LVzMzl5lCknm8Y46po9dLv4wl5iijzXRyTU5+ZmVlwdPTU6v2C9r039X1zA1gMIHCVNQyuFyuVpW5DQ0NCA4O1qqCl0numrKHHnoI6enpKk9strS0KHyPqWNtbY21a9dSLNIBY445ERERCAgIwJo1a7SqRHZwcMAPP/wwbLHOSZMmYfHixaitrUVubi5u3boFDw8PTJo0CcDgMYGx77OMhqrvbbFYrFUf5/7+fvaEGXNMo27fFBjsQa1JH2fmMisrq3H7G7z55psoLS0d8XrqOhKUlpbiyJEj496RwGQzCSkpKdi9e7fCFKRz587Bx8cHQUFBBh6dapcvXx4xOfTGG2/g008/RW1trdrr6XoV2NEmULXZrs193Lt3D5WVlTofg7rthiaTySASiSAUCjEwMAChUAg3Nzf2Pa6r9hUMfezgmit9xRxNex+p8+GHH2LLli2wt7dHfn4+fvzxx2HXqaioQFpamsmecNIk2TpSQnWkbdXV1WhsbGTjhLLrSyQSjbdpkhAe+hzl74fpkSaTydDS0gKJRMLenplSKpFI4OXlxS680djYiOrqava68tVJXC4XM2fO1KgXYGlpKZydnREaGjriohsUR/TDWPZzdL0i+YIFC9ROSxUKhWwymfmRTzB3d3djYGAAbW1taGtrU3k/1tbWCglm5v/Ozs4KSWZCyCBjiTnKaNqHU9OTn42NjThw4ICuhjeMfLJ3NC0X5Ns4qLuetoldSz0Js2rVKuzbtw83b94c832FhYVh1apVOhgVMeaYAwDTpk1DZWUlVq9ejfz8fLXH4TY2NkhKSsLRo0fVLtLp5+eHBx98cNj+S1VVFS5evIjp06cjIiLCLJPJ8vh8Prs/pgmpVKq2hYay5DNTiKBpAR6fzx8xySz/M9pCBbFYjBMnTuikI8Hx48fx4osvjmuBmNEkkHt6etj+KFKpFDU1Nbh+/Trc3NwQEBCA1157DVevXkVaWhoA4OGHH8bbb7+NnTt34oUXXkB5eTnee+89/O53vzPqD1xLS4va7fHx8Vi8eDESExM1ur/CwkL8+9//NpsEqry2tjbU1dWN62MyU3CH/nA4HJXbNN0ulUrZQMblcuHt7Q0ulwuJRIKMjAz09/djYGCAPQPJ/MTFxSEsLAxcLhfvv/++2mCj7VRiU68oGAtjiDmj6X2kzDPPPIPnnnsOM2bMwPz585Xu4AiFQpw8eRILFy7UKtmqSRJ0NAlVTZKtQ6+vb21tbXB3d9f4+kwsBf73WRKLxejq6mITuPI/UqkU/v7+bNKquroaLS0tCjEZGDzwdHV1RWpqKnu/165dU4gLzA+Xy4WXlxdCQ0PB5XLh5OSE7u5udhuPx4O1tTWsrKxgbW2N+fPnY//+/WqTyEVFRfD29kZ4eLhGO12WHEe0YQwxZzR0uSI5j8fDhAkT8J///AepqakIDAwcdh1ra2t4eHjAw8ND5f0MDAwoVDArq2YWCoVoaWlRu99la2s7LME8tJqZel0SU2WqMUcZTfcBND35KZPJ2M+3tondkRK+TGLX0K8Z+R8+n48VK1agrKxs1MUazP2sXLmSZvOpYE4xh2FtbY2TJ09CIBBg9+7dOH36NOrq6iCTyWBvbw83Nzfcd9992L17t1Z91YcebxQUFKC2thZHjhyBu7s7UlNTMXnyZHqv/X9cLnfENhryZDIZ2y5DWVWzsiQ0cww3UmWz/JhGSjbLX25nZwcul4u0tDSUl5ervW9NOxIYokCM09HRMT7Nk0Zw8eJFPPDAA8MuX79+PQ4cOIAdO3bg0qVLuHHjBrutuLgYL7zwAvLz8+Hq6oqtW7fixRdfNJqAo8zChQsVppYP9ctf/hJvvfUW24Dc0dERPB4PN2/eVHomPSAgABs2bNDZ+PSZQNV2e21tLYKCgjS6va7GMJr3jkwmQ29vL3p6euDu7s6edSwsLERpaSl6enrQ3d2tsCPr7e2NrVu3srf/05/+xCaP7O3t4ejoCEdHRzg5OWHKlCkICAgAAMTFxaG6ulrlWM6dOzdsCpa6qcQhISFqFyUxZ4aOORKJBPfddx/y8vKUbh9pcTxVDhw4gJKSErz//vvDtgUHB2PdunVaj9VYcDgctkcekxxVdpmqbcznnM/ng8vlQigUoq+vj03eNjQ0wMPDg63uTU5OBo/HA4/HQ05ODtra2thehczCNRwOB9HR0ViwYAF4PB5aW1vxn//8RyHBC4B97I0bNyIgIABcLhdnz54d9n3A5/NhbW0NLy8vPPbYY+zlR48eBY/Hg42NDZsQtrGxgZWVFfz9/dkdUabPGHM9ZcndhIQEVFVVKX2NZ8yYgczMzGF9Fffv349nn31W6W0sOY5ow9AxZyyWLVumkxXJo6Ki8NBDD0EsFsPf31+hn5suMQcO8pXLyqqZNUkk2NnZDUswM/93cXGBo6PjqJPMlloNOFr0emnHlGPOUCEhIWhvb1d7naKiIgQGBiI8PBxNTU1qr+vm5obKykpdDtEkWPJnSCKRYNmyZSqng2ti2rRpOHXqFJ04V8GcYo46L7/8MhwdHfGrX/0KdnZ2OrlPoVCI69evIzc3l51x4ejoiOTkZCQmJursccabqcQcZhb4SElm+cs1mdEpj8PhwM7ODmlpabh69ara67733nuoq6vDn/70J7z66qsIDw9Xuc+8YcMG7N+/X6uxjIXRnNKYM2eO2konZdOMYmNjcfLkST2OSvdGOsj4+OOP8fXXX7O/v/DCCwgODsaOHTuUXt/X1xfr1q0zaAJVX4wh4DA9zZhVS3t7e5GZmckmhbu7u9Hb28tWRmzYsIGdctPe3q6wc8rj8dikMLPCLDAYTDZt2sQuDqTuTOPy5ct1OpX4vvvu0+r65sTQMWfPnj0oLCxUu32kxfGU4fP5CAsLU7nd2dlZIckqn2wdetnQGKHNNvnkrbqkr6YJYebLm+l7Jf9jZWWlMGvj+++/Zxdo6O/vV7juokWL2L5kN27cwPHjx9nbDZ1OlpyczJ4QKi0tRWdn57CDBj6fDy8vL3ZKvouLC+Li4mBtba30Z+LEiex9Tp8+HUlJSWwyWFXCFwBWr16t9u/OYBaOUEddS4KsrCytvwcsOY5ow9AxZyx0tSL5hQsXIBKJcPXqVfbEKDDY87Curg6xsbE6qbZhdtLt7OxU9lGUyWTo7+8fVrnc2dmpcBkzNVJdQsre3l5pglk+yUxVRGS8mXLMGcrFxUVtAnnGjBmIjY2FTCZDQ0MDe7mqk58jLapGzA+Px8OhQ4dGPfMvMjIShw4douSxGuYUc9RhikN0OXvb2toaU6dORVJSEkpLS5GTk4OGhgZkZGRAKpVi9uzZOnssMhyzSJ+1tbXG3w9isVhtCw1lfZz7+vp03pGgvr5eo+vpCu3NjrMJEyao3c68uRg9PT0QCAQq32hhYWEIDQ3V6RgtAVNdxyRKysrKUFdXxyaG5auGIyIi8PDDD7O3U1YxylQNy1ftTZ48GQEBAXBycoKjoyPs7e1VJmb8/Pw0GrcupxLb2Nhg9+7dY74foj1Neh9psjiep6cnFi5ciOPHj6O/vx+LFy/G+vXrsX79eqX3GRISgmeeeUZ3T0SFvr4+tnXKwMAA29dbKBTCycmJTXD39PTg7NmzEIlECtdj/r927Vo2MXvlyhXk5OQofTxXV1eFL9m7d+8qxFF58j3onZyc4O/vD2tra9jY2KClpQVBQUHsDoT853Xx4sUQi8XDEsJDDyScnZ01rvJm+haPN4ojRFvW1tb44YcfsGLFCq0rLuRvz3xu5s6dq7A9KysLxcXFuHDhAqZNm4bExES99yfmcDjsFEMvLy+l15HJZOjr6xtWuSzfMqOnp4c9QJBPXA3FnECWTzC3t7crtNGgxMRwYrEYaWlpSE9Px507d9h2AT4+PliyZAlWrVpFyXkLMFIvdm1PftKJT8vk7++PI0eOYMuWLSgsLNRoFgqfz0dCQgI+//xz+Pv7j8MoibFjYs3Q2Xq6wOVyERMTg+joaNy9exd5eXlISkpit1dUVMDR0VHlfgsZP3w+Hy4uLhofz0kkEvT39+PcuXO4e/euyuvNnz8fwcHB7KxzpiNBTEyM0o4EI62vpmu0xzXOZs2apXYV2KFee+01ldusra2xePFiXQ3N7PT19eHOnTvDksJM1fDPf/5zuLm5ARhM1skn7BhDD+YcHBywcOFCNins7OyssrLI09NTodJYF2xtbZGYmKiTqcRJSUla9WoiuqNJ7yNg5MXxZDIZduzYgYMHD4LL5eLu3bv41a9+hWPHjim9Px8fn2GXDU3yyv/fw8OD3UFpamrC1atXIRQKFRK+zGKPTz75JFupf+zYMbYH2lARERFsAlkqlSr93DHkvxBdXFzg5eXF9vJl2jfY2NgM64e1atUqcLlchTYPTIUvUzUADLb0kF/MS92sB3PaUaM4QkZj2rRpOHHihM5WJJcXHh6O5uZmNDU14dy5c8jKykJiYiKSk5Ph5OSki+GPCofDYXvuKYufwGAclt+/UFbN3NPTw/7IV4q0tbWxM1GYx5Jf5G/o4n+Ojo4KMcycSSQS7NmzBydOnEB5ebnSA6QjR45g3759WLFiBV566SVKwJsxXZ74tLa2Rnx8PKqqqhAUFGRUsy+J/vn7++P06dPYu3cvjh8/joqKCqXH5dbW1ggICMDatWuxa9cuii+ExcQMfa4fxeFwhh2nSCQSnDx5Et3d3QgJCcH06dMphpkQZjY6c7ysirYdCcZ7rQ5KII+zBQsW4IsvvqBVYMegubkZHR0d6OnpYat/mAO0sLAwto1DZ2enykQaMFj9yCSQIyMj4e7uzh6wMT2Ih1YNczgcpKam6vcJjkBXU4mPHj2qw1ERbaSnp2t0tnCkxfFaWlqG9bxWhcfjgc/n44svvlDoofTRRx+hp6dH6W1mzpzJJk57enrUttwQCoXsF6KTkxPc3NwUevUy//f29mZvY29vj5UrV7Lblf0wkpOT1a6oLo9mZYxMF3HEzs6O4oiF0ceK5ADYaps7d+4gOzsb1dXVyMrKQm5uLpYvX47Jkyfr+qnoDIfDYfcdVJFKpey+inyC+datW3B0dGT3ZZgfVQsIM4vIyCeZhyabHRwcTD7JXFNTg61bt6KgoEBthaBQKMTNmzdRVlaGjIwMHDp0iCoEzZQuT3xGRESgqqoKVVVV8Pf3x+zZsxEcHExJGAvC4/Hw8ssv48UXX0RaWhrOnDmDgoIC9PT0wM/PD6GhoVi8eDGio6MRHR1t6OESI6OPFhaaEIvFiIqKwrVr11BZWYnKykp4eXkhNTUV0dHRJv/dbylUFSQwtO1IMNL96RolkMcZn8/H/fffj9LS0jFNezC3VWCZVS+Zg6qenh6UlpaiqKgI3d3dWL9+PXt25fTp07h3757S+5HvWePi4oLo6Gg2IayuajgqKgpRUVF6fY66osupxMQwtOlVJJVKcfnyZWzatAk7duxQujieJtzc3ODl5TWsjydTvctU9jI/NjY2ChX0EyZMwH333acy0evo6Mhed/ny5RqNic/nY8qUKaN6PmRsdBFHPvzwQ4ojFmjoiuTffPMN+vr62NYCDg4OWLlyJXZruSI5h8NBWFgYwsLCUFtbi5ycHJSVlSm0eBoYGNB7awt94HK5bNJX/vkEBgaysx4kEgl7YlxZNbP8CfPu7m7U1taqfCz5hLKyamYHBwejTZbV1NRo3aNULBbjypUreOihh3DkyBFKIpspXRVQnDp1Cjdu3EBubi5qamrw9ddfw8/PD7NmzUJoaKjRfjaI7vH5fKxduxZr167Ft99+i7KyMjz88MNsXC4rKzPwCAn5HxsbGyxevBizZs1CQUEB8vLy0NjYiLS0NGRkZGDDhg3U390ELFmyBEeOHDHZjgTmkX00IQ0NDbhw4cKYe+YkJiZi165dOhqV/shkMvT29ipM4WQOgkJCQhATEwMAqKysxLfffqtw27a2Nri7uwNQrBb29/eHlZXVsIQwc3DEsLe3x5o1a8bniY4zfU4lJvqnSc+1oUZaHE8dHo+HBx98EFu3bh2WfHniiSc0ug9nZ2eFHlzE9I01jtBOqmWztbXF3r174evri97eXjz33HNwdHTUyQK4fn5+WLt2LXp6etiTUzKZDF9++SVsbGwwffp0s0v08Hi8EXvpSSQShcSysmRzb28vOjs72VXcVT2WsiSzfLJZ3boN+iKRSLBlyxa1yePw8HDcuHED33777bAVyW/duoUtW7bg9OnTNN3cDOmqgMLJyQkzZ85EcnIy8vPzkZubi9raWnzzzTeIi4vDihUr9DB6YuyYQqXx7idKTI+hKpAZdnZ2mDlzJlJSUlBUVIScnBzIZDKFPIhQKKQiDyO1atUq7Nu3z2Q7ElACeRzV1NTgF7/4BSorK8d0P8ayCqxIJGIPXJgEsUAgUJhS//e//x2tra1Kb8/n89kEMrNSOXPgwiwuExMTw7aTYGg6Zd/c6WsqMdG/kWYOaLs43kiSkpKwd+9eg8cMYnzGEkeoMocAYN8z+qgMlv/u7+joQEdHBwYGBlBdXY2JEyey0zYtJbbxeDy4urqqPXkjFouHLfY3NNnc19fHvp6q8Pn8YT2Yh1Yz29ra6jTJvGfPHrWtkoDBtQGuXLmicnthYSH27t2Ll19+WWfjIsZDlwUUNjY2mDFjBpKTk1FQUICcnBxMmjSJ3T4wMDBsQV1ivpjvEUogk5EYOoHMYBZ4jI+PR2dnJzuurq4ufPLJJ4iOjkZqaipbkEeMA5/Px4oVK1BWVjaqojL5+zFERwJKII8TpqpipOSxusoKYLAP6D/+8Q+9Ts9jqoblewv7+PiwvUuLi4vx3//+FwKBQOntZ82axZ7Ftbe3R19fn0IbCeZHflEqb29v7Ny5U+F+dFHFZO7kpxKvXbsWJSUlkEgk4HA47IHmfffdp/VUYqJfI/Uq0nZxPHVCQkKM4oQTMV5DWxKcPn0ajY2NEIvFsLW1hYeHB8URopREIoFYLAaXy9X7Dqybmxt27tyJwsJCXLlyBU1NTTh27BgyMjKQmpqK+Pj4cV9IxBjx+Xy4ubmxs7aUYQoA5JPMQ5PNAoEA7e3taG9vV3k/VlZWw5LKQ6uZNY0ZYrEYJ06cUHswtW7dOnR0dCAzMxPh4eEq7+f48eN48cUXzabNG1Gk6wIKa2trpKamIikpSeE9k56ejsbGRsyaNQuRkZGUSDZzzPfHWBI6xLKMdUa5rnA4HIUTy1VVVRgYGEBhYSGuXbuGSZMmITU1VaGFFjGsl156CRkZGWpPiI/EUB0JaM9qnGhSVQGor6zgcrlYsGDBmJLH8lXDIpFIYQf88OHDaG9vR29vLyQSicLt5s2bxyaQraysIBAI2JUk5ZPCjo6OCsF0w4YN1NB9HNja2mLevHmYM2cOHn/8cer/Z+RG6n2kzeJ4qjBnpV999VV6PxCNMC0J9u7di++//x6lpaVYvXo1O1OEkKGYGDZeVXq2traYPn06pk6diqKiIuTm5qK1tRWXL19GfHy83h/fXFhZWcHd3V1tVZJQKFSZZGb+HRgYQGtrq8qZZsBgAm9oD+ahs85sbGyQlpaG8vJylffj5OSE119/HQsXLsS2bdvUPr+KigqkpaVh7dq1I78YxCTJn/j81a9+hcuXL6O5uRnA4PTu0RRQyJ+AEolEqK6uRmdnJ77//nt4enpi5syZiIqKouMaM0UtLIimjKUCWZW4uDj4+fkhJycHRUVFuHXrFm7duoWAgABMnz5d5QlYMn54PB4OHTqk9ZoPDEN2JKAE8jjQpKoCGLmyQiqV4sSJE9i1a9ewqgr5XsPMKtzAYD84ZlXZ7u5uhaphe3t7/PKXv2R/7+zsRFdXF7tNfuG5iRMnstcLCQnBL37xC43649FO1vjp6emBvb099SU1AbrsfTSUtbU1wsLCsHLlSuzatQt37tzR+WMQ88cccKur7CKEeX+Md2sk+WmbZWVlGBgYYA/+BwYGcOnSJSQnJ9P34RhYW1vDw8MDHh4eKq8zMDCgkFRWVs08MDCAgYEBlauHA4Px5sSJE2oTN2+88QY+/fRTlYsHyhMKhThz5gwlkC2Ara0tfvOb3+Cll17C4cOHERAQgE2bNo35fq2srPDUU0/h+vXryMzMRHNzM44ePYrLly9j5syZiI6OpmMcM8McW1MCmYyEy+VCKpUaTQWyMh4eHli+fDnmzJmDq1evoqCgAPfu3YOtrS0lkI2Ev78/jhw5gi1btqCwsFCj2Q/M/u/nn39usAIxSiCPg5GqKgDNKysqKirYxYuG9h9mzoKtWLECcXFxAIDe3l6FthlDq4ZlMhmbBF67di1sbGzg6OiodtqflZUVTRM1MgMDAxAIBHBxcWFPHhDjpaveR8yUJUdHRwQHByMgIACLFy/GqlWraOouGRM7OzsAQH9/v4FHQowZc6BtqN76HA5HoWcpMNgDNzc3F3l5eYiKisL06dMVWmYR3bGxsYGnpyc8PT2VbpfJZBAIBAqtMZRVMwsEArZ6VJn4+HgsXrwYiYmJGo+tvr5e6+dDTJc+YhGfz0dSUhLi4uJQVFSEzMxMtLS04NixY/D29lZ7coWYHmphQbRlrBXI8pycnDB//nzMmDED165dU0g63rt3DzU1NUhMTKQWdQbi7++P06dPY+/evTh+/DjKy8uVnsQaWiBmyNaUlGEYB+np6SOezdS0skIoFOLs2bMIDQ0d9gVnZ2cHJycnhcRRaGgoHnnkEbaSWF3VMB1gmS5mIRwXFxfq0WYidNH7aOrUqVi1ahV6enqwc+dOuLi46HCExJIxO5Kqet0TAuh3Ab3RCg0NRVNTE0pKStifkJAQTJ8+HUFBQfQdOY44HA7s7OxgZ2enMJNNnkwmQ39/P86dO4e7d+8qvc78+fMRHByM6upqAIOLK/J4PMTExCA5OVnpbaiK0LLo82QWU/E1ZcoUFBUVobW1lU0ey2Qy3L59G+Hh4bTWhImjFhZEU0wFsikkkBk2NjZISUlRuCwrKwsVFRXIyspCQkICpk6dCmdnZwON0HLxeDy8/PLLePHFF/Hxxx/jhx9+QFNTEyZMmAAnJyf4+PgYVYGY4UdgAUaqgtC2sqKhoQHbt2+HtbW1QpsJZVXBI63WTcxDZ2cnANDf2oToqvfR0aNHARjPQg7EPDAJZKpAJurI90A2Fp6ennjggQcwd+5cXLlyBdeuXUNlZSUqKysRHx+P5cuXG3qIRA6Hw4G9vT3s7e1VXufjjz/G119/zf7+wgsvIDg4GDt27FB5G5opZ1mYWKTPvzuPxxvWa72qqgrfffcdXFxcMHPmTEyZMoUSySaKWlgQTTEnok392Gvq1KkQi8W4e/cucnJycOXKFcTExCA1NVXlSV+iP3w+H0uWLAGPx0NbWxueeuopo5zpQgnkcTDSVBhtKytEIhESEhL0MVRiouQrkInp0EXvI6qmI/pAFchEE8aYQGa4uLhg8eLFmDVrFq5evYqrV68iLCyM3d7X1wdra2ujqOYggI+Pj8pt/f39Ciezenp6IBAI1PZVVnd/xPwYsp2Oh4cHWltbcfLkSbZH8pQpUyi2mBhqYUE0xRx7mVIFsjKhoaEIDQ1FfX09cnNzcfPmTRQVFaGoqEihJSoZX8z+DtNO0NjQN9s4GGkHQtvKCqqqIEMxCWSqQDY9Q3sfVVRUsEkZeap6H5nLWXBiXCiBTDRhqEX0tGFnZ4fZs2cjNTVVoTLw3LlzqKiowNSpU5GYmGi0O+qWYsmSJThy5IjS77+hXnvtNbXbra2tsXjxYl0NjZiA8ahAViYkJATbtm3DzZs32R7Jp06dwuXLlzFnzpxhFcvEeFECmWiKWUDTXI69fHx8sHr1asybNw+5ubkoKSlBaGgou729vR0uLi60cOg4kEql6O/vB4fDMdq+1JRAHgcjVUFoW1lBVRVkKGphYdrkex+lpaXhzJkzqK+vh0gkgpWVFezt7eHr64snn3wSUVFRCrelBDLRByaZRglkoo4xVyAPJZ9YkkqlaG1tRW9vLzIyMtj+f9OmTaP+fwayatUq7Nu3Dzdv3hzzfYWFhWHVqlU6GBUxFUwFsiGKbLhcLmJjYxETE4PS0lJcvnwZzc3N7L45MQ3UA5loylyPvVxdXbF06VIsXLiQLYCUSqX46quvwOFwkJKSgri4OCpm1COmMMPOzs5oE/aUQB4H2lRVAOorK6iqgihDLSzMA5/Px9q1a7F27VqFyzMzM5GRkYGKigpKIJNxQT2QiSaY/RpjWkRPE1wuF48//jju3r2LrKwsVFVVITc3F3l5eYiNjcXs2bPphOw44/P5WLFiBcrKysZUAcjn87Fy5UpqH2BhjOFkFofDQXR0NKKionDr1i0EBQWx265fvw6BQIDExERKvhgp6oFMNGUuLSxUkf/+7OrqApfLRXt7O/773//i0qVLSEpKQlJSEhwcHAw4SvPEFO4Y86w440xrm5lVq1Yp9N0bC6qqIEPJZDKqQDZzERERAICKiophiWJKIBN9oBYWRBPGkLQZLQ6Hg+DgYKxfvx5bt25FTEwMZDIZioqKIJFIDD08i/TSSy9pvKC0KomJidi1a5eORkRMhaFaWCjD4XAQFRXFJgDEYjEuXLiAs2fP4sCBA8jOzta4qIiMH2phQTRlScderq6ueOqpp/Dggw/C19cXfX19uHTpEg4cOIDTp0+zFbNENyiBTAD8r6pirNUQVFVBlOnt7YVIJIKtra3JVYERzUyYMAEuLi7o7e1FXV2dwjZL2okh48fa2hpcLhcikYgOpohKppxAluft7Y3Vq1dj+/btuO+++9hVr2UyGU6dOoWysjKKseOAx+Ph0KFDiIyMHNXtIyMjcejQIYVe18QyGHIRvZHweDwsW7YMvr6+6O3txblz53DgwAFkZWVR8sWIUAsLoimmtYC5ViAPxeVyERUVhZ/97GfYuHEjwsPDIRKJUFFRYRQn7cwJk0C2t7c38EhUo0zkOHnppZeQkZGBK1eujPo+qKqCKMO0r3B0dDTsQIjecDgcREREIC8vD+Xl5fDz81PYBlACmegWh8OBnZ0dent7IRAIKL4QpUxhET1tuLm5wc3Njf397t27KCgoQEFBASZMmICUlBRMnjyZEpR65O/vjyNHjmDLli0oLCzU6AQWn89HQkICPv/8c/j7+4/DKImxMeaTWRwOB+Hh4QgLC0NlZSUuXbqE2tpanD9/Hjk5Odi0aRMmTJhg6GFaPCauUwKZjMTcW1iowuFwEBgYiMDAQDQ3N6O3t5dNpvf09OD48eOYNm0aQkND2deIaIcqkAmLqaoICQkZ1e2pqoKowiSQaeEf88a0sSgrK1O4nL6gib5QGwsyEmNO2uiCr68vFi9eDGdnZ7S0tODHH3/E/v37kZOTQ5WDeuTv74/Tp0/j17/+NaKjo1XOvLO2tkZ0dDR+/etf4/Tp05Q8tmCGXERPUxwOB6GhoXj88cfx2GOPwd/fH/b29nB3d2evQ+1zDIdaWBBNUfEO4OnpieDgYPb3/Px8VFZW4ptvvsGnn36KGzduUDwbBapAJgr8/f3xt7/9Da+99hpVVRCdYRLITk5Ohh0I0auAgADY2NigubkZ7e3tbJUc7cQQfaGF9MhITHURPU1ZW1tj2rRpSEpKQklJCXJyctDc3IyffvoJ+fn52L59u9Gukm3qeDweXn75Zbz44ot48803cebMGUilUri7u8PKygo+Pj5YvHgxVq1aRa3diFG3sBiKw+EgJCQEwcHB6O/vZ2NIV1cXPv/8cyQkJGDatGlGXYFmjqiFBdGUpbWw0ERKSgqsra1x5coVNDc34/jx48jIyIC3tzcCAwPNdj9R10yhApn2uMaZt7c3Tp8+jb179+L48eOoqKhQupACl8uFn58fHnvsMezatYsqj4lKzAJ6lEA2bzweDzNnzoSNjQ2b2AMogUz0hyqQyUjMvQKZwePxMGXKFEyePBkVFRXIzs5GQEAAexApEonQ3d2tUElIdIPP52Py5MmwsbFBcnIyli5daughESNkirGIw+EoVJmVlZWht7cXly9fRl5eHpKTkzFt2jSjrkQzJ/IJZJlMRjP8iEqW2sJCHVtbW0yfPh3Tpk1DcXExcnNz0dzcjLt374LH4+HBBx809BBNAiWQiVLyVRVpaWk4c+YM8vLy0N/fj8DAQDg4OMDW1hYbN27EfffdZ+jhEiNHLSwsx/Tp04ddRglkoi9UgUxGYopJm7FgepmGh4crHDheu3YNZ86cQWRkJFJTU+Hr62vAUZqfrq4uALTWA1GNiUWmXI2enJyMiRMn4vLly6isrERmZqZCItnBwcHQQzRrHA4HfD4fYrEYYrHYqNuhEMOiYy/VeDwe4uLiMGXKFFRUVCAtLQ2JiYns9tbWVshkMur7rgK1sCBq8fl8rF27FmvXrsXBgwfR3t6O7du3o6qqCqdPnzb08IiJoBYWlo12Yoi+MGe/qdcrUcXcFtHThnzrCmYhmdLSUpSWliIoKAjTp09HSEgIVbHpQHd3NwBQAo2oZEotLNQJCAjAY489hpqaGmRmZqKiogJZWVloa2vD2rVrDT08s2dlZQWxWAyRSEQJZKIStbAYGXPC/YEHHlDolXz+/Hncvn0bERERSElJQUBAAO0nyaEKZKIxpsk4j8djgxI1HicjkUgk6O7uBofDococC9HQ0IDi4mIEBwcjLCyMEshEb6gCmYzE0iqQVZk3bx6SkpKQl5eHgoIC3L17F3fv3oWXlxfmz5+P0NBQQw/RZIlEIvT19YHP5xv1ARUxHJlMZnaxyN/fH48++ijq6upw+fJlhRlobW1tsLKyosIRPWAq2KkPMiG6J5PJ4OTkBD6fj7KyMpSVlcHPzw+pqamIiIigNSUwmEC2srIy6v0do/orffLJJ4iLi4OXlxfmzZuHzMxMlde9ePEiXF1dh/3cvn17HEesO/IJZKbfMSWQyUi6urrYYEx9srVnijGnuroaubm5KCoqUricEshE15idF+qBrDumGHNUMcekzVg4OTlhwYIF2LlzJ+bPnw9HR0c0NjbS52eMmPYVTk5OVKU0CuYUc1SRSCSQSqUKx1DmwtfXF4888ohCW5z09HQcPHgQ//3vf9nPB9ENpupYk4XuiXKWEHOoAnl0OBwOli5dip07d2LWrFmws7NDbW0tvvvuO/z9739HTU2NoYdocFSBrIXvvvsOu3btwjvvvIPp06fjk08+wSOPPMIuVKJKdnY23Nzc2N9NtZ8K80XF5/PZnR8KSmQkTPsKV1dXg47DFJlqzImIiMDZs2dx584dSCQSqkAmesOsmEwVyLphqjFHFfnkMVWN/I+trS1mzJiBadOm4ebNm4iKimK3ZWRkgMvlIjk52aj72xkTJkFG6zxoz9xijirMMZQlnMgSi8WwtraGWCzG1atXUVhYiLi4OMyYMQMuLi6GHp7JowTy2FhKzKEE8tg4ODhg7ty5mD59Om7cuIHc3Fx0dnYqfM9b4kKWEokEIpEIXC6XnQVqjIxmj//DDz/Ehg0bsHnzZkRGRmLfvn3w8vLCZ599pvZ2np6e8PLyYn9M9cyzg4MDHB0dFRLIVIFMRtLZ2QmAEsijYaoxx83NDRMmTIBAIMC9e/cogUz0hiqQdctUY44qVH2sHp/Px5QpU9gDzb6+PuTm5uLSpUvYv38/0tPT2d6+RDX5CmSiHXOLOaow7QYsoWctn8/Hgw8+iG3btiE6OhpSqRQFBQX46KOPcPLkSfT09Bh6iCaNWliMjaXEHAYde42NtbU1kpOTsX37dmzcuJFNIEulUhw6dAjp6elssZwlYAp27OzsjDp5bhQJZKFQiMLCQixcuFDh8oULFyInJ0ftbefPn4/IyEisWrUKFy5c0Ocw9Wr79u147rnnKIFMtMIEVao60I6px5yIiAgAQHl5OSWQid4wZ79pEb2xM/WYowwlkLVjZ2eHRx99FGFhYRCJRMjLy8PXX3+No0ePorGx0dDDM1pUgTw65hhzVLGkCmSGp6cn1qxZg23btiEmJgZSqXRYazOiPapAHj1LijlUgaxbXC4Xfn5+7O81NTVobGxEXl4ePvroIxw9ehQNDQ0GHOH4kE8gGzOjaGHR2toKiUQCT09Phcs9PT3R1NSk9Dbe3t549913kZSUBKFQiH//+99YvXo1Tpw4gZkzZ6p8rLKyMp2OfTRGGkNNTQ3a2tpQV1dnFOM1JEt//iO5efMm2tra0NXVBS8vL4O/Xkxi09iZeszh8Xhoa2tDZmYmHB0d0dbWhsrKSjahMx5jMFf0Wv1PR0cH2traIJFIVL4uhn69KOYMN15/k6amJrS1tYHL5Q57TEO/L4xZYmIiAgMDce3aNbS3t+PSpUu4dOkSHnvsMUqSKnHr1i20tbWhs7MTvr6+Bn9vUcwZztB/E5FIhLa2NvB4PIOPxRBiYmLg6+uLlpYW1NfXAxhMbOXm5iIqKmrYLEVLfI001draira2NpSVlbFVyIZ+vSjmDGfovwmXy0VbWxuqq6vh7u5u0LGYgtH8vebPn4/r16+joqKC3U/y8/NDfHw8/Pz8jLpCd7Tq6uoADJ44N+R7fKSYYxQJ5NGIiIhQeHIpKSmorq7G3/72N7UBx9BBuKysbMQxWFtbw93dHRMmTDD4eA1Jk9fK0mVmZsLd3R1xcXHo7++n10uPjCnmhIWFoaCgAL29vXBwcIC7uzuCg4MRHBw87Lr0OdIcvVaKent74e7uDnt7e6WvC71e+mVMMUcZKysruLu7w9/fX+Ex6X0xsoiICEyfPh35+floa2tDT08PkpOT2e2VlZUICgqi3tIA8vLy4O7ujsmTJ0MikdB7S4+MPeaoUltbC3d3d/j5+Rl8LMbixo0bqKmpQW1tLWJiYjBr1ix4eHhQfB5BSUkJuru72fcSvV76ZaoxJycnh2KOhkb7GYqIiMCMGTPQ2dmJvLw8FBYWor+/H8XFxZg7d67JtDnRBtN9ICQkxKjfV0aRQPbw8ACPx0Nzc7PC5c3NzZg4caLG95OcnIzvvvtO18PTu97eXnzyySdwdHTEk08+SS0siMbkW1jQQleaM/WYw+VyER8fj4GBAdy7dw8AtbAguse0sOjv77fIxSx0ydRjjjLMjAdmsUWiPScnJyQlJSnE73v37uHrr7+Gm5sbUlNTMWXKFLYvpyWS74FsSb0Qx8ocY44qTKWoJbWwGElAQADi4+Nx48YNFBcXo6SkBNHR0fD29jb00Iwa9UAePUuKOdTCYvy4uLhg0aJFmDlzJgoLC2FnZ8fmyvr6+lBcXIz4+HiziP+m0sLCKEobrK2tkZCQgHPnzilcfu7cOaSmpmp8Pzdu3ICXl5euh6d3YrEYfX197JuG+VBQUCLqDAwMoK+vD3w+H46OjoYejkkxh5gzb948LF26lP3bUwKZ6BqPx4O1tTVkMhn1QR4jc4g5QzEJZEtYuErf5E/OCIVCuLi4oL29HadOncKBAweQmZlpkYtZymQydqFBau+hHXOMOapYYg/kkbi6umL58uXYvn07EhMTweVyUVJSgiNHjuDMmTOGHp7RYhLI1ANZe5YUc2j9mfFnZ2eHGTNmICEhgb0sPz8fZ86cwYcffoiMjAyTX0S0r68PAGBvb2/gkahnNCUNzzzzDLZv347k5GSkpqbis88+Q0NDA7Zu3QpgcJE5APjoo48AAPv370dgYCCio6MhFArxzTff4MSJE/jnP/9psOcwWkylMfOlRRXIRBOdnZ0ABncSqTJQe+YSc2gnhuiTra0thEIhBAIBW5FMRsdcYg6DKpD1IywsDE8//TRKS0uRnZ2NxsZGZGRkICsrCykpKZgzZ46hhzhu+vv7IRKJYGtrS++zUTC3mKMKUy1KJ7OGc3V1xbJlyzBjxgzk5OTg7Nmz8PDwYLfT7CJFzHuIKpBHx1JiDvOZoWI/w/L19YW/vz9qamqQmZmJnJwcTJkyBSkpKQpxzlSYSgWy0SSQ165di7a2Nuzbtw+NjY2Ijo7GN998g8DAQACDC8vJE4lE+MMf/oC6ujrY2tqy11+6dKkhhj8mTKKYSRxTAploQr59BdGeOcSc3t5eVFdXo6OjgxLIRC/s7OzQ1dVlkdWPumYOMUceU5VOiT3d43K5iImJQXR0NKqqqpCdnY2qqiqLq4pj2ldQ9fHomFvMUYVaWIzMxcUFS5cuhaenJ6ZMmcJefuHCBTQ3N2PWrFnw8fEx4AiNA7WwGBtLiTlMCws69jKs0NBQhIaGoqamBjk5OSgrK0NhYSGuXbuG2bNnY/bs2YYeolaYCmRKIGth27Zt2LZtm9JtJ06cUPj9l7/8JX75y1+Ox7D0jjkgoApkog0mgTx0dWWiOVOPObdv38a1a9cA0E4M0Q+m6pgSyLph6jFHHrWw0D8Oh4OQkBCEhISgvr4eTk5O7LbCwkKUl5dj+vTp8Pf3N+Ao9Ue+/zEZHXOKOapQBbLmHB0d2eNNiUSC69evo6enB2VlZQgPD8esWbPg6+tr4FEaDvMesrSTdbpkCTGHZn8aF39/f/j7+6O1tRW5ubkoKipSiGMCgQA2NjZGP9uCqUCmFhZkRMyXFJM4Zs5qUQKZqCPfwoJYprCwMHA4HLS3t1O1BNEL+YX0CJFHLSzGl3x1oEwmw9WrV9HU1ISysjL4+/tj+vTpCA8PN/oDJG1Q/2OiCeqBPDo8Hg9bt25Fbm4u8vPzUV5ejvLycoSGhmLWrFlme2JKHWphQTRBLSyMk4eHB+6//37MnTtXIQl76tQpNDU1ISUlBZMnTzbahYlNpYWFUSyiZ+moBzIZDWphQZydneHq6gqpVIra2lpDD4eYIapAJqpQBbLhcDgcrFu3DjNnzoStrS1qamrw7bff4pNPPsH169fNZv+RWlgQTVACefQcHR2xcOFC7NixAzNmzIC1tTXu3LmDL774AvX19YYe3rijFhZEE0yxHyWQjZODgwOb5BeJRKivr0draytOnjzJLkxsjIUx1MKCaMzV1RVz585ld5ApgUw0QS0sCDBYlVZRUYGqqipDD4WYIWYnhhLIZCiqQDYsR0dHzJs3D9OnT8e1a9eQm5uLlpYWnDhxAjweD7GxsYYe4phRAploglpYjJ2DgwPmz5+PlJQUXLlyBU1NTfD29ma3Nzc3w9PT04AjHB/UwoJoglpYmA4rKys89dRTKC0tRU5OjsLCxAkJCUhNTYWjo6OhhwnAdCqQKYFsBFxdXTFr1iz2d0ogk5HIZDJqYUEA/G9ac3V1Na2mTXSOKpCJKrSInnGwsbFBSkoKkpOTUVxcjJKSEkRFRbHby8vL4e3tbTQHSNpg9nOoBzJRhxLIumNvb4958+Yp7E82Nzfjk08+QUBAAGbPno2goCCz3dekFhZEE9TCwrQwJ9VjYmIUFibOy8tDcnKyoYcHYPCklVAoBIfDMfr9akogGyFKIJOR9Pb2QiQSwc7OzuiDDNEvV1dX2NjYoLe3F/X19Ra9+AnRPeYsuDFO9SKGRS0sjAuPx0NcXBzi4uLYy/r6+vDDDz9AJpNhypQpSE1NhZubmwFHqR2mBzK16iLqMMk+amGhO/IJ4ra2NtjZ2eHevXv46quv4O/vj9mzZyM4ONjsEslUgUw0QRXIpkl+YeKGhgbU1dWxhXgymQynTp1CdHS0QU6SMe0rbG1tjT6uUgLZCHR0dKCxsRFubm6YOHEiuFwuOBwOZDIZpFIp22eHEAa1ryAMDocDDw8P+Pj40JlwonPMCSqqQCZDUQsL4ycUChESEoLbt2+joKAAhYWFiIqKQmpqqsKifMZIKpWiu7sbHA6HKpCJWkyyj05m6UdkZCSCg4Nx9epVXLlyBTU1Nfj666/h5+eH2bNnIzQ01NBD1BnqgUw0QT2QTZ+3t7dCm56KigoUFhaisLAQ3t7eSE1NRVRU1Ljl4ZjjLGbmpzGjzKQRqKysxHfffYerV6+yl1EVMlGHEshEXkhICO6//36LXDGb6BdVIBNVmAQyVf0ZL1dXVzz00EN46qmnEBcXBy6Xi5s3b+Lzzz/H4cOHjTpJ0t3dDZlMBgcHB3afmBBlqAJZ/2xsbDBz5kw8/fTTWLBgARwcHFBbW4vS0lJDD02nqAKZaIJaWJgfPz8/zJ07Fw4ODmhoaMDRo0dx8OBB5OXlsfu7+iRfgWzsqALZCDBfUsxZT2AwgSwWiyGRSOiMOhmG6QtI0zoJh8NhZywQomvMjgzT75YQBiWQTYeHhwdWrFiBOXPmIC8vD4WFheBwOAr7l8Y2440W0COaEolE4PP5FIvGgY2NDaZPn46kpCQUFBQgMjKS3VZVVQWhUIiIiAijn4KtCvVAJpqgFhbmx87ODrNmzUJKSgqKioqQm5uLtrY2pKeno7CwEE8++aRe4xpTqEMJZKIRZQlkPp+PgYEBqkAmSlEFMmEwX2YSiQQ1NTUAQJXIRGeYHRmqQCbyZDIZe1KBkjamw9nZGQsXLsTMmTMVPtN1dXX44YcfkJqairi4OKMoXGD6H1MCmYyESSAbw/vWUlhbWyM1NZX9XSaT4aeffkJjYyMmTpyIWbNmITIy0uQSydTCgmiCOdlKCWTzY2VlhcTERMTHx6OsrAw5OTkIDw9nY5lAIEB/f7/O15OgBDLRCpMklq/8YP5PCWSiDCWQCYP5Qrtz5w5OnjyJkJAQPPbYYwYeFTEXTAsL6oFM5EkkEkilUvB4PIWT38Q02NraKhykFBUVobOzE//9739x6dIlJCcnIykpCfb29gYbI1UgE00xhTh0MstwZDIZ4uLikJWVhaamJnz//ffw9PTEzJkzx7WP6Fgx32fUwoKoQxXI5o/L5SIyMhKTJk1S+DsXFBQgIyMDkZGRSE1N1dni9dTCgmiFSRIPbWEBUG8dohy1sCAMZifG19cXt2/fRnV1NQYGBmhhK6IT1tbW4HK5EAqFkEgk1IuUAPhfSxOKM+Zh8eLFCAwMRE5ODurq6nDx4kVkZ2cjPj4e06ZNM8jJakogE03IZDJaRM8IcLlcTJ06FQkJCbh+/TqysrLQ3NyMo0eP4tKlS1i7di0mTJhg6GGOiFpYEE1QD2TLwbSKZAwMDIDL5aK0tBSlpaUICAjA9OnTERYWNqYZF1SBTLSiqgcyQBXIZDiJRIKuri5wOBxKIBP2y8rW1hb+/v64d+8e7ty5g+joaAOPjJgDDocDW1tb9PX1ob+/H46OjoYeEjECzME1JWzMA5fLRVRUFCIjI1FdXY3s7GzcuXMHeXl5AIAlS5aM+5iYBLKTk9O4PzYxHWKxGDKZDFZWViZT5WrO+Hw+kpKSEB8fjxs3biAzMxP9/f0mcyJIPoFM1aVEFSbWUALZ8syfPx/Jycm4evUqCgoKcO/ePdy7dw8TJkzAokWLEBoaOqr77enpQUlJCY4ePYqXXnoJAwMDkMlksLOzQ2hoKJ544gmsWbPGKGb9GX4EhBLIRCtdXV2QyWRwdnamakCiMI0qIiIC9+7dQ1lZGSWQic4wCWSBQEAJZAKAKpDNFYfDQVBQEIKCgtDU1ITs7GxMmzaN3V5VVQUOh4PAwEC99zalHshEE8xinnQyy7jweDwkJCRgypQpaG1tZduLCIVCfP3114iPj8fkyZON7jiGw+GAz+dDLBZTGwsyIjrJYJmcnJwwf/58zJgxA4WFhbhy5QpaWlpGlbeTSCR466238PHHH6Onp2fY9s7OTjQ0NCAzMxMvvvgitmzZgv/7v/8zaOykBLIRWLhwIWbPnq2w80MJZKIK076C+h8TQDGBHB4ejp9++gl37tyBVCqlahyiE9QHmQxFC+iZv4kTJ2LVqlXs7zKZDOnp6WhpaYGvry+mT5+OiIgIvX3PUAsLogmaDWHceDweJk6cyP5eVFSE2tpa1NbWIjMzEzNmzMCUKVOMKpFsZWUFsVhMbSyISlSBTIDBIorU1FRMnToVt2/fRnh4OLvt9OnTsLKywtSpU1Xux9TU1GDDhg24fv26Ro/X2tqKd955B+np6Th8+DD8/f118jy0pdFeX11dHby9vbFt2zaFy3Nzc+Ht7Y1nn31WL4OzFFZWVnBwcFA4EKNF9IgqzAJ65ty+gmKO5uQTyB4eHnB3d0d/fz9qamoMPDJiLph+XOacQKaYox3mwJoSyJZDIpEgKioK9vb2qKurw3fffYe///3vKCws1HmlnkgkQl9fH3g8HhwcHHR638aCYo5uMBXIFItMQ0JCAh544AF4eHigo6MDJ0+exEcffYSCggKjqfhlZgSbWwKZYo7uUAKZyOPxeIiOjmaPyXt6elBYWIicnBwcPHgQx48fR3Nzs8Jtampq8MADD2icPJZ3/fp1rFq1ymDH+holkH19fbF582Z8//33qKioADA4jW3Dhg1ISUnBX/7yF70O0hJRBTJRhUkgm3MFMsUczQ1dCTgiIgKOjo7o7e015LCIGWESyMwCD+aIYo52qIWF5eHz+ZgzZw527tyJpUuXwsXFBW1tbTh58iQOHDiAxsZGnT2WfP9jfbfKMBSKObpBCWTTwuVyMXnyZGzbtg2rVq3ChAkT0NnZiVOnTuH777839PAA/K+a3VgS2rpCMUf3qIUFUcbR0RGPP/44oqOjIZVKcePGDXzyySf4z3/+g7t370IsFmPz5s2orKxUevsvvvgCdXV16O7uhkQiQVZW1rDr3LlzB5s3bzZIrlDjeWfPP/88rK2t8e6776KzsxPr1q2Du7s7/vnPf9K0oTHKyMjAv//9b9TV1bGXMQlkOrNFhrKUFhYUczQzNIE8e/ZsPPvss9QDmeiMJVQgAxRztEF9Ry2XlZUVkpOT8fTTT2PVqlXw8vICAHh4eLDXGWvlnqX0P6aYM3bUwsI0cblcxMbGYtu2bVizZg08PT0RHx/Pbu/r6zNYBbD8QnrmhmKOblAFMhmJr68v1qxZg+3btyMpKQlWVlYoLy/HV199hd27dyM/P1/lbffs2YPg4GBkZmYiPz8f8fHxSEpKGna9goIC7N27V59PQymNeyB7eXnhiSeewMcff4zy8nK0trbizJkzZp/EGg/19fWorKxUWKiEKpCJKpbQwgKgmKOpoQlkqsIhumYJFcgAxRxtMAlkqkC2XEwCKCYmBl1dXey07/7+fnz88ccIDw/H9OnTFRLLmmJOlJt7AplizthRBbJp43A4iI6ORlRUlMLl586dw507d5CamorExMRxTW6aawsLgGKOrjAJZKpAJiNxc3PDfffdh9mzZyM/Px9dXV1444031L53SkpKsG7dOnR0dODWrVuIjY1FWFjYsKSzVCrFsWPH8OKLL7JxazxotfLFc889B4lEgoKCAhw+fBjBwcEK2z/++GPMmTMHHh4e2LNnjy7HadaYJLH8AgKUQCaqWEILCwbFnJENTSAz+vv70dLSYoghETPDLKLHtC0wZxRzNEOL6BEGh8NROKF99+5d9Pf34/r16/j4449x5MgRrfv0WdICehRzxoZmQ5gHDofD7s9KpVK0traip6cHZ8+exYEDB5Cdnc3+rfWNeS+Z6zE4xRzdoQQy0ZSDgwPmzJmDgYEB3L59W+11nZyccPDgQTzwwAN47rnn0N/fjx9//FHpdcvKypCWlqaPIaukVQL5nXfegVQqhUQigZub27DtPj4++L//+z+sXLlSZwO0BJRAJpoaGBhAX18f+Hw+HB0dDT0cvaOYMzJlCeSqqir87W9/w8mTJw01LGJGLKUCGaCYoylaRI+oEhUVhe3btyMxMRF8Ph+3b9/GF198gS+++ALl5eUaHXBbUgKZYs7YMH1qKRaZDy6Xi8cffxyPPPIIfH190dvbi3PnzuHAgQPIysrS+8lsc25hAVDM0QVqYUFGKz09fcT3zRtvvIE9e/bA0dERn332Gaqrq1XGPYlEgjNnzuhjqCppnEDev38//v73v2Pv3r1wcHDA22+/Pew6DzzwAO6//36L2OHTJWbnR770nAlMlEAm8phpnS4uLma7sAyDYo5mlCWQfXx8wOFwUFtbaxFJP6JfTAWyufdAppijOVpEj6jj5uaGZcuWYceOHZg5cyZsbW1RU1OD7OxsjfZdVPVAFggE2LVrFxISEhASEoLAwECEhIQgISEBu3btMrkYRTFn7KiFhXnicDgIDw/Hz372M6xbtw5+fn7o6+tDRkYGe4JJX8w5gUwxRzdUzf4kZCT19fVqt8fHx2Px4sX4y1/+AqlUiurqatjb22PHjh2jvk9d0yiB/OOPP+KVV17BCy+8gKeffhpPPfUUvvvuO9y6dUvf47MIyhLIVIFMlLGU9hUUczSnbCfGxsYGQUFBkMlkqK6uNtTQiJlgkoSmlpzRBsUc7dC0caIJR0dHzJs3Dzt37sTChQsxe/ZsdltTUxNyc3OVTksfWoEsFAqxbNkyLFy4EAcPHkRVVRXa29vR1dWF9vZ2VFVV4eDBgwgKCsKyZcvGbar7WFDM0Q3mbz2e/R/J+OFwOAgNDcXjjz+Oxx57DLNnz4anpyeAwf3ewsJCne+bmGsPZIo5uiPfboUQbTB5P1Xmz5+P4OBgVFdXo76+Hi+88AJCQ0PxyiuvqLzNeMeqERPIhYWF+PnPf47Vq1fj5ZdfBgDs3LkT9vb2Bln1zxxRCwuiKUtIIFPM0Y6qs+Dh4eEABvtREjIWTAWyuVazU8zRHi2iR7RhY2OD1NRUhV6bWVlZOHv2LPbv34+MjAz09vYCGPwuk08gX7lyBSEhIcjOzh7xIGlgYADZ2dkICQnBlStX9PZ8xopiju5QOx3LwOFwEBISonAS6u7duzh58iT279+PCxcu6GwfhTkxOlKix5RQzNEtamFBRmukk53ff/89nn/+ecycORNJSUk4deoUAOD5559XeZvxLuZQm0Cura3F+vXrERMTgwMHDrCJCnd3dzzxxBP44YcfUFJSMi4DNWchISGIiIhQ2PmhBDJRRr6FhTmimDN6qhLItbW1ZrUTTMYf0wPZHBfRo5gzOrSIHhmr2NhY+Pv7o7+/H5mZmdi/fz9Onz6Nuro6iEQi2NjY4Pr161ixYgWbXNZUb28vVqxYYZRJZIo5ukUtLCyXjY0NgoODMTAwgMuXL7Mno/r6+sZ0v+ZWgUwxR/eohQUZLR8fH7Xb+/r6sGHDBuTn56O0tBRz5sxBXl4evvzyy1Hfp66pTSD7+fnh5s2bSE9PZw8gGa+//jra29sRExOjs8F88skniIuLg5eXF+bNm4fMzEy117906RLmzZsHLy8vxMfH47PPPtPZWMbTsmXL8PDDD8PBwYG9jBLIRBlzr0CmmKM9VTsxLi4u8PLygkgkojYWZEzkF9Ezt51lijmjQ1V/ZKzCw8Px+OOPY9OmTYiIiIBYLEZ+fj4OHDiAhoYG2NvbY82aNSrbUXzxxRdobGyEVCpFZ2cnnnzySYXtQqFQ7e0NhWKOblE7Hcvl4+OD9evXY9OmTQgJCYFQKERmZiYOHDiAy5cvj/p+zS2BTDFH96iFBRmtJUuWsBXsyrS0tGD+/Plwc3ODi4sLvL29MWPGDJXX5/F4WLx4sT6GqpLGi+hpQiwWQyAQQCKRQCKRsP/XxHfffYddu3bhN7/5DS5cuICUlBQ88sgjuHfvntLrV1VV4dFHH0VKSgouXLiA559/Hr/73e9w9OhRXT4lg6FF9Igy5p5A1hbFHPVnwcPDw8HhcNDU1DTewyJmhM/nw9raGlKp1OiSMeONYs4gWkSP6EpAQAAefvhh/PznP0dcXBzEYjFcXFzwySefqK083rNnD65fv45Lly7h/PnzePPNN5GUlKRwnd7eXqxevVrfT0GvKOaoRyezSEBAAB577DE8/vjjCAsLg1AoHNPMOysrK0ilUvz000946qmnEBkZieDgYAQFBSEqKgrLly/Ht99+a7az+yjmjIzJ05hbUQXRL6lUipCQEEyYMEFn9zlp0iSsWrVKZ/enCZ0mkPft2wdvb28cPnwYf/7zn+Ht7Y2vv/5ao9t++OGH2LBhAzZv3ozIyEjs27cPXl5eKs9CHTp0CN7e3ti3bx8iIyOxefNmrF+/Hh988IEun9K4YBYCkQ9CVIFMhpLJZGbfwkJbFHPUJ5CTk5OxadMmTJ8+fbyHRcwMkyg01z7ImqKYM4iq/oiuTZgwAStWrMDq1athZWWFqqoqtdefMmUK2tracPbsWQCD34FhYWHDrpefn2/SC4BSzFGPWlgQhr+/Px599FFs3rwZKSkp7OWFhYU4c+YMuru7R7wPiUSCf/7zn/jggw/wl7/8BQUFBWhsbERHRwc6OzvR0NCAzMxMbNu2DZGRkXjjjTfM7lidYs7IqAKZaKulpQWff/45Tp06pXRfZTS4XC5Wrlw57ovI6jSB/NJLL6Gjo0PhZ+PGjSPeTigUorCwEAsXLlS4fOHChcjJyVF6m9zc3GHXX7RoEQoKCkxqyolUKsXBgwexf/9+hcuZBDIFJsLo7e2FSCSCnZ3dsClIlopizv92YpRxcHBgF0AjZCyY95EpJ2J0gWLOIFpEj+iLQCDA+fPn1Vb3OTk54fXXX0d/fz9efvllrFq1CvX19fjxxx+HXXdgYAC7d+/W44j1i2KOesy46GQWYfj6+rL7LFKpFJcvX8aVK1dw8OBB/Pe//2UX6RyqpqYGCxYswFdffaXRyfLW1la88847WLBgAWpqanT6HAyJYs7IKIFMtGVvb4/Ozk44Oztj7969SE5OHvN9JiUlYdeuXToYnXbGN12tQmtrKyQSCTw9PRUu9/T0VDn1uqmpCfPnzx92fbFYjNbWVnh7eyu9XVlZmU7GPBbyYxCJRGhrawOfz0d5eTl7eV1dHdra2lBdXW0UYzYUS37uQzU0NKCtrQ0TJkxQ+boY+vWKiIgw6ONrypxiTm1tLdra2nDv3j2Vj3X79m0IBAJKJmvA0J8hY9XZ2Ym2tjaUlpYqVPEY+vWimDOcvv8mUqkUjY2N4HA4qKqqUnoSy9DvC1NCr5WiW7du4fbt22qv88Ybb+DTTz/Fn/70J1RVVWH69Om4ePGiyoU+jx8/PqxH8mhRzBnOkO/h2tpaAIPJP0ufIaMpS4s5SUlJKCgoQGVlJdLT03H27FlERUUhISEBjo6OAAaPsXbs2DGqRPD169dx//33Y//+/So/I2NBMWc4Q7+HORwO2tra0N/fb/CxmAJLfI16e3tRVFSE5ORktkJ42rRp8PDwAJ/Px+7du0cdc4DB1j2vvvoq7ty5o8thAxg55hhFAnk8GToIl5WVKYyhv78f7u7usLW1Vbi8q6sLt2/fhre3t8HHbChDXytLJxQK4e7ujkmTJil9Xej1Mk76/pu0tLSgoqICfn5+Sh8rNzcXubm5cHBwwNatW/U6FlNHnyHVmJXO5b+T6PUyTvr+mwgEAri7u8PGxgaTJk0atp3eF5qj12q47OxstZVn8fHxWLx4MRITEwEMtq5obm6Gv78/duzYgffff3/YbXp7e+l11iNDvraurq5oa2tDZGQk3NzcDDYOU2GJMSciIgIzZsxAc3MzMjMzcfPmTTQ0NCA9PR0bN26Et7c3nn76aZWJnC+++AKLFi2Ck5MT7O3tkZubO2xRq3v37mH37t3473//y84iJvpj6Pfw9evX4e7uDnt7e4OPxdhZWswRCoXIzs5Gbm4uRCIRJk2axLbUkX8dIiIicOrUKaxbtw7FxcVaPUZcXBwOHz4Mf39/nY5dU0aRQPbw8ACPx0Nzc7PC5c3NzZg4caLS20ycOFHp9fl8Pjw8PPQ2Vl1jpugN7V1CPZDJULSAnu6YU8xR1wMZGJzqKxAI0N3dja6uLjg7O4/n8IiZYNrmWHoLi9Eyp5jDVHlSz1GiD11dXWqnBc+fPx/BwcGorq4GADg6OoLH46G3txdffvml0ttY4r60OcUcdaiFBdGUp6cnVq9ejVmzZuHy5ctobGyEj48P/vjHPyI/P1/l7fbs2YMnn3wSx44dg7u7O+Lj45GUlDTsNgUFBdi7dy9efvllfT8Vo2QpMQegFhZkOKlUiuvXr+PixYvo6ekBAERGRiI8PFzlbfz9/XHs2DFs3LgR169fV7twMDC4VsSWLVvw0ksvGfRElU57II+WtbU1EhIScO7cOYXLz507h9TUVKW3SUlJUXr9xMREk9qJYHZqh74JKIFMhqIEsu6YU8xR1wMZGDw5FRISAgAKbXII0QaTQKYpwqNjTjGHFq0i+iKVStHT08OucK/Mxx9/jNTUVLz66quYOXMmPvroI+Tl5cHOzo5dUG8oS6wINKeYow7FI6KtCRMmYPXq1di6dSukUimOHz+usggDAEpKSvDggw+io6MDWVlZAKB0ESypVIpjx46p7d9uziwl5gAjF+8Qy1JVVYVPP/0UJ0+eRE9PD/z8/LBp0yasXbsW7u7uam87MDCAuXPnYvfu3fj73/+OpKQkeHt7w9XVFa6urvD29sasWbPwySefoLS0FK+88orB92mMogIZAJ555hls374dycnJSE1NxWeffYaGhgZ2yvX27dsBAB999BEAYOvWrfj73/+OXbt2YevWrcjJycHhw4fxySefGOw5jMZIFch0ZoswOjs7AQAuLi4GHol5MJeYo8lOTHh4OG7fvo3y8nIkJSWN19CIGaEK5LEzl5hDC+gRfenu7oZUKoWdnZ3KWNPf34/GxkZs2LABb7/9Nuzs7NDX14df/epXOHbsmNLbWOqJd3OJOapIpVKIRCJwOByjTjYR42RlZYXvvvtuxJ7rTk5OOHjwIGxsbGBnZ4e2tjalC3YCg9P109LSsHbtWn0M2eiZe8xhMCc5KU9DAKCnpwctLS1wdXXF/PnzERUVNWKBF4MpzHF0dMQjjzyChIQEo2/5YTQJ5LVr16KtrQ379u1DY2MjoqOj8c033yAwMBAAhvUlCg4OxjfffIP/+7//w2effQZvb2+8/fbbWL16tSGGP2pUgUw0RRXIumUuMUfTBDKz4JVQKKRKHaI1ZgFGSiCPnrnEHKr4I7omk8lw9+5dpKeno6WlBVOmTMGFCxdUXr+lpWXYwkvq3HfffToYpekxl5ijCtO+gs/na3ywToi89PT0EZOAb7zxBvbs2YM///nPbIWgqgU7JRIJzpw5Y7EJZHOPOQyqQLZsnZ2dqK2tRUxMDAAgNjYWUqkUMTExw4pCR9LX1wcAsLe31/k49cVoEsgAsG3bNmzbtk3pthMnTgy7bPbs2Wp3ME2Bq6sr1q9fTwlkopZEIkFXVxc4HA71sNUhc4g5muzEODg4wNfXF7W1taisrERkZOR4DY+YCapA1g1ziDmUQCa60tfXhxs3bqCgoADt7e1obm5GQ0MDNm7ciJycHJVJGm3Y2Nhg9+7dYx+siTKHmKMKE4u0PWAnhFFfX692u/yinVKpFNXV1Zg9e7bKBTs1uU9zZ84xh0E9kC2TQCBAdnY2rly5AplMBl9fX7i6uoLD4SAuLm7U9wn8r1DHFNA3roHZ2NggODh42OWUQCbyuru7IZPJ4OzsTDvKRIGmZ8EjIiIogUxGjdmxoR7IhBbRI2PV0NCAK1euoLS0lG3l5uTkBA8PDzg7O2PChAlITExEdnb2mB8rKSmJPQFGzAstoEfGaqR+xcoW7bS1tcUrr7yiMoHMvC+J+aIWFpZFIpGgoKAAly9fZiuGY2Ji1K7XoCnm/iiBTMaMeUNSApkA/2tfQf2PyVCaJpBjY2Ph5+cHf3//8RgWMTNMv1uqQCZUgUzGqqamBkVFReBwOAgLC0NiYiLCwsJw5swZtLa2wsnJCWlpaQgJCRlxVXJ1HBwccPToUR2OnBgTJhZRApmM1khFOd9//z36+/uRnp4OgUCAv/3tb1izZg2ef/55lbeh96P5k2+ZI5PJqIWOGbt16xbOnz+PtrY2AEBAQAAWLlwIX19fndw/U5hDLSyIxpqbm1FUVISJEyciNjaWvZwqkIk86n9MVNE0gezs7EztT8ioUQUyYdAiekQbjY2NKCgogJOTE2bNmgUAmDx5Mnp7exEfH6+wX9Pd3Q1g8PvK2toaP/zwA1asWMG+57TB3J5OdJgvqkAmY+Xl5aV2e19fH7tgJ5fLRX9/P/Ly8vDll1+qvI2Pj4+uh0mMEJfLhVQqhVQqHdaKlJiP69evo62tDe7u7liwYAEiIiJ0esKAOa6iCmSisZaWFmRnZyMqKkppApmmRhCAEshEtdEs5CCVSnUy7YZYDmYKuC56khLTRhXIZCQikQg3b95EYWEhamtrAQxWA8+YMQNcLhe2traYN2/esNt1dXUBAHuyc9q0aThx4gTWrFmjVSWyg4MDfvjhB0ybNk0Hz4YYK/lF9AjRVGdnJ0pKSlBcXAxPT0/weDyVBVvaLtjJ4/GwePFiHY2UGDNKIJun9vZ2SKVSeHh4AAAWLFiAsLAwxMfH6+XvTIvoEa0xX1i0iB5Rp7OzEwC1sCCqaZJA7u7uxokTJ9DX14cnnnhiHEZFzIWNjQ04HA4GBgYgkUhoZ9mCUQKZqNLR0YGrV6/ixo0bbFWNra0tJk+ejMTExBFPXA5NIAODSeTKykqsXr0aeXl5avuL2tjYICkpCUePHqX3pwWgRfSIpgQCAUpLS1FcXIx79+6x+8ze3t4IDw/HrVu3dPI4kyZNwqpVq3RyX8S4jaaAhxivvr4+ZGZmIj8/H35+ftiwYQM4HA4mTJiACRMm6O1xqQKZaI1p3k8JZKIOVSATVbTZgbG3t0d9fT0EAgE7HYcQTXA4HNjZ2aGvrw8CgQAODg6GHhIxEFpEj6jS2dmJ3NxcAICvry8SEhIQExOjUYsBkUiEvr4+8Hi8YfHF2toaJ0+exI0bN/Dll1/i9OnT6OjoYE9mubq64r777sPu3btpwTwLQj2QiSaKiopw8uRJ9pibz+cjIiICsbGxCA0NRUdHB27fvj3mRCCXy8XKlSvphIaFoIX0zINYLMbVq1eRmZkJgUAADocDFxcXiMXicfluoUX0iNaYBPHQLxtKIBN5lEAmqmiTQObxeAgNDUVJSQnKy8uRkpKi7+ERM2JjY0MJZEIVyATA4H7JtWvX0NPTgxUrVgAAAgMDMXPmTEyaNEnrPqBM/2MnJyeV/QVtbW2xd+9e7N27d2yDJ2aBeiCToWQyGWpqaiCRSBAcHAxgsMpYIpEgKCgIsbGxiIyMVDjR9NJLL+H8+fPIy8sb02MnJSVh165dY7oPYjqYBDJVIJsmmUyGkpISZGRksDO9g4ODsXDhwhF7o+tyDFSBTLSmKoHMBCVKIBOhUIi+vj7w+Xw4OjoaejjEyGg7hSoiIgIlJSUoKyujBDLRip2dHdrb22khPQtHi+hZLqlUijt37qCgoAAVFRXs6vOzZ8+Gi4sLOByO0t7GmlDWvoIQdagCmTBaW1tRVFSE4uJidHZ2wsfHB1u2bAEATJgwAc8++6zKYygej4fPP/8cDzzwACorK0f1+KGhofj888+pvZcFYY6/qALZNPX29uLUqVMQCoXw9PTEwoULERISotMF8kYiFAohkUhgbW1tUt9jlEA2MGphQUbCVB8zB2eEyNM2gRwaGgoul4uamhr09/eb1BlPYli0kB4BqALZEgkEAuTn56OwsJCt1OHxeIiMjERiYqJOkr7M/VICmWiKeiBbtp6eHty8eRPFxcWor69nL3dyckJQUJDCgtEjFeD4+/vj2LFjWL9+PW7cuKHVOOLi4nD48GH4+/tr/ySIyaIWFqanra0Nrq6u4HK5cHR0xLx588Dn8xEXF2eQxeXl14owJfSNa2DW1tZwcXEZlsShBDJhUPsKoo62CWRbW1sEBgaiqqoKFRUVmDx5sj6HR8wIs4NDFciWjRLIlkcsFuPSpUuQSCRwdXVFYmIipkyZotNWNlSBTLRFLSws2927d3HmzBkAgzNiIiMjERsbi8DAwFElg/z9/XH+/Hn88Y9/xEcffYSenh61158wYQK2bNmCl156iSqPLRi1sDB+vb29uHTpEgoLC3HfffchISEBADB16lSDjovpf2xvb2/QcWiLEsgGNnXqVKVvXkogEwZTlePi4mLgkRBjNJqq9IiICFRVVaG8vJwSyERjzIlOgUBg4JEQQ6JF9Mxbf38/ioqKUF5ejnXr1rGVOvPnz8eECRP0NsWT6YFMCWSiKWphYRmkUimqqqpQVFQEOzs7LFmyBAAwadIkREdHIyoqCmFhYTp5H/B4PPz+97/HpEmTcPz4cVRUVKCtrY3d77G1tUVYWBi2bt2KNWvWUPW7BaMKZOMnEomQm5uLnJwcDAwMgMPhsHkVY2CK/Y8BSiAbLUogEwZVIBN1tK1ABgZ3unk8HsLCwvQ1LGKGmJ63VIFs2agHsvmRyWSor69Hfn4+bt68ybZXu3PnDsLDwwFA7z3zqQKZaIsqkM0XE5OKi4tx8+ZN9Pb2AhhM4C5cuBA8Hg9WVlZYs2aNXh7f1tYWMTEx2LBhA+6//369PAYxbbSInvGSSqUoKirChQsX2JPT4eHhWLBgASZMmGDg0f0PU4FMCWSiE1wuFxwOBzKZTKGHE7E8lEAm6owmgezs7IzExER9DYmYKapAJjKZjFpYmBGJRIIbN26goKAADQ0N7OUhISFITExESEjIuI2FEshEW0wCmapAzUtVVRVOnz6NtrY29jIPDw/ExsYiNjZ2XNpFMO8pKuQiqozm+IuMj9LSUpw4cQIA4O3tjQULFiA4ONiwg1KCKcihFhZEK6dOnUJpaSmWLFmC2NhYhW08Hg9isRgSiYQSyBaMWlgQdWgHhowXpgcyJZAtl0gkgkwmg5WVFe2XmAEOh4PMzEx0dnbC3t4eU6ZMQWJiItzc3MZ1HDKZjE0gOzk5jetjE9NFi+iZh76+PvT09GDixIkABpMpbW1tcHR0RHR0NGJjY+Ht7T2uC4kzVe3MbAxChqIWFsZFfmH4qKgo3Lhxgz3pNJ6xQxvUwoKMysDAgMrpwPIJZJqeZZlkMhlVIBO1RptAFgqFuHjxIhobG7F+/Xqj/XIlxoMqkAlVH5susViM0tJSXLt2DatWrYKTkxO4XC7mzZsHmUyGqKgogyXiBAIBRCIRbGxsTG41cmI41MLCdIlEIpSXl6O4uBgVFRXw9vbG5s2bAQATJ07Ehg0bEBAQYLATlZRAJiOhFhbGobu7GxcvXkRpaSl+/vOfs/s269atM/TQRkQVyGRUmKkxyqbjUB9k0tvbC5FIBDs7OzqoIkqNNoFsZWWFkpIS9PT0oLm5ma38IEQVJgZRD2TLRQlk09Pe3o7CwkJcv36d7bd348YNzJw5EwCGzX4zBGpfQUaDFtEzLVKpFNXV1SguLsatW7fYBVk5HA5sbW0hFovZk1hBQUGGHCp7DE4JZKIKc/xFFciGIRQKkZ2djdzcXIhEInC5XNy7dw8xMTGGHprGqAKZjArzxaSs6oM5s0UJZMtF7SvISEabQOZwOAgLC8O1a9dQVlZGCWQyImphQZgDflpAz/iVlZXh6tWrqKysZC/z9vZGYmKi0R1gUQKZjAYlkE1LaWkpjh49yv7u4+OD2NhYREdHw9HR0YAjG44qkMlIqIWFYUilUly/fh0XL15ET08PACAyMhLz58+Hu7u7gUenHVpEj4yKugQyc/aTApPlovYVZCRj6YEcERGBa9euoby8HLNmzdL10IiZoQQyoYSN6bh27RoqKyvB5/MRHR2NpKQk+Pj4GGW7Iup/TEaDWlgYr66uLpSUlEAqlbKzHcLDw+Hp6YmIiAhMnjwZHh4eBh6lapRAJiOhNWgM49SpU7h27RoAwM/PDwsWLEBAQICBRzU61MKCjApTXaysxxO1sCCUQCaaGs0OTHBwMPh8Purq6tDd3U0H70Qt+R7ItMNsmZgEMlUgGw+ZTIbKykoUFBQgOTmZXWk8JSUFQUFBmDx5stFXt3R3dwOgCmSiHVpEz7gIBALcunULxcXFqK6uhkwmg62tLVJSUsDn82FtbY1t27YZepgaYd5TlEAmqlAF8viRSqXs652YmIjq6mrMmzcPUVFRRnlSXFPUwoKMCpMcVrbzw1xGCWTLRS0syEjGcgbcysoKISEhKCsrQ0VFBRISEnQ8OmJO+Hw+rKysIBKJ2MovYlmoB7Lx6O3txY0bN1BQUMCebObxeGwCOTAwEIGBgYYboBaYfR1KIBNNSSQSSCQScLlcpevIkPHT1NSEzMxMlJWVKcysjYiIQExMjMEWwhsLqkAmI6EeyPrX0dGBCxcuQCgU4uGHHwYw2PrmqaeeMsm4Ik8mk1ELCzI6ycnJ6O7uVrrTTBXIhCqQyUjGOoUqPDwcZWVlKCsrowQyGZGtrS1EIhEtpGehKIFseLW1tcjLy8OtW7fY/UMXFxckJCQgLi7OwKMbHeqBTLQlH4tMuQLNFDGJDwcHB/b3mzdvgsPhICgoCLGxsYiMjDTpxb8pgUxGQi0s9EcgECArKwt5eXkQi8Xg8Xjo6Ohg8yGmnjwGBtcUkUqlsLGxMblZNKY1WjM0ZcoUldtoET1CCWQyEl0kkJOTkzFp0iRdDouYKVtbW3R3d1MfZAtFi+gZXnl5OUpKSsDhcBAeHo7ExESEhoaa9AEVJZCJtphZMKZ24G3KWltbUVRUhJKSEjg4OOBnP/sZAGDixIlYtmwZQkNDzWbGJCWQyUiY71xKIOuORCJBQUEBLl++zFbnxsTEYN68eWaXCzHV9hUAJZCNGlUgWzaJRIKuri5wOBw6qCIjGu0OjKOjI5YuXarj0RBzxVQUUQWyZaJF9MZXQ0MD8vPz4e3tjaSkJABgZ4rEx8ebxQGVVCplV1KnPvxEU0wCmWZD6FdPTw9u3ryJ4uJi1NfXs5dLJBIIBALY2tqCw+EgMTHRgKPUPeqBTEZCCWTdkkqlOHToEJqbmwEMtuFasGABfH19DTwy/TDV9hUAJZANrrS0FMBgFeDQs+hMApl661im7u5uyGQyODk5UYUFUYmmUJHxxOzoDAwMmHTFIxkdWkRP/0QiEUpKSlBYWIi6ujoAQE1NDRITE8HhcODi4oJ58+YZeJS609PTA6lUCkdHR9rXIRqjdjr6V1lZiW+++YY9DrWxsUFkZCRiY2MRGBho1vsAVIFMRkI9kHWLy+UiNDQUUqkUCxYsQHh4uFm3JzLlCmSjiPwDAwP47W9/i9DQUPj6+uKxxx5DbW2t2tvs2bMHrq6uCj+mOAX7xx9/xPfff6/0C4oqkC0bta/QH3OKObpIIEulUhQWFiItLY0S0UQtqkAeHXOJOZS00Z/29nacOXMGH3zwAX788UfU1dXBzs4OKSkpeOihh8z2QIraV+iHucQcVWg2hG5JpVLcuXMH169fZy/z9fWFtbU1IiIisGbNGjz33HNYsWIFgoODzTp5DFACeTTMPeYMxXwGKIE8Ou3t7fj+++9RVFTEXjZnzhw8+eSTiIiIMNt9HgZVII/RSy+9hB9//BGffvop3Nzc8PLLL2PdunXIyMhQu7JuREQEjh8/zv5uiqvwMslhZVUXlEC2bJRA1h9zijm6SCBzOBxkZmais7MTycnJ8PPz09XwiJlhdnQEAgG7gA4ZmbnEHEog609jYyOuXLkCAPDz80NCQgKio6PNPkHGJJCpfYVumUvMUYVaWIydTCZDQ0MDiouLUVJSgt7eXtjZ2SE2NhY8Hg82NjZ49tlnzT4GKUMtLLRn7jFnKJoBOjp9fX3IzMxEfn4+JBIJmpubERsbCw6HY1GxhinEsbe3N/BItGfwBHJnZye++OILfPjhh1iwYAEA4KOPPsKUKVNw/vx5LFq0SOVt+Xw+vLy8xmuoOieTydgvJmXBkhLIlq2zsxMAzGZBCmNhbjFHF2doORwOIiIikJeXh/LyckogE5WY1gW0iJ7mzCnm0CJ6utHR0YHCwkLcu3cPERERAAYPolNSUhAbGwtvb28Dj3D8UAWy7plTzFGFTmaNXk9PD65du4bi4mK0trayl7u7uyM2NhZisZg9BrWkhI485nnTMbhmLCHmDEUVyNoRi8XIy8tDVlYWBAIBOBwO4uLiMGfOHLOvNlaGWliMQWFhIUQiERYuXMhe5u/vj8jISOTk5Ki9bVVVFaKiohAXF4cnnngCVVVVeh6tbjFfSjweT+kHhwlM9OVlmagCWT/MLebo6gw4k8QoKysb85iI+WJ2dKiFhebMKebQtPHRk0qlKCsrwzfffIODBw8iKysLxcXF7GeJx+Nh0aJFFpU8BgbXewAogaxL5hRzVKFYpB35fcSenh5cuHABra2tcHBwwNSpU7F582Y89dRTmD17Np0gBLWw0JYlxJyhKIGsuZaWFnz88cc4d+4cBAIBQkJCsHXrVqxYscJiv/uZFhZUgTwKTU1N4PF48PDwULjc09MTTU1NKm83depU7N+/HxEREWhpacG+ffuwdOlSZGdnw93dXd/D1gl17SsAqkC2dJRA1g9zizm6SiAHBATAxsYGzc3N6OjooPcdUYrpgUwVyJozp5hDi+hpr6+vD/n5+SgsLGSTpXw+H5GRkXBzc2M/U5aKKpB1z5xijirUwmJkYrEY5eXlKC4uxsDAADZs2AAA8PLyQmpqKoKDgy2in/FoyLewkMlkFlkhqQ1LiDlDUQsLzbm6uoLD4cDT0xMLFy5EaGiooYdkcMxxlClWIOstgfzmm2/iz3/+s9rrHDt2bNT3v2TJEoXfp06dioSEBBw+fBjPPvusytsZQ3UdM4b+/n60tbXB1tZW6bgaGxvR1taGqqoqi+01aQx/L0OpqKhAf38/WlpaNE7WGPr1YqpYDcFSY05zczPa2trA5XJVPpamY7Czs0N9fT3OnTuHyZMn63KYJsPQnyFjx3wv3b17F5MnTzb460UxZzh9/k1qa2vR3d2Ne/fusYm/8R6Dqeno6MDRo0cBDCZJo6OjERkZySaOy8vLDTk8gysvL0dbWxtaWlo0et8Y+r1FMWc4Q/xN7ty5g7a2NjQ2NiI4ONjg7wtjIZPJUF9fj7KyMty5c4dNtHM4HMTGxsLe3h7l5eUICAiARCJBRUWFgUdsvJhWgqWlpSqLvcYDxZzhjOHz3tDQwOZp6ESWoo6ODuTn52PmzJmwtbVFZWUlUlJS4OjoCIlEYhR/P0OrrKxkv8OGtrI19OszUszRWzTcsWMHHn30UbXX8ff3x5UrVyCRSNDa2ooJEyaw25qbmzFjxgyNH8/R0RFRUVG4c+eO2usZMggDg28IZgydnZ1wd3eHk5OT0nHdvXsXDQ0N8PX1Nfi4DUH+tbI0QqEQdnZ2cHJyQkJCgkZnvi359QIsN+Y4OTnB3d0dnp6eSh9Lm/fFwMAAOjo6IBAILPK9ZOmfIU04OjoiOzub7c1uya+XJcYcFxcXWFlZITo6WuWJbUv+HPX19aGoqAi1tbVYs2YN+90tEAjg7++P4OBghe9zS36tGLa2tnB3d0d8fPyIC+lZ+utliTFHlbq6Ori7uyMkJMRgYzA29fX1OHLkCDvTwcnJCT4+PoiNjUV0dDQcHR0t/jOkDW9vb9TW1iIoKMgkp5nrAsUc5crKyuDn54e2tjYEBAQYfDzGoqenB5cuXcK1a9cglUrR3NxMr48Kzs7OEAqFiImJgaenJ3u5KcRovSWQPTw8hk1jUCYhIQFWVlY4d+4cHnnkEQCDFS63bt1Camqqxo8nEAhQVlaGOXPmjHrM483Z2RnPP/+8yt451MLCcjHtK1xcXGjalIYsNebocgpVWFgYgoKCMGnSpDHfFzFPTNUk9UC2zJhDi+gNJ5PJUFtbi4KCApSWlrI9M+vq6tgFSQ39PWGsRCIR+vr6wOPx4OjoaOjhGD1LjDmq0CJ6g+1f2traEBwcDABwc3NDf38/XFxcEBsbi9jYWIVkHtEOU3XMVHFbIoo5qjHHX9QDefAzkpubi+zsbAiFQnA4HCQmJiIlJQX19fWGHp5RMuVF9AzeA9nFxQWPP/44Xn31VXh6esLNzQ0vv/wyYmNjMX/+fPZ606ZNw89//nM89dRTAIBXXnkFy5Ytg7+/P9szp6+vD+vXrzfQM9Eeh8NRexBGi+hZLmbaFFPlR3TH3GKOLhPIdnZ2bI88QpShHsjaM5eYI5FIIJFIwOVyh023s0RisRjXr19HQUEB2+ORw+EgNDQUiYmJ8PHxMfAIjZ98pSSdLNcdc4k56ljqInoCgQC3bt1CcXExqqurYWdnh2effRY8Hg+2trZ44okn4O7uTp8nHaCF9DRnCTFnKCZPY+k9kMvLy3Hq1Cn2+zw8PBwLFiygk1dqyGQydhE9SiCP0p49e8Dj8bB161YIBALMnTsXBw8eVDhAKSsrQ2trK/t7XV0dtm3bxk6VmDp1KtLT0xEYGGiIp6AXVIFsuWgBPf0yp5hDiziQ8WRrawsOh4OBgQGqutCCOcQc+epjSk4MxtwLFy6gv78fDg4OiIuLQ0JCAn1va4Hpoz1S6wqiPXOIOepY0iJ6EokEd+7cQXFxMcrKytiEJp/PR2BgIPr7+9kKfk2qRYlmmASyJVcga8PcY85QdPw1yNraGt3d3fD29saCBQvYGRFENYFAAJlMBltbW5MsyDCKBLKNjQ327duHffv2qbwOk1BjfPbZZ3oelf41NTUhPT0dXl5eWLx48bDtzBuKDtItDyWQ9cucYo6ud2BkMhnq6upQUVGBWbNmmeQXG9EfDocDW1tb9Pf3sxVgZGTmEHMsteIPGEwglJaWoqioCGvXroWNjQ2srKwwb948WFtbIzIy0qCLLJkqZraVs7OzgUdifswh5qgj38LC3BM4jY2N+Pbbb9nfAwMDERsbi6ioKHZWENE9amGhHXOPOUMxFciWlqdpampCRUUF29s6MDAQ69evR1BQEBUXaMiU21cARpJAtlR9fX2orq5WuZ0qkC0XtbAgmtJ1ApnD4eDEiRNobW1FYGAgnUkmwzAJZGpjYVmYhI0l9T9ua2tDQUEBbty4we7w37x5EwkJCQCAxMREA47O9DFTXmlfh2hL/oSWOZ3MbG1tRXFxMTo7O/HAAw8AAHx8fDBp0iT4+voiJiaGPi/jhFpYEHUsLYHc1dWFixcv4saNG5DJZAgMDGTXeaBjRe0w7StMdXFOSiAbEJMYVlW1Qglky0UVyERT+phCFRERgdbWVlRUVNBOARnGzs4O7e3tbEsDYhmYv7e5TxmXyWS4desW8vPzcffuXfZyHx8fJCQkICYmxoCjMy9MCwuqQCbakm9hYeoJ5J6eHpSWlqK4uBh1dXXs5XPmzIGrqys4HA4eeughA47QMlELC6KOpbSwGBgYQHZ2Nq5cuQKRSAQul4vk5GS4ubkZemgmiylIMNUZJJRANiD5HlbKUALZMslkMkogE43pYwcmPDwc2dnZKCsrw8KFC2lKElHAVKBSAtmyWErPUQ6Hg9zcXNTW1sLKygoxMTG0KJ6eUA9kMlryLSxMVXt7O9LT01FZWclWMdrY2CAyMhKxsbF0YsXAKIFM1LGECuTCwkJcuHABvb29AICoqCjMnz+fksdjZMoL6AGUQDaokRLITGCiBLJl6evrg0gkgq2trcmemSLjRx8JZD8/P9jb26O9vZ1d2IIQBrPDQwlkyyK/iJ65kEqlqKysREFBAebMmQMvLy8AwIwZM9DZ2YnJkyfT97AeUQUyGS0mgWxKvcelUina29vZhe5sbW1RVVUFYHDmV2xsLMLDwy2yz7wxoh7IRB1LqEBubGxEb28v/Pz8sHDhQvj7+xt6SGaBqUCmFhZEa0ximEkUD0WL6Fkmqj4mo6HLHRgul4uwsDDcuHEDZWVllEAmCpiEmqlPGybaYRLI5pDc6OnpwfXr11FYWMiuOeDk5IT77rsPwGAyh+iXTCZjeyBTAploiynCMfYKZJlMhoaGBhQXF+PmzZuQyWR45plnwOPxYGdnh4ceegg+Pj4mm0gwZ9QDmajDJJDNKU9TX18PkUiEwMBAAMDs2bMRFBSEyMhImo2qQ7SIHhk16oFMlKEEMtGGvs6AR0REsAlkZqVdQoD/JZBpET3LwlRhmXIF8r1793D16lXcvn2b3bdydXVFQkIC4uLiDDw6yyIQCCAUCmFjY2PS7yky/mQymdG3sOjo6EBxcTGKi4vR2trKXu7u7o6uri52CnhYWJihhkhGQAlkoo45tbDo6OhARkYGSkpK4O7ujm3btoHH48HBwQFRUVGGHp7ZoUX0yKi5uroiJiZGZV89SiBbJiaBTKssE03oK4EcEhICFxcXTJw4ETKZjM48Exa1sLBM5rCIHlMFyOFwEBERgaSkJISEhFB8MwD5/sf0+hNtSCQSSKVS8Hg89ljJmDQ1NeHTTz9lf3dwcEB0dDRiY2Ph4+ND73cTwby3qIUFUcYcWlgIBAJkZWUhLy8PYrEYfD4fkyZNYuMr0Q+qQCajFhISgpCQEJXbmcpkSiBbFmY6LVUgE03o60DE2toaP//5z3Hs2DHs3LkT9fX17M6Fj48PlixZglWrVplU/0GiG7SInmUypUX0ZDIZ6uvrUVBQgNDQUERHRwMAkpKSYG9vj/j4eDpJa2DU/5iMljFVH4vFYpSXl6OpqQlz584FAHh6/j/27jwuynr9H/9rFoZ9VcQFFQRXXABX3EU0E0NTW2z5ZuapbDmnOp2yU6doOWl56nTqaOaprNOn7Zw0Jck8moImKChiLqigiKIoIItswzDL7w9+990MzAwDDLPxej4ePIC577nnzTBzzX1f93Vf72D06tULPXv2xMiRIxEWFsZkjBNiBTKZI1QgO2MCWaPRICcnBwcPHhSTmVFRUZg+fTrzDzbASfSoy3ASve6JLSyoPbriDLhGo8GaNWuQmpqKgoICo9UXW7Zswbp165CYmIgXXniBB0fdCCuQuydnmERPpVLh9OnTOHbsGK5duwYAqKioEBPIvXr1Qq9evew5RPr/sf8xdZSQQLZXP3adTodLly7h1KlTOHv2LJRKJSQSCaKjo+Hn5weJRIIVK1aw0tjJCa8vViCTMc7cwkKr1eLQoUNoaGjAgAEDEB8fb/KKeLI+oQUgW1hQu9XW1kKlUsHLy8voLN9sYdE9sYUFtYe1D1CKi4vx4IMP4tixY2arLlQqFfLy8pCfn4/09HRs3ryZs/N2E5xEr3ty5En0bty4gaNHj+LkyZPiOL28vDBq1ChER0fbd3BkFCuQqaPsdTVEXV0dsrOzcerUKfH1CwC9e/dGVFSUQWxk8tj5CVfYMYFMxjhbC4vi4mIEBwfD3d0dbm5uuOWWWyCRSBAZGcl4ZWNsYUEddvjwYWRlZSE+Ph4TJ05stVxIIDvjmS3qGK1Wi5qaGkgkEiaQySLW3IEpLi7GkiVLcPbsWYvvo1arkZ2djSVLlmDLli1MIncDwg4PJ9HrXhx5Er2ioiIcPXoUABAaGoqYmBgMGzaMLXYcmNCuy9fX184jIWdjyxYWTU1NYmJYIpEgKysLGo0G/v7+iIqKQlRUFHr27Nnl4yDbYwsLMsdZKpArKyuRlpaGM2fOYPLkyZgxYwYAYMiQIXYeWfek1WqZQKaOEyqLTV36zQrk7ufmzZvQarXw9fXlgS9ZxFoJZI1Gg+XLl7eZPI6MjMSJEyfw3Xff4f777xdvP3v2LJYvX45du3axnYWLEyqQ2cKie3GUSfQqKyuRm5sLd3d3TJ48GUBz774bN25gzJgxbFHhJFiBTO2hVCqRnJyMn376CRUVFVAqlZDL5fj73/+OSZMm4b333jN6NWdHNDY24uzZszh16hTKy8vx+OOPQyqVwsvLCwkJCQgODkZoaCir9lwcW1iQOY5egVxfX4+MjAzk5ORAo9HAzc3NIa8g626USiV0Oh08PT3FkxDOhhkqOxLOaJpKFDKB3P2w/zG1l7V2YNasWYPc3Nw211u/fj2ys7ONLsvNzcXatWvx4osvdmos5Nj0E8g6nY4H0d2EPSfR02q1yM/Px7Fjx1BYWAiguXJjwoQJkMvlcHd3x5w5c2w+Luo4oQcyr7Yic1QqFZKSknDs2LFWJy1VKhUuXryIixcv4vvvv0dMTAxSUlI6FKM0Gg0uXLiAU6dOIT8/XzxGk8lkKCsrQ0hICIDmiTipe2ACmcxx1ApktVqNI0eOIDMzU+zPPnr0aEybNo0nbB2As1cfA0wg25X+zokxTCC7Pv2KiurqaqhUKmg0Gvj6+uLkyZNITk62WkUFuSZrJJDVajVSU1PbvEzvrrvuQlVVFTIyMhAZGWl0Ozt27MDzzz/PCnoX5ubmBrlcDq1Wi6amJrtXpJJt2GMSvdraWhw7dgy5ubmora0F0HzSffjw4YiJieHVDk5KaNcFsIUFmZadnY1Fixahrq6uzXUbGxtx6NAhhIeHY9u2bRg/frzFj1NVVYXPP/8c9fX14m0DBgxAVFQUhg0bxv3wbkatViMlJQXbtm3D0aNHsW/fPnz77bfo06cP5syZg6SkJO7jksMmkC9fvox9+/YBAMLDwzFr1izxBBjZn/A5wwQydYgQcEx9CAmBiQlk12OuogJoTixv3LgRmzdv7lRFBbk+aySQU1JSUFBQYHYdX19fvPbaa4iPj8fKlStNrnf+/HmkpKRg8eLFHR4POT7hgFqpVDI2dRNC31FbXgJZVVWFX375BQAQFBSEmJgYjBo1yql3vKn5xIBWq4W3tzcTMWRUdnY2EhMT2z1Za11dHRITE5GammoyiVxRUYHi4mKMHj0aQHMVvJubG4KDgxEVFYURI0awMr4b0mg0WLNmDVJTU1FQUGBQeSzsI2/ZsgXr1q1DYmIiXnjhBZ7EJIdoYXHjxg306NEDABAWFoaxY8ciMjISgwYNsvPIqCWhAtnLy8vOI+k47rXZESuQuydbVVRQ92CNBPLu3bvbvETv9ddfxyeffIIrV66YXU+lUmHPnj1MILs4/Yn0eElc9yAkcrqqArmurg4nTpxARUUF5s+fDwDo168fJk6ciEGDBmHgwIFsl+Ii2P+YzFGpVFi0aJHJ5PG3336LxMREeHl54fz58xg8eLDR+xcWFoonOOvq6pCXl4dTp07h6tWrkEgkCA8Ph6+vLyQSCR544AF4eXkxxnRTxcXFePDBB3Hs2DGzV+OpVCrk5eUhPz8f6enp2Lx5MyeP7qYcoQK5vLwc+/btw/nz5/Hggw8iJCQEEokEc+fOtduYyDyhAtmZr2xhAtmOTPVAFi6d+emnn3D48GEAwL59+3jpjAvoyooK6p6skUAuKSkxu3zMmDFISEhATEyMVbZHzk/Y8RHOpJNr0+l04ueWNSvOdTodiouLkZOTg7Nnz4onzOPi4hAYGAiJRIL4+HirPR45BqF9BRPIZExSUpLZIovCwkK8//77SEpKMnlCq66uDrfddhveffddnDp1CoWFhWKix93dHUOGDDEo0PH29rbuH0FOo7i4GEuWLGlzEml9arUa2dnZWLJkCbZs2cIkcjdkzwRybW0tfvnlFxw/fhxarRYKhQI3btxgqwonwApk6pT4+HjU19eLM4abu3SmqKgIAC+dcWbmKip8fHxw5MgRREREQCaTQalU4s0338Qbb7zR6v76FRVE1uqBbM7MmTMRFhaGS5cuAWh+vcpkMowYMQJjx45ttX5DQwN+/vln+Pv7G3zZsncqdS39FhbkmvR79FdVVaG+vh5SqRTffvst5s2b16ke/SqVCidOnMCxY8dQVlYGoDmWRUZGIiYmhpePuzhWIJMpSqUSx44dM7vO6tWrAQDTpk1D7969Ta537NgxbNu2DVKpFFKpFJGRkYiKisLgwYNt2oqHHJdGo8Hy5cvbTB5HRkbixIkT+O6773D//feLt589exbLly/Hrl27eEzezdjjagWVSoWsrCwcPnwYKpUKUqkUMTExmDp1Knx8fGw+Hmo/TqJH7aZWq7F161bs3r0bJSUlUKvVkMvl8PPzw8mTJ1FUVGS2ZQUvnXFe5ioqPDw8UFJSgoceegiZmZl4+eWX8dprr2Hfvn04ePCguF5dXR0WLlyInTt32mrY5OCskUBu64qGTZs24ZtvvhF/f/bZZxEWFoZVq1aZvE9WVlar2zw9PeHv74/bb78dAQEBAIDS0lIAYILZybAC2XW11aP/4sWLne7Rr1arsXfvXqjVavj4+GD06NEYM2aMGBfItQkJZE6gRy0lJycbjTsdIRwzPf300xg2bBirjKmVNWvWIDc3t8311q9fj+zsbKPLcnNzsXbtWrz44otWHh05MntUIKenp+PIkSMAgMGDB2PmzJno2bOnzR6fOo+T6JHFhOrirVu34vLly232G20LL51xLm1VVJSXl2PWrFni78nJyXjuueewcOFCgwQyAOTk5ECpVDp17xyyHmskkPv06WN2eUNDg0GisLa2FkqlEuXl5UbXDw0NxaxZs1BdXW3wJWxHP1GclpaG8+fPA/gtwSx89evXD8OGDevw30VdR9jxsdaBPjmGrujR39TUhNOnT+PcuXNYvHgxZDIZvLy8MG3aNPj7+2PIkCGs3HJxQms2oXiipKQESqUSJ06cwNKlS9majUQ//fSTVbd36tQpo1dKEanVaqSmprZ5Fd5dd92FqqoqZGRkIDIy0uh2duzYgeeff55xrBuxxvGXJRoaGsR97gkTJuD69euYNm0aBg4c2KWPS12DLSzIIpY25jfmiy++wOzZs+Ht7Y1r167h7bffxieffCIu56UzzqG9FRVRUVHw8PDA3r17Wy1rbGxEcnIy1q5da80hkpPT6XTQ6XQduqRqzpw52LJli8W9uV999VWTyxQKBebPn49Jkya1Gl99fT2qq6sNTn74+/ujZ8+eBgnma9euAQBGjhwpJpArKirw73//2yDB7OfnJ/7co0cP7rjbEFtYuB5r9+gvLy9Hbm4uTpw4Ib5OCgoKMHToUABoFSPI9ZhrzQY0t2fbs2cPW7ORqLq62qrbKysrw8GDByGRSCCVSsXv+j8DaHWbsfUkEon41db67V2PbC8lJQUFBQVm1/H19cVrr72G+Ph4rFy50uR658+fR0pKCieQ7ka6ugL5+vXr2LdvH+rr67F8+XJIpVL4+/vjvvvu65LHI9tgCwtqU0ca8+tbs2YNHnroIahUKgwdOhRpaWk4duwYcnJyxHV46Yzja09FhYeHB9LT05GXl2fyfrt27WICmQBAPPjozBnwpKQkrFu3Dnl5eZ0eT0REBJKSklrdLpFI4O3t3eoS0ltuuQWAYYJZ+NK/LMtYglnfihUrxMkjjh07hhs3brTqwcyqfesRdnzYwsI1WKtH//nz51FQUICsrCyxZzoA9OvXD9HR0Rg0aJBN/h6yP0uLJ9iajfSZa+PXESqVCvv377fqNq3NkqS1pcnttta7du0a8vLyuiQJbm5swm0ALFqvPdvtaAJ+9+7dbV4R/Prrr+OTTz7BlStXzK6nUqmwZ88eJpC7ka5KIN+8eRP79+/HyZMnodPp4OHhgRs3biA4ONiqj0P2IbSwYAUyGdVWY/62qosB4PTp0+LPQoVhRESEQQKZl860TafTQavVQqvVQqPRGHzX6XStbmtrmdC4XtjmzZs3UV9fj6amJqhUKqjVajQ1NaGpqQlyuVycJKgtUqkUZ86cgUajMXvJXVVVlZWeGXJW+pcEZ2ZmQqPR4NChQ+jbty/mzJnTrkuC5XI5EhMTkZ+f3+6rJFpuZ8GCBR2KQ/oJ5r59+7ZaHhYWht///vet2mIIX/qTbp07dw4XLlxotQ0PDw8MGzYMt956K4Dm5/DChQtigpksJ7QhYQWya7BWj/5FixZhypQpkMvlUCgUGDFiBGJiYsxOdEWupyPFE2zNRgAsqkBXKBTw8PAQE4p+fn5QKpVGT4ApFApMnjxZPA7QPx5oeZtwnGVsmbXXa7mOtRPnplRUVKCystImj2UrbSWaAeMV5kIvWVPGjBmDhIQExMTEWDSOkpKSTv8t5Dys3cJCaAuWnZ2NpqYmSKVSjBs3DpMnT3bqZCMZYgUymdVWY35LqouB5sb9y5cvh5eXF3JycvDjjz+22pY1L50xlmwVfjaWUDW2rGXCta1lxpK3V65cwalTp4wu0//SaDQGiVsheSv8rFarDSbmuX79OpqamoxuKyAgQKxirKmpQUFBgdH1ACA2NlYM6GfPnjWZJPbz87O45/WZM2fg5+eHQYMGmU3M2GpHkxyPuUuCL1++DADYsmWLeEnw0qVLLdruCy+8gPT0dJOThFgiJiZGnB3d2tpKMOsbP348Bg4c2CrJrFQqDSoFqqursWXLFvH32tpaREREiAnlcePGibFDo9Hw0mo9rEB2Hdbs0X/s2DE88sgjGDhwIKKiojgxZjfU2eIJtmbr3vz9/dtMcO7atQszZ84Uf6+urkZaWppBnBIEBwdjxowZ1h6m1RhLMlua3O5IEryoqAihoaFW325XJNf117N0bO3R1gnwmTNnIiwsTLyaxsfHBzKZDCNGjDBa5NPZ+Y3IuVizAlmn0+Hf//63OLfMsGHDMHPmTAQGBnZ622Rf+gVfV69exYULFyCTyVBUVIS5c+c65RwQzjVaJ2JJY35LqosB4PHHH8eTTz6JuLg4zJw502gvXZVKhU8//RQAjCZqLUkI6y/vKP0z6fqP6+HhIR4I1NTUiImcluspFAoxOVReXo5ffvnF5FgHDRokXs5x5coVFBYWGh2TRCLBlClTIJVKIZPJcP36dTQ0NIhnDvUvlerZsyf69OkDqVSK6upqFBUVQaFQGFxKJZFIxB2IoKAgcUKga9euQS6Xi5VXwveAgAD88ssvbfaVPHnyJHr37o3IyMg2K4x5UNU9deSS4F27duHrr79us5pLJpNh8+bNHW65M3ToUGzevNkhXpuDBg1qdam80CJDP74JMVdIMKtUKly/fh3Xr18HAIwePVpc93//+x/OnDnTqi2Gn58fevTo0W1mQVYqlUhOTsaOHTtQWlqKL774An/+85/h7++PefPmITk5ma1CnIy1e/Tv2rULGzdutOYQyYlYo3iCrdm6r3nz5rUZP4wlik0R2mQ5Kv3qWVtwc3PD4MGDbfJYttAywdyeJPj+/fvFwgtjNm3ahG+++Ub8/dlnn0VYWBhWrVpldH03Nzer/33keJRKJd555x0cOHAAN27cAIAO7QcLr0chDxETE4PTp08jPj6eV+C4gLbmgLh48SK2bt3qlHNASKqqqrp26kgLfPbZZ/juu+/w66+/4ubNmzh+/LhFM0tu374db775JgoLCxEeHo6XXnoJt912mw1G3LatW7fikUceafNsZMvq4unTp5ud/fzDDz/E6dOn8cEHH7RaFhYWhrvuusvgNiHpqt97SqVSiQnclslZnU6Hvn37iusXFxeLB5bCB66w3ZCQEAwePBhSqRQ3b97E4cOHxUm8Wn4lJCSgZ8+ekEqlOHr0KAoLC432twoODkZSUhIkEgmKi4vx888/t+qFJXzNmjULY8aMEds+HDx4UEzaurm5id/d3Nxw1113iX//4cOHUV9fD5lMBjc3N8jlcri5uUEmk4kJZOF5qqysFJPCwnpyubzdO3rR0dG4ePGiyeVxcXHIyMhodRnMhg0b8MQTT7RaPzw8vFXFWH5+vkvtFHYlZ4w5nemnPnToUIsvCS4uLsby5cuRm5trUTsLuVyO6OhofPbZZ069w6PT6XDy5ElxQr/q6mrExMRAoVAAAP773/+anGwlLCwMy5YtA9AcN3744YdWk/wJPZiddbIclUqFpKQkHDt2zGyy0d3dHTExMUhJSRGfO3LsmNPW55M+Dw8PFBcX4/r164iKijK6Tr9+/XD8+HGDz24yztU+t9VqNaZNm2ZxP/0hQ4YgLS0Nf/jDH/Df//7XYNnw4cNx4MABg8ocV3u+upIjxxxzlEolBg4c2K6TWqa4u7ujqKiIJzX18D30m1WrVuHrr7+2eP1XXnkFkZGRuP/++40uv+eee7BhwwZrDc/pOGvMsZQ194OvXr2KvXv3YtCgQZg8eTKA5jyLK+4zdceYY2nBl0AulyMmJgabN29GQ0ODwz9fDlGBXF9fj/j4eMyfPx9//vOfLbpPVlYWVqxYgRdeeAG33XYbfvjhB/GSt3HjxnXxiNtmSWN+wLLqYn1yuRwRERFGl6nVajQ2NopJYaHNgZBsHT16NGQyGU6dOoV9+/a1SsgKB3vPPfeceAbk888/x9WrV40+3qhRo7BgwQIAzW0hampqAMAgMSt8JSQkiK0hgoODUVRUBJlMZpCUlcvl8PX1Fav+vLy8MGTIEMjlcqPJXk9PT/HAIjg4GNOmTWvz+QaAiRMnWrSeQqEQx9xZbVVUZGZmtusDw9ErKhyds8Wcti4JFkRGRuLEiRP47rvvDHZw23NJcGhoqDhJ444dO3D+/HmTfQUjIiKwYMECrF692mnOmpoikUjg4eGBPn36iCeR9C1duhQNDQ1G+y/r93etrq7GuXPnjD6Gu7s7li5digEDBgBovnKitrbW4RPM2dnZWLRokdmTmwKhh1t4eDi2bduG8ePH22CEjs+RY051dbVF61nao7+srAzr1q0Tf29rYqf2TNRkrYmk2jOZk7n1OjvZVV1dHerq6szex5mkpKSYPNGmz9at2bojR4455nh4eCAmJgaHDh3q9LZiY2OZPCaT5syZgy1btrR5hajg1VdfNblMoVAgISHBWkNzSs4acyxhrf3gqqoqpKeni1eh19TUYNKkSQb7G+TcOjsHxN/+9jeHTyA7RAWy4NixY5g1a5ZFZ6wefPBBVFZWYtu2beJtCxcuRM+ePVtNRGcPixYtQlpaWrvu07K6ODg4GPHx8dixYwcaGhqQkJCArVu3YtmyZfjhhx9a3T88PBx33nmnwW0SiQRubm6YNWsWYmNjAQAFBQXIyMgwSPDqV9jGx8eLyaAzZ85AqVQaLBeSud7e3mJ/UK1WC7Va3aHqXFNc6YyVLSoqXOn5shVniTlvvPEG3nvvvTbPYu7atQuenp4oKipqVSEhl8vx9NNPt+uSYKFv0549e1BSUoKmpia4ubmhT58+SEhIcMq+TeZY4z2kVCpx8eJFo4lmlUqF3/3ud2K7ix9//BHHjx8X7+vu7i4mk/v27StWJQDNvYbtkWDOzs5GYmKixQdY+hQKBVJTU5lE1uOIMWfAgAG4efNmm+udO3cOPXv2xKBBg8y2WVIoFHj22WcNrloi4yoqKhAUFGR2HWdKlr/zzjvYvXu3RX+7VCoViyfeeusto59vLSv6uJ/Tfo4Yc9qiUqkQHh5uUbLGFG9vbxQWFvJKmBb4HvpNe6+YMMfYFRPdlTPGHHOssR88cuRIZGZm4siRI9BoNJDL5Rg3bhzi4uJc/iRXd4o5Go0Gt9xyi8kJOtuaAwIARo4cifT0dIcuzHLaKJednY2HH37Y4LbZs2dj06ZNdhqRIUvK1VtqWV2s0+mwatUqbNy4EVKpFEVFRXjqqaeMJo+B5gmsVq1aZZDsNVbBEhkZicjISIvGNGzYMIvWk0ql3EkzgxUVzs9eMceSfuoAcNddd6GqqgoZGRlG399qtRo7duzA888/b/EOrlwux+LFi1kB1g4eHh5G46ZOpxOTwIKQkBBERkaKCebGxkaUlpaitLQUarVaTCA3NjbivffeM0gw63+FhobC29vb6n+LSqXCokWLTO40f/vtt0hMTISXlxfOnz/fagdRuD8P4jvGVjHHkp3U9vTo9/DwwHPPPQegdX/KtiZKstYETZZOvtTWetaaHMrUfRoaGuDl5WXysYHfJuhxhslzTV19YYxWq8XBgwdx3333YdWqVUZbs5WUlFhzeNQGRzm2UigU2LZtW6eSNtu2bePnDpkll8uRmJiI/Pz8Dh23629nwYIFTB53gKPEHFPM7Qf7+PjgyJEjiIiIgEwmg1KpxJtvvok33njD4P4LFy7EM888I16ZHhUVhenTp4tFeOQ6rDEHxJkzZxx+DginjXTXr18XJ1ATBAcHo7S01Oz98vPzu3JYorbaVxirLl62bJnYRxNonkROf5Zhc9zc3DBu3DiUlZV1ZtgOx1b/L1t45513kJCQgIaGhg5vw9PTE3/7299MPi/2fr5c+QyjvWLO7t2729yGr68vXnvtNcTHx2PlypUm1ysoKMCmTZswZ86cTo3JldnyPeTn54fo6GgAzYm2xsZG1NTUoKamBgqFQhxLVVUVampqUFFRYTShcuutt6J///4AmidnvXz5Mnx8fODr6yt++fj4wN3dvV0VzCtXrjRbAVZYWIj3338fSUlJcHd3N7pOXV0d5s6di3/9618WP257MOa01t7XsJeXFyorK00uj4uLQ1RUFHQ6Ha5duybebqpHv5+fn03fR8LEto5crdFRppLSxn7XTzjr/2xq3a7YTkcSKOZas1VXV7d6LXE/p+s40rFVQEAANm7ciMcff7xd+82enp5Yv349AgIC7P5acVR8Xn6zdOlS7Nq1CydOnOjwNoYPH44lS5Z02fPKmNOarV7D5vaDPTw8UFJSgoceegiZmZl4+eWX8dprr2Hfvn04ePCguF59fT0+//xzPPjgg5g0aRKCg4NRVlbmcjkbc7pDzFGr1di6davZk1FC6xLgtwKLiIgIgwSysJ3Fixfb7aRUWzGny0b1xhtv4G9/+5vZdX744QeL+9Zai62C8KBBg3D48GGTy9tbXdyWyMhIPPzwwy519tMVL3lISUnpVEVFSkqKyYmLXPH5ag9XjTnvvvtum5URr7/+Oj755BNcuXLF7HpNTU04efIkHnvssU6NyVU58nto3LhxJnswx8bGipUMZ8+eFZPQLZPNffr0wfLly8Xfjxw5Al9fX6M9mJVKJc6cOWN2TKtXrwYATJs2zaAPdEt5eXno37+/y1054Sox57bbbrNqj/6pU6c67PvI0ThyzOmILVu24Pz58yaXW1I8oc/f39/g+XG156u9XCXmtGe7CxYswMKFC5GTk9PmxFWxsbHYvn07K4/N6O7vIWO+/vrrTk1S/fXXXzv1JNLmdLeYo6+t/eDy8nLMmjVL/D05ORnPPfccFi5caJBABpoT5atWrYKnp2eXjddRdZeYs3XrVly+fLnN9SyZA+Ly5cvIy8tz2CuAuyzbuGrVqlb9eFvqTLANCQlpdeamrKwMvXr16vA2ramtxvztqS5uCy+dcR7jx49HamqqxY34Bd7e3pyQqg2uGnPauoR3zJgxSEhIQExMjEXbO3z4MNavX2+yh2XLn41NtGnqfm2ta+xnABavKySx2hpzR8dfXV0tXp7fnjHZoi+xRCKBl5cXvLy8jE7yJ4iLi8PgwYNbJZmrqqoMdlyVSmWrXqX6LTLS0tKs0rMdaG7BkZycjLVr11ple47CVWJOcnIyNm/ebLUe/Y8//rgVRkXOyFxsAtpfPNHW9robV4k57aFQKLBz504olUokJydj165dqKqqgkajgUwmQ0BAACZOnIj33nvP5U5Skm2EhoZiy5YtWL58OXJzcy1qZyGXyxEdHY3PPvvMZZPHQPeMOYLk5OR27RdFRUXBw8MDe/fubbVMpVLh1Vdfdbn94O7GXCuznTt3ttmBAAAef/xxPPnkk+IcEMZeYyqVCnv27Ol+CeQePXqgR48eXbV5jB8/Hvv27cPvf/978bZ9+/Zh4sSJXfaY7ZGUlIR169ZZpTF/W2JiYsRKMHJ848ePR2FhISsqrMxVY05bO7IzZ85EWFgYLl26BKC5J5dMJsOIESMwduzYVuurVCqLJszqjiyZ0MoYSxLnxtZpK7FuSfLaWGJd/3ahwnjAgAHQarXYt28fJBIJVCoVPDw8UFdXh/r6etTV1UGtVovb+umnn6z3xKJ5gkdX23F2lZjDHv1kLdYsnlAoFEhISLDi6Jyfq8ScjvDw8MDatWuNfo7k5+cz7lCnhIaGivspO3bswPnz543GMYVCgYiICCxYsACrV692ydZJ+rpzzGnPfrCHhwfS09ORl5dn8n722A821qrK1PwMAIyuY+y7pXM96HQ6FBUVoba2tl3btmTdtsZrbqyWbtPY2EzJysqy+P/i7HNAOETJ6vXr13H9+nUUFBQAaL4Et7q6Gv3790dgYCCA5oTs2LFj8corrwAAHn30UcyfPx9///vfkZiYiB07duDAgQNWP+jtKGs15m/L0KFDsXnzZpf/AHM1llRU3HLLLUhOTuZOcRdwppjT1pUFmzZtwjfffCP+/uyzzyIsLAyrVq0yur7+MnP9LE3tLLTVB7PlB7El65pa39K+m+bG3J7xq9Vq+Pv7d2j8wk6FM0x0pU8mk4k9ktVqNRobG6FUKlFTU2PVx2lr4jVX5+gxJyUlBeHh4e26MqYlb29vbN++HUVFRVYcGTkTaxZPREREICkpyQqj6p4cPeYQORqZTIYXX3wRzz//PFJSUrBnzx6cP38ebm5ucHNzQ58+fZCQkICkpCRe9WuEq8Wc6upqi9aTSqU4c+YMNBqN0cIdQWlpKb7//vsOJ2iNJUiBtpO+9tbR4hxHZayIR7+Ypz3MzQFhSTWzvThE9Pv000/x1ltvib8Ll0qsX78e9957L4DmyXr69esnrjNx4kR8+umneOONN/Dmm28iPDwcn376KcaNG2fbwZvxwgsvID09HdnZ2Vbfdne5dMbVmauooK7jTDGnrUt4GxoaDCaYqa2thVKpRHl5udH1+/fvz5l/TehIny5h56yzSW9zCXDhcboq2W9s3a+++sqqz62zJdatzdFjjkKhwLZt2zrVo3/btm28Uqabs1bxBFuzdZ6jxxwiRyWXy7F48WIsXry42/RvtQZXizmW7reeOXMGfn5+GDRoEJRKpcn1mpqa2pxbpCuYunJRKpW2aiXY1ve2tmWsPeG1a9fQr18/i7bZmcdv6wpPc99NPQemHt+YtLQ0XLx40eT/ob1zQLi5uXXiv961JFVVVfY/NeHCiouLO9yY35judOkMP7Tbh8+Xa9q6dSseffTRDiV1WlIoFNi4caPD9lSyN76HfhMeHo7Kykqz6ygUCnh4eGDnzp3o3bs3YmJioFQqjb5WAwMDUVhY2FXDJSvJzs7udI9+vo8s54rPlUajwbx58zpVPDF+/Hj89NNPrfZxXfH5os7j68JyfK7ah89X92XJfvDJkycxYMAAREZGorS01Oy6fn5+2LVrV7uTmJ1JjNpqnhZzust7aNWqVfj6669NLu/Zsye+++47jBkzRpwD4v3338fHH39sdP177rkHGzZs6KrhdgpP7XexjjbmHzBgAEaNGoWbN2+iqamJl84QdVO8JJjswd/fv80d5127dhn0M62urkZaWprBrNQCVr07B/bop86SyWTYvHlzh4sn2JqNiIjsra394Li4OERFRUGn0+HatWvi7Rs2bMATTzzRav0ePXpg+PDhXTJWsr/uNAcEs5A2oN+Yf+vWrbh8+TIb8xORRXhJMNnDvHnzsHHjRrPrGEsUm3LLLbd0dkhkI+zRT53V0eIJtmYjIiJH0NZ+cGZmZruqe7kf7Nq6U8EXW1jYWF5eHvLy8rBnzx6UlJSwutiM7nLJg7Xw+XJdXXlJMP2G76HfKJVKDBw40GwFqqXc3d1RVFTEZGM3wfeR5Vz9udJoNFi7di127NiB8+fPd7p4wtWfL+oYvi4sx+eqffh8dV/cD7aO7vQeeuONN/Dee+91uuDr6aefxosvvmjFkVkXM5U2pt+Yn4jIErwkmGzNw8MDMTExOHToUKe3FRsb2y13mom6O5lMhhdffBHPP/88UlJSWDxBREROgfvB1F4vvPAC0tPTO1XwNXz4cKxevdqKo7I+7q0RETmBjl4SPGzYMHzzzTe8JJjaLSUlBeHh4e2aUK0lb29vbN++3YqjIiJnw+IJIiJyNtwPpvawRsHXm2++6fAFX1J7D4CIiCwj9FN/+umnMXz4cJMTVykUCgwfPhxPP/00Pv74YyaPqUMUCgW2bdvW4QnSOnt/IiIiIiJ74H4wtZdQ8DVu3DiLr6ySy+UYN24ctmzZgt69e3fxCDuPFchERE6kvZcE5+fn23vI5MTGjx+P1NRULFq0qF0VGN7e3ti2bRvGjx/fhaMjIiIiIuoa3A+m9hIKvjoyB4QzHLczgUxE5IR4STDZyvjx41FYWIiFCxciJyfH7IQi7u7uiI2Nxfbt21lxQUREREROjfvB1F6uPAeEc42WiIiIbE6hUGDnzp1QKpVITk7Grl27cOPGDQDNO0kBAQG45ZZbkJyczIlCiIiIiMhl6O8HP/XUUzh8+DCqqqqg0Wi4H0wmuWLBFxPIREREZBEPDw+sXbsWa9euRX5+PgYPHmzvIRERERERdTkPDw/88Y9/5P4vdVucRI+IiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMYgKZiIiIiIiIiIiIiIxiApmIiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMYgKZiIiIiIiIiIiIiIxiApmIiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMYgKZiIiIiIiIiIiIiIxiApmIiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMYgKZiIiIiIiIiIiIiIxiApmIiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMklRVVensPQgiIiIiIiIiIiIicjysQCYiIiIiIiIiIiIio5hAJiIiIiIiIiIiIiKjmEAmIiIiIiIiIiIiIqOYQCYiIiIiIiIiIiIio5hAJiIiIiIiIiIiIiKjmEC2k88++wwLFizAgAEDEBAQgKKiInsPyaF8/PHHGD16NEJCQjBjxgxkZGTYe0gO6eDBg7j77rsxfPhwBAQE4Msvv7T3kMhBMeaYx5hjGcYcshRjjnmMOZZhzCFLMeaYx5hjGcYcshRjjnmMOZZxtpjDBLKd1NfXIz4+HqtXr7b3UBzO1q1bsXr1avzxj3/E/v37MWHCBNxxxx24fPmyvYfmcOrq6jBixAisXbsWnp6e9h4OOTDGHNMYcyzHmEOWYswxjTHHcow5ZCnGHNMYcyzHmEOWYswxjTHHcs4WcyRVVVU6ew+iOzt27BhmzZqF48ePY+DAgfYejkOYPXs2oqKi8P7774u3xcbGYuHChXjllVfsODLH1q9fP7z99tu499577T0UcmCMOa0x5nQMYw5ZgjGnNcacjmHMIUsw5rTGmNMxjDlkCcac1hhzOsYZYg4rkMmhqFQq5ObmIj4+3uD2+Ph4HD582E6jIiJXxZhDRLbEmENEtsSYQ0S2xJjj2phAJody48YNaDQaBAcHG9weHByM0tJSO42KiFwVYw4R2RJjDhHZEmMOEdkSY45rYwLZit544w0EBASY/Tpw4IC9h0lELoIxh4hsiTGHiGyJMYeIbIkxh8g8ub0H4EpWrVqFO++80+w6oaGhNhqNc+rRowdkMhnKysoMbi8rK0OvXr3sNCoix8SY03mMOUSWY8zpPMYcIssx5nQeYw6R5RhzOo8xx7UxgWxFPXr0QI8ePew9DKemUCgQHR2Nffv2YdGiReLt+/btQ1JSkv0GRuSAGHM6jzGHyHKMOZ3HmENkOcaczmPMIbIcY07nMea4NiaQ7eT69eu4fv06CgoKAABnz55FdXU1+vfvj8DAQDuPzr4ef/xxPPLIIxg7diwmTpyITz/9FNeuXcODDz5o76E5nNraWly4cAEAoNVqUVxcjF9//RWBgYHo37+/nUdHjoQxxzTGHMsx5pClGHNMY8yxHGMOWYoxxzTGHMsx5pClGHNMY8yxnLPFHElVVZXO3oPojtasWYO33nqr1e3r16/Hvffea4cROZaPP/4Y//jHP3D9+nUMHz4cb775JqZMmWLvYTmcAwcO4Lbbbmt1+7Jly/Dhhx/aYUTkqBhzzGPMsQxjDlmKMcc8xhzLMOaQpRhzzGPMsQxjDlmKMcc8xhzLOFvMYQKZiIiIiIiIiIiIiIyS2nsAREREREREREREROSYmEAmIiIiIiIiIiIiIqOYQCYiIiIiIiIiIiIio5hAJiIiIiIiIiIiIiKjmEAmIiIiIiIiIiIiIqOYQCYiIiIiIiIiIiIio5hAJiIiIiIiIiIiIiKjmEAmIiIiIiIiIiIiIqOYQCYiIiIiIiIiIiIio5hAJru6evUqevfujZUrVxrcnpWVhd69e+OJJ56w08iIyBUx5hCRLTHmEJEtMeYQkS0x5nQvTCCTXfXt2xcPPPAAvv/+e5w/fx4AcPHiRdxzzz2YMGEC/v73v9t5hETkShhziMiWGHOIyJYYc4jIlhhzuhdJVVWVzt6DoO7t+vXriI6OxuLFi/Hmm29i7ty50Ol0+N///oeAgAB7D4+IXAxjDhHZEmMOEdkSYw4R2RJjTvcht/cAiEJCQrBixQps2rQJBQUFuHHjBvbs2cNgQ0RdgjGHiGyJMYeIbIkxh4hsiTGn+2ALC3IITz75JDQaDY4dO4avvvoKYWFhBstv3LiBu+66C3379kVsbCz27Nljn4ESkUtgzCEiW2LMISJbYswhIltizOkeWIFMDuGdd96BVquFRqNBYGBgq+V//OMf0bNnTxQUFCA9PR0rVqzA0aNHERwcbIfREpGzY8whIltizCEiW2LMISJbYszpHliBTHa3YcMG/Otf/8LatWvh7e2Nt956y2B5bW0tUlNT8ec//xleXl649dZbMXr0aKSmptppxETkzBhziMiWGHOIyJYYc4jIlhhzug8mkMmufvzxR7z00kt49tln8eijj+Lhhx/G1q1bcfbsWXGd8+fPw9vbG/369RNvGzlyJPLy8uwxZCJyYow5RGRLjDlEZEuMOURkS4w53QsTyGQ3ubm5+N3vfoeFCxfixRdfBAA89thj8PLywtq1a8X16urq4Ovra3BfPz8/1NXV2XS8ROTcGHOIyJYYc4jIlhhziMiWGHO6HyaQyS6uXLmCZcuWYcSIEfjwww8hkUgAAEFBQVixYgW2bduG06dPAwC8vb1RU1NjcP+amhp4e3vbfNxE5JwYc4jIlhhziMiWGHOIyJYYc7onSVVVlc7egyAyp7a2FuHh4Th+/Dj69u0LALjtttuwZMkSLF++3L6DIyKXw5hDRLbEmENEtsSYQ0S2xJjjOliBTA7Px8cH8+fPx5tvvon6+nrs2rULx48fR2Jior2HRkQuiDGHiGyJMYeIbIkxh4hsiTHHdcjtPQAiS7z77rtYtWoVIiIi0Lt3b3zyyScIDg6297CIyEUx5hCRLTHmEJEtMeYQkS0x5rgGtrAgIiIiIiIiIiIiIqPYwoKIiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMYgKZiIiIiIiIiIiIiIxiApmIiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMYgKZiIiIiIiIiIiIiIxiApmIiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMYgKZiIiIiIiIiIiIiIxiApmIiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMYgKZiIiIiIiIiIiIiIxiApmIiIiIiIiIiIiIjGICmYiIiIiIiIiIiIiMYgKZiIiIiIiIiIiIiIxiApmIiIiIiIiIiIiIjGICmQwUFRUhICAAq1atstljHjhwwOaPGRAQgMTERJs9HhEZx5hDRGScEKvWrFljs8f88ssvbfqY9vgMICLjGHOInB+PragrMYHcTeTn5+P555/H5MmTMWDAAAQHB2PIkCFYunQpPv30U9TV1dl7iETkQhhziJybs7+HhQMoRzu4yMnJwe9//3uMHz8eoaGh6NWrF6KionDvvffi22+/RVNTk72HSGQXjDldgzGHyDU4e4wk1yC39wCo67399ttYu3YttFotxo0bh7vvvhu+vr4oLS1FRkYGnnnmGXzwwQc4duyYvYdqM1lZWfD09LT3MIhcEmNOa4w55Ez4Hra+pqYmrF69Gp988gmkUikmT56MhIQEeHp64urVqzhw4ABSU1Px1VdfYfv27fYers307dsXWVlZ8PPzs/dQyI4Yc6yPMcc4xhxyRoyRrfHYyj6YQHZx77zzDt58803069cPmzdvxoQJE1qts2/fPrzxxht2GJ39DBkyxN5DIHJJjDnGMeaQs+B7uGs8++yz+PzzzzF8+HB89tlnGDp0qMFyrVaLlJQUfPnll3YaoX24ubkxPnZzjDldgzHHOMYccjaMkcbxfWwfbGHhwoqKirB27Vq4ubnh22+/NRpsAGDWrFn48ccf29xeaWkpnnvuOYwZMwa9evVCeHg47rrrLhw8eNDkffbt24e7774bgwcPRq9evTBixAjceeed2LlzZ5uPp9Pp8Je//AUBAQG44447UFtbi82bNyMgIACffPKJwbrff/89AgIC0KNHD1RVVRksu/vuuxEQEICSkhLxNmOXmNXU1GDdunXiZSH9+vXD6NGjcd999+HAgQOtxnfhwgU8+eSTGDlyJHr16oWIiAjce++9yM3NbfNvI3JFjDnNGHPIWXXmPZySkoIFCxZgwIABCAkJwYQJE/DXv/4VtbW1re4/atQojBo1yui2hX6YLZMao0aNQkBAANRqNd555x3ExsaKl2K/8sorUKlUBtsYM2YMAODgwYMICAgQv1r22czNzcWKFSswbNgwBAcHY+jQoXj44Ydx4cKFVmNbtWoVAgICcODAAXzzzTeYNWsW+vbti6lTpxr9WwSHDh3C559/joCAAGzZsqVVIgcApFIpFi1ahP/7v/8zuy3BxYsX8dhjj2HEiBEIDg7G4MGDsXz5cpw8edLkfb7//nssWrQI4eHh6NWrF0aOHIkHHngAmZmZbT6eSqXCypUrERAQgCeeeAJqtRqvvvoqAgICsHv3boN1//GPfyAgIAARERHQ6XQGyyZPnox+/fqJl82b6tVYVlaGl19+GePHj0ffvn3Rv39/xMbGYuXKlThx4kSr8bXn/0iOgzGHMccUxhwiHlsJeGzlOFiB7MK+/PJLNDU1YfHixRg5cqTZdd3d3c0uv3TpEm699VZcuXIFU6ZMweLFi3Ht2jVs27YNu3fvxgcffIB7773X4D5vvvkm3n77bXh7eyMxMRGhoaG4fv06jhw5gi+++AK33nqrycdrbGzEqlWrsHXrVtx///34+9//DrlcjhkzZgAA0tLS8NBDD4nrp6enAwA0Gg0OHDiA2267Tfw9IyMDQ4YMQZ8+fUw+nk6nw9KlS3H48GGMHTsW9957LxQKBUpKSpCRkYH09HRMmzbN4PHuvfdeKJVK3HLLLYiIiEBJSQl++OEH7NmzB1999RVmz55t9jklcjWMOYw55Nw6+h7+61//inXr1iEwMBCLFy+Gv78/9u3bh3Xr1mHnzp3YuXMnfH19rTLGlStXIjMzEwkJCfD19cXu3bvxj3/8A2VlZdiwYQOA5sTPo48+io0bN6J///645557xPvrJ17+85//4LHHHoNCocCtt96Kfv364cKFC9iyZQt++ukn7NixA6NHj241hn/+859IT0/HrbfeihkzZhgkkoz57LPPAADLly9H3759za7bVmwEmhMXCxcuxM2bNzF37lxERUWhsLAQP/zwA3766Sd89dVXiI+PF9fX6XR47LHH8PXXXyMoKAjz589Hr169cPXqVWRkZGD79u2Ii4sz+XhVVVW477778Msvv+D555/HCy+8AACYMWMG/v73vyMtLQ1z5swR1xfi440bN/Drr7+KibWysjLk5eVh9uzZcHNzM/l49fX1mDt3LgoLCzFjxgzccsstAIArV64gLS0N06dPN0gGdvT/SPbHmMOYYwxjDlEzHlvx2MrRMIHswg4dOgQAmDlzZqe39cwzz+DKlStYvXo1Vq9eLd7+xBNPICEhAc888wxmzpyJfv36AQD27t2Lt99+G/3798fOnTsRGhpqsL0rV66YfKyqqircc889yMjIaPV4gwYNQmhoKA4cOACtVguptLmIPj09HZMnT8bRo0exf/9+MeDk5OTg5s2buOuuu8z+fadPn8bhw4cxf/58fPXVVwbLdDodKisrxd+rq6vx4IMPws3NDXv27MGwYcPEZWfPnsXs2bPx+OOP4/jx4xbtlBG5CsYcxhxybh15D2dnZ2PdunXo27cvfv75Z3HnPjk5GatWrcI333yD1157DevWrbPKGAsLC3Ho0CEEBgYCAP7yl79g6tSp+Oabb/DKK68gJCQEo0ePhr+/PzZu3IgBAwaIyQd9QtVJaGgofvzxR4Mky4EDB7Bo0SI8+eST4gGNvgMHDuB///ufxQkCa8ZGnU6HRx99FNXV1diwYYNBoiotLQ233347Hn74Yfz666/w8vICAHz++ef4+uuvER0djW3btiEgIEC8j1arxbVr10w+XnFxMe64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l5d7cZQUyG7s2b9//35UVVV127O/pKTE10OmfgoLC8OmTZuwadMmXw+FqAvOgehGfZ0L8T1ARESe5I45y2uvveb35ysmkIn8nFhx4cmelRQYxKpBg8GADRs2YO/evdDpdLBYLFCpVIiNjcWdd96JDRs2+PXSF/JvthvIEBH5EudAdKMb50K7d+9GW1sb50JERORT/Z2zxMbGem5wbsIEMlEAYMUF2WLVIBERyYU4B7rjjjtw/vx5zoEIwI9zodWrV8tikyYiIvJ//cnbBMLqTiaQiQJET9WnERERWLhwISsuiIiIKKiEhITg7bffxpAhQ7gCh4iIiPxWMK8aZgKZKMB0V31aUlLCCgwiIiIKWlyBQ0RERIEgGOcsSl8PgIiIiIiIiIiIiIj8ExPIREREREREREREROQQE8hERERERERERERE5BATyERERERERERERETkEBPIREREREREREREROQQE8hERERERERERERE5BATyERERERERERERETkEBPIREREREREREREROQQE8hERERERERERERE5BATyERERERERERERETkEBPIREREREREREREROQQE8hERERERERERERE5JBCp9MJvh4EEREREREREREREfkfViATERERERERERERkUNMIBMRERERERERERGRQ0wgExEREREREREREZFDTCATERERERERERERkUNMIBMRERERERERERGRQ0wg+8i7776LhQsXIi0tDbGxsSgvL/f1kPzK3/72N4wfPx4DBw7EbbfdhiNHjvh6SH7p8OHD+PnPf47s7GzExsbigw8+8PWQyE8x5jjHmOMaxhxyFWOOc4w5rmHMIVcx5jjHmOMaxhxyFWOOc4w5rgm0mMMEso+0t7djzpw5WLt2ra+H4nd27tyJtWvX4umnn8Y333yD6dOn4+6778bVq1d9PTS/09bWhtGjR2PTpk3QarW+Hg75Mcac7jHmuI4xh1zFmNM9xhzXMeaQqxhzuseY4zrGHHIVY073GHNcF2gxR6HT6QRfD0LOCgsLMXv2bJw6dQpDhw719XD8wu23344xY8bgL3/5i/TY5MmTsWTJEvzud7/z4cj82+DBg/GHP/wB9913n6+HQn6MMacrxpy+YcwhVzDmdMWY0zeMOeQKxpyuGHP6hjGHXMGY0xVjTt8EQsxhBTL5FaPRiKKiIsyZM8fu8Tlz5uD48eM+GhURBSvGHCLyJsYcIvImxhwi8ibGnODGBDL5lYaGBlgsFiQlJdk9npSUhNraWh+NioiCFWMOEXkTYw4ReRNjDhF5E2NOcGMC2Y1efPFFxMbGOv3z7bff+nqYRBQkGHOIyJsYc4jImxhziMibGHOInFP7egDBZM2aNbjnnnucHpOamuql0QSmhIQEqFQq1NXV2T1eV1eHAQMG+GhURP6JMaf/GHOIXMeY03+MOUSuY8zpP8YcItcx5vQfY05wYwLZjRISEpCQkODrYQS0kJAQTJw4EQcOHMDSpUulxw8cOIDFixf7bmBEfogxp/8Yc4hcx5jTf4w5RK5jzOk/xhwi1zHm9B9jTnBjAtlHampqUFNTg9LSUgBAcXExmpubMWTIEMTFxfl4dL71xBNP4NFHH8WUKVOQk5ODrVu3orq6GqtWrfL10PxOa2srLl26BACwWq2oqKjA6dOnERcXhyFDhvh4dORPGHO6x5jjOsYcchVjTvcYc1zHmEOuYszpHmOO6xhzyFWMOd1jzHFdoMUchU6nE3w9CDnauHEjXn755S6Pv/baa7jvvvt8MCL/8re//Q3/8z//g5qaGmRnZ+Oll17CzJkzfT0sv/Ptt99i0aJFXR5fsWIF3njjDR+MiPwVY45zjDmuYcwhVzHmOMeY4xrGHHIVY45zjDmuYcwhVzHmOMeY45pAizlMIBMRERERERERERGRQ0pfD4CIiIiIiIiIiIiI/BMTyERERERERERERETkEBPIREREREREREREROQQE8hERERERERERERE5BATyERERERERERERETkEBPIREREREREREREROQQE8hERERERERERERE5BATyERERERERERERETkEBPIREREREREREREROQQE8jkU9euXUNycjIeeughu8fz8vKQnJyMX/7ylz4aGREFI8YcIvImxhwi8ibGHCLyJsYceWECmXxq0KBBeOCBB/DJJ5/g4sWLAIDLly/j3nvvxfTp0/HnP//ZxyMkomDCmENE3sSYQ0TexJhDRN7EmCMvCp1OJ/h6ECRvNTU1mDhxIpYtW4aXXnoJd9xxBwRBwL/+9S/Exsb6enhEFGQYc4jImxhziMibGHOIyJsYc+RD7esBEA0cOBAPPvgg3nrrLZSWlqKhoQH79+9nsCEij2DMISJvYswhIm9izCEib2LMkQ+2sCC/8OSTT8JisaCwsBDbt29Henq63ccbGhrws5/9DIMGDcLkyZOxf/9+3wyUiIICYw4ReRNjDhF5E2MOEXkTY448sAKZ/MIf//hHWK1WWCwWxMXFdfn4008/jcTERJSWluLQoUN48MEHcfLkSSQlJflgtEQU6BhziMibGHOIyJsYc4jImxhz5IEVyORzr7/+Ot5++21s2rQJERERePnll+0+3traij179uC5555DeHg4fvKTn2D8+PHYs2ePj0ZMRIGMMYeIvIkxh4i8iTGHiLyJMUc+mEAmn/riiy/w/PPP45lnnsFjjz2GRx55BDt37kRxcbF0zMWLFxEREYHBgwdLj40dOxbnz5/3xZCJKIAx5hCRNzHmEJE3MeYQkTcx5sgLE8jkM0VFRXj44YexZMkSrF+/HgDw+OOPIzw8HJs2bZKOa2trQ1RUlN1zo6Oj0dbW5tXxElFgY8whIm9izCEib2LMISJvYsyRHyaQyScqKyuxYsUKjB49Gm+88QYUCgUAID4+Hg8++CA+/fRTnDt3DgAQERGB69ev2z3/+vXriIiI8Pq4iSgwMeYQkTcx5hCRNzHmEJE3MebIk0Kn0wm+HgSRM62trRg2bBhOnTqFQYMGAQAWLVqE5cuXY+XKlb4dHBEFHcYcIvImxhwi8ibGHCLyJsac4MEKZPJ7kZGRuOuuu/DSSy+hvb0de/fuxalTp7BgwQJfD42IghBjDhF5E2MOEXkTYw4ReRNjTvBQ+3oARK7405/+hDVr1iAjIwPJycl45513kJSU5OthEVGQYswhIm9izCEib2LMISJvYswJDmxhQUREREREREREREQOsYUFERERERERERERETnEBDIREREREREREREROcQEMhERERERERERERE5xAQyERERERERERERETnEBDIREREREREREREROcQEMhERERERERERERE5xAQyERERERERERERETnEBDIREREREREREREROfT/AWawEY1T3rtaAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = sequence_pred(sbs_seq, full_test, test_directions)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Bidirectional LSTM as an Encoder\n", "\n", "We have been using the output of GRU above to exact the last hidden state as the representation vector $\\psi$ betwen the encoder and decoder. Note that despite the output and hidden state of a GRU cell is the same, we still used the output, rather than the hidden state. This is because the bidirectional variations outputs are hidden states are not the same. Recall that the overall output of the bidirectional RNN must have two elements:\n", "- a concatenation side-by-side of both sequences of hidden states (input aligned)\n", "- the concatenation of final hidden states of both layers, the last of the forward layer is corresponding to the last element of the sequence, the last of the backward layer is corresponding to the first element of the sequence (i.e. not input aligned).\n", "\n", "See the figure below for clarification.\n", "\n", "![Bidirectional RNN](../images/bidirect_rnn.png)\n", "\n", "For Sequence to Sequence model, we will need an input aligned output, so the code above largely should still work (the dimenionality changed though), but conceptually we need to be clear of what's happening. \n", "\n", ":::{admonition} Your Turn\n", "Change the code above to use BiLSTM as an encoder.\n", ":::" ] } ], "metadata": { "interpreter": { "hash": "d990147e05fc0cc60dd3871899a6233eb6a5324c1885ded43d013dc915f7e535" }, "kernelspec": { "display_name": "Python 3.8.10 64-bit ('cits4012': conda)", "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.10" } }, "nbformat": 4, "nbformat_minor": 2 }