{ "cells": [ { "cell_type": "markdown", "id": "753abdbd", "metadata": {}, "source": [ "Binned acquisition\n", "==================\n", "\n", "In this tutorial, we will demonstrate the sequencer-based acquisition binning procedure. The binning process is applied on the input path after real-time demodulation, (weighed) integration, IQ rotation and discretization. It allows storing both the integration and discretization\n", "results on the fly without intervention of the host PC in up to 131072 bins. It also allows the averaging of those bins on the fly\n", "(see section [Sequencer Acquisition](https://docs.qblox.com/en/main/cluster/q1_sequence_processor.html#acquisitions)).\n", "We will then use the module sequencers to sequence waveforms on the outputs and, simultaneously, acquire the resulting waveforms on the inputs." ] }, { "cell_type": "markdown", "id": "5771606b", "metadata": { "tags": [ "connectivity" ] }, "source": [ "We will show this by using a QRM and directly connecting outputs $\\text{O}^{[1-2]}$ to inputs $\\text{I}^{[1-2]}$, respectively." ] }, { "cell_type": "markdown", "id": "82268da4", "metadata": { "tags": [] }, "source": [ "Setup\n", "-----\n", "\n", "First, we are going to import the required packages." ] }, { "cell_type": "code", "execution_count": 1, "id": "aa0f0dfd", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:03.135674Z", "iopub.status.busy": "2024-11-13T02:39:03.135463Z", "iopub.status.idle": "2024-11-13T02:39:03.985410Z", "shell.execute_reply": "2024-11-13T02:39:03.984567Z" }, "tags": [ "imports" ] }, "outputs": [], "source": [ "from __future__ import annotations\n", "\n", "import json\n", "import math\n", "import warnings\n", "from typing import TYPE_CHECKING, Callable\n", "\n", "import matplotlib.pyplot as plt\n", "import scipy.signal\n", "from qcodes.instrument import find_or_create_instrument\n", "\n", "from qblox_instruments import Cluster, ClusterType\n", "\n", "if TYPE_CHECKING:\n", " from qblox_instruments.qcodes_drivers.module import Module" ] }, { "cell_type": "markdown", "id": "669fe862", "metadata": {}, "source": [ "### Scan For Clusters\n", "\n", "We scan for the available devices connected via ethernet using the Plug & Play functionality of the Qblox Instruments package (see [Plug & Play](https://docs.qblox.com/en/main/api_reference/tools.html#api-pnp) for more info)." ] }, { "cell_type": "markdown", "id": "e3c1c26b", "metadata": {}, "source": [ "`!qblox-pnp list`" ] }, { "cell_type": "code", "execution_count": 2, "id": "904af4c6", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:03.988060Z", "iopub.status.busy": "2024-11-13T02:39:03.987873Z", "iopub.status.idle": "2024-11-13T02:39:03.991139Z", "shell.execute_reply": "2024-11-13T02:39:03.990501Z" } }, "outputs": [], "source": [ "cluster_ip = \"10.10.200.42\"\n", "cluster_name = \"cluster0\"" ] }, { "cell_type": "markdown", "id": "8f9bbcb2", "metadata": {}, "source": [ "### Connect to Cluster\n", "\n", "We now make a connection with the Cluster." ] }, { "cell_type": "code", "execution_count": 3, "id": "8a8b87ca", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:03.993017Z", "iopub.status.busy": "2024-11-13T02:39:03.992856Z", "iopub.status.idle": "2024-11-13T02:39:04.778900Z", "shell.execute_reply": "2024-11-13T02:39:04.778093Z" }, "lines_to_next_cell": 2 }, "outputs": [], "source": [ "cluster = find_or_create_instrument(\n", " Cluster,\n", " recreate=True,\n", " name=cluster_name,\n", " identifier=cluster_ip,\n", " dummy_cfg=(\n", " {\n", " 2: ClusterType.CLUSTER_QCM,\n", " 4: ClusterType.CLUSTER_QRM,\n", " 6: ClusterType.CLUSTER_QCM_RF,\n", " 8: ClusterType.CLUSTER_QRM_RF,\n", " }\n", " if cluster_ip is None\n", " else None\n", " ),\n", ")" ] }, { "cell_type": "markdown", "id": "f4ba3940", "metadata": { "lines_to_next_cell": 2 }, "source": [ "#### Get connected modules" ] }, { "cell_type": "code", "execution_count": 4, "id": "442bc929", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:04.781262Z", "iopub.status.busy": "2024-11-13T02:39:04.781063Z", "iopub.status.idle": "2024-11-13T02:39:04.785207Z", "shell.execute_reply": "2024-11-13T02:39:04.784482Z" } }, "outputs": [], "source": [ "def get_connected_modules(cluster: Cluster, filter_fn: Callable | None = None) -> dict[int, Module]:\n", " def checked_filter_fn(mod: ClusterType) -> bool:\n", " if filter_fn is not None:\n", " return filter_fn(mod)\n", " return True\n", "\n", " return {\n", " mod.slot_idx: mod for mod in cluster.modules if mod.present() and checked_filter_fn(mod)\n", " }" ] }, { "cell_type": "code", "execution_count": 5, "id": "3b22c1ca", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:04.787004Z", "iopub.status.busy": "2024-11-13T02:39:04.786818Z", "iopub.status.idle": "2024-11-13T02:39:04.809191Z", "shell.execute_reply": "2024-11-13T02:39:04.808554Z" }, "tags": [ "module_select" ] }, "outputs": [], "source": [ "# QRM modules\n", "modules = get_connected_modules(cluster, lambda mod: mod.is_qrm_type and not mod.is_rf_type)" ] }, { "cell_type": "code", "execution_count": 6, "id": "ee1418d8", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:04.810951Z", "iopub.status.busy": "2024-11-13T02:39:04.810755Z", "iopub.status.idle": "2024-11-13T02:39:04.815738Z", "shell.execute_reply": "2024-11-13T02:39:04.813175Z" } }, "outputs": [], "source": [ "# This uses the module of the correct type with the lowest slot index\n", "module = list(modules.values())[0]" ] }, { "cell_type": "markdown", "id": "65b0e8b8", "metadata": {}, "source": [ "### Reset the Cluster\n", "\n", "We reset the Cluster to enter a well-defined state. Note that resetting will clear all stored parameters, so resetting between experiments is usually not desirable." ] }, { "cell_type": "code", "execution_count": 7, "id": "cd005dc5", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:04.823551Z", "iopub.status.busy": "2024-11-13T02:39:04.822834Z", "iopub.status.idle": "2024-11-13T02:39:07.266940Z", "shell.execute_reply": "2024-11-13T02:39:07.266191Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, Flags: NONE, Slot flags: NONE\n" ] } ], "source": [ "cluster.reset()\n", "print(cluster.get_system_status())" ] }, { "cell_type": "markdown", "id": "3ca6a804", "metadata": {}, "source": [ "Generate waveforms and weights\n", "------------------------------\n", "\n", "Next, we need to create the waveforms used by the sequence for playback on the outputs as well as weights used by the sequence for weighed\n", "integrations. To keep it straightforward, we use the DC offset from the sequencers as our waveform and define waveform weights in the cell\n", "below." ] }, { "cell_type": "code", "execution_count": 8, "id": "cbb2c3cd", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.269286Z", "iopub.status.busy": "2024-11-13T02:39:07.269084Z", "iopub.status.idle": "2024-11-13T02:39:07.274312Z", "shell.execute_reply": "2024-11-13T02:39:07.273531Z" }, "tags": [] }, "outputs": [], "source": [ "# Waveform and weight parameters\n", "waveform_weight_length = 600 # nanoseconds\n", "\n", "# These will be used as weights in the \"Weighed acquisition\" section\n", "waveforms_weights = {\n", " \"gaussian\": {\n", " \"data\": scipy.signal.windows.gaussian(\n", " waveform_weight_length, std=0.12 * waveform_weight_length\n", " ).tolist(),\n", " \"index\": 0,\n", " },\n", " \"sine\": {\n", " \"data\": [\n", " math.sin((2 * math.pi / waveform_weight_length) * i)\n", " for i in range(0, waveform_weight_length)\n", " ],\n", " \"index\": 1,\n", " },\n", " \"block\": {\"data\": [1.0 for _ in range(0, waveform_weight_length)], \"index\": 2},\n", "}" ] }, { "cell_type": "markdown", "id": "1ab5b8f7", "metadata": {}, "source": [ "Specify acquisitions\n", "--------------------\n", "\n", "We also need to specify the acquisitions so that the instrument can allocate the required memory for its acquisition list. In this case we will create 4 acquisition specifications that each create multiple bins." ] }, { "cell_type": "code", "execution_count": 9, "id": "9fbfacc1", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.276665Z", "iopub.status.busy": "2024-11-13T02:39:07.276453Z", "iopub.status.idle": "2024-11-13T02:39:07.280888Z", "shell.execute_reply": "2024-11-13T02:39:07.280000Z" }, "tags": [] }, "outputs": [], "source": [ "# Acquisitions\n", "acquisitions = {\n", " \"non_weighed\": {\"num_bins\": 10, \"index\": 0},\n", " \"weighed\": {\"num_bins\": 10, \"index\": 1},\n", " \"large\": {\"num_bins\": 131072, \"index\": 2},\n", " \"avg\": {\"num_bins\": 10, \"index\": 3},\n", " \"single\": {\"num_bins\": 1, \"index\": 4},\n", "}" ] }, { "cell_type": "markdown", "id": "10aafee2", "metadata": {}, "source": [ "Create Q1ASM program\n", "--------------------\n", "\n", "Now that we have the waveform and acquisition specifications for the sequence, we need a simple Q1ASM program that sequences the waveforms and triggers the acquisitions.\n", "In this case we will simply trigger 10 non-weighed acquisitions and store each acquisition in a separate bin." ] }, { "cell_type": "code", "execution_count": 10, "id": "5ac8c8f6", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.283389Z", "iopub.status.busy": "2024-11-13T02:39:07.283161Z", "iopub.status.idle": "2024-11-13T02:39:07.287060Z", "shell.execute_reply": "2024-11-13T02:39:07.286344Z" }, "tags": [] }, "outputs": [], "source": [ "# Sequence program.\n", "seq_prog = \"\"\"\n", " move 0,R0 #Loop iterator.\n", " nop\n", "\n", "loop: acquire 0,R0,1200 #Acquire bins and store them in \"non_weighed\" acquisition.\n", " add R0,1,R0 #Increment iterator\n", " nop #Wait a cycle for R0 to be available.\n", " jlt R0,10,@loop #Run until number of iterations is done.\n", "\n", " stop #Stop.\n", "\"\"\"" ] }, { "cell_type": "markdown", "id": "3a8ecff9", "metadata": {}, "source": [ "Upload sequence\n", "---------------\n", "\n", "Now that we have the waveform, weights and acquisition specifications and Q1ASM program, we can combine them in a sequence stored in a JSON file." ] }, { "cell_type": "code", "execution_count": 11, "id": "df4234db", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.289576Z", "iopub.status.busy": "2024-11-13T02:39:07.289347Z", "iopub.status.idle": "2024-11-13T02:39:07.299255Z", "shell.execute_reply": "2024-11-13T02:39:07.298418Z" }, "tags": [] }, "outputs": [], "source": [ "# Add sequence program, waveforms, weights and acquisitions to single dictionary and write to JSON file.\n", "sequence = {\n", " \"waveforms\": waveforms_weights,\n", " \"weights\": waveforms_weights,\n", " \"acquisitions\": acquisitions,\n", " \"program\": seq_prog,\n", "}\n", "with open(\"sequence.json\", \"w\", encoding=\"utf-8\") as file:\n", " json.dump(sequence, file, indent=4)\n", " file.close()" ] }, { "cell_type": "markdown", "id": "f990c46e", "metadata": {}, "source": [ "Let's write the JSON file to the instruments. We will use sequencer 0, which will drive outputs $\\text{O}^{[1-2]}$ and acquire on inputs $\\text{I}^{[1-2]}$." ] }, { "cell_type": "code", "execution_count": 12, "id": "fd9f4ca1", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.301725Z", "iopub.status.busy": "2024-11-13T02:39:07.301496Z", "iopub.status.idle": "2024-11-13T02:39:07.433621Z", "shell.execute_reply": "2024-11-13T02:39:07.430346Z" }, "tags": [] }, "outputs": [], "source": [ "# Upload sequence.\n", "module.sequencer0.sequence(\"sequence.json\")" ] }, { "cell_type": "markdown", "id": "a8d49947", "metadata": {}, "source": [ "Play sequence\n", "-------------\n", "\n", "The sequence has been uploaded to the instrument. Now we need to configure the sequencers. To keep it simple we will set a DC signal on the outputs of the instrument by enabling the sequencer offsets and disabling the modulation. These DC signals will then be acquired through the inputs. As such, we will also disable the demodulation on the input path. Furthermore, since we are running non-weighed integrations, we need to specify the integration length. This integration length will be used for every non-weighed integration moving forward. We will also put the integration result acquisition rotation to 0 degrees and acquisition threshold to 0." ] }, { "cell_type": "code", "execution_count": 13, "id": "7f8b3b8a", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.441650Z", "iopub.status.busy": "2024-11-13T02:39:07.441482Z", "iopub.status.idle": "2024-11-13T02:39:07.482113Z", "shell.execute_reply": "2024-11-13T02:39:07.479223Z" }, "tags": [] }, "outputs": [], "source": [ "# Map sequencer to specific outputs (but first disable all sequencer connections)\n", "module.disconnect_outputs()\n", "module.disconnect_inputs()" ] }, { "cell_type": "code", "execution_count": 14, "id": "b3ab387d", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.490258Z", "iopub.status.busy": "2024-11-13T02:39:07.489476Z", "iopub.status.idle": "2024-11-13T02:39:07.515653Z", "shell.execute_reply": "2024-11-13T02:39:07.512540Z" }, "tags": [ "connect" ] }, "outputs": [], "source": [ "module.sequencer0.connect_sequencer(\"io0_1\")" ] }, { "cell_type": "code", "execution_count": 15, "id": "9551d5a3", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.524523Z", "iopub.status.busy": "2024-11-13T02:39:07.523697Z", "iopub.status.idle": "2024-11-13T02:39:07.619774Z", "shell.execute_reply": "2024-11-13T02:39:07.616707Z" } }, "outputs": [], "source": [ "# Configure scope mode\n", "module.scope_acq_sequencer_select(0)\n", "module.scope_acq_trigger_mode_path0(\"sequencer\")\n", "module.scope_acq_trigger_mode_path1(\"sequencer\")\n", "\n", "# Set AWG offsets\n", "module.sequencer0.offset_awg_path0(0.5)\n", "module.sequencer0.offset_awg_path1(0.5)\n", "\n", "# Configure integration\n", "module.sequencer0.integration_length_acq(1000)\n", "module.sequencer0.thresholded_acq_rotation(0)\n", "module.sequencer0.thresholded_acq_threshold(0)" ] }, { "cell_type": "code", "execution_count": 16, "id": "5a794f3d", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.628098Z", "iopub.status.busy": "2024-11-13T02:39:07.627208Z", "iopub.status.idle": "2024-11-13T02:39:07.661221Z", "shell.execute_reply": "2024-11-13T02:39:07.658283Z" }, "tags": [ "configure" ] }, "outputs": [], "source": [ "# Configure the sequencer\n", "module.sequencer0.mod_en_awg(False)\n", "module.sequencer0.demod_en_acq(False)" ] }, { "cell_type": "markdown", "id": "3e0dd8e3", "metadata": {}, "source": [ "Now let's start the sequence." ] }, { "cell_type": "code", "execution_count": 17, "id": "b7ff6af8", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.670244Z", "iopub.status.busy": "2024-11-13T02:39:07.669460Z", "iopub.status.idle": "2024-11-13T02:39:07.693085Z", "shell.execute_reply": "2024-11-13T02:39:07.690119Z" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, State: STOPPED, Info Flags: ACQ_SCOPE_DONE_PATH_0, ACQ_SCOPE_DONE_PATH_1, ACQ_BINNING_DONE, Warning Flags: NONE, Error Flags: NONE, Log: []\n" ] } ], "source": [ "# Arm and start sequencer.\n", "module.arm_sequencer(0)\n", "module.start_sequencer()\n", "\n", "# Print status of sequencer.\n", "print(module.get_sequencer_status(0))" ] }, { "cell_type": "markdown", "id": "16aa1e81", "metadata": {}, "source": [ "Retrieve acquisition\n", "--------------------\n", "\n", "Next, we will have a quick look at the input signal so that we can compare it to the integration results. Since we are integrating over a DC signal we are expecting the integration results to be roughly equal to the average DC value." ] }, { "cell_type": "code", "execution_count": 18, "id": "2065302b", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:07.701396Z", "iopub.status.busy": "2024-11-13T02:39:07.700616Z", "iopub.status.idle": "2024-11-13T02:39:08.492356Z", "shell.execute_reply": "2024-11-13T02:39:08.491702Z" }, "tags": [] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA3oAAAIsCAYAAACk89smAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3wUdf4/8NeW9E4oSUggCaF3sMPRRWkqqCdFERX18FC/WLjDn1+501NPPb/eHXd6emdX9Gx0QQWli0CoobdAQggtFVK3/P5IZvOZ2ZnZ2ZLK6/l48NDszs7Mzk75vD/l/TE5nU4niIiIiIiIqMUwN/YOEBERERERUWAx0CMiIiIiImphGOgRERERERG1MAz0iIiIiIiIWhgGekRERERERC0MAz0iIiIiIqIWhoEeERERERFRC8NAj4iIiIiIqIWxNvYOkGcOhwN5eXmIioqCyWRq7N0hIiIiIqJG4nQ6UVpaiqSkJJjN2u12DPSagby8PKSkpDT2bhARERERURORk5OD5ORkzfcZ6DUDUVFRAGp+zOjo6EbeGyIiIiIiaiwlJSVISUlxxQhaGOg1A1J3zejoaAZ6RERERETkcUgXk7EQERERERG1MAz0iIiIiIiIWphmE+gVFRVh7ty56N27NxITE5GQkICEhAT06NEDs2bNwtmzZz1+fvbs2UhLS3N9NiEhAcnJyRgxYgQ2b97s9pnS0lI8/fTTyMjIkH2mQ4cOmDBhAvbv3y9b/siRIwgLC5Mtq/yXmJiIzMzMgB4bIiIiIiIiUbMYo2e32zFy5EjccsstWLt2LVq1auXqk1pcXIwPPvgAgwYNwp49exAeHq66jjlz5iA2NhZZWVmIiIhwve5wOLB582ZMmzYNmzZtQlJSkuu9p556ChaLBTt27JCNjXM4HFi5ciVuvfVW7Nq1y7W+y5cv49prr8XatWvr4SgQEREREREZ0yxa9BYtWoTU1FTMnz8f8fHxsoGHMTExePzxxzF27Fi8/fbbmutYtWoVXnrpJVmQBwBmsxmDBw/G5MmTsWTJErftvvHGG24JUMxmM8aNG4drr70W69evD8A3JCIiIiIiCpxmEejt3bsXw4cP111m1KhR2Lt3r+b7c+fORVhYmOb7KSkpyMnJcf1dWVkJq9WKkJAQzc8kJyfLPkNERERERNQUNItALzc3F4mJibrLJCUl4dSpU5rvz5kzR/fzWVlZyMjIcP0dEhKC2NhYlJWVaX4mJycH6enpuuslIiIiIiJqaM0i0LPb7bBYLLrLWK1W2Gw2n9a/dOlSrFq1ChMnTpS9PmnSJDzyyCPIz8+H0+l0vW6z2fDdd99h1apVGDBggOwz58+fx5w5c9CnTx8kJSXJksbMnDkTubm5Pu0jERERERGRUc0iGUt9KSwsxJw5c7BhwwYsXrwYcXFxsvdnz56N6667DomJiYiNjUVISAicTicKCgpgs9nw1VdfoVWrVq7l27ZtC4vFguTkZHz77bdISEiA1VpziIuLi/HJJ59gzJgx2LFjB4KCgjT3q7KyEpWVla6/S0pKAvzNiYiIiIioJWsWLXpKhw4dQnp6Og4fPuzT551OJz7//HP07dsXcXFx2LFjB/r06SNbprKyEqNHj8a8efNQVFSEwsJC5Ofn4+zZsygtLcV3332Ht99+G0VFRa7PJCUlYc+ePXjyySeRnJzsCvKAmqQxv/3tb5GamuoxgcvLL7+MmJgY17+UlBSfvicREREREV2ZmmWg17VrVxw/fhxdunTx+rM5OTkYNWoU3nnnHaxcuRJvvPEGYmJi3Jb7/vvv0bVrVzz88MNu74eGhmL06NG45ZZb8M9//tOr7Xfv3h3Hjh3TXWbevHkoLi52/WPCFyIiIiIi8kazCPSMjL+z2WyyFjQ1W7duxZAhQ3DXXXdhzZo16Nmzp+ayBw8edGvlU+rduze2bdumu4xSeHi4boIXoCYRTHR0tOwfERERERGRUc1ijF5ycjLy8/N1l8nLy0OHDh003y8qKsKkSZPw+eefY/DgwR636SloBACTySQLQJctW4bw8HCMHDlS8zPl5eUeM4gSERERERH5o1m06PXu3Rtr1qzRXWbNmjXo3bu35vuvv/46pk6daijIA4D09HTs379fd5n9+/cjLS3N9fe5c+fw7bff6n7m8OHDnJKBiIiIiIjqVbMI9G677Tbk5uZi/vz5uHjxomyqg5KSEixYsAArVqzAQw89pLmOzMxMjBs3zvA2b775ZuzYsQMLFy506zbqcDiwZcsWvPLKK5g5c6br9VGjRuHLL7/EunXrZPsIANXV1fjoo49w6NAhDBkyxPB+EBEREREReatZdN20WCxYvXo1XnzxRQwdOlQW7MXGxmLo0KHYuHEjIiIiAABr167FzJkzsWPHDtf4toKCAtxxxx268/GNHDkSn376KYCacXKrVq3C7373OzzzzDOoqKhwLWc2m5Geno533nkHffv2db3esWNHfPrpp5g/fz4OHToEu93uei80NBTXX389VqxYgZCQkMAdHCIiIiIiIgWTU9n0RE1OSUkJYmJiUFxczMQsRERERERXMKOxQbPouklERET1Z96PmXh9S1Zj7wY1Q//KPIjhH6/CJ3v1p44ioobXLLpuEhERUf04UlCCP2/eCwB48rpejbw31NzMWrkFALAj/yLu7t2pkfeGiERs0SMiIrqCXa6qdv2/3eFoxD2h5qykstrzQkTUoBjoERERXcHMJpPr/6sZ6BERtRgM9IiIiK5gYqBXZWegR0TUUjDQIyIiuoIJcR6qGeiRF5i4nahpY6BHRER0BRPL6uy6Sd6wM9AjatIY6FGTsjP/IqYtWo/sotLG3pVGs+ZEHu5dsgGF5ZWNvSvUzP150x68sGF3vW/H5nDgN99uxmdZx+t9W4Gy5NAp3L9sI8qrbY29K43OJgR31fbAF9y/PpCNmcs3ocpuD/i6m5o9ZwswbdF6HCsoaexdaRA2VgyQF8qrbbh/2UYsOXSq0fbB6XTiyR+24V+ZBxttHxoSAz1qUq59bwUW7juOSV/91Ni70mj+smUfPtp7DCuO5jb2rlAzdrmqGvN+2oHn1u3EhbKKet3WwqzjeHvHYUxdvL5etxNIt335I97ffRQLth1o7F1pdGKrTH206N3x9Vq8u+sI3t5xOODrbmoGffgtFu47jglfrGnsXWkQ9VExQC3X//2yD+/vPorbvvyx0fZhU845/N8v+1zTgrR0DPSoSZEKGTvzCxp5TxrPpdpU55er2NJAvqsUxlrVd4KNs5frN5CsT/mXyxt7FxqdzVG/gZ7kTGlZva27qbhUe98+cKG4kfekYYgteiad5YgA4GhB4/fWOlfPFZ9NDQM9oiam3Gav/S8DPfJdQ3apas4JGaxmPgbFc6U+KwWa71lCWsRKAiJPmkK5RuxC3pyfXUbxCUfUxJRXS4Feyx/PQvWn0iaOu+I4Gi0WE9sh7GKLXj2eK44roFB1pRFbgJ3gb0z6mkK5RvZsvALGmDLQI2piKmpvhBVN4IZIzZdYa3klPMx8xUCv4bpuUsuj7DlgZwsf6WgK5ZqqBhzW0BQw0CNqYqSuDU2h5ouarypHw9VamppxsGQxN999DxR51k123STjlF03mYWT9Eg9lhpTlaNuHxjoEVGDuxJa9PacLcC9SzbU2zQaO85cxL1LNiCn+HK9rL85qBTOH63C+/7zRZi+ZAOO6qSC/9+1OxosM+XuswWYXo/nhRpfW/SyzhVi+pINOF5Yv/t6sugS7vjqJ9y3dCPKVKaC+PHEGdy3dCOKKnyfjqW+s25KPI2H+VfmQfxuzXa35XbX3i9OFl2qt317f9cR3PbFGkxfsgFZ5wpl732+7zh+u3IL7D4cmxc37sarm/fC5nDgkZU/44v9JwK1y02C8nxpjHn1sotKMX3JBuw+2/STuJ0qvoR7l2zAjjMX/VrPVwey8ZtvN6Pa7sDlqmrMXL4J3xrI1L3mRJ7f9wsAeG7tTkPPhSMFJZi+ZAP2ny8CoD1Gb+vp87h3yQbkKRI2vfHLPvxx/S7N9R+8UPMMO3RRnvzow91H8fh3v8DhdOKP63fhjV/2ud4rE4LNyhZczpJYG3sHiEQhFrMsW+CVyJWMpQXP7zXw3WWwOZzYd6EI2x+YUC/rB4DjRaXYcO/YgK+/ORBrKrUK70M/XokLZZXYcvo8Dj8yye39wxeL8aeNewAAs6/qZqjlzul0+tzCN/A/y2B3OnHoYjF+uX+8T+vwlq/JWAZ9+C1KKquxI/8ish6+LbA7Jfg06zi+PngSAHBH944Y1zlF9v7IT78DAIRaLXhr7PU+bcPWQGP0PIUAUrrziV074Lrktq7XB/xnGRxOJw5cLMbWejov7l++yfX/Sw6fQvHT01x/T1lUM23Irzq0xeSe6YbXebGsAs+u3QkACAuy4q3MQ3gr8xB+3SMtQHvd+JQteI3Ronfblz9i99lCLD+Sg4Knpjb49r0xfckGrDt1Fh/tPQbnszN8Xs+dX68FAPRr1wp5peV4d9cRvLvriMd1jvr0ewBAbGgw3hh9jU/bPnSxGC9srJmf9dGru+suO+G/q3HoYglWHM3FxSenaFZgX/v+CgDAhfJKrJg8CkDNufTED9sAAPf37YyUmAi3z435bDWyiy/hx+wzyH38167XZyzbCADo3joGf6gNFB+7ujssZjNKK6tdy7FFj6iBhVotjb0LjcrpdF4RLXpSwXJfbS1ffdmrqJm/kogVJlqF9wtlNbW6RzRa9MSHoFprkkRsgfEnC5/UGpBVz+eFmDDC166bJbWFhfo+h6XpVgD9e8KBC77vhyzrZr226Om9V/fmxXJ5a4P0eylb2upLiVAQFCn3yxPx+lG2OLQU7l03G75Fb/fZmvOisKKqwbftrX1+XKdqsosv4bgPPSCyi31vHS8WjrOn5DuHLtY8Wwpqrx1P5ZqDwrQk4rLimHOR9D1Oa0zdIn5PaX2lwj21UmO9LQkDPWpSwoKu7EZm8aZzJYzRMzfjsV1Nnfhg9LXWMshS94gQH456AtH1r76HzYnHpqknYxHvA3qFaH8CNFnXzXpt0dPe/2oDY0rr635hNMV6kJetv2JBtagZBCG+YDIW73h7DnlSYbP7dMytftxkxeDO2217KteIuyWO5/Pm2tdqVS5XCfTYokfUwEItdS16V8L8Jkrije3KCPTqd/3NOUmIvyoNdN30RHxgllYZ60ociEChvisAxPTaTT0ZizimRa9bnPidvGVroMQ9erd08d6nFdDW12lhtLDnbTdf8R7eHFqbfKG83hszGUtTr7QBAr+PFTY7bE7vj7nV5HvxX7w8vf29PQd6dcdHrCjxZuyn2DVTvC9K95hLbNEjajxi1029rmItlXhja8ldNyUmNP0Hc3MViOkVxELcJZ0WPfERHIga0voO9MR9bOqFQ/E+oPc7anVtMqI+x+iJCUz0WvQqDCQPqq/zQu9eK+6/t60g4nqLW2ig1xS6bkriwoIbbdtG+TomWEtjt+h5erYor1lP5Rqx4k2s5PLmuXJJqJQsrqy77irsUoueb+ttrhjoUZMSYvW+q1hLItZ2aWWnakmaeGNKsyafMN23wpf4ECzVGLcEKCbcDkjXzXpu0ROCoqY+wbPhrpt+FFgC/fuJjBb8xfud1r2/vs4LvXutWDD1vkWvbr1FlS010GvcFj2xgiMuNKRBt+0LsTt8IFTaHIZbu8ReUv7sh8OLMdnKijQxyZxary3xGi83WMmlJN4/zl2ucNu2vMWv5VeoM9CjgDt3uRz3L9uILbnnAACf7j2GOd9vhcPpxIsbd8vS3CqJNw21rmJOpxPzfszEv3ccdr328Z5jeGr1Nt2unmtO5GHm8k26hVU1mWcu4LYv1qim/M46V4j7lm7EiQCmV6+PFr0qux2PrPwZ9yxej0dXqacIX34kB7O+/dntpne65DLuX7YRO/O1U0Ev2HZAN/2xHotOwSn/UhnuW7oRv5w+DwD4ZO8xPPmD/HeWvtviQyd1t/P8+l2aqaBLK6vx4PJNWH08DwCw9PApPLxic6M/AKrtDvx25RYsOqj/3bQYybrpcR9kXTe1rx1xubzSMty/bCN+rr3+1fxn52HM+zFT85o1m4BVx3Lx8IrNAW/ZtzscmLXyZ9ffWgWVS7Upy6XzwpOSyirMWLoBU75Z55YiXLIw6zjGfvYD7l68Hg+t2IzLimP67E878HbmIdlrFbJAz4F3dhzC//tph9u6DxeU4Ltjpw3tq+TD3Ufx9Optst/vvmWbcKGsrnC05kQexn++Gq9u3uvVusV9log/96d7j+F/vv/F9TuLiU60zjV/wzzpfrHk0CnXa5eqqnHPkg2qy1fa7LhvWV02TiOtIGLBVsrWCRgfo1dcUYUHlm3C2uwzhpYvLK90naePrPwZiw6eRP6lmmtwW94F13LZRaW4b+lGjwltdpy5iOlLNuD2r37C3YvXe7wXViuuH7vTiQ2nzuL+ZRux4dRZTPryRzy6agtWHcvF5G/WYso36/DjCWPf7aWNe3TLCwDwl5/r3o/wYYz/z7nn8MCyTTh/WX7OP7h8E0oqq2B3OPD4d7/g833HZZ/bd74QM5bqT69yoawCDyzbhKmL1uH59bvwWdZxWeKryd+sxf3LNuKM4n5RXm3DQys2Y8WRHDzxw1Z8vOeY5jZWHT+NpYdzDH3Xy8K9VKvS4q3Mg3iuNlOsSDov7vjqJ3yaVXcs1AL7ksoqPLh8E9acyJNdMw8s2yRr079p4Q/4aM9R2We1um5qtfIrA8k3ftmHeT9luv4+L9zL1JKxqFWQKcsLX+7P1iw7NQdXduYLqhdz12zHh3uO4f3dR+F8dgburn2I9m4b50o1/WD/LogMDnL7rHjTUBaCAGBz7jn8ubbA8eCALgCA6Utr1n9jWhJu6tRedZ9e2ZyFH07kYVjHBNzdu5Ph77Jg2wEsOZwDIAcz+3dB51bRrveuencZKu0OHC0sCVgKf7EGOFATi7694zDeEgqPVye1xvQ+GbJlJvx3DQCga3w0/ufanq7X71myAT+dzHf9lkqVNjse++4XAMB9fTPQISbSq33TKzfNXvULvj54Eh/sqdm2VBgblZaIMRnJAID3dx11pSzXSit9vLAU82sD0d9e1c2tVeDlTXvwn11H8J/a1NS3fvEjAKBHm1g8fk0Pr75PIL236wjezDyINzMP+pSGW2y18rU7nvg53UBPWO7+5Zuw91yh5jkDAA+u2AwAmNStI65Oau32vtlkwpjPVgMA2keF47kh/XzYe3VLD+dg+ZG6+aa0asOfW7fTcMpyAFh17DQ+rC2QXdu+tew6kty9eL2soJMYGYY/Du0PoKYg9eKmmqksHh7Y1bWMeB+odjjx2Hc1UxDc3q0jBiTGy9Z/82c/eHWuSCnI7+jeUfb6U6u34YNbfgUAeH7Dbqw/dRYrjubikau6qd639YiBtPjdpefC37bWFKjErHlaFXL+jrndlHMOb2Uewqacc7i1awcAwAsbdmO1RuDxrx2H8OWBbNffRhpOLGYT7LUt6DkldfN4imP09KYgmbtmO97bfQTv7TZ23v3+x0zXeQoAb2UewriMZKw4miu7Bid99RN25hdg8eFTKNSZguC691e4VQylxUbi94P6qC7v3qLnxJCPVgIA3t9dV4j/x/aDrv//fP8Jj98t/1IZ/t/amgqNRwZ2Q4hGRu6/b9vv+n9fKkdv+OBb12c/nTgEQN0UBDGhwbgqMR5/33YAf992QDa1xpjPViOn5DK25V3Evt/cprru2au24L/7szW3Lb13sbwSS3490vX6qmOn8e+dh/HJ3mMot9nROjwE9/RRL7d4k+RHvK60rqRHaqc4+XWPVPRqG+d6ffCH36qOr1N7try4se6ZGhlcF2a8t/uIbLkfTuThhxN5svKIPBlLXXlIq7IyyGKGvXa/qux213QMEjHQk/ZfPkZPvt7sIvfywq+/WQsAuK59G0zzovzYVLBFjwLulMYk1eKDPP9SueoyYqFAbT49cd3KLlfiBa0kPQByS7ybQFtsVVSOUZL272AA02bLk7EEpiUjR/GdtX4fAMhV1Czu8jABrfg7+pI8Rm+MXqbGhLLSlAAAkHdJveVEJB5HtXFmJzQmYa7vibA9Uf5u3hJrKn3t1ifW1pdWap+PYsZHT1NaiK14WgV6MRj3Jw24GvH8AbSzxm3P825C48vCvUIt8Ua13eE2Qk0898RWNPEYieevWKjyNtW/HuW5dkw498UWVV/GmYkFNOmerVY4FM8brcQ//nb1llo0xN9H7x6Xrbg3GOmWqDXmUzyOel3ttgqtcEbsV0nXrzZx+M78mtc8BQZqBeq959y3IXEfoxeYVg9xnJVeJZN4b/OnF8yRQvcpZo4UlGg+L6VrRu34S/SOm0icUgCoew5Lz9QLZZWosOl3eTSi1MNULeJ6lfcwree7Wo8IcboHb7s7y1r0DFRWiteb2rQosq6btcdQb9qGSp1x6Xka5damjoEeBVybiFDX/zs00nZrdW2SzeekcmGLNyrlRag31kbKSnXGywtVrFHSamFrHRaq+rovGiIZizeFfk/jl84IgZZesg4tegU3I5X33j5E1AILsWuJ+Hs3do4Of8eOBSQZi9Gum16cU+I6tTJeig/7QA+hC1aMTdEqdBdW+D5nmtqxOntZ/94jHhexNVa8D4jXWCDH0pUp7m1iUixx+76Mmxbv6VJQrXYs9O7tEn+TN0m/kbgtb76TkfGGRu5JeteLt+ed2nkQ6PGAevuk3L4v48XUiIGx3pAL8brzp3JUa9oDf8a+Gr1GlfckZVdOQF6p6uu1LwbPFSrJm8Tz22g3RbXAXszo6W3SFzFwk/dmUN8fcf1qFVFid1XpXiYGrcoGBXFvvR3q01Qx0KOAaxNeF/iUCA8c8ULVCrjEFgS1LHIF4jiOSuOBnlTAMNICJCo3EHi1Dg/cAHB5MpbABHrK22yVQ3u9ymU9lWvEGi5fbopGkyto/bbiTV6r4CArKKuM9xILZuJ5edngdAL1xb39xztGJkz3xGjWTW8KHuLvodX6UZ+ZMMWET4B2gcbbdPhiq6bataB2zxO/pVjIqtC4D4hBib8tJ+L1ohwHGWJRD/Qu+XBN2FQSvahV9Im18drJWLzevIz0TLlUVe36/t7ct4yc50b2UW893p53asGnL7+TngKdQE95Hhq9b2pNSi8xGowHqkUvSOOH00q/b+RUNHqNKrulqpVT8kqFQM/H+7l4HNUqrsXz0mgSJbVzWXwuG7mXi/cirTF6WgG3mFQm30NlmvSdy3Va9JQVdv5kM24qGOhRwMWF1qU4Pl5Y1/VFrG3TCrhsslpt9wtbLCyVVlXLlte7L0k3LfFmaYS8wKXehSo+LHCBXn206CkPi14NpXLciKdWJbHAZnSeNZFeoCduWxwoLxJrYbWOl/hAUyvUiQ8K8ft42/obaP5mKW/QZCxeFDzE30Pr5xfLXHop+X2hrLnXKtB4W+Cu9NDypRbciFuW3Wuq1e8Dyq5XakGq0W5d4m+rDPTEFj2tQNOoapUKB7X7v9gSVF9ZN6VMtDaH01WA1/tOys0ZKbgbadHSuwd7CoCUApnlUivoLSzXvhaU14/RLueeKl2NdN10OJ2y89ifylGtLJRq5RAAiArxPFbVaLAkVqwA6uUU8XjpnT9617+nrpvitao8j6M0xuaqfUfxWOolXJOIv5u3WTfF3fRUvquw2eF0OnUDSHmgZ2sRrXoM9CjgxDEvhwvq+p4XCA8L7a6b+i16ebKugjbZRanbddMhdd30tkVP6Lop3BzEbhRaN0BfKOeNqY8sT3oTK7u36HkT6AWuRc/pdMrGUp3UGKcldv3T2r6nrmdi7eMpoZDibetvoPnbdbPSwEPSE8PJWFTWH6qRPEGeRVK9q1B9dt1UFky0CuZ62T7VClNVstZP9896LtgKte0aLXqywm9ltWqBz+gEwOJn9QI9v7tuqsy55akSpb6SscinC6lNta5TQaX8mY0U3I1UegRyrsJAzlun9XzUq/RQfhejgd4ZD4VyeVde9d9IuW1/nplSzw7xvmuCvBwiXvdiUiKte4XRIFzZdVO9Ra/uNb37ud75IF5Xat1cxetDue9aPZdUu24KwZ2RK1bscikP9NQr10Xi/cnTPbbcZke1wyH7jZWBvHj/vFRVLe/u2kynYmDWTTLsl9Pn8cKG3egUF4W/3XQtVh/Pw9+27Ud0cDDCgiz407D+SIgMl92EDl2sG+As9vM/VXIZv125BefLKvD4Nd3xwe6jeGhAV9nFfPtXa/FAv8742+hr8PHeY8gpuSyrsZm6eD1+mDra9bcYYL6deQhrT+bD5nQgISLMdfHmlZa5ZTz7Ofcc3t99FC8PH4D48FDklZbhuXU7Mfuqbm4tbH9cvwsJEWHon9DK9br0fV/dvBdBFjPmCNn25q/bieSoCNzdOx1Prt6GW7qk4OZOya73t+ddwNs7DuHF4QOwOfecKxuh5L1dR3G4oBivjrzKtc/Vdgce++4XnCy+hE5xUXhj9DWyh9RTq7fh2qQ2uKtnmurv+GbmQRRXVqFfu1ZoEx4qyyr36s9ZOHOpHJ1bReN/f9XXrRD84e6jOHSxGC8OH4DnN+zGy0LKdbXC2Xu7juBYYSn+NKw//rB+F5KjImQ3UrMJ+P7YaSw6dAr/d+PVCKtNj11aVS3rWz/m89Wu/3fCiZc27kF0SJC8FaWyGvvPF+GzfSdcrxVVVOFDIX2zWkFVbOE5LCTWOXOpHJW2mixeYzPaY1znFNd2nlq9DZN7pmF4aqLb+rTYHA488cM2lFRW4UJZJW7t0gEPDuiCrHOF+MP6XegYE4m/jKr7ncXz+eylcvy/tTvw8ICuCLGY8fdtBzD/V/2QEhPhOhazr+4OAPj6QDbWnTorC2Cl6+rbo7n4eM8xBFnMeLg2a62aD3cfxYGLRegeH+t67WJ5JR5Z+TPKqm04X1aJEIsZz/2qL/olxKs+hCtsdry4cTf+3+C+stfVHt4bTp3Fv4TMsMoKgP/sPIxTxZfx/LD+mvsMwO1YfHPwJP67/wTCrVbMvrobBia2dguE/rx5L06XluH/brwa8WEheOanHR4rhJQFrRlLN7gybgLy82zjqbN4bUsWlnlIga5W274w67hmZUpNtyKVccyVNoRaa66jX06fx58370WftnHo0zYO7+8+itu7dcR9/TrLrp1ixbWr1aJXXFGNOd9vxaCUtrije6rmd3nt5yxYTCbEhQZj6ZG67732ZD6mL9mAj/dqp4uv+W7qBee80jJ8lnUcYzLa43drMnF37074VYd2+ObgSby36wgmdu2AB/rXndcniy7hhY278T/X9ECvtnGy3760qhqtw0N0a+yVBTubw4G//JwFoGaIwspjuYgICsLT1/dEt9axANynG1BT7XC4zotrk9rgmcE1GS2VlTuPffcLRqQmYMeZAnSIicDM2u/mcDoxd812DNC49nyxNvsMfiNMOyKSnt0HLhThLz/vw7OD+yAtLgqXqqrxwPJNsmV/92Om2irc3P71T7gxLQkvDOuPrvExKK+2yZ6RpYquvEcKSvDK5r24r2+Gq7zQNT7abb2VdgfCa+/pTqcT/7t2J9LjolBSWYXtZy4i1GrBH4b0w95zhVgmnJvHC0vxwLJNbte+MqlV5pmLePXnvbLr8tO9x5GZfwF/GXU1IoODcLywFC9u3GO4V0iIcoyeyufE1/R+8//5fiv+cfO1KKqowu9/zES5zY7UmEg8P6y//L6Ucw7fHzuNVcdPu8oL4n1NeW+JCw3BCbhXuEqB5Zf7s7E59xxev/FqQz1tRFJ2VSXxs9OXbsQXB7JxS+cUTOvdCdvyLuBfmYdk5YT/+X6r7nbKbTa3/amy27Er/yKe37Ab6XFRGJ9RVz67/auf0D4q3PV3c53bmYEeGVZYUYkVR3NdQc789buwWZgrq6SyGl/cPkwR6Km36H1z8GTdDaI20PjPriMIEwoYDqcT/955GLd0ScHD37o/gI4UlOCPG3a5/pYSrgDQfGBV2h0orKhCK6G7pZRe2WIy4a2x1+O+ZRvx/fE8vLvrCDpER7iW25F/EW/8UpPK+Zs7hrter7I7UFBe6XrA3d+3M2JCg7H/fBGe37C75rtXVKpOA3D1e8tr36/CNyrzpT30bU3gNzIt0RUgrj2Zj3/tqCsUT+6ZhkEp7QAAiw6edO2jVqAHAJ9mHZfNhSOSCmEz+mS4FTykdOwpMRH4g2LuvEvV7jdBqRDQITrCdSxEZpMJN332AwCgXUQo/lCbal6ZGVEcm3mq+DL+d13NNB3/T0j5XVpVjeGffOe2jU+E76lWqBODWTEL4tlL5ViTfQZvZh7EptyzrkBv/vqdeGfnYbyz87BXqew/2XtMNjfPiqO5eHBAF7yZeRBf1/729/ROR7+EmpT54rGf88NWfLbvBN7ddQQm1HT5yym5jH+Pu8H1kPzNwK6wms244+u1ACA7x6WH9jghYFYWtsUKkLk/bse5yzWVMJKlh3PcHv6xocF4b8Jg2fg00bNrd2JKz3Skx0W5XlPrjiOlY5coa4HrpmPo4Do+SieLLtWlY69Ni337Vz+53pem6VALjj7eewyDU9qie+tY1/QtImXlkLKw8KFiniuxQPDKz3tl0zloEYMbKRietni9fBlZ4demHuhVVbsSYv1lSxYWHzqFxcK8cSuO5uK+fp11u39JXcmcTqcsQdH7u4/gp5P5+OvW/Zrn/vnLFZi7Zrvqe2culXsM8gDgssq9RDJ18XrMvqqb7Bp8qHYevhVHc2WB3r1LN2DdqbNYmHUcZb+/x238jVTDr0VZsDt3uUJWuSVZcTQH+XMmw65oLdBSbXfg1Z+zsOxIDpYezsHDA7ogPjzULSPmgm0HZPcMKdBbc+IMXt9SM39cemwUAkHt3imxOZxwOp0Y+9lqZBdfwi9555H18G1YejjHcPIVpaKKKnx5IBsdYyLw2qir8Y/tB2XPSFmlRmU1blr4PU4UXXJNI/GfXUdw/onJbustr7YhvLbCcGveBdeUJaLTpWVYpZhz8nBBCQ4Lc9wBNUG7MtB7efMet+tZek7HhgbjzyOuwpRF67zKnhosGxNrkz3vJEZb9N7MPIibOiXhp+x8vLOzbr7hu3qmurXMSs/emvfTZAGkshus1nkt7Ys4BYHY3d5Id1pxGg6xBVXswl5WbcMX+7Pxxf5sTOvdCdfUlp28UWGzu41NrLQ58MYv+7Go9h7ZLiLM9V5hRZXsmDXXbpzsukmGSV0UpZO9RJHZ60BtmuFqu9h1s+7GKd68tLoXqL2ulf4eAA4LLYZS4ctTdwmtbqNSl5M9Qppv8SYljhMT0wdX2h2yG4CUUU5suVBLdy3af75I930xRbByigjxRuRvSn7R6dLLmuPE1FLo690EDwldeEViy43Y+qv3G4rfV8wuZ2SMoFqNnFhoF5MOOFF3TueW1J0zWtM+eJJT4n7eVdntsuMmfjfxwXpASL8tvXrwQrFbpkKxa5F4vRnpuikWaKSECuK1pxYYSPurV8OsLLxWGOhSKhYexeOg9xuXGExUotW1sbCiSjbFgUi5n57muBR/0wKd8U2yz3gYP6NcprSqWvW7iMvobVuvi6fUGlztkKcEOmZgypFA1HrrdS8HgOPCeel0OmVTTYhd9/bVXr/SfVzWoldZLQti1SgTEGndX8/W3p+NdpGudjjkiTGkbIAe9ke6zsSugmUBmoZHJM4X69q2w+Ga6mRf7fPK2+mK1EgZX5XHVnmuq5UDpFZpq9nkOmfFa0cr062nSeNd262slrV8V9ntsmeBklQeyfLwPFcSE0RpdWkVuyWKrca/7pHqtuyRghLZMASg5rh401PBveVL/dxWG6MpflavC7yaQCTXiQsNxsvDB7i9Xl5td+uyWmW3y6aV0ptWqbm26DHQI8NcgV7tya486aXByeLNQgzE9DJ3SdQelMdU5reRiH3bXRmVPBTCtLpTSElVtLodaH2vKrtddiykQFIWQHiY88qbJAPKfuhioTKQ4zXyLpVr1uKpZVZTFsLVkjAoac2Zo/c9xMKamCTAyE1YLVAQzxfl3GTS73yxvNL1wA/kzf5SlU0z2YV4CNTGgcaFBbuNOdI6z6rtDlmBRY34AJSOsdbYyLpt1uyv/pgR7SBJ67wQx02I54VeBjcxyNULPLUKLHpZRZX3FE8FECNTBbh9Rhw/o3EPU7ZySN8lMtiKjNpWU3E9Wtu2Oxy6LXrS9ef2vQ2M/wvEOBatFmKJmCFRWZEgjqmJC5WPK5KNo6yu9tjaoLxfKAvPSmIlp+5yDqf8elNJ+65G+j2lFitAe05af6h1iVQ7JwMxjlm61yi7LxrJuin9nsEWC8JquyuLx1DrOaI1+bqScghBpd2h+52lCiojCdqua99G9XWt9atl3WwVFoKH+rt3wS8or5IlxQNqfj9PXUnliW3k5770OymnS1De320Oh8cymB7x+a49d5/+/WFSt46YrNKjqcJud7s/Vdodssp/vXlbfZlCqilgoEeG1QV66oPYpfe1Ejh4Cna0iJk7lcRAT7qAPRU0xIta7CYQXzvYWDavmnCzE8exiC2VlTZ57aw05YD4mqfJjb3JMaDMLBXIlOvy7Wg/0NSmKVA+jMXf4bJGrZ74teVJOrS/h3izFcd9GulWobaMWHhVnqPi7yzVhvrafUPtJy6trJYnu6gUAz1x4L97L/u40BC3cSxaE7pWOxweC4TSfjicTlcB6aTGZMHiNgH9wEr5sJZNgutw4LLKw1O8LsXjozcnk0Ml6YcarYBXL4BX3lM8zddVanCyZ63taxVwlOuVCkXBFouros1IAbnCZtfMJgjUHX/l9zYSxAWiIsRTSnOxxdet4kvYvrKwKx/T6z5eR7YNRasb4Lniw3CLnt0hz/xX+znPgWfN/hhNuCPx9rkQbHEPhMptNrd7mLdZrNWIwZpISpYDaJ9TYpAYFlTzeSPPEa3nkVJpVbVs25erbbLeNUrSfdNIoCcOUxFbsLWCsTOX3LtuBlvMqpWAhRWVbud+aVW17jMdkN/HlcGa9Dspv5vy3m9zOA1VCGkx0qLn6RkcGWx1Bf6imhY99+8l3kNOFOm16DXulEu+YqBHhklZpsqqbTUPQcXFJr2v9bDztbXpuM6Fp5adzlMhTLyo1bJnii164j6LQYU49rDKYZfVItcFBHWviV2o1DL2eVMDplewkc1ZVXvDtPt43JUPBXG/1Wq2lOeD+DtoBflac+bojfso1ujqaKS2TW0codhdStnVTfydpUJNIFv0pHFCrv0TziMxcFGrgY4LDXZrOVKbaBeouSY9ZiSrPQfFQraytURJ2l+9BBTK4yUe7yq7Q7VgU6VR4NA7k8Vd0Gut0nqvtNKmuX7lPcVTgVy6RwK+BXpGCjiXhGQswRYzIoOCal/3PNF0uc2uG0xVuwIPxfcWfgut1n6jFSHKTIMiT103xd9QGWxc0gj0qu0O+VyHVfotelV292fcKQ8VH0YTo1TZ5WOFKg1WUkrniLctJuIxMdJ7RNm6Ju1btGJKAU+BgxFqLXoOp1PReq3+TBfP/9DaQFE2BtiH1nuRMtA75SHQl655I4GemPBIvBa1jmlhRZXr3il97yCzWXWah8LyKrcpGy5V2XQD82q7Q7frpvQ7xYeFyl63OZ2y7tI1LXq+B0RiBZRWWU6v1Q2ouX9Igb+o3GZzu3YKyitlU5roVW6y6ya1eFEhdTUkBeVVbgGddLPSK2T5Qm9ciNhS5kuLnlomK6vGvC9iN0Hxc24teioBgdhtVa02US/5AKCcK6Zm/xMjawYNiwU7m8qN2tvaX4myAC4GkWo3PL0WPa1aSrHQUWmw66YYfIgBZImBm7Bqi56wn4WK7sXifkuBUqlGMOaJWgVITWFTveba4SGwDrFY3FpvtIK5arvTY6Gswofr10iLnvKYVygKYmr7Jba8lBlIsQ3Ij6/eclotWd606Blp2ZKuS73AR6w8UaY+V6sQuiT7vW2u4xRiMXvfoqcTTEldEJXfUzzGvrSMitqGh2q+56lFT/x9leOOxOszQmjtyK/Noivup16BtMru3qLn6Wo3PkbPqZi0uTaw9lBAls4RT5WZ7p+T37M8zbWoFoSX2+yy1qPLVdUBmWtUDNYkZdU2Q+exdC2HWCyugr14DLWmZTA6ofylKpvs2GXr5AsA6p5bcWHBussB8qlCxHuSXoWcdLyrxUBPo0VP2apWWlWtO0av3CZP7qTW8gW4T7NgczgUrahOQ/dHLVrJWERiBaya0qpq1el9KmzuXTeVQaPevjfXZCzMukmGhVgssJpNsDmcuHvJerf3lx/JxaKDJ32es0uL3oUnJk8ot9lQWF7pygyp5cylcmQXleKlTXuRFhvper3SFeip13hqzSWkrPn9v1/2If9SueymKgYnj6zcgkq7Hf8rpJ331JVkxrKN+O74aZhNJtdA7y6tonHmUjlKq6pRVm3D3DXbsf1MXaavcpsNUSFBPgfeygfOQ8LUD8UV7je8FUdz8fTqbXhl5FV445d9ssHzWkGGeKjFgqdeV6MSjRY9rYH3IrHAcKa0DPPX78LPp88L2615UMeEBLmlnN9x5iK+P54nG1x+ucomq1H9V+ZBFFVUIT0uCtvyLuCVkVe5glnV4FjZdVNjjJ7auVdht7t1b9Kqsf1gz1FszDmr+p5k/OdrMKRDOyQJ6aQ9ySm5jL/+sg9VDu1rdOri9dh+5iJeG1VzLJRZN9UKNloterIxJNU2PPHDNpRWVeO3V3XD/cs2qS4nenjFZlkmOtH2Mxfw08kzqu/NWrkF7SJCEWQ2I8hidmVo0/P5vhPYfa5At4vkJ1nH4URNRc5PJ/NdrxdWVGGWSuZgsXguTq8QbLEgqrZ776yVPyMy2Io7u6dqdjUa89kPSBXufUrVDge+OXhSN115uc2OsCAr3s48hOVH69LUG73ftI0IkyVBEFXaHZi/bif2nS/C09f3Ut0/yYyl8vv9PUvW493xg/DhnmOy8d1LDp/CP7YfdP19tKAEb2UehJZKxdhrI4y26Cm7bt67dCO+m3qjxwLyPUs24MNbfoV7l+o/45SU36PSbkeo1YrDF4vx3LqdSIgMk72vbA0Cap7DYnBy1zfrdHvbGFVps2NzzjnM+2mH67XhH6+StaxoZWr908aaTM7BFrOrYC8dwyMFJZrZt40qq7Zhf21CHwCYqZj+SMnudOLjPcfw1QH3DNp6Dl4sxkMrNuPp63vptrotO5KDfeeLcGNaEgAgyGJS7dZ/9nIFOimCJOU0GEpnLpVj5vK67/fSpj3Yc64Ad3RLxb19M3S7birv6f5MXC/ruqlR4aOchkqptKoaQWYzzCaTrML0s30n3BoO1gr3XU8OXizGhP+uxtPX9cKQjgmGP9fYGOiRYSaTCVHBQSisqML3x/NUl5n01U8YJ8xDUt+ULXq//zETP+ee1/lETQAz6aufsDNfngmzyjXYWL1FT6v7oTIZCwAs3Hdcc/vSQ6uVkChALbmJkjg/XJDZjH4JrbDu1FmUVlbjz5v24p/b5YUW6YHnqXZcizI4+0CYj07Z8iX5y5Z96N02Dk+tlqdX1xo7ptl1U6dFr1jItCmbm9FDt6qa5es+O2vlz1iiMbdZSnQEihWZ09TSqpdWVbsCPbvDgVkrt8jeH5zSDrd27VCzrEptYE2rglagJ3QbVsmeWGGTn3ellTac18gaWVZtk2WTVXO8qNSngtucH7a5EoFo+b9f9uGuHqm4pn0bRYIjp9tUGoA8oNGaNHdN9hnXNCPKqUKqHeqtFlpBHqCf3debwoDEaCFTbZqTP6zf5bHbbGF5pazbW0xITStCld2Bu75Zh/G/S9Fscc46X6SbGbDa4cAjK392ZZNUU2Gzw+F04tHvfvGpcs9T9zZpOha14EcsDCq/4aGLJRj84UooPfrdL7K//73zsIdxig5D92XZZ7zIuime1wcvFmPSVz/JKv/UHC0sxaAPv/VqnwD3isQKW02g968dh/Df/dluy6u26FXL7zcrjnqeMsSIKrvD7TttN5jZeGnt/TvEanF1XZZ6dtz2xY8B2T81YVaLajBjdzgxfekGQ+v4dfdUfFt7DPMvlePfOw/j++On0b12PsbkqHBXRUhSVDjySstcFS+LDtUEkkFms2zidsnZy+Warb7hQVbVTJiPffeLLKgFairv1586i3v7Zrhaw9tGKLpuKlrwLlfb/Ar0lHPjqvHUIjupa0eYTCaEWi1u31Vr2os24aGaz0/R8iO5mNYr3eNyTQm7bpJXxGxfQM3F8WztZK+SQLfoKXWNj8bMfp0ByLv4ldvsboWXjfeOcft8XmmZW5AHeG7R0xo3VqnSxccI8Qbk7Si6jfeOQWpMTY28NJmskiuluIfxLlq0gjNAu3UTcJ8DD9Du4qgV6Om16ImBnvj7K+dAUiOOyRRb8pSkQrMn8jFy7g+f3NLLuu9fqpInhJBnUK07BmqBdblK9yZPXbrSNFpxtDLAGeUpGyEAV6FFOYbGUyuGVoueXiG82u7weX4vUZhOdr6nr++FLfeN83sbapRB3v9c08NtmfzL5bIWvURFq4w/3Yyq7Q6PvQzKq224XGVz/SZ/G32NV9uICXUvoKodb7UAvCQAXajEIK9nm1h8O3kU1ky7yfVauc3uOoeUFRm/GdBVNpZbotai99rIq9yXc7if95lnLnrdJdMoZZdQ6ZpSq0ACtJOxSOfUrV1SPG5TraVJjdbQgr+NvgYrJo9C99YxHtcRbDG7WiWle7wyaPFGv3atdN+/v19nrJl2k9t1qbxPj0hNdPts6/AQHPvt7binTyfMVbRWnyy+7Pqtnh/aHwtvG4L108ege7z8GEjP2CCLGVazGVkP3yp7v7SqWvO+2io0GHsfutXtda3guqSyGkUVla5roWOM/BliU7TgKXupSB4e4J4dVCSVu6rsDlclnaeuwZtnjMV74wfJjvONaUm4p08nAPL7yVPX9dRd13dTb9R8r0frWPx09034z7gb8J9xN+DqxNa662pqGOiRV5Q1NdEhQbi9W0fZa0a60PkjLjQEd3ZPdXtd+TDrn9DK7aYEaN88pJYvi05mP63P+VKo8jUgntmvM65p30Y23YVTJVR0Ddz2cTt6WVL1CucRQcY7CvgyvYJat1HAc799wHg6cGXSAS2eUtkbGdeoNUavShbouRfIypUteorWQTWPXd3d7bXY0GDV171hpLue1EIsXqfVHtL8A4oxeuI4PJ3zutrh8NiNrr2BLqoxodoB/9290nFt+zZu2e3qg1ph91KVzVXgC7Ga3brcGhmzCsgLQ33bxQGo+T31prIA5Oef2WTCo1d3d6sI1KM2tuhxlYBWLdOlkal6vNEmPBRjMpIxIi0RrWpbGsVr+w7F8+b2bh1Va/XVzkn1Z5Vd9R4XiKkp1LhlvvUwVYxaMpbCiipXYf+BfvqFdkDeY0WP1vU/++ruGJuRjJkGthVisbjOf72xyO0itMeFin7dI1X3uk6KDMeItER0UUxDoZwLUC24GZTcFulxUTCbTBjf2T1gln6r+PAQTOmVjl91aKc63gyoa3nt2SZO9vqlKpurIln5naNCgtCrbRw6KSov9MaHimMTUxVlqmpF8hWtsa+/vUr/GTOlZ8315ETdc1Pved0/oRWuT26L+/p1llVgTuiS4ipXiMdtSs90t+8siQiyok/bOFl5RLwv3t6tI4alJuKB/l3wQP8u6KQyz2RTxkCPvOKeadPq9sD2lJLdX1HBQaqZpipsdln65zCrVbXWVevBIrV8edsC5muLnl4BVy8zmvTdI4UJ7NXiIlcylnoqPGhRy2ypRfyaRrNuahXwjQywv1BWaeh4qJ1fajwlDDgrVCpoB3pi1015Rko9FTa7PDlHped5wdpGhLm9FmxRz9wWaGrzS1bbHR67Fsvn3TM+V56n42ckKInROS7ejGX0h9lk0sxQKSUSCDa7B3rnDFa4icGslJJcrcVJSew6HBVshclkQlKk+/mlRa0yJSU6wu3ep9ay6OtUPVrEQp0U5IjXq7LyKizIolr4Vjsn1RJzlFSqt6T50+VNi9Ppnhyj3EOgp3a+id3alAGOGiMJSQDtFj3pPEiK8nxOBVvMrnNPCg7UWhTb6CQAEmklOZFIrefKZZTjutXGOorLaCW9ASCbHkAtg6S0n1qkSiDlPV/aZ+Xx0bvexYQlyrG9yq6bpVXVqmPrwj3MXSh25a6y21FWbdPtvp4UWXe/E49zsHBMxOs6KiRI9nuJ95+okCBYzGbZWFXxvqgVaDcXDPTIK8pCtlrQ5WlsichTrbEa5QUrUT4kQ60WBClupHoBVN1cRl6OyxACPb0br5JecBirU5soffe6LHs29RY91xi9+u1Kq6TV4qZGHItntOumv4xMMByt85AXyQM99/NGrJE0lIxFKAR4nuDcPRmLp8K5WkEnxGLRLdQEinQslAP39cZJqS2v9v9KylThavS6ZUr0uvAaSaEeCMEWs+Z9RappD7G6d900mhFRDGalAk2V3djvIp2v0vmTGGk8+I0Odj+2SVFhutMuSHydqkeLWJALVgn0lJUCoVaLauFb7ZxT6+Gg1dpaHy16dqfT7Zkm/a3ZoqdybUjzx0UEWQ21hisnq9fi6fmUZOCcCraYXeeelMxE7Z5mNNBzAqpj31z7VPv9Pd031c5lsZJC7X3pHBDPyVCVgBHQL29IgXlrxX3KVX5Q7LvaFdWltuVKbNHz2HVTo2eJp4o18X5aaXdoThUkESu2xOMYYhX/Xwj0FI0SYtZf6XWxokq8L2oF2s0FAz3yS1RwkO4NUY/ZZPKqJUHqgqC8YCUVNrvsZhVmtbjdCPUeUFqTBGuRgrFKm91VyFcOVNajN85Er9uI8kZdWlUNtQYwI9MrGO2i6I1ijdpqNeKxVqZori95l8rgdDp1KySijY7Rq6xW/X/XtoQMamrvF1dWywo6sq6bBlr0vB2j10qlll1r0t1AkwIP2UTRBlrexPGdYuuf3ueMdN001qKnfR5IGQjr70ytEWQ2ayaIkib3rWnRkN/bjM5xJn5HKfg10kNB1qJXex8x0voiUbv3J0WGq3YbrG9i64nUOnBJqLxTVhiGWdUnZFY75ywqv51WV/9AjD1UqrI73Arerq6bGtvTa9GLCjH2zDfapdljoGcgqBS7bp5xteipBHpePJ/F6aS09snTfVOtRU987qi9L3V7FCuiwjTuVcrzUnSu9vdSVm5LLXlG7vn9EmrGKkotekFms1tXULcWvUqbahnK0/02LizY1SOrym73WFElBmVicCeOLxXLRcpGCfFccAV6wrmmdl9srph1k/wSFRLk80VgNtVcYEZbALvGx+Ds5QpEanTdVGYVDLKYEWSR3+Q6REe49aOX7D1XiFnf/qybfU8UHxaCotpxC98crMmC1SY8FKcNFrD8D/RqLt+aMXruym12bMu7gPWntNPqJ0WGo6TS89g2b/x92wHDy4oPBIfTic0559AuIhQPfaufPtkfj333C1ZNuVG3gBFlMJHApSobvj2aix+O52FwSlu397fmncc9i9fDZDLhqMp8kG8q0rvvOluA+5dtxNVJrT0WgMpt8mQs7+8+qrN0TQ2xWot2iMXSYF03/2/LPlemTEBq0TPeivHgis1YezIfRRVVmhlTAeCdHYc9JoMwEuj5UhGilZHPVzUJF9R7IkhTMoRYLG6VTI/rTI0gEgs0UkBpZMzxb779Ga+OHAhAvaDkiVqreWJkeG1BrWHnq1Jr0ZOmMAixuh//MKt71807vvoJ2zQy+ilptej9Yf0uo7ts2L1LN7il+//r1v04dLFEM/OqWjIWKatzpMFxmHq9UkR68+QCcGupVhNsMbsqGfIuleP9XUdUE5RFBFk1s04qiYFQsMUsux9LQYan+6ZawCyOt1Zt0au9H4qtSFpdB/Va9KRylXIYhLJHkB6p9e5vW2ue6SFWs1vFxVuZh3BQGB+vlQTH0/02KjgIIVYLKmx2/Prrddh5Vj/zqqxFz+ze9RqQt7CHB1llz/U2sha9mtcTZS167LpJV6gpPdNkf8eEBMvm1vGG2WTSHQOjdE1STaajjjGRhjJ62R1Otxthr7axmsufLL4sK4RKtLal1nWrW7znDGESvVpzvW4v0g1auhEVVVSpZrWssNlxzXvLdfehm4GMZkb8KqWdT59T9uV/cdMevJl5yNVNyKguBgZHSzfx7WcuumUYq0lTXfc7K1v0tBLMXKquxrjPV+OvW/fjtS1Zbu8XV1bjk6zjbvNA6T2g3999FI+s3IIiDy2jyhY9T0KtFqRER7i9nhgZZjiwlQLFRwZ2cxuU70nW+SI8uXqb7LVqlRY9vZpmm8OJD/cc0w3ygJrpTfSmUgCM1dJqBXrSvQgAZg3oKntPL4ELoF640xNkNqm0KMn3PTEyTLXlCPBcc6+W/VLZKt8xxv28OV5U6ir8S9voHh+ruy2R2rFtFxkqK6h5U8C624+U5+J2QoTuq0BN0KO8XkNVAr2vD550ZZ9VzkunFOiJl8WeKsrMumpzun114KTuvGohFjNmDeyq+l672jFf6bH6U6pM7FqTpC08yApvSwhicqiI4CCPCb5CLBZXi3ZBeSXu1/huoVaLoTLHr1LaugV6Iilhj6dySIjV4lYmeEhI0KLeolfbdVN4T+tepdeiJ5Hm3JMoyw96lNk+pQoAccjN/gtFmlm1RVqVVZKYkGDXb7gh56zHMfficdVq0ROHgEjTg0kShLGLUhAq9ooQ74tqrffNCQM98so7427AoOS6lgup8Hxo1kSsnjbaq3VZTCavxnQ896t+WPrrkZh9VTfXZJiStNhIDEyMly1f7XC4FX5eGDrAq30EgM4aQURroUYoLjQYy+4aidHpSarLqtEakA/oD2SXblZSYaLCZkehSnICvSxaQM3N7V9jrjeyqx59dOtgr8YnSpRdPEorqzVbXLXMu6E3vp86Gu+MvQEf3jIY66ePwbvjB2HTvWNly/1rbN13lWodw6wWvDt+ELbePw6xwoNPWRjQSj4gBim/nJbX5k/v3QnXtq8LCAantMXqaaOx7K6RuPDkZHx9x3DZ8sqU5WrZBkXl1XVjpJ70kDoaqPmurcNDsfX+8dgwfQzenzAI/x5Xc8w8BQN/HjEQy+8aicKnpmDZXSPx+o1XYct94/DMoD66nwPglvo7JiQIPdvEApCybtacA/f07oTtD4w3lE5dNLxjAu7v21l3meuT3aePMNKil6CSvAYAvp08yvX/fxjaT3b8PRUkldfJy8Pl96Sv7xiO+b/qK1te2XVT2QX9hWH9AQBHHpnktj2t+5dE7beXehuEWMxYdtdILL5zhOpnpXkXpcLjvX074b+ThqKryvWSGhOJ2Vd1c/2tDPR2P3gLgi0WWUFNrWJCy3ND+uGBfvrngRa7s+46VhbqQ1RaVMOCLLrjy7fXXmNqvweg3pujd9s4lSX1vTC0P1ZOGYW9D92KDyYMxs8zxmLtPTfj3+NuUF1+TKf2htYbbDHj/268GsvuGol7eneSvffZxKEAalLbr5g8CoVPTcHyu0bKzqP9v7kN4zsn47spN+LII5N0x8YrjctIxquKKSk8XavBFjNiQ4M9dvsNs1plZY73xg/CSCE1f7uIUPx49024Lrmt7JoTz8msh291VW57qiwKtpix8d4xWDF5FIqemopld43Ei8MGyN5Xkp6JYndNzUDPwDN3dHoS3hpznevvuvG02pURcaHByHnsTtzdu5Ps2Ev7e/LRO9DBi2szyGz22CCQGBmGlVNGuVUg/kaoSPth6mj8d9JQLLtrJH7Voa5yWfx9xGOq7EottmKK98W6xD/qXTfZokdXlMjgIEzpVdeqJ9WAdImPwci0JFmg4+kmZDaZDI/pCA+yIiokCBO6pCAsyOqaDFNyU3p7XJskL8ypJfSIDw8x/LCTdG2lXvAUW/S6xEdjfOcUrwbtqiXvkOilppZaX8KCrK4unmrdRdUyX4luSk9COy+y5OmJCw1xm2bDCGUwWmG3Gx5bJJnUrSM6xkbiwQFdML1PBn7VoR3u79cZN6S0Rf+EuvmQOsZEuioppKkYOsVF4f5+ndEvIV72YBUfCCYAGXHqhWW9hCl39UzDDUKlyNAOCRiZloTxnVMQHRKMSd06yoKC0eny89LTeB270+nqBnR3r3SPNexSreTVSa0xuEM7zOjbGTP7d0H76AiPBal2EaEYV7vf4zunINRqRbvIMNzfN0P3c/0TWqFH61hZASw1NhKTe9TcQ6rtDleW24GJ8RiY2NrrbJbdWsfg0au7ab7fNiIUwzokuL1upEVPbV9u79YR8UIlT7DFgjuEc99TTbmyvHOVYk6mSd06YrbQomE2mWBVfEjcr27xMYitvV9ktIp260KsFnSJ1FoVpO5e0u/dWiOJhVQYlgqPwRYLft0jTXVKgW6tY/AboZVIOYaqT+3cZWJBzVMWT7HlLC40GHf1SNNZWps4JjhY8dwKtrgH2no1/CnREWgfHYHBHdohQyPIVuu6OV0RUBmRHheFmzslIy4sBPf2zcB1yW3RISYSM/urT0nQKS5KtXVWKcRiQajVivGdU2TPufZR4Uip/Xy7yDCMzUhGbGgIximmCejeOhYmkwmjO7VHUlS4V4He7d06uiWD8XStWmsDCa3rVRJqtcjKHMM6JmBm/7rKgc6tojFcZe67ICHQF6cy8BQABFvMiA8PxdiMZMSE1lxLIbLWY/cyknTtid/Z0/QKesKCLLitawfX39J1p5fkZnR6EpKjIxBkMcvurdJ9vH10BMZkuJejtFo4jbQ8JkWFo0t8DJ4QKs0y4qJkFUKj0pPw6x5pGN85RRY4ypKxCP9v0+i2CshbvqWlWuoYPQZ65LXIoLqLJVERqIkXkqduDWaTyWMXl7r1uq8rTDGuQllDpTYw3mwyaRZatGgVlMTuJPFhobX75L6fWnP3KLs7iMdOb4yeWECSaifVAj1Pc6oFUpDFrPrQ8kSZ2a+82mZ4rjuJXmAgFmKjgoNcyx6+WDN+QwzoxPNJfLiI4z+U9DITJkWGyWqPldcKIO+i68vDREqQUDNuVf960yuUqNW2iuegVqVNooegzGwyuRXAkiLDXQ/maofDle1Wes1Ilj1RkNms+92CzWbV/TTSoqd2bqltS6wkUAv09Lqeqd0nlcGXMtAQ73XKsTZliuveU68Jsfuv8jSQvqtaMAjUtWgrWwXVjtH5sgp5yngDhVdP+y6el1HBQYa7ICuJzwplkBFischa9EzQL2AbScil1ptDnONLLSxSC5a8bWkItVoM9aIRv5/4O+m1AullufVmalq1Y+upAlXq5q527xDHYoVZLWgbLr92LCb1ljtRtUZyME9d+rSuG0/bA+S/rWYyFgMteqEWi6zMILVEqz2PJOLXFc8XcX/VEkSJx0NsMQsycAJIXYLFazgqJEh3qiWJGNyJ+6gsA4rHQS0xX6Jm1k123aQrjFiwUN5YxQe+p371ZpO85ap1uF4rlnv3ItncR1aLW6FMK3OjtxkGu2qMuxMzHEopjNUevEazkorBRZxO6nbZ8a+9Waslf/AnIYTeb6dWQA4ym3UfWkaV2+QtekYmX9crWIkFtJpAr+Z4Ha4dqC+eC+JvJ75uNbtnNJTojZFLigqXtUiorUPsoutPCueaQq7+eebt+sX5krRqZD0FS64uMcJ3T4oKd62v2u50tYpKhSJvMjdK+6ZX4AoS5tgSeRozUrPf7p9TC1DEc0dtzJteAVktKYJY2HXC/fiL9zrl7648Jz0FPxd15qSTvqtWYFNX0SDfhtpcpOcvV8hTxmsEKWLBTq8wCsgLuiFW35MKyVr0LO4teuJ2Qq0W3W5oRqYMUmutTxcCPbWCpdrvaGRslCjMajWWxVLjd9L7rF6WW29a9NSmdvAU0F6sPQ/V9k98roZaLfL504KDZPeBENl1V3dstXpuqN1TxQDCU4ubXldTQ9MrGGrRs8qeo9L30qtQE69B+Xx1ddtTCzJDNSoFjPz+0ncR72dRwUGGploSyx5ihbPys+J9Su1ckY/RE5NU+ZaHoqlgoEdeE28ayotFfNBGBOvX3ppNJlmLRodo7eQOasGSLFOaYrJLQLuG0VPLh1LHmEjVG7L4sI6vDVLVvqfRwNJoi564nN7N2p85mfQe6Mkq71nNpoCkRT9zqVzWSmYkONFKPQ/Ix9BFhVhdx0tqARWPpfjbied4kMV9MmrJhTL1pDFWc03LsawlS2Ud4vnvzzgArbklRd4UtgD55NVGao7VKmqk56OyRU9aX5XDLiS9qHnNm3G70r7pHbsglcnEAWNTeBht0RPPfbUWPb1pXdR+N1mg53S6FTTE614ZZClbizwFP3qBXqiHQE+6xyi/Q2GF+zrPlVXIrjGt61YsVLfTGCMpUWZVFnubeEN8VihbYUKsFtm+erpOjVxmahVE4nhQtXu32nniaQoRpVCrxdCk9rJJp8XnvcHgQMmbe49qi56HljPpHFarUJFPUyCfM1T522qd51oZkNXui2KXQE8teloJlEIs8jFtvkyY7vqsRsWE3jNeDJDEijd5i577OsXrSDzOnubkFIllvcjgIEP3ac0WPcVnxetFrTdZm4hQV0WNOGa/eYd5DPTIB+JDSNmaEqW4SCVqGdYsZpOsRUO31lutRU8xSFiZBCFQLXqJkWGqgab4sJbGMajXxBrbnlhg0+v2Kq5Pr8b7pU17DG1XjV5CCbUaV5PJFJAWPWXa63A/s12JD+gQi3u3JfE4iwU4sabUajZpnpv/3Z+t+npCRJhb12S1dYgBvafCTCuNVl6zyYQwq7x7jlqBxe7l3IThVqvr+jYyFkSt4C4V8MTvnhgV5iqgLDucgx9O5Mm24W2LXrDFrFshEKTSrRvQL5hK1AoDaue52P1L7V6nF7yq3VvEgpkD7sdWv0VPfg15uv9cLNNp0QvSD/Rc21B854Jy966JFTa7oYob8Zr1NL2F8rfwvUVPOxlLsCIZi6duXEYa2dSm8BGPjVpLndp383a+0bAg77tuarXSeMOrFj2V68tji15toKcWvIi/V6jKVDLib6vddVM9UPEUQHmbYVeiPMc0p1eweD6uWp/V6wkjnlfyrpvic9H9u4mTwYvlBL2x7EryFj2roeeWrEVPHKOn+N3EMpvaby0+s+tjjuHGwkCPvCZmxVNe7GL3ErFVRG1OHbPJhIEJdZkyp+qkx+6gMoBcmRK7iyJpymTFVBCSUYp0w2rEACAxKky1sDRJGOQtpTBW3lQn90gzXPgQkzIkR2kPmBdbSr1JZw4A9/XNcI1ZuEWR5VEkHju91giRrw81PREeup0pU4kriXO0mUwmt4yOshY9WcWBvOWhS6sYWWGlj4cMedK0FeKxUwsaft0jFUBNa5inwkxbjbGlUcE1yYnEB5xal0pPXWCU+xdsMbvSa+uNpR1Rm7zgNwPc07FLyTHE494tPsYVSFfa3VtSPLXiKAWZPXTdVGntB4xlOVQrDKiVWcWJ6NWmRpF+52CLGQ8qEmVEBQe5EnFM7el+D3Q6nW5jXMRWGeW9Sfk7RAUH4Y7u8kRJ17Vv45oSZZpw31VmDZaOq8Vs1u2SqMzAJyVqSIgMc017ML13J1khXuucEq9ZT0HqTYr9jQ4JMpQ+X5mQRLwXKgONYLO866bUQnSDSiZXAG5ZKgHIMlVrCbNaXc+dkSoJQdSORT8h2ZQRYVaLoay2YiFd7MGhNx2PlPFUmT0YkE8p4Il6i57+vfHePjVJoZQtjkFms+wenBwdgeEd5YmZxPNavIfe2qUmgUmb8FDXNaX3zHRtQ3h2Gxm3rjaGX/l9xfubeG8XnxlqGb/NJpNbxeyQ2sRUej1h7BoteuI1q9aa+PCArq5Mubd36+gKJvWmtarZp7oMmlGKrrXS99IrX8inV6j7f+l3u7k2AZ/yOpTO7UlCspruKs/ujl5OJdTUNO8RhtQousTHYO09N6vWnimb3SVq3ZnMJhPS4qKw6d6xiAsLrs0eF4z+7Vrh0MVipERHoKCiCnvOFuCWLh3cPi/eDKOCg9AmIhRb7huH8mobSqtsqlmhAODa9m2wetpoBFssOHihGAmRYbjlizWyZTrFReHd8YNgggmhVqvs5rNh+hgUVlRhTEZ73JTeHtlFl3BN+zZu+zSlZxr+Pe4G2XxFLw4bgKiQIDz23S9u+9WjTSw23TsWrcKC0TU+Bkt/PRKXq6sRFxqCjLgoXCyvdJv0ekqvNMxYttFtXQtvG4Kpi9e7/v5+6miU22y4MS0JLw+vRmb+RdfNT+np63vh8Wt6YGLXjjhRVIqebWLxxf5s1wTMTqcTpx69Ex0WfCn7nD9dNyOCrLisMh2E+FB7ZlAf/KpDW2QXXXJlclNmWlVSdrm5Kqk1hnVMwNraiaZlY/SEAp5YsLaaTEiJicBPd98EALhUbcOhi8V44gf5nHBvjbkObSPCEGIxo29tBsHokGBsu388LGb1Fs87u6cicnIQ+rVrhVzFtBJvjbkOj6zc4hop0iY81DUx7R+H9MP82smVpQDVIuyzWtDoqfZ/18xb8PdtB1wtwSFWCz685VfYf6EIA4QKGaWvbh+G9afOYkxGe9zftzMOXCjCgMR4bDl93pXh9r6+nRETEozwICuGdUxAbslxt/VID2gjSVJEehOKS++HWq3YMXMC7A4nYkKDcaa0THY8tM4/oGbqmLzSMgz/5DvNbUQEByHzgQkwm4D1p866Xn9/wiBcndQaPVrHYuWUUejTthXiw0IwrGMCIoOCEB8egiCLGW+NvR6TunXEqDT3Ar7D6XRPxiK26CkCmxeH98fRwhIsrZ1rMCokCB9MGIy7e3XCsI4JWHcqH0M6tIMJJqw7lY+b0tvj4QFdkHW+CL3bxmH2qrp7k7IyTW2i6chgKyYoCsBTe6UjLjQYVyW2RlRIEO7onopRaYkwmUzY89CtKK+2abZQy7pbqwQ34oTXo9Pb48a0JFcAYjWbsfaem3Gy+DJu+/JH1fV/efswXJUYj6MFpejdNg7bz1zAmIxk1/tu0ytodN28Lrkt1ky7CcEWMy5X2zAwMR6bc89hrLAuyfLJI7H+1FkcKyyV3Tfu79sZ7+0+AqDmPD08axJ2nS1AXmkZ1mSfka1DPBad4qLwn3E3eD0lQ6jVglu6pOCr24fB4QTCgyzo07YVsosv4ZuDJ/HXrfvdjsGELin4+o7hcDidsuyNSgtuuha3dElxVfyIXhw2AEM6tENUcBDiQoMRFmTF+csV+NVHK92WVSvQa1WCdW8dg5eHD3Q9y5Tjwo7+dhISI8MRYrEgyGLCjelJMJtMWDPtJlewrzWNwtRe6WgVFoIBCa0QExKMmzu1x0iV61O0Y+YELD50SnV9WtZNH4N1J/Pxxi/7Xfd35fcVyxVJkWE4WjvJvNja9uXtw7D2ZD5Ol5bhkZVbANQEZlJ5IXv2HThSUCKbluDwI5NworAUN332g2x74r0x1GpF5gMTsCP/IsZ3rju3xXvuF5OGIdhixuj0JDwzqDe2n7mIcRnJGJgYj3Un892C0N5t4/CnYf1dz+KhQlZkZTKW27p2wLeTR7meqWrEc0Y85q+MHIgRqYkYnlqz/mGpifhuyo2u+0XmzAnYlie//t+fMBhZ5wtxdVJr7Hv4NpRUVnlMOtbUMdAjnwzt6J6uHJDfoCI8ZKKTbkA3COnApYekdGF1Qk06eDXKQA+oCeKMGFnbAverDu1wWmXetqTIcAwUWtjEm1rvtnGugbrpcVGyQfTi95/cMw0RiiQZ3VvHaNaohlstsmOhLDypJd8OtlgwvXcnfKSYkHtKr3RZoHejcKMNC7KqFkYkE7t2gNVsln23WQO71QV6AFJiItCnbRz2nCuU7YtRvdvGYa/w2YhgjUBPqMm8s3tH9NMJONSodRmZ2a9zXaAny6wlBnruXVSGCOe8co67lOgI/Gageor/qzTOX6CmlVH6LcSxUmMzkvGbgd3w3/3Zrn0Vu9oMT010BXpSoVcssKjVtnpq0WsXGYYH+3d2BXpBZjNSYiJc6dS1xIWF4NbaAqC4/Hgh5XqI1YIpQsuRWmFOaknxNvuopzmapPFG/YVzp3OraKyrPa5AzXmgFeh1iY9BF42ETKIBtfN4bs2rm09xdHp7V4XYzZ3qrjllxVV4kNV1DJWckN9/Qq0W2fiRSLduXlbc3atTXaAXHISI4CDX+sVtS//fvnZKAOWYU/GoBlvMKKvt+WQ1m1yFwXv7ZLgFomaTSZZyX/xunoKTSo+BXl3AGWQ2YViqvBDZLyEeHYQa+JiQIBQL46mHdGiHthFhSK2djkQ5NYDy3KyZx1DouimcnyMUBX+1CkkAiA0NwS1dOuCbg3WTl/8qpZ1bT5fEqHAkRoXjsyz3ihDxXtWvXSsMUwmoPAmzWmExm3G7YvqLlJgItAkPcQV6IYoeDZMMTJ0TFmTV/P4hVovbe2KSs37tWmHX2QK3bbs+r/FsiQ0Nlp1bYuXz7d06us6DO2tb1CXi7yZLxiK0DJmFezMAzetT1D8hHstqrztpHZ50jY9B1/gYbDl93hXoKXsoKBPiSIGe2IIZHRKMW7p0wKpjua7XxMC3Y2wkOip6wHRuFY3OraIxa2BXvJV5yPW6slv7gMR41/1NIl7zXeKjXYFYWJAV4zuHy76bUlRwkOt8UJ4X8nHzNb1VxuiUVwDAKnSdD5F1O3a/r44WKrjbRoS5Xf/J0RFIrm2V7FE732tzx66bFFCyBCliggKVTHT+nnyyLIleJlgRqQUoyikYSoWCgl7fbeWUD4C8ZTNIkcFNpDb2zQitrqG+TGCu9TkjWae8mV5BWWOptfbwIPF4en98qlSCG63xTVpj9NQymynn2rqkk33TKFk67dr/F4+7mCZcrESRzk1Pv7de+nOJ2DVHrfUmUFSPae1r3ial8ZR5Tut9scuWt+N29YhlpECs1+lUmUZAnOdRpTAp3g89TXMjUp5DRUJiF7EApcyMF0hVYtdNlXubMlGSmjBFwVjkMROi4vxTZj31J2mSLAtvVJhm1ky1bQTimOtOQ6Ix6XRDELvbqm1b6/ljVjw5xG6GRo+RRTZGz//v7W3SK4kYtLm16AnPwUTFOaS3HqNT1SiX83Y8t7dT4ujxdZytJBC5AloaBnoUULLCslBoUGvRs/iZslas9dK7qXvailqAopeyXK/1wNMDOshs1iyc+PqQ0fruvt4w1fZP/M5ayQa8ucEq00U7nOq/U4SHBCOeqGVLS9QY3xSk0SKmVshQFgb1plkwSm2CXHE/xBY98TyTfg5PwbiRxA2hwjWll43RX2pBqXRM1cbb6bXyeZqjSSsA9tTV1Vc2Z90552mMqRFOyLtuRgUHeWz1FLNPehMUKK99MbmCeH3XZ6AnnqdqQarYtddIpZnauC09ykocZddZT0mT9IhBZ2JkuGagp5a0JlLRpc0XejGIGMh7yhYZaGIqe7UKT63xZMqgKiYk2HVtGK3gENcdiO/tc6AnnBvK61ueECdc9f/V1qM3ZZVImWRHvIdpEZ8P8Qa3Y4QvgZp4yH2Zz7el4xGhgJJ3+ai7+tRawXy9IUq05j1T0gvMAPUAwj1lubGCvGqgF6II9DRTKvvYoqcV6PlYyPRUEBLnFxJ5M0ZPeTOutNvVJ6IWXvPlfFHruik+CMXCvvj/shY9leOhPGe8zX6nRq01XCyEiC16asfaU8uWkfmIRBfK1aeOCAS1bHHSd1Yr5CrHc2lVKKlvS/19eQEvcI9C8Vzw9x4H1FSsyOaDDLF6vKfJggJvAj3FsSys0GjRExMm1GN2OvX5Uz236InHXVmI9XSdKAMNh2J6C3/muxRbzIMtZs3Mr2rzponnla/Btd50DJ5S59enGA+p7LUqhZUvm0wmV/Bj9BhZA96i59vnxPNUeY6J57zYoq2WBTVeuFeaDE4MoAzUjLTonbtc7vp/b+9zWmUIX4mXka89mVoyHhEKKLEAJhZG1Ca+9rcQJN4M9Qobnm68ajVIysDU6OTjavPiiAFXkKUeWvQ0vruvhQFPBSGpFlp5q/Zm/5VBbU3qdf3ae1+oteiJx0Xscil25VMboyeqj65Naq00Wl031Qr6elnUAO+DUb20+/7SC57VvodyXklxbJPHrpsaNwDx9w5oi56XAbUnyhYl5XWt9u1ky3sRiCkL+IXCNAnaLXr1N9Rfa4yexEihTtl102OLnuJ8Uh5/f84V5bNGu0XP/ZiKwwd8PeZ69wAxmPJUkRBoYtdNtWOilfFVrQwhdWc0et6L6w5Et79AtOgpzzGtMozaeeLLb6fMFGzkWXFeYw7ZQPLlSDb0udscNJtAr6ioCHPnzkXv3r2RmJiIhIQEJCQkoEePHpg1axbOnj3r8fOzZ89GWlqa67MJCQlITk7GiBEjsHnzZrfPlJaW4umnn0ZGRobsMx06dMCECROwf/9+t8+Ul5fj5ZdfRv/+/ZGUlOT6TJcuXTBt2jQcO3bM7TMtSTdh4K14uaml6L9bZzoFI4x23fR04zWbTG4BhTJz2MO16aGNDEqXSNM9yLsHmjSDBCNpr9UokzFI7utbk+66l4cBxffXLidRdl0ySq1FUmuuHuVvUmV3qAY6YgWB0W4oIimt9xhhALb4IBCzSSpb9KRzeYrKNB3K7zrNz3MZUFSS1F49YhAjtgbEh4XgkdrkL1ImPDElu5Su/6rEeFca/Xv7qKXzcXddbUIjrelJAkGt+5tei3a0out3hGwqjJpjpHWda47RE5MwqGz7Oo3ETsr07EY/5ysn5BVPKYqpDAanuKfuF2v6vaksURaSZvavuzeI9y2t+VIDQZqe4M7uqard79R+ez3KjH+eCoLKc8HhBNoI9x6j081okYLpUWlJrql+lOeu2r3wemE6ByNBjNp+6iXCkSdPa9g5xMYJ2RzbqkyvotWip/Y8lu7byutES6Bb9gepXI9GpMfWJXVT/nZijwZPmT+BuoowMUumnm6KhCl3dvdczpGSmIj77YmU6fR2g+UoraR/Sp1bRRvehytRs8i6abfbMXLkSNxyyy1Yu3YtWrVq5bpZFxcX44MPPsCgQYOwZ88ehIer34TnzJmD2NhYZGVlISKi7gbgcDiwefNmTJs2DZs2bUJSUt1D4amnnoLFYsGOHTsQHR0t+8zKlStx6623YteuXbL1TZkyBYmJiVi+fDmSkpJc+3n58mV8/fXXGD58OLZs2SLbTkuSEhOBDdPHIDY0GAu2HXC9PqNvRm32Nyt+ldIOG3LO6mZ+NEK89+v1xzdSv7PlvnHYlHMWXeNjUG134HrFfCv/d+M1rlTenuz/zW04f7nClbEySjbQ3OJWo3x/386Y0TfDlQXOW1oP/cev6Y70uEjc4GEOpwU3X4vEyDC8KGVb9PCwkypclcdVLHT98+br0D4qHNe2b43Ev37htg6157ZaTXmI1YwdMyegyu5wK+wb8fqoq3FjWpLbw/HYb2/H0YIS17QYgDxzl9lkwvrpY7Ap96wse6QkWBGA/Wvs9V7vm5Jaa7BY25wcFY4dMyeg2u5ATGgw/jLqKoxMS3Sl5L+pU3t8O3kUerSORWJUGK5KisfQDgkwmYCfsvMNX2/fTh6FtSeNL+8L9YnItc+7cEVXJrEwLl1PJx+9A4M//BYni+VZdIPN6gGkVovesrtGotruwDBFIePUo3di7/lCWaWBmkEp7fDdlBuREaDCh9PpRFiQFVvuG4fdZwtc83udmH07Dl0sUc2+GB8eip9njHWbjsWI3Q/egjOXynG52iabgkXsbu1r11Aj3hpzHW7r2gGj05NgMddc/5U2O67/4FsAxsboATXTYuSWlOGGFO8Cb7UWvYTIcPx09004VliK2w0UgvUcfeR27LtQhBvTk+B0OrH8rpFuqePF8/G98YOQGBWGDtF1GRONHPPMByZgy+nzAGoCN4dTP4tgiNWC7Q+Mh8MpHxtdn04+egf2nS/CzZ2SsXPmBFTY7KrTbojB2LeTR2Fg7fQt41TuUX8eMRBjM5JV79tq/O26aYK8d8uglHb4fupodIrz7nneJiIU66ePwaGLxZioyBQZHRKMLfeNQ7DFjP4J8Vg5ZRS6ttKuGN770K3YmV9gONBrFxmGzTPGoqzahktVNkP3/lkDuyIlOhyDktt5XFay7f4J2Jx7ThbYq8mefQf2114jRnSMjcT66WNk85lSnWYR6C1atAipqamYP3++23sxMTF4/PHHcezYMbz99tuYM2eO6jpWrVqF48ePIyxMXsAwm80YPHgwJk+ejCVLlmDWrFmy7ebk5CAkJMTtM+PGjcNnn32G9evXY8yYMQCA7du3Izc3F9988w3MigdQREQEpk+fjgsXLuCVV17B3/72N5+ORXMwuIP7hR9qtWKaMJHsbV39e1gC8iyCerXKRprye7eN063tDA+yGm7N6946Ft2FjPqyFj2VrpsDE+Nlc9t4S+uhbzGbDR3n8CAr7ujesS7Q8zhGT51Y63pXj1TEa0zwDaj/JqpdF01mWVp8b4UFWTFR5XdTTosBuHdbaxMRqnn8xEBjas/0gLdqSMTMl4lR4egkFHLDVM5JMQ21uO9qx0BLXFiIV8v7Qm1siV6LnrIFUAw6pOspOToCo9KS8O6uI7JltbKNylr0hHNPq4BoZKoJyWgPwaA3pOvt2vZtZNPHpMZG6VYOXWdgkm41fdq1Qh+V25EYMNdnMpaI4CDZea28/sMNZN0E6qbFcGplj9Lg3qJX8/lhqYk+TWmgJKa5NymmoZCI53vnVtEY3KEdjhWUuF4zcr9pFxlmaEoAkTilUEPoEBPpmgJBb+oc8d4s3eO0pnKIDw/16v4lVrD5kvnaIkw1IjEaoCj9qkM7zbKAeO2LU7WoEacIMEpZue2J1WD5QtQmItTQOak2FYQn/pShWrpm0XVz7969GD58uO4yo0aNwt69ezXfnzt3rluQJ0pJSUFOTt38J5WVlbBarW5Bnig5OVn2mb1792LYsGFuQZ43+0nGiTdXvfFJgUiI4I9IRddN5XgDf8cHKQta/n5ftUQZRojPOrWxAyK1Lagdh4ZMCqDWoqZFrPn1dt43I6TB6ueFcXL+jldsStTOD73adOW5IS4rVkxUqIyl1RpLIpb/A5mMJdC8jFPqjRhcN1QyFjVGW/Qk3o7ZUZ6H3qaaDwTxfJcqJLTGSF4JtMboBYJVHKPnw7AFT2OjiRpbszhDc3NzkZioX5OWlJSEU6dOab6v1dInycrKQkZGhuvvkJAQxMbGoqysTPMzOTk5SE+vG5sTiP0k44wmPWjsobmyZCy1kzuLBRR/AwVlQcuX7ysWZTy26GmUPMVB9J6CV/UWvZrjJHbr8yb48pc3QaVY8xvIRB5KYmazlk4vLbaRrpuAl4EejJ+vjUkrYUdDa4xkLGpk06DUQ4Du1nUzwBkCjRATjUmBpizQbuBj3tjqM5iy+tmi19AZSom81SwCPbvdDouHbEhWqxU2m28T/C5duhSrVq3CxIkTZa9PmjQJjzzyCPLz82WFW5vNhu+++w6rVq3CgAEDAr6flZWVKCkpkf1rjur78Wg0i2BjJ2FSdt0U/wv4l667Zv3yh74v31eWntjTGD2N18UCqadWRbV3pePQUege16Atel4cuOAA/n56zjVAZrOmQq+CQdl1U9aiJ/x/pd090LugcQwdsha9phvoNY0wT97qKVZONXTrktjjoD5SqatNr9DQxIoHaQoGWTKcBm5FbWz12aLn74Tp9blvRIFwZVULKRQWFmLOnDnYsGEDFi9ejLg4+Rit2bNn47rrrkNiYiJiY2MREhICp9OJgoIC2Gw2fPXVV2jVqpXG2n338ssv449//GPA19vSGG3Ra+yum+JDWaqdFVO++9uaoByv4cv3FVs3PLfoSZ+R86ZApLakdBw6xkTil9MXADRstxitzG5qxC4+9dkaZHT+xpZAr/VWGUx716KnPk2EXbh/NOVJdptOi17dMRJb5Bs66JC36AX+3u6ejCXgm/BIvO9Jz7kruutmPVb4+ZuMpSF7nRD5olmeoYcOHUJ6ejoOHz7s0+edTic+//xz9O3bF3FxcdixYwf69OkjW6ayshKjR4/GvHnzUFRUhMLCQuTn5+Ps2bMoLS3Fd999h7fffhtFRUWa2ykuLkZGRgbWrl3r1f7NmzcPxcXFrn/iOMDmxEiGSn+MTq9JeOCp62Nj17eJgZiU9lh8aKulmveGcs4/X75vclRdK5qnMS1SUPjr7qkAgIzapCZ6yWyUlIXXkamJSKqd6LZXm7r1NGRt6fXtjQ9GF2v9/f39RFIhVkoJL02TYDQddXOiNm2FFmWK/OGpdRkxxcLZhNrEFklR4a7/v79vBtSI81aNqud7lS+krJ/3aex/QxPHxqXG1CVK8GfuMV8qpcYIiSiMtuj5M8dnY197UvbGUKsFsaHBCLNaZJNiXwmG1GOiDTGo9qVicUafmusz0NOqEAVKs2zR69q1K44fP+7TZ3NycjBjxgw4nU6sXLkSPXv2VF3u+++/R9euXfHwww+7vRcaGorRo0fj8OHD+Oc//4n/9//+n+o6YmJicPToUa/3MSQkRDcJTHNxR/eOWPLrEejfzvesiXom90xDRJAVAxP119/YLXpmkwmZD0xAuc2GuNoHtNjdzN8WoWCLBdvuH4+r31sOwLcJQ9tFhmHD9DGGauelGO13N/RGjzaxrnnaeraJww9TR6N9tOd5psRAr1t8DL66YxjsDidGpiXi6sTWeG7dTgAN23XzhpS2WDllFDLiPKfFFwuOgUzkcXz27cg8cxG3dKkJUv455jqM75yCMRmBy+LYVLwz7gZM7NoR4UEWV+Y9NdsfGI+Bia2x/K6RCLVaUGl3oEN0BJ7CdgDya+mRq7ohOToCg5LbIjzIilXHTmOsxrFrG1FzzkcGW9G3XSss/fVI9PGisqK+LbpzOFafOKOaQr4xtBPmN2sfFY7108e4VTJ5y5ur++CsiThVfBkj0hKx6d6aqSOMtqaEWi2oshvrASJe26+OvAr/c00PL/YycPY+dCsulFW4MquaTSasmXYTKu32Bpv+oKkYmZaEFZNHuc33FgjiM8aXssJLwwfghuQ2bnPvEjUVzSLQMzKuzWazweqhZn3r1q246667MG/ePDz44IO6BeKDBw+6tfIp9e7dG2+88UbA97OlMJlMmimQA8FsMhlK1dvYgR4ADFAEo2LXzUBkbbwqqS4ttq/fVm1aDDVSi16QxeyW3n+UwbTSYqA3tVc6YkNrAuA7uqfi/OW6MVUN/dt5SlstEWv9A9mtSJkWOzI4CHf2SA3Y+psSo99NSvkupqE/IqSaD1LUyIvnpKf1i+f8hC7G5t1qKLGhIbijttW8KRBbQK1mU0DSmZtNJtcYNE+6xsega21B/wYvJ6WuuV6NdYMWK24m90irl4QvRvRSqXRQPkeuJPU1r6fYa8SXHiQhVgtub0LXKZFSs4g4kpOTkZ+fr7tMXl4eOnTQLvQXFRVh0qRJ+PzzzzF48GCP2zQSjJlMJllgl5ycjKysLL/2kwKvCcR5boLqcYxXUwhsPRHHvQQpAiVx3E3TGJ3kTqz1bw7Hu6UJrufMi+QuSciGG6hj3lCXjjf3WPG7NeWxmxQYYndNJlahlqhZ3MV69+6NNWvW6C6zZs0a9O7dW/P9119/HVOnTjUU5AFAeno69u/fr7vM/v37kZZWN86kd+/e+Omnn+DQSRLiaT8p8EyNPkrPnSzrZoBbeOv7WRWI3BBii56y0CiO+WkqiSiUGOg1LtmE6Uxv3iDkLXoBCvQCshbPvAn0xOeFL8k5qHkRu27WZ9IXosbSLO5it912G3JzczF//nxcvHhRNtVBSUkJFixYgBUrVuChhx7SXEdmZibGjRtneJs333wzduzYgYULF7p1x3Q4HNiyZQteeeUVzJw50/X6wIED0bFjR8yaNQunT5+W7WdZWRk++eQTvPHGG/jd735neD/If03x3i3WHAY6PX99B7aBCL3ESYiVCRXEv7Xm7Gts4tggBnoNT6wMaIoVOS2RlCwJCFzLR0NdO772mmjK025QYIjnIO/l1BI1i66bFosFq1evxosvvoihQ4fKgr3Y2FgMHToUGzduREREzdiWtWvXYubMmdixYweio2sSKxQUFOCOO+7Qnedu5MiR+PTTTwHUJERZtWoVfve73+GZZ55BRYUwbshsRnp6Ot555x307dtXto6FCxfijTfewLhx43D27FnXfkZFReHqq6/GTz/9hKSkppfhrSXzJTlJfbN7Mbm4t+q/Rc//4EtsqVPWmos1rI2R2txbTbEiobmzeBi7JVYGNNVW35YmQei6WVoVmGk/Gure7GvCJLbotXwmP8foETV1zSLQA2oyWL766qt49dVXPS47bNgwt2yXW7Zs8XqbaWlp+OKLL7z6TGhoKObNm4d58+Z5vT2qH9N6peP1LfvQPyHwcx76KjkqAgcuFAMITDIWALg+uQ1+zj3vSskfaH3bxWH32UJM9iItPgDc2T0VXx7Ixq1dUrA59zzOl1VgfOdkrMk+AwC4KrG1bHnxwdscCvHdW8c29i60OA/064x3dh52TTGgJFaOtLrCUs03FnFKkfZRnjPrGnFvn054K/MQbkj2LrmKt+7snortZy6ig5DoSIv43ThH2pUlNVY7+y9Rc2VyNtW+UeRSUlKCmJgYFBcXu1ooybhKmx1LDp/CyNRExIeHNvbuAABOFV/C4kOncH1yW1yd1NrzBwwoKK/ED8fzcEuXFIQFBb4O52JZBdZkn8GtXTrICn2eXKqqxoojuRibkYxLVdXYlHsOt3XtgKMFJcguvqSa6dL0pw8A1KQ3f/r6XoH6CgG191whzl4qN5xplIwrr7Zh6eEc3NQpyZWRVWnr6fOodjgwKKX+5tgiuaxzhcgrLcPoToGZ7kP6nUenJ7mmnqkPNocDiw6ewq86tEVCpOcgdf3JfEQGB13RWS6vJLvyL6KoogrDOEUCNSNGYwMGes0AAz260kiB3isjBmLuDUxeRERERCQxGhuwXwIRNVnNoesmERERUVPEQI+ImiyGeURERES+YaBHRE0WG/SIiIiIfMNAj4iaLHbdJCIiIvINAz0iarKuCVBGUiIiIqIrTbOZR4+IrhyHH5mEfecLA5bGnYiIiOhKw0CPiJqczq2i0bkVpxIhIiIi8hW7bhIREREREbUwDPSIiIiIiIhaGAZ6RERERERELQwDPSIiIiIiohaGgR4REREREVELw0CPiIiIiIiohWGgR0RERERE1MIw0CMiIiIiImphGOgRERERERG1MAz0iIiIiIiIWhgGekRERERERC0MAz0iIiIiIqIWhoEeERERERFRC8NAj4iIiIiIqIVhoEdERERERNTCMNAjIiIiIiJqYRjoERERERERtTAM9IiIiIiIiFoYBnpEREREREQtDAM9IiIiIiKiFoaBHhERERERUQvDQI+IiIiIiKiFYaBHRERERETUwgQ80HM4HHA6nYFeLRERERERERnkd6BXXFyMefPmYeDAgYiPj0dQUBDCw8OxY8cOAED//v0xYsQIfP/9937vLBEREREREXnmV6BXVFSEnj174q233sINN9yAZ599Fq+99hoqKyuRn58PAHjhhRdgMpkwfvx4bNy4MSA7TURERERERNqs/nx4/vz5KC8vx6FDh9CuXTsAwOnTp/HUU0+5lhk/fjzGjh2Lq666Cn/9618xePBg//aYiIiIiIiIdPnVordu3TpMnTrVFeRpbsRsxtixY5GZmenP5oiIiIiIiMgAvwK9o0ePomPHjoaWbd26tas7JxEREREREdUfvwK9srIyhIeHG1o2KCgIVVVV/myOiIiIiIiIDPA766bRqRQ45QIREREREVHD8CvQa9WqFYqKigwtW1pairi4OH82R0RERERERAb4FehlZGRg//79hpY9fPgwOnXq5M/miIiIiIiIyAC/Ar2JEyfiiy++wKpVq3SX27ZtGz777DPcfvvt/myOiIiIiIiIDDA5/Rg8V11djZtuugnr1q1D9+7dkZ6ejqCgICxatAjDhg1D69atkZOTg23btmHw4MH44YcfEBQUFMj9vyKUlJQgJiYGxcXFiI6ObuzdISIiIiKiRmI0NvAr0JMsWrQI69atQ3Z2NoqLi12vR0VFIS0tDUOGDGFrnh8Y6BEREREREdDAgR7VLwZ6REREREQEGI8N/J5egYiIiIiIiJoWBnpEREREREQtDAM9IiIiIiKiFsZqZKEhQ4YgOzvb742lp6dj7dq1fq+HiIiIiIiItBkK9GbMmIGcnBzZa06nE88//zzGjBmDa665RvVzTqcTu3fvxooVK3DjjTcy8yYREREREVED8Cvrptlsxj/+8Q888sgjust98sknePjhh7Fz50506dLF181dsZh1k4iIiIiIgCaWdfPuu+9Ghw4d8NprrzXE5oiIiIiIiK5oDZaMZfTo0fjxxx8banNERERERERXrAYL9BITE3H27NmG2hwREREREdEVq8ECvcjISJSXlzfU5oiIiIiIiK5YfgV6UVFRKC0tNbTs5cuXERUV5c/miIiIiIiIyAC/Ar2MjAwcO3bM0LLHjx9Henq6P5tzKSoqwty5c9G7d28kJiYiISEBCQkJ6NGjB2bNmuWxi2hRURFmz56NtLQ012cTEhKQnJyMESNGYPPmza5lDx8+jPbt28uWE/9FR0fjj3/8IwCgrKwMkZGRmstK/5YuXRqQ40BERERERKTG0Dx6WkaPHo0FCxbg6aefRufOnTWXO3z4MD799FM8+uij/mwOAGC32zFy5EjccsstWLt2LVq1agWTyQQAKC4uxgcffIBBgwZhz549CA8PV13HnDlzEBsbi6ysLERERLhedzgc2Lx5M6ZNm4ZNmzYh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N6KkpKQ+94eIiIiIiIj8ZLjrZq9evXDx4kUMHjwY69atAwBMnz4d2dnZhjeWmpqKjz76yOudJCIiIiIiIuMMB3qxsbG4cOECYmNjXa916tQJFovF8MZSU1O92TciIiIiIiLygeHpFWw2G86cOYPk5GSYTKb63i8ScHoFIiIiIiICjMcGhlv0rFYrUlJSArJzREREREREVH/8yrpJRERERERETU+DBXpLlixBt27dGmpzREREREREV6wGC/R27tyJS5cuNdTmiIiIiIiIrliGx+g5HA6fNlBZWYmsrCy8//77GDx4sE/rICIiIiIiIuMMBXqdOnXyar48NT179sSrr77q1zqIiIiIiIjIM0OB3r/+9S/k5eX5tIHQ0FCkpaVh4MCBXs25R0RERERERL4xFOjdeOON9b0fREREREREFCCcXoGIiIiIiKiFYaBHRERERETUwhjOummUmJ3TbGYcSURERERE1ND8jsTOnz+PRx99FH369EFUVBSCgoJc/6KiotCnTx88+uijOHfuXCD2l4iIiIiIiDzwq0Xv3Llz6NGjB0wmE+69916kpqYiKirK9X5paSmys7Px0Ucf4fPPP8e+ffvQtm1bv3eaiIiIiIiItPkV6D333HMAgIMHDyI+Pl5zud///vfo3r075s+fj7feesufTRIREREREZEHfnXd3Lx5M6ZMmaIb5AFA69atMWXKFGzcuNGfzREREREREZEBfgV6x44dQ8eOHQ0t26FDB5w4ccKfzREREREREZEBfgV65eXlCAsLM7RsWFgYysvL/dkcERERERERGeBXoBcdHY3CwsJA7QsREREREREFgF+BXseOHZGbmxuofSEiIiIiIqIA8CvQGzt2LJYtWyabJJ2IiIiIiIgal1+B3ty5c2G1WvH73/8+UPtDREREREREfvJrHr033ngDGRkZeP311/HVV1/h+uuvh8ViUV320KFDAIDp06fLXu/QoQP+9Kc/+bMbREREREREJPAr0Dt16hQcDgeGDBkCAMjLy9NcNjw8HEOGDEFOTo7sda3AkIiIiIiIiHzjV6D3wQcfBGg3iIiIiIiIKFD8GqNHRERERERETQ8DPSIiIiIiohaGgR4REREREVEL49cYPcnu3buRlZWFvLw8lJeXay7XoUMHzJgxIxCbJCIiIiIiIg1+BXqXLl3CpEmTsGbNGjidTrRq1QphYWGay3fq1ImBHhERERERUT3zK9B75pln8OOPP+Ktt97CPffcoxvkERERERERUcPwK9D7/vvvMWPGDDz00EOB2h8iIiIiIiLyk1/JWI4fP45evXoFal+IiIiIiIgoAPwK9Gw2GywWS6D2hYiIiIiIiALAr0Cvbdu2OH36dKD2hYiIiIiIiALAr0Bv9OjRWLFiBex2e6D2h4iIiIiIiPzkV6D3l7/8BQ6HA+PGjcOqVatw8OBBnDp1SvNfSUlJQHa6qKgIc+fORe/evZGYmIiEhAQkJCSgR48emDVrFs6ePevx87Nnz0ZaWprrswkJCUhOTsaIESOwefNm17KHDx9G+/btZcuJ/6Kjo/HHP/7RtbzNZsM777yDq6++Wva59PR03Hrrrdi1a1dAjgEREREREZEWv7Jutm3bFs8++yzuuece/PDDD4aWP3PmjD+bhN1ux8iRI3HLLbdg7dq1aNWqFUwmEwCguLgYH3zwAQYNGoQ9e/YgPDxcdR1z5sxBbGwssrKyEBER4Xrd4XBg8+bNmDZtGjZt2oSkpCR06dJFt3vqggULUFxc7Pr7qaeeQk5ODj777DOkp6fDbK6JpSsqKvDDDz9g4sSJWLRoEfr16+fXcSAiIiIiItLiV6C3cOFC3HPPPRg0aBCmTp2K5ORk3bn02rVr58/mAACLFi1Camoq5s+f7/ZeTEwMHn/8cRw7dgxvv/025syZo7qOVatW4fjx4277ajabMXjwYEyePBlLlizBrFmzPO7PqVOn0LNnTwDAmTNnsHjxYhw4cMBt3aGhoZgwYQKqq6sxf/58LFmyxOhXJiIiIiIi8opfgd5f/vIXXH/99Vi3bp2rVa2+7d27F8OHD9ddZtSoUVi8eLHm+3PnztUNSFNSUpCTk+NxX+x2O5YtW+YKKA8ePIirrrpKd90jR47EU0895XHdREREREREvvJrjN6hQ4cwZsyYBgvyACA3NxeJiYm6yyQlJeHUqVOa72u19EmysrKQkZHhcV+ef/55DBkyBElJSYb3LSYmBgUFBR7XTURERERE5Cu/WvTKy8sRGxsboF0xxm63e5y7z2q1wmaz+bT+pUuXYtWqVXjxxRc1l7HZbJgzZw72798vazk0sm9GVFZWorKy0vV3oJLYEBERERHRlcGvFr3Y2FgUFhYGal8aVWFhIWbMmIE5c+Zg8eLFiIuLU12urKwMkyZNQmVlJVatWoWoqKiA78vLL7+MmJgY17+UlJSAb4OIiIiIiFouvwK9wYMHY8eOHYHaF58cOnQI6enpOHz4sE+fdzqd+Pzzz9G3b1/ExcVhx44d6NOnj+byTzzxBHr27Im3334bQUFBHtffv39/fPrpp17t07x581BcXOz6Z2S8IBERERERkcSvrpuvv/46hg4divfffx/33XdfoPbJK127dsXx48d9+mxOTg5mzJgBp9OJlStXurJnatm/fz82bdqEzMxMw+MSd+7c6fV+hYSEICQkxOvPERERERERAX4Gei+88AKio6Mxc+ZMzJ07Fx07dtScuw4AUlNT8dFHH/mzSUPj72w2G6xW/a+2detW3HXXXZg3bx4efPBBQ4HbsmXLMGXKFAQHB/u8b0RERERERPXNr0AvPT0dFosF119/vaHlO3bs6M/mAADJycnIz8/XXSYvLw8dOnTQfL+oqAiTJk3C559/jsGDBxve9pYtW/DYY4/5tW8lJSVo1aqV4W0SERERERF5y69A7w9/+EOAdsO43r1745NPPsHs2bM1l1mzZg169+6t+f7rr7+OqVOnehXkAcDp06fRvn17zfe7deuG7du3o6ysTLNl09O+ERERERER+cuvZCyN4bbbbkNubi7mz5+Pixcvwul0ut4rKSnBggULsGLFCjz00EOa68jMzMS4ceO83valS5cQERGh+X5CQgImTZqEadOm4ejRo3A4HK73KisrsXz5cjzxxBONEiATEREREdGVw68WvcZgsViwevVqvPjiixg6dKgs2IuNjcXQoUOxceNGV0C2du1azJw5Ezt27EB0dDQAoKCgAHfccYfunHcjR450y5YZHR2NmJgY3f177bXX8O6772LKlCk4ffq0K9gLDw9Hr1698M0336B///4+f38iIiIiIiJPTE6xSYyapJKSEsTExKC4uNgVrBIRERER0ZXHaGwQkBa9zMxMbNy4EdnZ2SguLtZcrmPHjpg/f34gNklEREREREQa/Ar0HA4HZsyYgU8//RRRUVFo164djh49im7duqFVq1aw2WzYuXMnqqurcdVVV3HqASIiIiIiogbgVzKWf//73/jkk0/w9ttvo6CgAGvWrIHT6cRrr72GDRs24Oeff0ZeXh4mTJiA6OhofPDBBwHabSIiIiIiItLiV6D34Ycf4tZbb8XMmTNhNptVJx1v1aoVFi5ciO3bt+Odd97xZ3NERERERERkgF+B3rFjxwxlkAwPD8ett96KhQsX+rM5IiIiIiIiMsCvQO/8+fOIj483tGxaWhr279/vz+aIiIiIiIjIgAabML1Vq1YoLCxsqM0RERERERFdsfwK9Fq1aoWSkhK319Wm5lMbv0dERERERESB51eg1759exw+fNj1d+vWrQFAteWuqKjI9T4RERERERHVH78CvVtuuQWLFi3C7t27AQAhISHo1KkTVq1a5bbsd999h27duvmzOSIiIiIiIjLArwnTH3/8cSxatAgDBgzAfffdh//85z947rnncO+99+LkyZO4+uqr4XA4sGHDBuzcuRM//PBDoPabiIiIiIiINPgV6LVu3Ro///wzli9fDrO5pnHwnnvuQUJCAt566y38+OOPsFgsyMjIwJtvvolrr702IDtNRERERERE2kxOtcwp1KSUlJQgJiYGxcXFiI6ObuzdISIiIiKiRmI0Nmiw6RWIiIiIiIioYTDQIyIiIiIiamEY6BEREREREbUwDPSIiIiIiIhaGAZ6RERERERELQwDPSIiIiIiohaGgR4REREREVELw0CPiIiIiIiohWGgR0RERERE1MJYA7GS6upqHDx4ENnZ2Th//jxCQ0Nx++23IyQkBJs2bUJycjI6duwYiE0RERERERGRB34Hel988QXmzp2LnJwcOJ1OAIDJZELr1q0xevRoPPjggzh06BCmTZuG9957D1ZrQGJLIiIiIiIi0uBX181ffvkFU6ZMwQ033ICtW7fi4sWLOHnyJJxOJ2w2GwBg586dePfdd/H555/j7bffDshOExERERERkTa/Ar0XXngBAwcOxMKFCzFw4EDExcXBbJavMiQkBDNmzMDEiRPx8ccf+7WzRERERERE5Jlfgd6BAwcwatQoQ8v27dsXJ06c8GdzREREREREZIBfgd7JkyeRmJhoaNmoqChcuHDBn80RERERERGRAX4Feg6HAxaLxdiGzJzJgYiIiIiIqCH4FX2ZzWbY7XZDy9rtdphMJn82R0RERERERAb4FeilpKQgLy/P0LLnz59HSkqKP5sjIiIiIiIiA/wK9Lp164bVq1e75s/Ts3btWnTt2tWfzREREREREZEBfgV68+bNQ2ZmJqZNm4bMzEwUFBS45s9zOBwoKyvDoUOH8Oijj2Lz5s145plnArLTREREREREpM3kNNIcp+ODDz7AvHnzcO7cOddrTqdTNh6vdevW+POf/4z77rvPn01dsUpKShATE4Pi4mJER0c39u4QEREREVEjMRob+B3oAUBFRQUOHjyI7OxsFBcXu16PiopCWloaunXrhrCwMH83c8VioEdERERERIDx2MAaiI2FhoaiX79+6NevXyBWR0RERERERH7g5HZEREREREQtjF8tek888QTMZjPmzJmD9u3bB2qfiIiIiIiIyA9+z6P37rvvIj09HQ888AAOHjwYqP0iIiIiIiIiH/kV6M2ZMwenTp3CCy+8gFWrVqFnz56YOHEitmzZEqj9IyIiIiIiIi/5PUYvKioKc+fOxYkTJ/D222/jwIEDGDRoEIYNG4aVK1cGYh+JiIiIiIjICwFLxhIcHIyZM2di//79+PLLL1FRUYFx48ahT58+WLhwIex2e6A2RURERERERDoCnnXTbDZj0qRJ2LJlC3788UckJSXh7rvvRufOnfHJJ58EenNERERERESkEJAJ0/WUlJTgf/7nf/DBBx8gNjYWBQUF9bm5FokTphMREREREWA8Nqi3efSOHz+OOXPmICUlBZ9++inuvvturFu3rr42R0RERERERLX8mkdPzbp16/DXv/4Vy5YtQ6tWrfD4449j1qxZSExMDPSmiIiIiIiISEVAAr2qqiosXLgQf/vb37Bnzx707NkT77zzDqZOnYrQ0NBAbIKIiIiIiIgM8ivQO3fuHN5880289dZbOH/+PMaPH4/XX38dI0aMCNT+ERERERERkZf8CvRuvfVWZGVl4b777sNjjz2GjIyMQO0XERERERER+civQO+LL75ATEwMM0ESERERERE1IX4FeikpKYHaDyIiIiIiIgoQw9Mr2O125Obm1ue+EBERERERUQAYbtHr2rUrTpw4gTFjxmD58uUAgOeeew7Z2dmGN5aamornn3/e650kIiIiIiIi4wwHeqWlpXA6nbh8+bLrtZycHOTk5BjfmDXg0/YRERERERGRguHIKysrCwcPHkS/fv1cr73//vv1sU9ERERERETkB8OBXps2bdCmTZv63BciIiIiIiIKAMPJWJqCoqIizJ07F71790ZiYiISEhKQkJCAHj16YNasWTh79qzHz8+ePRtpaWmuzyYkJCA5ORkjRozA5s2b3T6TmZmJ0aNHIzk52bV8u3bt0L59e4wY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STxtNpvbsjabTTfbJREREREREQWGX4Fet27dsGHDBtffbdu2RUhIiGoXTSkjJxEREREREdUvvwK9GTNm4KeffsKTTz6J06dPw2QyYejQoViwYAGOHz/uWm737t348MMPMWzYMH/3l4iIiIiIiDzwax49AJg/fz7eeOMN9OzZEz///DMOHjyIsWPH4uTJk4iJiYHD4UBpaSl69uyJH374Ae3atQvUvl8xOI8eEREREREBxmMDvwM9AKiqqkJZWRliY2MBAJWVlVi1ahVOnDgBi8WCjIwMjB49mmP0fMRAj4iIiIiIAOOxgTUQGwsODkZwcLDr75CQENx6662BWDURERERERF5ya8xekRERERERNT0NFigd/jwYbz00ksNtTkiIiIiIqIrVoMFekuWLMGrr77aUJsjIiIiIiK6YjVYoLd27Vp06dKloTZHRERERER0xTKUjOW5555Ddna2TxuorKzEvn37cODAASxatMindRAREREREZFxhgK9U6dOIScnx6cNhIaGYsiQIXjvvfdwzTXX+LQOIiIiIiIiMs5QoPfBBx/U824QERERERFRoHB6BSIiIiIiohaGgR4REREREVELw0CPiIiIiIiohTE0Rs+T/fv3Y82aNcjOzsb58+cRGhqKP/3pT2jbti1ee+01JCQk4LbbbkNUVFQgNkdEREREREQ6/G7Rmz17Nvr27YvnnnsOq1evxpEjR/Duu+9i+/btAIBdu3bh/vvvxw033IBz5875vcNERERERESkz69A75NPPsGbb76Jf/zjHzh//jx2796NL7/8Ek6n07XMp59+igMHDuDMmTP461//6u/+EhERERERkQd+BXrvvPMObrnlFjz88MOwWmt6gZpMJrflMjIycOedd2LJkiX+bI6IiIiIiIgM8CvQO3LkCPr3729o2bS0NOTl5fmzOSIiIiIiIjLAr0Dv7NmzaN26taFlw8PDUVJS4s/miIiIiIiIyAC/k7GoddX0ZzkiIiIiIiLyj1+BXnBwMCoqKgwtW1VVheDgYH82R0RERERERAb4Feilp6cjJyfH0LJnzpxBWlqaP5sjIiIiIiIiA/wK9AYMGIAvv/wSly9f1l2uuroaX3/9NQYOHOjP5oiIiIiIiMgAqz8ffvHFF9GjRw/07dsXs2bNQlpaGqqrq2EymbB7924AQE5ODt555x3k5+fjhRdeCMhOExERERERkTaTU5zd3AcHDhzA73//e6xbt041q2ZUVBSGDBmCV155BT169PBnU1eskpISxMTEoLi4GNHR0Y29O0RERERE1EiMxgZ+B3qioqIiFBcXu/6OiopCq1atArX6KxYDPSIiIiIiAozHBn513VSKjY1FbGxsIFdJREREREREXvJ7Hj0iIiIiIiJqWvwK9Lzp9blt2zZs27bNn80RERERERGRAV4FehcvXsSjjz6KXr16ISwsDFarFSkpKRg3bhzWr1+v+pmCggI8+OCDuO666/D+++8HZKeJiIiIiIhIm+ExehcuXECvXr1gs9kwY8YMdOrUCcHBwcjLy8PSpUsxfPhwfPnll5g0aZLrM++//z7mzp0Lu92Of/3rX5g5c2a9fAkiIiIiIiKqYzjr5qxZs/Dll19i//79aNu2rew9p9OJSZMm4ZdffkFeXh727duH3/zmN9i0aRPuuece/OUvf0GbNm3q5QtcCZh1k4iIiIiIAOOxgeGumxs3bsTUqVPdgjwAMJlMePzxx5Gfn48pU6agX79+uHDhAn788Ud8+OGHDPKIiIiIiIgakOFA78iRI0hLS9N8v2PHjgCApUuX4o9//CN2796NYcOG+b2DRERERERE5B3DY/SqqqoQEhKi+X5wcDAA4IMPPsCdd97p/54RERERERGRTwI+j15ERESgV0lERERERERe4ITpRERERERELQwDPSIiIiIiohbGq0DPZDIFZBkiIiIiIiKqP4bn0TObzYiNjUVkZKTq+zabDfn5+YiPj0dYWJjqMhkZGfjxxx9939srFOfRIyIiIiIiwHhsYDjr5nvvvYeTJ0/6tVMdOnTw6/NERERERETkmeFAb8aMGfW4G0RERERERBQoTMZCRERERETUwjDQIyIiIiIiamEY6BEREREREbUwDPSIiIiIiIhaGAZ6RERERERELQwDPSIiIiIiohaGgR4REREREVELw0CPiIiIiIiohWk2gV5RURHmzp2L3r17IzExEQkJCUhISECPHj0wa9YsnD171uPnZ8+ejbS0NNdnExISkJycjBEjRmDz5s1un8nMzMTo0aORnJzsWr5du3Zo3749RowYgZ9//tntM2fOnMHDDz+M7t27u/YzMTERffr0we9//3uUlJQE7JgQERERERGpaRaBnt1ux8iRIxEREYG1a9ciLy8P+fn5yM/Px88/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/fjjj4yx3GSZr776iu233362Qvi8efPYtGnTXLaeaAxqa2vZAQccwK6//no2e/ZsQdHLZQ5pqeMOhW4StixbtgyjRo2y3WfMmDFYtmxZI7WIaEwOOuggHH744Za/l5eX6+Ex8Xgc27dvx+DBgy337969O7p27YqNGzfq27L1saKiIuy3335YuXJlDndANAdWrVqFSy+9FC+99BIKCgr07dRnCAD49ddf0bdvX9t9xo8fD49HFVmyvX+Px4PRo0cL8xLNZa2LrVu3olu3blAUxXKfHj166PNTLu9/2bJlOPTQQ/V+5+QYovnAGMNll12G6667zvRbLnNISx13SNEjbNmwYQO6detmu09ZWRnWrVvXSC0iGpPx48ejT58+lr8vX74c/fr1AwBs3rwZnTt3znpOY3+prKxEcXGxq2OIlkNNTQ1OOukk3HvvvSZhnvoMAQCxWAzBYNB2n0suuQR77703gNzmJZrLWhe9e/fGH3/8gVQqZbnP+vXr9fmL+syfj8LCQpx66qnS33KZQ1pqHyJFj7AlmUzC6/Xa7uPz+UwJOYjWz8aNG3H++edj2rRpAJz1FSC3/kJ9rGXCGMPUqVMxduxYjBs3zvQ79RlCY+fOnbjkkkuwzz77CIk1Bg4ciKlTp6KiokLfN5d5ieay1oXP58PQoUPx97//HTt27BASNkWjUTz99NP49ddfdUWP+gzhlnz0h+bQh0jRIwjCFYwxPPHEE9h7770xadIknHzyyU3dJKKZcv/992PTpk248cYbm7opRDPn1ltvxRFHHIHPPvsMmzdvxubNm7Fp0yZ89tlnGDhwII466igSqAmBa665Bg8++CA6dOiATp06obS0FF27dkVhYSGmTJmCF1980TbskiD+DNAXQLhi5cqV6NOnD37++eembgrRBPz888844ogj8PDDD+Pdd9/FpZdearv/xRdfjIsvvtjVNW699Vap94doWXz22WeYN28enn32Wfh8PsfHUZ/5c3LaaafhuOOOQ2Fhob5NURS0a9cOl156KXr06IGPP/5YeuwzzzyDffbZx9X1PvzwQ/Tr149KKrRQtm3bhnHjxuGRRx5BOBzG77//js2bN2PLli2oqqrC008/jVtvvRWxWEx6fC6yTGVlJfr164cPP/wwT3dBNBdymUNayrjjfPYlCAC77bYb1q5d29TNIBqZZDKJm2++GY8++ihuuOEGnH322Y4spQ888IDra82aNSuXJhLNiM2bN2PChAn497//ja5du7o6lvrMn5Pdd9/d9vc999wTa9aswejRo02/nXnmmTjzzDNdXe/QQw/F6tWrXR1DNB+ee+45HH/88TjllFNMvxUVFeGUU07BF198gRdffBETJ0407ZOLLNO2bVvqM62UXOaQljLukKJH2OIkdjiRSLiy2BMti3A4jAkTJsDn8+H7779Hu3btpPs5jTPPpb9QH2s5JBIJnHbaaZgxYwYOOeQQ232pzxAafDZWGYWFhaipqQGQ27xEc1nrYsWKFTjwwANt9xk0aBC++uorTJw4kfoM4Zp89Ifm0IeodxK29OjRA5s3b7bdp6KiAj179mykFhGNzRVXXIEePXrggQcesE1lXVpaiu3bt2c9n7G/tGvXDuFw2DYDFvWxlsNnn32GJUuWYMWKFbj11ltNv1dWViIQCOCll17Ca6+9Rn2GQFFRESKRiO0+dXV1KCsrA5CZlzp16mS5f0VFhZ6lkz/GDuozLQcngrGiKLqQncv779GjB5YvX+7qGKJlkMsc0lLHHVqjR9gyaNAgLFq0yHafRYsWYdCgQY3UIqIxWbVqFRYuXIh58+bZKnmAOvF27twZ3377reU+FRUV2LJlC7p3765vy9bHampqsGTJEuy2226u2080PiNHjkQ4HMaWLVv0pBr8f6eddhqefPJJvPXWW9RnCABAnz59sGrVKtt9fvrpJz2DYrb3n0qlsHjxYmFeormsddGnTx/8+OOPtvv8+OOP6N27N4Dc3v+gQYOwePFi2xIO1GdaJrnMIS123GmwUuxEqyCRSLD999+fXXfddWz79u0slUrpv1VWVrJ7772X9e3bl4XD4SZsJdFQPP/882zSpEmO93/99dfZnnvuyT755BMWi8X07YlEgi1dupQNGzaM3XvvvcIx33zzDdtll13YW2+9xSKRiL49mUyyVatWsfHjx7PLLrus/jdDNAvOOecc9uqrr+p/U58hKioqWO/evdnixYtZMpkUfovFYuxf//oX23333fV3vWHDBlZeXs6eeeYZVlNTo++bSqXYhg0b2JQpU9iJJ54onCccDrM+ffqwe++9l1VVVQnHbN++nV177bVs//33N12faJ5s27aN9erViy1cuJAlEgnht0Qiwd555x3WvXt3VlFRoW/LRZY54YQT2NSpU9mGDRuEY2pqatjTTz/NysvL2caNGxvwTol8MHv2bHbXXXfpf+cyh7TUcUdhjCs+QhASKisrcfPNN+Ptt9/G77//rteradeuHUaOHInrr78epaWlTdxKoiF48MEHceWVV9qGN/j9fnzxxRd6WNUHH3yAuXPnYtWqVYhGo/o+vXr1wowZM3DiiSeavINLly7F7NmzsXz5ctTW1gIAPB4PunfvjilTpuC8885zVG+NaP5ceumlOO644zBmzBh9G/UZYsmSJbj66qvx448/Ih6P69uDwSAOOuggzJ07V/foAcDq1atx7bXX4uuvv0Z1dTUANVSva9euOP300zF9+nSEQiHhGps3b8bs2bPx0UcfobKyEowxKIqCjh07YuzYsfj73/+ONm3aNM4NE/Xmu+++w6xZs7B8+XKhz/h8PgwcOBA33XQThgwZom/PRZaJRCK466678Pzzz2PLli36MSUlJRgyZAhuvPFG9O3btxHulqgPd955J9q2bYvzzjtP35bLHNISxx1S9AiCIAiCIAiCIFoZtEaPIAiCIAiCIAiilUGKHkEQBEEQBEEQRCuDFD2CIAiCIAiCIIhWBil6BEEQBEEQBEEQrQxS9AiCIAiCIAiCIFoZpOgRBEEQBEEQBEG0MkjRIwiCIAiCIAiCaGWQokcQBEEQBEEQBNHKIEWPIAiCIAiCIAiilUGKHkEQBEH8SYjH44hEIk3aBsYYwuFwk7aBIAjizwApegRBEESrYf78+VAUxfV/c+fO1c9x7rnnIhgM4u23327CO8kvTz75JAYOHIjCwkKcdNJJTdqWRx55BCUlJejVqxdmzJiBaDTapO0hCIJorfiaugEEQRAEkS9Gjx6N+++/H4wxYfu2bdtwww03YNq0adh1111Nxx1xxBH6vz/66CPEYjF8/fXXOOaYYxq8zQ3NjTfeiOuuuw5nnXUWpk2bhtGjRzdpe04//XQUFxfj+++/x3333YdvvvkGH374IRRFadJ2EQRBtDYUZpwNCYIgCKKVsXr1auy6665YvHgxDj30UNt9b7jhBrz88st4+OGHceCBBzZOAxuIyspKlJeX46abbsK0adOaujkmvvvuO+yzzz5YtGgRRo0a1dTNIQiCaFVQ6CZBEARBcFx33XX47rvvWrySBwBvvvkmfD4fpkyZ0tRNkbLXXnvhqKOOwvz585u6KQRBEK0OUvQIgiAIopWyfv167LnnnigoKGjqpliy3377YcOGDU3dDIIgiFYHKXoEQRAEwfH++++jb9++SKVSpt/69euHd999F0899RT22msvhEIhKIqCjh07Yvz48Vi9ejUAYOHChTj44INRUlICRVHQtm1bDBkyBM8995zldRljeO2113DooYeiR48eeqIYv9+P/v374+STT8ZPP/3k6l4qKirQuXNny9/fe+899OnTB6lUCgsWLMC4ceNQWloKr9eLYDCIAQMGYOLEifjll18szzF//nzstddeKCgoMCW56dq1KyZMmICKigrL4zt37mz7O0EQBJEblIyFIAiCIDg2bNiAtWvXIpVKweMR7aFr1qzB3LlzsWzZMkyYMAFnnXUWAoEA1q1bhyeeeAIjR47EQw89hBNOOAHjxo3DUUcdhfbt22Pnzp14++23ccYZZyCRSODMM880XfeGG27AnDlzMHLkSJxzzjno2rUrPB4P4vE4Nm7ciDfffBN77bUXFi1ahOHDhzu6l+rqahQXF1v+vnHjRvzyyy/429/+hrvuugtHHXUUzj33XHTp0gWpVAobNmzASy+9hD322ANff/01Bg4cKBz/0Ucf4cwzz8QJJ5yAs846C6FQSP+NMYYVK1bgpZdewhlnnIGPPvpI2oaSkhJUVVU5uh+CIAjCOaToEQRBEIQLli1bhp9++gldu3YVtk+ePBl77LEHxo8fj8ceewyTJk0Sfr/66qsxcuRI3HHHHSZFr6KiArfeeiuuuOIK3HbbbdIMlHPnzsWYMWNwxRVX4IsvvnDcXifZLBcsWIC1a9eiR48ept9uvvlmDBkyBFdddRXeeust4bdnnnkGgwcPxssvv2x5ndGjR+Pkk0/Gxo0b0b1795zaRxAEQbiHQjcJgiAIwgWat83I7rvvjiFDhqBjx444++yzTb97vV5MnDgRP/zwgyks9IsvvkAkEsGVV15pqfgEAgFMmzYNX375JXbu3JmXe9G4//77pUoeABQWFuLCCy/Ehx9+aCpbsX79evTv399WWRs7dixmzpyJNm3a5LXNBEEQhD2k6BEEQRCEC3r37m35W48ePbDLLruYQj753xOJBLZt2yZs//XXX1FUVIQuXbrYXrtPnz4AgN9++81lq+056KCDbH/v1asXampqsH37dmF7hw4dsiqdoVAI//jHP1BSUlLfZhIEQRAuoNBNgiAIgnBBYWGh5W8FBQVZfweAuro6YXtlZSWKi4uzZp+MRqMAYFIU64vX67X9XVPSKisrheQuw4cPxyWXXIL58+fjwAMPRDAYFI7r0KGD7fMgCIIgGg5S9AiCIAiiGbBlyxaUl5c72pdPetKUTJ48GR988IE0uYxG//79MW/ePBx77LGN2DKCIAiCFD2CIAiCaAZ06NABTz75ZNb9QqFQsynm7vf78eKLL+KXX37BmjVrEIlE9N8YY6isrMT8+fNxyimnYOXKlejZs2cTtpYgCOLPBSl6BEEQBNHEaPX2WqrXq3fv3pZrF0844QR06NAB7733Hs4777xGbhlBEMSfF0rGQhAEQRBNTO/evfH777+jtrbWdr9NmzahV69eWLt2bSO1zJ4HH3zQtpg6ABQVFaFDhw7YvHlzI7WKIAiCAEjRIwiCIIgmZ+jQoQgGg3jggQds93v44YexdetWlJaWNlLL7Lnjjjtwzz332O6zY8cObN++3bJ8A0EQBNEwUOgmQRAEQTQxPXr0wFVXXYWZM2di8eLFej0+j8eDZDKJyspKfPHFF3j77bdx9dVXO85k6fP5TBk+88mpp56KO+64A9u2bcPee++tZxUF1DV61dXVePnll1FUVISjjz5aeo54PA6fj8QRgiCIfEMjK0EQBNHq6dixI8rKytCtW7es+3bv3h29e/eW1sLr27cvunfvbnlsr169bJWW0tJSdOnSBe3atTP9NmfOHAwePBj33nsvHn30UVRUVAAAPB4POnfujP79++Pxxx/HOeeck/Ue+Ot9+eWXlr+XlZVZ3itPly5d0KVLF3To0EHYfv311wMAnn32WTz//PNIJpPC7+3bt8fgwYOxcOFCyxqBW7dudfReCIIgCHcojDHW1I0gCIIgCCL/PPjgg7jjjjuwevVqKIrS1M2R8pe//AW1tbV47rnnmropBEEQrQpao0cQBEEQrZRRo0bhl19+wfvvv9/UTZGyY8cOvPDCCxg9enRTN4UgCKLVQR49giAIgmjFnHrqqVi4cCFuvPFGHHjggdhzzz1RVFTUZO1JpVL44Ycf8NNPP+Haa69FdXU11q5d22yKwBMEQbQWyKNHEARBEK2Yxx9/HGeccQamT5+OAw88EKecckqTtueRRx7B4MGDcdppp6Fjx4749NNPSckjCIJoAMijRxAEQRB/AmpqarBy5Uq0adMG/fr1a7J2VFVV4fvvv8duu+2Gzp07N1k7CIIgWjuk6BEEQRAEQRAEQbQyKHSTIAiCIAiCIAiilUGKHkEQBEEQBEEQRCuDFD2CIAiCIAiCIIhWBil6BEEQBEEQBEEQrQxS9AiCIAiCIAiCIFoZpOgRBEEQBEEQBEG0MkjRIwiCIAiCIAiCaGWQokcQBEEQBEEQBNHK+H+f3Xss4u6MzAAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Wait for the sequencer to stop with a timeout period of one minute.\n", "module.get_acquisition_status(0)\n", "\n", "# Move acquisition data from temporary memory to acquisition list.\n", "module.store_scope_acquisition(0, \"non_weighed\")\n", "\n", "# Get acquisition list from instrument.\n", "non_weighed_acq = module.get_acquisitions(0)[\"non_weighed\"]\n", "\n", "# Plot acquired signal on both inputs.\n", "fig, ax = plt.subplots(1, 1)\n", "ax.plot(non_weighed_acq[\"acquisition\"][\"scope\"][\"path0\"][\"data\"][0:1000])\n", "ax.plot(non_weighed_acq[\"acquisition\"][\"scope\"][\"path1\"][\"data\"][0:1000])\n", "ax.set_xlabel(\"Time (ns)\")\n", "ax.set_ylabel(\"Relative amplitude\")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "bf85ccb8", "metadata": {}, "source": [ "To check if the integration results match what we expect, we need to divide the integration results by the integration length which was set through the\n", "corresponding QCoDeS parameter. Note that the 'valid' key of the dictionary indicates if the bin was actually set during the sequence." ] }, { "cell_type": "code", "execution_count": 19, "id": "e4e30d10", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:08.494506Z", "iopub.status.busy": "2024-11-13T02:39:08.494304Z", "iopub.status.idle": "2024-11-13T02:39:08.510694Z", "shell.execute_reply": "2024-11-13T02:39:08.509302Z" } }, "outputs": [ { "data": { "text/plain": [ "{'integration': {'path0': [0.28158280410356623,\n", " 0.28169369809477285,\n", " 0.2814982901807523,\n", " 0.2817103077674646,\n", " 0.2815378602833415,\n", " 0.2815217391304348,\n", " 0.2814914509037616,\n", " 0.2814743527112848,\n", " 0.28156863702979973,\n", " 0.2816399609184172],\n", " 'path1': [0.25749535906204196,\n", " 0.25736101612115286,\n", " 0.25732046897899363,\n", " 0.257314606741573,\n", " 0.2573981436248168,\n", " 0.25723204689789936,\n", " 0.2573390327308256,\n", " 0.2573097215437225,\n", " 0.2573155837811431,\n", " 0.25729018075232046]},\n", " 'threshold': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0],\n", " 'avg_cnt': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "int_len = module.sequencer0.integration_length_acq()\n", "bins = non_weighed_acq[\"acquisition\"][\"bins\"]\n", "bins[\"integration\"][\"path0\"] = [(val / int_len) for val in bins[\"integration\"][\"path0\"]]\n", "bins[\"integration\"][\"path1\"] = [(val / int_len) for val in bins[\"integration\"][\"path1\"]]\n", "bins" ] }, { "cell_type": "markdown", "id": "73040a66", "metadata": {}, "source": [ "Weighed acquisition\n", "-------------------\n", "\n", "In the following, we look into weighed integrations. This refers to integration with a weighting given by a particular weight that we specified earlier. This is equivalent to multiplying the acquired trace with a function (which specifies the weighting) and integrating the result.\n", "\n", "To do this, we will need to modify the sequence program slightly and reupload it. We will be using a gaussian weight to integrate over input path 0 and a sine weight to integrate over input path 1. The integration length of a weighed integration is determined by the weight length." ] }, { "cell_type": "code", "execution_count": 20, "id": "62d34743", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:08.514732Z", "iopub.status.busy": "2024-11-13T02:39:08.514412Z", "iopub.status.idle": "2024-11-13T02:39:08.519438Z", "shell.execute_reply": "2024-11-13T02:39:08.518364Z" } }, "outputs": [], "source": [ "# Sequence program.\n", "seq_prog = \"\"\"\n", " move 0,R0 #Loop iterator.\n", " move 0,R1 #Weight for path 0.\n", " move 1,R2 #Weight for path 1.\n", " nop\n", "\n", "loop: acquire_weighed 1,R0,R1,R2,1200 #Acquire bins and store them in \"weighed\" acquisition.\n", " add R0,1,R0 #Increment iterator\n", " nop #Wait a cycle for R0 to be available.\n", " jlt R0,10,@loop #Run until number of iterations is done.\n", "\n", " stop #Stop.\n", "\"\"\"" ] }, { "cell_type": "code", "execution_count": 21, "id": "a7114910", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:08.522216Z", "iopub.status.busy": "2024-11-13T02:39:08.521944Z", "iopub.status.idle": "2024-11-13T02:39:08.547953Z", "shell.execute_reply": "2024-11-13T02:39:08.546996Z" } }, "outputs": [], "source": [ "# Add sequence program, waveforms, weights and acquisitions to single dictionary and write to JSON file.\n", "sequence = {\n", " \"waveforms\": waveforms_weights,\n", " \"weights\": waveforms_weights,\n", " \"acquisitions\": acquisitions,\n", " \"program\": seq_prog,\n", "}\n", "with open(\"sequence.json\", \"w\", encoding=\"utf-8\") as file:\n", " json.dump(sequence, file, indent=4)\n", " file.close()" ] }, { "cell_type": "code", "execution_count": 22, "id": "71cd98b7", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:08.550891Z", "iopub.status.busy": "2024-11-13T02:39:08.550646Z", "iopub.status.idle": "2024-11-13T02:39:08.687808Z", "shell.execute_reply": "2024-11-13T02:39:08.684373Z" } }, "outputs": [], "source": [ "# Upload sequence.\n", "module.sequencer0.sequence(\"sequence.json\")" ] }, { "cell_type": "markdown", "id": "d0571871", "metadata": {}, "source": [ "Let's start the sequence and retrieve the results." ] }, { "cell_type": "code", "execution_count": 23, "id": "d7c2f2a1", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:08.697905Z", "iopub.status.busy": "2024-11-13T02:39:08.697052Z", "iopub.status.idle": "2024-11-13T02:39:08.720620Z", "shell.execute_reply": "2024-11-13T02:39:08.717570Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, State: STOPPED, Info Flags: ACQ_SCOPE_DONE_PATH_0, ACQ_SCOPE_DONE_PATH_1, ACQ_BINNING_DONE, Warning Flags: NONE, Error Flags: NONE, Log: []\n" ] } ], "source": [ "# Arm and start sequencer.\n", "module.arm_sequencer(0) # Arm sequencer 0\n", "module.start_sequencer() # Start all armed sequencers\n", "\n", "# Print status of sequencer.\n", "print(module.get_sequencer_status(0))" ] }, { "cell_type": "code", "execution_count": 24, "id": "4f08fde2", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:08.728616Z", "iopub.status.busy": "2024-11-13T02:39:08.727770Z", "iopub.status.idle": "2024-11-13T02:39:09.336001Z", "shell.execute_reply": "2024-11-13T02:39:09.335180Z" } }, "outputs": [], "source": [ "# Wait for the sequencer to stop with a timeout period of one minute.\n", "module.get_acquisition_status(0)\n", "\n", "# Get acquisition list from instrument.\n", "weighed_acq = module.get_acquisitions(0)[\"weighed\"]" ] }, { "cell_type": "markdown", "id": "781b528c", "metadata": {}, "source": [ "To check if the integration results match what we expect we need to divide the integration results by the integration length again. In this case the integration\n", "length is determined by the length of the weights." ] }, { "cell_type": "code", "execution_count": 25, "id": "7f0dc1b0", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:09.338250Z", "iopub.status.busy": "2024-11-13T02:39:09.338046Z", "iopub.status.idle": "2024-11-13T02:39:09.343285Z", "shell.execute_reply": "2024-11-13T02:39:09.342665Z" } }, "outputs": [ { "data": { "text/plain": [ "{'integration': {'path0': [0.08462372561050456,\n", " 0.08465828116608662,\n", " 0.08463784940878447,\n", " 0.08462267872557193,\n", " 0.08460550177807359,\n", " 0.08465691249927311,\n", " 0.08462655243847424,\n", " 0.08469107189323175,\n", " 0.08468319360681054,\n", " 0.08464412037681175],\n", " 'path1': [-3.116073685107354e-05,\n", " 5.179892777026953e-05,\n", " -8.085396217706562e-05,\n", " -5.023019138186186e-05,\n", " -7.083178905873191e-06,\n", " -2.789001694187569e-05,\n", " -6.311141043322659e-05,\n", " -5.458876474498846e-05,\n", " -5.735950959327645e-05,\n", " -1.5021128222164256e-05]},\n", " 'threshold': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0],\n", " 'avg_cnt': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "int_len = waveform_weight_length\n", "bins = weighed_acq[\"acquisition\"][\"bins\"]\n", "bins[\"integration\"][\"path0\"] = [(val / int_len) for val in bins[\"integration\"][\"path0\"]]\n", "bins[\"integration\"][\"path1\"] = [(val / int_len) for val in bins[\"integration\"][\"path1\"]]\n", "bins" ] }, { "cell_type": "markdown", "id": "c0549d31", "metadata": { "lines_to_next_cell": 2 }, "source": [ "Large number of bins\n", "--------------------\n", "The QRM supports up to 131072 bins. To show that, we need to change the program slightly. We will use the non-weighed acquisition program,\n", "however, we will now loop over the maximum number of acquisitions while storing each result in a separate bin." ] }, { "cell_type": "code", "execution_count": 26, "id": "e83a37b3", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:09.345149Z", "iopub.status.busy": "2024-11-13T02:39:09.344984Z", "iopub.status.idle": "2024-11-13T02:39:09.348148Z", "shell.execute_reply": "2024-11-13T02:39:09.347441Z" } }, "outputs": [], "source": [ "# Sequence program.\n", "seq_prog = \"\"\"\n", " move 0,R0 #Loop iterator.\n", " nop\n", "\n", "loop: acquire 2,R0,1200 #Acquire bins and store them in \"large\" acquisition.\n", " add R0,1,R0 #Increment iterator\n", " nop #Wait a cycle for R0 to be available.\n", " jlt R0,131072,@loop #Run until number of iterations is done.\n", "\n", " stop #Stop.\n", "\"\"\"" ] }, { "cell_type": "code", "execution_count": 27, "id": "b40a544e", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:09.349915Z", "iopub.status.busy": "2024-11-13T02:39:09.349742Z", "iopub.status.idle": "2024-11-13T02:39:09.357144Z", "shell.execute_reply": "2024-11-13T02:39:09.356474Z" } }, "outputs": [], "source": [ "# Add sequence program, waveforms, weights and acquisitions to single dictionary and write to JSON file.\n", "sequence = {\n", " \"waveforms\": waveforms_weights,\n", " \"weights\": waveforms_weights,\n", " \"acquisitions\": acquisitions,\n", " \"program\": seq_prog,\n", "}\n", "with open(\"sequence.json\", \"w\", encoding=\"utf-8\") as file:\n", " json.dump(sequence, file, indent=4)\n", " file.close()" ] }, { "cell_type": "code", "execution_count": 28, "id": "dd423d01", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:09.358930Z", "iopub.status.busy": "2024-11-13T02:39:09.358742Z", "iopub.status.idle": "2024-11-13T02:39:09.482905Z", "shell.execute_reply": "2024-11-13T02:39:09.479490Z" } }, "outputs": [], "source": [ "# Upload sequence.\n", "module.sequencer0.sequence(\"sequence.json\")" ] }, { "cell_type": "markdown", "id": "73c060b7", "metadata": {}, "source": [ "Let's start the sequence and retrieve the results." ] }, { "cell_type": "code", "execution_count": 29, "id": "9ad2d557", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:09.490782Z", "iopub.status.busy": "2024-11-13T02:39:09.490612Z", "iopub.status.idle": "2024-11-13T02:39:09.503647Z", "shell.execute_reply": "2024-11-13T02:39:09.502879Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, State: RUNNING, Info Flags: NONE, Warning Flags: NONE, Error Flags: NONE, Log: []\n" ] } ], "source": [ "# Arm and start sequencer.\n", "module.arm_sequencer(0)\n", "module.start_sequencer()\n", "\n", "# Print status of sequencer.\n", "print(module.get_sequencer_status(0))" ] }, { "cell_type": "code", "execution_count": 30, "id": "140fddb4", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:09.505744Z", "iopub.status.busy": "2024-11-13T02:39:09.505562Z", "iopub.status.idle": "2024-11-13T02:39:10.257276Z", "shell.execute_reply": "2024-11-13T02:39:10.256539Z" } }, "outputs": [], "source": [ "# Wait for the sequencer to stop with a timeout period of one minute.\n", "module.get_acquisition_status(0, timeout=1)\n", "\n", "# Get acquisition list from instrument.\n", "large_acq = module.get_acquisitions(0)[\"large\"]" ] }, { "cell_type": "markdown", "id": "d02ce82e", "metadata": {}, "source": [ "Since the number of bins is now too large to simply print, we will check the number of bins and we will check the bins for NaN values which indicate that a bin is not written." ] }, { "cell_type": "code", "execution_count": 31, "id": "a344b9ea", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:10.259549Z", "iopub.status.busy": "2024-11-13T02:39:10.259351Z", "iopub.status.idle": "2024-11-13T02:39:10.317731Z", "shell.execute_reply": "2024-11-13T02:39:10.317075Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of bins: 131072\n", "All values are valid.\n" ] } ], "source": [ "int_len = module.sequencer0.integration_length_acq()\n", "bins = large_acq[\"acquisition\"][\"bins\"]\n", "bins[\"integration\"][\"path0\"] = [(val / int_len) for val in bins[\"integration\"][\"path0\"]]\n", "bins[\"integration\"][\"path1\"] = [(val / int_len) for val in bins[\"integration\"][\"path1\"]]\n", "\n", "print(\"Number of bins: {}\".format(len(bins[\"avg_cnt\"])))\n", "for it, val in enumerate(bins[\"integration\"][\"path0\"]):\n", " if math.isnan(val):\n", " warnings.warn(f\"NaN found at index {it}.\")\n", "for it, val in enumerate(bins[\"integration\"][\"path1\"]):\n", " if math.isnan(val):\n", " warnings.warn(f\"NaN found at index {it}.\")\n", "print(\"All values are valid.\")" ] }, { "cell_type": "markdown", "id": "3255bba5", "metadata": {}, "source": [ "We will also plot the integration results in every bin to visualize the contents." ] }, { "cell_type": "code", "execution_count": 32, "id": "4fef179a", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:10.319778Z", "iopub.status.busy": "2024-11-13T02:39:10.319598Z", "iopub.status.idle": "2024-11-13T02:39:10.467662Z", "shell.execute_reply": "2024-11-13T02:39:10.467005Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA3oAAAIsCAYAAACk89smAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAACZeklEQVR4nOzdd3RURePG8Wc3PSGFnoQEQq8BKWIB6SAI0iwIWLCLoogFxZdXXlGxtx82bKACYkG6oBIE6UiRIr0nhEAo6ckmu3t/fwRWlrQNG9ry/ZyTc8i9c+/Mliz73Jk7YzIMwxAAAAAAwGOYL3YDAAAAAABli6AHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB7G+2I3ACWz2+1KTExUcHCwTCbTxW4OAAAAgIvEMAylp6crMjJSZnPR/XYEvctAYmKioqOjL3YzAAAAAFwi4uPjFRUVVeR+gt5lIDg4WFL+ixkSEnKRWwMAAADgYklLS1N0dLQjIxSFoHcZOD1cMyQkhKAHAAAAoMRbupiMBQAAAAA8DEEPAAAAADwMQQ8AAAAAPAxBDwAAAAA8DEEPAAAAADwMQQ8AAAAAPAxBDwAAAAA8DEEPAAAAADwMQQ8AAAAAPAxBDwAAAAA8DEEPAAAAADwMQQ8AAAAAPAxBDwAAAAA8DEEPAAAAADwMQQ8AAAAAPAxBDwAAAAA8DEEPAAAAADwMQQ8XhN0wZHplkkyvTJLVbr/YzblsZObmyWK1XexmAAAA4DJD0EOpHErL1IGUjALb955M1zurtujR+Su1+ejJAmHuv4s3OP792vLN572dniAzN0/l3pyiGuN/LLBvx/FU/Xkg6by3wTAMrT98XBarTYZhnPf6gHNlNwwdyci+2M0AAOCS4X2xG4DLh90wFPV/+aEjY+RgBfn6SJIOpmao9kfTHeU+WbfD8e9xHVsozZKn11f8G+5WJBy9QC2+OAzDkMlkcvs8G5JOSJKOZOY4bc+12dTgkxmSpA+6tdYTrRs59qXkWBTs6yMvc9lcw/m/v7bpyd/WOG3b8nAfNaoUJpPJpLdWbtGYJRu0/oGbNTJunQwZmn17Z326fodiK5dX2+pVy6QdQElu+ekPzdxxUF/3bqtedaNVIcDvYjcJAICLih49uCzP9m8v3cAZf2r94eOKT81UjfE/FXnMC3+sdwp5krRgzyH9nXRcf+w/rCd+Xa1jWTlKyshS/x8Xqdwbk7XjeGqJbTEMQ6MWrdN3W/ae+wM6dZ7SlJ32z179k3xSWXnWQsvM2nFQld6dpunb9isjN8+l8x7NzNY3m3Yr+6xzpp1xvN0wZJzqsfB77VvH9uGnQphhGNp9Ik3l3/5O3uO+cWwrbNinzYWhs1/9vUtLDx4pEPIkqcmEWTK/+rVMr0zSyLi1yrba1PDTmZqzK15zdyXI/OrXenT+Kt3wzXyNWrTOpZ7H91f/o1WnLgAs3n9YDT75WduPpTiVcbdH8fTjNgxDP2zdp6SMrELLZedZ9fP2A0qz5Dq2pVvytO7wsTLp1Vwef0T7U9LdPo8krT6UrEafztCvew6VyfkuJzO2H9B1E+dp78n853LmjoOSpHtmL1PFd767mE07r1JyLE7vzaJ8sGarnl+0ttTnd+XzAQAudSk5liK/q11JTAbjsS55aWlpCg0NVWpqqkJCQi5aOw6lZTp69MpSn3rRmrUz3mmbMXpI/n19klPv2N6T6dpzMl2J6VkaMmeZJOn40wNdunqfa7Np45GTOpKZrV51o3U4PUvXTpynB5rX039vaKakjCzl2uyqHlqu0OPn707QTdMWOm37tMd1erhlfcfvplcmOe1fe38vtYyo5LQtMzdPi/YnqUvNCJlMUsDrkyVJj7VqoPua1dU/ySlqFVlRjT6d6Tima81I/b4vsdB2vdqhhf6zeL3Ttql922nE72t0JDNH6+6/WQ0rhWrurgSN+mOd9pxM112xtfVNnxucjjn9UfDBmq0a8ftfhdZ1rl7r2EKj/shvY+Lw2xURHChJmrJ5j95bs1XrDh+XJB0ZMUBV3/vecdwH3Vqrb/3q+nrTHn26fodW39tTFQP8lGuzy9tskiGp3KmeZSk/pP207YBurB2pigF+6vPDItWvGKqkjGxN/afgRYFDw29X5Km2nHbfnGWauHG3uteupvkDu0qS6n38s3adSNPM2zqpT/3q5/w8bDpyQs0+ny0p/z1enHRLnv4+ckJXVa2gUX+sk4/ZrDc6t5Svl5ejTLk3Jivz1H9khZ3PMAwlpmepWkjQObf5UpGYnqXl8Ud1a8MashuG44JGhxrh+uOu7gX+9r7tc4PumrVUf9x5ozrEROjz9Tv1275Dmtynnfy8vQqpoWhvrdyicr7eGtqywTm3/2S2RRabTeHlAgvdn2uzKcdqU4ifb5HnsFht8n89/0LPmT3rkrTnRJp+2XNIT/y6Wm90aqnnFq2TJG17pK8aVApzqY2vLtuo0Ys3aNW9PXVNtcqleHRFsxuGzGUwwuFCMAxDLy7ZoEaVwjSwSa1SH//H/sP6eN12vdCmqa6qWuGcRnYcz8rR1H/26Y5GNVU5yL/Ux5eGzW4vs9EfQEkMw1B6bl6xn3FlJd2Sp5C3psjPy6yM5+5U6FtTlZVn1YBGMRrT7io1POMzccGeBL26bJNuaxijehVD1L12lCTJarer65TfFFulvP7vxmvOe5tLy9VsQNC7DFwqQe+umX9qsps9aK5aencP3fDNfJX399XDLeor22rVrQ1idMM38wuUfbl9c42+oZmSM3N0JDNbTaqU1+ajJ/XnwSQ90qK+Hpi7QhUC/PTF3zuVZim5ly3t2cEK9vs3PORYrcqzGWrxxWztPlmwJ2b3o/1V5+OfdVdsbX27eU+B/cboITqRbZGfl1mJGdnq+8MibT2WokAf74t+talqkL9jaGiwr48igwO043jaRW1TaX3T+wa9u/ofpVpyte/U/aM+ZrN+G9RVHSf/6tI5Pux+jVpFVNK1E+c5bW8TVUXda1fTf5fk32N6R6Oa+q5/+1K172hmtg6lZ6l5eEU1mTBT/ySnSMof/uzv7aXl8Uf19MK/9HGP63R15L8XBVp8MdsxfPdMWx/pq0/W7dBfice06lCyY/vpoLfrRJpWH0pWlUB/PRO3VpuPnlSzquX194N9StVud+w8nqoKAX6qFOivXJtNNruhAJ9zv1Ng/eHjavnlnCL3d46JUNz+w0Xu/6Ln9Xpg3gpJ0sc9rtW9zero0fmrZDaZ1K1WpLrWjFT5Ii4WHUjJUMyH+aMWzhyyXpS9J9P17up/9PQ1jVWzfLCk/C845le/liTdXDdan950XYELDNX/70fFp2Xq5DMDFeZfeFs2JB1Xiy/+fR6evz5Wr3VqqR3HUx3DuQvzYPN6qlM+WM9e16RA+DAMQ4//ulpeJpP+769tju0/3dJBtzSMKfaxlmRF/FH1mPa7Xu3QQsOubqjjWTmqGHh+w8u5ik/NVM/vF2rz0ZOSpGeva6KX2l2l1l/N1fVRVTSh5/XFHn8y26IKZ/Ukv9m5lZ65tnGpAl/jT2dq66nRDMVdDMrMzdPRzBzHeywpI0ujF2/QoMa1lJ6bpxtrR8rf21uZuXk6lJ6lehVDnY5fciBJHb5dIEkaf+M1GnZ1Q5fbWJJcm83pglRJth1LUWS5QIX6n/8AgPMnMzfP6fMxOTNHlQL9HO//W3/6Q9O3H1Df+tX1860di/27MAxDJ7ItRX5eTFi3Q9VCAnVDdFXH+ybXZlPcvsO6oXpVrT6UrC5TfpMk/dC/g27/ebHLj+P0392vew6p+3e/S5Km9Wsvi82mu2Jrl8mtOWWBoOdBLpWgZ35lki63N0tEuQAdLuUEDddUq6RmVSqoRXhF3d+8rnxO9RycqwOP31rs8FacHz/e0kG3TV9c5ue1jLpLvl5e2nYsRSPj1mrMDVcptkp5zdkVr4S0TD15TWPtT0lXzQ+nl3yys/zzcF/VrRAiHy9zgR4qV9zXrK6+2rir0H1nfmnMseb3fHatGamq5QJKPG9qTq5C/HwK/Ae3+lCyhi1Ypeevj9VP2w5oeOuGqhoUoFqn7tmdeVsnPbZglQ5nZCtj5OBiw96kjbv08/aDerfr1frz4BH9sjtBAd5e+qbPDY6QVBZC/HwKveATHRKkaf3a67qoyjKZTI4e7s/W79Qj81dKkt7o1FLjlm+Sv7eXjmTmaO6AzmpSubxqhP07CqDyu9/pWJZFAd5eeqFNUwX6eGvs0r+Vekad/t5eyn7+Lq0+lKzokCCtTzqum7+PkyTNu6OLmlUpr0X7k/T5hp1aGn9EklQ9JEgH0zILtDvpyQEKf//7AtsL812/dvL39lKgt7c6xITrgzXbNDKu6OGdCwd3U6CPtyoG+BUICsX56u9dun/ucqdtb3ZupZFxax2h4mS2RcF+PjKbTCX2+GXlWRV4xnvHYrXpuUVr1atOtLrUiix1r+HRzGxVCcp/3xuGob0n09Xvpz8cIa8wp/9+bHa7pm8/ID8vL/1n8XqNueEqdYoJV6V3pxV63M+3dlS/BjVktdt1ICVDtSs4/x9uGIYOpWepWnCgTCaT09/93w/21j/JKRpUSO9ixPvfKykjW5sf6qMmVcrr5u8Xau6uBMf+O5vUUo3Qcnp1+SZJ0rJ7eqhN9L/3TIe9NcXpPWn7zz1l0vN6+rXvVTdKHWqEa0VCsr7oeX2RF1KWHjyidqcu4GY/f6f8vQt+RuTZ7Lp+0jx1qBGut7pc7XYbC5NuydMPW/epemg5ta9RtVRB1dOsTTymX3Yn6LnrY+Xn7aX5uxP03T/79GH3axy9cZm5eZq0abdurhutxPQsXTfpF0n5F0je7NxK32zarXtm54+6sv/nHqdRGJIUN/hGta5WSWOXbtSdTWqpadUKkvJHJkSHBmnoL6v01cZdalAxVNuG9ss/98K/9Paqfwq0N+f5u+Tn7aWRcWv11sotZfIcZIwcrLj9h9Xnh0VO27/u3VZ3N61TJnW4i6DnQS6VoHcuXzwBXBpSnx3k+E+6zw9xmn1quPTZvQbpljyV8/V2hJ0zQ1bz8AqafktH1fpoeom9aGf7oX8H3dYopsD2l5du1OpDyZq3O6HgQZeJ08/hb3sO6cZTV4A9ze5H+xcIKWdafShZJkmzdsZr3KlwUZT9w2519JKG+Pno9U4tnYbFnsi26Ku/d+mOxjW17vBx9f0x/8vWvDu6aHn8UYX4+ej5U0NTA7y9lG21aeej/VW3mPaddnp46ntdr9aT1zQu1f9rrSIqau2pYealYYweUiCInf5yWvej6Y6RIj/d0kG3FnJx6sZakfqyVxuF+PkqPi1TDSqFyuvU3+WwVg00vvu1qvjOdzqRbSm2HcvvuUmtq1XSwdRMpwnUTjv4+G3q++MiHUzL0BudWum+q+rqZLZFj/+6WmPaXaW6FUI09s+/Fervq+GtG2lrcooMGWoyYZZ61K6mXwZ2LfT57Fe/uoa2bKBHflmp3wZ1Ve0KIcqz2Qtc0BrYuKam9nMeMRGfmqnqZ8w8Xdhw+9LampyiasHOPYi9v4/TnF3/3kLybZ8bdGds7XM6/5ajJzV9+wF1qBGu9jXCSyy/92S6nlu0Vm2iquiWBjGKDi1+qP0bKzbLx2xWi/AKqhkW7HShqSyc+ZokPHGb45adZ65t7Ajat09frB+37S/0+Ozn73TckiJJ10dV0cHUDCWk/3tf/I21IvXr3sJvR2kRXlHrk/79O3ukRX11qRlR6N+GJO0Y2k95druaTJjlysNzWZeaEVq4r+D/cSXddnGhEPQ8CEEPwPmy69H+qnPqC/Kyg0d0wzfz1SK8om6sFanXVpT9UiiNK4epY41wPdyivmI/K9v/mC+WasGB2vhg7yJ7dTzJ6Z65BhVD9dugbooODVJWnlVBb0wu+eBT3ulytZ5e6Hwf8PvdWuuJqxuq5oc/6UBqwZ7LM5mkQkeXbHukr/44kKSv/t6lZlUr6KqqFdSrbpRiwvKHN+bZ7PJ9zb0RGuci9dlBCn1raoHttzWMKfLL8qXgw+7XaNiC1Y7f/7qvl67+aq4kacQ1jfTe6q3ndN5tj/RVwzPuQT/T6S/ReTa7/kk+qeZfOA/Z/qTHtWpYKUybjp7U46eGmxY303VGbp5sdsMR6tYcStY1p4bon/mFvajvN2dfoDo9FN3f20vrDh9X8/AKTvc5njnU+7Q/7+6hG07NQG0Yhv5JTtF1k+bp+qgq+uWOLk49XWe360xWu10L9yWqx3fOcwVYX7hb32/drzRLrv5JTtHbXa6Wn7eXY1SCyWTSnhNp+nbzHj3RupFSc3LV7PPZ+rD7Nbortrb6/JAf7n8b1E2VA/2LHUHhf2qkwotLNhRZxtPZ/3PPJTF8k6DnQS6VoNfwkxna7sKMmAAuP22iqmi5hy99grIV5OOthOG36a/E4+o29beL3ZwiLbrzRq1MSC4waRUuPcboIfq/NVsdM0oX54Gr6iq2SnkN/22Nnr8+1nH/8+wBnZWVZ9UvuxMcw/c/6n6trq1WWc8s/Et/nJoJ+raGMXq4RT3HvVxFua1hjIa1aqDm4RVV8Z3vlFfIzLQhfj7a9Wh/p8nEzvR9//a6uW60+vywqMiJ1c7026Bu6lorUh+t3aa1icf1Ra/rVe2DHwostyRJX/Vqo/vOGip9Q3RVx7DvxXd1d9yPCfctGNhVN9audrGbQdDzJJdK0CtqfDQAAMClYHKfG3TnrKUXuxluWzCwq2MyEFw6RlzTSO92bX2xm+FyNmBeXbjspfbNL3YTAAAAiuQJIU8SIe8StfTgkYvdhFIh6MFlgT7ein/itmLLvNGppeYP7HKBWgQAAABcGDtPXF5LUJ37wka4IhU329WiO29Ux5gISfnj7E/f3Hxvszq6rloV1S4frJYRFZWZZ9XP2w/o8V9XF3kuAAAA4FLiynrMlxJ69FAqZpNJBx+/TX8/2FvVzgh9tv/c4wh5pxmjh8gYPURf3dxWD7aop041IxTq76vI4EANu7qh3utacD2csMtowdTWZyxufb7serS/Nj7YW9EhQUX2lH7R83r5epXuT7llREW32lW7fLD61IsudN/GB3u7de7z6YNurTW1b7uL3QycJ2vu66WuNSMvdjMAALgkMBnLZeBSmYzlbGsTj+nqr+bKJMl+juuKZOVZteXoSX27eY+evraxYsKCdf2keVqZkFzisclP3aHKZTCdeb/61TVjx0GXylYLDlTC8Nsdv589JfPL7Zsr0Mdbfx85oW8373G5DafXSdqcfNIxdfKcAZ3Vq65zmLr6yzlae/i4vu7dVm2iqqhKUICC/XwKrHd2podb1NOE9TtVu3ywlt3TQ+HlAostL+UH91ybTXf8vET96tfQ8oSjysqz6v9uvEZbjp5Uq8hKyrPZ9fWm3bqtYYz2nEzXw7+s1Ltdr9aNtavJbhjKyM1zTCl+/OmBemfVP0Wur5UxcrDKvTnFaduKITepceUwGYb08/YDBWYVK60dQ/s5Fn0+8/HnvXC3fMZd+CnXy0rXmpEuzeJ2JUh7drD8vb0uyhT6l4pzXevttFc7tGB2SjecOZoFgOd5sHk9fdbz+ovdDGbd9CSXatCTpA1JxxUdEqRKgf5let7E9CxtTU5R11NTdjepHKYtp6ZOnjugs26qEyWTyaTP1u/Qw7+sdBx3V2xtlwJWnfLB2n0yXRHlApT45ADl2mz68u9denT+qmKPS3lmkNMiq5uPntQn67br9oYxyrMb6lrr396Eg6kZqjH+pwLnuKVBDU3ffsBp2+l1c+buitfN38c5bTub3TBkLmQNl9NfLl5qd5XG/Pm3JOnvB3urWdUKhZ6n1ZdztK6IL4RltSDo6kPJ+Qu7RlRUSo5FXab8poGNa+rpa5vIZ9zXstoNfdLjWj3SsoEGz/hTU//ZK0mqVyFEOx7tX+jje7VDCz3fJlZ7Tqar17SFev76WEcIXH1vT03atFufrNvhOK5d9apafFf3AuveGIYhQ/m91CV9MbuqagX9feSEe0/GKX5eZv1wSwc1qBiq+p/MOOfzZD9/p/y8vGRIjsWTrwRnLuB7pk0P9VFslfL5ZdIylZyVoxZnrcF1rlpGVCzyb6U0etWNclo0u7SOjBigJQeOaN7ueH29yflzbuepv5e6FUK050SaAny89fmGnbq9UYw6fLtARwuZlr0wxugh+if5ZJkvPnylMEYP0cS/d7l9YepCWHVvT3Wd8pvScy+voWhAaVlfuFu3/PSHzCaTvuzVRm+u3KJ7m9VRxQA/JWflFLmu45mCfX3UOrKSfh3U1WntxIuFoOdBLuWgd75ZrDb5eXtJyl/odNeJNA2Ore3YbxiGFu47rEaVQlUtJEhS0Quf/jqwq7rWipTJZJJhGFp9KFn1K4aqfICfo8w3m3Zrz8l0ta8erhM5Fo1bvkm96kTrxtqRahNdtdTtt9ntMptM+ic5RTdNW6j/tbtK911VV6k5ufpx237VqxCilhEVFeTrI0lKt+Sp8rvfqWnVClpzX69S13d64djdJ9Lk62VW9dByxZbPs9m17vAxPThvhe5tVlevrdik/+t2jQY2qVXqukvrYGqGVh1K1i0Najg+NG12u+L2HdbVkZWcXpfTbT2ame14nc8Uty9Re09m6MEW9SRJqTm5qvTud/Ixm5Xx3J2FBuMznb3IbVRwoO67qq5ubxSjSgH+qlouoMQweOypO7T56EntPJGmh39ZqXbVq+qmOlH6fW+iZt3eSWP+/FsB3l56uUMLxzGbj56UxWpzLEIs/bsQ8S0NauinWzs6BdzTPS1nLsB72pnt+6F/B208ckIH0zJlsxuOAO2Osgo7rmodWUmr7u1ZoOe5sEWOY0LLad/jtxY4x/GsHPl4mRXi51vo6zf+xmvk5+WlnSdS1aBiqDrXjFDND6c79n/U/VpFhwTp5nrRWplwVNdP+kUNK4Xq+/4d1LSIxd4faVFfn67f4bStS80Ifd7zesWEBZe6tyfIx1uZeVbHBZHT9qekq+WXc3Ui26Lpt3ZU/wY1ijxHUkaWIt7/wWnbnAGdHReVTrf7vzc0U2Swc4///mG3KiI4QH6vfVuqdl+uXmp3le5pWkfbjqdowZ5DeqfL1Vq0P8mxTmCvulGKrVxer63YrN71ojXr9s6O1/TMv8vF+w+r4+Rf3W5Pw0qh2nasdOvXft7zeh1IzdDKhGTF7T9cZLnTf0sx438scZF6oCSNKoVp67GUYsvY/nOPftmdoJ+27S9wseqdLlfr6YV/OW27s0ktTd7i/P/X+91a68ki1ln88+4eSsnJVeeaETqQmqHYCbO08aHealy5fLHtWrg3UaH+vqoeEqTyAb7yMZtlMpmUY7Uq4PXJkqTdj/ZX7QqXzndwgp4HuZKD3rk4/Z/ukREDtPtEuiZv2aNXO7QoEBwuVTlWq3y9vEoMJyh7hmFoS3KK6lUIcVxgONOJbIuOZeVox/E0da9dTZM27lalQD/1K+ZLtisS07P0XNxavdC2qRpWCnPad/r9/E3vG9S+RlUlZ+WoZUTB+0PTLXnal5KupkX04KZZch1DaT/qfq1uqF61yLBytpvqRGnugM5OoWvXo/316rJNGnl9EzU662qoSdKJZwYqzN9PhmHo5u/jNG93yT1Z73S5Wk9d29jpb+B4Vo6WxR9VZp5VsVXKO3rtJOmLDTv12YadmnN7Z1UtF1Dsue+etVTfbt6j1zq2UL8GNbTkQJLuu6quvM+6Mnt6lMCuR/urzln/qR9Oz1LFQD/5ev373nh12UaNXrzB8Xv6yMF66c+/VTMsWA+3qFfgyu+yg0f0xG+rdXdsbdUqH6xvNu3R5z2vV/kAP3Wf+pt+3Zuo56+P1esrNuuu2Nr6ps8NJT5vrkiz5KrC29/JZhjqUy9aM2/v7Nhns9sLtHPSxl1KycnVk9c0lpR/Eeye2ctcqqtuhRCN69hCkeUCFVulvELemlLyQcX4sPs16larmup9/LPT9qV399AN38x3/D7ztk7q++Mil8/bvnpV9aobrUdbNdAn67Zr94l0fdzj2gK9/9l5VgW+kf9lL2PkYMeFudP2nEhTfFqmOpx1n/oHa7Y6vpCOuaGZXlq6UbFVyutgaoZSz5jQYfNDffTBmq2asmWv5g7oovIBvvpp2wGNuKaRKgX66+ftB5Rns6tfg+oym0yy2u0yyaT//fm3Xl+x2anOb/vcoDvPuBh6JCNb4e8Xvoj3mRdN1h8+rvfXbNW3m/cozN9XKTm5/z6Obq2LXcD8nqa19XGP67QqIVnL4o+oS81Itfn6lyLLn+30CJuiBHh7KeXZQYqdMOu8znjoZTIp94W7r6gREkV5oU1T+Xt76eN125WUke20r37FEO04nqa3u7RSZLlADZr5p9KeHawgX2+ZpCJvCzn7AqXVblf4e9/reLZFUv53ttGLN+jzDTsl/fv+/H1voj5au02f9LhOEafmhhj6y0qnC2r3Nqujr25uW1YP38mtP/2hjNw8zR/YtcBnw8VE0PMgBL3S2XE8VRm5eYV+GQYuN7/sTtCfB5P0aocWbg8XOZKRLUOGwsv9O5FSg09+1o7j+V+etj3SVx+u3a6P1m537A/08dauR/s7Ztz9bc8hVQr0V4szJvSx2u1q/80CrUg4qhNPD1Swn0+BAJWRmyd/by95m81OvVp/3ddLJ3Ny5e/tVaCXsixZ7XZtO5aqJpXDyvQ/6y827NSD81ZIkh5t2UAf9bi2zM5d1tIsuZq7K0G96kYpxK90E19Z7XY9On+V2lWvqjtja2vqlr0aPPNPpzJT+7ZT3/rV5e/t5fQcf75+pxYfSFL10CC9vmKzrouqrBVDespitclsMslisyn4jHt0Dzx+q8Ys+Vvda1fTgMY1HdtPh3Uvk0mPtKyvD7tfqw//2qbHf12tj3tcq6EtG2j7sRTdN3d5ifd5l3Z4+sqEo5Kk66KqlOo4R32GoX+SU1SnQrCSMy36fMNOfbJ+ux5qXl+vdmxR8gmKkJyZo0qBfsW+pz9au03vrtqqhYO7qdZH+T3W6+6/2elv+DS7Ychqt2trcor2nExX73rV5XNqsq8NScc1ceNujf9rW/7vD9ysbcdSdUfjmgXqtxuGZu04qF/3HlKVwAA91qqBTuRYHBeF9j52i6JCgrT28DFdHVlJKTm5Be65f7tLK5Xz8dHDLes7tuXZ7NqfmlEg9LurR+1q+mVgV0nSa8s36YU/3LtPdcMDN2v2znjVKh+su1xY1y8mtJx+uKWDWp8xusNd2c/f6eiNOtuZt8NMvLmNooKD1HXqb3qp3VWqXzFUtzWKcbrYvCL+qHKsNnWqGVHo+c40Yd0Ofblxl26uG62rqlZQVp5V9SuG6Krwgu+3/SnpjlEUmc/dKavdrjdXbNGAxjWdLuqdLcdq1dcb92j+ngTVKh+s1zu1dLoAdyUg6HkQgh6A8+VYVo76//iH7mlaW/c3r+fWuU4PHS5JmiVXSw8eUevIyqocVLb3915oOVarOn77q5pVLa9Pb7r4N+hfSB+v3a7Ri9fLajd0b7M6er9b62Jff8MwtON4qupXDC1QbvWhZF07cZ561onS3DsKn2HYMAylWfKc7pOW8odqn73t7CGycwZ0Vp7Nru61qynA58pdWcpqtyvNkqcKboxwiU/NVNVy/uf0xXrcsk0K8/fVo60aFNj38/YD+vNgknYeT9PHPa5VTFhwkedJTM9StQ/yhyN3qxWp3/Y6T0h1a8MaurNJbZlNJm1IOu64b/20Xwd21dR/9jqGD77cvrlG39BMUn5Inb7tgG7/eXGhdYf4+cgwpD2P3eL4/Mq12dRz2kIt3HdYX/Vqo3uvqitJmr87QTdNy59g7ezh77Nu76R/klP0cIv6jtfj3VX/FBi+uPb+Xvpp2wEdzsjSIy3qq3poOVX74AdNurmthswpvJe9YaVQbX2kn4YtWOW4cNe+elV93OM6fffPXj1zbRO9smyjjmbmaFLvto5bWi5Gj9XqQ8kyDEPXnuNFlCsVQc+DEPQAAJ4u3ZKncr7eZfJl88apv+m3vYn6T5umeqFtUwVeweHOU53++ppttem3vYfUpWakNh89qT0n052Gr9rsdi2PP6owf1/dNn2xpt/aUU1O9RadviDw2U3XO+7xPu3NFZu1/XiqJm7cLUm6PqqKltzdXV4mU5Hv0TRLrlNvudVuV9cpv6lJ5TCN736t0i15umbiXA1sXEv/PRUsz2Sx2uT/ev79sPFP3KYQP59ie98j3/9ehzOylfTkAG0/nqo20VW07vBxNaoUpmC//CHGs3ce1M7jaXqsVYMr+iKHpyHoeRCCHgAArsvKs2r1oWTdUL1qgWHEwGk/bt2vhfsS9WH3ax1DVM92OgxO7dvugkxUdiwrRyZJFV2YzTzXZlOuza5yZ903Cs9H0PMgBD0AAIALb8fxVK05dEx3xta6pCbjwJXN1WxAHy4AAABQiPoVQ1W/YujFbgZwThjPAAAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAe5rIJeikpKRo5cqRiY2MVERGh8PBwhYeHq1GjRho6dKiOHDlS4vHDhg1TzZo1HceGh4crKipKnTp10ooVKwock56ermeffVZ16tRxOqZ69eq6+eabtXXr1gLHZGdn67XXXlPz5s0VGRnpOKZevXoaPHiw9uzZU2bPCQAAAAAU5rKYddNms6lz587q3bu3Fi9erAoVKjimuE1NTdWkSZPUpk0bbdq0SYGBgYWeY8SIEQoLC9OWLVsUFBTk2G6327VixQoNHjxYy5cvV2RkpGPfM888Iy8vL61fv95p6lK73a758+erT58++vvvv53ON3DgQEVERGju3LmKjIx0tDMzM1PTp09Xx44dtWrVKqd6AAAAAKAsXRbr6P3000/67rvvNH369CLLPPHEE6pZs6ZGjBhR6P6IiAjt3btXAQEBhe4fNWqUqlevrqFDhzq2ValSRfHx8fLz8yv0mDvvvFODBw9Wjx49JElr167VI488ojVr1shcxAKt7777rg4cOKAPPvigyMdyNtbRAwAAACC5ng0ui6GbmzdvVseOHYst06VLF23evLnI/SNHjiwy5ElSdHS04uPjHb9bLBZ5e3sXGfIkKSoqyumYzZs3q0OHDkWGPFfaCQAAAADuuiyCXkJCgiIiIootExkZqYMHDxa5v6ievtO2bNmiOnXqOH738/NTWFiYsrKyijwmPj5etWrVKtN2AgAAAIC7LougZ7PZ5OXlVWwZb29vWa3Wczr/7NmztWDBAvXr189pe//+/fXoo48qKSlJZ45wtVqt+vXXX7VgwQK1aNGizNtpsViUlpbm9AMAAAAArrosJmM5X06ePKkRI0Zo6dKlmjlzpsqXL++0f9iwYbr22msVERGhsLAw+fn5yTAMnThxQlarVT/99JMqVKhQ5u167bXX9NJLL5X5eQEAAABcGS6LHr2z7dixQ7Vq1dLOnTvP6XjDMDRt2jQ1a9ZM5cuX1/r169W0aVOnMhaLRd26ddOoUaOUkpKikydPKikpSUeOHFF6erp+/fVXTZgwQSkpKUXWk5qaqjp16mjx4sWlat+oUaOUmprq+DnzPkAAAAAAKMll2aNXv3597d2795yOjY+P15AhQ2QYhubPn6/GjRsXWu63335T/fr19fDDDxfY5+/vr27dumnnzp366KOP9J///KfQc4SGhmr37t2lbqOfn1+xk8AAAAAAQHEuix49V+5rs1qt8vYuPreuWbNG7dq104ABAxQXF1dkyJOk7du3F+jlO1tsbKz++uuvMm8nAAAAALjjskgcUVFRSkpKKrZMYmKiqlevXuT+lJQU9e/fX9OmTVPbtm1LrNOVMGYymZyCXVRUlLZs2eJWOwEAAADAXZdFj15sbKzi4uKKLRMXF6fY2Ngi97/zzjsaNGiQSyFPkmrVqqWtW7cWW2br1q2qWbOmUzv/+OMP2e32c24nAAAAALjrsgh6ffv2VUJCgsaMGaPjx487LXWQlpam8ePHa968eXrooYeKPMe6devUs2dPl+vs3r271q9fr6lTpxYYjmm327Vq1Sq98cYbeuCBBxzbW7ZsqRo1amjo0KE6dOiQUzuzsrI0efJkvffee3ruuedcbgcAAAAAlNZlMXTTy8tLCxcu1Kuvvqr27ds7hb2wsDC1b99ey5YtU1BQkCRp8eLFeuCBB7R+/XqFhIRIkk6cOKFbb7212HXuOnfurClTpkjKnxBlwYIFeu655/TCCy8oJyfHUc5sNqtWrVr67LPP1KxZM6dzTJ06Ve+995569uypI0eOONoZHBysq6++Wn/88YciIyPL7skBAAAAgLOYjDO7nXBJSktLU2hoqFJTUx3BFQAAAMCVx9VscFkM3QQAAAAAuI6gBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6mzIOe3W6XYRhlfVoAAAAAgIvcDnqpqakaNWqUWrZsqYoVK8rHx0eBgYFav369JKl58+bq1KmTfvvtN7cbCwAAAAAomVtBLyUlRY0bN9Ynn3yi66+/XqNHj9Zbb70li8WipKQkSdLLL78sk8mkXr16admyZWXSaAAAAABA0bzdOXjMmDHKzs7Wjh07VLVqVUnSoUOH9MwzzzjK9OrVSzfddJNatWql999/X23btnWvxQAAAACAYrnVo7dkyRINGjTIEfKKrMRs1k033aR169a5Ux0AAAAAwAVuBb3du3erRo0aLpWtVKmSYzgnAAAAAOD8cSvoZWVlKTAw0KWyPj4+ys3Ndac6AAAAAIAL3J5109WlFFhyAQAAAAAuDLeCXoUKFZSSkuJS2fT0dJUvX96d6gAAAAAALnAr6NWpU0dbt251qezOnTtVu3Ztd6pzSElJ0ciRIxUbG6uIiAiFh4crPDxcjRo10tChQ3XkyJESjx82bJhq1qzpODY8PFxRUVHq1KmTVqxY4dTuatWqOZU78yckJEQvvfSSpPyhrOXKlSuy7Omf2bNnl8nzAAAAAACFcWt5hX79+mn06NG666671L179yLL/fXXX/ruu+80duxYd6qTJNlsNnXu3Fm9e/fW4sWLVaFCBZlMJkn5i7dPmjRJbdq00aZNm4q8f3DEiBEKCwvTli1bFBQU5Nhut9u1YsUKDR48WMuXL1dkZKTq1aunQ4cOFdme8ePHKzU1VZKUm5urSpUqaf/+/W4/TgAAAAA4VybDjZvn8vLydOONN2rJkiVq2LChatWqJR8fH82YMUMdOnRQpUqVFB8fr7/++ktt27bV77//Lh8fH7ca/NNPP+m7777T9OnTiyzzxBNPqGbNmhoxYkSh+yMiIrR3714FBAQUun/UqFGqXr26hg4dWmJ7nn32WTVu3FhDhgxRSkqKrrrqqjIPemlpaQoNDVVqaqpCQkLK9NwAAAAALh+uZgO3hm76+Pho0aJF+umnn9SlSxeZzWadOHFC7du3l2EYysnJUevWrfX9999r8eLFboc8Sdq8ebM6duxYbJkuXbpo8+bNRe4fOXJkkSFPkqKjoxUfH19iW2w2m+bMmaNu3bqVWBYAAAAALhS3hm6e1q9fP/Xr168sTlWihIQENW3atNgykZGROnjwYJH7i+rpO23Lli1q1apViW0ZO3as2rVrp8jIyBLLAgAAAMCF4vbyCheazWaTl5dXsWW8vb1ltVrP6fyzZ8/WggULig2uVqtVjz/+uJYtW6Z33nnHaV9WVpb++9//qkWLFqpWrZqqVq2q8PBw1atXT3fccYe2b99eYhssFovS0tKcfgAAAADAVWXSo+cJTp48qREjRmjp0qWaOXNmkUtBZGVl6Y477lB4eLgWLFjgNBzV399f0dHRMgxDP//8syIjI+Xr6ytJyszM1Lx589S9e3f9/fffCgsLK7Itr732mmMmTwAAAAAorcuuR+9sO3bsUK1atbRz585zOt4wDE2bNk3NmjVT+fLltX79+mKHhj711FNq3LixJkyYUOCeQ39/f61bt06vvPKKYmJiHCFPkoKCgnT77bfr5ptvLnYiGSl/MpjU1FTHjyv3CwIAAADAaS716LVr165MZpKsVauWFi9e7PZ5zlS/fn3t3bv3nI6Nj4/XkCFDZBiG5s+fr8aNGxdbfuvWrVq+fLnWrVvnWNKhtBo2bKg9e/YUW8bPz09+fn7ndH4AAAAAcCnoDRkypECvkmEYGjt2rHr06KHWrVsXepxhGNq4caPmzZunrl276pZbbnG/wS7cf2e1WuXtXfxDW7NmjQYMGKBRo0bpwQcfdCm4zZkzRwMHDnTqqSutwMBAZWVlnfPxAAAAAFASl4LefffdV+j2sWPHqmfPnnr00UeLPX7y5Ml6+OGH9d5775W+hWeJiopSUlJSsWUSExNVvXr1IvenpKSof//+mjZtmtq2bety3atWrdITTzxR5P7Vq1drz549GjRoUJFlsrOzi13aAQAAAADcdUHu0bvzzjtVvXp1vfXWW26fKzY2VnFxccWWiYuLU2xsbJH733nnHQ0aNKhUIU+SDh06pGrVqhW5PyMjo8T773bu3KlatWqVql4AAAAAKI0LNhlLt27dtGjRIrfP07dvXyUkJGjMmDE6fvy4DMNw7EtLS9P48eM1b948PfTQQ0WeY926derZs2ep687IyFBQUFCR+6+++mpt2LBBP//8s+x2u9M+m82mX375RTNmzFD//v1LXTcAAAAAuOqCBb2IiAgdOXLE7fN4eXlp4cKFys7OVvv27RUZGanw8HCFh4erdevW2rJli5YtW+YIZIsXL1adOnWc1qI7ceKEbr31Vsdxhf0MHjy4QN0hISEKDQ0tsm0hISGaNWuWJk6cqBo1ajidLyYmRh9//LFmzZqlihUruv08AAAAAEBRTMaZXWKlZDab9eGHH5Z4j54kffjhhxo+fLhsNtu5VnfFSktLU2hoqFJTUxUSEnKxmwMAAADgInE1G7jVoxccHKz09HSXymZmZio4ONid6gAAAAAALnAr6NWpU6fENeFO27t3L5OQAAAAAMAF4FbQ69atm6ZOnapdu3YVW27nzp2aMmWKbrzxRneqAwAAAAC4wK179DIzM9WyZUvt379fPXv2VI0aNVSuXDnH/oyMDO3fv1+//PKLYmJitG7dumJnrUThuEcPAAAAgOR6NnAr6ElSbm6uPvroIy1ZskT79+9XamqqY19oaKhiYmLUvn17Pfroo/Lz83OnqisWQQ8AAACAdAGDHs4/gh4AAAAA6QLNugkAAAAAuPQQ9AAAAADAwxD0AAAAAMDDeLtz8JdffqkDBw64XL5GjRq6//773akSAAAAAFACt4LelClTtG/fviL3W61WHTp0SCaTSVFRUapduzZBDwAAAADOM7eC3qJFi0oss2/fPt1///2KjIzU5MmT3akOAAAAAOCC836PXs2aNTVjxgzNmjVLU6dOPd/VAQAAAMAV74JMxhIaGqqbb75ZEydOvBDVAQAAAMAV7YLNulm3bl1t3LjxQlUHAAAAAFesCxb0KlasqBMnTlyo6gAAAADginXBgl5ubq78/f0vVHUAAAAAcMW6YEEvPj5etWrVulDVAQAAAMAV64IEvePHj2vq1Klq27bthagOAAAAAK5obq2j99tvvykhIaHI/RkZGTp48KC++eYbmUwmjR071p3qAAAAAAAucCvoPfbYY9qzZ0+R+4ODgxUTE6M77rhD//3vf1WpUiV3qgMAAAAAuMCtoLdr166yagcAAAAAoIxcsMlYAAAAAAAXBkEPAAAAADyMW0Fv3LhxLg/f3Llzp8aNG+dOdQAAAAAAF7gV9EaPHq3ff//dpbIzZ87UG2+84U51AAAAAAAXXLChm/v371fNmjUvVHUAAAAAcMW6IEHvwIEDmjJlijp37nwhqgMAAACAK1qpllfYtWuXJk+eLMMwHNvmzJmjpKSkQstnZWUpPj5ec+fOVZUqVfTiiy+611oAAAAAQIlKFfQ2b96sb7/91inorVmzRtu3by+0fFBQkGJiYjR69GgNHz5cgYGB7rUWAAAAAFAik3Fmaisls9msDz/8UI8++mhZtglnSUtLU2hoqFJTUxUSEnKxmwMAAADgInE1G7h1j15ISIhCQ0PdOQUAAAAAoIyVaujm2Q4dOqSgoKCyagsAAAAAoAy41aNHyAMAAACAS4/LQe/o0aNatmyZ0tLSzmd7AAAAAABucnnoZpMmTXT8+HG1bdtWS5YskSTdfffd2r9/v8uVxcTE6Jtvvil1IwEAAAAArnM56IWFhenYsWMKCwtzbKtdu7a8vLxcriwmJqY0bQMAAAAAnAOXl1ewWq06fPiwoqKiZDKZzne7cAaWVwAAAAAguZ4NXO7R8/b2VnR0dJk0DgAAAABw/rg16yYAAAAA4NJzwYLerFmz1KBBgwtVHQAAAABcsS5Y0NuwYYMyMjIuVHUAAAAAcMVy+R49u91+ThVYLBZt2bJFEydOVNu2bc/pHAAAAAAA17kU9GrXrl2q9fIK07hxY7355ptunQMAAAAAUDKXgt6nn36qxMTEc6rA399fNWvWVMuWLUu15h4AAAAA4Ny4FPS6du16vtsBAAAAACgjLK8AAAAAAB6GoAcAAAAAHsblWTdddebsnGYzORIAAAAALjS3k1hycrIef/xxNW3aVMHBwfLx8XH8BAcHq2nTpnr88cd19OjRsmgvAAAAAKAEbvXoHT16VI0aNZLJZNI999yjmJgYBQcHO/anp6dr//79+uabbzRt2jT9888/qlKlituNBgAAAAAUza2g9+KLL0qStm/frooVKxZZ7vnnn1fDhg01ZswYffLJJ+5UCQAAAAAogVtDN1esWKGBAwcWG/IkqVKlSho4cKCWLVvmTnUAAAAAABe4FfT27NmjGjVquFS2evXq2rdvnzvVAQAAAABc4FbQy87OVkBAgEtlAwIClJ2d7U51AAAAAAAXuBX0QkJCdPLkybJqCwAAAACgDLgV9GrUqKGEhISyagsAAAAAoAy4FfRuuukmzZkzx2mRdAAAAADAxeVW0Bs5cqS8vb31/PPPl1V7AAAAAABucmsdvffee0916tTRO++8o59++knXXXedvLy8Ci27Y8cOSdLdd9/ttL169ep65ZVX3GkGAAAAAOAMbgW9gwcPym63q127dpKkxMTEIssGBgaqXbt2io+Pd9peVDAEAAAAAJwbt4LepEmTyqgZAAAAAICy4tY9egAAAACASw9BDwAAAAA8DEEPAAAAADyMW/fonbZx40Zt2bJFiYmJys7OLrJc9erVNWTIkLKoEgAAAABQBLeCXkZGhvr376+4uDgZhqEKFSooICCgyPK1a9cm6AEAAADAeeZW0HvhhRe0aNEiffLJJ7rrrruKDXkAAAAAgAvDraD322+/aciQIXrooYfKqj0AAAAAADe5NRnL3r171aRJk7Jqi8tSUlI0cuRIxcbGKiIiQuHh4QoPD1ejRo00dOhQHTlypMTjhw0bppo1azqODQ8PV1RUlDp16qQVK1Y4yu7cuVPVqlVzKnfmT0hIiF566SVHeavVqs8++0xXX32103G1atVSnz599Pfff5+vpwUAAAAAJLnZo2e1WuXl5VVWbXGJzWZT586d1bt3by1evFgVKlSQyWSSJKWmpmrSpElq06aNNm3apMDAwELPMWLECIWFhWnLli0KCgpybLfb7VqxYoUGDx6s5cuXKzIyUvXq1dOhQ4eKbM/48eOVmprq+P2ZZ55RfHy8vvvuO9WqVUtmc36WzsnJ0e+//65+/fppxowZuuqqq8rg2QAAAACAgtwKelWqVCk2BJ0PM2bMUExMjMaMGVNgX2hoqIYPH649e/ZowoQJGjFiRKHnWLBggfbu3VvgnkKz2ay2bdvqjjvu0KxZszR06NAS23Pw4EE1btxYknT48GHNnDlT27ZtK3Buf39/3XzzzcrLy9OYMWM0a9YsVx8yAAAAAJSKW0M3u3Xrpnnz5slms5VVe0q0efNmdezYsdgyXbp00ebNm4vcP3LkyGInjomOjlZ8fHyJbbHZbJozZ466desmSdq+fbtatWpV7Lk7d+5cbNsAAAAAwF1u9ei9/fbb6tixo3r27Kknn3xSMTExRQ6XlKSwsDCFhIS4U6USEhLUtGnTYstERkbq4MGDRe4vqqfvtC1btqhVq1YltmXs2LFq166dIiMjHW2LiIgo9pjQ0FCdOHGixHMDAAAAwLlye+jm6NGjddddd+n33393qfzhw4fdqVI2m63E+wK9vb1ltVrP6fyzZ8/WggUL9OqrrxZZxmq1asSIEdq6datmzpxZqra5wmKxyGKxOH5PS0tz+5wAAAAArhxuBb2pU6fqrrvuUps2bTRo0CBFRUUVO2yxatWq7lR3Xp08eVIjRozQ0qVLNXPmTJUvX77QcllZWbrjjjsUHh6uBQsWyMfHp8zb8tprrznN5AkAAAAApeH20M3rrrtOS5Ysccx8eaHt2LFDPXr00IIFC1SvXr1SH28Yhr7//nuNHDlSt9xyi9avX6/Q0NAiyz/11FNq3Lixxo0b59Jjbt68uZ555hkNHjzY5TaNGjVKTz31lOP3tLQ0RUdHu3w8AAAAgCubW0Fvx44deuGFFy5ayJOk+vXra+/eved0bHx8vIYMGSLDMDR//nzH7JlF2bp1q5YvX65169a5/Jg3bNhQ6nb5+fnJz8+v1McBAAAAgOTmrJvZ2dkKCwsro6a4xpX776xWq7y9i8+wa9asUbt27TRgwADFxcWVGPIkac6cORo4cKB8fX3PuW0AAAAAcL65FfTCwsJ08uTJsmqLS6KiopSUlFRsmcTERFWvXr3I/SkpKerfv7++/fZbPfTQQy73zq1atUrXXXedW21LS0tThQoVXKoPAAAAAM6FW0Gvbdu2Wr9+fVm1xSWxsbGKi4srtkxcXJxiY2OL3P/OO+9o0KBBatu2banqPnTokKpVq1bk/gYNGmjt2rXKyso657YBAAAAgLvcCnrvvPOOVq1apYkTJ5ZVe0rUt29fJSQkaMyYMTp+/LgMw3DsS0tL0/jx4zVv3jw99NBDRZ5j3bp16tmzZ6nrzsjIUFBQUJH7w8PD1b9/fw0ePFi7d++W3W537LNYLJo7d66eeuop/e9//yt13QAAAADgKrcmY3n55ZcVEhKiBx54QCNHjlSNGjWKXTA9JiZG33zzjTtVysvLSwsXLtSrr76q9u3bO4W9sLAwtW/fXsuWLXMEssWLF+uBBx7Q+vXrHYu1nzhxQrfeemuxa9517txZU6ZMcdoWEhJS7IyckvTWW2/pyy+/1MCBA3Xo0CFH2AsMDFSTJk30888/q3nz5uf8+AEAAACgJCbjzC6xUvrf//6nAwcOuFy+Ro0a9Gadg7S0NIWGhio1NdURVgEAAABceVzNBm4FPVwYBD0AAAAAkuvZwK179AAAAAAAlx6CHgAAAAB4GIIeAAAAAHgYt2bdPG3dunVatmyZ9u/fr9TU1CLL1ahRQ2PGjCmLKgEAAAAARXAr6Nntdg0ZMkRTpkxRcHCwqlatqt27d6tBgwaqUKGCrFarNmzYoLy8PLVq1UpWq7Ws2g0AAAAAKIJbQzc///xzTZ48WRMmTNCJEycUFxcnwzD01ltvaenSpVq5cqUSExN18803KyQkRJMmTSqjZgMAAAAAiuJW0Pv666/Vp08fPfDAAzKbzTKZTAXKVKhQQVOnTtXatWv12WefuVMdAAAAAMAFbgW9PXv2qHnz5iWWCwwMVJ8+fTR16lR3qgMAAAAAuMCtoJecnKyKFSu6VLZmzZraunWrO9UBAAAAAFxwwZZXqFChgk6ePHmhqgMAAACAK5ZbQa9ChQpKS0srsN0wjALbCrt/DwAAAABQ9twKetWqVdPOnTsdv1eqVEmSCu25S0lJcewHAAAAAJw/bgW93r17a8aMGdq4caMkyc/PT7Vr19aCBQsKlP3111/VoEEDd6oDAAAAALjArQXThw8frhkzZqhFixa699579cUXX+jFF1/UPffcowMHDujqq6+W3W7X0qVLtWHDBv3+++9l1W4AAAAAQBHcCnqVKlXSypUrNXfuXJnN+Z2Dd911l8LDw/XJJ59o0aJF8vLyUp06dfTxxx/rmmuuKZNGAwAAAACKZjIKmzkFl5S0tDSFhoYqNTVVISEhF7s5AAAAAC4SV7PBBVteAQAAAABwYRD0AAAAAMDDEPQAAAAAwMMQ9AAAAADAwxD0AAAAAMDDEPQAAAAAwMMQ9AAAAADAwxD0AAAAAMDDEPQAAAAAwMN4l8VJ8vLytH37du3fv1/Jycny9/fXLbfcIj8/Py1fvlxRUVGqUaNGWVQFAAAAACiB20Hvhx9+0MiRIxUfHy/DMCRJJpNJlSpVUrdu3fTggw9qx44dGjx4sL766it5e5dJtgQAAAAAFMGtoZurV6/WwIEDdf3112vNmjU6fvy4Dhw4IMMwZLVaJUkbNmzQl19+qWnTpmnChAll0mgAAAAAQNHcCnovv/yyWrZsqalTp6ply5YqX768zGbnU/r5+WnIkCHq16+fvv32W7caCwAAAAAomVtBb9u2berSpYtLZZs1a6Z9+/a5Ux0AAAAAwAVuBb0DBw4oIiLCpbLBwcE6duyYO9UBAAAAAFzgVtCz2+3y8vJyrSIzKzkAAAAAwIXgVvoym82y2WwulbXZbDKZTO5UBwAAAABwgVtBLzo6WomJiS6VTU5OVnR0tDvVAQAAAABc4FbQa9CggRYuXOhYP684ixcvVv369d2pDgAAAADgAreC3qhRo7Ru3ToNHjxY69at04kTJxzr59ntdmVlZWnHjh16/PHHtWLFCr3wwgtl0mgAAAAAQNFMhivdccWYNGmSRo0apaNHjzq2GYbhdD9epUqV9Prrr+vee+91p6orVlpamkJDQ5WamqqQkJCL3RwAAAAAF4mr2cDtoCdJOTk52r59u/bv36/U1FTH9uDgYNWsWVMNGjRQQECAu9VcsQh6AAAAACTXs4F3WVTm7++vq666SldddVVZnA4AAAAA4AYWtwMAAAAAD+NWj95TTz0ls9msESNGqFq1amXVJgAAAACAG9xeR+/LL79UrVq1dP/992v79u1l1S4AAAAAwDlyK+iNGDFCBw8e1Msvv6wFCxaocePG6tevn1atWlVW7QMAAAAAlJLb9+gFBwdr5MiR2rdvnyZMmKBt27apTZs26tChg+bPn18WbQQAAAAAlEKZTcbi6+urBx54QFu3btWPP/6onJwc9ezZU02bNtXUqVNls9nKqioAAAAAQDHKfNZNs9ms/v37a9WqVVq0aJEiIyN15513qm7dupo8eXJZVwcAAAAAOEuZLJhenLS0ND355JOaNGmSwsLCdOLEifNZnUdiwXQAAAAAkuvZ4Lyto7d3716NGDFC0dHRmjJliu68804tWbLkfFUHAAAAADjFrXX0CrNkyRK9//77mjNnjipUqKDhw4dr6NChioiIKOuqAAAAAACFKJOgl5ubq6lTp+qDDz7Qpk2b1LhxY3322WcaNGiQ/P39y6IKAAAAAICL3Ap6R48e1ccff6xPPvlEycnJ6tWrl9555x116tSprNoHAAAAACglt4Jenz59tGXLFt1777164oknVKdOnbJqFwAAAADgHLkV9H744QeFhoYyEyQAAAAAXELcCnrR0dFl1Q4AAAAAQBlxeXkFm82mhISE89kWAAAAAEAZcLlHr379+tq3b5969OihuXPnSpJefPFF7d+/3+XKYmJiNHbs2FI3EgAAAADgOpeDXnp6ugzDUGZmpmNbfHy84uPjXa/Mu8yX7QMAAAAAnMXl5LVlyxZt375dV111lWPbxIkTz0ebAAAAAABucDnoVa5cWZUrVz6fbQEAAAAAlAGXJ2MBAAAAAFwe3Ap648aN065du1wqu3PnTo0bN86d6gAAAAAALnAr6I0ePVq///67S2VnzpypN954w53qAAAAAAAuuGBDN/fv36+aNWteqOoAAAAA4Ip1QYLegQMHNGXKFHXu3PlCVAcAAAAAV7RSLWy3a9cuTZ48WYZhOLbNmTNHSUlJhZbPyspSfHy85s6dqypVqujFF190r7UAAAAAgBKVKuht3rxZ3377rVPQW7NmjbZv315o+aCgIMXExGj06NEaPny4AgMD3WstAAAAAKBEJuPM1FZKZrNZH374oR599NGybBPOkpaWptDQUKWmpiokJORiNwcAAADAReJqNnDrHr2QkBCFhoa6cwoAAAAAQBlzK+gdOnRIgwcPLqu2lCglJUUjR45UbGysIiIiFB4ervDwcDVq1EhDhw7VkSNHSjx+2LBhqlmzpuPY8PBwRUVFqVOnTlqxYkWBY9atW6du3bopKirKUb5q1aqqVq2aOnXqpJUrVzqVnzhxosqVK+d0/rN/6tatq7y8vDJ9bgAAAADgtFLdo3e2oKCgsmpHiWw2mzp37qzevXtr8eLFqlChgkwmkyQpNTVVkyZNUps2bbRp06Yi7wUcMWKEwsLCtGXLFqe22+12rVixQoMHD9by5csVGRkpSTpx4oT69eunzz//XF27dpXZ/G8uNgxDS5Ys0YABA7Ru3TpVrlzZ0ZZnnnlG//vf/87TMwEAAAAAxbtg6+i5a8aMGYqJidGYMWNUsWJFR8iTpNDQUA0fPlw33XSTJkyYUOQ5FixYoHHjxhUIqGazWW3bttUdd9yhWbNmOZXv3r27brzxRqeQJ0kmk0kdOnRQ165dtXTp0jJ6lAAAAADgPreDXnJysp544gk1b95c5cuXl5eXV5E/devWPed6Nm/erI4dOxZbpkuXLtq8eXOR+0eOHKmAgIAi90dHRys+Pt7x+/79+1W7du1i6+zevTuziQIAAAC4pLg1dPPo0aNq1KiR7Ha77rzzTvXs2VPjxo3TsGHD1KxZM1mtVi1cuFAzZ87Uww8/rJtvvvmc60pISFDTpk2LLRMZGamDBw8WuX/EiBHFHr9lyxa1atXK8Xtubq7CwsKKPea2224rdj8AAAAAXGhuBb3//ve/MgxD27dvV5UqVXTo0CGNGzdO3bt310033SRJevjhh/XNN9/oiSee0AsvvHDOddlsNnl5eRVbxtvbW1ar9ZzOP3v2bC1YsECvvvqq03aLxaIXXnhBcXFxOnjwoGMNwdDQULVs2VL/+9//VK9ePadj/v77bw0cOFAbNmxQSkqKpPyhnhEREerXr5+efvrpYnsBLRaLLBaL4/e0tLRzekwAAAAArkxuDd1csWKFBg0apCpVqhRb7u6771Z0dLTefPNNd6o7L06ePKkhQ4ZoxIgRmjlzpsqXL++0f/z48WrQoIEWLlyow4cPKykpSUlJSVq7dq169eqlbt26KTU11VG+Tp06Onz4sG699VYtXbrUcUxiYqLmzJmj/fv3l9iz+Nprryk0NNTxEx0dfV4eOwAAAADP5FbQ27t3r2JiYlwq27VrVy1YsMCd6pzs2LFDtWrV0s6dO8/peMMwNG3aNDVr1kzly5fX+vXrCx0a2rlzZ919990KDg522h4cHKxBgwbppptu0vTp0x3be/XqpdWrV+uWW25R5cqVHZPGmEwmVatWTR9//LFmzJih3NzcIts2atQopaamOn7OvG8QAAAAAEri1tDN7OzsYic3OVN4eLgSEhLcqc5J/fr1tXfv3nM6Nj4+XkOGDJFhGJo/f74aN25cZNkGDRoUe64mTZpoz549Ltft5+enmJgY7d+/v8CQzzPL+Pn5uXxOAAAAADiTWz163t7eLi/8HRQUpOzsbLfqKun+O6vVKm/v4rPrmjVr1K5dOw0YMEBxcXHFhjxJJQbZwMBAZWZmFlumsGOysrJKdQwAAAAAuMqtoFe1alWdPHnS8fvpkFVYILNarSVOplKcqKgoJSUlFVsmMTFR1atXL3J/SkqK+vfvr2+//VYPPfSQ01p8hQkKClJOTk6xZbKzs50mVnn99dd1+PDhEo9xtScUAAAAAErLraDXoEEDp8XCq1SpIj8/v0KHaB46dMitSUViY2MVFxdXbJm4uDjFxsYWuf+dd97RoEGD1LZtW5fqrFWrlnbt2lVsmW3btqlWrVqO3//55x+tXbu2yPJ5eXk6cOCAy/c2AgAAAEBpuRX0hgwZoj/++ENPP/20Dh06JJPJpPbt22v8+PFO989t3LhRX3/9tTp06HDOdfXt21cJCQkaM2aMjh8/7ljmQMpffmD8+PGaN2+eHnrooSLPsW7dOvXs2dPlOnv06KGlS5fq559/ls1mc9pns9k0d+5czZw5U/369XNs79evn8aOHavdu3cXOF9qaqqefvpp9ejRg3vwAAAAAJw3bk3GMnjwYO3cuVPvvfeeVqxYoZUrV+r999/XTTfdpLp16yo0NFR2u13p6elq3Lixxo0bd851eXl5aeHChXr11VfVvn17p7AXFham9u3ba9myZQoKCpIkLV68WA888IDWr1+vkJAQSdKJEyd06623FjuEtHPnzpoyZYqk/Hvp5s2bp1GjRmnEiBFOa9v5+PioadOmmj17tipWrOjY3r9/f6WkpOiWW25RcnKy7Ha7pPxZN8uVK6dbbrmlwFp9AAAAAFCWTMaZXWPnKDc3V1lZWQoLC5OUv+D3ggULtG/fPnl5ealOnTrq1q2bW/foXcnS0tIUGhqq1NRUR2gFAAAAcOVxNRu41aN3mq+vr3x9fR2/+/n5qU+fPmVxagAAAABAKbl1jx4AAAAA4NJzwYLezp073bpHDwAAAADgmgsW9GbNmqU333zzQlUHAAAAAFesCxb0Fi9erHr16l2o6gAAAADgiuXSZCwvvvii9u/ff04VWCwW/fPPP9q2bZtmzJhxTucAAAAAALjOpaB38OBBxcfHn1MF/v7+ateunb766iu1bt36nM4BAAAAAHCdS0Fv0qRJ57kZAAAAAICywvIKAAAAAOBhCHoAAAAA4GEIegAAAADgYVy6R68kW7duVVxcnPbv36/k5GT5+/vrlVdeUZUqVfTWW28pPDxcffv2VXBwcFlUBwAAAAAohts9esOGDVOzZs304osvauHChdq1a5e+/PJLrV27VpL0999/67777tP111+vo0ePut1gAAAAAEDx3Ap6kydP1scff6wPP/xQycnJ2rhxo3788UcZhuEoM2XKFG3btk2HDx/W+++/7257AQAAAAAlcCvoffbZZ+rdu7cefvhheXvnjwI1mUwFytWpU0e33XabZs2a5U51AAAAAAAXuBX0du3apebNm7tUtmbNmkpMTHSnOgAAAACAC9wKekeOHFGlSpVcKhsYGKi0tDR3qgMAAAAAuMDtyVgKG6rpTjkAAAAAgHvcCnq+vr7KyclxqWxubq58fX3dqQ4AAAAA4AK3gl6tWrUUHx/vUtnDhw+rZs2a7lQHAAAAAHCBW0GvRYsW+vHHH5WZmVlsuby8PE2fPl0tW7Z0pzoAAAAAgAu83Tn41VdfVaNGjdSsWTMNHTpUNWvWVF5enkwmkzZu3ChJio+P12effaakpCS9/PLLZdJoAAAAAEDRTMaZq5ufg23btun555/XkiVLCp1VMzg4WO3atdMbb7yhRo0auVPVFSstLU2hoaFKTU1VSEjIxW4OAAAAgIvE1WzgdtA7U0pKilJTUx2/BwcHq0KFCmV1+isWQQ8AAACA5Ho2cGvo5tnCwsIUFhZWlqcEAAAAAJSS2+voAQAAAAAuLW4FvdKM+vzrr7/0119/uVMdAAAAAMAFpQp6x48f1+OPP64mTZooICBA3t7eio6OVs+ePfXnn38WesyJEyf04IMP6tprr9XEiRPLpNEAAAAAgKK5fI/esWPH1KRJE1mtVg0ZMkS1a9eWr6+vEhMTNXv2bHXs2FE//vij+vfv7zhm4sSJGjlypGw2mz799FM98MAD5+VBAAAAAAD+5fKsm0OHDtWPP/6orVu3qkqVKk77DMNQ//79tXr1aiUmJuqff/7RI488ouXLl+uuu+7S22+/rcqVK5+XB3AlYNZNAAAAAJLr2cDloZvLli3ToEGDCoQ8STKZTBo+fLiSkpI0cOBAXXXVVTp27JgWLVqkr7/+mpAHAAAAABeQy0Fv165dqlmzZpH7a9SoIUmaPXu2XnrpJW3cuFEdOnRwu4EAAAAAgNJx+R693Nxc+fn5Fbnf19dXkjRp0iTddttt7rcMAAAAAHBOynwdvaCgoLI+JQAAAACgFFgwHQAAAAA8DEEPAAAAADxMqYKeyWQqkzIAAAAAgPPH5XX0zGazwsLCVK5cuUL3W61WJSUlqWLFigoICCi0TJ06dbRo0aJzb+0VinX0AAAAAEiuZwOXZ9386quvdODAAbcaVb16dbeOBwAAAACUzOWgN2TIkPPYDAAAAABAWWEyFgAAAADwMAQ9AAAAAPAwBD0AAAAA8DAEPQAAAADwMAQ9AAAAAPAwBD0AAAAA8DAEPQAAAADwMAQ9AAAAAPAwBD0AAAAA8DAEPQAAAADwMAQ9AAAAAPAwBD0AAAAA8DAEPQAAAADwMAQ9AAAAAPAwBD0AAAAA8DAEPQAAAADwMAQ9AAAAAPAwBD0AAAAA8DAEPQAAAADwMAQ9AAAAAPAwBD0AAAAA8DAEPQAAAADwMAQ9AAAAAPAwBD0AAAAA8DAEPQAAAADwMAQ9AAAAAPAwBD0AAAAA8DAEPQAAAADwMAQ9AAAAAPAwl03QS0lJ0ciRIxUbG6uIiAiFh4crPDxcjRo10tChQ3XkyJESjx82bJhq1qzpODY8PFxRUVHq1KmTVqxYUeCYdevWqVu3boqKinKUr1q1qqpVq6ZOnTpp5cqVBY45fPiwHn74YTVs2NDRzoiICDVt2lTPP/+80tLSyuw5AQAAAIDCXBZBz2azqXPnzgoKCtLixYuVmJiopKQkJSUlaeXKlWrQoIHatGmjrKysIs8xYsQI+fj4aMuWLY5jk5KSdPDgQY0dO1aDBw9WYmKio/yJEyfUr18/Pf300zp48KCj/JEjR5SQkKAXX3xRAwYMUHJysuOYjIwMtW3bVrGxsVqzZo0OHz6spKQkJSYmKi4uTj4+PurSpYvsdvt5fb4AAAAAXNkui6A3Y8YMxcTEaMyYMapYsaJMJpNjX2hoqIYPH66bbrpJEyZMKPIcCxYs0Lhx4xQUFOS03Ww2q23btrrjjjs0a9Ysp/Ldu3fXjTfeKLPZ+WkymUzq0KGDunbtqqVLlzq2f/rpp+rbt6+GDRum4OBgp/KVK1fWyy+/rPDwcKd6AAAAAKCsXRZBb/PmzerYsWOxZbp06aLNmzcXuX/kyJEKCAgocn90dLTi4+Mdv+/fv1+1a9cuts7u3bsrMDCwTNsJAAAAAO7yvtgNcEVCQoKaNm1abJnIyEgdPHiwyP0jRowo9vgtW7aoVatWjt9zc3MVFhZW7DG33XZbgXZGRESU2M5NmzYVWwYAAAAA3HFZ9OjZbDZ5eXkVW8bb21tWq/Wczj979mwtWLBA/fr1c9pusVj0wgsv6JprrnGaAKZ+/foaNGiQdu7ceV7aabFYlJaW5vQDAAAAAK66LILe+XLy5EkNGTJEI0aM0MyZM1W+fHmn/ePHj1eDBg20cOFCx8QqSUlJWrt2rXr16qVu3bopNTW1zNv12muvKTQ01PETHR1d5nUAAAAA8FyXZdDbsWOHatWqVaBHzVWGYWjatGlq1qyZypcvr/Xr1xc6NLRz5866++67nSZWkaTg4GANGjRIN910k6ZPn15kPYsXL1adOnVK3SM3atQopaamOn7OvHcQAAAAAEpyWdyjd7b69etr796953RsfHy8hgwZIsMwNH/+fDVu3LjIsg0aNCj2XE2aNNGePXuK3N+hQwft3r271G308/OTn59fqY8DAAAAAOky6dFz5b42q9Uqb+/ic+uaNWvUrl07DRgwQHFxccWGPEnFztIpSYGBgcrMzCzzdgIAAACAOy6LxBEVFaWkpKRiyyQmJqp69epF7k9JSVH//v01bdo0tW3btsQ6g4KClJOTU2yZ7Oxsp+UVyqKdAAAAAOCuy6JHLzY2VnFxccWWiYuLU2xsbJH733nnHQ0aNMilkCdJtWrV0q5du4ots23bNtWqVatM2wkAAAAA7rosgl7fvn2VkJCgMWPG6Pjx4zIMw7EvLS1N48eP17x58/TQQw8VeY5169apZ8+eLtfZo0cPLV26VD///LNsNpvTPpvNprlz52rmzJlOSzI88sgjmj17tsaPH6/09HTHdsMwdPz4cb344otKTExUnz59XG4HAAAAAJTWZRH0vLy8tHDhQmVnZ6t9+/aKjIx0rGnXunVrbdmyRcuWLVNQUJCkwme7PHHihG699VbHcYX9DB482FE+MDBQ8+bN09SpU1WrVi2ncjExMfrkk080e/ZsVaxY0XFMUFCQli9fri1btujqq692rL0XGRmp9u3by2KxKC4uTmbzZfG0AwAAALhMmYwzu8dwSUpLS1NoaKhSU1MVEhJysZsDAAAA4CJxNRvQtQQAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagBwAAAAAehqAHAAAAAB6GoAcAAAAAHoagh3NmP5Ig+4GdMmy2i90UXABGynEZ2VkXuxkAAABwAUEPpWZYrTKyMpTZPVqZfesrs1et0p/DMM5Dyy4PRl6uDEtOKcrnncfWlMy2a7OsS39RRsdKyuhUWZJkP3lMlklvyp58+KK2rbTsifuV3tykvN9/dNpu271FWY/3VO7PX8iw28ukLuuq35U35xsZhiHb5tWyH9hVJucFAABwBUEPpWL54DllXO2jjDbBjm1G0kFlPz9Q9qOJsh/Y6VQ+b/5U5f0xU4bNpqyh3ZQ5qJXSm5uU0cKsvD9mFl/X/41SenOT0pubiixj2O2lDkL2A7tk+ep1GZnpLpU3ci2Fn+dYkoyU48W2zX7ymKzLFyi9uUmWT/8nwzCU0dpPGdcGyMjLLbHuzCFtlNHaV3m/fi8jL09GeoqM9FTlzZooI/WELJ+MUd7cb116HKVl+XKc8mZ/razbmyr7iZ75G3Pye/RyRg1U7gfPKfux7jIMQ0ZWhtOxRma6ct4eIdvm1SXWYz+RrLz5U0sVfguTN2ui0publPvzF7KuXyojPUX2Q/tkpKco9+fPZT+4W5k9a+a3f+TtMux2x/sr67ZY2Zb9IsvLDyrnmVuU+83bMtJOyjJhrCxfvFqqdth2b1HezK+UPbSbcl68RxktzMq6+1pl9q2n3O/GS/r3QoeRkZbfU2qzKXfqB7JtWy/DapU9YW/+fqtVGV0jlP3fe5yOO5ORnir70cRC22LY7TLSU0rV/vPFfmCnMm+LVd787y5YnYYlR9lP36LcGV+evzoMQ7Z//nL58+RSYhiG7MePXOxmlCl7/B5lPdZdtp2bLnZTcBHlzf5aeXE/X+xmoJRse/7J/3/7Cu4MKGsmg2fzkpeWlqbQ0FClpqYqJCTkorXDSE9VRruwEst5d7td/q9Pk333FmXd3lSSZKpSTcbRQwXKBm/IDwm2dUvkdU0XmXz9JEk5bzyhvGnjnctZrTIO7ZW5Rj3H9sw7W8tI3K/AKWtlKl9Z1pW/yly+iryuuj6/zYYhk8nk+LckZbTIv77h3amf/Md+Lfn6KfuJXrKt+l3llqdLhiH5Bcjk7a3sF4fIOudrBU77W171m8nIyVbGdYFOjyHgowXyat5Wtu0b5NXsepnMZuUtmqGcp/sXeLzl1lqV0co7/zmpWFWBk/+SOTzaqYz95DFldqos7553yTrPtRAX8Mlv8r62a/6XztULZXl7hAI+/lXmKtVcOt5+YJcy72wl/xc+Uc4Lg4stG/TrIWXe+O95vVq0k239nwr4bJG8WnWQdfFs5X7+suzb1knKf+0KYxiGjIO7lPX4TTLi98hn0HD5P/t+fgD29pHJZJJhyZF971YZ2ZnyuqqNTOaC16YsE8bKq1UHZT/Q3qXHei6C4o4qs3MVmes2VdAPGx3bbTs3ybZuiUxVqsm2dJ78Rn2kjGsDij2X77BXlfv5y/Jq1VG25fMlSea6sbLv2uxUzv/NH2TbvFp5376TX6bZ9bJvXy9ZcuT37AfyHfSE0/sxKO6ozBUqO443DMPxXg/4+Fd5X9fN/SeiGEZmev7fQPO2hb5OWfe2le3v5fltnbNH5qiCIwFyv/9I9n3b5dX4atnjd8v3wf+ePrusf8yUd+vOMoVVzP8sSE6UOaJ6sW3KnfK+LG+PkFT4+9B+8phMYRUdnxHFPj67XbLZZPLxcdqet3C6cp69VZJUbskJmULKy558WKZK4S6dV5LsCXtl5GTJq04Tl8oX2caMNNmPxMurduOCdRw9JFOlCMdrY2SmK3vkbbKt+FX+r30nn+53OJ/Lbpd982qZ6zWVKSDIrXZdSGdeGCzqswfnn2GzyeTldcHqsx9Lkm3FAnnfeIeMtJPK7BYpSSq33i7b6jgZJ47I56bC/28z7HbJZHL57xXnh5FyXBkdK0mSTOHVFTRtg0yhFc5PXYYh+86NMlev6/T5lvvDJ7Kt+k3+r09zfB+9VLmaDQh6l4FLJehl/+dOWX+ZUqbnPDP4FMfvyTdleX+k4/eA/5sr7xt6FtnbV25Nrmz/rFH2vW3PuW2mqlEyjiT8e871dscX57OZG7WSfetaSZLPgGHK+/5Dl+vx++/nsrz8YP4vwWHSOfbABM3br8yeMU7bTBWrSoHlZMTvke9DL8r34THKmzZeefMmK/DjX2VPTlT20G4yjp2/IZjmZtfL947H5dW8rXK/eFU+dzwur9qNZPnqdeWOH+VU1nfYq8r98D9FnuvML26G1aqMq32KLHu+BM3erczedS54vQXasShZmZ3+DXa+j74s6/wp8mrbU76Dhsu26nflvHT/v/sf/K+8Yq+VkX5SsubJ++Z7/r0IYrc7hTN7/B4ZmWnyatC8yPqNvDzlTnlP5qpRMjdooaz+DSVJ5oYtZE/cL7/7/yPfu55S3oJpsi6ZLesC5568oFm7ZK5eR4bNpuyhXSX/QNmWzivxcZdbkaGM68tJkkwRNeRzy8Pyve95GfF7ZD9xRF71m+d/afMPcPp8KLcm1ymk5f0xSzlP9c1vy9y9MlerWfjjtFqVcY2fdGpIr/+7M5Xzn8FSdmah5X363Ke8WV9JknwfGC3fh/4rk49vkY8n79fvlfN8fsg6+0LCabbNq5V197WSpMBJK+TV7DrHPuu6P2WOqiXr8vmyvPxQfhtf/kbm+lfJGjdd1j/nyHfgcOW8mN8r7HPPszKOH5F17jdOdZRbckLWdX/KvnmVcie+fsYD8lXwGosMq1W2tX9IXt7yvrpjkY/HfvigbKsXyvumwRfli9LZQc8wDCk9RaaQ8k7ljLSTyls4XZaXH5R3twEKeGNaoeczMtNl27As/0LkGe8fw26XcXCXTDXqXZSAcPqrW1nVbV2+QJaPRsvn1kfk2/+B0rUlK0OmwHKO82QP6+HY53PX0/J7/DXn5y4vt9C/CfvRQ8r78RP53PqIzFWjziifJyPthMwVq8qeuF+mqtEFQmTGzbVlJOyVz+An5Xvbo8rsm39B2O/Z92V560lJUuAPm+RVN/bf+k4ky/b3Mlnee0amwGAFTtvg9HzaE/fLFF69wIUr2+bVsm1aKZ+BTxR6UcvpMSUekKl8ZZkC8i/IGbkW2ffvkLlubP7FzDMuRpfEfiRBpirVSv2aG3l5ynnpfnm37izvm+8u9HjrhmUy+frJXL2esh7uJO/Ot8rv/lGFnK1sGaknpOAwmcxm5f78xb/fhU4xVa8r/+fGy/v6G0s8l/XPubKu/1N+T7wuk9mcP6eAf0Chjzd3+meyvPKwTOHR8hvxtnKeGyC/F7+QZWz+e99vxFvyuetpx7E5bzwh66KfFTT/YImv+YVC0PMgl0rQS29X/pxDyPngO+Q55U5642I3A64KrSClnpB06svyqS/ZpeE7ZKR8h42T9c85ynmqXxk38MrjN3qCZPaSZewD8h32qryv6aKsu65x7A/69ZCUnamct4bL/5n3ZI6pL8m5t9Ct+p95z9Hj5g7/N39Qzsjbnbb5DB6hvCnvOW0LmBAn79adCrY/pLzKzT+o7GdvlXen/vLpMUjGiaOyLvpZlveedbt95rqx8nv2A6eAZNu9RXkzvlDe1A+cygb+sEnmOk0cXwJzvxyn3I9GOz/esV/L+uec/CGjhw+43b6SBHyxxKnHPOCDOZLJJOP4Efn0vc+p7Omg5fvQi/K5bagyu0bI6+qOCpgQJ9ufc2Vkpcvy/kj5/++rInuZDbtdlg+ek1e9ZvLpeWeB/bmT35M1brqjh9j3sVdkrtlQOWOGSGcMoT17VETg1ytlCq8u4+RRZd1R8CJGufX2fy9+pKcq+z+DHRcffO8bJb/HxznK5rz9lPKmvCffR/4nv4fHFHwMNptktxfoAbYuni1T5Uh5NW5V6GOXTg0HXh0n64LvZP17mYwDO/Ofw7enK+uB9vLp+4DyFnwnU0CgAj5dWOQX/7y4n2Vb9bv8nhufP9LjvWdkiqghU2hF+T31tswVqsjItci67BenESj+r052lJXNJvvWtQqat1/myBoF6jgdsMwNmsv33ueV89yAAmW8WneSqWK4bCt/zR+if+oiif/L38in1135jzkzXRlt87/fmOs0UdCPmx3PxdmfNd5db1PAmz84bSvuFg9X+d43Sl7XdpVx9JCMnCxZXnlY8vFVuYVJUlB+20xeXo66/MdNlXfbHjKyMmR543HZjyQo8JtVjhBq27NVWbc2lqlSuMr9nn8xNevRG2Vb+Zv8XvxCXrUbK3tEH/mNeNvxPEiSbcdG5X41Tuao2vIZMEzmKpHKmzdZOaPvyu/pmr27wPtKknK/fVeWd5+Wd7cB8rqms/KmfqCA92Ypc1ALKSPNUc7coLl8et0tnwHDZPL2lv3wQWXelP/amipWlXFqOHfwBkP2pHjJZHIK3ta//pCRdlI+nfvn3zpwaK9sW9bIOJksvwfzP6sMS46MzHTl/fixbGsW5Y/yOrBT3q3yP0dsm1bJ8v5I2TYslZQ/Mir7se5FvjY+tz+aP3LoowWOkUo57z0r6y9TFDRju6yLZuT//Sv/4rl325scI4+C5u2TOTIm/9ai4PIyla/k0v9fpsqRCvhgjoyTyY62mcIqqdwfySUeeyEQ9DzIpRL0cv53v+NKNYArT/AGQ5bxLyj3q9cudlPOjY9v/tDjM3pCT/PuepusZ03Scz6UW5oqefsUGAJeoNyyNNk2r1L20PM75NZdfv/9TD597pNyLcroGu4UtEpiiqgh5eUq8NvVkq+/cie+Lp8eg5Q1+N8QdOaQZCM9VZYPRipv+mdl/jgkyX/cFPn0GCRJyrylsex7t/67M6S8gpeckP1YkpSX6/hiLBU+RLTA8ZJ8Bg13BHu/p96R711PyZ6wV/Z922RY85Qz8rb8CxRfv+VymwOnrJWpapQyu4RLyu/pN5ev5NLFmOANhrJHDSrQ215c+TPZD+5WZp+6Lre1MIGT1yjn1aGOof6nBf16SEZGqvJ+/rzABRsnZrP8nv9IlnFD3WqHq7x7DJJ1/tQi95++mCRJlolvKPf/ns/f/tECmSpHOm5nUUh5Ke2k47igefuU9VAn+Q56Upa3hju2m2s2kM/tj8nyxuOObb73Pi+/J/79DLbt3iJJyrrt395Klx9PtwGy7dgg46z5FaSzRk/UqCfjwE75PjBauV+8kt+OIkbgBM3Zo8ybaxdeXwnPnysCp+f/XWXd0qjIMt433yPrnK//PebHzef0/BQmaOYOp1uILhaCnge5VIJeZv+Gsu/bftHqB3Bx+T70onI/G3uxm4EriP+bP8qna/49kOntKzh9OT4v9b07U0o/qZwx9xbc99LEQrefFjAhTl6tOiijfQUpI7XEusqtsymjZdnfx2Zuep3sm1aWWC5o/kFl9ij+PtczBXz8q8zVail3+gTZ/lok+7b17jTTY5ljr5HdhYnI3OH35JuyTHhJfk+87hQCcf6dPXz+YiHoeZBLJehlDe8t259zLlr9AIArj8+AYfJ/fnyZDM8DAHec2fN/MbmaDS6NOwpxWTBHF94VDwDA+ZL3/YeEPACXhJwXh1zsJpQKQQ8u8+l6e8mFAAAAAE9kLd3azRcbQQ8u82p2nYJm7nDaFjR790VqDQAAAHABlbt4t1CdC4IeSsVco578Rn0kSfK+8Q6Zo2uzKC0ua773Pn+xmwAAAC4DPj0GX+wmlApBD6Xmc9tQBU7fKv9XJzu2lVtvd+nYcqtz5NWu1/lqWom8O/XPX0T8AjI3u146h0VtA79br3Irs+TT936ZG7ZU0Izt8u58iyTJ9+ExKvfnSQVOXlOmbfXu1F9BvyXKu8cgydtHgT9skne3ATIVsZj0pcLcsKW8Tk1pfbaAjxbI78k3JUn+785wujDh/+5M+T3xmoI3GPItZC0sdwV+v1HenfrLu8cgBS1KVtDvh+V1bdcC5cqtschcr5kkyavdzU77/F9zbepzAABwftnW/3mxm1AqzLp5GbhUZt0siWHJkeW1x2RYsmUkJyrgk98lwy77/h3KGpD/Jbbcertksyn76f6FzuDpc8+zUnam8n74WN433yO/B0bLunaxrAumKuCT32Uc2id7cqLT4r0lCfx2tcy1G0t2uxSYvyaMdf5U5fyn4EK8vo++LJOfvyyfvyKfrrfJVClCuZ+/7FzmvlHK/eo1+dz5lGQ2K++btwut17vzLfIb/obM0bVlZKbLnrBXpuAwKSBIOc8PkLlOrEwVqir3wxcci/EalhwZqSdkrhLp0mMz0lOV0S6swHb/N74vdOHaovi/8q28ru8uc/lK+ec1DCkvVyZfP6dypydECJgQJ/vuzbK89aRjn99/PpV3qw4yMtOU9+v3yvv2HZfqDvotUebKEUVOtmBufLV8ug+U5Z2nijzH6YWOLZ+/otyP/ytJ8rnlIXm17iyfbgXvLbUfSZB912Z5tenutNiwkZervB8+lpGZLt8BjymjQ8Ui6wzeYMi6aqGyh/4b3AKnbZC8fWWuXkcmH99CjzPsdmWP6CNztVryGzpW8vaRKSDQsc9kNsvywfPKnfSGo54zlzYJnLpOWYNaOs7n//Z05c2eKNufc2UKj5aRFP/vvv99Je/eQwqsp1WWawqdqdx6u4wjCTJSj8s4mqjsJ3qW2Xnte7cq69YmpT7W997nlTvx9TJpx2lBc/cqs1etkuse9qrse/5xe92o0vB79n2nv8ui+L80Sd7d71DGNf5FlvEZ+ITyvvu/MmzdhWGKri0jfs/FbgYuFb5+MpWvLONIgmOTT9/7lTfzy4vYKBSntEt/XEjl/jyZ/13uImN5BQ9yuQS9ohiZ6cpom9/uM3tTct59RpLk/9TbMvJyZRzaJ3NM/fxj8vJk8vEp8pynQ4HfqI+V98tk2TeucNpvbtRKpsByCvj41yK/cNt2b5GRsFderTrItnWtvFq2l8mr4JpG2U/fIvvxJPneNlRerTvLVClc9v07ZI6pL5PJJNuerfkL43p5ybt9b9nWLpZXk9YyBQWX4lk6d2cGJK+W7eX/+jSZK4XnhzWrVbmfjZWRnSnbyl/ldXVH5X3/kdPxAROXyfuqNqWuN2/eZOWMvkuS5Dfy/+Q70HktH8NqlW3ZL1JYRVneelL2rWsd+04vmhr0ywGZI/I/zG27NivnlYflP+ojeTVoLuvqOOVOfV/+z38kc0R1GXZ7oWtOBf6wSV51/w0tRnqq5O0tU0BQqR/T2QzDkHKyZaSdkKlCVWW0PvVe8vNX8KpsSVLujC9lJCfKd/CTZfaaG9mZsnz6P/l06u9Yr8d+LEnmSvmLIp/5mpdblS2T379f1p32nQrA9vg9sh8+IFNwmEyVI2WuFF7sLIZeLdq5fNUycNIK5c35Wn7D35ApONRp3+k6fAYNl/+z78u6dJ5sW9dKMin30397UMv9cUyWz8bKHF1HpvBo5TzVT5Lk+8Tr8r3raZm8vSVJtp2blDfvW/ne8biME0eVdefVTvX5Pvhf+Q4ZKfmeEV7stsLDzFkLFpckKO6IbKt+l3f73jIFBRd4/rw79JH/G9/LSDmm3M/GyueWh+XVsIWMjDRl3BBa6DkDPl0o+frJq2FL5U2fIMvbI1xuT1GCNxgyci0FHnPgD5v+XaxZ/34WGznZsrz7tExVqin3o9H/lv9xs7zqNCn1bJdBi5Jl8vVzfOYXxlQpXMaxpFKdtzDl1uT++zd5uv5TC6zbdm9R9vCb5dPzLplj6hd6Ye9y5nVtV9lW/X6xm1E4b5+LPmGF36iP5dPnXhlJ8TLXqCsjI02ZfevJXKO+/EZPkFfNBjKyMmT5aLS8WnVQ7oSXZN/x90VtM/IFzd0rc7Wayvnf/cqb9ZVLx/g+/ppM5UJkee0xl+vxe/5DWV4fJt/hb8i+f7ussybK99GX5d2pn3JG3p7/ve4s5tqNFfTTFpfrOJ8Ieh7kcg96kmRPPiyTj69MYUX3kJTqfAd3y35wl7zb9pBhtcpIOaac5++Qbd0SBf60RV61G5dJPZeDrPvby7b+T/nc+oj8//NJieWNvFxltP63p+5c77E0rFbljL5LXi3ayff2oSWWt674VZYJL8n/xS/kVbvRudWZa5GsebIf2ifbqt/lc8fjxV4QKGtGXp6sC76TV6sOjoB6MTgC1F1Py/8p5x5lw57fi+5Vq6FL55CkgM8Xy7tVe9mT4iVrnkyVI5VxbUD+vo9/VfajNzrK+j70ouw7/pZ12TwFzdlb7PNg27JG1jWL5Hv3M46wJkmGzSb71rUyN2he5IUYV9h2bZa8fWRbt0ReTVrLq0HzQstlj7xd1t9/dNp2+n2f0be+jAM7Hdv9XvxC1jlfy7ZhqWNb0O+HHSH7NOufc5W34Dv5DnlOpgpVCuw/29mByeuqNgqcuMzxu2EYsm/f4NRbe6ageftl37VJ2U/2VtCC+PzQHlhOWY/eKNvK3yRJ5VZk/ts7nJMt49hhmapUc/TMWz5+0TFCobC/eyPluDI6VpKpfGUFxR3J7yU/45izw+LZvFq2V+AXi/Pr+r9Rsq79Q4GfL5YMQ/Z922SuXtdxMcQwjAI9za7yufUR+T32ikxhFWVd9btyxj4o2W3yH/OlvK/rVuRx9kP7ZHn3GVkX/Sz/sV/L5+a7JUnZ/7lT1l+mFPp4fB8Y7dRr76RciJSRVrrGlwstcjH1gC+WKPuhjvmjT5QfmnOe7u/0XvR/aaJM1WrJu2U7l0J44E//KOvWxlK5EJWbs1fZT/WVbcMypzL+b0+XObqOlGeRqUqU8qaNV+5Xr7n8kEzRdWTE50/M5nPLQ/Ib/obs8XtkqlhVmd2jHeX8XvxCPt3vUO437yj30zHyf3embEvnKm/GF8VXEBymwC//lDmqljKuL1dksdMXqAI++U3ehQyRL0nenG9kiq6t7Hvbluq4Mx//+VDurzzlvPygjONHZFs+v/i21Kjn/Hn23HgZKcfk+/AYmUwmpbcwS4Yh3yEjlfvDx/K+oZfMDZpLOVnyana902e9qWqUUy/oufAd/oZyP3iuhAeY/3fkM/hJ+T35luP/Cvv+Hcp69Eb53v2MfLoPVEbHSoUeHjRzh8w16kkq+Dl7Np/BT8qn970y12kik7nozx978mFldvt3ZJX/mC9lbtgy/zPs1GfsxUbQ8yCeEPRw/hjpqbKuXijvtjfJ5B/g0jG2reuU8/KDCvi/eTJXjjjPLURZs677U9bFs/K/7Lr4mp8to3cdGfF75P/mj/LpemuhZQzDyP+y/3+jlDfnawXN3n3J/CdXGobdLtumlbJvXSfLW8PlfdNgBZy6x9iw2SRLtuTtI+PEUZnDo2WknZTlq9fk07GfTBE1XB5KXWwbbLb83ie7XYHTtxYZxM/8ohI0Z4/sSQdlrtlQ5iLuLTby8mR55yl5XdNFPh37lNgOe1J8fvgr4kuOYbdLJpNjSLNhGMp+sKO8O98i34GPK/ebt2Wkp8r30bGyb14te+J+2fdtk+9DLxY6IqI4hmHIOmuicl66v8A+3wf/W2DY/GllPQGYYRhS6gnZTyYrq/+/r0vQomSZy1eSZcJYpx5o+QfK7+l3Zd+3TXlTPyjyvIGT18j61x8yV6gqU/lKMnIt8m7TQxnXFf43VG6NRTIM2Vb9nj/C5FQotu/foZyxD8r3of86BRinizWf/CZTpQjHkOygGdtliqotk7e3jOwsyWx26vk3MtOV9/Pn8u7cX+bIGOfnIy9PuZ+NldfVHeV1VRsZRw/J8tlYebdoV+C1Cpq3X6aKVWXy85eRmV5gVIP96CFlDb5aPv0flN/Qlwp93HkLpiln1EBJknfPO+X3xOsyVY5U3o+fSjmZ8hn05L9f/o8kKHfK+/Id8JhMVaNl27BU5jqxsu/bJq9m15f6PVgYIy9XOSNvl3XxLJmqVJPXdd3ke+sjMoVVUubNteU3eoKM40dkXfaLAifEST6+Ula6cr8b7/w+KYT/uCnKecF5Mo+Aj39V3vypss75ukD5gC//lHeLGxy/nz2Cx7ZuiaT8URNeLdrJp3N/2XZuUs5/75bfoy/Lu73zPd+G3S7j4C6ZatRzum3hNMuXr8k671sFfLYof2RQXq4sbzyhvOkTHGVMYRVV7o9jsu3arNzPxspUKUJ508bn//8QXl3y9pZx8phMIeUlLy/Zd/wtc+0m+SNtTn+u5GQ7/g5Oz/FQWHvOZNu7TbYNS2V55eH841bnFLi9xH40UVkPtJNXgxbyHz1BMgynWzBK89mROaiV7NvWlfq4C4Wg50EIegDKmpGRJvuBHfnDnM9hsqDLlT1hr0yRMcVezb2Y7Ad2ybZ3q7w79L5iXpect56UbfVCBX6/UcpKl23zanld00UZrfK/3PsOGSlTxXCZG7SQV6OWMgUW3avjrjO/SJ/55c7IzlLWfW3lO/AJ+fQeIkmyLp2n7CfyJxcLmrtXptCKsm1Ymh/Simmj9e/lTr1GgT9ulsxeJfbCn81+JEF5M7+S750jHAEr749ZMlcKl1fsNaU6l6usaxYp++HOkqRyf6YUGK5dmNMXjIotk2uRfHwvmff86R52c416Lr/fDJtNtk0rZQqrpOxhPWQk7pfvsFclSba1i+Vz+6Py6dhXRnaWMq7/99aC0++z3B8+lm31Qvm/Pk3KyZL96KECo5Ns2zco9/NX5DfyAynXoszedWSqWFXlFro/FLrIx5WVoaz7bpB3mx7y7j5Q5siYC3ZrSmEsE8bKFBAo37ufcal8zhtPKG/aeEmlC2z2xP3Kee0x+d79jLyv7nhObT2fCHoehKAHALjSnL7P+EIOz7auX6rs+9sp4MP58m7TvdiyhmHItjpO5lqNSt3rm35tgGTJkde1XRX4yW/uNBmXICM9NX+4cuw1hYZX2+bVsnw0Wn5PvSOvekUPhy6J/UiCTCEVLsuRFheSbe82mStWlSm0wsVuSpkh6HkQgh4AAJ7FlZ4uACiMq9ng0hy7AgAA4MEIeQDON4IeAAAAAHgYgh4AAAAAeBiCHgAAAAB4GIIeAAAAAHgYgh4AAAAAeBiCHgAAAAB4GIIeAAAAAHgYgh4AAAAAeBiCHgAAAAB4GIIeAAAAAHiYyyropaSkaOTIkYqNjVVERITCw8MVHh6uRo0aaejQoTpy5EiJxw8bNkw1a9Z0HBseHq6oqCh16tRJK1ascCq/a9cuBQQEOJU9+yciIkLr1q1zHDNmzBiFhoYWe0y7du3Oy/MDAAAAAJLkfbEb4CqbzabOnTurd+/eWrx4sSpUqCCTySRJSk1N1aRJk9SmTRtt2rRJgYGBhZ5jxIgRCgsL05YtWxQUFOTYbrfbtWLFCg0ePFjLly9XZGSkJCkzM1PXXHONFi9e7HI7U1NT9cEHH2jIkCHn/FgBAAAAwB2XTY/ejBkzFBMTozFjxqhixYqOkCdJoaGhGj58uG666SZNmDChyHMsWLBA48aNcwp5kmQ2m9W2bVvdcccdmjVr1nl7DAAAAABwIVw2QW/z5s3q2LFjsWW6dOmizZs3F7l/5MiRCggIKHJ/dHS04uPjz7mNAAAAAHApuGyCXkJCgiIiIootExkZqYMHDxa5f8SIEcUev2XLFtWpU+ec2gcAAAAAl4rLJujZbDZ5eXkVW8bb21tWq/Wczj979mwtWLBA/fr1c9qenJysESNGqGnTpoqMjHSaAOaBBx5QQkJCgXMtXrxYffr0Ud26dVW1alWFh4erWrVqat26tT766KMS22ixWJSWlub0AwAAAACuumyC3vly8uRJDRkyRCNGjNDMmTNVvnx5x74qVarIy8tLUVFR+uWXX3Tw4EElJSUpKSlJK1euVPPmzdWjRw/l5eU5jqlfv74OHjyoxx57TGvWrHGUP3jwoL777jstWLBAb731VrFteu211xQaGur4iY6OPm+PHwAAAIDnuWyD3o4dO1SrVi3t3LnznI43DEPTpk1Ts2bNVL58ea1fv15NmzZ1KhMZGalNmzbp6aefVlRUlLy9/52kNDQ0VI899phiYmL0559/OrYPHTpUixYtUrdu3VS+fHnHpDFeXl6qXbu2Jk6cqE8++aTYto0aNUqpqamOH+4bBAAAAFAal83yCmerX7++9u7de07HxsfHa8iQITIMQ/Pnz1fjxo3PuR0NGzbUnj171LlzZ5fKV6pUSbm5ucrJyZG/v3+hZfz8/OTn5+f43TAMSWIIJwAAAHCFO50JTmeEolw2Qc+V+++sVqtTr1th1qxZowEDBmjUqFF68MEHnZZpOBeBgYHKysoq1TH+/v7FBr2zpaenSxJDOAEAAABIys8IoaGhRe6/bIJeVFSUkpKSii2TmJio6tWrF7k/JSVF/fv317Rp09S2bdsS65wzZ44CAwOL7a3Lzs52mg30ueee09ixY5165M5msVhcDnlS/hDS+Ph4BQcHux1M3ZWWluZYhiIkJOSitgXF47W6vPB6XT54rS4vvF6XD16rywuv18VjGIbS09MVGRlZbLnLJujFxsZq8uTJGjZsWJFl4uLiFBsbW+T+d955R4MGDXIp5EnS0aNHtXXr1mKD3s6dO9WlSxfH7ytWrNDOnTuLbMfJkyfl7f3/7d15VJNX+gfwL4tjFUXwCISdxAUrIu6OiugAMjrIIupgtVLa0VhHkcp0OFbrVmWknYO22LFltFqraFuodrQuPTOo1dFpqyzVGQriDhLADZgACgn394c/U2MgLGNDEr6fczjH3Huf9725N/dNHvPmfa3blOhZWlrCzc2t1e0NwdbWlovaRHCuTAvny3RwrkwL58t0cK5MC+erY+j7Ju8xk7kYS2RkJEpKSrBmzRrcvXtX65zU6upqbNmyBYcPH4ZcLm92G9nZ2QgNDW31PoODg5GRkYFvvvlG5xzYhoYGfPLJJygsLERAQICmfPr06Vi+fDlKS0t1tldeXo6FCxdi/vz5re4DERERERFRW5nMN3pWVlb4xz/+gaSkJEycOFEr2bOzs8PEiRPxz3/+EzY2NgAe3ctu/vz5yMnJ0fwvw7179zBz5ky99+MLCgpCeno6AMDT0xPp6elYs2YNCgsLoVarNe2ee+45jB07FocPH9Y6TTM+Ph4qlQqBgYGoqqrS9NHCwgL29vaIjY3Fa6+99kzHhoiIiIiI6Ekmk+gBj76ifOedd/DOO++02HbSpEm4fPmyVtm3337b5n1OmDABx48fb3V7KysrJCYmIjExsc37MgVdu3bFmjVr9P4GkYwD58q0cL5MB+fKtHC+TAfnyrRwvoyfhWjpupxERERERERkUkzmN3pERERERETUOkz0iIiIiIiIzAwTPSIiIiIiIjPDRI+IiIiIiMjMMNGjFlVWViIxMRG+vr5wdnaGRCKBRCLBoEGDsGjRIpSXl3d0F43enj17MHToUK3xc3Z2xqBBg7Bp0yaoVCqt9llZWQgODoaXl5emvbu7OyZMmID9+/fr3NcReHSfyPDwcMhkMk2Mq6srRo8eje3bt2vdHuSxoqIizJkzB/3799fEuLi4YPjw4Xj77bfx8OFDnRiFQoGFCxfi+eef1zwfZ2dnDBkyBMuXL0d1dfWzGzgjolarERUVhYyMDK1yzlXHysrKgr+/P1xdXTXj8ngOwsPDkZ+fr9XeUOPYnuNmXV0dNm7ciGHDhsHFxUUTM2DAAMydOxdXrlx5dgPXAcrLy7FgwQJIpVKtuZJKpZg7dy6Ki4u12htqDFUqFf76179i1KhRWq8jmUyGiIgI5OXl6cQIIZCZmQl/f394eHhoYjw9PTF58mScPHnyWQ2bQSmVSoSGhmLbtm1a5cZ8zOrMa62p+aqsrMSSJUt01pmbmxsCAwNx9uxZne0Y+7ppz/ss/T9BpIdKpRLDhw8Xa9euFXfu3BGNjY2ausrKSvHuu++Kvn37ipqamg7spXE7ceKE8PHxEYWFhTp1ZWVlIiwsTKSmpmrKDhw4IHx9fcXp06dFfX29pryhoUFkZ2cLf39/sWXLFq3tnD9/XkilUnH48GHx4MEDTblarRYFBQUiIiJC/OEPf9CKKS4uFu7u7iI9PV1r/hobG8XNmzfFggULxIwZM7Ri/vvf/wqZTCa2bNkiqqurtWIqKirEm2++KUaNGiXUanUbR8n4rVixQvziF78QO3fu1JRxrjrWpUuXhKenp/j222+1jk1CPDp2ffbZZ6J///6acTbUOLb3uBkRESFeffVVUVJSohWjVCrFrl27hLu7u7h169b/MGIdKyQkRKxfv17U1dVplTc0NIiPPvpIaxwNOYbx8fEiKipKFBUVac1jXV2dOHjwoPDy8hK5ublaMZs3bxYTJ04UeXl5QqVSacofPnwoTp48KXx8fMTBgwfbN1AdpKqqSvj7+wtPT0+xefNmTbkxH7M681prbr5iY2PFa6+9JpRKpVZ7tVotTp8+Lby8vHSemzGvm/a8z9JPmOiRXhkZGSIqKkpvm7i4OLFp0yYD9cj0JCYmig8//LDZ+oKCAjF69GjNYx8fH/HDDz80276kpES4uLhoHSRDQ0P1fqhQKpXCw8NDlJWVacoWL16slWA+Ta1WCz8/P5GTk6Mp+/Of/ywSEhKajRFCiLCwMLF//369bUzNl19+KYYOHSrkcrlWose56lhJSUkiKSlJb5vAwECRnZ0thDDcOLbnuHnu3DkxYsQIvYl3SkqKWLp0qd7tGqvKykrh4eGhk5A/afz48SI/P18IYbgxLC0tFZ6enqK2trbZmC+++EKEh4drHjc0NAhnZ2ehUCiajcnOzhZ+fn56+29MamtrxZgxY8S6devEmjVrtBIHYz5mdda1pm++JBKJ3tfz8uXLxdatWzWPjX3dtOd9ln7CUzdJr4sXL+JXv/qV3jbBwcG4ePGigXpkesaOHYvJkyc3W+/u7q45ZamhoQF37tzBkCFDmm3v6uoKJycn3Lp1S1PW0jzZ2NhgxIgRKCwsbHWMpaUlAgMDtea2M74eioqKEB8fj8zMTHTr1k1TzrnqeNevX0ffvn31tomMjISl5aO3OkONY3tjJk2apOlra2JMSUVFBZydnWFhYdFsGzc3N82x0FBjWFBQgJEjR2qt7acFBQVpxRQXF2tOb2vO8OHDoVAodE7LN1ZCCCQkJGD16tU6dcZ8zOqsa03ffCUmJup9PT/5mQMw7nXT3vdZ+gkTPdKrpKQEzs7Oetu4uLjg5s2bBuqR6YmMjIRMJmu2/t///jf69esHACgrK4ODg0OL23x6zKuqqtCjR482xbRnbjvb66GmpgYzZsxAamqqTkLBuep49fX16Nq1q942cXFxGDp0KADDjSPnS5dUKsW9e/fQ2NjYbJvi4mLNsdKYxr1Xr164d+9em2IAwMHBAWVlZS22Mwbdu3fHb3/72ybrjPmY1VnXmr75WrZsmd7YJz9zAMa9btr7Pks/YaJHeqnValhZWeltY21tbTL/a2lsbt26hYULF2Lp0qUAWjfeQPvG/OmY9sxtZ3o9CCEgl8sRGhqK8PBwnXrOlXGorKxEXFwchg0bpnXhAR8fH8jlcpSWlmraGmocOV+6rK2tMXr0aKxcuRL379/XunjCw4cPsXv3bly/fl2T6BnTuD/t51z7psqU1o25rzV9Dh48iGPHjmH69OmaMmNeN1xr/zsmekQdQAiBjz/+GEOHDkVsbCxmzpzZ0V2ip7z//vtQKBRYv359R3eF9EhOTkZISAjOnDmDsrIylJWVQaFQ4MyZM/Dx8cGUKVP4AcBIvPnmm/jggw/Qu3dv9OnTBxKJBE5OTujevTsWLFiAjIwMvaePEVH73L9/H7GxsVi2bBm+/PJL2Nvbd3SXyEB4RKU2KSwshEwmw6VLlzq6Kybr0qVLCAkJQVpaGr7++mvEx8frbb948WIsXry4TftITk5u8lsoffbs2YNhw4a1KebkyZPo16+fWVym/0lnzpxBSkoK9u3bB2tr61bHca4MLzo6GmFhYejevbumzMLCAnZ2doiPj4ebmxtOnTrVZKyhxrE9x82qqir069fPZC/T/7Tbt28jPDwc27Ztg1KpxN27d1FWVoby8nJUV1dj9+7dSE5ORn19fZPxhhzDYcOGIT09vU0x4eHhSE5OblOMqTLmYxbXmjYhBD799FP4+fnB3t4eOTk5en/vBhj/umnP+2xn1vpPMEQAvL29cfXq1Y7uhklSq9VISkrC9u3b8dZbbyEmJqZV/3v9l7/8pc37Wr58eZtjXnzxRbz44ottipk0aRIuX77c5n0Zs7KyMsyZMwd79+6Fk5NTm2I5V4Y3cOBAvfWDBw/GlStXEBgYqFNnqHFsz3GzV69eZjVfn376KSIiIjBr1iydOhsbG8yaNQvfffcdMjIyMHfuXJ02hhzD3NzcNsccPHiwzTGmypiPWVxrPykuLkZsbCyEEDh69Ch8fHxaFWfs66Y977OdGb/RI71ac96zSqVq07cenZFSqcT06dORl5eHCxcuIDY2tskkr7XnmbdnzJ+Oac/cmvvrQaVSITo6GsuWLcP48eP1tuVcGQd9V30DHl20oKamBoDhxpHzpaugoKDFbxJ8fX1x7tw5AMY17k/7Ode+qTKldWPuaw0Avv/+ewQEBCA6OhpZWVl6kzxjXjdca/87Jnqkl5ubW4tXDSstLYWHh4eBemSaXn/9dbi5ueGLL76AnZ1ds+0kEgnu3LnT4vaeHnM7Ozsolco2xbRnbs399XDmzBlkZ2dj48aNWhf2ePyXlpaG+Ph4TJs2jXNlBGxsbPDgwQO9berq6jSndRpqHDlfulrzIczCwkLzoc6Yxr26uhq9e/duUwzw6HRVfZeSNxXGfMziWtNVWVmJqKgo7N69G3K5XO8tTQDjXjftfZ+lnzDRI718fX2RlZWlt01WVhZ8fX0N1CPTU1RUhGPHjiElJaXFA661tTUcHByQl5fXbJvS0lKUl5fD1dVVU9bSPNXU1CA7Oxve3t6tjmlsbMSJEye05tbcXw8TJ06EUqlEeXm55sIeT/5FR0dj165d+OqrrzhXRkAmk6GoqEhvmx9//FFzJUdDjWN7Y06cOKH39gOmPF8ymQz5+fl62+Tn50MqlQIw3BgOHDgQ58+fR21tbatj3NzcoFAooFAomo3Jzc2FRCIxi28ZjPmYxbWmKyUlBXPmzIG/v3+r2hvzumnv+yw9oQNv1k4mQKVSiZEjR4rVq1eLO3fuiMbGRk1dVVWVSE1NFX379hVKpbIDe2ncPvvsMxEbG9vq9n/729/E4MGDxenTp0V9fb2mXKVSidzcXOHv7y9SU1O1YnJycoSXl5f46quvxIMHDzTlarVaFBUVicjISJGQkKAVU1JSItzd3cWePXtETU2NpryxsVGUlJSIBQsWiKioKK0YpVIpZDKZSE1NFdXV1Voxd+7cEatWrRIjR44UarW61c/XlLz00kviwIEDmsecq45VWloqpFKpOHHihM7zqK+vFzt27BADBw7UjLOhxrG9x83p06cLuVwuSkpKtGJqamrE7t27hbu7u7h169b/MGId5/bt28LT01McO3ZMqFQqrTqVSiWOHj0qXF1dRWlpqabMUGO4bNkyERkZKYqKirTm8cGDB+LQoUPCy8tL5OTkaMW89957YsKECSIvL0/r+dTX14tTp04JHx8fcfDgwXaOVsdas2aN2Lx5s+axMR+zuNZ052vq1Kni5MmTbdqGMa+b9rzP0k+Y6FGLKisrxR//+Efh4+MjJBKJcHJyEk5OTsLb21vI5XKhUCg6uotGbevWrcLGxkYzbk39ubm5aR1Es7KyRFBQkPDw8NBqM378eJGZmal1IH4sJydHhIWFCalUqolxdnYWI0eOFGlpaTofroQQoqioSMyePVv069dPEyORSISfn5/YuHGjqKur04lRKBRCLpcLb29vzetBIpEIHx8fkZiYKKqqqp7tABqRpUuXir///e9aZZyrjnX+/HkREhIi3NzctNaUh4eHiI6OFleuXNFqb6hxbM9xs66uTvzpT38Sfn5+WjH9+vUTL7zwgrh8+fKzG7gOkJeXJ6ZMmaIzV66uriIkJER8//33Wu0NNYYqlUqkpaWJkSNHCmdnZ02MVCoVYWFhOh9WhXiUfGRkZIhx48YJV1dXrdddUFCQOH78+LMbOANLSUkR27dv1yoz5mNWZ19rT8/XmDFjRJ8+ffR+5pgzZ47WNox93bTnfZYesRDiibuWEhERERERkcnjb/SIiIiIiIjMDBM9IiIiIiIiM8NEj4iIiIiIyMww0SMiIiIiIjIzTPSIiIiIiIjMDBM9IiIiIiIiM8NEj4iIiIiIyMww0SMiIiIiIjIzTPSIiIiIiIjMDBM9IiIiAgD07dsXx44d6+huEBHRM8BEj4iIzMrOnTthYWHR7J+trS1++ctf4sCBA03GX7hwAb169cKECRMM1ueGhgYMGDAADg4OKCsrM9h+n3b16lWUlJR02P6JiOjZse7oDhARET1LN27cQK9evbBhw4Ym66urq3Hq1ClERUVh3759mD17tlZ9Xl4eqqurcebMGUN0FwCgUChQVFQEALh06RIkEonB9k1EROaJiR4REZmdHj16YMmSJc3Wv/HGG4iOjsa6det0Er0JEyZg9OjRGDx48M/dTQ03NzdMmzYN9+/fx5AhQwy2XyIiMl9M9IiIqNOxsLBAREQEMjMz8fDhQ3Tt2lVTJ5VK8d133xm0P5aWljh06JBB90lEROaNv9EjIqJOycHBAUKIDv1NHBER0c+FiR4REXVKdXV1AAB7e3udusDAQGzbtk2nfMeOHQgICIAQAnv27EFwcDAcHR1haWmJ7t27w9fXF6+++ioqKira3J+1a9di3rx5OuX5+flwcnLCvXv3cPbsWcyePRtubm7o0qULunTpgv79+yMyMhJ5eXl6t3/q1ClMmTIFXl5esLKyavJCNfpcuHAB06dPR//+/dGlSxdNjLu7O4KCgnDkyJEm41atWoVVq1Y1u93KykoEBQXh7NmzevdPRERtw1M3iYioU/rhhx/g4eEBW1tbnbqrV6/ixo0bOuU3b97E5cuXMW/ePOzfvx9hYWGQy+VwcHBAfX09bty4gX379iEzMxP5+flwdHRsdX+uX7+Oa9eu6ZRXVFSgoqICycnJ2LRpEyZNmoQ5c+bAyckJlpaWKC0txeHDhzFixAgcPXoUISEhOtv4+OOP8fLLL2PUqFGYPXs2nJ2dYWVlpdMuLi6uyb5lZWXh17/+NWQyGSIiIuDq6oouXbqgsbER5eXlOHv2LEJDQ/H2228jMTFRK9bZ2RmLFy/GkCFDMGvWLK26xsZGzJs3D9nZ2XBxcWn1WBERUcuY6BERkdlRqVTN3iagsbER2dnZePfdd7F27do2b1uhUKCkpASlpaWws7PTqV+7di2ef/55vPXWW3j//ffbvP3mpKenIy8vr8mLxGzcuBFTp05FQkICLl68qPXtXG1tLZYvX46YmBjs3LkTlpbNn8zTXKKXkJCAMWPG4Pjx41q/Z3xMCIE33ngD69evR2xsrFaCu2jRIpw4cQK/+93v4OfnhwEDBmjqNmzYgMOHD+PQoUPw8vJqzTAQEVEr8dRNIiIyO+Xl5XB3d2/yz9PTE1FRUXjw4AF8fX3btf2dO3c2meQBQJ8+ffDSSy/h5MmT7X8CTUhKSmr2SqDW1taIj4/Hf/7zH9y9e1errrCwEOXl5UhISNCb5DXn/v37uHDhAuLj45tM8oBHF7d5/fXXoVQq8a9//Uun7qOPPoJEIsGsWbM0p8wePXoUa9euxbp16xAaGtrmfhERkX78Ro+IiMxO7969sWvXribrVCoViouLsXfvXgQHB+Prr79GcHBwq7ctkUgglUr1tvH09MS1a9cghGjxt2+tNXbs2Bb3CQDXrl1Dnz59NOXXr1/Xqm+rx/EymUxvuz59+qBnz56a9k+ytbVFZmYmxowZgyVLlmDlypWYO3cuwsLCsHLlynb1i4iI9GOiR0REZqdbt26YNm2a3jZLlixBQEAAVq9e3aZEr6nftj2tZ8+eqK2thVqthrX1s3mrbWm/PXv2BABUVVVplT9+3KNHj3bt93F8XV1ds6fDPmZra4vbt283WTdkyBBs3boVr7zyCo4cOQIHBwd88skn7fqWkYiIWsZEj4iIOiULCwvExMRALpfr3EuPdAUEBLSq3XPPPdds3QsvvICVK1dCoVAgLS0NvXr1elbdIyKipzDRIyKiTsvd3R3AoytbPv43NS0tLa3FK2NaWFhg/PjxzdbHxcWhsrISMpkMK1asQFBQEGxsbJ51V4mICEz0iIioE1OpVACALl26dHBPfj6PvzVTKpXNXkAGeHTlzKY8PiV03LhxzV4MpjV27NiB7du3Y9euXRg+fDhGjx6NRYsWYdeuXc/sd4xERPQTnhhPRESd1rVr12BjYwMnJ6eO7srP5vFtC5q6SMqTLly40GT54wvPFBcX640XQiAgIAB79+7VqcvJycHvf/97yOVyxMTEYPDgwfjwww+xe/dubN++veUnQUREbcZEj4iIOqXa2lp88MEHGD9+vFl/o+Tt7Q1HR0ds3ry52W/t7t69i8WLFzdZZ29vDx8fH2zduhWNjY3N7uebb77B6dOndU7vvH//PmbMmAEfHx+89957mvKYmBjMnz8fcXFxyM3NbcczIyIifXjqJhERmR2lUtnszcof30w9IyMDFRUV+Pzzzw3cO8Pq3r07kpOT8corr6CgoADBwcFwdHSEEAK3b99GQUEBjhw5gqlTpzYZb2Fhgc2bN2PKlCkYNmwYfvOb38DJyQnW1tYQQkCpVKKgoACZmZkICAjQ+o2eEAIxMTGorKzE8ePHdS7UkpqainPnzmHmzJnIzc2Fra3tzzoWRESdCRM9IiIyKx4eHqiqqkJcXFyT9VZWVpBKpRg3bhw2bNiAvn376rSRSqVN3nfO3d29xfvJAYCLiwukUmmbbh3g5eWl+c3gkxwdHeHo6IjevXvrjbezs4OjoyMkEolO3csvvwyZTIakpCTs2bNHcxqmvb09Bg0ahJSUFMjlcnh7e8PNzU0nfvLkycjOzsaaNWvw+eef48aNG1Cr1ZptuLu7Y8WKFYiLi9P6vWNdXR1+/PFHpKenN3nvwW7duiEzMxMhISG4evUqhg4dqvc5EhFR61mI5s7jICIiIiIiIpPE3+gRERERERGZGSZ6REREREREZoaJHhERERERkZlhokdERERERGRmmOgRERERERGZGSZ6REREREREZoaJHhERERERkZlhokdERERERGRmmOgRERERERGZGSZ6REREREREZoaJHhERERERkZlhokdERERERGRmmOgRERERERGZmf8DImqtimbDg9MAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot bins\n", "fig, ax = plt.subplots(1, 1)\n", "ax.plot(bins[\"integration\"][\"path0\"])\n", "ax.plot(bins[\"integration\"][\"path1\"])\n", "ax.set_xlabel(\"Bin index\")\n", "ax.set_ylabel(\"Relative amplitude\")\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "61c34d98", "metadata": {}, "source": [ "Averaging\n", "--------------------\n", "\n", "As you may have noticed, the acquisition results also contain an average counter. This average counter reflects the number of times a bin has been averaged during the sequence.\n", "Each time the sequencer writes to the same bin the results are automatically accumulated and the average counter is increased. Upon retrieval of the acquisition results, each\n", "result is divided by the average counter and therefore automatically averaged. To show this we will change the sequence one last time. This time we will average 10 bins a 1000\n", "times each." ] }, { "cell_type": "code", "execution_count": 33, "id": "dc2903bd", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:10.469672Z", "iopub.status.busy": "2024-11-13T02:39:10.469496Z", "iopub.status.idle": "2024-11-13T02:39:10.472730Z", "shell.execute_reply": "2024-11-13T02:39:10.472061Z" } }, "outputs": [], "source": [ "# Sequence program.\n", "seq_prog = \"\"\"\n", " move 0,R1 #Average iterator.\n", "\n", "avg: move 0,R0 #Bin iterator.\n", " nop\n", "\n", "loop: acquire 3,R0,1200 #Acquire bins and store them in \"avg\" acquisition.\n", " add R0,1,R0 #Increment bin iterator\n", " nop #Wait a cycle for R0 to be available.\n", " jlt R0,10,@loop #Run until number of avg iterations is done.\n", " add R1,1,R1 #Increment avg iterator\n", " nop #Wait a cycle for R1 to be available.\n", " jlt R1,1000,@avg #Run until number of average iterations is done.\n", "\n", " stop #Stop.\n", "\"\"\"" ] }, { "cell_type": "code", "execution_count": 34, "id": "2f3e39e2", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:10.474360Z", "iopub.status.busy": "2024-11-13T02:39:10.474198Z", "iopub.status.idle": "2024-11-13T02:39:10.481256Z", "shell.execute_reply": "2024-11-13T02:39:10.480644Z" } }, "outputs": [], "source": [ "# Add sequence program, waveforms, weights and acquisitions to single dictionary and write to JSON file.\n", "sequence = {\n", " \"waveforms\": waveforms_weights,\n", " \"weights\": waveforms_weights,\n", " \"acquisitions\": acquisitions,\n", " \"program\": seq_prog,\n", "}\n", "with open(\"sequence.json\", \"w\", encoding=\"utf-8\") as file:\n", " json.dump(sequence, file, indent=4)\n", " file.close()" ] }, { "cell_type": "code", "execution_count": 35, "id": "b047b67a", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:10.482937Z", "iopub.status.busy": "2024-11-13T02:39:10.482776Z", "iopub.status.idle": "2024-11-13T02:39:10.618414Z", "shell.execute_reply": "2024-11-13T02:39:10.615010Z" } }, "outputs": [], "source": [ "# Upload sequence.\n", "module.sequencer0.sequence(\"sequence.json\")" ] }, { "cell_type": "markdown", "id": "221e251f", "metadata": {}, "source": [ "Let's start the sequence and retrieve the results." ] }, { "cell_type": "code", "execution_count": 36, "id": "fe936f19", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:10.625745Z", "iopub.status.busy": "2024-11-13T02:39:10.625576Z", "iopub.status.idle": "2024-11-13T02:39:10.638398Z", "shell.execute_reply": "2024-11-13T02:39:10.637875Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, State: RUNNING, Info Flags: NONE, Warning Flags: NONE, Error Flags: NONE, Log: []\n" ] } ], "source": [ "# Arm and start sequencer.\n", "module.arm_sequencer(0)\n", "module.start_sequencer()\n", "\n", "# Print status of sequencer.\n", "print(module.get_sequencer_status(0))" ] }, { "cell_type": "markdown", "id": "1409b5a7", "metadata": {}, "source": [ "Note that the average count of each bin is now set to a 1000." ] }, { "cell_type": "code", "execution_count": 37, "id": "3b245f90", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:10.640509Z", "iopub.status.busy": "2024-11-13T02:39:10.640331Z", "iopub.status.idle": "2024-11-13T02:39:11.230827Z", "shell.execute_reply": "2024-11-13T02:39:11.230113Z" } }, "outputs": [], "source": [ "# Wait for the sequencer to stop with a timeout period of one minute.\n", "module.get_acquisition_status(0)\n", "\n", "# Get acquisition list from instrument.\n", "avg_acq = module.get_acquisitions(0)[\"avg\"]" ] }, { "cell_type": "code", "execution_count": 38, "id": "cf7a4059", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:11.233074Z", "iopub.status.busy": "2024-11-13T02:39:11.232893Z", "iopub.status.idle": "2024-11-13T02:39:11.242915Z", "shell.execute_reply": "2024-11-13T02:39:11.242268Z" } }, "outputs": [ { "data": { "text/plain": [ "{'integration': {'path0': [0.2815677806546165,\n", " 0.28156791744015636,\n", " 0.28157222374206153,\n", " 0.2815709882755252,\n", " 0.28157302833414755,\n", " 0.28157048900830484,\n", " 0.2815717616023449,\n", " 0.2815710854909623,\n", " 0.2815676555935515,\n", " 0.28156770346849047],\n", " 'path1': [0.25680579872984854,\n", " 0.25680561406936975,\n", " 0.2568021255495848,\n", " 0.2568049174401563,\n", " 0.25680508549096237,\n", " 0.25680326722032243,\n", " 0.2568037381533952,\n", " 0.2568040625305325,\n", " 0.25680600048851976,\n", " 0.256807206643869]},\n", " 'threshold': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0],\n", " 'avg_cnt': [1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000]}" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "int_len = module.sequencer0.integration_length_acq()\n", "bins = avg_acq[\"acquisition\"][\"bins\"]\n", "bins[\"integration\"][\"path0\"] = [(val / int_len) for val in bins[\"integration\"][\"path0\"]]\n", "bins[\"integration\"][\"path1\"] = [(val / int_len) for val in bins[\"integration\"][\"path1\"]]\n", "bins" ] }, { "cell_type": "markdown", "id": "296b186f", "metadata": {}, "source": [ "Stop\n", "----\n", "\n", "Finally, let's stop the sequencers if they haven't already and close the instrument connection. One can also display a detailed snapshot containing the instrument parameters before\n", "closing the connection by uncommenting the corresponding lines." ] }, { "cell_type": "code", "execution_count": 39, "id": "48a64651", "metadata": { "execution": { "iopub.execute_input": "2024-11-13T02:39:11.244638Z", "iopub.status.busy": "2024-11-13T02:39:11.244473Z", "iopub.status.idle": "2024-11-13T02:39:18.739542Z", "shell.execute_reply": "2024-11-13T02:39:18.738848Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, State: STOPPED, Info Flags: FORCED_STOP, ACQ_SCOPE_DONE_PATH_0, ACQ_SCOPE_DONE_PATH_1, ACQ_BINNING_DONE, Warning Flags: NONE, Error Flags: NONE, Log: []\n", "Status: OKAY, State: STOPPED, Info Flags: FORCED_STOP, Warning Flags: NONE, Error Flags: NONE, Log: []\n", "\n", "Snapshot:\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "in0_gain :\t-6 (dB)\n", "in0_offset :\t0 (V)\n", "in1_gain :\t-6 (dB)\n", "in1_offset :\t0 (V)\n", "marker0_exp0_config :\tbypassed \n", "marker0_exp1_config :\tbypassed \n", "marker0_exp2_config :\tbypassed \n", "marker0_exp3_config :\tbypassed \n", "marker0_fir_config :\tbypassed \n", "marker0_inv_en :\tFalse \n", "marker1_exp0_config :\tbypassed \n", "marker1_exp1_config :\tbypassed \n", "marker1_exp2_config :\tbypassed \n", "marker1_exp3_config :\tbypassed \n", "marker1_fir_config :\tbypassed \n", "marker1_inv_en :\tFalse \n", "marker2_exp0_config :\tbypassed \n", "marker2_exp1_config :\tbypassed \n", "marker2_exp2_config :\tbypassed \n", "marker2_exp3_config :\tbypassed \n", "marker2_fir_config :\tbypassed \n", "marker2_inv_en :\tFalse \n", "marker3_exp0_config :\tbypassed \n", "marker3_exp1_config :\tbypassed \n", "marker3_exp2_config :\tbypassed \n", "marker3_exp3_config :\tbypassed \n", "marker3_fir_config :\tbypassed \n", "marker3_inv_en :\tFalse \n", "out0_exp0_config :\tbypassed \n", "out0_exp1_config :\tbypassed \n", "out0_exp2_config :\tbypassed \n", "out0_exp3_config :\tbypassed \n", "out0_fir_config :\tbypassed \n", "out0_latency :\t0 (s)\n", "out0_offset :\t0 (V)\n", "out1_exp0_config :\tbypassed \n", "out1_exp1_config :\tbypassed \n", "out1_exp2_config :\tbypassed \n", "out1_exp3_config :\tbypassed \n", "out1_fir_config :\tbypassed \n", "out1_latency :\t0 (s)\n", "out1_offset :\t0 (V)\n", "present :\tTrue \n", "scope_acq_avg_mode_en_path0 :\tFalse \n", "scope_acq_avg_mode_en_path1 :\tFalse \n", "scope_acq_sequencer_select :\t0 \n", "scope_acq_trigger_level_path0 :\t0 \n", "scope_acq_trigger_level_path1 :\t0 \n", "scope_acq_trigger_mode_path0 :\tsequencer \n", "scope_acq_trigger_mode_path1 :\tsequencer \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer0:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\tin0 \n", "connect_acq_Q :\tin1 \n", "connect_out0 :\tI \n", "connect_out1 :\tQ \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1000 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0.49998 \n", "offset_awg_path1 :\t0.49998 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer1:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\toff \n", "connect_acq_Q :\toff \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer2:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\toff \n", "connect_acq_Q :\toff \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer3:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\toff \n", "connect_acq_Q :\toff \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer4:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\toff \n", "connect_acq_Q :\toff \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer5:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\toff \n", "connect_acq_Q :\toff \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, Flags: NONE, Slot flags: NONE\n" ] } ], "source": [ "# Stop both sequencers.\n", "module.stop_sequencer()\n", "\n", "# Print status of both sequencers (should now say it is stopped).\n", "print(module.get_sequencer_status(0))\n", "print(module.get_sequencer_status(1))\n", "print()\n", "\n", "# Print an overview of the instrument parameters.\n", "print(\"Snapshot:\")\n", "module.print_readable_snapshot(update=True)\n", "\n", "# Reset the cluster\n", "cluster.reset()\n", "print(cluster.get_system_status())" ] } ], "metadata": { "jupytext": { "cell_metadata_filter": "tags,-all", "main_language": "python", "notebook_metadata_filter": "-all" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.20" } }, "nbformat": 4, "nbformat_minor": 5 }