diff --git "a/tutorials_advanced/lmm_agent_opt_smacross.ipynb" "b/tutorials_advanced/lmm_agent_opt_smacross.ipynb"
new file mode 100644--- /dev/null
+++ "b/tutorials_advanced/lmm_agent_opt_smacross.ipynb"
@@ -0,0 +1,1389 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Optimizing SMACross Trading with MultiModal Agent"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "In the `agent_trade_strategist` demo. We explored an agent that could write trading strategy. But optimizing the strategy can be a hard problem, as the analysis it could do is really limited. Thus it would be crucial for us to turn on its vision swicth !\n",
+ "\n",
+ "In this demo, we introduce a multimodal agent to leverage the current strategy, and adjust parameters accordingly."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import autogen\n",
+ "from autogen import AssistantAgent, UserProxyAgent\n",
+ "from autogen.agentchat.contrib.multimodal_conversable_agent import MultimodalConversableAgent\n",
+ "from autogen.cache import Cache\n",
+ "from textwrap import dedent"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "config_list_4v = autogen.config_list_from_json(\n",
+ " \"../OAI_CONFIG_LIST\",\n",
+ " filter_dict={\n",
+ " \"model\": [\"gpt-4-1106-vision-preview\"],\n",
+ " },\n",
+ ")\n",
+ "config_list = autogen.config_list_from_json(\n",
+ " \"../OAI_CONFIG_LIST\",\n",
+ " filter_dict={\n",
+ " \"model\": [\"gpt-4-0125-preview\"],\n",
+ " },\n",
+ ")\n",
+ "llm_config_4v = {\"config_list\": config_list_4v, \"temperature\": 0.0}\n",
+ "llm_config = {\"config_list\": config_list, \"temperature\": 0.0}"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "For this task, we need:\n",
+ "- A normal llm agent as image provider: Call charting functions / provide backtesting result charts for multimodal agent\n",
+ "- A multimodal agent as strategist: Inspect charts and determine parameters to use for strategy\n",
+ "- A user proxy to execute python functions and control the conversations."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from finrobot.toolkits import register_toolkits\n",
+ "from finrobot.functional.charting import MplFinanceUtils\n",
+ "from finrobot.functional.quantitative import BackTraderUtils\n",
+ "from finrobot.functional.coding import IPythonUtils\n",
+ "\n",
+ "\n",
+ "strategist = MultimodalConversableAgent(\n",
+ " name=\"Trade_Strategist\",\n",
+ " system_message=dedent(\n",
+ " \"\"\"\n",
+ " You are a trading strategist who inspect financial charts and optimize trading strategies.\n",
+ " You have been tasked with developing a Simple Moving Average (SMA) Crossover strategy.\n",
+ " You have the following main actions to take:\n",
+ " 1. Ask the backtesting analyst to plot historical stock price data with designated ma parameters.\n",
+ " 2. Inspect the stock price chart and determine fast/slow parameters.\n",
+ " 3. Ask the backtesting analyst to backtest the SMACrossover trading strategy with designated parameters to evaluate its performance. \n",
+ " 4. Inspect the backtest result and optimize the fast/slow parameters based on the returned results.\n",
+ " Reply TERMINATE when you think the strategy is good enough.\n",
+ " \"\"\"\n",
+ " ),\n",
+ " llm_config=llm_config_4v,\n",
+ ")\n",
+ "\n",
+ "analyst = AssistantAgent(\n",
+ " name=\"Backtesting_Analyst\",\n",
+ " system_message=dedent(\n",
+ " \"\"\"\n",
+ " You are a backtesting analyst with a strong command of quantitative analysis tools. \n",
+ " You have two main tasks to perform, choose one each time you are asked by the trading strategist:\n",
+ " 1. Plot historical stock price data with designated ma parameters according to the trading strategist's need.\n",
+ " 2. Backtest the SMACross trading strategy with designated parameters and save the results as image file.\n",
+ " For both tasks, after the tool calling, you should do as follows:\n",
+ " 1. display the created & saved image file using the `display_image` tool;\n",
+ " 2. Assume the saved image file is \"test.png\", reply as follows: \"Optimize the fast/slow parameters based on this image
. TERMINATE\".\n",
+ " \"\"\"\n",
+ " ),\n",
+ " llm_config=llm_config,\n",
+ ")\n",
+ "analyst_executor = UserProxyAgent(\n",
+ " name=\"Backtesting_Analyst_Executor\",\n",
+ " human_input_mode=\"NEVER\",\n",
+ " is_termination_msg=lambda x: x.get(\"content\", \"\")\n",
+ " and x.get(\"content\", \"\").find(\"TERMINATE\") >= 0,\n",
+ " code_execution_config={\n",
+ " \"last_n_messages\": 1,\n",
+ " \"work_dir\": \"coding\",\n",
+ " \"use_docker\": False,\n",
+ " }, # Please set use_docker=True if docker is available to run the generated code. Using docker is safer than running the generated code directly.\n",
+ ")\n",
+ "register_toolkits(\n",
+ " [\n",
+ " BackTraderUtils.back_test,\n",
+ " MplFinanceUtils.plot_stock_price_chart,\n",
+ " IPythonUtils.display_image,\n",
+ " ],\n",
+ " analyst,\n",
+ " analyst_executor,\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def reflection_message_analyst(recipient, messages, sender, config):\n",
+ " print(\"Reflecting strategist's response ...\")\n",
+ " last_msg = recipient.chat_messages_for_summary(sender)[-1][\"content\"]\n",
+ " return (\n",
+ " \"Message from Trade Strategist is as follows:\"\n",
+ " + last_msg\n",
+ " + \"\\n\\nBased on his information, conduct a backtest on the specified stock and strategy, and report your backtesting results back to the strategist.\"\n",
+ " )\n",
+ "\n",
+ "\n",
+ "user_proxy = UserProxyAgent(\n",
+ " name=\"User_Proxy\",\n",
+ " is_termination_msg=lambda x: x.get(\"content\", \"\")\n",
+ " and x.get(\"content\", \"\").endswith(\"TERMINATE\"),\n",
+ " human_input_mode=\"NEVER\",\n",
+ " max_consecutive_auto_reply=10,\n",
+ " code_execution_config={\n",
+ " \"last_n_messages\": 1,\n",
+ " \"work_dir\": \"coding\",\n",
+ " \"use_docker\": False,\n",
+ " }, # User Proxy dont need to execute code here\n",
+ ")\n",
+ "\n",
+ "user_proxy.register_nested_chats(\n",
+ " [\n",
+ " {\n",
+ " \"sender\": analyst_executor,\n",
+ " \"recipient\": analyst,\n",
+ " \"message\": reflection_message_analyst,\n",
+ " \"max_turns\": 10,\n",
+ " \"summary_method\": \"last_msg\",\n",
+ " }\n",
+ " ],\n",
+ " trigger=strategist,\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[33mUser_Proxy\u001b[0m (to Trade_Strategist):\n",
+ "\n",
+ "\n",
+ "Based on Microsoft's stock data from 2022-01-01 to 2024-01-01, determine the possible optimal parameters for an SMACrossover Strategy over this period. \n",
+ "First, ask the analyst to plot a candlestick chart of the stock price data to visually inspect the price movements and make an initial assessment.\n",
+ "Then, ask the analyst to backtest the strategy parameters using the backtesting tool, and report results back for further optimization.\n",
+ "\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[31m\n",
+ ">>>>>>>> USING AUTO REPLY...\u001b[0m\n",
+ "\u001b[33mTrade_Strategist\u001b[0m (to User_Proxy):\n",
+ "\n",
+ "Certainly, let's start by getting a visual on the stock price movements.\n",
+ "\n",
+ "1. Please plot a candlestick chart of Microsoft's stock price data from 2022-01-01 to 2024-01-01. Include a 50-day and a 200-day Simple Moving Average on the chart for initial assessment.\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "Reflecting strategist's response ...\n",
+ "\u001b[34m\n",
+ "********************************************************************************\u001b[0m\n",
+ "\u001b[34mStarting a new chat....\u001b[0m\n",
+ "\u001b[34m\n",
+ "********************************************************************************\u001b[0m\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "Message from Trade Strategist is as follows:Certainly, let's start by getting a visual on the stock price movements.\n",
+ "\n",
+ "1. Please plot a candlestick chart of Microsoft's stock price data from 2022-01-01 to 2024-01-01. Include a 50-day and a 200-day Simple Moving Average on the chart for initial assessment.\n",
+ "\n",
+ "Based on his information, conduct a backtest on the specified stock and strategy, and report your backtesting results back to the strategist.\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "\u001b[32m***** Suggested tool call (call_CgHll9hsFHau3D7dGfFSyV26): plot_stock_price_chart *****\u001b[0m\n",
+ "Arguments: \n",
+ "{\"end_date\":\"2024-01-01\",\"mav\":[50,200],\"save_path\":\"microsoft_stock_price_chart.png\",\"start_date\":\"2022-01-01\",\"style\":\"default\",\"ticker_symbol\":\"MSFT\",\"type\":\"candle\"}\n",
+ "\u001b[32m***************************************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[35m\n",
+ ">>>>>>>> EXECUTING FUNCTION plot_stock_price_chart...\u001b[0m\n"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "[*********************100%%**********************] 1 of 1 completed\n"
+ ]
+ },
+ {
+ "data": {
+ "application/javascript": "/* Put everything inside the global mpl namespace */\n/* global mpl */\nwindow.mpl = {};\n\nmpl.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(\n '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\nmpl.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 = document.createElement('div');\n this.root.setAttribute('style', 'display: inline-block');\n this._root_extra_style(this.root);\n\n parent_element.appendChild(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 (fig.ratio !== 1) {\n fig.send_message('set_device_pixel_ratio', {\n device_pixel_ratio: fig.ratio,\n });\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 fig.ws.close();\n };\n\n this.ws.onmessage = this._make_on_message_function(this);\n\n this.ondownload = ondownload;\n};\n\nmpl.figure.prototype._init_header = function () {\n var titlebar = document.createElement('div');\n titlebar.classList =\n 'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n var titletext = document.createElement('div');\n titletext.classList = 'ui-dialog-title';\n titletext.setAttribute(\n 'style',\n 'width: 100%; text-align: center; padding: 3px;'\n );\n titlebar.appendChild(titletext);\n this.root.appendChild(titlebar);\n this.header = titletext;\n};\n\nmpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._init_canvas = function () {\n var fig = this;\n\n var canvas_div = (this.canvas_div = document.createElement('div'));\n canvas_div.setAttribute('tabindex', '0');\n canvas_div.setAttribute(\n 'style',\n 'border: 1px solid #ddd;' +\n 'box-sizing: content-box;' +\n 'clear: both;' +\n 'min-height: 1px;' +\n 'min-width: 1px;' +\n 'outline: 0;' +\n 'overflow: hidden;' +\n 'position: relative;' +\n 'resize: both;' +\n 'z-index: 2;'\n );\n\n function on_keyboard_event_closure(name) {\n return function (event) {\n return fig.key_event(event, name);\n };\n }\n\n canvas_div.addEventListener(\n 'keydown',\n on_keyboard_event_closure('key_press')\n );\n canvas_div.addEventListener(\n 'keyup',\n on_keyboard_event_closure('key_release')\n );\n\n this._canvas_extra_style(canvas_div);\n this.root.appendChild(canvas_div);\n\n var canvas = (this.canvas = document.createElement('canvas'));\n canvas.classList.add('mpl-canvas');\n canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'pointer-events: none;' +\n 'position: relative;' +\n 'z-index: 0;'\n );\n\n this.context = canvas.getContext('2d');\n\n var backingStore =\n this.context.backingStorePixelRatio ||\n this.context.webkitBackingStorePixelRatio ||\n this.context.mozBackingStorePixelRatio ||\n this.context.msBackingStorePixelRatio ||\n this.context.oBackingStorePixelRatio ||\n this.context.backingStorePixelRatio ||\n 1;\n\n this.ratio = (window.devicePixelRatio || 1) / backingStore;\n\n var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n 'canvas'\n ));\n rubberband_canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'left: 0;' +\n 'pointer-events: none;' +\n 'position: absolute;' +\n 'top: 0;' +\n 'z-index: 1;'\n );\n\n // Apply a ponyfill if ResizeObserver is not implemented by browser.\n if (this.ResizeObserver === undefined) {\n if (window.ResizeObserver !== undefined) {\n this.ResizeObserver = window.ResizeObserver;\n } else {\n var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n this.ResizeObserver = obs.ResizeObserver;\n }\n }\n\n this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n var nentries = entries.length;\n for (var i = 0; i < nentries; i++) {\n var entry = entries[i];\n var width, height;\n if (entry.contentBoxSize) {\n if (entry.contentBoxSize instanceof Array) {\n // Chrome 84 implements new version of spec.\n width = entry.contentBoxSize[0].inlineSize;\n height = entry.contentBoxSize[0].blockSize;\n } else {\n // Firefox implements old version of spec.\n width = entry.contentBoxSize.inlineSize;\n height = entry.contentBoxSize.blockSize;\n }\n } else {\n // Chrome <84 implements even older version of spec.\n width = entry.contentRect.width;\n height = entry.contentRect.height;\n }\n\n // Keep the size of the canvas and rubber band canvas in sync with\n // the canvas container.\n if (entry.devicePixelContentBoxSize) {\n // Chrome 84 implements new version of spec.\n canvas.setAttribute(\n 'width',\n entry.devicePixelContentBoxSize[0].inlineSize\n );\n canvas.setAttribute(\n 'height',\n entry.devicePixelContentBoxSize[0].blockSize\n );\n } else {\n canvas.setAttribute('width', width * fig.ratio);\n canvas.setAttribute('height', height * fig.ratio);\n }\n /* This rescales the canvas back to display pixels, so that it\n * appears correct on HiDPI screens. */\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n\n rubberband_canvas.setAttribute('width', width);\n rubberband_canvas.setAttribute('height', height);\n\n // And update the size in Python. We ignore the initial 0/0 size\n // that occurs as the element is placed into the DOM, which should\n // otherwise not happen due to the minimum size styling.\n if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n fig.request_resize(width, height);\n }\n }\n });\n this.resizeObserverInstance.observe(canvas_div);\n\n function on_mouse_event_closure(name) {\n /* User Agent sniffing is bad, but WebKit is busted:\n * https://bugs.webkit.org/show_bug.cgi?id=144526\n * https://bugs.webkit.org/show_bug.cgi?id=181818\n * The worst that happens here is that they get an extra browser\n * selection when dragging, if this check fails to catch them.\n */\n var UA = navigator.userAgent;\n var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n if(isWebKit) {\n return function (event) {\n /* This prevents the web browser from automatically changing to\n * the text insertion cursor when the button is pressed. We\n * want to control all of the cursor setting manually through\n * the 'cursor' event from matplotlib */\n event.preventDefault()\n return fig.mouse_event(event, name);\n };\n } else {\n return function (event) {\n return fig.mouse_event(event, name);\n };\n }\n }\n\n canvas_div.addEventListener(\n 'mousedown',\n on_mouse_event_closure('button_press')\n );\n canvas_div.addEventListener(\n 'mouseup',\n on_mouse_event_closure('button_release')\n );\n canvas_div.addEventListener(\n 'dblclick',\n on_mouse_event_closure('dblclick')\n );\n // Throttle sequential mouse events to 1 every 20ms.\n canvas_div.addEventListener(\n 'mousemove',\n on_mouse_event_closure('motion_notify')\n );\n\n canvas_div.addEventListener(\n 'mouseenter',\n on_mouse_event_closure('figure_enter')\n );\n canvas_div.addEventListener(\n 'mouseleave',\n on_mouse_event_closure('figure_leave')\n );\n\n canvas_div.addEventListener('wheel', function (event) {\n if (event.deltaY < 0) {\n event.step = 1;\n } else {\n event.step = -1;\n }\n on_mouse_event_closure('scroll')(event);\n });\n\n canvas_div.appendChild(canvas);\n canvas_div.appendChild(rubberband_canvas);\n\n this.rubberband_context = rubberband_canvas.getContext('2d');\n this.rubberband_context.strokeStyle = '#000000';\n\n this._resize_canvas = function (width, height, forward) {\n if (forward) {\n canvas_div.style.width = width + 'px';\n canvas_div.style.height = height + 'px';\n }\n };\n\n // Disable right mouse context menu.\n canvas_div.addEventListener('contextmenu', function (_e) {\n event.preventDefault();\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\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'mpl-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\n continue;\n }\n\n var button = (fig.buttons[name] = document.createElement('button'));\n button.classList = 'mpl-widget';\n button.setAttribute('role', 'button');\n button.setAttribute('aria-disabled', 'false');\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n\n var icon_img = document.createElement('img');\n icon_img.src = '_images/' + image + '.png';\n icon_img.srcset = '_images/' + image + '_large.png 2x';\n icon_img.alt = tooltip;\n button.appendChild(icon_img);\n\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n var fmt_picker = document.createElement('select');\n fmt_picker.classList = 'mpl-widget';\n toolbar.appendChild(fmt_picker);\n this.format_dropdown = fmt_picker;\n\n for (var ind in mpl.extensions) {\n var fmt = mpl.extensions[ind];\n var option = document.createElement('option');\n option.selected = fmt === mpl.default_extension;\n option.innerHTML = fmt;\n fmt_picker.appendChild(option);\n }\n\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n};\n\nmpl.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\nmpl.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\nmpl.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\nmpl.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\nmpl.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], msg['forward']);\n fig.send_message('refresh', {});\n }\n};\n\nmpl.figure.prototype.handle_rubberband = function (fig, msg) {\n var x0 = msg['x0'] / fig.ratio;\n var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n var x1 = msg['x1'] / fig.ratio;\n var y1 = (fig.canvas.height - msg['y1']) / fig.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,\n 0,\n fig.canvas.width / fig.ratio,\n fig.canvas.height / fig.ratio\n );\n\n fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n};\n\nmpl.figure.prototype.handle_figure_label = function (fig, msg) {\n // Updates the figure title.\n fig.header.textContent = msg['label'];\n};\n\nmpl.figure.prototype.handle_cursor = function (fig, msg) {\n fig.canvas_div.style.cursor = msg['cursor'];\n};\n\nmpl.figure.prototype.handle_message = function (fig, msg) {\n fig.message.textContent = msg['message'];\n};\n\nmpl.figure.prototype.handle_draw = function (fig, _msg) {\n // Request the server to send over a new figure.\n fig.send_draw_message();\n};\n\nmpl.figure.prototype.handle_image_mode = function (fig, msg) {\n fig.image_mode = msg['mode'];\n};\n\nmpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n for (var key in msg) {\n if (!(key in fig.buttons)) {\n continue;\n }\n fig.buttons[key].disabled = !msg[key];\n fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n }\n};\n\nmpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n if (msg['mode'] === 'PAN') {\n fig.buttons['Pan'].classList.add('active');\n fig.buttons['Zoom'].classList.remove('active');\n } else if (msg['mode'] === 'ZOOM') {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.add('active');\n } else {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.remove('active');\n }\n};\n\nmpl.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.\nmpl.figure.prototype._make_on_message_function = function (fig) {\n return function socket_on_message(evt) {\n if (evt.data instanceof Blob) {\n var img = evt.data;\n if (img.type !== 'image/png') {\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 img.type = 'image/png';\n }\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\n fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n img\n );\n fig.updated_canvas_event();\n fig.waiting = false;\n return;\n } else if (\n typeof evt.data === 'string' &&\n evt.data.slice(0, 21) === 'data:image/png;base64'\n ) {\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(\n \"No handler for the '\" + msg_type + \"' message type: \",\n msg\n );\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(\n \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n e,\n e.stack,\n msg\n );\n }\n }\n };\n};\n\nfunction getModifiers(event) {\n var mods = [];\n if (event.ctrlKey) {\n mods.push('ctrl');\n }\n if (event.altKey) {\n mods.push('alt');\n }\n if (event.shiftKey) {\n mods.push('shift');\n }\n if (event.metaKey) {\n mods.push('meta');\n }\n return mods;\n}\n\n/*\n * return a copy of an object with only non-object keys\n * we need this to avoid circular references\n * https://stackoverflow.com/a/24161582/3208463\n */\nfunction simpleKeys(original) {\n return Object.keys(original).reduce(function (obj, key) {\n if (typeof original[key] !== 'object') {\n obj[key] = original[key];\n }\n return obj;\n }, {});\n}\n\nmpl.figure.prototype.mouse_event = function (event, name) {\n if (name === 'button_press') {\n this.canvas.focus();\n this.canvas_div.focus();\n }\n\n // from https://stackoverflow.com/q/1114465\n var boundingRect = this.canvas.getBoundingClientRect();\n var x = (event.clientX - boundingRect.left) * this.ratio;\n var y = (event.clientY - boundingRect.top) * this.ratio;\n\n this.send_message(name, {\n x: x,\n y: y,\n button: event.button,\n step: event.step,\n modifiers: getModifiers(event),\n guiEvent: simpleKeys(event),\n });\n\n return false;\n};\n\nmpl.figure.prototype._key_event_extra = function (_event, _name) {\n // Handle any extra behaviour associated with a key event\n};\n\nmpl.figure.prototype.key_event = function (event, name) {\n // Prevent repeat events\n if (name === 'key_press') {\n if (event.key === this._key) {\n return;\n } else {\n this._key = event.key;\n }\n }\n if (name === 'key_release') {\n this._key = null;\n }\n\n var value = '';\n if (event.ctrlKey && event.key !== 'Control') {\n value += 'ctrl+';\n }\n else if (event.altKey && event.key !== 'Alt') {\n value += 'alt+';\n }\n else if (event.shiftKey && event.key !== 'Shift') {\n value += 'shift+';\n }\n\n value += 'k' + event.key;\n\n this._key_event_extra(event, name);\n\n this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n return false;\n};\n\nmpl.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\nmpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n this.message.textContent = tooltip;\n};\n\n///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n// prettier-ignore\nvar _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\nmpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n\nmpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n\nmpl.default_extension = \"png\";/* global mpl */\n\nvar 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.binaryType = comm.kernel.ws.binaryType;\n ws.readyState = comm.kernel.ws.readyState;\n function updateReadyState(_event) {\n if (comm.kernel.ws) {\n ws.readyState = comm.kernel.ws.readyState;\n } else {\n ws.readyState = 3; // Closed state.\n }\n }\n comm.kernel.ws.addEventListener('open', updateReadyState);\n comm.kernel.ws.addEventListener('close', updateReadyState);\n comm.kernel.ws.addEventListener('error', updateReadyState);\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 var data = msg['content']['data'];\n if (data['blob'] !== undefined) {\n data = {\n data: new Blob(msg['buffers'], { type: data['blob'] }),\n };\n }\n // Pass the mpl event to the overridden (by mpl) onmessage function.\n ws.onmessage(data);\n });\n return ws;\n};\n\nmpl.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 = document.getElementById(id);\n var ws_proxy = comm_websocket_adapter(comm);\n\n function ondownload(figure, _format) {\n window.open(figure.canvas.toDataURL());\n }\n\n var fig = new mpl.figure(id, ws_proxy, ondownload, element);\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;\n fig.cell_info = mpl.find_output_cell(\"
\");\n if (!fig.cell_info) {\n console.error('Failed to find cell for figure', id, fig);\n return;\n }\n fig.cell_info[0].output_area.element.on(\n 'cleared',\n { fig: fig },\n fig._remove_fig_handler\n );\n};\n\nmpl.figure.prototype.handle_close = function (fig, msg) {\n var width = fig.canvas.width / fig.ratio;\n fig.cell_info[0].output_area.element.off(\n 'cleared',\n fig._remove_fig_handler\n );\n fig.resizeObserverInstance.unobserve(fig.canvas_div);\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.innerHTML =\n '
';\n fig.close_ws(fig, msg);\n};\n\nmpl.figure.prototype.close_ws = function (fig, msg) {\n fig.send_message('closing', msg);\n // fig.ws.close()\n};\n\nmpl.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 / this.ratio;\n var dataURL = this.canvas.toDataURL();\n this.cell_info[1]['text/html'] =\n '
';\n};\n\nmpl.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 () {\n fig.push_to_output();\n }, 1000);\n};\n\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'btn-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n var button;\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n continue;\n }\n\n button = fig.buttons[name] = document.createElement('button');\n button.classList = 'btn btn-default';\n button.href = '#';\n button.title = name;\n button.innerHTML = '';\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n // Add the status bar.\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message pull-right';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n\n // Add the close button to the window.\n var buttongrp = document.createElement('div');\n buttongrp.classList = 'btn-group inline pull-right';\n button = document.createElement('button');\n button.classList = 'btn btn-mini btn-primary';\n button.href = '#';\n button.title = 'Stop Interaction';\n button.innerHTML = '';\n button.addEventListener('click', function (_evt) {\n fig.handle_close(fig, {});\n });\n button.addEventListener(\n 'mouseover',\n on_mouseover_closure('Stop Interaction')\n );\n buttongrp.appendChild(button);\n var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n titlebar.insertBefore(buttongrp, titlebar.firstChild);\n};\n\nmpl.figure.prototype._remove_fig_handler = function (event) {\n var fig = event.data.fig;\n if (event.target !== this) {\n // Ignore bubbled events from children.\n return;\n }\n fig.close_ws(fig, {});\n};\n\nmpl.figure.prototype._root_extra_style = function (el) {\n el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n};\n\nmpl.figure.prototype._canvas_extra_style = function (el) {\n // this is important to make the div 'focusable\n el.setAttribute('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 } else {\n // location in version 2\n IPython.keyboard_manager.register_events(el);\n }\n};\n\nmpl.figure.prototype._key_event_extra = function (event, _name) {\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\nmpl.figure.prototype.handle_save = function (fig, _msg) {\n fig.ondownload(fig, null);\n};\n\nmpl.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.\nif (IPython.notebook.kernel !== null) {\n IPython.notebook.kernel.comm_manager.register_target(\n 'matplotlib',\n mpl.mpl_figure_comm\n );\n}\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ ""
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[32m***** Response from calling tool (call_CgHll9hsFHau3D7dGfFSyV26) *****\u001b[0m\n",
+ "candle chart saved to
\n",
+ "\u001b[32m**********************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "\u001b[32m***** Suggested tool call (call_8KZ8d4jhghI3onwwGktEirtw): display_image *****\u001b[0m\n",
+ "Arguments: \n",
+ "{\"image_path\":\"microsoft_stock_price_chart.png\"}\n",
+ "\u001b[32m******************************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[35m\n",
+ ">>>>>>>> EXECUTING FUNCTION display_image...\u001b[0m\n"
+ ]
+ },
+ {
+ "data": {
+ "image/png": "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NjaWSZMmMXr0aEJDQ63rRUdHM3r06AZJDoQQoj2QAEQI0e6ZTCbrhV1qaionT56kpqbGenFrNBoZMmRIk2UsXbqUiRMnOnxO13V+/PFHVqxYQVJSEt9++22TZd1zzz3079/f4ePpp59uxRG2zBtvvEFmZiYAvr6+/Pe//2Xz5s28++67vPTSS9buQidPnuSTTz4B4PDhwwQHB2MwGIiOjiY5OZnXX3+dd999124gfHV1NcePH3e435qaGqZPn85nn33GG2+8QUpKCj179rQ+/+OPP1p/Lyws5J133rH+fcYZZ7Bt2zbefvttPvvsM/7v//6vxcddXV3N6tWrrX/PnTuXHTt2sGHDBrZv384ZZ5wB1AVf69evd6rMJ554wvr76aefTnJyMm+99Rbbt2/niiuusD73+uuvN5ruefDgwWzfvp033niDbdu22b3PLGOUoK61KCsrC39/fxRFYd26dbz99tvW+oeFhVnXPXz4cKN1njZtGlu3bmXjxo28/fbbDBgwgHXr1jFgwADrOmPHjmXdunX8+9//dup1EEIIT5IARAjRIYwYMcL6+9dff203/mPIkCF2g8odMRqN/Oc//+HZZ59lzJgxDdLjWmRnZ3PDDTfw22+/uazurmbbp/+iiy6y62501llnsXjxYpYuXcqrr77KlClTABg0aBCbNm1iz549vPPOO3bpfm3vnAONtgL5+fnxwAMPWLsihYaGMn36dOvzRUVF1t93795t19Xr/vvvJzIyEqgLmu6//367C25nWMZnWMq49dZbrS0+YWFhzJkzx7rujh07mi3v+PHj/Prrr9a/77zzTuu4GVVVufnmm5k7dy7//ve/eeutt/D393dYzm233UZERARQ16oxY8YM63OW+kLd6/fGG2/w/fffk5yczFlnnWV9rrq62u6clJWVNVrv+fPnoygKADExMc0epxBCtDcyBkQI0SGMGjWKjz76CKgLQGyzYdl20WpOYmIiiYmJFBUV8eWXX/Lll1+ya9cuTp48aV2ntLSU5557jkceecRhGU3NA9KacQ0tZXvRfPrppzd4fu7cuY1uazQaycjIYOPGjfzwww/Wwei2bDOG2erRowfBwcF2y2wvmmtqaqy/p6amWn/38/Oztk7Y1mPo0KHs3Lmz0brWd+TIEbt91S/T1rFjx6iurm4yMLUtDxq+ltHR0SxZsqTZetXfzrZrmu1rYmEwGDCbzbzxxhvs27ePH374gV9//dWaAAEaPweqqjoc2C6EEB2JBCBCiA7BNsj45ptv7C6anQlAdF2noKAAg8FAly5d6NKlC0lJSSQlJQF1WYyWLFlivfP8v//9r9GynJ0HxF1sWygauyvvSEpKCn//+99JT0+3LjMajQwfPtyuq1Bj6gcflu0dse2uFB4ebr1jbyskJMSZalu1ZHyOrusUFxc3ObFj/fICAgJaVB+L+i1Itq1rtkEF1AU9S5cutXu9FUWhb9++5ObmUlBQ0Oy+Gmu9E0KIjkICECFEh9CnTx/CwsIoLCwkPT3dGoAYDAbOPPPMJre9/PLL+fnnn6mpqeHSSy9lxYoVDdaZNGkSl156KS+//DJQNzlhexUcHGzt7lRSUtLgeV3XG1zw79mzh0WLFlFbW4uvry/XX3895513HgMHDsTHx4eBAwc2u9/mUtHash1UXVxc7HCdlr7GtgFCcHAwn332WZPrBwYGNvl8/YCquLiY8PBwu2WOXsv6nA0ISktLufbaa63JA2bMmMHFF1/MsGHDCA4O5uqrr+a7775rsozGMnEJIURHImNAhBAdgqIoduNALF1bBgwY4PDOvK3Y2Fjr+tu3b7frl2/LtlWlsS5W7UGfPn2svzuaMPHWW29l4sSJXH/99dZZ1998801rt54///nP3HLLLQwdOhSj0dggla8r2M4iX15e3mCW7tLSUvbv39+iMm3nZiktLSUrK4ugoCDrY+/evbz77rv8+OOPVFVVNRs42KbHhYavZXFxMSNGjOCSSy7hjjvusM5F01rJycnW1/q0007jX//6F2PHjrW+f50JyJwNAuu3vAghRHsiAYgQosNwlGrXme5XtoOCCwsL+etf/2qXprW2tpZXX32VrVu3Wpe1ZB4JT7PNspSSksKmTZusf+/Zs4dt27aRnp7Ojh07rF3KbIOrH374gcrKSqCuBaX+WJfGxh+0xPDhw+1aQR544AEKCwuBugHXDz74YKMtI40ZNWqUXZnLli2zllFYWMgDDzzAww8/zDXXXMODDz7YbHk9evSwC+YeffRR6/tC13WeeuopysrKOHDgAJs3b27QOtJStufg5MmT1nEytbW1rFmzxi7xgdlsbnH5tpMXWlrIJBARQrRH0gVLCNFh2LaAWDQ1/4fFpEmTOOecc/jqq6+AujEkkydPpmfPngQFBXHixAm7VpHQ0NAmB3J72xVXXMErr7xCZmYmtbW13HrrrTz++OOEhIRw4MABawARExPDn/70J6Cu1WTXrl1AXbrciRMn0r17dw4fPtwg41JTGZicFRQUxDXXXGOdoG/v3r1MnDiRfv368dtvv1FQUGA3OaQzAgMDmTNnjjXV8TfffMOECRPo27cvR48etQYjBoOB66+/3qky//rXv7Jo0SIAfvnlF6ZOncppp51GQUGB3ViZK664os0BiG2wU1ZWxvTp0xkwYABpaWkNWqFacw5s67djxw5mzpxJaWkpmzdvbn2lhRDCDaQFRAjRYQwaNKhBv35HQYkjTz/9tF3a05qaGn755Rf27t1rF3xERUXx7LPPYjKZXFNpNwgJCeHZZ5+1G2B9/PhxfvrpJ2vwERwczJNPPmltMZgzZ441VSzUzX6+Z88eysrK8PX1tety1tiM8i114403cv7551v/LisrY8+ePRQUFBATE8OCBQtaXObChQutiQOgrivW3r17rcGHoig8/PDDDBo0yKnypk6dyq233mr9u6qqip9++sku+Bg1ahS33357i+ta34QJE+wmBqyoqGDPnj3W4KNr167W51qTBvq8886z/m6Z28aSDUwIIdoTCUCEEB2Gj48Pw4YNs/7dp08fu4vqpoSGhrJ+/Xqefvpppk6dislkwt/fH6PRSExMDGeddRZ33HEHmzdvdqpVxdsGDx7Mxo0bmT9/Pn379rUeS8+ePZk1axYfffSR3cVuXFwcb775JhdddBERERH4+PgQGRlJYmIir776Ktdee6113ZSUFJfU0dfXl2effZZ7772Xfv36YTQaiY2N5S9/+QsffPAB3bp1a3GZBoOBJ554gscff5yxY8cSGRmJj48P4eHhJCYm8vLLL7c4Q9nChQt57bXXuOCCC4iOjsbHx4eQkBCGDx/OsmXLWLduXaszZNWv+9q1a5kzZw4mkwkfHx+Cg4MZMWIE//73v+1mW//mm2/s5lVxxsUXX8wdd9xBt27d8PX1JTIykgkTJlBVVdXmugshhCspunQQFUIIIYQQQniItIAIIYQQQgghPEYCECGEEEIIIYTHSAAihBBCCCGE8BgJQIQQQgghhBAeIwGIEEIIIYQQwmMkABFCCCGEEEJ4jAQgQgghhBBCCI+RAEQIIYQQQgjhMRKACCGEEEIIITxGAhAhhBBC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wePHj2XSThPRr0GcMWMG586d48GDB7i7u9OiRQsmTZrEnDlzmDlzJh9++CF//fUXLi4u3L59m4sXL7Jr1y6phTcDOcIiX9Afanf8+PHs37+fkiVLolar+eyzz9i0aRMAH374IV27duU///kP69ev58GDB7p1SPBhHiqViuTkZD744ANKlSrF5s2bmT17NpMmTSI6Opr169dz5MgREhISdL/x9vamd+/evPnmm2zdupXY2FgJPowgPj6e/fv3M23aNPr168fo0aPZunUrYWFhKIqiy7Bu2bKFqKgoXRMFAHt7e8qVKydDuppYXFwcLVq04I033iAxMVH3nEpISODGjRtER0cD8PPPP/P111/TrVs3tmzZQkREBGvXrmXTpk04Ozszc+ZMKleubMldKRS0QXpycjLly5fn6NGjPHjwgEWLFnH+/Hnefvtthg8fzpMnT+jYsSNdunRh6NChxMfHM2TIELy8vChfvrzcVyakDR5mzJjBH3/8wdtvv83XX3/N+PHjOX/+PN27d6dSpUrMnz+f3r17c+LECU6dOkVycjI7duzAz8/PwntQOEiOTFg9/Xacy5cv5+bNm6xevZr69evz448/Mm/ePNauXUtycjKjRo3iww8/xMbGhu3bt+Pg4KAbM1+Yxu3bt7G1taVixYq6z8LDw3n8+DEjRozA29ubsLAwfv/9d7p27cqFCxdYtmwZiqLQtWtXnJ2ddefX0dGRpKQkCT6MICYmhhEjRpCYmIi9vT1+fn4EBgbyySefcODAAd5++23eeOMN/P392bZtG87OzgQEBODh4UFERAQ3btzA29tb1yxImMbFixeJiYkhJiaGfv36sXv3bhwdHbGzs6Nt27bUqFGDJ0+e8MEHHzBs2DA6dOhAdHQ0tra2XLp0icjISLp165ahQ60wLu17SFu6bmtrS1JSEpUrV2bXrl3079+fOXPmMG/ePIYMGULbtm356aefiI6OpkSJEvTu3RtIDfZdXFwoUaKEhfeoYAsKCuLcuXOMHTuWN954A0dHR0qUKMHSpUsJCAjg3r17+Pj4MH36dN59910cHR1JSUnB0dHR0kkvNCRXJqxSfHw8V65coWHDhrqHfkpKCpcvX6Zz587UrVuXhIQEbt++rRvucP369Tg4ODBs2DBmzJiBs7Mz3bp1k+DDhG7evEnXrl3x8fFhw4YNVKpUCUgt1b17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",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[32m***** Response from calling tool (call_8KZ8d4jhghI3onwwGktEirtw) *****\u001b[0m\n",
+ "None\n",
+ "\u001b[32m**********************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "Optimize the fast/slow parameters based on this image
. TERMINATE\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "########## Optimize the fast/slow parameters based on this image
. TERMINATE\n",
+ "\u001b[33mUser_Proxy\u001b[0m (to Trade_Strategist):\n",
+ "\n",
+ "Optimize the fast/slow parameters based on this image . \n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[31m\n",
+ ">>>>>>>> USING AUTO REPLY...\u001b[0m\n",
+ "\u001b[33mTrade_Strategist\u001b[0m (to User_Proxy):\n",
+ "\n",
+ "Based on the provided candlestick chart of Microsoft's stock price with a 50-day (fast) and a 200-day (slow) Simple Moving Average (SMA), we can observe several crossovers that could have served as buy or sell signals. However, it seems that the 50/200-day combination might be too slow to capture shorter-term trends and may result in late entries and exits.\n",
+ "\n",
+ "To optimize the parameters, we might consider shortening the time frames to capture trends more quickly. A common approach is to adjust the fast SMA to a shorter period and see if it provides better entry and exit points.\n",
+ "\n",
+ "2. Let's backtest a strategy with a 20-day SMA as the fast parameter and a 100-day SMA as the slow parameter. Please run the backtest for the SMACrossover strategy using these new parameters and report the results back for further analysis.\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "Reflecting strategist's response ...\n",
+ "\u001b[34m\n",
+ "********************************************************************************\u001b[0m\n",
+ "\u001b[34mStarting a new chat....\u001b[0m\n",
+ "\u001b[34m\n",
+ "********************************************************************************\u001b[0m\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "Message from Trade Strategist is as follows:Based on the provided candlestick chart of Microsoft's stock price with a 50-day (fast) and a 200-day (slow) Simple Moving Average (SMA), we can observe several crossovers that could have served as buy or sell signals. However, it seems that the 50/200-day combination might be too slow to capture shorter-term trends and may result in late entries and exits.\n",
+ "\n",
+ "To optimize the parameters, we might consider shortening the time frames to capture trends more quickly. A common approach is to adjust the fast SMA to a shorter period and see if it provides better entry and exit points.\n",
+ "\n",
+ "2. Let's backtest a strategy with a 20-day SMA as the fast parameter and a 100-day SMA as the slow parameter. Please run the backtest for the SMACrossover strategy using these new parameters and report the results back for further analysis.\n",
+ "\n",
+ "Based on his information, conduct a backtest on the specified stock and strategy, and report your backtesting results back to the strategist.\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "\u001b[32m***** Suggested tool call (call_7Pe1hFOeLhmLJTOHRSWGCgIb): back_test *****\u001b[0m\n",
+ "Arguments: \n",
+ "{\"ticker_symbol\":\"MSFT\",\"start_date\":\"2020-01-01\",\"end_date\":\"2022-12-31\",\"strategy\":\"SMA_CrossOver\",\"strategy_params\":\"{\\\"fast\\\":20,\\\"slow\\\":100}\",\"save_fig\":\"test.png\"}\n",
+ "\u001b[32m**************************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[35m\n",
+ ">>>>>>>> EXECUTING FUNCTION back_test...\u001b[0m\n"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "[*********************100%%**********************] 1 of 1 completed\n"
+ ]
+ },
+ {
+ "data": {
+ "application/javascript": "/* Put everything inside the global mpl namespace */\n/* global mpl */\nwindow.mpl = {};\n\nmpl.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(\n '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\nmpl.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 = document.createElement('div');\n this.root.setAttribute('style', 'display: inline-block');\n this._root_extra_style(this.root);\n\n parent_element.appendChild(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 (fig.ratio !== 1) {\n fig.send_message('set_device_pixel_ratio', {\n device_pixel_ratio: fig.ratio,\n });\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 fig.ws.close();\n };\n\n this.ws.onmessage = this._make_on_message_function(this);\n\n this.ondownload = ondownload;\n};\n\nmpl.figure.prototype._init_header = function () {\n var titlebar = document.createElement('div');\n titlebar.classList =\n 'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n var titletext = document.createElement('div');\n titletext.classList = 'ui-dialog-title';\n titletext.setAttribute(\n 'style',\n 'width: 100%; text-align: center; padding: 3px;'\n );\n titlebar.appendChild(titletext);\n this.root.appendChild(titlebar);\n this.header = titletext;\n};\n\nmpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._init_canvas = function () {\n var fig = this;\n\n var canvas_div = (this.canvas_div = document.createElement('div'));\n canvas_div.setAttribute('tabindex', '0');\n canvas_div.setAttribute(\n 'style',\n 'border: 1px solid #ddd;' +\n 'box-sizing: content-box;' +\n 'clear: both;' +\n 'min-height: 1px;' +\n 'min-width: 1px;' +\n 'outline: 0;' +\n 'overflow: hidden;' +\n 'position: relative;' +\n 'resize: both;' +\n 'z-index: 2;'\n );\n\n function on_keyboard_event_closure(name) {\n return function (event) {\n return fig.key_event(event, name);\n };\n }\n\n canvas_div.addEventListener(\n 'keydown',\n on_keyboard_event_closure('key_press')\n );\n canvas_div.addEventListener(\n 'keyup',\n on_keyboard_event_closure('key_release')\n );\n\n this._canvas_extra_style(canvas_div);\n this.root.appendChild(canvas_div);\n\n var canvas = (this.canvas = document.createElement('canvas'));\n canvas.classList.add('mpl-canvas');\n canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'pointer-events: none;' +\n 'position: relative;' +\n 'z-index: 0;'\n );\n\n this.context = canvas.getContext('2d');\n\n var backingStore =\n this.context.backingStorePixelRatio ||\n this.context.webkitBackingStorePixelRatio ||\n this.context.mozBackingStorePixelRatio ||\n this.context.msBackingStorePixelRatio ||\n this.context.oBackingStorePixelRatio ||\n this.context.backingStorePixelRatio ||\n 1;\n\n this.ratio = (window.devicePixelRatio || 1) / backingStore;\n\n var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n 'canvas'\n ));\n rubberband_canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'left: 0;' +\n 'pointer-events: none;' +\n 'position: absolute;' +\n 'top: 0;' +\n 'z-index: 1;'\n );\n\n // Apply a ponyfill if ResizeObserver is not implemented by browser.\n if (this.ResizeObserver === undefined) {\n if (window.ResizeObserver !== undefined) {\n this.ResizeObserver = window.ResizeObserver;\n } else {\n var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n this.ResizeObserver = obs.ResizeObserver;\n }\n }\n\n this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n var nentries = entries.length;\n for (var i = 0; i < nentries; i++) {\n var entry = entries[i];\n var width, height;\n if (entry.contentBoxSize) {\n if (entry.contentBoxSize instanceof Array) {\n // Chrome 84 implements new version of spec.\n width = entry.contentBoxSize[0].inlineSize;\n height = entry.contentBoxSize[0].blockSize;\n } else {\n // Firefox implements old version of spec.\n width = entry.contentBoxSize.inlineSize;\n height = entry.contentBoxSize.blockSize;\n }\n } else {\n // Chrome <84 implements even older version of spec.\n width = entry.contentRect.width;\n height = entry.contentRect.height;\n }\n\n // Keep the size of the canvas and rubber band canvas in sync with\n // the canvas container.\n if (entry.devicePixelContentBoxSize) {\n // Chrome 84 implements new version of spec.\n canvas.setAttribute(\n 'width',\n entry.devicePixelContentBoxSize[0].inlineSize\n );\n canvas.setAttribute(\n 'height',\n entry.devicePixelContentBoxSize[0].blockSize\n );\n } else {\n canvas.setAttribute('width', width * fig.ratio);\n canvas.setAttribute('height', height * fig.ratio);\n }\n /* This rescales the canvas back to display pixels, so that it\n * appears correct on HiDPI screens. */\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n\n rubberband_canvas.setAttribute('width', width);\n rubberband_canvas.setAttribute('height', height);\n\n // And update the size in Python. We ignore the initial 0/0 size\n // that occurs as the element is placed into the DOM, which should\n // otherwise not happen due to the minimum size styling.\n if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n fig.request_resize(width, height);\n }\n }\n });\n this.resizeObserverInstance.observe(canvas_div);\n\n function on_mouse_event_closure(name) {\n /* User Agent sniffing is bad, but WebKit is busted:\n * https://bugs.webkit.org/show_bug.cgi?id=144526\n * https://bugs.webkit.org/show_bug.cgi?id=181818\n * The worst that happens here is that they get an extra browser\n * selection when dragging, if this check fails to catch them.\n */\n var UA = navigator.userAgent;\n var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n if(isWebKit) {\n return function (event) {\n /* This prevents the web browser from automatically changing to\n * the text insertion cursor when the button is pressed. We\n * want to control all of the cursor setting manually through\n * the 'cursor' event from matplotlib */\n event.preventDefault()\n return fig.mouse_event(event, name);\n };\n } else {\n return function (event) {\n return fig.mouse_event(event, name);\n };\n }\n }\n\n canvas_div.addEventListener(\n 'mousedown',\n on_mouse_event_closure('button_press')\n );\n canvas_div.addEventListener(\n 'mouseup',\n on_mouse_event_closure('button_release')\n );\n canvas_div.addEventListener(\n 'dblclick',\n on_mouse_event_closure('dblclick')\n );\n // Throttle sequential mouse events to 1 every 20ms.\n canvas_div.addEventListener(\n 'mousemove',\n on_mouse_event_closure('motion_notify')\n );\n\n canvas_div.addEventListener(\n 'mouseenter',\n on_mouse_event_closure('figure_enter')\n );\n canvas_div.addEventListener(\n 'mouseleave',\n on_mouse_event_closure('figure_leave')\n );\n\n canvas_div.addEventListener('wheel', function (event) {\n if (event.deltaY < 0) {\n event.step = 1;\n } else {\n event.step = -1;\n }\n on_mouse_event_closure('scroll')(event);\n });\n\n canvas_div.appendChild(canvas);\n canvas_div.appendChild(rubberband_canvas);\n\n this.rubberband_context = rubberband_canvas.getContext('2d');\n this.rubberband_context.strokeStyle = '#000000';\n\n this._resize_canvas = function (width, height, forward) {\n if (forward) {\n canvas_div.style.width = width + 'px';\n canvas_div.style.height = height + 'px';\n }\n };\n\n // Disable right mouse context menu.\n canvas_div.addEventListener('contextmenu', function (_e) {\n event.preventDefault();\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\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'mpl-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\n continue;\n }\n\n var button = (fig.buttons[name] = document.createElement('button'));\n button.classList = 'mpl-widget';\n button.setAttribute('role', 'button');\n button.setAttribute('aria-disabled', 'false');\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n\n var icon_img = document.createElement('img');\n icon_img.src = '_images/' + image + '.png';\n icon_img.srcset = '_images/' + image + '_large.png 2x';\n icon_img.alt = tooltip;\n button.appendChild(icon_img);\n\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n var fmt_picker = document.createElement('select');\n fmt_picker.classList = 'mpl-widget';\n toolbar.appendChild(fmt_picker);\n this.format_dropdown = fmt_picker;\n\n for (var ind in mpl.extensions) {\n var fmt = mpl.extensions[ind];\n var option = document.createElement('option');\n option.selected = fmt === mpl.default_extension;\n option.innerHTML = fmt;\n fmt_picker.appendChild(option);\n }\n\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n};\n\nmpl.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\nmpl.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\nmpl.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\nmpl.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\nmpl.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], msg['forward']);\n fig.send_message('refresh', {});\n }\n};\n\nmpl.figure.prototype.handle_rubberband = function (fig, msg) {\n var x0 = msg['x0'] / fig.ratio;\n var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n var x1 = msg['x1'] / fig.ratio;\n var y1 = (fig.canvas.height - msg['y1']) / fig.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,\n 0,\n fig.canvas.width / fig.ratio,\n fig.canvas.height / fig.ratio\n );\n\n fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n};\n\nmpl.figure.prototype.handle_figure_label = function (fig, msg) {\n // Updates the figure title.\n fig.header.textContent = msg['label'];\n};\n\nmpl.figure.prototype.handle_cursor = function (fig, msg) {\n fig.canvas_div.style.cursor = msg['cursor'];\n};\n\nmpl.figure.prototype.handle_message = function (fig, msg) {\n fig.message.textContent = msg['message'];\n};\n\nmpl.figure.prototype.handle_draw = function (fig, _msg) {\n // Request the server to send over a new figure.\n fig.send_draw_message();\n};\n\nmpl.figure.prototype.handle_image_mode = function (fig, msg) {\n fig.image_mode = msg['mode'];\n};\n\nmpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n for (var key in msg) {\n if (!(key in fig.buttons)) {\n continue;\n }\n fig.buttons[key].disabled = !msg[key];\n fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n }\n};\n\nmpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n if (msg['mode'] === 'PAN') {\n fig.buttons['Pan'].classList.add('active');\n fig.buttons['Zoom'].classList.remove('active');\n } else if (msg['mode'] === 'ZOOM') {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.add('active');\n } else {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.remove('active');\n }\n};\n\nmpl.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.\nmpl.figure.prototype._make_on_message_function = function (fig) {\n return function socket_on_message(evt) {\n if (evt.data instanceof Blob) {\n var img = evt.data;\n if (img.type !== 'image/png') {\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 img.type = 'image/png';\n }\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\n fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n img\n );\n fig.updated_canvas_event();\n fig.waiting = false;\n return;\n } else if (\n typeof evt.data === 'string' &&\n evt.data.slice(0, 21) === 'data:image/png;base64'\n ) {\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(\n \"No handler for the '\" + msg_type + \"' message type: \",\n msg\n );\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(\n \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n e,\n e.stack,\n msg\n );\n }\n }\n };\n};\n\nfunction getModifiers(event) {\n var mods = [];\n if (event.ctrlKey) {\n mods.push('ctrl');\n }\n if (event.altKey) {\n mods.push('alt');\n }\n if (event.shiftKey) {\n mods.push('shift');\n }\n if (event.metaKey) {\n mods.push('meta');\n }\n return mods;\n}\n\n/*\n * return a copy of an object with only non-object keys\n * we need this to avoid circular references\n * https://stackoverflow.com/a/24161582/3208463\n */\nfunction simpleKeys(original) {\n return Object.keys(original).reduce(function (obj, key) {\n if (typeof original[key] !== 'object') {\n obj[key] = original[key];\n }\n return obj;\n }, {});\n}\n\nmpl.figure.prototype.mouse_event = function (event, name) {\n if (name === 'button_press') {\n this.canvas.focus();\n this.canvas_div.focus();\n }\n\n // from https://stackoverflow.com/q/1114465\n var boundingRect = this.canvas.getBoundingClientRect();\n var x = (event.clientX - boundingRect.left) * this.ratio;\n var y = (event.clientY - boundingRect.top) * this.ratio;\n\n this.send_message(name, {\n x: x,\n y: y,\n button: event.button,\n step: event.step,\n modifiers: getModifiers(event),\n guiEvent: simpleKeys(event),\n });\n\n return false;\n};\n\nmpl.figure.prototype._key_event_extra = function (_event, _name) {\n // Handle any extra behaviour associated with a key event\n};\n\nmpl.figure.prototype.key_event = function (event, name) {\n // Prevent repeat events\n if (name === 'key_press') {\n if (event.key === this._key) {\n return;\n } else {\n this._key = event.key;\n }\n }\n if (name === 'key_release') {\n this._key = null;\n }\n\n var value = '';\n if (event.ctrlKey && event.key !== 'Control') {\n value += 'ctrl+';\n }\n else if (event.altKey && event.key !== 'Alt') {\n value += 'alt+';\n }\n else if (event.shiftKey && event.key !== 'Shift') {\n value += 'shift+';\n }\n\n value += 'k' + event.key;\n\n this._key_event_extra(event, name);\n\n this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n return false;\n};\n\nmpl.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\nmpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n this.message.textContent = tooltip;\n};\n\n///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n// prettier-ignore\nvar _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\nmpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n\nmpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n\nmpl.default_extension = \"png\";/* global mpl */\n\nvar 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.binaryType = comm.kernel.ws.binaryType;\n ws.readyState = comm.kernel.ws.readyState;\n function updateReadyState(_event) {\n if (comm.kernel.ws) {\n ws.readyState = comm.kernel.ws.readyState;\n } else {\n ws.readyState = 3; // Closed state.\n }\n }\n comm.kernel.ws.addEventListener('open', updateReadyState);\n comm.kernel.ws.addEventListener('close', updateReadyState);\n comm.kernel.ws.addEventListener('error', updateReadyState);\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 var data = msg['content']['data'];\n if (data['blob'] !== undefined) {\n data = {\n data: new Blob(msg['buffers'], { type: data['blob'] }),\n };\n }\n // Pass the mpl event to the overridden (by mpl) onmessage function.\n ws.onmessage(data);\n });\n return ws;\n};\n\nmpl.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 = document.getElementById(id);\n var ws_proxy = comm_websocket_adapter(comm);\n\n function ondownload(figure, _format) {\n window.open(figure.canvas.toDataURL());\n }\n\n var fig = new mpl.figure(id, ws_proxy, ondownload, element);\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;\n fig.cell_info = mpl.find_output_cell(\"\");\n if (!fig.cell_info) {\n console.error('Failed to find cell for figure', id, fig);\n return;\n }\n fig.cell_info[0].output_area.element.on(\n 'cleared',\n { fig: fig },\n fig._remove_fig_handler\n );\n};\n\nmpl.figure.prototype.handle_close = function (fig, msg) {\n var width = fig.canvas.width / fig.ratio;\n fig.cell_info[0].output_area.element.off(\n 'cleared',\n fig._remove_fig_handler\n );\n fig.resizeObserverInstance.unobserve(fig.canvas_div);\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.innerHTML =\n '
';\n fig.close_ws(fig, msg);\n};\n\nmpl.figure.prototype.close_ws = function (fig, msg) {\n fig.send_message('closing', msg);\n // fig.ws.close()\n};\n\nmpl.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 / this.ratio;\n var dataURL = this.canvas.toDataURL();\n this.cell_info[1]['text/html'] =\n '
';\n};\n\nmpl.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 () {\n fig.push_to_output();\n }, 1000);\n};\n\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'btn-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n var button;\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n continue;\n }\n\n button = fig.buttons[name] = document.createElement('button');\n button.classList = 'btn btn-default';\n button.href = '#';\n button.title = name;\n button.innerHTML = '';\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n // Add the status bar.\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message pull-right';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n\n // Add the close button to the window.\n var buttongrp = document.createElement('div');\n buttongrp.classList = 'btn-group inline pull-right';\n button = document.createElement('button');\n button.classList = 'btn btn-mini btn-primary';\n button.href = '#';\n button.title = 'Stop Interaction';\n button.innerHTML = '';\n button.addEventListener('click', function (_evt) {\n fig.handle_close(fig, {});\n });\n button.addEventListener(\n 'mouseover',\n on_mouseover_closure('Stop Interaction')\n );\n buttongrp.appendChild(button);\n var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n titlebar.insertBefore(buttongrp, titlebar.firstChild);\n};\n\nmpl.figure.prototype._remove_fig_handler = function (event) {\n var fig = event.data.fig;\n if (event.target !== this) {\n // Ignore bubbled events from children.\n return;\n }\n fig.close_ws(fig, {});\n};\n\nmpl.figure.prototype._root_extra_style = function (el) {\n el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n};\n\nmpl.figure.prototype._canvas_extra_style = function (el) {\n // this is important to make the div 'focusable\n el.setAttribute('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 } else {\n // location in version 2\n IPython.keyboard_manager.register_events(el);\n }\n};\n\nmpl.figure.prototype._key_event_extra = function (event, _name) {\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\nmpl.figure.prototype.handle_save = function (fig, _msg) {\n fig.ondownload(fig, null);\n};\n\nmpl.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.\nif (IPython.notebook.kernel !== null) {\n IPython.notebook.kernel.comm_manager.register_target(\n 'matplotlib',\n mpl.mpl_figure_comm\n );\n}\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ ""
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/javascript": "/* Put everything inside the global mpl namespace */\n/* global mpl */\nwindow.mpl = {};\n\nmpl.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(\n '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\nmpl.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 = document.createElement('div');\n this.root.setAttribute('style', 'display: inline-block');\n this._root_extra_style(this.root);\n\n parent_element.appendChild(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 (fig.ratio !== 1) {\n fig.send_message('set_device_pixel_ratio', {\n device_pixel_ratio: fig.ratio,\n });\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 fig.ws.close();\n };\n\n this.ws.onmessage = this._make_on_message_function(this);\n\n this.ondownload = ondownload;\n};\n\nmpl.figure.prototype._init_header = function () {\n var titlebar = document.createElement('div');\n titlebar.classList =\n 'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n var titletext = document.createElement('div');\n titletext.classList = 'ui-dialog-title';\n titletext.setAttribute(\n 'style',\n 'width: 100%; text-align: center; padding: 3px;'\n );\n titlebar.appendChild(titletext);\n this.root.appendChild(titlebar);\n this.header = titletext;\n};\n\nmpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._init_canvas = function () {\n var fig = this;\n\n var canvas_div = (this.canvas_div = document.createElement('div'));\n canvas_div.setAttribute('tabindex', '0');\n canvas_div.setAttribute(\n 'style',\n 'border: 1px solid #ddd;' +\n 'box-sizing: content-box;' +\n 'clear: both;' +\n 'min-height: 1px;' +\n 'min-width: 1px;' +\n 'outline: 0;' +\n 'overflow: hidden;' +\n 'position: relative;' +\n 'resize: both;' +\n 'z-index: 2;'\n );\n\n function on_keyboard_event_closure(name) {\n return function (event) {\n return fig.key_event(event, name);\n };\n }\n\n canvas_div.addEventListener(\n 'keydown',\n on_keyboard_event_closure('key_press')\n );\n canvas_div.addEventListener(\n 'keyup',\n on_keyboard_event_closure('key_release')\n );\n\n this._canvas_extra_style(canvas_div);\n this.root.appendChild(canvas_div);\n\n var canvas = (this.canvas = document.createElement('canvas'));\n canvas.classList.add('mpl-canvas');\n canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'pointer-events: none;' +\n 'position: relative;' +\n 'z-index: 0;'\n );\n\n this.context = canvas.getContext('2d');\n\n var backingStore =\n this.context.backingStorePixelRatio ||\n this.context.webkitBackingStorePixelRatio ||\n this.context.mozBackingStorePixelRatio ||\n this.context.msBackingStorePixelRatio ||\n this.context.oBackingStorePixelRatio ||\n this.context.backingStorePixelRatio ||\n 1;\n\n this.ratio = (window.devicePixelRatio || 1) / backingStore;\n\n var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n 'canvas'\n ));\n rubberband_canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'left: 0;' +\n 'pointer-events: none;' +\n 'position: absolute;' +\n 'top: 0;' +\n 'z-index: 1;'\n );\n\n // Apply a ponyfill if ResizeObserver is not implemented by browser.\n if (this.ResizeObserver === undefined) {\n if (window.ResizeObserver !== undefined) {\n this.ResizeObserver = window.ResizeObserver;\n } else {\n var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n this.ResizeObserver = obs.ResizeObserver;\n }\n }\n\n this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n var nentries = entries.length;\n for (var i = 0; i < nentries; i++) {\n var entry = entries[i];\n var width, height;\n if (entry.contentBoxSize) {\n if (entry.contentBoxSize instanceof Array) {\n // Chrome 84 implements new version of spec.\n width = entry.contentBoxSize[0].inlineSize;\n height = entry.contentBoxSize[0].blockSize;\n } else {\n // Firefox implements old version of spec.\n width = entry.contentBoxSize.inlineSize;\n height = entry.contentBoxSize.blockSize;\n }\n } else {\n // Chrome <84 implements even older version of spec.\n width = entry.contentRect.width;\n height = entry.contentRect.height;\n }\n\n // Keep the size of the canvas and rubber band canvas in sync with\n // the canvas container.\n if (entry.devicePixelContentBoxSize) {\n // Chrome 84 implements new version of spec.\n canvas.setAttribute(\n 'width',\n entry.devicePixelContentBoxSize[0].inlineSize\n );\n canvas.setAttribute(\n 'height',\n entry.devicePixelContentBoxSize[0].blockSize\n );\n } else {\n canvas.setAttribute('width', width * fig.ratio);\n canvas.setAttribute('height', height * fig.ratio);\n }\n /* This rescales the canvas back to display pixels, so that it\n * appears correct on HiDPI screens. */\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n\n rubberband_canvas.setAttribute('width', width);\n rubberband_canvas.setAttribute('height', height);\n\n // And update the size in Python. We ignore the initial 0/0 size\n // that occurs as the element is placed into the DOM, which should\n // otherwise not happen due to the minimum size styling.\n if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n fig.request_resize(width, height);\n }\n }\n });\n this.resizeObserverInstance.observe(canvas_div);\n\n function on_mouse_event_closure(name) {\n /* User Agent sniffing is bad, but WebKit is busted:\n * https://bugs.webkit.org/show_bug.cgi?id=144526\n * https://bugs.webkit.org/show_bug.cgi?id=181818\n * The worst that happens here is that they get an extra browser\n * selection when dragging, if this check fails to catch them.\n */\n var UA = navigator.userAgent;\n var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n if(isWebKit) {\n return function (event) {\n /* This prevents the web browser from automatically changing to\n * the text insertion cursor when the button is pressed. We\n * want to control all of the cursor setting manually through\n * the 'cursor' event from matplotlib */\n event.preventDefault()\n return fig.mouse_event(event, name);\n };\n } else {\n return function (event) {\n return fig.mouse_event(event, name);\n };\n }\n }\n\n canvas_div.addEventListener(\n 'mousedown',\n on_mouse_event_closure('button_press')\n );\n canvas_div.addEventListener(\n 'mouseup',\n on_mouse_event_closure('button_release')\n );\n canvas_div.addEventListener(\n 'dblclick',\n on_mouse_event_closure('dblclick')\n );\n // Throttle sequential mouse events to 1 every 20ms.\n canvas_div.addEventListener(\n 'mousemove',\n on_mouse_event_closure('motion_notify')\n );\n\n canvas_div.addEventListener(\n 'mouseenter',\n on_mouse_event_closure('figure_enter')\n );\n canvas_div.addEventListener(\n 'mouseleave',\n on_mouse_event_closure('figure_leave')\n );\n\n canvas_div.addEventListener('wheel', function (event) {\n if (event.deltaY < 0) {\n event.step = 1;\n } else {\n event.step = -1;\n }\n on_mouse_event_closure('scroll')(event);\n });\n\n canvas_div.appendChild(canvas);\n canvas_div.appendChild(rubberband_canvas);\n\n this.rubberband_context = rubberband_canvas.getContext('2d');\n this.rubberband_context.strokeStyle = '#000000';\n\n this._resize_canvas = function (width, height, forward) {\n if (forward) {\n canvas_div.style.width = width + 'px';\n canvas_div.style.height = height + 'px';\n }\n };\n\n // Disable right mouse context menu.\n canvas_div.addEventListener('contextmenu', function (_e) {\n event.preventDefault();\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\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'mpl-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\n continue;\n }\n\n var button = (fig.buttons[name] = document.createElement('button'));\n button.classList = 'mpl-widget';\n button.setAttribute('role', 'button');\n button.setAttribute('aria-disabled', 'false');\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n\n var icon_img = document.createElement('img');\n icon_img.src = '_images/' + image + '.png';\n icon_img.srcset = '_images/' + image + '_large.png 2x';\n icon_img.alt = tooltip;\n button.appendChild(icon_img);\n\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n var fmt_picker = document.createElement('select');\n fmt_picker.classList = 'mpl-widget';\n toolbar.appendChild(fmt_picker);\n this.format_dropdown = fmt_picker;\n\n for (var ind in mpl.extensions) {\n var fmt = mpl.extensions[ind];\n var option = document.createElement('option');\n option.selected = fmt === mpl.default_extension;\n option.innerHTML = fmt;\n fmt_picker.appendChild(option);\n }\n\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n};\n\nmpl.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\nmpl.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\nmpl.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\nmpl.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\nmpl.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], msg['forward']);\n fig.send_message('refresh', {});\n }\n};\n\nmpl.figure.prototype.handle_rubberband = function (fig, msg) {\n var x0 = msg['x0'] / fig.ratio;\n var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n var x1 = msg['x1'] / fig.ratio;\n var y1 = (fig.canvas.height - msg['y1']) / fig.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,\n 0,\n fig.canvas.width / fig.ratio,\n fig.canvas.height / fig.ratio\n );\n\n fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n};\n\nmpl.figure.prototype.handle_figure_label = function (fig, msg) {\n // Updates the figure title.\n fig.header.textContent = msg['label'];\n};\n\nmpl.figure.prototype.handle_cursor = function (fig, msg) {\n fig.canvas_div.style.cursor = msg['cursor'];\n};\n\nmpl.figure.prototype.handle_message = function (fig, msg) {\n fig.message.textContent = msg['message'];\n};\n\nmpl.figure.prototype.handle_draw = function (fig, _msg) {\n // Request the server to send over a new figure.\n fig.send_draw_message();\n};\n\nmpl.figure.prototype.handle_image_mode = function (fig, msg) {\n fig.image_mode = msg['mode'];\n};\n\nmpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n for (var key in msg) {\n if (!(key in fig.buttons)) {\n continue;\n }\n fig.buttons[key].disabled = !msg[key];\n fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n }\n};\n\nmpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n if (msg['mode'] === 'PAN') {\n fig.buttons['Pan'].classList.add('active');\n fig.buttons['Zoom'].classList.remove('active');\n } else if (msg['mode'] === 'ZOOM') {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.add('active');\n } else {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.remove('active');\n }\n};\n\nmpl.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.\nmpl.figure.prototype._make_on_message_function = function (fig) {\n return function socket_on_message(evt) {\n if (evt.data instanceof Blob) {\n var img = evt.data;\n if (img.type !== 'image/png') {\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 img.type = 'image/png';\n }\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\n fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n img\n );\n fig.updated_canvas_event();\n fig.waiting = false;\n return;\n } else if (\n typeof evt.data === 'string' &&\n evt.data.slice(0, 21) === 'data:image/png;base64'\n ) {\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(\n \"No handler for the '\" + msg_type + \"' message type: \",\n msg\n );\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(\n \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n e,\n e.stack,\n msg\n );\n }\n }\n };\n};\n\nfunction getModifiers(event) {\n var mods = [];\n if (event.ctrlKey) {\n mods.push('ctrl');\n }\n if (event.altKey) {\n mods.push('alt');\n }\n if (event.shiftKey) {\n mods.push('shift');\n }\n if (event.metaKey) {\n mods.push('meta');\n }\n return mods;\n}\n\n/*\n * return a copy of an object with only non-object keys\n * we need this to avoid circular references\n * https://stackoverflow.com/a/24161582/3208463\n */\nfunction simpleKeys(original) {\n return Object.keys(original).reduce(function (obj, key) {\n if (typeof original[key] !== 'object') {\n obj[key] = original[key];\n }\n return obj;\n }, {});\n}\n\nmpl.figure.prototype.mouse_event = function (event, name) {\n if (name === 'button_press') {\n this.canvas.focus();\n this.canvas_div.focus();\n }\n\n // from https://stackoverflow.com/q/1114465\n var boundingRect = this.canvas.getBoundingClientRect();\n var x = (event.clientX - boundingRect.left) * this.ratio;\n var y = (event.clientY - boundingRect.top) * this.ratio;\n\n this.send_message(name, {\n x: x,\n y: y,\n button: event.button,\n step: event.step,\n modifiers: getModifiers(event),\n guiEvent: simpleKeys(event),\n });\n\n return false;\n};\n\nmpl.figure.prototype._key_event_extra = function (_event, _name) {\n // Handle any extra behaviour associated with a key event\n};\n\nmpl.figure.prototype.key_event = function (event, name) {\n // Prevent repeat events\n if (name === 'key_press') {\n if (event.key === this._key) {\n return;\n } else {\n this._key = event.key;\n }\n }\n if (name === 'key_release') {\n this._key = null;\n }\n\n var value = '';\n if (event.ctrlKey && event.key !== 'Control') {\n value += 'ctrl+';\n }\n else if (event.altKey && event.key !== 'Alt') {\n value += 'alt+';\n }\n else if (event.shiftKey && event.key !== 'Shift') {\n value += 'shift+';\n }\n\n value += 'k' + event.key;\n\n this._key_event_extra(event, name);\n\n this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n return false;\n};\n\nmpl.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\nmpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n this.message.textContent = tooltip;\n};\n\n///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n// prettier-ignore\nvar _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\nmpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n\nmpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n\nmpl.default_extension = \"png\";/* global mpl */\n\nvar 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.binaryType = comm.kernel.ws.binaryType;\n ws.readyState = comm.kernel.ws.readyState;\n function updateReadyState(_event) {\n if (comm.kernel.ws) {\n ws.readyState = comm.kernel.ws.readyState;\n } else {\n ws.readyState = 3; // Closed state.\n }\n }\n comm.kernel.ws.addEventListener('open', updateReadyState);\n comm.kernel.ws.addEventListener('close', updateReadyState);\n comm.kernel.ws.addEventListener('error', updateReadyState);\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 var data = msg['content']['data'];\n if (data['blob'] !== undefined) {\n data = {\n data: new Blob(msg['buffers'], { type: data['blob'] }),\n };\n }\n // Pass the mpl event to the overridden (by mpl) onmessage function.\n ws.onmessage(data);\n });\n return ws;\n};\n\nmpl.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 = document.getElementById(id);\n var ws_proxy = comm_websocket_adapter(comm);\n\n function ondownload(figure, _format) {\n window.open(figure.canvas.toDataURL());\n }\n\n var fig = new mpl.figure(id, ws_proxy, ondownload, element);\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;\n fig.cell_info = mpl.find_output_cell(\"\");\n if (!fig.cell_info) {\n console.error('Failed to find cell for figure', id, fig);\n return;\n }\n fig.cell_info[0].output_area.element.on(\n 'cleared',\n { fig: fig },\n fig._remove_fig_handler\n );\n};\n\nmpl.figure.prototype.handle_close = function (fig, msg) {\n var width = fig.canvas.width / fig.ratio;\n fig.cell_info[0].output_area.element.off(\n 'cleared',\n fig._remove_fig_handler\n );\n fig.resizeObserverInstance.unobserve(fig.canvas_div);\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.innerHTML =\n '
';\n fig.close_ws(fig, msg);\n};\n\nmpl.figure.prototype.close_ws = function (fig, msg) {\n fig.send_message('closing', msg);\n // fig.ws.close()\n};\n\nmpl.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 / this.ratio;\n var dataURL = this.canvas.toDataURL();\n this.cell_info[1]['text/html'] =\n '
';\n};\n\nmpl.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 () {\n fig.push_to_output();\n }, 1000);\n};\n\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'btn-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n var button;\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n continue;\n }\n\n button = fig.buttons[name] = document.createElement('button');\n button.classList = 'btn btn-default';\n button.href = '#';\n button.title = name;\n button.innerHTML = '';\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n // Add the status bar.\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message pull-right';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n\n // Add the close button to the window.\n var buttongrp = document.createElement('div');\n buttongrp.classList = 'btn-group inline pull-right';\n button = document.createElement('button');\n button.classList = 'btn btn-mini btn-primary';\n button.href = '#';\n button.title = 'Stop Interaction';\n button.innerHTML = '';\n button.addEventListener('click', function (_evt) {\n fig.handle_close(fig, {});\n });\n button.addEventListener(\n 'mouseover',\n on_mouseover_closure('Stop Interaction')\n );\n buttongrp.appendChild(button);\n var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n titlebar.insertBefore(buttongrp, titlebar.firstChild);\n};\n\nmpl.figure.prototype._remove_fig_handler = function (event) {\n var fig = event.data.fig;\n if (event.target !== this) {\n // Ignore bubbled events from children.\n return;\n }\n fig.close_ws(fig, {});\n};\n\nmpl.figure.prototype._root_extra_style = function (el) {\n el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n};\n\nmpl.figure.prototype._canvas_extra_style = function (el) {\n // this is important to make the div 'focusable\n el.setAttribute('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 } else {\n // location in version 2\n IPython.keyboard_manager.register_events(el);\n }\n};\n\nmpl.figure.prototype._key_event_extra = function (event, _name) {\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\nmpl.figure.prototype.handle_save = function (fig, _msg) {\n fig.ondownload(fig, null);\n};\n\nmpl.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.\nif (IPython.notebook.kernel !== null) {\n IPython.notebook.kernel.comm_manager.register_target(\n 'matplotlib',\n mpl.mpl_figure_comm\n );\n}\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ ""
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[32m***** Response from calling tool (call_7Pe1hFOeLhmLJTOHRSWGCgIb) *****\u001b[0m\n",
+ "Back Test Finished. Results: \n",
+ "{ 'Drawdown': AutoOrderedDict([ ('len', 96),\n",
+ " ('drawdown', 0.4792571591478),\n",
+ " ('moneydown', 47.937370222436584),\n",
+ " ( 'max',\n",
+ " AutoOrderedDict([ ('len', 96),\n",
+ " ( 'drawdown',\n",
+ " 0.4792571591478),\n",
+ " ( 'moneydown',\n",
+ " 47.937370222436584)]))]),\n",
+ " 'Final Portfolio Value': 9954.494373870299,\n",
+ " 'Returns': OrderedDict([ ('rtot', -0.004560947941051167),\n",
+ " ('ravg', -6.0329999220253526e-06),\n",
+ " ('rnorm', -0.0015191608854542324),\n",
+ " ('rnorm100', -0.15191608854542324)]),\n",
+ " 'Sharpe Ratio': OrderedDict([('sharperatio', -5.368772873887681)]),\n",
+ " 'Starting Portfolio Value:': 10000.0,\n",
+ " 'Trade Analysis': AutoOrderedDict([ ( 'total',\n",
+ " AutoOrderedDict([ ('total', 1),\n",
+ " ('open', 0),\n",
+ " ('closed', 1)])),\n",
+ " ( 'streak',\n",
+ " AutoOrderedDict([ ( 'won',\n",
+ " AutoOrderedDict([ ( 'current',\n",
+ " 0),\n",
+ " ( 'longest',\n",
+ " 0)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'current',\n",
+ " 1),\n",
+ " ( 'longest',\n",
+ " 1)]))])),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'gross',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -45.5056261297016),\n",
+ " ( 'average',\n",
+ " -45.5056261297016)])),\n",
+ " ( 'net',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -45.5056261297016),\n",
+ " ( 'average',\n",
+ " -45.5056261297016)]))])),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ('total', 0),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0.0)]))])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ('total', 1),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -45.5056261297016),\n",
+ " ( 'average',\n",
+ " -45.5056261297016),\n",
+ " ( 'max',\n",
+ " -45.5056261297016)]))])),\n",
+ " ( 'long',\n",
+ " AutoOrderedDict([ ('total', 1),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -45.5056261297016),\n",
+ " ( 'average',\n",
+ " -45.5056261297016),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0.0)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -45.5056261297016),\n",
+ " ( 'average',\n",
+ " -45.5056261297016),\n",
+ " ( 'max',\n",
+ " -45.5056261297016)]))])),\n",
+ " ('won', 0),\n",
+ " ('lost', 1)])),\n",
+ " ( 'short',\n",
+ " AutoOrderedDict([ ('total', 0),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0.0)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0.0)]))])),\n",
+ " ('won', 0),\n",
+ " ('lost', 0)])),\n",
+ " ( 'len',\n",
+ " AutoOrderedDict([ ('total', 23),\n",
+ " ('average', 23.0),\n",
+ " ('max', 23),\n",
+ " ('min', 23),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 23),\n",
+ " ( 'average',\n",
+ " 23.0),\n",
+ " ( 'max',\n",
+ " 23),\n",
+ " ( 'min',\n",
+ " 23)])),\n",
+ " ( 'long',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 23),\n",
+ " ( 'average',\n",
+ " 23.0),\n",
+ " ( 'max',\n",
+ " 23),\n",
+ " ( 'min',\n",
+ " 23),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 23),\n",
+ " ( 'average',\n",
+ " 23.0),\n",
+ " ( 'max',\n",
+ " 23),\n",
+ " ( 'min',\n",
+ " 23)]))])),\n",
+ " ( 'short',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807)]))]))]))])}\n",
+ "\u001b[32m**********************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "\u001b[32m***** Suggested tool call (call_FLaewawI4iUAhMihye4hl47y): display_image *****\u001b[0m\n",
+ "Arguments: \n",
+ "{\"image_path\":\"test.png\"}\n",
+ "\u001b[32m******************************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[35m\n",
+ ">>>>>>>> EXECUTING FUNCTION display_image...\u001b[0m\n"
+ ]
+ },
+ {
+ "data": {
+ "image/png": "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",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[32m***** Response from calling tool (call_FLaewawI4iUAhMihye4hl47y) *****\u001b[0m\n",
+ "None\n",
+ "\u001b[32m**********************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "Optimize the fast/slow parameters based on this image
. TERMINATE\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "########## Optimize the fast/slow parameters based on this image
. TERMINATE\n",
+ "\u001b[33mUser_Proxy\u001b[0m (to Trade_Strategist):\n",
+ "\n",
+ "Optimize the fast/slow parameters based on this image . \n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[31m\n",
+ ">>>>>>>> USING AUTO REPLY...\u001b[0m\n",
+ "\u001b[33mTrade_Strategist\u001b[0m (to User_Proxy):\n",
+ "\n",
+ "The backtest result image shows the performance of a trading strategy using a 20-day SMA as the fast moving average and a 100-day SMA as the slow moving average. From the chart, we can see the buy (green) and sell (red) signals generated by the crossover points of the two SMAs.\n",
+ "\n",
+ "The performance metrics in the top left corner indicate a final cash value and portfolio value, which suggests the strategy's ending balance after accounting for all trades. The presence of both positive (green dot) and negative (red dot) trades indicates that the strategy had both profitable and unprofitable trades.\n",
+ "\n",
+ "To further optimize the strategy, we could consider adjusting the SMA periods to reduce lag and improve the timing of the signals. We might also want to reduce the number of false signals or whipsaws, which are common in sideways or choppy markets.\n",
+ "\n",
+ "3. Let's try tightening the moving averages to a 15-day SMA for the fast parameter and an 80-day SMA for the slow parameter to see if we can capture trends more effectively without too much lag. Please run the backtest for the SMACrossover strategy using these new parameters and report the results back for further analysis.\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "Reflecting strategist's response ...\n",
+ "\u001b[34m\n",
+ "********************************************************************************\u001b[0m\n",
+ "\u001b[34mStarting a new chat....\u001b[0m\n",
+ "\u001b[34m\n",
+ "********************************************************************************\u001b[0m\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "Message from Trade Strategist is as follows:The backtest result image shows the performance of a trading strategy using a 20-day SMA as the fast moving average and a 100-day SMA as the slow moving average. From the chart, we can see the buy (green) and sell (red) signals generated by the crossover points of the two SMAs.\n",
+ "\n",
+ "The performance metrics in the top left corner indicate a final cash value and portfolio value, which suggests the strategy's ending balance after accounting for all trades. The presence of both positive (green dot) and negative (red dot) trades indicates that the strategy had both profitable and unprofitable trades.\n",
+ "\n",
+ "To further optimize the strategy, we could consider adjusting the SMA periods to reduce lag and improve the timing of the signals. We might also want to reduce the number of false signals or whipsaws, which are common in sideways or choppy markets.\n",
+ "\n",
+ "3. Let's try tightening the moving averages to a 15-day SMA for the fast parameter and an 80-day SMA for the slow parameter to see if we can capture trends more effectively without too much lag. Please run the backtest for the SMACrossover strategy using these new parameters and report the results back for further analysis.\n",
+ "\n",
+ "Based on his information, conduct a backtest on the specified stock and strategy, and report your backtesting results back to the strategist.\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "\u001b[32m***** Suggested tool call (call_xogelWhCJtGc3qgVyjLKdn5t): back_test *****\u001b[0m\n",
+ "Arguments: \n",
+ "{\"ticker_symbol\":\"AAPL\",\"start_date\":\"2020-01-01\",\"end_date\":\"2023-01-01\",\"strategy\":\"SMA_CrossOver\",\"strategy_params\":\"{\\\"fast\\\": 15, \\\"slow\\\": 80}\",\"save_fig\":\"test.png\"}\n",
+ "\u001b[32m**************************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[35m\n",
+ ">>>>>>>> EXECUTING FUNCTION back_test...\u001b[0m\n"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "[*********************100%%**********************] 1 of 1 completed\n"
+ ]
+ },
+ {
+ "data": {
+ "application/javascript": "/* Put everything inside the global mpl namespace */\n/* global mpl */\nwindow.mpl = {};\n\nmpl.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(\n '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\nmpl.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 = document.createElement('div');\n this.root.setAttribute('style', 'display: inline-block');\n this._root_extra_style(this.root);\n\n parent_element.appendChild(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 (fig.ratio !== 1) {\n fig.send_message('set_device_pixel_ratio', {\n device_pixel_ratio: fig.ratio,\n });\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 fig.ws.close();\n };\n\n this.ws.onmessage = this._make_on_message_function(this);\n\n this.ondownload = ondownload;\n};\n\nmpl.figure.prototype._init_header = function () {\n var titlebar = document.createElement('div');\n titlebar.classList =\n 'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n var titletext = document.createElement('div');\n titletext.classList = 'ui-dialog-title';\n titletext.setAttribute(\n 'style',\n 'width: 100%; text-align: center; padding: 3px;'\n );\n titlebar.appendChild(titletext);\n this.root.appendChild(titlebar);\n this.header = titletext;\n};\n\nmpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._init_canvas = function () {\n var fig = this;\n\n var canvas_div = (this.canvas_div = document.createElement('div'));\n canvas_div.setAttribute('tabindex', '0');\n canvas_div.setAttribute(\n 'style',\n 'border: 1px solid #ddd;' +\n 'box-sizing: content-box;' +\n 'clear: both;' +\n 'min-height: 1px;' +\n 'min-width: 1px;' +\n 'outline: 0;' +\n 'overflow: hidden;' +\n 'position: relative;' +\n 'resize: both;' +\n 'z-index: 2;'\n );\n\n function on_keyboard_event_closure(name) {\n return function (event) {\n return fig.key_event(event, name);\n };\n }\n\n canvas_div.addEventListener(\n 'keydown',\n on_keyboard_event_closure('key_press')\n );\n canvas_div.addEventListener(\n 'keyup',\n on_keyboard_event_closure('key_release')\n );\n\n this._canvas_extra_style(canvas_div);\n this.root.appendChild(canvas_div);\n\n var canvas = (this.canvas = document.createElement('canvas'));\n canvas.classList.add('mpl-canvas');\n canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'pointer-events: none;' +\n 'position: relative;' +\n 'z-index: 0;'\n );\n\n this.context = canvas.getContext('2d');\n\n var backingStore =\n this.context.backingStorePixelRatio ||\n this.context.webkitBackingStorePixelRatio ||\n this.context.mozBackingStorePixelRatio ||\n this.context.msBackingStorePixelRatio ||\n this.context.oBackingStorePixelRatio ||\n this.context.backingStorePixelRatio ||\n 1;\n\n this.ratio = (window.devicePixelRatio || 1) / backingStore;\n\n var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n 'canvas'\n ));\n rubberband_canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'left: 0;' +\n 'pointer-events: none;' +\n 'position: absolute;' +\n 'top: 0;' +\n 'z-index: 1;'\n );\n\n // Apply a ponyfill if ResizeObserver is not implemented by browser.\n if (this.ResizeObserver === undefined) {\n if (window.ResizeObserver !== undefined) {\n this.ResizeObserver = window.ResizeObserver;\n } else {\n var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n this.ResizeObserver = obs.ResizeObserver;\n }\n }\n\n this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n var nentries = entries.length;\n for (var i = 0; i < nentries; i++) {\n var entry = entries[i];\n var width, height;\n if (entry.contentBoxSize) {\n if (entry.contentBoxSize instanceof Array) {\n // Chrome 84 implements new version of spec.\n width = entry.contentBoxSize[0].inlineSize;\n height = entry.contentBoxSize[0].blockSize;\n } else {\n // Firefox implements old version of spec.\n width = entry.contentBoxSize.inlineSize;\n height = entry.contentBoxSize.blockSize;\n }\n } else {\n // Chrome <84 implements even older version of spec.\n width = entry.contentRect.width;\n height = entry.contentRect.height;\n }\n\n // Keep the size of the canvas and rubber band canvas in sync with\n // the canvas container.\n if (entry.devicePixelContentBoxSize) {\n // Chrome 84 implements new version of spec.\n canvas.setAttribute(\n 'width',\n entry.devicePixelContentBoxSize[0].inlineSize\n );\n canvas.setAttribute(\n 'height',\n entry.devicePixelContentBoxSize[0].blockSize\n );\n } else {\n canvas.setAttribute('width', width * fig.ratio);\n canvas.setAttribute('height', height * fig.ratio);\n }\n /* This rescales the canvas back to display pixels, so that it\n * appears correct on HiDPI screens. */\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n\n rubberband_canvas.setAttribute('width', width);\n rubberband_canvas.setAttribute('height', height);\n\n // And update the size in Python. We ignore the initial 0/0 size\n // that occurs as the element is placed into the DOM, which should\n // otherwise not happen due to the minimum size styling.\n if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n fig.request_resize(width, height);\n }\n }\n });\n this.resizeObserverInstance.observe(canvas_div);\n\n function on_mouse_event_closure(name) {\n /* User Agent sniffing is bad, but WebKit is busted:\n * https://bugs.webkit.org/show_bug.cgi?id=144526\n * https://bugs.webkit.org/show_bug.cgi?id=181818\n * The worst that happens here is that they get an extra browser\n * selection when dragging, if this check fails to catch them.\n */\n var UA = navigator.userAgent;\n var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n if(isWebKit) {\n return function (event) {\n /* This prevents the web browser from automatically changing to\n * the text insertion cursor when the button is pressed. We\n * want to control all of the cursor setting manually through\n * the 'cursor' event from matplotlib */\n event.preventDefault()\n return fig.mouse_event(event, name);\n };\n } else {\n return function (event) {\n return fig.mouse_event(event, name);\n };\n }\n }\n\n canvas_div.addEventListener(\n 'mousedown',\n on_mouse_event_closure('button_press')\n );\n canvas_div.addEventListener(\n 'mouseup',\n on_mouse_event_closure('button_release')\n );\n canvas_div.addEventListener(\n 'dblclick',\n on_mouse_event_closure('dblclick')\n );\n // Throttle sequential mouse events to 1 every 20ms.\n canvas_div.addEventListener(\n 'mousemove',\n on_mouse_event_closure('motion_notify')\n );\n\n canvas_div.addEventListener(\n 'mouseenter',\n on_mouse_event_closure('figure_enter')\n );\n canvas_div.addEventListener(\n 'mouseleave',\n on_mouse_event_closure('figure_leave')\n );\n\n canvas_div.addEventListener('wheel', function (event) {\n if (event.deltaY < 0) {\n event.step = 1;\n } else {\n event.step = -1;\n }\n on_mouse_event_closure('scroll')(event);\n });\n\n canvas_div.appendChild(canvas);\n canvas_div.appendChild(rubberband_canvas);\n\n this.rubberband_context = rubberband_canvas.getContext('2d');\n this.rubberband_context.strokeStyle = '#000000';\n\n this._resize_canvas = function (width, height, forward) {\n if (forward) {\n canvas_div.style.width = width + 'px';\n canvas_div.style.height = height + 'px';\n }\n };\n\n // Disable right mouse context menu.\n canvas_div.addEventListener('contextmenu', function (_e) {\n event.preventDefault();\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\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'mpl-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\n continue;\n }\n\n var button = (fig.buttons[name] = document.createElement('button'));\n button.classList = 'mpl-widget';\n button.setAttribute('role', 'button');\n button.setAttribute('aria-disabled', 'false');\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n\n var icon_img = document.createElement('img');\n icon_img.src = '_images/' + image + '.png';\n icon_img.srcset = '_images/' + image + '_large.png 2x';\n icon_img.alt = tooltip;\n button.appendChild(icon_img);\n\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n var fmt_picker = document.createElement('select');\n fmt_picker.classList = 'mpl-widget';\n toolbar.appendChild(fmt_picker);\n this.format_dropdown = fmt_picker;\n\n for (var ind in mpl.extensions) {\n var fmt = mpl.extensions[ind];\n var option = document.createElement('option');\n option.selected = fmt === mpl.default_extension;\n option.innerHTML = fmt;\n fmt_picker.appendChild(option);\n }\n\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n};\n\nmpl.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\nmpl.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\nmpl.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\nmpl.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\nmpl.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], msg['forward']);\n fig.send_message('refresh', {});\n }\n};\n\nmpl.figure.prototype.handle_rubberband = function (fig, msg) {\n var x0 = msg['x0'] / fig.ratio;\n var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n var x1 = msg['x1'] / fig.ratio;\n var y1 = (fig.canvas.height - msg['y1']) / fig.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,\n 0,\n fig.canvas.width / fig.ratio,\n fig.canvas.height / fig.ratio\n );\n\n fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n};\n\nmpl.figure.prototype.handle_figure_label = function (fig, msg) {\n // Updates the figure title.\n fig.header.textContent = msg['label'];\n};\n\nmpl.figure.prototype.handle_cursor = function (fig, msg) {\n fig.canvas_div.style.cursor = msg['cursor'];\n};\n\nmpl.figure.prototype.handle_message = function (fig, msg) {\n fig.message.textContent = msg['message'];\n};\n\nmpl.figure.prototype.handle_draw = function (fig, _msg) {\n // Request the server to send over a new figure.\n fig.send_draw_message();\n};\n\nmpl.figure.prototype.handle_image_mode = function (fig, msg) {\n fig.image_mode = msg['mode'];\n};\n\nmpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n for (var key in msg) {\n if (!(key in fig.buttons)) {\n continue;\n }\n fig.buttons[key].disabled = !msg[key];\n fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n }\n};\n\nmpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n if (msg['mode'] === 'PAN') {\n fig.buttons['Pan'].classList.add('active');\n fig.buttons['Zoom'].classList.remove('active');\n } else if (msg['mode'] === 'ZOOM') {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.add('active');\n } else {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.remove('active');\n }\n};\n\nmpl.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.\nmpl.figure.prototype._make_on_message_function = function (fig) {\n return function socket_on_message(evt) {\n if (evt.data instanceof Blob) {\n var img = evt.data;\n if (img.type !== 'image/png') {\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 img.type = 'image/png';\n }\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\n fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n img\n );\n fig.updated_canvas_event();\n fig.waiting = false;\n return;\n } else if (\n typeof evt.data === 'string' &&\n evt.data.slice(0, 21) === 'data:image/png;base64'\n ) {\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(\n \"No handler for the '\" + msg_type + \"' message type: \",\n msg\n );\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(\n \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n e,\n e.stack,\n msg\n );\n }\n }\n };\n};\n\nfunction getModifiers(event) {\n var mods = [];\n if (event.ctrlKey) {\n mods.push('ctrl');\n }\n if (event.altKey) {\n mods.push('alt');\n }\n if (event.shiftKey) {\n mods.push('shift');\n }\n if (event.metaKey) {\n mods.push('meta');\n }\n return mods;\n}\n\n/*\n * return a copy of an object with only non-object keys\n * we need this to avoid circular references\n * https://stackoverflow.com/a/24161582/3208463\n */\nfunction simpleKeys(original) {\n return Object.keys(original).reduce(function (obj, key) {\n if (typeof original[key] !== 'object') {\n obj[key] = original[key];\n }\n return obj;\n }, {});\n}\n\nmpl.figure.prototype.mouse_event = function (event, name) {\n if (name === 'button_press') {\n this.canvas.focus();\n this.canvas_div.focus();\n }\n\n // from https://stackoverflow.com/q/1114465\n var boundingRect = this.canvas.getBoundingClientRect();\n var x = (event.clientX - boundingRect.left) * this.ratio;\n var y = (event.clientY - boundingRect.top) * this.ratio;\n\n this.send_message(name, {\n x: x,\n y: y,\n button: event.button,\n step: event.step,\n modifiers: getModifiers(event),\n guiEvent: simpleKeys(event),\n });\n\n return false;\n};\n\nmpl.figure.prototype._key_event_extra = function (_event, _name) {\n // Handle any extra behaviour associated with a key event\n};\n\nmpl.figure.prototype.key_event = function (event, name) {\n // Prevent repeat events\n if (name === 'key_press') {\n if (event.key === this._key) {\n return;\n } else {\n this._key = event.key;\n }\n }\n if (name === 'key_release') {\n this._key = null;\n }\n\n var value = '';\n if (event.ctrlKey && event.key !== 'Control') {\n value += 'ctrl+';\n }\n else if (event.altKey && event.key !== 'Alt') {\n value += 'alt+';\n }\n else if (event.shiftKey && event.key !== 'Shift') {\n value += 'shift+';\n }\n\n value += 'k' + event.key;\n\n this._key_event_extra(event, name);\n\n this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n return false;\n};\n\nmpl.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\nmpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n this.message.textContent = tooltip;\n};\n\n///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n// prettier-ignore\nvar _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\nmpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n\nmpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n\nmpl.default_extension = \"png\";/* global mpl */\n\nvar 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.binaryType = comm.kernel.ws.binaryType;\n ws.readyState = comm.kernel.ws.readyState;\n function updateReadyState(_event) {\n if (comm.kernel.ws) {\n ws.readyState = comm.kernel.ws.readyState;\n } else {\n ws.readyState = 3; // Closed state.\n }\n }\n comm.kernel.ws.addEventListener('open', updateReadyState);\n comm.kernel.ws.addEventListener('close', updateReadyState);\n comm.kernel.ws.addEventListener('error', updateReadyState);\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 var data = msg['content']['data'];\n if (data['blob'] !== undefined) {\n data = {\n data: new Blob(msg['buffers'], { type: data['blob'] }),\n };\n }\n // Pass the mpl event to the overridden (by mpl) onmessage function.\n ws.onmessage(data);\n });\n return ws;\n};\n\nmpl.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 = document.getElementById(id);\n var ws_proxy = comm_websocket_adapter(comm);\n\n function ondownload(figure, _format) {\n window.open(figure.canvas.toDataURL());\n }\n\n var fig = new mpl.figure(id, ws_proxy, ondownload, element);\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;\n fig.cell_info = mpl.find_output_cell(\"\");\n if (!fig.cell_info) {\n console.error('Failed to find cell for figure', id, fig);\n return;\n }\n fig.cell_info[0].output_area.element.on(\n 'cleared',\n { fig: fig },\n fig._remove_fig_handler\n );\n};\n\nmpl.figure.prototype.handle_close = function (fig, msg) {\n var width = fig.canvas.width / fig.ratio;\n fig.cell_info[0].output_area.element.off(\n 'cleared',\n fig._remove_fig_handler\n );\n fig.resizeObserverInstance.unobserve(fig.canvas_div);\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.innerHTML =\n '
';\n fig.close_ws(fig, msg);\n};\n\nmpl.figure.prototype.close_ws = function (fig, msg) {\n fig.send_message('closing', msg);\n // fig.ws.close()\n};\n\nmpl.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 / this.ratio;\n var dataURL = this.canvas.toDataURL();\n this.cell_info[1]['text/html'] =\n '
';\n};\n\nmpl.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 () {\n fig.push_to_output();\n }, 1000);\n};\n\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'btn-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n var button;\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n continue;\n }\n\n button = fig.buttons[name] = document.createElement('button');\n button.classList = 'btn btn-default';\n button.href = '#';\n button.title = name;\n button.innerHTML = '';\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n // Add the status bar.\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message pull-right';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n\n // Add the close button to the window.\n var buttongrp = document.createElement('div');\n buttongrp.classList = 'btn-group inline pull-right';\n button = document.createElement('button');\n button.classList = 'btn btn-mini btn-primary';\n button.href = '#';\n button.title = 'Stop Interaction';\n button.innerHTML = '';\n button.addEventListener('click', function (_evt) {\n fig.handle_close(fig, {});\n });\n button.addEventListener(\n 'mouseover',\n on_mouseover_closure('Stop Interaction')\n );\n buttongrp.appendChild(button);\n var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n titlebar.insertBefore(buttongrp, titlebar.firstChild);\n};\n\nmpl.figure.prototype._remove_fig_handler = function (event) {\n var fig = event.data.fig;\n if (event.target !== this) {\n // Ignore bubbled events from children.\n return;\n }\n fig.close_ws(fig, {});\n};\n\nmpl.figure.prototype._root_extra_style = function (el) {\n el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n};\n\nmpl.figure.prototype._canvas_extra_style = function (el) {\n // this is important to make the div 'focusable\n el.setAttribute('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 } else {\n // location in version 2\n IPython.keyboard_manager.register_events(el);\n }\n};\n\nmpl.figure.prototype._key_event_extra = function (event, _name) {\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\nmpl.figure.prototype.handle_save = function (fig, _msg) {\n fig.ondownload(fig, null);\n};\n\nmpl.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.\nif (IPython.notebook.kernel !== null) {\n IPython.notebook.kernel.comm_manager.register_target(\n 'matplotlib',\n mpl.mpl_figure_comm\n );\n}\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ ""
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/javascript": "/* Put everything inside the global mpl namespace */\n/* global mpl */\nwindow.mpl = {};\n\nmpl.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(\n '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\nmpl.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 = document.createElement('div');\n this.root.setAttribute('style', 'display: inline-block');\n this._root_extra_style(this.root);\n\n parent_element.appendChild(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 (fig.ratio !== 1) {\n fig.send_message('set_device_pixel_ratio', {\n device_pixel_ratio: fig.ratio,\n });\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 fig.ws.close();\n };\n\n this.ws.onmessage = this._make_on_message_function(this);\n\n this.ondownload = ondownload;\n};\n\nmpl.figure.prototype._init_header = function () {\n var titlebar = document.createElement('div');\n titlebar.classList =\n 'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n var titletext = document.createElement('div');\n titletext.classList = 'ui-dialog-title';\n titletext.setAttribute(\n 'style',\n 'width: 100%; text-align: center; padding: 3px;'\n );\n titlebar.appendChild(titletext);\n this.root.appendChild(titlebar);\n this.header = titletext;\n};\n\nmpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._init_canvas = function () {\n var fig = this;\n\n var canvas_div = (this.canvas_div = document.createElement('div'));\n canvas_div.setAttribute('tabindex', '0');\n canvas_div.setAttribute(\n 'style',\n 'border: 1px solid #ddd;' +\n 'box-sizing: content-box;' +\n 'clear: both;' +\n 'min-height: 1px;' +\n 'min-width: 1px;' +\n 'outline: 0;' +\n 'overflow: hidden;' +\n 'position: relative;' +\n 'resize: both;' +\n 'z-index: 2;'\n );\n\n function on_keyboard_event_closure(name) {\n return function (event) {\n return fig.key_event(event, name);\n };\n }\n\n canvas_div.addEventListener(\n 'keydown',\n on_keyboard_event_closure('key_press')\n );\n canvas_div.addEventListener(\n 'keyup',\n on_keyboard_event_closure('key_release')\n );\n\n this._canvas_extra_style(canvas_div);\n this.root.appendChild(canvas_div);\n\n var canvas = (this.canvas = document.createElement('canvas'));\n canvas.classList.add('mpl-canvas');\n canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'pointer-events: none;' +\n 'position: relative;' +\n 'z-index: 0;'\n );\n\n this.context = canvas.getContext('2d');\n\n var backingStore =\n this.context.backingStorePixelRatio ||\n this.context.webkitBackingStorePixelRatio ||\n this.context.mozBackingStorePixelRatio ||\n this.context.msBackingStorePixelRatio ||\n this.context.oBackingStorePixelRatio ||\n this.context.backingStorePixelRatio ||\n 1;\n\n this.ratio = (window.devicePixelRatio || 1) / backingStore;\n\n var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n 'canvas'\n ));\n rubberband_canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'left: 0;' +\n 'pointer-events: none;' +\n 'position: absolute;' +\n 'top: 0;' +\n 'z-index: 1;'\n );\n\n // Apply a ponyfill if ResizeObserver is not implemented by browser.\n if (this.ResizeObserver === undefined) {\n if (window.ResizeObserver !== undefined) {\n this.ResizeObserver = window.ResizeObserver;\n } else {\n var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n this.ResizeObserver = obs.ResizeObserver;\n }\n }\n\n this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n var nentries = entries.length;\n for (var i = 0; i < nentries; i++) {\n var entry = entries[i];\n var width, height;\n if (entry.contentBoxSize) {\n if (entry.contentBoxSize instanceof Array) {\n // Chrome 84 implements new version of spec.\n width = entry.contentBoxSize[0].inlineSize;\n height = entry.contentBoxSize[0].blockSize;\n } else {\n // Firefox implements old version of spec.\n width = entry.contentBoxSize.inlineSize;\n height = entry.contentBoxSize.blockSize;\n }\n } else {\n // Chrome <84 implements even older version of spec.\n width = entry.contentRect.width;\n height = entry.contentRect.height;\n }\n\n // Keep the size of the canvas and rubber band canvas in sync with\n // the canvas container.\n if (entry.devicePixelContentBoxSize) {\n // Chrome 84 implements new version of spec.\n canvas.setAttribute(\n 'width',\n entry.devicePixelContentBoxSize[0].inlineSize\n );\n canvas.setAttribute(\n 'height',\n entry.devicePixelContentBoxSize[0].blockSize\n );\n } else {\n canvas.setAttribute('width', width * fig.ratio);\n canvas.setAttribute('height', height * fig.ratio);\n }\n /* This rescales the canvas back to display pixels, so that it\n * appears correct on HiDPI screens. */\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n\n rubberband_canvas.setAttribute('width', width);\n rubberband_canvas.setAttribute('height', height);\n\n // And update the size in Python. We ignore the initial 0/0 size\n // that occurs as the element is placed into the DOM, which should\n // otherwise not happen due to the minimum size styling.\n if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n fig.request_resize(width, height);\n }\n }\n });\n this.resizeObserverInstance.observe(canvas_div);\n\n function on_mouse_event_closure(name) {\n /* User Agent sniffing is bad, but WebKit is busted:\n * https://bugs.webkit.org/show_bug.cgi?id=144526\n * https://bugs.webkit.org/show_bug.cgi?id=181818\n * The worst that happens here is that they get an extra browser\n * selection when dragging, if this check fails to catch them.\n */\n var UA = navigator.userAgent;\n var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n if(isWebKit) {\n return function (event) {\n /* This prevents the web browser from automatically changing to\n * the text insertion cursor when the button is pressed. We\n * want to control all of the cursor setting manually through\n * the 'cursor' event from matplotlib */\n event.preventDefault()\n return fig.mouse_event(event, name);\n };\n } else {\n return function (event) {\n return fig.mouse_event(event, name);\n };\n }\n }\n\n canvas_div.addEventListener(\n 'mousedown',\n on_mouse_event_closure('button_press')\n );\n canvas_div.addEventListener(\n 'mouseup',\n on_mouse_event_closure('button_release')\n );\n canvas_div.addEventListener(\n 'dblclick',\n on_mouse_event_closure('dblclick')\n );\n // Throttle sequential mouse events to 1 every 20ms.\n canvas_div.addEventListener(\n 'mousemove',\n on_mouse_event_closure('motion_notify')\n );\n\n canvas_div.addEventListener(\n 'mouseenter',\n on_mouse_event_closure('figure_enter')\n );\n canvas_div.addEventListener(\n 'mouseleave',\n on_mouse_event_closure('figure_leave')\n );\n\n canvas_div.addEventListener('wheel', function (event) {\n if (event.deltaY < 0) {\n event.step = 1;\n } else {\n event.step = -1;\n }\n on_mouse_event_closure('scroll')(event);\n });\n\n canvas_div.appendChild(canvas);\n canvas_div.appendChild(rubberband_canvas);\n\n this.rubberband_context = rubberband_canvas.getContext('2d');\n this.rubberband_context.strokeStyle = '#000000';\n\n this._resize_canvas = function (width, height, forward) {\n if (forward) {\n canvas_div.style.width = width + 'px';\n canvas_div.style.height = height + 'px';\n }\n };\n\n // Disable right mouse context menu.\n canvas_div.addEventListener('contextmenu', function (_e) {\n event.preventDefault();\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\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'mpl-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\n continue;\n }\n\n var button = (fig.buttons[name] = document.createElement('button'));\n button.classList = 'mpl-widget';\n button.setAttribute('role', 'button');\n button.setAttribute('aria-disabled', 'false');\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n\n var icon_img = document.createElement('img');\n icon_img.src = '_images/' + image + '.png';\n icon_img.srcset = '_images/' + image + '_large.png 2x';\n icon_img.alt = tooltip;\n button.appendChild(icon_img);\n\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n var fmt_picker = document.createElement('select');\n fmt_picker.classList = 'mpl-widget';\n toolbar.appendChild(fmt_picker);\n this.format_dropdown = fmt_picker;\n\n for (var ind in mpl.extensions) {\n var fmt = mpl.extensions[ind];\n var option = document.createElement('option');\n option.selected = fmt === mpl.default_extension;\n option.innerHTML = fmt;\n fmt_picker.appendChild(option);\n }\n\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n};\n\nmpl.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\nmpl.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\nmpl.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\nmpl.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\nmpl.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], msg['forward']);\n fig.send_message('refresh', {});\n }\n};\n\nmpl.figure.prototype.handle_rubberband = function (fig, msg) {\n var x0 = msg['x0'] / fig.ratio;\n var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n var x1 = msg['x1'] / fig.ratio;\n var y1 = (fig.canvas.height - msg['y1']) / fig.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,\n 0,\n fig.canvas.width / fig.ratio,\n fig.canvas.height / fig.ratio\n );\n\n fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n};\n\nmpl.figure.prototype.handle_figure_label = function (fig, msg) {\n // Updates the figure title.\n fig.header.textContent = msg['label'];\n};\n\nmpl.figure.prototype.handle_cursor = function (fig, msg) {\n fig.canvas_div.style.cursor = msg['cursor'];\n};\n\nmpl.figure.prototype.handle_message = function (fig, msg) {\n fig.message.textContent = msg['message'];\n};\n\nmpl.figure.prototype.handle_draw = function (fig, _msg) {\n // Request the server to send over a new figure.\n fig.send_draw_message();\n};\n\nmpl.figure.prototype.handle_image_mode = function (fig, msg) {\n fig.image_mode = msg['mode'];\n};\n\nmpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n for (var key in msg) {\n if (!(key in fig.buttons)) {\n continue;\n }\n fig.buttons[key].disabled = !msg[key];\n fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n }\n};\n\nmpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n if (msg['mode'] === 'PAN') {\n fig.buttons['Pan'].classList.add('active');\n fig.buttons['Zoom'].classList.remove('active');\n } else if (msg['mode'] === 'ZOOM') {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.add('active');\n } else {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.remove('active');\n }\n};\n\nmpl.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.\nmpl.figure.prototype._make_on_message_function = function (fig) {\n return function socket_on_message(evt) {\n if (evt.data instanceof Blob) {\n var img = evt.data;\n if (img.type !== 'image/png') {\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 img.type = 'image/png';\n }\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\n fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n img\n );\n fig.updated_canvas_event();\n fig.waiting = false;\n return;\n } else if (\n typeof evt.data === 'string' &&\n evt.data.slice(0, 21) === 'data:image/png;base64'\n ) {\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(\n \"No handler for the '\" + msg_type + \"' message type: \",\n msg\n );\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(\n \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n e,\n e.stack,\n msg\n );\n }\n }\n };\n};\n\nfunction getModifiers(event) {\n var mods = [];\n if (event.ctrlKey) {\n mods.push('ctrl');\n }\n if (event.altKey) {\n mods.push('alt');\n }\n if (event.shiftKey) {\n mods.push('shift');\n }\n if (event.metaKey) {\n mods.push('meta');\n }\n return mods;\n}\n\n/*\n * return a copy of an object with only non-object keys\n * we need this to avoid circular references\n * https://stackoverflow.com/a/24161582/3208463\n */\nfunction simpleKeys(original) {\n return Object.keys(original).reduce(function (obj, key) {\n if (typeof original[key] !== 'object') {\n obj[key] = original[key];\n }\n return obj;\n }, {});\n}\n\nmpl.figure.prototype.mouse_event = function (event, name) {\n if (name === 'button_press') {\n this.canvas.focus();\n this.canvas_div.focus();\n }\n\n // from https://stackoverflow.com/q/1114465\n var boundingRect = this.canvas.getBoundingClientRect();\n var x = (event.clientX - boundingRect.left) * this.ratio;\n var y = (event.clientY - boundingRect.top) * this.ratio;\n\n this.send_message(name, {\n x: x,\n y: y,\n button: event.button,\n step: event.step,\n modifiers: getModifiers(event),\n guiEvent: simpleKeys(event),\n });\n\n return false;\n};\n\nmpl.figure.prototype._key_event_extra = function (_event, _name) {\n // Handle any extra behaviour associated with a key event\n};\n\nmpl.figure.prototype.key_event = function (event, name) {\n // Prevent repeat events\n if (name === 'key_press') {\n if (event.key === this._key) {\n return;\n } else {\n this._key = event.key;\n }\n }\n if (name === 'key_release') {\n this._key = null;\n }\n\n var value = '';\n if (event.ctrlKey && event.key !== 'Control') {\n value += 'ctrl+';\n }\n else if (event.altKey && event.key !== 'Alt') {\n value += 'alt+';\n }\n else if (event.shiftKey && event.key !== 'Shift') {\n value += 'shift+';\n }\n\n value += 'k' + event.key;\n\n this._key_event_extra(event, name);\n\n this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n return false;\n};\n\nmpl.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\nmpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n this.message.textContent = tooltip;\n};\n\n///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n// prettier-ignore\nvar _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\nmpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n\nmpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n\nmpl.default_extension = \"png\";/* global mpl */\n\nvar 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.binaryType = comm.kernel.ws.binaryType;\n ws.readyState = comm.kernel.ws.readyState;\n function updateReadyState(_event) {\n if (comm.kernel.ws) {\n ws.readyState = comm.kernel.ws.readyState;\n } else {\n ws.readyState = 3; // Closed state.\n }\n }\n comm.kernel.ws.addEventListener('open', updateReadyState);\n comm.kernel.ws.addEventListener('close', updateReadyState);\n comm.kernel.ws.addEventListener('error', updateReadyState);\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 var data = msg['content']['data'];\n if (data['blob'] !== undefined) {\n data = {\n data: new Blob(msg['buffers'], { type: data['blob'] }),\n };\n }\n // Pass the mpl event to the overridden (by mpl) onmessage function.\n ws.onmessage(data);\n });\n return ws;\n};\n\nmpl.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 = document.getElementById(id);\n var ws_proxy = comm_websocket_adapter(comm);\n\n function ondownload(figure, _format) {\n window.open(figure.canvas.toDataURL());\n }\n\n var fig = new mpl.figure(id, ws_proxy, ondownload, element);\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;\n fig.cell_info = mpl.find_output_cell(\"\");\n if (!fig.cell_info) {\n console.error('Failed to find cell for figure', id, fig);\n return;\n }\n fig.cell_info[0].output_area.element.on(\n 'cleared',\n { fig: fig },\n fig._remove_fig_handler\n );\n};\n\nmpl.figure.prototype.handle_close = function (fig, msg) {\n var width = fig.canvas.width / fig.ratio;\n fig.cell_info[0].output_area.element.off(\n 'cleared',\n fig._remove_fig_handler\n );\n fig.resizeObserverInstance.unobserve(fig.canvas_div);\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.innerHTML =\n '
';\n fig.close_ws(fig, msg);\n};\n\nmpl.figure.prototype.close_ws = function (fig, msg) {\n fig.send_message('closing', msg);\n // fig.ws.close()\n};\n\nmpl.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 / this.ratio;\n var dataURL = this.canvas.toDataURL();\n this.cell_info[1]['text/html'] =\n '
';\n};\n\nmpl.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 () {\n fig.push_to_output();\n }, 1000);\n};\n\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'btn-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n var button;\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n continue;\n }\n\n button = fig.buttons[name] = document.createElement('button');\n button.classList = 'btn btn-default';\n button.href = '#';\n button.title = name;\n button.innerHTML = '';\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n // Add the status bar.\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message pull-right';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n\n // Add the close button to the window.\n var buttongrp = document.createElement('div');\n buttongrp.classList = 'btn-group inline pull-right';\n button = document.createElement('button');\n button.classList = 'btn btn-mini btn-primary';\n button.href = '#';\n button.title = 'Stop Interaction';\n button.innerHTML = '';\n button.addEventListener('click', function (_evt) {\n fig.handle_close(fig, {});\n });\n button.addEventListener(\n 'mouseover',\n on_mouseover_closure('Stop Interaction')\n );\n buttongrp.appendChild(button);\n var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n titlebar.insertBefore(buttongrp, titlebar.firstChild);\n};\n\nmpl.figure.prototype._remove_fig_handler = function (event) {\n var fig = event.data.fig;\n if (event.target !== this) {\n // Ignore bubbled events from children.\n return;\n }\n fig.close_ws(fig, {});\n};\n\nmpl.figure.prototype._root_extra_style = function (el) {\n el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n};\n\nmpl.figure.prototype._canvas_extra_style = function (el) {\n // this is important to make the div 'focusable\n el.setAttribute('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 } else {\n // location in version 2\n IPython.keyboard_manager.register_events(el);\n }\n};\n\nmpl.figure.prototype._key_event_extra = function (event, _name) {\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\nmpl.figure.prototype.handle_save = function (fig, _msg) {\n fig.ondownload(fig, null);\n};\n\nmpl.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.\nif (IPython.notebook.kernel !== null) {\n IPython.notebook.kernel.comm_manager.register_target(\n 'matplotlib',\n mpl.mpl_figure_comm\n );\n}\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ ""
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[32m***** Response from calling tool (call_xogelWhCJtGc3qgVyjLKdn5t) *****\u001b[0m\n",
+ "Back Test Finished. Results: \n",
+ "{ 'Drawdown': AutoOrderedDict([ ('len', 250),\n",
+ " ('drawdown', 0.6058542319399929),\n",
+ " ('moneydown', 61.05225758054621),\n",
+ " ( 'max',\n",
+ " AutoOrderedDict([ ('len', 250),\n",
+ " ( 'drawdown',\n",
+ " 0.6059527628926776),\n",
+ " ( 'moneydown',\n",
+ " 61.06218659776823)]))]),\n",
+ " 'Final Portfolio Value': 10016.001654389678,\n",
+ " 'Returns': OrderedDict([ ('rtot', 0.0015988865383717893),\n",
+ " ('ravg', 2.114929283560568e-06),\n",
+ " ('rnorm', 0.0005331042290341923),\n",
+ " ('rnorm100', 0.05331042290341923)]),\n",
+ " 'Sharpe Ratio': OrderedDict([('sharperatio', -2.046953329943005)]),\n",
+ " 'Starting Portfolio Value:': 10000.0,\n",
+ " 'Trade Analysis': AutoOrderedDict([ ( 'total',\n",
+ " AutoOrderedDict([ ('total', 6),\n",
+ " ('open', 0),\n",
+ " ('closed', 6)])),\n",
+ " ( 'streak',\n",
+ " AutoOrderedDict([ ( 'won',\n",
+ " AutoOrderedDict([ ( 'current',\n",
+ " 0),\n",
+ " ( 'longest',\n",
+ " 2)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'current',\n",
+ " 2),\n",
+ " ( 'longest',\n",
+ " 2)]))])),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'gross',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 16.001654389679175),\n",
+ " ( 'average',\n",
+ " 2.6669423982798626)])),\n",
+ " ( 'net',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 16.001654389679175),\n",
+ " ( 'average',\n",
+ " 2.6669423982798626)]))])),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ('total', 3),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 68.79755506901894),\n",
+ " ( 'average',\n",
+ " 22.932518356339646),\n",
+ " ( 'max',\n",
+ " 43.580547417852884)]))])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ('total', 3),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -52.795900679339766),\n",
+ " ( 'average',\n",
+ " -17.598633559779923),\n",
+ " ( 'max',\n",
+ " -22.613140431176447)]))])),\n",
+ " ( 'long',\n",
+ " AutoOrderedDict([ ('total', 6),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 16.001654389679175),\n",
+ " ( 'average',\n",
+ " 2.6669423982798626),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 68.79755506901894),\n",
+ " ( 'average',\n",
+ " 22.932518356339646),\n",
+ " ( 'max',\n",
+ " 43.580547417852884)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -52.795900679339766),\n",
+ " ( 'average',\n",
+ " -17.598633559779923),\n",
+ " ( 'max',\n",
+ " -22.613140431176447)]))])),\n",
+ " ('won', 3),\n",
+ " ('lost', 3)])),\n",
+ " ( 'short',\n",
+ " AutoOrderedDict([ ('total', 0),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0.0)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0.0)]))])),\n",
+ " ('won', 0),\n",
+ " ('lost', 0)])),\n",
+ " ( 'len',\n",
+ " AutoOrderedDict([ ('total', 448),\n",
+ " ( 'average',\n",
+ " 74.66666666666667),\n",
+ " ('max', 206),\n",
+ " ('min', 15),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 368),\n",
+ " ( 'average',\n",
+ " 122.66666666666667),\n",
+ " ( 'max',\n",
+ " 206),\n",
+ " ( 'min',\n",
+ " 78)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 80),\n",
+ " ( 'average',\n",
+ " 26.666666666666668),\n",
+ " ( 'max',\n",
+ " 45),\n",
+ " ( 'min',\n",
+ " 15)])),\n",
+ " ( 'long',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 448),\n",
+ " ( 'average',\n",
+ " 74.66666666666667),\n",
+ " ( 'max',\n",
+ " 206),\n",
+ " ( 'min',\n",
+ " 15),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 368),\n",
+ " ( 'average',\n",
+ " 122.66666666666667),\n",
+ " ( 'max',\n",
+ " 206),\n",
+ " ( 'min',\n",
+ " 78)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 80),\n",
+ " ( 'average',\n",
+ " 26.666666666666668),\n",
+ " ( 'max',\n",
+ " 45),\n",
+ " ( 'min',\n",
+ " 15)]))])),\n",
+ " ( 'short',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807)]))]))]))])}\n",
+ "\u001b[32m**********************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "\u001b[32m***** Suggested tool call (call_BGrbFbvat6Vi5X4XNyp5Yb1p): display_image *****\u001b[0m\n",
+ "Arguments: \n",
+ "{\"image_path\":\"test.png\"}\n",
+ "\u001b[32m******************************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[35m\n",
+ ">>>>>>>> EXECUTING FUNCTION display_image...\u001b[0m\n"
+ ]
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOydZXhURxeA37sSd0ISIEhw1+DuVqTIh1uRIm1xK9aiAYoXhyJFSltKizulSIFCcYoHkgAx4hvd3fv9WLJkiQvJJrnv8wR2Z+bOzJm5O/fcMzNnBFEURSQkJCQkJCQkJPINspyugISEhISEhISERPYiKYASEhISEhISEvkMSQGUkJCQkJCQkMhnSAqghISEhISEhEQ+Q1IAJSQkJCQkJCSMFF9fX9zd3bl69apB+MuXLxk5ciTu7u7UrVuXOXPmEBERYZBGpVLx7bff0rBhQ2rUqMHw4cN5/vw5AIpsk0BCQkJCQkJCQiLNvHnzhqFDhxIeHm4QHhYWxqBBg3B0dMTDw4OgoCCWLl2Kj48PW7du1aebOHEit2/fZvLkyVhZWfH9998zcOBAjhw5IimAEhISEhISEhLGhFar5ffff2fx4sVJxu/du5eQkBB+++03HBwcAHB2dmbEiBHcuHGDWrVqcfPmTc6dO8emTZto2rQpAO7u7rRs2ZI9e/bknAKo1WoJDAwEwMLCAkEQcqoqEhISEhISEhLZgiiKREZGAuDo6IhMlng13qNHj5gzZw59+/alQYMGjBgxwiD+4sWL1KpVS6/8ATRq1AhLS0v++usvatWqxcWLF7GwsKBRo0b6NA4ODtSuXZvz58/nnAIYGBiIs7NzThUvISEhISEhIZGj+Pn54eTklCi8UKFCnDp1ChcXl0Rr/wCePXtGhw4dDMLkcjmurq54enrq07i6uiKXyw3SFStWjEOHDklTwBISEhISEhISxoSdnV2K8eHh4VhaWiYKt7S01G8ECQ8Px8rKKsk0KpUq5xRACwsL/Wc/P78kBZGQkJCQMB4CA2HtWqhfHx49gmrVoEkTXdyFC7BoEbi4gCDAvn268PnzYdy4HKuyhITRoVKp9DOgCXWh9JDSKb7xS+pSS5NjCmDCNX/+oXFYxMXlVFXyBIIAboXt8HwdQl4/3VmSNW+RH2SMJzfLeu+unC7trQ3CTExETv4ZzpXLCqZNSvpBNnMmlK4QjkIBRw8rcSuppU//WJJa9v3ooYzz55Q8eyqjXYc4XAppWb3cDK1WYN6iSJycjavRcnN/pof8Imd2ERn5Xt/J6P4HKysrVCpVovCIiAi9cmllZaXfa5EQlUqFtbW1cUwBiyLSTZVF5Ke2lGR9j0YDz57KsLcXKeiUOxtF6k/j5cljWSLlDyA2VqBZA5tUr+/d3fDaWdMtWLtJRdv27x+Ez5/J6PaJNdHRugfir/tMDa65fNEGWzuRmBj4fHQMQ0fEZESUj0Ju68+Mkl/k/NhkRRu6ubnh5eVlEKbRaPDx8aFNmzb6NBcvXkSr1RpsNHn58iWlSpWSHEFLSOR2oqOgR2crOrSyoYG7DXNnm0uDtJEjihAVldO1SDvfzDRPU7pKVdRs2BrBxKlRjB4NdnbaZNNO+NKCe3ffL073mG+uV/6SIjJS4M1rGUFvZSyaZ8767031CklcHJw8puT0SQXRuahdJSQySsOGDfnnn38ICgrSh128eJHIyEgaNmwI6HYFq1QqLly4oE8TFBTE9evXadiwoXFYACUkJN6jVsOeXSY42It06JTy0oiYaBj/pQV37+h+yqIosHObKfXqqylWQsPGtWZERgpYWonUqaumiKuWUmU0FC4saYjZTWCAgJmZyPG7MGWaFffvymnfMY5xk6JxK5m8opSdiCIE+AtotDBujCX378pRq0Gtfq+Y7dgTgVoNm9abcvVvpT78i3HRjJsYDUDrtmpKFjGn35BwBvWz4uljOaamIhrN+7xiYgSG9Lfk2wVRNG0ex4W/3j+OatdR4+Ulw89XhlwuotEkVgyXLTZn1w5T1Gp4GygDRL61XMZb06sk4VUjVTSCnCdVO9JocyeUytTTS0jkJH379mXXrl0MGTKEL774gpCQEJYuXUqTJk2oWbMmALVr16ZOnTpMnjyZyZMnY2dnx5o1a7C2tqZPnz4IYkqrBD8iKpVKvzvlziMfLCykTSCZQRCgZBE7nr/K+2s0Hj+SMWe6DcVLxvDNvCjM0macMHpEES5fVLDiOzNu/at7GBYvoWHKZDkNm4fw5o2Mxw/ltGgdh0YDVlawZKEZm9abpbuscROjGP1VTIYelFmNMd27kZGgjhOwsX1fEa0WoqMhtbXaj/6TsftHU+RyGDIsBnNzkRvXFTg6avH3lzHhSwsDRSoh23dHUMRVS0EnLUls2vvovA0U+GaWOZcuKAgLTf6mWLg0kv/1jtV/f/pExsEDJpRw0/Bpjzj9ur6EfarV6qydpqYgl0NMDPT7n5X+Hv+Qnr1jWLRUZ8aLjgJTM9i3x4TdO01xKazFwlzkyCGTRNdVkj/iD/thmWgFiBUVtNQeZsUWLe51NKjVoEjBTGJM9+7HJL/ImV1ERqqoWs4V0K3ZS20T7NWrVxk4cCA7d+6kbt26+vDHjx+zcOFCbt68iaWlJa1atWLKlCkGO39DQ0Px8PDg9OnTaLVaatasyfTp0ylZsqSkAOYV8ssPVBShWycr7t7Wjco9/heDx7LcO+fj5ytw+ZKC50/lHD6oxNtLnvpF73AsqCUwQPewVipF1m9RsW6NGf9eT5th39JKpHXbODy+i0ShgGtX5FhYQuUqmgzJklGM4d7VaODvSwq+Gm1BWKiMFq3iaNMujrt35Bw9pCQkRKBBIzX9B8Xw5o2MR//JiYsVsLPXUriIloMHTLhzO/MTKlbWIgsWR2JpKXLmlBK5HP7XJ5aKlT5en8REQ/fO1jz8L+V7z722mh/3RaTJOpZanwYHC0ybaMGZU4kzW7pSxafdU7Z8b1xnytJFhm9+DZTX2Wk7HoBIzIkk7W+GNmI4JoKuzDpvDxIk2gMgk4kMGBxLuw6xiCJUq6HBNMHSRGO4dzPLyxcyjh9VcuMfBW8DBTp0iuOz4TEGm3TygpzGRHoVwI+FpADmEfLyD/TAr0p+3G7Kw4dyYmMMLSimpiL/3gvFNP1GMD0P7st5/UqgRSv1R7OIBfgLqFQC0dFw7aoCV1ctxYprGdTXCj/fzBf65fhoxk6I5ua/cvp0t0KtFijopKVoMS1fjY/GwlLk338U/H1Zwflzhg9dU1ORgk5afLx1CsD0WVEfdYF9bCzcuyNHkEGFChrMLXLm3tVoYPlSMzauzcTNkwG6dIFmrVWUr6Dh047WKa57i6dceQ2166pp3DSOGrU0ODikr6ECAwTOnFYSqRIwMREp4CjSpFkcIcEC69aY8dNunVYjCCKi+L4+n4+Jplw5DS9fyhg0JNbAMpoSaRmPRBFOHFOyaZ2pXnm2d9By8s9w7O1TLkejga9GW/D3JQXjJ0XzaY9YNH/9i+2MOboEI/vC533SVFcAJi6Es38DUO/t7wSKBZJMVriIlnWbVFSuqkmznMZKaIjAtEnmnDqR2Jo6ZFg0rkW1PH0iZ8KUaBwcxFwrZ1oIuB/Eiz23s608jVrNgf0/ATBw4EAUKZmZsxCLwnY0m9lQ/11SAPMIuXkgSolDvysZ/2XK90b/QTF8Mz9jVsCXL2R0bK17CNvbaxn6eQy9+sam+gBSqUAuA60ID+7JiYwUCAwQqFpdQ6nSWv3bs1YLX08xT7SjMSXs7LQsWBJF2/Zx7PnRhNlfpzz3WKqMhoNHw/VK8H8PZISGyqhbT52kq42LfylYvNCM/+4nPegUkvkxxnoX5Qsmdh+QGbQi3A1yZWXIQMJF3a5QmUxEoYQWzQXGTg7DsaCIOo6PvpM5NERg4lgL/jybtYu9mjaP49oVBVFRAkqlSMfOcQQHCTx+JMe9tpq5C6OoXtFW/zv997qcn38ywfeNjIf/yfUW3eRwEIKZYrmeClbeyNNuLMZL5ciSsOG80BZLNo1CIfLH0XC0IsyYYkHlKhpmz4tKcQo0OdIzHokivPCU4e8nUKacNl3KrSjy/h7/6xqMnaf7PKY/DOuV9gpP8YBTlwCYXH4fBy4WTjH5tBlRDBsZk+vG3Z/2mHDrXzm2tiJbN6Xtxadr91iWrYrMVXKml6tjj1Lt35+RmWXj4s/4dhT0/3zk8rTERqrRenhQo295AGkTiITxERur2wjx8oUMj/lJT+NYWuqUMIBdO0x5+EDO9xtVvA0UsHcQE/kLE0WIjYE/zynxfC7DwkKkXn01P2wx1VtggoNlfOdhznce5lSqoqZjpzjq1lPz8oWMosW1lCmrwcoKtmw0TbZe8dRvGMeQYTEc+t2EQ38kfsP+kPIVNJQtp6Hzp7E0a6HWh/cbGMuUCRaMnRCNRqNbaB8YIMPaRmT3ThOUSug/MMbAAlqhohZIflNBoyZqGjWJYP/PJqz4zgzfN4ZKx0jzH+mt/ANCUq12uqkph9dmBdga1RsArVYgNgaOH4fjx3XuRORykRlzoujYKY4jh5RUrqKhpnvGp0BjYuDmvwoEROLiBL5facb1fxIPfcWKa2jbPo56DdSMHm5JTIxA+QoaFi+PpFBhLTu3mRIYIODoKOLsoqVqdQ2BAQIhIQIxMQJVqqqpUFFLWKjAk8cySpTUUqCA4X34oUJe011DTXfdy4tGA9MmWXDgVxNsbbV8NSGa8+eU/PXn+4fS/8wO08PsGKjR/aWR8goItbBgesT0JOMFQeSb+VGUq6C7b347HJH2zDOJIIBbSS1uJTN2rR51gnskPdrxB+nnLwzHbFMMLzxl3LmtQBUhULiIltevdL8TOWquLvmXsndfYWYuct/chIio2PcPdCNDFMEr1J5N9xvj+Srpcaumu5pxE6O5e0eeaGr94AEl/QbKKVnkfdj9e3LGjLCgTDmdRTS3b5qxvHsTm7Z1cV0/LdvK1Gp1vzWZTJZhX4DpIcbLj6dNPyci4v0aXkkBzCB+vq8Z0u9TzN7tQBARKVqsBKO/nET5ilXSnd/UCaNo1aYjrdt9kqX1DA56y3ce3zB/8Wp279zCwQM/s2HrXhwKOOrTLF88FyeXQvQfNDxLy47n4IGfkcvldOzcPcn4n/aY8Md+E4q7aYiKFPjzrBKVyvAHUbqshu83qDAxgahIqO9uQ4IzsLn+j4J6NW0BMDEV2bBFRd16ajw9ZRQoIDJymCW3b6b9dr9/V8H9u4nTT58VxXceqb85/31Jyd+XDEfF2nXVmJiIBPjLiIzULS7XaKBr9zjGTohONi9TU5jydbT+zdvKSjdwfDU+c9O03f8XS/f/xbJssRnrvzfD2ubdTuGrfpnKNzVcZP6ULaehchUN5/9UvNvB+R6NRmDubAvmztZ9VxLHsIoXqFc2AKVS1L8wJ3xxFgQMNiAIiHiJrmy/V5c7d5NXwC2tRNZtUlG9ppqEy3COnw0nKgrKlnuvSMfvcE0NG1uRWrXTr7DK5bBkeSTTZkRhYyuiVOpeAM6eUvL0iYyVy8woKHub7nzjqVz4LbP6ReL1Us7Pe02IihKwsdXSsVMcPXvFUrV69q79zHI0CeqfXrNlAgXQVK5h3qL3MwpxcaBU6qy1//vUmoFm+5lh9T1czmyFs4+6QERUTxbwVaK4nr11m+lMzaBeAzXqOLj4l5J/runaUKsV6NnFmjp1YPBwJfUbxjFyqCVvXsvw8Zbz51kFrduqefxIhlwOpUobx472tBL6MoJikU+xaDYmp6uSLKIo6n35JVQWRVHU/4HOqXT834dptFoRUYTdu3dTsJUVJUuWlBTAzPLbkT8BnTZ/4ugfLPh2Otv3/JHo8OWcYvOGVXTr2U9/Q0SEh/H9Sg9mz/su2+rQoVM3xo4aRKMmLbC1s9eH3/hHzuYNZpw+qVOU4gecD7G0ElmyLJLSZXQDiyCAvT38fSOU+rVsE6WPjRH4bED6tlK2bB3HF2OjmTndPEnFL55F85J+g+7YKRYLS5Enj+WJdjcqFCJzF0UZ7J40JiZOjWbkF9GYmuqem5EDo+GuLu7tD5sQM7PA8h2KFy+wm6HT6Hp2UzF4QTiCoLP0/rLPhFnTkp/mHm2xky/9t4N/+sqsDvwZPos7tEkU51pUQ916aoaOiKFs+cQPrKLFcuYhJghQwPG9KUmhgDbt42jTHkZ/FYNmXiT8povT7FwO5VIxm6mikLfQrYWrUDaGCp/p7sGvZ0fh7SXDtag2Q1O8RomBBTCd62oVCcZrjaEiHG/dqumu4fzfodzt+DCDFcxZKise6T/v2BNBSLBAqTIayld4f6/LZDBmbAxjxsYQEQHDB1vxz1XdDXLtGly7lng5zqhhVtSuo+afawoEQWTClGiGj9S9nOaGe+v5vvtUNBGxblYzyfhNmzbx6NEjli1bBsDp06dZsmQJ/v7+uLu74+HhgaOjY6px8cyZMwdbW1vGJTgf8dy5c3h4eODn50e5cuVYuHAhpUqVAjBQ8AIDA5k8eTK3bt2iQIECfP311zRv3hyZTJZkXMuWLfXXx78kh4eHMXDgQI4cOSIpgFmFTCajcbNWrFnhQVhoCPYOBejQsi4dOnXjr3OnGDN2CpWr1mDD98u4c+sGllZWfNK5B5/27JvI/Ltvz3bOnjrG4uXrsbN34NyZE+z9cSshIcFUrVaTL8ZNxc7egV07NvP86WNeeD7FwtKKY0cOGeTz5vUrHty7w+Tp3+rDatdtyH8P7nHu9HGat2qXSA5VRARbNq7myuW/UCgUtGjdngGDP0ehULB88VysrG24d+dfXr3ypnyFykydMR8bW1vUajW7tm/i7OljaLVamrdsx6Cho1AoFCgUCurUb8zhg/vpN1DnpuH4USVfjbJAq03a9F26rIZChbRUr6mhy6exlHBL/EB2chYZ9FkMO35I+/q6Dxe5ly6roXffGPoPikWhgL2/RnDqhBJLS5Hnz+T8fUnBhfOJ5zdKldGwaq2Kh//JqVlLQ7Hi7+v38oWMSeMs0Gqhc9dYWrWJo4irkc4PvSOh9ctC+X4HZoHKjmTJ/I5JmP6jlZlab7lTKKBv/1hGDrXg8vVwSpfWsO8nExZ+a653mVLdLOMP3CqKhxyMaUP1mmpq1lITEizDva6abj1ic8XD6UPk2vfzvnIzJZik8qKpSSBkAgVJLifJ31SuxsACmPEpYDTJt0sRVxGnllFwTvf9TusRmDkWJEwVY7RTwO6HdC/7bsXi6FkphgGD07ar3MoKdu6NYOkiM37YnPJLYPzLuygKLFtszrLF5shkIt16xjJvUZRRTxGrL97CtFIplM72BuEajYYNGzawdu1a2rdvD4Cfnx/Tpk1j9erV1KxZizlzZjNz1iw2rF+fYhxAdHQMixd7sG/fPkaMGKEvx9vbm0mTJrFs2TIaN27MsmXLmDFjBnv37gXeTxUDzJgxA1dXVzZu3MjFixeZMmUKR48exdnZWR+3fv16Ll++rI9zdHQ0sBwOHDiQCTtGs2fPHkkBzCo0Gg0njx2idJly2Du830FmYmLC7l+OotFqmTZxNKVKl2XnvkME+Psze/o4bGztaNW2oz798SN/cPLYIZas2ICdvQP3791m07oVzPdYRdHiJdi+ZR3LFs9lnsdKAO7e/pc1G3/ExjbxcUxnTx+jXoPGBgqmra0do7+azNqVi6les7ZBXQFWr1hEXGwMW3b8SkxMNHNnTcbExFSvuJ0/d5IlKzZgY2vH15O+4NjhA/TqN5j9+3Zx9/a/rFq3HZlczvw5Uznwyx569hkIQINGTVk092v6DRyGKMLiBWbJKn9fTYhK8/Tm17OjGDA4BktLkUsXFVSvoeH7VWb8vt9w2k+pFNn9SwQ1a2kICxXQanVvux/uarSwgC6fxitAakaMiuHeXTlfjrTQu2gpXETLqrUqylfQGrw9x1O8hJZffs++NVRZTlyCxWVZpSUlfCCrEy9ec3TUuZ8RRRg4OJZGjdU8eiinRcs4lF9Fwz+6dP92GItGYaJT4kXdM1dE90/8FLlliC9VL+8EoHnTaCoMjqB2HXW6l4UZJQmtXMo09E3C/tPk8ine1MjUGsAEFsNU2kkpvP/NV53cgFI1Shn35oijy0GjxdEuTu9fMa0olfD17Gi6do/j5GFrDh7S4PVSjkwmJjt+x6PVCvy6z5TiJbSM+sJ4ju1LiDpaQ7HA21j1T7z0auLEiYSHh9O1a1diYnT1P378ONWqVaNBgwYATJ06lcaNGxMeHp5inLW1NYMHD6JIkSI0a97coJwDBw7QvHlzmjVrBsCXX37Js2fPAJ3yFz+lGxYWxsWLF/nrr78wNTWlefPmVK9enWPHjtG9e3d9nImJiUHcgAEDDMqzsLCkdu3anD9/XlIAM0vPzi0BiImJRq1W89UEw0XWjZu2QmliQsArb549eYjHsnWYmprhWrQYPXr15+zpY3oF8Mrlv/jn6iXWbdlLAceCAJw9eZR2HbpQqkw5AAZ+NooenVoQHKRbC1SuQiVcChVOcrfn/bu3aZGEla9x05b8de4Ua1cvYeY3i/XhMTHRXL5wjvVbf8LSygpLKysGDPmcdauX6hXABo2aUcRVt5PQvW4DXr/2BuD0ySMMHjqJV6+cePlChiiOZM+Pizl/fiSvvGWULVcFfz9/3gYGEBrqrFemSpfV8Mvv4Vhb6x7g0dFgng7HzgktGV276RS3RUsjcXHREhwsULyEFn8/GV27x+r926XVlUU8latoOHcpHG8vGQEBApUqaTLldsboiVfQFPLEuxYyiiJpS1RylCylpWSpdw/aBFavmnOagkkq5oRHnvBOASzhGkuJ+unYLWHsqNOpnBso3nlcAczMGkBZOtopvX2Q0ygUoInN1AtApcoaOrWF8dPCSWCQ4uULGbt2mHLsiJJPu8dSu66aWdMt9BtmAH75yYSRY2KybCjJSp4dek5RWSSWzWolips+fTrOzs4sX76cV69eAeDp6Ymbm5s+jYODA1ZWVnh6eqYYV7VqVVatWoWzszMTJ040KOfhw4e4uroyYMAAHj16RMWKFVmwYAHwfoOIKIp4enpiZWWln1IWRZESJUrw/Plzg7h4i2F83IdrAgGKFSvGoUOHjEMBTLiAO7cQX99fD50BdJ1x/95t5s2ago2NLQ2b6LR8hwIFEAQICw3BxtYOc/P3moOzSyECA/z1ef334A6uxUpw8a8z9Ok/BICAAD/Onj7G4T9+1V+nUCgI8PdFAOwdCiRaAB/P27f++vLh/aJ5QYAxYycz8rM+/PXnKf2C+khVBBqNBmcXF/01zi4u7+sogKmZPTHRoFCCXC4nNkbk7GkFr3z8mTdnOqIY/8MXAYHjR3SWuLt3rChZ0p4m9aKIiXlvrezWIxYbm/d1T+20hYQyJnfPmJjA5OlpW7CfHooV11KseJZnmyKpyfoxEOMfgApFlpUrmiQYauIM3dOkJqOY0CKplKdaJ4Oy1Em7wskpMtufooEFMPW2QBAQ5TLdtGY2tkWO3LcGCqAsXWWLigQWQK0mxWsTliModYqjMd1jHyLGW0M1KcuVEgn7M6GvVLeSWmZ9G8Wsb99bFs//HYZGA0MHWnLpgpIyb/7maJ0LOBc0vheQYF81pYrZYl6llM5PFSAKus0Uzs7OidJHRUVRsGBBgzAzMzOioqJSjAOSzA8gLCyMAwcOsGHDBipXrsyCBQuYOHEiP/30U6KyzcwMLQ9mZmaEh4cTGRmZZFxYWBhJYWlpiUqlMg4F0K2wXY55ws4oJqJuiq9kETt9WCnXZpw+Wo+nD28xoM+nABRzscG1iB3mstKEh4XiYm+CxTst50pUMC7OBSlZxA5zUwUTJ0ygfPnyDBw4kAF9ulOsWDGKuRaiWZMvGT78/Q7dZ8+eUbx4cZ7+9y+R4aYGdXAr/P6zmYkSJ3tzfby9jRmR4Sa670XsmD17FgsWLKBq1arY25hRo5IbSqUShUaFzzMnKleGF1GhWFsXIOiNHc8em3Djhhke83X5FShghkJhwuaNVpQo4Yiv7wqio6sCIAgRyOXBH7SaBng/eggCDBlgTskiGTvLLaGseZ3slNVL1BIHyEyVuCW4tzKDWqnl5bvPFkqBQknkm5yMPoJIDIBcTqmiDkmmSUhcTARe7z5bmchwziIZspKM9ucbpUDku8/FXR1QOKeez3OlAlETi4kMimZzW2TnfRtiZUr8HmmngjZYp0PWQDsLQt99LmxvgXkK176WC8SrOyVcdfejMY9Fnko5WkCJSLFM9n965Jw+FQZeDOZ765ko1Rp4k6miPwqPZOWwalIdmUwgfhGnIAIICDJDbVkQBMzMzIiJiTGwqEVHR2NpaZliXEpuXpRKJc2bN8fd3R2A8ePHU79+ff3UcTzx+SckOjoaCwsLzM3Nk41LDkEQjEMB9HwdgoVFykf/GBt+fjrN+vmrEH2Y57Mn/P33FYaNGqsP9/YLI1YIAcwpX7EKM2bPY8TosQT4+7Nx0xa6/68vz1+FEBWjJjg8FqsCxWjaog1Tp89kwZLVuDdowarvFlCmkjuuRYtz8MDP7N21jR17/yA4LJrwyFievwrR+dIqbIfn6/drUWzsCvDfEy+KltbVJWF6gEo1G1OuQmXOnz+Pa/EyvPQNp2791nTpupiH/y1FEKIoVmwN4eEdqF0bnJ1Jdp1LeHgnChRYQ7kKC3ApZIKf7xzksghatllDEVctnw1UIpeHola7AFClmprJ06MxsVbz/FX62j4pWfMqOSGrGKUbSLRyhcH9nak8Q1X6z5Hh0Qb5piZjfH1QytNUHzEoUv85IjQSVRbJkBVktj/F8PeW7ZeBKgR16mvd4i1AsVGxWdafqZEj9+3bcP1n/9BoAtIhqxj13sr82jcUIYVrRdX7B+2LgAhKWlkY9VgkvpvejouJy3D/Z6Q/K1SH/m19UF43PstfPBFxJsT6fOheQKesfXhGhiiKlCxZkosXL+rj3r4NIiIighIlSqQYl9J5GyVKlMDP773rrfh1fwk3fwC4ubkRHh5OUFAQDu98oL148YLGjRsbxNnZ2RnEJYVKpcLa2to4FEBRTF6xMFbi6/tph2aATpu2sramc7detGrTUR+fULapM+axbvVSBvyvEyYmpnTs0p0OnbonSjt46BiGD+rBn2dO0rRFG/oMGMrcWVMICgqkaDE3vlmwDFNTs0SL3z8sr0q1mjx6+IDW7TrxLikx0fDksW56xMpKpEPnr7l5oxd/X1awd7c1jx/NpWDBhZQo0RbQEh7ehbdvxyXbDg4OWsqUi6Nylc8wN1vJlb+78d+9KKpUq8lXE2ZgZ69zO7Fr301WLCnO0pWm2NmHUcRVd1pGZvo9N943GSVbZY17vwYwy8pUGE4BJ6noJSejvj7KtNVHbrje0BjvkQz3Z8L1Z3JF2vKIb/tk2v1jkq33rdpwF3C6yv1gDWCK1yYoJ165NuqxKH4KOAt+C+mV88svVDBY9zmsSQuCu/bMXAWymPA9d4m6+QvqsEgUtu9ch6UwTd6mTRvWrFnD+fPnqVu3HkuXLqFx48ZYWVmlGJcSnTt35rPPPuPq1atUr16d5cuX4+7ujq2toYsza2trGjRowHfffcfs2bO5dOkSt27dYsGCBdjY2OjjZs6cyd9//82tW7eYP3++gRuZeF6+fEmpUqWMQwH82PjdfYvn6vMQmbXrwma7jE0ceByuHN+jj/ec+CeeCaJbU53WltV1X47C1aO6rd6f0hh+DOPKj7prx1sOga2BXNm6BxtgKJ+CDRACIfPvcIU7lMaS0pTmSj/dNbdMFETF6h4QWi34vZJxTH4ZT08zAvzlPH08EX9/GVs3J6ywLfAPd+/Gf7fGz2+RgUiFi2hp1CQGheJbunaLpUatEK5fk2NmNpgq1TRAvHXnK8aMS+xoFODOzQt06NRaf4amhBETr3ClZZdpWlEYrsvLUH3S6tojlR3HuZoPlJw0kUAByNMkXAOY3l3AKfgBTLGcj3V4eFYSv74xB/pfSNBWNiVssWnumu11SAlLZ0vihu4j/K+b2HdO2lqWkEKFCrF06VIWLVqEv78/1atXZ+nS71KNS4kaNWrg4eHBnDlz8PX1pWrVqixZsgTQuYjp1KkTBw8epEiRIixcuJAZM2bQsGFDHBwcWLJkiX5t4aJFi/j6669p3LixPs7FxSWRJTEyUsX169f5/PPP84cCGDhyFfUib+Z0NbKdBsATM3NOn7iCStUsTdcIgsgnnePo2DkWby85NWupqVJNk2icq1037YNJXGwsf186z3erN6eeWCLnUX8MBTATu1HTq5AmdDoWl9cUwAzsQFW83wSQp0nov+8juoF5v0tekS1HeGWa+PskJ/rfyHdMO1a055FJcRzP30hWAZwwYYLB9+bNm9P8A1cuaYmLJ96hdELFrF27drRrl9hjR9GiRbl165b+JJCCBQuyebPuORofFm/dc3R0ZMOGDQiCgEyWcK29YJBu586dWFtb06dPn/yhAEbaOkNk6unyIv0iC3DHfhsqVVNAwKWQluIlNNjZi2jUApZWIg4OWurU1SDIRIoV0yY4GSFrHp5HDu2nU9eeWFsn9lUoYYToFa4s9N4qk+keshqt7myt9JBehTQvuz7JyGkXinxiATSYHs+MI+jULIDvxkdFLrD+wXvZckQBzIRz7mwiuFx1wv88i6jRIOQiZ6Hxil68Ihgf9uFLSfz3+Ol7a2sbtm/bjq2tbS5SAE9dhPW7QZU+R5YA7kCcta1+m3dKaE1M8a/XmrDS6T/PN0cRwNHWnMDQKBCh3OZ5KKIjcS+qYcnM71EoIihRUouDQ/YvVOnavU+2lymRCRJYOLKUeH9kGbUAprU+ykxMNxs7CfsmrdYn/RRwHmuLD8mMspHwwa9O5YSUj/X7+FjIc24K2NgtgACOHaoSt/QPIm8+wdK9fE5XJ0kEQUjyeNmkFL7k0shkAoIA/fr1o2RJ3RGSxtkjSbHjN/D0ydClApBmW4YKinpfh4W5S2kRBJ1LGr1H+p8tIDoSeWwMderl8Td/iaxDq33/oMjqN3aFHGLI+BrAtFoA5e8cWItiHpwCzkDfxD9487oFMDNHwaVnDWB8O+YWa1GOTgEbvwXQrUMJApZYE3HuutEqgB+L3KMADuoO63dlyAKYLizNYWC3j1tGEixfPBcnl0L0HzQ89cTv+O2XPbx4/pQJU2frw65ducimdasIjPOhmpWC8THm2CaI27x+FYGB/lSr7s74yTOxtTM8/3DD98uwsrYxqMe/16+wce0KAgP8KVm6LOMnz6RwkaKJ6hMaEsyyxd9y/+5t7B0cGPnFJNzr1E81TsKISO9RY+khwW7UdJGRTSkKue66vKb0ZMT6JK0BTJ30TAF/rBekj0WOTgEbvwVQbiLHy7kazscuIS+Yup/RrCN+Nk7IFkfimuDwRGHG2SNJ0bqh7k8CjUbD/p93sfOHDbRo1V4fHhAQwJIFc5g1dwnlF/zA+tf3WCPzZyYQFPSWpQvfxVWszPo1y1iz0kN/FFxsbAzbNq/l4IGf6fvu2DcAP783eMybybRZC6heszY/bt/EqmULWbx8faJ6rV6+CJdCRZg1dym3b15nyYJZbNy2D3uHAinGSRgRCdfnZfUJ7soMWKJEMWNKj1KpUwDTu97Q2MmUBTCPWUM/JFNrANOxCUST2yyACdaAimL2HluSCyyAACZNq/N271WCZ2/PtjLj1+3pNmwk1Sfiu3V78SeeC4mnfN+5eBHjnVjr4z/I7126t6Ita7bOpkNsK0aNGpWLFEAj5OaNa2zZsArfN68pXqIkYyfNoHiJkjx6eJ+tG9fg9dITtTqOBo2aMXbiDORyOYf/+JVfftpJTHQ0pcqU48vx03EpVBiAVz5eTBo7HM9nTylXoTLTZ83H2sY2UbnLF88lIiKcth26EBcbqw8/deoUlapUo2r1WmC+lyFRVvSzCyQyIoK/L/5Jxcrv4oAhw8bQr2d7IlURWFhaMWPKVxQqVIQGjZsZlHXu9HHqN2pKTfe6APTuN5jXPt6J6hQVFcnVvy+y+5cjKJVK3OvUp2Llaly6cI6WbTokG/dJlx5Z1R0SWcFHtQBmYC1aRuuTVzc+ZMoCqM1+BSA7ycwUsIEFMJU1gJrcZgFMqNxqs7feucACCFB9nDuMc8+28iIjVVQtp3OJExERkeRJaAsXLmTHjh307t2b1q1b4+XlxapVq/j000+ZNm0ad+7coW/fvpQqVYqRI0diZmbGDz/8wOvXr/n999/1p4js3r2befPm8dlnn9G4cWM63brF2rVriY2NJZdsYzI+goLeMv+bqfQdOIxfDp6hQeNmLFkwCwCPeTNo26EzP/12gu837uLalUvc+vcfgoPesmPrer5btZndvx7DxaUw+/Zs1+d588Y1vprwNbt+OUKkKoIjh35Lsuyhn3/JtwuXJ7KePX/+HNei7w6rNTXBRpRhKQq8fvEcb68XFE1wkK2NrS2Wlla8fqVbVzl91gImTJ2Nhbnhjfj86WNsbOyYMeVLen/ahgXfTMPaJvFu3tc+3lhZWRlMKbsWLYaP98sU4ySMDINzd41gClidwfrkVatXhiyAeXhXdELU2TwFnGssgAl+N9k9DZxLLIDGRlBQELt27aJnz558++23NGrUiL59++Lh4cGOHTt49uwZ69evx9ramp07d9K+fXuaN2/Opk2b0Gg0bNmyBYDIyEiWLVvG0KFDmTJlCvXr12fUqFEMGDCAy5cvSwpgRrl+9RIlS5WlYePmyGQyunTrzVcTvwZg4dLvadm6A6qICEKC32JtbUNw0FtMzcxQq+M4fuR3fLxfMmbcVMa+uwagecu2FCvuhrm5BTVq1cH3zesky3Yo4JhkeFRUFKbxB0Kbmuj+EwViwiOIjo7G1NTwsGhTMzNiYqJTzDMiIpwTxw4yYPAIdu47RKHCrixd9E2idNHRCcqOz9/UjOjo6BTjJIwMgyngLFYAMzIFnFELgjKD6w2NnYz4aMyME+7cRJZtAkmrBdB4LVoGGOxwzub+j8sdFkBj48WLF2g0mkQ+BevWrYtWq+XChQs8f/6cWrVqGZwYYm5uTtWqVfnzzz8BuHTpEiqVigEDBhjkM3XqVH799VdJAcwowcFBODoW1H9XKpWUK18JgAf37vBZ/26MHt6PX/ftIi4uDlEUsbCwZK7HKh4/esDYUYMZPqgn16/9rc/D0ur9wc9yhQJtOt/WzM3NiY0/ENrMFIAYQcRMJsfMzIzYWMPDomOiozEzT/6waACFQkGDhk0pX7EKJiam9B80nLu3/yUyUmWQztQ08UHVMTHRmJubpxgnYWR8zAE7I1a5jNYnz04BSxbAZMkuP4D6afhcYtH6cAo4O8moBT+fY2+vmy17/drQCOTl5QWAj48P9vb2ieJBd3qIt7dumdZ///2HtbU1gYGB9OvXj8qVK9OwYUPWrVuHKIrGsQZQEHLfshTHgk7c+OeKvt5qtZptm9fStUdv1qzwYNX6bZRwKwXAmOH9EQSICA9FqVAwf/EqoqOjOfz7LyxdNJuffz8Fgm7ZZnx+wrt/UmqXhGkEQXdY9MnT53QeMMxMCBW0qASRwvaOFC1W3KC+oaEhqFQRFHF1NSzjg3oUcS1GYKC//rtW1B1UjSgaXFfY1RVVRDgR4aH6dYs+3l7UrtsgxbiM9Lu+jXLZPZMRsltW8YMBOyvLFROsAUyYb0oyGtTHJO31EZXvlU1juk8y259igjWAaW4LA+Ume9ojJ36jYkLFTSlPV9miwnATSErXivFTzQp5rhiLRKXhFHB2jrmiOuN9kpdJrR3c3NyoVasWa9aswcXFhXr16uHt7c2sWbMwMTEhMjKS7t27M3PmTBYsWMCwYcOQyWRs376dp0+fon43TgQFBaHRaBgxYgSDBg3iyy+/5NKlS6xZs4bo6GjjUADdCtsluQjSmOnRpR2b163gxaN/adasGdu3b+fRg9sUsOqHTCZQulhBirhY89tvv+H5/Cn21iZYm2qYNW0sP/74I5UqVeJeUWcc7O0pWcQOawsT7G3MKFnEDgB7GzMiw03035PiwzQWrVqxYsUK3ry4TzFbc3aYR1A3zpQyzrYUrNSJnT9s4M2L+7i7u7NtwzJatGhBpdKFDfL8sB79+/Rg0KBBBPs+o0qVKuzYtIL69etTpdyHZzra0aRJE3776Qe+/vprrl27xn/3b7P8Ow8KFiyYQlzy8qWGW+GMX5vbyC5ZY4IDife2aWNnScEU7r/04mNpRgyAWoNbYdtEDkyTkjEuLhKvd5+tbCxwTmN9vM1NiUV3FmlKv6GcIqP9+ezdA9XE3ISiaZTrjbWZ/iCk4gWtUDhnrOyMkJ2/UV8Tuf5U8uJF7FG4pL1slZMNvu8+O1iaYJ9M24qiyPN3D1dTcxNc38lnzGORr5XZ+3YpaJmudvmQ9MoZbKEg6N1nF2dbLI3wt5gTqFSpe1hYvXo1s2fP5osvvgDAxsaGyZMns2bNGszNzenZsycRERGsXr2anTt3IggCbdu2pVevXuzfvx+AuLg4IiMj+eqrrxgyZAgA9erVIzQ0lG3bthmHAuj5OgQLi9zmrkHGjG8X892ylUycNIlSpcsxYdq3yMwd6dK9N592645MEChfsQqNm7bk39sPcG/YhmEjxzJy1BjCQkNwLVqM8VO/4fmrEMIjYwkOi+b5qxAAgsOiCY+M1X9PioRpBAHcCjszdeZ85nw7l0CfV1SWCUxQ2eDj/RbBzvF9XIA/latUZ+K0OYny/7AeVgWKMWn6N0z/eib+fr5UqFSF8ZNn8vxVCP5+vnw+pDcbt/2Ek7MLI76Ywurli6hfvwF29g5MmTGP8Fgl4a9CUoxLLzpZ7fB8/c7pdR4mu2UVXwXpP4fFajLUP8nmnWD26fnLtwjvLBMpyZiwPhGxWlRprE98PmKsOsXfUHaTmf4URVE/hRsrCmmWS4x7X9BLnyAE9cefusyJ36gY8X5N8csAFYIm7Y83MeT9tUFBEQQn07YJrYwxWt2zy9jHIjH2fZ1f+gSlq13iyWh/ikHvlwr5hkYjGNFvMSf5cAlVUjg6OrJu3TrCwsLw9/enWLFiyGQy5syZo1/3N2TIEPr374+Xlxf29vY4ODgwZcoU7OzsAPSGtWbNmhnk3aRJE/bt22ccCmD8GXW5jSpVa7Jm406DMFGEQZ+NYtBnoxKlF0Vo26ELbTt0SRQ+Ycps/WeAfu8cMafULkmlqVW7Hht/2AertsN23VsA0bGIItR0fxf3QdkJ+bAeAPUaNKVeg6aJrivo5MJvR/7Uf7e1c2DW3KVJ5p9SXEbJrfdNRsg2WT9Yc5elZSZcMxWnRvxgTV+SMsYaTkmnuT7xPgzVakSt8bk+yVB/xhluckjz9QmngOM02fqbydbfaJzhGsB0lSszXCeX7LUJ+yBBGUY9FhlsAkpBtjSQbjkN1mVm8XiSi0lLOxw5coRSpUpRvnx5bN553rh79y5arZaKFSty9+5d3rx5Q5s2bShVqpT+ugcPHlCxYkUAihfXef6ITeAuDnSWQUDaBJJnebcJBIComOTTSUgkJDs2gUDaN4Jk1C1NXtz4kNEd0Yoc3AWanSTc4JCps4BTuF8Mdhobhf0kdXJyF7DkBibDrF+/nk2bNhmEbd++HWtra+rWrcu1a9eYNGkSYWFh+vhLly7x5MkTWrVqBegsfYIgcOTIEYN8zp49i52dnXFYACU+AgkVwBhJAZRII9nhBxAMLSlprU9G3MCA7qGXF3YgZvRhmpN+4LITjaF1Ll2k9SzghH0gzyX2k/TscM5qJDcwGWbAgAHMmTOHMmXKUKNGDY4ePcrhw4f55ptvsLa2pnPnzmzatIlx48YxdOhQXr9+jYeHBzVr1qRz584AFC1alP79+7NlyxYUCgW1a9fm3LlzHDx4kFmzZkkKYJ7lnR9AAGJik08nIZGQj+m2ISOWqMw6gk5PWcaOgQVQcgOTiMwogGk9Ck6dCy2ABv2f3W5gDHcBS6SdXr16ER0dza5du9i4cSNubm4sW7aMTz75BICCBQuydetWPDw8+OKLL7CxsaFbt26MHTsWeYL7/+uvv8bFxYV9+/axadMmihYtyvz58+nZs6ekAOZZJAVQIiMYWACz+izgBPll5xRwWq2Nxk5GlY/8MgWcGetcWq1kGVXCc5Kc7P9cchScsTJo0CAGDRqUbHzlypXZtWtXinnIZDKGDRvGsGHDEsVJPZJXMUugAD73glsPcq4uWYwIRPlYIQZE5HRVPjrZLuvTBMfzfUwL4MeeApYsgEmnzW4LUHaS0El2ejf9yNPYRpk5bSSnyMkpYGkNoFEjKYB5lYRrAHcf1P3lIZI+JC9vkmOyZvWAnRGlLMMbH/KiAphRC2AebIukiFduMnJGb4bWAOYShSatsn0MJAugUZNLVrFKpBu3ojldA4ncTokPnX1nkg83ZqSFjK4BVGZgw4mxI60BTJnMKIBptZJlZp1hTmEgWw6uAZQsgOlCq9WydetWWrduTZUqVWjfvn2i6d6bN28yYMAAqlWrRv369Zk+fTqBgYGJ8tqxYwetW7ematWqfPrpp5w/fx6QLIB5lxKusHo2/HMnp2uS9Qhga2VGaES0bo40L5NTslYoDbWrZm2eCR8Af16Fxy8AEAUIt7dADI5MLOOdh0lfn2pZedDqlVELYE66AclO9ApgBuwaGdoEkksUmhx1AyNZADOKh4cHO3bsoHfv3rRu3RovLy9WrVqFj48P06ZN486dOwwYMIBSpUrh4eGBmZkZP/zwA7169eL333/H2toagG3btrF06VLGjBlD5cqV2b9/P6NGjWLnzp2SApjddGhZl227D+DsUjj1xOnA981r/telFT//cVofFlqlNMuO7ub+3dvYOzgw8otJuNepr4sLCWbZ4m+TjIvn0cP7LF04my0797/PMzSE1csWcuvmP1hZWTNg8Oe0atsxyTr9vHcHv/+6F7VaTau2nzBs5FfI3jlcTSkuNQQBHIvYEfbKeL3vZxV5StaED4ANewyi/NNyfXo2peTFjQ8ZtgDmEzcwaskCmCQ5aQGOy4WbZoyAoKAgdu3aRc+ePfn222/14YUKFWL06NH07NmT9evXY21tzc6dO/Ung9SrV4/27duzZcsWxo8fT3R0NOvWrWPIkCGMGTMG0PkG7N27N2vXrpUUwLzAwwd38Zg3k/DwcIPw1csX4VKoCLPmLuX2zessWTCLjdv2Ye9QIMU4gGtXLrLM41vMLQzPaF7m8Q1OzoX46beTeL14zpTxI6lUpRqFChtOF/596Twnjh5k5brtKJVK5syYwOE/fqXzp/9LMU4iD1OpTPZdn3AKeMdvUMA+c2VnEaIAgVamiBEx6bfovg1+/znDu4DzgQKYEUtTWjfK5EaLliInp4BzYXsZAS9evECj0dC8eXOD8Lp166LVarlw4QLPnz+nVq1aeuUPwNzcnKpVq/Lnn38yfvx4bt++TVhYGK1bt9anEQSB1q1bs3z5ckkBzCgLv51OqdLl6NVvMABPHv/H7Onj2fXzYZ4+ecTWjWvweumJWh1Hg0bNGDtxhoFvnju3brB8yTy27/kdAD/f1wzp9ylHz1wF4N/rV/lh0xr8fN9QplwFvhw/LZGSpUt3hdXLPejZZwBrV70/ai0qKpKrf19k9y9HUCqVuNepT8XK1bh04Rwt23RINu6TLj04fuR3ft//Ez16D+TIwffWv8AAP+7fvc2MbzxQKpWUKlOOFd9vxdYu8cP1z7Mn6dDpU5ycXQD4X59B/PrTj3T+9H8pxknkYdo0Ajsb8PpgW4sAjnbmBIZEJa8UVSyt+0srCRXAY+fTXdWPSWhWZJKe9ZD5bQpYkZEp4LRuAkl42kguWUJvLCeB5AVn7NmEvb3umfr6teFY6eXlBYCPjw/29vaJ4gG8vb3x9vYG4NmzZwCUKFHCIE3x4sXRaDTGoQAKgtEd1ZkqzVq2Zc/OLfTuPxiAC3+epnHTFigUCjzmzWDA4BG0bNMB3zevGTt6CLdv/kOt2vUAQ3mT+t/3zWsWzp3OzG8XU6VqDQ4e+Jl5s6ewdvOuRNOkZcpWYMvOXwgKCoBV7/N5/cobKysr7OzfK2euRYvh4/0yxThBgHoNGtO2Q2fu3bnJkYP79Xl6Pn9CEdei/LTrB04eP4ylpRWDh42muFvJRO3j4/WClq3b668tWqw43t4vEISU49LCh22Wl8lTssplUL+67i8BggC2he0ISudB8ykhNnaHPQez3+KRHchl0Ng9zfeEmNAB77Nscgkl6NwXERiRfWtX4/2dyuXp/r2ICa1kWm2y14saQ4tWbvh9ih/sAs5IXTMqp0F7KRVG3U7ZSWrt4ObmRq1atVizZg0uLi7Uq1cPb29vZs2ahYmJCZGRkXTv3p2ZM2eyYMEChg0bhkwmY/v27Tx9+hT1O0U/IkLnPszKysogf0tL3cyeUSiAboXt9BVKjl9+gdmz4YNZzizH2hrmzYMePVJO59qtA6uXLUCIDcbNzY2/L55j6dKllCxix64fd1KsWDHCw8MJC4jFwd4OhRhFySJ2ABR1tkGmDkepkOnDTERdR5UsYsepw/to0bw53TvpzLaTxo3mj/17UQV5U61aNcOKvLveR6E77s2tsO570Bs5lpYW+vwBXAra4e/vj4NV8nEli9jp83z72sqgjncVGjyfP6VVy+b8df5Pbt68yciRI2lUtxpubm4G1dKoYylRpID+WqXWidiYGEoWsUsxLj3Ey5ofyA+yZqmMnzZFXX8/cS/znsMgZfHCKFwc05w+1NEa/b7ATT/p/j4yIjnnvkhpqqRYOscSjRm8ePfZQimjUDLXRz435827z3Z2FhR4d88a8+8ztICVvv+dbM2wTmfbJCS9cvrIBOIPIi1ZvABCGtd553VUqtTXM69evZrZs2fzxRdfAGBjY8PkyZNZs2YN5ubm9OzZk4iICFavXs3OnTsRBIG2bdvSq1cv9u/XzdxptSm/ABuFAuj5OgQLi7gU08xfYMXDh9lT3fkL1NSsn7rj3fqNmrFn3wFqutclTq3Fzrkkz1+FcPrMRXbv2IJWo6F02fJERsXgH6Ti+asQALz9wvALjCBOrdWH+fnpDnR+/iqER09fcvLESc6dq6UvS62O49a9p1g7Fk+yLn7+uus931lRgsLVqCKj9PkD+AaEoNHKU4xLGPbmgzoGR8QhyGR80n0APgGRFHQtR5Vqtfj98Cm6dDOcvpUpTHj5+i3O76598dIfMzNznr8KSTEuLQiCbiDyzEKLkbGSH2T9eDIqwLVYVmaYabJEVg2Qxt8KgGhfIIMF5U7iXAuleSyJRwx7P95HRkQne73o+34CPyRKTdjrEKP/fYoR70+C8vcPIyCdbQMZv29FVbTug0yG55uwdJebV4mMVKWaxtHRkXXr1hEWFoa/vz/FihVDJpMxZ84c/bq/IUOG0L9/f7y8vLC3t8fBwYEpU6ZgZ2cHoN8JrFKpDNYKxlsGjUIBFEVSvamGj4ph5XcCEREf14ZsZSUybGRMmm7ypi3asnXDalQqFU2btwYEAvz9WLPcg5XrtlHCrRQAX4zobyCjKAKCDI1GrQ8LDQ3Vx9nbO9CmfSfGjJ2iL8vH2wsnZ+fk65Ugb1GEQoVdUUWEExYairWNrT6P2nUbpBiXMH+D+gKFixRDq9EQHRWNhaXOpKzVahBFMVG9XIsWx8fbm9p1dd+9vV5SpGhxRDHluPSQlvsmr5AfZM0PMsaTrbLWqgILJ8GDp9lUIO/cF5kSmpHNLpnBygK6tk5/236wBjDZ6z9wBC1+MO4aJXLDTUCZqWe65UxwOovRtk8OkJa2OHLkCKVKlaJ8+fLY2NgAcPfuXbRaLRUrVuTu3bu8efOGNm3aUKpUKf11Dx48oGLFigD6mbmXL19Step7t14vX75EqVQahwKYFtp3jKN9x5SthNlN1Wo1CQkJ4s8zJ5i7aAUAkSoVggCmpqZoNBpOHT+M5/OnaDSGi28LFSpMcFAQ9+/eoky5Cvzx2z59XONmrZg87nNatm5PuQqVuXzxT5YunMOWnb/gWNA5TXWzsLTCvU4DdvywgRGjx3H39k3u373FVxO/TjEuJUqWKkOx4iXZ8+NWBg8bw727t7h7+yYjv5iUKG3T5q3ZunEN9Ro0wdzcnJ/37qBl6w6pxklISGQxggDtm+r+srHIXOW+KKGS9M8daNI76XS50a2JMZwEIu0ATjfr16+nbNmyLF++XB+2fft2rK2tqVu3Lj///DOrVq3i4sWLegXx0qVLPHnyhKFDhwJQo0YNLCwsOHHihF4BFEWRU6dOUadOndyjABojMpmMJs1a8+/1K7iV0rmoKFaiJF2792Hs6CHIBIHyFavQqGlLvF6+MLjWsaAzA4aMYNG8GQD0GTCUs6eOAVC0WAkmTJnFmhUe+Pq+xsm5EDO+WZRm5S+esRO/ZvXyRfTr0QE7ewemzpyPwzs3LynFJYcgCMxdtIK1q5bQt0d7rKysmThtDoUKFwFg1rRxVK5SnV79BtOwcXNev/Jh6oSRxERH07JNRzp17QmQYpyEhIREtqOQg7kZREXrNg6Fpz5Fh631x69XVpBQuT37N7wJSHcWIvDW2hQxPCbVtAa8DdH9n1uUZSNiwIABzJkzhzJlylCjRg2OHj3K4cOH+eabb7C2tqZz585s2rSJcePGMXToUF6/fo2Hhwc1a9akc+fOgM4tzGeffcbatWtRKpXUqFGD/fv3c//+fd26QVHMmfczlUql35ly55EPFhYpbwKRSBlB0G0geZ5b3rgzgSRr3iI/yBhPfpE1V8p54CTsPQRxaZhpKlMCZn2JYGNp/HKeuADTluRsHRzs4MyPOVsHIyIyUkXVcjq3bhEREclugt2xYwe7du0iICAANzc3hg4dyieffKKPv3fvHh4eHty/fx8bGxvatGnD2LFjDXb9arVaNmzYwM8//0xQUBClS5dm7NixNG3aNOcUwLCwMP2ixLOXbkoKYCYRBChRyJYXb0KNdyDKIiRZ8xb5QcZ48ouskpxGxNtg6D8JYtNpvctK2jSGqZ/nXPlGRmSkihYNawC69f/xU7jZTY4pgPfv36dy5co5UbSEhISEhISERI5z7949KlWqlCNlS055JCQkJCQkJCTyGTm2CaRo0aL6z1duPsbCwiKnqpInyA/+4uKRZM16zp1RMHZ0/DKMpFwt6QpftU5F85ZZe5yU1J95D0nOvEV+kTO7iIyMpF6NsoChLpTd5JgCmPBcXAsLC2kNYCYRBN3xLhYWcXn+ByrJmrXERMOs6TYIgoAoJu9nUxBEZk234O/rYZiaZV35Un/mPSQ58xb5Rc6cIKEulBxffPEFDx484OzZs/qwly9fsmjRIq5fv45cLqddu3ZMnjw50bFvKSFNAUtI5HOOHlESFipLUfkDEEWBsFAZx46mfoyRhISEhETm+eOPPzh16pRBWFhYGIMGDSIwMBAPDw8mTpzI0aNHGTt2bLrylvwASkjkc06fUCKTiWi1qZ+yI5OJnDqupGs343LKLiEhIZHX8PPzY8GCBbi4uBiE7927l5CQEH777TccHBwAcHZ2ZsSIEdy4cYNatWollV0iJAughEQ+JyRYSJPyB6DVCoQEf9zjGCUkJCQkYObMmTRs2JD69esbhF+8eJFatWrplT+ARo0aYWlpyV9//ZXm/CUFUEIin2NnLyKTpW1hj0wmYmcvLQKSkJCQ+Jj88ssv3L9/n1mzZiWKe/bsmf6c33jkcjmurq54enqmuQyjmAIWBN2fRMaJb7/80I6SrFlL67ZxnDhmkqa0Wq1Am3ZxWVofqT/zHpKceYv8Imd2kVo7vnr1ikWLFrFo0SIDK1884eHhSZ4eYmlpSURERJrrYRQKoFthu2SPQpFIH26F7XK6CtmGJGvWMOZzWPAthISQ4g4/QQA7Oxg9whKzLNwFHI/Un3kPSc68RX6R82OjUiW/kU4URb7++muaNm1K27Ztk02THEI6tHSjUAA9X4dgYSEtKs8M+clPkyRr1rN4uYLPP7NEEEhyN7AgiO/SqXj9VvIDmFHyi6ySnHmL/CJndhEZqUo2bvfu3Tx69IhDhw6hVuvG2niFT61WI5PJsLKyQqVKnEdERATOzs5prodRKICimLLlQSLt5Ke2lGTNOlq0UrN+i4opEywICxX0u4Lj/7e2EVm6IpIWrdQfrR5Sf+Y9JDnzFvlFzo9NSm144sQJgoODadSoUaK4SpUq8cUXX+Dm5oaXl5dBnEajwcfHhzZt2qS5HkahAErkbvz83uDsXCjHyhdFkQB/P5ycXVJPLJEsrdqo+ft6GMeOKjl1XElIsICdvUjrdnG07xCXpc6fJSQkJCQS8+233yay7q1du5Z79+6xfv16nJycEASBrVu3EhQUpF8jePHiRSIjI2nYsGGay5IUwAwya9o47t+9BUBsbAxyuULv0fvL8dNo3qpdhvMe3LcrE6bMomr1tPnyyQy7dmzm4IGf2bB1Lw4FHPXhyxfPxcmlEP0HDU/x+oMHfubp44dMmDo7ybz37d6GUmny7pQJEedChenT/zOaNGuV7rru2bmF/b/sxsnJhXp1a2Nm5UCvvoPZsmE15hYWBnWd/81UfVyrNh1p3e6TdJeXWV54PmPf7m3UqdeINSs8AN1bmkajxsTEFIBKVaozz2NllpR38MDPyOVyOnbunuE8TM2ga7c4yc+fhISERA5QsmTJRGF2dnaYmJhQpUoVAPr27cuuXbsYMmQIX3zxBSEhISxdupQmTZpQs2bNNJclKYAZJOFDe+qEUTmmZGQFEeFhfL/Sg9nzvkv3tWFhoSnGN2/ZzkA5vHr5AvO/mUrxEiUpXiLxjZ4Sp08eZdykmTRp1pKSRex4/kq3HiU8LBTzBGdJq9VqXno+p3SZ8ukTJotZu3IxX06YTrHibvoXglPHD3P65BEWL1+f5eV16NSNsaMG0ahJC2zt7LM8fwkJCQmJnMfBwYGdO3eycOFCJk2ahKWlJe3atWPKlCnpykdSAD8Cfr6vmfDlMCpWqsrtWzeYM/87FAoFWzeuweulJ2p1HA0aNWPsxBnI5XIePrjLmhUevHn9iuat2qHVavR5vXn9irWrFvP44QMKFHRi2OdfUat2PQB2btvAiSN/AFChUlVWLFucofrWrtuQ/x7c49zp40laLtVqNbu2b+Ls6WNotVqat2zHoKGjuPXvP/y8ZzuiKBIWFso3C5alWlbdBo2xtLLG+6Unjx8+4Mypo4SFhhIREcam7b9w9/YNtm9Zh5/fG4qXKMXnYyZQtlwFvho5ED/f1yzz+BYf7xdEhARgYV0AhwKOnDtzHEEQCAsNYfRXk7l/9xYVKlZJdTeUt9cLNny/jMcPH2DvUIDe/YbQonV7AA7/8Su//LSTmOhoSpUpx5fjp+NSqDB379xk/ervCPD3xaVQEYYMH01N93qJ8r5z6wYiIsWKuyWK+5CpE0bh7FyIa1cv0axFGyJVKgPr65o1a3j4xJMJU2Yn2xcKhQKFQkGd+o05fHA//QYOS7VcCQkJCQnjx8PDI1FY2bJl2b59e6bylRxBfySCg95SsXI1dv50iPIVKuExbwZtO3Tmp99O8P3GXVy7colb//5DTEw082ZP4ZMuPfj5j9M4uxQiMMAfAI1GzTczJlC1ei327D/OyDETWLxgFv5+vjx++IA/z5xkw7Z9bNvzO2p1HHv27MlQXW1t7Rj91WQ2rl1OcNDbRPH79+3i7u1/WbVuO2s37+bhf/c48Mse3OvU5399B9O8Zbs0KX9xcXGcOn6YmOgoypavBMC9O7cYN2kGG7bu5c0rbxbNncFnI75k34GTtO3QmdnTxxEeFsrqDTsp6OTC3EUr6DtgqD7P9p98SvOW7fhf38GM/moyANevXaZWnfpJ1kFfl9hYZk79iirVarJn/3EmTpvDxrXLuXv7X4KD3rJj63q+W7WZ3b8ew8WlMPv2bAd0Vr0BQ0bwy8EzdO3Rm3WrlyaZ/+mTR2jQqHmqbRLPKx8vtu/+nYFDPk8xXXJ9EU+DRk05c/JImsuVkJCQkMifSArgR6Rp89aYmZkhlytYuPR7WrbugCoigpDgt1hb2xAc9Jb/7t9FaWJK+08+RaFQ0P1//bGxtQPg8cP/iIxU8b8+g1AoFFSr4U6t2vU4f/Yk5hYWhAQHcerYId4GBjJn/neMHj06w3Vt3LQlVarVZO3qJYniTp88Qr9Bw7F3KICtrR19+g/hdBqVjD/PnqBn55b07NySvt3bceTQb0ybuUC/YaNQ4SKULV8RC0sr/jp/hroNGlOrdj3kcgVt2nWicGFX/rl6OV2y3LxxjZrudVNMc+/uLbRaLb36DkapVFKufCXafdKVM6eOYWpmhlodx/Ejv+Pj/ZIx46YyduLXAFhaWvHn2ZPcvXOTZi3asHnHr0nm/+DebcqUTfsUdJ36jTAzN8fC0irFdKn1hVvJMgQG+PM2MCDNZUtISEhIGA9arZa9e/fSqVMnatSoQcuWLVm4cKGBk+eXL18ycuRI3N3dqVu3LnPmzEmXE2iQpoA/KvYOBfSfH9y7w4wpX6HRaChTtjxxcXGIokhwcBAFEmy+kMvlOBZ0AiAgwI/goCB6dm6pj9doNNjY2FK0WAkmTf+WA7/uYduWtRQvUZKlSzywsHc1qEPCzSrNW7Xjy/HTkq3v6K8mM2poH86fO2UQHhjgx4JvpyETdO8LIiICaXM22axF2yQ3iMSTsI3CQoIT7eR1cnYhMNA/TWUB+Pv5YmZujrW1TYrpQkODKVjQ2WCa2Mm5EM+fPsbCwpK5Hqv4ec929v+8mwKOBRn15STc69Rn2qwFbN+yjvmzpyACPXsPpGfvAYnyfxsYYCBbaqQ1bWp9oVAosLax5W1gAAUcC6a5fAkJCQkJ42DLli2sXLmSoUOHUr9+fTw9PVm9ejVPnjzhhx9+IDw8nEGDBuHo6IiHhwdBQUEsXboUHx8ftm7dmuZyJAXwIxKvXAQG+LFmhQcr122jhFspAL4Y0R/QPfgDAvwQRVG/UzZ+GtbeoQBFXIuycds+fZ4B/n6YW1gQ9DYQZ2cXlq7cSEREOHt2bmH27Nl8t+YHgzqkZ4epvUMBPv9iIuvXfEe58hVxcimkD586cz7l3k3bRkaqCAtNefNHWkmogBUo6IS31wuDeF/fN6la8xLyz7XLuNdpkGo6R0cnAvzftzuA35vX2NrZEx4WikKuYJ7HKqKjozn8xy8sXTibPfuP4eP9kknTv0EURW79+w9zZ03GvU593EqW/kAuGVqtNs31TqjECTIBjeb9OtCQkBD957T0hVarRZBJZzZJ5B9iouHoESWnT7x3X9SqbRwdOkruiyRyF1qtls2bN9OrVy8mTpwIQIMGDbC3t2f8+PHcu3ePy5cvExISwm+//aZ3A+Ps7MyIESO4ceMGtWqlzYNInpwCjomGA/uVjBlhQb+elowZYcGB/UpionOmPpEqFYIApqamaDQajh/5A8/nT9Fo1FSqVBVBEPh9/0+o1Wr++G2fXgEsX6EyarWaY4cPoNFo8HrpybjRg7l54xovPJ/xzYyJ+L55jYWFJebm5tja2ma6rs1btqVipSoG067NWrZl947NhIWGEh0dzZrli1i/Rrf2TalUpujVPD00adaKq5cvcOOfK2g0ak4eP4S3lyfudVP2a6RUKol85zfp+tXL1P5AAYyICCcwwE//FxoSTLkKlTE1M2Xfnu2o1WoePbzP8aN/0KRZK0JDQ5g57SuePn6ImZkZVlbWWNvYIJPJWbF0HieO/oEgCNg7FECQCVhZWSeqk2NBpyTXU6aFwoWL8s/VS0RHR+Pj7cXJkyf1cSn1BejWWYaHheHo6JShsiUkchunTyqo727D5HGWnDqh5OoVJadOKJk8zpL67jacOSXZOSRyDxEREXTp0oVPPjH0KhLvHsbb25uLFy9Sq1Ytg3OCGzVqhKWlJX/99Veay8pzv4zTJxXvTjOQGZxmcOKYCfPmaFm6IpKWrbP2KKvUKFaiJF2792Hs6CHIBIHyFavQqGlLvF6+QGliwpz537HyuwXs3LaBuvUa6a1JSqWSbxYsY/2aZWzbvBZTMzO6du9D46a6KeEOnbsxaexwIlUqypSrwPLvFpMVkn0xbhr37t7Wf+/T7zN2/LCeMSP6ER0VRZVqNRk/eRYAdeo25OBv+5g87nOWrtyYqXJdixZn6sz5bN24Bt83ryhavARzF63EIZXp0YZNmrNo7gyCgwLx9vKkZOmyBvGb169k8/qV+u/lKlRixfc/MGf+MtatXsqv+37ExsaWz4aPoU49nff14SPHMf+baYSFhuBatBhTvp6HIAhMm7WA9au/Y/P6VVjb2DLmqykUdEp89E6VajV5/PAB1Wq4p7sdOnT6lPv3bjHgfx0p7FqULl264On1Gki5LwCePXmIa9Fi6Zp+lpDIrZw+qWDUsPfnyGu1gsH/4WECI4dasn6LilZtsnfcl5DICDY2NsycOTNR+OnTpwEoXbo0z549o0OHDgbxcrkcV1dXPD0901yWIKZ0qvBHRKVSYWWlW/B+97EPFhaWqVyROqdPKhg5VJdPSueZbtia9waD/HRWY26Q9c6tG+zYuoFlazZnKp/0yrp9yzpMTc3oM+CzTJWbneSG/swq8ous2SFnTDTUq2VDeJiQ5Hj/vi4i1jYiV26EZfl0sNSfEhkhMlJFlbK69foRERFYWqas/9y+fZsBAwbQoEEDNmzYQJUqVfjss88YP368Qbo+ffpgbm7ODz/8kExOhhiFBdCtsF2qDZAa0dEwTTddnuwNKooCggDTJlrx+jWY5cG1IW6F7XK6CtmGMctaskhLfvpxM2qVP2XLlk39glRIi6yxsbH8c+UCP/30U5YsB8hujLk/s5r8IuvHlPPHHyEVP/SAbtwPCxW48bcd/ft/nLpI/SmRHlQqZZrT3rhxg5EjR+Lq6sqiRYsA3fGnyZGa/9uEGIUC6Pk6BAuLzB09deBXJcHBqSuRogjBwbBuk4qu3fPOcVf56Q0tt8g6fPREli5bxfTZCzKcR3pkPfDrXtp36s7bCJG3ESEZLjO7yS39mRVkRtaYaDh6WLe+LSREwM5OpHXbODp8YnwbHbKjT3fvtUAmU+qne1NCJhPZtSeOBs0js7QO+eXezS9yZhdpXTd/9OhRpk2bRokSJdiyZQv29roTnqysrBKdFww6a6Kzc+IlSclhFAqgKCZvtUsrp04o9Wv+UkMmEzl5XEmXPHjeaVa0ZW7B2GUtUbIM02YtyJI6pkXWrt376NPmRoy9P7OS9Mqa0trmuTm0tjktfMw+DQkW0jTeg25NYEiw8NHqkl/u3fwi58cmLW24detWli5dSp06dVi7di3W1u83G7q5ueHl5WWQXqPR4OPjQ5s2bdJcjzyzCzgjg0FuwM/vTU5XQUJCIgeJ3+gQHma4weHDjQ6nTxrF+3y2YWcvIpOlTRuRyUTs7CXNRSJ38NNPP7FkyRLat2/Pli1bDJQ/gIYNG/LPP/8QFBSkD7t48SKRkZE0bJiy14yE5JkRI34wSKsFMCsGgw4t62JqZoaAgCAIyBUK3OvUZ/RXk5N0DZIW9u3ejr+/L1+On8bBAz/z9PFDJkydjb+fLyM/681vR/7MdL0lJCRyBzHRMGWCBZD0xrb4cEEQmTLBgr+vZ/1GB2OlVds4ThwzSVNarVagdbu8N+MjkfcICAhg0aJFFClShH79+vHgwQOD+GLFitG3b1927drFkCFD+OKLLwgJCWHp0qU0adKEmjVrprmsPKMA5tRgsGHrXpxdCgMQqYpg7uwprF25mKkz52cov179Bus/hyVY4ezk7CIpfxIS+YyjR5SEhaY+URO/0eHYUSVd8+DSlqTo0DGOeXO0ad4F3L5D/mgXidzN+fPniY6O5tWrV/Tr1y9R/KJFi+jWrRs7d+5k4cKFTJo0CUtLS9q1a8eUKVPSVVaeUQCNYTCwsLSiYePmHD30G6A7DmzD98u4c+sGllZWfNK5B5/27IsgCFw8f4btW9cRFhZG0WIlGPXFREqXLc+uHZvx931Dk+at+XnPdkRRJCwslFFfTmRIv085euYqY0cPpmv3PjRv2RaAi3+d5afd2zh25BBvXr/i+5WLefzwAQUKOjHs86+oVbtelssqISHx8TmdzrXNp47nHwXQ1AyWrohk5FBLBEFM0fXX0hWR+cYyKpG76dGjBz169Eg1XdmyZdm+fXumysozawDjBwN4/6P/kI89GPj5veHPMyeoUk1ngp03Zyo2tnbs3HeIuYtWcfjgfs6cPIpGo2HFd/P5es4i9h04iXud+vywea1BXu516vO/voNp3rId3yxYZhDXrEVbLvx5Wv/9rz9P07xFG9RqNXNmTKBq9Vrs2X+ckWMmsHjBLPz9fLNeWAkJiY9OXl3bnFW0bK1m/RYV1ja6sT1+TWD8/9Y2Ihu2qoxyg4yERE6TZxRAyJnBYPTwfvTs3JIenVsweewIihZ3Y/Cw0bx+5c2zJw8ZPmocpqZmuBYtRo9e/Tl7+hhyuRwLc0uOHf6dJ4/+4399BrFw6Zo0l9m0eWtu/nuNyEgV0dHR3Lj2N01btuHu3btEqlT8r88gFAoF1Wq4U6t2Pc6fPZl6phISEkaHtNEhdVq1UfP39TC+W6Widds46taLo3XbOL5bpeLv62GS8ieRa7l48SLdu3enWrVqtGjRgq1bt6boAzC95Jkp4HjiB4NjR5WcOv7+YPDW7eJo3yHr/WWt27xbvwYwIS89n2Nja4dZAm/TTs6FCAzwB2Cux0p279jM9MljsDC3ZPCw0bRs0yFRPknhUMCRChWrcOXSXyiUSkqVKUfBgs48vH2Z4KAgenZuqU+r0Wiwscl9ToElJCSkjQ5pxdQMunaLyzfT3xJ5n1u3bjFy5Ejat2/P2LFjuXHjBkuXLkWj0TBixIgsKSPPKYBgHIOBY0EnwkJDiI6KwszcHAA/39fY2tkTHRVFeFgoM79dTFxcHJcunOW7Rd9St0HjNOffrEUbLl/8E5lcTtMWOr8/BQsWpEjRomz8YZ8+XYC/H+YWFlkrnISERLZgDGubJSQksp81a9ZQoUIFli5dCkCTJk1Qq9Vs2LCBgQMHGhiXMkqemgI2Jgo6OVOhUlW2bFxNTEw0Pt5e7P95N02bt0aj0fDNjInc+OcKSqUSGxs7TM1MMTExfNNXKpXJegxv2LgF9+/d5s7N6zRuorP4VatWDXWcmmOHD6DRaPB66cm40YO5eePaR5dXQkIi6zGGtc0SEhLZS2xsLFevXqV169YG4W3btkWlUnHjxo0sKUdSAD8iU2fMIzjoLQN7dWL6xNG0ad+Jjp27Y2llxZQZc9m0bgXdOjZj49rlTJ+1EBMTU4Pr69RtyH/37zB53OeJ8ra0sqJSlWqUq1AZm3fnvpqYmPDtwmVcOH+WPt3aMmPKl3Tt3ofGTVsmul5CQiJ3IG10kJDIX3h7exMXF0eJEiUMwosXLw6Ap6dnlpQjiFm5ojAdqFQqrKysALjy739YJJimVCgUmJpZoNVqiErCAmZpZQNAVKQKrVZjEGdqaoZCaUJcXCyxMdEGcXK5HDNzS0RRJFIVnihfcwsrZDIZ0VGRaDSGg6mJiSlKE1PU6jhioqMM4mQyGeYWOllUEWGJ8zW3RCaXExMdhVptOEWjVJpgYmqGRq0mOtrwnEpBELCw1DmUjlSFJ1r8aWZmgVyhIDYmGrU6lsKOVrwOjEAUQaFQYmpmjlajISoqpTaMQKvVGsSZmpmjUCiJi40hNjbGIE4uV2BmboFWqyUqMiJRvhaW1giCQHSUCo3GsG9MTM1QKk1Qx8US80HfyGRyzC10Zzkn2YYWlshkcmKidX2TUFaliSkmJqZJtqFMkGFuaZV8G5pbIJfr2jAuLtYgLr4NNRoN0R+0oQBYZLQNFQrMzNLWhlqtxkDW+DbM1P0dHYlGnbH7OzIijA8HDDNzS+Sp3d8aNdFRSd/fggAOlgLefqEGRyTp7+/YGOI+aMPcOkYIAtiZi7wKCDeQNS1jRKRKzbnTsVy5rCA8HKytoW4DDa3bmmNqlvoYkdz9/THGCHMLC4q72PDgqU+iY6+yY4xQf3B/f6wxQqlUUr5kIZ56v010H2bXGJFcG2blGCEIUKpoQXyDY4iLy/4xAiBKFYFWNGzD3DpGhIWFUKOiG6A7v9fS0tIg3a1bt+jVqxfbtm2jQYMG+nC1Wk2lSpUYP348I0eOTFR2ejGKNYAP71w1mM8uXrw49erVIzw8nKOXTydK36tXLwBOn77O27dvDeLq1q1LiSJOPHnyhAe3/jWIc3FxoWnTpsTFxfHbb4l3xnbp0gUzMzMuXLjL69evDeKqV69OSbdyeHt7c/PW3wZxdnZ2tG2r88n3yy+nEv3Q27Vrh62tLdeuPU6kuVeoUIHyJavi7+/Pv1cM8zU3N6dz584AHDz4F1FRhj+65s2b4+Rkx507d/jvv/+4nyDOzc2NCnXqEBoayvG/DfOVyWT07NkTgBMnrhISEmIQ36BBA4oWKcijR494cOuWQVzhwoVp3Lgx0dHR/PHHKT6kW7duKJVKzp+/ja+vofuZmjVrUrJEGV68eMHNW1cN4goUKECrVq0A2LfvRKJ8O3TogLW1NVeuPOTly5cGslaqVInybpV58+ZNoja0srKiY8eOAPz++5/ExBgOEi1btsTR0Y6bN2/y+PFjg7jSpUtToVYtgoKCOPVBGyoUCrp37w7AsWN/ExZm+EBq1KgRRYoU5MGDBzy4e9cgztXVlYYNGxIZGcmhy4nbsEePHsjlcs6e/ZeAgAADWd3d3SlZohTPnj3j1q3rBtcVLFiQFi1aoNFo+PXXxPd3p06dsLCw4NKl+/j4+BjEValShXJuFXn16lWi+9vGxob27dsDsH//mUQP19atW+PgYMeNG894+vSpQVzZsmUpX6MGgYGBnPmgDU1NTenatSsAR44cISLC8EHXpEkTCtlbce+3ozyQyw3iiru6Uq9hw1w6RvyS4THCqcAFOnd6H2dubk6FUmkfIxKSHWPE/ZuG+UL2jREJ+ZhjBBTCwVLg1OWcGyMS8rHGCJm6ChUr5uQYcSnpMaKQI/fu3ePB/fsGccasRzyK8Et0XUI+HB8+RCbLmslbyQKYAMkCqEOyAOqQLIDv2jCHLID2ly9SaPxoYgWBKAcH0GpBJgOtFoVMRuSs+US0bJOrxojMWAAzO0ZIFkDJAihZAN9jzBbAJ0+e8Mknn/D9998brAMMCQmhbt26zJkzh759+yYqO70YhQJ455EPFhaWqVwhkRKCACWL2PH8VUiiATevIcmat0hKRouTR3EZ1l8Xn4TgoqDbEeu7ZReRaXSfZAzkh/4ESc68Rn6RM7uIjFRRtZwrkLQCGBMTQ40aNZgwYQLDhg3Th9+5c4eePXuyc+dO6tatm+l6SJtAJCQkjAohOhqnCaN1n5N52sSHO00YgxAdnWQaCQkJidyIqakp7u7unDp1ysAifeLECaytralatWqWlCMpgBISEkaF5ZHfkYeGJqv8xSOIIvLQECyP/pFNNZOQkJDIHkaNGsXt27cZO3Ys58+fZ+XKlWzdupXPP/8c83e+hTOLpABKSEgYFZYnjiKmcZGzKJNhefzIR66RhISERPZSv3591qxZg6enJ2PGjOHQoUNMmTKF4cOHZ1kZRrELWEJCQiIeeXAQQiq74OIRtFrkwcEfuUYSEhIS2U/r1q0TOYPOSvKkAihER2N55HcsTxxFHhyExt4BVdsOqDp2RcyC41NymtDQEExNTPVHzElI5CU09g6IMlmalEBRJkNjb58NtZKQkJDIW+S5KWCLk0cp7l4e53GjsDxxBPMrl7A8cQTncaMo7l4ei1PHsqysDi3rsm3zWoMwP9/XdGiZ+d05KTFiUE9CQ3VWjzUrPNi3e/tHLU9CIjtRte2QLgugql3Hj1wjCQkJCeMjIiKCxYsX06pVK6pXr06nTp3YvXt3IpdDFy9epHv37lSrVo0WLVqwdetWRFHMWxbAhK4jAP1DJP5/WVgYLkP7ZanriN9+2U3DJi0oW65CluSXFsLD3/vA+nL8tGwrV0IiO1B17IpmzjRkYWEpbgQRBQGtjS2qDl2ysXYS+ZkPZ5e09g7QpydCg9aI0kHMEtmIKIqMGzeOu3fv8tVXX1GyZEn+/vtv5s+fT0hICGPGjAF0p4qMHDmS9u3bM3bsWG7cuMHSpUvRaDR5RwFMq+sIURBwmjCGl9f/y5Lp4Bat27NiyVxWb9iJUqlMFP/08UPWf78MrxfPKVK0OGPGTqZMWZ2y+Nefp9m2+Xuio6Np1aYDF/86i8eydTi7FOb0iSMc+HUPvr6vMTMz5399BtGlWy/9ucAjh/Zh4ZLvOXb4AE4uhShXvgKjNq1h/Q/79GWPGtaXgUM+p37Dphz4dS+Hfv+ZqKgo6tZrxOdfTMDc3CJRfSUkchrRzAz/FetxGdoPURBS9APov2JdnljWIWH8WJw8itOE0chDQ/VLFESZDI4dopitLf4r1hPZun1OV9NoyOtLsXKaBw8ecOHCBVauXKk/haV+/fqEhoayZcsWRo8ejSAIrFmzhgoVKrB06VJAd3qKWq1mw4YNeWcKOKdcR/yvzyDkcjl7ftyaKE4VEcGs6eP4pHN3fjpwgm49+/LN1xOIjFTh4/2SVcsWMGHqHHbuPUh0dDR+vm8AePPah41rlzNlxjz2HzrHVxO+ZuumNURGqli6ciMAG7bupUKlKvqyarrXIyQkhGdPdUcVeb14ztvAANzrNODcmRMcObifBUvW8MOu34iMimTrxjVZIr+ExMcgsnV7fLfsQmtjC6DfFRz/v9bGFt+tu6UHrkS2ED+7JHt3nFtys0sWJ4/mWB2NiexcipWf6dWrF/Xr1zcIK1myJJGRkbx9+5bY2FiuXr2aaCNJ27ZtUalUeUgBzCHXEQqFgvGTZ/H7r3t49uSRQdw/1y5RuEhRmrdqh1yuoEmzVrgUKsI/Vy/z17lT1GvQhCpVa6A0MWHoiC+Rvzvv1LGgM2s376Z4iZIEBb1FLpejjoszmPpNqh7t2rXjwp+6Mw//On+Gho2bo1QqOXPyCD169adQYVfMzS0YOGQkZ04eSXTkkYSEMRHZpgMvr/+H36oNqNp2JKpeI1RtO+K3agMvr/8nKX8S2YLkmDx9SMpy9lCpUiXmzp2LnZ2dQfjp06dxcHDAwcEBb29v4uLiKFGihEGa4sWLA0ayC1gQdH+ZQR6STtcRIcGZLhN09S5dthzdevZl+ZK5zPhmkT48MMCfJ48e0LNzS316tUZNYIAfb98GULCgk74O5hbm2NjYIgigUMg59PvPnD55FFtbO8pVqKTLE1GfXt9mgu7MSUHQHeQ9ecpUBg8bzYXzpxnz1WQEAQIC/Ni0bqWB1U+rFQkNCcLeoUDmGyGbSdgGeZ38IGuKMpqboereC1X3Xomv+7jV+ijkh/6EvCWn1bvZpdSIn12yOvoHEUncr7mZtPZnepdied3ImqVYuY3U2jEyMpI//kh+ltLJyYmWLVsmCt+xYwfXrl1j2rRpyGQywsN1ZxXHH7sbT/zRc0ahALoVtkt0Fl66KeSsPyg+VWQyzAs5UbKIXebKBIo62+BaxI6vp06gW7eLHDmwB9Cdm1iuVFEaNGjA5s2b9em9vb1xcHBg+/bteHp66usQHR1NeHgYRZ1tuHnzEndv/cPJE8exs7MjLCyMU8cP68tKWK61hQn2Nma4FbajRKFaCIj8d+sSMVGRdOnQAplMRmEXZyaMG0uHDrqNL7Gxsbx69YoSJUog5OIR2q2wXU5XIdvID7LmBxnjyS+y5gk5/zqVrmeL0/mTOH31+cevVw6Qan/++COkQ1l2+/s09O+favq8hkqVeL9AQsLCwvjmm2+Sja9Tp04iBXDXrl0sWrSI9u3bM3jwYIBEu4E/xCgUQM/XIVhYxGUqD6smrXH67be0JdZq8W/ahohXIZkqE8DbL4xYQZfPmPFfM+EL3cHNz1+FUKJsDW4v8mDvr4epU68hD+7fYeaUsXgsW0u12k3YvHkLB4//Sbnyldi+ZR1qtRpvvzA8vf3QigKvAiN5FRjJ5vWrAPB8FUSsYIVCqeTR8zfEClaER8YSHBaN5+sQ3Arb0bBJSxYu8qBx05a8eKMzwddv3Ip16zdSoFAp7B0KsG3zWm78c4X1W/fkSgVQEHQDkefrvH8weX6QNT/IGE9+kTUvyVnojR/maZxdQqsl6o0/b7Lg2WJMpLU/nff+gkU6fHhG7vkZv+afZGFNcweRkaoU411cXHj06FGKaeLRarUsWbKEbdu28cknn7B48WL9c93a2hoAlcqwvIiICMBIFEBRJNODRETHrhRIh+uIiA5dsmRgSlj3suUq0v1//fjlp52IIljb2DJn3lI2rVvJkoWzsbGxY9SXkyhbXjelO3rsZBbPn0VsbCxtO3RGoVAglytp2bojN/65Qr+eHTE3t6Bx05YUK+6G18sXFC5SjFZtOjD+y2F8PXsRiCDyvg7NWrbl5707adqirT6sdbtOhIQEM3nc54SHh1GmbAVmfLMYEHL14JwV901uIT/Imh9kjCe/yJoX5NTYpdMxuZ19rpc5OVLrT1k6T/GRBQfn2bZKiaySOTY2lokTJ3Ly5Ek+++wzpkyZYmDUKVasGHK5nJcvXxpc5+XlBYAg5tBOAJVKpZ+XvvPIBwuLTE4BAxanjuEytB+Q9PqDeNcRxrB70M/vDbExMRQtVgKAmJhoun/SnF8PncMsA2siBEE37fz8Ve5/404NSda8RX6QMZ78ImtektNq/084jxuV5vR+qzYQ0S3vrQFMS386jxiI5YkjaVaWVW074rdpZxbWNHcQGamiajlXQGeNy+gSuIkTJ3LkyBGmTZumn/b9kIEDBxITE8NPP/2kVw6XLl3Kvn37cs4CGBf3fsrXy+tl5tcAApSvyKtFKyg8fxaKiHBEdAvF4/9XW1rxetZ8IspXBO+XKef1kXn88AGb1q1gxhwPbO3s+OO3nylWohQBAX4Zyk8QQIgNxtsvLNcPuKkhyZq3yA8yxpNfZM1LcgpVaxJhZYUQEZHixiMREK2s8alSAzGHny9ZTVr78617HQoeO5S2TLVaAmrXJTKPtVVaSDglm1AXSg+nT5/m8OHDtGjRgurVq3Pr1i2D+IoVK2JiYsKoUaMYMmQIY8eOpXv37ty8eZOtW7cyceLEnLMA/vXXXzRt2jQnipaQkJCQkJCQyHHOnz9PkyZN0n3dlClTUtwpfObMGVxddVbGU6dOsXr1ajw9PXF2dqZfv3589tlnkgIoISEhISEhIZETZFQBzApybAq4dOnS+s9Hz/yNQy70R2dMCAKUKGTLizehuX7KJTUkWfMW+UHGePKLrJKceYv8Imd2ERT0lg4tdSd4JNSFspscUwAVivdFFyhQAEfHgjlVlTyBIICTkx0qtUme/4FKsuYt8oOM8eQXWSU58xb5Rc7sIqH3tYS6ULbXI6emgP39/XF2dgbAz88PJyennKiGhISEhISEhES2YSz6j1H4AXzxJpSIOJOcrkauJi85Xk0NSda8RX6QMZ78IqskZ94iv8iZXQQGpn5aSnZgFApgXnAWaizkp7aUZM1b5AcZ48kvskpy5i3yi5wfG2NpQ1lOV0BCQkJCQkJCQiJpfH19cXd35+rVqwbh169fp2/fvtSsWZNmzZoxf/58/TFv8ahUKr799lsaNmxIjRo1GD58OM+fPwckBVBCQkJCQkJCwih58+YNn332GeHh4QbhT548YciQIZiYmLBy5UrGjBnDoUOHmDRpkkG6iRMncvz4cSZOnMjixYvx8/Nj4MCBhIaGGscUsISEhISEhISEhA6tVsvvv//O4sWLk4w/dOgQgiCwdu1a/UlqGo2GOXPm8OrVK4oUKcLNmzc5d+4cmzZt0vtddnd3p2XLluzZs0eyAEpISEhISEhIGBOPHj1izpw5dO3alSVLliSKj4mJQaFQYG5urg+zs7MDICQkBICLFy9iYWFBo0aN9GkcHByoXbs258+flxRAP983PPzvXk5XQ0JCQkJCQkICgEKFCnHq1CmmT5+OmZlZovju3bsDsGjRIoKDg3ny5Alr166lbNmylC9fHoBnz57h6uqKXC43uLZYsWJ4enoaxxSwTCYYOEbMLq5ducTwwX2Iiorkn9tPsX2nPWeUmJhoZk0bzzyPFZia6josNjaWyWM/Z+jnX1C1eq0kr2vfoi6mZmYICIiiFjt7B1q26UDfAUMTdVxyxLdfwnZcNG8GvfsNwa1k8p7GL188z/59u3j54jlKEyU1atVl6IgvKJCCY+7wsFC+HDmIxcvX4exSGICAAD/WrlzK/Xu3MTU1pUOnT+k7YCgAPt5efL/Cg8eP/6NQYVdGjplAlWo1ksz75z07OLB/L+o4Na3bfcKwkV8hkxm+p+zctoFnj+4zd/GatDRNriapfs1r5AcZ48kvsgqCzkIRFaXC3Nwyp6vz0chP/Znwf4nMIZOl3pB2qegjZcuWZfLkycydO5edO3cCUKRIEXbv3q3XG8LDw7Gyskp0raWlJSqVCsQcws/PTwREQIyIiMj28o8cOSKamZmJgNi6dWtRq9VmOs/ly5eLe/fu1X/39fUVBwwYIJYtW1a8cuVKsteVLVtW9Pb21n//77//xHbt2okLFizIVH2ePXsm9u7dO9n4H3/8UWzYsKF48eJFMS4uTgwLCxNnz54ttmnTRoyJiUnymqdPn4qdOnVKVOchQ4aI8+bNE2NiYkRvb2+xVatW4sGDB0W1Wi22b99e9PDwEGNiYsTLly+L7u7uoq+vb6K8T506JbZq1Up89eqVGBAQIH766afizp07DdLcuXNHrFSpkti/f/8MtoqEhER2UKNGDdHBwUEMDw/P6apISBgVERERev3Hz88v1fRXrlxJpEds3LhRLFu2rPjtt9+Kly9fFo8cOSJ+8sknYps2bcSAgABRFHXP5aR0gOXLl4uVK1cWjcIC+ODZGwoUcMx0Pmq1mot/naNipSo4Obskm+7wwd+Y+NXnqNVqWrZux6r12/B8nTnHjCpVBD/t28cPu37j+asQVBERDBvUg249++Hp+ZI3gRE8fxWS7PXefmHECrp4E2sXRo2dyvSJY+j4aT+sbWw5deIIB37Zg6/va8zMzOnVdxBduvVi2eK52NjYMmL0WNwK23Hl3/8YM3wAu389iompA9Gxan4/epaq1WoalBcVFcnSpd8xffZ8CpWohJefbut4/6Ff4esfxKV/7lG8REk+H9KbXv0G06JVO7xeejJt4hiGDB/Do8Vz9XXWarWotTLad+mDT0AkCFa4123E+YtXsXIogo+PD936DMUnIBLnYhUoV6Eyu/cdoGv33gZ12vfLAVq370K0aEF0DHTt2Z+f9/5IwxadAJ01dcrU6XTo9ClvfF7kC6ek+cEBa36QMZ78ImtsbAw3b94EYP/BkzRu2iKHa/RxyC/9mV/kzC7evg3M1PVqtZp169bRqVMnZs+erQ+vW7curVq1YuvWrUydOhUrKysCAxOXpVKpsLa2No4pYK1WzPRNFR0VxdgxQzlz6hhKExM+7d6bYZ9/QclSZQzS/bRnB7OmjUcURTp/2pPFy9aiVCozXf7lC+cpV74yZmYWiCKYmJqxYes+bGxtOfzH/lQdaH4YX6lydeRyOf89uI9r0WJs/H45363eTPESJbn690UWfDuNVm0/oXHTVqxbvYTho8YC8Ne509Rr0ASlUndmY4OGzTh94ghVqhoqgA/u3UEUtdR0r2dQrkwmZ8qMefo6bfjhJ/3nAo5ObNn5K+bmFixfPFdfZ0GQMWf+d/p0arWaG9ev0rlrTzQaLQqFEkGQ68uRyeS8ef0qUXt4e72geav2+vAirsXx9n6h/77zh43Uqd+IwoVdeePzIl85Jc0PsuYHGePJ67IGBwXpPwf4++dpWSHv92c8+UXOj41Wm7lGDAoKIioqipo1DZ/rBQoUwM3NjSdPngDg5ubGxYsX0Wq1BkupXr58SalSpfLGJpDwsFCGDOjBmVPHkMlkxMXG8vPenbRtXpdRw/rz741rAGzZsIaZU8chiiJ9B3zGdys3oFQqs6QO9+/dpnTZ8vrvCoUCG1vbTOVpZW1DpCoCx4LOrN28m+IlShIU9Ba5XI46Lo7w8DBqutchKjKSJ4//A+DC+bM0ad5an0fpsuW5f/d2orzDwkKxsrJBLk/7O4CFhSXm5hYpptFoNCxfMhelUkmrNh0pWqwENrZ2/LR7G3Fxcdy+eZ3bN68TGxuT6Nro6GhMEyx2NTU1IyZal+7B/Tvc/PcaffoPTXN9JSQksg9/P19GDx/A9Wt/Exz0Vh/+wvNZDtZKQiLvUaBAAezs7Lhx44ZBeFBQEC9evKBo0aIANGrUCJVKxYULFwzSXL9+nYYNGxqHBTAzvA0MYMiAHjy4dwcra2s2bt2LQiFn84Y1nD55lFMnjnDqxBFKly3P08cPARg5ZjwTp85CyMIVrW8D/SmTQAHMLFqtloiIcBwLOiGXyzn0+8+cPnkUW1s7ylWopEskisjlCho0bsalv85RqUxRfH1fU6NWbX0+DgUcefs2IFH+dvYFCA8PQ6NRJ1ICQ0NDsLW1S3edo6OiWDTva4KDg5jnsQqlie5851lzl7B25WJ+/3UvNWrVoUnz1lhaJl6YampqRmxMtP57TEw05ubmREdHs3rZQiZN+ybLFHYJCYmMIYpikmPn6hUenDx+mJPHD/Pjvj/04Z7PJQVQQiIrkcvlfPnll8ybNw9LS0vat29PcHAwGzduRC6X89lnnwFQu3Zt6tSpw+TJk5k8eTJ2dnasWbMGa2tr+vTpk7sVQB9vLwb368YLz2cUcCzIDz/+SqXKVQGoVbseT588YsvG7/njt3165W/y9Dl8PnpcltdFEGSIWWgb/+/+HTRqNcVKlOT8uVNc/+cKm7btw9rGloiIcE4dP6xP26R5Gzas+Y6SxQvTsHEzA4VOq9EgExIbeitUrIxcLuff61epXbehPlyj0TBu9GD6DRxOq7Yd01zf8PAwZkz5EgcHR5Ys34DZO99EWq2W2NhYlq7apE878cthdOzcPVEersWK88rHW//dx/slRYoW5+nj//Dzfc30SWMAUKvjUKvV9OjUkl8OnklzHSUkJDLHs6eP6d29AwMGD8f3zWuat2xL67YdAIiKitKnG9Cri/7zy5fPs72eaeX8uVPY2TlQrUbSHhokJIyV/v37Y21tzbZt2/jtt9+wt7fH3d2d77//Xm8BBPj+++/x8PBgyZIlaLVaatasycqVK7G1tc29CuCTxw8Z3K87fr6vKeJalB17DlDCrZRBmtJlyuHx3RrGT/qaX/ftpmTpMrTv2CWZHDOHY0Eng2mPzPD40X+sXr6Irt37YG1tgyoiHKVCgUKpJCoqkm2bvgd0a+0AqlStQXh4GPv372fIiLEGeQUFB+FY0ClRGaamZvQfPILVyxcxcdo3VK1Wk7DQEDZvWIWJiSmNmrZMV5095s3AycmF6bMXGriuEQSBBd9M5bMRX9KoSQvOnT7Om9c+1GvYJFEeTZu3ZuvGNdRr0ARzc3N+3ruDlq07ULlqDQ4c/Uuf7vSJw1z88wTfeqyR1qNISGQjyxbPIzjoLauXewDw896dPPUOBkh2RiUkOCjJ8Jzm9Stvhg78HwB3Hvlw6sQRatdtQOHCrjlcMwkJQ+rWrcujR48ShXfp0oUuXVLWaWxtbVm0aBGLFi1KFGcUCqAgpM+/0H8P7tL/f10ICQmmTNnybN+9H5dChZNN71KoEF+Mm5RsfFZQtXpNzpw8mqwcqck4cmgfBAQEmYCjoxOt231Cj179EQRo3bYj/16/Qv//dcTc3ILGTVtSrLgbPl4vcC1aDIVCTuOmLfj74p9Uq1HToJwnD+9TrUatJMvu1rMPlpaWbFm/El/f15iamFKzdj0Wffc95ua6tXgJdwEnJ9MLz2fcvHENExNTenZ+rzi2aN2OL8dPY9rM+axZuZjVyxZSwq0U85es1h9dM2vaOCpVqU7vfoNp1KQ5b177MHXCSGJiomnVpiOdP+2ZuO75yCdVfvC/lR9kjCe3y6rVahKFxcvyNondhgAhwcFGKe8rHy/95wlfDuf0yWM4FnTi6s3ED9rkyO39mVbyi5zZhbG0oyBm5bxlOvD398fZ2RkAPz8/nJwSW6mSY+zYsaxevZq6dety5MgRChQo8LGqmWYiIiJo27YtJ06cSNLx4sdm8+bN+Pn5MXPmTIPw3r17M2nSJNzd3bO9ThISEnmLHj16sH//foOw+EdIzZo1uXnzJp06deLQoUMGaWJiYjB5tybYWNi3bx+9e/dOFJ5Dj0SJfERm9J+sxCgsgC/ehBIRl/bBoffAkRQuVoYOnboSGi0nNAX/etlJyzYd2bpjL5269sy2MsPDw/B785rde35izeqVBn6aPJ8/JVatxaFQ6RR9EOY28pNPqvwga36QMZ7cLmuMOnGl48eWN2/8APhf/2GJFMCb9z0p6OT80euXHu48eJpkeHrGytzen2klv8iZXQQGZs7vcFZhFApgen0LOTkXokev/vprjYVefYcwa9pYWrfrpD8K7mPz0vM5M6eNpX3HrlSpUoXnr97/QPfs3MroLycbVRtlJfnJJ1V+kDU/yBhPbpU1NiY2UZharUEmk/E2SDcFXLy4G9t2/cq+HzZw/OxpAIJu3cPR+g3s2A82VvDVICiSvLN+w/zVqOPi9BvLsgo/X98kw6Mio9JdVm7tz/SSX+T82BhLGxqFAphXMDM3N9jtmh1UqlKdA0fOJ7mm4Os5iRd9SkhISGSUkJDgRGGRKt0pQnGxOuXQwc6ewr5RNPWU01xmxkttNKHjvwVlAr+of/0Dy7+G+jUT5ZcQURTp1qklbwMCOHPhRpYqgf5+b5IM9/PzpXgJtywrR0LCWMkTjqAlJCQkJD4+oUkogCqVij/PngLAwaEAZiPngMdGtOEq7GQ6v50hWp3HgnCtmlhRC9ExsHA9qBNvKvF985oxIwZy458rvPB8xoN7d/Dze8PLF1nrTsbXNxkF0Pd1lpYjIWGsSAqghISEhESqREVF8ujhg0ThKlUE27duAGBQscpw77E+zs7BAYAQMY7HYjTNVLfpFfsu3scXzlxOlN/Iof04cewQg/t1559rf+vDQ0NDskwWlSqCB/fuJBnn75f01HBe57df9rJx3Uq0Wm1OV0Uim5AUQAkJCQmJVJnzddKutFQRETx7plPq2r4I1wVamlP4jzXYN6oLQMjgT5nkHE1oTBR3wwOJEd8pGQdPG+R19vRx7t29BegUzn+vX9PHvX2btJuZjHDoj/2oVBEUL1Ey0XnxyVkG8zLh4WFMmTCapYu+5ftVS3O6OhLZhKQASkhISEikym+/7k0y/PVrHyLCdYqfq9xUFzisF+YNqlPAsSAAATGRvEmgWPk7Wus+XLkF/u8d6C9e+I3+s1wux+ulp/57UBYpgLGxsaxfswyAvgM+e3+05jtuBlxL6rI8ze2b78+UPXLwtxysiUR2IimAEhISEhKpYu+g87dau059g/CH/90HoKDSDDNBDjIZfNIcgELvTtV49vSRwUlJfrUr6D5otXDsvD7c98379XcajYaXnu/X/QVl0UlL9+7e4pWPN/b2DvQb8BnfzFti4Oj+yptziP/7AnqMgTFz4MI/WVKuseLt9ZLB/brpv/t4e0nTwPkESQGUkJCQkEgRrVZL2Ls1eCu+38LFa/cpXESn3D16pwAWFXUbPqhWHqGgbu1fEVfdmaTX/7lqkN+/NgkePUf/1JcRFakySOeXYKdu0NtAIiNVmVZOAvx1/gpLlCyFmbk5BRwL0n/PMNiniw8NiuCC6y145gWX/4WpSwyslHmN3Tu3GHyPiYnWt5FE3ibPuYEJnPB1qmkcly/MdDnTJoyiQqWqDBo6yiDcx/slX4wYwI/7DmFtY5vouuWL5+LkUoj+g4Znug4SEhIS2UFISDAajW7HbgHHgiiVSipVrsbrVz56C6Cr/J3v0wSuXeKVRFVEuEF+S9Ytp37NTlTxCobHnuD1mjBrc71yV8KtFC88nxlc8+TxQxq4V8DR1JLtLXrhOqAXVK+QblkCA/x1chTQTU+LiKywXYBQWIaIFl7BilUvaXzODgEBoqJh9XaYPzHdZRk7oihy8vgRQHfk6P17t3n9ygcf75c4uxTK4dpJfGzypAXQ8pO2yf5lFa3bd+L8uZOJwk+fOEL9Rk2TVP4kJCQkciPxSpOdnT1Kpc7SZ/HuPG9vrxcAFJa9W//XrK7+ungFMClOWSew5J25TEhIEABW1tY0aNgkUforly8QER7Oi0Bfth/8BUZ8Dcmc5pGiLIEBADgW1CmAF0zPctfkJqLru/p4wt3bEVy4Ohws3/kdPPIn3H6Y7rKMnaC3gXi99EQQBL5btYHiJUoC4PWuTyXyNnlSAUyJx53qc/ncoRT/0kKjJi0ICwvlv/t39WFarZazp4/Rum1Htm5cQ///daRfj/asXr6QyA+mNgAG9+3KnVvvF99OnTCKU8cP6+MO/LqXQX260KNzC37Zu5NDv/9C3+7t6NezAxfPn9Ffd+7MCYYP+h916tRh3uyphAQHZbR5JCQkJBLx9p3SFL+pA8De3sEgjYvMFNyrQJkSBmnkcnnSmZZIoByevqRf42dv78DXsxekWJ832hiIU8O6XemQQsfbd8qso6OT3vonE+WQ0OA1Dla4rkL8auD7sKWbjOcIhyzC31/n8sbeoQCWlla4Fi0OwCtv75yslkQ2ke8UQIASpSsm+5dWTE3NaNqsNefOHNeH3b55HYVCya1/r3Pv7k1Wr9/Bxu0/8zYwkA3fL0t3Pa9fu8yGH/Yy89sl7PhhPc+ePmbHT4foO3AYmzesBuD+vdtsWreCqTPnceHCBZycXVi2eG66y5KQkJBIjqQUwHoNGhukcZaZQL8uBmGCINCjV3+KFXej/6BhnDh3VX9Mpn9UBJTTWZx48JTg57odv/b2BTAzN2fTtr3IZDLqJ2ENDNDGItfEYHL+PCanz2By93aqf/I3r4D3FsACjgX11j+toAFToO+7AsLgrvomF/qavldo7z+BG/cy2oRGSYC/Thl2endOc8GCTgC8fRuQY3WSyD5y1RrAtFjnymZDPeJp06Ez38yYyOdjxiOXKzhz6iht2nfiyMH9jJ88E4cCjgAMHzWW0cP7MXbijHTl3/6TTzE3t6BK1RpotVo6f9oTpVJJzVp1WbdqCQBnTx6lXYculC5TDlNTUwYNHUX3T1oQHPRWv2tPQkJCIjPE++BLqAA2atwccxNTomJjAChUxBWa1E507YLFKw2+z124jKkTx+Dn5wtNusIj3U7f4Fu62RT7d86jW7Rqx4Wr91AoFNStYTiyBwgaXENuoRDjYEiPNMmgLujEy7/vEBj4bg1gwYJ6659WeHciyW7gJBAIwh0Z81UzONh/AWZzVr+L/0Nn5cwjxG/2cCyoUwDj+/dtYCA3//2HW/9eZ9BnnyOX50tbUZ4nVymAQBqsdH+nEp91lCtfCTs7e/69fo3KVatz5fJfbNj6E3t+3IqT8/v5BCdnF9Rxcen2ZG9tbQOgn0KxtLQCQCYTEN9NRQQE+HH29DEO//ErMpmAViuiUCjw9/eVFEAJCYksISwsFABb2/drm81EqCG34jI6BdB58iidC5hUcHJ2Ad6dxVurCmzWbb8NfvgEwGDccnYphCiKmJiYEvtO0QQIlGuJ05og18SRxDHoiRAFAXXhImBiQmCAzrr1urA3d01uJk5cCTgPYhctz/2fMHboD2x0KqDbCXz+Gni/gaJ5Y4NEQIBOAYy3ABZ4Z7QI9PaiZ5c2ABS9eJtWKxZDEbscqaPEx8MoFEBB0P2lKW0WpEk1Po11AWjTvhN/nTtJWFgIlatUp6CTE46OTvj7vaFoMd16Cj/f1ygUCqytrUHQlS8IvFPYNPrywsNCDdpCJhMM6hIfFx8mCLrBst+g4fyvzwDcCtvh+ToEr5cvKFzENV1y5CYSyp/XyQ+y5gcZ48mtskaEhwG6l9L4uounLlFSNCH+MDfH1k0TyZeUnM4u8QqgL1QrBwoFqNWEvvQCwMbG9oNxT8DJzAKfBApgVHQ03nU/oezVw2mqvyCKBE+eQYQqHB/vlwD8VOpn0MhB/sF5xOWB84DOUMiZrcd5PngLJQ9v160B/OkwwpThqcpp7Pz34C7feeiWCxV0ckIQdFZRgIB774/8e33lHxg0Gc3JjQi5UVAjxFia0SgUwBKFbHFysks13SXA3sYsxTQRqaUJD0sx3hMomY43nc8G9qZDhw7ERIUzsH8fShaxo3u3rvyy5weaNqiJmZkZi3dsoFWrVpR3c8LawgR7GzNKFrGjVEk3bl+/SLdOrTl79izeXi8oaG9BySJ2KBUyCjlaGdSlqLMNrkXsMBEj4F09+/XuwYwZM+jRtQNarQ1/nfqD9evXc+7cOczNzdMsR27ErbBdTlch28gPsuYHGePJdbJqogEo7uqsH5NenfqLtiYF2BWt89VXuqhDosuSktPOvDwAwcFBuBa1J7BGeaL/uUdMqE7JLORkbzDuqU5exilSjc8H+UQN70v09T8x1USk/FIvl0PNmhTq240bR46j1WoxsSvEi4rJrOdzThz06Rt7roimmAsxCH+cpsT80cisLVOU09iZP2ub/rNbsUKULGJHqFKnEnhqovRxVoIcvN8QOPt73NbNyvZ65kWslLHpSu/r68snn3zC2rVrqVv3/S57Pz8/lixZwsWLF4mLi6Nq1apMmTKFihXfz5SuWLGCDRs2JMpzypQpxqEAvngTSkScSZrSBodFpxivTC2NkHoez1+FpKkuOmRUrFyN+/f+z95Zx0dxtAH42bu4e0hCkODu7u5uxZ1CKW1xK9AixV1K+aBAS6FI0eLu7i4JEEhCQlwvyd3t98deTqJIgEDv4Xc/bmdnZmd2L7vvvvPKLfIVKYdfQCSNW31FUEgEbdq2Iykxkao1ajPgmxH4BUQSE59ERLQCv4BIOvcYyJL5MylXvjzlK1ahao3avI6Ixy8gkmSlmqDQWIOxvAiOJkmIJDg4WjtO9zzF6NytLwO/HkxkeBi5vfMxefo8gsITgcT0h/yZIwhotZ1fmFNeGv4Lc/0vzDGFz3Wuga8kG8Bk0RS/gEjE2w/h7HWqmTmwukAtPH+bZXCvymyeoihgZm5OUmIiF68/xKtUMbh8h0SkMCwJSbp7sBgeBd/OwFlmmmZMt22tca3cEM/zOzMfvErFd9E/cai4Gt8nUtaRpFrJoJKBPJ2g0i6ptk0gbuosttfvRHfL3Yhx8Rz+YTuFprb6bK8nQLJat1xvbuOM77NQkqetTlMv3kI697HbjxLXrwt4uH20MX6phIZGvXHdoKAg+vfvT0yMYSzN2NhYunfvjpmZGT///DPm5uasWLGCvn37smfPHtzcpOv04MEDKleuzMiRhnEsPT09c4YAKIpv7l3/9Mm9TPcXBmL/PZhxhVbVsuzjbf+QJ/4026CtqakZAwZ/z4DB36fpd8SYydrvhQoXY+lvf6R7/HUbdxqMZd/Ri9ptN3dP9h29qN3XqGkrGjdrhY+Xg3Rzfovz+TnzX5kn/Dfm+l+YYwqf21yjozVLwHb20rj/3qvdV3fYN1CkeLrzSX+eAm5u7rx84U9w8Cu8KpSE37eSJErCmFlULOLB01AgD2zeCxHRlDCx4XBSOJWr1sDW1o6jh/dz785tqi2ahaLWMcyTotPVAiqRc43yLH3YDMn4RpNbuFJi+sIfpBUAHcCisD9/mbSiO7sBSPjnJFNUnZkwKSGTeeZsoqMkIcTBwZFmLdrCjsM4+IcgA/TPTGypQnA7DFQqxA27YJQxicH78ia/FbVazc6dO5k9e3a6+9evX09kZCT79u3TCnslS5akffv2XLp0iZYtWwJw//592rdvT9myZdP0kSMEwDeler1WWVfKok7qv20jRowYMZI5+jaAqFRw9oq0w9oSWjd46/7c3HPx8oW/ZAfYoClYW5IYIz0VzTfvg903DeoPdvCh3uplFK1enf+tXMLRw/u5cf0KDBpKeO8heP4v/YekCSomMQ0QMDUTEYQAkhLhq9BpdAkqiyADVm+GYxrnwXFfc9MkjimM0vbhKHNi+om55NtmhX/fAuRR+FLC5BG9/0jiyiVbflsJuQu89Sn45ISFSXEXJ/70CyYmJrD3OHJBwEtmwQu1bpUsrkBueBQDiUmw/RAM7QmWmZtiGXl/Hj58yJQpU+jWrRvVq1dn0KBBBvsPHjxIkyZNtMIfgKurK6dPn9Zuh4eHExwcTLFi6WfMMfp2GzFixIiRTEnxAra1tYPbjyBSsxxVtRyYpl2ezYqUKAkhwa/A3AxqV9ZqAM3TeSyZ9OlIiVq1kMvllC0vhZq5ce0yF8/LaXn5Z8LkbqRWqqgEOZGFyzHzVhXuPonkvm8U7u5SLMB2dYtQSlWGksllKLntNSVv2VDyvgMl87WlnF1lg34iQsIZ2q4XXTuWRllfMhCUCSKVTa/z4L6cOnWgYW1bdmwz5T3TFH9UIiIkAdDJyRkiouCWlOnkp0JVsbS00taLVSZBszrSRoICLt/66GP9L+Lh4cHhw4cZP348FhaGAndycjK+vr7kz5+fRYsWUbNmTUqUKEHPnj15/Pixtt6DB9I1PXHiBPXq1aNEiRK0bduWkyclU4gcIQCmeLsaP+/3gU8/BuNcjXM1zvHLm2uMRgNoZ28H/+qyEFG70jvN010vFIwgAP07kWguLUiZuzlDm4ZQozyUKAQDu8Dgrtq2RYtJBu5BgQF072zK9RvmjFbPYDJSCL8U5KKKhMkTcXAC6fkpSgInUngZQQCevYCXUhlliiFYWeDklNaZBaQl01X+N7Xbzd10WZye+skZPdyafj2tiYjIuc+z2NhoAgP8EQQpDRxoBMDz17TrknVateHC9QeMGT8FgNjYGIR6OscDTl/+5PP43D8ymZDub0wfBwcHcmk85tP8FqOjUSqVrFu3josXLzJ9+nQWLlxIREQEPXr0IDhYCu9z//59AF6/fs306dNZtmwZzs7ODB48mNOnT+eMJeDiBTywtrbOuqKRLPkcvdHeFeNcvyz+C3NM4XOba8oScPF8HnDoDGpAsLYkX6/myGysMmyX0TyLFc4PQHxMuOTx6+WArFIJOBaM9/TvKdCtW7rtoqNh9Hf2gBUQD7wECnLU2wt/KYoMJ4DaggyhYgU8urXXSqMREREkJkpLm1XKFcHCwoLwv3cSoenbuU0dHLwc8HTOeHnz3wsnmW5XGRO1mg55ruE0HebNu8qdOxeAbzhzypTmDez591+oXDnDbj4ZlSs35vLlyyxevJgITeq9siV8sNy5llhNHc/29bAs4s25PBrhQ5VIvja1eTbGDDExCfm5a+T1tMcYEubdcXd4e625PsnJydrvq1ev1spPJUuWpHHjxvz111+MGDGCZs2a4ePjQ+3atbXxhGvWrEmbNm1YsmRJzhAA7/kGaQNQGnk3BOHz9UZ7W4xz/bL4L8wxhc9xrklJSSgUkuAUcc0X+xgpr7lYuzLPopIgKm1Ii6zmaWrpAMCDh0+0Hr+R0ZIIEhmvTjcSg5+vjMH9rfF9IgfyAA/wyv2U70d6oEh4wOQJUr09QB1RTeDA71AERmnbP370EAB7ewcCwxSAAnHbEe3+sErlCc8iAoRCoSCyQm5cHvqT/OgZtfJcp8+digDY2LgQG9uF16+hfn2RJb/GUbe+MtP+PjaXL18G4PvvdQ6K0QkCKo2TIXY2BHrmRgiIRKGUBIbg1+E8j0rEokY5Eo5dRBUYgt/xGwhF8n/08X8ppGTWeVdSBL4qVaoYKM88PT0pUKAA9+7d0257enoatDU1NaVGjRr8/fffOUMAVKvFz+ZmmNP5HL3R3hXjXL8s/gtzTOFzmOvB/Xu4f/c2XXv01ZbZ3Huqq1CpdJZzyGieRYqVAODu3duoVGpkMhmJiVLYKnNz8zRt9u81ZdxIK+LiJK2TiUlulMoHfDf8CRYWAYwZPkJb9wWgkNuQ8DgMfcPAwADJ/s/VPZfUv98LePJc2lm6KLi7ao/bpFkrbly7QmxsDHFxsegTm9sOz7uassmztOU9Gu0n/kl+jt72JCAuN/172dC2QxIjRifg6fXpL7ZKpUpTZm5ugdWLENAI9VQuA3I5ogjWNrYAxMbESNuNq5NwTCMonrqEWNgoAL4ravX7/R5sbW1xcnIiKSnty5dSqdTaDJ48eRKFQkGTJk0M6iQmJuLk5JQzbACNGDFixEjOYuigXixbPJexI78FwMbWFvm1u7oK75ETt2ChopibWxAXG8PzZ1Iu4BQB0MzccAl29Upzhg221gp/hQqraNREciLZu+cfvhvS16C+PzLCrfPBpj0QFqEtv35N0n4VLaoJknvigq5R45oGfSz7bT0nL9yiRYs2ALgBhTT7zDavxDvyhvQ5s0XbxmvHetbfrsIts4qYaWKw7vzHjBaN7dj37/st+WUHsXpx5AZ8/S35fQry7Q+jEW7c11UqX0L71SZFAIyV2lk1rq6rd+ryhx2skSypU6cO586dIzw8XFvm5+fH06dPqVhR0kofOHCA8ePHExkZqa0THx/PiRMnqFKlilEANGLEiBEjhoh6Krgzp44B4ObqDinCgrsL5E7fQP1NMDExoVgJSYC8fVPKx5uoWWY2NzfX1tu8yYxZM3QZjVq3S+KfPTEUKuIFwKkTeg4pGp7Z2JJg5gCKRNiwS1t++aKUtK5y1RpSwVW9TCA1Kxn0IQgCJiYmzJi7hB35fdgPpGQoDtOrp6/HMUHKOWxV1JOJ05XY2kl7Y6IFvhtizfjRliQk8MmIjZXsOM3MzRn34zQOn7zMkG9HGJ4HfQFQk4s+LlbSdpp654JC+aSdtx/ie+WKNpagkY/P0KFDEQSB/v37c+TIEfbt28fgwYPJlSsXHTt2BGDAgAGIosjAgQM5cuQIhw4donfv3iQkJDBs2DCjAPiuBL8KpHmDKrRvUZf2LerSrkUdvhvSmwf3br9Xv8nJyaxeuZieXVrSrkUd+vfswOaN6wxuyBkxbtw4Nqz7HwB9urXl1o2r6dYTRZFJ474nPCxUO/72LerSvEEV2rWoo91O8Zj70Fy6cIaBvTvRrkUdfpo4kqjIiHTrJSYqmPPLZDq2akCdOnU4fHBvmjqvggLplCou2cXzZ2jVuLrBXB89uIcoikwYPYzw8LA0/Rgx8l8mISE+TZmrta0kVIGk/XtPJ4DixUsC8OihJFQmaZeAJQ3gwf2mTBqnE/6+H5nA/MXxWFmBm1s6+do0hMTHoJRrHm3/HgOlClEUuXFNil1YqUp1KZbhTY0w6+IIeTzS7UuQyag8dQ7l0QmAocBloD2gHxDFBBBEkfDRE+neO5mT56Jp2Vq3RLf1b3MG97cmMfNEVB+MFA2grUawA6TzcEXzzLKzgYJ5tbvs7e0BCI8I0y0f15IE5UfKOJq0a0T9muU+/MCNpIu3tzd///037u7ujB49msmTJ1O0aFE2btyIjY0NAAUKFGDDhg3Y2dkxceJExo4di6OjI3/99Rfe3t45wwbwc2b73hOAFLX74L5dzPh5POs27tJ63Lwtmzaswc/3CYt/XY+TkzP+z/z4edJoLCwsadO+S7aM+eC+XfgULIyTs4t2/ADNG1Rh5ZpNuOfyzLhxNhMeHsbcX6YwaeocihYvya9L57N00Sx+/CltYNf1a35FkZDAhq17UcW/pl+//vgUKIRPgcIAPLh3m5nTfkxjs/PU7zEtWndg8Lcj0/TZsUsP/vfrIsZOnPZhJmjEyGdIZDovYe76j4v3WP5NoWBhKSfwk8eSc0aKh665uTlXL8sZPswKtVoSMvsNVPDt94lamdPJKWOnQbVaze0SuUm4covqocClm4QXyYNCIanf8ubzgTuPIU6jjitXPFNhNqFOfRRlyuF86waIIleAQUjavzP6FQUBRemyJNSpD4CdvcjCZfHUqqPk50mWxMcLnD1tyreDrVm+Kg6zN8t+mm2khPJJWdoF4IEvaJxvqFRaypusIZeHF+bmFiQmKnj5wp9CeZyl0Dy/b+VkkvT7SO93YiT7qVKlCg8fPkxTXrBgwXTz/OpTokQJ1qxZk+4+owYwm5DJZNSq25Cw0NdER0UCkkAV/CpQWydFK7dh/f+Y/tNYbblCoaBDq3qEhb7myaMHlKtQWYrNBOTJ58OAwd9hohdsdce2TfTr0Y6uHZqyaO70dN/WM0KtVrNl0x80adY6y7qHD/zLuJHf8M2A7vT6qhWXL56lT7e22v0pWtAUrl25yLeDetCpdQMmjP6WoMDU6dvTcv7MCYqXLEPpshUwMzOn74ChXDx3mvhUQhzAiaMH+apHPywsLChVqhR16jfm+JGDmmNfYNb0SXT6qmeadn6+j/EpUChNOUC5CpW5f/c2QYEBWY7ViJH/Cin3MH1cY3WhJ7JFACxUBNAXACUNYHCwJV/3syYpURLK2nVMYvwkhYGM5uTsTGocHZ1wdJRi+HU6tpFe0Xc4lxQJ/x4jJDhI084FMzMzOH5e17BGxcwHKgiEj5qIs2YV5jd0S7+v9aoliiLhoyYaCJOCAB06J7Hur1isrKRWx4+aMnyYFcqP6CA88vuv+apDcyCVBvDCTd33KmUN2sjlcnwKFATgyWMpoDCli4K1Jclpwm4b+RwxCoDZhEql4tD+PRQsVARHp7Q3J31q123I1csXtKEVLl88S8FCRXF2caV6zXps/HM1yxfP4dyZk0RHRVGtRh1atGoPwPGjB9m7+x9mzFnK7xu2E58Qz5rflr7xOO/evoGFhSWeXt5vVP/OrRv8MGoiK9ds0i7NpMeroEB+mTqeAYO/Z9P2g1SsXJ2pk8egziI0/gv/Z3jn0S072NnbY21tQ2CAofAYExNNZGSEQd3c3nl5+ULy4itYqBj/W79VWt5JxVPfx5w6cYQenVswsHcnDh3Yo90nCAJVqtXk+JH9mZ8II0b+Q+gbjafgEq5xIsjlCl4ZL8G+KSkCoP/zpygSErQawPGjnIiMlB5NNWolM2N2fBoFnZNe2DBTU1NuPnjB0dPXyO2d16DeqeQIOH6eEE2QQHf3XKBUwUFNuiy5DGob2v+lR0Kd+li5Z27zGC0zI6FUhXT3la+oYtW6OMzNJcHp4D4zRn5nRTpOnNlOcnIyu7brnFVsbPU0gJdu6L5XLZumrU5IfwSAYGoClcugNAqAXwRGAfA96dS6AZ1aN6Bd89qsXrmY5hpBLTPy5M2Pp2durlySjJJPnzxK7XqNAGjaog0TJs8kPCyUBXN+plvHpvw49juCNW+wRw/tpWOXHnh45sbS0opefQdz9NDeN7IRBLh75yYFCxd54/l5eHpRuGhxrKxtMq138vghKletSdnylTAxMaF9p27ERkfz6OG9TNspFIo0gqW5hYX2YZBComb5Rr+uuYW5tp6dvT2m6aSkUqvVuLi6Ua9BU9Zu2MGIMZNZvXKJgX1kwUJFuXvnZpq2Roz810hOTubbwX3o0VnKqV6mrE6gSUwJPpsN9n8Arm7uuOfyRK1W8+/u7dqXxcAAKa5Z0WIqlv2W/lKp/hKwq5s71tY22Nnb4+LqalBPKYqgSCL4gmT/5+aeCw6fhlca3V218uBon/VgBYHX5TMXFCNMbGHJugz3V62mZOWaOEzNpHv13j1mDOhtjWZl9oORWpur1QAmKOC65v7s6ZauU0+BgtKzwvfJI11h9fIki7oX+6xe8o3kXIwC4HuydfdRtu4+yq4DZ5i76DfWrV7B2dPHs2xXu24jzp4+jkKh4NqVC9SsVU+7r1KV6kyaOoctO4+wYKm0dj9r2kQAXocEs2rFIq3gOXxoX9RqkciI8HSPk5qw0NdZaij1edO6oa9DOHvquHZcnVo3IDY2mtchwZm2s7CwICkp0aAsUaHAQi8XJegEvxRDcaleIhYWlmSGTCZj5rzlNGjcHFMzM4qVKEW9Bk24cE6XMNvJ2YWw0NeZ9GLEyH+DBXOmcWCvznPWydkZT6/cANQ2dZQKK73/8i9I2vfuPaUQLn+sXaW3x4JcHmr+tz4WfWWVPnb2OqHNWu/l1NnFzaBeEpJwEnz4BADu5tYwR+9YPdq+8Xi/mvBzpvtjBRPYcwwCM77n1aqjZPlvOk3guTOmdOtkS1Tkh8uqEZVKALTWOAhw4iIka9ahq5VPV6gvUEiyr37ySM/+rG5VnZMNkPjIN1vHa+TjkSMEwE+dl+9dP/pjl8kESpYuS6my5bl+9ZKmXECtVmnqisTGRmvr167XkCsXz3Hl0lmKFiuJg6MjarWKjq3r8+jBXQQB5HIZRYoVZ9CQH3j21BdBkPI2Dh/zI9v2HGXbnqNs2n6AFav/wjElf2U6YzPIQSgIiKKY5Xx0H0FvjjJUKqV2OyYmStvG0cmJxs1aace1bc9Rlq3aQNXqNTM9h9558hLw0l+7HR0dSVxcLF65cxvUs7O3x97BkQBNHkuAgJfPyZ0nb6bziAgPZe3/lgO6OScnJ2FubqbdVqtVyGSyT/57epPf2Zf6+S/MMafP9cSxg/xvpaE5ib2DI7v2n2BH9Y6UNtVIYxVLZds8m7aQbJHv3dX509rYmvH7n7F4eqZ/nxIE6d6orW9jqy13TaUBTDaTVgVCQqSIBm4nr0GkZim7diWoUvqNz0/e/PmZ0KV7hs+xBNRS1OvtBzPtp0EjJRu2xOLoKAmn9+/J6d7ZhqDAD5NDOLUGMCw0VLo+B07qCpvVTrdtQY0A6Pvkke654epIckmdTbVi56FP/tv9HD85gRzhBZzPwx43N4ds7/cIR/iO71jCEhrSMFv7NhMlJwUfLwdt2YMHD7h76zrjxo3Dx8uBvHnzcufaWWpU+pqNGzeSEB+Ph4sNPl4O+Hg5kD9/PrZtWkfv3r21/TRu1Ij1q5cybdo0ChUqREhICIf2bqVunTr4eDnQqWM7Nm3aSJP6NXBxcWHBggWcPn2aPXskuzZHWwt8vBwwNZFpj6VP4YJ58fX1TVOegre7Hbk1+1wdrbA0N9HWtZIXIzIinPCgJ5QqVYqVi3doz0G3zu3o3r07vbp3pkyZMhw+fJhRo0Zx6NAhcuVK/1gAXTq04o/fVxL07C4VK1Zk7cr51K9fnxIF03oit27Vku1/r2XevHncuXOHU8cPs27dOoO5pL4uXi6WfHd4LwXze9GrVy+uXbvGmZNH2bRpk7bONTEB79yeGZ6TnMDnljv2XfgvzDGFnDbX5ORkJo75Pk15Hi93KhT2xsk/HBEw8c5F3spvbkKS2TxFEQ7/WwGwBFIC5Jmxe5ecevXsMmyXGmcne+3fbpGChjaAiYVzwzO4q5TuC7nl0kqCecUSePw2CbmL4xsfB8C7Tg3Y/Fe6+xQauzj57qPknToEwSzj4M8+XlDqPNSpA8HB8OC+nI6t7dmzByplbZL4Vjy8ZehtEh76irwW8OzcNWm8Hq7kbVUDQZZWH5TbtQJyuZzY2BgCAwPJ7yXFX5QX9ARNHO3kQyfJv2gsgkmOECc+C2xMP4Lx5xuQI67Ys6AoYpOz1ydeRGSE6xjum91nRNIYdrw+ikD2id3BwZLhRpkyZQEQBAEbW1tatetMmcr18AuIpN/X37NqxSJWrfofdeo3onjJ0gSFxmrzXFatWZ91a36lcKkq2rK+g0ewYd1qBgwcREREOJaWltSsXZ9Bw8biFxBJ+WoN8X0WSJevuhITE02hwsUY8+MvPAuKAiAiRoFfQCTJSrXBsVLwyl+MLVv/STfXJsCL4GiSBGnf64h4EhKVenUt6Nl3EMO+kx4U3Xr2B3bhFxCJYOHMD6N/ZNz4ibx6FYi7uwcTpswkXmWBX0Ak7ZrXZdqshZQsXS7VEc0Z++N0pvw8ldDXIZQsVZaR46Zoj6nfrv1X/VmxZC716tXH2tqKAYO/x9zOw2AuKddFv2zS1Ln8umw+CxcuwsnZme9GTsDE2k1b5+yFKxQuVibDc/IpEYTPL3fs2/JfmGMKOXWuz576ERwcjIWFJcVKlOT6VSnTg2Bihd/BS6CQHljKciXe6O8kq3mGvhYYP9qKY0dMgdKAlGLMysqCvIUj8XsDp3wnZxfCw0Kp06CZdkyiibVBnSC5wIuhnbn18xlkQF1LV2hel8Qfh/I8UYC3/JtXqDJ+ZCqc7CAZVK/D8dt8BKF+tUz7MrWBDVtk9O9ljf9zOcHB0Lixmp37YvHOk312dQ99dQ51gkzGD6N/5Nmf+yVnGEDVqCZPgzI2RMybzwc/38fcu3ePJMEaUYSgKF2UhvjQcPy2Hkd4A2caIxKhoVGfeghADhEAP0RezFPmx7htJkWYv212nVNmx6id2CCLVm+Om7sn+1ISaKciZS4VK1enYuW0Xqkp+11c3alQsSrW1rbaMlNTc/oOHErfgUMzaCfQqWtvOnXtnWbfrFmz8AuQbrjrNu40OFYKhYuUIDk5mZcv/PHKncdgX8p8Uto0bNKShk1aGvTRuWsfOnfto91u3qq9dn+lKjWpVMUwpVLKvm69+mNiapbudS5fsSq//b453XYpcQpFEcwtLBk+ZjKCIGn4UuaqT8p10S8vXLQEC5f9nm7/arWaq5cvMGv+ihz1QE7N55A79n35L8wxhZw21xf+zwHw8s6Dq6vOw9fVzR3OXtNVrFDqrcad3jzv3JbTr6c14WEpGqfKpAiA8fHRb9z/jn+PcvnSeVq37aS7p6ayAQwPC+WyvfSYK1+pKi7bdcHj3+X829hmrJlUONpCiGbj3HXEepkLgAD5fdT8syeWbwZYc/mSCZGRMgb3t2bLzhisrLJs/kZoPbo7QPHVpagb2wT6jdNVaF4303NRoGBh/Hwfc//+fQoUr4QoQky0TmBMEFWw6whiLaMA+KbklL/9HGEDmN2IiCy0n4FMlIJaykQ5C+1nIOYQ13VFQgJPfR+z65+/adC4+Uc9tkwmo9NXPTmwd+dHO6YoigS/CqJgoaIf7ZhvyuWL5yhessxHDX5txEhOIyWckrd3HuzsHbTlbm65dLZicpkUCPg9eHBfRp9uOuHP2UXNgqUjteGb9MM8ZYVX7jy0bd8Fmd7SZeowMOFhoYSHhUr1vQ1feN8FgyDKqUgwlYOJJpDypZtv3Kejo8hvv8eR30fSyD24L2f8KKtsExJuxmoiHjjCXYebnI7fofP+ze8NhfNn2r5AQckO8J9//tHGnI3Rc11WiGo4eQkicoZWy8ib80UKgKc12j+1IP1BqQUVt82uc9r82CcemURUVAQjvxuIs4srNfS8fz8WTZq3wffJI+2N8UMjCAJDvx/zztlRPhSiKLJj20b6Dxr2qYdixMgn5YVGAMztnRcHBwdtuVu0AgI1aq0qZcH57Wzm9Hn8SEavrjbaGH/lKyrZdziG1m3t2bB5Nz9Nn8ucBSveuX+A3KmEvIiIcEJDpfE7Or559IOMsLXLWAOYmJQIpTQvuf6BuvP2BtjZi/y6Og5rG12ImP+tNM+iVdaIiJxO0Dz3HDXKEDs9ZUjjmll6JKSEDTt16hTTpkwAIDY2RrtfIapBqYTTV957vEY+Ll+cAJha+5dCTtICuufyZPveE0yYMhPhE7gDyWQyfpm7zCCY6n8RQRCYNX/Ff/48GDHy0l8nANrY6IQctxuPdZWa1H7n/v18JeEvRfNXppySNX/E4uyicZyQy+nRe0C6gdzfhvTup36+TwC0WULeB/1zk5oH9+8SWkJPm/YWWkCAgoXUzF8cp92eO9OCk8ffz0rrtPkxwqI1Ia4cNcqQXH6crhcplb3Bsm3Bgjqnn80b1wOGS8CJmlA7inOXSVR8okTHRt6JL04ATK39SyGnaQGNGDFiJKfwSpOy0tMrN0qlLuWb81mNEGNmClk4NWTE5YtyurSz4XWI9LgpVVrJ2j/jMozx97545TbMcpSSak4bKus9sE3HBrBnT136yXl39bIDX7zx1v03bKzk+5GSR7QoCnw3xJoL599NCBQRmW86DVLC0npI/8mUsHDcc0QneyhWIMt+UmIBppCoUBAepoubqjCVkySqabx5MS0b1zQGhv6M+KIEwIy0fylktxYwdS5cI0aMGPkciQiXAsk7O7uiUCRoy+Updl21K4PN23slHD9qQq9uNkRESI+aYiWUrN0Qh539h1uJWffXdlq21mVk8n/+FHjzoPaZoQ2irGHfkbOMHz9eu73t8L9grQlOf+nWO1n7D/0ukUZNJK/ruDiBfj2tOXr47YXA0+bHuHvgJjwHcgMdpXK1CdwuH8vpoS6QTuiX1FhaWnHuii6j047tm0lO1r0kKArlxVcVT6BSwdOnvoS/fvOlbyOfli9KAMxI+5eCUQtoxIiRnMCf6/5Hk/pVCXjp/6mHAkBEeBggacmq1agDgJm+zW7Tt1/+3bMHhgywJjlJWpatUSuZjVticXD8sGY4+X0Ksmj5GipXrWFQ7pANS8AmJiaULFUWgMpVa1CkaHHy59ct+5YpVxEqaDKlhEfCk+dvfQyZDBYujadeQ0nISkoU+GagNbt3ZBxXMDUpyhAhSLMkXhPQk11lSljY48IbK0Pcc3lQuXJlAH4c+4PBPkWN8rxEJxC++nEOJCXzPpw8fpg+3TsQFPQG8YCMvDNfjACYlfYvhQ9hC7hh/f/o2qEp/Xq05+rlC9y6cZU+3dpq9+trCseOGMLuHbrE3LdvXuPrvl2ybSxGjBjJ+fz04xh8Hz9k+k8TPvVQUKlUREZGAFKmodp1G7BmzUaO5NLY49lYQc2Kb9XnwX2mdOgAycmSANKiVRKr18eRSRSVbMfZxTAriFM2CIAAm7fvZ9a8ZUybuQCQ0llu2LwbgNiYaKhSRlf5/LX0usgSC0tYsSqOVm0kTaBKJTDyeyv++uPN4uXO3DGJ28euI0ZonnOpfHfUJnDb6eFbKUPKlCmTbvmP86dyt0YJ7farsxdg6tJ0674p/Xt15sypY4z+YSiJRrPCD8YXIwBmpf1L4UNoAaMiI/hj026+/mY4v/w8Pk3qHX1q121okCv41Ikj1KqbvVlKjBgxknMR9ZYFnz799HlUIyMjtGOyd3BEEATqyOzwTNSMs0F1MH8zwUMUYcUSc4Z+bUXKKmHrtknMXxKP6ZsrsLIFp1RLvtmxBAxgbmFBxy7dteFRAOw1ntNRUZFQXS9UzqnL73wcU1OYtziebj2k/OeiKDBlohWL5lugyuQx5+f3mN+/Ww7tgUBNYTrO22+rDGnYMOPn1LK9OqXGK3US7D0Oa7Zqg02/KYoE+HeX7ody4dx1ShRyoF0LG5YvNsf/+RcjsuQIvoizqVV3i2/mUSuIQrZpAQVBoO/AoZiamVGlei18ChaWwgFkQM3a9bl/7zaREeGo1WrOnTlBnXqN3nscRowY+TwIDAzUfg8NCTYQCD8FKcu/9vYOmKZIafv18sS+4fKvWg1TJliyYK4louZe3K5jEnMXxfMpsoSl1gBmxxJwRtjb2wMQ+jqEEQumQh5NXNHr9+DZy0xaZo5cDj//ksDXQ3VqsGWLLOjbw5rXIek/73Y+0QhjCUBK3Ot0BMC3VYY0aPBmiRReqTXPv2V/wOiZZCatJiTAnVtytm81ZepkS2pWtuOHb/WzuUjexrdvmbBwniX1a9rRqa0Nc2dZsH2rKdevyYmOyiGJdT9DvggBMIkkguQvEYU3u5GKgkiQPIAk3j8fn42NLVZWuh+si4sr4WFhGda3d3CkVOlynD97kju3ruPg4Ih3nnzvPQ4jRox8Hjx58kT7PTIygvv37nzC0ejb/2k0ZI+ewglNliNnB6hYOss+lEoYO9KKjRuk2HWCIDJjBsxdGM+nCv+prwG0trHFzCx7043qox88e/eOrcTVlezlUKthzqr36lsQYPQ4BeN+TEAmk55x586Y0rCOHUMGWLFhvRmxmsxsIiL/vNTLVfxK838G4RvfRhni7OzM7PnLaNGqHbXqZCwMBhf00m2cuAhb92s3Y2Jg9w5Txo6wpGkDW0oXsadtC1vGjLDmj7Xm2hiR+hQtZihAXr9qwm/LLRgzwppObWwpX9KeTm1t2LvHFD3/pS+KV69eUbFiRS5eNMw+1rVrV4oUKZLmc/v2bW2d0NBQRo4cSZUqVahQoQIjRowgJERy1MkRqeDeF3PM2R5yjHBZxoJXapzVLpjz/oE24+LiUCgUWFhIScZDgl/hnScfKpUuAXd0tGGE9Dr1GnH29HE8vbypbdT+GTHyn+L69esG2/v/3UnxEqU+0Wh0HsCOTk4QFw9jZkuCC0D3NrrsFhkQEwPfDbHm9ElJeyiXi8xdGM/wYdb4BXy6tFf6GkCnbAgBkxmpM4QkdGyM9aEz8CoULtyA0Ahwefcg2gADvk6kVGklw7+1JiRERlyswOGDZhw+aMb8OZYMHqqga79oIh+Gp22cwaH1lSFv8jzs2KU7HTp3B+DQ/n/5ZlDPNHWOPA9jVYmVDHr8EwARS3fzb3wbTp+24PQpE61TUHqYmok0a5HMkYOOxMdLdqm79kcS/MqEPbvM2PmPGY8fpf09Xr9qwvWrJri5qZk1P57adZVp6nyuBAUF0b9/f2JiYgzKRVHk4cOH9O3bl6ZNmxrsK1BACu+jVCoZOHAgsbGx/PTTTyiVSubPn0///v3Zvn37lyEAAniqcuOpyv3Rj6tWq/jj95X0GTCEC+dOExDwgrE/Tmfjn79z9/YNChUpxq7thnluq9Wsy+qVSwh46c+0WUs++piNGDHyaUhKSmL+/PkAFCtekvv37nDt6qVPOqbwcCkjkJOTC/y9F55rPC8L5JEEwEwIeCkwsI8Njx5KD2VTU5HFy+Np0vz9vECzAycnXYB3B4cPKwCmDkAdr1ZBy/qweoskAR87D53fP+1nlWoq9hyKYdE8C/bsMiM2RjpuTLTA3JmWbFhvjqtlQV5y16DdtNtfU2q5RnvUuBb06aDd967KkMbNWrJo2Wp++HaAQXlM9BPmnLenuF0lappdxjE+iH+nPeWq0lCTbGIiUqSYiqJFVRQqrKZQERWly6pwdBSpX9MB/+eSABgUGEBu7zx8/U0ig4YkEvBShu8TGb5P5Dzzk3HpkglPNEJhSIiMfj1t+PZ7BcOGKz6Z9jk7UKvV7Ny5k9mzZ6e739/fn7i4OOrUqUPZsmXTrXPgwAHu3bvH3r17KViwIADFihWjZcuW7N+//8sRAD8Vdnb2gEjXDk3x8PDip+nzcHPPRc++g5g5bSIAXXv259hhnRrc1taO4iXLEBkRjoenVwY9GzFi5EshKSmJ77/pR2xsDC9fvsTZxZXvRoxnyIDuRGk8cD8VQYGSwOfm4gqbJG9WZDKYN14KAJ0B9+9JD9uUAM8ODmpW/C+OylXfzvD/Q+HsohMAsyMI9NuQEB8HdatKAiDAzfvZIgACODuLTJuZwJRpCTx8IOeP383Y8Y8ZarVAUCDAM009V8I0AZvLnIqj+C1NHJgfukByiXT7fhtevpCxe6d+fnc50BLYBZxkd2JDappJTjDVTK9yVVkaNzc1TZon07hZMuXLKzG3MOzztxWL2LRhLS9f6MIjvfB/pk3xJwiQ21tNbm81depJWj5RhPNnTfhthTlnT0u/12WLJW3jzLnxFC7yeQamfvjwIVOmTKFbt25Ur16dQYMGGey/f/8+AEWLFk2vOQBnzpwhf/78WuEPoGDBghQoUICTJ0/mDAFQELJMR5gjyeXhyeadhwD4euhwg31fde/DV937aLf1A5MCuLq5U6ZchWybd0o/n+N5fFuMc/2y+C/M8dKFMxw+uFe73bhJc3LlygVInqMfYu6iKDJ7xhS8cnvTs8/ADOs9f+4HQN44JYRFSoUNqiHkz3hF5colOQP62BATLQ08X34Vq9fHkd9HetjmhGuqLwDa2tl9kLFkNM+EhHgoXRhMTSBZCfefZPvxTU2hZCkVcxYmMGBwItN/suTs6VdAHGCCqVk/QNIe2d9+ApiAqxOULfbWY9Gvf/minO1bzdi53Yzk5OL6I6JajWKcP7sLnwJreeXoxHPfBPLKLela5Aq1f+pIufKqTGNPz535c5oy/+dPqV4zY0ekq5fPU6RYQdZvdOV/K82Z84sFoihw87oJbZvbMn12PB06fXqNtD5vcv49PDw4fPgwuXLlSmP7B5IAaGVlxZw5czh27Bjx8fFUrVqV8ePH4+PjA4Cvry/58uVL0zZPnjw8ffo0ZwiA+TzscXNz+NTD+CiEhYXx9OlTLp47yY4dO7J93vk9s7e/nIxxrl8WX/Ic79gY3mq7d+1EkSKSViMmOor8bjYIptl7O7558yb/WynFY5s4djgmGbjiBge+ACD/fZ3WJffYvph7OaRbf98+6N0NUtK+Vq0K//4rx9k5bZC/T3lN83noxmNtYYpPBvPJDvJ7OjBu3DhmzZoFgIO1jAL5XHlZvACJNx/CswDy2Zsh08um8urVKxQKRboP6LfFxwsa14VBg+6zZg1AQV4FtSJFALRTATKwb1sfF+8304Y+fAj//itd59hYePUKrl1z4NYt/Vr6xoUKvhlcgvNnwc/3Ln7AdHsP/icvgHvIfao2MkVm9fb5/6LDgzK8dsuWLWPYsGFUr14dExMTGjRowOnTk+nfXxp/UpLAmOHWeOeCr75660N/MGxMs3ZAddCEFsqIBw8eEB8fj52dHcuXLycgIIDly5fTvXt3du7cibu7OzExMeTNmzdNW2tra+Li4nKGAGhtbZ11pS+E8+fPM2nSJIYNG4abm9unHo4RI0Y+AmGpIgM0bdqUsCfPAIiNjeVhngZY+Xgjs7LEplMT7Ad2SGNX9rZERkZqvz979oxt27aRlJSEl5cX/fv31+5L8UrO/ToOTKyxqFEO8zJF0u3z9Glo3x4SNZE+mjSBf/6BnHgLl+mpmj5GqJ2ZM2dy8OBBrl+/TlxcHADmZYpIAqAoknjjAZY1y2vH4+EhJeeNiorCzu79I2TLZFCqlLQsaGlZjISEKkB1ipm8xEaQjOGs29TLtI/Hj2HRIjh2DB48yPx4trbwww8wbZqurHBhw7zBgXKNOUBSMorLd7Cqk3FA8aioqHTL/fz80i1Xq9UMGzYMgHPnzgFw6tQpJk+ezI0bMHw4rFwp1e3VC5ydoVEO8bnMDpln+PDhDBgwgEqVKgFQsWJFypcvT7Nmzfjjjz8YPXp0pr97QRByhgB4zzcIZ2eXrCt+ARQvV5N//pUCQfsFRGZbv4IgvYU+DYz8ZF53HwvjXL8svpQ5qtVqJo0fgaurOz+MGm+w76HvC+33M2fO8DwgEuXX07Vl0UkKTB9JacMSbzwgzD8EYUi39xrP7QdPtd/HTpjM9q2btNvLV/zG8lXrMTM3JyJCskH0lksGWYouLdO9N924JqdfT2sSEyXBqnmrJOYvjic4EkhVPadd05i4xGy936aQep7mlpKdnd+LEPwCIhGL6GyvAvedQ8gvLc2FBL/Slp+9fIciRYvzvigSEjhxShKEOnbJze2b8OrmDrbZdUYQVITJXDh8Kz81nSKx0kvrHBoqcOeWnH+2mLF/r6k2hmNGlCmrpFffRBo3S8bKCsKjR7F88Tyat2yLqbWhUiNclawNNhe06QCCni1aah5kEA7p0WM/g2unUqnwf/6Mfj07pVv/3pMgLCwtGTURIqIt2bzRnORkaNdO5K+tsZQq/eltVMPCQt+7j/Rs/7y9vSlQoAAPNNK7jY2N9mVEn9jYWGxtbXOGAKhWizniJvElIIqfLuzCx8Y41y+Lz32O9+7e4e+/1gPQpn1n8uUvoN0XESGF5ug7YAjVq1bFr+8U5HefYCvIiRFVRDrb4Ryn0uVQXb0ZsVldyOv5zuN5rYn1BRgIfwDXr11m45+/k8dV0kL5yC2xEuSQ1wtqVExzHQ7sM2Xkd1YkJkrCQc3aycxfLGX3yOyafepr6urmzuuQYBo0avZBx5EyT0uNZBUfHy8dTz+G4oUbiN/0QKVS8fjRQ22xIkGRLWPr0r45d27fAMArtxujxsVyqcvfmAdIAs/fsc1ZOMgWQRCxsxOxtRNJSBAIC01rlCeXi5Qqo6JJs2S8cqtxcBQpX9KGJKKws9cNVhTh2+/HULJUOapWq4GtnT1tO3TB9/Ejbt+6zuuoCMI8wDkZ2H4IsUU9KJe+A0pAQPoBs6OjowzOz7Qp4/lz3f8yPA9BQYHav72fZyQQHiaFy4mLE+jfy5rN22PJl//TOoao1e93wZVKJXv27CFfvnyUK1fOYJ9CodCGPcqfP7/WWUQff39/SpcunTMEQCNGjBj53Hn8SHej3bHtb4aPnqjdTom152BnT8jQGdpMGw4yU2JUKqLmjoYKlWH5n5LnqEoNkxbAqhlg8W7xSl+HBKcps7GyJjZe0gisXbKQOFESDpqbuUhriMP7oW+lHx0lMHO6BVv/1o2hclUly36L++ip3d6FXftOcPPGNRo0app15WzAylISABPi40lUKLj97BFlfXJj4vcS7jxCGfCKFj3a4PvkkbZNTEz0ex83KjJSK/wBuLi6Ym2WTL24gwAkYcr6hI6AlFIuKkogvRVXF1c1ffon0q1HkoGgJwiSnaFfQFpljampKY2a6Dyc5y2S1l2rVyhGSMgrgto3wHnzUUla/Hkp/L043d90wMsXacog7fnJTPgDCAx4qRUATUxg4dJ4eneXcfWyCWGhMrp1tOHPzbEUKKgTAkOCBc6e/njiUEyMLSDFUNyyxYKsLAB8fV2Ijm7Dvn0uPHwIrq4mLFu2DDc3NzZt0r3c3b17F39/fwYOlJy+atasyb///suTJ0+0nsBPnjzB19eXIUOGGAVAI0aMGMkOHj3UCYD37t3m77/WMfuXKVSvUYekZMno2/HUVWKfadIVmJhg550bnj1hzowpbPpnH0KfDvDvcXj1Gm4/hCmLYOZoMnWd1OPxowecPH6Er7r35uKFMwb75DI5p+3Ks1MI4Oc4P63wB9DRygOmj4A6lbVlx46YMGmcFcHBumO365jEjNnxfMCkGtmKm3suA+HkQ2OpyQoVHx/H+NHD2L1zGz/Uacm3AKJI+I59BsIfQEDACwIDX+Lp+e5xbPWFP5BCwHDiIkRKwpNp46rMaWLKwf2JPHooJypS4PVrGWamIkWLqyhSVE25CkoaNEzGwvKdh2GAtY0NhEBCnYpw76X0e34eAL9vhW96pKn/LIO82DHROgHwTWw5AwNeErb2b/z+2U3FQsWxGNyd39b40KOLDQ/uywkJkdGtkw1/bYmlYCFJCDywz5TfVlhmFfM82xBFS5ycfgVg1iyrLL2C1ep8JCf/zOrVZgiCFKd95MgfWbVqMGPGjKFNmzYEBgayePFiihUrRrt27QBo3rw5K1euZODAgYwcORKA+fPnU7hwYZo1a/blCIDywJfIM0nBlhqViwsqD2MMPiNGjOi4ef0qAGXKVTAoj4+PM0j5mJrk5GT2/7tLux32+jV//7WemOhoDu7foy13fPgCzF2k8CBzx/O4f2sArly+QN8eHRk78SeKLZoEfcdAggIOnYGiBaBvxyzHfu3qJbp2aI5KpWLW9Elp9pcwt8NWKVLCxMagfG7TruQeMwYK5QOkmGqrfzPn5HGdis/aRmTU2AR69E76osP1vC+WlpL0lBAfz+6d2wBYc/Uk31qUASDm7OU0bSaM/g5TMzN27T1O4Xe0Bbx9yzC7jIuzC0zVacqEtg2pW01J3fofNkOG/nPYWvPSknT/HmZdG8GtG1Je4LUboJwP2FgbPId9nzxOt8/ERAVJSUmYmZkRFvraYF+9hk04fuSgQdmlI4eYfXAfEaKSyU8e0uviTRx+m86fm4vSu5s19+5ImsD+vWzYtisGVzeRc2dMadoEVq/5OPYKarWa0NeSCtbd3QJ5FhGrk5JUREbG4ODgQHCwnCpVoEqVehQrtpDVq1czdOhQLC0tadSoESNGjND2Z2Zmxtq1a5kxYwaTJk3C1NSUGjVqMH78eExMTL4QATAxkdwt6mOS6seRGUpXN56fvwXm758OzogRI58/ioQEurRvilKp5NCJS/gUKATA6t+WMeeXKUz9Zb5BbE99Nm9czwv/Z9rtF/7P0qSABHAQTCRt3qIfoXoFmjZvze4dWwE4c+oYZ04d4+KNxzjPHA3Dp0vLZqs2QfO64J65o9yEMd+jUmVs4B4wPJazDyIpEFIazuhieRQdPgQK5ePhfRmzf7Hk1AnDtd3adZOZPjseT8/P2EDzI5FiA5iQEK8ts7a1hVwe8CKImHuP0m2XnJTE3Fk/8791m9PdnxWPHxm67DqHRsPjZ9JGqSJQtVzaRtlNqudwSrAZyylj8U5dt3MLwPA57PvkYepaWmJionF2djFYJh4z4ScGDfmeyRNGsvHP37GwsEShSGD7gd3aOvPintHJwh3LyQtx3LKMPzfF0bOrJAQGvJQxqK81v66O4+5tOb165tzft5mZWbpRQ5o3b07z5plruD08PFi2bFm6+95sXSGnY2aG0is34hu+moqCgNLTi0+xjtG8QRWCXwVy68ZV+nRr+9GPb8SIkfQJDn6FUilpSFb9KqVofOH/nFnTJ6FWq9m2ZWOGbe/ekQSqipWqApLTR3rCmIfcHOfJgxFqSBrGEaN/xDxVOoR7d25JS7FdW0kFiiTYtj91VwaEh4fxRCMEFC2mM7Jv3rIdO9dsIdcIM8J+TmbeZH9c5xtqB589LcqoH6xo2cTWQPjz9FIzZ0Eca/6IMwp/b4iVpaQl1ve8tLG1g6plAYhRSvFzihYrQbee/QzaPrhvmL7tbUjJ5pKC05V7uo2OTT9ORO5Uz+EUPXNsBtX1n8NxcbFp5gC6cCkxmmw5AQGSAFi+YmUGDfkegIlTfmHLzoOMmfhTmvbxqDmfHAXPAmDZH9g7iKxeF4eHp7T0e/uWCUMGWCOKAvXrpz/OdevWMWHC+DTlF86fp2QJQ43t339vomGD+lSqWIE+fXrz9OnTNO0AKleqSLNmzWjWrBkVKlSgePHi9Osn/R5ev37N0KFDqVSpEk2aNOHgwYPp9pEdfBkCoCAQPmoiwhu6UgmiSPioiV926gEjRoy8FSHBQdrv165IkfevXD6vLYtJR6OXQsrDq2WbDgblNUwdDLbzNWmA/Te6iLS5vfOwfc8RgyDNKQ85+nYEueYWvfuotHyWAU99peUzT6/c7Np/koPHL3Lr4UuWLFnF67ureTU/CUzgdplomq7zA6pqWlZi2GBXdv5jpg3/4eGpZv6SOI6diaZ9p2TjbfItSNEAbv37T22ZtbWN1vM1RmN3aWtrh20qy//oDOLgZcSzp750aNWQHdv+JijQ0IPW5Jgmc4SJHOpUeat+35lUz+HUAmDqp7P+czhAk/rN3t4BM71VOZtkqVXsV8Ng2R+88pdCJenbS5qbm1O+QmXcQ9MXNU8ka1It/rEDrt7BzV1k9bpYbGylvm/fMqFQIUitYFOpVPzvf/9j/ry5afqMjY1l8uRJBjaJV69cYcXyFaxes4aLly5TqWIlJk9Ka4oBcOnyFfbv38/+/fvZvXs3Tk5OjBgxAoCxY8dibm7OyZMnWbRoEZMnT+bu3Xd/OciML0MABBLq1EdRphxiFmvpolyOokw5EupkIO6/BSqViiULfuGrdo3p2aUlC+dOIzkpiciIcH6ZOoGv2jVmQK8OHD28772PZcSIkQ9LiJ7X7PNnfiQmJnL39i2DsuTkZEKCX9G5XRN+mfojAS+lB1dQkCQA5vd9hbWguwc1MHOio7n0ZPmhamOYNjxNgOcixUpw7Mw12nWUBMOggJeIosjFx/c47GmGaXIMZoHPMdu0FbPbN9P9PD95DIACufMgk8kJfV2MaVNc2FRrK0u6n0OWYvqllPO0z0/AYeAI8K92HPb2asZNTODwiWjatEsmg8QhRjLBSj/AngYbGxsoLpkTxIjShbCxs8PW1lAAjIuL1Wqg34SeX7Xh5o2rjB4+hFdSEmAAmtVqAEGaEECVSoP922ffeFf0n8P6AuAKwF7zP0jCoMIrn/Y5HKpZNnZxc9d6UgPYat55YuLjYM1WFOsku0qr4HA4dQnGz4VRM+GhH87bDhuMpWiRYgA88bDXFU5ZBC9fUaSYmuW/xWFiImJuDnXqSJ7R+jqkCePHc/3aVTp2TBtvcPasmTRsaBhVukLFiuw/cIB8+fKjUCiIiY3JMpsHwM8//0z37t0pWbIk8fHxnDt3jrFjx2JlZUWxYsVo3rw5u3btyrKfd+HL+RPXvH149szcWFpQqbJN+3fuzAn8nz9l3abdqJRKxo/6hlMnj3Ds8H48vbz5c/O/vHjxjEnjfsArdx6KFiv53sc0YsTIh0E/bIpKpeKZ3xPu3rmpLVMqlbw4c54Te3Zy7colrl25xIa1qzjYfiivNNkKPHeeMOizvE8ROv80hvphL6jXsCmCWfqxUzy9vClQUMqiEBj4kp3bNzP6hyEA7ADaAowfkuHYUyL+lbx+na6tTLly05oKJrdo2nYFt8vraUZMVFD5Mrn6nKJkYCNc3dS4uCrIn19FvQbJ2L5/Qor/NKmFOgkB8niAjTUx8ZKAZ2tjm27d6OgonJycszxOTHSUwZJpcnIyMpmM6/eeY7V6G9z/R9rRsMY7zeOd0XsOpwiAj4G1mu8/A0MAAQh3K6Z9Doe+ln7BLi6uJMTHEalZ8rXVvEylCM5JkZKW1PzmQ/heLwXJ0XO4qAzz/eYrWJgHD+8TihJKFUF96wGrHl+hZLse1Ny2nhq1vBg7MYHF8y2pWVMgKVEgKhLsHUQEAUaNHoWrqxvLly0jQO9cnzp5En9/f2b8MpP169cZHNPa2poTJ44z7NtvsbGxYd36PzI9XZcvX8bX15dff5U8gtVqNaIoYmGhMwuRy+X4+/tn1MV78cVoACFrLWB2av9AutgvX/hz/Mh+FIoEFq1YR7nylbl14yr9v5Y8u3wKFKZRk5Yc0UsEb8SIkZyH/hIwwNLFc7l8UcqsYG4iCW6Pho7l4W7d33KSMpl6WxYRp3n45JKZUVCu02AU3b4Wi8pladysFaZZBM5LWdYKDHjJts1/acuPvsHYU3Io2CW5ceWmFXKU/GiziEXjn+m0fxpkohzX337k1zWxTJuZwPcjFLRuZxT+sgNnF9c0ZQpFvCTolCtGbMoScEIypunYoL/pMnCQnsYvBbVajbWVNcJR6TeLTAZ1q6ap96FJeQ5ba4S723r7QoCLgEJuQ8LLWAiPBHSZMVxcXLWhdABsBUlHFfNNN8jlQiKS7Z6ZkFZ0cRYM/77y5ZOyrrwODYGZo9hsEs28+Of0eXUVfpZsfBPiBXLnhpIlJdVfUpJAZISkCXR1Tet0ERUVxaxZM5k2fUaGqRqrV6/B1WvX6dmrF0O/GUJSUsZ5f7ds2UKfPn0w0/wWbGxsqFSpEvPnz0ehUPDgwQMOHDiQaR/vwxclAGptEDKwlclO7R9A+YpV6dP/Gw7s20Xvrm0YO2IIr18Ho1ar6dm5BZ1aN6BT6wbs2bk1jfu6ESNGchYhqQInH9grLbvYmVnQSi75NH4b84B/EiVtxdeWhnHbHOVmWLZryrBJP9OiVTuOnbmOyVsEcfb0kvq7c/smly6c1Zafz6iBBhG4ovl+ghGAwBTvdUQ0usTt8rGoU63zqAUVt82uc9r82BuPzcibkV5K0/h4jUdw64ZaTZbt/afkdc2lreOmSSEXvXCVFAMyC9IL8t2oSQt49AxeaF5kKpYEJ/s09T44muewrWY9NXUm38dAuHVeycP9wCkAQkOlvylnF1esDQRAjQbQ0hSmDidJ8+g2K1lU0m6WKw42Un0bE1PMTHRCYF6NABgTHU2iswN78+jCH8Vduw1+L7hw3pR69cHJSUQQpPEmJwsoFOlP7ZcZM+jWrTt58uTJcPpmZmaYmZkxePAQYmJiePw4/fA2YWFh3Lx5k9atWxuUz507l6CgIOrUqcOcOXNo166dZEbwAfhyloA1pLx9mN+5ZSAIinI5iSVLZ5v2DyTD7+IlS9O0RRsiwsP4bfkC1q5ahoWFJZt3HtYmIw8PD0P+hoFcjRgx8vG5d/c2Z05JObpT0oel4KSEkpY2bEs0fOh26/81zV+8YNDxrQRHRzBkwmQYNJS6QN1+fd96DCkCYFxsDCAt/ahUKm4ACsAig3b+QCggR0BVqS8buzyg4rwNdBj3HJmSNAIgSFrAhfYzqBVSHwGjl0d2ka4GMEET+LtOFWKszEABtqHRVB65mLk2hSlnasvQ6PuEANFHz8CzcNi4CGzS2hOmoJ9LGKBGrXrMW7wS1u3UFTb4yMu/eiTUqY+5Z24IfEl4qn2v3XKRoHKQNtZug/ZNCHutsQF0cWVg268YdvMa9UwdsXVxhsBQKRtIpdIktawHWzZgXrsK/DBa6kMU4UUQgoU5Lq3rEqhJKZfLwxNTMzOSk5IIDQ3h9n1druGnqgRK7j2Oe64iBAXKMTUDB0eRqEipu4zsXw8fPsTJkydYtmwparWkjaxapTLLV/zKixcvuHTpIr/8MhOQNLIqlQpb2/RtMC9dukSZMmWwtzcU0iMjI1m2bBnmGmeYkSNHppv3Nzv48qSSDLSA2a39A7h5/TJzZkwiMiIcWzt7zMzM8fDyxqdgYTasX0VycjKhr0MYP/IbDh/8N+sOjRgx8lFRq9WcOnGU1k1ra+2QmjY3fCMfbZ2PEiaGQaDbd+yK55ihlFg2m31nr3Hk1BX6DRr6XmNxc/cwCAhbrUYdzMzNUQGvMm6Gxt8Tn1z5+PsfJZVP/cqZWqHpav9SMGoBPwwOjk7a7yme3VoNoKkJMYXzApJmSxAE2lm4kU9uiZ1mqTNKVEoavA07Mz1OsMZcoWr1WkybuYDV6zdjbWoOe6WXGAQB6lfLxpm9JYKA0KJ1uruCataBBtUBSH4dxrheXdm2RTJ5cH7xmqbLdnHQoTzL7YphW0hK6ZaSDSRRLT3Xzcz1ls8FAfJ4gpszrm46raqNra12Gff+vTvaFyuQBED2Had69SQuX4aoKDA1BWcXERcXMcM0h9eu3+DCxUtcuHiJHTulFYILFy9RoUIFSpcuzeFDh7hy5TJJSUksXryIIkWL4u2dJgoiAA8ePKB48bSBv6dNm8Yff/wh3ZtOneLkyZO0bds2/QG9JzlCABSE7P0o6hraAqbY/inq1s/W4zRu1ooSpcoyuH9XurRrRExMNH0GDGH8pOm8eP6Unp1bMGxwLypVqU77Tt20smdK++ye+4c4lzn1Y5zrl/X5VHPctnkD/fQcx2QyGWXKltdu97DwoIm5CyXyFKB6jdq0bNOeJy/CmbtoBTKZgCCAg6MD+X0KvPdcTU1NcM/loT12/vw+uLm5A3DatCjqDDR1uzXltVs3h12HEc9dZaFG+5cZKVpABPGLuqaf8rdropdLLCW+oyIhXlNPJJqUMDAarVAeT/i2J3YlJY/VGI2NG2u2wqWbGR4zRUNdtlwFuvXsi5mZKSxZp/P+rV4OwdXxk15P0/IV0/3dhTs5Qd8ORKiTOZkUwbbzx7X7nPeeRhAECphYYSY3wbaEpPmKjYlGECApWYqjaGZmnu4xPT112b1sbGxwcZEEwMuXDA0p/JTx8CqUalY3UCpFTp3Sm987SkU+Pj7MmjWbKZMnU6d2bZ49fcaiRYtIsRWsWKECV69c0dYPDg7G2Tmtw8+0adM4evQoFSpUYN68eSxduhRPT893G1RWiJ+I4OBgEcl8RQwODs7+Axw4IIqSNlf6HDiQ/ccwYsTIZ42VlZX2PgSImzZtEg8cOKDdHmeVT3ziUlOM/H37RxlPzZo1tceePXuR6OpaTQTEMvyovZepQQzWfE8G0U5T//ifm0Xf3PXF3zuVEHmLfwdE470xO0m5fs7OziIgmpmZiSNHjhS9vb1FBwcHERAP79ojxh46J6oSFKIoimLv3r1FQPyxTgvxiUtN8YlLTdG/Vi9RrVane4yOHTuKgLhkyRJRFEUx/ux1bbsnbrVFxa1HH22+GbFv3z6Dvy0Pzf99+vQRb9++bbAPEG0FE/GcU2XxiUtN8Xm17mLUX/+KS5cuFQGxY8eOoiiKYrt27URAXLlyZbrHHD58uLa/58+fi61bt05zHEDsbuEhPnGpKQZ+NUqsX18Uhw37mGdGFJVKpRgQECAGBASISqXyrdr6+4uih4conj79/uPIETaAz4KiiE3O5qwcJSrjWaYcFjevoyhTjsASlSEgMnuPkYMQBMjv6cDTwEjeMB72Z4txrl8Wn3KOHp658X0ipecaOHgYlWs15d5dnd+iq8wMvD0IrVeTsGy4f2Q1V0Guuw8uXlKA16+lN/+bRHLHqiLFE66xQVTTG+gJfA9EA6ampngu2IpakcjCcc8R1AKiLOuTKYgCo5PHU/B15Wy1Bfwv/G4h83mamEjXMikpifnz5xu2c8xFsE9BCEsAEhBMpBzCr4sXBDEK7j0h6b4ffluPabPG6HPn7n0ATK2c8AuIRFz2t27n8L4EOLlm6/PuXa5ndIJhxYLWNgTFxRIQ9JoZs+YZ7FtkW4TGZs6Sd2+zOiT/MpJQQSBxmxQU/VVIGH4BkYRHSsu4UfEq/NKZn6mFzpU9LEaNu2fedMcWZ6FZnj9ygXLNnrHvaF4Sk0SyCCOcbajVOeOPIkcsARuq6rLpg0D42MkkFSpC+NjJiAgf5jg56PPBzmUO/BjnavhRqdRs2bSBXdu3fvLxfk7XMzZWFyOvVp0GiCI4OeqWZZxlpvBdbzAx/ShzLV1W97APDGgEpCwJL6NU/BVWiWpWa0r+BFIW2TxVcuQvXpFkJhKUT/lGwh+AKIgEyQNIFJO+mGv6sT+p5zng628B+PmXeRmcdcneU7+Nnb0DANExUdC/s67i+u2IIoSHh6NIUGi/p6SNK1e+EmJIOBy/INV3coAuLT7KPLP62NraG8w5TxXJ7i8qKjLN+ShpYiMJf7lcYNK3oHle22hiE8VERyOKaMOhmJmapXvMlPMIYGllTeGihjZ2DRtLeXPjvHW2gjV8txAeDjduZHi5vlhyhAbwQ5FQqy4vjl341MMwYuSDs2TBLJYtnosgCFSsXBVPr/QNj43oUCQkEPxKiqc2b/FKqtesA4CTny4eoIW3l9Zg/UMTGChw6cL3SP6+/QBznJxtCA/T1RkCWKbT1ksueQyam9uy/fk+wpPf/N3eWe2COW8ersZI5oydOJWvhw7HwcERQRAQU6QnDbZ2dlhZGToV2dlJwlJ0VJSUB9rbQ3IGuXSLvxcv5Md5U3FyduHIySvaEEEFCxfFxdUNVm4EpcbpsV0jMvRg+Mg4pQqJk6dGbTh2KN2Uiq4yMzAzlYKdW+r83VOEyJgYyQkkKUmyAUydP1tb304ndJqamlKkqC4v9qJlq1GpVRw5tI84O0swcYcXQZR4uBdbux84dtSECmmVrV80X7QAaMTIf4XTmhAmoihy+OA+evf7+hOPKOfz4sVzAKxtbGnTTqN1EUVMl/9JEzNn/FUKSg8doLOA/4CcOGbCqO+tiIy0B6YC0OmrRAoVcuSXaYZ1E4BcQBkgJU28p7U9FCsAYwbh6VocT8OkCEY+IoIg4KjxBra0tCI+Ps5gv3uutAb99hrNVVRUFMjl0Lk5zF8DwNnduwAIDwvlyeMHWu1f+QqVITIa/pL2I5dB+6YfYkrvhL5HNIBPgYKApAFMJRNj9c9KcHdJE/omJV9yigCYqNA4gZinbzJWt34j3HN5Uqiw5DxSoEAh7b6y5Svx8IF07uLi4qBTU1i4FrmgporTI3bvKUEuDzHdfrMbUS0QEyO9ytnbC7xNlLiIiOwbh1EANGLkCyAsNET7/dSJI0YB8A1Isf3z8Smo9dTj5n2478tyu2KIhfMjtGjwQccgivD7/8yZNd0CUZTG4OGp5ucZ8dRvqCRR0YuXL335Y+0qg3bdAHdPLw5qUlTl6t0FRk34oGM18vZYWqUjALp7pKmnFXRStGPN68HidaBU8eqFLg1YWFgYL/yfAZAnbz7YdQRiNWFm2jYCz7TZKz4VqTPf5MmbH5Ay3WzeuN5gn1Ag/cDKKenyYmMk278UDaCZWfoaa2trG06cu6ENp2RuYcH6jTuIj4sjt3ceXmpyd8fGxkCjmrBwLQA1449yLKg4Eye+9TTfCVEtEhEhvaU5O/NWAiBArlzg4/P+4zAKgEaMfOaIokjoa132gNevQzKpbSSFx48eAGi1BQBsP6j9KvRs+/Z35rdApYKffrRk0wbdw6xx0yRmzUvAzl7SRJhbWDB56mzatOtMh9YNtfW6eOfFdvIMxg7sAUBu77wfbJxG3h1nZ5c0WaCKFiuRpl6KBjA6RQB0sodaleD4BV4lxmvrhYeHagVAb++8sO6IrpNe7bN17NlN6iXhNyFFAExIiOfs6RM8eig5v6QESU6P1IJnjVp1td9trKWMGrGxseDhBsUKwv0nNHq9jUZ7m4Kn+1uP8V0IDX1N1XJS7u/r14Nxc/s0grtRADRi5DMnLi4WhSJBux2djpG1kbQ8fqgRAItoBEBFIhzTxAuzsZJSTX0gkpNh5HdW7N2jW8r69gcF3w1XpCtzlilXQZsZBMD+1BVMTEzYvH0/B/btoVWbDh9srEbeHVe3XFqhBWDazAW079QtTb0UG0ADB4m2jVAdO0+IOlFbdPP6VV48l0wXvJMFeCp5yVKuhBRTMAfj6OhEn/5DWLfmV4PyjHLqghTMOYXe3dppv2ekAcwKa01Ktbg4TVDo+lXh/hPp+9c/Ijg5vFO/b4ujSske9yoAxHebwEvTtxPF5M4OuC0Zj/w9U/0ZBUAjRj5z9LV/AJGR2Wgk8gXz+JH0YNZqAM9cgTiNIF2/GrxFHt+3QRRh/Gid8GdiIjJ7QTxt2mVuuKfSy26UkmWiQqWqVKhU9YOM08j74+au0yiVLlOerj36plvPzsEBkJaARVGUhKKaFQnNnwuVnhPQlk1/aL/nvvZIt6OtTjuck/nxp1+4cO6U1o4RMMh+kxoTExOsrKzTLKObmb1b2DhrjQYwPi5OOs/1qsLyDQCYWplj3aLmO/X7toiiSKn6kg+/jY0NsrewM1bHxBOz5QBJj55jWbX0e43DKAC+B/7P/PjfyiXcv3cLURQpULAIvfsNpkSpsgD06daWsNAQ/tq6Hzu9fH/BrwLp270dDRu3YMTYydrygJf+DOrTmc7d+tC73+BMjz33lyl06NIdnwKFtWXTp09HLZjTvfdAbdl3Q3rzwv+ZNsZXuQqVmTR1DhfPnebunZv0G/Rtpsd5FRTIsK97snX3UW3ZU78nrFg8Bz+/x9jZ2fNV9340SZU+KzFRwbeDetK5a28aNW2ZYf+iKDJt8hiq1ahjUO/Y4f38ue43oqOjKFmqLCPGTMbewTHTsf5XSbH/s7G1JTYmhtiYGJRKpVZIMJIWURTxf/4MgPw+GkNxTWJ6AJrW/mDHHjcOdmyTHmCmZiIrVsVRr0EWaTuMfJa4uevCjeh7qKYmRQOYnJxMQkK85CUsk/GqVW248k+a+tbWNjievCptWFp8UG11dtOwSQsDAVCWRfC9UmXKcfH8GYMyc4uMMmNnTooGUK1WS+fZJ4/kcR0SilXDatgP6/5BzT5SUKvVJGlMdRzc3TMVgkF6+QsPD8fe3h7Z6whithwA4MSJEyxduhRfX18cHR1p164dgwcPNhCQR40axZ49e9L0uXjx4pwRB/BzRKVSMXnCCCpWrsbf2w+xZedh6jdsxqRxPxCuF7fBysqac2dOGLQ9dfwIlpZpE30fOrCHBo2ac/jAHlSqjB8I165cRK1WaYW/pKREVi5bwJ9//plmjP7PnvLH33vYvvcE2/eeYNLUOQBUqV6Lhw/u8vyZX4bHeXDvNmNHDCEuThcrTRRFZvw0llp1G7Jt9zF+mrGAlcvnE/DS36DtutUrCAp8mWHfIBnizpr+IxfOnTIof3D/Dqt+XcSPP83m7+2HsLd3ZM1vSzPt679MqMbGyMdH5/EWnU6oBSM6XocEk5ioQCaT4emVG2LiJA0gSLHUKpXJ9mOKIixdaM4c6U8QQRBZtCz+jYW/cT9K7sDTZi7I9rEZ+TC46eWm1VcCpMbKylr7whYdpfvbfZXLId36BVxyIaRoqxvXBKv0ggN9eurWbwRApSq6UEr9B35jsLQ7c+6STPtY8utaevUdZPDMfFcNoJWVtXbJOS42VvLwL18CQS7HokopSEqrhV+3bh0TJozXbv/99yYaNqhPpYoV6NOnN0+fPk3T5sL585QskTbPb2qCgoKoUqWKQZlCoWD8+PFUqlSJGjVq8NtvvxEZGZkmnNCtW7cYMmQIhQsXZsWKFfTv35+1a9cybZph2IAHDx7QsmVLNm/ebPCpWrWqUQB8V2KiowgJDqJOvUaYmJggl5vQtEUbWrRuT1REuLZetZp1OXPqqEHbUyeOULW6oYZBpVJx7NB+2nXqhru7B+fPnMzw2Js3rqNxM53GbeKY74iLi6Vx48YG9QJePMfewUFrSJuaeg2a8s+WDenuu3blArOmT6LTVz0NygVBYNlvG2jVthMgCRomchMsLHQ3oNs3r/Hg/h2KFS+V4RwAhn3dE1dXN4qVMFRjH9y3m9ZtO1GgUBFMTU0ZNHQ4nbv1zrSv/zIhwa8AyOXhqb2xRhmXgTPlpSYETC4PT8lo/OApSJSCzNKoJphkb0oApRJ+mWrBovm6v5OfZyTQpNmbx2vpP2goJ8/f5KvufbJ1bEY+HPoaQLtMNICCIGg1hPo2vK9eBaVbP79+nMc2OXf5d87CXxk/aTrLVq7Tltna2XPszHUuXHvIxeuPdCGYMsDZ2YXJU2fTvVc/bdm72gAKgqDVAsbGauwArSyR2dlgXqqw7h6A9Ez+3//+x/x5c7VlV69cYcXyFaxes4aLly5TqWIlJk+aZHCM2NhYJk+elEZgS829e/cYPnw4MRoP5xRmzZpFREQEx48fZ/369axfv54rejmEU9i9exclSpRg5syZVK9enR49etCvXz/++ecf4uMlx6HExESePn1K1apVKVu2rMHHwcHBKAC+Kw6OTpQoWYYxwwezeeM6Hty7jVKppP/X35FfL/ZQteq1uX/3tvat7uULf2RyGR5euQ36u3r5PI5OTuT3KUijpi3Zu2d7uscNDg7iqd8TSuslrB8/aQYjx07G2towuKif32NkMhnDv+1H1w5NmT5lrIFHWrWadTh98ijJSUmkpmChYvxv/VaDN7cULCwtEQSBbh2bMXb4YNp17IqziysgeWstWzSb4aN+zFK1P3/JagYM/j7NUqWf7yPkchOGf9uPr9o3YfniOWliShnR8dRPMmLOmy+/XjyxyE83oM+AlBiAWu/ZXXrelNlsTxURIdC/lzVrV+uWrSZOSaBbz7R/d5khCAJeufNkajRvJGfh6am7z5evUDnTumk8gYFXQVKYn0rFDTXSTuGaVZk8nlA2a03Tp8LJyZn+g4Zqnw/65S6ubmnKM8PGRqfIyMwLOCusraWX5LiULEAvgrCsUQ7B1ETSAGrStE0YP57r167SsWMnbdsKFSuy/8AB8uXLj0KhICY2BgeN/WYKs2fNpGHDRpmO4dzZs0ydOpWvvvrKoDwpKYldu3YxefJkzM3NsbOzY/Xq1ZQtWzZNH4MGDWJOynKCBlNTU9RqNUqltKrw6NEjlEolxYoVS3ccn4+R0OEz8OtfOiPtD4W1JQzpAY2ytqmYNnsJe3Zs4ezp4/y5dhWWlpa0bNuJXn2/1t6kLa2sKFehMufOnKBpizacOn6I2nUbkpBgOI/DB/7VavVq12vEqhWLePnCn9zehvGR7t2+iY9PQeRy3aXLyL1eVIsUKlKcAV9/h62dHb8tX8icXyYze4HkhWVv74C9vSOPHz+geCotXGbLFSms37SLZ0/9+HHsdxQpVpIKlaqy5relNGjcnDz5sg5SlNG4Y2NiOLh/Fz/NWICLqxsL5kxl1fKFBvaSRnSkxLMrULAI9g6OBLx8odUAKpVK5HI5gijCo6dSmAM7m0853BzBfU2+X2/vvPDkOdzRGNQX8YGiBbLlGGo1bNtixrxZFoSHSe/aJiYiy5cLNGyRmCYYrpEvj1JlyvH9yPF458mbpaYrPU/gV0FSppqGHTrRzyE/Q87tBDSZMwA6NP0ogcpzAlZ6Co531QAC2NnZEfwqkIiIcIiIQnj0FIuOevE+ExPB0oJRo0fh6urG8mXLCNDE2wSwtrbmxInjDPv2W2xsbFi3XueYc+rkSfz9/Znxy0zWr1+X4RiKlyjBn3/+SVhYGIsXL9aWP3/+HHNzc44cOcLvv/+OTCZjwIABdOzYkcjISIM+3NzcsdQEA4yNjeXcuXP8/vvvtGjRAjtNXMkHD6RIB1u3bmXw4MFERkZSunRpxo4dS5kyZXKGACiTCVn+hsX12+Fp5jZl2cYf2xEaZy0AWlpa0LlbLzp360VcXCyXL57j16XzcXV1o0VrKSaTIECtug04tH8PzVq24cypY0yduZCD+3aDIO2Piork4oUz3L55jU1/StHfk5OT2P/vdgZ984PBMcPCXuPo5JzmfGm3Bd33+o2aUr+RLjJ8/0Hf0qVdY+LjY7XeUE7OzoSHvs7w/KeUp7ff3NycIkWLUa9BEy5dOINMJuD7+CHffDfKoN2b3J/065mYmlC3fmPy5pMCh3bt3pcJY4alGct/4b73JnPVCoCFCuGgcZSJiowgNiaKxvWqEvo6hB8LVaVnqCC95fZqB9/2RPgIxs5vwse+ng/u3WH9778BUKxEKdhtqP3LjnHcvC7npx8tuXVTd4t1dlGz/Lc4urS35Wng+x8jJ/Nf+RvNap5yuYzvho95o77s9TyBBUEy7dizS3IA8fD0pNGPYxnd8QZHksLoapEL7G2hY5OPco5zwvW0stKzATQ3e+ex5MtfgMePHuD75BHut3wppFZhUU/PDi9BAZYWuLpmHJuvevUaXL12ndWr/8fQb4awb/8BEhISmDVrJit/W5Wllt7BwQFlctoVgKioKKKjo7l//z779u3D39+fPn36kDdvXgoVKpROTxASEkKtWrUA8Pb2Zvjw4dp99+9LkQ4SEhKYP38+kZGRrFq1il69erF58+acIQAWL+CRZvkyNbEjehI+aw3q2PhM670vMhsrnIb3wMbLIdN6e/fuZeXKlXreNQ6UKtyZ14FPCQ95gY+XA6YmMjxcbGhcrxrLF80mLPAxTo72VClXhEtnLIiPMcPHy4F1h3dSrWpVZs6cqe3/5s2bTJw4kZ8njzdQd7s4WBFkYYJPBuNztLXQ7tu5cycuLi7UrCm5tgebJCKTySic11Xbp6lcIJeLTYb9mYmSmjxlf0xMDG3btuWff/7Rqr4tzQScnZ25eeUML/yf0rV9EwDi4+N5/PAeQS+e8NNPP2V4Li3NTXB1tNIeo3DBApgKSu12bJgVMkFIM8b8numP+XNHFEUmTJhAmTJltEsEGc01NjZWqyVoUKsSm/+UllRMhSQiQ55p7QOnPjyHg01hWgtu8Ps2XArlxn5Azood97Gu5zf9p5OcnEzDhg2ZMHwor6p0Qw1gZkq+fq3fK7ZWcDCMHw9r1xqWd+oECxfK8PKSlp++1N9uaozzfHM83KUVkbs3L5EYF86dO3e0+yqULkKB6lWZMG8mX0/7DZmdNbnWTMOy8MeN/fcpr2d+b51AVtD73U2CKlcsy+GDe3lw5yoWB25QoG5DzDxcUEdEIyYlg0qNTKlEpkk3J5MJyAQBE7nuhdlEk6/426FDWb9uHX6+T1i3bh09evTAJ38+Xr6UlFX6bfRRZyAfmpmZoVKp+O6777CysqJo0aK0bNmSEydOZCgAWlhYsG7dOiIjI1m6dCldunRh+/btuLu706NHD+rVq6cVEAGqVatG48aNWblyZc4QAO/5BuGcVZTwCuVg67IPPhY1EAKEBERmWs8zfwmCXr1i6oy5tOvYFQtLS3yfPGLf/gMMGTYSv4BIkpVqgkJjcY1IolyFKoyf8CMt23TELyCSiGgFMfFJ+AVE8vfmrXTo3J2YJF0E83xFyiM3MWXdX9to1KSFtlwws+VFwCv8Uo0v5YUjIkah3ffkWSDLlv/KjLlLsLGxZcmCWdSsXZ+A0ASkjKLwKjgEldw6TX8pBAdLORj19zs4ujB95jwGffMDDx/cZd/+A8xdtJJ8+QvQd/BIbb0xw4fQqEkLGjVtmWH/AAmJSl5HxGvrVK3VkBWL51KlVmPc3HIxb8ESqtWoq90vCNKN6Glg2pySXwKXLpxl1qxZAFSq2ZgCuZ0ynKuf72NACgETES9gYi69SPk+C0QpGIZK2JwYTGsL6SYaOud3QuvWQLB8t3AK2cnHvJ7RUVEcPChl+xg/ZTaB209BaKS0s24VnieIkMXffnokJ8OG9eYsmm9BbIzu7l6oiIrJUxOoXkNJIvA08Mv+7abwpf+NppCd85SZSg5Ca1O/PQCYOUj3v9ZNoX5t1KYmBJmbvdNv9V3ICddTbaIzXcnseZIVLrkku98DBw7SyaIQZgW8SUpWIrcw13oBq5NVqE3U0ne1iFoUUarU7Ny5k0uXLvLLL5KyRqlUolKpsLK24dChQ5w4cYIlS5agVkttK1asyPIVv1KhQgXDuWj2pyZPHsnGNyYmBg8PKWWgSqXKNEyMnZ0d1apVA6BUqVI0bNiQrVu38u233+Lj44NPqpxxdnZ2lC9fngcPHuQMATArb5mciL29A3MX/sba1Svo26MdSUlJeHh40aP3QCpXTRtMsna9hpw9fYJadeoblD9+dJ+XL/ypWsPQK1gmk1GvQRP27dluIACWLlOeJQtmZvmjAGjTvgvhYaF8P7gPikQFlapUZ9iIcdr94eFhxMfFUbBQ0Ux6ScuYH6eydMEsvmrXBBdXN0aPn0K+/FnbTS1dKAk1w4aPy7Rezdr1iY6O4ucfRxEREU6lKtUZMOS7txrj50xcnC7oqf/zZxTInfHbbkrIIScn6QVK3wkkWONBWNHEjmvKaC4mRzHHTUmtl7FUiwD2nYQOTT7MJHIot25eA8A7T17y5fdBnK33sG3/9uciPh62bDJjzSoLAgN0b/u2diLfj0igR+8kUmWmMmIkXVL+dlPTpFkrcnnoNH2CTdoQYv8FqlWvRZduvSlQMH1N2JuSkvknNjaG8+pQSp2/iZ+fL3v37pMEQFEEM1OtVuXsmdNERUWxaNEiwsPC+GvDBhITE/H09OT06dMgCGz/5x969e6jPUZUVBS/rfyVgYO+5vTp01I9PURRTVxsLDExMURERLBw4ULtPicnJwYNGkTz5s0JDw9n48aNtGvXjpUrV2JpaYkQl4B9dBAFL5zH3c6E4sV1TkC5c+fG3t6ekBApxuC+ffuws7PTrgKmkJiYiJOTE4L4iaSvkJAQ3DVR0oODP10uvM+Rnj17MnjwYGrUeL/gn5s3b+bWrVvMmDEjm0ZmJDvYtGkT3bpJ6aK2bt1Kx44dM6y7e/du2rRpQ+XKlbl48SJz5sxh7NixdO/eHd/zl7ng94gBll7E21iw8bUvAGYIXHKqglOJwuQ+ue6jeJUqFAoOHDhAs2bNMDc3JyYmBnNz83eO5/WuTJ8+nUmTJvHVV1/xx8z5+FfqAoBJPk/yXNz0xnaRCQmwbBnMng1hYYb7+vWDmTPBeEsz8jbMmjWL8ePHpym/desWpUplHlLLyJujUCiwtrZGrVZT2cSO1Z4V2d2xIiu3bMTFJe1KZFJSEqIoas2mlEqltkwul2Nubp7mHiqKIvHx8QambXFxcVhYWGgVN6IoolartePRb5uUlIRSqUQQBExNTTE1NdVmiElUKAh/EUCDQiWwKF+cNWvWaNvevXuX9u3bM3nyZLp3706vXr0ICAhg//792nttcHAwTZs2pU+fPjlDA/gsKIrY5I/7IPicad2hO7+v24BHPl1S8XdR0f+1aTOjxk55L3X6pyAnLEd8SB76vtB+P3ryLB07dsxwrvcfSwG4rWzs8QuIRKVZ9v3rr7+0dVxlZnSatwj/NQs4c+o4SYg8VSVgc98Pv63HEGpUSNtxNpCoUPC/35YRGPCSzRvXAzB24s/UqlOP7p1aY2VtzR+bdlCgYKEPfj2jo6KwtbPj+Ekpo0DBoqXx/3Wbdr+ydUOeBkVn2U9yMmzbbMayRRa8emUoLNatn8x3wxWUKaciNhliA9K2/9J/uykY5/n2KIX0PVvjkk0/+T36S7ueefLm59lTX64rY4hJTuTYwUM0b96clStXfrQxpCwDy2SyLF/CU4RFmUzGuTNn6NC8FU2aNmXG9o1MmTKFpk2b8uLFC5YsWULhwoXp0EGy7/7mm2/o27cv33zzDb169SIqKoply5bh4OBAv379coYAKIp8ET+qj0X5ilU5fOBfnjx+RIGChQ32vem5PHfmJCVLlcPLO+9nee5fvHiBIskUM/NPb8OW3URE6II4nzouBRHP6LqmLAE7OjkjimAXnzawsHvjetjVr8m6+jXp0LoRN69fwVeVQClTW/hpCeLfS+A9k4qnx/q1q1g411C7vPHP3zl+9BBRUZFERUUyecwP/LniD5SmIqIofJDf4plTx+nTvT116jXk1s3rAJQpVQ4mLJcqmMihVcMsj33ntpwxw6149FBneiEIIq3aJPP1NwqKFJNu6G8yh//KPc84zzfHzjb9v0F7B6cccw6/lOtZqHBRnj31JRmRA9FB3I0LY3DDCZ96WG9F5cqVWVynCqtWrWLXrl1YWVnRsGFDRo4ciYUmVV7VqlX5/fffWbp0KcOHD0cmk1GrVi1GjRqFra2tMRD058rYH6enEf7ehuo169D/62HZOKKPh5/vY/LkyUPn9s0+9VA+CJF6mWTu3b2dbqqh1HUdHJwgPgH71dvS1LHTO0/Fikta46fumlRMr8Nh0gIpaF02c+P61TRlL/yfc+nCWe32+YvnmFOzDs+Lt0ZctC7bxwBw/Kjk9HHy+BEiwsMwNTWleJgCwiKlCnWqgEvGeaZFEdatMaNjaxsD4a9h42T2HophwdJ4rfBnxMi7YpeODaCtnd1HN5P4L1CosM7ufW/ia2RyOfXq1k237tq1axk3Tme3vmXLFho1akTFihXp0aMHT5480e5btWoVdevWpUqVKkybNo2kdJIsADx79owePXpQoUIF2rZty+3bt9PUCQ0NpWrVqly8eBFBEKR4rqk0hU2bNmX79u3cuHGDc+fOMXXqVOxTxfCtVq0aGzdu5OrVq1y+fJkFCxbg6SnZlBoFQCOfHfv37gLgzq0bn3YgHwh9ARBgx44dGdYND5fqOjo5wbb92McqDPY3adqKajXqaLfza/IF+/m4SzlvAc5dg817s2HkOk6fPCbFutSQXtDvduaSkdyqhADC1Emw7h9YvA6Uqmwdy93bNwG0GWeKlyiN+Z5jugqZOMKo1TBxrCXTf7JCqZRuvsVKKNmyM4aVa+IoXNQo+BnJHtJLFefo6PwJRvLl06Z9ZykGKHBPFU+5suVw0ss0ApL37apVq5g7V5cK7tq1ayxatIjly5dz8eJFatWqxdChQwHYs2cPf/75J6tWreLYsWMEBgYyb968dI8/YsQI6taty4ULF+jZsydDhw5NIyxOnjyZKL280B8CowBo5LNDPyWQNp/jF0SkJotHqdLlANi+Pf20gAARKV7Atvbwxw4cBJ1Vx7c/jGH5//6Qct1q8ClQEAC/F89ghi5kD79tghid9/H70reHYYxBS0tL6tQzTLE2y6YQpkhCVe3wKwSrEiUh8Nufsm0sKpWKe5qsH2v+2EqvvoMY1+NrOC8tBePlDlXKZtAWJoyxZMsmnW3WoCEK/tkdS/kK2SukGjGSXlq0jLIlGXk/ChQszJ4Dp7jvF4Klgz116tZFTCWAjRs3jqtXr9Kpky4VXEhICP3796dw4cLI5XK6d+/O8+fPiYiI4OjRo3Tv3p3ChQtjbW3NN998w65du9JEOfH19cXf35++fftiampKhw4dsLe35/z589o6O3fuRC6Xa0PBfCiMAqCRzw6VSqn9HvjyRSY1Pz9UKhXhGrfSdh2lINDnz59HqVQSHRXF3t3btXkeASIjNUvAT4MgLBJ7mU7Y80yVbxp0GsBnT/1QVy4NLepKO6Ji4N9jaepnF6Iosnr9FoMyuSBQN5+0FJOImiUKTaafizfg5yXvbWz08oU/rZrUIj4+DktLK6pWr8XkqbOpdOGhrlKvdpCO529CAgwdZM22zZLwJ5eLLFoWx5gJCowrckY+BLm98zB99iIGfP2ttsw914cVAP7r3Lx+BZlMRs1aNVEnJqEKj9J+Rg4czIqZc3C2tkVMSkYVHkWjytXo066jts7xvftxdXHBTpShVCgwU6PdR2w8UVFRhD9/YdDvk1t3yJs7N0JUHOrwaNThUeTz9OLJ7buowiIJfPCI5UuXMum74YgqNeroWFRhkdqPOkZKhpEd0RuMAqCRz44ovZyIL1/6f7qBZDPBr4KoUCo/d27fAKB4iVLI5XLUajWvQ4Lp3qUV3w/tz8bp02DlRnj8jIiUJeAbUjo4K70/aW/vvGmOkds7D6ampiQmKggMeAl99ULM/HMgW+YRH59Wezd81EQEQaBeZ2k5upq3PVhaYF1SZ4ujqlFel6f46DnYffS9xjHy+0E8eiilQipWoqQUfuHeEzhxUarg5gxtG6dpFxYm0KOLDUcOScK0iYnIwmXxtGyT1sHGiJHs5KtuvWnX4SvtdrlyFT/haL58zp45iYenBz6FCxGvViGamKCWy8HMFFdPDykeoFwmvSSamRp8bj16wM9zZjN+1GgwM6Vu7Tps2r6N56+CiEtOYs3GDQAkpcQV1HwSkpOwsLQkTplEnDIJzEyxsLZCoUxGMDdj8pxZfPfNUFw8ckmpXU1NEczNdB8zUwQLM8xKv7sPQApGAdDIZ4d+svQvSQA8c+o4sTG6Je2ixUvi6ibFyty4fg33NUuZB9avQ7FyA3T7gYhAKQ2co58Uc0QomJcRoyfSsUsPqlRLG5DcxMSEPPmkyPB+vo+hQF4oU0za6esvfd6TF8+fGWyv+2s7bTt0QUQkZMoD+BuiNigRe7ejaTudACpzdYbJeo5JC9bAO6Z+jI2N4erli9rtYsVLSRrFBbqYWfTtKN2U9fB/LqNzWxtuXpeW0q1tRFavj6N5S6PwZ+TjYGunM3EpX6lKJjWNvC9XLp6jbp26qAWBOLWS13HRhMbHoLYwBytL6WNqKkUKSNm2suTEpQsM/HYoo8eOoUnr1mBlSdsuXWjRqhV9h3xNx57dqVVPSvpg4+pi0NbC3g5FUhLxoop4UQVWFiQqlVg72PPP/r1YWFnRqkN7ZDZWCDIZgqU5Mhsr3cfKAsHUJFtyuRsFQCOfHVGRujApIa9efcKRZC/6mrNixUtiY2NLrlySt9aK5bpI8ZeU0ZQMO8+BuGAiE6Q2jilLv11b8c13o5g1bymyDG4QBQpIy8D372k8zxrrCYr7T7z3PPz1BMAu3XpTo1ZdBEHgdOB67hYPhi5wr3Ycp792pEGjZjRsLHkpR0aEc8Y0kXX5LCW7mehYWLMlg6NkzOZNf1C2WB6DMnf3XHD8AlzV5Ff19kjj/PHsqYxunWx4/kyuaaPm739iqFlbiREjHwtnFzetw1KJEqU/8Wi+bHLnyYefn5/BvdLExDTDeyfAju3bGTd2LHPmzqVjR5194OvXr+nYsRPHjp9g/4GDuLq64u2dBysrw8wt+fP78OLFC4N0cE+fPiV//vwcOHCAc+fOUbFiRSpWrEhgYCCDBw9m1apV2ThrHUYB8D3wf+bHpHE/0LF1fTq0qseY4YO5q1m+A+jTrS2tGlcnOpUnT/CrQJo3qMKC2VMNygNe+tOiYVXW/551MMq5v0zBz1da9jtz8ij9enSgQoUKjB0xhAA9rdjhA//Su2trOrSsx7xZP5GYKHmJ+vk+YvaMSVkeJyY6ir7d2xL8KjDNPlEUGTtiCBvW/09bFvo6mMnjf6BT6wb07NySzX+tS7ffzX+to32LutpPu+a1ad6gCvfu3gLgyMG99OvRnk6tGzB7xiTiYmO1bfU1gAqFInXXny2hr0O03xcslc6pu2vG6SS+jXlAipWcg2ACeb2gdcMM66dQtbqUGHzuzJ95cP8ONKguLXMA/LUbQsIyaZ01z59LYWuat2zHjNmLEAQBEZGFzrORaWQpmVrGQre5IECrtpIW0PfJI/p0b8/0K4d5mByKmTIWs9XrMftjI2a3b2b4kQcZRlye+8tPBtvFS5bmqxYd4JcVusLhfdHP0XbtipyvOtjwKkg6DwUKqdi6K4ZixY1evkY+Lubm5hw/d4Ozl+9hbvHlxTnNSdSoWYfr168ToWdWlFpg0+fqlSvMmDGdlb/9Rp06dQ32nT59iuE//EBcXByvX4ewdMkSOnXulKaPggULkitXLjZu3EhycjI7duwgIiKCqlWrsmbNGq5du8aVK1e4cuUKnp6erFy5kkGDBmXXlA0wCoDviEqlYvKEEVSsXI2/tx9iy87D1G/YjEnjftAG5wWwsrLm3JkTBm1PHT+CpWXaH9mhA3to0Kg5hw/sMXB0SM21KxdRq1X4FChMZEQ4i+f/wqSfZ3Hp0iWKFC3J0gVSomrfJ49Ys2opP81YwJ9b/iUmOoo/fv8NAJ8ChREEgWtXLmR4nBf+zxg38httTtnU7Nr+t4HAC7BgzjTy5ivA3zsOsnD5Gv7dtY0b1y6nadulex+27z2h/TRr2Z6adRpQvERp7t65ya9L5zFizCQ2/nMAKytr5s/+WdtWX6BOSvxyBMDXGgHwh5ETtHGqEu4/zrKdjSDHNL83LJ0CplnHdm/QqKn2+7iRw8DdBTpqYgUqEuHvf99h9Dr8NQJgnrz5tGVHY3dzu8Ar1JrhqWVqbptdZ/blU5w8Ji1z+z55pK2fGP0Q78gb0mfiULyb183wk7tFfUhM1LbVz5s6cuwkdu8/idPm/bq4fzUqQN2qgLQqvHa1Od072xD6WrodFimqYuPWWDy9voCIt0Y+Szw8vIwOIB+BajVqo1arOX/unLYsM+3fnxv+JDExkQH9B1CxQgXtJzAwkLZt21G8RHEaNWxAh/btqVatGn379gMkwbFiBV3GpUWLFnP16lXatm3Ln3/+yYoVK7Sp5j4mOSITyOdITHQUIcFB1KnXSKuub9qiDQEvnxMVEY6TkxS/qVrNupw5dZSmLdpo2546cYSq1Wsb9KdSqTh2aD9TZy0i4KU/58+cpGadBukee/PGdXzVvS8AISHBJCUloVJJYSlkchmmZtIP6eSxQ9Su25D8PlLojx59BjF5/HAGDvkegEZNWrL5r7WUr1g1zTH8nz9l/Kih9B0wlAVzpqbZ//KFP/v/3WkQYw7g5xkLkMllyOUmREdHoVarsLK2yfRc3r97m5PHDrJy7WYALpw9Re16jSipCYPSq+/XdO/UnJiYaGxt7bRhUuDL0gC+DpGWs101ObI5fh6r4PBMWkg45soF25aDXJ5lXQCv3HmoWr0WF86dxt9fE2S6f2f45yAolZIzyNddwfzd3F1TloDj4grw04+W3LkjI+C3n5Ep0QqAACjlrPaaAdt+TdNHAAKQtQAmCgJKTy/0XXNjYqSUbpVaVWPHT5sp/dibGtulYNBYWcKU70AQCAsVGDPCipPHdZrAqtWTWboyHkdHo/BnxMiXjrOLK0WLleTUqVM0bSq9GMtS3UeHfqvzyl60aHGm/U2ePIXJk6ekKa9QsSJXruoC43vnycPChZJZj7u7uzY/cGqOHftwkRngMxIA9/1ryuL5FsTGftjE9TY2Ij+MUtCsReZG3w6OTpQoWYYx9JdzewAAljVJREFUwwfToHFzypStQMHCxej/9XcG9apVr82cXyYTHRWFnb09L1/4I5PL8PDKTYieZu3q5fM4OjmR36cgjZq2ZO+e7ekKgMHBQTz1e0LpsuUBKFioCKXLlmfY4N7I5XLs7OyZt2Q1AC9fPKNcBZ0RcW7vvERFRhATHYWtnT2ly5Zn5tQJhAS/ws09l8FxXFzdWP3HNiwtrdIIgCqVioVzpjJk2CiOHd5vsM9U8yD+4Zu+PHp4j8ZNW1G4SLFMz+XqlYvp1nsgtraS8bNarTZ4G5LJZKjVaoKDArG1tfviloAjIyKYOnkMx48eAsDV1U1STa3cxEjrfBxIynxJ1sk91xsLfyksXPo/qlUoSmxMDCqVCrmrk2QLuO+EZHt3+jI0rJFuW7Ua7t2R8+C+nJcvZcREC8hkInK5JD9evSyZIPy5rgRgDo0PQIV0spmYqKDyZah1F04b7gp6A+EPQBBFwkdNlJKVIv02UzTW0Quj8bN4xDzLSVRXFURAgN7twdWJ0ydNGD3cSqv1A+g/SMGocQr9lWEjRox84VSrWYdNG9aQnJyMqWnm9n9fGp+NALh6pTm+T97uIfcuBGuOlZUACDBt9hL27NjC2dPH+XPtKiwtLWnZthO9+n6tjdFjaWVFuQqVOXfmBE1btOHUcUkrl5CQYNDX4QP/0rhZawBq12vEqhWLePnCn9zehsbs927fxMenIHK5dOmSEhPJ5eHFwuVraFCrEj9Nm8Xs6T+ycPnvKBQKA0HKXJM3NzFRgS32yOUm5C9QiLt3bqYRAK2srDOc9/Ytf5HPpyBly1dKIwCmMGfRSl6HBDNp3Pfs27Od5q3ap1vv3t1bvHoVSOMmLbVllarWYObP46nfqDn58vvw1x+rkcnkJCUnoVarDZxAEj/zJWBRFBk2pA/nz57Slrm55YITF+DRU/LLLVlaqh7Dbh8HIL9PQV6+9CdZL2ipg2PGacwywtHJGUEQUKvVRISH4eLqxoNSebDaoyCP3ALVnuOElKhJRLiMgBcynj+X8eSxjMeP5Lx8ISMsNKObpBJ4pvleABCxnj6ShNTaPw2CWk7u9Qt44WNY/tjSGZUiEkFUIQDpvfapBTmJJUuTUKe+tiws9DVKpRJBJuNh3rsA3C4YzOl6LtS+U4CYtm1ZOtWC3/+ns61ycVUzZ0E8tesanT2MGPmvUb1mHVYum8/NmzepWLEiMsEoAOY4Bg5JZNE84aNoAAcMTsy6ImBhYUGnrr3o1LUX8XGxXL54jl+XzcfF1Y0WegJPrToNOHRgD01btOH0qWNM/WUhB/fr0mRFRUVy8cIZbt+8xqY/pTAVyclJ7NuznUHf/GBwzNDQ1zg66dID7dkl5X4tWqwk5ubm9Bs0lA6tGvDM7wnm5hYk6tlGpQhLFnr2h05OzoSF6pwPsuL5Mz8OHdjD4l/XZVrPzMwcr9x5aNm6I5cunM1QADx2eD/1GzbVag4ByparSM++XzNz6njUajVde/TD0tISa2sboqIitcvd8PlrAOfO+tlA+APw8PCE6dO023m7tgaNADhh8nSq16jDvNnTWLtacmrQ/z28KSYmJjg6ORMeFkpoaAjm5ua0HT8MR7XAOccKqE5epdUOiBRt37Lnp0hCoDmdu7rg0WcXiyvdy7C2KFPxIt9NrGytiI/RhXwJ9vHi8t0wagKzgFLAXKAd0AgoDMhEFT38ZmD3sxWduybi6BjEssVS2ia5hxy1HNSokSlh4bjnxEyYxqT6bkRH6W7wtesmM2dBPC6uxiVfI0b+ixQtVgITU1POnDlDxYoV03/b/ELJEQKgIGhXcDKkecvkHBWL68SxQ2z+ax2/rtkIgLWNDXUbNObJ4wc8f/pEOx9BkLwuly6axZ1b17G2tsbN3V36jWnmffzIfsqWq8jwMTqv3Af37rBo3nT6DhyCmZn+cqiAKIra/sNCQ1ApldptmUyGTCbDxNQE7zx5CQzw1+4LePkcR0cnbG11D3W1Wo1MJsvy/Kdco/NnTxIW+preX0naysREBYIg48mj+/w0Yz7fDurJqHFTyK8JNZKsTMbGxibD/q9cPMe4SdMN9kdFRVKhUhWtd+jLF/4olcnk9s7D82d+Bu2TkhRZjj0nc+3KxTRlzrcew+Nn0kbJwuRuWgcmSJtOTs5YWFpQrERJbf2Spcq80zlwcXElPCyUPTsjuHbVHqUykddAqJiMq0yghfkx/lK0S9PO0VFN2fIqatRSkjefCkdHEbUIahWcPX2apYugTLlS/DJXQTvHKWlt/1IhQ47HWg863+xNgYJFGNC7C0FJCibY2KCKjWW0Xt2U0NBVgDmUZXtcU1gjsG5NHKamTUhOfg6AslCy9kauNoHb5WP5QTRH1Ah/pqYio8cr6DsgMb1EIB8M/fvCl4xxnl8WX/I85XIZhQoXY+/evVhZWWFja5d1o/dEFNXayBa2trZvtezs7599sW9zhACYz8MeNzeHTz2Mt8KhRUN+Wzafvdv/pE+fPlhZWXHv3j0unjvJpEmT8PFywNREhoeLDcULelC7Vi1WLp1D9+7d8fFywNHOgvgYM3y8HDh5dD/9+vWjYqkC2v7Ll8jPquXzuX/jHO3a6R7CJYrk59a1C/h4OQDQomkDhg8fTu+eX+HtVpr9OzfinTs3taqUxsXOlAEDBtC7x1fkzZuXWZvW0qZNa21bgIS4KEoUyW9Qlh7e7nbk9nJg4tjhTBw7XFs+btw4vLy8GDZMCuBbqmRxdmxZz7x583j58iUH/t3OjBkz0u0/NDSUiIgwGtWtgpmeBvC8/30mT5zIli1bMDMzY866FbRv357CeV0I9r9v0IeoSs5y7DmZJIVhoGMrKyss9x4jxUAg18SBmLvqcoSWKS5dq7YtGjJGcxnGjfoOa+uMl+zTIyICkpM8gftsWeGHK7pl9cCkcLxMbPjOaQNFKufFzQ28vSF3bihUCCzzukkbpDWWu3RWWnatVaMqT7wucZtbWY5FLajw7eBLnQ6VKfGyBAC+Tx5jlS8f6IX/0ecicN3RBOf4OMISbYClWuEPQGiYyoVEKUec9hPyY83o1VNg4kSBAgUsAcssx/chyO/p8EmO+7ExzvPL4kud56SJ4xg0aBCbN2/G4iOE3lGpVDx+LEV4KFSoUIZOIBlRvXp13FOcBd+DHCEAPguKIjb5c0uwKWPW/F9Zu3oF6/+oT1JSEh4eXnzVoz95CpXFLyCSZKWaoNBY/AIiqVC1DocOHaZYmWr4BUQSEa0gJj6Jg8fP4+f3lALFK+IXEGlwhFp1G7Hujw2UqVxPW+buXYQ7d+/y2D8MuVxOnkJl6TvwW0aMHEVcbAwFCxdj3ORZPH8Vg5Vjbvp//R3fDB1GdHQkVavVom2XvtrjqFQq7t67h7t3kTTHTs2L4GiShLR1YuKTiIhWaNv36D+M5YvnUrNWLWxs7OjWayBePqXwC4jk77/Wcff2DabNWgTAw/sPsbGx5eXreEAnCLnnKUa9Rs1p0bIlKpWKmrXr06XXYOo1aMyJY4cNjh8dE5fl2HMyYeGS4FWwUBGePH7IqG9GkvDHSWmnpxvBRQvj6aJbso9NNsUvIBK5lSubd+zHzS0XwZHJoBfHKjNiYuB/Ky1Y/7s5sTFSjMHCjGYayaQkRYuLfYI34B15g8o7t6fpQ+nqhv+FW5AqbEFo6GvW//EnAHkKFGN04jgEUxDf4OVWhowxSePZLhylUpVqXL54nltP03Ec0eOB4hXn83RlZfhLFoTdMNgnNk1VWeNwsuDBDlpaSDaDfgF8dARBeog+DYx831THORrjPL8svvR5FildjZMXbn+044WGvqZKWSmV25EjR3Bzyzje64dEEMVPczlDQkK0EuyF649wcXHNooWRFMaOGEKXbn0oX1Hn4SsI4OPlgF/Am/+BXrtygW2bN/DL3GUfaKTZQ0x0FMOG9OPMKZ1LvIuLC6GhoeTJm59jZ659wtG9HxVK5icqKpKde48THx9Hpc3HEVJy1Q7sgjC0Bz5eDmzathelUkn1mnUy7zADRBGOHjbhpx+ttMGOYRowGYCmQEom4CnAT6naXwH6AHOA+mXKEbDnaJr1oGWL5rJo/i84Ojrx78mztClQlVCrKN4UF5UbJ4Nusf7XlcxJFcxZn87AFqCKqT3TbQrSOfImEaLkwJF7qjkBtomIP6RtJxPllEguzfaQo5JH8CfgXf5OP0eM8/yy+K/M82MRGvqaquUkATA4OPiTCYA5QgNo5O3o0q03B/buNBAA34X9/+6kc9fe2TSqD8ei+TMNhD+APHnyEBoaauDk8rkhiiKxsVLuXzf3XLg98IcU4c/FEXrqlv6rVKvxzjfeu3fkzJpuwfmzuiVbExOR9p2Go1IF8c+WX7XCH4BvOn38ANwFWgAvR05I1xjo2TOpZZ/+Q3B3cGd79waER2tsNqd8B0V80rQBqavcbrYkhJhjjjleXt4ZzqU6MLpwUbY8esDF5CgaRehia01vVogfJ2UcOFstqLhtdp3T5seonZh+jE0jRowY+a/w3/F3/oIoX7EqcrncIHPC2+L7+CFyuZyy5Stl48g+DFcvp3WU8PaWhIRERUKafTmd6KgokpOTSUiI13o021hYwoI1ukojB4Dt29n1pSYkWOD7b6xo08zWQPirUSuZQydi+GWOku9HDEnTLj0BUN/s+Jxt+p7BgQEvAU0GkEu38DwTQslbNpQUK1Ayf1tKJpfJ8FOe8niovQDDTB65vfPgrDHKbgqcBTwnTadh4+Zpjv/3FmtkYua2NDJRzkL7GYhvGGfQiBEjRj41r169omLFily8aPgsPH/+PD169KBSpUrUqFGDYcOGpXESiYuL4+eff6ZGjRqUK1eOgQMH4ucnvZgbBcDPlLE/TqdAwcLv3L5AoSKMmzQjG0f0YVCr1bpsFXoULSqlSssODeCmDWsZMWwgyckf3svcz/cxdaqXpl/PjsRESxkr5HI5lvtPg78m33L5EtCk1nsd5+RxE1o2sWXvHp1trXceFUtXxrHurzjy5JVy3KYXQsYv1XYU8FJvO+Dli3SPGRgglXt65YaNu3Q7urd5K/dBfQGwUOGi7D99lcVeuVkKKMqUI6FOfSZO+cWgHsAdmxuoBRWZoa8FNGLEiJGcTlBQEP369SMmJsag/OrVq/Tv3x9HR0fmzZvHjz/+yLNnz+jatSvh4boMUiNHjuTAgQOMHDmS2bNnExwcTK9evYiKijIKgEZyNq9eBWpz/y75dS1HTl1h5twl2uTYCkUC4pXb8OgpqDJ/+GfEpPEj2L1zG7u2b8m2cWfEmBFDiYmO5vzZU9qA1jY2tgir/tZVGt7vneMtxMbC9J8s6d/LhvAw6c/byVn9//bOOy7q+n/gz1twHBsRHDgQBXdOHKDmFsqGTfuWlqW2h2aW/czRcJWWmppZmWnLsmEqqWmmuVeWAzeKA0RkHeu4u98fxx034dgHvJ+PBw/u856v1/vz/rw/r8978n/Ts4nblknMHRqLpD08VDbnUicB5mtvT2C5ovbAvt18/ukSC4NZq9Vy/ZrBgG2EAv4qPP+5QSAM7F0qHeoHFW1K7uvnT0C9QO6ft4imrSJInfwWSCQ0adqM337fZWHASvTOlZlELxG9gAKBwKXR6XSsW7eOe+65h5s3bU+D+vTTTwkLC+Ojjz6iX79+xMTEsGLFClJTU/npp58AOHLkCNu3b2f27NmMGDGCIUOGsHLlStRqNV9//bWYAyhwbbIKe8n8A+oRe+c9AIS2CCOgcHRUr9ejeep13CRSaNkMPp4BQaXfGBkgMbHi9leyZsP6nzh7Jp6jhw+Y3GIHG45a80YGtwoXSwzpA+3L1rN7JVHC4//z4sL5omHQ/oM0zPkgm4AAx8aOf0AAOVcst6M5D3Qs/G1dKl+v/gKAi+fPMnPWfACSk69TUFCAXC4n6Guz02EeHg7y0m1xYL4lkHFLhpw+t3N5216LcH7+/mzauptpb73K3kk7SbezSt0eeomea7Ir5JOPO1V/ALtAIBCURHx8PNOmTeORRx6hd+/epk4PI7fddhuDBg2y2EMwODgYb29v0zDwrl27UKlUREdHm8IEBATQvXt3duzYIQxAgWuTmWkwAL2tNufUbi2aC5Gn1xkMwLMJ8OosWDkXZ3f3NV8En1WYV0WzYf1PvPTsGIf+Xjn5hi315DJ4YVSZ8jhzWsrj//Mi6XrhRsduel5/M4dRT+SX2JkYEBBomr9n5BxFBmCCTQwDX6/+ghnvfYBEImHXDsOQajOpEplxIYvKA+4d4iB28bQKb82Z06e4+94Hiw0XWD+Ij5eu4qoskdSk4s9MNqeeLlAYfwKBwGVp2LAhW7ZsoUGDBjZz/wCeecZ2/vb+/ftJT0+nVSvDQQznzp0jJCTEZp/Bpk2bsn79etcwAKVSSa3cYbwqqa07tZsMQB+fIt30OjKmLUGCYWgyDx3eUinodPBvPMT9heSO251KP9/sTN3MzIxKKb/ffvmxWH+J1jAfj4G9kTSxPJPZmft67KiMMY95cuuWwfhrEabl05VqmofqnJLP3jxA40KQeGBy4W9viYxMveUw+/XlX9Fw20G+P2iY8zdCHmjwkEph2gtIfL1KzN+ejt/+uJFLCRfo2KmLUzo01oXQWBfiVNiijEsXvCKorc+pNULP2kVd0bOqkEpLLkg/P79SpZmamsrUqVMJCgrinnvuASAzMxMvL9s22NPTE7Va7RoGYNuwhqU+yUBgn9q2U/t+N4MRU7+ev+nEj7x/4klMTsUdKbnoCDr4LcGXb3LtPsPRGPJPvqbp6Fgk7iVvLm4+t0KnyamUU0Uy0w159OvXjx07dtj4X9YZzjNu9MwDeDjI39F9/fNPeOzhogMzunSBuDgZ9es7f5xR05Aio7NFixacP3+eSUAUMNEsXHu5F3s0lvv6HfpoCYnaXI7kGwz1Ye71UA3uhf+kJ1B2buO0DGClY2M/urQPLVX8mkRte04dIfSsXdQVPSubYD/bU5TKQ3JyMk8++STJycmsXLnSZPQVt82zRCJxDQPwxLlr1KsXWN1i1Ghq607tZxOuASB3VxWd+PHznwC4S6Tk6nWcvXQDfctw6NUZ9hyh4NI1zi9bh+R+6+MgbLmSWHQcxE8//cQ/py7ZDDeXl8QrhsURz0+YwsJPvuLYP0d4ctSD3Dkwht83recVVTNo2oirzZojsTrVpLj7+v03bkx704P8fMPXZGSPApavzCIzHzJLccqF3L3oC7F1246mLQKsl26E338Pe7750sLt5cx40293qYyQGZPIvncIORIJOHlCS22tu/aoK7oKPWsXdUXPquLmzZQKSys+Pp6nn34atVrNihUruO2220x+Xl5epKTY5qVWqw1nEFeYFOVAp9Oj1yP+yvkH1S9DRf8Zt0rx8vIucj9yAjAYgAAzpk426P/cY0WVau0m9E7Uq6wstUVdfPrJRyko0FaY/DqdnuTkJADq12+Ap6c3vXr35cTpq8xt2JnDAT0Z7dEI7hkMSJy6rykpEp563JM3JqlMxl//gRo+/yoLL6/Sy9gqwtBTFx7RhgdHOp6DOGD4PcU+x14BAcjuHepQj7pWd+u6rkLP2vVXV/Ssij+dTl9sW+ose/fu5ZFHHkGv17NmzRq6du1q4R8aGkpiYiI6neV0oISEBMLCwlzDABQIHJFVuPeRqVdOr4f/DKc9uEsNE1uPHCpcWduuVdEK2vjzcK7kVb3Z2ZYG4N7dO/l755+llvO3X36kXcuGbPl9o4V7ZkYG+YV7FZqOO8zNgwnvwS9bkEkkhsUfw507mWLP33LujvFm+9aiIYTHHs9jyadqlB6lFhuABx9+jJ83bOfnjX8S1sr+CuT9/5ylU5duxaaTdiu1WH+BQCAQVAwnTpzg6aefpmHDhnz33XemhR/mREdHo1ar2blzp8ktNTWVgwcPEhUVJQxAgWtjswo48TqkG4zCpX1HAKApMNvAOfb2ot/b9pSYfrbaYACGR7Th3vsfBuCI2VYtJXHzZgq//rSWl59/iry8XJ556n8W/jduGHr/vH18UHp4wKH/4L5nYUfhqi6pFCaNMxz9VgwpKRImvaLisYe9TGf5BtbXsXCpmmlv56Aox5QSqVRK+46dcHNzo0GDRrQMb23h36//IAIC6uHp6cXEyVMBuH3AYDw8VIx89HEGDo4BYNQT48suhEAgEAic5s0336SgoIAXXniBa9eucfToUdOfcRuY7t27ExkZyaRJk1i7di1btmzh8ccfx9vbm5EjR7rGHECBwBHGs3K9jMePHThm8gvqfBtsW4MmPx+tVmtY6n57D5i73BBg+x4Y93Cx6asLDUCVpxcdbuvMTz98y7//HC5RroKCAmQyGR++/y7frF5p4Xf+3BlahBm+xm7cSAagfmAQLFkNn601rFYGwzYpH7wBPTs7zCc/Hz74AKbP8CErs2jlWGTPAj5crCYouGKGEoxIJBK+XxdHl/bNTW4LFq0w/X7m+QkMHBxDs+YtkMlkyOVy1Oostvy+gZjYuytUFoFAIBDYcvnyZU6cMEyFevHFF2387733XmbPng3A4sWLmT17NnPnzkWn09GlSxc+/PBDfH19XcMAlEjE8vLyUluX6VtvA6Pfttvk53l7T/jA8DsnR23oJWwUhL5tSzhxFk6dh2vJSBoFOUw/J9uwfNbT05OOHQ2G2L/Hjpaw7cph7r97CM1Dw0xD1OYMuT2SX+N20K59R5KvGxaABKZmwaffFQXq3BYmj0fSuoXdPHQ6WP+zggXvK7l8CYx7lvj46pg8JZcHR+Y7u9VhqfH2KTrrNyi4Ab5+vhb+Ea0tV/d6eXlx730PlTm/2lp37VFXdBV61i7qip5VRWnLsUePHsTHFy24a9KkicV1cfj6+jJr1ixmzZpl4+cSBmDzhr4EBflVtxi1gtq2TL8gz3BCRVjTBjRz13Nx3z8AyBsHERobhUQiQa/XE+SroGFDPwBu3d2f1BNnAah3+B/8uj/gMH2Vm6EHrX49P4YO6AXAzZQb1PeR4e3tbTfO2tUH0Gq1nDt72uT26aefkpSUxP/93/8B8O6019ixfBU3DxqGk5vm6MEbkMnwn/Q4/i89ik4i59w5uHgRLl+GGzfg+HG4dg0uXIDzZofySiTw5JPwzjtSgoNVgOXxbZWFQi6rlK1x7FHb6m5x1BVdhZ61i7qiZ2XjpcgvOVAV4BIG4MVr6WRpSt6zTeCY2rpM/9p1wxBqrlbBxRW/QIFhI2KvEYNIuJ6BSuWJWp3FyXPXyNEZVkHou95min/zp22k3jnYYfoJV24YfkjdSE4vwMfXl4z0dHb83wLayD3hQqJhMUmTRhDbD+7sz5kLiTbpNG3ZgcCGRb15+/bt4+KAMfyXZTASm8mU4O3JjekzWXmhA9v66zlySE9OTsmfgoMHwwsTM2nXXou6AM6XYouX8qLV6Yu236kkamvdtUdd0VXoWbuoK3pWFSkp6SUHqgJcwgA0X2YuKB+1qSz1ej2XLxkOImvcMMQwGa4Q75GxpOvBQ6VCrc5iwgvj+Hrtb7grldCiKTRtBJeuwpET6G+mQ4Cv3TxMcwBVnuhT02kocSMDGL5wGl/7diBSURjvajLsOwoXErll52DuoKAGePv4MveDj3lt4nMA/FeQRYLWsMlzc5kH833fZOnj3dHrSzb6ZDI9t3XW8vLEXB572IvzV7TVdl+rKt/aVHdLoq7oKvSsXdQVPSsbVylDlzAABQJ7pN5MITtbjUQiISQh2bACGKBXZ9xaNYMraXh4GIZC/zl6iC+/+IRxz7xk+Fwd0AtW/miYTLfzANw9CID/jh3lt19/5LmXJuHt7UO22jAHUOXpCa/Po5G6AOPMikfS/+VMvSjOaLNpKHXHWyqHVT+RGmYpp1LpgVfhKuUREn9+VPiyT5NOgi6P87oCAL7LeYldR/tYxGvUWEeH2wpoHqqjUSMdgfX1NGyoIzRMi5eXa8yNlVbWREOBQCAQVCvCABS4LAkJFwBo0LAR7tvNDsN+5C7TT5WqaC7cxQtmk+Zu72kwAMGwHczdg9Dr9dxzR38AVnyymHHPvEhi4mUAAnMKYP9/SK0srtUxHZixehldfYP5TtoKdDpSEy5bhMnNzUEikcBv2+C9JQRLDdMZ3s1SkqHPARTsKngUgCZNtdz/YD6Dh2loFa6rdgPPEU2aNuPypQQGDYmtblEEAoFAUAkIA1DgsuzeaTg3t2mTZoZePAAfL+jZyRRG6VFkAOq0WsOqYb0e7w7hUM8PbqbB4f9Ap+PUqeMW6S9fupCwloaNj8MT0wxpWPXNz1i9DIBD6UkQaNjaJdXqaJ0evaJh8050Mz9GCgQVGoCp+qMAuLm9xJBhbjz0SBY9ehVU2urdimTN2t/Yunkj9z/4v5IDCwQCgaDGIQxAgcuRn5/P1SuX+fCD9wAIVfmB2rAdDP0ikSjsV9tffvqe335dh6+vH9t3H8WtQwT8uQ+ysiHhCju2b7WJY1zJG/FfAiDjpeA2HMk6SdNmoRyz2g9wqvtNpucGkJqfA8CPv25l88ZfGZglhclzTbuqX9XeBhhWaigU7vx98Fn8/bPLVSZVTaNGIYx6fFx1iyEQCASCSkIYgAKX4urVRGIG9EJdODevflAwT9drCRQaY4OiLMLn5eaYfms0GjQaDbm5OSRdv0aT9uEGAxCY/94MlsT9aDdPH6WKIK0UJND+/hEcmDCGvNxc+kd35kbhOb4A31w5STevcLIxbOTc4r0VTMrRwJWiMD/kxnCheSM4bTgSbljsnfj7F3/Kh0AgEAgEVU0NGIwS1CX27PrLZPwBTH5jGiFHDXv6ofKwOTUjNzfXbjrJSdcMZwMX4sj4A7hTUc8wh08igRFDkEgkKD08+L9p79GgYSOLsBcbG4w5BRK8zlw2GX9avZT3sp5je5+JvD69vil83/6DnNBaIBAIBIKqRRiAgmrn4oXzrFq5nPz8fOJPnTC53//Qo8Q0bwdphcO/PTuBm+Wht3l59g3ApKTr0NZgABaUsOZ+pnszw4+7BkJoE5P7HXeNYNd+y3mDWT07AuAvc0MnkQFwWNOeEWnLybr3Xj5akkNDs5NHekf1KzZvgUAgEAiqAzEELKh2Hrh7MLdupZKVkcHp+JMAvDPnQx5+ZDQsXlUUsE93m7iOegCTrl8zLBhp2ohrZquD73/wf/zw/RrTtRSzZbgj76Ikkm4aFoCkSiKISPkTNzRoJApeeTWXZ17IMWyY2qIlDzz8GP4BAQQ3aFhimgKBQCAQVDXCABRUO7dupQIwf967JreI1m0NP3YeLAoY3c0mbl5xQ8AA7VqReNbQq9iiURPemPqOhQE4zK2e4Ud4KESElijr/n2GjakLCgIBCT715cxfqKZ3dIEpjEQiYda8hSWmJRAIBAJBdSGGgAUuSdOmzSH5Jpw27AVI25YQaLuY4pkXJtiNn5RUuGl07y5c0hmMxCY3svC5/wXuVQbTWqZinEdjZnoV7ur81INOyZVyo1Ae6tO9RwG/bsq0MP4EAoFAIKgJiB5AQbWi1Wpt3ORyOf4B9eD3nUWOvTrbhAMY98xLREXfzqQJz3LuTLzJ/dqVRE4c/5fFP3+OTFkAWdBY5o7kZhrzvFpZJjIoCgb2tpv++XPW30i3AOjU2Z/V32Uhk5Wso0AgEAgEroYwAAXVSlrh8K859erVNxxBdsRsAUbX9nbjy2QyOnbqwuJlK3lu3CgGDBrKik8Wc+rUce4bPhCNRlOUrqRwAYmvN7RsBupsiLkd/ncX9nZn3rtHznNjVTbuAP0G+AvjTyAQCAQ1FmEACqqVlBvJNm4K40rfw4UGoFQKHVsXm06r8NZs/nM/Go2GL79YTmZGhk2YemNGwtC7DPP9PO0bdkY2rFfw6ssqNPkS4HbgTwt/f/+AYuMLBAKBQODKuIQB6AqH3td0jOVX08rx5s0bNm46nQ7SM+DcJYND6xZIvIoMtuJ0dXNTENG6Lf8dO2rjF9ihLZIu7UqU6auVbsyY6oFeb8igd/Qabt4cRvzJf01h6gUGVklZ19T7Whrqgo5G6oquQs/aRV3Rs6pwlXJ0CQOweUNfgoL8qluMWkFoI7/qFqFUbLhxGYABAwawbds2AKQSaHApgcJlHPj260pgYz+buI507dalk10DsEObUFrYScec+fNh+v8VXT/5JCxb1oiff36LBx54wOTes2v7EtOqSGrafS0LdUFHI3VFV6Fn7aKu6FnZeCnySxX++vXr3HnnnXz88cf06NHD5J6QkMCsWbM4ePAgMpmMYcOGMWnSJLy8vExhFixYwLJly2zSfO2111zDALx4LZ0sjVt1i1GjkUgMD+eFq2mUsO+xy5Celsb06TMAaNGqrckA1Gi0XN+yvyhcqzAyrqSZrkvSVeVTz25+eXol583SsebzT915d4aH6fqZF3KZ+Foul5JAnV80R9DNzQ2vek2LTauiqIn3tbTUBR2N1BVdhZ61i7qiZ1WRkpLudNhr167x5JNPkpmZaeGekZHB6NGjCQwMZPbs2aSmpjJv3jwSExP57LPPTOFOnTpFZGQkEydOtIjfqFEj1zAA9XpEpaogalJZrvriU1JTbxLWKoIXJ7yOr58/H8x5m/fmfQSfbSoK2KmtXZ0c6Vq/frDd/AIC6jssm3VrFRbG30sTc3jh5TxTPp5e3ia/1m3ao1C4VWk516T7Wlbqgo5G6oquQs/aRV3Rs7Jxpgx1Oh0///wzc+bMsev/zTffkJaWxrp16wgIMMxJDw4OZty4cRw6dIiuXbsCcPLkSUaMGEGnTp1s0hD7AAqqjd83/QrA08+9jErlyTPPT+Dwfxfp1yMaTp0zBGrRBPx9S5VucLDt6RsymQwfX/vp7PpLzpTXiuYYvjihyPgz0qx5C5RKg4HYK7pvqeQRCAQCgaA0xMfHM23aNO655x7mzp1r479r1y66du1qMv4AoqOj8fT05K+//gIgNTWVpKQk2rRpYzcPl+gBFNQ99Ho9lxIuAnBbp64mdx9fX9h7BLQ6g0MX+9u/FEf9YNseQKWHyrC1jBXH/5Px3HhPCgoMs3IfHZ1nY/wBBATUY9uuw5w6eZzIHvb3DBQIBAKBoCJo2LAhW7ZsoUGDBuzbt8/G/9y5c8TGxlq4yWQyQkJCuHDBcGDBqVOnAPjzzz+ZPXs2ycnJtGrVildeeYV+/fq5hgEolUpcZlVMTaWmrdK6dSsVtToLgJCQJhZy6w+b7//XzkanknRt0KCBjVuHjp1swl+8IGXMY56oswweg4ZqeGtmjr0tAQEIbtCAYDtpVyY17b6Whbqgo5G6oqvQs3ZRV/SsKqTSkgvSz8+vWP/MzEw8PT1t3D09PcnKMrxbT548CcCNGzd45513yM/PZ/Xq1Tz99NMsX77cNQzAtmEN7SoiKD01ZZVWypXTgGEiapswS6Pqyn+nMJ7w2yy2F3IHOjnSNaS+7R5/T40ZbbFq99o1GDsabqYYrqOi4Jd1ClQq+2lWNzXlvpaHuqCjkbqiq9CzdlFX9Kxsgv0U5U5DX8xEQkmhpR4TE0OLFi3o27cvssKTC6Kjo7n77rtZuHChaxiAJ85do169wOoWo0ZT01Zp7T30HwCNQixX0+rzNXDohOGicTCX9G5gtdrWGV1btoog4eJ5Pvr4M65cucztQ0eY8km7JeF/D3px/rzhgWgVoWXRJ1lcv6U3nvTmMtS0+1oW6oKORuqKrkLP2kVd0bOquGnseSgHXl5eqNVqG/esrCyCC6dBNWrUiEaNGln4KxQKoqKi+Pbbb13DANTp9KJSVRA1ZZXWlUTD/n+NQ5payvvfacgvPL6tc7tidSlO1583bCcvLw9fs250vR6ysmDMY56cOmkw/ho11vHFV1n4+Lp2Hawp97U81AUdjdQVXYWetYu6omdlo9OVvxBDQ0O5dOmShZtWqyUxMZEhQ4YAsGPHDnJzcxk6dKhFuLy8PAICAsQqYEH1oC6co+Dr62fpcfhE0W8nTu1whNLDw8L4A8jNgfFjPPnnqOG7J7C+ji+/zqJBQ9GiCQQCgaDmEBUVxYEDB0hNTTW57dq1i+zsbKKiogCIi4vjjTfeIC0tzRQmOzubP//8kx49eggDUFA95OYaZvm5u7tbehz+r+h3GVYAO0KrhZef92TfHsPcC19fHV+uySK0ha7C8hAIBAKBoCp45JFHcHd354knnmDLli2sXbuWSZMm0bdvX7p06QLAU089hV6vZ+zYsWzdupXNmzczevRocnJyeOGFF4QBKKgecnNzAHBXFm2+jFYL/xhWLVHPD5ra7udXVubNUrJ1s8H48/TS88VqNRFthPEnEAgEgppHQEAAq1atwt/fn1dffZUFCxYwbNgwFixYYAoTFhbG6tWr8fHx4c0332Ty5Mn4+/uzZs0amjRpgvydd97h5Zdftjg7Tq1W8/7777N582ays7Pp1q0bb7zxBi1atDCFiYiIAGD8+PFMmDDBRjidTke/fv1ITk5m1qxZjBgxohKLQlDTyCvsAVQqlUWO8RdAbTAM6dKuwvYc+HaNGys+MeQjk+lZvExNx07aCklbIBAIBILKpEePHsTHx9u4h4eHs3LlymLjtmvXzuJoOHOk69ev59VXX7VwnDhxInFxcUycOJE5c+aQlJTEqFGjSE+3PL9OKpUSFxdnN+EDBw6QnJxcrGCCuouxB1Bp3gO4w2yzy24dKiSf9T8rmPpGUR7T3s6hT7+CCklbIBAIBIKaivSVV15h+/btXLlyBYAjR46wfft2Zs+ezYgRIxgyZAgrV65ErVbz9ddfW0Tu0qULCQkJnDhxwibhDRs2ODx+RCDIte4B1Othy99FAW7vWe48/tgiZ9IrKvR6Q0/iU+NzeeSx/HKnKxAIBAJBTUdq3G3auEpk165dqFQqoqOjTYECAgLo3r07O3bssIjcvXt3AgMDbXoBCwoK2Lx5M3fccUelCi+ouZgWgRgNwH9OwgXD1jB0bgtB9cqV/p7dcl54puiIt4ceyWPym7klxBIIBAKBoG4g/fjjjwkPD6d169aA4Xy5kJAQ067RRpo2bWo6X86ITCZj6NChNgbgnj17yMvLY8CAAZUrvaDGkmc9BPyDWR0aMdRODOc5fFDG+Cc8yc8zGH933ZPPzPdyxDFGAoFAIBAUIler1axZs8Zk8GVmZlosCDHi6elpd9fp2NhY1qxZw4kTJ2jbti0AGzduZODAgbZbfDhAIhFnDJaXmnZWY15eHgAeHkrIzYVtewwe3p4wJLpYPYrT9fIlKeOe8CQ72+A5cLCGuQuykbvEluelp6bd17JQF3Q0Uld0FXrWLuqKnlWFq5Sj3NPTk8cff5w1a9YQGBjo1Ply5nTt2pXg4GDi4uJo27Yt+fn5bN26lXnz5jktRPOGvgQF+ZVFfoEVNeWsRp3WMBeveeNAgv79j+Qcw/Cs9z0DCGoR5FQa1rpmZ8OIO8C45+WgQbD+VwVKpZ911BpHTbmv5aEu6Gikrugq9Kxd1BU9KxsvhWvMRZevXLmSQYMG8dlnnzF58mS8vLxISbE9p06tVuPt7W3jLpFIGDZsGHFxcUyYMIGdO3cilUqJiooiKSnJKSEuXksnS+NWbmXqMjXtrMaMTENvcmpWAcmrfze5Z/btRZbV2b/W2NNVr4eJL6r45x9DPWoequX9hZlcvVkp4lcZNe2+loW6oKORuqKr0LN2UVf0rCpSUtJLDlQFyOvVq0doaChnzpwBDOfL7dq1C51Oh1RatE90QkICYWFhdhOJjY3lyy+/5OTJk2zcuJEhQ4agUCicFkKcL1hx1JSyNO4D6J5bALsPGxyDA6FL8ef/mmOu68rP3PjlJ4Pxp1LpWfKpGi/vmlEWzlBT7mt5qAs6Gqkrugo9axd1Rc/KxlXKUJqamsrFixdp0qQJANHR0ajVanbu3GkKlJqaysGDB03ny1nTqVMnGjduzC+//MK2bdvE6l9BiZj2ATzwLxQUbsoc0w+kpT+cZt8eGbPeLtrrb878bMIjxCkfAoFAIBA4Qv7EE08gk8kYM2YMYNjaJTIykkmTJjFp0iT8/PxYtGgR3t7ejBw50mFCw4YNY9WqVfj5+REZGVlV8gtqKKZ9AP88UOR4Z+lXjV+7JuHFZz3Rag3zU8c9m0vMHZoKkVEgEAgEgtqKtEWLFqxbt87UAwiwePFiBg4cyNy5c3n99dcJDg5m5cqV+Pr6OkwoNjYWjUZDTEyMxdCxoG5z7OhhZr09lZycbJObXq8nL6/QALyQaHBsHw5hTUuVdl4ePD/Ok5sphvoW1UfDxNfEXn8CgUAgEJSE3PzgYCO+vr7MmjWLWbNmOYxofS5d+/btbdxCQkLsnl8nqP1cu3aF+JPHeWr0QwDk5eUy/R3DynDj/D8Adwo/FoYPLHUeH76v5J+jhv1dQppo+fDjbKy2rxQIBAKBQGAH0VUnqHAKCgp44O4hJuMPYPWXKzh7xvAxYNwDEEApkYGbAob1LVUeJ0/CZ8sN+0wq3PR8vDwbf38XmVkrEAgEAoGLIwxAQYXz268/cv3aVRv3d6ZPAYoWgMiRIJdIDOf++thuPl4cU6Zgmvf37Au5tGuvLafUAoFAIBDUHYQBKKhwdv213a77yRP/AmbnAEsKq99dpRv+PXxIxs8/G34HB+t4anxeseEFAoFAIBBYIgxAQYVxIzmJyROe4+cfv7NwbxVuOGea7Bz43yuk3zceACVSCKoHPTs5nYdeD3PfK9ry5YUJuXh4FBNBIBAIBAKBDdJp06aRlZVl4ahWq5kxYwZRUVF07tyZsWPHcv78eYswERERREREMH/+fLsJ63Q6+vTpQ0REBOvWras0BVyR3dvXs3v7+uoWo0rJy8vjiUfv48e1X5vcdu7/j/kLlzM/6m4A0rKz0B0/w66sZAA6yr1g9AhKs3Ljz21yDuwzLPxoEabl/gdd40gdgUAgEAhqEtKNGzfy0ksvWThOnDiRuLg4Jk6cyJw5c0hKSmLUqFGkp1seXyKVSomLi7Ob8IEDB0hOTq40wQWuxZ6/d3Dq5HHTdXTfATRs2Ji7ZAGE/WrYVFwLzMtOYH52AgADO/eA+2OczkOrhXmzirr7Jr6Wi1xeMfILBAKBQFCXkL7//vvs2rWLQ4cOAXDkyBG2b9/O7NmzGTFiBEOGDGHlypWo1Wq+/vpri8hdunQhISGBEydO2CS8YcMG2rRpUyVK1BRSJkwhZcKU6hajUjh72rDCN/bOezl+5hpfrP4Bkm/CrCW4SaR4SQy9fJ/mJJriRC2YbVgB7CS//qTgdLwhnchIGBorNnwWCAQCQe1Dp9Px2WefMXjwYDp06EBMTAyrV6+2CJOSksLEiRPp0aMHXbt2ZcKECaXqeJNGR0fj6enJX3/9BcCuXbtQqVRER0ebAgUEBNC9e3d27NhhEbl79+4EBgba9AIWFBSwefNmcSRcHeLs2dMAhLUKx12pRALwwQrINQzR+nv52MQJaeL8xs95ubDgfbPj3uYYDigXCAQCgaC2MXv2bObOnUvv3r1ZunQpjz32GIsWLWL27NmAwc4aO3Ysx44dY/r06UyfPp3Dhw/z5JNPotE41zkilclkhISEcOHCBQDOnTtHSEgIMqt5WU2bNjWFMSKTyRg6dKiNAbhnzx7y8vIYMKD0R3sJah6//rSWH74zfJm0bBlucFy0CjbvMvz29CCgeTObeJJSWHBrvnLn6hXDmqW+t2u4/fZyiSwQCAQCgUuSmprK6tWreeCBB5gxYwbR0dE88sgjzJ49my+//JJz584RFxfHiRMnWLp0KTExMQwfPpwVK1Zw5swZNm3a5FQ+cgBPT0/TQpDMzEy8vGz3ZPP09EStVtu4x8bGsmbNGk6cOEHbtm0B2LhxIwMHDsTd3d0pISSS2tmb40gnc/cbr0yh/oL3Kiyv6ijH775ZZfrdKqI1/LgJvvjB4CCVwtuvEPDlhxZx7r73AadlzcyAJQsNdUki0TN5Sg6gqJV1xprqvK9VRV3Q0Uhd0VXoWbuoK3pWFSWV48WLF9FqtfTv39/CvUePHuh0Onbu3MmpU6cIDQ2lZcuWJv+WLVsSFhbGjh07uOuuu0qUwzSF3tgbo9c7Pk3BXo9N165dCQ4OJi4ujrZt25Kfn8/WrVuZN29eiZkbad7Ql6AgP6fDuzp/F/5v0djPwv2GHfcbdsKVh9BGFZeWs6QkXwOgT58+DAhpyJXRUzHWosBZL+P7WAw9TvzF9j82AzBmzBg+/PBDvL29nUr//5ZCWprh9yOPSIgdbBhOrg5dq4u6oGtd0NFIXdFV6Fm7qCt6VjZeiuJ3r/D39wfg6lXLAxUuXboEQGJiIufOnaN58+Y2ce2N1jpCDpCVlUVwcLBBMC8vUlJSbAKq1Wq7L2yJRMKwYcOIi4tjwoQJ7Ny5E6lUSlRUFElJSU4JcSkpA3WBm1NhawIKhWFhw4WraRbuMg+ljbvMQ2kTrixIJNC8oR8Xr6VRjA1fbs6eicfHx5eg4AaAYR5CQoJhVe+seR+TOP5tyCus3CPvJHVYf1KvpvG/Mc9x/cYtsrKymDJjHimZWlIy00rMLzlJwgcf+AASFAo9457P5OI1XZXo6gpU1X2tTuqCjkbqiq5Cz9pFXdGzqrh5M6NY/9DQULp27cqiRYto0KABPXv25PLly0ydOhU3Nzeys7PJzMykWTPbqVWORmvtIddqtSQmJjJkyBBTxrt27UKn0yGVFu0TnZCQQFhYmN1EYmNj+fLLLzl58iQbN25kyJAhJiPIGdq0aIinp6fT4V2d0Icftu/+pe2eifbcykPzhn4Vmp45Fy9eZMjtPQH45ptv6NOnDys+WUJBQQFKpZLWOw+RdvwMAIqWTQmZ8zJSD+M0AD++WLGs1HnOfRsKDw7hmWck9O1ZtJikMnV1NeqCrnVBRyN1RVehZ+2iruhZ2QT5lmwfLVy4kLfeeovnn38eAB8fHyZNmsSiRYvw8PAo9WitPeS7du0iOzubqKgoAKKjo1m2bBk7d+6kX79+gGFC4sGDBxk/frzdRDp16kTjxo355Zdf2LZtG0uXLnUqcyMnzl2jXr3AUsVxZfbvNCyKiewzzMI9dcpMAALee8vCzfy6rEgkhu75C1cr7wvth3UbTL9Hjhxp4de0YQhpH3xpuJBK0Ux7kYupOUBOmfM7c1rKp596AxI8PfX8b0wG56/oq0RXV6Eu6FoXdDRSV3QVetYu6oqeVcXNm7ajrNYEBgayZMkSMjIySE5OpmnTpkilUqZNm4avry9eXl52e/qysrKcnl4lnzRpEn379qVLly6AYWuXyMhIJk2axKRJk/Dz82PRokV4e3vbvPTNGTZsGKtWrcLPz4/IyEinMjei0+lrVaUyLsG21kmbk2vjrs3JrVDd9XrbfCuKixfOO/R7UO8HBQWGi8fvg/YR5ZJDr4eZb3mg1Rq+ZMY+nUu9epb1pDJ1dTXqgq51QUcjdUVXoWftoq7oWdnodCUX4oYNGwgLC6N169b4+BhGvv799190Oh1t27bl0qVLnDx50ibepUuX6Nixo1NySIcNG8aCBQssHBcvXszAgQOZO3cur7/+OsHBwaxcuRJfX1+HCcXGxqLRaIiJibEYOhbUHk6d/M/G7a57H+Ds/y3h8SzD/EZaNYfxjj8UzCnuyLy4jQp27zJ0k4c00fLU+LwyySwQCAQCQU1j6dKlLF++3MJt5cqVeHt706NHD6Kjozl37hxnz541+Z89e5Zz586ZRnRLQj5z5kwbR19fX2bNmsWsWbMcRoyPj7e4bt++vY1bSEiIjVtd5/TwXpzevp7e/YdXtyilJv6U7Ykv7Ro2hRXfGy5kUpj5cqlO97BHdja8O6No0+c338pF6VFMBIFAIBAIahGPPfYY06ZNo1WrVnTu3JmNGzfy22+/MX36dLy9vYmNjWXZsmWMHTuWiRMnAvDBBx8QHh5OTIxzR6yKk1QFTpGdrebqFcMxbu/NW8iUSS8CEP7HoaKh39H3QWv7C4VKw8cLlVy/VrTp86Ch4sg3gUAgENQdHnroIXJzc1m9ejWffPIJoaGhfPDBB9x5550AuLm58cUXX/Duu+8ydepUFAoFUVFRvPHGG8jlzpl2wgAU2JCbk8PqVZ8xeOgdNG3WnLS0W1y7egUAPz9/WrduZwrbKlkNMncIbQLj7K9+Lg3nz0n5fLlh5bDCTc9bM3PE5qMCgUAgqHOMHj2a0aNHO/Rv2LAhixcvLnP6wgAU2LDg/ff4bPliVn62lFFPjGPue9NNfqFhLQlv3IRghRI/nZRgqRv4+8LcyeBevr0c9XqYMdUDjaZw4cf4PJqH6sqVpkAgEAgEAluEASiwYcP6dQBcv3aVHdu3Wvh5eXqjfP0Dtvp0RoYESdtW8PF0gxFYTn79WcHfOw3zBxs11vHMC7nlTlMgEAgEAoEt0jfeeMPm5I+UlBQmTpxIjx496Nq1KxMmTCA5Odnkn5iYSEREBBEREXz33Xd2E87MzKRDhw5ERESwb9++SlVCULFkZhTtUn7hnGGFUe/ofijc3BjZLhIOH8dDIsPN3w/ef71CjL/kJAkzpxat9Jg6PQcPsfBDIBAIBIJKQbp3715Gjx5NXp5hm42CggLGjh3LsWPHmD59OtOnT+fw4cM8+eSTpv3tTJGlUuLi4uwmvGXLFvLziz/vTuCaqNVZpt/JydcB+PiTL/n334sM2We2F+C7E6FRcLnz0+th6hsq0tMNCz/uvCufwcMs61rKhCmkTJhS7rwEAoFAIBCA9MMPP+Ts2bNs374dgLi4OE6cOMHSpUuJiYlh+PDhrFixgjNnzrBp0yaLyF26dGHfvn2kpqbaJLxhwwbatGlTJUoIKo4C44peMwLrB+Ht44v8hzi4VHg4dZd20KtzheT5688K/thiGPqtF6jjrbfLfnqIQCAQCASCkpG2aNECMOweDbBr1y5CQ0Np2bKlKVDLli0JCwtjx44dFpEHDx6MVCply5YtFu63bt1i79693HHHHZUsfu3AlXq2riRetnFrFd4acnJhlWFuIBIJvDaeiliem5bmYTH0O/O9HAICSrfVvKPNpAUCgUAgENhHunWrYZJ/q1atADh37hzNmze3Cdi0aVMuXLhg4ebj40NUVJTNMPDvv/9Oo0aNnD6OROA6XLxwzsat/8Ch8PlauJlmcBjYGyJCy52XXg9ffNHDYuh3aIzY808gEAgEgspGPmfOHNq0aUO/fv0Aw+KNZs2a2QT09PS0e/BwTEwMU6ZMITU1lYCAAMAw/BsbG+u0EBJJhXQmuRzF6bR7+3qiBgx3Kmxp8ipvOgkXbc/7HXZbJDz3ruFCLofnH62Q+7V7dyhHjjQBDEO/094pec8/87piHrY21h+ouPvqytQFHY3UFV2FnrWLuqJnVeEq5SiXy+UsXLjQdH6vvpiTniV2pB40aBBTp05ly5YtPPTQQyQnJ3Pw4EHeeustu3MD7dG8oS9BQX5lUsDV2PfgszC8FwA3XplCj++XmPxuWIVt0djP5NaisV+F5B/aqHzp3LqRaHHt5+dH2Or15BTODfR74RHqRbUvVx4A167B6tXdTdefLpfSrYPj1cT2ysmo699UXPm5KuW9rzWBuqCjkbqiq9CzdlFX9KxsvBSusUBW/uWXX9K0aVOTg5eXl92evqysLLy9vW3cvby86Nu3L3FxcTz00EPExcXRsmVLWrVq5fT2LxevpZOlKd8mwq7K+StpTvkVF84ZJBLDw3nhahrF2PAlcvDwPwB07d6D3JwcFjw4jpyF3xo8GwWR9uBw0sspq14P48d4olYbTvwYfnc+t0Vmc/5KyXHPX0mzq2t5y89Vqaj76srUBR2N1BVdhZ61i7qiZ1WRkpJe3SIAIA8Lszy7NTQ0lJMnT9oEvHTpksM5fbGxsUyaNInU1FQ2btxY6sUfej21tlIVp5e5X0XpX56y/Hvnn+z5+y8kEgkz3/2AiJBmcO8zRQEmjwelstyyfrPazbTq18cnh6kz851O07rMjNe1tf4Yqc3PiJG6oKORuqKr0LN2UVf0rGxcpQyl1g7R0dGcO3eOs2fPmtzOnj3LuXPniIqKsptI//79cXNzY/Xq1Rw9elSs/q2hbP9jMwD3PfAIERFt4J2PixZ+9O8JfSPLnceuv+RM/7+iVb+PP76PU//8Wu50BQKBQCAQOI/06NGjHD16lOvXDRv+xsbG0rx5c8aOHctvv/3Gb7/9xtixYwkPDycmJsZuIiqVin79+rF8+XI6duxIkyZNqlKHKufokYNcSrhY7nTMty9xha1gLpw/A0Cn27rAe0th8y6Dh4cSJo0td/qn46U8/7QnWq1hLunQoSfo1s122xmBQCAQCASVi/Shhx7ioYceYu3atQC4ubnxxRdf0K5dO6ZOncrMmTPp1KkTn332GXK546ODY2Nj0Wg0pVr9WxNJvHyJh+4dxoDozuzZvbO6xakwPl220HTub+jBePixcGsfmRTmvAYNg8qV/tWrEsY85kVWpsH4GzhYw8iRh8uVpkAgEAgEgrIhj4+Pt3Fs2LAhixcvdhgpJCQE63hDhw61cevRo4eNW03h15/Wkpx0nQdHjsLbx4fnx48m4eJ5Hn18LFqtFoDHHrqL6L4DmPLWO4RH1NxTT1Z/uYI5704zXbfYeQyQg1QKM16GPt0dxnWG9DSD8Xf9mmHGQfsOBSxYrOboPheZCCEQCAQCQR3DcZdeHeZK4iUmvDgOgNPxJxn95NP8vskwXPt/k1+2CLvrr23cG3M7/526jMTN/kpm41BvuIP8Tg/vRfj6PRUie2k5c/oUM9+abOEWqJeBBBj3MNzRv1zpFxTAi8+qOHtaBkDTZlo+W6VGpSpXsk6RMmEKgfPfq/yMBAKBQCCoYQgD0Ay9Xo9Wq+XokUMmtwsXzvLd11/ahG3jV5+TaYbd6fI0+RwZ/ABdJr9SZbKWBa1Wy6RXnuHY0cN0696T/oOGMnPqZHQ6HdF9+hN5S0NYQophv8emjWDUveXO84M5Sv7eaVjxG1BPxxer1dQLFD1/AoFAIBBUJ8IABBZ9OJcT/x0jNTWF0/En8fb2MfkdPXyQ/44dtYnzZIE/r5pt7bz3egJd3vwAZcuGVSFymTh5/F9+/ckw1/PihXP88P0ak98j1wsYcgtwDwSVB8x93bD4oxxs/E3Bp8sMacjlehYvU9Osua5caQoEAoFAUJvZt28fo0aNcuj/wgsv8PzzzzNy5EgOH7adS//DDz/QoUOHEvOpswbg2m9X8/mnHzPlrXf56INZFn6ZGRmm33q9Ho1GQye5Nx96R5CpL+C6Lp/bFf5ccofv85K5npXG8YIsADzPXsPn7FUyWjaqUn3s8cWKpVxKuMCb097j2tUr3GNnOLe1b31a5ui5PVULEinIZfD+6+U+6/fcWSlvvFo0zjtlWg6RPbXlSlMgEAgEgtpOu3bt+O6772zcP/zwQ/7991/uuOMO9Ho98fHxPPHEEwwbNswinPX+zo6QR0RE8McffxASEmJyVKvVvP/++2zevJns7Gy6devGG2+8QYsWLUxhIiIiABg/fjwTJkywSVin09GvXz+Sk5OZNWsWI0aMcEqgquKNSS8A8MSj95ncPDxU5ORk2w3fVu5JiEwJDQJp0yECRgzlxW4d6b7vbx57+G5OFNo6EqDxH0edMgArc95f2q1bvDvDsLWMX19/0nemmfxu69yNiaPGo1yyhi63CkBR6NE+3LDZc3tHsxWdQ62G58Z7olYbVvzec18+j412jaNvBAKBQCBwZby8vOjUqZOF2x9//MGePXv46KOPCA0NJSEhAbVaTb9+/WzCOovNRtAAEydOJC4ujokTJzJnzhySkpIYNWoU6emWx5dIpVLi4uLsJnzgwAGSk5PLJFRlk51te9TdM89P4K+9x/B0Lxr2VFB09nHT8AhYPR82fWEYHu3ZGeQy2rYznI5yOe0mWQ0CAPCPT0SZnFa5SpTArp3bTL+//PkT/j12xHT99sT/o/eKDQbjD8DP27Da98t5xRp/KROmlLhfoV4PU18vWvQRHqHl7VnZLnP4tUAgEAgENYnc3Fzeeecdbr/9dlNvn/HEttatW5c5XRsD8MiRI2zfvp3Zs2czYsQIhgwZwsqVK1Gr1Xz99dcWYbt06UJCQgInTpywSXjDhg20aeOaW6MY58GZ89yLr+K/5Bt0eUU9VU29/U2/m70wFtq1sonn6+eHV+EZycmDe5rcG2/7pyJFLjU/7v7G9Dvj13SOHDoAwJLFn9F24XeQlGLwbNUc1nwIdw00bPtSTtascuPXnw2roT299Hy8XI2HRwmRXARX2IxbIBAIBAJzVq1aRVJSElOmFL2jTp48iUqlYu7cufTo0YMOHTowduxYzp8/73S6Nm/8Xbt2oVKpiI6ONrkFBATQvXt3duzYYRG2e/fuBAYG2vQCFhQUsHnzZqePhJNKJUgkVMlfRnoas995C4DwiDa079iJqTNmo8zKhh9/RyWRmeQK7tDO9LtZ8+YO0wwKagBA8m0t0csMRRq8Px6Pm1lIJKBQKFAoFMg8lKbfxmujm8xDWW7doPC/RM+Bf3fbLet+hxPgfOHpG80awydvI2kc5FT6Rnkd+R87KuPdGUXW3pz3s2kRpnMY3rwsSpu3Uddbb850GL+0ZVoR96Ay/oy61ua/uqBjXdNV6Fm7/uqKnlXxJ5VKnLKNAPLz81m1ahWxsbE0a9bM5H7q1Cmys7Px8fHh448/5p133iEhIYH//e9/JCUlOZd4eHi4/vLly3ojL730kv7OO+/UW/P222/rIyMjTdfh4eH6hQsX6mfMmKEfPHiwRdi//vpL36lTJ/3Zs2f14eHh+h9//NEmvaSkJD2gB/RZWVk2/pXFxo0b9YBeoVDob968aXLX6XT6a6Pf1K+KuF3vJlfoly1bpt+4caNeqVTq69Wrp8/JyXGYZr9+/fSA/ptvvtHf+mSt/mxgtP5sYLT+XLPB+uy9/1SFWhb8mvurHrmhbFmGHm/D77se7F0kW8gAfV78hQrL88YNvb5pU+NR4Xr9K69UWNICgUAgENQasrKyTPZPUlJSsWF//fVXfXh4uP7kyZMW7idPntTv37/fwu3SpUv6du3a6efOneuUHDargDMzM/Hy8rIxFD09PVGrbefOxcbGsmbNGk6cOEHbtm0B2LhxIwMHDsTd3d0pI/Tk+WvUqxfonMVaTjZt+ROA4XffR3qulPSraUWe771KNK/yr0aDQmFYGbH74Am0Oi3XUnOBXLtpevsa5v4dj79Ay/M30Ea2JmDfSU6k3yDvkdc4/sZDFHh50HLTfs7GRJritdy0H8DCrUdfy9U8ziKRQPOGfly4dosJCZOgAKgHjAPGg1Qv5cKx/9Bv64AECUx9nitefmCufwncfGMmAPVmvWXhfv2ahMcf9eLSJUPvadfuBTz9UhYXrhaf3r6/inqOS9LbPG+jrhevpZHy+kzOxkTajX/zjZk2spaUR2nCVwXmuupr6faJdUFHI3VFV6Fn7aKu6FlV3LyZ4nTY33//nVatWtnM9bM3969JkyaEhYVx6tQpp9K2MQD1xdxdicS227Jr164EBwcTFxdH27Ztyc/PZ+vWrcybN88pAQCaBvsQFOTndPjycOo/w2KIQQP6EtrIiTydCBMW2hQATU462pxczt7Tk2PHDzI34SiP5Dbg2V+acP7BvmhzctFoNKZ42hyDQWnu5pRMxbDk+Huc3Vx4/F4PMK5j0Ul0/HtbBjv7pxEb8CDB4+4tddrJhfKay3jqFDw8Ai5dMlw3aAC//CSncWM/2wSs2FUKve3l3byhH0mFZWovfnJOrtPl+dVXXxFeivBVTfOGftUtQqVTF3Q0Uld0FXrWLuqKnpWNp9y5XTE0Gg27du3iqaeesnAvKChg/fr1NG/enM6dO1v45ebmEhAQ4FT6cjBs2aLVapHJZHh5eZGSYmudqtVqvAsXO5gjkUgYNmwYcXFxTJgwgZ07dyKVSomKinJ6HPritXSyNPaPUasIzpw+xUcfzCaiTTu2bNkCQGhEJ85fSauQ9N08fA35nL8E+JGam83chKMAfJ17nRn7TnE9up3jBMwoq0wSCTRv5MvasLXwSaHjM5ZhpAWw4M3L9JE+hrocuhtlPHpYxlOjPbl1yzDvsWkzLV+sVpOHjvNXypamM+EkEoMheMGs99JR/NKWZ0XViYrCXNfa+uVdF3Q0Uld0FXrWLuqKnlVFSkq6U+FOnz5NTk4OXbt2tXCXy+UsXryYoKAgvvmmaMHn8ePHuXTpEmPHjnUqfTnA4MGDiYyM5KuvviI0NJRdu3ah0+mQmq0KTUhIcLi5YGxsLF9++SUnT55k48aNDBkyxDSE6gzGmWOVxY7tf7Bpwy9s2vALAD6+vrRs1brC8gysHwzAlb92Qd87LVbqAEj0ELQ/HmQlT/wsj0yb2UzCTwmQAbQGYi39dXIMvYA3DtM3b2CZ81Gr4ZOPlSxf6o5GY9CpTbsCPl+lpn6Qvkw6OBvHPJzxd/j6PdxYv8fuub+llcVVG7fKfkZcgbqgo5G6oqvQs3ZRV/SsbJwtw9OnTwP2N3Z+4YUXmDx5Mq+99hp33303V69e5aOPPqJNmzbce69zI3xSgKVLlzJjxgwAoqOjUavV7Ny50xQoNTWVgwcPEhUVZTeRTp060bhxY3755Re2bdvm9OrfqiJ2+D0W1w+NHGV3OLusNGzUGIDr2ZkAZGVlWfjn63XUP3wWSUHlnYShR89UpsLnhQ6vYHeXR6lexgLfd9FT+qdYr4fNl7oxuJ8PHy9Umoy/nr01fL02i/pBVdcyfPXVV1WWl0AgEAgEVY1xNNbX19fG75577mHBggWcPXuW5557jvnz5zNgwAA+//xzZDKZTXh7yAHCw8NNJ4F0796dyMhIJk2axKRJk/Dz82PRokV4e3szcuRIhwkNGzaMVatW4efnR2RkpMNw1UHDho15d+5HHD6wjxEPPEKnLt0qNP2mzUIBSMhM46o6w8Y/UZtLiywpHgmVtzH2O99P4cBHByABw8keD9oPp5No+dftCDvdt5WqFzAjXcKM/aOJu9TD5KZQ6HlqfB4vvJKLW+WN4AsEAoFAUOcYO3ZsscO5sbGxxMbGOvQvCbs7/y5evJiBAwcyd+5cXn/9dYKDg1m5cqVdK9RcEI1GQ0xMjMXQsavw0MhRzJn/MT16RTm9OtlZGjZqbNJ5xMY1Nv7H9TkAKK+kIsut+CPRdHodKycsMxh/AIMBP8fhJXqJ072AGg389IOCIf29LYy//oM0bNyaycTJwvgTCAQCgaCmIY+Pj7dx9PX1ZdasWcyaNcthROt47du3t3ELCQmxcatJpEyYYndemTUymQydTufQ/ydlNsO19ZBqddQ7co7kXuU7IcVcru1/yNmy/YJlgPuLj6+X6Lkmu0I++Ug17qizJGTnQE62hJxsCdevSzh5QsaJ/2QcPiTnZkqRQa+S5/L4uANMeKNDuXSwx+7t6wHo3X94hactEAgEAoGgCJttYAQVz+6URHR+IUglEgJOXCqTAbhtaxw6nQ4vbx/CCmeQ3kiW8MxTnhQUHLMIq1gQx/yVH9FEfg2AeVnj2a3tjspTj1xuMPTSkoLolBhkmsfnDP0aH2Vip+9J69kGqHgD0IgjQ/D08F6c3r6eqAHCQBQIBAKBoDy43lhtDcXeOL1xYU2BVsvE3PNk6grwPXMFWY79YeDw9XtszqNNmTCF1NSbjHtiJE8/+T8efXA4Wy+fBcDPX09IEx1wtDB0CN78wJeX1hNzIpP2x7zQHOrB3/vHoz/UFfVf3Ujf1o38vV0puNDEKeNPpdIzNCaf1d9nMaf3coJUaRayCQQCgUAgqHmIHsASMBo5JQ0F9+nTh3Ob/mBbouEg5uDgYJo3b45cLjds2qi+hqdWzzvSloRsOUzCXT1LzHv39vWEA1cTL1u4f3/2X0YCGRkpDLvjPZYtfh+AJ3rdy4Tzn+ChNcw5zJUqWdt2El3OniG7wJ1cvxA0GgmennrkCkMvooeHwchTeerxVIGHSo+vr56INloa/jqXEK8Ugha8ayiLtU4XW6kx9vqVhhuvCANUIBAIBIKyIAzACsTXTWn67eHhgUQiQaVSkZFhWBm8X2PY/DF470kuD3O8Etl67mFS0jUL//9uJnHrVirLl3zEZ8sXm9z7n9iOh8LPcFE/AOX7b/Bex3pOG7E2cmy/UarwJaZXRjnKinHIWMwpFAgqj93iGRMIaiRiCLgC8XErWl3s4eFh8R8gDS16vR55roZ6R885nW5y0nUAOnfuTFirCPTAwf17+e/foxbhQqWFeQ2Ogq8/hI62ZwVWBPaGqq2prcPDlalXyoQptbbcBAKBQOBaSB9//HFOnDhh4ahWq5kxYwZRUVF07tyZsWPHcv78eYswERERREREMH/+fLsJ63Q6+vTpQ0REBOvWras0BVwJH7MeQJVKBUC9/KKtVlK1+XRN3cshTQZNNx0EreOVw+YkFRqA/v7+dI80DB3v3/s3/x07ahGugdSNa9HtYM5kCPQvjyqVxunhvYr1D1+/p8Q0Shr6FUZU5bJ7+/oyDdkLBAKBwHWQqtVqnnjiCZKTizYpnjhxInFxcUycOJE5c+aQlJTEqFGjSE+3PL9OKpUSFxdnN+EDBw5YpFkX8HUvMgCVSsNvpdxylD1Dr+XlzHjc09Uor99yKl1jD6Cfnx9duxsMwC9WLEGtNpw4MlrZkLlerUgPb8yFe3oZDm6sg9jrQXOmt1IgELgGteXjQvTmC2oC0iVLluDm5sb+/fsBOHLkCNu3b2f27NmMGDGCIUOGsHLlStRqNV9//bVF5C5dupCQkGDTgwiwYcMG2rQp3353NQ3rOYAAejuH/ukKN2BWXUxGkl9gNy3zxiO5cA6gv78/bdq2twjXRKpkqlcYI0Lbc+Z/A8AFN+GuCqx7FmvDS6Q8lPflI15eAoFAULuR1q9fn507d3LnnXcCsGvXLlQqFdHR0aZAAQEBdO/enR07dlhE7t69O4GBgTa9gAUFBWzevNnlzgQ2pzQGQknDlkZCfYqGXRs0aACA1o4BqFcYegWl+QWoLiSVmO65s4YDoevVq0doaEsLv6U+bUAuh0/eQeOjckrOquD08F513ggTCGo64hkWCGov0scee4wzZ86YHM6dO0dISIjNYcJNmzblwgXLEydkMhlDhw61MQD37NlDXl4eAwYMqDzJXZAQL1/WxjzC66+/btJdZ68HUKWkwF0BgPLaLRQZ2TZhjEbnlawMLl9KQC6XExYWhrvSbJ4hUlrLPeH+YUiaNipRvtI05uZhq2tYpiLzrM4XWWnKTxjOAoFAIKgKpLdu3eLRRx8lKcnQE5WZmYmXl5dNQE9PT9RqtY17bGyszTDwxo0bGThwoNNn7kokVf9nzDdlwhQbv5QJU2xews6kB9DEy5e2bdsiL5z7Z88ARCYlqfA0EIlej//xBNswhWxLNKwWbu9Xv3BYuSi92xTe4OcNz/7PQgZrXcpS1s5SUvzi3EqTfkVg7z4b739J+ljXm9LWNWfTthe2rHmWNo51eZRXn8qWt6b+1SRdy/NMOKun8QPJGKcmlY8jPWuiHuWpC+ZtR0X9mdeL2vjnCsiXL1/OkCFDWLNmDRMmTLA7Z82IxI7UXbt2JTg4mLi4ONq2bUt+fj5bt25l3rx5TgvRvKEvQUF+ZZG/zPwNtGjsx43C/+bY2/3OOoy99Ozhr/SwcZNKpdy8rQWN/zQc4eZ/6rLd4+EyMjJYcfwAAEObtgIg++4x/OB7G5/mJPKWZwvqv/U0Pm1CANhlR1ajLsYexZL0KEkfaxyl97cd/xtWbs7kYQxbETsSOrrPLRr72ZXXHvbqS0mUlPZXX30FQLiZm3XY0EYl57nvwWcB6PH9klLJ+dVXX/HYY49ZlEdx8Z0tq9LijI61hZqiq7GdLGsYZ/Q0r0+VVbcqG2s9rdu62oKj+1kZ+lZ2Xdj34LP0+H5JpaRdEl4K+6eBVTXyRo0aERYWZurB8/LyIiUlxSagWq3G29vbxl0ikTBs2DDi4uKYMGECO3fuRCqVEhUVZepVLImL19LJ0riVT5MycP5KmsV/Z8Ja8/e24s+mndg5musqOefOFe37J5FIyGpSH51ChlSjxS8+EXlWrkW8/Px81q1bR55OS3Nvf+5u0ZZbR8+jupRCJ4U3HyvakN0kkBv9+5ByJc3ii6I4fez53XhlCvUXlG1z5uLyCl+/h33r99ik7Ux5OwrrzDYxzqZlz720daE0ZVcWvSUSQ6N74WoayS87l1dp6rU92c5fSTN8MBQalI7yLE36xWGuYzHfn7WCmqjrvgeftakDxq2YjO7WdaEsepb2OXQFStKzpuhREs7ez8rQtzLLsLruT0pKerXka40UDIs2jNuWhIaGkpiYiE5nuUddQkICYWFhdhMxDgOfPHmSjRs3MmTIEBQKhdNC6PVV/2fM117+pZHRPB17NPL0Ydq0aXTq1MnkJpFIQCohr7DXU5ZfQMOd/1rE27JlC9u2bQOgU/2GyDRawr7fYfLPatmQ7JYNAYmN3H9vW8/f29bblas4HUoqA3sUVy7WYRxdO5N+RWAsE3vygKGX1DpMSWVlfV1cWThTVvbCmsvobD7OyGUez3xvRUf3z1l9SvuX/PKUCk3P1f9qkq4l1QFjvSmPnvbqXXXrXd77WRP1KIuelalvZZdhdd8fV0B6/vx5Lly4QLduhqPJoqOjUavV7Ny50xQoNTWVgwcPEhUVZTeRTp060bhxY3755Re2bdvmsqt/q3NyvfmiGuNQek7T+uglhpXCZ3bsJiOvqBdw+/btpt/hfoGoEpKR52oAyA3yJTekXhVJXr1U9H5axnklpa0L9uaFVhX7Hny2VOceiy1cBILqQzx/RYgFba6N9Omnn6ZBgwbcf//9gGFrl8jISCZNmsTatWvZsmULjz/+ON7e3owcOdJhQsOGDWP16tV4enoSGRlZVfKXGesNgiu7okrN9uczGoA6pQJNgDff5V5n3NVDvLbjN1OYJk2amH5H+TdAeSUVAL1UYuj5q6JZpCVtgeNqG7cWJ295ho+tMeosVu0KyourbBrsas+ys9REmQWlxxWekdqGtHXr1nz99dcWK38XL17MwIEDmTt3Lq+//jrBwcGsXLkSX19fhwnFxsai0WiIiYmxMHZchfI2EhXZyBQUFG3+nNswgO9yDSd9HE2/wTfxR0nPzyU727A1zIRO0YSmaZAU9hnnhASic7cdXv97m6189mS2drN3XZyuRgPL2b0RBQJnKU0vp6DqEB855acsRn5NNcgFFcPRo0d57LHH6NSpE71792by5MncvHnT5J+QkMDTTz9Nt27d6NGjB9OmTSMrK6tUecgXLlxo4+jr68usWbOYNWuWw4jx8fEW1+3bt7dxCwkJsXFzBXZvX2+x4rIqMF9BnZyczOnTpwkH8gO9kXooIcuwxc5Hx/Zw+MY1CrIzAWjq5Yt7gmHCqF4iIceFhn6FEVj7OT28F4HVLUQdI2XCFALnl21RVlVyenivCu1Vr0iMxlZlluPu7esJX7+HFoUrSUUPlaCi+O+//xg1ahS9e/dm8eLFJCcnM3/+fJ577jm+/fZbMjIyGD16NIGBgcyePZvU1FTmzZtHYmIin332mdP5uF5XnQtRmQbOO++8Y/ghkVBQz8fC79KtFDI1eQD45+mQ5RiWjGe0aIDeqvevPF+JldFgVcZwVnUYms6Ua0n+1uVQ2vtUl7/+q7P3o7aVu+hJElQnrjLFoSYxb9482rZty5IlS4iOjmbEiBG89dZbXLt2jcuXL/PNN9+QlpbG8uXLGTRoEA8++CDvv/8+u3bt4tChQ07nU6cNQKNhURWV094eisnZhu7aTK3Gwv1GbjaZhQtCgq8ULRdP6tm6EiWsOpx9GVVX70JJ9aGqGrPw9XucHhYVL/iKpzpfWq74wqwNhmRlyG/cx7OicMV77whh3FU8t27dYv/+/YwcOdJiOt2QIUPYsWMHTZo0YdeuXXTt2pWAgACTf3R0NJ6envz1119O51XnDMCyNgDGRSNlreyBgbYDaf/eTOLwjaskJiZauGejQ601zBMMyNUCkFPfl5RO9rfhcQVq0svBFYatXLXhLK63tSSZa8r9Lw+1XUfrxXHm7kYqqwysj5+saZQ0UiHmUlYMNeldUxbi4+PR6XQEBAQwceJEOnfuTOfOnXnttdfIyMgADEf2hoaGWsSTyWSEhITYHNlbHPIKlbyMSKWSSl/Uar0vocxDiUKhQOZh2P+wzdYj3Np6hID33jL52QsHhgW4+3fGEdlnGAqFAokEizDmeRnj33fffeT+d5o/EorOXf7m7DFyCop6/5QyObnaogUiAD4SOTo3OWfH3YFC6W4hhz29rLEn04FdBtkvjOiLojCMsfztyQ7QctN+MCsL83AtN+3nbEykTX7G38a0zeMZy8yevOZlb56WdRmbl4V1mJLSsJbPkd7Ge93STv7mGMvUnAsj+nJhV5xFWPOysM7bOl/re20e30jqlJkEvPeWTXnYC+sIa71uvTkTRUwkMg+lzXNxNiYSozbWOhufhdIi81BycPQEm3rYctN+U95ViVEPc3ms/cqK+ZFaRuw9J9ZhyoN5nSopnHXe9uqm+bXxv3Xa9vQsST5rSlN/rcM6KsPy3j/rtMz1t34Gz8ZEUt9B21ccxnrnbPiqwNH9LKnNMZbJ2ZhILli1F/t3xgHYtJvmcc3TLE25lJS2eXrVgVTqOOPUVMOOH1OmTKFv374sWbKEixcvMn/+fC5fvszXX39NZmYmnp6eNnE9PT1LtxBk2LBh+tWrV+t1Op3eyMWLF/Xjx4/Xd+3aVR8ZGal/66239JmZmSb/vXv36sPDw/Xh4eH6nTt36u1x9uxZU5jLly/b+CclJekBPaDPysqym0ZtQ6fTmXS296fX6/XB9YMs3C4Pekqfd/piNUsuEAgEAoGgIsjKyjK945OSkiz8fv75Z314eLh+/PjxFu6//fabyeZq166dfv78+TbpPvzww/oxY8Y4LYc8NjaWt99+m7y8PMaMGVOq1SVSqZS4uDiio6NtDMuNGzc6bYSeOHeNevUqd62h8YvA2Ftl7z9g4WYd3uhvJLLPMEPvUDFhrNNyxJw5czg4egJJN5It3K839OL6Ox85TMM8L3tYy2Qe39wt4L23TGVUnOzW5VNSOICA994idcpMG3d7speUp7307YUpKQ1r+cx1L65OWOtuHse6p8q6PKHoi9RYHuZ5m6cd2WeYKYy1jsZ4xnSKu7fFfQGbx7dXr+zVV2vdrb/oS/OFb8zfHKNe5s9VSTqUhHlZ28NevbeWx5iOM/JYl4M59o7UMi8D82fF/B4XJ39JOHMfjOGs65e9uml+bV1nrfX89ttvTe6O5HCUh7P33V5523t2HKVrT29n87VXLuZ5mj/HxvKyd4+tZTdvF8pb/83lLWtajo6Csy5nI/aeY7BtL6zdzNO1jlOacnG27anq0QUjN2/aHrdrxNiz179/fwv3Pn36AHDixAm8vLxQq9U2cbOysggODnZaDvkLL7zAhQsXWL16NWPGjDGtLlm3bp1pgmFwcDDjxo3j0KFDdO3a1RS5S5cubNmyhenTpyOXW44mb9y4kTZt2nDy5MkShdDp9JV+NIpGYxhq1ebkotFo7P43hjO6WYc3TwcMx7k4SsOIdVqPP/44SUlJJCcnW6zWcXd3R5uTy8OtOvLtmWMAREVFoc3Ns5Hfnl6OsJbJPL65m1EX67hGt5ODOhO+fo9N+djT0bwcjeVkz92e7MWlZe8+metifU+LS8P4//TwXmC1h2JxdcJad/M41nXYXjhjGPOysa5r1mUGhfOLrMrUUXmZ5+3ouUqZMMWwjYeVrubxrd3s6WTcf7J3/+FoNBqL/EqSwVpm87DmZV2WtsF8jlC4VZlZY6/eA6a60bv/cJO7M/I4E8b8OCjzMjC/7/bqSlm2N3HmPhjDmT8TxntqlMHeM29dZ60JXfcXN9YZJqVrCufIOXpOrPOwDudId3vlXVw7qdcb6ofxvlq3VSVhXrfslYu1XNbtiL17bC27ebvgbDmURFmfJXOsjzGz10aAYU/PwPnvFVtHzN2stz6yjmPUubhyMceZ9q+kNCoTw2CgfZo3bw5Afn6+hbtx/2ClUkloaCiXLl2y8NdqtSQmJjJkyBCn5ZAC+Pn5kZaWBlCq1SWxsbGkpaWxd+9eC/dTp05x8eJFYmJinBakJmGcEF2WiagDBgxg5MiRNptqG63+se26s7jfcHaMGMu4cePKL6wL4IqLHVyN0ixMcZXJ5M7KbJR19/b1Za4L9iZ+u2q9crSQory4wj0vjtJOzq/IhVD28na0KMM6XFkWhZV1IVlJz66xPFz9XpdERbZRjuqIK21/VpGEhYXRuHFjNmzYgN7MQv3jjz8A6NatG1FRURw4cMA0XxAMtlt2drbDI3vtId25cyc//fQTd999N1C61SUtW7akVatWxMVZDqFs2LCByMhI6tev77QgdQ0fn6K9/2QyGW5ubgB4KtzoFhSCu0xud+uYyqIiGxzrhvf08F523Wobzr4AzcM4WnHpTCNl7MUrKYwjSmt0OoO9s5bD1++p8S+0smBPZ3sn9rgCzpwaVNWYG4j26nF5DUhHz2txaRr9nHkenHmOndXBFVa+7nvwWbuylKdtL+3HknnYyvrQqm4kEgmvvfYaR48e5ZVXXmH37t2sWrWK9957j6FDh9K2bVseeeQR3N3deeKJJ9iyZQtr165l0qRJ9O3bly5dujidl/Spp56iS5cuTJliKMjSri6JiYlhy5YtFsebbdy4kTvvvLMUClf+n6th3gOoUqmq1NgTFFEZW8IUV+eq8jab91RX9vNQUkNsXs7Gl549Oey5m19b61Ca572sbYN1uNK0NdZ+4ev3sO/BZ5FI7L9Iza+Lk8/ePTWm50ieqmofS0qzNIbb6eG9LNIyXttLP3z9HiSS8vXwlKVeVQTOthnO3M/i6oHRv6zvUON/Z4wve22r8f5Y31Nr2ezhyLAs7j4583wa8zRvl6rirziGDRvG0qVLSUxMZPz48SxfvpyHH36Y999/H4CAgABWrVqFv78/r776KgsWLGDYsGEsWLCg+IStkE+dOpVFixbx0ksv8fHHH1t0OdoWtK3UsbGxLFy4kL179xIdHc0///xDUlISQ4YMMXVZlkTzhr4EBfmVSvDS8nelpl56zHsAVSpVledv/jDVxt646qRFYz/Ats6Fr9/DjfV7wOw85arak9AoExR9yVcU1jqEr9/j1J5op7fZHsl4engveGWKqYzAstfsxitT6FF49NYNLPUyx7rsTw/vRQ87YZ3ZxNeYxw2ra0fcMPttHdbol/yypY7O5GvEWLZGf9P9tHI3YiyL4uSuyPbRuHl5aOF9skdp6n6Lxn52y9ReudirU85irCN/F6bz2GOPse/BZ031zV6ezqTpjJ6OdALL+m9eFub30149Nvqb+7Vo7MffOK4LX331FY899piFm3l7EdrIj10OdHBG178L749RDmt5jbIZdXSm7P4uvFcWbmZpWmNexn9vW1/ULhcTp6LxUuSXGKZ///42C0HMCQ8PZ+XKleWSQ/7oo4/SpEkTxo0bx59//lnq1SWhoaG0adPGtBp448aNREdH28xxK46L19LJ0riVS5Gahnn5eHh4VKMkgookfP0evir8X9ILvqoIX7+HfS6w+XVxFPfysDYoz19Js/h94xXLofCoAcPtpvPVV1859LOXj9HtK6s0zfMviZLCFveCM5fXnkFt1N2ZPI11oP4C5xYOOGPEVwWm58nMrbgyLe8H1b4Hn4XCumh8ZowGkLNlVxacrVPGcKeH9+J0oWHnqE7bS9PoVlx+1n7GZ/P08F5QWD7lZZ+ddIz5fvXVV6Uy4our2+a6OHOqkrFci2snKoKUlPRKTd9ZpGCYVAhw5syZYleXhIXZP4kiNjaWLVu2oNFoiIuL44477iiVEMaVRZX552oEBQWZfmu12mqURFAXcIWXeUVx45UppsbcXqNeXENvjFvadsG8F+bvbev5e9t6i/blxitTTO7mlLcdKi6OuZ/5/XWU5+nhvWpM+1gcxvKuCozlaiy7ysK8TjsifP0euzI4ksvevTVeG/2s67K5LJVRN4oz0CtqhbJ5ORp1Mbo52w7WFZtECnD48GEAmjRpUqbVJTExMaSlpbFs2TLS09MZOHBgFYhes/Hz8zP9vnz5cvUJIhBUE9V5JF9FTKivikn5lZGH+cKKylxcUNFTDaqbylxwUJpFVs64gf25lo7ClqUOVPRHZXUucqlNH8ilQbpmzRomTZpEu3btGDx4cJlWlzRp0oQOHTrwySef0L9//2qZ01YT6d2gKQC33XZbNUsiENQMSrvC0N61MY2qMuAq69zn4l7mxjyt8y3pnN+aQHWvhnU1SnP/rBdjuQqVbYDVVQOvJKRffvklI0aM4KuvvkIul5d5dUlsbCwajabUw791mfd6D+Xl23rz5JNPVrcoAhdDNFhloyqNmdJuQ1Hc1hllzb+sCCOqbmO9TZO1W03E2KMtcB755s2bbRxLWl3So0cP4uPjLdzGjBnDmDFjLNxGjBjBiBEjKkTQ2ohSJufh8Ns4bTYcLBAIykdVG8+u1JMiEFQUNc2YEh/NpUda3QIIBAKBQCAQCKoWYQAKBAKBQCAQ1DGEASgQCAQCgUBQxxAGoEAgEAgEghpPTVvRXt0UawDu2rWL++67j9tuu40BAwbw2WefmY6KW7RoEREREXTo0MHuGcEA33zzDREREQwYMKDiJRcIBAKBQCAQlAmHBuDRo0d5+umnadGiBYsWLWL48OHMmzePTz/91CJcQUEB27Zts5vGxo0bK1ZagUAgEAgEAkG5kTvyWLRoEW3atGHevHkA9O3bl4KCApYtW8aoUaNM4bp06cKmTZu46667LOInJSVx8OBB2rRpQ0ZGRiWJLxAIBAKBQCAoLXZ7APPz89m3bx+DBw+2cB86dChqtZpDhw6Z3GJjY9m1a5fNMHBcXByhoaG0bt26EsQWCAQCgUAgqP1cv36dbt26sW/fvgpN124P4OXLl9FoNDRv3tzCvVmzZgBcuHDB5DZ06FDeffddtm3bZtELuHHjRu644w6H59wWFBSYfl9JvExOTnaZlXCGGzduAOCVlc6NGzfs/jeGM7pZh7fn7yiMtZ/1b+O1tWzWMjsTpjgcxS8pniN5i9Pf3m/rvO3Fd5SnvTK3djMvB3vpO0rD0f2ylrO4tB3FcRTOWVms3eyVofVv8/SLKx972PMrrnyLK6fi5Crt/SuuvtnTwVH5lHS/i9PH2fK2lsHRdXHPc0nPjb3f1nHtyeZMPSvpGXW2LbBXLvb0K0+9KU53R3W+uPbOmXbGmfbdnu7FxXMUzpG8zt4be3rZC1vS81Xc/XbmWS2uPTbXuSRdHYUvzfuyuHbVnpyXLyfYyFSRpN68afptbgvZ49q1azz55JNkZmZWvCB6Oxw5ckQfHh6u//vvvy3cNRqNPjw8XL906VL9woUL9eHh4Xq9Xq8fNWqU/umnnzaFS0xM1EdEROgvXryonzx5sr5///42eezYsUMPiD/xJ/7En/gTf+JP/NXJvx07dtgzw/RarVb/448/6iMjI/WRkZH68PBw/d69e+2GLSt2h4B1Op09ZxNSqWU062HgDRs20K5dO1OPoUAgEAgEAoHAOeLj45k2bRr33HMPc+fOrZQ87A4Be3t7A6BWqy3cjQael5cXeXl5JvfBgwczc+ZM0zDwpk2bGD58eLEZd+zY0fR775HTqFSqsmkgAEAigdBGfly4moZeDxyLhz/3wj1DoGnD6havQrHRtRZTq3SN+wsuXYVH7gYvD5NzpehozOt/d4OnR8nhq4hquZ97j8Khf+HBO6B+QJVkWePqbfJNWLsRuneEyNucjlYj9Dx8HP4+CPfHQMOgMiVRI/SsQWRnZ9OzczhgaQuZ07BhQ7Zs2UKDBg0qfO6fEbsGYNOmTZHJZCQkWI6DX7p0CYCwsDBumo1hBwQE0LNnT+Li4ujYsSOnTp1i6dKlxWasUCiKLvRaw59RKLkcd6UKnU5LTrbaJq6nlw8AOdlqdDqthZ+7uxK5wg2NJp/8vFwLP5lMhtLDE71eT7badjzdQ+WFVColNycbrdZyXN7NzR2FmzsFBRrycnMs/KRSKR4qLwDUWbYrnj08PJHKZOTl5lBQoLEqBzfc3JVoCwrIzbWcBymRSFB5GozxbHWmaQ9GI0qlCplcTn5eLgUF+QajXK8FPcimvI/7rUx0e46S+/X7NjIVlWGWTY+vu9IDuVyBJj+P/Pw8Cz+ZTI7SQ4VOpyMn23b/R5WnNxKJhNwcNVqt5b1xc1eiULhRoMknz+reSKUyPFSegIMyVHkilcrIyzXcG3NdFW7uuLm52y1DqUSKh6eX4zL0UCGTGcpQo8m38JPLFbgrPdBqteTmWNZDCaAqaxnK5SiVzpWhTqe10NVYhuWq37nZaAvKVr+zszKwbv+VHp7ISqjfBafOkfvF2kJHGZLHR5jqt0RSOA+mUEdTusb6nZ+HxqoMi2sj9BcT8Xx7CQC5Mgm6Mfdb+FdnGyGRGBbZWetaWW2Ee4Ee2cTZ5Pt6orl5C8nU58zK0FC/dVotOTnFtbOlbyM8VCo8PDxAfxPrClMVbYT1vKqS2gjl9MXwz0my/9yL/qt5SNzdTf4ltRGenp4olbk29bCq2ghHZajR5JOXrYY5ywwel64g/2BKmdsIqVSKp6cnGk3ltBFabQG5OY7rd446C53esgzL2kZA9doRWm1RGVjYQmb4+fnZda9I7BqA7u7udOvWjS1btvDkk08ikUgA+P333/H29qZjx47s37/fIk5sbCwzZsygRYsWdO3alQYNGjgtxKlj+1AqlabrZs2a0bNnTzIzM9m4e6tN+IceegiArVsPWhiiAD169KB54yDOnDnDiaOHLfwaNGhAv3790Gg0rFu32Sbdu+++G6VSyc6d/3L16lULv06dOtEiNILLly9z5KjlbuN+fn4MHToUgLVrt9g86MOGDcPX15f9+09bLKABaNOmDa1bdCQ5OZnDey3T9fDwMC2s+fXXv8jJsXzo+vfvT1CQH8eOHePkyZMcN/MLjOlG86+3k5efxwkreaVSKQ888AAAv/++j7S0NAv/3r1706RxfeLj4zlx9KiFX6NGjejTpw+5ubn88ssWrBkxYgQKhYIdO/7h+vXrFn5dunShRfNWXLx4kSNHLb9o6tWrx6BBgwD47rvfbdKNjY3F29ubvXtPkZCQYKFru3btaB3anmvXrtmUoZeXF3fccQcAP//8p0XPNcDAgQMJDPTjyJEjnD592sKvZcuWtOnaldTUVLbssUxXLpdz3333AbBp0x6brY6io6Np3Lg+J06c4MS//1r4hYSEEBUVRXZ2Nut325bh/fffj0wmY9u2w9y4ccNC127dutGieRjnzp3j6NGDFvHq16/PgAED0Gq1/PCDbf0ePnw4KpWKv/8+TmJiooVfhw4diAhty5UrV2zqt4+PDzExMQD8+OMfNi/XwYMHExDgx6FD5zh79qyFX3h4OK07d+bCr6c48vpDRR5H9+Du7s4999wDGKaNWO8k0LdvXxo2DOS///7jxPHjFn4ltRHdCv9f8JehttKn+tuItVXWRkQ1DycPSO7XketDuoCZXKGhobSJjCQ9PZ24PZXTRhw/YnsyQ1W1EeaU1Ea0/uckAKdfuIeCk5Z1oqQ2AhoS4Clhy+7qayPMsWgj/j0IZs9d/UvxZW4jpAUdaNu28tqIlJQU/rCqh5ZtxN8V2kZUpx0Rn5VkE686kOitPxkL2bNnD0888QRDhgzhvvvu48iRIyxbtoyJEycyduxYFi1axOLFi4mPjwcgIyOD3r17A/Dmm28ycuRIAF5//XX2799vs1m0Wq3Gy8vwxbD38EmLIWBXttxduQewUaAXV1Oy0OXmI7//RUMPoEJG7vZVNjLV9B5Ao676OtADaK5rje0BXPkjuT9sKCq/bz+06AEM8JRwOSndYnipzD2Av2zBc95KAHKD/NCt+9jCv7p7AP089Fy5kWmha6X1ACbeQPbwy4YeQG8Vkm8/NCvDyu0BbNbAhxNnE22GDF2yBzDK8L7KblQP/aK3kAQHmvyLayMUCgWtWzTk7OWbrtkDeCMFxv2fyU++dlGZ2giJBMKa1Of6rTzRA1gBbURGRhqd24YChql1np6eNumYs2/fPkaNGsWqVavo0aNHsWFLg8ONoHv16sWiRYtYuHAhzz33HMHBwbz22muMGTPGbngfHx+io6PZuXOn6UvXWVSe3qhUlgWg14NEIkPl6WMT3tigKD3sF5peD3K5G3K5m4O4ErvpGv3dlfbnI+r1IJMpUHnadtkaZSouXTd3D9zcbecj6fUglcmL1dVD5e0wXYWbEjd3JQEBfqTlSNFr1XDLUDGlGm0JZejlMF25wh25wt2un0QiLaEMHd8bmdwNlcN7U1IZqgwGg1FXfZFfectQ4aa06yeVllQPK68MHelarvrtrgJbkZyq3x5lrN8yPXgmmvVUFKZjTNfX15ebWXobY0GvB4XCHYXDMrRzb3KLXhLK5DRTXtZxq6uN8Pf351a2xK6uFd5GSAw9G27patzS1TZlodeDpJLqt1RqqN/2uhgqu41wc1C/HZWhEdXVmyBT2i0ne21E4eBYtbYRDtOVuyGXuYP5c6f0LFMbIZEYepv1qXmV1kZIpcXXb6XKcRmWuo0wT7ea7AhXwKEBCIZuW+vNoI288MILvPDCCxZuy5Ytswk3e/bscognKBMaTclhBAJB7ceqd0jgBLWp/cyvRboIKhyHZwELajDioRcIBAD5xW8yK7BDbWo/a5MuggpHGIC1EfHQCwQCqF29WVVFbWo/xf0XFEOxQ8CCGop46AUCAdQuY6aqqE3tp7j/tYIePXqYFtxWJKIHsDZi/dCLeUACQd1EGAClpzaVWW3SRVDhiB7ACmD3rh38+P1qLl08j0KhoHPXHowZ9zz1AutXet6a/Hy+XfMF2//4nfS0VLx9/OjTtjOPoMPDaN/na8BDVumyCAQO0RZ/vGSFIo4qKKI29WZVFbXJaLK+/4ZlsdUji8DlED2A5WT9z2tZsnAu/xv1FN/+9DuffvkDHioVr098Fk1+fskJlAOtVsu0Nydy7J/D/N+M2Rw+fJg585dwLfkak3zSyDfuxqQRE8EF1UxVGiK16QVeXkRZlJ7aZDRb3/8C8S4QFCF6AMtBTk42X3z6Ma9PfYcu3QybM3p6efHMC6/y/uzp/L7pV+I2/IyHypPLCRf4aOlKbqXe5NOlH5GQcJ4GDRoxZtzzdOnWE4BVXyzj9w2/ANCmXUdemjgFbx9fdu34g5WfLSEjI4MmTZvzzPMTaRnemp07tnIp4TwrVv2Ih4cSqVRKg4aNeP2BJ3nu2Ev8pswhRCtj+bOjWLF6nUnuZ556hFFPjKdXVD9++uEb1v/8PTk5OfToGc345yfg4aFi/pyZaDT5/HvsCOERbXjrbdvj5AQCp6lKQ0QYPUWIsigZqw2aa1WZWeuSrwEHR48J6h6iB7AcnDx+DL1eR9fuPS3cZTIZk998m6bNQjl/7gz33j+Sz1evw83NnTcnv0jMnffy3U+befyp53h3+htcSbzE6VMn+POPzSz74ju++PpnNBoNv/36I1qtlgXvv8OUabP47qfNdIvsxeefGk42OLBvN917RFkcowcg1+rok+/OPkUeXTRuZGVmcO6s4QijSxfPczPlBt0ie7P9j9/Z8OuPvDt3EZ+vXkd2TjaffbLIlE78qeMsXfE1r74+vXILUlD7qcqXam3qwSkv1mVRIOYD22DPSKotWN//2qSboNwIA7AcZGSk4+Xlg0zmuCPVzc2dXlH9UHl6sW/PLpo3D2PQ0DuQyeR0i+xFZM8o/vpzKx4qFWm3UtmyaT03U1KY9s77jHx0DDKZDJWHJ5t++5kz8Sd5cORo3ptnMNLSbqXi5+dvm6lGg79Oxi2pDjkSorv1ZuefhrMQ/9rxB1F9+qNQKPhj8wbuf+hRGjYKwcNDxagnnuaPzRtMx0l17hKJt48vKk/7O7ALBE4jhoCrB+uyEMaxLdZlUpumzFjvA1mbdBOUG2EAlgM//3pkZmbYnPcHkJ6eBoCvnz+Swkm36em3CApuYBEuKLghKTeSadK0Oa++MYM9u/9i3OMP8OLTozhz2nBA+czZH3Ir9SZvTHqOx0fezR+bNxbmH0DKjWRbwfI1pEi1+OoMt7d/t97s+usPAHb+uZXbBwwB4EZyEsuXfMgDdw3kgbsG8spzT6DT6Um7lQqAf0C9cpaQQFBIlQ4Bi5ecidrcu1VR1OYyqs26CcqNMADLQZu27ZHJZBw+uM/CXavV8vKzj5OcdN1k/AEE1g8iOem6Rdjr16/i5+dP6s0UgoMbMO/DT/hm3e907NSVRfNnkZuTQ2ZGOv83Yw7frtvMk0+/wIJ575CVlUmPXn04sH83mZmWB6NrcnLY6ZZHD43hDMO2TVpQUKBlx7bNZKvVdLitC2Aw8F6e9H+s/fUP1v76B1//GMfHn67Bzz/AkJBYLSaoKKqy50n0chVh3eMjDABbarORJIaABcUgDMBy4O6u5NHHx7Fw/iyOHjmITqcj7VYq8+fOxM3NHV8/P4vw3SOjuHw5gT82b0SrLeDg/j3s37OTqL79uXjhHNPfnMj1a1dRqTxRenjg5e2LVqtl+psTOXRgLwqFAh8fP9yV7ri5udGn30Bahbdm+psTOX/uNFqtlqtXLvPuhq9x08PwXMNh1JKCAvr1H8xnyxfR5/ZBSKWFPYMDh/HDd19xIzmJgoICvvxsCe9On1zVxSioC4hFINWDGAIuGZth0lpURuL+O4emAFLTqu7vVjoBEgV+kupdhytWAZeTe+8fiUrlyYqlH3L9+lXc3dzp0q0n781bzJXESxZhfXx9mfHufJYvXcCShfOoHxTMa2++TYuwcABi7xrBqy+NJVutplVEG15+9U08vbx47c2ZLF+ygBvJSdQPCuaNqe/h5uYOwFtvv8/ab77kvRlTePVmCt4+fkQFNuG1DH/cKezBy9dw+8ChrP12FbcPHGqSZ0jMcNLTb/HaK+PJzMygVXgb3pw+x6LXUiCoEKxfsjodSCvp+9P6pVeZebk6tbl3q6Kozb1k4v47xx+7Yf5nVNWbT4WerY16o9fpyN2yB897BlVRzpYIA7ACGBp7F0Nj77JxrxdYn5Vf/2zh1qZdBxYs/txuOiMfHcPIR8fYuPfs3ZeevfvajaNQKHhk1FP8b/RTtGjsx/kraeg/Wws7LxYFytcQ2qIlG/+wHKqWSCQ8OHI0D44cbZPuhMlv2c1PICgT9l6ySveqyUtTAO5ulZOXq1ObjZuKojYbSeL+O8e+o7hHNMf3xf9VTX56PW5pt8h651MKziVWTZ52EAZgbcR63o/o9hdUN/aGoirLALT3Qq+rBqAYAiyZ2lxGtVm3ikJTgOTIcVRP3YdH325VkqVer0eWnITerXpNsDo6LlLLsXkBilWRgmqmKntZxEuviNrcu1VR1OZeMnH/S+a/eMjJRdmnq4XzsX/+4b4RI+jWtQuPPfooly5dsomq0+mYNes9evfqSZ/oKFas+NQpP1eh5vQAbtkFS9eAOqdy8/H0gGcehcFRlZtPZSIeeoGrUZUv2dr8Qi8tNmUhPgZtqM0fDOJZKJm9R5EH1UMR0dzklJeXx4svvsCk1yYzePBgVqz4lFcnTuD7tT9YRF2zZjXH/vmHjZviSE9PZ+xTTxIW1pL+/fsX6+cq1BwD8Mt1cKGKxspXravZBqDNHCjx0AuqmarslRYfQEWIsiiZ2lxGtdm4rSj2/4NHn64Wix/379uHr68vd9xxBwDjxz/NV6tWcfbsWVq2bGkKt+G3DTwxZgx+fn74+fnxyCP/Y/2vv9K/f/9i/VyFmmMAjr4Plq6umh7AUSMqN4/KpoIbtC1xv7H6y+VkZWbSK7ofL7zyOu7uSptw6Wm3+GDODI7/+w/+AQE8/fyrdIvsVaKfoA5QlS8iMQe2CGEAlExt7iW11qU26VYRXLmO5EoSyn6Wc//OXzhPaIsWpmuZTEaTJk24cOG8hQF44cJ5WrQINV03D23OL7/8XKKfq1BzDMDBUTW7V64yuXQV/aWrqOt5or+phitJlv6nL8DOg2VK+ty1y3z21WJmjX6RYL96zPnhc1a9PYOxQ++zCbvw2+U08PZl6sRZ/HMhnrkz3uCT59/C38unWL/SopdQpKu+TGrVGKpF10A/wybgN25VXJpZ2ZbX+/+BazcAJ3QsrTw2eR2DqzdKLXJlUO776a0CX29ITCo5LECKVZn9Gw8KRRkyLh3VUm9lUmjRBM4klC7e8TOW18k3i28v/X0Mi4qup7h+W3Tdqt6fPAcBfqVOpsx6SoCWzeDcJdC5YAHtPoRELsO9U2vIK/wQkEvJycnBQ2nZyaFUKsnNybVwy8nJQan0MAvjQU5hmOL8XIWaYwC6IEcO7WfFso+4fu0qzZq34KVX36RZ8xbEDuxB7PAR/LV9C8+99BrtO3Zm2eIPOHb0EJ5eXtx51/3c+8AjSCQSdu34g5WfLSEjI4MmTZvzzPMTaRnemoSL5/nw/XdIvJRAvcD6PPTI4/QfNAyArb9v4Ns1X5CRnkZ4wyY8e+A6jXRyHvJJ5Z5cFf3zDRV3lyKXbz2yWfzTZq79somPPTM5LdNQTyflqRwvumrcSZJqmeBzi7YFCv6R5zMty5d2BUUrJnd4ZNFXoif03RUAPCrT8Jb3CcZu+M+iLHLQsc8/hTVpgSh+P0U3oK2Xlr9nvMvAPKVDvzvzVGUq++slB6k11Epd51lOiK5UHecur8zUS0213s+VPxr+qoAaW29PnoUXZzgdvEbp+d1vhr8yUKP0dBapFOXgXkg1GoueYKXCjdzcPIugubm5qFSW7yulUklebq5ZmBxTmOL8XAWxCriMpKbe5J3pk3lk1FOs/fUPeve5nbnvTjX5u7m5sWbtRnr07svb0ybj4+vHqu/WM3PWR/z264+Fp4FoWfD+O0yZNovvftpMt8hefP7pxwB8vnwRtw8Yytpf/+C5lyezZOE8cnNzObDvb1Z8spDXpsxkzQ+baFu/MdO909Gg5/Y8JTvdiircX2553J7vjhY9073T6KhR8HVaIE9nezPHM4NkqRaAW1IdbTUKVqUF0rrAsncgUVZAE63MdB2ilZEu1ZMp0VmEuyrT4qWX4KuXWoRNlGmL9RMIBAKBoFqQSpB62RplLZo152LCRdO1Vqvl0qVLNA8NtQgX2qKFRbiLFy4SGtq8RD9XQfQAlpGD+/6mRVg4UX0MEzrvHvGw6YxdgD79BqFwc+PGlcucO3OK2R8swd1dSUiTptz/0KNs27qJQUPvQOXhyabffmbw0Dt5cORo00bQKk8v9u3ZSeOQptzWqSvf/bwFqVTKn39sZljs3YS3bgvAw1OnsemBfZwe0p+7Ggaz6pulZD/8AFK5nEM/LWXcsJGczs4ke/cGHnxkLAC3AV33bGSHX336Ng2H3z6n38iRKD28bPTM/fMH3Ju2hhbtAXDX6+H7D8kbdQ/eKu+icDeu4L53E4ws2kjT/d/dZOWoyQ1t69CPyMGlL3wJ+PsouZWR65rDLhVJVeqq1cLyby3dnnoIFBXUTCjdwU0BGVmW7o50LCiAT78rmzyO8qpuynM/V62znAP9QAwEBpQcz00BKg9Iyyg5bEVR1c/ojn1w4mzRdWRH6NqhdGn4+UB2TvFzpj/5xnCyjJHRI/Bv6O/abZFcBj5ekJpe9jTKcj/3HoUjx4uuO7aGqK4Og1cLR0+Sc+A/9AoFEmO7IpcRGRXFzRnT+eWXn4mJiWXFik9p0qQJYWFhFtFjYmJZ8ekKOnfuglqt5uuv1/D6G1NK9HMVhAFYRm7dSiUwsL7pWqFQENG6nenaP6AeAOlpafj4+qE0m08QFNyQlBvJAMyc/SFrvvyUNyY9h8rDk8efepaBQ2J59sVJfPnZUj56/13U6ixih9/LE2OfJz39Fu063GZKS+qmILBJE1J6dSD8sQdpc2Ive8PrI1coCGvTjsCXx3Liz63c2v4DD/xWNOym1Wrx6dIRHhgOv32O/4tPGuZZWeF+6SB53W6Dex4AIC8nG77/EOVTD4NXkQHofvoUeYc2w7iHTW55y5Lw0GpxHxzr0M/czVkkEgho7EfalTT0rtroVhBVqqs9A3DcQ5U+Z8yhjgVaWwNw3MMVZ5BWA+W6n79ssTQAH7oDwppVqHwVRZU/o7fSLQ3Anp3hifsrPp8vfgDzocHHRxDQvlmtb4vKdD+1WksDsEu7MrX3lUr8BXQvTif/bALu3dqbnJXA0mXLmDFjOu+8/TatW7fhg/kLALhr+J2MGzeeO4cP59FHH+VGcjL33nMPoGf0448zYMAAgGL9XIWa25JWM4GBQRw6sNd0XVBQwBeffszoJ58GimypwPpBZKSnkZuTg9LDMCE06fpVfP38yc3JITMjnf+bMQeNRsPfO7fx/qwZ9Ojdh4sXzvHk+Bd4/uXJxJ86zsz/e5UOHbsQGBhEclLRbAydTseN5CT8/Aw9AbcPHMLuXX8ilcnoN2AIYDBGG4c04ZMvil6mN5KT8FCpUGdlFspr/xTEkCbNLM40TrycgL9/AF5mxh9Ao8YhqLMyycxIx9vHtzDsJbr36F2sn8CFkMkME+m1Zj0c8mpsIuQywxm+xh4XicTgVldxszLEq2AxR43BumysrysyH3MDsLLyqQ1U1T0pD62aoffzJWfnYQsDEKBdu3Z8//1amyi/ri+aQymXy5n02mtMeu01m3DF+bkKYg5gGekW2YuL58+yb/dOdDodv677jn//OYSbm+XxVvWDgmnTriMrPllIXl4uiZcv8eP3a+jXfzBarZbpb07k0IG9KBQKfHz8cFe64+bmxsoVS1j77Sq0Wi0BAYEAePn4cPugYcRt+JnT8SfRaDR8u/pzpFIpbdt3BCC6zwCO//cPx44cpE/fgQC0btOegoICNv32k2EuQ8IFXn72cY4c2l+inn37D+LPbZs5e/oU2dlqVq9cTr8BQ23CqTy96BbZmy8/X0Z+fh6HDuzl+L9H6RV9e7F+AhfD3KhwU9jtFa5SzI9KcgV5qhNrg88VX6jVRVUZxzXBqHEVakJ9lUqhewdydhyobkmqBdEDWEZ8/fyZOnMuy5d8yLzZ0whrGcHrU9+1G3bym2+zZOE8Rj00HDc3d+64+z7uuOs+JBIJr705k+VLFnAjOYn6QcG8MfU93NzcefnVN1n4wXs8uG4QSqUH99w3knbtDUO/Y8Y9z9x3p3Ir9SatwlvzzuyPcHMzrNz19PKiXYfb0ORr8PE19LYpFAqmv/sBSxd9wBeffoy7Usk9942kT7+BJF2/WqyercLbMPaZl3hv5hQyMtLo0auPqZczOek6T495mGWff0tQcANemjiFhfNn8b/7Y/HzD2Dy/71DQOFQeHF+AhfCvIfDFRpshQJy84t+12WE8eGYqjI2rPOpzh5yV6em9Fj36Ixmyy4KEpOQhwRXtzRViqi95aDDbV1Y9MkqG/eNf+yzuK4XWJ+pM+faTaNn77707N3Xxr1J0+bM+8j+9hVDYu5iSMxdDuX6v+lz7Kb33rxFNu7BDRrZyGvNwMGxDBwca+MeFNyAdRv+NF37+Qfw1tvz7KZRnJ/AhTBvtF2hwXZT2P9dF6kpL9TqoCqHgM1+O5o6I6DmfLB0bQcyObk7D+E10vY9V5sRBqBAICjCegi4urGQp443VzVhSK26qI4hYFH+xVNT6qvKA337VuRs34/HoKo5nUqPHv3N9GrfHLuOt6gCgcACV3vBuVqPZHViY+SI5ttElQ0Bm5V5Xa+PJVGTeqx7dCJn+TdcGTimavLTQ3a2Gp1Oh9TPdvu1qkK0IAKBoAgLg8sFmgdXM0irE2v9pWINnwmb4cZKqrvm+cjq8Ip0Z7C+B678/A6ORt+4QZVll5uXy/gnHkYLbH3QdlFlVeECLbxAIHAZFFarbqsbVxuSrk5cuQelurE2NqpqFbDAMTa9si5sbvh4Qc9OVZadLlvNbo1hY25JNX7IiU9IgUBQhMLFejjM9/1zBXmqE1d+gVY31bUKWOCYmjQEXEcRBqBAICjC1RY1mq+yrOsrLkXvk2OqYxWwoHhqyirgOowwAAUCgaAmIHpQHFNVvU2uMC+2plBTVgHXYYQBKBAI7ONqh5u6mjxVjXiBOqbKjI063gtdGsQQsMsjDECBQCCoCQgD0DFiixzXQwwBuzzCABQIBIKagDh2zDHC2HA9xBCwyyMMQIFAIKgJiH3/HGNtbIjhxupHDAG7PKJFEQgEAkHNRvQAuh7inrg8wgAUCAQCQc1GzAF0PazvgTAAK5Vt27YRERFRqjjCABQIBAJBzcba2BDD5dWPMMqrjH379jFx4sRSxxNPiUAgEAhqNqJ3yfWwPrlH3KMKJysriwULFvDEE0/g5uZW6vjCABQIBAJBzUYYF65PXT/KsRL44Ycf+P7773nrrbd49NFHSx1fGIACgUAgqNmILXIEdZABAwawbds2Hn744TLFd4mnJludCXqt6Voul+OuVKHTacnJVtuE9/TyASAnW41Op7Xwc3dXIle4odHkk5+Xa+Enk8lQenii1+sNeVrhofJCKpWSm5ONVltg4efm5o7CzZ2CAg15uTkWflKpFA+VFwDqrAzbdD08kcpk5OXmUFCgsfBTKNxwc1eiLSggNzfbwk8ikaDy9DaVkd7qJASlUoVMLic/L5eCgnxSU3Vkq7PQ60EuV+Cu9ECn1ZKTU1wZZqHT6Sz83JUeyOUKNPl55OfnWfjJZHKUHip0Oh052Vk26ao8vZFIJOTmqNFqLe+Nm7sShcKNAk0+eVb3RiqV4aHyBByUocoTqVRGXq7h3pjrqnBzx83N3W4ZSiVSPDy9HJehhwqZzFCGGk2+hZ+xDLVaLblWZSgBVGUtQ7kcpdK5MtTptBa6GsuwXPU7Nxttgf36rXGTkxdS3+AY6INEnWFRv7OzMrA+j0Pp4YmspPqtLSA3x379lkggPT2dbHWGxWEfSqUKKZDvo0Lj4wn1vJCoDXWjprYREgncunWrsC6apetEG1Egg1zjvQEk6oxStRGO6ndltBEeKkP9tr6nUHlthFIuQ1qgJa+eN1q1pX9FtRH5fh5gvAf+Prjl5QB+duthVbURjsqwItsIiQRyctyRSCjxHWjeRugLy0qZdAu5hDK3EQA56ix0essyNNXv/Dw0VmXoym2EVquxiWdOdnY2v/zyi0P/oKAgBg4cSNOmTYtNpyRcwgA8dWwfSqXSdN2sWTN69uxJZmYmG3dvtQn/0EMPAbB160Fu3rxp4dejRw+aNw7izJkznDh62MKvQYMG9OvXD41Gw7p1m23Svfvuu1Eqlezc+S9Xr1618OvUqRMtQiO4fPkyR47usfDz8/Nj6NChAKxdu8XmQR82bBi+vr7s33+aCxcuWPi1adOG1i06kpyczOG9lul6eHhw1113AfDrr3+Rk2P50PXv35+gID+OHTvGyZMnOW7mFxoaSpvISNLT04nbY5muVCrlgQceAOD33/eRlpZm4d+7d2+aNK5PfHw8J44etfBr1KgRffr0ITc3l19+2YI1I0aMQKFQsGPHP1y/ft3Cr0uXLrRo3oqLFy9y5Og+C7969eoxaNAgAL777nebdGNjY/H29mbv3lMkJCRY6NquXTtah7bn2rVrNmXo5eXFHXfcAcDPP/9JXp5lIzFw4EACA/04cuQIp0+ftvBr2bIlbbp2JTU1lS1WZSiXy7nvvvsA2LRpDxkZli+c6OhoGjeuz4kTJzjx778WfiEhIURFRZGdnc363bZleP/99yOTydi27TA3btyw0LVbt260aB7GuXPnOHr0oEW8+vXrM2DAALRaLT/8YFu/hw8fjkql4u+/j5OYmGjh16FDByJC23Iqpicn67sXeRzdg4+PDzExMQD8+OMfFFgZj4MHDyYgwI9Dh85x9uxZC7/w8HBad+5MSkoKf1iVobu7O/fccw8AGzZsICvL8kXXt29f3If15r//fLgWG2mSB2p6G7G2TG1EQrdwjkT4FXkc3VPqNsKcqmgjjh+xTBcqr41o7+eFMiWdK3f0JNWq/CusjegbDn3DTX4tb10FGhLgKWHL7uprI8yprDZCWtCBtm3bcuXKFZv67bCNeN3wHLaZ/R0dG5e3jfjbbhvRsGEg//33HyeOH7fwc+U2Ij4rySaeORkZGUyfPt2hf2RkJAMHDiw2DWeQ6K0/d6qIrKwsvL0Nlv32vw/h4aEy+Rksd49Cyz3bJq6nV+EXQXa2Hcvd3cxyt/4ylaH0UBVa7rZfVYZeJim5OTl2LHc3s6976y9TqdmXqZ0vAg9V4dd9roOvH+OXqWXjbfj6MX6ZZtn5uvco/LrPo6Agn4b1PLl2U23WA6gs/LovrgzVdr5MlWZfppa9BoYeQI/CL1PbryqVp1fhl2m2nS9Td7Ove8t7Y/i6N9QBu2WoUhX2ABrujbmuCjc3s697qy9TiRQPT0/HZejhUfh1n+egh0RZ2ANo9WUKqMpahnI5SqVzZajTaS10NZZhuep3bo6dHkBD/daos8lb8hWghzH3I3F3t6jf2VmZdnoAVYU9gMXUb20BuTn267dEAv4qCYnJ1j2AHkgLtOS//ykad0WhPIaJzjW1jZBIwFep52pKllUPYMltRIFGQ+4X30FSCoy+D0mAX6naCEf1uzLaCA+VB02DfTh57oqdHsDKaSOUe/5Bum4LeaPuQtsh3MKvotqI/NwcWPkjZOfAmAdw8/MlIrQB5xJv2tTDqmojHJVhRbYREgm0CAkkKS0Pjab4d6B5G6E/egLidqAc1Bf57T3L3EYA5KjVdnoAPcx6AK3rt+u2EZkZ6fTu1g6AzMxMvLy8bNIpLYsWLWLx4sXEx8c7HafaDMDk5GSCg4OrI2uBQCAQCASCaicpKYmgoKByp1MWA1AsAhEIBAKBQCCoY1TbHMDAwECSkgzj4CqVColEUl2iCAQCgUAgEFQJer2e7MJh6cDAwGqTo9oMQKlUWiHdngKBQCAQCAQ1iYqY91deqm0OoEAgEAgEAoGgehBzAAUCgUAgEAjqGMIAFAgEAoFAIKhjCANQIBAIBAKBoI4hDECBQCAQCASCOoYwAAUCgUAgEAjqGMIAFAgEAoFAIKhjCANQIBAIBAKBoI4hDECBQCAQCASCOoYwAAUCgUAgEAjqGMIAFAgEAoFAIKhjCANQIBAIBAKBoI4hDECBQCAQCASCOoYwAAUCgUAgEAjqGMIAFAgEAoFAIKhjCANQIBAIBAKBoI4hDECBQCAQCASCOoYwAAUCgUAgEAjqGMIAFAgEAoFAIKhjCANQIBAIBAKBoI4hDECBQCAQCASCOsb/Aw2xS7i1UVr3AAAAAElFTkSuQmCC",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[32m***** Response from calling tool (call_BGrbFbvat6Vi5X4XNyp5Yb1p) *****\u001b[0m\n",
+ "None\n",
+ "\u001b[32m**********************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "Optimize the fast/slow parameters based on this image
. TERMINATE\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "########## Optimize the fast/slow parameters based on this image
. TERMINATE\n",
+ "\u001b[33mUser_Proxy\u001b[0m (to Trade_Strategist):\n",
+ "\n",
+ "Optimize the fast/slow parameters based on this image . \n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[31m\n",
+ ">>>>>>>> USING AUTO REPLY...\u001b[0m\n",
+ "\u001b[33mTrade_Strategist\u001b[0m (to User_Proxy):\n",
+ "\n",
+ "The new backtest result image shows the performance of the trading strategy with a 15-day SMA as the fast moving average and an 80-day SMA as the slow moving average. The chart displays the buy and sell signals, and the performance metrics indicate a final cash and portfolio value, which reflects the strategy's ending balance.\n",
+ "\n",
+ "From the chart, it appears that the strategy is still generating a mix of profitable and unprofitable trades. The goal is to maximize the number of profitable trades while minimizing the losses from unprofitable ones.\n",
+ "\n",
+ "To further refine the strategy, we could consider the following adjustments:\n",
+ "\n",
+ "- Shorten the fast SMA even more to increase sensitivity to price movements and potentially generate earlier signals.\n",
+ "- Adjust the slow SMA to find a better balance between trend confirmation and the lag of signals.\n",
+ "\n",
+ "4. Let's test a slightly more responsive strategy by using a 10-day SMA for the fast parameter and a 50-day SMA for the slow parameter. This should provide quicker entries and exits while still allowing us to capture medium-term trends. Please run the backtest for the SMACrossover strategy with these new parameters and report the results back for further analysis.\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "Reflecting strategist's response ...\n",
+ "\u001b[34m\n",
+ "********************************************************************************\u001b[0m\n",
+ "\u001b[34mStarting a new chat....\u001b[0m\n",
+ "\u001b[34m\n",
+ "********************************************************************************\u001b[0m\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "Message from Trade Strategist is as follows:The new backtest result image shows the performance of the trading strategy with a 15-day SMA as the fast moving average and an 80-day SMA as the slow moving average. The chart displays the buy and sell signals, and the performance metrics indicate a final cash and portfolio value, which reflects the strategy's ending balance.\n",
+ "\n",
+ "From the chart, it appears that the strategy is still generating a mix of profitable and unprofitable trades. The goal is to maximize the number of profitable trades while minimizing the losses from unprofitable ones.\n",
+ "\n",
+ "To further refine the strategy, we could consider the following adjustments:\n",
+ "\n",
+ "- Shorten the fast SMA even more to increase sensitivity to price movements and potentially generate earlier signals.\n",
+ "- Adjust the slow SMA to find a better balance between trend confirmation and the lag of signals.\n",
+ "\n",
+ "4. Let's test a slightly more responsive strategy by using a 10-day SMA for the fast parameter and a 50-day SMA for the slow parameter. This should provide quicker entries and exits while still allowing us to capture medium-term trends. Please run the backtest for the SMACrossover strategy with these new parameters and report the results back for further analysis.\n",
+ "\n",
+ "Based on his information, conduct a backtest on the specified stock and strategy, and report your backtesting results back to the strategist.\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "\u001b[32m***** Suggested tool call (call_CmOF8aT5DDj7M7qpeNv1JEBZ): back_test *****\u001b[0m\n",
+ "Arguments: \n",
+ "{\"ticker_symbol\":\"AAPL\",\"start_date\":\"2022-01-01\",\"end_date\":\"2022-12-31\",\"strategy\":\"SMA_CrossOver\",\"strategy_params\":\"{\\\"fast\\\": 10, \\\"slow\\\": 50}\",\"save_fig\":\"test.png\"}\n",
+ "\u001b[32m**************************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[35m\n",
+ ">>>>>>>> EXECUTING FUNCTION back_test...\u001b[0m\n"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "[*********************100%%**********************] 1 of 1 completed\n"
+ ]
+ },
+ {
+ "data": {
+ "application/javascript": "/* Put everything inside the global mpl namespace */\n/* global mpl */\nwindow.mpl = {};\n\nmpl.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(\n '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\nmpl.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 = document.createElement('div');\n this.root.setAttribute('style', 'display: inline-block');\n this._root_extra_style(this.root);\n\n parent_element.appendChild(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 (fig.ratio !== 1) {\n fig.send_message('set_device_pixel_ratio', {\n device_pixel_ratio: fig.ratio,\n });\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 fig.ws.close();\n };\n\n this.ws.onmessage = this._make_on_message_function(this);\n\n this.ondownload = ondownload;\n};\n\nmpl.figure.prototype._init_header = function () {\n var titlebar = document.createElement('div');\n titlebar.classList =\n 'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n var titletext = document.createElement('div');\n titletext.classList = 'ui-dialog-title';\n titletext.setAttribute(\n 'style',\n 'width: 100%; text-align: center; padding: 3px;'\n );\n titlebar.appendChild(titletext);\n this.root.appendChild(titlebar);\n this.header = titletext;\n};\n\nmpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._init_canvas = function () {\n var fig = this;\n\n var canvas_div = (this.canvas_div = document.createElement('div'));\n canvas_div.setAttribute('tabindex', '0');\n canvas_div.setAttribute(\n 'style',\n 'border: 1px solid #ddd;' +\n 'box-sizing: content-box;' +\n 'clear: both;' +\n 'min-height: 1px;' +\n 'min-width: 1px;' +\n 'outline: 0;' +\n 'overflow: hidden;' +\n 'position: relative;' +\n 'resize: both;' +\n 'z-index: 2;'\n );\n\n function on_keyboard_event_closure(name) {\n return function (event) {\n return fig.key_event(event, name);\n };\n }\n\n canvas_div.addEventListener(\n 'keydown',\n on_keyboard_event_closure('key_press')\n );\n canvas_div.addEventListener(\n 'keyup',\n on_keyboard_event_closure('key_release')\n );\n\n this._canvas_extra_style(canvas_div);\n this.root.appendChild(canvas_div);\n\n var canvas = (this.canvas = document.createElement('canvas'));\n canvas.classList.add('mpl-canvas');\n canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'pointer-events: none;' +\n 'position: relative;' +\n 'z-index: 0;'\n );\n\n this.context = canvas.getContext('2d');\n\n var backingStore =\n this.context.backingStorePixelRatio ||\n this.context.webkitBackingStorePixelRatio ||\n this.context.mozBackingStorePixelRatio ||\n this.context.msBackingStorePixelRatio ||\n this.context.oBackingStorePixelRatio ||\n this.context.backingStorePixelRatio ||\n 1;\n\n this.ratio = (window.devicePixelRatio || 1) / backingStore;\n\n var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n 'canvas'\n ));\n rubberband_canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'left: 0;' +\n 'pointer-events: none;' +\n 'position: absolute;' +\n 'top: 0;' +\n 'z-index: 1;'\n );\n\n // Apply a ponyfill if ResizeObserver is not implemented by browser.\n if (this.ResizeObserver === undefined) {\n if (window.ResizeObserver !== undefined) {\n this.ResizeObserver = window.ResizeObserver;\n } else {\n var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n this.ResizeObserver = obs.ResizeObserver;\n }\n }\n\n this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n var nentries = entries.length;\n for (var i = 0; i < nentries; i++) {\n var entry = entries[i];\n var width, height;\n if (entry.contentBoxSize) {\n if (entry.contentBoxSize instanceof Array) {\n // Chrome 84 implements new version of spec.\n width = entry.contentBoxSize[0].inlineSize;\n height = entry.contentBoxSize[0].blockSize;\n } else {\n // Firefox implements old version of spec.\n width = entry.contentBoxSize.inlineSize;\n height = entry.contentBoxSize.blockSize;\n }\n } else {\n // Chrome <84 implements even older version of spec.\n width = entry.contentRect.width;\n height = entry.contentRect.height;\n }\n\n // Keep the size of the canvas and rubber band canvas in sync with\n // the canvas container.\n if (entry.devicePixelContentBoxSize) {\n // Chrome 84 implements new version of spec.\n canvas.setAttribute(\n 'width',\n entry.devicePixelContentBoxSize[0].inlineSize\n );\n canvas.setAttribute(\n 'height',\n entry.devicePixelContentBoxSize[0].blockSize\n );\n } else {\n canvas.setAttribute('width', width * fig.ratio);\n canvas.setAttribute('height', height * fig.ratio);\n }\n /* This rescales the canvas back to display pixels, so that it\n * appears correct on HiDPI screens. */\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n\n rubberband_canvas.setAttribute('width', width);\n rubberband_canvas.setAttribute('height', height);\n\n // And update the size in Python. We ignore the initial 0/0 size\n // that occurs as the element is placed into the DOM, which should\n // otherwise not happen due to the minimum size styling.\n if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n fig.request_resize(width, height);\n }\n }\n });\n this.resizeObserverInstance.observe(canvas_div);\n\n function on_mouse_event_closure(name) {\n /* User Agent sniffing is bad, but WebKit is busted:\n * https://bugs.webkit.org/show_bug.cgi?id=144526\n * https://bugs.webkit.org/show_bug.cgi?id=181818\n * The worst that happens here is that they get an extra browser\n * selection when dragging, if this check fails to catch them.\n */\n var UA = navigator.userAgent;\n var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n if(isWebKit) {\n return function (event) {\n /* This prevents the web browser from automatically changing to\n * the text insertion cursor when the button is pressed. We\n * want to control all of the cursor setting manually through\n * the 'cursor' event from matplotlib */\n event.preventDefault()\n return fig.mouse_event(event, name);\n };\n } else {\n return function (event) {\n return fig.mouse_event(event, name);\n };\n }\n }\n\n canvas_div.addEventListener(\n 'mousedown',\n on_mouse_event_closure('button_press')\n );\n canvas_div.addEventListener(\n 'mouseup',\n on_mouse_event_closure('button_release')\n );\n canvas_div.addEventListener(\n 'dblclick',\n on_mouse_event_closure('dblclick')\n );\n // Throttle sequential mouse events to 1 every 20ms.\n canvas_div.addEventListener(\n 'mousemove',\n on_mouse_event_closure('motion_notify')\n );\n\n canvas_div.addEventListener(\n 'mouseenter',\n on_mouse_event_closure('figure_enter')\n );\n canvas_div.addEventListener(\n 'mouseleave',\n on_mouse_event_closure('figure_leave')\n );\n\n canvas_div.addEventListener('wheel', function (event) {\n if (event.deltaY < 0) {\n event.step = 1;\n } else {\n event.step = -1;\n }\n on_mouse_event_closure('scroll')(event);\n });\n\n canvas_div.appendChild(canvas);\n canvas_div.appendChild(rubberband_canvas);\n\n this.rubberband_context = rubberband_canvas.getContext('2d');\n this.rubberband_context.strokeStyle = '#000000';\n\n this._resize_canvas = function (width, height, forward) {\n if (forward) {\n canvas_div.style.width = width + 'px';\n canvas_div.style.height = height + 'px';\n }\n };\n\n // Disable right mouse context menu.\n canvas_div.addEventListener('contextmenu', function (_e) {\n event.preventDefault();\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\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'mpl-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\n continue;\n }\n\n var button = (fig.buttons[name] = document.createElement('button'));\n button.classList = 'mpl-widget';\n button.setAttribute('role', 'button');\n button.setAttribute('aria-disabled', 'false');\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n\n var icon_img = document.createElement('img');\n icon_img.src = '_images/' + image + '.png';\n icon_img.srcset = '_images/' + image + '_large.png 2x';\n icon_img.alt = tooltip;\n button.appendChild(icon_img);\n\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n var fmt_picker = document.createElement('select');\n fmt_picker.classList = 'mpl-widget';\n toolbar.appendChild(fmt_picker);\n this.format_dropdown = fmt_picker;\n\n for (var ind in mpl.extensions) {\n var fmt = mpl.extensions[ind];\n var option = document.createElement('option');\n option.selected = fmt === mpl.default_extension;\n option.innerHTML = fmt;\n fmt_picker.appendChild(option);\n }\n\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n};\n\nmpl.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\nmpl.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\nmpl.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\nmpl.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\nmpl.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], msg['forward']);\n fig.send_message('refresh', {});\n }\n};\n\nmpl.figure.prototype.handle_rubberband = function (fig, msg) {\n var x0 = msg['x0'] / fig.ratio;\n var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n var x1 = msg['x1'] / fig.ratio;\n var y1 = (fig.canvas.height - msg['y1']) / fig.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,\n 0,\n fig.canvas.width / fig.ratio,\n fig.canvas.height / fig.ratio\n );\n\n fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n};\n\nmpl.figure.prototype.handle_figure_label = function (fig, msg) {\n // Updates the figure title.\n fig.header.textContent = msg['label'];\n};\n\nmpl.figure.prototype.handle_cursor = function (fig, msg) {\n fig.canvas_div.style.cursor = msg['cursor'];\n};\n\nmpl.figure.prototype.handle_message = function (fig, msg) {\n fig.message.textContent = msg['message'];\n};\n\nmpl.figure.prototype.handle_draw = function (fig, _msg) {\n // Request the server to send over a new figure.\n fig.send_draw_message();\n};\n\nmpl.figure.prototype.handle_image_mode = function (fig, msg) {\n fig.image_mode = msg['mode'];\n};\n\nmpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n for (var key in msg) {\n if (!(key in fig.buttons)) {\n continue;\n }\n fig.buttons[key].disabled = !msg[key];\n fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n }\n};\n\nmpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n if (msg['mode'] === 'PAN') {\n fig.buttons['Pan'].classList.add('active');\n fig.buttons['Zoom'].classList.remove('active');\n } else if (msg['mode'] === 'ZOOM') {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.add('active');\n } else {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.remove('active');\n }\n};\n\nmpl.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.\nmpl.figure.prototype._make_on_message_function = function (fig) {\n return function socket_on_message(evt) {\n if (evt.data instanceof Blob) {\n var img = evt.data;\n if (img.type !== 'image/png') {\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 img.type = 'image/png';\n }\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\n fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n img\n );\n fig.updated_canvas_event();\n fig.waiting = false;\n return;\n } else if (\n typeof evt.data === 'string' &&\n evt.data.slice(0, 21) === 'data:image/png;base64'\n ) {\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(\n \"No handler for the '\" + msg_type + \"' message type: \",\n msg\n );\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(\n \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n e,\n e.stack,\n msg\n );\n }\n }\n };\n};\n\nfunction getModifiers(event) {\n var mods = [];\n if (event.ctrlKey) {\n mods.push('ctrl');\n }\n if (event.altKey) {\n mods.push('alt');\n }\n if (event.shiftKey) {\n mods.push('shift');\n }\n if (event.metaKey) {\n mods.push('meta');\n }\n return mods;\n}\n\n/*\n * return a copy of an object with only non-object keys\n * we need this to avoid circular references\n * https://stackoverflow.com/a/24161582/3208463\n */\nfunction simpleKeys(original) {\n return Object.keys(original).reduce(function (obj, key) {\n if (typeof original[key] !== 'object') {\n obj[key] = original[key];\n }\n return obj;\n }, {});\n}\n\nmpl.figure.prototype.mouse_event = function (event, name) {\n if (name === 'button_press') {\n this.canvas.focus();\n this.canvas_div.focus();\n }\n\n // from https://stackoverflow.com/q/1114465\n var boundingRect = this.canvas.getBoundingClientRect();\n var x = (event.clientX - boundingRect.left) * this.ratio;\n var y = (event.clientY - boundingRect.top) * this.ratio;\n\n this.send_message(name, {\n x: x,\n y: y,\n button: event.button,\n step: event.step,\n modifiers: getModifiers(event),\n guiEvent: simpleKeys(event),\n });\n\n return false;\n};\n\nmpl.figure.prototype._key_event_extra = function (_event, _name) {\n // Handle any extra behaviour associated with a key event\n};\n\nmpl.figure.prototype.key_event = function (event, name) {\n // Prevent repeat events\n if (name === 'key_press') {\n if (event.key === this._key) {\n return;\n } else {\n this._key = event.key;\n }\n }\n if (name === 'key_release') {\n this._key = null;\n }\n\n var value = '';\n if (event.ctrlKey && event.key !== 'Control') {\n value += 'ctrl+';\n }\n else if (event.altKey && event.key !== 'Alt') {\n value += 'alt+';\n }\n else if (event.shiftKey && event.key !== 'Shift') {\n value += 'shift+';\n }\n\n value += 'k' + event.key;\n\n this._key_event_extra(event, name);\n\n this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n return false;\n};\n\nmpl.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\nmpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n this.message.textContent = tooltip;\n};\n\n///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n// prettier-ignore\nvar _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\nmpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n\nmpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n\nmpl.default_extension = \"png\";/* global mpl */\n\nvar 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.binaryType = comm.kernel.ws.binaryType;\n ws.readyState = comm.kernel.ws.readyState;\n function updateReadyState(_event) {\n if (comm.kernel.ws) {\n ws.readyState = comm.kernel.ws.readyState;\n } else {\n ws.readyState = 3; // Closed state.\n }\n }\n comm.kernel.ws.addEventListener('open', updateReadyState);\n comm.kernel.ws.addEventListener('close', updateReadyState);\n comm.kernel.ws.addEventListener('error', updateReadyState);\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 var data = msg['content']['data'];\n if (data['blob'] !== undefined) {\n data = {\n data: new Blob(msg['buffers'], { type: data['blob'] }),\n };\n }\n // Pass the mpl event to the overridden (by mpl) onmessage function.\n ws.onmessage(data);\n });\n return ws;\n};\n\nmpl.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 = document.getElementById(id);\n var ws_proxy = comm_websocket_adapter(comm);\n\n function ondownload(figure, _format) {\n window.open(figure.canvas.toDataURL());\n }\n\n var fig = new mpl.figure(id, ws_proxy, ondownload, element);\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;\n fig.cell_info = mpl.find_output_cell(\"\");\n if (!fig.cell_info) {\n console.error('Failed to find cell for figure', id, fig);\n return;\n }\n fig.cell_info[0].output_area.element.on(\n 'cleared',\n { fig: fig },\n fig._remove_fig_handler\n );\n};\n\nmpl.figure.prototype.handle_close = function (fig, msg) {\n var width = fig.canvas.width / fig.ratio;\n fig.cell_info[0].output_area.element.off(\n 'cleared',\n fig._remove_fig_handler\n );\n fig.resizeObserverInstance.unobserve(fig.canvas_div);\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.innerHTML =\n '
';\n fig.close_ws(fig, msg);\n};\n\nmpl.figure.prototype.close_ws = function (fig, msg) {\n fig.send_message('closing', msg);\n // fig.ws.close()\n};\n\nmpl.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 / this.ratio;\n var dataURL = this.canvas.toDataURL();\n this.cell_info[1]['text/html'] =\n '
';\n};\n\nmpl.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 () {\n fig.push_to_output();\n }, 1000);\n};\n\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'btn-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n var button;\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n continue;\n }\n\n button = fig.buttons[name] = document.createElement('button');\n button.classList = 'btn btn-default';\n button.href = '#';\n button.title = name;\n button.innerHTML = '';\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n // Add the status bar.\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message pull-right';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n\n // Add the close button to the window.\n var buttongrp = document.createElement('div');\n buttongrp.classList = 'btn-group inline pull-right';\n button = document.createElement('button');\n button.classList = 'btn btn-mini btn-primary';\n button.href = '#';\n button.title = 'Stop Interaction';\n button.innerHTML = '';\n button.addEventListener('click', function (_evt) {\n fig.handle_close(fig, {});\n });\n button.addEventListener(\n 'mouseover',\n on_mouseover_closure('Stop Interaction')\n );\n buttongrp.appendChild(button);\n var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n titlebar.insertBefore(buttongrp, titlebar.firstChild);\n};\n\nmpl.figure.prototype._remove_fig_handler = function (event) {\n var fig = event.data.fig;\n if (event.target !== this) {\n // Ignore bubbled events from children.\n return;\n }\n fig.close_ws(fig, {});\n};\n\nmpl.figure.prototype._root_extra_style = function (el) {\n el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n};\n\nmpl.figure.prototype._canvas_extra_style = function (el) {\n // this is important to make the div 'focusable\n el.setAttribute('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 } else {\n // location in version 2\n IPython.keyboard_manager.register_events(el);\n }\n};\n\nmpl.figure.prototype._key_event_extra = function (event, _name) {\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\nmpl.figure.prototype.handle_save = function (fig, _msg) {\n fig.ondownload(fig, null);\n};\n\nmpl.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.\nif (IPython.notebook.kernel !== null) {\n IPython.notebook.kernel.comm_manager.register_target(\n 'matplotlib',\n mpl.mpl_figure_comm\n );\n}\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ ""
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/javascript": "/* Put everything inside the global mpl namespace */\n/* global mpl */\nwindow.mpl = {};\n\nmpl.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(\n '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\nmpl.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 = document.createElement('div');\n this.root.setAttribute('style', 'display: inline-block');\n this._root_extra_style(this.root);\n\n parent_element.appendChild(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 (fig.ratio !== 1) {\n fig.send_message('set_device_pixel_ratio', {\n device_pixel_ratio: fig.ratio,\n });\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 fig.ws.close();\n };\n\n this.ws.onmessage = this._make_on_message_function(this);\n\n this.ondownload = ondownload;\n};\n\nmpl.figure.prototype._init_header = function () {\n var titlebar = document.createElement('div');\n titlebar.classList =\n 'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n var titletext = document.createElement('div');\n titletext.classList = 'ui-dialog-title';\n titletext.setAttribute(\n 'style',\n 'width: 100%; text-align: center; padding: 3px;'\n );\n titlebar.appendChild(titletext);\n this.root.appendChild(titlebar);\n this.header = titletext;\n};\n\nmpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n\nmpl.figure.prototype._init_canvas = function () {\n var fig = this;\n\n var canvas_div = (this.canvas_div = document.createElement('div'));\n canvas_div.setAttribute('tabindex', '0');\n canvas_div.setAttribute(\n 'style',\n 'border: 1px solid #ddd;' +\n 'box-sizing: content-box;' +\n 'clear: both;' +\n 'min-height: 1px;' +\n 'min-width: 1px;' +\n 'outline: 0;' +\n 'overflow: hidden;' +\n 'position: relative;' +\n 'resize: both;' +\n 'z-index: 2;'\n );\n\n function on_keyboard_event_closure(name) {\n return function (event) {\n return fig.key_event(event, name);\n };\n }\n\n canvas_div.addEventListener(\n 'keydown',\n on_keyboard_event_closure('key_press')\n );\n canvas_div.addEventListener(\n 'keyup',\n on_keyboard_event_closure('key_release')\n );\n\n this._canvas_extra_style(canvas_div);\n this.root.appendChild(canvas_div);\n\n var canvas = (this.canvas = document.createElement('canvas'));\n canvas.classList.add('mpl-canvas');\n canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'pointer-events: none;' +\n 'position: relative;' +\n 'z-index: 0;'\n );\n\n this.context = canvas.getContext('2d');\n\n var backingStore =\n this.context.backingStorePixelRatio ||\n this.context.webkitBackingStorePixelRatio ||\n this.context.mozBackingStorePixelRatio ||\n this.context.msBackingStorePixelRatio ||\n this.context.oBackingStorePixelRatio ||\n this.context.backingStorePixelRatio ||\n 1;\n\n this.ratio = (window.devicePixelRatio || 1) / backingStore;\n\n var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n 'canvas'\n ));\n rubberband_canvas.setAttribute(\n 'style',\n 'box-sizing: content-box;' +\n 'left: 0;' +\n 'pointer-events: none;' +\n 'position: absolute;' +\n 'top: 0;' +\n 'z-index: 1;'\n );\n\n // Apply a ponyfill if ResizeObserver is not implemented by browser.\n if (this.ResizeObserver === undefined) {\n if (window.ResizeObserver !== undefined) {\n this.ResizeObserver = window.ResizeObserver;\n } else {\n var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n this.ResizeObserver = obs.ResizeObserver;\n }\n }\n\n this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n var nentries = entries.length;\n for (var i = 0; i < nentries; i++) {\n var entry = entries[i];\n var width, height;\n if (entry.contentBoxSize) {\n if (entry.contentBoxSize instanceof Array) {\n // Chrome 84 implements new version of spec.\n width = entry.contentBoxSize[0].inlineSize;\n height = entry.contentBoxSize[0].blockSize;\n } else {\n // Firefox implements old version of spec.\n width = entry.contentBoxSize.inlineSize;\n height = entry.contentBoxSize.blockSize;\n }\n } else {\n // Chrome <84 implements even older version of spec.\n width = entry.contentRect.width;\n height = entry.contentRect.height;\n }\n\n // Keep the size of the canvas and rubber band canvas in sync with\n // the canvas container.\n if (entry.devicePixelContentBoxSize) {\n // Chrome 84 implements new version of spec.\n canvas.setAttribute(\n 'width',\n entry.devicePixelContentBoxSize[0].inlineSize\n );\n canvas.setAttribute(\n 'height',\n entry.devicePixelContentBoxSize[0].blockSize\n );\n } else {\n canvas.setAttribute('width', width * fig.ratio);\n canvas.setAttribute('height', height * fig.ratio);\n }\n /* This rescales the canvas back to display pixels, so that it\n * appears correct on HiDPI screens. */\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n\n rubberband_canvas.setAttribute('width', width);\n rubberband_canvas.setAttribute('height', height);\n\n // And update the size in Python. We ignore the initial 0/0 size\n // that occurs as the element is placed into the DOM, which should\n // otherwise not happen due to the minimum size styling.\n if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n fig.request_resize(width, height);\n }\n }\n });\n this.resizeObserverInstance.observe(canvas_div);\n\n function on_mouse_event_closure(name) {\n /* User Agent sniffing is bad, but WebKit is busted:\n * https://bugs.webkit.org/show_bug.cgi?id=144526\n * https://bugs.webkit.org/show_bug.cgi?id=181818\n * The worst that happens here is that they get an extra browser\n * selection when dragging, if this check fails to catch them.\n */\n var UA = navigator.userAgent;\n var isWebKit = /AppleWebKit/.test(UA) && !/Chrome/.test(UA);\n if(isWebKit) {\n return function (event) {\n /* This prevents the web browser from automatically changing to\n * the text insertion cursor when the button is pressed. We\n * want to control all of the cursor setting manually through\n * the 'cursor' event from matplotlib */\n event.preventDefault()\n return fig.mouse_event(event, name);\n };\n } else {\n return function (event) {\n return fig.mouse_event(event, name);\n };\n }\n }\n\n canvas_div.addEventListener(\n 'mousedown',\n on_mouse_event_closure('button_press')\n );\n canvas_div.addEventListener(\n 'mouseup',\n on_mouse_event_closure('button_release')\n );\n canvas_div.addEventListener(\n 'dblclick',\n on_mouse_event_closure('dblclick')\n );\n // Throttle sequential mouse events to 1 every 20ms.\n canvas_div.addEventListener(\n 'mousemove',\n on_mouse_event_closure('motion_notify')\n );\n\n canvas_div.addEventListener(\n 'mouseenter',\n on_mouse_event_closure('figure_enter')\n );\n canvas_div.addEventListener(\n 'mouseleave',\n on_mouse_event_closure('figure_leave')\n );\n\n canvas_div.addEventListener('wheel', function (event) {\n if (event.deltaY < 0) {\n event.step = 1;\n } else {\n event.step = -1;\n }\n on_mouse_event_closure('scroll')(event);\n });\n\n canvas_div.appendChild(canvas);\n canvas_div.appendChild(rubberband_canvas);\n\n this.rubberband_context = rubberband_canvas.getContext('2d');\n this.rubberband_context.strokeStyle = '#000000';\n\n this._resize_canvas = function (width, height, forward) {\n if (forward) {\n canvas_div.style.width = width + 'px';\n canvas_div.style.height = height + 'px';\n }\n };\n\n // Disable right mouse context menu.\n canvas_div.addEventListener('contextmenu', function (_e) {\n event.preventDefault();\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\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'mpl-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'mpl-button-group';\n continue;\n }\n\n var button = (fig.buttons[name] = document.createElement('button'));\n button.classList = 'mpl-widget';\n button.setAttribute('role', 'button');\n button.setAttribute('aria-disabled', 'false');\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n\n var icon_img = document.createElement('img');\n icon_img.src = '_images/' + image + '.png';\n icon_img.srcset = '_images/' + image + '_large.png 2x';\n icon_img.alt = tooltip;\n button.appendChild(icon_img);\n\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n var fmt_picker = document.createElement('select');\n fmt_picker.classList = 'mpl-widget';\n toolbar.appendChild(fmt_picker);\n this.format_dropdown = fmt_picker;\n\n for (var ind in mpl.extensions) {\n var fmt = mpl.extensions[ind];\n var option = document.createElement('option');\n option.selected = fmt === mpl.default_extension;\n option.innerHTML = fmt;\n fmt_picker.appendChild(option);\n }\n\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n};\n\nmpl.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\nmpl.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\nmpl.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\nmpl.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\nmpl.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], msg['forward']);\n fig.send_message('refresh', {});\n }\n};\n\nmpl.figure.prototype.handle_rubberband = function (fig, msg) {\n var x0 = msg['x0'] / fig.ratio;\n var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n var x1 = msg['x1'] / fig.ratio;\n var y1 = (fig.canvas.height - msg['y1']) / fig.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,\n 0,\n fig.canvas.width / fig.ratio,\n fig.canvas.height / fig.ratio\n );\n\n fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n};\n\nmpl.figure.prototype.handle_figure_label = function (fig, msg) {\n // Updates the figure title.\n fig.header.textContent = msg['label'];\n};\n\nmpl.figure.prototype.handle_cursor = function (fig, msg) {\n fig.canvas_div.style.cursor = msg['cursor'];\n};\n\nmpl.figure.prototype.handle_message = function (fig, msg) {\n fig.message.textContent = msg['message'];\n};\n\nmpl.figure.prototype.handle_draw = function (fig, _msg) {\n // Request the server to send over a new figure.\n fig.send_draw_message();\n};\n\nmpl.figure.prototype.handle_image_mode = function (fig, msg) {\n fig.image_mode = msg['mode'];\n};\n\nmpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n for (var key in msg) {\n if (!(key in fig.buttons)) {\n continue;\n }\n fig.buttons[key].disabled = !msg[key];\n fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n }\n};\n\nmpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n if (msg['mode'] === 'PAN') {\n fig.buttons['Pan'].classList.add('active');\n fig.buttons['Zoom'].classList.remove('active');\n } else if (msg['mode'] === 'ZOOM') {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.add('active');\n } else {\n fig.buttons['Pan'].classList.remove('active');\n fig.buttons['Zoom'].classList.remove('active');\n }\n};\n\nmpl.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.\nmpl.figure.prototype._make_on_message_function = function (fig) {\n return function socket_on_message(evt) {\n if (evt.data instanceof Blob) {\n var img = evt.data;\n if (img.type !== 'image/png') {\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 img.type = 'image/png';\n }\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\n fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n img\n );\n fig.updated_canvas_event();\n fig.waiting = false;\n return;\n } else if (\n typeof evt.data === 'string' &&\n evt.data.slice(0, 21) === 'data:image/png;base64'\n ) {\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(\n \"No handler for the '\" + msg_type + \"' message type: \",\n msg\n );\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(\n \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n e,\n e.stack,\n msg\n );\n }\n }\n };\n};\n\nfunction getModifiers(event) {\n var mods = [];\n if (event.ctrlKey) {\n mods.push('ctrl');\n }\n if (event.altKey) {\n mods.push('alt');\n }\n if (event.shiftKey) {\n mods.push('shift');\n }\n if (event.metaKey) {\n mods.push('meta');\n }\n return mods;\n}\n\n/*\n * return a copy of an object with only non-object keys\n * we need this to avoid circular references\n * https://stackoverflow.com/a/24161582/3208463\n */\nfunction simpleKeys(original) {\n return Object.keys(original).reduce(function (obj, key) {\n if (typeof original[key] !== 'object') {\n obj[key] = original[key];\n }\n return obj;\n }, {});\n}\n\nmpl.figure.prototype.mouse_event = function (event, name) {\n if (name === 'button_press') {\n this.canvas.focus();\n this.canvas_div.focus();\n }\n\n // from https://stackoverflow.com/q/1114465\n var boundingRect = this.canvas.getBoundingClientRect();\n var x = (event.clientX - boundingRect.left) * this.ratio;\n var y = (event.clientY - boundingRect.top) * this.ratio;\n\n this.send_message(name, {\n x: x,\n y: y,\n button: event.button,\n step: event.step,\n modifiers: getModifiers(event),\n guiEvent: simpleKeys(event),\n });\n\n return false;\n};\n\nmpl.figure.prototype._key_event_extra = function (_event, _name) {\n // Handle any extra behaviour associated with a key event\n};\n\nmpl.figure.prototype.key_event = function (event, name) {\n // Prevent repeat events\n if (name === 'key_press') {\n if (event.key === this._key) {\n return;\n } else {\n this._key = event.key;\n }\n }\n if (name === 'key_release') {\n this._key = null;\n }\n\n var value = '';\n if (event.ctrlKey && event.key !== 'Control') {\n value += 'ctrl+';\n }\n else if (event.altKey && event.key !== 'Alt') {\n value += 'alt+';\n }\n else if (event.shiftKey && event.key !== 'Shift') {\n value += 'shift+';\n }\n\n value += 'k' + event.key;\n\n this._key_event_extra(event, name);\n\n this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n return false;\n};\n\nmpl.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\nmpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n this.message.textContent = tooltip;\n};\n\n///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n// prettier-ignore\nvar _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\nmpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o\", \"download\"]];\n\nmpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\", \"webp\"];\n\nmpl.default_extension = \"png\";/* global mpl */\n\nvar 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.binaryType = comm.kernel.ws.binaryType;\n ws.readyState = comm.kernel.ws.readyState;\n function updateReadyState(_event) {\n if (comm.kernel.ws) {\n ws.readyState = comm.kernel.ws.readyState;\n } else {\n ws.readyState = 3; // Closed state.\n }\n }\n comm.kernel.ws.addEventListener('open', updateReadyState);\n comm.kernel.ws.addEventListener('close', updateReadyState);\n comm.kernel.ws.addEventListener('error', updateReadyState);\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 var data = msg['content']['data'];\n if (data['blob'] !== undefined) {\n data = {\n data: new Blob(msg['buffers'], { type: data['blob'] }),\n };\n }\n // Pass the mpl event to the overridden (by mpl) onmessage function.\n ws.onmessage(data);\n });\n return ws;\n};\n\nmpl.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 = document.getElementById(id);\n var ws_proxy = comm_websocket_adapter(comm);\n\n function ondownload(figure, _format) {\n window.open(figure.canvas.toDataURL());\n }\n\n var fig = new mpl.figure(id, ws_proxy, ondownload, element);\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;\n fig.cell_info = mpl.find_output_cell(\"\");\n if (!fig.cell_info) {\n console.error('Failed to find cell for figure', id, fig);\n return;\n }\n fig.cell_info[0].output_area.element.on(\n 'cleared',\n { fig: fig },\n fig._remove_fig_handler\n );\n};\n\nmpl.figure.prototype.handle_close = function (fig, msg) {\n var width = fig.canvas.width / fig.ratio;\n fig.cell_info[0].output_area.element.off(\n 'cleared',\n fig._remove_fig_handler\n );\n fig.resizeObserverInstance.unobserve(fig.canvas_div);\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.innerHTML =\n '
';\n fig.close_ws(fig, msg);\n};\n\nmpl.figure.prototype.close_ws = function (fig, msg) {\n fig.send_message('closing', msg);\n // fig.ws.close()\n};\n\nmpl.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 / this.ratio;\n var dataURL = this.canvas.toDataURL();\n this.cell_info[1]['text/html'] =\n '
';\n};\n\nmpl.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 () {\n fig.push_to_output();\n }, 1000);\n};\n\nmpl.figure.prototype._init_toolbar = function () {\n var fig = this;\n\n var toolbar = document.createElement('div');\n toolbar.classList = 'btn-toolbar';\n this.root.appendChild(toolbar);\n\n function on_click_closure(name) {\n return function (_event) {\n return fig.toolbar_button_onclick(name);\n };\n }\n\n function on_mouseover_closure(tooltip) {\n return function (event) {\n if (!event.currentTarget.disabled) {\n return fig.toolbar_button_onmouseover(tooltip);\n }\n };\n }\n\n fig.buttons = {};\n var buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n var button;\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 /* Instead of a spacer, we start a new button group. */\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n buttonGroup = document.createElement('div');\n buttonGroup.classList = 'btn-group';\n continue;\n }\n\n button = fig.buttons[name] = document.createElement('button');\n button.classList = 'btn btn-default';\n button.href = '#';\n button.title = name;\n button.innerHTML = '';\n button.addEventListener('click', on_click_closure(method_name));\n button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n buttonGroup.appendChild(button);\n }\n\n if (buttonGroup.hasChildNodes()) {\n toolbar.appendChild(buttonGroup);\n }\n\n // Add the status bar.\n var status_bar = document.createElement('span');\n status_bar.classList = 'mpl-message pull-right';\n toolbar.appendChild(status_bar);\n this.message = status_bar;\n\n // Add the close button to the window.\n var buttongrp = document.createElement('div');\n buttongrp.classList = 'btn-group inline pull-right';\n button = document.createElement('button');\n button.classList = 'btn btn-mini btn-primary';\n button.href = '#';\n button.title = 'Stop Interaction';\n button.innerHTML = '';\n button.addEventListener('click', function (_evt) {\n fig.handle_close(fig, {});\n });\n button.addEventListener(\n 'mouseover',\n on_mouseover_closure('Stop Interaction')\n );\n buttongrp.appendChild(button);\n var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n titlebar.insertBefore(buttongrp, titlebar.firstChild);\n};\n\nmpl.figure.prototype._remove_fig_handler = function (event) {\n var fig = event.data.fig;\n if (event.target !== this) {\n // Ignore bubbled events from children.\n return;\n }\n fig.close_ws(fig, {});\n};\n\nmpl.figure.prototype._root_extra_style = function (el) {\n el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n};\n\nmpl.figure.prototype._canvas_extra_style = function (el) {\n // this is important to make the div 'focusable\n el.setAttribute('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 } else {\n // location in version 2\n IPython.keyboard_manager.register_events(el);\n }\n};\n\nmpl.figure.prototype._key_event_extra = function (event, _name) {\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\nmpl.figure.prototype.handle_save = function (fig, _msg) {\n fig.ondownload(fig, null);\n};\n\nmpl.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.\nif (IPython.notebook.kernel !== null) {\n IPython.notebook.kernel.comm_manager.register_target(\n 'matplotlib',\n mpl.mpl_figure_comm\n );\n}\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "text/html": [
+ ""
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[32m***** Response from calling tool (call_CmOF8aT5DDj7M7qpeNv1JEBZ) *****\u001b[0m\n",
+ "Back Test Finished. Results: \n",
+ "{ 'Drawdown': AutoOrderedDict([ ('len', 94),\n",
+ " ('drawdown', 0.20209201531982846),\n",
+ " ('moneydown', 20.226220805318007),\n",
+ " ( 'max',\n",
+ " AutoOrderedDict([ ('len', 94),\n",
+ " ( 'drawdown',\n",
+ " 0.2195571239014045),\n",
+ " ( 'moneydown',\n",
+ " 21.974202495741338)]))]),\n",
+ " 'Final Portfolio Value': 9988.195325839277,\n",
+ " 'Returns': OrderedDict([ ('rtot', -0.001181164716546909),\n",
+ " ('ravg', -4.705835524091271e-06),\n",
+ " ('rnorm', -0.0011851676854515952),\n",
+ " ('rnorm100', -0.11851676854515952)]),\n",
+ " 'Sharpe Ratio': OrderedDict([('sharperatio', None)]),\n",
+ " 'Starting Portfolio Value:': 10000.0,\n",
+ " 'Trade Analysis': AutoOrderedDict([ ( 'total',\n",
+ " AutoOrderedDict([ ('total', 3),\n",
+ " ('open', 0),\n",
+ " ('closed', 3)])),\n",
+ " ( 'streak',\n",
+ " AutoOrderedDict([ ( 'won',\n",
+ " AutoOrderedDict([ ( 'current',\n",
+ " 0),\n",
+ " ( 'longest',\n",
+ " 1)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'current',\n",
+ " 1),\n",
+ " ( 'longest',\n",
+ " 1)]))])),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'gross',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -11.80467416072463),\n",
+ " ( 'average',\n",
+ " -3.9348913869082103)])),\n",
+ " ( 'net',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -11.80467416072463),\n",
+ " ( 'average',\n",
+ " -3.9348913869082103)]))])),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ('total', 1),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 8.9823428020633),\n",
+ " ( 'average',\n",
+ " 8.9823428020633),\n",
+ " ( 'max',\n",
+ " 8.9823428020633)]))])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ('total', 2),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -20.78701696278793),\n",
+ " ( 'average',\n",
+ " -10.393508481393965),\n",
+ " ( 'max',\n",
+ " -15.394083210255104)]))])),\n",
+ " ( 'long',\n",
+ " AutoOrderedDict([ ('total', 3),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -11.80467416072463),\n",
+ " ( 'average',\n",
+ " -3.9348913869082103),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 8.9823428020633),\n",
+ " ( 'average',\n",
+ " 8.9823428020633),\n",
+ " ( 'max',\n",
+ " 8.9823428020633)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " -20.78701696278793),\n",
+ " ( 'average',\n",
+ " -10.393508481393965),\n",
+ " ( 'max',\n",
+ " -15.394083210255104)]))])),\n",
+ " ('won', 1),\n",
+ " ('lost', 2)])),\n",
+ " ( 'short',\n",
+ " AutoOrderedDict([ ('total', 0),\n",
+ " ( 'pnl',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0.0)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0.0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0.0)]))])),\n",
+ " ('won', 0),\n",
+ " ('lost', 0)])),\n",
+ " ( 'len',\n",
+ " AutoOrderedDict([ ('total', 70),\n",
+ " ( 'average',\n",
+ " 23.333333333333332),\n",
+ " ('max', 39),\n",
+ " ('min', 13),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 39),\n",
+ " ( 'average',\n",
+ " 39.0),\n",
+ " ( 'max',\n",
+ " 39),\n",
+ " ( 'min',\n",
+ " 39)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 31),\n",
+ " ( 'average',\n",
+ " 15.5),\n",
+ " ( 'max',\n",
+ " 18),\n",
+ " ( 'min',\n",
+ " 13)])),\n",
+ " ( 'long',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 70),\n",
+ " ( 'average',\n",
+ " 23.333333333333332),\n",
+ " ( 'max',\n",
+ " 39),\n",
+ " ( 'min',\n",
+ " 13),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 39),\n",
+ " ( 'average',\n",
+ " 39.0),\n",
+ " ( 'max',\n",
+ " 39),\n",
+ " ( 'min',\n",
+ " 39)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 31),\n",
+ " ( 'average',\n",
+ " 15.5),\n",
+ " ( 'max',\n",
+ " 18),\n",
+ " ( 'min',\n",
+ " 13)]))])),\n",
+ " ( 'short',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807),\n",
+ " ( 'won',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807)])),\n",
+ " ( 'lost',\n",
+ " AutoOrderedDict([ ( 'total',\n",
+ " 0),\n",
+ " ( 'average',\n",
+ " 0.0),\n",
+ " ( 'max',\n",
+ " 0),\n",
+ " ( 'min',\n",
+ " 9223372036854775807)]))]))]))])}\n",
+ "\u001b[32m**********************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "\u001b[32m***** Suggested tool call (call_Zjl3zZKJcSS9KnyQkk5TSOpf): display_image *****\u001b[0m\n",
+ "Arguments: \n",
+ "{\"image_path\":\"test.png\"}\n",
+ "\u001b[32m******************************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[35m\n",
+ ">>>>>>>> EXECUTING FUNCTION display_image...\u001b[0m\n"
+ ]
+ },
+ {
+ "data": {
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOyddXwTSRvHv7G6UsGLu7trcZfjcDj8cHeXO4pLcTmcw+GOw/1FDjjcnUKpUfe0TbLvH6GhoYUWqCRlv59P2mRndua3s5vdJ8/MPCMRBEFARERERERERETkh0Ga0QJERERERERERETSF9EAFBERERERERH5wRANQBERERERERGRHwzRABQRERERERER+cEQDUARERERERERkR8M0QAUEREREREREfnBEA1AEREREREREZEfDHlGVazRaAgICADAwsICiUSSUVJEREREREREflDe3fTn0fr/0rVOtUoNgImpSaraP/nblaFEy/wpyivJqEDQ79+/J2vWrBlRtYiIiIiIiIgIAL3MOjE6ezRSK4v0rzwVjT9JbCxesY64vlydovwZ5gEUEREREREREclo6liaY9OkLDncx6R73VKpNNU8gH5LdvF++akU588wA9DC4qOlffX2M73PPyISCeTLYcdr7xAMbXE+Q9aWEoxNv7HoNRadYFxaIfX0vn4l5eA+E16+kOH5VkpsLMhk4OsrJS7240NHIhGoUk1F8xZxNG0Zi4lJxupOL4xJrzFpBePRG/omEste47GoUwGpNP2mRWg0mnSr63NkmAGY0OK1sLDAwsIyo6QYBBIJWFpaYmERZ3BfFkPWlhBBgBfPpVy8oECphPwFNJQoqcYlj0ZP/+tXUh49kFGrjgobW8M7IGNpb2PRCcalFb5Nr1oNe3ebcPSwAvmHO/vFC3IEIXnvgiDA1Sva19rVavoOiCG3iwYTE1Aq4fUrGSeOKXj8UEbHLjGMn6zU1fG9ujMSY9JrTFrBePQ++eseJUwErOtW0Nt+5swZFi5ciJ+fH2XKlOG3334jR44c7NmzhzVr1hAWFkb16tWZM2cONjY2AGzevJk//viDqKgoypUrx++//46TkxMACxYs4ODBg6hUKmrUqMHs2bOTdHwdP36cpUuX4ufnh4uLC5MmTaJKlSoAnDp1ivnz5/P+/XsqVqzIvHnzcHR0/OZj/yG6gDUqDbebLiO/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17osbcHeeThq9+5eD2fXR74WVtfeUd7u3i9lqSt3rrl12fbagLP25W4bdSudg/vE2TH27jlndeqo33LnHnNWd86uvat7rTztyzxve/eio3vOVR056rectS9326yz61FZbdi6TTi67925F12dn73jHdWVxscb3+GDKYjbYJOHs37M1X1fnr7DVdvQarUEBgbir/UiT1cMiIqW9XWoan1ErXZdQHBwcJnyzMjI4OWXXyYiIoIxY8bI2y5cuMCxY8d49tlnCQ8P5+eff+aJJ55gwYIF8OKLLwoDBw4UJNLT04WePXsKt956q7B27Vrh999/F7p37y489NBDcppdu3YJMTExwq5du+Rt48aNE9q2bSs888wz8rY///xTiImJERITEwVrkpOTBUSFW8jLy7PZr6CgoKCgoKBQ2bRr104ABI1GI+h0umovPy8vT9Z/kpOTXaa3p3OZk5ycLNxyyy1Cp06dhEOHDsnbhwwZIsTExAhHjx6Vt5WWlgqjRo0S7r77bsFmFXBoaCiLFy/mrbfe4vnnn8fPz4/hw4fzwgsvONU+R44cyZEjR8o8/Atw/GwSdeqElfm4srBnWxyNmrbE8/Mf5LcV62+JMyN6yL/tHfOfKtdlXubpLp6Ll7+br95jIdeZET3kfR07duTw4cMWx0hlWJdpnbc9WazPw1laV3J37NiR/HkLbfabn4+zvByVaa8s629zXKV1dJ5Rd45kS16aw/3W17756j1unY8718H6ekh1Zn7trfMsS1uw14at25c7x7pzfubXw/raO8rb3fulLHXlzjW3LtteG3DWvpzVQVnTObpPnB1j755zdh0d9Vvu3GPO6s7ZtbduX9b3mqu24KyPdHQvOrrnXNWRo37LWftyt806ux6V1Yat24Sj+96de9HV+dk73lFdOcvDWT/m6r4vT9/hqm1I1z4wU/RoEhlShz/++MPmOvToN9ymL61M0tPTKi2v+Ph4pk6dSn5+Pl9//TUdO3aU9/n5+REeHk7btm3lbRqNht69e/Pbb7/hMW/ePJsMY2JiWLRokcMCe/bsSXy8Zcc5adIkJk2aZLFt7NixjB071uUJGAyCW2PiFUGn06HXG9AXFmHQldr9Nk8rYe8Yncp1XubppLJ1Op1FOeZy6XQ6DAartGZlWJdpnbc9GazPw506cCS3weCgbLPzcZZXmerI6tscV2kdnadQ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",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[33mBacktesting_Analyst_Executor\u001b[0m (to Backtesting_Analyst):\n",
+ "\n",
+ "\u001b[32m***** Response from calling tool (call_Zjl3zZKJcSS9KnyQkk5TSOpf) *****\u001b[0m\n",
+ "None\n",
+ "\u001b[32m**********************************************************************\u001b[0m\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[33mBacktesting_Analyst\u001b[0m (to Backtesting_Analyst_Executor):\n",
+ "\n",
+ "Optimize the fast/slow parameters based on this image
. TERMINATE\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "########## Optimize the fast/slow parameters based on this image
. TERMINATE\n",
+ "\u001b[33mUser_Proxy\u001b[0m (to Trade_Strategist):\n",
+ "\n",
+ "Optimize the fast/slow parameters based on this image . \n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "\u001b[31m\n",
+ ">>>>>>>> USING AUTO REPLY...\u001b[0m\n",
+ "\u001b[33mTrade_Strategist\u001b[0m (to User_Proxy):\n",
+ "\n",
+ "The latest backtest result image shows the performance of the trading strategy with a 10-day SMA as the fast moving average and a 50-day SMA as the slow moving average. The chart indicates the buy and sell signals, and the performance metrics show a final cash and portfolio value close to the starting balance, suggesting that the strategy may not be capturing enough profitable trades or that the profits are offset by losses.\n",
+ "\n",
+ "The strategy with these parameters seems to be generating signals more frequently, which could lead to a higher number of trades and potentially more false signals, especially in sideways or choppy markets.\n",
+ "\n",
+ "To further optimize the strategy, we could consider the following:\n",
+ "\n",
+ "- Fine-tuning the fast SMA to reduce the number of false signals while still allowing for timely entries.\n",
+ "- Adjusting the slow SMA to better filter out market noise and confirm longer-term trends.\n",
+ "\n",
+ "5. Let's test a strategy that aims to reduce the number of trades and potentially increase the quality of the signals by using a 13-day SMA for the fast parameter and a 48-day SMA for the slow parameter. This adjustment is minor but may help in fine-tuning the strategy's responsiveness to market conditions. Please run the backtest for the SMACrossover strategy with these new parameters and report the results back for further analysis.\n",
+ "\n",
+ "--------------------------------------------------------------------------------\n",
+ "########## [{'type': 'text', 'text': \"The latest backtest result image shows the performance of the trading strategy with a 10-day SMA as the fast moving average and a 50-day SMA as the slow moving average. The chart indicates the buy and sell signals, and the performance metrics show a final cash and portfolio value close to the starting balance, suggesting that the strategy may not be capturing enough profitable trades or that the profits are offset by losses.\\n\\nThe strategy with these parameters seems to be generating signals more frequently, which could lead to a higher number of trades and potentially more false signals, especially in sideways or choppy markets.\\n\\nTo further optimize the strategy, we could consider the following:\\n\\n- Fine-tuning the fast SMA to reduce the number of false signals while still allowing for timely entries.\\n- Adjusting the slow SMA to better filter out market noise and confirm longer-term trends.\\n\\n5. Let's test a strategy that aims to reduce the number of trades and potentially increase the quality of the signals by using a 13-day SMA for the fast parameter and a 48-day SMA for the slow parameter. This adjustment is minor but may help in fine-tuning the strategy's responsiveness to market conditions. Please run the backtest for the SMACrossover strategy with these new parameters and report the results back for further analysis.\"}]\n"
+ ]
+ }
+ ],
+ "source": [
+ "company = \"Microsoft\"\n",
+ "start_date = \"2022-01-01\"\n",
+ "end_date = \"2024-01-01\"\n",
+ "\n",
+ "task = dedent(\n",
+ " f\"\"\"\n",
+ " Based on {company}'s stock data from {start_date} to {end_date}, determine the possible optimal parameters for an SMACrossover Strategy over this period. \n",
+ " First, ask the analyst to plot a candlestick chart of the stock price data to visually inspect the price movements and make an initial assessment.\n",
+ " Then, ask the analyst to backtest the strategy parameters using the backtesting tool, and report results back for further optimization.\n",
+ "\"\"\"\n",
+ ")\n",
+ "\n",
+ "with Cache.disk() as cache:\n",
+ " user_proxy.initiate_chat(\n",
+ " recipient=strategist, message=task, max_turns=5, summary_method=\"last_msg\"\n",
+ " )"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "finrobot",
+ "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.10.14"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}