From ccac41c2ec46500c6c2d759420a110a15c7c3d7c Mon Sep 17 00:00:00 2001 From: Sergey O Date: Tue, 19 Mar 2024 23:35:31 -0400 Subject: [PATCH] updating RoseTTAFold2 --- RoseTTAFold2.ipynb | 198 +++++++++++++++++++++++++++++++++++++++------ 1 file changed, 174 insertions(+), 24 deletions(-) diff --git a/RoseTTAFold2.ipynb b/RoseTTAFold2.ipynb index db6f0729..53361622 100644 --- a/RoseTTAFold2.ipynb +++ b/RoseTTAFold2.ipynb @@ -50,20 +50,36 @@ { "cell_type": "code", "source": [ - "#@title setup **RoseTTAFold2** (~1m)\n", "%%time\n", + "#@title setup **RoseTTAFold2** (~1m)\n", + "params = \"RF2_jan24\" # @param [\"RF2_apr23\",\"RF2_jan24\"]\n", + "\n", "import os, time, sys\n", - "if not os.path.isfile(\"RF2_apr23.pt\"):\n", + "os.environ[\"PYTORCH_CUDA_ALLOC_CONF\"] = \"max_split_size_mb:512\"\n", + "\n", + "if params == \"RF2_jan24\" and not os.path.isfile(\"RF2_jan24.tgz\"):\n", + " # send param download into background\n", + " os.system(\"(apt-get install aria2; aria2c -q -x 16 https://files.ipd.uw.edu/dimaio/RF2_jan24.tgz) &\")\n", + "\n", + "if params == \"RF2_apr23\" and not os.path.isfile(\"RF2_apr23.tgz\"):\n", " # send param download into background\n", - " os.system(\"(apt-get install aria2; aria2c -q -x 16 https://colabfold.steineggerlab.workers.dev/RF2_apr23.pt) &\")\n", + " os.system(\"(apt-get install aria2; aria2c -q -x 16 https://files.ipd.uw.edu/dimaio/RF2_apr23.tgz) &\")\n", "\n", "if not os.path.isdir(\"RoseTTAFold2\"):\n", " print(\"install RoseTTAFold2\")\n", - " os.system(\"git clone https://github.com/sokrypton/RoseTTAFold2.git\")\n", - " os.system(\"pip -q install py3Dmol\")\n", - " os.system(\"pip install dgl -f https://data.dgl.ai/wheels/cu121/repo.html\")\n", - " os.system(\"cd RoseTTAFold2/SE3Transformer; pip -q install --no-cache-dir -r requirements.txt; pip -q install .\")\n", - " os.system(\"wget https://raw.githubusercontent.com/sokrypton/ColabFold/beta/colabfold/mmseqs/api.py\")\n", + " os.system(\"git clone --branch 'dimaio/gpu_mem_efficiency' https://github.com/uw-ipd/RoseTTAFold2.git\")\n", + " os.system(\"pip install py3Dmol\")\n", + "\n", + " # 17Mar2024: adding --no-dependencies to avoid installing nvidia-cuda-* dependencies\n", + " os.system(\"pip install --no-dependencies dgl==2.0.0 -f https://data.dgl.ai/wheels/cu121/repo.html\")\n", + " os.system(\"pip install --no-dependencies e3nn==0.3.3 opt_einsum_fx\")\n", + " os.system(\"cd RoseTTAFold2/SE3Transformer; pip install .\")\n", + "\n", + " os.system(\"wget https://raw.githubusercontent.com/sokrypton/ColabFold/main/colabfold/colabfold.py -O colabfold_utils.py\")\n", + "\n", + " #os.system(\"pip install dgl -f https://data.dgl.ai/wheels/cu121/repo.html\")\n", + " #os.system(\"cd RoseTTAFold2/SE3Transformer; pip -q install --no-cache-dir -r requirements.txt; pip -q install .\")\n", + " #os.system(\"wget https://raw.githubusercontent.com/sokrypton/ColabFold/beta/colabfold/mmseqs/api.py\")\n", "\n", " # install hhsuite\n", " print(\"install hhsuite\")\n", @@ -71,11 +87,14 @@ " os.system(f\"curl -fsSL https://github.com/soedinglab/hh-suite/releases/download/v3.3.0/hhsuite-3.3.0-SSE2-Linux.tar.gz | tar xz -C hhsuite/\")\n", "\n", "\n", - "if os.path.isfile(f\"RF2_apr23.pt.aria2\"):\n", + "if os.path.isfile(f\"{params}.tgz.aria2\"):\n", " print(\"downloading RoseTTAFold2 params\")\n", - " while os.path.isfile(f\"RF2_apr23.pt.aria2\"):\n", + " while os.path.isfile(f\"{params}.tgz.aria2\"):\n", " time.sleep(5)\n", "\n", + "if not os.path.isfile(f\"{params}.pt\"):\n", + " os.system(f\"tar -zxvf {params}.tgz\")\n", + "\n", "if not \"IMPORTED\" in dir():\n", " if 'RoseTTAFold2/network' not in sys.path:\n", " os.environ[\"DGLBACKEND\"] = \"pytorch\"\n", @@ -87,7 +106,8 @@ " from google.colab import files\n", " import numpy as np\n", " from parsers import parse_a3m\n", - " from api import run_mmseqs2\n", + " #from api import run_mmseqs2\n", + " from colabfold_utils import run_mmseqs2\n", " import py3Dmol\n", " import torch\n", " from string import ascii_uppercase, ascii_lowercase\n", @@ -103,7 +123,7 @@ "if not \"pred\" in dir():\n", " from predict import Predictor\n", " print(\"compile RoseTTAFold2\")\n", - " model_params = \"RF2_apr23.pt\"\n", + " model_params = f\"{params}.pt\"\n", " if (torch.cuda.is_available()):\n", " pred = Predictor(model_params, torch.device(\"cuda:0\"))\n", " else:\n", @@ -114,6 +134,10 @@ " unique_seqs = list(OrderedDict.fromkeys(seq_list))\n", " return unique_seqs\n", "\n", + "def run_mmseqs2_wrapper(*args, **kwargs):\n", + " kwargs['user_agent'] = \"colabfold/rosettafold2\"\n", + " return run_mmseqs2(*args, **kwargs)\n", + "\n", "def get_msa(seq, jobname, cov=50, id=90, max_msa=2048,\n", " mode=\"unpaired_paired\"):\n", "\n", @@ -133,7 +157,7 @@ " os.makedirs(path, exist_ok=True)\n", " if mode in [\"paired\",\"unpaired_paired\"] and len(u_seqs) > 1:\n", " print(\"getting paired MSA\")\n", - " out_paired = run_mmseqs2(u_seqs, f\"{path}/\", use_pairing=True)\n", + " out_paired = run_mmseqs2_wrapper(u_seqs, f\"{path}/\", use_pairing=True)\n", " headers, sequences = [],[]\n", " for a3m_lines in out_paired:\n", " n = -1\n", @@ -163,7 +187,7 @@ "\n", " if len(msa) < max_msa and (mode in [\"unpaired\",\"unpaired_paired\"] or len(u_seqs) == 1):\n", " print(\"getting unpaired MSA\")\n", - " out = run_mmseqs2(u_seqs,f\"{path}/\")\n", + " out = run_mmseqs2_wrapper(u_seqs,f\"{path}/\")\n", " Ls = [len(seq) for seq in u_seqs]\n", " sub_idx = []\n", " sub_msa = []\n", @@ -199,10 +223,24 @@ ], "metadata": { "id": "ymCHu14w17wF", - "cellView": "form" + "cellView": "form", + "outputId": "d273d9af-d478-4d1f-d13b-681133264e04", + "colab": { + "base_uri": "https://localhost:8080/" + } }, - "execution_count": null, - "outputs": [] + "execution_count": 3, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "compile RoseTTAFold2\n", + "CPU times: user 9.78 s, sys: 981 ms, total: 10.8 s\n", + "Wall time: 30.5 s\n" + ] + } + ] }, { "cell_type": "code", @@ -257,7 +295,11 @@ "lengths = [len(s) for s in sequences]\n", "\n", "# TODO\n", - "subcrop = 1000 if sum(lengths) > 1400 else -1\n", + "#subcrop = 1000 if sum(lengths) > 1400 else -1\n", + "\n", + "subcrop = -1\n", + "topk = 1536\n", + "\n", "\n", "sequence = \"/\".join(sequences)\n", "jobname = jobname+\"_\"+symm+\"_\"+get_hash(sequence)[:5]\n", @@ -304,6 +346,7 @@ " nseqs=max_msa,\n", " nseqs_full=max_extra_msa,\n", " subcrop=subcrop,\n", + " topk=topk,\n", " is_training=use_dropout)\n", " plddt = np.load(npz)[\"lddt\"].mean()\n", " if best_plddt is None or plddt > best_plddt:\n", @@ -312,10 +355,46 @@ ], "metadata": { "cellView": "form", - "id": "_oJTZGgdeKkO" + "id": "_oJTZGgdeKkO", + "outputId": "6d418113-3aea-47d0-b08e-af78a336a7c7", + "colab": { + "base_uri": "https://localhost:8080/" + } }, - "execution_count": null, - "outputs": [] + "execution_count": 4, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "jobname: test_X1_a5e17\n", + "lengths: [59]\n", + "getting unpaired MSA\n" + ] + }, + { + "output_type": "stream", + "name": "stderr", + "text": [ + "COMPLETE: 100%|██████████| 150/150 [elapsed: 00:01 remaining: 00:00]\n" + ] + }, + { + "output_type": "stream", + "name": "stdout", + "text": [ + "N=2048 L=59\n", + "recycle 0 plddt 0.882 pae 2.725 rmsd 13.466\n", + "recycle 1 plddt 0.902 pae 2.400 rmsd 0.578\n", + "recycle 2 plddt 0.904 pae 2.387 rmsd 0.214\n", + "recycle 3 plddt 0.905 pae 2.375 rmsd 0.140\n", + "recycle 4 plddt 0.904 pae 2.418 rmsd 0.097\n", + "recycle 5 plddt 0.905 pae 2.393 rmsd 0.066\n", + "recycle 6 plddt 0.905 pae 2.400 rmsd 0.052\n", + "runtime=14.29 vram=0.76\n" + ] + } + ] }, { "cell_type": "code", @@ -362,10 +441,81 @@ ], "metadata": { "cellView": "form", - "id": "53wdd2WX70o_" + "id": "53wdd2WX70o_", + "outputId": "2b431e52-456b-43cf-cb03-832b31bc12fd", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 948 + } }, - "execution_count": null, - "outputs": [] + "execution_count": 5, + "outputs": [ + { + "output_type": "display_data", + "data": { + "application/3dmoljs_load.v0": "
\n

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

\n
\n", + "text/html": [ + "
\n", + "

3Dmol.js failed to load for some reason. Please check your browser console for error messages.

\n", + "
\n", + "" + ] + }, + "metadata": {} + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAzoAAAHDCAYAAADss29MAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAACIbklEQVR4nO3deXhTVeI+8DdJm3Rv6d5CoWUtZalSpFZkVKhWdFAUxx2RQf2qBQXGGWV+jsg4A4yOiAvCuIGiDooOzowoyCI4atkKKMi+tixtKdC9Tdvk/v5Ic2nae9qcckNpeD/Pk0d7cnJy7k1ScnrOea9BURQFREREREREXsTY3h0gIiIiIiLSGwc6RERERETkdTjQISIiIiIir8OBDhEREREReR0OdIiIiIiIyOtwoENERERERF6HAx0iIiIiIvI6HOgQEREREZHX4UCHiIiIiIi8Dgc6dMlYt24dDAYD1q1bp5Y9+OCDSExMbLc+NaXVRyIiIiKSx4EOURvMnDkTX3zxRbs9/6JFi2AwGLBlyxZhnSNHjsBgMKg3X19fREZG4qqrrsIf//hH5OXlNXuMc6DlvFksFsTExODaa6/FzJkzcerUKZf6jeu2dOPAjYiIiC40n/buAFF7evvtt2G326UfN3PmTNxxxx0YPXq0/p3S2T333IObbroJdrsdZ8+exebNmzF37ly8+uqrePfdd3H33Xc3e8wTTzyBK664AjabDadOncKPP/6I6dOnY86cOfj0008xfPhwAMDixYtdHvfBBx9g1apVzcr79u3ruQMkIiIi0sCBDl307HY7amtr4efnp3vbvr6+urd5sRk0aBDuv/9+l7KjR4/ihhtuwLhx49C3b1+kpqa63D9s2DDccccdLmU//fQTbrjhBowZMwa7du1CXFxcs3Y3bNiAVatWNSsnIiIiutC4dI0uiOeffx4GgwF79uzBnXfeiZCQEERERODJJ59ETU2NS12DwYCJEyfio48+Qr9+/WCxWLBixQoAwPHjx/Hb3/4WMTExsFgs6NevH957771mz3fs2DGMHj0agYGBiI6OxpQpU2C1WpvV09qjY7fb8eqrr2LAgAHw8/NDVFQUbrzxRnWZmMFgQGVlJd5//311adaDDz6oPl7vPnpCt27dsGjRItTW1uLFF1906zGpqamYO3cuSkpK8MYbb3i4h0RERETnhzM6dEHdeeedSExMxKxZs7Bhwwa89tprOHv2LD744AOXemvXrsWnn36KiRMnIjIyEomJiSgsLMSVV16pDoSioqLw9ddfY8KECSgrK8PkyZMBANXV1RgxYgTy8vLwxBNPID4+HosXL8batWvd6uOECROwaNEijBw5Eg899BDq6+vxv//9Dxs2bMDgwYOxePFiPPTQQxgyZAgeeeQRAECPHj0A4IL1UQ8ZGRno0aMHVq1a5fZj7rjjDkyYMAHffPMN/vrXv3qwd0RERETnSSG6AKZPn64AUG655RaX8scff1wBoPz0009qGQDFaDQqv/zyi0vdCRMmKHFxcUpxcbFL+d13362EhoYqVVVViqIoyty5cxUAyqeffqrWqaysVHr27KkAUL799lu1fNy4cUq3bt3Un9euXasAUJ544olmx2C329X/DwwMVMaNG9esjif6qGXhwoUKAGXz5s3COocPH1YAKC+99JKwzq233qoAUEpLSxVFUZRvv/1WAaAsXbpU+JjU1FSlU6dOmvdlZ2cr/LVCREREFwMuXaMLKjs72+XnSZMmAQC++uorl/JrrrkGKSkp6s+KouDzzz/HqFGjoCgKiouL1VtWVhZKS0uxdetWta24uDiXPSYBAQHq7EtLPv/8cxgMBkyfPr3ZfQaDocXHXqg+6ikoKAgAUF5eLvUYmfpERERE7YFL1+iC6tWrl8vPPXr0gNFoxJEjR1zKk5KSXH4+deoUSkpK8NZbb+Gtt97SbLuoqAiAY6N9z549mw1M+vTp02r/Dh48iPj4eISHh7dat6kL1Uc9VVRUAACCg4OlHiNTn4iIiKg9cKBD7Uo0S+Lv7+/yszMC+v7778e4ceM0HzNw4EB9OyepI/SxqZ07dyI6OhohISFu1a+rq8O+ffvQv39/D/eMiIiI6PxwoEMX1P79+11maw4cOAC73d4s+aypqKgoBAcHw2azITMzs8W63bp1w86dO6EoistAau/eva32r0ePHli5ciXOnDnT4qyO1gDtQvVRLzk5OTh48KBUFPRnn32G6upqZGVlebBnREREROePe3Togpo3b57Lz6+//joAYOTIkS0+zmQyYcyYMfj888+xc+fOZvefOnVK/f+bbroJJ06cwGeffaaWVVVVCZeTNTZmzBgoioIZM2Y0u09RFPX/AwMDUVJS0i591MPRo0fx4IMPwmw24/e//71bj/npp58wefJkdOrUqdleKyIiIqKLDWd06II6fPgwbrnlFtx4443IycnBhx9+iHvvvbfZBSu1zJ49G99++y3S09Px8MMPIyUlBWfOnMHWrVuxevVqnDlzBgDw8MMP44033sADDzyA3NxcxMXFYfHixQgICGj1Oa677jqMHTsWr732Gvbv348bb7wRdrsd//vf/3Dddddh4sSJAIC0tDSsXr0ac+bMQXx8PJKSkpCenn5B+tjYe++9p15jqLEnn3xS/f+tW7fiww8/hN1uR0lJCTZv3qyGLixevFhzOd3//vc/1NTUwGaz4fTp0/jhhx/wn//8B6GhoVi2bBliY2Ol+klERER0wbVf4BtdSpzx0rt27VLuuOMOJTg4WOnUqZMyceJEpbq62qUuACU7O1uzncLCQiU7O1tJSEhQfH19ldjYWGXEiBHKW2+95VLv6NGjyi233KIEBAQokZGRypNPPqmsWLGi1XhpRVGU+vp65aWXXlKSk5MVs9msREVFKSNHjlRyc3PVOnv27FF+9atfKf7+/goAl6hpvfuoxRkvLbrl5+er8dLOm4+PjxIeHq6kp6cr06ZNU44ePdqsXWe8tPPm6+urREVFKb/61a+Uv/71r0pRUVGL/WK8NBEREV0sDIrSaD0OkYc8//zzmDFjBk6dOoXIyMj27g4REREReTnu0SEiIiIiIq/DgQ4RERF5nXXr1sFgMGDdunVq2YMPPthqyueFpNVHvdu72I6Z6ELiQIeIiIioBTNnzsQXX3zR3t0gCVVVVXj++ed1G0RSxyQ90Pnuu+8watQoxMfHw2AwuPXBX7duHQYNGgSLxYKePXti0aJFbegqdWTPP/88FEXh/hwiImo3b7/9dpuuV9aRBzptPeaOrqqqCjNmzOBA5xInPdCprKxEampqs+uhiBw+fBg333wzrrvuOmzfvh2TJ0/GQw89hJUrV0p3loiIiLyb3W5HTU2NR9r29fWFxWLxSNsXq0vxmC+0+vp61NbWat5XWVl5Xm0rioLq6urzauNSJj3QGTlyJP7yl7/gtttuc6v+ggULkJSUhJdffhl9+/bFxIkTcccdd+CVV16R7iwRERFd/J5//nkYDAbs2bMHd955J0JCQhAREYEnn3yy2SDGYDBg4sSJ+Oijj9CvXz9YLBb1+mDHjx/Hb3/7W8TExMBisaBfv3547733mj3fsWPHMHr0aAQGBiI6OhpTpkyB1WptVk9rv4rdbserr76KAQMGwM/PD1FRUbjxxhuxZcsWtX+VlZV4//33YTAYYDAY8OCDD6qP17uPWo4ePYrHH38cffr0gb+/PyIiIvCb3/wGR44cafWxWsd8+vRpjB07FiEhIQgLC8O4cePw008/wWAwuKy6efDBBxEUFITjx49j9OjRCAoKQlRUFJ566inYbDa13pEjR2AwGPD3v/8d8+bNQ/fu3REQEIAbbrgB+fn5UBQFL7zwArp06QJ/f3/ceuut6nXlGvv6668xbNgwBAYGIjg4GDfffDN++eWXZsfTWp+OHDmCqKgoAMCMGTPU1+35559v8VyVlJRg8uTJSEhIUFch/e1vf4Pdbtc81rlz56JHjx6wWCzYtWuX+r7ftWsX7r33XnTq1AlXX301AMdg6IUXXlDrJyYm4o9//GOz90BiYiJ+/etfY+XKlRg8eDD8/f3xj3/8o8V+k5jHLxiak5ODzMxMl7KsrCxMnjxZ+Bir1erywtvtdpw5cwYREREwGAye6ioRETWhKArKy8sRHx8Po5HbOknOnXfeicTERMyaNQsbNmzAa6+9hrNnz+KDDz5wqbd27Vp8+umnmDhxIiIjI5GYmIjCwkJceeWV6kAoKioKX3/9NSZMmICysjL1e0R1dTVGjBiBvLw8PPHEE4iPj8fixYuxdu1at/o4YcIELFq0CCNHjsRDDz2E+vp6/O9//8OGDRswePBgLF68GA899BCGDBmCRx55BADQo0cPALhgfdy8eTN+/PFH3H333ejSpQuOHDmC+fPn49prr8WuXbukLjZtt9sxatQobNq0CY899hiSk5Px73//G+PGjdOsb7PZkJWVhfT0dPz973/H6tWr8fLLL6NHjx547LHHXOp+9NFHqK2txaRJk3DmzBm8+OKLuPPOOzF8+HCsW7cOTz/9NA4cOIDXX38dTz31lMuAcPHixRg3bhyysrLwt7/9DVVVVZg/fz6uvvpqbNu2zWWw1lqfoqKiMH/+fDz22GO47bbbcPvttwOA5gWynaqqqnDNNdfg+PHj+L//+z907doVP/74I6ZNm4aTJ09i7ty5LvUXLlyImpoaPPLII7BYLAgPD1fv+81vfoNevXph5syZcF7F5aGHHsL777+PO+64A7/73e+wceNGzJo1C7t378ayZctc2t67dy/uuece/N///R8efvhh9OnTR/yCUsvO5yI8AJRly5a1WKdXr17KzJkzXcqWL1+uAFCqqqo0H+O8uCRvvPHGG28Xxy0/P/98/rmgS4zz3/FbbrnFpfzxxx9XACg//fSTWgZAMRqNyi+//OJSd8KECUpcXJxSXFzsUn733XcroaGh6neIuXPnKgCUTz/9VK1TWVmp9OzZUwFavkj02rVrFQDKE0880ewY7Ha7+v+BgYEuF4b2ZB+1aH1fysnJUQAoH3zwgVrmvOhzS8f8+eefKwCUuXPnqmU2m00ZPny4AkBZuHChy2MBKH/+859dnvvyyy9X0tLS1J+dF6iOiopSSkpK1PJp06YpAJTU1FSlrq5OLb/nnnsUs9ms1NTUKIqiKOXl5UpYWJjy8MMPuzxPQUGBEhoa6lLubp9OnTqlAFCmT5/e7NxpeeGFF5TAwEBl3759LuXPPPOMYjKZlLy8PJdjDQkJaXYRbef7/p577nEp3759uwJAeeihh1zKn3rqKQWAsnbtWrWsW7duCgBlxYoVbvWbWubxGZ22mDZtGqZOnar+XFpaiq5duyI/Px8hISHt2DMioktLWVkZEhISEBwc3N5doQ4oOzvb5edJkybhzTffxFdffeXy1/VrrrkGKSkp6s+KouDzzz/HnXfeCUVRUFxcrN6XlZWFJUuWYOvWrRg6dCi++uorxMXF4Y477lDrBAQE4JFHHsEf/vCHFvv3+eefw2AwYPr06c3ua20FyYXqIwD4+/ur/19XV4eysjL07NkTYWFh2Lp1K8aOHdtqG04rVqyAr68vHn74YbXMaDQiOztbOMP06KOPuvw8bNgwLF68uFm93/zmNwgNDVV/Tk9PBwDcf//98PHxcSn/5z//iePHj6N79+5YtWoVSkpKcM8997icR5PJhPT0dHz77bdt7pO7li5dimHDhqFTp04ufcjMzMTs2bPx3Xff4b777lPLx4wZoy6Pa61vX331FQC4fLcFgN/97nf4+9//juXLl+O6665Ty5OSkpCVldXmY6FzPD7QiY2NRWFhoUtZYWEhQkJCXD64jVksFs2NcyEhIRzoEBG1Ay4bprbo1auXy889evSA0WhstrckKSnJ5edTp06hpKQEb731Ft566y3NtouKigA49q/07Nmz2XvUneU+Bw8eRHx8vMuyI3ddqD4CjqVvs2bNwsKFC3H8+HF1ORTg+GOwjKNHjyIuLq7ZcreePXtq1nfuW2qsU6dOOHv2bLO6Xbt2dfnZOehJSEjQLHe2sX//fgDA8OHDNfvQ9LufTJ/ctX//fvz888/CwYvztXRq+p5t6b6jR4/CaDQ2O8exsbEICwvD0aNH3W6b5Hh8oJORkaGOZJ1WrVqFjIwMTz81ERERXUREA+amf/h0bv6+//77hXtHWtpvcSFcyD5OmjQJCxcuxOTJk5GRkYHQ0FAYDAbcfffdLhvlPcFkMp13XVG5c8DmPIbFixcjNja2Wb3Gs0GyfXKX3W7H9ddfL5xh6927t8vPoj/Wt3Sfu38waqltkiM90KmoqMCBAwfUnw8fPozt27cjPDwcXbt2xbRp03D8+HF1o+Gjjz6KN954A3/4wx/w29/+Vt1wuHz5cv2OgoiIiC46+/fvd/nr9IEDB2C325ulgDUVFRWF4OBg2Gy2ZoFGTXXr1g07d+6EoiguXyTduXZMjx49sHLlSpw5c6bFWR2tL6gXqo8A8Nlnn2HcuHF4+eWX1bKamhqUlJS49fimffn2229RVVXlMqvT+LvdheYMd4iOjm71XLpLdha6R48eqKio0O35G+vWrRvsdjv279+Pvn37quWFhYUoKSlBt27ddH9OcpCO0NmyZQsuv/xyXH755QAc6w0vv/xyPPfccwCAkydPIi8vT62flJSE5cuXY9WqVUhNTcXLL7+Md955h2sPiYiIvFzTa+69/vrrAByXqmiJyWTCmDFj8Pnnn2Pnzp3N7j916pT6/zfddBNOnDiBzz77TC2rqqoSLidrbMyYMVAUBTNmzGh2X+PlYYGBgc0GFReqj87natwfwHEuG0c8uysrKwt1dXV4++231TK73e729RE9ISsrCyEhIZg5cybq6uqa3d/4XLrLOYhzdzB45513IicnR/M6jyUlJaivr5fug9NNN90EAM2S2+bMmQMAuPnmm9vcNrVMekbn2muvbfZha6xx/nrjx2zbtk32qYiIiKgDO3z4MG655RbceOONyMnJwYcffoh7770XqamprT529uzZ+Pbbb5Geno6HH34YKSkpOHPmDLZu3YrVq1er12F5+OGH8cYbb+CBBx5Abm4u4uLisHjxYrcil6+77jqMHTsWr732Gvbv348bb7wRdrsd//vf/3Dddddh4sSJAIC0tDSsXr0ac+bMQXx8PJKSkpCenn5B+ggAv/71r7F48WKEhoYiJSUFOTk5WL16NSIiItx6fGOjR4/GkCFD8Lvf/Q4HDhxAcnIy/vOf/6h9bY/9eCEhIZg/fz7Gjh2LQYMG4e6770ZUVBTy8vKwfPlyDB06FG+88YZUm/7+/khJScEnn3yC3r17Izw8HP3790f//v016//+97/Hf/7zH/z617/Ggw8+iLS0NFRWVmLHjh347LPPcOTIEURGRrbp+FJTUzFu3Di89dZbKCkpwTXXXINNmzbh/fffx+jRo12CCEhfF2XqGhEREXV8n3zyCZ577jk888wz8PHxwcSJE/HSSy+59diYmBhs2rQJf/7zn/Gvf/0Lb775JiIiItCvXz/87W9/U+sFBARgzZo1mDRpEl5//XUEBATgvvvuw8iRI3HjjTe2+jwLFy7EwIED8e677+L3v/89QkNDMXjwYFx11VVqnTlz5uCRRx7Bs88+i+rqaowbNw7p6ekXrI+vvvoqTCYTPvroI9TU1GDo0KFYvXp1m1bHmEwmLF++HE8++STef/99GI1G3HbbbZg+fTqGDh0KPz8/6Tb1cO+99yI+Ph6zZ8/GSy+9BKvVis6dO2PYsGEYP358m9p85513MGnSJEyZMgW1tbWYPn26cKATEBCA9evXY+bMmVi6dCk++OADhISEoHfv3pgxY4ZLmlxb+9K9e3csWrQIy5YtQ2xsLKZNm6aZ+Ef6MSgtTc9cJMrKyhAaGorS0lKmrhERXUD8/Utt8fzzz2PGjBk4depUm/8KThfWF198gdtuuw3ff/89hg4d2t7dIdIFL3NNREREdAmprq52+dlms+H1119HSEgIBg0a1E69ItIfl64RERERXUImTZqE6upqZGRkwGq14l//+hd+/PFHzJw5k9HG5FU40CEiIiK6hAwfPhwvv/wyvvzyS9TU1KBnz554/fXX1fAFIm/BPTpERCTE379ERNRRcY8OERERERF5HQ50iIiIiIjI63CPThOKorTLxbLo/Ly4Yg8+3ZKPbhGB6B0ThN4xweotKtjS6uNPV1hx91sbAABXJIVjSGI4rkgKR+cwbspsDT8z1JHNmzcPL730EgoKCpCamorXX38dQ4YMae9uERGRDjjQaWR/YTkeeG8Tbh4Qh2d/ndLe3SE32ewKPsg5igprPYorapF79KzL/Y9e0wPPjExusY01e4qwv6gCALC/qAIfb8wDAHQO88dVPSIw+frel8SgR1EULN5wFHa7ggeHJrVad+y7m5B/tgrvjhuMntHBF6iXRPr45JNPMHXqVCxYsADp6emYO3cusrKysHfvXkRHR7f4WLvdjhMnTiA4OJgDfSKiC0xRFJSXlyM+Ph5Go3iBGsMIGtjsCsbM/xHb80sQGWTGlmev98jzkCu7XcHS3Hws/OEIHr2mB0Zf3lm6jb0F5cia+x0CzSbMGjMQ+wvLsbegHHsKypF3pgqxIX7Y8McRLbYx/d878X7OUQxPjkb3yEBsPnIGO0+UwWZ3fDyCLT54blQK7kjr4tVfahb+cBgz/rsLALD8iavRL158JeiteWdx+5s/AgAiAs34YMKQFutTx+TNYQTp6em44oor8MYbbwBwDF4SEhIwadIkPPPMMy0+9tixY0hISLgQ3SQiIoH8/Hx06dJFeD9ndBos/OEwtueXAACKK2pxtrIWnQLN7dupDu5ESTXCA83w8zVp3r/7ZBme/WKnOgPzz015bRrobMtzPD41IQy3pMar5ZXWegx4fiUKympQVFaD6BA/YRs7jpcCAG5JjVf7UGmtR+7Rs3hl9T5syyvB7z/7GSt/KcTM2/sjOljclt6Onq7Eu98fRnGFFaXVdSipqkNpdR3KqutwZfcI/GNsmi6Dr2/3FuGFL3epP3+ee7zFgcu/th4DABgNwOnKWtzz1gYs+u0QDOra6bz7QuRptbW1yM3NxbRp09Qyo9GIzMxM5OTktPr44GDHDKbZnA+DwXUA6CP4l1X0R8fAQO1yUTsWwWpcP8GvJbPkP2Wi9uvqtMtFv35Ef0Y1af+TIFReLldfdN5qarTLrVa5dkT9b3INTlV9vXa56PUSqarSLhe9r7TaF722paXa5aL3Tm2tXF9ERPVF5/70abl2RK+VqH5AgFx/fH3l2hGdf1F9UT9F71kR0fOK+i96b8p+dm027XK7Xbtc1M/IyOZltbVleOedBPV3sQgHOgCOFFfi79/sBeD40mZXgAOnKnBFYHg796zjWrO7EBPe3wJ/XxOG9YrE9SkxGJ4cjYggCyqs9Zi7ah8W/ngENrsCk9EAm13BkdOVbXqurQ0Dncu7hrmUB1p80DM6CPsKK/DzsVJkpmh/cm12BbtOlgEA+ncOdXn8r3pHYWjPSLz13SG8smofVu8uRO4rZ/DX2wbgpgFxbeqvrJlf7cbKXwo17/tmVyG25p1FWreW36tFZY5/4UWDvX2F5Zj08TbYFWBA51DsOF6KL7YfxzMjk2H2af6b1lpvw39/OgkAmHfvILzz/WHkHj2Lse9sxDvjrkBGjwiZQyS64IqLi2Gz2RATE+NSHhMTgz179jSrb7VaYW307aK84du3wRDSbKAj+uIvKhd9mZH98iZbLiL6Uif6ciLqp6i+qH0R2f7Lnge9zr9sO3oNCmTKPd13Tx+Tpz9bnv4sit77soNq0QBCRHagJiqX/SzK/m4QDaxFAyAArf6h95JIXbPWi98RdruCZ/71M2rq7LiqRwSu7hUFANhfWHGhuueVvtt3CgBQXWfDN7sK8fvPfsYVf12N3yz4EZkvr8c73x+Gza5gZP9YfDnpagBAYZkVVbWCP321YFteCQDg8oTmMwkDOocBAH4+LvhzFYBDpypQU2dHgNmEpMjmf1o1GQ147Noe+M+koUiJC8HZqjo8/tFWvNwwOG6LmjobNh46jdZWjtbU2fDdvmIAwJTM3nj17suwcPwV+NfjV+HmhoHWJ5vzW2zjbGUtsuZ+h6tmr8Wf/7sLpVWuf5Y9XWHFhPc3o8JajyFJ4Vj6aAaigy04U1mLb/cWabb57Z4ilFbXITbEDzf0i8XiCUMwtGcEKmtteHDhJqwTPI6oo5o1axZCQ0PVG5etERFd/Lx+oFNcYcWwv32LV1fvR01d8wHPPzfnYcOhM/D3NWH27QPROzoIAHCgqOMOdBRFwfGS6la/RHvS3kLHXzsnXtcTT47ohX7xIbArwOYjZ1FQVoOEcH8sHH8F5t+fhr5xIQgLcPz54EixYG5eoLS6Tg0RuKzJjA4ApCY4Zmh2HCsRtuFcttYvPgQmo/gvA8mxIfgieygevaYHAGDRj0fadI7tdgUPvb8Fd721AUtzj7VY94cDxaiusyE+1A9PjOiJWy/rjOv6RGNQ104Yd1UiAODLn0+iwioeIH68KQ9nq+pQb1fw3g+Hcd3L6/DRxqOw2RVY62149MNc5J+pRtfwACy4Pw1+vibcNsixfG/pFu3+fb71OABg9OWdYTIaEGD2wbvjrsCI5GhY6+14+IMtuOetDRi/cBMeXZyLyUu24ZnPf8acb/Zi46HTqK0X/DmH6AKJjIyEyWRCYaHrbGlhYSFiY2Ob1Z82bRpKS0vVW35+y39gICKi9uf1S9eWbjmGonIrXlm9D59uyccfb+qLmwbEwmAw4ERJNWZ95Vii8FRWH3SNCEDPhoHO/iLJRcEXkXe/P4y/LN+N2wd1xt/GDISvSX48qygKqmptCDCbpPd/KIqCvQWO83dj/1j07xyKKdf3xvGSaqzdXQiDwYA70rq47N1JjAjE9qoSHDldiZR49zc8/9wwgOkaHoDIoOZzmwMalqLtOF4qjEHeedyxbM2djfRmHyOmXt8b735/COU19Th2thoJ4YLFtQIf5BzB9wccszSfbTmGOweL/zK8erfjS1hmSkyzvl+R2AndIwNxqLgSy38+gbuu6Nrs8XU2Oz7IOQIAePCqRPxwoBj7iyrw/5btxIcb8tClkz82HzmLYD8fvPfgYIQ37Ev7TVoX/GP9IXy7twinyq0uEd1nKmvx7R7HjM3tg87tqfLzNWHB2DRM/mQ7lv98EjmHtBdTv7b2AALNJlzZPQLDekViWO8o9IgKau20EenKbDYjLS0Na9aswejRowE4wgjWrFmDiRMnNqtvsVhgaWn9RCOiPRkiJSXa5bLLXETlsnt0ZJebeLodvfaDiF4XUbnsEjvZ1110XKLzI7t0UKs/FYK/4YraFh2T7GsoW1/2eUX1Zd87ovqyn7myMu1y0WdRtn3Z94js7wDRniFZsp+5IMFXgeJi99toyusHOo9e0x1dOvlj1le7cbykGtkfb8WQpHBMH5WCl1buRYW1HoO6huHBhr+O94pxnOWDHXhGZ81ux5fQf209jtKqOsy7b5AwEECLoii47U1HAp2P0YBQf1/HLcAXkUEWTL2+N/rGiQcjpyqsOFtVB6MB6sARcEQ1j81I1HxMUmQgtueX4HCx3D4dddmaxmwOAPSNC4GP0YDiilqcKK3RjIje2TCjM6Cze4lhZh8jekYHY/fJMuw+WSY10Dl0qgKzV5xb/7/pyBkcL6nW7JfdrmB1w2uZ2Tem2f0GgwG/GZyAv63Yg08252sOdL7acRKFZY6ByrSbkmE0GPDRhqOYs2qf2n+T0YB59w5yiYfuGR2MyxLCsD2/BP/efhwPDeuu3vffn06g3q5gQOdQ9I5x3QToazLi9bsvx/3p3XCqwoqaOhus9XZY62yoqbPhQFEF/re/GKcra7FmTxHWNAyYnhmZrM6UEV0oU6dOxbhx4zB48GAMGTIEc+fORWVlJcaPH9/eXSMiIh14/UDHYDBgVGo8MvvGYMH6g1iw/iA2HT6Dm1/7HgBgNhnx4h0D1SVLPaMcX9xOlNagvKYOwX6CHVkXKZtdwU8NsxwmowFr9hRh7LuODeKh/u4dy/GSajWBrt6u4HRlLU5Xnvszh7+vCa/dc7nw8fsKHIPExIhAtwdYiRGOvTFHpAc6jiACUdKXn68JvWOCsetkGXYcK2k2oLDbFfxywjHQ6e/mQAcAUuJCGgYK5bihX/NlLlrqbXZM/fQn1NTZMbRnBOpsCjYdPoMvfzqB/9P4kv/TsRKcKrciyOKD9O7aYQNj0jrj79/sxda8EhwoKncZrCiKgve+PwwAGHtlN1h8HK/Fg0OTcMtlnTFn1V4s//kknr4xGb/qHdWs7TvSumB7fgmWbjmGCVcnqTNKzrS1xrM5jRmNhhbDCOx2BbsLyvC//cX4dk8RNh4+g3lrD2Dsld0QaPH6X0l0Ebnrrrtw6tQpPPfccygoKMBll12GFStWNAsoICKijsnr9+g4+ZtNmHJ9b6x96lr8euC5tKwnRvR0+XIYGuCrLtM5eKptKWCe8N+fTuCKv65udjHMpvYVlqOq1oYgiw8+eigdwX4+2HzkLO76R46avNUa57Kz3jFB2DBtBFZMHoZPHrkSv8/qA+Dcnhbh4wudj3f/ApKJkY5ZEZnkNUVRsK1hQCaa0QGAgV0cA5ifjzXv9+HTlaistcHP14geUYKMVw194xzHtutky+eisX98dwjb80sQbPHBS3ek4tbLHFHY/95+QrO+c9naNX2i1EFKU9HBfriuj+PChp822U+zNa8EPx0rhdnHiPvSXWd7wgPN+MvoAdj23A24e0jzmSAAGJUaD7OPEXsLy9XlfQeKyvHTsVL4GB1/QGgLo9GAfvGhePSaHvjnw1ciKTIQ5dZ64Xkg8qSJEyfi6NGjsFqt2LhxI9LT09u7S0REpJNLZqDj1DnMH2/cOwifP5aBl+4YiMeu7dmsTs+oiy+Q4MMNR3Gq3Iolm/JarLdVvaZMKK7sHoFPHslAZJAFewrKcceCHBx1YyCxp2GgkxIXgthQPyTHhiC9ewTuafhCfLi4EmU1ggsqANhb4PhS3DvW/YGOM+3ssEQYwZHTVSipqoPFx4jkWPFSuoFdwgBoD9Ccy9b6xoXAR2IvU0rD0r3dJ93by7XrRBnmrt4HAJh+Sz/Eh/njpv5x8DEasOtkGQ5o7AlbvcuxrOt6jWVrjd11hWOPz7+2HkOd7dwCXedszm2XdUaExv6l1oT6+yKrYbbqs9z8hudwhBBc0ztKc0+ULKPRoA7CPshpW7gDERERkZZLbqDjlNYtHL8ZnKCZsuXcp9NaIEFpdZ1mkpve6mx2dTnahsOCq2U1aBq1nBIfgs8fy0DX8ADknanC/e9uRL2t5V2BuxuuKZPcZB9OeKBZXfq1s4VZnb0N0dx9pGZ0HAOd4gorylsYRDW2tWF2a0DnUM1rvTg1ntFp+kXaeRz93QgiaMy5RynvTFWr/bXW2zD10+2osym4PiUGYxqWfHUKNKtLxv7TZDYj73QV9haWw2Q04No+zZeVNXZdnyhEBVtQXFGr7s86drYKX+90XOdm/NWJUsfW2G/SHFcb/vdPJ1BTZ8OybY6Bzu2DxFchln+OBPj5GrGnoFwdqBMRERGdr0t2oNMS5wb6lgIJjp2twlWz1uCRxbke78+uE2WoqXMMTvLPVOPYWfGsxzaNi2d2iwjEZ49mINBsQv6Zahw41fJMlXNGJ1ljRsY5aBANdOx2Bfsblq71kZjRCfHzRURD4tfR0+7N6mzL175QaFO9Y4JhNhlRWl2HvDOubTuXZLkbRODUKdCMuFDHxTed50vk1dX7saegHOGBZsy6fYBLepq6fO2nEy6DsFUNy9aGJIYjLKDluBQfkxFjGgYen25xzLwszjkKuwIM7RnR4mxXa4b2jERsiB9Kqurwl+W7cLK0BsF+PhjRN7rNbTYVGuCLUQMd52FxzlHd2iW6EIzG5jdZdrv2rb5en1ttrfZNth1RP2X7L9uOp2960at9rfdUS+8rUX2ZNkR9l21HL55+3vb6zNXUyN1k2xHV1+t3gF7HJfu7wcen+c3di5dyoKPhXMS0eECwdk8RKmtt+G7fKekN9LK2NNmXs+HQGc16pVV16r6iy5tszo8O8VM322vtVXGqqbPhUMNASCtZrbU2jpdUo6rWBrPJiMQIuXzCRHX5mnvn81zimnYQgZPZx6juqWncb0VRsLMhiKBfZ/nBQF91+ZogRxJA/pkqLFh/EAAw87b+zZZ7ZfaNgZ+vEUdPV7n0bfWuc7HS7rhzsGOgs25vEQ6dqsA/G5Y4/nZokptHo81kNKihAx9ucLT564HxUil+7hib0Q0A8NWOAhRXWFup7Wrd3iLM+WYv7HYueyMiIqJzONDR4Bzo5J+pEi5N29DoGiFf/tz6JurSqrYvc8s96hjYBDckUm0QXJ9ke8PytsSIAPV6KI2lJoQBOHftGS0HiipgV4BOAb6IDm6+B6O1GR3n7EaP6CCpPS+OfrufvFZVW68+V2szOgAwoMu56+k4OZad1cNsMkoFJzg5B08tDXS+238KdsVxzZsb+8c1uz/Q4oPrUxz7YJyb8Uur6rDpiOM1b21/jlP3qCAMSQyHXQEeWZyLspp6JEUGqkEF5+OONNdlamMEaWvnY2CXMKR2CUWtza7OSrlDURQ8/fnPeG3tAXy3/5Tu/SIiIqKOiwMdDVFBFoT6+8KuAIc0ktcURcHGRrMq//3pZIvtHTtbhaF/W4vR835Ada3cYEdRFGw54pjReeAqx1+9cw5qD3TOLVvTnuEY4MaMzrllayGaF9d07mU5croKpdXN96bscy5bi5G/AGRSQ/LaYTcCE3YcK4XNriA2xA9xoc2vQdOUM5Cg8SDPuWwtOS64TRdVTYlznItdLQQS/HjA8VoN6yXeZ3NLQ3rZlz+fgM2u4Nu9RbDZFfSJCUZXiVmxOxtCCZwhGuOHJsKosQdNVveoIKR1c7ynuoYHqP+vt/uvdLy/P96YB5ubszMnSmtQWOaYAfrlhHjASURERJceDnQ0GAwG9GqY1dHaz3KgqAKnK2th8THC12TA3sJy9Qu+lsU5R1FhdcxAvLhyj7CelmNnq1FUboWvyYDfDk2Cj9GA4yXVyD/TfB9LaxfPTG34sr/7ZBms9doDrj0NsxOi/TWdAs1ICHcMLH7RmNVRo6kl9uc4OZeuuTOj44yVHtQtzK22z81ElalLnJyzOzLXz2nMOaOzt6BM84u53a4gp2H27aoWritzTe8ohPr7oqjcio2HTqv7czJT5GZjbhoQi6CGWb9gPx91344eHrumBwwG4LFre2gOgPUwKjUeof6+OHa2Guv3Fbn1mO0N73kA2NXCzFp7sNsVzFm1D3/5chdW7CzAackleURERHR+ONARcC5fO6AxgHEuHRuc2AnXNKRmffmT9vK1mjobPmm0FGfhD0fw48Fit/vhvG5Ov/hQRARZ1C/sTZev2e2KepFPZ+JaUwnh/ggL8EWdTVEHJE05Z3ScX+K1qDNDGgMd54BPK8igNerSNTfCCNTZK8GxNtUzKgh+vkZUWOtxqGEgpV4oVDJxzalbRCD8fU2oqbNr7ivaU1COM5W1CDCb1GWDWsw+Rozs3xDjvPUY1u91LMHKdHPZmlOA2Qe3Xe5YVnZfur4X38xMicHBv96kRox7gp+vSd1r5G4owbZGKW0tLSFsD9/tP4XX1uzHO98fxqMf5iLtL6sx4uV1mPavn/Hfn064PWtFREREbcOBjkBLgQQbDjuWrV2ZFIFfD3QuOzqpeQ2Q//x0AiVVdegc5o+7G5YW/X7pz25HKG9p2J8zuGG50JXdHTMDTQMJDp+uRGl1wzVlBIMUg8HQ6vK1PQ3XwGkpqWtA5zAAza9LU2ez42DDDFhb9rw4Z3TOVNZqLotzUhQFW1uZvWrKx2REv3jnPp0SKIqi9l82cc3JZDSoM19aX7KdA9ohSeGtLo27pSF9bdm246iw1iMq2KLOwMn4fzf3xYL70/C7G3pLP7Y1eiyDa8196Y7la+v2nUKeOwPehsE94AixqKqt91TXpH3TECjRJyZYjVo/eKoS/9yUj0n/3IYvGqK6qWPTSgPSKzGqvdLMZPsjc270PD+idmSfV1T/YrvJpKvJHpfZrH3T65z5+WnfRM8re/P0e629kv/0qi+bqqfXe02vBEFR++7gQEdAndFpMtBx7M9xzKakd49AZkoMLD5GHCqubLZHQFEU9S/T91/ZDc/+OgUJ4f44XlKNv3y5261+OPfnpDUb6Jx2GVg5l60N7BLa4pfqVI29Kk6nyq0orqiFwdDyQMU5q7SjyWDpcHEl6mwKAs0m9Xo7MoIsPohqCEBoafna8ZJqnCq3wsdokFp21vh6OsdLqlFSVQdfkwG9Y+X3EzmlxIuT135s2Es1tEdkq+2kJ0UgOtgC50ua2Te6TQMLP18Tbuwf26Y9RxeDxMhA/Kp3FBQF+GhTy7M6tfV2dbBqNhmhKK1Hff94sBh/X7kXtfVty5S12xW8smofvt3T8tI6u13BqoaBzh9v7ouVU36FbX+6Hm8/MBjDejneD5sOa6cnEhERkT465rehC6BXwxd9x5f3c1+KDp6qQHGFY39OakIogiw+GJ7s2Evx5c+uoQTb80uw43gpzD5G3HVFAoIsPvj7HakwGIBPtuRj7Z7CFvtQXlOHvQ1LwdISHQOdwYmd1H06x85Wq3VbCyJwGtBFPKPjnM1JigiEv1kcH+xc6pV3pgqlVedmXhrvz2nrPo4kdfmaeKDjHNSlxIdIxRw3HqA5U+N6xwTD4tP2qGRnxHTT/SF1Nrs6IM5oYX+Ok8lowKiGUAJAftmaNxnbEErw6eb8FpMK9xSUobbejlB/X6R3DwfQ+vK1/7dsJ9749gCWbTvWpr79cLAYr67Zjyf+ua3Fvm0/VoJT5VYEW3yQ0fDHiU6BZlyfEqPOWv3UQvohERERnT8OdATiQ/0QYDah3q64XMDSuWQsrVsn9QvyueVrrhd9/KBhNmfUwHg17jm9ewQmNFzb5OnPd+BsZa2wD9vySqAojqSr6GDHxSkDzD7qfo+cRvt01CCCFvaCAOdmdPYVljdLgNvTkB4mWvrmFBrgi24NaWCNl6+dz/4cp0Rn8loLMzruHmtTziV3O0+UYnv++e3PcUoRREz/fKwUlbU2dArwRYrG9Yi0jL7Msb8m0GzC0J6tzwJ5q+HJ0YgL9cPZqjr8b794P1vj8A3nssRdLSSvFZXXqO+r5TsK2tQ35x8Iyq31WPmLuI1vfnH8EePa5GiYfVx/zaYmOPq6v6hCOoWRiIiI3MeBjoDBYGi0fO3cchhnCIBzCRng+GIWYDbh2NlqNRCguMKK5Q0zPA80XAzR6amsPugZHYRT5VY8+++dwj44LxTaNM73yoa/Xm9oWBrluKaM4wteazM6MSEWRAVbYFfObcZ3ahwt3RrnkrHGAx3n49uyP8fJneS1bfnuzV411T0yEIFmR3jAfxvCI/p3Ob+BTp/YEBgMQGGZ1SVV68cDji/oGT0i3F6CNqBLKObdOwgLxw/R/YKcHYnJaMANDRdKbWnW0zmLeVlCmFvXNMo9ci644IcDxS3+kUGk8Wfms1zxrNA3uxyDoBs0LvgaG+KHqGALbHal2WeQiIiI9MOBTgt6Rrnu01EURZ3RSU8KV+v5m03qUiPn8rVPNuej1mZHakJYs8QtP18T5tyZCpPRgOU/n8SKndrX4XFeKLTpQCeju+Ov/c59Oj/ll8KuOGahYkP9Wjwmg8GAVMHytXNBBK0PVAZ2Prex3+ncNXTaPtBxLl07LNiIbq234ZfjzkFdmFTbxkZ7eo6XOJb99Y93b7ZFJMjig27hjlmo3Y2up/PDQedAR25m5uaBcRjS6L11qRre8Hlas7tIjQNvSk0Z7NoJ/Rpexz0F5cI0M+cfDgDAZlfUwYiMxvvwvj9QjBMl1c3qHCiqwKFTlfA1GXBtn+bXT2rpM0hERET60S9/1gv1jHFNXjtUXIniCmvD/pwwl7qjUuPxn59OYPnPJ/HMyGR8tMGxbO2BK11nc5wGdgnDY9f0wBvfHsDsr/dgRN8Ylw3k9Ta7eo2QwYmuA51B3cLgazLgRGkN8s9US89wDOwShtW7i1wCCeptduwvdBynOzM6A5rM6FTV1iOv4do+bbmGjlNSVMszOrtOlKHWZkd4oBldw92/mKZTakIYNjZsAjcZDeoem/PRNy4ER05XYffJMlzdKxI1dTZsPVoCABjqxv4cau7K7uEINJtQVG7FLyfK1L1lTmcqa9UY8su6hCHQYoLFx4iqWhuOnq5E96jmARNbjjhe9+TYYOwpKMeXP5/EXVe4H5ddWl2nLmPtGxeC3SfLsGzbcWRf19OlnnMAdVWPSAT7+Wq2pfUZpI7JxwdouiWxpVQkLXrVrxVMUorqi1KLZPsjakfUH72eV0Sv8ykqb0tqlx5Ez6tHf0RtiF6rekHApagd2fqyr6HsOZB9zT3dHxG93st69Uf29RWVi9TUuF/ubtuc0WmBc0bHOQBwLlsb1LVTs6VFv+odiWA/HxSU1eBvX+/BidIahAeacfPAOGH7j17bA5FBZhw5XYV/bspzuW9PQTkqa20Itvigd7TrwCHA7KPutck5VNzqhUKb0gokOFxciVqbHYFmE7p0aj0xrV/DQCf/TDXOVtbiQFEFFAWIDDIjMsjiVj+0dAt3DHRKq+s0lxatbUi7GtytU5sCDxpHSfeKDtJliZhzsORcNrXlyFnU2uyIDfFDUsNSPJJj8TFhWC/HbMjq3c2Xr21vGNx3jwpEaIAvfExGdSay8cyaU1VtPXY2zMb86dcpABypeDLL15z7fzqH+WPC1Y59dku35DeLlXfuz7mhnzhQYiBndIiIiDyOA50W9FKvfVEBm73RsrXuzZcWWXxMyOrnuOjjO98fBgDcdUVCi1+kgyw+eHJELwDAq6v3o8J6bnjqvFDo5d06ae7xcCZ55Rw8LT3QcS47O1RcibKG6/nsbthf0yc22K09JaH+vkhsCCTYeaJUl/05gGMZYFzD8rtDTWZ17HYF/9rquPZI44QyGQMbzQz0O88gAqeUJslrzuvnXNUzos3pcwSM6OtIM1yjsU9nuxpIcW4W0xn1vetk88HD9vwS2OwK4kL9cFWPCKTEhcBmV1oMFGhKvcBs5xCM7B+LALMJR05XqZ9VACgsq1GX1F3fQnLewIY/VBwqrmzxmlFERETUdhzotCChkz/MJiOs9XYcP1utxgU3DiJo7NeNZm+MBuC+9NaXxdw9pCuSIgNxurIWb313SC137icY3E17OZqzD6t2FaK4wgpfk8HtL+4RQRb1Ojc7G/6ivKfhS3qyxFKuAeo1eUqxT6eBDgAkRmgvX9t05AyOl1Qj2OKD6zU2ebuja3gAQvwcc/EDOp//sjUA6NvwBftAUQWs9Tb80BAScZXk/hxydV1yNAwGYOfxMhSUus5bb1P354SpZedm1prP6DivRzU4MRwGg0GdaV2+Q3t/nBZnJHn/+FAEWnxw0wBHG0u3nAslcF475/KuYYgOEe+XCw80IyHc36VdIiIi0hcHOi3wMRnRvWHPyDe7ClBUboXZx4jLBLHGQ3tGolOAY03+8OQYdOnU+h4SX5MRf8jqAwB4+7tDKCpzfKHb2spAZ1DXTvA1GVDZEE+bEid3TRlnxO3PDV+ynDMyfSX21zgHCjuPl6rX++lzHvtznNTktSbX0vnXVscXypsHxrV5yZnBYMAtl8UjwGzCdQ3XPzpf8aF+CPHzQb1dwba8Euxo2HdxFffnnJfIIIv6WVvb6AKddruizug0/iyqM2saEdObG/bnOD9PNzcMUn48eBpn3Fy+5gwicAZa3JHWBYBjsFRV65iN/aZhoHNDSmyr7Q1siDvn9XSIiIg8gwOdVvRoiJj+aKNjD82grmHCL9m+JiMmXJ2EIIsPJg7vqVlHy439Y3F51zBU19kwd81+nCytxvGSapiMhmahB07+ZpPLlzzZqOWB6mxMCYBzF/uUmtHp7GyjVE1c02NGJ0njWjrVtTZ81XDtk9sHdTmv9l+4tT92PJ+FbhH67J8xGAzqsqlFPxyBXQGSIgMRH9b6XidqWaaavnZu+drBUxUot9bDz9fokhDofO8WlNW4DF5sDQNQ4FywR2JkoLp87Rs3lq9V1dbj4CnHXj1nwtuQxHB0DQ9ARcM1dcpq6pDTsGyxpf05Tuo+nXzO6BAREXkCU9da0athoOP80p2e1PJf6ScO74WJw3tJPYfBYMC0kX1x5z9y8MnmfMQ0XBy0b1wwAi3ilyijewQ2H3EmroVJPadzn85P+aUora5T45ZlZmT6NczoHG8Usds7pnnalSx16VqjGZ1vdhWgwlqPhHB/4SyXuwwGA0w6b53pGxeCDYfOYKWauMXZHD0MT47GSyv34vsDxaiutcHfbFKXrQ3sEgafRkmFQRYfdIsIwNGGBDznRVf3FJShwlqPIIuPS6LgzQPjsOtkGZbvOIm7h7S8zHT3yXLYFSAq2KIuSTMaDRgzqAteWb0PS7ccg8loRJ1NQY+oQPTQSH1rqukfG6hj8vV1P9FINpnI0+lhoucVJW3JJmTJ1tcr8UpEtp96pZzpVV/2ddFiNmuX65W0JyJ7LmXb1+s97un3pl7t65VWp9fvANl0PtmEyBCNv8HXubm9lTM6rXBeNNRJtD/nfA1JCkdm32jY7ApeXbMPADC4W8vXU2ncl8abst3hvFDm8ZJq9a/QncP8ESKIw9US4ueL7o1SxTqH+QvjdGUkqRcNrVITrZwhBLdd3sXtC3BeSM79Ic4ALueXbDo/ybHB6BzmD2u9HT80XIRVDd/QmO3sG9t8+Zpzf86gbp1gavTekVm+pgYRNLnu0u2DOqttvP/jEQDADf1aX7YGONIPDQbgRGkNTpVbW38AERERSeFApxW9GkU7m32M0jMnMp6+MRlGA+C83mHTC4U2NahbJ/SNC0FG9wh1Y7O7Gg9SPm3YTO3OhUKb6t8orlmP/TkAkBAeAIMBqLDWo7iiFkVlNfjf/lMAgNsv76zLc+gtpcmSP08NiC81BoOhUfqaY5/OtjzxLKZzCaEz6hsQB3skRgaiX7x76WtqEEFn18CPhPAAdfbOmb52g5tBGUEWH3Xmh7M6RERE+uNApxWJkQHqX4EvTxDvz9FDr5hg3Dk4Qf25tYGOn68JXz85DP985Mo2xRg79wis2+v4ApkcJz9QaRzXrMf+HMBxXPGhjoHbkdOV+GL7cdgVx/lIvEivS9MzOgg+De+TlLgQhAcK1geQtBEN+3TW7ilEhbVe3Q+mtS+tadS3oijY3HCB2KYX3gWgJqd91Ur6mjOIQCvZ0BlKAADRwRb1GlfucH5+fuL1dIiIiHTHgU4rLD4mdAt3bI5PvwB/pZ9yfW9EB1uQ1q2TxzezO+OhnTNIjfcvuKvxX7jbMiMk4ly+dri4Ep/nOpatOZcJXYz8fE3qX+e5P0df6UnhCDCbUFhmxT835sGuOJLuYjTim5tGfR8vqUZBWQ18jAbNtER3lq9Z623q4KpffPPPyI39YxHUsJfu+pQYqaWVqdynQ0RE5DEc6LhhVGo8Qvx8cEsbL1IpIybED9/94Tp8+n8ZHn+u1C6uf53u24YZnX7xIXBOJvXSIYjAKbEhee2rHSext7AcZpMRvx7g+fN/Pm69PB5BFp/zToUjV36+Jgzr5djzNH/9QQDAZYIlpPGhfgj190W9XcH+wgp1OVm/+BAEmJvvlnRn+dr+wgrU2RSE+vuiS6fmf3wIMPtgwtVJ8Pc14Z5WQg2aUpPXjpWq+9GIiIhIH0xdc8OU63tjyvW9L9jzeXJ5XGP94kPVPUFmH6OadiYj2M8XT93QBwWlNepGcD04+7Jur2NvTmZKNEIDzj/owJMev7YnHr/W/Vhxct+IvjFY+UuhOusiCt8wGAzoGxeMDYfOYNfJMnWmZHCiONjjpgFx+OVEGf69/bjmQOXc/pwQ4RLRtv6O6BsXAh+jAWcqa3HsbDUSwlu/9hZdXIzG5klEsslEeiU3iYiSj2TTwGSTsERkn1ev9j2driabVOXpBDSt55V9D8qmael1jkXti+j1mZCl12dX9nzKvl6y9UVkEyJF6WoiovolJe73pSnO6FzC/M0mdV9N75ggl6heGdnX9cQLo/vrmoaW1GQvzu2Xc5bkUnZdn2g0HmO0FAqSEueYJdl9skxNXLtCY3+O062XxcNkNGDDoTPqoKYx9UKhGvtzzpefr0ndG/cz9+kQERHpigOdS5xz6UyfGP1mY/TQOHQgPNCMa/pEtWNvqL1FNdrk72M0NEs/a8yZvLbh0Bnsbdhbk9ZCVHuXTgH49UDHXp0FDUvjGtvZEC3dr4XnPB+8ng4REZFncKBziXtoWHcM6xWJCVcntXdXXCR0CoBzguiW1Hj4tnG2ibxHZkPMdHJccIvLO517zXafLIOiAIkRAYgKtrTY9v/9qgcAx56wo40uVFtvs6tR1VpBBHpIVZPXSjzSPhER0aWK3x4vcb1jgrF4Qrr6V/CLhdnHiIFdwuBjNLhEbtOl6/4ru+HWy+Lxh6zkFuv1ig6Gr+ncOreW9uc4pcSH4JreUbArwFvfHVLLDxVXoqbOjkCzCUlt2MPmDueMzs7jZbDbXQMJ6mx27C0oR4VVpwXlRERElxCGEdBF6+0HBuNMZa1uFyKlji0swIxX77681XpmHyN6RAVhT4Fj2VpL+3Mae+zaHli/7xSW5h7D5MzeiAq2qHt2UuJDdN2D1liv6CD4+RpRYa3HoeIK9Gy4SPG2vLN4+vOfsa+wAgYD0CMqCAM7h2JAl1AM7BKKAZ3DYPbh36qIiIhEONChi1ZUsKXVJUdEWlLiQ9SBTkv7cxpLTwrHZQlh2J5fgkU/Hsbvs5JbvFCoXnxMRvSPD8WWo2fxU34p4sP88fI3+/DeD4ehKIDZZEStzY4DRRU4UFSBf21zXFdqQOdQ/Gfi0DZdLJj0Yza7n7omm6wkqi9bLiJKSpJNhpJNG5Ptjyy9UtTaK41NNjlLth2ZuqJkONn3mqeT8PTqj2xKmIjsZ0s2XU1E9jMq20/Z/uj1u9Cv+WXzUFfnZh/cq0ZE1HGkxDmWYnYK8EWPKPeWnBkMBjx6jWOvzgc5R1FeU9coWtpzAx3g3PK1z3KPIWvud3j3e8cg5/bLO2PjH0dgy7OZWPjgFZiS2Vvdq7TjeKnwIqdERETEGR0i8kIj+sZgzqp9uCOti9SMxw0pMegeFYhDpyrx8cY87Drh2SACp9QEx0Aq59BpAEDnMH/89bb+uLZPtFrnuuRoXJfs+Pnqv63FsbPVOHiqEhFBnPUkIiLSwhkdIvI6SZGB2PXnG/HHm/pKPc5oNODRhgS219ceQLm1HmYfI3pGB3mim6pBXTvBaAAMBmBcRjesnPIrl0FOU87+HDxV4dF+ERERdWSc0SEir9WW/Su3Xh6Pl1ftRWGZFQDQNzbY4/HmCeEB+PChdIT4+bq1TK5HVBDW7T2FA0Uc6BAREYlwRoeIqBGLj8nlulKeulBoU1f1iHR7L1CPKM7oEBERtYYzOkRETdwzpCveWHsAZTX1Ht+f0xbOgAUOdNqfvz9ganL9WlFykyixqKZGu1w23UtENpFKVF+UwCWb0qbXcemVoiZKpNIrLU2v+iKi+lqvl2zbotdcNp1Mtr7s88p+tkTtiF4TvVLdZOvLJOcB8qluer03RedH1B/R6yui1Y67CXCc0SEiaiLYzxezxwzEyP6xGJUa397daaZHwx6dY2erUVNna+feEBERXZw4o0NEpOGmAXG4aUBce3dDU0SgGWEBviipqsPh4kr0jbv4Zp2IiIjaG2d0iIg6GIPBoO7TYSABERGRNg50iIg6IO7TISIiahkHOkREHdC55LXKdu4JERHRxYl7dIiIOiB1oMOla+0qKKh56lpVlXZdd1OCnGSTqmSTnmSTpGSTqkTJSqLn1SulTXSeZZOk9ErCkiXbvsz5Eb0msudAr9dEr/ZlkwJF51j02ZV9XhGZhLyW6ovIfhYDAuTaEdEjRa2ldrT6WVfn3nNxRoeIqAPq2ZC8dqi4Ana70s69ISIiuvhwoENE1AF16eQPs8mImjo7jpdUt3d3iIiILjptGujMmzcPiYmJ8PPzQ3p6OjZt2tRi/blz56JPnz7w9/dHQkICpkyZghrRVZyIiKhVPiYjEiMd8/kMJCAiImpOeqDzySefYOrUqZg+fTq2bt2K1NRUZGVloaioSLP+xx9/jGeeeQbTp0/H7t278e677+KTTz7BH//4x/PuPBHRpYyBBERERGLSA505c+bg4Ycfxvjx45GSkoIFCxYgICAA7733nmb9H3/8EUOHDsW9996LxMRE3HDDDbjnnntanQUiIqKWOffpcEanue+++w6jRo1CfHw8DAYDvvjiC5f7FUXBc889h7i4OPj7+yMzMxP79+9vn84SEZFHSOUq1NbWIjc3F9OmTVPLjEYjMjMzkZOTo/mYq666Ch9++CE2bdqEIUOG4NChQ/jqq68wduxY4fNYrVZYrVb157KyMpluEhFdEpi8JlZZWYnU1FT89re/xe23397s/hdffBGvvfYa3n//fSQlJeFPf/oTsrKysGvXLvj5+bn9PKdPN09GEiUKyaaoieqL2pdNLRMlK8kmSYnqyyZtieh1vCKeTlfTK+1NVC5znkWpVrIpWLLvEdFuBdm0LtnEPtn3pux7Sq+EP9lERtl2ROWi10X2va/XeRb158wZ99toSupQiouLYbPZEBMT41IeExODPXv2aD7m3nvvRXFxMa6++mooioL6+no8+uijLS5dmzVrFmbMmCHTNSKiS865pWsc6DQ1cuRIjBw5UvM+RVEwd+5cPPvss7j11lsBAB988AFiYmLwxRdf4O67776QXSUiIg/xeOraunXrMHPmTLz55pvYunUr/vWvf2H58uV44YUXhI+ZNm0aSktL1Vt+fr6nu0lE1OF0jwoEABRX1KKkSnK64BJ2+PBhFBQUIDMzUy0LDQ1Fenq6cHWC1WpFWVmZy42IiC5uUjM6kZGRMJlMKCwsdCkvLCxEbGys5mP+9Kc/YezYsXjooYcAAAMGDEBlZSUeeeQR/L//9/9g1Jh/s1gssFgsMl0jIrrkBFp8EBfqh5OlNTh4qhJp3STXgVyiCgoKAEBzdYLzvqa40oCIqOORmtExm81IS0vDmjVr1DK73Y41a9YgIyND8zFVVVXNBjOmhstIKwovckdEdD4YSHBhcKUBEVHHI73VburUqRg3bhwGDx6MIUOGYO7cuaisrMT48eMBAA888AA6d+6MWbNmAQBGjRqFOXPm4PLLL0d6ejoOHDiAP/3pTxg1apQ64CEiorbpERWE/+0v5kBHgnMFQmFhIeLi4tTywsJCXHbZZZqP4UoDIqKOR3qgc9ddd+HUqVN47rnnUFBQgMsuuwwrVqxQlwDk5eW5zOA8++yzMBgMePbZZ3H8+HFERUVh1KhR+Otf/6rfURARXaJ6NOzTYfKa+5KSkhAbG4s1a9aoA5uysjJs3LgRjz32mFRbWqlCsolUsulkeqWWieiVDCWbACVLtn3Z8yabwKXXeRPR43XUK1VMr9dWlCwo6o9supenidLJ9Erak02l0yvJTzZ1Tfb9IGpfdLw2m3tlms/lXjVXEydOxMSJEzXvW7dunesT+Phg+vTpmD59elueioiIWsCLhmqrqKjAgQMH1J8PHz6M7du3Izw8HF27dsXkyZPxl7/8Bb169VLjpePj4zF69Oj26zQREelKp5R4IiJqDz0a9ujknamCtd4Giw+XBAPAli1bcN1116k/T506FQAwbtw4LFq0CH/4wx/UYJySkhJcffXVWLFihdQ1dIiI6OLGgQ4RUQcWHWxBsMUH5dZ65J2uQq+Y4Pbu0kXh2muvbTHwxmAw4M9//jP+/Oc/X8BeERHRheTx6+gQEZHnGAwGdGfyGhERUTMc6BARdXDOQIIDDCQgIiJScekaEVEHx0CCi4tsgpVeaV2yCUqy6XAXW+KVp59X9vUSnWe9UvX0SI2TTdOSfc31St/Si16fIdlzL5u6JptCptd7U9S+7POK2q+p0S4XEbWjtQrZ3UtxckaHiKiDOzfQ4YwOERGREwc6REQdXE/nHp2iihY34BMREV1KONAhIurgukUEwMdoQGWtDYVl1vbuDhER0UWBAx0iog7O12RE14gAAAwkICIicuJAh4jICzj36RwoKm/nnhAREV0cmLpGROQFkiIdEdPHzla3c08uLVopRLJpZnolQ8nW1yslrL1S12R5+rhEr7vs6yWbbCXTf9k+yib2yZ5L2XOsV9qbXp8hWZ5O2tOrfb3eD35+cvVFaW9a7bj7e5YzOkREXiA2xPEvwckyyTxPIiIiL8WBDhGRF4gPaxjolHBGh4iICOBAh4jIK8SG+gMACko5o0NERARwoENE5BXiQh0zOoXlVtjsvJYOERERBzpERF4gMsgCk9EAm11BcQWvpUNERMTUNSIiL2AyGhATbMGJ0hqcLK1BTIgg7oZ0VVvbPKFIlAYkmwClV7KVXklYF1u6ml790es8e5psP2USuzz9XpD9TMi2I1tf9jOn12uuVzqcp9+znk7DExEdl1bam+LmwgXO6BAReYnYhuVrBaUMJCAiIuJAh4jIS8SFOQIJTpQwkICIiIgDHSIiLxHXsFytgNfSISIi4kCHiMhbOJeunWTENBEREQc6RETeIk69lg736BARETF1jYjIS3BG58LTShXydILVxZZ+1tHJnk+9Uuxk09L0aEev5xQR1ZdJ02pL++1VLuLp86bX88q2r1danahc9H6o0fgnzd2+c0aHiMhLqBcNLauBnRcNJSKiSxwHOkREXiI62AKjAaizKSiu5EVDiYjo0saBDhGRl/AxGREd7LyWDpevERHRpY0DHSIiL8J9OkRERA4c6BAReRHnPh3O6BAR0aWOqWtERF6EMzoXltHYPIlIlBwkSgnSK2VLtr4s2XY6ejqcXmlsetGjfb3eIxfba9te5172fIp+N+iVhiebYieq7+cn97wieqWx2WzulWnhjA4RkReJUwc6vJYOERFd2jjQISLyIrENFw3ljA4REV3qONAhIvIi8dyjQ0REBIADHSIirxLbaKCjKLxoKBERXbo40CEi8iLRwX4wGIBamx1nKmvbuztERETthqlrRERexOxjRGSQBafKrThZWoOIIEt7d8mraaUEySYNdZTUNXLQK41NNnlKNrFLpp+yiYAdhac/E7KviYheqWueTtWTbV82fc5s1i7XSoGrq9Ou26wP7lUjIqKOIo4R00RERBzoEBF5m9gQ5z4dRkwTEdGliwMdIiIvEx/GiGkiIiIOdIiIvEwsI6aJiIg40CEi8jbco0NERMTUNSIir6Pu0SnjQMfTbLbmSUSyiUWixCsR2frtRY80sI7E00lVssloWuWefk0utve+7HHJ9l+2Hb3S2PQi+7p4OvFRlMZ2PpeE44wOEZGXiQt17NE5UVLNi4YSEdEliwMdIiIvExPquHaOtd6Okio3LzZARETkZTjQISLyMhYfEyKDHFde4z4dIiK6VHGgQ0TkhdTktTJeS4eIiC5NHOgQEXmh2BBeS4eIiC5tTF0j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U0JCAlauXIkpU6Zg4MCB6Ny5M5588kk8/fTT+h0FERERERFRIwZFcTe3oP2UlZUhNDQUpaWlCAkJae/uEBFdMvj7V5vzvISGlsJgcO+8yCYiieqLVn3r1b5s4pJeiVoiF1tiV0cmem1l08Nk64veO6L3pojse1b2MyEiqi96Xtn6os+0qFyUTibbH9lyvV53Uf9F/8RERDQvq6srw+rVrf/b1E6hkERERERERJ7DgQ4REREREXkdDnSIiIiIiMjrcKBDRERERERehwMdIiIiIiLyOtLx0kRERCRPr2Sri60dvcimnMkmbcnydPvtwdPnWPa9Jvue0qv/nv4M6ZXGplc7eqWuico9nQJ3PjijQ0REREREXocDHSIiIiIi8joc6BARERERkdfhQIeIiIiIiLwOBzpEREREROR1mLpGRETURnY7YDC4lskmVYmShjpKupdsYpSnj0v0vPX1nn3ejvJ6eZJe56Cjn0u9Ut1kz4OovqhcNi1Ntn3ZctFn1GZzv42mOKNDRERERERehwMdIiIiIiLyOhzoEBERERGR1+FAh4iIiIiIvA4HOkRERERE5HWYukZERHQR0iu5qb3qX2xk0+1E5bLnoSMniOl1DjxNr9Qy2QRBEdmERdn+ePo9JZuKptfvEk+8ry6ytyoREREREdH540CHiIiIiIi8Dgc6RERERETkdTjQISIiIiIir8OBDhEREREReR2mrhEREbWRjw9gMLiWySYlySYxieqLnlevpKfaWu1yvVLLZNvpyGlmbdERjtfT6Wey9WU/E3rVN5vl2hHVF5XLfib06k/T33VONpt2uSilTVTu769dHh7evKyuTrtuU5zRISIiIiIir8OBDhEREREReR0OdIiIiIiIyOtwoENERERERF6HYQRERERtZDI135AsuyFbtPFXxNMbqfUi2nCsV+iAXpvzZfsp245e4Qt6bfTX4zll32uyQRyygRiygRuiz5zsccmW6/W8en0mRO3r9V6W7b/JpF1eU9O8jGEERERERER0yeJAh4iIiIiIvA4HOkRERERE5HU40CEiIiIiIq/DgQ4REXmV+fPnY+DAgQgJCUFISAgyMjLw9ddfq/fX1NQgOzsbERERCAoKwpgxY1BYWNiOPSYiIk9g6hoREXmVLl26YPbs2ejVqxcURcH777+PW2+9Fdu2bUO/fv0wZcoULF++HEuX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cdF5ELWv9b519/ej1EsUGRkJk8mEwsJCl/LCwkLExsa2+Ni///3vmD17NlavXo2BAwe2WNdiscAim1FIRERERETUQGrsajabkZaW5hIk4AwWyMjIED7uxRdfxAsvvIAVK1Zg8ODBbe8tERERERGRG6SXrk2dOhXjxo3D4MGDMWTIEMydOxeVlZUYP348AOCBBx5A586dMWvWLADA3/72Nzz33HP4+OOPkZiYqO7lCQoKQlBQkI6HQkRERERE5CA90Lnrrrtw6tQpPPfccygoKMBll12GFStWqAEFeXl5MDZaZDd//nzU1tbijjvucGln+vTpeP7558+v90RERERERBqkr6MDABMnTsTRo0dhtVqxceNGpKenq/etW7cOixYtUn8+cuQIFEVpduMgh4iIPOH555+HwWBwuSUnJ6v319TUIDs7GxEREQgKCsKYMWOa7T0lIqKO74KmrhEREV0I/fr1w+rVq9WffRrF/EyZMgXLly/H0qVLERoaiokTJ+L222/HDz/8IP08FkvzdC5RClZlpXa5KLFINmVLj1QuQD55SlRflFomyhoSJUOJEppEqXGiJK+KCu3ysDDtchHZZKuQEO1yUaKZ6HgDA7XLRedZ6/yI6opeQ1FqmajvonMjSvESEb22onJRf0REn0XRuReVy6aTiT6LIrLnTVRf9nUR1ZdNjRMRvY6i8xYQ0LzMI6lrREREHYGPj49mGmhpaSneffddfPzxxxg+fDgAYOHChejbty82bNiAK6+88kJ3lYiIPKRNS9eIiIguZvv370d8fDy6d++O++67D3l5eQCA3Nxc1NXVuVy0Ojk5GV27dkVOTo6wPavVirKyMpcbERFd3DjQISIir5Keno5FixZhxYoVmD9/Pg4fPoxhw4ahvLwcBQUFMJvNCGuyXikmJkZNBdUya9YshIaGqjdexJqI6OLHpWtERORVRo4cqf7/wIEDkZ6ejm7duuHTTz+Fv79/m9qcNm0apk6dqv5cVlbGwQ4R0UWOMzpEROTVwsLC0Lt3bxw4cACxsbGora1FSUmJS53CwkLNPT1OFosFISEhLjciIrq4cUaHiIi8WkVFBQ4ePIixY8ciLS0Nvr6+WLNmDcaMGQMA2Lt3L/Ly8pCRkaHT88nVF6UHySYciZKMRGlgogQoUble6WeyqXGiZChRgpheRP0XJUOJkr9kk85Exysq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\n" + }, + "metadata": {} + } + ] }, { "cell_type": "code",