Skip to content

Instantly share code, notes, and snippets.

@aneesha
Last active January 31, 2021 20:11
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save aneesha/da9216fb8d84245f7af6edaa14f4efa9 to your computer and use it in GitHub Desktop.
Save aneesha/da9216fb8d84245f7af6edaa14f4efa9 to your computer and use it in GitHub Desktop.
Use TSNE to only plot similar words using Word2Vec
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false,
"deletable": true,
"editable": true
},
"outputs": [],
"source": [
"# uncomment if gensim is installed\n",
"#!pip install gensim\n",
"import gensim\n",
"# Need the interactive Tools for Matplotlib\n",
"%matplotlib notebook\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
" \n",
"from sklearn.manifold import TSNE"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false,
"deletable": true,
"editable": true
},
"outputs": [],
"source": [
"# load pre-trained word2vec embeddings\n",
"# The embeddings can be downloaded from command prompt:\n",
"# wget -c \"https://s3.amazonaws.com/dl4j-distribution/GoogleNews-vectors-negative300.bin.gz\"\n",
"model = gensim.models.KeyedVectors.load_word2vec_format('GoogleNews-vectors-negative300.bin.gz', binary=True)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[ 1.07421875e-01 -2.01171875e-01 1.23046875e-01 2.11914062e-01\n",
" -9.13085938e-02 2.16796875e-01 -1.31835938e-01 8.30078125e-02\n",
" 2.02148438e-01 4.78515625e-02 3.66210938e-02 -2.45361328e-02\n",
" 2.39257812e-02 -1.60156250e-01 -2.61230469e-02 9.71679688e-02\n",
" -6.34765625e-02 1.84570312e-01 1.70898438e-01 -1.63085938e-01\n",
" -1.09375000e-01 1.49414062e-01 -4.65393066e-04 9.61914062e-02\n",
" 1.68945312e-01 2.60925293e-03 8.93554688e-02 6.49414062e-02\n",
" 3.56445312e-02 -6.93359375e-02 -1.46484375e-01 -1.21093750e-01\n",
" -2.27539062e-01 2.45361328e-02 -1.24511719e-01 -3.18359375e-01\n",
" -2.20703125e-01 1.30859375e-01 3.66210938e-02 -3.63769531e-02\n",
" -1.13281250e-01 1.95312500e-01 9.76562500e-02 1.26953125e-01\n",
" 6.59179688e-02 6.93359375e-02 1.02539062e-02 1.75781250e-01\n",
" -1.68945312e-01 1.21307373e-03 -2.98828125e-01 -1.15234375e-01\n",
" 5.66406250e-02 -1.77734375e-01 -2.08984375e-01 1.76757812e-01\n",
" 2.38037109e-02 -2.57812500e-01 -4.46777344e-02 1.88476562e-01\n",
" 5.51757812e-02 5.02929688e-02 -1.06933594e-01 1.89453125e-01\n",
" -1.16210938e-01 8.49609375e-02 -1.71875000e-01 2.45117188e-01\n",
" -1.73828125e-01 -8.30078125e-03 4.56542969e-02 -1.61132812e-02\n",
" 1.86523438e-01 -6.05468750e-02 -4.17480469e-02 1.82617188e-01\n",
" 2.20703125e-01 -1.22558594e-01 -2.55126953e-02 -3.08593750e-01\n",
" 9.13085938e-02 1.60156250e-01 1.70898438e-01 1.19628906e-01\n",
" 7.08007812e-02 -2.64892578e-02 -3.08837891e-02 4.06250000e-01\n",
" -1.01562500e-01 5.71289062e-02 -7.26318359e-03 -9.17968750e-02\n",
" -1.50390625e-01 -2.55859375e-01 2.16796875e-01 -3.63769531e-02\n",
" 2.24609375e-01 8.00781250e-02 1.56250000e-01 5.27343750e-02\n",
" 1.50390625e-01 -1.14746094e-01 -8.64257812e-02 1.19140625e-01\n",
" -7.17773438e-02 2.73437500e-01 -1.64062500e-01 7.29370117e-03\n",
" 4.21875000e-01 -1.12792969e-01 -1.35742188e-01 -1.31835938e-01\n",
" -1.37695312e-01 -7.66601562e-02 6.25000000e-02 4.98046875e-02\n",
" -1.91406250e-01 -6.03027344e-02 2.27539062e-01 5.88378906e-02\n",
" -3.24218750e-01 5.41992188e-02 -1.35742188e-01 8.17871094e-03\n",
" -5.24902344e-02 -1.74713135e-03 -9.81445312e-02 -2.86865234e-02\n",
" 3.61328125e-02 2.15820312e-01 5.98144531e-02 -3.08593750e-01\n",
" -2.27539062e-01 2.61718750e-01 9.86328125e-02 -5.07812500e-02\n",
" 1.78222656e-02 1.31835938e-01 -5.35156250e-01 -1.81640625e-01\n",
" 1.38671875e-01 -3.10546875e-01 -9.71679688e-02 1.31835938e-01\n",
" -1.16210938e-01 7.03125000e-02 2.85156250e-01 3.51562500e-02\n",
" -1.01562500e-01 -3.75976562e-02 1.41601562e-01 1.42578125e-01\n",
" -5.68847656e-02 2.65625000e-01 -2.09960938e-01 9.64355469e-03\n",
" -6.68945312e-02 -4.83398438e-02 -6.10351562e-02 2.45117188e-01\n",
" -9.66796875e-02 1.78222656e-02 -1.27929688e-01 -4.78515625e-02\n",
" -7.26318359e-03 1.79687500e-01 2.78320312e-02 -2.10937500e-01\n",
" -1.43554688e-01 -1.27929688e-01 1.73339844e-02 -3.60107422e-03\n",
" -2.04101562e-01 3.63159180e-03 -1.19628906e-01 -6.15234375e-02\n",
" 5.93261719e-02 -3.23486328e-03 -1.70898438e-01 -3.14941406e-02\n",
" -8.88671875e-02 -2.89062500e-01 3.44238281e-02 -1.87500000e-01\n",
" 2.94921875e-01 1.58203125e-01 -1.19628906e-01 7.61718750e-02\n",
" 6.39648438e-02 -4.68750000e-02 -6.83593750e-02 1.21459961e-02\n",
" -1.44531250e-01 4.54101562e-02 3.68652344e-02 3.88671875e-01\n",
" 1.45507812e-01 -2.55859375e-01 -4.46777344e-02 -1.33789062e-01\n",
" -1.38671875e-01 6.59179688e-02 1.37695312e-01 1.14746094e-01\n",
" 2.03125000e-01 -4.78515625e-02 1.80664062e-02 -8.54492188e-02\n",
" -2.48046875e-01 -3.39843750e-01 -2.83203125e-02 1.05468750e-01\n",
" -2.14843750e-01 -8.74023438e-02 7.12890625e-02 1.87500000e-01\n",
" -1.12304688e-01 2.73437500e-01 -3.26171875e-01 -1.77734375e-01\n",
" -4.24804688e-02 -2.69531250e-01 6.64062500e-02 -6.88476562e-02\n",
" -1.99218750e-01 -7.03125000e-02 -2.43164062e-01 -3.66210938e-02\n",
" -7.37304688e-02 -1.77734375e-01 9.17968750e-02 -1.25000000e-01\n",
" -1.65039062e-01 -3.57421875e-01 -2.85156250e-01 -1.66992188e-01\n",
" 1.97265625e-01 -1.53320312e-01 2.31933594e-02 2.06054688e-01\n",
" 1.80664062e-01 -2.74658203e-02 -1.92382812e-01 -9.61914062e-02\n",
" -1.06811523e-02 -4.73632812e-02 6.54296875e-02 -1.25732422e-02\n",
" 1.78222656e-02 -8.00781250e-02 -2.59765625e-01 9.37500000e-02\n",
" -7.81250000e-02 4.68750000e-02 -2.22167969e-02 1.86767578e-02\n",
" 3.11279297e-02 1.04980469e-02 -1.69921875e-01 2.58789062e-02\n",
" -3.41796875e-02 -1.44042969e-02 -5.46875000e-02 -8.78906250e-02\n",
" 1.96838379e-03 2.23632812e-01 -1.36718750e-01 1.75781250e-01\n",
" -1.63085938e-01 1.87500000e-01 3.44238281e-02 -5.63964844e-02\n",
" -2.27689743e-05 4.27246094e-02 5.81054688e-02 -1.07910156e-01\n",
" -3.88183594e-02 -2.69531250e-01 3.34472656e-02 9.81445312e-02\n",
" 5.63964844e-02 2.23632812e-01 -5.49316406e-02 1.46484375e-01\n",
" 5.93261719e-02 -2.19726562e-01 6.39648438e-02 1.66015625e-02\n",
" 4.56542969e-02 3.26171875e-01 -3.80859375e-01 1.70898438e-01\n",
" 5.66406250e-02 -1.04492188e-01 1.38671875e-01 -1.57226562e-01\n",
" 3.23486328e-03 -4.80957031e-02 -2.48046875e-01 -6.20117188e-02]\n"
]
},
{
"data": {
"text/plain": [
"[('computers', 0.7979379892349243),\n",
" ('laptop', 0.6640493273735046),\n",
" ('laptop_computer', 0.6548868417739868),\n",
" ('Computer', 0.6473335027694702),\n",
" ('com_puter', 0.6082079410552979),\n",
" ('technician_Leonard_Luchko', 0.5662748217582703),\n",
" ('mainframes_minicomputers', 0.5617721080780029),\n",
" ('laptop_computers', 0.5585449934005737),\n",
" ('PC', 0.5539618730545044),\n",
" ('maker_Dell_DELL.O', 0.5519254207611084)]"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Test the loaded word2vec model in gensim\n",
"# We will need the raw vector for a word\n",
"print(model['computer']) \n",
"\n",
"# We will also need to get the words closest to a word\n",
"model.similar_by_word('computer')"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"def display_closestwords_tsnescatterplot(model, word):\n",
" \n",
" arr = np.empty((0,300), dtype='f')\n",
" word_labels = [word]\n",
"\n",
" # get close words\n",
" close_words = model.similar_by_word(word)\n",
" \n",
" # add the vector for each of the closest words to the array\n",
" arr = np.append(arr, np.array([model[word]]), axis=0)\n",
" for wrd_score in close_words:\n",
" wrd_vector = model[wrd_score[0]]\n",
" word_labels.append(wrd_score[0])\n",
" arr = np.append(arr, np.array([wrd_vector]), axis=0)\n",
" \n",
" # find tsne coords for 2 dimensions\n",
" tsne = TSNE(n_components=2, random_state=0)\n",
" np.set_printoptions(suppress=True)\n",
" Y = tsne.fit_transform(arr)\n",
"\n",
" x_coords = Y[:, 0]\n",
" y_coords = Y[:, 1]\n",
" # display scatter plot\n",
" plt.scatter(x_coords, y_coords)\n",
"\n",
" for label, x, y in zip(word_labels, x_coords, y_coords):\n",
" plt.annotate(label, xy=(x, y), xytext=(0, 0), textcoords='offset points')\n",
" plt.xlim(x_coords.min()+0.00005, x_coords.max()+0.00005)\n",
" plt.ylim(y_coords.min()+0.00005, y_coords.max()+0.00005)\n",
" plt.show()\n",
"\n",
"\n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"application/javascript": [
"/* Put everything inside the global mpl namespace */\n",
"window.mpl = {};\n",
"\n",
"\n",
"mpl.get_websocket_type = function() {\n",
" if (typeof(WebSocket) !== 'undefined') {\n",
" return WebSocket;\n",
" } else if (typeof(MozWebSocket) !== 'undefined') {\n",
" return MozWebSocket;\n",
" } else {\n",
" alert('Your browser does not have WebSocket support.' +\n",
" 'Please try Chrome, Safari or Firefox ≥ 6. ' +\n",
" 'Firefox 4 and 5 are also supported but you ' +\n",
" 'have to enable WebSockets in about:config.');\n",
" };\n",
"}\n",
"\n",
"mpl.figure = function(figure_id, websocket, ondownload, parent_element) {\n",
" this.id = figure_id;\n",
"\n",
" this.ws = websocket;\n",
"\n",
" this.supports_binary = (this.ws.binaryType != undefined);\n",
"\n",
" if (!this.supports_binary) {\n",
" var warnings = document.getElementById(\"mpl-warnings\");\n",
" if (warnings) {\n",
" warnings.style.display = 'block';\n",
" warnings.textContent = (\n",
" \"This browser does not support binary websocket messages. \" +\n",
" \"Performance may be slow.\");\n",
" }\n",
" }\n",
"\n",
" this.imageObj = new Image();\n",
"\n",
" this.context = undefined;\n",
" this.message = undefined;\n",
" this.canvas = undefined;\n",
" this.rubberband_canvas = undefined;\n",
" this.rubberband_context = undefined;\n",
" this.format_dropdown = undefined;\n",
"\n",
" this.image_mode = 'full';\n",
"\n",
" this.root = $('<div/>');\n",
" this._root_extra_style(this.root)\n",
" this.root.attr('style', 'display: inline-block');\n",
"\n",
" $(parent_element).append(this.root);\n",
"\n",
" this._init_header(this);\n",
" this._init_canvas(this);\n",
" this._init_toolbar(this);\n",
"\n",
" var fig = this;\n",
"\n",
" this.waiting = false;\n",
"\n",
" this.ws.onopen = function () {\n",
" fig.send_message(\"supports_binary\", {value: fig.supports_binary});\n",
" fig.send_message(\"send_image_mode\", {});\n",
" if (mpl.ratio != 1) {\n",
" fig.send_message(\"set_dpi_ratio\", {'dpi_ratio': mpl.ratio});\n",
" }\n",
" fig.send_message(\"refresh\", {});\n",
" }\n",
"\n",
" this.imageObj.onload = function() {\n",
" if (fig.image_mode == 'full') {\n",
" // Full images could contain transparency (where diff images\n",
" // almost always do), so we need to clear the canvas so that\n",
" // there is no ghosting.\n",
" fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n",
" }\n",
" fig.context.drawImage(fig.imageObj, 0, 0);\n",
" };\n",
"\n",
" this.imageObj.onunload = function() {\n",
" this.ws.close();\n",
" }\n",
"\n",
" this.ws.onmessage = this._make_on_message_function(this);\n",
"\n",
" this.ondownload = ondownload;\n",
"}\n",
"\n",
"mpl.figure.prototype._init_header = function() {\n",
" var titlebar = $(\n",
" '<div class=\"ui-dialog-titlebar ui-widget-header ui-corner-all ' +\n",
" 'ui-helper-clearfix\"/>');\n",
" var titletext = $(\n",
" '<div class=\"ui-dialog-title\" style=\"width: 100%; ' +\n",
" 'text-align: center; padding: 3px;\"/>');\n",
" titlebar.append(titletext)\n",
" this.root.append(titlebar);\n",
" this.header = titletext[0];\n",
"}\n",
"\n",
"\n",
"\n",
"mpl.figure.prototype._canvas_extra_style = function(canvas_div) {\n",
"\n",
"}\n",
"\n",
"\n",
"mpl.figure.prototype._root_extra_style = function(canvas_div) {\n",
"\n",
"}\n",
"\n",
"mpl.figure.prototype._init_canvas = function() {\n",
" var fig = this;\n",
"\n",
" var canvas_div = $('<div/>');\n",
"\n",
" canvas_div.attr('style', 'position: relative; clear: both; outline: 0');\n",
"\n",
" function canvas_keyboard_event(event) {\n",
" return fig.key_event(event, event['data']);\n",
" }\n",
"\n",
" canvas_div.keydown('key_press', canvas_keyboard_event);\n",
" canvas_div.keyup('key_release', canvas_keyboard_event);\n",
" this.canvas_div = canvas_div\n",
" this._canvas_extra_style(canvas_div)\n",
" this.root.append(canvas_div);\n",
"\n",
" var canvas = $('<canvas/>');\n",
" canvas.addClass('mpl-canvas');\n",
" canvas.attr('style', \"left: 0; top: 0; z-index: 0; outline: 0\")\n",
"\n",
" this.canvas = canvas[0];\n",
" this.context = canvas[0].getContext(\"2d\");\n",
"\n",
" var backingStore = this.context.backingStorePixelRatio ||\n",
"\tthis.context.webkitBackingStorePixelRatio ||\n",
"\tthis.context.mozBackingStorePixelRatio ||\n",
"\tthis.context.msBackingStorePixelRatio ||\n",
"\tthis.context.oBackingStorePixelRatio ||\n",
"\tthis.context.backingStorePixelRatio || 1;\n",
"\n",
" mpl.ratio = (window.devicePixelRatio || 1) / backingStore;\n",
"\n",
" var rubberband = $('<canvas/>');\n",
" rubberband.attr('style', \"position: absolute; left: 0; top: 0; z-index: 1;\")\n",
"\n",
" var pass_mouse_events = true;\n",
"\n",
" canvas_div.resizable({\n",
" start: function(event, ui) {\n",
" pass_mouse_events = false;\n",
" },\n",
" resize: function(event, ui) {\n",
" fig.request_resize(ui.size.width, ui.size.height);\n",
" },\n",
" stop: function(event, ui) {\n",
" pass_mouse_events = true;\n",
" fig.request_resize(ui.size.width, ui.size.height);\n",
" },\n",
" });\n",
"\n",
" function mouse_event_fn(event) {\n",
" if (pass_mouse_events)\n",
" return fig.mouse_event(event, event['data']);\n",
" }\n",
"\n",
" rubberband.mousedown('button_press', mouse_event_fn);\n",
" rubberband.mouseup('button_release', mouse_event_fn);\n",
" // Throttle sequential mouse events to 1 every 20ms.\n",
" rubberband.mousemove('motion_notify', mouse_event_fn);\n",
"\n",
" rubberband.mouseenter('figure_enter', mouse_event_fn);\n",
" rubberband.mouseleave('figure_leave', mouse_event_fn);\n",
"\n",
" canvas_div.on(\"wheel\", function (event) {\n",
" event = event.originalEvent;\n",
" event['data'] = 'scroll'\n",
" if (event.deltaY < 0) {\n",
" event.step = 1;\n",
" } else {\n",
" event.step = -1;\n",
" }\n",
" mouse_event_fn(event);\n",
" });\n",
"\n",
" canvas_div.append(canvas);\n",
" canvas_div.append(rubberband);\n",
"\n",
" this.rubberband = rubberband;\n",
" this.rubberband_canvas = rubberband[0];\n",
" this.rubberband_context = rubberband[0].getContext(\"2d\");\n",
" this.rubberband_context.strokeStyle = \"#000000\";\n",
"\n",
" this._resize_canvas = function(width, height) {\n",
" // Keep the size of the canvas, canvas container, and rubber band\n",
" // canvas in synch.\n",
" canvas_div.css('width', width)\n",
" canvas_div.css('height', height)\n",
"\n",
" canvas.attr('width', width * mpl.ratio);\n",
" canvas.attr('height', height * mpl.ratio);\n",
" canvas.attr('style', 'width: ' + width + 'px; height: ' + height + 'px;');\n",
"\n",
" rubberband.attr('width', width);\n",
" rubberband.attr('height', height);\n",
" }\n",
"\n",
" // Set the figure to an initial 600x600px, this will subsequently be updated\n",
" // upon first draw.\n",
" this._resize_canvas(600, 600);\n",
"\n",
" // Disable right mouse context menu.\n",
" $(this.rubberband_canvas).bind(\"contextmenu\",function(e){\n",
" return false;\n",
" });\n",
"\n",
" function set_focus () {\n",
" canvas.focus();\n",
" canvas_div.focus();\n",
" }\n",
"\n",
" window.setTimeout(set_focus, 100);\n",
"}\n",
"\n",
"mpl.figure.prototype._init_toolbar = function() {\n",
" var fig = this;\n",
"\n",
" var nav_element = $('<div/>')\n",
" nav_element.attr('style', 'width: 100%');\n",
" this.root.append(nav_element);\n",
"\n",
" // Define a callback function for later on.\n",
" function toolbar_event(event) {\n",
" return fig.toolbar_button_onclick(event['data']);\n",
" }\n",
" function toolbar_mouse_event(event) {\n",
" return fig.toolbar_button_onmouseover(event['data']);\n",
" }\n",
"\n",
" for(var toolbar_ind in mpl.toolbar_items) {\n",
" var name = mpl.toolbar_items[toolbar_ind][0];\n",
" var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
" var image = mpl.toolbar_items[toolbar_ind][2];\n",
" var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
"\n",
" if (!name) {\n",
" // put a spacer in here.\n",
" continue;\n",
" }\n",
" var button = $('<button/>');\n",
" button.addClass('ui-button ui-widget ui-state-default ui-corner-all ' +\n",
" 'ui-button-icon-only');\n",
" button.attr('role', 'button');\n",
" button.attr('aria-disabled', 'false');\n",
" button.click(method_name, toolbar_event);\n",
" button.mouseover(tooltip, toolbar_mouse_event);\n",
"\n",
" var icon_img = $('<span/>');\n",
" icon_img.addClass('ui-button-icon-primary ui-icon');\n",
" icon_img.addClass(image);\n",
" icon_img.addClass('ui-corner-all');\n",
"\n",
" var tooltip_span = $('<span/>');\n",
" tooltip_span.addClass('ui-button-text');\n",
" tooltip_span.html(tooltip);\n",
"\n",
" button.append(icon_img);\n",
" button.append(tooltip_span);\n",
"\n",
" nav_element.append(button);\n",
" }\n",
"\n",
" var fmt_picker_span = $('<span/>');\n",
"\n",
" var fmt_picker = $('<select/>');\n",
" fmt_picker.addClass('mpl-toolbar-option ui-widget ui-widget-content');\n",
" fmt_picker_span.append(fmt_picker);\n",
" nav_element.append(fmt_picker_span);\n",
" this.format_dropdown = fmt_picker[0];\n",
"\n",
" for (var ind in mpl.extensions) {\n",
" var fmt = mpl.extensions[ind];\n",
" var option = $(\n",
" '<option/>', {selected: fmt === mpl.default_extension}).html(fmt);\n",
" fmt_picker.append(option)\n",
" }\n",
"\n",
" // Add hover states to the ui-buttons\n",
" $( \".ui-button\" ).hover(\n",
" function() { $(this).addClass(\"ui-state-hover\");},\n",
" function() { $(this).removeClass(\"ui-state-hover\");}\n",
" );\n",
"\n",
" var status_bar = $('<span class=\"mpl-message\"/>');\n",
" nav_element.append(status_bar);\n",
" this.message = status_bar[0];\n",
"}\n",
"\n",
"mpl.figure.prototype.request_resize = function(x_pixels, y_pixels) {\n",
" // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n",
" // which will in turn request a refresh of the image.\n",
" this.send_message('resize', {'width': x_pixels, 'height': y_pixels});\n",
"}\n",
"\n",
"mpl.figure.prototype.send_message = function(type, properties) {\n",
" properties['type'] = type;\n",
" properties['figure_id'] = this.id;\n",
" this.ws.send(JSON.stringify(properties));\n",
"}\n",
"\n",
"mpl.figure.prototype.send_draw_message = function() {\n",
" if (!this.waiting) {\n",
" this.waiting = true;\n",
" this.ws.send(JSON.stringify({type: \"draw\", figure_id: this.id}));\n",
" }\n",
"}\n",
"\n",
"\n",
"mpl.figure.prototype.handle_save = function(fig, msg) {\n",
" var format_dropdown = fig.format_dropdown;\n",
" var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n",
" fig.ondownload(fig, format);\n",
"}\n",
"\n",
"\n",
"mpl.figure.prototype.handle_resize = function(fig, msg) {\n",
" var size = msg['size'];\n",
" if (size[0] != fig.canvas.width || size[1] != fig.canvas.height) {\n",
" fig._resize_canvas(size[0], size[1]);\n",
" fig.send_message(\"refresh\", {});\n",
" };\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_rubberband = function(fig, msg) {\n",
" var x0 = msg['x0'] / mpl.ratio;\n",
" var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
" var x1 = msg['x1'] / mpl.ratio;\n",
" var y1 = (fig.canvas.height - msg['y1']) / mpl.ratio;\n",
" x0 = Math.floor(x0) + 0.5;\n",
" y0 = Math.floor(y0) + 0.5;\n",
" x1 = Math.floor(x1) + 0.5;\n",
" y1 = Math.floor(y1) + 0.5;\n",
" var min_x = Math.min(x0, x1);\n",
" var min_y = Math.min(y0, y1);\n",
" var width = Math.abs(x1 - x0);\n",
" var height = Math.abs(y1 - y0);\n",
"\n",
" fig.rubberband_context.clearRect(\n",
" 0, 0, fig.canvas.width, fig.canvas.height);\n",
"\n",
" fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_figure_label = function(fig, msg) {\n",
" // Updates the figure title.\n",
" fig.header.textContent = msg['label'];\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_cursor = function(fig, msg) {\n",
" var cursor = msg['cursor'];\n",
" switch(cursor)\n",
" {\n",
" case 0:\n",
" cursor = 'pointer';\n",
" break;\n",
" case 1:\n",
" cursor = 'default';\n",
" break;\n",
" case 2:\n",
" cursor = 'crosshair';\n",
" break;\n",
" case 3:\n",
" cursor = 'move';\n",
" break;\n",
" }\n",
" fig.rubberband_canvas.style.cursor = cursor;\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_message = function(fig, msg) {\n",
" fig.message.textContent = msg['message'];\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_draw = function(fig, msg) {\n",
" // Request the server to send over a new figure.\n",
" fig.send_draw_message();\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_image_mode = function(fig, msg) {\n",
" fig.image_mode = msg['mode'];\n",
"}\n",
"\n",
"mpl.figure.prototype.updated_canvas_event = function() {\n",
" // Called whenever the canvas gets updated.\n",
" this.send_message(\"ack\", {});\n",
"}\n",
"\n",
"// A function to construct a web socket function for onmessage handling.\n",
"// Called in the figure constructor.\n",
"mpl.figure.prototype._make_on_message_function = function(fig) {\n",
" return function socket_on_message(evt) {\n",
" if (evt.data instanceof Blob) {\n",
" /* FIXME: We get \"Resource interpreted as Image but\n",
" * transferred with MIME type text/plain:\" errors on\n",
" * Chrome. But how to set the MIME type? It doesn't seem\n",
" * to be part of the websocket stream */\n",
" evt.data.type = \"image/png\";\n",
"\n",
" /* Free the memory for the previous frames */\n",
" if (fig.imageObj.src) {\n",
" (window.URL || window.webkitURL).revokeObjectURL(\n",
" fig.imageObj.src);\n",
" }\n",
"\n",
" fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n",
" evt.data);\n",
" fig.updated_canvas_event();\n",
" fig.waiting = false;\n",
" return;\n",
" }\n",
" else if (typeof evt.data === 'string' && evt.data.slice(0, 21) == \"data:image/png;base64\") {\n",
" fig.imageObj.src = evt.data;\n",
" fig.updated_canvas_event();\n",
" fig.waiting = false;\n",
" return;\n",
" }\n",
"\n",
" var msg = JSON.parse(evt.data);\n",
" var msg_type = msg['type'];\n",
"\n",
" // Call the \"handle_{type}\" callback, which takes\n",
" // the figure and JSON message as its only arguments.\n",
" try {\n",
" var callback = fig[\"handle_\" + msg_type];\n",
" } catch (e) {\n",
" console.log(\"No handler for the '\" + msg_type + \"' message type: \", msg);\n",
" return;\n",
" }\n",
"\n",
" if (callback) {\n",
" try {\n",
" // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n",
" callback(fig, msg);\n",
" } catch (e) {\n",
" console.log(\"Exception inside the 'handler_\" + msg_type + \"' callback:\", e, e.stack, msg);\n",
" }\n",
" }\n",
" };\n",
"}\n",
"\n",
"// from http://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n",
"mpl.findpos = function(e) {\n",
" //this section is from http://www.quirksmode.org/js/events_properties.html\n",
" var targ;\n",
" if (!e)\n",
" e = window.event;\n",
" if (e.target)\n",
" targ = e.target;\n",
" else if (e.srcElement)\n",
" targ = e.srcElement;\n",
" if (targ.nodeType == 3) // defeat Safari bug\n",
" targ = targ.parentNode;\n",
"\n",
" // jQuery normalizes the pageX and pageY\n",
" // pageX,Y are the mouse positions relative to the document\n",
" // offset() returns the position of the element relative to the document\n",
" var x = e.pageX - $(targ).offset().left;\n",
" var y = e.pageY - $(targ).offset().top;\n",
"\n",
" return {\"x\": x, \"y\": y};\n",
"};\n",
"\n",
"/*\n",
" * return a copy of an object with only non-object keys\n",
" * we need this to avoid circular references\n",
" * http://stackoverflow.com/a/24161582/3208463\n",
" */\n",
"function simpleKeys (original) {\n",
" return Object.keys(original).reduce(function (obj, key) {\n",
" if (typeof original[key] !== 'object')\n",
" obj[key] = original[key]\n",
" return obj;\n",
" }, {});\n",
"}\n",
"\n",
"mpl.figure.prototype.mouse_event = function(event, name) {\n",
" var canvas_pos = mpl.findpos(event)\n",
"\n",
" if (name === 'button_press')\n",
" {\n",
" this.canvas.focus();\n",
" this.canvas_div.focus();\n",
" }\n",
"\n",
" var x = canvas_pos.x * mpl.ratio;\n",
" var y = canvas_pos.y * mpl.ratio;\n",
"\n",
" this.send_message(name, {x: x, y: y, button: event.button,\n",
" step: event.step,\n",
" guiEvent: simpleKeys(event)});\n",
"\n",
" /* This prevents the web browser from automatically changing to\n",
" * the text insertion cursor when the button is pressed. We want\n",
" * to control all of the cursor setting manually through the\n",
" * 'cursor' event from matplotlib */\n",
" event.preventDefault();\n",
" return false;\n",
"}\n",
"\n",
"mpl.figure.prototype._key_event_extra = function(event, name) {\n",
" // Handle any extra behaviour associated with a key event\n",
"}\n",
"\n",
"mpl.figure.prototype.key_event = function(event, name) {\n",
"\n",
" // Prevent repeat events\n",
" if (name == 'key_press')\n",
" {\n",
" if (event.which === this._key)\n",
" return;\n",
" else\n",
" this._key = event.which;\n",
" }\n",
" if (name == 'key_release')\n",
" this._key = null;\n",
"\n",
" var value = '';\n",
" if (event.ctrlKey && event.which != 17)\n",
" value += \"ctrl+\";\n",
" if (event.altKey && event.which != 18)\n",
" value += \"alt+\";\n",
" if (event.shiftKey && event.which != 16)\n",
" value += \"shift+\";\n",
"\n",
" value += 'k';\n",
" value += event.which.toString();\n",
"\n",
" this._key_event_extra(event, name);\n",
"\n",
" this.send_message(name, {key: value,\n",
" guiEvent: simpleKeys(event)});\n",
" return false;\n",
"}\n",
"\n",
"mpl.figure.prototype.toolbar_button_onclick = function(name) {\n",
" if (name == 'download') {\n",
" this.handle_save(this, null);\n",
" } else {\n",
" this.send_message(\"toolbar_button\", {name: name});\n",
" }\n",
"};\n",
"\n",
"mpl.figure.prototype.toolbar_button_onmouseover = function(tooltip) {\n",
" this.message.textContent = tooltip;\n",
"};\n",
"mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Pan axes with left mouse, zoom with right\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
"\n",
"mpl.extensions = [\"eps\", \"jpeg\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n",
"\n",
"mpl.default_extension = \"png\";var comm_websocket_adapter = function(comm) {\n",
" // Create a \"websocket\"-like object which calls the given IPython comm\n",
" // object with the appropriate methods. Currently this is a non binary\n",
" // socket, so there is still some room for performance tuning.\n",
" var ws = {};\n",
"\n",
" ws.close = function() {\n",
" comm.close()\n",
" };\n",
" ws.send = function(m) {\n",
" //console.log('sending', m);\n",
" comm.send(m);\n",
" };\n",
" // Register the callback with on_msg.\n",
" comm.on_msg(function(msg) {\n",
" //console.log('receiving', msg['content']['data'], msg);\n",
" // Pass the mpl event to the overriden (by mpl) onmessage function.\n",
" ws.onmessage(msg['content']['data'])\n",
" });\n",
" return ws;\n",
"}\n",
"\n",
"mpl.mpl_figure_comm = function(comm, msg) {\n",
" // This is the function which gets called when the mpl process\n",
" // starts-up an IPython Comm through the \"matplotlib\" channel.\n",
"\n",
" var id = msg.content.data.id;\n",
" // Get hold of the div created by the display call when the Comm\n",
" // socket was opened in Python.\n",
" var element = $(\"#\" + id);\n",
" var ws_proxy = comm_websocket_adapter(comm)\n",
"\n",
" function ondownload(figure, format) {\n",
" window.open(figure.imageObj.src);\n",
" }\n",
"\n",
" var fig = new mpl.figure(id, ws_proxy,\n",
" ondownload,\n",
" element.get(0));\n",
"\n",
" // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n",
" // web socket which is closed, not our websocket->open comm proxy.\n",
" ws_proxy.onopen();\n",
"\n",
" fig.parent_element = element.get(0);\n",
" fig.cell_info = mpl.find_output_cell(\"<div id='\" + id + \"'></div>\");\n",
" if (!fig.cell_info) {\n",
" console.error(\"Failed to find cell for figure\", id, fig);\n",
" return;\n",
" }\n",
"\n",
" var output_index = fig.cell_info[2]\n",
" var cell = fig.cell_info[0];\n",
"\n",
"};\n",
"\n",
"mpl.figure.prototype.handle_close = function(fig, msg) {\n",
" var width = fig.canvas.width/mpl.ratio\n",
" fig.root.unbind('remove')\n",
"\n",
" // Update the output cell to use the data from the current canvas.\n",
" fig.push_to_output();\n",
" var dataURL = fig.canvas.toDataURL();\n",
" // Re-enable the keyboard manager in IPython - without this line, in FF,\n",
" // the notebook keyboard shortcuts fail.\n",
" IPython.keyboard_manager.enable()\n",
" $(fig.parent_element).html('<img src=\"' + dataURL + '\" width=\"' + width + '\">');\n",
" fig.close_ws(fig, msg);\n",
"}\n",
"\n",
"mpl.figure.prototype.close_ws = function(fig, msg){\n",
" fig.send_message('closing', msg);\n",
" // fig.ws.close()\n",
"}\n",
"\n",
"mpl.figure.prototype.push_to_output = function(remove_interactive) {\n",
" // Turn the data on the canvas into data in the output cell.\n",
" var width = this.canvas.width/mpl.ratio\n",
" var dataURL = this.canvas.toDataURL();\n",
" this.cell_info[1]['text/html'] = '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\n",
"}\n",
"\n",
"mpl.figure.prototype.updated_canvas_event = function() {\n",
" // Tell IPython that the notebook contents must change.\n",
" IPython.notebook.set_dirty(true);\n",
" this.send_message(\"ack\", {});\n",
" var fig = this;\n",
" // Wait a second, then push the new image to the DOM so\n",
" // that it is saved nicely (might be nice to debounce this).\n",
" setTimeout(function () { fig.push_to_output() }, 1000);\n",
"}\n",
"\n",
"mpl.figure.prototype._init_toolbar = function() {\n",
" var fig = this;\n",
"\n",
" var nav_element = $('<div/>')\n",
" nav_element.attr('style', 'width: 100%');\n",
" this.root.append(nav_element);\n",
"\n",
" // Define a callback function for later on.\n",
" function toolbar_event(event) {\n",
" return fig.toolbar_button_onclick(event['data']);\n",
" }\n",
" function toolbar_mouse_event(event) {\n",
" return fig.toolbar_button_onmouseover(event['data']);\n",
" }\n",
"\n",
" for(var toolbar_ind in mpl.toolbar_items){\n",
" var name = mpl.toolbar_items[toolbar_ind][0];\n",
" var tooltip = mpl.toolbar_items[toolbar_ind][1];\n",
" var image = mpl.toolbar_items[toolbar_ind][2];\n",
" var method_name = mpl.toolbar_items[toolbar_ind][3];\n",
"\n",
" if (!name) { continue; };\n",
"\n",
" var button = $('<button class=\"btn btn-default\" href=\"#\" title=\"' + name + '\"><i class=\"fa ' + image + ' fa-lg\"></i></button>');\n",
" button.click(method_name, toolbar_event);\n",
" button.mouseover(tooltip, toolbar_mouse_event);\n",
" nav_element.append(button);\n",
" }\n",
"\n",
" // Add the status bar.\n",
" var status_bar = $('<span class=\"mpl-message\" style=\"text-align:right; float: right;\"/>');\n",
" nav_element.append(status_bar);\n",
" this.message = status_bar[0];\n",
"\n",
" // Add the close button to the window.\n",
" var buttongrp = $('<div class=\"btn-group inline pull-right\"></div>');\n",
" var button = $('<button class=\"btn btn-mini btn-primary\" href=\"#\" title=\"Stop Interaction\"><i class=\"fa fa-power-off icon-remove icon-large\"></i></button>');\n",
" button.click(function (evt) { fig.handle_close(fig, {}); } );\n",
" button.mouseover('Stop Interaction', toolbar_mouse_event);\n",
" buttongrp.append(button);\n",
" var titlebar = this.root.find($('.ui-dialog-titlebar'));\n",
" titlebar.prepend(buttongrp);\n",
"}\n",
"\n",
"mpl.figure.prototype._root_extra_style = function(el){\n",
" var fig = this\n",
" el.on(\"remove\", function(){\n",
"\tfig.close_ws(fig, {});\n",
" });\n",
"}\n",
"\n",
"mpl.figure.prototype._canvas_extra_style = function(el){\n",
" // this is important to make the div 'focusable\n",
" el.attr('tabindex', 0)\n",
" // reach out to IPython and tell the keyboard manager to turn it's self\n",
" // off when our div gets focus\n",
"\n",
" // location in version 3\n",
" if (IPython.notebook.keyboard_manager) {\n",
" IPython.notebook.keyboard_manager.register_events(el);\n",
" }\n",
" else {\n",
" // location in version 2\n",
" IPython.keyboard_manager.register_events(el);\n",
" }\n",
"\n",
"}\n",
"\n",
"mpl.figure.prototype._key_event_extra = function(event, name) {\n",
" var manager = IPython.notebook.keyboard_manager;\n",
" if (!manager)\n",
" manager = IPython.keyboard_manager;\n",
"\n",
" // Check for shift+enter\n",
" if (event.shiftKey && event.which == 13) {\n",
" this.canvas_div.blur();\n",
" // select the cell after this one\n",
" var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n",
" IPython.notebook.select(index + 1);\n",
" }\n",
"}\n",
"\n",
"mpl.figure.prototype.handle_save = function(fig, msg) {\n",
" fig.ondownload(fig, null);\n",
"}\n",
"\n",
"\n",
"mpl.find_output_cell = function(html_output) {\n",
" // Return the cell and output element which can be found *uniquely* in the notebook.\n",
" // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n",
" // IPython event is triggered only after the cells have been serialised, which for\n",
" // our purposes (turning an active figure into a static one), is too late.\n",
" var cells = IPython.notebook.get_cells();\n",
" var ncells = cells.length;\n",
" for (var i=0; i<ncells; i++) {\n",
" var cell = cells[i];\n",
" if (cell.cell_type === 'code'){\n",
" for (var j=0; j<cell.output_area.outputs.length; j++) {\n",
" var data = cell.output_area.outputs[j];\n",
" if (data.data) {\n",
" // IPython >= 3 moved mimebundle to data attribute of output\n",
" data = data.data;\n",
" }\n",
" if (data['text/html'] == html_output) {\n",
" return [cell, data, j];\n",
" }\n",
" }\n",
" }\n",
" }\n",
"}\n",
"\n",
"// Register the function which deals with the matplotlib target/channel.\n",
"// The kernel may be null if the page has been refreshed.\n",
"if (IPython.notebook.kernel != null) {\n",
" IPython.notebook.kernel.comm_manager.register_target('matplotlib', mpl.mpl_figure_comm);\n",
"}\n"
],
"text/plain": [
"<IPython.core.display.Javascript object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABQAAAAPACAYAAABq3NR5AAAAAXNSR0IArs4c6QAAQABJREFUeAHs3Qm8HUWZOOwKBMImouwQBJVVFlE2EVkcHVRQxEEQxBlRUJzBGVHwDygq6rggCPihjDggQXCURTZZFJRFRkEQcBBBFhFNkE32fc33vs3pa+fknHvuDTfn5CZP/X5vuruquqr7OTgTXqq7S1EIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIzEMCE+ahe3Wrc5bApLicdVuXdE9sn52zLs/VECBAgAABAgQIECBAgACBuUJg/riLpVt38rvYPjlX3JWbGJXAxFH11pnA2Alk8u/KsRvOSAQIECBAgAABAgQIECBAgEAPgY2i/Tc9+mieCwXmmwvvyS0RIECAAAECBAgQIECAAAECBAgQINASsALQPwqDEsjHfqtyxRVXlOWXX74+tCVAgAABAgQIECBAgAABAgTGSOCOO+4oG2+8cT3a0L+L1xW284aABOC88TvPiXc59M6/TP5Nnjx5TrxG10SAAAECBAgQIECAAAECBOYmgaF/F5+bbsq99BbwCHBvIz0IECBAgAABAgQIECBAgAABAgQIjFsBCcBx+9O5cAIECBAgQIAAAQIECBAgQIAAAQK9BSQAexvpQYAAAQIECBAgQIAAAQIECBAgQGDcCkgAjtufzoUTIECAAAECBAgQIECAAAECBAgQ6C0gAdjbSA8CBAgQIECAAAECBAgQIECAAAEC41ZAAnDc/nQunAABAgQIECBAgAABAgQIECBAgEBvAQnA3kZ6ECBAgAABAgQIECBAgAABAgQIEBi3AhKA4/anc+EECBAgQIAAAQIECBAgQIAAAQIEegtIAPY20oMAAQIECBAgQIAAAQIECBAgQIDAuBWQABy3P50LJ0CAAAECBAgQIECAAAECBAgQINBbQAKwt5EeBAgQIECAAAECBAgQIECAAAECBMatgATguP3pXDgBAgQIECBAgAABAgQIECBAgACB3gISgL2N9CBAgAABAgQIECBAgAABAgQIECAwbgUkAMftT+fCCRAgQIAAAQIECBAgQIAAAQIECPQWkADsbaQHAQIECBAgQIAAAQIECBAgQIAAgXErIAE4bn86F06AAAECBAgQIECAAAECBAgQIECgt4AEYG8jPQgQIECAAAECBAgQIECAAAECBAiMWwEJwHH707lwAgQIECBAgAABAgQIECBAgAABAr0FJAB7G+lBgAABAgQIECBAgAABAgQIECBAYNwKSACO25/OhRMgQIAAAQIECBAgQIAAAQIECBDoLSAB2NtIDwIECBAgQIAAAQIECBAgQIAAAQLjVkACcNz+dC6cAAECBAgQIECAAAECBAgQIECAQG8BCcDeRnoQIECAAAECBAgQIECAAAECBAgQGLcCEoDj9qdz4QQIECBAgAABAgQIECBAgAABAgR6C0gA9jbS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BAgQIDAXC0gAzsU/rlsjQIAAAQIECBAgQIAAAQIECBAgIAHonwECBAgQIECAAAECBAgQIECAAAECc7GABOBc/OO6NQIECBAgQIAAAQIECBAgQIAAAQISgP4ZIECAAAECBAgQIECAAAECBAgQIDAXC0gAzsU/rlsjQIAAAQIECBAgQIAAAQIECBAgIAHonwECBAgQIECAAAECBAgQIECAAAECc7GABOBc/OO6NQIECBAgQIAAAQIECBAgQIAAAQISgP4ZIECAAAECBAgQIECAAAECBAgQIDAXC0gAzsU/rlsjQIAAAQIECBAgQIAAAQIECBAgIAHonwECBAgQIECAAAECBAgQIECAAAECc7GABOBc/OO6NQIECBAgQIAAAQIECBAgQIAAAQISgP4ZIECAAAECBAgQIECAAAECBAgQIDAXC0gAzsU/rlsjQIAAAQIECBAgQIAAAQIECBAgIAHonwECBAgQIECAAAECBAgQIECAAAECc7GABOBc/OO6NQIECBAgQIAAAQIECBAgQIAAAQISgP4ZIECAAAECBAgQIECAAAECBAgQIDAXC0gAzsU/rlsjQIAAAQIECBAgQIAAAQIECBAgIAHonwECBAgQIECAAAECBAjMgsCUKVPKhAkTqrjttttmYYThT9ltt92qsVdZZZWOHbM+589+Y11m59hjfa3GI0CAAIHeAhKAvY30IECAAAECBAgQIECAAAECBAgQIDBuBSQAx+1P58IJECBAgAABAgQIECBAgAABAgQI9BaY2LuLHgQIECBAgAABAgQIECAwpwnMjseO63ucnWPXc9gSIECAQP8ErADsn7WZCBAgQIAAAQIECBAgQIAAAQIECPRdQAKw7+QmJECAAAECBAgQIECAAAECBAgQINA/AQnA/lmbiQABAgQIECBAgACBcSRw//33l/3337+sueaaZeGFFy7LLLNMefOb31xOOeWUEd/FM888U4499tiyzTbblBVWWKFMmjSpLLXUUmWLLbYoRxxxRHniiSdGPFZ7x5F+qTcf591vv/3KBhtsUJZccsmy0EILlZe//OXljW98Y/n6179e/vKXv7QPXUY69o9//OPy7ne/u0yePLm6txx/0003LV/96lfLI488MtO4dcVBBx009AXluq7T9uKLLx7ql/udylVXXVV23333svrqq5dFF120ur+VVlqput+99tqrnHXWWWX69OmdTlVHgACBeUbAOwDnmZ/ajRIgQIAAAQIECBAgMFKBG264oUr2/fWvfx06JZN1P//5z6v4wAc+UCXxhho77Pzxj38s2223Xbn++utnaL333nvLpZdeWsVRRx1VzjnnnLLaaqvN0GesDg499NDyqU99qjz99NMzDJlJwYxMqmUSr1tybYaTGgdp8d73vrecfvrpjdpS7rvvvnL55ZdXceSRR1b3tv7668/QZywPDj/88LLvvvuW5557boZhp02bVjKuvvrqksYPP/xwWWyxxWbo44AAAQLzkoAE4Lz0a7tXAgQIECBAgAABAgR6Cjz00EPlLW95S6mTf+95z3vK+9///moF4E033VQOO+ywctxxx5Xrrruu61h33HFH2Wyzzcpdd91VrYz70Ic+VLbccstqZV2ujDv//PPLN77xjXLzzTeXt771rVWi6sUvfnHX8Wal4Ytf/GL57Gc/W526xBJLlH/7t3+rVv3lKr0HHnigmvO0006rVtiNdvz0qJN/r371q8s+++xT1lprrSoB+MMf/rBMmTKl8nvTm95Urr322rLiiiuOdoqe/XPcOvmXKxo/+tGPlkw2vvSlL60SfjfeeGO56KKLyplnntlzLB0IECAwtwtIAM7tv7D7I0CAAAECBAgQIEBgVAKZOJs6dWp1zpe//OVywAEHDJ2fj9HmI69vf/vbqyTeUEPbzoc//OEq+bfyyitXSahMUDXLVlttVXbcccey+eabl1tvvbV87WtfK1/60peaXV7Q/jXXXFPyMdss+WhsrlzMx3SbJR8BzsRdfa/NtuH2c8XiySefXHXJBN+5555bFlxwwaFTtt566+ox4DTIFYGf+MQnykknnTTUPlY7p556arXyLx/7veyyy8qyyy47w9Bpu8cee5QHH3ywLLLIIjO0OSBAgMC8JuAdgPPaL+5+CRAgQIAAAQIECBDoKvDUU0+V7373u1X7euutV707r73zAgssUL3XL7edSq4MPPvss6umb37zm9X79jr1e81rXlPyHXVZcsXcWJZDDjmkSo5NmDCh5Iq89uRfc658X95oyre+9a2qe95/roRsJv/qcXLFY74vMUuuMswVkWNd7rzzzmrITHC2J/+ac+XKyvnm86++TRP7BAjMewL+r+C895u7YwIECBAgQIAAAQIEugjkByVy1VqWfMy1W+IoE2q50q1TqR85zVVnb3vb2zp1GarLj4FkyceNO32MY6jjKHbyfXjnnXdedUauNMxE41iV/KjJJZdcUg2X9z9c8jCTgFnynNG+Y7A6sccfyy+/fNUj37F4xRVX9OitmQABAvO2gATgvP37u3sCBAgQIECAAAEC87zAw088XW6+6+Hy26kPlJ/98sohj4022mhov9POxhtv3Km6/OY3v6nqH3vssTJx4sShr9jmarz2yEeJ61KvaKuPZ3X7pz/9qXrHX56fj8GOZcnHlfO+smyyySbDDt1sH+59icMOMkzjLrvsUnIV4pNPPlm9b/Ed73hH+fa3v129m9FXf4eB00SAwDwp4B2A8+TP7qYJECBAgAABAgQIzNsCmSC67NZ7ywmX/bmcf/1d5dnnplcgD15+9RDMtCcWKNkvk3adSrfHTu++++5O3XvW1Ym1nh17dPjb3/421KNeJTdU8QJ36tWROcwyyywz7GjLLbfcUHvzvKHKF7iz5pprlh/84AclVxref//91WPX9aPXSy21VPVxlXwP4VgnQV/gZTudAAECAxGQABwIu0kJECBAgAABAgQIEBiUwHW3P1g+cfJvy013PTLzJUTCry77nnJtOe66J8thO61f1llx5i/0dltl9uyzz1ZD5Ic/zjrrrHq4ntv2D4X0PGEEHbolL0dwas8us3PsnpO3Ouywww7VuwbzIyM//elPy6WXXlruueeekknQE088sYp8lDvf69jtce6RzqUfAQIExrOABOB4/vVcOwECBAgQIECAAAECoxK49OZ7yp4nXFUee+r5JF37yfMt/KKhqmcfvb9KEu509GXl6H/eoGy+2tJDbbnTbaXfkksuWfW76667Sq5Sy8eA+1ly9Vtd8t2CY1le+tKXDg2X9zdcaT7S3Dwvz2km4/Kdhc3j5piPPvpo87Djfn7kI1f6ZWS54YYbSr6H8cgjj6zerXj88cdX70H82Mc+1vF8lQQIEJgXBLwDcF74ld0jAQIECBAgQIAAAQIlV/4Nl/xLogWWWmVI6qk7bq72M1mY5+X5zXLllX9/X2Czvv7oRj7S+8tf/rLZ1Jf9XEn4kpe8pJrrF7/4xZjO+YpXvKLkx02y/PrXvx527OaHOdZZZ50Z+r7oRX9PtObju93KTTfd1K2pa/1aa61V9t9//3L55ZeXRRddtOp38sknd+2vgQABAvOCgATgvPAru0cCBAgQIECAAAEC87hAPq6bj/12W/lX80xabtUy30KLVYeP/P6i6h2AeZDn7XPy/w0d33777eX888+vT5th+853vnPo+OCDDx7a79dOrqbbZpttqunyi73XXHPNmE2dqxm33HLLarwLLrigTJs2revYxxxzTNU2//zzl/wacbM0H3euP5rSbK/3f/jDH9a7o97mF4pXX3316rzmexFHPZATCBAgMBcISADOBT+iWyBAgAABAgQIECBAYHiB/OBHx3f+tZ02YeICZdF131zVPn33reWhK3401OPG+FLw5bfeV5555pnqwxNPPfXUUFtzJ78evPXWW1dV5513XjnwwAObzTPt33bbbdXHLGZqeAEV++67b/VYbSY+d95552ETdcMl8Tpdwl577VVV5/3vvvvu5emnn56pW75zr06Q5nv62j9Gstlmmw09Gn344YcPJVabAx1yyCGluYqw2Zb7Z5xxxtDXjtvb8njq1KnlD3/4Q9XUTDh26quOAAECc7tAf19GMbdruj8CBAgQIECAAAECBOZIgRMv//OIr2uJzXYpj/3hf8uzD/+tPHDxlPLUXX8qi63zD2W+RV5cPnf4teWBK04v+fjvhhtuWLqtXjvuuOOq9jvuuKN86UtfKrla7oMf/GBZb731ykILLVTuvffecu2115af/OQn5cILLyzbb7992WWXXUZ8jb06rr/++uXzn/98+cxnPlPyMdp11123ZOLujW98Y8l3FD7wwAPlt7/9bTnttNNKrtC76KKLeg051L7tttuWHXfcsZxyyilVku91r3td+cQnPlG97zAf581Ve5kAzJLv/jvssMOGzq13ll566fLud7+76psf79huu+2q68svK//lL38pJ5xwQvnRj35UXv/615df/epX9WkzbI844oiy6667lryef/iHfyj56G++DzCvIX+XfAfg448/Xp3zkY98ZIZzHRAgQGBeE5AAnNd+cfdLgAABAgQIECBAYB4TePiJp8tPfz/8ByuaJPNNWrQss+Pny90nHVjyQyCP3XBJFdnnzlbH/LJsPgqbSb1OZYUVViiXXXZZlSjLZGGuZBtuNdviiy/eaZgXVJcrDzO599nPfrZK+GUiMqO91I/0ttcPd/y9732vWgl5+umnl6uvvrq8733vm6l7GpxzzjllxRVXnKktKzKBd9VVV5Wbb765nH322VU0O+bKxT322KP6ym+zvrmf71nMRGRGp5KPQ2ciNBOsCgECBOZlAY8Az8u/vnsnQIAAAQIECBAgMA8I3PngE+XZ56aP6k4XXHrlsvzuR5XFN9mhTHzJCqXMv0CZb+HFy6SXrVcO+69jy5QpU8qECROGHXPllVeuPpSRSbJMZuVjqPkBjQUWWKDkCrhc3bbPPvuUfE/fscceO+xYs9p4wAEHlOuvv77svffeJT/EkYnGXIGYH/N405veVCXhZuU9ezlGrh4866yzyj/90z+VTPYtuOCC1cdHNtlkk/KVr3yl3HjjjSVXInYrudovPySy3377ldVWW61MmjSpWjG4xRZblBNPPLF6LDoTmN1Kftjj+9//ftltt92qeZZbbrnqseLFFlusrL322uVf//Vfq/cf9noEu9v46gkQIDA3CQz//7Hmpjt1L3OawOS4oKl5UflujsmT81AhQIAAAQIECBAgMPYCv536QNn+W2P3Nd4z9tqsrL/SEmN/oUYkQIDAbBDI93zmR3FaJXe6f72n7mU71wlYATjX/aRuiAABAgQIECBAgACBpsCiC3ZfRdbsN9L9xSaN7XgjnVc/AgQIECAwqwISgLMq5zwCBAgQIECAAAECBMaFwHIvXqjMP9/YPPw0McZZdvGFxsV9u0gCBAgQIFALSADWErYECBAgQIAAAQIECMyVAi9aaIHylrWXHZN7e8vay5UcTyFAgAABAuNJQAJwPP1arpUAAQIECBAgQIAAgVkSeN/rVp6l89pPGqtx2sd1TIAAAQIEZqeABODs1DU2AQIECBAgQIAAAQJzhMCmr1iyrL7sYi/oWtZY9kXlda946Qsaw8kECBAgQGAQAhKAg1A3JwECBAgQIECAAAECfRWYMGFCOWyn9csis/hBkDzv6zu9uuQ4CgECBAgQGG8CEoDj7RdzvQQIECBAgAABAgQIzJLAOiu+uBz9zxuMOgmYyb88L89XCBAgQIDAeBSQAByPv5prJkCAAAECBAgQIEBglgQ2X23pcvKem474ceB87Df753kKAQIECBAYrwITx+uFu24CBAgQIECAAAECBAjMikCu5Pvp3luUy2+9r5xw+W3lp7+/qzz73PShoSbONyG+GrxcyQ9+5Dv/PPY7RGOHAAECBMapgATgOP3hXDYBAgQIECBAgAABArMukEm9TV+5ZBUPP/F0ueuhJ8ojTz5bFps0f1l28YXKixZaYNYHdyYBAgQIEJjDBCQA57AfxOUQIECAAAECBAgQINBfgUz2Sfj119xsBAgQINBfAe8A7K+32QgQIECAAAECBAgQIECAAAECBAj0VUACsK/cJiNAgAABAgQIECBAgAABAgQIECDQXwEJwP56m40AAQIECBAgQIAAAQIECBAgQIBAXwUkAPvKbTICBAgQIECAAAECBAgQIECAAAEC/RWQAOyvt9kIECBAgAABAgQIECBAgAABAgQI9FVAArCv3CYjQIAAAQIECBAgQIAAAQIECBAg0F8BCcD+epuNAAECBAgQIECAAAECBAgQIECAQF8FJAD7ym0yAgQIECBAgAABAgQIECBAgAABAv0VkADsr7fZCBAgQIAAAQIECBAgQIAAAQIECPRVQAKwr9wmI0CAAAECBAgQIECAAAECBAgQINBfAQnA/nqbjQABAgQIECBAgAABAgQIECBAgEBfBSQA+8ptMgIECBAgQIAAAQIECBAgQIAAAQL9FZAA7K+32QgQIECAAAECBAgQIECAAAECBAj0VUACsK/cJiNAgAABAgQIECBAgAABAgQIECDQXwEJwP56m40AAQIECBAgQIAAAQIECBAgQIBAXwUkAPvKbTICBAgQIECAAAECBAgQIECAAAEC/RWQAOyvt9kIECBAgAABAgQIECBAgAABAgQI9FVAArCv3CYjQIAAAQIECBAgQIAAAQIECBAg0F8BCcD+epuNAAECBAgQIECAAAECBAgQIECAQF8FJAD7ym0yAgQIECBAgAABAgQIECBAgAABAv0VkADsr7fZCBAgQIAAAQIECBAgQIAAAQIECPRVQAKwr9wmI0CAAAECBAgQIECAAAECBAgQINBfAQnA/nqbjQABAgQIECBAgAABAgQIECBAgEBfBSQA+8ptMgIECBAgQIAAAQIECBAgQIAAAQL9FZAA7K+32QgQIECAAAECBAgQIECAAAECBAj0VUACsK/cJiNAgAABAgQIECBAgAABAgQIECDQXwEJwP56m40AAQIECBAgQIAAAQIECBAgQIBAXwUkAPvKbTICBAgQIECAAAECBAgQIECAAAEC/RWQAOyvt9kIECBAgAABAgQIECBAgAABAgQI9FVAArCv3CYjQIAAAQIECBAgQIAAAQIECBAg0F8BCcD+epuNAAECBAgQIECAAAECBAgQIECAQF8FJAD7ym0yAgQIECBAgAABAgQIECBAgAABAv0VkADsr7fZCBAgQIAAAQIECBAgQIAAAQIECPRVYNAJwJXjbr8e8YeIRyPui7gy4pMRi0SMVXlbDHR6xLSIJ1vbPM76kZaJ0fEjEZdG3BPxeMQfI46OWDtipGWp6PiFiGsjHmpF7mfdkhHDlfy9toj4csTFEXdGPBWR41wXcVTEehGjKbtE5/MjcqwnIv4ccWLEphEKAQIECBAgQIAAAQIECBAgQIDAOBeYMMDrf0fMnYmmxbtcw01Rv23ELV3aR1KdCbPvROw+TOdjom3PiOeG6ZNJu3MjNurSJ5OKH43IsYYrm0TjGRHLdel0R9RvH3FFl/a/RP1KXdrq6ryPQyP2j5heV3bYLhx1p0Zs06Etq3KcTEp+Pg9mQ5kcY07NcadOnVomT85DhQABAgQIECBAgAABAgQIEBhLgWnTppWVVhpKJeROLo5S5jGBTJANorwmJj0pIpN/j0R8OuL1EW+K+O+ILKtHnBPxojyYxfKlOK9O/l0T+7nabePWNo+z7BHxn9Ve5z/mj+pcLVgn/06L/Vw5mMm8/4i4O2JSxNERw60ozP+R/Tgik3/PRHwtIlfzZeR+1i0fkX26ZcNWiLYst0QcHLFdxIYRm0d8NuL+iPxN/19E3vtw5bvRWCf/Lor9TDymTXr9MSLHOSjiwxEKAQIECBAgQIAAAQIECBAgQIDAOBUY1ArAS8IrE1+Z9MrtZRHNko8AZ1IsS65AOyh3Rlkygfj7iIkRv4nIefKx3bosEjt5HZlAy+t4VcTNEe3lg1FxbKvyqNju1dZh1Ti+KiKTmZmYWysix2sv34uKf25V7hTbU9o67BjHJ7fqjo/tbq395uZXcZAe50d0Wt33yqhPy6Uj8hrWiLg1or28MSoubFVmwvFdEc+2jnOTKx7znl4W8UDEKyIyuTiWZXIMNjUHtAJwLFmNRYAAAQIECBAgQIAAAQIE/i5gBeDfLeblvVzl1e+Sq8wyGZclE2vtyb+s/3rEDbkT5WMRC1R7o/tj7+ieyb8s/x7RTP5l3WOt+tzPftm/U9m3VZkJsExMtpdM+n2lVZnJwEymtZdc9bdrq/KnsW1P/mVT1mVblkwUdnpMOFdJZp9Oyb+orlbufSF3ouQ95aq+TqW+j0z6/VtEM/mX/f8WsV/uRFkiYo9qzx8ECBAgQIAAAQIECBAgQIAAAQLjTmAQCcBmUuq4LmLPRf33Wm2ZgMoVa6MpE6LzO1sn/CG2l3c5OetvbLVl/zyvWXIVYa7oy3JSRCYNO5UpjcpOCcB8VLe27nbPOcSU/CNK9s1zZqVc1DgpVwS2lxdFxZtalRfEdlp7h9bxabHNj4tk6XRPz7f4kwABAgQIECBAgAABAgQIECBAYI4WqJNS/bzIN7QmezS2+Zhpt3JJo2Gzxv5Idl8ener35TXH6XRu3b5iNK7S1qG+1qyu+7V1qQ7zC7o3tRo6XetIx2nO0WmcTnO3101qVLSv7MumjSIWbPVpzteqGto8FXt14rR5zlAHOwQIECBAgAABAgQIECBAgAABAnO+wCASgPWKunx09plhiHLlXl3qc+rjXtt8n19dmuPUdc1ts719nlkZZ6UYfNHmBLFfj/Ng7GeysFu5IxrqVXft19LtnPb6LRsV9WPUjaqha8m65r03+9T7dXs+TrxqXWlLgAABAgQIECBAgAABAgQIECAwfgQysdPPslBMlh+YyNLt0dPnW5//6ESuEsxkWibVRlMmNzr3mqf6EEWrf/s8szLOhBgrz6sfLc6h63F6XUv2zetZO6L9WrKtV1kkOuzd6vRkbM/scEJ9LdnU63raba7vMF63quY8nfos16lSHQECBAgQIECAAAECBAgQIECAwNgKTBzb4XqOlu+fq8sj9c4w2zoBuNgwfTo1jWaenKMu7fOM9Tgjvee8nvZrqa9xuO3B0Zhf7s3yrYi/Vnsz/jFW9zTjqDMfNZOHM7eqIUCAAAECBAgQIECAAAECBAgQ6ItAvx8BzhWAdcl3zPUquYoty8LPb0b852jmqefoNM9YjzM773nXuIGPtoTy0d8DW/vtm7G6p/ZxHRMgQIAAAQIECBAgQIAAAQIECMyBAv1eAfhEw6D+EEWjaqbd+oMWj8/UMnzFaOap58gR2+dpH6d53H4FvcbJx3Nn1z1vFWMf27qg+2K7Q0T7vbSaS/Meel3PcPdUj9dt2+sR5uXixCu7nayeAAECBAgQIECAAAECBAgQIEBgbAT6nQB8uHHZI3nEtf6YxkgenW0MXUYzTz1Hnt8+T/s4zeRZc77c7zVOJgBnxz1vGOOeFZHJunyceZuIXAHYrbTfU7d+WT/cPQ13Xrb1er9gr/O1EyBAgAABAgQIECBAgAABAgQIjIFAvx8BzgTa31rX3esjES+JfnUCarTvk2smn3rN01yp1j7PrIwzPa67eV7ebn3c61qyb3097deSbe1l7aj4SUS+1y8fZd4+4tcRw5X6WrJPr+upryX7juR6sp9CgAABAgQIECBAgAABAgQIECAwBwn0OwGYt16vTls19icOY7Fmo60+p1E17G7za7XNcTqd1Gxvn2dWxslEWfPDIjlnPc6LYz8ffe1Wlo+GxVuN7dfSfs4ro+KCiCUjnol4T8TPInqV+lqyX/PeO51Xt+f4t3TqoI4AAQIECBAgQIAAAQIECBAgQGDOFhhEAvB/WyS5um+DYXi2bLT9srE/kt0/Raf6C7jNcTqdu0Wr8vbY3tbWob7WrB5unEzqrd46t9O1jnSc5hydxmlNUa3c+3kcZMLwuYj3R5wZMZJyZXSqP0bSnK/93Hw/4Otalc1z2vs5JkCAAAECBAgQIECAAAECBAgQmIMFBpEAPKPh8YHGfnM3r+tfWhUPxPaiZuMI9qdHnzohlqvY6kRW+6lZX69yy/55XrPcFAf1SrydYj/f49ep7NaoPL2xX+/mO/oyUZel2z1n2275R5Tsm+d0KstEZa70W7nV+JHY/k9rfySbfAdgJg+zvDlicrU38x//FFX1asRO9zTzGWoIECBAgAABAgQIECBAgAABAgTmOIFBJACvCIVLWxK7x3bTDir7RN1arfpvxPbptj5bxXEm6zKmRHQqR0RlPrqa5ciIhau9v/+Rx1mfJftl/07l0FblS2P7tQ4d8lHcA1r1f4xtp2TZnVH//Vaft8T23a395mbHOMi2LCdE5DntZYmo+GnEGq2Gj8f2v1v7o9nU9zQxTvpWxPxtJy8Vxwe36jIBe0xbu0MCBAgQIECAAAECBAgQIECAAIFxIpAJoEGUj8Wk+YhrJuHOj/hyxEWt451j++GILLkC7+vV3uj/yHMz0bV/RH4pN+fLpFYm6TJpt1/EayKyHBJxc7U38x/HR9UHIzaL2CtiuYhMut0fsXHEZyJypVyu2vv3iDrpGLszlE/H0Vsjlo74QURe09kRWd4ekUnPLPdEHFjtzfjHpDg8J2L9VnUmFH8WsU7ruNPm0aj8U4eGC6PuhxFpvV3EBRGZAP1rxLoRea0vi8iSfnmvCgECBAgQIECAAAECBAgQIECAwDgUmDDAa35HzH1iRP2YafulZAJv24hb2hvieKuITBhmyQTdbrnToeQKx0zWZQKvWzk2GjLhmAm8biVXxJ0bsVGXDk9F/Ucjcq7hyibReEZEJhE7lVz1t33Erzs0rhJ1nZJ5HboOVV0Se1sNHc24k8nXUyO2mbF66Cg9vhhx0FDN2O5MjuGm5pBTp04tkyfnoUKAAAECBAgQIECAAAECBAiMpcC0adPKSiutVA+ZO9PqA9t5RyATZIMqP46J14s4PCKTfY9FPBDxm4h6dV6n5F80j7hkEmv3iEwk5jv+coVbJutym8eZ/NojYrjkXzSXv0W8PuLfIv434t6IJyJujcik32tb29gMWzKxlyvs/jPiuohHWvG7Vt06se2U/IvqMS+Px4jpsmvEBRF3R6RNJuX+J+INEQdFKAQIECBAgAABAgQIECBAgAABAuNYYJArAMcxm0sfAwErAMcA0RAECBAgQIAAAQIECBAgQGA4ASsAh9OZd9oGuQJw3lF2pwQIECBAgAABAgQIECBAgAABAgQGJCABOCB40xIgQIAAAQIECBAgQIAAAQIECBDoh4AEYD+UzUGAAAECBAgQIECAAAECBAgQIEBgQAISgAOCNy0BAgQIECBAgAABAgQIECBAgACBfghIAPZD2RwECBAgQIAAAQIECBAgQIAAAQIEBiQgATggeNMSIECAAAECBAgQIECAAAECBAgQ6IeABGA/lM1BgAABAgQIECBAgAABAgQIECBAYEACEoADgjctAQIECBAgQIAAAQIECBAgQIAAgX4ISAD2Q9kcBAgQIECAAAECBAgQIECAAAECBAYkIAE4IHjTEiBAgAABAgQIECBAgAABAgQIEOiHgARgP5TNQYAAAQIECBAgQIAAAQIECBAgQGBAAhKAA4I3LQECBAgQIECAAAECBAgQIECAAIF+CEgA9kPZHAQIECBAgAABAgQIECBAgAABAgQGJCABOCB40xIgQIAAAQIECBAgQIAAAQIECBDoh4AEYD+UzUGAAAECBAgQIECAAAECBAgQIEBgQAISgAOCNy0BAgQIECBAgAABAgQIECBAgACBfghIAPZD2RwECBAgQIAAAQIECBAgQIAAAQIEBiQgATggeNMSIECAAAECBAgQIECAAAECBAgQ6IeABGA/lM1BgAABAgQIECBAgAABAgQIECBAYEACEoADgjctAQIECBAgQIAAAQIECBAgQIAAgX4ISAD2Q9kcBAgQIECAAAECBAgQIECAAAECBAYkIAE4IHjTEiBAgAABAgQIECBAgAABAgQIEOiHgARgP5TNQYAAAQIECBAgQIAAAQIECBAgQGBAAhKAA4I3LQECBAgQIECAAAECBAgQIECAAIF+CEgA9kPZHAQIECBAgAABAgQIECBAgAABAgQGJCABOCB40xIgQIAAAQIECBAgQIAAAQIECBDoh4AEYD+UzUGAAAECBAgQIECAAAECBAgQIEBgQAISgAOCNy0BAgQIECBAgAABAgQIECBAgACBfghIAPZD2RwECBAgQIAAAQIECBAgQIAAAQIEBiQgAdJ/EiYAAEAASURBVDggeNMSIECAAAECBAgQIECAAAECBAgQ6IeABGA/lM1BgAABAgQIECBAgAABAgQIECBAYEACEoADgjctAQIECBAgQIAAAQIECBAgQIAAgX4ISAD2Q9kcBAgQIECAAAECBAgQIECAAAECBAYkIAE4IHjTEiBAgAABAgQIECBAgAABAgQIEOiHgARgP5TNQYAAAQIECBAgQIAAAQIECBAgQGBAAhKAA4I3LQECBAgQIECAAAECBAgQIECAAIF+CEgA9kPZHAQIECBAgAABAgQIECBAgAABAgQGJCABOCB40xIgQIAAAQIECBAgQIAAAQIECBDoh4AEYD+UzUGAAAECBAgQIECAAAECBAgQIEBgQAISgAOCNy0BAgQIECBAgAABAgQIECBAgACBfghIAPZD2RwECBAgQIAAAQIECBAgQIAAAQIEBiQgATggeNMSIECAAAECBAgQIECAAAECBAgQ6IeABGA/lM1BgAABAgQIECBAgAABAgQIECBAYEACEoADgjctAQIECBAgQIAAAQIECBAgQIAAgX4ISAD2Q9kcBAgQIECAAAECBAgQIECAAAECBAYkIAE4IHjTEiBAgAABAgQIECBAgAABAgQIEOiHgARgP5TNQYAAAQIECBAgQIAAAQIECBAgQGBAAhKAA4I3LQECBAgQIECAAAECBAgQIECAAIF+CEgA9kPZHAQIECBAgAABAgQIECBAgAABAgQGJCABOCB40xIgQIAAAQIECBAgQIAAAQIECBDoh4AEYD+UzUGAAAECBAgQIECAAAECBAgQIEBgQAISgAOCNy0BAgQIECBAgAABAgQIECBAgACBfghIAPZD2RwECBAgQIAAAQIECBAgQIAAAQIEBiQgATggeNMSIECAAAECBAgQIECAAAECBAgQ6IeABGA/lM1BgAABAgQIECBAgAABAgQIECBAYEACEoADgjctAQIECBAgQIAAAQIECBAgQIAAgX4ISAD2Q9kcBAgQIECAAAECBAgQIECAAAECBAYkIAE4IHjTEiBAgAABAgQIECBAgAABAgQIEOiHgARgP5TNQYAAAQIECBAgQIAAAQIECBAgQGBAAhKAA4I3LQECBAgQIECAAAECBAgQIECAAIF+CEgA9kPZHAQIECBAgAABAgQIECBAgAABAgQGJCABOCB40xIgQIAAAQIECBAgQIAAAQIECBDoh4AEYD+UzUGAAAECBAgQIECAAAECBAgQIEBgQAISgAOCNy0BAgQIECBAgAABAgQIECBAgACBfghIAPZD2RwECBAgQIAAAQIECBAgQIAAAQIEBiQgATggeNMSIECAAAECBAgQIECAAAECBAgQ6IeABGA/lM1BgAABAgQIECBAgAABAgQIECBAYEACEoADgjctAQIECBAgQIAAAQIECBAgQIAAgX4ISAD2Q9kcBAgQIECAAAECBAgQIECAAAECBAYkIAE4IHjTEiBAgAABAgQIECBAgAABAgQIEOiHgARgP5TNQYAAAQIECBAgQIAAAQIECBAgQGBAAhKAA4I3LQECBAgQIECAAAECBAgQIECAAIF+CEgA9kPZHAQIECBAgAABAgQIECBAgAABAgQGJCABOCB40xIgQIAAAQIECBAgQIAAAQIECBDoh4AEYD+UzUGAAAECBAgQIECAAAECBAgQIEBgQAISgAOCNy0BAgQIECBAgAABAgQIECBAgACBfghIAPZD2RwECBAgQIAAAQIECBAgQIAAAQIEBiQgATggeNMSIECAAAECBAgQIECAAAECBAgQ6IeABGA/lM1BgAABAgQIECBAgAABAgQIECBAYEACEoADgjctAQIECBAgQIAAAQIECBAgQIAAgX4ISAD2Q9kcBAgQIECAAAECBAgQIECAAAECBAYkIAE4IHjTEiBAgAABAgQIECBAgAABAgQIEOiHgARgP5TNQYAAAQIECBAgQIAAAQIECBAgQGBAAhKAA4I3LQECBAgQIECAAAECBAgQIECAAIF+CEgA9kPZHAQIECBAgAABAgQIECBAgAABAgQGJCABOCB40xIgQIAAAQIECBAgQIAAAQIECBDoh4AEYD+UzUGAAAECBAgQIECAAAECBAgQIEBgQAISgAOCNy0BAgQIECBAgAABAgQIECBAgACBfghIAPZD2RwECBAgQIAAAQIECBAgQIAAAQIEBiQgATggeNMSIECAAAECBAgQIECAAAECBAgQ6IeABGA/lM1BgAABAgQIECBAgAABAgQIECBAYEACEoADgjctAQIECBAgQGBuFJgyZUqZMGFCFbfddtuY3+Juu+1Wjb3KKquM+djjccCtttqq8sjtCyn1b3bQQQe9kGGcS4AAAQIECMyhAhKAc+gP47IIECBAgAABAgQIECBAgAABAgQIjIWABOBYKBqDAAECBAgQIECAQAjkCrp6NR0QAgQIECBAgMCcIjDoBODKAfH1iD9EPBpxX8SVEZ+MWCRirMrbYqDTI6ZFPNna5nHWj7RMjI4fibg04p6IxyP+GHF0xNoRIy1LRccvRFwb8VArcj/rlozoVVaKDjtEfDXiwogcY3orDortSMpB0ak+p9d2q5EMqA8BAgQIECBAgAABAgQIECBAgMCcKZBJrUGVd8TEJ0Ys3riATPpt2Io9YrttxC0Rs1oywfmdiN3bBlgxjjO2jzgmYs+I5yK6lUzanRuxUVuHV8TxhyPeH/HRiBxruLJJNJ4RsVxbp3XjOCPvOa/piohOZeWovK1TgzoCBAgQIECAAAECBAgQIECAAAECnQQyQTaI8pqY9KSITP49EvHpiNdHvCnivyOyrB5xTsSL8mAWy5fivDr5d03s7xKxcWubx1ky6faf1V7nP+aP6lwtWCf/Tov9XDmYybz/iLg7YlJErgQcbkVhrtz7cUQm/56J+FrEFq3I/axbPiL7TI7oVCY0KnPl3i0Rv2jUzcpunXzsts0VmQoBAgQIECBAgAABAgQIECBAgMA4FRhUAvCI8Fo4IpNeW0d8OeKyiHykNVfU/b+ILJkE3KfaG/0fee6+rdN+E9vNIn4YkQmt3L4hIuuz5CPHq1V7M/+Rq/uyb5ajIvLx259E5Cq9IyNy3HwMNy3/v4iJEZ1KJiOXbjW8N7b7RVzaitzPuizLRHRLSD4cbQdGvCViyYi85s9FvJByXZw8XDz6QgZ3LgECBAgQIDB3Cdx///1l//33L2uuuWZZeOGFyzLLLFPe/OY3l1NOOWXEN/rMM8+UY489tmyzzTZlhRVWKJMmTSpLLbVU2WKLLcoRRxxRnnjiiRGP1a3jY489Vo31xje+sSy77LJlwQUXrK516623Lscdd1x59tlnu506VP/UU0+V73znO2XbbbctK664YnWdeb8bbLBB+ehHP1ouvfTSMn16/jfZUuqvH3/+858fOr9+F2Bz2/wy8nPPPVcuvPDCsu+++5bNNtusMlhggQXKEkssUdZff/2q/i9/+cvQeCPZufHGG8uHP/zh8vKXv7wstNBCZfnlly877bRTufzyy0dyes8+Of5//Md/lLXXXru8+MUvrv4ZeMUrXlE+8IEPlKuvvrrn+ToQIECAAAEC845ArsDLvyllfLvLbWcy7fpWn/tju0CXfsNVZ7Kunud1XTpmfd3nW1361NdxX7Qv0qXP/o1xduzQZ7moy79l5lw/6dBeV2Vb9sm+ec5IylbRqb6Hg0ZyQvTJfvU5IzxlzLtNrq9h6tSp8XdnhQABAgQIEJjTBa6//vrpkbCr/w4x0zaSQNMjuTZU/6c//WmmW7rlllumv+pVrxrqU/99oLldbbXVpt90000znZsV73//+6tzV1555Y7tWXnFFVdMj4TdsHNsvPHG0++8886uY1xzzTXTI4k27Bh5zfU9Nu+7eS/t+3X/nPhzn/tcz/EXWWSR6aeddlrX69xyyy2rMXJ77rnnTl900UU7jjnffPNNP/zww7uOU19nXlO38oUvfGH6xIkTO46f50eic/pnP/vZbqerJ0CAAIEBCeS/c9f/dz62+e/iyjwo0G212uykyHfc1eW4eqdtm+/j+17EVyKWiHhjxPkRIy35qOw7W53/ENtu/8kz62+MWCMi++d7/PJ/GHXJVYRrtQ5Oiu1jdUPbdkoc57VmeVdE+38C3y7qMqmZpds9Z9uUiFzdl33znO9EKAQIECBAgACBgQs89NBD5S1veUv561//Wl3Le97znhLJuGpVXSTrymGHHVatrLvuunywoHO54447qpVud911V7Wa7kMf+lCJxFVZZZVVyiOPPFLOP//88o1vfKPcfPPN5a1vfWu1oixXmY2m/O53vyu56u/RRx8tiy++eNlrr71KJPvKSiutVO69995y1llnlaOPPrpEkrC8853vrFbx5aq7ZrnhhhvK5ptvXl1T1r/rXe8qO++8c8mVbrlyMFfBXXDBBeX0008fOm377bcvG264YTnqqKPKf/3Xf1X1eS3tJVcS1iVXQuYKvRx/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rGDtnZbXWr7LcllTqLOs91EeAQQQQACBGi2g4F+vXr3cggUaWE/KVWDVqlVu7733dm+//Xaut1AOAQQQQAABBBBAIEeBfAcAFVQKSa+cZks/JQo0yVYw5XpZ2gltqIrUdiq7noo8c2X1Rc/5pOUHLCu4F03v2cGjln9rWcFBjQq8yfLTludYJiGAAAIIIIBAFoGrrrrKB//q16/v/va3v7n+/fu75s3X/Y2xc+fOTqMASaUFRo8enQz+aZTk8ccf79q2XffiSNiWvoszCCCAAAIIIIAAArkI5DsAuCLSqYaR/XS7jRIXfkxXIM35srQT2lBVqe2k1hM9Tm06Wz1N7YaKPHO07Wz1ZOqL+q25CDOlZ+3ilZb/aln9Psny3yyXJWV79bi9VaaAIwkBBBBAAIGiEnjllVf88xxyyCHu//2//1dUz1aVDxPc2rdv7+655x5Xr169qmyOuhFAAAEEEEAAgVolUDfPT7s00l7q67aRS8ndsJhGLq/OJm+ynbK0E9rQ/antVHY9FXnmyupL1CnTvl77DSMEd89UMM01zXeYKTOiMA0cpxFAAAEEarbA7Nmz/QN07969Zj9Innsf3Lp27UrwL8/2NIcAAsUpMGLEiORcqtOmTau2DxnmyR06dGi17SMdQ6AYBPIdANQotgUJOC0QkSm1soshODczU8GYawo8hZStnehItdR2ylOPgmbR+9SPcJytLyob+lMZfVF9qfXoXC5pnhVamCjIisC5iFEGAQQQQAABE1i5ct2MHw0aaCYNUq4CP/20blYW3HIVoxwCCCCAAAIIIJC7QL4DgOrZZ4nubWrb+on9uM0WkZPhnsipjLufRq5G64mcTu5Gr6e2U556FHCLLiyihkI969m+Xn1Nl7Qab8vExdS+aHRiCOZF+xxXV/R6aj1x5dOdCyMA013nPAIIIIAAAgiYQHSURQDRarZhVIO2mtcul/TDDz+4Rx991J188sluu+22c+utt55TUGyDDTZwu+++u7v++uvdsmWpLy2sqzna5pdffpm1uX322cf3sUOHDm716tWlyquda665xvXp08e1bt3aNWrUyHXs2NEdfvjh7tlnny1VPnoidaVd9WfIkCFus802c02bNvXtakRKMHr99df97dqGc9p2iayWLMPUc9E2w37086jOo15Cf9kigAACCCCAAAJVLVCIAOB/Eg+l0X29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ftsH6NIFYHXPI488krQ9+uijo9X4/auvvtpdeumlyTKhwKeffuqUFYC966673HHHHRcuxW4136PK6DMhIYAAAgiUT4AAYPncuAsBBBBAAAEEEEAAAQSqsYBGnd13332+hx06dHBDhgxxffv2deutt54f9ffuu++6xx57rMQTaCRfnz593Pjx431wLFMAUMEzJY0WPPbYY0vUU9YD1fXDDz+4p556ygfMdL+CkxrpFlJ0hFs4F7dV8LJhw4ZuwIAB7je/+Y3TM7Vu3dp99913bsqUKW7YsGFu8uTJbuTIkU6j/a644ooS1SiQpwCggm4PP/xwclXiEoUSB7qupBF92267beLsus3tt9+evHeDDTZwGiG46667+uDqK6+84q677jr/zBrp2bZtWz+yr0QFkYObb77ZKeDar18/v7iH5vhbtGiRD1BqlOPhhx/uvv32W//Muk2rJx988MHJGn71q18l99lBAAEEaqsAAcDa+snz3AgggAACCCCAAAIIFKnA008/nQz+KaA3duxYt/7665d42n322ccH22bOnFnivEYBKgCoYJlGwSlomJq04uw///lPf1or9bZr1y61SJmOQ3Dv/fffT96nIFem0XfJgik7Cnbq9VltU9Nee+3lTj/9dKcRixr1qNeE9dqzgqIhbbnllm777bd3EydOzBgA/Pzzz30Z3afRhNGk16o1+lJJQcwJEya4Tp06JYsoEHjQQQf5gJ4CnwrWauRiunkPFfzTCED1Wa/wpiYF+Jo3b548vdFGG7mtt946ecwOAggggIBzdUFAAAEEEEAAAQQQQAABBIpJ4JprrvGPo/n+NMovNfgXfdZoYErnNUee5qlTCqP8/EHkyzPPPJOcO7A6vf6rLjZr1iw2+Be6rwCaAn+au0/BN43GS03hdV6NFPzwww9TL/vjEABVfYMGDSpRRm7Lly/352688cYSwb9QUEHGiy66yB9qLsExY8aES6W2+vxuu+222OBfqcKcQAABBBCIFSAAGMvCSQQQQAABBBBAAAEEEKiJAgsXLvQjztR3BfOir9Hm8jwKoB155JG+6KOPPpoMZEXvDYFBjfzTohTVOWm04qxZs9xnn33mtCCKsl6XbdOmje92XIBPAb26ddf9qhhe8019Rs3/p6TFQrS4SDSFoKICd7/73e+il0rsa7RlSOGecBzd6jXfEJSNnmcfAQQQQCB3AQKAuVtREgEEEEAAAQQQQAABBFIElq5Y5b6cu9RNmrnIb3VcyDRp0iQ/f536oDnjypNCYGrp0qXu8ccfL1HFnDlzkqvo6rVUzQFY3ZKCfprrr3fv3v7VWI1y1FyAWgk55Hnz5vluL1iwoFT3FTQNq98q0Kf5AKNJC6doERWlMFowel1BRqUddtgh7Wu9uq4AapcuXbTrA5N+J+ZL6vyCMUU4hQACCCCQRaD6/bTK0mEuI4AAAggggAACCCCAQGEFFBAa//VC99D46e6lT+e61Wt+CRDVq1vHdV44rWAdjAa04ubBy6VjO++8sw+Uffzxx/414OgiHw8++KD7+eeffTXV7fVfdUqLfWh+ww8++CCXR3U//vhjbDkF9l577TWnORLfeOMNt/vuuyfLhdd/NWffEUcckTwfdtQHpVwW32jfvr2fszDcE+qIblu1ahU9ZB8BBBBAoBwCjAAsBxq3IIAAAggggAACCCBQWwU+mb3YDbj5DXfU3e+45z+ZUyL4JxMFAz+atTjJ88WcJcn9fO/ELRiRax/CKMBx48b5BSrCfVqIQkmLi2yxxRZ+vzp9Offcc5PBv0MOOcRpQRQtCqI5+dasWeNH8ymAG+Y+TB3dF57lsMMOc40bN/aH0deAtcrwqFGj/Pn99tvPrzAc7knd5uKfrv1oXZqvkIQAAgggUDEBAoAV8+NuBBBAAAEEEEAAAQRqjcCbX853A4fbCrlzl+X8zGc9PNHpvpDC3HIKRmVKWqCiPKlt27bJ2zTXXXmTVrZt1KiRD5g98MADvhqtZqu59JSq4+i/JUuWOM1bqKQRfE8++aTT/Hmao69JkyYlFtH4/vvvfbl0X7QysFY4Vho9erRbuXKl33/11Vfd3Llz/X7c67+60Lp1a389lPMHab6EMuGeNMUq7XQISlbV91+ldZSKEEAAgUoWIABYyaBUhwACCCCAAAIIIIBAMQpo5N9pD33glq9cXabHW7Fqtb9P9yuFxRyyBaCmTJlSpnZCYa0uG4I8enW1vEkBqbCAhUb9aaTafffd56vTQiFaYKS6pS+//NJp/j+lTP37/PPP3bJl2YO4IcCnz+qFF17w9YbXf/U5KrgYl7beemt/+r///W/ydem4cpqHcPr06f5SuCeuXGWey+X7T5/11KlTK7NZ6kIAAQQKLkAAsOAfAR1AAAEEEEAAAQQQQKB6Cyggcv6oSWUO/oWnUtDwglEf+iDaJpts4k8rOJTu9c/Jkye7jz76KNxepq0Cd3379vX36FXViowCDK8BK0j13HPPJUfXHX744clAZpk6V8WFw9yEaibTCMo777wzp55oBKBW8lVS4G/FihVuzJgx/ljBUY0qjEt77723P71o0SL3xBNPxBXx5+69997k90C4J23hSroQvv/ef//9tDU+//zzTn0nIYAAAsUkQACwmD5NngUBBBBAAAEEEEAAgSoQ0IIfZXntN64LX9hKwRO+/i65mIQCc1phNjVp5d2TTjop9XSZjv/0pz/58pr3TotULF78y5yEqRXNmjUr9VTyeM8993TdunXzx6eccorTK7ZK1fH1X/Vr0003TY5+1GvLcQHWZ555xt12220qnjU1bNjQKdippPs0F2AwCKMD4yo54YQTXNOmTf2lCy64wM2ePbtUsQ8//ND9/e9/9+c32mgjp/kK85HCYiZayfitt94q1aRWeT777LNLnecEAgggUNMFCADW9E+Q/iOAAAIIIIAAAgggUMUCIyese02zos2oHs2t17JlS1+VAn1XXnmlUzDm3XffdXfccYfbYYcdnIJDepW3vEmvpoYg4ttvv+222mord/XVV/vVbCdNmuReeeUVd8011/g2Lr300rTN6FXiEOxTYEhJQbb+/funvaeQF9q0aeP2339/3wW9sqvVgDUCTysCa1SbRjQeeuihrmvXrm6DDTbIqash0KfVghXMU9LKvb/+9a/T3q+6r7vuOn9dAdZevXq5m2++2X/G+jz0me+2227+NWQZ33XXXU4rCucjnXrqqa5+/fo+OKrvE/VLowHVL/VZ33cKGG+22Wb56A5tIIAAAnkTqJ+3lmgIAQQQQAABBBBAAAEEapzA0hWr3IuT1y36UNHOvzB5jrvmsG3cPffc4wYNGuRfKb388sudckh6rfShhx5yzz77rJs4cWI4Xebt8OHD/Suqw4YN868BX3zxxbF19OzZM/Z8ODl48GD3l7/8xWn1WyWNbqvOSUFUBddmzJjhA50KdkbTxhtv7F/jDYHC6LW4fY2Y69ixo1MgL7wWe+SRR7psK/OeeeaZvvxll13mFw35wx/+UKp6LbKi4F+ufSlVQTlO9OjRw/3jH/9w559/vtPchqn90ivkes1Z/daciiQEEECgWAQYAVgsnyTPgQACCCCAAAII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lltuOTdy5Eh3yy23hIe5WbNmRee90UYbuT59+rhlllnG7bDDDu7uu+9ukc9v7L333lE9yy67rJszZ45PTlx+/vnnzX2h8yQggAACCBQvwABg8aaUiAACCCCAAAIIIIAAAg0u0LVrV3fIIYdErRw/frx78803M1t82WWXRfu7dOnSfFzmAVXunDJlihs+fLg766yznAYdP/nkE6eBvttuu81ts8027vrrr49Kfuqpp9zGG2/sfvKTn7jnnnvOzZ49273//vvuX//6lxsxYoS75557yrZAA40q8/vf/757/PHHo4HHDz74wN17771ut912iwYGVcj//ve/qMyTTz7ZPfnkk9Fg4IcffujuuuuuaBDw6quvblXXt7/97Sht5syZ7sYbb2y1P0y49dZb3fTp06Okww47LNzFOgIIIIBAQQIMABYESTEIIIAAAggggAACCCDQsQT8INUXX3zhrrzyytTGa7agH+TSbEHNHKxX2G+//dzUqVPdqaeeGg3EPfroo+6CCy6IZt3Nnz/fHX744e7111+PBug+/fTTaADwgQcecA8//HA0aNitWzf32WefuUMPPTSa3ZfVziOPPDIa+Pvud7/r7rzzTvfYY4+5Sy+91K200krRYSeddFI0CKnZfK+99po75ZRTnGY6qk2//vWvoxmDCxYscDpeg5Rh+NrXvuYGDBgQJV1++eXhrlbrfr9mMO6xxx6t9pOAAAIIIFC7QJfai6AEBBBAAAEEEEAAAQQQQKDjCQwZMsRtvfXW7v7773cahNKgW1K4+eab3YwZM6Jd9Z6hphl2moG32WabNTdFt+euueaa0aCfbsXVPg28PfLII2711Vdvzrfpppu65Zdf3h1zzDHRrD3dxvv1r3+9eX98Rcf/4x//cHvttVfzrmHDhkUzEHWrrwZGt99++2hmYFqbdt1112hG4J///Gd3/PHHN5ezxBJLRIOQP/7xj6OZgprZOHDgwOb9fkUDh/5244MPPthpAJOAAAIIIFC8ADMAizelRAQQQAABBBBAAAEEEOggAn4W4Msvv+wefPDBxFb7GWorrrii04BXPcNxxx3XYvDP16V6Bw0aFG1qMPKcc85pMfjn82nmX48ePaJNDWxmhVGjRrUY/PN5119/fbfVVltFm6pLA3vhgKTPp+/r821KqkuDpfpuw6wZlppZqRmWCvUeXPXtZokAAggsjgIMAC6Ovc45I4AAAggggAACCCCAQCSgW2718AsFP9AXbZR+6Lvp9P17Ct/85jedvjuwnuGAAw5ILV4DcwoaVNPgXVLo2bNnNFtQ+3TbblbIqmuDDTZoPnT//fdvXo+v+DYl1TV48GD31a9+NTpEDx9JCt5cMw99WUn5SEMAAQQQqE2AAcDa/DgaAQQQQAABBBBAAAEEOojArDnz3MvTZ7knp8yMltrWgNk3vvGN6Ayuu+666KEb4elcddVVTk+pVWiLGWq6LTkt6Mm7CrrNV0/XTQs+n24Xzgp56tLxefKl1eVnWL7yyivRrdZhe/Sdg3rQiUJb2IZ1s54toO969E+m1jqhMgE9SVt+WhIQaBQBvgOwUXqCdiCAAAIIIIAAAggggEDhAvquvImvveeumviGG//cdDf/iwXNdXReopPbaWg/N3ynfdwf/vCH6Lvs/v73v7d4yq+foaZbYNdZZ53mY+u1suSSS6YWre/VU8jKo/0+nx4akhWyyvFl6Pg8+dLq0vcLasDy3XffjWZY6jsXffBPVtYty34Q1u9jiQACCCBQrAAzAIv1pDQEEEAAAQQQQAABBBBoEIFn3vzQ7fTr+9w3LnnY3fbMtBaDf2qiBgNvfXqaO2viHNd75TWjVvsBP23oybrPPfdclM4MtYih4h96qIdunVa4/vrr3ccffxytz5kzx1177bXRuh5U4mctRgn8QGARF/CzK8eMGbOInymn10gCDAA2Um/QFgQQQAABBBBAAAEEEChE4P6XZ7hRYye6l6Y3DTiVK7TrOk3fVaen3frvs/ODgZoBl/R9eeEsOT3oIi188sknabsWi3R/G7AG//72t79F53zjjTe6Dz74IFpncHWx+DXgJBFAoJ0FGABs5w6gegQQQAABBBBAAAEEEChWQDP/jrrqcTd7bvYtsGGtvYbad3Z16e50y/AvfzfWffrpp80z1PbZZx/Xp0+fMHu03rt37+Y0P5jVnBCsvPTSS8HW4reqW6dHjBgRnbgfVPW3/+opwl/5ylcWPxTOGAEEEGhjAQYA2xic6hBAAAEEEEAAAQQQQKB+AhrAO+G6Jysa/FNrlujeyy251hZRw8ZdcWV0u+qHH34YbafNUNNTbn3QAy3Swl/+8pe0XYtNup8FeN9997l///vf7u67747OffTo0dHDEhYbCE4UAQQQaCcBBgDbCZ5qEUAAAQQQQAABBBBAoHgBPfAj722/8dqX2mCnKGnOB9PcCSeeFK2vttpqbtttt41njbb1JN71118/WtfMtvfff79VvgceeMD95je/aZW+uCXsv//+zs+Y1AM/dMu0vgdNA4BtHR588EGnAcm11lormtm51FJLubXXXtvpgSVXXnml++ijj5qbFH8artqt2Yvbbbed69evX/TAlfAcNCic57z8wGc4iOwrnTx5clSGyhk3blyUfOedd7rdd9/d9e/f33Xv3t2tuuqq7jvf+Y6bOnWqPyxzWck5pxWkp2RrtuYKK6wQPT1bfj/4wQ8Sf+/10Be1U+egdpYLN910U/M5q54iwsyZM91PfvKTaPaprtWuXbtGbdeMVH3vpB78884777Sqau7cuU7tOfbYY93w4cOjJ27r2L59+zo9DEjf26fzqyb43w9/7FlnndV83rIKf3f23nvvaFtt13dmZgU9qVy/Gzp+l112ycrKvsVYgAHAxbjzOXUEEEAAAQQQQAABBBY1gasnvVH1KfUYuK7rstzK0fHvzWgaGDj00EOjP6rTCv3ud78b7Zo+fbrTE271YIsnnngimuF2wgknuK9+9atu2LBhaYcvNum9evVq/h7FadOmRee9/fbbOw2ItFXQbd0afNxqq63cn/70J6dbs2fNmuX0HY0vvvii++c//+m+9a1vufPPPz+xSRqE2Wmnndzhhx/uNDCowSPNOK13OPXUU92OO+7obr75ZqffMw1QaZDw4osvdhtvvLF7/vnnU5tQ6zmrYA166kEuGsS95557osEvWcjvl7/8ZTQo5vvUN0RPft5zzz2jTc2ALTeA5W8NX2655ZqP82VVs5TJ0KFD3RlnnOEmTZrkNBioQTIN3GmfvoNS127SYOORRx7p9thjD3fhhRc6zez1x2qA/5FHHnEatNOAsQZV6xn8rFnVr/ZmhVtvvTX63VCetBnLWcezb/EQ6LJ4nCZniQACCCCAAAIIIIAAAou6wKw589wdz06v6TSXWn8HN3PCuKgMPeRDA0JZ4YgjjnC333579Ae6nhh84IEHtsi+3nrruX/84x9upZVWapG+OG5oQOOSSy5pPvW2HKjQIJYGpDSTTmHNNdeMBoA22WQTp4e8vP322+6hhx5KHBDyDT755JPdU089FQ0OaQafvr9QA3LhjEGft6ilvNQuzUI96qij3JAhQ6IBKc1U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pnrghx9A1QAgAYE8AgwA5lEiDwIIIIAAAggggAACCHQ4Ac3ku+O4bdxfjtjc7bJef9d5iU4tzqGLbe+63krR/tuP25qZfy10Gn/j6klv5G5k7413dT0GbxTl//Slie6ty451Hz32Tzdn6nPugmvviJ5Se+aZZ0a3ff7xj3/MXW4848EHH+z69Gn6zkEN9J199tnu4Ycfdo888oj7wx/+4HRr7n//+1+30UZNbYkfX+T2Mccc43bYYYeoyBtuuMGtt9567je/+Y178MEH3RNPPFHYOedts57Ku/TSTbNrp0+fHh1W9MM/VKgG/+S76aabRred33LLLdGDPCZNmhQNyu60007upptuiurXrcB+ME4J/mEbGlzbdddd3bnnnus0487334YbbhjNvttyyy2j46v9scUWW0SHaibh2LFjo+8o1G3yiu+8805isb169XIHHHBAtG/atKYnnev7DMMBzMQDSUSgJNAFCQQQQAABBBBAAAEEEEBgURXQDJ8Rq/eN4qw589z0j+a4jz+b75bq3tn169PD9e6x8Iv9F1WDRfG81Jd3PNs0iJTn/DQLcIW9T3fv3XKBm/3ig+7z9990H9x9SXSonk/c9IziPCVl51lhhRWiW24PPPDA6CmtGlRU9KFnz57uqquucjfffHM0COfT67HULEA9KOJb3/pW9OAIfe/gcccdV4+qcpWpc9fMNQ2EKmgwcJ999sl1bDWZHn30UaeYFjQIFz7NV/mGDx/uzjrrrKjPZs6c6U4//fRWh3//+9+PniCsgdRqw4knnhj1iW4BPvroo1sUo/7Sw0iSgmZRXnJJ0++t9tdjADWpXtIWDQFmAC4a/chZIIAAAggggAACCCCAQBkBDfatsWJvt+HAZaIlg39lwBp497QP57j5XyyoqIVLdO3hVtjrVNfvgHNdr6HbuS5L93OdunR3nbr1dKutOcTtvffe7pprrmm+dbaiwoPMmumm20e//vWvOw0IduvWLfo+Pg3saEBq3333DXLXd1UPXdFDN+65555odptut9VAnG4lXXvttQs757xn4WfYKb9ms6ktRQcNMuo78k477bToewd1znJQPwwYMCB6AMif//xnp1uR9WCQePjRj37kNGtwxx13dMsuu2zzcfr9GD9+vPvVr34VP6Tibc0knDhxotNA8SqrrOK6d++eqwzNatT3KSoss8wyUf/l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AAEEEECgQAEGAAvEpCgEEEAAAQQQQAABBBBAAAEEEEAAAQQaTYABwEbrEdqDAAIIIIAAAggggAACCCCAAAIIIIBAgQIMABaISVEIIIAAAggggAACCCCAAAIIIIAAAgg0mgADgI3WI7QHAQQQQAABBBBAAAEEEEAAAQQQQACBAgUYACwQk6IQQAABBBBAAAEEEEAAAQQQQAABBBBoNAEGAButR2gPAggggAACCCCAAAIIIIAAAggggAACBQowAFggJkUhgAACCCCAAAIIIIAAAggggAACCCDQaAIMADZaj9AeBBBAAAEEEEAAAQQQQAABBBBAAAEEChRgALBATIpCAAEEEEAAAQQQQAABBBBAAAEEEECg0QQYAGy0HqE9CCCAAAIIIIAAAggggAACCCCAAAIIFCjAAGCBmBSFAAIIIIAAAggggAACCCCAAAIIIIBAowkwANhoPUJ7EEAAAQQQQAABBBBAAAEEEEAAAQQQKFCAAcACMSkKAQQQQAABBBBAAAEEEEAAAQQQQACBRhNgALDReoT2IIAAAggggAACCCCAAAIIIIAAAgggUKAAA4AFYlIUAggggAACCCCAAAIIIIAAAggggAACjSbAAGCj9QjtQQABBBBAAAEEEEAAAQQQQAABBBBAoEABBgALxKQoBBBAAAEEEEAAAQQQQAABBBBAAAEEGk2AAcBG6xHagwACCCCAAAIIIIAAAggggAACCCCAQIECXQosi6IQqESgs8/89ttv+1WWCCCAAAIIIIAAAggggAACCCBQoEDsb+7mv8ULrIKiOoBApw7QRpq4aApsYqf16KJ5apwVAggggAACCCCAAAIIIIAAAg0pMNxa9VhDtoxG1VWAW4DrykvhCCCAAAIIIIAAAggggAACCCCAAAIItK8AMwDb139xrr27nfx6JYAZtpwfYPS3dT87UP+dmBbsY7VjCNCHHaOfslpJH2bpdIx99GHH6KesVtKHWTodYx992DH6KauV9GGWTsfYRx92jH7KaiV9mKWTb59u+12hlPVpW36W7zByIYAAAvUVGGDFLyhFrRM6ngB92PH6LN5i+jAu0vG26cOO12fxFtOHcZGOt00fdrw+i7eYPoyLdLxt+rDj9Vm8xfRhXIRtBKoQ4BbgKtA4BAEEEEAAAQQQQAABBBBAAAEEEEAAgY4iwABgR+kp2okAAggggAACCCCA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gAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAALtJ/D/AXdBufSczUKXAAAAAElFTkSuQmCC\" width=\"640\">"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"display_closestwords_tsnescatterplot(model, 'tasty')"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"anaconda-cloud": {},
"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.2"
},
"widgets": {
"state": {},
"version": "1.1.2"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment