diff --git a/notebook/indicator.ipynb b/notebook/indicator.ipynb
index b0725e6..6fb6d9f 100644
--- a/notebook/indicator.ipynb
+++ b/notebook/indicator.ipynb
@@ -770,37 +770,339 @@
{
"metadata": {
"ExecuteTime": {
- "end_time": "2026-01-28T09:07:40.981251Z",
- "start_time": "2026-01-28T09:07:40.392017Z"
+ "end_time": "2026-01-28T09:25:07.614723Z",
+ "start_time": "2026-01-28T09:25:07.551413Z"
+ }
+ },
+ "cell_type": "code",
+ "source": "dailies_df",
+ "id": "4ae518956416a03d",
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ " trade_date Open Close High Low \\\n",
+ "0 2025-01-02 1498.907493 1460.572263 1504.018857 1455.460899 \n",
+ "1 2025-01-03 1461.850104 1454.183058 1474.628514 1451.627376 \n",
+ "2 2025-01-06 1454.183058 1461.850104 1466.961468 1433.737602 \n",
+ "3 2025-01-07 1459.294422 1470.794991 1473.350673 1452.905217 \n",
+ "4 2025-01-08 1469.517150 1469.517150 1486.129083 1456.738740 \n",
+ ".. ... ... ... ... ... \n",
+ "183 2025-10-09 1493.155774 1502.380920 1503.698798 1485.248506 \n",
+ "184 2025-10-10 1498.427286 1506.334554 1514.241822 1497.109408 \n",
+ "185 2025-10-13 1491.837896 1502.380920 1510.288188 1486.566384 \n",
+ "186 2025-10-14 1501.063042 1524.784846 1528.738480 1497.109408 \n",
+ "187 2025-10-15 1526.130396 1534.205160 1536.896748 1515.364044 \n",
+ "\n",
+ " Volume factor sma30 sma60 sma120 macd \\\n",
+ "0 1819596.99 127.7841 1481.060314 1488.045844 1386.170379 4.048710 \n",
+ "1 1154680.44 127.7841 1480.165825 1486.768003 1387.794876 -0.026455 \n",
+ "2 1085536.30 127.7841 1480.847340 1486.171678 1389.410319 -2.378865 \n",
+ "3 747862.88 127.7841 1482.252965 1485.085513 1391.110725 -3.304617 \n",
+ "4 1062386.01 127.7841 1483.232643 1484.233619 1392.612908 -4.043327 \n",
+ ".. ... ... ... ... ... ... \n",
+ "183 1047469.06 131.7878 1546.925196 1593.490219 1544.474925 -16.948867 \n",
+ "184 1087947.75 131.7878 1543.762289 1589.646408 1545.431305 -15.506860 \n",
+ "185 1168801.73 131.7878 1540.862958 1586.329749 1546.312145 -14.513190 \n",
+ "186 1843428.36 131.7878 1536.997182 1583.232735 1547.358386 -11.586571 \n",
+ "187 1271061.03 134.5794 1533.840781 1580.841843 1548.429886 -8.403867 \n",
+ "\n",
+ " signal hist \n",
+ "0 7.092149 -3.043439 \n",
+ "1 5.668428 -5.694884 \n",
+ "2 4.058970 -6.437834 \n",
+ "3 2.586252 -5.890869 \n",
+ "4 1.260337 -5.303663 \n",
+ ".. ... ... \n",
+ "183 -17.863171 0.914304 \n",
+ "184 -17.391909 1.885048 \n",
+ "185 -16.816165 2.302975 \n",
+ "186 -15.770246 4.183676 \n",
+ "187 -14.296970 5.893103 \n",
+ "\n",
+ "[188 rows x 13 columns]"
+ ],
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " trade_date | \n",
+ " Open | \n",
+ " Close | \n",
+ " High | \n",
+ " Low | \n",
+ " Volume | \n",
+ " factor | \n",
+ " sma30 | \n",
+ " sma60 | \n",
+ " sma120 | \n",
+ " macd | \n",
+ " signal | \n",
+ " hist | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 2025-01-02 | \n",
+ " 1498.907493 | \n",
+ " 1460.572263 | \n",
+ " 1504.018857 | \n",
+ " 1455.460899 | \n",
+ " 1819596.99 | \n",
+ " 127.7841 | \n",
+ " 1481.060314 | \n",
+ " 1488.045844 | \n",
+ " 1386.170379 | \n",
+ " 4.048710 | \n",
+ " 7.092149 | \n",
+ " -3.043439 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 2025-01-03 | \n",
+ " 1461.850104 | \n",
+ " 1454.183058 | \n",
+ " 1474.628514 | \n",
+ " 1451.627376 | \n",
+ " 1154680.44 | \n",
+ " 127.7841 | \n",
+ " 1480.165825 | \n",
+ " 1486.768003 | \n",
+ " 1387.794876 | \n",
+ " -0.026455 | \n",
+ " 5.668428 | \n",
+ " -5.694884 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 2025-01-06 | \n",
+ " 1454.183058 | \n",
+ " 1461.850104 | \n",
+ " 1466.961468 | \n",
+ " 1433.737602 | \n",
+ " 1085536.30 | \n",
+ " 127.7841 | \n",
+ " 1480.847340 | \n",
+ " 1486.171678 | \n",
+ " 1389.410319 | \n",
+ " -2.378865 | \n",
+ " 4.058970 | \n",
+ " -6.437834 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 2025-01-07 | \n",
+ " 1459.294422 | \n",
+ " 1470.794991 | \n",
+ " 1473.350673 | \n",
+ " 1452.905217 | \n",
+ " 747862.88 | \n",
+ " 127.7841 | \n",
+ " 1482.252965 | \n",
+ " 1485.085513 | \n",
+ " 1391.110725 | \n",
+ " -3.304617 | \n",
+ " 2.586252 | \n",
+ " -5.890869 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 2025-01-08 | \n",
+ " 1469.517150 | \n",
+ " 1469.517150 | \n",
+ " 1486.129083 | \n",
+ " 1456.738740 | \n",
+ " 1062386.01 | \n",
+ " 127.7841 | \n",
+ " 1483.232643 | \n",
+ " 1484.233619 | \n",
+ " 1392.612908 | \n",
+ " -4.043327 | \n",
+ " 1.260337 | \n",
+ " -5.303663 | \n",
+ "
\n",
+ " \n",
+ " | ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " | 183 | \n",
+ " 2025-10-09 | \n",
+ " 1493.155774 | \n",
+ " 1502.380920 | \n",
+ " 1503.698798 | \n",
+ " 1485.248506 | \n",
+ " 1047469.06 | \n",
+ " 131.7878 | \n",
+ " 1546.925196 | \n",
+ " 1593.490219 | \n",
+ " 1544.474925 | \n",
+ " -16.948867 | \n",
+ " -17.863171 | \n",
+ " 0.914304 | \n",
+ "
\n",
+ " \n",
+ " | 184 | \n",
+ " 2025-10-10 | \n",
+ " 1498.427286 | \n",
+ " 1506.334554 | \n",
+ " 1514.241822 | \n",
+ " 1497.109408 | \n",
+ " 1087947.75 | \n",
+ " 131.7878 | \n",
+ " 1543.762289 | \n",
+ " 1589.646408 | \n",
+ " 1545.431305 | \n",
+ " -15.506860 | \n",
+ " -17.391909 | \n",
+ " 1.885048 | \n",
+ "
\n",
+ " \n",
+ " | 185 | \n",
+ " 2025-10-13 | \n",
+ " 1491.837896 | \n",
+ " 1502.380920 | \n",
+ " 1510.288188 | \n",
+ " 1486.566384 | \n",
+ " 1168801.73 | \n",
+ " 131.7878 | \n",
+ " 1540.862958 | \n",
+ " 1586.329749 | \n",
+ " 1546.312145 | \n",
+ " -14.513190 | \n",
+ " -16.816165 | \n",
+ " 2.302975 | \n",
+ "
\n",
+ " \n",
+ " | 186 | \n",
+ " 2025-10-14 | \n",
+ " 1501.063042 | \n",
+ " 1524.784846 | \n",
+ " 1528.738480 | \n",
+ " 1497.109408 | \n",
+ " 1843428.36 | \n",
+ " 131.7878 | \n",
+ " 1536.997182 | \n",
+ " 1583.232735 | \n",
+ " 1547.358386 | \n",
+ " -11.586571 | \n",
+ " -15.770246 | \n",
+ " 4.183676 | \n",
+ "
\n",
+ " \n",
+ " | 187 | \n",
+ " 2025-10-15 | \n",
+ " 1526.130396 | \n",
+ " 1534.205160 | \n",
+ " 1536.896748 | \n",
+ " 1515.364044 | \n",
+ " 1271061.03 | \n",
+ " 134.5794 | \n",
+ " 1533.840781 | \n",
+ " 1580.841843 | \n",
+ " 1548.429886 | \n",
+ " -8.403867 | \n",
+ " -14.296970 | \n",
+ " 5.893103 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
188 rows × 13 columns
\n",
+ "
"
+ ]
+ },
+ "execution_count": 140,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "execution_count": 140
+ },
+ {
+ "metadata": {
+ "ExecuteTime": {
+ "end_time": "2026-01-28T09:37:49.556583Z",
+ "start_time": "2026-01-28T09:37:48.675074Z"
}
},
"cell_type": "code",
"source": [
"from bokeh.io import show, output_notebook\n",
"from bokeh.plotting import figure\n",
+ "from bokeh.layouts import column\n",
"\n",
"output_notebook()\n",
"\n",
- "p = figure(\n",
- " x_axis_type=\"datetime\",\n",
- " sizing_mode=\"stretch_width\",\n",
- " tools=\"pan,wheel_zoom,box_zoom,reset,save,hover\",\n",
- ")\n",
- "p.min_border = 0\n",
+ "width = 1200\n",
"\n",
- "p.xaxis.major_label_overrides = {\n",
+ "price_figure = figure(\n",
+ " width=width,\n",
+ " height=400,\n",
+ " tools=\"pan,wheel_zoom,box_zoom,reset\",\n",
+ ")\n",
+ "\n",
+ "price_figure.min_border = 0\n",
+ "\n",
+ "# 控制图表只能放大不能缩小\n",
+ "x_padding = 1\n",
+ "y_padding = 10\n",
+ "price_figure.x_range.bounds = (min(dailies_df.index) - x_padding, max(dailies_df.index) + x_padding)\n",
+ "price_figure.y_range.bounds = (min(dailies_df[\"Low\"]) - y_padding, max(dailies_df[\"High\"]) + y_padding)\n",
+ "\n",
+ "price_figure.xaxis.major_label_overrides = {\n",
" i: date.strftime(\"%Y-%m-%d\") for i, date in zip(dailies_df.index, dailies_df[\"trade_date\"])\n",
"}\n",
"\n",
- "p.segment(dailies_df.index, dailies_df[\"High\"], dailies_df.index, dailies_df[\"Low\"], color=\"black\")\n",
+ "price_figure.segment(dailies_df.index, dailies_df[\"High\"], dailies_df.index, dailies_df[\"Low\"], color=\"black\")\n",
"\n",
- "p.vbar(dailies_df_inc.index, 0.6, dailies_df_inc[\"Open\"], dailies_df_inc[\"Close\"], color=\"grey\")\n",
- "p.vbar(dailies_df_dec.index, 0.6, dailies_df_dec[\"Open\"], dailies_df_dec[\"Close\"], color=\"black\")\n",
+ "price_figure.vbar(dailies_df_inc.index, 0.6, dailies_df_inc[\"Open\"], dailies_df_inc[\"Close\"], color=\"grey\")\n",
+ "price_figure.vbar(dailies_df_dec.index, 0.6, dailies_df_dec[\"Open\"], dailies_df_dec[\"Close\"], color=\"black\")\n",
"\n",
- "p.line(dailies_df.index, dailies_df[\"sma30\"], color=\"orange\")\n",
- "p.line(dailies_df.index, dailies_df[\"sma60\"], color=\"red\")\n",
+ "price_figure.line(dailies_df.index, dailies_df[\"sma30\"], color=\"orange\")\n",
+ "price_figure.line(dailies_df.index, dailies_df[\"sma60\"], color=\"red\")\n",
"\n",
- "show(p)"
+ "macd_figure = figure(\n",
+ " width=width,\n",
+ " height=200,\n",
+ " tools=\"pan,wheel_zoom,box_zoom,reset\",\n",
+ ")\n",
+ "macd_figure.x_range.bounds = (min(dailies_df.index) - x_padding, max(dailies_df.index) + x_padding)\n",
+ "macd_figure.y_range.bounds = (min(dailies_df[\"macd\"]) - y_padding, max(dailies_df[\"macd\"]) + y_padding)\n",
+ "\n",
+ "macd_figure.line(dailies_df.index, dailies_df[\"macd\"], color=\"orange\")\n",
+ "macd_figure.line(dailies_df.index, dailies_df[\"signal\"], color=\"red\")\n",
+ "\n",
+ "# show(price_figure)\n",
+ "# show(macd_figure)\n",
+ "show(column(price_figure, macd_figure))"
],
"id": "96bdbedea2ddc1c",
"outputs": [
@@ -817,7 +1119,7 @@
" \n",
" \n",
"
\n",
- "
Loading BokehJS ...\n",
+ "
Loading BokehJS ...\n",
"
\n"
]
},
@@ -829,8 +1131,8 @@
},
{
"data": {
- "application/javascript": "'use strict';\n(function(root) {\n function now() {\n return new Date();\n }\n\n const force = true;\n\n if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n root._bokeh_onload_callbacks = [];\n root._bokeh_is_loading = undefined;\n }\n\nconst JS_MIME_TYPE = 'application/javascript';\n const HTML_MIME_TYPE = 'text/html';\n const EXEC_MIME_TYPE = 'application/vnd.bokehjs_exec.v0+json';\n const CLASS_NAME = 'output_bokeh rendered_html';\n\n /**\n * Render data to the DOM node\n */\n function render(props, node) {\n const script = document.createElement(\"script\");\n node.appendChild(script);\n }\n\n /**\n * Handle when an output is cleared or removed\n */\n function handleClearOutput(event, handle) {\n function drop(id) {\n const view = Bokeh.index.get_by_id(id)\n if (view != null) {\n view.model.document.clear()\n Bokeh.index.delete(view)\n }\n }\n\n const cell = handle.cell;\n\n const id = cell.output_area._bokeh_element_id;\n const server_id = cell.output_area._bokeh_server_id;\n\n // Clean up Bokeh references\n if (id != null) {\n drop(id)\n }\n\n if (server_id !== undefined) {\n // Clean up Bokeh references\n const cmd_clean = \"from bokeh.io.state import curstate; print(curstate().uuid_to_server['\" + server_id + \"'].get_sessions()[0].document.roots[0]._id)\";\n cell.notebook.kernel.execute(cmd_clean, {\n iopub: {\n output: function(msg) {\n const id = msg.content.text.trim()\n drop(id)\n }\n }\n });\n // Destroy server and session\n const cmd_destroy = \"import bokeh.io.notebook as ion; ion.destroy_server('\" + server_id + \"')\";\n cell.notebook.kernel.execute(cmd_destroy);\n }\n }\n\n /**\n * Handle when a new output is added\n */\n function handleAddOutput(event, handle) {\n const output_area = handle.output_area;\n const output = handle.output;\n\n // limit handleAddOutput to display_data with EXEC_MIME_TYPE content only\n if ((output.output_type != \"display_data\") || (!Object.prototype.hasOwnProperty.call(output.data, EXEC_MIME_TYPE))) {\n return\n }\n\n const toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n\n if (output.metadata[EXEC_MIME_TYPE][\"id\"] !== undefined) {\n toinsert[toinsert.length - 1].firstChild.textContent = output.data[JS_MIME_TYPE];\n // store reference to embed id on output_area\n output_area._bokeh_element_id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n }\n if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n const bk_div = document.createElement(\"div\");\n bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n const script_attrs = bk_div.children[0].attributes;\n for (let i = 0; i < script_attrs.length; i++) {\n toinsert[toinsert.length - 1].firstChild.setAttribute(script_attrs[i].name, script_attrs[i].value);\n toinsert[toinsert.length - 1].firstChild.textContent = bk_div.children[0].textContent\n }\n // store reference to server id on output_area\n output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n }\n }\n\n function register_renderer(events, OutputArea) {\n\n function append_mime(data, metadata, element) {\n // create a DOM node to render to\n const toinsert = this.create_output_subarea(\n metadata,\n CLASS_NAME,\n EXEC_MIME_TYPE\n );\n this.keyboard_manager.register_events(toinsert);\n // Render to node\n const props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n render(props, toinsert[toinsert.length - 1]);\n element.append(toinsert);\n return toinsert\n }\n\n /* Handle when an output is cleared or removed */\n events.on('clear_output.CodeCell', handleClearOutput);\n events.on('delete.Cell', handleClearOutput);\n\n /* Handle when a new output is added */\n events.on('output_added.OutputArea', handleAddOutput);\n\n /**\n * Register the mime type and append_mime function with output_area\n */\n OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n /* Is output safe? */\n safe: true,\n /* Index of renderer in `output_area.display_order` */\n index: 0\n });\n }\n\n // register the mime type if in Jupyter Notebook environment and previously unregistered\n if (root.Jupyter !== undefined) {\n const events = require('base/js/events');\n const OutputArea = require('notebook/js/outputarea').OutputArea;\n\n if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n register_renderer(events, OutputArea);\n }\n }\n if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n const NB_LOAD_WARNING = {'data': {'text/html':\n \"\\n\"+\n \"
\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"
\\n\"+\n \"
\\n\"+\n \"- re-rerun `output_notebook()` to attempt to load from CDN again, or
\\n\"+\n \"- use INLINE resources instead, as so:
\\n\"+\n \"
\\n\"+\n \"
\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"\\n\"+\n \"
\"}};\n\n function display_loaded(error = null) {\n const el = document.getElementById(\"b86774a5-59b5-4032-84a1-593268fb9b24\");\n if (el != null) {\n const html = (() => {\n if (typeof root.Bokeh === \"undefined\") {\n if (error == null) {\n return \"BokehJS is loading ...\";\n } else {\n return \"BokehJS failed to load.\";\n }\n } else {\n const prefix = `BokehJS ${root.Bokeh.version}`;\n if (error == null) {\n return `${prefix} successfully loaded.`;\n } else {\n return `${prefix} encountered errors while loading and may not function as expected.`;\n }\n }\n })();\n el.innerHTML = html;\n\n if (error != null) {\n const wrapper = document.createElement(\"div\");\n wrapper.style.overflow = \"auto\";\n wrapper.style.height = \"5em\";\n wrapper.style.resize = \"vertical\";\n const content = document.createElement(\"div\");\n content.style.fontFamily = \"monospace\";\n content.style.whiteSpace = \"pre-wrap\";\n content.style.backgroundColor = \"rgb(255, 221, 221)\";\n content.textContent = error.stack ?? error.toString();\n wrapper.append(content);\n el.append(wrapper);\n }\n } else if (Date.now() < root._bokeh_timeout) {\n setTimeout(() => display_loaded(error), 100);\n }\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n\n root._bokeh_onload_callbacks.push(callback);\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls == null || js_urls.length === 0) {\n run_callbacks();\n return null;\n }\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n root._bokeh_is_loading = css_urls.length + js_urls.length;\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n\n function on_error(url) {\n console.error(\"failed to load \" + url);\n }\n\n for (let i = 0; i < css_urls.length; i++) {\n const url = css_urls[i];\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error.bind(null, url);\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n }\n\n for (let i = 0; i < js_urls.length; i++) {\n const url = js_urls[i];\n const element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error.bind(null, url);\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n const js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-3.8.2.min.js\"];\n const css_urls = [];\n\n const inline_js = [ function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {\n }\n ];\n\n function run_inline_js() {\n if (root.Bokeh !== undefined || force === true) {\n try {\n for (let i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }\n\n } catch (error) {display_loaded(error);throw error;\n }if (force === true) {\n display_loaded();\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n } else if (force !== true) {\n const cell = $(document.getElementById(\"b86774a5-59b5-4032-84a1-593268fb9b24\")).parents('.cell').data().cell;\n cell.output_area.append_execute_result(NB_LOAD_WARNING)\n }\n }\n\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n run_inline_js();\n } else {\n load_libs(css_urls, js_urls, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));",
- "application/vnd.bokehjs_load.v0+json": "'use strict';\n(function(root) {\n function now() {\n return new Date();\n }\n\n const force = true;\n\n if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n root._bokeh_onload_callbacks = [];\n root._bokeh_is_loading = undefined;\n }\n\n\n if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n const NB_LOAD_WARNING = {'data': {'text/html':\n \"\\n\"+\n \"
\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"
\\n\"+\n \"
\\n\"+\n \"- re-rerun `output_notebook()` to attempt to load from CDN again, or
\\n\"+\n \"- use INLINE resources instead, as so:
\\n\"+\n \"
\\n\"+\n \"
\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"\\n\"+\n \"
\"}};\n\n function display_loaded(error = null) {\n const el = document.getElementById(\"b86774a5-59b5-4032-84a1-593268fb9b24\");\n if (el != null) {\n const html = (() => {\n if (typeof root.Bokeh === \"undefined\") {\n if (error == null) {\n return \"BokehJS is loading ...\";\n } else {\n return \"BokehJS failed to load.\";\n }\n } else {\n const prefix = `BokehJS ${root.Bokeh.version}`;\n if (error == null) {\n return `${prefix} successfully loaded.`;\n } else {\n return `${prefix} encountered errors while loading and may not function as expected.`;\n }\n }\n })();\n el.innerHTML = html;\n\n if (error != null) {\n const wrapper = document.createElement(\"div\");\n wrapper.style.overflow = \"auto\";\n wrapper.style.height = \"5em\";\n wrapper.style.resize = \"vertical\";\n const content = document.createElement(\"div\");\n content.style.fontFamily = \"monospace\";\n content.style.whiteSpace = \"pre-wrap\";\n content.style.backgroundColor = \"rgb(255, 221, 221)\";\n content.textContent = error.stack ?? error.toString();\n wrapper.append(content);\n el.append(wrapper);\n }\n } else if (Date.now() < root._bokeh_timeout) {\n setTimeout(() => display_loaded(error), 100);\n }\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n\n root._bokeh_onload_callbacks.push(callback);\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls == null || js_urls.length === 0) {\n run_callbacks();\n return null;\n }\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n root._bokeh_is_loading = css_urls.length + js_urls.length;\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n\n function on_error(url) {\n console.error(\"failed to load \" + url);\n }\n\n for (let i = 0; i < css_urls.length; i++) {\n const url = css_urls[i];\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error.bind(null, url);\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n }\n\n for (let i = 0; i < js_urls.length; i++) {\n const url = js_urls[i];\n const element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error.bind(null, url);\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n const js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-3.8.2.min.js\"];\n const css_urls = [];\n\n const inline_js = [ function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {\n }\n ];\n\n function run_inline_js() {\n if (root.Bokeh !== undefined || force === true) {\n try {\n for (let i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }\n\n } catch (error) {display_loaded(error);throw error;\n }if (force === true) {\n display_loaded();\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n } else if (force !== true) {\n const cell = $(document.getElementById(\"b86774a5-59b5-4032-84a1-593268fb9b24\")).parents('.cell').data().cell;\n cell.output_area.append_execute_result(NB_LOAD_WARNING)\n }\n }\n\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n run_inline_js();\n } else {\n load_libs(css_urls, js_urls, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));"
+ "application/javascript": "'use strict';\n(function(root) {\n function now() {\n return new Date();\n }\n\n const force = true;\n\n if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n root._bokeh_onload_callbacks = [];\n root._bokeh_is_loading = undefined;\n }\n\nconst JS_MIME_TYPE = 'application/javascript';\n const HTML_MIME_TYPE = 'text/html';\n const EXEC_MIME_TYPE = 'application/vnd.bokehjs_exec.v0+json';\n const CLASS_NAME = 'output_bokeh rendered_html';\n\n /**\n * Render data to the DOM node\n */\n function render(props, node) {\n const script = document.createElement(\"script\");\n node.appendChild(script);\n }\n\n /**\n * Handle when an output is cleared or removed\n */\n function handleClearOutput(event, handle) {\n function drop(id) {\n const view = Bokeh.index.get_by_id(id)\n if (view != null) {\n view.model.document.clear()\n Bokeh.index.delete(view)\n }\n }\n\n const cell = handle.cell;\n\n const id = cell.output_area._bokeh_element_id;\n const server_id = cell.output_area._bokeh_server_id;\n\n // Clean up Bokeh references\n if (id != null) {\n drop(id)\n }\n\n if (server_id !== undefined) {\n // Clean up Bokeh references\n const cmd_clean = \"from bokeh.io.state import curstate; print(curstate().uuid_to_server['\" + server_id + \"'].get_sessions()[0].document.roots[0]._id)\";\n cell.notebook.kernel.execute(cmd_clean, {\n iopub: {\n output: function(msg) {\n const id = msg.content.text.trim()\n drop(id)\n }\n }\n });\n // Destroy server and session\n const cmd_destroy = \"import bokeh.io.notebook as ion; ion.destroy_server('\" + server_id + \"')\";\n cell.notebook.kernel.execute(cmd_destroy);\n }\n }\n\n /**\n * Handle when a new output is added\n */\n function handleAddOutput(event, handle) {\n const output_area = handle.output_area;\n const output = handle.output;\n\n // limit handleAddOutput to display_data with EXEC_MIME_TYPE content only\n if ((output.output_type != \"display_data\") || (!Object.prototype.hasOwnProperty.call(output.data, EXEC_MIME_TYPE))) {\n return\n }\n\n const toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n\n if (output.metadata[EXEC_MIME_TYPE][\"id\"] !== undefined) {\n toinsert[toinsert.length - 1].firstChild.textContent = output.data[JS_MIME_TYPE];\n // store reference to embed id on output_area\n output_area._bokeh_element_id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n }\n if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n const bk_div = document.createElement(\"div\");\n bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n const script_attrs = bk_div.children[0].attributes;\n for (let i = 0; i < script_attrs.length; i++) {\n toinsert[toinsert.length - 1].firstChild.setAttribute(script_attrs[i].name, script_attrs[i].value);\n toinsert[toinsert.length - 1].firstChild.textContent = bk_div.children[0].textContent\n }\n // store reference to server id on output_area\n output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n }\n }\n\n function register_renderer(events, OutputArea) {\n\n function append_mime(data, metadata, element) {\n // create a DOM node to render to\n const toinsert = this.create_output_subarea(\n metadata,\n CLASS_NAME,\n EXEC_MIME_TYPE\n );\n this.keyboard_manager.register_events(toinsert);\n // Render to node\n const props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n render(props, toinsert[toinsert.length - 1]);\n element.append(toinsert);\n return toinsert\n }\n\n /* Handle when an output is cleared or removed */\n events.on('clear_output.CodeCell', handleClearOutput);\n events.on('delete.Cell', handleClearOutput);\n\n /* Handle when a new output is added */\n events.on('output_added.OutputArea', handleAddOutput);\n\n /**\n * Register the mime type and append_mime function with output_area\n */\n OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n /* Is output safe? */\n safe: true,\n /* Index of renderer in `output_area.display_order` */\n index: 0\n });\n }\n\n // register the mime type if in Jupyter Notebook environment and previously unregistered\n if (root.Jupyter !== undefined) {\n const events = require('base/js/events');\n const OutputArea = require('notebook/js/outputarea').OutputArea;\n\n if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n register_renderer(events, OutputArea);\n }\n }\n if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n const NB_LOAD_WARNING = {'data': {'text/html':\n \"\\n\"+\n \"
\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"
\\n\"+\n \"
\\n\"+\n \"- re-rerun `output_notebook()` to attempt to load from CDN again, or
\\n\"+\n \"- use INLINE resources instead, as so:
\\n\"+\n \"
\\n\"+\n \"
\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"\\n\"+\n \"
\"}};\n\n function display_loaded(error = null) {\n const el = document.getElementById(\"c90ae62e-0202-4ae5-bdf9-7daece276f71\");\n if (el != null) {\n const html = (() => {\n if (typeof root.Bokeh === \"undefined\") {\n if (error == null) {\n return \"BokehJS is loading ...\";\n } else {\n return \"BokehJS failed to load.\";\n }\n } else {\n const prefix = `BokehJS ${root.Bokeh.version}`;\n if (error == null) {\n return `${prefix} successfully loaded.`;\n } else {\n return `${prefix} encountered errors while loading and may not function as expected.`;\n }\n }\n })();\n el.innerHTML = html;\n\n if (error != null) {\n const wrapper = document.createElement(\"div\");\n wrapper.style.overflow = \"auto\";\n wrapper.style.height = \"5em\";\n wrapper.style.resize = \"vertical\";\n const content = document.createElement(\"div\");\n content.style.fontFamily = \"monospace\";\n content.style.whiteSpace = \"pre-wrap\";\n content.style.backgroundColor = \"rgb(255, 221, 221)\";\n content.textContent = error.stack ?? error.toString();\n wrapper.append(content);\n el.append(wrapper);\n }\n } else if (Date.now() < root._bokeh_timeout) {\n setTimeout(() => display_loaded(error), 100);\n }\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n\n root._bokeh_onload_callbacks.push(callback);\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls == null || js_urls.length === 0) {\n run_callbacks();\n return null;\n }\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n root._bokeh_is_loading = css_urls.length + js_urls.length;\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n\n function on_error(url) {\n console.error(\"failed to load \" + url);\n }\n\n for (let i = 0; i < css_urls.length; i++) {\n const url = css_urls[i];\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error.bind(null, url);\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n }\n\n for (let i = 0; i < js_urls.length; i++) {\n const url = js_urls[i];\n const element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error.bind(null, url);\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n const js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-3.8.2.min.js\"];\n const css_urls = [];\n\n const inline_js = [ function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {\n }\n ];\n\n function run_inline_js() {\n if (root.Bokeh !== undefined || force === true) {\n try {\n for (let i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }\n\n } catch (error) {display_loaded(error);throw error;\n }if (force === true) {\n display_loaded();\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n } else if (force !== true) {\n const cell = $(document.getElementById(\"c90ae62e-0202-4ae5-bdf9-7daece276f71\")).parents('.cell').data().cell;\n cell.output_area.append_execute_result(NB_LOAD_WARNING)\n }\n }\n\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n run_inline_js();\n } else {\n load_libs(css_urls, js_urls, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));",
+ "application/vnd.bokehjs_load.v0+json": "'use strict';\n(function(root) {\n function now() {\n return new Date();\n }\n\n const force = true;\n\n if (typeof root._bokeh_onload_callbacks === \"undefined\" || force === true) {\n root._bokeh_onload_callbacks = [];\n root._bokeh_is_loading = undefined;\n }\n\n\n if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n const NB_LOAD_WARNING = {'data': {'text/html':\n \"\\n\"+\n \"
\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"
\\n\"+\n \"
\\n\"+\n \"- re-rerun `output_notebook()` to attempt to load from CDN again, or
\\n\"+\n \"- use INLINE resources instead, as so:
\\n\"+\n \"
\\n\"+\n \"
\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"\\n\"+\n \"
\"}};\n\n function display_loaded(error = null) {\n const el = document.getElementById(\"c90ae62e-0202-4ae5-bdf9-7daece276f71\");\n if (el != null) {\n const html = (() => {\n if (typeof root.Bokeh === \"undefined\") {\n if (error == null) {\n return \"BokehJS is loading ...\";\n } else {\n return \"BokehJS failed to load.\";\n }\n } else {\n const prefix = `BokehJS ${root.Bokeh.version}`;\n if (error == null) {\n return `${prefix} successfully loaded.`;\n } else {\n return `${prefix} encountered errors while loading and may not function as expected.`;\n }\n }\n })();\n el.innerHTML = html;\n\n if (error != null) {\n const wrapper = document.createElement(\"div\");\n wrapper.style.overflow = \"auto\";\n wrapper.style.height = \"5em\";\n wrapper.style.resize = \"vertical\";\n const content = document.createElement(\"div\");\n content.style.fontFamily = \"monospace\";\n content.style.whiteSpace = \"pre-wrap\";\n content.style.backgroundColor = \"rgb(255, 221, 221)\";\n content.textContent = error.stack ?? error.toString();\n wrapper.append(content);\n el.append(wrapper);\n }\n } else if (Date.now() < root._bokeh_timeout) {\n setTimeout(() => display_loaded(error), 100);\n }\n }\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n\n root._bokeh_onload_callbacks.push(callback);\n if (root._bokeh_is_loading > 0) {\n console.debug(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls == null || js_urls.length === 0) {\n run_callbacks();\n return null;\n }\n console.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n root._bokeh_is_loading = css_urls.length + js_urls.length;\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n\n function on_error(url) {\n console.error(\"failed to load \" + url);\n }\n\n for (let i = 0; i < css_urls.length; i++) {\n const url = css_urls[i];\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error.bind(null, url);\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n }\n\n for (let i = 0; i < js_urls.length; i++) {\n const url = js_urls[i];\n const element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error.bind(null, url);\n element.async = false;\n element.src = url;\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n const js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-3.8.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-3.8.2.min.js\"];\n const css_urls = [];\n\n const inline_js = [ function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\nfunction(Bokeh) {\n }\n ];\n\n function run_inline_js() {\n if (root.Bokeh !== undefined || force === true) {\n try {\n for (let i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }\n\n } catch (error) {display_loaded(error);throw error;\n }if (force === true) {\n display_loaded();\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n } else if (force !== true) {\n const cell = $(document.getElementById(\"c90ae62e-0202-4ae5-bdf9-7daece276f71\")).parents('.cell').data().cell;\n cell.output_area.append_execute_result(NB_LOAD_WARNING)\n }\n }\n\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n run_inline_js();\n } else {\n load_libs(css_urls, js_urls, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));"
},
"metadata": {},
"output_type": "display_data",
@@ -842,7 +1144,7 @@
"data": {
"text/html": [
"\n",
- " \n"
+ " \n"
]
},
"metadata": {},
@@ -853,12 +1155,12 @@
},
{
"data": {
- "application/javascript": "(function(root) {\n function embed_document(root) {\n const docs_json = {\"b6a8a91e-b91f-4fb3-afc0-b28b4ee0ed96\":{\"version\":\"3.8.2\",\"title\":\"Bokeh Application\",\"config\":{\"type\":\"object\",\"name\":\"DocumentConfig\",\"id\":\"p5840\",\"attributes\":{\"notifications\":{\"type\":\"object\",\"name\":\"Notifications\",\"id\":\"p5841\"}}},\"roots\":[{\"type\":\"object\",\"name\":\"Figure\",\"id\":\"p5747\",\"attributes\":{\"sizing_mode\":\"stretch_width\",\"x_range\":{\"type\":\"object\",\"name\":\"DataRange1d\",\"id\":\"p5748\"},\"y_range\":{\"type\":\"object\",\"name\":\"DataRange1d\",\"id\":\"p5749\"},\"x_scale\":{\"type\":\"object\",\"name\":\"LinearScale\",\"id\":\"p5756\"},\"y_scale\":{\"type\":\"object\",\"name\":\"LinearScale\",\"id\":\"p5757\"},\"title\":{\"type\":\"object\",\"name\":\"Title\",\"id\":\"p5754\",\"attributes\":{\"text_color\":\"#5B5B5B\",\"text_font\":\"Helvetica\",\"text_font_size\":\"1.15em\"}},\"renderers\":[{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p5801\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p5795\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p5796\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p5797\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x0\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y0\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/3VUa1BUZRjmmolTuxKXuAxMxhAoLlgEzOTigxYOsismGjRgg0JckhiCILC4mEqECirs+c45XBVZQGgyaXNRN4KQi0Jxi0VIEYiQiKJVQKEk+vFxZpzp1zPve773eb/3ed7zvXJrS8BzmQQBJ1y4IyYEPNYeH5hiEHqhxyLKmGAkba/kqBfBYaPreWvnGNR9si+rdITBhZ+Cgt79mME/bltTHjQxsDcrODdrR2A6N+1g6kDwelyWTZmIILotpWCHHkEDb2h05GcGgYadEy6lQt3qgHuzWg3zv+cp0v7Kdy4/fe1XBgP9AUt+PUIdRVGGvD86j8CvZGrRbYTAYH9l8LECAsyPd8wdIkg/6eATvZ+AaY/f7BpEVu5tPLC9UuIszFs+YXHFdDeB5667xdfMBP4vjTWeczKCnJob3/qHCjw0v1B/1tlfQqCubYp0qyP4zH19/LlWgucdA43LZ4VzVG+qM62j83eoqw9HaoU5Kf5lWrQgbhP0s3g/N/GqmkHqvoYwbZ7wner6hexhxbNiBucrdMl91QpoRrwTCksV2Kpq/Fzdo0CU6GuD8O8VqH+v5EWdCQOx1Dl//YQCd5pPFRUtKpCtM94YYc9Ar2q0pTiIgX9oq1rnxeCsZLfTBnOB/8mY8vUof7Or1xN4p0Y9rDPnhH6U3+oXSVOEnMGQfEZ+P1LYE+o39Z/qQPMU6d5Rv6iftI7q/eS+UP+pT7W5tpMytRBbFd8PlOUQyM1P7BhMIiiLTz4YoyGIe3j7w6FugsvE3bfGkgWfmiBvdGEx25vRb7udxavim5G5ySzuNdsNVr7JIi3k4h6tD4tt9i7hhrEsEmUW80sVLPZK9jw2v8qiPFXv+N/DLDJlB3sHLnHw0M8az5vgMKLyt4kTcYiVbvNqCefwsn6Dr+4kh5rU3DbPfA5d5M7j0E08smWPxGaRPFKlrFlpPI+d4iR7nOJRINs5/XtCITaMDUfZhhdi9fW3ugrsCjGh7PR6ZpBHXartU4m+PIaVWxa7HXm8pi8/utGHR7C9KM3ShYeTzmHSWschPyQ/bkqfx5AyJdS9k0NuSMeP8ipuJZ5U3QqubuKwpu/AjNsqHp3EMqxBK9y7nexqfCGdwwdSE224hsMBSfXgH61CPUU6V332n8212QKOq0yvrInh8E22k6PIlcNMc63lmBGHYyHeZ0xn2RX8b98eWQm6UV7aV6v8SsMkcvhIdltRvMRCKn77fLszBy/xGWOXLhYRUtVCzkXBF6Oxuz2nNwv+Uh8pUr9vKENHNJGC79XZvX4e61hsEhu1zdiykEtavhtcxaJPNeetMGDRpPyh/NPl92F4+T+LLVl+t3SH3GIGCHS9as+MaSGfFLLOsiiXIEgaZnepnMBJnJyjiiEw0dWdvplO0K1yLZuvIoiSNVq/xBHojVm5PxglMMy3eYMxZPEvJpUInuAFAAA=\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}],[\"x1\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y1\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/3VSbUyTVxSmAhGmHcUIrNu0qOgKluIYi4wEPRTkY6PiwImD6mDlswoRmKSIcziGFogQN9573/fdAIlahrqZ6IoIVNSVDw3sg4+BikYoDHEkQlsgQ5D5Y29vwrJfT8495zz3nPM8jlFPpvv1CKR19zO//BHBA/mk3JyCYF2p31TVVQQLW2Rqy20EAe0FE8l1CE4zKxRVRQg0JnvvJBECm++H2ypjSb92/zWH5j8RjFimj3p3kf6EdTnJApb0CUekt5Pk5D/XjLKcpgYEMbZdY5JqBHn7WhL6yxEc3C40misIPzdX2OgmVcQ5wj/wR9RiRDeCkMwTb5xxwgCzo50zRzCcHXNtXBWNoSPI8R29DFvzW3c9rmxejeHq0X0nqofI3Fx83K613HkGQQtra1c4iKCzoe54Sj8CFpxLB/5CYD8QViv1xFbkeNM61BXv2xB+cRPzu08RhhkZ70ENQ/7jeLi4bP0B/vQkAsd/9eD2W7o3pwOXv9AXG5ucT+5Yb17oDc8l98tYsFTrJiqg/HHo3fpwyop3FkeeHWMp0A9ty/62moKdPanLv+uiINXpp2XKnymIm+IXfdFBgUx3q7ihm4JWTUhNnz0CQaDnN15jFNiJCl3CJihrPGvzECunCK6J/1Xw6jAF4rzDZVODFOR4xxWE3iC4tK9GGi3e7ILgA0V7g8kfga97vn5zMNmH88f/+YG7G6cT5wfOH5wfufxSXRUXul1T7YlezRuUunth//XPsVMeQWmJGISV5pjIEgwBoqqNHQ0Y1vIGJY+6XuqLM2r5NzC8LbDrmHyThl7dzDZqGQ2KwLf0UQsY5NK2m/eX01b8UHrqE3UiDfd0+oe+Cho+ku5+4dJEw2IPf/XeORqe94QebjxDwxVN4smsPhrqNeJNTj4MOBvfvayKYMC2t/fKdAwDYpPH+OsmBgojfbNzV7Iwb+BZmpxZWGMsKQ3ew0IfPl85V8KCSrr1Na98FvaKnD53k7CQFfhKv1LPwG5R+KO8bsLThd0SWvoZsBhy6gv2M+BinJc7nGXgYGCwf5uSvHM4qlvVuCKdYKDg43N3PBmYNFxyM9ox0IaL13/lQea+rnlmuKRhIEjgHpxaSJBWpXhvDCF7cft2a5+u/VvIgIOxNssH0RAmMvNqWmn4RbuhIP4mDROGUfWOi+SdiytU1WUnn9JWPn/B1/aS32jIiXSdXTxP6u9qFUP6FKIHm5ctvyWhwcYo9LMMYzgQqbluMBH92rSUzJ1PW3Xm8Br2C73oRlvr8+LHde89weBkOrIlfQBDjWbHyueZL30myC3RpRPs1KXx4qIwzA9HU3uKMVzGWodDSeT9UHy8+oUfhk8j5/KLt5OYqxvv8ZoLDiCxf4S5/bMfMPwDTI5TiOAFAAA=\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p5802\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p5803\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"Segment\",\"id\":\"p5798\",\"attributes\":{\"x0\":{\"type\":\"field\",\"field\":\"x0\"},\"y0\":{\"type\":\"field\",\"field\":\"y0\"},\"x1\":{\"type\":\"field\",\"field\":\"x1\"},\"y1\":{\"type\":\"field\",\"field\":\"y1\"}}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"Segment\",\"id\":\"p5799\",\"attributes\":{\"x0\":{\"type\":\"field\",\"field\":\"x0\"},\"y0\":{\"type\":\"field\",\"field\":\"y0\"},\"x1\":{\"type\":\"field\",\"field\":\"x1\"},\"y1\":{\"type\":\"field\",\"field\":\"y1\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.1}}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"Segment\",\"id\":\"p5800\",\"attributes\":{\"x0\":{\"type\":\"field\",\"field\":\"x0\"},\"y0\":{\"type\":\"field\",\"field\":\"y0\"},\"x1\":{\"type\":\"field\",\"field\":\"x1\"},\"y1\":{\"type\":\"field\",\"field\":\"y1\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.2}}}}},{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p5810\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p5804\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p5805\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p5806\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DyyvDAQAA4F92MZdZHsNOUySbcpADeTSvXGzLUpSFA3LA1MaiHZQssVYOIicXnLRSXv+c76uvJQiCkK2GbTNiu1E77LTLbmP22GufcRP2O+CgQw6bNOWIo4457oSTTjntjLOmnXPeBRddctkVM2bNuWreNdfdcNOCW26746577nvgoUceW/TEkmVPPbPiuRdWvfTKa2veeOuddRve++CjTz774qtvvvth00+//PbHX//8B3jw17KMAQAA\"},\"shape\":[99],\"dtype\":\"int32\",\"order\":\"little\"}],[\"top\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/2VQa0hTcRx1OSsE6yplbJVgRhjMUTBipdXBHlZoYhmViiTla9kkLdE00XxrLBXv/z6YVmCbj/CDZj4jfGRSs2IaDBNJZ5EpqNOtNIW+dL0f+nQ458f5cc7xvKVL7WonmFqyZ/kNESyWBJztjCLw/Kef1BbufLKVgWxK2XsjhOCad2osxYv3I29zZmPrCZT1o9oHTaK+diAwfamXYMFDv0INiv91e2662ecJXCxBRuV+Bvj1zeS4x8AQ3ba5+ztBVIPZM95F5AmD6VXnnBhM3L+kzFczCH2o4PJcmXX/hhjjlYIqBo5AyZenHAMe7mWWGTGHd5lqoaaF4OXi2siZNIKk4zLrYhVBWu3Kh7kLNA5v6Y7ITqLBFgUvzzfRKEs0ZLq9oHF+OH6TfohGYGtPSbuZhm/GXd3CGI0OTY2PzZVgZvKQPMdBw2z46dXhJHLBN95frtf/odd1mnreECQncKqbHKi+TJCfGTveWSrmE/Z6zTtL88ZEzJW+eeTuIOt7CP2FvinJ2X35cSL3kowpxocYkIzGJp9hBm2M6nTjDhY/+r1GjWEs9kk0Glkui3KNZW66nIWaqnRRfGLRXBxTdPszi6zgWpX/VQ5JR0+oB65ziFZO+odpOfja9k7LbRxW+yVLXe48ioOXqW1xPKyGjXxyDg+ZtW/22SoHXaTpY0jd/34BlZLfxnCViM4jI832ixz0Gj9Tb7XIhTwCCjkLIo9VethZvDNETbyKY3GQkg7O72LBZ6SE9ChYSK1fzRUBLFxtLRXvsxn4UmmlrYkM5JLtOtxhcEqpznscLuqm1gRJRKh4360tKiywMPgLDzXgARgDAAA=\"},\"shape\":[99],\"dtype\":\"float64\",\"order\":\"little\"}],[\"bottom\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/12QfSzUcRzHkTNangotlYeUKXPNpTS69S5PU5mHVmsxJaFdspppd9N0WnQyl+L3/f1+ZylTFyk2Jeep/giTMXPOYw+4w0iGm5PF0l/nt/XXa+8/Pp/P+/PqUlVmJw8SZEy5bOWvEjjdkKc3qQgUsM8fmiXwFgS4De+gcdk9PclOQRA26SkKf0GgjK+3bJ4i4FeOpN2r5uaGBiLXw9UEE0uGOz7dHLPN2x7ZLxMEp+XufG5Lw6uJ7T2YQ8Ms4dWFnGIa1zrExadMaMyVrFalHKI3+jR7JNYNh9Go4bX4L5+h8aehbP9pPo3eaZsrvytofLeoGx0ppyGUhmRFTHF7jD2sIqcNgy0E7vl+i6XvuP5f1ifmsxQUtIG+syGFFFJs35slfqaQ7nNRGvqRgpckQ774jcKs9oizdJlCGT/Gy9uRYEu7LDg7hkCt/OnSYELQICr10G8maJMFl/XzCHbH9tjZaKmNLNPzfK66EgjcMlu8gwjuZyb9aHzIefrft9GPfM91a8MCQdxrtVMKj4Z/1NjTZgfOl/FvYzb6aFdSJ92sGRj67g7sCmMQzS+4JE5gUCgamp8p5FgrS3hwq5+BwPRTqL6AxSaNptZwlsVSa/oHaTyLeL42MDqNhZd+74yznsVLUZPV3ygFJELG4dlNBbKFnjEjHiVw0Cz4pDYqMKo8vtrrqcBXpTjOr5ubl8d29URUsFhpDTjnomJhrztcIwrn7lloSqKL3nJMFQYdbU9kUS4xyV8bZXDA1NeqfoTBQuub7TpzFo66tQjLcha/WifFIVUMtulP9FgIGJjrxtSPjzHoVMaNtyQzmOtbZMaLaAS4lu7rUNF4IpmwzZVwXNPGUOfzuEwkVdUefTQ68247qldo/AMyrvUEGAMAAA==\"},\"shape\":[99],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p5811\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p5812\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p5807\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_color\":{\"type\":\"value\",\"value\":\"grey\"},\"fill_color\":{\"type\":\"value\",\"value\":\"grey\"},\"hatch_color\":{\"type\":\"value\",\"value\":\"grey\"}}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p5808\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_color\":{\"type\":\"value\",\"value\":\"grey\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.1},\"fill_color\":{\"type\":\"value\",\"value\":\"grey\"},\"fill_alpha\":{\"type\":\"value\",\"value\":0.1},\"hatch_color\":{\"type\":\"value\",\"value\":\"grey\"},\"hatch_alpha\":{\"type\":\"value\",\"value\":0.1}}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p5809\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_color\":{\"type\":\"value\",\"value\":\"grey\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.2},\"fill_color\":{\"type\":\"value\",\"value\":\"grey\"},\"fill_alpha\":{\"type\":\"value\",\"value\":0.2},\"hatch_color\":{\"type\":\"value\",\"value\":\"grey\"},\"hatch_alpha\":{\"type\":\"value\",\"value\":0.2}}}}},{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p5819\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p5813\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p5814\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p5815\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DsUpCAQAAwNdgDWqDc5mgIC2KSdTQ0haioygoOIRDpJNNgZQYQjiEkRGEiWQNFhFJfp93cEEQBBuG3HTLsBGjbhtzx13j7pkwacq0+2bMmvPAvIceeeyJp55ZsGjJshWr1qzb8NymF17asm3HK6/teuOtPfveOfDeoQ+OfPTJsc+++OrEN6fOfHfuh58u/PLbH3/9c+m/K9ejT3x0SAEAAA==\"},\"shape\":[82],\"dtype\":\"int32\",\"order\":\"little\"}],[\"top\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/0WRa0iTcRjFs2Z326tYgprmpVyQl0JU6HYUzZKNZXSDjbBCswkSiDYpc5qYhU0w3/9laqWCZC67MVNQDFlhpBk6vJRCeYmsoLk2A1OsD819Oh9+5+F5znnSU0eS6rIoetuaijKGCYokryo85wgWoxK09m6C1l+LlsN5BOqHA1suuNNl3mVYJbk+RpAWlJMuGFxz0kLFUGYFxbXbofGZZynIm0v7Ik9RfC44EVESRxF79FNthzdFoHdVvSOAIrNHW5WywuXrCDlvGk12+Z0890uAV8QfAn1wlofDSjDrVTMv9BBM2R1Xw/sI1im/OoY7CSKaPmQXtxB8n4jx1c2JkOXn6mfHRLRr7obY1pNldfKtqn5h04SIkSHl0pEBV26nJmaX+t2Xuvpx3mPU+8/I2yjS//f3ulFM2ObB4BgsHPJPZihQPTk+HM9QrvFMlccyKAOLDo5pOS7Lx8XaJYa9boqS8HgD5k2OwcCd1SiXv3z8tMuAFKFFVx9jQJ3Grkn7zbHBcs4atcYAmS10xtfG8bFRq47u49CrevsVDzhmTKOnm7o5VluqU+884tDJswZHnnG0l/00G8v48l6myQjfnsjRWibbIY3kqNLc09/4xmA1G30mJRybJxcUaxs47OacVt0ZDj9b/8aEaYY4odJ913uGH+ZpbVKzK0+QW8PbK2EMuwVJj9WfYdTUOb5HzfCCRh9q9mGwmOYOiCsZ1PvDOpWL//6nCvap0VN0N75rKH5OsTBxTDx5k6Iyf0pamk8hE/JumS5S/AW8YhjzkAIAAA==\"},\"shape\":[82],\"dtype\":\"float64\",\"order\":\"little\"}],[\"bottom\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/0WPbUhTYRiGi81MTdRFBv1waCMlbFmIhl/cSiWWIiIi1WZa2NRIKik6aWaYdkybGex9z3uQ/AgktVwpSzOHGOsDSoQ50yIy8yN/LNLlTDCp/hzPr4uL54b7uSc+pP9NsRMEnjOWvOgjWItIurL0koDTD+aO1xP8qolL6dcRDIoKZeVngpkld9meYYJMxfD38CaCMsdJc4WGILg2cvF+D0H5HU1iQR7FwM7Tlo/JFP/PT5rjKVTLPzQqDUVbTu/mgTkCXYc90OBBcWkuSKVdJZi6lqW9eUDO3VC+qg9YJjCGnPV1L8iU+qV/Jca8qXDmtxN0jGVn55cS6Au6RsP0JiRZhmr67CZ8sd1tbFyVqVRXbkt2mnB80bfq+lsTvNLn3eNWeYfkPWX66qYpuVdys4c1ejmVru/1c12NKJygqCsKyEiNFqCc/mpviBPQSyMPd24XcFTd35ygZti9cZ9X7ycBZ7TnubpgEa/5gy1VJhFH/LsqWqNE+DhOLUR4ijBzWYYxJ0NL0VJR7m+GFVtMVlAfQ472W2xGMcOsRdXvU8jwjA/b5beXwXji/UjaQ4bn/E/bI55B4XB0uzMZ1C7SOZnA1vsfcBtq/0wK6Obzbl0Ykzne9tRKSti6S7nHvDg/WipgqytxZNN+ASJ3MW0oXEA7P5oSFSLvk1wXH2pNX6OYtmXHeq9QeLt6Gt6VU7Twh7asFlMYUod2hDKKe9yMXzVHEeZ/+balkMLa5ukxe4ziHwAaZj2QAgAA\"},\"shape\":[82],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p5820\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p5821\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p5816\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"fill_color\":{\"type\":\"value\",\"value\":\"black\"}}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p5817\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.1},\"fill_color\":{\"type\":\"value\",\"value\":\"black\"},\"fill_alpha\":{\"type\":\"value\",\"value\":0.1},\"hatch_alpha\":{\"type\":\"value\",\"value\":0.1}}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p5818\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.2},\"fill_color\":{\"type\":\"value\",\"value\":\"black\"},\"fill_alpha\":{\"type\":\"value\",\"value\":0.2},\"hatch_alpha\":{\"type\":\"value\",\"value\":0.2}}}}},{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p5828\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p5822\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p5823\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p5824\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/0WTeTTVaRjHyzqEinI14YpcI3WdpqSQ+eZaRt2kxSldIVlKe1RkikqK1hHv+3vR4pREaUGLqDAUWepKlAoRZiRNMZapmN+Z0zn99Tnv+2zv832ed6i1qXjuZIqNPqrVGUYUy+xFWWtMKMZ1eqgpmlPsm69t0z2VYutspecTplHcirLzXc+fP5XOcVrJ25Weu6SLeep+8/cwya9pmULhODZri5YFRUfxUGq/iMLW/HX61EkUCj/e3PnLeIrHQ30WEi2K+VxJbrwyRbuNxExdiY877/UkdQT/nvoFSwu+Ejjdf5hpPEiwqvlixdo+gnzX4tARPQQvwncsu/2ewE1pqyHpIKg9Gz7/1zcEvtM7V75rItjvoSJM4ClSXeG++yXBxkUnnlc3EAw9XVvl10hwfMW84j7eX2YsSAlvIXAdo2aTxnOHtW/qtbcEJ6UZFzraCSbL9yZHdBKopFbl//GBwCBdohDbS6DLbZEI+gmCWls3VQwQhLQbaos/E5gd16kIHiJIbrVudlal+I3TE2mNo9BQiMEkIUVv83nhS14HecEh2c/GFBVZN1IKJ3/XKXXXgwkXzCgGazWUKkXf78WjrKe48uyWy33X8f5S23dqI/k8L9of9E7Wo4i9ee/cR17Pl/qnMkRqFOo+Pu+yFSlCR8Z1XeH1urGlNPgE34+rReg4Ea9H9OFXTxOfEOzNbio3LSFI6rYo7coj2NDyy2y/awTtEZpF19MJhm95FoSdIhjbVjNQlUiwLyKg8U4cgWTV+g+yvQRe7Fan8U6CXr85S6esIzhjX26gIiOwFxg6Rc4nqCgetDw3j6CowTyoyJogoXpuwywxQZ5maZiviGBU6Lk9iUYEp3Q6FmbqE4R+9ksbo8fXO/1GcEiXoNIj4/gsAcEBza2qbTxzZ5Zt+nsCgXKUbdL5iQQtMmHdZ57d3ivDvQ0JjHyudL6YSlD8rV7MrqL0xQ4Eke77tXykvL1yKM55Od+H1nh7N18Cz8I7zdnBBPIfXBoiwwj2HPw6WH6AwFRbamVyjCDK6bh5HiN4H9ccaZLG70fbrpcl2QSNEwe33S0kGFO9d2BNDYF3soZzKL8/jXqinUf4Pa07HKGyaBTFs4MtEf783GPzDe5qTqeYVJ+ftcSRYvn4N6LPyynOBoxTCFtPcWl4UapKJMWRAYG6J6Goqf3ikJFJYYZ97q8KKAwrbJKdnlIk1qelXv+L4ob2R039YQof2Y77eQIOOa4PstWsOJxekCcJWcwBh/okbps5yLB2bmg8h2NH1f7VyOZgXVe6caqcQ8xS9cbzHRza/JYlKX/hkO1x689gbQarqGGx3RSGNL3pX6VgSLBaV3N0Cfv/P9X6M9gdnaGctIXhIXUvmrSHIfLx7vSOWAadNTE5egl8fPSl6PtnGXzFBWmjMxkCZ17senSd4UKP8uIFtxmiKt9sLCtiqBCklj4uY2ix9L/8upwh9plkxeoqBlvVA/3r5QzOJ9s7P/EUR5gotT1h+HjPVuJQzbBd0mcgLGW4HhnkWMPny1UIWliYxWA+4Pr7bL5us2Wcg/AYz6s6Fy0jGW4oKx5s2s6wwznN2GczQ2t2iq44gEE30Pi9tRdDweHDQxXuDEnBgdNMHRkqDboULW0Z4t8qSndNY/hUwqTFxgy9LszjmoBhwgaXRA91hrqMkKP9wxxyD7kVuPdwKE0y9TrXxevsn+NS2cJhRpy+p289hxNBdjcflXFICTEb7XeHg7NQpaooncO2yjNeYyiHS8rJTW0xHAKweGZmGIfqjJro5GB+TjrLnh3x4iC/LOth7hy874w0NHLkYMdeScOtOUSvvhqYY8HBD3GJGkIOntY/XQrR4SC1cDf4qsjBaGf8P179FP8BIUxvteAFAAA=\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p5829\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p5830\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p5825\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"orange\"}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p5826\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"orange\",\"line_alpha\":0.1}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p5827\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"orange\",\"line_alpha\":0.2}}}},{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p5837\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p5831\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p5832\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p5833\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/22UezDWWRjHlRW5RO+WimWyiFKbSpKKL6V37Vtuu5sxsSTdiKalmWS0NpdRK7dyzu9XrouK5FpY127oQoQkm1ci5RLlkjt7dqaZ9o/96zNnznOe5/t9znNOlc3Lj9+BosHrzDHBFooqD2F1lhFFsFFmpL0BRUdS1eYBfQqtT7TVWo/CyWyfTaU2xRaj7IPx6hS5JeI/h1Uo7jQWRtsspShvCVrevJiiotu+zfJrinsDmp5PlSjqpWcc1yygcIw3nrSX/cLf7u4pl2B0+rzOGPC9eWE+RfqIhbmqNIVJRGngNSmKdijeippD8db6tbfkLEHwoEvXqWmCNGX/dE3G1l1X6xKnCOR9ZjZlzBA81J7QaGDxfZbKXX6M03u1vrf5H9pnx6f0z6VY65+l0cjqzOAvz1oZisDPugZ02/y95ShO5wVKRMhTRJdXNP7NfCwz279CgfnaF1i7/PlCCvHkATN15ld25VnDHAHF0RDZ+5sXUcDh7ZMrjF4BJoa5yhSJJQY9+Syu9XP8/M/xq3enTjgwjnwjdHVjeW+0tBy6xOrYhbjITcl/0aPukVQ+y3Qqea1P12L61cKadWSYb6kQ13bzUYI50RNTtoMEW5+PtmOAoMh9/KVMN0GyWyDZ3knQcMWiuVZM0F0zGBL3gmBmOGGjRyMBH9ez0b2O4PGLV91eNQSnwj3Lih4TRGdZtUk8ZPtlGvG/VhL4ZqWsuHeHoE2jQsKijGDHxTctlUUEouRC3qiQILL3g8a5AnYv8vXmdTcJOmxrdcpzCKpFDu3jGQTrynyL/dIIbN/tU8i4QmA/alCtlkKwe3hctziJQL8tWzMogSDpJ/mkw/EE4gvbxmrjCNy1MmW8Ywkqz1flyPIEQtVpdVEMgfNWsWlUNMGU2DFXJorp0I/12BFJUJo6+k43gvmsVxEXhxPM7V97/BSjjemxVfnnCcJPJ/6uxuhq6x92jtHRPL1mKTtXlqC3N4nlueynSMcYA1wmJI1Z/iXDqQWmFwiOmC7rGLr4hfYh2nK3CIGVQ0yFL2Pj+4iGJUznrrx6w1Dmx0BP6XoN85no9lGl4DrBxdS1yj65rI+L3IrsWN/OZhf/eJ/1s/UJ51j1iEDv6qvqqibGj4bawnYCT+NU54O9BFHaxSon2P0W86+Lm9i81hWmbi9l82HqJHhm+S17j4KxsAOGFIL9pSdeW1I4921Na3Ki2Baywa3Vh0LaSjF2zVmKnSJcHYijWJWp6yjIZnM/ovvo7W2Knrw5isI6iheuwoyJdvYPPA01KRykCFIY3JM2l0NW4eyDBwIOKTdaZk5rcIjkMyVF+hxWD9sqGoOD96hEa541h6/mCSUELhyGho/mhHtyuCu1vmaBHwf/oKEtmqEcFJZNbkokHAr+OLmhN5mDwSKTvarZHPR+TtwtVcLqJEtqaVVx0M9S2h5bz8E5rdNO1Mrh6WGim9XF4Yh1vtfRfg45nWTy/ScOOjqRD/hZDhuQ6H5Pmoea0Xi5pRKP/PgFtvFLeYx4uk0Ea/KYrraXOKPHo+PcyWZen7G1z912E4/R4ArloG08Eu6IFm8255GdtspDvJOHnFrwRh1LHsppXbqZjOIBH7nuH3hUx7nGqzP6zPNfLvMfRnd+CHAQ8fCrXnNJxNbvTRY+eybkMV9FMdrSgsdNC7cezoxHjM6tklojHrN1x1uM1v97PrJXdzWP592XI6y0eQQI/HbcVmN1u4Vhhxbz0Bq7FvpSluWJM1jnO8NhvEajJnaQQ1PG1OTIGw4aRrJ9MU0cYofi0mwfcgjgVtr1sz4+FqvK/5LH4R+fxKBb4AUAAA==\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p5838\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p5839\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p5834\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"red\"}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p5835\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"red\",\"line_alpha\":0.1}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p5836\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"red\",\"line_alpha\":0.2}}}}],\"toolbar\":{\"type\":\"object\",\"name\":\"Toolbar\",\"id\":\"p5755\",\"attributes\":{\"tools\":[{\"type\":\"object\",\"name\":\"PanTool\",\"id\":\"p5782\"},{\"type\":\"object\",\"name\":\"WheelZoomTool\",\"id\":\"p5783\",\"attributes\":{\"renderers\":\"auto\"}},{\"type\":\"object\",\"name\":\"BoxZoomTool\",\"id\":\"p5784\",\"attributes\":{\"dimensions\":\"both\",\"overlay\":{\"type\":\"object\",\"name\":\"BoxAnnotation\",\"id\":\"p5785\",\"attributes\":{\"syncable\":false,\"line_color\":\"black\",\"line_alpha\":1.0,\"line_width\":2,\"line_dash\":[4,4],\"fill_color\":\"lightgrey\",\"fill_alpha\":0.5,\"level\":\"overlay\",\"visible\":false,\"left\":{\"type\":\"number\",\"value\":\"nan\"},\"right\":{\"type\":\"number\",\"value\":\"nan\"},\"top\":{\"type\":\"number\",\"value\":\"nan\"},\"bottom\":{\"type\":\"number\",\"value\":\"nan\"},\"left_units\":\"canvas\",\"right_units\":\"canvas\",\"top_units\":\"canvas\",\"bottom_units\":\"canvas\",\"handles\":{\"type\":\"object\",\"name\":\"BoxInteractionHandles\",\"id\":\"p5791\",\"attributes\":{\"all\":{\"type\":\"object\",\"name\":\"AreaVisuals\",\"id\":\"p5790\",\"attributes\":{\"fill_color\":\"white\",\"hover_fill_color\":\"lightgray\"}}}}}}}},{\"type\":\"object\",\"name\":\"ResetTool\",\"id\":\"p5792\"},{\"type\":\"object\",\"name\":\"SaveTool\",\"id\":\"p5793\"},{\"type\":\"object\",\"name\":\"HoverTool\",\"id\":\"p5794\",\"attributes\":{\"renderers\":\"auto\",\"sort_by\":null}}]}},\"left\":[{\"type\":\"object\",\"name\":\"LinearAxis\",\"id\":\"p5777\",\"attributes\":{\"ticker\":{\"type\":\"object\",\"name\":\"BasicTicker\",\"id\":\"p5778\",\"attributes\":{\"mantissas\":[1,2,5]}},\"formatter\":{\"type\":\"object\",\"name\":\"BasicTickFormatter\",\"id\":\"p5779\"},\"axis_label_standoff\":10,\"axis_label_text_color\":\"#5B5B5B\",\"axis_label_text_font\":\"Helvetica\",\"axis_label_text_font_size\":\"1.25em\",\"axis_label_text_font_style\":\"normal\",\"major_label_policy\":{\"type\":\"object\",\"name\":\"AllLabels\",\"id\":\"p5780\"},\"major_label_text_color\":\"#5B5B5B\",\"major_label_text_font\":\"Helvetica\",\"major_label_text_font_size\":\"1.025em\",\"axis_line_color\":\"#5B5B5B\",\"axis_line_alpha\":0,\"major_tick_line_color\":\"#5B5B5B\",\"major_tick_line_alpha\":0,\"minor_tick_line_color\":\"#5B5B5B\",\"minor_tick_line_alpha\":0}}],\"below\":[{\"type\":\"object\",\"name\":\"DatetimeAxis\",\"id\":\"p5758\",\"attributes\":{\"ticker\":{\"type\":\"object\",\"name\":\"DatetimeTicker\",\"id\":\"p5759\",\"attributes\":{\"num_minor_ticks\":5,\"tickers\":[{\"type\":\"object\",\"name\":\"AdaptiveTicker\",\"id\":\"p5760\",\"attributes\":{\"num_minor_ticks\":0,\"mantissas\":[1,2,5],\"max_interval\":500.0}},{\"type\":\"object\",\"name\":\"AdaptiveTicker\",\"id\":\"p5761\",\"attributes\":{\"num_minor_ticks\":0,\"base\":60,\"mantissas\":[1,2,5,10,15,20,30],\"min_interval\":1000.0,\"max_interval\":1800000.0}},{\"type\":\"object\",\"name\":\"AdaptiveTicker\",\"id\":\"p5762\",\"attributes\":{\"num_minor_ticks\":0,\"base\":24,\"mantissas\":[1,2,4,6,8,12],\"min_interval\":3600000.0,\"max_interval\":43200000.0}},{\"type\":\"object\",\"name\":\"DaysTicker\",\"id\":\"p5763\",\"attributes\":{\"days\":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]}},{\"type\":\"object\",\"name\":\"DaysTicker\",\"id\":\"p5764\",\"attributes\":{\"days\":[1,4,7,10,13,16,19,22,25,28]}},{\"type\":\"object\",\"name\":\"DaysTicker\",\"id\":\"p5765\",\"attributes\":{\"days\":[1,8,15,22]}},{\"type\":\"object\",\"name\":\"DaysTicker\",\"id\":\"p5766\",\"attributes\":{\"days\":[1,15]}},{\"type\":\"object\",\"name\":\"MonthsTicker\",\"id\":\"p5767\",\"attributes\":{\"months\":[0,1,2,3,4,5,6,7,8,9,10,11]}},{\"type\":\"object\",\"name\":\"MonthsTicker\",\"id\":\"p5768\",\"attributes\":{\"months\":[0,2,4,6,8,10]}},{\"type\":\"object\",\"name\":\"MonthsTicker\",\"id\":\"p5769\",\"attributes\":{\"months\":[0,4,8]}},{\"type\":\"object\",\"name\":\"MonthsTicker\",\"id\":\"p5770\",\"attributes\":{\"months\":[0,6]}},{\"type\":\"object\",\"name\":\"YearsTicker\",\"id\":\"p5771\"}]}},\"formatter\":{\"type\":\"object\",\"name\":\"DatetimeTickFormatter\",\"id\":\"p5774\",\"attributes\":{\"seconds\":\"%T\",\"minsec\":\"%T\",\"minutes\":\"%H:%M\",\"hours\":\"%H:%M\",\"days\":\"%b %d\",\"months\":\"%b %Y\",\"strip_leading_zeros\":[\"microseconds\",\"milliseconds\",\"seconds\"],\"boundary_scaling\":false,\"context\":{\"type\":\"object\",\"name\":\"DatetimeTickFormatter\",\"id\":\"p5773\",\"attributes\":{\"microseconds\":\"%T\",\"milliseconds\":\"%T\",\"seconds\":\"%b %d, %Y\",\"minsec\":\"%b %d, %Y\",\"minutes\":\"%b %d, %Y\",\"hourmin\":\"%b %d, %Y\",\"hours\":\"%b %d, %Y\",\"days\":\"%Y\",\"months\":\"\",\"years\":\"\",\"boundary_scaling\":false,\"hide_repeats\":true,\"context\":{\"type\":\"object\",\"name\":\"DatetimeTickFormatter\",\"id\":\"p5772\",\"attributes\":{\"microseconds\":\"%b %d, %Y\",\"milliseconds\":\"%b %d, %Y\",\"seconds\":\"\",\"minsec\":\"\",\"minutes\":\"\",\"hourmin\":\"\",\"hours\":\"\",\"days\":\"\",\"months\":\"\",\"years\":\"\",\"boundary_scaling\":false,\"hide_repeats\":true}},\"context_which\":\"all\"}},\"context_which\":\"all\"}},\"axis_label_standoff\":10,\"axis_label_text_color\":\"#5B5B5B\",\"axis_label_text_font\":\"Helvetica\",\"axis_label_text_font_size\":\"1.25em\",\"axis_label_text_font_style\":\"normal\",\"major_label_overrides\":{\"type\":\"map\",\"entries\":[[0,\"2025-01-02\"],[1,\"2025-01-03\"],[2,\"2025-01-06\"],[3,\"2025-01-07\"],[4,\"2025-01-08\"],[5,\"2025-01-09\"],[6,\"2025-01-10\"],[7,\"2025-01-13\"],[8,\"2025-01-14\"],[9,\"2025-01-15\"],[10,\"2025-01-16\"],[11,\"2025-01-17\"],[12,\"2025-01-20\"],[13,\"2025-01-21\"],[14,\"2025-01-22\"],[15,\"2025-01-23\"],[16,\"2025-01-24\"],[17,\"2025-01-27\"],[18,\"2025-02-05\"],[19,\"2025-02-06\"],[20,\"2025-02-07\"],[21,\"2025-02-10\"],[22,\"2025-02-11\"],[23,\"2025-02-12\"],[24,\"2025-02-13\"],[25,\"2025-02-14\"],[26,\"2025-02-17\"],[27,\"2025-02-18\"],[28,\"2025-02-19\"],[29,\"2025-02-20\"],[30,\"2025-02-21\"],[31,\"2025-02-24\"],[32,\"2025-02-25\"],[33,\"2025-02-26\"],[34,\"2025-02-27\"],[35,\"2025-02-28\"],[36,\"2025-03-03\"],[37,\"2025-03-04\"],[38,\"2025-03-05\"],[39,\"2025-03-06\"],[40,\"2025-03-07\"],[41,\"2025-03-10\"],[42,\"2025-03-11\"],[43,\"2025-03-12\"],[44,\"2025-03-13\"],[45,\"2025-03-14\"],[46,\"2025-03-17\"],[47,\"2025-03-18\"],[48,\"2025-03-19\"],[49,\"2025-03-20\"],[50,\"2025-03-21\"],[51,\"2025-03-24\"],[52,\"2025-03-25\"],[53,\"2025-03-26\"],[54,\"2025-03-27\"],[55,\"2025-03-28\"],[56,\"2025-03-31\"],[57,\"2025-04-01\"],[58,\"2025-04-02\"],[59,\"2025-04-03\"],[60,\"2025-04-07\"],[61,\"2025-04-08\"],[62,\"2025-04-09\"],[63,\"2025-04-10\"],[64,\"2025-04-11\"],[65,\"2025-04-14\"],[66,\"2025-04-15\"],[67,\"2025-04-16\"],[68,\"2025-04-17\"],[69,\"2025-04-18\"],[70,\"2025-04-21\"],[71,\"2025-04-22\"],[72,\"2025-04-23\"],[73,\"2025-04-24\"],[74,\"2025-04-25\"],[75,\"2025-04-28\"],[76,\"2025-04-29\"],[77,\"2025-04-30\"],[78,\"2025-05-06\"],[79,\"2025-05-07\"],[80,\"2025-05-08\"],[81,\"2025-05-09\"],[82,\"2025-05-12\"],[83,\"2025-05-13\"],[84,\"2025-05-14\"],[85,\"2025-05-15\"],[86,\"2025-05-16\"],[87,\"2025-05-19\"],[88,\"2025-05-20\"],[89,\"2025-05-21\"],[90,\"2025-05-22\"],[91,\"2025-05-23\"],[92,\"2025-05-26\"],[93,\"2025-05-27\"],[94,\"2025-05-28\"],[95,\"2025-05-29\"],[96,\"2025-05-30\"],[97,\"2025-06-03\"],[98,\"2025-06-04\"],[99,\"2025-06-05\"],[100,\"2025-06-06\"],[101,\"2025-06-09\"],[102,\"2025-06-10\"],[103,\"2025-06-11\"],[104,\"2025-06-12\"],[105,\"2025-06-13\"],[106,\"2025-06-16\"],[107,\"2025-06-17\"],[108,\"2025-06-18\"],[109,\"2025-06-19\"],[110,\"2025-06-20\"],[111,\"2025-06-23\"],[112,\"2025-06-24\"],[113,\"2025-06-25\"],[114,\"2025-06-26\"],[115,\"2025-06-27\"],[116,\"2025-06-30\"],[117,\"2025-07-01\"],[118,\"2025-07-02\"],[119,\"2025-07-03\"],[120,\"2025-07-04\"],[121,\"2025-07-07\"],[122,\"2025-07-08\"],[123,\"2025-07-09\"],[124,\"2025-07-10\"],[125,\"2025-07-11\"],[126,\"2025-07-14\"],[127,\"2025-07-15\"],[128,\"2025-07-16\"],[129,\"2025-07-17\"],[130,\"2025-07-18\"],[131,\"2025-07-21\"],[132,\"2025-07-22\"],[133,\"2025-07-23\"],[134,\"2025-07-24\"],[135,\"2025-07-25\"],[136,\"2025-07-28\"],[137,\"2025-07-29\"],[138,\"2025-07-30\"],[139,\"2025-07-31\"],[140,\"2025-08-01\"],[141,\"2025-08-04\"],[142,\"2025-08-05\"],[143,\"2025-08-06\"],[144,\"2025-08-07\"],[145,\"2025-08-08\"],[146,\"2025-08-11\"],[147,\"2025-08-12\"],[148,\"2025-08-13\"],[149,\"2025-08-14\"],[150,\"2025-08-15\"],[151,\"2025-08-18\"],[152,\"2025-08-19\"],[153,\"2025-08-20\"],[154,\"2025-08-21\"],[155,\"2025-08-22\"],[156,\"2025-08-25\"],[157,\"2025-08-26\"],[158,\"2025-08-27\"],[159,\"2025-08-28\"],[160,\"2025-08-29\"],[161,\"2025-09-01\"],[162,\"2025-09-02\"],[163,\"2025-09-03\"],[164,\"2025-09-04\"],[165,\"2025-09-05\"],[166,\"2025-09-08\"],[167,\"2025-09-09\"],[168,\"2025-09-10\"],[169,\"2025-09-11\"],[170,\"2025-09-12\"],[171,\"2025-09-15\"],[172,\"2025-09-16\"],[173,\"2025-09-17\"],[174,\"2025-09-18\"],[175,\"2025-09-19\"],[176,\"2025-09-22\"],[177,\"2025-09-23\"],[178,\"2025-09-24\"],[179,\"2025-09-25\"],[180,\"2025-09-26\"],[181,\"2025-09-29\"],[182,\"2025-09-30\"],[183,\"2025-10-09\"],[184,\"2025-10-10\"],[185,\"2025-10-13\"],[186,\"2025-10-14\"],[187,\"2025-10-15\"]]},\"major_label_policy\":{\"type\":\"object\",\"name\":\"AllLabels\",\"id\":\"p5775\"},\"major_label_text_color\":\"#5B5B5B\",\"major_label_text_font\":\"Helvetica\",\"major_label_text_font_size\":\"1.025em\",\"axis_line_color\":\"#5B5B5B\",\"axis_line_alpha\":0,\"major_tick_line_color\":\"#5B5B5B\",\"major_tick_line_alpha\":0,\"minor_tick_line_color\":\"#5B5B5B\",\"minor_tick_line_alpha\":0}}],\"center\":[{\"type\":\"object\",\"name\":\"Grid\",\"id\":\"p5776\",\"attributes\":{\"axis\":{\"id\":\"p5758\"}}},{\"type\":\"object\",\"name\":\"Grid\",\"id\":\"p5781\",\"attributes\":{\"dimension\":1,\"axis\":{\"id\":\"p5777\"}}}],\"min_border\":0}}]}};\n const render_items = [{\"docid\":\"b6a8a91e-b91f-4fb3-afc0-b28b4ee0ed96\",\"roots\":{\"p5747\":\"caf1a2ad-09d2-4ce5-bf68-6763f01a2967\"},\"root_ids\":[\"p5747\"]}];\n void root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n }\n if (root.Bokeh !== undefined) {\n embed_document(root);\n } else {\n let attempts = 0;\n const timer = setInterval(function(root) {\n if (root.Bokeh !== undefined) {\n clearInterval(timer);\n embed_document(root);\n } else {\n attempts++;\n if (attempts > 100) {\n clearInterval(timer);\n console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n }\n }\n }, 10, root)\n }\n})(window);",
+ "application/javascript": "(function(root) {\n function embed_document(root) {\n const docs_json = {\"461e0e03-87f9-4576-89e3-a9521a5fa29a\":{\"version\":\"3.8.2\",\"title\":\"Bokeh Application\",\"config\":{\"type\":\"object\",\"name\":\"DocumentConfig\",\"id\":\"p8952\",\"attributes\":{\"notifications\":{\"type\":\"object\",\"name\":\"Notifications\",\"id\":\"p8953\"}}},\"roots\":[{\"type\":\"object\",\"name\":\"Column\",\"id\":\"p8951\",\"attributes\":{\"children\":[{\"type\":\"object\",\"name\":\"Figure\",\"id\":\"p8824\",\"attributes\":{\"width\":1200,\"height\":400,\"x_range\":{\"type\":\"object\",\"name\":\"DataRange1d\",\"id\":\"p8825\",\"attributes\":{\"bounds\":[-1,188]}},\"y_range\":{\"type\":\"object\",\"name\":\"DataRange1d\",\"id\":\"p8826\",\"attributes\":{\"bounds\":[1329.177368,1766.731374]}},\"x_scale\":{\"type\":\"object\",\"name\":\"LinearScale\",\"id\":\"p8833\"},\"y_scale\":{\"type\":\"object\",\"name\":\"LinearScale\",\"id\":\"p8834\"},\"title\":{\"type\":\"object\",\"name\":\"Title\",\"id\":\"p8831\",\"attributes\":{\"text_color\":\"#5B5B5B\",\"text_font\":\"Helvetica\",\"text_font_size\":\"1.15em\"}},\"renderers\":[{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p8862\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p8856\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p8857\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p8858\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x0\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y0\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/3VUa1BUZRjmmolTuxKXuAxMxhAoLlgEzOTigxYOsismGjRgg0JckhiCILC4mEqECirs+c45XBVZQGgyaXNRN4KQi0Jxi0VIEYiQiKJVQKEk+vFxZpzp1zPve773eb/3ed7zvXJrS8BzmQQBJ1y4IyYEPNYeH5hiEHqhxyLKmGAkba/kqBfBYaPreWvnGNR9si+rdITBhZ+Cgt79mME/bltTHjQxsDcrODdrR2A6N+1g6kDwelyWTZmIILotpWCHHkEDb2h05GcGgYadEy6lQt3qgHuzWg3zv+cp0v7Kdy4/fe1XBgP9AUt+PUIdRVGGvD86j8CvZGrRbYTAYH9l8LECAsyPd8wdIkg/6eATvZ+AaY/f7BpEVu5tPLC9UuIszFs+YXHFdDeB5667xdfMBP4vjTWeczKCnJob3/qHCjw0v1B/1tlfQqCubYp0qyP4zH19/LlWgucdA43LZ4VzVG+qM62j83eoqw9HaoU5Kf5lWrQgbhP0s3g/N/GqmkHqvoYwbZ7wner6hexhxbNiBucrdMl91QpoRrwTCksV2Kpq/Fzdo0CU6GuD8O8VqH+v5EWdCQOx1Dl//YQCd5pPFRUtKpCtM94YYc9Ar2q0pTiIgX9oq1rnxeCsZLfTBnOB/8mY8vUof7Or1xN4p0Y9rDPnhH6U3+oXSVOEnMGQfEZ+P1LYE+o39Z/qQPMU6d5Rv6iftI7q/eS+UP+pT7W5tpMytRBbFd8PlOUQyM1P7BhMIiiLTz4YoyGIe3j7w6FugsvE3bfGkgWfmiBvdGEx25vRb7udxavim5G5ySzuNdsNVr7JIi3k4h6tD4tt9i7hhrEsEmUW80sVLPZK9jw2v8qiPFXv+N/DLDJlB3sHLnHw0M8az5vgMKLyt4kTcYiVbvNqCefwsn6Dr+4kh5rU3DbPfA5d5M7j0E08smWPxGaRPFKlrFlpPI+d4iR7nOJRINs5/XtCITaMDUfZhhdi9fW3ugrsCjGh7PR6ZpBHXartU4m+PIaVWxa7HXm8pi8/utGHR7C9KM3ShYeTzmHSWschPyQ/bkqfx5AyJdS9k0NuSMeP8ipuJZ5U3QqubuKwpu/AjNsqHp3EMqxBK9y7nexqfCGdwwdSE224hsMBSfXgH61CPUU6V332n8212QKOq0yvrInh8E22k6PIlcNMc63lmBGHYyHeZ0xn2RX8b98eWQm6UV7aV6v8SsMkcvhIdltRvMRCKn77fLszBy/xGWOXLhYRUtVCzkXBF6Oxuz2nNwv+Uh8pUr9vKENHNJGC79XZvX4e61hsEhu1zdiykEtavhtcxaJPNeetMGDRpPyh/NPl92F4+T+LLVl+t3SH3GIGCHS9as+MaSGfFLLOsiiXIEgaZnepnMBJnJyjiiEw0dWdvplO0K1yLZuvIoiSNVq/xBHojVm5PxglMMy3eYMxZPEvJpUInuAFAAA=\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}],[\"x1\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y1\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/3VSbUyTVxSmAhGmHcUIrNu0qOgKluIYi4wEPRTkY6PiwImD6mDlswoRmKSIcziGFogQN9573/fdAIlahrqZ6IoIVNSVDw3sg4+BikYoDHEkQlsgQ5D5Y29vwrJfT8495zz3nPM8jlFPpvv1CKR19zO//BHBA/mk3JyCYF2p31TVVQQLW2Rqy20EAe0FE8l1CE4zKxRVRQg0JnvvJBECm++H2ypjSb92/zWH5j8RjFimj3p3kf6EdTnJApb0CUekt5Pk5D/XjLKcpgYEMbZdY5JqBHn7WhL6yxEc3C40misIPzdX2OgmVcQ5wj/wR9RiRDeCkMwTb5xxwgCzo50zRzCcHXNtXBWNoSPI8R29DFvzW3c9rmxejeHq0X0nqofI3Fx83K613HkGQQtra1c4iKCzoe54Sj8CFpxLB/5CYD8QViv1xFbkeNM61BXv2xB+cRPzu08RhhkZ70ENQ/7jeLi4bP0B/vQkAsd/9eD2W7o3pwOXv9AXG5ucT+5Yb17oDc8l98tYsFTrJiqg/HHo3fpwyop3FkeeHWMp0A9ty/62moKdPanLv+uiINXpp2XKnymIm+IXfdFBgUx3q7ihm4JWTUhNnz0CQaDnN15jFNiJCl3CJihrPGvzECunCK6J/1Xw6jAF4rzDZVODFOR4xxWE3iC4tK9GGi3e7ILgA0V7g8kfga97vn5zMNmH88f/+YG7G6cT5wfOH5wfufxSXRUXul1T7YlezRuUunth//XPsVMeQWmJGISV5pjIEgwBoqqNHQ0Y1vIGJY+6XuqLM2r5NzC8LbDrmHyThl7dzDZqGQ2KwLf0UQsY5NK2m/eX01b8UHrqE3UiDfd0+oe+Cho+ku5+4dJEw2IPf/XeORqe94QebjxDwxVN4smsPhrqNeJNTj4MOBvfvayKYMC2t/fKdAwDYpPH+OsmBgojfbNzV7Iwb+BZmpxZWGMsKQ3ew0IfPl85V8KCSrr1Na98FvaKnD53k7CQFfhKv1LPwG5R+KO8bsLThd0SWvoZsBhy6gv2M+BinJc7nGXgYGCwf5uSvHM4qlvVuCKdYKDg43N3PBmYNFxyM9ox0IaL13/lQea+rnlmuKRhIEjgHpxaSJBWpXhvDCF7cft2a5+u/VvIgIOxNssH0RAmMvNqWmn4RbuhIP4mDROGUfWOi+SdiytU1WUnn9JWPn/B1/aS32jIiXSdXTxP6u9qFUP6FKIHm5ctvyWhwcYo9LMMYzgQqbluMBH92rSUzJ1PW3Xm8Br2C73oRlvr8+LHde89weBkOrIlfQBDjWbHyueZL30myC3RpRPs1KXx4qIwzA9HU3uKMVzGWodDSeT9UHy8+oUfhk8j5/KLt5OYqxvv8ZoLDiCxf4S5/bMfMPwDTI5TiOAFAAA=\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p8863\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p8864\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"Segment\",\"id\":\"p8859\",\"attributes\":{\"x0\":{\"type\":\"field\",\"field\":\"x0\"},\"y0\":{\"type\":\"field\",\"field\":\"y0\"},\"x1\":{\"type\":\"field\",\"field\":\"x1\"},\"y1\":{\"type\":\"field\",\"field\":\"y1\"}}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"Segment\",\"id\":\"p8860\",\"attributes\":{\"x0\":{\"type\":\"field\",\"field\":\"x0\"},\"y0\":{\"type\":\"field\",\"field\":\"y0\"},\"x1\":{\"type\":\"field\",\"field\":\"x1\"},\"y1\":{\"type\":\"field\",\"field\":\"y1\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.1}}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"Segment\",\"id\":\"p8861\",\"attributes\":{\"x0\":{\"type\":\"field\",\"field\":\"x0\"},\"y0\":{\"type\":\"field\",\"field\":\"y0\"},\"x1\":{\"type\":\"field\",\"field\":\"x1\"},\"y1\":{\"type\":\"field\",\"field\":\"y1\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.2}}}}},{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p8871\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p8865\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p8866\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p8867\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DyyvDAQAA4F92MZdZHsNOUySbcpADeTSvXGzLUpSFA3LA1MaiHZQssVYOIicXnLRSXv+c76uvJQiCkK2GbTNiu1E77LTLbmP22GufcRP2O+CgQw6bNOWIo4457oSTTjntjLOmnXPeBRddctkVM2bNuWreNdfdcNOCW26746577nvgoUceW/TEkmVPPbPiuRdWvfTKa2veeOuddRve++CjTz774qtvvvth00+//PbHX//8B3jw17KMAQAA\"},\"shape\":[99],\"dtype\":\"int32\",\"order\":\"little\"}],[\"top\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/2VQa0hTcRx1OSsE6yplbJVgRhjMUTBipdXBHlZoYhmViiTla9kkLdE00XxrLBXv/z6YVmCbj/CDZj4jfGRSs2IaDBNJZ5EpqNOtNIW+dL0f+nQ458f5cc7xvKVL7WonmFqyZ/kNESyWBJztjCLw/Kef1BbufLKVgWxK2XsjhOCad2osxYv3I29zZmPrCZT1o9oHTaK+diAwfamXYMFDv0INiv91e2662ecJXCxBRuV+Bvj1zeS4x8AQ3ba5+ztBVIPZM95F5AmD6VXnnBhM3L+kzFczCH2o4PJcmXX/hhjjlYIqBo5AyZenHAMe7mWWGTGHd5lqoaaF4OXi2siZNIKk4zLrYhVBWu3Kh7kLNA5v6Y7ITqLBFgUvzzfRKEs0ZLq9oHF+OH6TfohGYGtPSbuZhm/GXd3CGI0OTY2PzZVgZvKQPMdBw2z46dXhJHLBN95frtf/odd1mnreECQncKqbHKi+TJCfGTveWSrmE/Z6zTtL88ZEzJW+eeTuIOt7CP2FvinJ2X35cSL3kowpxocYkIzGJp9hBm2M6nTjDhY/+r1GjWEs9kk0Glkui3KNZW66nIWaqnRRfGLRXBxTdPszi6zgWpX/VQ5JR0+oB65ziFZO+odpOfja9k7LbRxW+yVLXe48ioOXqW1xPKyGjXxyDg+ZtW/22SoHXaTpY0jd/34BlZLfxnCViM4jI832ixz0Gj9Tb7XIhTwCCjkLIo9VethZvDNETbyKY3GQkg7O72LBZ6SE9ChYSK1fzRUBLFxtLRXvsxn4UmmlrYkM5JLtOtxhcEqpznscLuqm1gRJRKh4360tKiywMPgLDzXgARgDAAA=\"},\"shape\":[99],\"dtype\":\"float64\",\"order\":\"little\"}],[\"bottom\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/12QfSzUcRzHkTNangotlYeUKXPNpTS69S5PU5mHVmsxJaFdspppd9N0WnQyl+L3/f1+ZylTFyk2Jeep/giTMXPOYw+4w0iGm5PF0l/nt/XXa+8/Pp/P+/PqUlVmJw8SZEy5bOWvEjjdkKc3qQgUsM8fmiXwFgS4De+gcdk9PclOQRA26SkKf0GgjK+3bJ4i4FeOpN2r5uaGBiLXw9UEE0uGOz7dHLPN2x7ZLxMEp+XufG5Lw6uJ7T2YQ8Ms4dWFnGIa1zrExadMaMyVrFalHKI3+jR7JNYNh9Go4bX4L5+h8aehbP9pPo3eaZsrvytofLeoGx0ppyGUhmRFTHF7jD2sIqcNgy0E7vl+i6XvuP5f1ifmsxQUtIG+syGFFFJs35slfqaQ7nNRGvqRgpckQ774jcKs9oizdJlCGT/Gy9uRYEu7LDg7hkCt/OnSYELQICr10G8maJMFl/XzCHbH9tjZaKmNLNPzfK66EgjcMlu8gwjuZyb9aHzIefrft9GPfM91a8MCQdxrtVMKj4Z/1NjTZgfOl/FvYzb6aFdSJ92sGRj67g7sCmMQzS+4JE5gUCgamp8p5FgrS3hwq5+BwPRTqL6AxSaNptZwlsVSa/oHaTyLeL42MDqNhZd+74yznsVLUZPV3ygFJELG4dlNBbKFnjEjHiVw0Cz4pDYqMKo8vtrrqcBXpTjOr5ubl8d29URUsFhpDTjnomJhrztcIwrn7lloSqKL3nJMFQYdbU9kUS4xyV8bZXDA1NeqfoTBQuub7TpzFo66tQjLcha/WifFIVUMtulP9FgIGJjrxtSPjzHoVMaNtyQzmOtbZMaLaAS4lu7rUNF4IpmwzZVwXNPGUOfzuEwkVdUefTQ68247qldo/AMyrvUEGAMAAA==\"},\"shape\":[99],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p8872\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p8873\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p8868\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_color\":{\"type\":\"value\",\"value\":\"grey\"},\"fill_color\":{\"type\":\"value\",\"value\":\"grey\"},\"hatch_color\":{\"type\":\"value\",\"value\":\"grey\"}}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p8869\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_color\":{\"type\":\"value\",\"value\":\"grey\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.1},\"fill_color\":{\"type\":\"value\",\"value\":\"grey\"},\"fill_alpha\":{\"type\":\"value\",\"value\":0.1},\"hatch_color\":{\"type\":\"value\",\"value\":\"grey\"},\"hatch_alpha\":{\"type\":\"value\",\"value\":0.1}}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p8870\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_color\":{\"type\":\"value\",\"value\":\"grey\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.2},\"fill_color\":{\"type\":\"value\",\"value\":\"grey\"},\"fill_alpha\":{\"type\":\"value\",\"value\":0.2},\"hatch_color\":{\"type\":\"value\",\"value\":\"grey\"},\"hatch_alpha\":{\"type\":\"value\",\"value\":0.2}}}}},{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p8880\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p8874\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p8875\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p8876\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DsUpCAQAAwNdgDWqDc5mgIC2KSdTQ0haioygoOIRDpJNNgZQYQjiEkRGEiWQNFhFJfp93cEEQBBuG3HTLsBGjbhtzx13j7pkwacq0+2bMmvPAvIceeeyJp55ZsGjJshWr1qzb8NymF17asm3HK6/teuOtPfveOfDeoQ+OfPTJsc+++OrEN6fOfHfuh58u/PLbH3/9c+m/K9ejT3x0SAEAAA==\"},\"shape\":[82],\"dtype\":\"int32\",\"order\":\"little\"}],[\"top\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/0WRa0iTcRjFs2Z326tYgprmpVyQl0JU6HYUzZKNZXSDjbBCswkSiDYpc5qYhU0w3/9laqWCZC67MVNQDFlhpBk6vJRCeYmsoLk2A1OsD819Oh9+5+F5znnSU0eS6rIoetuaijKGCYokryo85wgWoxK09m6C1l+LlsN5BOqHA1suuNNl3mVYJbk+RpAWlJMuGFxz0kLFUGYFxbXbofGZZynIm0v7Ik9RfC44EVESRxF79FNthzdFoHdVvSOAIrNHW5WywuXrCDlvGk12+Z0890uAV8QfAn1wlofDSjDrVTMv9BBM2R1Xw/sI1im/OoY7CSKaPmQXtxB8n4jx1c2JkOXn6mfHRLRr7obY1pNldfKtqn5h04SIkSHl0pEBV26nJmaX+t2Xuvpx3mPU+8/I2yjS//f3ulFM2ObB4BgsHPJPZihQPTk+HM9QrvFMlccyKAOLDo5pOS7Lx8XaJYa9boqS8HgD5k2OwcCd1SiXv3z8tMuAFKFFVx9jQJ3Grkn7zbHBcs4atcYAmS10xtfG8bFRq47u49CrevsVDzhmTKOnm7o5VluqU+884tDJswZHnnG0l/00G8v48l6myQjfnsjRWibbIY3kqNLc09/4xmA1G30mJRybJxcUaxs47OacVt0ZDj9b/8aEaYY4odJ913uGH+ZpbVKzK0+QW8PbK2EMuwVJj9WfYdTUOb5HzfCCRh9q9mGwmOYOiCsZ1PvDOpWL//6nCvap0VN0N75rKH5OsTBxTDx5k6Iyf0pamk8hE/JumS5S/AW8YhjzkAIAAA==\"},\"shape\":[82],\"dtype\":\"float64\",\"order\":\"little\"}],[\"bottom\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/0WPbUhTYRiGi81MTdRFBv1waCMlbFmIhl/cSiWWIiIi1WZa2NRIKik6aWaYdkybGex9z3uQ/AgktVwpSzOHGOsDSoQ50yIy8yN/LNLlTDCp/hzPr4uL54b7uSc+pP9NsRMEnjOWvOgjWItIurL0koDTD+aO1xP8qolL6dcRDIoKZeVngpkld9meYYJMxfD38CaCMsdJc4WGILg2cvF+D0H5HU1iQR7FwM7Tlo/JFP/PT5rjKVTLPzQqDUVbTu/mgTkCXYc90OBBcWkuSKVdJZi6lqW9eUDO3VC+qg9YJjCGnPV1L8iU+qV/Jca8qXDmtxN0jGVn55cS6Au6RsP0JiRZhmr67CZ8sd1tbFyVqVRXbkt2mnB80bfq+lsTvNLn3eNWeYfkPWX66qYpuVdys4c1ejmVru/1c12NKJygqCsKyEiNFqCc/mpviBPQSyMPd24XcFTd35ygZti9cZ9X7ycBZ7TnubpgEa/5gy1VJhFH/LsqWqNE+DhOLUR4ijBzWYYxJ0NL0VJR7m+GFVtMVlAfQ472W2xGMcOsRdXvU8jwjA/b5beXwXji/UjaQ4bn/E/bI55B4XB0uzMZ1C7SOZnA1vsfcBtq/0wK6Obzbl0Ykzne9tRKSti6S7nHvDg/WipgqytxZNN+ASJ3MW0oXEA7P5oSFSLvk1wXH2pNX6OYtmXHeq9QeLt6Gt6VU7Twh7asFlMYUod2hDKKe9yMXzVHEeZ/+balkMLa5ukxe4ziHwAaZj2QAgAA\"},\"shape\":[82],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p8881\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p8882\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p8877\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"fill_color\":{\"type\":\"value\",\"value\":\"black\"}}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p8878\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.1},\"fill_color\":{\"type\":\"value\",\"value\":\"black\"},\"fill_alpha\":{\"type\":\"value\",\"value\":0.1},\"hatch_alpha\":{\"type\":\"value\",\"value\":0.1}}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"VBar\",\"id\":\"p8879\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"width\":{\"type\":\"value\",\"value\":0.6},\"bottom\":{\"type\":\"field\",\"field\":\"bottom\"},\"top\":{\"type\":\"field\",\"field\":\"top\"},\"line_alpha\":{\"type\":\"value\",\"value\":0.2},\"fill_color\":{\"type\":\"value\",\"value\":\"black\"},\"fill_alpha\":{\"type\":\"value\",\"value\":0.2},\"hatch_alpha\":{\"type\":\"value\",\"value\":0.2}}}}},{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p8889\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p8883\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p8884\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p8885\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/0WTeTTVaRjHyzqEinI14YpcI3WdpqSQ+eZaRt2kxSldIVlKe1RkikqK1hHv+3vR4pREaUGLqDAUWepKlAoRZiRNMZapmN+Z0zn99Tnv+2zv832ed6i1qXjuZIqNPqrVGUYUy+xFWWtMKMZ1eqgpmlPsm69t0z2VYutspecTplHcirLzXc+fP5XOcVrJ25Weu6SLeep+8/cwya9pmULhODZri5YFRUfxUGq/iMLW/HX61EkUCj/e3PnLeIrHQ30WEi2K+VxJbrwyRbuNxExdiY877/UkdQT/nvoFSwu+Ejjdf5hpPEiwqvlixdo+gnzX4tARPQQvwncsu/2ewE1pqyHpIKg9Gz7/1zcEvtM7V75rItjvoSJM4ClSXeG++yXBxkUnnlc3EAw9XVvl10hwfMW84j7eX2YsSAlvIXAdo2aTxnOHtW/qtbcEJ6UZFzraCSbL9yZHdBKopFbl//GBwCBdohDbS6DLbZEI+gmCWls3VQwQhLQbaos/E5gd16kIHiJIbrVudlal+I3TE2mNo9BQiMEkIUVv83nhS14HecEh2c/GFBVZN1IKJ3/XKXXXgwkXzCgGazWUKkXf78WjrKe48uyWy33X8f5S23dqI/k8L9of9E7Wo4i9ee/cR17Pl/qnMkRqFOo+Pu+yFSlCR8Z1XeH1urGlNPgE34+rReg4Ea9H9OFXTxOfEOzNbio3LSFI6rYo7coj2NDyy2y/awTtEZpF19MJhm95FoSdIhjbVjNQlUiwLyKg8U4cgWTV+g+yvQRe7Fan8U6CXr85S6esIzhjX26gIiOwFxg6Rc4nqCgetDw3j6CowTyoyJogoXpuwywxQZ5maZiviGBU6Lk9iUYEp3Q6FmbqE4R+9ksbo8fXO/1GcEiXoNIj4/gsAcEBza2qbTxzZ5Zt+nsCgXKUbdL5iQQtMmHdZ57d3ivDvQ0JjHyudL6YSlD8rV7MrqL0xQ4Eke77tXykvL1yKM55Od+H1nh7N18Cz8I7zdnBBPIfXBoiwwj2HPw6WH6AwFRbamVyjCDK6bh5HiN4H9ccaZLG70fbrpcl2QSNEwe33S0kGFO9d2BNDYF3soZzKL8/jXqinUf4Pa07HKGyaBTFs4MtEf783GPzDe5qTqeYVJ+ftcSRYvn4N6LPyynOBoxTCFtPcWl4UapKJMWRAYG6J6Goqf3ikJFJYYZ97q8KKAwrbJKdnlIk1qelXv+L4ob2R039YQof2Y77eQIOOa4PstWsOJxekCcJWcwBh/okbps5yLB2bmg8h2NH1f7VyOZgXVe6caqcQ8xS9cbzHRza/JYlKX/hkO1x689gbQarqGGx3RSGNL3pX6VgSLBaV3N0Cfv/P9X6M9gdnaGctIXhIXUvmrSHIfLx7vSOWAadNTE5egl8fPSl6PtnGXzFBWmjMxkCZ17senSd4UKP8uIFtxmiKt9sLCtiqBCklj4uY2ix9L/8upwh9plkxeoqBlvVA/3r5QzOJ9s7P/EUR5gotT1h+HjPVuJQzbBd0mcgLGW4HhnkWMPny1UIWliYxWA+4Pr7bL5us2Wcg/AYz6s6Fy0jGW4oKx5s2s6wwznN2GczQ2t2iq44gEE30Pi9tRdDweHDQxXuDEnBgdNMHRkqDboULW0Z4t8qSndNY/hUwqTFxgy9LszjmoBhwgaXRA91hrqMkKP9wxxyD7kVuPdwKE0y9TrXxevsn+NS2cJhRpy+p289hxNBdjcflXFICTEb7XeHg7NQpaooncO2yjNeYyiHS8rJTW0xHAKweGZmGIfqjJro5GB+TjrLnh3x4iC/LOth7hy874w0NHLkYMdeScOtOUSvvhqYY8HBD3GJGkIOntY/XQrR4SC1cDf4qsjBaGf8P179FP8BIUxvteAFAAA=\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p8890\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p8891\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8886\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"orange\"}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8887\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"orange\",\"line_alpha\":0.1}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8888\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"orange\",\"line_alpha\":0.2}}}},{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p8898\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p8892\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p8893\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p8894\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/22UezDWWRjHlRW5RO+WimWyiFKbSpKKL6V37Vtuu5sxsSTdiKalmWS0NpdRK7dyzu9XrouK5FpY127oQoQkm1ci5RLlkjt7dqaZ9o/96zNnznOe5/t9znNOlc3Lj9+BosHrzDHBFooqD2F1lhFFsFFmpL0BRUdS1eYBfQqtT7TVWo/CyWyfTaU2xRaj7IPx6hS5JeI/h1Uo7jQWRtsspShvCVrevJiiotu+zfJrinsDmp5PlSjqpWcc1yygcIw3nrSX/cLf7u4pl2B0+rzOGPC9eWE+RfqIhbmqNIVJRGngNSmKdijeippD8db6tbfkLEHwoEvXqWmCNGX/dE3G1l1X6xKnCOR9ZjZlzBA81J7QaGDxfZbKXX6M03u1vrf5H9pnx6f0z6VY65+l0cjqzOAvz1oZisDPugZ02/y95ShO5wVKRMhTRJdXNP7NfCwz279CgfnaF1i7/PlCCvHkATN15ld25VnDHAHF0RDZ+5sXUcDh7ZMrjF4BJoa5yhSJJQY9+Syu9XP8/M/xq3enTjgwjnwjdHVjeW+0tBy6xOrYhbjITcl/0aPukVQ+y3Qqea1P12L61cKadWSYb6kQ13bzUYI50RNTtoMEW5+PtmOAoMh9/KVMN0GyWyDZ3knQcMWiuVZM0F0zGBL3gmBmOGGjRyMBH9ez0b2O4PGLV91eNQSnwj3Lih4TRGdZtUk8ZPtlGvG/VhL4ZqWsuHeHoE2jQsKijGDHxTctlUUEouRC3qiQILL3g8a5AnYv8vXmdTcJOmxrdcpzCKpFDu3jGQTrynyL/dIIbN/tU8i4QmA/alCtlkKwe3hctziJQL8tWzMogSDpJ/mkw/EE4gvbxmrjCNy1MmW8Ywkqz1flyPIEQtVpdVEMgfNWsWlUNMGU2DFXJorp0I/12BFJUJo6+k43gvmsVxEXhxPM7V97/BSjjemxVfnnCcJPJ/6uxuhq6x92jtHRPL1mKTtXlqC3N4nlueynSMcYA1wmJI1Z/iXDqQWmFwiOmC7rGLr4hfYh2nK3CIGVQ0yFL2Pj+4iGJUznrrx6w1Dmx0BP6XoN85no9lGl4DrBxdS1yj65rI+L3IrsWN/OZhf/eJ/1s/UJ51j1iEDv6qvqqibGj4bawnYCT+NU54O9BFHaxSon2P0W86+Lm9i81hWmbi9l82HqJHhm+S17j4KxsAOGFIL9pSdeW1I4921Na3Ki2Baywa3Vh0LaSjF2zVmKnSJcHYijWJWp6yjIZnM/ovvo7W2Knrw5isI6iheuwoyJdvYPPA01KRykCFIY3JM2l0NW4eyDBwIOKTdaZk5rcIjkMyVF+hxWD9sqGoOD96hEa541h6/mCSUELhyGho/mhHtyuCu1vmaBHwf/oKEtmqEcFJZNbkokHAr+OLmhN5mDwSKTvarZHPR+TtwtVcLqJEtqaVVx0M9S2h5bz8E5rdNO1Mrh6WGim9XF4Yh1vtfRfg45nWTy/ScOOjqRD/hZDhuQ6H5Pmoea0Xi5pRKP/PgFtvFLeYx4uk0Ea/KYrraXOKPHo+PcyWZen7G1z912E4/R4ArloG08Eu6IFm8255GdtspDvJOHnFrwRh1LHsppXbqZjOIBH7nuH3hUx7nGqzP6zPNfLvMfRnd+CHAQ8fCrXnNJxNbvTRY+eybkMV9FMdrSgsdNC7cezoxHjM6tklojHrN1x1uM1v97PrJXdzWP592XI6y0eQQI/HbcVmN1u4Vhhxbz0Bq7FvpSluWJM1jnO8NhvEajJnaQQ1PG1OTIGw4aRrJ9MU0cYofi0mwfcgjgVtr1sz4+FqvK/5LH4R+fxKBb4AUAAA==\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p8899\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p8900\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8895\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"red\"}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8896\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"red\",\"line_alpha\":0.1}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8897\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"red\",\"line_alpha\":0.2}}}}],\"toolbar\":{\"type\":\"object\",\"name\":\"Toolbar\",\"id\":\"p8832\",\"attributes\":{\"tools\":[{\"type\":\"object\",\"name\":\"PanTool\",\"id\":\"p8845\"},{\"type\":\"object\",\"name\":\"WheelZoomTool\",\"id\":\"p8846\",\"attributes\":{\"renderers\":\"auto\"}},{\"type\":\"object\",\"name\":\"BoxZoomTool\",\"id\":\"p8847\",\"attributes\":{\"dimensions\":\"both\",\"overlay\":{\"type\":\"object\",\"name\":\"BoxAnnotation\",\"id\":\"p8848\",\"attributes\":{\"syncable\":false,\"line_color\":\"black\",\"line_alpha\":1.0,\"line_width\":2,\"line_dash\":[4,4],\"fill_color\":\"lightgrey\",\"fill_alpha\":0.5,\"level\":\"overlay\",\"visible\":false,\"left\":{\"type\":\"number\",\"value\":\"nan\"},\"right\":{\"type\":\"number\",\"value\":\"nan\"},\"top\":{\"type\":\"number\",\"value\":\"nan\"},\"bottom\":{\"type\":\"number\",\"value\":\"nan\"},\"left_units\":\"canvas\",\"right_units\":\"canvas\",\"top_units\":\"canvas\",\"bottom_units\":\"canvas\",\"handles\":{\"type\":\"object\",\"name\":\"BoxInteractionHandles\",\"id\":\"p8854\",\"attributes\":{\"all\":{\"type\":\"object\",\"name\":\"AreaVisuals\",\"id\":\"p8853\",\"attributes\":{\"fill_color\":\"white\",\"hover_fill_color\":\"lightgray\"}}}}}}}},{\"type\":\"object\",\"name\":\"ResetTool\",\"id\":\"p8855\"}]}},\"left\":[{\"type\":\"object\",\"name\":\"LinearAxis\",\"id\":\"p8840\",\"attributes\":{\"ticker\":{\"type\":\"object\",\"name\":\"BasicTicker\",\"id\":\"p8841\",\"attributes\":{\"mantissas\":[1,2,5]}},\"formatter\":{\"type\":\"object\",\"name\":\"BasicTickFormatter\",\"id\":\"p8842\"},\"axis_label_standoff\":10,\"axis_label_text_color\":\"#5B5B5B\",\"axis_label_text_font\":\"Helvetica\",\"axis_label_text_font_size\":\"1.25em\",\"axis_label_text_font_style\":\"normal\",\"major_label_policy\":{\"type\":\"object\",\"name\":\"AllLabels\",\"id\":\"p8843\"},\"major_label_text_color\":\"#5B5B5B\",\"major_label_text_font\":\"Helvetica\",\"major_label_text_font_size\":\"1.025em\",\"axis_line_color\":\"#5B5B5B\",\"axis_line_alpha\":0,\"major_tick_line_color\":\"#5B5B5B\",\"major_tick_line_alpha\":0,\"minor_tick_line_color\":\"#5B5B5B\",\"minor_tick_line_alpha\":0}}],\"below\":[{\"type\":\"object\",\"name\":\"LinearAxis\",\"id\":\"p8835\",\"attributes\":{\"ticker\":{\"type\":\"object\",\"name\":\"BasicTicker\",\"id\":\"p8836\",\"attributes\":{\"mantissas\":[1,2,5]}},\"formatter\":{\"type\":\"object\",\"name\":\"BasicTickFormatter\",\"id\":\"p8837\"},\"axis_label_standoff\":10,\"axis_label_text_color\":\"#5B5B5B\",\"axis_label_text_font\":\"Helvetica\",\"axis_label_text_font_size\":\"1.25em\",\"axis_label_text_font_style\":\"normal\",\"major_label_overrides\":{\"type\":\"map\",\"entries\":[[0,\"2025-01-02\"],[1,\"2025-01-03\"],[2,\"2025-01-06\"],[3,\"2025-01-07\"],[4,\"2025-01-08\"],[5,\"2025-01-09\"],[6,\"2025-01-10\"],[7,\"2025-01-13\"],[8,\"2025-01-14\"],[9,\"2025-01-15\"],[10,\"2025-01-16\"],[11,\"2025-01-17\"],[12,\"2025-01-20\"],[13,\"2025-01-21\"],[14,\"2025-01-22\"],[15,\"2025-01-23\"],[16,\"2025-01-24\"],[17,\"2025-01-27\"],[18,\"2025-02-05\"],[19,\"2025-02-06\"],[20,\"2025-02-07\"],[21,\"2025-02-10\"],[22,\"2025-02-11\"],[23,\"2025-02-12\"],[24,\"2025-02-13\"],[25,\"2025-02-14\"],[26,\"2025-02-17\"],[27,\"2025-02-18\"],[28,\"2025-02-19\"],[29,\"2025-02-20\"],[30,\"2025-02-21\"],[31,\"2025-02-24\"],[32,\"2025-02-25\"],[33,\"2025-02-26\"],[34,\"2025-02-27\"],[35,\"2025-02-28\"],[36,\"2025-03-03\"],[37,\"2025-03-04\"],[38,\"2025-03-05\"],[39,\"2025-03-06\"],[40,\"2025-03-07\"],[41,\"2025-03-10\"],[42,\"2025-03-11\"],[43,\"2025-03-12\"],[44,\"2025-03-13\"],[45,\"2025-03-14\"],[46,\"2025-03-17\"],[47,\"2025-03-18\"],[48,\"2025-03-19\"],[49,\"2025-03-20\"],[50,\"2025-03-21\"],[51,\"2025-03-24\"],[52,\"2025-03-25\"],[53,\"2025-03-26\"],[54,\"2025-03-27\"],[55,\"2025-03-28\"],[56,\"2025-03-31\"],[57,\"2025-04-01\"],[58,\"2025-04-02\"],[59,\"2025-04-03\"],[60,\"2025-04-07\"],[61,\"2025-04-08\"],[62,\"2025-04-09\"],[63,\"2025-04-10\"],[64,\"2025-04-11\"],[65,\"2025-04-14\"],[66,\"2025-04-15\"],[67,\"2025-04-16\"],[68,\"2025-04-17\"],[69,\"2025-04-18\"],[70,\"2025-04-21\"],[71,\"2025-04-22\"],[72,\"2025-04-23\"],[73,\"2025-04-24\"],[74,\"2025-04-25\"],[75,\"2025-04-28\"],[76,\"2025-04-29\"],[77,\"2025-04-30\"],[78,\"2025-05-06\"],[79,\"2025-05-07\"],[80,\"2025-05-08\"],[81,\"2025-05-09\"],[82,\"2025-05-12\"],[83,\"2025-05-13\"],[84,\"2025-05-14\"],[85,\"2025-05-15\"],[86,\"2025-05-16\"],[87,\"2025-05-19\"],[88,\"2025-05-20\"],[89,\"2025-05-21\"],[90,\"2025-05-22\"],[91,\"2025-05-23\"],[92,\"2025-05-26\"],[93,\"2025-05-27\"],[94,\"2025-05-28\"],[95,\"2025-05-29\"],[96,\"2025-05-30\"],[97,\"2025-06-03\"],[98,\"2025-06-04\"],[99,\"2025-06-05\"],[100,\"2025-06-06\"],[101,\"2025-06-09\"],[102,\"2025-06-10\"],[103,\"2025-06-11\"],[104,\"2025-06-12\"],[105,\"2025-06-13\"],[106,\"2025-06-16\"],[107,\"2025-06-17\"],[108,\"2025-06-18\"],[109,\"2025-06-19\"],[110,\"2025-06-20\"],[111,\"2025-06-23\"],[112,\"2025-06-24\"],[113,\"2025-06-25\"],[114,\"2025-06-26\"],[115,\"2025-06-27\"],[116,\"2025-06-30\"],[117,\"2025-07-01\"],[118,\"2025-07-02\"],[119,\"2025-07-03\"],[120,\"2025-07-04\"],[121,\"2025-07-07\"],[122,\"2025-07-08\"],[123,\"2025-07-09\"],[124,\"2025-07-10\"],[125,\"2025-07-11\"],[126,\"2025-07-14\"],[127,\"2025-07-15\"],[128,\"2025-07-16\"],[129,\"2025-07-17\"],[130,\"2025-07-18\"],[131,\"2025-07-21\"],[132,\"2025-07-22\"],[133,\"2025-07-23\"],[134,\"2025-07-24\"],[135,\"2025-07-25\"],[136,\"2025-07-28\"],[137,\"2025-07-29\"],[138,\"2025-07-30\"],[139,\"2025-07-31\"],[140,\"2025-08-01\"],[141,\"2025-08-04\"],[142,\"2025-08-05\"],[143,\"2025-08-06\"],[144,\"2025-08-07\"],[145,\"2025-08-08\"],[146,\"2025-08-11\"],[147,\"2025-08-12\"],[148,\"2025-08-13\"],[149,\"2025-08-14\"],[150,\"2025-08-15\"],[151,\"2025-08-18\"],[152,\"2025-08-19\"],[153,\"2025-08-20\"],[154,\"2025-08-21\"],[155,\"2025-08-22\"],[156,\"2025-08-25\"],[157,\"2025-08-26\"],[158,\"2025-08-27\"],[159,\"2025-08-28\"],[160,\"2025-08-29\"],[161,\"2025-09-01\"],[162,\"2025-09-02\"],[163,\"2025-09-03\"],[164,\"2025-09-04\"],[165,\"2025-09-05\"],[166,\"2025-09-08\"],[167,\"2025-09-09\"],[168,\"2025-09-10\"],[169,\"2025-09-11\"],[170,\"2025-09-12\"],[171,\"2025-09-15\"],[172,\"2025-09-16\"],[173,\"2025-09-17\"],[174,\"2025-09-18\"],[175,\"2025-09-19\"],[176,\"2025-09-22\"],[177,\"2025-09-23\"],[178,\"2025-09-24\"],[179,\"2025-09-25\"],[180,\"2025-09-26\"],[181,\"2025-09-29\"],[182,\"2025-09-30\"],[183,\"2025-10-09\"],[184,\"2025-10-10\"],[185,\"2025-10-13\"],[186,\"2025-10-14\"],[187,\"2025-10-15\"]]},\"major_label_policy\":{\"type\":\"object\",\"name\":\"AllLabels\",\"id\":\"p8838\"},\"major_label_text_color\":\"#5B5B5B\",\"major_label_text_font\":\"Helvetica\",\"major_label_text_font_size\":\"1.025em\",\"axis_line_color\":\"#5B5B5B\",\"axis_line_alpha\":0,\"major_tick_line_color\":\"#5B5B5B\",\"major_tick_line_alpha\":0,\"minor_tick_line_color\":\"#5B5B5B\",\"minor_tick_line_alpha\":0}}],\"center\":[{\"type\":\"object\",\"name\":\"Grid\",\"id\":\"p8839\",\"attributes\":{\"axis\":{\"id\":\"p8835\"}}},{\"type\":\"object\",\"name\":\"Grid\",\"id\":\"p8844\",\"attributes\":{\"dimension\":1,\"axis\":{\"id\":\"p8840\"}}}],\"min_border\":0}},{\"type\":\"object\",\"name\":\"Figure\",\"id\":\"p8901\",\"attributes\":{\"width\":1200,\"height\":200,\"x_range\":{\"type\":\"object\",\"name\":\"DataRange1d\",\"id\":\"p8902\",\"attributes\":{\"bounds\":[-1,188]}},\"y_range\":{\"type\":\"object\",\"name\":\"DataRange1d\",\"id\":\"p8903\",\"attributes\":{\"bounds\":[-31.177939072646268,52.459862763673755]}},\"x_scale\":{\"type\":\"object\",\"name\":\"LinearScale\",\"id\":\"p8910\"},\"y_scale\":{\"type\":\"object\",\"name\":\"LinearScale\",\"id\":\"p8911\"},\"title\":{\"type\":\"object\",\"name\":\"Title\",\"id\":\"p8908\",\"attributes\":{\"text_color\":\"#5B5B5B\",\"text_font\":\"Helvetica\",\"text_font_size\":\"1.15em\"}},\"renderers\":[{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p8939\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p8933\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p8934\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p8935\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/xVUezTVWRTeXUrybFyuxuPevJnLvdfbzWN7Lg1JWEtTxKhUmNKgYpj1I6XCqJhpLCQtlsfENDV5xj1ReYQhj2ooadLksVJXyshjTn996zu/s39n7/3tb8OrOta4SBUB3Id5nAIJrLw3n5KTIXBZfeXvIxsIbJx/FspXJdC9WH0uVYPAXC/7vphLmJtbvG06DQijE5YR7UnRKjosK3AzAV5Jd8utTQQE6hrZ7zkE0p44116gWFXSXzPyJYF/WptjG/QJ4/WFv+l7PfofdeW+QhonnxcS8px+116MWS3XJPBM8S3K0bitx50559gEwi89n+bRPAY/5l9TonnJTgefZq0lcH65+1XlnAR4jvoP/B67gG24esQRWo/MjIPSKW1kxB4q0548hKjJtexwijvql7lxXITkcdfGRi2EsJLdPgI1hFap9liSEkKeR0qEkwqC6v1npvLrEXSrelzSAWHpmLsoaN4F/Ly2nY6RQXgpLiyfWofg3X7Iu0wRge39KWi7PIKeQ6Axn8YZSlv+VNNAKHUVjpbRPCLtE2Mj9BHmA74L79JEqBGnBBsoIGQ5igcO/+cCsFO3radRAqVXi8OU1hCok9tz1IjWa39mwWqbGoHIc9f8TtJ+NPBWR9tpfz1TIlM7tAk8NTdrc6b9C/9NKXZYj4DvXLp70mbCRAaylgZ5BPb6kEAHC4LDOXVNSZYELE3Gi8asCd5wjco2tyEkQGB43ZCiK4s15E/PM/WjcnhWBDjmL6dCRIRp3iEOEVgQpiprl1eZMWHSNEJPzxoSMB+LkD6mOj5ybeQX03fZ7SzVOfreXOWlgnouAeEhpVzQJVBYmBOtqUOgf3qiWJaerz9zXu4Pyi+W+S1p0jrURC03FGl9irUeZl+vIxDyQ1tmiVQCJ15kZ09+dIGaZMGpd1QfebvhRDNthAerhzwrqY6zdk6hKnpUz3fN1Q76yIh012hKDBFG7l1c6jBBRicwz6iIotRMi2VujBB4cczDzRiZs2dNk3sob57QSHM2Qib+zgnWtBHCVn6sSzaf6m/fwP1eiHDwhcWrewJkDDlmsioCqlPSUL6tBcK3PV7TXgJEyZCFvTW9J03ozUyzRAzmmOy9Y0njB+LMWTaIFT+W71uwQYj0zUiMskU4u15XI4dyK2ArG9ki86/3ZLrYDuHD62DrK3ZIXC+cSlqxRxSmpgVdcEKoyBjOU3BGKIlZNtnviIzNkFq0nxMS20yd/JtOyCRP1B976ITP+y7P1HARiVrnx8m7rniFLV1MN3NDxv/3Nd7gjuif0DEq9kSyk+/1YMEDeRW2fcb9HsgcntY4OOWG5Cdr5a4qROaJ1CFrxBFJXMauXF8xkiZ7Kc7YIl5qS/GpoHWtDsqLPGg/dmeE/qVP+zWUoO0Fugh2fNXiNxwEYU1ujSad58iXLQZSOv+k9PjT+QYJdNw6WZ6/IgGDRM2wWTk6z+y7Bl1LEoBK6dqlWQmo7pnxquqXwJWm+KJN4xKwF6hP1C1LYPBXh54bdA/pfdgQEKREwKpbrrWW7oHeY3kR23UJw23e33GU7o++DW8cZOk8uuVVqgQZEYgX2QVqfOZcrZgRisYv7nN86V5p4SnFKW8kEFrQNVpIfeQQFbFgoEXg0UGF2Ao6p5x9cpMydI/N88KT1Q0JsxKWYN1qRuBAe/z+hs/+GWi41yUkjMX22pZOEfXVpyO/lIkIKhh381nUJ2+67dwqqE/quJ6bCywI1IYtVl8VEKZct3RRnsY9vJ1a9IRyFenlOKElYWqaBBs1rQjD2iS3a4s1YVZ97nxDfYfCgddBlZaEKN4Obqum93Y8knfeQ/l1X/2fTSnmHlitk6doU7n4Wiok8PYr25MyAgJnAjvJOnO6f1MXA/jUp9Uy9e29PPI/ZRs6POAFAAA=\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p8940\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p8941\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8936\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"orange\"}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8937\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"orange\",\"line_alpha\":0.1}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8938\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"orange\",\"line_alpha\":0.2}}}},{\"type\":\"object\",\"name\":\"GlyphRenderer\",\"id\":\"p8948\",\"attributes\":{\"data_source\":{\"type\":\"object\",\"name\":\"ColumnDataSource\",\"id\":\"p8942\",\"attributes\":{\"selected\":{\"type\":\"object\",\"name\":\"Selection\",\"id\":\"p8943\",\"attributes\":{\"indices\":[],\"line_indices\":[]}},\"selection_policy\":{\"type\":\"object\",\"name\":\"UnionRenderers\",\"id\":\"p8944\"},\"data\":{\"type\":\"map\",\"entries\":[[\"x\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3DB1cOAAAAwC9KKlsD2StR2UpJmdkyUiqkECLKKqNEyiwzhGhZobISf87dexcIBAJBDnGowYY4zFCHG2a4EY5wpKMc7RjHOs7xRhpltDFOcKKTjHWyU5zqNKc7w5nOcrZznGuc84x3vgtMMNEkF7rIxS5xqctc7gqTTXGlqaa5ynRXm2Gma1zrOte7wY1mucnNbnGr29zuDnea7S53u8e95rjPXPPcb74FFnrAgx6yyMMWW+IRj3rMUo97wpOWecrTlnvGs1ZY6TnPe8GLXrLKai97xates8Zar1vnDW9a7y0bbPS2d7zrPe/7wCabfegjH/vEpz6zxee+8KWtvvK1b2zzre9st8NOu+z2vR/86Cc/2+MXv/rNXvvs97s//OkvfzvgHwf96z//A0NX/L7wAgAA\"},\"shape\":[188],\"dtype\":\"int32\",\"order\":\"little\"}],[\"y\",{\"type\":\"ndarray\",\"array\":{\"type\":\"bytes\",\"data\":\"H4sIAAEAAAAC/w3IezwTCBwAcK3YYs0sY4xZzDw3Nmnltd+8OuUqlRBND3pgHaVk5fW5CKHoDuEoeZTKUR+luuxXaSFJUq2SHkpJ5VEpRNef3+/Z9BNhIVIjCFByEvac0YPnrMa8jS5UEO7xZ1XWzYIVvtL6NdZfxJ0tUcfbv15VxLRfZCzfO6FY/5JWU7dQC7lHeXK3nzRM/fruQCdbD0WC2I0OKj0MbZswoenoY/+V7Kx2a31kpUqLlG/18Y10863CmUx8Pz8oK0BgjFe0VvQIN7PQTqv5ene9MSokjkuf/WuE7TxeFCeHiZpqLvmfuIa43XuZ6rI5A0cdKoaCPtAxxyOl5cqJuVjZB80v66no3PjBvMJQE6UtvJt+pT8UaomijgcLYhUlBXwn3/FxMdmmqGFDAhGie3JvWIRqg9J1vqUjgwalcXXhGitosLRKJWMe1QGXCbXpLgcdaGtdzF9vTYUaegt5js0cSLcO/XYybjbIprnlzu4kaMprlu2fIsL0Ben93kEShOej5MZPEvidU/VGPyCBJEJSWH6ODMmJa+fKHHVALfgm2S+VDkXee9Mu2+rBK5+GXFGsLryj6N77s1wHngT8t28NmQy1gaeoQuJMqOP/cTc4bUSs5jmHQmi6oNgymf7o4OhnRcjeZ/6HlxAwod6HGGuuieFlP7x9gnVwv/hkRVEkHTvfv23MZzOwqr56wzOSIfasTf192y42TokqLqsf4qCgWun/7LYlUu6sLB9YZotN0vR1M5h2WNU+M0iaYo/SrOiQYqIAEymbPE8zBHiwNNOFdu7XX1KKbWLssPDl7DPRmTycGzBDxCmywUOuFFZQhxVWFR9lvCZZYmStqjx0MxeHTs2KyBnkYFaBcp9PpRmaUTonEu6Z4oAq+SpDwxQPlMeVKT+yUUXMP7jhDQu9u82oJqOGuNDZJ3p8nx7ydpvGJ9+mIl2nq3b6NQHZ760S3W73KibozWMtSV/EgsnFvI5KDdBt7LO+raACtdoyg2agBzupDynVBUwISWp/sWHQBCrzs/MstswDVkaO80SeKQgzsu+dLTWDnCPq8VrmHBjl2pyZfZ4D13nfo3S9uOCo3N09EGYJ33yz+ht6rSD+tMQi9J018Cv79UpzbSAwrHaVfLktKEvkpl7zeNAV10x0aeDDX7FpMTdJ9kCt3ajaSRTA+fjijuhZQri+KxAr3wiB8KI2akjmAFuvBl6zHHeAY3n+rd1l86GfvDMpZZEjeL32MkyecITeoMFJapIIzpVo5kg7FkJwhF8FO20RtIaqz2td7AT8kQ+XRsecQPXYbxVkOIOs2HB7vNwFYi6Gfxrpc4UtM5IybvDEQI0b6jzkBZBcHk2I8pBA9vrWnqUz3KF3O63aM9cdhA9cMxkn3IF5i6Tl4uYOD1O6JCNyCaiCjDgL/gHoX9Y1s81aDN/Hti5fUuMCcq8B7hxtJ/j0Wde9TFsEwti+5QOjDtAQOujQYyGAdCYl9u4dW2Azp36uXWIJRceKnviGmcHhFfwCYZIxkIcZhxfOp4NcrigzI2sD37/GwciVCIHGi+yduQTASHqw4+pJsVq+e4by4ZC4vUTb4HrUfXFzap09c9NzRTCV5+H0eEzRZP50KMZDHcNFL2r4zdoYsiD3xJgRHROe03nhXQbYJg+UVeobI0vrcAGHwMY237PJO56zkDS1bgHZyAidqKIDdx2ZOFlf7RsjZGKrSbG4oo+Jx00rCIv9WPjF7TddQiAbdxf2rxXLTPHmNe8jL15x8OIwFwkyCxwv0/JhPrVCvqRbbWWTDaoiLzWm/bTF9R/WqMev5uHmvW967/zNw9SPUwm3pnlYWqQJEdv4KCRPGlDO8zHnlNW8+w/s0OTOXb2D2fbY/sjz7FsfAQ7T5iZOVwtQzVeDt/upALN3fCtOVRfiSGQAw1NfiCne/m8/GgrRImO0cd8v02j6yu89AtxV1We2OkyAzTSV/XCnPd7P3Hl+XaYdWn23SiEX2uL/R9jKtuAFAAA=\"},\"shape\":[188],\"dtype\":\"float64\",\"order\":\"little\"}]]}}},\"view\":{\"type\":\"object\",\"name\":\"CDSView\",\"id\":\"p8949\",\"attributes\":{\"filter\":{\"type\":\"object\",\"name\":\"AllIndices\",\"id\":\"p8950\"}}},\"glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8945\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"red\"}},\"nonselection_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8946\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"red\",\"line_alpha\":0.1}},\"muted_glyph\":{\"type\":\"object\",\"name\":\"Line\",\"id\":\"p8947\",\"attributes\":{\"x\":{\"type\":\"field\",\"field\":\"x\"},\"y\":{\"type\":\"field\",\"field\":\"y\"},\"line_color\":\"red\",\"line_alpha\":0.2}}}}],\"toolbar\":{\"type\":\"object\",\"name\":\"Toolbar\",\"id\":\"p8909\",\"attributes\":{\"tools\":[{\"type\":\"object\",\"name\":\"PanTool\",\"id\":\"p8922\"},{\"type\":\"object\",\"name\":\"WheelZoomTool\",\"id\":\"p8923\",\"attributes\":{\"renderers\":\"auto\"}},{\"type\":\"object\",\"name\":\"BoxZoomTool\",\"id\":\"p8924\",\"attributes\":{\"dimensions\":\"both\",\"overlay\":{\"type\":\"object\",\"name\":\"BoxAnnotation\",\"id\":\"p8925\",\"attributes\":{\"syncable\":false,\"line_color\":\"black\",\"line_alpha\":1.0,\"line_width\":2,\"line_dash\":[4,4],\"fill_color\":\"lightgrey\",\"fill_alpha\":0.5,\"level\":\"overlay\",\"visible\":false,\"left\":{\"type\":\"number\",\"value\":\"nan\"},\"right\":{\"type\":\"number\",\"value\":\"nan\"},\"top\":{\"type\":\"number\",\"value\":\"nan\"},\"bottom\":{\"type\":\"number\",\"value\":\"nan\"},\"left_units\":\"canvas\",\"right_units\":\"canvas\",\"top_units\":\"canvas\",\"bottom_units\":\"canvas\",\"handles\":{\"type\":\"object\",\"name\":\"BoxInteractionHandles\",\"id\":\"p8931\",\"attributes\":{\"all\":{\"type\":\"object\",\"name\":\"AreaVisuals\",\"id\":\"p8930\",\"attributes\":{\"fill_color\":\"white\",\"hover_fill_color\":\"lightgray\"}}}}}}}},{\"type\":\"object\",\"name\":\"ResetTool\",\"id\":\"p8932\"}]}},\"left\":[{\"type\":\"object\",\"name\":\"LinearAxis\",\"id\":\"p8917\",\"attributes\":{\"ticker\":{\"type\":\"object\",\"name\":\"BasicTicker\",\"id\":\"p8918\",\"attributes\":{\"mantissas\":[1,2,5]}},\"formatter\":{\"type\":\"object\",\"name\":\"BasicTickFormatter\",\"id\":\"p8919\"},\"axis_label_standoff\":10,\"axis_label_text_color\":\"#5B5B5B\",\"axis_label_text_font\":\"Helvetica\",\"axis_label_text_font_size\":\"1.25em\",\"axis_label_text_font_style\":\"normal\",\"major_label_policy\":{\"type\":\"object\",\"name\":\"AllLabels\",\"id\":\"p8920\"},\"major_label_text_color\":\"#5B5B5B\",\"major_label_text_font\":\"Helvetica\",\"major_label_text_font_size\":\"1.025em\",\"axis_line_color\":\"#5B5B5B\",\"axis_line_alpha\":0,\"major_tick_line_color\":\"#5B5B5B\",\"major_tick_line_alpha\":0,\"minor_tick_line_color\":\"#5B5B5B\",\"minor_tick_line_alpha\":0}}],\"below\":[{\"type\":\"object\",\"name\":\"LinearAxis\",\"id\":\"p8912\",\"attributes\":{\"ticker\":{\"type\":\"object\",\"name\":\"BasicTicker\",\"id\":\"p8913\",\"attributes\":{\"mantissas\":[1,2,5]}},\"formatter\":{\"type\":\"object\",\"name\":\"BasicTickFormatter\",\"id\":\"p8914\"},\"axis_label_standoff\":10,\"axis_label_text_color\":\"#5B5B5B\",\"axis_label_text_font\":\"Helvetica\",\"axis_label_text_font_size\":\"1.25em\",\"axis_label_text_font_style\":\"normal\",\"major_label_policy\":{\"type\":\"object\",\"name\":\"AllLabels\",\"id\":\"p8915\"},\"major_label_text_color\":\"#5B5B5B\",\"major_label_text_font\":\"Helvetica\",\"major_label_text_font_size\":\"1.025em\",\"axis_line_color\":\"#5B5B5B\",\"axis_line_alpha\":0,\"major_tick_line_color\":\"#5B5B5B\",\"major_tick_line_alpha\":0,\"minor_tick_line_color\":\"#5B5B5B\",\"minor_tick_line_alpha\":0}}],\"center\":[{\"type\":\"object\",\"name\":\"Grid\",\"id\":\"p8916\",\"attributes\":{\"axis\":{\"id\":\"p8912\"}}},{\"type\":\"object\",\"name\":\"Grid\",\"id\":\"p8921\",\"attributes\":{\"dimension\":1,\"axis\":{\"id\":\"p8917\"}}}]}}]}}]}};\n const render_items = [{\"docid\":\"461e0e03-87f9-4576-89e3-a9521a5fa29a\",\"roots\":{\"p8951\":\"c77c2aff-7b0c-4d60-8c94-ecdba1edbdc4\"},\"root_ids\":[\"p8951\"]}];\n void root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n }\n if (root.Bokeh !== undefined) {\n embed_document(root);\n } else {\n let attempts = 0;\n const timer = setInterval(function(root) {\n if (root.Bokeh !== undefined) {\n clearInterval(timer);\n embed_document(root);\n } else {\n attempts++;\n if (attempts > 100) {\n clearInterval(timer);\n console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n }\n }\n }, 10, root)\n }\n})(window);",
"application/vnd.bokehjs_exec.v0+json": ""
},
"metadata": {
"application/vnd.bokehjs_exec.v0+json": {
- "id": "p5747"
+ "id": "p8951"
}
},
"output_type": "display_data",
@@ -867,7 +1169,7 @@
}
}
],
- "execution_count": 130
+ "execution_count": 157
}
],
"metadata": {