{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Having Fun with Syslog.\n", "\n", "\n", "In the next exercise we're going look at some syslog data. We'll take it up a notch by computing similarities with 'Banded MinHash' and running a hierarchical clustering algorithm.\n", "\n", "Systems logs are particularly challenging because they often lack any kind of structure as all. For this exercise we're going to be looking at the /var/log/system.log of a typical Mac OSX Laptop. The first steps will be standard data inspection and plots, after that we'll pull out the big guns!\n", "\n", "


\n", "


\n", "
Image courtesy of Shari Elf: www.sharielf.com
" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0.13.0rc1-32-g81053f9'" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# This exercise is mostly for us to understand what kind of data we have and then\n", "# run some simple stats on the fields/values in the data. Pandas will be great for that\n", "import pandas as pd\n", "pd.__version__" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# Set default figure sizes\n", "pylab.rcParams['figure.figsize'] = (16.0, 5.0)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Lets take a peek at our system.log, with IPython you\n", "# can execute system commands with '!' (also see %alias)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Jan 11 00:16:09 voltron kernel[0]: Wake reason: RTC (Alarm)\r\n", "Jan 11 00:16:09 voltron kernel[0]: RTC: SleepService 2014/1/11 07:16:09, sleep 2014/1/11 06:16:16\r\n", "Jan 11 00:16:09 voltron kernel[0]: AirPort_Brcm43xx::powerChange: System Wake - Full Wake/ Dark Wake / Maintenance wake\r\n", "Jan 11 00:16:09 voltron kernel[0]: Previous Sleep Cause: 5\r\n", "Jan 11 00:16:09 voltron kernel[0]: IOPPF: Sent gpu-internal-plimit-notification last value 0 (rounded time weighted average 0)\r\n", "Jan 11 00:16:09 voltron kernel[0]: IOThunderboltSwitch<0xffffff8042864000>(0x0)::listenerCallback - Thunderbolt HPD packet for route = 0x0 port = 11 unplug = 0\r\n", "Jan 11 00:16:09 voltron kernel[0]: IOThunderboltSwitch<0xffffff8042864000>(0x0)::listenerCallback - Thunderbolt HPD packet for route = 0x0 port = 12 unplug = 0\r\n", "Jan 11 00:16:09 voltron kernel[0]: wlEvent: en0 en0 Link DOWN virtIf = 0\r\n", "Jan 11 00:16:09 voltron kernel[0]: AirPort: Link Down on en0. Reason 8 (Disassociated because station leaving).\r\n", "Jan 11 00:16:09 voltron kernel[0]: TBT W (2): 0x0100 [x]\r\n" ] } ], "source": [ "!head /var/log/system.log" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# Okay so weird timestamp, machine name and then random stuff...\n", "import dateutil.parser" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "# Helper function to make compact, composite labels for the syslog rows\n", "def make_label(features):\n", " return unicode(':'.join([f[:6] for f in features]), 'utf-8').encode('ascii','ignore')\n", "\n", "# Now process the syslog file, part of the challenge is parsing the darn thing.\n", "# Typically each row in a syslog will have a timestamp first and then some random\n", "# set of other fields split on whitespace. We're going to carefully pull out the\n", "# timestamp but then just treat everything else as bag of tokens (sparse data).\n", "date_index = []\n", "with open('/var/log/system.log') as syslog:\n", " syslog_rows = syslog.readlines()\n", " syslog_events = []\n", " for row in syslog_rows:\n", " split_list = row.split()\n", " date_string = ' '.join(split_list[:3])\n", " try:\n", " date = dateutil.parser.parse(date_string)\n", " except (ValueError, TypeError) as e:\n", " continue # Going to skip rows where we can't get a timestamp\n", " features = split_list[4:]\n", " syslog_events.append({'features': features, 'label': make_label(features), 'type': features[0].split('[')[0]})\n", " date_index.append(date)\n", " dataframe = pd.DataFrame(syslog_events, index=date_index)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "pandas.tslib.Timestamp" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Make sure our timestamp got pulled/parsed/converted correctly\n", "type(dataframe.index[0])" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
featureslabeltype
2014-01-11 00:16:09 [kernel[0]:, Wake, reason:, RTC, (Alarm)] kernel:Wake:reason:RTC:(Alarm kernel
2014-01-11 00:16:09 [kernel[0]:, RTC:, SleepService, 2014/1/11, 07... kernel:RTC::SleepS:2014/1:07:16::sleep:2014/1:... kernel
2014-01-11 00:16:09 [kernel[0]:, AirPort_Brcm43xx::powerChange:, S... kernel:AirPor:System:Wake:-:Full:Wake/:Dark:Wa... kernel
2014-01-11 00:16:09 [kernel[0]:, Previous, Sleep, Cause:, 5] kernel:Previo:Sleep:Cause::5 kernel
2014-01-11 00:16:09 [kernel[0]:, IOPPF:, Sent, gpu-internal-plimit... kernel:IOPPF::Sent:gpu-in:last:value:0:(round:... kernel
\n", "

5 rows × 3 columns

\n", "
" ], "text/plain": [ " features \\\n", "2014-01-11 00:16:09 [kernel[0]:, Wake, reason:, RTC, (Alarm)] \n", "2014-01-11 00:16:09 [kernel[0]:, RTC:, SleepService, 2014/1/11, 07... \n", "2014-01-11 00:16:09 [kernel[0]:, AirPort_Brcm43xx::powerChange:, S... \n", "2014-01-11 00:16:09 [kernel[0]:, Previous, Sleep, Cause:, 5] \n", "2014-01-11 00:16:09 [kernel[0]:, IOPPF:, Sent, gpu-internal-plimit... \n", "\n", " label type \n", "2014-01-11 00:16:09 kernel:Wake:reason:RTC:(Alarm kernel \n", "2014-01-11 00:16:09 kernel:RTC::SleepS:2014/1:07:16::sleep:2014/1:... kernel \n", "2014-01-11 00:16:09 kernel:AirPor:System:Wake:-:Full:Wake/:Dark:Wa... kernel \n", "2014-01-11 00:16:09 kernel:Previo:Sleep:Cause::5 kernel \n", "2014-01-11 00:16:09 kernel:IOPPF::Sent:gpu-in:last:value:0:(round:... kernel \n", "\n", "[5 rows x 3 columns]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dataframe.head(5)\n", "\n", "# So what do we have? Datetime is our index, features is just the \n", "# syslog row split by whitespace and placed into a list. The label\n", "# is just the features (truncated) and flattened with : separators.\n", "# 'type' is just the syslog identifier right after the datetime and machine.\n", "# Note: The parsing of the syslog is more art than science and syslogs\n", "# can vary greatly, but we haven't done any super magic here,\n", "# just basically thrown the row data into some bins..." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
featureslabeltype
2014-01-11 14:03:10 [Google, Chrome, Helper[9524]:, CoreText, Copy... Google:Chrome:Helper:CoreTe:CopyFo:receiv:mig:... Google
2014-01-11 14:03:10 [last, message, repeated, 1, time, ---] last:messag:repeat:1:time:--- last
2014-01-11 14:03:10 [kernel[0]:, SMC::smcReadKeyAction, ERROR, TC0... kernel:SMC::s:ERROR:TC0D:kSMCBa:fKeyHa kernel
2014-01-11 14:03:40 [last, message, repeated, 24, times, ---] last:messag:repeat:24:times:--- last
2014-01-11 14:03:40 [kernel[0]:, SMC::smcReadKeyAction, ERROR, TC0... kernel:SMC::s:ERROR:TC0D:kSMCBa:fKeyHa kernel
\n", "

5 rows × 3 columns

\n", "
" ], "text/plain": [ " features \\\n", "2014-01-11 14:03:10 [Google, Chrome, Helper[9524]:, CoreText, Copy... \n", "2014-01-11 14:03:10 [last, message, repeated, 1, time, ---] \n", "2014-01-11 14:03:10 [kernel[0]:, SMC::smcReadKeyAction, ERROR, TC0... \n", "2014-01-11 14:03:40 [last, message, repeated, 24, times, ---] \n", "2014-01-11 14:03:40 [kernel[0]:, SMC::smcReadKeyAction, ERROR, TC0... \n", "\n", " label type \n", "2014-01-11 14:03:10 Google:Chrome:Helper:CoreTe:CopyFo:receiv:mig:... Google \n", "2014-01-11 14:03:10 last:messag:repeat:1:time:--- last \n", "2014-01-11 14:03:10 kernel:SMC::s:ERROR:TC0D:kSMCBa:fKeyHa kernel \n", "2014-01-11 14:03:40 last:messag:repeat:24:times:--- last \n", "2014-01-11 14:03:40 kernel:SMC::s:ERROR:TC0D:kSMCBa:fKeyHa kernel \n", "\n", "[5 rows x 3 columns]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dataframe.tail(5)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "kernel:SMC::s:ERROR:TC0D:kSMCBa:fKeyHa 651\n", "last:messag:repeat:24:times:--- 539\n", "last:messag:repeat:1:time:--- 27\n", "config:networ:change:v4(en0:v6(en0:DNS!:Proxy:SMB 26\n", "Google:Chrome:Helper:Intern:of:CFAllo:not:known;:out-of:failur:via:CFAllo:will:not:result:in:termin:http:/ 18\n", "Google:Chrome:Helper:CGSLoo:Failed:to:look:up:the:port:for:\"com.a:(1100) 17\n", "Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch:::LSXPCC:#426:___ZN2:q=com. 17\n", "Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch 17\n", "kernel:IOThun:-:Thunde:HPD:packet:for:route:=:0x0:port:=:11:unplug:=:0 16\n", "last:messag:repeat:2:times:--- 14\n", "kernel:IOThun:-:Thunde:HPD:packet:for:route:=:0x0:port:=:12:unplug:=:0 13\n", "Google:Chrome:Helper:CoreTe:CopyFo:receiv:mig:IPC:error:(FFFFF:from:font:server 12\n", "kernel:en0::BSSID:change:to:c8:d7: 11\n", "Window:device:authw:0x0(0):shield:0x7fcd 10\n", "kernel:AirPor:RSN:handsh:comple:on:en0 10\n", "...\n", "coreau:2014-0:08:30::AM:[AirPl:Sent:retran:to:192.16:(56:retran:0:futile 1\n", "coreau:2014-0:01:23::PM:[AirPl:###:Start:taking:too:long..:asynch 1\n", "kernel:efi:pageco:65 1\n", "coreau:2014-0:01:23::PM:[AirPl:Quiesc:endpoi:'Downs 1\n", "coreau:2014-0:12:57::PM:[AirPl:Quiesc:endpoi:'Downs 1\n", "kernel:did:discar:act:47067:inact:201504:purgea:134512:spec:40403:cleane:2 1\n", "coreau:2014-0:07:34::AM:[AirPl:Sent:retran:to:192.16:(43:retran:0:futile 1\n", "kernel:[0x2b3:0x2700 1\n", "coreau:2014-0:07:41::AM:[AirPl:Sent:retran:to:192.16:(45:retran:0:futile 1\n", "kernel:CODE:SIGNIN:cs_inv:p=8615:final:status:0x0,:allow:(remov:VALID):page 1\n", "kernel:hibern:prefli:pageCo:241516:est:comp:47:setfil:523491:min:107374 1\n", "coreau:2014-0:12:57::PM:[AirPl:###:Report:networ:status:(2,:en0):failed:1/0x1:kCFHos:/:kCFStr:/:kCFStr:/:kCFStr:/:evtNot:/:siInit:/:kUSBPe:/:dsBusE:/:kStatu:/:kOTSer:/:cdevRe:/:EPERM 1\n", "AirPla:2014-0:12:57::PM:[AirPl:AirPla:became:the:defaul:audio:device 1\n", "sudo[8:brifor:::TTY=tt:;:PWD=/U:;:USER=r:;:COMMAN:8769 1\n", "kernel:CODE:SIGNIN:cs_inv:p=8906:final:status:0x0,:allow:(remov:VALID):page 1\n", "Length: 275, dtype: int64" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# We can get a count of all the unique values by running value_counts()\n", "dataframe['label'].value_counts()\n", "\n", "# Okay the breakout below gives us a sense for our challenge..." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "# Realize that we don't want the 'last message' events\n", "dataframe = dataframe[dataframe['type'] != 'last']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Lets do standard histogram and event volume over time plots" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Subset: 1227 rows 3 columns\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA6AAAAE5CAYAAACOM00TAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlcVXXi//EXl8VcQBEU2ZHQHMptKtdQy2Won0tqIpAr\n1oy5ZN92ccwlk3IZnWzKdErcStOp1BazNNRMwxZNxTRUFgFNFBFwRfj94cODN7iACnLlvp+Px308\nPOee5XPenM/1fu7nfM6xKywsLERERERERESkkpmqugAiIiIiIiJiG9QAFRERERERkVtCDVARERER\nERG5JdQAFRERERERkVtCDVARERERERG5JdQAFRERERERkVui1AZoVFQUHh4eNG/e3JgXHx9PmzZt\naN26Nffffz87d+403ouJiaFJkyY0a9aMDRs2VF6pRURERERE5LZjV9pzQLdu3UqdOnUYMmQIe/bs\nAaBLly6MHz+ev/3tb3z55ZfMmDGDb7/9loSEBCIjI9m5cydpaWl069aNgwcPYjKpk1VERERERETK\n6AENCQnB1dXVbJ6npyfZ2dkAnD59Gm9vbwDWrFlDREQEjo6OBAQEEBQURHx8fCUVW0RERERERG43\nDte7wuuvv84DDzzA888/T0FBAdu3bwcgPT2ddu3aGcv5+PiQlpZWcSUVERERERGR29p1Xx87YsQI\n3nzzTVJSUpgzZw5RUVEWl7Wzs7upwomIiIiIiEj1cd09oPHx8XzzzTcAPPbYYzzxxBMAeHt7k5qa\naix39OhR4/Lca6lRKiIiIiIiUr1ZutXQdfeABgUFsXnzZgA2bdpE06ZNAejduzcrVqzg4sWLHDly\nhN9//502bdpYLExVvyZNmlTlZbCml/JQFspCeSgLZaE8lIXyUBbKQnlUxKs0pfaARkREsHnzZjIz\nM/H19WXq1KksWLCA0aNHc+HCBWrWrMmCBQsACA4OJiwsjODgYBwcHHj77beturczKSmpqotgVZRH\nEWVRRFmYUx5FlEURZWFOeRRRFuaURxFlUURZmLOFPEptgH744Yclzv/hhx9KnB8dHU10dPTNl0pE\nRERERESqHZt9SOewYcOqughWRXkUURZFlIU55VFEWRRRFuaURxFlYU55FFEWRZSFOVvIw66wrIt0\nK3qHdnZlXhcsIiIiIiIit6fS2nxW0wNqZ2enl156WelLroiLi6vqIlgNZVFEWZhTHkWUhTnlUURZ\n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\nSgoODg5mjcyyWBovePWy2aNHj3L69GlGjhxZrFfy2h61lJQUvL29jelre9IKCgo4evQoXl5exfbj\n5+fH+vXrzRpKZ8+exdPTs9iy0dHR2Nvbs3fvXrKzs1m6dKlZmWrVqsXZs2eN6WvHbXp6ehYrryV/\nzjUvL4+TJ0+aHd9VJeVXUFDAunXrzO5EW9a4zMcee4y4uDjS0tL49NNPiYyMBK787WvUqMHJkyeN\nfLKzs9mzZ0+5t10SPz8/FixYYJZ7Xl4e7dq1K7ZsYWGh2d8zNzeXU6dO4e3tjZ+fH507dzbbTk5O\nDv/5z3+uu0wiIiIiIpXthhugr732Gk5OTsYX9ZJU9R0/K0rbtm3x9PTk5Zdf5uzZs5w/f55t27YR\nERHBnDlzSEpKIjc3l+joaMLDw6/rLqOWxgvm5ubi6uqKk5MT8fHxfPDBB8XynDZtGufOnWPfvn3E\nxsYycOBA472ffvqJTz75hPz8fObOncsdd9xRYuNm5MiRREdHGw3CEydOsHbtWotlql27Ni4uLqSl\npTFz5kyz91u1asXy5cu5fPky69evNxvfGhYWRmxsLPv37+fs2bPFLsG99mZCERERLFq0iN27d3Ph\nwgWio6Np165dib2m1+aXn5/P/v37iYiI4I8//uDZZ58t8ThK0qBBA7p06cKwYcMIDAzkrrvuAq40\nnHv06MGzzz5LTk4OBQUFHDp0yOLY3fIaOXIk06dPJyEhAbhyo6NrL5v9sy+++IJt27Zx8eJFJk6c\nSPv27fH29ub//b//x8GDB1m2bBmXLl3i0qVL7Ny503jEjJ6JVbFsYVxGeSkLkbKpnphTHkWUhVhi\nC+fGDTVAY2Nj+eKLL1i+fLkxz9vb26yX5ujRoyX2WMGVm7pMnjyZyZMnM3fuXKvvajaZTKxbt47E\nxET8/Pzw9fVl1apVREVFMXjwYDp16kRgYCC1atVi3rx5xnrlaYBfXWbr1q04Ozsb899++21eeeUV\nXFxcePXVV80al1d17tyZoKAgunXrxgsvvEC3bt2Mbfbp04eVK1dSv359li9fzscff4y9vX2xbYwb\nN47evXsbd1ht37692aXTzs7ObNu2Dbgy5vTnn3+mbt269OrVi/79+5sd47///W/WrVtnXAbat29f\n473Q0FCeeeYZHnroIZo2bUrXrl3N1r32JkRdu3bl1VdfpX///nh5eXHkyBFjzGVKSgrOzs7Gpd92\n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\nKbUBGhUVhYeHB82bNzfmnTp1iu7du9O0aVN69OjB6dOnjfdiYmJo0qQJzZo1Y8OGDZVXahERERER\nEbntlDoGdOvWrdSpU4chQ4awZ88eAF588UXc3d158cUXeeONN8jKyuL1118nISGByMhIdu7cSVpa\nGt26dePgwYOYTOZtXI0BFbm9qG5KdWctY5isoZ5ZSxZgHXmIlET1pIiyEEtueAxoSEgIrq6uZvPW\nrl1rPIty6NChfPrppwCsWbOGiIgIHB0dCQgIICgoiPj4+Ioov4iIiIiIiFQD1z0G9Pjx48bjQDw8\nPDh+/DgA6enp+Pj4GMv5+PiQlpZWQcWU6zVs2DAmTpwIXOnJbtas2Q1tJzY2lpCQkIosmshtyxbG\nZZSXshApm+qJOeUhUjZbqCc39RxQOzu7Urveb7Zb/lZ061fX7vpr/zYhISH89ttvVVwiERGR24cu\nLRQRqRzX3QD18PDg2LFjNGrUiIyMDBo2bAiAt7c3qampxnJHjx7F29u7xG0MGzaMgIAAAOrVq0er\nVq0s7u/bb6+3hOX34IOVt+0/y8/Px8Hhptr7103/YUlFu/qrXJcuXWxy+uo8aynPjU4/eCs//Mrw\n7bffVnke1sJazg9rUdV5WJuqzqOizy9rKY/Oj5ubtiZx1eD/5y5dutClSxerKk95p3ft2mXcnDYp\nKYnSlHoToqsb6NWrl9lNiNzc3HjppZd4/fXXOX36tNlNiOLj442bECUmJhb7BfF6bkJkZ2dX6Q3Q\n8jbSUlNTGTduHN999x0FBQVERETw5ptv8tprr/Hf//6Xc+fOERoayrx583BxcSEpKYnAwED++9//\nMmXKFBo3bkxcXBzvv/8+s2bN4tixY7Rp04YFCxbg5+cHwLhx4/jkk0/Izs6mSZMmzJ07lwceeAC4\n0mj39fXl1VdfBa78oQcPHmw0+n/55RdGjBhBYmIijzzyCHZ2dgQFBfHqq68WW3b//v089dRT7N69\nG29vb2JiYujVqxcAJ0+eZPjw4WzevJlmzZrRo0cP4uLi2Lp1a4VmL7cP3YSo+lHPjjlryUNZmKvq\nPJSFWKJzo4iyEEtu+CZEERERdOjQgQMHDuDr68uiRYt4+eWX+frrr2natCmbNm3i5ZdfBiA4OJiw\nsDCCg4N5+OGHefvtt63qpLwZly9fpmfPnjRu3Jjk5GTS09MJDw9n0aJFLF68mLi4OA4fPkxubi5j\n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\nHzVcoT2WL1+u++67z3QZafPUU0/pmWeeUWFhoT744AMtXbpUt912mySpvLxcH3zwgeEK0+fRRx9V\nY2Ojurq6NHHiRP31r3/VTTfdpHXr1unmm2/WI488YrrEtLr55psViUQ8m+c3bNig6667TpFIRA0N\nDQarS6/x48dr48aNkqRnn31WzzzzjG6//Xb9+c9/1re//e1QjaFFRUXaunWrBg0apO9973saOnSo\npkyZovXr12vr1q165ZVXTJeYVpmZmTr33HN16aWXavr06frOd76j888/33RZRkyfPl1dXV3q7OxU\nVlaWOjo6dMcdd2j9+vWSpBdeCNetvZYuXao1a9bo2muv1R//+EeVl5crKytLf/jDH/SrX/1KEyem\nfrs0IIja29uVk5NjuoyB5wTcqFGjnC+++OKExw8fPuxceumlBiqyV35+vukS0qq4uNg5ePCg4ziO\ns2vXLqeiosJ58sknHcdxnLKyMpOlpV1hYaFz5MgR5/PPP3eGDRvmxONxx3Ecp7Oz0ykpKTFcXfqV\nlZU506dPdzZs2OBEo1GnsbHRycvLc6LRqBONRk2Xl1a9+0JFRYXT3t7uOI7jdHR0OMXFxabKMmLs\n2LE9/7u8vNzzu8svvzzd5RhXVlbmdHV1OX/605+c++67zxk5cqRzww03OM8//7zz2WefmS4vrS67\n7DLHcRznyJEjzvnnn+8cOXLEcRzHOXbsWM/vwqS4uNg5evSo4ziO8/nnnzvXXHON4ziOs3v3bqe0\ntNRkaWkXj8eduro656677nJefvllz+9mz55tqCoz9uzZ48ycOdOpq6tzDhw44NTW1jrFxcXO3Xff\n7bS1tZkuL+0++eQTz8/HH3/sfPWrX+05DjJf7wNqo7POOqtn6W1v+/bt01lnnWWgIrNKSkoS/rS3\nt5suL60cx+lZdltQUKBoNKrXX39dc+fOTXjZ6KAaMmSIBg0a1HM2o3sp4Ze+9CVlZAR+mDjBpk2b\nVFFRoYULF2r48OGqrKzUOeeco2uvvVbXXnut6fLSqqurS/v379cnn3yirq6unjNcQ4cO1aBBodjF\n0aO4uFjPPfecJKm0tFTvv/++JGn79u0aMmSIydKMycjIUHV1tZ577jnt3btXs2fP1uuvv65LLrnE\ndGlpdezYMR0+fFgHDx7Uf/7zH3366aeSpEOHDunYsWOGq0u/SCSiI0eOSDqeweeffy5Juvjii3se\nD4vulWWTJ0/WihUrNHnyZB06dEiS9M4775gsLe1qa2tVWlqqzMxMfeMb39CYMWP02muvafz48Zo9\ne7bp8tJu5MiRqqio6PkZN26c9u7d2/O/gyzwnx6WLFmi66+/XqNGjerZp9Lc3KwdO3bo6aefNlxd\n+rW3t2vt2rX68pe/fMLvJkyYYKAic3JychSLxVRWViZJGjZsmNasWaOZM2dq69athqtLr7PPPlud\nnZ0699xztXnz5p7H4/F4KCegZ511lh5++GFNnTpVc+fOVU5Ojo4ePWq6LCM+++wzVVRUSDr+obKl\npUVf+cpXdPDgQcOVpd+yZcv04IMP6uc//7nOP/98TZgwQfn5+brooou0bNky0+UZN2TIEN166626\n9dZbeyYcYXH33XersLBQgwcP1i9/+UtdffXVmjBhgt59913V1NSYLi/tZs2apSuuuEJXXnml3nzz\nzZ77wbe3tys7O9twdenVvRdWkm6//XYtXLhQkyZN0urVqw1Xln6ffPKJ5syZI0n69a9/rfnz50uS\n5syZo9/85jcmSzNi8eLFWrdunZ544gldfvnlkqRLLrlEu3btMlzZwAv8HlDp+Df4Gzdu1N69exWJ\nRHThhRdq3Lhxofv2XpJmzJih++67T1dfffUJv/vud7+rFStWGKjKjObmZg0ePFh5eXmexx3H0Vtv\nvaWrrrrKUGXpd+jQIZ1zzjknPP7xxx+rpaVFJSUlBqqyx5o1a/T222/rscceM12KNTo7O9XW1ha6\nM12S9Omnn2rXrl06evSo8vPzTxhDwuJf//qXxowZY7oMazQ1NWn48OEaMWKEdu7cqU2bNmns2LEq\nLS01XZoR//jHP/TPf/5Tl112mcaOHWu6HGMKCwv14Ycfer7Mff7557V48WJ1dHRo9+7dBqtLr9LS\nUm3ZskWS9JOf/EQLFy7s+V1JSYn+/ve/myrNmObmZj388MPKz8/Xz372M5WWljIBBQAAAJCcRx55\nRNXV1aqqqvI8vnbtWs2ZM0c7duwwVFn6/fSnP9W8efN03nnneR7fsWOHHn30Uf3+9783VJl5q1ev\n1mOPPaampia1tbWZLmfAMQEFAAAA0uy5557TjBkzTJdhBbI4vrJo586dKikpCfydKZiAAgAAAGl2\n0UUXqbm52XQZViALr6DnEb5NkAAAAEAanOoaCmFYatkbWXidKo+g35mCCSgAAAAwALj7gIssvMKc\nBxNQAAAAYADcdNNN6ujoUHl5+Qm/C9t9pcnCK8x5sAcUAAAAAJAW4bvDPAAAAADACCagAAAAxe5e\noAAAACNJREFUAIC0YAIKAAAAAEgLJqAAAAAAgLRgAgoAAAAASIv/B/Ys2pERRoX1AAAAAElFTkSu\nQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA6UAAAE4CAYAAACjRlXyAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlcTfn/B/DXvS2WFGnX4op8yZYvQ6IsJZmRLXNVhGxD\n1rHLkEyyNraZifFFZSvMIFuylN2UfSlLaS8pkhak7uf3h0fn52pRVOfWfT8fj/t4OOvnfc77Xt33\nPZ/POQLGGAMhhBBCCCGEEMIDId8BEEIIIYQQQgiRX1SUEkIIIYQQQgjhDRWlhBBCCCGEEEJ4Q0Up\nIYQQQgghhBDeUFFKCCGEEEIIIYQ3VJQSQgghhBBCCOFNuUXp+PHjoaOjgw4dOkjN37JlC9q2bYv2\n7dtj4cKF3PxVq1bBxMQEbdq0QWhoaPVETAghhBBCCCGkzlAsb6GrqytmzJiBMWPGcPPCwsIQHByM\ne/fuQUlJCRkZGQCAqKgoBAUFISoqCikpKbCxscGTJ08gFNLFWEIIIYQQQgghpSu3YrS0tIS6urrU\nPF9fXyxevBhKSkoAAC0tLQDA0aNH4eTkBCUlJYhEIrRq1QoRERHVFDYhhBBCCCGEkLqg0pcxnz59\niosXL8Lc3Bx9+vTBjRs3AACpqakwMDDg1jMwMEBKSkrVRUoIIYQQQgghpM4pt/tuaQoLC5GVlYXr\n168jMjISYrEYz549K3VdgUDwzQESQgghhBBCCKm7Kl2UGhgYYPjw4QCA7777DkKhEJmZmdDX10dS\nUhK3XnJyMvT19UtsT4UqIYQQQgghhNRtjLEKr1vp7rtDhw7F+fPnAQBPnjxBQUEBNDU1MXjwYAQG\nBqKgoABxcXF4+vQpunXrVmaA9JLPl4eHB+8x0IvyTy/KPb0o//Si3NOL8k+v6ntVVrlXSp2cnHDh\nwgW8fPkShoaGWLFiBcaPH4/x48ejQ4cOUFZWRkBAAADA1NQUYrEYpqamUFRUxJ9//klXRUkJ8fHx\nfIdAeET5l1+Ue/lG+ZdflHv5RvknFVVuUbp///5S5+/evbvU+e7u7nB3d//2qAghhBBCCCGEyAV6\niCipUePGjeM7BMIjyr/8otzLN8q//KLcyzfKP6koAfuaTr/f0qBA8FX9jAkhhBBCCCGEyL7K1nwy\nc6VUIBDQi170ktFXVQkPD6+yfZHahXIv3yj/8otyL98o/6SiKv1ImOpEV1AJkT1VWZQSQgghhBDy\nOZnpvlvWfEIIv+izSQghhBBCKqOy3x9lpvsuIYQQQgghhBD5Q0UpIaTG0NgS+UW5l2+Uf/lFuZdv\nlH9SUVSUkgrLzs6Gr68v32EQQgghhBBC6hAaU0oqLD4+Hvb29rh//z7foZAaRJ9NQgghhBBSGTSm\nlFSbRYsWITY2Fp07d4ZYLMbRo0e5ZaNGjUJwcDD8/PwwZMgQ9O3bF61bt8aKFSu4dfbs2YPu3buj\nc+fOmDJlCiQSCR+HQQghhBBCCJEhVJSSCluzZg1atmyJ27dvY/r06fDz8wPwsVvvtWvXMGjQIABA\nZGQk/vnnH9y7dw8HDx7EzZs3ER0djQMHDuDq1au4ffs2hEIh9u7dy+PRED7Q2BL5RbmXb5R/+UW5\nl2+Uf1JRMvWcUiLbPr0Eb2VlBTc3N2RmZuLQoUMYMWIEhMKPv3HY2tpCXV0dADB8+HBcvnwZCgoK\nuHnzJrp27QoAePv2LXR1dWv+IAghhBBCCCEyhYpS8tXGjBmD3bt3IygoiLtq+jnGGAQCAQBg7Nix\n8Pb2rsEIiazp06cP3yEQnlDu5RvlX35R7uUb5Z9UFHXfJRWmqqqKnJwcbnrcuHHYuHEjBAIB2rRp\nw80/c+YMsrKy8PbtWxw9ehS9evWCtbU1Dh06hIyMDADAq1evkJiYWOPHQAghhBBCCJEtVJSSCtPQ\n0EDPnj3RoUMHLFy4ENra2jA1NYWrqyu3jkAgQLdu3eDg4IBOnTphxIgR+O9//4u2bdvCy8sLtra2\n6NSpE2xtbfH8+XMej4bwgcaWyC/KvXyj/Msvyr18o/yTiqLuu6RSPr05UX5+Pp4+fQonJyduHmMM\nBgYGOHz4cIltxWIxxGJxjcRJCCGEEEIIqR3oSin5KmfPnoWpqSlmzpwJVVVVbr5AIODGkBLyORpb\nIr8o9/KN8i+/KPfyjfJPKkrAKvNU06posIwHqVb2AauEkJpBn01CCCGEEFIZlf3+SFdKCSE1hsaW\nyC/KvXyj/Msvyr18o/yTiqKilBBCCCGEEEIIb6j7LiGkXPTZJIQQQgghlUHddwkhhBBCCCGE1BpU\nlBJCagyNLZFflHv5RvmXX5R7+Ub5JxVFRamMW758OVxcXPgOgxBCCCGEEEKqBRWllRAYGIju3buj\nUaNG0NHRgbm5OXx9fau1TXrmJ6lL6Hll8otyL98o//KLci/fKP+koqgorSAfHx/Mnj0bCxcuRHp6\nOtLT07F161ZcuXIFBQUF1dYu3WCGEEIIIYQQUpeVW5SOHz8eOjo66NChQ4llPj4+EAqFePXqFTdv\n1apVMDExQZs2bRAaGlr10fIkOzsbHh4e8PX1xfDhw6GiogIAMDMzw549e6CsrIzs7GyMGTMG2tra\nEIlEWLlyJVdQMsbg5eUFkUgEHR0djB07Fm/evOH2HxAQgObNm0NTU5Nb7/z586XGcv36dVhYWEBd\nXR1mZma4cOFC9Z8AQqoIjS2RX5R7+Ub5l1+Ue/lG+ScVVW5R6urqipCQkBLzk5KScObMGTRv3pyb\nFxUVhaCgIERFRSEkJARubm6QSCRVHzEPrl27hvfv32PIkCFlrjNjxgzk5OQgLi4OFy5cQEBAAHbt\n2gUA2LVrF/z9/REeHo5nz54hNzcX06dPB/DxvE2bNg379+9HWloasrOzkZqaWmobKSkpGDRoEJYt\nW4asrCysX78eDg4OyMzMrPqDJoQQQgghhJAaUG5RamlpCXV19RLz58yZg7Vr10rNO3r0KJycnKCk\npASRSIRWrVohIiKiSoMVCKrmVVmZmZnQ1NSEUPj/p6v4amXDhg1x8eJFBAUFYdWqVVBRUUHz5s0x\nd+5c7N69GwCwd+9ezJ07FyKRCCoqKli1ahUCAwNRVFSEQ4cOYfDgwbCwsICSkhJWrFhR5jjSPXv2\n4Pvvv4ednR0AwMbGBl27dsXJkycrf1CE8IDGlsgvyr18o/zLL8q9fKP8k4qq9JjSo0ePwsDAAB07\ndpSan5qaCgMDA27awMAAKSkp3x7hJxirmldlaWhoIDMzU+rK79WrV5GVlQUNDQ08f/4cHz58kLpy\nbGRkxB1/WlpaiWWFhYVIT09HWlqa1Hlr0KABNDQ0So0jISEBBw8ehLq6Ove6cuUKnj9/XvmDIoQQ\nQgghhBAZUKmiND8/H97e3vD09OTmlXcjnrpy59gePXqgXr16OHLkSKnLNTU1oaSkhPj4eG5eYmIi\nV2w2a9asxDJFRUXo6upCT08PycnJ3LK3b9/i5cuXpbZjZGQEFxcXZGVlca+cnBwsWLDg2w+SkBpA\nY0vkF+VevlH+5RflXr7Ja/7v3r2Ltm3b4u3bt3yHUmsoVmbl2NhYxMfHo1OnTgCA5ORkdOnSBf/+\n+y/09fWRlJTErZucnAx9ff1S9zNu3DiIRCIAQJMmTWBmZvaV4deMJk2awMPDA25ubmCMwdbWFioq\nKrh37x7y8vKgoKAAsViMJUuWICAgAC9fvsSGDRswf/58AICTkxPWrFmDgQMHQlNTE+7u7nB0dIRQ\nKISDgwN69OiBa9euoUuXLli+fHmZhf7o0aPx3XffITQ0FNbW1vjw4QOuX78OExOTMs81IVWp+I9L\ncXecyk7fuXPnm7an6do53b17d2RmZspMPDRN0zRdc9PFZCUemq7Z6WKyEk9NTOfk5GDQoEHIzs7G\nxYsXMWDAAJmKr7qm79y5g9evXwOA1MW4ihKwLzxzJD4+Hvb29rh//36JZS1atMDNmzfRtGlTREVF\nwdnZGREREUhJSYGNjQ1iYmJKXC0VCASlFl1lzZcl+/btw6ZNm/DgwQOoqKjA2NgYEydOxNixY5GX\nl4cZM2bg9OnTqF+/PiZPnowlS5Zwx+Xl5YXt27fj3bt3sLOzw5YtW9C4cWMAgL+/P5YtW4a8vDzM\nnj0bW7duRVBQEHr27AlPT0/ExsYiICAAABAREYEFCxbg/v37UFBQQPfu3fHnn3/C0NCQz1ND6rDa\n8Nkksm3ixInYvXs3WrVqBVtbWwwYMABWVlZo2LAh36ERQgghVYYxBhcXF9SrVw/GxsbIzMzEhg0b\n+A6LF5X9/lhuUerk5IQLFy7g5cuX0NbWxooVK+Dq6sotNzY2xo0bN9C0aVMAgLe3N3bu3AlFRUVs\n2rQJAwYMqHCA9MX3o9zcXKirqyMmJkZqHCohfKHPJvkWd+/eha2tLaKjo/Hs2TOcPn0aoaGhuHXr\nFrp3784VqR07dqwzQz4IIYTIpx07dmDDhg2IiIhAdHQ0Ro8ejejoaL7D4kWVFqXVgYrSko4dOwZr\na2swxjB37lxERkbi5s2bfIdFCICq/WyGh4dzXT1I3ccYg42NDRwcHGBqaiqV+5ycHISFhSE0NBSh\noaF48+YN+vfvD1tbW/Tv3x+6urr8BU6qHH325RflXr7JU/4fPHiAvn374sKFCzA1NYVEIoGuri4i\nIiK4YYvypLLfH4XVGAupoODgYOjr60NfXx+xsbEIDAzkOyRCCPlmJ06cQFpaGiZPnlximaqqKgYP\nHozff/8dT548wbVr19CrVy8cOXIEbdu2hZmZGRYsWIBz587h3bt3PERPCCGEVExeXh7EYjHWrVsH\nU1NTAIBQKMSAAQNw+vRpnqOrHehKKSGkXPTZJF/jw4cP6NChAzZs2ICBAwdWatvCwkJERERwV1Ef\nPHiAnj17cl1927ZtS119CSGEyIxx48aBMQZ/f3+p+Xv37sWhQ4dw+PBhniLjD3XfJYRUKfpskq+x\nZcsWHD9+HCEhId9cQL5+/Rrnz5/H6dOncfr0aRQWFsLW1ha2trawsbGBpqZmFUVNCCGEVI6/vz9W\nr16NyMhINGrUSGpZRkYGTExM8OLFCygrK/MUIT+o+y4hRGZ9fot4UjdlZWXh119/xfr167mC9Fty\n36RJEwwfPhzbtm1DXFwcwsLC8N///hf79u1Dy5Yt8d1332HJkiW4ePEiCgoKqugoSFWiz778otzL\nt7qe/6ioKMybNw8HDhwoUZACgJaWFkxMTHDt2jUeoqtdqCglhBBSpby8vDBs2DB06NChyvctEAhg\nYmKC6dOnIzg4GBkZGfDx8QEAzJ07F1paWtxY1adPn9JVfkIIIdUiPz8fYrEYq1atKvfvnZ2dHUJC\nQmowstqJuu8SQspFn01SGTExMTA3N8fDhw+ho6NT4+1nZmbi7Nmz3HhUJSUlrquvtbU1mjRpUuMx\nEUIIqXsmTpyIt2/fYs+ePeUOU7ly5QqmT5+O27dv12B0/KMxpYSQKkWfTVIZDg4O6Nq1KxYvXsx3\nKGCMITo6mns26uXLl9GhQweuSO3WrRsUFRX5DpMQQkgts3fvXqxYsQI3btyAqqpquesWFhZCS0sL\nUVFR0NPTq6EI+UdjSuuY5cuXw8XFpdrbuXLlCkxMTKCqqorg4OBqb48v4eHhMDQ05DsMuVXXx5bI\nu4sXL+LGjRuYPXt2iWV85F4gEMDU1BQ///wzTp06hYyMDKxYsQL5+flwc3ODlpYWHBwcsG3bNsTH\nx9d4fPKEPvvyi3Iv3+pi/h8/fozZs2fjwIEDXyxIAUBRURE2NjYIDQ2tgehqLypKKyEwMBDdu3dH\no0aNoKOjA3Nzc/j6+lZrm5W5a+XDhw9ha2sLDQ0NqKuro2vXrjh16lSFtl22bBlmzpyJnJwcDB48\nGEKhEM+ePfvasKuMSCTCuXPnpOb5+fnB0tKy2tuubDvh4eEQCoVQVVWFqqoqDA0NMXLkSNy4caMa\noyRENkgkEsyZMwerV69GgwYN+A6nVPXr14eNjQ3Wrl2LO3fuIDo6GkOHDsXly5fRvXt3tG7dmhur\nmpOTw3e4hBBCZMzbt28hFovx66+/olOnThXejsaVfhkVpRXk4+OD2bNnY+HChUhPT0d6ejq2bt2K\nK1euVOvdHitz2dve3h4DBgxAeno6Xrx4gc2bN0NNTa1C2yYmJnIP+/2atr9GYWHhF9cRCAS16nmE\n+vr6yMnJQU5ODq5fv442bdrA0tIS58+f5zs0mdCnTx++QyDVZO/evVBUVISjo2Opy2Ux97q6unBx\nccHu3buRlpaGgwcPwsjICJs3b0azZs3Qu3dvrFy5EpGRkSgqKuI73FpNFvNPagblXr7Vtfz//PPP\naNOmDX766adKbTdgwACcOXOG/paUg4rSCsjOzoaHhwd8fX0xfPhwqKioAADMzMywZ88eKCsrIzs7\nG2PGjIG2tjZEIhFWrlzJFXWMMXh5eUEkEkFHRwdjx47FmzdvuP0HBASgefPm0NTU5NYrq4i5fv06\nLCwsoK6uDjMzM1y4cAHAx5t7xMfHY9KkSVBUVISSkhIsLCzQs2dPbtvt27fDxMQEGhoaGDJkCNLS\n0gAALVu2xLNnz2Bvbw9VVVVYWFgAADp16gQ1NTUcOHAAffr0wT///APgY1dfoVCIkydPAgDOnTuH\nzp07AwBiY2PRr18/aGpqQktLC6NHj0Z2djYXg0gkwtq1a9GxY0eoqqpCIpGUeUwVER8fD6FQiO3b\nt0NfXx/NmjXj7sQJfPxFa9y4cWjatCnatWuHyMhIqe1Xr16NVq1aQU1NDe3atcORI0cAANHR0Zg6\ndSquXbsGVVVVNG3aFADw/v17zJs3D82bN4euri6mTp2Kd+/elRqbvr4+PD09MXHiRCxcuJCbP2vW\nLBgZGaFx48bo2rUrLl++zC1jjHExaWpqYuTIkcjKypI6Vj8/PxgZGUFDQwNbt25FZGQkOnbsCHV1\ndcyYMUNqX2W974r3Vfze09LSgre3d4XPOyGfys/Ph7u7O3777bda9SPSp4RCITp16oQFCxbg7Nmz\nSE9Px+LFi5GZmYlx48ZBR0cHjo6O2LlzJ5KTk/kOlxBCSA0LCgrC2bNnsX379kr/rTMwMICenh71\nnisPq2FlNclDKBV26tQppqioyIqKispcx8XFhQ0dOpTl5uay+Ph41rp1a7Zjxw7GGGM7duxgrVq1\nYnFxcSw3N5cNHz6cubi4MMYYe/jwIWvUqBG7cuUKKygoYPPmzWNKSkrs3LlzjDHGPDw82OjRoxlj\njCUnJzMNDQ126tQpxhhjZ86cYRoaGiwzM5NJJBJmYmLCBg0axI4cOcKeP38uFd+5c+eYpqYmu337\nNnv//j2bMWMGs7Ky4paLRCKuTcYYEwgELDY2lptetmwZmzFjBmOMsZUrV7KWLVuyhQsXMsYYW7p0\nKZs9ezZjjLGYmBh29uxZVlBQwDIyMpiVlRW3jDHGmjdvzjp37sySk5PZu3fvyj2m0uJijLFdu3ax\nXr16McYYi4uLYwKBgDk7O7P8/Hx2//59pqWlxc6ePcsYY2zhwoXMysqKZWVlsaSkJNauXTtmaGjI\n7evgwYMsLS2NMcZYUFAQU1FR4c6dn58f106x2bNnsyFDhrCsrCyWk5PD7O3t2eLFixljjIWFhTED\nA4MS741z584xoVDI8vPzGWOM7dmzh7169YoVFRUxHx8fpqury96/f88YY2zjxo2sR48eLCUlhRUU\nFLCffvqJOTk5SR3r1KlT2fv371loaChTVlZmQ4cOZRkZGSwlJYVpa2uzCxcuMMbKf98V72vy5Mns\n3bt37O7du6xevXosOjq6RPxV+dkMCwursn0R2bFixQomFovLXae25z4pKYnt2LGDjRw5kmloaDBT\nU1M2e/ZsdvLkSZaXl8d3eDKvtueffD3KvXyrK/l/+vQp09TUZDdv3vzqfcybN48tX768CqOSbZX9\n/lirilIsR5W8Kmv37t1MV1dXal6PHj1YkyZNWIMGDdiFCxeYsrKy1Bf6bdu2sT59+jDGGOvXrx/z\n9fXllj1+/JgpKSmxwsJC5unpyZydnbll+fn5TFlZudSidPXq1VxRUWzAgAHM39+fMfaxaJ0+fTpr\n2bIlEwqFzMrKij19+pQxxtj48eO5IpIxxnJzc5mSkhJLSEhgjH25KD137hzr2LEjY4wxOzs79r//\n/Y+Zm5szxhizsrJihw8fLvXcHT58mHXu3JmbFolEbNeuXdz0l46pokXp48ePueULFixgEyZMYIwx\nZmxszE6fPs0t++uvv0otHIuZmZmxo0ePlmiHMcYkEglTUVGROi9Xr15lLVq0YIyVXZRGR0czgUDA\nUlNTS21TXV2d3bt3jzHGWNu2baWONzU1lSkpKbGioiLuWD/dj4aGBjtw4AA37eDgwDZt2sQYK/t9\n9+m+UlJSuOXdunVjgYGBJeKjopSUJyUlhTVt2pQ9e/as3PXqUu4LCwtZZGQk8/LyYlZWVqxRo0bM\n2tqarVmzht2+fbvcHzDlVV3KP6kcyr18qwv5f/v2LevcuTPbsmXLN+3n7Nmz3HdneVDZ74+16l74\nzIOfx1JoaGggMzMTEokEQuHHHs9Xr14FABgaGuL58+f48OEDmjdvzm1jZGSElJQUAEBaWlqJZYWF\nhUhPT0daWhoMDAy4ZQ0aNICGhkapcSQkJODgwYM4duwYN6+wsBD9+vUD8LG76JYtWwAAycnJmDx5\nMsaMGYOrV68iLS0NXbt25bZTUVGBhoYGUlJSYGRk9MVzYG5ujidPnuDFixe4c+cOgoOD4eHhgZcv\nXyIyMhJWVlYAgPT0dMyaNQuXL19GTk4OJBIJ1/W12Kd3v/3SMSkqKuLDhw9S23/48AFKSkpl7tPI\nyAgPHjwAAKSmppZY9qmAgABs2LCBu/Nmbm4uXr58Weo5yMjIQH5+Prp06cLNY4xBIpGUun6xlJQU\nCAQC7vmI69evx86dO5GamgqBQIA3b94gMzMTwMdutcOGDePeZ8XnID09nZv+9NmPDRo0KDGdm5sL\noPz3XTFdXV3u3w0bNkReXl65x/Kt6trYEgIsXboUEydORIsWLcpdry7lXkFBAV27dkXXrl2xZMkS\n5OTkICwsDKGhoRCLxXjz5g369+8PW1tb9O/fX+pzJq/qUv5J5VDu5VtdyP+8efPQokULTJs27Zv2\n06tXL0RFReHVq1clvhsTGlNaIT169EC9evW48Yaf09TUhJKSktQjBRITE7lis1mzZiWWKSoqQldX\nF3p6elLjk96+fVtmUWRkZAQXFxdkZWVxr5ycHCxYsKDEugYGBnBzc+OKs89jyMvLw8uXL6Gvr1+h\nc9CwYUN06dIFGzduRIcOHbgxqz4+PmjVqhX34XJ3d4eCggIePHiA7Oxs7N69u0TR9mk//C8dk5GR\nEeLi4qS2j4uLg0gkkpqXmJgo9e9mzZoBAPT09EosK5aQkIDJkyfjjz/+wKtXr5CVlYX27dtzY4E/\nHy+gqamJBg0aICoqiov19evXUuODS3P48GF06dIFDRo0wKVLl7Bu3TocPHgQr1+/RlZWFho3bsy1\naWRkhJCQEKnzkZ+f/1XPtSrrffdpEUvIt7hz5w5OnDgBd3d3vkPhlaqqKgYPHozff/8dT548wbVr\n19CrVy8cOXIEbdu2hZmZGU6fPs13mIQQQirp0KFDOHnyJHbs2PHN90yoV68erKyscPbs2SqKrm6h\norQCmjRpAg8PD7i5ueHvv//mrgDeuXMHeXl5UFBQgFgsxpIlS5Cbm4uEhARs2LABo0ePBgA4OTlx\nV+Nyc3Ph7u4OR0dHCIVCODg44NixY7h27RoKCgqwfPnyMu96O3r0aBw7dgyhoaEoKirCu3fvEB4e\njpSUFLx+/RoeHh6IjY2FRCJBZmYmdu7ciR49enAx7Nq1C3fv3sX79+/h7u4Oc3PzMq+S6ujoIDY2\nVmpe79698ccff6B3794APv769fvvv3PTwMcrjSoqKlBTU0NKSgrWrVtX7rkt75gAYOTIkdi4cSMe\nP34Mxhhu3LiBXbt2lbjDp5eXF96+fYuHDx/Cz88PI0eOBACIxWKsWrUKr1+/RnJyMnclGfhYmAsE\nAmhqakIikWDXrl1cEV98DpKTk7krtUKhEJMmTcLs2bORkZEB4ONV0NKeO8UYQ0pKCjw9PbFjxw7u\nJkI5OTlQVFSEpqYmCgoKsGLFCqmidsqUKXB3d+eK54yMjEo/N7b4/VPe++5L21aXuvi8MnnFGMPc\nuXPh4eGBxo0bf3F9ecp9ixYt8NNPP+Hvv/9GRkYGvL294eLiIteFqTzln0ij3Mu32pz/Z8+ewc3N\nDUFBQVxvt29Fj4YpGxWlFTR//nz89ttvWLt2LXR1daGrq4spU6Zg7dq1sLCwwJYtW6CiogJjY2NY\nWlpi1KhRcHV1BQCMHz8eLi4usLKygrGxMRo2bMgVR+3atcOWLVvg6OiIZs2aQVVVFdra2qhXrx4A\n6UeiGBgY4OjRo/D29oa2tjaMjIzg4+MDxhiUlZWRkJAAGxsbNG7cGB06dECDBg3g5+cHALC2tsav\nv/4KBwcHNGvWDHFxcQgMDCzzeJcvX46xY8dCXV0dhw4dAvCxKM3NzeW66lpZWSEvL4+bBgAPDw/c\nunULjRs3hr29PRwcHMr9ZamsYyq+ujpp0iS4urrC3t4eTZo0wdixY+Ht7Q1bW1up/fTu3RutWrWC\njY0N5s+fDxsbGy6e5s2bo0WLFrCzs8OYMWO4eExNTTF37lz06NEDurq6ePDgAXr16sXt09raGu3a\ntYOuri60tbUBAGvWrEGrVq1gbm6Oxo0bo3///njy5Am3TWpqKvec0m7duuHhw4e4cOECF4+dnR3s\n7OzQunVriEQiNGjQQOqHgVmzZmHw4MGwtbWFmpoaevTogYiICG55RX6lK16nvPddWfuqrXdOJTXv\n+PHjeP78OSZNmsR3KDJNUVER33//PQ4fPgwXFxf6hZwQQmqB9+/fY+TIkXB3d8d3331XZfstLkqr\n+yJAbSRgNXxWBAJBqYkoa768yc3Nhbq6OmJiYqTGA5LSxcfHw9jYGIWFheVeASRfjz6b5HMFBQXo\n0KEDNm03hLLzAAAgAElEQVTaBDs7O77DqTUuXbqE4cOHIygoiBs3TwghRPbMnj0b8fHxOHz4cJX/\nYG9iYoK///4bHTt2rNL9yprKfn+kb/Ey4NixY8jPz0deXh7mzZuHjh07UkFKCJFZW7du5XofkIqz\ntLTEoUOHMHLkyFrdpY0QQuqyI0eO4MiRI9i5c2e19CCjLrylo6JUBgQHB0NfXx/6+vqIjY0tt1st\nKYm6nNYe9EW89nv16hW8vLywfv36Sm1Huf+od+/eOHDgAH788UdcvHiR73BqDOVfflHu5Vtty398\nfDwmT56MwMDAartDLhWlpaOiVAZs376du5PrmTNnYGJiwndItYZIJEJRURF13SWkhnh5eWH48OFo\n374936HUWn379kVgYCAcHBxw+fJlvsMhhBCCj0NTHB0dsWDBApibm1dbO3369EFkZCRycnKqrY3a\niMaUEkLKRZ9NUuzp06fo0aMHHj58SI8WqgKhoaEYPXo0jhw5AgsLC77DIYQQuTZv3jw8evQIwcHB\n1X6xw8bGBjNnzsTgwYOrtR0+0ZhSQggh1WLhwoWYN28eFaRVxNbWFgEBARg6dCiuX7/OdziEECK3\njh8/jgMHDsDf379Get9RF96SqCglhNSY2ja2hPy/Cxcu4NatW5g9e/ZXbU+5L52dnR38/PwwePBg\nqcc/1TWUf/lFuZdvtSH/SUlJmDBhAvbv3w8NDY0aadPOzg6nTp2inmifoKKUEEJIuSQSCebMmYPV\nq1ejfv36fIdT53z//ffYuXMn7O3tcfPmTb7DIYQQufHhwwc4Ojri559/Rs+ePWus3Xbt2uHDhw94\n+vRpjbUp62hMKSGkXPTZJAEBAfD19cXVq1fpbtfV6OjRo5g8eTJCQkLQuXNnvsMhhJA6b/Hixbhz\n5w5OnDhR4zfNnDhxIjp27IiZM2fWaLs1pUrHlI4fPx46Ojro0KEDN2/+/Plo27YtOnXqhOHDhyM7\nO5tbtmrVKpiYmKBNmzYIDQ39ivAJIYTIkry8PCxZsgS//fYbFaTVbMiQIdi6dSsGDhyIu3fv8h0O\nIYTUaSEhIdizZw8CAgJ4eYoDjSuVVm4GXF1dS5wsW1tbPHz4EHfv3kXr1q2xatUqAEBUVBSCgoIQ\nFRWFkJAQuLm5QSKRVF/kNUgoFOLZs2dS85YvXw4XF5cqb2v58uVQUlKCqqoq96qu5yR9SiQS4fz5\n8yXm5+bmolGjRvj++++rPYZi4eHhMDQ0rLH2SM2pDWNLiDQfHx/07NkTPXr0+Kb9UO4rZtiwYfjj\njz9gZ2eHe/fu8R1OlaH8yy/KvXyT1fynpKTA1dUVe/fuhZaWFi8x2NjY4PLly3j79i0v7cuacotS\nS0tLqKurS83r378/92tC9+7dkZycDOBjtyMnJycoKSlBJBKhVatWdfqmDdVxxaCwsBACgQBOTk7I\nycnhXq9evarytj5X1iX2v//+G0ZGRggPD0d6enq1x0EIkR2pqanYtGkTVq9ezXcocsXBwQGbNm3C\ngAED8ODBA77DIYSQOqWwsBDOzs6YNm0arKyseIujSZMm6NixIy5dusRbDLLkm65V79y5k7uClpqa\nCgMDA26ZgYEBUlJSvi06GfZpAZeZmYlBgwZBXV0dGhoasLKy4panpqbCwcEB2traMDY2xpYtW7jt\nli9fjhEjRsDFxQWNGzeGv79/iX1/aurUqZg/f77UvCFDhmDDhg0VakssFmPs2LFQU1ND+/btuRtq\nuLi4IDExEfb29lBVVcX69eu57fz9/TFx4kT07NkTe/bskWr71q1b6Ny5M9TU1CAWizFy5EgsXbqU\nW378+HGYmZlBXV0dPXv2xP3797llIpEIPj4+6NSpE5o0aQJHR0e8f/8eeXl5GDhwIFJTU6Gqqgo1\nNTU8f/68AhkhtUGfPn34DoFUwi+//IJJkyZBJBJ9874o95UjFouxYcMG2NraIioqiu9wvhnlX35R\n7uWbLObf09MTysrKWLx4Md+hUBfeT3x1Ubpy5UooKyvD2dm5zHXkZfyRj48PDA0NkZmZiRcvXmDV\nqlUQCASQSCSwt7dH586dkZqainPnzmHjxo1S422Dg4Px448/Ijs7G6NGjSq3HWdnZwQFBXHTWVlZ\nOHPmDJycnCrU1rFjx+Dk5ITs7GwMHjwY06dPBwDs3r0bRkZGOH78OHJycjBv3jwAQEJCAi5evAix\nWAyxWIyAgABuXwUFBRg2bBjGjx+PrKwsODk54ciRI1zOb9++jQkTJmD79u149eoVfvrpJwwePBgf\nPnwA8PG9cfDgQZw+fRpxcXG4d+8e/Pz8oKKigpCQEDRr1gw5OTl48+YNdHV1vzFDhJDKun37Nk6e\nPCkTf7TllaOjI9atW4f+/fvj0aNHfIdDCCG13tmzZ7Fz507s2bMHCgoKfIdDReknFL9mIz8/P5w8\neRLnzp3j5unr6yMpKYmbTk5Ohr6+fqnbjxs3jvvlvUmTJjAzM6tYw1VV5FbxnUSVlZWRlpaG+Ph4\ntGzZkruldGRkJDIzM/HLL78AAFq0aIGJEyciMDAQtra2AAALCwsMHjwYAFC/fn0wxnDgwAEcP36c\n2/9///tfnDt3Dr169YJAIMClS5dgaWmJQ4cOwcLCArq6uvj333+/2JalpSXs7OwAAKNHj8bGjRvL\nPa7du3ejW7duMDAwwPDhw+Hm5oY7d+7AzMwM169fR1FREWbMmAHg4ziobt26cdv+9ddf+Omnn/Dd\nd98BAMaMGQNvb29cv34dlpaWAICZM2dyBae9vT3u3LkDoOwrxYR/xWNDin/5rOz0xo0bYWZm9tXb\n03TNTPfu3Rtz586Fs7Mzbt++XSX7/3RcEd/HV5um9fX1sXr1atjY2MDb2xtGRkYyFV9Fpyn/8jtd\nPE9W4qHpmp0unicL8bx8+RIzZszAnj17EB0djejoaN7Pj5WVFTIzMxEYGAhdXV3e4/mW6Tt37uD1\n69cAgPj4eFQa+4K4uDjWvn17bvrUqVPM1NSUZWRkSK338OFD1qlTJ/b+/Xv27NkzZmxszCQSSYn9\nldVkBULhjaKiInv06JHUPHd3d+bq6soYYywnJ4fNnTuXGRsbM2NjY7Z69WrGGGNBQUFMUVGRNWnS\nhHupqqqyH374gTHGmIeHBxs1apTUfj08PJiLi0uZsSxYsIBNnTqVMcZYnz592M6dOyvc1ujRo7n9\nxMXFMYFAwIqKihhjjIlEInbu3DmptkxMTNhvv/3GTdvY2LDZs2czxhjbv38/69atm9T6Tk5ObOnS\npYwxxgYOHMgaNmwoFY+KigoLDAwstb1P4wsLC2MGBgZlngNSs6rysxkWFlZl+yLV5+jRo8zU1JR9\n+PChyvZJuf82u3btYgYGBuzJkyd8h/JVKP/yi3Iv32Ql/4WFhaxv377Mw8OD71BKGDVqFNu2bRvf\nYVS5yn5/FJZXsDo5OcHCwgKPHz+GoaEhdu7ciRkzZiA3Nxf9+/dH586d4ebmBgAwNTWFWCyGqakp\nBg4ciD///LPOdN81MjJCXFyc1Ly4uDjuam+jRo2wfv16xMbGIjg4GL/99hvOnz8PIyMjtGjRAllZ\nWdzrzZs33FVQgUBQ4hx96Zk+Tk5OOHToEBISEhAREQEHBwcuxi+1VZ7Pl1+9ehUxMTHw8vKCnp4e\n9PT0cO3aNezbtw9FRUXQ09MrMWY4MTFR6pwtWbJEKp7c3FyMHDmy3DgqEiupvYp/USOyq6CgAPPm\nzYOPjw8UFb+qM02pKPffZty4cVi+fDmsra0RExPDdziVRvmXX5R7+SYr+ffy8gIAqXufyArqwvtR\nuUXp/v37kZqaioKCAiQlJWH8+PF4+vQpEhIScPv2bdy+fRt//vknt767uztiYmLw6NEjDBgwoNqD\nrykjR46El5cXUlJSIJFIcPbsWRw/fhwjRowAAJw4cQIxMTFgjEFNTQ0KCgpQUFBAt27doKqqirVr\n1+Lt27coKirCgwcPcOPGDQCld1MtryAFADMzM2hqamLixImws7ODmpoaAHxVW5/S0dFBbGwsN+3v\n7w9bW1tER0fj7t27uHv3Lh48eIC3b9/i1KlTsLCwgIKCAn7//XcUFhbi6NGjiIyM5LafNGkStm7d\nioiICDDGkJeXhxMnTiA3N/eL51tHRwcvX77EmzdvvrguIaRq+fr6omXLllxXfyI7JkyYgF9++QXW\n1tYlHlNGCCGkdGFhYdi2bRv27t0rE+NIP2dra4vz589z912RV+UWpeSjZcuWwcLCAr169ULTpk2x\naNEi7Nu3D6ampgCAp0+fon///lBVVYWFhQWmTZuG3r17QygU4vjx47hz5w6MjY2hpaWFyZMnc8VW\nWVdKg4KCpJ5TqqamhszMTG4dZ2dnnD9/XuomU1/bVrHFixfDy8sL6urqWLlyJQ4ePIgZM2ZAW1ub\ne4lEIri4uCAgIABKSkr4559/sGPHDqirq2Pv3r0YNGgQlJWVAQBdunTB9u3bMX36dDRt2hQmJiYI\nCAgo8yrop/G1adMGTk5OMDY2RtOmTenuu3XIp2NMiOx59eoVVq5cKXUH7qpCua8akydPxqJFi9Cv\nX7+vG7PDE8q//KLcyze+85+eno7Ro0fD398fenp6vMZSFm1tbbRq1QrXrl3jOxReCdiXLqFVdYNl\ndE/9UrdVIvu6d+8ONzc3jB07lu9QSBWqys9meHi4zHTlISX9/PPPePfuHXx9fat835T7qvXHH39g\n/fr1CA8PR/PmzfkO54so//KLci/f+My/RCKBnZ0dunXrxnXflVW//PILJBIJvL29+Q6lylT2+yMV\npeSrXbx4Ea1bt4ampib27t0LNzc3PHv2DDo6OnyHRqoQfTblw5MnT2BhYYGoqChoa2vzHQ6pgM2b\nN2Pjxo0IDw+HkZER3+EQQohMWblyJU6fPo3z589X6T0SqsPly5cxc+ZM3Lp1i+9Qqkxlvz/KdoaI\nTHv8+DHEYjHy8vLQsmVLHDp0iApSQmqphQsXYv78+VSQ1iIzZ85EUVER+vXrh/DwcBgYGPAdEiGE\nyISLFy9iy5YtuHnzpswXpABgbm6OuLg4PH/+nHtcoryhMaXkq02aNAnPnz9HTk4O7ty5g4EDB/Id\nEpFxfI8tIaUrfr7YrFmzqrUNUvV+/vlnTJkyBX379i1xR3RZQvmXX5R7+cZH/jMyMjBq1Cj4+flB\nX1+/xtv/GoqKirC2tkZoaCjfofCGilJCCJFjEokEc+bMwerVq1G/fn2+wyFfYd68eZg4cSL69euH\ntLQ0vsMhhBDeSCQSjBkzBqNGjap1d5GX90fD0JhSQki56LNZt/n7+2Pr1q24evUqPSO4lvP29kZA\nQADCw8PltvsXIUS+rVmzBsHBwQgPD4eSkhLf4VRKUlISOnfujPT0dJl8dE1l0ZhSQgghFZKXl4cl\nS5bg0KFDVJDWAe7u7twY07CwMBrjTwiRK1euXMGGDRsQGRlZ6wpSADA0NISuri5u3ryJbt268R1O\njaPuu4SQGkNji2TL+vXrYWlpCXNz82pvi3JfM5YuXQqxWAxra2u8ePGC73A4lH/5RbmXbzWV/5cv\nX8LZ2Rn/+9//YGhoWCNtVgc7OzucPn2a7zB4QUUpIYTIoZSUFGzevBmrVq3iOxRSxTw8PDBs2DDY\n2NggMzOT73AIIaRaMcYwbtw4/Pjjjxg0aBDf4XwTeR5XSmNK5ZBIJMKOHTtgbW3NaxxCoRAxMTEw\nNjbG1KlToa+vj19++aVG2r506RImTZqER48e1Uh7lfXpueEbfTbrJldXV+jq6lJRWkcxxrBkyRKc\nOHEC58+fh4aGBt8hEUJItfDx8cHBgwdx6dKlWtlt91Pv3r2DtrY2EhISoK6uznc436Sy3x/pSqkc\nEggEMjd+zNfX96sK0uXLl0NJSQlqampQU1PDf/7zH8yYMQPPnz8vdztLS8tqK0j9/PxgaWlZYr5I\nJMK5c+eqpU1CKuPWrVs4deoUFi9ezHcopJoIBAKsXLkSdnZ2sLGxwatXr/gOiRBCqtz169exdu1a\nBAYG1vqCFADq168PKysrnD17lu9QahwVpaRWEwgEcHJywps3b5CVlYXDhw/j+fPn6NKlS5mFaWFh\nYbXFU96+ZeHHAIlEwmv7NLaIf4wxzJ07F56enlBTU6uxdin3NU8gEGD16tWwtrZG//79kZWVxVss\nlH/5RbmXb9WZ/6ysLDg6OmLbtm0QiUTV1k5Nk9cuvFSUVlBSUhKGDx8ObW1taGpqYsaMGWCMwcvL\nCyKRCDo6Ohg7dizevHkDAIiPj4dQKISfnx+MjIygoaGBrVu3IjIyEh07doS6ujpmzJhRZnsnTpxA\n586d0bhxYxgZGcHT05NbVrzv7du3Q19fH82aNYOPjw+3fPny5RgxYgQcHR2hpqaGLl264N69e6W2\nwxjD6tWr0apVK2hqamLkyJFlfnGJjY1Fv379oKmpCS0tLYwePRrZ2dnccqFQiGfPnnHT48aNw9Kl\nS7npdevWoVmzZjAwMMDOnTul9v35utu3b4eJiQk0NDQwZMiQMp+9xxjjugYoKCjA1NQUQUFB0NLS\n4s5JeHg4DAwMsHbtWujp6WHChAkIDw/nBsKvWbMGP/74o9R+Z82ahVmzZgEAsrOzMWHCBC72pUuX\ncsWdn58fevbsiTlz5kBTUxOenp4VLjx37twJU1NTNG3aFHZ2dkhMTCx1vXHjxmHKlCmwtbWFmpoa\n+vTpI7Xuo0eP0L9/f2hoaKBNmzY4ePCg1LZTp07F999/j0aNGtGXA4Lg4GBkZGRgwoQJfIdCaoBA\nIMC6detgZWUFW1tbvH79mu+QCCHkmzHG4OrqiqFDh2Lo0KF8h1OlBgwYgJCQELkbOkVFaQUUFRVh\n0KBBaNGiBRISEpCamgpHR0fs2rUL/v7+CA8Px7Nnz5Cbm4vp06dLbRsREYGYmBgEBgZi1qxZ8Pb2\nxvnz5/Hw4UMcOHAAFy9eLLXNRo0aYc+ePcjOzsaJEyfg6+uLo0ePSq0THh6OmJgYhIaGYs2aNVJd\nQ4ODgyEWi5GVlQVnZ2cMHToURUVFJdrZvHkzgoODcfHiRaSlpUFdXR3Tpk0r81wsWbIEaWlpiI6O\nRlJSEpYvX17mup9eGQwJCYGPjw/Onj2LJ0+elOiW8Om658+fh7u7Ow4ePIi0tDQ0b94cjo6OZbbz\nOaFQiCFDhuDSpUvcvPT0dGRlZSExMRHbtm2TWt/R0REnT55Ebm4ugI/5PnjwIEaNGgXgY2GnrKyM\n2NhY3L59G6Ghofjf//7HbR8REYGWLVvixYsXWLJkSYX+Ezl69ChWrVqFw4cPIzMzE5aWlnBycipz\n/X379mHZsmXIzMyEmZkZF1teXh769++P0aNHIyMjA4GBgXBzc0N0dDS37f79+7F06VLk5uaiZ8+e\nFTiD1adPnz68ti/vCgoKMG/ePPj4+EBRsWafCEa5549AIMBvv/0GCwsLDBgwQOrHxJpC+ZdflHv5\nVl3537x5M1JSUrB27dpq2T+fWrVqhfr16+PBgwd8h1KzWA0rq8mKhIKwsCp5VdbVq1eZlpYWKyoq\nkprfr18/5uvry00/fvyYKSkpsaKiIhYXF8cEAgFLTU3llmtoaLADBw5w0w4ODmzjxo0VimHWrFns\n559/Zowxbt+PHz/mli9YsIBNmDCBMcaYh4cH69GjB7dMIpEwPT09dvnyZcYYYyKRiJ07d44xxljb\ntm25fzPGWGpqKncMX3L48GHWuXNnblogELDY2Fhuety4cWzp0qWMMcZcXV3Z4sWLuWVPnjyRWv/T\ndcePH88WLlzIrZubm8uUlJRYQkJCiRg8PDzY6NGjS8z39fVlJiYmjDHGwsLCmLKyMnv//j23PCws\njBkYGHDTvXr1YgEBAYwxxkJDQ1nLli0ZY4w9f/6c1atXj719+5Zbd9++faxv376MMcZ27drFjIyM\npNretWsXU1RUZE2aNJF6CYVC7lzb2dmxHTt2cNsUFRWxhg0bssTExBLncuzYsczJyUnqfCgoKLCk\npCQWGBjILC0tpdqfPHky8/T05LYdO3ZsifNTGTz8N0GqyYYNG9jAgQP5DoPwRCKRsGnTpjFzc3OW\nnZ3NdziEEPJVIiIimJaWltR3zrrGzc2NrV27lu8wvkllvz/W7E/l34jx9GtbUlISmjdvDqFQ+sJy\n8VW8YkZGRigsLER6ejo379OHlzdo0KDEdPHVuc/9+++/WLRoER4+fIiCggK8f/8eYrFYap1Pn8Nk\nZGSE+/fvc9MGBgbcvwUCAQwMDJCamlqinfj4eAwbNkzq2BQVFZGeng49PT2pddPT0zFr1ixcvnwZ\nOTk5kEgkaNq0aanxfy4tLQ3fffedVLzlrdu1a1duWkVFBRoaGkhJSSl3u0+lpKRI3W1SS0sLysrK\nZa7v7OyM/fv3w8XFBfv27eOuRCYkJODDhw9S50IikUjFUdrzsMzNzaWu1AJAixYtuH8nJCRg1qxZ\nmDt3bom4P99fcf6KqaiooGnTpkhNTUVCQgL+/fdfqTu0FRYWYsyYMaVuy7fw8HD61Zwnr169gre3\nN29duCn3/BMIBNiyZQvc3NwwcOBAhISEQFVVtUbapvzLL8q9fKvq/L9+/RqOjo7w9fWViScUVBc7\nOzts3LgR8+fP5zuUGkPddyvA0NAQiYmJJbq/NmvWDPHx8dx0YmIiFBUVpQrPLylr/GFxl9vk5GS8\nfv0aU6ZMKXGTmk/HFSYmJkJfX5+bTkpK4v4tkUiQnJyMZs2alWjHyMgIISEhyMrK4l75+fklClIA\ncHd3h4KCAh48eIDs7Gzs3r1bKqaGDRsiPz+fm/50HKienl6JeMvy+XnNy8vDy5cvpY6vWGnnTyKR\n4NixY1J3wP3SOM8RI0YgPDwcKSkpOHLkCJydnQF8zH29evXw8uVL7vxkZ2dL/QDwNTcvMjIywl9/\n/SV13vPy8mBubl5iXcaYVD5zc3Px6tUr6Ovrw8jICL1795baT05ODv74449Kx0TqthUrVmDEiBEw\nNTXlOxTCI4FAgD/++APt2rXDDz/8UOYPo4QQImsYY5g4cSIGDhwIBwcHvsOpVn379kVERIRc/R9N\nRWkFdO/eHXp6eli0aBHy8/Px7t07XLlyBU5OTtiwYQPi4+ORm5sLd3d3ODo6lriiWh5WxvjD3Nxc\nqKurQ1lZGREREdi3b1+J4sfLywtv377Fw4cP4efnh5EjR3LLbt68icOHD6OwsBAbN25E/fr1Sy14\npkyZAnd3d65IzMjIQHBwcJkxqaioQE1NDSkpKVi3bp3UcjMzM+zduxdFRUUICQmRGi8rFovh5+eH\n6Oho5OfnS924qfg8FJ8LJycn7Nq1C3fv3sX79+/h7u4Oc3PzUq+Sfnr+CgsLER0dDScnJ7x48QJz\n5swp9ThKo6WlhT59+mDcuHEwNjbGf/7zHwAfi2lbW1vMmTOHuzocGxtb5ljgipoyZQq8vb0RFRUF\n4OPNlD69QdHnTp48iStXrqCgoABLly5Fjx49oK+vjx9++AFPnjzBnj178OHDB3z48AGRkZHc427K\nen/xhX4t50fxe6S8MeDVjXIvO4RCIbZu3YrWrVtj0KBByMvLq/Y2Kf/yi3Iv36oy/3/++SeePXuG\n9evXV9k+ZVWjRo3QrVs3hIWF8R1KjaGitAKEQiGOHTuGmJgYGBkZwdDQEAcPHsT48ePh4uICKysr\nGBsbo2HDhtiyZQu3XUWuoBWvc+nSJaluVH/++SeWLVsGNTU1/Prrr1IFZ7HevXujVatWsLGxwfz5\n82FjY8Ptc8iQIQgKCkLTpk2xd+9e/PPPP1BQUCixj1mzZmHw4MHcnV179OiBiIgIbrmqqiquXLkC\nAPDw8MCtW7fQuHFj2Nvbw8HBQeoYN23ahGPHjkFdXR379u3DsGHDuGV2dnaYPXs2+vXrh9atW8Pa\n2lpq209vdGRtbY1ff/0VDg4OaNasGeLi4hAYGAjg4xVWVVVVJCcnc9sFBQVBVVUVTZo0wZAhQ6Cl\npYWbN29CV1e33Fx8Ps/Z2Rnnzp3jrpIWCwgIQEFBAXen3B9//JF73Expj3mpyKNfhg4dioULF8LR\n0RGNGzdGhw4dcPr06VJjEwgEcHZ2hqenJzQ0NHD79m3s2bMHwMf8hIaGIjAwEPr6+tDT08PixYtR\nUFBQ4VhI3bdgwQIsWLAA2trafIdCZIRQKMRff/2FFi1awN7eXqqXCyGEyJpbt27B09MTBw4cQP36\n9fkOp0bI26NhBKyGL6UIBIJSr96UNZ+UFB8fD2NjYxQWFpZ6VdbT0xMxMTHYvXs3D9GRqubq6goD\nAwP8+uuvvLRflZ9NGltU88LCwjB+/HhER0fz+oecci+bioqK4OrqirS0NAQHB6NBgwbV0g7lX35R\n7uVbVeT/zZs36NKlC7y8vEq9SFNX3b9/H0OGDEFsbGytvMBQ2e+PdKW0DqLivm6hfJKvVVRUhDlz\n5mDNmjVy88syqRwFBQXs2rUL2traGDp0KN69e8d3SIQQwmGMYfLkybC2tparghQA2rdvj/fv3yMm\nJobvUGoEFaW1VHm/mFCXzbqlLuWTfi2vWbt370aDBg3w448/8h0K5V6GKSgowN/fH02bNsWwYcOq\npTCl/Msvyr18+9b8//XXX4iOjsaGDRuqJqBaRCAQyFUXXuq+SwgpF302a6e8vDy0bt0af//9d6k3\nOSPkc4WFhXB2dkZeXh7++ecf1KtXj++QCCFy7O7du7CxscHly5e5G1DKm4MHD8LPzw8nTpzgO5RK\no+67hBCZxdczMuXRunXr0Lt3b5kpSCn3sk9RURF79+7lrq4X3zCtKlD+5RflXr59bf5zcnIgFoux\nceNGuS1IAcDGxgaXLl2Si6EVVJQSQkgdk5KSgi1btmDVqlV8h0JqGSUlJezfvx8KCgoQi8VVWpgS\nQkhFMMYwdepUWFpaYtSoUXyHwyt1dXV06NABly5d4juUalduUTp+/Hjo6OigQ4cO3LxXr16hf//+\naNn1y0QAACAASURBVN26NWxtbfH69Wtu2apVq2BiYoI2bdogNDS0+qImhNRKNLaoZixZsgQ//fQT\nmjdvzncoHMp97aGkpISgoCAwxuDo6IgPHz588z4p//KLci/fvib/O3fuxN27d7F58+aqD6gWkpdx\npeUWpa6uriVOwurVq9G/f388efIE1tbWWL16NQAgKioKQUFBiIqKQkhICNzc3CCRSKovckIIISXc\nvHkTp0+fxqJFi/gOhdRiysrKOHDgAAoKCuDs7FwlhSkhhHzJgwcPsGjRIhw4cAANGzbkOxyZQEUp\nAEtLS6irq0vNCw4OxtixYwEAY8eOxZEjRwAAR48ehZOTE5SUlCASidCqVStERERUU9iEkNqIxhZV\nL8YY5s6dC09PT6ipqfEdjhTKfe1Tr149/P3338jLy8Po0aNRWFj41fui/Msvyr18q0z+8/LyIBaL\nsX79erRt27b6gqplunTpghcvXiAxMZHvUKpVpceUpqenQ0dHBwCgo6OD9PR0AEBqaioMDAy49QwM\nDJCSklJFYdZNrq6uaNq0KczNzXH58mW0adPmq/clFArx7NmzKoyOEFLbHD16FC9fvsT48eP5DoXU\nEfXq1cM///yD7OxsjBkz5psKU0IIKc+0adPQrVs37uIX+UgoFMLW1hanT5/mO5RqpfgtG3/p+Yll\nLRs3bhxEIhEAoEmTJjAzM/uWMGqlS5cu4ezZs0hNTeUeav/o0SOeoyKkfMW/eBaPEansdPG8r92e\npsueLigowLRp0zB79mwoKiryHs/n03369JGpeGi6ctOHDx+GpaUlBg4ciJCQECgoKFD+aZqmabrK\nphctWoSwsDBERUXJRDyyNt28eXPs3r0bkyZNkol4Spu+c+cOd6+h+Ph4VNYXn1MaHx8Pe3t73L9/\nHwDQpk0bhIeHQ1dXF2lpaejbty8ePXrEjS0tHsdkZ2cHT09PdO/eXbpBek4pAGDPnj3Ytm1bld1N\nSygUIiYmBsbGxlWyP0KKydtns7basGEDzpw5g5MnT/IdCqmj8vPzYW9vDwMDA+zcuRMKCgp8h0QI\nqQOioqLQu3dvhIWFoX379nyHI5PS09Pxn//8BxkZGVBSUuI7nAqp9ueUDh48GP7+/gAAf39/DB06\nlJsfGBiIgoICxMXF4enTp+jWrVtldy+zkpKSMHz4cGhra0NTUxMzZswAYwxeXl4QiUTQ0dHB2LFj\n8ebNGwAfi3mhUIiAgAA0b94cWlpa8Pb2BgDs2LEDkyZNwrVr16CqqgpPT0+Eh4fD0NCQa+/WrVvo\n3Lkz1NTUIBaLMXLkSCxdupRbvm7dOjRr1oz7ckBIbVD8yxqpWi9fvoS3tzfWr1/PdyhlotzXfg0b\nNsSxY8eQmJiIiRMnVupmhpR/+UW5l29fyn9+fj7EYjFWr15NBWk5dHR00LJlS1y/fp3vUKpNuUWp\nk5MTLCws8PjxYxgaGmLXrl1YtGgRzpz5P/buPKzG9P8D+Pu0USQpRX6SLWTLKFmGiSxZxr6OaUqW\nITWWxm5kaZRlxgzZ1xjGGmEIRdNgCGMduyRLRRTal3N+f/SVaTBazjn3Wd6v6+qq53TO87zz8VSf\nnvu+n2OwtbXF8ePHC66M2tnZYeDAgbCzs0PXrl2xYsWK/xzaq07y8vLQo0cP1KxZEw8ePMCTJ08w\nePBgbNy4EcHBwYiMjERMTAxSU1Ph7e1d6LWnTp3C7du3ERERgblz5+LWrVsYPnw4Vq1ahVatWuH1\n69fw8/Mr9Jrs7Gz06dMHnp6eSE5OxpAhQ7Bv376Cf8+wsDD88MMPCA8Px+3btxEeHq60fwsiUj1z\n584t+P5LpEhGRkY4ePAgYmJiMGrUKK6yT0Sl8s0338De3p5rIRSBpq/C+9Hhu3I/YCmG70ZKIuWS\nwVnmXKzn//nnn+jVqxcSEhKgo/O2j3dxccGAAQMwevRoAMDt27fRqFEjZGZmIi4uDrVq1cKjR49g\nZWUFAHBycoKvry8GDhyITZs2Yf369QXDdyMjI+Hm5oaHDx8iKioKX3zxBR49elRwrLZt26J9+/aY\nO3cuPD09UaVKlYIrr3fu3EG9evU4fJcUgsN3VdutW7fQpk0b3LhxA5UrVxYdh7REamoqunbtCjs7\nO6xcubLQz0YioqLYunUr5s6di/Pnz8PY2Fh0HJX3xx9/YPz48bhw4YLoKEVS3N8fS7XQkbIVt5mU\nl4cPH6JGjRrv/NCNj48vdHN6a2tr5ObmFqxIDABVqlQp+NjIyAipqakfPd6TJ09QrVq1Qo/9c2hv\nfHw8HB0dCx2XiLTT5MmTMWXKFDakpFTly5fHoUOH4OrqCm9vbyxfvlxjRkcRkeLdunUL48ePR3h4\nOBvSImrZsiXu3btX6E4omoR/2iyC6tWrIy4uDnl5eYUet7KyKrS6VFxcHPT09Er9H6Vq1arv3E7n\nn/cmqlq1aqFtTb9vEWkOzi2Sr+PHj+Pq1avw8fERHeWjWHvNY2xsjMOHD+PixYsF6yx8COuvvVh7\n7fa++mdkZGDgwIHw9/dH06ZNlR9KTenr68PFxQVHjx4VHUUh2JQWgZOTE6pWrYqpU6ciPT0dmZmZ\nOHXqFIYMGYIlS5YgNjYWqampmD59OgYPHlzqYUytWrWCrq4ugoKCkJubi9DQUJw7d67g82+G/964\ncQPp6emYM2dOab9EIlIzeXl58PX1xYIFCwpuK0WkbBUqVEBYWBjOnTuH8ePHc6g/EX3UhAkT0KBB\nA4waNUp0FLWjyfNK2ZQWgY6ODg4cOIC7d+/C2toa1atXx65du+Dp6Qk3Nze0a9cOtWrVgpGREZYt\nW1bwuo/dw/Xfn3+zbWBggJCQEKxfvx6mpqbYunUrevToAQMDAwD5/yHHjx+PDh06wNbWFi4uLhw2\nRWrhzf2sqPQ2b94MIyMj9O/fX3SUImHtNZeJiQmOHDmC06dPw9fX972NKeuvvVh77fbv+u/YsQMR\nERFYs2YNf3ctgS5duuDYsWMaucicWi10pM2cnJzg5eUFd3d30VFIy/DcVD2pqamoV68eQkJC3rkX\nNJEoycnJ6NixIzp06ICFCxfyF04iKuTu3bto3bo1jhw5gmbNmomOo7YaNmyI4OBgODg4iI7ynxR+\nn1JSjqioKCQkJCA3NxfBwcG4du0aXF1dRcciKhXOLZKPRYsWwdnZWa0aUtZe85mamuLYsWMIDw/H\ntGnTCv0ywvprL9Zeu72pf2ZmJgYOHAg/Pz82pKWkqUN42ZSqqFu3bsHe3h6mpqZYsmQJdu/erZEr\nbRFR8Tx69AhBQUEICAgQHYXoHZUqVUJ4eDgOHz6MmTNncpQFEQEAvv32W9SuXRteXl6io6i9Ll26\naGRTyuG7RPSfeG6qFnd3d/zf//0fvv/+e9FRiD7o2bNn6NChA/r06YO5c+eKjkNEAu3evRtTpkzB\nX3/9BRMTE9Fx1F5mZiYsLCzw4MEDmJqaio7zQRp9n1IiIm12/vx5HD16FLdv3xYdheg/Va5cGRER\nEWjfvj10dXXh5+cnOhIRCRATEwMvLy8cOnSIDamclC1bFp9++ikiIiLUZrHDouDwXSJSGs4tKjmZ\nTAZfX1/MnTtXLW80ztprHwsLCxw/fhwbNmwotDI9aRee+9orKysLXbt2xYwZM1R+UR51o4nzStmU\nEhGpgb179yI5ORmenp6ioxAVmaWlJSZOnIi9e/eKjkJESiSVSjFu3DhUrlwZ33zzjeg4GudNU6pJ\n06s4p5SI/hPPTfGysrLQsGFDrFy5Ep06dRIdh6hYXr58iZo1a+LatWuwsrISHYeIFOz58+f48ssv\nkZaWhtDQUJWe96iuZDIZateujf3796NRo0ai47wXbwlDRKRhli9fjnr16rEhJbVkYmKCIUOGYNWq\nVaKjEJGCnT9/Hs2bN0ejRo0QERHBhlRBJBKJxg3hZVOqoTw8PPDdd98BAP744w/Ur1+/RPvZtGkT\n2rZtK89opMU4t6j4kpKSEBAQgMWLF4uOUiqsvXZr0aIF1qxZg6ysLNFRSMl47msHmUyGNWvWoGvX\nrvjhhx+waNEi6Ovrs/4KxKaU1IJEIoFEIgEAtG3bFjdv3hSciIhKYu7cuRg0aBAaNGggOgpRidWo\nUQONGzfGrl27REchIjnLyMiAp6cnfv75Z5w8eRL9+vUTHUkrtG/fHmfPnkVqaqroKHLBplRJcnNz\nlX5MzgMkVePs7Cw6glq5efMmfv31V424nQZrr92cnZ3h4+PDVXi1EM99zXbv3j20atUKWVlZOHv2\nLOrVq1fo86y/4hgbG8PR0VFjrkazKS2ihw8fom/fvrCwsIC5uTl8fHwgk8ng7+8PGxsbWFpawt3d\nHa9evQIAxMbGQkdHBxs2bECNGjXQsWNHAMCGDRtgZ2eHSpUqwdXVFXFxcQXHGDduHKytrWFiYgIH\nBwecPHmy4HP/HI4L5A+HqV69esH2xYsX8cknn6BChQoYPHgwMjMzP/jcGzduwNnZGaampmjUqBEO\nHDhQ8Lnnz5+jZ8+eMDExgZOTE+7duyfHf0UiKo7JkydjypQpqFy5sugoRKXWvXt3PH36FNHR0aKj\nEJEcHDhwAK1atcKIESOwdetWlC9fXnQkraNJQ3jZlBZBXl4eevTogZo1a+LBgwd48uQJBg8ejI0b\nNyI4OBiRkZGIiYlBamoqvL29C702KioKN2/eRFhYGEJDQxEQEIC9e/ciKSkJbdu2xZAhQwqe26JF\nC1y+fBnJycn44osvMGDAAGRnZwMoPBz337Kzs9G7d2+4u7sjOTkZAwYMwJ49e977/JycHHz++edw\ndXXFs2fPsGzZMgwdOhS3b98GAIwdOxZGRkZISEjAhg0bsHHjxg8el6i4NOWvecoQERGBa9euwcfH\nR3QUuWDttVtkZCR0dXXh5eWFoKAg0XFIiXjua568vDzMmDEDY8eORWhoKLy9vT/4uyLrr1ia1JTq\niQ5QHJGR8mmOnJ2LN6w1Ojoa8fHxWLRoEXR08vv4Nm3aYNasWfD19YWNjQ0AICAgAI0aNcKmTZsK\nXjt79mwYGhoCAFatWoVp06YVDG2YNm0a5s+fj4cPH6J69eoYOnRowesmTpwIf39/3Lp1C40bNwbw\n4eG4Z86cQW5uLsaNGwcA6NevHxwdHT/43LS0NEydOhVA/nj0Hj164Ndff8XMmTMREhKCa9euwdDQ\nEA0bNoS7uzuioqKK9e9FRKWTl5cHX19fLFy4EGXKlBEdh0huhg8fjtq1a+Pp06ewsLAQHYeIiunZ\ns2cYMmQIZDIZzp8/z/NYsMaNGyM9PR13795FnTp1RMcpFbVqSovbTMrLw4cPUaNGjYKG9I34+HjU\nqFGjYNva2hq5ublITEwseOyfw2YfPHiAcePGwdfXt9B+Hj9+jOrVq2Px4sXYsGEDnjx5AolEglev\nXiEpKemj+Z48eYJq1aoVeuyfuf793H9mevPcJ0+eICkpCbm5uYU+b21t/dHjExUV55YUTXBwMMqX\nL69Ri0Ww9trtTf0rVaqE/v37Y82aNZg5c6bYUKQUPPc1x5kzZzBw4EB8+eWXmDdvHnR1dT/6GtZf\nsf55a5h/j9ZUNxy+WwTVq1dHXFwc8vLyCj1uZWWF2NjYgu24uDjo6enB0tKy4LF/DmewtrbGmjVr\nkJycXPCWlpaGli1b4o8//sCiRYuwa9cupKSkIDk5GSYmJgVXR8uVK4f09PSCfSUkJBR8XLVqVTx+\n/LhQtgcPHrz3a7GyssLDhw8LXXV98OABqlWrhsqVK0NPT6/QPNd/fkxEipeamoqZM2fixx9/5NB5\n0kg+Pj5YtWoVcnJyREchoiKQyWRYvnw5evbsiaCgIMyfP79IDSkph6YM4WVTWgROTk6oWrUqpk6d\nivT0dGRmZuLUqVMYMmQIlixZgtjYWKSmpmL69OkYPHjwO1dU3xg9ejTmz5+P69evAwBevnxZsDz+\n69evoaenB3Nzc2RnZ2Pu3LkFiyYBgL29PQ4dOoTk5GQkJCTgp59+Kvhcq1atoKenh6VLlyInJwch\nISE4d+7cB78WIyMjLFy4EDk5OYiMjMTBgwcLcvft2xezZ89GRkYGrl+/juDgYP5iTHLDuSUft3Dh\nQnTo0AEtWrQQHUWuWHvt9s/6N2nSBLVr18bevXvFBSKl4bmv3tLS0uDm5oa1a9fizz//RM+ePYv1\netZf8Tp27IioqKhCi5yqIzalRaCjo4MDBw7g7t27sLa2RvXq1bFr1y54enrCzc0N7dq1Q61atWBk\nZFRouft/N3O9e/fGlClTMHjwYJiYmKBx48Y4cuQIgPy/cri6usLW1hY2NjYwNDQsNHTWzc0NTZs2\nhY2NDVxdXTF48OCC/RsYGCAkJASbNm2CmZkZdu7c+c6wv38+98CBAzh8+DAqV64Mb29vbNmyBba2\ntgCAoKAgpKamokqVKvD09ISnp6f8/0GJ6L0ePnyI5cuXY/78+aKjECkUbw9DpPpu374NJycn6Onp\n4fTp06hdu7boSPQelSpVQqNGjQrdtUMdSWRKvpmlRCJ574I9H3qciMTiuak8X331FaytreHv7y86\nCpFC5ebmombNmjhw4ADs7e1FxyGifwkJCcHo0aPh7++PkSNHctScinszwnLx4sWioxQo7u+PbEqJ\n6D/x3FSO8+fPo2fPnrh16xaMjY1FxyFSuO+//x4xMTFYv3696ChE9D+5ubmYNm0adu3ahV27dn3w\nbg6kWqKjo+Hp6Ylr166JjlKguL8/cvguESkN55a8n0wmw8SJEzF37lyNbUhZe+32vvqPHDkSISEh\neP78ufIDkdLw3FcfCQkJcHFxwdWrV3HhwgW5NKSsv3I0b94cCQkJePjwoegoJVbipjQgIAANGzZE\n48aN8cUXXyArKwsvXrxAp06dYGtri86dOyMlJUWeWYmINFJISAhSUlIwbNgw0VGIlMbCwgI9e/bk\nlVIiFXDy5Ek4ODigffv2+O2332BmZiY6EhWDrq4uOnfuXLBWjToq0fDd2NhYdOjQATdu3ECZMmUw\naNAgdOvWDX///TfMzc0xefJkLFiwAMnJyQgMDCx8QA7fJVIrPDcVKysrC3Z2dli9ejU6duwoOg6R\nUp0/fx79+/fHvXv3eIsJIgFkMhl++uknBAYGYtOmTejatavoSFRCmzdvxv79+7F7927RUQAoafhu\nhQoVoK+vj/T0dOTm5iI9PR1WVlbYv38/3N3dAQDu7u7Yt29fSXZPRKQ1goKC0KBBAzakpJUcHBxQ\ntWpVHDhwQHQUIq3z+vVrDBo0CFu3bsXZs2fZkKq5zp07IyIiQm3vAV2iprRSpUrw9fWFtbU1rKys\nULFiRXTq1AmJiYmwtLQEAFhaWiIxMVGuYYlIvXFuSWFJSUkIDAzEokWLREdRONZeu/1X/Xl7GM3G\nc181Xb9+HS1atEDFihVx8uRJ2NjYKOQ4rL/yVKlSBTVr1sTZs2dFRykRvZK86N69e/jpp58QGxsL\nExMTDBgwAL/88kuh50gkkg8uH+3h4VHwn79ixYpcDp5ITbz54eLs7Fyi7UuXLpXq9Zq2PXLkSHz6\n6ado0KCBSuThNrdFbPfv3x++vr7YuHEjatasKTwPt+W7/Yaq5OG2M3bs2IFRo0Zh9OjRWLBggUKP\n94Yqff2avO3q6oqwsDDk5uYq/fiXLl0qWE8oNjYWxVWiOaU7duzAsWPHsG7dOgDAli1bcObMGRw/\nfhwnTpxAlSpVEB8fj/bt2+PmzZuFD8g5pURqheemYty8eRNt27bFjRs3YG5uLjoOkVB+fn54+vQp\nVq5cKToKkcbKzs7G5MmTceDAAezZs4cXhTRQVFQUJk6ciPPnz4uOopw5pfXr18eZM2eQkZEBmUyG\n8PBw2NnZ4fPPP0dwcDAAIDg4GL179y7J7lWOjY0NIiIihB0/NjYWOjo6kEqlwjIQkXxNmjQJU6dO\nZUNKBODrr7/G9u3buWo/kYI8fvwY7du3x71793D+/Hk2pBqqVatWuHv3Lp4+fSo6SrGVqClt2rQp\nvvrqKzg4OKBJkyYAgFGjRmHq1Kk4duwYbG1tcfz4cUydOlWuYUX5r6HIRFR0/x7Oo63Cw8Nx/fp1\neHt7i46iNKy9dvtY/a2srODq6opNmzYpJQ8pD8998U6cOAFHR0d0794doaGhMDU1VdqxWX/l0tfX\nR4cOHXDs2DHRUYqtRHNKAWDy5MmYPHlyoccqVaqE8PDwUofSNLm5udDTK/E/NRFpkLy8PPj6+mLh\nwoUoU6aM6DhEKsPHxwfu7u745ptvoKNTor+ZE9E/yGQyLFy4EEuWLMEvv/zCVd61RJcuXRAWFoah\nQ4eKjlIs/K5fTDdu3ECtWrWwfft2HDx4EPb29jA1NUWbNm1w9erVgufZ2Nhg4cKFaNKkCYyNjXHv\n3j3o6Ohg8+bNqFGjBipXroz58+cXPF8mkyEwMBB16tSBubk5Bg0ahOTkZBFfIpHCvJkQr802bdqE\nChUqoG/fvqKjKBVrr92KUv9WrVqhQoUKCAsLU3wgUhqe+2K8fPkSffv2xd69e3Hu3DlhDSnrr3xd\nunTBkSNH1G7aH5vSYvjrr7/g6uqKoKAg1KtXD8OHD8fatWvx4sULfP311+jZs2ehewNt374dhw8f\nRkpKSsFNwU+dOoXbt28jIiICc+fOxa1btwAAS5cuxf79+xEVFYX4+HiYmppi7NixQr5OIlKM169f\n47vvvsOPP/7IKQFE/yKRSHh7GCI5uHLlChwcHFCtWjVERUWhevXqoiOREtnY2MDMzAwXL14UHaVY\n1KopfTO3s7RvJfH777+jV69e2LJlC7p164Y1a9bg66+/hqOjIyQSCb766iuUKVMGZ86cKcj6zTff\noFq1aoWG6Pn5+aFMmTJo0qQJmjZtisuXLwMAVq1aBX9/f1hZWUFfXx9+fn7YvXu32v2Vg+i/aPvc\nkoULF8LFxQWOjo6ioyidttde2xW1/oMHD8aFCxdw+/ZtxQYipeG5r1xbtmyBi4sLZs+ejaCgIBgY\nGAjNw/qL8ebWMOpErZpSmUwml7eSHHf16tVo06YN2rVrBwB48OABfvjhB5iamha8PXr0CE+ePCl4\n3fv+MlWlSpWCj42MjJCamlqwvz59+hTsy87ODnp6ekhMTCx2XiJSPQ8fPsSKFSsKDdsnosLKli2L\nESNGYPny5aKjEKmVrKwsjBkzBvPmzcPx48fVbj4hyRebUg0lkUiwevVqPHjwABMnTgQAWFtbY8aM\nGUhOTi54S01NxaBBgwq9rqisra0RFhZWaH/p6emoWrWq3L8eIlG0eW7J9OnT4eXlpbXDqLS59lS8\n+o8ePRpbtmzB69evFReIlIbnvuLFxcWhXbt2SExMxLlz59C4cWPRkQqw/mK0a9cOly5dUqvbbLEp\nLSJjY2OEhYUhKioK06ZNw8iRI7Fq1SpER0dDJpMhLS0Nv/32W8GVz+IaPXo0pk+fjri4OADAs2fP\nsH//fnl+CUQkyIULFxAREfHOiuVE9C5ra2u0b98eW7ZsER2FSOUdPXoULVq0wIABA7Bnzx6YmJiI\njkQqwNDQEJ9++ikiIiJERykyNqXFYGJigmPHjuHw4cPYv38/1q5dC29vb1SqVAl169bF5s2b//Pq\n6H99bty4cejZsyc6d+6MChUqoFWrVoiOji7Sa4nUhbbOLZk2bRpmzZoFY2Nj0VGE0dbaU77i1t/H\nxwdBQUElmnJDqoXnvmJIpVL4+/vDw8MDO3bswLfffquSvyuy/uKo2xBe3jyzCO7fv1/wsampKS5d\nulSw3aVLl4++BshfCSsvL6/QYydOnCj4WCKRYMKECZgwYcI7+3rfa4lIPRw/fhwxMTEYPny46ChE\nauOzzz6Drq4uIiIieG9Fon9JTk6Gm5sbUlJScP78eVhZWYmORCrI1dUVixcvhkwmU8k/WPybRKbk\nP0NKJJL3/uXzQ48TkVg8N0tOJpOhZcuWGD9+PIYMGSI6DpFaWbNmDX777TeEhoaKjkKkMv766y/0\n798fvXr1wsKFC6Gvry86EqkomUyGWrVq4eDBg2jYsKHSj1/c3x85fJeISEH27duHrKysQgugEVHR\nDB06FKdOnXpn5BGRtlq/fj26dOmCwMBALFmyhA0p/SeJRKJWQ3jZlBKR0mjT3JK8vDzMmDED8+fP\nh44Ov9VqU+3pXSWpf7ly5eDh4YEVK1bIPxApDc/90svMzMSIESPwww8/ICoqCgMHDhQdqchYf7HY\nlBIRabktW7bA3NwcXbt2FR2FSG15eXlh48aNSE9PFx2FSIj79++jTZs2SE1NRXR0NBo0aCA6EqmR\nDh064MyZM0hLSxMd5aM4p5SI/hPPzeLLysqCra0ttm3bhjZt2oiOQ6TWPv/8c/Tq1QsjRowQHYVI\nqQ4dOoRhw4Zh+vTp+Oabb9RisRpSPe3bt8e3336L7t27K/W4nFNKRCTYqlWr0KRJEzakRHLg4+OD\nZcuW8Y9jpDXy8vIwa9YsjBo1CiEhIRg3bhwbUioxdRnCq1JNqUQi4Rvf+KZib/KkDXNLXr9+jYCA\nAHz//feio6gUbag9fVhp6t+xY0dkZWXhjz/+kF8gUhqe+8WTlJSEbt264Y8//sCFCxfU/o+brL94\nbEqLSSaT8U0L3k6cOCE8A9+K/0ZF9+OPP6Jjx45o0qSJ6ChEGkFHRwfe3t5YtmyZ6ChEChUdHY3m\nzZvD3t4ex44dg6WlpehIpAGaNGmC1NRU3L17V3SU/6Qyc0qJiNTds2fPUL9+fZw7dw61atUSHYdI\nY7x+/Ro1atTA5cuXUb16ddFxiORKJpNh9erVmDVrFlavXo0+ffqIjkQaZtiwYXBwcMDYsWOVdszi\n9nwqc6WUiEjdBQQEYPDgwWxIieTM2NgYX375JVatWiU6CpFcpaenw8PDA8uXL8epU6fYkJJCqMMQ\nXjalpFScW6DdNLn+cXFxCA4OxsyZM0VHUUmaXHv6OHnUf+zYsVi3bh0yMzNLH4iUhuf+h925X865\n+gAAIABJREFUcwctW7aEVCrFmTNnULduXdGR5I71Vw0dO3bE77//jqysLNFRPohNKRGRHMyZMwej\nR49G1apVRUch0kj16tWDvb09du7cKToKUamFhoaiTZs2GDNmDDZv3oxy5cqJjkQazMzMDA0bNsTJ\nkydFR/kgziklIiqlGzduoF27drhz5w4qVqwoOg6Rxjp48CDmzJmD6Ohoua8OTqQMubm5mDlzJrZt\n24Zdu3bByclJdCTSEnPmzEFqaioWLVqklONxTikRkZJ99913mDRpEhtSIgXr2rUrXrx4gbNnz4qO\nQlRsiYmJ6Ny5M/766y9cuHCBDSkplarPK2VTSkrFuQXaTRPrf+7cOfz555/w9vYWHUWlaWLtqejk\nVX9dXV2MHTuWt4dRIzz3850+fRoODg5o06YNDh8+jMqVK4uOpBSsv+pwcHBAfHw8Hj16JDrKe7Ep\nJSIqhenTp2PWrFkwMjISHYVIK3h6euLQoUNISEgQHYXoo2QyGZYuXYo+ffpg1apVmDdvHnR1dUXH\nIi2kq6uLTp064ciRI6KjvBfnlBIRlVB4eDjGjBmD69evQ19fX3QcIq3xZlExPz8/0VGIPig1NRUj\nR47EzZs3sWfPHt4ujIQLDg7GwYMHsWvXLoUfq7g9H5tSIqISkMlkcHJywsSJEzF48GDRcYi0yrVr\n19C5c2fExsbCwMBAdByid9y8eRP9+vWDk5MTli9fDkNDQ9GRiBAfHw87Ozs8e/YMenp6Cj2W0hY6\nSklJQf/+/dGgQQPY2dnh7NmzePHiBTp16gRbW1t07twZKSkpJd09aSjOLdBumlT/vXv3IicnBwMH\nDhQdRS1oUu2p+ORd/0aNGqFevXoICQmR635J/rTx3N+9ezfatm2LiRMnYsOGDVrdkGpj/VVZ1apV\nYWNjo5KLxZW4KR03bhy6deuGGzdu4MqVK6hfvz4CAwPRqVMn3L59Gy4uLggMDJRnViIilZCbm4sZ\nM2Zg/vz50NHh1HwiEXx8fLjgEamUnJwc+Pr6YtKkSQgLC8Pw4cNFRyJ6h6quwlui4bsvX75Es2bN\nEBMTU+jx+vXr4/fff4elpSUSEhLg7OyMmzdvFj4gh+8SkZrbuHEjNm3ahMjISN4rkUiQ3Nxc1K5d\nG3v37sUnn3wiOg5pufj4eAwcOBAVKlTAli1bUKlSJdGRiN4rMjISkydPRnR0tEKPo5Thu/fv30fl\nypUxbNgwfPLJJxg5ciTS0tKQmJgIS0tLAIClpSUSExNLsnsiIpWVmZkJPz8/BAQEsCElEkhPTw9j\nxozh1VISLioqCg4ODujcuTMOHDjAhpRUWuvWrXHr1i08e/ZMdJRCSjTDNTc3F3/99ReCgoLg6OiI\n8ePHvzNUVyKRfPAXNg8PD9jY2AAAKlasCHt7ezg7OwN4O/ac25q5/dNPP7HeWrytCfXftWsX7O3t\n0bp1a5XIoy7bbz5WlTzc1oz6N2jQAAsWLMDChQvx999/q8zXy+23228eU5U88tyWyWS4cOECFi9e\njIkTJ6JFixYFUzpUIZ8qbL95TFXycNsZBgYGaNy4MX7++Wf4+/vLbf+XLl0qWE8oNjYWxVWi4bsJ\nCQlo1aoV7t+/DwA4efIkAgICEBMTgxMnTqBKlSqIj49H+/btOXyXComMjCz4D0zaR93r/+rVK9St\nWxfh4eFo3Lix6DhqRd1rT6WjyPp7enqibt26mDZtmkL2T6Wjqef+q1ev4Onpibi4OOzatQs1atQQ\nHUklaWr91d2qVatw+vRpbN68WWHHUNotYdq1a4d169bB1tYWs2fPRnp6OgDAzMwMU6ZMQWBgIFJS\nUt57BZVNKRGpo9mzZ+PevXvYsmWL6ChE9D9//fUXevfujZiYGIXf4oAIyL8lUb9+/dChQwf89NNP\nKFOmjOhIRMVy//59tGzZEvHx8QpbsFFpTenly5cxYsQIZGdno3bt2ti4cSPy8vIwcOBAxMXFwcbG\nBjt37kTFihVLFZCISBU8e/YM9evXx7lz53gDdCIV06ZNG/j6+qJv376io5CG27ZtG8aNG4cffvgB\nX331leg4RCVWv359bNu2TWELxSmtKS0pNqXajcM4tJs613/ChAnIzc3loiolpM61p9JTdP23b9+O\n1atX48SJEwo7BpWMppz72dnZ8PX1xeHDh7Fnzx40bdpUdCS1oCn110Tjx4+HhYUFpk+frpD9K2X1\nXSIibfLgwQNs3rwZM2fOFB2FiN6jX79+uH37Nq5evSo6CmmgR48e4bPPPkNcXBzOnz/PhpQ0gqrd\nr5RXSomIPsLT0xNWVlYFq9QRkeqZO3cuHj9+jNWrV4uOQhokIiICX375JcaPH49JkyYpbP4dkbJl\nZGTAwsICjx49gomJidz3z+G7RERydP36dTg7O+POnTsK+aZNRPKRkJCABg0aICYmBqampqLjkJqT\nSqVYsGABli5diq1bt6JDhw6iIxHJnaurK0aNGqWQ+fgcvksq7Z/3rSLto471nzlzJiZNmsSGtJTU\nsfYkP8qof5UqVdC9e3ds2LBB4ceiolPHcz8lJQW9e/fGgQMHcP78eTakpaCO9dcmqjSEl00pEdEH\nREdHIzo6Gt7e3qKjEFER+Pj4YMWKFcjLyxMdhdTUpUuX4ODgABsbG0RGRqJatWqiIxEpzJumVBVG\nsXL4LhHRB7i4uGDQoEEYNWqU6ChEVAQymQwtWrSAn58fevToIToOqZng4GB8++23WLp0KYYMGSI6\nDpHCyWQy1KxZE4cOHYKdnZ1c983hu0REchAeHo6HDx9i2LBhoqMQURFJJBL4+Pjw1k1ULJmZmfj6\n668REBCAyMhINqSkNSQSicoM4WVTSkrFuQXaTV3qL5PJMHXqVPj7+0NfX190HI2gLrUnxVBm/QcN\nGoRLly7h1q1bSjsmfZiqn/uxsbFo27YtXrx4gejoaDRs2FB0JI2i6vUn1ZlXyqaUiOhf9uzZA6lU\niv79+4uOQkTFVKZMGYwcORJBQUGio5CKCwsLg5OTE4YMGYKdO3eiQoUKoiMRKV2HDh3w559/Ii0t\nTWgOziklIvqH3NxcNGrUCD///DO6dOkiOg4RlcCjR4/QpEkTxMbGstGgd0ilUsybNw9r1qzB9u3b\n0bZtW9GRiIRydnbG5MmT0a1bN7ntk3NKiYhKITg4GFWqVEHnzp1FRyGiEvq///s/dOzYEcHBwaKj\nkIp5/vw5unfvjoiICJw/f54NKRFUYwgvm1JSKs4t0G6qXv/MzEzMmTMHAQEBkEgkouNoFFWvPSmW\niPr7+PggKCgIUqlU6cemt1Tp3L9w4QIcHBzQqFEjREREoGrVqqIjaTxVqj99GJtSIiIVsmLFCnzy\nySdo1aqV6ChEVEqffvopDA0NER4eLjoKCSaTybB27Vp07doVixcvxqJFi7iIHdE/NG3aFK9fv8a9\ne/eEZeCcUiIiAK9evUKdOnVw/PhxNGrUSHQcIpKDdevWITQ0FAcOHBAdhQTJyMiAl5cXoqOjERIS\ngnr16omORKSSPDw80KJFC3h5ecllf5xTSkRUAj/88AO6du3KhpRIg3zxxRc4c+YMYmJiREchAe7d\nu4dWrVohKysLZ8+eZUNK9B9ED+FlU0pKxbkF2k1V6//06VMEBQVhzpw5oqNoLFWtPSmHqPobGRlh\n2LBhWL58uZDjk7jaHzhwAK1atcKIESOwdetWlC9fXkgObcfv/eqjU6dO+P3335GVlSXk+GxKiUjr\nzZ8/H0OHDoWNjY3oKEQkZ15eXggODhZ+Dz5Sjry8PMyYMQNeXl4IDQ2Ft7c3F64jKgIzMzM0aNAA\np06dEnJ8ziklIq0WGxuL5s2b4/r167C0tBQdh4gUoHfv3ujatSu+/vpr0VFIgZ49e4YhQ4ZAJpPh\n119/hYWFhehIRGpl9uzZSE9Px8KFC0u9L84pJSIqhtmzZ8PLy4sNKZEG8/HxwbJly/hHcQ125swZ\nNG/eHC1atMDRo0fZkBKVgMh5pWxKSak4t0C7qVr9//77bxw6dAjffvut6CgaT9VqT8oluv4dOnSA\nVCrF77//LjSHNlJ07WUyGZYvX46ePXti2bJlmD9/PnR1dRV6TCo60ec+FY+joyMeP36Mx48fK/3Y\nbEqJSGvNnDkTkydPhomJiegoRKRAEokE3t7eWLZsmegoJEdpaWlwc3PDmjVrcPr0afTq1Ut0JCK1\npquri06dOuHIkSNKPzbnlBKRVjp79iz69++P27dvw9DQUHQcIlKw1NRU1KhRAxcvXoS1tbXoOFRK\nt2/fRr9+/fDJJ59g5cqVMDIyEh2JSCNs3LgRhw8fxs6dO0u1H84pJSL6CJlMhqlTp8LPz48NKZGW\nKF++PNzc3LBy5UrRUaiUQkJC8Omnn8LHxwebNm1iQ0okR126dEF4eDhyc3OVelw2paRUnFug3VSl\n/seOHcOTJ0/g4eEhOorWUJXakxiqUv+xY8di/fr1yMjIEB1Fa8iz9rm5uZg0aRImTpyI3377DaNG\njeLtXlScqpz7VHRWVlaoXr06oqOjlXpcNqVEpFWkUimmT58Of39/6OnpiY5DREpUt25dODg4YPv2\n7aKjUDElJCTAxcUFV69exYULF+Do6Cg6EpHGcnV1Vfq80lI1pXl5eWjWrBk+//xzAMCLFy/QqVMn\n2NraonPnzkhJSZFLSNIczs7OoiOQQKpQ/z179gAA+vXrJziJdlGF2pM4qlR/3h5GueRR+5MnT8LB\nwQHOzs747bffYGZmVvpgpBSqdO5T0Ym4NUypmtKff/4ZdnZ2BUMnAgMD0alTJ9y+fRsuLi4IDAyU\nS0giInnIzc3FzJkzMX/+fOjocKAIkTbq0qULXr9+jT///FN0FPoImUyGJUuWoF+/flizZg3mzJnD\n270QKUGbNm1w8+ZNJCUlKe2YJf6t7NGjRzh06BBGjBhR8NfG/fv3w93dHQDg7u6Offv2ySclaQzO\nLdBuouu/adMmVKtWDZ06dRKaQxuJrj2JpUr119HRwdixY3l7GCUpae1fv36NQYMGYevWrTh79iy6\ndesm32CkFKp07lPRGRgYwNnZGceOHVPaMUvclE6YMAGLFi0qdLUhMTERlpaWAABLS0skJiaWPiER\nkRxkZGRgzpw5mD9/PhfGINJyw4YNw5EjR/DkyRPRUeg9rl+/jhYtWqBixYo4efIkbGxsREci0jrK\nHsJboqb04MGDsLCwQLNmzT44J0MikfAXP3oH5xZoN5H1X7FiBRwcHNCyZUthGbQZz33tpmr1NzEx\nweDBg7F69WrRUTRecWu/Y8cOfPbZZ5g8eTLWrFmDsmXLKiYYKYWqnftUdF26dMGRI0cglUqVcrwS\nLT15+vRp7N+/H4cOHUJmZiZevXoFNzc3WFpaIiEhAVWqVEF8fDwsLCze+3oPD4+Cv3pVrFgR9vb2\nBf9p31zm5za3uc1teW03a9YMCxYswIIFCxAZGSk8D7e5zW3x2y1atMDEiRMxY8YMGBgYCM+j7dvH\njh3D6tWrcfHiRRw9ehQvX75EJL9fc5vbQrdNTExw+fJlvHz58qPPv3TpUsEit7GxsSguiayUy8/9\n/vvvWLx4MQ4cOIDJkyfDzMwMU6ZMQWBgIFJSUt5Z7EgikXDFOy32zx8wpH1E1X/WrFmIi4vDpk2b\nlH5sysdzX7upav07duyIYcOGYejQoaKjaKyi1P7x48cYOHAgTE1NsWXLFpiamionHCmcqp77VDTj\nxo1DlSpVMG3atGK/trg9n06xj/CBgwLA1KlTcezYMdja2uL48eOYOnWqPHZPRFRiiYmJWL58OWbP\nni06ChGpmDe3hyFxTpw4AUdHR3Tv3h379+9nQ0qkQpQ5r7TUV0qLfUBeKSUiJfrmm28gkUjw888/\ni45CRComLy8PderUwc6dO+Ho6Cg6jlaRyWRYuHAhlixZgl9++QUdO3YUHYmI/iU9PR2WlpZ49OgR\nTExMivVaIVdKiYhUUWxsLLZu3YoZM2aIjkJEKkhXVxdeXl4ICgoSHUWrvHz5En379kVISAjOnTvH\nhpRIRRkZGaF169Y4fvy4wo/FppSU6s3EaNJOyq6/n58fvL29P7joGikPz33tpsr19/T0xP79+/H0\n6VPRUTTSv2t/5coVODg4wMrKClFRUahevbqYYKQUqnzuU9Eoawgvm1Ii0kjXrl1DWFgYfH19RUch\nIhVmZmaGfv36Ye3ataKjaLxffvkFLi4u8PPzw/Lly1GmTBnRkYjoI940pYqefsk5pUSkkXr37o12\n7dph4sSJoqMQkYq7fPkyunfvjvv370NfX190HI2TlZWFCRMmIDw8HHv27EHjxo1FRyKiIpLJZLCx\nsUFYWBgaNGhQ5NdxTikRab0///wTFy5cgJeXl+goRKQGmjZtilq1amHfvn2io2icuLg4tGvXDgkJ\nCTh37hwbUiI1I5FIlDKEl00pKRXnFmg3ZdRfJpNh2rRpmD17NsqWLavw41HR8NzXbupQf94eRv6O\nHj0Ke3t79O/fH3v27Cn26p2k/tTh3KePY1NKRFRMR48eRUJCAtzd3UVHISI10rt3b8TExODy5cui\no6g9qVQKf39/eHh4YNasWZg0aVLBPe2JSP106NABp0+fRnp6usKOwTmlRKQxpFIpHB0dMW3aNPTv\n3190HCJSM99//z1iY2O56FEpJCcnw83NDSkpKdi5cyesrKxERyIiOfjss88wdepUdO3atUjP55xS\nItJau3fvhkQiQb9+/URHISI1NHLkSOzevRsvXrwQHUUt/fXXX2jevDnq1q2LEydOsCEl0iCKHsLL\nppSUinMLtJsi65+Tk4OZM2ciMDCQw8RUEM997aYu9bewsMDnn3+O9evXi46idtavX48uXbogMDAQ\nS5YsKVjFWF1qT4rB+msONqVEREWwadMmVK9eHR07dhQdhYjUmI+PD1asWIG8vDzRUdRCZmYmRowY\ngcWLFyMqKgoDBw4UHYmIFKBp06Z4+fIlYmJiFLJ/ziklIrWXkZGBunXrIiQkBC1atBAdh4jUXMuW\nLTFt2jT06tVLdBSVdv/+ffTv3x916tTBunXrYGxsLDoSESmQu7s7WrZsiTFjxnz0uZxTSkRaJygo\nCC1atGBDSkRywdvDfNyhQ4fQsmVLuLm5Yfv27WxIibSAIofwsiklpeLcAu2miPqnpKRg0aJF8Pf3\nl/u+SX547ms3dav/gAED8Pfff+PGjRuio6icvLw8zJo1C6NGjcKePXswfvz4/5zHr261J/li/TVL\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Now prepare the data for plotting by pivoting on the \n", "# feature to create a new column (series) for each value\n", "\n", "# Only pull out the top 7 syslog event types\n", "topN = dataframe['type'].value_counts()[:7].index\n", "subset = dataframe[dataframe['type'].isin(topN)]\n", "print 'Subset: %d rows %d columns' % subset.shape\n", "\n", "# We're going to add a new column called value (needed for pivot). This\n", "# is a bit dorky, but needed as the new columns that get created should\n", "# really have a value in them, also we can use this as our value to sum over.\n", "subset['count'] = 1\n", "pivot = pd.pivot_table(subset, values='count', rows=subset.index, cols=['type'], fill_value=.01)\n", "by = lambda x: lambda y: getattr(y, x)\n", "grouped = pivot.groupby([by('hour')]).sum()\n", "grouped.plot(kind='bar', stacked=True)\n", "grouped.plot()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "#### Well besides learning we have lots of kernel syslog messages, kinda boring...

So, lets take is up a notch with the good 'ol spice weasel! Bam!\n", "1. **Compute similarities between all rows within the system log using LSH**\n", " Unlike conventional hash functions the goal of LSH (Locality Sensitive Hashing) is to maximize probability of \"collision\" of similar items rather than avoid collisions.\n", " * [MinHash](http://en.wikipedia.org/wiki/MinHash)\n", " * [Locality Sensitive Hashing](http://en.wikipedia.org/wiki/Locality_sensitive_hashing)\n", " * [Mining of Massive Datasets](http://infolab.stanford.edu/~ullman/mmds/ch3.pdf)\n", "2. **Use those similarities as the basis of a Hierarchical Clustering Algorithm**\n", " Single-linkage clustering is one of several methods for agglomerative \n", " hierarchical clustering.\n", " - [Single Linkage Clustering](http://en.wikipedia.org/wiki/Single-linkage_clustering)\n", " - [Hierarchical Clustering](http://en.wikipedia.org/wiki/Hierarchical_clustering)\n", " \n", " Other popular online clustering algorithms\n", " - [DBSCAN](http://en.wikipedia.org/wiki/DBSCAN)\n", " - [OPTICS Algorithms](http://en.wikipedia.org/wiki/OPTICS_algorithm)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "12694 (0.64% out of 1979649) pairs returned from MinHash\n" ] } ], "source": [ "# Even for small syslogs the number of similarity pairs to compute quickly\n", "# becomes quite large O(N**2), so for 100k rows that's 10 billion possible\n", "# pairs. Using Banded MinHash will drastically reduce the number of \n", "# candidates that we have to compute.\n", "import data_hacking.lsh_sims as lsh_sims\n", "\n", "# Note: The parameters here are setup for feeding the results into a Hierarchical\n", "# Clustering algorithm, which needs as many similarities as you can get.\n", "# In general you'd parameters like num_hashes:20, lsh_bands:5 lsh_rows:4 \n", "# Note: lsh_bands*lsh_rows ^must^ equal num_hashes\n", "params = {'num_hashes':20, 'lsh_bands':20, 'lsh_rows':1, 'drop_duplicates':True}\n", "lsh = lsh_sims.LSHSimilarities(dataframe['features'], mh_params=params)\n", "sims = lsh.batch_compute_similarities(distance_metric='jaccard', threshold=.2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### The LSH Sims python class has two distance metrics\n", "\n", "1) Jaccard Index: a set based distance metric (overlaps in sets of elements)\n", " \n", " - [Jaccard Index](http://en.wikipedia.org/wiki/Jaccard_index)\n", "\n", "2) Levenshtein Distance: based on the edit distance of the elements (so order matters).\n", " \n", " - [Levenshtein Distance](http://en.wikipedia.org/wiki/Levenshtein_distance)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Jaccard Index (Sim): 1.000000 \n", "Levenshtein Distance: 2.000000 \n", "Levenshtein (Sim): 0.500000 \n" ] } ], "source": [ "# Lets look at the difference between Jaccard Similarity and Levenshtein Similarity\n", "# So here similarity is a normalized measure of inverse distance...\n", "print 'Jaccard Index (Sim): %f ' % lsh.jaccard_sim(['a','b','c','d'], ['a','b','d','c'])\n", "print 'Levenshtein Distance: %f ' % lsh.levenshtein(['a','b','c','d'], ['a','b','d','c'])\n", "print 'Levenshtein (Sim): %f ' % lsh.l_sim(['a','b','c','d'], ['a','b','d','c'])" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Jaccard Index (Sim): 0.750000 \n", "Levenshtein Distance: 1.000000 \n", "Levenshtein (Sim): 0.750000 \n" ] } ], "source": [ "# One more example for intuition (also note they don't have to be the same size)\n", "print 'Jaccard Index (Sim): %f ' % lsh.jaccard_sim(['a','b','c'], ['a','b','c','x'])\n", "print 'Levenshtein Distance: %f ' % lsh.levenshtein(['a','b','c'], ['a','b','c','x'])\n", "print 'Levenshtein (Sim): %f ' % lsh.l_sim(['a','b','c'], ['a','b','c','x'])" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "*** Top sims ***\n" ] }, { "data": { "text/plain": [ "[(1.0, 277, 1186),\n", " (0.9705882352941176, 376, 1090),\n", " (0.9666666666666667, 375, 1089),\n", " (0.9629629629629629, 1382, 1400),\n", " (0.9629629629629629, 1355, 1400),\n", " (0.9629629629629629, 1355, 1382),\n", " (0.9629629629629629, 1343, 1400),\n", " (0.9629629629629629, 1343, 1382),\n", " (0.9629629629629629, 1343, 1355),\n", " (0.9629629629629629, 1334, 1400)]" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Okay now that we have the similarities between all the rows in our syslog\n", "# we can start to investigate the results.\n", "sims.sort(reverse=True)\n", "print '*** Top sims ***'\n", "sims[:10]\n", "#sims[-10:]" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['System', 'Events[8642]:', '.sdef', 'warning', 'for', 'type', \"'text\", '|', 'missing', 'value', '|', \"any'\", 'attribute', \"'uniqueID'\", 'of', 'class', \"'XML\", \"element'\", 'in', 'suite', \"'XML\", \"Suite':\", 'AppleScript', 'ID', 'references', 'may', 'not', 'work', 'for', 'this', 'property', 'because', 'its', 'type', 'is', 'not', 'NSNumber-', 'or', 'NSString-derived.']\n" ] } ], "source": [ "print dataframe.iloc[376]['features']" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['System', 'Events[9028]:', '.sdef', 'warning', 'for', 'type', \"'text\", '|', 'missing', 'value', '|', \"any'\", 'attribute', \"'uniqueID'\", 'of', 'class', \"'XML\", \"element'\", 'in', 'suite', \"'XML\", \"Suite':\", 'AppleScript', 'ID', 'references', 'may', 'not', 'work', 'for', 'this', 'property', 'because', 'its', 'type', 'is', 'not', 'NSNumber-', 'or', 'NSString-derived.']\n" ] } ], "source": [ "print dataframe.iloc[1090]['features']" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch:::LSXPCC:#426:___ZN2:q=com.',\n", " 'sim': 0.9629629629629629},\n", " {'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch:::LSXPCC:#426:___ZN2:q=com.',\n", " 'sim': 0.9629629629629629},\n", " {'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch:::LSXPCC:#426:___ZN2:q=com.',\n", " 'sim': 0.9629629629629629},\n", " {'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch:::LSXPCC:#426:___ZN2:q=com.',\n", " 'sim': 0.9629629629629629},\n", " {'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch:::LSXPCC:#426:___ZN2:q=com.',\n", " 'sim': 0.9629629629629629}]" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# The two feature sets should look quite similar (recall that this\n", "# is just our syslog row split on white space and thrown into a list)\n", "\n", "# So now for any row in our syslog we can see what rows are highly\n", "# similar to that row.\n", "query_item = ['Google', 'Chrome', 'Helper[11545]:', 'Process', 'unable', 'to', 'create', 'connection', 'because', 'the', 'sandbox', 'denied', 'the', 'right', 'to', 'lookup', 'com.apple.coreservices.launchservicesd', 'and', 'so', 'this', 'process', 'cannot', 'talk', 'to', 'launchservicesd.', ':', 'LSXPCClient.cp', '#426', '___ZN26LSClientToServerConnection21setupServerConnectionEiPK14__CFDictionary_block_invoke()', 'q=com.apple.main-thread']\n", "lsh.top_N(query_item,dataframe['label'], 5)\n" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch',\n", " 'sim': 0.2727272727272727},\n", " {'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch',\n", " 'sim': 0.2727272727272727},\n", " {'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch',\n", " 'sim': 0.2727272727272727},\n", " {'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch',\n", " 'sim': 0.2727272727272727},\n", " {'label': 'Google:Chrome:Helper:Proces:unable:to:create:connec:becaus:the:sandbo:denied:the:right:to:lookup:com.ap:and:so:this:proces:cannot:talk:to:launch',\n", " 'sim': 0.2727272727272727}]" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Note the query object doesn't have all the original features\n", "query_item = ['Google', 'Chrome', 'Process', 'unable', 'to', 'sandbox']\n", "lsh.top_N(query_item,dataframe['label'], 5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "### Hierarchical Clustering \n", "Now we can use those similarities as the basis of a Hierarchical Clustering Algorithm. Single-linkage clustering is one of several methods for agglomerative hierarchical clustering. The image on the right is an example of how this works. \n", "\n", "We're using a bottom up method (image is flipped :), you simply sort the similarities and start building your tree from the bottom. If B and C are the most similar you link them, then D/E and so on until you complete the tree. The devil is **definitely** in the details on the implementation of this, so luckily we have a python class that does it for us." ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "10 (12.35% out of 81) pairs returned from MinHash\n" ] }, { "data": { "image/png": "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\nsbExX3/9Nc7OzvTt25cHDx7orS0nJyf8/f2JiYnBzc2NoUOH4u3tzZ49e+SDmxAVjCTMokIICQkp\ndsL8v3Jzc1Gr1fz555/k5ubq5JqVXV5eHrdv3+bWrVvcvHlTLzN/zs7OHD16lJEjR+Ll5cWKFSso\nKCjQeTui7DMyMuLLL7/Ew8ODTZs26b38r3bt2syZM4fY2Fjee+89PvnkE1xcXFi3bh1ZWVl6bVsI\nUTqkhllUCI0aNeLw4cM0a9as2NfIzs7mjz/+ICwsjNDQUC5cuIC3tzfz5s2T2tgSOH36NMHBwSQk\nJBAfH09UVBS9evVi1qxZNG/eXC9txsTEMGnSJB4+fMg333xDixYtnntcUlISiYmJtG/fXi9xCMPS\naDTk5eW98FukJx/cdL2spNQ5C1H2SA2zqPTi4+PJycmhadOmxb5GTk4On332GQEBATx8+JC///3v\nXL9+HRsbG/7973/rMNrKIzc3l8mTJzNlyhTS09Pp06cPa9euJSYmBktLS/z9/fXWtpOTE7///jtK\npZI333zzmW8K1Go1+/fvp0+fPixcuJCWLVsSGxurt3iEYSgUiucmyxkZGQQEBNC/f3+GDRtGQECA\nztstaZ1zRkYGp06d0mlcQojik63NRLn3pByjuMvC5ebmMn78eNRqNYsXL35q+10XFxfu3buHRqOR\nZedeUVhYGKmpqRw9evSZGbwGDRqQlJSk1/aNjIyYMmUKEydOfOb/3e+//84333zDhx9+yOjRo5k/\nfz579uxh+vTpeo1JGN7t27f59ttv+eOPP1i8eDG2traMGTOGjh074uLiovP2ntQ5//vf/2bTpk0M\nHTr0pes537t3jxEjRmBmZsbFixdZv349gwcP1nlsQoiikxlmUe6dPHkSLy+vYp//pK52+/btuLq6\nUlBQQExMDN999x2bN29m1KhRkiwX04ULF7CwsOD+/fvExMRw9OhRPv/8c/bu3cvYsWNLJYZq1ao9\ntftbQkIC+/fvp3PnzowePRp4vLFG1apVAaRUrAJ79OgRgYGBxMXF8fHHH9OrVy9atGhBtWrVePTo\nkV7bfl6d8+DBg8nPz3/quAcPHvD555/TvHlzDhw4wPr16/nxxx/1GpsQ4uVkhlmUeydPnsTX17fY\n5zs6OpKWlsY333yDiYkJCoWCy5cvk5qayvTp0/H29tZdsJVIly5dcHd3p3PnznTs2JFq1apx7949\n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\nishzFtQGRA6zoE7xv//9j5CQEDZv3qwxG/r168e8efMYN24cycnJnD9/nnOR5wg/E05CQgJFRUUA\nGBsbY29vj3tvd3r26Imbmxu2trYas1vbmDRpEm5ubrRr167W61dYWMiSJUsICAhg1apVTJo0SfEM\nVKaTJfqj+klLS2PIkCEMGjSIFStWPHN76lKbPS3PWSaTUVxcTP369TVmoy7pKVAvwmEW1CmmTZuG\nm5ubRkeob926lc8++wyLxhZcjr6MXRs7zOzMsGpphbm1OYZGpZFnSYmE7NRsMu5mkJOYQ2J8Iq6d\nXPGf68/o0aO1chlodVBSUsKePXv48OMPuXP7Dq1cWtUZ/SIjI5k6dSpt2rRh/fr1LF26lMaNG7N4\n8WLq1av3XOcs03PlmpWiP2qIjIwMhg4dSp8+fVi6dCnLli3j448/rtJxrA1tVtl8zomJiUybNo2Z\nM2cyc+ZMbGxs1GJLbdBToHqEwyyoU7i4uPDHH3/QuXNntdctkUj4duW3rPhmBXoN9ejs1RmHLg4Y\nGBpU63ipRMrti7eJPx1PTmoOC99diL+/f51J7XhUP3MbcxzdHeukfkVFRSxdupR169aRlZUFQMeO\nHQkICMDNza3a5xF6ahdZWVl4eXlx9+5dkpKS8PLyYvfu3eVWAq2NbZaZmckvv/zC2rVryc3NJTMz\nEyiN5k6ZMoX58+fToUMHldRdG/UUqA7hMAvqDGlpabRp04aMjAwMDKr3QFQWV69eZfKUyeRIc+g+\npjtWzWs2x27G/QyidkdhZmDG1s1bad++vZIs1U7K9MuV5tJtTLc6r19OTg7t2rUjKSlJsc3AwICF\nCxc+MTJZhtBT+ygoKODll18mNDRUsc3T05P9+/djYmJS69vs3Llz9OrVq9J9Xl5e+Pv74+XlpbQU\npNqup0D5iGnlBHWG8PBwevXqpVZnWS6Xs3zFctw93LHoaMHgWYNr/GAGsGpuxeBZg7HoYEGfvn1Y\nvmJ5rXyBfFy/QbMGCf2A2NjYCrMNSKVSvvrqK7p168bZs2crPU7oqb3k5OSQkpJSbtvx48cZOnQo\nn3/+ea1vs1u3blW58umRI0cYNmwYrq6ubNiwgcLCwueuR9wDAk0hIswCneG9996jQYMGfPLJJ2qp\nTyaTMWfuHHYd2MWA6QMwa2ymknpy0nMI/TmUsd5jWbtmLfr6teM9Vuj3ZDIyMpg3bx6//fZbhX36\n+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\n/wPvjG8/mnYHuwAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# A simple example for illustration\n", "import data_hacking.hcluster as hcluster\n", "\n", "toy_data = [['a','b','c','d'],['a','b','d'],['a','b','e','d'],['a','b','f'],\n", " ['w','x','y','z'],['x','y','z'],['w','x','q','z','y'],\n", " ['r','s','t'],['u','s','t']]\n", "\n", "toy_lsh = lsh_sims.LSHSimilarities(toy_data, mh_params=params)\n", "toy_sims = toy_lsh.batch_compute_similarities(distance_metric='jaccard', threshold=.2)\n", " \n", "# Compute a hierarchical clustering from the similarity list\n", "toy_h_clustering = hcluster.HCluster(toy_data)\n", "toy_h_clustering.set_sim_method(toy_lsh.jaccard_sim)\n", "toy_h_tree, toy_root = toy_h_clustering.sims_to_hcluster(toy_sims)\n", "\n", "# Plot the hierarchical tree\n", "toy_h_clustering.plot_htree(toy_h_tree, prog='dot')\n" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "# Now we'll do the same thing for our syslog data\n", "\n", "# Compute a hierarchical clustering from the similarity list\n", "h_clustering = hcluster.HCluster(dataframe['features'])\n", "h_clustering.set_sim_method(lsh.jaccard_sim)\n", "h_tree, root = h_clustering.sims_to_hcluster(sims, agg_sim=.3)" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "# Here's an image for those folks not looking at it interactively" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [], "source": [ "# Even better save the graph out to json format and visualize it with D3 (D3js.org)\n", "import networkx.readwrite.json_graph\n", "import json\n", "graph_json = networkx.readwrite.json_graph.tree_data(h_tree, root=root)\n", "json.dump(graph_json, open('h_tree.json','w'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Please note the D3 vis below is embryonic, hoping to make it super cool...\n", "To run the visualization in your web browser, here we're using port 9999 instead of standard 8888 because we may have IPython already running on 8888:\n", "\n", "
\n",
    "> cd data_hacking/fun_with_syslog\n",
    "> python -m SimpleHTTPServer 9999 &\n",
    "
\n", "\n", "Now point your brower at the html file [http://localhost:9999/syslog_vis.html](http://localhost:9999/syslog_vis.html)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### ToDo\n", "Really want to improve the interactive D3 based Hierarchical Tree Visualization [D3 Data Driven Documents](http://d3js.org)\n", "\n", "### Conclusions\n", "We pulled in some syslog data into a Pandas dataframe, made some plots, computed row similarities with 'Banded MinHash' and used single-linkage clustering to build an agglomerative hierarchical cluster. Lots of possibilities from here, you could use just the LSH datastructure or the H-Cluster...\n", "\n", " - LogFile Viewer\n", " - Click on a row, filter out everything that's similar\n", " - Click on a row, color code all the other rows based on similarity\n", " - Super fancy D3 zoom in/filter awesomeness..." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.6" } }, "nbformat": 4, "nbformat_minor": 1 }