{ "cells": [ { "cell_type": "markdown", "id": "f52c2ae2-396b-478f-9d30-ada581f2b7c3", "metadata": {}, "source": [ "# Representation theory in SageMath\n", "Guest lecture in the Representation theory course at UmeƄ University 2023-12-19 \n", "Henrik Gustafsson" ] }, { "cell_type": "markdown", "id": "6b31b192-4b9b-468d-a8c1-7c6f62140d22", "metadata": {}, "source": [ "## Introduction" ] }, { "cell_type": "markdown", "id": "3904b8db-2750-4418-8302-cb84ea2aa35c", "metadata": {}, "source": [ "This presentation is done in JupyterLab with computations done in a SageMath kernel. \n", "\n", "A goal of this guest lecure is to show some parts of what SageMath is capable of when it comes to group theory and representation theory in connection to this course you are taking.\n", "\n", "Another goal is to show how studying special functions in representation theory leads to algebraic combinatorics and to tell you how this is related to my research" ] }, { "cell_type": "markdown", "id": "08c98db9-d8be-4e69-9db1-f941de3f1ef0", "metadata": {}, "source": [ "## Finite groups" ] }, { "cell_type": "code", "execution_count": 1, "id": "3f3538c9-de28-4e57-9f7c-eb622c224fa2", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Dihedral group of order 8 as a permutation group" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "D4 = DihedralGroup(4)\n", "D4" ] }, { "cell_type": "code", "execution_count": 2, "id": "2ee31d2a-0e39-4efc-b5a0-1b624b0cade6", "metadata": {}, "outputs": [], "source": [ "a, b = D4.gens()" ] }, { "cell_type": "code", "execution_count": 3, "id": "5691694e-5b1f-41bf-94e7-fba384abcfff", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a^4 == b^2 == D4.identity()" ] }, { "cell_type": "code", "execution_count": 4, "id": "c4f6ed0c-5745-4aa1-bb13-d5c770b4a384", "metadata": {}, "outputs": [], "source": [ "C4 = D4.subgroup(a)" ] }, { "cell_type": "code", "execution_count": 5, "id": "45d22026-ca75-41ea-b195-f71def636062", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[ 1 1 1 1 1]\n", "[ 1 -1 -1 1 1]\n", "[ 1 -1 1 -1 1]\n", "[ 1 1 -1 -1 1]\n", "[ 2 0 0 0 -2]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "D4.character_table()" ] }, { "cell_type": "code", "execution_count": 6, "id": "f6c24ccd-4c92-4515-9ada-2a39bb9b16bf", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[(), (2,4), (1,2)(3,4), (1,2,3,4), (1,3)(2,4)]" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# columns correspond to the following conjugacy classes and \n", "# rows correspond to different characters\n", "D4.conjugacy_classes_representatives()" ] }, { "cell_type": "code", "execution_count": 7, "id": "9c1050d0-7e5e-4157-acf5-333fc87e58b5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "CT1\n", "\n", " 2 3 2 2 2 3\n", "\n", " 1a 2a 2b 4a 2c\n", " 2P 1a 1a 1a 2c 1a\n", " 3P 1a 2a 2b 4a 2c\n", "\n", "X.1 1 1 1 1 1\n", "X.2 1 -1 -1 1 1\n", "X.3 1 -1 1 -1 1\n", "X.4 1 1 -1 -1 1\n", "X.5 2 . . . -2" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gap(D4).CharacterTable().Display()\n", "\n", "# Class name (order and distinguishing letter)\n", "# 2nd power\n", "# 3rd power" ] }, { "cell_type": "code", "execution_count": 8, "id": "ff84faa8-0b8f-4044-a18d-719a4bb42819", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[ 1 1 1 1]\n", "[ 1 -1 1 -1]\n", "[ 1 -zeta4 -1 zeta4]\n", "[ 1 zeta4 -1 -zeta4]" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "C4.character_table()" ] }, { "cell_type": "code", "execution_count": 9, "id": "afaa7785-1715-4962-a261-d146b10ebf9c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1/90*pi^4" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "zeta(4)" ] }, { "cell_type": "code", "execution_count": 10, "id": "0edf8ffc-c398-42a8-a31c-19440420e334", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[ 1 1 1 1]\n", "[ 1 -1 1 -1]\n", "[ 1 zeta4 -1 -zeta4]\n", "[ 1 -zeta4 -1 zeta4]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "CyclicPermutationGroup(4).character_table()" ] }, { "cell_type": "markdown", "id": "3d7d5945-b1e0-4cef-96e8-94c5dde4e3b3", "metadata": {}, "source": [ "## Lie algebras" ] }, { "cell_type": "code", "execution_count": 11, "id": "6b6b687a-dd27-4a28-a83c-5d1889ac1eca", "metadata": {}, "outputs": [], "source": [ "# SL(2, Q)\n", "sl2 = lie_algebras.sl(QQ, 2, representation = \"matrix\")" ] }, { "cell_type": "code", "execution_count": 12, "id": "118eaa6d-5cd7-44d5-b3af-1a16f8c485b5", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\verb|X|\\verb| |\\verb|=| \\left(\\begin{array}{rr}\n", "0 & 1 \\\\\n", "0 & 0\n", "\\end{array}\\right)\\)" ], "text/latex": [ "$\\displaystyle \\verb|X|\\verb| |\\verb|=| \\left(\\begin{array}{rr}\n", "0 & 1 \\\\\n", "0 & 0\n", "\\end{array}\\right)$" ], "text/plain": [ "'X = ' [0 1]\n", "[0 0]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\\(\\displaystyle \\verb|Y|\\verb| |\\verb|=| \\left(\\begin{array}{rr}\n", "0 & 0 \\\\\n", "1 & 0\n", "\\end{array}\\right)\\)" ], "text/latex": [ "$\\displaystyle \\verb|Y|\\verb| |\\verb|=| \\left(\\begin{array}{rr}\n", "0 & 0 \\\\\n", "1 & 0\n", "\\end{array}\\right)$" ], "text/plain": [ "'Y = ' [0 0]\n", "[1 0]" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\\(\\displaystyle \\verb|H|\\verb| |\\verb|=| \\left(\\begin{array}{rr}\n", "1 & 0 \\\\\n", "0 & -1\n", "\\end{array}\\right)\\)" ], "text/latex": [ "$\\displaystyle \\verb|H|\\verb| |\\verb|=| \\left(\\begin{array}{rr}\n", "1 & 0 \\\\\n", "0 & -1\n", "\\end{array}\\right)$" ], "text/plain": [ "'H = ' [ 1 0]\n", "[ 0 -1]" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X, Y, H = sl2.gens()\n", "show(\"X = \", X)\n", "show(\"Y = \", Y)\n", "show(\"H = \", H)" ] }, { "cell_type": "code", "execution_count": 13, "id": "c9a944a4-35f1-416a-98a7-af0d291d222e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "H.bracket(X) == 2 * X and ...\n", "H.bracket(Y) == -2 * Y and ...\n", "X.bracket(Y) == H" ] }, { "cell_type": "code", "execution_count": 14, "id": "a49cfd56-7e17-4c37-9f8d-fc425acc8a4f", "metadata": {}, "outputs": [], "source": [ "B = sl2.killing_form" ] }, { "cell_type": "code", "execution_count": 15, "id": "39127919-82fa-4815-b1d0-f0126f9a0c59", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "4" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B(X, Y)" ] }, { "cell_type": "code", "execution_count": 16, "id": "4405a041-3280-48e4-9119-2fd0fcbc7b1d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B(X, H)" ] }, { "cell_type": "code", "execution_count": null, "id": "569ff271-ab98-4069-ae8c-64f609827723", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "8828fd52-4bc4-4f61-93b0-9fb996b4af56", "metadata": {}, "source": [ "## Cartan types and root systems " ] }, { "cell_type": "markdown", "id": "b226142c-2c4a-40ff-ac4e-037a703314d5", "metadata": {}, "source": [ "$ A_n: \\mathfrak{sl}_{n+1} \\mathbb{C} $ \n", "$ B_n: \\mathfrak{so}_{2n+1} \\mathbb{C} $ \n", "$ C_n: \\mathfrak{sp}_{2n} \\mathbb{C} $ \n", "$ D_n: \\mathfrak{so}_{2n} \\mathbb{C} $" ] }, { "cell_type": "code", "execution_count": 17, "id": "f806a2c3-6497-4490-abe6-b3acdde6dac5", "metadata": { "jupyter": { "source_hidden": true } }, "outputs": [], "source": [ "def plot_roots(CT):\n", " print(DynkinDiagram(CT))\n", " return RootSystem(CT).ambient_space().plot(roots = \"all\", \n", " fundamental_weights=False, \n", " coroots = False,\n", " alcoves=True,\n", " reflection_hyperplanes = False)" ] }, { "cell_type": "code", "execution_count": 18, "id": "3a10d35b-d2ea-4c73-889e-6f128b7bd10b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "O O\n", "1 2 \n", "D2\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "Graphics object consisting of 13 graphics primitives" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot_roots(\"D2\") # so4 ~= sl2 + sl2" ] }, { "cell_type": "code", "execution_count": 19, "id": "495989bb-6b6f-450f-bb72-b136eccc90e3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "O=>=O\n", "1 2 \n", "B2\n" ] }, { "data": { "image/png": "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q1evtuZGeMjChe3cH4cPa52kKy++WGlpafr444/11ltvqby8XP3799eYMWOUkZGhVatW6aGHHnJ8/nZfFLjwIinRz6EePXpU8+bN0+WXX645jd6neOqpp/Tiiy9q9erVzW7b+eefr/Xr10uS3nzzTU2ePFmSVFdXp8cee0yPPPKI0tPTtXnzZt14443asmWLzj33XAtvJbyGqCIpgwYN0s6dOxM+33XXSTU1x/XAA2W64IIcdejQfAf0tLQ0GWP07LPPqqCgwIpxPe348eMqKytTTk4794ekgh/8QJJ0+umna//+/Tpw4ID69+8vScrIyNChQ4ecHL1Buy8KLHiRNHv2bG3YsKHZ4ZWVlTp06JCys7MbDjt4UCovl/r166h77nleUpd2L3/GjBnKysrSn/70p4b3VSXp8ccfV1ZWlq6++upm5+nZs6e++uorlZSUaPjw4Q23bdeuXdq2bZsOHjyofv36afTo0erdu7eeeeYZ3X///XHdXvgTH6mB46ZNOyLJ6L33BrX4cZtIJCJJmj9/vtLTg/+678iRIzLGaNCgQS0e33B/SA33R9++fVVeXt7wvt+xY8e0c+dOXXHFFY7M3Fj0RcHIkSPbfZE0ZcqUpK/nN7/5jcrKypp9PfHEExo/fnzD9z/+cZnKy8s0Z85f9MEHL6lLl/aD+tBDD6m6ulpr165V9+7dY27bu+++q8svv7zN2/bcc8/FfK61e/fuOnDggMrLyxsO69Wrlw4fPpz07Yc/BP8nFjwnIyNDffv21dln1zTbeam6ulplZWWSFPOeVpBF74+amppmx8XcH21cxooVKzRkyBBNmjTJniHbEPeLAgdeJCXzqwdXrFihv/3tb3riiScawrljxw6dPHlS3/rWt2SMaXXv5ehtmzNnTsxt69Onjz755JOG748dO6Zdu3bF/Xla+BcrVTguEolowYIF2rdvrXJzv9LcudIDD9TqhRde0L333qspU6YoLS1Nu3bt0qpVq/T666+7PbKtovfH2rVr9dVXX0mSamtbuD8krSopaXZ/7N+/X8uXL1dRUVGLqym7xf2iwOYXSckEdcOGDfr000/1+9//Pua+Ky0tVXp6unr37q0+ffq0etveffddSfVbDtryxz/+Ueeee65ycnISuEXwI1aqcMXkyZOVlZWlNWtm64oremjevHRNnjxKBQVLJEmrVq3So48+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\n", "text/plain": [ "Graphics object consisting of 25 graphics primitives" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot_roots(\"B2\") # so5" ] }, { "cell_type": "code", "execution_count": 20, "id": "a7f2ef01-793e-48d3-b2ec-bd53a2a755c9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "O---O\n", "1 2 \n", "A2\n" ] }, { "data": { "image/png": "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6tXZsWOHx/KIZDQVVfELR48e5cMPP6REiRIsWLAgeXvFihXZsGEDw4cPJ1euXB7PNXw4bN9uRrd4qGF8dZZlQmzdahZv9bDbbruNESNGsGHDBir+q+vzvHnzKFGiBE2bNk1erEDEl6moik+7cOECgwcPplChQgwYMCB5SbY77riDyZMn8/333/PAAw84ku3IETNj4OuvQ6lSjkS4XOnSJky7dqZHsAMeeOABvv/+eyZPnswd//TYunDhAjExMRQqVIihQ4cmv4civkhFVXzW4sWLeeCBB3jvvfc4fPgwYFZY6dixIz///DN16tTx2HXTq+nYERISoGtXxyJcqVs3OHfOhHOIZVnUqVOHHTt20LFjx+SVfg4fPkzjxo158MEHWbJkiWP5RNJDRVV8zq+//sr//vc/nnzySbZt25a8vV69esTGxtK+fft0LcnmDj/9BIMGmQnzc+d2NMrlcuc2oQYONCEdlDlzZtq3b09sbCz16tVL3r5lyxaeeOIJXnjhBX777TcHE4qknoqq+IwTJ07Qpk0bihYtyjfffJO8vXTp0qxcuZKJEydy++23O5jQsG3TH6hAATP1rte5GO6jj0xYh91+++1MnDiRFStWUOpf58m//vprihYtStu2bTl58qSDCUVSTkVVvF5SUhJjx44lMjKS7t27J49xvO222xgzZgxr1qzh4YcfdjjlJbNmwcKFZrKHsDCn01xFWJiZDGLBApg92+k0ySpUqMDatWsZPXo0t912GwDnzp2jW7duREZGMm7cOC0xJ15PRVW82g8//EC5cuVo0KABBw4cAMwwjZYtWxIXF0eDBg3ctiSbO5w7B82aQZUqULOm02muo1YtqFzZhPWiiRiCgoJ4/fXXiYuLo2XLlsnDn/bv389rr71G+fLlWbNmjcMpRa7Nez6NRP5l37591K9fn/Lly7Nu3brk7c899xw//fQTPXr0SJ5QwJt89hn89htERzs8hOZGLMuE/PVXE9rLZMuWjR49erB9+3aeffbZ5O1r166lXLlyvPrqq+zbt8/BhCJXp6IqXuXMmTN06dKFyMhIJvxrybJixYqxcOFCvvnmG+6++24HE17bn39Cp07QuDEUK+Z0mhQoXhzeeceE/mdhdm9zzz33MH36dBYuXEixf72o48ePp3DhwnTr1o2zZ886mFDkciqq4hVs22bq1KkULVqUdu3a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aNgQ/jW0MfA8+CC8+Sa0b29eFD+1bt06xowZk6bbvvnmm5z2oRV+JGOoqApt27bl119/TdNtbdvmww8/xPaBxa3TIioKEhOhSxenk3iBLl3M6d+rTADiDy7uy2m1c+fOgDhzI9enohrgZsyYQUxMTLruY9WqVSxbtsxNibzH1q0wZIhpnOXK5XQaL3DbbebFGDIEtm1zOo3bff/996xevTpd99G/f39mzJjhpkTii4KdDiCetWTJEmbPno1lWSQkJDB+/Hi33G8mP+sSa9umX87dd0OTJk6n8SIffADDh5sXZ+FCv7rInDlzZrfcT6NGjXj22Wdv+Hf/PRabNm1KgQIF3JJBnKOiGiDOnDnDa6+9hmVZjB49mixZsrB8+XIGDhx41b8PCgoiW7Zs3Hzzzdx0003cdNNNyf/+78/SpUtTsmRJzz6hDDZjBixeDLNmQWio02m8SGgo9OsHNWuaMUYpKB6+omzZsvz444+sX7+ev//+m2PHjl3157//fbXLHjfffPN1H+dax+JDDz3E6tWrKViwIEeOHGHGjBm8/vrrGfRsJaNYtr9eDJPL1KxZk127drF+/XrCwsKSt1eoUAHbtuncuTPLli2jaNGiVK9enYiICM6ePUuzZs2oV68ejz76qIPpPevcObj3XoiMhDlznG+MjRw5kkaNGgFmsoHUjCXOELYN1arBL7/A9u3wr/0pkCQlJXHy5MnkInvw4EH27t3Lyy+/fNkx9l/XOhYrVqxIgQIFGD9+PCNGjODuu+/miSeeYPfu3QwdOpRz586xZcsWWrduzZNPPumJpyhp4eBsTuIhY8aMsQF71qxZV/yucePGdq5cuWzbtu369esnT4I/aNAgu0WLFvYtt9xiL1myxJNxHdejh227XLb9009OJzEcnabwWrZvNy9Sz55OJ/EpqT0WExMT7caNG9sJCQm2bdv2d999Z4eHh9s7duzwaG5JOZ3+9QG//vorTz/9NElJSSm+zYABA6hevXryv/PkyUO1atWu+LscOXJw6NAhZsyYwaOPPorL5QLg3XffBeCrr75ywzPwHfv3m06u778PqZitLvDcey+89x507gyvvgq5czudyCM8fSzGxsayZs0aDhw4QP78+XnyySfJmTMn48ePp2vXrm57XuI+Kqo+oGDBgsTFxaXptmfPnmXTpk3Url2boKss/ulyubBtm8mT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\n", "text/plain": [ "Graphics object consisting of 19 graphics primitives" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot_roots(\"A2\") # sl3" ] }, { "cell_type": "code", "execution_count": 21, "id": "2a389020-1258-4682-81d3-fa80d2bc1390", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " 3\n", "O=<=O\n", "1 2 \n", "G2\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfgAAAHWCAYAAACbjps5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAACgQElEQVR4nOzdd3xN9x/H8dfNIISYsZWG2NSsTVvV1qjR2qu01VIrSGRYiRixQhKxK0ZRRY1aP6Nq71HESCQoiiKIILK+vz8OFw2VfW6Sz/PxyOPnnNxzz/v2l3s/93vOdxiUUgohhBBCZChmegcQQgghRMqTAi+EEEJkQFLghRBCiAxICrwQQgiRAUmBF0IIITIgKfBCCCFEBiQFXgghhMiApMALIYQQGZAUeCGEECIDkgIvhBBCZEBS4IUQQogMSAq8EEIIkQFJgRdCCCEyICnwQgghRAYkBV4IIYTIgKTACyGEEBmQFHhh9PffeicQQqSmBw8gIkLvFCKtGJRSSu8QQn/z58OQIRAcDAUL6p1GpInHj4k5cwZVtixkz653GpEGBg40Y9cuM06fNmBurncakdqkwAsAwsLA3h7attWKvcgEjh+HGjWI2LWLuKpV9U4jUllgoBkNGlgzebKBIUP0TiPSglyiFwDkzQtjxsCCBdrnvhAi41AKXF2tKF0a+vfXO41IK1LghdH330OFCjBokPaBIITIGDZutGDXLgumTTOQJYveaURakQIvjCwswMcH9u6FX37RO40QIiVERsKIEVY0a6Zo3lzvNCItSYEXr2jSBFq3BicnePxY7zRCiOSaOTMLV68a8PY26B1FpDEp8CKeKVPg1i2YPFnvJEKI5Lh508CUKVnp399AuXJ6pxFpTQq8iKd0aRg8GCZOhKtX9U4jhEiqMWOyki0bjBqldxKhBynw4rWGD4dcucDZWe8kQoikOHbMjKVLszB2rIE8efROI/QgBV68Vs6cMGECLF+udboTQqQfSoGzczaqVFF8+63eaYRepMCLN+rRA2rW1IbNxcXpnUYIkVArV1pw5Ig5Pj4yY11mZqF3AJFwJ0+eZObMmVhaWhITE8Ply5f59ttvad++faqcz8xMGzZXvz4sXAhff50qpxHCpJ06dYr58+cb33d//fUXPXr0oG3btnpHe61Hj2D0aCu+/FLxwQf/3XM+MDCQcePG8eDBA65du0axYsVwcXGhYcOGaZRWpCYp8OnE6dOnGTlyJCtWrCD7s3nDf/rpJzp06MD48eNxdXVNlfPWqwdduoCbG7RrBzY2bz8mOjoaS0vLVMkjRFp6XgADAgKM77sVK1bQs2dPQkNDGTp0qM4JX3j+vps+PSt37xqYPPntxd3BwYHly5eTP39+YmJi6N+/P40bN2bBggX07NkzbYKLVCOX6NOJgIAANmzYwNy5c437WrduDYCXl1eqnnviRHj4EMaNe/tj9+3bR79+/VI1jxBpZenSpWzZsoWFCxca9zV/NlvM9OnT9Qn1GgcPHmTo0KFcuWLA1zcLjo4G3n33v49xc3NjxowZ5M+fHwALCwumTZtGnjx5GDBgAPfv30/94CJVSYFPJ6pXr06OHDnI81J32PDwcABjyyK1FCsGLi4wbZq22tx/iY6OJioqKlXzCJFW3nvvPXLkyEHu3LmN+x4+fAhAtmzZdEoVX3R0NNHR0YwebUXevNr79W1+//13mjZtyj///GPcly1bNho2bEhERAT79+9PxcQiLcgl+nSiW7dudOvW7ZV9R44cAXjjpbSdO3eyceNGDAYD0dHRODg4ULJkySSd39FRW2XO0RHWrUvSUyRISmYWIrk6duxIx44dX9l3/NlqTF26dHntMbt37+Z///sfBoOBmJgY+vbtS4kSJVI9661bBnbssGTxYsiR4+2PL1myJEFBQTx69OiV/VmzZgXg8RumspT3aPohBT6dCg8PZ8yYMXz55Ze4u7u/8rsnT57w1VdfYTAYWLBgAdbW1uzZs4fatWtz4MAB7OzsCAsLY926dfTq1StB58uWTZvZrmNH2LYNmjZN2deTGpmFSGnh4eFMnDiRVq1axev38uTJE/r06YPBYMDf3x9ra2v2799PkyZN2LZtG++++y5hYWFs2rQp3pf15IqLg2PHzKldW9G1a8KmpD148CAPHz6kUKFCr+w/duwYZmZm1KlT55X98h5Nf+QSfTqzdetWHBwcaNKkCaVLl2bhwoXGb9zPdejQgXPnzrF48WKsra0BaNiwIWXKlGH06NEArF69+pVWxePHj+nTpw+7d+9+47nbt4eGDcHBAWJiUvZ1JSXzlStXcHV1ZciQIXz88cfs2LEjZUMJ8cyOHTtwcXGhVatW2NnZMWvWrHjvu549exIUFMScOXOMf8P16tWjdOnSTJgwAYD169dTvHhx4zGPHz/GwcGBffv2JSvf1q0W3L9vwMfHgFkCP9Wtra3jFffffvuNkJAQHB0dKVas2Cu/S+x7VN6f+pMWfDrzySef8MknnwDg6OhIqVKlWLlyJY0aNQJg4cKFbNiwgQ0bNsT7AKpcuTKrV68GYM+ePXz9bNzbzJkzuXz5MitXrqRTp05vPLfBoA2bq1EDZs9OuXWlk5I5Li6OiRMn4uvri4WFBTt27KBly5acOHGCcjLptkhhTZo0oUmTJgAMHz6cqlWrsmjRIurXrw+86Iz3yy+/xPsbrlChAuvXrwfgwIEDdO/eHYB58+bx119/sXbtWr788sskZ7t/HxYvzkKpUlC7dpKfhsePH+Ps7EyDBg3w9PR85XeJfY/K+9M0SIFPx9zd3Zk5cyatWrUiKCiIAgUK4OvrS+HChWnWrFm8x+fLl4/bt2+zbt06GjVqhPmzGTB++OEHAH5JwBqx1arBt9+Ck5Mbc+ZsijeJRkREBGFhYVStWjXesVZWVuzcuTNe56SkZA4ODubQoUPcvHmTYsWK0aRJE2xtbVmyZAnjEtLdX4gkcnV15ccff6Rz584cO3YMW1tbZs+eTaFChWj6mntXefPm5c6dO2zcuJF69eoZ/4Z79+4NwNq1axN8bg8PD7Zt2/bKvhs3DDx8+Agzs8S97/6tb9++FClShLVr15LlX4vGJ/Y9euHCBXl/mgAp8OnE+fPniYqKokqVKsZ9OXLkoFy5cpw4cYLVq1fTq1cvTp48Sfv27TF7zXU6c3NzlFKsWLGCxYsXJznL2LGwYsV4Gjcez4wZr/7ujz/+YOHCha8MK/ovkZGRScqcM2dOrl+/zo0bN4yXEm1tbQkLC0vy6xLi34KCgoiKiqJSpUrGfTly5MDe3p5Tp06xbt06unXrxunTp2nTps1//g3/+uuvzJkzJ1l5Ro8ebbwcDhAcbEadOtZ8/fUuYmIS/r77t1GjRhEVFcWmTZviFfekvEfl/Wka5B58OhAeHk61atWoXr06ISEhr/zu+RsuKiqK8PBwlFLY2dm99nkMBq3zzdixY7GwSPp3uwIFtNWpZs2CM2eS/DQASc5cpEgRbt68Sa1atQCtA1BQUJDxkqkQyRUeHk7Dhg1p1KgRoaGhr/zu+fsuOjqahw8fopR6Y0/y53/DI0aMSNb77nXc3KwoVgw6dEj6c8ydO5dbt26xdOlSY3E/efIkR48eBZL2HpX3p2mQAp8OZM2aldjYWN59991XxsFHRUVx8eJFDAYDH3/8Mba2thQpUoTo6Oh4zxEVFcXJkycBKFq0aLIzDRgApUppHe6USvrzpFTmgIAAypcv/8ahS0Ik1vP3XYkSJV4ZBx8VFcWlS5cwGAx88MEH5M+fn8KFC7/xb/j06dOAVvRS0rZtFmzdasHUqQb+1ehOsPXr1xs7Br7cOt+2bZuxWKfEe1Ten/qQAp8OZM2alREjRvD999+/8kEzZ84cHjx4wOjRo6lYsSIGgwEvLy9WrVrFnTt3AIiNjWXz5s0MGDCAnj17Ym5uTkhICEuWLElWz90sWbSJb3bsgGf9h5IkJTJfv36dBQsWsHbt2tdeQhQiKbJmzYqTkxO9evV65X0XEBDAgwcPcHFxoXz58hgMBtzd3Vm/fj13794FtL/hbdu24eTkRJcuXTA3N+fSpUv8/PPPHDx4MNnZoqPB1dWKDz9UJHVK/AMHDtC7d29u3rxpnGejW7dudO3alRkzZhg7wyX3PSrvT/3IPfh0YtSoUaxcuZIePXpgZmZGWFgYT548Yd26dbRq1cr4uO7du1OoUCHc3NywsbHBwsKCxo0bG+/9LVmyhMmTJ1OrVq1kXy5r3hw++wyGDNH+91+daxMsOZmfPn2Kg4MDq1atSvEWkhDOzs6sWbOG77//HjMzM+7du8eTJ09Yvny5ccpagE6dOlGgQAE8PDzImTMnFhYWNGjQAB8fH0C7DO7r60u1atXijS9PinnzshASYmDVKgOGhA17j+fzzz/n7t27LF26NN7vSpUqhZWVlXE7qe9ReX/qy6BUci6wioykZMmSLFy4kA8++CDBx5w7B5Ura/PUOzsnvpNdcrm4uNCzZ09ja2Px4sX06NEjTc6d7h0/DjVqELFrF3Gv6X0t0kblypWZOXNmgldwu3PHQPXqOejc2cCsWdq+tH7fJZS8P/UlLXiRLOXLa+Phx47V1o+vVq0aNglZci4FzJw5kxw5cnD58mUuX77Mo0ePjPPzC5FRjR2bFYMBxox5sS8t33cJJe9P/UkLXjB//ny2bt3K6tWrqVKlCg0bNsTLyyvBi9jcuwf29tCqFSxYkMphn7lw4QKVK1eO1/Fn48aNr1w6Ff9BWvC6WrRoEb///jvr16+nYsWK1KtXD3d39/98350+bUajRtZ4exsYNCgNwyaSvD9NgxR4kSJmz4a+feHwYXg2MkaYOinw6YpS8Pnn2bl925xTpwxYWuqdSJg66dIoUkTv3lClCgwalLxhc0KI11u/3oI9eyyYPl2Ku0gYKfAiRZibw/TpcOAA/PRTrN5xhMhQHj2KY8SILLRoofj0U73TiPRCCrxIMR9+CCVKfEuPHhYUL/5OvFn3hBCJExsbi5OTE0WK5OWvv/IyZkyE3pFEOiIFXqSohw+1WW+uXbtKxYoV8fX1JS4uTudUQqQ/58+fp2nTpsydOxdQwENu3Hjzcs5C/JsUeJGi3nnnxXSVT58+ZdCgQTRu3Jjg4GAdUwmRfsTExDB16lQaNmzIsWPHXvnd87XWhUgIKfAiRZUpUybevr1791KlShW8vb2JjZX780K8SWBgIE2aNGHMmDFERUXF+/3LU+YK8TZS4EWKetMHUGRkJEOHDqVBgwacO3cubUMJYeKio6OZNGkSjRs3Ni7e8jpS4EViSIEXKSpXrlz/+fuDBw9SrVo1Jk6cSExMTBqlEsJ0nTp1ig8//JBx48a9dsW258zNzbG2tk7DZCK9kwIvUtTbCjxo9+ZdXFyoV68eZ5K7oLwQ6VRUVBTjxo3jww8/NC4p+19sbGyMa68LkRBS4EWKSswlxCNHjlC9enXGjh37ny0XITKa48eP07hxYyZNmpTgK1lyeV4klhR4kaIS0oJ/WXR0NCNHjuT999/n/PnzqZRKCNMQFxfHmDFj+Pjjjzl79myijk3se0sIKfAiRSX1Q+jkyZN07do1hdMIYVpWr17N1KlTkzSaRAq8SCwp8CJFJecyYpEiRVIuiBAmqECBAkm+jy6X6EViSYEXKSoprYysWbPi6urK8uXLUyGREKajcePGrF27lvLlyyf6WGnBi8SSAi9SVGI/hL744gvOnj3L+PHjyZEjRyqlEsJ0fPDBB+zdu5cpU6aQJ0+eBB8nBV4klhR4kaISehnRzs6OHTt2sHr1auzs7FI3lBAmxsLCgt69e3P8+HG+++67BB0jl+hFYkmBFykqZ86cCbrHmD27DY0bN06DREKYrrx581KjRo0EPVZa8CKxpMCLFGVmZoaNjU28/ebm5gwcOJBy5SoCcObMSQICAtI6nhAmJSIiguHDRxu3PTw8KFWq1GsfKy14kVhS4EWK+/cH0SeffMKpU6fw8fFh9mx/4/5hw9x48OBBGqcTwnR4e3tz585NAFq2bMWoUaMIDAxk0qRJ5MyZ85XHSgteJJYUeJHiWrduDYC9vT2//fYbW7ZsoUKFCoDWi/jLL9sDcO/ebcaM8dQtpxB6unz5Mr6+MwCwsLBk2rSpgDaqxMnJiaCgIL7++msMBgO5c+emUaNGesYV6ZBBKaX0DiEyFqUUly5d4p133sHCwiLe7y9fvkzZsuWJiorEwsKSwMAzr11mVqSy48ehRg0idu0irmpVvdNkOl27dmfDhvUAODkNY9Kkia993O3bt7GwsEhUj3shQFrwIhUYDAbs7OxeW9wBSpYsibOzEwAxMdEMHjw0LeMJobvdu3cbi3u+fAUZMWL4Gx9ra2srxV0kiRR4oQtnZ2cKFiwKwKZNG9iyZYvOiYRIGzExMTg5uRq3J0+e8NqOqUIklxR4oQtra2umTn1xSXLAgMGyopzIFBYtWsT589oyye+9V4OvvvpK50Qio5ICL3TTpUsXatWqC8DFi+eZOXOmzomESF337t3Dw2Oscdvf3wczM/kYFqlD/rKEbgwGA/7+PsbtkSPduXPnjo6JhEhdEydO4sGDMAA6depM/fr1dU4kMjIp8EJXtWrV4quvegLw8OF9Ro4cpW8gIVLJhQsXmDt3LgBZs2Z7Y695IVKKFHihuwkTxpMtm7bQzJw5czh16pTOiYRIWUophg1zJTY2BgA3NxeKFy+ucyqR0UmBF7orXLgwo0Zpw4SUimPAAAdkegaRkWzdupU//tgBQJEi7+Do6KhzIpEZSIEXJsHBwYF33tFWldu9eydr1qzROZEQKSMqKophw9yM297ek8iePbuOiURmIQVemAQrKyt8fKYatwcNGkpkZKSOiYRIGXPnzuXy5YsA1K3bgA4dOuicSGQWUuCFyWjdujUffNAEgGvXLjNt2jSdEwmRPLdv32bcOK0zncFgYMYMnwQtpyxESpACL0yGwWDA13caBoP2ZzlmzDj+/vtvnVMJkXSenp48fhwOwNdff0P16tV1TiQyEynwwqRUrlyZPn36ABAZ+QgXF9e3HCGEafrzzz9ZvHgxANbWNowbN/YtRwiRsqTAC5Pj6TkGGxttcY0lSxZz6NAhnRMJkThKKZycXI2jQTw8RlGwYEGdU4nMRgq8MDn58uVj7FgP43a/foOIi4vTMZEQibN27VoOHdoHwLvv2jNgwACdE4nMSAq8MEl9+vShTJkKABw7dohly5bpnEiIhHny5AkuLiON276+3mTJkkXHRCKzkgIvTJKlpSV+fi960Q8d6kxERISOiYRIGD8/P27evArAxx9/SosWLXROJDIrKfDCZH3yySe0aPE5AP/88zdeXl46JxLiv12/fp0pU7QvpmZm5s9GhciwOKEPKfDCpE2bNhULC0sAJk2awqVLl3ROJMSbjRrlztOnjwHo378/5cuX1zmRyMykwAuTZm9vj4ODAwDR0U8ZOtRJ30BCvMGhQ4dYteoXAHLlyoe7+2idE4nMTgq8MHkjR44gb94CAKxZs5o//vhD30BC/EtcXByOjs7G7QkTPMmTJ4+OiYSQAi/SARsbGyZNGm/c7tdvELGxsTomEuJVy5cv59SpEwCUL1+Z3r1765xICCnwIp3o2bMnVapo03yePXuK+fPn65xICM3Dhw8ZOfLFvA0zZkzHwsJCx0RCaKTAi3TB3Nwcf38f47aLy3Du3bunYyIhNFOnTuXu3VsAtGnzBR999JHOiYTQSIEX6UaDBg3o0KETAPfv38XDY4zOiURmFxoaip+fPwCWllmZOnWyzomEeEEKvEhXJk+eSNas2QCYMWMG58+f1zmRyMzc3EYSExMFwNChQ7Czs9M5kRAvSIEX6co777yDi8swAGJjYxg0aIjOiURmtXPnTjZv3gCArW1h3Nxk5UNhWqTAi3Rn2LBhFCpUDICtWzezadMmnRMlXGBgIF26dKFFixa89957tGjRgj179ugdSyRSTEwMTk4vCvqUKV7kzJlTx0RCxCcFXqQ72bNnZ9q0F/c6BwwYTFRUlI6JEiYwMBAHBwd8fX3ZuHEjx44do3jx4jRu3JiFCxfqHe8V0dHRekcwaQEBAQQHnwOgevX36datm86JhIhPCrxIlzp27EidOvUBCA0NYsaMGTonejs3NzdmzJhB/vz5AbCwsGDatGnkyZOHAQMGcP/+fX0DPnPw4EGGDh2qdwyTFRYWxpgx44zb/v4+mJnJR6kwPfJXKdIlg8HAjBk+xoU8Ro8ewz///KNzqv/2+++/07Rp01dyZsuWjYYNGxIREcH+/ft1TPdCdHS0tOD/w4QJXoSHa0M0u3TpRp06dXROJMTryWwMIt2qUaMGPXv2IiBgARERDxgxYiRz587RO9YblSxZkqCgIB49evTK/qxZswLw+PHjeMfs3LmTjRs3YjAYiI6OxsHBgZIlS6ZF3CTbvXs3//vf/zAYDMTExNC3b19KlCihd6wUce7cOeMkS1ZW2Zk0SVY4FKZLCrxI18aPH8eKFSt5/Pgh8+fP44cf+lK1alW9Y73WwYMHefjwIYUKFXpl/7FjxzAzM3ulJfjkyRO++uorDAYDCxYswNramj179lC7dm0OHDiAnZ0dYWFhrFu3jl69eqX1S3mtJ0+e0KdPHwwGA/7+/lhbW7N//36aNGnCtm3bePfddwkLC2PTpk3p8p61Uophw1yJi9OmSR4xwo2iRYvqnEqIN5NL9CJdK1SoEO7uIwHtA7h//0EopXRO9XrW1tbxivtvv/1GSEgIjo6OFCtWzLi/Q4cOnDt3jsWLF2NtbQ1Aw4YNKVOmDKNHa6uUrV69+pWW8ePHj+nTpw+7d+9Og1cTX8+ePQkKCmLOnDnGzPXq1aN06dJMmDABgPXr11O8eHHjMX/99Rfu7u64ubnRqlUrk15IaMuWLezevROAYsVKMmSIDNEUpk0KvEj3Bg4cSMmSpQHYt283q1at0jlRwjx+/BhnZ2caNGiAp6encf/ChQvZsGEDXl5exsv3z1WuXJmtW7cCsGfPHho3bgzAzJkzcXd3Z+XKlcTFxaXdi3hm6dKlbNmyBXd393iZK1SowO+//w7AgQMHaNCgAaCtwDZ9+nRGjBjB+PHjGTJkCB07diQoKCjN87/N06dPGTbMzbg9ffoUsmXLpmMiId5OLtGLdC9r1qz4+nrTqlUrAAYPdqJly5Ym/wHct29fihQpwtq1a8mSJYtxv6+vL4ULF6ZZs2bxjsmXLx+3b99m3bp1NGrUCHNzcwB++OEHAH755ZcEn99txgw2AXHffAMv/beKiIjg3r17xkL8sqxZs7Jhw4Z4/21nz55NoUKFaNq0abxj8ubNy507d9i4cSP16tUzZg4JCeHo0aPcunWLokWL8sEHH5A/f35+/vlnRo0aleDXkRZmz57NX3+FAtCgQWO++OILnRMJ8XZS4EWG0LJlSz76qCm//76N69evMHXqVEaMGKF3rDcaNWoUUVFRbNq06ZXiHhkZycmTJ2nfvv1rh16Zm5ujlGLFihUsXrw4WRnG9+/P+IAAIn78kbiX+i3s2bOHZcuWMWvWrAQ9T2RkJKdPn6ZNmzb/mfnXX39lzpwXnSBz5MjBjRs3uHnzpvFedr58+UxuEaFbt24xYYI274LBYIaf33Tj6A0hTJlcohcZgsFgwNd3GmZmWutw3LgJXLt2TedUrzd37lxu3brF0qVLjcX95MmTHD16lPDwcJRSb5zT/HlhGTt2rMksSfrw4UOUUm/s3f8884gRI17JXLhwYYKDg6lRowagddILCQkxuWFnHh5jePLkIQC9e/c22U6cQvybFHiRYVSsWNF4qToy8jHDhrnonCi+9evXGzuivdza3bZtGxYWFtja2lKkSJHXjkOPiori5MmTACbVezt//vwULlz4jZlPnz4NQJEiRf7zeX766SfKlClD+/btUyVnUpw4cYJly5YCkCNHLsaO9XzLEUKYDinwIkPx8HAnV668ACxfvpQDBw7onOiFAwcO0Lt3b27evEm3bt2MP127dmXGjBmUK1cOg8GAl5cXq1at4s6dOwDExsayefNmBgwYQM+ePTE3NyckJIQlS5awb98+nV+V1kJ3d3dn/fr13L17F9Ayb9u2DScnJ7p06YK5uTmXLl3i559/5uDBg/Ge4++//+ann35i2bJlJjMrnFIKR0cX46gMT093bG1tdU4lRMKZxjU+IVJI3rx5GT/ek379+gHQr98gjh49aBJF4/PPP+fu3bssXbo03u9KlSqFlZUVAN27d6dQoUK4ublhY2ODhYUFjRs3Nt6/XrJkCZMnT6ZWrVrUr18/TV/Dm3Tq1IkCBQrg4eFBzpw5sbCwoEGDBvj4+ADabQlfX1+qVasW7xL806dPcXFxYfHixRQuXFiP+K+1evVqjh7VvoyUKlXW+DclRHphUKY6aBhgzBgoXRo6dwbp1CISKCYmhsqVq3H+/BlAG3b21Vdf6ZwqbZQsWZKFCxfywQcfvP3Bx49DjRpE7NqVrE52yTV69Gi6du1KmTJlAFi+fDmdO3dOk3O/yePHj6latSa3bl0HYNOmTa8d1SDEG12+DKNGweTJULCgLhH0b9a8SVwcBAZC167QoAEcPap3IpFOWFhYMGPGdOO2o6MLDx8+1C9QOlOlShW+//77NDnXvHnzyJEjB3/99Rfbt29n3bp1JvH/lY+Pj7G4f/ppcynuIuEiImDECChXDnbsgNBQ3aKYdgseYOdOGDQITp+Gnj1h/Hgwoct4wnS1bt2W9evXAuDs7IKX1wR9A6Wi+fPns3XrVlavXk2VKlVo2LAhXl5eZM+e/Y3HPNy9m78bN6bov1rwaSU4OJi6devG65y3cuVKPvnkkzTP89zVq1epXr0mUVGRmJtbEBh4hrJly+qWR6QTcXGwbBk4O8Pdu+DkpP07Rw7dIpl+gQeIiYH587VvRU+fav/r4AD/mjFLiJeFhIRQrlwFYmKisLDIwvnzZylVqpTesUzCvXv3KFyoEE+johjYsSOec+fqHclk9Oz5NWvWrAZg8OAheHtP1TmRMHmHD2sN0YMHoX17mDQJTGBRKNO9RP8yCwvo0weCg+Hbb7UCX7EirFsH6eD7idBHqVKlGDpUmy88JiaKIUMcdU5kOjw8PHgaFQXAvLVrefLkic6JTMP+/fuNxT137vyMGjVS50TCpP39N3z1FdSuDU+ewB9/wC+/mERxh/RS4J/LkwemTYNTp7TOd23aQNOmcOaM3smEiRo+3I38+bUFXtavX8uOHTt0TqS/8PBwAgICjNtPnj5l0aJFOiYyDbGxsTg6vpg7YeLEceTOnVu/QMJ0RUbChAlQpgxs2gRz5sCxY/BsbQhTkb4K/HPly8PmzbBhA/z1F7z3HvTvr933EOIlOXPmZPLkF/fe+/d3ICYmRsdE+vPz8yM8PPyVfdOmTcv0rfilS5cSGPgnABUrvsc333yjcyJhcpSCNWugQgWth/x332lXlr/7Dp6tsWBK0meBB23YXIsWWut90iRYsgTs7cHPD14zo5bIvHr06EHVqjUBOH/+DHMz8f3m8PBwpk6Nf0/55s2bmboVHx4ezqhRY4zb/v4+xkVxhAC0K8dNmsAXX2iNzDNnwNsbTPgqT/ot8M9lyQJDh2rfotq10zo6VK0K27bpnUyYCDMzM2bO9DVuu7mNJCwsTMdE+vHz83vjYi6ZuRU/efJk7t27DcCXX7Y3LsMrBHfuwA8/QLVq2j33jRu1n3QwsiL9F/jnChSAuXO1+yD58sEnn0Dr1nDxot7JhAmoW7cunTt3BeDBgzBGj3bXN5AO3tR6fy6ztuJDQkLw99cm9bG0zMqUKZN0TiRMQnQ0+PhoV4aXLYOpU7Xh2s2b650swTJOgX+uWjXYtQtWrICTJ7V7Jc7O8K97jiLzmTTJCysrbVz4zJkzOXv2rM6J0tZ/td6fy4yteBeX4cTGarf1nJ2d3rgqnshE/vc/qFIFBg+Gjh21K8QODmBpqXeyRMl4BR60+/MdOsD58zBypHZfvkwZWLBAm4xAZErFihXDzU3rJR0XF8uAAQ6kh2kgUsLbWu/PZbZW/Pbt29m6dTMABQsWxcXF9FYgFGkoKAg+/xw++0ybXvb4cZg9G9LpIkMZs8A/ly2bVuAvXNA6R3zzDbz/PpjAClxCH46OjhQp8g4Av/++jQ0bNuicKG0kpPX+XGZpxUdHRzNsmJtxe+rUiVhbW+uYSOjmwQNwdIRKlbTL8KtWabOo6jDDY0rK2AX+ueLFYelSrbAbDNrc9l26wNWreicTaSxbtmxMnz7FuD1w4BCePn2qY6LUl9DW+3OZpRW/YMECQkIuAFCrVl26dOmicyKR5mJjtVlS7e1h1iwYPRrOnYMvv8wQC5xljgL/XL16cOgQBATA779rvSA9PODxY72TiTTUrl076tdvBMDlyxfx9fV9yxHpW2Ja789l9Fb83bt3GTNmvHHb398HQwb4QBeJsGcP1KoFvXtrl+SDgmD4cO3KbwaRuQo8gJmZtmhNUBAMHKgtXlOunNYpL5Pcj83sDAYDM2a8+EB3d/fk1q1bOqdKHYltvT+X0Vvx48aNJyLiPgA9enxFrVq19A0k0s6VK1rHuUaNtE5zBw7A4sVQtKjeyVJc5ivwz9nYgJeXtiRt9erQqZP2f/jx43onE2mgatWqfPPNtwA8fvwQN7fhOidKHUlpvT+XUVvxgYGBLFiwAIBs2XJk6FUGxUsePdIuwZcrp7XeFy3SinudOnonSzWZt8A/V7o0rF2rTYxz7x7UrKktaJNBW3TihXHjxmJtbQNAQMACjh07pnOilKWUwtvbO8nH37x5k9WrV6dgIv0ppXByckEpbTTNqFHDKSzLT2dsSsHy5Vph9/LShr5duAA9emhXdDOwjP3qEuPjj7Vx835+2lzD9vYwZQo8W3FLZDwFChRgzJjRgPbB37//oAw1bC4qBf52U+I5TMnGjRvZt283AO+8Y4eDg4O+gUTqOnr0Rafq99/XOtCNHw85c+qdLE2kj/Xg01pYGLi7w8yZYGenzWDUsmWG6FUpXhUVFUX58pUJDQ0CYPny5XTq1EnnVCnnzJkzbNy4kdjY2Ff2//PPP/j4+ABQtUwZPu/YMd6x77zzDm3btsUynU3u8SaRkZHUqFGba9cuA/Drr7/Stm1bfUOJ1HHzJri5wcKF2tC36dPho4/0TpXmpMD/l8BAbfai7du1qW+nTdNmxhMZyqZNm2jRogUAhQsX5+LF82TPnl3nVKnr7NmzVKxYEYBuzZrh//PPOidKfd7e3nh4eADQuPFH7Ny5XXrOZzRPn2rTy3p6Qtas2v/27g0WFnon04Vcov8vFSvC1q2wbh2EhGhTFw4apN2rFxlG8+bNadr0MwBu3LjK5MmTdU4kUtqNGzeYOFGb/8BgMMPPb7oU94xEKe1zumJFreX+zTfa9LJ9+2ba4g5S4N/OYIBWrbTW/IQJ2hh6e3vt8n0mX1c8I/Hx8cbcXPsgmDBhIn/99ZfOiURK8vAYQ2TkIwD69OlD5cqVdU4kUsyZM9oV1jZtoFQpbVnX6dMhTx69k+lOCnxCZc0KTk7a+PnWraF/f21hm99/1zuZSAHly5enf//+ADx9+gQnJ2edE4mUcuzYMZYvXwaAjU0ePD3HvOUIkS6EhcGAAdp0sleuwG+/wZYtchv1JVLgE6tQIfjxRzh8WBtL36QJfPEFhIbqnUwk0+jRo8idOz8Av/zyM3v37tU5kUgupRRDh774subp6U6+fPl0TCSSLSYGZszQhjgvXgwTJ2qteOkIHY8U+KSqWRP27tXWCT5yBMqXB1dXePhQ72QiifLkyYOX11jjdr9+g4iT1QfTtZUrV3LixBEA7O3L07dvX50TiWTZvl1rsQ8cqM0XHxQEQ4dClix6JzNJUuCTw2CAzp21ZWldXbX7PmXKaDMkSWFIl7799lsqVKgCwKlTx1m4cKG+gUSSRURE4OY2yrjt5zctwwz5y3QuXtTusTdtqt1bP3oU5s3TlnQVbyQFPiVYW2vj5i9cgMaNtbnu69TRpkEU6Yq5uTkzZkw3bjs5uRIeHq5fIJFk06dP5/btGwC0aPE5n376qc6JRKKFh4Ozs9Y7/vhxbc2Q3bu16cXFW0mBT0nvvAM//6z9AcbEaKvXde8O16/rnUwkwocffkjbtl8CEBb2D56eY99yhDA1V65cYfp0PwAsLCyZNi3xC+4IHcXFaSOWypTRZhcdPly7Utqhg9xnTwQp8KmhYUPtvvz8+do4+jJlYOxYyIALd2RUU6dOxtIyK6C1BIODg3VOJBJjxIhRREdHAjBo0CDs7e11TiQSbN8+bVrZr7/WOjFfuACjRkEGn3wqNUiBTy3m5tpkC0FB8MMPMGaM1hFv1SpZljYdePfdd3FycgQgJiaaIUMcdU4kEmrv3r2sX78WgLx5CzBy5Ah9A4mEuXpVmzO+QQNte+9eWLoUihfXN1c6JgU+teXKBZMnaxPlVKkC7dvDBx9oC9sIk+bq6oKtrbbS2IYN69m6davOicTbxMbG4ujoYtyeNGk8uXLl0jGReKvHj7UGUNmy2rwiCxZow5Dr19c7WbonBT6t2NvD+vXaRAy3b2udRL7/Xvu3MEk5cuRg6tSJxu0BAwYTHR2tYyLxNosXL+bcudMAVKlSnZ49e+obSLyZUlqnuXLlYNw4behbUBD06pXhl3FNK/JfMa19+in8+ac2pO6XX7TCP22aLEtrorp27UqNGrUBCAo6y+zZs3VOJN7k/v37uLu/6BA5Y8Z0zM3NdUwk3uj4cWjUCDp10ho7gYHaWu02Nnony1CkwOvB0lL7thocDF27gqMjVK4MmzbpnUz8i5mZGf7+PsbtESNGc/fuXR0TiTeZNGky9+/fAaB9+440bNhQ50Qinlu3tNXdatbUpprduhXWrtVmpRMpTgq8nvLnB39/7X580aLQogU0b64NBxEmo3bt2nTv3gOA8PB7jBo1WudE4t+Cg4ONV1eyZLFiypRJOicSr4iKgilTtBFFq1eDr692JbNpU72TZWhS4E1B5cqwYwf8+qtW3CtXhsGD4f59vZOJZ7y8JmBlZQ3ArFmzOH36tM6JxMucnd2IjdVWd3R1deadd97ROZEAtPvsGzZApUrg4gI9emhXLvv3z9TLuKYVKfCmwmCAtm3h7Fnw9NSmYbS3hzlzIDZW73SZXpEiRRg50g0ApeIYMMABJcMdTcK2bdvYsUMb4VCoUDGGDRumcyIBwLlz0KwZfP65NgnYyZPapDWy2E+akQJvaqystG+6QUHaJfs+faBGDfjjD72TZXpDhgyhWLGSAOza9Tvr1q3TN5AgOjoaJydX47a39ySyy4Qo+rp3DxwctCuRFy9q99i3bdNa8SJNSYE3VUWKwMKFcOgQZMsGH36ojaG/fFnvZJmWlZUVPj4vpjwdNGgokZGROiYS8+bN49IlbZbBOnXq06lTJ50TZWIxMTBrlnbl8ccfYfx4rXd869YyvaxOpMCbuvff16Zu/Okn2L9fGzM6YgREROidLFNq27YtjRp9CMBff4Uyffp0fQNlYnfu3GHsWC8ADAYDM2b4YJBCoo/ff9eGu/3wA7Rqpd1nHzYMsmbVO1mmJgU+PTAz04bTXbgATk5ab9SyZbWiL8vSpimDwYCf33QMBu2tM2bMOG7cuKFzqszJ03Msjx49AKBnz17UqFFD50SZUGgofPGFNmd8zpzaGhwLFkChQnonE0iBT19y5NA64J0//2Kluvr1tWkdRZqpUqUK3333HQBPnkTg6uqmc6LM59SpUyxatBCA7NlzMn78OH0DZTYPH4Kbm7a+xpEjsGyZNnd8zZp6JxMvkQKfHpUsCStXah3vnjyB2rXhq6/g77/1TpZpeHqOIWfO3AAsWrSQI0eO6BsoE1FK4eTkahzFMHr0CApJizFtxMXB4sXaFcRp07QOwefPQ+fOcp/dBEmBT88aN4Zjx7ShdJs2aZNITJgA0vEr1dna2uLp6W7c7tdvoAybSyPr16/n4MG9AJQoUYpBgwbpnCiTOHgQ6tbVGhONGmmF3cMDrK31TibeQAp8emduDt99p3Vq+e47bd3kChVgzRpZljaV/fDDD5QuXQ6AI0cOsmzZMp0TZXxPnjzBxWWkcdvX15us0pErdV2/rt0OrFsXoqNh9274+WcoUULvZOItpMBnFLlzg7c3nD6t3Rd73vHl1Cm9k2VYlpaWzJgx3bg9dKgzjx490i9QJjBjxgz+/vsKAB991JTPP/9c50QZ2JMnMHasdmXwf//TJt86cgRkjv90Qwp8RlOuHGzcqP38/TdUq6YNXblzR+9kGdKnn35Ks2YtALh16zoTJ058yxEiqf7++28mT/YGwMzMHF/faTIsLjUoBatWaQ2FMWO0z4/gYPj2W+2KoUg3pMBnVM2ba633KVO0Hq729uDjo11iEylq+nRvzM21ebUnTpzMZZmMKFWMGuXO06ePAejbty8VK1bUOVEGdPLki0m1KleGM2dg8mTIlUvvZCIJpMBnZFmyaIvWBAdDx47av6tU0S63iRRTpkwZY0evqKhIHB1lLvSUduTIEVauXAFArlx5GTPGQ+dEGczt2/D999q02LduwebN8Ntv2uV5kW5Jgc8MbG1h9mw4fhwKFoTPPtMWgAgK0jtZhjFq1Ejy5LEFYPXqlezatUvnRBlHXFwcQ4c6G7fHjRtD3rx5dUyUgURFacPd7O3hl1+0f586pX1GiHRPCnxmUrUq7NypjaE/fVpb/MHRER480DtZupcrVy4mTRpv3O7f34FYWQUwRaxYsYI//zwGQNmyFfn+++91TpRBbN6sXdFzdIQuXbQrfQMHgqWl3slECpECn9kYDNCunbaU4+jRLxaHmD9flqVNpl69elGpUlUAzpw5yYIFC/QNlAE8fPiQESPcjdv+/j5YyDri8UQnpm/NhQvaSpXNm2uLWp04ATNnQv78qRdQ6EIKfGaVLRsMH65dpv/0U+jdG2rVgj179E6Wbpmbm+Pv72PcdnYezv379/ULlAF4e3tz585NAD7/vDVNmjTROZHp2bdvH/369Xv7A+/fhyFDtCt3587B6tWwY4fWihcZkhT4zK5oUViyBA4c0C7NNWqkdci7csX4kJ07d+Lo6IiTkxMODg7SS/w/NGrUiHbtOgBw795txozx1DlR+nXp0iX8/PwBsLDIgrf3FJ0Tmabo6GiioqLe/IDYWJg7V7tSN3euNvTt7FltrgwZZpihybUuoalTRyvyP/0Ezs5QrhxPBg/mq/PnMVhasmDBAqytrdmzZw+1a9fmwIED2NnZERYWxrp16+jVq5fer8BkTJkyifXr1xMVFYmvry/ff/8dZcuW1TtWujN8+Eiio58CMGTIYEqXLq1zooTZuXMnGzduxGAwEB0djYODAyVLltQnzK5dMGgQ/Pkn9OihTWVdpEi8h5lUZpFipAUvXjAz0z4EgoJg8GA6eHlx7rffWNyiBdbZswPQsGFDypQpw+jRowFYvXo1JV6asvLx48f06dOH3bt36/ISTEGJEiVwcdGGysXGxuDgMFTnROnPrl272LjxNwDy5y/EiBHDdU70dk+ePKFDhw7Mnj0bDw8PJk+ezJdffknt2rUJDQ0FICwsjICAgNQPc/myNpb9gw/AykqbR37RonjF3aQyixQnBV7ElzMnC8uUYYNSeNWqRdavvoIGDeDoUQAqV67M1q1bAdizZw+NGzcGYObMmbi7u7Ny5UriMvk69cOGDaNgwaIAbNmykc2bN+ucKP2IiYnBycnVuD158gRy5sypY6KE6dChA+fOnWPx4sVYP1uAJc2/ED96BCNHajNa7t+v3X7bv19bcTIFMl+5cgVXV1eGDBnCxx9/zI4dO1Imt0gVUuDFa/n6+lK4cGGa7d2rdcR5+BDefx++/pp8WbNy+/Zt1q1bR6NGjTB/Nn3lDz/8wKRJk9LFh3Fqs7a2xtt7knF7wIDBievpnIktXLiQCxcCAahatSY9evTQOdHbLVy4kA0bNuDl5RVv8Zs0+UKslHZ7rWxZbeY5R0ett3y3btqVuRTIHBcXx8SJE/H09MTb2xtXV1datmzJ+fPnk5ddpBq5By/iiYyM5OTJk7Rv3x4zMzP46CNtkpx582DkSMzDw1FKsWLZMhYvXap3XJPVuXNnfH39OXRoPyEhF/D398fBwUHvWCbt3r17jBkzzrjt7++j/Q2aOOMX4mbN4v0uX758b/xCDPDLL78k6Bxubm5s2rQp3v6Iu3cJu3GDqosXa1PK2tnBhg2wYQNWVlbs3LmTbNmyJTvzhQsXOHToEDdv3qRYsWI0adIEW1tblixZwrhx4+I9h9Cf6b9zRJoLf1bA7ezsXuy0sIC+fSEoCEP16gCMPXgQi40bZVnaNzAYDMyY8WLY3MiR7ty+fVvHRKbPy2siDx6EAdCpUxfq1aunc6K3e/6FuGHDhq/9MmJubq59IV6xgp49eyb5POPHj+fkyZMvfjZv5mTVqsy/do1WNjac3LmTk/fvc/LsWeNjDh48+NrinpTMOXPm5Pr169y4ccP4OFtbW8LCwpL8mkTqkgIv4rG1taVIkSKvvaQclSMHJwsXBqBomTLQpg188om2KIWIp2bNmvTsqY0wiIh4wMiRo3ROZLrOnz/P3LlzAbCyys7kyeljZb7XfiF+yfMV78aOHZsyk/RERmq94cuU0VaNHDxYm3r6gw9SNXORIkW4efMmtWrVArQOekFBQdSvXz95r0ekGinwIh6DwYCXlxerVq3izrNlZmNjY9m8eTMDBgygZ8+emJubEzJ9OksGD2bfuXPaNLgDBoB8m49nwoTxZMuWA4C5c+fy559/6pzI9CilGDbMlbg4bTZFNzcXihUrpnOqhPnPL8RRUZw8eRKAokWLJu9ESsGaNVChAowapU1OFRwMrVolejx7SmQOCAigfPnydOnSJVHnFmlHCrx4re7duzNv3jzc3NxwdHRk+HBtmNKcOXNo3bo1S5YsYfKUKTwsXZr6oaHg5QWLF0Pp0vDwIbv/iGX9em0WzNBQre7HxOj8onRSqFAhRo8eAYBScQwY4ICS2xqv+N///seuXb8DUKTIOzg6OuqcKOES/IU4JIQlS5awb9++Nz6XUopHjx5x/fp1zp49y969e/nxxx/5e8cO+PhjbXKacuW0tSS8vSF3bl0yX79+nQULFrB27dp00UciszIo+aQRKeXWLRgxghzz1/CIVcAH8R6SI4fWDyh3bu1/X/73y/vs7bW+fRnls+Pp06eULVuRK1dCAFi1ahVffvmlbnnOnj1rXE+9W7Nm+P/8s25ZoqKiqFmzjvG/zYoVK+jQoYNueZJq27ZtrFy5EhsbGywsLGjcuDHNmjXj6tWrjB07lhMnTmBra4u9vT0PHjzg/v37PHjwgH379pEvXz6ioqK4f//+axcpygI8srfHYvp0bQ75l/zxxx8sXLiQhQsXplhmgOXLl7N161Zq1apl7BAI2t9yt27dmDx5skyGY+KkwIsUly1rCSKjFvG6Ap8Y06ZBRup0vm7dOtq0aQNAsWIlCQ4+h5WVlS5ZTKnA+/n5MWKEdoWjXr2G7N27y3gPOL0LDw+nZMmS3Lt3L1nPYwCeRkRg+Wys+suSU+CTwsXFhZ49e1KuXDkAFi9enC6GMmZGMkxOpJj58+ezdetWomKuYTAMRqmGgBeQPUnP9+RJisbTXatWrfjww4/ZuXM7165dxtvbGzc3N71j6eqff/5h/HhtvoDnow4ySnEHMDMzIyIiItnPM8jB4bXFHaBatWrY2Ngk+xwJMXPmTHLkyMHly5e5fPkyjx49Ijw8PE3OLRJPWvAiVfzyi7ZmTVLlzav1H8qbN+UymYIzZ85Qpcp7KBWHlZU1Fy9eSH7nqyQwlRb8gAEDWLx4MQDfftubefPm6pIjNTk6OjJ16tQkH1+nTh327t1rHD+vlwsXLlC5cuV4HfM2btxI83/dNhCmIYPc4RSmpn17rT9QUo0Zk/GKO0ClSpXo27cvAJGRj3B2dn3LERnXn3/+yZIlSwCwtrZh3LixOidKHSNHjsTW1jZJx2bNmpWAgADdiztA2bJliYqKQin1yo8Ud9MlBV6kCoMB/P2TVqQrVoTvv0/5TKZizBgPbGzyALB06RIOHjyoc6K0p5TC0dHFOJrAw2MUBQoU0DlV6siVKxfjx49P0rEeHh7Ge91CJJYUeJFqChUCH5+3P+7ffHy0ifMyqnz58jFu3Bjjdr9+gzLd4jxr1qzh8OH9ALz7rj0DBgzQOVHq6tWrF9WqVUvUMTVr1mToUFmJUCSdFHiRqrp2hZYtE/54OzvFs5lwM7Q+ffpQtqx2D/z48cMszURz+j9+/BhX1xcz+vn5TSNLliw6Jkp9ZmZmtG/fPsGPt7S0JCAgIGVmvhOZlhR4kaoMBpg9WxvbnhChoQbs341h1qyMPTGOhYUFfn7TjNtDhzqnSG/r9MDPz4+bN68C0LTpZxn+Hm5gYCCffvxxokZMjBw5kkqVKqViKpEZSIEXqa5oUW1M+9tYmGuXqe8+sOCHH6B6lWh+/z2Vw+moadOmtGzZCoDbt28wfvwEnROlvmvXrjFlivbHYGZmjo+Pd4YaFveysLAwBvTvz3tVqrDtpT/kt838VrVqVVxcXFI7nsgEpMCLNNGzJ3z66Zt/X6gQnDptRpdOL+5Fnz5nSZMm8EWbOEJDUz+jHqZNm4qFhSUAU6ZMJTSjvtBnRo92JypKm+Cgf//+lC9fXudEKS8mJgZ/f3/s7eyY4e9P7LP+FSWKFmXlypXGaZ9fx8LCgoCAACwtLdMqrsjApMCLNGEwaMvJ58z5+t9PmADly8PS5Wbs3Qs13ntxfX7NOjPKl43FzVXx8GEaBU4jpUuXZvDgwQBERz9l6FAnnROlnoMHD7Jq1UoAcuXKh7v7aJ0Tpbzt27dTtVIl+vfvT9iDBwBkt7Ji7NixnAsOpl27djg7O79xIR1XV1eqVq2aholFRiYFXqSZ4sVhypT4+2vWhJdnuqxfHw4ft2DBAiiYT5tUIyrGnAleBsqWimbxYshInc5HjBhOvnwFAVi79ld27typc6KUFxcXh6Pji8vOXl5jyZMnj46JUlZISAhtWrWiadOmBF64YNzfrUsXgi5eZPjw4cZ12a2trZk4Mf5SuJUqVTJO2StESpACL9JU797QpMmr+3x84i8qY2YGvXpBUKglzsMUWSy0BThu3Lbkq6+gbq0YMsrwcRsbGyZNejFOun9/B2IyWA/DZcuWcfr0CQAqVKhC7969dU6UMh4+fIiLszMVypVj3W+/GffXqlaN/fv3s2Tp0tfOVNi5c2fq1atn3DY3NycgICDDjyYQaUsKvEhTBgPMnw/Pp87u0QNe+pyLx8YGvCYaCDxnTuvPX6yydfi4BXXrQveucVy/nsqh00DPnj15770aAJw9e4r58+frnCjlhIeHM3Kkh3F7xozpJjEzW3LExcWxcOFCytjZMXHSJKKefSErlD8/ixYt4uDRo9StW/eNxxsMBnx8fIz32p2dnalZs2aaZBeZhxR4keZKloSjR2HZMq3YJ0Tp0rB2vTlbt0KFMi/mwv5pmRllSscydmz6XpzGzMwMf/8XswK5uo5I9gpkpmLq1KmEhf0DQJs2X/Dhhx/qnCh59u/fT+0aNejVqxc3n62lnsXCAlcXF4JCQ+nRo0eC1kivWbMmBw4cYO3atYwdmzGn6RX6kgIvdGFvD507Q2I7CzdtCn8GWuLnB3lstFbT40hzRo6E8vbRrFoF6XX5pPr169OxY2cA7t+/i7u7x1uOMH0hISHMmDETAEvLrEydOlnnREl37do1unbuTP369Tl68qRx/xdt2nDuwgXGT5hAzjf1In2DGjVq0Lp16ww7VFDoSwq8SHcsLKB/fwgOtaB/P4W5mdbj7sp1S9q3hw8bxfDnnzqHTKLJkyeSNavWGcvf359z587pnCh53NxGEhMTBYCj41Ds7Ox0TpR4T548wdPTk7L29ix7adW9SuXKsWPHDlavWZMuX5fI+KTAi3QrXz7wm2Hg5J9mfPzhi/vzu/ZaUL1aHH2+V9y+rWPAJChevDiurs4AxMbGMHDgYNLris6///47W7ZsBMDWtjBubulr5TylFCtXrqRc6dKMGjWKx5GRAOTLlYuZM2dy4vRpPvroI51TCvFmUuBFulepEmzdYc66dVCqhHZ/Pk6ZMWeuAXu7GKZNg6gonUMmgpOTE4ULFwdg+/b/sWnTJp0TJV5MTAzDhr2YmnXKFC9y5MihY6LEOXHiBI0bNKBDhw789fffAJibmTFwwACCQkPp27evzBMvTJ4UeJEhGAzQqhUEXrBk4kTIkU27P/8gwoIhQ6BKhWg2b9Y5ZAJlz56dadNe3KseMGAwUenpGwoQEBBAcLB2e6F69ffp1q2bzokS5p9//uG73r2pUaMGe/bvN+7/pEkTTp0+jY+vL3mTsgayEDqQAi8ylKxZYdgw7f58r55xGAza5e0LIZY0bw4tPovlpXlITFaHDh2oW7cBAJcuBePn56dzooQLCwvDw2Occdvf3ydBvcr1FBUVxdSpU7G3s2Pe/PnG2yKlS5bkt99+Y8u2bVSoUEHnlEIkjmm/64RIokKFYEGAGYcPG6hX+8WkMZv+Z06linEMGay4f1+/fG9jMBiYMcPH2Lt69Ogx/PPPPzqnSpjx4yfw8KE2xK9r1+7UqVNH50RvppRi48aNVCpXDkdHR8IfPQIgZ/bsTJ48mcALF2jZsqX0chfpkhR4kaHVrAl7D1iwbBkUK6Tdn4+JNWPadG1Z2rlzITb2LU+ik+rVq9Or19cAPHoUzvDhpj+N6dmzZ/nxxx8BsLLKzsSJprtC3rlz52j+6ae0bNmS4EuXAO2L1bfffENwaCiOjo4ys5xI16TAiwzPYNDG3J+/aMmoUWCVRavod+5b8P332sI2u3bpHPINxo8fR/bs2tjqH3+cz4kTJ3RO9GZKKZycXIiL0/77jhjh9tppWvV27949HAYNokrlymzZts24v0Hduhw9epR58+dTsGBBHRMKkTKkwItMw9oaPDzgfJA5Hdu/WK3mz0ALPvgA2n8Zx+XLusV7rYIFC+LhMQrQCmj//oNMdtjcpk2b2LtX+6ZUrFhJhgwZonOiV8XGxjJ79mzs7ezw8fUl5tmlm+KFC/Pzzz+ze98+qlevrnNKIVKOFHiR6ZQoAT//Ysbu3VCt8ov786t+NaNcmVhGjoRnt2JNwsCBA3n3XXsA9u/fw8qVK3VOFN/Tp09xdn6xzvn06VOMq6eZgp07d1K9ShX69u3L3WedL7JlzYq7uzvnL16kY8eOcp9dZDhS4EWm1bAhHDlhwbx5UCCvdn/+abQ5Y8dC2VLRLF1qGtPeZsmSBV9fb+P24MFOPDGxifdnzZrF1avafeyGDT/giy++0DmR5tKlS3zZti0fffQRp86eNe7v3KkTF4KDGT16NNmzZ9cxoRCpRwq8yNTMzeHbb7VlaR2HKiwttEv3129Z0q0b1Ksdw+HDOocEWrRoQZMmnwDw999/MWXKFJ0TvXDr1i28vLRx+waDGX5+03VvDUdERDDczY3yZcvy69q1xv013nuPPXv2sGz5cooXL65fQCHSgBR4IYBcuWDyFANnAs1o2fxFt/qDRyyoXRt6fhXHjRv65TMYDPj6TsPMTFtmddy4CVy9elW/QC9xdx/DkycRAPTu3Zv33ntPtyxxcXEsWbKEMnZ2jJ8wgafR2pWZgvnysWDBAg4fP06DBg10yydEWpICL8RLypSB3zaas3kzlCv9YlnaRYvNKFMqBi8veDYleZqrUKEC/fr1A+Dp0ycMG+aiT5CXHD9+nGXLfgIgR45cjB3rqVuWQ4cOUbdWLXr06MGNZ4sQWFpYMMzJiaDQUHr16mXyE+4IkZLkr12I1/jsMzh11hIfH8idU+uIF/HEAldXqFg2mjVr9Lk/7+HhTq5c+QD4+edl7H9pOtW0ppTC0fHFlwxPT3dsbW3TPMfff/9Nj27dqFOnDoePHzfub9WyJYFnzzJx0iRsbGzSPJcQepMCL8QbWFrCwIHatLd9+yjMDNr9+dC/LPniC/j4w1hOn07bTHny5GHChBet5H79BhEXF/cfR6Se1atXc+zYIQBKly5nvLqQViIjIxk/fjxlSpViydKlxv0VypRh69atrPvtN+zt7dM0kxCmRAq8EG+RPz/MnGXgxEkzPmz0Yljd77vMqfpeHP1+UNy5k3Z5evfuTblylQA4efIoixcvTruTP/Po0SPc3EYZt319vbG0tEyTcyulWL16NeXt7Rk+fDiPnt0zyWNjg5+fH38GBtK0adM0ySKEKZMCL0QCVakCO/6wYPVqeLf4i2VpZ87SlqX19YXo6Lc8SQqwsLBgxozpxm1HRxfCw8NT/8Qv8fHx4dat6wB8+mlzmjVrlibn/fPPP/mocWPatWvH5WvXAG0Z1/79+hEcGkr//v1lGVchnpECL0QiGAzwxRdwNsiS8ePB2krrcX//oQWDBsF7FaPZujX1czRp0oTWrdsCcPfuLcaNG5/6J33mr7/+Yto0HwDMzS3w8fF+yxHJd/v2bfr26UP1atX4Y88e4/4mH3zAyT//xG/GDPLly5fqOYRIT6TAC5EEVlbg6gpBIeb06P7iHvi5YEs+/RRatYwlODh1M3h7T8HCIsuzf08jJCQkdU/4zMiRo4mK0i6LDxw4kLJly6bauaKjo5k+fTr2dnbMnjOHuGc9G+3eeYe1a9ey7fffqVSpUqqdX4j0TAq8EMlQpIg2hO7gQahd88X9+d82mlOxQhxOjooHD1Ln3HZ2djg6DgUgJiaKIUMcU+dEL9m/fz9r1/4KQJ48towaNTLVzrVlyxaqVKjA4MGDeRChjbPPkS0bXl5enA0KonXr1rpPqCOEKZMCL0QKqF0b9h+yYMkSKFJAuxEfHWPGlKkGythF8+OPqbMsrZubK/nzFwJg/fq1bN++PeVP8kxsbOwrw+K8vMaSO3fuFD9PUFAQLZs1o1mzZpy/eNG4v1fPngSFhODs7EzWrFlT/LxCZDRS4IVIIWZm0K0bXAixZPhwyGqpVfR/wiz59lt4v3oMe/em7Dlz5szJlClexu3+/R2IiYn5jyOS7qeffiIw8E8AKlZ8j2+++SZFn//+/fsMHTKEihUqsHHLFuP+uu+/z+HDh1kQEEDhwoVT9JxCZGRS4IVIYTlywNixcO6COe2+eHF//vgpCxo2hE4d4vjrr5Q7X/fu3alWrRYAFy4EMmfOnJR78mcePHjAqFFjjNv+/j6Ym5unyHPHxsYyb948ytjZ4T1tmnEZ16IFC7J06VL2HTxIrVq1UuRcQmQmUuCFSCXvvgsrV5uxcydUqfBi/NyKlWaUtY/F3R0eP07+eczMzPD39zFuDx8+irCwsOQ/8UsmT57M/fvaYP8vv2xP48aNU+R5d+/eTc2qVfnuu++4fe8eAFZZsjBq1CguhITQpUsXuc8uRBJJgRcilX3wARw/ZcmcOZA/t3b5PDLKHA8PbVnan39O/rS3devWpUuXbgA8eBDG6NHuyXvCl1y8eJGZM2cDkCWLFVOmTEr2c165coUO7drRuHFjTp45Y9zfoV07zgcF4eHhgbW1dbLPI0RmJgVeiDRgbg7ffQfBlywY7KCwMNcu3V+7aUnnztCwXgzHjiXvHJMmeWFlpa1tPnPmTAIDA5MbGwAXl+HExmpXIIYNc6RkyZJJfq5Hjx4xatQoypUpw8rVq437q1WuzK5du1ixciUlSpRIbmQhBFLghUhTuXOD9zQDp8+Y0eyTF93q9x20oFYtxTdfx3HzZtKeu2jRogwf7gpAXFwsAwcORiXz0sD27dvZtk3r8FawYFFcXJK2gp1SiqVLl1K2VCk8PT2JjIoCwDZPHubNm8eREydo1KhRsrIKIV4lBV4IHZQrB5v+Z87GjVDGTmsdK2VgQYC2LO2kSfD0aeKfd+jQoRQtqrWAf/99G7/99luSM0ZHR+Pk5Grcnjp1YpIumx85coT6tWvTrVs3rt+6BYCFuTlDhwwh+NIlvv322xTrsCeEeEEKvBA6at4cTp+zxNsbcuXQ7s8/fGyBs7O2LO369Ym7P58tWzamT59i3B44cAhPk/JNAfjxxx8JDQ0CoFatunTp0iVRx9+4cYNePXvy/vvvc+DIEeP+Fs2acSYwkClTp5IrV64kZRNCvJ0UeCF0liULDB4MQSEWfNdbYTBoFT3kiiWtW8OnH8eSmNvpX375JQ0aaL3cr1wJwdfXN9GZ7t69i6fnBOO2v79PgnuzR0ZG4uXlRZlSpVi4aJFxf7nSpdm8eTMbNm1K1elthRAaKfBCmIgCBWDOXAPHjxtoVP/FZDXbfjfnvSpxDOivSMjoN4PBgJ/fdGNBdnf35GYib+yPHTuOiIj7APTo8VWCxqErpVi7di0Vy5bF1dWViCdPAMidMyfTp0/n1NmzfPbZZ4nKIYRIOinwQpiYqlXhjz0WrFwJJYpq9+dj48yY4a8tS+vvD2+brK5q1ap8+21vAB4/foib2/AEn//MmTMEBAQAkC1bDry8JrzlCO2Yph99RNu2bQl9NouPmcFA3z59CA4NZdCgQWm2XrwQQiMFXggTZDBAu3ba6nSenpD92bK0YQ8s6N8fqlaK5m3Tzo8bN5YcObR73AsXBnAsAePwlFI4ObmglDaMb9So4f85Pezdu3fp368f71Wpwo4//jDu/7BRI06cPMnMWbPInz//W88rhEh5UuCFMGHZssGIEXAh2JxuXV5Mext4wZKmTaFNq1jetEqsra0tY8aMBrTC3b//oLcOm9uwYQP792vrrb/zjh0ODg6vfVx0dDR+fn7Y29nhP3OmcRnXksWKsXr1anb88QdVqlRJ5KsVQqQkKfBCpAPFisGSpWbs3w+1qr24Pr/uN3MqlIvFxVnx8GH84/r160epUlqHtoMH97FixYo3niMyMhJn5xHGbR+fqVhZWcV73LZt26haqRIDBw7kXng4ANZWVowfP55zwcF88cUXMr2sECYgQxd4pRRHjhzh8uXLekcRIkXUrQsHj1qwcCEUyq/dn4+KMWfiJG1Z2oULIe5FQ58sWbLg6+tt3B482InHb5gA39/fn+vXLwPQuPFHtG7d+pXfBwcH06plSz755BPOBgUZ9/fo1o2gkBBcXV1f+4VAiHQnJgZ27YI7d/ROkjwqA4qLi1Nr1qxRVatWVYCysrJSt27d0juWECkqPFwpV5c4lcUiRmmj5bWfmlWj1b59rz72k0+aKUABavTo0SowMNC43a1ZM3X+/HllZWWtAGUwmKlTp04Zj33w4IFycnRUlhYWxmMAVbtGDXXw4ME0ftVCpIHvvtPeTNmzK+XkpFQ6rR8ZqsD/u7C//LNt2za94wmRKkJClGrb+tUiD0p16RSrrl7VHnPu3Dllbq4V6CxZrNS2bdteKfCdOnU2bvft+4NSSqnY2Fj1448/qgJ5877yXipSoIBavHixio2N1fFVC5GK3nvv1TdTOi30BqWSu45V0u3cuZONGzdiMBiIjo7GwcEhSQtZKKVYt24dHh4enDx58rWP2bZtGx9//HHyAgthwnbsAIf+0Zw5/2I4WnarWFzczHF0BDe3IUyfPg2ATz9txv/+txmAz+rWZcuBAwDY2OQhNDSYc+fOMahfP46fOmV8rqyWljg6OeHi6kqOHDnS8JUJkcaqVoU//4y/P3t26NcPHB21iSuSIKXqXoLo8a3i8ePHqn379qpDhw4qIiJCKaXU7t27VYECBVRISIhSSqm7d++qBQsW/Ofz/FeL/d8/0oIXmUF0tFIzZyqVN1f0Kw2Qd4pEqYCAeyp37vzx3ht5bXIZ/+3u7q46degQ7zFftm2rQkND9X55QqSNf7fg//2ThBZ9StW9xNClBf/5559z+fJljh49StasWY37GzZsSMmSJVmyZAnz5s2jVKlSfPTRR1y5coXZs2fz9OlTTp06hYuLCxEREf/ZYv83acGLzCQsDDzcFf7+iti4F31pS9vN5GJov9cekzdvfh5HhBtXegOoUqECPv7+fPDBB6kdWQjT8aYW/L8lokWf3Lrn6upKkyZNEvc6UuyrQgIFBAQoQG3YsCHe7/r27asKFCiglFKqe/fuKiYmRsXGxqq+ffuq6OhoFRcXpzw8PJRBm6w7UT/SgheZUWCgUp80efn+fIyCKm99v+TLnVvNnj1bxcTE6P0ShEh7b2vBJ7JFn5y6p5RS27dvV1ZWVurcuXOJehkWifs6AKGhoXz22WfEvTwW5y18fX1p3ry58d+FCxemWbNm8R6XL18+bt++zbp162jUqBHm5uZcuHCBQ4cOMWHCBObNm8fVq1cTGxmATZs2yXA5kSm16whlysOK5bHcvmsOfAKceu1jLczM6P/hh4z6/HPymJvDsylrhchU7t5N3OMfP4bJk8HHBz79FObPf6VFn9S6d/PmTYoVK0aTJk2wtbVlyZIljBs3LuG5Eve1JnmePHmiDAaD6tChw2t/P3r0aAWozp07q+joaPXokVJbtlxXOXLYJLrFLj/yIz+J+/kU1DkS0WqRH/mRn9f+RBYqoY4dU+rYMaX2709c3VNKqevXr6uCBQuqw4cPGx9XvXp11adPn0TV3ES34JMjPDwcpRR2dnav/f3z2a/Gjh2LhYUFp07BZ58VAWYAPdIuqBCZkAFQeocQIgO4cRNq1Hi+FQ4kvO4BFClS5JUVIJ88eUJQUBCDBw9OVI40LfC2trYUKVKE6OjoeL+LiooydpgrWrQoAOXKgbY+Rnd+/vkBixdP4tatpF2i79JlMHZ2FZKYXIj0SylFcPAptv9vOWEP3nzpcQuw3WCge62PcGj4ObmyWaddSCFMSOF5HmS5dS3Rx8VZZiG83mc8GD6PY/m0fUrZ8vnnCa97rxMQEED58uXp0qVL4gIlqr2fAhYvXqxKlCihbt++rZRSKiYmRm3atEl99913au3atcrc3FwFBgaqxYsXq717975y7NWrV1WpUqVUxYoVFSTu8qN0shOZUWBgoPqkSZNEv1/y5c6tZs2aJZ3sROaUlE52w4Yp9c8/r3265NS9a9euqRo1aqjr168n+mXoMkxu27ZtrFy5EhsbGywsLGjcuLGx88Hy5cvZunUrtWrV4ocffjAe8/TpU7p168bkyZMpUaIE69evx93dXYbJCfEaYWFhuI8ezcyZM4l9qUNs6VKluPiG5efeNExu+owZfPjhh6meWQiTkZhhcv37a8PkbG3/86HJrXtJmgwn0V8JdOLs7PzKEIFFixapuLg4tXbtWpnoRohnoqOjlb+/v8qbK9crf/8lihZVCxcufO1EN/lz5zH+28PDQ3Xu1CneY75o00YmuhGZR0ImuvmPFntKeV3dS4x0sZrczJkzyZEjB5cvX2bLli2sXr2a8PBwDAYDrVu35vjx46xdu5aqVavqHVUI3ezYsYNqlSvTr18/wh48ACC7lRWenp6cCw7m5Mk/uX9fWx3rs89eDNepU7mS8d9TpkzD18+PPXv2UOO994z7f127lvJlyzLczY2IiIg0ekVCmJjs2WHYMLh8GSZOfGurPTneVPcSJaW/caS08+fPK0tLy3gtio0bN8Z77H+16KUFLzKqixcvqjatWsX7m+/aubO6+my1mZcXm8maNdsri830atVKde/ew7j98mIzCxYsUAXz5XvleQvb2spiMyJje91iM2nQYn8uMXXvv5h8gU+Kfxd6WS5WZETh4eHKxdlZZfnXMq41q1ZV+/61Xux/LRfbq1Urdf369f9cLnaYk5MsFysyj5eXi03Dwp7SMmSBfy4uLk4dPnxYXbp0Se8oQqSY2NhYFRAQoArlf/V+eqH8+dXChQvjtaw3btz44jGFiqlHjx7FK/BKKTV+/HjjvsaNP1JxcXGvPE9QUJBq1bJlvFZF965dk9TDVwiTFR2t1B9/KPWs13t6laELvBAZzf79+1XNf92CymJhoVycnVV4eHi8xz99+lSVKlXW+Njly5crpdRrC/yTJ09U8eLvGvevWbPmtRm2bt2qKpQp80oGaysrNW7cOPXkyZNUe+1CiMRJF53shMjsrl27RrcuXahXrx5HXxoa2rZ1a86eP88ELy9y5swZ7zh/f39CQi4AUKdOfTp27PjGc1hZWeHjM9W4PWjQUCIjI+M9rmnTpvwZGIifnx95bGwAeBQZyfDhwylvb8/q1atRaT/6VgjxL1LghTBhT548wdPTk7L29ixdvty4v1K5cmzfvp1f166lVKlSrz32n3/+YdQoD0CbDnPGDB/jtJhv0qZNGxo10sa8//VXKNOnT3/t4ywsLOjfvz/BoaH079cPczPto+TytWu0a9eOjxo35tSp1y9oI4RIG1LghTBBSilWrlxJeXt7Ro0axeNnLem8uXLh7+/PidOn37o29IgRI4mI0IbL9ezZixovJsd+I4PBgJ/fdAwG7aPBw2Msf//99xsfny9fPvxmzODkn3/S5KU14//Ys4dqVavSt08f7ty589bzCiFSnhR4IUzMyZMn+aBhQzp06MCV69cBMDczY8CzFvMPP/xgXJTiv55j/vx5AGTPnpPx4xO+xGSVKlX4/vvvAYiMfISrq9tbj6lUqRLbfv+dtWvXYvfOOwDEKcXsOXOwt7PDx8fntXNxCyFSjxR4IUzEP//8w3e9e1O9enV279tn3N/0o484dfo0vn5+5M2b963Po5RiwAAH431wd/eRFCpUKFFZPD3HkDNnbgAWL17E4cOH33rM84mnzgYF4eXlRY5s2QC4//AhDg4OVKlQgS1btiQqhxAi6aTAC6GzqKgovL29sbezY978+cbCXLpkSdavX8//tm+nQoWEr4S4evVq9u7dBUDJkqUZOHBgojPlz5+fsWM9jNv9+w9KcMe5rFmz4uzsTFBICL169jTuP3/xIs2aNaNls2YEBQUlOpMQInGkwAuho02bNlG5fHmGDh1K+KNHAOTMnp3Jkydz5vx5Pv/887d2jHvZkydPcHBwNG77+Ewla9asScrWt29f7O3LA3DkyEGWLVuWqOMLFy7MgoAADh8+TN333zfu37hlC5UqVsRx6FAePJtSVwiR8qTAC6GDc+fO0eyTT2jRogVBoaGAdon7m6+/Jjg0FEdHxyQV5qlTp3L9+hUAPvqoKZ9//nmSM1paWuLnN824PWTIsCTNQ1+rVi32HTzI0qVLKfbsVkF0TAxTvb2xf/dd5s2bR2xsbJJzCiFeTwq8EGno3r17DHZwoErlymzZts24v36dOhw5coT5P/5IwYIFk/Tc169fZ9y4CQCYmZnj6zstUa3/1/n0009p3rwlAP/88zcTJ05M0vMYDAa6dOnC+YsXGTVqFFZZsgBw+949vvvuO2pWrcru3buTlVUI8Sop8EKkgdjYWObMmUMZOzum+/gQ86zFWrxwYX7++Wf27N+foGFs/2XYMBciIx8D8MMPP1CxYsVk5waYNm0qFhaWAEycOJnLly8n+bmsra3x8PDgfFAQHdq1M+4/eeYMjRs3pmP79ly5ciW5kYUQSIEXItXt3LmT6lWq0KdPH+7cvw9AtqxZcXd35/zFi3Ts2DHZLe0DBw6wbNlPAOTKlRcPD/dkpn6hTJkyDBo0CIDo6Kc4Og5L9nOWKFGCFStXsmvXLqpVrmzc/8uqVZQrU4bRo0fz6FmfBCFEEuk5T64QGVloaKj6sm3beIuzdOrQQV25ciXFzhMbG6uqVatlfP4ZM2a89ZjXzUX/X+7fv6/y5LE1HvPHH3+kRHSllFIxMTFq3rx5yjZPnlf+OxUtWFAtXbo03qI3QoiEkRa8ECksIiKC4W5ulC9bltVr1hj3V69ShT179rB8xQreeTYZTEpYsmQJJ04cAaBs2YrGSWpSUq5cuZg0abxxu1+/QSnWMc7c3Jxvv/2W4EuXGDpkCJbPJvG5fusWXbt2pUGdOhw9ejRFziVEZiIFXogUEhcXx5IlSyhjZ8f4CRN4+mzmtgJ58/Ljjz9y+PhxGjRokKLnfPjwIY6OLsZtf3+ft85yl1S9evWicuVqAAQG/smPP/6Yos+fK1cupkydypnAQFo2b27cv//wYWrVqkWvnj25ceNGip5TiIxMCrwQKeDQoUPUe/99evTowY3btwGwtLDAydGR4EuX+PrrrzE3N0/x844fP4E7d24C0KpVm7fOT58c5ubm+Pv7GLednYdz/1mfgpRUpkwZftu4kc2bN1OudGnj/oWLFlGmVCkmTpzI06dPU/y8QmQ0UuCFSIa///6bHt27U6dOHQ4dO2bc36plSwLPnmXS5MnYPFtSNaWFhoYyZYq2vKuFRRa8vaekynle1rBhQ9q315acvX//DmPGeKbauT777DNOnT2Lj48PuZ8thRvx5AkuLi5ULFuWtWvXyrK0QvwHKfBCJEFkZCTjx4+nTKlSLPnpJ+P+CmXK8L///Y91v/2Gvb19qmYYMsSRmJgoAIYOHfLGZWNT2pQpk8iSxQoAX19fLly4kGrnsrS0ZODAgQSHhtK3Tx/Mno02CLlyhbZt29L0o484c+ZMqp1fiPRMCrwQiaCUYvXq1ZS3t2f48OE8eraMa+6cOfH19eXkmTN88sknqZ5jx44drFundeDLn78Qw4e/fcW3lPLOO+/g4qINlYuNjWHQoCGpfs78+fMzc9YsTpw8yYeNGhn37/jjD96rUoX+/fpx9+7dVM8hRHoiBV6IBDp16hQfNW5Mu3btuHztGgBmBgP9fviBi5cuMWDAACwtLVM9R0xMDP37Oxi3J0+eQM5nl7DTyrBhwyhUqBgA//vfJjZt2pQm561SpQo7/viD1atXU7KYdv44pfCfORN7Ozv8/PxkWVohnpECL8Rb3L59m759+lCtalX+2LPHuP+jxo05+eefzPD3J1++fGmWZ968eZw/r12Wrlq1Jj169Eizcz9nbW2Nt/ck4/bAgUPSrLAaDAa++OILzgUHM378eKyttNsF98LDGThwIFUrVWLbS9MAC5FZSYEX4g2io6Px8fGhTKlSzJ4zh7hnHbrs3nmHNWvWsH3nTiq/NAtbWggLC8PVdaRxe+ZMX8zM9Hkbd+rUiTp16gMQEnIBf3//ND2/lZUVrq6uBIWE0KN7d+P+s0FBfPLJJ7T+/HMuXryYppmEMCVS4IV4jS1btlClQgUcHBy4//AhADmyZcPLy4uzQUG0adMm2dPLJoW7uwcPHmj3mjt37krdunXTPMNzBoMBP7/pxu2RI925/WyIYFoqUqQIixYv5uDBg9R+aT7/9Rs2UKF8eZyHDSM8PDzNcwmhNynwQrwkKCiIls2b06xZM86/1Pr7qkcPgkJCcHZ2TvL66sl19uxZYyvZyio7kyZ56ZLjZTVr1qRnz14AREQ8YMSIkW85IvXUrl2b/YcPs2TJEooUKABoy9JOmjyZMnZ2LFiwgLi4ON3yCZHWpMALATx48ADHoUOpWKECGzdvNu6vW6sWhw8fZuGiRRQuXFi3fEopBg4cTFycNj2sm5sLxZ51MtPbhAnjyZYtBwDz5s3l5MmTumUxMzOjW7duXAgJYbibG1mfdXq8dfcu33zzDe9Xr86+fft0yydEWpICLzK12NhY5s2bh/277zLV29u4jGvRggVZunQp+w4dolatWjqnhI0bN7Jjx1YAihR5B0dHR50TvVCoUCHc3bWWu1KKAQMcdJ+AJkeOHIwdN45zFy7wZdu2xv3H/vyTBg0a0KVTJ65evapjQiFSnxR4kWnt3r2bmlWr8t1333H73j0ArLJkYeTIkVwICaFLly663Gf/t6ioKAYMGGzcnj59CtmyZdMxUXyDBg2iRAltop29e3fx66+/6pxI8+6777Lq11/ZuXMnVSpUMO5fvmIFZe3t8fDw4PHjxzomFCL1SIEXmc6VK1fo2L49jRs35uRLs6B1aNeO80FBjBkzBmtrax0TvsrX15fLl7X+APXrN6Jdu3Y6J4ova9as+PhMNW47ODjy5MkTHRO96oMPPuD4qVPMnj2b/LlzA/Dk6VPc3d0pV7o0K1as0P2qgxApTQq8yDQePXrEqFGjKFemDL+sWmXcX7VSJXbt2sWKlSspUaKEjgnju3XrFqNHjwFe9Fo3hasKr9OqVSs+/PBjAK5du4y3t7fOiV5lbm7O999/T/ClSwx2cMDi2eI/V2/coFOnTjSqX59jL60nIER6JwVeZHhKKZYtW0bZUqXw9PQkMkqbv902Tx7mzp3L0ZMnafTS9KemxM1tOI8fa8P0vvnmW6pVq6ZzojczGAz4+k7DzEwrnGPHjuf69es6p4ovd+7ceE+bxukzZ2j20rTCew8coFatWnz7zTfcunVLx4RCpAwp8CJDO3r0KA3q1qVr165cf/ahbWFuzpDBgwkKDaV3796psoxrSjh+/DgBAQsAsLa2Ydy4sTonertKlSrRt29fACIjHzNsmMtbjtBPuXLl2PS//7Fx40bK2NkB2pfBHxcswN7OjilTphD17MugEOmRFHiRId24cYNePXtSq1Yt9h86ZNzf4rPPOBMYyFRvb3I/uxdripRS9O8/yHhfeMyY0RR4Nrbb1I0Z40GuXHkBWLbsJw4ePKhzov/WvHlzTp87h7e3NzbP+l48fPwYJycnKpUrx2+//Sb350W6JAVeZChPnz5l4sSJlClVioWLFhn3ly1Vik2bNrFh82bKli2rY8KE+eWXXzhwYC8AdnZl6N+/v86JEi5v3ryMHeth3O7Xb5DJTzCTJUsWBg8eTHBoKN/17m3s5xB86RKtWrXis6ZNOXv2rM4phUgcKfAiQ1BKsXbtWiqWLYuLiwsRz3pw58qRg2nTpnH63DmaNWumc8qEefz4MYMHOxm3fX29yZIli46JEq9Pnz6ULVsRgOPHD/PTTz/pnChhChQowJy5czl+/DiN6tc37t+6YwdVKldm0MCBhIWF6ZhQiISTAi/SvTNnztD0o49o27YtIVeuANoyrn2+/57g0FAcHBzSZBnXlDJ58mRu3NAmYWna9DOaN2+uc6LEs7CwYMaM6cZtR0cXHj6b0z89qPps5cCVK1dSomhRAGLj4vD188Pezo6ZM2cSExOjc0oh/psUeJFu3b17l/79+vHeszXCn/ugYUOOnzjBrNmzsbW11S9gEly9epUJEyYCYG5ugY+Pt8kOi3ubjz/+mM8/bw3A7ds3GD9+gs6JEsdgMNCuXTvOBQfj6elJ9mfL0oY9eEC/fv2oVrkyO3bs0DmlEG8mBV6kO9HR0fg9a0n5z5xpXMa1ZLFirFq1it937eK9997TOWXSODk58/Spdnuhf//+lC9fXudEyePtPQULC+32wtSp3oSGhuqcKPGyZcvGiBEjuBAcTNfOnY37z5w/z8cff8wXbdqky9clMj4p8EIXwcHBLF++nOjo6EQdt23bNqpWqsTAgQO592wJUGsrK8aNG8e54GC+/PLLdNvi3bt3LytWLAcgd+78jB49SudEyVe6dGkGD3YAIDr6KUOHOv33ASasWLFi/LRsGfv376fWS/MRrFm3jvJly+LqkvjbEMeOHWPdunXSS1+kDiVEGrt06ZKysbFRgOrRo0eCjgkODlatWrZUwCs/3bt2VdeuXUvlxKkvNjZWValS3fi6Zs2alarnCwwMNJ6rV6tWqXquBw8eqHz5ChrPt2PHjlQ9X1qIjY1VCxcuVIXy53/l77FQ/vxq4cKFKjY29q3PceTIEWVpaakA5ebmlgapRWYjBV6kqbi4ONWkSZNXPhT37t37xsc/ePBADXNyUpYWFq8c83716urAgQNpmDx1/fjjj8bXVqFCFRUTE5Oq50vLAq+UUgsWLDCer3z5yio6OjrVz5kWwsPDlYuzs8ryr7/PWtWqqf3797/xuLi4OFW3bl3j483NzdWRI0fSMLnIDKTAizQ1Z86ceK3wGjVqxGvxxMbGqh9//FEVzJfvlccWtrVVixcvTlALKb34dwv3999/T/VzpnWBj42NVe+9V8N4zpkzZ6b6OdNSSEiIatu6dby/7a6dO6urV6/Ge/zSpUvjPbZSpUoqMjJSh/Qio5ICL9LMlStXVM6cOeN9sAEqICDA+Li9e/eqGu+998rvs1paKjdXV/Xw4UP9XkAqcXIaZnydbdt+mSbnTOsCr5RS+/btM54zV658KiwsLE3Om5a2b9+uKpUr98rfbnYrK+Xp6akeP36slFIqIiJCFStW7LXvg5EjR+r8CkRGIgVepIm4uDj16aefvvZDDVAFCxZUgYGBqnPHjvF+90WbNiokJETvl5AqgoKClIWFdh/W0jKrCg0NTZPz6lHglVKqU6fOxvMOHDgozc6blqKjo9XMmTNV3ly5Xvk7LlG0qPrll1/UyJEj3/g+sLCwUCdOnND7JYgMQgq8SBMv34N944ebufkr25XLl0+Ty9V6atmylfH1urqmXUcrvQr8X3/9pbJmzaYAZWZmrgIDA9Ps3Gnt7t27auCAAcrczOyVv2uzf23/+6dq1aoqKipK7/giA5BhciLVXb9+ncGDB7/1cTGxsQDky52bWbNmcfzUKT788MPUjqebbdu2sWHDegBsbQvj5uaqc6LUV7x4cdzctBXm4uJiGThwcIYdIpY3b158fH05dfo0nzRpYtz/tnn5T548iZeXV2rHE5mAFHiRqpRS9OnThwcPHiTo8XZ2dgSHhtKnTx8sLCxSOZ1+YmJi6N/fwbg9depEcuTIoV+gNOTo6EiRIu8AsGPHVjZu3KhzotRVoUIFtmzbxoQJCZ/Jz9PTk9OnT6diKpEZSIEXqWrp0qVs2LAhwY8PDQ3l2LFjqZjINMyePZugIG11sho1atO1a1edE6Wd7NmzM23aZOP2wIFDMvy663Fxcfzyyy8Jfnx0dDS9evWS+e5FskiBF6nm5s2bDBw4MNHHOTg4ZOgPtrt37zJ8+ItZ6vz9fTAzy1xvxfbt21OvXkMALl0Kxs/PT+dEqSsgIIATJ04k6phjx44xderUVEokMoPM9aki0oxSin79+nHv3r1EHxsYGMicOXNSIZVpGDVqNOHh2n+X7t17ULt2bZ0TpT2DwYCf33TjtMKjR4/h1q1bOqdKHQ8ePMDNzS1Jx44ePZrz58+ncCKRWUiBF6li5cqV/Prrr0k+fuTIkdy9ezcFE5mGM2fOMHv2bACsrKzx8kpfK6ylpOrVq/P1198A8OhROMOHj9A5Uerw9PTk9u3bSTr26dOn9OzZk9hnHVCFSAwp8CLFXb9+nZ5ffZWs57h37x5z585NoUSmQSnFgAEOxMVpH9YjR7pRpEgRnVPpa9y4sVhb2wCwYMGPib6MbeoiIiLw9fVN1nMcOnSIoUOHplAikZkYVEYdoyJesXPnTjZu3IjBYCA6OhoHBwdKliyZKuf6uHZtdhw+nOzn+eGHH8iWLVuaZE4L69ato02bNgAUK1aS4OBzWD1bYzytnT17looVKwLQq1UrFqxbp0sOgKlTp+Lo6AhAvXoN2bt3V7pdEfDfwsPDKVmyZJJuVb3MADyNiMDS2vo/H5eW73Nh+jLuOCQBwJMnT/jqq68wGAwsWLAAa2tr9uzZQ+3atTlw4AB2dnaEhYWxbt06evXqlbyT3boFw4dT9D+Ke86cOcmVKxe5c+cmV65cr/z7+f9my5aN1atXc/v2bQICAlI3cxp5+vQpAwcOMW77+EzVrbibmgEDBuDvP4dLl4LZv38PK1eupEOHDnrHShE2NjacOnWK7du3c//+fR48ePDG/33+79d1MLUEDNWqwfTp0Lx5vN+n6ftcpB96zrIjUl/Lli1fu4hFgwYNVLdu3ZRSSs2dO/eVJTwfPXqkvv/+e7Vr166EnSQyUqlJk5TKmVOpvHlVnJ+f+nXlSrV+/Xp14sQJFRoaqsLCwhK8QlpiM1++fFm5uLiowYMHqyZNmqjt27cnLHca8vLyMs5U1qjRhyouLk7XPHrNZPcmv/32mzFPkSLvqEePHukdSRdxcXHq0aNH6vr16+rs2bNq79696scff1TXt29X6qOPlAKlPvtMqbNnXzkuTd7nIt2RAp+BBQQEKEBt2LAh3u/69u2rChQooJRSqnv37sbi6+/vr5ycnFTevHnVzp07//sEcXFKrV+vVOnSSpmbKzVggFJ376Zp5tjYWNW3b1/j8qPbt29XVlZW6ty5c8nKkZJu3LihsmXLoQBlMJipP//8U+9IJlfg4+Li1Mcfv1irwMPDQ+9IpicuTqk1a5Sys1PKwkIpBwelwsJS/30u0i25RG/CQkND+eyzz946teXLfH19af7sEp6vry+FCxemWbNm8R6XL18+bt++zbp162jUqBHm5uaAdt8bePukHGfPwuDBhG7dymfZsxNXpAhs2qT9JCLj636XmMwXLlzg0KFD3Lx5k2LFitGkSRNsbW1ZsmQJ48aNe2uWtODq6saTJxEAfPfdd1SpUkXnRKbHYDDg6zuNSpUqExcXy/jxXvTq1YvixYvrHS3VJel93rUrzefPhyVL8M2ePfXe5yJdkwJvwuzs7AgKCkrSsZGRkZw8eZL27du/dhIVc3NzlFKsWLGCxYsXJ/yJw8LA3R1mzoSSJbFbt46gzz+HFOgUlZTMOXPm5Pr169y4cYNixYoBYGtrS1hYWLLzpIQjR46wcGEAADlz5sbTc4zOiUxX+fLl6d+/P76+Pjx9+oRhw1xYvnyp3rFSXZLf5xMmEDlsGCd/+on2uXJhtmsX/GvthiS/z0WGIMPkMqjw8HCUUtjZ2b329897KY8dOzZhc77HxGhF3d4eFi6ECRMgMBBatUqR4p7UzEWKFOHmzZvUqlUL0DobBQUFUb9+/RTJlBxKKfr3H2Tc9vR0x9bWVsdEps/dfTS5cuUD4Oefl7Fv3z6dE5mwwoUJnzoVBdhZW8NHH0G7dnDpkvEhiX6fiwxFCnwGZWtrS5EiRYiOjo73u6ioKE6ePAlA0aJF3/5kO3ZAtWrQvz+0aQNBQeDkBFmzmlzmgIAAypcvT5cuXVI0W1IsX76cw4cPAFC6dDnjZVHxZnny5GHCBE/jdr9+gxJ16TqzMb5nOnWCn36CgwehfHkYPpyosLDEvc9FhiMFPoMyGAx4eXmxatUq7ty5A0BsbCybN29mwIAB9OzZE3Nzc0JCQliyZMnrW0p//w1ffAEffww2NnD4MPz4IxQqZJKZr1+/zoIFC1i7dq3uc7s/evSIoUOdjdt+ftOwtLTUMVH60bt3b8qXrwzAn38eY9GiRTonMl3G98zq1dz59FO4cIFYR0c2T57MgOLF6VmixNvf5yLDkms2GVj37t0pVKgQbm5u2NjYYGFhQePGjY3zvC9ZsoTJkydTq1atVy9pP3wI9+7BV19pxXz5cujYMcUuxadG5qdPn+Lg4MCqVatMYna4SZMmcfPmNQA++6wFn332mc6J0g8LCwtmzJhOk2drqDs5ufLll19iY2OjczLT9Nr3zNy5zNm0CXx8WFKqFJOHDaNW8+YmcetKpCE9u/ALExMbq9TChUoVKqRKgNr51VdKpZPxyM7Ozq8MjVu0aJFuWS5fvqyyZLFSgDI3t1AXLlzQLcubmNowuddp0+YLY8Zhw5z1jpM+7dqlVNWq2vj57t2Vun79lV+XKFFChsllYHKJXmgOHIA6daBnT2jcGIoV0/6dPbveyd5q5syZ5MiRg8uXL7NlyxZWr15NeHi4bnkcHYcRFRUJwKBBgyhTpoxuWdKzqVMnY2mp9fPw9p7GxYsXdU6UDjVqBEePwty5sHkzlCkD48dDZKTeyURa0PsbhtDZ1atKde2qfcOvVk3NGzZMtW/fXpmZmamqVauqAQMGmPSsYufPn1eWlpbGlt7zn40bN+qSZ9euXcYMefLYqvv37+uS423SQwteKaVcXFyNOT//vLXecdK3e/eUGjJEKQsLNS9fPtW+bt108z4XSSMFPrN6/FgpT0+lsmdXqkABpebPVyqBU8mK14uJiVGVK1czFqS5c+fqHemN0kuBDw8PV7a2hY1Zt27dqnek9O/8eaVatNC+1H/wgVImMLOiSB1yiT6zUQpWrtSG0owZAz/8oA17++YbeDbLlUiagIAATp/WljutVKkqX3/9tc6J0r+cOXMyZYqXcXvAgMGvXYxFJELZsrBhgzbr5I0b2hDYvn0hiWvWC9MlBT4zOXkSPvgAOnSAKlW0iWomT4ZcufROlu49ePCAYcPcjNv+/j7GaUFF8nTr1o3q1d8H4MKFQOOICpFMzZrB6dMwdao2UqZMGfDxgdfMQyHSJynwmcHt2/D991C9uvbvLVtg/XptVjqRIsaM8eTePa0F1K5dBxo1aqRzoozDzMwMf38f47ab20ju3r2rY6IMxNISHBwgOFgbCjtkiPblf8sWvZOJFCAFPiOLigJvb62Q//KLtpb0n3/Cp5/qnSxDCQoKwsdHK0BZslgxZcoknRNlPHXq1KFLl24AhIffY/Rod30DZTS2tjB7Nhw/rs190awZtGyp3b4T6ZYU+Ixq0yaoXFmbUrZrV+0b+sCB2jd2kaIGDx5KbKx2X9jZ2YkSJUronChjmjTJCysrbdjmrFmzOHPmjM6JMqD33oPff4dVq7RbeBUrgqMjPHigdzKRBFLgM5rz56F5c2jRQhvLfvIk+PtD/vx6J8uQtmzZwqZNGwAoWLAozs7ObzlCJFXRokUZMULr5xAXF8vAgYNRSumcKgMyGODLL7Ulod3dtZa9vT3MmwexsXqnE4kgBT6juH8fBg/WWu3nz8OaNbB9u7YtUkV0dDQDBgw2bnt7T8La2lrHRBnfkCFDKFasJAA7d27nt99+0zdQRpYtGwwfDhcuwGefwXffQc2asHu33slEAkmBT+9iY2HOnBffsD09tW/ebdqkydzxmdnMmTO5ePE8AO+/X4/OnTvrnCjjy5YtG9OnTzFuDxw4hKdPn+qYKBMoWhQWL9Zmu8ySRZvpsmNHuHJF72TiLaTAp2d//AE1akCfPtol+aAgcHEBKyu9k2V4d+7cYeRId+O2v7+Pce1tkbq++OILGjRoDMCVKyHGDo4ildWpoxX5xYthzx4oVw5GjYJHj/ROJt5ACnx6dOkStGsHH36oXUY7dAgWLgQTWEUtsxg5chQPH94HoGfPXtSsWVPfQJmIwWDAz286BoP28eXu7snNmzd1TpVJmJlB9+5aY2LIEJg0SZs4Z9kybRItYVKkwKcnEREwYoQ2C92BA/DTT7BvH7z/vt7JMpVTp04ZJ1vJli0HEyaM1zlR5lO1alV69+4NwJMnEbi6ur3lCJGicuSAceO024G1a2sjdRo0gCNH9E4mXiIFPj2Ii9OKedmyMGWKNvTtwgXtTWUm/xemJaUUAwY4oFQcAKNHj6BQoUI6p8qcxo71JEcObRbGRYsWcvToUZ0TZUJ2drB6tTa07uFDrbHRq5c2Ba7QnVQHU3f4MNSvr10Wq19f6yHv6al9gxZpbs2aNezevROAEiVK4eDgoG+gTMzW1hZPT3dA++LVv/8gGTanlw8/1CbJmTULfvtNm/Z24kSQDpC6kgJvqv7+G776Srv89eSJ1qHul1+gZEm9k2VakZGRDBo01Ljt4zOVrFmz6phI9OvXj1KlygJw6NB+fv75Z50TZWIWFlqH3+Bg+PZb7XZixYqwdq3cn9eJFHhTExkJEyZo34A3bdKGwB07pg1NEbqaNm0a165dBuDDDz+mVatW+gYSWFpa4uc3zbg9ZMgwHkmvbn3lyQPTpsGpU1C6NLRtC02bgsw8mOakwJsKpeDXX6FCBW3oyXffad+Ev/tOlnE1AX///TdjxowDwGAww9d3mgyLMxHNmjXj00+bA3Dz5jUmTZK1AExC+fKwebO2NO1ff2nT4PbvD7JQUJqRAm8KTp2CJk206SHLl9e+6Xp7Q+7ceicTzzg7uxIZqbUM+/btS6VKlXROJF7m4+ONubkFAF5ek7gik7CYBoNBm6PjzBltSN2SJdqkXH5+sixtGpACr6c7d+CHH6BaNe2e+8aN2k/ZsnonEy85dOgQP/20GAAbmzyMGeOhcyLxb2XLlmXgwIEAREVF4uQkawKYlCxZYOhQ7apku3YwaBBUrQrbtumdLEOTAq+H6Gjw8dG+yS5bBlOnwunT2iIxwqTExcXRr98g4/a4cWPIly+fjonEm4waNZLcubVFlVauXMGePXt0TiTiKVAA5s7V+hXlyweffAKtW8PFi3ony5CkwKe1//0PqlTRFobp2FH7RuvgIMu4mqhly5Zx7NghAMqWrUifPn10TiTeJHfu3EycOM643a/fIGJl9TPTVK0a7NoFK1ZoK15WqADOzhAerneyDEUKfFoJCoLPP9dWZSpYUBszOns22NrqnUy8QUREBEOHvrjU6+c3DQsLCx0Tibf55ptvqFjxPQBOnz5BQECAzonEGxkM0KGDNrfHyJHaffkyZWDBAm1yL5FsUuBT24MH4OgIlSppl+FXrYKdO7X7T8KkTZjgxT///A1Ay5ataNq0qc6JxNuYm5vj7/9i8Zlhw9x48OCBjonEW2XLphX4Cxe0zsbffKPNiLdvn97J0j0p8KklNhbmz9fus8+aBaNHw7lzWk95GV5l8i5dusTkydqypBYWlkybNlXnRCKhGjduzJdftgfg3r3beHqO1TmRSJDixWHpUq2wGwza3PZdusDVq3onS7ekwKeGPXugVi3o3Vu7JB8UBMOHa99URbowdKgT0dHaNJuDBw+mdOnSOicSiTFlyiQsLbVZBn18fAgKCtI5kUiwevW0FTIDArQ57suWBQ8PePxY72TpjhT4lHTlitZxrlEjrdPc87WTixbVO5lIhD/++IM1a1YDkC9fQUaMGK5zIpFYJUuWxNnZCYCYmGgGDx76liOESTEzg549tcbRwIEwfry2/vyKFTLtbSJIgU8Jjx5pl+DLldNa74sWacW9Th29k4lEio2NfWVY3KRJ47GxsdExkUgqFxcXChbUvlxv2rSBLVu26JxIJJqNDXh5acvS1qgBnTppDahjx/ROli5IgU8OpbRx7OXKaX+EgwdrHUV69JBlXNOp+fPnc/bsKQDee68GPXv21DeQSDJra2umTp1o3B4wYDDRMnta+lSqFKxZo02Mc++edgv022/h1i29k5k0qUJJdfSo1gmka1etx+e5c9plpJw59U4mkujevXu4uLy4HO/v74OZfFFL17p06UKtWnUBuHjxPLNmzdI5kUiWjz/Wxs37+WkF394epkyBqCi9k5kk+fRKrJs34euvtaL+8CHs2AGrV4Odnd7JRDJ5eIzh/n1tIYwOHTpRv359nROJ5DIYDK8MmxsxYjR37tzRMZFINgsL6NdPmySsZ09wcdGGIf/2m9yf/xcp8An19Km2WIK9PaxfD/7+2mQ1H32kdzKRAs6fP8+MGTMAyJo1G1OmyIpkGUWtWrXo0eMrAB4+vM/IkaN0TiRSRN684OsLf/4JJUtCq1baqKWzZ/VOZjKkwL+NUrBuHVSsCG5u2iQMwcHQt6/2TVJkCIMGDSE2NgYAV1dnihcvrnMikZK8vCaQLVsOAObMmcOpU6d0TiRSTMWK2hTg69ZBSIg2FfigQRAWpncy3UmB/y9nzmiLIbRpo3XyOHUKpk+HPHn0TiZS0KZNm9i6dTMAhQsXx8nJSedEIqUVLlyYUaO0/hVKxTFggANKLudmHAaD1oIPDIQJE7Qx9Pb2MHMmxMTonU43BiV/5fGFhWnD3mbN0u6te3traxrLDHQZTlRUFOXLVyY0VJsI5eeff6Zjx446p0o5Z86cYePGjfEWXfnnn3/w8dHuTVcvV44vu3ePd2yJEiXo0KEDlhlkIaTIyEjKlq3IX3+FAvDrr7/Stm1bnVOJVHHzpja5WECA1sL38cmct1OVeCE6Wik/P6Xy5FHKxkapKVOUevpU71QiFU2dOlUBClB16zZQcXFxekdKMZGRkSpv3rzG15eUn9mzZ+v9MlLUr7/+anxtxYu/q548eaJ3JJGajhxRql49pUCptm2VCgnRO1Gakkv0z23fri0AM3CgNl98UBAMHQpZsuidTKSSf/75h9GjxwBab+sZM3wwZKCrNFlS4G83JZ7DlLRp04bGjbWW3NWrl5g2bZrOiUSqqlkT9u6F5cvhyBEoXx5cXbURUJmAFPiLF6F1a2jaVOuVeewYzJunLekqMrQRI0YSEaGtNNar19dUr15d50Qpy2AwMGTIkCQfX7hwYTp16pSCifRnMBjw85uOwaB99I0ZM46///5b51QiVRkM2gx4Fy5oxX36dG1Z2kWLMv6ytHpfQtDNgwdKDRumlKWlUsWLK7VihVIZ6PKs+G8nTpxQBoNBASp79pzq5s2bekdKFQ8ePFB58uRJ0uV5Hx8fveOnmr59fzC+zu7de+gdR6SlK1eU6thRu2xfq5ZS+/frnSjVZL4WfFyc1vGiTBltNqQRI+D8eejQQTrRZRJKKfr3H2TsRe3hMYqCGfSKjY2NDUOHJn6hlcKFC9O7d+9USGQaPD3HYGOjjYZZsmQxhw8f1jmRSDPvvAM//wy7d2s97OvVg+7d4fp1vZOluMxV4Pft02ag+/praNJEu2QzahRkz653MpGGVq1axb59uwF49117Bg4cqHOi1DVgwADyJHJop4uLC9ky8PLG+fLlw9PT3bjdr99A4jL65VrxqoYNtfvy8+fD1q1ao2/sWHjyRO9kKSZzFPirV6FLF23ueNA6XSxdCjKZSabz5MkTBg9+Mc7d19c7w3Uk+7fEtuIzeuv9ub59+2JvXx6Ao0cPsWzZMp0TiTRnbq5NXhYUBD/8AGPGaB3xVq3KENPeZuwC//ix9n9Y2bLw+++wYAEcPgwyx3imNXXqVK5fvwJAkyaf0KJFC50TpY3EtOIzeuv9OUtLS/z8XvSiHzrUmYiICB0TCd3kygWTJ2sT5VSpAu3bwwcfaAvbpGMZs8ArBStWaMu4jhunDX0LCoJevWQZ10zs2rVrjBs3AQAzM3N8fadlqGFx/yWhrfjM0np/7tNPP6VFi88B+Oefv/Hy8tI5kdDV87VGtmyB27ehenX4/nvt3+lQxqt2x49Do0basIjq1bVvZF5eYGOjdzKhs2HDXIiMfAxAv379qFChgs6J0lZCWvGZpfX+smnTpmJhoc3WN2nSFC5fvqxvIKG/Tz/VFrGZPh1++UUr/NOmpbtlaTNOgb91C3r31iY2CAvTOk2sXQulS+udTJiAAwcOsHz5UgBy5cqHh4e7voF08LZWfGZrvT9nb2/PoEGDAIiOfsrQobIWgQAsLbWrv8HB0LUrODpC5cqwaZPeyRIs/Rf4qCiYMkXrAbl69YvlA5s21TuZMBFxcXH06zfIuD1hgmeie5VnFP/Vis+MrffnRo4cQd68BQD49ddV/PHHH/oGEqYjf35tefCTJ6FYMW1dkubNteHVJi79FnilYMMGqFQJXFygRw/tm1b//rKMq3jFkiVLOHHiCADlylXKlK3U597Uis+srffncuXKxaRJ443b/foNirdAj8jkKlfWpjRfs0Yr7pUrw+DBcP++3sneKH0W+HPnoFkz+PxzKFFC+2bl5wf58umdTJiYhw8f4ujoYtyeMWM6Fpn8C+CAAQOw+VeflMzcen+uZ8+eVKmiTVd89uwp5s+fr3MiYXIMBm358LNnwdNTm9bc3h7mzAET/EKYvgr8vXvg4KB9c7p4Edat0+61V6qkdzJhosaNG8+dOzcBaN26LU2aNNE5kf5sbGzo1auXcTt71qyZuvX+nLm5Of7+PsZtF5cR3Dfh1pnQkZWVduU4KEi7ZN+nD9SoASZ2ayd9FPiYGG1tdnt7+PFHGD9e6x3fqpVMLyveKCQkhKlTvQGwsMiCt/cUnRO9XWBgIF26dKFFixa89957tGjRgj179qT4eUaPHk3WZxP8/NChQ6ZvvT/XoEED2rfvCMD9+3fw8BijcyJh0ooUgYUL4dAhyJYNPvxQG0NvKiMx9J4M/6127FCqcmWlDAalevVS6sYNvROJdKJVqzbGBUVcXFz1jvNWZ86cUR9//LG6ffu2Ukqp6Oho9f333yuDwaACAgJS/HwPd+9W50GpY8dS/LnTsytXrqgsWawUoMzNLdS5c+f0jiTSg9hYpX76SakiRZTKmlWp4cOVevhQ10imW+BjY5Vq315b8adePaWOHNE7kUhHtm/fbizu+fMXUuHh4XpHeqtWrVqp8+fPv7Lv8ePHKm/evCpHjhzq3r17KXvCY8e095cU+HhGjx5t/Pv55JNmescR6cnDh0qNGKEV+SJFlNq3T7copnuJ3sxMu7e+bJk2d3zNmnonEulETEwM/fs7GLenTPEiZ86c+gVKoN9//52mTZvyzz//GPdly5aNhg0bEhERwf79+3VMl7kMGzaMQoWKAbB162Y2paOxz0JnOXJoHfDOn9cWNStVSrcopt2deNQovROIdGju3LmcP38GgGrVatG9e3edEyVMyZIlCQoK4tGjR6/sz5o1KwCPHz+Od8zOnTvZuHEjBoOB6OhoHBwcKFmyZFrETRZTz509e3amTZtM586dARg4cAgff/xxhl+YSKSgkiVh8WJ9M+h27UCIVHD37l2VK1de4+XV/fv36x0pwSIiItSN1/QxKVWqlDIzM1NXr1417nv8+LFq37696tChg4qIiFBKKbV7925VoEABFRISopTS/lssWLDgzSfU4RJ9iuROI3FxcapOnfrGvyVvb2+9IwmRKKZ7iV6IJBg92p0HD8IA6NKlG3Xr1tU5UcJZW1tTqFChV/b99ttvhISE4OjoSLFixYz7O3TowLlz51i8eDHW1tYANGzYkDJlyjB69GgAVq9eTYkSJYzHPH78mD59+rB79+40eDWvl9jcV65cwdXVlSFDtBb0jh070iyrwWBgxgwf44JEo0Z5vHL7RAiTp/c3DCFSSmBgoDIzM1eAsrLKrq5du6Z3pGR59OiRKl++vGrQoIF6+vSpcX9AQIAC1IYNG+Id07dvX1WgQAGllFLdu3dXMTExSiml/P39lZOTk8qbN6/auXOn9uA0bsEnNndsbKzq27evio6OVkppHSetrKzSvFd7r15fG1vxvXt/l6bnFiI5TPsevBAJpJRiwAAH4uK02aSGD3elaNGiaZohNDSUzz77jLi4uAQf4+vrS/PmzV/7u759+1KkSBHWrl37yr1fX19fChcuTLNmzeIdky9fPm7fvs26deto1KgR5ubmAPzwww8A/PLLL7q9nsTmvnDhAocOHeLmzZsUK1aMJk2aYGtry5IlSxg3blyCMyXX+PHj/t/evUdFXeZ/AH8PM4gaeIeMLAm0wJTFC9tNyxbbLY/L/rrQtoSuVmYaV0XFG4KCiogigicvK4Q/KzVOYmItaobr5ed6m7U0RGBJM5EUY5TbMPD8/picJFC5zMwzM7xf53j0+535zryfc3zm87083+eLrVu3o6rqBjZu3IBp06bCx8fHbN9P1FYs8GQTdu3aha++2gMAePDB/i169rmxubu7o6CgwCifFR0dDa1Wi927dzcq7jU1NVCr1QgICICdXdMrbEqlEkIIbN26FZntHOBjzPa0JbeTkxMuXbqEy5cvGy5PODs7o7y83CiZWqpv376IiVmAWbNmGXYkDxzYbzh1T2SpeA2erF5tbS1CQ6cblpOTV1j1zGzr16/HlStXsGXLFkNxV6vVOH78ODQaDYQQcHd3b3bbW0UnLi7Ooubcb0tuV1dXlJaWwtfXFwBQXV2NgoICPPPMM+YJfZvQ0FC4uekfPX3wYB6ysrLMnoGotVjgyeqlpKSgpKQQADBy5HN49dVXJSdqu507d6KgoADr1q1rdKS7Z88eqFQqODs7w9XVFXV1dU221Wq1UKvVAGD2yxP3Yozc6enp8PLyQmBgoKli3pGDgwNWr04yLIeHR6K6utrsOYhagwWerNqVK1cQE7MYgP4ocM2aZKs9dXrkyBFMnjwZpaWlCAoKMvx58803kZqaCk9PTygUCixbtgyffvoprl69CgCor6/HF198gZCQEEycOBFKpRJFRUXYvHkzDh06JLlVeu3NfenSJWzatAk7duxo9hS/Ofz5z3/GH/7wwi95vkdSUtI9tiCSSyGEELJDELXV22+/g02b/gEAmDz5Xaxfv05yorbr06cPrl271uxrHh4eKCwsNCzv2bMH27dvR7du3aBSqfDcc88ZBq99/PHHyM3Nha+vr2Fw3S1ubm7IyMjA6NGjgZMn9U/AOnECGDbMZO26XVty19bWIigoCImJidInwzlz5gy8vX+HhoZ6dO7cFYWFBRZ3toToFhZ4slonTpyAr68vhBBwdOyO4uLzcHZ2lh3Losku8G0RFRWFiRMnwtPTEwCQmZmJCRMmSMsTEhKK1NQ1APRzLWzZsllaFqK74Sl6skpCCAQHh+HW/umiRQtZ3G3Q2rVr4ejoiJKSEnz55ZfIysqCRqORmik2Ngbdu/cCAHz00f/iyJEjUvMQ3QmP4MkqffLJJ4Z5wj08HsPZs6c5T/hdbNy4Ebm5ucjKyoK3tzdGjRqFZX/9K7qOHGmxR/Dnzp3DkCFDmgzMy8nJueO99uaSlpaG4OBgAPrnHRw//n/SxgYQ3QkLPFmdqqoqeHg8htLSHwBYxg++VbKSU/SWSKfTYfBgH5w7dwYAkJGRgb///e+SUxE1xl1OsjqJiYmG4v7HP77E4k5mp1KpkJa22rAcGRmFGzduSExE1BQLPFmVCxcuYOnSBACAUqnC6tUrJSeijsrPzw/+/v8DALh6tRRLliyVG4joN1jgyarMnDkbtbX6CUZCQkIMI6uJZFi5cgVUKv3YjxUrklBcXCw5EdGvWODJavzrX//Ctm2fAAB69OiDhQujJSeijs7DwwPTp0cAAHQ6LaZPj5SciOhXLPBkFRoaGhAcHG5YXrYsDj169JCWh+iW+fPnoU+fvgCA7OzPzPrMeqK7YYEnq5CRkYHTp08CAAYN8sY777wjORGRnpOTExITf73+HhwcDp1OJzERkR4LPFk8jUaDmTPnGJbT0lYbnnNOZAkmTJgAH58RAID8/G+xYcMGyYmIWODJCixeHIfy8jIAwCuvvKafZpXIgtjZ2WHt2hTD8pw5C8z+3Hqi32KBJ4t2/vx5JCcnAwDs7R2QlJQoNxDRHTz11FN44w39o2wrKq4hJiZWciLq6FjgyaJFRMyATqefqnTWrEjpTxMjupvExAR07twVgH4627Nnz0pORB0ZCzxZrNzcXOTkfA4AcHFxRVRUlORERHfXr18/zJ2r/3/a0FCP0NAIcDZwkoUFnixSXV0dQkIiDMtJSQlwdHSUmIioZSIjI+Hq+jAAYN++XOTk5EhORB0VCzxZpA8++AAFBfrTmyNGPInAwEDJiYhapkuXLkhOXmFYDgmJgFarlZiIOioWeLI4V69exbx5v85Sl5a2mo/iJKvy2muv4emnRwEASkoKkZKSco8tiIyPv5pkcaKjF+LGjZ8BAOPHT8Dvf/97uYGIWkmhUCA1dTUUCgUAYOHCRbhy5YrkVNTRsMCTRfnmm2/wwQcfAAA6d74Py5bxCV1knYYOHYq339bPuFhVdQNz586TnIg6GhZ4shhCCISEhEOIBgBAdPQ8uLq6Sk5F1Hbx8XG4775uAID09E04efKk5ETUkbDAk8XIzs5GXt5XAICHHnoEERER99iCyLK5uLhg0aKFAPQ7sMHBYbxtjsyGBZ4sQk1NDcLCZhiWk5NXoHPnzhITERlHcHAw3N0fBQAcOXIQ27Ztk5yIOgoWeLIIycnJuHChGADw7LPP4+WXX5aciMg4OnXqhJSUlYbliIiZqKqqkpiIOgoWeJLu8uXLiI2NAwAoFHZYsybZMPqYyBaMHTsWL7zwIgDg8uWLSEzkMxXI9FjgSbo5c+aipqYSADBlyhR4e3tLTkRkXAqFAqtXr4RSqQIALF2agIsXL0pORbaOBZ6kOnbsGD78MAMA4OTUA4sXL5IbiMhEvLy8EBwcDACora3GrFmzJSciW8cCT9IIIfD++6GG5cWLY9CnTx+JiYhMa+HCaPTo0RsA8MknH+PgwYOSE5EtY4EnaT766CMcO/Z/AIABAzwxbdo0yYmITKtnz55YujTOsPz++2FoaGiQmIhsGQs8SVFZWYkZM349RZmamgx7e3uJiYjMY/LkyRg0SD/O5PTpk8jIyJAbiGwWCzxJkZCQgCtXLgEAxo4dhz/96U+SExGZh1KpRGpqsmF55sw50Gg08gKRzWKBJ6MTQqCoqAg6na7Z10tKSpCQoL9NSKWyx6pVSeaMRyTd888/j5dffhUAUF5ehri4+Du+t6ysDNevXzdXNLIhLPBkdOHh4RgwYAAGDRqEzz//vMnUnJGRs6DV1gAAQkND8eijj8qISSRVUlIi7O0dAACrVq3C+fPnG71eWlqKt956C3379oW7uzvKyspkxCQrxgJPRpednQ0AOH/+PPz9/fHiiy/i7NmzAIC8vDxkZW0HAPTs6Yzo6AXSchLJ9MgjjyAyUj89s05Xh+nTIwEAtbW1WL58OQYOHIj09HQIIfDzzz/jwIEDMuOSFWKBJ6P7+eefGy3n5ubC29sboaGheO+99w3rly9fgu7du5s5HZHlmDt3DpydHwAA7Nq1EzExMXj88ccxe/Zs3Lx5s9F7KyoqZEQkK8YCT0bV0NDQ7ICh+vp6rFmzBvn5ZwAAgwf7YNKkSeaOR2RRHB0dkZSUYFiOjY1FUVFRs+/97Y4z0b2wwJNR3bhxo0WPw6ysrEBeXp4ZEhFZrvLychw9erRF7+URPLUWCzwZVUuPMv773//Cz88Pr7zyCoqLi00bisjC6HQ6pKWlYeDAgUhLS2vRNjyCp9ZigSejau1RxmeffQYvLy/MmTOnyTVHIlu0b98++Pj4IDg4GOXl5S3ejkfw1Foq2QHItrTlR0ir1WLZsmX49ttv8fnnn5sgFZFl+Oqrr/DCCy+06DLWb7HAU2vxCJ6Mqj2nEX/88UfjBSGyQKWlpW0q7gBP0VPrscCTUbX1KGPo0KHYsmWLkdMQWZY33ngDc+fOhVKpbPW2PIKn1mKBJ6Nq7Y+Qvb094uLicPToUXh6epooFZFlsLOzQ3x8PI4ePYohQ4a0alsWeGotFngyqtacRvT19cWpU6cwb948PkmOOpThw4fj+PHjiI6OhkrVsqFQPEVPrcUCT0bVkqMMBwcHJCQk4PDhw3j88cfNkIrI8nTq1AmxsbE4duwYfHx87vl+jUbT5uv31DGxwJNR3avAP/nkk1Cr1Zg1a1aLj1yIbJmPjw/+/e9/Y/HixXc9k1VfX4/KykozJiNrxwJPRnWn04hdunTBypUrcfDgQV5rJ/oNe3t7zJ8/HydOnMCIESPu+D6epqfWYIEnoyooKGiybtSoUfjPf/6DiIiINo0eJuoohgwZgiNHjmDp0qXo1KlTk9dZ4Kk1WODJqC5cuGT4t4ODA1JSUvD1119j4MCBElMRWQ+VSoWoqCio1Wo88cQTjV77/vvvJaUia8QCT0bl5OQPAOjX7yGcOXMGISEhsLPjfzOi1vLy8sKhQ4cQEhICQAHACX37Pis7FlkR/vKS0ezfD3z//UZkZupw8eIFeHh4yI5EZNWUSiVSUlJw86YO/ftXYOFCJ9mRyIqwwJNR6HRAeDjw9NNAUBCvsxMZ03332SEpSYGcHODLL2WnIWvB+5SskFqtxtq1a2Fvbw+dToeSkhK88847CAgIkJZp40bg9Gng2DFAoWjfZ505cwbx8fGoqKjADz/8gH79+iEqKgqjRo0yTlgiEzNFH33lFWD0aCAiAvDzAzg3FN2TIKty+vRpMW7cOFFZWWlYt3nzZgFALFmyREqm8nIhevcWYtKk9n/Wt99+K8aMGSN++uknIYQQdXV1YsqUKUKhUIj09PT2fwH96sQJIQD932Q0puyjarUQdnZCJCe3NyV1BCzwViYiIkIAEKtWrTKs02g0AoDo1q2blExhYUI4Ogpx+XL7P8vf31/k5+c3WldVVSV69eolHB0dxfXr19v/JaTHAm8Spu6jU6YI0b27EGVl7f4osnG8Bm9lhg0bBkdHR/Ts2dOwTqPRAAC6du1q9jzffQekpgLz5wN9+7b/8249L7usrMywrkuXLhg1ahRu3ryJw4cPt/9LiEzI1H108WL939HR7f4osnG8Bm9lgoKCEBQU1GjdsWPHAAATJ05sdpv9+/cjJycHCoUCdXV1CA8Ph5ubW7uzCKG/Hujmph9gZwxubm4oKChoMiWng4MDAKCqqqrJNqZqH1FbmLqPOjsDMTHAjBnA1KmAt7cRw7cS+56Fk30KgdqnoqJCDB06VLz66quipqam0WtVVVUiICBAvP766+LmzZtCCCEOHDggXFxcRFFRkRBCiGvXrolNmza16bt37dKf4d2xo31tuN3NmzfF5WbO9Xt4eAg7Oztx8eJFwzpTt8/m8RS9WZiij2q1Qnh6CvH880I0NJinHbdj37MOLPBW6p///KcICwsTI0aMEAEBAeLGjRtN3jNu3DgxePDgJj8qI0eOFEFBQUIIIdavXy/27dtneK2yslJMmTJF5OXl3fX7a2uFGDhQiDFjTP8Ds3PnTgFAzJo1q9H61ravpKREREVFiYiICOHn5yf27t1r2uCWjgXepEzdR5cvzxOAEFlZpm1Hc9j3rAMLvA2YMWOGcHFxaVSU09PTBQCxa9euJu+fOnWqcHFxEUIIMX78eKHT6YQQQqSlpYmZM2eKXr16if3799/1O1es0I/m/eYb47WjOZWVlcLLy0uMHDlS1NbWGta3tn319fVi6tSpoq6uTgghxN69e0Xnzp3Fd999Z9oGWDIWeLMxVR8dO1YINzchqqvN04625Gbfk4fX4M2suLgYL774IhoaGlq8TUpKCsaOHXvH12NiYrB27Vr4+/ujoKAALi4uSElJwQMPPICXXnqpyft79+6Nn376CdnZ2Xj22WcND4CZNm0aAGDbtm13zVNWBixapL/+17VrMR591Ljtud3UqVPh6uqKHTt2NHr4Rmvbd+7cORw9ehSlpaXo168f/Pz84OzsjM2bNyM+Pr7F2cn2WVMfXbkSGDxY//fcueZpD/ue9WCBNzN3d/dmn7jWUvn5+dBqtfC+bWSNo6MjPD09cerUKWRlZWHSpElQq9UICAhodh54pVIJIQS2bt2KzMzMVmeYPx9QKoHYWKB37/a1526io6Oh1Wqxe/fuRsW9pqam1e1zcnLCpUuXcPnyZfTr1w8A4OzsjPLycpNkJ+tlTX30sceA0FBgyRJg4kTA1dX47bkd+5514W1yVkSj0WDo0KEYNmwYioqKGr12q7NptVpoNBoIIeDu7t7s5yh+mWouLi4OKlXr9vFOndLPWrdoEdC7dxsa0ULr16/HlStXsGXLFkNxV6vVOH78eJva5+rqitLSUvj6+gIAqqurUVBQgGeeecZ0jaAOR0YfXbAA6NoVmDPHCA24B/Y968ICb0UcHBxQX1+PRx55pNE9tlqtFoWFhVAoFBgzZgycnZ3h6uqKurq6Jp+h1WqhVqsBAA8++GCrvl8IICwMGDQIeO+9djXlrnbu3ImCggKsW7eu0VHCnj17oFKpjNK+9PR0eHl5ITAw0Oj5qeOS0Ud79ADi44HMTODoUWO1pHnse1ZG3uV/aovY2FiRmJgo6uvrDetSUlIEABETE2NYl5mZKfr372+Y8lWn04ndu3eLd999V+zYsUMolUpx5swZkZmZKQ4ePNjoO/r379/sILutW/VjsnJzTdM2IYQ4fPiwcHFxEW+++WajP4GBgeLhhx8W1b+MJmpP+3744QcxfPhwcenSJdM1xBpwkJ1JyOijOp0Qv/udEE88IcRtX2sS7HvWQyGEELJ3Mqh1tm/fjuzsbNjZ2aG8vBzV1dUICwuDv79/o/ft2bMH27dvR7du3aBSqfDcc88ZBsZ8/PHHyM3Nha+vr2Hgzi1ubm7IyMjA6NGjDeuqqwFPT8DHB8jONl3b+vTpg2vXrjX7moeHBwoLCw3LbWlfbW0tgoKCkJiYyAk5Tp4Ehg8HTpwAhg2TncamyOijeXn6h9FkZgLjx5u2fex7VkL2HgZZnuaO4BctEsLeXojz5+VkMpbZs2c3uj3nww8/lJhGMh7BW607nWULCBDC1VWIZm65l459z/w4ip7u6eJFYOlS/bS0AwbITtN2a9euhaOjI0pKSlBSUoLKykrDHOFEtmD5csDLC1i2DIiLk53mV+x7ksjewyDLsWHDBhEQECDs7OyEj4+PCAkJEZWVlSIwUIj77xeiokJ2wrbLz88X9vb2AkCjPzk5ObKjycMjeKtzpz56uwULhHBwEKK4WFLI32Dfk4fX4OmuDh0CRo4E/vEP4K23ZKcho+I1eJtUWam/P/7JJ4FPP5WdhmTibXJ0Rw0N+tvihg/XT6JBRJbvvvuAhAQgKwv4+mvZaUgmFni6o8xM/cHd6tVAM5NWEZGFCgwEnnpKv4NeXy87DcnCn21qlkYDREUBf/sbwAmniKyLQqHfMT99Wj/zJHVMLPDUrCVL9EU+IUF2EiJqC19f/aW1efOA69dlpyEZWOCpicJCYNUqYPZs4KGHZKchorZasgSordU/O4I6HhZ4aiIyErj/fmDmTNlJiKg9HnhAfwSfmgrk58tOQ+bGAk+N7N2rn4o2MVH/hCoism7h4cDDDwPTp8tOQubGAk8GOp3+x2DkSOD112WnISJj6NwZSEoCvvgC2L1bdhoyJxZ4Mli3Djh7Vj/69pfHOhORDfjLXwA/P/1001qt7DRkLizwBAC4dg1YsEA/Wx0nNSOyLQqFfuBsYaH+ejx1DCzwBAD47DP9hBjx8bKTEJEpDBkCvPeeftppTn7TMXAuejL48UfA1VV2CjKbqir90GpPT46o7CAqKgClEnB0lJ2EzIEFnoiIyAbxFD0REZENYoEnIiKyQSzwRERENogFnoiIyAaxwBMREdkgFngiIiIbxAJPRERkg1jgiYiIbBALPBERkQ1igSciIrJBLPBEREQ2iAWeiIjIBrHAExER2SAWeCIiIhvEAk9ERGSDWOCJiIhs0P8Ds1o4+Z12edwAAAAASUVORK5CYII=\n", "text/plain": [ "Graphics object consisting of 37 graphics primitives" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot_roots(\"G2\") # G2" ] }, { "cell_type": "markdown", "id": "853cb40f-41bd-46d6-a377-8c9eaba14553", "metadata": {}, "source": [ "## Bourbaki's description of the root system" ] }, { "cell_type": "markdown", "id": "79b6224e-5676-4b75-a5e3-0d8ceca6f71a", "metadata": {}, "source": [ "For each Cartan type there is a convenient ambient space $\\mathbb{R}^\\ell$ which we can embed the corresponding roots into such that the inner product $B^*(\\alpha,\\beta)$ becomes the standard Euclidean dot product. \n", "(See Bourbaki, Lie groups ch 4)" ] }, { "cell_type": "code", "execution_count": 22, "id": "de293f62-037f-491e-be0d-7dcf862b5354", "metadata": {}, "outputs": [], "source": [ "V = RootSystem(\"B3\").ambient_space()" ] }, { "cell_type": "code", "execution_count": 23, "id": "78fc14a2-2386-400b-a2e5-9518eb13b1c8", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "O---O=>=O\n", "1 2 3 \n", "B3" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "DynkinDiagram(\"B3\")" ] }, { "cell_type": "code", "execution_count": 24, "id": "52bf5ffc-0165-4612-9250-dfc8843203fc", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[(1, -1, 0), (0, 1, -1), (0, 0, 1)]" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "list(V.simple_roots())" ] }, { "cell_type": "code", "execution_count": 25, "id": "82f1b02f-ce4f-4b95-ba1d-eed56a9f2c5d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[(1, -1, 0),\n", " (1, 1, 0),\n", " (1, 0, -1),\n", " (1, 0, 1),\n", " (0, 1, -1),\n", " (0, 1, 1),\n", " (1, 0, 0),\n", " (0, 1, 0),\n", " (0, 0, 1)]" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V.positive_roots()" ] }, { "cell_type": "markdown", "id": "8f83ed65-8d19-4951-b499-aa7df6fdfafa", "metadata": {}, "source": [ "Inner product on the root space $B^*(\\alpha, \\beta)$" ] }, { "cell_type": "code", "execution_count": 26, "id": "7a5a1099-49a5-4726-9b3b-bbc4672ecab7", "metadata": {}, "outputs": [], "source": [ "def Bstar(a,b):\n", " return a.scalar(b)" ] }, { "cell_type": "markdown", "id": "b7251607-8ad8-4946-8020-329082d2d22f", "metadata": {}, "source": [ "Dual pairing $n_{\\beta\\alpha} = \\beta(H_\\alpha) = \\frac{2B^*(\\beta,\\alpha)}{B^*(\\alpha, \\alpha)}$" ] }, { "cell_type": "code", "execution_count": 27, "id": "44a7cc81-e36a-4bf3-bf06-ef4e55a26a25", "metadata": {}, "outputs": [], "source": [ "def n(b,a):\n", " return 2 * Bstar(b,a) / Bstar(a,a)" ] }, { "cell_type": "code", "execution_count": 28, "id": "d92383c2-e12c-44ef-8780-01cf90a22272", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[ 2 -1 0]\n", "[-1 2 -2]\n", "[ 0 -1 2]" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "matrix([[n(b,a) for a in V.simple_roots()] for b in V.simple_roots()])" ] }, { "cell_type": "markdown", "id": "6c0c8069-4ea9-4ceb-8928-533cce5b7ba4", "metadata": {}, "source": [ "The Cartan matrix gives the same information as the Dynkin diagram" ] }, { "cell_type": "code", "execution_count": 29, "id": "07979bd9-22a9-4582-8352-330cf6582c8b", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[ 1 1 1/2]\n", "[ 1 2 1]\n", "[ 1 2 3/2]" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "RootSystem(\"B3\").cartan_matrix().inverse()" ] }, { "cell_type": "markdown", "id": "a040f812-e9c2-4c5d-8e61-8b3d9d3d7c26", "metadata": {}, "source": [ "## Weyl groups" ] }, { "cell_type": "code", "execution_count": 30, "id": "3988e6ec-5cdc-4e1b-bd97-868450608d66", "metadata": {}, "outputs": [], "source": [ "A3 = RootSystem(\"A3\")\n", "V = A3.ambient_space()\n", "alpha = V.simple_roots()\n", "W = V.weyl_group(prefix = \"s\")" ] }, { "cell_type": "code", "execution_count": 31, "id": "34bc0a02-8b30-4836-a84e-9831ac25189c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[1,\n", " s3*s1,\n", " s2*s3*s1*s2,\n", " s1*s2*s3*s1*s2*s1,\n", " s1*s2,\n", " s1*s2*s3*s1,\n", " s3*s2,\n", " s2*s3*s2*s1,\n", " s2*s1,\n", " s2*s3,\n", " s1*s2*s3*s2,\n", " s3*s1*s2*s1,\n", " s1,\n", " s3,\n", " s1*s2*s3*s1*s2,\n", " s2*s3*s1*s2*s1,\n", " s2,\n", " s2*s3*s1,\n", " s3*s1*s2,\n", " s1*s2*s3*s2*s1,\n", " s1*s2*s1,\n", " s1*s2*s3,\n", " s2*s3*s2,\n", " s3*s2*s1]" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "list(W)" ] }, { "cell_type": "code", "execution_count": 32, "id": "5df208a1-a0ff-4989-ad5d-fd37b4538065", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "s3*s1" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "w = W.from_reduced_word([3,1])\n", "w" ] }, { "cell_type": "code", "execution_count": 33, "id": "54f80c47-985e-40a3-a298-fe7c2275db7a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[0 1 0 0]\n", "[1 0 0 0]\n", "[0 0 0 1]\n", "[0 0 1 0]" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "w.matrix()" ] }, { "cell_type": "code", "execution_count": 34, "id": "159d06ab-9357-482e-952a-0a2fcf895a3f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "s1*s2*s3*s1*s2*s1" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "w0 = W.long_element()\n", "w0" ] }, { "cell_type": "code", "execution_count": 35, "id": "b4db4566-7547-4c9b-a3cf-00863a4d7d34", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "s2*s3*s1*s2" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "w0 * w" ] }, { "cell_type": "code", "execution_count": 36, "id": "8693debe-25af-4c32-b947-63ffa361a642", "metadata": {}, "outputs": [], "source": [ "s2 = W.gen(1)" ] }, { "cell_type": "code", "execution_count": 37, "id": "7a25c7cc-8a8e-481f-b9c5-4b2ce6da9d4d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "s2.action(alpha[2]) == -alpha[2]" ] }, { "cell_type": "code", "execution_count": 38, "id": "0c1ef526-1f60-48d6-bcdf-cdae51fb35c5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(1, 0, 0, -1)" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "w.action(alpha[2])" ] }, { "cell_type": "markdown", "id": "a37aa8f5-22b3-4392-846f-c66d9c2cfe93", "metadata": {}, "source": [ "## Representations" ] }, { "cell_type": "markdown", "id": "c0f3fbfb-2b80-41d1-9500-f6717d5f139a", "metadata": {}, "source": [ "You have shown that the finite-dimensional irreducible representations of SU(2) are $V^{(n)} = \\operatorname{Sym}^n(\\mathbb{C}^2)$" ] }, { "cell_type": "code", "execution_count": 39, "id": "682d37b7-efa0-463c-a96d-93100b80950a", "metadata": {}, "outputs": [], "source": [ "A1 = WeylCharacterRing(\"A1\", style=\"coroots\", prefix = \"V\")\n", "V = lambda n: A1(n,0)" ] }, { "cell_type": "code", "execution_count": 40, "id": "c56f2f8d-9843-4d47-8d09-bcf18b835da6", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V(2).degree() # dimension" ] }, { "cell_type": "markdown", "id": "12bc2c73-d068-46a6-ad24-cb20e8ea2a7e", "metadata": {}, "source": [ "Tensor product of representations $U \\otimes V$ such that $\\pi(g)(u \\otimes v) = \\pi(g) u \\otimes \\pi(g) v$ \n", "\n", "Since this is a finite-dimensional representation of SU(2) we can decomposie it into a direct sum of irreps $V^{(n)}$" ] }, { "cell_type": "code", "execution_count": 41, "id": "266f10e2-6325-4485-8efa-c93401864bf2", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "V(0) + 2*V(2) + 2*V(4) + V(6)" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V(1) * V(2) * V(3)" ] }, { "cell_type": "code", "execution_count": 42, "id": "a1f7fd72-3e5d-4e9e-ad29-5542db54e0ac", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "V(2) + V(6)" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V(3).symmetric_power(2)" ] }, { "cell_type": "markdown", "id": "3bb0e4e2-3a43-430f-a1c4-1fa0819c537f", "metadata": {}, "source": [ "## Characters" ] }, { "cell_type": "markdown", "id": "8e4066c5-55c9-4b7d-bf72-ad37148740a7", "metadata": {}, "source": [ "The character of a finite-dimensional representation $(\\pi, V)$ of a Lie group $G$ is a function $\\chi : G \\to \\mathbb{C}$ defined by $\\chi(g) = \\operatorname{tr}_V(\\pi(g))$. We restrict these characters to a maximal torus $G \\supset T \\cong (\\mathbb{C}^\\times)^r$." ] }, { "cell_type": "markdown", "id": "44bb7fd0-2e36-49dd-8673-2519ede16265", "metadata": {}, "source": [ "Recall that $V$ decomposes into a direct sum of weight spaces $V(\\mu) = \\{v \\in V : \\pi(t) v = t^\\mu v \\}$ for weights $\\mu \\in \\Lambda = \\operatorname{Hom}(T, \\mathbb{C}^\\times) \\cong \\mathbb{Z}^r$ and where $t^\\mu$ is the natural pairing between $\\Lambda$ and $T$. For example:\n", "$$ t = \\operatorname{diag}(t_1, \\ldots, t_r) \\in \\operatorname{GL}(r,\\mathbb{C}) \\qquad \\mu = (\\mu_1,\\ldots, \\mu_r) \\in \\mathbb{Z}^r \\qquad t^\\mu = \\prod t_i^{\\mu_i}$$" ] }, { "cell_type": "markdown", "id": "bb3eeabe-9d02-41d6-85f0-d06dc9b1ef8f", "metadata": {}, "source": [ "Let $m_\\mu = \\operatorname{dim}(V(\\mu))$ which is called the multiplicity of $\\mu$ in $(\\pi,V)$. We get that\n", "$$ \\chi(t) = \\sum_{\\mu} \\operatorname{tr}_{V(\\mu)} (\\pi(t)) = \\sum_{\\mu} \\operatorname{tr}_{V(\\mu)} (1_{V(\\mu)}) t^\\mu = \\sum_{\\mu} m_\\mu t^\\mu$$" ] }, { "cell_type": "code", "execution_count": 43, "id": "549504ca-0638-41fb-b764-d63289f61957", "metadata": {}, "outputs": [], "source": [ "A3 = WeylCharacterRing(\"A3\")\n", "Lambda = A3.fundamental_weights()" ] }, { "cell_type": "code", "execution_count": 44, "id": "44e0df2d-8a73-4dd8-86fc-46054832b508", "metadata": {}, "outputs": [], "source": [ "def chi(R, la, t = None):\n", " # R WeylCharacterRing\n", " # la weight\n", " # t = (t1, ..., tr)\n", " if t == None:\n", " t = [SR(f\"t{i}\") for i,l in enumerate(la.to_vector())]\n", "\n", " res = 0\n", " for mu,m in R(la).weight_multiplicities().items():\n", " res += m * prod([ti^mui for ti,mui in zip(t,mu.to_vector())])\n", " return res" ] }, { "cell_type": "code", "execution_count": 45, "id": "16e91edb-bf5c-46f9-9982-2a2db68fc697", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "s3*s1" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "w" ] }, { "cell_type": "code", "execution_count": 46, "id": "89999238-f048-4bde-890a-97881fc6fa33", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "t0*t1*t2 + t0*t1*t3 + t0*t2*t3 + t1*t2*t3" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "chi(A3, Lambda[3])" ] }, { "cell_type": "markdown", "id": "6cb7b892-6d54-4515-8354-14b18d644474", "metadata": {}, "source": [ "The character $\\chi_\\lambda$ for a highest weight module $V_\\lambda$ where $\\lambda$ is a dominant weight can also be computed using the **Weyl character formula**\n", "\n", "$$ \\chi_\\lambda(t) = \\frac{\\sum_{w\\in W} (-1)^{\\ell(w)} t^{w(\\lambda + \\rho)}}{ \\sum_{w \\in W} (-1)^{\\ell(w)} t^{w(\\rho)}} $$\n", "where $\\rho = \\frac{1}{2} \\sum_{\\alpha > 0} \\alpha = \\sum \\Lambda_i$" ] }, { "cell_type": "markdown", "id": "0ec8b8da-1f07-4bf8-a86a-0ff67e3bf0c1", "metadata": {}, "source": [ "## Schur polynomials" ] }, { "cell_type": "markdown", "id": "d0d32e21-7805-42d6-bd42-a81e4d919b5a", "metadata": {}, "source": [ "For type A, i.e. $\\operatorname{GL}(r)$, these are special symmetric polynomials in $t_i$ called Schur polynomials defined as\n", "\n", "$$ s_\\lambda(t_1, \\ldots, t_r) = \\frac{\\operatorname{det}(t_i^{(\\lambda+\\rho)_j})}{\\operatorname{det}(t_i^{\\rho_j})} $$" ] }, { "cell_type": "code", "execution_count": 47, "id": "c113bd44-1e5c-4c95-88bd-489da4a389bb", "metadata": {}, "outputs": [], "source": [ "schur = SymmetricFunctions(QQ).schur()\n", "s = lambda la: schur[la.to_vector()].expand(4, alphabet = \"t\")" ] }, { "cell_type": "code", "execution_count": 48, "id": "39eab96f-af1d-4127-823e-07ac34cf4d2b", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "t0*t1*t2 + t0*t1*t3 + t0*t2*t3 + t1*t2*t3" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "s(Lambda[3])" ] }, { "cell_type": "code", "execution_count": 49, "id": "08eb8fd4-c67d-4f89-83a3-674302e12dc8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "True\n", "True\n", "True\n" ] } ], "source": [ "for la in A3.fundamental_weights():\n", " print((chi(A3, la) - s(la)).is_zero())" ] }, { "cell_type": "code", "execution_count": 50, "id": "8c22c1d9-2131-4c74-bb54-d9319a4dfddc", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "True\n" ] } ], "source": [ "la = 2 * Lambda[1] + 3 * Lambda[2]\n", "print((chi(A3, la) - s(la)).is_zero())" ] }, { "cell_type": "markdown", "id": "e578bf73-6b65-467e-a8ab-631425b5d1cf", "metadata": {}, "source": [ "A Schur polynomial $s_\\lambda$ also have a combinatorial description in terms of *semi-standard Young tableaux* of shape $\\lambda$." ] }, { "cell_type": "code", "execution_count": 51, "id": "04fb65e3-dbb2-4920-8167-d8e2e985767c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Semistandard tableaux of shape [4, 2, 1] and maximum entry 7" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "SSYT = SemistandardTableaux([4,2,1])\n", "SSYT" ] }, { "cell_type": "code", "execution_count": 52, "id": "a4da5f20-b01e-4ecf-9f62-f651a2d4581b", "metadata": {}, "outputs": [], "source": [ "import random" ] }, { "cell_type": "code", "execution_count": 53, "id": "2dce7659-dc90-430e-bb4a-0b3f9cd08a74", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAIwAAABmCAYAAAAZH3naAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAFUUlEQVR4nO3dS0hUbxgG8GfKoAtSlAVJl4kImohqKjdNlFAZYUEb2yRdXAXT1U27NkWXRRARCEYIMXTZlLUpU0ilRTRNRDcpoqYiihAqMISozn/xckjL/s1r835n5szzg8M4Q/JM+Pidb874asTzPA9EORoR9BOg4sLCkAoLQyosDKmwMKTCwpAKC0MqLAypsDCkUqb5x729QFsbEI0CY8YYPaNf9PcD2SwzLTPXrgUqKnL8JE8hlfI8gEfYjlQq9w6oVphoVG5TKSAWU5V52Hp6gPp6Zlpm+l/XXKgK4y+VsRiweLHmM/8dM+1oToHc9JIKC0MqLAypsDCkwsKQinlhuruBDRuAykogEgFaW23zjhwBqqqA8nJgyhRg40bg6VPbzKGeQyQC7N1rm/P2rbwsnjQJGDsWWLQIyGRsM80L8+ULsHAhcOqUdZLo6gKSSeD2baC9Hfj2DaipkefhQjoNNDcDCxbY5nz8CCQSwKhRwLVrwJMnwPHjwIQJtrmq6zDDsW6dHK5cvz74fkuLrDSZDLBihW12Xx+weTNw+jRw6JBt1rFjwPTp8v/zaS7ADVfo9zCfP8vtxIn2WckkUFsLrF5tn3X1KrB0KVBXJ98Q8bgU1VqoC+N5QGMjsHw5MH++bdaFC8C9e7J/ceHFC6CpCZgzR94Q3rED2L0bOHvWNtf8lBSknTuBBw+AW7dsc968AfbsAW7cAEaPts3y/fghK8zhw3I/HgceP5YSbdlilxvaFWbXLlm2b94Epk2zzcpkgA8fgCVLgLIyObq6gJMn5ePv3/OfOXUqMG/e4MdiMeD16/xnDRS6FcbzpCyXLwOdncCsWfaZq1YBDx8Ofmz7dmDuXGD/fmDkyPxnJhK/Xy549gyYOTP/WQOZF6avD3j+/Of9ly+B+/dlEzpjRv7zkkng3DngyhW5FvP+vTw+frzdDyaVl/++Rxo3Tq6PWO2d9u0Dli2TU9KmTcCdO/JyvrnZJs9nfkq6e1fOr/G43G9slI8PHLDJa2qSV0bV1bJs+8fFizZ5QamqklX0/Hkp5cGDwIkT8rLekvkKU10tpwlXCuVXC3R22mesXy+HS6Hd9JINFoZUWBhSYWFIhYUhFRaGVFgYUlFdh+nvl9ueHounMjQ/i5l2mf7XNSccleXBUdkizAx6GD9XHJUtoMxEwl3WcDO56SUVFoZUWBhSYWFIxbQwQUwhRqMydfjrkUza5pYK08IEMYWYTgPv3v082tvl8bo6u8xSYvoTd0FMIU6ePPj+0aPA7NnAypU2eaXG6R7G5RQiAHz9KhffGhrktET/zllhXE4h+lpbgU+fgG3b3OSVAmdzSa6mEAc6c0Z+EUBlpbvMsHNSGH8KsbvbfgrR9+oV0NEBXLrkJq9UmBYmiClEn7/Brq11l1kKTAsTxBQiIIPqLS3A1q0y20z5Y7rpDWoKsaNDhtIbGmxzSpH5KSkINTWFMwEZNnwviVRYGFJhYUiFhSEVFoZUWBhSYWFIhZOP/5OpmggsEarCZLNyW19v8Ez+IojMbDaYWaFCxsnHIQxnIrBUcPLxD7iyDI2bXlJhYUiFhSEVFoZUWBhSMS0Mx1bDx/Qn7tLpwX8r6NEjYM0ajq0WM9PCcGw1fJztYTi2Gg7OCsOx1XBwVhiOrYaDkzEvjq2Gh5MVhmOr4WFeGI6thot5YTi2Gi7m3/McWw0XvpdEKiwMqbAwpMLCkAoLQyosDKkUzeQjpxALQ9FMPnIKsTBEPC/3y2q9vUBbW3B/l7Ciwk0m/ZmqMETc9JIKC0MqLAypsDCkwsKQCgtDKiwMqbAwpMLCkMp/MPs1gjIMEogAAAAASUVORK5CYII=\n", "text/plain": [ "Graphics object consisting of 16 graphics primitives" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "T=random.choice(SSYT)\n", "T.plot()" ] }, { "cell_type": "code", "execution_count": 54, "id": "21a39297-85f2-4ea4-acc6-ad2a4af3597c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[1, 2, 0, 1, 0, 1, 2]" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "T.weight() # number of [1s, 2s, 3s, ...] \\in Z^r" ] }, { "cell_type": "code", "execution_count": 56, "id": "7f3eb0ba-8eee-4e14-b5c6-4913c702b66b", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "7350" ] }, "execution_count": 56, "metadata": {}, "output_type": "execute_result" } ], "source": [ "SSYT.cardinality()" ] }, { "cell_type": "markdown", "id": "55e02e3f-3d97-4522-ab64-4cb0d1ed03d3", "metadata": {}, "source": [ "The Schur polynomial can then be expressed as\n", "$$ s_\\lambda(t) = \\sum_{T \\in \\operatorname{SSYT}(\\lambda)} t^{\\operatorname{wt}(T)} $$" ] }, { "cell_type": "markdown", "id": "da016b1f-910f-4a45-bfbb-e1a46cf6538f", "metadata": {}, "source": [ "## Conclusion" ] }, { "cell_type": "markdown", "id": "4afd120a-aa42-4e8a-b33d-2624bbd6c84f", "metadata": {}, "source": [ "We have seen an example of how representation theory and algebraic combinatorics are connected: characters of type A, Schur polynomials and Young tableaux.\n", "\n", "In my research I consider other special functions obtained from representations theory and give them a combinatorial description using solvable lattice models describing paths in a two dimensional grid." ] }, { "attachments": { "565ae579-e0f6-499d-8cfd-2915633fc0b8.png": { "image/png": "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" } }, "cell_type": "markdown", "id": "2e3c5071-a72a-40d7-957b-8a0e523131b1", "metadata": {}, "source": [ "![image.png](attachment:565ae579-e0f6-499d-8cfd-2915633fc0b8.png)" ] }, { "cell_type": "markdown", "id": "b056e56b-f105-485b-a4a5-268cfd08b4cb", "metadata": {}, "source": [ "Each configuration is given a weight parametrized by $t$ and summing these weights give the partition function of the lattice model.\n", "\n", "We show that such partition functions are equal to special functions in representation theory such as Whittaker functions of (infinite-dimensional) principal series representations of $p$-adic groups where $p$ is a prime number." ] } ], "metadata": { "kernelspec": { "display_name": "SageMath 10.0", "language": "sage", "name": "sagemath" }, "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.11.6" } }, "nbformat": 4, "nbformat_minor": 5 }