{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "source": [ "%pylab inline\n", "import numpy as np\n", "from conway99 import *\n", "import pickle" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# A representative seed graph\n", "We start from an arbitrary vertex and its neighbours. These can necessarily be arranged as 7 blades of a fan; we fix a numbering with vertex 0 the centre, 1-14 its neighbours, and blade edges 1-2, 3-4, 5-6, 7-8, 9-10, 11-12, 13-14" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "seed15 = np.empty((15,15), dtype='int')\n", "for i in range(15):\n", " for j in range(15):\n", " seed15[i,j] = 0\n", "\n", "# 1-14 all nhbrs of 0\n", "for i in range(1,15):\n", " seed15[0,i] = 1\n", " seed15[i,0] =1\n", " \n", "# By fixing an ordering, a single representative suffices\n", "for i in [1,3,5,7,9,11,13]:\n", " seed15[i,i+1] = 1\n", " seed15[i+1,i] = 1" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[0 1 1 1 1 1 1 1 1 1 1 1 1 1 1]\n", " [1 0 1 0 0 0 0 0 0 0 0 0 0 0 0]\n", " [1 1 0 0 0 0 0 0 0 0 0 0 0 0 0]\n", " [1 0 0 0 1 0 0 0 0 0 0 0 0 0 0]\n", " [1 0 0 1 0 0 0 0 0 0 0 0 0 0 0]\n", " [1 0 0 0 0 0 1 0 0 0 0 0 0 0 0]\n", " [1 0 0 0 0 1 0 0 0 0 0 0 0 0 0]\n", " [1 0 0 0 0 0 0 0 1 0 0 0 0 0 0]\n", " [1 0 0 0 0 0 0 1 0 0 0 0 0 0 0]\n", " [1 0 0 0 0 0 0 0 0 0 1 0 0 0 0]\n", " [1 0 0 0 0 0 0 0 0 1 0 0 0 0 0]\n", " [1 0 0 0 0 0 0 0 0 0 0 0 1 0 0]\n", " [1 0 0 0 0 0 0 0 0 0 0 1 0 0 0]\n", " [1 0 0 0 0 0 0 0 0 0 0 0 0 0 1]\n", " [1 0 0 0 0 0 0 0 0 0 0 0 0 1 0]]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\Users\\Graeme\\Anaconda3\\lib\\site-packages\\networkx\\drawing\\nx_pylab.py:611: MatplotlibDeprecationWarning: isinstance(..., numbers.Number)\n", " if cb.is_numlike(alpha):\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# review\n", "print(seed15)\n", "plot_given_edges(seed15)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# Verify some details\n", "assert len(seed15)*len(seed15) == num_known_zeros(seed15) + num_known_ones(seed15) + num_unknowns(seed15)\n", "assert not(has_unknown_values(seed15))\n", "assert lambda_compatible(seed15)\n", "assert mu_compatible(seed15)\n", "assert meets_adjacency_requirements(seed15, debug=True)\n", "assert graph_is_valid(seed15)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Adding vertex 15\n", "(NB, as we started numbering at 0, this is our 16th vertex)\n", "\n", "wlog, we let this be a neighbour of vertex 1" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0]\n", " [1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1]\n", " [1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2]\n", " [1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 2]\n", " [0 1 2 2 2 2 2 2 2 2 2 2 2 2 2 0]]\n" ] }, { "data": { "image/png": "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/fffNzVr1jTff/+9S/crUpj3Dzt8WXY2rF5tRWgxlgDVgTZFvOYwBlatsm6F8EGHDh0iLi6O1NRU7r//frvLuWGeHOkC3HPPPURFRfHOO+947Ji+qG3btnz11Vf07duXjh07kpCQwHEX/W706tWLv/71r0RFRXH69GmX7FOkKApdd5o7t9RN5gH/Byj2hhGH44b2421Onz5N9+7d+dvf/ka7du3sLueGGWM4ffo0t912m0ePO2LECGbMmMGFCxc8elxfU65cOeLj4zlw4AAVK1YkPDycqVOnuuT/20svvUTLli15+umnuXjxoguqFbmeQtedMjOhhPVljwAZwLMl7SM317rZ34cUFBTQr18/WrduzaBBg+wup0xycnKoUKECwcGeXTemWbNm1KlThyVLlnj0uL6qatWqTJkyhYyMDFauXEmTJk1Yu3btLe3T4XAwc+ZM8vPzGTp0qEuvHYtcptB1p1OnSnx5PvAYUOqJ15MnXVSQZ4wbN46ff/6ZGTNm+NyiD54+tXyty7129WV/48LDw/n4449JSkoiMTGR7t27c+jQoZveX0hICB988AGfffYZb731lgsrFbEodN2pSpUSX55PKaPcy8q6LJ6NPvjgA+bNm0daWhrly5e3u5wyszN0u3XrxokTJ/j8889tOb6vcjgcPPnkk2RlZREZGckjjzzC6NGjb/rabOXKlVm5ciWTJ08mLS3NxdVKoFPoulNEhLXYehE+B44CvUrbh9NprR/rA3bv3s2gQYP48MMPCQsLs7ucm2Jn6JYrV45hw4YxefJkW47v6ypUqMArr7xCZmYmx44do379+syfP5+CgoIy7+vee+8lPT2dhIQEtm7d6oZqJVApdN2phIXs5wE9gFKn6xhT4n68xfHjx4mOjmb69Ok0a9bM7nJump2hCzBgwAA2bNjAf//7X9tq8HX33HPPlbMtM2fOpHXr1mzbtq3M+3n44YeZM2cO0dHR+nmIyyh03al6dejcuchenynAe6W93+GALl1KbYJgtwsXLtCrVy9iY2Pp06eP3eXcErtD97bbbmPAgAFMnz7dthr8RatWrfjiiy9ITEwkOjqa/v378+OPP5ZpH926dePVV1+lS5cunPSxuRXinRS67jZ69PU9Pm+U02m938sNGzaM3/3ud7zxxht2l3LLTp06ZWvoAgwZMoS5c+fy66+/2lqHPwgK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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Generate template with an additional vertex, and review\n", "seed16 = get_supermatrix_template(seed15, forced_edges=[(1,15)])\n", "print(seed16)\n", "plot_given_edges(seed16)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Wall time: 32.9 ms\n" ] } ], "source": [ "# Fill in the template\n", "%time super16 = templates_to_valid_graphs([seed16], verbose=0)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\t1 reps from 1 candidates\n" ] } ], "source": [ "# Reduce to eliminate equivalent graphs\n", "rep16 = reduce_mod_equivalence(super16, verbose=True)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Turns out, there's only really one way to extend this! Let's take a look\n", "plot_given_edges(rep16[0])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This was expected:\n", "\n", "By mu=2 condition, as 15 is not a nhbr of 0, they have 2 mutual nhbrs\n", " * As the nhbrs of 0 are 1-14, 15 nhbrs two of these.\n", " * We assumed 1-15 already; this prevents 2-15 (else 1,2 are nhbrs with two mutual nhbrs - 0, 15 - violating lambda=1) \n", " * So 15 nhbrs precisely 1 of vertices 3-14, and these 12 choices are equivalent\n", " * So to fix notation we can force this nhbr to be vertex 14\n", " \n", "Moreover, we could have applied this at the template stage to reduce the search space." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0]\n", " [1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1]\n", " [1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 2]\n", " [1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2]\n", " [1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1]\n", " [0 1 2 2 2 2 2 2 2 2 2 2 2 2 1 0]]\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# alternative template \n", "seed16 = get_supermatrix_template(seed15, forced_edges=[(1,15), (15,14)])\n", "print(seed16)\n", "plot_given_edges(seed16)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Wall time: 4.95 ms\n" ] } ], "source": [ "# Fill in the template\n", "%time super16 = templates_to_valid_graphs([seed16], verbose=0)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(super16)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:23:43.550333: Starting with 1 seeds\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "Currently 0 graphs, 1 candidates\n", "2020-07-08 15:23:43.556316: 1 valid graphs from templates\n", "\t1 reps from 1 candidates\n", "2020-07-08 15:23:43.556316: Reduced to 1 representatives\n", "Wall time: 5.98 ms\n" ] } ], "source": [ "# For convenience, can wrap up the templating, search, and reduction steps for a list of seed graphs\n", "%time rep16 = find_valid_supergraphs([seed15], forced_edges=[(1,15), (15,14)])" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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ZC2ZvcjISObNm4ednR3r169n8eLFHD16lE8//dRkkjFkrska9NtsnZiNjQ179uyhQ4cONGrUiN27d+v9HllhaWlJjx49WL16NeHh4YwdO5bg4GBq165NixYtmDdvHrdv31Y6TElKlawhS2br6dOneHp6smDBAlq2bMmECROyvYlCemJiYnByciJ//vxs2LBBr83gFStWJDAwkMqVK2fo/Li4OMqXL88///xDtWrV9BZHYoGBgXz++ec4Ozvz448/6r3ZXx9iYmLYt28ffn5+bNu2jerVq+Pk5ISTkxO2trZKhydJCWRClsxOeHg4v/zyC0uXLqV79+78v707j4uq7P8//hrFWFxJILfU0NRwKxX0xt0WFBUFF1LU0tK+tkqp3XR3G/3yrjRbtEwjTc1dsSgTNb3F7a4MXELNhSTDNdyRTQSu3x/HUcQBQWfmnIHP8/GYRzJz5pwPGvPmXOc61+f111+nWbNmNj+uLcM4IyMDDw8P0tPTS3Xr0bhx46hRowaRkZFWq6WwM2fOMGLECC5dusSyZcuoX7++zY51t3JycoiLi2PlypXExMTg7e19PZy9vb31Lk+UczJkLcqMI0eO8Nxzz9G8eXNycnLYvXs38+bNs1sYDxgwgHvuucfqYQyQlJREo0aNSn0fsHnY2pa/d3t6erJmzRr69++Pr6+vVW63spV77rmHgIAA5syZw6lTp3j33Xc5cuQIHTp0oG3bttfbZwqhBwlk4fASExMZMmQI7du3x8vLi0OHDjF9+nS7namZw9jZ2Zlly5bZZNi2tNePzdq2bYuTkxM7duywek0FVahQgYkTJ/Ltt9/y0ksvER4eTk5Ojk2PebcqVarEY489xhdffMHJkyeZNm0ax48fp1OnTjz88MNMnjyZQ4cO6V2mKEckkIXD+t///kefPn3o2bMnjzzyCMnJybzzzjt4enrarQZzGLu4uNgsjOHOA9lkMhEWFsbixYttUNWt/P392b17N8nJyXTs2JHk5GS7HPduOTk50b17d2bOnMmJEyeYMWMGqamp9OjRg5YtW/L222/z+++/612mKOMkkIVDUUqxdu1aunTpwvDhw+nTpw/JyclMnDiRatWq2bWWK1euEBISgouLC0uXLrXphKbi2i7eTlhYGMuXL+fq1atWrsqye++9l5iYGMLCwujQoQPR0dF2Oa61VKxYkS5dujBj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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# confirm this is what we expected from the individual steps:\n", "plot_given_edges(rep16[0])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Saturating vertex 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We proceed with a similar approach to the other search, but now handled as part of the logic instead of prescribing (non-)edges. \n", "\n", "Specifically, this version identifies the unsaturated vertex _v_ of highest degree, picking the lowest index one if there are multiples. We then iterate over the vertices u=0,1,2,...; checking whether the correct number of mutual neighbours are present (1 if u neighbours v, 2 if it does not). We pick the minimal u such that there is a missing mutual neighbour with v, and set our newly added vertex to be that mutual neighbour. " ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:02.963272: Starting with 1 seeds\n", "2020-07-08 15:24:02.969258: 2 valid graphs from templates\n", "2020-07-08 15:24:02.970255: Reduced to 2 representatives\n", "Wall time: 6.98 ms\n" ] } ], "source": [ "%time rep17 = find_valid_supergraphs_greedy(rep16, verbose=False)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:03.979553: Starting with 2 seeds\n", "2020-07-08 15:24:03.995511: 4 valid graphs from templates\n", "2020-07-08 15:24:03.996508: Reduced to 3 representatives\n", "Wall time: 17 ms\n" ] } ], "source": [ "%time rep18 = find_valid_supergraphs_greedy(rep17, verbose=False)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:04.841289: Starting with 3 seeds\n", "2020-07-08 15:24:04.874195: 8 valid graphs from templates\n", "2020-07-08 15:24:04.875201: Reduced to 6 representatives\n", "Wall time: 34.9 ms\n" ] } ], "source": [ "%time rep19 = find_valid_supergraphs_greedy(rep18, verbose=False)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:05.615477: Starting with 6 seeds\n", "2020-07-08 15:24:05.692265: 16 valid graphs from templates\n", "2020-07-08 15:24:05.694224: Reduced to 7 representatives\n", "Wall time: 78.7 ms\n" ] } ], "source": [ "%time rep20 = find_valid_supergraphs_greedy(rep19, verbose=False)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:06.422660: Starting with 7 seeds\n", "2020-07-08 15:24:06.543320: 24 valid graphs from templates\n", "2020-07-08 15:24:06.546277: Reduced to 15 representatives\n", "Wall time: 124 ms\n" ] } ], "source": [ "%time rep21 = find_valid_supergraphs_greedy(rep20, verbose=False)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:07.318416: Starting with 15 seeds\n", "2020-07-08 15:24:07.611666: 51 valid graphs from templates\n", "2020-07-08 15:24:07.618610: Reduced to 15 representatives\n", "Wall time: 301 ms\n" ] } ], "source": [ "%time rep22 = find_valid_supergraphs_greedy(rep21, verbose=False)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:09.990543: Starting with 15 seeds\n", "2020-07-08 15:24:10.382482: 60 valid graphs from templates\n", "2020-07-08 15:24:10.391458: Reduced to 33 representatives\n", "Wall time: 401 ms\n" ] } ], "source": [ "%time rep23 = find_valid_supergraphs_greedy(rep22, verbose=False)" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:11.561338: Starting with 33 seeds\n", "2020-07-08 15:24:12.531733: 131 valid graphs from templates\n", "2020-07-08 15:24:12.551679: Reduced to 29 representatives\n", "Wall time: 990 ms\n" ] } ], "source": [ "%time rep24 = find_valid_supergraphs_greedy(rep23, verbose=False)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:14.324109: Starting with 29 seeds\n", "2020-07-08 15:24:15.422167: 134 valid graphs from templates\n", "2020-07-08 15:24:15.443116: Reduced to 67 representatives\n", "Wall time: 1.12 s\n" ] } ], "source": [ "%time rep25 = find_valid_supergraphs_greedy(rep24, verbose=False)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:17.019501: Starting with 67 seeds\n", "2020-07-08 15:24:19.838992: 305 valid graphs from templates\n", "2020-07-08 15:24:19.889824: Reduced to 54 representatives\n", "Wall time: 2.87 s\n" ] } ], "source": [ "%time rep26 = find_valid_supergraphs_greedy(rep25, verbose=False)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:21.445116: Starting with 54 seeds\n", "2020-07-08 15:24:24.215699: 11 valid graphs from templates\n", "2020-07-08 15:24:24.217694: Reduced to 11 representatives\n", "Wall time: 2.77 s\n" ] } ], "source": [ "%time rep27 = find_valid_supergraphs_greedy(rep26, verbose=False)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeQAAAE/CAYAAACXV7AVAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzsnXdYFFcbxQ8mkRI7LEVAUEHAgv2zxViCBTvYEDSxt1gSY6yoWBKj0ST2HkURsWHXxBbUxBLUoFhibBgrKFFQ6rJ7vj8WkM4CuzsL3t/zzCM7c2fm3RX2zL1vMyBJCAQCgUAgkJRSUhsgEAgEAoFACLJAIBAIBHqBEGSBQCAQCPQAIcgCgUAgEOgBQpAFAoFAINADhCALBAKBQKAHCEEWCAQCgUAPEIIsEAgEAoEeIARZIBAIBAI9QAiyQCAQCAR6gBBkgUAgEAj0ACHIAoFAIBDoAUKQBQKBQCDQA4QgCwQCgUCgB7wvtQECgaAYEBUFbNoEXL0KxMQA5csDrq7AoEGATCa1dQJBicBA9EMWCAS5EhoKzJ8PHDmiep2Y+PaYsTFAAu7uwNSpQOPG0tgoEJQQhCALBIKcWbUKmDgRSEhQCW9uGBioxHnRImDUKN3ZJxCUMMSStUAgyE6aGMfH5z+WVI2bOFH1WoiyQFAoRFCXQCDITGgoMHEilsfHoxEAQwADcxk6G4ABgOPAW1G+eFE3dgoEJQwhyAKBIDPz5wMJCagMwBfA4FyG3QWwC4BVxp0JCarzBQJBgRGCLBAI3hIVpQrgIuEJoAcA01yGjgGwAEDpjDtJ4PBh4PlzLRsqEJQ8hCALBIK3bNqk1rCdUAlxp5wOGhiofR2BQPAWEdQlEAjecvVq5tSmHHgDYBqAo7kNSEgAwsM1bJhAUPIRM2SBQPCWmJh8h8wCMABA1bwGvXypIYMEgncHIcgCgeAt5cvnO+QEgKUALFO3hwD6QOVPTqdiRS0YJxCUbIQgCwSCt7i6AkZGAIAUAIkAFKlbYuq+EwCuAQhL3SoDWAPg89RLyD/4AHHVqunWboGgBCAEWSAQvGXgwPQf5wEwBvAdgIDUn+dBFXVtmWF7D0BFAGVSz6NCgTqLF6Nr167Ytm0b4uLidGa+QFCcEYIsEAjeYm6uqk1tYAA/AMyy+eVwSgQAt7QXBgYo3aMHrjx5gj59+mDz5s2wtraGj48PDh06BLlcrv33IBAUU0Qta4FAkJnQUKB1a/XKZmbFxAQ4dQpo1Ch9V1RUFHbs2IHAwEDcvn0bvXv3hre3N5o3b45SpcScQCBIQwiyQCDITkFqWadhYpJvg4l79+4hKCgIW7duRVxcHPr16wdvb2/UqVNHA0YLBMUbIcgCgSBnVq0CJ06EMj4e7+U1rhDdnkji6tWrCAwMxLZt21C+fHl4e3ujX79+sLe314T1AkGxQwiyQCDIldBVq/Bq8mS0fP0apY2MUCqnfsidOqn6IWdYpi4ISqUSf/zxB7Zu3Ypdu3bB2dkZ3t7e6N27N2QymYbeiUCg/whBFggEueLh4QEHBwdcPHIEv332maoC18uXqjzjOnVUUdkaFM3k5GQcPXoUgYGBOHToEFq0aAEfHx90794dZcqUyf8CAkExRgiyQCDIkQcPHqBBgwYYMWIEUlJSsHDhQp3e/82bN9i3bx8CAwPx+++/o1OnTvDx8UH79u1RunTp/C8gEBQzhCALBIIcmTx5MuRyOc6fP485c+bAzc0t/5O0xPPnz7Fr1y5s3boVf//9N3r16gVvb2989NFHIlJbUGIQgiwQCLKRkJCAKlWq4OjRo/j444/x/PlzGKVW8JKaiIiI9EjtmJiY9EhtV1dXGBgYSG2eQFBoxKOlQCDIRmBgIJo0aYL79++jRYsWeiPGAGBvb48pU6YgPDwchw4dQqlSpdCtWzfUrl0b33zzDe7fvy+1iQJBoRAzZIFAkAmSqF+/PhYsWIA9e/bAyckJX375pdRm5YlSqcS5c+ewdetW7Ny5E46OjvD29kafPn1gbm4utXkCgVoIQRYIBJk4c+YMhg4dihs3bsDBwQEHDx5ErVq1pDZLbeRyOY4dO4bAwEAcPHgQzZo1g7e3N3r06IGyZctKbZ5AkCtCkAUCQSb69OmDli1bwt3dHa1atcKjR4+KrW82Li4O+/fvR2BgIE6fPo2OHTvCx8cHHTt2FJHaAr1DCLJAIEjn0aNHcHV1RUREBLZs2YKLFy9i48aNUpulEaKjo7Fz504EBgbi+vXr6NmzJ7y9vfHxxx8XPVI7KgrYtAm4ehWIiVH1lXZ1BQYN0mietqBkIwRZIBCk4+vri5iYGCxbtgzdu3eHl5cX+vXrJ7VZGufff/9FUFAQAgMD8eLFi/RI7Xr16hVsNSA0FJg/HzhyRPU6p0pm7u6qSmaNG2v2TQhKHEKQBQIBACAxMRF2dnY4ffo0qlWrBjMzM9y5c6fEl6+8fv06AgMDERgYCCMjI/j4+KBfv36oXr163iemNeBISFAJb24Uota34N1EpD0JBAIAwI4dO1CvXj04OTnh/PnzcHBwKPFiDAC1atXCN998g3v37uHnn3/Gs2fP0KxZMzRt2hRLly7Fs2fPsp+0ahWWjx+PRvHxMCQxMMOhGwAaAaiYurmRuBEfrxLvVat08ZYExRQxQxYI3jVy8HfS1RXtAwMxft48dOnSBTNmzEBKSgrmz58vtbWSIJfLceLECWzduhUHDhxAkyZN4O3tDQ8PD5S7dQto3RrB8fEoBeBXAAkANqWe+yp1swOgBLACwHoAV4Ec+0ULBGkIQRYI3hXy8HcqDA0hT05G6e7dUWraNDQZMwbfffcd2rRpI5Gx+kN8fDwOHDiAwMBAhISE4GiZMmj89ClKpX51+gJ4hLeCnJEUAGsAfA0gHlAtX3t4ALt368Z4QbFCCLJA8C5QAH8njYzwpVKJBTExMDQ01J2NxYCXt26hbO3aeD8lJX1fboJcAcAbqGbJc1LHAQCMjIB//xXR14JsCB+yQFDSSRPj+Pi8xRgASBgkJOA7uRyGP/+sG/uKERX37cP777+v1thXAGIALAdQP+MBAwOVy0AgyIJ6v1kCQXHlXc8PDQ0FJk7E8vh4bAIQDqAf3s7mIgBUBfBhhlMmA5ihVKpEvHFj4e/MyNWrmVOb8uFDACMByADcBGAOqFYpwsO1Yp6geCMEWVAyySs/NDgYmDXr3cgPnT8fSEhAZaiWTNMCkLLyCjl8GSQkqM4X/s63xMQU+BQlVP7jx0gVZAB4+VJzNglKDGLJWlDyWLUKaN0a2LtXJcRZZzQJCap9e/eqxpXUVJSoKNUDCQlPAD0AmBbkfBI4fBh4/lw79hVHypdP/zEFQCIAReqWmLrvGIC/UvfFApgAVfqTS8brVKyoE3MFxQshyIKSRQH9pSjJ+aEF8FPaAbABMAjAi4wHhL8zM66uqqAsAPMAGAP4DkBA6s/zoFpt6AegPIDqAO4A+AVAWgNLGhsDdero1m5BsUAIsqDkEBr6tlgDkKlYw1YAZTJsJgAMAFwC3oryxYs6NljLqOHvNAMQCuABVJ/FawA+GQcIf2dmBg5M/9EPALNsfgB6A/gbqgjr5wAOA3DNcInkxETsq1gRSqVSFxYLihEi7UlQcvD0RPCePTkWa8jKJgBzoZq9GADFJj80JSUFMTExiImJQWxsbPrPOe0bduAAGj55kun8vHJmAeAZACuoooPLpe3s0gU4cEA7b6g44ukJ7t0Lg0J8ddLAAJHNmqGHQoE3b95g5syZ6NWrV9GbWwhKBCKoS1AySPWXeqa+vAiV8OSGP4BPkSrGQGZ/qZairxMTE3MVT3X3JSYmoly5cihfvnz6lvV1xYoVYWdnh0rh4UAWQc6PtM8jk9QIf2cmEr/8Eti3D0aFEGQDY2NYLlmCcw0b4tdff4Wfnx9mz56dLszvvfeeFiwWFBeEIAtKBgXwcz4AcBpAtizbNH/p119n2k0ScXFx2YSyoKIKIFcRTdtnZWUFZ2fnXMd9+OGH6ncjevMGuHwZSExEClQBRxkDkN6Hapm6AgBHAC8BjAPQGir/JwBVUwTh70wnLi4O3fz84NOgAQbduAGD+Hj1TzYxUTWYaNQIBgA6duyIDh064OjRo5mEuXfv3kKY31HEkrWgZNC/P7B1a/rLvJZm5wI4ASAkh2Mnra3hV61aJjF9/fo1jIyMchXRvF5n3GdkZJTDHbVIVBRgZwckJsIPwOwsh2cBcAIwDUAUVEvU7QAsBGCZNkhUlUonNjYWnTt3hqOjI9atW4f31q7VWLcnkjh27Bj8/Pzw8uVLzJw5E3369BHC/I4hBFlQ7FEoFEju0AHGJ06k78tLkB2hEqFBORx71rgx/lm0KJOwlitXTu3qTHqHp6cqvaswf+bFxK+uC16+fImOHTuiQYMGWLFixVuf78WLqlztw4dVn1dChizvtH7InTqp8t3VKLBCEsePH4efnx/+++8/zJgxA3379hXC/I4gBFmfederTKWiUCjw+PFjREREICIiAg8ePEj/OSIiAo8ePULge++hZ4Yvw9wE+Q8A7aEKXiqb080GDAA2b9bOG5GC0FBVrnVBllbTEJ2JAADR0dFo164dPv74Y/z44485uwyeP1f9rYaHq4p+VKyoWuofOLBQf6skceLECfj5+eHFixeYMWMGvLy8hDCXcIQg6yN5VZlKe+ouQVWmUlJS8OTJk0wim3F7/PgxZDIZ7O3tYWdnB3t7+0ybra0tjJYuBWbNQkqqv3Q2VIK8Dipfadr8djhU/tMcJdfYGJg9O5sPudiTMTdbXdL8nbkssb4rREZGol27dujUqRPmz5+vvv9eQ5DEyZMn4efnh6ioqHRhLrYrNoI8EYKsbxSgK09+fil9ISUlJdMMN+v25MmTdMHNabO1tc2/61Cqv9QvMTFHX6kfVEJsCWA3gE9yukZJ9peWwN8rbfP48WO4ubnBy8sLM2fO1LkYZ4QkfvvtN/j5+SEyMhK+vr7o16+fEOYShhBkfaKYzmRSUlLw6NGjbEKbtrT85MkTmJub5ym4pUuXLrohwl+aN3n4OxMMDGBkaAiDAvg7SzL//vsv2rZti6FDh2LKlClSm5MOSYSEhGDWrFl49uwZfH194e3tLYS5hCAEWV/Ix9d3G0AdAL2gKtOXCS37+uRyebrgZvXfRkRE4OnTp7CwsMgkshmXljUmuPkh/KXqkcXfueP4cSQ5OmLAiRMlc3WggNy7dw+ffPIJxo8fjy+++EJqc3IkTZj9/Pzw5MkT+Pr6wsfHRwhzMUcIsr6Qz+yuPVSVp+yQgyAXcXaXUXBz2p49ewZLS8sc/bf29vawsbHRjeCqQzFdZZASKysr9OnTB0uWLJHaFMn5559/4ObmhqlTp2JUMfl9SBPmR48ewdfXF/379xfCXEwRgqwPZMgXzYkgAMEAakJV6jGbIAN5+j/lcjkePnyYq+BGRkbC0tIy1yVlGxsbfPDBB5p7v9pGTX8pDQyQAODqgAFo6u+vO/v0iMTERJQvXx7Dhg3D8uXLpTZHUq5fv4727dtj7ty5GDx4sNTmFJiQkBDMnj0bDx8+xPTp09G/f//i9XcrEIKsFyxcqOrPm4MgxwJoBFUhiw3IXZCVRka4O2AATjdpkm1pOTIyElZWVjmKrZ2dXfETXHVQMz/0Xt++aDpmDPbu3YvmzZtLZ69EnDhxAp9//jlsbW1x7Ngxqc2RjLCwMLi7u2PRokXw8fHJ/wQ95tSpU5g9ezYePHiA6dOnY8CAASXv77uEIgRZH8hSZSoj4wFUBjAZqkjhXGfIAI5aWGCbu3u2pWVra+t39w9SjfzQI0eOYMiQITh37hzs7OwkNVfXTJ48GcnJyQgICEBUVJSkkcRSERoaii5dumDFihXo1auX1OZojNOnT2P27Nm4f/8+fH19hTAXByiQni5dSNWcLdP2F8CaAJNSX88C6JPDuPStSxep30mx5aeffmKdOnUYGxsrtSk6pV69ejxz5gzNzMz4+PFjqc3ROX/88QdlMhn3798vtSla4/Tp0/zkk09YtWpVrl+/nsnJyVKbJMgF0fNLHyhfPsfdIQAiAFSBKn92EVQ5tA1yu47oylNoxo0bh6ZNm6J///5QKBRSm6MTIiMjERERgaZNm6Ju3bq4cuWK1CbplFOnTqF79+7YvHkzunbtKrU5WqNly5Y4fvw4Nm/ejKCgINSoUQPr169HcnKy1KYJsiAEWR9wdVUFZWVhOIC7AMJSt5EAOkPV6zcboitPkTAwMMDy5csRGxuLadOmSW2OTjh+/DjatGmD999/H/Xq1UNYWJjUJumMo0ePonfv3ti+fTs6duwotTk64aOPPsKxY8cQEBCAHTt2oEaNGli3bp0QZj1CCLI+MHBgjrtNoJoZp21lABgByDFTlMz1OgL1KF26NHbt2oXdu3djUwHaORZXjh49ivbt2wPAOzVDPnjwIPr374/g4GC0bdtWanN0TosWLXD06FEEBgZi165dqFGjBtauXSuEWR+Qes1ckIqHB2lgkLt/OI9NaWBAenpK/Q5KDDdu3KBMJuOZM2ekNkVrKJVKWlpa8u7duyTJK1eu0NnZWWKrtM/u3btpbm7OCxcuSG2K3nD27Fl26NCBVapU4erVq5mUlCS1Se8sYoasL0ydqlp2LgQJJA65uoIiYF4juLi4YPPmzejduzciIiKkNkcrhIeH48MPP0S1atUAAM7Oznjw4AHiC1PlrJgQFBSE0aNH48iRI/jf//4ntTl6Q7NmzfDLL79g+/bt2Lt3LxwcHLB69WokJSVJbdo7hxBkfaFxY1W1KBOTgp1nYoIXU6di6u7d6NGjB549e6Yd+94xOnbsiKlTp6Jr1654/fq11OZonIzL1YBqud7JyQnXrl2T0Crt4e/vjwkTJuDYsWNo0CDXsMh3mqZNm+LIkSPYuXMn9u/fD0dHR6xatUoIsw4RgqxPjBqF64MHI97AAMwvH9TAIL3kY5Vvv8XFixfh6uqKunXrYtu2bWK2rAHGjh2L5s2bw9vbu8RFXmcVZEDlRy6JgV1r166Fr68vTp48iToi8DFfmjRpgsOHD2PXrl04ePAgHB0dsXLlSiHMukDqNXPBW2JjY2lnZ8fzy5erfMJGRqSxcWafsbGxar+nJxkamu0aoaGhrFmzJj09PRkZGSnBuyhZJCcns3Xr1vz666+lNkVjxMfHs0yZMnz16lWm/T/++CNHjx4tkVXaYcmSJbSzs+OdO3ekNqXYcuHCBXbq1Ik2NjZcvnw5ExISpDapxCIEWY8YO3YsBw4c+HZHVBS5cCE5YICq6MeAAarXUVF5XicxMZFTpkyhhYUFd+zYoWWrSz4vXrygg4MDf/75Z6lN0Qi//vorW7RokW3/yZMnc9xfXFm4cCGrVavGiIgIqU0pEfz555/s3LkzbWxsuGzZMiHMWkAIsp5w9uxZWllZMTo6WmPXPH/+PJ2dndm7d29G5SPigry5efMmZTIZT58+LbUpRearr77i7Nmzs+2Pjo5m2bJlqVAoJLBKs8yZM4c1atTgw4cPpTalxBEaGsouXbrQ2tqaS5cuFcKsQYQPWQ9ISkrCkCFDsHTpUlSqVElj123SpAkuX74MOzs7uLq6Ijg4WGPXftdwdnZGQEAA+vTpg/v370ttTpE4evQoOnTokG1/pUqVUKFChWL9/khi+vTpCAoKwqlTp2BjYyO1SSWORo0a4cCBA9i3bx+OHTuG6tWrY9myZUjMpVudQH1Ecwk9YObMmQgPD0dwcLDWivufPXsWAwcORKNGjbBs2TKYmppq5T4lnWXLlmHNmjU4e/YsypUrJ7U5Bebp06eoVasWnj9/jvfeey/b8a5du2LgwIHo2bOnBNYVDZKYOHEiTp48iaNHj0KWQytSgea5dOkS5syZg4sXL2Ly5MkYNmwYjAuawhkVpWoCc/UqEBOjKifs6goMGpRjS9kSi7QTdMHVq1cpk8l0Utg/Li6OX375JStXrsx9+/Zp/X4lEaVSyZEjR7Jz585MSUmR2pwC4+/vz169euV63NfXlzNmzNChRZpBoVBw9OjRbNy4sUbdPgL1uXTpErt3787KlSvzp59+Ynx8fP4n/fmnqiiSkZFqyymA1cNDNe4dQAiyhKSkpLBx48Zcu3atTu97+vRpVq9enQMGDOB///2n03uXBJKTk9m2bVt+9dVXUptSYLy9vfP8fdu5cye7deumQ4uKTkpKCocOHcrmzZtnixwX6J7Lly+zR48etLKy4o8//pi7MK9cSZqY5F+h0MBANW7lSt2+EQkQgiwhixcvZps2bahUKnV+7zdv3nDs2LG0trbmwYMHdX7/4k50dDQdHBy4YcMGqU1RG4VCQZlMxvv37+c65p9//mGVKlV0Z1QRkcvlHDBgAFu3bs3Xr19LbY4gA3/99Rc9PDxoaWnJH374gXFxcW8PpolxQcoEvwOiLARZIu7evUtTU1Pevn1bUjt+++03Vq1alYMGDeLLly8ltaW4kRZ5ferUKalNUYvLly+zRo0aeY5RKBQsU6ZMsVg5SU5OZu/evdmuXbvMX/ZFITKSXLCA9PFRpRr6+KheiyyFQhMWFkZPT09aWlpy8eLFTDh9monGxhwMsArAMgDrATycQXzjAI4CaAqwHMCWGUU5h/oLJQUhyBKgVCrp5ubGhQsXSm0KSfL169ccNWoUbW1t+csvv0htTrHi6NGjmZo06DPfffcdx4wZk++4Zs2aMSQkRAcWFZ7ExER2796dXbp00UzajfBlap0rV66wZ8+ePGRoyFiAswDeB6gAeCBVmO+nfuY+APsCjAKYAvBixuXrEtxIRwiyBPz8889s2LAh5XK51KZk4tixY7Szs+OwYcMYExMjtTnFhmXLlrFmzZp6/5m1bduW+/fvz3fcqFGj+NNPP+nAosIRHx9Pd3d3enp6aqYzkfBl6o7ISCpKl87x860DcBfAvwGWBRiT2/+DkVGJXbEQecg65unTp5g8eTI2bNiA999/X2pzMuHm5oarV6/CwMAArq6uOH78uNQmFQs+//xztGrVCv369dPbmtdxcXG4cOECWrdune9Yfe6NHBcXh65du6JChQrYvn07SpcuXbQLrloFTJwIxMervu7zglSNmzhRdZ6g4GzahFKlsstOJIB/ANQCcAGAHYBZAMwA1AGwO+NgAwNVilQJRAiyjhk7diyGDRuGunXrSm1KjpQrVw5r1qzBmjVrMHjwYIwaNapEdjvSJAYGBliyZAmSkpIwadKkwl0kKgpYuBDo3x/o2lX178KFwPPnGrHx9OnTaNiwIcqWLZvvWH1tMvH69Wu4u7vD1tYWW7ZsKfoDbWgoMHEikuLjMQQqESgLoD6AI6lDIgAYACiTYZubJsoXLxbt/u8iV68CWQqIyAH4APgMgDOARwCuASgP4AmA5anHbqadkJAAhIfryGAdI/UU/V1i9+7ddHJyKjal5l69esXBgwfT3t6eJ0+elNocvee///6jo6Mj169fr/5JOvJdfvHFF5w3b55aY9+8eUNjY2MmJycX6Z6a5OXLl2zatCmHDx+uudKeHh6kgQHf5OHPvA8QAOU5LV+XYF+m1ujSJdPnqEj1FbsDTE7d9wPAD7J85l0A/pTx8+/SRep3ohWEIOuI//77j5UrVy6WtZAPHTpEa2trjhkzhm/evJHaHL3m77//prm5uXpBUTr0XdasWZOhBYhOrVGjBsPDwwt9P03y4sULNmjQgOPGjdNcimBkZPYHoBz8mbkKcgn3ZWoNH5/0z08JcCDA1gDjM3yux9UR5AEDpH4nWkEsWeuIr7/+Gj169EDLli2lNqXAdOrUCeHh4YiNjUXdunVx5swZqU3SW5ycnLB161b07dsX9+7dy32gDn2Xjx49QmRkJOrXr6/2OfXq1dOLZeuoqCi0adMGbm5u+OmnnzRXWjYPH2RGf2YadgBsAAwC8CJtZwn2ZWoNV1fAyAgAMAqqZegDADIW2vwYQBUA8wGkAPgDQAiA9OrrxsZASe1rLfUTwbvAiRMnaGtrq/dRuOqwb98+Vq5cmV988YXmcj9LICtWrGDNmjVzrhz155955mFeB9gQYIXU7ZPUfYXNw9ywYQP79u1boHO++eYbTpw4sUDnaJrHjx/T2dmZM2fO1NjMWC6XMzY2lgk9e+Y4M05O/byHp75+DTA0dbb2DGBPgO3fgZmatrhz9iyTSpViROrKgyHADzNsAamf6zWATQGaAHQBGPyOrEzoV5hvCSQ+Ph7Dhg3DqlWrimUzgqx069YNLVq0wLhx41CvXj1s2rQJzZs3l9osvWP06NG4fv06+vXrhwMHDmRu5DB/PlISEmAL4BRUs4HDAPoACAdQGcAuqGZlSgArAHgBuAqoAlrmzwd2Z4o7zZOjR4+iffv2BbK/bt26WLJkSYHOKQxKpRKJiYlISEhI3+Lj43H//n18/vnncHNzQ506dRAQEJDpeNbx6r5OSUmBiYkJdicnI2u/KyWAAQBKQxVIBKiCuBql/myRut8KQCyAcgDw8qXWP6OSwJMnTzB79mzs3r0bfzg7o8bNm2AeK0O1AJzL6YCBAdCpU4ltOCG6PWmZiRMn4smTJwgMDJTaFI0THByMzz//HD4+Ppg7d27BO7yUcORyOTp16oQ6derghx9+UO2MigLs7LJFmgKAK1SpHhn7LKUAWAPgawDxaTuNjIB//1XrS0mhUMDCwgJ//fUXbG1t8x1PEsnJybh79y5atmyJCxcuZBLMoohhTvuSkpJgaGgIY2NjmJiYwNjYGO+99x7u378PW1tb1KhRA8bGxulb2hh1X2fdV7p0adWyd//+wNatb983gMFQRVUfRuYl1IxEArAE8AqqKGAMGABs3pzv5/qu8urVKyxYsABr167FkCFDMGXKFFS6exdo3VrlhikoJibAqVNAo0b5jy2GiBmyFgkNDUVAQADCS2iIvqenJ1q2bIkxY8agfv368Pf3R5MmTaQ2S2/44IMPsGPHDjRt2hQuLi4YNmxYrj7HnPyWFQC8gWrmNifDfiWJJ998gwe9e+crgPfv34dCoYCvr6/agvnee+/BxMQEsbGx+OSTT1CmTBm1hK9ChQqwsrIqkHgaGhpmykv9559/4Obmhh9//BGjR4+S7Vu6AAAgAElEQVTW9H/JW1xdVasMqQ9Gaf7M48gsxhdS/x8cAbwEMA5Aa6SKcUn2ZRaRhIQELF++HN9//z26deuGK1euvO1NXakSsGjR2xgKdTExUZ1XQsUYEDNkrSGXy9GoUSNMmjQJPj4+UpujdXbs2IFx48Zh4MCB8PPzg1Fq4IZAJTItW7bE9u3b0Xr9+kwzM0CVh+kOoDpUs+GMxAHwh2r5unOG/QcrVsR8F5d8he+PP/5AYmIiPvvsM7VnlmnL65988gkmTpwId3d3bX00mbhx4wbatWuHOXPmYMiQIdq9WYaVigcA7AEYIvMMZQ1UhRqmAYiCaom6HYCFUM2SC7JS8a6QkpICf39/+Pn5oVGjRvj222/h4uKS8+C0wMaEhDwDGxUASpmYwGDRImDUKO0Yri9I6cAuycybN4/u7u6SdHKSimfPntHT07PAKTYlnZSUFG7atInly5fntWrV8s3DzLopAFYCGFmIPMxWrVrx0KFDhbJ7woQJnD9/fqHOLShhYWG0tLTkli1bdHI/kul5yGp3G8qaiibykNNRKpUMDg6mi4sLW7VqxXPnzql3Ymio6nM0MlLl3Wf8jI2NqTQy4u8WFlw/cqR234CeIARZC9y4cYNmZmZ88OCB1KboHKVSyW3bttHc3JzTp09nYmKi1CbpDLlczlu3bjE4OJjz5s1jv3796OrqSiMjI9rb27N27drcnqGOb255mFk3OUAjgJcLGN0bGxvLDz/8sNC54/7+/vTy8irUuQUhNDSU5ubm3LFjh9bvlYk//yx4C8DULen99ylXV3RKOCEhIWzatCldXV15+PDhwk1CoqLIhQtVv9dduqj+XbiQjIrigwcPaGpqyps3b2reeD1DCLKGUSgUbNGiBZcvXy61KZLy9OlTduvWjXXq1OGlS5ekNkejyOVy/v3339y9ezfnzp1LLy+vdOGtWrUqO3fuzEmTJnHTpk0MDQ3NJIh7mjVjYqlSJMARAJukptZk/LI/miq+KVAV2B8L0ApgQoaZA9XoFHbgwAG2adOm0O/zypUrdHZ2LvT56nD27FnKZDLu3btXq/fJlZUrqSygKCuNjbnE2Znt27d/p1uWhoWF0d3dnfb29tyyZYvmKqjlwJIlS9iyZUut3kMfEIKsYZYvX84WLVqU+F8cdVAqldyyZQtlMhlnzZqlmc48OkQul/PmzZvcvXs358yZQy8vL9apUyddeLt06cLJkyfT39+fFy9eVGsmKn/8ON88zB0AnVJfm6UuZ18pRB7m2LFj+d133xX6/SclJdHY2Fhr+eYhISE0MzPj4cOHtXJ9dfmle3cmlCpFZQEqpsnlco4bN45OTk68deuWpPbrmnv37tHHx4cWFhZcunSpTlbBUlJS2KRJE65Zs0br95ISIcga5F1aWikIjx8/ZqdOnVivXj2GhYVJbU42kpOTefPmTe7atYtz5sxh3759Wbt2bRoZGbFatWrs2rUrJ0+ezM2bN6stvHmR1LkzUwrjtyyg79LJyYmXL18ukq1169blhQsXinSNnDh27BjNzMx4/PhxjV+7IISFhdHMzIxP9u/P05dJIyPV8SyxEWvWrKG5uTmPHTsm0TvQHZGRkRw7diwrVapEPz8/xsbG6vT+V69eVf1fPXmi0/vqEiHIGkKpVNLd3V3tAv7vGkqlkhs3bqRMJuPcuXMlaVyQnJzMGzducOfOnZw9ezb79OmTLrzVq1dn165dOWXKFG7evJmXLl3SXiWyP/+kIo86ynlualbqioiIoEwmK/JKzWeffca1a9cW6RpZOXToEGUymeR13RMSEli7dm1u2rTp7c48fJm5ERISQgsLCy5fvrxEBnHGxsZy1qxZrFSpEseOHcvIyEjJbJk+fTp79uwp2f21jRBkDREQEEBXV1e96pCjjzx8+JAdOnRgw4YNtda8IDk5mdevX+fOnTvp5+fHPn36sFatWunC261bN06dOpVbtmzh5cuXpSkBunIlUwwNCy7GajaYWLt2Lb29vYts5g8//MDPP/+8yNdJIzg4mDKZTP0oXC0yceJEenh4aERE7969y1q1anHkyJEl5jsgMTGRS5YsoYWFBfv378+7d+9KbRITEhJYo0YN7tmzR2pTtIIQZA0QFRVFCwsLkeqjJkqlkuvWraOZmRm//fZbyuXyQl0nKSmJ169f544dO+jn58fevXuzZs2aNDQ0pIODA7t3786pU6cyICCAly9fZnx8vIbfSRFZuZLJpUvnu3ytMDBgfKlSVBQgULBXr16ZZ36F5MSJE2zRokWRr0OSQUFBtLCw4MWLFzVyvaIQEhJCKysrRmmwJnJMTAy7dOnC1q1b88WLFxq7rq5RKBQMCAhg1apV6e7urnduppCQEFpbW+dcJ76YIwqDaABvb29UrlwZixYtktqUvImKUlWKunoViIkBypdXVSwaNEiS4gYPHjzAkCFDEBsbC39//1wLCCQnJ+P27du4fv06bty4kf7vvXv3YGtri5o1a6JWrVrp/zo5ORWfMp4XLyLMywsu9++jtKEhDBIS3h4zNgZI0N0dIx88QLU+fTB58uR8L6lQKCCTyXDt2jVUrly5SOZFR0ejatWqePXqVaaKWgVl8+bNmDJlCn755Re4uroWyaaiEhsbC1dXV6xYsQKdO3fO/4QCoFAoMG3aNOzevRv79+9HzZo1NXp9bUISR44cwdSpU2FsbIwFCxagVatWUpuVI8OHD8f777+PlStXSm2KZpH4gaDYc/DgQVavXl2/Ox/9+aeqCIKRUfYesGkBKx4eqnE6RqlUctWqVTQ1NeW3337LsLAwbt++nTNnzmSvXr3o4uJCQ0NDOjo6skePHpw+fTq3bt3KsLAw/ZvxFhK5XM7erVtzT4sWufouIyIiaGZmptZs5fz586xdu7bG7LOxsSnScuXatWtpbW3NGzduaMymojBw4EAOGzZMq/fw9/enTCYrdFEWXXPu3Dl+/PHHdHZ2ZnBwsN77wl++fMnKlSvz999/l9oUjSIEuQjExMTQ1taWJ06ckNqU3Fm5UuV7LEBKh7ZJTExkeHg4g4KCOHPmTPbs2ZPVq1engYEBjYyM2K5dO06fPp2BgYEMCwtjQkKC1m2SmpcvX9LJyYmrV6/OdcymTZtYp06dfNNM5syZwwkTJmjMti5dunD37t2FOnfZsmWsUqUKb9++rTF7ikJwcDCrV6/O169fa/1eZ8+epZWVFb///nu9FbgbN27Qw8ODNjY23LBhQ6HdR1Kwc+dOuri4lKjiQ0KQi8Do0aM5ZMgQqc3InTQx1lLgUH4kJiby6tWr3LZtG2fMmEFPT086OzvT0NCQTk5O9PDwoK+vLwMDA3nlyhXGxcVx2bJlNDMz4w8//MCUlBSN2FFcuH37Ni0sLHJ9wFMqlezRowcnTZqU53U++ugj/vLLLxqza/r06Zw5c2aBz/v+++9ZtWpV3r9/X2O2FIWnT5/SwsKCf/zxh87u+eDBA9arV4+fffaZXgnHv//+yyFDhlAmk3HhwoXFcrVJqVSyW7dunDVrltSmaAwhyIXk9OnTrFy5Mv/77z+pTcmZ1LKAy6Bqdl8a4GdZxPd4agEKY6jKN0YUMLUmjcTERF65coXbtm2jr68vPT096eTklC68np6enDFjBrdt28arV6/m+8V0584dtmzZkh999JHezKx0xcmTJ2lubs5//vknx+NRUVG0tLTkmTNncjweExPDMmXKaNSFsmPHDnbr1q1A58ydO5eOjo78999/NWZHUVAqlezSpQunTZum83u/efOGnp6ebN68OZ89e6bz+2ckOjqaEydOZKVKlThlypRiX2ns4cOHNDMz4/Xr16U2RSMIQS4EaaH3wcHBUpuSO6mF83cD3ANwZBZBfg6wXGpVqASAE6Eq45hX8YmEhAReuXKFgYGB9PX1pYeHB2vUqEFDQ0M6OzuzZ8+enDFjBoOCgtQS3rxQKBT86aefaGpqyqVLl75Tlc9Wr15NJyenXL8s9+3bx2rVquVYmGHv3r1s166dRu35559/aGdnp9ZYpVLJ6dOns2bNmnpVwGHt2rWsX7++ZNXiFAoFZ8yYQTs7O0miluPi4jh//nyamZlx+PDhfPz4sc5t0BYrVqxg8+bNS8R3hBDkQjBt2jT9Tk6PjMwWvDU9iyCvAdgsw+s3UDUwuJmWalO6NHetWsXp06ezR48e6cLr4uLCnj17cubMmdy+fTvDw8O1+iV369YtNm/enK1atdKLPEhdMW7cOLZr1y5Xn97gwYNzDEwaPXo0v//+e43aolAoWKZMmXxnU0qlkhMnTmTdunU1mk5UVO7cuUNTU1Neu3ZNalMYFBREMzMznT3MJycnc82aNbS2tmavXr34999/6+S+ukShULB58+ZcqYP4F20jBDknIiPJBQtIHx9VxKuPj+p1VBT/+usvymQyPn36VGorc2fBgnwFeVzqrDnjmFoAd6X+HG9gwM116nDWrFncvn07r127JtnsIiUlhYsWLaKZmRlXrlxZIp6E80Mul7NDhw4cM2ZMjsdjYmJob2/PAwcOZNrv4ODAK1euaNyeZs2aMSQkJNfjCoWCY8aMYcOGDRkdHa3x+xeWlJQUNm/enD/88IPUpqQTGhpKGxsbzps3T2vBXkqlkjt37mSNGjXYtm1b/ilBBoUuuX79Os3MzPjo0SOpTSkSQpAzkk96kNLIiCfKl+c+X1+pLc0bH59swVpZBXkwwMlZxjQHuDHjPjVa/OmSmzdvskmTJvzkk08YEREhtTla59WrV3R2ds71yT+tuMXz589JqqpFWVhYaOVLfuTIkVyyZEmOxxQKBYcOHcpmzZrpXbGGb7/9lm3atNG7h7jHjx+zcePG9PLy0nhA1fHjx9moUSPWr1+fv/76q95GeGuaWbNmsXv37sX6/QpBTkPN9CAFoGrXps/LI1265CvI4wCOyjKmdoYZMgHVdfQMuVzOBQsW0MzMjGvXri3Wf3zqkBZ5nVsThq+++oo9e/ZMz+ceoKWHqFWrVnHQoEHZ9svlcg4YMIAff/yxzpsN5Mfly5f1ui95fHw8+/Xrx0aNGmnEp3vp0iW2a9eO1atX57Zt2/TuIUTbJCYm0sXFhbt27ZLalEIjBJmUPD1I46gxQ16TOiPO6EM2zuBD1scZckauXbvGRo0asX379noTyastfvvtN5qbm+fY5i8hIYG1atXili1b6OHhwS1btmjFhnPnzrFBgwaZ9iUnJ7Nv3750c3PTu8I4CQkJrFmzJjdv3iy1KXmiVCr5zTff0NrautDLyrdv32bfvn1pZWXFFStWFLs2p5rkzJkzrFy5crGNHheCnJoelFXAfABaAiwL0BHgutxEWR/rV2fwIctTo6inAOyf+rMcYBRUUda7UvdNQoYoa4CJ773Hv4cO1etcYLlczm+++YZmZmbcsGFDiZ4tr127ljVq1Mgxze7y5cuUyWQsW7as1mIb3rx5Q2Nj4/TGCYmJiezRowc7deqkl4VbJkyYkL5yUBwIDg6mmZkZt23bpvY5T58+5ejRo2lqasq5c+fqpNhJcWDkyJEcPny41GYUCiHIqelBWcX2GsDE1J9vArQAeDGrIBegN61OyRBlPQsgsmyzUu0/BlUeshHAVgDvZ3hv8vffp1vdurS2tubUqVP1ugn7lStXWL9+fbq7uxf7oI68+OKLL+jm5pZjN6Hhw4ezTJkyWl2mdHR0ZHh4OBMSEtipUyd6eHjo5Wzs5MmTrFy5crpvvbgQFhZGOzs7+vr65vz/mBpsmtSnD286OHB76dLc/9FHfCH6r2fi1atXtLa2zjMIUV95twU5h/SgnLa/U2fL23M6bmSUZ69UyfDwoDK/cpm5bRkeNMLDwzlx4kRaWlqyefPmXLt2rd4F7pCq5dPZs2dTJpPR39+/2MyMCoJcLmfHjh1zbIc4Y8YMWllZ5Rp4pQl69+7NDRs20M3NjX379tXLNoOvXr1ilSpVePjwYalNKRSRkZFs0aIFPT09+ebNG9XO1GBTpaEhkz/4IFuwqZS16PWVPXv2sEaNGnq5epMX77Yg55AelHEblepXBcD6AF/nNM7YWNUEQM9IOXeOie+9VzhBzmEpPjk5mQcOHGDPnj1Zvnx5ent789ixY3q3pP3XX3/R1dWVXbt21avCFJri1atXdHFx4YoVKzLtb9asGTdu3EhTU1Pe1NKMacaMGbSxseGnn36qd//vaXz66accOXKk1GYUicTERA4cOJB169bli3nzqDQxoUKPatEXFzw9Pemr7xkxWXi3BTmH4KesWwrAMwDnAkzObZyeBT/J5XJ6e3vzB0dHKo2NNR6s9uLFCy5dupQNGjSgra0tp0+fnmupRylISkrijBkzaG5uzoCAgBI3W75z5w4tLCx47NgxkqrGFGXLlmVCQgJXrlzJRo0aaXz2mtb8wtraWm+jd3ft2kUHB4e3M8tijFKp5K8eHlyMnEvfngPoBrAiQDOAvQA+UfPv913h8ePHNDMzY3h4uNSmqM27Lcg5pAflto0AuCS343qUHpSUlERPT0927NhRld+o5W5PV65c4YQJE2hubs4WLVpw/fr1jImJ0dK7KxgXL15krVq12KNHD8lrCGuakJCQ9Mjr3bt3s2PHjiRVX+QdOnSgn5+fxu4VHR3Nhg0bctCgQZTJZHr5gPPkyROam5vz3LlzUpuiEcLWrWNCqVK5lr49DFXZ2xiAcQAHAeyQxwrXu8qaNWvYpEkTvV3Rycq7LchqzJDTtiFQ5e7mdOwXc3NOmDCB27Zt4507dyT7wkpISGDnzp3ZvXv3zHWkQ0NVPmEjI9USe9YldyMj1fEi/BEnJydz37599PDwYPny5dm/f38eP35c8tlUYmIip06dSnNzcwYFBUlqi6ZZt24dHR0dOXDgwEyVqB4/fkxzc3ONVGeKjIykq6srJ06cSIVCwUqVKumdK0CpVLJTp07FbnkyJ8LDw9m1a1ceMTbOtEydNW0x63YJYJmMD9f6GGwqAQqFgi1btuTSpUulNkUt3m1BzsWHHAlwG1Q+4xSAvwA0Abg3hz8EpZERbw0dym+//Ta9r2jFihXZrl07Tps2jXv27OHDhw+1LtJv3ryhm5sb+/Tpk/tyZVSUyt89YIBqVj9ggOq1hoPSoqKi+NNPP7FevXqsUqUKZ8yYwTt37mj0HgXlwoULdHZ2Zu/evfWqznJR+eKLL2hkZMS//vor0/6goCA6OTkVqQrUkydP6OLiQl9f3/Tf37Zt2/LIkSNFslnTrF69mg0aNNDLIDN1iYiI4Keffkpzc3Oumj2bSkPDTN8z+Qnyj8ictqi3waYScPPmTZqamhaLegXvtiDnEmUdBfBjgOWhykOuDXBtbn8MOfziP336lAcOHODMmTPp7u5OMzMzWlpasmvXrpwzZw4PHz6s0ZSMmJgYtmzZUi+Dbf766y9+8cUXlMlkbNmyJTds2CBZRaeEhAROmjSJlpaWxbqaT0Zu3rxJQ0NDjho1KtsxLy8vjhs3rlDX/ffff+no6Mi5c+dm2v/ll1/yu+++K9Q1tcHt27dpampabNvvPX/+nF9++SUrVapEX19fVQaDGrXoM25XoPIln8668qWHwaZSMWfOHHbp0kUv3S0ZebcFmcw1D1mtTc2lIaVSyYiICO7cuZOTJk1i27ZtWb58edrb27NXr15csGABT548WSjf63///ccmTZpwxIgRki8P50VSUhL37NnD7t27s3z58vz000958uRJSWw+e/Ysa9SoQS8vL7548ULn99cky5cvp7e3N2vWrMnly5dnOhYdHU0bG5tcy27mxr1791i1alUuWrQo2zF/f396eXkVyWZNIZfL2bRpU/70009Sm1JgXr9+zblz59LU1JSjR4/OXNBFjUp7adttgJUBbs7p+0nPgk2lJCkpibVq1eL27dulNiVPhCDnUqlLnU1hbFxov6tCoeDff//NLVu2cPz48WzevDk//PBDOjk5sX///lyyZAnPnj2b55Lj8+fPWa9ePY4fP17vn/wyEhkZyR9//JGurq60t7fnrFmzdN5aMT4+nhMmTKCVlRX37t2r03trkm7dujEwMDC9scTRo0czHf/1119pa2urdinBf/75h1WqVMkm7mmEhYXRxcWlyHZrgnnz5vGTTz7R6wfRrCQnJ3PFihW0tLSkl5cXb9++nX1Mhw5qCXIEQDuAq3L7jtKjYFN94Ny5c7SystKrbmRZEYJMFqqWddIHH3CGTMb79+9rzAy5XM4rV65w/fr1HDFiBBs0aEBjY2PWrVuXQ4cO5erVq3np0iUmJyfz6dOnrFWrFqdOnVqsxDgjSqWSly9f5rhx42hmZsZWrVpx48aNOi0BeObMGTo4OLB///56/YeaE8nJySxXrly6T/zUqVM0NzfP1vN29OjRajWduH79Oq2trbl27dpcxyQlJdHIyEjjHYoKyqVLlyiTyYqFX5BUPYBv27aN1atXZ/v27Xnp0iWSqv/DS5cuceXKlfzss8/o4uLCwAz1A3IrffsIYDWAC/P6nhIz5GyMGTOGgwcPltqMXBGCnEYh0oOWLVtGGxsbrfqvEhISeOHCBS5fvpwDBw5krVq1aGRkRCMjI/7vf//jxo0bef36db3zHReUpKQk7t69m127dmWFChU4cOBAhoSE6GT28+bNG44bN47W1tbZ+gvrM6dPn87W8GH9+vV0dHTM9HDx5s0bOjo65uk3v3LlCi0tLenv75/vfevWrStpf934+Hi6uLgwICBAMhvURalU8tdff2X9+vXZuHFjBgQEMCgoiF9++WX6qlitWrU4ePBgrl69mn/99RdT5s/Pt/StX+rPH2bZhA85b2JjY2lra8uTJ09KbUqOCEHOSCHSgwICAmhhYcELFy7oxMR79+7R3t6eo0aN4uLFi+nl5cXq1auzbNmy/Pjjj/nVV18xKChI0vSrovLs2TMuXryYtWvXZtWqVenn56fRlYjc+O2331i1alUOHDiwWHSL8fX15ZQpU7LtnzBhAtu2bZsp6vjcuXO0sLDIsfnExYsXaWFhoXZa2Keffsp169YV3vAi8sUXX7B37956//t94sQJ1qtXj6ampmzQoAFlMhmtrKzYo0cPzp8/nydOnMg5bkTNkr55biLKOlcOHDhABwcHyVd5ckIIck4UMD1o//79lMlkPHHihFbNunXrFm1tbbls2bJsx6Kjo3n06FF+88037NGjB21sbFipUiW2b9+e06dP5549e4pd4wWlUsmLFy9yzJgxNDU1ZZs2bejv76/VSkyvX7/m6NGjaWNjo3fpPVn53//+l+OTfkpKCjt16sSRI0dmEi1fX1927tw5075z587R3Nyce/bsUfu+ixcvzrGeti44fvw4ra2t9S4YLykpiaGhoVy+fDl79OjBMmXK0MDAgI6OjpwwYQJ37drFf//9V/2HCB0Em77L9OnTh1OnTpXajGwIQdYQISEhlMlkBfpiKwjXrl1j5cqVuX79erXPefr0Kffv358p/crKyio9/erIkSPFpiNOYmIid+3axS5durBChQocPHgwT58+rbVZ0vHjx2lnZ8chQ4boZTON6Oholi1bNnMBmAzExMSwVq1amR7ekpKSWL9+/XQf8alTpyiTyXjo0KEC3fvEiRP86KOPCm98IXn58iVtbW0lf1BSKpW8e/cuAwMDOX78eDZr1owmJiZ0dnamk5MTy5Qpw3HjxhWtYl0Rgk1Fpa78efr0KWUyGcPCwlQ7Ujtp0cdHNQnz8VG91vEqgxBkDXLx4kVaWlpy06ZNGr3u5cuXaWlpWWSfmVKp5P3799PTr9q0acNy5crR3t6evXv35sKFCwudfqVLnjx5wu+//541a9ZktWrVOGfOHEZERGj8PjExMRw+fDirVKmSLXpZanbs2MHOnTvnOebu3bu0tLTkr7/+mr7v2rVrNDMz4+bNm2lmZpZeD7sgvHjxguXKldN5dHP//v05evRond6TVKUW/vLLL5w9ezY7depEMzMzWltb09PTk9999x0PHDjACRMmsFKlSvz66681FxxYiGDTeAMDxi1erJn7l3DWr1/PT11cqOjeXbXEn9VNIEEnLSHIGubmzZu0tbXVWG7k+fPnaW5urrVCFhnTr8aNG5ceaOLs7MwBAwaolX4lFUqlkqGhofz8889pamrKtm3bcsuWLYyLi9PofdJSh0aMGCFZUZOsDB06VK1Wi6dPn6ZMJsvUAWro0KF8//33ixTYYmNjo9NUtR07dtDR0VHrjSOSkpL4559/ctmyZezfvz8dHR1ZtmxZtm7dmpMnT2ZwcHC66yc+Pp4LFy6kTCbjkCFD+PDhQ80bVMBg06DWrdmhQwfK5XLN21LCUK5cyYRSpfSqk5YQZC0QERFBR0dHzpw5s0hLqmlfprqO/JXL5QwLC+O6desypV/Vq1ePQ4cO5Zo1a3j58mW9KlWYkJDAHTt2sFOnTqxQoQKHDBnCM2fOaGxJ+9WrVxw8eDDt7e21HiuQH0qlkra2tmq3WdywYQMdHBwYHR3NvXv30szMjPXr1+eCBQsKbUPnzp0ZHBxc6PMLQlpt7vPnz2v0ukqlkrdv32ZAQADHjRvHJk2a0MTEhK6urhw2bBjXr1/P8PDwbBkMcrmc69evp42NDT08PHjjxg2N2pWNAgSbyuVytm/fvtAV2t4ZCrH6oAtRFoKsJSIjI1mvXj2OHTu2UEt7x48fp5mZmd4slWZMv/rss89Ys2ZNmpiYsEmTJhwzZgz9/f31Jv3q8ePHXLBgAV1cXOjg4MB58+bxwYMHGrn24cOHaWNjw88//1yn+dIZSVuFKcjDxldffcVatWrR3NycFy9eZEREBM3MzHjlypVC2TBt2jTOnDmzUOcWhLTuVZq414sXL3j48GHOmjWL7u7uNDU1pa2tLXv27MmFCxfy1KlTec7AlUolg4OD6ezszFatWum+s5SawaZprTJXr16tW/uKC3/+yURjYw4GWEGo9IsAACAASURBVAWqphz1oOqglVWE09LLjunIPy8EWYu8evWKH330Efv371+g2eShQ4doZmbGkJAQLVpXdF6/fs1Tp05x0aJF7Nu3b3r6VatWrThx4kQGBQXx7t27kqWnKJVKXrhwgaNGjWKlSpXo5ubGrVu3FnlJ+7///uNnn33GatWq8dSpUxqyVn2WLFnCIUOGFOicTZs20dDQkL169Ur//9i4cSNdXV1zDQzLix07drB79+4FPq+gFLa/c2JiIs+fP88lS5bQ29ubDg4OLFeuHNu2bcupU6dyz549BepaFRISwqZNm9LV1ZWHDx/W+5Sr27dv08LCQvLVHL3Ew4NvUvO57wNUADyQKsz3M4jxHaj6GFhlFGQtR7ALQdYycXFxdHd3Z9euXdXywwYHB1MmkxXbvq7R0dH89ddf09OvrK2tM6Vf7d27l48fP9a5XQkJCQwKCmLHjh1ZsWJFDhs2jH/88UeRvlj379/PypUrc/z48Rr3W+dF586dC1STd926daxcuTIvXLjA2rVrp7eiUyqV7N69OydPnlxgG27dukV7e/sCn1fQe5iamua7NK9UKnnr1i1u2bKFY8aMYePGjWliYsJ69epxxIgR/Pnnn3nt2rVCrd6EhYXR3d2dVatWZUBAQLEq03ny5Emam5vzn3/+kdoU/SGPHO86AHdleN0R4CGoypMeyzhWizneQpB1QFJSEr28vNiqVas8I5gDAwNpYWGRXlavpPDkyRPu37+fM2bMYMeOHWlqakorKyt269aNc+fO5ZEjR3SaV/ro0SPOnz+fTk5OrFGjBr/99ttCB+RER0fTx8eHDg4O/P333zVsaXYSExNZtmxZtT+v5cuX09bWNv1L+f79+7S0tExPHYqMjKSlpSXPnDlTIDtSUlL44Ycfaq2Ailwu5//+978c+9g+f/6cBw8e5MyZM9mhQwdWrFiRVapUYe/evblo0SKeOXOmyA9I9+7do4+PDy0sLLh06VImJSUV6XpSsXr1ajo5ORWLQjc6IZeWu88AGgK8mfp6B8BuqT9nE2QtVkETgqwjUlJSOHLkSDZs2DDHfrw///wzraysGB4eLoF1uiUt/WrHjh2Z0q+qVq3KPn36cOHChfztt9+0HtGsVCp57tw5jhgxghUrVmT79u0ZGBhYqIjy4OBgWllZ8auvvtJqRPpvv/3Gxo0bqzV28eLFrFq1Ku/du5dp/5kzZyiTydKDkfbu3ctq1aoV+PNu2rSp1pbs58yZQzc3N8bFxfHs2bP88ccf2a9fP1arVo3ly5enm5sbp02bxn379uVYfaywREZGcuzYsaxUqRL9/Pz0Jqq+KIwfP57t2rUTkddkjp20kgF+AnB46uvXAB0A3stNkAGt1QkXgqxDlEolp02bRmdn50xF8VesWEEbG5tsTQHeJRQKBW/evJmeftWsWTN++OGHdHFx4YABA7h06VKeO3dOa2IXHx/PwMBAtm/fnpUqVeKIESN47ty5Ai1pP3/+nF5eXnRyctKay2Hq1KmcPn16vuPmzZtHBweHXJsvbNy4kdWrV0+faQ8aNIjDhw8vkC0jRoxQK/VKXdJS8Pz8/GhsbExXV1eamJiwQYMGHDVqFDdu3MgbN25oZdk4NjaWs2bNYqVKlThu3DhGRkZq/B5SIZfL2bFjR44ZM0ZqUyRH0alTJmFVAOwL0D1VmAlwAsDZGcbkKMha6qQlBFkCvv/+e9rZ2fHWrVtcvHgx7e3tdd5+sDiQnJycnn41fPjwTOlXw4YN49q1a7WSfvXw4UN+++23dHR0pLOzM7/77rsClR3duXMnLS0tOWnSJCYkJGjUtoYNG/L06dO5HlcqlfT19aWLi0u+QUtff/01W7duzaSkJMbExNDe3p4HDx5U25ZVq1YVqXNOZGQkDxw4QF9fX7Zr144VKlRglSpVWLZsWfbv35+///671vPfExMTuWTJElpYWLB///7ZVhNKCq9evaKLiwtX6iCXVmoUCgUjIiJ49OhRLl++nOPHj6e7uzsdHBy4tVSpdFFVAhwIsDXA+AxiWxegKUCL1K0UwIoAvxMz5JLL+vXrWaZMGdra2mosJeddICEhgefPn+eyZcsypV81bdqUY8eOpb+/v8ZmUUqlkn/88QeHDRvGihUrsmPHjgwKClJLZCMjI9mzZ0+6uLhorDNSVFQUy5Url+sDiFKp5Ndff806deqoNcNLSUlhly5dOGzYMCqVSoaEhLBy5cpql1M9e/YsGzZsqNbY+Ph4/v777/zhhx/Yt29f2tvbs0KFCmzXrh19fX154MABPnv2jOPGjaOXl5da1ywKCoWCW7Zsob29Pd3d3d+WUCzB3LlzhxYWFoWqzqZvKJVKPn36lKdOneK6des4adIk9ujRI70bno2NDdu0acMRI0Zw0aJF3L9/P2/evMnYGTMof/99EuAIgE1Sl6gzzn5fAHyaYbNJ9SmnjxM+5JKFUqnk9OnT0xtAFDSgRpCZ2NjYTOlX1apVy5R+tX37dt67d69IEdVxcXEMCAigm5sbK1WqxJEjR/LChQt5XlOpVHLbtm00NzfntGnTCpVelJFt27axW7duud5r7NixbNCgQYEC5GJjY1m7du30ynITJkzIlBqVF69fv6axsXE236RCoeCNGze4ceNGjho1ig0aNKCJiQkbNWrE0aNH09/fn3///Xe2h6ajR4/SxsZGq32plUolDx06RFdXVzZt2lTvUws1TUhICM3NzXnr1i2pTVGL6Ohonj9/nps3b+aMGTPYt29fNmjQgGXKlKFMJmPz5s05cOBAfvPNN9y5cyfDwsKy5ZKnpKTwl19+UaVmli3LpFKlGJGaX2yIzO0rA3KIvhZR1iUYpVLJCRMm8P/snXdYFFcXxl/UqGAUkF2aAooidgOKiGBvqKCixgIW0MTYYuxR4qdRY28xscRoFGvUWKLYe++9V2woCggivey83x8LG8oCu7DLgs7veeYBZu/ce2Z2mHfuPeeeW69ePYaGhvLQoUN5SvAvkjNp069++eUXdu7cmRUqVKCJiQnbtWvHSZMm5Wv61YsXLxQ+2ho1anDOnDk51hUSEsLOnTuzdu3a+Yqg9/X15ZIlS7Lsl8lkHDRoEBs1apSnaNr0kdfx8fGsWbOmynnT7ezseOLECe7atYv+/v5s1aoVDQ0NaWtry969e3PRokU8d+5crqMKERERrFixYoa825rm/PnzbNq0KWvUqMGdO3cW+rnE2mLlypWsVq0aIyIidG0KSfl63devX+eWLVv4yy+/sF+/fnRxcaGJiQnLli3L+vXrs3fv3pw8eTI3bNjAixcvqmT7w4cPOXHiRFaoUIENGjTg0qVL5S97hXglLT2ShEiBIAgChg8fjitXruDAgQMoX748AODChQvo3Lkzfv31V/Tu3VvHVn66hISE4PLly7hy5QouX76My5cvo1SpUnByckKDBg0UP01MTFSqjyTOnj2LgIAAbN++HY0bN4avry88PT1RunTpLGU3bdqE0aNHY/Dgwfjpp59QsmTJ7CsPDQUCAoBbt4CoKNDQEDN274b34cOwdXZWFJPJZBg4cCCCgoKwd+9elC1bNi+XBmfOnEHXrl1x4sQJJCYmol27drh69SqsrKwylIuLi8O1a9dw8eJFXLx4EXv27EGxYsXg5uYGZ2dnNGzYEA0bNoRUKlWrfW9vb5iYmOD333/Pk/05cf/+ffj7++PKlSuYOnUq+vXrhxIlSmi8naLE6NGjcevWLezfvx9ffPGF1ttLTExEUFAQHj16hMePH2f4GRkZiSpVqqBatWqws7PL8NPU1BR6enoqt/Px40ds3boVAQEBePLkCfr06QNfX1/Url37v0KXLwPNmwNxceqfiIEBcPIk0KCB+seqgtakXiQDKSkp9PPzo6urq9K5yLdu3WKFChU+i6CLwoIgCAwKCuLWrVsVAU7lypWjra0te/TowXnz5vHEiRMqTX2JiYnh+vXr2bJlS5qYmHDo0KG8fPlyll7Y69ev6eHhwXr16in3W166JH+DV7L6TJyeHoV0q88kJSWxV69ebNWqlUYWXQgICKCtrS3DwsL4yy+/sFWrVrx16xZXr17N7777jl999RUNDAzo5OTE4cOHc/369Rw5ciTHjh2br3Y3b95Me3t7jSdXefnyJQcMGECpVMp58+YVygVSdEXamtmaXD0rJSWFT58+5f79+/nbb79x+PDhbNeuHStXrsxSpUrRzs6OHTt25MiRI7ls2TIePnyYL168yHe8h0wm47Fjx9i3b18aGhqyS5cu3LVrV87BnmIu68+XtAdny5Ytc8x//PTpU9ra2nLGjBmf7XCarkmbfrVu3Tp+//33GaZf9evXj7///jsvXLiQ4xDs8+fPOW3aNNra2rJWrVqcN29ehrmygiAwICCAUqmU06ZN++/BocbKPoKBAZfXq8f27dtrTGjevHlDLy8vWllZsWnTpixevDglEgm9vb25ePFipecdGBjItm3b5rnN4OBgmpqaaizwjZS7K8aOHcvy5ctz4sSJYlKMbIiKimLNmjWVukGyQxAEBgcH89ixY1yxYgXHjBnDTp06sXr16ixdujStra3ZunVrDhkyhIsWLeKePXv46NEjrSxEExQUxClTprBSpUqsW7cuFy1apDTHQ7aouZKWuNrTJ0BCQgK9vLxUfnC+fv2atWvX5tixY0VRLiQkJSXx+vXriulXDg4O1NfXp4ODAwcNGsQ///yT169fz/LQEQSBJ0+epJ+fH42MjNixY0du27ZNEdz16tUruru709HRkcGTJqn9xh5fvDiTlGSyUoWYmBiePHmSc+fOZbdu3WhlZcXy5cvT3d2d9vb2bNeuHS9cuJBr6sqXL1/S1NQ0TzYIgsC2bdvy559/ztPxmYmNjeXMmTNpYmLCQYMG6SRFa1Ejbc3s9IvYCILAsLAwnj17lgEBAfT39+fXX3/NevXq0cDAgGZmZmzSpAkHDBjA2bNnc8eOHbx9+3aBjEDExMRw7dq1bNGiBU1MTDh8+HBevXo1789KNVbSKghEH7IWiY+PR/fu3VGyZEls3rwZpUqVUum4iIgIdOjQAbVr18aKFStQvHhxLVsqoi4JCQm4efOmwhd95coVvHjxAnXr1lX4o52cnFCtWjUUK1YMMTEx2LFjB9asWYM7d+6gV69e8PX1hYODAwInT0abGTNgkKmNCAADARwCIAEwC4B3ZkNU8GnJZDLcv39f4fe9ePEinjx5gjp16ij8vs7OzqhSpQr09PQQHR0NV1dXDBgwACVLlkRAQADOnj2r1NdIEhKJBHfv3oW5ubla13Dp0qVYu3ZttnWrSnJyMlavXo1p06bB1dUV06dPh729fZ7r+1z4+PEjHj9+jN27d2PBggVo2bIl3r17h0ePHgFABl9u2u92dnYoV65cgdpJEufOncOaNWsUsRp+fn7w9PRU+ZmaK2Fh8piN27eByEjA2BioUwfw9QXUjIfID6Iga4nY2Fh06tQJpqamWLdundoPnJiYGHh5ecHQ0BAbN27U3I0nojWio6Nx7dq1DIFj4eHhcHR0VAh0gwYNQBLr169HQEAAypYti+0kqt69C71M/4q9AQgA/gJwA0BHAOcA1EpfSE8P8PICtm9X7Hr9+jUuXbqkEN+rV6/C3Nwczs7OCgGuV69ejvfUixcv4OLiglWrVuG3335D48aNMXnyZKVlW7ZsiR9//BHt2rVT+Vo9fPgQrq6uOHv2bJ7FkyS2bduGn376CVZWVpg9ezacnJzyVNenSnx8PJ4+fZolkOrRo0eIjo5WiGx8fDyuXLmCgIAARWCjOsFU2iA4OBjr1q1DQEAAihcvDj8/P/Tp0weWlpY6tUubiIKsBT5+/IiOHTuiatWqWLVqVZ57uImJifD29kZ0dDR27NiBL7/8UsOWimib9+/f48qVKxkiu5OSktCgQQM0aNAA5VNSMGzuXJQUhAzHxQIwBnAHQLXUfX0BVAAwO1MbspIlsXT8eJy8dw8XL15EYmKiotfr7OwMJycnRUS/Opw7dw5dunTB5s2b0bt3b+zduxcNlPTER40aBXNzc/z4448q1ZucnAxXV1f0798fw4YNU9suADh69CgmTJgAmUyG2bNno02bNjoXEF2RnJyM58+fKxXdd+/eoXLlyll6utWqVYOlpWWGazZ27Fhcv34dBw4cKJDIa2UkJCRg165dWLNmDS5duoSvv/4afn5+cHZ2/iy+X1GQNUxkZCTc3d3h6OiIpUuXolixYvmqLyUlBYMGDcL9+/exd+/ePD1YRQoXb968UQi0zdat8Hn0CPqZylwH0BhAfLp98wGcBBCYqWyCnh4ONm6MuGHD4OzsjMqVK2vs4bVu3TpMnToVEyZMwMKFC3Ht2jXo62e0du3atTh48CA2bdqkUp1Tp07F+fPnsX//frXtvHbtGiZMmICgoCD88ssv6NGjR77/x4oCgiAgODhYqei+fPkSlpaWSkXX2tpa5SleMpkMnTt3RsWKFbF8+fICE0CSuHLlCtasWYMtW7bA0dERfn5+8PLyynKvfeqIgqxBwsLC0LZtWzRv3hwLFy7U2A1NEmPHjsWhQ4dw6NAhWFhYaKRekUJAnz7Axo1Zdp8G8DWAt+n2rQSwEcAJJdUk9eyJ4hs3aiXeYMKECTh//jzMzMxgaWmJX3/9NcPnN27cgI+PD+7evZtrXZcuXYKnpyeuX7+u1tDjkydPMGnSJJw8eRKTJ0/GN998o7NenLYgidDQUKWi+/TpUxgbGysVXVtbW425tD5+/AhXV1cMGjQI33///X8fZJoXD0NDoG5dwM8vzz7Wt2/fYsOGDQgICEB8fDx8fX3Rv39/WFtba+RciiKiIGuIkJAQtG7dGl26dMEvv/yi8bdLkpg5cyZWr16Nw4cPw9bWVqP1i2iPxMREvHv3Dm/fvs3y03f7djR4+zbLMdcBuAJIn7pgAeRinLmHDAD7iheHhyCgdOnS+PLLLzNsZcqUybJPlS3tuC+++ALdunXDl19+iRMnTmDdunVo2bKlou2kpCQYGhoiIiIixx5NXFwcHBwcMG3aNPTs2VOla/f27VtMmzYNW7duxciRIzFy5Mgi77r58OFDBrFNL8BffPGFUtGtWrVqgZ338+fP4eLigoCAALQrXx6YNQvYv1/+YULCfwX19eXxyO3bAxMnAir475OSkrB3716sWbMGp0+fRpcuXeDn54cmTZp8FkPSuSEKsgZ49eoVWrVqhX79+mHSpElabWvZsmWYOXMmDhw4kDH7jEiBkpKSgtDQUIWwphfZzL/HxcXB1NQU5ubmMDc3h5mZmeJ3j61bUen06Sz1p/mQ7wKwS93XD4AlsvqQAUDw8YHe+vWIj49HTEyM2ltsbGy2n8lkMpQpUwZxcXEoU6YM4uPj4eTkBCMjI4V479q1C56enrCzs8tW4BcuXIjY2FisXbsWZcqUyXGoOSoqCvPmzcPy5cvRv39/+Pv7QyKR5Pt7Kyji4uLw5MkTpaIbHx+vVHTt7OwKjUvqzJkz2NW+PeakpKBYYqJceLNDT08uzvPnA0OGKC1y8+ZNrFmzBps2bUKNGjXg5+eH7t27F/mXK03zeeeP0wDPnj1Dy5YtMXz4cIwZM0br7Q0dOhRGRkZo1aoVdu/eDed0aRRF8ocgCAgPD1dJZD98+ACJRJJFYG1sbODs7Jxhv7GxcfZv/3Fx8lR+6XseAMoA6ApgMoBVkEdZ74I8yjoz8Xp6mL1jBx7JZHB3d0fbtm01OoKSlJSE2NhYPHjwAJ07d0atWrVQpkwZDB48WCHaN2/eREREBKKiovD69essoh4SEoKXL1/C2NgYlpaWiI2Nhb6+fpYevL6+vmLYtlKlSujevTuMjIywbt06lXr+JUuWLLCeVlJSEp49e6ZUdMPDw1GlShWF2Lq6usLPzw92dnYwNzcv9L1Bt9u30SgpCcWSknIvTMrv47Fj5X+ninJ4eDg2bdqEgIAAhIeHo3///jh//jyqVKmiRcuLNmIPOR88evQIrVu3xo8//pjnaNG8snfvXvj5+WHTpk1o3bp1gbZdlCCJDx8+5Cqw7969Q1hYGIyMjLKIbNrv6feZmJhoxl8bGgrY2GQRZEA+D3kAgMMATCDvGWeZhwwApUvj9fnzOHD1Kg4cOICjR4/C2toa7dq1g7u7O1xdXXPOm60G58+fR6dOnWBgYIBFixaha9euAIDlU6fC4uBBdLG1zeJjjCheHHXr1kVAQIDiXhUEIUNvPioqCtu3b8eqVatgbW2NLl26wMjISKUefNoWHR0NACoNw6u66evr4/3794rebnrRDQ4OhpWVVZb8y3Z2drCysiq6+QMuX8YSV1cEJCfjNuTT7wJSP0qC/B68AuAFgOMAmqc7lAYGODtjBn49cwZHjhxBx44d4efnhxYtWhTd61GAiIKcR+7cuYN27dph+vTpGDBggE5sOHXqFLp3744//vhD8WD8HCCJmJgYlUT23bt3MDAwUCqwmX+XSqW6CRTq2hX499+chwWzQ8k85JSUFFy6dAkHDx7EgQMH8ODBAzRr1kwh0PntoWzYsAHjx49HSkoK7q1bB8mff0K2Zw+SU1JQOv05pPoYL5mY4LSbG8Zs3pylLpIIDAyEv78/jIyMMHv2bLi5ueXZtqSkJJWH4tMLeXh4OMLCwhAZGYmPHz8iNjYWiYmJkMlkAIBixYqhVKlS0NfXR7ly5WBsbAwTExOUK1cuz+KvqZckjdO1K3bs3IliAA5CHukfkPpREoBlABpAHnT4NzIKsgzAKWNjPJo1Cz179oSRkVGBmf0pIApyHrh+/Trat2+PhQsXwttbaZ+lQG3p2LEjZsyYAT8/P53akl/i4uKyBD0pC4R6+/YtihcvrrTnmvl3MzOzLCsvFTouXwabNYNefHzuZTOjQqau8PBwHDlyBAcOHMDBgwdRpkwZuLu7o127dmjRokWe/Hj+/v7A8uWY/PEjSpFZkpqkRwagmL4+9BYsyOBjPHPmDCZMmIAPHz5g1qxZ8PDw0OpQbkREhNLh5cePH8PAwEBpT7dq1aooXbo04uLi8uyDz27T09PTeACegYFB/qaBZRqxmQQgGP8JcnoqAtiAjIIMAChdGnj5skAzXH0qiIKchoph/RcvXkSnTp2wbNkydOvWTXf2puPRo0do27YtRowYgdGjR+vanAwkJSUpeqq59WiTkpJy7cWmieynFAzy8eNH/PHVV/jh1SuUSklR+bjkkiXxxa+/ZhtIowySuHXrlqL3fPnyZTg5OSkEum7duiqJorBsGZJGjEDp1B6kShgYAPPn47abG/z9/XHr1i1MmzYNffr00dhwZkxMTJZpQ2k/U1JSlAZS2dnZ6aQnl7k3r4kAvPj4eBgYGKgl4um3Gnv2wDYgQOE7zpMg6+sDU6cC48Zp7+J9ooiCfPmyymH9p1JzU69ZswYdO3bUjb3Z8OrVK7Rp0wbdu3fH9OnTtdrTSElJQVhYWK4i++7dO0RHR8PU1FSlIeNy5coV+mAXTRMdHQ13d3fUq1cPS+vUgd7YsRDi4pBTH0fQ00OSnh4m6evDc+9eNGvWLM/tx8TE4Pjx4wqBjouLQ9u2beHu7o42bdooXxtayXqySyB/aGf2OWYmsXhxeJYrh/b/+x+GDBmSp9GLxMREPH36VKnofvjwAVWrVlW6tq5UKv3k7y+ZTKa0N69qD37E5ctoGxqqqC9PggwAffsC69Zp/gQ/cT5vQV6+XB4ZGB+fa1i/rGRJ/FiiBNz//bfQBlGFhYXB3d0djRo1wu+//67W0JUgCHj//n2OQ8Zpv0dERMDExCTXwCczMzOUL1/+s8iklBdiYmLQvn171KxZE8uXL0exYsXwcONGPP3mG7QnoVesmPzeTCW5RAl8UaIEZO7u8L59G1V69MDq1atx9uxZjUWuPnnyBAcPHsTBgwdx4sQJ1KhRQ+F7btiwoTzrkxKf9w5Aqc8xMwKAFE9PlNy9O0c7UlJS8OLFC6WiGxISAhsbG6WiW6FCBfF+yw+ensCePYo/8yzIHh5AoLIZ8yI58fkKcpoYx8XlXjYVWalSKL5okVpDhAXNx48f4enpiYoVK2LNmjWIi4tTOcK4bNmyKg0ZSyQSldPxiSgnJiYGHTp0gL29PVasWKEQER8fH9SrVw/j/fwyrD4TFBmJs9HR6HvkCCCV4uLFi+jSpQtGjRqFNWvW4MKFCzA0NNSojYmJiTh37pzC9/zy5Ut4ubpixYEDKJHN0HpOD3AFqT5GwcQEb968USq6z58/h7m5uVLRrVSpknj/aYtMmePEHnLB8nkKspIht/sAhgG4CkAKYB4AL2XHqhBEo22URRinF9iQkBDcuXMHSUlJKFOmDCwsLHIdMjY1NS28UZ+fGLGxsejYsSNsbW2xatUqhRg/f/4c9evXR1BQUBZxvX//Pjw9PfHkyRPFvlGjRiEiIgLlypXDo0ePsHfvXq0K1Zs3b/Bm5EjU2bEDpbLxHasiyInFi2OpVIr/ffyIcuXKKV3mr0qVKoU/GO9TZO5cYMoUpCQkIAXAVMi/z5WQJ60oASARAAFUBbAaQFMApQAonAGiDznPfJ6CnGnILQVATQCDAfwAeQJ/T8jTF1bLfKySaSaaID4+XuXgJ5K5iqyJiQkmT56M169fIzAwUOO9J5G8ERcXBw8PD1hbW2P16tUZhldHjBgBfX19zJkzJ8txMpkMRkZGePXqlSIAKTY2FrVr18bSpUuxePFi2Nvb47ffftPuCWSTezsNlXrIAN536ICSmzejbNmyGjROJN+kRln/nJCAqZk+mgLgZwCVIJ+DnJ5nqfsBiFHW+eDzE2QliRjuAGgEIBr/veW1BeAMYLqyOlS84ZKSkrJNr5h5X3x8vEqBT2kRxipFwgoCRowYoRh2NDU1VekSiWiH+Ph4eHp6wtLSEmvWrMkQWRweHg47OzvcvXs320UX3NzcMH36dLRo0UKx79Ch1coAdAAAIABJREFUQ/juu+9w+vRptGnTBiNGjMAQDblU0jJsvXnzRrG5L1uGWkFB2R6jqiCLPsZCjIbnxYuozufniAkIyLJL2W1HyIVaGQKAtzNn4ra7e4492qioKEil0iyiamtri8aNG2fYb2RkpPEI0GLFiuH333/HlClT0KRJExw+fPizXklFl8THx6Nz584wNzfPIsYAsHTpUnTr1i3HFZAcHR1x7dq1DILctm1bNG3aFPPnz8eePXvg6uqKqlWrok2bNtnWExcXpxDYzIKb/u+UlBRYWlrCwsIClpaWctvKlcv/xQAAY2PN1COieSZOBA4eVCu+RoG+vvx4kTzx+QnyrVtZ0hRWB2AKud94FOTp4E4CaJHlYDnFEhJwJSAAv9+5oxBZS0tLODo6ZhBZExMTnUd86unpYdq0aTA2NkaTJk1w6NAh2Nvb69Smz42EhAR4eXnBxMQEAQEBWcQ4NjYWS5cuxalTp3Ksx9HREYcPH86yf+HChahduza8vLywaNEi9OjRA5MnT0axYsWUim1CQoJCYNOLbd26dTPsMzQ0hJ6eHiIjI3HgwAFs3LgRG2/fxiQABplsSEndZKlbAv7zOWZBXx+oU0fFqydS4Dg5yReKUDPoNW2euS7ja4o6n58gR0Vl2fUFgH8BfA9gDuRp4XpAHqiQHZ3c3NCpCA25jRo1CkZGRmjevDn27t0LR0dHXZv0WZCYmIiuXbvC0NAQ69evVxp0tWbNGri6uqJ69erZ1hESEoLixYvjxIkT+O2337L0bKOjo9GiRQtYW1vDxMQE//vf/9C7d2/Y2tqiZs2aGQQ4x8UuUnn48CFWrVqFHTt24Nq1ayhdujRIolqvXij9zz9ApkUHfgEy+Bw34D+fYxZIwNc3x/ZFdEya20PFaaG5rfYkohqfnw85l6CUNBoD6A/gu+wKFNGw/p07d+K7777Dtm3b0LRpU12b80mTmJiIbt26QV9fH3///XcWMU5KSsKrV6/g5uaGESNGoGzZskqHkaOjo2Fubg4LCwtcvXoVAwYMgI2NjUJk04TW19cXDRs2xOTJkzF27FhcvXoVBw8eVCl6Pjk5GWfOnEFgYCB27dqFiIgIfPnll4iMjISXlxf69euHFi1aKOYhC//+i2J5eHQIAJI6dEDpvXvVPlZEB1y5Ik+ctG+fXHjTp3dNS5zUoYN8mFrsGeebz0+QU8P6Mw9b34I8olqAPHn6UgAPkE0vuYiH9R89ehS9e/fOPuOYimlERZSTnJyMly9fwtfXFykpKfD29sa7d++yiG1UVBTKli2LpKQktGrVKovApv2e3vXh7OyMBQsWKF2AITg4GA4ODjh58iTs7e3RpUsXWFhYYMWKFUp7xO/fv8f+/fuxZ88eHDx4EBKJBKVKlcKLFy/QqlUreHt7w9PTE/r6+opjUlJSsLhPHwzduhX6eXh0xAHoUKYMus+ejSFDhogrABUVwsIyzIuHsbHc7eDrKz4TNMjnJ8jZLHc3DvJ1Z5MBNAHwO+Tz7JTyCYT1p+XkXrRo0X8LZKiRRhROTgVvtI5JSUlRCGtOAVEREREoUaIESpcuDTc3N1SoUEGp2JqYmMDJyQnTp0+Hh4eHSjYMGTIE1atXxw8//KD082XLlmHjxo04ffo0YmNjFevwjho1CiTx4MEDBAYGIjAwEDdv3kTdunVRvHhx3L59G3Xq1IGPjw+6d++O8uXLZ6n7w4cP6NmzJ2QyGdo8fYpRwcEoqUbubRgY4Ga/fmj1zz8oU6YMJBIJVqxYgQZiz0pEBMDnKMiAGNafyp07d+Du7g5/f38M1dP7bP1FMpkMoaGh2UYbp/0dHh4OiUSSbU/W0tISEokEP/zwAwRBwD///JPjcPGhQ4cwevRo3Lp1S+Xgv1WrVuH06dNYu3at0s8FQUCzZs3Qs2dPDB8+HI8fP0ajRo3g5uaGO3fuIDk5GS4uLhAEARcuXED58uXh4+ODXr165RiB//jxY3h6eqJNmzYICgpC+fLlsdbFBcXGjVP7nnn79i18fX3x+PFjfPz4ET169MCMGTPEpfpEPns+T0FWkqlLZQpBpi5N8uzZM6xu2BD/i4pCyeRk1Q9Mi6gsxKIsk8kQFhaW49SeN2/eICwsDOXLl88grMrE1tTUNMdMWMnJyejduzcSExOxbds2lCqVU1gg0Lp1a/Tt2xf9+/dX+ZyuXbuG/v374/bt29mWOXfuHNq1a4emTZvi7NmzqFixIp4+fYquXbvi1q1b+PjxI7y9veHj44PatWvn2ubRo0fh7e2NadOm4eLFiwgJCcHu3bvla0fn0cdIEkuWLMHPP/+MOnXq4NGjR5g3bx68vb0/+QUgRESy4/MUZCBPuayLggipzeXLEJo1w7L4+GxX64kDMBbAVsiH9OsBOAXo7OVEEASEh4fnOo82NDQURkZGWYQ1s9iamZnJxSUfpPmKY2NjsWPHjlzF+OrVq+jSpQuePn2qVsrSxMREGBsbIzw8HAYG8slHJHH37l3s2bMHgYGBuHPnDipWrAiS6N+/P/bs2YObN28CADZs2AAPDw+Ve+TLli3DtGnTsHnzZhw8eBDHjx/H0aNHUaZMmYwF8+hjvHPnDnx8fFC+fHm8f/8eUqkUS5cuzTbiXETkU+bzFWRA5dWeBAApX3yBkosXf1piDCiG73eQ2a7W0wfyOaa/AygP4AaA+oDGh+9J4v3797n6aN++fYty5cpl25NN+9vc3LxA8nOnpKSgb9+++PDhA3bu3KlSDuaePXvC2dk5T+tXOzo64tdff0VCQgICAwOxZ88ekFQMKUdFRWHz5s04cOAAGjZsCH9/f7Rr1w7Tpk3D8ePHcezYsVxfGJKTkzFy5EgcP35c4XNesWIFzpw5o3xJxnyQkJAAf39/bNmyBZ07d8bWrVsxePBg/PTTTxkCykREPnU+b0EGVBpyS2jZEl0uXsT4rVvRsmVL3dmqaZQEuGVOffgQgFPqPqU5mlQIcCOJyMjIHIeN04S2TJkyOQ4bW1hYwNzcvNAsPCCTydCvXz+Eh4dj165dKtn19OlTODs749mzZ2rlcg4NDcW+ffswdepUvHv3Dg4ODvDw8ED79u3x9u1bbNq0CYGBgXB2doaPjw+srKzQq1cv3LlzBxKJBIIgoEePHjAwMMDatWuzHRqOjIzE119/jZIlS+Lvv//Gnj17MHHiRJw5c0armd4OHz4MPz8/dOjQAZGRkbh69SqWLFmCDh06aK1NEZHChCjIaeQy5Hb48GH4+vri2rVrMDMz07W1mkHJFLDMgrwO8gxmrQGsB2ABebKHbqmfs3RpvBs2DHfc3XPs2err62fbk03bzM3Ni1SPSCaTwdfXF2/fvsXu3btVtn3o0KEwNjbGjBkzcixHErdv31b0gu/fv482bdrAwMAAycnJ+OGHH7Bx40Zs3boVNjY28PHxQc+ePTPcn2PGjEFoaCjWr18PQJ4VrGnTpvj6668xYcKELG0+fPgQnp6e8PT0xNy5c3H48GH0798fx44dQ61atdS4Onnj/fv3+Pbbb/H06VMMGzYM8+bNQ926dbF48WJUrFhR6+2LiOgUiqiMv78/27ZtS5lMpmtTNIOPDykfrFdsPwHsn+7vGfK03pwCMBHgCYBlAN5LV+bfcuXYokUL+vj4cNy4cVy0aBE3b97MU6dO8cmTJ4yNjdX1mWqclJQU9uvXjy1btlTr/N69e0cjIyO+fftW6efx8fHcv38/hw4dSmtra1auXJkjRozg4cOHmZiYyIcPH3LgwIEsVaoUq1WrxqlTp/Lx48fZthcTE8PKlStz//79in3BwcGsWLEid+zYkaHswYMHaWpqyr/++oskeeHCBUokEp49e1bl89MEgiBw1apVlEgkXLBgASdPnkwTExPOnz+fSUlJBWqLiEhBIgqyGiQnJ9PV1ZWzZs3StSmawcMjV0FeCPALgMnp9nkA/DX9cR4euj6TAkUmk9HX15fNmzdX+2Vj0qRJ/O677zLsCwkJ4apVq9ilSxeWK1eObm5unD17Nu/evUtBEPjmzRsuXLiQ9evXp7m5OYcPH85SpUoxPj5epTYPHz5MGxsbfvz4UbHv8uXLlEgkvHbtGgVB4OLFi2lubs5Tp06RJO/fv08zMzPu2bNHrfPTJI8ePaKTkxPbt2/Ps2fPsk2bNqxTp06BvyCIiBQUoiCrycuXL2lqasozZ87o2pT8o0IP+Ygqgty3r67PRDO8e0fOmSO/Lh4e8p9z5pChoYoiMpmMAwcOZNOmTRkTE6NW9dHR0ZRIJHz48CGvX7/OadOmsWHDhjQyMmKPHj24fv16hoWFkSSjoqK4Zs0atm7dmkZGRvT19eXhw4eZkpJCkqxTpw6vXLmictu+vr4cMWJEhn3//PMPK1asyD59+rB27doMCgoiSb569Yo2NjYMCAhQ6/y0QVJSEn/66Seam5tz165d3Lx5My0tLTlw4ECGh4fr2jwREY0iCnIe2L17N62trYv+A2HOHLJ0aTJVcOMBTgDYJ/X3ZIBJAKsAnJb69xmAXwK8nybG+vrk3Lm6PpP8cekS6eUlvxap14Ppz690adLLi7ILF/jtt9/Szc2N0dHRajURFxfHb775hra2tqxYsSKrVq3KUaNG8ejRo4ph2ISEBO7cuZPdu3dnuXLl2LlzZ27dupVxcXFZ6uvfvz///PNPldt///49LSwseO7cOcW+8PBwVq5cmUZGRnz37p2iXK1atTi3kH2np0+fZqVKlTh48GC+efOGI0aMUAyvfzIuJJHPHlGQ88ioUaPYqVMnCoKga1Pyzrt3CgGakuorTr9NSRWlOwAbATQAWAPgjvSCVbp0hh5kkWPZMtLAgNTTyzJakH4T9PSYUKIE59naZhj6zYnXr1/zzz//pKenJ8uWLctSpUpxxIgRvH//vuK+kclkPHHiBL/99luWL1+ezZo1459//sn379/nWPfixYs5ePBgtU51y5YtrFmzJhMSEnj37l1WqVKF48aNY69evdijRw/GxMSwcePGHDNmjFr1FhQfPnygj48P7e3tefXqVV69epUNGzakq6srb926pWvzRETyjSjIeSQxMZENGjTgr7/+qmtT8oeXV65ilJNIsWtXXZ9B3kkTY3XOWV9ffpwSBEHglStX+PPPP7N+/fo0NjZm7969uXHjRi5fvpzNmzdXlLtx4wbHjRvHihUrsm7dupwzZw5fvnypsumnT5+mk5OTWqcrCAI7depEb29vSqVSxZB0fHw8GzZsyGrVqrFv376Fvse5adMmSqVSzp49m4mJiVy+fDmlUinHjh2r9siFiEhhQhTkfPD06VNKJBJevnxZ16bknUuX1BaltC0W4OGiGuCm5LwTAA4AaJ06LP8VwH3Kzt3AgEz9zmNjY7l7925+++23tLS0ZLVq1ThmzBieOHFCMRQtCALr1KnDgIAAzpw5k7Vq1aKNjQ0nTpzI27dv58n86Oho6uvrqxV1LAgCp0yZwmLFinH9+vUZ9vfs2ZOlS5fOsL8w8/z5czZt2pTNmjXjy5cv+fbtW/bt25dWVlbcsWNH0R65EvlsEQU5n2zZsoW2trb88OGDrk3JO3noKdLAgEHjx9POzo79+vVjVFSUrs9CPZSMDMSkDtM/AygDGJgqzM+UjAw8/eorduzYkWXLlmWLFi24YMECPnz4MEszYWFhHDZsGA0MDCiRSDh48GCePn1aI73Q6tWr8+bNmyqVTUxM5IABA1ivXj3+8ssvbNSokSJAbPz48WzUqBHPnz9PiUTCCxcu5Nu2giAlJYUzZ86kVCrl5s2bSZLHjx9n9erV2bFjR0WQmohIUUEUZA0wePBg9ujRo2i/lavoS6Wenrxc6rBtdHQ0Bw0axEqVKimmzBR60vnOc9vqANymZH9isWLc+eefjIyMzFJ9bGws//77b3p4eNDQ0JBSqZRjxoxhYmKiRk/D29ubq1evzrVcaGgomzRpwi5dujA6OpoymYxNmzbl4sWLuWDBAtaoUUMRoLhr1y5aWlqqNXyuay5fvpzhxTAxMZEzZ86kiYkJZ8yYofHrLiKiLURB1gBxcXGsW7cuV6xYoWtT8sfly3KfcOnS8uhiZdHGXbsqhmvTs3v3bpqbm9Pf37/wPwDTRZfntL0FWArpIsozX490kcjJycncv38/+/TpQ0NDQ7Zr147r1q3j0aNHaWNjo5WEFgsWLODw4cNzLHP79m1WrlyZ/v7+GXrlDx484JdffqlUfOfOnct69eoVKX9sTEwMBw0axMqVKyvmKQcFBdHDw4PVq1fnsWPHdGyhiEjuiIKsIe7fv0+JRPJpRHuGhsrFpm9f+Xzcvn3lf+cSTf327Vt27NiRjo6OvH//fgEZmweUzL/OvCUBbAVwUE4BXn368Pz58xw+fDhNTU3p7OzM3377LUMWrq5du3Lx4sVaOY3jx4+zcePG2X4eGBhIqVTKDRs2ZPls3759/PLLL+nm5pZlZEcQBPr5+bFz586FPsArM//++y/NzMw4efJkJicnUxAE7ty5k9bW1uzTp0+2GdJERAoDoiBrkLVr17J69epqJ4z4lBAEgcuXL6eJiQmXLl1aOIfxlWQoS7/JAPYE2D5VmLMrd8TAIMf0lQ8fPqREItHa/RAZGckyZcoofMFpCILAuXPn0tLSUqk/+MKFC5RKpTx16hTr1aunNJArMTGRTZs25Y8//qgV27XJmzdv2LZtWzo7O/PJkyck5a6VcePGUSKRcNmyZVmumYhIYUAUZA3Tr18/+vr66toMnfPgwQM2aNCA7du3Z0hIiK7NyUgOPWQBoC/A5gDjculFh3fokOMLx6BBgzh58mStnkqVKlV49+5dxd8JCQns378/HRwclPqB7927RzMzM+7du5ek3P9qamrKUCWjH2FhYbS1tS0UGbvURSaT8ddff6VEIuGaNWsU39Pt27fp5uZGJycnXr16VcdWiohkRBRkDRMdHU17e3uuW7dO16bonKSkJE6aNIlmZmb8999/dW3Of+TgQ/4OoDPA6NwCvnLJUBYSEkIjIyOlQqdJ0lJuknKXQePGjdmtWzelvfKXL1/S2tqaa9euzbB/zJgx9Pb2Vlr/3bt3KZVKefr0ac0bXwDcunWLderUYffu3RXJVmQyGVevXk1TU1N+//33RXuGhMgnhSjIWuDmzZuUSCR88OCBrk0pFJw5c4aVK1fmN998UzgChbKJsn4OeYayUpCvaJW2bVAmyLlkKJs4cSKHDh2q9VOZPXs2R40axRs3btDGxoaTJ09W6vd9//49a9asyXnz5mX5LDY2lra2ttkuJHHgwAGam5vz6dOnGre/IIiPj+fIkSNZsWJFHj16VLE/PDyc33zzDS0tLfn3338XTveKyGeFKMha4o8//mDdunWV5iH+HImKiqKfnx+rVKnC8+fP69qcfGUoYy4ZyqKiomhiYlIgAnbo0CHWqlWLEolEMRc3M7GxsXRxceHYsWOzrefIkSO0trbONi3ob7/9xpo1axa9+ebpOHjwIC0tLTl27FgmJCQo9p89e5Z169Zl69atlc4lFxEpKERB1hKCIPDrr7/mkCFDdG1KoWLbtm00NTXllClTmJycrDM7hIsXmaLiXOQsW7pMXcqYP38+e/bsqf1zEAROmjSJenp6vHjxotIySUlJ7NixI/v165drxPSAAQOynUYlCAKHDBnC9u3b6/R7yy9hYWHs0qULv/rqqwy+9+TkZC5YsIAmJib83//+J75Ii+gEUZC1yIcPH2hra8utW7fq2pRCxevXr9mmTRs6OzsrjU7WJs+ePeOMGTNYs2ZN+pcvz8QSJdQX42xyWZPy6OQKFSpoPWAoPj6ePj4+bNCgAStUqMBHjx5lKSMIAvv378+OHTuqNA86IiKCFhYW2a43nJSUxFatWnHkyJH5tl+XCILAlStX0sTEhEuWLMkwVP3q1St269aNVapU4f79+3VopcjniCjIWubSpUuUSqVF1v+mLWQyGRcvXkyJRMKVK1dq1X8XFhbGpUuXsnHjxpRIJBwyZAjPnDkjbzOPGcqyI20NY20SEhJCZ2dn9uzZk7GxsfTy8lI6XD1u3Di6uLgwNjZW5br/+ecf1qhRI8OQbnoiIiJYrVq1op8Eh/JpaQ0aNGCHDh2yzE/et28fbW1t2b17dwYHB+vIQpHPDVGQC4CFCxfSycmp8Gew0gF37txhvXr12LlzZ41GJMfExHDTpk3s2LEjDQ0N2atXLwYGBir/DvKRoSw9MpmMNWvW5OHDhzV2Hpm5du0araysOG3aNMVLzPTp0zlu3LgM5ebPn88aNWrkuoxjZgRBYJcuXXKcrvXo0SOamppmCJAqqiQlJdHf35/m5uZZgtri4uI4adIkmpiYcOHChUV6qF6kaCAKcgEgCAI9PDw4evRoXZtSKElISOD48eNpYWGhmB+bF5KTk7lv3z76+PjQ0NCQ7u7uXL9+veqR3XnMUJbG7t276eDgoLXe/rZt2yiRSPjPP/9k2L937162atVK8ffatWtpbW2d53zUwcHBlEgkOa5EdezYMZqamn4yQVAnT56kjY0Nhw4dmmVE4cGDB2zZsiXr1avHc+fO6chCkc8BUZALiPDwcFpZWTEwMFDXphRajh8/Tmtra6UPxewQBCFD+spGjRrxt99+47t377RsbVbc3NyyjXTOD4IgcOrUqbSysuK1a9eyfP727VsaGxtTEATu3buXZmZmvHfvXr7aXLFiBZ2dnXPMaPXnn3+yWrVqjIiIyFdbhYXIyEh6e3uzevXqWa6zIAjcuHEjLSws+O2336o98iAiogqiIBcgp0+fpqmpKV+9eqVrUwotaQ9Fe3t7XrlyJdty9+/f56RJk2hra0t7e3tOmzZNkSZRF5w9e5aVK1fW+LBmXFwce/bsSWdnZ7558ybbcpaWltyxYwelUqlGppXJZDI2a9aMixYtyrHcyJEj2bJlS60snqErNmzYQIlEwrlz52aJTI+MjOSwYcNoZmaWIQOYiIgmEAW5gJkxYwbd3NxEf1QubNq0iVKplDNnzlT00l6/fs0FCxbQ0dGRFhYWHD16NK9cuVIoHoqdO3fmkiVLNFrn69ev2aBBA/r4+DA+Pj7Hss2aNaORkRH37dunsfYfPnxIExMTPnv2LNsyKSkp7NChA7/77rtC8T1oimfPntHNzY0tWrRQOvR/+fJl1q9fn02aNOGdO3d0YKHIp4goyAWMTCZjmzZtOGnSJF2bUuh58eIF3dzcaGdnRxcXFxobG9PPz49HjhwpVIsD3Lt3j6ampmpFM+fG5cuXWbFiRc6cOTNXoXv58iUNDQ3ZqVMnjbWfxqxZs9i2bdscbYiKimKtWrW0tqqVrkhJSeGMGTMolUqVTl1MSUnhkiVLKJFIOH78+M96URkRzSAKsg54+/YtLSwstBqNW5RJSEjgjh072K1bN5YtW5a1a9dm2bJltT49Kq8MGDCAU6dO1Vh9mzdvpkQi4c6dO3MtGx4ezho1anDAgAF0d3fXmA1pJCUl8auvvsqS/zozQUFBNDc3/yTn7l66dIl2dnbs37+/0kxmISEh9Pb2prW1deHK2S5S5BAFWUccPnyYFhYW4vqsqchkMh47dowDBw5k+fLl2bx5c65cuVIRMHTjxg3WqlWLX3/9daEKqHn9+jWNjY0ZHh6e77pkMhknT55MGxsb3rhxI9fyMTExbNSoEceNG8dXr15RKpVq5YXl6tWrNDU1zTVQ7syZM5RKpRkyYH0qREdH85tvvqGtrW22kdZHjhxhtWrV6OnpmeMwv4hIdoiCrEMmTZrE1q1bF7lF4DWFIAi8fv06x44dywoVKvCrr77i3Llzsw16S1skoEKFCjx06FABW6uccePGccSIEfmuJyYmht26dWPjxo1VeklLSkpi+/bt2b9/fwqCQEEQKJVKtRYwOG7cOPbq1SvXcmvXrqWtra3WV7nSFTt27KCZmVm2qV8TEhI4ffp0mpiYcNasWWLuARG1EAVZhyQnJ7NJkyacMWOGrk0pUIKCgvjLL7+wRo0arFSpEv39/dXqVR06dIgVKlTgyJEjcw120iYfPnxg+fLl+fz583zV8+rVKzo4OLBfv37ZZshKj0wmY9++fbOkxHR3d+euXbvyZUt2xMbGskqVKipN25swYQLd3NxUOpeiSFrqVxcXl2wz8D19+pTt27dnzZo1eeLEiQK2UKSoIgqyjnn16hXNzMx46tQpXZuiVUJDQzOkrxw6dOh/6SvzwPv379m9e3fWqlVLpeFdbTB79mz6+Pjkq44LFy7Q0tKSc+fOVflajB07lo0bN84SRObv788pU6bky56cOHbsGK2srHJd8Ukmk7FLly709fUtlD5/TSCTybho0SJKJBIGBAQoPU9BELht2zZWrFiR/fr108nceJGihSjIhYA9e/bQyspKI37IwkRMTAw3btzIDh060NDQkL179+aePXs0NmdVEASuXbuWEomE8+bNK9Ch/4SEBFpYWOTrZWDjxo2USqXcvXu3ysfMmzePtWrVUupH37ZtGz09PfNsjyoMHDhQpXWeo6OjFS6IT5mbN2+ydu3a/Prrr7NNkPLx40eOHj2aUqmUf/zxx2frohLJHVGQCwljxoyhh4dHke9RJCUlce/evYr0le3bt+eGDRtUT1+ZB4KCgujq6prtnFFtsHLlyjxHNctkMvr7+7NSpUq8deuWysetXbuWNjY22fqJg4KCaGlpmSebVCUiIoKWlpY8ffp0rmVfvXrFChUqaG0YvbAQHx/PH374gVZWVjx27Fi25W7evEkXFxc6OzsrzbgmIiIKciEhMTGRDRs25MKFC3VtitoIgsBz585x2LBhlEqlbNSoEX///fcCHaJLP2f077//1mpbMpmM1apVy/Hhmx3R0dH08vJikyZN1Ap82rNnD83MzHj//v1sywiCQGNjY4aEhKhtlzps376d9vb2KvnvL168SIlEwuvXr2vVpsLAgQMHaGm6xZP2AAAgAElEQVRpyXHjxmUbzCWTybhy5Uqampryhx9+yHX4X+TzQhTkQkRQUBClUikvXbqka1NU4t69e4r0ldWrV+f06dN1mr6SJK9cuUJ7e3v6+PgwMjJSK23s3LmTTk5Oao9mPH/+nPXq1eOAAQPUir49e/YsJRIJL1y4kGvZVq1aaTRbV3Z4eXmpnNxm8+bNtLa21vqLQmEgNDSUnTp1ooODQ475xMPCwujn58cKFSpwy5YtRX5kTEQziIJcyPjnn39YuXJlfvjwQdemKCU4OJjz58+ng4ODIn3l1atXC9UDJTY2lkOHDqW1tTWPHz+u0boFQWCjRo2yrLiUG2fPnqWFhQUXLlyo1rW6c+cOTU1NVU64MW7cOE6fPl0t2/LC69evKZVKefPmTZXK//zzz3R2dmZcXJyWLdM9giDwjz/+oEQi4dKlS3P8vk+fPs3atWuzbdu2fPz4cQFaKVIYEQW5EDJkyBB279690IhcZGQkV61axZYtW9LY2JgDBgwodOkrlbF3715aWFhw/PjxGpuCc+rUKVatWlWtc1+7di2lUqnaPdeXL1/SysqKGzZsUPmYv//+m15eXmq1k1dWrlxJJycnla6FIAjs2bMne/fuXWjua23z4MED1q9fnx07dszRfZOUlMS5c+fSxMSEP//8s06n8onoFlGQCyHx8fGsW7culy9frlMbtm/fzq5du7JcuXL08vLitm3bitzDIjQ0lJ07d+ZXX32lkUUAOnbsyD/++EOlsikpKRw/fjyrVKmidvaq8PBwVq9eXe2YgkePHtHGxkatY/KKIAhs0aKFyjbGxcWxYcOGnDZtmpYtKzwkJiZy4sSJKq31/eLFC3p5ebFq1aqFJvGNSMEiCnIh5cGDB5RIJBmHBN+9I+fMIX18SA8P+c85c0gNZUVKSUnh0aNHOXDgQBobG7NFixZctWqV1nyxBYUgCFy5ciVNTEy4ePHiPE87uX37Ns3NzVV6Kfn48SM9PT3ZvHlztaezxcTE0NnZmT/++KPaNspkMpYtW7bAptA9fvyYJiYmDAoKUqn8mzdvaGVlxS1btmjZssLFiRMnaG1tzWHDhuU6bB8YGMhKlSqxZ8+efP36dQFZKFIYEAW5ELNu3Tra29sz9sQJ0suLLF1avgH/bfr68n1eXmQegsEEQeC1a9c4ZswYRfrKefPmfZJrNj969IjOzs5s27Ztnh50/fr1Uymr2rNnz1i7dm0OGjRI7dSJaSkx/fz88jy027Rp0wLtYc2ZM4etW7dW2d5r165RIpEUmeBFTREREcFevXqxZs2auUadx8bG0t/fnxKJhIsXLxaXa/1MEAW5kBPQqBETihcn9fQyCnHmTU+PNDAgly1Tqd6nT59y+vTpivSVP/300ye5KEBmkpOTOWXKFJqamnL79u0qH/fy5UsaGxtnm/whjVOnTtHc3JyLFy9WW1BlMhn79OlDDw+PfD2AR44cydmzZ+f5eHVJTk6mg4MD16xZo/IxO3fuZIUKFT7JF7+cEASB69evVzmZzb1799i8eXM6ODjw4sWLBWSliK4QBbkws2wZBX39nIU485aDKIeGhnLJkiV0cXGhVCrl0KFDefbs2c8myCY958+fZ5UqVejr66vSXNDRo0dz9OjROZb566+/KJVKefDgQbXtEQSBo0ePpqura77XVV6/fj179OiRrzrU5dq1a5RKpWqtXjZ79mw6ODh8lusIpyWzadWqFYODg3MsKwgC161bR3Nzcw4ePDjXl0KRoosoyIWVS5eYoK/PAQCtAX4J8CuA+1KF9zzA1gCNAUoAdgf4Jr0oX75MUu6P3LBhgyJ9pbe3N/fu3aux9JVFmbQl9SpXrswzZ85kWy4iIoLGxsbZZgFLSUnh6NGjaWdnxwcPHuTJlrlz57JWrVoaedjevXuXVatWzXc96vLjjz+q9SIgCAL79evHrl27fpbpJJOTkzl9+nSampqqNI0uIiKCgwcPprm5OdetW/dZvkh/6oiCXFjx8mIMwCkAnwGUAQxMFeZnqcK8FWAUwFiAfgDbpQqyoKfHkMaN6e3tXWDpK4syO3fupJmZGSdNmqT0RWXGjBns37+/0mM/fPjA9u3bs1WrVnlepzkgIIA2Nja59pRUJSUlhWXKlCnwuexxcXGsWrWqWqkyExIS6OrqSn9/fy1aVri5cOECq1atSj8/P378+DHX8hcvXqSDgwObN2+eY/IRkaKHKMiFkXfvsgZvpW51AG5Tsv9qqlin/Z2gp8dVs2aJK8yoSEhICNu3b88GDRrw4cOHiv1xcXE0MzNTOmXqyZMnrFGjBocOHZrnEYfAwECam5vnmBIzL7i4uGg8KYoqHD9+nBUrVlTrZSA0NJSVK1fm+vXrtWhZ4SY6OpoDBw5klSpVeP78+VzLJycnc/HixTQxMeHEiRPz7eYQKRyIglwYmTNHqSC/BVgK4H0lgrwIoHPm6OtPfKUdTSMIApcuXUqJRMLly5crMi55eHhkKXv8+HGamZlx6dKleW7v7NmzlEqlWgnWGT58OBcsWKDxelXh22+/5eDBg9U65s6dO5RKpTx79qyWrCoabNu2jaamppw6dapKgX2vX79mz549WalSJZXWqiap9emTInlHFOTCiI9PFsFNAtgK4CAlYnwz1Zd8KvNnffvq+kyKJPfu3aOjoyM7dOjASpUqZVmr+s8//6SpqSmPHDmS5zbSUmIeOHAgv+YqZfXq1fT29tZK3bkRGRnJChUq8OTJk2odt2/fPpqbm/PZs2faMayIEBwczFatWrFx48Yqz+8+dOgQ7ezs2KVLF7548UJ5oUuXtDZ9UkQziIJcGPHwyPDPIgPYE2D7VGFO/9ljgJYA1ymLuFbSsxNRjcTERHp5efGLL75Q+ESTk5M5YsQI2tvb89GjR3mu+8WLF6xYsaJaKTHV5caNG6xevbrW6s+NnTt3slq1ampndlu0aBFr166tki/1U0Ymk3HBggWUSCRcu3atSgFc8fHxnDp1KsuXL885c+ZkdKMsWyYP9tTw9EkRzaJHkhApXPTpA2zcCAAggAEAngPYB0A/XbEXAJoBmABgsLJ6+vYF1q3TpqWfLCTh7OyMLl26YOXKlWjevDlevnyJEiVKYMuWLTAyMsp6UGgoEBAA3LoFREUBhoZA3bqAnx8glQIAwsPD4ebmhsGDB2PkyJFasz85ORmGhoYIDQ3Fl19+qbV2cqJ79+6wt7fHjBkzVD6GJAYPHozXr19j165dKF68uBYtLPzcvHkT3t7eqFOnDpYvXw5jY+Ncj3ny5AmGDx+O4OBgLF++HE3u3AHGjgXi4lRv2MAAmD8fGDIkH9aLqI1u3wdElJLOh/xdqm84OtObbDBAW4Bzs3vTFX3I+eLYsWO0t7enTCbj1atXWa5cORoZGSn3cao4FBh38iQbNmzICRMmFMg5ODk55TidS9uEhIRQKpXyxo0bah2XlJTEFi1acMyYMVqyrGgRFxfH77//Xq3VywRB4NatW9lBKmVUsWLZTp9MBNgNoI383Z/H09+76aZPihQMoiAXRlKjrJ+n/pOUAlgm3bYB4M+pn5XJtCn+mUqXFoM08oG7uztXrVrFI0eO0NTUlCtWrOCWLVsolUo5bdq0/wJuVBwKFPT0GF+sGNe6uBTY/NHvvvuOixcvLpC2suOvv/5i/fr11c489v79e9rZ2XHVqlVasqzosW/fPlpYWPDHH39UOSVrkocHPyL76ZOJqQGhpwGaZxZkPT2ya1ctn5VIekRBLqx4eeXu78nJDyT+I+WZGzdu0NLSkosXL6aZmVmGXklwcDBbt25NFxcXvps6VS7Ganw3QgH651asWJHt/OmCQhAEtmzZkvPnz1f72AcPHtDU1FQn07cKK+/evaOnpycdHR1znyqn5vTJCpkFWXyxL3BEQS6sXLqk9sNeHGrSDL1796aLiwtr1KjBJ0+eZPlcJpNx06hRjAX4O8D6AEsC7J/pe9gCsHpqb6QGwJ0F/P1cuXKFderU0Xo7ufHkyROamJgovZa5cfjwYZqamvLx48dasKxoIggCly9fThMTE8X0PKWoOX1SqSCLrq8CRRTkwkzacKg6PTB9fTFCMh/cvHmTJUqUYJs2bXJObuHlRUFPj9tThXZwJkEOBvgF5L46AeAegPoA3xXgCEZCQgL19fVzXe6vIJg3bx5btmwpFw8158EuX76c1atXL/LLgGqa+/fv09HRkZ6engxNd+1kMhnDw8MZmWm2BpHz9EmlggyI0ycLEDHKurCzfLk8QjI+Xv7vkR16ekgsXhx/VK2KYbdvo0SJEgVn4yfCgwcP4OLigqpVq+LChQvZR/iGhgI2NkBCgmLXJADBAAJS/74IwBNAaLrDpAB2A3ABgNKlgZcvFdHX2sLBwQF//PEHnJ2dtdpObqSkpGBAnTqYbmAAm3v35DvTXT/o68vv7/btgYkTASenDMf/8MMPuH//Pvbt2/fZ3dskERMTg9DQ0AxbWFgYQkJCcPToUTx9+hSWlpZISEhAeHg4ypYti+1JSWgRG6uoRwDgDeAjgF0AvsjUTkUAGwA0z2yAhwcQGKi18xP5j8/rzi6KDBkifzjNmgXs2wfo6cnFOY20B1mHDig+bhwOTJ2KRz/8gKVLl+rO5iLIoUOH4OPjg6SkpNyn2wQE5FpfAwA1IBfgjgACAZQCUDetgJ6evJ5x4/Jld244Ojri2rVrOhfkEitXYs3z5xlFOD1p9/S//wIHD2aZcrNgwQJ4eHhg5MiRWLJkifYN1jIJCQkZhDWz0GYW3xIlSsDU1DTDJpVKYWtri0aNGiEkJATz589Hhw4dsGjRIhgaGmaZPjkQwDvIp09mFuMcUWGqlYhmEAW5KNCgAbB9OxAWJn+I374NREbK/1Hq1AF8fQGpFCUAbN68GY0bN8aSJUswfPhwHRte+CGJ33//HbNmzUKnTp2gp6cHS0vLnA+6dSt7YUmlOIB+kPdIEgCUBPAPgDJpBeLj5d+jlqlfvz6uXbum9XZyJHWUp3gu1wyA/OUyLk4+KgQoRDlt/reLiwuWLl2KYcOGadFg9UlJSUF4eHiuwpq2LzExUSGqmYW2Zs2aWYTXwMAgVxsGDhyIwYMHw9XVFRs3bkS9unXlz42EBAwBcB/AEWTMZQAAiZALNgAkQX6/lgKgB8hf+OvU0dRlEskFUZCLElJprj0qQ0NDBAYGonHjxrCzs0O7du0KyLiiR3JyMoYPH45z587h6NGjaNGiBU6ePJn7gVFRuRY5AmA8gBMAHAFcBdAJwH4AX6UViozMk93q4OjoiL/++kvr7WTL5f+3d+dxUZVrHMB/iKylooIioyDrgKYmhWhXrxvXzAUVLTVXyGvqpa6VedNyyyQh6XrzXg2vuaCYJiCpqblvmYQL6QVFckNBAlcWYYKZ5/5xABmYFYeZA/N8P5/5gOecOeedcZjnnPc87/OmqCxKcRPALAA/Q/jyHwNgJap9IVUG5YAA4YQUTz/bf/rTn+Dt7Y1BgwbVW7MVCgUePnyoMahWfxQUFKBVq1ZKQbTy94CAgFrLmjdvDgsLC4O2uWXLlti2bRs2b96MoKAgfBoejhkAsgDEQHifnattHwNgAgAphCJDAFD5bXEDQEdAOEGaOtWg7WTqcUBuhDw8PLBjxw6MHj0ax48fh5+fn6mbJDr379/HmDFj0KxZM5w+fRqxsbHo1asXfH19tT+5RQutm6QC+DOErmsACAAQCCFQVwVkI3QFdu3aFZcvX4ZMJoONjU29H6+Wzz9XvsVSYRaANgDuAngE4C8AVgN4t/pGJSXC8xMSqhZ5enpix44dGDNmDI4fP67b/xdU34fV1FVceR+25hWsk5MT/Pz80LdvX6VlrVq1EkVVMQsLC0yePBl9+vTBxIkT0aVZM/xJJoOmVKGb6ncGDBlS73kO7CkOyI1Unz59EBUVhWHDhiE5ORmOjo6mbpJopKenIzg4GKNHj0ZERASICNHR0YiruN+mVbWuwHIA5QDkFY9SCH9UAQCWQwjMLwK4AOAkhEAEwGhdgfb29vDw8EBaWhr8/f3r/XhK8vKAfftUJiPeABAOwBbCVdtgAGk1NyIS8iby85WCQp8+fRAZGYkhQ4YgKSkJZWVlOnUVW1paqryCdXNzQ0BAgNIyR0dHWFtb19tbU9/c3d1x/PhxbPzb3+C/di20d3irYGcnJNgxo+GA3IhNnToVly9fxujRo3Hw4MEG/QVjKPv27cOUKVPwxRdfYMqUKQCA7du3QyKRoFevXrrtZOpUYNEiAMBnAJZUW7UFwCIAiyseYyAk0jgBmA+gqpPViF2BlfeRjR6QNSS//R3ANggZvQ8hdOUvVbFdmVyOQ2PHItHTs1agLS4uRkBAADp16oS2bdsqBVo/Pz+l4Ovk5ITnnntOxREar6ZNm2JaTAyut2gB5xUrYK/HgBq5rS0sV6youl3AjMSEQ66YEcjlchoxYgSFhoYarWSjGCkUCoqOjqZ27dop1aNWKBTUvXt33eeSrdSAKqmtXLlS7/mJDULFNKKVj3SA/AGyFPKJaErFeG1V2/7arRt9/fXXlJiYSKdOnaKrV6/So0ePqKysjIKDg+mtt94y68+2Lkq+/JJKLS2pXIfPZpmNDX3YrNkzzWjG6oYDshkoLCykbt26UZSZVtyRyWQUFhZG3bp1o5s3byqtO3jwIHXq1Inkcrl+O21AldROnDhBPXr0MNrxiIQSj/k9e6p8/XKAOgD0GUClAN0DKBigD9W9XxqmES0sLKSuXbtSdHS0EV9dA5WSQrcDA6kEoD+aNq1dkcvWVjhRTEmhtWvXkqenp1LBEVb/OCCbiaysLHJxcama29dc5OXlUZ8+fWjkyJFUWFhYa31QUBBt3LixbjuvQyW1YoBS3377GV+VfgoKCsje3l55flwDyc/Pp2PHjtF//vMfmjVrFvXt25ccHR3JwcGB9js5qXwP8iuuih9VW7YToM7q3jctlaJu3bpFLi4u+vdymKns1FT62tOT9jk5UfGAAcL7GxVVq1Laxx9/TIGBgVRcXGyilpofDshmJDk5mRwdHfWeDq+hunTpErm7u9P8+fNVXgGfO3eOJBKJzjPnqKTnxO83P/qI2rZtS999990zvDL9SaVSunjxYp2ff//+fTpx4gStWbOGwsPDqX///tSmTRtq3rw59erVi6ZNm0b//Oc/6cCBA5SdnS10IauppUwAuQP0OUBlAD0EaCRAb6p633Sspfzzzz+To6Mj/frrr3V+jeZELpfTF198QU5OTrR582aVXf4KhYImTpxII0eOpPLychO00vxwQDYz3377Lbm6utLdu3dN3ZR6tXv3bnJycqItW7ao3Wbs2LF1moWolpQUoavP1lYIIBq6AomE2aScnZ0pLi7u2Y+to/Hjx9OGDRu0bvfw4UM6deoUxcTE0LvvvksDBw4kZ2dnatasGQUGBlJYWBhFR0fT/v376fbt25rv3WqYbegCQH0BcgCoNUBjUFHnu+ZDj9mG4uLiyM3NjXJzc3V8V9iFCxfIz8+Pxo0bp7JWuEwmo/79+9M777zD9+mNgGtZm6HFixdj//79OHr0KOzsatbtadiICCtWrMDKlSuRmJiotmTk9evX0aNHD9y4cQPNmjUzzMG1VFKrLi0tDYMGDcKyZcsw1QjZ1itWrEBWVha++uorAMDjx4+Rnp6OtLQ0pcfjx4/RqVMndO7cWenRoUOHuhWyCAkRymHW5WvGwgIYNUppHLI2CxcuxKFDh3DkyBHY2trqf0wz9OTJE8ydOxe7d+/G5s2b8ec//1lp/aNHj9C7d2+Ehobigw8+MFErzQMHZDNERBg/fjyaNGmCuLg4g1cMMhWZTIa3334bFy9exPfff48OHTqo3TY8PBzNmzdHRESEEVuoLCMjA0FBQViwYAGmT59eL8coLCxEeno64uPjsXXrVnTp0gVpaWl48OAB/Pz8agVeV1dXNGnSxHANSEkB+vWrValLJ/b2wPHjeg29USgUGDduHGxsbBAbG9toPtvG8MMPP2DatGkIDQ3F4sWLlYZJ3r59G6+88gq+/PJLvP766yZsZSNnystzZjpPnjyhgIAA+vTTT03dFIPIzc2lXr160ejRo6moqEjjtnl5edSyZUtRdNtnZmaSq6srrVq16pn2U1hYSL/88gtt2LCB5syZQ6+99hq5urqSnZ0dde/end544w2ytramnTt30rVr1/TPKn8WdUh+I3v7Ok8jWlxcTC+//DItW7bMwC+k8cvNzaWhQ4fSSy+9RFeuXFFal5qaSk5OTnTy5EkTta7x44BsxnJycqhDhw60fft2UzflmaSmppKbmxstXLhQp0CzcOFCmj59uhFappsbN26Qu7u7TkN3ioqKKCUlhTZt2kRz586loUOHUseOHcnOzo66detGb775Ji1btoySkpIoMzNTKRnHw8OD0tPT6/OlqKdn8tuzzumdnZ1N7du3p/j4eAO9APOhUCho9erV1Lp1a4qJiVG6d/zjjz9SmzZt6PLlyyZsYePFAdnMnT9/nhwdHemXX34xdVPqZOfOneTo6Ejbtm2rvfL334VM3wkThLGsEyZQ6dKl5Nu6teiKHmRlZZG3tzdFREQQkdCDce7cOYqNjaV//OMfNGzYMHJ3dydbW1vq0qULjRs3jpYuXUqJiYmUkZFBZWVlWo8xZswYjUlu9U7P5LdndfbsWXJ0dKRz584ZZH/mJj09nV588UUaMWKE0njk9evXk7u7OyfP1QO+h8yQlJSE8PBwnDlzBu3btzd1c3RCRFi+fDlWr16NnTt34uXq9xlTUoRJCfbtE/5dbdq/MisrkFwO6xEjhDq9AQFGbrmy0tJSXLlyBWlpaThz5gw2btwIKysrPHnyBF5eXrXu8Xp5eaFp07pVvF2+fDny8/MRHR1t4FehJz2S355VYmIi/v73vyM5OVn7tJqsFplMhgULFiAuLg7r16+vmj1u8eLF+OGHH3Ds2DGzK0lanzggMwBAZGQktm/fjpMnT4r+D6y0tBTTpk1DRkYGkpKSIJFInq6smHsXJSWaM3stLITi+StWVM25W59kMhkyMjJqZTVnZWXB09OzKuBKJBJERkYiJCQEy5cvN2hS0oEDBxAREYFjx44ZbJ8NQUREBBITE3HixAmd5hVmtR09ehRTpkzBqFGjEBkZCRsbG4SFheHevXvYuXPn05PEvDzhZOviRWGa0hYthMlYQkN51igdcEBmAIQrztDQUBQUFCA+Pt6wmbYGlJubi5EjR6Jjx45Yv3698hdsZTDWJ6PX3t6gQfmPP/7A1atXawXemzdvwt3dvdYVr7e3d61JP+7du4e//OUvGDBgAFasWGGwoJyfnw8vLy88fPhQtP+/9YGIMHnyZJSWlmL79u1m9doN6cGDB5gxYwYuX76MrVu3wtfXF0OHDoWnpydWh4bCYvlylb1SsLMTTo5fe00UvVJixgGZVZHJZAgKCkKfPn1MOhxInfPnz2PkyJH461//ik8++UQ5UKkYXvN8jeeXQJj+cFXNHddheE1ZWRkyMzNrBd7r16/Dzc2tVuD18fHRaz7iBw8e4NVXX0XPnj3x1VdfGSwou7q64siRI/Dy8jLI/hqK0tJSDBgwAEFBQfj0009N3ZwGi4gQGxuLOXPm4OOPP8bUqVPx7xdewD/y8mBVXi6qXqkGyTS3rplY5eXlkbu7O23atMnUTVESHx9Pjo6OtGPHDtUbaJl9qQig5wA6ri6zV83sS2VlZXT58mWKj4+nJUuW0BtvvEGdO3cmW1tb8vLyohEjRtD8+fMpLi6OUlNTqaSkxGCv+dGjR9SrVy+aPn26wYYpjRw5ssFn1ddVbm4uubm5GbVCWmP122+/Uc+ePWmlry/9q2lTegkgawizdlX/2/ovQJ4Vf3uvApT9jEPaGju+Qma1pKWloX///khMTETv3r1N2hYiwtKlS7Fu3Tp8//336N69e+2N8vIANzflbrIaNkGYt/gaAFXXmmRri+tHj+Li3btKV7yZmZlwcXGpdcXr6+trlCpnhYWFGDZsGDw8PLBu3TpYWlo+0/6WLl2KoqIiREZGGqiFDculS5cwcOBA7Nq1Cz179jR1cxq08p9/hqJvX+wpK0MTAD9C6IXaWLH+OIDXARwF4A1hDuz0iuV16ZUyCyY+IWAitXfvXnJ2dqbr16+brA1PnjyhsWPHUmBgIOXk5KjfUMMkBpWP/gAt0rC+GKBlLVvS0KFDae7cubRp0yY6e/asKGa6KSoqogEDBtCbb76p0/AmTfbs2UNBQUEGalnDtHv3bmrXrh3dunXL1E1p2Gr0Sn1c4wr5A4BmVft3NoRZvn7T0itlzvgKman1r3/9C//9739x+vRpNG/e3KjHzsnJwYgRIyCVSrFu3TrNdYknTgTi4tSuzgLgDuC3ip9qTZoExMbWrcH1rKSkBKNGjULz5s0RFxcHKyurOu3n7t27eOGFF3Dv3j2zLisZHR2N2NhY/PTTT3j++ZrZBkwrFb1SnwC4g6dXyB9AuGJeXfHvbADtASQBGAEAtrZAVhZnX1fD6YZMrXfffRe9e/fG+PHjIZfLjXbcs2fPIjAwECEhIdi8ebP2SQIeP9a4OhZAb2gJxoAwJlak7OzskJSUhJKSErz++uuQyWR12k+7du1gY2ODrKwsA7ewYXn//fcREBCACRMmGPWz3Whs3Kh1kyEAvgNwEUJg/hTC7aKqtEsLC532Y044IDO1LCwssGrVKshkMsyZM8cox9y+fTtee+01rFq1CvPmzdPtKq5FC42rYwFM0eXgLVvqspXJ2NraIiEhAZaWlggJCUGphnvmmvj7++PcuXMGbl3DYmFhgdWrV+Px48eYP3++8sq8PCAqSuh5GT5c+BkVJRQ0YQAAeWqqxpwNABgIIW9jNAA3AB0BNINwlQxAqBVw6VL9NbIBqlvJH2Y2rKyssGPHDvTs2RN+fn71NiuRQqHA4sWLEZzk8ZQAAAvqSURBVBsbi0OHDqFbt246PzfHyQmOlpawVnGlcxpCV5nW+Wns7IRqUSJnbW2Nbdu2YfLkyQgODkZSUpLexS78/f1x/vx5hISE1FMrGwZra2skJCQgMDAQfn5+mNq5s9oKb0hMBBYtavRjaeVyOfLz85GTk4Ps7Gzk5OSo/H3D/fsYpsP+/lbxAICrAD4D8EL1DUTcK2UKHJCZVi1btsSePXvQu3dveHl5YcCAAQbdf3FxMaZMmYK7d+8iOTkZbdu21focmUyG+Ph4rFmzBgW//YZzaq6kNwEIgXBmrhGRULqxAbCyssKWLVsQGhqKoUOHYvfu3XrdB/X398fatWvrsYUNR+vWrbFnzx58ExAAeVkZLP/4Q/VY2pIS4WdSEvDjjw1uLC0R4fHjxyqDbPVlv//+OxwcHODi4gKJRAIXFxe4uLigR48eVb9LJBK0+eCDqryN8oqHvOJRCiGwlEPI2+gM4DaA6RAyrZX6oUTeK2VsHJCZTry9vfHtt99i/PjxOHnyJHx8fAyy3zt37iA4OBhdunTBkSNHtBbPuHHjBmJiYrBhwwZ07doV77//PoYPHw6rsWOFL8saX6YxujTCwgIYMqRBJZdYWlpiw4YNePvttzF48GDs3btX58S7l156CefOnQMRmXViVyXfo0exvKwMlrrclycSis9U3sIRQVAuKSnRekWbk5ODpk2bKgVZiUQCHx8f9OvXr2q5s7OzbgVsunYFEhKA0lJ8BqFrutIWAIsAzAbwJoShhs0AhAJYWn0fDaRXypg4y5rpZe3atYiOjsaZM2fQ8hnPbpOTkxESEoLZs2djzpw5aoODXC7Hvn37sGbNGiQnJ2Py5MmYMWOG8kmBikpdOmvAYyIVCgXCw8Nx/vx57N+/Hw4ODlqfQ0Ro06YNUlNTleuAmyMNn5ttEAJNFgBnCNnDfapvUM+fm/LycuTm5moMsjk5OSguLlYKsjV/l0gkaNeuHZo109pPpDsdxv5rxVnWtXBAZnp77733cPHiRezfv//p8Bs9i8pv3boVs2fPxjfffIPhw4erPE5eXh6++eYbxMTEoE2bNpg5cybGjh2r/p6pCGpZmwIR4b333sPJkydx4MABtG7dWutzXn31VYSHh6t9781GSIjKnpWDAKYB2A6gB4C7FcuVTl8sLIBRo4QrRT0QEe7fv6/1qvbevXtwcnLSGGxdXFzQunVr0/R0qHnvdFLH966x44DM9CaXyxEcHIwOHTpgTViYXkXlFQoFFixYgK1bt2LXrl3oUqPLiohw6tQprFmzBvv27UNISAhmzpypPL2iJiKd7am+ERE++ugj7N+/H4cOHYKTlquOefPmwdbWFosWLTJSC0VIw1XeKwDeqnhoVOMqr6ioSOW92eq/3717F/b29hqDrEQiQdu2bes81aZRmGmvVH3igMzqpKCgACt9fTHv3j2di8qXLluG8ceP4/79+0hISFAKGgUFBdiyZQvWrFmDsrIyzJw5E5MnT65bt/jZs0K27N69wrErE3KApycJQ4YIJwmN6AuBiLBo0SIkJCTg8OHDcHZ2VrttfHw8YmNjsWvXLiO2UGSiooTM6RoBWQ7ADsK42XUQkpRGAviiYnl1MktLbOzYEf9s2hQ5OTkoLy9X221cuczFxcUoZVeNwkx7peqNsUuDsUZi9WqSaylXWfPxxMKCNvXqRTKZrGo3v/76K82YMYMcHBxozJgxdPjwYVIoFIZpY14eUVQU0aRJRMOGCT+jooTljdjSpUtJKpXSnTt31G5z7do1kkgkRmyVCE2YoPJzWlni8SWAcgDKB+gVgOar+VxnDxxIaWlp9PDhQ8N9dhuS1auFCSM0TO5SNYkLTyyhEQdkpr9ffiGyt6dSgMIAcgXoeYBeBGhvtT/AQwBJAbIDqB9ANwFS2NuT7KefaMuWLfTKK6+QRCKhJUuWUHZ2tqlfVaMSFRVFnp6eaus1KxQKcnBwoNzcXCO3zLRKS0vpf//7HyUkJNBVqVRl4HhQEZA3VlsWX/H5Vhlohg0z9csyvZQUoTa1rS2RnZ3y+2NnJywPCRG2Y2qJ+AYFE63PPwdKSlAOoAOE2VtcAewF8AaASxDmIg6B0OU3HMACAGMBnH7yBAf698emvn0xZ84cDB8+XNz3yRqoDz/8ENbW1ujbty8OHz4MDw8PpfUWFhbw9/fHhQsXMHjwYBO1sn4QEXJzc5GRkVH1uHLlCjIyMpCdnQ03NzdIpVIsaqK6UGFLCNWkdE6T4rG0wq2fhAShmtnGjUIFrocPhfemSxdhjD9nU2vF95CZfrQMd+gKYQzifQjDRE5XLC8G4AjgAgAfGxs0uX2b/0CN4Ouvv0ZERAQOHz4Mb29vpXWLZ81Cn2vXMNDJSafMeLEpKSlBZmZmrcB79epVWFtbQyqVQiqVwtfXt+p3Dw+PpyMD1NxDBoCFAPYB+AGAFYBgAP1QYxwtIOQkLFkCfPhh/b1QZjY4IDP9aPgS+x1CzdpUAGsA/FHxs9ILqKhty19iRrV+/XosXLgQBw8ehJ+fn5Ad+/nnkO/Zg3K5HDYKxdONVWTGmxIRITs7WynoVgbe3NxceHh41Aq6UqkUrVq10r5zDSeXZRCqSm0FYAuh5yeq4nclPJaWGRD3FTL9XLyo9gtsAoRJHHwBFAGo+RXVAkAhwEXljSwsLAxWVlYYOHAgUt56C5IvvwRKSmBJBMuaG5uoRGRxcTGuXr1aK/BmZGTg+eefVwq2gwYNglQqRceOHZ/tdkebNsKJh4qxtFYQpg1crfKJFRpghTcmbhyQmX5UTHWoADAJgDWAf1csex5AQY3tClCtpjQXlTeqSZMmwe/4cbT87DOl5f0AnMHTLwIJgAygXkpEKhQK3L59W2XQzc/Ph5eXV1XQHTx4MGbPng0fHx+dqo/V2bx5wolHXcbS2tkJz2fMQDggM/3UmOqQIBRP+B1CUlfF3Tl0hjCxQ6ViCDVtO1cu4EQY40pJwcvffqty1b8hVKVSqTIoBwToPGa7sLBQZdDNzMyEg4OD0tXusGHDIJVK4erqCkvLWtfr9S8gQOgFqOtY2kY0jp2ZHgdkpp9qReUBYCaAywAOQblowigAHwJIADAUQpGFrhC6s7movAlUZMbXSUmJ8PxqZQ7lcjlu3bqlMvA+evQI3t7eVUE3ODgYvr6+8PHxMWw9ZUOpvPo3wwpvTFw4qYvpp1oizC0Ik47bQPnMLgbC/eRDAMIB3AIQCCHruiPAiTDGpiF5qR+ANAg9HVIAyyqW1VRuZYXIWbNw4c4dZGRk4Nq1a3B0dFS62q1Mrmrfvj2aqBlSJGpmWuGNiQdfITP9VEuEcSOCprO5IABXai7kRBjj27hR7apIAJ0g3P/fBmHMeCoAzxrbyRUKBKSnwzMsDFKpFD4+PnjuuefqqcEmwmNpmYnxFTLTHxeVb1gmTqyaTF6bwRBuMbyjauWkSUBsrAEbxhirrgH2KzGTq0yEUTcNojqcCGMaKjLj1bEA1Pd6cGY8Y/WKAzKrm5kznwZlbXOxWljwDC+mVCMzvtIjAD9CmM2oHEAcgBMAXlW3H86MZ6xecUBmdTdzptD9PGqUkKhVc0o5Ozth+ahRwnYcjE2ja1fh/6GGMgCfQCjg4ghgFYAkCMldtXBmPGP1ju8hM8PgRBjx0lJ/XCecGc9YveOAzJg5CAlRWSJSJxYWQi9HtXHIjDHD44DMmDngzHjGRI/vITNmDjgznjHR48IgjJkLLhHJmKhxlzVj5oZLRDImShyQGTNXnBnPmKhwQGaMMcZEgJO6GGOMMRHggMwYY4yJAAdkxhhjTAQ4IDPGGGMiwAGZMcYYEwEOyIwxxpgIcEBmjDHGRIADMmOMMSYCHJAZY4wxEeCAzBhjjIkAB2TGGGNMBDggM8YYYyLAAZkxxhgTAQ7IjDHGmAhwQGaMMcZEgAMyY4wxJgIckBljjDER4IDMGGOMiQAHZMYYY0wEOCAzxhhjIsABmTHGGBMBDsiMMcaYCHBAZowxxkSAAzJjjDEmAhyQGWOMMRHggMwYY4yJAAdkxhhjTAQ4IDPGGGMiwAGZMcYYEwEOyIwxxpgI/B9n5lq9o+FAtgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Review an example\n", "\n", "plot_given_edges(rep27[0])" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "# Confirm this has saturated vertex 1 in all examples\n", "deg_of_1 = [sum(r[1]) for r in rep27]\n", "assert min(deg_of_1) == 14\n", "assert max(deg_of_1) == 14" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Continuing to grow\n", "\n", "The logic will now seek to introduce neighbours for vertex 3 rather than vertex 2, since it is of higher degree. \n" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:32.339459: Starting with 11 seeds\n", "2020-07-08 15:24:33.499353: 131 valid graphs from templates\n", "2020-07-08 15:24:33.523290: Reduced to 66 representatives\n", "Wall time: 1.18 s\n" ] } ], "source": [ "%time rep28 = find_valid_supergraphs_greedy(rep27, verbose=False)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:24:36.292213: Starting with 66 seeds\n", "2020-07-08 15:25:09.383716: 5871 valid graphs from templates\n", "2020-07-08 15:25:10.424933: Reduced to 3588 representatives\n", "Wall time: 34.1 s\n" ] } ], "source": [ "%time rep29 = find_valid_supergraphs_greedy(rep28, verbose=False)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2020-07-08 15:25:55.424580: Starting with 3588 seeds\n", "2020-07-08 16:05:34.111700: 296543 valid graphs from templates\n", "2020-07-08 16:06:29.237229: Reduced to 223200 representatives\n", "Wall time: 40min 33s\n" ] } ], "source": [ "%time rep30 = find_valid_supergraphs_greedy(rep29, verbose=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Expect we would hit the memory issue if we proceeded with this many seeds!" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "pickle.dump( rep30, open( \"fullsearch_sat-30.p\", \"wb\" ) )" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.3" } }, "nbformat": 4, "nbformat_minor": 2 }