{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Hackers Delight\n", "Neste notebook, são explorados problemas selecionados do clássico livro [\"Hacker's Delight\"](https://www.hackersdelight.org/). A ideia é permitir que o aluno se familiarize com manipulações de bits e outras operações de baixo nível em computação.\n", "## Manipulando bits mais à direita\n", "Segundo capítulo da 2ª edição.\n", "### Como determinar que um inteiro (unsigned) é uma potência de 2? (pag 11)\n", "Exlique porque a fórmula abaixo funciona e mostre o que acontece em binário." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{0: True,\n", " 1: True,\n", " 2: True,\n", " 3: False,\n", " 4: True,\n", " 5: False,\n", " 6: False,\n", " 7: False,\n", " 8: True,\n", " 9: False,\n", " 10: False,\n", " 11: False,\n", " 12: False,\n", " 13: False,\n", " 14: False,\n", " 15: False,\n", " 16: True}" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "f1 = lambda x: x&(x-1)==0\n", "{n: f1(n) for n in range(17)}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Desligando todos os bits `1` em uma palavra x. Retornando x se não houver nenhum. (pag 11)\n", "Descubra uma utilidade para esta função." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0b10100000'" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "f2 = lambda x: x&(x+1)\n", "x = 0b10100111\n", "bin(f2(x))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Adição em binário \n", "Pagina 16\n", "### Trocando o sinal de um inteiro." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "160" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x=-160\n", "~x+1" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "160" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "~(x-1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Somando dois inteiros\n", "Escreva uma variação da função abaixo para implementar subtração." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "30" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "soma = lambda x,y: x-~y-1\n", "soma(23,7)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Média de dois inteiros (pag. 19)\n", "Como a operação bitwise só gera inteiros, escreva uma função de teste para verificar se esta operação arredonda para cima ou para baixo." ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "-5" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "media = lambda x,y: (x|y)-((x^y)>>1)\n", "media(-3,-8)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Shifting\n", "A Operação de shift realiza multiplicações ou divisões por potências de 2: $x << n = x \\times 2^n$ e $x >> n = \\frac{x}{2^n}$" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "3>>2" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "12" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "3<<2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Visualizando Operações Booleanas\n", "No Apêndice C do Livro, Existe uma exploração gráfica de operações lógicas. Comece o exercício abaixo com o resultado de `and`, `or` e `xor`; depois explore outras." ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "source": [ "import numpy as np\n", "%pylab inline" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " 1 0 LOAD_CONST 2 (2)\n", " 2 RETURN_VALUE\n" ] } ], "source": [] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 6 µs, sys: 2 µs, total: 8 µs\n", "Wall time: 15.7 µs\n" ] } ], "source": [ "%time\n", "o = 256\n", "bor = np.zeros((o,o))\n", "for i in range(o):\n", " for j in range(o):\n", " bor[i,j] = i|j" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAUIAAAEvCAYAAAAwx8gYAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO29b8g1yXUf+Kv7vM87M3onlix5VkwkreSYIfJkYWUzMYKYbBzbsSwWFGPw2h9iBQzzITLEIQuRyRezYPAarOCFRMtoLSIvjv+AHSyI1vkjEoTBtlY2sqw/UaTY2kizYwknwtLKYeZ576390F3d1VWnzvlVd917+3lun+Gdfqrq1OlfnaruPn3q9LnOe4+NNtpoo0um3bkBbLTRRhudm7Yb4UYbbXTxtN0IN9poo4un7Ua40UYbXTxtN8KNNtro4mm7EW600UYXT/fODQAAvuGVV/4Nr7s+N4yNNtrojtHvfuzFP/HeP2HxreJG+IbXXePD//K/PTeMjTba6I7R1ZOf+X8YvlW8GoeQ7gMOxaPW1qrPJr+t/DViujT5a8R0SvksmTdC59zrnHP/1jn3SefcJ5xzf7ev/wnn3PPOuY/2/94a9flx59xnnXOfds59jw3D48Y/xK6Hs/eHrCzVte7Dyg3lGiw3/uHF4b/EMa8N/yWOOT0XQwz3QwB/33v/NIA3A3iHc+7pvu0fee/f1P/7AAD0bT8I4C8BeAuAf+Kcu9JOkFuEPitLda37sHJDuQbLKP9y8F/imNeG/xLHnJ6LIdNH6L1/AcAL/d9fdc59CsBrlC5vA/BL3vsXAfyRc+6zAL4NwG9p53mIPR76PQDgMffIpG0cKFQerb0VT9p+LCxzxnxMLGFZHVP/lzjmGizbmOuxsFRlPzrn3gDgWwD8Tl/1o865jznn3uuc+/q+7jUAPh91+wKEG6dz7lnn3Eeccx/5k//cDWTv0zv8YagPbRpP2s7wxEeGJ26vwRKIxTJnzDVYYv2w56nBcqljXtuau8Qxp38zRN8InXOPA/hVAD/mvf8KgHcD+CYAb0JnMf5MzYm9989575/x3j/zqlftcOMPuHIOQP7uH8xviydtZ3hSf0LNeWqwpL4L5jy1Y67BEvte2PPU6v8Sx7y2NXeJYz6WjxDOuWt0N8Ff8N7/GgB477/ovd977w8A3oPu9RcAngfwuqj7a/u6IoXn0Hhnn97h9/DYI7375zxpO8MTtzM8cXsNlkAsljljrsEysRTI89RgudQxr23NXeKY03MxZPoInXMOwM8B+JT3/l1R/ZO9/xAAvg/Ax/u/3w/gnznn3gXgzwN4CsCHrfPcBOA+quz/ftXugdV9MiETGa3knBjLOOlHwhL9zWCJF9mxsFziPB8dywrn+ZRYWGIswr8C4G8B+OtJqMxPO+f+wDn3MQDfAeDvAYD3/hMAfgXAJwH8BoB3eB95PAUKY0zf+TU/hOUvYPxNjO+C8b0wWFL5zHhqsARisWi+F8Z3xOqWxRL4aue5BovmL2P8TbdxzZ1inmuwBKqZ5yVrjiVm1/g3ATih6QNKn58E8JM1QG68x3X/rn8AcIjKex9M4QOu3b2hLi6nfYIaUjmajJIcTQaL5dBPHotFwt8Sy3XiY2N0G+O3sIRy14fDMmeea7DMmecY/21cc6eY53TOWmKZM8/xnLG0ki9Lkjs+4Yew/AWMv4nxXTC+FwbLIJ/EIuFnfC8sFs33wviOWN2yWEKf2nmuwaL5yxh/021cc6eY5xosgWrmecmaY2kV3xrDAy8FJXmPB7vp/XkcaDlmaO+jiRRkBDmaDEZOKuNYWPZ997VgiS8SBstc3XZHfp4BHA1LuJQuac2dYp5PiYWllViEHYWFN8/3ksuY52OzsaTyGSxI/mbGU4NlxM9hqfO9jMRikX1stozaea7BMrWouPHUYFnjmjvFPNdgQaFOk7FkzbG0DosQDjdwuB5MXSQ+hr7ee1y76BtHRP4BOOyBiQwIcjQZJTmaDBZL7nvRsex7t+yxsEx9LzaWYIuwWEQfG6Hbcc64ea7BMmeeO/y3d82dYp67vsfBMmeeuzm7lT7CjoY7/xzfi89lzPKxCXJKMmqwBKL9Hb4Oy4CfxFLle4neUFgsoo+NGE/tPNdgmVgvpG5rsKxxzZ1inmuwoFCnyViy5lhaiUUI3PjOKgSQx2QNFVnDQG+8frwJjj0c9h4GljKOVlgGi3AlWILPci1YbuJAhrVgEU95e7Cc7ho6HRaWVmERbrTRRhudk1ZxIwzPhdEvlh+1NkBytkpOXP1oYWAxafJZLMyY02MNlhr9aPJrMDHnY7HMxVSDJRCLZe6c1azTGiy1mOasUwnTnHWqrds51/EtfjXe4doF/4DDAW5SBpDVxWUm0JMKbhXOrZVZLFZwbhZQSox5CRYtOFfCcugXKItF6mOdhwqoJsbM6InBYgZUz1inS7CoAdUz1kZprWhjpgKqG2KpWad3ZrNkmUWYOFslJ65RtjCwmJhATzugtJVFWD5PDZY5+kn7MPPBYlluEXJrowbLfIuQX6c1WGoxzVmnckB1C4uwfp3e+s0SD4eXcDXcER+4m0n7PqTi7phFnqCupQkj99ip50nbj4WFGfMpsQyhvCSWtJ05z7igCSzKmFthCZcSi0U6T0ssakB1AyzMmFtcQzVYVpmY9dgUXi2yp4N342tHgYcJ9KSCW43zxO01WAb5JBZmzGl7DZZYPwyWVD8WFvHpb5yHCqgmxqzprQbLIJ/EIllf1hzWYFEDqokxs9cQiyXU12AJVHM912AZ5N9Oi1D3EY7KUXwvsAM96eBW5TxpO4slT0BABlQfCcv0o38iuLVfsCwW0a9onIcOqDbGbM0hi4UKqPa6j7AlFjOg2jiPxcOMmQ6oboRFG/OdC6gOyW3KT4cd9n6n8xCBnlTCSOs8UXsNlkAsFmrMSXsNlolFSGAZ8JNYZH+QcR4QiVmZMSt6q8EyyCexiP44Yw5rsGgB1dSYyWuIxRLaa7CM8vnruQZLoFtsEd7DTSgk9MTV10wZ8YRkMvoyl1Ryh4PfnR3LIaQjPxaW6G8Gy6FfuMfE0mJ+NizzsUxw3BEsLK3EIuxo0c5X4i+g/E3J0cJAYxKwDPJJLHN3IFks+gf8OZY5+sn6KFjC+VgsczHVYAnEYpk9ZyQWTT+Lrp1EJyyWEqZZ61RZtzVYAt1Oi9A7vOSvcN+FX7PrdpRCmYrPQvAtuaGMpI6Lz5qeW8JixkQJWGoTs4ZXh2NhqUmSGc6LCiyyj1DHwsV+Ts9bg2Xql7Ox2DF1+VpJ56wlFj2mTl+3DBZpnVpY5Dlrh+WiErMGGna3Zj3VkqcG4W8SP4BP5EpYbEw5lmGMJJYDXBWWVIcWFvUDfgFLKt/CwvgI5yRmTc9bg0XzEc5JzCrNTw2WUT8clqn1ZWPJx8xdQyyWUK7BMo6Zv55rsAS6nRYhgBtc4cZfAQAeuJcm7VRMnY8m0i9IktnHN2lYzDi2BljiMa8BS3iWs1jE2DEDy7igbSwBxzGxhEuJxZLiaI2FiSNcgqVZYtYVYWFpJRZhMHXDxZ88UZiYul5SOGq+BS2OcMCgYEkxMViQ/G3Hju2qsAzySSw1vpd415jFIj39NSwlTCUsE0wkltg6YrAgabOwSNYXFVNHYtFj6sprhcUS21AMlnD+GiyD/IrruQbLiP+2WoT+Hq7dQwDIfQzDjdKIqcPyJJlhx0vDQsWxIU9MCfCJWeNd42NgqUmSGe8as1jEb40NLEwcYTo/NViyODYDix1Tl6+VTvZxsOgxdfq6ZbAEHKjAIsfrtsNyUYlZAw2xRam/gIipa5UkMwQOa1gCjhoso3wOy967KiyDfBJLje9lH8snsYgWoYIllFksk9hGEsvUOrKxjGPmsIg+QiKmrkViVm2tsFhaJWa11m0NlolFOMOvy9JKLMJu1xjR98bnou9/8FWDY4dTPD8GH6EHzq0XWyfAKfWyBp0Am15KtCa9sLQeJBtttNFGZ6JV3QgPg7mcH7W2Vn2A3AmtHWt4q+XPxX8M/czBP7MPo5eTjJmRf+o1ock/1ZgZ+adeE4p8llbyapxslqDzCcZlAFmdVa7t0/EvT5LZIjHrbPyEXqr7zEzY2SLJp6SXk4wZo1/a0svSZMBN1typxsxcZ6ca810LqPaDgzQoNS9Lda37AECLJJlNErPOxF/Th5U7N2HnnD6MXk4x5niDyNJLDX45iH/5mjvVmJnr7FRjvnMB1UAXfHnTO3pftntx0jaGkkDl0dp5nk6FS5JkWjK489SPGTiOXg7RslqSsJPRbXfU9XKaMe+GnUtLL0uTAbdZc6ca8/JrqN2Y7fOwtA6LsFf+uKU+PUrBxRJP2s7wxMeuLd2Sn/ofuOBWWQbDM7bXj5nVS6of+zxSKMkxxjwvoPo4Y47XhK4XPbhYHw+rl1Q/ll6ON2bmOjvVmO01x9JKLEKHG3+F6yEIdeqHOAyvzjpP2g7A5En9KC2SZLZIzDpnzKxe8jHrPHMTdtaPuV/Qhl5OM+auvcOv62VpMuA2a+5UY2aus1ON+Y4FVAd7Y3zapH4I4XMzgSdtZ3jidgB2QC8T3EoEetYkZmXHzOoltLN6mZuws3rMVED1icYsWEclvajBxUwQf4s1d6oxM9fZqcZ81wKqAeAl30PxedsT975i9o93vEoBpYycNkkylydmjZ+0ohycTi/tEnYu122rebbkLForUfk26WUioyCnxTUEMMmALzAx67hrXDoysVB5X0mOdgRyv4PmyyjFMc35gD87ivj18bB6yeXrepmTNILxETI+Nkkv8ZHRixzzxumW0UtN0gjGXzZnzbWYZ12nZRmMXuIjoxdNpzVrjqXVWIS5jxCqH0KOb5L6lP0dsh8FWJoksyQDqEjMWsRfHg+rl7jM6EXCb+lF9hHauu3Ob8URSvjr5tnSCxNTJ40HpF6m/rLla67FPI+f6fFrTvYR6uNh9CL1mbPmWFqJRdhR/tQJA7Zj6vInff70p+LwEr/DnCSZTRKzitaLPh5WL6HM6mVuws5All40H5ukl3g8jF4kfxmrW0YvNUkjGH/ZrMSsDeZ5agVza47xEaZlRi8XmZg17BqPsUnTRI5MTF2X1qcsI8ixYqCaJMk0ZEhy8kSbYeHperFi6lropVnCTkK33VHXSzyebsy6XsR5NvTCxNQ1SwbcYs21mOdexnTMM3TbYv03WnMsrcwilP03TEyd9KSX5GgygOj1pj9q/o6yr0KWocnLfT6a9SKPh9VLqh9TtxiJ0Us8DkYvVT421Xqxx8P6mJmYOmk8Nf4+JP0XrbkW8yyuI1u3jF7iI6OXWMaSNcfSSixC3UfIxNSFp5nmI2RirVokyWyRmDW2CDW9WDF1kl5S35Gll7kJO7NvjRskZk3Hw+ilOM+Ebjv8ul6WJgNutuZazLM4Zl23HR5dL7XJgC8yMas3/FpMTB2zQ8jEEbZIktkiMStjvTAxdYzFbOt2EE/pJR4Po5cqHxthvTAxdaxuGb3E45mTDLjNmmsxz9qbRVkGo5d4PIxeLjIxKwDcHPofeJ9J3/zY801wdE9F4CZk0/Uph5cqJ/TG68eX44gW3Ln1EnQCrEMvS3UCtNVLWSeh8nbo5XTXUKgs66WFTmpoFRbhRhtttNE5aRU3wmGzZPgFq/yotQHWqzF3BCLfHHEstTGBnvaRGHNyZPVSq5+636N1xT7M2Bm9mGNm1lHFmrD0wqwJTT/8mtD0s+DaSXRSox9pHdWsCeYaqtHPgP92vhonSRd896tXcRlAVjcpMwkjmYBqP/01Lass1bVJUkqMOSmzeuGCsKMAWZ//Ih2rp7hPk8SszJgZPTVIUiqNGUD1+mmTpHTG2iisFW3MVED1jGvGuoZq9NThv42bJf1xfDKlTyon1sXlVolZ21iEaUiAsHFgBg7bY07LrF5CmdVLO4vQGDMVUG2PWSszeonLjF6WW4S2XkKZ1Ys0ZvYaYvSiB1S3sAiJMZ8yoNo59zoAPw/g1ejuWc9573/WOfdKAL8M4A0APgfgB7z3X3bOOQA/C+CtAP4MwN/23v+edZ4bf4Wbfus+DeKMQ2FKPK0Ss+7RPSWDTh+4G7Vd4mECPe2AanvMIbQhtEs8LfQyjDkat6WXtJ0ZMxdQbY855ZkTXEwFVBNjbqWXuF3iYcZs8bRKzNpCL8yYTx1Q/RDA3/fePw3gzQDe4Zx7GsA7AXzQe/8UgA/2ZQD4XgBP9f+eBfBu6wRZ0oXMdyEkIED6NLMDPamA6jSANH1SSYGq6VONCPS0A4ftMYsJCAi9pPqxA21z60vTS1zP6CXWCaMXa8ya3hi9xPWMXuIxs3qZ/savrZdUP5ZeZL8odw0xelEDqokxWzzMmE8aUO29fwHAC/3fX3XOfQrAawC8DcBf69neB+DfAfgHff3Pe+89gN92zr3COfdkL6dID/0V7hV8F/EndmWeNolZu61/xXeRtEs8bZKUMmPeTdpZveSJJphAW9fj5/Qi+hXNMfcL2tCLPeadqjdmzHRAtdd9hNZ6YvViJyllxqzztErMyozZ4ll1Ylbn3BsAfAuA3wHw6ujm9sfoXp2B7ib5+ajbF/q6VNazzrmPOOc+8mdf7szr0hNr6oco8diBnkxA9T55quVPKiFQNfNz2IGedgJSZsyCdUToJYyZ1cv0Ez5bL3E9o5dYJ4xe7DGX9cboJR2zxaNZhNZ6YvUS2lm96H5R/RpixsxcZ7oVbFxnzJjPEVDtnHscwK8C+DHv/Vdc9LmM99475/So0YS8988BeA4AXv30K/3NYYfSfflV118z5bVLzNrdIG4Kcp64srG0SNg5Xazn1UvQCYDj6IXUCRA/gMrP8BZ6abFWgNull3aJWZfrZZWJWZ1z1+hugr/gvf+1vvqLzrkn+/YnAXypr38ewOui7q/t64qU/pxn/hE3E0eYH/M6PSYKkJ5M5WOxrfBRePy3GRMl+l5yvcRHVi+5fvTztNo1bpOYVfLr6nqh/GWFtcLoZemucZvErOU5ZPQSj53Ry7HjCE+dmNW8Efa7wD8H4FPe+3dFTe8H8Pb+77cD+PWo/oddR28G8KeWfxDodrJ2kV9lUvb950P+CrvBHE7K6MtuLEt1N/5edJ5pOch9yV/hKjpPXD54hxu/wxW8WAcABwA33uMqSkx54/2kbu8PuPEPsRt8LEm5v6gsvcQ6YPUSyqxegg5YvcRlRi+xThi9xDpg9BKXGb3EOmD0EuuE1ctVNGeMXoIOWL3EZUYvsQ4YvcQ6YfQSlxm9xDpg9BKX4zqWGO6/AuBvAfjrzrmP9v/eCuCnAHy3c+4zAL6rLwPABwD8IYDPAngPgL9jnSCoJ991yv1x5ZiovG/+wXjqyxCe/umu3xyLMPFdzEvMKllshbK0G6foJZVv/8B7/iTX9BIfGb3UJWaVLDZdL3JMna5T7gfe87XC6kXzEc5LzMpfB9Y1xOhFiyO0riFOP4JFaPhSj+oj9N7/JhCNYErfKfB7AO+oQgGHh4crhH3Mx67q4wi7XagGiVn7+KZwngdOiFED1DjCFokpxwUIVS92TF2LhJ1jHCGrFzF2zNALE0fYXdijTgBbL3JMXYPErMZaiXmW6sWMqUv0kupkwEJcQ9Mxz0l6u1wvF5mYNVD5O1Amps7uw8QRZrti6dNN8LHlUfGYHGclZpX8osIY4yOrlwy/oRdxN1HRS1zP6KUqMavkFzX0IvsI9T5zYurmxhEyekn1Y35rLPrwuGuI0UtNvO6cOMJYJ4xeYl2kfzO0im+NvQdu/C6JvbpCTRxh2mduYtaw4zXERPXnuT85j/GtMRokZo0WiKYXK6ZO0kttws5415jVixRHWNJLVWJW7yY6YfQif2u8PDGrtFY6PlsvGX5DL2Zi1kQv6fgYvcQW4ZLErNY1xOgl1Qmjl1v/rXGgfEdP8kPo/g3tScjFEU55M5+P5GPLrIAwnl6m4COsSsyq6CWuZ/WS4Tf0EvvLGL3E9YxeZiVmFa0LWS+6j1C2DLmYunytsHqZWke2XkKZ1YvkI2SvIUYvehyhfg0xernIxKw+8RFuBLzv9R86N4RK2uEUz9XuBr6tlZS29bKM1oNko4022uhMtKobIRUIW3Gs7bMu+csSUjLHY8s/DqY1z9k55Z9vntcsn6WVvBoDD/0O9xLHaVwGkNVZ5do+rNy5fQDQcrkkpfOTVy5NeHmsPtaY1zxn51xz55xna87OuU5ZWqdFmDl+pY0Du1zbh5UbyjVYmDFOykxwcVJmeFolvDxWHzugesVzds41d8Z5XvM6ZWkVFiF8t1kS6NGrJEnjsCul82jtrXjS9mNhGSd3WcLOlGdOkthDtKxYLHPPY475VPo/0XmaYblF81yDZU2JWY9O4T7e0vdy2/1BTHCxlNTB4pF8L+x5arBI/pomiVlXPGfnlH/Oea5Zc6n8Jclo71xANbD5CLMyEVy8JHll7ENhE4MCoLHMS0ZLjHnNc3bONXfGeQZwtDW3ysSsx6LMIhSCQ4uBwhFP2s7wxGWGRw3ONc5Tg4VKUpq0MzyS74U9Tw2WWcloqYBqwaKqmGdW/5Mg9Vuw5s45zzVrbpBfsbZXlZj12PTwUL4nv+L+fzX7xzfLY8o5FZZx0vvJ9VFj/zeVsBN60k9GTqskmW0TkJbpNs1zMyy3aJ5PiYWllViEyZNP+zSqdBT6Fj8l0vw1JQyCjBosmfwZPkLG92L5UbgP+G3f0ZwkmW0Ssyo6JXRrzZFocd6CNXfOea5Zc8OYSSynSsy6Hosw9hGiW1BVvpe0T7RYq3wvghxNBosljIH3EQbZ8Ufm0zITa5X2SctSn5IMADQW2UdojweAgWWqW2aOlsyzOmerWnPnm+d0zlpiifvMWXMsrcIiDKZu+cnIxGcRT2cqpsuyGJiYNMIiNLBI/jLG92L5UagP+Anf0ZwkmW0Ts2pzxsThcfNcklPqe641d855rllzw5hJLBOLcMaaY2kVFqHH1Ef46NX0k/pxQVixVi5qzz/L73iYmK6ynFTGsbDs+zldmrCzRZLYVkky2yRmzf1p1hyteZ5bYblN83xKLCytwyLsafMRxkcMz7RwnOd7KcvgfS8jsVhkv6Utw8Sy+QgL8jA5nnKea9YcCnWajCVrjqWVWIQODw873Nst8BH2izCWEeqr47MSOdX+moIMoOJb4+GVZ2HCTuhJPyU5JRmowCJ+t2pgoeMII90yc7Rkns05W8maO+c8d32Ps+YuMzGr8mTMno6Jj8RT/hpdRklOSUYNluIYi/6n7l9X19Es34sig/a9RG8oLBbxu1ViPBaWVLfx34xurTkS5+wWrLlzznPNmkOhTpOxZM2xtAqLEAC6n0Kc3//1j3+5CY4DHODd2bGMGY6Bm3DRZJi8VDmhN14/3gRL0Me5sbSYH6DNHK0JS5ij8vyEyjLYFvOzNiwsrcIiDA8KyiIk/CjhaPvhZvhrap7+knwSy+wfC0/qtHgtM2YP09f0GizyjzfZ52sSR1jzZsGsiSU+whqLkzhq66V0ZOdKi0etmbM561RbtzVYUvwsreJGuNFGG210TlrPq/Fhh6vd6AfaezcpA8jq4rLklAaQ1VmOa+ncWpnFQjneC/hLv/SVlqW6FgkvY/wsFqlPiySfjP6ZOWP0b83ZnHW6BAuTqKFmbZTWSjdn8xOztsRyYYlZF7yGDsdWSTIbvBo3SPLZ7tU4DU+Qwh7KPJb8uldj/TztAqqZOWuRmLXRq3GDxKxtXo2lMKz6OWvzaly/Tu/GZkkUUH3/3jSgNH7Slni6Rbg8SWZ4YmtY4vZjYRl+LxYYfMoPXM4Tt0s8TNCpGdwazlOBJW1nzsMEVDP6t+YQsPWftks8zHlOhYXRv8VziG4fSxKztsRymYlZl1iEFY7l27BZIsnPf/s1ty6yJ6wSuDo8wckg5hos4tPfOE+zgGpmzmrWhDJHRfk1FmHFOmWxSBahtZ6kgGdpjtJ2a47k33LmsGhJI+5cQDU8sD84XO26AeV+lY6tq5N52vkI9fOk7SyWWh/huCAUPwrcpF3iaZEkM5wHKPsIUyyiX9E4DxNQzejfmkNG/5yPMD9PmLNjYDEDqpW1wvC0SszaEstFJWYNpFlY2lM45e3KM5NkWudRLDYNS1F+yefjd9iHuuJTc9ou8iiBq6NPRw9u3cf4SSyyP8g4DxFQneov/luao/RozZEov8QjnKcGS4bfwKL6CJW1Ys1ROj8db3mO0vbSetEsQhaLljTizgVUe/SKKcRXPv7Ii6aMeBGWiElw6X2/cM6M5YCwUHa4AUQ8T1x9zcaCFkkyx4fKMbEwiTat+QHazFGLtXJKLGGOSvMD2HPULjHrerCwtBKL0Lb2an0v6tP52D7Cmqd/4dhq17hJwk5Nfg2mWR/wH8lHSFrz8d9H8xGybxaKj7DFrnGzxKxz1qmybi8qMevUR8j4XhK/HJIP1aPFusxHaPt4GCxhUdM+Qj/uGt93+6EuLku+l9zXAixNkhnOiwosso9Qx8LFEUo+Qn2ORL9cYY6W+QiDPo+DRfURJvORlrU5Suenm7PyHNmxn+2wXFZi1p7CzaLqY/aqp78dR5ieW/sgftnT34gdi57++6guLnNP2uRpSvheSn65GiyMj3BOYlYp6QKdtKBqzuw4Qmmt1GAZ5JNYNB+htlZ4K16wCE2frTRn+rqtwXJZiVk9cDiMFtD1vX3SPlqEgeTYvbF9bpLMeDGXsHBxhMuwxHGENz3fA/dSxmPFETZJkhnFEbJYxNgxAwsbRxjPD2DPUTl2rzxH6fx0PHkcobZWTokl6L80PzFPMRbUT2+GsxOzrggLS6u0CFtYX2Kf2+QjjHaNx9fk5EkryM8j9DE5zvG9xLvGLBbp6a9hKWHafITT82rrZXIULMLSHKXzE/89x69rrdsaLIdKLCP+W2gRAjB8hD2PN+II/fIkmbaPUPJR2VjChPM/3jTuGl+7h/34E98L7DjC7kJYliQz3jVmsQQcXR8Oy/w4QmvOCrF7why19xG2w6L/eNNOXSvaHKXzA2OO7B94b4flohOzZn6WiW9EPh4rSaaExZLfIjHr3o+vVPu0LbECVIuwX0fDU3WG7yV+tWOxiBahgiWU5yRm1eYoPVpzJM7ZEquHD7EAACAASURBVB+hsW5rsOhxhOW1wsYRtkrMaq3bGiwTi5DAMuK/hRahh5v4CM9Jf/k1/+nMCDoafIQeAK7UWLVj0/c/+CrBtcMpnquSj/BctJa1AvQ+txWsFWBd64Wl9SDBOH/SUWtr1QeInuDEsYa3Wn78ZQx5rOGtki/4XuYkyWSOFo80Z8deE6W2k68JTX6LeW61jk68JlrEEa7qRrjRRhttdA5axasxfOcr2LnRoeyBSblnU3mW9gFgb2IwjutCGahJujDuvA1OZ+zUMsMzq8/MhJ0tknxKiVnTOWPWwtw+UHikOQRwtPWjJ11otza6OePWj7hOGyQDvtDErB355I9JWapr3QexeS87pang1kKZlQtMN0tCm1VmeOIyK3duws45fSweac5q5rlq/aR/JjztkgEvX3Mt5jneFKvpU1ovxTkkeC42Mas/OPh+Uq+upoMI1h08dB6lneXpdhaXJcm0ZFDnGcJngJveAf6y3YsZT9wO2DxpO8NziJbVkoSdFg8bUB3PIXCctRDagTJPi3lmeKg112Sed8NuLbvm5PO0WQtxO8NzZwKq/bDwkqOP2hSetJ3hiY9A9BQ+82aJFFCdOqXTdoZHcnLb5xk1tCRJZovErOkcAnXzzK6FifwCz5o2S9rMc/xmwa05abPEmkOG59SJWc0boXPuvc65LznnPh7V/YRz7nnn3Ef7f2+N2n7cOfdZ59ynnXPfw4DwAA4HhxDj6/t4r7BUQsiExZO2MzxxO9A9fR/6HXbB7FbKDE9cZuUC46K/8Ve4ivxAN/4edtHH+XE7wxO3Mzxdu8eNP+DGH3AVffB+4x9iFyzXnidtZ3jidosnnUN2LYR2di2Edo1HmsOa9QNFTvWaazLPXXvNmus+lZPXS2kO2bUQ2pesOZYY7n8K4C1C/T/y3r+p//cBAHDOPQ3gBwH8pb7PP3HOXQl9p5Q+5TN/jev+WTxpO8MTtwMTh3dXTv01wtNZ4YnbGR7NIsz9M9KTXOeRfUfGeSINLUmS2SIxazaHQNU802sh8peVeKQ5nJUMuMGaazLPgkXIrKfSeinOIcGzusSs3vsPOefeQMp7G4Bf8t6/COCPnHOfBfBtAH7LPE/kI0zp/iP5h+o5TgC+LIOVE399IBGVJNOQwciJd+MATO/WPT1x7ysmlngnUJLByGmXsLNFYlY0mWdLTou1ArRZL4yMFvM8kVGQw6y5NsmAb09i1h91zn2sf3X++r7uNQA+H/F8oa/jKHPUjIdCU/QEF46FJ3lRBqKnb+lIBbfKx5KckgwTS+Kbkeo0GSU5jI9wTpLMFolZxUmrmGd1vQgyNFZdpxU+wiOuuZp5Vj8FVWRYPsL02OHW5/nUiVnn3gjfDeCbALwJwAsAfqZWgHPuWefcR5xzH9l/5c/gD25w4Hjv8rLkw0n9iEKftE6TAXQL66HfjbFiaZn010gySnKk8uh7uRr6yOXRNyPVaTJKcnKfD3DjPW68H/wxoa7kv5F9hDBllOTEPsJ4TktzX5pndb0IMrT1Is2ztl6ksrZeatZci3kOfWrWnOwj1OdZWy/SWlmy5liadSP03n/Re7/33h8AvAfd6y8APA/gdRHra/s6ScZz3vtnvPfPXH1db+ISj/L0iV5jEZoyQDydI9+M6dPRLMKsjxKTlj2Nw0KY1kt1moySHMZHOCdJZovErIxFqM0zaxGKb2WJXMoiNOa5JKckw4w1XDDP0zcLbs0xPsK03OHW5/lWJGZ1zj3pvX+hL34fgLCj/H4A/8w59y4Afx7AUwA+bAr0Ux/h7t7yOMJUhsRTjiMcF+mcJJmWDElOnmgzLLyrKGZrmuCSiSPs0h2VZUhyMhl+ejOcnbAzllOQ0R3r4gjF9WLMs7Ve+DjCZfPMyGHWXJN57mUAoNecFEfYJBlwozXHEhM+84voNjv+onPuC865HwHw0865P3DOfQzAdwD4ex1W/wkAvwLgkwB+A8A7vPd8kpDSk93DjgEkLEIqjnA1PkLpY/mpPCaOUJNRkpN/RB/ppz/OSZJ5IGSYMWiERcjEEZo+wuk1KLKuy0fYYJ7FdaSvOXGdBhn9UfIR2v6+UcaSNccSs2v8Q0L1zyn8PwngJ6tQAIB3QPydsAdc8uNN3gO7qM4j/n60f4In3xqncnQZ48JZlCSzIAOY8wPvV7gekp92qZZCuZM7to888begTpUhyRFl9Lw1CTuzb42xPDFrOs9hHmvnWVwvggygLEea51Bf/d3wwjXXbJ57i5Bdc/I38cuTAV90YtbyU9rBjvsSjpIcTQbGGyjzlC75a1okZpUtwtRfY8cRajJKcnIZo36GpzPh7xv7hAvalmHHEWJ6lOqUeWYtQiaO8FjJgOesuTbzbEcfMHGE1jxLdZm/L5KxZM2xtJpvjTvc/QIejjw9+nX2D2lzMLqb7r7m5Am9/vEvL8YRL7jcq8TTNz8m7lXVYcGoj5thWzXl8lLlhN54/fhiLONpohvJmdZLi7UCtFsva1grwLheymslVJYV12StVNA6LML0KSwdtTbID3bzoZ8cAeKpXPP0l/xBlm+Q8QfVyFcsQ9tqDLuAo/wlP/DeIglnNv9SHbGOatZEqa1qTWhvCUdcE1V9qnzNShxhxZooHbfErBtttNFGJ6bVvBr7g4sc1QB8UoZQNym3Scya/sqYVZbqSg5yoGKzZHi6Ro5rv1PLIo+RWJPhifGXfnWsVI77tEnMism8S3VWOcwZszZg8KRro8Nct36stUBtlsxZG4W10s3Z/MSs1tpgeC46Mev4CiOUpTqhPHGGFzZUimU0ejUuOLKlOi0oO3e062WprknCzmavxolDXCjzAdXxq3FSp5W19SKUNZ5mr8bmWqgI4hfK7PpplZi1zavxOO8XlZgVh/AEdnBpMHS0eEs8rRKz+mhiAeD+vYdqu8TTXRDLknHGv2J30/Olwa0htOEmkjMnANYOtN0N4TNhrT1wOd690t6dZ3liVgxzCIQNE3G9KGsFsNcCE1BtrRWWx1oLabvEk64FKaDa4mmVmJVZCxbPRSdmHd5QEye382NbiUcKos2c3AJPfAQaWYQtNksk+QJPfJR4WiTslMJ/8t+hdWL7hJdIxmnxZOsAENfLhCduV9bL5BhbhAWeVW2WKGuF4QHSMKzCxhkTUF1YC/GasHhOnZh1HRahB9wBCPOQ+XSihV3ikYJoQ9eJj8frgbbeBx9PyQ80bZd4WvgI41T99wo+nfB0vqf4gawgWoanC4fo8Bd9Oj2P5iO0gmipgGo/XQdhTtL1oq2VMGfaWmACqqW10mEur5dj+QjTtSD5CC2esA6Aso+ZDqgW1kLsI7R40rXSnSNfL3csoHr6JBfDaTzBg+hJHpmEo49H4InboTxhBf8KEwDblSUfocwT+2v2hty0XeYpB9GWnvJaws7yE3wntk950yf49Elek5h1ahFi0qauFW29IF8rGo+0VrT1Ih1l3rL/T1sv4nmiPvZ6yi3CWYlZC2thsiYMntUlZj0ZHfrFG/1/oEennysnrQDGp/7yhJ2umwwvtz/+iB2IG18QJbKSbU4Xq/y8etX110wsbRKzjjfNm4KcJ65sLC0Ss6KfZyBeB+X1UpoFa720WCtAm/VSl9y1bNtY66VdYtZuvZTWCmCvl9uUmLU9ZU/wcMyf5PlR6Ft4kpeOgO3TWb5DKPtnpOBWM5iV8UFS+E8TUH2qxKxcYH6pLyG+PzZfE9abheojJAKeCb+0jek0AdWnTsy6IosQ42053MRiHw+Q+ATTcvdkThM1pHWZHwiWj9D28WQ+QiQfzaNV0oXkw3o6jrBcHuu0H3gfd43vJ+cO5czH4yUfITD9aH5aZuII07Uh1bFxhNl6EdYKoMUR5mulw6z5mAUfYWG9LEu6MC3Hc6bHEaKfM239WD/wPl0baTnGX/YRTteGVHf34giLT/SovtjGW4S5HygpY7yBhhuX9kH8sqd/RRxhthuXlKXduMxSyMuDfybz8ciYgPEGfbCe6ISPcF5i1mS+pTptrZAWofhWlr5ZCGuFTqBQYxHWxBEK811aL6ovuyCP+4H36RpIy/Hf5aNgERr+4zvhI3SHUUn+XuJYiBZv12LHEc5NzBov5j2A63v7rJ2LIxx55iTsjDN5hN6PXdXHEbZJ2DlahOFcD5yABRjuEmLsmB8XM/y8xKyut+5iEteLsla60+vrhY0j1NZK4OHiCMvrJV0rHU++XrS10mHU4wibJWbt10JprcQ8pfWyusSsJ6XCU5mJI6R8hOkx6QLwT/Kj+wglf5ARryXKUfqMT3k9jlDcTUyf+gkW+csSTI7HSszKxBGaPsLpNSiyrspHqMx7ab2U+kz7J/NKxBFmO8uCRVhaL9Ja0dZLfLwbPkKP6Jd1MPUDRQu7HBvWP8EXJma1fYTTcpCTxRH6hYlZowVyXfADMXGELRJ2xrvGRT8Q7DjCNolZMV0roZysFyuOsEViVs5HaPuYS+ul7ltjp66VTq4eR9gqMWtYL6W1Mp5L+dY4WSud3Hy93LE4wp6yJ3hU7uvKcYRpvVTX8dYkZs18PqIPz+ijPf2LPh/lx8IzX55icRZ3E/mEnfGr3T7BVBNH2CIxazb/gLxeJN4Ki3BOYlbRR1iwmA8T+aQVqfoIy2ultF50H6H8JsHFESZrQvIRGnGEF5uYNfYRuuj/LUm6hja6XfTZ/+l/PzeEjZrQDmuyw9aBxHw6kzxL+2zy28o/AiYtZqxF4te7Jn+NmE4pn6V13Ag32mijjc5Iq3k1xgHFgOqJVaDxLO3Dyp3bBxeG/whjXpKwc2mSzxaJZU+N/xLHHONnaV0WYX8hpE7uOHxG41nah5U7lCuwMGO8a/jn9LF4sgBroU4rL0ny2SKx7KnxX+KY03MxtBqLMIoMgE9RCReXxKO2t+JJ2o+GZcaYj4llLWNOg2iBeQk7LZ5DdClZPEvOU4NlG/OFJGadvBqlR62tVZ9Nflv5R8CUBtECubNcC8pmeFL5NYlBa7Ck8pnz1CYpvcQxp38ztAqL0PlpYtbhgtiN7aFe5UnbQfBE7QxP1s5iCXhILLPGXINlxpiBSv0fYcxLEnbGfiMmSeyhv8AsnrgdwNGwbGO+84lZe+ovBCYQ1gqslvxNpgyGJ26vwJKOkTpP5ZirsHiSJ26vwHKsMadBtEDuK9KCshmeuJ3h0ZJGmIlmK7DMSVJ6iWNOz8XQKixCAMDBTUKo478Pj/qUOycPwLssDLuFnNYyKDnRzWEVWHwe5n4O3RaTu0ZlJmFniySxtwJL9Lclp1Uy1DVhYWlVFmH6sbxsvchHqa8oRzsqGEQZFVhS+cx4qrBArtNk1GBJ8dO6JbEMfIY8yUfIJuzU/GWMv8nyUTFJIxh/GePvY7CkmCwsmk41GTVYArFYLi4xa+ojjD+an1wMSgya1Cer02QU5KgySCzhYqexFPC3wqL5FUsyUvyUblGBhZjnA4C5CTunPqppn5IMoBxTJ8nAEbFoMXWWDAZL6NONmcMi+wjbYbnIxKw11kuprFmENXF4NdYLg6UkX5NRhQVyHaNTVrc1WCQfITMeC4vkI2QTdmr+MsbfZPmomKQRjL+M8fcxWEKZxSL5CJnx1GAJxGK5wMSs/RHAYWFMnSgj4RFlMHISGUfDkt4kzoxlcjMksMzVLaDLSZO7ApiVsJNJEmvF1FkyWmPRYupaYGmVDHVNWFhah0UYSLMyEsvAOs71EUpyijIqsASisQjy5/gINRlVWBL5c3yE1HgMecPrZyR+no9tKkfzZ5V9UrmMGixI+ltYdH9fWQbvYxuJwRL61mBBoU6TUYNlxH+LLcKS7yi+UGrjCDM5iowSjyqDxJL62CwspTG3wuKNMUsyYvwmlvimRmJh5nlJws6Jj41IEmvF1EkycEQsWkydJYPBEmSgAov4rXFDLBedmDW3FIiYOkGGKIeRYWEJ7RVYAh0NSybflnFMLJKPkJJhYEmTuwIzfWyJnJKMkpySjBosgVgsqr9PkUH72KJ5YrAEGTVYUKjTZNRgGfHfUoswtpoAFNKylpO13rxcumrn4QAsLHrS2CZYpJvbhqWzFDxwE58rE+ulygm98frx9ljEU94eLC1wrA0LS+uwCAsWgrbDSfmotDbpaGBgMWnyWSzMmLPz1mCp0E/NrrGGiTqfwTPrx8Kj4/jjQHocGxVHqMhnjzVY1DhCYszWkRkzFUdIjJnFoo25ZRzhOm6EG2200UZnpNW8GjMB1WldxuPRJLGpdZ50s4HCEvA0DqiejeUIAdVSOe3DjFnjSX/tTKqzyoDgnJ+RpFQ6D4CjYVEDqonzWDytErO2xHKRiVnTVygprKLEI9Wr8oRyDa8mv9i3BgsxZkb+Ep1qroManVJYwM1Zu1dj3x/lgF4uoLrVqzGHRQ+obvFqbI+ZC6hu8Wpsj/nOBVQ7QA2ozi4OgSe2QADMTswah4oUscQX+ZGwMGNOseKYWIwxW3qjsAg39iygGt1v5MZ4HrgblSdtBzBcXkuSlDLnaYlFDahugIUZMxVQ3RDLRSdmFS0I0vqSLCr6KNSp56nBUpCvHmvHXINloX6s8xxrs0T6XeD8N3GnR9E6MgJ6qYBq4Tw1WFL5FhY1oJoYs4WFGTMVUE2MmcWijfnuBVR73UcYX0hVAb3heIKAahNLwHOCgGoKywkCqlMf4dwxxzxdaIbub0p5RB8Vlicplc7T9T0OFjOg2jiPxdMqMWtLLBedmDWzKhRLYeTJA3FzS4QIHDbPU8akYcnlG1ioMZfxm1gm8gksGX6DN+pDYQntVmLW/g6pWYQpj+wvS62JqVVBJSkVzlODZcTPYdECqqkxG1iaJWZlxkxiUcdc0FvMw5J523TOvRfA/wjgS977/66veyWAXwbwBgCfA/AD3vsvO+ccgJ8F8FYAfwbgb3vvf49Cchj9XC5p2j9K9PdAu8Ss7bGkcvjErCvBEm5MR8TCJWbd4eB3uAnyBHri6muEnBbJUO8WlnaJWdeDhSXGIvynAN6S1L0TwAe9908B+GBfBoDvBfBU/+9ZAO+uAaMF52ptbJ+i1SJYL3PkW8caLEvl1+BnsMyRX9tHs4IHi7DRrvGcD/iPFVDdJDFrg13jZolZG+wanzoxq3kj9N5/CMB/SarfBuB9/d/vA/A3o/qf9x39NoBXOOeeZIC4w/hWBJ+Xpbo5fXDAaIakZVJuKNdgcYdKLHPGvAC/hUXCP2fMzJxpWPZ+h5f8Fa4mr3HTuoN3uPE7sTzUAbjxHldR8tC4vPcH3PiHuPEPscNuUjeWp+fd+10VlkAsll3/H4sllFks4bwsllCuwTKMmcRy5VwVlnTOWJrrI3y19/6F/u8/BvDq/u/XAPh8xPeFvk6nguUmWQolnhqLreijYrEk8hksgWgsxJgli43FolnMmo+QxqKMucZKTcsHaQdyjkWY+JfmJGZNz3uAq8ISqEViVglLPmbrGD9cbCyhXINlHDOH5dYkZvXee+cmlyJFzrln0b0+4/rrvr5pHKHYnvAAOEkc4VwszJhTrDgmFmPMlt4oLMKNvRRHeOOvhroH7iWRJ8gT49h8dOH7mYlZEywpjtZYmDjCJViaJWZdERaW5lqEXwyvvP3xS3398wBeF/G9tq/LyHv/nPf+Ge/9M1eP9U5PzYIzrC+pfY6PsOo8FVgC0VhmjLkGS42PULOYl4x5lo/Q7yZHILcmqJi6vm84zknMmmKZG0fIYtFj6nIs2ZgNLLENxWAJ56/BMsgnsRwqsYz4G/sIC/R+AG/v/347gF+P6n/YdfRmAH8avUKr5ASfVPAdhYvW5DF8bCJP4iOsOk8FltRfZmGZNeYKLLGPkMJyqNc/M2ZmnmMsB+xw4+/havKtbuKTQudv2vV3WMlHuIfDDdxwAeR+Oo8bf8CNPxR9UikWyUeoYRnwk1hifxmDJfURWlgCDhZLwFGDZTJmAssOqMJyNB+hc+4XAfwWgL/onPuCc+5HAPwUgO92zn0GwHf1ZQD4AIA/BPBZAO8B8Heq0JSsCsVSyF7KBYtnlOPK8gsYiryKxSZhCURjYcZMWGyl+qlFSGCBXGdalSSWAYcZRxgW/bh0M78cEVPXIjFrikX0ERIxdS0Ss0pY0jFbWFolZtWwBGKxTCxCAsuIv7GP0Hv/Q4Wm7xR4PYB3VCEAhqd+UJPTeBeTLv1rr0+v2jNRdAM4t15WoxP0viUPAFfTG/QZ6PsffJXgim2a49Gml2W0CiTphS4dGZ6lfQDw/jLFYmN8bNZxLv5j6GcO/tl9DJ7DYElEFmFSpx1reE35iW9saRJR5lhsO9WYGfmnGjMhn6V1fGuM7hVoEl+GaRnI66xydZ/Qz6M6hyHVBxVyF+A/Rp9Z+GeOWePpLJ8drt3DAX5aZ5Vr+gAo8xC5+ebkFpzV51RjFsodHl0vRxnzXc1HuNFGG210DlrVjXB4JfN5Wapr3SeuKznrpQ2cJQHPWnkJfqZPjS7n4J/Tx+IJjvj4NS6t08oMT1zWeLjgYr3M8FCJWU80ZqnM6OUYY15VQHUrmgRUXyWNyUVR4lHbZ/AAEJOHprugFs+sJLEzxgyCZ5ZezjRmiaf7oB+4iTYFXrZ7UeVJ2xme0A5oPHZAbwseJqD6dGNmznOqMZ8/oPo4lFoicX1qKUg8STvDM2kXeJY49rPjQvnWeBgeabOEPk8t/jl9DB4poDp11qc8kmNf40nll3n85CgHF+c88ZHhmRNQfbwx5zIYvRxnzLKM9G+G1mEReuSJWYFJoG2oV3mSdsDmSTcORDke5YSqDE98gVs8cXvtmEm9MGOWZAAVemk45pjnAIeDv8K1Gy2F1IGf8kgbBxZPaAeg8NhJSq2kqwwPl6T0VGPOZXR4dL0cZ8x3PDFr5vuSrCOJJ2lneCbtAOzg4qid4YnbGR7NIjTGw/BIPkL7PJGGjjpmZ/KIn9hlfqv0KPnLyjy5/AIPUotE+iGjnCduZ3hqErMefcyCDEYvRxlzQUZ6LobWYRGiswhdoe0h8eofrI2SDFZOdwNaljzUksHIiW8AZ9dLPx4AR9ULIyMO8UCB/Yl7X1ksh5FRTKgalblEpssTs7bQy0RGQc4ivUR/W2NaY2LW05FkFUH295n+MsmismQgsoYKR01+ZlEJ1pH5SRohvzQesY6Qb+lFwq/qJT7GeBndGvKkH29K67jg37SPLEOTpyVFsJKHav6yOYlZtfEweon7MHrRAqqt8TB6OXVi1lVZhGHtMf6+YOWUfGGMjy0rh7q0T4rFwwyolmQAipykLOFn/H2UXmIZjF4K+FW9xDc1Qy/pPGt6CZ+S5T7Csl+rHFyc9sllAOXg4gPQ+6jcUEZSxwQKS3I0GaJcYzyMXsbP9Gy9aAHV1ngYvUh9LL3cfh+hZflEF2JqpVRZhJaMuK7CeinFvmkWoRUvR1mEGn7IfUSL0NALYxHWxBFqR0svsvUyrWNi6nLLUJZRkgPkPqo9vOn7YvxlsxKzKuNh9BIfGb1ocYTWeBi93LrErM0o8hHOjakLlowoo+epjqlbGEcoyhDklMasjkl4QBxFLwlWRi/UeWYlZnXY+6skjnCa+JOJdUvllGQAZTlWQtVOjh3r1iYxqz4eRi9BxnTMM3TbQC+3JTFrU8osD8I6KvmxavxNko+taHXNsNikC5v1EU6sYLKPNKZZPs5ERiyf0kuhD6VbQ55uvQSrZbqzySUgkGWU5ADRq/DAV/ZnaTF1kpzSsegfU8bD6CU+MnrR4git8TB6iWUweon7pn8ztBqLUPMR0v4+o8/smDpNRs8DDzVeLvWxWTF18c1C1YuAxdRL0sfSS2iP8Zty45uaoRdrnmO9BKtF8xEyMXWpnJIMQPOPOewBXA+vaB1N/WN2TJ0kR5MhybHGw+gltggtvWhxhNZ4GL2kMhi93H4fYU9VFmFqvfRPhSqLMJExoaLV4jL5Ge6CjKIcQYbzXh6TdhTGpMo4ll4wHbOll4kMQy+M9cLE1FmWIRNTJyVUrfH3jfhzOSUZRf+YMh5GL/GR0YsWR2iNh9HL6hKznoQ84PqRixcfQS++fG7PHAuQ+8SmpJ/r5uXplb8Exwr0It3IcR69hHT4+U8g1dE3Pyb+lE4dFjjsPXCD6c17Sr7UMNAbrx9fjqWBXlroBGijlxY6qaFVWoTabmLxiPwo1WlHCwOLaY6/jPERmju2UhvKR1o/mvwKTNTYDZ6Q9v0QzVpapx2Hv03LULOOwu6oy45zfuC9TZJSYszWkRgzFUdIjNni4cZ8x+MIU9+R5C+TeFLfGCD4y7RySa5WLuH1aJOYtQEWasyWnno8NJZCH2bMGs/edz8DOfERJnVWGZD8Y/VJSg++u8lcuySoOanTyh2+FklKiTFbemqUmJUZs8WzJWbdaKONNjoxrepGuOjVOH0V9HKdVgagbF7k5RJPse9M+YtejZUx03pRXnOtsohzhk7HzRLh1Tip08rDL6q1SFLa7NXY98dCsHRULgdU22O29NQqMWubV2NizIVyXMfSql6Nge7iswJtSzyT9pmJWeNQEek8cTuDBUC7xKxMQPUR9MKM2dJbeh7AHrPEE8I5bvwIMg36TXnmBBdTAdXoXi0D7gcu36pgeFokKWXGbPG0SszaQi+XmZiVsHhMayi1JJA7/SWeSbvEo52HxHLOzRJtzLReBPzmeRQrctFmiZR0IXP6FyygiUWoBxdTAdVpsLFgEUo88bGT7yfHOUlKmTFrPOyYqYBqYswWz2UmZgUWb5YEiyTrAxQTEEgbByKPdh4WS7igLZ7GmyWzxyzoDajTf7pZYo05vmGWeIJFck/ZBEh5pI2DFklKuzARfbNE4sk2DtAiSSkzZp2nVWJWZswWz0UmZs18U8Kx2iKM+6DMM2kXeIq+L8F6GXmcXD/pX+CpGPMsizAaM60XEb9+HgiY2iRmFSzCgq9LsoBKFuGSJKWaRSjxxMfu79SymVo4XGJWZsy6ZdgsMSszZoPnMjjOMgAAHztJREFUghOzdoNwQtvDR6XapH9/Y9I4+cSshddmAPtHWRnLErMi+SLkrHqJbvrH1AuTmHX8UqL8DH/V9ddMOW0Ss3avhTcFGQDwxJWNpUVi1hZ6aZeYdbleLjoxa0uLULTYoB8tDLWYNIvtXD5CST+WXjT5czCpc2jgpgKeU58h4y/LjqcLqG6TmJUIeFb0Eo+d0cuxA6ovMzGrb+8jLPmbJv6xtFw4d61frlQGyr6vU/kIiz5OTS8F/HPGbPUZjgW9yEkXkoQDTHBxg8SsQe796Dwd31hHBRcDWJ6YNU26IOjJ0EurxKySXuIyo5fLTMza02AhHJIyYR1RFmFqASVliZfx4WXyZ1hsWfkg6EHQCytftQgtvQjyWT1peDUruyRPtthSa0W2dORP7OQy9wPvUytm4o+rsQgTX9e8xKzlcTF6ifsyetHiCCW95GO29DPq4KISs4aHhQNwuE4ahQtWjDX048U7NzFrsJhK54nbNSwq1oRHxBv6G3pJb1rH0AszZktv4nnm/MC773Y+H0Z1j13VxxE2Sczax8KF8zxwhdi9aGxiTJ0fL/K5iVlTvaQ6GbAoemmWmLWBXi4yMWugpv44wSK0fIYij2ZhMTyYXtin9hEy+E29RPJbjnmWjzCxMgDJb1WweESLsBD7JuygWjF1c+MImyRmzfx9kg+vrJe4D6MX/Qfec71kYzb0cpmJWT3gDh5+58ayz31HNf4yyUeY+cd84gsr8WgyGJ7opqbxTH1jPhpzWS+1/koJv6WX2Nqj5ZJjtuYs8xH67maTx6SN/jAmpq5FYtawOxr7xjq+yD8GMqYOCxOzJnqRfISWXlolZpX0kvoILb1siVkh+8Jsq8hPypRFmFhADK9mUcVWUKl+lONkHm3MM3yETRKzxuNi9JL0sfQy0Ymhl9QP1dXlfqtpPWMRpr6w3CIsfXe7jzBlPsJUrmgd9cdwvsQXVpWYNbNEd5ReYhmMXvQ4wlwv6ZgtvVxmYlaEi9xPb0oDpVfS3af/939o+Yy6O/rr4uWuJj7CjYD3vf5D54ZQSTusyQ5bBZJst1I41vrLjuVjO5V8xqKVrK+qPseWfwRMzRKzksfbI39OMlc7Dm9Zstjzy2dpHRah94mP0Ce+sfH1TuNZ3IeUO7cPUIMf45GNPWR4lvRBhdy5fYwxB1/SPSHJ573E31Qq1/QBQMuNXzWPgUXrMy+Zqx2Hx/QBQMmdg2VLzLrRRhttdCJa1Y1wezWW5WsbKnGZ4ZFevek+FVjm9rF45M2SdKOgXGZ44jIrN5RrsDTFn26eROUliU2ZPjWJZUf5fJ8LTMzq+0DbZMtkclGUedT2VjxRO4DjYRFuKFLQdboja/HMTRJ7qvMAOk/YLInp0asblSdtZ3hOdZ5mWGAHF7MJYEHwLDlPDZbLSsza02YRbpsl22bJPPlMogY2ASzDE7ezCVNjK61FMtq7GVC99/BXhY2DKEWXxpO2AzB5so0PiydtJ7FkmyXGeeIbYim42PmkneFJ2hme0N7hrzwPeCzMmLfNkkIf6MldGZ7QDoBOEittlrTEclGJWQMx1pHKA91iM2UwPIp86zxVWIjg4rSd4ZEtTvI8FVgknbZIzJoGAXd1hWBi1cdW5onbGR7dR6ifpwaL5iNkEjWwCWAZnridTZg6sQhJLBeYmBWDlTRSN7CHj9n368FqyWS0knNiLNHNIZYR/80kMu1ueEuTxGK4QR0TS11i1jK94v5/XSynhYyTYoGe3BWwE5m2Soa6JiwsrcoiDK+z6ZHxx4l9BTmqDAWDJKMKSyK/hQ+S8ccx8i2/HOPjZHyELfyi6edhUh3lYyt9biZZnCV5Qt8aLEX8TNIIw0fIJWqwfYRMMlTLd5cea7DcisSszrnPAfgquu/MH3rvn3HOvRLALwN4A4DPAfgB7/2XTVlRQHVnUfmq4Oi0T3xTqgmOFuVoMlgs/RhqA6q7Ogx1aTn192V1Qp9JudBHktHhJ7HENzUWS3zTK/kI0d1sJv6ypI7ysaV9CjIAxUcoyAh8x8Ci+wgBLbkrYAckhz4A6CSxso+wHZbblJj1O7z3b/LeP9OX3wngg977pwB8sC/rlFlS03KddRTJEOSoMkgsFqaijAoszJiz8wl1NfJLfjnGItT6sBahZKUWfYSaRUjF4VlHJo6QsAipOEIOS42PkErUQPgImWSolu8uLddguc2JWd8G4K/1f78PwL8D8A+0Dg6dRdhNqcfhXnJ/nlwUctyd876zMEoyejmaDEpOJCNgPwqW9CYBmD8kD0CN7xNlCHKsGEEGC5UAdnYc4VRXj149FHiY2D0X8egyJDmWjFNisZK7AuE1thx31yoZ6pqwsLTUIvQA/pVz7nedc8/2da/23r/Q//3HAF5NSws38Tk+wkNynOsjlOQUZFRhwfTvOf6yOT5CTQbrI2T8fUwfajyGvM1HWJKHyXGej20kSU5JRklOSUYNlkMllhH/aS3Cb/feP++c+28A/Gvn3L+PG7333rnUZumov3E+CwCPPPKKSRxh5pcj4gid98AeUxnI5WgyinI0GSyW1Ec4M44w9qk5n7T3PLFPLeNJZJR4JBkdfhJLfFMjsZTGPPER9jebe7uFPsJEziwfoSAj1B8Di5p0AXpy165Oj90LMqDIYeIIW2K5FYlZvffP98cvAfjnAL4NwBedc08CQH/8UqHvc977Z7z3z9y/7rfBBwtqYBrLjAWVypDkaDJKcgoyqrAM8iuwJJjy80w3VkQMioySnKKMCiyiThkZBhZP+QhTyy33saVySseSnJKMGiyDOkgsmo9QS+5K+9iieZLklGSU5JRk1GA5KHJWEUfonHsAYOe9/2r/998A8L8AeD+AtwP4qf7467Y031tInSWVe+5sevGV92f0kqD4zlI5Nxbp5gYJj47w5uXS3ez2Yjmgu1nuF4p6/eNmIMOtwtKlvgduwhyImHypAQDwxuvHF+NYGxaWlliErwbwm8653wfwYQD/wnv/G+hugN/tnPsMgO/qyxS12EFd0ucuyld9bgzPAvxpH+p8Bg+3a0z48AzfXTMfYY3FSRyLcYTKkf1pUcnHxhyzGEDjPDVYZB+kfkz/Zmi2Rei9/0MA/71Q/58BfGetvC0x67w4wtTfJ/HEPraszPBEN2UaS6GPdZ7hWODxvvuNjKvIR5jWWWXA9t0xPkLpPACOhoX5Pln9IXmDp1Vi1pZYtsSsG2200UYnonXcCNPXqkNeluom5VavltZ5onINlkE+iyV6TUxfLYtloU7tS8rXNmPMviwWTHVa4mn2atwkMWujV+MGiVnbvBqPk7YkMWubV+NR5mUlZt13V6YDcLhOg5j719w9FJ5w0SxNzOqN84ztAI6GJbshAFkAsvPTdgg88SsqgFkJU+PzsFjmBm4Psgo84dUypvv3Hqo8aTsQblrLkqEy5zkVlj263w4OOnzg8sBti6dVYtaWWC4yMatqzRQshdYWoXUeybF/jM0SZsyaxdZys2SyuUdi2TZLTrtZksqVLEKNB5ADnuckZrXOU4PlshKzQt8sCT9SjqjuWIlZw+dxKpakzykTs8YbEsEK0zZLMp5wszlBQHW6WUKdRxjzdLMkbEaMF22+ITHlOd5mSX4eIN0saYfFDKj2+gaFxdMqMWtLLBeZmHWwJhKf2/RzuRLPtCxZhJYFN5zLwhLaK7AEorEo1pFmEeY8rlAf91d4CvJNXnHM1nmcyZNaQPHfefAyYbEZ/j+VRzhPDZYMv+WL1HyEoaxYhBpPd5Qswqm1RSVmNc5Tg+WyErN6APs+oLqn2Au0f5kNc7BaFiZm7fS3AizRDSDISGXtHzWh9De8FolZp32PgYVJzOp9f2ErrI8/8qIpJ75pScQkQ10TlgO67Ng3QBHPE1dfM2S0Ssy6HiwsrcIiDDcd50tHxqfm8+OMpAtlDLmMKiyYth3Lx1nTh/XdzZVf2+ekPkLreEofIYnl2AHVzRKzNtg1vlWJWVuSOxzgd6MjyHk/KQOJv0/yqfnliVmlc+dlqY+BJU26cMKAaqbPxG8olFN/H3ue2j7DscpHqPvhRL8clidmzc/byT4WFtVH6Ltd2PtdSENWjvuU/XJAi8SsLbHcpsSszWjcFEmsMCKOcLyI/FhO6hjrJT23hCX0qcKSyTewRPhLfkXJYrN8jzU+VN3fR/YlsaSYSvKkpAt00oIqi82OI0zP672rwjLIJ7GoSRcSiyou0xah4COck5hVwzLIJ7Hc5sSs9eQBRHGE/voqae9vHkp8X6vErMFHqGGx4ghbYMluCMDiOEJJRsoD4CRxhCKPcGOX4giH3dm+7vrePuPhYvdGnjnJUFMsKY5TYglxeTc93wP3UnYeK3avWWLWFWFhaZUWYXqUfEeZNXNIjkfyEU5w1GDB9O85/rKSBadZX5oM1kcoOarZ87BYhnoDw+YjlLGEXdjhKFiEqdz8a46Rwt9zErNqWEpjLmE5VGIZ8d9GixC6j5CJI2yVmNXyETJxhOdOzKryJO0lntgvF1t7reMIMxnCmOt9hGTsnl+WmJXzEbbDov94U7dTe+0e9hhyv5wVu9cqMWtLLLciMWs7Sq0uoZxYZEW/3CEqRzfDSd+SRVI6t1CeWIQMlkS+iUWxjjSLUPQbFs43ynEijybf5I36MFgGHAYWykdIWGzHSMwq+ggVLEX8imVYjiOcWoaij9CI3WuVmFXDEojFMrEICSwj/ttoEXoAhw546rUTvHhHpf/vqa8/8RkLFN0Agg6Oq4uy9K+9Pr2TnY8kH+G56C+/5j+dGcFIe+w6Nzuupg+uM9D3P/gqwbXDauwwrAkJkPvWJEdBzbG2D+btcLLHKvnIb4DWsYa3Rr5mEdb4FamjwXNk8VXyq74FLhxrePVvjXfFo9YmHWt4RfmJz1CL85uT+HVViVlb0/THm3ziY+uXXlpnlSv7AIAd33fixKwY3xaDdVgsMzwz+wxXvxJrKJZr+0Dn8b4Lv99FT5e0zirX9IHCk/npolfYFklW67413mEf++WSMsMTygBMnrgMYFpnJFBleLbErBtttNFGJ6Z13QjTcBMpFEbjWdoHK3o1juWnfQtlhkd89Sb7AChuYhTLlX0snvQVWaxTygxPeoISj5RAtSbJKhQ5pbK1WRLq47JUp5UZnric1lkJVBmey0zM6gHsx6Xh7ydBzIfxKtB5lHaWZ7gYC0HXUTsAk0dsJ88DTG9KhxSucLO0eLJ2hscnNzZATKoa88xJACvdRKWAavh4FoGrq4PKk7YzPKG9gyXzpIHOaZBzKx4moLoLWQFu+s2Sl+3yZA8WT2gHbB79PHags8VzoYlZw4pLLDQlOFrkSdsZnviI9ViEkme/uIkRyzd4pM0S+jzSOa1jbR+DJ51CkTXllcQrPJn8As+aNkvSIGZpM0PjiesZnr0gf+Txk6O0mWHxXGxiVhwOQBy0HG9ixKtW40nbAZsn3Syxgq7TdoZH2iyZG1ANDJsYWYAyw5O0MzyhvcM/8sSbGJKMcbfB4KkKqHb9FI53KnGjI+IpbpYoPKEdKPOsabOkC8K+wnVIdCBsllg8oR2AyRO3A0h45EDneAPD4rnwxKwFi02yCEv+PikIW+OJ24HRKtIsNegWYUkGw6NahOGYYIUgv2jtRe0MT1cf3/TlcRQDoRmeuJ3hwdRiS313GU/UzvBMsCo8edC05CPMeeIyw8MFVKcWm+QjLPPE9QxP3J7xILXUwjGyCA2eC07MmgMffHkPiHf/w2SZz5YzWD9ZUtVONpPctSyDlxPfAAQPYyeDUEvAUpJByfEYbgyxnPhvJqlqkLNEhu9lSJoNdP+RPLFBrRxGRposQSIqqaohh5ERh74ULgM8ce8rvIyCHEsG0Ftq2ZNl+reVVPUiE7OOj9qDfGSCo6W+khztCJStxuFTOwzHsjVXkFGQI8tAbvGllhumR7FOk1GQkx0li7NosSXHGG+DMWvy02tPGbIpVxGfW4TCJ3xSwgTpWJJTklGTACLHZAVHM5jsgGorOUKHWw+KvtjErDjsgV2/M+Y94McyExyd9hlvQokcI6C6s6DypKo1AdUlGQDogGrJX8b4+ywfIeNXFMtBnbtpXcmXJ/kIpT6ZDBTkRD5CeMAlPsK4jg2oTvtIMqDIkRKqApjWMf4+QU5t0oXwid3UtzeWxzoroLrjLclhAqoPAKbJEabljl8Pjpb6pHV3L6B6uACC5eanZSYmMO1z8LIcTcYES2pedH9wFmFBRkFOUYZhtWS+PKmOMI9KcYM1FmEx/k/CqxyLckpHpc0jL6d1jMUpyQFIi5CKI7SsOjuOMLXq4vKQ2MCICZx+YifLZeIIreQIHe7wMJFjAi8zMSsQ+Qj3wPX1tI2JI/Qew+NMkjHI0eMIzaSqw8Xa39AAIamqISORI8mIL8gBr5F0FYAYA6jKEORYcYQdXp2HOk+jOMLdveVxhCUZHSxZTurbSxOqjjxMHGFZDhNH2KW1uori+/JkqFYMYJABoCiHiSOcJFX1eULVTo4eA3jRiVlHCyr19/moLbHiijvCgo+QiCO05FIWYUlGQU7pSPvhkpvU5KjJKMgp+hljngYW29F8hOlREG/JpeIIV+UjlP19U4tQjyOUky5MsTBxhOnyl3yEtr9vlFGScwfjCD3iOMKyv8/TcYSSj5CJIywlVa2JI2yRmDW+WZT8e7S/z+hj+R6HXXCg6N+TZIxONuU8qQwU5Ax4e0vN8PdZcYSpnJIMwIgj9NOEqqG+OibQL0vMGqw5zUdoxRHGFmFJDhNHmCZVlf19ehzhZSZmHS6A/g/NR1i06lI/oC/7CIk4wtGaS7BFNyjTR5jKKMiRj37YJKqyCEP/oazIKMiRfI8jfhkvFUfIyDDjCAWZWVvvlEjq4yHbFuc4+lIcoZRQ1bTqBB9hi8Ss2k5wyZrTfYSyhcnEEcZJVQHZR2j6+yIZJTl3L44QAPbz0mwOhs8TjRKqDv49D+wLNwODXnzl/QY4usNwI5sp5sWXz+2ZY+nwRH9njPq5bl6e3hFnYvHTcwUfXo30R7/O/uF1iw7obtz7hcN6/eNfXoxl7zvrLvdA8vTNjz2/GAcQLEvgBtOH2pR8qQEA8Mbrx5tgYWkdFmEgLYbPiO/LHBNM7KHgI2R8d+FYw3s2+SgftbbJcSb+tA/l92MttThmKK3Tjn5605xlcPZHbtdYPwK2H3HJt8xVfVSLsHzM4gh7eUt+4P1CE7P6btf4qp+I8JXIpAyhbizf2cSsHst/4B0oxwgyPNFNmcZS6DPx90ll6Dzed8Bc8uNNcZ1V7uqWJ2aVfrwdQFZn/sC74UekfIS++4Gk6+RH1SdxhAZPq8SsAVvph5kYnstMzDpcAGGBHbKyVBeXxRhBK25Q8BFaPyTP/MD7qizC1DKMylKdVBZfjdNzF8oiTqVsykstQ6lOKyd1A8xCWeNpZhEasYZcHGFq3Ul+xTIPMPoMY/lz8hG2sQh9fzxNPsJ13Ag32mijjc5IK3k1Bvx+j/CzZO6+HFDtYfG0SMzq0b0p9IHO12lA9dgOoMATLJnGiVmZgGqDZ05i1jh8poQl5hGxJucBMCsxK/owl1H7gEuCoVOerB0wg66ZgGofWUMAcP9eHlDN8FhB11xAdRfmctPzSQHVFk+rxKx7dK/cQX8PXL6FY/FcaGLWnpZslkivyFbQtRRQXXg108JP1rxZko0H4zF79RV4Ju0xj3Ue5XV6yWaJNOZ0UyTHJmyWpMsmPV18My7wrGqzpBSuI70aCzzAGBIT/z0nMWsWhC28Gls8l5mY1fsufOaqf+plmyXRoEo8UrA0oAZdFwOqPZRkCEm7wFMKlgZsntabJcFS0xI1WDyxtVcTUJ1ulkg88UZIfMPUNljSMWebIQlPcbPEL0vM6n3YGBnbgXSzJOc5xmZJsNTuKZslFk+rxKxd+Iy+WWLxbIlZAXkjJHmEFzdLpD7Fz/CS9klbd0g3QibtRZ5pWbOOTm4RhiMUizDimbQrvEVLbsKT3+SnffLNDJEH0zHnmyMJjyh/ahnmmyXjk6LEI1la5UBqbbMk5S1vhJQTs5atPoana88twlmJWdMgbGmzxOC5zMSsQO8jHJ9e8TrfPU4kYGyUmLXTn4eLZMXeu/3LbJUNFtSCxKzh6stuShE9fFSqlbFonFxi1imOVN7+URNKL2dZYtYgY9o3QfPovtQyiunlLEnM6r3rLlwF9uOP2IHbadKFlOqSu5bX1auuv6bKaJeYtXtdvinIAIAnrnQsF56YlbDuisc0wYKQdIEKqPbGEcOxaJmVMEZ/n8tHKPo4YRwV+S39ooyPULI48zZXPmYhNfJRFd8f24XPGLyUj5AIeLZ8kBSm0wRUX2ZiVo/FAdXdzXJ5YtbOV+fho+QNeRlHT8x6LB9h5qcLfRC9DUrloM6FAdVWn+HIBmELdWxANTwWJWbN/X8dv+YTFH2EaJGYNU26MC13uJiA6o53SWLWIPd+cp77sb8y9QlmPkLg8hKzBsqsu7CYiIDqZolZu7phsyW1CImA6vGClswLP+EtHg+5XCtwW6zTjqmcVAaSPoJcq6yOUTia8lKLTqor8VZYhOJbWTKdabKEboPlCBZhTUB1tnO7y+sE32PcV5PH/cD71LpLy/Hf5aPv5d/yxKzOubcA+FkAVwD+D+/9T5V4PbA8jrB7PPeF+YlZg48w8PnrPAGsFUfYMjFreIh25ynJGG9aYrJTP7bPScwa7xoPPAvjCEUe4cae4nW9dTfpds9PmXrrLswQE0c4JzFrfOPbA7i+lycO4eMIR545iVm7Gx4Qej52VR9H2Cwxax8jGM7zwBWwAIOO0zjCO5GY1Tl3BeAfA/heAE8D+CHn3NPFDgVLcFEc4czErJaPULWoQlspfjH6+1Q+QtVCLFhBqY9Qcpixu9MMT2sfYS53ho8wn7J1+wgVn2Epvo9LujDtw/3Ae3KcEUcYX0Lh79uYmPXbAHzWe/+HAOCc+yUAbwPwyVIHv9/DNYwjlHyETByh5SNk4gjbJGYdb5ix37DWR2j5DMU6P/URxtZe6zjCTAZyHtEn6JJyzJPIlXyECLu9kf8v8xH27HwcYcef1lFxhH5hYtZ+B/u64DPs5OpxhK0Ss4Zd45LPcDyXknQBdyMx62sAfD4qf6Gv00mz4Kw4wmaJWcMNyKvliUVY8hEeknLaH7n1olqEM3yETRKzTvDLvJrFFuMTzzP0yS02xgdZSrYg+hdpH+F4p/VJ21BkfIREHGHTxKyCzzBPmMD4COWvRbg4wimv6CM04ggvJjGrc+5ZAM/2xRf/zeFXPl6J/bbQNwD4k3ODOALd1XEBd3dsd3VcQHlsr2c6H+tG+DyA10Xl1/Z1A3nvnwPwHAA45z7ivX/mSFjOSnd1bHd1XMDdHdtdHRewfGzHejX+vwE85Zz7RufcfQA/COD9RzrXRhtttNEiOopF6L1/6Jz7UQD/El34zHu99584xrk22mijjZbS0XyE3vsPAPgAyf7csXCsgO7q2O7quIC7O7a7Oi5g4dic9+mW3kYbbbTRZdG6PrHbaKONNjoDnf1G6Jx7i3Pu0865zzrn3nluPEvIOfc559wfOOc+6pz7SF/3Sufcv3bOfaY/NvoB5uOSc+69zrkvOec+HtWJY3Ed/W/9HH7MOfet50OuU2FcP+Gce76ft486594atf14P65PO+e+5zyobXLOvc4592+dc590zn3COfd3+/q7MGelsbWbN+/92f6h20j5jwD+AoD7AH4fwNPnxLRwPJ8D8A1J3U8DeGf/9zsB/K/nxkmO5a8C+FYAH7fGAuCtAP4vdDHYbwbwO+fGXzmunwDwPwu8T/dr8hEA39iv1atzj6EwricBfGv/958D8B96/HdhzkpjazZv57YIh0/xvPcvAQif4t0lehuA9/V/vw/A3zwjFpq89x8C8F+S6tJY3gbg531Hvw3gFc65J0+DtI4K4yrR2wD8kvf+Re/9HwH4LLo1uzry3r/gvf+9/u+vAvgUuq+57sKclcZWoup5O/eNcN6neOslD+BfOed+t/9yBgBe7b1/of/7jwG8+jzQmlBpLHdhHn+0f0V8b+S+uJXjcs69AcC3APgd3LE5S8YGNJq3c98I7xp9u/f+W9Fl3XmHc+6vxo2+s9vvxDb9XRoLgHcD+CYAbwLwAoCfOS+c+eScexzArwL4Me/9JK/+bZ8zYWzN5u3cN0LzU7zbRN775/vjlwD8c3Tm+BfDK0d//NL5EC6m0lhu9Tx677/ovd/7LpPHezC+Rt2qcTnnrtHdKH7Be/9rffWdmDNpbC3n7dw3wjvzKZ5z7oFz7s+FvwH8DQAfRzeet/dsbwfw6+dB2IRKY3k/gB/udyLfDOBPo9ex1VPiG/s+dPMGdOP6QefcI865bwTwFIAPnxofQ845B+DnAHzKe/+uqOnWz1lpbE3nbQU7Qm9Ftwv0HwH8w3PjWTCOv4Bup+r3AXwijAXAqwB8EMBnAPwbAK88N1ZyPL+I7nXjBp2P5UdKY0G38/iP+zn8AwDPnBt/5bj+zx73x/qL6MmI/x/24/o0gO89N35lXN+O7rX3YwA+2v976x2Zs9LYms3b9mXJRhttdPF07lfjjTbaaKOz03Yj3GijjS6ethvhRhttdPG03Qg32miji6ftRrjRRhtdPG03wo022ujiabsRbrTRRhdP241wo402unj6/wEe1KIcdQoXlwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "f = figure(figsize=(5,5))\n", "plt.pcolor(bor);" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 6 µs, sys: 2 µs, total: 8 µs\n", "Wall time: 15.3 µs\n" ] } ], "source": [ "%time\n", "x,y = np.meshgrid(range(o),range(o))\n", "m = x|y" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "f = figure(figsize=(5,5))\n", "plt.pcolor(m);" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[16]])" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x" ] }, { "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.6.8" } }, "nbformat": 4, "nbformat_minor": 4 }