From 97031983736880cda730862242c1f73de5cc8210 Mon Sep 17 00:00:00 2001 From: Peter Norvig Date: Thu, 22 Mar 2018 23:19:08 -0700 Subject: [PATCH] xkcd-Name-Dominoes.ipynb --- ipynb/xkcd-Name-Dominoes.ipynb | 450 ++++++++++++++++++--------------- 1 file changed, 248 insertions(+), 202 deletions(-) diff --git a/ipynb/xkcd-Name-Dominoes.ipynb b/ipynb/xkcd-Name-Dominoes.ipynb index dd348ac..8e9209c 100644 --- a/ipynb/xkcd-Name-Dominoes.ipynb +++ b/ipynb/xkcd-Name-Dominoes.ipynb @@ -4,15 +4,15 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "
Peter Norvig
21 March 2018
\n", + "Peter Norvig
21 March 2018
\n", "\n", "# `xkcd` Name Dominoes\n", "\n", - "The March 21, 2018 `xkcd` comic number 1970 was [Name Dominoes](https://xkcd.com/1970/): domino tiles laid out in a legal array,\n", - "but with each tile having names of famous poeple rather than numbers. In regular [dominoes](https://en.wikipedia.org/wiki/Dominoes), each tile has two halves, and a tile can be legally placed only if one half is adjacent to another tile with the same number/name, and neither half is adjacent to any tile with a different number/name. (The very first tile in a game has no adjacent tiles, so it can be placed anywhere.) I will write a function to lay out dominoes in a random, legal array. I'll start with two key data structures:\n", + "The March 21, 2018 `xkcd` comic number 1970 was [Name Dominoes](https://xkcd.com/1970/): domino tiles laid out as if in a game, but with the tiles containing names of famous poeple rather than numbers. \n", + "In [dominoes](https://en.wikipedia.org/wiki/Dominoes) each tile has two halves, and a tile can be legally placed only if one half is adjacent to another tile with the same number/name, and neither half is adjacent to any tile with a different number/name. (The very first tile in a game has no adjacent tiles, so it can be placed anywhere.) I will write a function to lay out dominoes in a random, legal array. I'll start with two key data structures:\n", "\n", "- **`Tile`**: a tile is a 2-element tuple, like `('Tim', 'Cook')`, indicating the two halves.\n", - "- **`Board(n)`**: Creates an [n × n] 2-dimensional array of locations; each location holds as a value one half of a tile, or it can be `empty`, or it can be a `border`, meaning nothing can be placed there.\n" + "- **`Board(w, h)`**: a [w × h] 2-dimensional array of locations; each location holds as a value one half of a tile, or it can be `empty`, or it can be a `border`, meaning nothing can be placed there." ] }, { @@ -26,22 +26,18 @@ "empty = ' '\n", "border = '--'\n", "\n", - "Tile = tuple\n", - "\n", "class Board(list):\n", " \"A board is a 2d array of values.\"\n", " \n", - " def __init__(self, n): \n", - " \"Initialize an [n × n] array of `empty`, surrounded by `off`\"\n", - " top = bot = [border] * (n + 2)\n", - " line = [border] + ([empty] * n) + [border]\n", - " self.extend([top] + [list(line) for _ in range(n)] + [bot])\n", + " def __init__(self, width=16, height=24): \n", + " \"Initialize a [width × height] array of `empty`, surrounded by `border`\"\n", + " def rows (r, val): \n", + " return [[border] + width * [val] + [border] for _ in range(r)]\n", + " self[:] = rows(1, border) + rows(height, empty) + rows(1, border)\n", " \n", " def get(self, loc): return self[loc[1]][loc[0]]\n", " \n", - " def put(self, loc, value): self[loc[1]][loc[0]] = value\n", - " \n", - "tiles1 = [('Bo', 'Ja'), ('Ja', 'Po'), ('Ja', 'Ry'), ('Ry', 'Ke'), ('Gr', 'Ke'), ('Gr', 'Ho')]" + " def put(self, loc, value): self[loc[1]][loc[0]] = value" ] }, { @@ -54,12 +50,11 @@ { "data": { "text/plain": [ - "[['--', '--', '--', '--', '--', '--'],\n", - " ['--', ' ', ' ', ' ', ' ', '--'],\n", - " ['--', ' ', ' ', ' ', ' ', '--'],\n", - " ['--', ' ', ' ', ' ', ' ', '--'],\n", - " ['--', ' ', ' ', ' ', ' ', '--'],\n", - " ['--', '--', '--', '--', '--', '--']]" + "[['--', '--', '--', '--'],\n", + " ['--', ' ', ' ', '--'],\n", + " ['--', ' ', ' ', '--'],\n", + " ['--', ' ', ' ', '--'],\n", + " ['--', '--', '--', '--']]" ] }, "execution_count": 2, @@ -68,23 +63,22 @@ } ], "source": [ - "Board(4)" + "Board(2, 3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Now I need a strategy to fill the board with tiles, legally. I will randomly place dominoes one at a time, and I will *not* consider removing a tile from the board and backtracking; this is a greedy search. Some more concepts:\n", + "Now I need a strategy to fill the board with tiles. I will randomly place dominoes one at a time, and I will *not* consider removing a tile from the board and backtracking. Some more concepts:\n", "\n", "- **`frontier`**: I'll maintain a *frontier*, a set of locations that are adjacent to tiles on the board, and thus are candidates for placing new tiles.\n", "- **`dominoes(tiles)`**: places a random tile for the first tile, then repeatedly calls `place1` to legally place an additional tile, stopping when either there is no `frontier` left (meaning no place to put a tile) or no `tiles` left to place.\n", - "- **`place1(tiles, board, frontier)`**: find a location in the frontier, such that some tile can legally put one of its halves there, and the other half on an adjacent location; when found, `put` the tile there, and remove it from `tiles`.\n", + "- **`try_one(tiles, board, frontier)`**: take a location in the frontier, and try to find some tile that can legally put one of its halves there, and the other half on an adjacent location; when found, `put` the tile there, and remove it from `tiles`.\n", "- **`legal(value, loc, board)`**: a value can be placed if the location is empty, and the value matches all the neighboring location values.\n", - "- **`legal_match(value, nbrval)`**: a value matches if the neighbor is empty or a border, or is equal to the value.\n", "- **`neighbors(loc)`**: returns the four neighbors of a location.\n", "- **`put(board, loc0, loc1, tile, frontier)`**: places a tile on the board, it accomplishes this by making two calls to the board's `put` method, one for each half of the tile. The `put` function also updates the `frontier` to say that the just-covered locations are no longer in the frontier, but the empty neighbors of the tile are.\n", - "- **`shuffle(sequence)`**: used to randomize lists; calls `random.shuffle` and returns the result." + "- **`shuffle(items)`**: used to randomize lists; calls `random.shuffle` and returns the result." ] }, { @@ -93,65 +87,43 @@ "metadata": { "collapsed": false }, - "outputs": [ - { - "data": { - "text/plain": [ - "[['--', '--', '--', '--', '--', '--', '--'],\n", - " ['--', 'Ho', ' ', 'Po', 'Ja', ' ', '--'],\n", - " ['--', 'Gr', 'Gr', ' ', 'Ja', 'Bo', '--'],\n", - " ['--', ' ', 'Ke', ' ', 'Ja', ' ', '--'],\n", - " ['--', ' ', 'Ke', 'Ry', 'Ry', ' ', '--'],\n", - " ['--', ' ', ' ', ' ', ' ', ' ', '--'],\n", - " ['--', '--', '--', '--', '--', '--', '--']]" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "import random\n", "\n", - "def dominoes(tiles, n=24):\n", + "def dominoes(tiles, width=16, height=24):\n", " \"Place as many tiles on board as possible, legally and randomly.\"\n", " tiles = shuffle(list(tiles))\n", - " board = Board(n)\n", + " board = Board(width, height)\n", " frontier = set()\n", - " m = n // 2\n", + " m = min(width, height) // 2\n", " put(board, (m, m), (m, m + 1), tiles.pop(), frontier) # Place first tile\n", " while tiles and frontier:\n", - " place1(tiles, board, frontier)\n", + " try_one(tiles, board, frontier)\n", " return board\n", " \n", - "def place1(tiles, board, frontier):\n", - " \"Randomly place one tile on board, on some frontier location and an adjacent square.\"\n", - " for loc0 in shuffle(frontier):\n", - " frontier.discard(loc0)\n", - " for tile in shuffle(tiles):\n", - " for (v, w) in [tile, tile[::-1]]:\n", - " if legal(v, loc0, board):\n", - " for loc1 in shuffle(neighbors(loc0)):\n", - " if legal(w, loc1, board):\n", - " put(board, loc0, loc1, [v, w], frontier)\n", - " tiles.remove(tile)\n", - " return \n", + "def try_one(tiles, board, frontier):\n", + " \"Pop a frontier location, and try to place a random tile on that location and an adjacent square.\"\n", + " loc0 = frontier.pop()\n", + " for tile in shuffle(tiles):\n", + " for (v, w) in [tile, tile[::-1]]:\n", + " if legal(v, loc0, board):\n", + " for loc1 in shuffle(neighbors(loc0)):\n", + " if legal(w, loc1, board):\n", + " put(board, loc0, loc1, [v, w], frontier)\n", + " tiles.remove(tile)\n", + " return \n", " \n", "def legal(value, loc, board):\n", " \"Is it legal to place this value on this location on board?\"\n", " return (board.get(loc) is empty and\n", - " all(legal_match(value, board.get(nbr)) \n", + " all(board.get(nbr) in (empty, border, value)\n", " for nbr in neighbors(loc)))\n", - "\n", - "def legal_match(value, nbrval):\n", - " \"Does this value match the neighbor's value?\"\n", - " return nbrval in (empty, border, value)\n", " \n", "def neighbors(loc):\n", " \"Neighbors of this location.\"\n", " x, y = loc\n", - " return ((x, y+1), (x, y-1), (x+1, y), (x-1, y)) \n", + " return [(x, y+1), (x, y-1), (x+1, y), (x-1, y)]\n", "\n", "def put(board, loc0, loc1, tile, frontier): \n", " \"Place the tile across the two locations, and update frontier.\"\n", @@ -161,25 +133,7 @@ " frontier |= {loc for loc in neighbors(loc0) + neighbors(loc1)\n", " if board.get(loc) is empty}\n", " \n", - "def shuffle(seq):\n", - " \"Return seq as a shuffled list.\"\n", - " if not isinstance(seq, list): seq = list(seq)\n", - " random.shuffle(seq)\n", - " return seq\n", - " \n", - "dominoes(tiles1, 5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Pretty Output\n", - "\n", - "There are two problems with this output. One, it is ugly. Two, I can't easily tell where each domino is: when three names come together, which of the outside ones go with the middle one? To fix those two problems I will:\n", - "\n", - "- Use `matplotlib` to plot a less-ugly display, by defining `plot_board(board)`.\n", - "- Modify the `Board` class and the `put` function so that the board maintains a list of `boxes` that surround each tile once it is placed on the board." + "def shuffle(items): random.shuffle(items); return items" ] }, { @@ -188,13 +142,57 @@ "metadata": { "collapsed": false }, + "outputs": [ + { + "data": { + "text/plain": [ + "[['--', '--', '--', '--', '--', '--', '--', '--'],\n", + " ['--', 'Ry', 'Ke', ' ', ' ', 'Ja', 'Ry', '--'],\n", + " ['--', ' ', 'Ke', 'Gr', ' ', 'Ja', ' ', '--'],\n", + " ['--', ' ', ' ', 'Gr', ' ', 'Ke', ' ', '--'],\n", + " ['--', ' ', ' ', 'Jo', 'Jo', 'Ke', ' ', '--'],\n", + " ['--', ' ', ' ', ' ', ' ', ' ', ' ', '--'],\n", + " ['--', ' ', ' ', ' ', ' ', ' ', ' ', '--'],\n", + " ['--', '--', '--', '--', '--', '--', '--', '--']]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tiles1 = [('Bo', 'Ja'), ('Ja', 'Po'), ('Ja', 'Ry'), ('Ry', 'Ke'), \n", + " ('Gr', 'Ke'), ('Gr', 'Jo'), ('Ja', 'Ke'), ('Ke', 'Jo')]\n", + "\n", + "dominoes(tiles1, 6, 6)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Pretty Output\n", + "\n", + "There are two problems with this output. One, it is ugly. Two, I can't easily tell where each domino is: when three names come together, which of the outside names goes with the middle name? To fix those two problems I will:\n", + "\n", + "- Use `matplotlib` to plot a less-ugly display, by defining `plot_board(board)`.\n", + "- Modify the `Board` class and the `put` function so that the board maintains a list of `boxes` that surround each two-location rectangle that a tile occupies." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "\n", - "def plot_board(board, figsize=6):\n", - " plt.figure(figsize=(figsize, figsize))\n", + "def plot_board(board, figsize=(16, 24)):\n", + " plt.figure(figsize=figsize)\n", " plt.axis('off') \n", " plt.axis('equal')\n", " for (x0, y0, x1, y1) in board.boxes:\n", @@ -209,11 +207,11 @@ "class Board(list):\n", " \"A board is a 2d array of values.\"\n", " \n", - " def __init__(self, n): \n", - " \"Initialize an [n × n] array of `empty`, surrounded by `off`\"\n", - " top = bot = [border] * (n + 2)\n", - " line = [border] + ([empty] * n) + [border]\n", - " self.extend([top] + [list(line) for _ in range(n)] + [bot])\n", + " def __init__(self, width=20, height=36): \n", + " \"Initialize a [width × height] array of `empty`, surrounded by `border`\"\n", + " def rows (r, val): \n", + " return [[border] + width * [val] + [border] for _ in range(r)]\n", + " self[:] = rows(1, border) + rows(height, empty) + rows(1, border)\n", " self.boxes = []\n", " \n", " def get(self, loc): return self[loc[1]][loc[0]]\n", @@ -234,16 +232,16 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { - "image/png": "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\nRU5ErkJggg==\n", + "image/png": "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\n", "text/plain": [ - "" + "" ] }, "metadata": {}, @@ -251,7 +249,7 @@ } ], "source": [ - "plot_board(dominoes(tiles1))" + "plot_board(dominoes(tiles1, 6, 6), (6, 6))" ] }, { @@ -261,30 +259,19 @@ "# All the Names\n", "\n", "Now let's try **all** the names from `xkcd 1970`, as reported \n", - "by [explainxkcd](http://www.explainxkcd.com/wiki/index.php/1970:_Name_Dominoes), with a few typo corrections:" + "by [explainxkcd](http://www.explainxkcd.com/wiki/index.php/1970:_Name_Dominoes), with a few typos corrected:" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 7, "metadata": { "collapsed": false }, - "outputs": [ - { - "data": { - "text/plain": [ - "270" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "def split_names(text):\n", - " \"For each line of text, create a Tile of ('First Name(s)', 'Lastname').\"\n", + " \"For each line of text, create a tile of ('First Name(s)', 'Lastname').\"\n", " return [name.rpartition(' ')[0::2]\n", " for name in text.strip().splitlines()]\n", " \n", @@ -324,7 +311,7 @@ "Francis Bacon\n", "Francis Drake\n", "Lyndon Johnson\n", - "Oscar the Grouch\n", + "Oscar The Grouch\n", "Oscar Isaac\n", "Isaac Hayes\n", "Isaac Newton\n", @@ -529,7 +516,7 @@ "Cameron Crow\n", "Long John Silver\n", "Olivia Newton John\n", - "Huey long\n", + "Huey Long\n", "John Edwards\n", "Candy Crowley\n", "Aleister Crowley\n", @@ -559,78 +546,7 @@ "John Oliver\n", "Ryan Reynolds\n", "Alastair Reynolds\n", - "\"\"\")\n", - "\n", - "len(tiles1970)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Approximate and Partial Matches\n", - "\n", - "The halves of two tiles match if they are an exact match, like \"Amy\" and \"Amy\", but also if they are an **approximate match**, like \"Amy\" and \"Aimee\". You can manually allow for this with:\n", - "\n", - " synsets = synonyms(\"Amy=Aimee, ...\")\n", - "\n", - "Another issue is a **partial match**: \"John Smith\" is allowed to match \"Long John Silver\"\n", - "because the first name \"John\" is a piece of the first name \"Long John\". allowed to match. If you pass in a list of tiles as a second argument to `synsets`, then all the pieces of a first name (if it has more than one piece) will be (individually) made synonyms of the whole first name.\n", - "\n", - "I also update `legal_match` to consult the `synsets` global variable for an approximate or partial match, and to handle a special case: a single names like \"Prince\" gets represented as the tile `('', 'Prince')`, but we don't want the empty first name of this tile to match the empty first name of \"Drake\", so we disallow an empty-to-empty match." - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [], - "source": [ - "import collections\n", - "\n", - "Synset = set\n", - "\n", - "def synonyms(text, tiles=()): \n", - " \"synonyms('a=A, b=B') => dict(a={'a', 'A'}, A={'a', 'A'}, b={'b', 'B'}, B={'b', 'B'}\"\n", - " synsets = collections.defaultdict(set)\n", - " # Process `text`\n", - " for text1 in text.split(','):\n", - " synset = Synset(text1.strip().split('='))\n", - " for s in synset:\n", - " synsets[s] |= synset\n", - " # Process `tiles`\n", - " for (first, last) in tiles:\n", - " if ' ' in first:\n", - " for piece in first.split():\n", - " synsets[piece].add(first)\n", - " synsets[first].add(piece)\n", - " return synsets\n", - "\n", - "synsets = synonyms(\"\"\"\n", - " Amy=Aimee, Cook=Cooke=Cookie=Cokie, Alastair=Alistair, Columbo=Columbus, \n", - " Safire=Sapphire=Garnet, Garnet=Ruby, Charlie=Charles, Sean=Shawn, \n", - " Jimmy=James, Man=Mann, Jack=John, Tom=Tommy, Will=William=Williams, \n", - " Robert=Roberts=Bob, Cam=Cameron, Oliver=Olivia, Edward=Edwards, \n", - " Rich=Richard, Oscar=Oscar, Frank=Frank, Chris=Christopher=Topher,\n", - " Fat=Fats=Fatty\n", - " \"\"\", tiles1970)\n", - "\n", - "def legal_match(value, nbrval):\n", - " \"Does this value match the neighbor's value?\"\n", - " if value == '' == nbrval: return False\n", - " return (nbrval == value or nbrval is empty or nbrval is border or\n", - " nbrval in synsets[value])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Random Restart\n", - "\n", - "With many tiles, the program can get stuck before it has placed enough tiles. I could modify the program to *back up* in this case, but it will be easier to just *give up* and start again with an empty board. I can repeat this multiple times, and take the board on which the most tiles were placed. The function `best_dominoes` does this, and optionally plots the result. (I could fit more tiles on a larger square (with smaller tiles), but then the text would overflow the tiles even more than now.)" + "\"\"\")" ] }, { @@ -641,17 +557,156 @@ }, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "110 / 270 tiles placed\n" - ] - }, + "data": { + "text/plain": [ + "270" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(tiles1970)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ { "data": { - "image/png": "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\njIu3PfElOQbYqaretkxhzXy/jdBvGU6CSSjD3mPsPT6YjBi1OB7jX5TkSGDf9psdC/2bjdBvOfYe\nH0xGjNvCGVZpzFqy+iSGX/6UtluSoxl+qOqoccciSVrdkhwF/AnDDwRJ283vsEpjVlUnV9WjVtkP\noGgZVNWZVfXwqR+ekiRpXKrqrKp6WFX933HHoslmwipJkiRJ6pIJqyRJkiSpSyaskiRJkqQumbBK\nkiRJkrpkwipJkiRJ6pIJqyRJkiSpSyaskiRJkqQu7TDuALT6JDkeeNq447gNhwAkuXHcgcxhJ+Dr\n4w5iBdgD2D3JxnEHMoe1wHXjDuI29F6GAKdX1SnjDmLC9X6ce2+zofN2e0L65t5NwnkIQ79y7biD\nmMdaYPO4g1A/nGHVODyNoTGSxm13hovIXu3EEGPPei/DtXgRvhR6P85aPPvm1WES+pXNwOnjDkL9\ncIZV47K5qtaNO4hJ1fEsxyTa0uu5OAGj9FN6LsON445hBen2OE+CCTkX7ZsXYarNrqpdxx3LXKbO\nQ4+zJokzrJIkSZKkLpmwSpIkSZK6ZMIqSZIkSeqSCaskSZIkqUsmrJIkSZKkLpmwSpIkSZK6ZMIq\nSZIkSeqSCaskSZIkqUsmrJIkSZKkLpmwSpIkSZK6ZMIqSZIkSeqSCaskSZIkqUsmrJIkSZKkLpmw\nSpIkSZK6ZMIqSZIkSeqSCaskSZIkqUsmrJIkSZKkLpmwSpIkSZK6ZMIqSZIkSeqSCaskSZIkqUsm\nrOpKknVJvpVkY3vsMm3bEUket8DXOHFZA/3F95uK+dIkD5hjv2OT3K4tPzHJ3UYVY89a+Z007jjm\nMinxJXnLuGOZS+9lOKmS7DKtrfx+e64kB4w7NugnvpnnX5LTkuyzjO93WpI9l+v1e5HkXUke2JZP\nTvLqtnxYkjfMsv/aJA9uy3smOWwZY1vWNmdUbVq7bvhmkjXt3xuT7LAdr/N7Sx+dFmKh7U871seN\nNrrJYcKqHq2vqnXt8X2AJLerqvOr6txxBzeH9VW1Dngx8Ptz7HMsW+vcEwETVi2Zqvqjcceg0aqq\n70+1lcAX2nKq6opxxwb9x7dUpgYiV6HPAge25Z2B+7TlA4FNs+y/FnhwW94TWLaEdYX5IfCkRb6G\nCasm2mptZDUh2mjia4F3Tx99SvKKtu3CqZHsJP+Q5J+A46b9/fuTXJTkE0l2buu+kOT0JFclWbvE\nIe8M3JTk4Gkzrs9KchBDZ31BkmcCRwDvTfLiJBumjZ5+MMnuSxzTRJjnWL2nPT81yblJrkjyK237\ncUkuaY8HJ7lbK/cNSd68yuL7VHvemOT1SS5P8j9afFclecxtbU+yR5Iz2347JLlwiWPsugxXgiQn\nJjm8jeqfl+TsJP/c2s8LWvnG+LhLknOSXDx1HiV5X4ZZ4eck+XBbd06SNUne1M7dS5Lcp227LMnb\ngNcn2SvJZ5KcDew9gvh7sAk4KMntgZvZek15IPDVVl6fSfLStv544MVJ3tuWj0lywXIGuNxtzmyv\nD/zSErdp/wA8Z8b77tbqzoYkJ7d1H2vPr0nyxrZ8fpLjgQe193gQsDvw4AzXJ/u1/S5L8o4km5Mc\nsTSlr3ncKckZGa5hz0yy4/SNmXGN2x6XJDlr+rm0mmzzbQXSCByT5GHA1e3fH6qqf05yLECSXwPu\nXVXrMtx+e0KSvwduqarDW+d4+/a3x1bVDzMkukcD7wDuyTDaeADwTGDzEsX8COC/Ao8GXg88HvgB\n8EngyPY+h1fVT5McCpxUVV9Lcgfg0CSbgDtU1XVLEM8kmutYHccwKv9W4CHA7wBPSfJuhjJ+BHBX\nhk79LcDGqjpxGS56e49vuvcCLwO+CzwQWAO8Hfj4fNur6vFJ7pzkl4DfAP5pieOapDJcCX5SVU9o\nbeL+VfXIJKcA+wOfG3NsMNr4pvoVgPsD/wc4s6rWJzk1ycHAZ4CHMiRcP24XkbdW1S1JTmjn7uHA\ncxnqzz2A11TVd1rS8ML2Glctcey92gz8L2A/hs+8W4YB5D2BLwPrqqpaUvW3wCnADlV1apJ1wDeq\n6uXLHONytzkzXx8gS/j6ADcyDAAcOG3dnwN/3a6N/ibJr7d97gf8F+CnSe4NfLuqTknyu+2aaQ1w\nb+BKhuuftwL/jeGOr5cBO7Z15y+8iLUAM9ufK4Czq+qMJM8Dnjy142zXuMBfAzsBhwBPBY4C3jTK\nDzBuJqzq0fqpTizJRoaKPd39gXVtG8C1DCPaV7Z/XwH8emuYX9dGFHcGPtS2f62qfpTkGmDXpYw5\nw+zoqQwd+Nlt2z2A3eb529MZGqR7A/+4RPFMmts6Vt8F/qWqbm3LD2A45vsBG6a9zsXAIRlG8M8H\n1q+S+Gb6YlX9JMmXpwZAktx1gdv/EXgCw+16S/kdrUkrw5Xgi+35u8AN05bvOvvuIzfK+Kb3K6cB\njwH+uG27HNgHuBR4HHAn4PMMCchUv/JnSR7JcEH/L23d9VX1nba8N3BlG5D8/DLE352qurnlV7/B\nUIa7MQzOXgfsBbwhyZ2B+zEkiaO23G3OXK9/6zK0aW8GXjnt3w8A/meSYkhkNjGcv4cwzHb/CHgU\n8OkZr7Nb21ZV9c1s/Z2QG6rqeoAkS3VdpK1mtj+PBe6e5LnAHYEzgO+3fWe7xgX4UjuXrmFor1YV\nE1ZNgltn/PurwCemvrPXRsEfDBzatu/fntcCd6mqRyR5DkNCCFDTXmupZ2h+wNBxXQk8uar+I8mO\nLTn4CUMH91Ngapmq+kaSewFPAZ62xPFMirXAdbdxrGYet6uBz1bVk+Fn58GaqnpF+/dmli6Z6T2+\nmWrG81RMC9l+FsMM7I5V9Y0ljGnSynAlmK9sezDO+D7OcJfN/2GYATuVod1+E8OF/6XAG4GXJLk7\nw2zhw5M8Cnh6e43pfdPVwH7tTpkHjSD+XlzF8PsM7wDuDvwlQxvyPOBvqmpjhq8rhKHfu0P7u5/1\ngctouducuV5/uiVp06rqX5PcZdp7fAV4z9T3wTP8ENMvA+cAf89wLfICts76TsVxA0OClDYb/v0Z\n26fi1PL6OPCdqjoLfnYeTLUrs13j3ptVfoxMWDVxqmpzku+10acCzmi3vDwvw/dhvgX8G0ODvk+S\n84FvA9csY1hTt3vckWFW6nrgo+32nn9nuH3jXODDSU5laKxOTvKBqno7cB7D7cLfn/3lV7QAXwIO\n3pZjVVU3ZPhu0MXALcCFwEVJ/ophFmSpbmedhPhuWaLXoqpuSvIjlvZ24N7LUKvPBuDVLdH4fFVd\nBpDkZoZkdRPDTMdlDBf/WzJ8p3uu2dPXM9wtc117rBabgIdX1Q+BHya5Z1t3K/DWJF9imPGDoSxP\nS/KrwMuBv05yZlUdPdsLL9JytznjaNP+juErRgB/BZzSZkhvBY5rM6Z3BT4FbAFeX1Vfaft/O8lZ\nDLf9XsMwsH868Ae3FbOWxYUMg2HPZziXTpjaMNs1LvCJsUTZkVTVbe8lLaGp2xzaL0cKaI3WDVX1\ngQXuvxH6LsOFxpjkGGCnqnrbCMKa+d43AlTVnLdArcb4kpwO/GlVXbuAfXsvw42wMurKOC3kOGt+\nvR/n3uPbFsvd5sz1+pNQT1bScR6XSSjDSYhxWzjDKo1ZS1afxPDdn1UlydEMvxZ51Lhjmc1qjC/D\nj95cv5BkdYGv13UZSlpZlrvNsU2TRs+EVRqzqjoZOHnccYxDVZ0JnDnuOOayGuOrquOX+PW6LkNJ\nK8tytzm2adLo+f+wSpIkSZK6ZMIqSZIkSeqSCaskSZIkqUsmrJIkSZKkLpmwSpIkSZK6ZMIqSZIk\nSeqSCaskSZIkqUsmrJIkSZKkLu0w7gC09JIcDzxt3HHM4xCAJBvHHMd89gB2H3cQ89gJ2NJ5GU7C\ncd4J2DLuIOaxC1iGi7QHsHvnZTgJdaX3c7H3Nhv6b7cn4TzsXe/t4USYoOvYG8cdyDx2Ar4+7iCW\nijOsK9PTgLXjDmLC7c5Q2Xu1Bbhu3EGsAJbj4vVehr3XZS2NSTjOvdcVLZ7HeGl4Hauf4wzryrW5\nqtaNO4jZTI3e9hofTEaMvZuEMpyAmYSLwDJcAlsmoQx7jrF3luHiWYaLNyHt4aTo9jp2Eqy0c9EZ\nVkmSJElSl0xYJUmSJEldMmGVJEmSJHXJhFWSJEmS1CUTVkmSJElSl0xYJUmSJEldMmGVJEmSJHXJ\nhFWSJEmS1CUTVkmSJElSl0xYJUmSJEldMmGVJEmSJHXJhFWSJEmS1CUTVkmSJElSl0xYJUmSJEld\nMmGVJEmSJHXJhFWSJEmS1CUTVkmSJElSl0xYJUmSJEldMmGVJEmSJHXJhFWSJEmS1CUT1lUkybok\nP01yz/bvA5NUkj3HG9lka+X6rSQbk1ya5AFz7Hdsktu15ScmudtoI/2FWDcm2WUb/vbEJOuWMbzu\nJXlXkge25ZOTvLotH5bkDbPsvzbJg9vynkkOG23E/ZrlXPwfU+WTZNckv218WgrtWJ407d+nJdln\nGd/vtG3tV7e1bdHkmYTzcFItpmyn99PjjK1dIx63XHFMOhPW1Wcz8IS2/CTg8jHGspKsr6p1wIuB\n359jn2PZWueeCIw8YW3WV9W69vj+XDtNJdf6OZ8FDmzLOwP3acsHAptm2X8tMNUR7gmYsP68n52L\nwOfZWj67Aj0khL3Hpw4sUVu5rW2L9HPss7fb9H5anfLkXn0uBB7ZlvcF/g+wa5KLknwmyUvhZyM9\nZyU5rz2S5ElJNiW5MMmRSXZIckaSi9vzDm0k6WNJPtpmG3ca1wcdk52Bm5IcPG3G9VlJDmJoFC9I\n8kzgCOC9SV6cZEOSNQBJPphk91EFm+TwJJe1x+Ft3cYkrwXeneRuLb6PAQeNKq6ObQIOSnJ74Ga2\ntqEHAl+dWY+A44EXJ3lvWz4myQUjj3oyTC+f44FHtXNxtyTvb2X7iSQ7G5+WwF2SnNP6rzcDJHlf\nkl2SPCd32NPDAAAgAElEQVTJh9u6c5KsSfKmdowvSXKftu2yJG8DXp9kr1b3zwb23o54tqltSfKR\nJHdty29MckCbuXl7kk8leWXbtk87Ly9K8vLtLy4tk97Ow5XkxGnXNadluMvpF65t+fl+elTu1K6b\nL0xyZpIdp29M8orWv1zY4t6zHfOzklyR5FdGGGsXTFhXn5uBHyV5KPAvbd2PgXVVdTDDRdid2vrv\nVNWRwDXArzHMKDylqg4DPsYwQ/ulqnoEQ+J71NR7VNVvAeexNTle6Y5JcjHwTuD9wKuBxwMPA57O\nMLO9GXhkVb0LOB94elW9DrgAOLRd6N6hqq4bQawbk7wTOBF4dHu8eto+H6qqZwDHAadW1WOBNcsc\n1yTYDOzXHlcB/5bhlqs9gS/zi/XoFOB1VfX0try+qlZLnViIqXNxI0PZTpXPKcAn2+zmDcCxVXUI\nQ9062vi0HaYfyyMY2rwzW/915yQHA58BHsqQJP64XUTeWlW3ACe0Y/wq4LntNe8BvKaqXshwd80L\nGfrJu29HfNvatnwAOCrDrNp+VXVFe52PV9XDgCPbv18DPLvFvu9qvNDtTO/n4SSbWbZzmXltO72f\nHlVs64Cz2/X0RuDJUzsm+TXg3u3Onj8ATmibdgL+O/C/2Hq9vWrsMO4ANBbnAW9nGFV6PhDgvCR3\nBu4H3LPt98X2fA3DLXCvAV6eZIe2fF/gc22fy4EDgOtm+bvVYH1VvTzD7OipDBcdZ7dt9wB2m+dv\nT2dokO4N/OOyRjlYX1UvB0hySVXd1JZvmbbP1MXP3sA5bflzrHJVdfMwIMtvMJzzuzFcGF4H7AW8\nYZZ6pLlNPxfXAYfP3CHD3QevS/IghjsYPmR82g7Tj+VpwGOAP27bLgf2AS4FHgfcieEW8KOBK9s+\nf5bkkcCObB3svb6qvtOW9waurKqfJvn8tga3HW3Lh4H3Av8KXDztpab63/9sz/cD1rfX3pWhn/kO\nGpeuz8MJN7Nsr562LdOWx3GNOjO2xwJ3T/Jc4I7AGcDUV7TuD6xryS3Ate35S1V1a5JrGM6TVcUZ\n1tXpPIaE5LPt338D/E0btfsaWyt2TfubAN+qquMYRqNeCHydIUkFeEj792x/t5r8gOGi9UrgcW2E\nbP+qugb4CVtnKX+2XFXfAO4FPIXRJKzT3S7Jzm12d/oM6q3t+WqG5Btg/5FG1q+rGL6PfCVDPXoe\nQ116Hr9Yj2Y95prVXGW1FrhLm4H4O8bXpvQen7bNx/nF/utKhhmv6xiShhcBn05yd4YZzocDf8HW\nY3zrtNe7GtivDWA8aDtjWnDbUlVbgJsYkp0zpr3G9P4X4CvAU1tfdABb+331ocfzcKX4D2CPdtvv\nvtPWz7xGHUff/HHgte0unYcCJ0/b9lXgE9N+P+F32/rVfG1twroaVdWWqnp2VU2d/OcCb03yfoZb\nhudyYpKLgLcAZzKM8O7bboV9EHDWcsbduWPaaNiFwOuAVwIfTbIBeF/b51zgw0mOYmisTk4y9QNN\n5zHcSj3njyAtk1cBn2yPV82y/VTguRm+w/rjUQbWsU3Amqr6YVV9m2G2YxOz16PLgGckeQvDqO5v\nJjlzHEF3avptUvuwtXy+B9wtyQeBG4B9kpzP6L9H3Xt82n4bgN9Jcgnw46q6rKp+wlB3L2Wo0/dn\nqMP/D9iS5EKGma/ZvB54I8MM+/Z+rWNb2hYY+pa9qurL87zmy4B/aLGfB9x5O2PT8ujxPFwpNgEv\nAD4I3DjPftP76VG5EHhSkgva8fzZjz5V1Wbge63v2QA8a4RxdStbcxatFFO3EbSRme70Hh+MPsYk\nzwduqKoPjOL9RsHjvHi9xwf9x5jkRoCq6vbrCb2X4SRYjWWY5Ehg3/ZbCEvxehthdZXhUpuEMjTG\n1WGllaHfYZXGrCWrT2Lrj2RIkjSndqfOn7D1v6mTpBXLW4KlMauqk6vqUe02IEmS5lVVZ1XVw6rq\n/447FklabiaskiRJkqQumbBKkiRJkrpkwipJkiRJ6pIJqyRJkiSpSyaskiRJkqQumbBKkiRJkrpk\nwipJkiRJ6tIO4w5g0iQ5HnjauOO4DWuB68YdxIQ7BCDJxjHHMZc9gN3HHcRt2An4+riDuA29H+eD\ngJs7jg/6L8OdgC3jDuI27AHs3nEZToLez0Pov93eCdgyAWUIcO1Yo5jb1Hl447gDmccvAT/u/DhP\nQjleR7/nIQy5wOZxB7FUnGHddk9jOAl6thN9d4pavN0ZjrNWtpuB2487iAm3hf4H8KzPq0Pvx3kS\n6sp920Pb73bAHcYdxISbhOvszcDp4w5iqTjDun02V9W6cQcxl85HpCZCVWXcMcxnamS08/Nw47hj\nuC0e58XrPcZJOA+bLb2W4STo/TyEyYixd1PXN5bh9rMMF8+6PHrOsEqSJEmSumTCKkmSJEnqkgmr\nJEmSJKlLJqySJEmSpC6ZsEqSJEmSumTCKkmSJEnqkgmrJEmSJKlLJqySJEmSpC6ZsEqSJEmSumTC\nKkmSJEnqkgmrJEmSJKlLJqySJEmSpC6ZsEqSJEmSumTCKkmSJEnqkgmrJEmSJKlLJqySJEmSpC6Z\nsEqSJEmSumTCKkmSJEnqkgmrJEmSJKlLJqySJEmSpC6ZsC6xJI9MsjHJxUk+lOSjSfbZxtdYl+Sk\n1Rifllc7dt9q58DGJLtsw9+emGTdMoan7ZTkX5P8zizrN44hnIk0Ce3aJMQIvxhnktMW2s8kOTbJ\nccsXXZ+SvCvJA9vyyUle3ZYPS/KG8UY3v/nOyySfGnU8s8TQRXyLqRfb+X6nJdlzG/+m+xjneJ3F\ntDlrkzx4sTFoeZmwLqEkuwGvAH6rqh4BvAS4/Ta+xrIdk97j08isr6p17fH9uXbyWE+GJPsBnwJ+\na9yxSNpunwUObMs7A/dpywcCm8YSkSbKJPTZnca4FjBh7VyPJ84kO5IhGfgBQFV9FbgWeFGSTyV5\nJUCSZ7XZrcuTPLqtOy3JW4Hzp79gkuOSXNIeD05yt/a3G5K8eYXFpxFLcniSy9rj8LZuY5LXAu9u\nx3NDko8BB403Ws3ht4GTgTsnuUOS/5bkiiTvBHaEeev025JcmuSkJG9tf/d7bftftXZhQ5J7je3T\njViS9ye5KMknkuzc1n0hyXva81OTnNvK6lfa9pG2g5MQ4yzukuScDHf3vLnFtMvMddM+473bZ1gt\n594m4KAktwduZuv12YHAV9vx/kySlwIk+UiSu7blNyY5oNXpt8/oz/dp58lFSV6+nB8gyUtae3Jh\nkqmEe5ckpye5Ksnatt8XZq4bhU7jm61evK/Vjeck+XBbd06SNUne1I7lJVOfIUP//Tbg9Un2aufJ\n2cDeqyjG2ZyYrdc1pyXZM8MdHGclOa89AhwPvDjJe5cxFi2SCevS2oMhAZzp41X1MIaEEeDMqloH\nPBJ40bT9Lq2qR0/9I8k9gMcDjwCewDA7uj+wsaoOBf54hcWn0TimXai+EzgReHR7vHraPh+qqmcA\nxwGnVtVjgTUjj1QLsX9VfZZhMOlw4ATgEIb6uHvbZ646/Ymq+k3gvwN/D/wG8Oy27TeBR7S6PFu7\n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\nNlq5nO9zOvCn7Tut2/q3G2H5Y1zJxlGGbbTx/Kp61AL2vRGgqrblFtNF6z3GbYlvEe9xDLBTVb1t\nud+DlqQuVRkmOZLhV1GfOO32t8W+5ucZZi7uuxSvt9QWWpdHcVznee+NYJu9GGNqsx8IPL+q/nBU\n7znj/Y8E9q2qmUn39r7eRuj7PNyeGEdZt1dqGY7aJMSo0XKGtUNJTmG433+bk1VNpiR3Yxil//tx\nxzKX3mMcRXxJjgaOZxiVn7j3qKrzqurxS5isHgX8F4bvyU6sURxXrSxJHs7Q1ozlV6Bb3Xsp8A/j\neP9JYd2WVoYdxh2AflFVHT/uGDRaVfXvDP9HZrd6j3EU8VXVmcCZo3qPZFu+8jp6VXVWkj8adxyL\nNYrjqpWlqi4Bfn2M738WJmG3ybotrQzOsEqSJEmSumTCKkmSJEnqkgmrJEmSJKlLJqySJEmSpC6Z\nsEqSJEmSumTCKkmSJEnqkgmrJEmSJKlLJqySJEmSpC7tMO4AJtAhAEluHHcg89gJ2JJk47gDmcMe\n7fnasUYxv7XAdeMOYh67AHR8jGEyYuzdVBn23t58fdxBTLg9gN2tK4syCX0zDP1Kr33fWmDzuIOQ\nsE1cKqdX1SnjDmIpmLCuTFvoO9m6b3vutdOG4SJckkZhd2xzVoOpY9xr37cZOH3cQUjYJi6Fte3Z\nhHWVugigqtaNOY6JNTUC3nMZTsAovefhKjA1utzzcXYEfMls6fk4925av7LruGOZyyTUZ6kjtomL\nsNL6Zr/DKkmSJEnqkgmrJEmSJKlLJqySJEmSpC6ZsEqSJEmSumTCKkmSJEnqkgmrJEmSJKlLJqyS\nJEmSpC6ZsEqSJEmSumTCKkmSJEnqkgmrJEmSJKlLJqySJEmSpC6ZsEqSJEmSumTCKkmSJEnqkgmr\nJEmSJKlLJqySJEmSpC6ZsEqSJEmSumTCKkmSJEnqkgmrJEmSJP3/7N15nFxVnffxzxdCEIghrJFF\njMA8DjhAkJ2wNJuyCLigyBKNGqPguDyDyqAMIoI8gLgNwoiOBsMyYQwImMiadCKbYQuCOEFQ9gio\nEyGyBMjv+eOcooumu9Od7qo6t/r7fr3q1bdu3br3V/eee+753XOq2orkhNXMzMzMzMyK5ITVzMzM\nzMzMiuSEtYkkdUh6WNIcSddJWqeB2zm1Eevutp1JkhZK6syPHfv51lH9XH9TPsdgVCFGG176KpOS\n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\n9lsrv3/KPawBXAJc24AYKkVdIyWsP3IBInfrN3I7FwPH5e+0DvS9E4FREXHe0Ec2eJIWA0REn0Ma\nWvk5So+xWeXQWmtFjnOzy2TJZTHvi38DnigxvprS65tWkbQlcGxE/HM/lu3XPhxKA4kvL98JZZ4r\nVVH6Piw9PhiaGJV/UTsilin9oOaUiFjuzbMBrH/Q53OjYyxdFcriQLiHtUCSzgeeWsFk9XBgChX/\nQnYVPkcVYrThxWWyS92+6PFfzFTNcDu2knYHzqTQ0QGlx2fWYKOAmZJGAtcXmghWIUbrJ/ewDlC7\n3bFohVbcCR+o0mN0ORweqnCcS4+x9Pig/PqmCqqwD6tQFktX+j4sPT6oTIzFn8+lq8JxHgj/SrCZ\nmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJ\nCauZmZmZmZkVaUSrA6igPaHrf0QV7ElgUauD6MUoYEmrg1iONaHr/1gVaDywoNVBmAEbAGMLPleq\nUGfX6puSYwRfVwar9HOlCmrnc2eL4+hNFa7Npe9DKL8NVgVVKIv95h7W9jQKGNvqIPqwhNTwsRW3\nALi41UGYkeqaUa0OwhrO15XB87nS/nxttlK0VVl0D+vAzQWIiI4Wx9Gr2h2pUmOsyB2z4o+zWUGW\n+FxZcbWe1YgY0+pYeuPrypDxuTIIpZfDKogItToGs4FyD6uZmZmZmZkVyQmrmZmZmZmZFckJq5mZ\nmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJ\nq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZ\nFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZ\nmZmZFckJaxNJ6pD0sKQ5kq6TtE6rYypZ3f7qlHSFpDf0ssymeXq8pHc0P1KzMtSdMzfk8+aIVsdU\nr+T4cmyntjqOvlQhxqqQtGYug52S/pb//mS4x7Ii+iqXkm5sdjxm1n6csDbftIjYC7gAKKaxVrBp\nEdEB3Awc1sPrHcCmeXo80K+EVZLLvrWraRGxD3AAcFSBN3FKj8+GgYj4W0R05OvLPXn6o8M9FjOz\nEo1odQDD2BgASScA+wNvAD4F/An4TkQcLmkEcG1E7N26MIuxANhJ0mxgVeBK4NvAJOC9kq4HdgHW\nkbQXcDRwLvA24Pn8fBvgX/L6zgN+2cwPYNZMEfG8pLOBgyW9G9gbWAZ8DHgcuBpYBXga+CDwZmAa\n8BQwDjg0Ih4bbvFJuhQYC7wIHBYRz0i6B7ibVId8g1SfvKkWg6TJwEfyKj4HPARcBgQpAfnscIux\niiSNA35CusZcFhHfzD2HG5PK30PAo6SbLVdGxGklxdKP1zuBvSNimaTLgU9ExJ+HMObjgUNI5XJS\nRDwCrCnpYuDtwEciYkEuq/fUzxuqGMysPbmXqfkmSrodOJbU+PpuROwJHAV8ISIWAatLeiOwD3B9\n60Ityh6kHumvRsQEYC9gXWAqcFxEHAecD5wVEUcB7wYeycn+OaSbAQAjI+KQiHCyasPBE6RRCBvl\n3ptPAycALwPvjog9gN+RkkWAUcAHgG8B7x+m8U3KdfKlwOF53vrAZOCTwBeBg4GzgQ9KWpfUSN8D\nOBQ4CdgW6MyjaT43TGOsohOALwMTgHdJGpvn35FHBbwVuAPYGXhPobH09XonsIektQANZbJKujmy\nd74+n5Tjh1QuP0Zq83ykj3lmZr1yD2vzTYuIEyVNBTYBdpV0FKlnIfIyl5EaFXsDw/37ShMlTQDu\nAx4D7szzF5AuyL3ZAviQpHeRyvktef6dvb/FrO1sBMwhDb3tzPMWAWsA50vaiNRT9/v8uC/3vjwO\nbD4M41sZOEvSVsBo4PI8/4GIeEHSE8DvcgxPkOqZTUm9mnPq1jMP2FPSRaSe4mnDLMaq2gy4MyJC\n0t2knnyAe/PfJ4B78+svFhpLX69fBByX1z1jiOMdB9yVp28Hvpqna+XycfLIsl7mmZn1yglr65wO\nnAxsSbrTvRnww/zaDNKFZZWI+ENLoivHtIg4EUDS94HtSA2tbYF/B14iNeDI06vm6YXATyPi7Pze\nVUh3qpc1L3Sz1sk/UvZ5Um/HehHxmTx/FVJv2/0RcaSk0wDlt0X9KoZhfOOBJyNiD0mfICXU3bfb\nPYY/ArdFxGF18a8cESfl5wsY2mSwCjFW1YPAdpJuIe3nb+b5ve3bEmPp9fWI+L2kTUg3yw9naD1E\nuikCsD0p/u4xNL2eMbP24IS1RSJioaT1gPmkBGxe3WvPSHoBDwfu7kzgAkkjgasi4vHcK3O6pJ1I\nSf5USf8EfBb4Xv7OK8B3gGdaEbRZk02UtAvpRs75+Ttjf8rnSgCXALOAr0jaHvgbqfdyuMcn0kiO\nnSRdTfr+3+PLe1NEPC1ppqR5wCvAbGCupG+QvoM7lPV4FWKssv9H+prJKsDPI+JPUsvyqUbFcg2w\nW0Q8OxQry0Qqhw9KuhlYiof6mtkQUkSzbha2h9qwtfx9q0Zu52LSdzMXrcB7O6HxMa6o0uODasRo\n7a8K5VDSYoCIqPTQPkkTgVERcV4Ltt2vfdjiGDuh3LJYenxQxrki6bPAoxFx+XIX7v86m1Yuq3Cc\nzWzouYe1QJLOB55akWTVzMwGRtLhwBSa80NTK6QKMVrZJH0GOCg/hmqdLpdm1nBOWAsUEVNaHYOZ\n2XAREdOB6a2Ooy9ViNHKFhH/Tvrth6Fcp8ulmTWc/62NmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZ\nmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRVpRKsD\nsGFpTwBJi1sdSB9GAUskdbY6kF5skP8uamkU1Vf6fqydK50tjqMva0LxMZZuFLCk1UEsxwbA2IKP\ns8+VwdsAGNvqIJbD1+bBq0KMVXBxRJzf6iCGCyesZj1bAjzZ6iD6sFn+6wvO4Hg/WglKr28gJTKj\nWh2ENVTtGJd886T0c6UK15QqxFi68fmvE9YmccJqrTAXICI6WhxHZdV6p70PB6f0/VjrRSg1Phsa\nBfcWdbek1LLoc2XwvA8Hr/RrClQjxtJVqM5uG/4Oq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZ\nFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZ\nmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmr\nmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkV\nyQlrA0jqkPSwpDmSrpO0zgDed+pQLVd1dfuxU9IVkt7QyzKb5unxkt7R4JhGS5qZY7pV0vaS3teg\nbY1ZkXVXIcb83lfLsaT3S5ohaaW6178jaeUe3tfw41ylGK39SNonn7/zJF3e32tIM1UhRmuOgbRJ\n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\nV9rfiu5DSROBURFxXgPCqpTSzxOoRoyNVuvtz8PUZwJTcidIf9/fmd/f0ZAA7XX8HVYzMzMzGzCl\n/3Awha4fxDKrglGknt+RwPUDSVatNZywmpmZmdmARcR0YHqr4zAbiPyDX7u3Og7rP3+H1czMzMzM\nzIrkhNXMzMzMzMyK5ITVzMzMzMzMiuSE1czMzMzMzIrkhNXMzMzMzMyK5ITVzMzMzMzMiuSE1czM\nzMzMzIrk/8M6cHsCSOpscRx92RFYWnCMtX24uNWBLMeTwKJWB9GLNcH7cAiMApa0OghrHElTgCNb\nHcdyVOG64nNlkCpQFn1tHrwqnCe19kNni+PoywbA2FYH0YdRwJLC9yHAxRFxfquDGAruYW1PS4GR\nrQ6i4kZRdmVZBVXYh0tIjR9rX0cC41sdRBvwuTJ4LouDV/p1xefJ0BhLOtalqsJxHk/ZN8gGxD2s\nAxQRanUMy1O74xMRHa2NpLpK34elxwfVitHa3oIqlMMqxGiDVnRZLF3p50pFzpO5UO4+hPKPcxVU\npCz2m3tYzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljN\nzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxI\nTljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzM\nzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITliHOUkdkk6tez5V0uatjKkmx/awpE5J\nV0h6Qy/LbJqnx0t6R/MjLYuk0ZJm5v12q6TtJb2vQdsa06h1l6xb2bxJ0ha9LNcpaYSkkyXt2+w4\n7bV6OjdWYB0dkk7O0zcOeZBtQtI+eT/Pk3S5pHVaHVPV1NUzcyRd19s+rNUzzY6vbvuvaUcsZ9lh\nXxdKukDSlnn6XEmn5Om9JZ3dw/KTJE0ertfb/srl8GVJ6+fnO0gKSeNaG1n/z2XrnRNWGzBJK/U0\n3SDTIqIDuBk4rIfXO4BN8/R4oF8JaxPibqUPA5fl/bYb8CIw5Bc5SQLWasS6K6JWNr8IfKrFsVj/\ndD83FjZz421e77xK0nrAScDBEbEHcDwwMr82LPbBEJoWEXsBFwBHtDoYGxK3ATvk6dHAJnl6B2B+\nH+8bQz+vt8P4PFsAHJqn3wvc3sJYuvO5PAjDtUBb38ZImivp15K+DK/e4ZsuaSawtaS7JV0I/Juk\n62pvlHSDpFUaENMCYFNJs3OP1vGSRgKTgLPzXckpwBclXaTkvLz8TElr5TtcV0q6EnhXA2IsxXPA\nLpLWjYiXSRXjfvku/Hr5Tu2v8uMdkg6S9BlJq0t6UdLakj4q6YOS9s/vu13Sh+HVO+Q/Aa4BvlS/\n7tZ95JYaDTwjaae6HtePtjoo61H3c+OFXGfNkzRD0sqSxuVzY4akOyRtDCDpx5KuBybXrW+MpP/O\ny+2Ql3t3Xt/NkvbP826VdB7wTUmb5br1irztcU3dA81xIKlx9ixARNwPnC7pHOBqpVEHl+T9dEl+\nfpakrSTtJ2kBvNoTtX4LP0dJxsBre/Uldda9/u1czqZIWrVJ1+XXkHRpbjtcK2l0nndMjmuOpLfV\nLftP+Rx4Y6PjKtB8YMfchllKV1t8B+D+7u2vOlPo41oOUNc2+1KzPkxhZgP75Om3A78FVsv1zOzc\njl1F0jq5TM7K5bCjiTGOAdaSNB0g13+z83RP59A9ki7Ox3Z8E+MsSsuGkFhRJkraLU//I3A20BER\nkU/ob+fXFkfE4QC5EbdrRPxd0o+UhhGvDDwYES81IMY9SHcWp0TEryRdDUwDpgI3RsT1kiYBIyLi\nR5IOBh6JiGMkHUDqAbsFGBkR+zcgvpJMAzYG5kh6EjgR2CQijpa0LnAIaX+uBfwY+BhwJHAP0Ans\nAuwKfA34a0RcrTTcbC7w07yN+yPio7mx/caIOLpJn60kEyXtAfwD8E7gm6R9+yxwnaSLWhmc9aj7\nuTEReHdEPK80pHFv4PfAKGBP0s2e90u6BXglIvbNjciReX0bAjsDawI/kHQI8IW8npWAXwJXA+sC\np0XEYzlx/Rypl2VBMz50C2xAqk+6uyki/lnSB4D7IuIISScC7yeNotk1v/eJnMiMjYinmhZ1mSbm\nGx+rk+rmD/Wy3H8Bnwd+RbouPtyE63J3kyLiOUmTgcMlXQF8AJgQEa+oq9fv7cBngaNrNzWGmQXA\nt4BtgLuB9fK1dBzwP/Tc/gI4n76v5e8h1W+7RsTfm/RZSrOUdCNyZ+B3wJuAfYErI+ISSceQRutt\nAvwgIv5L0i+bFFv3c/nCXM/tClyfl3nNOQT8EFif1E7bDvgI7Xvd6JMTVoN0J/xESN9hBQTMkrQ6\n8DbSyQJwR917FtZViBeRLqIrA5cMcWwTJU0A7gMeA+7M8xcAb+3jfVsAH5L0LlI5vyXPv7P3t7SH\n3DA5BThF0hGkRszL+eVNSRfJOXXL/1Xp+xS7AmeSGttvzo3r3SV9FVgF2LJuM/VlYbiaFhEnShoL\n/Ii0X6/Mr60LDNce52L1cG4cB2woaSNgLClZ/T0pmVom6XFgc9J5c1dezR2kxgbAAxGxBFgiaU3S\ncd+CrsbH+pIEPBURj+V5bwV+kxvw9zby87bQIlIy312t3tiMrrr4dlJD7IfAWaTrz0WkYX1PNjbM\nSqjVM1PpGjpa+0pGvbtymXqYdM1u5HW5JysDZ0naijTq5HJSWb8zIl4ByOcUpCHiR0XEM02IqzgR\nsTTvh11J5X890qiEJ0n77Owe2l/dve5ani0cxslqzSzgP0g90scCBwDrSPok8AbS+fBW4Kq8fLMS\nwO7n8mWkem5v4FRJPZ1DkK4zL+Tr0ZgmxVocDwm2npwBnBERewIPkBoQAMvqlqmfngvsnh9zhziW\naRGxV0R8Grif1LAB2BZ4CHiJdKGk2/RC4KcR0RERuwG1oTX1cbclSW+pG/71FKnHr7Zf/gjclvdL\nB7Bfnv8oqdKcDWwF/CXP/xJpCOS+wOK6zdT2Y/0+H66eJV1c7gIOyvt124h4vKVR2ev0cG4cShot\nsCcwg666LurfRjpvtsnPt617bXNJa0jaEHgG+DOpZ3GfXA62iYjgtfXOH4GtcuPk7UP24coyCzi6\nNtwz9/RtQNd+eJCuunx7Ug/gU3mZV4CbSD3VNzcz6MKdTrqOSdKqpHq63ja5TL2FVLYbeV3uyXhg\njfyd5e+Tzps/ANvWelbrelg/C3xZhfzAY4vcTfpK012kGznHkEZdHEPP7S947fW2t2t527dx+mEW\naZ/elp9fA5yZ99XOwLnkeji/vnWT46udyzNIvagbRsQf6Pkcgtdfj4Yl97BaT2YC50i6jzS8ok/5\nrulvSMNxG1lZnglckL/3cVVEPK70HZ7TJe1EuqM8VdI/kS6I36t9LwD4DqlBORyMBy6V9DzpAjcZ\nOF/Sz0h3HGdKmkdqGM4Gvk5qGK6fhyE9C9ya13U5cAXpDuRiXu9PwNq1dUfEXxv4uUpTG0r/BuBU\nUiPxqtzz8VfSMEcrS/dzYy/gSqVfC/4bqXf1dSLi10rfxbsBeBh4JL/0KGko3ubAsbku/BZwg6Qg\njQz5dLfVfZNUVz0F/G+Oo61ExNOSvg78ou58qL+W/Bw4LNdDi0g3ScnTv4mIh5S+E++ENYuIcS8A\n7gAAIABJREFUhXmfXE1K6K/ptsgHSNe5n0TEUoAmXZchNaLvA3bKX9d5FHg8l4MZwM35nKv9ON1i\n0g+gXSjpqIj4U4PjK9F8YPeIeA54Tum72vNJCWdv7a/XXG/p+Vo+7OVRLx8HyD3Z1wJfkXQsqaye\nQBoVNUPp9yZeoYn1cN25vDrwAl0jchaSboK+eg41K6YqULr5a+0kJ3Hku27N2uaZwH9HxG3LXbgC\nWrEPB6L0+MAxDoXS46uC0vahpBER8XLuDbuJ9GvF10M5MfaktP3YXenxQfNjbNZ1WdJEYFREnNfI\n7eRtdUK5x7n0+MAx5vWvlNe/TOnHRKe0YlSUpIuB4yJiUQPW3QllH+eBcA+rDZrS/xB7S7skq2Zm\nDbSppB8BawD/mZPXVsdkbaZZ12VJh5N6+zyixKpkFKmHeiRwfYuS1fNJv28w5MlqO3LCaoMWESe1\nOgYzsyrI/+Jlj1bHYe2tWdfliJgOTG/GtsyGSv7Br91bHMOUVm6/avyjS2ZmZmZmZlYkJ6xmZmZm\nZmZWJCesZmZmZmZmViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZmZmZmViQnrGZmZmZmZlYkJ6xm\nZmZmZmZWpBGtDsAaYk8ASZ0tjqPKdgSWFrwPxwNPtjqINlA7Vxa3OpBejAIebHUQ1nAbAGMLrm/A\n58pQKP3avAEwttVBLEfpx7n0Ywzlt2+g/PoGUhtsUauD6MN4YEGrgxgqTljNerYUGNnqIPowqtUB\nmNmQGYvPaWu9Wjlc0upArKFKb99UQa2+LjlhXQBc3OoghooT1jYUEWp1DFVXu/MYER2tjaRnhd91\nrJK5UPRx7mx1DNY0S0oth1VQhXOl9Gtz6dc9KP84l36MoRrHuXTeh83n77CamZmZmZlZkZywmpmZ\nmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZyw\nmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZ\nkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZ\n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\nJnMP68AdSSqotuI2y4+SjQLGtjqIilsKjGx1EMtR+nEeS4qxZOMpv4Fm7W8BcHGrg7Bhz23E4cH1\nTZO5h3XFLIiIjlYHUVWSFgOUvA9rMRZsLhS/Dzuh+BhLP84ASwrfh52tjqEvEaFWx2Bmw0rRbcQq\nXJvNunMPq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmr\nmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkV\nyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZ\nmZkVyQmrmZmZmZmZFckJq5mZmZmZmRXJCauZmZmZmZkVyQlrA0nqkHRqP5b79yHe7gWStszT50o6\nJU/vLensfrx/vKSPD3CbHxtgmKsXHuPq5POj0PgqRdLvJX0oT3dKGtGIddetf+5Qrb+XbXauwHtW\nk/R9SXMk3Sjp+/1860qSLuxhfXtKmp0/7w2SJvQjhqmSNh9o7GZm9VrVvqm6vN8ezvV2p6Q1h2i9\n3s/W1pywNpGkHvd3RHxmiDd1G7BDnh4NbJKndwDmL+/NEbEgIv5zgNscaLL1MmXH+DKwcp4uMb7K\nkLQNcCNwcEnr7u18HCo9rP8k4JaI2CsidgOmd1tektTPda8LfA14T0R0AO8Bnutj22ZmDdPE9k07\nmBYRHfnxNxh8ne39bO3OjZomkHR37iH5N0nX1c2/QdJISTfm51Ml/UfufflqnreTpDslXSLpzn5u\ncj6wo6SRwFK6jvMOwP2S5kr6taQv5228V9L83FtzYP2dU0n3SLo4f4bxed6pkuZJ+vcc8yHAVvlu\n4X6S9pV0a37sm9/TKelsSbcBI4FXCo9xJWBEwfG9qZ9loQTvA84l9aqvWpspaT1JVyr1OJ6b531T\n0kGS3iTpOkkrSzqhbn9vm5frVOrpngU8ltf9Hkl3AG8jHbv1JF0v6a+SHpd0Yl7/9ZJ+DDydQ1m1\nt/VLuk25p1zSuyXdIeknwCp53uaSrs3vPzHPmyrpHODqbvthQkS82lMaEfPy8ifndV4DrKtUL8yT\nNKPuvW+RNCNvf2NSgj4W+EVe7jngfyUtkfQw8JhSXfJXSc9Kqk/ov6DX1jEfzZ/3dknvrPsM50m6\n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\nrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZmZmZmViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZmZmZm\nViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZmZmZmViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZm\nZmZmViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZmZmZmViQnrFYcSXtKmi2pU9INkia0OiZrLEkd\nkk6te37jINbVOSRBFSzvr4fzOdIpac0VWMckSZO7zZsqaXNJ+0s6qN1j7Lbe30v6UD+XHS/pHXn6\nNWXXugymDEg6WVLHEMZRX79MlbT5EKz3detZ0birEKMNnbpz44Z8bhzRz/d1ShrR6PjMSuNCb0WR\ntC7wNeCQiHhG0huBAV+0Ja0UEcuGPECzckyLiBPrZwxVuY+Iqwe7jqwKMSJpG+BG4GDgv+rm9xbr\neNL1886hiqGNva4M9KS0Ors+ntJiq6lCjNanaRFxoqTVgP+WtDAi7gQfT7Pu3MNqpTkQuDAingGI\niGcj4i5JkyX9Kj9qPRvHS7op98ZukufdLelC4EuSdpJ0p6RLJNUuAutJulLSHEnntupDWv9I2iYf\n41slHS1pVUnX1b1+g6RVJE3Jy3y7lfG2Sr7rfibw09z7N1fSryV9Ob8+SdIMSbPyQ3Xv3UjSTEkb\n1s2blM+5cfmcmyHpDkkbt2mM7wPOBVbPZaw+1tVyHTJb0nRJqwBTgC9Kuii/fztJV+WyOkrShrmO\nudH1TBdJ++bz9FZJ++Z59ft67bzffgns2OBwxvRSBqdLmgls3e168pq6qNvnalTcVYjRBikingfO\nBg7Ox+hnwCRJJ9Qd/23r3yPpSEnfydOvax+ZtRv3sFppNgTugVQhA8cC/wOsD+wBrAX8WNKngL0j\nYoKk3YATgGOAjYFdI+Lvkn4BHAL8L/BwXv+/AqdHxC2SzpC0S0Tc0sTPZwPzdeAo4HFSD9h04GGl\nIW4rAw8CAXwcmEBqiG3b86razsRc9v+Yn1+ey/VqQEdERG781JL4xyLic9L/Z+/Ow+Wqyrzvf38Q\nRiOEMQa4ABWbRl8hNKMyJExKg2BE2oHBxjYNwtMql60MgsiogA9PO9C0HVFRJlGQZkgYBHISBjFM\nQXlog/pCaAMN+GqAAG2A3O8fa1WyU9SZ6lSdWlXn97muc9XOrj3ctfZea+97r1UVfRfYNs/bBJgB\n/GNEPFXJEavGA1OAjwMfBr7ZYzECbB8RX5F0M7BvXayfAa6PiCslHQscmuMZFxEXKw2tXBoRH5R0\nCrAPcBOwX0S8JukySe+IiN8OM6ZeUT0H3gG8L8+/GbgtT9fK+gTg4oi4XNItbYoD4K9JCUKjc3Bx\nRHwUID/8qF1PrqfSFkm6qrLt6S2KuxtitPZ4CtiVdK+zb0S8LmntiPhavt6dQTq2kNq5nSLis0qj\n0g6mcn8ETBv98M3aywmrleZp0g0qEXGFpHtIPR/vAmZXltsS+FWevh/4Sp5eEBEv5el1IuIPkL6f\nludtA5wrKUg3ufPa9DmsNdaLiCcAJD1OuphfDnyMlLBeCWwILMzJwQOdCrQDlg+1VPrebu2zvxW4\nQNLawNakMgN4JL8uAibk6U8Dp0TEUwPs59GIWCZpEcMfnl98jPlm8N05WV0DeCy/VYt1G1IP6jHA\nmqRz7vm6zdTHvQHwb5ImkNqqTYCxmrBWz4E7a6NnJL1eWaZW1m8DbszTrR5uXY3jEkDArAbnYLUN\nqV5PGrVFNa2KuxtitPbYFPgF8OeIqNWNIyUdDiwjPZitOQmoPdh4G7AdK98fmfUcDwm20swiNdK1\nH+cYR2qo74uIqRExFdgPeILUSAPsSOppg9Sw17ygNDRvbVbcxC4APp+3tSNwXds+ibXCYqUhn6uR\nLszPAnOAPfLfHOCPwBaSVmXs9K42Ujv3jwXOi4gpwO9IN72w8g1Pbd7ZwDRJuw6w3Ubr9VKMhwDT\nI2L/iNgLmES6NtZiXQCcn9uMXUkP0F4lPTDpb/+HAf+R26u7m4ipV60iaR1J67By+dXK+nFWtOvt\nrsvn0fgcrF5DqtON2qKadsXdDTHaCElaEzgeuJ6Vj+dxwFTgH1m5Dfl74LI8UuVx3nh/ZNZz3MNq\nRYmI5ySdDlwnaRnwGnAuKSGZC7wO3BERZ+UhUvcAS0kNeL2zgBtIF/r/yvO+CszICfEy0jCpJ9r4\nkWzoDm+QlJwGXEG6uf3XiHgVQNKvSEMylwHLJP0AuIeUwI51M4ELJT1KqhsDWQocAVwt6fi2R7ZC\nSTEeCHy78u9HgRMr/54BfFfScaSbxpOBe4FLJP0/wDUNtnkH6TuZHpq3sjOA2nfQT2vw/sXANZI+\nAfylzbEM5xyEBm1RZXh6u+LuhhiteUdKeg/peM0AFte9Pw+Ym/+q5gNfB35EGh48s3p/RLr3Mesp\niojBlzJroTw0kPw0sJ37GZeHib4JuDUihvzf44xWjL2snWWo9CMtP42I+0a4nT4o9ziXHh+ApMUA\nETFhsGWtsS45zn1QdoylK72u+BiPXDeUYTfEaFbPQ4Ktl+0maQ5wJ+lppPUASWcCW4w0WTUzMzOz\n8nlIsPWsiJhD+uVQ6yER0WgooZmZmZn1IPewmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZyw\nmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRxnU6gG4j6Wjg\nsE7HMYhJ+fXpjkbRvykAkhZ3OpABjAd+3+kgulztOPd1OI6B7AwsLTjGbijDdaH4+vwM5baHUP55\nCN3Rbpd+nMcDSzodxAAmARMLPw99fzNybwb+Uvhx7gZXRMSMTgcxVriHdfgOAyZ3OohBvD3/mdnA\nlgKrdzoIa6vxwMROBzEIn4cj1w3HeQkpqS7VRFI5lsz3NyO3CrBGp4PocpMpv/Oqp7iHtTnzI2Jq\np4PoT+3JXskxls5PHkcuItTpGAZTO86l1pXS44PyYyw9PuiOGEvXDWXYJdeVJYWXoe9vRshlOHJd\nUpd7intYzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljN\nzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxI\nTljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzM\nzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljbQNI+kvokzZV0raQbJG0laX9JB/az\nzgRJhzg+kDRF0h05xtsl7TYa+zWz1pE0VdLCXI/7JK3bxDaOkjS9bt4lg7VXvSCX39mVf18iaath\nbuMkSZu2Proh77/pc0DS6ZKmtjG8ojU4/neNYFt9Q9jXQmA8ML6Zupq384b6WnlvS0mX1cclaVyT\n++obwjJtaYNaoRLb7Tm2jw9xvabLbLi6IUYbO3xCtZikjYDTgA9ExIuS/gr4NkBE3DzAqhOAQ4Cf\njfH4NgTOAA6OiBckvRkY1k1a3s4qEbGs5QGa2XBcGhGnVme0qm4O0l6NSdWyzdPndjomGpwDjbjN\n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\nwGGdjmMQk4FnOh2EtdUkYGLhdXkKgKTFnQ5kEM8AT3c6iH5MBuZ3OohB1I5zX4fj6M94YEmngxhE\n6fc33cBlOHLd0N70FPewWidMJF0YS7aEshOZyZSfDB5GirNk4yn/4YmNTDe0N92g9LoyH7ii00F0\nudKve2alcHszytzD2pvmAETE1A7H0VDtqV6p8XWDLnoyOr/k49wFPVrWGktKPg+7gdvtkYsIdTqG\ngXTJdaXo+xszaw/3sJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZ\nmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCa\nmZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmR\nnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywjjJJUyUtlNQn6W5J20j6\nhqRVJZ0uad+8zNmdjrVTJE2RdEcuo9sl7dbpmAbT6LgOcb1LJG3V7vg6TdI+uWzmSrpW0gYNlmm6\nLCQdJWn6WImzVM3Wg7zuNySt2uR+j5K0Q7fHV7fOSteBZs47SSdJ2nQ465j1R9IPJb0zT18k6cw8\nvbekC+qW/fYA23nDuSxpmqT12xG3mXW/cZ0OYIy6NCJOlfRe4NMR8TkASR0Oq/MkbQicARwcES9I\nejMw7ORA0ioRsazlAQ5speMKfG6U918kSRsBpwEfiIgXJf0VsHqHw3qDbomzCzRVDyLi+GZ3GBGX\nDGPx0uNrWrXdy9PnjsZ+bcy4D9gJeBRYB1g7z98JmFdbKJ97nxnmtqcBjwB/akGcZtZj3MPaWesA\nL+Sn/X54kBwAXBYRLwBExIsR8ZCk6ZLuzH9/AyDpxNxLcoekzfO8hyVdBpwgaRdJD0q6UtKD+f2N\nJF0vabaki9r0GWrH9a7aDEl9+fWHkubk/dfq3xck3SXpK22Kp9MOICUJLwJExGPAxvnY3SvpiOrC\ntZEGefoSSVvmHqqrJc2UdIuk43Iv6MWVVQ/K710nafVqb2be5lRJ75X0y1z+nyokznH5HJ2bX3ul\nLajVg10qPZqfhFQfJF0g6b7acai1g5L2z9P3S/pEfu90ST+SdFuuQ1/Ox+S0yvu10Sk3Sboh7298\nF8fXyITcfvxS0pfyto+SdJWkmcC2WrkNvETSVpI+JGmeUlt5QKNzrgWxWe+bB+wsaXVgKSvuIXcC\n1q47D+8CkHSwpAckzVDlmkjluqd0/d4fuFzSF0fx85hZl3DC2hlHSpoL/AD4SaeDKcwmwNMAkg7L\nF7SLgYOBPYEPAqdJeguwd0TsRuoVOzmvvxlwTO5Z+HJebzqweX7/JOBrEbEX8KKk97Qw9gGPq6TV\ngM0iYkqOvdYDfEtE7E5KmHrRJPIxrTgLOBzYA/hMLpvBLIqIA4GFwBoRsSewuVYMI3s2It4P3AMc\n0s82/hY4MR//7xcS54eAR/Ny/xf48BD2UbL6enAmqR7uDhyeb3YBLsvz/r5u/bkRMRXYFTimMv+h\niNiXdJweiYhd83brLY2Ig4BZwD5dGF99rH1KD7z2B/4CTI2IXYD9JK2Vl1scEQdGxHxWbgNrDgE+\nEhF7AzfR/zk3nNhs7JkPbJf/HgaelLQlsCUQrHwe1pxIunafAUyszF9+3YuIJ4GbgcMj4uvt/hBm\n1n165Ul+t6kNSZsIXDzo0mPL06SklYi4QtI9wEXAu4DZleW2BH6Vp+8Har2TCyLipTy9TkT8AUDS\nb/O8bYBzJQUwnsowphZoeFylNNY7Il7NvS+XAQslfTkv8kh+faWFsZRk+TGtWC8ingCQ9DiwceW9\nqExXx8nXyumpuun18vRD+XU+6Yn/fzXYzr8Bpyr1vH6rkDhfAx7M8+4HhvVdxwLV14PtgOvzexsC\nG+XpR3KdqB+6v4PSaIPVgHdW5jcq1yV64/dKa+8tAiZ0YXxviBVSLz7pPJslaW1ga1acjw9U1qm2\ngTXnkM77cXn67bzxnHtmmLHZGBMRS/Pl7L2k82Yj0oPWZ/IiDzRY7fV8Pr4k6Y+V+b1+3TOzFnLC\n2lkvkoalxWALjiGzgGsk/SQiniedowHcFxGHwvKeyg1IN5oAOwK/z9PVm8sXJG0CLGbF92AXkIYc\nP5C31Y46UDuukrQG6caSfON6ZUT8SNIMUrICvX/8ZwFXS/px/m7oVsD/5Cfzi4C3Ac9Wln8emJQT\n/XdV5kc/07VkcbvK6+9JN0LvzvPeTXrg8eeIOC6fF98rJM7XSAnDTNK5/Dt6Q60ePAQcGhEvSVot\nJ4HQ/3l/AmlUxCLgscr8wcp1KO91U3yNnAecFxF9eXhlbf1qu9fou/sLI2K60vd2Pw/cQeNzbiSx\n2djwMHAU8F3Sdfgs4Jr8XqNzb5X8gGUC6YFQTX39ehVo6kfNzKz3OWHtjCMl7Q6sCZwNfKHD8RQj\nIp6TdDpwXe7ZeA04F9giD+N7HbgjIs5S+h7iPaTv0tQP24N0Ib2BdDNW6237KjBD0rqki+t04IkW\nhV9/XCcBdwO35PffDFyfE9cXgF+3aL9Fy8f0LODGnNz9iTQ0+wrSDcq/VpIEgJ8B15J+hGPxMHa1\ngaRbgf8B/o70g0lflLQL6WYI4BhJh5B6188Dlg8J72Ccy4BD8/n9dI6rm9XXg2eBGyplOtiQ52uB\n60g90MMp116JbyAzgQslPUpq94bqdEm7ks77fya1S/XnXPG/xm5FmAfsEREvAy9L2jjP27if5c8H\n5pLqyzP9LAPpOnmRpJ9GxHdaGbCZdT9F9HrnTmvl7xKRv8NUpNJjHK34JI2LiNckvQm4NX/ftSeU\nfoyha2JcDBARRQ5/7JIy7IORx5iTpynR4otSq45xu+LrFt1wLtrItOMYV67DmwIz8vf7R7K9PvB5\naDbWuIfVetluSv9P3JtJP6xiZgXKvwz6m1KTwdLjMyvYoZKOBd4EfLbTwZhZd3LCaj0rIuYAUzod\nh5kNrPRfBi09PrNSRcSPgR93Og4z627+b23MzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljN\nzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEiKiE7H0FUk1Qps\nTkcDGdjOwFJgfqcD6ceU/Pp8R6MY3DPA050Ooh+lH2OAycAzEbF1pwPpTxfU58nA/IiY2ulA+tMF\nZej2pjW6oc3pBldExIxOB9FIpS6XXFfGA0so9zyclF9LrsvdwOXYGsW2N8M1rtMBWFssBVbvdBBd\nbnx+LbWx7IZjPH7wRWwQ84ErOh2EtV3p7Q10R5tTusn5tSduIDtkCenhTqnenl9LrsvdwOU4cj3V\n3jhhHaaIUKdjGIykPoCSe2VKV3oZlh4fgKTFnY5hCOZA2eVYutLbxC6pK33gGHtdrQwL5vZwhGrX\nPZfhyLgcR64L2pth8XdYzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3M\nzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhO\nWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzM\nrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljHCEk/lPTOPH2RpDPz\n9N6SLmiw/FGSpkvaUtJloxzrFEl3SOqTdLuk3UZz/71K0j65TOdKulbSDZK2GmD5yZI+1ey+gPHA\n+JHuS9I/NLH/Swban41NkqZKWpjrwd2SthnGut+QtGqT+z1K0g7NrNttJK0jaWYu43sl7TjI8m+R\ndEqe/ofK/D5J40Yh3oGujQ9IOrB6HZR0V7tjKtVw7iMkfXuA7byhfZY0TdL6LYy1VtdnS/q5pA36\nWe4N55mkkyRt2qpYuiHGZuvBKJZVcfENVh8k7d/uuCRtKOnH+Ry5S9LfjnSbpXLCOnbcB+yUp9cB\nNs/TOwHzOhJRA5I2BM4ApkXEVGAa8HIT2/G5XSFpI+A04KCI2BM4EVh9gOVXiYj5EfG9EexrSf4b\n6b6GnbAOl8+XMeXS3LZ8Efj0UFeKiOMj4vVmdhgRl0TEA82s24U+Afwsl/HuwIKBFo6I/46Ic/I/\n217XGxjo2nh+RMzsQEylGtJ9RG7TPzPMbU8DWpawZpdGxF7AD4GPD3WliDg3Iha1OJb+lBJjU/Vg\nFMuqxPgGrA8RcfMoxPVt4F9ze7s3sLgF2yySb9LGjnnAzpJWB5ay4tjvBDwmaY6kX0r6Un8bkPTN\nvNydkjbP86blp+izlXpG15J0pVIP6VWSVhtmnAcAl0XECwAR8WJEPKTU23tn/vubvO8TlXpJ7qjE\n83B+knWCpF0kPZjjeTC/v5Gk63O8Fw0ztm52AOnC+CJARDwGPA18IT+V+wosf/J9IXBzfvp7tqT1\n89O72ZK+NdR91f4xkn1JOhh4d563n6R98/l2r6R983b6JH07zzu6Ekf9/raSdGs+h0/Ny/w18A7g\n5mYL1rrWOsALuZ2o9bh+EpafUxdIuk+55z/PG5efmvdJul/SJ/J7p0v6kaTb8lP3L+fz8bTK+/vm\n8/wmpREHd0sa37FP3z4vA++RtGFEvAZskNvtqyXNl/TxXA/vkvQm5d6H+rqet3Ve9Ri0yUDXxrUl\nTW/jvrvNYGV1laSZwLZa0ZN0sFIP2Ayt3Du9vH3O1+/9gcslfbENcU/Isbzh+pH9S/X6ka9NWymN\njLhG0qz8pzbEVkqMTdWDShyTVXcfmWO7WmnExS2SjlMa4XVxfv9DkuYp3cMd0IXxDRTTvLz9lsdV\n2caqwKSIuBMgIpZGxC8GKceu5YR17JgPbJf/HgaelLQlsCXwG2BqROwC7CdprX62cXJETCH1gB6j\n1Ct1CrBXfkJ4JzAduD4i9gb6gEOHGecmpOQGSYflC9rFwMHAnsAHgdMkvQXYOyJ2I/XmnZzX3ww4\nJiLOBb6c15vOiidfJwFfy/G+KOk9w4yvW00il2udWyJid1KSWXN3RLyv8u/tgb5cZp8bzX1FxPXA\nryNiakT8HDgdeF/+O7Oy3o+B3YCj8sWj0f7OAT6Vz+F3Sdosz3++LgbrbUdKmgv8APgJ6Tw6mNQb\neHjl/Lksz/v7uvXn5qfZuwLHVOY/FBH7ks7/RyJi17zdeksj4iBgFrBPaz5SUS4FngRmS7oNeAvp\n6wEfAc4HPpbr2yzg/bWVGtR16P8YtNJA18Zo43670WBltTgiDoyI+ZV1TiRdu88AJlbmL2+fI+JJ\n0kPDwyPi6y2M90hJ9wPHkc7L0xn69aPmDxFxALAI2LaFsZUW40jrwQIa30cuiogDgYXAGnmE1+ZK\nw78PAT6S7xdv6sL4+o0pIh4fQkzNxlWzEfDcEPfT9ZywjhERsTRPvhe4P/8dADwDvBWYJWkOsA2w\ncT+bOUHSncDZpMRyI2BhRLyS97Esr3+8pD7STUZ/2+rP03nbRMQVwBH539sBs4GfkZ5Ebgn8Kq9z\nP1D7PsyCiHgpT68TEX/I//5tnrcNcG6Ob5/avsaA5eVa55H8+kplXv3QxbnAKpIuJx2PTu4rIuKF\n3ANfHZ75UB6uuZAV51z9/rYGLs3Hfhug9v2RFwf+ONZjLs0X/8nAV0lty/Wk9uUtpHYNUtL5F2BZ\n3fo75ETsduCdlfm18+2pyvQSvfF7r7X3FpF7VXpJRLwaEWdGxLuB7wHHA4/m60O1bJ4C1htkc/0d\ng1bGO9C10SqGUFaNhr2/HhEv5eGPf6zMb3Q9aLVLI2JHUk/Y5gzv+lEfZ7vqaxExtqAe9Hcf2ahd\nrNX9c4BTJV3Cinu4romvRW1HM3HVPMeK61XPc8I6tjwMHAU8RLqwHEsag38scF7uefod8IYhJUo/\nBjA1IvYg9VyKVFk2l7RmXmYV0tOi8/NT8l2B4Q67nUV64rhu/vc40tOz+/I2pwL7AU+QbjQBdgR+\nn6erNzYvSNpE0tpUElrg83lbOwLXDTO+bjULOELSmyENjyX1BDV6Mll/c7hqRJwWEYcD/zzUfdX+\n0YJ9VddbRelHXdYBqonAdjkx2AJ4tsF6kI79x/M5tAPp3Lex60XSsOCHgAPzebF95XtF/T21P4E0\namNfVv6+UPQzXd+eDvRe15O0hVZ8FeRZ0n1GM2XT6N/t0t+10d5ooLJq9GBhFUlrS9oE2LAyv/7Y\nvsrKbXorfQ34EsO7fjSKs531tYQYR1IP+ruPHKjuL4yI6cAM4PNdGt9I245m4koz0wOMpyXtASBp\nNUm7DmPfXaXtv8BnRZkH7BERLwMvS9o4z1sGXCjpUdI4/Eb+TOotuIPcsxkRyyR9DZgj6SXSkJ8Z\nwHclHUeqWCcDvxxqgBHxnKTTgeskLQNeA84FtsjD+F4H7oiIs5S+53hPjrnRkLGzgBtIjcB/5Xlf\nBWbkhHgZ6cbziaHG161yuZ4F3ChJwJ/o/1jX21nSV4HVgNuGsa/a90L/9wj3NU/SfwAXkM6x2nDB\n0yrr/R3wDeAHEbFUjb/GcwrwfUlrkG6OPjzEmKy3HClpd2BN0miRZ4EbKvVisPPiWtKDrvn08A9c\njMBk4CeSXiHVszMY+o9bVev6aOrv2jjcEUJjwXDL6nzSyJn5DNzzdAtwkaSfRsR3WhlwRCxQ+jHA\nf6f560dbFRLjSOrBTAa/j6x3ek6wxjO0h+ElxtdfTEPVTFxVn8nrn0XK6c7OX5lr5/f+O0IR/opG\nr8lDHsk9BmOWpHER8ZqkNwG35u+7DnXdPii3DEuPD0DSYoCIaOuwx1wW+0b6gZdm1i26HG1kWnWM\n8wOzKdGGi2Y3nIfdEGPpSi/DdsRXuQ5vCszI38vrWaN13et1LseRK729GS73sFov203p/8V6Myv/\neIGZ2ZAp/XLpb9qRrJr1uEMlHQu8Cfhsp4Mxs+7khNV6VkTMAaZ0Og5rr155emjlavEvl5qNGRHx\nY9Iv3JqZNc0/umRmZmZmZmZFcsJqZmZmZmZmRXLCamZmZmZmZkVywmpmZmZmZmZFcsJqZmZmZmZm\nRXLCamZmZmZmZkVywmpmZmZmZmZF8v/DOkySjgYO63Qcg5gCIGlxpwMZwDPA050OYgCTgfmdDqLL\nrQsgqa/DcQxkZ2Bp4TGWblJ+LbU+Tya1NyWbBEws/DysXVf6OhxHfyYBEzsdxCDGA0sKLsNuuHeA\nsu8fuuG61w11pfRy7IYyHA/8vtNBtIp7WIfvMNINkDVvPOVX9PnAFZ0OwtpuKbB6p4Pocm/Pf6Xq\nhvZmIilOa143lOESyn94UrpuqM+l64a6UjqX4ShzD2tz5kfE1E4H0a1qT8xchj1vDpR9nH0ujlyt\nN6bUMuyC3qKaJaWWIZRfV0qPrxtU6vKETsfSHx/nkeuGMiw9xtLjg6J7p5viHlYzMzMzMzMrkhNW\nMzMzMzMzK5ITVjMzMzMzMyuSE1YzMzMzMzMrkhNWMzMzMzMzK5ITVjMzMzMzMyuSE1YzMzMzMzMr\nkhNWMzMzMzMzK5ITVjMzMzMzMyuSE1YzMzMzMzMrkhNWMzMzMzMzK5ITVjMzMzMzMyuSE1YzMzMz\nMzMrkhNWMzMzMzMzK5ITVjMzMzMzMyuSE1YzMzMzMzMrkhNWMzMzMzMzK5ITVjMzMzMzMyuSE1Yz\nMzMzMzMrkhNWMzMzMzMzK5IT1jaQtI6kmZL6JN0raUdJl3U4ph9KemeevkjSmXl6b0kXNFj+KEnT\nJW3Z6dhteCRNlXR25d+XSNqqmXXHEknr5jrbJ+n5/PqDTsc1VCM57qOl0zGOxv5rbWcrt1m3/eKP\nczcZ5Nr4gKQDq9dBSXd1KJYL6pb99gDbecM5IWmapPV7OT5rXrP1QNJJkjbtXOTlcVm2hxPW9vgE\n8LOImArsDvyls+EAcB+wU55eB9g8T+8EzOtIRGYFiYjnI2Jqrre/ztOfBFDW2QhbT9IqjaZLUkKM\nJcQwEt0ef5sNdG08PyJmFhLL8uu0pFUi4jPD3PY0YKQJYenxWfOaqgcRcW5ELBqF+LqJy7INfOFq\nj5eB90jaMCJeA14EtpB0TX66spmk1STdLmlunr+qpP8l6SBJ75D0p3yPfIaknfMTye9IukvSV5qI\naR6ws6TVgaWsOPY7AY9JmiPpl5K+1N8GJH0zL3enpM3zvGlKvcizJU2RtJakKyXdIekqSas1Eau1\n3umS9oXlT7e3lLRBPm6zJF0naWpedgdJN0i6W9L4fB7+Wz6mMyWtJ+m9+XyZLelTnftY7SXpbEnf\nA24FDpV0ep4/XdIRefpMpd7Y2yVtLmmrXE+uljRf0mGSbs31Zm1Ja1Tq/k8lrVJZ59rcRmzSoo8w\nob5uK/UAXiVpJrCtpIfzk94vS/p55bPfPkr1t+MxSprcjhgkfSsf5xuVevC3zOfB8mvBSGPPOl6G\nXWyga+PaamNveROxVI9nrVfm4HwuzdDKvb9fUL5fULpe7w9cLumLPRyfNa+pepvR+74AACAASURB\nVKDcWz5AG3q10n3DLZKOy+3hxfn9D0map3RvccAofMbRMuplORY4YW2PS4EngdmSbgPeAowH/g74\nP8CHgdeAD0TEnsB/AnsD9wDvBXYjPaF5J7A98FDe7i0RsTvQTMWeD2yX/x4GnpS0JbAl8BtgakTs\nAuwnaa1+tnFyREwBzgCOUXpSfwqwV0TsBdwJTAeuj4i9gT7g0CZitZE7Unl4K+lGoJHpwL9HxAHA\n6pX5SyPiIGAWsA/wAeDJfEwvBD4N/C1wYj7u32/TZyjFbyJiP+DP9W9I2h7YIPfKHg+cmN9am0p9\nj4j3AT8H9gVeBQ7Mdf/3wJTKOocA3wI+1GSs9cf9LzSu24sj4sCImA9sBhwTEWcAC/MFc2vg9xHx\napNxlBxjo7qxoNUxSNoJeFM+zj8m1Rt447WgGZ0uw14y0LUxCoulejxrTgT2JF2XJ1bmL79fiIgn\ngZuBwyPi6z0cnzVvpPWgvzZ0UUQcCCwE1sjt4eZKw78PAT6S7y1uauFn6bROlGXPG9fpAHpRvvif\nCZwp6eOkG9lHI2KZpEXAVsCbgBlK49UnAr8F7gDOAtYl3czsAawSEa8qjUZ8JO/ilSZiWpq38V7g\nfmAjUuL7DPBW4AJJawNbAxv3s5kTJO0DrEZKsjcCFkbEK3kfyyRtQ+qhOwZYE7hyuLFaS1waEadC\nemoHPF55rza09a3ADXm6eoNRO88WARNI5+fHJL2f1Gb8AvgX4NT8pPBb9Paw8gfya/VCUyvDbYB9\ncuIA8If8+mhEhKSnWFGeTwHrsaLub0J6mPVr4L8q6ywCdmky1vrjLmBWg7r9QGWdBRHxUp6+HPgY\nsCrtq7udjrF+/9B/GziSGN4OPJin72fFg4n6a0EzOl2GPWOQa2NpsTzQYLXX83F9SdIfK/Obvl/o\n1viseS2oB/21odXrX/218BzSfcS4PP3bEX6MInSoLP808sjL5h7WNpC0hVYMsXqWVM71N7vvBx7L\nPZbXAIqI14FlpCShD/gk6Wa2ZqRPex8GjiL12D4AHEvqyT0WOC/H8jtW3IxXP9MGpCc+ewBfzss8\nR3q6s2ZeZhXSk6Hz8/f/dgUuGmHM1hovAZOUWtF35XmPA+/O09tWlq0/VxcAP8rHdHfgS8CfI+I4\n4ATSk/Netiy/Pg9MytO1clsA3FT57usn8/xqGdaX5wHA/8317T9YUd8aJcQjdR6N6/ayyjLV6Tmk\nB2V75OnRUEKM/bWBI4nh98AOeXrH/G8Yu8e5ZP1dG0uLZVmD5VdR+qrBJsCGlfn19wuvkh5Q9Hp8\n1ryR1IP+2tCBroULI2I6MAP4fPNhF2m0y7LnuYe1PSYDP5H0CqkRPoMVw8FqfgmcImlH0o1w7cnS\nQ8CEiPiLpNdIw4RbZR6wR0S8DLwsaeM8bxlwoaRHSePtG/kzsETSHcCvYHmP6teAOZJeIn3OGcB3\nJR1HqkQn589qnTWP1Cs6DVic510MXCPpk8DrpHO10XfZrge+lY89wDeAt0k6hDS88bx2Bl6Qh4At\nJd1EHh4cEbVf/JtNuoBczuAJwL3ASZJ2AZaw8kOpVpvJ4HV7uVynfwWMi4hGN5/tUEKMrYxBpF6l\n+/L3ju4k/Y7BYaSHke1QQhl2s/6ujf2NNioplvOBuaRRMgP14NwCXCTppxHxnR6Oz5o3knowrDYo\nO13SrqT7iH9uJuCCjXZZ9jxFjPZXNLpbbehf7k2xJrgMR64VZZh7xGs3rzOBo1v5C3XdcJy7IcbR\nJul84KcRMaSnwZIWA0REu5KxRvsccoztiq+/GCR9Gbg/Iob8nazSyzAv3wfl1pXS42sXSeMi4rX8\n9aIZ+TtuzW6r5edhK+PL2+uDsXecW6kbyrD0GEuPD7ojxuFwD6vZ2DUemKn0S3a3tTJZte6k9P/F\nbTHUJKYTSoixvxgkfY70X5md35HAhqiEMrSWOVTSsaTvxn+208E0UHp8ZtYFnLCajVER8QLpO2xm\nAETEaZ2OYTAlxNhfDBHxTeCboxzOsJVQhtYaEfFj0q9QF6n0+MysO/hHl8zMzMzMzKxITljNzMzM\nzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljNzMzMzMysSE5YzczMzMzMrEhOWM3MzMzMzKxITljN\nzMzMzMysSOM6HUAXmgIgqa/DcQxkEjCx00EMYDywpAvKEODpjkbRv9p5uLjTgQzgzcBfCj/O3VCf\nSzceWNLpIAawLhR/jEsvw27QDW0iwDOUe13xeThCko4GDut0HIOYTDoPzbqGe1h700TShadUSyi/\nsXx7/rPmrQKs0ekgrO26oT6XzmU4Noyn7IfJPg9H7jBSQliy0s9DszdwD+swRYQ6HcNgaj0JETG1\ns5F0r9pTepdh87qhDF1XRq7wnkuAOVD2Me6CMuwGXXOcS43R52HLzC/1GENXjEIwewP3sJqZmZmZ\nmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZ\nmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGc\nsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywmpmZmZmZ\nWZGcsJqZmZmZmVmRnLCamZmZmZlZkZywjhGSfijpnXn6Ikln5um9JV3QYPmjJE2XtKWky0Y51n0k\n9UmaK+laSTdI2mqY25gq6ewm9rWBpEsYZt0Y6v4arHeUpAU5hj5JOw93G4PFIumSoZZfs59juLoh\nRmuNfLwWVs7xH0hatZ9lT5e0b928oyQdNSrBFk7SOpJm5nK8V9KOkg4ZYHnXFQa9/j0g6cDqtU7S\nXfn1JEmbdi7y8jRbltbYCK+FR0ma3r7olu+n+BhL1ajN7me5iyXdJWk3SZ8a7Ti7wbhOB2Cj5j5g\nJ+BRYB1g7Tx/J2Bep4KqJ2kj4DTgAxHxoqS/Ar49zG0MKdnsZ1+rNxHzSB/8fD0iLh7hNsxKdmlE\nnNrOHUhaJSKWtXMfBfgE8LOI+J6kccA2wCHAzzobVvEGuv6dHxEzJW1Zv1JEnDtaAXaRpspyqMZI\nPbaxo77NXquf5baOiN3z9N3VN1wnEvewjh3zgJ0lrQ4sZcWx3wl4TNIcSb+U9KX+NiDpm3m5OyVt\nnudNy0+NZkuaImktSVdKukPSVZJWG2acB5Bubl8EiIjHgKeBL+SnT1/J+/1kfmJ1v6T35XmXSLoQ\nuLku7uk55jsl/Y2k9SX1AXOBV6v7ioin82prAONbub9cRt8arACUepTXzdMXSNp5gP1/p65cvkpK\n8I+QtElls8t7rvJ6Wyr1Js+WNEvSdZKm5mV3yDHcLWm8kn/Lx3SmpPUkvTefL7Nb+DSwG2K0Ecrn\n8ThJG0m6Ph+fi+qWWT0f75uBgyvzT8vr35HPjy3z+lcDR43yR+mEl4H3SNowIl4DPg7sl8vko5L+\nCUDSZEkrPegbabvU5Qa6/q2tfnqAcju0VS7POapcI5V6jq7O7c0tko5TGqnT6w8fh1uW43I53i/p\n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\ni/M7HcsAroiIGZ0Ooj9d0N7sDCyl7GM8Jb+WWoZQfjlOBp6JiK07HUh/uqC98Xk4ct1wHpbeZkP5\nx7lWV57vaBQDGw/8vuRzcTjGdToAG5MmkirSkk4HYm21BHim00EMonYulmpyfi02Ye0CS4HVOx1E\nDyi9HEuuxzWltzfdwOfh2FD6cbZR5oS1B0WEOh3DQCT1AUTE1M5G0r9uiLF0tTLsAktKPc7dUIZu\nb0bOMY6cpMWdjmGIim9vSo0Pyo+xS87DOVBuGUL5x7kbdMP9w3D4O6xmZmZmZmZWJCesZmZmZmZm\nViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZmZmZmViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZm\nZmZmViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZmZmZmViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCes\nZmZmZmZmViQnrGZmZmZmZlYkJ6xmZmZmZmZWJCesZmZmZmZmViQnrGZmZmZmZlYkJ6xmZmZmZmZW\nJCesZmZmZmZmViQnrFYkSftI6pM0V9K1km6QtNUwtzFV0tl5+tvtidRapcEx32CQ5Zcf39HSDTFa\na0j6raSP5ek+SeMknS5p307HVqp8vi/M5XWdpDUr771F0imdjC/HUXSMpcfXTap1uFTdEKM1R9IU\nSXfkuny7pN1auO1pktZv1fa6gRNWK46kjYDTgIMiYk/gRGD1YW5jpXM7Ij7Tugit1YZ7zOuP72jo\nhhitNSRtB9wFHNTpWLrQpRExFbgHOBRAkoBnIuKcTgZWUXqMpcdXvOHU4U611d0QozVH0obAGcC0\nXJenAS8Pss5wjvE0wAmrWYcdQLpgvwgQEY8BTwNfkHSXpK8ASPpkfnJ1v6T35XmXSLoQuLm6QUl3\n5ddd8jp3S/rkaH4oG1CjY77/UI6vpI9K+qc8PbmNvendEKO1xiHARcDaktaof1PJv+Wn5zMlrZd7\nxm7Ko0HuljR+9MMuynzgYkk/AG4BdpR0GYCkeyV9V9J8SfvnedPy/Nm5Z2ItSVfmMr5K0mpjMMbS\n4yvZSnVY0smS5kj6paTtYfnIifOBH0laV9KNSqNnvpXfP0rSNZJm5T+NwRitOQcAl0XECwAR8WJE\nPCTpJ/kY3yppHQBJD+d6fUK+f/iOVr7X3SovP0fSqZI2B/YHLpf0xU59wNHmhNVKNImUoNa7JSJ2\n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\n", "text/plain": [ - "" + "[('Bill', 'Clinton'),\n", + " ('Kristen', 'Stewart'),\n", + " ('James Earl', 'Ray'),\n", + " ('Barry', 'White'),\n", + " ('Kevin', 'Costner'),\n", + " ('Grace', 'Lee'),\n", + " ('Carly', 'Hughes'),\n", + " ('Ma', 'Bell'),\n", + " ('Chris', 'Cooper')]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "random.sample(tiles1970, 9)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Approximate and Partial Matches\n", + "\n", + "The halves of two tiles match if they are an exact match, like \"Amy\" and \"Amy\", but also if they are an **approximate match**, like \"Amy\" and \"Aimee\". You can manually define allowable approximate matches like this:\n", + "\n", + " synsets = synonyms(\"Amy=Aimee, ...\")\n", + "\n", + "The idea is that this creates *synonym sets*, or `synsets`.\n", + "Another issue is a **partial match**: \"John Smith\" is allowed to match \"Long John Silver\"\n", + "because the first name \"John\" is a piece of the first name \"Long John\". In the 1970 comic, this was drawn with one domino touching the middle of another; I won't do that, but I will allow, for first names that have multiple parts, for another tile to match any one of the parts. The second argument to `synsets`, is a list of tiles; `synonyms` will go through these and add synset entries for paets of first names. \n", + "\n", + "I also update `legal_match` to consult the `synsets` global variable for an approximate or partial match, and to handle a special case: a single names like \"Prince\" gets represented as the tile `('', 'Prince')`, but we don't want the empty first name of this tile to match the empty first name of \"Drake\", so we disallow an empty-to-empty match." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import collections\n", + "\n", + "def synonyms(text, tiles=()): \n", + " \"synonyms('a=A, b=B') => dict(a={'a', 'A'}, A={'a', 'A'}, b={'b', 'B'}, B={'b', 'B'}\"\n", + " synsets = collections.defaultdict(set)\n", + " # Process `text`\n", + " for text1 in text.split(','):\n", + " synset = set(text1.strip().split('='))\n", + " for s in synset:\n", + " synsets[s] |= synset\n", + " # Process `tiles`\n", + " for (first, last) in tiles:\n", + " if ' ' in first:\n", + " for piece in first.split():\n", + " synsets[piece].add(first)\n", + " synsets[first].add(piece)\n", + " return synsets\n", + "\n", + "def legal(value, loc, board):\n", + " \"Is it legal to place this value on this location on board?\"\n", + " return (board.get(loc) is empty and\n", + " all(legal_match(value, board.get(nbr)) for nbr in neighbors(loc)))\n", + "\n", + "def legal_match(value, nbrval):\n", + " \"Does this value match the neighbor's value?\"\n", + " return (nbrval in (empty, border) or \n", + " nbrval == value != '' or\n", + " nbrval in synsets[value])" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "synsets = synonyms(\"\"\"\n", + " Amy=Aimee, Cook=Cooke=Cookie=Cokie, Alastair=Alistair, Columbo=Columbus, \n", + " Safire=Sapphire=Garnet, Garnet=Ruby, Charlie=Charles, Sean=Shawn, \n", + " Jimmy=James, Man=Mann, Jack=John, Tom=Tommy, Will=William=Williams, \n", + " Robert=Roberts=Bob, Cam=Cameron, Oliver=Olivia, Edward=Edwards, \n", + " Rich=Richard, Chris=Christopher=Topher, Fat=Fats=Fatty\n", + " \"\"\", tiles1970)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Random Restart\n", + "\n", + "The program sometimes gets stuck before it has placed enough tiles. I could modify the program to *back up* in this case, but it will be easier to just *give up* and restart with an empty board. I can restart multiple times, and take the board on which the most tiles were placed. The function `restart_dominoes` does this." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "def restart_dominoes(tiles, width=16, height=24, repeat=50):\n", + " return max((dominoes(tiles, width, height) for _ in range(repeat)), \n", + " key=lambda board: len(board.boxes))" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA6IAAAU7CAYAAAAzQRg2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xu4JFV97//3Ry5GMwEEgaAGx8tzEvUIg4gabwwXDYi3\n4AXlomMkGDXGnGMMQQwSNfJTYzRRQdFEdBCDCXrEwEGEYbgZRYxjNOSgEoEEEDhJUPFyQPj+/qi1\nmWaz91zYvav3rv1+PU8/u2ZVdfd3dVWtWt+1qntSVUiSJEmS1Jf7TDoASZIkSdLSYiIqSZIkSeqV\niagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6\nZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKk\nXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIk\nqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIk\nSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIk\nSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIk\nSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagk\nSZIkqVcmopIkSZKkXm056QCkDUlyFHDopOPQPZxWVSdPOoi58vhasHZpf2+YaBQa5T5ZuAbRHkta\nepwR1UJ3KLBi0kHoblYwnOTN42thekR7aOFwnyxMQ2qPJS0xzohqMVhXVSsnHYQ6SdZOOoYx8/ha\nYJLcAuB+WTjcJwvTANtjSUuIM6KSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmS\npF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmS\nJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmS\n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\nIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRe\nbTnpABaSJEcBh046Dt3N3gBJ1k44jnHYBdh50kGMwTLg1oHsE4+vhWlbGMx+GQr3ycK0Alg36SDm\nyv7XgrVL+3vDRKPQdKdV1cmTDmIcnBG9u0PpGnVpPuxMl8QtdrcCN046CN3DUI4vSZtuHXDapIMY\nA/tfC9Mj2kMLxwoGNGjjjOg9rauqlZMOQp2p0fch7JMh1WUohrRPrIukRc7+1wKT5BawLV5IhnZX\nijOikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ\n6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJ\nknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJ\nkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJ\nkiSpVyaiY5JkvyRrk1yU5LNJdtjE552S5JHzHd+mSvKdJC9py2uTbJlkVZI9Z9h2uyQHb+T13j9f\nsS5VSVYm+XmSndq/90pSSZZPNrKNS/LxJI9uyycmeWtb3jfJfyQ5ctr2ByQ5aFOONW26dgxdk+SC\nJF+crb2aagM287WXJ9l3PJFK0uySbJPkrNZWfTnJU5McO+m45mpz+5StTX97X/FtjsVYl+kxbE5f\nfSHEv5hsVgdDM0uyI3Ac8Oyq+lGS/wZsPeGwNluS3YFLgOcAfzNVXlWnzPKU7YCDgc/M9ppV9bpp\n73GfqrpzzsFqHfA84CPAbwKXTzacTfZVYC/gCmAb4P6tfC/gXdM3rqpzoEtu2Mixps22uqrenORw\n4KXAB+b6gknuAywH9gXWzPX1JGkjXgZ8pqr+qg2a3a+qLpl0UHOxuX3K1u4uSEOqi+aHO3w8nkXX\nqfsRQFV9G9gpyaVthO5w6BK96WVTkuyT5JNJtkry7DZy9KUkB/RYj4OBE4H7J7nvSGzHJ9k/yZOT\nfKXNorwSOAp4Rhvp2jHJp5NcmOTcJNu0517S/q5N8i7gEz3WZ8jWAPu15ccA/wzcL8mnkqxJcno7\n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\nSR4G3Bd4xXwFuxFrgKOTvIbuunnM1IqqWpfk+21GtIBPAedOJMoFLlW18a20qLQDn3b7QN/vfRrw\nhqq6YUyvtxYmU5dxm6+6pPu1QqrqziRnAUdV1UydhHG93y3t/cZ6W0nf9WjvOZi6jEuSI4BlVXXS\nBGNYC4v/vJ90PcbZHk+6LprZUPbLUOoxNO6XhWdo+8QZUY1Nu1f/pnElodpky4Cz2gjjeYsl4ZnB\nUOoBi7QuSQ6hmw15waRj0dzYHkuSFjoTUY1NVR016RiWoqr6IfC0SccxV0OpByzeulTV6cDpk45D\nc2d7LEla6PzVXEmSJElSr0xEJUmSJEm9MhGVJEmSJPXKRFSSJEmS1CsTUUmSJElSr0xEJUmSJEm9\nMhGVJEmSJPXKRFSSJEmS1CsTUUmSJElSr0xEJUmSJEm92nLSASwkSY4CDp10HGOwN0CSWyYdyBgs\nA25NsnbSgYzB1H5ZO+E45moZcOukgxiTbWEQ+2RongDcNoD9MrS2+KpJB6F7GMp1ZQWwbtJB6B6G\ncnztAuw86SDGZFBtsTOid3coXWOoheNW4MZJB6G7cZ9ovt0GbD3pICT1Zh1w2qSD0GDtTJfAaYFx\nRvSe1lXVykkHMRdTo+9Vtd2kY9F6UyOKAzi+1k46hjG6EBb/PhmaoZwrQzKw834wqiqTjkHDNZTj\na0jXlKG1xc6ISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqV\niagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6\nZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKk\nXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIk\nqVcmovMkycok1yS5IMkXk+ww6ZjurcVYl5GY1yb5XJJf2Mj2y5Oc2ld8i1WS/YAVwIokn02yQ5JT\nkjxyM19nZZK334v3X5XkyrZf1yZ5wua+hoavHV8/T7JT+/deSSrJ8slGtnmSfCfJS9ry+5JsMemY\nJGmpmd5nma3f0/ooR/Yb3eJmIjq/VlfVPsDHgZdOOpg5Wox1WV1VK4EvAS+cbaMkAbK5L55kSZ0/\n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\npUhaR46ISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagk\nSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIq\nSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmI\nSpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcm\nohsoycIkNya5KMm/JHnIOnzu+OlaTqsa2S+Lk3wuyQPuZ/ldk5zWV3xrK8mBrQxLkvxTks8n2W0d\n13FvHUryoZmJ9H5jmNZyzFbr2x7MNgMrxz1Jdmiv905SSXYdb2Saqya3Q0lOXde2bDaYC+2pNNts\nyPGfZEGSx89cdHOTiej0WFRVTwc+CRwy7mB0r0VVtRD4CvCS1S2UJEDWdeVJZvT4SbI9cAzwvKra\nD3gzsNk6rmOVGKvqT6cvwrWOYdrLMcsNpT0YSjmWAS9o0y8CrhpjLBIw59o0SRtuAWAiOokN4fTa\nFiDJUUkuTnJFkj3bvH2TXNZGhV7alt+rjQxdlmSrdD6a5MIk5yZ50NhKMizLgJ3bd39VkpcDJDk2\nyd8BXwS2a/M2TXJ6kv2TbJHkjLY/zmzvHdGmzwV+b4bjPpguGbgDoKpuAG4G3pDk0iRvazG/YqRs\nz2zzTk3yYeD80RUmubT9+8T2mcuSvGIOluPIJJe0v8cneXD77EVJPjjD5VlbU7YHSXZKcmZ7b5Mk\nF443zPs118txIXBgm34s8C1g25GyvAWgHdtnJzmv/a3zxSnNW6s7V6xSnyadP96Y5H/CvSMl47pb\n5ax2LHwpydZt3jeSnNb+PaT1R65OsnN7fy60v1Jfjk3yDLi3z7Lras4nr6Y77j813nBnFxPR6XF4\nkquA1wGLgA9U1f7AYcAb2jLvBl7QRuj+oc27q6qeB5xH11F6LvCjqjoA+DDwJ/0VYdD2o/teFwJP\nAl4z8t4NVfVM4FZgU+BU4OSquhg4Ejin7Y/FrBxVva2qnlNVy2Y47p3oErbJvlhVT6VL8ADObGU7\nkJX1DeCyVrapHAc8H3gqcFiSdRqhXEfTWo4k29HFvh/dSNcxwJ7A4jaC9/ppL8G6WWN7UFU3Aw9M\n8lt0Zf3y+EJdo6GU4y7gV0meBHy7zfs1sLCqnggclGSLNv8nVXUwcBMzf6FJc9fhLfFaDDwbWMjU\n54qp6tNtVfUc4IOsbPteCpzRT+j3cUQ7rs9qcQDsQHf+ew3wRuB5wInAH8yB9leaaZOP/9WZfPyf\nDLy3qg7rIcY5Y5NxBzAQi6rq6CSnArsAT0lyGLACqLZMqurfAapqRbvY/s323k10ow47An+Y5Fl0\n++ar/RVhkA5Psi9wHXBTki/TJZuPGVnm6pHp/eiSo8Xt9e50o9avAR5A11H4+aTPzKSbgYdNMX+i\n3vyy/fusJK+nu714h5Hl1hTnHsA5bXo7YHu6ejgTprscj6KL/6KReUuA/duVxvPpEqdxWZv24DN0\nnbgDgNn6nNZQygHdxb6P0V2Rfh1dHTsvyQOBR7Oyvk1uk6WpLKqqo6EbAQH+G/CQKc4VU9WnqwGq\n6pdJfpZkF+CJwFv6C/9eGwPvTfI4YGvgn9r871XVr5L8FPh267P8lO6cONvbX2mmTT7+fzDy3uid\nNJ5P1oKJ6PR6N3AsXaKzJ/DbwMfbe5XkIVX1H1n5bEiNfDbA9cDfV9WJ0N0mCuzbR+ADNdpYfJ7u\nCu9NwA0jy6wYmb4A+FGSP62qD9Htjwuq6uy2jk3pRoNGPzOTzgP+Mcmnq+qOdA/E78Sq9QbgKGB/\nYHPgspH5a4rzGuAlVfWLJJtW1d3TGfgk012OHwBXVtVL4N79snFVHdNeL2N2dITW1B6cDXwK2LSq\n/nUs0a29IZTjPOBZwJXt9QnACVW1ON3t6hOdh8ltsrQ2vkg3+jH5XDFVfRptz06nG2lcWlWT28M+\nLABuqar9krwKeHibPxrL5DLMlfZX6ssvgJ3a7bePHZk/+di5m65/oxEmotOoqq5P98MsS+muEC4Z\nefso4PNJfk13Zf6WKVZxDvDBkWet3g/cPoMhzyf/BHyO7nnR21a3UFUdk+SkJH9IdxvFx5NMjKAc\n1UukK2O5Nck7gC+0Bu4/6W4znOwLdHVtKWso2yRvo6uPE+t98TSEPKXpLkdb37lJlgC/oXsG8OIk\n76Ib8Z4Vt4iuqT2oqtuT/IpZEuuaDKEcVbUceCVAuxvlXODDSa5j6roorYsLgTevx7niAuDvGc/d\nBKG7W+iJSc4Hfsxa3BUzV9pfqUdLgb8BXsia+2CXA6cm+d1x/HDkbJXxXISbndr93rTn1OasoZQD\nhlWWoUhyG0BVeavJBkhyOvDn7VnL6VjfWPbLdJdjSGy/ZqfZsl+SbAycX1UHjWHbhwNbVdVH+972\nVEk2PMIAACAASURBVGbLPtEwDal+Daks4I8VSVLvkpwM/GyuJ29DKYfUtyQPphs9/NsxbPuldM9L\nn933tiVplLfmSlLPqurV445hOgylHFLfquo/gaePadtnAmeOY9uSNMoRUUmSJElSr0xEJUmSJEm9\nMhGVJEmSJPXKRFSSJEmS1CsTUUmSJElSr0xEJUmSJEm9MhGVJEmSJPXKRFSSJEmS1CsTUUmSJElS\nr0xEJUmSJEm9MhGVJEmSJPUqVTXuGGaNJBNfxsVjDWTDLQCWVdXCcQeyoQa0T4Zk//av+2R2GdJ+\n2QnYcdxBTIPfAn4NLB13IFqFx8rssxWwHFg27kCmyelVdfK4g1BnpC/587EGMj22Ar5fVY8edyDT\nwRHRYVoGnD7uICRpPe1Id7Kd6zYCNh93EBq0oRwry4Fbxh3ENFkAHDruIKS5YJNxBzCbVFXGHYNW\n5T6R5p8kiwHm+l0dSW6DuV+OoRlK/YJhlWUoJvaJZpWLYRjHydDqlyOikiRJkqRemYhKkiRJknpl\nIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRe\nmYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSp\nVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ\n6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRpkJIsTHJPkh3a672TVJJdxxvZ\nuhtSWeDe8tyYZHGSy5LsvprljkhiX2Wate//+HHHMZ2SfDLJY9r0SUmOa9MHJDlxiuUXJHl8m941\nyQH9Rqy5ZvJxk+TUJLut5WfvrW9aycZdkjRky4AXtOkXAVeNMZYNNaSyACyqqoXAG4E/Wc0yR2Bf\nRWvnSmDvNr01sEub3htYOsXyC4CJxGBXwERUM2m0vqmxcZckDdmFwIFt+rHAt4Btk1yc5Iokb4F7\nR97OTnJe+8u4Al6DIZVl1NbA7UmOGinLnkn2oeu8XZDk8DHHOEhJzmrf+ZeSbN3mfSPJae3fQ5Kc\n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\nWui+xycmOR/4Md3FgDVazTF/cZJ30Y1ifXmNK1h9HAfRjcTv00McHwEmnkN+F93o/zZ0Cc+RVfXD\nJA+iu1V8OfC+iWeygR8nOZvultGPAJe0z01nfbyI7u6UVwFfr6rLAZLcRZe4LaW78+FyukR5eZIL\nWXnBcLL30R1jt7S/Pg2pLLNGqur+l9KcMnEbU1UtHG8kG25IZZG0dmb6uG+jVsdX1ctmYv1D1JIp\nqmptb9GbtQZWlsUw98+RG1KOJIcDW1XVR6c5rPWKA3g3DKN+DYXH/Ozlr+ZKkiRpzknyUuDVdM/f\nzvs4pLnGW3MlSfNK+0EZR0OlOa6qzqT7deJZE0fW+8d2pfnHEVFJkiRJUq9MRCVJkiRJvTIRlSRJ\nkiT1ykRUkiRJktQrE1FJkiRJUq9MRCVJkiRJvTIRlSRJkiT1ykRUkiRJktQrE1FJkiRJUq9MRCVJ\nkiRJvTIRlSRJkiT1apNxB6AZsT9AktvGHcg02Ar4/riD0EpJXg0cOu44ptHpVXXyuIPQKibasMVj\njkMrbQUsH3cQ02QbGEz92ge4awBlGdIxP6T6NRRDar8GxRFRSevqUGDBuIOYJgsYVlItzZTlwC3j\nDkL3cRew2biDkGY5269ZyhHRYboYoKoWjjmODeYVxVlrmfVLM6WqMu4YtKqBHSuDO0fO9bIMpRya\nnQbWfg2KI6KSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUi\nKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6Z\niEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlX\nJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnq\nlYmo7pVk6yTnJlmc5PIkT0hy2rjj0jAlWZjkxlbfLkuy+1p+7tQku810fJLWXpLvJvnDNr04ySYz\nvL3FM7n++SLJl5M8rE0/P8n71rDs+5I8p00/PMkFfcUp9S3JJ5M8pk2flOS4Nn1AkhPHG91wmIhq\n1MuBz1TVQuCpwK/HG47mgUWtvr0R+JMxxyJpPSTZA7gUeN64YxmVxD7O/ftL4B3twsEbgePXsOzx\nwJuTbAy8Azi6h/ikcbkS2LtNbw3s0qb3BpaOJaIBspHWqDuBJyfZrqruAe4AHpHk7CRXJ9k5yaZJ\nLkiypM3fOMn/SPK8JL+T5D/TeXuSfdro1ceSXJrkbWMun2avrYHbk1w6MWNixKNdlbw4yUUjHcs3\nWKekWeP3gZOABybZfGJmku2TnNOO3ZPavPcleU6Shyb5l3YOOaod41ck2bMttzjJiUmuTPLKNu+5\n7Vz0d8Cmbd5uSb7UPn90m3dqkg8D5/f7Ncw9VfVVYAvgA8CZwLZtf30lyRsmLXsb8A/AB4HNq+qr\nSTZP8g/t+19k8q8BWQrsk2Qz4C5W5kx7AzeMtFlvAUjyuSQPatPvT7LXVH3gqdqs+cwGQ6MWAT8C\nLkryZeChwFbAfwf+GngxcA/w3KraD/g2cADwFeApwL50V5AeA+wJXNPW+8WqeipwcH9F0RxxeJIl\nwN8BZ01+M8mmwM5VtT9wQFWtaG9Zp6TZY8+qupIu8XvGyPy/AN5dVU8H7kjyZLoRuDcCHwPeUFW/\nAT7QjvHDgNHk5zS6u3P+qL0+CtgfOAbYsc17J/DK9vnHJtm5zb+sqp45zeUcqrfQtaUfo/uO30J3\nPn9Wkh0nLfvRtuxb2+s/AJa27/9GZtmouLQBlgF7tL9rgR8l2RXYFfgOsLCqnggclGQLuos0L24X\nY/aoqqvbeib3V1bXZs1LM/oMh+aWqrobOA44LskhwJ8B11XViiQ3AbsBWwInJ3k4XUfgu8CFdLfp\nbEOXsD4N2Kiq7k4C8M22iV/2WR7NCYuq6ujW2TllYmZaxWl16JPpnlW+MclftkWsU9IskO557ccl\nOR/YHLhh5O3dgfckKbqLmkvbKNq/APtV1bVtucOTHAasAGrk899sbcDEBagVVbUcWJ7k1jbv0cCi\n1mRsCzy8zb8arZWq+mGSm6rqniS/DXytqirJtXSd7ltGlr2nLfvDNuu3gUva9FV0/QRpzququ1q7\n8hS6ur09XTJ5C/BI4MQkD6Rrg3YAPgt8iq5fvGRkVZP7K1O1WT+ZybLMZo6I6l5JHtFGoAB+Rlc/\nRjsFAZ4F3NCu5JwNpF3RXkF3QC0GXgF8Y+Rzo+uQpnIH3e25abf2PY7uxcbAGVX1MrqTwMTzGtYp\naXb4feDIqnp2G/nciZV9i+uB/11VC6vqCcDnkuwE7Af8MMnCttzrgIXAq+jOMxMmH+cbJdmyjSBs\nP7KNQ9qz5nvR3ZUD3TlJ6+77wF7tYuACulHO+12+TT+hvZaG4lrgCLo7/K4GXkvXxrwWOKH1t1YN\nVwAAIABJREFUhb9H1xdeDtwOvB44Y2Qdk9ux1bVZ85Ijohq1ADgryS+Bu4G3c98fkLkCeGuSJwA/\np7vyA91Bum1V/TrJPXS360r35/AkTwUeQPdDGDsBlwFfbO//FnBOS0hvZ9ULHJLG7znAh0ZeXwe8\nuU2/i+4Omm3oEsMjgb+iu/32RrrE9Aq6Z7GWsOoowlROaMt8Dfi3Nu+twCfaBay76R4h0fp7D3Aq\n3TO4n62qf1vz4pwFnN4esfgx4HP7GpKlwNOq6k7gziQ7tHkrgA8nuY7u+dEJnwaOr6rvrGGdU7VZ\ny2ck+jkgVQ4sDM3Ej7y0qy1z2pDKMhRD2idDKos0k4Z0rFiW2Wco5dDs1Ff9SnIw8Niqeu8MbmMx\nDOdYcURUkiRJktZTkhcD/wt4wbhjmUtMRCVJkiRpPVXV2XS/naJ14I8VSZIkSZJ6ZSIqSZIkSeqV\niagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6\nZSIqSZIkSeqViagkSZIkqVebjDuA2STJq4FDxx3HNFgA3DLuIKbJTsCOSRaPOxDdy/o1e51eVSeP\nO4gNNaC2eEj2B0hy27gDmQZbAd8fdxBaxdDa4iEZwnnF9muWckR0VYfSdbLnuq2AHccdxDTZka48\nmj2sX7PTAoaTvA2lLZa0dobUFg/JkM4rmoUcEb2vZVW1cNxBbIiBXPEZtXyu75MhsX7NTgMcSZjz\nbfGQTBz3VbXtuGPZUAM8VoZiEG3xkAzoWLkYYAj1a0D7BHBEVJIkSZLUMxNRSZIkSVKvTEQlSZIk\nSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIk\nSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIk\nSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUk\nSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEV0PST6Z5DFt+qQkx7XpA5KcOMXyRyQ5Msmu\nSU7rO941sSyzsywTkuyf5MIki5NckGTfcce0PoZSDhhWWYYqycIkx4+8vnQD1rV4WoKaet3fTfKH\nE9tJsslMbWtiG2uKYZxxrMVntkjykSQXJbk0yUfW8nOztn2frdrxc0+SHdrrvZNUkl3HG9m6mUvl\naLHe2Or3vyR5yGqWe3+SjfuObz5a1z6l1o+J6Pq5Eti7TW8N7NKm9waWjiWi9WdZZqkk2wFvB15Y\nVQuBFwJ3rsd6xnqcD6UcLYbBlEXjlWQP4FLgefM5htWZ4hg5BvhqVT29qp4KnDlp+SRJbwEO3zLg\nBW36RcBVY4xlQ8ylciyqqqcDnwQOmWqBqvqzqvpNv2HNW4PqU85WdobWz1JgnySbAXex8nvcG7gh\nycVJrkjyltWtIMkH2nKXJNmlzXthksvbFbH92xXgM9roy5lJNrUs86YsAAcDp1XV7QBVdUdVXZNu\nFPeS9vf4FuObk1zWYpqI+9o2EvCmJE9M8rUW99fa+9snOaeV66QZKsOQyjG0ssw7SfZo++TyJC9L\nsnmSfxl5/4IkmyZ5dVvmb2YwnN8HTgIemGTzkRjuUweSvC/Jc5I8NN1oycZJjhpp0/Zsyy1OcmKS\nK5O8ss17bpKrk/wdsGmbt1uSLwGfA37VYvj7JB8Gfm91cQAPmIk42uePbvNObXGcP+n72req7h3Z\nrKolbflj2zq/CGzX9uGSJGdn5cjRI9rrq5PsDATYY3S5dCOnlyT5xyTLkhzSYrs0yZYbtqvnpAuB\nA9v0Y4FvAdtmLc6js8xcLMe2AGs4tjZp9f7vk3w5ySntvanajosmjoNWt3ccV6HmoHXqUyb5XJIH\nten3J9mrtWcfa+3I29p792n35rWq8q/9AYuBxWux3GZ0V5H3Bl4PHA/sSnelbQsgbbmL2usjgCPb\nMqe19x7Y/n0G8E66Cn4lsEWbvxHwp8Ah7fVrJ6bXIr7bgNvWclnL0lNZ1qM+/gXwnDZ9aCvbKcA5\ndB2pBwOfBR4KfLEt91Tgo236P4At2/QXgJ2BLYF/b/NOBJ7cpk+YmJ7OfTKbyzHAsixmLdqvufC3\noWUBFgLHj7y+tP17Dt3xvilwRfv3FGA34NHAycAm7b1NgKfM1HcKnNP+fQ3wnFbmTaaqA3Tt1eJW\nt/Zo7020VbsBnxr53vYENgeWtHmXAVsB/wX4Xpt3Znt9DnAG8Gbgy3SjMKuL4452vEx7HG36jHY8\nnMoUbSpwycj0l4BvtuWPBY5q88PKtvp44KC2v6+ha7sPozs3LB6Ja6rlDgU+195/C/D74z4mZupY\nWdPx0/bFk4D3tOndmXQencZtrlNbPFvLsYGx3kjXX7kO2GYNx9Ymrd7/rzbvS3TJ61Rtx9F0/Zmt\ngc/Phvo1pu93ncvBuvcpX0bXp9wIuKi9dyrwojZ9Rfv3Pu3efNwnE38z+hzIUFXVXenuAHoKXYXc\nnm6k5BbgkcCJSR5I17HZYTWreVOSA+k6Qt9u67ixqn7ZtrEiye7AXkleAzyArsJalnlQluZm4GFt\nu6cn+QrdCMpj6Rq+CbsCX2/TVwFva9PXV9Uv2vTWVfUT6J4Ja/N2B96TpOg6iDN1q8lQygHDKst8\n9KCq+iFAkh/QtQOfAv4Q2JjuWN6O7pi/J8nVMxFEkt2AxyU5ny5Zu2Hk7fvUgar6arqR2/2q6tq2\n3OFJDgNWADXy+W9W1d1JVrTXK6pqObA8ya1t3qOBf6Qb/bwb+B3gt4DR8k6OYyPgN8B0x7Gotdvb\nAg9v89f4vVfVM5OcCvf2YSaW3xI4OcnDgR2B77a/61rbfRNdp35j4P9LcvFqlvspXaIL8FPgQWuK\nZ8DOAz4GvBp4HV2if96k8+iN4wtvrc2VciyqqqNb3d4FeMpqjq0Jo3V0G6Y+f5wOHEV3bH1mZsMf\nlvXoU36W7nzyXWDJyKom9tMv279TtXs/mcmyzGYmouvvWroRtY8DDwHeAZxNN0J2QlUtTvcDGfd5\nZiXdQ+gLq+ppSQ6iu0p7K7BLkgdU1a/SPR9zPXBBVZ3dPjdTt4BaltlZlvOAs5OcVVU/pzteC7iy\nql4ysu2HAHu0zzwB+H6bXjGyrtuTPIzuqvNubd71dCPBV7d1zVR7MJRyDK0s89Ft6X6o5CbgUcDP\n6C4u/AVdcvIOuoTrEe12tj1nKI7fB46sqgsAkpzDytu+7lMHkuwE7Af8MMnCqlpM16HeE/htuvZu\nwuQO60bpbi19EF1HamIbN9CN9i1un/nhpM9OjuM2unZzuuP4s6q6uX3fRddWr+C+vpLk8Kpa1F6P\nHhsTyz8LuKGqDk3yTla286OxpMXwy6rafw3LTf7MfHQe3Xd6ZXt9AvdzHp2l5lo53k034vkYpj62\nJkyuo/dpO9oFtYcBf0A30q91s9Z9yqpanuR2utHT0Vu+J7eFU7V785adnPW3FHhaVd0J3JnuV9mW\n0p0QP5zkOrp7yqfyf+muCl9IGzVpV2HfDVyc5Bd0P4hyMvDxJBNX8I6iu2XMssyDslTVrUmOBT7X\nRhXuobu16BFJltCNTlxYVe9I9xzIV1rZ/miK1b0D+DzwPeDHbd676EYPtqH7fo6k64xajnlQlnng\nsCRPmjTvGLoRgo2Bj1TV3QBJvg5sUlUrgBXpnjn8CnDxDMX2HOBDI6+vo7s9FqauA38FvIFu1OZz\nSa6ga9eWsOqV96mc0Jb5GvBvbd5b2+efBrwJeDHwc1b+MMdUcWxEdwfIdMfxiXTPyN7d4lidtwN/\nneRIumPquyPrmXAF8NYkT2jl+S5Tu4PumP3C/Sw3r7UR7IlnfAHO5f7Po7POXCtHVV2fZHvW/tia\nsLrzx3nAM9rFU62bde1TfprusZDvrGGdU7V7y2ck+jlg4v5msfIn5av7Ncw5q125pqq2HXcsG2pI\nZRmnkSujWwJfqqr1/i9HxrlPprMcbX1DKstimPvtF/RfliR/BfxDVV15vwvPU0Nqiz1WZp8h1a/Z\npl00v7Wq/mE9PrsYBlG/FsPMlyPJwcBjq+q9M7iNxTD398kEfzVXmh/2Tfc81CXAjDWQPRhKOWBY\nZZmz0v3fcI8wCZU0NC0JfRHd84uaQUleTHdL7ifGHctc4q250jxQVRcD+487jg01lHLAsMoyl1XV\nMeOOQZJmQlWdRPeDepph7XdDzh53HHONI6KSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlX\nJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSerXJuAPQjNgG\nIMniMccxHYZUlp2AHccdxDQY0j7ZClg+7iCmyU7AjgPZL/vDYOrYUHiszE4Tx8pt4w5kA02cV+Z6\nOSbcAtw87iCmwQJg2biD0HA5Iir1Z0e6zpxmj+V0HYYhsH5pJnmsSGtnK4Zx0Rm6JPT0cQeh4XJE\ndJguBqiqhWOOQyMmrr7P9f0ylHLAIEfclg9pvwyhLEPhsaKZNDESWlXbjjuWDWX7Ja09R0QlSZIk\nSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIk\nSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIk\nSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUk\nSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQ3\nQJIDkyxOsiTJPyX5fJLd1nEdC5McP1Mxam5Lsn+SC1s9uyDJvuOOaT5I8skkj2nTJyU5rk0fkOTE\ntfj8giSvXMdt/vH6RbvGdQ6iHBqedu67sbVtlyXZfTXLLU6ySZJjkzyj7zjvz1DKMaqV6Z4kO7TX\neyepJLuON7J1M5RyqH+t7tyRZNv2+tT16N97LlwLJqLrKcn2wDHA86pqP+DNwGbruA6/f61Wku2A\ntwMvrKqFwAuBO9djPdazdXclsHeb3hrYpU3vDSy9vw9X1bKq+tt13OZMnLSGUg4N06LWtr0R+JMx\nx7IhhlKOUcuAF7TpFwFXjTGWDTGUcqh/PwaO3IDPey5cC3ZQ19/BdCefOwCq6gbgZuANSS5N8jaA\nJK9oV0KvSvLMNu/UJB8Gzh9dYZIjk1zS/h6f5MHtsxcl+WC/xdMscDBwWlXdDlBVd1TVNZPrCUCS\nN7er8Rcm2aXNuzbJacCbkjwxydeSnJHka+397ZOc0+rXSeMq5Cy1FNgnyWbAXaxsK/cGbkhycZIr\nkrwFIMmLkixt3//Bo3c6JPlGktPb/ljQ5h3f7qT4UGsPng88rh3vByV5RpLL298z2mcWJzkxyZXr\nMEo5lHJo2LYGbm/t1MTI4ivGHdR6GEo5AC4EDmzTjwW+BWw7uc2YA4ZSDvXvc8DzkmzcXm/R+lAX\nJjkzyaZJPp1kmySvSvJZgCRfSPICPBeuFRPR9bcTXeI52Rer6ql0SQTAme1K6YHAG0aWu6yqnjnx\nIt3o1/OB/eiu3h0D7AksrqqnA6+f9hJotnsYrY4lOTTdBY5TmFRPkjwUOKCq9qWrN0e1z+8MvKaq\n3gP8ZfvckawcFfsL4N2tft2R5Mk9lWsuWAbs0f6uBX6U7nauXYHvAAur6onw/9i793BJqvLe49+f\nDMToKHhFwCiiJxEjOlG8QmBUvF8TPeJtFD2EqDlRc7yiBlGJeDkmhhj1IInEUSIqElEQkctwVRFk\nCB4SDESNIiInZgQUQeE9f9TaTs9m77n2ru5d8/08zzy7u7qq+11dtVatt9aqHh6f5DeBPwSeW1WP\nBb40673uTndl9JXAS5LsBDykzaQ4B6CqTgAuqarlVfUV4FDgCe3fO0be6xPA3sBLtrJyaJhWJDkL\n+Bjwabpj5Bl0x8YL2wWUxWAo5Rh1E/CLJI8E/qUtu5FbtxnTbijlUP9uBr5Ad14EWA6c0M6Pq4Dn\nAF8HHkl3cffGJNsCt1TV5/FcuFFMRDffVXSJwmzfan9vaH+fmGQVcALwWyPrXThru93oOotnAJ8D\ndgDOAm6T5JPAi8YTthaRXx9jVXUM3TGwM7c+TnYF/rltcwEwcx/DZVX1s/b4jlX1g/b839qy3YF3\nt+Pzccx9PG+Vquqm9vDRdN/pBXQXl64G7gOclORMuu/w7sBfAG9NcjRrv/8Zl1fVL4Ar6fbXvVnb\nTqyeP4S6to2G3zyy/FtVdSNwy9ZUDg3WynYhYxnwLrq27QS69u0ewN0mGNumGEo5ZjsJ+AjduQYg\n3LrNWAyGUg717yjgj9rjJwOvaX2ml9AdN+fSnV9/k64ftj9w0Rzv47lwHksmHcAidhLw2SSfqqrr\n0t3EvBNQs9Y7GNgX+A26A3bG7IPuO8A3quo5AO2qyjZVdUh7vhpYOf5iaIqdBByX5NNV9VO6+lrc\n+ji5C13HB2BP4Ir2ePQYuzbJzsAaRhJVuqm/F7b3sj1Y18XAAcBH6b7jdwLHAa8A3lNVq5KcQ9ep\n+V5VHZjk0cD/Ao4deZ/RNiHA94AHtOcPmme92yS5Y3u8zTzrbG3l0HBdRzet9SLgOVX1syTbVtUv\nk0w4tE0ylHLMOAl4It295gDv4dZtxmIwlHKoZ1W1JslldBfr/w/wg6o6Dn7d/wL4a7r+/bnAB+h+\nMwY8F24UO56bqaquSfJO4IvpzjA/oZsCMtsX6UY2z6dLAtb3fie26T03093XcGaSdwHbAqeOuwya\nbu2YOBT4fJJbgF8B7wbuPXqcVNU7093neR7dMTjXFI930k0xuZzuBnzortwfmWR7uqT1QOC7C1ik\nxeZ84Per6ufAz9P98uL5dN/VB5Ncyto6f2ib+rUUeO363rSqrkqyOsnZwKXAL2c+r91j8n66H6n6\nSlt+iOXQQK1IsjdwW+Aw4MfAF0bOqc+eZHCbYCjlWEdVXQ/8D4CWSJ/IrduMqTeUcmhijgD+hK5f\n/sYkr6S7eHFwVX09yU10Sej5wP2Br7XtPBduhFRt9cn4r7Xhdto9nYvWUMoxNJPcL0mWVNWvktwe\nOKXdT7q577UKhnF8TaosI/tjf2C3qjp8DO+5BqCqdtjiADf+M8dejva+q2AYx9hQDGmfTKKuaP2G\ntE+GVFeGYkj7ZEhlAUdEpa3FXun+D8k7sO6N8pqMv2g/DnUz8NxJB7MFhlIOSZLUMxNRaStQVWfS\n3ausKVBVb9zwWtNvKOWQJEn981dzJUmSJEm9MhGVJEmSJPXKRFSSJEmS1CsTUUmSJElSr0xEJUmS\nJEm9MhGVJEmSJPXKRFSSJEmS1CsTUUmSJElSr0xEJUmSJEm9MhGVJEmSJPVqyaQDmDL7AiRZM+lA\nttBS4PokqyYdyJgcU1VHTjoIDdJMnV814TjGYSlw/aSDGJOdgB0Hsl+G0n4Nqa5sD4M418+4Grhq\n0kFsIduv6bRT+7vYj6+h9O+hqytXTDqIcXFEdJiupzsxDcEy4AWTDkJaBIZU73ekO9kudrZfWmhL\n6erLYmf7NZ3u2/5JC8IR0XWdCVBVyycch5qBXFHUlKqqTDqGcRlgXbl+sbfFQ9onQ6wri/34guGU\nZUh1pVn07ResHUEcQlmGYmh1xRFRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIk\nSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIk\nSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUk\nSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQl\nSZIkSb0yEZUkSZIk9cpEdAskeVySVUnOSnJ8ki8kud8mvsfyJIctVIybEMOvkty9PX9Ykkqy6yTj\n0vzHWJInJXnqPNvskOQP+45Vi8+W1P0kLxt5fM7CRblxhlQWLR7tuPtea6fPTbL7POutSrIkyaFJ\n9us7zq3JpvSrpn1/DKUs6ytHH21ukicmObvVw79Mss3oZyd5U5Jd5tl23tdmrffdJAe2x5vVt2/b\n7bap2y1mJqKbKcndgEOAp1fVPsAbge028T2m6ftfDTyzPf4D4IIJxiLWf4xV1clVdeI8m+4AmIhq\nY21y3W9t18s2tN4EDKksWjxWVtVy4PXAyycci6QRSe4KvAV4Uqun1wB/NLpOVb27qq6ca/v1vTbL\nNcALtzDc5YCJqDbKU+hOPtcBVNW3gauA1yU5J8nbAJK8tF2BuSDJE9qyo5N8EDh59A2THNiu2Jyd\n5CFJ7ty2PSPJEQtcntOBx7XHvwv8X2CHJGcm+XqSN7cYD0hyXJKT2r8k+YMk5yc5PclT2lXff2yj\neP/Yni9P8qU2ondukqULXJ4hmO8Ym9kPBybZtR0vxyW5MMk9gYOAx7dj525J3ti+89OT3Kttf0mS\nY5JcnGTZpAqoqbApdf/YJCcCrwP2aMfYHsCSJB9NsjrJk9r6f93e4+yZ486yaODuCFyb5BFZO0L6\n0kkHtbVK8ulWb09Jcse27BVJvtb6Vb8zsu4Dk3w+yR0mF/H8hlKWufojwPaz+yNj7qM8la4v9bP2\n/K/oLlSOxnV0utlmX0iyfVv2/iQPH3lt2exzySw3Aucmefys957dt39qkj9NcrskN6br6780yXOB\nA4D3t8/ePskXW1/6iPZeB9Cd2/ZI64Nv4XczcSaim28nWlIwy5eram+6JALg2HYF5nF0HZ4Z51bV\nE2aepLti8wxgH7or+ocAvwesqqrHAK8eewnWdRPwiySPBP6lLbsRWF5Vj6BLbH6zLf9BVT0FuBJ4\nEN3o23Or6rHAl+gq+KVtFO//As+e+YyqejpwEms7i5rffMfYbEuB/w78Jd13fSTwlXbcbQM8tqr2\nojumDm7b3J1uFOiVwEvGG7YWmU2p+2uq6qlV9V7gkqpaXlWXAHemu+L8VOCP27oHV9W+wNtHllkW\nDdGKJGcBHwM+DbyD7ny+N/DCJJs0W0pjc0Crt58G9k83bf+/A3u1ftW/tfV+F3gXsGLmwu8UGkJZ\n7sHG90fG2UfZCfjhzJOq+gXzz2D8Al3dBXhoVZ0/8tplzH0uGfW3LWZg3r79V4FHAg8HVgGPAh4N\nnAccDby2ql5LN6hwbOtL3y7JI9rb3ghcwto++KK2ZNIBLGJXATvPsfxb7e8N7e8Tk7waCF3FmnHh\nrO12Ax4MnDGy7Cxg3ySfpBs9XbmlQW/AScBH6A7+V9LFfFKS2wG/w9r4Z8p4Jd000L8A3ppkSXt8\nX+CbbZ0LgIcCV8+xndZvvmNstkur6pYkVwKz71HeFfjn9vgC4G3t8eVV9Yu2jftCG1v3Z7dbM66p\nqh9Dd49yW/aGJI8DtmVtUtiHIZVFi8PKqnprkh2Bo+jO5Se01+4K3G1ikW29tgHe12Y53BE4HrgP\n8M2quhmgnTehu+3lhVV17aSC3YChlGVX4KL2eEP9kXH2UdbpSyW5LfDLedY9HvhIkktZ24+dcR+6\n0crRc8n3RleoqquSXNdehzn69lX1kyR3oUs+3ws8FvitqvrBrAHO+9Kdz6D7vmb6dzMju4Povzki\nuvlOAl40M/Uh3Y8U7QTUrPUOBp5MdyXklpHlt8xa7zvAN9pV+eXA44FtquqQqnoh8NrxF+FWTqLr\nnH2jPX8P8J52Fe5yug4drFvGAN+rqgPpRuL+F3AFXfIJsGd7Ptd2Wr/5jrHZZn+vv6Q7cQF8l64R\nBPeF5rexdX+03ap5HqedZJdX1e8Df06/x9iQyqLF5Tq6ROEi4KntXP57G3l/mcZrGXD7Npr0t3T1\n9t+B30v7fY6s/Z2OVwFvzib+2GSPhlKW77Lx/ZFx9lG+BLw4ye3b8z8D/mmuFavqGuC2dFNkPzvr\n5Vcw97lktiNYO4txrr49wPfpEtDTgT2A/2zLR/tv8/WlRy3685Ejopupqq5J8k7gi22O9k/opoXN\n9kW6kc3zgTUbeL8T2/Sem+kOzjOTvIvuKvyp4y7DHDFcD/wPgHZV5kTgg+3K0Fxlm3Fomwq3lC5h\nPhd4TivLVXQdwb0WMPRB2oRjbLYfAXdO8lm6UaEzkpzXtnUarm5lM+v+95McRzeNdbb/Aq5Pcjpr\nR+R7MaSyaNFYkWRvug7sYcCPgS+MtNvPXt/GGrsAlwKPSHIyXaf/ynZOPQ44L8kNrP1hqTXAi4FP\nJHlhVf1oIlHPbShlCd0I3hV990eq6sdJDgdOTnIL3YWi961nkxPpRpZfNcfyDfaJq+qCJD9pj+fq\n27+Tbhru3auq2gjq19rmq4DD2zTcI4BjkvwR8M9V9bUk99+kwi8CqZo9gLf1SrIKoF210BQY0j4Z\nSlmGUo6hGdJ+SbIGoKoW9bSjIe2TIRnSfhlKWcZZjiQrgKVV9eEtfa/N/PyxtV9DKcukyzEkQ6nz\nM5yaK0mSpEUvyf50M4GOm3QsW2ooZRlKObQwnJorSZKkRa+qjgWOnXQc4zCUsgylHFoYjohKkiRJ\nknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJ\nkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpV0smHcCU2RcgyaoJx6G1Hg7cNJB9MnN8rZl0IFto\nKXDFpIPQrQyp/VoKXD/pIMZgJ2DHgeyTIVkGXD3pIMZkKMeY7dd02h4Gs1+GYhmwetI+zRb0AAAg\nAElEQVRBjIuJqKbdTcB2kw5CUq+uZxiJwo50nVJNlyHtE4+x6TOU9kvTaTVwzKSDGBcT0RFVlUnH\noHXNXIWrquWTjUQzvDI6nYbUfg3sGLve9mu6DGBWymyL/hgb0rl+YO3XmTCM/aLp5D2ikiRJkqRe\nmYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSp\nVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ\n6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJ\nknplIipJkiRJ6pWJqCRJkiSpVyaikiRJkqRemYhKkiRJknplIipJkiRJ6pWJqLY6SZYn+V6SVUnO\nTbJ7kg8k2SbJoUn2a+scNgWxPq7FeVaS45N8Icn9kjwpyVPn2WaHJH/Yd6zSJCS5Y5ITWz35WpI9\nF+r4X+i6NaSytM/4dTua5NlJjktym5HXP5Bkmzm2W5bkIQsZ26ayLNNZlqEa6aeckeQrSe4y6Zik\nhWAiqq3VyqpaDrweeHlVvaaqbp5wTOtIcjfgEODpVbUP8EZgO4CqOrmqTpxn0x0AE1FtLV4MfK7V\n572BG1mA4z9JgDstxHuPGFJZRj9vL+BPgBdV1S1t2W3W0+4uA6Yy4bEs01mWgVpZVY8B/gF4/qSD\nkRbCkkkHIE3YHYFrk6wC9ptwLLM9he5EdB1AVX07yVUASQ6gq7+nAiuBHwO7As8EDgIe38r034GX\nAc+g69QeUFX/keQS4BLgd4GXVNXq/ooljdXPgUcn+XxV/b8kz2fd4/+ZwEvauq8GdgJ2A/4O+K/2\n/JnAz4BrgTcBS4EjqurjSQ4F7g3sAlwx+t5VdY1l2aDfAR4HPA3YMcnHgP8ETkryYrp294+BFcAN\nwGvp2rC7JHkM8CLgQ+19bmjPH0x3Ye5XwJ2BJ1bV9QsUv2WZ/rIM3Q7AnZIcW1X7J1kCnFJVj03y\naWBHuvP7c6rqWs/vWkxMRLW1WpFkH+C/AU8Afn/C8cxlJ7qTyYYsBfalu2L6bOBI4F5V9aIk9wAe\nW1V7JdkbOBh4BXB3ugT1oXQdW09UWqxWAvcEzkhyNfBW1h7/d6W7CLMP3Qjg39Md9y+gq1urgEcB\njwbeDvykqk5uHb0zgY+3z/h2Vb00ya7AHarqRZZloz0B+Kuq+s8kd6Bre/arqptbwgNd8vyYqrqh\njdYeCSypqqOSPB34j6p6RZInAy8HvgrcVFXPTPIWuoTq8wtcDssyvWUZqhVJngTcjq5uf6Ltq0fT\nXYSG7uLyz5McCOwPfBTP71pEnJqrrdXKNt11GfCuSQczj6uAnTdivUvbtKor6a6cjtoV+Of2+ALg\nfu3x5VX1i3m2kRaNqvplVb2jqvagGxl8zcjLu9GN0pwBfA7Yoap+AtyFrjP33vb3t6rqB8BDk5wK\nnAY8YOR9Llz4kgyrLCM+DOzVOtQAF88x7fNtwIeTHEnXiR61O/C8NnL7FrqRNoBvtb99tmGWZa1p\nKstQrayqPYHzgXvR1ftn0iWcn2r38b4vyVnA/2Rtf8HzuxYNE1Ft7a6jm547jU4CXtSugJLkfnSj\npLPVyOMAvwRmfmjiu3SdV4A96abjzbWNtCgluXeSbdvTH9PV6Znj/zvAN6pqebvv8vFt+feBxwKn\nA3vQTUkEeANwIN20xDUjH3NL+ztat8ZuSGUZ8Su6jvNhwG1HPn/U6qo6gG5U94BZsV0GfLyVe2/g\nzW35JNowyzKdZRm6w+m+3+Po9tnOVfXvdBfSb98uqv8ta79v94EWDafmamu1ok1VvS3difh1E47n\nVqrqmiTvBL7YpkX9BLhpIzb9EXDnJJ+lu6fnjCTntW1fst4tpcVnGfDpJDfQdZQPBI4cOf5PbCMG\nN9Mla+8EzgPuXlWV5Drga+29jqebSriadZO3GevUrTYiaVk2oKp+kmQFcA7d6M5sH0lyH+A3gJfS\n3e92dJIHAq8Cjkhyelv3A3T3v06EZZnOsgxZVV3WfrzwdsAvWDst9zLgfklOprsgdeWEQpQ2W6pq\nw2tJE9Km/dBGADQF3CdaaEM5xpKsAagqp8dNkSHtl6GUZSh1Hha2LEmOAV5bVVeN+73n+bxVMIz9\nounk1FxJkiRpirV7dX/cVxIq9cGpuZIkSdIUq6qDJh2DNG6OiEqSJEmSemUiKkmSJEnqlYmoJEmS\nJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmS\nJEnqlYmoJEmSJKlXSyYdwDRJchDwgknHMQY7tb9XTTSK8dgXIMmaSQcyJlez+PfLMmD1pIMYhwHV\n+RnHVNWRkw5iDIZS77cHSLJqwnFoXUPaL0uB6ycdhNYxlPYL2vE1kLoylPPjoDgiuq4X0HWyF7v7\ntn+aLkuBHScdxBisBo6ZdBBjMpQ6D105hpRUS9qw6+kucEoLYSjHl+fHKeWI6K2trqrlkw5iS8xc\nhVvs5RiamSuK7peps+jrPAxmdGfGmbD464p1XgttYPV+KAbRfg2J9WR6OSIqSZIkSeqViagkSZIk\nqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIk\nSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIk\nSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIk\nSZKkXpmISpIkSZJ6ZSIqSZIkSeqViagkSZIkqVcmopIkSZKkXpmIjkGS5UkOm3Qc4zCkssynlfF7\nSVYlOTfJ7kk+kGSbJIcm2W9r+B60eZL8Q5IHtMcfSvKO9vixSd4/a92/Wc/7HJ3kfrOWPSvJnRci\n7qFKcsckJ7b6/LUkeyb5wwX6rB0W6r2lPs0+x83VHq1n2wOSHLhw0Wmkn3JGkq8kucukY9oUI/Gf\n1trm58+z3q5JPjHH8nMWPkpNAxNRba1WVtVy4PXAy6vqNVV184Rj0uLwDeBh7fEdgXu1xw8Dzp9Z\nKcltqupPN/G9nwWYiG6aFwOfa/V5b+BGYOzJYpIAd1qI95akOaysqscA/wDMmchNuZVV9TjgycAL\nkzxk0gFp+piIjlGSTyc5M8kpSe7Yll2S5BPt7/PblfsLk9yzvX5gkrPbv4ckuXO7enRGkiMsy4K7\nI3Bti3PJpIPRonA+8PAk2wE3sbYdfRhwuyTHJjkReNDMVd0kz2h15chZV3pfl+ScJG9Lci/gScAn\nk7y+x/Isdj8HHpXkrlX1K7oO2+Nbnb7bHO3SU5P8aZLbJbmxtVMvTfLcJE9q212Q5MUAbZbEx4Av\nA28Yfe/JFVlaELdP8sUkZ82cs5NsP3vZjCS7tH7Azkne1dqyM5LsPJnwB2sH4E5JjgVIsiTJ6e3x\nfH21Y5JcnGTZBOMGoKpuAN4PPD3JIa39PD3Jrm2V+yQ5Id2Mlvu0ZTsk+Uw7bz4sySOS/G+AJHdN\ncnz/JdFCsOM9XgdU1c/TTVnZH/gocHfgQOAhwAeBPYHnAc9N8nHgGcA+dFfa/x74G2BVVR3arsBP\nypDKMpcVSfYB/hvwBOD3JxyPFo/VwF8CDwYuBu7WTqi7AgWsqar9AUYO+zfS1Y0dgFUj7/Xlqnp5\nkq9X1duTnAwcVlWXL3wxBmMlcE/gjCRXA28F7lVVL0pyV27dLr0MeAFwCd2+eBTwaODtwE+q6uR2\nUepM4OPtM75dVS9t+/kOVfWinsomLaQVSfZuj+8P/F/g2KpameSoJI+gqzuzlwHsDBwJ/FFV/TDJ\nXsA+VXXLFJ7vF6sVSZ4E3I6unfpEkjvQtVentnXm66u9DHgo8BK6c9ak/RBYTteWLk+yO3AwcDjd\nLKB96eJ9I/ByuuPrkcD2wP+pqqclObwdW88GPtN/EbQQHBEdn22A9yU5C/ifdJUI4PKq+gVdJfyX\nqrqlPb4TsBtdZ/YM4HN0ndSzgNsk+SQwqc7OkMoyn5VVtQ+wDHjXpIPR4lFVN7WHjwYuaP+eAlzd\nll84x2Y3V9XPqupK4P+NLP9W+3vDQsS6NaiqX1bVO6pqD+DvgNeMvHyrdqmqfgLchW7/vbf9/a2q\n+gHw0CSnAqcBDxh5n7n2qbTYrayq5W1a+8nAE4FvttcuAO4H3HeOZdAlC5+tqh+25+8F/iHJB+gS\nJ225lVW1J90snHvRtWHPpEs4P5VkQ321K+n6YtNgF7p2eHmSVcCH6WakAVzSZrOsZu3xdXlVXd/O\nmdu3ZWcDewFPBz7fV+BaWCai47MMuH1Lbv4WmLkiWCPrjD4O8B3gGyMngscD21TVIVX1QuC1Cx/2\nnIZUlg25jrWNobSxLgYOAC6iS1JeQXfvKMAtc6x/mzYVdGfgriPLa9Z6v6S7EKSNlOTeSbZtT39M\nV6dnvsO52iWA7wOPBU4H9gD+sy1/A92sj/2ANSMfM7NP3T8asi/TjUpBN+PpivZv9jKAw4BnJXlk\ne356Va2gq4NP6yfcrcbhwJuB4+iS0J2r6t/ZuL7axEenk9yW7gLhCcApI+3xi9sqD2xJ9YNZe3zd\nL8nt2znz2rbsk8CfAT+tqp/1VgAtKBPR8QhwKV3FORl4+MZsVFXXACe2ey/OAN5Ed+/ZOUm+ztqp\nF30aUlnWZ0W7Knc68L4Jx6LF53y6Cy0/r6rv002FOn8967+XbobAO1g7cjqXLwMfSvLysUU6fMuA\nc1p9fhNdB/nOST4L3Myt2yWA84CfVVXRJa5fa8uPp7vSfhTrJqIzfjTz3vHXjTU8ZwDPS3I2cGNV\nfY1uqufsZdDdH/8i4O1tmuXn2zpPppvWrjGpqsuAu9GNNP8C+FJ76TI2sa/WsxVJTqMbbf9UVa0G\nftTuET0DeGlb78fAPwFH0J0robtY+PfAF+jOm1TVt+lGhj/dXxG00NKdhwXQOjK0KzWbst0KYGlV\nfXgBwtpkSdYAVNUmT8mYtrIMyeYeX1o4fe2TJEuq6ldJdgGOrKqnLsBnrIJhHF9DKctQyqHpNZRj\nbCjlgIUtS5JjgNdW1VXjfu/FoCXdzxi5RWZjt1sFwzi+hsYfK9pCSfYHDqK7eXpRG1JZpCnznCSv\nAG4PvGrSwUiSFpckRwI/3oqT0BOB0zY1CdV0MxHdQlV1LHDspOMYhyGVRZomVfUp4FOTjkOStDhV\n1UGTjmGSFmImkSbPe0QlSZIkSb0yEZUkSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUk\nSZIk9cpEVJIkSZLUKxNRSZIkSVKvTEQlSZIkSb0yEZUkSZIk9WrJpAPQgtgeIMmqCcehdT0cuMn9\nMlWWAVdPOggN1k7Ajtb5qXRMVR056SDGYF8YxPl+GbB60kGMyVD2yZAMrf81lPbLEVGpRzcB2006\nCK1jKbDjpIPQYO1Id4xpuiwDXjDpILSO1cAxkw5CgzWk/teg2i9HRIfpTICqWj7hODRi5kqc+2V6\nJFkz6Rg0eNdb56fLgEZFqKpMOgaty30yfYbU/xpS+wWOiEqSJEmSemYiKkmSJEnqlYmoJEmSJKlX\nJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnq\nlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmS\nemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmSpF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqKSJEmS\npF6ZiEqSJEmSemUiKkmSJEnqlYmoJEmSJKlXJqJjlGR5ku8lOS3JqiTPn3RMWpySnJVkh5HnH0hy\n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\n", + "text/plain": [ + "" ] }, "metadata": {}, @@ -659,16 +714,7 @@ } ], "source": [ - "def best_dominoes(tiles, n=20, figsize=16, plot=True, repeat=30):\n", - " board = max((dominoes(tiles, n) for _ in range(repeat)), \n", - " key=lambda board: len(board.boxes))\n", - " if plot:\n", - " print(len(board.boxes), '/', len(tiles), 'tiles placed')\n", - " plot_board(board, figsize)\n", - " else:\n", - " return board\n", - "\n", - "best_dominoes(tiles1970)" + "plot_board(restart_dominoes(tiles1970))" ] } ],