{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# %load ../../preconfig.py\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "sns.set(color_codes=True)\n", "plt.rcParams['axes.grid'] = False\n", "\n", "import numpy as np\n", "#import pandas as pd\n", "\n", "#import sklearn\n", "\n", "#import itertools\n", "\n", "import logging\n", "logger = logging.getLogger()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "2 MapReduce and the New Software Stack\n", "=====================\n", "\n", "\"big-data\" analysis:\n", "\n", "1. manage immense amounts of data quickly.\n", "\n", "2. data is extremely regular $\\to$ exploit parallelism.\n", "\n", "new software stack: \n", "\"distributed file system\" $\\to$ MapReduce\n", "\n", "When designing MapReduce algorithms, we often find that the greatest cost is in the communication." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.1 Distributed File Systems\n", "commodity hardware + network" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.1.1 Physical Organization of Compute Nodes\n", "*cluster computing*: the new parallel-computing architecture.\n", "\n", "*racks*: compute nodes are stored on racks.\n", "\n", "communication:\n", "\n", "1. The nodes on a single rack are connected by a network, typically gigabit Ethernet. And racks are connected by another level of network or a switch.\n", "\n", "2. The bandwidth of *inter-rack* communication is somewhat greater than the *intrarack* Ethernet." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nCsLCwrTuzgVTFIXDhw+TnZ3NqlWrXPZoSGdQVZXGxkYKCgooKSlh3LhxTJw4kREjRrjd7VzCs0kg\nC4/QtxtbrVbKy8vZu3cvPj4+TJ8+naSkJI17d2FUVWX//v3U1NRw4403uv3Jw1fZuHEj8fHxzJ49\ne0iOMKuqqti/fz8dHR1MmjSJ5ORkWY0tXEYCWQx5fVW2qqqqyM/Pp6mpifj4eCZOnOjW09NnU1WV\npqYmnnvuOe666y7Gjh2rdZcuSmVlJe+//z7XXnstERERQzKULRYL5eXlZGVl4e3tTWJiIgkJCZhM\nJglmMagkkMWQ1vfw+uzsbIqLi4mNjSU9Pb1/1exQoSgKb775Jnq9nmuuuWZI9f1sDoeDd999l9bW\nVlatWuXS5yY7k6qqWCwWcnJyyMvLY+TIkUydOrW/2pcQg+GCPvVZWVmsXbsWgIqKCtasWcMtt9zC\n448/3v89W7du5cYbb+Smm25i9+7dg9JZIfooikJbWxt5eXm88847NDU1sWDBAq688koiIiKGXKA1\nNTVRU1PDwoULh1zfz2YwGJg/fz4tLS3k5eUxVM/3dTod/v7+zJw5kyVLlqDT6di9ezcHDhygsbER\nh8OhdReFBzrvqd5LL73EW2+91f8g9qeeeor169eTkZHBhg0b2LlzJ+np6WzevJnt27fT09PD6tWr\nmTNnjtvfPymGHlVVsdlsVFRUkJWVhcViYdKkSSQmJrrtbUzn07cgKi4uDn9/f627c8kCAwNZvHgx\nH3/8MUlJSW5Vg3ug9Ho9UVFRREREcPr0afbv3091dTUTJkwgKSkJb2/vIX0CJdzLefek6Ohonn/+\n+f6/5+XlkZGRAcC8efM4cOAA2dnZTJs2DaPRiL+/PzExMRQVFQ1er8Ww03cbU11dHfv27WPXrl2E\nhYWxfPly0tPTMZvNQzKMVVWlrq6OQ4cOMW3aNK274zTx8fGEhIRw6NAh7Ha71t25ZN7e3sTFxbFi\nxQpiY2PJzs7mo48+ory8nN7e3iE7EyDcy3kDedGiRf9xo//ZO56fnx+dnZ1YLBYCAgL6v242m+no\n6HByV8VwpSgKra2tHD16lJ07d9Ld3c3ixYuZM2cOoaGhWnfvktjtdj744APmzp07pG5zOh+9Xs/M\nmTP55JNPqKys9JjAMpvNZGRksGzZMsxmM/v372f37t3U19fLNLa4ZAOeazl7esZisRAYGIi/vz+d\nnZ1f+roQl0JVVXp6ejh58iTvv/8+eXl5TJkyhcWLFxMdHe0Rl0Rqamr6r3970tSnTqcjKiqK+fPn\ns2vXLrq7u7XuktMYDAbCwsJYsGABl19+OY2NjezYsYOsrCw6OztRFMVjTkCEaw14uWBycjKZmZlM\nnz6dvXv3MmvWLNLS0vjtb3+L1Wrtf5ydO9YIFkND321M1dXVFBYWUlZWxuTJk0lMTBzyI+Kz9V07\nnjNnDt7e3lp3Z1BkZGRQWlpKcXExkyZN8qiTDr1eT3R0NGFhYZSUlJCfn09ZWRkTJ04kNjYWb2/v\nIXkZRWhnwIH8wAMP8Oijj2Kz2YiLi+tfgbh27VrWrFmDqqqsX79+yN7uILSlqirt7e1kZ2eTl5fH\n2LFjWbFiBSEhIR53cKuqquLUqVMsXrxY664MGi8vL2bNmsU///lPxo0b55G/R39/fyZNmsSECRPY\nv38/H3/8MaWlpUyfPp3Q0FC5TUpcMLkPWbgFRVGwWCyUlJRQXFyMTqcjPT2dcePGeeTosa9E5sSJ\nE7n88ss9LqTOZrVaefvttzEajSxdutQjf5997HY7NTU1/XcAjB49muTkZIKDg4fEQzeEtuTUTWiq\nb3r69OnTZGVl0dTUxNSpU0lISPCIW4C+zqlTp+ju7uayyy7z6DCGM6PkJUuWsHHjRiorK4mPj9e6\nS4PGaDQyduxYRowYQXl5OZmZmf0PrUhMTJRpbHFOMkIWmlBVFUVRaGxsJD8/n5KSEqKjo0lPTyci\nIkLr7g0qRVHYsmULU6ZMITk5WevuuMyxY8fIzc3lhhtuGLK3qQ1UZ2cnx48fp7S0lPDwcNLS0oiI\niJBgFl9JAlm4XN/0dEFBAcXFxZjNZmbOnElERMSwWHtQUlLCrl27uOWWW/D19dW6Oy7T1dXFyy+/\nTEJCAvPmzRs2U7h2u53W1laysrKoqakhIiKC6dOnExQUNGy2gbgwEsjCZVRVpbe3l8rKSrKzs+ns\n7GTKlCn9FY+Gg97eXp599lm+8Y1veFQhkAtVU1PDyy+/zE033TRkH6BxsRRFoaysjIMHD6KqKqmp\nqcTHx/fPFsiIWcg1ZOESfYtdcnNzqa+v738akyfdxnQ+qqqSk5ODn58fqampWndHE5GRkWRkZHDk\nyBEiIyOH1QpkvV7P+PHjiYiIoLi4mBMnTlBaWkpKSgrjxo0bVrMl4qvJCFkMKkVR6O3t5dixY+Tk\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(plt.imread('./res/fig2_1.png'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "the solution for components failure (loss of node or rack):\n", "\n", "1. Files must be stored redundantly.\n", "\n", "2. Computations must be divided into tasks." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.1.2 Large-Scale File-System Organization\n", "DFS: distributed file system\n", "\n", "1. Google File System (GFS)\n", "\n", "2. Hadoop Distributed File System (HDFS)\n", "\n", "3. CloudStore\n", "\n", "It is typically used as follows:\n", "\n", "1. Files can be enormous, possibly a terabyte in size.\n", "\n", "2. Files are rarely updated.\n", "\n", "manage:\n", "\n", "1. Files are divided into chunks. \n", " Chunks are replicated at different compute nodes of different racks.\n", " \n", "2. *master node* or *name node*: another small file to find the chunks of a file.\n", " master node is iteself replicated, and a directory for the file systme as a whole knows where to find its copies. \n", " The directory itself can be replicated, and all participants using the DFS know where the directory copies are." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.2 MapReduce\n", "All you need to write are two functions, called Map and Reduce.\n", "\n", "a MapReduce computation executes as follows:\n", "\n", "1. Map function: Map tasks turn the chunk given into a sequence of *key-value* pairs.\n", "\n", "2. The key-value pairs from each Map task are collected by a *master controller* and sorted by key. \n", " divide by key: all pairs with same key $\\to$ same Reduce task.\n", " \n", "3. Reduce function: The Reduce tasks work on one key at a time, and combine all the values associated with that key in some way." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n3EUH2Mcff5wnn3wSl8tFXFwc48ePR5Ikbr/9dm655RZUVWXWrFm/qSrMpi/+g7n3SnRaiY79xvBs\ndzeqMx+Antf0wTdAx7COICkqyG7Q1rUFajx5LWnx9fPG09eHmPBAgnyiCTZvbSxasODF5xk29Qn+\nEhOABBiihzMu+F/cdO0g7nrmI/7eQ3TNaOsa7sPt2rVrY0MCh8PB7t27+fbbbykuLiY+Ph5vb28O\nHjzImjVrmD9/PjNnzmTmzJnExcWdsVq5pTQU4T916hTff/895eXlJCUlXfYi/MKlEQ0ChNNdUIAN\nDw9nwYIFALRv3565c+ee9ZgZM2YwY8aMJplUUFRfDmxKIefWfvjpHWyZu5U+t/UCpe5IXlUUFBlQ\nVSRJh1Z1YrU5qKmpRVHtWO2Oum47an2XO1lGkX9aOHXnMy+y7fP/4/kFnfnHdUPRlfxI4sOfEDdi\nOR+88xSDB/bl+sExTfJamlNTd/G5kPHagobTwjqdjmHDhjFs2LDGbPCLL76gsLAQVVUpLi7mtdde\n49tvv+WGG25gypQpREdHt9jrrK6u5vjx441F+Lt27dosRfiF36ahQcCaNWtEg4CrXKssNDHszicp\nGnMfNz2mYbRPLY4u0+mSf4ya6loKThRQYqkmI08hpqQIjSWGSH0W73y+jKrdi7FpD7L5h92ocj6K\n201xWRm2rCNUnirjx6xsyiuthFk68NfbB3Ddg9cTqP+K2ztl8PbbLl6bfQN56QcwnbP8XusmSRLF\nxcUcP3682cYsKCjAw8Oj2cZrSmazma5duxIVFYXFYjkjiGZlZfHqq6/y+eef89BDD2G321tkjgsW\nLMDpdDJmzBjat2/fbEX4hd/OYDAwbtw41qxZw7x580SDgKtUqwyw5vgJzPvfKyzbtIfAmD7MvG0U\nx9JXcv3v7kdzIpNsbTHx1/8RL00NOlM77v/nX9m6/yDdR03jn71vo3+UF4fXSjx4yzSspQXYahV+\nf1M3du05Qu/hU9Bl7yFi/HU8McuP2pNHsQ7oTr+uW9izYytho+/hmp7hLf0WXLSQkBA0Gg3bt29v\ntjGtVivDhg1rtvEuh969e/PSSy+dteNrWExUXV1NVVVVs89LVVV69+5N7969RUnDNkqn0zFq1Chc\nLpdoEHCVapXt6uqoyLKCpNGg+bUPpKqiqGpdmzIuZRVo3T2wqqoiaTS/fH9tK9awEKa5taXbWy7V\n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\nrkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(plt.imread('./res/fig2_2.png'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.2.1 The Map Tasks\n", "The Map function takes an input element as its argument and produces zero or more key-value pairs." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.2.2 Grouping by Key\n", "Group: the key-value pairs are groued by key, which is performed by the system.\n", "\n", "partition: hash keys to reduce tasks." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.2.3 The Reduce Tasks\n", "reducer: the application of the Reduce function to a single key and its associated list of values.\n", "\n", "a Reduce task executes one or more reducers.\n", "\n", "why not to execute each reducer a separate Reduce task for maximum parallelism?\n", "\n", "+ There is overhead associated with each task we create. \n", " number of Reduce tasks $<$ number of reducers.\n", "\n", "+ There is often significant variation in the lengths of the value lists for different keys, so different reducers take different amount of time. $\\to$ skew. \n", " if keys are sent randomly to less Reduce tasks $\\to$ expect that time is average. $\\to$ number of Reduce tasks $<$ compute nodes." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.2.4 Combiners\n", "If a Reduce function is associative and commutative, (the values to be combined can be combined in any order, with the same result), we can push some of what the reducers do to the Map tasks (combiner)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.2.5 Details of MapReduce Execution" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\ngJkPTfW7bzY0yk0AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(plt.imread('./res/fig2_3.png'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.2.6 Coping With Node Failures\n", "1. Master fails $\\to$ restart.\n", "\n", "2. Map worker fails $\\to$ all the Map tasks assigned to the worker will have to redone. and also inform each Reduce task about the change.\n", "\n", "3. Reduce worker fails. $\\to$ resheduled on another reduce worker later." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.2.7 Exercises for Section 2.2\n", "##### (a)\n", "Yes, significant skew exists. The word frequent is not equal in text.\n", "\n", "##### (b)\n", "the skew should be insignificant. \n", "\n", "10,000 more significant.\n", "\n", "##### (c)\n", "\n", "combiner can help reduce skew." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.3 Algorithms Using MapReduce\n", "Operations that can use MapReduce effectively:\n", "\n", "1. very large matrix-vector multiplicatons\n", "\n", "2. relational-algebra opertions" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.3.1 Matrix-Vector Multiplication by MapReduce\n", "\\begin{align}\n", " \\mathbf{X}_{1 \\times n} &= \\mathbf{M}_{n \\times n} \\mathbf{v}_{1 \\times n} \\\\\n", " x_i &= \\displaystyle \\sum_{j=1}^n m_{ij} v_j \n", "\\end{align}\n", "\n", "We first assume that $n$ is large, but not so larget that $\\mathbf{v}$ cannot fit in main memory and thus be available to every Map task.\n", "\n", "+ Map:\n", " 1. read $\\mathbf{v}$.\n", " 2. produces $(i, m_{ij} v_j)$\n", " \n", "+ Reduce:\n", " simply sums all the values and produces pair $(i, x_i)$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.3.2 If the Vector $\\mathbf{v}$ Cannot Fit in Main Memory\n", "We can divide the matrix into vertical *stripes* of equal width and divide the vector into an equal number of horizontal stripes, of the same height." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(plt.imread('./res/fig2_4.png'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Each Map task is assigned a chunk from one of the stripes of the matrix and gets the entire corresponding stripe of the vector.\n", "\n", "particular application (PageRank calculation) has an additional constraint that the result vector should be partitioned in the same way as the input vector.\n", "\n", "We shall see there that the best strategy involves partitioning the matrix $\\mathbf{M}$ into square blocks, rahter than stripes." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.3.3 Relational-Algebra Operations\n", "There are many operations on data that can be described easily in terms of the common database-query primitives.\n", "\n", "a *relation* is a table with column headers called *attributes*.\n", "\n", "Rows of the relation are called *tuples*.\n", "\n", "The set of attributes of a relation is called its *schema*.\n", "\n", "$R(A_1, A_2, \\dotsc, A_n)$: the relation name is $R$ and its attributes are $A_1, A_2, \\dotsc, A_n$." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nvnwBRdsTdD6mN2lGOQvmLyGpuslr3YKKDWtYXxKlQ0F/erRvzXlD89FLFzN5zvzdDvm3rJzN829P\n57Rhl1Fq3eZSAAAgAElEQVQchQPQay7EYUsSshAHnM6yKVN58d3xZJ5yFbeecwTvvvgUC4vT+N+7\n/8NX+DXvjpnErAXLiZsuWuW3RkuEWRp1ctdlZ5LhVlGwauU2RXVwytlXcsQgJy0aBsA2MSwDsjNx\nuR3sb7mnaMVmPn7lRb5ctYkHXnqJtR9/yNufzuHK0c/S1bmBcWNeY/myRWyL2OS2zsdjVpG9MMnT\n9w8jO+iubvnXaqfb2HqUT8d9gNlrKGf06cTzk5dWl2m0bVkgRAgkIQtx4CkeTrnhVnwtVMat1miS\n14u/3XkZf7l/KioK+QNu4L9HDGDoJcOh1Rk8POp6fJHtGN5sgq6fL78YaNCYAGAZKbYWzue5sZ/T\nadCF5GYH93ssqkHzLoz6992svX4kqprOdff/Az15Mw40jjjuDF7udyKPXnEqc53HcM+dN9KEMsKO\nHDJ+rvyibVL41et8vWALl9zdC7dVTioWJhQKEU934nNL7XQhJCELcTCoKpqm7my5aoq6s0tZUapv\nUxSFsy46m7Y56WiNM35+WzVYls66Rd9wwy0PktX5RP5x+Slk++sguSkKqqrubLkqqLuKVSgqqupA\ndedy1tlD6d62GU6l+d63Z1bx6fivWbV9PS88MRKPFWfZ8uUUzp/B5SPu4YITusmEFvGHJwlZiIPI\n1E2isSjh0koSqRTJVAI9lSAeT2JZoGIQi8Xx+Tyoqopl6iQTKeKxFIZukYjHiEbj+DxuzGQV8yeP\n4ZnXvyS/z8Vcc9kAStetI+hqQ7rfvb+91jvYJONJwuFyKqpi+I048Xgcw06Qsh0opkUyFkfxeHBo\n1fEmkin0eBLbskklk0SjUVxuH6ddcx3ty6rQkzqV29YSz2xJv4JedG6ZU0exCnF400aNGjXqUAch\nxB9ByfolvPz2ZErWr2bC2+9SuLGEuCuNxsZGxo77kDkLllJaVsmyxRtp2ak9DfweStYv4vUXXuXr\nb6Yzf+YytlVuY/GqYlq2bs3KD1/ntr8+xkbVT/s2mSyb9SkvPP8BHfufSIvstL1WUCotLWXDhg10\n6dwZt8ez5zsly/nk40l8X1jMss/f4qNpi6ioKqOsLMSsSR/y7ZT5bCgpY23ROrJbtCMnw0fVhu95\n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\nAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(plt.imread('./res/fig2_5.png'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*relational algebra*: several standard operations on relations.\n", "\n", "1. Selection $\\sigma{C} (R)$: select tuples that satisfy $C$\n", " + **Map**: produce $(t, t)$ if $t$ satisfies $C$ where $t \\in R$.\n", " + **Reduce**: simple passes each key-value pair to the output.\n", "\n", "2. Projection $\\pi_{S} (R)$: produces subset $S$ of the attributed\n", " + **Map**: output $(t', t')$ where $t'$ is subset of $t$.\n", " + **Reduce**: eliminate duplicates, turns $(t', [t', t', \\dotsc, t'])$ into $(t', t')$.\n", " associative and commutative $\\to$ combiner\n", "\n", "3. Union, Intersection, and Difference\n", " 1. Union:\n", " + **Map**: turn $t$ into $(t, t)$.\n", " + **Reduce**: Produce $(t, t)$ for input $(t, [t])$ or $(t, [t, t])$.\n", " \n", " 2. Intersection:\n", " + **Map**: turn $t$ into $(t, t)$.\n", " + **Reduce**: produce $(t, t)$ if input $(t, [t, t])$.\n", " \n", " 3. Difference $S - R$:\n", " + **Map**: produce $(t, R)$ where $t \\in R$, or $(t, S)$ where $t \\in S$.\n", " + **Reduce**: produce $(t, t)$ if input $(t, [R])$.\n", "\n", "4. Natural Join $R \\bowtie S$ \n", " + **Map**: produce $(b, (R, a))$ for $(a, b) \\in R$, or $(b, (S, c))$ for $(b, c) \\in S$.\n", " + **Reduce**: $(a, b, c)$ when input $(b, [(R, a), (S, c)])$.\n", "\n", "5. Grouping and Aggregation $\\gamma_{X} (R)$:\n", " where $X$ consists of:\n", " + a grouping attribute,\n", " + an expression $\\theta(A)$\n", " \n", " Let $R(A, B, C)$, for $\\gamma_{A, \\theta(B)} (R)$:\n", " + **Map**: produce $(a, b)$ for each tuple $(a, b, c)$.\n", " + **Reduce**: apply the aggregation operator $\\theta$ to the list $[b_1, b_2, \\dotsc, b_n]$ of B-values associated with key $a$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.3.9 Matrix Multiplication\n", "\n", "$\\mathbf{M} \\times \\mathbf{N}$\n", "\n", "grouping and aggregation\n", "\n", "##### two MapReduce step\n", "1. 1st MapReduce\n", " + **Map**: $(j, (M, i, m_{ij}))$ and $(j, (N, k, n_{jk}))$.\n", " + **Reduce**: $((i, k), m_{ij} n_{jk})$ for its associated values of each key $j$.\n", " \n", "2. 2nd MapReduce\n", " + **Map**: identity\n", " + **Reduce**: for each key $(i, k)$, produce the sum of the list of values associated with this key.\n", " \n", "##### one MapReduce step\n", "+ **Map**:\n", " - for each $m_{ij}$, produce all pairs $((i, k), (M, j, m_{ij}))$ for $k = 1, 2, \\dotsc$. \n", " - for each $n_{jk}$, produce all pairs $((i, k), (N, j, n_{jk}))$ for $i = 1, 2, \\dotsc$.\n", " \n", "+ **Reduce**:\n", " Each key $(i, k)$ will have an associated list with all the values $(M, j, m_{ij})$ and $(N, j, n_{jk})$, for all possible values of $j$.\n", " - connect the two values on the list that have the same values of $j$: An easy way to do this step is to sort by $j$ the values.\n", " - then multiply and sum." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.3.11 Exercises for Section 2.3\n", "Ex 2.3.5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.4 Extensions to MapReduce\n", "some extensions and modifications, share the same characteristics:\n", "1. built on a distributed file system.\n", "2. very large numbers of tasks, and a small number of user-written functions.\n", "3. dealing with most of the failures without restart." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.4.1 Workflow Systems\n", "idea: two-step workflow (Map, Reduce) $\\to$ any collection of functions\n", "\n", "two experimental systems\n", "+ Clustera\n", "+ Hyracks\n", "\n", "advantage: without need to store the temporary file that is output of one MapReduce job in the distributed file system." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(plt.imread('./res/fig2_6.png'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.4.2 Recursive Extensions to MapReduce\n", "Many large-scale computations are really recursions.\n", "\n", "mutually recursive tasks: modify input (flow graphs that are not acyclic), so it is not feasible to simple start when some node failed.\n", "\n", "**solution A**: split to two step $\\to$ backup data\n", "\n", "Example 2.6" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXUAAAFVCAYAAAAQUX/+AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd4VFX6wPHvnZZMMklIQgIphAAJHekdAREUdRFBsGDb\nFXXtvaCiqOuuu3Z/u+qqWLEhslgQlaIUUbpAICEkBEjvmWR6uff8/khAUAwgCTNJzud5fCSTmZv3\nTnnn3HPec44ihBBIkiRJrYIu0AFIkiRJTUcmdUmSpFZEJnVJkqRWRCZ1SZKkVkQmdUmSpFZEJnVJ\nkqRWxNCUBxNC8Nhjj5GdnY3JZOLvf/87nTp1aso/IUmSJDWiSVvqK1euxOv18vHHH3PPPffw1FNP\nNeXhJUmSpONo0qS+detWzjzzTAD69+/Prl27mvLwkiRJ0nE0aVK32+1EREQc/tlgMKBpWlP+CUmS\nJKkRTZrULRYLDofj8M+apqHTybFYSZKk06VJM+6gQYNYs2YNANu3b6d79+5NeXhJkiTpOJSmXNDr\nyOoXgKeeeoouXbo01eElSZKk42jSpC5JkiQFVpPWqUvByefz4fF4Ah0GAHq9HrPZHOgwgoqmaTid\nzkCHAdRfbVssFhRFCXQo0h8kk3ob8N1337F48WKMRmOgQyExMZE5c+ag1+sDHUrQKCws5IknniAk\nJCTQobBt2zZWr14dFLFIf4xM6m2A1+vl2WefJTIyMtChsG7dOmSP39Fqa2uZM2cOaWlpgQ6FGTNm\nBDoE6RTJekNJkqRWRCZ1SZKkVkQmdUmSpFZE9qlLR9P8OFwehABzWBh63S9VEHUOFxFhobIyopn5\nvB48Xj8KoDcaMZmM6P7gc675vNg9PsJDjdi9EGk2ytevlZMtdekomt/Fd/97ky/W78KrCjRNaxjY\n1Phs9QZUrf62X26Xmpq94iAvPfN/bNq2iTfmv86a7Xn4G55vcej/Df/WhOC3r8Ivv7MWZ7Jg0TJq\ni/fwwU/5hx976PXTtGM9XmrJZEtdOorOFIFJuEgd0Bec5WTsLYDIePqkRjOoRzqO6iJ27S2msqKW\nsRPHE20xBTrkVic6KRV7xR5GjHyAs4akM/qs23jhrb8RHpmMuSYLU4fuOCqL8TiqsYcmMqxvGvoj\nGt+ax86ejF04QuIZ3LcnasU3KJZRjOlqprpkP4WVdmwVTtK6xZBd5GbUyH6Y9LJ911rIV1L6DU1V\n8auCf9z9GD5LDN+/8RA5NXae+/RryrO/594nPiXS9j0r1+bLVl6z0NA0AQgIS2Zkip3sXRu5d1Uu\nxroNLF95kI9eeY4axcxTf7mUDdt3k7FzJzt37mTbtl0se+pJNuaX88oD91BU60IA9vzNPPzlHsr2\nLuP1T1eTu30Zi7OsfPfU3WSUBcfEJ6lpyJa6dBS7zY5f1M8s3Fho4a9JSfTr359yNQJhNBNqNmBI\nGsywgXY+z5bLKjeHQ10kqqrhclvJ90dxbowF014vYWGh+DQjMekJDOx7BudHeCgtKKDYVYtQFHw+\nAwcKbXQZF8etj91PhEGAH0It7XFpOjondaRTxy706rQP/8A+lCeouP1qoE9ZakIyqUtHWbnsU37K\nreb66UZmnKPwzdc/YKwMZ6Kowpd3kMK+8UR4/BSVeLC6KxAiXQ68NbG60gJq6rysX7uCwn05nHnF\nLQzrHk7p64v42mHDnjQAT3kBa75fyb6+F3DpuZOICf3lo7zZUM4Lny2jolcPwkMVCit8VFRWILLr\n2Jteg59oqq0l2EvKqVTDCa91IohCvoqtg1zQqw348ssvGTdu3AnNKNVUFU2AwVA/jd9tr0MfHoGx\niRL3unXrGDlyJAaDbE8ckpGRgdlsPu6MUqH6QGcEBC/96x6uvP3vxISGotP99rXxez3oTSEnnahn\nzJjBBx98IJcJaMFkn7p0FJ1efzihA4RaIpssoUunRtEbURQQrko6JfQna28Jv5e1DX8goUutg2wu\nSSdFCAGKIhNGAOnC4rj4mmuO8RtB/XW3gvwebrtkS106mhBo6u/1yGnk5+6l1uNHdtoFivjdfX+F\nJjiQuZM6j/80xyQFE5nUpaP4nFX8nF2GEBp+vx9V1RoqMVRUzc+7z79Abp0Xv+qXk48CQPPXkZ2d\nj6pp+H0+/Kp2+LXy+728dP2l7K1w4Pf5ZblpGyW7X6SjrPnkv/xjq5nFj0zg86U7cJrjmTaqC6u2\nZBKZ2IvunXvhLN/H859sZtalM+nUPiLQIbchgp3v3c+dK+J49v7JbN25nxpPKlcN8LBsdzGhSSMZ\n3ikEx8Et/HtJMVf+9XLahxhkV1kbI1vq0lH69O5EzzGTCPVVExuTyMYN31FRmMdP2/MwmQwYqOGl\np59hyvSZJMfKhH56KaSNGseEcaMxuB2kpLbnv6+uo2jXFrIOHiQ0VMEYCa9+uJyzpv6JOJnQ2ySZ\n1KWjKHqFyrpqCnatZj8WEtsLIjunc0H3Ct5Y/j1Or4Y+Qs8XG3bg8sm+29NNpzPgttdxYNuP7HNG\nY0HD1G8SI1NCmPvqV9jtEOIrZ/mKDNx+TXbBtEEyqUtHieo0CGXzZzgtvVi3aiWKy8eOrD1YY8Zy\n9ej+WPU+rrzsFjKXvMbPBypl0jjNzKkjcWzegGrpzJaFn3Nev31s/+krKkM6MWfWOLzRw5h22SwO\nrFjE7iI78gVqe+TkozbgZCYfQX0VxeHrdkVBQaD6VXR6/SnPHpWTj37rRCcfHSKEQFFAEwqKECg6\nBU3TUBTllF8fOfmo5ZOfLOk3lN/MUFTQyyQcNA4lbp0ChwrSdTp50S3Vk59UqVFHXsjJNV6CUcOE\nIzkhTGogv96lRnldDkrLyvBrspcu+Aj8LhtlpeV4VLnSolRPJnXp92luXn/+XQ5m7eDx+d/j/d2Z\nplIgqF47T9wxh317VvPsuytQ5fCYhEzqUiP8dZnssXoYPHo4a+fcRoXLF+iQpCM4Kg+S1f1cho09\nH+fq+Xj8MqlLMqlLjfBVF6MaI9HpDSQrRTg98hI/mHgdZQzq0gGdLgRTrL9htySprZNJXfpdITEp\nGFQ7Xo+HYkNPosxyXD2YhEalsDVjP16fE0NdKHKbUQlkUpcaoWvXh/NSI/j623Vc+d8FxIbKpB5M\nwmI7c3FsMV99sZi+l9xJyBHr4Ettl/yUSo3Qc8HN1+LxeDGZTLKkMcjo9CYuv+0efH4/Br1BrqEu\nATKpS8elyNmFQc4oJ4ZJR5DdL5IkSa2I/IpvI7xeL16vN9BhoMpJMsfk8/mC4vUB5OYnLZxM6m1A\np06dyMzMxGg0BjoU/H6/7Jv/lXbt2pGZmYnVag10KAwaNAi9Xg64tmRylUZJkqRWRPapS5IktSIy\nqUuSJLUiMqlLkiS1IjKpS5IktSIyqUuSJLUiMqlLkiS1IjKpS5IktSJy8pEkBViwTRWRk8NaNpnU\nJSnA3G43VqsVna7+wllRlMOJ/sh/H3K8207l97W1taSlpR2ORWp5ZFJvA4QQQdUalAnjaLm5uRQU\nFJCcnBzoULjnnnv48ssvCQ0NDXQo0h8kk3obkJeXxw8//BAUl9VxcXFMnjw5KGIJJt27dyctLS3Q\nYRAVFSVfmxZOJvU2IDMzk2nTphEZGRnoUFi3bh2qqmKQa4BLHGs8QTnmZh/19/v17wRC/LExgGMe\nTwgERx9PIFBQjnpcsH/pyetgSZICxuf14HK5cDqduFwufL+zNLPfacOvaUfdJlQvLo/vpP+mEAK3\nw4b6q426/V4Pbq//yHvi93n55W4Cr8dD8HRkHtsJJfUdO3Zw1VVXAZCfn8+sWbO48sorefzxxw/f\n55NPPuHiiy/msssuY/Xq1c0SrCS1CQ1jIE0zFtJwDFHfqg02n7z3b75esZQbb7ydlcve4ZuVuWhC\noGnaEecu2Ln4IQqqXYjDvwNf1S6WfJWJpgk0oaEdkaSF5qXaaj/i/vXPgaZpqD4XL91+Hftr3Gia\nOJykM795k1d/yD18f3vpPr7+aguqJhANt2Vv+YldxdagGqP6teMm9fnz5zN37lx8vvpvxKeeeoq7\n776b999/H03TWLlyJZWVlSxYsICFCxcyf/58nnvuucP3lyTp5DhtVg4eLKC0pJSyyhrcPv8fbh16\nHbXsLyzF67Kxr9wedMmo//jpTBk3hDVrrZw19ToG9ghj746f2fDdWsprnfVJWfUR2W8m0WYjJQey\nWL/hJzIPlOFQY+nbI4qinJ1s3bmdZct/wK1qgKDghzeY99zHFJcW8OOGjWzMLMVRns/mTZvILHSR\nVLoZW3U+637YgsNf/yURH6tnT1Ymixd/Ta3Txxv/WUSPkWfgt5ewedN6Nu8+QHqfzsx99L/YvMG7\n2ctxk3rnzp15+eWXD/+8e/duhgwZAsDYsWP58ccf2blzJ4MHD8ZgMGCxWEhNTSU7O7v5opaaUX1r\n5uiWUsNvtOBKCK2V8JQz+5Jr+Tl7G1dfcj7Pfrgaj19FExpCUw+3PjVVRT3G6wQCTVXRNEFV/s+8\n9MrbVBVs4/U1++pbtZqKqqr1rVb1WI8/ffqld0OnKNQ3pA2E2TfxxH9L6N/LwJ3P/Q+fKkDT2P3J\nn9lbVsa/33yT/unJXDhgIvv3fM8r768id9dqFmT6ee/FOWSUOQGFqGgznbqns2b5IvRxJqb/aQGr\nH5vLXreP7L3laCb44cslqDGJWAw6FAU0xYBjj5VOIoNNOw7gM0NSOwPvzZlBhx4D+fTrL3GHJjGt\nagH51c6APWfHc9zRqkmTJlFUVHT45yPfAOHh4djtdhwOBxEREYdvDwsLw2azNXGo0umgee1s37YD\njy6SgQP7Emo8NCgkWLstizGDeqHXBfdAUUsXHteZoYMTOWvMZM5fMYGZ509mYWghjvhRdNu/EFOf\niyjcsRafo5RsLY25t84i3Fi/W5EQ4CrJYfH/Pueg1ol7brmQrtEb8Wk6ks1GMjd8zqqfi6nKrmDC\n+X34YlUBc5+8ndjQwA1cC6EBCiA4sHkL7UdMxxTbk/yybfiEwGQMJTmlP5pagbs6lJDoDszuXERo\nZDsUpYqY6BSm9+jJdx+F4HDX9xAY9HoURSU1zETW3ho0g55+d9zF6//9N7s7XszFZoV3v97Mc+f+\npWGwFTTVTeqkccRGbMIhFIReh6K52PBTHOcKuP/PVxBhUvCHCpxH9b0Hl5N+JY+sMXY4HERGRmKx\nWLDb7b+5XWp5dAYzOT8uxn/mbQzGi7XaiWI0ExGmx+Z24PO4sDrduN0+4jrEYTLIsfbmcLjtpA+l\nY2QoISY9H+bVsWh4Ah9v1ajan8Fld/2D7WcN4YvEcDzOWgTgdhvxb/uekMkX4Vy+DKtjMggwaU4+\n31fLxQnVFDk7MmmEoDh+OL0OvkR2+WxGpUQF7FyLcnYSHe2g0uak95QrMD7xMavj93PtZaMJ1evq\nxxYQCFMS6WE+Pv/yK2on3oNmrcbvr6GsqJbCkO7UmcOorq5FdI3G1L4be1d+i7GTlyK9Sq/4zaz4\nzM6wyVOoWWelpCqGh247jxfvfZqkBX8jrb2ZihorZRm7KEgtZX9ULbVWjQqHnkuu6MO/Hn+cfuOn\n8OdJPdlQN4IpsZaAPV/Hc9JJvXfv3mzevJmhQ4eydu1aRowYQb9+/XjhhRfwer14PB7y8vJIT09v\njnil5qYzEBkdR3hSPD8tfpesCj9l1XXcdPOlrNm2j27kce/Tq4nRl3H9oy9z5sAEZLu9aal+FdWv\n4nQ6sdUWUGrsSnqHCLQ9FdRUVOPTQ0hsBBajjuTOkaQNHEpH8y+P/2pPBh269uDCh3ti0ryoboFi\nMKN5VcLCwmgXkoQl3IWpQxRlEYajBhgDIXXoNHbumNbwU1+efmEeDrePieFmFEWQt2sztbVOoo1m\nbn72Kew2FzMvuhhFgflnH3Gg0UsP/9MYP4ZX3xqFQQd+TYfysIreqMfv8zPlXAOKciUAF0/95eED\np85lfsPPE4DipFx++jmLqfc8ydl+FaNRz54fPuX8vz1CXHjg9/v9PSed1B944AEeeeQRfD4f3bp1\nOzyR5KqrrmLWrFkIIbj77rsxmUzNEa/UzA51rwkh+PuiOj754C5+XvQMO9ztqfT7iTAbqEsYxye3\n2/gi2w4DAxxwK1Sc8SP7iu38+/nHySuN4rl/P0OCsQrvg9cxv7obYd2rEQd38twz/yLlz68wpHvK\nUV1iV9xzGVOunE1Y3+t48eoINpbaGLB3L7pv9/FNqMDnN5K7fweV+nRq/PFQUIZIbRc0X856g5FI\nyy9J01VThm3Mf5iQEAEoWCJOrJVsaOhVMOgAXX33lMF44ikvcdClTPX70SkKBpMREHQbOo2eIYag\nrlU/oTNMSkri448/BiA1NZUFCxb85j4zZ85k5syZTRuddNpt/mk9+2tcDNIrJBo2sW1vETaHie56\nH16rDac7AlHnx+3y4/E5qZ+tEeioW5dOAyexZNmkX91qYfXqbwEdaF6efrQb19/5IF3bR/wmwUSl\nDmb12rUoOj0KsHDUDAAmTDnyXvW3MeWTZjqLpqLQ58wL6ROgv20wGI/62RQavC30Q2SHqHQUzW/D\nFNeXIXFh/PulJ7Dm7MbS5UxSQ5xM7hyHKzSJm6akUKV1JaWrARH0UzFaD0Wpr9IQfhfnX3w9Xtvv\nV2DoGhJ6WxBsaxsFmpyrLR1lxNjzGNHw74iOvZh+ca/Dv7tqdicA+g+u/7n7aY5NqqcLiaLfoN/2\ne9XXdPtR9AZ0Qdw90NQcDgdhYWFB3SVyOsmWuiS1KAK//9gTX4SmsvZ/H1Bo9Z7mmALr448/liXU\nR5BJXToJArfLie9Xa3BIp4vAUfIzH3y4AqfbRVlZOVV1TlSvi/KycmrsXjLfe5ayulpKS8rxtpHJ\nYl988QU7duyQXTANZPeLdBTh91JtU4lpd6z1tFUW/vdVhv35Fnq2CwHkLjmn28Hv3+LjHzqRlGgn\nr8rLt98KHj2rhhXucMJjhxJt0XNg07esqw5j9rUXYVT0x1z1sLVQVZXdu3fz5JNPsmzZMrn6J7Kl\nLv1Kzk+Lue/Vr/G6rezcsZ1dewvxOOrYlZVFXnEtoT4DdkcdP27aRp2zbV3mB55C6uDRjBzcj97J\nXYjWCX7atZ+QzjFs/PYLwuJDCG2vMO+dNUybPplIQ+tO6ADFxcXU1dWxadMmqqurAx1OUJBJXTpK\nqOJEn5yML28xhQf9vPrxG+zcsJrsCg+ZBWUIVWPT10uwh8QT1gLKu1obxRBCTWE+n3zwHlZLMu1D\nasjIgXnz7uE/j75Deb7g4cvTueOGV7G6W/+ietu3b8fhcOB2u8nKygp0OEFBXqtIRzGaDAi9Ca8+\nhnKtjlCvj+T07nz+9B2og29lMGW89NFq3p40HZ1cA+a0M3eZzIzxO0jqPIG8glreeHwK0R2i8BjC\n+fDde1ALzic0NZWuSQfxq+Lwuiat1cCBA3nzzTfRNI0+fQJTzR5sZFKXjhIa2Z7sjcvIVErZVtgf\nb9V+dh3Yx7l/+SdLd+4lv1bhqXse474HHuONF56kd2J0m6mHDgq6MEafPRKA1GPtftdpdP3vEpNO\nY1CBk5yczPDhw6mqqiI2NjbQ4QQFmdSlo0T3vIDvnz0XvVHPSCFQdLPRIXA7nIwZPBCdchkAF18w\nOcCRSoe0hC3WmpNer8ftdgc6jKAh+9Sl3zCY6te20Ot0DW8QhdDw8DY1oaXFEAK3y0MbqV6UToBM\n6tJxCbkYQNCqydvGDZc+Q60neNf3lk4vmdSlRqk+D+XFRXJiR5CK7jYQb5Qb+a0rHSKTutSosv1b\n+Musy3H7ZdYITjoUgne/zNNBCHHU5j1tnXwmpEYldh/KBckGubxusDp8BdV2v3RVVSU8PDzQYQQN\nmdQlqQVzluWis1dxsKgm0KEEjM/nIzo6OtBhBA1Z0ig1yu/z4/WDzy/kuyUIhXVM58PP3gh0GAHl\n9/uJiopq02WdR5ItdalR5QczORiaRnZRrRwslYKW7FP/hWx7SY1KTBvCi+8MCXQYkvS7HA6HTOpH\nkEldkoKAEAJNrlP/h5SWltKvX79AhxE0ZFKXpAAzGAx89tlnQTHYZ7VaAx3CSTt48CBGo1wx9BCZ\n1NsIj8eDx+MJdBioatuuqT6WXr160atXr+Pf8TS47rrrAh3CSRFCUFRUJDfHOIJ8JtoAi8XCDTfc\nEBT9jmlpaZx55pmBDkNqJVRVDYr3dTBRhCxpkCSphdq/fz9r167l6quvliWNDeRXnCRJLVZubi5D\nhsjqrCPJpC5JUotVVlZGly5dZCv9CDKpS5LUYqmqKgdJf0UmdUmSWiQhhEzqxyCTuiRJLVJpaSlR\nUVGy+uVX5LMhSS2dEHjdHrQ2VMgmhOCrr75i0KBBgQ4l6MikLkktnVrBLWMvYY/VQxvK6+Tn55OY\nmBjoMIKOTOqS1NLpLEy98UriQtvOZiaaptG/f3+5PMAxyMlHkiS1OHl5edhsNvr37x/oUIKObKlL\nktSiCCF46aWXSE1NDXQoQUkmdUmSWpS6ujpCQ0OxWCyBDiUoye4XSZJalG3bthEdHU1qaqqcSXoM\nsqUuSVKLIYRg27ZtJCUlyYT+O2RSlySpxaipqaGiokJWvTRCJnVJaumEj9ydmTj9rX87vOXLl3PV\nVVfJVnojZFKXpJbOX8VD024mt7Z1Tz7SNA2Hw0HHjh0DHUpQkyvhSFJLZ+zIh3tWoDcYaa0NWCEE\nmZmZJCYmygW8jkO21CWpFTAYW29CP+S9995j3LhxgQ4j6MmkLklS0LPb7Zx11lmEhoYGOpSgJ5O6\n1ChN09rU6n9S8BFC8MEHH9C/f3+5zO4JkM+Q1Kiff1rF8j2lrXoATgpulZWVFBYWygHSEySTutSo\nTWu/ZvX2QkBmdSkwtmzZwv333y/LGE+QXCZAapRQVdDp5AdKCgibzcbLL7/M/fffL7teTpB8lqRG\nKXq9TOjBTqiUFRThVVvf5KNvvvmGadOmyYR+EuQzJUktnb+cawdOYXdN65p85Ha7qaurIy0tLdCh\ntCiy+0WSWjqhUllaRVR8HEZ967iqEkIwf/58xowZQ69evQIdTovS6NQsv9/PQw89RFFRET6fjxtv\nvJG0tDTmzJmDTqcjPT2defPmAfDJJ5+wcOFCjEYjN954I+PHjz8d8UuSpOhpnxAf6CiajBCC0tJS\nLBYL3bt3D3Q4LU6jSf2LL74gOjqap59+mrq6OqZOnUrPnj25++67GTJkCPPmzWPlypUMGDCABQsW\nsGTJEtxuN5dffjmjR4+WK6lJknTSbDYbr7/+OnfeeSd6vT7Q4bQ4jSb18847j8mTJwOgqip6vZ7M\nzEyGDBkCwNixY1m/fj06nY7BgwdjMBiwWCykpqaSnZ1N3759m/8MpGblcTlRDSGYDfpWPw1dCjy/\n38/SpUu56aabiIyMDHQ4LVKjA6Vms5mwsDDsdjt33HEHd911F0d2wYeHh2O323E4HERERBy+PSws\nDJvN1nxRS6fN/z1xM9e8/SOyTl1qbkIIvv76a+Lj44mLi5NVV3/QcatfSkpKuOaaa5g2bRoXXHDB\nUaVFDoeDyMhILBYLdrv9N7dLLd8FM2/ggYk9Ax2G1MoJIcjIyMDhcDBhwgSZ0E9Bo0m9srKS2bNn\nc9999zFt2jQAevXqxebNmwFYu3YtgwcPpl+/fmzduhWv14vNZiMvL4/09PTmj15qdr0HjWJIV9lq\nkpqPEIKysjJWrFjBRRddJGvST1GjfeqvvfYadXV1vPLKK7z88ssoisLDDz/Mk08+ic/no1u3bkye\nPBlFUbjqqquYNWsWQgjuvvtuTCbT6ToHSZJaKCEEdXV1vPDCCzz88MNyFcYmIOvUJUkKGJfLxTvv\nvMPMmTOJjY2VV4RNQG4hIkkB5vF4sNlsQdHtYLfb6dSp02lJrj6fj4ULFzJq1Cjat2/f7H+vrZBJ\nXZICbO/evWRkZJCQkBDoUHjsscf49ttvm70bxOfzsWTJEtLT0znjjDOa9W+1NTKpS4061DsnL4ub\n17Bhw4JijZNDY2fNyefzsXz5clJSUhg+fLh8bzWxwF/vSUGt8MBe9lbaj39HSToBhyYXRUZGMmzY\nMJnQm4FM6lKjFr35DM98kUEwjacLIfB43Ljdbrxef8PKhAK/39fIYzTcbjeqz3vUuQhNw+nxIYTA\n53ZiszuD6lxbi/rXzMOSJUuwWCyMGTMmKMYQWiP5rEqNumPeq7x+7cjgalEJwRevvcSHX63ik5ff\nZHe5E2fFATZs3IuqCYQQv0rMAtVdzQdvvE9l/h5+zq1Abfi9x1bOu99noWluvl/4EYue/g9Of4CT\nuvjlHE79C6bhGEIEbFleIQROp5PFixfToUMHJk6cGFzvp1ZGJnWpUXqjEV2QfQAVnUJE/nKUhH4M\n7x/JtW9s5ombX6JTv3SEz8Xe3FzyiirQtPpk5rFXkl9spbAuH0tiF+ZedS8ldV4AdEYz556RQm1p\nBh99s4dz77yVMENgz9frdmG11lJXW4fD7UXVtD+8SIPf46K61obq81Bp95z2qxAhBDabjXfffZdh\nw4YxduxYmdCbmUzqUovk10FGzg6+WrGQ289JRh09hIRwPas+fRWvzsi///4ZDp+G0JzMnXIlTvTU\nFRWD3sxL95lYu7EAAbir9nLb++tRdHrClRBMhsCvCuipK+Dma27mp59/4ubrr2T+0s34VBVNCISm\nIYRA07T6/46ZpA/9XlB1cBvPv/wulfnbeHlVDlrDY9UjjtNchBAUFhYyf/58LrzwQrp169Zsf0v6\nhax+kVocIQAdxFiiueyed+kQY+DAdiOKopK99AsGTrmZx5+4GJNeo66ilAWu0TySlExCWgKgEJ82\nBO9ePwCm8Hi8Sg3h7aIJC48mOiIk4KtRRnRIpXOSgXFjJjF59HD+dO6ldAi5DbV9fxKLlmPqdhbl\nOT/jdVRQoHTm2pnnEnrE5hieqkK+W/k9pUoCV8wYQwfjD2h6M71iwziway2b91RSc7CaYaO7smZz\nBbNvuoQoU9N9mQkh8Pv9bNiwgdzcXK6++mpZh34ayaQutTxCkFMBRkKIj4kERWP3riKcXoWe44by\n7P+9RueP4OmNAAAgAElEQVSoRC6ZeQb/+c/HnJO4hvn/60luRg5Wl4/sb74m8YKLUACXtRxfdi4H\n9mrk+SvxqBp6g47A5vUj+r+N7egZp+B21PBaQTmfDddYuLmO0m1LmXH/P1k4cTgpMe9gFG4AvF4D\nlcs+QjflcrbOf5VJ5wxBAMJeyOtbXQwdmsX6bDPnJFvZ6E9Bv+pRdk+/gFGdmmYBPk3TqKqqYvXq\n1SiKwtVXXy3XRD/NZFKXWhxFp+OuN1cdcYueueMKWL+7kPP++gznNDS1hepmZI+OzJm3CgMaxlmX\n4Kzcx9PaDXzRq36noOiuQ1k9fygAn749+XSfyjHVj2sKVFXF6awgzxXLtNhwwoud+Nw+NL2ByK4d\nSY6OYkw3C1EJSXQM+aXffd+yWIb2PYMZb78KRlB8YAiNBqGnfVwsCZZU4mJDaJeWQFmcqUn62Q/F\nu2vXLpYsWcJdd91Fu3btTvm40smTSV1qFfpc/CwdK6y/ulXHyGl/IdSgoCj1b3V9aDs+u28yRn3w\nDieV7dnKgRIbb7/xIgcKVO7911MMinNT8+TDvFkSi+jaF+1gJq+/9graefMY3ieNUMMv52O5fhLX\n3vpXEntfxAMz4thWbGfw/jzE6gLWRnnwEsKB/ExqzL2o9kWjK65EpET9oauTQ10t+fn5LFy4kLFj\nx/Lggw/KhbkCSC7oJbUaQojfr6wQoqElq5xQn7kQAhTltHTDZGRkYDabjzujVGgqKHoQfp574m4u\nuf0fJEeHH7M6SfX70RkMJx3/jBkz+OCDDwgJCWn0fpqm4fF4KCoq4scffyQ8PJyJEycSGRkpq1sC\nTLbUpRZPCIHfbcPhMdCuXdgx7+O0VWK1K+j1CnHxMcct06wqzMcUn0xkSPD0Byu6+lg0l5Vhoy6k\nqKCc5Ogux7yv3tC0H+1DbT+fz4fT6SQnJ4fc3FwcDgcXX3wx0dHRTfr3pD8ueK9BJakRh8v6hAAE\ni5/+G/l2H0LUl/r9etZo/vqX+fsz28lZ9xY5pbbj1n2vee81siuCc3kEXVh7xp4zkZH9u/7my0k0\n8SSjQ33ldXV15OTk8Omnn/LEE0+gKAqXXXYZs2fPlgk9yMiWutTyCMH275awemcBhqh4rj4nnrpB\nM+mTaGb7iqVs3LWNXpOvZWyvFDSfjf+9/SaFP2dD6liGTprFOde9xbIPbyPcICjIzcOp1WdBsyWS\n5MQEdApYkhIhwDUwxyZQVe2YFSVC87Nl5TKSR0wmIfKPb1Ljcrmoq6vD5XKxZ88eduzYQUxMDEOG\nDGHChAlcdtllcop/EJNJXWpxBBqP/+MjHn35Nu5/cDFnh9YS1+kxfJUZ/O3TKha9cgs/ZFrrJ79k\n/UhBr/O5blwKc99XMEXE0HHTW1g9NxOu9/PDV19R4K1fMyahW29mTbsAFAXrzh/xj7gswGf6awJ3\ndQ4rN1QxceIgXA4XepMZiwnq7C4Uo4kVT89h0lujCfHriWwXhUF3cl9MmqYdXp/FaDSSmprKrbfe\nitlsbqZzkpqaTOpSi6OgY0ZnB+8u2cBNd91MuO1NhFfFU1dHReVBqusgISqKusoSDpZUUWez4Ij0\no9p9CKHiNnRD39DSNEdEEIsOUAkLieTQKGpcdBjOZmiou93uo2ZxCiFwu90nnDQzPpzLY6u7YrFU\nsnFXPjkHE3ngTAeL9lZjSTmL1FgjFbu+58ufq7jtvutob9Sf1GQqnU7HrFmzjjtQKgUvmdSlFkeg\n8YU9lAOfLSZ3y1bOf/8ZDny8nbDx53P7hOVM+dNU3v10GVu+eou/70ohJONRdggjHQdeSV1pEdY/\n30hsiA4UMxf++S+H+9cVRUFBoKkCxQd60fRZ/dlnnyUjIwOXy4XX68XpdJKamsqDDz54Ao9W6D1p\nGlON7ejXJY3akgqefy+DOye0Z913K7n3uUuwrVW497/f8/0HLxDXhLNEpZZDJnWpxRGqm9DuQ3jm\n9nso2Z+LzpDEsJStbM+rZsYt/+DiW0CnKESPv4gXJydyRsfLAVCEm6VvfsKiuy7HoNOBArpf900L\nHwufeZ9NJZ25OSH81GNtWGnR6XTicDiw2+0sXrwYo9HIkCFDePjhh2nXrh1Go/GEjqfTm6grL+F/\nC1ahDbqIeCWHInsKj9x3LTff+Qa3mAXXjm/HQ3M+4MXnryIiJJAf8V8GbY8qc2woFz32Q45denrk\nZi1y45bGyTr1NqBplnBtOqc8yCYEZfm5FFV76NarJ1Gh9YlLUzV0jU4q0lA1HY3PO9IoPZBNrYgm\nPbUjJ9klffh5drvdOJ1OiouLOXjwIHq9HqPRSGxsLNdddx3XXXcdV155JRERESdcpw6AWsOCV7+i\n18DObMkoJhoriV074DLHERaZgm/HSiKHDGP36q2ceclMUmPNJ9X9cqJ16idCc1vZs68AgykMncFE\nSkoSOr+b8iobCQkdjhmXw1pMXqGPcDN06twJY8OkKl/tAarVOOLbmcjdsZMCZzhjR/Y46TGDtkAm\n9TYgPz+f7du3B0XFQnR0NKNGjWoVrawjPzo+nw+v10t5eTk1NTUUFxdTVlbGgAED6N+//1Etca/X\ni8n0S3XKSSX1ZtaUSR3Vyczzz+P8Wx/g2/n/Yubj7xKWsxZX53FcNDgRr9eH3hiC0aCvn2vg9VC4\nZQF3vdief95cSWHkWUwY1A2dAtZ937Hb0ZsBsQXc8sguTCYXz//nJkI1P34h8Pk0wsNDUX1e/H5B\nqNmI2+XFFBqCz+0lJNSIx+NBZzChQ8Ovqih6IyHG1tdZ0frOSPqNHTt2MGzYMCIiIgIdChs3bkRV\nVQxNPDnmdNM0DVVVqampwWq18vPPP5OXl8eECRM444wz6N+/P3q9/phfXkcm9FZNH0Z4RDcGDh5G\n8sH+7CzMxZfh4J5pCWz/ajHfbFhHp7Nnc8WEQaB5+OS1Z8natB2185V0H3s1d13yDIM+nENMCOzL\nLqQyJpk3F7/GVrU9nz3zJOF6HWs++C+ryp0sXZrJ50teYN2H77Fh6wEeeOomHrrjOR564REWPfJf\nrp49hgX/W0JovykMtpTzzd5cunafyfUXD251k3Va9idLOmFhYWGEh596H/GpOtG+42ByqPvK7/dj\ns9mwWq1kZWVhtVrp2rUrcXFxTJ48OSBT5P0uO5oxDJOhaVKTqqqoqtokx6pXzs8bNhLb4VyuGRTC\ny/uT8NXkMPvDOja+/y+y91cCAnv5bqq7nc2DF43h6odqUXQGupevotJ5LzEhISS1s7O12sHF540h\n68AQukXUv4/CHJVED76SV3zL2Lb6Qz7b5OWCUankuTowPtzLhq276DhtJk9eMp1xz/2DkrIqortG\n0zfhCqYOSEcRBOd0hFMgk7ok/cqhbhW/34/L5cJqtbJ//36cTieKohAWFsbIkSOJjY0NdKTkfPMs\nrkF3MKhz08zq1DSNffv20a9fv1M+ltB8aFoIPYaMZlRKO3DvIUwrQVNBLVxP7sEJ+D0a1vKD7C6w\nkrOrkLKOUficboTQcBi7YzbWD2QrOj1+1YeqqlRV1qAJ0Ckg9DrCQ43oQ8Lx+/1EdDYz7pxzybN7\nueSx6/jTjQv4cNFz7I5JoUN6f9JTnKDm085sIdwc+LXzm0Nru/KQpJN2ZEvc7XZTWVlJRkYGP/zw\nA4sXL2bbtm3069eP8847j8mTJzN27NggSOj1yx9E9p1KcrummxhkNBrZtm1bkxxLc5bSuUsCu7Zk\noAogtCeqKw9neDfefmgMT8x9FFNUHCVZG7jzfSthFVt55rUV9O4nsFeXwEXT6GDWAyq5ebX4bDaK\nanx0KszEp9bX+jvNcezPyiArK5GwtD8x3HKQvz33GsO6x2BJOZPnHpxFB7OFRxc9wVtPP8GmQi/F\nOTkcyNqLX2udw4lyoLQN+PLLLxk3bhyRkSeyEcIRa4f8apXCRldBPEHr1q1j5MiRQdGnfmj9GIfD\nQW1tLbm5uezYsYOUlBRGjRpFu3btMJlM9fXrzdik+6MDpUL1s+qZMdSeu4SLByY0SSwzZsxg4sSJ\n3HDDDc0ysO4qy2bpRiszpgwD6ssSq0sLsUe0p1NY/eCsgpeF/3qVs2+7mdgw00m1phsrdzydK28G\nUuA/WVJQ0bwOdmXsxquLoG+/nkes0y34aWcOw/ulo2+hZWSHkrjT6cTlcrFv3z6ys7Pp2LEjHTt2\npEePHowdO7bF7NSj6A0kJfeitonTlE6nw+fzNcusUnOHHsyYoh2VdGM6JhNz1L1MzHzgzpMuJ4XG\na9dbQ8XViWi1Sf2XAR8Fg9GATlHQVBV0ut+sbKf6vGiKob4mVqiomoL+iGJmr8eLMcSE0FRcLjeh\n5rAWm9iOR2cIYdd37+MddRtnCB91tW4UQwiWUB3FlRX4vZ2wub14PD5i2scE9WYTh7pV3G43breb\ngoICCgoK0OvrS+i6devGNddc02I/7KJhok5Tbx1tNpux2WyHr1KamqIc7z2jHJHQBX6fD73h2C12\noam4XR4MoWaM+pb5Oja1VpvUD2ZtZsWGIrol6ghL6s/wPolkblhP2oizCG1oiB16w2Z98wklXSYx\nsU88+GvYtquCQf17Hk7cny36jj9dcS61WetYtmYzQy+8gTOSowJ1as1LZyS6fQLhXRLZ8c3H/JhZ\nTo1Xz203TWVLVhF9Qop44NnvUByF3P/8fEb16xgUl7OHLrsP9Y17PB4qKiqoqakhLy+P2tpahg8f\nzgUXXNBik/jRBKV7t1Fba0dnatov1vT0dLZu3co555zTpMf9Zbboial/nfz8+PXn9J00jehQ/VEz\nSgGqcjNYtnIDaRfMYkRKxO++F1vHa35igreZdYrCnft4a5WfkWPGcd81/2T9t2+w3t+NUD2UlpRQ\nXFL+y321LFZk5pOZdRBVH4Pj+1dZuru64bcqAwemo7ntzJ/yF4ZOupS0eEtgTuo0ODI5Pvp2EVfd\nfiejk+xsd7en1OPBEqpS3X407z8/hYM5dQGO9pcuFY/HQ3l5OVlZWSxcuJAFCxbgcDjo3r07F110\nEbNnz6Zfv36t6sPtqC6ioOsdTOnRtIO2PXv25KeffmrSYwL4XXWUFBVitXvx2GrYn7Mfh8eHx27l\n4P5cHB6VytISigvz2V9S07BWvoGa4hLKivLJyS/Frwkc1kry9u7H7XXz4duL6DhmHP3a6ygpLqC4\nvAbV66KkvIq9BcU4rNUcPJCHy9fU1zPBq9W21BW9DndhKbu3fE3K+AF8vaaSB/6ViuI9wKerVlO2\nJZ+HXnqUMEAXGkHONxtY8uNWBt7wL86dPZu757zL1FfvBrw8NfcpHnjjn9RGOnF6dIS24oWStm/Z\nRH6tmzN0Cu11O9i1vwyXP4xuOj8+mxO3NxwcGj6vwOt3w2mu8z3UpeL1enE4HFRUVJCVlYWmaSQl\nJREdHc20adMIDw9vVQn8txTSRl5Ic8xBNZvNR60k2TQE6x64keJJ04gKS+X9l79m6lgPFR0GEPbj\nOuJHdGUTQ9FvegfL4LP5+D+vs2LdCmJCDaCvYs32PWz94L9MeeBhvnpjLeO6F6IMvRSPzYbN7uaH\nF2bhO3MOO5d+xphLJnPnnYu46obxhO7YRkz3KPYmTmXun3q32m7TI7XalrpAIMJtmDsO591nb8Rt\nrcKkgFDMxBrDKCopRRMCj8uFz+dkyMUXccONs8ksrMVgjkCxFzccyYxPUwmxRJEcZaB7WkLrfdIA\na1U+dmMnhsSH8Z8XH+LAlo0o7YeSaqhlVISRahHNFeNiKbbH0z7B3+xryhyZxG02GwcOHGDt2rWs\nWbOGdevWUVVVxcSJE5k+fTojRoygR48eWCyWFpfQD+/kFOD/DklLS8Pn8zXpOaZcdDbLlywjv3wv\nP1W66TDwHIamd2D9nnIikwYwIT2eDoYUzp9yNmmFe3B4GiZBiQ5cOPFs7ru8C+u+X0lGrZfEEdNJ\nS+xMfHwnunbrxJvPr6VP3wGM6WxmT6WBQmMPbpkxmN2FVjp2H8HYhLBWWZN+LK22pV5r8xMWHkta\nj26Y9AppcZ2ocKjEF61gY1YdHRJC2JZXRt57/yYpXUdZ7U62VZcwduQZuMoyUJKHNRzJi6bZqamq\npsprotruISb02PtgtgZnTZ7JWQ3/jkruz9VX9z/8u1vu6QrA8NH1P/dthr9/6EviyGn4ZWVlFBcX\nk5ubS1paGmeddVarWu9br9ezceNGDhw4EOhQsNlsCCFIS0v7zRo1p0YjY1MVc26byX8WZNHb8C3l\n1mH46hQiLH4KrTbyswvAY6WqugZXaAgen4oALGEau/dkUn3AzswpV5Hz0xzqHP0oKCoit7aYlDon\nl589ii0btmG3q6THQkhdDW4sCM1GcU0tuXvyGTOoM7o2MJjaauvUXY46rDYf8R1i0CsKtXkbuG2p\njbdvGUtJcTWhIQZ0YRGULn8ea++/0DlCoA8Jo0NMOG/e/29GP3IbvaKMgEZFWRnmiHY4rTVY2scT\nZmpZ34UnV6fevI5Vp37oLaiqKjabjdraWrKzs9m7dy/du3dnyJAhmM1mQkNDg2JRsqbm8/moqKgI\ndBiHJSQksGvXLpKSkoiJiTn+A06IwGUtx6EaMIdFgtdKudVJx4QkNFctRZU2OnVKxl1XjSHMgq22\nlti4eEwGPX63ncpaO8YQC7FR4dhqyqmyuUlKSsJeU4UhLIqIUIWiwhIM4e2IjTBSUekkvmMsztoq\nyqwuUlKSMRl0QTGo39xabVI/loqCHKKTutWvpQ2AoKKojJikjhzuJdds5Jd6SUkM/IzBP6K2thad\nTne4T1lRlCZM6gKP243OFIrxD/ZNHkrqOp3uqJrx7OxsSkpKaN++PZGRkSQnJxMfH99iasZbmwMH\nDrB//37Gjx/f4rqy2rqW1eQ8CceaPRaXnHbU4vxCQFxSx6MfqIsgJfG3x2rqN7bL5WqGwSh48cUX\nycnJYfDgwfTu3Zs+ffpgt9tP+PFC9VHrUImKOFb3hsr/3prPwFnX0yOqYfbfST4vfr+fqqoqioqK\nqKysxOfz4fP56N+/P2eeeaZMIEEiKiqKDRs2MG7cOPmatDCtNqk77Tb8xnCiGorShaZir7NjiYpq\nyOsaDmstYe3a/WYy0q9VVdQQExfzh2a4/Z7ly5dTV9f0JYFbt25l6dKlLFq0iLCwMBISEoiLi+OC\nCy44occf2PIF/1obwv/dPo79BwrRh8aQEh/OweIyQiNi0dkFNqeDHfn76JaeToT55Ppci4qKyMnJ\nYeLEiQwcOFAmjCAVERHBjh07gmpzFenEtNqk/vHb84k853qmp4ej0+vI3fodX5Uncsf5kWhafcu7\neM86CuNHcla3uEb72l77v6Xc+sTVRDXc6VALW6dTEFrDhApFd1JJf+rUqX/01BpVUFCAEILp06cz\nfvx42rVrx5o1a0748ZqzEnd0bzx5i9mTmcaKzEX8ecxA9qkdMIe7EarKtuWfk9BjDD0NJ9810rlz\n56BZ+0X6fQaDAafTKZN6C9RqP1kDIhy8u/Z/fPe2lX88dg0L3/+Jh156hOrdy/l2WwGx3UYzcch4\nHhl/K/2/f4fYEIXa0oPUuOsfrwsJIyUhHnCR1tmAxw+YAM3L6s+XUup00HfcFMpWfkxeaS39L72Z\nEV0CvwnFvffei9FoPKoFfDL90mHhoRjDIlGN7bEqTnQ2Bx07p/LBU/cRPf5OelPKs+98zAcLpjbZ\nGt5ScEpISMDj8cgv4Bam1X4qNQFa4jD+5Pg3u3J3UarrgA7Ys/QzDO3D+PjNV9CbwpkcvpTsMjug\nsfHTF3j++ed5/vnneeWDzxqOZGTxp1/hbOj+dhesZGupkXMHJzDhsufY8drz6AaOpVNMcJTYnep6\nHSZLO/ZsXUnGT1+yq7Acjy2f7KICLr31GaqclRTUmfjXffO4/f4nyS2rO6lp31LL0rt375Maj5GC\nQ6v9Cta8MDIticTunbHrQwhX/AihUWndiz7qMowuP5oAv15Hw9LMmKJ707dvfULUR8Q3HEmPKdSI\nQAN0uKxF1Ho6ER6XjP5AKe0G6ek/YCBJUa1ji7LY3lP5/ik/eqOeUUKg6K5Eh8BldzDsjL6Hxx+m\nX3B+gCOVmlt6ejoOhyPQYUgnqdUm9XJDPMUZu3FkuIge1o72MXl4NAGmaL76+kd04WYqXLW8WXkZ\n3yZHAAojpl7OAH99hld0h54aO2ZTJfvzKunSO552fa7A+9Y/WPh5Kf/5aC6ZT89GZB5kaIceATvX\npmZoqMPXH27xK5gtrXe9G+nYunTpgtPpDHQY0klqM3Xq+ds2sLE8lBnnDgAEigI7v30fd88/Mexk\ntwLT/Hh8GiEhLaN1fip16k1dzhlMm2RIjautrSUnJ4chQ4YEOhTpJLSZT1bKoBF0UuvXsjiUpHqf\ndQWGP7Jsqc5AK5ql3qiSwiJiExIJkYOiwUcIHFXlqGHRRIY1fQMjKioKv9/f5MeVmler/aQKIRqW\n7vzlZxQ9CO1wmZbeqJxQyZbQtKOO1XYIvlmyjkq3nzZ5+kHPx1Nnn8ULb62llW63Kf0BrTap52bu\nJLPce/hnv9vO7p2Z7F6+hJKGukVXXTFFlfbjJqyq7PVsO2hrznCDlJsQpRaHSptZ4a5lMXLLJ4u4\n4dIR8vWRDmu1ST1r1RdsKqqioKQaVaj875PFWMPaU7jkH2zdX0xZhRVjaASfPXUXBbUe4LfLnx5K\n9l6/HbVNNlVN7MnahdOnypZ6MFIUEnr0ISHO0iYWqpJOTKtN6knt4POvP+K6Sy/lQGU+mevzGdO9\nI8lDu7Fq8Tvcfuv9lHjDmX3bJFaszgDAUZPPh++/z/sN/+2vq+9PLNizga15tYE8nQDRYTDqUTUV\nZEV6m9RG6ihaleMOlGqaxty5c9m/fz86nY7HH38ck8nEnDlz0Ol0pKenM2/ePAA++eQTFi5ciNFo\n5MYbb2T8+PHNHf/vUl0w69Jb6N3+G4ry8ygI7wCA32fjotn3ol/2IqsOOPhLek/qVuUAQwi1xHHW\nhLPrd/IREGWun4mZ2M7MF+62sx3WLxzgLyM7s5hB49IDHYwUADKptzzHTerfffcdiqLw0UcfsWnT\nJp5//nmEENx9990MGTKEefPmsXLlSgYMGMCCBQtYsmQJbrebyy+/nNGjR2M0Gk/HefyGV1Nw2e3Y\nrS58ITEk6moRgF6nUFFciMdtol9SOL7qMqLadQLAbS/hh3WbQaegqRr9z5lB7/ZG3B4Xrtq2OLPO\nwryXPw50EJIknYTjJvWJEycyYcIEAIqLi4mKiuLHH388XLs6duxY1q9fj06nY/DgwRgMBiwWC6mp\nqWRnZ9O3b3Psj3N87UdcADo7uh7X0iEqlT6dBXnVTrpd+DQ5m/bReexUBkZ4ePvBbxn1t78BYInp\nxqWXd/vNsUSHEUwwqaf7FCQp4OQqmi3PCdWp63Q65syZw8qVK3nppZdYv3794d+Fh4djt9txOBxE\nRPyyoFVYWBg2W+AqRnoOHFj/jzOuBaD39bP5YvlOul44gulT679oasv3MezxJ+gd3/j2dN2Hnkf3\nZo1Wkv4IgdAa9g1opuQrk3rLc8KTj/75z39SVVXFjBkz8Hg8h293OBxERkZisViOWvzn0O3BQmdu\nz9QLj97NKDKuK2e0kTftoQ2cAy0YYmg1hKBg24/4OvahW/JJzoqWWq3jJvXPP/+csrIybrjhBkJC\nQtDpdPTt25dNmzYxbNgw1q5dy4gRI+jXrx8vvPACXq8Xj8dDXl4e6enBNbj261ZHW2mFmM1mduzY\ngdlsDnQoVFdXBzqEVkTl08f/hmHmY9x61cgm3cRFarmOu/aLy+XiwQcfpLKyEr/fz1//+le6du3K\n3Llz8fl8dOvWjSeffBJFUVi0aBELFy5ECMFNN93ExIkTT9d5SI3wer1UV1cHRSvZZDIRG9sy938N\nRprqB0WPrhkyuqqqbNmyheHDhzf5saXm02YW9JIk6eSUlpZSUlLCwEPjU1KL0GonH0mSdGoOHjwY\nFF120smRSV2SpGPat28fYWGNV4ZJwUcm9WNwOp2oqqxLl9q2PXv2YJGbo7Q4Mqkfw4oVK9i4cWOg\nw5CkgNqzZw/h4eGBDkM6STKpH0NWVhZvvvlmoMOQpIARQuB2u+UOVS2QTOrHUF5ezurVq/H5fIEO\nRZJ+nxCU791NSWXTr0vkcrno2rVrkx9Xan4yqR+D0+kkPz+fpUuXBkVttyQdm4/5N1zPgs9+bvKd\nj2praxk2bFibmaDXmshrq2M4NOvx2Wef5cILL0Sv1wc4Ikk6BsXEAytXIxRjk88mra2tZfjw4TKp\nt0AyqR9Dnz59CA0N5ZZbbgl0KJLUKL2h6Techvrul6SkJJnUWyDZ/XIM8+bNY/r06QwfPly20qU2\nKT8/Xw6StlAyqf+O8PBwqqqqAh2GJAVEdnZ2wDa4kU6NTOq/IyUlhVWrVgU6DEk67fx+P9XV1fIq\ntYWSSf13pKamsnz58kCHIUmn3YEDBwK2Y5l06mRS/x0hISFYLJY2W6suhMCvtsXNtqXMzEzOPPPM\nQIch/UEyqTdi0qRJOByOQIcREM6CDTyx8Dv8qqzTb2usVisdOnSQlS8tlEzqjRgwYABWqzXQYQSE\n6rZSWlSFQCb1tkQIgaqqsvKlBZNJvREWi4Xvv/8+0GEERET6ZF679xKMevkWaUu8Xi96vV4OkrZg\n8hPbiIiICNasWYOmtb2+ZaUZd6iXgtfq1avp1auXfO1bMJnUG6HT6Rg+fDiFhYWBDkWSmp0Qgh9+\n+IHevXsHOhTpFMikfhxXXXUVWVlZgQ5DkpqdEIJOnToREhIS6FCkUyCT+nFYLBaKi4sDHYYkNTuX\ny8UZZ5wh+9NbOJnUT0BVVRUejyfQYUhSs1q0aBHJycmyP72Fk0n9BIwaNer/27vv8Kiq/I/j72lJ\nZiYNEpJQEkIJobcgCJEmvYhUQQRkf6wrqGthVUTZBdbO6rq66ipgDYoghCY1EHpL6JCQUEMSIBWS\nzEGs4JwAACAASURBVGT63PP7A4gEIkWBwHBez5MHMnMz93vuvfOZM+c2Nm3aVNll3FGK00pOkRl5\nOfn7g8PhYO3atYSFhVV2KdIfJEP9BnTo0IGkpKTKLuOOKkz+msbj/4NdnlV6X8jKymL06NFy6MUD\nyDMMblDdunVRFAW1+v74HKza6gmS/uXAWyO/it8Pjh07RmxsrBx68QD3R0LdAtHR0WzdurWyy7hj\nNPpA6oeHyDf5fcDlcpGcnIzBYKjsUqRbQIb6DWratClxcXG43e7KLkWSbqmUlBSaNGly33wL9XRy\nLd4gLy8vBgwYUHb/UknyFElJSfTp06eyy5BuERnqNyE2Npbt27dXdhmSdMu4XC50Oh1eXrfnXqfS\nnSdD/SYEBASQmJh4316OV/IsQgjWrVtH48aN5dCLB5Fr8iao1WrGjRvHrl27KruU208IFHmQuke7\ndK2Xli1bVnYp0i0kQ/0mNWvWjNTUVISHB57TfJZNqSdRFM9u5/3MZDLRvXt3eYNpDyND/XeoUqUK\n6enplV3GbWU+sZHpX63GJUPdIwkhmDlzprzMrgeSof47PPLIIyxbtqyyy7itApuPYN0HT+OllZuI\nJ8rLy8PpdBIcHFzZpUi3mHzH/g5Go5EGDRpQUlJS2aXcNiqVSu4881BCCHbt2sWzzz4r17EHkmv0\nd2rfvj3vv/++x4+tS57HarWya9cu/P39K7sU6TaQof47VatWjfr165Ofn1/ZpUjSTVmyZAmjRo2S\nY+keSob676RSqRg2bBirVq2SvXXpnmG1WrHZbERGRlZ2KdJtIkP9DzAajZw6dYrTp09XdimSdF1C\nCH744Qc6dOggL7HrwWSo/wEqlYrXX3+dhISEyi5Fkq7LbDaj0+mIioqq7FKk20iG+h90qceTkZFR\nuYVI0jW43W5mzpxJ79695REvHk6u3Vtg6NChzJ8/X46tS3ettLQ0atSoQbVq1Sq7FOk2k6F+C/j5\n+dGuXTsOHz4sg12669hsNhITExk6dKjspd8H5Bq+RWJjY/nggw8wmUyVXYoklbN06VIeeugheY2X\n+4QM9VtEq9XyzjvvsHr1anl3JOmuIIQgPz8fm81G8+bNK7sc6Q6RoX4LhYaGUlRUREpKSmWXIkm4\nXC5mz55N79695SGM9xEZ6reQSqXiqaeeYvPmzfJGGlKlUhSFHTt20K9fP7lz9D4jQ/026N69O3Fx\ncXKnqVRpsrKy2Lx5M02aNJGXA7jPyFC/DaKjowkPDyclJUUGu3THWa1Wli5dyosvviiHXe5DNxTq\nhYWFdOnShZMnT5KZmcnIkSMZNWoU06dPL5tm/vz5DBkyhBEjRrBhw4bbVe89o1u3bixYsIDc3FwZ\n7NIdoygK8fHxdOrUCYPBUNnlSJXguqHucrmYOnUqPj4+ALz77rtMnDiROXPmoCgKa9eupaCggLi4\nOObNm8fs2bP58MMPcTqdt734u5mPjw+vv/46ixYtwmq1VnY50n1ACMG+ffvw9/eXR7vcx64b6u+/\n/z6PP/44ISEhCCFITU2lTZs2AHTq1Ilt27Zx4MABYmJi0Gq1+Pr6EhkZ6fG3e7sROp2Ojh07smTJ\nEhRFqexyJA+Xl5fHli1b6NWrlxxHv49dM9Tj4+MJCgoiNja2bAjh8nAyGo2YzWZKS0vx8/Mre9xg\nMMiTcLhwNEzTpk3R6/Vs3bpVDsNIt01xcTEzZ85k7NixeHl5VXY5UiXSXuvJ+Ph4VCoVW7duJT09\nnUmTJnH+/Pmy50tLS/H398fX1xez2XzV49IFAwYMYPbs2URERBARESF7UdIt5XA4WLRoEWPHji3X\nuZLuT9fsqc+ZM4e4uDji4uJo2LAhM2bMoGPHjiQnJwOwadMmYmJiaNasGbt378bhcGAymThx4oS8\nvOdl1Go1o0aN4sMPP6SwsFD22KVbRgjB0qVLiYyMJDw8/IY6DEII3G532c9vDw0K3MqV26rA/TuH\nEoUQV83rQi1XPqZwaa6K4satKAghkO+aG3PThzROmjSJTz75hBEjRuByuejduzfBwcGMHj2akSNH\nMnbsWCZOnCi/Al7BYDDw7rvv8u2338qhKemWEEKQlJSEt7c3nTt3vuG/sxWcYO3GHWxauZLtScms\n37EfV0VBrRSyO/Uk5XJdMbFl/Tbcv5GwbtdvXSJDUJBxgJ0HjnL5nEryjrMmYUvZY0K4yExPwep0\nA4K9m1ezOz2Lgxn5KLIzdEOuOfxyue+//77s/3FxcVc9P2zYMIYNG3ZrqvJQRqORgQMHsmDBAkaM\nGCEPOZN+NyEE6enppKam8sQTT9zUkF5R5jGKtWGceudRmnyyiTMnj/GgtQHnrRa8fPzwN/qgUoHL\n7kajArfDxrkSMxofA35ebry0apxWMyUuhVKThZCwELw0aoTbynfxmxnU+yHUTis2p4qgkECsJcU4\nXAKNppCtm4tpElkNoTVcmI/5GP+ZmUjThpFUq1mTzG1z2H4uklFRUFBQyMofl9PzH205ufS/OPs8\nT0xk0G1cqp7hhkNdujXq16/PuXPniI+PZ/jw4fLKedJNE0KQkZHB0qVLef7552/6W3H1mF48houZ\nwWqqh9Sgb0wDEn6YQaG+Hsk7M5g09W+EGLWcO5XK+r1WcvYmcQ7Bzi07Gf/cGDav20iQKpepiblU\nO7aahyfNZGCzaghLLt8unEt0pD8Lv9hAFW0qPd74J5v/+yMhEXoefbI7ouQoC7/+lrpdB9OxZW28\nDf7k5ezk+3/nEvX4ZLYuOMsr747k/LEN/LC5gJO5pfj4+NL3T0/x6c+7aRHRA61a7pO6FnlGaSVo\n27Yt0dHRrFix4r4/nl+6OUIICgsLWbx4MS+99FLZ+SM3/zoX/wVw5vPT15sYNHAYdY+s5HDOhYMe\nQho+iNZVyIbdiQx+7DHGNj7MoSIDRmcOxqAQ2nV6mJeeaE362RIA1H6RNHnwIVo1jaZdtyiKDyeR\nd76UUwc2k2eshbdGxVcfvIR4YCCdWtYu+3ZRK7w3z7z6F1KPZVNUfB69RrDuwzF07tWHDg2jAIFK\n5UNi2okKxvilK8lQryQxMTEEBweTkJCAy+Wq7HKke4AQgtLSUr799lvGjBnzh77lKS4XJgtk5Z5H\n0fpSx8ubzNM55OmrEuzvfWkqFKHDz+nNnpPZZBYUUaOKhhKbG6vVRlZOAcXnrNgc9rLXzS8+w76k\nVUxPzKJdR3+KC7N5+K+vYkh9h7TTBQx/9i2SZ0whNescQghcDhtuUYzFZsZldRHqHYTNKajZuB3b\ntiSTlX+ArDMFKE4rD0aHo5G99OtSCXkoRqVatmwZarVaXh5Vuq6SkhK+/PJLHnvsMWrXrv2HXsth\nNbFp5Rp867XmgeaRlJw+wt6TBQQG1aRlw9q4nTYc7hLiftrJY30as/HQaXz9q/NAHW+2Hcigab0Q\nkrMcNOIcxcH1ebBROCoVbE1cjagaQc6xw0RGhoLeH3dODjqfQKpV05Fp1hKsKeG0qEHnFrUxnT1O\nUlo2zeuFcOgsRJQeIN7UgL/1jGTFyjUIt5qoVu04t/1d9A+9RUydYOQRwdcmQ/0usGTJEvR6Pd26\ndZPBLl1FCEFJSQnz5s2jf//+VK9e/baf63DmyC7WJx+mVrOudGxWizvZQU7bt406Tdvhrb3wXrAU\nnmFTpkLPljVRy0S/Lhnqd4lly5YREBBAbGysDHapzOVDLoMHD74jgS7d2+SY+l2ib9++WCwWOcYu\nlRFCYDab+fLLL+nXr58MdOmGyJ76XWbFihU4HA769u2LTqeTb+L7lBCCvLw8fvjhBwYPHkzt2rXl\ntiDdEBnqd6GEhASKi4vp168fPj4+8s18nxFCcPLkSZYtW8aTTz5JYGBgZZck3UNkqN+lUlJS2L59\nOyNGjMBoNMpgv08oisLRo0dZsmQJEydORKuV5wdKN0eG+l1KCEF2dnbZJQXCwsJksHs4p9PJ1q1b\nyc3NZcCAAej1+souSboHyVC/y+Xk5LB06VLat29P48aN5ZExHkgIgclk4pdffiEwMJCePXvKHrr0\nu8lQvwc4HA6++uoroqKi6NChA3q9XvbaPYQQgtOnT/PLL78QGxtL06ZN5bqV/hAZ6veQnTt3snfv\nXoYPH16280wGwL3p0rXFjx49yvz583n55ZflVTulW0KG+j0mOzub+Ph4unfvTnR0tByOuQddOv58\n+fLlVKlShc6dO//uC3NJ0pVkqN+DLBYLS5cuRaPR0KNHDwICAmSP/R6hKAonTpxg/fr1xMTE0KpV\nK7nupFtKhvo97NChQ2zevJkuXboQFRWFRqORAXGXunS6/44dO0hPT2fs2LEYjcbKLkvyQDLU73GK\nojB79mxCQkLo2bOn3Il6F1IUhZycHOLi4hg0aBBRUVFyHUm3jQx1D6AoCkeOHCE+Pp5+/frRqFEj\neY/Yu8ClqyuuWbMGu91O7969CQoKkoEu3VYy1D2I0+lk+fLlmEwmunfvTkhICGq1WobIHSaEwGq1\ncuDAAQ4dOkRMTAwtW7aU60G6I2Soe6D8/Hxmz55N69atadOmDYGBgTLc7wAhBA6HgxMnTrB161aq\nVq3KoEGD5HKX7igZ6h7q0lX+Pv30U3r16kWrVq3Q6/Wo1fJqy7eD2+3m9OnTLF68mNDQUAYNGiSv\nsilVChnqHs7hcHD48GESExNp2bIlLVu2JCAgQIb7LSCEKAvzFStWUKNGDdq3b0+1atVkmEuVRob6\nfUJRFLZu3cqJEyeoWrUq7du3JzAwUB4GeZMuvV2sViuZmZns2LEDnU5H9+7dCQ0NreTqJEmG+n3p\nyJEj/PTTT8TExNCsWTNCQ0PLjpaRAV8xIUTZDtAjR46wd+9eFEVh7Nix8uJb0l1Fhvp9SgiBxWJh\nzpw5mEwmBgwYQHh4ON7e3nJo5jKXwrykpKTsw3D48OG0bNkSLy8v+SEo3XVkqEsUFhaSlpZGUlIS\njRo1okWLFgQHB6PVau/L0LoU5GazmcLCQhITE1GpVLRu3brsHID7cblI9wYZ6lI5u3btIjU1FY1G\nQ0REBNHR0fj5+eHt7Y1KpfLYMBNC4HK5sFgs5OXlcejQISwWC2q1mi5dusiblEj3DBnqUoWEECQl\nJbFu3Tpq1qxJvXr1qFmzJqGhoWi1WnQ6Xdm091rYXdrkFUXB6XRSWlpKVlYWZ8+e5dChQ1StWpWB\nAwcSFBRUyZVK0s2ToS5dkxACu92O1Wpl3bp1JCUl0bBhQ9q3b4+/vz9BQUFlwxF3e7grilI2Pl5U\nVERGRgabNm1Cp9Px6KOPUrt27bJj+e/2tkjSb5GhLt0URVHIy8sjOzubgoICTp06hdPppFGjRkRF\nRWEwGDAYDOWuD34nd7xeGg+HCycEWa1WSktLMZlMpKSkkJGRQWhoKBEREQQHBxMRESEvgiZ5FBnq\n0h9ms9k4dOgQR48eRVGUsp67t7c3ISEhhIWF4e/vj0qlQqvVlv38kRt8XBoDv/TjdrtxuVzk5+eT\nl5dHYWEhQgicTid2ux1/f3+aN29OvXr1ZIBLHk2GunTbXDqqJi0tjaysLACCgoIIDg6mevXqVKlS\nBUVRygJZrVaXC3xFUcqF9qXHtVotDoeDvLw8CgoKyM3NpaSkBKPRSFRUFI0bN6Zu3brySpXSfUmG\nunTHXBnSl8a4L92v88oflUqFWq1GrVaXnfl6+WOXHr8U9rIHLkky1CVJkjyKPHVQkiTJg8hQlyRJ\n8iAy1CVJkjyIDHVJkiQPIkNdkiTJg8hQlyRJ8iAy1CVJkjyIDHVJkiQPIkNdkiTJg8hQlyRJ8iAy\n1CVJkjyIDHVJkiQPcleEuuJ0YLXasNlsWK1WrFYrNpsDgcDlcHC7rzkmhILT6cDldl81L6G4cLl/\nvXLgjdUisNusF9pjseL+HfULxY2ltBSXW7npv72p+dzE84rbdXvqEQK7tZSioiJcytUV3Y6173S5\nuLRaLn99t8uJcou2NyEUSktLsTtdt6UNFc5TuXB7voqW453idNgotVgQQmCzWrDZnb/jVQRupxPl\nNrRDKG5MRecxWWxUxuUMFbcLt3L73td3Rahnb/mRvzw9ngl/fYlJkyYx6dWJPPPyDKwuC999MIP8\nEvttnLvg7LH9xP/0E/OWJFJkd5d7tjhlMfOXJZKUlMSObdtJzy25gdcsZdb0v/Hnp/7Ms39+kaMF\n1puuqiTnMP1jG7Fgx8nbFwiKA5vddc1JbDZb2QdZxublLNu895a/ERSXhekjRtK5Qzs2ZRSVf1K4\nKS6x3eIPdjffz5pDodMFQqG4xHrx9QU7533F4fziW9JGxVrIYwN7MfWHhNsSThWxndlGp3YxLE8v\nuCPzq8jyHz6gc5ceFNncvDNxFE+99DXuG2y+zWZHiAs3QVn1w2x2pefd8u0/79gWhj82kAEvfITd\ndXs7TVcTpC37nm1pGdyuTeKGQn3w4MGMGTOGMWPG8Prrr5OZmcnIkSMZNWoU06dPL5tu/vz5DBky\nhBEjRrBhw4YbLqJW59H8qaUf2vBH+fDDD5jxrw/pVU1LpkWg0unKulKXrr1d/uey5y78r+Lnyp6/\ngnDw9JQFdOnbn8CS7fR7dQG/xrpg/+oVpKUfYvee3fzwtzEcO1sCv/VaZYz85dVX2LMrmWfefofo\nYH35mil/27Wr2gT4V2/Mx892RGNx/3bbqfj1rpz+12Vy2XRC4Mjdxqb9Z3/9uyuWG0KQuGkLNof7\n4nw0oPza6yw/z6vr+y1Xrh9TwRGKHn6ahUuW0KK6b7lpFUse7809UBaKV77+b/2OuM7ycF/4MFOc\nZj78ac/FbyACIdQIlHLL9lLbKqq9gsaVTaPRB7Nw/sfor1q+v73Mys/nymmuaEsFs9fX7MhT/bui\nRlXxcin32lcVf911V9Eyv7JdA54YT2O9NwCTX/sr3rqSq/62ot+FcLE8YTXOi98GVRoNiOuv9998\nb1/RJnGx1r2/fMOM2T/z37+NRKcpfw3+67Wt3DRX1V/+sd9atwpaRNn2Vv7vy8/zmqvhN2mvN4HD\n4QDg+++/L3tswoQJTJw4kTZt2jB16lTWrl1Ly5YtiYuLY9GiRdhsNh5//HFiY2PL3XX+t6jVGnz0\nGlSlaoTTyszNpxn1eBcycgvQV6+GUAsUp5WkDWtJz7Pgrz7DOW0damPllGjAmF7VmLdwAzEDRhCS\nv52V6QJf90nMvi14oltj1sb/zLHzTlp36UXbBjXK30zBXYIvRWgCq9L6gbbk/5CKG7h0o7WQmKeZ\n0rUd59O3MuPsq/RsXovTaXs4Sw3aNKr+Gy1SodZqARU6tYas1D3sOJhO68Y12Lw7m+Zt21F8NIlT\npT4MeLQ/ttOH2bI3hXrhQRw8do7WHTrTrH4NdAYFlQDFZWf/xrUcOHmK2i26E13FwZYdyTRvXp/t\nu04R3foBlMw9HDVp6d23P2EBXmSlJbN6ZyqBIfXp1b4hq1avpX7jxhzdcwC/us3o0T6S96e+i73l\nnzDQlNgHmpC6fSXb9hwnrHEH+nVtTUbScr75MR7FDQ907swpqwtDgBFQKMo+yrIN29Cqq9K5X098\nC1NYlJRLw+p60jJyeaBXXxqFBnDlfSvspkLWrV5KboFCi669aF4ngPUJieRmqim0N6Cuz+WbpJ0V\ncZ+z/UgYK9bY6BzbkITlG6jdpC7rVuziiQljUU7tIXH3EfTB9XmkV3ssZw+xJOEQLaKD2X8inzYd\ne9M80p9VCxZyXqiwF/vyaM8wVMYqqISLzfGz2LDfTdsEJw+2iyZb7U8QWk4d3suRzByC6relriab\npGNFtH6gFYc3reRIdiEtug6gTcNw1OXaJ7CWnOXnH+Kx6IPo0fcRIgygqC48d+7MMeYt24bBP4Du\nvXoQ5O1g0Y8LwM+IX5VomlUvZW1yCY8/2ZXty5ZxTt+UbvVLWX3ITIAunzOu2oztH8O2FUtIyTHT\npP3DxDatjebyhaxSo1HDiYM7mLffTGTjNrSo7ceOHQewawN4uFMDtq3fQdWIFjRvWH77FW4bi39e\nRL7JRfsefWhaO/jqG48oLtJ3b2Ll5iNUr9+UR/u253zGQZat24NPQCj9+nYjyKDCdfHPVFoNqAAh\nyMs8xMp1O1Hrwxg0uDcUZTF/0Ro0xqr0HNSfw4s/Z86yY+j1AXR+qA3Cxxut7sIQ6KmDW9m8/xj6\n4Ab0fbgNBxPWcNo7mKruArJLBAMG9sffS3vV9laUc5JVSxM4r6lC3/49CaSE3Yczydq0mYED+qO5\nbAW6S3NZsmwz1euEsn79YcaMH4W64Ag/r9tLUHAEj/TthNZWwLJ5czmvCaBbzx6c3ZdMhqMWw3vU\nYMnSTTR+uD81LIdZc9iCjzsbs08UD0Wq2bH/BKVFLroO6s0Jtw+hOm/yMo9w4PBJDDWb0CzIxs7U\nLJq0bsPZvYnsPpJDVEwXOreJLlfjjbhuTz0tLQ2LxcK4ceMYO3Ys+/fvJzU1lTZt2gDQqVMntm3b\nxoEDB4iJiUGr1eLr60tkZCTp6ek3VcyZ9F2s/mUuibuOUbXBg7SICOLciv+RkVdK5qZveH9BBoM7\nhzPlZwcNI2sQZHTw1hd7UeurcOpgIofP2wmMaMT3M14g9Vwxh7ev5PDiaSzP9eOJAe14769jsF/5\nPVBbjbnzPqOqsLJx7lJ6je7ErzdBU9Goazt0ws7871bx5ptP46VRsW3Dalau2n/D7aoSVp39P/2X\nz3a4Gdi9LuNH/wnqd6Z+/res2JyGf2g1ts18l9V5QfR/uCFvTp3EscJfh2xSN85j2o/JDBk5iu+n\nvcFplR8nl83kozX5PNq7MS89OZrimh1oYlvO3EU7Kc7ex8BxH9D7kaGcXj+Tn1NNVBeH+euUH+n0\nSA+WvD+VYpcOY4kgJLwOdcJDQXEyfdr7PDzyMVK/eYsjRXaq1W+Et8ObqIb1Meo01PEvYOWardiK\nTjPs0Uk80H0wD9a08eTLH6INrkPC3A9Ytt9KjzZhDJ0yH8dV44YK8z9+m9ygWJ780wA+fms6hwtd\n1Ktfk8ioCGqFBqPi8g1YS0hYJPqqtWgUXQdvH1/09uOMeu7fmIqOcuhMDp8//zZ9Bw1j/6J3+Tk5\nC7+ganz9r6n8csRNr+beTH7+U2y5G9hbpKdPt1iO796OoXp9Ni75mUKboEbdRnj7hdEwui5+/lWo\nYtnN4TPnCQ7y49N3PsKq0SGK97Ni1wmSF37ONweNPD6yLx/+8xOKrxi6Uuwm3hzXg6CYftS0HOPN\nT7eV9SAdJVlMf/5l+o58gu7RKt6a/jHJm+NRN+tCn4fbcOpIGoHVQ/n4w88xu3zwKjzJzAUH8K0R\nxbJZ/2DLqXyObl9G+uqP+PGglccf7cinL44k1+S4anvzBjKOnGDQwL78OG0Ua/cXkntwFTNWHUVR\n6dm4ajEYrr7Vnz07gdmZXvR9KIx/PD8RZwUjE4WHl/LGR6sZ/ZchfPbOX9lzaBdvTfuUR0aNplP1\nXN75eB6OCva7OC0FDB05mcadH6FKyQ7eX7GPZ4aOJ7hDX4KVg3y0NoMG7dtSvVYoDevXwUvng0hZ\nxfrtp8g5vIWxb8bRf+gYVJnreOubRCIa1+PTV18mP7AJ9bwzidt9miv768JZxHvTplKv92OM7hXF\n5H9+hN0ngCB/LZENojHoysefyssfUXiIF6bOpiQ/hYPpe/nnqx/Qe+BAlKTvmLsymZlvT0U06kv3\nqinMW7wWP72dT77egaILIDttCwfOniegeh0W/Hcy+0+f5WRyPMNHv0nLh7oT6m3nnEtFlOE4Ow4c\nwdffj7mff8gZswtRepy5q5PJSIpnxi/5DBnej/hP/0N2kfWmh5+u21P38fFh3LhxDBs2jIyMDJ56\n6qlyX0WMRiNms5nS0lL8/PzKHjcYDJhMppsqJrxxLP0HtWHZ/5IB0Hj70frBEDSKCkvpObw0tXFp\nggkxaGn7QFtsWSqw7AcvP2pVq3rhb4wh+AW0YezYF6mhKeW5Oo0oHaTim7kHKdRUxe5W8NGWX5lC\nCPb+8iULTjYlbkrzsscu9VLsWTvZlGfhrxenHzZ+8k0taL+gGjRp14iuT3QkUJtJxy69eKhRTYRm\nKGnHLRgDqlG9WhAjujQhuIqB7k2NrD6UQ/eLf78jaTvnNYHM/vJ7nMYSSlUBtIqtQ99BXakSbKJt\n63Z0bxEBAf1J3GDiSFIqVtMp5n73FUcKnIQcz6NXdDjPv9aF0KCqhBgduISO+jX0lIbUICw4AJVa\nxyuT32DxrFnsO5fDQzaF6LAa1Aj2pXbNmqiAsPAI1KoMco7v4UTDPtSp5od3tW6ET56FWfUKfv5N\nGPtkDwwlh9Flnbt6B7E7l0WrTjHr5TqovHV0r6llSXIuz7QMo8ppLWFBV/bsNYRVD8M3qyqR4SGg\n8aJGreo8NW0kL3WNQIUg+uNXWPbdpyQfykCXchpd+5ZE6bT07tKOkIAzoN6EJrgJe78eSLcv9Dw7\n9W10XgH4+vuhRk1Q9Vr4Bwpqh4ehUukIr1OboyowhkQx/qmuzFufzqNZG/nL+P+yacZIjgsVs+Iy\n8BGp5NlcVLnsm4X57DF+SW3OK60iqPLAZHq6NKjsewA4dzyZk6pm1PTVoo3phTLlR7xHPcWnE4bx\nL104b/5nBka/YLRaLSqgWngwmmTQGKpSpVoMfxo9nihfwdSHHqKo0YN8+8NpCr2qUVJqpYa/d7nF\nbAYeHjIKbx8/XhzzMN/uT+HVUX/m370mUPC3xjRqPpqmEUFXbae6sK5MqLWUmbO/p8RefOHAALW6\nXG99T/wyGncdS5BvNdat30b2ti9Q1XyAUIMOTefhHJ/+N4on9r7qtU25KRSePcHqRT9iOpPD/sO7\nyK/Sgf81qoFP43/QU61G61Sj9wukVs0aoFLTuHV1jhVq2J+0guEvvUmgXkuvPt2Z9cInBD01lyrN\n+tEnpg6ZySEVjo1bs7dzShdOi5qBeGlaYcx/mbRzE4msWY1aNcIx6MuPIqh1esKqhzB64gieJ8AW\nxQAAEbRJREFU7RHN2Z3zeONcHkvnfItbb0F7cjWLj1hYHFOPYN9/8ZpTwZZ7AL3qHOiM1AyuigA0\nxmACgmIY+cRzRFXRErZ3KKN6d6Jx15F8OMwXY906aA+o8AmowSuvjuWfG1KoWW0///f0XyheOpnj\n5hC+n7MYvLM5W2oloooBbqKzft2eemRkJAMGDCj7f2BgIIWFhWXPl5aW4u/vj6+vL2az+arHb4zA\n7VZwKw7Q6Png/9pffFjgVrwQQhBcvT416yskbDvAp2+PQXNxbBT3hfEnp82Mu2x8yoTiEqDypnkL\nf/oOHMszz73Gj5+/hpfm6qWTvvE7vk8N4r+fDOWTKT/hwM3J9BNc6ocdTFiKj6F+2fRFOdlk5lz7\nA6v8+KeC4tBcGBcWAtfFGpwu1687S1QKbrdAuJ0U5ZkIDjSiuL1REPgFVqV1u4E88+xf+OjNN6nl\n543i0CLcF17PqVaBClwuF0IIAoKr4d/gcZ599hn++8kM+jUNQxEKiuK8OFYMigCtTsX5Ygvpu1Zg\nKUnn+VlbGPKn5xjZvRvu4nRy8iyYLFasxTnE7cpFUQRCqND7VkNbWIDTpeAwF3FG633hK6KwooiL\n49EVfeyp/akZDFabC4Sb0xYrAX5eCEXgUioeF1WpVWSeOUdx6i8cOFN6Yaxad2FwzJ5/gBf/8SFd\nHvsLz/VvhtuWw64TJSBAuC+Ne6qwHNnA2H/HseDHj0n78J8UW51ly0ClUpGdU4Tp2Aa2nixBCFE2\nft+pa292ffIiy7wG0iBYj8Hoz1+ffJJnn36aKS+/RaB3+T6Rl68/PqpjnDfbUYSb1ORdKG6BW4BW\n543KbcYlwGW3oxi8MRWd5dtFK/hh5mQSZ32Lw62gUl04+sbudJeN66tEKW6XAiot0U2q0LXPaJ55\n7hXmzp5GsNH7qmXmBVgtdoQiOJlxFINPAIbQ+rzQy5vRI/9N834xFbzxBZv//RiHzVX429/fpK6P\nlo0f/w+Tq/xa8avqizk7H7ciwJlN7nkHTocJtyJw2mxoAvXoEKgA5dK4sACdIRSfOgOY8PR4pr/5\nLn/uWAevzLOY7C5QLKzZeBghVAhUZCUnsy/filvRIRAYAsLYf/g0bkVgyj2Dl6E6KqEgSi+OQysK\nbpfqqjFoL99QTCYLNqcb4bZhtfsQoNdeeC9UOGAtym1fXnofmtRpwtPPPMOLk76hd5fuhGuclNov\nHJF37PhJXG6BcF3Y3p1284XlIgQIM4pboFiK2NjmaeKXr+SRYBNztxy/sI1dnH29Zp0pXPIv5mZV\no2WtKhh8fRk7ZBgTnn6a117+iBp+hgrqvDbNtGnTpl1rgvnz57NkyRK6dOlCbm4u8+fPp2nTpoSG\nhlKzZk2+++472rZtS6tWrfjiiy8YMmQIFouFWbNm8eyzz6LRaK718gAUHdvCF9+uI+dcFufytTzY\nviFqFRTnpPHZ7B856m5AkypZfDl3M2pHMbu2b0NUqUf9MF92fBWHNrCYtetXc/K0g7ah51i8JoFS\n7+p0aN6Axp3b8/XXc8gz5bJtz0EeavfQFWNUJfz12dc5evoUiUsXcCzqYUZ3qMIrI1+i05jHMACn\nNidwSvsgvTrXAWD9F//k+z3e9OlYv8L2oNhYFfcF+46dxVJsR20/zy+rFnMitwYFJ3awI+kAbv8g\n1iz6mdTjhbSJ7cCBRR+x8oieM0c2c8oZzdhe9fn6q29IKwxg5OM92L/gewrdbrauTSIoABbGz+dY\nThjW/ENs37Efi38YW1fFc+hoLg8PfRxd1nI2nzKTtisBY0Q0CQt/Zl/qSarrbaxamcxZwunawZ8F\n87Zw3ulN+wcas3FNIqK0gFN7T7LvaAot23bj/L4ENhzJoXm7B9iz/Ed2HTxFhwHDCClYxaa0bJJW\nr6Vpr7E08z/NwuXLUXwCsKZuYNfuwzRu34Hwav6/djJUXtQIVfGfOcspOLSb06pajH+sPctmfUPC\ntr3UrBlFZM2gcr11rdbJsve+IMPkoF27KBbOXUBqyjGimzYn2MfJ9rUr0PkHsifTTFrKCSLq+LE9\neTfusAbYM5PYuW8f9ZvXJm7uFgJ8oUAE0aKmjaUJa1H71yamSW0SPvqcY8U2WjaLYOnP8zmYVsKD\nsW0IrBqM7tBiYv9vPHWCAqheM5wvP/wMhRI2JZ8jNrYJ3ppf41Gr9yNaVcL8hCQy0lM4a69C0obl\n7Nx5kJbdhhBiTmPNttPs2bSA2l2HEq6cYNbydPSuc6iC69O+bVPOpy3hbAls3bWXE1mnaBEJCYlr\nOef2p33LRjRsH0P8/J/IPJ/H1h07eaBdZ/S68u+xo3tS2JWSjqXkKKtTdfzfuOFUNfhQOzqC3Y7a\njHq4aQXjtILzGalsOeHkXO4xCkzZHLVH0KNHW7wumzasUXO2Ji4kJfMMWzdtpdXAcZgPbmLngTNs\nXv4DHR8fiyY/hfWbdmMJbcHZPatJOpBC0+7DqO3azop92ZxN34S6UTfahB5jyaZUsg7toCTqAVpX\nr0ri4oVkllro/GBz5n0zk5R8A0+M7M+Bb2dz2n6OVYn76fvUs5xaHMeOwzsIrFqL5MTV7NqfSrPm\nrQgO0Jdtb2pjCMaz+1m6bR/7t6/C/4ERdK5p4bu5izicfY4WrR/E6PXrsnOZs/luzkJSj2TSqHlL\nIuo2wJS+l7W7TpCyYyuG8AfpGO3kq4WJZKXtw+ryp0G96uybH49Dd46Nm9ZwPNtB46ASViSupURb\njTbRNfj63b/jE1qdwoJztHiwNesWz2dvSj4xsQ8SFBBAaOZqAh8aREyDCEJqR/HTp19QbDnPtu0n\naNO+JUZvzc101K9/42mn08nkyZM5c+YMarWaV155hcDAQKZMmYLT6aRevXq89dZbqFQqfv75Z+bN\nm4cQggkTJtC9e/drvfRNmf7iywyZ8k+iA3SYsrfzxrd7+N/0FxHCSbHJTqDRB7sAb21FI0ouzGYb\nvr6+FTx3fXbzOUoVPVX99X+sEb/B7bLw9hN9GPHJYmr4+mA06q9aiUIolBaX4OMfgPaGdpwILKUl\naL188dL99gerzWpB66NHq1KB4sJkseNr0ONyq9HpAMWN2WbHaDBcVZPNUgoaL3y8r78z/HKK4sBs\ndeNn8Ll6R1xFLXE7cAh1hetWKG7MJSUYAgJBUSruRLjtuNUaLCYbvn7Gq+fpdmJTwKeCnfrCZUeo\nvVBfXOZCKBSbrfj7GlD/Ru0uaykOtRaD99W9aHupCeGlx0enRXE5UGlUmMwu/Hx/XRYlRUXo/Xxx\nOgV6b20Fy8iN2WzFaKygLZfqdrsoNtvw9zfiLM5mZ0oxEdq9FPn3pEWj0N8ICYHDasGJrmy+Fb++\ngtlkwWA0oFZf+FCzmk1oDEa81Nf+8m+3mVFUPugvfsux26y40WDwuTDGrzjt2JwqDFeM+QshsJrM\naI1GvDQ3dyS2027GofLB4KW9qXC8xFZqRu2tR6e9EK7CYcOiaDH4aC/uA3ZQYnLgZ/DGhQqd9rL5\nCAW7okKxlaLS+uDjXUE+ue24VV7lPmhNZjMGo7H8TvAbdN1Qv1sc3zKPVz9dwoghjzJ3znc8889Z\ndG9Rs7LLuiV2/fINL783mypNh/D9f1/ET3dXnD4geQjrmSSenPg2pfpBxM8eU+7bheR57plQB3Da\nrZgtNvS+/vhco/d5r3G7XRfGcVVqtBr1DfVeJelm2Cxm1D5GdGrV7+qtSveOuyfUBTe8h1e4HRSV\nlGL0D7jpr2KSJEme7K5JxOL8fBw3+PHiKNjP4D7dWHmy9PYWJUmSdI+5S0JdkPjl1xy3VHz68OW/\nCyHwCmnD2D4dLz1R4em5kiRJ96Prnnx0J2TuWc2MxfF0rBHJuMFDqO+dw8zZP1CQa2XYS68SHezD\n9mVz2HHSjP1MBhOmv4fz4njNvl9+4GipmmaxnTmw5hfOu2xkm2sx9W9D7o7GSZIk3UF3RU+9amRb\nWjZsxNDunQjTq8lc/xHFxjqM6teCQY+9jUOxMn9NCo8/MZS2/kXYL56GbDfns3BRInb/cLxPb+S7\nw0aGPjaG0jMm3NeZpyRJkie6K0Ldt2pVfHy8CAkNReVwENz6KXztecxfuw1xNgOHy4ca+tMM7zeI\n+aUN8VZfuL7FZ/+exlxDW4b0iKV63Vb4HJ9P/4c7UaVOGCo5AiNJ0n3orgh1ABUu3M58Pvp+D2+O\neQqfRr145k+jUQkjCxfvpFHrkaxev5rBVXaQeuocdkXwzGv/Zvyxz1m4OZ2CI7vp98Y3rNuynT3L\n55H/e67LL0mSdI+77mUC7hTzqfV882MyrR7pS1O/HBL2H+XUzl0EmdOgVTsOLPqcDLOdbbtV9OsW\nyjc/rSQr5xzPP9WJl9/8El+DHz/OWYC/twmLfySPdG6JVh6QK0nSfebuOU4dsFtteOt9gAsnGrlV\nXnhrBai0KIqC025BZ/ClotOOFKcboQFLqR2jr4GbvASxJEmSR7irQl2SJEn6Y+6aMXVJkiTpj5Oh\nLkmS5EFkqEuSJHkQGeqSJEkeRIa6JEmSB5GhLkmS5EFkqEuSJHkQGeqSJEkeRIa6JEmSB5GhLkmS\n5EFkqEuSJHkQGeqSJEkeRIa6JEmSB6mU23gKIZg2bRrp6el4eXnx9ttvEx4eXhml3DL79+/ngw8+\nIC4ujszMTF577TXUajVRUVFMnToVgPnz5zNv3jx0Oh3jx4+nS5culVv0TXC5XLz++uucPn0ap9PJ\n+PHjqV+/vke1U1EUpkyZwsmTJ1Gr1UyfPh0vLy+PauMlhYWFDBkyhG+++QaNRuNxbRw8eDC+vr4A\n1KpVi/Hjx3tcG3+TqARr1qwRr732mhBCiH379okJEyZURhm3zKxZs0T//v3F8OHDhRBCjB8/XiQn\nJwshhPjHP/4hEhISRH5+vujfv79wOp3CZDKJ/v37C4fDUZll35SFCxeKd955RwghRHFxsejSpYvH\ntTMhIUG8/vrrQgghdu7cKSZMmOBxbRRCCKfTKZ599lnRq1cvceLECY9ro91uF4MGDSr3mKe18Voq\nZfhl9+7ddOzYEYAWLVpw6NChyijjlqlduzafffZZ2e8pKSm0adMGgE6dOrFt2zYOHDhATEwMWq0W\nX19fIiMjSU9Pr6ySb1qfPn144YUXAHC73Wg0GlJTUz2qnd27d+fNN98E4MyZMwQEBHhcGwHef/99\nHn/8cUJCQhBCeFwb09LSsFgsjBs3jrFjx7J//36Pa+O1VEqom81m/Pz8yn7Xai/c2ehe1aNHDzSa\nX+/HJC6774jRaMRsNlNaWlquzQaDAZPJdEfr/CP0ej0GgwGz2cwLL7zASy+95JHtVKvVvPbaa7z1\n1lv079/f49oYHx9PUFAQsbGxZW27/L3nCW308fFh3LhxfPXVV0ybNo2XX37Z49bjtVTKmLqvry+l\npaVlvyuKglrtOftsL29LaWkp/v7++Pr6Yjabr3r8XnL27Fmee+45Ro0aRb9+/fjXv/5V9pwntfO9\n996jsLCQoUOHYrfbyx73hDbGx8ejUqnYunUr6enpTJo0ifPnz5c97wltjIyMpHbt2mX/DwwMJDU1\ntex5T2jjtVRKkrZu3ZqNGzcCsG/fPho0aFAZZdw2jRs3Jjk5GYBNmzYRExNDs2bN2L17Nw6HA5PJ\nxIkTJ4iKiqrkSm9cQUEB48aN45VXXmHQoEEANGrUyKPauWTJEmbOnAmAt7c3arWapk2bkpSUBHhG\nG+fMmUNcXBxxcXE0bNiQGTNm0LFjR49ajwsXLuS9994DIDc3F7PZTGxsrEetx2uplJ56jx492Lp1\nKyNGjADg3XffrYwybptJkybx97//HafTSb169ejduzcqlYrRo0czcuRIhBBMnDgRLy+vyi71hn35\n5ZeUlJTw+eef89lnn6FSqXjjjTd46623PKadPXv2ZPLkyYwaNQqXy8WUKVOoW7cuU6ZM8Zg2VsTT\nttehQ4cyefJkRo4ciVqt5r333iMwMNDj1+Ml8sbTkiRJHsRzBrIlSZIkGeqSJEmeRIa6JEmSB5Gh\nLkmS5EFkqEuSJHkQGeqSJEkeRIa6JEmSB5GhLkmS5EH+H4Unk4JqaeSSAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(plt.imread('./res/fig2_7.png'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.4.3 Pregel\n", "**solution B**: backup entire stats of each task **checkpoints**, so recovery the backup point if fail.\n", "\n", "checkpoints is triggered at fixed *supersteps*." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.4.4 Exercises for Section 2.4\n", "###### Ex 2.4.1\n", "for the prob of a taks, success is $(1-p)^t$, fail is $(1 - (1 - p)^t)$ . So the expected execution time of a task is $(1-p)^t t + (1 - (1-p)^t) 10 t = 10t - 9t(1-p)^t$.\n", "\n", "Thus, total expected time is $n(10t - 9t (1-p)^t) = nt(10 - 9 (1-p)^t)$." ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[,\n", " ]" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeYAAAFVCAYAAAA6zUwUAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl4XPV97/HPrFpGuyzvtuTd2OwGaiAQSjElCQGM7UIA\nQ2+5pEluWp7SPiUOCZTkZuttKG0TGiiEPDS3kFJIIJBCQnyBBBwwxDteZdnWYu27ZjTb+d0/tJjF\n1jKSzjkz83498SPLmjPnmxNFX31/y/fnMcYYAQAAV/A6HQAAADiBxAwAgIuQmAEAcBESMwAALkJi\nBgDARUjMAAC4yJgS844dO7Rx40ZJ0rFjx3TTTTfplltu0f333z+lwQEAkG1GTcyPPvqovvKVryge\nj0uSvvWtb+muu+7Sj3/8Y1mWpVdeeWXKgwQAIFuMmpgrKyv1/e9/f/jzPXv26LzzzpMkXXrppdqy\nZcvURQcAQJYZNTGvWbNGPp9v+PP3NwoLhULq6emZmsgAAMhC/vFe4PWeyOV9fX0qKioa9ZqWlqlJ\n3h39ndrVulcHO6t1sOOweuK9J31dwBtQwOuX3+tXwOuXz+uT1+OTVx55PB55PV55JEkeeeTRwH88\ng/82mrG9CunNyMiyBv4kLSPLDP1dsowly5IsY2SGvzb4uTGyzImvGSO5qQeuZ/Dbd/i7ePB7/2Sv\n+cC/nXjxKb720U/G//+UMbw/4FIeST++9X+ndO24E/OKFSu0detWnX/++Xr99de1evXqlG48EcYY\nbTn+jp4+8DPFrIG57+Jgkc6fcY4WlSxQWW6pioIFKgwWqCAQkt877v+ayAL9sYQ6eqLq7oupszem\nrr6Yuvqi6umLqyccU09k4GNvJK5INDnu9/d5PcoN+hQM+JQz+CcY8CoY8CnoH/gY8HsV9HsVGPzj\n9534OPDHo8Dg331ej3w+r3w+j/xej3zegb/7vAN/vN6hv3vlHfzc69HgR8/7PmrwF1JSHOBG485Y\nd999t7761a8qHo9r0aJFuuqqq6YirlMKx8P6j/3PalvzTuX5c7V+0Se0snyZKvKmycMPGgyyjFFX\nb0xtXf1q7YqopatfbV0RtXdH1dETVXtPVJFoYsT38Hk9KswPqLwoTwV5foXyAgrlBhTK9Ss/16/8\n3IDycnzKzxn4mBf0KzfoU27OwEe/j92IAMbPY8fpUpM1lH2os0Y/2vOkOqKdWlRcpdtWfEbleaWT\n8t5IT/2xhBpaw2po7VNje1hNHWE1tUfU3BFWLGGd9Jr8HL9Ki3JUVpir0sKgikM5Ki4Iqjg08PfC\nUECFeUHl5fj4ZQ9AyioqClO6Lm3GePe07de/7vihPB6Prl5wpa6s/EP5vL7RL0RGsIxRS0dER5t6\ndLSpR3XNfWpo7VVbd/Qjr80J+DSzLF/TS/M0rSRPFcW5Ki/OU3lxrsqLcpQbTJtvewBZKC1+Qhlj\n9PPq/5Yk/cXZd2hp6SKHI8JU6+iJ6nBDl6obunW4oVvHmnrUH/vgPG9xQVArqko1e1pIs6eFNKss\nXzPK8lUcClLpAkhbaZGYd7ftVW1vg1ZNP4uknIGMMWrqiGjfsQ7tP9apg3Wdan9fJezxSLPLQ5o/\no0DzZxRq/oxCzZteoIK8gINRA8DUcH1iNsbov2t+LUm6quqPHI4Gk6W7L6bdNW3afbhde491qKs3\nNvy1ovyAzlkyTQtnF2nR7GJVzSpk+BlA1nD9T7u97Qd0tKdWZ1ecrtkFM50OBykyxuhIY4+2HWzV\nrsNtOtp4YkFgUSioC06brmXzS7V8folmluUzFA0ga7k6MRtj9IuagV7cV1Vd4XA0GC/LGB2q69K7\n+1v0+wPNwwu1fF6Pls8v0RkLy3XGwnLNqQiRiAFgkKsT8/6OQ6rpPqozpq3QvMLZToeDMapr7tWb\nuxu15b3G4SHqvBy/Llw5Q+curdCKqjLl5bj6Ww8AHOPqn44vHRmYW/4Ec8uu190X0+/2NOrN3Y06\n1jzQGjWU69clZ87SqmXTtaKqlIYbADAGrk3MBzuqdbDzsFaUL1Nl0Tynw8FJGGNUXd+tzdvq9M6+\nZiWSRj6vR+csmaaLTp+pMxdNU8BPMgaA8XBtYn756P+TJH2CuWXXiScsbdnTqM3v1g1Xx7PK83XZ\n2XO0euUMFeYHHY4QANKXKxNz0krqQEe15hXO0cLiSqfDwaBINKFXt9frl1tr1dUbk9fj0aqlFbr8\n3DlaXlnKAi4AmASuTMxN4RYlTVLzCljw5QY94Zh+9U6dNr9bp3A0oZygT1f9wXxdsWquyopynQ4P\nADKKKxNzQ1+jJGl2wSyHI8lu/bGEfvl2rV56+5j6Y0kV5AW09tKFuvzcOQrl0nULAKaCOxNz72Bi\nDtFQxAmJpKVXt9Xr528eUU84rsL8gNZeslCXnj1bOQEODgGAqeTOxNx3XJLo9GUzY4y2HWzVU78+\nqNaufuUGfbruYwu05vx57DsGAJu48qdtQ2+jCgMFKgwWOB1K1mjqCOs/fnVQuw63yef1aM158/Sp\niypVxAprALCV6xJzf6Jfbf0dWla62OlQskI0ntSLW47qpbeOKpE0WlFVqpvXLNWs8pDToQFAVnJd\nYj7e1ySJYWw7HKjt1A9f3KvmzohKC3P0mT9aolXLKtj2BAAOcl1iPrHwixXZUyUWT+rZ1w/rV1tr\nJUl/fME8XfuxBRytCAAu4LqfxPWDW6XmUDFPicMN3Xrsxfd0vC2sGaV5uv1TK7R4brHTYQEABrku\nMTf0HpdHHs0MzXA6lIxiGaOX3jqmZ187LMsYXbFqrtZdtojtTwDgMq5KzMYYNfQ1qjyvTDk+VgNP\nlt5IXI++8J52VreppCCoOz69UqdVljodFgDgJFyVmLtjPeqLh7W4eIHToWSM6oYu/eBnu9XWHdXK\nqlLdcc1KtkABgIu5KjEPL/xifnlSbP59nZ585aAsy+i6jy3Q1RdVyetlxTUAuJmrEnP9cMcvVmRP\nhGUZPfnrg/r1u3UqzA/os9es1MqqMqfDAgCMgasSMz2yJy4STejh5/doZ3Wb5kwL6c71Z2paSZ7T\nYQEAxiilxByLxbRp0ybV1dWpoKBA9913n+bPnz/hYI73Ncrv9asir3zC75WN2rv79eDTO1XX0quV\nC8r0+WtPV36uq373AgCMIqWf2k8//bRCoZB+8pOfqKamRvfff78ee+yxCQViGUvH+5o0K3+6fF62\n8IxXXXOvvvuf29XVG9MfnjNHN61ZIp/X63RYAIBxSikxHzp0SJdeeqkkacGCBTp8+PCEA2mJtClu\nJTSLhV/jVnO8Ww/8ZLv6+hO68fLFWnP+PNpqAkCaSqmkOu200/Tqq69KkrZv367m5mYZYyYUCPPL\nqTlQ26n/8+Q2haMJ3f6p03TlBfNJygCQxlKqmNetW6fq6mrdfPPNOvfcc7Vy5coJJ4OGXlZkj9ee\nmnb9yzM7lbSM/vyalbrgNLqlAUC6Sykx79q1SxdeeKE2bdqk3bt3q6GhYcKBNNAje1y2H2rVQz/d\nJcmj/3X9GTp78TSnQwIATIKUEnNlZaX+6Z/+ST/4wQ9UVFSkb3zjGxMOpKG3Ufn+PBUHiyb8Xpnu\nvSPteuinu+T1evQX685kjzIAZJCUEnNpaakef/zxSQsiloypJdKmRSVVzI+OorqhS//yzC5J0l+u\nO1MrSMoAkFFcsZ/meF+TjAwLv0ZR19yrB/9zh+IJS39+zekkZQDIQK5JzBI9skfS1BHWdwe3RP2P\nTy7XqmUVTocEAJgCrkjMPbFeSVJJTrHDkbhTZ29U331qu7r6YvrMFUt08RmsXAeATOWKxBxJ9EuS\n8vz0dP6wWDypf3lml1q7+nXtxxZozXnznA4JADCFXJGYw4mIJCmfxPwBxhj98Bd7VXO8WxedPlPX\nXFzldEgAgCnmisQcGUzMef5chyNxl5+/cURv723W4rnFuu2q5axYB4As4IrEHB5OzFTMQ97e26Sf\n/bZG04pz9cXrz1DA74r/qQAAU8wVP+0j8X55PV7l+IJOh+IKNce79diLe5Ub9Okv15+ponyeCwBk\nC3ck5kRE+f48hmol9Ubi+t6zu5RIWvrctSs1t6LA6ZAAADZyRWIOJyLML0uyjNGjL7ynjp6orrtk\noc5cRP9rAMg2rkjMkUSE+WVJL799TDur27RyQZk+dWGl0+EAABzgeGKOJ+OKW4ms3yp1qK5Lz7x6\nWCUFQd1x9Qp5GdYHgKzkeGKOJIeai2TvUHZvJK5/fW63jAbOVS4KsdgLALKV84k5PthcJJCdFfP7\n55XXXrJQy+aXOh0SAMBBjifmcJa349z8bt3wvPInmVcGgKzngsScvc1FmjrC+q9Xq1WQF9D/ZF4Z\nACAXJObIcJ/s7Jpjtiyjx17cq1jC0i1XLlUx88oAALkoMWdbxfyrd2p1qK5L5y2frgtOm+F0OAAA\nl3A+MccH5pizafHX8bY+Pfv6YRXmB3TLlUudDgcA4CKOJ+Zsm2NOWpYee3Gv4glLt/7xMvpgAwA+\nwPHEnG1zzC+/XavDDd1avWKGVi2b7nQ4AACXcTwxZ1PF3NIZ0XO/rVFRKKib1jCEDQD4KMcTcySL\n9jE/+cpBxROWbrh8sQryAk6HAwBwIccTczgRkd/rV9CX2Ylq+8FWbT/UquXzS7R6BauwAQAn53hi\njmTBkY/ReFL/8coB+bwe3XzlMs6dBgCckvOJOd6f8SdLvbjlqFq7+rXm/HmaMy3kdDgAABfzp3JR\nIpHQ3Xffrfr6evn9fn3961/XggULxv0+xhhFEhGV55WlEkZaaGoP66W3jqq0MEfXXFzldDgAAJdL\nqWJ+7bXXZFmWnnrqKX3hC1/QP/7jP6Z087gVV8IkM3Yo2xij//urA0okjW78oyXKDab0exAAIIuk\nlJirqqqUTCZljFFPT48CgdQWboWH9zBn5lD29oOt2l3TrpVVpTpvWYXT4QAA0kBKJVwoFFJdXZ2u\nuuoqdXZ26uGHH07p5sNbpTKwHWfSsvRfr1XL6/HoM1csZcEXAGBMUqqYf/SjH+mSSy7Ryy+/rOef\nf1533323YrHYuN8nksEV8292HtfxtrAuOWuWZrPgCwAwRilVzMXFxfL7By4tLCxUIpGQZVnjfp9w\nfKjrV2bNMUdjST33mxoFA15d+7HxL4oDAGSvlBLzbbfdpi9/+cu6+eablUgk9Nd//dfKzR1/cs3U\ndpy/3HpMXX0xXX1RlUoKcpwOBwCQRlJKzPn5+XrwwQcnfPOhOeZMGsru7ovpF28dU0FeQJ/4g/lO\nhwMASDOONhjJxDnmn79xRNFYUtd+bIHyctgeBQAYH0cT8/BQdiAz5pibOsJ6dXu9ppfk6eNnz3Y6\nHABAGnK2Yo5n1slSP339sJKW0fUfXyi/z/FupwCANMRQ9iSpb+3T1r3NqpxRqPOXT3c6HABAmnLH\nUHYGbJd68c0jMpKuubiKZiIAgJQ5XjEHvQH5vem9SKqxPay39jZp3vQCnb1kmtPhAADSmMMVc39G\nzC+/+OYRGSN9+iKqZQDAxDheMad7n+zmzoi27GnS7GkhnctBFQCACXIsMQ+cxdyv/DSfX/7FliOy\njNHVF1XKS7UMAJggxxJzNBmTZay0XpHd2hXRG7saNaMsXxcsn+F0OACADOBYYo5kQJ/s//7dMSUt\no6svrJTXS7UMAJg4xxJzuh9g0dET1W92NqiiJFerV1ItAwAmh4MV89ABFuk5x/zKu7VKJI0+dWGV\nfF66fAEAJofzQ9lpuCq7P5bQa9saVJQf0IVUywCASeTcUHY8fbt+vbGrUeFoQpedM0cBv8/pcAAA\nGcTxOeZ8f75TIaTEMkavvFMrv8+jPzx3rtPhAAAyjPND2WlWMe881KamjohWr5yp4lDQ6XAAABnG\nBYu/0muO+Zdbj0mSrjxvnsORAAAykeND2em0XepYU4/2HevUiqpSzZ1e4HQ4AIAM5HjFnBdIn6Hs\nX22tlSRdeT7VMgBgajiXmIdWZfvSIzF39Ub11t4mzSzL1+kLy50OBwCQoRwdys715cjnTY/tRpt/\nX69E0mjN+fM4rAIAMGUcXZWdLvPLiaSl17bXK5Tr10Wnz3Q6HABABnOwYu5Pm61S2w62qjsc18Vn\nzFJOID0qfABAenIkMVvGUn+iP20q5te210uSLj1rtsORAAAynSOJOZqMysgoPw36ZDd3hPXekQ4t\nnVei2dNCTocDAMhw/lQu+ulPf6pnn31WHo9H0WhU+/bt0xtvvKGCgrHt7Q3H06e5yOs7jkuSPn42\n1TIAYOqllJjXrl2rtWvXSpK+9rWvaf369WNOytL7m4u4e445kbT0250NCuX6dd6yCqfDAQBkgQkN\nZe/atUuHDh3Shg0bxnVdJE26fm0fXPR10emzOEUKAGCLCSXmRx55RF/84hfHfV1k+GQpd1fMr+1o\nkCRdyjA2AMAmKSfmnp4eHTlyRBdccMG4rw0Pt+N075GPLZ0R7alp15K5xZrDoi8AgE1STsxbt27V\n6tWrU7o2HSrm1werZRZ9AQDslHJirqmp0bx5qR3mEI67e455YNHXceXn+HXesulOhwMAyCIprcqW\npNtvvz3lm7p98dfO6jZ19cV0xaq5CtLpCwBgI0cajAwd+ejWoewtuxslSR87c5bDkQAAso0jiXlo\nH7MbO3/19ce1o7pVcypCmjd97HuzAQCYDA5VzBF55FGOL8eJ249o675mJZJGF66cKQ/HOwIAbObY\nUHauP1dej2OHW53S7waHsVevmOFwJACAbOTMUHY84sr55dbOiA7UdWn5/BKVFbkvPgBA5nMkMceS\nMVcOY//uvSZJ0oUrZzocCQAgWzmSmBMmIb/XXduQjDHasqdRfp9Xq9i7DABwiCOJOWkl5fO4KzEf\nberR8bawzl4yTfm5KW/vBgBgQmxPzMYYJUxSPpdVzFt2DwxjX8QwNgDAQbYnZstYkiS/xz1VadKy\n9NbeJhXkBXT6wjKnwwEAZDHbE3PCJCXJVRXze0c61N0X0/mnTZff574tXACA7GF7FkpaCUmS30Vz\nzFv2DOxdZjU2AMBp9ifmwaFst1TMsXhS2w60qqIkV4tmFzkdDgAgy9k/lD1YMftcMse8p6Zd0XhS\n5y2bTgtOAIDjHKiYB+aY3bKP+Z39zZKk85azdxkA4DwHKmb3LP6KJyxtP9Sm8qIcVc0sdDocAACc\nq5jd0GBk79F2RaIJnbuUYWwAgDs4NsfshlXZ7+xvkSSdt7zC4UgAABjgXMXs8FB2Imlp24EWFRcE\ntWhOsaOxAAAwxLE5Zqcr5v21nerrT2jV0gp5GcYGALiEAw1GhipmZ7dLvTs4jM1JUgAAN3GgJefg\nHLODQ9mWZfT7/c0qzA9o6TyGsQEA7uFc5y8Hh7IP1nWqOxzXOUsq5PPSGxsA4B7O9cp2sGJmNTYA\nwK2cazDiUEtOyxj9/kCLQrl+LZ9f6kgMAACcSta15Dzc0K2OnqjOXjKNIx4BAK7jYMXsTFLccahV\nknTuUoaxAQDuk/J48iOPPKLNmzcrHo/rpptu0rp168Z03YkGI84MZe841Cq/z6sVlWWO3B8AgJGk\nlB3ffvttbdu2TU899ZTC4bB++MMfjvlaJ1tytnX1q66lT2csLFdO0PmWoAAAfFhKifm3v/2tli5d\nqi984Qvq6+vT3/7t3475Widbcu6sHhjGPmtxue33BgBgLFJKzB0dHWpoaNDDDz+s2tpaff7zn9dL\nL700pmudbMm5o7pNknTmIhIzAMCdUkrMJSUlWrRokfx+vxYsWKCcnBy1t7errGz0eVun5pij8aT2\nHu3QnIqQphXn2XpvAADGKqWl0atWrdJvfvMbSVJTU5P6+/tVWjq2PcFJhyrmvUc7FE9YOmvRNFvv\nCwDAeKRUtl522WV65513tH79ehljdN9998kzxhOaEg7NMe8c3CbFMDYAwM1SHk/+m7/5m5SuSzqw\nKtsYox3VbQrl+rVoTpFt9wUAYLwcOF3K/jnm2uZedfREdcaicg6tAAC4mnPnMdvY+YvV2ACAdOFY\nxey3sWLeeahVXo9Hpy8gMQMA3M3BitmeOebucEyHG7q1eG6xCvICttwTAIBUOVAx23se867qNhlJ\nZzGMDQBIAxlfMQ/PLy9m/zIAwP0cOfbRI4+8Niz+siyj92raNa04V7PL86f8fgAATJTtidkySfm8\nvjE3JJmImsZuhaMJrVxQZsv9AACYKEdWZdvVXOS9Ix2SpBVVnL0MAEgPjswx29WO872adnkknVY5\ntj7eAAA4zZFV2XZUzP2xhA7Vd2n+zEK2SQEA0oYjFbPXhsR8oLZLSctoJcPYAIA04siqbDv2ML93\npF2StLKKYWwAQPqwv2I2SVsOsHjvSLsCfq8Wzy2e8nsBADBZnKmYp3gou6s3qrqWPi2dV6KA395z\nnwEAmAgHKubElK/KPrFNimFsAEB6yciK+cT8Mgu/AADpxdbEbBlLRmZK55iNMdpzpF2F+QHNnV4w\nZfcBAGAq2JqYhw6wmMqK+XhbWJ29MZ1WWSovbTgBAGnG1sScMIMnS03hHPMehrEBAGnMkYp5Ko98\nfK9mIDHTHxsAkI5srpgTkjRlDUYSSUv7ajs1oyxf5cW5U3IPAACmUkZVzIcbuhWNJen2BQBIW47M\nMU9Vxbzv2MD+ZU6TAgCkK4cq5qnZLnWgtlOStHReyZS8PwAAUy1j5pgTSUuH6rs0Z1pIhfnBSX9/\nAADskHLpev3116ugYKCBx9y5c/XNb35z1Gumco75aFOPYnGLahkAkNZSSsyxWEyS9MQTT4zruqSx\nBm46BRXzgWMMYwMA0l9KQ9n79u1TOBzW7bffrj/90z/Vjh07xnRdwhoYyp6KOeb9zC8DADJAShky\nNzdXt99+uzZs2KAjR47ojjvu0Msvvyyvd+Q8n5yiVdmWZXSwrkvTS/NUWpgzqe8NAICdUkrMVVVV\nqqysHP57SUmJWlpaNGPGjBGvSwzPMU/umrO6ll5FogmtWlYxqe8LAIDdUsqQzzzzjL797W9Lkpqa\nmtTX16eKitGTYnK4V/bkDmUPDWMvYxgbAJDmUsqQ69ev16ZNm3TTTTfJ6/Xqm9/85qjD2NKJOebJ\nPl1qaOEXiRkAkO5SSsyBQED/8A//MO7rhrdLTeIcszFG+2s7VVaUQ39sAEDac6Yl5yRWzMfbwuqN\nxLV0Xok8nL8MAEhzzrTknMQ5ZtpwAgAySdq35GThFwAgk9iamC1roPPXZLXkNMboQG2nivIDmlmW\nPynvCQCAk9K6Ym7p6ldHT5T5ZQBAxkjrYx+Ht0nN5/xlAEBmcGRVtm8Me57HYn9thyQWfgEAMkda\nV8wHa7uUn+PXnIrQpLwfAABOc2Yf8yTMMXf3xdTcGdHiucXyMr8MAMgQNlfMQ8c+TjwxVzd0SZIW\nzi6a8HsBAOAWaVsxV9d3S5IWzSme8HsBAOAWaTvHfLihSx5JC2dRMQMAMkdaVsxJy9Lh492aXRFS\nXs7kHiEJAICTHKqYJ5aY65r7FItbWsT8MgAgw9ibmCepYj48uPBr0WzmlwEAmcXeoexJWpV9aHDh\n10IWfgEAMoztFbPX451wX+vDDQONRWaVc3AFACCz2FwxJ+WfYLXcE46pqSOihbOLaCwCAMg4tlfM\nPu/EVlFXNwwOY7PwCwCQgdKuYh5a+LWY+WUAQAayvSWnb4Irsoc6fi2gYgYAZCDbG4xMpGK2LKPD\nx7s1qzxfodzAJEYGAIA72N5gZCJzzPWtfYrGkuxfBgBkLNsXf02kuUh1/WBjkTkMYwMAMpPtQ9kT\naS5STccvAECGs38oeyKJub5buUGfZk8LTWJUAAC4x4QSc1tbmy677DLV1NSM+lpjzISGsnsjcTW2\nhwcai3hpLAIAyEwpJ+ZEIqH77rtPubm5Y3r90AEWqVbMh4cbizCMDQDIXCkn5u985zv6zGc+o+nT\np4/p9QlrYidL1Ryn4xcAIPOllJifffZZlZeX6+KLL5YxZkzXDFfMKW6XOtrYI0laMLMwpesBAEgH\nKSfmN954Qxs3btS+fft09913q62tbcRrhivmFIeyaxq7VVIQVHFBTkrXAwCQDlIqX3/84x8P/33j\nxo362te+pvLy8hGvSZrBs5hTGMru6ImqqzemsxdPG/e1AACkkwlvlxrr2coTqZiHhrGrGMYGAGS4\niZ3BKOmJJ54Y0+usCcwxH2kcWPhVNYvEDADIbLY1GJmMirlyJiuyAQCZzbbEPLQq2+sd/y2PNPao\ntDBHxaHgZIcFAICrOFAxj28ou6Mnqq6+GPPLAICsYGPFnNqq7OH5ZRIzACALuH6OmfllAEA2sX2O\nefwVM1ulAADZw9VzzMYYHWnsUVlRjopY+AUAyAL2VczW+OeYO3qi6u6LqYphbABAlrCvYjbjn2M+\nMb/MMDYAIDu4eo65hhOlAABZxsah7KHzmMc+x0zFDADINrYPZfs8Y7vlwMKvbpUX5aown4VfAIDs\nYHvF7BvjHHNHT1Q94TjbpAAAWcX+7VJjHMoe3r/MiVIAgCxif0vOMVbMQ604mV8GAGQTByrmsSbm\noY5f7GEGAGQPV26XMsboaGOPphXnqiAvMNWhAQDgGq5sydnVF1NPOK550wumOiwAAFzFlcc+1jb3\nShKJGQCQdWzcLmVJGltLThIzACBb2dhghIoZAIDRuLLBSG1zr3KCPk0ryZvqsAAAcBX7T5capWKO\nJ5JqbAtrXkWBvB6PHaEBAOAaDlTMI6/KbmgNyzKGYWwAQFZyXcV8rHmgsQiJGQCQjWysmBPyyCPv\nKKdLDS38mktiBgBkobEfjvw+lmXpK1/5impqauT1enX//fdr8eLFI16TMMkxteOsa+6VR9LcilAq\noQEAkNZSqpg3b94sj8ejJ598UnfeeaceeOCBUa9JWslR55eNMapt7lVFaZ5ygyn9zgAAQFpLKftd\nccUVuvzyyyVJ9fX1Ki4uHvWasVTMHT1R9fUntLyyNJWwAABIeymXpV6vV1/60pf0yiuv6J//+Z9H\nfb1lJUfdw0xjEQBAtpvQePG3v/1ttbW1acOGDfrFL36h3NzcU742YZKjdv0iMQMAsl1Kc8zPPfec\nHnnkEUlza3ptAAAJi0lEQVRSTk6OvF6vvN6R3yppJUbtkz2cmCtIzACA7JRSxXzllVdq06ZNuuWW\nW5RIJHTPPfcoGAyOeE3CJJU/hoo5L8ev8uJTV94AAGSylBJzXl6eHnzwwXFdk7SSI1bM0XhSTR1h\nLZlTLA+tOAEAWcrWzl8+76l/D6hv6ZMx0rzphXaFBACA69iSmI0xg/uYT10x1w614pzB/DIAIHvZ\nkpgtY8nIjLiPua65TxIrsgEA2c2WxJwcPMBipO1Stc098nik2dNoxQkAyF62JObE4JGP/lO05DTG\nqLalTzNK85UTGL2fNgAAmcoVFXNbV78i0QTD2ACArGdvYj7FkY90/AIAYIArhrLrWjiDGQAAya6K\n2UpIOvVQdkNbWJI0h4VfAIAsZ0/FPDiUfartUvUtfQoGvLTiBABkPZsq5qE55o8m5qRlqbG9T7PK\nQ/LSihMAkOVsrpg/Osfc0tmvRNIwjA0AgOyeYz5JxVzfMtDxi8QMAIAL5pgbWgdWZM8iMQMA4Pwc\nc30rFTMAAEMc7/zV0BpmRTYAAINsbjDywcTMimwAAD7I0Yq5uSPCimwAAN7H0ZacDa10/AIA4P1s\nqphP3pJzaEU2ZzADADDA0TnmoRXZJGYAAAY4OsfMimwAAD7IsTnmoRXZs1mRDQDAMMeOfRxakc0w\nNgAAJzjWkrOBjl8AAHyEvXPMno8mZipmAABO+Og5jGOQSCT05S9/WfX19YrH4/rc5z6nyy+//JSv\nP1mvbHpkAwDwUSkl5ueff16lpaX6+7//e3V1dem6664bMTGfaig7GPCqjBXZAAAMSykxf+ITn9BV\nV10lSbIsS37/yG9zomL2D35uqbE9rLkVBazIBgDgfVJKzHl5eZKk3t5e3Xnnnfqrv/qrEV8/vF1q\nsGKmRzYAACeX8uKv48eP67bbbtPatWv1yU9+csTXfrglJwu/AAA4uZQq5tbWVt1+++269957tXr1\n6lFfn/xQS05acQIAcHIpVcwPP/ywuru79dBDD2njxo269dZbFYvFTvn6xHBLzoHfA9jDDADAyaVU\nMd9zzz265557xvz6D1fMDa19ygn4WJENAMCH2NT5a2CO2evxyrKMGtsjmlmez4psAAA+xKZe2ZZ8\nHp88Ho9au/uVSFqaVZZvx60BAEgrNrXkTAyvyG5sC0uSZpKYAQD4CNuOfRyaX25sH0zM5SRmAAA+\nzLZDLIYr5nYqZgAATsXGinlgAXhj28BWqRmlJGYAAD7MkYq5rChHOUHfKFcBAJB9bKqYE/J7fIpE\nE+rsjTGMDQDAKdhaMTd1ML8MAMBIbJ1jZqsUAAAjs7ViZqsUAAAjsyUxW8aSz+NlqxQAAKOwJTFL\nkt/rV2N7WEG/V2VFHF4BAMDJ2JaYfR6fmtojml7K4RUAAJyKbYnZSnoUjSeZXwYAYAS2JeZ43Ehi\nfhkAgJHYlpijsYHEzHGPAACcmn2JOTpYMTOUDQDAKdmWmCNRSxJD2QAAjMS2xByOWCoOBZWX47fr\nlgAApB3bEnN/1KJaBgBgFLYlZmN5mF8GAGAUtiVmGa9mlJKYAQAYia2JmYoZAICR2ZiYPexhBgBg\nFLYlZo/xaVoJh1cAADCSCSXmHTt2aOPGjWN6bWFejnxe+wp0AADSUcqbih999FE999xzCoVCY3p9\ncYhqGQCA0aRcwlZWVur73//+mF9fGspL9VYAAGSNlBPzmjVr5PP5xvz6sgISMwAAo7GlP+Z/3vCv\ndtwGAIC0N+HVWMaYyYgDAABoEhKzx+OZjDgAAIAkj6HkBQDANdhYDACAi5CYAQBwERIzAAAuQmIG\nAMBFJjUxG2N033336cYbb9Stt96q2traD3x98+bNWr9+vW688UY9/fTTk3nrrDHaM37hhRf0J3/y\nJ7rpppv0d3/3d84EmeZGe8ZD7r33Xj3wwAM2R5c5RnvOO3fu1M0336ybb75Zd955p2KxmEORpq/R\nnvHzzz+v66+/Xhs2bNCTTz7pUJSZ4VRnR6SU98wk+uUvf2m+9KUvGWOM2b59u/n85z8//LV4PG7W\nrFljenp6TCwWM+vWrTNtbW2TefusMNIz7u/vN2vWrDHRaNQYY8xdd91lNm/e7Eic6WykZzzkySef\nNDfccIP57ne/a3d4GWO053zttdeaY8eOGWOMefrpp01NTY3dIaa90Z7xxRdfbLq7u00sFjNr1qwx\n3d3dToSZ9v7t3/7NXH311eaGG274wL+nmvcmtWJ+9913dckll0iSzjrrLO3evXv4a9XV1aqsrFRB\nQYECgYBWrVqlrVu3Tubts8JIzzgYDOqpp55SMBiUJCUSCeXk5DgSZzob6RlL0rZt27Rr1y7deOON\nToSXMUZ6zjU1NSopKdHjjz+ujRs3qqurS1VVVQ5Fmr5G+15evny5urq6FI1GJdGXIlWnOjsi1bw3\nqYm5t7dXhYWFw5/7/X5ZlnXSr4VCIfX09Ezm7bPCSM/Y4/GorKxMkvTv//7vikQiuuiiixyJM52N\n9IxbWlr0ve99T/feey9d7yZopOfc0dGh7du3a+PGjXr88cf15ptv6q233nIq1LQ10jOWpCVLlmjd\nunX69Kc/rcsuu0wFBQVOhJn2TnV2RKp5b1ITc0FBgfr6+oY/tyxL3sEzmAsKCtTb2zv8tb6+PhUV\nFU3m7bPCSM9YGphT+s53vqMtW7boe9/7nhMhpr2RnvFLL72kzs5O3XHHHXrkkUf0wgsv6Gc/+5lT\noaa1kZ5zSUmJ5s+frwULFsjv9+uSSy75SLWH0Y30jPfv369XX31Vmzdv1ubNm9XW1qaXX37ZqVAz\nUqp5b1IT87nnnqvXXntNkrR9+3YtXbp0+GuLFi3S0aNH1d3drVgspq1bt+rss8+ezNtnhZGesSR9\n9atfVTwe10MPPTQ8pI3xGekZb9y4Uc8884yeeOIJffazn9XVV1+t6667zqlQ09pIz3nevHkKh8PD\ni5XeffddLV682JE409lIz7iwsFB5eXkKBoPDo23d3d1OhZoRPjyKlmrem9TTpdasWaM33nhjeO7t\nW9/6ll544QVFIhFt2LBBmzZt0p/92Z/JGKMNGzZo+vTpk3n7rDDSM165cqWeffZZrVq1Shs3bpTH\n49Gtt96qK664wuGo08to38eYHKM952984xu66667JEnnnHOOPv7xjzsZbloa7RkP7eAIBoOaP3++\n1q5d63DE6W1ojn6ieY9e2QAAuAgNRgAAcBESMwAALkJiBgDARUjMAAC4CIkZAAAXITEDAOAiJGYA\nAFzk/wMVw/XqYkbgSgAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def calc_prob(p, t):\n", " return 10 - 9 * ((1 - p)**t)\n", "\n", "p = np.linspace(0, 1, 100)\n", "\n", "y1 = calc_prob(p, 10)\n", "y2 = calc_prob(p, 100)\n", "plt.plot(p, y1, 'b', p, y2, 'g')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "###### Ex 2.4.2\n", "suppose that supersteps should be $n$, the time of one execting a superstep is $t$.\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.5 The Communication Cost Model\n", "for many applications, the bottleneck is moving data among tasks." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.5.1 Communication-Cost for Task Networks\n", "The *communication cost* of a task is the size of the input to the task. we shall often use the number of tuples as a measure size, rather than bytes.\n", "\n", "The *communication cost* of an algorithm is the sum of the communication cost of all the tasks implementing that algorithm. We shall focus on the communication cost as the way to measure the efficiency of an algorithm, since the exceptions, where execution time of tasks dominates, are rare in practice.\n", "\n", "We count only input size, and not output size." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.5.2 Wall-Clock Time\n", "Besides communication cost, we must also be aware of the importance of *wall-clock time*, the time it takes a prallel algorithm to finish.\n", "\n", "The algorithms shall have the property that the work is divided fairly among the tasks." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.5.3 Multiway Joins\n", "example: $R(A, B) \\bowtie S(B, C) \\bowtie T(C, D)$.\n", "\n", "Suppose that the relation $R, S, T$ have sizes $r, s$, and $t$, respectively. and for simplicity, suppose $p$ is the probability that any two tuples in each relations agree on the item they share.\n", "\n", "##### Solution 1: general theory\n", "$\\operatorname{join} \\left ( \\operatorname{join} \\left ( R(A, B) \\bowtie S(B, C) \\right ) \\bowtie T(C, D) \\right )$\n", "or exchange the sequence of join.\n", "\n", "1. 1st MapReduce\n", " $\\operatorname{join} \\left ( R(A, B) \\bowtie S(B, C) \\right )$\n", " $O(t + prs)$\n", "\n", "2. 2nd MapReduce\n", " $O(r + s + t + prs)$\n", " \n", "\n", "##### Solution 2: use a single MapReduce job that joins the three relations at once.\n", "\n", "Assume: \n", "\n", "+ We plan to use $k$ reducers for the job.\n", "\n", "+ $b, c$ represents the number of buckets into which we shall hash $B-$ and $C-$values, respectively.\n", "\n", " - $h(B) \\to b$.\n", " \n", " - $g(C) \\to c$.\n", " \n", " we require $b c = k$.\n", " \n", "So, the reducer corresponding to bucket pair $(i, j)$ is responsible for joining the tuples $R(u, v), S(v, w)$, and $T(w, x)$ whenever $h(v) = i$ and $g(w) = j$.\n", "\n", "1. $S(v, w)$ to reducer $(h(v), g(w))$.\n", " communication cost: $s$\n", "\n", "2. $R(u, v)$ to $c$ reducers $(h(v), c)$.\n", " communication cost: $c r$\n", "\n", "3. $T(w, x)$ to $b$ reducers $(b, g(w))$.\n", " communication cost: $b t$\n", " \n", "There is also a *fixed* cost $r + s + t$ to make each tuple of each relation be input to one of the Map tasks.\n", "\n", "The problem arises:\n", "$$\\operatorname{arg \\, min}_{b, c} s + cr + bt \\text{where} bc = k$$\n", "We get the solution: $c = \\sqrt{kt / r}$ and $b = \\sqrt{kr / t}$. So $s + cr + bt = s + 2 \\sqrt{k r t}$. \n", "\n", "In all, the total communication cost is $r + 2s + t + 2 \\sqrt{k r t}$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.5.4 Exercises for Section 2.5\n", "#todo" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.6 Complexity Theory for MapReduce\n", "our desire in the section:\n", "\n", "+ to shrink the wall-clock time\n", "\n", "+ to execute each reducer in main memory" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.6.1 Reducer Size and Replication Rate\n", "two parameters that characterize families of MapReduce algorithms:\n", "\n", "1. **reducer size**$q$: the upper bound on the number of values that are allowed to appear in the list associated with a single key.\n", " It can be selected with at least two goals in mind:\n", " 1. By making the reducer size small $\\to$ we get many reducers.\n", " 2. By making the reducer size small $\\to$ computation in reducer can be exected entirely in the main memory.\n", " \n", "2. **replication rate**$r$: the number of key-value pairs producted by all the Map tasks on all the inputs, divided by the number of inputs. It is the average communication from Map tasks to Reduce tasks per input." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.6.2 An Example: Similarity Joins\n", "we are given a large set of element $X$ and a similarity measure $s(x, y)$ which is symmetric. The output of the algorithm is those pairs whose similarity exceeds a given threshold $t$. \n", "\n", "eg: discover similar images in a collection of one million images. \n", "solution:\n", "1. $(\\{i, j\\}, [P_i, P_j])$\n", " this algorithm will fail completely:\n", " the reducer size is small, however, the replication rate is 999,999 $\\to$ the communication cost is extremelly large.\n", " \n", "2. We can group pictures into $g$ groups, each of $10^6 / g$ pictures." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.6.3 A Graph Model for MapReduce Problems\n", "In this section, we hope to prove lower bounds on the replication rate. The first step is to introduce a graph model of problems.\n", "\n", "For each problem solvable by a MapReduce algorithm there is:\n", "\n", "1. A set of inputs.\n", "\n", "2. A set of outputs.\n", "\n", "3. A many-many relationship between the inputs and outputs, which describes which inputs are necessary to produce which outputs." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nRK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.imshow(plt.imread('./res/fig2_9.png'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.6.4 Mapping Schemas\n", "*mapping schema* expresses how outputs are produced by the various reducers. \n", "\n", "A mapping schema for a given problem with a given reducer size $q$ is an assignment of inputs to one or more reducers, such that:\n", "\n", "1. No reducer is assigned more than $q$ inputs.\n", "\n", "2. For every output of the problem, there is at least one reducer that is assigned all the inputs that are related to that output. We say this reducer *covers* the output." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.6.5 When Not All Inputs Are Present\n", "The only way the absense of some inputs makes a difference is that we may wish to rethink the desired value of the reducer size $q$ when we select an algorithm from the family of possible algorithms." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.6.6 Lower Bounds on Replication Rate\n", "minimum possible communication is known if we can prove a matching lower bound.\n", "\n", "Here is an outline of the technique:\n", "\n", "1. Prove an upper bound $g(q)$ on how many outputs a reducer with $q$ inputs can cover.\n", "\n", "2. Determine the total number of outputs produced by the problem.\n", "\n", "3. Suppose that there are $k$ reducers, and the $i$th reducer has $q_i < q$ inputs. \n", " Observe that $\\sum_{i=1}^k g(q_i)$ must be no less than the number of outputs computed in step (2).\n", " \n", "4. Manipulate the inequality from (3) to get a lower bound on $\\sum_{i=1}^k q_i$.\n", " Often, the trick used is to replace some factors of $q_i$ by their upper bound $q$, but leave a single factor of $q_i$ in the term for $i$.\n", " \n", "5. Since $\\sum_{i=1}^k q_i$ is the total communication from Map tasks to Reduce tasks, divide to lower bound from (4) on this quantity by the number of inputs.\n", " The result is a lower bound on the replication rate." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.6.7 Case Study: Matrix Multiplication" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2.6.8 Exercises for Section 2.6" ] } ], "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.5.1" } }, "nbformat": 4, "nbformat_minor": 0 }